%RO Routine Output Utility
GT.M 02-OCT-2026 18:25:06
%HOSTCMD
%HOSTCMD ; [ 16.06.10 10:33 ] [
TERMINAL(%EX) ;
 ZSY "/bin/bash "_%EX
 Q '$ZSY

%L12
%L12 ;10 --> 2 ;                  [ 15.08.01  1:46 PM ] [ 14.08.01 10:29 AM ] [ 12/13/97 10:39 PM ]
 N (%XMSG,%UPRCOD,%N1,%N2,%ER)
 S %ER=0 I '$D(%N1) S %ER=1 Q
 I %N1'?1N.N S %ER=1 Q
 S N=%N1
I K B S B(1)=1,J=1
C S A=1 F I=1:1 Q:(A*2)>N  S A=A*2 S B(J)=B(J)_0
 S N=N-A I N<2 S J=J+1 S B(J)=N G M
 S J=J+1,B(J)=1 G C
M S B1=0 F J1=1:1:J S B1=B1+B(J1)
 S %N2=B1
 Q
102(%N1) D %L12 I %ER Q -1
 Q %N2
162(%N1) S @("%N1=$$^%L1ZH("""_%N1_""")") D %L12 I %ER Q -1
 Q %N2
210(%N1) ;
 N %I,%I1 S %I1=-1,%N2=0
 F %I=$L(%N1):-1:1 S %I1=%I1+1 I $E(%N1,%I) S %N2=%N2+(2**%I1)
 Q %N2

%L16
%L16 ;10 --> 16 ; [ 06.08.25 16:20 ] [ 12/13/97 10:39 PM ] [ 06/02/93 12:41 AM ]
 ;N (%XMSG,%UPRCOD,%N1,%N2,%ER)
 S %ER=0 I '$D(%N1) S %ER=1 Q
 I %N1'?1N.N S %ER=1 Q
 S ST="0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F"
 S N=%N1
 I N<10 S %N2=N Q
 I N>10,N<16 S %N2=$P(ST,",",N+1) Q
 S B="" S J=0
MM S OST=N#16
 S J=J+1 S B=$P(ST,",",OST+1)_B
 S N=N-OST\16 I N>16 G MM
 S J=J+1 S %N2=$P(ST,",",N+1)_B
 Q
 ;
1610(%N1) Q $$FUNC^%HD(%N1)
1016(%N1) Q $$FUNC^%DH(%N1)
 

%L164
%L164(str) ; [ 14.05.24 16:09 ] [ 
  new out,i,j,c,lookup
  set lookup="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
  set out=""
  for i=1:1:$L(str) do
  . set c=$A(str,i)
  . set j=(c#64)+1
  . set out=out_$E(lookup,j)
  if $L(str)#3 do
  . set out=out_$E("==",1,3-$L(str)#3)
  quit out
 
 

%L1ARG
%L1ARG(ST) ; [ 27.08.14 11:22 ] [
 K %ARG
 F J=1:1:$L(ST,"&") D
 .S IND=$P($P(ST,"&",J),"=") Q:IND=""
 .S VL=$P($P(ST,"&",J),"=",2)
 .I IND="JB" S JB=VL Q
 .S %ARG(IND)=VL
 Q

%L1ARM
%L1ARM(VV) ; [ 16.10.08 13:39 ] [ 22.04.08 10:51 ] [ 17.04.08 12:42 ] [
 N TM S TM=$P($H,",",2)
 ;;U 0 W "TM="_TM_" %STARTVV="_%STARTVV,! H 2
 I TM-$G(%STARTVV)>1 Q 1
 I TM-$G(%STARTVV)=1,$L($G(VV))<8 Q 1
 Q 0

%L1BDK
%L1BDK ; [ 11/08/99 10:58 AM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 X %chista S %SAY=" TESTING OF PROGRAMMS FROM UCI "_$$^%L1ZU(0)_" " X %XMSGV
 W !!!!! N $ZT S $ZT="ZG "_$ZL_":ER"
 N %N,%I,%ZA,%ZB,%S1
 S %S1="S %ZA=$ZA,%ZB=$ZB,%I=%I+1 S ^TMPS111($J,%I)=%LIGHT1_%N_%CCL_""  LINE:""_$J(%ZA,4)_"" ,COL: ""_%ZB S %I=%I+1 S ^TMPS111($J,%I)=$T(+%ZA) S %I=%I+1 S ^TMPS111($J,%I)="""""
 K ^TMPS111($J)
 S %N="",%I=0,%J=0
C F %J=1:1 W:'(%J#20) "." S %N=$O(^ (%N)) Q:%N=""  X "ZL @%N ZS l1bdk::1 I $ZA X %S1"
 D ^%S2VIEW
 K ^TMPS111($J)
 Q
ER I $ZS["PROT" S $ZT="ZG "_$ZL_":ER" G C

%L1BDKSC
%L1BDKSC ; HIPUS ^SCR() B TOHNIJOT & BITUL ^SCR LELO SHIMUSH [ 05/23/99  2:30 PM ] [
 K ^UTILITY($J)
 S N="" F  S N=$O(^ (N)) Q:N=""  S ^UTILITY($J,N)=""
 S N="" F  S N=$O(^SCR(N)) Q:N=""  D
 .K ^L1RSE($P)
 .S ^L1RSE($P,"F",1)="%SCRN="""_N_"""" U 0 W !,N
 .S %L1RSENP=""
 .D ^%L1RSE
 .I '$G(^L1RSE($P,"FC")) U 0 W " --- NOT FOUND !!! "
 Q
DEL X %chista S %GET="NAME++10,20,EE#++8,E,I" D ^%L1GET Q:%S=""!(%TO="END")
 I '$D(^SCR(%S)) S %SAY=" NOT EXIST ! " X %XMSGV(1) G DEL
 S %SCRN=%S D A^%L1SC
 S %GET=" DELETE ? (Y/N) " D NE^%L1GET
 I %S="Y" K ^SCR(%SCRN) W "  - DELETED !"
 G DEL

%L1BDO
%L1BDO ; BDIKA IM %FNAME=1/0 [ 05/23/99  2:30 PM ] [
 Q:$G(%FNAME)=""
 I $G(@%FNAME)'=1,$G(@%FNAME)'=0 S %SC("ER")=1
 Q
3 N %FNAME S %FNAME=$P(%MBG("O"),"\",J) G %L1BDO

%L1BKV
BUKBA ; DELAET BOLSHIE BUKVA ; SHEER ; 25.10.93    [ 06.03.01 12:57 PM ] [ 12/22/96  2:30 PM ]
  ; %L1BKV("VRT") - SMESHENIE PO VERT PO UMOLCHANIY 8
  ; %L1BKV("GRZ") - SMESHENIE PO GORIZONT PO UMOLCHANIY CENTR
  ; %L1BKV("MIL") - MILA
  ; %BUK,%L1BKV("MIL"),%RZD,%LABL
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L1BKV) D ^%L1C
  X %chista S %HG=5 N $ZT
  S %GET=": dln ++3,70,HH#++10,H,I" D ^%L1GET Q:%S=""  S %L1BKV("MIL")=%S
  K %L1BKV("GRZ")
1 K LIN U $P:(NOECHO:NOWRAP)
  N %BUK,%LABL,%RZD,LIN
  F I=1:1:$L(%L1BKV("MIL")) Q:I>10  S %BUK=$A(%L1BKV("MIL"),I) D  D SUBR
  .S %BUK=$A(%L1BKV("MIL"),I),%LABL=$S(%BUK>95:"HEB",%BUK>64:"ENG",%BUK>47:"NUM",%BUK>31:"SIM")
  .S %RZD=$S(%BUK>95:94,%BUK>64:63,%BUK>47:46,%BUK>31:"30")
  S %L1BKV("GRZ")=$G(%L1BKV("GRZ"),80-$L(LIN(1))\2),%L1BKV("VRT")=$G(%L1BKV("VRT"),9)
  I %TYPCRT["VT" W *27,"(0"
  W *27,"["_%L1BKV("VRT")_";"_"1H" ;,!
  S %XX=%L1BKV("GRZ") F II=1:1:5 S %YY=%L1BKV("VRT")+II X %POSIC W $TR(LIN(II),"*",$S(%TYPCRT'["VT":$C(219),1:$C(97))) ;,!
  W:%TYPCRT["VT" *27,"(B"
  Q
SUBR ;
  F II=1:1:5 S LIN(II)=$G(LIN(II))_$P($T(@%LABL+II),";",%BUK-%RZD)_" "
  ; F II=1:1:7 S LIN(II)=$G(LIN(II))_$P($T(@%LABL+II),";",$A(@%LABL)-94)_" "
  Q
  ;
  ;    1     2       3         4      5       6       7      8         9     10       11      12     13        14     15     16       17      18      19     20       21     22      23      24       25      26     27
HEB ;4567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;1234567;
 ;**  ***;****** ;*******;*******;*******; ****  ;*******;*******;**  ***;  **** ;*******; ***** ;**     ;****** ;* **** ;  ***  ;  ***  ;****** ; **  **;*******;*******; **  **;**   **;*****  ;****** ;* *   *;*******;       ;       ;
 ; **  * ;    ** ;     **;    ** ;     **;   **  ;   **  ;**   **;** * **;     * ;     **;     **; ******; **  **;**   **;    ** ;    ** ; *   * ;  *  **;**   **;**   **; ** ** ;  *  **; *  ** ;      *;* *   *; **  **;       ;       ;
 ;  **   ;    ** ;   ****;    ** ;**   **;   **  ;   **  ;**   **;**   **;       ;     **;     **;     **; **  **;**   **;    ** ;    ** ;**   **;  *  **;***  **;**** **; ***   ;   *   ;**  ** ;      *;*  *  *; **  **;       ;       ;
 ;*   ** ;    ** ; **  **;    ** ;**   **;   **  ;   **  ;**   **;**   **;       ;     **;     **;    ** ; **  **;**   **;    ** ;    ** ;**   **;   * **;     **;     **; **    ;    ** ;** *   ;      *;*  *  *; **  **;       ;       ;
 ;**   **;*******;**   **;    ** ;**   **;   **  ;   **  ;**   **;*******;       ;     **; ***** ;   **  ;  *****;*  *** ;    ** ;  **** ;  ***  ; ******;     **;*******; **    ;*******;**     ;      *;*******;***  **;       ;       ;
 Q
ENG ;
 ;*******;
 ;       ;
 ;       ;
 ;       ;
 ;       ;
 ;       ;
 ;       ;
 Q
NUM ;
 ;*******;  ***  ;*******;*******;  **** ;*******;*******;*******;*******;*******;       ;
 ;**   **;   **  ;**   **;     **; *  ** ;**     ;**     ;    ** ;**   **;**   **;       ;
 ;**   **;   **  ;   **  ;  **** ;*   ** ;*******;*******;   **  ; ***** ;*******;****** ;
 ;**   **;   **  ; **    ;     **;*******;     **;**   **;  **   ;**   **;     **;****** ;
 ;*******;  **** ;*******;*******;    ** ;*******;*******; **    ;*******;*******;****** ;
 Q
SIM ; 32 ;33;34;35;36;37;38;39;40;41;42;43;44;   45  ;   46  ;
 ;       ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;       ;       ;
 ;       ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;       ;       ;
 ;       ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;       ;       ;
 ;       ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ; ***** ; ***** ;
 ;       ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;       ; ***** ;
 ;       ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;       ; ***** ;
 ;       ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;       ; ***** ;
 Q
TABL ;
  ;  *****;    ** ;%%%%%%%;
  O 3 U 3
  F I1=1:1:8 D  W !
  .F I2=1:1:7 D  W !
  ..F I3=1:1:10 D
  ...W $TR($J(" ",7)," ",$C(240))_" "
  W #
  Q
PROBA ;
  X %chista S %L1BKV("VRT")=1,%L1BKV("MIL")="madpvz sjf"  D 1
  S %L1BKV("VRT")=9,%L1BKV("MIL")=" 123-45-678-90" D 1
  S %L1BKV("VRT")=17,%L1BKV("MIL")=" wtq zkxrn" D 1 R R
  Q

%L1BLK
%L1BLK ;CDS;DISK BLOCK DUMP; [ 03/29/92  3:34 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1984
 O 63::0 E  U 0 W !,"VIEW BUFFER IN USE, TRY LATER." Q
 S %LR="",R="" G INT00
ASK1 ;
 S $ZT="ZG "_$ZL_":ERR^%L1BLK"
 I %BN'="*",%BN'?1.N,%BN'?1N1":"1.N,%BN'?1N1":"1.N1":"1"G"1N,%BN'?1.N1":"1"G"1N,%BN'?1N1":"1.N1":"1""""1"G"1N1"""",%BN'?1.N1":"1"#"1"G"1N1ÌDAÀÈ
       H`&H$Ha88gÉ'åHd "`fgÄHIP“ˆsàÈKÈˆHÉ+çDäˆ…$f&*id
d¨IÇ«¡D
ÇD¨IÄç¤EDD¨I:$S($D(VG)#10:VG,1:"")
INT1 S %LR=%BN
 ;DEV S %DEV=$P U 0 D:%DEV=$P CRT^%SDEV G:$D(QUIT) EXIT S %ID='(%DEV=$P)
 ;D SCRL G:%SC="^" DEV G:%SC="^Q" EXIT
 U 63 S %B=$ZA U %DEV
 ;W !!,"Block ",%B
 S X=%B D BN^BLKDMP1
 ;W "  (",Y,")" W:$D(VGI) ?25,"Volume group ",VGI
 I +$P(Y,":",2)=0 D BLKDMP^VGLABELE S R="" Q  ;G ASK
 S %T=$V(1020,0,1),%T2=$V(1021,0,1,3) I $E(%T2,5) W !,"Block awaiting garbage collection"
 I %T>12!'%T Q  ;W !,"Uninitialized block, or invalid block type" Q  ;G ASK
 I %T'=3 Q  ;&(%T'=3)&(%T'=4)&(%T'=8) Q
 W !,"BLOCK ",%B
 W "  (",Y,")" W:$D(VGI) ?25,"VOLUME GROUP ",VGI
 S %I=0,%N="" D N^BLKDMP1
 ;D @($P("GDIR^PTR^DATA^XDATA^RDIR^RTNHDR^RTN^MAP^JRNL^SBP^SPDIR^SPBLK","^",%T)_"^%L1BLK1")
 S R="" Q  ;G ASK
EXIT Q
 ;-
ERR I $F($ZS,"<INRPT>") U 0 W !!,"Aborted ..." G EXIT ;G ASK
 G EXIT
SCRL I %ID S %SC=0 Q
 R !,"Do you want to scroll? <N> ",%SC S:%SC="" %SC="N"
 I %SC?1.N,%SC>0 S $Y=0 Q
 I %SC=$E("NO",1,$L(%SC))!(%SC=$E("no",1,$L(%SC))) S %SC=0 Q
 G SCRL1:%SC=$E("YES",1,$L(%SC)),SCRL1:%SC=$E("yes",1,$L(%SC))
 Q:(%SC="^")!(%SC="^Q")
 W !,"Enter ""Y"" if you want the listing to pause every 'n' lines and wait for a",!,"Carriage Return before continuing. You will be prompted for 'n'."
 W !,"Or, you may enter directly the number of lines per screen."
 G SCRL
SCRL1 W !,"How many lines per screen? <",$S(%ID:60,1:20),"> " R %SC S:%SC="" %SC=$S(%ID:60,1:20)
 I %SC?1.N,%SC>0 S $Y=0 Q
 G:%SC="^" SCRL Q:%SC="^Q"
 W !,"Enter the number of lines to list before pausing for a Carriage Return." G SCRL1
 Q
INT00 ;
 I '$D(%POSIC) D ^%L1C
 N %HBRY W %ENG
ZI U 0 R !!,"FROM BLOCK:",BLOCK1 Q:BLOCK1=""
 W !!,"TO BLOCK :" R BLOCK2 G:"^"[BLOCK2 ZI
 S %DEV=$P U 0 D:%DEV=$P CRT^%SDEV G:$D(QUIT) EXIT S %ID='(%DEV=$P)
 D SCRL G:%SC["^Q" EXIT
 O 63 S $ZS="" F III=BLOCK1:1:BLOCK2 S %BN=III D ASK1 Q:$ZS'=""  I '(III#20) W !,III
 I $D(%DEV),$D(%ID),%ID U %DEV W !!
 U 0 C:%DEV'=$P&+%DEV %DEV
 I '$D(%INT) C 63 K VG,VGI,VGVOL,VGTAB,%BL,%LR,%SC,%T2,FBLK,BNL,R,Y,Z
 K %C,%I,%J,%L,%L2,%L3,%N,%N2,%OF,%T,%DEV,%ID,%BN,%B,%LN,%P,%INT,A,B,BAK,C,D,E
 K COLL,D,F,GBN,GLB,GN,I,JRN,K,KEY,MAX,PSZ,PTR,OFST,QUI,UNT,SAVE,STRING,TYPE,UC,UI,USZ,UT,X
 Q

%L1BRC
%L1BRC(CD) ; [ 25.07.06 11:52 ] [
 N TXT
 S TXT=$C(29)_"L"_$C(10)_$C(0)_$C(29)_"H2"_$C(13)
 S TXT=TXT_$C(29)_"h"_$C(90)_$C(29)_"w"_$C(2)
 S TXT=TXT_$C(29)_"k"_$C(73)_$C($L(CD)+2)_$C(123)_$C(66)_CD_$C(13)
 Q TXT

%L1C
%L1C ;  [ 05.02.26 10:31 ] [ 16.02.25 04:06 ] [ 
 ;----------------------------------------------------------------------
 ;-- NASTROYKI ZDOC-7
 ; CONNECTION TYPE - SECURE SHELL
 ; LAYOUT/FONTS - HEBREW/LATIN
 ; EMULATION - VT220 8 BIT / BLI UTF8
 ;----------------------------------------------------------------------
 S %XMSG(0)=+$G(^PL("LAN"),-1)
 ;;S GLD=$$^%L1GLD()
 S %L3GLD=$$^%L1GLD()
 S %l1b="U $P W $G(%CLI),$ZPOS_"":""_$G(%CCL),! ZP @$ZPOS U $P W ! B"
 S %ENGLISH=(%XMSG(0)>1!($G(^m(1))?.P1U.E))
 S %TYPCRT=$$^%L1TYPCR()
 S %L3MYDVN=$$^%L3MYDVN()
 S %L3MYDV=$$^%L3MYDV()
 S %OPT=$S(%TYPCRT["PC":1,1:65)
 S %WAIT=0 I %TYPCRT="PC1" S %WAIT=1
 ;K %HBRY I %XMSG(0)'>1 S %HBRY=""
 S %HBR="",%ENG="" S %DELAY=50000
 S %HBR0="" I $G(%XMSG(0))>1 S %HBR=%HBR0
 S (%MODE80,%MODE132)=""
 ;I %TYPCRT["PC" S %MODE80=$C(27)_"[64"_$C(34)_"p"_$C(155)_"?3l"_$C(155)_"61"_$C(34)_"p"
 I %TYPCRT["VT5" S %MODE80=$C(27)_"[?3l"
 ;;I %TYPCRT["PC" S %MODE132=$C(27)_"[64"_$C(34)_"p"_$C(155)_"?3l"_$C(155)_"?3h"_$C(155)_"61"_$C(34)_"p"
 I $P=1 S %MODE132=$C(27)_"[64"_$C(34)_"p"_$C(155)_"?3l"_$C(155)_"?3h"_$C(155)_"61"_$C(34)_"p"
 I %TYPCRT["VT5" S %MODE132=$C(27)_"[?3h"
 S %CS=$C(27,91,63,50,53,104)
 S %ENG="" ;$C(27,41,76)
 I %TYPCRT["VT" S (%ENG,%HBR)=""
 ;;S %ENGLISH="$G(^m(1))?.P1U.E!(%XMSG(0)>1)"
 S %LIGHT="W *27,""[1m"""
 S %LIGHT1=$C(27)_"[1m"
 S %L1DEV="$S($$^%L3MYLPT():$$^%L3MYLPT(),$D(^PL(""LP"")):^(""LP""),1:3)"
 S %L1SUG="$S($$SUG^%L3MYLPT():$$SUG^%L3MYLPT(),$$^%L3MYLPT:5,$D(^PL(""LP"",""SUG"")):^(""SUG""),1:5)"
 S %CVET=$$^%L3CVET
 I $D(^VIEWONLY) S %CVET=0
 D
 .S %CV("BCF")=$C(27,91)_"30m"
 .S %CV("RF")=$C(27,91)_"31m"
 .S %CV("GF")=$C(27,91)_"32m"
 .S %CV("YF")=$C(27,91)_"33m"
 .S %CV("BF")=$C(27,91)_"34m"
 .S %CV("MF")=$C(27,91)_"35m"
 .S %CV("CF")=$C(27,91)_"36m"
 .S %CV("WF")=$C(27,91)_"37m"
 .S %CV("BCB")=$C(27,91)_"40m"
 .S %CV("RB")=$C(27,91)_"41m"
 .S %CV("GB")=$C(27,91)_"42m"
 .S %CV("YB")=$C(27,91)_"43m"
 .S %CV("BB")=$C(27,91)_"44m"
 .S %CV("MB")=$C(27,91)_"45m"
 .S %CV("CB")=$C(27,91)_"46m" ;; S %CV("BB")=%CV("CB"),%CV("WF")=%CV("BF")
 .S %CV("WB")=$C(27,91)_"47m"
 .S %CL0=$$CL0^%L3CVET
 .S %CL1=$C(27,91)_"45;37m"
 .S %CL2=$C(27,91)_"47;31m"
 .N N I '%CVET S N="" F  S N=$O(%CV(N)) Q:N=""  S %CV(N)=""
 .I '%CVET S (%CL0,%CL1,%CL2)=""
 s %pravo=$C(27,91,67)
 s %levo=$C(27,91,68)
 s %vniz=$C(27,91,66)
 s %vverx=$C(27,91,65)
 s %pravon="w $C(27,91),%pn,$C(67)"
 s %levon="w $C(27,91),%pn,$C(68)"
 s %vnizn="w $C(27,91),%pn,$C(66)"
 s %vverxn="W $C(27,91),%pn,$C(65)"
 s %POSIC="S:%YY>24&(%TYPCRT[""VT"") %YY=24 W $C(27,91),(%YY\1+1),"";"",(%XX\1+1),""H"""
 ; s %POSIC="S:%YY>24 %YY=24 W $C(27,91),(%YY\1),"";"",(%XX\1),""H"""
 s %POSIC1="W $C(27,91),%YY,"";"",%XX,""H"""
 S %SCROLL="W $C(27,91),%Y1,"";"",%Y2,$C(114) W $C(27,91),%Y1,"";"",1,""H"""
 s %vverxe=$C(27,91,48,59,48,72)
 S ZPT00=""",""",ZPT01=",""",SKOB01=""")",SKOB02="("""
 ;;S %XCL="W $C(27,91,48,109) W:$G(%CVET) %CL0"
 S %XCL="W $C(27,91,48,109) W:$G(%CVET) %CL0 W:$D(%HBRY)&(%TYPCRT'[""VT"") %HBR"
 S %CCL=$C(27,91,48,109)
 S:$G(%CVET) %CCL=%CCL_%CL0
 S %chists=$C(27,91,75),%chiste="W $C(27,91,74)",%chista="X %XCL W:%CVET %CV(""BB""),%CV(""WF"") W *27,""[1;1H"" W $C(27,91),2,""J"",#"
 I %TYPCRT="VT220" S %chists=$C(27,91,48,75) ;,%chista="W $C(27,91,50,74) W #",%chiste="W $C(27,91,74)"
 s PEREX="W *13,%chists"
 I %TYPCRT="PC1" S %CLI=$C(27,91,55,109)
 E  S %CLI=$C(27,91,55,109)
 I %CVET S %CLI=%CV("WB")_%CV("BF")
 ;
    S %TEN1="XEUGPA>HIBC;VZJYLFK`W,RSMDNO'/Q????????Â­????????Â¤f????????Â·????????Â¸????????Â¹w????????Â»????????Â¼????????Â½????????Â¥????????Â«g????????Â¨????????Â¦????????Â²????????âb¬Å¡?Â¬?????Â¬???????Â¬??????â`zÂ¬????Â¬??????Â¬?????Â�????????Â©????????Â°/"
    S %TES1="abcdgehiklmoprtvyz,`xwfjqsu/'." ; . -> ,
    S %TES2="cdsvjuyhfkoibgpma,'trezlx;"_$S(%XMSG(0)<0:$C(149),1:$C(245))_"qw/"
     S %TEN="qwertyuiopasdfghjkl;'zxcvbnm,/"
    S %THB="/'"_$C(247)_$C(248)_$C(224)_$C(232)_$C(229)_$C(239)_$C(237)
    S %THB=%THB_$C(244)_$C(249)_$C(227)_$C(226)_$C(235)_$C(242)_$C(233)
    S %THB=%THB_$C(231)_$C(236)_$C(234)_$C(243)_","_$C(230)_$C(241)_$C(225)
    S %THB=%THB_$C(228)_$C(240)_$C(238)_$C(246)_$C(250)_$C(46)_$C(245)
    I %TYPCRT["VT" S %THB=%TEN
    I %XMSG(0)<0 D
    .N %J F %J=1:1:$L(%THB) S $E(%THB,%J)=$S($A(%THB,%J)>223:$C($A(%THB,%J)-96),1:$E(%THB,%J))
   S %TBIG="QWERTYUIOPASDFGHJKL;'ZXCVBNM,./????????Â­????????Â¤f????????Â·????????Â¸????????Â¹w????????Â»????????Â¼????????Â½????????Â¥????????Â«g????????Â¨????????Â¦????????Â²????????âb¬Å¡?Â¬?????Â¬???????Â¬??????â`zÂ¬????Â¬??????Â¬?????Â�????????Â©????????Â°/"  ; CAPS LOCK +
 S %TSMALL=%TEN
 ;
 S %XMSG="N %SAY2,%CLSAY,%INVR,%RGST,%RBUA,z N:'$D(%L1GETR) %XX,%YY S z="","",%SAY2=$P(%SAY,""++"",2),%YY=$P(%SAY2,z),%XX=$P(%SAY2,z,2),%RGST=$P(%SAY2,z,3),%INVR=$P(%SAY2,z,4),%RBUA=$P(%SAY2,z,5),%CLSAY=$P(%SAY2,z,6) X %XMSG(1)"
 S %XMSG(1)="Q:$L($P)<3  U $P:(NOECHO:NOWRAP) N %SAY3,%CLS1,%CLS2,%XX1,%XX2 S %SAY3=$P(%SAY,""++"",3) S %CLS1=$P(%SAY3,"","") S %CLS2=$P(%SAY3,"","",2) X %XMSG(2)"
 ;;S %XMSG(2)="N %SAY1 S %SAY1=$P(%SAY,""++"") S:%RGST[""H""!(%SAY?.E1L.E) %SAY1=$TR($TR(%SAY1,%TES1,%TES2),%TEN,%THB) X %XMSG(3),%XMSG(4),%XMSG(5),%XMSG(6),%XMSG(7)"
 S %XMSG(2)="N %SAY1 S %SAY1=$P(%SAY,""++"") S:%RGST[""H""!(%SAY?.E1L.E) %SAY1=$$W^%L1C(%SAY1) X %XMSG(3),%XMSG(4),%XMSG(5),%XMSG(6),%XMSG(7)"
 S %XMSG(3)="S:$E(%XX,$L(%XX))="">"" %XMSG(10)=1,%XX=+%XX I %XX?1N.N,%YY?1N.N,%XX<81,%YY<25 X %POSIC"
 S %XMSG(4)="W:%CLSAY=""C"" *13,%chists X:%CLSAY=""C"" %XMSG(3) W:%INVR=""I"" %CLI"
 S %XMSG(41)="X:$E(%CLS1,4)=""L""!($E(%CLS2,4)=""L"") %XMSG(12) I $L(%CLS1),$L(%CLS2) W:$D(%CV(%CLS1)) %CV(%CLS1) W:$D(%CV(%CLS2)) %CV(%CLS2)"
 S %XMSG(5)="X %XMSG(50) D:%RBUA=""R""&'$D(%ZMSFO) TV^%L1RBUA(%YY,%XX1,%YY+2,%XX2) X %POSIC X %XMSG(41),%XMSG(51)"
 S %XMSG(50)="S %XX1=$S($E(%RGST)=""E"":%XX,1:%XX-$L($TR(%SAY1,""{}"",""""))),%XX2=$S($E(%RGST)=""E"":%XX+$L($TR(%SAY1,""{}"",""""))+2,1:%XX+1)"
 S %XMSG(51)="W:%TYPCRT'[""VT"" %HBR I $E(%RGST)=""H"" S:$D(%XMSG(10)) %XX=80-%XX S %XX=%XX-$L($TR(%SAY1,""{}"","""")) S:%XX<0 %XX=0 X %POSIC"
 ;S %XMSG(6)=" %XMSG(8) I $E(%RGST,2)=""H"" K %CLS1,%CLS2 I $E(%RGST)=""H"" S %XX=%XX-1 S:%XX<0 %XX=0 X %POSIC"
 S %XMSG(6)="X %XMSG(8) I $E(%RGST,2)=""H"" K %CLS1,%CLS2 I $E(%RGST)=""H"" S %XX=%XX-1 S:%XX<0 %XX=0 X %POSIC"
 S %XMSG(7)="W:(%TYPCRT[""PC"") %HBR X %XCL K %SAY1,%RGST,%INVR,%XMSG(10)"
 ; ---
 S %XMSG(8)="N I W $P(%SAY1,""{}"") F I=2:1:$L(%SAY1,""{}"") W:I#2&(%INVR=""I"")!('(I#2)&(%INVR'=""I"")) %CLI X:I#2&(%INVR'=""I"")!('(I#2)&(%INVR=""I"")) %XCL,%XMSG(41) W $P(%SAY1,""{}"",I)"
 S %XMSG(11)="N %L F %L=1:1:$L($P(%SAY1,""{}"")) I $E(%SAY1,%L)'="" "" S %L=%L-1 Q"
 S %XMSG(12)="X %LIGHT S %CLS1=$TR($E(%CLS1,1,3),"" "",""""),%CLS2=$TR($E(%CLS2,1,3),"" "","""") X %LIGHT"
 I '%ENGLISH S %XMSGN="N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=80-(80-$L($TR(%SAY1,""{}"",""""))\2) S %SAY=%SAY1_""++24,""_%SAY1X_"",HH,I,,C++RB,WF"" X %XMSG" ; S $Y=24"
 I %ENGLISH S %XMSGN="N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=(80-$L($TR(%SAY1,""{}"",""""))\2) S %SAY=%SAY1_""++24,""_%SAY1X_"",EE,I,,C++RB,WF"" X %XMSG" ; S $Y=24"
 I '%ENGLISH S %XMSGV="Q:$L($P)<3  N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=80-(80-$L($TR(%SAY1,""{}"",""""))\2) S %SAY=%SAY1_""++0,""_%SAY1X_"",HH,I,,C++RF,WB"" X %XMSG" ; S $Y=0"
 I %ENGLISH S %XMSGV="Q:$L($P)<3  N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=80-$L($TR(%SAY1,""{}"",""""))\2 S %SAY=%SAY1_""++0,""_%SAY1X_"",EE,I,,C++RF,WB"" X %XMSG" ;S $Y=0"
 S %XMSGV(1)="Q:$L($P)<3  W *7,*7,*7 W:$G(%CVET) %CV(""WB""),%CV(""RF"") N %SAY2 S %SAY2=$J("""",$L($P(%SAY,""++""))) X %XMSGV H $S($L(%SAY2)<15:1,$L(%SAY2)<30:2,$L(%SAY2)<60:3,1:4) S %SAY="""" X %XCL X %XMSGV X %XCL"
 S %XMSGV("ER")="N i F i=1:1:5 W *7 ;S %SAY="" ! d ` i b y "" X %XMSGV"
 S %XMSGN("ER")="N i F i=1:1:5 W *7 ;S %SAY="" ! d ` i b y "" X %XMSGN"
 I %XMSG(0)>1 S %XMSGV("ER")="S %SAY="" E R R O R ! "" X %XMSGV(1)"
 S %XMSGV("NO")="S %SAY="" ! mipezp oi` "" X %XMSGV(1)"
 I %XMSG(0)>1 S %XMSGV("NO")="S %SAY="" Has no data ! "" X %XMSGV(1)"
 S %XMSGN(1)="Q:$L($P)<3  W *7,*7,*7 N %SAY2 S %SAY2=$J("""",$L($P(%SAY,""++""))) X %XMSGN H $S($L(%SAY2)<15:1,$L(%SAY2)<30:2,$L(%SAY2)<60:3,1:4) X %XCL S %SAY="""" X %XMSGN X %XCL"
 S %LEVO=68,%PRAVO=67,%VNIZ=66,%VVERX=65,%VVERXE=72,%CHISTE=74,%CHISTS=75
 S ZWEZD="*******************************************************************"
 S %DEL=8
 S %UPRCOD("0132")="BEGF"
 S %UPRCOD("04")="BEGF"
 S %UPRCOD("039")="BEGF"
 S %UPRCOD("0118")="ENDF"
 S %UPRCOD("0101")="ENDF"
 S %UPRCOD("2843")="ENDF"
 S %UPRCOD("0100")="ENDF"
 S %UPRCOD(7968)="LEVO"
 S %UPRCOD(9168)="LEVO"
 S %UPRCOD(5147)="LEVO"
 S %UPRCOD(9167)="PRAVO"
 S %UPRCOD(4891)="PRAVO"
 S %UPRCOD(7967)="PRAVO"
 S %UPRCOD(9172)="HOME"
 S %UPRCOD(9149126)="HOME"
 I %TYPCRT["VT5"  S %UPRCOD(915052126)="HOME"
 S %UPRCOD("071")="HOME"
 S %UPRCOD("0119")="BEGF"
 ;;S %UPRCOD("039")="VVERXE"
 S %UPRCOD("0117")="ENDF"
 S %UPRCOD(9165)="VVERX"
 S %UPRCOD(7965)="VVERX"
 S %UPRCOD(4379)="VVERX"
 S %UPRCOD(9166)="VNIZ"
 S %UPRCOD(7966)="VNIZ"
 S %UPRCOD(4635)="VNIZ"
 S %UPRCOD("096")="KOD"
 S %UPRCOD("2")="HBEN"
 S %UPRCOD(127)="DEL"
 S %UPRCOD(9151126)="DEL"
 S %UPRCOD(8)="DEL"
 S %UPRCOD(9)="TAB"
 S %UPRCOD(27)="ESC"
 S %UPRCOD(25)="ESC"
 S %UPRCOD(11035)="ESC"
 S %UPRCOD(915051126)="ESC"
 S %UPRCOD("015")="TABN"
 S %UPRCOD("10779")="TABN"
 S %UPRCOD(22)="ADDL"
 S %UPRCOD(919169)="ADDL"
 S %UPRCOD(21)="DELL"
 S %UPRCOD(914955126)="DELL"
 S %UPRCOD(7986)="COR"
 S %UPRCOD(9755)="COR"
 S %UPRCOD(914956126)="COR"
 S %UPRCOD(11)="COR"
 S %UPRCOD("079")="ENDS"
 S %UPRCOD("15")="ENDS"
 S %UPRCOD("29")="ENDS"
 S %UPRCOD(9152126)="ENDS"
 S %UPRCOD("11291")="HOME"
 S %UPRCOD(7987)="FIND"
 S %UPRCOD(5403)="FIND"
 S %UPRCOD(10011)="FIND"
 S %UPRCOD(914957126)="FIND"
 S %UPRCOD(7963)="CHISTS"
 S %UPRCOD(28)="CHISTS"
 S %UPRCOD(914949126)="CHISTS"
 S %UPRCOD(919165)="CHISTS"
 S %UPRCOD(919166)="CHISTE"
 S %UPRCOD(914950126)="CHISTE"
 S %UPRCOD(8219)=$S(%TYPCRT="VT220":"PGUP",%TYPCRT="VT520":"CHISTE",1:"CHISTS")
 S %UPRCOD("31")="CHISTS"
 S %UPRCOD(7981)=$S(%TYPCRT="VT220":"PGDN",1:"CHISTE")
 S %UPRCOD(8475)=$S(%TYPCRT="VT220":"PGDN",%TYPCRT="VT520":"SBROS",1:"CHISTE")
 S %UPRCOD(5915)="CHISTE"
 S %UPRCOD(7982)="SBROS"
 S %UPRCOD(919167)="SBROS"
 S %UPRCOD(914951126)="SBROS"
 S %UPRCOD(8731)=$S(%TYPCRT="VT520":"IND",1:"SBROS")
 ;;S %UPRCOD(6171)=$S(%TYPCRT="VT520":"BEGF",1:"SBROS")
 S %UPRCOD(6171)="ENDS"
 S %UPRCOD(7983)="IND"
 S %UPRCOD(919168)="IND"
 S %UPRCOD(914952126)="IND"
 S %UPRCOD(8987)=$S(%TYPCRT="VT520":"ADDL",1:"IND")
 S %UPRCOD(7984)="ADDL"
 S %UPRCOD(914953126)="ADDL"
 S %UPRCOD(9243)="ADDL"
 S %UPRCOD(11547)="ADDL"
 S %UPRCOD(7985)="DELL"
 S %UPRCOD(9499)="DELL"
 S %UPRCOD(7988)="SAVE"
 S %UPRCOD(10267)="SAVE"
 S %UPRCOD(7989)="REST"
 S %UPRCOD(10523)="REST"
 S %UPRCOD(12)="PGLN"
 S %UPRCOD(16)="PGRG"
 S %UPRCOD("073")="PGUP"
 S %UPRCOD("1307")="PGUP"
 S %UPRCOD("6427")="PGUP"
 S %UPRCOD("9153126")="PGUP"
 S %UPRCOD("30")="PGUP"
 S %UPRCOD("081")="PGDN"
 S %UPRCOD("14")="PGDN"
 S %UPRCOD("1563")="PGDN"
 S %UPRCOD("6683")="PGDN"
 S %UPRCOD("9154126")="PGDN"
 S %UPRCOD("082")="INS"
 S %UPRCOD("5659")="INS"
 S %UPRCOD("9150126")="INS"
 S %UPRCOD("094")="HELP"
 S %UPRCOD("053126")="HELP"
 S %UPRCOD("2843")="HELP"
 S %UPRCOD("095")="HBR"
 S %UPRCOD("098")="MDRG"
 S %UPRCOD("4")="MDRG"
 S %UPRCOD("0112")="MDRG"
 S %UPRCOD(13)="BK"
 S %UPRCOD(7451)="BK"
 S %UPRCOD(20)="VNIZE"
 S %UPRCOD(24)="XEC"
 S %UPRCOD(23)="ADD"
 S %UPRCOD(31)="FINDS"
 S %UPRCOD(7)="MET"
 S %UPRCOD(1)="MOD"
 S %UPRCOD(18)="REST"
 S %UPRCOD(915049126)="REST"
 S %UPRCOD(26)="SAVE"
 S %UPRCOD(915048126)="SAVE"
 S %UPRCOD(5)="MOD"
 S %UPRCOD(6)="FIND"
 Q
 ;
DB(I) ;
 U $P W %vverxe,I," ",$C(224) H 1
 Q
 ;
W(%ST) ; -- write %ST
 N %ST1,%SMB S %ST1=""
 N %J F %J=1:1:$L(%ST) D
 .S %SMB=$A(%ST,%J)
 .;;I %SMB>95,%SMB<123 S %SMB=%SMB+$S($P="/dev/pts/0":32,1:128)
 .I %SMB>95,%SMB<123 S %SMB=%SMB+128
 .S %ST1=%ST1_$C(%SMB)
 Q %ST1
 
 
 
 
 
 
 
 
 

%L1C0
%L1C ; [ 15.02.25 15:31 ] [ 16.02.24 05:18 ] [ 09.01.24 11:19 ] 
 ;----------------------------------------------------------------------
 ;-- NASTROYKI ZDOC-7
 ; CONNECTION TYPE - SECURE SHELL
 ; LAYOUT/FONTS - HEBREW/LATIN
 ; EMULATION - VT220 8 BIT / BLI UTF8
 ;----------------------------------------------------------------------
 S %XMSG(0)=+$G(^PL("LAN"),-1)
 ;;S GLD=$$^%L1GLD()
 S %L3GLD=$$^%L1GLD()
 S %l1b="U $P W $G(%CLI),$ZPOS_"":""_$G(%CCL),! ZP @$ZPOS U $P W ! B"
 S %ENGLISH=(%XMSG(0)>1!($G(^m(1))?.P1U.E))
 S %TYPCRT=$$^%L1TYPCR()
 S %L3MYDVN=$$^%L3MYDVN()
 S %L3MYDV=$$^%L3MYDV()
 S %OPT=$S(%TYPCRT["PC":1,1:65)
 S %WAIT=0 I %TYPCRT="PC1" S %WAIT=1
 ;K %HBRY I %XMSG(0)'>1 S %HBRY=""
 S %HBR="",%ENG="" S %DELAY=50000
 S %HBR0="" I $G(%XMSG(0))>1 S %HBR=%HBR0
 S (%MODE80,%MODE132)=""
 ;I %TYPCRT["PC" S %MODE80=$C(27)_"[64"_$C(34)_"p"_$C(155)_"?3l"_$C(155)_"61"_$C(34)_"p"
 I %TYPCRT["VT5" S %MODE80=$C(27)_"[?3l"
 ;;I %TYPCRT["PC" S %MODE132=$C(27)_"[64"_$C(34)_"p"_$C(155)_"?3l"_$C(155)_"?3h"_$C(155)_"61"_$C(34)_"p"
 I $P=1 S %MODE132=$C(27)_"[64"_$C(34)_"p"_$C(155)_"?3l"_$C(155)_"?3h"_$C(155)_"61"_$C(34)_"p"
 I %TYPCRT["VT5" S %MODE132=$C(27)_"[?3h"
 S %CS=$C(27,91,63,50,53,104)
 S %ENG="" ;$C(27,41,76)
 I %TYPCRT["VT" S (%ENG,%HBR)=""
 ;;S %ENGLISH="$G(^m(1))?.P1U.E!(%XMSG(0)>1)"
 S %LIGHT="W *27,""[1m"""
 S %LIGHT1=$C(27)_"[1m"
 S %L1DEV="$S($$^%L3MYLPT():$$^%L3MYLPT(),$D(^PL(""LP"")):^(""LP""),1:3)"
 S %L1SUG="$S($$SUG^%L3MYLPT():$$SUG^%L3MYLPT(),$$^%L3MYLPT:5,$D(^PL(""LP"",""SUG"")):^(""SUG""),1:5)"
 S %CVET=$$^%L3CVET
 I $D(^VIEWONLY) S %CVET=0
 D
 .S %CV("BCF")=$C(27,91)_"30m"
 .S %CV("RF")=$C(27,91)_"31m"
 .S %CV("GF")=$C(27,91)_"32m"
 .S %CV("YF")=$C(27,91)_"33m"
 .S %CV("BF")=$C(27,91)_"34m"
 .S %CV("MF")=$C(27,91)_"35m"
 .S %CV("CF")=$C(27,91)_"36m"
 .S %CV("WF")=$C(27,91)_"37m"
 .S %CV("BCB")=$C(27,91)_"40m"
 .S %CV("RB")=$C(27,91)_"41m"
 .S %CV("GB")=$C(27,91)_"42m"
 .S %CV("YB")=$C(27,91)_"43m"
 .S %CV("BB")=$C(27,91)_"44m"
 .S %CV("MB")=$C(27,91)_"45m"
 .S %CV("CB")=$C(27,91)_"46m" ;; S %CV("BB")=%CV("CB"),%CV("WF")=%CV("BF")
 .S %CV("WB")=$C(27,91)_"47m"
 .S %CL0=$$CL0^%L3CVET
 .S %CL1=$C(27,91)_"45;37m"
 .S %CL2=$C(27,91)_"47;31m"
 .N N I '%CVET S N="" F  S N=$O(%CV(N)) Q:N=""  S %CV(N)=""
 .I '%CVET S (%CL0,%CL1,%CL2)=""
 s %pravo=$C(27,91,67)
 s %levo=$C(27,91,68)
 s %vniz=$C(27,91,66)
 s %vverx=$C(27,91,65)
 s %pravon="w $C(27,91),%pn,$C(67)"
 s %levon="w $C(27,91),%pn,$C(68)"
 s %vnizn="w $C(27,91),%pn,$C(66)"
 s %vverxn="W $C(27,91),%pn,$C(65)"
 s %POSIC="S:%YY>24&(%TYPCRT[""VT"") %YY=24 W $C(27,91),(%YY\1+1),"";"",(%XX\1+1),""H"""
 ; s %POSIC="S:%YY>24 %YY=24 W $C(27,91),(%YY\1),"";"",(%XX\1),""H"""
 s %POSIC1="W $C(27,91),%YY,"";"",%XX,""H"""
 S %SCROLL="W $C(27,91),%Y1,"";"",%Y2,$C(114) W $C(27,91),%Y1,"";"",1,""H"""
 s %vverxe=$C(27,91,48,59,48,72)
 S ZPT00=""",""",ZPT01=",""",SKOB01=""")",SKOB02="("""
 ;;S %XCL="W $C(27,91,48,109) W:$G(%CVET) %CL0"
 S %XCL="W $C(27,91,48,109) W:$G(%CVET) %CL0 W:$D(%HBRY)&(%TYPCRT'[""VT"") %HBR"
 S %CCL=$C(27,91,48,109)
 S:$G(%CVET) %CCL=%CCL_%CL0
 S %chists=$C(27,91,75),%chiste="W $C(27,91,74)",%chista="X %XCL W:%CVET %CV(""BB""),%CV(""WF"") W *27,""[1;1H"" W $C(27,91),2,""J"",#"
 I %TYPCRT="VT220" S %chists=$C(27,91,48,75) ;,%chista="W $C(27,91,50,74) W #",%chiste="W $C(27,91,74)"
 s PEREX="W *13,%chists"
 I %TYPCRT="PC1" S %CLI=$C(27,91,55,109)
 E  S %CLI=$C(27,91,55,109)
 I %CVET S %CLI=%CV("WB")_%CV("BF")
 ;
    S %TEN1="XEUGPA>HIBC;VZJYLFK`W,RSMDNO'/Q­¤f·¸¹º»¼½¥«g¨¦²ª©°/"
    S %TES1="abcdgehiklmoprtvyz,`xwfjqsu/'." ; . -> ,
    S %TES2="cdsvjuyhfkoibgpma,'trezlx;"_$S(%XMSG(0)<0:$C(149),1:$C(245))_"qw/"
     S %TEN="qwertyuiopasdfghjkl;'zxcvbnm,/"
    S %THB="/'"_$C(247)_$C(248)_$C(224)_$C(232)_$C(229)_$C(239)_$C(237)
    S %THB=%THB_$C(244)_$C(249)_$C(227)_$C(226)_$C(235)_$C(242)_$C(233)
    S %THB=%THB_$C(231)_$C(236)_$C(234)_$C(243)_","_$C(230)_$C(241)_$C(225)
    S %THB=%THB_$C(228)_$C(240)_$C(238)_$C(246)_$C(250)_$C(46)_$C(245)
    I %TYPCRT["VT" S %THB=%TEN
    I %XMSG(0)<0 D
    .N %J F %J=1:1:$L(%THB) S $E(%THB,%J)=$S($A(%THB,%J)>223:$C($A(%THB,%J)-96),1:$E(%THB,%J))
   S %TBIG="QWERTYUIOPASDFGHJKL;'ZXCVBNM,./­¤f·¸¹º»¼½¥«g¨¦²ª©°/"  ; CAPS LOCK +
 S %TSMALL=%TEN
 ;
 S %XMSG="N %SAY2,%CLSAY,%INVR,%RGST,%RBUA,z N:'$D(%L1GETR) %XX,%YY S z="","",%SAY2=$P(%SAY,""++"",2),%YY=$P(%SAY2,z),%XX=$P(%SAY2,z,2),%RGST=$P(%SAY2,z,3),%INVR=$P(%SAY2,z,4),%RBUA=$P(%SAY2,z,5),%CLSAY=$P(%SAY2,z,6) X %XMSG(1)"
 S %XMSG(1)="Q:$L($P)<3  U $P:(NOECHO:NOWRAP) N %SAY3,%CLS1,%CLS2,%XX1,%XX2 S %SAY3=$P(%SAY,""++"",3) S %CLS1=$P(%SAY3,"","") S %CLS2=$P(%SAY3,"","",2) X %XMSG(2)"
 ;;S %XMSG(2)="N %SAY1 S %SAY1=$P(%SAY,""++"") S:%RGST[""H""!(%SAY?.E1L.E) %SAY1=$TR($TR(%SAY1,%TES1,%TES2),%TEN,%THB) X %XMSG(3),%XMSG(4),%XMSG(5),%XMSG(6),%XMSG(7)"
 S %XMSG(2)="N %SAY1 S %SAY1=$P(%SAY,""++"") S:%RGST[""H""!(%SAY?.E1L.E) %SAY1=$$W^%L1C(%SAY1) X %XMSG(3),%XMSG(4),%XMSG(5),%XMSG(6),%XMSG(7)"
 S %XMSG(3)="S:$E(%XX,$L(%XX))="">"" %XMSG(10)=1,%XX=+%XX I %XX?1N.N,%YY?1N.N,%XX<81,%YY<25 X %POSIC"
 S %XMSG(4)="W:%CLSAY=""C"" *13,%chists X:%CLSAY=""C"" %XMSG(3) W:%INVR=""I"" %CLI"
 S %XMSG(41)="X:$E(%CLS1,4)=""L""!($E(%CLS2,4)=""L"") %XMSG(12) I $L(%CLS1),$L(%CLS2) W:$D(%CV(%CLS1)) %CV(%CLS1) W:$D(%CV(%CLS2)) %CV(%CLS2)"
 S %XMSG(5)="X %XMSG(50) D:%RBUA=""R""&'$D(%ZMSFO) TV^%L1RBUA(%YY,%XX1,%YY+2,%XX2) X %POSIC X %XMSG(41),%XMSG(51)"
 S %XMSG(50)="S %XX1=$S($E(%RGST)=""E"":%XX,1:%XX-$L($TR(%SAY1,""{}"",""""))),%XX2=$S($E(%RGST)=""E"":%XX+$L($TR(%SAY1,""{}"",""""))+2,1:%XX+1)"
 S %XMSG(51)="W:%TYPCRT'[""VT"" %HBR I $E(%RGST)=""H"" S:$D(%XMSG(10)) %XX=80-%XX S %XX=%XX-$L($TR(%SAY1,""{}"","""")) S:%XX<0 %XX=0 X %POSIC"
 ;S %XMSG(6)=" %XMSG(8) I $E(%RGST,2)=""H"" K %CLS1,%CLS2 I $E(%RGST)=""H"" S %XX=%XX-1 S:%XX<0 %XX=0 X %POSIC"
 S %XMSG(6)="X %XMSG(8) I $E(%RGST,2)=""H"" K %CLS1,%CLS2 I $E(%RGST)=""H"" S %XX=%XX-1 S:%XX<0 %XX=0 X %POSIC"
 S %XMSG(7)="W:(%TYPCRT[""PC"") %HBR X %XCL K %SAY1,%RGST,%INVR,%XMSG(10)"
 ; ---
 S %XMSG(8)="N I W $P(%SAY1,""{}"") F I=2:1:$L(%SAY1,""{}"") W:I#2&(%INVR=""I"")!('(I#2)&(%INVR'=""I"")) %CLI X:I#2&(%INVR'=""I"")!('(I#2)&(%INVR=""I"")) %XCL,%XMSG(41) W $P(%SAY1,""{}"",I)"
 S %XMSG(11)="N %L F %L=1:1:$L($P(%SAY1,""{}"")) I $E(%SAY1,%L)'="" "" S %L=%L-1 Q"
 S %XMSG(12)="X %LIGHT S %CLS1=$TR($E(%CLS1,1,3),"" "",""""),%CLS2=$TR($E(%CLS2,1,3),"" "","""") X %LIGHT"
 I '%ENGLISH S %XMSGN="N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=80-(80-$L($TR(%SAY1,""{}"",""""))\2) S %SAY=%SAY1_""++24,""_%SAY1X_"",HH,I,,C++RB,WF"" X %XMSG" ; S $Y=24"
 I %ENGLISH S %XMSGN="N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=(80-$L($TR(%SAY1,""{}"",""""))\2) S %SAY=%SAY1_""++24,""_%SAY1X_"",EE,I,,C++RB,WF"" X %XMSG" ; S $Y=24"
 I '%ENGLISH S %XMSGV="Q:$L($P)<3  N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=80-(80-$L($TR(%SAY1,""{}"",""""))\2) S %SAY=%SAY1_""++0,""_%SAY1X_"",HH,I,,C++RF,WB"" X %XMSG" ; S $Y=0"
 I %ENGLISH S %XMSGV="Q:$L($P)<3  N %SAY1,%SAY1X S %SAY1=$P(%SAY,""++""),%SAY1X=80-$L($TR(%SAY1,""{}"",""""))\2 S %SAY=%SAY1_""++0,""_%SAY1X_"",EE,I,,C++RF,WB"" X %XMSG" ;S $Y=0"
 S %XMSGV(1)="Q:$L($P)<3  W *7,*7,*7 W:$G(%CVET) %CV(""WB""),%CV(""RF"") N %SAY2 S %SAY2=$J("""",$L($P(%SAY,""++""))) X %XMSGV H $S($L(%SAY2)<15:1,$L(%SAY2)<30:2,$L(%SAY2)<60:3,1:4) S %SAY="""" X %XCL X %XMSGV X %XCL"
 S %XMSGV("ER")="N i F i=1:1:5 W *7 ;S %SAY="" ! d ` i b y "" X %XMSGV"
 S %XMSGN("ER")="N i F i=1:1:5 W *7 ;S %SAY="" ! d ` i b y "" X %XMSGN"
 I %XMSG(0)>1 S %XMSGV("ER")="S %SAY="" E R R O R ! "" X %XMSGV(1)"
 S %XMSGV("NO")="S %SAY="" ! mipezp oi` "" X %XMSGV(1)"
 I %XMSG(0)>1 S %XMSGV("NO")="S %SAY="" Has no data ! "" X %XMSGV(1)"
 S %XMSGN(1)="Q:$L($P)<3  W *7,*7,*7 N %SAY2 S %SAY2=$J("""",$L($P(%SAY,""++""))) X %XMSGN H $S($L(%SAY2)<15:1,$L(%SAY2)<30:2,$L(%SAY2)<60:3,1:4) X %XCL S %SAY="""" X %XMSGN X %XCL"
 S %LEVO=68,%PRAVO=67,%VNIZ=66,%VVERX=65,%VVERXE=72,%CHISTE=74,%CHISTS=75
 S ZWEZD="*******************************************************************"
 S %DEL=8
 S %UPRCOD("0132")="BEGF"
 S %UPRCOD("04")="BEGF"
 S %UPRCOD("039")="BEGF"
 S %UPRCOD("0118")="ENDF"
 S %UPRCOD("0101")="ENDF"
 S %UPRCOD("2843")="ENDF"
 S %UPRCOD("0100")="ENDF"
 S %UPRCOD(7968)="LEVO"
 S %UPRCOD(9168)="LEVO"
 S %UPRCOD(5147)="LEVO"
 S %UPRCOD(9167)="PRAVO"
 S %UPRCOD(4891)="PRAVO"
 S %UPRCOD(7967)="PRAVO"
 S %UPRCOD(9172)="HOME"
 S %UPRCOD(9149126)="HOME"
 I %TYPCRT["VT5"  S %UPRCOD(915052126)="HOME"
 S %UPRCOD("071")="HOME"
 S %UPRCOD("0119")="BEGF"
 ;;S %UPRCOD("039")="VVERXE"
 S %UPRCOD("0117")="ENDF"
 S %UPRCOD(9165)="VVERX"
 S %UPRCOD(7965)="VVERX"
 S %UPRCOD(4379)="VVERX"
 S %UPRCOD(9166)="VNIZ"
 S %UPRCOD(7966)="VNIZ"
 S %UPRCOD(4635)="VNIZ"
 S %UPRCOD("096")="KOD"
 S %UPRCOD("2")="HBEN"
 S %UPRCOD(127)="DEL"
 S %UPRCOD(9151126)="DEL"
 S %UPRCOD(8)="DEL"
 S %UPRCOD(9)="TAB"
 S %UPRCOD(27)="ESC"
 S %UPRCOD(25)="ESC"
 S %UPRCOD(11035)="ESC"
 S %UPRCOD(915051126)="ESC"
 S %UPRCOD("015")="TABN"
 S %UPRCOD("10779")="TABN"
 S %UPRCOD(22)="ADDL"
 S %UPRCOD(919169)="ADDL"
 S %UPRCOD(21)="DELL"
 S %UPRCOD(914955126)="DELL"
 S %UPRCOD(7986)="COR"
 S %UPRCOD(9755)="COR"
 S %UPRCOD(914956126)="COR"
 S %UPRCOD(11)="COR"
 S %UPRCOD("079")="ENDS"
 S %UPRCOD("15")="ENDS"
 S %UPRCOD("29")="ENDS"
 S %UPRCOD(9152126)="ENDS"
 S %UPRCOD("11291")="HOME"
 S %UPRCOD(7987)="FIND"
 S %UPRCOD(5403)="FIND"
 S %UPRCOD(10011)="FIND"
 S %UPRCOD(914957126)="FIND"
 S %UPRCOD(7963)="CHISTS"
 S %UPRCOD(28)="CHISTS"
 S %UPRCOD(914949126)="CHISTS"
 S %UPRCOD(919165)="CHISTS"
 S %UPRCOD(919166)="CHISTE"
 S %UPRCOD(914950126)="CHISTE"
 S %UPRCOD(8219)=$S(%TYPCRT="VT220":"PGUP",%TYPCRT="VT520":"CHISTE",1:"CHISTS")
 S %UPRCOD("31")="CHISTS"
 S %UPRCOD(7981)=$S(%TYPCRT="VT220":"PGDN",1:"CHISTE")
 S %UPRCOD(8475)=$S(%TYPCRT="VT220":"PGDN",%TYPCRT="VT520":"SBROS",1:"CHISTE")
 S %UPRCOD(5915)="CHISTE"
 S %UPRCOD(7982)="SBROS"
 S %UPRCOD(919167)="SBROS"
 S %UPRCOD(914951126)="SBROS"
 S %UPRCOD(8731)=$S(%TYPCRT="VT520":"IND",1:"SBROS")
 ;;S %UPRCOD(6171)=$S(%TYPCRT="VT520":"BEGF",1:"SBROS")
 S %UPRCOD(6171)="ENDS"
 S %UPRCOD(7983)="IND"
 S %UPRCOD(919168)="IND"
 S %UPRCOD(914952126)="IND"
 S %UPRCOD(8987)=$S(%TYPCRT="VT520":"ADDL",1:"IND")
 S %UPRCOD(7984)="ADDL"
 S %UPRCOD(914953126)="ADDL"
 S %UPRCOD(9243)="ADDL"
 S %UPRCOD(11547)="ADDL"
 S %UPRCOD(7985)="DELL"
 S %UPRCOD(9499)="DELL"
 S %UPRCOD(7988)="SAVE"
 S %UPRCOD(10267)="SAVE"
 S %UPRCOD(7989)="REST"
 S %UPRCOD(10523)="REST"
 S %UPRCOD(12)="PGLN"
 S %UPRCOD(16)="PGRG"
 S %UPRCOD("073")="PGUP"
 S %UPRCOD("1307")="PGUP"
 S %UPRCOD("6427")="PGUP"
 S %UPRCOD("9153126")="PGUP"
 S %UPRCOD("30")="PGUP"
 S %UPRCOD("081")="PGDN"
 S %UPRCOD("14")="PGDN"
 S %UPRCOD("1563")="PGDN"
 S %UPRCOD("6683")="PGDN"
 S %UPRCOD("9154126")="PGDN"
 S %UPRCOD("082")="INS"
 S %UPRCOD("5659")="INS"
 S %UPRCOD("9150126")="INS"
 S %UPRCOD("094")="HELP"
 S %UPRCOD("053126")="HELP"
 S %UPRCOD("2843")="HELP"
 S %UPRCOD("095")="HBR"
 S %UPRCOD("098")="MDRG"
 S %UPRCOD("4")="MDRG"
 S %UPRCOD("0112")="MDRG"
 S %UPRCOD(13)="BK"
 S %UPRCOD(7451)="BK"
 S %UPRCOD(20)="VNIZE"
 S %UPRCOD(24)="XEC"
 S %UPRCOD(23)="ADD"
 S %UPRCOD(31)="FINDS"
 S %UPRCOD(7)="MET"
 S %UPRCOD(1)="MOD"
 S %UPRCOD(18)="REST"
 S %UPRCOD(915049126)="REST"
 S %UPRCOD(26)="SAVE"
 S %UPRCOD(915048126)="SAVE"
 S %UPRCOD(5)="MOD"
 S %UPRCOD(6)="FIND"
 Q
 ;
DB(I) ;
 U $P W %vverxe,I," ",$C(224) H 1
 Q
 ;
W(%ST) ;
 N %ST1,%SMB S %ST1=""
 N %J F %J=1:1:$L(%ST) D
 .S %SMB=$A(%ST,%J)
 .;;I %SMB>95,%SMB<123 S %SMB=%SMB+$S($P="/dev/pts/0":32,1:128)
 .I %SMB>95,%SMB<123 S %SMB=%SMB+128
 .S %ST1=%ST1_$C(%SMB)
 Q %ST1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1CALC
CCCCM ; CALCULATOR ; SHEER [ 03/07/94 12:45 PM ]
  D ^%L1C W %HBR ; K (%HBR,%ENG,%UPRCOD,%chista,%chists,%POSIC,%POSIC1,%OPT)
            ; KOD  SYMBOL KOD
            ; SYM  SYMBOL
  S LIN=1   ; LIN  SCREEN NUMBER LINE
  S IND=1   ; IND  GLOBAL NUMBER LINE
  S CALC=1  ; CALC CALCULATOR NUMBER ( 1/2 )
  S SIM="+" ; SIM  SIMAN
  S MIS=""  ; MIS  MISPAR
  S SUM=0   ; SUM  REZALT
  S TIP=3   ; TIP 1 - BBOD 1-SIM, 2 - BBOD 2-SIM, 3 - BBOD 1-MIS 4 - BBOD MIS
  S MAXL=$S($P=1:18,%OPT=65:18,1:9),OKHO=MAXL+5 ; MAXL  MAX KOL-BO LIN B OKHE
  S APP=0   ; APP  + K KOOPD X
  S RRR=0,STR=1,STR1=0
  S POZ="W *27,""[""_YY_"";""_(XX+APP)_""H"""
SET ; FIRST SET
  ;        BK  -  .  0  1  2  3  4  5  6  7  8  9  M  G
  S PAT3=",13,45,46,48,49,50,51,52,53,54,55,56,57,77,71,"
  S PAT4=",46,48,49,50,51,52,53,54,55,56,57,"
  S PAT11=",37,77,"
  S PAT1=",13,42,43,45,47,35,92,69,67,77,61,71,81"
  ;  %     BK  *  +  -  /  #  \  E  C  M  =  G  Q
  S HELP="ESC - d`ivi ? - xb`n zbvd ; N - xb`n, C - jqn :iewip  Q - itilg oeaygn  H - dxfr"
  K ^CALC($P) ; --- 65
  X %chista W *27,"[1;35H","o e a y g n"
  D START G MAIN
  Q
START ;
  W *27,"[3;1H"
  W " dlert       jxr            d`vez        dlert       jxr            d`vez     ",!
  I %OPT'=65 D
  .W *27,"[4;1;"_(MAXL+5)_";39b",*27,"[2;1;4;39b",*27,"[4;41;"_(MAXL+5)_";79b",*27,"[2;41;4;79b"
  .W *8,$C(195),*27,"[37C",$C(180),*13,$C(195),*27,"[37C",$C(180)
  .F XX=8,23,48,63 D
  ..W *27,"[2;"_XX_"H"
  ..W $C(194),*10,*8,$C(179),*10,*8,$C(193)
  I %OPT=65 D
  .; ON GRAF  $C(27,40,48)=*27,"(0"  ---  OFF GRAF  $C(27,40,66)=*27,"(B"
  .I %TYPCRT["VT" W *27,"(0"
  .F I=2,4,MAXL+5 W *27,"["_I_";1H" W $TR($J(" ",79)," ","q")
  .F %YY=3:1:MAXL+5 F %XX=1,39,41,79 X %POSIC1 W "x"
  .S %YY=2 F %XX=1,41 X %POSIC1 W "l"
  .S %YY=2 F %XX=39,79 X %POSIC1 W "k "
  .S %YY=4 F %XX=1,41 X %POSIC1 W "t"
  .S %YY=4 F %XX=39,79 X %POSIC1 W "u "
  .S %YY=MAXL+5 F %XX=1,41 X %POSIC1 W "m"
  .S %YY=MAXL+5 F %XX=39,79 X %POSIC1 W "j "
  .F XX=8,23,48,63 D
  ..W *27,"[2;"_XX_"H"
  ..W $C(119),*10,*8,$C(120),*10,*8,$C(118)
  .I %TYPCRT["VT" W *27,"(B"
  W *27,"["_(MAXL+5)_";1H",! D HELP
0 W *27,"["_(4+LIN)_";"_($S(TIP<3:2+TIP,1:7+TIP)+APP)_"H"
  Q
MAIN ;
  W %ENG R *KOD W *27,7 S:KOD=61 KOD=43 S SYM=$C(KOD)
  I SYM="E"!(SYM="e")!(SYM="w") W %HBR G END
  I SYM="H"!(KOD=104)!(KOD=105)!(KOD=137) W *27,7 W %HBR D ^%L1CALCH,START,VID G MAIN
  I SYM="N"!(SYM="n") G NNN
  I SYM="C"!(SYM="c")!(SYM="a") W %HBR G CLEAR
  I SYM="Q"!(SYM="q") W %HBR G CHAN
  I SYM="?" D 63 S SYM="L" D 63 D START,VID G MAIN
  I SYM="m"!(SYM="v") S KOD=77,SYM="M"
  I SYM="g"!(SYM="r") S KOD=71,SYM="G"
  I KOD=8 G BS
  I KOD=127 G DEL
  S ZB=$ZB R *R1:0 I R1>0 S ZB=$S(ZB=0:0_R1,1:R1) ; --- 0_R1
  R *R1:0 I R1>0 S ZB=ZB_R1
  I $D(%UPRCOD(ZB)),"TAB,VVERX,VNIZ,PRAVO,LEVO,PGUP,PGDN,ESC"[%UPRCOD(ZB) G @%UPRCOD(ZB)
  I TIP>4 G 4
  G @TIP
ESC ;
  I TIP>2 G TAB
  W %HBR G END
HELP ;
  U $P:(NOECHO:NOWRAP) F F=1:1:$L(HELP) S EE=$E(HELP,F) W:"ESC?NTABHQ"[EE *27,"[7m" W EE,*27,"[0m" S %X=0 ; W:"E?NCTABHQ"[EE *27,"[0m" S %X=0
  Q
END ;
  W *27,"["_(MAXL+5)_";1H",!,*27,"[J","  :     4 - d`ivi   3 - ycg xefgn   2 - jynd   1 - dqtcd "
  W *27,"["_(MAXL+5)_";1H",! R R#1 I R<1!(R>4) W *7 H 1 G END
  I R=1 G PRINT
  I R=2 W *27,"["_(MAXL+5)_";1H",! D HELP W *27,8 G MAIN
  I R=3 S RRR=1 D 63 G CCCCM+3
  W *7,*27,"["_(MAXL+5)_";1H" D ^%L1C
  Q
VVERX ;
  I IND=1 W *7 G MAIN
  I TIP=2 W *27,"[D" S TIP=1
  I TIP>3 W *27,"["_(TIP-3)_"D" S TIP=3
  I LIN=1 S IND=IND-1,ST=IND,FN=IND+MAXL-1,YY=5,XX=$S(TIP<3:2+TIP,1:7+TIP) D  G MAIN
  .S:'$D(^CALC($P,CALC,FN)) FN=$ZP(^CALC($P,CALC,""))
  .D CBET,POZ,READ D:CALC=1 IND
  S LIN=LIN-1,IND=IND-1 D READ D:CALC=1 IND
  W *27,"[A" G MAIN
  Q
PGUP ;
  I IND'>LIN W *7 G MAIN
  S TIP=1,LIN=1,IND=MAXL*(IND-MAXL\MAXL)+1
  S ST=IND,FN=IND+MAXL-1,YY=5,XX=$S(TIP<3:2+TIP,1:7+TIP) D CBET,POZ,READ D:CALC=1 IND G MAIN
  Q
PGDN ;
  I '$D(^CALC($P,CALC,IND\MAXL+1*MAXL+1)) W *7 G MAIN
  S TIP=1,LIN=1,IND=IND\MAXL+1*MAXL+1
  S ST=IND,FN=IND+MAXL-1,YY=5,XX=3 S:'$D(^CALC($P,CALC,FN)) FN=$ZP(^CALC($P,CALC,""))
  F ICB=1:1:MAXL-1 W *27,"["_(5+ICB)_";"_(3+APP)_"H" W *27,"[36X"
  D CBET,POZ,READ D:CALC=1 IND G MAIN
  Q
READ ;
  I '$D(^CALC($P,CALC,IND)) S (SIM,MIS,SUM)="" Q
  S SIM=$P(^CALC($P,CALC,IND),","),MIS=$P(^(IND),",",2),SUM=$P($G(^(IND-1)),",",3)
  Q
VNIZ ;
  I '$D(^CALC($P,CALC,IND)) W *7 G MAIN
  I IND=$ZP(^CALC($P,CALC,"")) W *7 G MAIN
  I TIP=2 W *27,"[D" S TIP=1
  I TIP>3 W *27,"["_(TIP-3)_"D" S TIP=3
  I LIN=MAXL S IND=IND+1,ST=IND-MAXL+1,FN=IND,YY=4+MAXL,XX=$S(TIP<3:2+TIP,1:7+TIP) D CBET,POZ,READ D:CALC=1 IND G MAIN
  S LIN=LIN+1,IND=IND+1 D READ D:CALC=1 IND
  W *27,"[B" G MAIN
  Q
PRAVO ;
  I TIP=2!(TIP=14)!(TIP>2&(TIP-2>$L(MIS)))!(TIP=1&((SIM'["M"&(SIM'["G")))) W *7 G MAIN
  S TIP=TIP+1 W *27,"[C" G MAIN
  Q
LEVO ;
  I TIP=1!(TIP=3) W *7 G MAIN
  S TIP=TIP-1 W *27,"[D" G MAIN
  Q
TAB ;
  W *27,"["_(4+LIN)_";"_(3+APP)_"H" S TIP=1 G MAIN
  Q
BS ;
  I TIP=1!(TIP=3) W *7 G MAIN
  W *8 S TIP=TIP-1
  I TIP=1 S SIM="" W " ",*8 G MAIN
  I TIP>2 W $E(MIS,TIP-1,22),$J("",15-TIP) W *27,"["_(LIN+4)_";"_(TIP+7+APP)_"H" S MIS=$E(MIS,1,TIP-3)_$E(MIS,TIP-1,22) G MAIN
  Q
DEL ;
  I TIP=1 S SIM=$E(SIM,2) W SIM," ",*8 G MAIN
  I TIP=2 W " ",*8 S SIM=$E(SIM) G MAIN
  I TIP>2 W $E(MIS,TIP-1,22),$J("",15-TIP) W *27,"["_(LIN+4)_";"_(TIP+7+APP)_"H" S MIS=$E(MIS,1,TIP-3)_$E(MIS,TIP-1,22) G MAIN
  Q
CLEAR ;
  W *27,7
  W *27,"["_(MAXL+5)_";1H",!,*27,"[J","k  :     ( l/k ) oeaykn zewpl "
  W *27,"["_(MAXL+5)_";1H",! R R#1 S:R="" R="k"
  W *27,"["_(MAXL+5)_";1H",! D HELP
  W *27,8 I R'="k"&(R'="F") G MAIN
  S LIN=1,IND=1,MIS="",SIM="+",TIP=3,SUM=0 K ^CALC($P,CALC) D:CALC=1 IND
  F ICB=1:1:MAXL W *27,"["_(4+ICB)_";"_(3+APP)_"H" W *27,"[36X"
  W *27,"[5;"_(10+APP)_"H"
  G MAIN
  Q
CHAN ;
  S STO=IND-LIN+1
  I CALC=1 D  D 0 G MAIN
  .I $D(^CALC($P,2)) D
  ..W *27,"["_(MAXL+5)_";1H",!,*27,"[J","k  :     ( l/k ) dpyn oeaykn zewpl "
  ..W *27,"["_(MAXL+5)_";1H",! R R#1 S:R="" R="k"
  ..W *27,"["_(MAXL+5)_";1H",! D HELP
  ..I R="k"!(R="F")!(R="f") K LIN2,IND2,TIP2,SIM2,MIS2,SUM2,^CALC($P,2) F I=5:1:MAXL+4 W *27,"["_I_";43H",*27,"[36X"
  .S LIN1=LIN,IND1=IND,TIP1=TIP,SUM1=SUM,SIM1=SIM,MIS1=MIS
  .S CALC=2,APP=40,LIN=$G(LIN2,1),IND=$G(IND2,1),TIP=$G(TIP2,3),SUM=$G(SUM2,0)
  .S SIM=$G(SIM2,"+"),MIS=$G(MIS2,"")
  I CALC=2 D  G MAIN
  .I TIP1>2 D
6 ..W *27,"["_(MAXL+5)_";1H",!,*27,"[J","1  :    3 - z`vl    2 - ( M0 ) oexkifa xenyl   1 - xtqn xiardl "
  ..W *27,"["_(MAXL+5)_";1H",! R R#1 S:R="" R=1 I R<1!(R>3) W *7 H 1 G 6
  ..W *27,"["_(MAXL+5)_";1H",! D HELP
  .S LIN2=LIN,IND2=IND,TIP2=TIP,SUM2=SUM,SIM2=SIM,MIS2=MIS
  .S SIM=SIM1,MIS=$S($G(R)=1:+$J(SUM,0,2),1:$G(MIS1)) I $G(R)=2 S M0=+$J(SUM,0,2)
  .S CALC=1,APP=0,LIN=$G(LIN1,1),IND=$G(IND1,1),TIP=$G(TIP1,3),SUM=$G(SUM1,0)
  .W *27,"["_(4+LIN)_";"_($S(TIP<3:2+TIP,1:10)+APP)_"H"
  .I TIP<3 S MIS="" Q
  .W MIS S TIP=3+$L(MIS),PN=11-$L(MIS) W *27,"["_PN_"X"
  Q
63 ;  ???
  W *27,7 W %HBR
  ; D:CALC=2 GET^%VIDEO(.TEXT,0,1,40,23,2) D:CALC=1 GET^%VIDEO(.TEXT,40,1,80,23,2)
  F I=2:1:23 W *27,"["_I_";"_(41-APP)_"H",*27,"[39X"
  W *27,"[2;"_(41-APP)_";"_OKHO_";"_(79-APP)_"b"
  I SYM="?"!RRR S STR=1,STR1=0,MM=0 F I=0:1:9 W *27,"["_(2+STR)_";"_(44-APP)_"H" I $D(@("M"_I)) S STR=STR+1,MM=MM+@("M"_I) W "M",I,"=",$$JJ(@("M"_I))
  I SYM="?",STR=1 S STR1=STR
  I SYM="L" S STR=1,MM=0 F I=0:1:9 W *27,"["_(2+STR)_";"_(44-APP)_"H" I $D(^CCCC(I)) S STR=STR+1,MM=MM+^CCCC(I) W "G",I,"=",$$JJ($P(^CCCC(I),"  ")),$J($P(^CCCC(I),"  ",2),19)
  I STR>1 W *27,"["_(2+STR)_";"_(47-APP)_"H",*27,"[7m",$$JJ(MM),*27,"[0m"," :  lkd jq"
  I 'RRR,(STR>1&(SYM="?"))!(SYM="L"&(STR>1))!(SYM="L"&(STR=1)&(STR1=1)) D
  .W *27,"["_OKHO_";1H",!,*27,"[J","           <- edylk ywn ugl        " W:STR=1&(STR1=1) "wix  oexkif"
  .W *27,"["_OKHO_";1H",! R R#1
  I RRR,STR>1 D
633 .W *27,"["_OKHO_";1H",!,*27,"[J","           : ( k/l )   ipnf xb`n iewip "
  .W *27,"["_OKHO_";1H",! R R#1 I ",F,f,k,K,l,"'[(","_R_",") W *7 G 633
  .I R="k"!(R="F")!(R="f") K M0,M1,M2,M3,M4,M5,M6,M7,M8,M9 W %HBR,*27,"[2K",*7,?35,*27,"[7m","  iwp ipnf xb`n  ",*27,"[0m" H 2
  W *27,"["_OKHO_";1H",! D HELP W *27,8
  ; D:CALC=2 PUT^%VIDEO(TEXT,0,1,40,23,2) D:CALC=1 PUT^%VIDEO(TEXT,40,1,80,23,2)  W *27,8
  ; I SYM="L" D START,VIDEO
  ; D START,VIDEO
  Q
VID ;
  W *27,7 S ST=$G(STO,1),INDO=IND,LINO=LIN,CALC=$S(CALC=1:2,1:1),APP=$S('APP:40,1:0)
  S FN=ST+MAXL-1,YY=5,XX=3 S:'$D(^CALC($P,CALC,FN)) FN=$ZP(^CALC($P,CALC,""))
  F ICB=1:1:MAXL W *27,"["_(4+ICB)_";"_(3+APP)_"H" W *27,"[36X"
  D CBET
  S IND=INDO,LIN=LINO,CALC=$S(CALC=1:2,1:1),APP=$S('APP:40,1:0) W *27,8
  Q
71 ;
  W *27,"["_OKHO_";1H",!,*27,"[J"
  S %GET=" : dxrd++"_OKHO_",30,HH#"_$P(^CCCC($E(SIM,2)),"  ",2)_"++18,H,I++" D ^%L1GET
  W %HBR,*27,"["_OKHO_";1H",! D HELP
  Q
NNN ;
  W *27,7,*27,"["_OKHO_";1H",!,*27,"[J"
  S %GET=": 0 - z`vl ; 3 - (M+G)xb`nd lk, 2 - (G)reaw xb`n, 1 - (M)ipnf xb`n : zewpl++"_OKHO_",78,HH#0++1,E,++" D ^%L1GET
  I %S<0!(%S>4) S %S=0
  I %S=1 K M0,M1,M2,M3,M4,M5,M6,M7,M8,M9 S SAY="ipnf"
  I %S=2 K ^CCCC S SAY="reaw"
  I %S=3 K M0,M1,M2,M3,M4,M5,M6,M7,M8,M9 K ^CCCC S SAY=""
  I %S>0 W %HBR,*27,"[2K",*7,?45,*27,"[7m","  iwp "_SAY_" xb`n  ",*27,"[0m" H 2
  W %HBR,*27,"["_OKHO_";1H",! D HELP
  W *27,8 G MAIN
  Q
1 ;
  I KOD=13&(SIM'="") G W
  I KOD=56 S KOD=42 G S
  I KOD=95 S KOD=45 G S
  I KOD=46!(KOD=63)!(KOD=58)!(KOD=59)!(KOD=115)!(KOD=147) S KOD=47 G S
  I KOD=51 S KOD=35 G S
  I KOD=124 S KOD=92 G S
  I KOD=13!(PAT1'[(","_KOD_",")) W *7 G MAIN
S S SYM=$C(KOD)
  W SYM W:KOD'=77&(KOD'=71) "  " S SIM=SYM I KOD=77!(KOD=71) S TIP=2 G MAIN
W I $D(^CALC($P,CALC,IND)) D PERE S LIN=LIN-1,IND=IND-1 D:CALC=1 IND D READ
  W *27,"["_(4+LIN)_";"_(10+APP)_"H" S TIP=3 G MAIN
  Q
2 ;
  I KOD=13&($L(SIM)>1) G W
  I KOD=13 D
  .I SIM="M" F SYM=1:1 Q:'$D(@(SIM_SYM))
  .I SIM="G" F SYM=1:1 Q:'$D(^CCCC(SYM))
  .S SYM=SYM#10,KOD=$A(SYM)
  I SYM'?1N W *7 G MAIN
  S YY=LIN+4,XX=10,SIM=SIM_SYM_"=",MIS=+$J(SUM,0,2),TIP=3+$L(MIS)
  I MIS'<1E9 S MIS=$$JJ(MIS),TIP=3+$L(MIS)
  W SYM_"=" X POZ W MIS G MAIN
  Q
3 ;
  I KOD=62!(KOD=117)!(KOD=149) S KOD=46,SYM=$C(KOD) G 31
  I KOD=63 S KOD=47,SYM=$C(KOD) G 31
  I KOD=13&($D(^CALC($P,CALC,IND))) G 4
  I KOD=13&('$D(^CALC($P,CALC,IND))) W *7 G MAIN
  I PAT3'[(","_KOD_",") W *7 G MAIN
31 W SYM S MIS=SYM_$E(MIS,2,22),TIP=4 G MAIN
  Q
4 ;
  I MIS="M"!(MIS="G"),KOD=13 D
  .I MIS="M" F SYM=0,9:-1:1 Q:$D(@("M"_SYM))
  .I MIS="G" F SYM=0,9:-1:1 Q:$D(^CCCC(SYM))
  .S KOD=$A(SYM)
  I MIS="M"!(MIS="G"),SYM'?1N G MAIN
  I MIS="M"!(MIS="G") S MIS=MIS_SYM_"="_$S(MIS="M":$G(@(MIS_SYM),0),1:$P($G(^CCCC(SYM),0),"  ")) W SYM,"=",$P(MIS,"=",2) S TIP=1 D PERE S SIM=$P($G(^CALC($P,CALC,IND),""),",") W *27,"["_(4+LIN)_";"_(3+APP)_"H" G MAIN
  I KOD=62!(KOD=117)!(KOD=149) S KOD=46,SYM=$C(KOD) G 40
  I KOD=63 S KOD=47,SYM=$C(KOD) G 40
  I KOD=58!(KOD=59)!(KOD=115)!(KOD=147) S KOD=47,SYM=$C(KOD) G 40
  I KOD=13 S TIP=1 D PERE S SIM=$P($G(^CALC($P,CALC,IND),""),",") W *27,"["_(4+LIN)_";"_(3+APP)_"H" G MAIN
  I KOD=37 D 41 D PERE S TIP=1 W *27,"["_(4+LIN)_";"_(3+APP)_"H" G MAIN
  I KOD=77!(KOD=71) S TIP=2 D PERE S SIM=$C(KOD) W *27,"["_(4+LIN)_";"_(3+APP)_"H",SYM G MAIN
40 I PAT1[(","_KOD_",") S TIP=3 D PERE W *27,"["_(4+LIN)_";"_(3+APP)_"H" S SIM=SYM W SIM W *27,"["_(4+LIN)_";"_(10+APP)_"H" G MAIN
   I PAT4'[(","_KOD_",") W *7 G MAIN
41 S MISO=MIS S MIS=$E(MIS,1,TIP-3)_SYM_$E(MIS,TIP-1,22)
   I TIP<15,MIS?.1"-".12N.1".".1"%"!(MIS?.1"-".11N1".".6N.1"%") S TIP=TIP+1 W SYM Q:KOD=37  G MAIN
   W *7 S MIS=MISO G MAIN
   Q
PERE ;
  D COM,CB,GLO D:CALC=1 IND I LIN>MAXL S LIN=MAXL,ST=IND-MAXL+1,FN=IND-1 D CBET,CHIS
  Q:'$D(^CALC($P,CALC,IND))
  S LINO=LIN,INDO=IND I LIN>MAXL S LIN=MAXL
  F IPE=IND:1 Q:'$D(^CALC($P,CALC,IPE))  S SIM=$P(^CALC($P,CALC,IPE),","),MIS=$P(^(IPE),",",2) D COM D:LIN'>MAXL CB D GLO
  S LIN=LINO,IND=INDO D READ
  Q
COM ;   COMPUTE
  S OPER=MIS
  I KOD=37!(MIS["%") D  Q
  .I SIM="*" S SUM=SUM*MIS/100 Q
  .I SIM="+" S SUM=SUM*MIS/100+SUM Q
  .I SIM="-" S SUM=SUM-(SUM*MIS/100) Q
  .I SIM="/" W:+MIS=0 *7 Q:+MIS=0  S SUM=SUM*100/MIS Q
  .I SIM="\" W:+MIS=0 *7 Q:+MIS=0  S SUM=$J(SUM*100/MIS,0,0) Q
  .W *7 Q
  I SIM["M" S @($P(SIM,"="))=MIS Q
  I SIM["G" S $P(^CCCC($E(SIM,2)),"  ")=MIS D:'$D(^CALC($P,CALC,IND)) 71 S $P(^CCCC($E(SIM,2)),"  ",2)=%S Q
  I MIS["M"!(MIS["G") S OPER=$P($P(MIS,"=",2),"  ")
  I ",/,\,#,"[(","_SIM_",") I +OPER=0 W *7,*7,*7 Q
  X "S SUM="_SUM_SIM_+OPER
  Q
CB ;
  W *27,"["_(4+LIN)_";"_(26+APP)_"H" W $$JJ(SUM)
  Q
GLO ;
  S ^CALC($P,CALC,IND)=SIM_","_MIS_","_SUM
  S LIN=LIN+1,IND=IND+1,MIS="" I KOD=37 S KOD=13,SIM=""
  Q
CBET ;
  S COL="3,10,26",CEL="0,0,12",DRO="0,0,2"
  F ICB=ST:1:FN W *27,"["_(5-ST+ICB)_";"_(3+APP)_"H" W *27,"[36X" D
  .F P=1,2 W *27,"["_(5-ST+ICB)_";"_($P(COL,",",P)+APP)_"H" W $P(^CALC($P,CALC,ICB),",",P)
  .W *27,"["_(5-ST+ICB)_";"_(26+APP)_"H" W $$JJ($P(^CALC($P,CALC,ICB),",",3))
  Q
CHIS ;
  W *27,"["_(6-ST+ICB)_";"_(3+APP)_"H" W *27,"[36X"
  Q
POZ ;
  W *27,"["_YY_";"_(XX+APP)_"H"
  Q
IND ;
  W *27,7,*27,"[1;1H",*27,"[7m",$J(IND,3)," ",*27,"[0m",*27,8
  Q
JJ(X) ;
  I X<1E9,X>(-1E8) S X=$J(X,12,2) Q X
  S EE=$L($P(X,"."))-9,X=$J($E(X,1,10)/10,9,0) S:$L(X)>9 X=$E(X,1,9),EE=EE+1 S X=X_"E"_EE_" "
  Q X
PRINT ;
  S III=$P
  O 3 U 3
  W ! D ^%D W "       " D ^%T W !
  W "---------------------------------------",!
  W " dlert       jxr            d`vez      ",!
  W "---------------------------------------",!
  F I=1:1 Q:'$D(^CALC(III,1,I))  W $P(^(I),","),?10,$P(^(I),",",2),?25,$J($P(^(I),",",3),12,2),!
  W # C 3 U $P:(NOECHO:NOWRAP) G END

%L1CALC1
CCCCM ; CALCULATOR ; SHEER [ 16.12.03 10:18 ] [ 14.12.03 16:43 ] [ 01/18/93  2:08 PM ]
  D ^%L1C W %HBR K (%HBR,%ENG)
            ; KOD  SYMBOL KOD
            ; SYM  SYMBOL
  S LIN=1   ; LIN  SCREEN NUMBER LINE
  S IND=1   ; IND  GLOBAL NUMBER LINE
  S CALC=1  ; CALC CALCULATOR NUMBER ( 1/2 )
  S SIM="+" ; SIM  SIMAN
  S MIS=""  ; MIS  MISPAR
  S SUM=0   ; SUM  REZALT
  S TIP=3   ; TIP 1 - BBOD 1-SIM, 2 - BBOD 2-SIM, 3 - BBOD 1-MIS 4 - BBOD MIS
  S MAXL=$S($P>1:9,1:18) ; MAXL  MAX KOL-BO LIN B OKHE
  S APP=0   ; APP  + K KOOPD X
  S RRR=0   ;
  S POZ="W *27,""[""_YY_"";""_(XX+APP)_""H"""
SET ; FIRST SET
  ;         .  0  1  2  3  4  5  6  7  8  9  M
  S PAT3=",13,46,48,49,50,51,52,53,54,55,56,57,77,"
  S PAT4=",46,48,49,50,51,52,53,54,55,56,57,"
  S PAT11=",37,77,"
  S PAT1=",13,42,43,45,47,35,92,69,67,77,61,"
  ;  %     BK  *  +  -  /  #  \  E  C  M  =
  S HELP="E - d`ivi, ? - xb`n dbvd, N - xb`n iewip, C - itilg oeaygn, TAB - dxfg, H - dxfr"
  K ^CALC
START ;
  W #?34,"o e a y g n",!!
  W " dlert       jxr            d`vez        dlert       jxr            d`vez",!
  W *27,"[4;1;"_(MAXL+5)_";39b",*27,"[2;1;4;39b",*27,"[4;41;"_(MAXL+5)_";79b",*27,"[2;41;4;79b"
  ;W *8,$C(195),*27,"[37C",$C(180),*13,$C(195),*27,"[37C",$C(180)
  ;F XX=8,23,48,63 D
  .W *27,"[2;"_XX_"H"
  .W $C(194),*10,*8,$C(179),*10,*8,$C(193)
 ;  W *27,"[4;1;3;39b",*27,"[2;1;4;39b",*27,"[4;41;3;79b",*27,"[2;41;4;79b"
  W *27,"["_(MAXL+5)_";1H",!,HELP
  O 0:(0::::65)
0 W *27,"["_(4+LIN)_";"_($S(TIP<3:2+TIP,1:7+TIP)+APP)_"H"
  ;
MAIN ;
  W %ENG R *KOD W *27,7 S:KOD=61 KOD=43 S SYM=$C(KOD) ; W !,$ZB G MAIN
  I SYM="E"!(SYM="e")!(SYM="w") W %HBR G END
  I SYM="H"!(KOD=104)!(KOD=105)!(KOD=137) W *27,7 W %HBR G HELP
  I SYM="N"!(SYM="n") K M0,M1,M2,M3,M4,M5,M6,M7,M8,M9 G 63
  I KOD=8 G BS
  I KOD=9 G TAB
  I KOD=127 G DEL
  I SYM="C"!(SYM="c")!(SYM="a") W %HBR G CHAN
  I $ZB=4379 G BBERX
  I $ZB=4635 G BNIZ
  I $ZB=4891 G PRABO
  I $ZB=5147 G LEBO
  I SYM="?" G 63
  I SYM="m"!(SYM="v") S KOD=77,SYM="M"
  I TIP>4 G 4
  G @TIP
END ;
  W *27,"["_(MAXL+5)_";1H",!,*27,"J","  :     4 - d`ivi   3 - ycg xefdn   2 - jynd   1 - dqtcd                    "
  W *27,"["_(MAXL+5)_";1H",! R R#1 I R<1!(R>4) W *7 H 1 G END
  I R=1 G PRINT
  I R=2 W *27,"["_(MAXL+5)_";1H",!,HELP,*27,8 G MAIN
  I R=3 S RRR=1 D 63 G CCCCM+3
  W *7,*27,"["_(MAXL+5)_";1H" D ^%L1C
  Q
BBERX ;
  I IND=1 W *7 G MAIN
  I TIP>3 W *27,"["_(TIP-3)_"D" S TIP=3
  I LIN=1 S IND=IND-1,ST=IND,FN=IND+MAXL-1,YY=5,XX=$S(TIP<3:2+TIP,1:7+TIP) D CBET,POZ,READ D:CALC=1 IND G MAIN
  I IND>$ZP(^CALC(CALC,"")) S:MIS="" MIS=0 S ^CALC(CALC,IND)=SIM_","_MIS
  S LIN=LIN-1,IND=IND-1 D READ D:CALC=1 IND
  W *27,"A" G MAIN
  Q
READ ;
  S SIM=$P(^CALC(CALC,IND),","),MIS=$P(^(IND),",",2),SUM=$P($G(^(IND-1)),",",3)
  Q
BNIZ ;
  I '$D(^CALC(CALC,IND)) W *7 G MAIN
  I IND=$ZP(^CALC(CALC,"")) W *7 G MAIN
  I TIP>3 W *27,"["_(TIP-3)_"D" S TIP=3
  I LIN=MAXL S IND=IND+1,ST=IND-MAXL+1,FN=IND,YY=4+MAXL,XX=$S(TIP<3:2+TIP,1:7+TIP) D CBET,POZ,READ D:CALC=1 IND G MAIN
  S LIN=LIN+1,IND=IND+1 D READ D:CALC=1 IND
  W *27,"B" G MAIN
  Q
PRABO ;
  I TIP=2!(TIP=11)!(TIP>2&(TIP-2>$L(MIS)))!(TIP=1&(SIM'["M")) W *7 G MAIN
  S TIP=TIP+1 W *27,"C" G MAIN
  Q
LEBO ;
  I TIP=1!(TIP=3) W *7 G MAIN
  S TIP=TIP-1 W *27,"[D" G MAIN
  Q
TAB ;
  W *27,"["_(4+LIN)_";"_(3+APP)_"H" S TIP=1 G MAIN
  Q
BS ;
  I TIP=1!(TIP=3) W *7 G MAIN
  W *8 S TIP=TIP-1
  I TIP=1 S SIM="" W " ",*8 G MAIN
  I TIP>2 W $E(MIS,TIP-1,22),$J("",13-TIP) W *27,"["_(LIN+4)_";"_(TIP+7+APP)_"H" S MIS=$E(MIS,1,TIP-3)_$E(MIS,TIP-1,22) G MAIN
  Q
DEL ;
  I TIP=1 S SIM=$E(SIM,2) W SIM," ",*8 G MAIN
  I TIP=2 W " ",*8 S SIM=$E(SIM) G MAIN
  I TIP>2 W $E(MIS,TIP-1,22),$J("",13-TIP) W *27,"["_(LIN+4)_";"_(TIP+7+APP)_"H" S MIS=$E(MIS,1,TIP-3)_$E(MIS,TIP-1,22) G MAIN
  Q
CHAN ;
  I CALC=1 D  G 0
  .I $D(^CALC(2)) D
  ..W *27,"["_(MAXL+5)_";1H",!,*27,"J","k  :     ( l/k ) dpyn oeaykn zewpl                                           "
  ..W *27,"["_(MAXL+5)_";1H",! R R#1 S:R="" R="k" ; I R<1!(R>1) W *7 H 1 G CHAN+2
  ..W *27,"["_(MAXL+5)_";1H",!,HELP
  ..I R="k"!(R="F")!(R="f") K LIN2,IND2,TIP2,SIM2,MIS2,SUM2,^CALC(2) F I=5:1:MAXL+4 W *27,"["_I_";43H",*27,"[35X"
  .S LIN1=LIN,IND1=IND,TIP1=TIP,SUM1=SUM,SIM1=SIM,MIS1=MIS
  .S CALC=2,APP=40,LIN=$G(LIN2,1),IND=$G(IND2,1),TIP=$G(TIP2,3),SUM=$G(SUM2,0)
  .S SIM=$G(SIM2,"+"),MIS=$G(MIS2,"")
  I CALC=2 D  G MAIN
  .I TIP1>2 D
6 ..W *27,"["_(MAXL+5)_";1H",!,*27,"J","1  :    3 - z`vl    2 - ( M0 ) oexkifa xenyl   1 - xtqn xiardl               "
  ..W *27,"["_(MAXL+5)_";1H",! R R#1 S:R="" R=1 I R<1!(R>3) W *7 H 1 G 6
  ..W *27,"["_(MAXL+5)_";1H",!,HELP
  .S LIN2=LIN,IND2=IND,TIP2=TIP,SUM2=SUM,SIM2=SIM,MIS2=MIS
  .S SIM=SIM1,MIS=$S($G(R)=1:+$J(SUM,0,2),1:$G(MIS1)) I $G(R)=2 S M0=+$J(SUM,0,2)
  .S CALC=1,APP=0,LIN=$G(LIN1,1),IND=$G(IND1,1),TIP=$G(TIP1,3),SUM=$G(SUM1,0)
  .W *27,"["_(4+LIN)_";"_($S(TIP<3:2+TIP,1:10)+APP)_"H"
  .I TIP<3 S MIS="" Q
  .W MIS S TIP=3+$L(MIS),PN=11-$L(MIS) W *27,"["_PN_"X"
  Q
63 ;  ??????????
  W *27,7 W %HBR
  D:CALC=2 GET^%VIDEO("TEXT",0,1,40,24,2) D:CALC=1 GET^%VIDEO("TEXT",40,1,80,24,2)
  F I=2:1:23 W *27,"["_I_";"_(41-APP)_"H",*27,"[39X"
  S OKHO=MAXL+5 W *27,"[2;"_(41-APP)_";"_OKHO_";"_(79-APP)_"b"
  S STR=1,MM=0 F I=0:1:9 W *27,"["_(2+STR)_";"_(48-APP)_"H" I $D(@("M"_I)) S STR=STR+1,MM=MM+@("M"_I) W "M",I," = ",$J(@("M"_I),12)
  I STR>1 W *27,"["_(2+STR)_";"_(53-APP)_"H",*27,"[7m",$J(MM,12,2),*27,"[0m"," :  lkd jq"
  I 'RRR D
  .W *27,"["_OKHO_";1H",!,*27,"J","           <- ywn edylk  ugl        ",$S(STR=1:"wix oexkif"_$J("",30),1:$J("",40))
  .W *27,"["_OKHO_";1H",! R R#1
  I RRR,STR>1 D
633 .W *27,"["_OKHO_";1H",!,*27,"J","           : ( 0/1 )  xb`n iewip      "
  .W *27,"["_OKHO_";1H",! R R#1 I 10'[R W *7 G 633
  .I R=1 K M0,M1,M2,M3,M4,M5,M6,M7,M8,M9
  W *27,"["_OKHO_";1H",!,HELP
  D:CALC=2 PUT^%VIDEO("TEXT",0,1,40,24,2) D:CALC=1 PUT^%VIDEO("TEXT",40,1,80,24,2)  W *27,8 G:'RRR MAIN
  Q
1 ;
  I KOD=13&(SIM'="") G W
  ; I KOD=13&($D(^CALC(CALC,IND))) G W
  I KOD=56 S KOD=42 G S
  I KOD=95 S KOD=45 G S
  I KOD=46!(KOD=63)!(KOD=58)!(KOD=59)!(KOD=115)!(KOD=147) S KOD=47 G S
  I KOD=51 S KOD=35 G S
  I KOD=124 S KOD=92 G S
  I KOD=13!(PAT1'[(","_KOD_",")) W *7 G MAIN
S S SYM=$C(KOD)
  W SYM W:KOD'=77 "  " S SIM=SYM I KOD=77 S TIP=2 G MAIN
W W *27,"["_(4+LIN)_";"_(10+APP)_"H" S TIP=3 G MAIN
  Q
2 ;
  I KOD=13&($L(SIM)>1) G W
  I SYM'?1N W *7 G MAIN
  S YY=LIN+4,XX=10,SIM=SIM_SYM_"=",MIS=SUM,TIP=3+$L(MIS)
  W SYM_"=" X POZ W MIS G MAIN
  Q
3 ;
  I KOD=62!(KOD=117)!(KOD=149) S KOD=46,SYM=$C(KOD) G 31
  I KOD=63 S KOD=47,SYM=$C(KOD) G 31
  I KOD=13&($D(^CALC(CALC,IND))) G 4
  I KOD=13&('$D(^CALC(CALC,IND))) W *7 G MAIN
  I PAT3'[(","_KOD_",") W *7 G MAIN
31 W SYM S MIS=SYM_$E(MIS,2,22),TIP=4 G MAIN
  Q
4 ;
  I MIS="M",SYM'?1N G MAIN
  I MIS="M" S MIS="M"_SYM_"="_$G(@(MIS_SYM),0) W SYM,"=",$P(MIS,"=",2) S TIP=1 D PERE S SIM=$P($G(^CALC(CALC,IND),""),",") W *27,"["_(4+LIN)_";"_(3+APP)_"H" G MAIN
  I KOD=62!(KOD=117)!(KOD=149) S KOD=46,SYM=$C(KOD) G 40
  I KOD=63 S KOD=47,SYM=$C(KOD) G 40
  I KOD=58!(KOD=59)!(KOD=115)!(KOD=147) S KOD=47,SYM=$C(KOD) G 40
  I KOD=13 S TIP=1 D PERE S SIM=$P($G(^CALC(CALC,IND),""),",") W *27,"["_(4+LIN)_";"_(3+APP)_"H" G MAIN
  I KOD=37 S TIP=1,MIS=MIS_SYM W SYM D PERE W *27,"["_(4+LIN)_";"_(3+APP)_"H" G MAIN
  I KOD=77 S TIP=2 D PERE S SIM="M" W *27,"["_(4+LIN)_";"_(3+APP)_"H",SYM G MAIN
40 I PAT1[(","_KOD_",") S TIP=3 D PERE W *27,"["_(4+LIN)_";"_(3+APP)_"H" S SIM=SYM W SIM W *27,"["_(4+LIN)_";"_(10+APP)_"H" G MAIN
  I PAT4'[(","_KOD_",") W *7 G MAIN
41 I MIS_SYM?.9N!(MIS_SYM?.9N1".".2N) S MIS=$E(MIS,1,TIP-3)_SYM_$E(MIS,TIP-1,22),TIP=TIP+1 W SYM G MAIN
  W *7 G MAIN
  Q
PERE ;
  D COM,CB,GLO D:CALC=1 IND I LIN>MAXL S LIN=MAXL,ST=IND-MAXL+1,FN=IND-1 D CBET,CHIS
  Q:'$D(^CALC(CALC,IND))
  S LINO=LIN,INDO=IND I LIN>MAXL S LIN=MAXL
  F IPE=IND:1 Q:'$O(^CALC(CALC,IPE))  S SIM=$P(^CALC(CALC,IPE),","),MIS=$P(^(IPE),",",2) D COM D:LIN'>MAXL CB D GLO
  S LIN=LINO,IND=INDO D READ
  Q
COM ;   COMPUTE
  S OPER=MIS
  I KOD=37!(MIS["%") D  Q
  .I SIM="*" S SUM=SUM*MIS/100 Q
  .I SIM="+" S SUM=SUM*MIS/100+SUM Q
  .I SIM="-" S SUM=SUM-(SUM*MIS/100) Q
  .I SIM="/" Q:MIS=0  S SUM=SUM*100/MIS Q
  I SIM["M" S @($P(SIM,"="))=MIS Q
  I MIS["M" S OPER=$P(MIS,"=",2)
  I ",/,\,#,"[(","_SIM_",") I OPER=0 W *7,*7,*7 Q
  X "S SUM="_SUM_SIM_OPER
  Q
CB ;
  W *27,"["_(4+LIN)_";"_(26+APP)_"H" W $J(SUM,12,2)
  Q
GLO ;
  S ^CALC(CALC,IND)=SIM_","_MIS_","_SUM
  S LIN=LIN+1,IND=IND+1,MIS=""
  Q
CBET ;
  S COL="3,10,26",CEL="0,0,12",DRO="0,0,2"
  F ICB=ST:1:FN W *27,"["_(5-ST+ICB)_";"_(3+APP)_"H" W *27,"[35X" D
  .F P=1,2 W *27,"["_(5-ST+ICB)_";"_($P(COL,",",P)+APP)_"H" W $P(^CALC(CALC,ICB),",",P)
  .W *27,"["_(5-ST+ICB)_";"_(26+APP)_"H" W $J($P(^CALC(CALC,ICB),",",3),12,2)
  Q
CHIS ;
  W *27,"["_(6-ST+ICB)_";"_(3+APP)_"H" W *27,"[35X"
  Q
POZ ;
  W *27,"["_YY_";"_(XX+APP)_"H"
  Q
IND ;
  W *27,7,*27,"[1;1H",*27,"[7m",$J(IND,3)," ",*27,"[0m",*27,8
  Q
HELP ;
  D:CALC=2 GET^%VIDEO("TEXT",0,1,40,24,2) D:CALC=1 GET^%VIDEO("TEXT",41,1,80,24,2)
  F PAGE=0:1 D  Q:T="Q"
  .F I=1:1:MAXL S T=$P($T(H+I+(PAGE*MAXL)),";",2) Q:T="Q"  W *27,"["_(4+I)_";"_(42-APP)_"H" W:T'[":" T W:T[":" $P(T,":"),*27,"[7m"," :",$P(T,":",2),*27,"[0m"
  .I I<MAXL S TT=$P($T(H),";",2) F I=I:1:MAXL W *27,"["_(4+I)_";"_(42-APP)_"H",TT
  .W *27,"["_(MAXL+5)_";1H",!,*27,"J","  : < 1 >  1 - jynd,  2 - dxfg,  3 - d`ivi  "
  .W *27,"["_(MAXL+5)_";1H",! R R#1
  .I R=3 S T="Q" Q
  .I R=2 S PAGE=PAGE-2 D  S:T="Q" T="" Q
  ..I PAGE<-1 S PAGE=-1 W *7,"  dxfr dligz ",*27,"K" H 1
  .I T="Q"!($P($T(H+I+1+(PAGE*MAXL)),";",2)="Q") W *7,"  dxfr sq ",*27,"K" H 1 S PAGE=PAGE-1,T=""
  W *27,"["_(MAXL+5)_";1H",!,HELP
  D:CALC=2 PUT^%VIDEO("TEXT",0,1,40,24,2) D:CALC=1 PUT^%VIDEO("TEXT",41,1,80,24,2)  W *27,8 G MAIN
H ;                                    ;
  ;                           : dlert ;
  ;                       /   *   -   +;
  ;    7#2=1     #       7\2=3        \;
  ;                       oexkf  M9--M0;
  ;                                    ;
  ;                             : jxr ;
  ;                        123456789   ;
  ;                        123456789.  ;
  ;                        123456789.1 ;
  ;                        123456789.12;
  ;                                  .1;
  ;                                 .12;
  ;                              M0--M9;
  ;                : mifeg` mr zelert ;
  ;                      200 = mekq  m`;
  ;           *         10%       =  20;
  ;           +         10%       = 220;
  ;           -         10%       = 180;
  ;Q
  Q
PRINT ;
  O 3 U 3
  W ! D ^%D W "       " D ^%T W !
  W "---------------------------------------",!
  W " dlert       jxr            d`vez      ",!
  W "---------------------------------------",!
  F I=1:1 Q:'$D(^CALC(1,I))  W $P(^(I),","),?10,$P(^(I),",",2),?25,$J($P(^(I),",",3),12,2),!
  W # C 3 U 0:(0::::65) G END

%L1CALCH
%L1CALCH ; CALCULATOR HELP ; SHEER [ 03/01/93  9:20 AM ]
HELP ;
  F PAGE=0:1 D  Q:T="Q"
  .F I=1:1:MAXL S T=$P($T(H+I+(PAGE*MAXL)),";",2) Q:T="Q"  W *27,"["_(4+I)_";"_(42-APP)_"H" W:T'[":" T W:T[":" $P(T,":"),*27,"[7m"," :",$P(T,":",2),*27,"[0m"
  .I I<MAXL S TT=$P($T(H),";",2) F I=I:1:MAXL W *27,"["_(4+I)_";"_(42-APP)_"H",TT
  .W *27,"["_(MAXL+5)_";1H",!,*27,"[J","  : < 1 >  1 - jynd,  2 - dxfg,  3 - d`ivi  "
  .W *27,"["_(MAXL+5)_";1H",! R R#1
  .I R=3 S T="Q" Q
  .I R=2 S PAGE=PAGE-2 D  S:T="Q" T="" Q
  ..I PAGE<-1 S PAGE=-1 W *7,"  dxfr dligz ",*27,"K" H 1
  .I T="Q"!($P($T(H+I+1+(PAGE*MAXL)),";",2)="Q") W *7,"  dxfr seq ",*27,"K" H 1 S PAGE=PAGE-1,T=""
  W *27,"["_(MAXL+5)_";1H",! D HELP^%L1CALC
  W *27,8 Q  ;   25.02.93
H ;                                    ;
  ;                           : dlert ;
  ;                                    ;
  ;                       /   *   -   +;
  ;           7\2=3  <--  mly welig - \;
  ;           7#2=1  <--      zix`y - #;
  ;             ipnf xb`n zxiny  M9--M0;
  ;             reaw xb`n zxiny  G9--G0;
  ;                                    ;
  ;                             : jxr ;
  ;                                    ;
  ;                        123456789   ;
  ;                        123456789.  ;
  ;                        123456789.1 ;
  ;                        123456789.12;
  ;                                  .1;
  ;                                 .12;
  ;           ipnf xb`nn xefgiy  M0--M9;
  ;           reaw xb`nn xefgiy  G0--G9;
  ;                                    ;
  ;                : mifeg` mr zelert ;
  ;                                    ;
  ;                    200 * 10%  =  20;
  ;                   200 + 10%  =  220;
  ;                   200 - 10%  =  180;
  ;                   200 / 10%  = 2000;
  ;Q
  Q

%L1CALL
%L1CALL(%PROG,%SCRN,%VRBLIST) ; [ 30.06.03 18:19 ] [ 23.06.03 11:28 ] [ 07/08/99  9:17 AM ]
 N MAC1,MAC2,%I,%V
 K ^zms0($P) S MAC1="^zms($P)",MAC2="^zms0($P)" D ^%S1GC1 K ^zms($P)
 S:%PROG'["^" %PROG="^"_%PROG
 N %UCI,%UCO S %UCO=$ZROUTINES_"^"_$ZGBLDIR ;$$^%L1ZU(0) S:%UCO["," %UCO=$P(%UCO,",")
 I %PROG["[" D
 .S %UCI=$P($P(%PROG,"[",2),"]")
 .S %PROG=$P(%PROG,"[")_$P(%PROG,"[",3,20)
 .S:%UCI["," %UCI=$P(%UCI,",")
 .S ^zms($P,"SCRN")=$G(%SCRN)
 .S ^zms($P,"UCO")=%UCO
 .S ^zms($P,"UCI")=%UCI
 S ^zms($P)=%PROG,^zms($P,"SCRN")=$G(%SCRN)
 N %VRBIN,%VRBOUT
 S %VRBIN=$P($G(%VRBLIST),">")
 ;;S %VRBOUT=$P(%VRBLIST,">",2)
 I $D(%L1SCRG),%VRBIN'["%L1SCRG" S %VRBIN=%VRBIN_",%L1SCRG"
 F %I=1:1:$L(%VRBIN,",") S %V=$P(%VRBIN,",",%I) I $L(%V) D
 .I $D(@%V)>9 S MAC1=%V,MAC2="^zms($P,""V"",%V)" D ^%S1GC1 Q
 .I $D(@%V)#2 S ^zms($P,"V",%V)=@%V Q
 D ^%L1ZMST
 N %N S %N="" F  S %N=$O(^zms($P,"O",%N)) Q:%N=""  D
 .I $D(^(%N))>9 S MAC1="^zms($P,""O"",%N)",MAC2=%N D ^%S1GC1 Q
 .I $D(^(%N))#2 S @%N=^(%N) D
 K ^zms($P) S MAC1="^zms0($P)",MAC2="^zms($P)" D ^%S1GC1 K ^zms0($P)
 Q

%L1CERGS
%L1CERGS ; RESTORING PROGRAMM CATALOG   [ 06.07.03 08:40 ] [ 25.06.03 22:14 ] [ 21.06.03 22:12 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S PRDT="S DT=$S(A?2N1"".""2N1"".""2N:$$^%L1DC(A,3),1:$$^%L1DC($$^%L1DC(A,5),4))"
 S %GET=" 99 yiwz zeipkez belhw xefgiyl " D N^%L1GET Q:%S'=99
 K %ZR S %ZR="*",%ZE=".m" d init^%RSEL s out=0 d work^%RSEL
 S N="" F  S N=$O(%ZR(N)) Q:N=""  D
 .S A=$P($P($T(@("+1^"_N)),"[ ",2)," ") Q:'A  X PRDT
 .I DT S ^%ERGS(DT,N)="",IND=$O(^%ERGS(DT,N,99999),-1)+1 S:IND=1 ^%ERGS(DT,N,IND)="<RESTORE>" U 0 W "."
 S %GET="<DONE>" D N^%L1GET
 Q

%L1CH
%L1CH ; CREATING PHON BEATIFUL [ 16.12.03 10:18 ] [ 14.12.03 16:43 ] [ 12.06.03 08:49 ]
 N %ECHO X %chista Q:%TYPCRT'="PC"  D
 .N %VD,I,J U $P:(NOECHO:NOWRAP)
 .W $C(27),"[1;1;25;80w"
 .F I=1:1:25 W $TR($J("",80)," ",$C(177))
 Q

%L1CL
%L1CL ; MY CALCULATOR [ 11.04.05 15:39 ] [ 06.04.05 21:52 ] [ 31.07.00  9:32 AM ]
   N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%L1CL) D ^%L1C
BG ;S LG=8,RG=72,VG=3,NG=21 W %ENG
   S LG=8,RG=72,VG=3,NG=19 W %ENG
   S X1=LG,X2=RG,Y1=VG,Y2=NG+2
   S %SH=0
   X %chista K ^L1CL(%L3MYDVN,"NG"),^L1CL(%L3MYDVN,"SH")
   X %LIGHT S %SAY=" dlert   :         xtqn      :  d`vez  :++"_(VG-2)_",69,HH" X %XMSG X %XCL
   W %ENG,*27,"["_VG_";"_(NG+1)_"r",%HBR S %YY=VG-2,%XX=0 X %POSIC
   ;C KPDV O KPDV:(FN1) N ST5 F  U KPDV R ST5 Q:$ZC=-1  U @KPTT W !,ST5 D NST
   S %SUM=0,%SGN="+" D NST
NX S %S=0,%TO="" U 0 S %YY=YY+2,%XX=60 X %POSIC S $Y=%YY W ! D NST
ZM S %ZMSL="=+-:/\" W %ENG
   S %GET="++"_YY_",39,E#++12,E,I",%ZMSF="" D ^%L1GET I %TO="" S %TO="+"
   I %TO="F1"!(%TO="F2")!(%TO="F3")!(%TO="F4"),%S W *7 G ZM
   S %SH=%SH+1
   I %TO="F1"!(%TO="F2")!(%TO="F3")!(%TO="F4"),'%S D VSV(%S,"=",%SUM+%S,YY) S %L1CL("TO")=%TO G END
   I %TO="END"!(%TO="="),'%S D VSV(%S,"=",%SUM+%S,YY) G END
   I %TO="END"!(%TO="="),%S S %S="",%TO="+" G ZM
   S %ER=0 I $L(%SGN)=1,"+-/\"[%SGN D  G:"=+-/\"[%TO&(%TO'="") NX
   .S ^L1CL(%L3MYDVN,"SH",%SH)=$S(%SGN="-":"-",1:"")_%S
   .S %MSP=%S
   .I %S["*",$E(%S)="*" S %S=%SUM*$P(%S,"*",2) S @("%SUM="_%S) G V
   .I $E(%S)="/"!($E(%S)=":"),$E(%S,2,25) S %S=%SUM/$E(%S,2,25) S @("%SUM="_%S) G V
   .I %S["*",$E(%S)'="*" S %S=$P(%S,"*")*$P(%S,"*",2) S %MSP=%MSP_"="_$J(%S,2,2)
   .I %S["/",$P(%S,"/",2) S %S=$P(%S,"/")/$P(%S,"/",2) S %MSP=%MSP_"="_$J(%S,2,2)
   .I %MSP?1N.N S %MSP=$J(%MSP,2,2)
   .I %MSP?1N.N1"%" S %S=%SUM*%MSP*.01,%MSP=%MSP_"="_$J(%S,2,2)
   .I %S!(%SGN="*") S @("%SUM="_%SUM_%SGN_+%S)
   .S %SGN=%TO Q:"=+-*/\"'[%TO
V  .D VSV(%MSP,%SGN,%SUM,YY)
   S %TO="" G ZM
NST ;
 S ^L1CL(%L3MYDVN,"NG")=$S($G(^L1CL(%L3MYDVN,"NG"))+1>(NG-2):NG-2,1:$G(^L1CL(%L3MYDVN,"NG"),VG-2)+1)
 S YY=^L1CL(%L3MYDVN,"NG")
 Q
VSV(%MSP,%SGN,%SUM,YY) ;
  S %SAY=$J(%MSP,14)_"++"_YY_",39,E" X %XMSG
   S %SAY=%SGN_" ++"_(YY+1)_",34,E" X %XMSG
   S %SAY=$J(%SUM,8,2)_"++"_YY_",60,E" X %XMSG
   I $D(%L1CL("PC")) D
   .S %GL=%L1CL("PC") S %IND=$O(@%GL@(99999),-1)+1
   .S @%GL@(%IND)=" "_%SGN_" "_$J(%MSP,14)_"  = "_%SUM
   .I %SGN="=" S @%GL@(%IND+1)=$C(10,10,10,10,10)_$G(%L1CL("CUT"))_$C(10,10,10,10)
   Q
END S %L1CL("SUM")=%SUM Q

%L1CLC
%L1CLC ; CALCCULATOR ONE-LINE   [ 30.11.01 11:19 PM ] [ 22.08.01 12:15 PM ] [ 11/06/97  8:25 AM ]
 N (%UPRCOD,%XMSGV,%XMSGN,%XMSG,%L1CLC) D ^%L1C
 N $ZT S $ZT="ZG "_$ZL_":ER" S VVERX=0 I $Y'<20 S VVERX=1
M0 S %FLINS=1 K %L1CLC
 S %GET=": aeyigl iehia yiwdl `p++"_$S('VVERX:24,1:0)_",70,HH,,,C#"_$G(%L1BT)_"++40,E,I++1234567890.,()[]{}%X|:/+-*+"
 D ^%L1GET Q:%S=""!(%TO="END")
 S %L1BT=%S
 S %S=$TR(%S,"X:|[]{},","*//()().")
 I $L(%S,"(")'=$L(%S,")") S %SAY=" miixbeq zenka d`iby " X:VVERX %XMSGV(1) X:'VVERX %XMSGN(1) G M0
 S I=1,S=%S,UR=1 K ZN,V
BEG ;
 I $E(S,I)="" D VC G EN
 I $E(S,I)="(" S ZN(UR)=$E(S,I-1) S:ZN(UR)="" ZN(UR)="+" S:ZN(UR)=")"!(ZN(UR)?1N) ZN(UR)="*" S UR=UR+1 G ADI
 I $E(S,I)=")" D VC S UR=UR-1 G:UR<1 ER S VUR=$G(V(UR)) S V(UR)=VUR_$S("+-*/"[$E(VUR,$L(VUR)):"",1:ZN(UR))_V G ADI
 S V(UR)=$G(V(UR))_$E(S,I)
ADI S I=I+1 G BEG
VC S S2=V(UR),ZN="",S4="",V=0,J1=1,JOLD=1 D  X "S V="_S4 K V(UR) Q
C .S S3="" ;W !," V(",UR,") = "_V(UR) H 1
C1 .F J=J1:1:$L(S2) Q:"+-*/"[$E(S2,J)  S S3=S3_$E(S2,J)
 .I S3="",J<$L(S2) S S3=$E(S2,J) S J1=J+1 G C1
 .I J'<$L(S2),$L(ZN),$L(S3) D:S3["%" PRCNT Q:S3["%"  S @("S4="_S4_ZN_S3) Q
 .I J'<$L(S2) S:S4="" S4=S3 Q
 .S ZN1=$E(S2,J),S31="",JOLD=J
C2 .F J2=J+1:1:$L(S2) Q:"+-*/"[$E(S2,J2)  S S31=S31_$E(S2,J2)
 .S ZN2="" I J2<$L(S2),S31="" S S31=$E(S2,J2),J=J2 G C2
 .I J2<$L(S2) S ZN2=$E(S2,J2)
 .;W !,"S4=",S4,"  ZN=",ZN,"  S3=",S3,"  ZN1=",ZN1,"  S31=",S31,"   ZN2=",ZN2 H 2
 .;--------  +,- & *,/
 .I ZN="",ZN1="+"!(ZN1="-"),ZN2="*"!(ZN2="/"),S31'["%" S:S31["%" S31=S31*.01 S S32="" D  S @("S30="_S31_ZN2_S32) S @("S4="_S4_ZN_S3_ZN1_S30) S ZN=$E(S2,J3),J1=J3+1,ZN1="",ZN2="" Q:J1>$L(S2)  G C
 ..F J3=J2+1:1:$L(S2) Q:"+-"[$E(S2,J3)&("+-*/"'[$E(S2,J3-1))  S S32=S32_$S($E(S2,J3)'="%":$E(S2,J3),1:"*.01")
 ..S @("S32="_S32)
 .I ZN="+"!(ZN="-"),ZN1="*"!(ZN1="/"),S3'["%" S J3=J2 D:ZN2'=""  S @("S30="_S3_ZN1_S31) S @("S4="_S4_ZN_S30) S ZN=$E(S2,J3),ZN1="",ZN2="",J1=J3+1 Q:J1>$L(S2)  G C
 ..F J3=J2:1:$L(S2) Q:"+-"[$E(S2,J3)&("+-*/"'[$E(S2,J3-1))  S S31=S31_$S($E(S2,J3)'="%":$E(S2,J3),1:"*.01")
 ..S @("S31="_S31)
 .I S3["%",ZN="" D PRCNT S ZN=ZN2,(ZN1,ZN2)="" S J1=J2+1 Q:J1>$L(S2)  G C
 .I S3["%",ZN'="" D PRCNT S ZN=ZN1 S (ZN1,ZN2)="" S J1=JOLD+1 Q:J1>$L(S2)  G C
 .;I ZN="" S @("S4="_S3_ZN1_S31) S ZN=ZN2,(ZN1,ZN2)="" S J1=J2+1 Q:J1>$L(S2)  G C
 .S @("S4="_S4_ZN_S3) S ZN=ZN1 S (ZN1,ZN2)="" S J1=JOLD+1 Q:J1>$L(S2)  G C
 Q
PRCNT ;
 I ZN="+"!(ZN="-") S @("S4="_S4_"*("_100_ZN_+S3_")*.01")
 I ZN="*"!(ZN="/") S @("S4="_S4_ZN_+S3_"*.01")
 Q
EN S %L1CLC=$J(V,3,3),%GET="<F9> - dcyl xiardl .  "_%L1BT_"="_%L1CLC
 I 'VVERX D N^%L1GET
 I VVERX D V^%L1GET
 I %TO="F9" S %S=99
 I %S=99 S %L1CLC("F")=1
 Q
ER I VVERX X %XMSGV("ER")
 I 'VVERX X %XMSGN("ER")
 S $ZT="ZG "_$ZL_":ER^%L1CLC" D ^%L1C G M0

%L1CLJOB
%L1CLJOB ; [ 08.04.07 08:53 ] [ 17.11.05 16:49 ] [ 24.08.05 16:02 ] [
 N GLD,N,TNMB
 S GLD=$$^%L1GLD
 D ^%L1LJ
 ;
 S N="" F  S N=$O(^[GLD]devi(N)) Q:N=""  I N?1N.N,'$D(^listjob(N)) D
 .S TNMB=^[GLD]devi(N) K ^[GLD]devi(N)
 .I TNMB?1N.N K ^[GLD]dev("TERM"_TNMB)
 Q

%L1CLRTM
%L1CLRTM(TM) ; [ 05.03.08 05:04 ] [
 I TM["PM",TM[":" D  Q TM
 .S TM=$$SPA^%L1FRM(TM)
 .S TM=$P(TM," PM")
 .I TM<12 S TM=$P(TM,":")+12_":"_$P(TM,":",2) Q
 .S TM=$P(TM,":")_":"_+$P(TM,":",2)
 ;
 I TM["AM",TM[":" D  Q $P(TM,":",1,2)
 .S TM=$$SPA^%L1FRM(TM)
 .S TM=$P(TM," AM")
 ;
 Q $P(TM,":",1,2)

%L1CNV
%L1CNV(%ST) ; [ 10.12.25 14:00 ] [ 08.10.25 13:35 ] [ 18.09.25 16:46 ] 
 N %OU,%J S %OU=""
 N %ST1 S %ST1=$$INVH^%L1FRM(%ST)
 F %J=1:1:$L(%ST1) D
 .S SMB=$A(%ST1,%J)
 .I SMB>95&(SMB<123) S SMB=SMB+1392
 .N UTF S UTF=$$NULL^%L1FRM($$FUNC^%DH(SMB))
 .S UTF=$TR($J(UTF,4)," ",0)
 .S %OU=%OU_"\U"_UTF
 Q $$FUNC^%LCASE(%OU)
 ;
 ;
U2H(%ST,NOUPR) ;
 N %OU,%J,%SMB,%SMB1 S %OU=""
 S %J=0
U2HC S %J=%J+1 I %J>$L(%ST) G U2HE
 I $E(%ST,%J,%J+1)="\u" D  G U2HC
 .S %SMB1=$$FUNC^%HD($$FUNC^%LCASE($E(%ST,%J+2,%J+5)))
 .I %SMB1>1392 S %SMB1=%SMB1-1392
 .S %OU=%OU_$C(+%SMB1)
 .S %J=%J+5
 ;
 I '$G(NOUPR) S %OU=%OU_$$FUNC^%UCASE($E(%ST,%J))
 I $G(NOUPR) S %OU=%OU_$E(%ST,%J)
 G U2HC
 ;
U2HE ;
 Q $$INVH^%L1FRM(%OU)
 ;
UTF2H(%TXT) ;
 N (%TXT) S %OU=""
 F %J=2:1:$L(%TXT,"%u") D
 .S %CD=$P(%TXT,"%u",%J)
 .S %CDD=$$FUNC^%HD(%CD)
 .S %OU=$C(%CDD-1392)_%OU
 Q %OU
 ;
U2D(ST,H2U) ;
 N J,ST1 S J=0,ST1="" 
 S J=0 
U2DC S J=J+1 
 I J>$L(ST) Q ST1
 ;
 I $E(ST,J)=$C(215) D  S J=J+1 G U2DC
 .N SMB S SMB=$C($A(ST,J+1)-48)
 .S ST1=ST1_$S($G(H2U):$$H2U^%L1FRM(SMB),1:SMB)
 ;
 S ST1=ST1_$E(ST,J) G U2DC
 ;
U2DI(ST) ;
 N J,ST1,ST2 S J=0,ST1="",ST2="" 
 S J=0 
U2DCI S J=J+1 
 I J>$L(ST) Q ST1
 I $E(ST,J)=$C(215) S ST2=$C($A(ST,J+1)-48)_ST2 S J=J+1 G U2DCI
 S ST1=ST1_ST2_$E(ST,J) S ST2="" G U2DCI
 ;
D2U(ST) ;
 N J,ST1 S J=0,ST1="" 
 S J=0 
D2UC S J=J+1 
 I J>$L(ST) Q ST1
 I $A(ST,J)>95,$A(ST,J)<123 S ST1=ST1_$C(215)_$C($A(ST,J)+48) G D2UC
 S ST1=ST1_$E(ST,J) G D2UC
 ;
 
 
 
 
 
 
 
 
 
 
 
 

%L1COD
%L1COD ; SHIFT+<F...> ---> COMMAND [ 05/23/99  4:21 PM ] [ 07/19/94  5:43 PM ]
 N %S,%STR,%N
ZS U 0 S %S="" W !!,"STRING:" D ^%ZMSL G:%S="" END
 S %STR="" F %I=1:1:$L(%S) S %STR=%STR_$$^%L1ZH($A($E(%S,%I)))
 S %STRING=%S
ZF S %S="" W !!,"PF-NUMBER: F1=17,F2=18,F3=19,F4=20,F5=21,F6=22,F7=23,F8=24,F9=25 > " D ^%ZMSL G:%S="" ZS S %N=%S
 I %N<17!(%N>25) W *7,"  ???" G ZF
 W $C(27),"P1;1|"_%N_"/"_%STR_$C(27)_"/"
 W !!,"CALL "_%STRING_" - <SHIFT>/F"_(%N-16)
 G ZS
END Q
IN S %STR="" F %I=1:1:$L(%S) S %STR=%STR_$$^%L1ZH($A($E(%S,%I)))
 W $C(27),"P1;1|"_%N_"/"_%STR_$C(27)_"/"
 Q
I ;
 S %S="D ^%DEBUG",%N=17 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 S %S="/R",%N=18 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 S %S="X %chista",%N=19 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 S %S="U $P:(ECHO:WRAP)",%N=20 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 S %S="/B",%N=21 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 S %S="/S",%N=22 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 S %S="W %ENG",%N=23 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 S %S="W %HBR",%N=24 D IN W !!,"CALL "_%S_" - <SHIFT>/F"_(%N-16)
 Q
TV W $C(27),"P1;1|17/0011"_$C(27)_"/"
 Q

%L1COPY
%L1COPY N (%UPRCOD,%XMSG) D ^%L1C ; FILE1 --> FILE2                      [ 05.06.03 14:24 ] [ 13.04.01  1:57 PM ] [ 06.06.00 11:55 AM ]
 N $ZT S $ZT=""
 U 0 S PRT=%L3MYDVN N %HBRY W %ENG S %S=""
Z1 X %chista S %SAY=" FILE COPY " X %XMSGV
 X %XCL
 S %FL="",%FLINS="",%LS=40
 U 0 W !!,%LIGHT1,%CV("YF"),"FULL NAME OF HOST FILE (INPUT) : ",%CV("CF")
 D ^%ZMSL K %L1GET
 ;
 I %S="?"!(%TO="F7") D O13^%L1OS S %S=$S($G(%PATH)'="":%PATH_"\",1:"")_$TR($E(%L2VNM,1,8)_"."_$E(%L2VNM,11,13)," ","") G Z1
 I %S=""!(%TO="END") G END
 S FILE1=%S
 S %ER=$$^%L1ZOS(10,FILE1) I %ER<0 W %ENG D ^%L1OS1 G Z1
 O FILE1:(READONLY:REWIND):2 E  U 0 W !,"*** FILE "_FILE1_" IN USE !" G Z1
 I $ZC>0 D OE G Z1
 S %ER=0 D CAMA(FILE1)
 I '%CAMA S %SAY=" NOTHING TO COPY " X %XMSGV(1) G Z1
 U 0 W !?30,$J(%CAMA/1024,3,3)_"K"
 ;
Z2 U $P S %S=FILE1,%FLINS=1,%LS=40 K %L1GET
 W !!,%LIGHT1,%CV("YF"),"FULL NAME OF HOST FILE (OUTPUT): ",%CCL,%CLI
 D ^%ZMSL G:%S=""!(%TO="END")!(%TO="UP")!(%TO="PGUP") Z1
 S FILE2=%S
FL2 ;
 S %L1CPOK=0
 W !! I $$^%L1ZOS(10,FILE2)'<0 S %Q("Z")="FILE IN DIRECTORY! ARE YOU SURE",%Q("U")="N" D ^%S1ASK G:'YES END:$D(TV),Z2 S %ER=$$^%L1ZOS(2,FILE2) ;;I %ER<0 W %ENG D ^%L1OS1 G END:$D(TV),Z1
 O FILE2:(WRITE:NEWVERSION):2 E  U $P S %S=" FILE "_FILE2_" IN USE ! " X %XMSGV(1) G END:$D(TV),Z1
 ;
 I FILE2["PT:\" D  G Z1
 .N %I,%A,%B,%J S %I=0,%J=0,%B=""
CPT .S %I=%I+1 I %I>%CAMA D:$L(%B) ZPT Q
 .U FILE1 R *%A Q:$ZC>0
 .S %B=%B_$C(%A) I $L(%B)>100!($ZC<0) D ZPT
 .Q:$ZC<0  G CPT
 ;
 ZSY "cp -R "_FILE1_" "_FILE2
 ;;F %I=1:1 Q:%I>%CAMA  U FILE1 R *%A Q:$ZC>0  U FILE2 W $C(%A) Q:$ZC  I '(%I#1024) U 0 W *27,*7 S %SAY=%I\1024_"K" X %XMSGV W *27,*8
 C FILE1,FILE2 S %L1CPOK=1 S %GET="<DONE>" D N^%L1GET Q:$D(TV)
 G Z1
END I $G(FILE1)'="",FILE1'=$P C FILE1
 I $G(FILE2)'="",FILE2'=$P C FILE2
 Q
 ;
TE W *7,!,"TRANSFER ERROR $ZC=",$ZC Q
OE W !!,*7,"*** OPEN ERROR ! $ZC=",$ZC H 2 Q
CAMA(%NMF) ;
 S %CAMA=$P($$^%L1FLP(%NMF),"^",2)
 Q
TV(FILE1,FILE2) ;
 S %ER=$$^%L1ZOS(10,FILE1) I %ER<0 W %ENG D ^%L1OS1 G END
 D CAMA(FILE1)
 O FILE1:(REWIND:READONLY):2 E  S %SAY="*** FILE "_FILE1_" IN USE !" X %XMSGV(1) G END
 I $ZC>0 D OE G END
 S TV="" G FL2
 ;
ZPT S %J=%J+1 D TVB^%L1PTW(%NMF,%B,%J) S %B=""
 Q

%L1CRC
%L1CRC(%N) ;    [ 20.09.05 16:13 ] [ 11.01.05 12:34 PM ] [ 15.08.01  2:56 PM ]
 I '$D(%L102)!'$D(%L210) D
 .N L102
 .F %I=1:1:255 S L102=$$102(%I),%L102(%I)=L102,%L210(L102)=%I
 N %CRC,%CRC2,%I
 S %CRC=0
 F %I=1:1:$L(%N) I $$CYC($A($E(%N,%I)))
 S %CRC2=$$102(%CRC)
 S %CRC2=$TR($J(%CRC2,16)," ",0)
 Q $C($$210($E(%CRC2,1,8)))_$C($$210($E(%CRC2,9,16)))
 ;
CYC(%CP) ;
 ;--- IN %CRC
 N %C,%CRCOLD,%C2
 S %C=$$^%L1ZB(%CP,255,1)
 F %COUNT=8:-1:1 D
 .S %CRCOLD=%CRC
 .S %CRC=%CRC*2
 .D CRC
 .S %C=%C*2
 .S %C2=$$102(%C)
 .I $E(%C2,$L(%C2)-8) S %CRC=%CRC+1
 .S %C2=$TR($J(%C2,8)," ",0)
 .;I $E(%C2) S %CRC=%CRC+1
 .S %C2=$E(%C2,$L(%C2)-7,$L(%C2))
 .S %C=$$210(%C2)
 .I $$^%L1ZB(%CRCOLD,32768,1) S %CRC=$$^%L1ZB(%CRC,$$^%L1ZH("1021#"),6)
 D CRC
 Q %CRC
 ;
CRC ;
 N %CRC2
 S %CRC2=$$102(%CRC)
 S %CRC2=$E(%CRC2,$L(%CRC2)-15,$L(%CRC2))
 S %CRC=$$210(%CRC2)
 Q
%L12 ;10 --> 2 ;                  [ 15.08.01  1:46 PM ] [ 14.08.01 10:29 AM ] [ 12/13/97 10:39 PM ]
 N (%XMSG,%UPRCOD,%N1,%N2,%ER)
 S %ER=0 I '$D(%N1) S %ER=1 Q
 I %N1'?1N.N S %ER=1 Q
 S N=%N1
I K B S B(1)=1,J=1
C S A=1 F I=1:1 Q:(A*2)>N  S A=A*2 S B(J)=B(J)_0
 S N=N-A I N<2 S J=J+1 S B(J)=N G M
 S J=J+1,B(J)=1 G C
M S B1=0 F J1=1:1:J S B1=B1+B(J1)
 S %N2=B1
 Q
102(%N1) I $D(%L102(%N1)) Q %L102(%N1)
 D %L12 I %ER Q -1
 Q %N2
162(%N1) S @("%N1=$$^%L1ZH("""_%N1_"#"")") D %L12 I %ER Q -1
 Q %N2
210(%N1) ;
 I $D(%L210(%N1)) Q %L210(%N1)
 N %I,%I1 S %I1=-1,%N2=0
 F %I=$L(%N1):-1:1 S %I1=%I1+1 I $E(%N1,%I) S %N2=%N2+(2**%I1)
 Q %N2

%L1CRC0
%L1CRC(%N) ;    [ 20.09.05 16:03 ] [ 19.09.05 17:09 ] [ 03.06.04 09:13 ]
 N %CRC,%CRC2,%I
 S %CRC=0
 F %I=1:1:$L(%N) I $$CYC($A($E(%N,%I)))
 S %CRC2=$$102(%CRC)
 S %CRC2=$TR($J(%CRC2,16)," ",0)
 Q $C($$210($E(%CRC2,1,8)))_$C($$210($E(%CRC2,9,16)))
 ;
CYC(%CP) ;
 ;--- IN %CRC
 N %C,%CRCOLD,%C2
 S %C=$$^%L1ZB(%CP,255,1)
 F %COUNT=8:-1:1 D
 .S %CRCOLD=%CRC
 .S %CRC=%CRC*2
 .D CRC
 .S %C=%C*2
 .S %C2=$$102(%C)
 .I $E(%C2,$L(%C2)-8) S %CRC=%CRC+1
 .S %C2=$TR($J(%C2,8)," ",0)
 .;I $E(%C2) S %CRC=%CRC+1
 .S %C2=$E(%C2,$L(%C2)-7,$L(%C2))
 .S %C=$$210(%C2)
 .I $$^%L1ZB(%CRCOLD,32768,1) S %CRC=$$^%L1ZB(%CRC,$$^%L1ZH("1021#"),6)
 D CRC
 Q %CRC
 ;
CRC ;
 N %CRC2
 S %CRC2=$$102(%CRC)
 S %CRC2=$E(%CRC2,$L(%CRC2)-15,$L(%CRC2))
 S %CRC=$$210(%CRC2)
 Q
%L12 ;10 --> 2 ;                  [ 15.08.01  1:46 PM ] [ 14.08.01 10:29 AM ] [ 12/13/97 10:39 PM ]
 N (%XMSG,%UPRCOD,%N1,%N2,%ER)
 S %ER=0 I '$D(%N1) S %ER=1 Q
 I %N1'?1N.N S %ER=1 Q
 S N=%N1
I K B S B(1)=1,J=1
C S A=1 F I=1:1 Q:(A*2)>N  S A=A*2 S B(J)=B(J)_0
 S N=N-A I N<2 S J=J+1 S B(J)=N G M
 S J=J+1,B(J)=1 G C
M S B1=0 F J1=1:1:J S B1=B1+B(J1)
 S %N2=B1
 Q
102(%N1) D %L12 I %ER Q -1
 Q %N2
162(%N1) S @("%N1=$$^%L1ZH("""_%N1_"#"")") D %L12 I %ER Q -1
 Q %N2
210(%N1) ;
 N %I,%I1 S %I1=-1,%N2=0
 F %I=$L(%N1):-1:1 S %I1=%I1+1 I $E(%N1,%I) S %N2=%N2+(2**%I1)
 Q %N2

%L1CRC8
%L1CRC8(S) ; [ 13.04.08 14:55 ] [ 10.04.08 12:43 ] [ 25.03.08 11:35 ] [
 N CRC8,M,J,K,X,X1
 S CRC8=0
 F M=1:1:$L(S)  D
 .S X=$A($E(S,M,M))
 .F K=0:1:7  D
 ..S J=$$BITOUT($ZBITAND($$BITIN(1),$ZBITXOR($$BITIN(X),$$BITIN(CRC8))))
 ..S CRC8=$$BITOUT($ZBITAND($$BITIN(CRC8\2),$$BITIN($$^%L1ZH("FF"))))
 ..S X=$$BITOUT($ZBITAND($$BITIN(X\2),$$BITIN($$^%L1ZH("FF"))))
 ..I J D
 ...S CRC8=$$BITOUT($ZBITXOR($$BITIN(CRC8),$$BITIN($$^%L1ZH("8C"))))
 Q CRC8
BITIN(X)
 S X1=$ZBITSTR(8,0)
 F N=1:1:8 S B=X#2,X=X\2 I B S X1=$ZBITSET(X1,N,1)
 Q X1
BITOUT(X)
 S X1=0
 F N=1:1:8 I $ZBITGET(X,N) S X1=X1+(2**(N-1))
 Q X1

%L1CRDTC
%L1CRDTC ; [ 23.11.06 17:32 ] [ 08.10.06 12:18 ] [
XMIN(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$^%L1INDTC,"XMIN"))
XMAX(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$^%L1INDTC,"XMAX"))
YMIN(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$^%L1INDTC,"YMIN"))
YMAX(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$^%L1INDTC,"YMAX"))
PORT(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$^%L1INDTC,"PORT"))
NO(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$^%L1INDTC,"NO"))
KB(STAM) ;;I $G(^[$$^%L1GLD]P1PRM("HZMTCH")),$D(^P1HZMS(%L3MYDVN)) Q 1
 Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$^%L1INDTC,"KB"))
 ;
XMIN1(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$P^%L1INDTC,"XMIN"))
XMAX1(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$P^%L1INDTC,"XMAX"))
YMIN1(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$P^%L1INDTC,"YMIN"))
YMAX1(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$P^%L1INDTC,"YMAX"))
PORT1(STAM) Q $G(^[$$^%L1GLD]P1PRM("TOUCH",$$P^%L1INDTC,"PORT"))

%L1CRMN
%L1CRMN ; [ 03.04.07 20:22 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
BG K  D ^%L1C K ^TEMP($P) S %SCRN="CRMN"
SC D ^%L1SC I %BS G END
 D IS3^%L1GET
 I %S=1 G SC
 I %S=0 K ^TEMP($P) D A^%L1SC G BG
 D SAVE K ^TEMP($P) D A^%L1SC G BG
END K ^TEMP($P) Q
 ;
PACKAGE1 ;
 S ^WBMENU(PACKAGE)=PACKAGE1
 Q
MENU ;
 I %TO="F7" D  S %SC("ST")=1 Q
 .S MAC="^WBMENU("""_PACKAGE_""")"
 .S %L1("EU")=2,%L1("BE")=4
 .S %L1("TXT1")="%NXS<>30H\/%NXN<>6"
 .D ^%L1NU Q:FLAG'=""
 .S MENU=INDEX,MENU1=""
 .I $L(MENU) S MENU1=$G(^WBMENU(PACKAGE,MENU))
 ;
 S MENU1=$G(^WBMENU(PACKAGE,MENU))
 Q
MENU1 ;
 Q
 ;
LNG ;
 S N="",I=0 F  S N=$O(^WBMENU(PACKAGE,MENU,N)) Q:N=""  D
 .S US=$G(^WBMENU(PACKAGE,MENU,N,"US"),1)
 .S ADR=$$UP(^("ADR"))
 .S ST=$G(^WBMENU(PACKAGE,MENU,N,"LNG",LNG))
 .S I=I+1
 .S ^TEMP($P,I)=US_"\"_ST_"\"_ADR
 Q
SAVE ;
 K ^WBMENU(PACKAGE,MENU)
 F I=1:1 Q:'$D(^TEMP($P,I))  D
 .S A=^(I)
 .S US=$P(A,"\",1) I US="" S US=1
 .S ST=$P(A,"\",2) Q:ST=""
 .S ADR=$P(A,"\",3) Q:ADR=""
 .S ^WBMENU(PACKAGE,MENU,I,"LNG",LNG)=ST
 .S ^WBMENU(PACKAGE,MENU,I,"US")=US
 .S ^WBMENU(PACKAGE,MENU,I,"ADR")=$$LOW(ADR)
 ;
 S ^WBMENU(PACKAGE,MENU)=MENU1
 Q
UP(TXT) Q $$FUNC^%UCASE(TXT)
LOW(TXT) Q $$FUNC^%LCASE(TXT)

%L1CURL
%L1CURL(TO,MTD,DOP) ; [ 16.04.26 12:14 ] [ 10.12.24 09:54 ] [ 10.11.24 11:06 ] 
 N (JB,%ARG,%REM,TO,MTD,DOP)
 S FLOU="/tmp/flcurlou"_+$H_"_"_JB_"_"_$P($H,",",2) 
 S CMD="curl -m 60 -s -w ""%{http_code}"" -X "_MTD_" --location """_TO_""""
 I MTD="GET" D
 .S CMD=CMD_" -o /dev/null > "_FLOU
 ;
 S ^CURL($P($H,","),$P($H,",",2))=CMD
 ZSY CMD
 S ^CURL($P($H,","),$P($H,",",2),"ZSY")=$ZSY
 I $ZSY Q -$ZSY
 ;
 I '$$EXIST^%L1ZOS(FLOU) Q "NO ANSWER"
 O FLOU:(REWIND:READONLY)
 U FLOU R ANS C FLOU
 S ^CURL($P($H,","),$P($H,",",2),"ANS")=$E(ANS,1,2000)
 I ANS="" S ANS="NO ANSWER CODE"
 Q ANS 
 
 
 
 
 
 
 
 
 
 
 
 

%L1D2W
%L1D2W(%TXT) ; [ 05.10.04 19:31 ] [
 N TS0,TSS,TS1
 D ^%L1TS
 Q $TR(%TXT,TS0,TS1)

%L1DAT
%L1DAT ;  [ 24.10.06 07:54 ] [ 23.10.05 14:03 ] [ 24.10.04 12:30 ]
 D USE N %BEG,%DD,%MM,%HH,A,A1,A2,ZB,ZB0,C,C1
 I '$D(%MOUSE) S %MOUSE=$$INIT^%L2MOUSE
 K %screen S %BEG=1 K %L1NMB("ALB")
 K %ECHO S %L1DAT="",%L1DAT1="",%TO=""
 S:'$D(%XX) %XX=$X-8 S:%XX<0 %XX=0 S %XX1=%XX
 S:'$D(%YY) %YY=$Y S:%XX>72 %XX=72 S:%YY>24 %YY=24 S %YY1=%YY
 X %POSIC S %TO=""
 S %S="" I $D(%L1DS) S %S=$TR(%L1DS,"/.","") I $L(%S)>6 S %S=$E(%S,1,4)_$E(%S,7,8)
 D PD I %S'="" S %L1DAT=$$^%L1DC(%S,2),%L1DAT1=$$^%L1DC(%S,".")
 G:$D(%L1DATL)!($D(%L1GET)) END
VDD X %POSIC
 D VV
V0 I %S?." " S %S="",%L1DAT="",%L1DAT1="" D PD G END
 I '$D(%L1TM),%S'?6N&(%TO="END") S %S="" D PD G END
 S %DD=$E(%S,1,2),%MM=$E(%S,3,4),%HH=$E(%S,5,6)
 S %DD=$TR(%DD," ",0)
 I %DD>31!(%DD<1) W *7 G VDD
 S %MM=$TR(%MM," ",0)
 I %MM>12!(%MM<1) W *7 G VDD
 S %HH=$TR(%HH," ",0)
 S %L1DAT=%HH_%MM_%DD
 S %L1DAT1=%DD_"."_%MM_"."_%HH
 I '$$^%L1DC(%L1DAT1,3) D  D PD G VDD
 .N %XX,%YY
 .W *7,*27,7 S %SAY=" ! miiw `l jix`z " X %XMSGV(1) W *27,8
 K %HH,%MM,%DD G END
 ;
VV N %I D USE S %I=1 N A,A1,%II
 N %ML S %ML=$S($D(%L1TM):4,1:6)
VR ;
 S A=""
 I $G(%MOUSE),'$$KB^%L2MOUSE W *27,7 S A=$$^%L1NMB("") W *27,8 I A="ENTER" S A=13 G VR1
 I $L(A),A?1N S A=$A(A) G VR1
 .I $G(%TO)="DEL" S A=8,%TO=""
 I A="=" G ESC
 I $L(A),A?1U.E,$T(@A)'="" G @A
 I A="DEL" S A=8 G VR1
 I $G(%MOUSE),'$$KB^%L2MOUSE G VR1
 ;
 K %ZB R *A S %TO=""
 G:%TYPCRT="PC" VR1 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27,$T(@%UPRCOD(ZB))'="" G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
 ;
VR1 I A=13,$L(%S)=%ML!(%S?." ") Q
 I A=13&$D(%L1TM) S %S=%S_$TR($J("",%ML-$L(%S))," ",0) Q
 I A=13&(%S?1N) S A=$A(%S),%S=0 W *8,0 G VM
 I A=13&(%S?3N) S A=$A($E(%S,3)),%S=$E(%S,1,2)_"0" W *8,0 G VM
 G:A=13 VR
 I A=127!(A=8) G:%S="" VV S A=32 G:%I'>$L(%S) VM D  G VR
 .I $L(%S)=1 S %S="" W *8," ",*8 S %I=1 Q
 .S %S=$E(%S,1,%I-2)
 .I '(%I#2)!(%I>%ML) W *8," ",*8
 .E  W *8,*8," ",*8
 .S %I=%I-1
 I $L($ZB)>3,$D(%UPRCOD($ZB)),$T(@%UPRCOD($ZB))'="" G @$T(@%UPRCOD($ZB))
 I A=0 R *A1:0 G:'$D(%UPRCOD(A_A1)) VR G:$T(@%UPRCOD(A_A1))="" VR G @(%UPRCOD(A_A1))
 I A=20,$G(^zms($I))?1"^"."%"1U.E W *27,7 D ^%L1ZMST S $X=%XX,$Y=%YY G VV
 I A=25 G ESC
READ G:%TYPCRT="PC" 27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
 ;
27 I A=27 D DELAY R:'$D(%FLL) *A1:%WAIT G:A1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL) *A2:%WAIT Q:A2<0  S:A2>0 C=A1_A2 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL) *A3:%WAIT S:A3>0 C=C_A3 Q:A3<0  Q:$D(%UPRCOD(C))
 .R:'$D(%FLL) *A4:%WAIT S:A4>0 C=C_A4
 I A=27 G ESC
 ;;I A=27 S %ZB=$ZB R *A1:0 G:A1<0 ESC R *A2:0 S A2=A1_A2 I $D(%UPRCOD(A2)),$T(@%UPRCOD(A2))'="" G @(%UPRCOD(A2))
 I A=61 G ESC
 I $G(%ZB)=27 G ESC
 I $D(%UPRCOD(A)),$T(@%UPRCOD(A))'="" G @(%UPRCOD(A))
 I %I>%ML S A=13 G VR1
 I A<48!(A>57) G VR
VM S %S=$E(%S,1,%I-1)_$C(A)_$E(%S,%I+1,%ML) W $C(A)
 W:'(%I#2)&(%I<%ML) %pravo S %I=%I+1 G VR
 Q
END K %L1DS X %XCL
 I %MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 K %L1NMB Q
ESC R *A1:0 R *A1:0
 I $D(%L1TM) S A=13,%TO="END" G VR1
 I %S?6N!(%S?.P) S A=13,%TO="END" G VR1
 I $L($TR(%S," ",""))<6 S A=13,%S="",%TO="END" G VR1
 G VR
DELL R *A1:0 R *A1:0 S %TO="F6" Q
COR R *A1:0 R *A1:0 S %TO="F7"
 I $D(^r($J)),'$D(%L1CALL),'$D(%L1TM) D TV^P1HZGDAT("%S") S %TO="" S %S=$TR(%S,"/.","") D PD I '%S X "N %I F %I=1:1:8 W *8" G VV
 Q
CHISTE R *A1:0 R *A1:0 S %TO="F2"
 D SAVE^%L3MBGG
 S %S=$$TV^%L1LUAH I '%S S %S=""
 D REST^%L3MBGG
 S %TO="" S:%S %S=$TR($$^%L1DC(%S,1),"/.","") D PD
 I '%S X "N %I F %I=1:1:8 W *8" G VV
 Q
FIND R *A1:0 R *A1:0 S %TO="F8" Q
SAVE R *A1:0 R *A1:0 S %TO="F9" Q
REST R *A1:0 R *A1:0 S %TO="F10" Q
ENDS R *A1:0 R *A1:0 S %TO="ENDS" Q
PGUP R *A1:0 R *A1:0 S %TO="PGUP" Q
PGDN R *A1:0 R *A1:0 S %TO="PGDW" Q
PGLN R *A1:0 R *A1:0 S %TO="PGLN" Q
PGRG R *A1:0 R *A1:0 S %TO="PGRG" Q
BEGF R *A1:0 R *A1:0 S %TO="BEGF" Q
ENDF R *A1:0 R *A1:0 S %TO="ENDF" Q
MOD  R *A1:0 R *A1:0 S %TO="DEL" Q
HOME  R *A1:0 R *A1:0 S %TO="HOME" Q
INS R *A1:0 R *A1:0 S %TO="INS" Q
TAB  R *A1:0 R *A1:0 S %TO="TAB" Q
TABN  R *A1:0 R *A1:0 S %TO="TABN" Q
IND S %TO="F4" D DELAY R *A1:0 R *A1:0 Q
ADDL S %TO="F5" R *A1:0 R *A1:0 Q
MVUP S %TO="MVUP" R *A1:0 R *A1:0 Q
MVDW S %TO="MVDW" R *A1:0 R *A1:0 Q
VNIZE ;
 I $G(^zms($I))?1"^"."%"1U.E W *27,7 K:%TYPCRT="PC" ^zms($P,"SCRN") D ^%L1ZMST S $X=%XX,$Y=%YY D PD
 G VDD
PRSC ;
 D ^%L1PRSC
 G VDD
SHIFT1 D PUT W *27,8 X:%I>1 "S %pn=%I-1 X %levon" D
 .N %BE S %BE="E" D PD
 G VDD
PUT I %MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
PD ;
 I $D(^r($J)),'$D(%L1GET),'$D(%L1TM) D
 .N %XX,%YY D H^P1HZGDAT
 X %POSIC
 W %ENG,%CLI,$J($E(%S,1,2),2) X %XCL W "."
 W %ENG,%CLI,$J($E(%S,3,4),2) X %XCL W "."
 I $L($TR(%S,"./:"))<8 W %ENG,%CLI,$J($E(%S,5,6),2) Q
 W %ENG,%CLI,$J($E(%S,7,8),2) Q
 Q
DELAY Q  F %II=1:1:400
 Q
LEVO G:%I=1 VR S %I=%I-1 W *8 W:%I=2!(%I=4) *8 G VR
PRAVO G:%I>%ML!(%I-1>$L(%S)) VR S %I=%I+1 W %pravo W:%I=3!(%I=5) %pravo G VR
VVERX G:$L(%S)<%ML&$L(%S) VR S %TO="UP" G END
VNIZ G:$L(%S)<%ML&($L(%S)) VR S %TO="DW" G END
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q

%L1DBG
%DEBUG ;BPS;INTERACTIVE DEBUGGING ROUTINE [ 04/25/98 10:38 AM ] [ 01/15/92  5:02 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1988
 U 0 N %I,%IO,%X,%Y,%Z S $ZT="ZG "_$ZL_":ERROR^%L1DBG"
MENU ;DISPLAY MENU
MENU0 ;
 W !?10,$P($P($ZV,","),"-")," - Interactive Debugging Utility"
MENU1 W !!,"Available options:",!
 F %I=0:1 S %Y=$P($T(TEXT+%I),";",2) Q:%Y="*"  W !?4,%I+1," - ",%Y
 W !!,"Select option: " R %X G:%X="^Q" EXIT
 I %X=""!(%X="^") G EXIT
 I %X'?1N F %I=0:1 S %Y=$T(TEXT+%I) G:%Y["*" MENU2 I $ZB(%X,"_",1)=$E($ZB($P(%Y,";",2),"_",1),1,$L(%X)) W $E($P(%Y,";",2),$L(%X)+1,99) S %X=%I+1 Q
 S %Y=$T(TEXT+%X-1)
 G @($P(%Y,";",3))
MENU2 W:%X'="?" *7 W !!,"Enter the option number to select an option, or"
 W !,"Enter enough characters to identify the option, or"
 W !,"Enter '^' or '^Q' to exit the utility." G MENU1
ENABLE ;Enable Error and Ctrl-c Trapping
 D DBGIO G:%IO["^" MENU0
 ZM 2:%IO V $V(280,$J,4,8)+112::1:2 ;errors
 V $V(280,$J,4,8)::1:2
 ;V $V(280,$J,4,8)+128::1:2 ; ctrl-c
 ;V $V(280,$J,4,8)+64::1:2 ; line step
 W !!,"Debugging Environment Enabled"
 G EXIT
DISABLE ;Disable Error Trapping
 W !!,"Debugging Environment Disabled"
 ZM 0:0
 G EXIT
RUN ;Interactively Debug a Routine
 S %Z=$ZT
RUN1 ;
 R !!,"Enter Routine Name: ",%X G:%X=""!(%X="^") MENU0
 I %X="?" W !!,"Enter the name of the routine to be debugged.",!,"You may enter a routine name, or line^routine.",!,"Enter '^' to return to the previous question, or",!,"Enter '^Q' to exit the utility" G RUN1
 S %Y=$P($S(%X["^":$P(%X,"^",2),1:%X),"("),$ZT="ZG "_$ZL_":RUNER^%L1DBG" S:%X'["^" %X="^"_%X
 I '$D(^ (%Y)) W *7,"  ...Routine does not exist" S $ZT="ZG "_$ZL_":" G RUN1
 X "S %Y=$T("_$P(%X,"(")_")"
 ;I $T(@%X)="" W *7,"  ...Line does not exist" S $ZT="ZG "_$ZL_":" G RUN1
 I %Y="" W *7,"  ...Line does not exist" S $ZT="ZG "_$ZL_":" G RUN1
 D DBGIO G:%IO["^" MENU0
 I $V(280,$J,4) V $V(280,$J,4,8)+112::0:2
 ZM 2:%IO S %I=$V(280,$J,4,8) V %I+752::$L(%X):1,%I+753::%X:$L(%X):1
 S $ZT="ZG "_$ZL_":RUN2^%L1DBG" I 1/0
RUN2 ;
 N %X,%I S %I=$V(280,$J,4,8) S $ZT="ZG "_$ZL_":",$ZS=""
 V %I::#8001:2,%I+112::1:2 S %X=$V(%I+753,-3,$V(%I+752,-3,1),1)
 D BRKPT(0,$P(%X,"("))
 I $F(%X,"(") D @($$RUNR^%L1DBG) Q
 G @$$RUNR^%L1DBG
RUNR() N ZZ V %I+645::0:1 S ZZ=%X K %X,%I,%IO,%Y,%Z Q ZZ
RUNER W *7,"  ...Invalid entry reference" G RUN1
BRKPT(B,T) ;set break point B to T
 N BP,CMD,ENT,DSP,ROUT,%BRKPT,E,A,D S D=$V(280,$J,4,8)
 I 'D U 0 W *7,!,"BRKPT^%L1DBG: Debugging Environment not Active ***",! Q
 S %BRKPT(+B)=T G BRKSET^%DEBUGI1
DBGIO ;Get debug device
 N %DT
 S %DT=$V(5,-5)
IO1 W !,"Debug device <",$I,">: " R %IO
 I %IO=""!(%IO=$I)!(%IO=0) S %IO=0 Q
 I %IO["^" Q
 I %IO="?" W !,"Enter the terminal device number which will be used for",!,"controlling the debugger. All debugging prompts and"
 I  W !,"error messages will be directed to this device. Note that",!,"this device will NOT be closed at the end of debugging."
 I  G IO1
 I %IO'?1.N W *7,!,"Device number must be numeric",! G IO1
 I %IO=2!(%IO>19&(%IO<64))!((%IO>199)&(%IO<256)) W *7,!,"Invalid value...Terminal devices are 1,3-19,64-199,256 and up.",! G IO1
 I $V(%IO*2+%DT,-3,2)#2 W *7,"  ...Device does not exist",! G IO1
 O %IO::1 E  W *7,"  ...Device is in use",! G IO1
 Q
HELP ;Display HELP text
 S %HELP="HELP1" W # D ^%DEBUGI2 G MENU
EXIT ;Exit Interactive Debugger
 Q
ERROR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
TEXT ;Run a Program;RUN
 ;Enable Debugging Environment;ENABLE
 ;Disable Debugging Environment;DISABLE
 ;HELP Information;HELP
 ;*

%L1DBGI
%DEBUGI ;BPS;EXECUTION DEBUGGING AID;[ 07/01/91  10:32 AM ] [ 04/25/98 10:34 AM ] [ 07/01/91  10:32 AM ] [ 04/25/98 10:10 AM ]
 ;COPYRIGHT 1988 (C) MICRONETICS DESIGN CORP.
 W *7,!!,"Routine must be called at an entry point" Q
 ;Internal Execution Starts At +5
 S %DEBUG02=$V(280,$J,4,8) V %DEBUG02+60::$ZA:4
 U $V(%DEBUG02+10,-3,2):(::::#80040:#8800001)
 I $V(%DEBUG02+2,-3,1)=3 S %DEBUG02=$V(%DEBUG02+52),%DEBUG00=$V($V(%DEBUG02+12,-3,4),-3,$V(%DEBUG02+10,-3,2),9) D XEQ G:$T CONT
 I $V($V(280,$J,4,8)+14,-3,1)=12 W !," $ZSRROR=""",$ZS,"""" I $E($V(0,$J,2,3),11) W "Old Error Trapping Mode"
 I $V($V(280,$J,4,8)+14,-3,1)<20 D STACK^%DEBUGI1
LOOP ;
 D PNAME
 D PROMPT I $D(^%dbg($P,"B")) D CMD^%DEBUGI1 ; *** LEV
 D zr ;S:$G(zr)["^" z=$D(@zr)
 I %DEBUG00="" G RETURN
 S %DEBUG02=$E(%DEBUG00,1)
 I %DEBUG02="/" D CMD^%DEBUGI1 G LOOP:$D(%DEBUG00),RETURN
 G:%DEBUG02="q"!(%DEBUG02="Q") QUIT
 I $F("BCDEFGHIJKLNOPQRSUVWXZbcdefghijklnopqrsuvwxz",$E(%DEBUG00)) D XEQ G CONT:$T,LOOP
 W #,"Enter MUMPS command to be executed, or"
 S %HELP="HELP" D ^%DEBUGI2
 ;W !,"Debugger command (/H for help), or"
 ;W !,"a null line to execute the next line or command, or"
 ;W !,"ZGO to continue execution until next breakpoint without stepping, or"
 ;W !,"Q to terminate execution",!
 ;W !!,"ENTER COMMAND TO BE EXECUTED"
 ;W !,"USE " W "ZGO OR " W "QUIT TO EXIT",!
 G LOOP
QUIT D CLRSTEP B 2 S $ZT="ZG "_$ZL_":RETURN^%DEBUGI" ZM 0:0
 I 1/0 ;FORCE AN ERROR TO ENTER TRAP
CONT D CLRSTEP ;ENTERED FOR ZGO
RETURN B -2 W:$X !
 S %DEBUG02=$V($V(280,$J,4,8)+10,-3,2)
 U %DEBUG02:(:::::#80040),%DEBUG02:(::::$V($V(280,$J,4,8)+60,-3,4))
 K %DEBUG00,%DEBUG02,^%dbg($P) ;*** LEV 10.07.94
 D zr ;S:$G(zr)["^" z=$D(@zr)
 Q
zr S:$G(zr)["^" z=$O(@zr)
 Q
XEQ S $ZTRAP="XEQTRAP^%DEBUGI" N %DEBUG02 W ! X "K %DEBUG00 "_%DEBUG00,"U "_$V($V(280,$J,4,8)+10,-3,2)
 I $V($V(280,$J,4,8)+13,-3,1) Q
 Q
XEQTRAP H:$ZS["<DSCON"  U $V($V(280,$J,4,8)+10,-3,2) W:$X ! W $ZS,! I 0
 Q
PROMPT ;
 N X,D,ZE,UCI S ZE=$ZS,UCI=$V(2,$J,2)
PROMPT1 ;
 S $ZS=ZE,D=$V(280,$J,4,8),$ZT="ZG "_$ZL_":PROMPTE^%DEBUGI"
 G:$ZB($V(40,$J,2),#300,1)'=#300 XPROMPT
 V 2:$J:1:2 S X=$$DBG^MSMSHELL
 V 2:$J:UCI:2
 I X=" "!(X="/C") S X=1
 E  I $L(X) S %DEBUG00=X Q
 E  S X=$S($D(%PF):2,1:0)
PROMPT2 ;
 G:X=2 PROMPT
 I X V D+80::1:2,D+64::0:2
 E  V D+64::1:2,D+80::0:2
 S %DEBUG00="" Q
XPROMPT ;
 N Y,DDB
XPROMPT1 ;
 S DDB=$V(208,$J,4,8) W:$X ! R "DEBUG> "
 I $ZB($V(DDB+23,-3,1),8,1) R X
 E  F  R X#1 I $ZB'=127 Q:X=""!(X=" ")  R Y S X=X_Y Q:$ZB'=127  W:$L(X) $C(8,32,8)
 I X=" "!(X="/C") S X=1
 E  I $L(X) S %DEBUG00=X Q
 E  S X=$ZB I X#256=27 S X=X\256,X=$S(X=32:1,1:2)
 E  S X=$S(X=13:0,1:2)
 G PROMPT2
PROMPTE H:$ZS["<DSCON"  V 2:$J:UCI:2 G PROMPT1
CLRSTEP N D S D=$V(280,$J,4,8) V D+64::0:2,D+80::0:2 Q
PNAME N D,CD,XL,RL,LI,NA,IDX,ET
 S XL=$V($V($V(144,$J,4,8)))
 S RL=$V(XL+4),D=$V(280,$J,4,8),CD=$V(D+14,-3,1)
 ;I CD=12 D
 ;  . W !," $ZSRROR=""",$ZS,"""",$S($E($V(0,$J,2,3),11):" V1",1:" V2")
 ;  . W " MODE ERROR TRAPPING"
 W:$X ! I CD>9 W "<",$P($T(DBGCODE),";",CD-8),">"
 E  W "<Break Point ",CD,">"
 S ET=0 D PRINTLEV^%DEBUGI1 Q
PRTCODE S IDX=$V(D+38,-3,2)+1
 W ":",$V(D+32,-3,2),":",$V(D+34,-3,2) ;W ":",$V(XL+60,-3,2)
 W " " Q
DBGCODE ;Break;Interrupt;Error;;;;;;;;LineStep;CmdStep

%L1DBGI1
%DEBUGI1 ;BPS;EXECUTION DEBUGGING AID;[ 07/31/90  5:36 PM ] [ 04/25/98 10:35 AM ] [ 07/31/90  5:36 PM ] [ 04/25/98 10:07 AM ]
 ;COPYRIGHT 1988 (C) MICRONETICS DESIGN CORP.
 W *7,!!,"Routine must be called at an entry point" Q
CMD ;
 N D,X S D=$V(280,$J,4,8),%DEBUG02=$E(%DEBUG00,2),X=$F("BCEHLRST",%DEBUG02)-1
 I $D(^%dbg($P,"B")) D  G BRKSET ;*** LEV
 .N N,N1,OK S N="" F  S N=$O(^%dbg($P,"B",N)) Q:N=""  D
 ..S OK=0 F N1=1:1:10 Q:$V(N1*48+D+160)=0
 ..I N1<9 S %BRKPT(N1)=^(N)_":1;" K ^(N)
 .D ZR
 D ZR
 I X<0 S X=$F("bcehlrst",%DEBUG02)-1
 G:X>0 @$P("BRK,CTR,ENVIRON,HELP,LTR,RET,STACK,TOG",",",X)
 W !,"** INVALID '/' COMMAND **" Q
STACK ; Format the Execution Stack
 N D,XL,RL,LI,NA,LE,ET S D=$V(280,$J,4,8),XL=$V(D+16),ET=1
 F LE=$V(D+22,-3,2):-1:0 W !,$J(LE,2),") " S RL=$V(XL+4) D PRINTLEV S XL=$V(XL) Q:XL=0
 Q
PRINTLEV ;
 S:$R'["%dbg" zr=$R
 D ZR
 I $V(XL+8,-3,1)=0 W "*XECUTE*" S NA=$V(XL+68,-3,4),LI=$V(XL+66,-3,2) G:'LI PRTLINE1 V D+42::LI:2,D+752::$V(NA,-3,LI,9)::9 G PRTLINE
 S NA=$V(XL+78,-3,2),LI="+"_$S(NA>0:NA,1:1),NA="^"_$V(RL+12,-3,$V(RL+11,-3,1),1)
 W LI,NA Q:NA="^"
 L ^%dbg:0 I  U 0 S ^%dbg=$P_"^"_$$^%L1ZU(0),^%dbg($P)=LI_NA X "S LI=$P($T("_LI_NA_"),"" "",2,999)"
 D ZR
 V D+42::$L(LI):2,D+752::LI::9
PRTLINE ;
 V D+40::$V(XL+60,-3,2):2,D+3::1:1 ZM 3 S LI=$V(D+38,-3,2)
 W ":",$V(D+32,-3,2),":",$V(D+34,-3,2) W ":",$V(XL+60,-3,2),": "
 I LI=65535 W "<NO source available> "
 E  W $V(D+752+LI+$S($ZB($V(0,-4,2),128,1):LI,1:0),-3,$V(D+42,-3,2)-LI,9)
PRTLINE1 ;
 S LI=$V(XL+84,-3,1)
 I ET,LI W !,"    $ZTRAP=""",$V(XL+85+($ZB($V(0,-4,2),128,1)'=0),-3,LI,9),""""
 Q
BRK N BP,CMD,ENT,DSP,ROUT,%BRKPT,B,E,A,F S F=0
 S E=$E(%DEBUG00,3,999) G:$L(E)=0 BRKDISPA
 I $E(E)="=" F B=1:1:9 Q:$V(B*48+D+160)=0
 E  I $E(E)?1N S B=+E,E=$E(E,2,999)
 E  W *7,!,"Invalid Break Number" Q
 I $L(E)=0 D BRKDISP W:'F " ... Breakpoint not defined" Q
 I $E(E)'="=" W *7,!,"Invalid Syntax" Q
 I $L(E)>1 S %BRKPT(B)=$E(E,2,999) G BRKSET
 F  R " EntryRef: ",ENT Q:ENT'="?"  W !,"Specify a MUMPS entry reference; i.e. Label+no^routine",!,?20," or RETURN to delete current break point",!
 I ENT="" S %BRKPT(B)="" G BRKSET
 F  R " Command Number: ",CMD Q:CMD'="?"  W !,"Specify a relative command number in line; First command is number 1",!
 I CMD'="" S ENT=ENT_":"_CMD
 F  R " Action: ",A Q:A'="?"  W !,"Specify MUMPS code to be executed at the time the break point is reached",!
 I A'="" S:CMD="" ENT=ENT_":" S ENT=ENT_";"_A
 S %BRKPT(B)=ENT
BRKSET F B=-1:0 D  Q:B=-1
   . S B=$N(%BRKPT(B)) Q:B=-1  I %BRKPT(B)="" V B*48+D+160::0:2 Q
   . S E=$P(%BRKPT(B),";",1),A=$P(%BRKPT(B),";",2)
   . I E["^" S ENT=$P(E,"^",1),ROUT=$P(E,"^",2),CMD=$P(ROUT,":",2),ROUT=$P(ROUT,":",1)
   . E  S ENT=$P(E,":",1),CMD=$P(E,":",2),ROUT=""
   . S DSP=0 D BRKSET1
 V D+3::2:1 ZM 3 ;RECOMPILE ALL BREAK POINTS
 F B=-1:0 D  Q:B=-1  I E V BP::0:2 W !,"B",B,": *** ",$P("Routine,Line,Command",",",E)," not found ***"
   . S B=$N(%BRKPT(B)) Q:B=-1  S BP=B*48+D+160,E=0 Q:'$V(BP,-3,2)
   . I '$V(BP+40,-3,4) S E=1 Q
   . I '$V(BP+44,-3,2) S E=2 Q
   . ;I '$V(BP+46,-3,2) S E=3 Q
   . Q
 Q
BRKSET1 I $F(ENT,"+") S DSP=$P(ENT,"+",2),ENT=$P(ENT,"+",1) S:ENT="" DSP=DSP-1
 S BP=B*48+D+160
 S:$L(ENT)>8 ENT=$E(ENT,1,8) S:$L(ROUT)>8 ROUT=$E(ROUT,1,8) S:$L(A)>272 A=$E(A,1,272)
 I ROUT="" S ROUT=$V($V(D+16)+4),ROUT=$V(ROUT+12,-3,$V(ROUT+11,-3,1),1) I ROUT="" W !,"*** No active routine ***" V BP::0:2 Q
 V BP+16::DSP:2,BP+18::$L(ENT):1,BP+19::ENT::1 S:CMD CMD=CMD-1
 V BP+27::$L(ROUT):1,BP+28::ROUT::1,BP+36::CMD:2,BP+38::0:2
 I $L(A) V BP::3:2,D+752::A::9,D+42::$L(A):2,D+52::BP:4:8,D+3::3:1 ZM 3
 E  V BP::1:2 ;NO ACTION STRING
 Q
BRKDISPA F B=0:1:9 D BRKDISP
 ;F B=1:1:6 S BP=B-1*16+64+D D BRKMAIN
 I 'F W !,"*** No Break Points set ***"
 Q
BRKDISP S BP=B*48+D+160 Q:$V(BP,-3,2)=0  I 'F S F=1 W !,"BrkPt = Entry point         : Cmnd ;  Action"
 W !," B",B,"   = " S E=$V(BP+18,-3,1),DSP=$V(BP+16,-3,2),A=$V(BP+27,-3,1),CMD=$V(BP+36,-3,2)
 I E W $V(BP+19,-3,E,1) W:DSP "+",DSP
 E  W:DSP "+",DSP+1
 W "^",$V(BP+28,-3,A,1) I CMD W ?28,":  ",CMD+1
 S A=$V(BP+10,-3,2) I A S E=$V(BP+12,-3,4) W ?35,";  ",$V(E,-3,A,9)
 Q
BRKMAIN I $V(BP,-3,2) W $P("LS,CS,AR,ER,CT,BK",",",B),"="
 E  Q
 S A=$V(BP+10,-3,2) I A W ";",$V($V(BP+12,-3,4),-3,A)
 W ! Q
TOG I $V(D+21,-3,1) V D+21::0:1,D+4::$V(D+8,-3,2):2
 E  V D+21::1:1,D+8::$V(D+4,-3,2):2,D+4::$V(D+22,-3,2):2
 ;I $V(D+21,-3,1) V D+21::0:1,D+4::32767:2,D+8::32767:2
 ;E  V D+21::1:1,D+4::$V(D+22,-3,2):2,D+8::$V(D+22,-3,2):2
 W ! G ENVSTEP
LTR V D+64::1:2,D+80::0:2 Q
CTR V D+80::1:2,D+64::0:2 Q
HELP ;DISPLAY HELP INFORMATION
 S %HELP="HELP" W # D ^%DEBUGI2
 Q
RET V D+8::$V(D+4,-3,2):2,D+4::$V(D+22,-3,2)-1:2 ;,D+80::1:2,D+64::0:2
 K %DEBUG00 Q
ENVIRON ;
 N XL,FL,IO S XL=$V(D+16)
 W !,"SYSTEM VARIABLES: $TEST=",$V(D+20,-3,1)," $JOB=",$J," $PO=" S IO=$V(D+56,-3,2)
 W $S(IO:IO,1:$P)," $X=",$V(D+58,-3,1)," $Y=",$V(D+59,-3,1)
 W !?18,"$ZUCI(0)=",$ZUCI(0)," $ZSRROR=",$ZS
 W !?18,"$ZREFERENCE=",$R
 S IO=$V(D+645,-3,1) I IO W !?18,"Last GOTO from +",$V(D+654,-3,2),"^",$V(D+646,-3,IO,1)
 I $E($V(0,$J,2,3),11) W !?18,"Old Error Trapping Mode"
 ;I $V(D+64,-3,2) W !,"Line Step active"
 ;I $V(D+80,-3,2) W !,"Command Step active"
 W !,?18
ENVSTEP W "Step ",$S($V(D+21,-3,1):"Over",1:"Into")," mode"
 W ! Q
ZR S:$G(zr)["^" z=$O(@zr)
 Q

%L1DBGV
%L1DBGV ; VIEW FOR %DEBUG [ 05/08/95  7:33 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C
 I '$D(^%dbg) S %SAY=" YOU ARE NOT INTO DEBUGGER" X %XMSGV(1) Q
 S PRT=+$G(^%dbg) I 'PRT S %SAY=" YOU ARE NOT INTO DEBUGGER" X %XMSGV(1) Q
 S %S=$P($G(^%dbg),"^",2)
 S %UI=$P(%S,","),%VG=$P(%S,",",2)
 I $ZU(%UI,%VG)'>0 W *7," ???" G Z
 S %UIN=$P($ZU(%UI,%VG),",")
 S %VGN=$P($ZU(%UI,%VG),",",2)
 V 2:$J:%VGN*32+%UIN:2
 S PRT=+$G(^%dbg) I 'PRT S %SAY=" YOU ARE NOT INTO DEBUGGER" X %XMSGV(1) Q
 I '$D(^%dbg(PRT)) S %SAY=" YOU ARE NOT INTO DEBUGGER" X %XMSGV(1) Q
 S %RNAME=$P(^%dbg(PRT),"^",2),%S2V("LAB")=$P(^%dbg(PRT),"^") ;I $E(%S2V("LAB"))="+",%S2V("LAB")>1 S %S2V("LAB")="+"_(%S2V("LAB")-1)
 S %FLI=1,TXT1=" "_%RNAME_" " D M1^%L1RV
 Q

%L1DBM3
%L1DMB3 ;JWC;MOUNT VOLUME GROUPS [ 10/03/93 11:08 AM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1990
 ZF  D PTRS^%VGUTIL,OS^%VGUTIL,DSK^%VGUTIL1:'OS,GETVG^%VGUTIL K %DEV
 D VGSLOT I QF W !,"No room to mount another volume group" Q
 I OS D GETHFS^%SDEV I '%DEV W *7,!!,"No HFS devices available..." K %DEV Q
RETRY D HNAME Q:QF  D VGNAME I QF ZU 0 W !,"Volume is not initialized",*7 G RETRY
 I $D(VG(VGNAME)) D QAGN G:QF=1 RETRY Q:QF
 I VIN W !,*7,"This is not a volume 0" G RETRY
 W !,"Mounting."
 S %VGI=VGIN D START Q:QF
 D MOUNT^TRANSLA1
 W:VGIN "done." ;D DBMAINT^%SP
 Q
START D GETVOLS I QF W !,"Error in finding volumes for this volume group",*7 Q
 D CHKVOLS I QF W !,"mounting aborted." Q
 D MTVOLS^%L3MOUNT,MOUNT,SETSAT^UMOUNT,SETUCI^%L3MOUNT
 S $ZS="" I $D(^ ("DDP")) S %ZT=$ZT,$ZT="ZG "_$ZL_":PLDER" D DBCHG^DDP S $ZT=%ZT
PLDER I $ZS'="",'$F($ZS,"<PLDER") G:%ZT'="" @%ZT Q  ; ignore PLDER for DDP
 Q
STU ; STU ENTRY POINT
 D PTRS^%VGUTIL,OS^%VGUTIL,DSK^%VGUTIL1:'OS,GETVG^%VGUTIL
 S:OS %DEV=51 D CHKNAME Q:QF
 X "ZF" O 63
 D VGNAME Q:QF
 I VGIN,$D(VG(VGNAME)) F X=65:1 S $E(VGALT,3)=$C(X) I '$D(VG(VGALT)) S X=VGALT D HASH^%VGUTIL S $P(LABEL(0),"^",5)=Y Q
 G START
MOUNT S VGOF=$V(VGIN*4+VGTAB)
 V VGOF:-3:VGALT:3:1,VGOF+10:-3:VGMAP:2,VGOF+12:-3:VGBLK:4
 V VGOF+30:-3:VOLS:2,VGOF+4:-3:$P(LABEL(0),"^",5):2
 V VGOF+28:-3:0:2 ; ptr to 1st free bit in SAT
 Q
CHKVOLS Q:VOLS<2  F I=1:1:VOLS-1 D CHKVOL
 Q
CHKVOL ;
 S VIN=$P(LABEL(I),"^",7),VMAP=$P(LABEL(I),"^",6),VN=$P(LABEL(I),"^",1),VMAG=$P(LABEL(I),"^",3) ZU 0 S QF=0
 I VIN'=I W !,"** WARNING ** volume ",I," has volume number ",VIN,*7
 I VN'=VG0N(I) W !,"** WARNING ** volume ",I,"'s name is '",VN,"' but known to volume 0 as ",VG0N(I),*7
 I VMAP'=VG0M(I) W !,"** WARNING ** volume ",I," has ",VMAP," map(s) but known to volume 0 as ",VG0M(I)," map(s)",*7
 I VMAG'=MAGIC W !,"** WARNING ** volume ",I,"'s magic is",VMAG," but known to volume 0 as ",MAGIC,*7
 Q
GETVOLS S QF=0 Q:VOLS<2  D VOLNAME:OS,VOLDSK:'OS Q
VOLNAME F I=1:1:VOLS-1 W:'$G(STUAUTO) "." S (HNAME,VOLNA(I))=$V(I*64,0,64,1) D CHKNAME G:QF VOLBAD
 F I=1:1:VOLS-1 S HNAME=VOLNA(I) W:'$G(STUAUTO) "." D LABEL^%L3MOUNT C %DEV S LABEL(I)=LABEL
VOLBAD Q
VOLDSK ; GET OTHER VOLUMES ADDRESS FOR SA
 D O63  ;*** LEV
 U 63:(:::"T") ZU 0
 S DSK="" F I=1:1 S DSK=$O(%DSK(DSK)) W:'$G(STUAUTO) "." Q:DSK=""  S HNAME=DSK D LABEL^%L3MOUNT I $P(LABEL,"^",7),$P(LABEL,"^",3)=MAGIC,($P(LABEL,"^",2)=VGNAME) DO
 .NEW P7 S P7=$P(LABEL,"^",7)
 .I $D(LABEL(P7)) S QF=2_"^"_$P(LABEL(P7),"^",8)_"^"_$P(LABEL(P7),"^")_"^"_$P(LABEL,"^",8)_"^"_$P(LABEL,"^") Q
 .S LABEL(P7)=LABEL
 I +QF=2 W *7,!!,"Error: duplicate volumes",!?3,"disk address ",$P(QF,"^",2),", volume name=",$P(QF,"^",3),!?3,"disk address ",$P(QF,"^",4),", volume name=",$P(QF,"^",5) S QF=1 Q
 F I=1:1:VOLS-1 I '$D(LABEL(I)) W !,"Unable to locate volume number ",I," (",VG0N(I),") of volume group ",VGNAME S QF=1
 U 63:(:::"C") ZU 0
 Q
VGNAME S QF=0 W:'$G(STUAUTO) "." K LABEL
 D O63 ;*** LEV
 U 63:(:::"T") ZU 0
 D LABEL^%L3MOUNT U 63:(:::"C") ZU 0 I LABEL="" S QF=1 Q
 S LABEL(0)=LABEL,VIN=$P(LABEL,"^",7)
 S (VGALT,VGNAME)=$V(512+8,0,3,1),MAGIC=$V(512+16,0,4)
 I VGNAME'?3A!(MAGIC=0) S QF=1 Q
 S VGBLK=$V(512+36,0,4),VGMAP=$V(512+40,0,2),VGUCI=$V(512+32,0,4),VOLS=$V(512+42,0,2)
 I VOLS>1 F I=1:1:VOLS-1 S VF=I-1*12+512+44,VG0N(I)=$V(VF,0,8,1),VG0M(I)=$V(VF+8,0,2)
 C:$D(%DEV) %DEV Q
HNAME ;
 I $D(^%L1DBM3)#2 S (HNAME,X)=^%L1DBM3,QF=0 Q  ;*** LEV
 W !!,"Enter ",$S(OS:"host file name",1:"disk address") R " for volume group: ",X S QF=0,HNAME=X I X="^Q"!(X="^q")!("^"[X) S QF=1 Q
 I HNAME?.E1C.E W !,"Invalid characters entered",*7 G HNAME
 I HNAME["?" W !!?3 W:'OS "Enter the hexadecimal address of the disk which"
 I  W:OS "Enter the full name of the host operating system file which"
 I  W !?3,"contains the first volume of the volume group to mount."
 I  W:'OS !?3,"Enter '^L' for a list of accessible disks."
 I  W !?3,"Enter '^' to return to the previous question."
 I  W !?3,"Enter '^Q' to exit to the utility." G HNAME
 D CHKNAME G:QF HNAME Q
CHKNAME ;
 S QF=0 G:'OS CHKNAME1 O %DEV:(HNAME:"R") U %DEV S ZA=$ZA ZU 0 C %DEV
 I ZA<0 W !,"File name ",HNAME," does not exist." S QF=1 Q
 O 63 O %DEV:(HNAME:"CBR") Q
CHKNAME1 I HNAME="^L" S X="" W !,"Accessible disks are:",!
 I  F I=0:1 S X=$O(%DSK(X)) Q:X=""  W ?(I#10*8),X W:$X>70 !
 I  S QF=1 Q
 I '$D(%DSK(HNAME)) W !,"Disk ",HNAME," not available" S QF=1 Q
 Q
QAGN ;
 I $D(^%L1DBM3("ALT")) S X=^%L1DBM3("ALT") G QAGNR ;*** LEV
 W !,"You have selected volume group '",VGNAME,"' which is already mounted"
 R !,"To continue mount, enter an alternate volume group name: ",X
QAGNR ;
 I X="^L"!(X="^l") D VGLIST^%VGUTIL G QAGNX
 I X="^" S QF=1 Q
 I X="^Q" S QF=2 Q
 I X?3U S VGALT=X D HASH^%VGUTIL S $P(LABEL(0),"^",5)=Y,QF=0 Q
 W !,"   Each mounted volume group must have a unique 3 letter name."
 W !,"   Since the volume group you want to mount has the same name "
 W !,"   as one which is already mounted, you must give it a "
 W !,"   surrogate name which will be valid as long as it is mounted."
 W !,"   Enter '^L' to see a list of mounted volume groups."
 W !,"   Enter '^' to return to the previous question"
 W !,"   Enter '^Q' to exit the utility."
QAGNX R !!,"Please enter an alternate volume group name: ",X G QAGNR
VGSLOT S QF=1 F VGIN=1:1:7 S VGOF=$V(VGIN*4+VGTAB) Q:'VGOF  I '$V(VGOF+4,-3,2) S QF=0 Q
O63 O 63::2 E  ZU 1 W *7,!,"*** %L1DBM3: DEVICE 63 IN USE ! " H 2 Q  ;*** LEV

%L1DC
%L1DC(%L1DC,%N) ; DATA CONVERTION       [ 19.09.21 08:22 ] [ 07.06.18 14:22 ] [ 12.02.18 15:26 ] 
 ;  %N=1 --- YYMMDD   ---> DD.MM.YY
 ;  %N=2 --- DD.MM.YY, DD/MM/YY, DDMMYY ---> YYMMDD
 ;  %N=3 --- DD.MM.YY, DD/MM/YY, DDMMYY ---> $H
 ;  %N=4 --- YYMMDD ---> $H
 ;  %N=5 ----MM/DD/YY ---> YYMMDD
 ;  %N=6 ----MM/DD/YY ---> DD.MM.YY
 ;  %N="." --- DDMMYY  ---> DD.MM.YY
 ;  %N="/" --- DDMMYY  ---> DD/MM/YY
 ;  %N=7 --- DD.MM.YY, DD/MM/YY ---> DDMMYY
 ;  %N=8 --- DD.MM.YY, DD/MM/YY ---> 1,2,3,4,5,6,7
 ;  %N=9 --- $H -> y,e,...,`
 ;  %N=10 --- YYMM -> $H
 N %DS,%DN,%DD,%MM,%YY,N
 S %L1DC=$P($E(%L1DC,1,10)," ")
 I %L1DC?.P Q "?????"
 I %N=1,%L1DC?5N!(%L1DC?5N1","1N.N) S %L1DC=$ZD(%L1DC,"DD/MM/YY")
 I %N=1,$L(%L1DC,"/")>2!($L(%L1DC,".")>2) S %L1DC=$TR(%L1DC,"./",""),%L1DC=$E(%L1DC,1,2)_"."_$E(%L1DC,3,4)_"."_$$GG(%L1DC) Q %L1DC
 I %N=1,%L1DC?8N.N S %L1DC=$$^W4DTL(%L1DC)
 I %N=1 S %L1DC=$$GG(%L1DC)_"."_$E(%L1DC,3,4)_"."_$E(%L1DC,1,2) Q %L1DC
 I %N=2,%L1DC?5N!(%L1DC?5N1","1N.N) S %L1DC=$TR($ZD(%L1DC,"DD/MM/YY"),"./","") S %L1DC=$$GG(%L1DC)_$E(%L1DC,3,4)_$E(%L1DC,1,2) Q %L1DC
 I %N=2 D DOP S %L1DC=$TR(%L1DC,"/.","") S %L1DC=$$GG(%L1DC)_$E(%L1DC,3,4)_$E(%L1DC,1,2) Q %L1DC
 I %N=3 Q:$P(%L1DC,",")?5N %L1DC  D DOP D DI S:$G(%ER) %N=9 Q $G(%DN,"?????")
 I %N=4 Q:$P(%L1DC,",")?5N %L1DC  S:%L1DC?8N %L1DC=$E(%L1DC,3,8) Q:%L1DC'?6N "?????" S %L1DC=$E(%L1DC,5,6)_$E(%L1DC,3,4)_$E(%L1DC,1,2) D DOP D DI S:$G(%ER) %N=9 Q $G(%DN,"?????")
 I %N=5 S %L1DC=$$GG(%L1DC)_$TR($J($P(%L1DC,"/",1),2)," ",0)_$TR($J($P(%L1DC,"/",2),2)," ",0) Q %L1DC
 I %N=6 S %L1DC=$TR($J($P(%L1DC,"/",2),2)," ",0)_"."_$TR($J($P(%L1DC,"/",1),2)," ",0)_"."_$$GG(%L1DC) Q %L1DC
 I %N="." D DOP S %L1DC=$TR(%L1DC,"/.",""),%L1DC=$E(%L1DC,1,2)_"."_$E(%L1DC,3,4)_"."_$$GG(%L1DC) Q %L1DC
 I %N="/" D DOP S %L1DC=$TR(%L1DC,"/.",""),%L1DC=$E(%L1DC,1,2)_"/"_$E(%L1DC,3,4)_"/"_$$GG(%L1DC) Q %L1DC
 I %N=7 S %L1DC=$E(%L1DC,1,2)_$E(%L1DC,4,5)_$E(%L1DC,7,8) Q %L1DC
 I $E(%N,1,2)="1+"!($E(%N,1,2)="2+") D COMP($P(%N,"+"),$P(%N,"+",2),"+") Q %L1DC
 I $E(%N,1,2)="1-"!($E(%N,1,2)="2-") D COMP($P(%N,"-"),$P(%N,"-",2),"-") Q %L1DC
 I %N=8 N %D S %D=$$^%L1DC(%L1DC,3) Q:'%D 0 S %D=(%D-55022#7) S:'%D %D=7 Q %D
 I %N=9 S:%L1DC["."!(%L1DC["/") %L1DC=$$%L1DC(%L1DC,3) S %D=(%L1DC-55022#7) S:'%D %D=7 Q $E("`abcdey",%D)
 I %N=10 Q $$%L1DC(%L1DC_"01",4)
 Q 0
DOP N %DD,%MM,%YY
DOP1 I %L1DC'["."&(%L1DC'["/") S %L1DC=$TR($J(%L1DC,6)," ",0),%DD=$E(%L1DC,1,2),%MM=$E(%L1DC,3,4),%YY=$$GG(%L1DC)
  I %L1DC["." S %DD=$P(%L1DC,"."),%MM=$P(%L1DC,".",2),%YY=$P(%L1DC,".",3)
  I %L1DC["/" S %DD=$P(%L1DC,"/"),%MM=$P(%L1DC,"/",2),%YY=$P(%L1DC,"/",3)
  S %DD=$TR($J(%DD,2)," ",0),%MM=$TR($J(%MM,2)," ",0),%YY=$TR($J(%YY,2)," ",0)
  I $L(%YY)=4 S %YY=$E(%YY,3,4)
EDOP S %L1DC=%DD_%MM_%YY
  S %DS=%MM_"/"_%DD_"/"_$S($L(%YY)=4:%YY,%YY<50:"20"_%YY,1:"19"_%YY)
  Q
 ;
COMP(%N,%N1,%SGN) ;
 N %OLDDC S %OLDDC=%L1DC
 I %N1="M" D DOP1 D  G ECOMP
 .I %SGN="+" D
 ..I %MM=12 S %L1DC=%DD_"/"_"01"_"/"_$$YR(%YY+1) Q
 ..S %L1DC=%DD_"/"_$TR($J(%MM+1,2)," ",0)_"/"_$$YR(%YY)
 .I %SGN="-" D
 ..I +%MM=1 S %YY=$S('%YY:99,1:%YY-1) S %L1DC=%DD_"/"_"12"_"/"_$$YR(%YY) Q
 ..S %L1DC=%DD_"/"_$TR($J(%MM-1,2)," ",0)_"/"_$$YR(%YY)
 I %SGN="-" S %N1=-%N1
 S %L1DC=$$%L1DC(%L1DC,$S($E(%L1DC,1,2)>31!(%OLDDC?6N&(%N=2)&($$GG(%L1DC)<32)):4,1:3))
 I %L1DC S %L1DC=$ZD(%L1DC+%N1,"DD/MM/YY"),%L1DC=$P(%L1DC,"/",1,2)_"/"_$$YR($P(%L1DC,"/",3))
ECOMP I %N=2 S %L1DC=$E(%L1DC,7,8)_$E(%L1DC,4,5)_$E(%L1DC,1,2)
 Q
YR(%Y) Q $TR($J(%Y#100,2)," ",0)
GG(%DC) ;
 I $P(%DC,"/",3)?4N Q $E($P(%DC,"/",3),3,4)
 I $P(%DC,"/",3)?2N Q $P(%DC,"/",3)
 I $P(%DC,".",3)?4N Q $E($P(%DC,".",3),3,4)
 I $P(%DC,".",3)?2N Q $P(%DC,".",3)
 I %DC?5N!(%DC?5N1","1N.N) Q $$GG($ZD(%DC,"DD/MM/YY"))
 I %DC?8N Q $E(%DC,7,8)
 Q $E(%DC,5,6)
YYMM(D) Q $E($$^%L1DC(D,2),1,4)
MM(D) Q $E($$YYMM(D),3,4)
FM(D) ;
 Q $$%L1DC($$YYMM(D)_"01",4)
LM(D) ;
 N DD S DD=31
LM1 ;
 I $$%L1DC($$YYMM(D)_DD,4) Q $$%L1DC($$YYMM(D)_DD,4)
 I DD<28 Q ""
 S DD=DD-1 G LM1
 ;
LMM(D) ;
 N DD S DD=31
LMM1 ;
 I $$%L1DC($$YYMM(D)_DD,4) Q DD
 S DD=DD-1 G LMM1
 ;
DI ;
 N yy,mm,dd
 s mm=$p(%DS,"/")
 s dd=$P(%DS,"/",2)
 s yy=$P(%DS,"/",3)
 i $l(yy)<3 s yy=yy+$S(yy<50:2000,1:1900)
 i dd>$s(+mm'=2:$e(303232332323,mm)+28,yy#4:28,yy#100:29,yy#400:28,1:29) q
 n cc,dat
 s dat=yy-1841,mm=mm-1,cc=1
 i dat<0 s dd=dd-1,cc=-1
 s dat=dat\4*1461+(dat#4-$s(dat'<0:0,1:4)*365)+(mm*30)+$e(10112234455,mm)+dd-(yy-1800\100-(yy-1600\400))
 i yy#4,mm>1 s dat=dat-cc
 i yy#100=0,mm<2,yy#400 s dat=dat+cc
 s %DN=dat
 q
 ;
NEXTM(%L1DC,STEP) ;
 N DAT,DD,MM,YY,DD1,MM1,YY1,I
 S:'$G(STEP) STEP=1
 S I=STEP+1
 S DAT=%L1DC I +DAT?5N S DAT=$$%L1DC(DAT,1)
 S DD=$E(DAT,1,2)
 S MM=$E(DAT,4,5)
 S YY=$E(DAT,7,8)
 S MM1=$S(MM+I-1<13:$TR($J(MM+I-1,2)," ",0),1:$TR($J(MM+I-1.1#12+.1,2)," ",0))
 S YY1=$S(MM+I-1<13:YY,1:YY+((MM+I-1.1)\12))
 S DD1=DD
 I DD=29,+MM1=2 S DD1=28
 N DTPR S DTPR=DD1_"."_MM1_"."_YY1
 Q DTPR
 ;
DECD(NUM) ;
 S NUM=NUM-1344444976117
 N H1 S H1=NUM\(3600*24)
 N H2 S H2=NUM-(H1*3600*24)
 Q H1_","_H2
 ;
EPOH2D(%L1DC) ;
 N (%L1DC)
 S EPTM=%L1DC
 S YYSC=31556926
 S MMSC=2629743
 S DDSC=86400
 S HRSC=3600
 S MNSC=60
 S EPYY=1970
 S MILSEC=1000
 S GMTOFFST=7200   ; JERUSALEM GMT+2HR
 S EPTM=EPTM/1000+GMTOFFST
 S CURYY=EPTM/YYSC\1+EPYY
 S CURMM=EPTM#YYSC\MMSC+1
 S CURDD=EPTM#MMSC\DDSC+1
 S CURHR=EPTM#DDSC\HRSC+1
 S CURMN=EPTM#HRSC\MNSC
 F I="CURDD","CURMM","CURHR","CURMN" S @I=$TR($J(@I,2)," ",0)
 Q CURDD_"/"_CURMM_"/"_CURYY_" "_CURHR_":"_CURMN
 ;
EPOH2T(%L1DC) ;
 N (%L1DC)
 S EP=%L1DC\1000
 S CMD="date -d @"_EP_" +'%d/%m/%Y %R'"
 S EPCNV="epoh2dt"
 S DAT=""
 O EPCNV:(command=CMD:readonly)::"PIPE"
 U EPCNV R DAT
 C EPCNV
 Q DAT
 
 
 
 
 
 
 

%L1DEFW0
 ; [ 27.06.08 09:29 ] [ 10.10.07 15:40 ] [
%L1DEFWS ; [ 21.03.07 08:48 ] [ 05.02.07 16:42 ] [ 30.09.06 19:02 ]
 H .1
 N FL,A,GLD,N,JOB,ID,TNMB
 D ^%L1CLJOB
 S GLD=$$^%L1GLD
 ;
 ZSY "wsstat"
 S FL="wsstat.log"
 I $$^%L1ZOS(10,FL)<0 Q
 O FL
 K ^devi20($J)
 M ^devi20($J)=^[GLD]devi2
 K ^[GLD]devi1,^[GLD]devi2
 F  U FL R A  Q:$ZEOF  D
 .N DEV S DEV="/dev/"_$P(A," ")
 .S ^[GLD]devi1(DEV)=$P(A," ",2) ; $P -> IP
 .I $L($P(A," ",2)) D
 ..S ^[GLD]devi2($P(A," ",2))=DEV ; IP -> $P
 ;
 I $P'="",$D(^zcmd($P)) D
 .N A,N S A=$G(^($P)) Q:A=""
 .S N="" F  S N=$O(^[GLD]devi2(N)) Q:N=""  I ^(N)=$P K ^(N)
 .S ^[GLD]devi2(A)=$P
 ;
 N N
CL C FL
 ;;S N="",PR=0 F  S N=$O(^devi20($J,N)) Q:N=""  I ^(N)'=$G(^[GLD]devi2(N)) S PR=1
 ;
 ;;I PR S N="" F  S N=$O(^[GLD]dev(N)) Q:N=""  D
 .S DV=$G(^(N)) Q:DV=""
 .I $G(^%TYPCRT(N))'["PC" Q
 .I DV["/pts/" K ^[GLD]devi(DV)
 ;
 S N="" F  S N=$O(^[GLD]devi3(N)) Q:N=""  D
 .S NM=$G(^(N)) Q:NM=""
 .S DV=$G(^[GLD]devi2(N)) Q:DV=""
 .;;I $G(^%TYPCRT(NM))'["PC" Q
 .S ^[GLD]dev(NM)=DV
 .S ^[GLD]devi(DV)=NM
 .S N1="" F  S N1=$O(^[GLD]devi(N1)) Q:N1=""  I N1'=DV,$G(^(N1))=NM K ^(N1)
 ;
 K ^devi20($J)
 Q
TV(STAM) ;
 N FL,A
 S FL="/tmp/info/HOSTNAME"
 I '$$SIZE^%L1ZOS(FL) Q "?"
 O FL:(EXC="G CL1")
 U FL
 R A
CL1 C FL
 Q A

%L1DEFWS
 ; [ 23.02.09 14:45 ] [ 19.02.09 14:01 ] [ 09.07.08 12:21 ]
%L1DEFWS ; [ 21.03.07 08:48 ] [ 05.02.07 16:42 ] [ 30.09.06 19:02 ]
 H .1
 N FL,A,GLD,N,JOB,ID,TNMB
 D ^%L1CLJOB
 S GLD=$$^%L1GLD
 ;
 F I=1:1:3 Q:'$D(^FLWSSTAT)  H 1
 S ^FLWSSTAT=$P
 ZSY "/pos/sbin/wsstat" H 1
 S FL="/usr/local/mumps/wsstat.log"
 I $$^%L1ZOS(10,FL)<0 Q
 O FL
 K ^devi20($J)
 M ^devi20($J)=^[GLD]devi2
 K ^[GLD]devi1,^[GLD]devi2
 F  U FL R A  Q:$ZEOF  D
 .N DEV S DEV="/dev/"_$P(A," ")
 .S ^[GLD]devi1(DEV)=$P(A," ",2) ; $P -> IP
 .;;K ^[GLD]zcmd(DEV)
 .N N S N="" F  S N=$O(^[GLD]devi(N)) Q:N=""  D  ; *** LEV 08/07/08
 ..I N'=DEV,^(N)=$P(A," ",2) K ^[GLD]devi(N)
 .I $L($P(A," ",2)) D
 ..S ^[GLD]devi2($P(A," ",2))=DEV ; IP -> $P
 ..S N="" F  S N=$O(^[GLD]devi2(N)) Q:N=""  D  ; *** LEV 08/07/08
 ...I N'=$P(A," ",2),^(N)=DEV K ^[GLD]devi2(N)
 ;
 ;
 I $P'="",$D(^zcmd($P)) D
 .N A,N S A=$G(^($P)) Q:A=""
 .S N="" F  S N=$O(^[GLD]devi2(N)) Q:N=""  I ^(N)=$P K ^(N)
 .S ^[GLD]devi2(A)=$P
 .S ^[GLD]devi1($P)=A
 ;
 N N
CL C FL
 ;;S N="",PR=0 F  S N=$O(^devi20($J,N)) Q:N=""  I ^(N)'=$G(^[GLD]devi2(N)) S PR=1
 ;
 ;;I PR S N="" F  S N=$O(^[GLD]dev(N)) Q:N=""  D
 .S DV=$G(^(N)) Q:DV=""
 .I $G(^%TYPCRT(N))'["PC" Q
 .I DV["/pts/" K ^[GLD]devi(DV)
 ;
 S N="" F  S N=$O(^[GLD]devi3(N)) Q:N=""  D
 .S NM=$G(^(N)) Q:NM=""  ; NM ---- NOMER MASOFA
 .S DV=$G(^[GLD]devi2(N)) Q:DV=""  ; --- $P
 .;;I $G(^%TYPCRT(NM))'["PC" Q
 .S ^[GLD]dev(NM)=DV
 .S ^[GLD]devi(DV)=NM
 .S N1="" F  S N1=$O(^[GLD]devi(N1)) Q:N1=""  D
 ..I N1'=DV,$G(^(N1))=NM K ^(N1)
 .S N1="" F  S N1=$O(^[GLD]dev(N1)) Q:N1=""  D
 ..I N1'=NM,$G(^(N1))=DV K ^(N1)
 ;
 K ^devi20($J)
 K ^FLWSSTAT
 Q
TV(STAM) ;
 N FL,A
 S FL="/tmp/info/HOSTNAME"
 I '$$SIZE^%L1ZOS(FL) Q "?"
 O FL:(EXC="G CL1")
 U FL
 R A
CL1 C FL
 Q A

%L1DEV
%L1DEV ; [ 23.11.06 17:15 ] [ 27.06.06 17:23 ] [ 13.02.06 16:06 ]
 S %SCRN="L1DEV"
 K ^P1HZMS(%L3MYDVN)
 K ^TEMP($P)
 S GLD=$$^%L1GLD
 S N="" F  S N=$O(^[GLD]%TYPCRT(N)) Q:N=""  I 'N S N1=+$G(^[GLD]devi(N)) S ^[GLD]%TYPCRT(N1)=^[GLD]%TYPCRT(N) K ^[GLD]%TYPCRT(N)
 S N="" F  S N=$O(^[GLD]%CVET(N)) Q:N=""  I 'N S N1=+$G(^[GLD]devi(N)) S ^[GLD]%CVET(N1)=^[GLD]%CVET(N) K ^[GLD]%CVET(N)
 S N="",I=0 F  S N=$O(^[GLD]dev(N)) Q:N=""  D
 .N P,CEVA,TYPC,SHIFT,N1
 .S P=$G(^[GLD]dev(N))
 .S CEVA=$G(^[GLD]%CVET(N))
 .S TYPC="" I $L(P) S TYPC=$G(^[GLD]%TYPCRT(N))
 .S SHIFT=$G(^[GLD]SMXY(N))
 .S N1=N I $E(N,1,4)="TERM" Q
 .S I=I+1,^TEMP($P,I)=N1_"\"_P_"\"_$G(^[GLD]dev(N,"H"))_"\"_TYPC_"\"_CEVA_"\"_SHIFT
SC D ^%L1SC
 D IS3^%L1GET I %S=1 G SC
 I %S=0 G END
 ;
 S N="" F  S N=$O(^[GLD]dev(N)) Q:N=""  D
 .I $E(N,1,4)'="TERM" K ^[GLD]dev(N)
 S N="" F  S N=$O(^[GLD]devi(N)) Q:N=""  D
 .I N'?1N.N K ^[GLD]devi(N)
 ;
 F I=1:1 Q:'$D(^TEMP($P,I))  D
 .S A=$G(^(I)) Q:A=""  S N=$P(A,"\") Q:'N
 .S SHEM=$$SPA^%L1FRM($P(A,"\",2)) Q:SHEM?.P  I SHEM'["/",'SHEM S SHEM="/dev/"_SHEM
 .S ^[GLD]dev(N)=SHEM
 .S ^[GLD]dev(N,"H")=$P(A,"\",3)
 .S ^[GLD]devi(SHEM)=N
 .K ^[GLD]%TYPCRT(N) I $P(A,"\",4)'?.P S ^[GLD]%TYPCRT(N)=$P(A,"\",4)
 .K ^[GLD]%CVET(N) I $P(A,"\",5)'?.P S ^[GLD]%CVET(N)=$P(A,"\",5)
 .K ^[GLD]SMXY(N) I $P(A,"\",6) S ^[GLD]SMXY(N)=$P(A,"\",6)
END K ^TEMP($P) Q

%L1DEV0
%L1DEV ; [ 09.07.06 12:08 ] [ 13.02.06 16:06 ] [ 25.02.05 12:11 ]
 S %SCRN="L1DEV"
 K ^TEMP($P)
 S GLD=$$^%L1GLD
 S N="" F  S N=$O(^[GLD]%TYPCRT(N)) Q:N=""  I 'N S N1=+$G(^[GLD]devi(N)) S ^[GLD]%TYPCRT(N1)=^[GLD]%TYPCRT(N) K ^[GLD]%TYPCRT(N)
 S N="" F  S N=$O(^[GLD]%CVET(N)) Q:N=""  I 'N S N1=+$G(^[GLD]devi(N)) S ^[GLD]%CVET(N1)=^[GLD]%CVET(N) K ^[GLD]%CVET(N)
 S N="",I=0 F  S N=$O(^[GLD]dev(N)) Q:N=""  D
 .N P,CEVA,TYPC,SHIFT,N1
 .S P=$G(^[GLD]dev(N))
 .S CEVA=$G(^[GLD]%CVET(N))
 .S TYPC="" I $L(P) S TYPC=$G(^[GLD]%TYPCRT(N))
 .S SHIFT=$G(^[GLD]SMXY(N))
 .S N1=N I $E(N,1,4)="TERM" Q
 .S I=I+1,^TEMP($P,I)=N1_"\"_P_"\"_$G(^[GLD]dev(N,"H"))_"\"_TYPC_"\"_CEVA_"\"_SHIFT
SC D ^%L1SC
 D IS3^%L1GET I %S=1 G SC
 I %S=0 G END
 K ^[GLD]dev,^[GLD]devi
 F I=1:1 Q:'$D(^TEMP($P,I))  D
 .S A=$G(^(I)) Q:A=""  S N=$P(A,"\") Q:'N
 .S SHEM=$$SPA^%L1FRM($P(A,"\",2)) Q:SHEM?.P  I SHEM'["/",'SHEM S SHEM="/dev/"_SHEM
 .S ^[GLD]dev(N)=SHEM
 .S ^[GLD]dev(N,"H")=$P(A,"\",3)
 .S ^[GLD]devi(SHEM)=N
 .K ^[GLD]%TYPCRT(N) I $P(A,"\",4)'?.P S ^[GLD]%TYPCRT(N)=$P(A,"\",4)
 .K ^[GLD]%CVET(N) I $P(A,"\",5)'?.P S ^[GLD]%CVET(N)=$P(A,"\",5)
 .K ^[GLD]SMXY(N) I $P(A,"\",6) S ^[GLD]SMXY(N)=$P(A,"\",6)
END K ^TEMP($P) Q

%L1DG
%L1DG ; DIAGRAMMA UNIVERSALI ; SHEER ; 23/09/93  [ 25.02.05 12:16 ] [ 28.03.04 11:35 ] [ 02.04.01  9:08 AM ]
  N (MM1,YY1,TOT,%L1DG,%UPRCOD,%XMSGV,%XMSG,%XMSGN) D ^%L1C S %HBRY=""
  ; %L1DG("Y")    - EDINICA IZMERENIA PO Y
  ; %L1DG("X1")   - EDINICA IZMERENIA PO X
  ; %L1DG("X2")   - EDINICA IZMERENIA PO X
  ; %L1DG("SHEM") - NAZVANIE GRAFIKA
  ; %L1DG("DATE") - DATE
  ; %L1DG("SHIR") - SHIRINA EDINICY PO X
  ; %L1DG("KOL")  - KOLICHESTVO   %L1DG("SHIR")*%L1DG("KOL")'>62
  ; %L1DG("TIP")  - TIP GRAFIKA  1 - MESAC PO DNAM, 2 - GOD PO MESACAM
  ;                              3 - DEN PO CHASAM , 4 - MESSYC PO NEDELJAM
  ; %L1DG("RAZ")  - IF $G(%L1DG("RAZ")) BYDET PROBEL MEGDU GRAFAMI
  ; %L1DG("HELP") - HELP NA 25 STROKE
  ; TOT(IND)      - LOKAL NETYNIM GDE IND NUMBER PO X
  ; IF %L1DG("TIP")=1 --- %L1DG("DATE"),%L1DG("SHEM"),MM1,YY1
  ; IF %L1DG("TIP")=2!3 --- %L1DG("DATE"),%L1DG("SHEM")
  ; ELSE  ---  %L1DG("Y"),%L1DG("X1"),%L1DG("X2"),%L1DG("SHEM"),%L1DG("DATE")
  ;            %L1DG("SHIR"),%L1DG("KOL")
  S %L1DG("TIP")=$G(%L1DG("TIP"),0),%L1DG("Y")=$TR($TR($G(%L1DG("Y"),"g''y"),%TES1,%TES2),%TEN,%THB)
  S %L1DG("RAZ")=$S($G(%L1DG("RAZ")):1,1:0)
0 ; I '$D(TOT) W *7,!!?30," mipezp oi` " H 1 W *7 H 1 W *27,"[2K" G END
  I '$D(TOT) S %SAY=" mipezp oi` " X %XMSGN(1) G END
  S IND=$O(TOT("")),MAX=TOT(IND) F  S IND=$O(TOT(IND)) Q:IND=""  I TOT(IND)>MAX S MAX=TOT(IND)
  S TYP=$S(%TYPCRT["PC":1,1:0)
  I TYP S VRT=$C(180),HRZ=$C(196),UGOL=$C(192),DA=$C(219),BB=$C(223),NIZ=$C(220),MIN=$C(205),MINUS=$C(220)
  E  S VRT=$C(117),HRZ=$C(113),UGOL=$C(109),DA=$C(97),BB=$C(111),NIZ=$C(113),MIN=$C(112),MINUS=$C(115)
  S MASH=1,ELEF=""
  S MAX=MAX/20 S:MAX>1000 MAX=MAX/1000,ELEF=$TR($TR("sl` ",%TES1,%TES2),%TEN,%THB) I MAX>100 S MAX=MAX/100,MASH=100
  ;S MASH=MASH*$S(MAX>3:MAX+$S(MAX#5=0:0,1:5)\5*5,MAX>2:3,MAX>1:2,1:1),MSH=MASH*$S(ELEF="":1,1:1000)
  S MASH=MASH*$S(MAX>3:MAX+$S(MAX#10=0:0,1:10)\10*10,MAX>2:3,MAX>1:2,1:1),MSH=MASH*$S(ELEF="":1,1:1000)
  S XXX="",SAX="" F  S XXX=$O(TOT(XXX)) Q:XXX=""  S SAX=SAX+TOT(XXX)
  S SAX=$J(SAX,0,2) ; --- I ELEF["sl`" S SAX=$J(SAX/1000,0,3)
  F I=4:1:23 S LIN(I)=%CV("YF")_$J(I-3*MASH,6)_%CV("WF")_" "_VRT
  S LIN(3)=$J(UGOL,8)
  S LIN(1)=$J(" ",8)_$G(%L1DG("X1")),LIN(2)=$J(" ",8)_$G(%L1DG("X2"))
1 I %L1DG("TIP")=1 S %L1DG("KOL")=31,%L1DG("SHIR")=2 D
  .S DAY=$$^%L1DC("01/"_MM1_"/"_YY1,8) S DAY=DAY*2
  .S LIN(1)=$J("",9)_$TR($TR($E(" ` a b c d e y ` a b c d e y ` a b c d e y ` a b c d e y ` a b c d e y ` a b",%TES1,%TES2),%TEN,%THB),DAY,DAY+61)
  .S LIN(1)=LIN(1)_$TR($TR(" --   mei",%TES1,%TES2),%TEN,%THB)
  .S LIN(2)=$J(" ",8) F I=1:1:31 S LIN(2)=LIN(2)_$J(I#10,2)
  .S LIN(2)=LIN(2)_$TR($TR(" -- jix`z",%TES1,%TES2),%TEN,%THB)
2 I %L1DG("TIP")=2 S %L1DG("KOL")=12,%L1DG("SHIR")=5 D
  .S LIN(2)=$J(" ",6) F I=1:1:12 S LIN(2)=LIN(2)_$J(I,5)
  .S LIN(2)=LIN(2)_$TR($TR("  ---  yceg",%TES1,%TES2),%TEN,%THB)
  .S LIN(1)=$J(" ",8)_$TR($TR(" epi  xat  uxn  xt`  i`n  ipei ilei be`  htq  we`  aep  nvc ",%TES1,%TES2),%TEN,%THB)
3 I %L1DG("TIP")=3 S %L1DG("KOL")=24,%L1DG("SHIR")=3 D
  .S LIN(2)=$J($TR($TR("zery ",%TES1,%TES2),%TEN,%THB),7) F I=0:1:23 S LIN(2)=LIN(2)_$J(I,2)_" "
  .S LIN(1)=""
4 I %L1DG("TIP")=4 S %WK=$$^%L1WEEK(YY1,MM1) D
  .S %L1DG("KOL")=$L(%WK,","),%L1DG("SHIR")=8,%L1DG("RAZ")=1
  .S LIN(1)=""
  .S LIN(2)=$J(" ",8)
  .F I=1:1:%L1DG("KOL") S LIN(2)=LIN(2)_$J($P(%WK,",",I),7)_" "
  .S LIN(2)=LIN(2)_$TR($TR(" : zereay",%TES1,%TES2),%TEN,%THB)
  ;
  ; --- S LIN(24)="   "_%L1DG("Y")_" "_ELEF_SAX_$J(%L1DG("SHEM"),40)_$J(%L1DG("DATE"),60-$L($J(%L1DG("SHEM"),40)))
  S LIN(24)="   "_%L1DG("Y")_$J(ELEF,5)_%CV("RF")_$J($TR($TR(%L1DG("SHEM"),%TES1,%TES2),%TEN,%THB),40)_$J(%L1DG("DATE"),60-$L($J(%L1DG("SHEM"),40)))
  I $D(%L1DG("HELPCOM")) X "S %L1DG(""HELP"")="_$TR($TR(%L1DG("HELPCOM"),%TES1,%TES2),%TEN,%THB) G L1
  S %L1DG("HELP")=$S($G(%L1DG("HELP"))="":$J("",50),1:"("_$G(%L1DG("HELP"))_") ")_%CV("WF")_" "_SAX_" : "_%L1DG("Y")_" k""dq++24,72,HH,,,C"
L1 F I=1:1:%L1DG("KOL") S TOT(0)=$G(TOT(I))/MSH S TOT=$J($G(TOT(I))/MSH+.5*2,0,0)/2 D
  .S CVET=%CV("CF")
  .S:TOT(0) LIN(3)=LIN(3)_CVET D  S:'%L1DG("RAZ") LIN(3)=LIN(3)_%CV("WF")
  ..F XX=1:1:%L1DG("SHIR") S LIN(3)=LIN(3)_$S(TOT>1:$S(TYP:BB,1:HRZ),TOT=1:BB,TOT(0)>0:MIN,$G(TOT(I))<0:MINUS,1:HRZ) S:%L1DG("RAZ")&(XX=%L1DG("SHIR")) $E(LIN(3),$L(LIN(3)))=%CV("WF")_HRZ
  .I TOT<0 X "F LIN=4:1:23 F XX=1:1:%L1DG(""SHIR"") S LIN(LIN)=LIN(LIN)_""-""" Q
  .I TOT<1 G T
  .F LIN=4:1:TOT+2 D
  ..S CVET=%CV("CF") I $D(TOT(I))>1,LIN>(TOT(I,1)/MSH+3) I TOT(I)'=TOT(I,1) S CVET=%CV("RF") ;---- CEVA AHER
  ..S LIN(LIN)=LIN(LIN)_CVET D  S LIN(LIN)=LIN(LIN)_%CV("WF")
  ...F XX=1:1:%L1DG("SHIR") S LIN(LIN)=LIN(LIN)_DA S:%L1DG("RAZ")&(XX=%L1DG("SHIR")) $E(LIN(LIN),$L(LIN(LIN)))=" "
  .S TOP=TOT\1+3
  .S LIN(TOP)=LIN(TOP)_CVET D  S LIN(TOP)=LIN(TOP)_%CV("WF")
  ..F XX=1:1:%L1DG("SHIR") S LIN(TOP)=LIN(TOP)_$S(TOT#1=0:"-",1:NIZ) I %L1DG("RAZ")&(XX=%L1DG("SHIR"))&(TOT#1) S $E(LIN(TOP),$L(LIN(TOP)))=" "
T .F LIN=TOT\1+4:1:23 F XX=1:1:%L1DG("SHIR") S LIN(LIN)=LIN(LIN)_"-"
  S SHIR=%L1DG("KOL")*%L1DG("SHIR")
  I SHIR<71 S LIN(3)=LIN(3)_$TR($J(" ",71-SHIR)," ",HRZ)_">"
PRINT ;
  W %HBR X %chista U $P:(NOECHO:NOWRAP)
  I %TYPCRT["VT" W *27,"(B"
  X %LIGHT W %CV("CF"),LIN(24) W %CL0
  ;W *27,"(0" W ! F I=23:-1:3 D:%TYPCRT["PC"  W:%TYPCRT["VT" LIN(I) W !
  I %TYPCRT["VT" W *27,"(0"
  W ! F I=23:-1:3 W LIN(I) W !
  .F I1=1:1:$L(LIN(I)) S SMB=$E(LIN(I),I1) W $S(SMB="-":$C(27,91)_"37;2m"_"-"_$C(27,91)_"1m",1:SMB)
  I %TYPCRT["VT" W *27,"(B"
  W %CV("YF") S $X=0 W LIN(2),!,LIN(1)
  S J=0 K ^GRPH($J) F I=24:-1:1 S J=J+1 S LN=LIN(I) S ^GRPH($J,J)=$$TR(LN)
  S %SAY=%L1DG("HELP") X %XMSG
  S ^GRPH($J,$O(^GRPH($J,999),-1)+1)=$J("",6)_$$TR($P(%L1DG("HELP"),"++"))
  X %XCL
  I '$$HZGTOUCH^%L2MOUSE W $C(27,91,63,50,53,108) R R#1 W $C(27,91,63,50,53,104)
  I $$HZGTOUCH^%L2MOUSE D
  .S MTXT("B")=%CV("MB")
  .S MTXT(1,1)="d`ivi"
  .S MTXT(1,1,"TO")="END"
  .I $$KB^%L2MOUSE S MTXT(1,1,"I")="ESC"
  .S Y0=4,Y2=5,X0=73,X2=79
  .S COLX=$O(MTXT(1,20),-1),COLY=1,SH=1
  .S STEPX=6,STEPY=2,%PREV=""
  .D TV^P1RBUA S %S=""
  ;
  S %GET=" 99 - qitcdl " D N^%L1GET I %S=99 D
  .S %DEV="USTR" D OPEN^%L1LPT Q:%EROP
  .U USTR D ^%L1TS
  .N %AT,ST S %AT=$$^%L1HEAD("") I $L(%AT) S ST=%L1OUT("MDP","B")_$$CENTRB^%L1FRM($TR($TR(%AT,"#_",""),TS0,TSS),%L1OUT("MDP","GWPC"))_%L1OUT("MDP","N") W $TR(ST,TS0,TSS),!!
  .W ! F J=1:1 Q:'$D(^GRPH($J,J))  W $TR(^(J),TS0,TSS),!
  .D CLOSE^%L1LPT
END  K %L1DG Q  ; --- ,TOT Q
TR(LN) ;
  N N S N="" F  S N=$O(%CV(N)) Q:N=""  S LN=$$RPL^%L1FRM(LN,%CV(N),"")
  I 'TYP,J>1,J<23 S LN=$TR(LN,$C(117,113,109,97,111,113,112,115),$C(180,196,109,219,223,220,205,220))
  Q LN

%L1DIAL
%L1DIAL(PORT,PHONE) ; [ 24.11.05 09:40 ] [ 01.02.04 13:41 ] [ 08.08.03 16:32 ] [
 D DELLOCK^%L2MOUSE($G(@$$^W4DEV@(PORT)))
 ZSY "/etc/ppp/ppp-on "_PHONE_" "_^[$$^%L1GLD]dev(PORT)
 U $P W !!,$S($ZSY:"ERROR "_$ZSY,1:"CONNECTION ESTABLISHED")
 Q
OFF
 ZSY "/etc/ppp/ppp-off"
 U $P W !!,$S($ZSY:"ERROR "_$ZSY,1:"CONNECTION CLOSED")
 Q

%L1DIR
%L1DIR ; SAVE UCI STATUS TO FILE '#DIR' [ 05/23/99  5:05 PM ] [ 10/17/93 11:22 AM ]
GO O 63::0 E  U 0 W *7,!,"VIEW BUFFER BUSY, TRY AGAIN LATER" Q
 D GETVG^%VGUTIL S VGTAB=$V(10,-5)
 S $ZT="ZG "_$ZL_":ERR^%L1DIR"
 O 51:("#DIR":"A"):1 E  U 0 W *7,!," DEVICE 51 BUSY " Q
 U 51
 W !!,?5,$P($P($ZV,","),"-")," UCI Status",?$X+5,$ZD($H),?$X+5 D ^%T W !!
 F VGI=0:1:VG-1 D DISPUCI I VGI=(VG-1) D LEG
EXIT ;
 C 63,51 K VGTAB,VGI,VG
 Q
 ;ASK SYSTEM NAME IF APPROPRIATE
DISPUCI ;DISPLAY UCITABLE IN ONE VOLUME GROUP
 D GETVOL^%VGUTIL S VGTAB=$V(10,-5)
 K UCICNT S UCICNT=0 F X=1:1:$V(12,-4,2) I $ZU(X,VGI)'="" S UCICNT(X)="",UCICNT=UCICNT+1
ST W !,"Volume group index : ",VGI
 W !,"Volume group name : ",$V($V(VGI*4+VGTAB),-3,3,1),!
 I 'UCICNT W !,"No UCIs defined.",! Q
 S UCTB=$V($V(VGI*4+VGTAB)+20) ;GET UCI TABLE
 S T(0)=0,T(1)=7,T(2)=13,T(3)=24,T(4)=35,T(5)=46,T(6)=57,T(7)=68,T(8)=80
 W !,?T(0),"UCI",?T(1),"UCI",?T(2),"Global",?T(3),"Routine",?T(4),"Rtn Exp/",?T(5),"Data Exp/",?T(6),"Ptr exp/",?T(7),"Jrnl stat/"
 W !,?T(0),"Index",?T(1),"Name",?T(2),"Directory",?T(3),"Directory",?T(4),"Exp Lim",?T(5),"Exp Lim",?T(6),"Exp Lim",?T(7),"Pword/Lib"
 W ! F I=0:1:7 W ?T(I),$E("--------------",1,T(I+1)-T(I)-2)
LOOP F UCI=1:1:$V(12,-4,2) D:$D(UCICNT(UCI)) PRINT
 Q
LEG W !!,"Legend:"
 W !,"Directories are given as actual block numbers.",!,"Expansion pointers are expressed as Map numbers."
 K UCICNT,UCTB,T,UCI,UCSTA,UC,X
 Q
PRINT ;
 S UCSTA=UCI-1*32+UCTB,UC(1)=$V(UCSTA,-3,2),X=UC(1) D UNHASH^%VGUTIL S UC(1)=X ;UNHASH NAME
 S UC(2)=$V(UCSTA+4,-3,4),UC(3)=$V(UCSTA+8,-3,4)
 F UC=4:1:9 S UC(UC)=$V(UCSTA+$P(";;;20;16;12;22;18;14",";",UC),-3,2)
 S UC(10)=$S($V(UCSTA+30,-3,1)\128:"YES",1:"NO")
 S UC(11)=$V(UCSTA+24,-3,3,1) S:UC(11)=$C(0,0,0) UC(11)=""
 S UC(12)=$V(UCSTA+31,-3,1)
 W !,?T(0),$J(UCI,3),?T(1),UC(1)
 S CHG=UC(2) D CONV S UC(2)=CON W ?T(2),UC(2) ;gdir
 S CHG=UC(3) D CONV S UC(3)=CON W ?T(3),UC(3) ;rdir
PEXP W ?T(4),UC(4)+1 ;rtn exp
 W ?T(4),"/" I UC(7)<#FFFF W UC(7)+1 ;rtn exp limit
 E  W "NONE"
 W ?T(5),UC(5)+1 ;gdat exp
 W ?T(5),"/" I UC(8)<#FFFF W UC(8)+1 ;gdat exp limit
 E  W "NONE"
 W ?T(6),UC(6)+1 ;gptr exp
 W ?T(6),"/" I UC(9)<#FFFF W UC(9)+1 ;gptr exp limit
 E  W "NONE"
 W ?T(7),UC(10) ;journaling
 W ?T(7),"/",UC(11),"/",UC(12),!
 Q
CONV F VOLN=0:1:VGVOL-1 Q:CHG<$P(VGVOL(VOLN),"^",2)
 I CHG<$P(VGVOL(VOLN),"^",2) S VCC=VOLN-1
 E  S VCC=VOLN
 S XX(1)=VCC,XX(2)=CHG-$P(VGVOL(VCC),"^",2)-1 K VOLN,VCC
 S CON=XX(1)_":"_(XX(2)+1)
 Q
ERR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
I ;
 O 63::0 E  U 0 W *7,!,"VIEW BUFFER BUSY, TRY AGAIN LATER" Q
 D GETVG^%VGUTIL S VGTAB=$V(10,-5)
 S $ZT="ZG "_$ZL_":ERR^%L1DIR"
 O 51:("#DIR1":"A"):1 E  U 0 W *7,!," DEVICE 51 BUSY " Q
 U 51 W !!,$$^%L1DC($H,1),!!
 F VGI=0 D
 .D GETVOL^%VGUTIL S VGTAB=$V(10,-5),MGR=$$^%L1ZU(0)
 .K UCICNT S UCICNT=0 F X=1:1:$V(12,-4,2) I $ZU(X,VGI)'="" S UCICNT(X)="",UCICNT=UCICNT+1
 .S N="" F  S N=$O(UCICNT(N)) Q:N=""  D
 ..V 2:$J:N:2,108:$J:42000:4
 ..S N1="^" F  S N1=$O(@N1) Q:N1=""  S N1="^"_N1 W !,$ZU(N)," ",N1,$J("",10-$L(N1)),$ZBN(@N1)
 ..V 2:$J:+$ZU("MGR"):2,108:$J:60000:4
 C 51 Q

%L1DISP
%L1DISP(USTR) ; [ 13.01.06 11:05 ] [
 I USTR=0!(USTR=$P) Q 1
 Q 0

%L1DOS
%L1DOS(%CMD,%PATH,%OUT,%TR) ; [ 03.10.06 13:42 ] [ 28.09.06 10:50 ] [ 17.05.06 15:51 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%CMD,%PATH,%OUT,%TR) D ^%L1C
 S PATHDOS=$$PATH
 S %NMF0=PATHDOS_"l1dos"_$j
 S %NMF=PATHDOS_"l1"_$j_".bat"
 S %NMF1="l1"_$j_".bat"
 ;
 S DOSEMU="/usr/local/bin/dosemu.bin"
 I $$^%L1ZOS(10,DOSEMU)<0 S DOSEMU="/usr/bin/dosemu.bin"
 I $$^%L1ZOS(2,%NMF0)
 O %NMF0:(WRITE:NEWVERSION)
 U %NMF0
 W "#!/bin/bash -f",!!
 S %ST=DOSEMU_" -k -D -a -E "_%NMF1
 I $L($G(%OUT)) S %ST=%ST_" > "_%OUT
 I '$L($G(%OUT)),%TYPCRT["VT",$G(%TR)'="B" S %ST=%ST_" | "_$$^%L1ENVAR("gtm_dist")_"/mumps -r %L1FLTR"
 I '$L($G(%OUT)),%TYPCRT["VT",$G(%TR)="B" S %ST=%ST_" | "_$$^%L1ENVAR("gtm_dist")_"/mumps -r TV^%L1FLTR"
 W %ST,!
 C %NMF0
 I $$^%L1ZOS(2,%NMF)
 O %NMF:(WRITE:NEWVERSION)
 U %NMF I $L($G(%PATH)),%PATH'["/" W "CD "_%PATH,!
 I %CMD[".BAT"!(%CMD[".bat") W "call "_%CMD,!
 E  W %CMD,!
 W "exitemu",!
 C %NMF ZSY "unix2dos "_%NMF
 I $$TERMINAL^%HOSTCMD(%NMF0)
 I $$^%L1ZOS(2,%NMF0)
 I $$^%L1ZOS(2,%NMF)
 Q
PATH(STAM) ;
 N PATHDOS
 I $D(^PATHDOS) S PATHDOS=$G(^PATHDOS) G PATH1
 S PATHDOS=$G(^[$$^%L1GLD]PL("PATHM"))
 S PATHDOS=$P(PATHDOS,"/",1,$L(PATHDOS,"/")-2)
PATH1 I PATHDOS="" S PATHDOS="/root/dosemu/freedos"
 I $E(PATHDOS,$L(PATHDOS))'="/" S PATHDOS=PATHDOS_"/"
 I '$D(^PATHDOS) S ^PATHDOS=PATHDOS
 Q PATHDOS

%L1DOS1
%L1DOS(%CMD,%PATH,%OUT,%TR) ; [ 03.10.06 13:40 ] [ 28.09.06 10:50 ] [ 17.05.06 15:51 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%CMD,%PATH,%OUT,%TR) D ^%L1C
 S PATHDOS=$$PATH
 S %NMF0=PATHDOS_"l1dos"_$j
 S %NMF=PATHDOS_"l1"_$j_".bat"
 S %NMF1="l1"_$j_".bat"
 ;
 S DOSEMU="/usr/local/bin/dosemu.bin"
 I $$^%L1ZOS(10,DOSEMU)<0 S DOSEMU="/usr/bin/dosemu.bin"
 I $$^%L1ZOS(2,%NMF0)
 O %NMF0:(WRITE:NEWVERSION)
 U %NMF0
 W "#!/bin/bash -f",!!
 ;;w "/usr/local/bin/dosemu.bin -k -D -a -I 'keystroke "" "_%NMF1_"\r"" '",!
 S %ST=DOSEMU_" -k -D -a -E "_%NMF1
 ;;W "#!/bin/bash",!!
 ;;S %ST="/usr/local/bin/dosemu.bin -I 'dosbanner off' quite -E "_%NMF1
 I $L($G(%OUT)) S %ST=%ST_" > "_%OUT
 I '$L($G(%OUT)),%TYPCRT["VT",$G(%TR)'="B" S %ST=%ST_" | "_$$^%L1ENVAR("gtm_dist")_"/mumps -r %L1FLTR"
 I '$L($G(%OUT)),%TYPCRT["VT",$G(%TR)="B" S %ST=%ST_" | "_$$^%L1ENVAR("gtm_dist")_"/mumps -r TV^%L1FLTR"
 W %ST,!
 C %NMF0
 I $$^%L1ZOS(2,%NMF)
 O %NMF:(WRITE:NEWVERSION)
 U %NMF I $L($G(%PATH)),%PATH'["/" W "CD "_%PATH,!
 I %CMD[".BAT"!(%CMD[".bat") W "call "_%CMD,!
 E  W %CMD,!
 W "exitemu",!
 C %NMF ZSY "unix2dos "_%NMF
 I $$TERMINAL^%HOSTCMD(%NMF0)
 I $$^%L1ZOS(2,%NMF0)
 I $$^%L1ZOS(2,%NMF)
 Q
PATH(STAM) ;
 N PATHDOS
 I $D(^PATHDOS) S PATHDOS=$G(^PATHDOS) G PATH1
 S PATHDOS=$G(^[$$^%L1GLD]PL("PATHM"))
 S PATHDOS=$P(PATHDOS,"/",1,$L(PATHDOS,"/")-2)
PATH1 I PATHDOS="" S PATHDOS="/root/dosemu/freedos"
 I $E(PATHDOS,$L(PATHDOS))'="/" S PATHDOS=PATHDOS_"/"
 I '$D(^PATHDOS) S ^PATHDOS=PATHDOS
 Q PATHDOS

%L1DPRO
%L1DPRO ; KILL GLOBAL PROTECTION [ 06/05/96  7:48 AM ]
 N (%RNAME,%UPRCOD,%XMSG,%XMSGV,%XMSGN,%Z,%S2V) D ^%L1C S $ZT="ZG "_$ZL_":ER" ; [ 06/05/96  7:35 AM ]
Z W !,"UCI:" S (%S,%UCIOLD)=$$^%L1ZU(0),%LS=7
 S %UIO=$P(%UCIOLD,","),%VGO=$P(%UCIOLD,",",2)
 S %UION=$P($ZU(%UIO,%VGO),",")
 S %VGON=$P($ZU(%UIO,%VGO),",",2)
 D ^%ZMSL Q:%S=""!($G(%TO)="END")
 S %UI=$P(%S,","),%VG=$P(%S,",",2)
 I $ZU(%UI,%VG)'>0 W *7," ???" G Z
 S %UIN=$P($ZU(%UI,%VG),",")
 S %VGN=$P($ZU(%UI,%VG),",",2)
M W !!,"GLOBAL NAME :^" S %LS=8,%S="" D ^%ZMSL S %GNAME=%S Q:%GNAME=""!($G(%TO)="END")
  I %GNAME'?."%"1U.U.N W *7 G M
  S %GLB="["_%UI_","_%VG_"]"_%GNAME B
  S %STAT="4,4,4,4" D ^%L1GCH
  G M
ER Q

%L1DVR16
%L1DVR16 ;BFH;RESET XOFF FLAG FOR ANY PORT [ 10/28/01  3:30 PM ] [ 01/15/95  06:26 PM ]
 ;Copyright Micronetics Design Corp. @1990
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L1RCV,PORT)
 D LOOKUP I 'QF D RESET
 Q
 D banner^%UTL("Port Reset Utility")
 I $ZB($V(0,-4,2),#F,1)'=8 W !,"Not available for this version of MSM" Q
 NEW  S $ZT="ZG "_$ZL_":ERR^DEVRESET"
DEV ;
 R !!,"Port number: ",PORT Q:PORT=""
 I PORT="?" W !,"   Enter a port number or '^L' for list of available ports" G DEV
 I PORT="^L" D LIST G DEV
 D LOOKUP I QF W ! DO  G DEV
 .I QF=1 W "Port does not exist" Q
 .I QF=2 W "Device not defined in internal configuration table" Q
 .I QF=3 W "Device not installed in this system" Q
 .I QF=4 W "Not available for MCC devices" Q
 .I QF=5 W "Not available for the console" Q
 D DISPLAY
 D RESET
 I DEV?1"SPARN".E W !,"xoff state reset to normal"
 E  W !,"Port reset, I/O buffers cleared."
 ;W !,"Flags on after reset:"
 ;D DISPLAY
 G DEV
LOOKUP ; Find device and offset for patch
 ; This is used as an entry point by KILLJOB
 ; PORT must be defined
 S QF=0
 S CONFIG=+^|"MGR"|SYS("CONFIG",$P(^|"MGR"|SYS("CONFIG"),";",2))
 I '$D(^|"MGR"|SYS(CONFIG,"DDB",PORT)) S QF=1 Q
 S DEV=$P(^(PORT),",",2)
 S CPU386=($V(0,-4,2)\#100#16=5)
 S CNFG=$V(18,-5),DEVLST=$V(CNFG+8,-3,4)
 F DI=DEVLST:12 Q:$V(DI,-3,1)=0  G:DEV=$P($V(DI,-3,8,1),$C(0)) LOOKUP1
 S QF=2 Q
LOOKUP1 ;
 S DI=$V(DI+8,-3,4)
 I DI=0 S QF=3 Q
 I DEV?1"MCC"2N S QF=4 Q
 I DEV="CON" S QF=5 Q
 S OFFSET=$S(CPU386:14,1:12)
 S IOBUF=$S(CPU386:64,1:50)
 Q
LIST ;
 S CONFIG=+^|"MGR"|SYS("CONFIG",$P(^|"MGR"|SYS("CONFIG"),";",2))
 W !!,"Ports defined for configuration ",$P(^|"MGR"|SYS("CONFIG"),";",2),!
 S X="" F  S X=$O(^|"MGR"|SYS(CONFIG,"DDB",X)) Q:X=""  W !,X,?8,$P(^(X),",",2)
 Q
RESET ; Reset the port
 ; Used as an entry point by KILLJOB
 I DEV?1"SPARN".E G SMART
 ; turn off 2,4
 V DI+OFFSET::$ZB($V(DI+OFFSET,-3,1),#F9,1):1
 F X=IOBUF,IOBUF+2 V DI+X+1::$V(DI+X,-3,1):1 ; clear ring buffers
 ZU PORT W $C(0) U 0
EXIT Q
ERR I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT Q 0
 Q 1
SMART ;
 V 40:$J:$ZB($V(40,$J,2),#10,7):2 ; disable view check for shmem address >1MB
 NEW (DI,CPU386,PORT,OFFSET)
 S DI=$V($V(4*PORT+$V(7,-5),-3,0)+76,-3,0)
 S PN=$V(DI+$S(CPU386:17,1:15),-3,1)
 S X=$V(DI+$S(CPU386:18,1:16),-3,4)
 S WINDBASE=$ZH($ZH($V(X+$S(CPU386:28,1:26),-3,2))_"0000")
 V 44:$J:$ZB($V(44,$J,2),#1,7):2
 S OUTQUE=$V(WINDBASE+8,-3,2)+WINDBASE
 S OUTOLD=$V(WINDBASE+#0E,-3,2)
 S quesize=$V(WINDBASE+2,-3,2),message=$C(51,PN,1,+#FF)
 S remain=quesize-OUTOLD
 I remain<4 V OUTQUE+OUTOLD::$E(message,1,remain):remain:1,OUTQUE::$E(message,remain+1,4):4-remain:1,WINDBASE+#0E::4-remain:2 G skip
 V OUTQUE+OUTOLD::$C(51,PN,1,+#FF):4:1
 I remain=4 V WINDBASE+#0E::0:2
 E  V WINDBASE+#0E::$V(WINDBASE+#0E,-3,2)+4:2
skip S OFFSET=$S(CPU386:14,1:12)
 V 44:$J:$ZB($V(44,$J,2),#1,2):2
 V 40:$J:$ZB($V(40,$J,2),#10,2):2 ; enable view check
 Q
DISPLAY ;
 W ?25,"DI-BLOCK AT: ",$ZH(DI),!
 W !,"Current port flags:"
 S X=$V(DI+OFFSET,-3,1)
 I 'X W !?3,"no flags set"
 I $ZB(X,1,1) W !?3,"waiting on output"
 I $ZB(X,2,1) W !?3,"output busy"
 I $ZB(X,4,1) W !?3,"xoff state"
 I $ZB(X,8,1) W !?3,"control-o state"
 I $ZB(X,#10,1) W !?3,"waiting on input"
 I $ZB(X,#20,1) W !?3,"interrupt routine echo"
 I $ZB(X,#40,1) W !?3,"read abort"
 I $ZB(X,#80,1) W !?3,"xoff sent"
 W ! Q

%L1DVR8
%L1DVR8 ; DEVRESET 4.0.*     [ 19.07.01  8:37 AM ] [ 05.07.01  3:14 PM ] [ 13.11.00  9:33 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L1RCV,PORT)
 D LOOKUP I 'QF D RESET
 Q
LOOKUP ; Find device and offset for patch
 ; This is used as an entry point by KILLJOB
 ; PORT must be defined
 S QF=0
 S CONFIG=+^["MGR"]SYS("CONFIG",$P(^["MGR"]SYS("CONFIG"),";",2))
 I '$D(^["MGR"]SYS(CONFIG,"DDB",PORT)) S QF=1 Q
 S DEV=$P(^(PORT),",",2)
 S CPU386=($V(0,-4,2)\#100#16=5)
 S CNFG=$V(18,-5),DEVLST=$V(CNFG+8,-3,4)
 F DI=DEVLST:12 Q:$V(DI,-3,1)=0  G:DEV=$P($V(DI,-3,8,1),$C(0)) LOOKUP1
 S QF=2 Q
LOOKUP1 ;
 S DI=$V(DI+8,-3,4)
 I DI=0 S QF=3 Q
 I DEV?1"MCC"2N S QF=4 Q
 I DEV="CON" S QF=5 Q
 S OFFSET=$S(CPU386:14,1:12)
 S IOBUF=$S(CPU386:64,1:50)
 Q
RESET ; Reset the port
 ; Used as an entry point by KILLJOB
 I DEV?1"SPARN".E G SMART
 ; turn off 2,4
 V DI+OFFSET::$ZB($V(DI+OFFSET,-3,1),#F9,1):1
 F X=IOBUF,IOBUF+2 V DI+X+1::$V(DI+X,-3,1):1 ; clear ring buffers
 ZU PORT W $C(0) I '$D(%L1RCV) ZU 0
EXIT Q
ERR I $F($ZS,"<INRPT>"),'$D(%L1RCV) ZU 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
SMART ;
 V 40:$J:$ZB($V(40,$J,2),16,7):2 ; disable view check
 NEW (DI,CPU386,PORT,OFFSET)
 S DDBTAB=$V(7,-5)
 S DI=$V($V(PORT*4+DDBTAB)+76)
 S PN=$V(DI+$S(CPU386:17,1:15),-3,1)
 S X=$V(DI+$S(CPU386:18,1:16),-3,4)
 S WINDBASE=$ZH($ZH($V(X+$S(CPU386:28,1:26),-3,2))_"0000")
 V 44:$J:$ZB($V(44,$J,2),1,7):2
 S OUTQUE=$V(WINDBASE+8,-3,2)+WINDBASE
 S OUTOLD=$V(WINDBASE+#0E,-3,2)
 S quesize=$V(WINDBASE+2,-3,2),message=$C(51,PN,1,+#FF)
 S remain=quesize-OUTOLD
 I remain<4 V OUTQUE+OUTOLD::$E(message,1,remain):remain:1,OUTQUE::$E(message,remain+1,4):4-remain:1,WINDBASE+#0E::4-remain:2 G skip
 V OUTQUE+OUTOLD::$C(51,PN,1,+#FF):4:1
 I remain=4 V WINDBASE+#0E::0:2
 E  V WINDBASE+#0E::$V(WINDBASE+#0E,-3,2)+4:2
skip S OFFSET=$S(CPU386:14,1:12)
 V 44:$J:$ZB($V(44,$J,2),1,2):2
 V 40:$J:$ZB($V(40,$J,2),16,2):2 ; reenable view check
 Q

%L1DVRES
%L1DVRES(PORT) ; DEVICE RESET ;  [ 28.10.01  4:41 PM ] [ 13.11.00  9:33 AM ] [ 13.07.00  4:12 PM ]
 Q
 I $ZV["4.0" D ^%L1DVR8 Q
 I $ZV["4.4" D ^%L1DVR16 Q
 Q

%L1ED
%L1ED ; [ 28.12.23 17:57 ] [ 18.05.05 11:05 ] [ 28.02.05 20:37 ] 
 N L1EDZDIR S L1EDZDIR=$ZDIR
 N %L1DIR
 I $L($G(%NAM)) S %S=%NAM D:%S'="$"&(%S'="-") RED1(%S) D ERG G END
CYC F  S %NONAME=0 D RED Q:%NONAME
END S $ZDIR=L1EDZDIR Q
 ;
RED U $P W ! S %GET="ROUTINE NAME :++24,2,EE,,,C#++8,E,I"
 D ^%L1GET I %S=""!(%TO="END") S %NONAME=1 Q
 I %S="-"!(%S="$") G ERG
 D RED1(%S)
ERG K ^S222($J) M ^S222($J)=^S000($P)
 I '$D(%NAM) K U,L,R
 u $P s $ZT="",%TIP="R" d ^%S2ERG
 S $ZT="" X %chista
 K %Q S %Q("Z")=" SAVE ",%Q("X")=1,%Q("Y")=0 D ^%S1ASK I 'YES G ERED
ERGN S %GET="NAME :++0,20,EE#"_$P($TR($ZPARSE($G(%PR),"NAME"),"_","%"),".")_"++8,E,I"
 D ^%L1GET Q:%S=""
 S %PROG=%S
 s %PR=$TR(%S,"%","_")_".m"
 I $L($G(%L1DIR)) S %PR=%L1DIR_%PR
 S %CMM=$P(^S000($P,1)," ;",2,90) D  S %CMM=$P(%CMM," [ ")_" [ "_$ZD($H,"DD.MM.YY 24:60")_" ] [ "_$P(%CMM,"[ ",2+%DFR,3+%DFR) S ^(1)=$P($G(^S000($P,1))," ;")_" ;"_%CMM
 .S %DFR=0 S %DTOLD=$P($P(%CMM,"[ ",2)," ",1) I $$^%L1DC($H,1)=%DTOLD S %DFR=1
 S $ZT="g WNOOPEN"
 o %PR:(newversion)
 s $ZT=""
 f I=1:1 q:'$D(^S000($P,I))  u %PR w $$STW(^(I)),!
 c %PR u $P
 K ^UTILITY($J),^TMPS111($J)
 M ^UTILITY($J,1,"[ NEW ]")=^S000($P)
 M ^UTILITY($J,2,"[ OLD ]")=^S222($J)
 S ^UTILITY($J,1)="[ NEW ]"
 S ^UTILITY($J,2)="[ OLD ]" D ^%L2RCMP
 S DIR=$ZGBLDIR I %L1DIR="/usr/local/mumps/" S DIR="/usr/local/mumps/mumps.gld"
 M ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=^TMPS111($J)
 S ^[DIR]%ERGS(+$H,%PROG)=$$^%L1ZU(0)
 W !,"COMMENT :",! S %S="" D ^%ZMSL S ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=%S
 S ^[DIR]%ERGS(+$H,%PROG)=$ZROU
 W ! ZLINK %PR
ERED k ^S000($P),^TMPS111($J),^S222($J)
 Q
RNOOPEN U $P W *7,"  NO PROGRAMM ! " q
WNOOPEN U $P W *7," ERROR !" G ERGN
 ;
RED1(%S) s %PR=$TR(%S,"%","_")_".m"
 K ^S000($P)
 S $ZT="g RNOOPEN"
 S %L1DIR=$$DIR(%PR)
 I $L(%L1DIR) D
 .I $E(%L1DIR,$L(%L1DIR))'="/" S %L1DIR=%L1DIR_"/"
 .S %PR=%L1DIR_%PR
 c %PR
 o %PR:(readonly:record=2048:rewind)
 S $ZT="g REOF"
 N I,X S I=0
 f  u %PR r X S I=I+1,^S000($P,I)=$TR(X,$C(9)," ")
REOF ;
 c %PR Q
DIR(%PR) ;
 N %DIR S %DIR=""
 I '$$EXIST^%L1ZOS(%PR) D
 .N OK S OK=0
 .F ND=1:1:$L($ZROU," ") D  Q:OK
 ..N ZD S ZD=$P($ZROU," ",ND) I $E(ZD,$L(ZD))'="/" S ZD=ZD_"/"
 ..I $$EXIST^%L1ZOS(ZD_%PR) S %DIR=ZD,OK=1 Q
 Q %DIR
 ;
STW(ST)
 N ST0,J,SMB
 S ST0=""
 F J=1:1:$L(ST) D
 .S SMB=$E(ST,J)
 .I $A(SMB)>127&($A(SMB)<155) S SMB=$C($A(SMB)-32) ;;,SMB=$TR(SMB,%TES2,%TES1)
 .S ST0=ST0_SMB
 Q ST0
 
 
 
 

%L1ED0
%L1ED ; [ 18.05.05 11:05 ] [ 28.02.05 20:37 ] [ 08.08.03 11:02 ] ; V1
 N L1EDZDIR S L1EDZDIR=$ZDIR
 N %L1DIR
 I $L($G(%NAM)) S %S=%NAM D:%S'="$"&(%S'="-") RED1(%S) D ERG G END
CYC F  S %NONAME=0 D RED Q:%NONAME
END S $ZDIR=L1EDZDIR Q
 ;
RED U $P W ! S %GET="ROUTINE NAME :++24,2,EE,,,C#++8,E,I"
 D ^%L1GET I %S=""!(%TO="END") S %NONAME=1 Q
 I %S="-"!(%S="$") G ERG
 D RED1(%S)
ERG K ^S222($J) M ^S222($J)=^S000($P)
 I '$D(%NAM) K U,L,R
 u $P s $ZT="",%TIP="R" d ^%S2ERG
 S $ZT="" X %chista
 K %Q S %Q("Z")=" SAVE ",%Q("X")=1,%Q("Y")=0 D ^%S1ASK I 'YES G ERED
ERGN S %GET="NAME :++0,20,EE#"_$P($TR($ZPARSE($G(%PR),"NAME"),"_","%"),".")_"++8,E,I"
 D ^%L1GET Q:%S=""
 S %PROG=%S
 s %PR=$TR(%S,"%","_")_".m"
 I $L($G(%L1DIR)) S %PR=%L1DIR_%PR
 S %CMM=$P(^S000($P,1)," ;",2,90) D  S %CMM=$P(%CMM," [ ")_" [ "_$ZD($H,"DD.MM.YY 24:60")_" ] [ "_$P(%CMM,"[ ",2+%DFR,3+%DFR) S ^(1)=$P($G(^S000($P,1))," ;")_" ;"_%CMM
 .S %DFR=0 S %DTOLD=$P($P(%CMM,"[ ",2)," ",1) I $$^%L1DC($H,1)=%DTOLD S %DFR=1
 S $ZT="g WNOOPEN"
 o %PR:(newversion)
 s $ZT=""
 f I=1:1 q:'$D(^S000($P,I))  u %PR w $$STW(^(I)),!
 c %PR u $P
 K ^UTILITY($J),^TMPS111($J)
 M ^UTILITY($J,1,"[ NEW ]")=^S000($P)
 M ^UTILITY($J,2,"[ OLD ]")=^S222($J)
 S ^UTILITY($J,1)="[ NEW ]"
 S ^UTILITY($J,2)="[ OLD ]" D ^%L2RCMP
 S DIR=$ZGBLDIR I %L1DIR="/usr/local/mumps/" S DIR="/usr/local/mumps/mumps.gld"
 M ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=^TMPS111($J)
 S ^[DIR]%ERGS(+$H,%PROG)=$$^%L1ZU(0)
 W !,"COMMENT :",! S %S="" D ^%ZMSL S ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=%S
 S ^[DIR]%ERGS(+$H,%PROG)=$ZROU
 W ! ZLINK %PR
ERED k ^S000($P),^TMPS111($J),^S222($J)
 Q
RNOOPEN U $P W *7,"  NO PROGRAMM ! " q
WNOOPEN U $P W *7," ERROR !" G ERGN
 ;
RED1(%S) s %PR=$TR(%S,"%","_")_".m"
 K ^S000($P)
 S $ZT="g RNOOPEN"
 S %L1DIR=$$DIR(%PR)
 I $L(%L1DIR) D
 .I $E(%L1DIR,$L(%L1DIR))'="/" S %L1DIR=%L1DIR_"/"
 .S %PR=%L1DIR_%PR
 c %PR
 o %PR:(readonly:record=2048:rewind)
 S $ZT="g REOF"
 N I,X S I=0
 f  u %PR r X S I=I+1,^S000($P,I)=$TR(X,$C(9)," ")
REOF ;
 c %PR Q
DIR(%PR) ;
 N %DIR S %DIR=""
 I '$$EXIST^%L1ZOS(%PR) D
 .N OK S OK=0
 .F ND=1:1:$L($ZROU," ") D  Q:OK
 ..N ZD S ZD=$P($ZROU," ",ND) I $E(ZD,$L(ZD))'="/" S ZD=ZD_"/"
 ..I $$EXIST^%L1ZOS(ZD_%PR) S %DIR=ZD,OK=1 Q
 Q %DIR
 ;
STW(ST)
 N ST0,J,SMB
 S ST0=""
 F J=1:1:$L(ST) D
 .S SMB=$E(ST,J)
 .I $A(SMB)>127&($A(SMB)<155) S SMB=$C($A(SMB)-32)
 .S ST0=ST0_SMB
 Q ST0

%L1ENVAR
%L1ENVAR(%VAR) ; [ 05.06.10 20:12 ] [ 06.06.06 07:31 ] [ 17.05.06 15:52 ]
 Q $ZTRNLNM(%VAR)

%L1ER
%L1ER ; [ 20.06.07 08:29 ] [ 20.11.05 14:37 ] [ 04.01.04 11:42 ]
 K (%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C,^%L1TS
 U 0 N $ZT S $ZT="G ER^%L1ER" K %CLEAR
Z X %chista S %SAY=" ERRORS MONITOR " X %XMSGV
 S %GET=":jix`z++3,70,HH#"_$$^%L1DC($H,1)_"++8,D,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S HH=$$^%L1DC(%L1DAT,4) G:'HH Z
 K ^er1($P) N N,I
 S N="",I=0,N0="" F  S N0=$O(^er(HH,N0)) Q:N0=""  D
 .F  S N=$O(^er(HH,N0,N)) Q:N=""  S I=I+1,^er1($P,I)=^(N)_"~"_$R
 K %L1
M S MAC="^er1($P)"
 S %L1("EU")=2,%L1("BE")=6
 S %L1("T2")=" S %SAY="" [""_$$FUNC^%UCASE($ZG)_""]   ""_%L1DAT1_"" "" X %XMSGV"
 S %L1("TXT1")="$P(%NXS,""~"",1,2)_$J("""",15-$L($P(%NXS,""~"",1,2)))\/$E($P(%NXS,""~"",3),1,50)_$J("""",50-$L($P(%NXS,""~"",3)))<>50"
 S %L1("PLACE")="D PLACE^%L1ER"
 X %chista S %L1("NOHB")=""
 D ^%L1NU I FLAG'="" K ^er1($P) G %L1ER
 S %L1("IND")=INDEX
 S INDEX=@MAC
 S MAC=$P(INDEX,"~",4) I $L(MAC,",")<2,$P(INDEX,"~",5)["^er(" S MAC=$P(INDEX,"~",5)
 I $L(MAC)<2 D POISK(INDEX) G M
 S (MAC0,MAC)=$E(MAC,1,$L(MAC)-1)_",""S"")"
 I $D(@MAC)<10 D POISK(INDEX) G M
 ;
M1 D  I FLAG'="" G M
 .N %L1
M2 .S MAC=MAC0 S %L1("EU")=5,%L1("BE")=6
 .S %L1("T2")="D KOT^%L1ER"
 .S %L1("TXT1")="$P(%NXS,""~"")_$J("""",15-$L($P(%NXS,""~"")))"
 .S %L1("US")="%NXS'[""Indirection"""
 .X %chista S %L1("NOHB")=""
 .D ^%L1NU I FLAG'="" Q
 .S %L1("IND")=INDEX
 .S INDEX=@MAC D POISK(INDEX)
 .G M2
 Q
POISK(INDEX) ;
 N %NAM,U,%I,%L1ER,%FLI,%TIP,L,R
 S INDEX=$P($TR($P(INDEX,"~")," ",""),"(")
 S %NAM=$P($P(INDEX,"^",2),":"),U=+$P($P(INDEX,"^"),"+",2)
 Q:%NAM?.P
 I $D(%JSP) D ED^%W1JSP(%NAM) Q
 D
 .N MET S MET=$P($P(INDEX,"^"),"+")
 .K ^S000($P) D RED1^%L1ED(%NAM)
 .I $L(MET) F %I=1:1 Q:'$D(^S000($P,%I))  I $P($P(^S000($P,%I)," "),"(")=MET S U=U+%I Q
 .K ^S000($P)
 ;
 S %L1ER="",%FLI=1,%TIP="R" K L,R D ^%L1ED K %L1ER
 Q
ER W #,"$ZS=",$ZS H 2 G %L1ER
PLACE ;
 S INDEX=$G(%IND(%K+%I-%COLI)),%NXS=$G(@%L1("MAC")@(INDEX))
 S %SAY=$$FUNC^%UCASE($P(%NXS,"~",4,5)) X %XMSGN
 Q
KOT S %SAY=" ["_$$FUNC^%UCASE($ZG)_"]   "_%L1DAT1_" " X %XMSGV
 S %SAY=$$FUNC^%UCASE($P(@($P(MAC0,",",1,$L(MAC0,",")-1)_")"),"~",2,3))_"++3,60,HH,I" X %XMSG
 Q

%L1F2G
%L1F2G(%F,%G) ; [ 19.11.05 17:25 ] [
 K @%G
 o %F:(readonly:record=2048:rewind)
 N $ZT S $ZT="g REOF"
 N I,X S I=0
 f  u %F r X S I=I+1,@%G@(I)=X
REOF ;
 c %F Q

%L1FIND
%L1FIND ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 U $P:(X=0:Y=21:CLEARSCREEN)
ZF S %GET="FILE NAME  :++20,5,EE,,R#++50,E,I"
 D ^%L1GET Q:%S=""!(%TO="END")
 S %NMF=%S
 I %S'[".",%S'["*" S %NMF=%NMF_"*"
 S %GET="BEGIN FROM :++22,5,EE#"_$ZDIR_"++50,E,I"
 D ^%L1GET I %S=""!(%TO="END") G ZF
 S %PATH=%S
 S %CMD="find "_%PATH_" -name '"_%NMF_"' > l1os.f"
 ZSY %CMD
 ZSY "vi l1os.f"
 Q

%L1FL
%L1FL ;DJM;FIRST ROUTINE LINE DISPLAY; [ 08.12.03 11:40 ] [ 21.08.03 11:18 ] [ 05/23/99  1:41 PM ]
 ;Copyright Micronetics Design Corp. @1984
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC)
 S LAN=$G(^PL("LAN")) D ^%L1C U 0 W %ENG
 X %chista
 W "First Line Display Utility"
 N $ZT S $ZT="ZG "_$ZL_":ERROR^%L1FL"
 U 0 K ^TMPS111($J) S %SH=0
 K QUIT D CALL^%RSEL I $D(%ZR)<10 W !,"No routines selected" G EXIT
 S %CC="",%PCT=0
 W !!!
RSEL1 F %I=1:1 S %CC=$O(%ZR(%CC)) Q:%CC=""  D
 .S %RR=$TR(%CC,"%","_")_".m" Q:'$P($$^%L1FLP(%RR),"^",2)  ;Q:'$$EXIST^%L1ZOS(%RR)
 .C %RR O %RR:(readonly:rewind)
 .S TXT=$TR($P(%RR,"."),"_","%") D S1
 .U %RR R TXT C %RR D S1 S TXT="" D S1
 .U $P W:'(%SH#10) "."
 S TXT="" D S1 S TXT=(%SH\2)_" Routine"_$S(%PCT=1:"",1:"s")_" processed." D S1
 S %S2V("PROG")="VIEW^%L1FL"
 S %S2V("TXT1")=" SHOW PROGRAMM - <F9> "
 S %S2V("IND")=2,%S2V("NOHB")=""
 D ^%S2VIEW
 G EXIT
RSEL2 ;
 I $F($ZS,"<NOPGM>") S $ZT="ZG "_$ZL_":RSEL2^%L1FL" S TXT="Routine: "_%CC_" not found." D S1 G RSEL1
 G ERROR
EXIT ;
 S $ZT="" K ^TMPS111($J) S ^PL("LAN")=LAN K:'$G(^PL("LAN")) ^PL("LAN")
 Q
ERROR ;
 I $F($ZS,"CTRAP") U 0 W !!,"...Aborted." D EXIT
 X ^ZT
 Q
S1 S %SH=%SH+1,^TMPS111($J,%SH)=TXT
 K TXT Q
VIEW Q:'$G(U)  N %RN S %RN=$P($P($E(^TMPS111($J,U),1,8)," "),":") G VW
TV(%RN) ;
VW N %LAB,%RN0 S %LAB=""
 S %RN0=%RN I %RN["^" S %LAB=$P(%RN,"^"),%RN0=$P(%RN,"^",2)
 S %RN=$TR(%RN0,"%","_")_".m"
 I $L(%RN) D
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%RN,%RN0,%LAB) D ^%L1C
 .S $ZT="ZG "_$ZL_":EVIEW^%L1FL"
 .O %RN:(readonly:rewind)
 .K ^S999($J) S MAC1="^TMPS111($J)",MAC2="^S999($J)" D ^%S1GC1
 .K ^TMPS111($J)
 .F I=1:1 U %RN R A Q:$ZEOF  S ^TMPS111($J,I)=A I $L(%LAB) D
 ..I $P(A," ")=$P(%LAB,"+") S %S2V("U")=I+$P(%LAB,"+",2)
 .C %RN U $P S $ZT="",%S2V("NOHB")=""
 .S %S2V("TXT1")=" "_%RN0_" . PRESS <ESC> TO EXIT "
 .D ^%S2VIEW
 .K ^TMPS111($J)
 .S MAC2="^TMPS111($J)",MAC1="^S999($J)" D ^%S1GC1
 .K ^S999($J)
EVIEW Q
 ;
ERG ;
 Q:'$G(U)  N %PR S %PR=$P($P($E(^TMPS111($J,U),1,8)," "),":") Q:'$L(%PR)
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%PR) D ^%L1C
 K ^S000($P)
 S %L1ER="",%FLI=1 X ^%ERG(2) K %L1ER
 K ^S000($P)
 Q

%L1FL2P
%L1FL2P ; FIL2 -> PORT; [ 03.05.00  1:32 PM ] [ 08/19/2000  8:29 AM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
BG K  D ^%L1C
FL U 0:(0::::0) X %chista S %SAY=" FILE --> PORT " X %XMSGV
 S %GET="ENTER FILE NAME :++3,5,EE#"_$G(%FILE)_"++30,E,I++++ FIND - F7 " D ^%L1GET
 I %TO="F7" D  G FL
 .S %L1OS="1,2,3,4,5,6"
 .D O13^%L1OS Q:'$D(%L2VNM)  Q:%L2VNM=""  Q:%L2VNM["<DIR"  X %chista
 .S %FILE=%PATH_"\"_$TR($E(%L2VNM,1,8)_"."_$E(%L2VNM,11,13)," ","")
 Q:%S=""!(%TO="END")
 S %FILE=%S
PO S %GET="ENTER PORT NUMBER :++5,5,EE#"_$G(%PORT)_"++2,E,I" D ^%L1GET I %S=""!(%TO="END") G FL
 S %PORT=%S
DLM S %GET="ENTER END-LINE DELIMITER :++7,5,EE#"_$G(%DLM,"13,10")_"++9,E,I"
 D ^%L1GET I %S=""!(%TO="END") G PO
 S %DLM=%S
 G BODY
TV(%FILE,%PORT) ;
BODY I $$^%L1ZOS(10,%FILE)<0 S %SAY=" FILE IS NOT EXIST ! " X %XMSGV(1) G FL
 C 51 O 51:(%FILE:"R":::"S":$C(13,10)):2 E  S %SAY=" PORT 51 BUSY ! " X %XMSGV(1) Q
 O %PORT:(0::::1):2 E  S %SAY=" PORT "_%PORT_" BUSY ! " X %XMSGV(1) G PO
 F  U 51 R %A S ZC=$ZC U 0 W !,%A U %PORT W %A W @("$C("_%DLM_")") Q:ZC
 C 51 I %PORT'=$P,%PORT>1 C %PORT
 U 0 S %GET="DONE . PRESS <ENTER> " D N^%L1GET
INT S %XX=0,%YY=9 X %POSIC X %chiste U $P:(ECHO:WIDTH=80)
 F  U 0 R !!,"ENTER COMMAND TO PORT : ",%COM Q:%COM=""!(%TO="END")  ZU %PORT W %COM W @("$C("_%DLM_")")
ZP R !!,"CREATE MUMPS ROUTINE (Y/N) : ",YES S:YES="y"!(YES="k") YES="Y" I YES'="Y",YES'="N" G ZP
 S KV=""""
 I YES="Y" D
 .R !!,"ROUTINE NAME : ",RNAME Q:RNAME=""
 .C 51 O 51:(%FILE:"R":::"S":$C(13,10)):2 E  S %SAY=" PORT 51 BUSY ! " X %XMSGV(1) Q
 .S X(1)="ZR  ZI RNAME_"" ; CREATED FROM FILE ""_%FILE ZI "" N PORT S PORT=""_%PORT_"" O PORT U PORT"" X X(2),X(3)"
 .S X(2)="F  U 51 R %A S ZC=$ZC X X(20) ZI "" W ""_%B_KV_"",!"" Q:ZC"
 .S X(3)="ZI "" C PORT"" ZI "" Q  ;"" X X(4)"
 .S X(4)="ZS @RNAME"
 .S X(20)="S %B=KV F %I=1:1:$L(%A) S %B=%B_$S($A(%A,%I)<32!($A(%A,%I)>154):KV_""_$C(""_$A(%A,%I)_"")_""_KV,1:$E(%A,%I))"
 .X X(1)
 .C 51 U 0 S %GET="DONE . PRESS <ENTER> " D N^%L1GET
 G FL

%L1FLAG
%L1FLAG(GLOB) ; [ 18.04.12 16:22 ] [ 27.02.06 15:16 ] [ 27.11.05 22:08 ] [
 N %JOB S %JOB=$G(@GLOB)
 I %JOB=$J Q 0
 ;
 I %JOB="" S @GLOB=$J Q 0
 Q 1
 D ^%L1LJ
 I '$D(^listjob(%JOB)) S @GLOB=$J Q 0
 Q 1

%L1FLOP
%L1FLOP ; [ 29.06.03 22:00 ] [ 27.05.03 08:15 ] [
 ZSY "umount /mnt/floppy/" H 1
 ZSY "mount /mnt/floppy/"
 Q

%L1FLP
%L1FLP(%X) ; DOS FILE ATTRIBUTES : NAME^SIZE^$H^TM [ 14.11.09 10:01 ] [ 28.02.07 09:56 ] [ 15.10.06 14:27 ]
 I $$WEB^W3MAIN'["192.168.1.182" Q $$^%L1SZ(%X)
 ;
 N %I,%SZ,%DT,%TM,%WN,%A,%NM,%M
 N $ZT S $ZT="ZG "_$ZL_":ER"
 S %NM=$ZPARSE(%X,"NAME")_$ZPARSE(%X,"TYPE")
 S %XX=$ZPARSE(%X)
 S %WN="L1FLP."_$ZPARSE($P,"NAME")
 ZSY "ls -l "_%XX_" > "_%WN
 O %WN:(READONLY:REWIND:EXCEPTION="G ER^%L1FLP")
 U %WN R %A
 C %WN:DELETE
 Q $$PRS(%A)
 ;
ER U $P Q ""
 ;Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec;
 ;ipe;tax;nxu;`tx;n`i;iep;iel;`eb;qth;`ew;pea;cvn;
PRS(%A) ; --> %NM,%SZ,%DT,%TM
 I $G(%A)="" Q ""
 S %A=$$SP1^%L1FRM(%A)
 I %A?.P Q ""
 N $ZT S $ZT=$G(^ZT)
 N %I,%M,%M1,%MM,%DT,%SZ,%TM,%NM
 D ^%L1TS
 S %MM=$T(ER+1)
 F %I=2:1:$L(%MM,";")-1 S %M($P(%MM,";",%I))=%I-1
 S %MM=$T(ER+2)
 F %I=2:1:$L(%MM,";")-1 S %M1($P(%MM,";",%I))=%I-1
 S %SZ=$P(%A," ",5)
 I $P(%A," ",6)["-" D  G PRS1
 .N %DT0 S %DT0=$P(%A," ",6)
 .S %DT0=$P(%DT0,"-",3)_"/"_$P(%DT0,"-",2)_"/"_$P(%DT0,"-")
 .S %DT=$$^%L1DC(%DT0,3)
 .S %TM=$P(%A," ",7)
 S %DT=$P(%A," ",6)_$P(%A," ",7)
 I $L(%DT)<4 S %DT="",%TM="" G PRS1
 S %MM("MMD")=$G(%M($E(%DT,1,3)),"00")
 I '%MM("MMD") S %MM("MMD")=$G(%M1($E(%DT,1,3)),"00")
 I '%MM("MMD") S %MM("MMD")=$G(%M1($TR($E(%DT,1,3),TS1,TS0)),"00")
 S %MM("MMH")=$P($ZD($H,"DD/MM/YY"),"/",2)
 S %MM("YYH")=$P($ZD($H,"DD/MM/YY"),"/",3)
 S %MM("YYD")=%MM("YYH")
 I %MM("MMD")>%MM("MMH") S %MM("YYD")=%MM("YYD")-1
 S %DT=$$^%L1DC($TR($E(%DT,4,5)," ",0)_"/"_%MM("MMD")_"/"_%MM("YYD"),3)
 S %TM=$P(%A," ",8)
PRS1 S %NM=$P(%A," ",9)
 Q %NM_"^"_%SZ_"^"_%DT_"^"_%TM

%L1FLTR
%L1FLTR ; [ 04.07.03 22:48 ] [ 03.07.03 13:02 ] [
 N A,FL,TSS,TS0,END,FL,EXITEMU,WORD
BG D ^%L1TS S END=0,WORD="",EXITEMU=0
 N $ZT S $ZT="G END^%L1FLTR"
 K ^EXITEMU($P)
 U $P:(NOECHO:NOWRAP)
 F  U $P R *A:500 Q:A<0  D  Q:END
 .S WORD=WORD_$C(A)
 .S WORD=$E(WORD,$L(WORD)-20,$L(WORD))
 .;;S ^WORD($P)=WORD
 .;;S ^WORD($P,"A")=A
 .I A=13!(A=32)!(A=10)!(A=3) S WORD="" I EXITEMU S END=1 Q
 .I $D(^EXITEMU($P)) S END=1
 .I $$FUNC^%UCASE(WORD)["EXITEMU" S EXITEMU=1
 .I A>127 W $TR($C(A),TSS,TS0) Q
 .I A>96&(A<123),$G(FL) W $C(A-32) Q
 .W $C(A)
 ;;ZSY "kill "_$J
END ;
 Q
TV S FL=1 G BG

%L1FND
%L1FND ; [ 29.10.25 12:44 ] [ 17.09.21 13:03 ] [ 06.09.21 15:10 ] 
 N (JB,%ARG,%REM) D ^%L1C
 S %SCRN="FND"
 D ^%L1SC
 I $G(DIR)="" Q
 ;
 S FL="/home/gtmuser/l1fnd"_$J
 I $$EXIST^%L1ZOS(FL) ZSY "rm "_FL
 S CMD="find "_DIR_" -type f"
 I $G(DEPTH) S CMD=CMD_" -maxdepth="+DEPTH
 I NAME'="" S CMD=CMD_" -name """_NAME_""" "
 I SIZE'="" D
 .I SIZE'["+",SIZE'["-" S SIZE="+"_SIZE
 .S CMD=CMD_" -size "_SIZE_" "
 I AGO S CMD=CMD_" -mtime "_AGO
 I EXEC'="" S CMD=CMD_" -exec "_EXEC_" {} \;"
 S CMD=CMD_" 2>/dev/null >> "_FL
 ZSY CMD
 ZSY "vi "_FL
 ZSY "rm "_FL
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1FP
%L1FP(%INP,%DLMT,%STRNG,%NDLMT) ; FIND STRING AFTER DELIMITER [ 05/23/99  4:40 PM ] [ 02/17/94 11:01 AM ]
 ; ---- %INP - VH. STR.
 ;      %DLMT - DELIMITER
 ;      %STRNG - STRING, KOT NADO NAITI
 ;      %NDLMT - POSLE KAKOGO DELIMITERA NACHAT POISK
 I $G(%DLMT)=""!($G(%INP)="")!($G(%STRNG)="") Q 0
 S %FND=0
 N %HLK,%J F %J=$G(%NDLMT)+1:1:$L($G(%INP),%DLMT) S %HLK=$P(%INP,%DLMT,%J) I %HLK=%STRNG S %FND=%J Q
 Q %FND

%L1FRM
%L1FRM ; [ 30.09.26 13:59 ] [ 30.06.26 10:01 ] [ 26.10.25 07:45 ] 
PRS(%TXT,%MKT,%RZD) ;
 N %I,%NM F %I=1:1:$L(%MKT,%RZD) S %NM=$P(%MKT,%RZD,%I) I %NM'?.P S @%NM=$$SPA($P(%TXT,%RZD,%I))
 Q
SET1(%MKT,%VRB,%RZD) ;
 N %I,%NM F %I=1:1:$L(%MKT,%RZD) S %NM=$P(%MKT,%RZD,%I) I %NM'?.P,$D(@%NM) S $P(@%VRB,%RZD,%I)=@%NM
 Q
SET(%VR1,%STR1,%RZD1,%VR2,%STR2,%RZD2) ;
 N %I,%NM,%L1FRM
 F %I=1:1:$L(%STR1,%RZD1) D
 .S %NM=$P(%STR1,%RZD1,%I) I %NM'?.P S %L1FRM("SET",%NM)=$P($G(%VR1),%RZD1,%I)
 F %I=1:1:$L(%STR2,%RZD2) D
 .S %NM=$P(%STR2,%RZD2,%I) I %NM'?.P,$D(%L1FRM("SET",%NM)) D
 ..S $P(@%VR2,%RZD2,%I)=%L1FRM("SET",%NM)
 Q
HBR(TXT,LN) ;
 I $G(%ENGLISH),TXT'?.P.N1"."1N.N S TXT=$E(TXT,1,LN)_$J("",LN-$L(TXT)) Q TXT
 S TXT=$J($E(TXT,$L(TXT)-LN+1,$L(TXT)),LN) Q TXT
ENG(TXT,LN) ;
 S TXT=$E(TXT,1,LN)_$J("",LN-$L(TXT)) Q TXT
FMTENG(TXT)
 N TX S TX=$E(TXT)_$$FUNC^%LCASE($E(TXT,2,1000))
 Q TX
NULL(TXT) ; --------- DELETE LEADING ZEROES
 N I F I=1:1:$L(TXT)+1 Q:$E(TXT,I)'=0
 S TXT=$E(TXT,I,255) Q TXT
CENTR(TXT,LN) ;
 I '$G(LN) S LN=$$WD
 N RV S RV=LN-$L(TXT)\2+$L(TXT)
 S TXT=$J(TXT,RV)_$J("",LN-RV)
 Q TXT
 ;
CENTRB(TXT,LN) ;---- CENTER FOR BIG LETEERS
 I '$G(LN) S LN=$$WD
 S LN=LN\2
 Q $J("",(LN-$L(TXT))\2)_TXT
 ;;Q $J("",LN-($L(TXT)*2)\4)_TXT
 ;;Q $J("",(29-$L(TXT))\2)_TXT
SPR(TXT) ;      ---- CLEAR RIGHT SPACE
 N I F I=$L(TXT):-1:0 Q:$E(TXT,I)'=" "
 S TXT=$E(TXT,1,I) Q TXT
SPL(TXT) ;      ---- CLEAR LEFT SPACE
 N I F I=1:1:$L(TXT)+1 Q:$E(TXT,I)'=" "
 S TXT=$E(TXT,I,$L(TXT)) Q TXT
SPA(TXT) ;      ---- CLEAR RIGHT & LEFT SPACE
 S TXT=$$SPL(TXT) S TXT=$$SPR(TXT) Q TXT
SPC(TXT) ;     TXT --> T X T
 N I,TXT1 S TXT1="" F I=1:1:$L(TXT) S TXT1=TXT1_$E(TXT,I)_" "
 S TXT=TXT1 Q TXT
SP1(TXT) ;TXT   TXT -> TXT TXT
 N I,TXT1,FL S TXT1="",FL=1 F I=1:1:$L(TXT) D
 .S FL=$S($E(TXT,I)=" ":FL-1,1:2) S:FL<0 FL=0
 .I FL S TXT1=TXT1_$E(TXT,I)
 Q TXT1
NUM(TXT) ;      ---- CLEAR RIGHT SPACE
 N TX S TX=""
 N I F I=1:1:$L(TXT) I $E(TXT,I)?1N S TX=TX_$E(TXT,I)
 Q TX
L(ST,%D1,%D2) ;-- LENGTH OF LINE (B+N), %D1'=%D2
 N L,N,%I,ST1 S L=0
 I %D1=%D2 D  Q L
 .F %I=1:1:$L(ST,%D1)  S L=L+($L($P(ST,%D1,%I))*$S(%I#2:1,1:2))
 S L=$L($P(ST,%D1)),%I=2,N=""
L1 S ST1=$P(ST,%D1,%I) I $L(ST1)=0 Q L
 S ST1=$P(ST1,%D2)
 S L=L+($L(ST1)*2)+$L($P($P(ST,%D2,%I),%D1))
 S %I=%I+1 G L1
 ;
LTX(TX) ;
 N SM,LTX,PRB S LTX=0,PRB=0
 N J,J1,J2 F J=1:1:$L(TX) D
 .F J1="B","BB" D  Q
 ..I $G(%MDP(J1))'="",$E(TX,J,J+$L(%MDP(J1))-1)=%MDP(J1) S PRB=1,J=J+$L(%MDP(J1))
 .F J1="N" D  Q
 ..I $G(%MDP(J1))'="",$E(TX,J,J+$L(%MDP(J1))-1)=%MDP(J1) S PRB=0,J=J+$L(%MDP(J1))
 .N PRM S PRM=0
 .F J2="" F  S J2=$O(%MDP(J2)) Q:J2=""  D
 ..I J2="B"!(J2="BB")!(J2="N") Q
 ..I $G(%MDP(J2))'="",$E(TX,J,J+$L(%MDP(J2))-1)=%MDP(J2) S J=J+$L(%MDP(J2)),PRM=1
 .Q:PRM
 .I $E(TX,J)="" Q
 .I J>$L(TX) Q
 .I PRB S LTX=LTX+2 Q
 .S LTX=LTX+1
 Q LTX
 ;
 ;
RPL(TXT,%S1,%S2) ;  --- %S1 --> %S2
 N TXT1,I S TXT1="" I %S1="" Q TXT
 F I=1:1:$L(TXT,%S1) S TXT1=TXT1_$P(TXT,%S1,I)_$S($P(TXT,%S1,I,255)[%S1:%S2,1:"")
 Q TXT1
RPLA(%TXT,%ARR,%DLM1,%DLM2) ; %TXT[(DLM1+SUBSTR+DLM2) -->- %ARR(<SUBSTR>)
 N TXT1,TXT2,TXT3,I,IND S TXT1=%TXT,I=1 I %TXT="" Q TXT1
 I %TXT'[%DLM1!(%TXT'[%DLM2)!($D(@%ARR)<10) Q TXT1
 S TXT1=$P(%TXT,%DLM1)
RPLA1 S IND=$P($P(%TXT,%DLM1,I+1),%DLM2),TXT3=$P($P(%TXT,%DLM2,I+1),%DLM1)
 I IND'="",$D(@%ARR@(IND)) S TXT1=TXT1_@%ARR@(IND)_TXT3
 E  S TXT1=TXT1_%DLM1_IND I $L(%TXT,%DLM2)>I S TXT1=TXT1_%DLM2_TXT3
 S I=I+1 I $L(%TXT,%DLM1)'>I Q TXT1
 G RPLA1
 ;
CLRDLM(%TXT,%DLM1,%DLM2) ; %TXT[(DLM1+SUBSTR+DLM2) -->- %TXT WITHOUT SUBSTR
 N %TXT1,%TXT2,%TXT3,I S I=1,%TXT1="",%TXT2="",%TXT3=""
CLRDLM1 I %TXT'[%DLM2!(%TXT'[%DLM1) S %TXT1=%TXT1_%TXT G ECLRDLM
 S %TXT2=$P(%TXT,%DLM1)
 I '$L($P(%TXT,%DLM1,2,255)) S %TXT1=%TXT1_%TXT2_$S(%TXT[%DLM1:%DLM1,1:"") G ECLRDLM
 S %TXT=%DLM1_$P(%TXT,%DLM1,2,255)
 ;
 I %TXT[%DLM1,%TXT[%DLM2 S %TXT3=$P(%TXT,%DLM2,2)
 I %TXT[%DLM2,%TXT[%DLM1 S %TXT=$P(%TXT,%DLM2,2,255)
 I %TXT3[%DLM1 S %TXT3=$P(%TXT3,%DLM1)
 I $L(%TXT3) S %TXT=$P(%TXT,%TXT3,2,255)
 ;;I '$L($P(%TXT,%DLM1,3,255)) S %TXT1=%TXT1_%TXT2_%TXT3 G ECLRDLM
 ;;S %TXT=%DLM1_$P(%TXT,%DLM1,3,255)
 ;
 S %TXT1=%TXT1_%TXT2_%TXT3
 I (%TXT2=""&(%TXT3=""))!(%TXT="") G ECLRDLM
 G CLRDLM1 
ECLRDLM ;
 Q %TXT1
 ;
CLWEB(TXT) ;
 N TXT1 S TXT1=$$RPL(TXT,"%","$1$")
 S TXT1=$$RPL^%L1FRM(TXT1," ","%20")
 S TXT1=$$RPL(TXT1,"""","%22")
 S TXT1=$$RPL(TXT1,"#","%23")
 S TXT1=$$RPL(TXT1,"\","%5C")
 S TXT1=$$RPL(TXT1,"/","%2F")
 S TXT1=$$RPL(TXT1,"~","%7E")
 S TXT1=$$RPL(TXT1,"'","%27")
 S TXT1=$$RPL(TXT1,"`","%60")
 S TXT1=$$RPL(TXT1,"+","%2B")
 S TXT1=$$RPL(TXT1,"&","%26")
 S TXT1=$$RPL(TXT1,"=","%3D")
 S TXT1=$$RPL(TXT1,";","%3B")
 S TXT1=$$RPL(TXT1,":","%3A")
 S TXT1=$$RPL(TXT1,",","%2C")
 S TXT1=$$RPL(TXT1,"(","%28")
 S TXT1=$$RPL(TXT1,")","%29")
 Q TXT1
 ;
CNWEB(TXT) ;
 N TXT1 S TXT1=$$RPL(TXT,"$1$","%")
 S TXT1=$$RPL^%L1FRM(TXT1,"%25","%")
 S TXT1=$$RPL^%L1FRM(TXT1,"%20"," ")
 S TXT1=$$RPL(TXT1,"%22","""")
 S TXT1=$$RPL(TXT1,"%23","#")
 S TXT1=$$RPL(TXT1,"%5C","\")
 S TXT1=$$RPL(TXT1,"%2F","/")
 S TXT1=$$RPL(TXT1,"%7E","~")
 S TXT1=$$RPL(TXT1,"%27","'")
 S TXT1=$$RPL(TXT1,"%60","`")
 S TXT1=$$RPL(TXT1,"%2B","+")
 S TXT1=$$RPL(TXT1,"%26","&")
 S TXT1=$$RPL(TXT1,"%3D","=")
 S TXT1=$$RPL(TXT1,"%3A",":")
 S TXT1=$$RPL(TXT1,"%3B",";")
 S TXT1=$$RPL(TXT1,"%2C",",")
 S TXT1=$$RPL(TXT1,"%3F","?")
 S TXT1=$$RPL(TXT1,"%60","`")
 S TXT1=$$RPL(TXT1,"%28","(")
 S TXT1=$$RPL(TXT1,"%29",")")
 ;
 N J F J=1:1:$L(TXT1)  Q:$E(TXT1)'="?"  S TXT1=$E(TXT1,2,$L(TXT1))
 Q TXT1
 ;
CLWEBKV(TXT) ;
 N TXT1 S TXT1=$$RPL(TXT,"""","\""")
 S TXT1=$$RPL(TXT1,"'","\'")
 Q $$^W4CLWTXT(TXT1)  ; --- 29/12/21 - $$CLWEB
 ;
CLHT(OU)
 N I,OU1 S OU1="" F I=1:1:$L(OU,"<E>")  D
 .I (I#2) S OU1=OU1_$$CLHTML($P(OU,"<E>",I)) Q
 .S OU1=OU1_$P(OU,"<E>",I)
 Q OU1
 ;
CLHTML(TXT) ;
 N TXT1
 I '$D(H2UG) D
 .S TXT1=$$RPL(TXT,"""","&#34;")
 .S TXT1=$$RPL(TXT1,"'","&#39;")
 I $D(H2UG) D
 .S TXT1=$$RPL(TXT,"""","\u0022")
 .S TXT1=$$RPL(TXT1,"'","\u0027")
 Q TXT1
 ;
CLEAR(V) ;
 N V0,J S V0=""
 S V=$TR(V,"?","")
 F J=1:1:$L(V)  I $A(V,J)>31,$A(V,J)<127 S V0=V0_$E(V,J)
 Q V0
 ;
ESC(TXT,ESCY) ;
 N TXT1,I,X S I=1,TXT1="",X=1,TXT=TXT_" "
ESC1 F I=I:1:$L(TXT) Q:$E(TXT,I)'=" "
 I I=$L(TXT) Q TXT1
 S TXT1=TXT1_$C(27,91)_ESCY_";"_I_"H"
 S X=I
 F I=I:1:$L(TXT) Q:$E(TXT,I)=" "
 D ESC2 I I=$L(TXT) Q TXT1
 S X=I G ESC1
ESC2 S TXT1=TXT1_$E(TXT,X,I-($E(TXT,I)=" "))
 Q
 ;
H2UG(TXT) ;
 N H2UG S H2UG=""
 I $$^%W1LNG'="H" Q $$CLHT(TXT)
 I $$^%W1LNG="R" Q $$CLHT($$R2U(TXT))
 I $$^%W1LNG'="H" Q $$CLHT(TXT)
 N OU,OU1,I S OU=$$^%W1H2U(TXT),OU1=""
 ;
 N J F J=96:1:122 D
 .N SMB S SMB=$$FUNC^%DH(J+1392)
 .S SMB=$E(SMB,$L(SMB)-3,$L(SMB))
 .S H2U($C(J))="\u"_SMB
 ;
 F I=1:1:$L(OU,"<E>")  D
 .I (I#2) S OU1=OU1_$$CLHT($$H2U1($P(OU,"<E>",I))) Q
 .S OU1=OU1_$P(OU,"<E>",I)
 Q OU1
 ;
 ;
H2U(TXT,WIN,NOTRG) ;
 I $G(TXT)="" Q ""
 S TXT=$$CNWEB^%L1FRM(TXT)
 I $$^%W1LNG="R" Q $$CLHT($$R2U(TXT))
 I $$^%W1LNG'="H" Q $$CLHT(TXT)
 ;
 I $G(NOTRG) G H2UMET
 I $$GETP^%W1PRM("ELPOS"),$$SUPER^W3PRM!$$TAW^W4PRM,$E(TXT)'="_" D
 .S TXT=$$RPL(TXT,"ogley","dtew")
 .S TXT=$$RPL(TXT,"zepgley","zetew")
 .S TXT=$$RPL(TXT,"xvln","(z)i`tew")
 .S TXT=$$RPL(TXT,"mixvln","mi`tew")
 ;
 I $$GETP^%W1PRM("ELPOS"),$$SUPER^W3PRM D
 .S TXT=$$RPL(TXT,"dcrqn","zepg")
 ;
H2UMET ; 
 I TXT["%60" S TXT=$$RPL(TXT,"%60","`")
 N OU,OU1,I S OU=$$^%W1H2U(TXT),OU1=""
 N H2U
 N J F J=96:1:122 S H2U($C(J))="&#"_(J+1392)_";"
 I $G(WIN) K H2U F J=224:1:250 S H2U($C(J))="&#"_(J+1392-128)_";"
 F I=1:1:$L(OU,"<E>")  D
 .I (I#2) S OU1=OU1_$$CLHT($$H2U1($P(OU,"<E>",I))) Q
 .S OU1=OU1_$P(OU,"<E>",I)
 Q OU1
 ;
H2U1(O) ;
 N O1 S O1=""
 N I F I=1:1:$L(O) D
 .S O1=O1_$S($D(H2U($E(O,I))):H2U($E(O,I)),1:$E(O,I))
 Q O1
 ;
U2H(ST) ;
 N ST1,IND
 I $E(ST)="?" S ST=$E(ST,2,255)
 I $A(ST)=$C(160) S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND="" Q
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .;;S ST1=$$INV^%L1FRM(ST1)
 I FL S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392)
 Q ST1
 ;
R2U(TXT)
 N I,J,M1,M2,SMB,SMB1,SMB2,TXT1,LNG S M2="",TXT1=""
 S M1="A,B,V,G,D,E,J,Z,I,!I,K,L,M,N,O,P,R,S,T,U,F,H,C,!04,!06,!S,!T,Y,!M,!E,!U,!A"
 S M1=M1_",a,b,v,g,d,e,j,z,i,!i,k,l,m,n,o,p,r,s,t,u,f,h,c,!4,!6,!s,!t,y,!m,!e,!u,!a"
 F I=1040:1:1103 S M2=M2_I_","
 S TXT1="",LNG=0
 F I=1:1:$L(TXT) D
 .S SMB=$E(TXT,I),SMB1="",SMB2=""
 .I SMB="!" D
 ..S SMB1=$E(TXT,I+1)
 ..I SMB1="0"!(SMB1="%") S SMB2=$E(TXT,I+2)
 ..I SMB1="%" S LNG=1-LNG,SMB=SMB2
 ..E  S SMB=SMB_SMB1_SMB2
 .N OK S OK=0
 .I 'LNG F J=1:1:$L(M1,",") I $P(M1,",",J)=SMB S TXT1=TXT1_"&#"_$P(M2,",",J)_";",OK=1 Q
 .I 'OK S TXT1=TXT1_SMB
 .I SMB2'="" S I=I+2 Q
 .I SMB1'="" S I=I+1 Q
 Q TXT1
 ;
WDOP(TXT,DL) ;
 Q $J(TXT,DL)
 ;;Q $$RPL^%L1FRM($J(TXT,DL)," ","%20")
 ;
INV(TXT) ;
 N TXT1,I S TXT1="" F I=1:1:$L(TXT) S TXT1=$E(TXT,I)_TXT1
 Q TXT1
 ;
INVD(TXT,D1,D2) ;
 I $G(D2)="" S D2=D1
 N TXT1,I S TXT1="" F I=1:1:$L(TXT,D1) S TXT1=$P(TXT,D1,I)_D2_TXT1
 Q $E(TXT1,1,$L(TXT1)-1)
 ;
INVH(TXT) ;
 N DIR,N S DIR=$$^%W1DIR
 I $G(DIR)="LTR" Q TXT
 Q $$^%W1H2U(TXT)
 ;
 N I,J,HB,W,TXT1
 S TXT1=""
 N DMLS S DLMS="=-)(*&^%$#@!\[]';?><|"
 N J F J=1:1:$L(DLMS) S TXT=$$RPL^%L1FRM(TXT,$E(DLMS,J)," "_$E(DLMS,J)_" ")
 N I F I=1:1:$L(TXT," ") D
 .S W=$P(TXT," ",I)
 .S HB=0 F J=1:1:$L(W) I $$INVHB($A($E(W,J))) S HB=1 Q
 .S TXT1=$S(HB:$$INV(W),1:W)_" "_TXT1
 N J F J=1:1:$L(DLMS) S TXT1=$$RPL^%L1FRM(TXT1," "_$E(DLMS,J)_" ",$E(DLMS,J))
 Q $$SPA(TXT1)
 ;
INVHBW(TXT) ;
 N TXT1,TXT2,I,I1,A,B,TS0,TS1,TSS,HB,HB0
 S HB=0,HB0=0 S TXT0=""
 F I=1:1:$L(TXT) Q:$A($E(TXT,I))>95
 S TXT0=$E(TXT,1,I-1),TXT=$E(TXT,I,$L(TXT))
 S I=0,TXT1="",TXT2="" D ^%L1TS
INVHBW1 S I=I+1 I I>$L(TXT) D INVHBW2 G INVHBWE
 S A=$A($E(TXT,I))
 ;I $$INVEN(A) S HB0=HB,HB=0
 I '$$INVHB(A) S HB0=HB,HB=0
 I $$INVHB(A) S HB0=HB,HB=1
 I A>31&(A<48)!(A=58)!(A=124) D
 .F I1=I+1:1 Q:$E(TXT,I1)'=" "
 .;I $$INVEN($A($E(TXT,I1))) S HB=0 Q
 .I '$$INVHB($A($E(TXT,I1))) S HB=0 Q
 .I $$INVHB($A($E(TXT,I1))) S HB=1
 I HB0'=HB,HB,$L(TXT2) S TXT1=$C(A)_TXT2_TXT1 S TXT2="" G INVHBW1
 I HB0'=HB,'HB,$L(TXT2) S TXT1=$C(A)_TXT2_TXT1 S TXT2="" G INVHBW1
 I HB S TXT2=$C(A)_TXT2 G INVHBW1
 S TXT2=TXT2_$C(A) G INVHBW1
INVHBWE Q $TR(TXT1,TS0,TS1)
 ;
INVHBW2 N I2 S HB=0 F I2=1:1:$L(TXT2) I $$INVHB($A($E(TXT2,I2))) S HB=1 Q
 I $L(TXT2),'HB S TXT1=TXT0_TXT1_TXT2 S TXT2="" Q
 I $L(TXT2),HB S TXT1=TXT0_TXT2_TXT1 S TXT2=""
 Q
 ;
INVEN(A) ;
 I A>47&(A<58)!(A>64&(A<91))!(A=124) Q 1
 Q 0
 ;
INVHB(A) I A>95&(A<123) Q 1
 I A>127&(A<155) Q 1
 I A>223&(A<251) Q 1
 Q 0
 ;
INVEH(TXT) ;
 N A S A=$$SPL(TXT)
 Q A_$J("",$L(TXT)-$L(A))
 ;
CLST(ST,%B,%N) ;
 S %PRW1=0
 I '$D(%LIGHT1) D ^%L1C
 I '$D(TSS)!'$D(TS0) D ^%L1TS
 I ST[%CLI S ST=$$RPL^%L1FRM(ST,%CLI,%B),%PRW1=1
 I ST[($C(27,91,48,109)) S ST=$$RPL^%L1FRM(ST,$C(27,91,48,109),%N) S %PRW1=0
 I ST[$TR($C(27,91,48,109),TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR($C(27,91,48,109),TS0,TSS),%N) S %PRW1=0
 I ST[$TR(%CLI,TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR(%CLI,TS0,TSS),%B),%PRW1=1
 I ST[$TR($C(27,91,48,109),TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR($C(27,91,48,109),TS0,TSS),%N) S %PRW1=0
 I ST[%CL0,%CL0'="" S ST=$$RPL^%L1FRM(ST,%CL0,"")
 I ST[$TR(%CL0,TS0,TSS),%CL0'="" S ST=$$RPL^%L1FRM(ST,$TR(%CL0,TS0,TSS),"")
 I ST[%HBR S ST=$$RPL^%L1FRM(ST,%HBR,"")
 I ST[%ENG S ST=$$RPL^%L1FRM(ST,%ENG,"")
 I ST[%LIGHT1 S ST=$$RPL^%L1FRM(ST,%LIGHT1,"")
 I ST[$TR(%LIGHT1,TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR(%LIGHT1,TS0,TSS),"")
 I %PRW1 S ST=ST_%N S %PRW1=0
 Q ST
 ;
CLA(ST) ;--- >64,<122
 N ST1,%I S ST1="" F %I=1:1:$L(ST) I $A($E(ST,%I))'<32,$A($E(ST,%I))'>122 S ST1=ST1_$E(ST,%I)
 Q ST1
 ;
MC(%ST1,%D1,%ST2,%D2) ;-- PECHAT LEFI MACKET
 N %MP,%I,%ST3 S %ST3=" "
 F %I=1:1:$L(%ST1,%D1)  S %RV=$P(%ST1,%D1,%I) S %ST3=%ST3_$J(%RV,$L($P(%ST2,%D2,%I+1)))_" "
 Q $E(%ST3,1,$L(%ST3)-1)
 ;
MCH(%ST1,%D1,%ST2,%D2) ; -- PECHAT LEFI MACKET (AFUH)
 N %MP,%I,%ST3 S %ST3=" "
 F %I=1:1:$L(%ST1,%D1)  S %RV=$P(%ST1,%D1,$L(%ST1,%D1)-%I+1) S %ST3=%ST3_$$HBR^%L1FRM(%RV,$L($P(%ST2,%D2,%I+1)))_" "
 Q $E(%ST3,1,$L(%ST3)-1)
 ;
FNDARR(%REF,%VL,%PR) ;
 S %IND=""
 N %N,%OK S %N="",%OK=0 F  S %N=$O(@%REF@(%N)) Q:%N=""  D  Q:%OK
 .I '$G(%PR),@%REF@(%N)=%VL S %OK=1 Q
 .I '$G(%PR),@%REF@(%N)[%VL S %OK=1 Q
 I %OK S %IND=%N
 Q %OK_"\"_%IND
 ;
DLG(%FRAZA,%DLG) ;------------ %FRAZA --> %CHAST(1-%KSS) LEFI %DLG
 I '$G(%NR) S %NR=1
 N %I,%POZ K %CHAST(%NR)
 S %I=0 G DELGEND1:$L(%FRAZA)'>%DLG
DELGC F %POZ=$L(%FRAZA)-%DLG+1:1:$L(%FRAZA) G DLG1:",:;?-  "[$E(%FRAZA,%POZ)
 S %I=%I+1,%CHAST(%NR,%I)="-"_$E(%FRAZA,$L(%FRAZA)-%DLG+2,$L(%FRAZA)),%FRAZA=$E(%FRAZA,1,$L(%FRAZA)-%DLG+1) G DELGEND1
DLG1 S %I=%I+1,%CHAST(%NR,%I)=$J($E(%FRAZA,%POZ,$L(%FRAZA)),%DLG)
 S %FRAZA=$E(%FRAZA,1,%POZ-1)
DELGEND1 G:$L(%FRAZA)>%DLG DELGC
 S %KSS=%I+1
 S %CHAST(%NR,%KSS)=$J(%FRAZA,%DLG)
 I %CHAST(%NR,%KSS)["<B>" D
 .N %DLM S %DLM="<B>"
 .N %A S %A=%CHAST(%NR,%KSS)
 .N %J,%A1,%A2 S %A1=$P(%A,%DLM)
 .F %J=2:2:$L(%A,%DLM) D
 ..S %A2=$P(%A,%DLM,%J)
 ..S %A1=%A1_$C(27,45,2)_%A2_$C(27,45,0)_$P(%A,%DLM,%J+1)
 .S %CHAST(%NR,%KSS)=%A1
 Q
 ;
DLGE(%FRAZA,%DLG) ;------------ %FRAZA --> %CHAST(1-%KSS) LEFI %DLG
 N %SM,%RZD S %RZD=",:;?-  "
 I '$G(%NR) S %NR=1
 N %I,%POZ,%J,%K K %CHAST(%NR) S %K=1
 S %I=0 I $L(%FRAZA)'>%DLG S %CHAST(1,1)=$$ENG(%FRAZA,%DLG) Q
 F %J=1:1:$L(%FRAZA) Q:$E(%FRAZA,%J)'=" "  S %K=%K+1
 S %FRZ=$E(%FRAZA,%K,%K+%DLG-1)
 I %RZD[$E(%FRAZA,%K+%DLG) S %POZ=$L(%FRZ) G DLGE2
DLGE1 F %POZ=$L(%FRZ):-1:1 G DLGE2:%RZD[$E(%FRZ,%POZ)
DLGE2 ;
 I %POZ=1 S %POZ=$L(%FRZ)
 S %SM=0
 I %RZD[$E(%FRZ,%POZ) S %POZ=%POZ-1,%SM=1
 S %I=%I+1,%CHAST(%NR,%I)=$$ENG($E(%FRZ,1,%POZ),%DLG)
 S %K=%K+%POZ+%SM Q:%K>$L(%FRAZA)
 I $E(%FRAZA,%K)=" " S %K=%K+1
 ;;F %J=%K:1:$L(%FRAZA) Q:$E(%FRAZA,%J)'=" "  S %K=%K+1
 S %FRZ=$E(%FRAZA,%K,%K+%DLG-1)
 I %K+%DLG>$L(%FRAZA) D  Q
 .S %I=%I+1,%CHAST(%NR,%I)=$$ENG(%FRZ,%DLG)
 I %RZD[$E(%FRAZA,%K+%DLG) S %POZ=$L(%FRZ) G DLGE2
 G DLGE1
 ;
H2J(ST) ;
 S ST=$$CNWEB(ST)
 N ST1,IND
 N FL S FL=0,ST1=ST,IND=""
 S ST=$$H2U(ST)
 D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I $E(ST,J)="<",$E(ST,J+1)=">" S ST1=ST1_"<>",J=J+1 Q
 ..I $E(ST,J)=">",$E(ST,J+1)="<" S ST1=ST1_"<>",J=J+1 Q
 ..I FL,$E(ST,J)=";" S FL=0 S ST1=ST1_IND_"," S IND="" Q
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$A($E(ST,J))_","
 I $E(ST1,$L(ST1))="," S ST1=$E(ST1,1,$L(ST1)-1)
 Q ST1
 ;
MIN2HR(DAKOT) ;
 Q $$DOP(DAKOT\60)_":"_$$DOP(DAKOT#60)
 ;
DOP(TM,DL) ;
 I '$G(DL) S DL=2
 Q $TR($J(TM,DL)," ",0)
 ;
DCD(A) ;
 I '$D(TSS) D ^%L1TS
 N J,B,CHR
 S B="",J=0
DCDC S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 I CHR'=215 D  G DCDC
 .S B=B_$C(CHR)
 S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 S B=B_$C(CHR-16)
 G DCDC
DCDE ;
 S B=$$SPA(B)
 S B=$TR(B,TSS,TS0)
 Q $$^%W1H2U(B)
 ;
COUPLE(PRM,DLM) ;
 I $G(DLM)="" S DLM=";"
 N A,B,COUPL,I
 F I=1:1:$L(PRM,DLM)-1 D
 .S COUPL=$P(PRM,DLM,I)
 .S A=$P(COUPL,"=") Q:A=""
 .S B=$P(COUPL,"=",2)
 .S @A=B
 Q
ISCODE(TXT) ;
 I $G(TXT)="" Q 0
 N OK S OK=1
 N NMB S NMB=0
 N J,SMB F J=1:1:$L(TXT) D  Q:'OK
  .S SMB=$A(TXT,J)
  .I SMB<45 S OK=0 Q
  .I SMB>57&(SMB<65) S OK=0 Q
  .I SMB>47&(SMB<58) S NMB=1
  .I SMB>90&(SMB<97) S OK=0 Q
  .I SMB>122 S OK=0 Q
 ;
 I 'NMB S OK=0
 Q OK
 ;
CLRCOUPLE(TXT,BG,FIN)
 N TX S POS=0,TX=""
CCC S POS1=$F(TXT,BG,POS) I 'POS1 S TX=TX_$E(TXT,POS,800) G ECC
 S TX=TX_$E(TXT,POS,POS1-$L(BG)-1)
 S POS=POS1
 S POS2=$F(TXT,FIN,POS)
 I 'POS2 S TX=TX_$E(TXT,POS,800) G ECC
 S POS=POS2
 G CCC
ECC Q TX
 ;
NBSP(COL)
 N NBSP,%I S NBSP="" F %I=1:1:COL S NBSP=NBSP_"&nbsp;"
 Q NBSP
 ;
SHOWCARD(CARD,FULL) ; 
 N CARDV S CARDV="" 
 I CARD["..." Q "..."_$P(CARD,"...",2,10)
 I CARD["***" Q "***"_$P(CARD,"***",2,10)
SHOWCARD1 S CARD=$TR(CARD,"-","")
 S CARDV=$E(CARD,$L(CARD)-3,$L(CARD))_$S($L(CARDV):"-"_CARDV,1:"")
 I '$G(FULL) Q "..."_CARDV
 S CARD=$E(CARD,1,$L(CARD)-4) 
 I $L(CARD)>3 G SHOWCARD1 
 I $L(CARD)>0 Q CARD_"-"_CARDV 
 I $E(CARDV)="-" S CARDV=$E(CARDV,2,$L(CARDV))
 Q CARDV 
 ;
ZPT(NUM) ; 
 N R,R1 S R=$R
 ;;I $G(^P1PRM("NOZPT")) S:$D(@R) R1="" Q NUM
 I NUM'["." Q NUM
 N L S L=$L(NUM)
 S NUM=$$SPA(NUM)
 N A,A1,A2,B S A1=""
 S A=$P(NUM,".") 
 S B=$P(NUM,".",2)
 ;;S:$D(@R) R1=""
ZPT1 S A2=$E(A,$L(A)-2,$L(A))
 S A1=$S(A1="":A2,A2:A2_","_A1,1:A2_A1)
 S A=$E(A,1,$L(A)-3)
 I '$L(A),$L(B) Q $J(A1_"."_B,L)
 I '$L(A),'$L(B) Q $J(A1,L)
 G ZPT1
 ;
ZPTN(NUM) ; 
 S NUM=$G(NUM)
 Q $$ZPT($J(NUM,2,2)) 
 ;
WD(STAM) ; 
 Q 39 
 ;
TEL(TEL) ; 
 I $G(TEL)="" Q TEL 
 I TEL["-" Q TEL 
 I $E(TEL,1,2)="05" Q $E(TEL,1,3)_"-"_$E(TEL,4,14) 
 I $E(TEL)="+" Q $E(TEL,1,4)_"-"_$E(TEL,5,14) 
 I $E(TEL)="1",$L(TEL)>7 Q $E(TEL)_"-"_$E(TEL,2,4)_"-"_$E(TEL,5,14) 
 I $E(TEL)'=0 Q TEL 
 Q $E(TEL,1,2)_"-"_$E(TEL,3,14) 
 ;
ARG(TX,DLM) ; 
 I $G(DLM)="" S DLM="&"
 K %ARG
 N I,COUP,A,B F I=1:1:$L(TX,DLM) D
 .S COUP=$P(TX,DLM,I)
 .S A=$P(COUP,"=")
 .S B=$P(COUP,"=",2) 
 .I $E(A)?1U S %ARG(A)=B
 Q 
 ;
UPDPRM(ST,PRM) ; 
 S ST=$G(ST)
 S PRM=$G(PRM)
 I PRM="" Q ST
 S:$E(ST)'="&" ST="&"_ST 
 N PRML S PRML=$P(PRM,"=")_"=" 
 I $E(PRML)'="&" S PRML="&"_PRML 
 N ST1,ST2 S ST1=$P(ST,PRML) 
 S ST2=$P(ST,PRML,2) 
 S ST2=$P(ST2,"&",2,200) 
 I $L(ST1),$E(PRM)'="&" S PRM="&"_PRM 
 I $L(ST2),$E(PRM,$L(PRM))'="&" S PRM=PRM_"&" 
 ; 
 S ST=ST1_PRM_ST2 
 S:$E(ST)="&" ST=$E(ST,2,255) 
 I $E(ST,$L(ST))="&" S ST=$E(ST,1,$L(ST)-1) 
 Q ST
 ;
VWENG(TX) ; 
 N TX2 S TX2=""
 N J F J=1:1:$L(TX," ") D
 .N WORD S WORD=$P(TX," ",J)
 .S WORD=$$FUNC^%UCASE($E(WORD))_$$FUNC^%LCASE($E(WORD,2,100))
 .S TX2=TX2_WORD_" "
 Q $$SPA^%L1FRM(TX2)
 ;
ABS(%VL) ; 
 I $G(%VL)<0 Q -%VL 
 Q $G(%VL) 
 ;
ISNUM(%VL,%ZN) ; 
 S %VL=$$SPA(%VL)
 I $G(%ZN),%VL?."-"1N.N.".".N Q 1
 I $G(%ZN),%VL?."-."1N.N Q 1
 I %VL?1N.N.".".N.E Q 1
 I %VL?1"."1N.N.E Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1FRM0
%L1FRM ;                                                                                                                    [ 23.04.02 12:15 PM ] [ 04.04.02 10:39 AM ] [ 29.03.02  1:59 PM ]
PRS(%TXT,%MKT,%RZD) ;
 N %I,%NM F %I=1:1:$L(%MKT,%RZD) S %NM=$P(%MKT,%RZD,%I) I %NM'?.P S @%NM=$P(%TXT,%RZD,%I)
 Q
SET1(%MKT,%VRB,%RZD) ;
 N %I,%NM F %I=1:1:$L(%MKT,%RZD) S %NM=$P(%MKT,%RZD,%I) I %NM'?.P,$D(@%NM) S $P(@%VRB,%RZD,%I)=@%NM
 Q
SET(%VR1,%STR1,%RZD1,%VR2,%STR2,%RZD2) ;
 N %I,%NM,%L1FRM
 F %I=1:1:$L(%STR1,%RZD1) D
 .S %NM=$P(%STR1,%RZD1,%I) I %NM'?.P S %L1FRM("SET",%NM)=$P($G(%VR1),%RZD1,%I)
 F %I=1:1:$L(%STR2,%RZD2) D
 .S %NM=$P(%STR2,%RZD2,%I) I %NM'?.P,$D(%L1FRM("SET",%NM)) D
 ..S $P(@%VR2,%RZD2,%I)=%L1FRM("SET",%NM)
 Q
HBR(TXT,LN) ;
 I $G(%ENGLISH),TXT'?.P.N1"."1N.N S TXT=$E(TXT,1,LN)_$J("",LN-$L(TXT)) Q TXT
 S TXT=$J($E(TXT,$L(TXT)-LN+1,$L(TXT)),LN) Q TXT
ENG(TXT,LN) ;
 S TXT=$E(TXT,1,LN)_$J("",LN-$L(TXT)) Q TXT
NULL(TXT) ; --------- DELETE LEADING ZEROES
 N I F I=1:1:$L(TXT)+1 Q:$E(TXT,I)'=0
 S TXT=$E(TXT,I,255) Q TXT
CENTR(TXT,LN) ;
 N RV S RV=LN-$L(TXT)\2+$L(TXT)
 S TXT=$J(TXT,RV)_$J("",LN-RV) Q TXT
CENTRB(TXT,LN) ;---- CENTER FOR BIG LETEERS
 Q $J("",LN-($L(TXT)*2)\4)_TXT
SPR(TXT) ;      ---- CLEAR RIGHT SPACE
 N I F I=$L(TXT):-1:1 Q:$E(TXT,I)'=" "
 S TXT=$E(TXT,1,I) Q TXT
SPL(TXT) ;      ---- CLEAR LEFT SPACE
 N I F I=1:1:$L(TXT) Q:$E(TXT,I)'=" "
 S TXT=$E(TXT,I,$L(TXT)) Q TXT
SPA(TXT) ;      ---- CLEAR RIGHT & LEFT SPACE
 S TXT=$$SPL(TXT) S TXT=$$SPR(TXT) Q TXT
SPC(TXT) ;     TXT --> T X T
 N I,TXT1 S TXT1="" F I=1:1:$L(TXT) S TXT1=TXT1_$E(TXT,I)_" "
 S TXT=TXT1 Q TXT
SP1(TXT) ;TXT   TXT -> TXT TXT
 N I,TXT1,FL S TXT1="",FL=1 F I=1:1:$L(TXT) D
 .S FL=$S($E(TXT,I)=" ":FL-1,1:2) S:FL<0 FL=0
 .I FL S TXT1=TXT1_$E(TXT,I)
 Q TXT1
L(ST,%D1,%D2) ;-- LENGTH OF LINE (B+N), %D1'=%D2
 N L,N,%I,ST1 S L=0
 I %D1=%D2 D  Q L
 .F %I=1:1:$L(ST,%D1)  S L=L+($L($P(ST,%D1,%I))*$S(%I#2:1,1:2))
 S L=$L($P(ST,%D1)),%I=2,N=""
L1 S ST1=$P(ST,%D1,%I) I $L(ST1)=0 Q L
 S ST1=$P(ST1,%D2)
 S L=L+($L(ST1)*2)+$L($P($P(ST,%D2,%I),%D1))
 S %I=%I+1 G L1
RPL(TXT,%S1,%S2) ;  --- %S1 --> %S2
 N TXT1,I S TXT1="" I %S1="" Q TXT
 F I=1:1:$L(TXT,%S1) S TXT1=TXT1_$P(TXT,%S1,I)_$S($P(TXT,%S1,I,255)[%S1:%S2,1:"")
 Q TXT1
RPLA(%TXT,%ARR,%DLM1,%DLM2) ; %TXT[(DLM1+SUBSTR+DLM2) -->- %ARR(<SUBSTR>)
 N TXT1,TXT2,TXT3,I,IND S TXT1=%TXT,I=1 I %TXT="" Q TXT1
 I %TXT'[%DLM1!(%TXT'[%DLM2)!($D(@%ARR)<10) Q TXT1
 S TXT1=$P(%TXT,%DLM1)
RPLA1 S IND=$P($P(%TXT,%DLM1,I+1),%DLM2),TXT3=$P($P(%TXT,%DLM2,I+1),%DLM1)
 I IND'="",$D(@%ARR@(IND)) S TXT1=TXT1_@%ARR@(IND)_TXT3
 E  S TXT1=TXT1_%DLM1_IND I $L(%TXT,%DLM2)>I S TXT1=TXT1_%DLM2_TXT3
 S I=I+1 I $L(%TXT,%DLM1)'>I Q TXT1
 G RPLA1
ESC(TXT,ESCY) ;
 N TXT1,I,X S I=1,TXT1="",X=1,TXT=TXT_" "
ESC1 F I=I:1:$L(TXT) Q:$E(TXT,I)'=" "
 I I=$L(TXT) Q TXT1
 S TXT1=TXT1_$C(27,91)_ESCY_";"_I_"H"
 S X=I
 F I=I:1:$L(TXT) Q:$E(TXT,I)=" "
 D ESC2 I I=$L(TXT) Q TXT1
 S X=I G ESC1
ESC2 S TXT1=TXT1_$E(TXT,X,I-($E(TXT,I)=" "))
 Q
INV(TXT) ;
 N TXT1,I S TXT1="" F I=1:1:$L(TXT) S TXT1=$E(TXT,I)_TXT1
 Q TXT1
INVD(TXT,D1,D2) ;
 N TXT1,I S TXT1="" F I=1:1:$L(TXT,D1) S TXT1=$P(TXT,D1,I)_D2_TXT1
 Q $E(TXT1,1,$L(TXT1)-1)
INVH(TXT) ;
 N I,J,HB,W,TXT1
 S TXT1=""
 N I F I=1:1:$L(TXT," ") D
 .S W=$P(TXT," ",I)
 .S HB=0 F J=1:1:$L(W) I $$INVHB($A($E(W,J))) S HB=1 Q
 .S TXT1=$S(HB:$$INV(W),1:W)_" "_TXT1
 Q $$SPA(TXT1)
INVHBW(TXT) ;
 N TXT1,TXT2,I,I1,A,B,TS0,TS1,TSS,HB,HB0
 S HB=0,HB0=0 S TXT0=""
 F I=1:1:$L(TXT) Q:$A($E(TXT,I))>95
 S TXT0=$E(TXT,1,I-1),TXT=$E(TXT,I,$L(TXT))
 S I=0,TXT1="",TXT2="" D ^%L1TS
INVHBW1 S I=I+1 I I>$L(TXT) D INVHBW2 G INVHBWE
 S A=$A($E(TXT,I))
 ;I $$INVEN(A) S HB0=HB,HB=0
 I '$$INVHB(A) S HB0=HB,HB=0
 I $$INVHB(A) S HB0=HB,HB=1
 I A>31&(A<48)!(A=58)!(A=124) D
 .F I1=I+1:1 Q:$E(TXT,I1)'=" "
 .;I $$INVEN($A($E(TXT,I1))) S HB=0 Q
 .I '$$INVHB($A($E(TXT,I1))) S HB=0 Q
 .I $$INVHB($A($E(TXT,I1))) S HB=1
 I HB0'=HB,HB,$L(TXT2) S TXT1=$C(A)_TXT2_TXT1 S TXT2="" G INVHBW1
 I HB0'=HB,'HB,$L(TXT2) S TXT1=$C(A)_TXT2_TXT1 S TXT2="" G INVHBW1
 I HB S TXT2=$C(A)_TXT2 G INVHBW1
 S TXT2=TXT2_$C(A) G INVHBW1
INVHBWE Q $TR(TXT1,TS0,TS1)
 ;
INVHBW2 N I2 S HB=0 F I2=1:1:$L(TXT2) I $$INVHB($A($E(TXT2,I2))) S HB=1 Q
 I $L(TXT2),'HB S TXT1=TXT0_TXT1_TXT2 S TXT2="" Q
 I $L(TXT2),HB S TXT1=TXT0_TXT2_TXT1 S TXT2=""
 Q
INVEN(A) ;
 I A>47&(A<58)!(A>64&(A<91))!(A=124) Q 1
 Q 0
INVHB(A) I A>95&(A<123) Q 1
 I A>127&(A<155) Q 1
 I A>223&(A<251) Q 1
 Q 0
INVEH(TXT) ;
 N A S A=$$SPL(TXT)
 Q A_$J("",$L(TXT)-$L(A))
CLST(ST,%B,%N) ;
 S %PRW1=0
 I '$D(%LIGHT1) D ^%L1C
 I '$D(TSS)!'$D(TS0) D ^%L1TS
 I ST[%CLI S ST=$$RPL^%L1FRM(ST,%CLI,%B),%PRW1=1
 I ST[($C(27,91,48,109)) S ST=$$RPL^%L1FRM(ST,$C(27,91,48,109),%N) S %PRW1=0
 I ST[$TR($C(27,91,48,109),TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR($C(27,91,48,109),TS0,TSS),%N) S %PRW1=0
 I ST[$TR(%CLI,TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR(%CLI,TS0,TSS),%B),%PRW1=1
 I ST[$TR($C(27,91,48,109),TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR($C(27,91,48,109),TS0,TSS),%N) S %PRW1=0
 I ST[%CL0,%CL0'="" S ST=$$RPL^%L1FRM(ST,%CL0,"")
 I ST[$TR(%CL0,TS0,TSS),%CL0'="" S ST=$$RPL^%L1FRM(ST,$TR(%CL0,TS0,TSS),"")
 I ST[%HBR S ST=$$RPL^%L1FRM(ST,%HBR,"")
 I ST[%ENG S ST=$$RPL^%L1FRM(ST,%ENG,"")
 I ST[%LIGHT1 S ST=$$RPL^%L1FRM(ST,%LIGHT1,"")
 I ST[$TR(%LIGHT1,TS0,TSS) S ST=$$RPL^%L1FRM(ST,$TR(%LIGHT1,TS0,TSS),"")
 I %PRW1 S ST=ST_%N S %PRW1=0
 Q ST
CLA(ST) ;--- >64,<122
 N ST1,%I S ST1="" F %I=1:1:$L(ST) I $A($E(ST,%I))'<32,$A($E(ST,%I))'>122 S ST1=ST1_$E(ST,%I)
 Q ST1
MC(%ST1,%D1,%ST2,%D2) ;-- PECHAT LEFI MACKET
 N %MP,%I,%ST3 S %ST3=" "
 F %I=1:1:$L(%ST1,%D1)  S %RV=$P(%ST1,%D1,%I) S %ST3=%ST3_$J(%RV,$L($P(%ST2,%D2,%I+1)))_" "
 Q $E(%ST3,1,$L(%ST3)-1)
MCH(%ST1,%D1,%ST2,%D2) ; -- PECHAT LEFI MACKET (AFUH)
 N %MP,%I,%ST3 S %ST3=" "
 F %I=1:1:$L(%ST1,%D1)  S %RV=$P(%ST1,%D1,$L(%ST1,%D1)-%I+1) S %ST3=%ST3_$$HBR^%L1FRM(%RV,$L($P(%ST2,%D2,%I+1)))_" "
 Q $E(%ST3,1,$L(%ST3)-1)
FNDARR(%REF,%VL,%PR) ;
 S %IND=""
 N %N,%OK S %N="",%OK=0 F  S %N=$O(@%REF@(%N)) Q:%N=""  D  Q:%OK
 .I '$G(%PR),@%REF@(%N)=%VL S %OK=1 Q
 .I '$G(%PR),@%REF@(%N)[%VL S %OK=1 Q
 I %OK S %IND=%N
 Q %OK_"\"_%IND

%L1FTP
%L1FTP(ADR,FL) ; [ 10.11.16 15:51 ] [ 06.08.15 13:55 ] [ 04.08.15 08:53 ]
 ;;N %ST S %ST="ncftpput -u lev -p 17101957 "_ADR_" /home/lev/ "_FL_" > /dev/null"
 N %ST S %ST="/pos/sbin/ftpsend.sh "_FL_" "_ADR ; -- /home/lev/upload
 ;;N %ST S %ST=$$WEBL^W3MAIN_"ftpsend.sh "_FL_" "_ADR
 S ^L1FTP(+$H,"CMD",$P($H,",",2))=%ST
 ZSY %ST
 S ^L1FTP(+$H,"ZSY",$P($H,",",2))=$ZSY
 Q  ;
 ;
TV(ADR,FL,USR,PSW) ;
 S PORT=44828
 S ADR="ftp1.marketman.co.il"
 S USR="rashad"
 S PSW="d8fdfSDFew82k"
 D TV1(FL,ADR,USR,PSW,PORT) ;
 Q
 ;
TV1(FL,ADR,USR,PSW,PORT) ;
 S %ST="/usr/bin/ncftpput -u "_USR_" -p "_PSW_" -P "_PORT_" "_ADR_" . "_FL_" > /dev/null"
 S ^L1FTP(+$H,"CMD",$P($H,",",2))=%ST
 ZSY %ST
 S ^L1FTP(+$H,"ZSY",$P($H,",",2))=$ZSY
 Q
TV2(FL);
 S PORT=44828
 S ADR="ftp1.marketman.co.il"
 S USR="rashad"
 S PSW="d8fdfSDFew82k"
 S %ST="/usr/bin/ncftpput -u "_USR_" -p "_PSW_" -P "_PORT_" "_ADR_" NewFormat "_FL_" > /dev/null"
 S ^L1FTP(+$H,"CMD",$P($H,",",2))=%ST
 ZSY %ST
 S ^L1FTP(+$H,"ZSY",$P($H,",",2))=$ZSY
 Q
 
 
 
 
 
 

%L1G2F
%L1G2F(GL,FL) ; [ 27.10.09 17:29 ] [ 30.04.07 12:48 ] [ 07.12.05 21:36 ]
 O FL::1 E  Q 0
 I $$EXIST^%L1ZOS(FL) C FL:DELETE
 O FL:(WRITE:NEWVERSION)
 U FL
 D WR(GL) ;ZWR @GL
 C FL
 Q 1
GR(FL) ;
 I $$^%L1ZOS(10,FL)<0 Q 0
 O FL:(REWIND:READONLY:EXCEPT="G ER")
 U FL F  R A Q:$ZEOF  I $E(A)="^" D
 .N A2,A3 S J=$$FND(A) Q:'J
 .S A2=$E(A2,J+1,1200)
 .S A3=$E(A2,1,J-1)
 .S @A3=A2
EOF C FL
 Q 1
ER U $P
 I $P($ZS,",",3)["EOF" G EOF
 Q 0
WR(MAC) ;
 N %PR,%MAC1,%MAC2,%ORD
 S %ORD=1
 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 S %MAC2=$E($R,1,$L($R)-1)_$S($E(MAC,$L(MAC))=")":",",1:"")
 I %PR W MAC_"="_@MAC,!
 S %MAC1=MAC I $E(%MAC1,$L(%MAC1))=")" S %MAC1=$E(%MAC1,1,$L(%MAC1)-1)_","""")"
 I $E(%MAC1,$L(%MAC1))'=")" S %MAC1=%MAC1_"("""")"
 S %MAC1=$Q(@%MAC1) I %MAC1="" Q
 F  Q:%MAC1'[%MAC2  Q:%MAC1=""  W %MAC1_"="_@%MAC1,! S %MAC1=$Q(@%MAC1)
 K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2
 Q
 ;
FND(A) ;
 N J,FL
 S J=0,FL=0
FND1 S J=J+1 I J>$L(A) Q 0
 I $E(A,J)="(" S FL=1
 I $E(A,J)=")" S FL=0
 I $E(A,J)="=",'FL Q J
 G FND1

%L1GATE
%L1GATE(MDPHONE) ;                         [ 01.02.04 13:41 ] [ 06/20/2002  12:52 PM ]
 H 15
 S PORTN=$G(^PL("MDPORT"),4)
 S MDMOD=1
 I '$D(MDPHONE) S MDPHONE="086812270"
 S MDTON="T"
 S US="U PORTN:(NOECHO:NOWRAP:NOCENABLE:PASTHRU:TERM=$C(13,10))"
 S MDXON=$G(^PL("MDXON"),"&K4")
 D %L2MD(PORTN,MDMOD,$G(MDPHONE),MDTON,US,MDXON,$G(LKH1))
 Q
%L2MD(PORTN,USERMOD,NUMBER,MDTONE,US,XON,MDLKH) ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,JOB,PORTN,USERMOD,NUMBER,MDTONE,MDLKH,%L1MDOK,US,XON,%DELAY,%L2MD)
 D ^%L1C S %L1MDOK=0,%L2MD="",%L1RCV="",JOB=$J
 ;;S $ZT="ZG "_$ZL_":ERR^%L2MD"
 S PRT=$P K ^L1GATE(JOB,"MODEM") S ^L1GATE(JOB,"MODEM")="BEG"
 ;I $P=PORTN!'PORTN D MSG("CANNOT SELECT YOUR OWN DEVICE.") G EXIT
 U $P:(CENABLE:CTRAP=$C(3)) O PORTN::0 E  D MSG("..LINE IN USE..WAITING..") O PORTN D MSG("READY")
 ;X US
 ;D HANGUP
 X US ;;I $ZB($ZA,2,1) D MSG("DEVICE "_PORTN_" IS AN OUTPUT ONLY DEVICE.") G EXIT
INIT ;
 S %DC=0 S %DT=0,%Y=""
P0 X US D CLPORT S %ST="AT&F"_$G(XON)_$C(13)
 D MSG(%ST)
 F %J=1:1:$L(%ST) W $E(%ST,%J) D DELAY
P01 X US R *%Y1:1 E  S %DC=%DC+1 G:%DC<12 P01:%DC#4,P0 D MSG("NO CARRIER") G EXIT
 G:%Y1=1 EXIT
 I %Y1'=13 S %Y=%Y_$C(%Y1) G P01
 D MSG(%Y) S %DT=%DT+1 S ^L1GATE(JOB,"MODEM","ATZ",%DT)=%Y
 G:%Y1=1 EXIT
 I %Y'["OK" G:%DT<12 P01:%DT#4,P0 D MSG("NO CARRIER") G EXIT
 S %DT=0
 I $G(NUMBER) D DELAY G TP1
TP1 X US S NUMBER=$TR(NUMBER,"-","") D CLPORT
 S ST="ATD"_$G(MDTONE,"P")_"W"_NUMBER_$C(13) W ST
 D MSG(ST)
 S TXT=%HBR_$$HBR^%L1FRM($G(MDLKH),30)_" "_$$HBR^%L1FRM(NUMBER,10)_%ENG
 D MSG(TXT) X US
 H 5
 S OK=0
 F I=1:1:60 R A:1 D  Q:OK  S ^L1GATE(JOB,"MODEM","CONN",I)=A D MSG(A)
 .I $F(A,"CONN") S OK=1 Q
 .I $F(A,"BUS") S OK=2 Q
 .I $F(A,"NO CAR") S OK=3 Q
 .I $F(A,"NO DIAL") S OK=4 Q
 I OK'=1 G EXIT
 I OK=1 K ^L1GATE(JOB,"MODEM") D MSG("MODEM IN USE !")
 S %L1MDOK=OK
EXIT H 1
 Q
ERR S %L1MDOK=$ZS G EXIT
HANGUP ;
 S %L1RCV="" D ^%L1DVRES(PORTN)
 X US D HNG^%L1HANG("ATH0ZS0=0")
 Q
CLPORT X US ;
 F I=1:1:%DELAY R *A:0
 I A>0 F  R *A:1 E  Q
 Q
DELAY ;
 F %JJJ=1:1:%DELAY
 Q
MSG(TXT) ;
 N IND S IND=$O(^L1GATE(JOB,"MSG",999999),-1)+1
 S ^L1GATE(JOB,"MSG",IND)=TXT_" : "_$J_" %L1MODJ"
 Q:'$D(^L1GATE(JOB,"DISP"))
 D ZU
 D:'$D(%HBR) ^%L1C
 W *7,*27,7,$$DLY(),%HBR,$C(27,91)_"1;1H"_$$DLY()_%chists_$$DLY()_$$DLY()_$C(27,91)_"1;"_(80-$L(TXT)\2)_"H"_%LIGHT1_TXT_" ",$$DLY(),$$DLY(),$C(27,91,48,109),*27,8
 Q
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:10000
 Q DLY
HANGJ(PORTN) ;
 S US="O PORTN U PORTN:(0::::#001001:#800040:8::$C(13))"
 D ^%L1DVRES(PORTN)
 O PORTN X US D HNG^%L1HANG("ATH0Z"_$G(^PL("MDRING"),1)_$G(^PL("MDXON"))_$S($G(^PL("MDLOW")):"L1",1:""))
 Q
ZU ;
 I $P["tty" U $P:(NOECHO:NOWRAP) Q
 U ^[$$^%L1GLD]dev(1):(NOECHO:NOWRAP)
 Q

%L1GCH
%L1GCH ;MJ;GLOBAL CHARACTERISTICS %STAT -> %GLB [ 05/23/99  4:42 PM ] [ 10/20/97  4:50 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1990
  ; INPUT %GLB - GLOBALS NAME, %STAT - LIST OF STATUS ; SHEER
  ; EXAMPLE :
  ;        %STAT="1,2,3,4" --- NONE - System, R - World, RW - Group, RWD - User
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%GLB,%STAT,%L1GCHER)
 I $ZV[" 4." Q
 S $ZT="ZG "_$ZL_":ERROR^%L1GCH" S %L1GCHER=0
 O 63::0 I '$T W !!,"View Buffer busy.. Please retry later" G EXIT
 D GETVG^%VGUTIL S:'$D(%MGR) %MGR=($ZU($P($$^%L1ZU(0),","),$P($$^%L1ZU(0),",",2))="1,0")
 ;W !?10,$P($P($ZV,","),"-")," - Global Characteristics Utility"
%GLOBAL S %UCI="",%VGN=$P($$^%L1ZU(0),",",2)
 ; W !!,"Enter Global Name > " R %GLB G:%GLB=""!(%GLB="^")!(%GLB="^Q") EXIT S %QF=0,%EF=0
 S %QF=0,%EF=0
 ; I %GLB["?" S %HLP=1 D ^%GCH2 G %GLOBAL
 ; I %GLB["^D" D INT^%GD G %GLOBAL
 S:%GLB?1"^".E %GLB=$E(%GLB,2,99)
 I %GLB["[" S %UCI=$P(%GLB,"]"),%GLB=$P(%GLB,"]",2)
%CHECK I %UCI["""" F %I=1:1:$L(%UCI) I $E(%UCI,%I)="""" S $E(%UCI,%I)="",%I=%I-1
 I %UCI'="",%UCI'?1"["3U1","3U,%UCI'?1"["3U W *7,"   Invalid cross UCI notation " S %L1GCHER=1 G EXIT
 I %UCI'="" S:$L(%UCI)<5 %UCI=%UCI_","_%VGN ;S %GLB="["""_$P(%UCI,"[",2)_"""]"_$P(%GLB,"]",2)
 I %UCI'="" S %VGN=$P(%UCI,",",2) S %UCI=$E(%UCI,2,4) S %UI=$ZU(%UCI,%VGN) I %UI<1  W *7," Nonexistent UCI name" S %L1GCHER=1 G EXIT
 ;I (%UCI'="")&('%MGR) W !,*7,"Cross UCI is notation not available from non manager UCI" G %GLOBAL
 S %UI=$S(%UCI'="":+%UI,1:$V(2,$J,2)#32),(%VGI,VGI)=VG(%VGN),%VGSLOT="G"_%VGI D GETVOL^%VGUTIL
 I '(%GLB?1"%".AN!(%GLB?1A.AN)) W " Invalid global name  ",*7 S %L1GCHER=1 G EXIT
 I $L(%GLB)>8 W " Global name must be 8 characters or less ",*7 S %L1GCHER=1 G EXIT
 S %PTRS=$V($V(44)+8,-3,2),%USZ=$V($V(44)+14,-3,2),%VGPTR=$V(40+%PTRS+$V(44)),%VGPTR1=$V(%VGI*4+%VGPTR),%UT=%UI-1*32+$V(%VGPTR1+20)
UCINUM ;
 S %GBN=$V(%UT+4,-3,4),GN=%GLB,%GLB=%GLB_$C(0)
%GDBLK V %GBN:%VGSLOT S OF=$V(1022,0),TYP=1,TFL=$E($V(1021,0,1,3))
 S K="" K KEY S I=$S(TYP=1&TFL&($V(0,0,4)=0):13,1:0)
 F I=I:0:OF-1 S CC=$V(I,0,1),UC=$V(I+1,0,1),K=$E(K,1,CC)_$V(I+2,0,UC,1),KEY(I)=K,I=I+UC+2+$S(TYP=8:$V(I,0,1)+1,TYP=1&TFL:11,1:3)
 S %F=0,%X=-1
%GDENT S %X=$N(KEY(%X)) I %X'<0 G:$S(TFL:%GLB]KEY(%X),1:KEY(%X)]%GLB) %GDENT  S:%GLB=KEY(%X) %F=1
 I 'TFL,'%F S %GBN=$V(%X+2+$V(%X+1,0,1),0,3) G %GDBLK
 I TFL,'%F S %GBN=$ZB($V(1012,0,4),#FFFFFF,1) G:%GBN>0 %GDBLK
 I '%F&%EF W !!,"GLOBAL NOT FOUND IN DIRECTORY!!,  CALL SYSTEM MANAGER" G EXIT
 I '%F W "  does not exist.. ",*7
%GDENT1 S %HLP=2
 I '%F S %RSP="Y" ; W !,"Do you want to create global ^",$S(%UCI="":"",1:"["""_%UCI_$S(%VGN="":"",1:""","""_%VGN)_"""]"),GN," <Y> " R %RSP I (%RSP'="Y")&(%RSP'="N")&(%RSP'="")&(%RSP'="^")&(%RSP'="^Q")&(%RSP'="?") W " ?? ",*7 G %GDENT1
 I '%F S:%RSP="" %RSP="Y" D ^%GCH2:%RSP["?" G %GDENT1:%RSP["?",EXIT:%RSP["^Q"!(%RSP["^")!($E(%RSP,1)="N")
 I '%F S:%UCI="" %UCI=$P($$^%L1ZU(0),",") J %L1GCH1(%UCI,%VGN,GN)[%UCI] S %EF=1 W !,"Global created" S %GLB=GN G UCINUM
 S %OF=%X+2+$V(%X+1,0,1)+4
 S %USTS=(($V(%OF,0,1)#4)=3)
 G %OPT
ERROR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
EXIT ;
 I %L1GCHER=0 U 0 W "  ------ DONE",!
 I $D(^ZZZZZZZZ)!($D(^UTILITY)) ; FLUSHES LOCAL COPY OF CHANGED GLOBAL
 C 63
 K %,%ANS,%BLK,%DIV,%DN,%DR,%DT,%EF,%GBN,%GLB,%HLP,%I,%MF,%NB,%OPT,%PC,%PT,%QF,%QST,%QUE,%RSP,%RSPHLD,%T,%X,CLASS,GN,PRO,PROTECT,KEY,%OF,XEM,%F,%MAX,%UI,%USZ,%UT,CC,I,K,OF,TFL,TYP,UC,XE
 K %B,%DB,%GNUM,%GSN,%MGR,%NAM,%PR,%ST,%UCI,%USTS,COL,NEW,SEQ,%GVN,VG
 Q
%OPT ; --- S %QUE=1,%HLP=3 D %SEL G EXIT:%QF=2,%GLOBAL:%QF
 ; --- G ^%GCH1:%OPT=1,%GRO^%GCH1:%OPT=2,%PRO:%OPT=3,%JRN^%GCH1:%OPT=4
 S %NUM=1
%PRO ; I ('%MGR)&('%USTS) W !,*7,"Protection access denied to ^",GN G %OPT
 ;W !!,"Current Status -->"
 D %LST S PROTECT=$V(%OF,0,1)
 ; S %QUE=2,%HLP=4 D %SEL G EXIT:%QF>1,%OPT:%QF
 S %OPT=+$P(%STAT,",",%NUM)
 S PRO=$S(%OPT=1:0,%OPT=2:1,%OPT=3:2,%OPT=4:3,1:4)
 ;
%CLASS S %QUE=3,%HLP=5 S %OPT=%NUM ; D %CLASS1 D %SEL G EXIT:%QF>1,%PRO:%QF
 ;
%CLASS1 F %I=1:1 S XE=$P(%OPT,",",%I) Q:XE=""  S %PT(XE)=PRO
%UPDT S PROTECT=0,%DIV=256
 F %X=1:1:4 S %DIV=%DIV\4,PROTECT=PROTECT+(2*%DIV*(%PT(%X)\2)+(%DIV*(%PT(%X)#2)))
 V %OF:0:PROTECT:1
 ;W !!,"    New Status --> " D %LST
 D %LST V -%GBN:%VGSLOT
 B
%AGAIN G:%NUM=4 EXIT S %NUM=%NUM+1 G %PRO
%LST S %DIV=256 F %X=1:1:4 S %DIV=%DIV\4,%PC=$V(%OF,0,1)\%DIV#4,%PT(%X)=%PC ;W ?(%X-1*15+20),$P("System,World,Group,User",",",%X)," = ",$P("NONE,R,RW,RWD",",",%PC+1)
 Q
%SEL ;OPTION DRIVER
 S %OPT=3 Q  ; ---
 S %MF=0
 W !!,"Select ",$P($T(@("MENU"_%QUE)),";",2,99)
 W !! F %I=1:1 S %T=$T(@("MENU"_%QUE)+%I) Q:$P(%T,";",2)="*"  W !,?5,%I,?10,$P(%T,";",2)
 W !!,$P($T(@("MENU"_%QUE)+%I+1),";",2)
%SEL1 W " ^",$S(%UCI="":"",1:"["""_%UCI_$S(%VGN="":"",1:""","""_%VGN)_"""]"),GN," > " R %RSP S %QF=$S("^Q"=%RSP:2,"^"[%RSP:1,""=%RSP:1,1:0) Q:%QF
 I %RSP?1"?".E D ^%GCH2 G %SEL
 I %RSP["," D %SEL4
 I %RSP'["," D %SEL2
 G %SEL1:%QF>1,%SEL:'%QF S %QF=0 Q
%SEL2 I %RSP?1N.N G %SEL3
 ;SELECTION BY LEADING CHARACTER
 S %QF=0 F %I=1:1 S %T=$P($T(@("MENU"_%QUE)+%I),";",2) Q:%T="*"  I %RSP=$E(%T,1,$L(%RSP)) S %QF=%QF+1,%OPT=%I Q:%QUE=2
 I %QF=0 G %SEL5
 I (%QF=1)&(%MF=1) W $E($P($T(@("MENU"_%QUE)+%OPT),";",2),1,255) Q
 E  W $E($P($T(@("MENU"_%QUE)+%OPT),";",2),$L(%RSP)+1,255) Q
 W !!,*7,"Please be more specific ",!
 F %I=1:1 S %T=$P($T(@("MENU"_%QUE)+%I),";",2,99) Q:%T="*"  I %RSP=$E(%T,1,$L(%RSP)) W !,?5,%I,?10,%T
 W !!,$P($T(@("MENU"_%QUE)+%I+1),";",2)," " Q
%SEL3 I (%RSP<%I&%RSP>0) W "  ",$P($T(@("MENU"_%QUE)+%RSP),";",2,99) S %QF=1,%OPT=%RSP Q
 E  S %QF=0 G %SEL5
%SEL4 I %QUE'=3 W !!,*7,"Enter one choice only ",! S %QF=0 Q
 S %RSPHLD=%RSP,%MF=1
 W "  "
 F %X=1:1 S %RSP=$P(%RSPHLD,",",%X) Q:%RSP=""  D %SEL2 Q:%QF'=1  S $P(%RSPHLD,",",%X)=%OPT W:$L(%RSPHLD,",")'=%X ","
 S %MF=0,%RSP=%RSPHLD
 Q:%QF'=1
 S %OPT=%RSPHLD
 Q
%SEL5 W !!,*7,"Invalid option selection, enter '?' for more help" Q
%L1GCH1(%UCI,%VGN,GN) ;
 S @("^["""_%UCI_$S(%VGN="":"",1:""","""_%VGN_"""]")_GN_"(1)")=1 K ^(1) ZF
 Q
MENU1 ;OPTION
 ;Collating Sequence
 ;Global Growth
 ;Protection
 ;Journaling
 ;*
 ;Enter option for
MENU2 ;PROTECTION STATUS
 ;N   - None
 ;R   - Read
 ;RW  - Read/Write
 ;RWD - Read/Write/Delete
 ;*
 ;Enter protection for
MENU3 ;CLASS
 ;System
 ;World
 ;Group
 ;User
 ;*
 ;Enter class for

%L1GCHM
%L1GCHM ; GLOBAL CHARACTERISTICS %STAT (4,4,4,4) TO SET GLOBALS [ 05/23/99  4:43 PM ] [ 06/06/94 12:55 PM ]
 D ^%GSEL Q:'$D(^UTILITY($J))
 S %GLB="" F  S %GLB=$O(^UTILITY($J,%GLB)) Q:%GLB=""  D
 .D ^%L1GCH
 Q

%L1GDEL
%L1GDEL ;
 n %ZG,n,yes
 u $p:(ECHO)
 d ^%GSEL Q:'$D(%ZG)
ZS R !!,"Are Yoy shure ? (y/n) ",yes
 s yes=$$FUNC^%LCASE($E(yes))
 i yes'="y",yes'="n" g ZS
 i yes'="y" q
 s n="" f  s n=$o(%ZG(n)) q:n=""  K @n u $p w !,n,"  -- deleted"
 q

%L1GET
%L1GET ;*** SCREEN INPUT ;             [ 30.10.23 10:25 ] [ 15.03.19 14:43 ] [ 07.03.19 23:36 ] 
 ;%GET="**SAY**++%YY,%XX{,SHRIFT1}{,I},{R}#**DEFAULT**++%LS,SHRIFT2{,I}{++CIST}<++HELP><++^FILE\FILE(1)\FILE(2)\FILE(3)\FILE(4)\FILE(5)\FILE(6)\/RZD><++%CMD>
 ;     SHRIFT1=HH ! HE ! EH ! EE { E - ENGLISH, H - HEBREW
 ;     SHRIFT2=H ! E ! D ! T
 ;     I - INVERS LIGHT FLAG
 ;     %LS - LENGTH OF ANSWER
 ;     CIST - CHARACTERS AVALAIBLE SET
 ;     FILE - GLOBAL  NAME  TO FIND %S
 ;     FILE(1) - LENGTH OF GLOBAL INDEX
 ;     FILE(2) - LENGTH OF TEXT
 ;     FILE(3) - TOP BOUNDARY OF WINDOW
 ;     FILE(4) - IF ["V" LOOK UP TEXT
 ;               IF ["P" CHECK INTO TABLE
 ;               IF ["C" CREAT INTO TABLE
 ;     FILE(5) - HEAD OF CREAT TABLE
 ;     %CMD - MUMPS STATEMENTS
 ;I %HELP="-" - NO SHOW HELP
 I '$D(%OPT) D ^%L1C
 O 0 U $P:(NOECHO:NOWRAP) N %FLINS
Z0 N J,X1,X2,Y1,Y2,%ECHO,%SAY,%HH0,%LS,%LS0,%LS1,%INV,%RB,%GETOLD,%YYGET
 N %XX,%YY,%XX1,%HH,%L1DS,%S1,%SS,%L1RBCL,%L1GETR
 N FILE,RZD,%HELP,%XX0,%YY0,%XXX,%YYY
 N %ZMSFO,%ZMSLO,CIST
 S %ZMSFO=$G(%ZMSF,"%L1GET"),%ZMSLO=$G(%ZMSL)
 ;
 N %A S %A=$P(%GET,"#",2,100)
 S %A=$P(%A,"++",1,2)
 N %OK S %OK=0
 N %J F %J=$L(%A):-1:2 I $E(%A,%J-1,%J)="++" S %OK=%J-1 Q
 S %S=%A
 I %OK S %S=$E(%A,1,%OK-1)
 S F7=0,%TO=""
 ;
Z K %L1GTRPT S %SAY=$P(%GET,"#",1) S %L1GETR=""
 X %XCL X %XMSG
 ;
 S %ZMSL=%ZMSLO I %ZMSFO'="%L1GET" S %ZMSF=%ZMSFO
 S %LS0=$L($TR($P(%SAY,"++"),"{}",""))
 S %HH0=$P($P(%SAY,"++",2),",",3) ;;I %ENGLISH S %HH0="EE"
 S %XX0=$P($P(%SAY,"++",2),",",2) S %YY0=$P($P(%SAY,"++",2),",")
 S %RB=$P($P(%SAY,"++",2),",",5)
 ;
 S %SS=$P(%GET,"#",$L(%GET,"#"))
 I $E(%SS,1,3)="+++",$E(%SS,1,4)'="++++" S %S="+",%SS=$E(%SS,2,$L(%SS))
 S CIST=$P(%SS,"++",3) I CIST="" K CIST
 S (%LS,%LS1)=$P($P(%SS,"++",2),",") S %LS=+%LS
 S %HH=$P($P(%SS,"++",2),",",2)
 S %INV=$P($P(%SS,"++",2),",",3)
 S %HELP=$P(%SS,"++",4)
 S FILE=$P($P(%SS,"++",5),"\",1)
 S FILE(1)=$P($P(%SS,"++",5),"\",2) I FILE'="",FILE(1)="" S FILE(1)=%LS
 S FILE(2)=$P($P(%SS,"++",5),"\",3) I FILE'="",FILE(2)="" S FILE(2)=20
 S FILE(3)=$P($P(%SS,"++",5),"\",4) I FILE'="",FILE(3)="" S FILE(3)=+$P(%SAY,"++",2)+3
 S FILE(4)=$P($P(%SS,"++",5),"\",5)
 S FILE(5)=$P($P($P(%SS,"++",5),"\",6),"/")
 S FILE(6)=$P($P(%SS,"++",5),"\",7)
 S RZD=$P($P(%SS,"\/",2),"++") I RZD="" S RZD="/\" ;"\/"
 I FILE'="",%HELP="" S %HELP=" <ESC> - d`ivi ,<F7 > e` * - dbvd "_$S(FILE'["(":", <F6> e` ? - my zlgzd itl yetig ",1:"")
 I %HELP'="",'$D(%L1GET),%HELP'="-" D
 .N %SAY,%XX,%YY,%XX0,%YY0 S %SAY=%HELP X %XMSGN
 S %CMD=$P(%SS,"++",6)
 ;
 I %RB="R"!($G(FILE(4))["V") D
 .N %XXX,%YYY
 .S %XXX=%XX,%YYY=%YY
 .I $E(%HH0)="E" S X1=%XX-1,X2=%XX0+%LS0+%LS1+2 I $G(FILE(4))["V" S X2=X2+FILE(2)+2
 .I $E(%HH0)="H" S X1=%XX0-%LS0-%LS1-2,X2=%XX0+2 I $G(FILE(4))["V" S X1=X1-FILE(2)-3
 .I X1<1 S X1=1
 .I X2>79 S X2=79
 .S Y1=%YY,Y2=%YY+2
 .S %XX=X1+1 X %POSIC W $J("",X2-X1-1)
 .S %XX=%XXX,%YY=%YYY
 .Q
 K:%INV'["I" %INV D VSV
 X %XCL X %XMSG
 I %RB="R" D ^%L1RBUA ;RBUA1^%L3MENU
 ;S %LS1=%LS
 I %HH="H"!(%HH="E"),$E(%HH0)="H",$D(%L1GET) K %XX1 S %S1=%S,%SAY=$J(%S,%LS)_"++"_%YY_","_$S(%HH="E":%XX-%LS-1,1:%XX-1)_","_%HH X %XMSG G EN
 I $E(%HH0)="E" S %XX=%XX+%LS0+1 S:%XX+%LS>79 %XX=79-%LS-1 S:%HH="H" %XX=%XX+%LS+1
 I %HH="E" S:$E(%HH0)="H" %XX=%XX-%LS-1 S:%XX+%LS>79 %XX=79-%LS S:%XX<0 %XX=0 S %XX1=%XX X %POSIC S $X=%XX,$Y=%YY D  S %S1=%S G EN
 .N:$A(%S)<96&'$D(%GET("H")) %HBRY D ^%ZMSL
 I %HH="H" S $X=%XX-2,$Y=%YY S %XX1=%XX-%LS-1 D ^%L1ZMS S %S1=%S G EN
 I %HH="D" S %L1DS=%S S %XX=%XX-$S(%ENGLISH:-2,1:8)-1 S:%XX+%LS>79 %XX=79-%LS S:%XX<0 %XX=0 X %POSIC S %XX1=%XX S $X=%XX-1,$Y=%YY D ^%L1DAT S %S1=%L1DAT1 G EN
 I %HH="T" S %L1TS=%S S %XX=%XX-$S(%ENGLISH:-2,1:8)-1 S:%XX+%LS>79 %XX=79-%LS S:%XX<0 %XX=0 X %POSIC S %XX1=%XX S $X=%XX-1,$Y=%YY D ^%L1TIME S %S1=%L1TIME1 G EN
EN G:$G(%TO)="END" END S:$G(%L1GET)="END" %TO="END" I $D(%L1GET) G END
 I %LS1[".",%HH="E",+%S S (%S,%S1)=$TR($J(%S,%LS1)," ",0) S %XX=%XX1 X %POSIC W %S1
 I $G(%TO)="F6"!($G(%TO)="F7")!((%S="*")!(%S="?")&($G(%TO)="")),FILE'="" S %REST=1 D  D:%REST PUT S:'$D(%L1GET)&($G(%S)'="") %L1GET="E" G Z
 .N %GET
 .N %XXX,%YYY S:%S="*"&($G(%TO)="") %TO="F7",%S="" S:%S="?"&($G(%TO)="") %TO="F6",%S=""
 .S %XXX=%XX0,%YYY=%YY0
 .N STRING,FLAG,%CLEAR,%XX S %CLEAR=1,%YYGET=%YY S F7=1
 .D GET S %REST=1
 .D @$S($G(%TO)="F7":"DAFUS^%L3MBGS",1:"POISK^%L3MBGS") I $G(FLAG)'=""!'$D(STRING) S %S="",%XX=%XXX,%YY=%YYY Q
 .S %S=STRING S %XX=%XXX,%YY=%YYY
 I %CMD'="" X %CMD I $G(%L1GTRPT) G Z
 I FILE'="",FILE(4)["P",%S'="",'$D(@FILE@(%S)) S %GETOLD=%GET S %REST=0 D  D:%REST PUT S %GET=%GETOLD X "I '$D(%L1GET),$G(%S)'="""",$D(@FILE@(%S))" S:$T %L1GET="E" G Z
 .I FILE(4)'["C" X %XMSGV("ER") S %S="" Q
 .S %YYGET=%YY D GET
 .N (%XMSG,%UPRCOD,%XMSGV,%XMSGN,%YY,%XX,FILE,%S,%REST,%TO,GVIDEO) D ^%L1C
 .S STRING=%S
 .S %GET="99 - miwdl . miiw `l" D N^%L1GET I %S'=99 X %XMSGV("ER") S %S="" Q
 .N GLOB S GLOB=$E(FILE,2,20) I $D(^TABLs(GLOB)) D  G F
 ..I $D(^TABLs(GLOB,"PROG")) D  Q
 ...S %PROG=^("PROG")
 ...N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%PROG,GVIDEO,STRING,GLOB) D ^%L1C S:$L(STRING)&$D(^TABLs(GLOB,"KEY")) @^("KEY")=STRING N GLOB D @%PROG
 ..D I^%L1TABL
 .S NSNAME=$G(FILE(5)) D ^%L1SCS
F .S %REST=1 S %S=STRING Q
END I $D(%XX1),$G(%INV)'="II" S %XX=%XX1 X %XCL,%LIGHT,%POSIC W $S($G(%HH)="E":%S1_$J("",%LS1-$L(%S1)),1:$TR($TR($J(%S1,%LS1),%TES1,%TES2),%TEN,%THB)) X %XCL
 ;I '$G(F7) D VSV
 ;;I %ENGLISH S %S=$$CAPIT(%S)
 D VSV
 I %YY=24 S %SAY="" X %XMSGN
 I %YY=0 S %SAY="" X %XMSGV
 K %HH,%HH0,%SAY,CIST,%LS,%SAY,%INV,%RB,%GET,%GETIN,%GETHB,%FLINS,%ZMSF,%ZMSL
 I $G(%L1GET)="E" K %L1GET
 Q
 ;-
N ; VNIZU
 N TOUCH S TOUCH=$$HZGTOUCH^%L2MOUSE&'$$KB^%L2MOUSE,%S="",%TO=""
 I TOUCH,%GET["<ENTER>",%GET'[",",%GET'[";" D  D MSG^%L1GET K %GET,%GETIN Q
 .S %GET("ISY")=20
 .S %GET=$P(%GET,"<ENTER>",2) I %GET="" S %GET=" ugl "
 I TOUCH,$TR(%GET," ","")="99-qitcdl"!($TR(%GET," ","")="<F9>-qitcdl") D  K %GET,%GETIN Q
 .S %GET("DEF")=1
 .S %GET("IS")="qitcdl",%S="" D IS
 .I YES S %S=99,%TO="F9"
 I TOUCH,$TR(%GET," <>-","")="99xy`l"!($TR(%GET," <>-","")="99xey`l")!($TR(%GET," <>-","")="F9xy`l")!($TR(%GET," <>-","")="F9xey`l") D  K %GET,%GETIN Q
 .S %GET("IS")="xy`l",%S="" D IS^%L1GET
 .I YES S %S=99,%TO="F9"
 I TOUCH,$TR(%GET," ","")["(l/k)" D  K %GET,%GETIN Q
 .S %GET("IS")="? "_$P(%GET,")",2,6),%S="" D IS^%L1GET
 .S %S=$S(YES:"k",1:"l"),%TO=""
 I TOUCH,%GET["-"&(%GET[",")!(%GET["{}") D  G:$G(%TO)="VNIZE" N K %GET,%GETIN Q
 .N %SMB S %SMB=$S(%GET["{}":"{}",1:"")
 .I %GET'["zepey" S %GET=%SMB_"VNIZE"_%SMB_" - zepey ,"_%GET
 .I %GET'["ESC",'$D(%GET("NOESC")) S %GET=%SMB_"ESC"_%SMB_" - xefgl ,"_%GET
 .D HZG^P1HZGKEY(%GET)
 .I %TO?1N.N S %S=%TO,%TO=""
 .I %TO["ENTER" S %TO=""
 .I %TO["VNIZE",$G(^zms($P))?1"^"."%"1U.E W *27,7 K:%TYPCRT="PC" ^zms($P,"SCRN") D ^%L1ZMST Q
 .;;I $E(%TO)="F",%GET'[%TO S %S=$E(%TO,2,3)#10,%TO="" S:%S=9 %S=99
 I TOUCH,$TR(%GET," ","")["99-"!($TR(%GET," ","")["F9"),%GET'[",",$P(%GET,"-",3)="" D  K %GET,%GETIN Q
 .S %GET("IS")=%GET
 .S %GET("DEF")=1
 .I %GET["-" S %GET("IS")=$P(%GET,"-",2)
 .I %GET("IS")[">" S %GET("IS")=$P(%GET("IS"),">",2)
 .S %GET("IS")=$$RPL^%L1FRM(%GET("IS"),"xey`l","xy`l")
 .D IS^%L1GET I YES S %TO="F9",%S=99
 S %ZMSF=""
 I '$D(%POSIC)!'$D(%ENGLISH) D ^%L1C
 I %ENGLISH G NE
 N %ECHO O 0 U $P:(NOECHO:NOWRAP)
 X %XCL S %XX=0,%YY=24 X %POSIC W %chists
 N %SS S %SS=$P(%GET,"#",2),%GET=$P(%GET,"#",1)
 N %LS S %LS=+%SS I %LS'>0 S %LS=2
 D HX I $D(^mbg1($P,"H")) S ^mbg1($P,"H")=0 ;-- LEADKEN HELP B- ^%L3MBG
 ;S %GET=$P($G(%GET),"++")_"++23,"_(80-%XXX)_",HH#"_$G(%GETIN)_"++"_%LS_",E,I" G %L1GET
 S %GET=$P($G(%GET),"++")_"++24,"_(80-%XXX)_",HH++MB,WF#"_$G(%GETIN)_"++"_%LS_","_$S($D(%GETHB):"H",1:"E")_",I" G Z0 ;%L1GET
V ; VERHU
 S %ZMSF=""
 I '$D(%POSIC)!'$D(%ENGLISH) D ^%L1C
 I %ENGLISH G VE
 N %ECHO U $P:(NOECHO:NOWRAP)
 S %XX=0,%YY=0 X %POSIC W %chists
 N %SS S %SS=$P(%GET,"#",2)
 N %LS S %LS=+%SS I %LS'>0 S %LS=2
 D HX
 S %GET=$P($G(%GET),"++")_"++0,"_(80-%XXX)_",HH++RB,WF#"_$G(%GETIN)_"++"_%LS_",E,I" G Z0 ;%L1GET
NE ; VNIZU ENG
 S %ZMSF=""
 I '$D(%POSIC) D ^%L1C
 N %ECHO U $P:(NOECHO:NOWRAP)
 S %XX=0,%YY=24 X %POSIC W %chists
 N %LS S %LS=+$P(%GET,"#",2) I %LS'>0 S %LS=2
 S %GET=$P(%GET,"#")
 S %LT=$L($TR($P($G(%GET),"++"),"{}",""))
 S %GET=$P($G(%GET),"++")_"++24,"_(80-%LT-%LS-2\2)_",EE++MB,WF#"_$G(%GETIN)_"++"_%LS_",E,I" G Z0 ;%L1GET
VE ; VERHU ENG
 S %ZMSF=""
 I '$D(%POSIC) D ^%L1C
 N %ECHO U $P:(NOECHO:NOWRAP)
 S %XX=0,%YY=0 X %POSIC W %chists
 N %LS S %LS=+$P(%GET,"#",2) I %LS'>0 S %LS=2
 S %GET=$P(%GET,"#")
 S %GET=$P($P($G(%GET),"++"),"#")_"++0,5,EE++RB,WF#"_$G(%GETIN)_"++"_%LS_",E,I" G Z0 ;%L1GET
 Q
VSV I $G(FILE(4))["V" D
 .N %XXX,%YYY,%TBL
 .S %XXX=%XX0,%YYY=%YY0
 .N %SAY
 .I $E(%HH0)="E" S %XX=%XX0+%LS0+%LS1+5
 .I $E(%HH0)="H" S %XX=%XX0-%LS0-%LS1-2
 .I $L($G(FILE))>2,$D(^TABLs($E(FILE,2,20),"VSV")),$L(%S) S @("%TBL="_^TABLs($E(FILE,2,20),"VSV"))
 .I $E(%HH0)="E",%S'="" S %SAY=$E($P($G(@FILE@(%S)),RZD),1,FILE(2))_"++"_%YY_","_(%XX-2)_",EE++AA,YF L" X %XMSG D REST Q
 .I $E(%HH0)="H",%S'="",$D(%TBL) S %SAY=$$HBR^%L1FRM(%TBL,FILE(2))_"++"_%YY_","_(%XX-2)_",HH++AA,YF L" X %XMSG D REST Q
 .I $E(%HH0)="H",%S'="" S %SAY=$E($P($G(@FILE@(%S)),RZD),$L($P($G(@FILE@(%S)),RZD))-FILE(2)+1,255)_"++"_%YY_","_(%XX-2)_",HH++AA,YF L" X %XMSG D REST Q
 .I %S="" S $P(%SAY,"++")=$J("",FILE(2))_"++"_%YY_","_(%XX-2)_","_$S($E(%HH0)="E":"EE",1:"HH") X %XMSG D REST Q
 Q
REST S %XX=%XXX,%YY=%YYY Q
GET I %TYPCRT="PC",'$D(%GET("REST")),'$D(%GETREST) D GET^%VIDEO("GVIDEO",0,0,79,24,2) Q
 Q
PUT I %TYPCRT="PC",'$D(%GET("REST")),'$D(%GETREST),$D(GVIDEO)!$D(^P1VIDEO($$POS^%L2MOUSE)) X %chista D PUT^%VIDEO("GVIDEO",0,0,79,24,2) Q
 X:%CMD'="" %CMD
 N %PUTS
 S %PUTS=%S
 I $D(%GET("REST")) X %GET("REST")
 I $D(%GETREST) X %GETREST
 S %S=%PUTS
 Q
HX S %XXX=80-$L($TR($P(%GET,"++"),"{}",""))\2-5 I %XXX<1 S %XXX=1
 Q
IS I $$HZGTOUCH^%L2MOUSE D ^%L1YNT K %GET S YES=($G(%TO)="F2") Q
 S YES=0 N %S,%GETIN S %GET=" <F9> - xy`l " I $G(%ENGLISH) S %GET=" CONFIRM - <F9> "
 D N S:%TO="F9" %S=99 I %S=99 S YES=1
 Q
IS1 I $$HZGTOUCH^%L2MOUSE G IS
 N %HBRY,%FLINS S YES=0,%TO="" S %HBRY="",%GETHB="",%FLINS=0
 I '$D(%ENGLISH) D ^%L1C
 N %S S %GET=" (l/k) - "_$G(%GET("IS")," xy`l ") I $G(%ENGLISH) S %GET=$G(%GET("IS")," CONFIRM")_" (Y/N) "
 I $G(%GETIN)="k",%ENGLISH S %GETIN="Y"
 N %ISGET I $D(%GET("IS")) S %ISGET=%GET("IS")
 D N S:%TO="END"&(%S'="l") %S="" K %GETIN S:$D(%ISGET) %GET("IS")=%ISGET I "klFKfNnYhy"'[%S!'$L(%S) W *7 G IS1
 S YES=("kFfYhy")[$E(%S)&$L(%S) K %GET
 Q
IS2 I $$HZGTOUCH^%L2MOUSE G IS
 S %GETIN="k" G IS1
IS3 S %GETIN=2,%GET="{}0{} - rval `l , {}2{} - rval , {}1{} - owzl "
 I %ENGLISH S %GET=" MODIFY - 1, PERFORM - 2 , CANCEL - 0 "
 I '$$HZGTOUCH^%L2MOUSE D N^%L1GET
 I $$HZGTOUCH^%L2MOUSE D
 .D HZG^P1HZGKEY(%GET)
 .S %S=%TO
 I %TO="END" G IS3
 I %S'=0,%S'=1,%S'=2 W *7 G IS3
 Q
 ;
CAPIT(%ST) N J,%SMB
 N J
 F J=1:1:$L(%ST) S %SMB=$E(%ST,J) D
 .I $A(%SMB)<123,$A(%SMB)>96 S $E(%ST,J)=$C($A(%SMB)-32)
 Q %ST
MSG ;
 I '$$HZGTOUCH^%L2MOUSE G N
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%GET) D ^%L1C
 D SAVE^%L3MBGG
 X %LIGHT
 N XX1,XX2,YY1,YY2
 S XX1=20,YY1=8,XX2=XX1+40
 I $L(%GET)>40 S XX1=78-$L(%GET)\2,XX2=XX1+$L(%GET)+2
 I $D(%GET("ISY")) S YY1=%GET("ISY")
 S YY2=YY1+5
 S %L1RBCL=%CV("MB")
 D TV^%L1RBUA(YY1,XX1,YY2,XX2)
 N TXT S TXT=%GET
 X %LIGHT
 S %SAY=TXT_"++"_YY1_","_(XX2-1-(XX2-XX1-$L(TXT)\2))_",HH++MB,YF" X %XMSG
 N MTXT,Y0,Y2,X0,X2,SH,COLX,COLY
 S MTXT("B")=%CV("MB")
 S MTXT(1,1)=" O K "_$J("",XX2-XX1-10\2)
 S MTXT(1,1,"TO")=""
 S Y0=YY1+2,Y2=YY2-1,X0=XX1+2,X2=XX2-2
 S COLX=$O(MTXT(1,20),-1),COLY=1,SH=1
 S STEPX=XX2-XX1-4,STEPY=2,%PREV=""
 D TV^P1RBUA S %S=""
 D REST^%L3MBGG
 Q
 
 
 
 
 
 
 
 
 
 

%L1GET1
%L1GET ;*** SCREEN INPUT ; [ 04/19/99  9:15 AM ] [ 04/05/99  3:54 AM ] [
 ;%GET="**SAY**++%YY,%XX{,SHRIFT1}{,I},{R}#**DEFAULT**++%LS,SHRIFT2{,I}{++CIST}<++HELP><++^FILE\FILE(1)\FILE(2)\FILE(3)\FILE(4)\FILE(5)\/RZD><++%CMD>
 ;     SHRIFT1=HH ! HE ! EH ! EE { E - ENGLISH, H - HEBREW
 ;     SHRIFT2=H ! E ! D ! T
 ;     I - INVERS LIGHT FLAG
 ;     %LS - LENGTH OF ANSWER
 ;     CIST - CHARACTERS AVALAIBLE SET
 ;     FILE - GLOBAL  NAME  TO FIND %S
 ;     FILE(1) - LENGTH OF GLOBAL INDEX
 ;     FILE(2) - LENGTH OF TEXT
 ;     FILE(3) - TOP BOUNDARY OF WINDOW
 ;     FILE(4) - IF ["V" LOOK UP TEXT
 ;               IF ["P" CHECK INTO TABLE
 ;               IF ["C" CREAT INTO TABLE
 ;     FILE(5) - HEAD OF CREAT TABLE
 ;     %CMD - MUMPS STATEMENTS
 ;I %HELP="-" - NO SHOW HELP
 I '$D(%OPT) D ^%L1C
 U $P:(NOECHO:NOWRAP) N %FLINS
Z0 N J,X1,X2,Y1,Y2,%ECHO,%SAY,%HH0,%LS,%LS0,%LS1,%INV,%RB,%GETOLD,%YYGET
 N %XX,%YY,%XX1,%HH,%L1DS,%S1,%SS,%L1RBCL
 N FILE,RZD,%HELP,%XX0,%YY0,%XXX,%YYY
 N %ZMSFO,%ZMSLO,CIST
 S %ZMSFO=$G(%ZMSF,"%L1GET"),%ZMSLO=$G(%ZMSL)
 S %S=$P($P(%GET,"#",2,100),"++"),F7=0,%TO=""
Z S %SAY=$P(%GET,"#",1) S %L1GETR=""
 X %XCL X %XMSG K %L1GETR
 ;
 S %ZMSL=%ZMSLO I %ZMSFO'="%L1GET" S %ZMSF=%ZMSFO
 S %LS0=$L($TR($P(%SAY,"++"),"{}",""))
 S %HH0=$P($P(%SAY,"++",2),",",3) ;;I %ENGLISH S %HH0="EE"
 S %XX0=$P($P(%SAY,"++",2),",",2) S %YY0=$P($P(%SAY,"++",2),",")
 S %RB=$P($P(%SAY,"++",2),",",5)
 ;
 S %SS=$P(%GET,"#",$L(%GET,"#"))
 I $E(%SS,1,3)="+++",$E(%SS,1,4)'="++++" S %S="+",%SS=$E(%SS,2,$L(%SS))
 S CIST=$P(%SS,"++",3) I CIST="" K CIST
 S (%LS,%LS1)=$P($P(%SS,"++",2),",") S %LS=+%LS
 S %HH=$P($P(%SS,"++",2),",",2)
 S %INV=$P($P(%SS,"++",2),",",3)
 S %HELP=$P(%SS,"++",4)
 S FILE=$P($P(%SS,"++",5),"\",1)
 S FILE(1)=$P($P(%SS,"++",5),"\",2) I FILE'="",FILE(1)="" S FILE(1)=%LS
 S FILE(2)=$P($P(%SS,"++",5),"\",3) I FILE'="",FILE(2)="" S FILE(2)=20
 S FILE(3)=$P($P(%SS,"++",5),"\",4) I FILE'="",FILE(3)="" S FILE(3)=+$P(%SAY,"++",2)+3
 S FILE(4)=$P($P(%SS,"++",5),"\",5)
 S FILE(5)=$P($P($P(%SS,"++",5),"\",6),"/")
 S RZD=$P($P(%SS,"\/",2),"++") I RZD="" S RZD="/\" ;"\/"
 I FILE'="",%HELP="" S %HELP=" <ESC> - d`ivi ,<F7 > e` * - dbvd "_$S(FILE'["(":", <F6> e` ? - my zlgzd itl yetig ",1:"")
 I %HELP'="",'$D(%L1GET),%HELP'="-" D
 .N %SAY,%XX,%YY,%XX0,%YY0 S %SAY=%HELP X %XMSGN
 S %CMD=$P(%SS,"++",6)
 I %RB="R"!($G(FILE(4))["V") D
 .N %XXX,%YYY
 .S %XXX=%XX,%YYY=%YY
 .I $E(%HH0)="E" S X1=%XX-1,X2=%XX0+%LS0+%LS1+2 I $G(FILE(4))["V" S X2=X2+FILE(2)+2
 .I $E(%HH0)="H" S X1=%XX0-%LS0-%LS1-2,X2=%XX0+2 I $G(FILE(4))["V" S X1=X1-FILE(2)-3
 .I X1<1 S X1=1
 .I X2>79 S X2=79
 .S Y1=%YY,Y2=%YY+2
 .S %XX=X1+1 X %POSIC W $J("",X2-X1-1)
 .S %XX=%XXX,%YY=%YYY
 .Q
 K:%INV'["I" %INV D VSV
 X %XCL X %XMSG
 I %RB="R" D ^%L1RBUA ;RBUA1^%L3MENU
 ;S %LS1=%LS
 I %HH="H"!(%HH="E"),$E(%HH0)="H",$D(%L1GET) D  G EN
 .K %XX1 S %S1=%S I %TYPCRT'["VT5" S %SAY=$J(%S,%LS)_"++"_%YY_","_$S(%HH="E":%XX-%LS-1,1:%XX-1)_","_%HH X %XMSG Q
 .W $C(27,91)_(%YY+1)_";"_(%XX-%LS)_"H" W $C(27,91)_(%YY+1)_";"_(%XX-%LS)_";"_(%YY+1)_";"_(%XX-%LS+(%LS-$L(%S)))_"$z" W:$L(%S) %S
 I $E(%HH0)="E" S %XX=%XX+%LS0+1 S:%XX+%LS>79 %XX=79-%LS-1 S:%HH="H" %XX=%XX+%LS+1
 I %HH="E" S:$E(%HH0)="H" %XX=%XX-%LS-1 S:%XX+%LS>79 %XX=79-%LS S:%XX<0 %XX=0 S %XX1=%XX X %POSIC S $X=%XX,$Y=%YY D  S %S1=%S G EN
 .N:$A(%S)<96&'$D(%GET("H")) %HBRY D ^%ZMSL
 I %HH="H" S $X=%XX-2,$Y=%YY S %XX1=%XX-%LS-1 D ^%L1ZMS S %S1=%S G EN
 I %HH="D" S %L1DS=%S S %XX=%XX-$S(%ENGLISH:-2,1:8)-1 S:%XX+%LS>79 %XX=79-%LS S:%XX<0 %XX=0 X %POSIC S %XX1=%XX S $X=%XX-1,$Y=%YY D ^%L1DAT S %S1=%L1DAT1 G EN
 I %HH="T" S %L1DS=%S S %XX=%XX-$S(%ENGLISH:-2,1:8)-1 S:%XX+%LS>79 %XX=79-%LS S:%XX<0 %XX=0 X %POSIC S %XX1=%XX S $X=%XX-1,$Y=%YY D ^%L1TIME S %S1=%L1TIME1 G EN
EN G:$G(%TO)="END" END I $D(%L1GET) G END
 I %LS1[".",%HH="E",+%S S (%S,%S1)=$TR($J(%S,%LS1)," ",0) S %XX=%XX1 X %POSIC W %S1
 I $G(%TO)="F6"!($G(%TO)="F7")!((%S="*")!(%S="?")&($G(%TO)="")),FILE'="" S %REST=1 D  D:%REST PUT S:'$D(%L1GET)&($G(%S)'="") %L1GET="E" G Z
 .N %GET
 .N %XXX,%YYY S:%S="*"&($G(%TO)="") %TO="F7",%S="" S:%S="?"&($G(%TO)="") %TO="F6",%S=""
 .S %XXX=%XX0,%YYY=%YY0
 .N STRING,FLAG,%CLEAR,%XX S %CLEAR=1,%YYGET=%YY S F7=1
 .D GET S %REST=1
 .D @$S($G(%TO)="F7":"DAFUS^%L3MBGS",1:"POISK^%L3MBGS") I $G(FLAG)'=""!'$D(STRING) S %S="",%XX=%XXX,%YY=%YYY Q
 .S %S=STRING S %XX=%XXX,%YY=%YYY
 I %CMD'="" X %CMD
 I FILE'="",FILE(4)["P",%S'="",'$D(@FILE@(%S)) S %GETOLD=%GET S %REST=0 D  D:%REST PUT S %GET=%GETOLD X "I '$D(%L1GET),$G(%S)'="""",$D(@FILE@(%S))" S:$T %L1GET="E" G Z
 .I FILE(4)'["C" X %XMSGV("ER") S %S="" Q
 .S %YYGET=%YY D GET
 .N (%XMSG,%UPRCOD,%XMSGV,%XMSGN,%YY,%XX,FILE,%S,%REST,%TO,GVIDEO) D ^%L1C
 .S STRING=%S
 .S %GET="99 - miwdl . miiw `l" D N^%L1GET I %S'=99 X %XMSGV("ER") S %S="" Q
 .N GLOB S GLOB=$E(FILE,2,20) I $D(^TABLs(GLOB)) D  G F
 ..I $D(^TABLs(GLOB,"PROG")) D  Q
 ...S %PROG=^("PROG")
 ...N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%PROG,GVIDEO,STRING,GLOB) D ^%L1C S:$L(STRING)&$D(^TABLs(GLOB,"KEY")) @^("KEY")=STRING N GLOB D @%PROG
 ..D I^%L1TABL
 .S NSNAME=$G(FILE(5)) D ^%L1SCS
F .S %REST=1 S %S=STRING Q
END I $D(%XX1),$G(%INV)'="II" S %XX=%XX1 X %XCL,%LIGHT,%POSIC W $S($G(%HH)="E":%S1_$J("",%LS1-$L(%S1)),1:$J(%S1,%LS1)) X %XCL
 ;I '$G(F7) D VSV
 ;;I %ENGLISH S %S=$$CAPIT(%S)
 D VSV
 K %HH,%HH0,%SAY,CIST,%LS,%SAY,%INV,%RB,%GET,%GETIN,%GETHB,%FLINS,%ZMSF,%ZMSL
 I $G(%L1GET)="E" K %L1GET
 Q
 ;-
N ; VNIZU
 S %ZMSF=""
 I '$D(%POSIC)!'$D(%ENGLISH) D ^%L1C
 I %ENGLISH G NE
 N %ECHO U $P:(NOECHO:NOWRAP)
 X %XCL S %XX=0,%YY=24 X %POSIC W %chists
 N %SS S %SS=$P(%GET,"#",2),%GET=$P(%GET,"#",1)
 N %LS S %LS=+%SS I %LS'>0 S %LS=2
 D HX I $D(^mbg1($P,"H")) S ^mbg1($P,"H")=0 ;-- LEADKEN HELP B- ^%L3MBG
 ;S %GET=$P($G(%GET),"++")_"++23,"_(80-%XXX)_",HH#"_$G(%GETIN)_"++"_%LS_",E,I" G %L1GET
 S %GET=$P($G(%GET),"++")_"++24,"_(80-%XXX)_",HH++MB,WF#"_$G(%GETIN)_"++"_%LS_","_$S($D(%GETHB):"H",1:"E")_",I" G Z0 ;%L1GET
V ; VERHU
 S %ZMSF=""
 I '$D(%POSIC)!'$D(%ENGLISH) D ^%L1C
 I %ENGLISH G VE
 N %ECHO U $P:(NOECHO:NOWRAP)
 S %XX=0,%YY=0 X %POSIC W %chists
 N %SS S %SS=$P(%GET,"#",2)
 N %LS S %LS=+%SS I %LS'>0 S %LS=2
 D HX
 S %GET=$P($G(%GET),"++")_"++0,"_(80-%XXX)_",HH++RB,WF#"_$G(%GETIN)_"++"_%LS_",E,I" G Z0 ;%L1GET
NE ; VNIZU ENG
 S %ZMSF=""
 I '$D(%POSIC) D ^%L1C
 N %ECHO,%HBRY U $P:(NOECHO:NOWRAP)
 S %XX=0,%YY=24 X %POSIC W %chists
 N %LS S %LS=+$P(%GET,"#",2) I %LS'>0 S %LS=2
 S %GET=$P(%GET,"#")
 S %GET=$P($G(%GET),"++")_"++24,5,EE++MB,WF#"_$G(%GETIN)_"++"_%LS_",E,I" G Z0 ;%L1GET
VE ; VERHU ENG
 S %ZMSF=""
 I '$D(%POSIC) D ^%L1C
 N %ECHO,%HBRY U $P:(NOECHO:NOWRAP)
 S %XX=0,%YY=0 X %POSIC W %chists
 N %LS S %LS=+$P(%GET,"#",2) I %LS'>0 S %LS=2
 S %GET=$P(%GET,"#")
 S %GET=$P($P($G(%GET),"++"),"#")_"++0,5,EE++RB,WF#"_$G(%GETIN)_"++"_%LS_",E,I" G Z0 ;%L1GET
 Q
VSV I $G(FILE(4))["V" D
 .N %XXX,%YYY,%TBL
 .S %XXX=%XX0,%YYY=%YY0
 .N %SAY
 .I $E(%HH0)="E" S %XX=%XX0+%LS0+%LS1+5
 .I $E(%HH0)="H" S %XX=%XX0-%LS0-%LS1-2
 .I $L($G(FILE))>2,$D(^TABLs($E(FILE,2,20),"VSV")),$L(%S) S @("%TBL="_^TABLs($E(FILE,2,20),"VSV"))
 .I $E(%HH0)="E",%S'="" S %SAY=$E($P($G(@FILE@(%S)),RZD),1,FILE(2))_"++"_%YY_","_(%XX-2)_",EE" X %XMSG D REST Q
 .I $E(%HH0)="H",%S'="",$D(%TBL) S %SAY=$$HBR^%L1FRM(%TBL,FILE(2))_"++"_%YY_","_(%XX-2)_",HH" X %XMSG D REST Q
 .I $E(%HH0)="H",%S'="" S %SAY=$E($P($G(@FILE@(%S)),RZD),$L($P($G(@FILE@(%S)),RZD))-FILE(2)+1,255)_"++"_%YY_","_(%XX-2)_",HH" X %XMSG D REST Q
 .I %S="" S $P(%SAY,"++")=$J("",FILE(2))_"++"_%YY_","_(%XX-2)_","_$S($E(%HH0)="E":"EE",1:"HH") X %XMSG D REST Q
 Q
REST S %XX=%XXX,%YY=%YYY Q
GET I %TYPCRT="PC",'$D(%GET("REST")),'$D(%GETREST) D GET^%VIDEO(.GVIDEO,0,0,79,24,2) Q
 Q
PUT I %TYPCRT="PC",'$D(%GET("REST")),'$D(%GETREST),$D(GVIDEO) X %chista D PUT^%VIDEO(GVIDEO,0,0,79,24,2) Q
 X:%CMD'="" %CMD
 N %PUTS
 S %PUTS=%S
 I $D(%GET("REST")) X %GET("REST")
 I $D(%GETREST) X %GETREST
 S %S=%PUTS
 Q
HX S %XXX=80-$L($TR($P(%GET,"++"),"{}",""))\2-5 I %XXX<1 S %XXX=1
 Q
IS S YES=0 N %S,%GETIN S %GET=" <F9> - xy`l " I $G(%ENGLISH) S %GET=" CONFIRM - <F9> "
 D N S:%TO="F9" %S=99 I %S=99 S YES=1
 Q
IS1 N %HBRY,%FLINS S YES=0,%TO="" S %HBRY="",%GETHB="",%FLINS=0
 I '$D(%ENGLISH) D ^%L1C
 N %S S %GET=" (l/k) - "_$G(%GET("IS")," xy`l ") I $G(%ENGLISH) S %GET=$G(%GET("IS")," CONFIRM")_" (Y/N) "
 I $G(%GETIN)="k",%ENGLISH S %GETIN="Y"
 N %ISGET I $D(%GET("IS")) S %ISGET=%GET("IS")
 D N S:%TO="END"&(%S'="l") %S="" K %GETIN S:$D(%ISGET) %GET("IS")=%ISGET I "klFKfNnYhy"'[%S!'$L(%S) W *7 G IS1
 S YES=("kFfYhy")[$E(%S)&$L(%S) K %GET
 Q
IS2 S %GETIN="k" G IS1
IS3 S %GETIN=2,%GET=" 0 - rval `l , 2 - rval ,1 - owzl "
 I %ENGLISH S %GET=" MODIFY - 1, PERFORM - 2 , CANCEL - 0 "
 D N^%L1GET
 I %TO="END" G IS3
 I %S'=0,%S'=1,%S'=2 W *7 G IS3
 Q
 ;
CAPIT(%ST) N J,%SMB
 N J
 F J=1:1:$L(%ST) S %SMB=$E(%ST,J) D
 .I $A(%SMB)<123,$A(%SMB)>96 S $E(%ST,J)=$C($A(%SMB)-32)
 Q %ST

%L1GETMD
%L1GETMD ;MODEM INITIALIZATION       [ 31.01.06 20:08 ] [ 01.02.04 14:05 ] [ 16.01.02 11:31 AM ]
BG N (%UPRCOD,%XMSG,USERPORT,USERMOD,NOCA,%L2MD) S $ZS="" U $P:(CENABLE:CTRAP=$C(3)) D ^%L1C
 I '$D(USERMOD) S USERMOD=1
 I '$D(USERPORT) S USERPORT=$$MDPORT^%L1PORT
 I '$D(%L2MD) O 0 U 0
 S PRT=$P N $ZT S $ZT="ZG "_$ZL_":END^%L1GETMD"
 S US="U DEV:(NOECHO:NOWRAP:TERM=$C(3,8,13,21,24,27,127))"
 I $D(%L2MD) D L2MD
 I '$D(NOCA)&'$D(%L2MD) X %chista S %SAY=" MODEM INITIALIZATION ( CTRL/C - CANCEL ) " X %XMSGV
ZP S GLD=$$^%L1GLD
 I $G(USERPORT)>3 S DEV=^[GLD]dev(USERPORT) G IN
ASK R !!,"I/O PORT? > ",DEV G:DEV="" END1
 S DEV=^[GLD]dev(DEV)
IN I $P=DEV D MSG("CANNOT SELECT YOUR OWN DEVICE.") G ASK
 U $P:(CENABLE:CTRAP=$C(3))
 C DEV O DEV::0 E  D MSG("..LINE IN USE..WAITING..") O DEV::10 I  D MSG("READY")
 E  G END2
 U DEV ;;I $ZB($ZA,2,1) D MSG("DEVICE "_DEV_" IS AN OUTPUT ONLY DEVICE.") G ASK
OP O DEV S %DT=0
 D BEG
PORT X US
 ;;F  R *A:1 E  Q
 W "ATS0="_$G(^PL("MDRING"),1)_$G(^PL("MDXON"))_$S($G(^PL("MDLOW")):"L1",1:"")_$C(13)
 R %Y:4 G:%Y[$C(1) END S %CR=$ZB X:'$T&$L(%Y) "U 0 W %Y" D:$T&$L(%Y) MSG(%Y) S %DT=%DT+1
PORT1 I %Y'["OK" H 1 G:%DT<6 PORT D MSG("NO CARRIER") G END
 C:$G(DEV)>3 DEV K NOCA
 Q
END U $S($P["tty":$P,1:^[GLD]dev(1)) W:$ZS["CTRAP" !,*7,"INTRERUPT",!
END1 D HANGUP
END2 C:$G(DEV)>3 DEV K NOCA
 Q
HANGUP ;
 Q
BEG N PORTN S PORTN=DEV D BEG^%L1HANG Q
TV(USERPORT,USERMOD) G BG
MSG(TXT) ;
 U $S($P["tty":$P,1:^[GLD]dev(1))
 I '$D(%L2MD) W *7,!!,TXT
 I $D(%L2MD) D MSG^%L2MD(TXT,"M")
 Q
L2MD ;
 I '$D(%L2MD("M")) D
 .S %L2MD("M","VG")=3,%L2MD("M","NG")=17,%L2MD("M","LG")=5,%L2MD("M","RG")=25
 Q

%L1GI
%L1GI(%ZD) ;service@greystone.com %GO;19920722 21:35;global input [ 21.07.26 14:11 ] [ 20.07.26 07:35 ] [ 18.01.26 00:40 ] 
 ;Load globals into database
 ;possible enhancements:
 ;selection and/or exclusion by key list, range and/or wildcard
 ;optional confirmation by global name
 ;callable entry point
 ;
 I $G(%ZD)'="",%ZD'["/" S %ZD="/home/gtmuser/"_%ZD
 I $E($G(%ZD))="." S %ZD="/home/gtmuser/ppj-transfer/"_$E(%ZD,2,255)
 ;
 w !,"Global Input Utility",!
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%L1GI" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%GI")
 n d,g,glg,n,rest,sav,sel,x,x0,y,fmt
 s (sel,rest,glg)=""
 ;
 N %NODIALOG S %NODIALOG=0
 ;
 i $g(%ZD)'="" D
 . i $zparse(%ZD)="" w "  no such file" s %ZD="<ER>" q
 . o %ZD:(readonly:block=2048:record=2044:exception="g noopen"):0
 . i '$t  w !,%ZD," is not available" s %ZD="<ER>" q
 .S %NODIALOG=1
 I $G(%ZD)="<ER>" Q
 ;
ZI I $G(%ZD)="" f  d  q:$l(%ZD)
 . r !,"Input file: ",%ZD,!
 . I $E(%ZD)="." S %ZD="/home/gtmuser/ppj-transfer/"_$E(%ZD,2,255)
 . i %ZD="^"!(%ZD="") q
 . i %ZD="?" d  q
  . . w !!,"Select the file you want for input"
  . . w !,"If you wish to exit enter a carat (^)",!
 . i $e(%ZD)=">" S %ZD="/home/lev/"_$E(%ZD,2,255)
 . i $e(%ZD,1,3)="mu>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/"_$E(%ZD,4,255)
 . i $e(%ZD,1,3)="ml>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/mly/"_$E(%ZD,4,255)
 . i $e(%ZD,1,2)="a>"!($E(%ZD,1,2)="A:")!($E(%ZD,1,2)="a:") S %ZD="/mnt/floppy/"_$E(%ZD,3,255)
 . i %ZD["/mnt/floppy/" D ^%L1FLOP
 . i $zparse(%ZD)="" w "  no such file" s %ZD="" q
 . o %ZD:(readonly:block=2048:record=2044:exception="g noopen"):0
 . i '$t  w !,%ZD," is not available" s %ZD="" q
 . q
noopen . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
 q:%ZD="^"
 u %ZD:exception="g eof"
 r x,y u $p w !,x,!,y,!!
 u $p
 I $G(%NODIALOG) G ZS1
ZS r !,"Selective restore ? (y/n) <n> ",sel i sel="^" g ZI
ZS1 s sel=$e(sel)
 S:sel="" sel="n"
 s sel=$$FUNC^%LCASE(sel)
 i sel'="y",sel'="n" w *7 g ZS
 s sel=(sel="y")
 s rest="n" i 'sel s rest="y"
 ;
 s sav="",(g,n)=0
 W !!
 ;;u %ZD:exception="g eof"
 ;;r x,y u $p w !,x,!,y,!!
 ;;u $p
 i $l(x),$e("NO",1,$l(x))=$tr(x,"no","NO") c:%ZD'=$p %ZD u $p:(ctrap="":exc="") q
 s fmt=y["ZWR"
 ;
 i (fmt)  f  u %ZD  r x  q:x=""  i $e(x)="^",x["=" d  ; --- ZWR
 . S x=$TR(x,$C(13),"")
 . s x0=$p($p(x,"="),"(")  i x0'=sav,x0'="^" d
 . .i sel d
 . . .u $p w !,x0
 . . .i (rest="c"!(rest="s"))&(x0=("^"_glg))!("cs"'[rest) d ZREST
 . . .I rest="c"!(rest="y") s g=g+1
 . . .w " -- "_$s(rest="s"!(rest="n"):"Not ",1:"")_"restored"
 . . s sav=x0
 . . i 'sel u $p w:$x>70 ! w x0,?$x\10+1*10
 .I rest="c"!(rest="y") s @x
 ;
 i ('fmt)  f  u %ZD r x i $e(x)="^" r y d  ; --- GO
 .s x=$TR(x,$c(13),""),y=$TR(y,$C(13),"")
 . s x0=$p(x,"(") i x0'=sav,x0'="^" d
 . .i sel d
 . . .u $p w !,x0
 . . .i (rest="c"!(rest="s"))&(x0=("^"_glg))!("cs"'[rest) d ZREST
 . . .I rest="c"!(rest="y") s g=g+1
 . . .w " -- "_$s(rest="s"!(rest="n"):"Not ",1:"")_"restored"
 . . s sav=x0
 . . i 'sel u $p w:$x>70 ! w x0,?$x\10+1*10 s g=g+1
 .i rest="c"!(rest="y"),$e(x)="^" s @x=y,n=n+1
 ;
eof u $p
 w !!,"Restored ",n," node",$s(n=1:"",1:"s")
 w " in ",g," global",$s(g=1:".",1:"s.")
 c:%ZD'=$p %ZD u $p:(ctrap="":exc="")
 q
 ;
ERR u $p w !,$p($zs,",",2,99),!
 ; Warning - Fall-though
 s $ec=""
EXIT i $d(%ZD),%ZD'=$p c %ZD
 u $p:(ctrap="":exc="")
 q
ZREST ;
  s glg=""
  u $p w ?10," -- restore ? (y/n/s/c) <n> " r rest
  s rest=$e(rest)
  s:rest="" rest="n"
  i rest="^" s exit=1 q
  s rest=$$FUNC^%LCASE(rest)
  i "ynsc"'[rest w *7 w ! g ZREST
  I rest="s"!(rest="c") w "  until ^" r glg i glg=""!(glg="^") w ! G ZREST
  q
 
 
 
 
 
 
 

%L1GIEDH
%L1GIEDH ; GLOBAL INDEX EDITOR - BLOCKNOT (HEBREW) ; %GIEDH - GLOBAL NAME [ 05/23/99  4:44 PM ] [ 10/04/95 10:13 AM ]
 L @%GIEDH:2 E  S %SAY="! xg` seqnn uaew mr micaer" X %XMSGV Q
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%GIEDH) D ^%L1C
 S N="",I=0 K ^S000($P) F  S N=$O(@%GIEDH@(N)) Q:N=""  D  S I=I+1,^S000($P,I)=SS,^S000($P,I,"%TOP")=TOP
 .S SS=$J(N,78) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 .S TOP=II-($E(SS,II)'=" ")
 S %PRHBR=1 D ^%S2ERG1
 K %Q S %Q("Z")="xenyl",%Q("U")="k",%Q("X")=10,%Q("Y")=23 D ^%S2ASK I 'YES K ^S000($P) L  Q
 K @%GIEDH F I=1:1 Q:'$D(^S000($P,I))  D  I ^(I)'="" S @%GIEDH@(^S000($P,I))=""
 .S SS=^(I) F J=1:1 Q:$E(SS,J)'=" "
 .S ^(I)=$E(SS,J,255)
 L  Q

%L1GLD
%L1GLD(STAM) ;
 Q $S($P["/vc/":^UCI("MGC"),1:^UCI("MGG"))

%L1GM
%L1GM ; ROUTINE MONITOR ;[ 10/23/95  6:57 PM ] [ 09.05.06 16:40 ] [ 10/23/95  6:57 PM ] [ 09.05.06 16:39 ]
 U $P:(NOECHO:NOWRAP)
 X %chista S %SAY=" GLOBALS MONITOR " X %XMSGV
 U $P:(ECHO:WRAP) D ^%GSEL U $P:(NOECHO:NOWRAP) G M1
M1 K ^L1ADR($J) S N="" F  S N=$O(%ZG(N)) Q:N=""  S ^L1ADR($J,$E(N,2,9))=""
 K %ZG
 S %L1GM="" D ^%L1RGR1 K %L1GM
 Q

%L1GM0
%L1GM ; GLOBALS MONITOR [ 09.05.06 16:34 ] [ 05/23/99  4:46 PM ] [ 06/30/94 10:01 AM ]
 X %chista S %SAY=" GLOBALS MONITOR " X %XMSGN
Z S %GET="GLOBAL'S SET ( GLOBAL DIRECTORY - ? OR <F7> ) :#8" D VE^%L1GET Q:($G(%TO)="END")
 I %S="?"!(%TO="F7") D ^%GD G Z
 Q:%S=""  S %RS=%S D ^%L3GSEL
 K ^L1ADR($J) S N="" F  S N=$O(^UTILITY($J,N)) Q:N=""  S ^L1ADR($J,N)=^UTILITY($J,N)
 K ^UTILITY($J)
 S %L1GM="" D ^%L1RGR1 K %L1GM
 Q

%L1GR
%L1GR ;CDS;GLOBAL RESTORE [ 08/08/94 11:33 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1982
 S $ZT="ZG "_$ZL_":ERR^%L1GR",NAME=" GLOBAL" W %ENG K ^L1ADR($J),PRIZ
 W !?10,$P($P($ZV,","),"-")," - Global Restore Utility"
SDEV D IN^%SDEV G:$D(QUIT) EXIT
 S %TAP=%DEV>46&(%DEV<51) D:%TAP %SET^%MTCHK
 ;I %TAP U %DEV I @(%MTON_"=0") U 0 W !,"Tape is not ready" C %DEV G SDEV
 U %DEV R %TIME,%CMT I %TIME="" G BADSAVE
 U 0 S %S=0,%SEQ=1,%LG="",%POS=0
 W !!,"Global(s) saved at ",%TIME,".",!,"Header comment is : ",%CMT,!
L1 R !,"Selective restore (allows rename) <N>: ",%SEL I %SEL="" W "NO" S %SEL=0,%ANS="Y" G START
  I $E("YES",1,$L(%SEL))=%SEL W $E("YES",$L(%SEL)+1,3)
  I $E("NO",1,$L(%SEL))=%SEL W $E("NO",$L(%SEL)+1,2) S %SEL=0,%ANS="Y" G START
  I $E("yes",1,$L(%SEL))=%SEL W $E("yes",$L(%SEL)+1,3)
  I $E("no",1,$L(%SEL))=%SEL W $E("no",$L(%SEL)+1,2) S %SEL=0,%ANS="Y" G START
  G:%SEL="^"!(%SEL="^Q") EXIT
  I %SEL="?" G HELP
  I "Yy?"'[$E(%SEL) W *7,"  ??" G L1
  S %FNN=$P(%FN,".")_"."_$E($P(%FN,".",2),1,2)_"#" U %DEV D:$$^%L1ZOS(10,%FNN)'>0 DIR^%L1RGR1 G:$$^%L1ZOS(10,%FNN)>0 ZAP
  U 0
 I $E("YES",1,$L(%SEL))=%SEL S %SEL=1 G START
 I $E("yes",1,$L(%SEL))=%SEL S %SEL=1 G START
HELP ;
 W !,?5,"If you chose selective restore (reply YES), you will be prompted"
 W !,?5,"for each global. You must then respond to each prompt to restore"
 W !,?5,"the global, possibly with a different name."
 W !,?5,"Enter NO to restore all globals that were saved."
 W !,?5,"Enter ^  to exit without restoring any globals."
 G L1
START U 0 W !!,"Restoring..."
NXTGBL K %GSEL S %POS=1
NG1 U %DEV R %GN,%GV
  I %GN="*E" D NEXTFILE G NG1:'QUIT,DONE2
 G DONE:$E(%GN,1,2)="**",BADSAVE:%GN="",NXTGBL:%GN="*"
 I $E(%GN)="*" S %GSEL=$E(%GN,2,999) G NG1
 ; --- 07.03.94 S %GNN=%GN,%GNL=$L(%GNN)+1 S:'$D(%GSEL) %GSEL=%GNN S %NAM=$G(%NAM) I %GN'="*",%GN'[%NAM S %GSEL=%NAM
                S %GNN=$P(%GN,"("),%GNL=$L(%GNN)+1 S:'$D(%GSEL) %GSEL=%GNN S %NAM=$G(%NAM) I %GN'="*",%GN'[%NAM S %GSEL=%NAM
 S %POS=2
ASK ; U 0 W !,"Global: ",%GSEL W:$X>17 "  " W ?18 I %GN'="*",%GN'[%NAM U 0 W *7," ERROR ",*7 H 1 W *7 Q
    ; U 0 W !,"Global: ",%GN W:$X>17 "  " W ?18 I %GN'="*",%GN'[%NAM U 0 W *7," ERROR ",*7 H 1 W *7 Q
  U 0 W !,"Global: ",%GSEL W:$L(%GSEL)'=$L(%GN) ?18,"first index : ",%GN W:$X>17 "  " W ?18 I %GN'="*",%GN'[%NAM U 0 W *7," ERROR ",*7 H 1 W *7 Q
 G:'%SEL SET
 I %S G:%RC]%GNN SET S %S=0
 R "Restore (Y/N/R/S/C/K) <N>? ",*%ANS S:%ANS>96&(%ANS<123) %ANS=%ANS-32 I %ANS=13 S %ANS=78 W "N"
 S %ANS=$C(%ANS)
 G SET:%ANS="Y",READ:%ANS="N",REN:%ANS="R",EXIT:%ANS="^",SKP:%ANS="S",CNT:%ANS="C"
 I %ANS="K",%GN[%NAM K @%GN S %ANS="Y" G SET
 I %ANS'="?" W *7,"  ??" G ASK
 W !,"Enter 'Y' to restore the global using the same name."
 W !,"Enter 'N' to bypass restoring this global."
 W !,"Enter 'R' to restore the global and rename it."
 W !,"Enter 'S' to skip without restoring up to a specified global."
 W !,"Enter 'C' to continue restoring without prompts up to a specified global."
 W !,"Enter '^' to end the entire restore process.",!
 G ASK
READ U %DEV R %GN,%GV G:%GN="" BADSAVE I %GN="*E" D NEXTFILE G READ:'QUIT,DONE2
 I %GN="*" U 0 W:%SEL&(%ANS="N") " ... Not Restored" W:'(%SEL&(%ANS="N")) " ... Restored" Q:$G(PRIZ)  G NXTGBL
SET S %LG=%GN G READ:%ANS="N",NXTGBL:%GN="*",DONE:$E(%GN,1,2)="**"
 S @(%GNN_$E(%GN,%GNL,255))=%GV G READ
REN0 W !,?43,"R"
REN R "ename to: ",%I
 I %I="?" W !,"Enter the new name for the global,",!,"or '^' to return to the previous question." G REN0
 I %I="^" S %ANS="N" G ASK
 S:$E(%I,1)'="^" %I="^"_%I
 I $L(%I)<10,$L(%I)>1,%I?1"^"1A.AN!(%I?1"^%".AN) S %GNN=%I G SET
 W *7,"  Invalid" G REN0
SKP0 W !,?43,"S"
SKP R "kip until: ",%RC
 I %RC="?" W !,"Enter the global name where skipping should stop,",!,"or '^' to return to the previous question." G SKP0
 I %RC="^" G ASK
 S %RC="^"_%RC I $L(%RC)<10,%RC?1"^"1A.AN!(%RC?1"^%".AN) S %S=1,%ANS="N" G ASK
 W *7,"  Invalid" G SKP0
CNT0 W !,?43,"C"
CNT R "ontinue until: ",%RC
 I %RC="?" W !,"Enter the global name where restoring should stop,",!,"or '^' to return to the previous question." G CNT0
 I %RC="^" G ASK
 S %RC="^"_%RC I $L(%RC)<10,%RC?1"^"1A.AN!(%RC?1"^%".AN) S %S=1,%ANS="Y" G ASK
 W *7,"  Invalid" G CNT0
DONE I %TAP U %DEV I @(%MTTMK_"=0") W *12
DONE2 U 0 W !,"Restore Complete"
EXIT U 0
 I $D(%TAP) D:%TAP %KILL^%MTCHK
  C:$D(%DEV) %DEV K %GN,%GNL,%GNN,%GV,%SBP,%TIME,%CMT,%GSEL,%I,%SEQ,%SIZE,%X,%ZA,QUIT,%TAP,%POS,%LG
 ; --- C:$D(%DEV) %DEV K %GN,%GNL,%GNN,%GV,%DEV,%SBP,%SEL,%ANS,%TIME,%CMT,%GSEL,%RC,%S,%I,%FN,%SEQ,%SIZE,%X,%ZA,QUIT,%TAP,%POS,%LG
 Q
BADSAVE U 0 W !,*7,"Invalid backup format...unable to restore." G EXIT
ERR ;
 I $F($ZS,"<MTERR>") U 0 G ERRTAP
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
ERRTAP U %DEV ; I @%MTON,@%MTEOT G NEXTTAPE
 I @%MTTMK G NEXTTAPE ; U 0 W !,"Unexpected tape mark encountered. Last node processed was ",$G(%LG),! G EXIT
 U 0 W !,$ZS,!,"Tape status:" U %DEV D %ERR^%MTCHK Q
NEXTTAPE ;
 S $ZT="ZG "_$ZL_":ERR^%L1GR" U 0
 W !,"End of tape sequence number ",%SEQ," has been reached.",!,"Last node processed is ",%LG,"."
 W !,"After this tape rewinds, mount the next tape.",!
 S %SEQ=%SEQ+1
NT0 U %DEV W *16 U 0
NT1 W !,"Enter 'GO' when tape sequence number ",%SEQ R " is ready: ",%X
 I %X="?" W !,"Mount the next tape (sequence number ",%SEQ,") and enter 'GO' when it is ready.",!,"Or enter '^' to abort the restore.",! G NT1
 I %X["^" G EXIT
 I %X'="GO",%X'="go" W *7,"  ??" G NT1
 U %DEV W *10 I @(%MTON_"=0") U 0 W *7,!,"Tape is not ready" G NT1
 R %GN,%GV
 S %X=$P(%GN,%TIME_"  (sequence ",2) I %X'?1.N1")" U 0 W !,"This is not a correct tape:",!,%GN,!,%GV,! G NT0
 I +%X=%SEQ G NT3
 U 0 W !,"This is sequence number ",+%X,", not number ",%SEQ
NT2 W !,"Do you want to proceed with number ",+%X R "? <N> ",%GN S:%GN="" %GN="N"
 I %GN="?" W !,"Enter 'YES' to continue restoring with tape number ",+%X," instead of number ",%SEQ,!,"Enter 'NO' if you want to mount the correct tape number ",%SEQ,!,"Enter '^' to end the restore." G NT2
 G:%GN["^" EXIT
 S %GN=$ZB(%GN,"_",1) I %GN=$E("NO",1,$L(%GN)) G NT0
 I %GN'=$E("YES",1,$L(%GN)) W "  ??" G NT2
 S %SEQ=+%X
NT3 I %POS=2 U 0 W !,"Restoring ",%GSEL,"  "
 G NG1:%POS=1,READ:%POS=2 S $ZS="<Unknown tape error>" G ERR
NEXTFILE ;
 U 0 W !,"Sequence #",%SEQ," restored",!
 U %DEV R %X U 0 I $E(%X,1,2)="**" S QUIT=1 Q
 W !,"Please put sequence #",%SEQ+1," into the drive and"
 S %SEQ=%SEQ+1
NEXTFIL1 R !,"Press <RETURN> when ready",%X
 I %X?1"?".E W !!,"Press <RETURN> to continue restoring from sequence #",%SEQ,!,"or abort the restore by entering 'control C'" G NEXTFIL1
 C %DEV O %DEV:%FN U %DEV I '$ZA R %X I '$ZC
 U 0 E  W !!,"Cannot access ",%FN,", please correct" G NEXTFIL1
 I %X?2NP1":"2N1" ".E S %X=1
 I %X'=%SEQ W !!,"Out of sequence, this file is #",%X,", please correct" G NEXTFIL1
 S QUIT=0 Q
ZAP ;
  O %DEV:(%FNN:"R") U %DEV F  R STR Q:STR=""  S ^L1ADR($J,$P(STR,"|",2))=$P(STR,"|")
  C %DEV U 0 S %SEL=1,PRIZ=1,NAME=" GLOBAL"
  ; W !?5,"Routine : " R %ROU Q:%ROU=""  I '$D(^L1ADR($J,%ROU)) W "   No Routine...",*7 G Z
  ; --- O %DEV:(%FN:"R":^L1ADR($J,%ROU)) S %GN=%ROU U %DEV R R D START G Z
  D ^%L1RGR1 Q:%NAM=""
Z O %DEV:(%FN:"R":^L1ADR($J,%NAM)) U 0 D NXTGBL C %DEV U 0
  I $G(%ANS)'="^" S %NAM=$O(^L1ADR($J,%NAM)) Q:%NAM=""  G Z
  ; I $G(%ANS)'="^" S %NAM=$O(^L1ADR($J,%NAM)) S:%NAM="" %NAM=$O(^L1ADR($J,"")) G Z
  S GLO=%NAM D PROG^%L1RGR1 Q:%NAM=""  G Z
  Q
Z ; --- O %DEV:(%FN:"R":^L1ADR($J,%NAM)) U 0 D NXTGBL C %DEV U 0
  W *27,"["_(LIN+2)_";"_(COL-1*10+1)_"H" D WRIN^%L1RGR1,MAIN^%L1RGR1 Q:%NAM=""  G Z
  Q

%L1GRAF
GRAF ; GRAFIKA IN %S2ERG1 (CTRL+"<-" = ON ,CTRL+F6 - OFF) [ 05/23/99  4:58 PM ] [ 03/04/94 12:18 PM ]
  N %GR,%RR
G S %GR(1)="`1234567890-=\"  ; 14
  S %GR(2)="QWERTYUIOP[]"    ; 12
  S %GR(3)="ASDFGHJKL;'"     ; 11
  S %GR(4)="ZXCVBNM,./"      ; 10
  ;
  S %GR(5)="~!@#$%^&*()_+|"  ; 14
  S %GR(6)="qwertyuiop{}"    ; 12
  S %GR(7)="asdfghjkl:"""    ; 11
  S %GR(8)="zxcvbnm<>?"      ; 10
  ;
  S %RR(1)="176,179,177,178,219,220,221,222,223,240,254,196,205,186"  ; 14
  S %RR(2)="218,194,191,174,175,241,242,243,246,201,203,187"          ; 12
  S %RR(3)="195,197,180,252,250,249,248,247,204,206,185"              ; 11
  S %RR(4)="192,193,217,171,172,251,253,200,202,188"                  ; 10
  ;
  S %RR(5)="173,161,162,163,164,165,166,167,168,169,170,239,244,245"  ; 14
  S %RR(6)="214,210,183,224,225,226,227,228,229,213,209,184"          ; 12
  S %RR(7)="199,215,182,230,231,232,233,234,198,216,181"              ; 11
  S %RR(8)="211,208,189,235,236,237,238,212,207,190"                  ; 10
  ;
  S %SYM="" F I=1:1:8 S %SYM=%SYM_%GR(I)
  S %GRA="" F I=1:1:8 F I2=1:1:$L(%RR(I),",") S %GRA=%GRA_$C($P(%RR(I),",",I2))
  Q
GRA(ARG) ;
  I $A(ARG)>32&($A(ARG)<127) S ARG=$TR(ARG,%SYM,%GRA)
  Q ARG
HELP ;
  N %GR,%RR,LIN,KOD D G
  U $P:(NOECHO:NOWRAP)
  W #,%ENG F LIN=1:1:4 W !!?LIN>1*5+(LIN*3) D
  .F I=1:1:$L(%RR(LIN),",") S KOD=$P(%RR(LIN+4),",",I) W "  ",$C(KOD),"  "
  .; W !?LIN>1*5+(LIN*3) F I=1:1 S KOD=$P(%RR(LIN),",",I) Q:KOD=""  W "  " X %LIGHT W $C(KOD) X %XCL W "  "
  .W !?LIN>1*5+(LIN*3) X %LIGHT F I=1:1 S KOD=$P(%RR(LIN),",",I) Q:KOD=""  W "  " W $C(KOD) W "  "
  .X %XCL
  .W !?LIN>1*5+(LIN*3) F I=1:1:$L(%RR(LIN),",") W "  " W $E(%GR(LIN),I) W "  "
  Q

%L1GS
%L1GS ;service@greystone.com %GO;19920722 21:15;global output [ 20.07.26 07:36 ] [ 06.06.10 11:31 ] [ 03.08.05 11:01 ] 
 ;Extracts global data to standard global output (GO) file
 ;Invoke ^%GO to get interaction
 ;possible enhancements:
 ;selection by key list, range and/or wildcard, rather than global name
 ;callable entry point
 ;
 w !,"Global Output Utility",!
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%GO" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%GO")
 n g,gn,m,n,%ZD,%ZG,%ZH,fmt
 I $D(%L1GS("SV"))>9 D  G M
 .D init^%L1GSEL
 .N N S N="" F  S N=$O(%L1GS("SV",N)) Q:N=""  S %ZG=N D BDK^%L1GSEL
 d ^%L1GSEL
 ;;S %ZG=0
 ;;F  R !!,"Global selector ^",GL Q:GL=""!(GL="^")  S %ZG("^"_GL)="",%ZG=%ZG+1
M ;
 i %ZG=0 w !,"No globals selected" q
 S %ZH=""
 I '$D(%L1GS) r !,"Header Label: ",%ZH,!
 s fmt=0
 f  d  q:$l(%ZD)
 .I $D(%L1GS("TO")) S %ZD=%L1GS("TO") K %L1GS("TO")
 .E  r !,"Output device: <terminal>: ",%ZD,!
 . D ZDV
 . q
 ;
BGW K %L1GS ; TV : IN : %ZD (OUT FILE),%ZG() - GLOBALS LIST
 q:%ZD="^"
 w !!
 i '$l($G(%ZH)) s %ZH="%GO Global Output Utility"
 u %ZD w %ZH,!,"GT.M ",$zd($h,"DD-MON-YEAR 24:60:SS") w !
 s gn="",(m,n)=0
 f  s gn=$o(%ZG(gn)) q:gn=""  s g=gn d
 . u $p w gn,! u %ZD i $p=%ZD w !
 . s m=m+1
 .i $d(@g)'[0 w g  d   s n=n+1
 . .w !,@g,!
 . i g'["(" d  q  ; whole globals
 . . f  s g=$q(@g) q:g=""  d
 . . . w g,!,@g,!
 . . . s n=n+1
 .N MAC,%MAC2,%MAC1 S MAC=g
 .I $E(MAC,$L(MAC))["," S MAC=$E(MAC,1,$L(MAC)-1)
 .I MAC["(",$E(MAC,$L(MAC))'[")" S MAC=MAC_")"
 .I $D(@MAC)
 .S %MAC2=$E($R,1,$L($R)-1)_$S(MAC["(":",",1:"")
 .S %MAC1=$E(MAC,1,$L(MAC)-1)_","""")"
 .S %MAC1=$Q(@%MAC1) Q:%MAC1=""
 .F  Q:%MAC1'[%MAC2  Q:%MAC1=""  W %MAC1,!,@%MAC1,! S %MAC1=$Q(@%MAC1)
 u %ZD w !!
 u $p
 w !!,"Total of ",n," node",$s(n=1:"",1:"s")
 w " in ",m," global",$s(m=1:".",1:"s."),!!
 c:%ZD'=$p %ZD u $p:(ctrap="":exc="")
 q
 ;
ERR u $p w !,$p($zs,",",2,99),!
 ; Warning - Fall-though
 s $ec=""
EXIT i $d(%ZD),%ZD'=$p c %ZD
 u $p:(ctrap="":exc="")
 q
TV ; IN : %ZD - OUT FILE, %ZG() - GLOBALS LIST
 S %ZH="" D ZDV G BGW
 Q
ZDV ;
 i '$l(%ZD) s %ZD=$p q
 i $E(%ZD)="." S %ZD="/home/gtmuser/ppj-transfer/"_$E(%ZD,2,255)
 i %ZD="^" q
 i %ZD="?" d  q
  . w !!,"Select the device you want for output"
  . w !,"If you wish to exit enter a carat (^)",!
  . s %ZD=""
 I %ZD["/mnt/floppy/" D ^%L1FLOP
 i $zparse(%ZD)="" w "  no such device" s %ZD="" q
 o %ZD:(newversion:block=2048:record=2044:exception="g noopen"):0
 i '$t  w !,%ZD," is not available" s %ZD="" q
 Q
noopen . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
 q
SVSHP(%ZD,CD) ;
 I '$D(^SHP(CD)) S %SAY=" ^SHP("_CD_") IS NOT EXIST ! " X %XMSGV(1) Q
 I $G(%ZD)="" S %SAY=" OUT FILE IS NOT DEFINED ! " X %XMSGV(1) Q
 K %ZG
 N N S N="" F  S N=$O(^SHP(CD,N)) Q:N=""  D
 .S %GN=$G(^(N)) Q:%GN=""  I $E(%GN)'="^" S %GN="^"_%GN
 .S %ZG(%GN)=""
 G TV
 
 

%L1GSEL
%L1GSEL ;GT.M %GSEL utility - global select into a local array [ 26.05.03 08:44 ] [
 ;invoke ^%L1GSEL to create %ZG - a local array of existing globals, interactively
 ;
 N (%ZG)
 n add,beg,cnt,end,g,gd,gdf,k,out,pat,stp
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%L1GSEL" u $p:(ctrap=$c(3):exc="zg "_$zl_":LOOP^%L1GSEL")
 D init
 D SEL W ! D cur W ! K SEL
 d main
 u $p:(ctrap="":exc="")
 q
GD n add,beg,cnt,end,g,gd,gdf,k,out,pat,stp
 s cnt=0,(out,gd,gdf)=1
 d main
 i gdf s %ZG="*" d setup,it w !,"Total of ",cnt," global",$s(cnt=1:".",1:"s."),!
 q
CALL n add,beg,cnt,end,g,gd,gdf,k,out,pat,stp
 s (cnt,gd)=0
 i $d(%ZG)>1 s g="" f  s g=$o(%ZG(g)) q:'$l(g)  s cnt=cnt+1
 i $g(%ZG)'?.N s out=0 d setup,it s %ZG=cnt q
 s out=1
 d main
 q
init k %ZG
 s (cnt,gd)=0,out=1 u $p
 q
main f  d inter q:'$l(%ZG)
 s %ZG=cnt
 q
inter r !,"Global ^",%ZG,! q:'$l(%ZG)
 i $e(%ZG)="?",$l(%ZG)=1 d help q
 i (%ZG="?D")!(%ZG="?d") d cur q
BDK I %ZG["(" d  q
 .I $E(%ZG,$L(%ZG))="," S %ZG=$E(%ZG,1,$L(%ZG)-1)
 .I %ZG["(",%ZG'[")" S %ZG=%ZG_")"
 .n $zt s $zt="zg "_$zl_":ERI^%L1GSEL"
 .i $E(%ZG)'="-",'$d(@("^"_%ZG)) W *7," -- not exist !!!" g ES
 .i $e(%ZG)="-" S g="^"_$e(%ZG,2,99),add=0 d save q
 .s g="^"_%ZG,add=1 d save
ES .q
ERI .w *7," -- wrong name !!!" G ES
 d setup,it
 I '$D(SEL) w !,$s(gd:"T",1:"Current t"),"otal of ",cnt," global",$s(cnt=1:".",1:"s."),!
 q
setup i gd s add=1,cnt=0,g=%ZG k %ZG s %ZG=g
 e  i "'-"[$e(%ZG) s add=0,g=$e(%ZG,2,999)
 e  s add=1,g=%ZG
 s g=$tr(g,"? !""#$&'()+'-./;<=>@[]\^_`{}|~","%")
 s g=$tr(g,$c(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,127))
 s end=$p(g,":",2),beg=$p(g,":")
 i end=beg s end=""
 q
it s gdf=0
 i end'?."*",end']beg q
 s g=beg d pat
 i pat["""" d start f  d search q:'$l(g)  d save
 i pat["""",'$l(end) q
 s beg=stp
 i '$l(g) s g=stp
 s pat=".E",stp="^"_$e(end)_$tr($e(end,2,9999),"%","z") d start f  d search q:'$l(g)  d save
 s g=end d pat
 i pat["""" s:beg]g g=beg d start f  d search q:'$l(g)  d save
 q
pat ;;
 i $e(g)="%" s g="!"_$e(g,2,9999)
 s pat=g
 f  q:$l(g,"%")<2  s g=$p(g,"%",1)_"#"_$p(g,"%",2,999),pat=$p(pat,"%",1)_"""1E1"""_$p(pat,"%",2,999)
 f  q:$l(g,"*")<2  s g=$p(g,"*",1)_"$"_$p(g,"*",2,999),pat=$p(pat,"*",1)_""".E1"""_$p(pat,"*",2,999)
 i $e(g)="!" s g="%"_$e(g,2,9999),pat="%"_$e(pat,2,9999)
 i pat["""" s pat="1""^"_pat_""""
 s g="^"_$p($p(g,"#"),"$"),stp=g_$e("zzzzzzz",$l(g)-1,8)
 q
start i g="^" s g="^%"
 i g?@pat,$d(@g) d save
 q
search f  s g=$o(@g) s:g]stp g="" q:g?@pat!'$l(g)
 q
save i add,'$d(%ZG(g)) s %ZG(g)="",cnt=cnt+1,%ZG=cnt d prt:out
 i 'add,$d(%ZG(g)) k %ZG(g) s cnt=cnt-1 S %ZG=cnt d prt:out
 q
prt w:$x>70 ! w g,?$x\10+1*10
 q
help ;
 w !,?2,"<RET>",?25,"to leave",!,?2,"""*""",?25,"for all"
 w !,?2,"global",?25,"for 1 global"
 w !,?2,"global1:global2",?25,"for a range"
 w !,?2,"""*"" as a wildcard",?25,"permitting any number of characters"
 w !,?2,"""%"" as a wildcard",?25,"for a single character in positions other than the first"
 w !,?2,"""?"" as a wildcard",?25,"for a single character in positions other than the first"
 i gd q
 w !,?2,"""'"" as the 1st character",!,?25,"to remove globals from the list"
 w !,?2,"?D",?25,"for the currently selected globals",!
 q
cur w ! s g=""
 f  s g=$o(%ZG(g)) q:'$l(g)  w:$x>70 ! w g,?($x\10+1*10)
 q
ERR u $p w !,$p($ZS,",",2,999),!
 u $p:(ctrap="":exc="")
 s $ec=""
 q
LOOP d main
 u $p:(ctrap="":exc="")
 q
SEL ;
 N ANS K %ZG S SEL="" n out s out=0
 U $P R !!,"SAVE DATE - 1, SAVE SET - 2 , SAVE NORMAL - 3 : ",ANS Q:ANS=""
 I ANS'=1,ANS'=2,ANS'=3 W *7," ???" G SEL
 I ANS=3 K %ZG Q
 G:ANS=2 S2
 ;
 F  R !!,"HOW MANY DAYS:",NDAY Q:NDAY=""  Q:NDAY?1N.N  W *7," ???"
 G:NDAY="" SEL
 S N=$H-NDAY-1 K %ZG S cnt=0
 F  S N=$O(^%ERGS(N)) Q:N=""  S N1="" F  S N1=$O(^%ERGS(N,N1)) Q:N1=""  I $E(N1)="^" D
 .D GLB(N1)
 .S %ZG(GLB)="",cnt=cnt+1
 Q
S2 K %ZG
 R !!,"  NAME :",NAME
 I NAME="?" D  G S2
 .S (N,N0)="%GS" F I=1:1  S N=$O(^SHP(N)) Q:N=""  Q:N'[N0  W !,$P(N,N0,2)," ",$G(^(N)) I '(I#18) R "<>",Y Q:Y="."
 I '$D(^SHP("%GS"_NAME)) W *7," -- NOT EXIST !!! " G S2
 S gd=0,cnt=0
S21 S N="" F  S N=$O(^SHP("%GS"_NAME,N)) Q:N=""  S %ZG=$G(^(N)) Q:%ZG=""  D BDK
 Q
GLB(GLOB) ;
 I $E(GLOB,$L(GLOB))="," S GLOB=$E(GLOB,$L(GLOB)-1)
 I GLOB["(",$E(GLOB,$L(GLOB))'=")" S GLOB=GLOB_")"
 S GLB=GLOB
 I GLOB["(" D
 .S GLB=$P(GLOB,"(")_"("
 .N J F J=1:1:$L(GLOB,",") S GLB=GLB_""""_$$^%L1IND(GLOB,J)_""","
 .S GLB=$E(GLB,1,$L(GLB)-1)_")"
 Q

%L1GSEQ
%L1GSEQ ;--- OPERATIONS WITH SEQ. GLOBALS (DEL,ADD) [ 18.11.16 15:27 ] [ 30.08.14 09:08 ] [ 23.01.01 11:47 AM ] 
DEL(%GLB,%SH) ;  DELETE FROM SEQUENTIAL GLOBAL
 N %I I '$D(@%GLB@(%SH)) Q
 F %I=%SH:1 Q:'$D(@%GLB@(%I+1))  D
 .K @%GLB@(%I) S MAC2=$E(%GLB,1,$L(%GLB)-1)_",%I)"
 .S MAC1=$E(%GLB,1,$L(%GLB)-1)_",%I+1)" D ^%S1GC1
 K @%GLB@(%I)
 Q
 ;
ADD(%GLB,%SH,%VL,%OK) ;
 N %I,%LAST S %OK=0 ;;I '$D(@%GLB@(%SH-1)) Q
 F %I=%SH:1 Q:'$D(@%GLB@(%I))
 S %LAST=%I-1
 ;;S %LAST=$O(@%GLB@(999999999),-1)
 F %I=%LAST:-1:%SH D
 .K @%GLB@(%I+1)
 .I %GLB["(" D
 ..S MAC1=$E(%GLB,1,$L(%GLB)-1)_",%I)"
 ..S MAC2=$E(%GLB,1,$L(%GLB)-1)_",%I+1)" D ^%S1GC1
 .I %GLB'["(" D
 ..S MAC1=%GLB_"(%I)"
 ..S MAC2=%GLB_"(%I+1)" D ^%S1GC1
 ;
 K @%GLB@(%SH) S @%GLB@(%SH)=%VL
 Q
 
 

%L1GTR
%L1GTR ; SEND GLOBALS [ 03/10/98  5:18 PM ] [ 06/09/97  5:34 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,USERPHONE,USERPORT,USERGLOB,USERMOD,MDTONE,MDXON) S $ZS="" D ^%L1C
 I '$D(USERMOD) S USERMOD=1
 U 0 S PRT=$P S ZT=$ZT S $ZT="ZG "_$ZL_":ZT^%L1GTR"
 S US="U PORTN:(0::::#800101::::$C(13))"
 ; S %HBR=$C(27,41,74)
 S %ENG=$C(27,41,76)
 S BUF=255 S SOT=$C(4),STX=$C(2),ETX=$C(3)
 X %chista
 I $D(^GTR000(PRT)) K %Q S %Q("Z")=" mcew wqtp didy xeciy jiyndl ",%Q("X")=10,%Q("Y")=4 D ^%S2ASK I YES G IN01
 K ^GTR000(PRT) I $D(USERGLOB) G IN0
 K ^UTILITY($J) D ^%GSEL
IN0 S GNAME="" F  S GNAME=$O(^UTILITY($J,GNAME)) Q:GNAME=""  S MAC="^"_GNAME D GLSV
IN01 I $D(^GTR000(PRT))<10 U 0 W !,"HASN'T GLOBALS FOR TRANSMISSION" Q
 S PORTN=USERPORT
 D ^%L1MD(USERPORT,USERMOD,USERPHONE,$G(MDTONE),US,$G(MDXON)) I %L1MDOK'=1 G EXIT
M S ER=0 X US
 S GNAME="" F  S GNAME=$O(^GTR000(PRT,GNAME)) Q:GNAME=""  D  Q:ER=10000
 .U 0 W !,"--",GNAME,! S OKSND=0 D SETSTR
 I ER>999 D ERREND G EXIT
 U 0 W !!,"******** TRANSMISSION SUCCESFUL **********",!!
 ;;D PORT2^%L1GTR1 ;*** LEV 3/04/94
EXIT H 1
 I $G(PORTN)>3,PORTN'=$P O PORTN::1 I  X US D HANGUP C PORTN
 K USERPHONE,USERPORT,USERGLOB S $ZT=$G(ZT)
 Q
 ;-
ERREND ;
 I $ZS'="" S ER=10000
 U 0 W !!,"******** TRANSMISSION ERROR (ER=",ER,") **********",!!
 S ^%L1GTER=ER
 X US W $C(5)_"SOF",$C(13)
 I ER>1000 W !!,"*** END OF TRANSMISSION ***",! H 1
 Q
 ;-
SETSTR ;
 X US S ER=0
 S N=-1 S N=$N(^GTR000(PRT,GNAME,N))
 I N'=-1 D SET ;I ER=1000 K ^GTR000(PRT,GNAME)
 ;I ER=10000 K ^GTR000(PRT)
 I N>0,ER<1000 G SETSTR
ENDP Q
 ;-
SET S CNER=0,CNER1=0
S1 S STRG=^GTR000(PRT,GNAME,N) S OK=1,ER=0
 ;S STROUT=SOT_GNAME_"*"_(OKSND+1)_"*"_$L(STRG)_"*"_$ZCR(STRG,1)_STX_STRG
 S STROUT=SOT_GNAME_"*"_N_"*"_$L(STRG)_"*"_$ZCR(STRG,1)_STX_STRG
 S BCC=$ZCR($E(STROUT,2,255),1)
 S STROUT=STROUT_ETX_BCC
 F JJ=1:1:BUF R *Z:0
 W STROUT,$C(13)
S2 R ANS1:6 E  S OK=0 S ER=3,CNER=CNER+1 D ER G:CNER<5 S1 S ER=10000 Q
 S ER=0,CNER=0 I ANS1="OK" G S2
 I BCC'=$P(ANS1,ETX,2) D  S OK=0 G:ER=4 ENDST I ER>999 D ERREND G ENDST
 .I $P($P(ANS1,STX,2),ETX)=($C(5)_"DOUBLE") K ^GTR000(PRT,GNAME,N) S ER=4 Q
 .I $P($P(ANS1,STX,2),ETX)=($C(5)_"SEQ") S ER=10000 Q ; 1000 *** LEV
 .S ER=$P($P(ANS1,STX,2),ETX)
 I 'OK S CNER1=CNER1+1 D ER G:CNER1<6 S1 S ER=10000 Q
 S OK=1,OKSND=OKSND+1,CNER1=0
 ;U 0 W GNAME_"*"_(OKSND+1)_"*"_STRG,! U PORTN
 U 0 W GNAME_"*"_N_"*"_STRG,! U PORTN
 K ^GTR000(PRT,GNAME,N)
ENDST ;
 U PORTN Q
 ;-
ER U 0 W !,"ERR: ",ER,! S ^%L1GTER=ER U PORTN
 Q
 ;-
DEB U 0 F J=1:1:$L(SS) W $$^%L1ZH($A($E(SS,J)))_" "
 U 0 W !
 U PORTN
 Q
GLSV ;
 S %LENGTH=0 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 U 0 W !!,MAC S CHKS=0
 S %MAC2=$R S:$R[")" %MAC2=$E($R,1,$L($R)-1) S II=0
 I %PR S (GT1,^GTR000(PRT,GNAME,1))=MAC,(GT2,^GTR000(PRT,GNAME,2))=@MAC S II=2,CHKS=CHKS+$ZCR(GT1,1)+$ZCR(GT2,1) K GT1,GT2
 S %MAC1=MAC
 S %MAC1=$Q(@%MAC1) I %MAC1="" W:%PR=0 *7,!?15,"*** ARRAY ",MAC," HASN'T NODES !" Q
PR F  Q:%MAC1'[%MAC2  Q:%MAC1=""  Q:%LENGTH  S II=II+1 S (GT,^GTR000(PRT,GNAME,II))=%MAC1,CHKS=CHKS+$ZCR(GT,1),II=II+1,(GT,^GTR000(PRT,GNAME,II))=$G(@%MAC1,$C(7)) S CHKS=CHKS+$ZCR(GT,1) S:$L(GT)>236 %LENGTH=1 S %MAC1=$Q(@%MAC1)
 I %LENGTH U 0 W *7,!!,"*** A NODE TOO LENGTH :",%MAC1,!!,GT,!! K ^GTR000(PRT,GNAME) G END
 S II=II+1 S ^GTR000(PRT,GNAME,II)=$C(5)_$S($O(^UTILITY($J,GNAME))="":"END",1:"ENDG")_"*"_GNAME_"*"_II_"*"_CHKS_$C(6)
END K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2 C:$D(PORTN) PORTN Q
HANGUP D ^%L1HANG
 Q
BEG D BEG^%L1HANG
 Q
ZT D ERREND G EXIT

%L1GTR1
%L1GTR1 ;RECEIVE GLOBALS VIA MODEM [ 10/21/2000 11:32 AM ] [ 05/23/99  5:07 PM ] [ 06/09/97  4:32 PM ]
 N (%UPRCOD,%XMSG,USERPORT,USERMOD) S $ZS="" U $P:(CENABLE) D ^%L1C
 I '$D(USERMOD) S USERMOD=1
 U 0 S PRT=$P S ZT=$ZT
 W !?20,"CTRL/C - EXIT",!
 S US="DEV:(0::::#800101)"
ZP I $G(USERPORT)>3 S DEV=USERPORT G IN
ASK R !!,"I/O PORT? > ",DEV G:DEV="" END+1
IN I $P=DEV!'DEV W !!,"CANNOT SELECT YOUR OWN DEVICE.",*7 G ASK
 U $P:(CENABLE) O DEV::0 E  U 0 W *7,"..LINE IN USE..WAITING.." O DEV W "READY"
 U DEV I $ZB($ZA,2,1) U 0 W !,"DEVICE ",DEV," IS AN OUTPUT ONLY DEVICE.",*7 G ASK
OP O DEV S %DT=0 S $ZT="S zr=$R "_^ZT_"ZG "_$ZL_":END^%L1GTR1"
 D HANGUP,BEG
PORT U @US
 H 1
 W "ATS0=1"_$C(13)
 R %Y:4 G:%Y[$C(1) END S %CR=$ZB U 0 W:$L(%Y) %Y W:$T $C(%CR),! S %DT=%DT+1
PORT1 I %Y'["OK" H 2 G:%DT<8 PORT U 0 W *7,!!,"NO CARRIER" D HANGUP G END+1
 S END=0,CNOLD=+$G(^L1G("CNOLD")),BCCSUM=+$G(^L1G("BCC")),GNAMEOLD=$G(^L1G("GNAME")),STROUT=""
 F  U @US R *BG:0 Q:END  X "I BG>0,BG'=4 U 0 W $C(BG) U DEV" I BG=4 D  Q:STROUT[($C(5)_"SEQ")  Q:STR=($C(5)_"SOF")
 .R STR Q:STR=$C(5)_"SOF"  S ST1=$P(STR,$C(2)),STRG=$P($P(STR,$C(2),2),$C(3))
 .B
 .S GNAME=$P(ST1,"*"),CN=$P(ST1,"*",2),DL=$P(ST1,"*",3)
 .I CN=1 S CNOLD=0,BCCSUM=0,GNAMEOLD=""
 .I GNAMEOLD="" S GNAMEOLD=GNAME
 .S BCC1=$P(ST1,"*",4)
 .S BCC2=$P(STR,$C(3),2)
 .I BCC2'=$ZCR($P(STR,$C(3)),1) S STROUT=$C(4)_GNAME_$C(2)_$C(5)_"BCC2"_$C(3)_$C(13) W STROUT Q
 .I BCC1'=$ZCR(STRG,1) S STROUT=$C(4)_GNAME_$C(2)_$C(5)_"BCC1"_$C(3)_$C(13) W STROUT Q
 .I STRG[$C(5),STRG[$C(6),STRG["END",GNAMEOLD=$P(STRG,"*",2) D  Q  ;*** END ROUT
 ..I $G(CNOLD)=($P(STRG,"*",3)-1),BCCSUM=+$P($P(STRG,"*",4),$C(6)) D  Q
 ...D ZAP S STR=$C(5)_$S(STRG["ENDG":"SOFG",1:"SOF")
 ...S STROUT=$C(4)_GNAME_$C(2)_"OK"_$C(3)_BCC2_$C(13) W STROUT
 ...S END=0,CNOLD=0,BCCSUM=0,GNAMEOLD=""
 ..S STROUT=$C(4)_GNAME_$C(2)_$C(5)_"SEQ"_$C(3)_$C(13) W STROUT Q
 .I CN=CNOLD S STROUT=$C(4)_GNAME_$C(2)_$C(5)_"DOUBLE"_$C(3)_$C(13) W STROUT Q
 .I CN<CNOLD!(CN>(CNOLD+1)) S STROUT=$C(4)_GNAME_$C(2)_$C(5)_"SEQ"_$C(3)_$C(13) W STROUT Q
 .I $G(GNAMEOLD),GNAMEOLD'=GNAME S STROUT=$C(4)_GNAME_$C(2)_$C(5)_"SEQ"_$C(3)_$C(13) W STROUT Q
 .S CNOLD=CN,GNAMEOLD=GNAME,BCCSUM=BCCSUM+BCC1
 .S ^L1G("CNOLD")=CN,^L1G("GNAME")=GNAME,^L1G("BCC")=BCCSUM
 .S ^GTR100(PRT,GNAME,CN)=$P($P(STR,$C(2),2),$C(3)) ZF
 .U 0 W ^(CN)," CN="_CN," BCC=",BCCSUM,! U DEV
 .S STROUT=$C(4)_GNAME_$C(2)_"OK"_$C(3)_BCC2_$C(13) W STROUT Q
 U DEV F I=1:1:10 R A:3 Q:A["ATH"!(A["NO CAR")
END U 0 I $ZS["INRPT" W !,*7,"INTRERUPT",! D HANGUP C DEV S $ZT=$G(ZT) Q
 I $ZS'="" W !,$ZS D HANGUP C DEV Q
 GOTO OP ;U 0
 Q
 ;-
ZAP ;
 S J=0 F  S J=J+1 Q:'$D(^GTR100(PRT,GNAME,J))  I ^(J)["^" S:$G(^(J+1))'=$C(7) @(^(J))=^GTR100(PRT,GNAME,J+1) S J=J+1
 U DEV
 Q
HANGUP ;
 N PORTN S PORTN=DEV
 D ^%L1HANG
 Q
BEG N PORTN S PORTN=DEV D BEG^%L1HANG Q

%L1HANG
%L1HANG ;---INPUT: PORTN,USERMOD (TIP MOD)         [ 08.02.06 12:07 ] [ 01.02.04 14:05 ] [ 26.06.02 12:39 PM ]
 ;INPUT: PORTN,USERMOD
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PORTN,USERMOD,%L2MD,%L1RCV) D ^%L1C
 I $D(%L2MD) D MSG^%L2MD("WAIT","M")
 I '$D(%L2MD),'$D(%L1RCV) D ZU(0) W !,"WAIT ...",!
 O PORTN::3 E  Q
TV U PORTN:(NOECHO:NOWRAP:PASTHRU:TERM=$C(13))
 D HNG("ATH0ZS0=0") Q  ; PNIMI
 Q
HNG(ST) ;
 D CLPORT
 D ESC
 D CLPORT
 I $E(ST,$L(ST))'=$C(13) S ST=ST_$C(13)
 D WR(ST)
 D CLPORT
 Q
 ;
BEG ;
 ;;I USERMOD=1!(USERMOD=3) D CLPORT D WR("ATZ") D CLPORT Q
 I USERMOD'=2 Q
 D CLPORT D WR("ATH0Z0&F") Q
 S ST="AT&F"_$C(13)
 H 1 D WR(ST)
 D CLPORT
 S ST="AT%C0X4"_$C(13)
 H 1 F I=1:1:$L(ST) W $E(ST,I) D DELAY
 D CLPORT
 Q
CLPORT ;
 U PORTN F  R A:1 E  Q
 Q
WR(ST) ;
 F I=1:1:$L(ST) W $E(ST,I) D DELAY
 Q
DELAY F II=1:1:$G(%DELAY,10000)
 Q
ESC ;
 ;H 1
 N I F I=1:1:3 W $E("+++",I) D DELAY
 H 1
 Q
ZU(PORT) ;
 I $P["tty" U $P Q
 U ^[$$^%L1GLD]dev(1)
 Q

%L1HB
%L1HB(%ST) ; [ 15.03.19 11:10 ] [ 02.11.06 08:25 ] [ 18.01.06 17:55 ] [
 I $G(%ENGLISH) Q %ST
 I '$D(%TES1)!'$D(%TES2)!'$D(%TEN)!'$D(%THB) D ^%L1C
 ;;Q $TR($TR(%ST,%TES1,%TES2),%TEN,%THB)
 Q $$W^%L1C(%ST)
 

%L1HBR
%L1HBR(%A) ; [ 15.03.19 07:10 ] [ 
 S %A=$$RPL^%L1FRM(%A,%CLI,"<%CLI>")
 S %A=$$RPL^%L1FRM(%A,%CCL,"<%CCL>")
 ;;S %A=$TR($TR(%A,%TES1,%TES2),%TEN,%THB)
 S %A=$$W^%L1C(%A)
 S %A=$$RPL^%L1FRM(%A,"<%CLI>",%CLI)
 S %A=$$RPL^%L1FRM(%A,"<%CCL>",%CCL)
 Q %A
 

%L1HEAD
%L1HEAD(DUMP) ; RSD HEADER [ 04.03.07 13:22 ] [ 13.07.06 12:30 ] [ 15.02.06 12:42 ]
 I $ZGBLDIR=$G(^UCI("MGC")) Q " VC "
 N %AT S %AT=""
 N GLD S GLD=$$^%L1GLD
 I $L($G(^[GLD]PL("ESEK",1))),$G(^[GLD]PLUK)'["MLY" S %AT=" "_^[GLD]PL("ESEK",1)_" "
 I $G(^[GLD]PLUK)["MLY",$D(^UCI("MLG")),$P'["/dev/vc/2" S %AT=" "_$G(^[^UCI("MLG")]STAT("NAME")) I '$G(^P1PRM("NOMRKZN")) S %AT=%AT_" "_$G(^[^UCI("MLG")]STAT("MLY","EM","MRKZ"))_" "
 Q %AT

%L1HFS
%L1HFS ; DOS-FILE EDITOR  [ 29.06.03 22:39 ] [ 13.04.01  1:54 PM ] [ 03.08.00  2:40 PM ]
 N (%NMF,%UPRCOD,%XMSG,%TIP) D ^%L1C ; [ 10/24/97  2:46 PM ]
 U 0 S PRT=$P S %S="" I $D(%NMF) S %NMF1="" G IN
Z1 Q:$D(%NMF1)  X %chista S %FL="" U 0 S %SAY="HFS-FILE EDITOR" X %XMSGV
 W !!,"FULL NAME OF HOST FILE (INPUT): " D ^%ZMSL
 I %S="?"!(%TO="F7") D O13^%L1OS S %S=$S($G(%PATH)'="":%PATH_"\",1:"")_$TR($E(%L2VNM,1,8)_"."_$E(%L2VNM,11,13)," ","") G Z1
 G:%S=""!(%TO="END") END
 S %NMF=%S
IN U 0 W !!?5,%NMF
 S %ER=$$^%L1ZOS(10,%NMF) I %ER<0 D ^%L1OS1 S %Q("Z")="ENTER DATA",%Q("U")="N" D ^%S1ASK G:'YES Z1
ZF S %GETIN=2,%GET="DOS FORMAT - 1, LINUX FORMAT - 2 :" D NE^%L1GET I %S=""!(%TO="END") G Z1
 I %S'=1,%S'=2 W *7 G ZF
 S %DOS=2-%S
 O %NMF:(READONLY:REWIND:EXCEPTION="g TE^%L1HFS"):2 E  U 0 W !,"*** DEVICE 51 IN USE !" G Z1
 I $ZEOF D OE G Z1
 C %NMF G:$$^%L1ZOS(10,%NMF)<0 Z11 O %NMF:(READONLY:REWIND)
 U %NMF:(TERM=$C(13,10,27)) K ^S000(PRT)
 F %I=1:1 R %STRING Q:$ZEOF  D  I '(%I#50) U 0 W "." U %NMF
 .S ^S000(PRT,%I)=$P($P($E(%STRING,1,255),$C(13)),$C(10))
 .I $L(%STRING)>255 S %I=%I+1 S ^S000(PRT,%I)=$E(%STRING,256,512)
 C %NMF
Z11 S U=1 K L,R,LR D ^%S2ERG
Z2 U 0 X %chista S %S=%NMF W !!,"FULL NAME OF HOST FILE (OUTPUT): " D ^%ZMSL G:%S="" Z1
 I %S="?" D DIR^%OS G Z2
 I $$^%L1ZOS(10,%S)'<0 S %Q("Z")="FILE IN DIRECTORY! ARE YOU SURE",%Q("U")="N" D ^%S1ASK G:'YES Z2 S %M="D",%P=1,%EXIST=1 S %ER=$$^%L1ZOS(2,%S) I %ER<0 D ^%L1OS1 G Z2
 O %S:(WRITE:NEWVERSION)
 ;I $ZC'=0 D OE G Z2
 U %S F %I=1:1 Q:'$D(^S000(PRT,%I))  W ^(%I),!
 C %S
 I %DOS ZSY "unix2dos "_%S
 K ^S000(PRT) G Z1
END C 51 Q
L N  D ^%L1C S %LOOK="" G Z1
TE W *7,!,"READ ERROR $ZC=",$ZC Q
OE W *7,"*** OPEN ERROR ! $ZC=",$ZC Q
C Q

%L1HOV
%L1HOV(%DAT) ; HOV TISKORET [ 16.01.04 11:37 ] [ 24.06.03  1:45 PM ] [ 23.06.03  1:54 PM ]
 I '$D(^%HOV) Q 1
 I $$^%L1DC(^%HOV,3)-7'>%DAT D  Q $S($$^%L1DC(^%HOV,3)<%DAT:0,1:1)
 .S %GET="!!! dqxib oekcrl dpkez wtql xywzdl `p"
 .N %RZ S %RZ=$$^%L1DC(^%HOV,3)-%DAT
 .I %RZ>0 S %GET="( mini "_($$^%L1DC(^%HOV,3)-%DAT)_" cer ex`yp ) "_%GET
 .D N^%L1GET
 ;;I $$^%L1DC(^%HOV,3)'>%DAT I 1/0 Q
 Q 1
 N %DT,%DT1,%GG,%MM,%DD,%OK
 S %DT=$ZD(%DAT,3),%GG=$P(%DT,"/",3),%MM=$P(%DT,"/",2),%DD=$P(%DT,"/")
 S %DT1=%GG+%MM S %OK=1 I %DD<20 K ^%HOV(1)
 Q:$P($H,",",2)<22000 1
 I $D(^%HOV),$G(^%HOV)'=(%DT1\%MM) D  I '%OK Q %OK
 .N %SH S %SH=0
Z .S %GET=" : "_%MM_"."_%GG_" ycegl `nqiq yiwdl `p #4" D N^%L1GET I %TO="END" S %OK=0 Q
 .I %S'=(%DT1\%MM) S %SH=%SH+1 S %SAY=" ! dieby `nqiq " X %XMSGV(1) G:%SH<3 Z S %OK=0 Q
 .S ^%HOV=%S
 I $D(^%HOV),'$D(^%HOV(1)),%DD>20 D
 .N %Q,YES
 .K %Q S %Q("Z")="`ad ycegl `nqiq jl reci m`d",%Q("X")=30,%Q("Y")=22 D ^%S2ASK
 .I YES S ^%HOV(1)="" Q
 .S %GET="<ENTER> . `ad ycegl `nqiq xxale .c.y.xl xywzdl `p " D N^%L1GET
 Q %OK

%L1IDK
%L1IDK ;     [ 28.11.01  6:08 AM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SCRN="IDKUN"
 D GET D A^%L1SC
 S %SC("ENDS")=""
 S %SC("MOVE")=""
 S %SC("MIUN")=""
SC D GETFG^%L1SC
 D IS3^%L1GET
 I %S=1 G SC
 I %S=2 D SAVE
END K ^TEMP($P) Q
 ;
GET K ^TEMP($P) M ^TEMP($P)=^IDKUN
 Q
SAVE K ^IDKUN
 S J=0
 F I=1:1 Q:'$D(^TEMP($P,I))  I $P(^(I),"\",3)'?.P S J=J+1,^IDKUN(J)=^TEMP($P,I)
 Q

%L1IND
%L1IND(GLOB,NI) ; (NI -  IND NUMBER) [ 27.07.26 18:41 ] [ 14.04.22 17:52 ] [ 01.04.20 04:56 ] 
  N I,I2,FLGRS,NIND,IND
  I $E(GLOB,1,2)="^[" S GLOB=$P(GLOB,"]",2,200)
  I $E(GLOB,1,2)="^|" S GLOB=$P(GLOB,"|",3,200)
  S IND="",FLGRS=0,NIND=1
  F I=1:1:$L(GLOB) Q:$E(GLOB,I)="("
  S I2=I
IND2 S I2=I2+1 I I2>$L(GLOB) Q $S(NIND=NI:IND,1:"")
  I $E(GLOB,I2)="""" S FLGRS=1-FLGRS G IND2
  I $E(GLOB,I2)=",",'FLGRS S NIND=NIND+1 Q:NIND>NI IND  S IND="" G IND2
  I $E(GLOB,I2)=")",'FLGRS Q $S(NIND=NI:IND,1:"")
  S IND=IND_$E(GLOB,I2) G IND2
  Q ""
 ;
GL(REF,NI) ;
 N GL,LEN
 S LEN=$L(REF,",")
 S GL=$P(REF,"(")
 I LEN<3 Q GL
 S GL=GL_"("
 N I F I=1:1:NI I I'>LEN D
 .N IND S IND=$$%L1IND(REF,I) Q:IND=""
 .S GL=GL_""""_IND_""","
 I $E(GL,$L(GL))="," S GL=$E(GL,1,$L(GL)-1)
 S GL=GL_")"
 Q GL
 
 
 
 
 
 
 
 
 

%L1INDTC
%L1INDTC(STAM) ; [ 15.10.06 14:34 ] [ 12.10.06 11:54 ] [ 09.10.06 19:21 ]
 ;Q $$TV^%L1DEFWS
 I $D(@$$^W4DEVI@($P)) Q +@$$^W4DEVI@($P)
 Q 0
IND(PORT) ;
 Q PORT
P(STAM) ;
 N POS S POS=$$TV^%L1DEFWS
 I POS?.P,$D(devi($P)) Q @$$^W4DEVI@($P)
 I POS="" Q ""
 I $G(^devi3(POS))="",$D(@$$^W4DEVI@($P)) Q @$$^W4DEVI@($P)
 Q +$G(^devi3(POS))

%L1INS
%L1INS ;CREATING CONFIGURATION ON NEW DISK (%LLL,^SYS,KUP,...); [ 05/23/99  5:11 PM ] [ 07/29/96  7:00 AM ] ; [ 05/23/99  5:11 PM ]
 K
 V 2:$J:1:2,108:$J:60000:4
ZP R !!,"PATH <A:\> ",%PTH Q:%PTH="^"
 I %PTH="" S %PTH="A:\"
 I $P(%PTH,"\",2)="",%PTH'["\" S %PTH=%PTH_"\"
 I $P(%PTH,"\",2)'="",%PTH["\" S %PTH=$E(%PTH,1,$L(%PTH)-1)
 S %ER=$$^%L1ZOS(10,%PTH)
 I %ER<0 D ^%L1OS1 H 2 G ZP
 I $E(%PTH,$L(%PTH))'="\" S %PTH=%PTH_"\"
 U $P:(CENABLE:CTRAP=$C(3)) K ^%L3RR
 S ^%L3RR("FN")=%PTH_"%LLL"
 D ^%L3RR
 S ^%L3RR("FN")=%PTH_"%SSS"
 D ^%L3RR
 S ^%L3RR("FN")=%PTH_"%ZMSL"
 D ^%L3RR
 S ^%L3RR("FN")=%PTH_"STUSER3"
 D ^%L3RR
 S %GLB="SYS",%STAT="4,4,4,4" D ^%L1GCH
 S ^SYS("LOGON","P")="MER,"_$P($$^%L1ZU(0),",",2)_":PLMENU:96:"
 S ^SYS("LOGON","K")="MER,"_$P($$^%L1ZU(0),",",2)_":KUPM:96:"
 S ^SYS("LOGON","l")="MER,"_$P($$^%L1ZU(0),",",2)_":KUPM:96:"
 S ^SYS("LOGON","k")="MER,"_$P($$^%L1ZU(0),",",2)_":KUPM:96:"
 S ^SYS("LOGON","t")="MER,"_$P($$^%L1ZU(0),",",2)_":PLMENU:96:"
 S ^SYS("LOGON","p")="MER,"_$P($$^%L1ZU(0),",",2)_":PLMENU:96:"
 S ^SYS("LOGON","MG")="MGR,"_$P($$^%L1ZU(0),",",2)_":%L1X:96:"
 S ^SYS("LOGON","mg")="MGR,"_$P($$^%L1ZU(0),",",2)_":%L1X:96:"
 S ^SYS("LOGON","MR")="MER,"_$P($$^%L1ZU(0),",",2)_":%L1X:96:"
 S ^SYS("LOGON","mr")="MER,"_$P($$^%L1ZU(0),",",2)_":%L1X:96:"
 S ^SYS("LOGON","ML")="MLY,"_$P($$^%L1ZU(0),",",2)_":%L1X:96:"
 S ^SYS("LOGON","ml")="MLY,"_$P($$^%L1ZU(0),",",2)_":%L1X:96:"
 S ^SYS("LOGON","M")="MLY,"_$P($$^%L1ZU(0),",",2)_":BA:96:"
 S ^SYS("LOGON","m")="MLY,"_$P($$^%L1ZU(0),",",2)_":BA:96:"
 S ^SYS("LOGON","v")="MLY,"_$P($$^%L1ZU(0),",",2)_":BA:96:"
 S ^SYS("LOGON","MD")="MER,"_$P($$^%L1ZU(0),",",2)_":MODEM:24:"
 S ^SYS("LOGON","md")="MER,"_$P($$^%L1ZU(0),",",2)_":MODEM:24:"
 S ^SYS("LOGON","G")="MGR,"_$P($$^%L1ZU(0),",",2)_":%L1RPR:84:"
 S ^SYS("LOGON","g")="MGR,"_$P($$^%L1ZU(0),",",2)_":%L1RPR:84:"
 S ^SYS("LOGON","I")="MER,"_$P($$^%L1ZU(0),",",2)_":INS:50:"
 S ^SYS(0,"DDB",1)="PC/DOS,CON,0,,80,40004,,,,",^%TYPCRT(1)="PC"
 S PRCON=0,N="" F  S N=$O(^SYS(0,"DDB",N)) Q:N=""  I ^(N)["CON1" S PRCON=1 Q
 I 'PRCON S ^SYS(0,"DDB",17)="PC/DOS,CON1,0,,80,40004,,,,0",^%TYPCRT(17)="PC"
 S ^SYS(0,"DDB",3)="PC/DOS,LPT1,0,,132,840103,,,,0"
 S SGCNFG=0 D ^SGPART
 S ^SYS(0,"PROT")="255;255"
 S ^%TYPCRT(1)="PC"
 S ^%L3UA("UCI")="MER"
 D ^%L3UA
 S ^%L3UA("UCI")="ZIP"
 D ^%L3UA
 S ^%L3UA("UCI")="MLY"
 D ^%L3UA
 K ^%L3GR,^%L3RR
 S ^%L3GR("FN")=%PTH_"KUPA.G"
 S ^%L3RR("FN")=%PTH_"KUPA.NEW"
 ;S ^SYS(0,"JOB",1)="^PLUCOM[""MER""]"
 D ^%L1C X %chista
 K %Q S %Q("Z")=" 'dtew' zkxrn zniiw m`d",%Q("X")=20,%Q("Y")=4 D ^%S2ASK G:'YES I2
I V 2:$J:+$ZU("MER"):2,108:$J:60000:4
 U 0 S %GET="<ENTER> ugle opewl 'KUPA.NEW' uaew mr hwqic qipkz " D N^%L1GET
 D ^%L3RR
 U 0 S %GET="<ENTER> ugle opewl 'KUPA.G' uaew mr hwqic qipkz " D N^%L1GET
 D ^%L3GR
I1 D ^INS I '$D(^PL) G I1
 X %chista
I2 D ^%L1C K %Q S %Q("Z")=" 'i`ln' zkxrn zniiw m`d",%Q("X")=20,%Q("Y")=6 D ^%S2ASK G:'YES I31
 V 2:$J:+$ZU("MLY"):2,108:$J:60000:4
 S ^%L3GR("FN")=%PTH_"MLY.G"
 S ^%L3RR("FN")=%PTH_"MLY.R"
 U 0 S %GET="<ENTER> ugle opewl 'MLY.R' uaew mr hwqic qipkz " D N^%L1GET
 D ^%L3RR
 U 0 S %GET="<ENTER> ugle opewl 'MLY.G' uaew mr hwqic qipkz " D N^%L1GET
 D ^%L3GR
I3 D ^MLNAME
I31 V 2:$J:1:2 ;MGR
 W !!,"DEFINEDS PORTS FOR CASH REGISTER : "
 S N="" F  S N=$O(^PLUK(N)) Q:N=""  W N,"  "
 S (SGINDEX,SGINDEXOLD)=0
 U $P:(ECHO:WRAP:WIDTH=80)
Z W !!,"EXIST "_$S(SGINDEX:"MORE ",1:"")_" MULTI-PORT I/O CARD ? (Y/N) :" R ANS I ANS'="Y",ANS'="y" G PORT
 S SGSYSID="PC",SGCNFG=0 D DISPLAY^SGSPCOM
 S SGINDEXOLD=SGINDEXOLD+1 S SGINDEX=SGINDEXOLD
M K SGNAME,SGADD,SGSHMEM,SGINT
 I $D(^SYS(SGCNFG,"SMARTCOM",SGINDEX)) S X=^(SGINDEX),SGNAME=$P(X,"^"),SGADD=$P(X,"^",2),SGSHMEM=$P(X,"^",3),SGINT=$P(X,"^",4)
 D BOARD^SGSPCOM S SGINDEX=SGINDEXOLD I '$D(^SYS(0,"SMARTCOM",SGINDEX)) G PORT
ZP W !!,"ENTER PORTS FOR CASH REGISTERS THAT USE I/O CARD "_$P(^SYS(0,"SMARTCOM",SGINDEXOLD),"^")_" (EXAMPLE:11,12,13,14) :"
 R !,PORTS G:PORTS="" PORT
 S ER=0 F I=1:1:$L(PORTS,",") S PORT=$P(PORTS,",",I) I PORT'?1N.N W *7,"  ???" S ER=1 Q
 I ER G ZP
 F I=1:1:$L(PORTS,",") S PORT=$P(PORTS,",",I) I PORT?1N.N D ZA S ^SYS(0,"DDB",PORT)="PC/DOS,"_$P(^SYS(0,"SMARTCOM",SGINDEXOLD),"^")_ADR_",713,,0,840101,,,,0"
 G Z
PORT W !!,"ENTER SERIAL PORTS FOR CASH REGISTERS (EXAMPLE:4,5)  :"
 R !,PORTS G:PORTS="" C
 S ER=0 F I=1:1:$L(PORTS,",") S PORT=$P(PORTS,",",I) I PORT'?1N.N,PORT<4,PORT>7 W *7,"  ???" S ER=1 Q
 I ER G PORT
 F I=1:1:$L(PORTS,",") S PORT=$P(PORTS,",",I) I PORT?1N.N S ^SYS(0,"DDB",PORT)="PC/DOS,COM"_(PORT-3)_",713,,0,840101,,,,0"
C S SGX="DFLT",CNFG="CONFIG",(SGCFNM,SGCNFG)="Q",SGCMNT="%L1INS",DLM=";" D GETDUP+2^SGCNFG
 I '$D(^PL("MDPORT")) G END
 S MDPORT=^PL("MDPORT")
 S NCNF=+^SYS("CONFIG","DFLT")
 I MDPORT<6,MDPORT>3 S ^SYS(NCNF,"DDB",MDPORT)="PC/DOS,COM"_(MDPORT-3)_",209,,0,101,,,,0"
 S NCNF=+^SYS("CONFIG","Q")
 I MDPORT<6,MDPORT>3 S ^SYS(NCNF,"DDB",MDPORT)="PC/DOS,COM"_(MDPORT-3)_",209,,80,4,,,,0"
 I MDPORT>5 D MDIO
END W !!,*7," DO 'MGR:SSD' & RESET " H 5
 Q
ZA ;
 W !!,"PORT "_PORT_" ADDRESS: " R ADR I ADR'?1N.N W *7,"  ???" G ZA
 I $G(ADR(ADR))>0,ADR(ADR)'=PORT W *7,"THE ADDRESS FOR PORT "_ADR(ADR) G ZA
 S ADR(ADR)=PORT
 Q
MDIO ;
 U $P:(ECHO:WRAP:WIDTH=80)
Z W !!,"A MODEM USE MULTI-PORT I/O CARD ? (Y/N) :" R ANS I ANS'="Y",ANS'="y" Q
 S SGSYSID="PC",SGCNFG=NCNF D DISPLAY^SGSPCOM
 S (SGINDEX,SGINDEXOLD)=$ZP(^SYS(SGCNFG,"SMARTCOM",""))+1
M K SGNAME,SGADD,SGSHMEM,SGINT
 I $D(^SYS(SGCNFG,"SMARTCOM",SGINDEX)) S X=^(SGINDEX),SGNAME=$P(X,"^"),SGADD=$P(X,"^",2),SGSHMEM=$P(X,"^",3),SGINT=$P(X,"^",4)
 D BOARD^SGSPCOM S SGINDEX=SGINDEXOLD I '$D(^SYS(NCNF,"SMARTCOM",SGINDEX)) Q
 I '$D(^PL("MDPORT")) Q
 S MDPORT=^PL("MDPORT")
 S PORT=MDPORT D ZA
 S NCNF=+^SYS("CONFIG","DFLT")
 S ^SYS(0,"DDB",PORT)="PC/DOS,"_$P(^SYS(0,"SMARTCOM",SGINDEXOLD),"^")_ADR_",209,,0,800101,,,,0"
 S NCNF=+^SYS("CONFIG","Q")
 S ^SYS(0,"DDB",PORT)="PC/DOS,"_$P(^SYS(0,"SMARTCOM",SGINDEXOLD),"^")_ADR_",209,,0,800101,,,,0"
 Q

%L1ISFTP
%L1ISFTP(PROG) ; [ 01.02.06 17:39 ] [
 N GLD
 S GLD=$$^%L1GLD
 I $G(^[GLD]PL("FTP")) Q 1
 I $L($G(PROG)),$G(^[GLD]PL("FTP",PROG)) Q 1
 Q 0

%L1JRST
%L1JRST ; [ 09.05.06 06:53 ] [ 27.04.06 14:52 ] [ 20.11.05 16:45 ]
 I $V("JNLACTIVE","DEFAULT")=1 D
 .Q:$$^%L1ZOS(10,$$^%L1ENVAR("gtm_dist")_"/mumps.mjl")'<0
 .ZSY "mupip SET -JOURNAL=ENABLE,BEFORE_IMAGES -FILE $gtm_dist/mumps.dat"
 Q
TV Q:$$^%L1ZOS(10,$$^%L1ENVAR("gtm_dist")_"/mumps.mjl")'<0
 ZSY "mupip SET -JOURNAL=ENABLE,BEFORE_IMAGES -FILE $gtm_dist/mumps.dat"
 Q
DIS ;
 ZSY "mupip SET -JOURNAL=DISABLE -FILE $gtm_dist/mumps.dat"
 Q

%L1JSON
%L1JSON(FILE,GL,PR) ; [ 22.08.23 11:02 ] [ 21.08.23 15:04 ] [ 20.08.23 18:28 ] 
 N (JB,%ARG,%REM,FILE,GL,PR)
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$$EXIST^%L1ZOS(FILE) Q "FILENOTEXIST"
 O FILE:(REWIND:READONLY)
 U FILE S RES=0
 S H=+$H,H2=$P($H,",",2)
 ;
 K @GL S II=0,CHAPT=1 I $G(PR)="V" S CHAPT=0
 F  R A Q:$ZEOF  D  S RES=$$READ(A)  Q:'RES
 .S II=II+1,^LV(H,H2,"RESPJSON",II)=$E(A,1,3000)
 ;
 C FILE
 Q RES
 ;
 ;
READ(A) ;
 S J=0,UR=0,BU=0,OLDT=""
CYC ;
 S J=J+1 I J>$L(A) G END
 ;
 I $E(A,J)="""" D  G CYC
 .S NOM=$O(@GL@(CHAPT,""),-1)+1
 .F J1=J:1 Q:J1>$L(A)  Q:$E(A,J1)=","  Q:$E(A,J1)="}"  Q:$E(A,J1)="]"  Q:$E(A,J1)="{"  Q:$E(A,J1)="["
 .S B=$E(A,J,J1-1)
 .S B=$$SPA^%L1FRM(B)
 .I $G(PR)="V",$TR($P(B,":"),"""","")="merchent_receipt" S CHAPT=CHAPT+1,J=J1 Q
 .I $G(PR)="V",$TR($P(B,":"),"""","")="customer_receipt" S CHAPT=CHAPT+1,J=J1 Q
 .I $G(PR)="V",CHAPT=2,$TR($P(B,":"),"""","")="Verified by device" S CHAPT=CHAPT+1,J=J1 Q
 .I B[":",$L($P(B,":",2)) S @GL@(CHAPT,NOM)=B
 .S J=J1
 ;
 G CYC
 ;
END Q 1
 ;
 ;
ER D SVER^%L1X
 Q 0
 ;
LAST(UR) ;
 Q $O(@GL@(UR,9999999),-1)
 ;
CLRQ(VL) 
 Q $$CLRQ^W3SORD(VL)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1JSON0
%L1JSON(FILE,GL,PR) ; [ 21.08.23 10:16 ] [ 20.08.23 18:28 ] [ 09.12.21 22:00 ] 
 N (JB,%ARG,%REM,FILE,GL,PR)
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 O FILE:(REWIND:READONLY)
 U FILE S RES=0
 S H=+$H,H2=$P($H,",",2)
 ;
 K @GL S II=0
 F  R A Q:$ZEOF  D  S RES=$$READ  Q:'RES
 .S II=II+1,^LV(H,H2,"RESPJSON",II)=$E(A,1,3000)
 ;
 I $G(PR)="" C FILE
 I $G(PR)="DEL" C FILE:(DELETE)
 Q RES
 ;
 ;
READ(STAM) ;
 S J=0,UR=0,BU=0,OLDT=""
CYC ;
 S J=J+1 I J>$L(A) G END
 ;
 I $E(A,J)="{"!($E(A,J)="[") D  G CYC
 .S NOMSH=$O(@GL@(""),-1)+1
 .S GL=$E(GL,1,$L(GL)-1)_","_NOMSH_")"
 .F J1=J-1:-1:0 Q:$E(A,J1)=":"  Q:$E(A,J1)=","  Q:$E(A,J1)="}"  Q:$E(A,J1)="]"
 .I $E(A,J,J1)["vuid" B  ;
 .I $E(A,J1)=":" D
 ..N T S T=$E(A,1,J1-1)
 ..I T["," S T=$P(T,",",$L(T,","))
 ..I T["}" S T=$P(T,"}",2)
 ..I T["]" S T=$P(T,"]",2)
 ..I T[":" S T=$P(T,":",2)
 ..I $L(T) S @GL=$TR(T,"{[","")_"="
 ;
 I $E(A,J)="}"!($E(A,J)="]") D  G CYC
 .S GL=$P(GL,",",1,$L(GL,",")-1)_")",BU=1
 ;
 S @GL=$G(@GL)_$S(BU&$L($G(@GL))&$L($E(A,J)):",",1:"")_$E(A,J),BU=0
 G CYC
 ;
END Q 1
 ;
ER D SVER^%L1X
 Q 0
 ;
LAST(UR) ;
 Q $O(@GL@(UR,9999999),-1)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1JSS
%L1JSS ; JOB EXAM ; [ 28.04.00  4:58 PM ] [ 07/28/99  8:08 AM ] [
 D ^%SS
 D ^JOBEXAM
 Q

%L1KILL
%L1KILL(PROC) ; [ 28.05.04 12:54 ] [ 29.01.04 10:42 ] [ 04.01.04 12:03 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PROC) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
BG S %NMF="l1kill"_$J
 S %IO=$I
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC "_$$FUNC^%LCASE(PROC)_" > "_%NMF
 I $$^%L1ZOS(10,%NMF)<0 G S2V
 O %NMF:(REWIND:READONLY)
 K ^TMPS111($J)
 F  U %NMF R A Q:$ZEOF  D
 .S ^TMPS111($J,$O(^TMPS111($J,9999),-1)+1)=A
 C %NMF
 ;
 I $$^%L1ZOS(2,%NMF)
S2V X %chista
 S %S2V("NOHB")=""
 S %S2V("PROG")="VIEW^%L1KILL"
 S %S2V("TXT1")=" TO KILL JOB PRESS <F9> "
 D ^%S2VIEW
 K ^TMPS111($J) Q
 ;
VIEW N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,U,%MET,zl) D ^%L1C
 W %CLI D W^%S2VIEW(U,1,80) X %XCL
 ;
 S %S=0
 I %S=0 D  Q
 .N JOB S JOB=$TR($E(^TMPS111($J,U),16,20)," ","") Q:'JOB
 .S %Q("Z")="ARE YOU SURE YOU WANT TO KILL JOB WITH PPID="_JOB D N^%S1ASK Q:'YES
 .N A S A="kill "_JOB
 .ZSY A
 .I $G(zl) S $E(^S2VTMPS111($J,zl,U),66,79)="-- KILLED --"
 Q

%L1KL
%L1KLM ; [ 23.10.07 21:19 ] [
 D ^%L1KILL("mumps")
 Q

%L1KLM
%L1KLM ; [ 23.10.07 21:23 ] [
 D ^%L1KILL("mumps")

%L1L2M
%L1L2M ; [ 03.08.11 09:13 ] [ 13.12.07 10:57 ] [
 W #
 R !!,"FILE : ",FL
 O FL:(rewind:readonly)
 S FL1=FL_".lin"
 O FL1:(NEWVERSION:WRITE)
 F  U FL R *A Q:$ZEOF  D
 .U 0 W $C(A)
 .I A=13 U FL R *B Q:$ZEOF  I B=10 U FL1 W $C(B) Q
 .U FL1 W $C(A)
 C FL,FL1

%L1LB
%L1LB(%TXT,%GLB,%PR,%PR2) ; AUTO FIND ; [ 27.11.03 09:57 ] [ 16.11.03 15:27 ] [ 24.08.00  1:02 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%TXT,%GLB,%PR,%L1LB,%L3VN) D ^%L1C
 I $$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE Q
 N %TXTI,%I,%N S %I=0
 K %L1LB,%L3VN S %TXTI=$$INV^%L1FRM(%TXT)
 I $L($G(%TXT))=0 Q
 I $G(%PR)="" S %PR="C"
 I %PR="I" D
 .S %N="" F  S %N=$O(@%GLB@(%N)) Q:%N=""  D
 ..I $E(%N,1,$L(%TXTI))=%TXTI D
 ...S %I=%I+1,%L1LB(%I)=$$INV^%L1FRM(%N)
 ;
 I %PR="C" D
 .S %N="" F  S %N=$O(@%GLB@(%N)) Q:%N=""  S %A=$G(^(%N)) I $L(%A)'<$L(%TXT) D
 ..N %B,%JJ,%OK S %OK=0 F %JJ=1:1:$L(%A," ") S %B=$P(%A," ",%JJ) D  Q:%OK
 ...I $E(%B,$L(%B)-$L(%TXT)+1,255)=%TXT D  S %OK=1
 ....S %I=%I+1,%L1LB(%I)=%A
 ;
 S %L1("VIEW")=""
TV S %SMY=$Y+1,%SMX=$X
 N %L1LBO
 S MAC1="%L1LB",MAC2="%L1LBO" D ^%S1GC1
 S %L3VMAC="%L1LB" S %SMY=8,%L1("NGR")=23,%SM=35 D ^%L3VIEW
 S MAC1="%L1LBO",MAC2="%L1LB" D ^%S1GC1
 Q

%L1LIST
%L1LIST ;DJM;LIST HFS FILE; [ 11/10/91  2:53 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. (c) 1986
 S %DEV="",%OFN="",%VM=$V($V(44),-3,2)#16=0,%PRM2="" I $D(%HBRY) W %HBR
START ;
 S $ZT="ZG "_$ZL_":ERR^%L1LIST"
 ;W !?10,$P($P($ZV,","),"-")," - Host File Lister Utility",!
FILE I $D(%FN),%FN'?.P G OPEN
 I $D(%FN),%FN="" G EXIT
 R !,"File Name: ",%FN
 I %FN="^L" D DIR^%SDEV U 0 W ! G FILE
 I %FN="." S %FN=%OFN W "..>  ",%FN
 I %FN=""!(%FN="^")!(%FN="^Q")!(%FN="^q") G EXIT
 I %FN="?" W !!,%ENG,"Enter name of host file to be displayed.",!,"The default path name is the one from which MSM was started.",!,"Enter '^L' to list the contents of a directory." W:$D(%HBRY) %HBR
 I %FN="?" W:$ZV["PC" %ENG,!,"To list a file on drive A, enter 'A:FILENAME'." W:%OFN'="" !,"Enter '.' to redisplay file '",%OFN,"'" W ! G FILE W:$D(%HBRY) %HBR
 G OPEN
VMFILE ;
 R !,"File identifier: ",%FN
 I %FN="." S %FN=%OFN W "..>  ",%FN
 I %FN=""!(%FN="^")!(%FN="^Q")!(%FN="^q") G EXIT
 I %FN="?" W !!,"Enter file identifier (i.e., spool id) of the CMS file to be displayed." W:%OFN'="" !,"Enter '.' to redisplay file '",%OFN,"'."
 I  W !,"The file must have been previously spooled to MUMPS from CMS."
 I  W !,"Enter ^L to see a list of the CMS files that have been spooled.",! G VMFILE
 I %FN="^L" D INT^%RDRLIST G VMFILE
 I %FN'=+%FN W *7,"  ... must be numeric" G VMFILE
 G:'$ZB($V(0,-4,2),128,1) OPEN
OPEN S %OFN=%FN F %DEV=54:-1:51 O %DEV:(%FN:%PRM2):0 G:$T GOTDEV
 W %ENG,!,*7,"*** All HFS devices (#51-54) are in use.. retry later ***",*7,! W:$D(%HBRY) %HBR G EXIT
GOTDEV ;
 U %DEV I $ZA<0 U 0 C %DEV W %ENG,*7," ...File not found" W:$D(%HBRY) %HBR G FILE
 I %VM S %SIZE=0 U 0 G SCROLL
 U %DEV:(::0:2) S %SIZE=$ZB U %DEV:(::0:0),0
SCROLL ;
 S %LAST=1
 W !," <"_$G(%LPP0,23)_">: dxey " R %LPP S:%LPP="" %LPP=$G(%LPP0,23) I %LPP="^" C %DEV G FILE
 I %LPP="^Q"!(%LPP="^q") C %DEV G EXIT
 I %LPP'?1.N W ! W:%LPP'="?" *7 W %ENG,"   Please enter number of lines per output page, 0 means no paging" W:$D(%HBRY) %HBR D RULES G SCROLL
 I %LPP>0 G PAGING
 W !!,"------Start of file: ",%FN," ----------------------------------"
 F %I=1:1 U %DEV R %LINE Q:$ZC  U 0 W !,%LINE
 U 0 W !,"------End of file: ",%FN," ----------------------------------",!
%EOF ;
 C %DEV S %FN="" G FILE
PAGING ;
 K %LINES,%PG S %PG=%LPP+%LPP
 U 0 W !! S $Y=0 ;W "------Start of file: ",%FN," "
 F %I=$X:1:79 W "-"
 W ! S %EOF=0
 F %I=1:1 D:$Y>(%LPP-1) PAGE G:%EOF=2 CLOSE Q:%EOF  U %DEV S:+$E(%I,2,99)=0 %LINES(%I)=$ZB S %PG(%I)=$ZB K %PG(%I-%PG) R %LINE Q:$ZC  U 0 W %LINE,!
 U 0 ;W "------End of file: ",%FN," "
 F %I=$X:1:79 W "-"
 W ! C %DEV S %FN="" G FILE
PAGE ;
 U %DEV S %OFST=$ZB U 0
 W "<",%FN,"> @line#",%I W:%SIZE " (",$J(%OFST/%SIZE*100,0,0),"%) " R %LINE S %X=$X W *13 F %J=0:1:%X W " "
 W $C(13) S $Y=0 I %LINE="" S %LAST=%I Q
 I %LINE="^" S %EOF=1 Q
 I %LINE=" " S $Y=%LPP-1 Q
 I %LINE="^Q"!(%LINE="^q") S %EOF=2 Q
 G:%LINE?1"-"1.N BACKUP I %LINE="?" D RULES W ! G PAGE
 I %LINE="-" S %LINE="-"_$G(%LPP0,23) G BACKUP
 I %LINE?1"+"1.N S $Y=$S(%LINE>%LPP:0,1:%LPP-%LINE) S %LAST=%LAST+%LPP-$Y Q
 I %LINE'?1.N D RULES W ! G PAGE
 W %ENG,"<...skipping ",%LINE," line",$S(%LINE=1:"",1:"s"),"...>",! W:$D(%HBRY) %HBR
 U %DEV F %I=%I+1:1:%I+%LINE S:+$E(%I,2,99)=0 %LINES(%I)=$ZB S %PG(%I)=$ZB K %PG(%I-%PG) R %LINE I $ZC S %EOF=1 Q
 S %LAST=%I Q
BACKUP ;
 S %I=%LAST+%LINE,%LINE=%I
 I %I<1 S %I=1
 W %ENG,!,"Resuming display at line #" W:$D(%HBRY) %HBR
 I $D(%PG(%I)) U %DEV:(::%PG(%I))
 E  S %J=+($E(%I)_$E("00000000",1,$L(%I)-1)) U %DEV:(::%LINES(%J)) F %J=%J:1:%I-1 R %X
 U 0 W %I,! S $Y=$Y-2 U %DEV S %LAST=%I
 F %J=0:0 S %J=$N(%PG(%I)) Q:%J<0  K %PG(%J)
 Q
CLOSE C %DEV
EXIT K %DEV,%EOF,%FLIST,%FN,%I,%J,%KN,%LINE,%LAST,%LINES,%LPP,%OFST,%OFN,%PG,%PRM2,%SIZE,%X,%VM Q
ERR ;
 C:%DEV'="" %DEV U 0
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
RULES ;
 W %ENG,!!,"At the end of every page, the file name will be displayed in angle brackets,"
 W !,"the current line number in the file"
 W:'%VM " and the amount of data above the current",!,"line (expressed as a percentage of the file size)"
 W " will be displayed,"
 W !,"and the output will pause.",!
 W !,"When the output pauses, choose one of the following:"
 W !,?5,"To proceed in the normal fashion press return."
 W !,?5,"To proceed after skipping a set number of lines enter the number."
 W !,?5,"To backup several lines, enter a '-' then the number of lines to backup"
 W !,?5,"To display several more lines, enter a '+' then the number of lines"
 W !,?5,"To choose another host file enter '^'."
 W !,?5,"To exit this routine enter '^Q'." W:$D(%HBRY) %HBR
 ;W !,"Hit any key to begin displaying ",%FN S %X=$X R *%LINE W *13 F %J=0:1:%X W " "
 Q

%L1LJ
%L1LJ ; [ 08.04.07 08:45 ] [ 28.11.05 09:31 ] [ 28.02.05 17:20 ]
 N %NMF,%XX,A,PID
BG S %NMF="l1lj"_$J
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC mumps > "_%NMF
 I $$^%L1ZOS(10,%NMF)<0 G END
 O %NMF:(REWIND:READONLY)
 L ^listjob:1
 K ^listjob
 F  U %NMF R A Q:$ZEOF  D
 .S PID=$TR($E(A,10,14)," ","") Q:'PID
 .S ^listjob(PID)=""
 C %NMF:(DELETE)
END L  Q

%L1LNX
%L1LNX ;
 D ^%L1C
 W %CV("GF"),!,">>" X %XCL R CMD
 ZSY CMD_" > a","vi a"
 Q

%L1LOF
%L1LOF(%X) ; DOS FILE ATTRIBUTES %LL^%DD^%TT [ 05/23/99  5:12 PM ] [ 02/27/99  7:06 AM ] [ 06/19/97  1:08 PM ]
 N A
 S A=$$^%L1FLP(%X)
 Q $P(A,"^",2)_"^"_$ZD($P(A,"^",3),"DD/MM/YEAR")_"^"_$P(A,"^",4)

%L1LOG
%LOGON ;MJ;LOGON ROUTINE; [ 8/20/90  3:15 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. 1990
 O 0::0 E  H
 U 0 U $P:(NOCENABLE) I $ZB($ZA,8,1) H 1 ; modem control timing
 S SV=$V(44),MU=$ZB($V(SV,-3,2),16,1),%PS=$S(MU:20480,1:51200)
 L  ZD  D EXPDATE S %RETRY=3,%PB=$V(SV+8,-3,2)
 S %UT=$V(SV+%PB+4) K BASELINE
 I $V(SV+2,-3,2)#2=0 D ^STU S SV=$V(44),MU=$ZB($V(SV,-3,2),16,1),%PS=$S(MU:20480,1:51200),%UI=1 S:$D(BASELINE) %VGI=0 G PGMR:$D(BASELINE),%LOGON ;AUTO STARTUP
 V 0:$J:$ZB($V(0,$J,2),250,1):2
LOGON ;
 S LOGON=$V(SV+4,-3,2)\64#2,CONSOLE=$V(SV+4,-3,2)\2048#2,SSD=$V(SV+4,-3,2)\32768#2
 I LOGON!CONSOLE!SSD,$P'=1 W !,"Signon not allowed now." H
 V 2:$J:1:2 ;SWITCH TO MGR's uci
 S CNFG=0 I $D(^SYS("CONFIG"))#2 S CNFG=$P(^SYS("CONFIG"),";",2) I CNFG="" S CNFG=0
 S CNFG=+^SYS("CONFIG",CNFG)
 U $P:(:::::1) I $D(^SYS(CNFG,"DDB",$P))#2 U $P:(:::::#FDFF) U $P:($P(^($P),",",5)::::$ZH($P(^($P),",",6)))
 I $ZB($ZA,258,1) HALT  ; check for nolog and output only bits
 S:$D(^SYS(CNFG,"PSIZE")) %PS=^SYS(CNFG,"PSIZE") I %PS=20480 S:$ZV["MSM-PC"!($ZV["MUMPS L-PC")&'MU %PS=51200
 G:'MU TTT S DDPBASE=$V($V(44)+388),VCNO=$V(DDPBASE+68,-3,2),SLNO1=$V(DDPBASE+72,-3,2),SLNO=SLNO1
 I VCNO F I=1:1:$V(DDPBASE+70,-3,2) S SLNO=SLNO+1,SLNO=$S(SLNO=2:3,SLNO=20:64,SLNO=200:256,1:SLNO)
 I VCNO&($P'<SLNO1)&($P<SLNO) S DI=$V($V($V(SV+300)+(4*$P))+72),SRVSTR=$V(DI+101,-3,$V(DI+100,-3,1),1) D  I VCNO&($P(SRVSTR,"`",4)'="") G TIEDLAT Q:'VCNO
 .S VCNO=0 F I=0:1 Q:$ZU(1,I)=""  I $D(^[$ZU(1,I)]SYS("LAT_SERV",1)) D  Q:VCNO
 ..S SLNO=-1 F  S SLNO=$N(^(SLNO)) Q:SLNO=-1  I $P(^(SLNO),"`")=SRVSTR S SRVSTR=^(SLNO),VCNO=1 Q
TTT S TTT=0 I $D(^SYS(CNFG,"DDB",$P))#2 S TTT=+$P(^($P),",",4) I $D(^SYS(CNFG,"TTT",TTT))#2 G TIEDTERM
 S %PB=$V(SV+8,-3,2) G:$D(^SYS("PASSWD"))#2=0 PROMPT
 U $P:(NOECHO:NOWRAP) W !,":" R %ID:180 U $P:(ECHO:WRAP) G ABORT:'$T,ABORT:%ID'=^SYS("PASSWD") K %ID
PROMPT ;
 I $ZB($V(2,-4,2),#200,1) D:$D(%) LOGPARMS(%) I $D(%ID) G:TIED TIEDTERM ; check for signon parms
 S:'$D(%INT) %INT=1
 I %INT W !,$ZV,"  Line #",$ZDEV($P) R "  UCI: ",%ID:180 G:'$T ABORT
 S %UCI=$P(%ID,":",1) I $L(%UCI)<1 G:$ZB($ZA,8,1) RETRY Q
 I %UCI[$C(0) W "       ...Invalid" G RETRY
 S %VGNA=$P(%UCI,",",2),%UCI=$P(%UCI,",",1)
 S:%VGNA="" %VGNA=$P($$^%L1ZU(0),",",2)
 I %UCI="" W "       ...Invalid" G RETRY
 I $D(^SYS("LOGON",%UCI)) I $P(%ID,":",2)'=$P(^SYS("LOGON",%UCI),":",4) S %OUI=$V(2,$J,2) G:$ZU(%UCI,%VGNA)'="" PROMPT1 W " ...Invalid" G RETRY
 I $D(^SYS("LOGON",%UCI)) S %ID=$P(^SYS("LOGON",%UCI),":",1,3),%VGNA=$E(%ID,5,7),%UCI=$P(%ID,",")
PROMPT1 I $P(%ID,":",3)'="" S %PS=$P(%ID,":",3)*1024 S:%PS<12288!(%PS>262144) %PS=$S($D(^SYS(CNFG,"PSIZE")):^("PSIZE"),1:20480)
 S %ID=$P(%ID,":",2)
UCINUM S %OUI=$V(2,$J,2),%UI=+$ZU(%UCI,%VGNA),%VGI=+$P($ZU(%UCI,%VGNA),",",2)
 I %UI=0 W "   ...UCI not found" G RETRY
PGMTST ;
 S %VGTB=$V($V(40+%PB+SV)+(%VGI*4))
 S %UCITB=%UI-1*32+$V(%VGTB+20)
 I $V(%UCITB+24,-3,3,1)'=$C(0,0,0) G:%ID=$V(%UCITB+24,-3,3,1) PGMR
 G:'$D(^SYS(CNFG,"PAC")) NOPAC
 I $V(%UCITB+24,-3,3,1)=$C(0,0,0) G:%ID=^SYS(CNFG,"PAC") PGMR
 I %ID="" W *7," ... invalid 'null' application id" G RETRY
NOPAC ;
 I $D(^%) ;CLEAR NAKED
 I $D(^%E) ;CLEAR NAKED
 V 2:$J:%VGI*32+%UI:2,108:$J:%PS:4 ;SWITCH TO NEW UCI
 G:%ID="" PGMR
 I %ID'?1.AN,%ID'?1"%".AN,%ID'?1"^".AN,%ID'?1"^%".AN W *7," ..invalid application id" G RETRY
 S:'$F(%ID,"^") %ID="^"_%ID
 I $D(^ ($P(%ID,"^",2)))=0 W *7," ..invalid application id" G RETRY
 K (%,%ID) G @%ID
PGMR ;
 I $D(^%) ;CLEAR NAKED
 V 0:$J:$V(0,$J,2)\2*2+1:2,2:$J:%VGI*32+%UI:2,108:$J:%PS:4 W:%INT "  Job #",$J K  X "ZR  Q"
 Q
TIEDTERM ;TIED TERMINAL
 I $G(TIED) ; from logon parms
 E  S TIED="",%UCI=$P(^(TTT),",",2),%ID=$P(^(TTT),",",1),%PS=$P(^(TTT),",",3)
 V 108:$J:%PS:4 S %UI=$ZU($P(%UCI,":"),$P(%UCI,":",2)),%VGI=$P(%UI,",",2),%UI=+%UI G RETRY:%UI'>0,PROMPT:%UI=1&(%ID="%LOGON"),NOPAC
TIEDLAT ;TIED TERMINAL FOR LAT
 S TIED="",SRVSTR=$P(SRVSTR,"`",4),%UCI=$P(SRVSTR,":",1),%ID=$P(SRVSTR,":",2),%PS=$S($P(SRVSTR,":",3)="":%PS,1:$P(SRVSTR,":",3)*1024)
 S %UCI=%UCI_","_$P($ZU(1,I),",",2)
 V 108:$J:%PS:4 S %UI=$ZU($P(%UCI,","),$P(%UCI,",",2)),%VGI=$P(%UI,",",2),%UI=+%UI G RETRY:%UI'>0,PROMPT:%UI=1&(%ID="%LOGON"),NOPAC
INT ;
 S %INT=0,%UCI=%ID,%RETRY=0 G LOGON
RETRY ;
 I $D(TIED) W !," ..logon aborted" H 2 Q
 V 2:$J:1:2 ;SWITCH TO MGR's uci
 S %RETRY=%RETRY-1 G:%RETRY PROMPT
 W !!,"Logon aborted.." H 2
 I $D(%OUI) V 2:$J:%OUI:2 ;SWITCH back to original UCI
ABORT Q
%MGR ;Entry to put user back into MGR and goto error subrtn (VALIDATE)
 V 2:$J:1:2 I $D(%ZT) G:%ZT'="" @%ZT
 Q
LOGPARMS(X) ; parse MSM logon parms
 ; TIED=1 -> UCI:PAC or UCI:RTN
 ; TIED=0 -> LABEL^RTN
 V 2:-4:$ZB($V(2,-4,2),#FDFF,1):2 ; turn off parms flag
 S X=$P(X," ",2,99)
 FOR  Q:'($E(X)="-"!($E(X)="/"))  DO  ; strip out unwanted parms
 . S %ID=$P(X," ")
 . I $E(%ID)="/" S X=$P(X," ",2,99) Q  ; /autoconfig
 . I %ID="-E"!(%ID="-e") S X=$P(X," ",2,99) Q  ; EMS flag
 . I %ID="-P"!(%ID="-p"),$E(%ID,4)'?1N S X=$P(X," ",2,99) Q  ; pause
 . S X=$P(X," ",3,99) Q  ; all other parms are two part
 S X=$P(X," ") ; ignore extra '-' parms
 I X="" K %ID Q  ; no signon specified
 I X?3U1":"1.ANP!(X?3U1","3U1":"1.ANP) S %ID=X,TIED=0,%INT=0  Q
 S %ID=$P(X,"["),%UCI=$P(X,"[",2)
 I %UCI="" S %UCI=$ZU(1,0) ; default to MGR
 E  S %PS=$P(%UCI,":",2),%UCI=$P(%UCI,":")
 I $G(%PS)="" S %PS=^SYS(CNFG,"PSIZE") ; partsize not entered
 E  S:%PS<1024 %PS=%PS*1024
 S %UCI=$TR(%UCI,"""]","") ; strip out " and ]
 I %UCI?3U S %UCI=%UCI_":"_$P($$^%L1ZU(0),",",2)
 E  S $E(%UCI,4)=":" ; for TIEDTERM subroutine
 S TIED=1,%INT=0 Q
EXPDATE ;
 G:$V(176,-4,4)>94599 EXPIRED
 Q:$H<($V(176,-4,4)-10)
 I $H+1<$V(176,-4,4) W !!,*7,"WARNING: ***THIS COPY OF MSM WILL EXPIRE IN ",$V(176,-4,4)-$H," DAY(S)" Q
 I $H+1=$V(176,-4,4) W !!,*7,"WARNING: ***THIS COPY OF MSM WILL EXPIRE TOMORROW" Q
EXPIRED ;
 W #,!,*7
 W !,*7,"***************************************************************"
 W !,*7,"*                                                             *"
 W !,*7,"*               ----  W  A  R  N  I  N G ----                 *"
 W !,*7,"*                                                             *"
 W !,*7,"*            !!! THIS COPY OF MSM HAS EXPIRED !!!             *"
 W !,*7,"*                                                             *"
 W !,*7,"*        CONTINUED USE WILL CAUSE UNPREDICTABLE RESULTS       *"
 W !,*7,"*                                                             *"
 W !,*7,"*..Please contact your MSM dealer for renewing this license...*"
 W !,*7,"*                                                             *"
 W !,*7,"***************************************************************"
 H

%L1LPT
%L1LPT ; PTIHAT MADPESET REHAVA           [ 28.10.08 14:30 ] [ 30.07.08 16:26 ] [ 02.07.08 12:22 ]
 ; %L1LPT("FILE") - FILE NAME FOR PRINT (IF %DEV=54 ) .
 ;                    IF NOT DEFINED - #PRINT_$P
 ; %L1LPT("NODEL") - NO DELETE FILE %L1LPT("FILE") AFTER PRINT
 ; %L1LPT("DEV") - DEVICE FOR PRINT
 ;                (IF YOU WANT TO PRINT TO DEVICE DIFFERENT FROM STANDART)
 ; %L1LPT("TO") - IF DEVICE FOR PRINT  = (54>6) - PRINT TO PORT 6
 ; %L1LPT("NOFF") - WITHOUT FORM FEED IN DEVICE CLOSING
 ;--------------------------------------------------------------------
 I '$D(%POSIC) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":SVER^%L1X"
 I $P($$^%L1ZU(0),",")="MLY" D OPEN G END
 S:'$D(%DEV) %DEV="USTR" D OPEN G END
END Q
 ;
OPEN ;
 I $P($$^%L1ZU(0),",")="MLY" S:'$D(%DEV) %DEV="DEV"
 S %EROP=0 D DEF
 I @(%DEV_"<0") U 0 S %SAY=" ! z`f dcnrn qitcdl ozip `l " X %XMSGV(1) S %EROP=2 Q
OP1 S %EROP=0
 D ODEV(%DEV) Q:%EROP
 I $$MDPNET(@%DEV) S @%DEV="SCK$"_$J
 D USE1 Q:%EROP
 W %L1OUT("MDP","NOCOND") I $D(%L1LPT("SMALL")) W %L1OUT("MDP","COND")
 I $G(^PL("2MG"))="?" D  Q
 .F  U 0 S %GET="2 - 2 dxibn ,1 - 1 dxibn" D N^%L1GET  Q:%S=1!(%S=2)
 .D USE1
 .I %S=1 W $C(27),"&l1H" Q
 .I %S=2 W $C(27),"&l5H" Q
 I $G(^PL("2MG")) D  K %L1LPT("2MG"),%L1SCPC("2MG"),%L1OUT("2MG")
 .I $G(%L1LPT("2MG"))=2!($G(%L1SCPC("2MG"))=2)!($G(%L1OUT("2MG"))=2) W $C(27),"&l5H" Q
 .W $C(27),"&l1H"
 Q
USE(%DEV) D USE1 Q
USE1 N %DV S %DV=@%DEV
USE2 I $$MDPNET(%DV) U "SCK$"_$J Q
 U %DV:(NOWRAP)
 Q
UDEV(%DV) G USE2
CLOSE ;
 I '$D(%DEV) S %DEV="USTR"
 D DEF I $G(%EROP) G EC
 D USE1 I $G(%EROP) G EC
 N %DV S @("%DV="_%DEV) G CDEV1
 ; -- ?
CDEV(%DV) ;
CDEV1 G:'$D(%DV) EC
 S:'$D(%DEV) %DEV="USTR"
 I '$D(%MDPSUG) D DEF
 D
 .I %MDPSUG=5!(%MDPSUG=7) W:'$D(%L1LPT("NOFF"))&(+$G(@%DEV)'=54) $C(13,12) Q
 .I %MDPSUG=6 W $C(10,10,10,10,10) I $D(%MDP("CUT")) W %MDP("CUT")_$C(10,10,10,10,10)
 .I %MDPSUG'=7 W $C(13,27),"@"
 .W $C(27),"E"
 ;
 I $$MDPNET(%DV) D CNET G EC
 ;
 C:%L3MYDV'=%DV %DV
PRINT ;
 I $G(@%DEV)[".LP" D  G EC
 .I $$^%L1ZOS(10,@%DEV)<0 Q
 .ZSY "unix2dos -q "_@%DEV
 .N %DVLPT S %DVLPT=$G(^DEV($$^%L3MYDVN,"LP"))
 .N %OK S %OK=0
 .I %DVLPT D
 ..N N S N="" F  S N=$O(^devi3(N)) Q:N=""  D  Q:%OK
 ...I ^(N)=%DVLPT,N["rempr" S %OK=1
 .I %OK ZSY "lpr -P rempr "_@%DEV
 .I '%OK ZSY "lpr "_@%DEV
 .ZSY "rm -f "_@%DEV
 ;
 I +(@%DEV)=54 D
 .I '$D(%L1LPT("FILE")) S %L1LPT("FILE")="54#PRINT"_%L3MYDVN
 .I $$^%L1ZOS(10,%L1LPT("FILE"))<0 Q
 .C %L1LPT("FILE") O %L1LPT("FILE"):(READONLY:REWIND)
 .I $$CMDS^%L3MYLPT'="",$$^%L1T2P($$CMDS^%L3MYLPT)
 .N TS0,TSS,I,J,A,EOF D ^%L1TS
 .U 0 S %SAY=" CTRL/E - dqtcd wiqtdl " X %XMSGV
 .K ^print($J) N ZT S ZT=$ZT S I=0
 .I $$^%L1ZOS(10,%L1LPT("FILE"))>0 F  U %L1LPT("FILE") R A S EOF=$ZEOF Q:EOF  D
 ..S I=I+1
 ..S ^print($J,I)=$E($$TR(A),1,255)
 ..I EOF<0 S ^print($J,I)=$P(^print($J,I),$C(12)) Q
 ..I $E(A,256,512)'="" S I=I+1,^print($J,I)=$E($$TR(A),256,512)
 .C %L1LPT("FILE") I '$D(%L1LPT("NODEL")),$$^%L1ZOS(10,%L1LPT("FILE"))>0 O %L1LPT("FILE") C %L1LPT("FILE"):DELETE
 .I $D(%L1LPT("ARX")) D  Q
 ..N MAC1,MAC2,%NMB,%MRK
 ..S %MRK=$$^%L1MRK("")
 ..S %NMB=$O(^SPOOL(%MRK,999999),-1)+1
 ..S ^SPOOL(%MRK,%NMB)=$H_"\"_%L3MYDV_"\"_%L1LPT("ARX")
 ..N %ST,%N,I
 ..F I=1:1:10 Q:'$D(^print($J,I))  S %ST=$$CL($G(^(I))) S ^SPOOL(%MRK,%NMB,"KOT",I)=%ST
 ..S MAC1="^print($J)",MAC2="^SPOOL(%MRK,%NMB,""PC"")" D ^%S1GC1
 ..K ^print($J)
 .;
 .I $G(%L1LPT("SND")) D  Q
 ..N MAC1,MAC2,%NMB,%MRK
 ..S %MRK=$$^%L1MRK("")
 ..S %NMB=$O(^SPOOLSND(%L1LPT("SND"),%MRK,999999),-1)+1
 ..S ^SPOOLSND(%L1LPT("SND"),%MRK,%NMB)=$H_"\"_%L3MYDV_"\"_%L1LPT("SND","ARX")
 ..N %ST,%N,I
 ..F I=1:1:10 Q:'$D(^print($J,I))  S %ST=$$CL($G(^(I))) S ^SPOOLSND(%L1LPT("SND"),%MRK,%NMB,"KOT",I)=%ST
 ..S MAC1="^print($J)",MAC2="^SPOOLSND(%L1LPT(""SND""),%MRK,%NMB,""PC"")" D ^%S1GC1
 ..K ^print($J)
 .N %N S %L1LPT("TO")="" I $P(@%DEV,">",2) S %L1LPT("TO")=$P(@%DEV,">",2)
 .S I=0
P2 .S %N=$O(^print($J,"")),I=I+1 I $G(%L1LPT("DELAY"))=1
 .I %N="" D  K ^print($J) Q
 ..I '%L1LPT("TO") X "N %L1T2P S %L1T2P(""EOL"")="""" I '$D(%L1LPT(""NOFF"")),$$^%L1T2P($C(12,13,13),0)" Q
 ..I %L1LPT("TO") U %L1LPT("TO") W:'$D(%L1LPT("NOFF")) $C(12,13,13) C %L1LPT("TO")
 .;;I $P'=$G(^PL("MDPORT")),%N>60,'(%N#2) H 1 I '(%N#10) H 1
 .I '%L1LPT("TO") I $$^%L1T2P(^print($J,%N)) K ^print($J,%N) D  U 0 R *%A:0 K:%A=5 ^print($J) G P2
 ..;;N %I,%OKMER S %OKMER=0 F %I=1:1 Q:$ZU(%I)=""  I $P($ZU(%I),",")="MER" S %OKMER=1 Q
 ..I %L3MYDVN=$$MDPORT^%L1PORT H 1
 .Q:'%L1LPT("TO")
 .U %L1LPT("TO") W !,^print($J,%N) K ^print($J,%N) U 0 R *%A:0 K:%A=5 ^print($J) G P2
 I +@%DEV=54,$$CMDF^%L3MYLPT'="",$$^%L1T2P($$CMDF^%L3MYLPT)
 I +@%DEV=54 U 0 S %SAY="" X %XMSGV
EC K %L1LPT Q
 ;
CLOSE1 D DEF I $G(%EROP) G EC
 D NORM I $G(%EROP) G EC
 N %DV S @("%DV="_%DEV)
 C:%DV'=%L3MYDV @%DEV K %L1LPT
 Q
DEF N %A I '$D(P1PC) U 0
 I $G(%L1LPT("SUG")) S %MDPSUG=%L1LPT("SUG")
 E  S @("%MDPSUG="_%L1SUG)
 K %L1OUT("MDP") D DEFMDP^%L1OUT(%MDPSUG)
 I $G(%L1LPT("DEV")),%L1LPT("DEV")=54 D DEF54 Q
 I $G(%L1LPT("DEV")) S @%DEV=^[$$^%L1GLD]dev(%L1LPT("DEV")) Q
 I $G(%L1OUT("PRINTER")) S %L1DEV=%L1OUT("PRINTER")
 S @("%A="_%L1DEV)
 I %A=54 D DEF54 Q
 S @%DEV=^[$$^%L1GLD]dev(%A)
 I @%DEV["/lp" S @%DEV=$TR(%L3MYDV,"/","")_".LP"
 I @%DEV["/LP" S @%DEV=$TR(%L3MYDV,"/","")_".LP"
 Q
DEF54 ;
 D  Q:%EROP  S %EROP=0 S @%DEV=%L1LPT("FILE")
 .I '$D(%L1LPT("FILE")) S %L1LPT("FILE")="54#PRINT"_%L3MYDVN Q
 .Q:'$P(@%DEV,">",2)  S %EROP=0 S %L1LPT("FILE")=$P(@%DEV,">",2)
 Q
NORM W $G(^LPT($P,"N"))
 Q
ER Q  I $ZS["SYSTM" U 0 S %SAY=" dlerta `l zqtcn " X %XMSGV(1) G ERN
 S %SAY=$ZS U 0 X %XMSGV(1)
ERN S %EROP=1 D CDEV(@%DEV) U 0 W ! Q
 Q
S D S1
 G %L1LPT
S1 S %EROP=0 U 0 S %GET=" d`ivil <ESC> e` <ENTER> ywde zqtcnd okd" D N^%L1GET
 I $G(%TO)="END" S %EROP=1 X "I 0" Q
 Q
S2 U 0 S %GET=" <ENTER> ywde zqtcnd okd" D N^%L1GET
 Q
S3 G S2
TR(A) ;
 I '$D(TS0) D ^%L1TS N T S T=TSS N TSS S TSS=T
 ;;I %TYPCRT="VT510" S TSS=TS1
 I %MDPSUG'=7 Q $TR(A,TS0,TSS)
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","COND"),"<<<<<")
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","NOCOND"),">>>>>")
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","B"),"[[[[[")
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","N"),"]]]]]")
 S A=$TR(A,TS0,TSS)
 S A=$$RPL^%L1FRM(A,"[[[[[",%L1OUT("MDP","B"))
 S A=$$RPL^%L1FRM(A,"]]]]]",%L1OUT("MDP","N"))
 S A=$$RPL^%L1FRM(A,"<<<<<",%L1OUT("MDP","COND"))
 S A=$$RPL^%L1FRM(A,">>>>>",%L1OUT("MDP","NOCOND"))
 Q A
CL(%ST) ;
 N %N
 I $L($P(%ST,$C(13,12),2))>1 S %ST=$P(%ST,$C(13,12))_$C(10,10,10,10,10)_"#"_$P(%ST,$C(13,12),2)
 S %N="" F  S %N=$O(%L1OUT("MDP",%N)) Q:%N=""  I %N'="GWPC",%ST[%L1OUT("MDP",%N) D
 .I %N="B" S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP","B"),%LIGHT1) Q
 .I %N="N" S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP","N"),%CCL) Q
 .S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP",%N),"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_2,"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_"CB","")
 I $L($P(%ST,$C(13),2))>1 S %ST=%LIGHT1_$P(%ST,$C(13))_%CCL
 I '$D(TSS) D ^%L1TS
 S %ST=$TR(%ST,TSS,TS0)
 Q %ST
CL1(%ST) ;
 N %N
 S %ST=$TR(%ST,$C(13,10),"")
 S %ST=$TR(%ST,$C(12),"#")
 S %N="" F  S %N=$O(%L1OUT("MDP",%N)) Q:%N=""  I %N'="GWPC",%ST[%L1OUT("MDP",%N) D
 .S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP",%N),"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_2,"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_"W1","")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_"W0","")
 S %ST=$$RPL^%L1FRM(%ST,"W1","")
 S %ST=$$RPL^%L1FRM(%ST,"W0","")
 I '$D(TSS) D ^%L1TS
 S %ST=$TR(%ST,TSS,TS0)
 Q %ST
ODEV(%DEV) ;
 S %EROP=0
 N %DV,%ER
 S %DV=@%DEV
 I $$MDPNET(%DV) D  Q
 .N PORT D CNET
 .F %J=1:1:5 S %ER=$$^%L2NALAN(%DV,9100) Q:'%ER  H 1
 .I %ER D  G OPNE
 ..S %SAY=$J_": PRINT ERROR "_%DV_" "_$$FUNC^%UCASE(%ER) X %XMSGV(1) Q
 ;
 O %DV:(WRITE:NEWVERSION:EXCEPTION="G OPNE^%L1LPT"):2 E  S %SAY="  ! dqetz zqtcn  " X %XMSGV(1) G OPNE
 Q
OPNE S %EROP=1 Q
 ;
MDPNET(%DV) ;
 I %DV?1N.N1".".E Q 1
 Q 0
CNET C "SCK$"_$J
 Q

%L1LPT0
%L1LPT ; PTIHAT MADPESET REHAVA           [ 23.10.06 19:51 ] [ 16.10.06 17:26 ] [ 12.10.06 18:00 ]
 ; %L1LPT("FILE") - FILE NAME FOR PRINT (IF %DEV=54 ) .
 ;                    IF NOT DEFINED - #PRINT_$P
 ; %L1LPT("NODEL") - NO DELETE FILE %L1LPT("FILE") AFTER PRINT
 ; %L1LPT("DEV") - DEVICE FOR PRINT
 ;                (IF YOU WANT TO PRINT TO DEVICE DIFFERENT FROM STANDART)
 ; %L1LPT("TO") - IF DEVICE FOR PRINT  = (54>6) - PRINT TO PORT 6
 ; %L1LPT("NOFF") - WITHOUT FORM FEED IN DEVICE CLOSING
 ;--------------------------------------------------------------------
 I '$D(%POSIC) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":SVER^%L1X"
 I $P($$^%L1ZU(0),",")="MLY" D OPEN G END
 S:'$D(%DEV) %DEV="USTR" D OPEN G END
END Q
 ;
OPEN ;
 I $P($$^%L1ZU(0),",")="MLY" S:'$D(%DEV) %DEV="DEV"
 S %EROP=0 D DEF
 I @(%DEV_"<0") U 0 S %SAY=" ! z`f dcnrn qitcdl ozip `l " X %XMSGV(1) S %EROP=2 Q
OP1 S %EROP=0
 D ODEV(%DEV) Q:%EROP
 D USE1 Q:%EROP
 W %L1OUT("MDP","NOCOND") I $D(%L1LPT("SMALL")) W %L1OUT("MDP","COND")
 I $G(^PL("2MG"))="?" D  Q
 .F  U 0 S %GET="2 - 2 dxibn ,1 - 1 dxibn" D N^%L1GET  Q:%S=1!(%S=2)
 .D USE1
 .I %S=1 W $C(27),"&l1H" Q
 .I %S=2 W $C(27),"&l5H" Q
 I $G(^PL("2MG")) D  K %L1LPT("2MG"),%L1SCPC("2MG"),%L1OUT("2MG")
 .I $G(%L1LPT("2MG"))=2!($G(%L1SCPC("2MG"))=2)!($G(%L1OUT("2MG"))=2) W $C(27),"&l5H" Q
 .W $C(27),"&l1H"
 Q
USE(%DEV) D USE1 Q
USE1 N %DV S %DV=@%DEV
USE2 I $$MDPNET(%DV) U "SCK$"_$J Q
 U %DV:(NOWRAP)
 Q
UDEV(%DV) G USE2
CLOSE ;
 I '$D(%DEV) S %DEV="USTR"
 D DEF I $G(%EROP) G EC
 D USE1 I $G(%EROP) G EC
 N %DV S @("%DV="_%DEV) G CDEV1
 ; -- ?
CDEV(%DV) ;
CDEV1 G:'$D(%DV) EC
 S:'$D(%DEV) %DEV="USTR"
 I '$D(%MDPSUG) D DEF
 D
 .I %MDPSUG=5!(%MDPSUG=7) W:'$D(%L1LPT("NOFF")) $C(13,12)
 .I %MDPSUG=6 W $C(10,10,10,10,10)
 .I %MDPSUG'=7 W $C(13,27),"@"
 .W $C(27),"E"
 ;
 I $$MDPNET(%DV) D CNET G EC
 ;
 C:%L3MYDV'=%DV %DV
PRINT ;
 I $G(@%DEV)[".LP" D  G EC
 .I $$^%L1ZOS(10,@%DEV)<0 Q
 .ZSY "unix2dos "_@%DEV
 .ZSY "lpr "_@%DEV
 .ZSY "rm -f "_@%DEV
 ;
 I +@%DEV=54 D
 .I '$D(%L1LPT("FILE")) S %L1LPT("FILE")="54#PRINT"_%L3MYDVN
 .C %L1LPT("FILE") O %L1LPT("FILE"):(READONLY:REWIND)
 .I $$CMDS^%L3MYLPT'="",$$^%L1T2P($$CMDS^%L3MYLPT)
 .N TS0,TSS,I,J,A,EOF D ^%L1TS
 .U 0 S %SAY=" CTRL/E - dqtcd wiqtdl " X %XMSGV
 .K ^print($J) N ZT S ZT=$ZT S I=0
 .I $$^%L1ZOS(10,%L1LPT("FILE"))>0 F  U %L1LPT("FILE") R A S EOF=$ZEOF Q:EOF  D
 ..S I=I+1
 ..S ^print($J,I)=$E($$TR(A),1,255)
 ..I EOF<0 S ^print($J,I)=$P(^print($J,I),$C(12)) Q
 ..I $E(A,256,512)'="" S I=I+1,^print($J,I)=$E($$TR(A),256,512)
 .C %L1LPT("FILE") I '$D(%L1LPT("NODEL")),$$^%L1ZOS(10,%L1LPT("FILE"))>0 O %L1LPT("FILE") C %L1LPT("FILE"):DELETE
 .I $D(%L1LPT("ARX")) D  Q
 ..N MAC1,MAC2,%NMB,%MRK
 ..S %MRK=$$^%L1MRK("")
 ..S %NMB=$O(^SPOOL(%MRK,999999),-1)+1
 ..S ^SPOOL(%MRK,%NMB)=$H_"\"_%L3MYDV_"\"_%L1LPT("ARX")
 ..N %ST,%N,I
 ..F I=1:1:10 Q:'$D(^print($J,I))  S %ST=$$CL($G(^(I))) S ^SPOOL(%MRK,%NMB,"KOT",I)=%ST
 ..S MAC1="^print($J)",MAC2="^SPOOL(%MRK,%NMB,""PC"")" D ^%S1GC1
 ..K ^print($J)
 .;
 .I $G(%L1LPT("SND")) D  Q
 ..N MAC1,MAC2,%NMB,%MRK
 ..S %MRK=$$^%L1MRK("")
 ..S %NMB=$O(^SPOOLSND(%L1LPT("SND"),%MRK,999999),-1)+1
 ..S ^SPOOLSND(%L1LPT("SND"),%MRK,%NMB)=$H_"\"_%L3MYDV_"\"_%L1LPT("SND","ARX")
 ..N %ST,%N,I
 ..F I=1:1:10 Q:'$D(^print($J,I))  S %ST=$$CL($G(^(I))) S ^SPOOLSND(%L1LPT("SND"),%MRK,%NMB,"KOT",I)=%ST
 ..S MAC1="^print($J)",MAC2="^SPOOLSND(%L1LPT(""SND""),%MRK,%NMB,""PC"")" D ^%S1GC1
 ..K ^print($J)
 .N %N S %L1LPT("TO")="" I $P(@%DEV,">",2) S %L1LPT("TO")=$P(@%DEV,">",2)
 .S I=0
P2 .S %N=$O(^print($J,"")),I=I+1
 .I %N="" D  K ^print($J) Q
 ..I '%L1LPT("TO") X "N %L1T2P S %L1T2P(""EOL"")="""" I '$D(%L1LPT(""NOFF"")),$$^%L1T2P($C(12,13,13),1)" Q
 ..I %L1LPT("TO") U %L1LPT("TO") W:'$D(%L1LPT("NOFF")) $C(12,13,13) C %L1LPT("TO")
 .;;I $P'=$G(^PL("MDPORT")),%N>60,'(%N#2) H 1 I '(%N#10) H 1
 .I '%L1LPT("TO") I $$^%L1T2P(^print($J,%N)) K ^print($J,%N) D  U 0 R *%A:0 K:%A=5 ^print($J) G P2
 ..;;N %I,%OKMER S %OKMER=0 F %I=1:1 Q:$ZU(%I)=""  I $P($ZU(%I),",")="MER" S %OKMER=1 Q
 ..I %L3MYDVN=$$MDPORT^%L1PORT H 1
 .Q:'%L1LPT("TO")
 .U %L1LPT("TO") W !,^print($J,%N) K ^print($J,%N) U 0 R *%A:0 K:%A=5 ^print($J) G P2
 I +@%DEV=54,$$CMDF^%L3MYLPT'="",$$^%L1T2P($$CMDF^%L3MYLPT)
 I +@%DEV=54 U 0 S %SAY="" X %XMSGV
EC K %L1LPT Q
 ;
CLOSE1 D DEF I $G(%EROP) G EC
 D NORM I $G(%EROP) G EC
 N %DV S @("%DV="_%DEV)
 C:%DV'=%L3MYDV @%DEV K %L1LPT
 Q
DEF N %A I '$D(P1PC) U 0
 I $G(%L1LPT("SUG")) S %MDPSUG=%L1LPT("SUG")
 E  S @("%MDPSUG="_%L1SUG)
 K %L1OUT("MDP") D DEFMDP^%L1OUT(%MDPSUG)
 I $G(%L1LPT("DEV")),%L1LPT("DEV")=54 D DEF54 Q
 I $G(%L1LPT("DEV")) S @%DEV=^[$$^%L1GLD]dev(%L1LPT("DEV")) Q
 S @("%A="_%L1DEV)
 I %A=54 D DEF54 Q
 S @%DEV=^[$$^%L1GLD]dev(%A)
 I @%DEV["/lp" S @%DEV=$TR(%L3MYDV,"/","")_".LP"
 I @%DEV["/LP" S @%DEV=$TR(%L3MYDV,"/","")_".LP"
 Q
DEF54 ;
 D  Q:%EROP  S %EROP=0 S @%DEV=%L1LPT("FILE")
 .I '$D(%L1LPT("FILE")) S %L1LPT("FILE")="54#PRINT"_%L3MYDVN Q
 .Q:'$P(@%DEV,">",2)  S %EROP=0 S %L1LPT("FILE")=$P(@%DEV,">",2)
 Q
NORM W $G(^LPT($P,"N"))
 Q
ER Q  I $ZS["SYSTM" U 0 S %SAY=" dlerta `l zqtcn " X %XMSGV(1) G ERN
 S %SAY=$ZS U 0 X %XMSGV(1)
ERN S %EROP=1 D CDEV(@%DEV) U 0 W ! Q
 Q
S D S1
 G %L1LPT
S1 S %EROP=0 U 0 S %GET=" d`ivil <ESC> e` <ENTER> ywde zqtcnd okd" D N^%L1GET
 I $G(%TO)="END" S %EROP=1 X "I 0" Q
 Q
S2 U 0 S %GET=" <ENTER> ywde zqtcnd okd" D N^%L1GET
 Q
S3 G S2
TR(A) ;
 I '$D(TS0) D ^%L1TS N T S T=TSS N TSS S TSS=T
 ;;I %TYPCRT="VT510" S TSS=TS1
 I %MDPSUG'=7 Q $TR(A,TS0,TSS)
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","COND"),"<<<<<")
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","NOCOND"),">>>>>")
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","B"),"[[[[[")
 S A=$$RPL^%L1FRM(A,%L1OUT("MDP","N"),"]]]]]")
 S A=$TR(A,TS0,TSS)
 S A=$$RPL^%L1FRM(A,"[[[[[",%L1OUT("MDP","B"))
 S A=$$RPL^%L1FRM(A,"]]]]]",%L1OUT("MDP","N"))
 S A=$$RPL^%L1FRM(A,"<<<<<",%L1OUT("MDP","COND"))
 S A=$$RPL^%L1FRM(A,">>>>>",%L1OUT("MDP","NOCOND"))
 Q A
CL(%ST) ;
 N %N
 I $L($P(%ST,$C(13,12),2))>1 S %ST=$P(%ST,$C(13,12))_$C(10,10,10,10,10)_"#"_$P(%ST,$C(13,12),2)
 S %N="" F  S %N=$O(%L1OUT("MDP",%N)) Q:%N=""  I %N'="GWPC",%ST[%L1OUT("MDP",%N) D
 .I %N="B" S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP","B"),%LIGHT1) Q
 .I %N="N" S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP","N"),%CCL) Q
 .S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP",%N),"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_2,"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_"CB","")
 I $L($P(%ST,$C(13),2))>1 S %ST=%LIGHT1_$P(%ST,$C(13))_%CCL
 I '$D(TSS) D ^%L1TS
 S %ST=$TR(%ST,TSS,TS0)
 Q %ST
CL1(%ST) ;
 N %N
 S %ST=$TR(%ST,$C(13,10),"")
 S %ST=$TR(%ST,$C(12),"#")
 S %N="" F  S %N=$O(%L1OUT("MDP",%N)) Q:%N=""  I %N'="GWPC",%ST[%L1OUT("MDP",%N) D
 .S %ST=$$RPL^%L1FRM(%ST,%L1OUT("MDP",%N),"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_2,"")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_"W1","")
 S %ST=$$RPL^%L1FRM(%ST,$C(27)_"W0","")
 S %ST=$$RPL^%L1FRM(%ST,"W1","")
 S %ST=$$RPL^%L1FRM(%ST,"W0","")
 I '$D(TSS) D ^%L1TS
 S %ST=$TR(%ST,TSS,TS0)
 Q %ST
ODEV(%DEV) ;
 S %EROP=0
 N %DV,%ER
 S %DV=@%DEV
 I $$MDPNET(%DV) D  Q
 .N PORT D CNET
 .F %J=1:1:5 S %ER=$$^%L2NALAN(%DV,9100) Q:'%ER  H 1
 .I %ER D  G OPNE
 ..S %SAY="PRINT ERROR "_%DV_" "_$$FUNC^%UCASE(%ER) X %XMSGV(1) Q
 ;
 O %DV:(WRITE:NEWVERSION:EXCEPTION="G OPNE^%L1LPT"):2 E  S %SAY="  ! dqetz zqtcn  " X %XMSGV(1) G OPNE
 Q
OPNE S %EROP=1 Q
 ;
MDPNET(%DV) ;
 I %DV?1N.N1".".E Q 1
 Q 0
CNET C "SCK$"_$J
 Q

%L1LUAH
%L1LUAH ; [ 01/02/2000  1:46 PM ] [ 07/15/98  6:53 PM ] [ 08/14/97  4:20 PM ]
 ;OUT :  COLD - KAMUT JOM B HODESH
 ;       COLDH - KAMUT HAGIM
 ;       %OTM - DATE HAG
 ;; $$TV^%L1LUAH - VIBOR DNJA
 N (%UPRCOD,%XMSGV,COLD,COLDH,%OTM,%L1LUAH,YY,MM)
 I '$D(%POSIC) D ^%L1C
B K %OTM,COLD,COLDH,YY,MM
 X %chista
 D ZAPR Q:%S=""!(%TO="END")
 D INIT D ^%L1RBUA
 D DEF
 D PR Q:$D(%L1LUAH)#2
O D OTM
 S %Q("Z")="xcqa lkd",%Q("X")=40,%Q("Y")=22 D ^%S2ASK G:YES END
 S %XX=0,%YY=24 X %POSIC W %chists
 S %GET="<0> 1 - gel owzl , 0 - dpye yceg owzl++24,60,HH#++1,E,I++01"
 D ^%L1GET G:0[%S B
 G O
END S %N=-1,%JJ=0 F  S %N=$N(%OTM(%N)) Q:%N=-1  S %JJ=%JJ+1
 S COLDH=%JJ
 Q
 ;-
ZAPR ;
 S %DAT=$ZD(+$H,"MM/DD/YEAR")
 S %GET="dpy++2,70,HH#"_$E($P(%DAT,"/",3),3,4)_"++2,E,I++1234567890" D ^%L1GET
 Q:%S=""!($G(%TO)="END")  S YY=%S
 S %GET="yceg++2,50,HH#"_$P(%DAT,"/",1)_"++2,E,I++1234567890" D ^%L1GET
 G:%S=""!(%TO="END") ZAPR S MM=+$TR($J(%S,2)," ",0)
 Q
 ;-
DEF ;
 S DEN=$$^%L1DC("01/"_MM_"/"_YY,8)
 S COLD=+MMM(+MM),NAMEM=$P(MMM(+MM),"\",2)
 Q
PR ;
 F %I=1:1:COLD D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE" S:'$D(%L1LUAH("TV"))&((DEN+%I-2)#7=6) %OTM(%I)="" S:$D(%OTM(%I)) %SAY=%SAY_",I" X %XMSG
 F %J=1:1:7 S %SAY=D(%J)_"++"_(%J-1*STEPY+NPY)_","_(NPX-4)_",HH" X %XMSG
 S %SAY="    "_YY_" "_NAMEM_"++"_(NPY-3)_","_(NPX+15)_",HH" X %XMSG
 S %SAY=" <PGDN> - `ad yceg , <PGUP> - mcew yceg " X %XMSGN
 Q
POZ ;
 S %YY=(DEN+%I-2)#7*STEPY+NPY
 S %XX=STEPX*((DEN+%I-1-.1)\7)+NPX
 Q
OTM ;
 S %SAY="( d`ivi - <ESC> ) bg inei <ENTER> jxc onq " X %XMSGN
PZ S %I=1 D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,I" X %XMSG
CYC S (%A1,%B)=0 R *%A:0
 I %A=13,$D(%OTM(%I)) K %OTM(%I) G CYC
CYC13 I %A=13 S %OTM(%I)="" G:$D(%L1LUAH("TV")) ENDC G CYC
 I $L($ZB)=4,$D(%UPRCOD($ZB)),$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
 I %A=27 X "F %JJ=1:1:200" R *%A1:0 X "F %JJ=1:1:200" G:%A1<0&$D(%L1LUAH("TV")) ESC G:%A1<0 ENDC R *%B:0 G:'$D(%UPRCOD(%A1_%B)) CYC G:$T(@%UPRCOD(%A1_%B))="" CYC G @%UPRCOD(%A1_%B)
 I %A=0 R *%A1:0 G SERV
 I %A=25 G ESC
 I %A>47,%A<58 D  S %A=13 G CYC13
 .S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,"_$S($D(%OTM(%I)):"I",1:"") X %XMSG
 .S %GETIN=$C(%A) S %BE="E",%GET=": mei#2" D N^%L1GET
 .S %I=%S S %SAY="" X %XMSGN D POZ
 .S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,I" X %XMSG
 G CYC
SERV I %A=0,$G(%B)'>0,$G(%A1)>0,$D(%UPRCOD(%A_%A1)),$T(@%UPRCOD(%A_%A1))'="" G @%UPRCOD(%A_%A1)
 I %A=0 G CYC
VVERX G:%I=1 CYC D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE" X:'$D(%OTM(%I)) %XMSG S %I=%I-1 D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,I" X %XMSG G CYC
VNIZ G:%I=COLD CYC D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE" X:'$D(%OTM(%I)) %XMSG S %I=%I+1 D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,I" X %XMSG G CYC
PRAVO G:%I+7>COLD CYC D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE" X:'$D(%OTM(%I)) %XMSG S %I=%I+7 D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,I" X %XMSG G CYC
LEVO G:%I-7<1 CYC D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE" X:'$D(%OTM(%I)) %XMSG S %I=%I-7 D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,I" X %XMSG G CYC
PGUP S MM=MM-1 I MM<1 S MM=12,YY=YY-1 S:YY<0 YY=99
 K %OTM
 D HZG(YY,MM) G PZ
PGDN S MM=MM+1 I MM>12 S MM=1,YY=YY+1 S:YY>99 YY=0
 K %OTM
 D HZG(YY,MM) G PZ
 G CYC
ESC I $D(%L1LUAH("TV")) K %OTM
ENDC ;
 D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE" X:'$D(%OTM(%I)) %XMSG
 I $D(%L1LUAH("TV")),'$D(%OTM(%I)) Q 0
 I $D(%L1LUAH("TV")) S:YY=0 YY=2000 Q $$^%L1DC(%I_"/"_MM_"/"_YY,3)
 Q
 ;-
 Q
INIT ;
 S D(1)="`"
 S D(2)="a"
 S D(3)="b"
 S D(4)="c"
 S D(5)="d"
 S D(6)="e"
 S D(7)="y"
 S MMM(1)="31\x`epi"
 S MMM(2)=$S(YY#4:28,1:29)_"\x`exat"
 S MMM(3)="31\uxn"
 S MMM(4)="30\lixt`"
 S MMM(5)="31\i`n"
 S MMM(6)="30\ipei"
 S MMM(7)="31\ilei"
 S MMM(8)="31\hqebe`"
 S MMM(9)="30\xanhtq"
 S MMM(10)="31\xaehwe`"
 S MMM(11)="30\xanaep"
 S MMM(12)="31\xanvc"
 S STEPY=2,STEPX=4,NPY=6,NPX=28
 S X1=NPX-2,X2=NPX+(6*STEPX)
 S Y1=NPY-1,Y2=NPY+(8*STEPY)-1
 K %OTM
 Q
TV(STAM) ;--- BHIRAT TAARIH
 N (%UPRCOD,%XMSGV,COLD,COLDH,%OTM,%L1LUAH) D ^%L1C
 X %chista
 S YY=$E($$YYMM^%L1DC($H),1,2)
 S MM=$E($$YYMM^%L1DC($H),3,4)
 D INIT D HZG(YY,MM)
 S %I=$P($$^%L1DC($H,1),"/",1)
 D POZ S %SAY=$J(%I,2)_"++"_%YY_","_%XX_",EE,I" X %XMSG
 S %L1LUAH("TV")="" G CYC
 Q
HZG(YY,MM) D DEF
 S %L1RBCL=""
 D ^%L1RBUA K %L1RBCL D PR
 Q

%L1M
DBMAINT3 ;JWC;MOUNT VOLUME GROUPS [ 10/17/91 11:08 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1990
 S OS=1
 ZF  D PTRS^%VGUTIL,OS^%VGUTIL,DSK^%VGUTIL1:'OS,GETVG^%VGUTIL K %DEV
 D VGSLOT I QF W !,"No room to mount another volume group" Q
 I OS D GETHFS^%SDEV I '%DEV W *7,!!,"No HFS devices available..." K %DEV Q
RETRY D HNAME Q:QF  D VGNAME I QF U 0 W !,"Volume is not initialized",*7 G RETRY
 I $D(VG(VGNAME)) D QAGN G:QF=1 RETRY Q:QF
 I VIN W !,*7,"This is not a volume 0" G RETRY
 W !,"Mounting."
 S %VGI=VGIN D START Q:QF
 D MOUNT^TRANSLA1
 W:VGIN "done." ;D DBMAINT^%SP
 Q
START D GETVOLS I QF W !,"Error in finding volumes for this volume group",*7 Q
 D CHKVOLS I QF W !,"mounting aborted." Q
 D MTVOLS^MOUNT,MOUNT,SETSAT^UMOUNT,SETUCI^MOUNT
 I $D(^ ("DDP")) D DBCHG^DDP
 Q
STU ; STU ENTRY POINT
 D PTRS^%VGUTIL,OS^%VGUTIL,DSK^%VGUTIL1:'OS,GETVG^%VGUTIL
 S:OS %DEV=51 D CHKNAME Q:QF
 X "ZF" O 63
 D VGNAME Q:QF
 I VGIN,$D(VG(VGNAME)) F X=65:1 S $E(VGALT,3)=$C(X) I '$D(VG(VGALT)) S X=VGALT D HASH^%VGUTIL S $P(LABEL(0),"^",5)=Y Q
 G START
MOUNT S VGOF=$V(VGIN*4+VGTAB)
 V VGOF:-3:VGALT:3:1,VGOF+10:-3:VGMAP:2,VGOF+12:-3:VGBLK:4
 V VGOF+30:-3:VOLS:2,VGOF+4:-3:$P(LABEL(0),"^",5):2
 V VGOF+28:-3:0:2 ; ptr to 1st free bit in SAT
 Q
CHKVOLS Q:VOLS<2  F I=1:1:VOLS-1 D CHKVOL
 Q
CHKVOL ;
 S VIN=$P(LABEL(I),"^",7),VMAP=$P(LABEL(I),"^",6),VN=$P(LABEL(I),"^",1),VMAG=$P(LABEL(I),"^",3) U 0 S QF=0
 I VIN'=I W !,"** WARNING ** volume ",I," has volume number ",VIN,*7
 I VN'=VG0N(I) W !,"** WARNING ** volume ",I,"'s name is '",VN,"' but known to volume 0 as ",VG0N(I),*7
 I VMAP'=VG0M(I) W !,"** WARNING ** volume ",I," has ",VMAP," map(s) but known to volume 0 as ",VG0M(I)," map(s)",*7
 I VMAG'=MAGIC W !,"** WARNING ** volume ",I,"'s magic is",VMAG," but known to volume 0 as ",MAGIC,*7
 Q
GETVOLS S QF=0 Q:VOLS<2  D VOLNAME:OS,VOLDSK:'OS Q
VOLNAME F I=1:1:VOLS-1 W:'$G(STUAUTO) "." S (HNAME,VOLNA(I))=$V(I*64,0,64,1) D CHKNAME G:QF VOLBAD
 F I=1:1:VOLD@FO„O“�žÀ ��žC’BO€@ÈI#”)ª* ª¨'”�"& ¡"¦/&§UNT C %DEV S LABEL(I)=LABEL
VOLBAD Q
VOLDSK ; GET OTHER VOLUMES ADDRESS FOR SA
 U 63:(:::"T") U 0
 S DSK="" F I=1:1 S DSK=$O(%DSK(DSK)) W:'$G(STUAUTO) "." Q:DSK=""  S HNAME=DSK D LABEL^MOUNT I $P(LABEL,"^",7),$P(LABEL,"^",3)=MAGIC,($P(LABEL,"^",2)=VGNAME) DO
 .NEW P7 S P7=$P(LABEL,"^",7)
 .I $D(LABEL(P7)) S QF=2_"^"_$P(LABEL(P7),"^",8)_"^"_$P(LABEL(P7),"^")_"^"_$P(LABEL,"^",8)_"^"_$P(LABEL,"^") Q
 .S LABEL(P7)=LABEL
 I +QF=2 W *7,!!,"Error: duplicate volumes",!?3,"disk address ",$P(QF,"^",2),", volume name=",$P(QF,"^",3),!?3,"disk address ",$P(QF,"^",4),", volume name=",$P(QF,"^",5) S QF=1 Q
 F I=1:1:VOLS-1 I '$D(LABEL(I)) W !,"Unable to locate volume number ",I," (",VG0N(I),") of volume group ",VGNAME S QF=1
 U 63:(:::"C") U 0
 Q
VGNAME S QF=0 W:'$G(STUAUTO) "." K LABEL
 U 63:(:::"T") U 0
 D LABEL^MOUNT U 63:(:::"C") U 0 I LABEL="" S QF=1 Q
 S LABEL(0)=LABEL,VIN=$P(LABEL,"^",7)
 S (VGALT,VGNAME)=$V(512+8,0,3,1),MAGIC=$V(512+16,0,4)
 I VGNAME'?3A!(MAGIC=0) S QF=1 Q
 S VGBLK=$V(512+36,0,4),VGMAP=$V(512+40,0,2),VGUCI=$V(512+32,0,4),VOLS=$V(512+42,0,2)
 I VOLS>1 F I=1:1:VOLS-1 S VF=I-1*12+512+44,VG0N(I)=$V(VF,0,8,1),VG0M(I)=$V(VF+8,0,2)
 C:$D(%DEV) %DEV Q
HNAME ;
 S QF=0 S HNAME="C:\DATABASE2.MSM" G HNLEV
 W !!,"Enter ",$S(OS:"host file name",1:"disk address") R " for volume group: ",X S QF=0,HNAME=X I X="^Q"!(X="^q")!("^"[X) S QF=1 Q
 I HNAME?.E1C.E W !,"Invalid characters entered",*7 G HNAME
 I HNAME["?" W !!?3 W:'OS "Enter the 3 character hexadecimal address of the disk which"
 I  W:OS "Enter the full name of the host operating system file which"
 I  W !?3,"contains the first volume of the volume group to mount."
 I  W:'OS !?3,"Enter '^L' for a list of accessible disks."
 I  W !?3,"Enter '^' to return to the previous question."
 I  W !?3,"Enter '^Q' to exit to the utility." G HNAME
HNLEV D CHKNAME G:QF HNAME Q
CHKNAME ;
 S QF=0 G:'OS CHKNAME1 O %DEV:(HNAME:"R") U %DEV S ZA=$ZA U 0 C %DEV
 I ZA<0 W !,"File name ",HNAME," does not exist." S QF=1 Q
 O 63 O %DEV:(HNAME:"CBR") Q
CHKNAME1 I HNAME="^L" S X="" W !,"Accessible disks are:",!
 I  F I=0:1 S X=$O(%DSK(X)) Q:X=""  W ?(I#8*8),X W:$X>70 !
 I  S QF=1 Q
 I '$D(%DSK(HNAME)) W !,"Disk ",HNAME," not available" S QF=1 Q
 Q
QAGN ;
 W !,"You have selected volume group '",VGNAME,"' which is already mounted"
 R !,"To continue mount, enter an alternate volume group name: ",X
QAGNR ;
 I X="^L"!(X="^l") D VGLIST^%VGUTIL G QAGNX
 I X="^" S QF=1 Q
 I X="^Q" S QF=2 Q
 I X?3U S VGALT=X D HASH^%VGUTIL S $P(LABEL(0),"^",5)=Y,QF=0 Q
 W !,"   Each mounted volume group must have a unique 3 letter name."
 W !,"   Since the volume group you want to mount has the same name "
 W !,"   as one which is already mounted, you must give it a "
 W !,"   surrogate name which will be valid as long as it is mounted."
 W !,"   Enter '^L' to see a list of mounted volume groups."
 W !,"   Enter '^' to return to the previous question"
 W !,"   Enter '^Q' to exit the utility."
QAGNX R !!,"Please enter an alternate volume group name: ",X G QAGNR
VGSLOT S QF=1 F VGIN=1:1:7 S VGOF=$V(VGIN*4+VGTAB) Q:'VGOF  I '$V(VGOF+4,-3,2) S QF=0 Q

%L1MBG
%L1MBG ; INPUT FROM DISPLAY [ 15.03.19 07:15 ] [ 15.01.06 20:02 ] [ 06.09.05 11:12 AM ] 
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%MBG,%REFHS) D ^%L1C
 I '$D(%POSIC) D ^%L1C
 K %BE,%LS,%S,%L1DS,OLDDAT,YOLD,SHOLD,SCHOLD
 N COLG,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPG,NPGL,OTB,PG,%PRNEW,RKV,RSCR,RZD,%REFH1
 N SHOLD,SCHOLD,STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2 ;SH,SCH
 N %HBRY S %HBRY=""
 I $D(%MBG("PAR"))>9 D ^%L1MBG1
 S NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
BEG D INIT
 S %REFH1=$G(%MBG("REF"),"^MBG($P")
 D PS
 Q:$D(%L1MBG)
L0 S:$D(YOLD) %YY=YOLD S:$D(SHOLD) SH=SHOLD S:$D(SCHOLD) SCH=SCHOLD
LOOP ; -------------------------------------- NEW LINE
 K YOLD,SHOLD,SCHOLD,%MBG("TO") X %XCL
 K %INV S SH=SH+1,SCH=SCH+1
 I $D(%MBG("GWUL")),SH>%MBG("GWUL") W *7 G ZP ;RSM
 S %YY=%YY+STEP,$Y=%YY,%YYYY=%YY
 K %MBG("NEW"),%PRPL
 F JJ=1:1:COLG S %MBG("O",JJ)=""
 K JJ
ML ;
 F JJ=1:1 Q:'$D(%MBG("OU",JJ))
 S %FIRST=JJ K JJ
 S J=0
 I %YY>(STEP*COLS+VGR)!(%YY>23) S:%YY>23 %YY=23 G ZP
 S %XX=XX0-2 W %ENG X %POSIC W %CLI W SH+$G(%MBG("OFF")) X %XCL ; NUMBER OF SEQUENCE
 G INC
 ;------------------------------------------- NEW COLUMN
LGR U $P:(NOECHO:NOWRAP) K %TO,%FLL,%S,%L1DS,%SC W %ENG S %TO=""
 S %MBG("O",J)=$P($G(@(%REFH1_",SH)")),RZD,J)
 ;I $G(%MBG("H",J))'?.P S %SAY=$G(%MBG("H",J)) X %XMSGN
 S %SAY=$G(%MBG("H",J)) X %XMSGN
 S RKV=$P($G(@(%REFH1_",SH)")),RZD,J)
 I RKV'?.P S %MBG("O",J)=RKV ;**************
 K RKV ;**************
 I $D(%MBG("DO",J)) X %MBG("DO",J) ;**************
 S %XX=%MBG("X",J) S %SAY=%MBG("Z",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH,I" X %XMSG S %XX=%MBG("X",J)
 S %YY=%YYYY,$Y=%YY I %XX["+" S %YY=%YY+1,$Y=$Y+1,%PRPL="" X %LIGHT
 X %POSIC
 S %LS=%MBG("D",J) S %S=%MBG("O",J) S %INV=""
 S CIST=$G(%MBG("S",J)) K:CIST="" CIST S %PRNEW=0
 I $D(%MBG("=")) S %ZMSL=$G(%ZMSL)_"="
 I %MBG("RGS",J)="E" D  I %S'["==",$D(%MBG("DR",J)),$L($P(%S,"."))>(%MBG("D",J)-%MBG("DR",J)-1) D ER G LGR
 .S %XX=%XX-%LS X %POSIC S $X=%XX
 .S %FL="" K %BE D ^%ZMSL K %INV,%FL S:$G(%TO)="=" %S="==" Q:%S["=="
 .I $D(%MBG("DR",J)),%S'["%" S %S=$J(%S,%MBG("DR",J)+1,%MBG("DR",J))
 .I $E(%MBG("D",J),$L(%MBG("D",J)))="." S %S=$TR($J(%S,%MBG("D",J))," ",0)
 I %MBG("RGS",J)="H" S $X=%XX-1 D ^%L1ZMS I $G(%TO)="=" S %S="=="
 I %MBG("RGS",J)="HH" D
 .N %X1,%Y1,%X2,%Y2
 .S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+STEP-1,%LS=%LS*STEP D ^%L1WH
 .S %L1WH="" K %INV D ^%L1WH K %L1WH
 .Q
 I %MBG("RGS",J)="D" S %XX=%XX-8 S $X=%XX S %L1DS=$TR(%S,".","") D ^%L1DAT S %S=%L1DAT1 ; LGR --> SET
 I %MBG("RGS",J)="T" S %XX=%XX-8 S $X=%XX S %L1TS=$TR(%S,".","") D ^%L1TIME S %S=%L1TIME1 ; LGR --> SET
 S DL=$S(%MBG("RGS",J)="D":8,1:%MBG("D",J)) ;***
 W %ENG S %XX=%MBG("X",J)-DL
 I $G(%TO)="DEL",'$D(%MBG("DELAS")) D DEL G:%TO'="PGUP" BEG G PGUP
 I %S["==",J=%FIRST,$O(^(SH))="" G RSM
 S %X000=%XX I %MBG("RGS",J)'="HH" X %POSIC X %XCL X:$D(%PRPL) %LIGHT W $J($$W^%L1C(%S),DL)
 X %XCL X:$D(%PRPL) %LIGHT S %SAY=%MBG("Z",J)_"++"_(VGR0+(%MBG("X",J)["+"))_","_%MBG("X",J)_",HH" X %XMSG S %XX=%X000,$X=%XX K %X000
 S %MOLD=$P($G(@(%REFH1_",SH)")),RZD,J) S $P(@(%REFH1_",SH)"),RZD,J)=%S
 I $G(%MBG("GLOB",J))'?."^"1U.E,(%TO="F7")!(%TO="F6"),%S="" S %S=$S(%TO="F6":"?",1:"*"),%TO=""
 I %MBG("O",J)'=%S!$D(%MBG("NEW",J))!(%MBG("O",J)="?")!(%MBG("O",J)="*") S %PRNEW=1
 S %MBG("O",J)=%S S %YY=%YYYY,$Y=%YY
 I $G(%MBG("GLOB",J))?."^"1U.E,(%TO="F7")!(%TO="F6") D  S %TO="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD D VSV
 .N FILE S FILE=%MBG("GLOB",J)
 .I %TO="F7" D DAFUS^%L3MBGS Q:'$L($G(STRING))  S (%S,%MBG("O",J))=STRING Q
 .I %TO="F6" D POISK^%L3MBGS Q:'$L($G(STRING))  S (%S,%MBG("O",J))=STRING Q
IBUD ;
 I $G(%TO)="",$D(%MBG("C",J)),%MBG("C",J)'?.P S JOLD=J D  D:$G(%MBG("TO",J))="PL" PL G:$G(%MBG("TO",J))'="P" SET D PS G SET ;G BEG
 .I %OPT=1 D GET^%VIDEO("OLD",1,1,78,VGR0-1,2)
 .S JOLD=J,YOLD=%YY,SHOLD=SH,SCHOLD=SCH
 .N %FIRST X %MBG("C",J)
 .I %OPT=1 D PUT^%VIDEO("OLD",1,1,78,VGR0-1,2)
 .S J=JOLD,%YY=YOLD,SH=SHOLD,SCH=SCHOLD
 .Q
SET ;
 I $D(%SC("ER")) S %MBG("O",J)=%MOLD W *7 G LGR
 I $D(%SC("ST")) W *7 G LGR
NAZAD S:$G(%TO)="END"&(J>%FIRST) %TO="UP"
 I $D(%TO),%TO="UP",J>%FIRST S J=J-1 G:'$D(%MBG("OU",J)) LGR G NAZAD
 I $G(%TO)'="",'$D(%MBG("NEW")) G:J=%FIRST UP G LGR
 ; -----------------------------------------    END OF INPUT COLUMN
UP ;
 I $G(%TO)="UP" G:SCH=1 ZP S %YY=%YY-(2*STEP),SH=SH-2,SCH=SCH-2 D CLOU G LOOP
 I $G(%TO)="DW" D CLOU G LOOP
 I $G(%TO)="END" G ZP ;G END
PGUP ;I %TO="PGUP" G:NPG'>1 ML:'$D(%L1MBG),BEG:$D(%L1MBG) S NPG=NPG-1 G BEG
 ;I %TO="PGDW" G:'$D(@(%REFH1_",SH-SCH+COLS+1)")) BEG:$D(%L1MBG),ML:'$D(%L1MBG) S NPG=NPG+1,PG(NPG)=SH-SCH+COLS G BEG
 I $G(%TO)="PGUP" G:NPG'>1 ML:'$D(%L1MBG),END S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
 I $G(%TO)="PGDW" G:'$D(@(%REFH1_",SH-SCH+COLS+1)")) ML:'$D(%L1MBG),END S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
INC S J=J+1
 I J>COLG D CLOU G LOOP
 I $D(%MBG("OU",J)) G INC
 G LGR
CLOU F JJ=1:1:COLG I $G(%MBG("OU",JJ))'="IN" K %MBG("OU",JJ)
 Q
ZP D ZAPR G RSM:OTB=".",BEG
 ;
PL S GG=$G(@(%REFH1_",SH)")),I=0 ;
 S Y1=VGR0,X1=%MBG("LL")-1,Y2=$G(%MBG("NGR"),24)
 S XX0=$G(%MBG("LR"),70)+5,X2=XX0+1 S:XX0>79 XX0=79
 S %XX=X1 X %POSIC W $J("",X2-X1-1)
 D PG Q  ;G INC ;L0
RSM ;
 I $D(%MBG("RSM")) D @%MBG("RSM")
END Q
PS N SH,SCH,%YY,J
 D CLEAR S %SAY=NPG_"++"_(VGR0-1)_","_(X1+2)_",EE"
 X %XMSG S %SAY=" cenr++"_(VGR0-1)_","_(X1+8)_",HH" X %XMSG
 S SCH=0,SH=PG(NPG),%OFF=0
 F JJ=1:1:COLG D
 .I %MBG("X",JJ)["+" S %OFF=1 X %LIGHT
 .S %SAY=%MBG("Z",JJ)_"++"_(VGR0+%OFF)_","_%MBG("X",JJ)_",HH," X %XMSG
 ;.S %SAY=$E(%MBG("Z",JJ),$L(%MBG("Z",JJ)))_"++"_(VGR0+%OFF)_","_%MBG("X",JJ)_",HH,I" X %XMSG
 S %YY=VGR D P S %YY=VGR
 X %XCL Q
P N I,%S,%L1DS,J ;
 F I=1:1:COLS Q:'$D(@(%REFH1_",SH+I)"))  S %YY=%YY+STEP D PG
 ;S %SAY="PG-DW++"_(Y2-2)_",8,EE,I" X %XMSG S %SAY=" - d`ad cenr++"_(Y2-2)_",28,HH" X %XMSG
 ;S %SAY="PG-UP++"_(Y2-2)_",35,EE,I" X %XMSG S %SAY=" - mcew cenr++"_(Y2-2)_",53,HH" X %XMSG
 ;S %SAY="==,"_$S(%TYPCRT["VT":"<PF11>",1:"<ESC>")_"++"_(Y2-2)_",57,EE,I" X %XMSG S %SAY=" - meiq++"_(Y2-2)_",75,HH" X %XMSG
 I '$D(%MBG("DELAS")) S %SAY=" <CNTR>/E++"_(Y2-1)_",31,EE" X %XMSG S %SAY=" - lhal ++"_(Y2-1)_",48,HH" X %XMSG
 S %SAY="<PG-DW> - d`ad sc ;<PG-UP> - mcew sc; ==,"_$S(%TYPCRT["VT":"<PF11>",1:"<ESC>")_" - meiq" X %XMSGN
 Q
PG N RKV,J,DL X %XCL
 S %XX=XX0-2 W %ENG X %POSIC W %CLI W (SH+I)+$G(%MBG("OFF")) X %XCL
 F J=1:1:COLG S DL=$S(%MBG("RGS",J)="D":8,1:%MBG("D",J)) S %XX=%MBG("X",J)-DL X %POSIC D
 .W:$D(%MBG("INV",J)) %CLI
 .S RKV=$P($G(^(SH+I)),RZD,J)
 .I %MBG("X",J)["+" S %YY=%YY+1 X %POSIC S %YY=%YY-1 X %LIGHT
 .I %MBG("RGS",J)="HH" D  Q
 ..N %X1,%Y1,%X2,%Y2
 ..S %X1=%XX,%X2=%XX+DL-1,%Y1=%YY,%Y2=%Y1+STEP-1,%S=RKV S %L1WH="" D ^%L1WH K %L1WH,%S
 ..Q
 .S RKV=$E(RKV,1,DL)
 .W $S('$D(%MBG("DR",J)):$J($$W^%L1C(RKV),DL),1:$J(RKV,DL,%MBG("DR",J))) X %XCL
 Q
CLEAR ;
 N %XX,%YY,I U $P:(NOECHO:NOWRAP)
 D ^%L1RBUA
 F I=Y1:1:Y2-2 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 Q
ZAPR ;
 S %GET=" <ENTER> - `ad jqn , <.,ESC> - miiql , 1 - owzl, 0 - mcew jqn" D N^%L1GET
 S OTB=%S
 I OTB=0 Q:NPG'>1  S NPG=NPG-1 Q
 S:OTB="/"!($G(%TO)="END") OTB="."
 I OTB="",'$D(@(%REFH1_",SH-SCH+COLS)")) W *7 D ER G ZAPR
 I OTB="",$G(%MBG("GWUL"))>1,SH-SCH+COLS+1>%MBG("GWUL") W *7 D ER G ZAPR
 I OTB="",$G(%TO)="" S NPG=NPG+1,PG(NPG)=SH-SCH+COLS Q
 I OTB'="."&(OTB'=1) W *7,*7 H 1 G ZAPR
 Q
ER ;
 W *7 S %SAY=" d`iby " X %XMSGV H 2
 W *7 S %SAY="       " X %XMSGV
 Q
DEL ;
 ; I $D(%MBG("DEL")) X %MBG("DEL")
 K YOLD,SHOLD,SCHOLD
 F %II=SH:1 Q:'$D(@(%REFH1_",%II+1)"))  D
 .S MAC1=%REFH1_","_(%II+1)_")"
 .S MAC2=%REFH1_","_%II_")"
 .D ^%S1GC1
 K @(%REFH1_",%II)"),%L1DS
 I $D(%MBG("DEL")) X %MBG("DEL")
 F %I1=1:1 Q:'$D(PG(%I1))  S NPGL=%I1
 I PG(NPGL)=(%II-1),NPGL>1 K PG(NPGL)
 I %II=SH,SCH=1,SH>1 S SCHOLD=COLS-1,SHOLD=SH-2,YOLD=STEP*(COLS-1)+VGR S %TO="PGUP" Q
 I %II=SH,SCH>1 S SCHOLD=SCH-2,SHOLD=SH-2,YOLD=STEP*SCHOLD+VGR Q
 I SH>1 S SHOLD=SH-1
 I SCH>1 S SCHOLD=SCH-1
 I %YY+1>(VGR+STEP) S YOLD=%YY-STEP
 Q
INIT S:'$D(NPG) NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 S VGR0=$G(%MBG("VGR0"),1),VGR=$G(%MBG("VGR"),3)
 S Y1=VGR0,X1=%MBG("LL")-1,Y2=$G(%MBG("NGR"),24)
 S COLG=%MBG("COLG")
 S XX0=$G(%MBG("LR"),70)+5,X2=XX0+1 S:XX0>79 XX0=79
 S RSCR=Y2-VGR-2,STEP=$G(%MBG("STEP"),2)
 S COLS=RSCR-STEP\STEP,SCH=0,%YY=VGR,SH=PG(NPG)
 Q
VSV N %XX,%YY S %XX=%MBG("X",J)-DL,%YY=%YYYY X %POSIC X %XCL X:$D(%PRPL) %LIGHT
 W:$G(%NOMOD) %CLI
 W:$D(%MBGLIGHT) %LIGHT1
 I $G(%MBG("DR",J)) W $J(%S,DL,%MBG("DR",J)) G EV
 I $G(%MBG("RGS",J))="H" W $$HBR^%L1FRM($$W^%L1C(%S),DL) G EV
 W $$W^%L1C($J(%S,DL))
EV X %XCL
 Q
 
 

%L1MBG0
%L1MBG ; INPUT FROM DISPLAY [ 15.01.06 19:47 ] [ 16.12.03 10:21 ] [ 14.12.03 16:44 ]
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 I '$D(%POSIC) D ^%L1C
 K %BE,%LS,%S,%L1DS,OLDDAT,YOLD,SHOLD,SCHOLD
 N COLG,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPG,NPGL,OTB,PG,%PRNEW,RKV,RSCR,RZD,%REFH1
 N SHOLD,SCHOLD,STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2 ;SH,SCH
 N %HBRY S %HBRY=""
 I $D(%MBG("PAR"))>9 D ^%L1MBG1
 S NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
BEG D INIT
 S %REFH1=$G(%MBG("REF"),"^MBG($P")
 D PS
 Q:$D(%L1MBG)
L0 S:$D(YOLD) %YY=YOLD S:$D(SHOLD) SH=SHOLD S:$D(SCHOLD) SCH=SCHOLD
LOOP ; -------------------------------------- NEW LINE
 K YOLD,SHOLD,SCHOLD,%MBG("TO") X %XCL
 K %INV S SH=SH+1,SCH=SCH+1
 I $D(%MBG("GWUL")),SH>%MBG("GWUL") W *7 G ZP ;RSM
 S %YY=%YY+STEP,$Y=%YY,%YYYY=%YY
 K %MBG("NEW"),%PRPL
 F JJ=1:1:COLG S %MBG("O",JJ)=""
 K JJ
ML ;
 F JJ=1:1 Q:'$D(%MBG("OU",JJ))
 S %FIRST=JJ K JJ
 S J=0
 I %YY>(STEP*COLS+VGR)!(%YY>23) S:%YY>23 %YY=23 G ZP
 S %XX=XX0-2 W %ENG X %POSIC W %CLI W SH+$G(%MBG("OFF")) X %XCL ; NUMBER OF SEQUENCE
 G INC
 ;------------------------------------------- NEW COLUMN
LGR U $P:(NOECHO:NOWRAP) K %TO,%FLL,%S,%L1DS W %ENG S %TO=""
 S %MBG("O",J)=$P($G(@(%REFH1_",SH)")),RZD,J)
 ;I $G(%MBG("H",J))'?.P S %SAY=$G(%MBG("H",J)) X %XMSGN
 S %SAY=$G(%MBG("H",J)) X %XMSGN
 S RKV=$P($G(@(%REFH1_",SH)")),RZD,J)
 I RKV'?.P S %MBG("O",J)=RKV ;**************
 K RKV ;**************
 I $D(%MBG("DO",J)) X %MBG("DO",J) ;**************
 S %XX=%MBG("X",J) S %SAY=%MBG("Z",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH,I" X %XMSG S %XX=%MBG("X",J)
 S %YY=%YYYY,$Y=%YY I %XX["+" S %YY=%YY+1,$Y=$Y+1,%PRPL="" X %LIGHT
 X %POSIC
 S %LS=%MBG("D",J) S %S=%MBG("O",J) S %INV=""
 S CIST=$G(%MBG("S",J)) K:CIST="" CIST S %PRNEW=0
 I %MBG("RGS",J)="E" D  I %S'["==",$D(%MBG("DR",J)),$L($P(%S,"."))>(%MBG("D",J)-%MBG("DR",J)-1) D ER G LGR
 .S %XX=%XX-%LS X %POSIC S $X=%XX
 .S %FL="" K %BE D ^%ZMSL K %INV,%FL Q:%S["=="
 .I $D(%MBG("DR",J)),%S'["%" S %S=$J(%S,%MBG("DR",J)+1,%MBG("DR",J))
 I %MBG("RGS",J)="H" S $X=%XX-1 D ^%L1ZMS
 I %MBG("RGS",J)="HH" D
 .N %X1,%Y1,%X2,%Y2
 .S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+STEP-1,%LS=%LS*STEP D ^%L1WH
 .S %L1WH="" K %INV D ^%L1WH K %L1WH
 .Q
 I %MBG("RGS",J)="D" S %XX=%XX-8 S $X=%XX S %L1DS=$TR(%S,".","") D ^%L1DAT S %S=%L1DAT1 ; LGR --> SET
 I %MBG("RGS",J)="T" S %XX=%XX-8 S $X=%XX S %L1TS=$TR(%S,".","") D ^%L1TIME S %S=%L1TIME1 ; LGR --> SET
 S DL=$S(%MBG("RGS",J)="D":8,1:%MBG("D",J)) ;***
 W %ENG S %XX=%MBG("X",J)-DL
 I $G(%TO)="DEL",'$D(%MBG("DELAS")) D DEL G:%TO'="PGUP" BEG G PGUP
 I %S["==",J=%FIRST,$O(^(SH))="" G ZP ;RSM
 S %X000=%XX I %MBG("RGS",J)'="HH" X %POSIC X %XCL X:$D(%PRPL) %LIGHT W $J(%S,DL)
 X %XCL X:$D(%PRPL) %LIGHT S %SAY=%MBG("Z",J)_"++"_(VGR0+(%MBG("X",J)["+"))_","_%MBG("X",J)_",HH" X %XMSG S %XX=%X000,$X=%XX K %X000
 S %MOLD=$P($G(@(%REFH1_",SH)")),RZD,J) S $P(@(%REFH1_",SH)"),RZD,J)=%S
 I %MBG("O",J)'=%S!$D(%MBG("NEW",J))!(%MBG("O",J)="?")!(%MBG("O",J)="*") S %PRNEW=1
 S %MBG("O",J)=%S S %YY=%YYYY,$Y=%YY
IBUD ;
 I %PRNEW,$D(%MBG("C",J)),%MBG("C",J)'?.P S JOLD=J D  D:$G(%MBG("TO",J))="PL" PL G:$G(%MBG("TO",J))'="P" SET D PS G SET ;G BEG
 .I %OPT=1 D GET^%VIDEO("OLD",1,1,78,VGR0-1,2)
 .S JOLD=J,YOLD=%YY,SHOLD=SH,SCHOLD=SCH
 .N %FIRST X %MBG("C",J)
 .I %OPT=1 D PUT^%VIDEO("OLD",1,1,78,VGR0-1,2)
 .S J=JOLD,%YY=YOLD,SH=SHOLD,SCH=SCHOLD
 .Q
SET ;
NAZAD S:$G(%TO)="END"&(J>%FIRST) %TO="UP"
 I $D(%TO),%TO="UP",J>%FIRST S J=J-1 G:'$D(%MBG("OU",J)) LGR G NAZAD
 I $G(%TO)'="",'$D(%MBG("NEW")) G:J=%FIRST UP G LGR
 ; -----------------------------------------    END OF INPUT COLUMN
UP ;
 I $G(%TO)="UP" G:SCH=1 ZP S %YY=%YY-(2*STEP),SH=SH-2,SCH=SCH-2 D CLOU G LOOP
 I $G(%TO)="DW" D CLOU G LOOP
 I $G(%TO)="END" G ZP ;G END
PGUP ;I %TO="PGUP" G:NPG'>1 ML:'$D(%L1MBG),BEG:$D(%L1MBG) S NPG=NPG-1 G BEG
 ;I %TO="PGDW" G:'$D(@(%REFH1_",SH-SCH+COLS+1)")) BEG:$D(%L1MBG),ML:'$D(%L1MBG) S NPG=NPG+1,PG(NPG)=SH-SCH+COLS G BEG
 I $G(%TO)="PGUP" G:NPG'>1 ML:'$D(%L1MBG),END S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
 I $G(%TO)="PGDW" G:'$D(@(%REFH1_",SH-SCH+COLS+1)")) ML:'$D(%L1MBG),END S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
INC S J=J+1
 I J>COLG D CLOU G LOOP
 I $D(%MBG("OU",J)) G INC
 G LGR
CLOU F JJ=1:1:COLG I $G(%MBG("OU",JJ))'="IN" K %MBG("OU",JJ)
 Q
ZP D ZAPR G RSM:OTB=".",BEG
 ;
PL S GG=$G(@(%REFH1_",SH)")),I=0 ;
 S Y1=VGR0,X1=%MBG("LL")-1,Y2=$G(%MBG("NGR"),24)
 S XX0=$G(%MBG("LR"),70)+5,X2=XX0+1 S:XX0>79 XX0=79
 S %XX=X1 X %POSIC W $J("",X2-X1-1)
 D PG Q  ;G INC ;L0
RSM ;
 I $D(%MBG("RSM")) D @%MBG("RSM")
END Q
PS N SH,SCH,%YY,J
 D CLEAR S %SAY=NPG_"++"_(VGR0-1)_","_(X1+2)_",EE"
 X %XMSG S %SAY=" cenr++"_(VGR0-1)_","_(X1+8)_",HH" X %XMSG
 S SCH=0,SH=PG(NPG),%OFF=0
 F JJ=1:1:COLG D
 .I %MBG("X",JJ)["+" S %OFF=1 X %LIGHT
 .S %SAY=%MBG("Z",JJ)_"++"_(VGR0+%OFF)_","_%MBG("X",JJ)_",HH," X %XMSG
 ;.S %SAY=$E(%MBG("Z",JJ),$L(%MBG("Z",JJ)))_"++"_(VGR0+%OFF)_","_%MBG("X",JJ)_",HH,I" X %XMSG
 S %YY=VGR D P S %YY=VGR
 X %XCL Q
P N I,%S,%L1DS,J ;
 F I=1:1:COLS Q:'$D(@(%REFH1_",SH+I)"))  S %YY=%YY+STEP D PG
 ;S %SAY="PG-DW++"_(Y2-2)_",8,EE,I" X %XMSG S %SAY=" - d`ad cenr++"_(Y2-2)_",28,HH" X %XMSG
 ;S %SAY="PG-UP++"_(Y2-2)_",35,EE,I" X %XMSG S %SAY=" - mcew cenr++"_(Y2-2)_",53,HH" X %XMSG
 ;S %SAY="==,"_$S(%OPT=65:"<PF11>",1:"<ESC>")_"++"_(Y2-2)_",57,EE,I" X %XMSG S %SAY=" - meiq++"_(Y2-2)_",75,HH" X %XMSG
 I '$D(%MBG("DELAS")) S %SAY=" <CNTR>/E++"_(Y2-1)_",31,EE" X %XMSG S %SAY=" - lhal ++"_(Y2-1)_",48,HH" X %XMSG
 S %SAY="<PG-DW> - d`ad sc ;<PG-UP> - mcew sc; ==,"_$S(%OPT=65:"<PF11>",1:"<ESC>")_" - meiq" X %XMSGN
 Q
PG N RKV,J,DL X %XCL
 S %XX=XX0-2 W %ENG X %POSIC W %CLI W (SH+I)+$G(%MBG("OFF")) X %XCL
 F J=1:1:COLG S DL=$S(%MBG("RGS",J)="D":8,1:%MBG("D",J)) S %XX=%MBG("X",J)-DL X %POSIC D
 .W:$D(%MBG("INV",J)) %CLI
 .S RKV=$P($G(^(SH+I)),RZD,J)
 .I %MBG("X",J)["+" S %YY=%YY+1 X %POSIC S %YY=%YY-1 X %LIGHT
 .I %MBG("RGS",J)="HH" D  Q
 ..N %X1,%Y1,%X2,%Y2
 ..S %X1=%XX,%X2=%XX+DL-1,%Y1=%YY,%Y2=%Y1+STEP-1,%S=RKV S %L1WH="" D ^%L1WH K %L1WH,%S
 ..Q
 .S RKV=$E(RKV,1,DL)
 .W $S('$D(%MBG("DR",J)):$J(RKV,DL),1:$J(RKV,DL,%MBG("DR",J))) X %XCL
 Q
CLEAR ;
 N %XX,%YY,I
 D ^%L1RBUA
 F I=Y1:1:Y2-2 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 Q
ZAPR ;
 S %GET=" <ENTER> - `ad jqn , <.,ESC> - miiql , 1 - owzl, 0 - mcew jqn" D N^%L1GET
 S OTB=%S
 I OTB=0 Q:NPG'>1  S NPG=NPG-1 Q
 S:OTB="/"!($G(%TO)="END") OTB="."
 I OTB="",'$D(@(%REFH1_",SH-SCH+COLS)")) W *7 D ER G ZAPR
 I OTB="",$G(%MBG("GWUL"))>1,SH-SCH+COLS+1>%MBG("GWUL") W *7 D ER G ZAPR
 I OTB="",$G(%TO)="" S NPG=NPG+1,PG(NPG)=SH-SCH+COLS Q
 I OTB'="."&(OTB'=1) W *7,*7 H 1 G ZAPR
 Q
ER ;
 W *7 S %SAY=" d`iby " X %XMSGV H 2
 W *7 S %SAY="       " X %XMSGV
 Q
DEL ;
 ; I $D(%MBG("DEL")) X %MBG("DEL")
 K YOLD,SHOLD,SCHOLD
 F %II=SH:1 Q:'$D(@(%REFH1_",%II+1)"))  D
 .S MAC1=%REFH1_","_(%II+1)_")"
 .S MAC2=%REFH1_","_%II_")"
 .D ^%S1GC1
 K @(%REFH1_",%II)"),%L1DS
 I $D(%MBG("DEL")) X %MBG("DEL")
 F %I1=1:1 Q:'$D(PG(%I1))  S NPGL=%I1
 I PG(NPGL)=(%II-1),NPGL>1 K PG(NPGL)
 I %II=SH,SCH=1,SH>1 S SCHOLD=COLS-1,SHOLD=SH-2,YOLD=STEP*(COLS-1)+VGR S %TO="PGUP" Q
 I %II=SH,SCH>1 S SCHOLD=SCH-2,SHOLD=SH-2,YOLD=STEP*SCHOLD+VGR Q
 I SH>1 S SHOLD=SH-1
 I SCH>1 S SCHOLD=SCH-1
 I %YY+1>(VGR+STEP) S YOLD=%YY-STEP
 Q
INIT S:'$D(NPG) NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 S VGR0=$G(%MBG("VGR0"),1),VGR=$G(%MBG("VGR"),3)
 S Y1=VGR0,X1=%MBG("LL")-1,Y2=$G(%MBG("NGR"),24)
 S COLG=%MBG("COLG")
 S XX0=$G(%MBG("LR"),70)+5,X2=XX0+1 S:XX0>79 XX0=79
 S RSCR=Y2-VGR-2,STEP=$G(%MBG("STEP"),2)
 S COLS=RSCR-STEP\STEP,SCH=0,%YY=VGR,SH=PG(NPG)
 Q

%L1MBG1
%L1MBG1 ; INIT07/14/91 12:05 PM ] [ 06.09.05 11:12 AM ] [ 18.08.04 11:17 AM ] [ 02.07.04  2:06 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%MBG)
 N J,ZAPR
 S %MBG("LL")=78,%MBG("LR")=0
 F J=1:1 Q:'$D(%MBG("PAR",J))  S ZAPR=$P(%MBG("PAR",J),"#") D
 .S %MBG("F",$P(ZAPR," "))=J
 .S %MBG("Z",J)=$P(ZAPR,";",2)
 .S %MBG("X",J)=$P(ZAPR,";",3)
 .S %MBG("INV",J)=$P($P(ZAPR,";",3),",",3)
 .I %MBG("INV",J)'="I" K %MBG("INV",J)
 .I %MBG("X",J)>%MBG("LR") S %MBG("LR")=%MBG("X",J)
 .I %MBG("X",J)<%MBG("LL") S %MBG("LL")=%MBG("X",J)
 .S %MBG("D",J)=$P($P(ZAPR,";",4),",")
 .S %MBG("DR",J)=$P($P(ZAPR,";",4),",",2)
 .I %MBG("DR",J)="" K %MBG("DR",J)
 .S %MAXD=$S($L(%MBG("Z",J))>%MBG("D",J):$L(%MBG("Z",J)),1:%MBG("D",J))
 .I %MBG("X",J)-%MAXD<%MBG("LL") S %MBG("LL")=%MBG("X",J)-%MAXD
 .S %MBG("RGS",J)=$P(ZAPR,";",5)
 .S %MBG("S",J)=$P(ZAPR,";",6) I %MBG("S",J)="" K %MBG("S",J)
 .S %MBG("H",J)=$P(%MBG("PAR",J),"#",4) I %MBG("H",J)="" K %MBG("H",J)
 .S %MBG("O",J)=$P(%MBG("PAR",J),"#",2)
 .S %MBG("C",J)=$P(%MBG("PAR",J),"#",3) I %MBG("C",J)="" K %MBG("C",J)
 .I $E(%MBG("O",J))="""" S %MBG("O",J)=$P(%MBG("O",J),"""",2),%MBG("OU",J)="IN"
 .I $E(%MBG("O",J))="@" S %MBG("DO",J)=$E(%MBG("O",J),2,255) K %MBG("O",J)
 S %MBG("COLG")=J-1
 S:%MBG("LR")>78 %MBG("LR")=78
 S:%MBG("LL")<0 %MBG("LL")=0
 K %MBG("PAR")
 Q

%L1MBG10
%L1MBG1 ; INIT07/14/91 12:05 PM ] [ 15.01.06 19:47 ] [ 07/14/92  6:04 PM ]
 N J,ZAPR
 S %MBG("LL")=78,%MBG("LR")=0
 F J=1:1 Q:'$D(%MBG("PAR",J))  S ZAPR=$P(%MBG("PAR",J),"#") D
 .S %MBG("F",$P(ZAPR," "))=J
 .S %MBG("Z",J)=$P(ZAPR,";",2)
 .S %MBG("X",J)=$P(ZAPR,";",3)
 .S %MBG("INV",J)=$P($P(ZAPR,";",3),",",3)
 .I %MBG("INV",J)'="I" K %MBG("INV",J)
 .I %MBG("X",J)>%MBG("LR") S %MBG("LR")=%MBG("X",J)
 .I %MBG("X",J)<%MBG("LL") S %MBG("LL")=%MBG("X",J)
 .S %MBG("D",J)=$P($P(ZAPR,";",4),",")
 .S %MBG("DR",J)=$P($P(ZAPR,";",4),",",2)
 .I %MBG("DR",J)="" K %MBG("DR",J)
 .S %MAXD=$S($L(%MBG("Z",J))>%MBG("D",J):$L(%MBG("Z",J)),1:%MBG("D",J))
 .I %MBG("X",J)-%MAXD<%MBG("LL") S %MBG("LL")=%MBG("X",J)-%MAXD
 .S %MBG("RGS",J)=$P(ZAPR,";",5)
 .S %MBG("S",J)=$P(ZAPR,";",6) I %MBG("S",J)="" K %MBG("S",J)
 .S %MBG("H",J)=$P(%MBG("PAR",J),"#",4) I %MBG("H",J)="" K %MBG("H",J)
 .S %MBG("O",J)=$P(%MBG("PAR",J),"#",2)
 .S %MBG("C",J)=$P(%MBG("PAR",J),"#",3) I %MBG("C",J)="" K %MBG("C",J)
 .I $E(%MBG("O",J))="""" S %MBG("O",J)=$P(%MBG("O",J),"""",2),%MBG("OU",J)="IN"
 .I $E(%MBG("O",J))="@" S %MBG("DO",J)=$E(%MBG("O",J),2,255) K %MBG("O",J)
 S %MBG("COLG")=J-1
 S:%MBG("LR")>78 %MBG("LR")=78
 S:%MBG("LL")<0 %MBG("LL")=0
 K %MBG("PAR")
 Q

%L1MBS
%L1MBS ; DATA INPUT               [ 15.03.19 08:19 ] [ 22.04.07 11:39 ] [ 09.11.01  9:59 AM ] 
 ;;N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%MBS,LZ,LB,LR,LT,LX,LL,COLS,%L1MBS,%S,%TO) D ^%L1C
INP ; ------------------- INPUT
 N CIST,I,OLD,IOLDD,Y1,Y2,X1,X2
 N %FIRST,%ECHO,%HBRY,%XX,%XXOLD,%YY,%LS,%MOLD,%BE,%L1DS,%L1TS
 N %INV,%L1DAT,%L1DAT1,%L1TIME,%L1TIME1
 D PC Q:$D(%L1MBS)
 I '$D(%FIRST) S %FIRST=1
 S I=1 K %ECHO S %HBRY=""
 I $D(%MBS("OU",I)) G INC
 ;;F I=1:1 Q:'$D(%MBS("OU",I))
LOOP I $D(%MBS("DO",I)) X %MBS("DO",I) ;**************
 S %XX=0,%YY=24 X %POSIC W %chists
 I $D(%MBS("H",I)) S %SAY=%MBS("H",I)_"++24,78,HH,I" X %XMSG ;**************
 U $P:(NOECHO:NOWRAP) K %FLL W %ENG
 S %YY=%MBS("CY",I),%XX=%MBS("CX",I) S:%ENGLISH&(%XX>40) %XX=80-%XX X %POSIC S $Y=%YY
 S %LS=%MBS("D",I,1) K CIST S (%MOLD,%S)=%MBS("O",I) S %INV=""
 S CIST=%MBS("S",I) K:CIST="" CIST
 I %ENGLISH,%MBS("RGS",I)="H" S %MBS("RGS",I)="E"
 I %MBS("RGS",I)="B" S %LS=1,%HBRY="",CIST="kl"
LE S %XXOLD=%XX I %MBS("RGS",I)="E"!(%MBS("RGS",I)="") S %XX=$S(%ENGLISH:%XX+2,1:%XX-%LS) X %POSIC S ($X,%XXOLD)=%XX S %FL="" D ^%ZMSL
 I %MBS("RGS",I)="H"!(%MBS("RGS",I)="B") S %XX=%XX-1,$X=%XX,%XXOLD=%MBS("CX",I)-%MBS("D",I,1) D ^%L1ZMS
 I %MBS("RGS",I)="D" S %XX=$S(%ENGLISH:%XX+2,1:%XX-8),($X,%XXOLD)=%XX S %L1DS=$TR(%S,".","") D ^%L1DAT S %S=$G(%L1DAT1)
 I %MBS("RGS",I)="T" S %XX=$S(%ENGLISH:%XX+2,1:%XX-8),($X,%XXOLD)=%XX S %L1TS=%S D ^%L1TIME S %S=$G(%L1TIME1)
 W %ENG S %XX=%XXOLD X %POSIC X %XCL
 W $S(%ENGLISH:%S_$J("",%MBS("D",I,1)-$L(%S)),1:$S($D(%MBS("DR",I)):$J(%S,%MBS("D",I,1),%MBS("DR",I)),1:$J($$WH(%S,%MBS("RGS",I)),%MBS("D",I,1))))
M I %MBS("O",I)'=%S!$D(%MBS("NEW",I))!($G(%TO)'="") S %MBS("O",I)=%S I $G(%MBS("C",I))'="" D
 .S IOLD=I,IOLDD=I
 .X %MBS("C",I)
 .D:%MBS("O",IOLDD)'=%MOLD!($G(%MBS("TO",IOLDD))="PC") PC S I=IOLD K IOLD,%MOLD,IOLDD
NAZAD S:$G(%TO)="END" %TO="UP"
 I $D(%TO),%TO="UP",I>%FIRST S I=I-1 G:'$D(%MBS("OU",I)) LOOP G NAZAD
 I $D(%TO),%TO="UP",I=1 G END
 I $D(%TO),%TO="PGUP"!(%TO="PGDW") G END
INC S I=I+1 G:$D(%MBS("OU",I)) INC
 I I>COLS G END
 G LOOP
 Q
PC ;
 U $P:(NOECHO:NOWRAP)
 S Y1=LT+1,X1=LL-1,Y2=LB,X2=LR
 S %L1RBCL="" D ^%L1RBUA
 F I=1:1:COLS W %ENG D
 .S %YY=%MBS("CY",I),%XX=%MBS("CX",I) S:%ENGLISH %XX=80-%XX-LZ X %POSIC
 .I %ENGLISH W %ENG W %MBS("Z",I),$J("",LZ-$L(%MBS("Z",I))),":" S %XX=%XX+LZ+2 X %POSIC
 .I '%ENGLISH W %HBR W ":",$$W^%L1C($J(%MBS("Z",I),LZ)) S %XX=%XX-%MBS("D",I,1) X %POSIC
 .S:'$D(%MBS("O",I)) %MBS("O",I)=""
 .K %MBS("BAT",I) I $D(%MBS("DO",I)) X %MBS("DO",I)
 .I '%ENGLISH W $S($D(%MBS("DR",I)):$J(%MBS("O",I),%MBS("D",I,1),%MBS("DR",I)),1:$J($$WH(%MBS("O",I),%MBS("RGS",I)),%MBS("D",I,1)))
 .E  W %MBS("O",I),$J("",%MBS("D",I,1)-$L(%MBS("O",I)))
 .I $D(%MBS("BAT",I)) S %SAY=$E(%MBS("BAT",I),$L(%MBS("BAT",I))-%XX+3+X1,$L(%MBS("BAT",I)))_"++"_%YY_","_(%XX-2)_",HH" X %XMSG K %MBS("BAT",I)
 Q
WH(%S,%PR) ;
 I %ENGLISH Q %S
 Q $$W^%L1C($G(%S))
 ;-
END Q
 

%L1MBS1
%L1MBS1 ; INIT07/14/91 12:05 PM ]        [ 15.11.01  2:05 PM ] [ 07.11.01  4:42 PM ] [ 24.10.01 12:34 PM ]
 N ZAPR,I
 S LZ=0,LT=24,LB=0,LL=80,LR=0,LX=0
 F I=1:1 Q:'$D(%MBS("PAR",I))  S ZAPR=%MBS("PAR",I) D
 .S %MBS("Z",I)=$P(ZAPR,";",2) I $L(%MBS("Z",I))>LZ S LZ=$L(%MBS("Z",I))
 .S %MBS("CY",I)=$P($P(ZAPR,";",3),","),%MBS("CX",I)=$P($P(ZAPR,";",3),",",2)
 .S %MBS("INV",I)=$P($P(ZAPR,";",3),",",3) I %MBS("INV",I)'="I" K %MBS("INV",I)
 .I %MBS("CY",I)>LB S LB=%MBS("CY",I)
 .I %MBS("CY",I)<LT S LT=%MBS("CY",I)
 .I %MBS("CX",I)>LX S LX=%MBS("CX",I)
 .S %MBS("D",I,1)=$P($P(ZAPR,";",4),",")
 .S %MBS("DR",I)=$P($P(ZAPR,";",4),",",2) I +%MBS("DR",I)=0 K %MBS("DR",I)
 .I %MBS("CX",I)-%MBS("D",I,1)<LL S LL=%MBS("CX",I)-%MBS("D",I,1)
 .S %MBS("DO",I)=$P(%MBS("PAR",I),"#",2) I %MBS("DO",I)?.P K %MBS("DO",I)
 .S %MBS("C",I)=$P(%MBS("PAR",I),"#",3) I %MBS("C",I)?.P K %MBS("C",I)
 .S %MBS("H",I)=$P(%MBS("PAR",I),"#",4) I %MBS("H",I)="" K %MBS("H",I)
 .S %MBS("RGS",I)=$P($P(ZAPR,";",5),"#")
 .S %MBS("S",I)=$P(ZAPR,";",6)
 .I '($D(%MBS("O",I))#2) D
 ..S %MBS("O",I)=" "_$$SPA^%L1FRM($P(ZAPR,";"))
 ..I $E(%MBS("O",I),2)="<" S %MBS("C",I)=$E(%MBS("O",I),3,255) S:$E(%MBS("C",I),$L(%MBS("C",I)))=">" %MBS("OU",I)="" K %MBS("O",I) Q
 ..I $E(%MBS("O",I),2)="""" S %MBS("O",I)=$P(%MBS("O",I),"""",2),%MBS("OU",I)=""
 ..I $E(%MBS("O",I),2)="@" X $E(%MBS("O",I),3,255)
 S COLS=I-1
 S LB=LB+2 S:LB>24 LB=24
 S LT=LT-1 S:LT<0 LT=0
 S:LZ>70 LZ=70
 S LR=LX+LZ+3 S:LR>80 LR=80
 S:LL<0 LL=0
 I %ENGLISH S LL=80-LL+3,LR=80-LR+3 I LL>LR N LLL S LLL=LR,LR=LL,LL=LLL
 Q

%L1MD
%L1MD(PORTN,USERMOD,NUMBER,MDTONE,US,XON) ;  [ 01.02.04 14:06 ] [ 14.11.03 09:53 ] [ 30.06.03 10:03 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PORTN,USERMOD,NUMBER,MDTONE,%L1MDOK,US,XON,%DELAY)
 D ^%L1C S %L1MDOK=0
 D ZU W !!?20," CTRL/C - CANCEL ",!
 D ZU S PRT=%L3MYDVN N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":EXIT^%L1MD" K ^MODEM($P) S ^MODEM($P)="BEG"
 S US="U PORTN:(NOECHO:NOWRAP:NOCENABLE:PASTHRU:TERM=$C(13,10))"
 I $G(PORTN)>3 G ASK+1
ASK R !!,"I/O PORT? > ",PORTN G:PORTN="" EXIT
 I $P=PORTN!'PORTN D ZU W !!,"CANNOT SELECT YOUR OWN DEVICE.",*7 G ASK
 I '$$^%L1MDLCK(PORTN) S %GET="A PORT OF MODEM IS BUSY ! " D N^%L1GET G EXIT
 C PORTN U $P:(CENABLE:CTRAP=$C(3)) O PORTN::0 E  D ZU W *7,"..LINE IN USE..WAITING.." O PORTN W "READY"
 D HANGUP
 X US ;;I $ZB($ZA,2,1) D ZU W !,"DEVICE ",PORTN," IS AN OUTPUT ONLY DEVICE.",*7 G ASK
INIT X US D ZU W !
 S %DC=0 S %DT=0,%Y=""
P0 D CLPORT S %ST="AT&F"_$G(XON)_$C(13)
 F %J=1:1:$L(%ST) W $E(%ST,%J) D DELAY
P01 X US R *%Y1:1 E  S %DC=%DC+1 G:%DC<12 P01:%DC#4,P0 D ZU W *7,!!,"NO CARRIER" G EXIT
 G:%Y1=1 EXIT
 I %Y1'=13 S %Y=%Y_$C(%Y1) G P01
 D ZU W %Y,! S %DT=%DT+1 S ^MODEM($P,"ATZ",%DT)=%Y
 I %Y'["OK" G:%DT<12 P01:%DT#4,P0 D ZU W *7,!!,"NO CARRIER" G EXIT
 S %DT=0
 I $G(NUMBER) D DELAY G TP1
TP U $P:(CENABLE:CTRAP=$C(3)) U $P:(ECHO:WRAP) R !!,"PHONE NUMBER > ",NUMBER G:NUMBER="" EXIT W !
TP1 X US S NUMBER=$TR(NUMBER,"-","") D CLPORT
 S ST="ATD"_$G(MDTONE,"P")_"W"_NUMBER_$C(13) W ST
 H 5
 S OK=0
 F I=1:1:40 R A:1 D  Q:OK  S ^MODEM("CONN",I)=A D ZU W !,A X US
 .I $F(A,"CONN") S OK=1 Q
 .I $F(A,"BUS") S OK=2 Q
 .I $F(A,"NO CAR") S OK=3 Q
 .I $F(A,"NO DIAL") S OK=4 Q
 I OK'=1 D ZU W !,A G EXIT
 I OK=1 K ^MODEM($P) D ZU W !!,"MODEM IN USE ! "
 S %L1MDOK=OK
EXIT H 1
 Q
HANGUP ;
 D ^%L1HANG
 Q
CLPORT X US ;
 F I=1:1:%DELAY R *A:0
 I A>0 F  R *A:1 E  Q
 Q
DELAY ;
 F %JJJ=1:1:%DELAY
 Q
ZU ;
 I $P["tty" U $P:(NOECHO:NOWRAP) Q
 U ^[$$^%L1GLD]dev(1):(NOECHO:NOWRAP)
 Q

%L1MDCON
%L1MDCON(LAK) ; HIUG LE LAKUAH FROM ^P1TBLAK [ 31.01.06 20:10 ] [ 21.11.05 23:02 ] [ 04/24/2000 12:32 PM ]
 Q:$G(LAK)=""
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,LAK) D ^%L1C
 S GLD=$$^%L1GLD
 I $P($G(^LAK(LAK,1)),"\",7)'="k" S %SAY=" lexhpew mcen oi` " X %XMSGV(1) Q
 S PORTN=$$MDPORT^%L1PORT
 S XON=$$XON^%L1PORT
 S PHONE=$P($G(^[GLD]LAK(LAK,1)),"\",3)
 S US="U PORTN:(NOWRAP:NOECHO:NOCENABLE:TERM=$C(13,10))"
 ;;D ^%L1MD(PORTN,1,PHONE,"T",US,XON)
 ;;H 2 U 0 D ^%XMIT
 S TEL=PHONE D ^%L1XM
 Q

%L1MDLCK
%L1MDLCK(PORTN) ; [ 14.07.06 10:05 ] [ 17.02.04 16:41 ] [ 14.11.03 09:49 ]
 N MDLOCK,OK,A,%L1GET S OK=1 I $P["/vc" Q OK
 S MDLOCK="/var/lock/LCK.."_$zparse(PORTN,"NAME")
 I $$EXIST^%L1ZOS(MDLOCK) D  I 'OK U $P Q 0
 .C MDLOCK O MDLOCK:(REWIND:READONLY) U MDLOCK R A C MDLOCK
 .I $TR(A," ","")'=$J S OK=0
 O MDLOCK:(WRITE:NEWVERSION) U MDLOCK W $J($J,10) C MDLOCK
 S MDLOCK="/var/lock/LCK..."_$J
 I $$EXIST^%L1ZOS(MDLOCK) D  I 'OK U $P Q 0
 .C MDLOCK O MDLOCK:(REWIND:READONLY) U MDLOCK R A C MDLOCK
 .I $TR(A," ","")'=$J S OK=0
 O MDLOCK:(WRITE:NEWVERSION) U MDLOCK W $J($J,10) C MDLOCK
 Q 1
CLOSE(PORTN) ;
 N MDLOCK,OK S OK=1
 S MDLOCK="/var/lock/LCK.."_$zparse(PORTN,"NAME")
 I $$EXIST^%L1ZOS(MDLOCK) D  I OK O MDLOCK C MDLOCK:DELETE
 .C MDLOCK O MDLOCK:(REWIND:READONLY) U MDLOCK R A C MDLOCK
 .I $TR(A," ","")'=$J S OK=0
 S MDLOCK="/var/lock/LCK..."_$J
 I $$EXIST^%L1ZOS(MDLOCK) D  I OK O MDLOCK C MDLOCK:DELETE
 .C MDLOCK O MDLOCK:(REWIND:READONLY) U MDLOCK R A C MDLOCK
 .I $TR(A," ","")'=$J S OK=0
 Q

%L1MDPRG
%L1MDPRG(PORTN,UCI,PROG) ; [ 04.06.07 14:42 ] [ 13.05.07 12:15 ] [ 08.08.06 13:36 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PORTN,UCI,PROG,%L1MDPRG,%L2NALAN)
 ;; --->  %L1MDPRG("ER"),%L1MDPRG("SYS")
 K ^L1MDPRG
 S %L1MDPRG("ER")=0
 M ^L1MDPRG=%L2NALAN
 S ^L1MDPRG("PORTN")=PORTN
 S ^L1MDPRG("PROG")=PROG
 S ^L1MDPRG("UCI")=UCI
 ;
 I $D(%L2NALAN("DEV")) D  Q
 .S ^L1MDPRG("DEV")=%L2NALAN("DEV")
 .S:$E(PROG)="^" PROG=$E(PROG,2,20)
 .U PORTN W $C(13),"cmd D ^"_PROG_$C(3)_$G(UCI)_$C(3,27,95)
 .S ^L1MDPRG("OU")="cmd D ^"_PROG_"(3)"_$G(UCI)_"(3,27,95)"
 .W $C(13)
 ;
 S SYS=0
 F RD=1:1:20 D  Q:SYS
 .H 1 W:RD>10 $C(13) D READ
 .S SYS=0
 .M ^L1MDPRG("INP")=INP
 .S N="" F  S N=$O(INP(N)) Q:N=""  D  Q:SYS
 ..I INP(N)["LOGON"!(INP(N)["UCI") S SYS=1 Q  ;--------- MSM
 ..I INP(N)["login" S SYS=2 Q  ;---------- LINUX
 ;
 I 'SYS S %L1MDPRG("ER")=1 Q
 S %L1MDPRG("SYS")=SYS
 S ^L1MDPRG("SYS")=SYS
 ;
 I SYS=1 U PORTN W $C(13) H 1 W UCI_":"_PROG_":180",$C(13) Q
 ;
 ;  ---------------- LINUX ------------------
 ;
 I SYS=2 D
 .H 1 U PORTN W "root",$C(10,13) H 1
 .D READ
 .H 1 U PORTN W "17101957",$C(10,13) H 1
 .D READ
 .H 1 D READ
 .S CMD=$S(UCI="MLY":"mly",1:"mumps")_":"_PROG
 .H 1 U PORTN W "mumps -r SERVMD """_CMD_"""",$C(10,13) H 1
 Q
READ N I,J K INP U PORTN S J=1 F I=1:1:1000 R *A:0 D
 .I A=10!(A=13)!(A=27) S J=J+1 Q
 .I A>0 S INP(J)=$G(INP(J))_$C(A)
 Q

%L1MENU1
%L1MENU1 ; MENU GRAFI  [ 30.06.03 16:26 ] [ 15.06.00 12:33 PM ] [ 09/25/2000 10:53 AM ]
  ; INPUT  : MAC         - LOKAL NAME WITH MENU    @MAC@(0) - SHAPKA MENU
  ;         [%L1M1("VRT")]       - SMESHENIE OT BERXHEGO KRAIA  { 2 }
  ;         [%L1M1("DLST")]      - KOL-VO V STROKE              { 4 }
  ;         [%L1M1("KOL")]       - KOL-VO PUNKTOB MENU          { %L1M1("DLST")*3 }
  ;         [%L1M1("CEVA","F")]  - COLOR OF FON                 { %CL0 }
  ;         [%L1M1("CEVA","L")]  - COLOR OF LINIY               { %CV("WF") }
  ;         [%L1M1("CEVA","IN")] - COLOR IN KBADTAT             { %CV("WF")_%CV("BB") }
  ;         [%L1M1("CEVA","5")]  - COLOR IN TEKUSHI KBADTAT     { %CV("RF")_%CV("WB") }
  ;         [%L1M1("CEVA","K")]  - COLOR OF KBADRATA            { %CV("WF")_%CV("YB") }
  ;         [%L1M1("CEVA","N")]  - COLOR OF NUMBER              { %CV("RF")_%CV("GB") }
  ;         [%L1M1("CEVA","Z")]  - COLOR OF ZAGALOVKA           { %CV("GF")_%CV("WB") }
  ;          I '$D(%L1M1("CEVA",9)) X %chista
  ; OUTPUT : %L1M1("MIS")  - # PUNKTA MENU,  %I=%L1M1("MIS")+1
  ;          %L1M1("NAM")  - NAZVANIE PUNKTA MENU
  S %L1M1("CEVA",8)=0
N Q:$D(@MAC)<10
  N (%HBR,%ENG,%UPRCOD,%chista,%chists,%POSIC,%POSIC1,%OPT,%UPRCOD,%XCL,%XMSGV,%XMSG,%XMSGN,%CL0,%CLI,%CV,%CVET,%TYPCRT,%L1M1,MAC,@MAC,%I) ; RAZD)
  D ^%L1C K ^VRM2($J) W %HBR
INIT ;
  S MENU(90)=$S(%XMSG(0)>1:"EXIT",1:"d`ivi")
  S %L1M1("MIS")=0
  S %L1M1("VRT")=$G(%L1M1("VRT"),2) I %L1M1("VRT")<1 S %L1M1("VRT")=1
  S %L1M1("DLST")=$S('$D(%L1M1("DLST")):4,%L1M1("DLST")>7:8,%L1M1("DLST")>5:6,1:4)
  S %L1M1("KOL")=$G(%L1M1("KOL"),$ZP(@MAC@(""))) I %L1M1("KOL")>(%L1M1("DLST")*3) S %L1M1("KOL")=%L1M1("DLST")*3
  I %L1M1("KOL")>$ZP(@MAC@("")) S %L1M1("KOL")=$ZP(@MAC@(""))
  I %L1M1("VRT")+3+(%L1M1("KOL")-1+%L1M1("DLST")\%L1M1("DLST")*6)>23 S %L1M1("VRT")=20-(%L1M1("KOL")-1+%L1M1("DLST")\%L1M1("DLST")*6)
  S %LL=$S(%L1M1("DLST")=8:7,%L1M1("DLST")=6:9,1:15)
  S (MENU(0),%L1M1("MENU"))=$G(@MAC@(0),"")
  S I=%L1M1("CEVA",8)
  F  S I=$O(@MAC@(I)) Q:I>(%L1M1("KOL")+%L1M1("CEVA",8))!(I="")  D
  .;;S MENU(I-%L1M1("CEVA",8))=$S(%XMSG(0)'>1:$E(@MAC@(I),$L(@MAC@(I))-%LL+1,$L(@MAC@(I))),1:$E(@MAC@(I),1,%LL))
  .S MENU(I-%L1M1("CEVA",8))=@MAC@(I)
  S %L1M1("KOL")=$ZP(MENU(25))
  S %L1M1("CEVA",0)=$G(%L1M1("CEVA","F"),%CL0)
  S %L1M1("CEVA",1)=$G(%L1M1("CEVA","L"),%CV("WF")_%CV("BB"))
  S %L1M1("CEVA",2)=$G(%L1M1("CEVA","K"),%CV("WF")_%CV("YB"))
  S %L1M1("CEVA",3)=$G(%L1M1("CEVA","IN"),%CV("RF")_%CV("CB"))
  S %L1M1("CEVA",4)=%L1M1("CEVA",2)
  S %L1M1("CEVA",5)=$G(%L1M1("CEVA",5),%CV("RF")_%CV("WB"))
  S %L1M1("CEVA",6)=$G(%L1M1("CEVA","N"),$C(27,91)_"30;47m")
  S %L1M1("CEVA",7)=$G(%L1M1("CEVA","Z"),%CLI)
  I %TYPCRT["VT" F %I=0:1:7 S %L1M1("CEVA",%I)=""
  S V1=$C(179),KR=$C(197),UL=$C(218),UP=$C(191),V21=$C(209),V11=$C(193)
  S V12=$C(207),G1=$C(196),VV=$C(194),(%L1M1("RAZD"),RAZD)=$C(186)
  I %OPT=65 D
  .S V1=$C(124),KR=$C(110),UL=$C(108),UP=$C(107),V21=$C(119),V11=$C(118)
  .S V12=$C(118),G1=$C(113),VV=$C(119),(%L1M1("RAZD"),RAZD)=$C(124)
  D ^%L1MENUF G MI
T I $ZP(@MAC@(""))>13 D ^%L2MENU Q
  K @MAC@(1)
  S %L1M1("CEVA",8)=1 G N
MAIN ;
  D ^%L1MSGBR
  W *27,7,$C(27,91,63,50,53,108)
  W *27,7
  U $P:(NOECHO:NOWRAP) ; F  R *R:0 Q:R=-1
  R *%KOD S SYM=$C(%KOD) W *27,8
  I SYM'?1N K SYSY
  I SYM="^"!(%KOD=13) G END
  S ZB=$ZB R *R1:%WAIT G:R1=-1&(%TYPCRT["PC") ESC
  I R1>0 S ZB=$S(%KOD=0:0_R1,1:R1)
  R *R1:%WAIT I R1>0 S ZB=ZB_R1
  I $D(%UPRCOD(ZB)),"ESC,VVERX,VNIZ,PRAVO,LEVO"[%UPRCOD(ZB) G @%UPRCOD(ZB)
  I SYM?1N S SYSY=$G(SYSY)_SYM G:SYSY>%L1M1("KOL") MA S %L1M1("MIS")=SYSY D  D WR G POZIC
  .S LIN=%L1M1("VRT")+2+(SYSY-1\%L1M1("DLST")+1*6),%COL=SYSY#%L1M1("DLST") I SYSY=0 S LIN=LIN-6,%COL=1
  .S:'$G(%COL) %COL=%L1M1("DLST") S:%XMSG(0)'>1 %COL=$L(^VRM2($J,LIN),RAZD)-1\2-%COL+1 S %COL=%COL*2
  .I $L(SYSY)=2!(SYSY_0>%L1M1("KOL"))!(SYSY=0) K SYSY
MA W *7 K SYSY G MAIN
WR ;
  W *27,7 W:%CVET %L1M1("CEVA",3) W %L1M1("NAM") W %CL0 W *27,8
  Q
WRIN ;
  W *27,7 W *27,"[7m" W:%CVET %L1M1("CEVA",5)
  W %L1M1("NAM") W *27,"[0m" W *27,8
  Q
SET ;
  S %STR=$G(^VRM2($J,LIN)) S %L1M1("NAM")=$P(%STR,RAZD,%COL)
  Q
POZIC ;
  D SET
  S TUR=1 F I=1:1:%COL-1 S TUR=$F(%STR,RAZD,TUR)
  W *27,"["_LIN_";"_TUR_"H" D WRIN
  ;;N LIN1 S LIN1=LIN N LIN S LIN=LIN1+1 D SET W *27,"["_LIN_";"_TUR_"H" D WRIN
  Q:$G(%L1M1("Q"))="Q"  G MAIN
  Q
MISP ;
  I %L1M1("MIS")>%L1M1("KOL") W *7 G MAIN
  I %L1M1("MIS")=0 S LIN=%L1M1("VRT")+2,%COL=2 D WR G POZIC
  D WR
MI S:$G(%L1M1("FL"))="PR" %L1M1("MIS")=$S(%XMSG(0)'>1:%L1M1("MIS")-1,1:%L1M1("MIS")+1)
  S:$G(%L1M1("FL"))="LE" %L1M1("MIS")=$S(%XMSG(0)'>1:%L1M1("MIS")+1,1:%L1M1("MIS")-1)
  K %L1M1("FL") I %L1M1("MIS")=0 S LIN=%L1M1("VRT")+2,%COL=2 G POZIC
  S LIN=%L1M1("VRT")+2+(%L1M1("MIS")-1\%L1M1("DLST")+1*6),%COL=%L1M1("MIS")#%L1M1("DLST")
  S:'%COL %COL=%L1M1("DLST") S:%XMSG(0)'>1 %COL=$L(^VRM2($J,LIN),RAZD)-1\2-%COL+1 S %COL=%COL*2
  G POZIC
VVERX ;
  I %L1M1("MIS")=0 W *7 G MAIN
  S %L1M1("MIS")=%L1M1("MIS")-%L1M1("DLST") I %L1M1("MIS")<0 S %L1M1("MIS")=0 G MISP
  S LSTR=$L(%STR,RAZD)-1/2
  I LSTR<%L1M1("DLST") S %L1M1("MIS")=%L1M1("MIS")+(%L1M1("DLST")-LSTR\2)
  G MISP
VNIZ ;
  I %L1M1("MIS")=0 S %L1M1("MIS")=1 G MISP
  I '$D(^VRM2($J,%L1M1("MIS")+%L1M1("DLST")-1\%L1M1("DLST")*6+%L1M1("VRT")+8)) W *7 G MAIN
  S %L1M1("MIS")=%L1M1("MIS")+%L1M1("DLST")
  S LIN=LIN+6 D SET S LSTR=$L(%STR,RAZD)-1/2 S LIN=LIN-6 D SET
  S %L1M1("MIS")=%L1M1("MIS")-(%L1M1("DLST")-LSTR\2)
  I %L1M1("MIS")<(%L1M1("DLST")*(LIN-%L1M1("VRT")-2/6)+1) S %L1M1("MIS")=%L1M1("DLST")*(LIN-%L1M1("VRT")-2/6)+1
  S:%L1M1("MIS")>%L1M1("KOL") %L1M1("MIS")=%L1M1("KOL") G MISP
PRAVO ;
  I %L1M1("MIS")=0 S %L1M1("MIS")=$S(%XMSG(0)'>1:1,1:%L1M1("KOL")) G MISP
  S:%XMSG(0)'>1 %L1M1("MIS")=%L1M1("MIS")-1
  S:%XMSG(0)>1 %L1M1("MIS")=%L1M1("MIS")+1
  G MISP
LEVO ;
  I %L1M1("MIS")=0 S %L1M1("MIS")=$S(%XMSG(0)'>1:%L1M1("KOL"),1:1) G MISP
  I %XMSG(0)'>1 S %L1M1("MIS")=%L1M1("MIS")+1 I %L1M1("MIS")>%L1M1("KOL") W *7 S %L1M1("MIS")=%L1M1("KOL")
  I %XMSG(0)>1 S %L1M1("MIS")=%L1M1("MIS")-1
  G MISP
ESC S %L1M1("NAM")="",%L1M1("MIS")=0,%I=1
END ;
  ; I '$D(%L1M1("CEVA",9)) X %chista
  S %I=%L1M1("MIS")+1
  I $D(%ECHO) U $P:(ECHO:WRAP)
  W *27,"[24;1H" W *27,"[0J",$C(27,91,63,50,53,104) I %TYPCRT["VT" W *27,"(B"
  K ^VRM2($J)
  Q

%L1MENU6
%L1MENU6 ; SUBROUTINE  ( 6 )  %L1MENU1  [ 04/17/94  1:05 PM ]
  S %S00="35,28,22,15,9,2",%LL=9
VRM ;
  S %STR(1)=MENU(90),%VERT=%L1M1("VRT"),%SM=35 D ^%L1SHA             ; 01
  S %VERT=%L1M1("VRT")+6,%SM0=$P(%S00,",",$S(%L1M1("KOL")<7:%L1M1("KOL"),1:6))      ; 02
  F NUM=1:1:$S(%L1M1("KOL")<7:%L1M1("KOL"),1:6) S %STR(1)=MENU(NUM),%SM=NUM-1*13+%SM0 D ^%L1SHA
  S %SM0=$P(%S00,",",$S(%L1M1("KOL")<13:%L1M1("KOL")-6,1:6))                ; 03
  I %L1M1("KOL")>6 S %VERT=%L1M1("VRT")+12 F NUM=7:1:$S(%L1M1("KOL")<13:%L1M1("KOL"),1:12) S %STR(1)=MENU(NUM),%SM=NUM-7*13+%SM0 D ^%L1SHA
  S %SM0=$P(%S00,",",%L1M1("KOL")-12)                                ; 04
  I %L1M1("KOL")>12 S %VERT=%L1M1("VRT")+18 F NUM=13:1:%L1M1("KOL") S %STR(1)=MENU(NUM),%SM=NUM-13*13+%SM0 D ^%L1SHA
LIN ;
  S %VERT=%L1M1("VRT")+3,$E(^VRM2($J,%VERT),40)=V21
  F I=%VERT+1:1:%L1M1("KOL")-1\6*6+%VERT+3 S:$D(^(I)) ^(I)=$E(^(I),1,39)_V1_$E(^(I),40,80) S $E(^(I),40)=V1
  I %L1M1("KOL")#2=0 F I=I+1:1:I+3 S ^(I)=$E(^(I),1,39)_" "_$E(^(I),40,80)
  I %L1M1("KOL")>6 S $E(^(%VERT+2),8,72)=$TR($J(" ",72-7)," ",G1)
  I %L1M1("KOL")>12 S $E(^(%VERT+8),8,72)=$TR($J(" ",72-7)," ",G1)
  I %L1M1("KOL")#6'=1 D
  .S STA=$S(%L1M1("KOL")#6=2:34,%L1M1("KOL")#6=3:28,%L1M1("KOL")#6=4:21,%L1M1("KOL")#6=5:15,1:8)
  .S $E(^(%VERT+2+(%L1M1("KOL")-1\6*6)),STA,80-STA)=$TR($J(" ",81-STA-STA)," ",G1)
  S STR=1,%LIN=%VERT+2 S %KKL=%L1M1("KOL") S:%L1M1("KOL")>6 %KKL=6 D 6
  I %L1M1("KOL")>6 D  S STR=2,%LIN=%VERT+2+6 S %KKL=%L1M1("KOL")-6 S:%L1M1("KOL")>12 %KKL=6 D 6
  .S $E(^(%LIN),40)=KR,$E(^(%LIN+1),40)=V1
  I %L1M1("KOL")>12 D  S STR=3,%LIN=%VERT+2+12 S %KKL=%L1M1("KOL")-12 D 6
  .S $E(^(%LIN),40)=KR,$E(^(%LIN+1),40)=V1
  Q
6  I %KKL=6 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),7)=UL,$E(^(%LIN),73)=UP
  .F I=20,33,47,60 S $E(^(%LIN),I)=VV
  .F I=7,20,33,47,60,73 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
5  I %KKL=5 D
  .S $E(^(%LIN),40)=KR ; ,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),14)=UL,$E(^(%LIN),66)=UP
  .F I=27,53 S $E(^(%LIN),I)=VV
  .F I=14,27,40,53,66 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
4  I %KKL=4 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),20)=UL,$E(^(%LIN),60)=UP
  .S $E(^(%LIN),33)=VV,$E(^(%LIN),47)=VV
  .F I=20,33,47,60 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
3  I %KKL=3 D
  .S $E(^(%LIN),40)=KR
  .S $E(^(%LIN),27)=UL,$E(^(%LIN),53)=UP
  .F I=27,40,53 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
2  I %KKL=2 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),33)=UL,$E(^(%LIN),47)=UP
  .F I=33,47 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
1  I %KKL=1 D
  .S $E(^(%LIN),40)=V1
  .S $E(^(%LIN+1),40)=V1,$E(^(%LIN+2),40)=V12
  Q

%L1MENU8
%L1MENU8 ; SUBROUTINE %L1MENU1  [ 04/17/94  1:05 PM ]
  S %S00="36,30,27,21,18,12,9,3",%LL=7
VRM ;
  S %STR(1)=MENU(90),%VERT=%L1M1("VRT"),%SM=36 D ^%L1SHA            ; 01
  S %VERT=%L1M1("VRT")+6,%SM0=$P(%S00,",",$S(%L1M1("KOL")<9:%L1M1("KOL"),1:8))      ; 02
  F NUM=1:1:$S(%L1M1("KOL")<9:%L1M1("KOL"),1:8) S %STR(1)=MENU(NUM),%SM=NUM-1*9+%SM0 D ^%L1SHA
  S %SM0=$P(%S00,",",$S(%L1M1("KOL")<17:%L1M1("KOL")-8,1:8))                ; 03
  I %L1M1("KOL")>8 S %VERT=%L1M1("VRT")+12 F NUM=9:1:$S(%L1M1("KOL")<17:%L1M1("KOL"),1:16) S %STR(1)=MENU(NUM),%SM=NUM-9*9+%SM0 D ^%L1SHA
  S %SM0=$P(%S00,",",%L1M1("KOL")-16)                               ; 04
  I %L1M1("KOL")>16 S %VERT=%L1M1("VRT")+18 F NUM=17:1:%L1M1("KOL") S %STR(1)=MENU(NUM),%SM=NUM-17*9+%SM0 D ^%L1SHA
LIN ;
  S %VERT=%L1M1("VRT")+3,$E(^VRM2($J,%VERT),40)=V21
  F I=%VERT+1:1:%L1M1("KOL")-1\8*6+%VERT+3 S:$D(^(I)) ^(I)=$E(^(I),1,38)_" "_V1_" "_$E(^(I),39,80) S $E(^(I),39,41)=" "_V1_" "
  I %L1M1("KOL")#2=0 F I=I+1:1:I+3 I $D(^(I)) S ^(I)=$E(^(I),1,38)_"   "_$E(^(I),39,80)
  I %L1M1("KOL")>8 S $E(^(%VERT+2),8,72)=$TR($J(" ",72-7)," ",G1)
  I %L1M1("KOL")>16 S $E(^(%VERT+8),8,72)=$TR($J(" ",72-7)," ",G1)
  I %L1M1("KOL")#8'=1 D
  .S STA=$S(%L1M1("KOL")#8=2:34,%L1M1("KOL")#8=3:31,%L1M1("KOL")#8=4:25,%L1M1("KOL")#8=5:22,%L1M1("KOL")#8=6:16,%L1M1("KOL")#8=7:13,1:7)
  .S $E(^(%VERT+2+(%L1M1("KOL")-1\8*6)),STA,80-STA)=$TR($J(" ",81-STA-STA)," ",G1)
  S STR=1,%LIN=%VERT+2 S %KKL=%L1M1("KOL") S:%L1M1("KOL")>8 %KKL=8 D 8
  I %L1M1("KOL")>8 D  S STR=2,%LIN=%VERT+2+6 S %KKL=%L1M1("KOL")-8 S:%L1M1("KOL")>16 %KKL=8 D 8
  .S $E(^(%LIN),40)=KR,$E(^(%LIN+1),40)=V1
  I %L1M1("KOL")>16 D  S STR=3,%LIN=%VERT+2+12 S %KKL=%L1M1("KOL")-16 D 8
  .S $E(^(%LIN),40)=KR,$E(^(%LIN+1),40)=V1
  Q
8  I %KKL=8 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),7)=UL,$E(^(%LIN),73)=UP
  .F I=16,25,34,46,55,64 S $E(^(%LIN),I)=VV
  .F I=7,16,25,34,46,55,64,73 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
7  I %KKL=7 D
  .S $E(^(%LIN),13)=UL,$E(^(%LIN),67)=UP
  .F I=22:9:58 S $E(^(%LIN),I)=VV
  .S $E(^(%LIN),40)=KR
  .F I=13:9:67 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
6  I %KKL=6 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),16)=UL,$E(^(%LIN),64)=UP
  .F I=25,34,46,55 S $E(^(%LIN),I)=VV
  .F I=16,25,34,46,55,64 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
5  I %KKL=5 D
  .S $E(^(%LIN),40)=KR ; ,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),22)=UL,$E(^(%LIN),58)=UP
  .F I=31,49 S $E(^(%LIN),I)=VV
  .F I=22:9:58 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
4  I %KKL=4 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),25)=UL,$E(^(%LIN),55)=UP
  .S $E(^(%LIN),34)=VV,$E(^(%LIN),46)=VV
  .F I=25,34,46,55 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
3  I %KKL=3 D
  .S $E(^(%LIN),40)=KR
  .S $E(^(%LIN),31)=UL,$E(^(%LIN),49)=UP
  .F I=31,40,49 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
2  I %KKL=2 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),34)=UL,$E(^(%LIN),46)=UP
  .F I=34,46 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
1  I %KKL=1 D
  .S $E(^(%LIN),40)=V1
  .S $E(^(%LIN+1),40)=V1,$E(^(%LIN+2),40)=V12
  Q

%L1MENUF
%L1MENUF ; [ 16.12.03 10:22 ] [ 14.12.03 16:44 ] [ 10.06.03 23:11 ]
  I '$D(%L1M1("PROG")) G BG
  I '$D(^menu(%L1M1("PROG"))) G BG
  S %NEQ=0 D  G:%NEQ BG
  .N I F I=1:1 Q:'$D(@MAC@(I))  I @MAC@(I)'=$G(^menu(%L1M1("PROG"),"MM",I)) S %NEQ=1 Q
  I $D(^menu(%L1M1("PROG"),"VD",1)),%TYPCRT="PC" D  D PUT^%VIDEO("%VD",0,0,80,24,2) G M
  .N I S %VD="" F I=1:1 Q:'$D(^(I))  S %VD=%VD_^(I)
  N N S N="" F  S N=$O(^menu(%L1M1("PROG"),N))  Q:N=""  Q:N'?1N.N  W ^(N),!
M S N="" F  S N=$O(^menu(%L1M1("PROG"),N))  Q:N=""  Q:N'?1N.N  S ^VRM2($J,N)=^(N)
  D HB1 G STA
BG N %STRMAX S %STRMAX=1
  N %N S %N="" F  S %N=$O(MENU(%N)) Q:%N=""  I $L(MENU(%N))>%LL S %STRMAX=2 Q
  I %L1M1("DLST")=6 D ^%L1MENU6 D HEBR G STA
  I %L1M1("DLST")=8 D ^%L1MENU8 D HEBR G STA
  S %S00="32,22,12,2",%LL=15
VRM ;
  S %STR(1)=MENU(90),%VERT=%L1M1("VRT"),%SM=32 D ^%L1SHA            ; 01
  S %VERT=%L1M1("VRT")+6,%SM0=$P(%S00,",",$S(%L1M1("KOL")<5:%L1M1("KOL"),1:4))      ; 02
  F NUM=1:1:$S(%L1M1("KOL")<5:%L1M1("KOL"),1:4) D STR(NUM,1)
  S %SM0=$P(%S00,",",$S(%L1M1("KOL")<9:%L1M1("KOL")-4,1:4))                 ; 03
  I %L1M1("KOL")>4 S %VERT=%L1M1("VRT")+12 F NUM=5:1:$S(%L1M1("KOL")<9:%L1M1("KOL"),1:8) D STR(NUM,5)
  S %SM0=$P(%S00,",",%L1M1("KOL")-8)                                ; 04
  I %L1M1("KOL")>8 S %VERT=%L1M1("VRT")+18 F NUM=9:1:%L1M1("KOL") D STR(NUM,9)
LIN ;
  S %VERT=%L1M1("VRT")+3,$E(^VRM2($J,%VERT),40)=V21
  F I=%VERT+1:1:%L1M1("KOL")-1\4*6+%VERT+3 S $E(^(I),40)=V1
  I %L1M1("KOL")>1 F I=$S(%L1M1("KOL")=2:30,%L1M1("KOL")=3:20,1:11):1:$S(%L1M1("KOL")=2:50,%L1M1("KOL")=3:60,1:69) S $E(^(%VERT+2),I)=G1
  I %L1M1("KOL")>5 F I=$S(%L1M1("KOL")=6:30,%L1M1("KOL")=7:20,1:11):1:$S(%L1M1("KOL")=6:50,%L1M1("KOL")=7:60,1:69) S $E(^(%VERT+8),I)=G1
  I %L1M1("KOL")>9 F I=$S(%L1M1("KOL")=10:30,%L1M1("KOL")=11:20,1:11):1:$S(%L1M1("KOL")=10:50,%L1M1("KOL")=11:60,1:69) S $E(^(%VERT+14),I)=G1
  S STR=1,%LIN=%VERT+2 S %KKL=%L1M1("KOL") S:%L1M1("KOL")>4 %KKL=4 D 4
  I %L1M1("KOL")>4 D  S STR=2,%LIN=%VERT+2+6 S %KKL=%L1M1("KOL")-4 S:%L1M1("KOL")>8 %KKL=4 D 4
  .S $E(^(%LIN),40)=KR,$E(^(%LIN+1),40)=V1
  I %L1M1("KOL")>8 D  S STR=3,%LIN=%VERT+2+12 S %KKL=%L1M1("KOL")-8 D 4
  .S $E(^(%LIN),40)=KR,$E(^(%LIN+1),40)=V1
  D HEBR G STA
HEBR ;
  I %XMSG(0)'>1 D
  .F I=%L1M1("VRT")+8:6 Q:'$D(^VRM2($J,I))  D
  ..I $E(^(I),40)=$C(124) S $E(^(I),40)=$C(125)
  ..I %STRMAX>1 I $E(^(I+1),40)=$C(124) S $E(^(I+1),40)=$C(125)
  ..S DL=$L(^(I),RAZD)
  ..F I1=2:2:DL\2 D
  ...S AAA=$P(^(I),RAZD,I1)
  ...S $P(^(I),RAZD,I1)=$P(^(I),RAZD,DL+1-I1)
  ...S $P(^(I),RAZD,DL+1-I1)=AAA
  ...I %STRMAX>1 D
  ....S AAA=$P(^VRM2($J,I+1),RAZD,I1)
  ....S $P(^(I+1),RAZD,I1)=$P(^(I+1),RAZD,DL+1-I1)
  ....S $P(^(I+1),RAZD,DL+1-I1)=AAA
  ..I $E(^(I),40)=$C(125) S $E(^(I),40)=$C(124)
  ..I %STRMAX>1 I $E(^(I+1),40)=$C(125) S $E(^(I+1),40)=$C(124)
NUM ;
  S X="I $E(^(I),I1)=V1,$E(^(I+3),I1)=C(205) S NUM=NUM+1,$E(^(I+3),I1-1,I1)=$TR($J(NUM,2),"" "",C(205)) ; ,I1=I1-1"
  S NUM=0 F I=%L1M1("VRT")+6:6 Q:'$D(^VRM2($J,I))  D  I %CVET F I2=NUM:-1:NUM-%L1M1("DLST")+1 S RRR=I2_C(205) Q:^(I+3)'[RRR  S ^(I+3)=$P(^(I+3),RRR)_%L1M1("CEVA",6)_I2_%L1M1("CEVA",2)_C(205)_$P(^(I+3),RRR,2) ; O 17 U 17 W !,^(I+3) R R C 17
  .I %XMSG(0)'>1 F I1=80:-1:1 X X
  .I %XMSG(0)>1 F I1=1:1:80 X X
  S %L1M1("MIS")=$G(%L1M1("MIS"),0)
TYPE ;
  S RAZD=%L1M1("RAZD")
  I '$D(%L1M1("CEVA",9)) X %chista D
  .N %M,%L,%I,%NP S %TIM=$ZD($H,"24:60")
  .S %AT=""
  .S %SAY=%AT_"++25,"_(77-(80-$L(%AT)\2))_",H,I" X %XMSG X %XCL
  .;;S %SAY="   ["_$$^%L1DC($H,1)_" "_%TIM_"]++25,"_(79-(80-$L(%AT)\2))_",E" X %XMSG
  S ($Y,$X)=1 W *27,"["_(%L1M1("VRT")+1)_";1H" W %HBR
  ;W:$D(MENU(0)) $J(MENU(0),80-$L(MENU(0))\2+$L(MENU(0))) W !
  S I="" F  S I=$O(^VRM2($J,I)) Q:I=""  D  W !
  .I %TYPCRT["VT" W *27,"(0" D  S:$E($G(^(I)),40)=$C(124) $E(^(I),40)=" " Q
  ..I ^(I)'[RAZD W ^(I) Q
  ..F I1=1:1:$L(^(I),RAZD) D
  ...I $L(^(I),RAZD)>2 W:%TYPCRT["VT" *27,"(B" W $P(^(I),RAZD,I1) W:%TYPCRT["VT" *27,"(0"
  ...I I1'=$L(^(I),RAZD) W $C(120)
  .I %CVET S TO=0 W %L1M1("CEVA",0) D   W %L1M1("CEVA",0),$J(" ",80-II) Q
  ..F II=1:1:$L(^(I)) D  W EXT S TO=TT
  ...S TT=0 S EXT=$E(^(I),II) I $A(EXT)>178 S TT=2
  ...I TT=0 I TO=2!(TO=3) S TT=3
  ...I $A(EXT)>185,$A(EXT)<189 S TT=$S(TO=0:2,TO=4:2,1:4)
  ...;--- I EXT=RAZD S TT=$S(TO=0:2,TO=1:2,1:1)
  ...I ",179,191,193,194,196,197,218,"[(","_$A(EXT)_",") S TT=1
  ...I TO'=TT W %L1M1("CEVA",TT)
  .W ^(I)
HB1  W:%TYPCRT["VT" *27,"(B" S %HBRY=1
  W *27,"["_(%L1M1("VRT")-2)_";1H" S $X=1 W ?(81-$L(%L1M1("MENU"))\2),%L1M1("CEVA",7),%L1M1("MENU") X %XCL
  W %CL0
  Q
STA W:%TYPCRT["VT" *27,"(B"
  I $D(%L1M1("PROG")) D
  .N I F I=1:1 Q:'$D(@MAC@(I))  S ^menu(%L1M1("PROG"),"MM",I)=@MAC@(I)
  .S MAC1="^VRM2($J)",MAC2="^menu(%L1M1(""PROG""))" D ^%S1GC1
  I %TYPCRT="PC",$D(%L1M1("PROG")) D GET^%VIDEO("%VD",0,0,80,24,2) D
  .N %VD1,I S %VD1="" F I=1:1 S ^menu(%L1M1("PROG"),"VD",I)=$E(%VD,1,255) S %VD=$E(%VD,256,4096) Q:%VD=""
  Q
4  I %KKL=4 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),10)=UL,$E(^(%LIN),70)=UP
  .S $E(^(%LIN),30)=VV,$E(^(%LIN),50)=VV
  .F I=10,30,50,70 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
3  I %KKL=3 D
  .S $E(^(%LIN),40)=KR
  .S $E(^(%LIN),20)=UL,$E(^(%LIN),60)=UP
  .F I=20,40,60 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
2  I %KKL=2 D
  .S $E(^(%LIN),40)=V11,$E(^(%LIN+1),40)=" "
  .S $E(^(%LIN),30)=UL,$E(^(%LIN),50)=UP
  .F I=30,50 S $E(^(%LIN+1),I)=V1,$E(^(%LIN+2),I)=V12
1  I %KKL=1 D
  .S $E(^(%LIN),40)=V1
  .S $E(^(%LIN+1),40)=V1,$E(^(%LIN+2),40)=V12
  Q
STR(NUM,BG) ;
 N %CHAST,%FRAZA,%DLG,%STR,%I
 S %FRAZA=MENU(NUM),%DLG=%LL D DELG^%L1SCPC
 F %I=1:1:2 Q:'$D(%CHAST(1,%I))  S %STR(%I)=%CHAST(1,%I)
 I '$D(%STR(2)),%STRMAX=2 S %STR(2)=""
 S %SM=NUM-BG*20+%SM0 D ^%L1SHA
 Q

%L1MODJ
%L1MODJ ;   [ 03.02.06 13:38 ] [ 01.02.06 20:14 ] [ 09/09/05 12:09 PM ]
 ;------------ INPUT :
 ; ^L1TRPRM("JOB") - JOB NUMBER\$P\$H\S-P-O-N
 ;
 ; ^L1TRPRM(JOB,"SRC"  - GLOBALS / ROUTINS LIST FOR TRANSFER
 ; ^L1TRPRM(JOB,"G")    - SIGN OF GLOBALS TRANSFER
 ; ^L1TRPRM(JOB,"PORT") - PORT NUMBER
 ; ^L1TRPRM(JOB,"XON") - XON COMMAND
 ; ^L1TRPRM(JOB,"PHONE") - PHONE NUMBER
 ; ^L1TRPRM(JOB,"LKH") - CLIENT CODE
 ; ^L1TRPRM(JOB,"LKH1") - CLIENT NAME
 ; ^L1TRPRM(JOB,"UCI") - PORT NUMBER
 ;
MODEM ;
 O 253::2 E  Q
 S ^%L1MODJ=$P($ZG,"/",$L($ZG,"/"))
 F  H 2 D SEND Q:$G(^L1TRPRM("JOB"))="END"
 K ^%L1MODJ Q
SEND ;
 Q:$D(^L1TRPRM("JOB"))
 S JOB="" F  S JOB=$O(^L1TRPRM(JOB),-1) Q:JOB=""  I JOB Q:$P($G(^L1TRPRM(JOB,"STAT")),"\")'="O"
 Q:JOB=""  G SND
SENDJ(JOB) ;
SND ;
 D ^%L1C
 I $D(^L1TRPRM(JOB,"DTIME")),^("DTIME")<+$H_$TR($J($P($H,",",2),5)," ",0) Q
 S ^L1TRPRM("JOB")=JOB_"\P\"_$P($G(^L1TRPRM(JOB,"STAT")),"\",2)_"\"_$H_"\"_$G(^L1TRPRM(JOB,"UCI"))
 S ^L1TRPRM("JOBLAST")=JOB_"\"_$P_"\"_$H_"\"_$G(^L1TRPRM(JOB,"UCI"))
 ;
 S %L1TRG=$D(^L1TRPRM(JOB,"G")) I '%L1TRG K %L1TRG
 ;
 I %L1TRG D  ; ^L1TRPRM(JOB,"SRC" --> ^UTILITY
 .K ^UTILITY($J)
 .I $D(^L1TRPRM(JOB,"REF")) M ^UTILITY($J)=^L1TRPRM(JOB,"REF") Q
 .;
 .N GLB,GLB1
 .S N1="" F  S GLB="^UTILITY($J,""",N1=$O(^L1TRPRM(JOB,"SRC",N1)) Q:N1=""  D  I $E(GLB,$L(GLB))'=")" S GLB=GLB_""")",@GLB=""
 ..S GLB=GLB_N1,GLB1=GLB
 ..S N2="",N2O=N2 F  S N2=$O(^L1TRPRM(JOB,"SRC",N1,N2)) Q:N2=""  D
 ...S GLB=GLB1
 ...S N3="" F  S N3=$O(^L1TRPRM(JOB,"SRC",N1,N2,N3)) Q:N3=""  I N3=1 D  Q
 ....S GLB=GLB_"("""""_^L1TRPRM(JOB,"SRC",N1,N2,N3,2)_""""")"")" S @GLB=""
 ;
 ;
 S USERPORT=$G(^L1TRPRM(JOB,"PORT")),USERGLOB="",INTR=0
 I 'USERPORT D MSG(" ! mcen liaya uexr xcbed `l ") S ^L1TRPRM(JOB,"ER")="PORT" D ER G ENDM
 ;
 S MDPHONE=$G(^L1TRPRM(JOB,"PHONE"))
 I MDPHONE="" D MSG(" ! oetlh 'qn xcbed `l ") S ^L1TRPRM(JOB,"ER")="PHONE" D ER G ENDM
 ;
 S LKH=$G(^L1TRPRM(JOB,"LKH"))
 S LKH1=$G(^L1TRPRM(JOB,"LKH1"))
 S UCI=$G(^L1TRPRM(JOB,"UCI"))
 S MDXON=$G(^L1TRPRM(JOB,"XON"))
 S USERMOD=1,MDTRANS=""
 S PROG="%L2GTR1" I $D(^L1TRPRM(JOB,"PROG")) S PROG=^L1TRPRM(JOB,"PROG")
 S $P(^L1TRPRM(JOB,"STAT"),"\")="M"
 ;
MU ;
 ;
 K ^GTR000($J)
 S $P(^L1TRPRM(JOB,"STAT"),"\")="D"
 K %L1RCV I '$D(^L1TRPRM(JOB,"DISPMSG")) S %L1RCV=""
 ;
 D ^%L1RCV(MDPHONE,USERPORT,MDXON,UCI,PROG,LKH,"^UTILITY($J)","",$G(^L1TRPRM(JOB,"PROGRCV")))
 ;
 S $P(^L1TRPRM(JOB,"STAT"),"\")=$S($G(%L1MDOK):"O",1:"N")
 S $P(^L1TRPRM(JOB,"END"),"\")=$H
 K ^L1TRPRM("JOB")
 ;
CL K ^UTILITY($J)
 ;
ENDM K ^L1TRPRM("JOB") Q
 ;
MSG(TXT) ;
 N IND S IND=$O(^L1TRPRM(JOB,"MSG",999999),-1)+1
 S ^L1TRPRM(JOB,"MSG",IND)=TXT_" : "_$J_" %L1MODJ"
 Q:'$D(^L1TRPRM(JOB,"DISP"))
 U 0:(NOECHO:NOWRAP)
 D:'$D(%chists) ^%L1C
 W *7,*27,7,$C(27,91)_"1;1H",%chists,$C(27,91)_"1;"_(80-$L(TXT)\2)_"H"_%LIGHT1_TXT_" ",$C(27,91,48,109),*27,8
 Q
ER ;
 S $P(^L1TRPRM(JOB,"STAT"),"\")="N"
 S $P(^L1TRPRM(JOB,"END"),"\")=$H
 K ^L1TRPRM("JOB")
 Q

%L1MODJ0
%L1MODJ ;                                                                                     [ 01.02.06 13:37 ] [ 01.02.04 14:07 ] [ 06/20/2002  12:52 PM ]
 ;------------ INPUT :
 ; ^L1TRPRM("JOB") - JOB NUMBER\$P\$H\S-P-O-N
 ;
 ; ^L1TRPRM(JOB,"SRC"  - GLOBALS / ROUTINS LIST FOR TRANSFER
 ; ^L1TRPRM(JOB,"G")    - SIGN OF GLOBALS TRANSFER
 ; ^L1TRPRM(JOB,"PORT") - PORT NUMBER
 ; ^L1TRPRM(JOB,"XON") - XON COMMAND
 ; ^L1TRPRM(JOB,"PHONE") - PHONE NUMBER
 ; ^L1TRPRM(JOB,"LKH") - CLIENT CODE
 ; ^L1TRPRM(JOB,"LKH1") - CLIENT NAME
 ; ^L1TRPRM(JOB,"UCI") - PORT NUMBER
 ;
MODEM ;
 O 253::2 E  Q
 S ^%L1MODJ=$$^%L1ZU(0)
 F  H 2 D SEND Q:$G(^L1TRPRM("JOB"))="END"
 K ^%L1MODJ Q
SEND ;
 Q:$D(^L1TRPRM("JOB"))
 S JOB="" F  S JOB=$O(^L1TRPRM(JOB),-1) Q:JOB=""  I JOB Q:$P($G(^L1TRPRM(JOB,"STAT")),"\")'="O"
 Q:JOB=""  G SND
SENDJ(JOB) ;
SND ;
 I $D(^L1TRPRM(JOB,"DTIME")),^("DTIME")<+$H_$TR($J($P($H,",",2),5)," ",0) Q
 S ^L1TRPRM("JOB")=JOB_"\P\"_$P($G(^L1TRPRM(JOB,"STAT")),"\",2)_"\"_$H_"\"_$G(^L1TRPRM(JOB,"UCI"))
 S ^L1TRPRM("JOBLAST")=JOB_"\"_$P_"\"_$H_"\"_$G(^L1TRPRM(JOB,"UCI"))
 S %L1TRG=$D(^L1TRPRM(JOB,"G")) I '%L1TRG K %L1TRG
 ;
 I $D(^L1TRPRM(JOB,"G")) D  ; ^L1TRPRM(JOB,"SRC" --> ^UTILITY
 .K ^UTILITY($J)
 .I $D(^L1TRPRM(JOB,"REF")) M ^UTILITY($J)=^L1TRPRM(JOB,"REF") Q
 .;
 .N GLB,GLB1
 .S N1="" F  S GLB="^UTILITY($J,""",N1=$O(^L1TRPRM(JOB,"SRC",N1)) Q:N1=""  D  I $E(GLB,$L(GLB))'=")" S GLB=GLB_""")",@GLB=""
 ..S GLB=GLB_N1,GLB1=GLB
 ..S N2="",N2O=N2 F  S N2=$O(^L1TRPRM(JOB,"SRC",N1,N2)) Q:N2=""  D
 ...S GLB=GLB1
 ...S N3="" F  S N3=$O(^L1TRPRM(JOB,"SRC",N1,N2,N3)) Q:N3=""  I N3=1 D  Q
 ....S GLB=GLB_"("""""_^L1TRPRM(JOB,"SRC",N1,N2,N3,2)_""""")"")" S @GLB=""
 ;
 S USERPORT=$G(^L1TRPRM(JOB,"PORT")),USERGLOB="",INTR=0
 I 'USERPORT D MSG(" ! mcen liaya uexr xcbed `l ") S ^L1TRPRM(JOB,"ER")="PORT" D ER G ENDM
 S MDPHONE=$G(^L1TRPRM(JOB,"PHONE"))
 I 'MDPHONE D MSG(" ! oetlh 'qn xcbed `l ") S ^L1TRPRM(JOB,"ER")="PHONE" D ER G ENDM
 S LKH=$G(^L1TRPRM(JOB,"LKH"))
 S LKH1=$G(^L1TRPRM(JOB,"LKH1"))
 S UCI=$G(^L1TRPRM(JOB,"UCI"))
 I UCI="" D MSG(" ! UCI xcbed `l ") S ^L1TRPRM(JOB,"ER")="UCI" D ER G ENDM
 S MDXON=$G(^L1TRPRM(JOB,"XON"))
 S USERMOD=1,MDTRANS=""
 I $D(^L1TRPRM(JOB,"PROG")) S PROG=^L1TRPRM(JOB,"PROG")
 E  I $D(%L1TRG) S PROG="%L2GTR1"
 E  S PROG="%L2RCPRG"
 S MDMOD=1
 S PORTN=USERPORT
 S MDTON="T"
 O PORTN::20 E  D MSG(" ! qetz "_PORTN_" hxet ") G ENDM
 S US="O PORTN U PORTN:(0::::#001001:#800040:8::$C(13))"
 S $P(^L1TRPRM(JOB,"STAT"),"\")="M"
 ;
 ;--------- INIT
 D %L2MD(PORTN,MDMOD,$G(MDPHONE),MDTON,US,MDXON,$G(LKH1))
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ER1"
 I $G(%L1MDOK)["INTR" S INTR=1
 S OK=$G(%L1MDOK)
 I $G(OK)'=1 S ^L1TRPRM(JOB,"ER")="MD "_%L1MDOK G ER
 ;
 ;--------- SEND RECEIVE PROGRAM
 D CLPORT
 S:$G(UCI)="MEZ" UCI="MER"
 S SNDPR=UCI_":"_PROG_":160"
 D MSG("SEND : "_SNDPR)
 H 1 W $C(13) H 1 W SNDPR,$C(13) H 1
 F I=1:1:3 R A:1 D MSG(A) I A["UCI" W $C(13) H 3 W SNDPR,$C(13) D MSG("SEND : "_SNDPR) H 1
 ;
 I '$D(%L1TRG) D
 .K ^l1trprg M ^l1trprg=^L1TRPRM(JOB,"SRC")
 .K ^UTILITY($J)
 .S ^UTILITY($J,"l1trprg")=""
 ;
 K ^GTR000($P)
 S $P(^L1TRPRM(JOB,"STAT"),"\")="D"
 S %L1RCV=""
 D ^%L2GTR
 ;
 I $D(^%L1GTER) D  G CL
 .M ^L1TRPRM(JOB,"L2G")=^L2G
 .S ^L1TRPRM(JOB,"ER")=^%L1GTER D ER
 ;
 K ^L2G
 I $D(^L1TRPRM(JOB,"PROGRCV")) D
 .N R S R=^("PROGRCV") S:$E(R)'="^" R="^"_R
 .S USERPORT=$G(^L1TRPRM(JOB,"PORT"))
 .D @R
 S $P(^L1TRPRM(JOB,"STAT"),"\")="O"
 S $P(^L1TRPRM(JOB,"END"),"\")=$H
 K ^L1TRPRM("JOB")
 ;
CL D HANGUP K ^UTILITY($J)
 C:PORTN>3&(PORTN'=$P) PORTN
ENDM K ^L1TRPRM("JOB") Q
 ;
ER ;
 S $P(^L1TRPRM(JOB,"STAT"),"\")="N"
 S $P(^L1TRPRM(JOB,"END"),"\")=$H
 K ^L1TRPRM("JOB")
 Q
ER1 S ^L1TRPRM(JOB,"ER")=$ZS D ER
 I $G(PORTN) C:PORTN>3&(PORTN'=$P) PORTN
 G ENDM
 ;
%L2MD(PORTN,USERMOD,NUMBER,MDTONE,US,XON,MDLKH) ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,JOB,PORTN,USERMOD,NUMBER,MDTONE,MDLKH,%L1MDOK,US,XON,%DELAY,%L2MD)
 D ^%L1C S %L1MDOK=0,%L2MD="",%L1RCV=""
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ERR^%L2MD"
 S PRT=%L3MYDVN K ^L1TRPRM(JOB,"MODEM") S ^L1TRPRM(JOB,"MODEM")="BEG"
 I $P=PORTN!'PORTN D MSG("CANNOT SELECT YOUR OWN DEVICE.") G EXIT
 C PORTN U $P:(CENABLE:CTRAP=$C(3)) O PORTN::0 E  D MSG("..LINE IN USE..WAITING..") O PORTN D MSG("READY")
 X US
 D HANGUP
 X US
INIT ;
 S %DC=0 S %DT=0,%Y=""
P0 X US D CLPORT S %ST="AT&F"_$G(XON)_$C(13)
 D MSG(%ST)
 F %J=1:1:$L(%ST) W $E(%ST,%J) D DELAY
P01 X US R *%Y1:1 E  S %DC=%DC+1 G:%DC<12 P01:%DC#4,P0 D MSG("NO CARRIER") G EXIT
 G:%Y1=1 EXIT
 I %Y1'=13 S %Y=%Y_$C(%Y1) G P01
 D MSG(%Y) S %DT=%DT+1 S ^L1TRPRM(JOB,"MODEM","ATZ",%DT)=%Y
 G:%Y1=1 EXIT
 I %Y'["OK" G:%DT<12 P01:%DT#4,P0 D MSG("NO CARRIER") G EXIT
 S %DT=0
 I $G(NUMBER) D DELAY G TP1
TP1 X US S NUMBER=$TR(NUMBER,"-","") D CLPORT
 S ST="ATD"_$G(MDTONE,"P")_"W"_NUMBER_$C(13) W ST
 D MSG(ST)
 S TXT=%HBR_$$HBR^%L1FRM($G(MDLKH),30)_" "_$$HBR^%L1FRM(NUMBER,10)_%ENG
 D MSG(TXT) X US
 H 5
 S OK=0
 F I=1:1:60 R A:1 D  Q:OK  S ^L1TRPRM(JOB,"MODEM","CONN",I)=A D MSG(A)
 .I $F(A,"CONN") S OK=1 Q
 .I $F(A,"BUS") S OK=2 Q
 .I $F(A,"NO CAR") S OK=3 Q
 .I $F(A,"NO DIAL") S OK=4 Q
 I OK'=1 G EXIT
 I OK=1 K ^L1TRPRM(JOB,"MODEM") D MSG("MODEM IN USE !")
 S %L1MDOK=OK
EXIT H 1
 Q
ERR S %L1MDOK=$ZS G EXIT
HANGUP ;
 S %L1RCV="" D ^%L1DVRES(PORTN)
 O PORTN X US D HNG^%L1HANG("ATH0ZS0=0")
 Q
CLPORT X US ;
 F I=1:1:%DELAY R *A:0
 I A>0 F  R *A:1 E  Q
 Q
DELAY ;
 F %JJJ=1:1:%DELAY
 Q
MSG(TXT) ;
 N IND S IND=$O(^L1TRPRM(JOB,"MSG",999999),-1)+1
 S ^L1TRPRM(JOB,"MSG",IND)=TXT_" : "_$J_" %L1MODJ"
 Q:'$D(^L1TRPRM(JOB,"DISP"))
 D ZU
 D:'$D(%HBR) ^%L1C
 W *7,*27,7,$$DLY(),%HBR,$C(27,91)_"1;1H"_$$DLY()_%chists_$$DLY()_$$DLY()_$C(27,91)_"1;"_(80-$L(TXT)\2)_"H"_%LIGHT1_TXT_" ",$$DLY(),$$DLY(),$C(27,91,48,109),*27,8
 Q
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:10000
 Q DLY
HANGJ(PORTN) ;
 S US="O PORTN U PORTN:(NOECHO:NOWRAP:NOCENABLE:PASTHRU:TERM=$C(13,10))"
 C PORTN O PORTN X US D HNG^%L1HANG("ATH0Z"_$G(^PL("MDRING"),1)_$G(^PL("MDXON"))_$S($G(^PL("MDLOW")):"L1",1:""))
 C PORTN
 Q
ZU ;
 I $P["tty" U $P:(NOECHO:NOWRAP) Q
 U ^[$$^%L1GLD]dev(1):(NOECHO:NOWRAP)
 Q

%L1MOUSE
%L1MOUSE ; [ 11/005/99  2:41 PM ]
 I '$$INIT^%L2MOUSE Q
 S %CX=7.9,%CY=7.67
 I $$LIMITS^%L2MOUSE(2*%CX,44*%CX,4*%CY,22*%CY)
 I '$$SHOW^%L2MOUSE Q
 S %COL=$X+1,%ROW=$Y+1
 S %PREV="",%PRESS=0
 F  D  Q:$ZB(%PRESS,1,1)
 .S %CRD=$$REPORT^%L2MOUSE
 .I %CRD'=%PREV D
 ..S %XX=$P(%CRD,",")\%CX,%YY=$P(%CRD,",",2)\%CY X %POSIC
 ..S %PREV=%CRD
 ..S %PRESS=+$P(%CRD,",",3)

%L1MRK
%L1MRK(DUMP) ; [ 18.06.15 16:44 ] [ 14.03.10 14:02 ] [ 29.10.06 18:40 ]
 I $ZGBLDIR["/client." Q 0
 I $G(^MERKAZ) Q ^MERKAZ
 ;;I $G(^[$$^%L1GLD]PLUK)["MLY",$G(^[^UCI("MLG")]STAT("MLY","EM","MRKZ")) Q ^("MRKZ")
 Q +$E($G(@$$^W4PRM@("ASH","MASOF")),1,7)
 ;
NAME(MRK) ;
 Q:$G(MRK)="" ""
 Q $G(^MRKZ(MRK))

%L1MSF
%L1MSF ; [ 24.06.04 02:48 ] [ 23.06.04 22:37 ] [ 21.06.04 17:38 ] [
 N FL,A,GLD,I,N,PSD,%S D ^%L1C
 S GLD=$$^%L1GLD
 S I=0
 S N="" F  S N=$O(^[GLD]devi3(N)) Q:N=""  D
 .S I=I+1,^TEMP($P,I)=N_"\"_$G(^[GLD]devi3(N))
 ;
SC S %SCRN="L1MSF"
 D ^%L1SC
 D IS3^%L1GET
 I %S=1 G SC
 I %S=0 G END
 K ^[GLD]devi3
 F I=1:1 Q:'$D(^TEMP($P,I))  D
 .S PSD=$P(^(I),"\") Q:PSD=""
 .S ^[GLD]devi3(PSD)=$P(^TEMP($P,I),"\",2)
END K ^TEMP($P) Q

%L1MSG
%L1MSG ; [ 04/25/99  4:48 PM ] [ 09/13/97  9:02 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
BG K  D ^%L1C I %XMSG(0)'>1 S %HBRY=""
 S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4),MM2(J)=$P(T,";",5)
 S MM(0)=" zerceda letih "
 S MAC="MM" D ^%L2MENU
 I %I=1 G END
 D @MM1(%I) G BG
END Q
 ;
MENU ;
 ;1; d ` i v i ;
 ;1; zerced oekcr;3;
 ;1; zerced uaew xevii;1;
 ;1; zeipkeza zerced ztlgd;2;
 ;1; zerced uaew zpirh;4;
 ;1;zerced zbvd;5;
 Q  ;
1 D ^%L1MSGCR Q
2 D ^%L1MSGUP Q
3 D ^%L1MSGED Q
4 D ^%L1MSGLD Q
5 D ^%L1MSGPC Q

%L1MSGBR
%L1MSGBR ; [ 07.03.19 21:32 ] [ 20.08.07 11:43 ] [ 20.01.07 10:57 ] 
 Q
 N $ZT S $ZT="ZG "_$ZL_":E^%L1MSGBR"
 N %RF S %RF=$R
 I '$D(%chists) D ^%L1C
 I $D(^msgbrd($P))#2 D  K ^msgbrd($P)
 .N %MSG S %MSG=^msgbrd($P)
 .D:'$D(%HBR) ^%L1C
 .U $P:(NOECHO:NOWRAP)
 .W *7,*27,7,$$DLY,$C(27,91)_"1;1H"_$$DLY()_%chists_$$DLY()_$$DLY()_$C(27,91)_"1;"_(80-$L(%MSG)\2)_"H"_%CLI_" "_$TR($TR(%MSG,%TES1,%TES2),%TEN,%THB)_" ",$$DLY(),$$DLY(),$C(27,91,48,109),*27,8
 .I $D(^msgbrd($P,"DLY")) H ^msgbrd($P,"DLY")
 I $D(@%RF)
E Q
DLY() ;
 Q ""
 

%L1MSGCR
%L1MSGCR ; [ 31.05.04 18:02 ] [ 08/24/2000  7:25 PM ] [ 07/30/99  4:46 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S KV=""""
 ;;S X(1)="I T[""%SAY=""!(T[""%GET="") X X(2)"
 S X(1)="I T?.E1L.E X X(2)"
 ;;S X(2)="F I1=2:2:30 S TXT=$P(T,KV,I1) I $L(TXT),TXT?.E1A.A.E X:'$D(^msg(""T"",TXT)) X(4),X(3) X:$D(^msg(""T"",TXT)) X(5)"
 S X(2)="N J,FLKV,FLKV1,FLKV2 S FLKV=0,FLKV2=0,TXT="""" F J=1:1:$L(T) S J1=J,FLKV1=0 X:$E(T,J1)=KV&'FLKV X(10) I 'FLKV1 S:$E(T,J1)=KV&FLKV&($E(T,J1+1)=KV) J=J+1 X:$E(T,J1)=KV&($E(T,J1+1)'=KV)&FLKV X(11) X:FLKV X(12)"
 ;;S X(2)="N J,FLKV,FLKV1,FLKV2 S FLKV=0,FLKV2=0,TXT="""",J1=0 F  S J1=J1+1 Q:J1>$L(T)  S FLKV1=0 X:$E(T,J1)=KV&'FLKV X(10) X:$E(T,J1)=KV&($E(T,J1-1)'=KV)&FLKV X(11) X:FLKV X(12)"
 S X(3)="I OK S IND=$O(^msg(""I"",99999),-1)+1,^msg(""I"",IND,1)=TXT,^msg(""T"",TXT)=IND"
 S X(4)="S OK=0 F I2=1:1:$L(TXT) I $A($E(TXT,I2))>96 S OK=1 Q"
 S X(5)="S IND=^msg(""T"",TXT) S ^msg(""I"",IND,PROG)=KV_KV,^msg(""R"",PROG,IND)=KV_KV"
 S X(10)="S FLKV=1,FLKV1=1,J1=J1+1"
 S X(12)="S TXT=TXT_$E(T,J1)"
 S X(11)="S FLKV=0,FLKV2=0 X X(111) S TXT="""""
 S X(111)="I $L(TXT),TXT?.E1A.A.E X:'$D(^msg(""T"",TXT)) X(4),X(3) X:$D(^msg(""T"",TXT)) X(5)"
 ;
 X %chista S %SAY=" MESSAGES FILE CREATING " X %XMSGV
 S %FLG=0 K %DEV
 W !! N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ER"
Z U 0 W %ENG U $P:(ECHO:WRAP) K QUIT D INT^%RSEL I $D(QUIT) W:'%FLG !,"NO ROUTINES SELECTED" G EXIT
 S PROG=""
C F  S PROG=$O(^UTILITY($J,PROG)) Q:PROG=""  D
 .X "ZL @PROG F I=1:1 Q:$T(+I)=""""  S T=$T(+I) X X(1)"
 .W !?20,$J(PROG,8),"  - PROCESSED"
 G Z
EXIT Q
 ;
ER ;
 I $F($ZS,"<NOPGM>") W !,"ROUTINE: ",PROG," NOT FOUND." G C
 G Z
VID ;
 ;---- INPUT : T , OUTPUT - TXT
 S KV=""""
 S X(10)="S FLKV=1,FLKV1=1"
 S X(12)="S TXT=TXT_$E(T,J)"
 S X(11)="S FLKV=0,FLKV2=0 W !,TXT S TXT="""""
 N J S FLKV=0,FLKV2=0,TXT=""
 F J=1:1:$L(T) S J1=J,FLKV1=0 X:$E(T,J1)=KV&'FLKV X(10) I 'FLKV1 D
 .S:$E(T,J1)=KV&FLKV&($E(T,J1+1)=KV) J=J+1
 .X:$E(T,J1)=KV&($E(T,J1+1)'=KV)&FLKV X(11)
 .X:FLKV X(12) D DEB
 Q
DEB W !,"J=",J,"  ",$E(T,J),"  ","  FLKV=",FLKV,"  TXT=",TXT," ----- ",T H 1
 Q

%L1MSGED
%L1MSGED ; [ 09/16/97 10:47 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S STRING="" D KOT
Z S %XX=0,%YY=4 X %POSIC X:$G(%TO)'="PGUP"&($G(%TO)'="PGDW") %chiste S KV=""""
 S %SAY=" F10 - mebxiz `ll oey`x ,F9 - dpkez itl, F8 - zilbp`a, F6- zixara yetig " X %XMSGN
 D ZNMB K %L1GET
 I %TO="END" D  Q
 .S %GET=" 99 - zerced oerzl " D N^%L1GET Q:%S'=99
 .D ^%L1MSGLD
 I %TO="F6" D  G Z
 .S %GET=" my zlgzd ++23,60,HH,,,C#++15,H,I" D ^%L1GET I %S=""!($G(%TO)="END") Q
 .N N K ^TEMP($P)
 .S N="" F  S N=$O(^msg("I",N)) Q:N=""  I $G(^(N,1))[%S S ^TEMP($P,N)=""
 .K %L1 S MAC="^TEMP($P)",%L1("EU")=2,%L1("BE")=6
 .S %L1("TXT1")="$G(^msg(""I"",%NXN,1))<>60H\/%NXN<>4"
 .D ^%L1NU I FLAG="" S STRING=INDEX
 I %TO="F7" D  G Z
 .S MAC="^msg(""I"")"
 .N N K ^TEMP($P)
 .K %L1 S %L1("EU")=2,%L1("BE")=6
 .S %L1("TXT1")="$G(^msg(""I"",%NXN,1))<>60H\/%NXN<>4"
 .D ^%L1NU I FLAG="" S STRING=INDEX
 I %TO="F8" D  G Z
 .S %GET=" my zlgzd ++23,60,HH,,,C#++15,E,I" D ^%L1GET I %S=""!($G(%TO)="END") Q
 .N N K ^TEMP($P)
 .S N="" F  S N=$O(^msg("I",N)) Q:N=""  I $G(^(N,0))[%S S ^TEMP($P,N)=""
 .K %L1 S MAC="^TEMP($P)",%L1("EU")=2,%L1("BE")=6
 .S %L1("TXT1")="$G(^msg(""I"",%NXN,0))<>60\/%NXN<>4"
 .D ^%L1NU I FLAG="" S STRING=INDEX
 I %TO="F9" D  G Z
 .;;S %GET=" dpkez my ++23,60,HH,,,C#++8,E,I" D ^%L1GET I %S=""!($G(%TO)="END") Q
 .;;S PROG=%S
 .S MAC="^msg(""R"")"
 .K %L1 S %L1("EU")=3,%L1("BE")=4,%L1("BE",3)=8
 .S %L1("TXT1",2)="%NXN<>8"
 .S %L1("TXT1",3)="$G(^msg(""I"",%NXN,%XMSG(0)))<>60\/%NXN<>4"
 .D ^%L1NU I FLAG="" S STRING=INDEX
 I %TO="F10" D  G Z
 .N N S N=$G(STRING) F  S N=$O(^msg("I",N)) Q:N=""  I $D(^msg("I",N,1)),'$D(^msg("I",N,0)) S STRING=N Q
PGDN I %TO="PGDW" S (STRING,NMB)=$O(^msg("I",STRING)) D VIEW S %L1GET="" G Z
 I %TO="PGUP" S (STRING,NMB)=$O(^msg("I",STRING),-1) D VIEW S %L1GET="" G Z
 I %S'?1N.N W *7 G Z
 S (NMB,STRING)=%S D VSV S %SAY=" <F9> - zeipkeza drced bivdl " X %XMSGN
 K M
 S M(0)=$G(^msg("I",NMB,0))
 S M(1)=$G(^msg("I",NMB,1))
HB S %INV="" K %L1WH S %S=M(1) D VHB D  G:%TO="F9" HB G:%TO="PGUP"!(%TO="PGDW") PGDN G:%TO="END"!(%TO="UP") Z
 .I %TO="F9" D HZGP
 .N %TO K %INV S %L1WH="" D VHB K %L1WH
 S %S=$G(^msg("I",NMB,0))
EN S %INV="" K %L1WE S %S=M(0) D VEN D  G:%TO="F9" EN G:%TO="END"!(%TO="UP")!(%TO="PGUP") HB
 .I %TO="F9" D HZGP
 .N %TO K %INV S %L1WE="" D VEN K %L1WE
 K %L1GET
 D IS2^%L1GET I YES F I=0,1 I $L($G(M(I))) S ^msg("I",NMB,I)=M(I)
 G Z
VHB ;
 S %X1=2,%X2=77,%Y1=7,%Y2=6 D ^%L1WH
 I '$D(%L1GET),$L(%S) S M(1)=%S
 Q
VEN ;
 S %X1=2,%X2=77,%Y1=12,%Y2=6 D ^%L1WE
 I '$D(%L1GET),$L(%S) S M(0)=%S
 Q
VIEW ;
 N %TO,%L1GET,%S S %L1GET="",STRING=NMB D KOT,ZNMB,VSV
 Q
VSV ;
 Q:'$G(NMB)  N %TO
 I $D(^msg("I",NMB)) D  I $L(LISTP) S %SAY=LISTP_"++14,4,EE" X %XMSG
 .S LISTP="" S N="" F  S N=$O(^msg("I",NMB,N)) Q:N=""  I N'?1N.N S LISTP=LISTP_N_","
 .I $E(LISTP,$L(LISTP))="," S LISTP=$E(LISTP,1,$L(LISTP)-1)
 S %SAY=" : drced++5,78,HH" X %XMSG
 S %SAY="MESSAGE : ++10,1,EE" X %XMSG
 D TV^%L1RBUA(7,1,9,79)
 D TV^%L1RBUA(12,1,14,79)
 S %L1WH="",%L1WE="" N %INV
 S %S=$G(^msg("I",NMB,1)) D VHB
 S %S=$G(^msg("I",NMB,0)) D VEN
 Q
KOT N %INV X %chista S %SAY=" zerced oekcr / zbvd " X %XMSGV
 Q
ZNMB S %GET=" drced xtqn++3,70,HH#"_$G(STRING)_"++4,E,I" D ^%L1GET
 Q
HZGP ;
 K ^TMPS111($J) N I S I=0
 N N,J S N="A" F  S N=$O(^msg("I",NMB,N)) Q:N=""  I N'?1N.N D
 .X "ZR  ZL @N F J=1:1 Q:$T(+J)=""""  I $T(+J)[(KV_^msg(""I"",NMB,1)_KV)!($T(+J)[(""^m(""_NMB_"")"")) S I=I+1,^TMPS111($J,I)=""<<""_N_""+""_J_"">>"",I=I+1,^TMPS111($J,I)=$T(+J)"
 S %S2V("VGR")=16,%S2V("TXT1")=" <ESC> - z`vl ",%S2V("IND")=1
 S %S2V("PROG")="ED^%L1MSGED"
 D ^%S2VIEW N %TO S %L1GET="",STRING=NMB D VIEW K %L1GET
 Q
ED ;
 N INDEX
 S INDEX=$G(@$R) Q:$E(INDEX,1,2)'="<<"
 S %PR=$P($P(INDEX,"<<",2),"+"),U=+$P($P(INDEX,"<<",2),"+",2)
 S %L1ER="",%FLI=1 X ^%ERG(2) K %L1ER
 Q

%L1MSGLD
%L1MSGLD ; ^msg("I") --> ^m [ 09/17/97 10:07 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SAY=" MESSAGE SET LOADING " X %XMSGV
Z S %GET=" ENGLISH - 0, HEBREW -1 ++10,20,EE#++1,E,I++10" D ^%L1GET Q:%S=""!(%TO="END")
 D LD(%S) Q
 ;
LD(%S) K ^m
 S N="" F  S N=$O(^msg("I",N)) Q:N=""  I N?1N.N S ^m(N)=$G(^msg("I",N,%S),"*** <"_N_">")
 S %GET=$S(%S=1:"HEBREW",1:"ENGLISH")_" MESSAGE SET LOAD... <DONE>" D NE^%L1GET
 Q

%L1MSGPC
%L1MSGPC ; [ 04/25/99  4:41 PM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 D ^%L1C X %chista
 S %SAY=" WAIT ... ++10,35,EE" X %XMSG
 K ^TMPS111($J)
 S N="",I=0 F  S N=$O(^msg("I",N)) Q:N=""  D
 .S I=I+1,^TMPS111($J,I)=$J($G(^msg("I",N,1)),70)_"."_$J(N,3)
 .S ^TMPS111($J,I+1)=$J($G(^msg("I",N,0)),70)
 .S ^TMPS111($J,I+2)=""
 .s I=I+2
 S %S2V("PRINT")=""
 D ^%S2VIEW

%L1MSGUP
%L1MSGUP ; HEBREW TEXT -> ^m [ 31.05.04 18:02 ] [ 08/24/2000  6:23 PM ] [ 07/30/99  4:55 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
 ;
Z D ^%L1C U 0
 X %chista S %SAY=" PROGRAMM MESSAGES UPDATING " X %XMSGV
 W %ENG U $P:(ECHO:WRAP) S %FLG=0
 K QUIT D INT^%RSEL I $D(QUIT) W:'%FLG !,"NO ROUTINES SELECTED" G EXIT
 S PROG=""
C F  S PROG=$O(^UTILITY($J,PROG)) Q:PROG=""  D  Q:END
 .S END=0 X "K ^S000($P) ZL @PROG F I=1:1 Q:$T(+I)=""""  S T=$T(+I) S ^S000($P,I)=T"
 .F I=1:1 Q:'$D(^S000($P,I))  S A=^(I) D  Q:END
 ..S N="",UPD=0 F  S N=$O(^msg("R",PROG,N)) Q:N=""  S T=$G(^msg("I",N,1)) I $L(T) D  Q:END
 ...I $F(A,$$SOGR(T)) S UPD=1 D UPD
 ..I UPD W !,A,!,$TR($J("",60)," ","-") S ^S000($P,I)=A
 .Q:END
 .S PROG1=$C($A(PROG)+32)_$E(PROG,2,8)
 .W !,"SAVE "_PROG1_" ? (Y/N) <Y>" R SV Q:"YyFkh"'[SV
 .W "   - SAVED",!
 .X "ZR  X ""F I=1:1 Q:'$D(^S000($P,I))  ZI ^S000($P,I)"" ZS @PROG1"
 G Z
EXIT K ^S000($P) Q
 ;
UPD ;
 S P=0
UPDC ;
 S P=$F(A,""""_$$SOGR(T)_"""",P) I 'P Q
 S T1="^m("_N_")" S UPD=1
 W !,"<< "_PROG_"+"_(I-1)_" >>",%HBR,!,A,!
 S B=$E(A,1,P-3-$L($$SOGR(T)))_T1_$E(A,P,255)
 W B
 R !,"UPDATE ? (Y/N/.) <Y> ",OTB
 S:OTB="" OTB="Y" I OTB="."!(OTB="Q")!(OTB="^")!(OTB="q")!(OTB="u") S END=1 Q
 I OTB'="Y",OTB'="y",OTB'="h",OTB'="k" G UPDC
 S A=B S P=P-$L($$SOGR(T))+$L(T1)+1 G UPDC
 Q
SOGR(T) ;
 N J,T1 S T1="" F J=1:1:$L(T) D
 .I $E(T,J)="""" S T1=T1_"""""" Q
 .S T1=T1_$E(T,J)
 Q T1

%L1MSMOP
%MSMOPS ;DJM;MSM EMULATED FUNCTIONS; [ 12/27/98 10:39 AM ] [ 12/16/98  9:22 AM ] [ 11/11/98  5:42 AM ]
 ;Copyright Micronetics Design Corp. @1992
 ;
LICINFO() S %AAA=$$^%L1ZOS(2,"LICENSE.MSM") Q "212134^4^8^16^57555^16^16^16^^MFTU^RESHED"
 ;;LICINFO() Q "1212^32^8^9^58012^0^2^1^^LEV^RESHED^" ;
ZH(job) ;cputime^log DB reads^phys DB reads^logical DB writes^InChars^OutChars

%L1MUMPS
%L1MUMPS ; [ 04/20/92  4:46 PM ] [
 O 51:("MSM0.EXE")
 O 54:("MSM1.EXE":"W")
 S I=0,J=0,OK=0,B="" F  U 51 R *A Q:$ZC<0  D  I OK,$L(B) U 54 W B S B="",OK=0,I=0
 .I $C(A)'="M" S B=$C(A),OK=1,J=J+1 U 0 W:'(J#1000) "." Q
 .S B=$C(A) F I=1:1:9 U 51 R *A Q:$ZC<0  S B=B_$C(A),J=J+1
 .I B="MSM-PC/386" S B="MUMPS L-PC"
 .S OK=1 U 0 I '(J#1000) W "."
 I $L(B) U 54 W B
 C 51,54

%L1MYADR
%L1MYADR(STAM) ; [ 02.12.05 16:30 ] [
 N ZR S ZR=$ZROU
 N ZG S ZG=$ZGBLDIR
 S $ZROU=^UCI("MLR")
 S $ZGBLDIR=^UCI("MLG")
 N ADDR S ADDR=$$IP^L2YZCH($$^%L1MRK)
 S $ZROU=ZR
 S $ZGBLDIR=ZG
 Q ADDR

%L1N2W
%L1N2W(%NMB) ; INTEGER NUMBER TO WORD     [ 10.06.01  6:51 PM ] [ 30.05.01  2:16 PM ] [ 07.05.01  9:55 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%NMB) D ^%L1C
 F I=1:1 S T=$T(N1+I) Q:T=""  Q:T["Q  ;"  S N1($P(T,";",2))=$P(T,";",3),N11($P(T,";",2))=$P(T,";",4)
 F I=1:1 S T=$T(N2+I) Q:T=""  Q:T["Q  ;"  S N2($P(T,";",2))=$P(T,";",3)
 F I=1:1 S T=$T(N3+I) Q:T=""  Q:T["Q  ;"  S N3($P(T,";",2))=$P(T,";",3)
 F I=1:1 S T=$T(N5+I) Q:T=""  Q:T["Q  ;"  S N5($P(T,";",2))=$P(T,";",3)
 I $L(%NMB)=1 Q $G(N1(%NMB))
 I $L(%NMB)=2 Q $$M2(%NMB)
 I $L(%NMB)=3 Q $$M2($E(%NMB,2,3))_" "_$$M3($E(%NMB))
 I $L(%NMB)=4 Q $$M2($E(%NMB,3,4))_" "_$$M3($E(%NMB,2))_" "_$$M4($E(%NMB))
 I $L(%NMB)=5 Q $$M2($E(%NMB,4,5))_" "_$$M3($E(%NMB,3))_" "_$S($E(%NMB,1,2)="10":"mitl` zxyr",1:"sl` "_$$M2($E(%NMB,1,2)))
 I $L(%NMB)=6 Q $$M2($E(%NMB,5,6))_" "_$$M3($E(%NMB,4))_" "_"sl` "_$$M2($E(%NMB,2,3))_$S($E(%NMB,2,3)=10:"e",1:"")_" "_$$M3($E(%NMB))
 Q ""
M2(%NMB) ;
 I $E(%NMB)=0 Q:$E(%NMB,2)=0 ""  S %O=N1($E(%NMB,2))_"e" Q %O
 I $E(%NMB)=1 S %O=N2($E(%NMB,1,2)) Q %O
 I $E(%NMB,2)=0 S %O=N3($E(%NMB,1)) Q %O
 S %O=$G(N1($E(%NMB,2)))_"e "_$G(N3($E(%NMB)))
 Q %O
M3(%NMB) ;
 I $E(%NMB)=0 Q ""
 I $E(%NMB)=1 Q "d`n"
 I $E(%NMB)=2 Q "miiz`n"
 Q "ze`n "_N11($E(%NMB))
M4(%NMB) ;
 Q N5($E(%NMB))
N1 ;
 ;1;cg`;zg`
 ;2;miipy;miizy;
 ;3;dyely;yely;
 ;4;drax`;rax`;
 ;5;dying;yng;
 ;6;dyy;yy;
 ;7;dray;ray;
 ;8;dpeny;dpeny;
 ;9;dryz;ryz;
 Q  ;
N2 ;
 ;10;dxyr;xyr;
 ;11;xyr cg`;dxyr cg`;
 ;12;xyr mipy;dxyr mizy;
 ;13;xyr dyely;dxyr yely;
 ;14;xyr drax`;dxyr rax`;
 ;15;xyr dying;dxyr yng;
 ;16;xyr dyy;dxyr yy;
 ;17;xyr dray;dxyr ray;
 ;18;xyr dpeny;dxyr dpeny;
 ;19;xyr dryz;dxyr ryz;
 Q  ;
N3 ;
 ;2;mixyr;
 ;3;miyely;
 ;4;mirax`;
 ;5;miying;
 ;6;miyiy
 ;7;miray;
 ;8;mipeny;
 ;9;miryz;
 Q  ;
N4 ;
 ;1;d`n;
 ;2;miiz`n;
 Q  ;
N5 ;
 ;1;sl`;
 ;2;miitl`;
 ;3;mitl` zyely;
 ;4;mitl` zrax`;
 ;5;mitl` zyng;
 ;6;mitl` zyy;
 ;7;mitl` zray;
 ;8;mitl` zpeny;
 ;9;mitl` zryz;
 Q  ;

%L1NH
%L1NH ;HELP %L1NU [ 12/27/97  1:32 PM ] [ 07/05/96  4:59 AM ]
 ;INPUT PARAMETERS: NAME GLOBAL WITH INDEX (MAC)
 ;                    %L1("EU") - LAST LEVEL (DEFAULT - 99)
 ;                               = 98
 ;                    %L1("REV") - SHOW INDEXES IN REVERS
 ;                    %L1("PRINT") - ASK : "PRINT - 99"
 ;                            %L1NPRNT("SM") - SHIFT FROM LEFT WHEN PRINT
 ;                    %L1("DO") - MUMPS COMMAND FOR EXECUTION AFTER CHOICE
 ;                    %L1("DO",VARIAB)=... - PARAMETERS FOR %L1("DO")
 ;                    %L1("IND") - CURSOR NA STROKE %L1("IND") ;
 ;                    %L1("BE",%UROV) - WINDOW TOP (DFLT - 0)
 ;                    %L1("LEFT") - WINDOW LEFT BOUNDARY (DFLT - CENTR)
 ;                    %L1("WD") - WINDOW WIDTH
 ;
 ;                    %L1("TX",%UROV)- TEXT IN BEG LINE( ----------  )
 ;                    %L1("TXT1",%UROV)- TEXT OF LINE $P(...)<>4,1,H\/....
 ;                    %L1("TXT",%UROV) - COMMAND MUMPS FOR TYPE TEXT
 ;
 ;                    %L1("T1",%UROV) - HEADER TEXT
 ;                    %L1("T2",%UROV) - COMMAND FOR TYPE HEADER
 ;                    %L1("T3",%UROV) - COMMAND FOR TYPE HEADER (PRINT)
 ;
 ;                    %L1("CD") - CODE TYPE FLAG (NO DEF-LAST. LEVEL.; "" - IND1+IND2+...," " - NO TYPE IND.,"I" - INDEX ONLY)
 ;                    %L1("SS",%UROV)- DELIMITER
 ;                    %L1("NR",%UROV) - NUMBER POLE SS ( ---""---   - 1)
 ;
 ;                    %L1("SET",%UROV) - COMMAND MUMPS FOR INIT VALUE
 ;                    %L1("US0",%UROV) - ---"---
 ;                    %L1("US",%UROV) - ---"--- FOR CHOOSE MENU (%NXN - INDEX,%NXS - DATA
 ;                    %L1("US1",%UROV) - ---"---,AFTER INPUT NUMBER IN MENU
 ;                    %L1("FIRST",%UROV) - START VALUE FOR MENU
 ;                    %L1("LAST",%UROV)  - USL END MENU
 ;
 ;                    %L1("BU",%UROV) - NUMBER START LEVEL
 ;                    %L1(1)         -  IF 1 NOAD IN MENU -> NEXT LEVEL
 ;                    %L1(",")       - MUCH NUMBERS FOR CHOOSE
 ;                    %L1("NOM",%UROV) - IF DEF,NO TYPE LINES NUMBERS
 ;                    %L1("ND") - IF DEF - NO PRINT "NO DATA"
 ;                    %L1("LOOK") - VIEW ONLY
 ;                    %L1NPRNT("PORT") - PORT NUMBER FOR PRINTER
 ;
 ;OUTPUT   - FULL REF (MAC)
 ;           OR ARRAY INDEX %MM
 ;           INDEX ( LAST IN MAC)
 ;           FLAG  (FLAG)

%L1NMB
%L1NMB(STAM) ; [ 27.03.08 07:53 ] [ 26.03.08 16:07 ] [ 21.08.07 07:54 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%NMB,%BEG,screen,%L1NMB,%MBG,%PRKB,%ZMSL) D ^%L1C
 U $P:(NOECHO:NOWRAP:CENABLE:CTRAP=$C(3))
 K %ZMSL("NMB")
 S YY0=$G(%L1NMB("ZY"),$Y) S:'$D(%PRKB) %PRKB=0
 S %W=0 I $G(%PRKB) S %W=.1
BG00 S (%C0,%C00)=""
BG0 ;
BG ;;R *%C:0 S %PRKB=1 G:$T 27 E  H %W R *%C:0 S:$T %PRKB=1 G:$T 27
 S %L1NMB("X0")=0,%L1NMB("Y0")=0,%L1NMB("X2")=80,%L1NMB("Y2")=25
 I $G(%BEG)=1 D GET^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2) S %BEG=2
 I $D(^kb($P)),'$D(%L1NMB("MTXT")) D IN1 W $C(27,91),"?25l" D VIEWRB G READ
 D IN
 D VIEWRB
 S %TO="",%KB=0
 S LINE=%NMB-.1\COLX+1,COL=%NMB-.1#COLX+.1
 W $C(27,91),"?25l"
 I LINE,COL D TXT($G(MTXT(LINE,COL)),LINE,COL,1)
READ0 S LINE1=LINE,COL1=COL
READ ;
 ;;D ^%L1MSGBR
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 I %MOUSE S %CRD=$$REPORT^%L2MOUSE($G(%PORT),%XMIN,%XMAX,%YMIN,%YMAX) I %CRD,%TO'="KB" D  G:%KB=2 BG G:'$D(MTXT(LINE,COL)) READ1 G:$D(MTXT(LINE,COL,"DIS")) READ1 S %TO=$G(MTXT(LINE,COL,"C")) G END
 .S %PRKB=0
 .S %XX=$P(%CRD,",",1),%YY=$P(%CRD,",",2)
 .S COL=%XX-X0+$G(^SMXX(%L3MYDVN))\STEPX+1,LINE=%YY-Y0+$G(^SMXY(%L3MYDVN))\STEPY+1
 .I $D(MTXT(LINE,COL,"DIS")) Q
 .I '$D(MTXT(LINE,COL)),$D(^kb($P)) D  Q
 ..S ^kb($P)=%XX_"\"_%YY,%KB=2 D PUT
 .I $G(COL1),$G(LINE1),$D(MTXT(LINE1,COL1)) D TXT($G(MTXT(LINE1,COL1)),LINE1,COL1,0)
 .I $G(LINE),$G(COL),$D(MTXT(LINE,COL)) D TXT($G(MTXT(LINE,COL)),LINE,COL,1)
 .S LINE1=LINE,COL1=COL
READ1 I %TO="KB" S %TO=""
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 U $P:(NOECHO:NOWRAP) R *%C:0 E  H .02 R *%C:0 G:'$T READ
 I %C'=13,%C'=10 S %PRKB=1
 ;;I %C=32!(%C>47&(%C<58))!(%C>96&(%C<122)) S %PRKB=1
27 I %C=27 D DELAY R *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)) X "N %CC F  R *%CC:0 E  Q" G:$T(@%UPRCOD(C))="" TO K %FLL G @%UPRCOD(C)
 .S C="" Q:%C1=27  D DELAY R *%C2:%WAIT Q:%C2=27  S:%C2>0 C=%C1_%C2 Q:%C2<0  Q:$D(%UPRCOD(C))
 .R *%C3:%WAIT Q:%C3=27  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))  Q:%C3<0
 .R *%C4:%WAIT Q:%C4=27  S:%C4>0 C=C_%C4
 I $G(%C1)=27 S %C=27 K %C1 G 27
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 I %C=27 G 27
 ;;I %C=27 G ESC
 I %C=0 S %TO="" D DELAY R *%C1:%WAIT D DELAY R *%C2:%WAIT I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<121))!(%C1>129):"0"_%C1,1:60+%C1)
 I %C=13!(%C=10) S %TO=$G(MTXT(LINE,COL,"C"),"ENTER") G END
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
BD ;
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))="" S %TO=%UPRCOD(%C) G END
 I $C(%C)="=" S %TO=$C(%C) G END
 S %TO=$TR($C(%C),%TES2,%TES1)
 I $C(%C)="." S %TO=$C(%C)
 I $C(%C)="/" S %TO=$C(%C)
 G END
TO K %FLL S %TO=%UPRCOD(C) G END
TXT(%FRAZA,LINE,COL,INV) ;
 S:COL<1 COL=1 S:COL>COLX COL=COLX
 S:LINE<1 LINE=1 S:LINE>COLY LINE=COLY
 N %XX,%YY,%DLG,%I,%CHAST
 S %FRAZA=$TR($TR(%FRAZA,%TES1,%TES2),%TEN,%THB)
 I $D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("HIST")) S %DLG=STEPX-2 D DELG^%L1SCPC
 I '$G(INV) X %LIGHT
 I $G(INV),'$D(MTXT(LINE,COL,"DIS")) W %CV("WB"),%CV("RF")
 I '$G(INV) W %L1RBCL,%CV("YF") I $D(MTXT(LINE,COL,"DIS")) W %CV("RF")
 S %YY=Y0+(LINE-1*STEPY)
 S %XX=X0+(COL-1*STEPX)+1
 I '$D(%L1NMB("HZM")),'$D(%L1NMB("LINE")),'$D(%L1NMB("HIST")) S:$L(%FRAZA)>4 %XX=%XX-1 X %POSIC W $S($L(%FRAZA)<3:" "_%FRAZA_" ",1:%FRAZA)
 I $D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("HIST")) N %I F %I=1:1 Q:'$D(%CHAST(1,%I))  D
 .I %I=2,$E(%CHAST(1,%I))=" ",$E(%CHAST(1,1),$L(%CHAST(1,1)))=" " S %CHAST(1,%I)=$E(%CHAST(1,%I),2,255)_" "
 .X %POSIC W %CHAST(1,%I) S %YY=%YY+1
 X %XCL Q
VNIZ ;
 D CLCDN
 S:'$D(COLY) COLY=1
 I '$D(LINE) S %TO="VNIZ" G END
 I LINE+1>COLY S %TO="VNIZ" G END
 I COLY=1 S %TO="VNIZ" G END
 S %PRKB=0
 I '$D(MTXT(LINE+1,COL)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S LINE=LINE+1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 S LINE1=LINE,COL1=COL
 G READ1
VVERX ;
 D CLCDN
 I '$D(COLY) S COLY=1
 I '$D(LINE) S %TO="VVERX" G END
 I LINE<2 S %TO="VVERX" G END
 I COLY=1 S %TO="VVERX" G END
 S %PRKB=0
 I '$D(MTXT(LINE-1,COL)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S LINE=LINE-1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 S LINE1=LINE,COL1=COL
 G READ1
PRAVO ;
 I '$D(COLX) S COLX=1
 I COLX=1 S %TO="PRAVO" G END
 I '$D(COL) S %TO="PRAVO" G END
 I COL+1>COLX S %TO="PRAVO" G END
 D CLCDN
 S %PRKB=0
 I '$D(MTXT(LINE,COL+1)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S COL=COL+1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 G READ0
LEVO ;
 I '$D(COLX) S COLX=1
 I '$D(COL) S %TO="LEVO" G END
 I COL<2 S %TO="LEVO" G END
 I COLX=1 S %TO="LEVO" G END
 D CLCDN
 S %PRKB=0
 I '$D(MTXT(LINE,COL-1)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S COL=COL-1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 G READ0
 ;ENTER S %TO="" G END
END ;
 I '$D(%TO) S %TO=""
 ;
 ;;I %TO="SHIFT" D  G READ
 .x %chista D PUT
 .I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=1 D IN,VIEWRB S %XX=%L1NMB("ZX"),%YY=%L1NMB("ZY") X %POSIC D PC^%ZMSL Q
 .K %L1NMB("ALB") D IN,VIEWRB S %XX=%L1NMB("ZX"),%YY=%L1NMB("ZY") X %POSIC D PC^%ZMSL Q
 ;
 I %TO="KB" S %KB='%KB D  G READ
 .I %KB D  Q
 ..X %chista D PUT
 ..D IN1,VIEWRB
 ..S ^kb($P)=""
 .; - '%KB
 .x %chista D PUT
 .D IN,VIEWRB
 .K ^kb($P)
 ;
 I $G(%C2)=27!($G(%C3)=27)!($G(%C4)=27) S C2=27 K %C2,%C3,%C4
 U $P:(NOECHO:NOWRAP)
 W $C(27,91),"?25h"
 I $D(LINE),$D(COLX),$D(COL) S %NMB=LINE-1*COLX+COL ;;,%ZMSL("NMB")=%NMB
 I $G(%L1NMB("ALB"))'=1,%TO="," Q %TO
 I $G(%L1NMB("ALB"))'=1,%TO="'" Q %TO
 I %TO'=".",%TO'="/" Q $TR(%TO,%TES1,%TES2)
 I %TO="." Q "."
 I %TO="/" Q "/"
ESC S %TO="ESC" G END
 ;
 Q
VIEWRB ;
 I $D(%L1NMB("MTXT")) D VIEWMTXT Q
 N I,J
 F I=Y0:STEPY:Y2-STEPY F J=X0:STEPX:X2-STEPX D  D TV^%L1RBUA(I,J,I+STEPY,J+STEPX)
 .W %LIGHT1 W %CV("CF")
 S I=0
 F I=1:1:COLY F J=1:1:COLX D
 .D TXT($G(MTXT(I,J)),I,J,0)
 .I $G(MTXT(I,J,"C"))=$G(MTXT(I+1,J,"C")) D
 ..W %CV("MB") W %LIGHT1 W %CV("CF")
 ..S %YY=Y0+(STEPY*I-1),%XX=X0+(STEPX*(J-1)-1) X %POSIC D VLIN W $J("",STEPX-1) D VLIN
 Q
VLIN ;
 I %TYPCRT["PC" W $C(179) Q
 I %TYPCRT["VT5" W $C(27)_"(0"_$C(120)_$C(27),"(B" Q
 W "|"
 Q
IN ;
 S %L1RBCL=%CV("MB")
 S %PREV=""
 S STEPY=2,STEPX=6
 S COLY=3,COLX=10
 I $D(%L1NMB("ALB")) S COLY=5,STEPY=2
 I $D(%L1NMB("HZM")) S COLY=1,STEPX=8,STEPY=3
 I $D(%L1NMB("LINE")) S COLY=1,STEPX=8,STEPY=3
 I $D(%L1NMB("HIST")) S COLY=1,STEPX=10,STEPY=3
 I $D(%L1NMB("VIEW")) S COLY=1,STEPX=12,STEPY=2
 S:'$D(COL1) COL1=1 S:'$D(LINE1) LINE1=1 S:'$D(%NMB) %NMB=1
 S Y0=$S($G(YY0)>12:2,1:14)
 I $D(%L1NMB("ALB")),$D(%L1NMB("ALB","Y0")) S Y0=%L1NMB("ALB","Y0")
 S X0=1
 S Y2=Y0+(STEPY*COLY),X2=X0+(STEPX*COLX)
 N %L1INIT S %L1INIT=""
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 ;
 I $D(%L1NMB("VIEW")) K MTXT D  Q
 .S Y0=23,X0=8 S MTXT("MIN")=1
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT6+I),T1=$T(TEXT7+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("HZM")) K MTXT D  Q
 .S Y0=22,X0=0 S MTXT(1,1,"DEF")=""
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT4+I),T1=$T(TEXT5+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("LINE")) K MTXT D  Q
 .S Y0=21
 .N I,J,T,T1 S I=1,T=$T(TEXT8+I),T1=$T(TEXT9+I) D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .I '$D(%MBG("MIUN")) S MTXT(1,8,"DIS")=""
 .I '$D(%MBG("MOVE")) S MTXT(1,9,"DIS")=""
 .I $D(%MBG("DELAS")) S MTXT(1,6,"DIS")=""
 .S I=2
 .S X0=80-(($L(T,";")-2)*(STEPX))\2
 .D PRMXY
 ;
 I $D(%L1NMB("HIST")) K MTXT D  Q
 .S Y0=22,X0=5
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT10+I),T1=$T(TEXT11+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $G(%L1NMB("ALB"))=1 K MTXT D  S:'$D(%NMB)!($G(%NMB)=1)!$G(%PRKB) %NMB=12 Q
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT2+I),T1=$T(TEXT3+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $G(%L1NMB("ALB"))=2 K MTXT D  Q
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT12+I),T1=$T(TEXT13+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("MTXT")) K COLX,COLY,STEPX,STEPY Q
 ; --------------- NORMAL
 K MTXT D  S %NMB=8
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT+I),T1=$T(TEXT1+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 I $D(%L1NMB("=")) S %NMB=1 K %L1NMB("=")
 Q
IN1 ;
 S %PREV="",%TO="",%KB=1
 S %L1RBCL=%CV("MB")
 N %L1INIT S %L1INIT=""
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 S STEPY=3,STEPX=6
 S COLY=1,COLX=1,(COL,LINE,COL1,LINE1)=1,%NMB=1
 S Y0=$S($Y>5:1,1:21),X0=1
 I $P($G(^kb($P)),"\") S X0=$P($G(^kb($P)),"\")-2 S:X0<1 X0=1 S:X0>74 X0=74
 I $P($G(^kb($P)),"\",2) S Y0=$P($G(^kb($P)),"\",2)-2 S:Y0>21 Y0=21 S:Y0<1 Y0=1
 S Y2=Y0+(STEPY*COLY),X2=X0+(STEPX*COLX)
 K MTXT S MTXT(1,1)="KB",MTXT(1,1,"C")="KB"
 Q
VIEWMTXT ;
 N I,J
 S I="" F  S I=$O(MTXT(I)) Q:I=""  I I?1N.N
 .S J="" F  S J=$O(MTXT(I,J)) Q:J=""  I J?1N.N D
 ..S %X1=MTXT(I,J,"X")
 ..S %Y1=MTXT(I,J,"Y")
 ..S %X2=%X1+MTXT(I,J,"SX")
 ..S %Y2=%Y1+MTXT(I,J,"SY")
 ..D TV^%L1RBUA(%Y1,%X1,%Y2,%X2)
 Q
CLCDN Q
DELAY Q
TEXT ;
 ;;ESC;DEL;UP;DN;POPUP;F4;ENT;
 ;;1;2;3;F5;F6;F7;ER ;
 ;=;4;5;6;F8;F9;F10;DELL;
 ;;7;8;9;F1;F2;HOME;END;
 ;;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT1 ;
 ;=;ESC;DEL;VVERX;VNIZ;VNIZE;IND;ENTER;
 ;=;1;2;3;ADDL;DELL;COR;ENTER;
 ;=;4;5;6;FIND;SAVE;REST;MOD;
 ;=;7;8;9;CHISTS;CHISTE;HOME;ENDS;
 ;=;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT0 ;
 ;ESC;=;DEL;UP;DN;POPUP;ENT;
 ;1;2;3;F5;F6;F7;ENT;
 ;4;5;6;F8;F9;F10;DELL;
 ;7;8;9;F1;F2;HOME;END;
 ;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT01 ;
 ;ESC;=;DEL;VVERX;VNIZ;VNIZE;ENTER;
 ;1;2;3;ADDL;DELL;COR;ENTER;
 ;4;5;6;FIND;SAVE;REST;MOD;
 ;7;8;9;CHISTS;CHISTE;HOME;ENDS;
 ;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT2 ;
 ;ESC;f;e;d;c;b;a;`;UP;DN;POPUP;ENT;
 ;m;n;l;j;k;i;h;g;F6;F7;DELL;SHIFT;
 ;u;v;s;t;r;q;o;p;+;F9;<-;->;
 ;z;y;x;w;.;,; ;-;=;F10;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT3 ;
 ;ESC;f;e;d;c;b;a;`;VVERX;VNIZ;VNIZE;;
 ;m;n;l;j;k;i;h;g;DELL;COR;MOD;SHIFT;
 ;u;v;s;t;r;q;o;p;+;SAVE;LEVO;PRAVO;
 ;z;y;x;w;.;,; ;-;=;REST;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT4 ;
 ;dqtcde d`ivi;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;hixt yetig;dpnfd zbvd ;dxey lehia;zepey ;mihixt ztqed;
 Q  ;
TEXT5 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;DELL;CHISTE;MOD;VNIZE;FIND;
 Q  ;
TEXT6 ;
 ;   d`ivi;zncew dxey;d`ad dxey; mcew sc ;  `ad sc;
 Q  ;
TEXT7 ;
 ;ESC;VVERX;VNIZ;PGUP;PGDN;
 Q  ;
TEXT8 ;
 ;d`ivi ;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;dxey lehia;zepey ;oein  ;dxey qpkd;
 Q  ;
TEXT9 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;MOD;VNIZE;FIND;INS;
 Q  ;
TEXT10 ;
 ;d`ivi ;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;zepey ; dpnfd zbvd ;
 Q  ;
TEXT11 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;VNIZE;SAVE;
 Q  ;
TEXT12 ;
 ;ESC;A;B;C;D;E;F;G;UP;DN;POPUP;ENT;
 ;H;I;J;K;L;M;N;O;F6;F7;DELL;SHIFT;
 ;P;Q;R;S;T;U;V;W;F8;F9;<-;->;
 ;X;Y;Z;%;.;,; ;-;=;+;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT13 ;
 ;ESC;A;B;C;D;E;F;G;VVERX;VNIZ;VNIZE;;
 ;H;I;J;K;L;M;N;O;DELL;COR;MOD;SHIFT;
 ;P;Q;R;S;T;U;V;W;FIND;SAVE;LEVO;PRAVO;
 ;X;Y;Z;%;.;,; ;-;=;+;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
PUT ;
 I $D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) D
 .D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
PRMXY ;
 S COLX=J,COLY=I-1,X2=X0+(COLX*STEPX),Y2=Y0+(COLY*STEPY)
 Q

%L1NMB0
%L1NMB(STAM) ; [ 05.10.06 19:30 ] [ 26.07.06 15:24 ] [ 16.05.06 08:28 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%NMB,%BEG,screen,%L1NMB,%MBG,%PRKB,%ZMSL) D ^%L1C
 U $P:(NOECHO:NOWRAP:CENABLE:CTRAP=$C(3))
 K %ZMSL("NMB")
 S YY0=$G(%L1NMB("ZY"),$Y) S:'$D(%PRKB) %PRKB=0
 S %W=0 I $G(%PRKB) S %W=.1
BG00 S (%C0,%C00)=""
BG0 ;
BG ;;R *%C:0 S %PRKB=1 G:$T 27 E  H %W R *%C:0 S:$T %PRKB=1 G:$T 27
 S %L1NMB("X0")=0,%L1NMB("Y0")=0,%L1NMB("X2")=80,%L1NMB("Y2")=25
 I $G(%BEG)=1 D GET^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2) S %BEG=2
 I $D(^kb($P)) D IN1 W $C(27,91),"?25l" D VIEWRB G READ
 D IN
 D VIEWRB
 S %TO="",%KB=0
 S LINE=%NMB-.1\COLX+1,COL=%NMB-.1#COLX+.1
 W $C(27,91),"?25l"
 I LINE,COL D TXT($G(MTXT(LINE,COL)),LINE,COL,1)
READ0 S LINE1=LINE,COL1=COL
READ ;
 D ^%L1MSGBR
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 I %MOUSE S %CRD=$$REPORT^%L2MOUSE($G(%PORT),%XMIN,%XMAX,%YMIN,%YMAX) I %CRD,%TO'="KB" D  G:%KB=2 BG G:'$D(MTXT(LINE,COL)) READ1 G:$D(MTXT(LINE,COL,"DIS")) READ1 S %TO=$G(MTXT(LINE,COL,"C")) G END
 .S %PRKB=0
 .S %XX=$P(%CRD,",",1),%YY=$P(%CRD,",",2)
 .S COL=%XX-X0\STEPX+1,LINE=%YY-Y0+$G(^SMXY(%L3MYDVN))\STEPY+1
 .I $D(MTXT(LINE,COL,"DIS")) Q
 .I '$D(MTXT(LINE,COL)),$D(^kb($P)) D  Q
 ..S ^kb($P)=%XX_"\"_%YY,%KB=2 D PUT
 .I $G(COL1),$G(LINE1),$D(MTXT(LINE1,COL1)) D TXT($G(MTXT(LINE1,COL1)),LINE1,COL1,0)
 .I $G(LINE),$G(COL),$D(MTXT(LINE,COL)) D TXT($G(MTXT(LINE,COL)),LINE,COL,1)
 .S LINE1=LINE,COL1=COL
READ1 I %TO="KB" S %TO=""
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 U $P:(NOECHO:NOWRAP) R *%C:0 E  H .02 R *%C:0 G:'$T READ
 ;;I $C(%C)="^" R *%C1:0 I  F  R *%C1 E  Q
 I %C'=13,%C'=10 S %PRKB=1
27 I %C=27 D DELAY R *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)) X "N %CC F  R *%CC:0 E  Q" G:$T(@%UPRCOD(C))="" TO K %FLL G @%UPRCOD(C)
 .S C="" Q:%C1=27  D DELAY R *%C2:%WAIT Q:%C2=27  S:%C2>0 C=%C1_%C2 Q:%C2<0  Q:$D(%UPRCOD(C))
 .R *%C3:%WAIT Q:%C3=27  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))  Q:%C3<0
 .R *%C4:%WAIT Q:%C4=27  S:%C4>0 C=C_%C4
 I $G(%C1)=27 S %C=27 K %C1 G 27
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 I %C=27 G 27
 ;;I %C=27 G ESC
 I %C=0 S %TO="" D DELAY R *%C1:%WAIT D DELAY R *%C2:%WAIT I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<121))!(%C1>129):"0"_%C1,1:60+%C1)
 I %C=13!(%C=10) S %TO=$G(MTXT(LINE,COL,"C"),"ENTER") G END
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
BD ;
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))="" S %TO=%UPRCOD(%C) G END
 I $C(%C)="=" S %TO=$C(%C) G END
 S %TO=$TR($C(%C),%TES2,%TES1)
 I $C(%C)="." S %TO=$C(%C)
 I $C(%C)="/" S %TO=$C(%C)
 G END
TO K %FLL S %TO=%UPRCOD(C) G END
TXT(%FRAZA,LINE,COL,INV) ;
 S:COL<1 COL=1 S:COL>COLX COL=COLX
 S:LINE<1 LINE=1 S:LINE>COLY LINE=COLY
 N %XX,%YY,%DLG,%I,%CHAST
 S %FRAZA=$TR($TR(%FRAZA,%TES1,%TES2),%TEN,%THB)
 I $D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("HIST")) S %DLG=STEPX-2 D DELG^%L1SCPC
 I '$G(INV) X %LIGHT
 I $G(INV),'$D(MTXT(LINE,COL,"DIS")) W %CV("WB"),%CV("RF")
 I '$G(INV) W %L1RBCL,%CV("YF") I $D(MTXT(LINE,COL,"DIS")) W %CV("RF")
 S %YY=Y0+(LINE-1*STEPY)
 S %XX=X0+(COL-1*STEPX)+1
 I '$D(%L1NMB("HZM")),'$D(%L1NMB("LINE")),'$D(%L1NMB("HIST")) S:$L(%FRAZA)>4 %XX=%XX-1 X %POSIC W $S($L(%FRAZA)<3:" "_%FRAZA_" ",1:%FRAZA)
 I $D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("HIST")) N %I F %I=1:1 Q:'$D(%CHAST(1,%I))  D
 .I %I=2,$E(%CHAST(1,%I))=" ",$E(%CHAST(1,1),$L(%CHAST(1,1)))=" " S %CHAST(1,%I)=$E(%CHAST(1,%I),2,255)_" "
 .X %POSIC W %CHAST(1,%I) S %YY=%YY+1
 X %XCL Q
VNIZ ;
 D CLCDN
 S:'$D(COLY) COLY=1
 I '$D(LINE) S %TO="VNIZ" G END
 I LINE+1>COLY S %TO="VNIZ" G END
 I COLY=1 S %TO="VNIZ" G END
 S %PRKB=0
 I '$D(MTXT(LINE+1,COL)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S LINE=LINE+1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 S LINE1=LINE,COL1=COL
 G READ1
VVERX ;
 D CLCDN
 I '$D(COLY) S COLY=1
 I '$D(LINE) S %TO="VVERX" G END
 I LINE<2 S %TO="VVERX" G END
 I COLY=1 S %TO="VVERX" G END
 S %PRKB=0
 I '$D(MTXT(LINE-1,COL)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S LINE=LINE-1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 S LINE1=LINE,COL1=COL
 G READ1
PRAVO ;
 I '$D(COLX) S COLX=1
 I COLX=1 S %TO="PRAVO" G END
 I '$D(COL) S %TO="PRAVO" G END
 I COL+1>COLX S %TO="PRAVO" G END
 D CLCDN
 S %PRKB=0
 I '$D(MTXT(LINE,COL+1)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S COL=COL+1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 G READ0
LEVO ;
 I '$D(COLX) S COLX=1
 I '$D(COL) S %TO="LEVO" G END
 I COL<2 S %TO="LEVO" G END
 I COLX=1 S %TO="LEVO" G END
 D CLCDN
 S %PRKB=0
 I '$D(MTXT(LINE,COL-1)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S COL=COL-1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 G READ0
 ;ENTER S %TO="" G END
END ;
 I '$D(%TO) S %TO=""
 ;
 ;;I %TO="SHIFT" D  G READ
 .x %chista D PUT
 .I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=1 D IN,VIEWRB S %XX=%L1NMB("ZX"),%YY=%L1NMB("ZY") X %POSIC D PC^%ZMSL Q
 .K %L1NMB("ALB") D IN,VIEWRB S %XX=%L1NMB("ZX"),%YY=%L1NMB("ZY") X %POSIC D PC^%ZMSL Q
 ;
 I %TO="KB" S %KB='%KB D  G READ
 .I %KB D  Q
 ..X %chista D PUT
 ..D IN1,VIEWRB
 ..S ^kb($P)=""
 .; - '%KB
 .x %chista D PUT
 .D IN,VIEWRB
 .K ^kb($P)
 ;
 I $G(%C2)=27!($G(%C3)=27)!($G(%C4)=27) S C2=27 K %C2,%C3,%C4
 U $P:(NOECHO:NOWRAP)
 W $C(27,91),"?25h"
 I $D(LINE),$D(COLX),$D(COL) S %NMB=LINE-1*COLX+COL ;;,%ZMSL("NMB")=%NMB
 I $G(%L1NMB("ALB"))'=1,%TO="," Q %TO
 I $G(%L1NMB("ALB"))'=1,%TO="'" Q %TO
 I %TO'=".",%TO'="/" Q $TR(%TO,%TES1,%TES2)
 I %TO="." Q "."
 I %TO="/" Q "/"
ESC S %TO="ESC" G END
 ;
 Q
VIEWRB ;
 N I,J
 F I=Y0:STEPY:Y2-STEPY F J=X0:STEPX:X2-STEPX D  D TV^%L1RBUA(I,J,I+STEPY,J+STEPX)
 .W %LIGHT1 W %CV("CF")
 ; W %HBR
 S I=0
 F I=1:1:COLY F J=1:1:COLX D TXT($G(MTXT(I,J)),I,J,0)
 Q
IN ;
 S %L1RBCL=%CV("MB")
 S %PREV=""
 S STEPY=2,STEPX=6
 S COLY=3,COLX=10
 I $D(%L1NMB("ALB")) S COLY=5,STEPY=2
 I $D(%L1NMB("HZM")) S COLY=1,STEPX=8,STEPY=3
 I $D(%L1NMB("LINE")) S COLY=1,STEPX=8,STEPY=3
 I $D(%L1NMB("HIST")) S COLY=1,STEPX=10,STEPY=3
 I $D(%L1NMB("VIEW")) S COLY=1,STEPX=12,STEPY=2
 S:'$D(COL1) COL1=1 S:'$D(LINE1) LINE1=1 S:'$D(%NMB) %NMB=1
 S Y0=$S($G(YY0)>12:2,1:14)
 I $D(%L1NMB("ALB")),$D(%L1NMB("ALB","Y0")) S Y0=%L1NMB("ALB","Y0")
 S X0=1
 S Y2=Y0+(STEPY*COLY),X2=X0+(STEPX*COLX)
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 ;
 I $D(%L1NMB("VIEW")) K MTXT D  Q
 .S Y0=23,X0=8 S MTXT("MIN")=1
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT6+I),T1=$T(TEXT7+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("HZM")) K MTXT D  Q
 .S Y0=22,X0=0 S MTXT(1,1,"DEF")=""
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT4+I),T1=$T(TEXT5+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("LINE")) K MTXT D  Q
 .S Y0=21
 .N I,J,T,T1 S I=1,T=$T(TEXT8+I),T1=$T(TEXT9+I) D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .I '$D(%MBG("MIUN")) S MTXT(1,8,"DIS")=""
 .I '$D(%MBG("MOVE")) S MTXT(1,9,"DIS")=""
 .I $D(%MBG("DELAS")) S MTXT(1,6,"DIS")=""
 .S I=2
 .S X0=80-(($L(T,";")-2)*(STEPX))\2
 .D PRMXY
 ;
 I $D(%L1NMB("HIST")) K MTXT D  Q
 .S Y0=22,X0=5
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT10+I),T1=$T(TEXT11+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $G(%L1NMB("ALB"))=1 K MTXT D  S:'$D(%NMB)!($G(%NMB)=1)!$G(%PRKB) %NMB=12 Q
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT2+I),T1=$T(TEXT3+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $G(%L1NMB("ALB"))=2 K MTXT D  Q
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT12+I),T1=$T(TEXT13+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ; --------------- NORMAL
 K MTXT D  S %NMB=7 ;S:'$D(%NMB)!$G(%PRKB)!($G(%NMB)=1) %NMB=7
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT+I),T1=$T(TEXT1+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 I $D(%L1NMB("=")) S %NMB=2 K %L1NMB("=")
 Q
IN1 ;
 S %PREV="",%TO="",%KB=1
 S %L1RBCL=%CV("MB")
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 S STEPY=3,STEPX=6
 S COLY=1,COLX=1,(COL,LINE,COL1,LINE1)=1,%NMB=1
 S Y0=$S($Y>5:1,1:21),X0=1
 I $P($G(^kb($P)),"\") S X0=$P($G(^kb($P)),"\")-2 S:X0<1 X0=1 S:X0>74 X0=74
 I $P($G(^kb($P)),"\",2) S Y0=$P($G(^kb($P)),"\",2)-2 S:Y0>21 Y0=21 S:Y0<1 Y0=1
 S Y2=Y0+(STEPY*COLY),X2=X0+(STEPX*COLX)
 K MTXT S MTXT(1,1)="KB",MTXT(1,1,"C")="KB"
 Q
CLCDN Q
DELAY Q
TEXT ;
 ;ESC;=;DEL;UP;DN;POPUP;ENT;
 ;1;2;3;F5;F6;F7;SHIFT;
 ;4;5;6;F8;F9;F10;DELL;
 ;7;8;9;F1;F2;HOME;END;
 ;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT1 ;
 ;ESC;=;DEL;VVERX;VNIZ;VNIZE;ENTER;
 ;1;2;3;ADDL;DELL;COR;SHIFT;
 ;4;5;6;FIND;SAVE;REST;MOD;
 ;7;8;9;CHISTS;CHISTE;HOME;ENDS;
 ;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT2 ;
 ;ESC;f;e;d;c;b;a;`;UP;DN;POPUP;ENT;
 ;m;n;l;j;k;i;h;g;F6;F7;DELL;SHIFT;
 ;u;v;s;t;r;q;o;p;+;F9;<-;->;
 ;z;y;x;w;.;,; ;-;=;F10;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT3 ;
 ;ESC;f;e;d;c;b;a;`;VVERX;VNIZ;VNIZE;;
 ;m;n;l;j;k;i;h;g;DELL;COR;MOD;SHIFT;
 ;u;v;s;t;r;q;o;p;+;SAVE;LEVO;PRAVO;
 ;z;y;x;w;.;,; ;-;=;REST;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT4 ;
 ;dqtcde d`ivi;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;hixt yetig;dpnfd zbvd ;dxey lehia;zepey ;mihixt ztqed;
 Q  ;
TEXT5 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;DELL;CHISTE;MOD;VNIZE;FIND;
 Q  ;
TEXT6 ;
 ;   d`ivi;zncew dxey;d`ad dxey; mcew sc ;  `ad sc;
 Q  ;
TEXT7 ;
 ;ESC;VVERX;VNIZ;PGUP;PGDN;
 Q  ;
TEXT8 ;
 ;d`ivi ;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;dxey lehia;zepey ;oein  ;dxey qpkd;
 Q  ;
TEXT9 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;MOD;VNIZE;FIND;INS;
 Q  ;
TEXT10 ;
 ;d`ivi ;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;zepey ; dpnfd zbvd ;
 Q  ;
TEXT11 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;VNIZE;SAVE;
 Q  ;
TEXT12 ;
 ;ESC;A;B;C;D;E;F;G;UP;DN;POPUP;ENT;
 ;H;I;J;K;L;M;N;O;F6;F7;DELL;SHIFT;
 ;P;Q;R;S;T;U;V;W;F8;F9;<-;->;
 ;X;Y;Z;%;.;,; ;-;=;+;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT13 ;
 ;ESC;A;B;C;D;E;F;G;VVERX;VNIZ;VNIZE;;
 ;H;I;J;K;L;M;N;O;DELL;COR;MOD;SHIFT;
 ;P;Q;R;S;T;U;V;W;FIND;SAVE;LEVO;PRAVO;
 ;X;Y;Z;%;.;,; ;-;=;+;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
PUT ;
 I $D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) D
 .D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
PRMXY ;
 S COLX=J,COLY=I-1,X2=X0+(COLX*STEPX),Y2=Y0+(COLY*STEPY)
 Q

%L1NMBN
%L1NMB(STAM) ; [ 27.03.08 09:39 ] [ 26.03.08 22:44 ] [ 21.08.07 08:09 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%NMB,%BEG,screen,%L1NMB,%MBG,%PRKB,%ZMSL) D ^%L1C
 U $P:(NOECHO:NOWRAP:CENABLE:CTRAP=$C(3))
 K %ZMSL("NMB")
 S YY0=$G(%L1NMB("ZY"),$Y) S:'$D(%PRKB) %PRKB=0
 S %W=0 I $G(%PRKB) S %W=.1
BG00 S (%C0,%C00)=""
BG0 ;
BG ;;R *%C:0 S %PRKB=1 G:$T 27 E  H %W R *%C:0 S:$T %PRKB=1 G:$T 27
 S %L1NMB("X0")=0,%L1NMB("Y0")=0,%L1NMB("X2")=80,%L1NMB("Y2")=25
 I $G(%BEG)=1 D GET^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2) S %BEG=2
 I $D(^kb($P)),'$D(%L1NMB("MTXT")) D IN1 W $C(27,91),"?25l" D VIEWRB G READ
 D IN
 D VIEWRB
 S %TO="",%KB=0
 S LINE=%NMB-.1\COLX+1,COL=%NMB-.1#COLX+.1
 W $C(27,91),"?25l"
 I LINE,COL D TXT($G(MTXT(LINE,COL)),LINE,COL,1)
READ0 S LINE1=LINE,COL1=COL
READ ;
 ;;D ^%L1MSGBR
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 I %MOUSE S %CRD=$$REPORT^%L2MOUSE($G(%PORT),%XMIN,%XMAX,%YMIN,%YMAX) I %CRD,%TO'="KB" D  G:%KB=2 BG G:'$D(MTXT(LINE,COL)) READ1 G:$D(MTXT(LINE,COL,"DIS")) READ1 S %TO=$G(MTXT(LINE,COL,"C")) G END
 .S %PRKB=0
 .S %XX=$P(%CRD,",",1),%YY=$P(%CRD,",",2)
 .S COL=%XX-X0+$G(^SMXX(%L3MYDVN))\STEPX+1,LINE=%YY-Y0+$G(^SMXY(%L3MYDVN))\STEPY+1
 .I $D(MTXT(LINE,COL,"DIS")) Q
 .I '$D(MTXT(LINE,COL)),$D(^kb($P)) D  Q
 ..S ^kb($P)=%XX_"\"_%YY,%KB=2 D PUT
 .I $G(COL1),$G(LINE1),$D(MTXT(LINE1,COL1)) D TXT($G(MTXT(LINE1,COL1)),LINE1,COL1,0)
 .I $G(LINE),$G(COL),$D(MTXT(LINE,COL)) D TXT($G(MTXT(LINE,COL)),LINE,COL,1)
 .S LINE1=LINE,COL1=COL
READ1 I %TO="KB" S %TO=""
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 U $P:(NOECHO:NOWRAP) R *%C:0 E  H .02 R *%C:0 G:'$T READ
 I %C'=13,%C'=10 S %PRKB=1
 ;;I %C=32!(%C>47&(%C<58))!(%C>96&(%C<122)) S %PRKB=1
27 I %C=27 D DELAY R *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)) X "N %CC F  R *%CC:0 E  Q" G:$T(@%UPRCOD(C))="" TO K %FLL G @%UPRCOD(C)
 .S C="" Q:%C1=27  D DELAY R *%C2:%WAIT Q:%C2=27  S:%C2>0 C=%C1_%C2 Q:%C2<0  Q:$D(%UPRCOD(C))
 .R *%C3:%WAIT Q:%C3=27  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))  Q:%C3<0
 .R *%C4:%WAIT Q:%C4=27  S:%C4>0 C=C_%C4
 I $G(%C1)=27 S %C=27 K %C1 G 27
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 I %C=27 G 27
 ;;I %C=27 G ESC
 I %C=0 S %TO="" D DELAY R *%C1:%WAIT D DELAY R *%C2:%WAIT I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<121))!(%C1>129):"0"_%C1,1:60+%C1)
 I %C=13!(%C=10) S %TO=$G(MTXT(LINE,COL,"C"),"ENTER") G END
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
BD ;
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))="" S %TO=%UPRCOD(%C) G END
 I $C(%C)="=" S %TO=$C(%C) G END
 S %TO=$TR($C(%C),%TES2,%TES1)
 I $C(%C)="." S %TO=$C(%C)
 I $C(%C)="/" S %TO=$C(%C)
 G END
TO K %FLL S %TO=%UPRCOD(C) G END
TXT(%FRAZA,LINE,COL,INV) ;
 S:COL<1 COL=1 S:COL>COLX COL=COLX
 S:LINE<1 LINE=1 S:LINE>COLY LINE=COLY
 N %XX,%YY,%DLG,%I,%CHAST
 S %FRAZA=$TR($TR(%FRAZA,%TES1,%TES2),%TEN,%THB)
 I $D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("HIST")) S %DLG=STEPX-2 D DELG^%L1SCPC
 I '$G(INV) X %LIGHT
 I $G(INV),'$D(MTXT(LINE,COL,"DIS")) W %CV("WB"),%CV("RF")
 I '$G(INV) W %L1RBCL,%CV("YF") I $D(MTXT(LINE,COL,"DIS")) W %CV("RF")
 S %YY=Y0+(LINE-1*STEPY)
 S %XX=X0+(COL-1*STEPX)+1
 I '$D(%L1NMB("HZM")),'$D(%L1NMB("LINE")),'$D(%L1NMB("HIST")) S:$L(%FRAZA)>4 %XX=%XX-1 X %POSIC W $S($L(%FRAZA)<3:" "_%FRAZA_" ",1:%FRAZA)
 I $D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("HIST")) N %I F %I=1:1 Q:'$D(%CHAST(1,%I))  D
 .I %I=2,$E(%CHAST(1,%I))=" ",$E(%CHAST(1,1),$L(%CHAST(1,1)))=" " S %CHAST(1,%I)=$E(%CHAST(1,%I),2,255)_" "
 .X %POSIC W %CHAST(1,%I) S %YY=%YY+1
 X %XCL Q
VNIZ ;
 D CLCDN
 S:'$D(COLY) COLY=1
 I '$D(LINE) S %TO="VNIZ" G END
 I LINE+1>COLY S %TO="VNIZ" G END
 I COLY=1 S %TO="VNIZ" G END
 S %PRKB=0
 I '$D(MTXT(LINE+1,COL)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S LINE=LINE+1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 S LINE1=LINE,COL1=COL
 G READ1
VVERX ;
 D CLCDN
 I '$D(COLY) S COLY=1
 I '$D(LINE) S %TO="VVERX" G END
 I LINE<2 S %TO="VVERX" G END
 I COLY=1 S %TO="VVERX" G END
 S %PRKB=0
 I '$D(MTXT(LINE-1,COL)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S LINE=LINE-1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 S LINE1=LINE,COL1=COL
 G READ1
PRAVO ;
 I '$D(COLX) S COLX=1
 I COLX=1 S %TO="PRAVO" G END
 I '$D(COL) S %TO="PRAVO" G END
 I COL+1>COLX S %TO="PRAVO" G END
 D CLCDN
 S %PRKB=0
 I '$D(MTXT(LINE,COL+1)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S COL=COL+1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 G READ0
LEVO ;
 I '$D(COLX) S COLX=1
 I '$D(COL) S %TO="LEVO" G END
 I COL<2 S %TO="LEVO" G END
 I COLX=1 S %TO="LEVO" G END
 D CLCDN
 S %PRKB=0
 I '$D(MTXT(LINE,COL-1)) G READ
 D TXT($G(MTXT(LINE,COL)),LINE,COL,0) ;
 S COL=COL-1
 D TXT($G(MTXT(LINE,COL)),LINE,COL,1) ;
 G READ0
 ;ENTER S %TO="" G END
END ;
 I '$D(%TO) S %TO=""
 ;
 ;;I %TO="SHIFT" D  G READ
 .x %chista D PUT
 .I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=1 D IN,VIEWRB S %XX=%L1NMB("ZX"),%YY=%L1NMB("ZY") X %POSIC D PC^%ZMSL Q
 .K %L1NMB("ALB") D IN,VIEWRB S %XX=%L1NMB("ZX"),%YY=%L1NMB("ZY") X %POSIC D PC^%ZMSL Q
 ;
 I %TO="KB" S %KB='%KB D  G READ
 .I %KB D  Q
 ..X %chista D PUT
 ..D IN1,VIEWRB
 ..S ^kb($P)=""
 .; - '%KB
 .x %chista D PUT
 .D IN,VIEWRB
 .K ^kb($P)
 ;
 I $G(%C2)=27!($G(%C3)=27)!($G(%C4)=27) S C2=27 K %C2,%C3,%C4
 U $P:(NOECHO:NOWRAP)
 W $C(27,91),"?25h"
 I $D(LINE),$D(COLX),$D(COL) S %NMB=LINE-1*COLX+COL ;;,%ZMSL("NMB")=%NMB
 I $G(%L1NMB("ALB"))'=1,%TO="," Q %TO
 I $G(%L1NMB("ALB"))'=1,%TO="'" Q %TO
 I %TO'=".",%TO'="/" Q $TR(%TO,%TES1,%TES2)
 I %TO="." Q "."
 I %TO="/" Q "/"
ESC S %TO="ESC" G END
 ;
 Q
VIEWRB ;
 I $D(%L1NMB("MTXT")) D VIEWMTXT Q
 N I,J
 F I=Y0:STEPY:Y2-STEPY F J=X0:STEPX:X2-STEPX D
 .W %LIGHT1 W %CV("CF")
 .D TV^%L1RBUA(I,J,I+STEPY,J+STEPX)
 ; W %HBR
 S I=0
 F I=1:1:COLY F J=1:1:COLX D
 .D TXT($G(MTXT(I,J)),I,J,0)
 .I $G(MTXT(I,J,"C"))=$G(MTXT(I+1,J,"C")) D
 ..W %LIGHT1 W %CV("CF")
 ..S %YY=Y0+(STEPY*I-1),%XX=X0+(STEPX*(J-1)-1) X %POSIC D VLIN W $J("",STEPX-1) D VLIN
 Q
VLIN ;
 I %TYPCRT["PC" W $C(179) Q
 I %TYPCRT["VT5" W $C(27)_"(0"_$C(120)_$C(27),"(B" Q
 W "|"
 Q
IN ;
 S %L1RBCL=%CV("MB")
 S %PREV=""
 S STEPY=2,STEPX=6
 S COLY=3,COLX=10
 I $D(%L1NMB("ALB")) S COLY=5,STEPY=2
 I $D(%L1NMB("HZM")) S COLY=1,STEPX=8,STEPY=3
 I $D(%L1NMB("LINE")) S COLY=1,STEPX=8,STEPY=3
 I $D(%L1NMB("HIST")) S COLY=1,STEPX=10,STEPY=3
 I $D(%L1NMB("VIEW")) S COLY=1,STEPX=12,STEPY=2
 S:'$D(COL1) COL1=1 S:'$D(LINE1) LINE1=1 S:'$D(%NMB) %NMB=1
 S Y0=$S($G(YY0)>12:2,1:14)
 I $D(%L1NMB("ALB")),$D(%L1NMB("ALB","Y0")) S Y0=%L1NMB("ALB","Y0")
 S X0=1
 S Y2=Y0+(STEPY*COLY),X2=X0+(STEPX*COLX)
 N %L1INIT S %L1INIT=""
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 ;
 I $D(%L1NMB("VIEW")) K MTXT D  Q
 .S Y0=23,X0=8 S MTXT("MIN")=1
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT6+I),T1=$T(TEXT7+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("HZM")) K MTXT D  Q
 .S Y0=22,X0=0 S MTXT(1,1,"DEF")=""
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT4+I),T1=$T(TEXT5+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("LINE")) K MTXT D  Q
 .S Y0=21
 .N I,J,T,T1 S I=1,T=$T(TEXT8+I),T1=$T(TEXT9+I) D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .I '$D(%MBG("MIUN")) S MTXT(1,8,"DIS")=""
 .I '$D(%MBG("MOVE")) S MTXT(1,9,"DIS")=""
 .I $D(%MBG("DELAS")) S MTXT(1,6,"DIS")=""
 .S I=2
 .S X0=80-(($L(T,";")-2)*(STEPX))\2
 .D PRMXY
 ;
 I $D(%L1NMB("HIST")) K MTXT D  Q
 .S Y0=22,X0=5
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT10+I),T1=$T(TEXT11+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $G(%L1NMB("ALB"))=1 K MTXT D  S:'$D(%NMB)!($G(%NMB)=1)!$G(%PRKB) %NMB=12 Q
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT2+I),T1=$T(TEXT3+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $G(%L1NMB("ALB"))=2 K MTXT D  Q
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT12+I),T1=$T(TEXT13+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 ;
 I $D(%L1NMB("MTXT")) K COLX,COLY,STEPX,STEPY Q
 ; --------------- NORMAL
 K MTXT D  S %NMB=7 ;S:'$D(%NMB)!$G(%PRKB)!($G(%NMB)=1) %NMB=7
 .N I,J,T,T1 F I=1:1 S T=$T(TEXT+I),T1=$T(TEXT1+I) Q:T=""  Q:T["Q  ;"  D
 ..F J=1:1:$L(T,";")-2 S MTXT(I,J)=$P(T,";",J+1),MTXT(I,J,"C")=$P(T1,";",J+1)
 .D PRMXY
 I $D(%L1NMB("=")) S %NMB=2 K %L1NMB("=")
 Q
IN1 ;
 S %PREV="",%TO="",%KB=1
 S %L1RBCL=%CV("MB")
 N %L1INIT S %L1INIT=""
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 S STEPY=3,STEPX=6
 S COLY=1,COLX=1,(COL,LINE,COL1,LINE1)=1,%NMB=1
 S Y0=$S($Y>5:1,1:21),X0=1
 I $P($G(^kb($P)),"\") S X0=$P($G(^kb($P)),"\")-2 S:X0<1 X0=1 S:X0>74 X0=74
 I $P($G(^kb($P)),"\",2) S Y0=$P($G(^kb($P)),"\",2)-2 S:Y0>21 Y0=21 S:Y0<1 Y0=1
 S Y2=Y0+(STEPY*COLY),X2=X0+(STEPX*COLX)
 K MTXT S MTXT(1,1)="KB",MTXT(1,1,"C")="KB"
 Q
VIEWMTXT ;
 N I,J
 S I="" F  S I=$O(MTXT(I)) Q:I=""  I I?1N.N
 .S J="" F  S J=$O(MTXT(I,J)) Q:J=""  I J?1N.N D
 ..S %X1=MTXT(I,J,"X")
 ..S %Y1=MTXT(I,J,"Y")
 ..S %X2=%X1+MTXT(I,J,"SX")
 ..S %Y2=%Y1+MTXT(I,J,"SY")
 ..D TV^%L1RBUA(%Y1,%X1,%Y2,%X2)
 Q
CLCDN Q
DELAY Q
TEXT ;
 ;;ESC;DEL;UP;DN;POPUP;;ENT;
 ;;1;2;3;F5;F6;F7;ER ;
 ;=;4;5;6;F8;F9;F10;DELL;
 ;;7;8;9;F1;F2;HOME;END;
 ;;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT1 ;
 ;=;ESC;DEL;VVERX;VNIZ;VNIZE;ENTER;ENTER;
 ;=;1;2;3;ADDL;DELL;COR;ENTER;
 ;=;4;5;6;FIND;SAVE;REST;MOD;
 ;=;7;8;9;CHISTS;CHISTE;HOME;ENDS;
 ;=;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT0 ;
 ;ESC;=;DEL;UP;DN;POPUP;ENT;
 ;1;2;3;F5;F6;F7;ENT;
 ;4;5;6;F8;F9;F10;DELL;
 ;7;8;9;F1;F2;HOME;END;
 ;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT01 ;
 ;ESC;=;DEL;VVERX;VNIZ;VNIZE;ENTER;
 ;1;2;3;ADDL;DELL;COR;ENTER;
 ;4;5;6;FIND;SAVE;REST;MOD;
 ;7;8;9;CHISTS;CHISTE;HOME;ENDS;
 ;0;.;*;-;PGUP;PGDN;KB;
 Q  ;
TEXT2 ;
 ;ESC;f;e;d;c;b;a;`;UP;DN;POPUP;ENT;
 ;m;n;l;j;k;i;h;g;F6;F7;DELL;SHIFT;
 ;u;v;s;t;r;q;o;p;+;F9;<-;->;
 ;z;y;x;w;.;,; ;-;=;F10;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT3 ;
 ;ESC;f;e;d;c;b;a;`;VVERX;VNIZ;VNIZE;;
 ;m;n;l;j;k;i;h;g;DELL;COR;MOD;SHIFT;
 ;u;v;s;t;r;q;o;p;+;SAVE;LEVO;PRAVO;
 ;z;y;x;w;.;,; ;-;=;REST;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT4 ;
 ;dqtcde d`ivi;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;hixt yetig;dpnfd zbvd ;dxey lehia;zepey ;mihixt ztqed;
 Q  ;
TEXT5 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;DELL;CHISTE;MOD;VNIZE;FIND;
 Q  ;
TEXT6 ;
 ;   d`ivi;zncew dxey;d`ad dxey; mcew sc ;  `ad sc;
 Q  ;
TEXT7 ;
 ;ESC;VVERX;VNIZ;PGUP;PGDN;
 Q  ;
TEXT8 ;
 ;d`ivi ;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;dxey lehia;zepey ;oein  ;dxey qpkd;
 Q  ;
TEXT9 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;MOD;VNIZE;FIND;INS;
 Q  ;
TEXT10 ;
 ;d`ivi ;zncew  dxey ;d`ad  dxey ;mcew sc ;`ad sc ;zepey ; dpnfd zbvd ;
 Q  ;
TEXT11 ;
 ;=;VVERX;VNIZ;PGUP;PGDN;VNIZE;SAVE;
 Q  ;
TEXT12 ;
 ;ESC;A;B;C;D;E;F;G;UP;DN;POPUP;ENT;
 ;H;I;J;K;L;M;N;O;F6;F7;DELL;SHIFT;
 ;P;Q;R;S;T;U;V;W;F8;F9;<-;->;
 ;X;Y;Z;%;.;,; ;-;=;+;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
TEXT13 ;
 ;ESC;A;B;C;D;E;F;G;VVERX;VNIZ;VNIZE;;
 ;H;I;J;K;L;M;N;O;DELL;COR;MOD;SHIFT;
 ;P;Q;R;S;T;U;V;W;FIND;SAVE;LEVO;PRAVO;
 ;X;Y;Z;%;.;,; ;-;=;+;/;';
 ;1;2;3;4;5;6;7;8;9;0;DEL;KB;
 Q  ;
PUT ;
 I $D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) D
 .D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
PRMXY ;
 S COLX=J,COLY=I-1,X2=X0+(COLX*STEPX),Y2=Y0+(COLY*STEPY)
 Q

%L1NU
%L1NU ;                                [ 15.03.19 12:30 ] [ 03.03.09 12:18 ] [ 04.02.09 14:10 ] 
 ; %CLEAR=<NOT DEFINED> LESHAHZER MASAH BESOF
 ; %CLEAR=2 - LO LESHAHZER MASAH B SOF
 ; ^%L1NH - TEUD
 K INDEX N %STEC,KOD,%KODL1,%TOP,NOMER,%PRTCH,%SM,%SMY,%SMX,%SMI,%VETKA,%L1NSHL
 N %GLOB,%XF,%XL,%XU,%V,%K,%I,%I1,%L1I,%L1II,%INUR,%IND,%INDN,%L1NS,%LASTP,%SS,%NXS
 N %FLABC,%FIRST,%DRCT,%PRS,%PRV,%PREND,%PRFIN,%PRZPT,%RSTR,%LASTI
 N %L3VN,%L3VNM,%L3VTO,%L3VLL,%L3VMAC,%RST
 N %CHAST,%CHAST1L,%KODL1,%MAC1,%MAC11,%SSS,%L1OLD,%L3VLB
 N MACOLD
 S %SMI=1 S:$D(%L1("IND")) %SMI=%L1("IND")
 S:'$D(%L1("EU")) %L1("EU")=99 N %FIRST,%SS
 S:'$D(%L1("BE")) %L1("BE")=0
 S:'($D(%L1("FIRST"))#2) %L1("FIRST")=""
 S:'($D(%L1("US"))#2) %L1("US")=1 S %NN1=0 ; -COUNTER LINES TO PRINTER
 K %L1("RB") I $$HZGTOUCH^%L2MOUSE,'$D(%L1("NORB")) S %L1("RB")=""
 S %L1NSHL=0 S %DRCT=1 I $D(%L1("REV")) S %DRCT=-1
 K %MM S FLAG="",%UR=1,%PRZPT=0,%PRV=0,%PREND=0,INDEX="",NOMER=""
 S %VETKA=$P(MAC,"""",2),%RSTR=$G(%L1("HI")),%KAV="""""",%KAV1=""""
 S:%RSTR<1 %RSTR=16
 S %GLOB=MAC D FKOD S %UROV=%I-1
 S %XF="S %FIRST=%KAV1_$G(%L1(""FIRST""))_%KAV1"
 S %XL="S %LASTI=0 I $D(%L1(""LAST""))#2 I @%L1(""LAST"") S %LASTI=1"
 S %XU="X:$D(%L1(""US0""))#2 %L1(""US0"") S %USL=$S($D(%L1(""US""))#2:%L1(""US""),1:1)"
 S MAC1="%L1",MAC2="%L1OLD" D ^%S1GC1
 G PROV
CYC1 S %V=%MAC1,%V=$O(@%V),(%SS,%NXS)=$G(^(%NXN)),%V=%MAC1
 I MAC["^vrm($J" N %NNXN S %NNXN=%NXN N %NXN,%NXS D
 .S %NXN=$G(^vrm($J,%NNXN),"?????"),%NXS=""
 .S %NXS=$G(@MACOLD@(%NXN))
 I $D(%L1("SET"))#2 X %L1("SET") S %V=$O(@%V) S %V=%MAC1
 X %XU I @%USL D
 .N %STEP S %STEP=$S($D(%L1("RB")):3,1:1)
 .S %V=$O(@%V) S %K=%K+1,%I=%I+1,%L=%L+%STEP D PSTR
 .I '%PRFIN S %IND(%K)=%NXN I MAC["^vrm($J" S %INDN(%K)=%NNXN
 S %V=%MAC1 S %V=$O(@%V) S %V=%MAC1
 Q
PSTR ;
 I %L'<%RSTR S %PRFIN=1 Q
 I $D(%L1("TXT"))#2 S %V=%MAC1 X %L1("TXT") Q
 I $D(%L1("TXT1")) D  S %L1NS(%I)=$E(%L1NS(%I),1,$L(%L1NS(%I))-1) Q
 .N %L1NU
 .S %L1NS(%I)="" F %IJ=1:1:$L(%L1("TXT1"),"\/") S %L1NU=$P(%L1("TXT1"),"\/",%IJ) D  S %L1NS(%I)=$S(%ENGLISH:%L1NU(9)_" "_%L1NS(%I),1:%L1NS(%I)_%L1NU(9)_" ")
 ..X "S %L1NU(1)="_$P(%L1NU,"<>",1) S %L1NU(2)=$P(%L1NU,"<>",2)
 ..I '%L1NU(2),$D(%L1("T1")) S %L1NU(2)=$L($P(%L1("T1"),"|",$S('%ENGLISH:%IJ,1:$L(%L1("T1"),"|")-%IJ+1)))_%L1NU(2)
 ..I %L1NU(2)["H" S %L1NU(9)=$$W^%L1C($$HBR^%L1FRM(%L1NU(1),+%L1NU(2))) Q
 ..I %L1NU(2)["," S %L1NU(9)=$J(%L1NU(1),+%L1NU(2),$P(%L1NU(2),",",2)) Q
 ..I '%ENGLISH S %L1NU(9)=$J(%L1NU(1),+%L1NU(2)) Q
 ..I %ENGLISH S %L1NU(9)=%L1NU(1)_$J("",%L1NU(2)-$L(%L1NU(1))) Q
 S %KODL1=$S($D(%L1("TX"))#2:%L1("TX"),1:"")_$S($D(%L1("CD"))#2:$S(%L1("CD")=" ":"",%L1("CD")="":KOD_%NXN,1:%NXN),1:%NXN)
 I $G(MAC)["^l2mn(" S %KODL1=%KODL1-1,%L3VLL=38
 I '($D(^(%NXN))#2) S %L1NS(%I)=" <"_%NXN_"> " Q
 S %CHAST=$S($D(%L1("SS"))#2:$P(^(%NXN),%L1("SS"),$S($D(%L1("NR"))#2:%L1("NR"),1:1)),1:^(%NXN))
 I $D(%L1("CD")),%L1("CD")="I" Q
 S %LASTP=75-$L(%KODL1)-1 S %L1NS(%I)=$E(%CHAST,1,%LASTP)_" "_%KODL1
 Q
PROV U $P:(NOECHO:NOWRAP:NOESC)
 I $G(%L1("SORT")) G SORT
 I %TYPCRT="PC" D GET^%VIDEO("%VD",0,0,80,25,2)
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;2$v"
 I $G(%L1("SORT")) G SORT
 S %SMY=$G(%L1("BE"))
 I %SMY<2 S %SMY=2
 I %SMY>20 S %SMY=20
 S %RSTR=22-%SMY
 N %SSS S %SSS="! mipezp oi` \\ NO DATA ! "
 I $D(%L1("NDMSG")) S %SSS=%L1("NDMSG") I $G(%ENGLISH),%SSS'["\\" S %SSS="\\"_%SSS
 I $D(@MAC)=0 X:'$D(%L1("ND")) "S %SAY=$P(%SSS,""\\"",1+%ENGLISH) X %XMSGV(1)" S FLAG="ND" G END1
 S FLAG="" S %MAC1=$S($F(MAC,"("):$E(MAC,1,$L(MAC)-1)_",",1:MAC_"(")
 S %PRS=$F(%MAC1,",")
BEGP ;
 K %L1 S MAC1="%L1OLD",MAC2="%L1" D ^%S1GC1
 S %K=0
 S %INUR=%UROV+(%PRS>0)
 X %XF S %MAC1=%MAC1_%FIRST_")"
 S %TOP(%UR)=1,%STEC(%UR,%TOP(%UR))=%MAC1_"!"_"0!"_$G(%SMI,1)
CYC K %L1NS U $P D GETPAR I $D(%FLABC) K %FLABC
 S %PRS=(%MAC1[",")
 I %PRS S %MAC11=$P(%MAC1,",",1,%UROV),%L1("MAC")=$P(%MAC1,",",1,%UROV)_")"
 I '%PRS S %MAC11=MAC_"(",%L1("MAC")=MAC
 I $D(%L1("T1")) S %HEAD=%L1("T1")
 I $D(%L1("T2"))#2 X %L1("T2")
 S %PRFIN=0 S %NXN=$O(@%MAC1,%DRCT) K %IND,%INDN
 S %I=0,%L=0
 F %I0=1:1 Q:%NXN=""  X %XL Q:%LASTI  D CYC1 Q:%PRFIN  S %NXN=$O(^(%NXN),%DRCT)
 S %COLI=%I I %PRFIN S %L1("MENU")=""
 I %K=0 G:%L1("EU")=98 END U $P S FLAG="ND" X:'$D(%L1("ND")) "W *7 S %SAY=$P(%SSS,""\\"",1+%ENGLISH) X %XMSGV(1)" G:$D(%L1("US",%UROV)) END1 S FLAG="" G:%UR>1 VVERX S FLAG="ND" G END1
 I %K=1,$D(%L1(1)),%L1("EU")'=%INUR!($G(%L1(1))=1) G:%PRV VVERX S %NOM=1 G NOM
 S %PRV=0
 S %LAST=$S($D(%IND(%K-%PRFIN)):%IND(%K-%PRFIN),1:"")
 I MAC["^vrm($J" S %LAST=$S($D(%INDN(%K-%PRFIN)):%INDN(%K-%PRFIN),1:"")
 G ZN
END S MAC=$P(%MAC1,",",1,%UROV)_")"
 I MAC["^vrm" D  K ^vrm($J)
 .S MAC=$S($F(MACOLD,"("):$E(MACOLD,1,$L(MACOLD)-1)_",",1:MAC_"(")_$P(MAC,",",2,20)
 I $E(NOMER,$L(NOMER))="," S NOMER=$E(NOMER,1,$L(NOMER)-1)
END1 U $P X %XCL K %GLOB,%L1I,%L1NS,%MAC1,%L1,%MACF,%K,%KOD,%I,%J,%IND,%INDN,%NXN,%NXS,%SIMB,%YES,%NOM,%SIMB,%SUB,%XF,%XL,%XU,%FIRST,%GLOB,%LASTI,%USL,%LAB,%LAST,%LASTP,%MAC11,%PRFIN,%PRS,%RSTR,%SHS,%VETKA,%KAV,%KAV1,%MACN
 K %L3VTO,%V3MAXY,%PRZPT,%PREND,%PRV,%INUR,%COLI,%HBR0,%L1XER,%L1NPRNT
 I $G(%CLEAR)=1 S %XX=0,%YY=%SMY-2 X %POSIC,%XCL,%chiste D REST G END2
 I $G(%CLEAR),$G(%CLEAR)<3 G END2
 I $G(%CLEAR)>2!'$G(%CLEAR) X %chista
 D REST I %RST G END2
END2 I $D(%ECHO) U $P:(ECHO:WRAP)
 K %SMY,%CLEAR Q
 ;-
KOT ;
 S %NN1=0 S %L1NSHL=%L1NSHL+1 I $D(%L1NPRNT("BEG")) W #
 I '$D(TSS)!'$D(TS0) D ^%L1TS
 D UDEV^%L1LPT(%L1NUDEV) S %TIM=$ZD($H,"24:60") W !,%L1NSHL,$TR(" sc ",TS0,TSS),?20,%TIM_$TR(" :dry  ",TS0,TSS)_$$^%L1DC($H,1)_$TR(" :g""ec zwtd jix`z",TS0,TSS),!
 S %AT=$$^%L1HEAD("") I $L(%AT) S %ST=%L1OUT("MDP","B")_$$CENTRB^%L1FRM($TR($TR(%AT,"#_",""),TS0,TSS),%L1OUT("MDP","GWPC"))_%L1OUT("MDP","N") W !,%ST,!
 I $D(%L1("T3")) X %L1("T3")
 I $D(%L1("T1")) D KAV W !?$G(%L1NPRNT("SM")),$TR(%L1("T1"),TS0,TSS) D KAV W !
 Q
ENDP I $D(%L3VTO("EXCEL")) D EXCEL G ENDP1
 D UDEV^%L1LPT(%L1NUDEV) D:$D(%L1("T1")) KAV
 S %DEV="%L1NUDEV" D CLOSE^%L1LPT
ENDP1 K ^L1NUPC($P),%GETIN U $P S %GET=" <ENTER> . dnlyed dlert " D N^%L1GET S FLAG="PC" G END1
 ;*
KAV ;
 W !?$G(%L1NPRNT("SM")),$TR($J("",$L(%L1("T1")))," ","-")
 Q
FKOD ;
 S KOD="" S KOD1=$P($P(%GLOB,"(",2),")") S:$E(KOD1)="""" KOD1=$P(KOD1,"""",2)
 F %I=2:1 Q:$P(%GLOB,",",%I)=""  S %KOD=$P(%GLOB,",",%I) S:%KOD["""" %KOD=$P(%KOD,"""",2) S KOD=KOD_%KOD
 S:%UR>1 INDEX=%KOD I $E(KOD,$L(KOD))=")" S KOD=$E(KOD,1,$L(KOD)-1)
 S KOD1=KOD1_KOD
 Q
%PAR ;
 ;T1,T2,TXT,TXT1,FIRST,LAST,BU,TX,SS,NR,US,US0,US1,CD,BE,SET,NOM
 Q
ZN ;
 K %P
 I $D(%L1NPRNT("ABC")) S %BS=0 D  K %L1NS S FLAG="PC" G:$D(%FLABC) CYC G:%NXN=""!%LASTI ZNABC G PRAVO ; *** LEV 11.03
 .S %SAY=" ... oeinl oznd `p` " X %XMSGN
 .I $D(%FLABC) K ^L1NUPC($P)
 .S %MAC1=$P(%STEC(%UR,1),"!",1)
 .S %NN="",%L1II=0 F  S %NN=$O(%L1NS(%NN)) Q:%NN=""  D  S %L1II=%L1II+1,^L1NUPC($P,%ABC_$J(%L1II,5))=%L1NS(%NN)
 ..S %ABC=$TR($$INV^%L1FRM($E(%L1NS(%NN),1,$L(%L1NS(%NN))-%L1NPRNT("ABC")))," ","")
 ..S %ABC=$E(%ABC,1,10),%ABC=%ABC_$J("",10-$L(%ABC))
 G ZN1
ZNABC I $D(%L3VTO("EXCEL")) G ENDP
 S %DEV="%L1NUDEV" D OPEN^%L1LPT G:%EROP END1
 S %SAY=" ... dlerta zqtcn " X %XMSGN
 I '$D(TSS)!'$D(TS0) D ^%L1TS
 D KOT S %L1NPRNT("BEG")=2
 S %NN="",%NN1=0 D UDEV^%L1LPT(%L1NUDEV) F  S %NN=$O(^L1NUPC($P,%NN)) Q:%NN=""  D
 .N %A S %A=$TR($G(^(%NN)),TS0,TSS)
 .W !?$G(%L1NPRNT("SM")),%A S %NN1=%NN1+1 I %NN1>%L1NPRNT D KOT
 G ENDP
 ;
ZN1 ;
 I $D(%L3VTO("EXCEL")) D  G:$G(%L1NPRNT("BEG"))=1 CYC K %L1NS U $P S FLAG="PC" G:%NXN=""!%LASTI ENDP G PRAVO
 .I '$D(%L1NPRNT("BEG")) K ^L1NUPC($P) S %L1NPRNT("BEG")=1,%NN1=1 Q
 .I $G(%L1NPRNT("BEG"))=1 S %L1NPRNT("BEG")=2
 .S %NN="" F  S %NN=$O(%L1NS(%NN)) Q:%NN=""  S ^L1NUPC($P,%NN1)=%L1NS(%NN) S %NN1=%NN1+1
 ;
 I $G(%L1NPRNT("BEG"))=1 S %L1NPRNT("BEG")=2
 I $G(%L1NPRNT) S %BS=0 D  G:$G(%BS) END1 G:$G(%L1NPRNT("BEG"))=1 CYC K %L1NS U $P S FLAG="PC" G:%NXN=""!%LASTI ENDP G PRAVO ; *** LEV 11.03
 .I '$D(%L1NPRNT("BEG")) D  S %L1NPRNT("BEG")=1 S:$G(%EROP) %BS=1 Q
 ..S %DEV="%L1NUDEV" D OPEN^%L1LPT Q:%EROP
 ..D KOT S %MAC1=$P(%STEC(%UR,1),"!",1)
 .D UDEV^%L1LPT(%L1NUDEV) S %NN="" F  S %NN=$O(%L1NS(%NN)) Q:%NN=""  W !?$G(%L1NPRNT("SM")),$TR(%L1NS(%NN),TS0,TSS) S %NN1=%NN1+1 I %NN1>%L1NPRNT D KOT
 ;
 S %L3VMAC="%L1NS",%L1NUV("UROV")=%UROV
 D ^%L3VIEW
 ;;D REST
PP ;
 I $D(%L1("PRINT","ABC"))!($G(%L3VTO)="P") D  G:$G(%TO)="END" END K %L1("PRINT") S %L1NPRNT=48,%NN1=0 D SM G ZN
 .N %GET,%GETIN,%S D ^%L1TS I $D(%L1("PRINT","NOZAPR"))!$G(%L1("SORT")) S %S=$S($D(%L1("PRINT","ABC")):2,1:1) G ZPP1
ZPP .S %GETIN=1,%GET=" 2 - iza`tl` xcq itl ,1 - ixnep xcq itl qitcdl" D N^%L1GET Q:%TO="END"
ZPP1 .I %S'=1,%S'=2 W *7 G ZPP
 .I %S=2 S %L1NPRNT("ABC")=$G(%L1("PRINT","ABC"),8),%FLABC=""
 .I $D(%L1("T1")) S %GET="<ENTER> - qitcdl , 97 - EXCEL-l uaew oikdl " D N^%L1GET D ^%L1TS S:%S=97 %L3VTO("EXCEL")=""
 I $D(%L1("PRINT")),%L3VTO="VVERX" S %GET=" 99 - qitcdl ,97 - EXCEL-l uaew oikdl " D N^%L1GET K %L1("PRINT") D ^%L1TS I %S=99!(%S=97) S %L3VTO="P" S:%S=97 %L3VTO("EXCEL")="" G PP
 K %L1("PRINT")
 I $G(%L3VTO)="TIME" S FLAG="TIME" G END1
 I $G(%L3VTO)="F8" G SORT
 I $G(%L3VTO)'="" G %L1NU3
 ; OBR
NOMER ;
 S %NOM=%K+%L3VN-%COLI,%PREND=0
 S $P(%STEC(%UR,%TOP(%UR)),"!",3)=%L3VN
VVOD ;
 ; I %L3VTO="." S %PREND=1,%PRTCH=""
 ;I %NOM="" G AVAR
 ;I %NOM="." S FLAG="." S MAC=$S($P(%MAC11,"(",2)'="":%MAC11_")",1:MAC) G END1
NOM ;
NOM1 S %UR=%UR+1 S:%PRS %UROV=%UROV+1 S:%UROV'<%L1("EU") %PREND=1
 K %L3VLL
 S %NOMMENU="%IND(+%NOM)" K %SMI
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_@%NOMMENU_"""," S %PRS=1
 S KOD=KOD_@%NOMMENU,INDEX=@%NOMMENU,INDEX("N")=+%NOM
 I $D(%L1("US1"))#2 X %L1("US1")
 G:'%PREND BEGP
 G END
%L1NU3 ; [ 08/11/91  5:18 PM ]
AVAR ;
 I "./u"'[%L3VTO G SERV
 S %GET="? (l/k) yetigd seq++0,40,HH,I#k++1,H,I++lk" D ^%L1GET S %YES=(%S="k") K %S
 I $G(%XMSG(0),1)>1 S %GET=" END OF SEARCH ? ++0,40,EE,I#Y++1,E,I++YN" D ^%L1GET S %YES=(%S="Y") K %S
 I %YES S FLAG="AB" X %XCL G END1
 X %XCL G:'%YES CYC
 G AVAR
SERV G LEVO:%L3VTO="PGUP",PRAVO:%L3VTO="PGDW",VVERX:%L3VTO="VVERX" G CYC
LEVO ;
 S %SSS="! z`fd dnxa mipezp zligz \\ BEGINING OF DATA ! "
 I %TOP(%UR)=1 U $P W *7 S %SAY=$P(%SSS,"\\",1+%ENGLISH) X %XMSGV(1) G LV
 K %STEC(%UR,%TOP(%UR)) S %TOP(%UR)=%TOP(%UR)-1
LV S %MAC1=$P(%STEC(%UR,%TOP(%UR)),"!",1)
 S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) G CYC
PRAVO ;
 S %SSS="! z`fd dnxa mipezpd seq \\ END OF DATA ! "
 I %NXN=""!%LASTI,$G(%L1NPRNT("BEG"))=2 G CYC
 I %NXN=""!%LASTI U $P W *7 S %SAY=$P(%SSS,"\\",1+%ENGLISH) X %XMSGV(1) G CYC
 S %TOP(%UR)=%TOP(%UR)+1 S %SMI=1
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_%LAST_""")"
 S %STEC(%UR,%TOP(%UR))=%MAC1_"!"_(%K-1)_"!"_$G(%L3VN,1) S %K=%K-1 G CYC
VVERX ;
 I '$D(%L1("BU")),%UR=1 S FLAG="^" G END1
 S %PRZPT=0 S %GLOB=%MAC1 D FKOD S %UROV=%I-1 K %L3VLL
 I %UROV=1 S FLAG="^" G END1
 I $D(%L1("BU")) I %UROV-1=%L1("BU") S FLAG="^" G END1
 K %STEC(%UR) S %UR=%UR-1,%UROV=%UROV-1,%INUR=%INUR-1 I %UROV>1 S %UROV=%UROV-1
 S %MAC1=$P(%STEC(%UR,%TOP(%UR)),"!",1) S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2),%SMI=$P(%STEC(%UR,%TOP(%UR)),"!",3) D GETPAR,REST K %SM,%SMY G CYC
 Q
GETPAR ;
  F %I=1:1 Q:$P($T(%PAR+1),",",%I)=""  S %PAR=$P($T(%PAR+1)," ;",2),%L1I=$P(%PAR,",",%I) I $D(%L1(%L1I))>0 S %L1(%L1I)=$S($D(%L1(%L1I,%INUR)):%L1(%L1I,%INUR),1:%L1(%L1I))
  S:$D(%L1("BE")) %SMY=%L1("BE")
  I $D(%L1("LEFT")) S %SM=%L1("LEFT")
  I $D(%L1("WD")) S %L3VLL=%L1("WD")
  Q
REST ;
 S %RST=0
 ;;I %TYPCRT="PC",$D(%VD)!$D(^P1VIDEO(%L3MYDVN)) D PUT^%VIDEO("%VD",0,0,80,25,2) S %RST=1 Q
 I %TYPCRT="PC" D PUT^%VIDEO("%VD",0,0,80,25,2) S %RST=1 Q
 I $E(%TYPCRT,1,3)="VT5",$P'["/pts" W $C(27,91),";;;;2;;;$v" S %RST=1 Q
 I $D(%SCRN) D A^%L1SC
 Q
SM Q:'$D(%L1("TXT1"))  Q:$D(%L1NPRNT("SM"))
 N %II,%L,%L2 S %L=0 F %II=1:1:$L(%L1("TXT1"),"\/") D
 .N %A S %A=$P(%L1("TXT1"),"\/",%II)
 .S %L2=$P(%A,"<>",2) I '%L2,$D(%L1("T1")) D
 ..S %L2=$L($P(%L1("T1"),"|",%II))
 .S %L=%L+%L2+1
 S %L1NPRNT("SM")=80-%L\2-1
 I %L1NPRNT("SM")<0 S %L1NPRNT("SM")=0
 Q
SORT ;
 D SORT1
 X %chista S %L1OLD("SORT")="",%L1("SORT")="" G PROV
 ;
SORT1 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,MAC,%L1,MACOLD,%DRCT) D ^%L1C
 Q:'($D(%L1("SORT"))#2)
 I '$D(%L1("SORT","HEAD")),$D(%L1("T1")) S %L1("SORT","HEAD")=%L1("T1")
 I '$D(%L1("SORT","MASTER")) S %L1("SORT","MASTER")=1
 S GLB=$S($D(MACOLD):MACOLD,1:MAC) Q:'$D(%L1("SORT","HEAD"))
 S N="" F  S N=$O(%L1("DO",N)) Q:N=""  I N?."%"1U.E S @N=%L1("DO",N)
 S STG=%L1("SORT","HEAD")
 I $G(%L1("SORT")) D  G SORT2
 .S %I=%L1("SORT")
 .I $G(%L1("SORT","MASTER")) D
 ..N A S A=%L1("SORT","MASTER")
 ..S %L1("SORT","MASTER")=%L1("SORT")
 ..S %L1("SORT")=A
 S M(0)=" : oeinl oezp xegal `p "
 S M(1)=" d ` i v i "
 S J=1 K MI
 F I=1:1:$L(STG,"|") D
 .S J=J+1
 .S M(J)=$$SPA^%L1FRM($P(STG,"|",$L(STG,"|")-I+1))
 D  Q:%I=1
 .N MAC
 .S MAC="M",%L2MN("NOCLB")=1
 .S %L2MN("TOP")=$G(%L1("BE"),6)+4,%L2MN("TOP0")=%L2MN("TOP")-1
 .S %L2MN("CVB")="BCB"
 .S %CLEAR=""
 .D ^%L2MENU
 S %I=%I-1
SORT2 ;
 S TYPS=$G(%L1("SORT",%I))
 I TYPS="",$D(%L1("TXT1")) S TYPS=$P($P(%L1("TXT1"),"\/",$L(%L1("TXT1"),"\/")-%I+1),"<>",2)
 I TYPS="" S TYPS="E"
 K ^vrm($J) N %NXN,%NXS
 S N="" F J=1:1 S N=$O(@GLB@(N)) Q:N=""  D
 .S A=$G(^(N)) S %NXN=N,%NXS=A
 .I $D(%L1("SET"))#2 X %L1("SET")
 .I $G(@GLB@(N))
 .S TX=$$TXT(A)
 .S IND=$TR($$SPA^%L1FRM($P(TX,"|",$L(STG,"|")-%I+1)),"""","")
 .I TYPS["H" S IND=$$INV^%L1FRM($$HBR^%L1FRM(IND,10))_$TR($J(J,5)," ",0)
 .I TYPS="D"!(IND?2N1"."2N1"."2N)!(IND?2N1"."2N1"."4N)!(IND?2N1"/"2N1"/"2N)!(IND?2N1"/"2N1"/"4N) D  G SORTV
 ..S IND=$J($$^%L1DC(IND,3),10)_$TR($J(J,5)," ",0)
 .I TYPS'["H",TYPS'["D" S IND=$J(IND,10)_$TR($J(J,5)," ",0)
SORTV .S ^vrm($J,IND)=N
 S MACOLD=GLB,MAC="^vrm($J)"
SORTD S %DRCT=1 I $G(%L1("SORT","DIR")) S %DRCT=%L1("SORT","DIR") Q
 I $G(%L1("SORT")),'$G(%L1("SORT","DIR")) S %DRCT=1 Q
 S %GETIN=1,%GET="2 - dlrnln ,1 - dhnln oiinl"
 D N^%L1GET I %S'=1,%S'=2 W *7 G SORTD
 S %DRCT=$S(%S=1:1,1:-1)
 Q
TXT(TXT) ;
 I '$D(%L1("TXT1")) Q TXT
 N %TX
 D  Q $E(%TX,1,$L(%TX)-1)
 .N %L1NU
 .S %TX="" F %IJ=1:1:$L(%L1("TXT1"),"\/") S %L1NU=$P(%L1("TXT1"),"\/",%IJ) D  S %TX=$S(%ENGLISH:%L1NU(9)_"|"_%TX,1:%TX_%L1NU(9)_"|")
 ..X "S %L1NU(1)="_$P(%L1NU,"<>",1) S %L1NU(2)=$P(%L1NU,"<>",2)
 ..I '%L1NU(2),$D(%L1("T1")) S %L1NU(2)=$L($P(%L1("T1"),"|",$S('%ENGLISH:%IJ,1:$L(%L1("T1"),"|")-%IJ+1)))_%L1NU(2)
 ..I %L1NU(2)["H" S %L1NU(9)=$$HBR^%L1FRM(%L1NU(1),+%L1NU(2)) Q
 ..I %L1NU(2)["," S %L1NU(9)=$J(%L1NU(1),+%L1NU(2),$P(%L1NU(2),",",2)) Q
 ..I '%ENGLISH S %L1NU(9)=$J(%L1NU(1),+%L1NU(2)) Q
 ..I %ENGLISH S %L1NU(9)=%L1NU(1)_$J("",%L1NU(2)-$L(%L1NU(1))) Q
 Q
EXCEL ;
 N I,J,N,PZ,MD,MP
 Q:'$D(%L1("T1"))
 I %L1("T1")[":",%L1("T1")'["|" S %L1("T1")=$TR(%L1("T1"),":","|")
 K ^TREPK($P) N N,I,J,MP,PZ,KOT
 S KOT(1)=$TR($S($E(%L1("T1"))="|":"",1:"|")_%L1("T1")_$S($E(%L1("T1"),$L(%L1("T1")))="|":"",1:"|"),"|","*")
 S J=0,PZ=0 F  S PZ=$F(KOT(1),"*",PZ) Q:PZ'>0  D
 .S J=J+1,MP(J)=PZ-1 I J>1 S MD(J-1)=MP(J)-MP(J-1)-1
 S N="",I=0 F  S N=$O(^L1NUPC($P,N)) Q:N=""  D
 .S I=I+1 S ^TREPK($P,I)=$$HBR^%L1FRM(^L1NUPC($P,N),$L(%L1("T1")))
 .F J=2:1 Q:'$D(MP(J))  S $E(^TREPK($P,I),MP(J)+1)="*"
 .S ^TREPK($P,I)=$$INVD^%L1FRM(^TREPK($P,I),"*","*")
 ;
 S KOT(1)=$E($$INVD^%L1FRM(KOT(1),"*","*"),2,255)
 F I=1:1 Q:'$D(^TREPK($P,I))  S ^TREPK($P,I)=$E(^TREPK($P,I),2,255)
 S PRM(1)="~"
 F J=$O(MD(999),-1):-1:1 Q:'$D(MD(J))  S PRM(1)=PRM(1)_"H,"_MD(J)_",0*"
 S PRM(1)=$E(PRM(1),1,$L(PRM(1))-1)
 D ^%L1PCEX
 Q
 

%L1NU3
%L1NU3 ; [ 08/11/91  5:18 PM ]
AVAR ;
 I %L3VTO'="." G SERV
 S %Q("Z")="  END OF SEARCH ? ",%Q("U")="Y" D ^%S1ASK S %YES=YES
 I %YES S FLAG="AB" X %XCL G END1^%L1NU
 X %XCL G:%YES="N" CYC^%L1NU
 G AVAR
SERV G LEVO:%L3VTO="PGUP",PRAVO:%L3VTO="PGDW",VVERX:%L3VTO="VVERX" G CYC^%L1NU
LEVO ;
 I %TOP(%UR)=1 S %SAY="*** BEGIN OF LEVEL!" X %XMSG G CYC^%L1NU
 K %STEC(%UR,%TOP(%UR)) S %TOP(%UR)=%TOP(%UR)-1,%MAC1=$P(%STEC(%UR,%TOP(%UR)),"!",1) S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) G CYC^%L1NU
PRAVO ;
 I %NXN=""!%LASTI S %SAY="*** END OF LEVEL !" X %XMSG G CYC^%L1NU
 X %chiste S %TOP(%UR)=%TOP(%UR)+1
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_%LAST_""")"
 S %STEC(%UR,%TOP(%UR))=%MAC1_"!"_(%K-1) S %K=%K-1 G CYC^%L1NU
VVERX ;
 I '$D(L1("BU")),%UR=1 S FLAG="^" G END+1^%L1NU
 S %PRZPT=0 S %GLOB=%MAC1 D FKOD^%L1NU S %UROV=%I-1
 I %UROV=1 S FLAG="^" G END1^%L1NU
 I $D(L1("BU")) I %UROV-1=L1("BU") S FLAG="^" G END1^%L1NU
 K %STEC(%UR) S %UR=%UR-1,%UROV=%UROV-2
 S:%UROV=0 MAC=$P(MAC,"(",1),%PRS=0,KOD=""
 S %GLOB=$P(%MAC1,",",1,%UROV) D FKOD^%L1NU
 S %K=0 S:'%PRS %UROV=1 S:%PRS MAC=%GLOB_")" G PRV^%L1NU
 Q

%L1NULL
%L1NULL ; [ 15.03.04 11:08 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %NMF="l1null.bdk"
 ZSY "ls -l *.o > "_%NMF
 O %NMF:(REWIND:READONLY)
 F  U %NMF R A Q:$ZEOF  D
 .S A1=$$SP1^%L1FRM(A)
 .S SZ=$P(A1," ",5)
 .S NM=$P(A1," ",9)
 .S NM1=$P(NM,".")_".m"
 .I SZ,'$$SIZE^%L1ZOS(NM1) D
 ..S NM2=$P($TR(NM,"_","%"),".") I NM2="" Q
 ..S ^%L1NULL(NM2)=""
END C %NMF
 Q

%L1OPEN
%L1OPEN(%PORT,%BIT,%PRTY,%SPEED) ; OPEN MODEM PORT [ 05/23/99  5:17 PM ] [ 04/02/98  2:40 PM ] [ 03/31/98  8:41 AM ]
 ;-- EXAMPLE: 4,N,8,9600
 O %PORT S %EROPN=0 Q
 S %EROPN=0
 I %SPEED=1200 S %SPEED=9
 I %SPEED=2400 S %SPEED=11
 I %SPEED=4800 S %SPEED=12
 I %SPEED=9600 S %SPEED=13
 I %SPEED=19200 S %SPEED=14
 I %SPEED=38400 S %SPEED=15
 I $G(%SPEED)<9!($G(%SPEED)>15) S %SPEED=13
 S %PRT=$S(%PRTY="N":2,%PRTY="O":5,1:9)
 S %BIT=$S(%BIT="8":9,1:5) C %PORT
 O %PORT:(0::::8388608+256+1:8::(%PRT*4096)+(%BIT*16)+%SPEED):2 E  S %EROPN=1
 U %PORT
 Q

%L1OPSCR
%L1OPSCR(TXT) ; OPEN BEGIN SCREEN [ 12.06.03 09:58 ] [ 25.01.01 10:48 AM ] [ 05/23/99  5:18 PM ]
 N CV,%CVET
 D ^%L1C S CV=0
 D ^%L1CH
 N %L1RBCL S %L1RBCL=%CV("BCB")
 I %CVET S %CVET=0 X %XCL S CV=1
 D TV^%L1RBUA(3,6,22,72)
 ;;W $C(27),"[3;6;22;72W"
 X %LIGHT S %SAY=" n""ra zeipexhwl` zekxrn .c.y.x ++4,56,HH++AA,"_$S(%TYPCRT="PC":"BF",1:"CF")_" L" X %XMSG
 X %LIGHT S %SAY=" 03-5225075 'lh   `""z 22 fed ac ++5,56,HH++AA,"_$S(%TYPCRT="PC":"BF",1:"CF")_" L" X %XMSG
 X %LIGHT S %SAY="oiihypiit  al : zpkzn++7,50,HH++AA,"_$S(%TYPCRT="PC":"BF",1:"CF")_" L" X %XMSG
 S %L1BKV("MIL")=TXT I CV W %CV("MF")
 D 1^%L1BKV
 Q

%L1OS
%L1OS ;CLJ;PERFORM DOS FUCTIONS VIA $ZOS CALL [ 04.01.04 12:02 ] [ 21.08.03 11:42 ] [ 20.06.03 16:53 ]
 NEW (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%MSC,%MBG,%MBS) D ^%L1C S %L1OS=""
 S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ERR^%L1OS" S %OSHEAD=" HOST SERVER: MASTER MENU "
O D O13^%L1OS
 ;;O S MENU="TXT",PREV="EXIT" G MENU
EXIT Q
 ;
ERR I $F($ZS,"CTRAP") U 0 W !!,"...Aborted." D EXIT
 Q
MENU ;DISPLAY MENU
 K MM S MM(1)="E X I T    " F I=0:1 S T=$P($T(@MENU+I),";",2) Q:T="*"  S MM(I+2)=T
 S MM(0)=%OSHEAD S MAC="MM" K %CLEAR S %L2MN("F10")=1 D ^%L2MENU
OPT S OPT=%I-1
 I OPT=0 G:MENU="TXT" EXIT S MENU="TXT",%OSHEAD=" HOST SERVER: MASTER MENU " G MENU
 S T=$T(@MENU+OPT-1) S:MENU="TXT" %OSHEAD=" "_$P(T,";",2)_" " I $P(T,";",4)="" D @($P(T,";",3)) G MENU
 S MENU=$P(T,";",4) G MENU
TXT ;DIRECTORY FUNCTIONS;MENU;TXT1
 ;SHOW DOS VERSION;O2
 ;AVAILABLE DISK SPACE;O3
 ;CHANGE DEFAULT DOS PATH;O4
 ;FILE FUNCTIONS;MENU;TXT2
 ;*
TXT1 ;CREATE DIRECTORY;O11
 ;DELETE DIRECTORY;O12
 ;LIST DIRECTORY;O13
 ;*
TXT2 ;DELETE FILE;O51
 ;RENAME FILE;O52
 ;SET FILE ATTRIBUTES;O53
 ;COPY FILE;O54
 ;VIEW FILE;O55
 ;FILE EDITOR;O56
 ;ROUTINE RESTORE;O57
 ;DIRECTORY LISTING;O13
 ;*
O2 W !!,"CURRENTLY RUNNING UNDER DOS VERSION ",$$^%L1ZOS(4) G HIT
O3 S %SFLG=0 D SDRV Q:%X=-1  S %Y=$$^%L1ZOS(9,%X) F %I=1:1:4 S @("%"_$C(64+%I))=$P(%Y,"^",%I)
 W !!,"FREE  SPACE ON DRIVE ",%X,":",?24,$J(%A*%B*%C,10)," BYTES  (",%A*%B*%C\104857.6/10," MEGABYTES)"
 W !,"TOTAL SPACE ON DRIVE ",%X,":",?24,$J(%A*%C*%D,10)," BYTES  (",%A*%C*%D\104857.6/10," MEGABYTES)" G HIT
O4 S (%SFLG,%EXIST,%M)=1 D SDRV Q:%X=-1  S %DRV=%X D SDIR G O4:%X="^",HIT
O11 S %DDRV=$$^%L1ZOS(14) D O11A S %A=$$^%L1ZOS(1,%DDRV) G HIT
O11A S %EXIST=2,%SFLG=1,%M=0 D SDRV Q:%X=-1  S %DRV=%X,%SFLG=0 D SDIR G:%X="^" O11A Q:%X=-1  S %ER=$$^%L1ZOS(6,%X) I %ER'<0 W "  ...CREATED." Q
 D ^%L1OS1 H 2 G O11A
O12 S %DDRV=$$^%L1ZOS(14) D O12A S %A=$$^%L1ZOS(1,%DDRV) G HIT
O12A S %EXIST=1,%SFLG=1,%M=1 D SDRV Q:%X=-1  S %DRV=%X,%SFLG=0 D SDIR G:%X="^" O12A Q:%X=-1  S %ER=$$^%L1ZOS(7,%X) I %ER'<0 W "  ...DELETED." Q
 D ^%L1OS1 H 2 G O12A
O13 S %D=$ZDIR
 I $D(^%L1OS("DIR"))#2 S %D=^("DIR")
 I $D(%O13X) S %X=%O13X K %O13X G O13M
ZD U $P:(NOECHO:NOWRAP)
 S %FL="",%GET="ENTER DIRECTORY LISTING SPECIFIER++18,5,EE,,R#"_$G(%D)_"++38,E,I" D ^%L1GET S %X=%S G:%X="^"!(%X="^Q")!(%X="")!($G(%TO)="END") HIT
 I %X="?" W !!,"ENTER THE FULL PATH OF THE DIRECTORY THAT YOU WISH TO SPECIFY.",!,"IF THE DRIVE OR DIRECTORY IS OMITED, THE CURRENT DEFAULT WILL BE USED."
 I  W !,"SPECIFY '*.*' TO LIST ALL FILES IN THAT DIRECTORY.",!,"ENTER <RETURN> TO SELECT THE CURRENT DEFAULT.",!,"ENTER '^' TO EXIT THIS OPTION." G O13
O13M N %A,%B,%C,%D,%E,%DOLD,%SH,MAC,%I,%J,%K,%Y,%HBRY
 K ^TEMPo($P)
 I $E(%X,$L(%X))'["/",%X'["*",%X'["." S %X=%X_"/"
 I $E(%X,$L(%X))="/" S %PATH=%X
 E  S %PATH=$ZPARSE(%X,"DIR")
 I $ZPARSE(%X)="" Q:$D(%O13X)  U $P S %SAY=" NOT FOUND ! " X %XMSGV(1) G ZD
 I '$D(%L1OS("NOVIEW")) U $P X %chista S $X=0 W ?24,%X_"  DIRECTORY LISTING",! S $Y=1
 S MAC="^TEMPo($P)"
O13D ;
 o "l1os.0":(write:newversion)
 u "l1os.0" w "cd "_$zparse(%X,"dir"),!
 w "ls -l "_$zparse(%X,"name")_$zparse(%X,"type")_" > "_$ZDIR_"l1os.1"
 c "l1os.0"
 zsy "bash l1os.0"
 D GET("l1os.1")
 I $D(^TMPS111($J)) D
 .K ^TEMPo($P) N I,A,A1,%NM,%DT,%SZ,%TM
 .F I=1:1 Q:'$D(^TMPS111($J,I))  D
 ..S A=$G(^(I))
 ..S A1=$$PRS^%L1FLP(A) Q:A1=""
 ..S ^TEMPo($P,I)=$$ENG^%L1FRM($P($P(A1,"^"),"."),15)_"  "_$S($E(A)="d":"<DIR>",1:$$ENG^%L1FRM($P($P(A1,"^"),".",2),5))_"  "_$J($P(A1,"^",2),10)_"  "_$J($ZD($P(A1,"^",3),"DD.MM.YY"),8)_" "_$J($P(A1,"^",4),5)
 K ^TMPS111($J)
 Q:$D(%L1OS("NOVIEW"))
 D SPACE
 S %L2VIEW("Y1")=4,%L2VIEW("NOHB")="" D ^%L2VIEW I $D(%O13Q) K %O13Q Q
 I $D(%PATH),$D(%L2VNM),$TR(%L2VNM," ","")["<DIR" S %D=$$NM(%L2VNM) G ZD
 I $D(%PATH),$D(%L2VNM),$TR(%L2VNM," ","")=".." S %D=$P(%PATH,"/",1,$L(%PATH,"/")-2)_"/" G ZD
 Q
O51 D O13 Q:'$D(^L2VMM($J))  X %chista
 S N="" F  S N=$O(^L2VMM($J,N)) Q:N=""  D  Q:YES="."
 .S %X=$$NM(^(N))
 .W !!,%X S %Q("Z")="DELETE",%Q("U")="N",%Q("V")="." D ^%S1ASK Q:'YES!(YES=".")
 .S %ER=$$^%L1ZOS(2,%X) I %ER<0 D ^%L1OS1 W !! H 2 Q
 .W "  ...DELETED."
 G HIT
O52 S %P=1,%M="R",%EXIST=1 D SFULL G:%X=-1!(%X="^") HIT S %OLD=%X
O52A S %P=0,%M="T",%EXIST=2 D SFULL G HIT:%X=-1,O52:%X="^" S %ER=$$^%L1ZOS(3,%OLD,%X) I %ER<0 D ^%L1OS1 H 2 G O52A
 W "  ...FILE RENAMED." G HIT
O54 D ^%L1COPY G HIT
O55 D ^%S2V G HIT
O56 D ^%L1HFS G HIT
O57 D O13 Q:'$D(^L2VMM($J))  X %chista
 S N="" F  S N=$O(^L2VMM($J,N)) Q:N=""  D  Q:YES="."
 .S %X=$$NM(^(N))
 .W !!,%X S %Q("Z")="RESTORE",%Q("U")="N",%Q("V")="." D ^%S1ASK Q:'YES!(YES=".")
 .S %FN=%X O %FN:(READONLY:REWIND)
 .N NAME,ZAP S NAME="ROUTINE ",ZAP=0 D INT^%L1RR
 G HIT
HIT Q:$D(INTERNAL)  S %GET=" PRESS ANY KEY " D N^%L1GET
 Q
HIT1 S %GET=" ENTER <RETURN> TO CONTINUE, '^' TO QUIT" D N^%L1GET
 Q
SDRV ;ASK DRIVE, RESET DEFAULT IF %SFLG
 S %T=$$^%L1ZOS(14) S %FL="",%GET="ENTER DRIVE++22,12,EE,,R#"_%T_"++2,E,I" D ^%L1GET S %X=%S S:%X="" %X=%T I %X="^"!(%X="^Q") S %X=-1 Q
 I %X="?" W !!,"ENTER THE NAME OF THE DISK DRIVE (IE. A).",!,"ENTER <RETURN> TO CHOOSE THE DEFAULT DRIVE.",!,"ENTER '^' TO RETURN TO THE PREVIOUS QUESTION." G SDRV
 S:%X?1.A1":" %X=$P(%X,":",1) S %ER=$$^%L1ZOS(1,%X) I %ER<0 D ^%L1OS1 H 2 S %ER=$$^%L1ZOS(1,%T) G SDRV
 S %ER=$$^%L1ZOS(11,%X) I %ER<0 D ^%L1OS1 H 2 S %ER=$$^%L1ZOS(1,%T) G SDRV
 I %X'=$$^%L1ZOS(14) W "  ...INVALID." S %X=$$^%L1ZOS(1,%T) G SDRV
 Q:%SFLG  S %A=$$^%L1ZOS(1,%T)
 Q
SDIR ;ASK DIRECTORY, RESET DEFAULT IF %SFLG, PASS IN %DRV (DRIVE)
 ;PASS IN %EXIST  1) MUST EXIST  2) MUST NOT EXIST
 S %T=$S(%M:$$^%L1ZOS(11,%DRV),1:"^") S %GET="ENTER DIRECTORY : ++22,30,EE,,R#"_$S(%M:%T,1:"")_"++28,E,I" D ^%L1GET S %X=%S S:%X="" %X="^Q" Q:%X="^"  I %X="^Q" S %X=-1 Q
 I %X="?" W !!,"ENTER THE NAME OF A DIRECTORY ON DRIVE ",%DRV,".",!,"ENTER <RETURN> TO CHOOSE THE DEFAULT DIRECTORY.",!,"ENTER '^' TO RETURN TO THE PREVIOUS QUESTION." G SDIR
 S %ER=$S(%X'="\":$$^%L1ZOS(10,%X),1:16) I %EXIST=2,(%ER'<0) W "  ...DIRECTORY ALREADY EXISTS." G SDIR
 I %EXIST=1,%ER<0 D ER H 2 G SDIR
 ;;I %EXIST=1,'$ZB(%ER,16,1) W "  ...INVALID." G SDIR
 S:%SFLG %A=$$^%L1ZOS(8,%X)
 Q
SFULL ;ASK FULL NAME (INCLUDE PATH), PASS IN %EXIST SAME AS ABOVE
 N (%UPRCOD,%XMSG,%X,%M) D ^%L1C ;D SFULL^%OS
SF S %FL="" S:$G(%M)="T"&('$D(%S)) %S=$G(%X) U 0 W !!,"FULL NAME OF HOST FILE <"_$S($G(%M)="R":"OLD",$G(%M)="T":"NEW",1:"")_"> " D ^%ZMSL I %S="" S %X=-1 Q
 I %S="?" D O13 S %S=$$NM(%L2VNM) G SF
 S %X=%S
 Q
SPACE Q
 N %I,%A,%B,%C,%D,%DISK,%Y S %DISK=$P(%PATH,"\") S:$E(%DISK,$L(%DISK))'=":" %DISK=$$^%L1ZOS(14) S:$E(%DISK,$L(%DISK))=":" %DISK=$P(%DISK,":") S %Y=$$^%L1ZOS(9,%DISK) F %I=1:1:4 S @("%"_$C(64+%I))=$P(%Y,"^",%I)
 S %YY=0,%XX=0 X %POSIC S $X=0,$Y=20
 W !!,"FREE  SPACE ON DRIVE ",%DISK,":",?24,$J(%A*%B*%C,10)," BYTES  (",%A*%B*%C\104857.6/10," MEGABYTES)"
 W !,"TOTAL SPACE ON DRIVE ",%DISK,":",?24,$J(%A*%C*%D,10)," BYTES  (",%A*%C*%D\104857.6/10," MEGABYTES)"
 Q
ER S %SAY=$$FUNC^%UCASE($ZS) X %XMSGV(1)
 Q
GET(%S) ;
 N %PR s %PR=%S
 K ^TMPS111($J)
 N $ZT S $ZT="g RNOOPEN"
 c %PR
 o %PR:(readonly:record=2048:rewind)
 S $ZT="g REOF"
 N I,X S I=0
 f  u %PR r X S I=I+1,^TMPS111($J,I)=$TR(X,$C(9)," ")
REOF ;
 c %PR U $P
 Q
RNOOPEN U $P W *7 W "  ERROR !" Q
NM(%ST) N %NM,%TP
 S %ST=$$SP1^%L1FRM($E(%ST,1,22))
 S %NM=$G(%PATH)_$P($P(%ST,".")," ")
 S %TP=$P(%ST," ",2)
 I $L(%TP),%TP'["<" S %NM=%NM_"."_%TP
 Q %NM
V S %L1OS="" D O13
 W $C(27,91,48,109) W #
 Q

%L1OS1
%L1OS1 ;
 U $P S %SAY="*** ERROR *** "
 X %XMSGV(1)
 Q

%L1OUT
%L1OUT ; ^TMPS111 --> PRINTER, DISKET, DISPLAY                 [ 10.12.08 14:23 ] [ 05.11.08 19:24 ] [ 28.10.08 13:32 ]
 ; INPUT : %L1OUT("PRINTER") - PORT FOR PRINTER (2 = 51)
 ;         %L1OUT("SUG")     - PRINTER GROUP ( 3 - 3540, 4 - SENOR,5 - CITIZEN-90, 6 - CITIZEN-230)
 ;         %L1OUT("NOTST")   - NO ASK IF PRINTER OR KONAN IS READY
 ;         %L1OUT("WR") - "W" (WRITE) OR "A" (APPEND)
 ;         %L1OUT("FILE")    - FILE NAME ( OUTPUT TO DISKETT )
 ;         %L1OUT("DISK")    - DISK NAME ( A,B,...
 ;         $D(%L1OUT("DAF")) - PRINT PAGE NUMBER
 ;         %L1OUT("SM")      - LEFT PRINT SHIFT
 ;         %L1OUT("IND")     - GET LINE INDEX IN SCREEN VIEW (=2 - LINE:,POS:)
 ;         %L1OUT("KOT")#2   - CENTER HEADER
 ;         $D(%L1OUT("KOT",0)) -> %L1OUT -> %S2V
 ;         %L1OUT("KOT",I)   - HEADER'S LINES
 ;         %L1OUT("KOTDN",I)   - REPORT BOTTOM LINES
 ;-------------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGN,%XMSGV,%L1OUT,%S2V,%HBRY,USTR,P1PC,A2HZG) D ^%L1C
 I $D(^TMPS111($J))<10 S %SAY=" mipezp oi` " X %XMSGV(1) Q
 I $D(%L1OUT("FILE")) S %NMFOUT=%L1OUT("FILE")
 S %L1DISK="" I $D(%L1OUT("DISK")) S %L1DISK=%L1OUT("DISK")
 S:'$D(USTR) USTR=3 I $D(%L1OUT("PRINTER")) S USTR=%L1OUT("PRINTER")
 ;
 D TS
 S PRT=$J
 ;
ZP C 51 G:$D(%L1OUT("PRINTER")) TP
 U 0 X %chista S %GET="3 - zqtcn , 2 - hwqic , 0 - jqn ++11,60,HH#0++1,E,I++023" D ^%L1GET G:%S=""!($G(%TO)="END") EP
 S USTR=%S
 I $G(A2HZG),'$G(^P1PRM("ASHMDPB")) D MDP^P1PC I $G(PRINT) S %L1OUT("PRINTER")=PRINT S:$G(%MDP("SUG")) %L1OUT("SUG")=%MDP("SUG") S A2HZG=2 G TP
 ;
TP I $$^%L1DISP(USTR) U USTR X %chista S %HBRY="" D  D ^%S2VIEW D RS2V G:$D(%L1OUT("PRINTER")) EP G ZP
   .I $D(%L1OUT("KOT",0))!$D(%L1OUT("S2V")) D
   ..N I2 S I2=0
   ..I $D(%L1OUT("S2V")),$D(%L1OUT("KOT"))#2 S ST=$J("",78-$L(%L1OUT("KOT"))\2)_%CLI_%L1OUT("KOT")_%CCL D PC S ST="" D PC S I2=I2+2
   ..I '$D(%L1OUT("S2V")),$D(%L1OUT("KOT"))#2 S ST=%L1OUT("KOT") D PC S ST="" D PC S I2=I2+2
   ..N N S N=.1 F  S N=$O(%L1OUT("KOT",N)) Q:N=""  I N S ST=%L1OUT("KOT",N) D PC S I2=I2+1
   ..I '$D(%S2V("VGR")) S %S2V("VGR")=I2+1
   ..I '$D(%S2V("LEFT")),$D(%L1OUT("SM")) S %S2V("LEFT")=%L1OUT("SM")
   ..I '$D(%S2V("IND")),$D(%L1OUT("IND")) S %S2V("IND")=%L1OUT("IND")
   ..K %S2V0 S N="" F  S N=$O(%S2V(N)) Q:N=""  S %S2V0(N)=%S2V(N)
   ..S N=.1 F I=1:1 S N=$O(%L1OUT("KOTDN",N)) Q:N=""  I N D
   ...S %XX=0,%YY=$G(%S2V("NGR"),24)+I
   ...I %YY<24 X %POSIC S $Y=%YY,$X=%XX S ST=%L1OUT("KOTDN",N) D PC
 ;
 S %BS=0 I USTR=2!(USTR=51) D SDRV D  I %BS G:$D(%L1OUT("PRINTER")) EP G ZP
 .I '$D(%L1OUT("NOTST")) D  I %TO="END" S %BS=1 Q
Z ..S %GET=" <ENTER> yiwdle "_%L1DISK_" opekl hwqic qipkdl `p " D N^%L1GET Q:$G(%TO)="END"
 ..I $$^%L1ZOS(9,%L1DISK)<0 S %SAY=" ! opek jeza hwqic oi` " X %XMSGV G Z
 .D SFILE Q:%BS  S USTR=51 D CUSTR(USTR)
 .O %NMFOUT::2 E  S %SAY=" FILE "_%NMFOUT_" IN USE ! " X %XMSGV(1) K %L1OUT("PRINTER") S %BS=1 Q
 .D UUSTR(USTR)
 ;
Z3 G:$D(USTR) Z31 S %GET=": zqtcn xtqn++6,70,HH#3++2,E,I" D ^%L1GET I %S=""!($G(%TO)="END") G ZP
 S USTR=%S
Z31 D ^%L1TS I USTR'=0,USTR'=51,USTR'=$P D  D ^%L1LPT Q:$G(%EROP)&$D(%L1OUT("PRINTER"))  G:$G(%EROP) ZP
 .I $G(%L1OUT("SUG")) S %L1LPT("SUG")=%L1OUT("SUG"),%L1OUT("DELAY")=1
 .I $G(%L1OUT("PRINTER1")) S %L1LPT("DEV")=%L1OUT("PRINTER1") Q
 .I $G(%L1OUT("PRINTER")) S USTR=%L1OUT("PRINTER"),%DEV="USTR" Q
 ;
 I '$D(%L1OUT("NOTST")),USTR'=2,USTR<51!(USTR>63) D  I $G(%TO)="END" D CUSTR(USTR) S USTR=0 G:$D(%L1OUT("PRINTER")) EP G ZP
 .S %GET=" d`ivil <ESC> e` <ENTER> ugl. dpken zqtcn m`d weca " D N^%L1GET
 ;
ZP1 D UUSTR(USTR) I '$D(%L1OUT("SUG")) S @("%L1OUT(""SUG"")="_%L1SUG)
 I '$D(TS0) D ^%L1TS
 S:'$G(%L1OUT("SUG")) %L1OUT("SUG")=5 D DEFMDP(%L1OUT("SUG"))
 ;;I $G(%L1OUT("SUG"))=5 W $C(18) I $D(%L1OUT("PRINTER","SMALL")) W $C(15)
 W %L1OUT("MDP","NOCOND") I $D(%L1OUT("PRINTER","SMALL")) W %L1OUT("MDP","COND")
 N I,I1,I2 S I=0,I2=0,DAF=0
 D SHAP
 F  S I=I+1 Q:'$D(^TMPS111(PRT,I))  D
 .N ST S ST=^(I) S I1=I I $E(ST)="#" H 1 S I2=0 F I1=I+1:1 Q:'$D(^TMPS111(PRT,I1))  Q:^(I1)'?.P
 .Q:'$D(^TMPS111(PRT,I1))  S STOLD=^(I1)
 .S I=I1 S I2=I2+1 I '(I2#18) I USTR'=3,USTR<51!(USTR>63) H 1 ;;$S($D(%L1OUT("PRINTER","SMALL")):18,1:7)
 .I $E(ST)="#",USTR'=51 W %L1OUT("MDP","PG"),%L1OUT("MDP","CUT") D SHAP
 .S ST=$TR($TR(STOLD,TS0,TSS),TS1,TSS) D PC
 .Q
 S N=.1 F I=1:1 S N=$O(%L1OUT("KOTDN",N)) Q:N=""  I N D
 .S ST=$TR($TR(%L1OUT("KOTDN",N),TS0,TSS),TS1,TSS) D PC
 I %L1OUT("SUG")'=5,'$G(A2HZG) W %L1OUT("MDP","PRG"),%L1OUT("MDP","CUT"),%L1OUT("MDP","PRG")
 I $G(USTR)'=0,$G(USTR)'=$P,$G(USTR)'=51 S %DEV="USTR" D CLOSE^%L1LPT
 C 51 G:$D(%L1OUT("PRINTER")) EP G ZP
EP K %L1OUT,%S2V
 I '$$^%L1DISP($G(USTR)) D CUSTR(USTR)
 Q
RS2V ;
 N N K %S2V S N="" F  S N=$O(%S2V0(N)) Q:N=""  S %S2V(N)=%S2V0(N)
 Q
PC ;
 I $D(%L1OUT("SM")) S ST=$J("",%L1OUT("SM"))_ST
 S ST=$TR(ST,"#_","")
 I '$D(TS)!'$D(TS0) D TS
 I USTR=51 W $TR($TR(ST,TS0,TSS),TS1,TSS),! Q
 ;;I USTR D  W $TR(ST,TS0,TSS),! Q
 I '$$^%L1DISP(USTR) D  W ST,! Q
 .S ST=$$CLST^%L1FRM(ST,%L1OUT("MDP","B"),%L1OUT("MDP","N"))
 .N N S N="" F  S N=$O(%CV(N)) Q:N=""  S ST=$$RPL^%L1FRM(ST,%CV(N),"")
 .N N S N="" F  S N=$O(%CV(N)) Q:N=""  S ST=$$RPL^%L1FRM(ST,$TR(%CV(N),TS0,TSS),"")
 .N N S N="" F  S N=$O(%CV(N)) Q:N=""  S ST=$$RPL^%L1FRM(ST,$TR(%CV(N),TS1,TSS),"")
 W $TR($TR(ST,%TES1,%TES2),%TEN,%THB),! Q
 Q
SDRV ;ASK DRIVE, RESET DEFAULT IF %SFLG
 ;-- OUT : %L1IDISK
 S %BS=0 U 0 Q:$D(%L1DISK)
 S %FL="",%GET=":(A,B,C,D) opek my++6,70,HH,,R#"_$G(%L1DISK,"A")_"++1,E,I" D ^%L1GET I %S=""!($G(%TO)="END") S %BS=1 Q
 S %L1DISK=%S
 I $$^%L1ZOS(9,%L1DISK)<0 S %SAY=" ! opek jeza hwqic oi` " X %XMSGV(1) K %L1DISK G SDRV
 Q
SFILE ;
 ;-- OUT : %NMFOUT
 S %BS=0 U 0 Q:$D(%NMFOUT)
 S %GET=" :uaewd my++6,45,HH#++20,E,I,,R" D ^%L1GET I %S=""!($G(%TO)="END") S %BS=1 Q
 S %NMFOUT=%S Q:%NMFOUT'[":"
 I %L1DISK'=$P(%NMFOUT,":") S %SAY=" d ` i b y " X %XMSGV(1) K %NMFOUT G SFILE
 S %NMFOUT=$P(%NMFOUT,":",2) I %NMFOUT=""  W *7 S %BS=1
 Q
SHAP ;
 N SM I $D(%L1OUT("SM")) S SM=%L1OUT("SM") K %L1OUT("SM")
 ;;I USTR,USTR<51!(USTR>53),'$D(%L1LPT("ARX")) H 3
 D SHAP1
 S I2=2 I $D(%L1OUT("DAF")) S DAF=DAF+1 S ST=$TR($TR(" "_DAF_" sc",TS0,TSS),TS1,TSS) D PC S I2=3
 I $D(%L1OUT("KOT")) D
 .I $D(%L1OUT("KOT"))#2 D
 ..N ST,ST1 S ST1=$TR($J("",$L(%L1OUT("KOT")))," ","-")
 ..;S ST=%L1OUT("KOT") D:$D(%L1OUT("S2V"))  D PC S I2=I2+1
 ..S ST=%L1OUT("KOT") D  D PC S I2=I2+1
 ...I '$$^%L1DISP(USTR),$D(%L1OUT("MDP","B")) S ST=%L1OUT("MDP","B")_$TR($TR($$CENTRB^%L1FRM(ST,%L1OUT("MDP","GWPC")),TS0,TSS),TS1,TSS)_%L1OUT("MDP","N") Q
 ...S ST=%CLI_$$CENTR^%L1FRM(ST,%L1OUT("MDP","GWPC"))_%CCL
 .N N S N="" F  S N=$O(%L1OUT("KOT",N)) Q:N=""  S ST=$TR($TR(%L1OUT("KOT",N),TS0,TSS),TS1,TSS) D PC S I2=I2+1
 I $D(SM) S %L1OUT("SM")=SM
 Q
SHAP1 ;
 Q:$D(%L1OUT("ARX"))
 I $G(%L1OUT("LOGO")) D
 .N %I,ST F %I=1:1:%L1OUT("LOGO") S ST="" D PC
 N ST,%AT S %TIM=$ZD($H,"24:60") S ST=" "_$TR($TR($$^%L1DC($H,1)_"  "_%TIM_" "_$$^%L1DC($H,9)_" mei : d`ved onf",TS0,TSS),TS1,TSS) D PC
 S %AT=$$^%L1HEAD("") I '$$^%L1DISP(USTR) S %AT=$TR($TR(%AT,TS0,TSS),TS1,TSS)
 I '$$^%L1DISP(USTR),$G(%L1OUT("SUG"))=7,$L(%AT) S ST=%CLI_$$CENTR^%L1FRM($TR($$SPC^%L1FRM(%AT),"#_",""),%L1OUT("MDP","GWPC"))_%CCL D PC S ST="" D PC Q
 I $L(%AT),USTR,USTR<51!(USTR>53),$D(%L1OUT("MDP","B")) S ST=%L1OUT("MDP","B")_$TR($TR($$CENTRB^%L1FRM($TR(%AT,"#_",""),%L1OUT("MDP","GWPC")),TS0,TSS),TS1,TSS)_%L1OUT("MDP","N") D PC S ST="" D PC Q
 I $L(%AT) S ST=%CLI_$$CENTRB^%L1FRM($TR(%AT,"#_",""),%L1OUT("MDP","GWPC"))_%CCL D PC S ST="" D PC
 Q
TS ;
 S TS=$C(68) F J=69:1:94 S TS=TS_$C(J)
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 S TS1=$C(160) F J=161:1:186 S TS1=TS1_$C(J)
 S TSS=$C(128) F J=129:1:154 S TSS=TSS_$C(J)
 S TSE=$C(64) F J=65:1:90 S TSE=TSE_$C(J)
 Q
DEFMDP(MDPS) K %L1OUT("MDP") S %L1OUT("MDP","BEEP")=""
 S MDPS=$TR(MDPS," ","")
 I MDPS=1 D
 .S %L1OUT("MDP","B")=$C(30),%L1OUT("MDP","N")=$C(31),%L1OUT("MDP","R")=$C(18)
 .S %L1OUT("MDP","RL")="",%L1OUT("MDP","P")=$C(7),%L1OUT("MDP","BEEP")="",%L1OUT("MDP","CUT")="",%L1OUT("MDP","GWPC")=40,%L1OUT("MDP","PRG")=$C(10,10,10,10,10,10),%L1OUT("MDP","PG")=%L1OUT("MDP","PRG") ; CITIZEN 3530
 .S %L1OUT("MDP","COND")="",%L1OUT("MDP","NOCOND")=""
 I MDPS=2 D
 .S %L1OUT("MDP","B")=$C(14),%L1OUT("MDP","N")=$C(20),%L1OUT("MDP","R")=$C(27,52),%L1OUT("MDP","RL")=$C(27,53)
 .S %L1OUT("MDP","P")=$C(29),%L1OUT("MDP","BEEP")="",%L1OUT("MDP","CUT")="",%L1OUT("MDP","PRG")=$C(10,10,10,10,10,10),%L1OUT("MDP","PG")=%L1OUT("MDP","PRG"),%L1OUT("MDP","GWPC")=22 ;-- STAR-24
 .S %L1OUT("MDP","COND")="",%L1OUT("MDP","NOCOND")=""
 I MDPS=3 D
 .S %L1OUT("MDP","B")=$C(14),%L1OUT("MDP","N")=$C(15),%L1OUT("MDP","R")=$C(19),%L1OUT("MDP","RL")=""
 .S %L1OUT("MDP","P")=$C(7),%L1OUT("MDP","BEEP")=$C(30),%L1OUT("MDP","CUT")=$C(27,80,0),%L1OUT("MDP","GWPC")=40,%L1OUT("MDP","PRG")=$C(10,10,10,10,10,10),%L1OUT("MDP","PG")=%L1OUT("MDP","PRG") ;-- CITIZEN 3540,3541
 .S %L1OUT("MDP","COND")="",%L1OUT("MDP","NOCOND")=""
 I MDPS=4 S %L1OUT("MDP","B")=$C(27,87,49),%L1OUT("MDP","N")=$C(27,87,48),%L1OUT("MDP","R")="" D
 .S %L1OUT("MDP","RL")="",%L1OUT("MDP","P")=$C(27,112,50,50),%L1OUT("MDP","CUT")=$C(27,105),%L1OUT("MDP","GWPC")=40,%L1OUT("MDP","PRG")=$C(10,10,10,10,10,10),%L1OUT("MDP","PG")=%L1OUT("MDP","PRG") ;-- CITIZEN 3540,3541 ;-- SENOR
 .S %L1OUT("MDP","COND")="",%L1OUT("MDP","NOCOND")=""
 I MDPS=5 S %L1OUT("MDP","B")=$C(27)_"W1",%L1OUT("MDP","N")=$C(27)_"W0",%L1OUT("MDP","R")="" D
 .S %L1OUT("MDP","RL")="",%L1OUT("MDP","P")="",%L1OUT("MDP","CUT")="",%L1OUT("MDP","GWPC")=80,%L1OUT("MDP","PRG")=$C(10,10,10,10,10,10),%L1OUT("MDP","PG")=$C(13,12) ;-- CITIZEN 3540,3541 ;-- CITIZEN 90,240
 .I $D(%L1OUT("PRINTER","SMALL")) S %L1OUT("MDP","GWPC")=128
 .S %L1OUT("MDP","COND")=$C(15),%L1OUT("MDP","NOCOND")=$C(18)
 I MDPS=6 S %L1OUT("MDP","B")=$C(27,33,40),%L1OUT("MDP","N")=$C(27,33,8),%L1OUT("MDP","R")="" D
 .S %L1OUT("MDP","RL")="",%L1OUT("MDP","P")=$C(27)_"p"_$C(0)_"14",%L1OUT("MDP","CUT")=$C(27)_"m",%L1OUT("MDP","GWPC")=40,%L1OUT("MDP","PRG")=$C(10,10,10,10,10,10),%L1OUT("MDP","PG")=%L1OUT("MDP","PRG") ;-- CITIZEN 3540,3541
 .S %L1OUT("MDP","COND")="",%L1OUT("MDP","NOCOND")=""
 ;;I MDPS=7 S %L1OUT("MDP","B")=$C(27)_"(s3B",%L1OUT("MDP","N")=$C(27)_"(s0B",%L1OUT("MDP","R")="" D
 I MDPS=7 S %L1OUT("MDP","B")="",%L1OUT("MDP","N")="",%L1OUT("MDP","R")="" D
 .S %L1OUT("MDP","B")=$C(27)_"(s3B",%L1OUT("MDP","N")=$C(27)_"(s0B"
 .S %L1OUT("MDP","RL")="",%L1OUT("MDP","P")="",%L1OUT("MDP","CUT")="",%L1OUT("MDP","GWPC")=80,%L1OUT("MDP","PRG")=$C(10,10,10,10,10,10),%L1OUT("MDP","PG")=$C(12)
 .;;S %L1OUT("MDP","N")=$C(27)_"&k2S",%L1OUT("MDP","B")=$C(27)_"&k4S"
 .;;S %L1OUT("MDP","COND")=$C(27)_"(s17H",%L1OUT("MDP","NOCOND")=$C(27)_"(s12H"
 .S %L1OUT("MDP","COND")=$C(27)_"(s16H",%L1OUT("MDP","NOCOND")=$C(27)_"(s10H"
 Q
UUSTR(N) ;
 I $$MDPNET(N) U "SCK$"_$J Q
 U N:(NOWRAP)
 Q
MDPNET(N) ;
 I $G(N)?1N.N1"."1N.E Q 1
 Q 0
CUSTR(N) ;
 I $$MDPNET(N) H 1 C "SCK$"_$J Q
 H 1 C N
 Q

%L1OW
%L1OW ;-- VARIABLES VALUE SHOW [ 05/23/99  5:21 PM ] [
 U $P:(NOECHO:NOWRAP)
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ER"
 W !!,"-->" S %S="" D ^%ZMSL Q:%S=""  D IN G %L1OW
 Q
IN F %I=1:1:$L(%S,";") S %VAR=$P(%S,";",%I),%PR=0 W !,%VAR,"=" D
 .I $E(%VAR,$L(%VAR))=":" S %VAR=$E(%VAR,1,$L(%VAR)-1),%PR=1
 .I $D(@%VAR)=0 W "<UNDEF>" Q
 .I $D(@%VAR)=1 W @%VAR Q
 .I $D(@%VAR)>1 ZWR @%VAR ;I %PR W ! S MAC=%VAR N (MAC,@%VAR) D @$S($E(MAC)="^":"^%S1PCGL",1:"^%S1GLPCL") Q
 .W $S('($D(@%VAR)#2):"<UNDEF>",1:@%VAR)
 Q
ER W !,*7,"*** ERROR: ",$ZS
 W !,$G(%VAR) S $ZS="" G %L1OW

%L1PC
%L1PC ;                                [ 10.07.06 16:49 ] [ 07.02.06 08:15 ] [ 13.01.06 12:46 ]
 ;INPUT :%REPN - REPORT CODE
 ;       %REPN(... - REPORT PARAMETERS
 ;
 ;       %L1PC("SHEIL") - PROG FOR SHEILTA
 ;       %L1PC("SHEIL1") - DOP. ZAPROSY
 ;
 ;       ^rep(%REPN,"MIUN","PROG") - PROGR. VMESTO PROC. MIUN ( -> ^TREPK($P))
 ;       ^rep(%REPN,"SIX") - GORIZ. COMM. FOR SIKUMIM
 ;
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"M2")) X ^("M2") S OUTFL=@^rep(%REPN,0,A,"OUT") D SAVFL Q
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"FILE")) D  Q
 ; .N FILE S FILE=^rep(%REPN,0,A,"FILE") S OUTFL=$G(@FILE@(INFL)) D SAVFL
 ;-------------------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%REPN,%L1PC,MAS,USTR) D ^%L1C
 I $E(%TYPCRT,1,3)="VT5" W $C(17,27,91)_"?108h",$C(27,91)_"?35h" ;-- NUM LOCK(DECNUMLK),HEB (DECHEBM)
BG ;
 K (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%REPN,%L1PC,MAS,USTR) D ^%L1C
 I %REPN["m" S %REPN=$P(%REPN,"m")
 K ^L1PCSND($P)
 I $D(^rep(%REPN,"QUERY")),$O(^rep(%REPN,"QUERY",$O(^rep(%REPN,"QUERY",""))))'="" X %chista S %LAB="ENDPC" G QUERY
 G V0
QUERY I $D(^rep(%REPN,"QUERY")) D  I $G(FLAG)'="" S:%LAB="ENDPC" %BS=1 G @%LAB
 .N %LAB,%L1,INDEX,MAC
 .S MAC="^rep(%REPN,""QUERY"")",%L1("EU")=3
 .I $G(%OLDIND) S %L1("IND")=%OLDIND
 .S %L1("T1")=" g""ec zxevz xegal `p "
 .S %L1("TXT1")="%NXN"
 .S %L1("BE")=4 D ^%L1NU
 .Q:FLAG'=""  Q:INDEX=""  S QUERY=INDEX,%OLDIND=INDEX("N")
 .N I F I="MIUN","SIK0","CT","FLD0" S ^rep(%REPN,I)=$G(^rep(%REPN,"QUERY",QUERY,I))
 ;
V0 D ^%L1PCIN
 ;
 X %chista
 S %L1GET="" D SHEIL K %L1GET ; ----- VISV. SHEIL.
 ;
Z I $D(%L1PC("SHEIL")) G ENDPC
 S %SAY="" I $L($G(QUERY)) S %SAY=" <CTRL>+E - """_$$SPA^%L1FRM($$HBR^%L1FRM(QUERY,40))_""" `zli`y lehia "
 S %SAY=%SAY_"++23,78,HH" X %XMSG
 S %ZMSF="",%GET=" <F10> - mixhnxt zxiny ,<F9> - g""ecd akxda iepiy , <F7> - zezl`y zniyx " D N^%L1GET I %TO="F9" S %S=99 S FLMODIF=FLMODIF+1
 I %TO="DEL",$L($G(QUERY)) K ^rep(%REPN,"QUERY",QUERY) S QUERY="" G BG
 S %SAY="++23,78,HH,,,C" X %XMSG
 I %TO="F7" S %LAB="V0" G QUERY
 I %TO="F10" D SAVE G Z
 ;
 I (%S=99) D  S %LAB="V0" G V0 ;--- BITUL SADOT MEJUTAROT
 .S %HBRY="" N I,J,A,A1,O,%MBS F I=1:1:$L(^rep(%REPN,"FLD"),"*") D
 ..S A=$P(^("FLD"),"*",I),A1=""
 ..I $L(A) S A1=$P(^rep(%REPN,0,A),";")
 ..S %MBS("Z",I)=A1,%MBS("O",I)=$P($G(^rep(%REPN,"FLD0")),"*",I)
 ..S %MBS("D",I,1)=1
 ..S %MBS("S",I)="-",%MBS("RGS",I)="E"
 .S %MBS("DZ")=14,%MBS("N")=" miievx `l zecy ""-""a onql `p " D ^%S3BST
 .S O="" F I=1:1 Q:'$D(%MBS("O",I))  S O=O_%MBS("O",I)_"*"
 .I $G(^rep(%REPN,"FLD0"))'=$E(O,1,$L(O)-1) S FLMODIF=FLMODIF+1
 .S ^rep(%REPN,"FLD0")=$E(O,1,$L(O)-1)
 ;
S D SHEIL1^%L1PCS K %L1GET ; ---- VERXN. SHEILTA
 I %BS,$O(^rep(%REPN,"QUERY",$O(^rep(%REPN,"QUERY",""))))'="" X %chista S %LAB="ENDPC" G QUERY
ENDPC I %BS K %L1PC,MAS,%REPN Q  ;----------------------- END
 ;
 S MM=0 F I=1:1:MAXMIUN I $G(MIUN(I))>MM,$G(MIUN(I))<MAXMIUN S MM=+$G(MIUN(I))
S1 F I=1:1:MAXMIUN I +$G(MIUN(I))=0 S MM=MM+1,MIUN(I)=MM G S1
 F IJK=1:1:MAXMIUN I MIUN(IJK)>MAXMIUN S %SAY=" icn lecb oein 'qn " X %XMSGN(1) G S
 F I=1:1:MAXMIUN F J=I+1:1:MAXMIUN I +MIUN(I),+MIUN(I)=+MIUN(J) S %SAY=" ! miinrt ywed oein xtqn eze` " X %XMSGN(1) G S
 ;
S3 D SHEIL31^%L1PCS I %BS G S ; --- NIJN. SHEILTA
 ;
S31 S SIKUM="" I $G(%L1PC("SIK0"))[1!($G(%L1PC("SIK"))[1) S %GET=" <F9> - minekiq wx " D N^%L1GET G:$G(%TO)="END" S S:%TO="F9" %S=99 S SIKUM=%S
S2 ;
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") D
 .S COD=$P(%L1PC("FLD"),"*",IJK) K @("ME"_COD),@("AD"_COD)
 ;
 S %SRKM=0 G:SIKUM M1
 S %GET=" <F9> - mitqep mikezig zeyrl " D N^%L1GET G:%TO="END" S3 S:%TO="F9" %S=99 G:%S'=99 M1
 ; ---------- HITUHIM NOSAFIM --------
 S %L1GET="" D SHEIL2 K %L1GET D SHEIL2
 I %BS D  K %L1PC("SHP"),%L1PC("COD") G V0
 .F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) K @("ME"_COD),@("AD"_COD)
 ;
M1 ;
  S J=0 F I=1:1:MAXMIUN D
  .S J=J+1
M2 .I $P($G(^rep(%REPN,"FLD0")),"*",J)="-" S J=J+1 G M2
 .N K F K="MIUN","SIK0","CT" D
 ..S:$P($G(^rep(%REPN,K)),"*",J)'=$S(K="SIK0":SIK(I),1:@K@(I)) FLMODIF=FLMODIF+1
 ..S $P(^rep(%REPN,K),"*",J)=$S(K="SIK0":SIK(I),1:@K@(I))
 ;
ZU K %L1PC("L1PCPRM")
 I $$^%L1MRK=1000,$$ADSL^%L1PORT D ^%L1PCSND G:'$G(%L1PCOK) BG I %L1PCOK=1 S %L1PC("L1PCPRM")=""
 ;
 S %GETIN=0
 S %GET=": <F10> - mixhnxt zxiny ,0 - jqn , 3 - zqtcn " D N^%L1GET K %GETIN
 I %TO="F10" D SAVE G ZU
 I %S=""!($G(%TO)="END") G S3
 S USTR=%S I USTR D LPT G:%EROP ZU
 ;
 I '$D(%L1PC("L1PCPRM")) D ^%L1PCP
 ;
 S KOTNUM=1
 I '$D(^TREPK($P)) W *7 S %GET=".jyndl <ENTER> ywd .dbvdl mipezp oi`" D N^%L1GET G END
 ;
ALDSP S %L1PC("FILE")="TREPK"
 I '$$^%L1DISP(USTR) X %chista
 D ^%L1PC1
 K ^TREP($J),^TREPK($P),^TREPK0($P)
END ;
 G BG
 ;
KAV S %STRING="" F JJ=1:1:3 S %STRING=%STRING_"-----------------------------------*"
 D SAVST S PRSUM=1
 Q
 ;
SHEIL D SHEIL^%L1PCS
 Q
LPT ;
  S %EROP=0 I $$^%L1DISP(USTR) Q
  S %DEV="USTR" D ^%L1LPT
  Q
SHEIL2 D SHEIL2^%L1PCS ;
 Q
SHEIL3 D SHEIL3^%L1PCS
 Q
SAVE ;
 S %GET=" `zli`yd my ++22,75,HH,,R#"_$G(QUERY)_"++60,H,I++++++^rep(%REPN,""QUERY"")\60\1\16" D ^%L1GET G:%S=""!(%TO="END") ESAVE
 S QUERY=$$SPA^%L1FRM(%S) D KOT
 I $D(^rep(%REPN,"QUERY",QUERY)) S %GET=" 99 - xey`l . zniiw xak `zli`y " D N^%L1GET G:%S'=99&(%TO'="F9") ESAVE
 N I F I="MIUN","SIK0","CT","FLD0" D
 .S ^rep(%REPN,"QUERY",QUERY,I)=$G(^rep(%REPN,I))
 S %GET=" <ENTER> . dnlyed dxiny " D N^%L1GET
ESAVE N %YY S %YY=21,%XX=0 X %POSIC X %chiste
 Q
KOT U $P S %SAY=" "_$G(QUERY)_" : "_$G(^rep(%REPN)) X %XMSGV
 Q
SAVST S MONE=$O(^TREPK($P,999999),-1)+1 S ^TREPK($P,MONE)=%STRING
 S ^TREPK($P)=MONE
 Q

%L1PC0
%L1PC ;                              [ 26.12.04 17:47 ] [ 17.05.04 18:51 ] [ 17.02.04 09:06 ]
 ;INPUT :%REPN - REPORT CODE
 ;       %REPN(... - REPORT PARAMETERS
 ;
 ;       %L1PC("SHEIL") - PROG FOR SHEILTA
 ;       %L1PC("SHEIL1") - DOP. ZAPROSY
 ;
 ;       ^rep(%REPN,"MIUN","PROG") - PROGR. VMESTO PROC. MIUN ( -> ^TREPK($P))
 ;       ^rep(%REPN,"SIX") - GORIZ. COMM. FOR SIKUMIM
 ;
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"M2")) X ^("M2") S OUTFL=@^rep(%REPN,0,A,"OUT") D SAVFL Q
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"FILE")) D  Q
 ; .N FILE S FILE=^rep(%REPN,0,A,"FILE") S OUTFL=$G(@FILE@(INFL)) D SAVFL
 ;-------------------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%REPN,%L1PC,MAS,USTR,%REPN)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
BG K (%REPN,USTR,MAS,QUERY,%SMI,%OLDIND) D ^%L1C S FLMODIF=0 S %ENGLISH=0
 I $E(%TYPCRT,1,3)="VT5" W $C(17,27,91)_"?108h",$C(27,91)_"?35h" ;-- NUM LOCK(DECNUMLK),HEB (DECHEBM)
 S %N="" F  S %N=$O(%REPN(%N)) Q:%N=""  S @%N=%REPN(%N)
 I $D(^rep(%REPN,"QUERY")),$O(^rep(%REPN,"QUERY",$O(^rep(%REPN,"QUERY",""))))'="" X %chista S %LAB="ENDPC" G QUERY
 G V0
QUERY I $D(^rep(%REPN,"QUERY")) D  I $G(FLAG)'="" S:%LAB="ENDPC" %BS=1 G @%LAB
 .N %LAB,%L1,INDEX,MAC
 .S MAC="^rep(%REPN,""QUERY"")",%L1("EU")=3
 .I $G(%OLDIND) S %L1("IND")=%OLDIND
 .S %L1("T1")=" g""ec zxevz xegal `p "
 .S %L1("TXT1")="%NXN"
 .S %L1("BE")=6 D ^%L1NU Q:FLAG'=""  Q:INDEX=""  S QUERY=INDEX,%OLDIND=INDEX("N")
 .N I F I="MIUN","SIK0","CT","FLD0" S ^rep(%REPN,I)=$G(^rep(%REPN,"QUERY",QUERY,I))
 ;
V0 S %L1PC("FLD")="",%L1PC("MIUN")="",%L1PC("SIK0")="",%L1PC("CT")=""
 F %I=1:1:$L(^rep(%REPN,"FLD"),"*") D
 .N %FLD S %FLD=$P(^rep(%REPN,"FLD"),"*",%I) Q:%FLD=""
 .;;I $P($G(^rep(%REPN,"FLD0")),"*",%I)'="-",$G(^rep(%REPN,0,%FLD,"SH"))'=0 D
 .I $P($G(^rep(%REPN,"FLD0")),"*",%I)'="-" D
 ..S %L1PC("FLD")=%L1PC("FLD")_%FLD_"*"
 ..S %L1PC("MIUN")=%L1PC("MIUN")_$P($G(^rep(%REPN,"MIUN")),"*",%I)_"*"
 ..S %L1PC("SIK0")=%L1PC("SIK0")_$P($G(^rep(%REPN,"SIK0")),"*",%I)_"*"
 ..S %L1PC("CT")=%L1PC("CT")_$P($G(^rep(%REPN,"CT")),"*",%I)_"*"
 .I $P($G(^rep(%REPN,"FLD0")),"*",%I)="-"  D
 ..N A S A=$P(^rep(%REPN,"FLD"),"*",%I)
 ..S @("ME"_A)=""
 ..S @("AD"_A)=$TR($J("",+$P(^rep(%REPN,0,A),";",2))," ",9)
 S %L1PC("FLD")=$E(%L1PC("FLD"),1,$L(%L1PC("FLD"))-1)
 S %L1PC("MIUN")=$E(%L1PC("MIUN"),1,$L(%L1PC("MIUN"))-1)
 S %L1PC("SIK0")=$E(%L1PC("SIK0"),1,$L(%L1PC("SIK0"))-1)
 S %L1PC("CT")=$E(%L1PC("CT"),1,$L(%L1PC("CT"))-1)
 S %L1PC("SIK")="" S %J=0 F %I=1:1:$L(^rep(%REPN,"FLD"),"*") D
 .S A=$P(^("FLD"),"*",%I) I $E(A)="x",$P($G(^("FLD0")),"*",%I)'="-" D
 ..S %L1PC("SIK")=%L1PC("SIK")_$P(^rep(%REPN,"SIK"),"*",$E(A,2,3))_"*"
 S %L1PC("SIK")=$E(%L1PC("SIK"),1,$L(%L1PC("SIK"))-1)
 S ONLYSIK=0,MONE=0 K ^TREP($P),^TREPK($P)
 F I=1:1:$L(%L1PC("FLD"),"*") S A=$P(%L1PC("FLD"),"*",I) Q:A["x"
 ;------------ MAXMIUN - SPISOK PRIZN.REKV, COLG - SPISOK KOL. REKV.
 S MAXMIUN=I-(%L1PC("FLD")["*x"),COLG=$L(%L1PC("FLD"),"*")-MAXMIUN
 S COLGM=$L($P(^rep(%REPN,"FLD"),"*x1*",2),"*")+1
 X %chista S GLOB1=^rep(%REPN,"GLOB1"),GLOB2=^rep(%REPN,"GLOB2")
 S %BS=0,FRST=1
V ;
 K MIUN,SIK,CT
 F I=1:1:MAXMIUN D
 .S MIUN(I)=$S($P(%L1PC("MIUN"),"*",I)>MAXMIUN:"",1:$P(%L1PC("MIUN"),"*",I))
 .S SIK(I)=$P(%L1PC("SIK0"),"*",I)
 .S CT(I)=$P(%L1PC("CT"),"*",I) ;-- KOTERET
 ;;G:$D(%L1PC("SHEIL")) S ;---------------- SVOJA PROC DLQ SHEILTY
 S %L1GET="" D SHEIL K %L1GET ; ----- VISV. SHEIL.
 ;
Z I $D(%L1PC("SHEIL")) G ENDPC
 S %SAY="" I $L($G(QUERY)) S %SAY=" <CTRL>+E - """_$$SPA^%L1FRM($$HBR^%L1FRM(QUERY,40))_""" `zli`y lehia "
 S %SAY=%SAY_"++23,78,HH" X %XMSG
 S %ZMSF="",%GET=" <ENTER> - jiyndl, <F10> - g""ec ixhnxt zxiny ,<F9> - g""ecd akxda iepiy " D N^%L1GET I %TO="F9" S %S=99 S FLMODIF=FLMODIF+1
 I %TO="DEL",$L($G(QUERY)) K ^rep(%REPN,"QUERY",QUERY) S QUERY="" G BG
 S %SAY="++23,78,HH,,,C" X %XMSG
 I %TO="F7" S %LAB="V0" G QUERY
 I %TO="F10" D SAVE G Z
 I (%S=99) D  S %LAB="V0" G V0 ;--- BITUL SADOT MEJUTAROT
 .S %HBRY="" N I,J,A,A1,O,%MBS F I=1:1:$L(^rep(%REPN,"FLD"),"*") D
 ..S A=$P(^("FLD"),"*",I),A1=""
 ..I $L(A) S A1=$P(^rep(%REPN,0,A),";")
 ..S %MBS("Z",I)=A1,%MBS("O",I)=$P($G(^rep(%REPN,"FLD0")),"*",I)
 ..S %MBS("D",I,1)=1
 ..S %MBS("S",I)="-",%MBS("RGS",I)="E"
 .S %MBS("DZ")=14,%MBS("N")=" miievx `l zecy ""-""a onql `p " D ^%S3BST
 .S O="" F I=1:1 Q:'$D(%MBS("O",I))  S O=O_%MBS("O",I)_"*"
 .I $G(^rep(%REPN,"FLD0"))'=$E(O,1,$L(O)-1) S FLMODIF=FLMODIF+1
 .S ^rep(%REPN,"FLD0")=$E(O,1,$L(O)-1)
 ;
S D SHEIL1^%L1PCS K %L1GET
 I %BS,$O(^rep(%REPN,"QUERY",$O(^rep(%REPN,"QUERY",""))))'="" X %chista S %LAB="ENDPC" G QUERY
ENDPC I %BS K %L1PC,MAS,%REPN Q  ;----------------------- END
 ;
 S MM=0 F I=1:1:MAXMIUN I $G(MIUN(I))>MM,$G(MIUN(I))<MAXMIUN S MM=+$G(MIUN(I))
S1 F I=1:1:MAXMIUN I +$G(MIUN(I))=0 S MM=MM+1,MIUN(I)=MM G S1
 F IJK=1:1:MAXMIUN I MIUN(IJK)>MAXMIUN S %SAY=" icn lecb oein 'qn " X %XMSGN(1) G S
 F I=1:1:MAXMIUN F J=I+1:1:MAXMIUN I +MIUN(I),+MIUN(I)=+MIUN(J) S %SAY=" ! miinrt ywed oein xtqn eze` " X %XMSGN(1) G S
S3 D SHEIL31^%L1PCS I %BS G S
S31 S SIKUM="" I $G(%L1PC("SIK0"))[1!($G(%L1PC("SIK"))[1) S %GET=" <F9> - minekiq wx " D N^%L1GET G:$G(%TO)="END" S S:%TO="F9" %S=99 S SIKUM=%S
S2 ;
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) K @("ME"_COD),@("AD"_COD)
 S %SRKM=0 G:SIKUM M1
 S %GET=" <F9> - mitqep mikezig zeyrl " D N^%L1GET G:%TO="END" S3 S:%TO="F9" %S=99 G:%S'=99 M1
 S %L1GET="" D SHEIL2 K %L1GET D SHEIL2
 I %BS D  K %L1PC("SHP"),%L1PC("COD") G V0
 .F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) K @("ME"_COD),@("AD"_COD)
 ;
 ; MIUN - SAVE PRIZN MIUN ; SIK0 - SAVE PRIZN SUMM ; CT - SAVE PRIZN KOT
 ;
M1 K MIUN1 S J=0 F I=1:1:MAXMIUN D
  .S J=J+1 S MIUN1(+MIUN(I))=$G(MIUN(I))
M2 .I $P($G(^rep(%REPN,"FLD0")),"*",J)="-" S J=J+1 G M2
 .N K F K="MIUN","SIK0","CT" D
 ..S:$P($G(^rep(%REPN,K)),"*",J)'=$S(K="SIK0":SIK(I),1:@K@(I)) FLMODIF=FLMODIF+1
 ..S $P(^rep(%REPN,K),"*",J)=$S(K="SIK0":SIK(I),1:@K@(I))
ZU S %GETIN=0
 S %GET=": <F10 - g""ec ixhnxt xenyl , 0 - jqn , 3 - zqtcn " D N^%L1GET K %GETIN
 I %TO="F10" D SAVE G ZU
 I %S=""!($G(%TO)="END") G S3
 S USTR=%S ;;I USTR D LPT G:%EROP ZU
 I SIKUM=99 S ONLYSIK=1
 F I=1:1:MAXMIUN S A=$P(%L1PC("FLD"),"*",I) S:@("ME"_A)?.P @("ME"_A_"=0") S:@("AD"_A)?.P @("AD"_A_"=$TR($J("""",$P($G(^rep(%REPN,0,A)),"";"",2)),"" "",9)")
11 ;
 ; --------------- CHECK FOR DFLT ( MIUN - POSLEDN )
 S N="" F  S N=$O(SIK(N)) Q:N=""  I SIK(N),$G(MIUN(N)) S SIK(N)=MIUN(N)
 ;;I $G(SIK(MIUN(MAXMIUN)))>0,'ONLYSIK S SIK(MIUN(MAXMIUN))=0
 ; ------------------------- SEDM -  PERESORT SPISOK PR. REKV.
 ; ------------------------- SEDSM - PERESORT SPISOK PRIZ. SIK.
 S SEDM=%L1PC("FLD"),SEDSM=""
 F JJ=1:1:MAXMIUN D
 .S A=$P(%L1PC("FLD"),"*",JJ)
 .S $P(SEDM,"*",MIUN(JJ))=A
 .S $P(SEDSM,"*",MIUN(JJ))=$S(+SIK(JJ)=0:0,1:1)
 S N="" F  S N=$O(CT(N)) Q:N=""  D
 .I CT(N)=1 D  Q
 ..S N1="" F  S N1=$O(CT(N1)) Q:N1=""  I MIUN(N1)<MIUN(N) S CT(N1)=1
 .I CT(N)=2 D  Q
 ..S N1="" F  S N1=$O(CT(N1)) Q:N1=""  I MIUN(N1)<MIUN(N),CT(N1)'=1 S CT(N1)=2
 S MCT=0,MCT2=0 F I=1:1:MAXMIUN S:CT(I)=1 MCT=MCT+1 S:CT(I)=1!(CT(I)=2) MCT2=MCT2+1
 S J=0 F JJ=1:1:MCT S A=$P(SEDM,"*",JJ) Q:A=""  D
 .S J=J+1 I $D(^rep(%REPN,0,A,"OUT")) S J=J+1
 S COL0=J ;---------- COL REKV V.SHAP
 S J=0 F JJ=1:1:MCT2 S A=$P(SEDM,"*",JJ) Q:A=""  D
 .S J=J+1 I $D(^rep(%REPN,0,A,"OUT")) S J=J+1
 S COL01=J ;---------- COL. REKV V+NIJ SHAP
VVV D INIT,MIUN G:$G(OK)=9 END D FORM
 S KOTNUM=1
 I '$D(^TREPK($P)) W *7 S %GET=".jyndl <ENTER> ywd .dbvdl mipezp oi`" D N^%L1GET G END
 ;;D ^%L1PC3
ALDSP S %L1PC("FILE")="TREPK"
 I USTR=0!(USTR=$P) X %chista
 D ^%L1PC1
 K ^TREP($P),^TREPK($P),^TREPK0($P)
END ;
 ;;I FLMODIF K %Q S %Q("Y")=23,%Q("X")=5 S %Q("Z")=" zcxtp `zli`y jeza mze` xenyl m`d .g""ec ly dpana miepiy eid" D ^%S2ASK I YES  D SAVE
 G BG
 ;
MIUN N A,A1,IN,%IND,K,K1,K2,I,JJ1,GLO,GLOB,OK,ST ;
   ;---- INPUT: GLOB1 - START, GLOB2 - FINISH
   ;           ^rep(%REPN,"US" - PROGR. FOR FIELDS DEFINING
   ;     OUTPUT: ^TREP($P,... - MIUN HADASH
   ;------------------------------------------
   N %NMB
   S %SAY=" ... oeinl oznd `p` " X %XMSGN
   I $D(^rep(%REPN,"MIUN","PROG"))#2 D @^("PROG") Q:'$D(%L1PC("CONTINUE"))
   I $L($$^%L1IND(GLOB1,1)) S GLOB1=$E(GLOB1,1,$L(GLOB1)-1)
   S %IND=$P($P(GLOB2,GLOB1,2),")")
   I $E(%IND)?1P S %IND=$E(%IND,2,255)
   S K1=$L(GLOB1,","),K2=$L(GLOB2,","),GLOB=GLOB1
   I $L($$^%L1IND(GLOB1,1)) S K1=K1+1
   S JJ1=0 F I=K1:1:$L(%IND,",")+K1-1 S JJ1=JJ1+1 S IN(I)=$P(%IND,",",JJ1)
   S K=K1
LP  S %NMB=0
    I +$G(@("ME"_IN(K)))=$G(@("ME"_IN(K)))!($G(@("ME"_IN(K)))=""),+$G(@("AD"_IN(K)))=$G(@("AD"_IN(K))) S %NMB=1
LP0 S @IN(K)=$S(%NMB:$G(@("ME"_IN(K))),1:"") I $G(@IN(K)),@IN(K)'=+@IN(K) S %NMB=0
    S IN=IN(K)
    I $L($$^%L1IND(GLOB,1)) S GLOBL=GLOB_","""")",GLOB=GLOB_","_IN_")"
    I '$L($$^%L1IND(GLOB,1)) S GLOBL=GLOB_"("""")",GLOB=GLOB_"("_IN_")"
    I $O(@GLOBL,-1)'="",$O(@GLOBL,-1)'?."-"1N.N.".".N S %NMB=0
    I @IN(K)'="" S @IN(K)=$ZP(@GLOB)
LP1 S @IN(K)=$O(@GLOB) S OK=1
    I @IN(K)'="" D  G:'OK LP1
    .N A,%INDOLD S A=$G(@IN(K))
    .I $P($G(^rep(%REPN,0,IN(K))),";",2)["D" D
    ..I A["/"!(A[".") S A=$$^%L1DC(A,3) Q
    ..S A=$$^%L1DC(A,4)
    .I A'=+A S %NMB=0
    .;;I $G(@("ME"_IN(K)))'="",%NMB I A<@("ME"_IN(K)) S OK=0 Q
    .I $G(@("ME"_IN(K)))'="" I A<@("ME"_IN(K)) S OK=0 Q  ;02.05.00 *** LEV
    .I $G(@("AD"_IN(K)))'="" I A>@("AD"_IN(K)) S OK=$S(%NMB:2,1:0) Q
    .I $D(^rep(%REPN,"US",$L(GLOB,","))) D  Q:OK'=1
    ..N JJ F JJ=1:1:20 S @("x"_JJ)=""
    ..X ^rep(%REPN,"US",$L(GLOB,","))
    .I $L(GLOB,",")=$L(GLOB2,",") D  Q:OK'=1
    ..N %IND
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" I $D(@%IND)#2 S %INDOLD(II)=@%IND
    ..S GLO="^TREP($P,"
    ..;;N LL S LL=$P($G(^rep(%REPN,0,$P(SEDM,"*",II))),";",2)
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" D
    ...N LL S LL=$P($G(^rep(%REPN,0,$P(SEDM,"*",II))),";",2)
    ...S:$G(@%IND)="" @%IND=" - " S @%IND=$TR(@%IND,",*""()"," X'[]")
    ...I $L($P(SEDM,"*",II)),LL["D",@%IND["/"!(@%IND[".") S @%IND=$$^%L1DC(@%IND,3)
    ...F JJ=1:1 Q:'$D(MIUN(JJ))  Q:+MIUN(JJ)=II
    ...I $D(MIUN(JJ)),MIUN(JJ)["!",$D(^rep(%REPN,0,$P(SEDM,"*",II),"FILE")),$E(^("FILE"))'="+" D
    ....N A,A1,A2 S A2=$G(^("FILE")) Q:A2=""
    ....S A=$G(@A2@(@$P(SEDM,"*",II)))
    ....I A2="^PAR" S A=$P(A,"**")
    ....S A=$TR($E(A,$L(A)-9,$L(A)),",*""()"," X'[]")
    ....S A1="" F JJ=1:1:10 S A1=$E(A,JJ)_A1
    ....S A1=A1_$J("",10-$L(A1))_$J(@$P(SEDM,"*",II),+LL)
    ....S @%IND=A1 S:@%IND="" @%IND="          "
    ...S GLO=GLO_%IND_","
    ..S GLO=$E(GLO,1,$L(GLO)-1)_")"
    ..F JJ=1:1:COLGM I $G(@("MEx"_JJ))!$G(@("ADx"_JJ)) S %SRKM=1 Q
    ..S OK=1 I %SRKM D  ;---------- HITUHIM NOSAFIM
    ...F JJ=1:1:COLGM S A1=$G(@("x"_JJ)) I $D(@("MEx"_JJ)),$D(@("ADx"_JJ)),A1<@("MEx"_JJ)!(A1>@("ADx"_JJ)) S OK=0 Q
    ..Q:'OK
    ..S ST="" S:'$D(@GLO) @GLO="" F JJ=1:1:COLG S A1=@$P(%L1PC("FLD"),"*",MAXMIUN+JJ) S $P(@GLO,"*",JJ)=$S($P(%L1PC("SIK"),"*",JJ):$P($G(@GLO),"*",JJ)+A1,1:A1)
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" I $D(%INDOLD(II))#2 S @%IND=%INDOLD(II)
    ..K %INDOLD
    I @IN(K)=""!(OK=2) S K=K-1 G:K<K1 EMIUN S GLOB=$P(GLOB,",",1,$L(GLOB,",")-1)_")" G LP1
    S K=K+1 I K>K2 S K=K-1 G LP1
    S GLOB=$E(GLOB,1,$L(GLOB)-1) G LP
EMIUN ;
  Q
FORM N I,IN,IND,K,K1,K2,LEVELBG,FIRSTS,GLOB,GLOBO,PRITOG,%STRING ;
   ;---- INPUT : GLOB (^TREP($P,...),SEDM - OTSORT. FILE
   ;     OUTPUT: ^TREPK($P,... - VIX.FORMA S SIKUMIMAMI
   ;     WORK  : IN(I) - MAS.REKV-IND IN GLOB ( GLOB(@IN(1),@IN(2),...)
   ;             K -  LEVEL COUNTER
   ;             K2 - MAX.COL. IND (PROST.STR)
   ;             K1 - MIN.COL. IND
   ;---------------------------------------------------
   S %SAY=" g""ec zwtdl oznd `p` " X %XMSGN
   F I=1:1:$L(SEDM,"*") S IN(I)=$P(SEDM,"*",I)
   S K=1,K1=1,K2=MAXMIUN+1,GLOB="^TREP($P",FIRSTS=0 K INO S PRITOG=0
   ;;;;;;
   S GLOB=GLOB_","""")"
   S GLOB=$Q(@GLOB) Q:GLOB=""  Q:$P(GLOB,",")'=("^TREP("""_$P_"""")
   D IND(GLOB)
FRM1 F I=1:1:$L(IND,",") S INO(I)=$P(IND,",",I),@IN(I)=INO(I)
   D:FIRSTS STRSHP D:'ONLYSIK PROST S K=$L(IND,",") D SIK S FIRSTS=0
   S GLOB=$Q(@GLOB) G:GLOB="" FORME G:$P(GLOB,",")'=("^TREP("""_$P_"""") FORME
   D IND(GLOB)
   F I=1:1:$L(IND,",") I $P(IND,",",I)'=INO(I) D  Q
   .F K=$L(IND,","):-1:I D STRSIK
   .I I'>MCT S FIRSTS=1
   F I=1:1:$L(IND,",") S @IN(I)=$P(IND,",",I)
   G FRM1
FORME F K=$L(IND,","):-1:0 D STRSIK
   Q
IND(GLOB) S:GLOB["^[" GLOB=$P(GLOB,"]",2)
  S:GLOB["^|" GLOB=$P(GLOB,"|",3)
  S IND=$P($P(GLOB,"(",2),")")
  N IND1,IND2,I S IND1=""
  F I=2:1:$L(IND,",") S IND2=$P(IND,",",I) S:$E(IND2)="""" IND2=$P(IND2,"""",2) S IND1=IND1_IND2_","
  S IND=$E(IND1,1,$L(IND1)-1)
  Q
PROST ;
 Q:ONLYSIK  N %STRING,A,INFL,JJ,JJ1
 I PRITOG D  S PRITOG=0
 .N IND S IND=$O(^TREPK($P,99999),-1) I IND,^TREPK($P,IND)'?1"#"."#" S %STRING="" D SAVST
PROST1 S %STRING=""
 F JJ=1:1:MAXMIUN S INFL=@IN(JJ),A=IN(JJ) D OUTFL
 S JJ1=0 S %STRING=%STRING_$G(@GLOB)
 D SAVST
 Q
SAVST S MONE=$O(^TREPK($P,999999),-1)+1 S ^TREPK($P,MONE)=%STRING
 S ^TREPK($P)=MONE
 Q
SIK ; K - UR, LASTFN - STR. KODOV DLQ PECH, SUMFL - STR. SUM
 N ST,KK S ST=@GLOB
 F KK=0:1:K F JJ=1:1:COLG I $P(%L1PC("SIK"),"*",JJ) S SUM(KK,JJ)=$G(SUM(KK,JJ))+$P(ST,"*",JJ)
 F KK=1:1:K S INO(KK)=@IN(KK)
 Q
STRSHP ;
 N %STRING S %STRING="#############" D SAVST
 Q
STRSIK ;
 ;------------------- FORM ITOG STROKI DLQ PECHATI ( FROM "K" UR).
 Q:($P(SEDSM,"*",K)'[1)&(K>0)  ;-- NET PR. SIK
 N %STRING,INFL,A,I,J,JJ,JJ1,JJJ,IND
 S %STRING=""
STRSIKA ;
 S JJ1=0 F JJ=K+1:1:$L(SEDSM,"*") I $P(SEDSM,"*",JJ)>0 S JJ1=JJ1+1
 ;-- JJ1=0 -> POSL. ITOG
 I ONLYSIK,'JJ1,PRITOG D  S PRITOG=0 S %STRING="" ;PUST STR. POSLE ITOGA (ONLYSIK)
 .N IND S IND=$O(^TREPK($P,99999),-1) I IND,^TREPK($P,IND)'?1"#"."#" S %STRING="" D SAVST
 S %STRING=""
 I 'ONLYSIK!(ONLYSIK&JJ1) D  S PRITOG=1 ;-- PREDITOG. STR.
 .F SP=FLDNUM-COLG+1:1:FLDNUM S %STRING=%STRING_"===========*"
 .D SAVST
 S %STRING="" ;------ ITOG. STR
 F JJ=1:1:K S INFL=INO(JJ),A=IN(JJ) D OUTFL
 F JJ=$L(%STRING,"*"):1:FLDNUM-COLG S OUTFL=$TR($J("",16)," ","-") D SAVFL
 ;;I 'JJ1,ONLYSIK,$L(GLOB) G ESS
 I 'JJ1,ONLYSIK G ESS
 I $P(SEDM,"*",K)'="" D
 .S $P(%STRING,"*",FLDNUM-COLG-2)=$TR($J("",16)," ","-")
 .N A,D S A=$G(^rep(%REPN,0,$P(SEDM,"*",K))),D=$P(A,";",2)
 .S $P(%STRING,"*",FLDNUM-COLG-1)=$P(A,";")
 .S $P(%STRING,"*",FLDNUM-COLG)=$S(D["D":$$^%L1DC(INO(K),1),$G(MIUN1(K))["!":$$INV^%L1FRM(INO(K)),1:INO(K))
ESS ;
 I $D(^rep(%REPN,"SIX")) D ;-- PKUDA L SHURA SIKUMIM ( HORIZ )
 .N JJ,JJ1,ER F JJ=1:1:$L(^rep(%REPN,"FLD"),"*") Q:$E($P(^("FLD"),"*",JJ))="x"
 .S ER=0
 .F JJ1=JJ:1:$L(^rep(%REPN,"FLD"),"*") I $E($P($G(^("FLD0")),"*",JJ1))="-" S ER=1 Q
 .I 'ER,$D(^rep(%REPN,"SIX")) X ^("SIX") ;-- PKUDA L SHURA SIKUMIM ( HORIZ )
 S JJ1=0 F JJ=FLDNUM-COLG+1:1:FLDNUM S JJ1=JJ1+1 S %STRING=%STRING_$J($G(SUM(K,JJ1)),2,2)_"*"
 D SAVST F J=K:1:MAXMIUN K SUM(J)
 Q
 ;
OUTFL ;-- INFL --> OUTFL (FORM-E VIX. REKV IZ VX. V ZAVIS. OT ^rep(%REPN,0,A,..))
  ; ^rep(%REPN,0,A,"OUT")=<VRB>, -> INFL*F(INFL) ;; F(INFL)= X ^rep(%REPN,0,A,"M2") -> VRB
  ;-----------------------------------------------------------------------
  I INFL="" G OF1
  Q:$G(A)=""
  ;;I $L(INFL)>10,INFL'?1N.N S INFL=$E(INFL,11,20)
  N LL S LL=+$P($G(^rep(%REPN,0,A)),";",2),INFL=$$SPA^%L1FRM($E(INFL,$L(INFL)-LL+1,255))
  I $P($G(^rep(%REPN,0,A)),";",2)["D" D  Q
  .S OUTFL=INFL
  .I INFL'["."&(INFL'["/"),$L(INFL)=6 S OUTFL=$E(INFL,5,6)_"/"_$E(INFL,3,4)_"/"_$E(INFL,1,2)
  .I INFL'["."&(INFL'["/"),$L(INFL)=8 S OUTFL=$E(INFL,7,8)_"/"_$E(INFL,3,4)_"/"_$E(INFL,1,2)
  .I INFL'["."&(INFL'["/"),$L(INFL)=5 S OUTFL=$$^%L1DC(INFL,1)
  .D SAVFL
  ;;I $G(^rep(%REPN,0,A,2))=2 S OUTFL=INFL D SAVFL X ^rep(%REPN,0,A,3) D SAVFL Q
  ;;I $G(^rep(%REPN,0,A,2))=3 X ^rep(%REPN,0,A,3) D SAVFL Q
OF1 N DOT S DOT=$P($P($G(^rep(%REPN,0,A)),";",2),",",2)
  I DOT S OUTFL=$J(INFL,DOT,DOT)
  S OUTFL=INFL D SAVFL
  I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"M2")) X ^("M2") S OUTFL=$TR($G(@^rep(%REPN,0,A,"OUT")),"*""(),","X'[] ") D SAVFL Q
  I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"FILE")),$E(^("FILE"))'="+",INFL'="" D  Q
  .N FILE S FILE=^rep(%REPN,0,A,"FILE") S OUTFL=$TR($G(@FILE@(INFL)),"*""(),","X'[] ") D SAVFL
  Q
  ;
SAVFL S %STRING=%STRING_OUTFL_"*"
 Q
 ;
INIT ;
 S %L1PC("COD")=""
 F JJ=1:1 S A=$P(SEDM,"*",JJ) Q:A=""  S %L1PC("COD")=%L1PC("COD")_A_"*" I $D(^rep(%REPN,0,A,"OUT")) S %L1PC("COD")=%L1PC("COD")_^rep(%REPN,0,A,"OUT")_"*"
 S %L1PC("COD")=$E(%L1PC("COD"),1,$L(%L1PC("COD"))-1)
 S SEDFL=%L1PC("COD") ;---- SPISOK REKV DLQ PECH
 S FLDNUM=$L(%L1PC("COD"),"*") K SUM ; --- FLDNUM -- KOL REKV
 Q
 ;
KAV S %STRING="" F JJ=1:1:3 S %STRING=%STRING_"-----------------------------------*"
 D SAVST S PRSUM=1
 Q
 ;
SHEIL D SHEIL^%L1PCS
 Q
LPT ;
  S %EROP=0 I USTR=0!(USTR=$P) Q
  S %DEV="USTR" D ^%L1LPT
  ;U USTR W $C(27),"@",$C(15)
  Q
SHEIL2 D SHEIL2^%L1PCS ;
 Q
SHEIL3 D SHEIL3^%L1PCS
 Q
SAVE ;
 S %GET=" `zli`yd my ++22,75,HH,,R#"_$G(QUERY)_"++60,H,I++++++^rep(%REPN,""QUERY"")\60\1\16" D ^%L1GET G:%S=""!(%TO="END") ESAVE
 S QUERY=$$SPA^%L1FRM(%S) D KOT
 I $D(^rep(%REPN,"QUERY",QUERY)) S %GET=" 99 - xey`l . zniiw xak `zli`y " D N^%L1GET G:%S'=99&(%TO'="F9") ESAVE
 N I F I="MIUN","SIK0","CT","FLD0" D
 .S ^rep(%REPN,"QUERY",QUERY,I)=$G(^rep(%REPN,I))
 S %GET=" <ENTER> . dnlyed dxiny " D N^%L1GET
ESAVE N %YY S %YY=21,%XX=0 X %POSIC X %chiste
 Q
KOT S %SAY=" "_$G(QUERY)_" : "_$G(^rep(%REPN)) X %XMSGV
 Q

%L1PC1
%L1PC1 ;NEW PROGRAM                                       [ 20.09.07 15:17 ] [ 01.07.07 10:08 ] [ 12.06.07 12:12 ]
 ;INPUT: ---%L1PC("COD"),%L1PC("RZD"),%L1PC("FILE")
 ;          %L1PC("F9"),%L1PC("F9","HELP")
 ;--------------------------------------
 N A,COL1,COLRKV,DL,FLDNUM,FRSTFL,I,ID,LASTFL,POZ,TAB,TB0,TB,TB1,TB2,SMY,XX,XX0
 N MK,MKIN1,MON,RR,RGS,RKV,PRITOG,SOF,VGR,RSTR,PRTN,FL,FLDNUM1,RKV1O,LASTRKV,LASTRKVN
 S PRTN=$P
 N GLOB,DLD S GLOB="^"_%L1PC("FILE")_"(PRTN,",%PG=1
 K ^TREPK0(PRTN) S MAC1="^TREPK(PRTN)",MAC2="^TREPK0(PRTN)" D ^%S1GC1
A0 I $D(^rep(%REPN,"SHP","KOD")) S %L1PC("SHP","PAGE")=1,%L1PC("SHP","KOD")=^("KOD"),%L1PC("SHP","PROG")=$G(^("PROG"))
 S %L1PC("SHP","PRPC")=1
A S KOLM=1 S FLDNUM=$L(%L1PC("COD"),"*"),%HBRY=""
 S KOTNUM=1
 S FRSTFL=1+$G(COL01)
 ;---- FORM. MAKETA
 S TAB="",RGS="",KOT(1)="",OK=1,DLD=0
 F I=1:1:$L(%L1PC("COD"),"*") S ID=$P(%L1PC("COD"),"*",I) I ID'="" S:'$D(^rep(%REPN,0,ID)) OK=0 Q:'OK  D
 .S DL=$P(^rep(%REPN,0,ID),";",2)
 .S TAB=TAB_DL_"*" I I'<FRSTFL S DLD=DLD+DL+1
 .S RGS=RGS_$S(DL["H":"H",DL[",":"N",1:"E")_"*"
 .S KOT(1)=KOT(1)_$P(^rep(%REPN,0,ID),";")_"*"
 I 'OK S %SAY="( "_ID_"-l zexcbd xqeg ) ieby %L1PC " X %XMSGV(1) G END
 S TAB=$E(TAB,1,$L(TAB)-1),RGS=$E(RGS,1,$L(RGS)-1)
 I $$^%L1DISP(USTR) W %HBR U $P:(NOECHO:NOWRAP) N %ECHO
 F I=FRSTFL:1:FLDNUM S A=$P(%L1PC("COD"),"*",I) Q:A?1"x"1N.N
 S COLRKV=I-1
 S LASTRKV="",LASTRKVN=0 F I=1:1:FLDNUM I $P(%L1PC("FLD"),"*",I)?1"x"1N.N,I>1 S LASTRKV=$P(%L1PC("FLD"),"*",I-1) Q
 I LASTRKV'="" F I=1:1:FLDNUM I LASTRKV=$P(%L1PC("COD"),"*",I) S LASTRKVN=I Q
 D MASAH
 S VGR=0 I $D(%L1PC("VGR")) S VGR=%L1PC("VGR")
 S SMY0=VGR+1 I $G(COL0) S VGR=VGR+3
 S RSTR=21-VGR U 0 I '$$^%L1DISP(USTR) S RSTR=52-VGR
 I '$$^%L1DISP(USTR) S GW=$S(DLD>75:122,1:75) ;$$^%L1PCGW(%REPN)
 ;------------ OPR-E KOL REKV NA 1-J STR
 S MON=0 F I=FRSTFL:1:FLDNUM S A=$P(TAB,"*",I) Q:(MON+A+1>GW)  S MON=MON+A+1,COL1=I
 ;I MON<75 S GW=75
 I COLRKV<COL1,COL1<FLDNUM S COL1=COLRKV
 ;------------  OPR-E SMESH.
 S TB0=0 I $G(COL0) F I=1:1:COL0 S TB0=TB0+$P(TAB,"*",I)+1 ;---- SHAPKA
 S TB1=0 F I=FRSTFL:1:COL1 S TB1=TB1+$P(TAB,"*",I)+1 ;---- 1-ST LINE
 K POZ S POZ(FRSTFL)=GW+1
 F I=FRSTFL+1:1:COL1 S POZ(I)=POZ(I-1)-$P(TAB,"*",I-1)-1
 S TB2=0 F I=COL1+1:1:FLDNUM S TB2=TB2+$P(TAB,"*",I)+1 ;***LEV 30.03
 I $$^%L1DISP(USTR) S TB1=GW-TB1,TB2=GW-TB2-2
 I '$$^%L1DISP(USTR) S TB1=GW-TB1\2,TB2=GW-TB2-2\2
 S TB0=GW-TB0\2 F I=0:1:2 S:@("TB"_I)<0 @("TB"_I)=0
 K POZ0
 S POZ0(COL0)=TB0+$P(TAB,"*",COL0)+2
 F I=1:1:COL0-1 S POZ0(COL0-I)=POZ0(COL0-I+1)+$P(TAB,"*",COL0-I)+1
 S LASTFL=COL1,TB=TB1
 S SMY=2+VGR+(COL1<FLDNUM)
001 U 0
 S SOF=$O(@(GLOB_"999999)"),-1) ;---- SOF - CSLO ZAP V FILE
 S MKIN1=GLOB_"RR)",MK=1 ;--- MK1 - N ZAP V FILE=N 1-J ZAP NA EKR
 S LNT=$S(LASTFL<FLDNUM:(RSTR\2)-KOTNUM,1:RSTR-KOTNUM) ; 2 STR ILI 1 STR
 I '$$^%L1DISP(USTR) S LNT=LNT-1 S %L1PC("SHP","PRPC")=1 D ^%L1PC2 G:$D(%L1PC("END")) END U 0 S %GET="<DONE>" D N^%L1GET S %S=0 G 10 ;G END
01 ;
 ;;I '$D(%L1PC("SHP","KOD")) D KOT^%L1PC
 D KOT^%L1PC
 D 11 K GL
 S FRST=""
1 S %GET=": {}0{}-d`ivi {}F10{}-oein {}F8{}-yetig {}END{}-oexg` {}HOME{}-oey`x {}PGDW{}-`ad {}PGUP{}-mcew jqn#1"
 I $G(%CVET) S %CL00=$G(%CL0),%CL0=%CL1
 S %ZMSF="" D N^%L1GET
 I $D(%CL00) S %CL0=%CL00 K %CL00
10 X %XCL I %S=0!($G(%TO)="END") D  G:%S=1 01 G:'$$^%L1DISP(USTR)&'$G(%EROP) A0 G:'$G(%EROP) END I $G(%EROP) G END
 .W *27,"[;24r"
 .I $D(%L1PC("END")) D @%L1PC("END") Q  ;--- PRINT PROGRAMM
ZP .S USTR=0,%EROP="",%GET="99-qitcdl ,97-EXCEL -l uaew oikdl ,96-xenyl ,95-xeciyl oikdl ,1-dbvdl xefgl"
 .I $D(^r($J)),%L1PC("COD")["LKH" S %GET="99-qitcdl, 98-zewacn qitcdl ,97-EXCEL -l uaew oikdl,1-dbvdl xefgl"
 .D N^%L1GET
 .
 .I %S=99 S USTR=3 D LPT^%L1PC Q
 .
 .I %S=1 S %PG=%PG+1 D PGUP Q
 .
 .I %S=97 D EX G ZP
 .
 .I %S=96!(%S=95) D  Q
 ..N OTB S OTB=%S N %S
 ..F  S %GETHB="" S %GET=": dxrd #30" D N^%L1GET S HEARA=%S Q:$L(HEARA)
 ..K %GETHB
 ..N SUGM S @("SUGM="_%L1SUG)
 ..I OTB=95 K %L1LPT("SND") D  Q:'$G(%L1LPT("SND"))
ZM ...S %GET=": fkxnl xeciyl oikdl ++13,60,HH,,R#++4,E,I++++++^MRKZ\\\\VP" D ^%L1GET Q:%S=""!(%TO="END")
 ...S %L1LPT("SND")=%S I %L1LPT("SND")=$$^%L1MRK S %SAY=" ! jnvrl xcyl mrh oi` " X %XMSGV(1) G ZM
 ...S %L1LPT("SND","ARX")=^rep(%REPN)_"\"_SUGM_"\"_HEARA
 ..I OTB=96 K %L1("ARX") S %L1LPT("ARX")=^rep(%REPN)_"\"_SUGM_"\"_HEARA
 ..S %L1LPT("DEV")=54,USTR=3 D LPT^%L1PC
 .
 .I $D(^r($J)),%L1PC("COD")["LKH",%S=98 K ^TEMP(PRTN),^VRM($J) D  D 11 G ZP
 ..S %S=1 ;N %S F  S %GET="2 - SMS xcyl , 1 - zewacn qitcdl " D N^%L1GET Q:"12"[%S
 ..Q:'%S
 ..N IND,LKH,I S IND=$$^%L1FP(%L1PC("COD"),"*","LKH",1)
 ..F RR=1:1 Q:'$D(@MKIN1)  S LKH=$P(@MKIN1,"*",IND) I LKH'="" S ^VRM($J,LKH)=""
 ..S LKH="" F I=1:1 S LKH=$O(^VRM($J,LKH)) Q:LKH=""  S ^TEMPL(PRTN,I)=LKH
 ..I %S=1 D ^P1MDB K ^TEMPL(PRTN),^VRM($J) Q
 ..
 ..N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 ..K ^TMPL(PRTN) S I=0
 ..N N S N="" F  S N=$O(^VRM($J,N)) Q:N=""  D
 ...S PEL=$$PELE^P1L(N) I 'PEL,$$PEL^%L1TRSNS(N) S PEL=N
 ...Q:'PEL
 ...S I=I+1,^TMPL(PRTN,I)=N_"\"_$G(^LKH(N))_"\"_PEL
 ..K ^TMPR(PRTN) S ^TMPR(PRTN)="" D SEND^%L1TRSNS
 ;
 I $G(%TO)="F9",'$D(%L1PC("F9")),$$^%L1UCI="MLY" D  D MASAH,PG G 01
 .I '$D(PLSPK) N (%UPRCOD,%XMSGV,%XMSGN,%XMSG,MSP,PARIT,%MBG) D ^L2PARIT Q
 .S %GET=": zipeayg xtqn #8" D N^%L1GET Q:%S=""!($G(%TO)="END")
 .S HBNT=%S
 .N STR,TSTR,ISKA,SPK S STR=^YZRN($G(^MRK($P),1000),10),TSTR=$P(STR,"*",4),STR=$P(STR,"*",3) D  D:ISKA HB^PLSPKCHI I 'ISKA Q:$G(FLAG)'=""  S %SAY=" zkxrna zniiw `l dfk xtqn mr zipeayg " X %XMSGV(1)
  ..S SPK=$O(^MHSBI(HBNT,"")) I SPK="" S ISKA="" Q
  ..I $O(^MHSBI(HBNT,SPK))="" S ISKA=$G(^MHSBI(HBNT,SPK)) Q
  ..S MAC="^MHSBI(HBNT)" K %L1 S %L1("EU")=2,%L1("BE")=7
  ..S %L1("T1")="    wtq my          | wtq | zipeayg "
  ..S %L1("TXT1")="$G(^YZRN(%NXN))<>20H\/%NXN<>5\/HBNT<>9"
  ..D ^%L1NU I FLAG'="" S ISKA="" Q
  ..S ISKA=$G(^MHSBI(HBNT,INDEX))
 .Q
 I $G(%TO)="F9",$D(%L1PC("F9"))#2 D  D PG S %TO="" G 01
 .N N S N="" F  S N=$O(%L1PC("F9",N)) Q:N=""  S @N=$G(%L1PC("F9",N))
 .D @%L1PC("F9")
 .D MASAH
 ;
 I $G(%TO)="UP" D UP G 01
 I $G(%TO)="DW" D DW G 01
 I $G(%TO)="PGUP" D PGUP G 01
 I $G(%TO)="PGDW" D PGDOWN G 01
 I $G(%TO)="ENDS" S %PG=%PG+1,MK=SOF-$S(LASTFL=FLDNUM:8,1:4) S:MK<1 MK=1 S %PG(%PG)=MK S %SAY=" mcew ziid eay jqnl jze` xifgi <PGUP> " X %XMSGV(1) G 01
 I $G(%TO)="HOME" G 001
 ;
 I $G(%TO)="F8" S OK=0 D  X:'OK "S %SAY="" mipezp oi` "" W *7 X %XMSGV(1) " S:'OK MK=%PG(%PG) G:'OK 01 I OK S MK=RR-1 G 01
F8 .K JJ,RKV S JJ=0 F I=1:1:COL0 S A=$P(%L1PC("COD"),"*",I) I A?1U.U S JJ=JJ+1,JJ(JJ)=I D  Q:I<0
 ..S %GET="++"_(SMY0+2)_","_POZ0(I)_",HH#"
 ..S %GET=%GET_$P($G(@(GLOB_MK_")")),"*",I)
 ..S %GET=%GET_"++"_$P(TAB,"*",I)_",E,I"_$S($D(^rep(%REPN,0,A,"FILE"))&($E($G(^("FILE")))'="+"):"++++ F6 - my yetig ,F7 - dbvd ++"_^rep(%REPN,0,A,"FILE")_"++"_$S(A="PRT":"S %S=$TR($J(%S,8),"" "",0)",1:""),1:"")
 ..S %GET("REST")="D 11^%L1PC1" D ^%L1GET I $G(%TO)="END" D  Q
 ...I I=1 S I=-1 Q
 ...I $D(JJ(JJ-2)) S JJ=JJ-2,I=JJ(JJ) Q
 ...S I=0,JJ=0 Q
 ..I $P(TAB,"*",I)["." S %S=$TR($J(%S,$P(TAB,"*",I))," ",0)
 ..I %S S RKV(I)=%S
 .Q:I'>0
 .S %YY=(3+VGR),%XX=0 X %POSIC W %chists
 .K JJ S JJ=0 F I=FRSTFL:1:COL1 S A=$P(%L1PC("COD"),"*",I) I A?1U.U S JJ=JJ+1,JJ(JJ)=I D  Q:I<0
 ..S %GET="++"_(3+VGR)_","_POZ(I)_",HH#++"_$P(TAB,"*",I)_",E,I"_$S($D(^rep(%REPN,0,A,"FILE"))&($E($G(^("FILE")))'="+"):"++++ F6 - my yetig ,F7 - dbvd ++"_^rep(%REPN,0,A,"FILE")_"++"_$S(A="PRT":"S %S=$TR($J(%S,8),"" "",0)",1:""),1:"")
 ..S %GET("REST")="D 11^%L1PC1" D ^%L1GET I $G(%TO)="END" D  Q
 ...I I=FRSTFL S I=-1 Q
 ...I $D(JJ(JJ-2)) S JJ=JJ-2,I=JJ(JJ) Q
 ...S I=FRSTFL-1,JJ=0 Q
 ..I %S S RKV(I)=%S
 .I I<0 G F8
 .Q:'$D(RKV)  S OK=0 F RR=%PG(%PG)+1:1 Q:'$D(@MKIN1)  Q:OK  S N="" F  S N=$O(RKV(N)) S:N="" OK=1 Q:OK  I RKV(N)'=$P(@MKIN1,"*",N) Q
 I $G(%TO)="F10",LASTRKVN D  G A0 ;--- MIUN NOSAF
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,LASTRKVN,COLRKV,%REPN,%L1PC,COL0,COL01,PRTN) D ^%L1C
 .N %L1,MAC
 .K ^TREPK1(PRTN) S ^TREPK1(PRTN,1)=" iqiqa oein " S J=1
 .F JJ=1:1:$L(%L1PC("FLD"),"*") I $P(%L1PC("FLD"),"*",JJ)?1"x"1N.N,$P($G(%L1PC("FLD0")),"*",JJ)'="-" S J=J+1,^TREPK1(PRTN,J)=$P(^rep(%REPN,0,$P(%L1PC("FLD"),"*",JJ)),";")
 .S MAC="^TREPK1(PRTN)"
 .S %L1("EU")=2,%L1("BE")=7,%L1("T1")=" : itl oein "
 .S %L1("TXT1")="%NXS<>16H"
 .D ^%L1NU K ^TREPK1(PRTN) I FLAG'="" Q
 .I INDEX=1 K ^TREPK(PRTN) S MAC1="^TREPK0(PRTN)",MAC2="^TREPK(PRTN)" D ^%S1GC1 Q
 .N I,I1,FL,A,IJ,IND S I=0,I1=0,FL=0
F101 .S I=I+1 I '$D(^TREPK(PRTN,I)) D VOZVR Q
 .S A=^TREPK(PRTN,I)
 .I A="" S I1=I,FL=0 G F101
 .I A?1"#"."#" D VOZVR S FL=0,I1=I G F101
 .I A?1"="."="1"*".E D VOZVR S FL=1 G F101
 .I 'FL,$G(^TREPK(PRTN,I-1))'?.P,$G(^TREPK(PRTN,I))'?.P F IJ=COL01:-1:1 I $P(^TREPK(PRTN,I),"*",IJ)'=$P(^TREPK(PRTN,I-1),"*",IJ) D VOZVR S I1=I-1 Q
 .I 'FL D  G F101
 ..S IND=$P(A,"*",COLRKV+INDEX-1)
 ..;;S IND=$E($J(IND*100,12,0),1,12)
 ..I IND?.E1A.E S IND=$$INV^%L1FRM(IND),IND=$E(IND_$J("",12-$L(IND)),1,12)
 ..I IND'?.E1A.E S IND=$E($J(99999900000-$P(IND,"."),12,0),1,12)
 ..S IND=IND_$J(I,5) ;$P(A,"*",1,LASTRKVN)
 ..S ^TREPK1(PRTN,IND)=A
 .G F101
 G 1
END I %TYPCRT["VT5" W %MODE80 ;$C(27),"[?3l"
 U 0 Q
 ;
VOZVR N II,N S N="",II=I1 F  S N=$O(^TREPK1(PRTN,N)) Q:N=""  D
 .S II=II+1,^TREPK(PRTN,II)=$G(^TREPK1(PRTN,N))
 K ^TREPK1(PRTN)
 Q
UP I %PG(%PG)<2 S %SAY=" dligz " X %XMSGV(1) S MK=%PG(%PG) Q
 S XX=$G(@(GLOB_(%PG(%PG)-1)_")")) S MK=%PG(%PG)-1
 I XX?."#",MK>1 S MK=MK-1
 Q
DW I MK'<SOF S %SAY=" seq " X %XMSGV(1) S MK=%PG(%PG) Q
 S XX=$G(@(GLOB_(%PG(%PG)+1)_")")) S MK=%PG(%PG)+1
 I XX?."#",MK<SOF S MK=MK+1
 Q
PGUP ;
 K %PG(%PG) S %PG=%PG-1
 I %PG<1 S %SAY=" dligz " X %XMSGV(1) S %PG=1,MK=1,%PG(1)=1 W *7 Q
 S MK=$G(%PG(%PG),1) S XX=$G(@(GLOB_MK_")")) I XX?1"#"."#",MK>1 S MK=MK-1
 Q
PGDOWN ;
 ;;F RR=MK+1:+1:MK+LNT S XX=$G(@(GLOB_RR_")"))
 ;;S MK=RR+(XX?1"#"."#")
 S %PG=%PG+1
 I MK>SOF S %SAY=" mipezp seq " X %XMSGV(1) G PGUP
 Q
11 ;  -------------------- DAF
 U $P:(NOECHO:NOWRAP) N XX
111 S XX=$G(@(GLOB_MK_")"))
 I XX?."#" S MK=MK+1
 K RKV1O D KOT
 W *27,"["_(KOTNUM+SMY)_";1H" S %COKR=0
 S %PG(%PG)=MK
 F RR=MK:1 Q:RR>(MK+LNT-1-%COKR)  S XX=$G(@(GLOB_RR_")")),XX0=$G(^(RR-1)) Q:XX?1"#"."#"  S:XX0?.P&(XX0["==") PRITOG="" D:$G(COL01)>$G(COL0)&'$D(PRITOG)  D PRT K PRITOG
 .Q:XX?.P
 .N %STR,%OKR,JJ S %OKR=0 S %STR=""
 .F JJ=COL01:-1:COL0+1 D VF D  ;--- SHAPKA MEJDU STROK
 ..S %STR=%STR_RKV1_":"_$P(KOT(1),"*",JJ)_"   "
 ..;;I RKV'?.P,RKV'?."0"1"."."0",RKV'=$G(RKV1O(JJ)) S %OKR=1,RKV1O(JJ)=RKV
 ..I RKV'=$G(RKV1O(JJ)) S %OKR=1,RKV1O(JJ)=RKV
 .I %OKR W !?(GW-$L(%STR)) W %CLI,$TR($TR(%STR,%TES1,%TES2),%TEN,%THB) S %COKR=%COKR+1
 .X %XCL
 S MK=RR
 I XX?1"#"."#" D
 .F JJ=FRSTFL:1:COL1 S $P(XX,"*",JJ)="-----------------"
 .D PRT
 I $D(%L1PC("F9","HELP")) S %SAY=%L1PC("F9","HELP") X %XMSGV
 Q
 ;-------------------- LINE
PRT ;
 U $P:(NOECHO:NOWRAP)
 X %XCL W !?TB I XX?.P&(LASTFL<FLDNUM) N XX S XX=$TR($J("",FLDNUM)," ","*")
 F JJ=LASTFL:-1:FRSTFL D:$D(KOTFL) FG("CF") D VSV
PRT1 U $P:(NOECHO:NOWRAP) S $X=0 D:%CVET FG("RF")
 W ":",$J($E(RR,$L(RR)-3,10),4) I LASTFL=FLDNUM G PRTE
 W !?TB2
 F JJ=FLDNUM:-1:LASTFL+1 X %LIGHT D FG("YF") D VSV
PRTE X %XCL
 Q
VSV N RKV1 D VF I RKV'?.P&$D(PRITOG),JJ'>LASTFL W %LIGHT1 ;%CLI
 I RKV1?.P1"="."=".P!(RKV1?.P1"-"."-".P) D FG("CF")
 W $TR($TR(RKV1,%TES1,%TES2),%TEN,%THB) X %XCL W " "
 Q
VF S RKV=$P(XX,"*",JJ)
 S RKV1=RKV
 N DL,DR,TB,SIGN
 S TB=$P(TAB,"*",JJ)
 S DL=+TB,DR=+$P(TB,",",2)
 S SIGN=TB["S"!(TB["+")
 ;
 I DR?1N.N,TB'[".",RKV?."+"."-"1N.N.".".N D  Q
 .I 'DR,$P(RKV,".",2) S DR=2
 .I 'SIGN S RKV1=$J(RKV,DL,DR)
 .I SIGN S RKV1=$J($FN(RKV,"+",DR),DL)
 .I $TR(RKV1," ","")="" S RKV1=$J($J("",DL\2)_"-",DL)
 ;
 S RKV1=$J($E(RKV,$L(RKV)-$P(TAB,"*",JJ)+1,255),$P(TAB,"*",JJ))
 Q
KOT ;-- INPUT: MK
 X %XCL
 N RR,JJ,XX,KOTFL W *27,"["_SMY0_";1H",*27,"[J" X %chiste
 S KOTFL=""
 I $G(COL0) D  ;----------------- PECHAT SHAPKI
 .N XX
 .W *27,"["_SMY0_";1H" S XX=KOT(1)
 .W !?TB0 F JJ=COL0:-1:1 D FG("CF"),VSV
 .F JJ=1:1:COL0 S $P(XX,"*",JJ)="================="
 .W !?TB0 F JJ=COL0:-1:1 D FG("CF"),VSV
 .S XX=$G(@(GLOB_MK_")"))
 .W !?TB0 F JJ=COL0:-1:1 X %LIGHT D FG("YF"),VSV
 S RR=$$^%L1HB("dxey") W *27,"["_(SMY-2+(COL1=FLDNUM))_";1H" S XX=KOT(1) D PRT
 S RR="-----" F JJ=FLDNUM:-1:FRSTFL S $P(XX,"*",JJ)="-----------------"
 I $$^%L1UCI="MLY",'$D(%L1PC("F9","HELP")) S %SAY=" F9 - "_$S('$D(PLSPK):"hixt qihxk bivdl ",1:" zipeayg bivdl ") X %XMSGV
 W *27,"["_SMY_";1H" D PRTK
 W *27,"["_(KOTNUM+SMY)_";1H"
 X %XCL
 Q
FG(FG) I %CVET,$$^%L1DISP(USTR) W %LIGHT1,%CV(FG)
 Q
PRTK ;
 I LASTFL'=FLDNUM G PRTK1
 X %XCL W !?TB F JJ=LASTFL:-1:FRSTFL D:$D(KOTFL) FG("CF") D VSV
 I $$^%L1DISP(USTR) U $P:(NOECHO:NOWRAP)
 W $J($E(RR,$L(RR)-3,10),4) Q
PRTK1 W !?TB2
 F JJ=FLDNUM:-1:LASTFL+1 X %LIGHT D VSV
 X %XCL
 Q
PG ;
 S MK=%PG(%PG) S XX=$G(@(GLOB_MK_")")) I XX?1"#"."#",MK>1 S MK=MK-1
 Q
MASAH I $$^%L1DISP(USTR) S GW=75 I $E(%TYPCRT,1,3)="VT5",DLD>GW,DLD<123 U $P:(NOECHO:NOWRAP) S GW=122 W %MODE132 S %L1PC("SHP","SM")=20
 D SHAP
 Q
SHAP I '$$^%L1DISP(USTR) S %L1PC("SHP","PRPC")=0,USTR=3 D ^%L3SHAP Q
 S USTR=0 D FG("YF") D ^%L3SHAP
 S %L1PC("VGR")=$G(%L1PC("SHP","SC"),1) X %XCL
 Q
EX ;
 N PRM,I,DL,RGS,DOT,%S S PRM(1)="~"
 F I=1:1:$L(%L1PC("COD"),"*") S ID=$P(%L1PC("COD"),"*",I) I ID'="" I $D(^rep(%REPN,0,ID)) D
 .S DL=$P(^rep(%REPN,0,ID),";",2)
 .S RGS=$S(DL["H":"H",DL[",":"N",1:"E")
 .S DOT=$P(DL,",",2),DL=+DL
 .S PRM(1)=$G(PRM(1))_RGS_","_DL_","_DOT_"*"
 S PRM(1)=$E(PRM(1),1,$L(PRM(1))-1)
 S PRM(2)="!*"_$G(^rep(%REPN))_"*"_$S($G(^rep(%REPN,"LPT"))="S":"Y",1:"N")
 S PRM(3)="#*"_COL0_"*"_COL01_"*"
 N RR S RR=3 D
 .N I,A,ST,L,NM,R0,%ME,%AD,IND
 .F I=1:1:$L(^rep(%REPN,"FLD"),"*") S A=$P(^rep(%REPN,"FLD"),"*",I) I $L(A) D
 ..Q:'$D(@("ME"_A))  Q:'$D(@("AD"_A))
 ..S %ME=$G(@("ME"_A)),%AD=$G(@("AD"_A))
 ..Q:%ME?1"-9"."9"&(%AD?1"9"."9")
 ..Q:%ME=""&(%AD="")
 ..Q:+%ME=0&(%AD?1"9"."9")
 ..S R0=$G(^rep(%REPN,0,A)),NM=$P(R0,";"),L=$P(R0,";",2)
 ..I L["D" D
 ...I %ME?6N S %ME=$$^%L1DC(%ME,1),%AD=$$^%L1DC(%AD,1) Q
 ...I %ME?5N S %ME=$ZD(%ME,"DD/MM/YY"),%AD=$ZD(%AD,"DD/MM/YY") Q
 ..S %ME=%ME_" "_NM_"n",%AD=%AD_" "_NM_" cr"
 ..S ST=%AD_"  "_%ME S RR=RR+1,PRM(RR)="?*"_ST
 D ^%L1PCEX
 Q

%L1PC10
%L1PC1 ;NEW PROGRAM                         [ 17.05.04 18:59 ] [ 15.02.04 14:39 ] [ 05.05.02  7:53 AM ]
 ;INPUT: ---%L1PC("COD"),%L1PC("RZD"),%L1PC("FILE")
 ;          %L1PC("F9"),%L1PC("F9","HELP")
 ;--------------------------------------
 N A,COL1,COLRKV,DL,FLDNUM,FRSTFL,I,ID,LASTFL,POZ,TAB,TB0,TB,TB1,TB2,SMY,XX,XX0
 N MK,MKIN1,MON,RR,RGS,RKV,PRITOG,SOF,VGR,RSTR,PRTN,FL,FLDNUM1,RKV1O,LASTRKV,LASTRKVN
 N GLOB,DLD S GLOB="^"_%L1PC("FILE")_"(PRTN,",%PG=1
 K ^TREPK0($P) S MAC1="^TREPK($P)",MAC2="^TREPK0($P)" D ^%S1GC1
A0 I $D(^rep(%REPN,"SHP","KOD")) S %L1PC("SHP","PAGE")=1,%L1PC("SHP","KOD")=^("KOD"),%L1PC("SHP","PROG")=$G(^("PROG"))
 S %L1PC("SHP","PRPC")=1
A S KOLM=1 S FLDNUM=$L(%L1PC("COD"),"*"),%HBRY=""
 S KOTNUM=1
 S FRSTFL=1+$G(COL01)
 ;---- FORM. MAKETA
 S TAB="",RGS="",KOT(1)="",OK=1,DLD=0
 F I=1:1:$L(%L1PC("COD"),"*") S ID=$P(%L1PC("COD"),"*",I) I ID'="" S:'$D(^rep(%REPN,0,ID)) OK=0 Q:'OK  D
 .S DL=$P(^rep(%REPN,0,ID),";",2)
 .S TAB=TAB_DL_"*" I I'<FRSTFL S DLD=DLD+DL+1
 .S RGS=RGS_$S(DL["H":"H",DL[",":"N",1:"E")_"*"
 .S KOT(1)=KOT(1)_$P(^rep(%REPN,0,ID),";")_"*"
 I 'OK S %SAY="( "_ID_"-l zexcbd xqeg ) ieby %L1PC " X %XMSGV(1) G END
 S TAB=$E(TAB,1,$L(TAB)-1),RGS=$E(RGS,1,$L(RGS)-1)
 I USTR=0!(USTR=$P) W %HBR U $P:(NOECHO:NOWRAP) N %ECHO
 F I=FRSTFL:1:FLDNUM S A=$P(%L1PC("COD"),"*",I) Q:A?1"x"1N.N
 S COLRKV=I-1
 S LASTRKV="",LASTRKVN=0 F I=1:1:FLDNUM I $P(%L1PC("FLD"),"*",I)?1"x"1N.N,I>1 S LASTRKV=$P(%L1PC("FLD"),"*",I-1) Q
 I LASTRKV'="" F I=1:1:FLDNUM I LASTRKV=$P(%L1PC("COD"),"*",I) S LASTRKVN=I Q
 D MASAH
 S VGR=0 I $D(%L1PC("VGR")) S VGR=%L1PC("VGR")
 S SMY0=VGR+1 I $G(COL0) S VGR=VGR+3
 S RSTR=$S($$HZGTOUCH^%L2MOUSE:18-VGR,1:21-VGR) U 0 S PRTN=$P I USTR S RSTR=54-VGR
 I USTR S GW=$S(DLD>75:122,1:75) ;$$^%L1PCGW(%REPN)
 ;------------ OPR-E KOL REKV NA 1-J STR
 S MON=0 F I=FRSTFL:1:FLDNUM S A=$P(TAB,"*",I) Q:(MON+A+1>GW)  S MON=MON+A+1,COL1=I
 ;I MON<75 S GW=75
 I COLRKV<COL1,COL1<FLDNUM S COL1=COLRKV
 ;------------  OPR-E SMESH.
 S TB0=0 I $G(COL0) F I=1:1:COL0 S TB0=TB0+$P(TAB,"*",I)+1 ;---- SHAPKA
 S TB1=0 F I=FRSTFL:1:COL1 S TB1=TB1+$P(TAB,"*",I)+1 ;---- 1-ST LINE
 K POZ S POZ(FRSTFL)=GW+1
 F I=FRSTFL+1:1:COL1 S POZ(I)=POZ(I-1)-$P(TAB,"*",I-1)-1
 S TB2=0 F I=COL1+1:1:FLDNUM S TB2=TB2+$P(TAB,"*",I)+1 ;***LEV 30.03
 I USTR=0 S TB1=GW-TB1,TB2=GW-TB2-2
 E  S TB1=GW-TB1\2,TB2=GW-TB2-2\2
 S TB0=GW-TB0\2 F I=0:1:2 S:@("TB"_I)<0 @("TB"_I)=0
 K POZ0
 S POZ0(COL0)=TB0+$P(TAB,"*",COL0)+2
 F I=1:1:COL0-1 S POZ0(COL0-I)=POZ0(COL0-I+1)+$P(TAB,"*",COL0-I)+1
 S LASTFL=COL1,TB=TB1
 S SMY=2+VGR+(COL1<FLDNUM)
001 U 0
 S SOF=$O(@(GLOB_"999999)"),-1) ;---- SOF - CSLO ZAP V FILE
 S MKIN1=GLOB_"RR)",MK=1 ;--- MK1 - N ZAP V FILE=N 1-J ZAP NA EKR
 S LNT=$S(LASTFL<FLDNUM:(RSTR\2)-KOTNUM,1:RSTR-KOTNUM) ; 2 STR ILI 1 STR
 I USTR S LNT=LNT-1 S %L1PC("SHP","PRPC")=1 D ^%L1PC2 G:$D(%L1PC("END")) END U 0 S %GET="<DONE>" D N^%L1GET S %S=0 G 10 ;G END
01 ;
 ;;I '$D(%L1PC("SHP","KOD")) D KOT^%L1PC
 D KOT^%L1PC
 D 11 K GL
 S FRST=""
1 S %GET=": {}0{}-d`ivi {}F10{}-oein {}F8{}-yetig {}END{}-oexg` {}HOME{}-oey`x {}PGDW{}-`ad {}PGUP{}-mcew jqn#1"
 I $G(%CVET) S %CL00=$G(%CL0),%CL0=%CL1
 S %ZMSF="" D N^%L1GET
 I $D(%CL00) S %CL0=%CL00 K %CL00
10 X %XCL I %S=0!($G(%TO)="END") D  G:%S=1 01 G:USTR&'$G(%EROP) A0 G:'$G(%EROP) END I $G(%EROP) G END
 .W *27,"[;24r"
 .I $D(%L1PC("END")) D @%L1PC("END") Q  ;--- PRINT PROGRAMM
ZP .S USTR=0,%EROP="",%GET="99-qitcdl ,97-EXCEL -l uaew oikdl ,96-xenyl ,95-xeciyl oikdl ,1-dbvdl xefgl"
 .I $D(^r($J)),%L1PC("COD")["LKH" S %GET=" 98 - zewacn qitcdl , 99 - qitcdl "
 .D N^%L1GET I %S=99 S USTR=3 Q  ;D LPT^%L1PC Q
 .I %S=1 S %PG=%PG+1 D PGUP Q
 .
 .I %S=97 D EX G ZP
 .
 .I %S=96!(%S=95) D  Q
 ..N OTB S OTB=%S N %S
 ..F  S %GETHB="" S %GET=": dxrd #30" D N^%L1GET S HEARA=%S Q:$L(HEARA)
 ..K %GETHB
 ..N SUGM S @("SUGM="_%L1SUG)
 ..I OTB=95 K %L1LPT("SND") D  Q:'$G(%L1LPT("SND"))
ZM ...S %GET=": fkxnl xeciyl oikdl ++13,60,HH,,R#++4,E,I++++++^MRKZ\\\\VP" D ^%L1GET Q:%S=""!(%TO="END")
 ...S %L1LPT("SND")=%S I %L1LPT("SND")=$$^%L1MRK S %SAY=" ! jnvrl xcyl mrh oi` " X %XMSGV(1) G ZM
 ...S %L1LPT("SND","ARX")=^rep(%REPN)_"\"_SUGM_"\"_HEARA
 ..I OTB=96 K %L1("ARX") S %L1LPT("ARX")=^rep(%REPN)_"\"_SUGM_"\"_HEARA
 ..S %L1LPT("DEV")=54,USTR=3 D LPT^%L1PC
 .I $D(^r($J)),%L1PC("COD")["LKH",%S=98 K ^TEMP($P),^VRM($J) D
 ..N IND,LKH,I S IND=$$^%L1FP(%L1PC("COD"),"*","LKH",1)
 ..F RR=1:1 Q:'$D(@MKIN1)  S LKH=$P(@MKIN1,"*",IND) I LKH'="" S ^VRM($J,LKH)=""
 ..S LKH="" F I=1:1 S LKH=$O(^VRM($J,LKH)) Q:LKH=""  S ^TEMP($P,I)=LKH
 ..D ^P1MDB K ^TEMP($P)
 ;
 I $G(%TO)="F9",'$D(%L1PC("F9")),$P($$^%L1ZU(0),",")="MLY" D  D MASAH,PG G 01
 .I '$D(PLSPK) N (%UPRCOD,%XMSGV,%XMSGN,%XMSG,MSP,PARIT,%MBG) D ^L2PARIT Q
 .S %GET=": zipeayg xtqn #8" D N^%L1GET Q:%S=""!($G(%TO)="END")
 .S HBNT=%S
 .N STR,TSTR,ISKA,SPK S STR=^YZRN($G(^MRK($P),1000),10),TSTR=$P(STR,"*",4),STR=$P(STR,"*",3) D  D:ISKA HB^PLSPKCHI I 'ISKA Q:$G(FLAG)'=""  S %SAY=" zkxrna zniiw `l dfk xtqn mr zipeayg " X %XMSGV(1)
  ..S SPK=$O(^MHSBI(HBNT,"")) I SPK="" S ISKA="" Q
  ..I $O(^MHSBI(HBNT,SPK))="" S ISKA=$G(^MHSBI(HBNT,SPK)) Q
  ..S MAC="^MHSBI(HBNT)" K %L1 S %L1("EU")=2,%L1("BE")=7
  ..S %L1("T1")="    wtq my          | wtq | zipeayg "
  ..S %L1("TXT1")="$G(^YZRN(%NXN))<>20H\/%NXN<>5\/HBNT<>9"
  ..D ^%L1NU I FLAG'="" S ISKA="" Q
  ..S ISKA=$G(^MHSBI(HBNT,INDEX))
 .Q
 I $G(%TO)="F9",'$D(%L1PC("F9")) D  D MASAH,PG G 01
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 .S %GET=": hixt xtqn #8" D N^%L1GET Q:%S=""!($G(%TO)="END")
 .S P1PARI("TVX")="",PAR=%S D ^P1PARI
 I $G(%TO)="F9",$D(%L1PC("F9"))#2 D  D PG S %TO="" G 01
 .N N S N="" F  S N=$O(%L1PC("F9",N)) Q:N=""  S @N=$G(%L1PC("F9",N))
 .D @%L1PC("F9")
 .D MASAH
 ;
 I $G(%TO)="UP" D UP G 01
 I $G(%TO)="DW" D DW G 01
 I $G(%TO)="PGUP" D PGUP G 01
 I $G(%TO)="PGDW" D PGDOWN G 01
 I $G(%TO)="ENDS" S %PG=%PG+1,MK=SOF-$S(LASTFL=FLDNUM:8,1:4) S:MK<1 MK=1 S %PG(%PG)=MK S %SAY=" mcew ziid eay jqnl jze` xifgi <PGUP> " X %XMSGV(1) G 01
 I $G(%TO)="HOME" G 001
 ;
 I $G(%TO)="F8" S OK=0 D  X:'OK "S %SAY="" mipezp oi` "" W *7 X %XMSGV(1) " S:'OK MK=%PG(%PG) G:'OK 01 I OK S MK=RR-1 G 01
F8 .K JJ,RKV S JJ=0 F I=1:1:COL0 S A=$P(%L1PC("COD"),"*",I) I A?1U.U S JJ=JJ+1,JJ(JJ)=I D  Q:I<0
 ..S %GET="++"_(SMY0+2)_","_POZ0(I)_",HH#"
 ..S %GET=%GET_$P($G(@(GLOB_MK_")")),"*",I)
 ..S %GET=%GET_"++"_$P(TAB,"*",I)_",E,I"_$S($D(^rep(%REPN,0,A,"FILE"))&($E($G(^("FILE")))'="+"):"++++ F6 - my yetig ,F7 - dbvd ++"_^rep(%REPN,0,A,"FILE")_"++"_$S(A="PRT":"S %S=$TR($J(%S,8),"" "",0)",1:""),1:"")
 ..S %GET("REST")="D 11^%L1PC1" D ^%L1GET I $G(%TO)="END" D  Q
 ...I I=1 S I=-1 Q
 ...I $D(JJ(JJ-2)) S JJ=JJ-2,I=JJ(JJ) Q
 ...S I=0,JJ=0 Q
 ..I $P(TAB,"*",I)["." S %S=$TR($J(%S,$P(TAB,"*",I))," ",0)
 ..I %S S RKV(I)=%S
 .Q:I'>0
 .S %YY=(3+VGR),%XX=0 X %POSIC W %chists
 .K JJ S JJ=0 F I=FRSTFL:1:COL1 S A=$P(%L1PC("COD"),"*",I) I A?1U.U S JJ=JJ+1,JJ(JJ)=I D  Q:I<0
 ..S %GET="++"_(3+VGR)_","_POZ(I)_",HH#++"_$P(TAB,"*",I)_",E,I"_$S($D(^rep(%REPN,0,A,"FILE"))&($E($G(^("FILE")))'="+"):"++++ F6 - my yetig ,F7 - dbvd ++"_^rep(%REPN,0,A,"FILE")_"++"_$S(A="PRT":"S %S=$TR($J(%S,8),"" "",0)",1:""),1:"")
 ..S %GET("REST")="D 11^%L1PC1" D ^%L1GET I $G(%TO)="END" D  Q
 ...I I=FRSTFL S I=-1 Q
 ...I $D(JJ(JJ-2)) S JJ=JJ-2,I=JJ(JJ) Q
 ...S I=FRSTFL-1,JJ=0 Q
 ..I %S S RKV(I)=%S
 .I I<0 G F8
 .Q:'$D(RKV)  S OK=0 F RR=%PG(%PG)+1:1 Q:'$D(@MKIN1)  Q:OK  S N="" F  S N=$O(RKV(N)) S:N="" OK=1 Q:OK  I RKV(N)'=$P(@MKIN1,"*",N) Q
 I $G(%TO)="F10",LASTRKVN D  G A0 ;--- MIUN NOSAF
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,LASTRKVN,COLRKV,%REPN,%L1PC,COL0,COL01) D ^%L1C
 .N %L1,MAC
 .K ^TREPK1($P) S ^TREPK1($P,1)=" iqiqa oein " S J=1
 .F JJ=1:1:$L(%L1PC("FLD"),"*") I $P(%L1PC("FLD"),"*",JJ)?1"x"1N.N,$P($G(%L1PC("FLD0")),"*",JJ)'="-" S J=J+1,^TREPK1($P,J)=$P(^rep(%REPN,0,$P(%L1PC("FLD"),"*",JJ)),";")
 .S MAC="^TREPK1($P)"
 .S %L1("EU")=2,%L1("BE")=7,%L1("T1")=" : itl oein "
 .S %L1("TXT1")="%NXS<>16H"
 .D ^%L1NU K ^TREPK1($P) I FLAG'="" Q
 .I INDEX=1 K ^TREPK($P) S MAC1="^TREPK0($P)",MAC2="^TREPK($P)" D ^%S1GC1 Q
 .N I,I1,FL,A,IJ,IND S I=0,I1=0,FL=0
F101 .S I=I+1 I '$D(^TREPK($P,I)) D VOZVR Q
 .S A=^TREPK($P,I)
 .I A="" S I1=I,FL=0 G F101
 .I A?1"#"."#" D VOZVR S FL=0,I1=I G F101
 .I A?1"="."="1"*".E D VOZVR S FL=1 G F101
 .I 'FL,$G(^TREPK($P,I-1))'?.P,$G(^TREPK($P,I))'?.P F IJ=COL01:-1:1 I $P(^TREPK($P,I),"*",IJ)'=$P(^TREPK($P,I-1),"*",IJ) D VOZVR S I1=I-1 Q
 .I 'FL D  G F101
 ..S IND=$P(A,"*",COLRKV+INDEX-1)
 ..;;S IND=$E($J(IND*100,12,0),1,12)
 ..I IND?.E1A.E S IND=$$INV^%L1FRM(IND),IND=$E(IND_$J("",12-$L(IND)),1,12)
 ..I IND'?.E1A.E S IND=$E($J(99999900000-$P(IND,"."),12,0),1,12)
 ..S IND=IND_$J(I,5) ;$P(A,"*",1,LASTRKVN)
 ..S ^TREPK1($P,IND)=A
 .G F101
 G 1
END I %TYPCRT["VT5" W %MODE80 ;$C(27),"[?3l"
 U 0 Q
 ;
VOZVR N II,N S N="",II=I1 F  S N=$O(^TREPK1($P,N)) Q:N=""  D
 .S II=II+1,^TREPK($P,II)=$G(^TREPK1($P,N))
 K ^TREPK1($P)
 Q
UP I %PG(%PG)<2 S %SAY=" dligz " X %XMSGV(1) S MK=%PG(%PG) Q
 S XX=$G(@(GLOB_(%PG(%PG)-1)_")")) S MK=%PG(%PG)-1
 I XX?."#",MK>1 S MK=MK-1
 Q
DW I MK'<SOF S %SAY=" seq " X %XMSGV(1) S MK=%PG(%PG) Q
 S XX=$G(@(GLOB_(%PG(%PG)+1)_")")) S MK=%PG(%PG)+1
 I XX?."#",MK<SOF S MK=MK+1
 Q
PGUP ;
 K %PG(%PG) S %PG=%PG-1
 I %PG<1 S %SAY=" dligz " X %XMSGV(1) S %PG=1,MK=1,%PG(1)=1 W *7 Q
 S MK=%PG(%PG) S XX=$G(@(GLOB_MK_")")) I XX?1"#"."#",MK>1 S MK=MK-1
 Q
PGDOWN ;
 ;;F RR=MK+1:+1:MK+LNT S XX=$G(@(GLOB_RR_")"))
 ;;S MK=RR+(XX?1"#"."#")
 S %PG=%PG+1
 I MK>SOF S %SAY=" mipezp seq " X %XMSGV(1) G PGUP
 Q
11 ;  -------------------- DAF
 U $P:(NOECHO:NOWRAP) N XX
111 S XX=$G(@(GLOB_MK_")"))
 I XX?."#" S MK=MK+1
 K RKV1O D KOT
 W *27,"["_(KOTNUM+SMY)_";1H" S %COKR=0
 S %PG(%PG)=MK
 F RR=MK:1 Q:RR>(MK+LNT-1-%COKR)  S XX=$G(@(GLOB_RR_")")),XX0=$G(^(RR-1)) Q:XX?1"#"."#"  S:XX0?.P&(XX0["==") PRITOG="" D:$G(COL01)>$G(COL0)&'$D(PRITOG)  D PRT K PRITOG
 .Q:XX?.P
 .N %STR,%OKR,JJ S %OKR=0 S %STR=""
 .F JJ=COL01:-1:COL0+1 D VF D  ;--- SHAPKA MEJDU STROK
 ..S %STR=%STR_RKV1_":"_$P(KOT(1),"*",JJ)_"   "
 ..;;I RKV'?.P,RKV'?."0"1"."."0",RKV'=$G(RKV1O(JJ)) S %OKR=1,RKV1O(JJ)=RKV
 ..I RKV'=$G(RKV1O(JJ)) S %OKR=1,RKV1O(JJ)=RKV
 .I %OKR W !?(GW-$L(%STR)) W %CLI,$TR($TR(%STR,%TES1,%TES2),%TEN,%THB) S %COKR=%COKR+1
 .X %XCL
 S MK=RR
 I XX?1"#"."#" D
 .F JJ=FRSTFL:1:COL1 S $P(XX,"*",JJ)="-----------------"
 .D PRT
 I $D(%L1PC("F9","HELP")) S %SAY=%L1PC("F9","HELP") X %XMSGV
 Q
 ;-------------------- LINE
PRT ;
 U $P:(NOECHO:NOWRAP)
 X %XCL W !?TB I XX?.P&(LASTFL<FLDNUM) N XX S XX=$TR($J("",FLDNUM)," ","*")
 F JJ=LASTFL:-1:FRSTFL D:$D(KOTFL) FG("CF") D VSV
PRT1 U $P:(NOECHO:NOWRAP) S $X=0 D:%CVET FG("RF")
 W ":",$J($E(RR,$L(RR)-3,10),4) I LASTFL=FLDNUM G PRTE
 W !?TB2
 F JJ=FLDNUM:-1:LASTFL+1 X %LIGHT D FG("YF") D VSV
PRTE X %XCL
 Q
VSV N RKV1 D VF I RKV'?.P&$D(PRITOG),JJ'>LASTFL W %CLI
 I RKV1?.P1"="."=".P!(RKV1?.P1"-"."-".P) D FG("CF")
 W RKV1 X %XCL W " "
 Q
VF S RKV=$P(XX,"*",JJ)
 S RKV1=RKV
 N DL,DR,TB,SIGN
 S TB=$P(TAB,"*",JJ)
 S DL=+TB,DR=+$P(TB,",",2)
 S SIGN=TB["S"!(TB["+")
 ;
 I DR?1N.N,TB'[".",RKV?."+"."-"1N.N.".".N D  Q
 .I 'DR,$P(RKV,".",2) S DR=2
 .I 'SIGN S RKV1=$J(RKV,DL,DR)
 .I SIGN S RKV1=$J($FN(RKV,"+",DR),DL)
 .I $TR(RKV1," ","")="" S RKV1=$J($J("",DL\2)_"-",DL)
 ;
 S RKV1=$J($E(RKV,$L(RKV)-$P(TAB,"*",JJ)+1,255),$P(TAB,"*",JJ))
 ;;I TB["H"!$D(KOTFL) S RKV1=$TR($TR(RKV1,%TES1,%TES2),%TEN,%THB)
 S RKV1=$TR($TR(RKV1,%TES1,%TES2),%TEN,%THB)
 Q
KOT ;-- INPUT: MK
 X %XCL
 N RR,JJ,XX,KOTFL W *27,"["_SMY0_";1H",*27,"[J" X %chiste
 S KOTFL=""
 I $G(COL0) D  ;----------------- PECHAT SHAPKI
 .N XX
 .W *27,"["_SMY0_";1H" S XX=KOT(1)
 .W !?TB0 F JJ=COL0:-1:1 D FG("CF"),VSV
 .F JJ=1:1:COL0 S $P(XX,"*",JJ)="================="
 .W !?TB0 F JJ=COL0:-1:1 D FG("CF"),VSV
 .S XX=$G(@(GLOB_MK_")"))
 .W !?TB0 F JJ=COL0:-1:1 X %LIGHT D FG("YF"),VSV
 S RR=$TR($TR("dxey",%TES1,%TES2),%TEN,%THB) W *27,"["_(SMY-2+(COL1=FLDNUM))_";1H" S XX=KOT(1) D PRT
 S RR="-----" F JJ=FLDNUM:-1:FRSTFL S $P(XX,"*",JJ)="-----------------"
 I '$D(%L1PC("F9","HELP")) S %SAY=" F9 - "_$S('$D(PLSPK):"hixt qihxk bivdl ",1:" zipeayg bivdl ") X %XMSGV
 W *27,"["_SMY_";1H" D PRTK
 W *27,"["_(KOTNUM+SMY)_";1H"
 X %XCL
 Q
FG(FG) I %CVET,USTR=0!(USTR=$P) W %LIGHT1,%CV(FG)
 Q
PRTK ;
 I LASTFL'=FLDNUM G PRTK1
 X %XCL W !?TB F JJ=LASTFL:-1:FRSTFL D:$D(KOTFL) FG("CF") D VSV
 I USTR=0!(USTR=$P) U $P:(NOECHO:NOWRAP)
 W $J($E(RR,$L(RR)-3,10),4) Q
PRTK1 W !?TB2
 F JJ=FLDNUM:-1:LASTFL+1 X %LIGHT D VSV
 X %XCL
 Q
PG ;
 S MK=%PG(%PG) S XX=$G(@(GLOB_MK_")")) I XX?1"#"."#",MK>1 S MK=MK-1
 Q
MASAH I USTR=0!(USTR=$P) S GW=75 I $E(%TYPCRT,1,3)="VT5" U $P:(NOECHO:NOWRAP) S GW=122 W %MODE132 S %L1PC("SHP","SM")=20
 D SHAP
 Q
SHAP S:USTR %L1PC("SHP","PRPC")=0 D FG("YF") D ^%L3SHAP
 S %L1PC("VGR")=$G(%L1PC("SHP","SC"),1) I USTR=0!(USTR=$P) X %XCL
 Q
EX ;
 N PRM,I,DL,RGS,DOT,%S S PRM(1)="~"
 F I=1:1:$L(%L1PC("COD"),"*") S ID=$P(%L1PC("COD"),"*",I) I ID'="" I $D(^rep(%REPN,0,ID)) D
 .S DL=$P(^rep(%REPN,0,ID),";",2)
 .S RGS=$S(DL["H":"H",DL[",":"N",1:"E")
 .S DOT=$P(DL,",",2),DL=+DL
 .S PRM(1)=$G(PRM(1))_RGS_","_DL_","_DOT_"*"
 S PRM(1)=$E(PRM(1),1,$L(PRM(1))-1)
 S PRM(2)="!*"_$G(^rep(%REPN))_"*"_$S($G(^rep(%REPN,"LPT"))="S":"Y",1:"N")
 S PRM(3)="#*"_COL0_"*"_COL01_"*"
 N RR S RR=3 D
 .N I,A,ST,L,NM,R0,%ME,%AD,IND
 .F I=1:1:$L(^rep(%REPN,"FLD"),"*") S A=$P(^rep(%REPN,"FLD"),"*",I) I $L(A) D
 ..Q:'$D(@("ME"_A))  Q:'$D(@("AD"_A))
 ..S %ME=$G(@("ME"_A)),%AD=$G(@("AD"_A))
 ..Q:%ME?1"-9"."9"&(%AD?1"9"."9")
 ..Q:%ME=""&(%AD="")
 ..Q:+%ME=0&(%AD?1"9"."9")
 ..S R0=$G(^rep(%REPN,0,A)),NM=$P(R0,";"),L=$P(R0,";",2)
 ..I L["D" D
 ...I %ME?6N S %ME=$$^%L1DC(%ME,1),%AD=$$^%L1DC(%AD,1) Q
 ...I %ME?5N S %ME=$ZD(%ME,"DD/MM/YY"),%AD=$ZD(%AD,"DD/MM/YY") Q
 ..S %ME=%ME_" "_NM_"n",%AD=%AD_" "_NM_" cr"
 ..S ST=%AD_"  "_%ME S RR=RR+1,PRM(RR)="?*"_ST
 D ^%L1PCEX
 Q

%L1PC2
%L1PC2 ; --- PRINTER    [ 26.12.06 09:38 ] [ 18.09.06 12:47 ] [ 15.06.06 11:19 ]
 ;--- %L1PC("SHP","KOD") - CODE OF HEADER
 N FRST S FRST="" K %L1PC("SHP","PAGE") D ^%L1TS
 S %DEV="USTR" D OPEN^%L1LPT Q:%EROP  ;;O USTR::2 E  U 0 S %SAY=" dqetz zqtcn " X %XMSGV(1) Q
 D UDEV^%L1LPT(USTR)
 I $D(^L1PCSND($P))>9 D PC^%L1PCSNP
11 ;  -------------------- DAF
 N XX,RR,RR1,PRKT S PRKT=0,RR1=0 K RKV1O
 F RR=1:1:SOF D
 .S XX=$G(@("^"_%L1PC("FILE")_"("""_PRTN_""","_RR_")"))
 .D:RR=1!PRKT!(RR1'<LNT) KOT
 .D:COL01>COL0  D PRT S RR1=RR1+1 I XX?1"#"."#" S PRKT=1
 ..N %STR,%OKR,JJ S %OKR=0 S %STR="" F JJ=COL01:-1:COL0+1 D VF S %STR=%STR_RKV1_" :"_$P(KOT(1),"*",JJ)_"   " I RKV'?.P,RKV'?."0"1"."."0",RKV'=$G(RKV1O(JJ)) S %OKR=1,RKV1O(JJ)=RKV
 ..S %STR=$TR(%STR,TS0,TSS)
 ..I %OKR D
 ...W !!?(75-$L(%STR)),%STR,! S RR1=RR1+3
 D CLOSE^%L1LPT ;; W # C USTR
 Q
 ;-------------------- LINE
PRT ;
 W !?TB F JJ=LASTFL:-1:FRSTFL D VSV
 ;;I $D(PRITOG) W *13,?TB F JJ=LASTFL:-1:FRSTFL D VSV
 W $J($E(RR,$L(RR)-3,10),4) K PRITOG I LASTFL=FLDNUM G PRTE
 W !?TB2
 F JJ=FLDNUM:-1:LASTFL+1 D VSV
 ;;W *13,?TB2 F JJ=FLDNUM:-1:LASTFL+1 D VSV
PRTE ;
 I $D(PRIT0) S PRITOG="" K PRIT0
 Q
VSV N RKV1
 D VF
 I RKV["===" S PRIT0=""
 W $TR(RKV1,TS0,TSS) W " "
 Q
KOT ;
  N LNG,LPT80 K RKV1O
 ;S LPT80=1
 I $G(DLD)'>75 S LNG=75 W %L1OUT("MDP","NOCOND")
 I $G(DLD)>75 D
 .W %L1OUT("MDP","COND") S LNG=122
KOT1 N XX0 S XX0=XX N XX ;;I '$D(FRST),$I'=3,$I<51 H $S(LASTFL=FLDNUM:14,1:20)
 W:'$D(FRST) # S %TIM=$ZD($H,"24:60") W "  ",$$^%L1DC($H,1),"   ",%TIM," "_$TR($$^%L1DC($H,9)_" mei : dwtd onf",TS0,TSS),!
 N %AT,ST S %AT=$$^%L1HEAD("")
 I $D(%L1PC("HEAD")) S %AT=%L1PC("HEAD")
 I $L(%AT) S ST=%L1OUT("MDP","B")_$TR($$CENTRB^%L1FRM($TR(%AT,"#_",""),%L1OUT("MDP","GWPC")),TS0,TSS)_%L1OUT("MDP","N") W ST
 W !,$TR($J("",LNG)," ","-")
 N KT S KT=$S($L($G(QUERY)):$G(QUERY)_" ",1:"")_$G(^rep(%REPN))
 I $L(KT)*2'>LNG W !?(LNG-($L(KT)*2)\2),%L1OUT("MDP","B"),$TR(KT,TS0,TSS),%L1OUT("MDP","N")
 I $L(KT)*2>LNG W !?(LNG-$L(KT)\2),$TR(KT,TS0,TSS)
 N RR S RR2=0
 I $L($G(%L1PC("SHP","KOD"))) D
 .S %L1PC("SHP","SC")=1
 .S MAS(98)=$G(%L1PC("SHP","SL"),1),PRPC=1 D ^%L3SHAP K %L1PC("SHP","SC")
 I $G(DLD)>75 D
 .W %L1OUT("MDP","COND") S LNG=122
 D
 .N I,A,ST,L,NM,R0,%ME,%AD,IND
 .F I=1:1:$L(^rep(%REPN,"FLD"),"*") S A=$P(^rep(%REPN,"FLD"),"*",I) I $L(A) D
 ..Q:'$D(@("ME"_A))  Q:'$D(@("AD"_A))
 ..S %ME=$G(@("ME"_A)),%AD=$G(@("AD"_A))
 ..Q:%ME?1"-9"."9"&(%AD?1"9"."9")
 ..Q:%ME=""&(%AD="")
 ..Q:+%ME=0&(%AD?1"9"."9")
 ..S R0=$G(^rep(%REPN,0,A)),NM=$P(R0,";"),L=$P(R0,";",2)
 ..I L["D" D
 ...I %ME?6N S %ME=$$^%L1DC(%ME,1),%AD=$$^%L1DC(%AD,1) Q
 ...I %ME?5N S %ME=$ZD(%ME,"DD/MM/YY"),%AD=$ZD(%AD,"DD/MM/YY") Q
 ..S %ME=%ME_" "_NM_"n",%AD=%AD_" "_NM_" cr"
 ..S ST=%AD_"  "_%ME W !?(LNG-$L(ST)\2),$TR(ST,TS0,TSS) S RR2=RR2+1
 .W ! S RR2=RR2+1
 I $G(COL0) D
 .W !?TB0 S XX=KOT(1) F JJ=COL0:-1:1 D VSV
 .F JJ=1:1:COL0 S $P(XX,"*",JJ)="================="
 .W !?TB0 F JJ=COL0:-1:1 D VSV
 .S XX=XX0
 .W !?TB0 F JJ=COL0:-1:1 D VSV
 .;;W *13,?TB0 F JJ=COL0:-1:1 D VSV
 .W !
 S RR=$TR("qn",TS0,TSS) S XX=KOT(1) D PRT K XX
 S RR="--" F JJ=1:1:LASTFL S $P(XX,"*",JJ)="-----------------"
 D PRT K FRST S RR1=RR2,PRKT=0
 Q
 ;;VF S RKV=$P(XX,"*",JJ)
 ;;I $P(TAB,"*",JJ)'[","!(RKV'?."-+".N.".".N) S RKV1=$J($E(RKV,$L(RKV)-$P(TAB,"*",JJ)+1,255),$P(TAB,"*",JJ)) Q
 ;;S RKV1=$J(RKV,$P(TAB,"*",JJ),+$P($P(TAB,"*",JJ),",",2)) S:'$TR(RKV1," ","") RKV1=$J("",$P(TAB,"*",JJ))
 Q
VF S RKV=$P(XX,"*",JJ)
 S RKV1=RKV
 N DL,DR,TB,SIGN
 S TB=$P(TAB,"*",JJ)
 S DL=+TB,DR=+$P(TB,",",2)
 S SIGN=TB["S"!(TB["+")
 ;
 I DR?1N.N,RKV?."+"."-"1N.N.".".N D  Q
 .I 'SIGN S RKV1=$J(RKV,DL,DR)
 .I SIGN S RKV1=$J($FN(RKV,"+",DR),DL)
 .I $TR(RKV1," ","")="" S RKV1=$J($J("",DL\2)_"-",DL)
 ;
 S RKV1=$J($E(RKV,$L(RKV)-$P(TAB,"*",JJ)+1,255),$P(TAB,"*",JJ))
 Q

%L1PC20
%L1PC2 ; --- PRINTER [ 18.05.04 08:15 ] [ 17.05.04 19:05 ] [ 10.06.03 23:12 ]
 ;--- %L1PC("SHP","KOD") - CODE OF HEADER
 N FRST S FRST="" K %L1PC("SHP","PAGE") D ^%L1TS
 ;;O USTR::2 E  U 0 S %SAY=" dqetz zqtcn " X %XMSGV(1) Q
 N USTR0 S USTR0=USTR N USTR S USTR=USTR0
 S %DEV="USTR" D ^%L1LPT
 U USTR
11 ;  -------------------- DAF
 N XX,RR,RR1,PRKT S PRKT=0,RR1=0 K RKV1O
 F RR=1:1:SOF S XX=$G(@("^"_%L1PC("FILE")_"("""_PRTN_""","_RR_")")) D:RR=1!PRKT!(RR1'<LNT) KOT D:COL01>COL0  D PRT S RR1=RR1+1 I XX?1"#"."#" S PRKT=1
 .N %STR,%OKR,JJ S %OKR=0 S %STR="" F JJ=COL01:-1:COL0+1 D VF S %STR=%STR_RKV1_" :"_$P(KOT(1),"*",JJ)_"   " I RKV'?.P,RKV'?."0"1"."."0",RKV'=$G(RKV1O(JJ)) S %OKR=1,RKV1O(JJ)=RKV
 .S %STR=$TR(%STR,TS0,TSS)
 .;;I %OKR W !!?(75-$L(%STR)),%STR,*13,?(75-$L(%STR)),%STR,! S RR1=RR1+3
 .I %OKR W !!?(75-$L(%STR)),%STR,! S RR1=RR1+3
 D CLOSE^%L1LPT ;; W # C USTR
 Q
 ;-------------------- LINE
PRT ;
 W !?TB F JJ=LASTFL:-1:FRSTFL D VSV
 ;;I $D(PRITOG) W *13,?TB F JJ=LASTFL:-1:FRSTFL D VSV
 W $J($E(RR,$L(RR)-3,10),4) K PRITOG I LASTFL=FLDNUM G PRTE
 W !?TB2
 F JJ=FLDNUM:-1:LASTFL+1 D VSV
 ;;W *13,?TB2 F JJ=FLDNUM:-1:LASTFL+1 D VSV
PRTE ;
 I $D(PRIT0) S PRITOG="" K PRIT0
 Q
VSV N RKV1
 D VF
 I RKV["===" S PRIT0=""
 W $TR(RKV1,TS0,TSS) W " "
 Q
KOT ;
 N LNG,LPT80 K RKV1O
 ;S LPT80=1
 ;I $P($$^%L1ZU(0),",")="MLY",$G(^LPT($I,"N"))[$C(18) S LPT80=0
 ;;I $G(^rep(%REPN,"LPT"))="S"!LPT80 W $C(13,13,15)  S LNG=$S(LPT80:122,1:155) G KOT1
 I $G(DLD)'>75 S LNG=75 W %L1OUT("MDP","NOCOND")
 ;;I $G(^rep(%REPN,"LPT"))="S"!($G(DLD)>75) D
 I $G(DLD)>75 D
 .W $C(13,13)_%L1OUT("MDP","COND") S LNG=122
 .;;I %MDPSUG=7 S %GET=" ""CONDENSED"" zixep wlciy cr ""FONT"" ywn lr ugl " D N^%L1GET
 ;B  I $G(^rep(%REPN,"LPT"))="B" W $C(18)
 ;;S LNG=$$^%L1PCGW(%REPN)
KOT1 N XX0 S XX0=XX N XX ;;I '$D(FRST),$I'=3,$I<51 H $S(LASTFL=FLDNUM:14,1:20)
 ;;I $I=3 H 3
 W:'$D(FRST) # S %TIM=$ZD($H,"24:60") W $$^%L1DC($H,1),"   ",%TIM," "_$TR($$^%L1DC($H,9)_" mei : dwtd onf",TS0,TSS),!
 ;;I $D(^r($J)),$D(^PL("ESEK",1)) N ST S ST=$$CENTRB^%L1FRM($TR(^(1),"#_",""),LNG) W !,%L1OUT("MDP","B"),$TR(ST,TS0,TSS),%L1OUT("MDP","N"),!
 N %AT,ST S %AT=$$^%L1HEAD("")
 I $L(%AT) S ST=%L1OUT("MDP","B")_$TR($$CENTRB^%L1FRM($TR(%AT,"#_",""),%L1OUT("MDP","GWPC")),TS0,TSS)_%L1OUT("MDP","N") W ST
 W !,$TR($J("",LNG)," ","-")
 N KT S KT=$S($L($G(QUERY)):$G(QUERY)_" ",1:"")_$G(^rep(%REPN))
 I $L(KT)*2'>LNG W !?(LNG-($L(KT)*2)\2),%L1OUT("MDP","B"),$TR(KT,TS0,TSS),%L1OUT("MDP","N")
 I $L(KT)*2>LNG W !?(LNG-$L(KT)\2),$TR(KT,TS0,TSS)
 N RR S RR2=0
 I $L($G(%L1PC("SHP","KOD"))) D
 .S %L1PC("SHP","SC")=1
 .S MAS(98)=$G(%L1PC("SHP","SL"),1),PRPC=1 D ^%L3SHAP K %L1PC("SHP","SC")
 I '$L($G(%L1PC("SHP","KOD"))) D
 .N I,A,ST,L,NM,R0,%ME,%AD,IND
 .F I=1:1:$L(^rep(%REPN,"FLD"),"*") S A=$P(^rep(%REPN,"FLD"),"*",I) I $L(A) D
 ..Q:'$D(@("ME"_A))  Q:'$D(@("AD"_A))
 ..S %ME=$G(@("ME"_A)),%AD=$G(@("AD"_A))
 ..Q:%ME?1"-9"."9"&(%AD?1"9"."9")
 ..Q:%ME=""&(%AD="")
 ..Q:+%ME=0&(%AD?1"9"."9")
 ..S R0=$G(^rep(%REPN,0,A)),NM=$P(R0,";"),L=$P(R0,";",2)
 ..I L["D" D
 ...I %ME?6N S %ME=$$^%L1DC(%ME,1),%AD=$$^%L1DC(%AD,1) Q
 ...I %ME?5N S %ME=$ZD(%ME,"DD/MM/YY"),%AD=$ZD(%AD,"DD/MM/YY") Q
 ..S %ME=%ME_" "_NM_"n",%AD=%AD_" "_NM_" cr"
 ..S ST=%AD_"  "_%ME W !?(LNG-$L(ST)\2),$TR(ST,TS0,TSS) S RR2=RR2+1
 .W ! S RR2=RR2+1
 I $G(COL0) D
 .W !?TB0 S XX=KOT(1) F JJ=COL0:-1:1 D VSV
 .F JJ=1:1:COL0 S $P(XX,"*",JJ)="================="
 .W !?TB0 F JJ=COL0:-1:1 D VSV
 .S XX=XX0
 .W !?TB0 F JJ=COL0:-1:1 D VSV
 .;;W *13,?TB0 F JJ=COL0:-1:1 D VSV
 .W !
 S RR=$TR("qn",TS0,TSS) S XX=KOT(1) D PRT K XX
 S RR="--" F JJ=1:1:LASTFL S $P(XX,"*",JJ)="-----------------"
 D PRT K FRST S RR1=RR2,PRKT=0
 Q
 ;;VF S RKV=$P(XX,"*",JJ)
 ;;I $P(TAB,"*",JJ)'[","!(RKV'?."-+".N.".".N) S RKV1=$J($E(RKV,$L(RKV)-$P(TAB,"*",JJ)+1,255),$P(TAB,"*",JJ)) Q
 ;;S RKV1=$J(RKV,$P(TAB,"*",JJ),+$P($P(TAB,"*",JJ),",",2)) S:'$TR(RKV1," ","") RKV1=$J("",$P(TAB,"*",JJ))
 Q
VF S RKV=$P(XX,"*",JJ)
 S RKV1=RKV
 N DL,DR,TB,SIGN
 S TB=$P(TAB,"*",JJ)
 S DL=+TB,DR=+$P(TB,",",2)
 S SIGN=TB["S"!(TB["+")
 ;
 I DR?1N.N,RKV?."+"."-"1N.N.".".N D  Q
 .I 'SIGN S RKV1=$J(RKV,DL,DR)
 .I SIGN S RKV1=$J($FN(RKV,"+",DR),DL)
 .I $TR(RKV1," ","")="" S RKV1=$J($J("",DL\2)_"-",DL)
 ;
 S RKV1=$J($E(RKV,$L(RKV)-$P(TAB,"*",JJ)+1,255),$P(TAB,"*",JJ))
 Q

%L1PC3
%L1PC3 ;-- POSTFORM - COMPRESS              [ 19.03.02 11:06 AM ] [ 25.11.01  8:59 PM ] [
 ;--- INPUT ^TREPK($P)
 ;--- OUTPUT ^TREPK BLI SIKUMIM MEUTARIM
 S SHG=0,I=0,IT=0,IT1=0 K ^TREPK1($P)
 S N="" F  S N=$O(^TREPK($P,N)) Q:N=""  D:N?1N.N  Q:N=""
 .S A=$G(^(N)) I A=""!(A?1"#"."#") S IT=0 D  Q
 ..;I 'IT1!(A'="") D SET
 ..D SET
 .
 .I $E(A,1,2)'="==",A'?.P,'IT D:IT1  S SHG=SHG+1,COLG=$L(A,"*")
 ..S IT1=0
 ..Q
 ..S N1=$O(^TREPK($P,N)) Q:N1=""  S A1=^(N1)
 ..I A1'?.P S I=I+1,^TREPK1($P,I)=""
 .
 .I $E(A,1,2)'="==" D SET Q
 .
 .I $E(A,1,2)="==" D  S IT=1,SHG=0
 ..I SHG=1 D  S IT1=1 Q
 ...S N=$O(^TREPK($P,N)) Q:N=""
 ..
 ..S A1="" F J=1:1:COLG S A1=A1_"==========*"
 ..S I=I+1,^TREPK1($P,I)=A1
 .
 K ^TREPK($P) M ^TREPK($P)=^TREPK1($P) K ^TREPK1($P)
 Q
SET ;
 S I=I+1,^TREPK1($P,I)=^TREPK($P,N)
 Q

%L1PCEX
%L1PCEX ;                                           [ 12.02.06 22:36 ] [ 04.01.04 12:02 ] [ 04.11.03 09:31 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,KOT,OUTLOOK,PRM,%REPN,%L1PC) D ^%L1C
 S YY1=8,YY2=14
 S YR1=YY1,YR2=YY2
 S:$D(OUTLOOK) YR1=15,YR2=22,YY1=16,YY2=18,YY3=20
ZD S %L1RBCL="" D TV^%L1RBUA(YR1,15,YR2,70)
 S %GET="2 - POWERTERM jxc xiardl ,1 - hwqicl uaew xenyl++"_YY1_",67,HH#++1,E,I++12" D ^%L1GET I %S=""!(%TO="END") Q
 S DRV=$S(%S=1:"/mnt/floppy/",1:"PT/")
 S:'$D(SIK) SIK=1
ZD01 S %GET=" ? ( `l - 0 , ok - 1 ) minekiq mb xiardl++"_(YY1+2)_",67,HH#"_$G(SIK)_"++1,E,I++10" D ^%L1GET I %S=""!(%TO="END") G ZD
 S SIK=%S
ZD1 S %GET=": dxinyl uaew my++"_(YY1+4)_",67,HH#++15,E,I++++ (jxc `ll) cala my cilwdl `p" D ^%L1GET I %S=""!(%TO="END") G ZD
 S %SAY=$J($$FUNC^%UCASE(%S),15)_"++"_YY2_",49,HH" X %XMSG
 D FNAME
 D:$D(OUTLOOK)  I %TO="END"!(%TO="UP") G ZD1
 .S %GET=": dxrd++"_(YY1+6)_",67,HH#++43,H,I+" D ^%L1GET I %TO="UP"!(%TO="END") Q
 .S REM(1)=%S_" ;;;"
 ;
ZI I FILE["/mnt/floppy/" S %GET=" <ESC> - dlert lhal , <ENTER> - xy`l . opekl hwqic qipkdl `p " D N^%L1GET G:%TO="END" END I '$$KONANOK(FILE) G ZI
 D WFL(FILE,0) G END:'OK
ARX ;
 I USTR,USTR'=$P S %GET=" <ENTER> "_$P(FILE,"/",1,$L(FILE,"/")-1)_" dvigna mwed "_$P(FILE,"/",$L(FILE,"/"))_" uaew " D N^%L1GET
 I 'USTR S %GET=" <ENTER> . dnlyed dlert " D N^%L1GET
END K ^S222($J) Q
 ;
KONANOK(FILE) ;
  D ^%L1FLOP
  Q '$ZSY
  ;
  N DEV,DER S DEV=$P(FILE,":") I DEV="" Q 0
  S DER=$$^%L1ZOS(9,DEV) I DER<0 D MSGER Q 0
  ;;S %X=DEV_":",%L1OS=345 D O13M^%L1OS
  Q 1
MSGER ;
  D  X %XMSGV(1)
  .I ",15,20,257,"[(","_DER_",") S %SAY=" oekp `l opek my " Q
  .I ",19,256,"[(","_DER_",") S %SAY=" ! hwqicdn dpbd zwacn cixedl jixv " Q
  .S %SAY=" ! oken `l opek "
  Q
WFL(FILE,PARAM) ;
 D ^%L1TS
 S USTR=51,OK=0 I FILE["PT/"!(FILE="PT")!(FILE="PTW") S USTR=0
 I $P=1,'USTR S %GET=" POWER TERM jxc dlert rval `p " D N^%L1GET Q
 I USTR I $$^%L1ZOS(10,FILE)>0 S %GET=" 99 - ycgn daizk xey`l . miiw xak "_FILE_" uaew ++12,70,HH,I,R#++2,E,I" D N^%L1GET G:%S'=99 END
 I USTR O FILE:(NEWVERSION:WRITE):1 E  S %SAY=" ! qetz "_FILE_" uaew" G EFL
 ;--------------------- PT --------
 I 'USTR D  G EFL
 .N N,I,I1 S I=0,N="" F  S N=$O(KOT(N)) Q:N=""  S I=I+1
 .S N="" F  S N=$O(^TREPK($P,N)) Q:N=""  S I=I+1
 .S N="" F  S N=$O(PRM(N)) Q:N=""  S I=I+1
 .S MAX=I
 .S %VG=20,%NG=22,%LG=5,%RG=75
 .S %L1RBCL=%CV("CF")
 .W %LIGHT1 D TV^%L1RBUA(%VG,%LG,%NG+2,%RG+1) X %XCL
 .D SCALE0^%L3GTR(70)
 .N FL S FL=$P(FILE,"/",$L(FILE,"/")),OK=1
 .U 0 S I1=0
 .F I=1:1 Q:'$D(KOT(I))  S I1=I1+1 D  I '$$TV^%L1PTW(FL,"w+","!"_$$D2W(KOT(I)),1) S OK=0 Q
 ..I '(I1#10) D SCALE^%L3GTR(I1,MAX,70)
 .N A,FLSIK S FLSIK=0
 .F I=1:1 Q:'$D(^TREPK($P,I))  S I1=I1+1 D  Q:'OK
 ..S A=$G(^(I))
 ..I '(I1#10) D SCALE^%L3GTR(I1,MAX,70)
 ..I 'SIK,A["===*",A?.P S FLSIK=1 Q
 ..I FLSIK S FLSIK=0 Q
 ..I 'SIK,A?.P Q
 ..I '$$TV^%L1PTW(FL,"a+",$$D2W(A),I+1) S OK=0
 .Q:'OK
 ;---------------------- A: -------------
 S %SAY=" ... oizndl `p " X %XMSGN
 U FILE F I=1:1 Q:'$D(KOT(I))  W "!"_$$D2W(KOT(I)),!
 I $D(REM(1)) W $$D2W(REM(1)),!
 N A,B,FLSIK S FLSIK=0
 F I=1:1 Q:'$D(^TREPK($P,I))  D  Q:$ZC<0
 .N A S A=$G(^(I))
 .I 'SIK,A["===*",A?.P S FLSIK=1 Q
 .I FLSIK S FLSIK=0 Q
 .I 'SIK,A?.P Q
 .U FILE W $$D2W(A),! Q:$ZC<0
 I $ZC<0 D  G EFL
 .W %ENG S %ER=$ZC D ^%OS1
 S OK=1 I USTR C FILE
EFL D PRM Q
 ;
D2W(A) ;
 N B,J,J1,J2,OKH,RKV,RKV2,ID,DL S B=""
 ;I $D(%L1SCEX),$E(RKV)="?" Q
 S A=$TR(A,"""[]{}","'()()")
 F J=1:1:$L(A,"*") S RKV=$$SPA^%L1FRM($P(A,"*",J)) D
 .I RKV["E-MAIL:" S RKV=$$FUNC^%LCASE($P(RKV,"E-MAIL:",2)) G D2W1
 .S OKH=0 F J1=1:1:$L(TS0) I RKV[$E(TS0,J1) S OKH=1 Q
 .I OKH D
 ..;S RKV=$TR($$INV^%L1FRM(RKV),TS0,TS1),RKV=$TR(RKV,"()",")(")
 ..S RKV=$$INVHBW^%L1FRM(RKV),RKV=$TR(RKV,"()",")(")
D2W1 .S B=B_RKV_"*" ;$C(9)
 Q $TR(B,"#","-")
 ;
FNAME S FILE=%S I FILE["/" S FILE=$P(FILE,"/",2)
 I FILE[":" S FILE=$P(FILE,":",2)
 I FILE'["." S FILE=FILE_".TXT"
 S FILE=DRV_FILE
 Q
 ;
PRM ;
 N N S OK=0
 S FILE=$P(FILE,".")_".PRM"
 ;I USTR I $ZOS(10,FILE)>0 S %GET=" 99 - ycgn daizk xey`l . miiw xak "_FILE_" uaew ++12,70,HH,I,R#++2,E,I" D N^%L1GET G:%S'=99 END
 I USTR O FILE:(NEWVERSION:WRITE):1 E  S %SAY=" ! qetz "_FILE_" uaew " G EPR
 I 'USTR D  G EPR
 .N FL S FL=FILE I FILE["/" S FL=$P(FILE,"/",$L(FILE,"/"))
 .S OK=1
 .S N="" F II=1:1 S N=$O(PRM(N)) Q:N=""  D
 ..S I1=$G(I1)+1 I '(I1#10) D SCALE^%L3GTR(I1,MAX,70)
 ..I $D(PRM(N)),'$$TV^%L1PTW(FL,$S(II=1:"w+",1:"a+"),$$D2W(PRM(N)),1) S OK=0 Q
 .Q:'OK
 .D SCALE^%L3GTR(70,70,70)
 .K %Q S %Q("Z")="PRTOT dpkez jxc mipezp bivdl" D N^%S2ASK Q:'YES
 .W $C(27)_"P$sprtot.psl "_$P(FL,".")_".txt"_$C(27)_"\"
 ;
 N A,B
 S N="" F  S N=$O(PRM(N))  Q:N=""  U FILE W $$D2W(PRM(N)),! Q:$ZC<0
 I $ZC<0 D  G EPR
 .W %ENG S %ER=$ZC D ^%OS1
 S OK=1 I USTR'=$P C FILE
 ;D
 .N FL S FL=FILE
 .W $C(27)_"P$sexec prtot "_FL_$c(27)_"\"
EPR Q

%L1PCGW
%L1PCGW(%REPN) ; SHIRINA DOCHA [ 05/23/99  5:23 PM ] [ 09/01/97  9:27 AM ]
 I $D(%L1PC("GW")) Q %L1PC("GW")
 I $G(^rep(%REPN,"LPT"))="B" Q 75
 Q 122

%L1PCIN
%L1PCIN ; [ 23.08.06 18:26 ] [ 20.08.06 10:32 AM ] [ 07.09.05  9:22 AM ]
 ; IN  : %REPN
 ; OUT : %L1PC("FLD")
 ;       %L1PC("MIUN")
 ;       %L1PC("SIK0")
 ;       %L1PC("FLD")
 ;       %L1PC("SIK")
 ;       %L1PC("CT")
 ;
 ;       MIUN,SIK,CT,MAXMIUN
 ;       COLG,COLGM,GLOB1,GLOB2
 ;
 K (%REPN,USTR,MAS,QUERY,%SMI,%OLDIND,%L1PC) D ^%L1C
 ;
 S FLMODIF=0 S %ENGLISH=0
 ;
 N %N,%I,%J,I
 S %N="" F  S %N=$O(%REPN(%N)) Q:%N=""  S @%N=%REPN(%N)
 S %L1PC("FLD")="",%L1PC("MIUN")="",%L1PC("SIK0")="",%L1PC("CT")=""
 S %L1PC("SIK")=""
 ;
 F %I=1:1:$L(^rep(%REPN,"FLD"),"*") D
 .N %FLD S %FLD=$P(^rep(%REPN,"FLD"),"*",%I) Q:%FLD=""
 .I $G(^rep(%REPN,0,%FLD,"SET")) S %L1PC("S0",%FLD)=""
 .I $P($G(^rep(%REPN,"FLD0")),"*",%I)'="-" D
 ..S %L1PC("FLD")=%L1PC("FLD")_%FLD_"*"
 ..S %L1PC("MIUN")=%L1PC("MIUN")_$P($G(^rep(%REPN,"MIUN")),"*",%I)_"*"
 ..S %L1PC("SIK0")=%L1PC("SIK0")_$P($G(^rep(%REPN,"SIK0")),"*",%I)_"*"
 ..S %L1PC("CT")=%L1PC("CT")_$P($G(^rep(%REPN,"CT")),"*",%I)_"*"
 .I $P($G(^rep(%REPN,"FLD0")),"*",%I)="-" D
 ..N A S A=$P(^rep(%REPN,"FLD"),"*",%I) Q:A?.P
 ..I '$D(%L1PC("VAL",A))!'$D(@("ME"_A)) S @("ME"_A)=""
 ..I '$D(%L1PC("VAL",A))!'$D(@("AD"_A)) S @("AD"_A)=$TR($J("",+$P(^rep(%REPN,0,A),";",2))," ",9)
 ;
 S %L1PC("FLD")=$E(%L1PC("FLD"),1,$L(%L1PC("FLD"))-1)
 S %L1PC("MIUN")=$E(%L1PC("MIUN"),1,$L(%L1PC("MIUN"))-1)
 S %L1PC("SIK0")=$E(%L1PC("SIK0"),1,$L(%L1PC("SIK0"))-1)
 S %L1PC("CT")=$E(%L1PC("CT"),1,$L(%L1PC("CT"))-1)
 ;
 S %L1PC("SIK")="" S %J=0 F %I=1:1:$L(^rep(%REPN,"FLD"),"*") D
 .S A=$P(^("FLD"),"*",%I) I $E(A)="x",$P($G(^("FLD0")),"*",%I)'="-" D
 ..S %L1PC("SIK")=%L1PC("SIK")_$P(^rep(%REPN,"SIK"),"*",$E(A,2,3))_"*"
 S %L1PC("SIK")=$E(%L1PC("SIK"),1,$L(%L1PC("SIK"))-1)
 ;
 S ONLYSIK=0,MONE=0 K ^TREP($J)
 ;
 F I=1:1:$L(%L1PC("FLD"),"*") S A=$P(%L1PC("FLD"),"*",I) Q:A["x"
 ;------------ MAXMIUN - SPISOK PRIZN.REKV, COLG - SPISOK KOL. REKV.
 S MAXMIUN=I-(%L1PC("FLD")["*x")
 S COLG=$L(%L1PC("FLD"),"*")-MAXMIUN
 S COLGM=$L($P(^rep(%REPN,"FLD"),"*x1*",2),"*")+1
 S GLOB1=^rep(%REPN,"GLOB1"),GLOB2=^rep(%REPN,"GLOB2")
 S %BS=0,FRST=1
V ;
 K MIUN,SIK,CT
 F I=1:1:MAXMIUN D
 .S MIUN(I)=$S($P(%L1PC("MIUN"),"*",I)>MAXMIUN:"",1:$P(%L1PC("MIUN"),"*",I))
 .S SIK(I)=$P(%L1PC("SIK0"),"*",I)
 .S CT(I)=$P(%L1PC("CT"),"*",I) ;-- KOTERET
 Q

%L1PCL
%L1PCL ; PRINT TAVLAOT    [ 18.01.06 18:08 ] [ 03.11.02  2:36 PM ] [ 10/24/2002 12:04 PM ]
 ;INP - %MBP("PAR"),%MBP("VGR"),%MBP("NGR"),%MBP("LG"),%MBP("PG")
 ;      %MBP("REF"),COLG
 ;      %L1PCL("TOT") - SIKUMIM BILVAD
 ;      %L1PCL("KOTNO") - LELO KOTERET
 ;      %L1PCL("PCNO") - LELO HADPASA
 ;
 I '$D(%POSIC) D ^%L1C
 N JJ,NPG,PG,%PROV,%GR,XX0,X1,X2,Y1,Y2
 N %HBRY S %HBRY=""
 S NPG=1,PG(1)=0 ;W %HBR
 ;
BEG D INIT
 D PS
END Q
 ;
PS ;
 S %PROV=X1,%II=1 K %GR
 F JJ=1:1:COLG D
 .S %MBP("DL",JJ)=$S(%MBP("D",JJ)>$L(%MBP("Z",JJ)):%MBP("D",JJ),1:$L(%MBP("Z",JJ)))
 .I %PROV+%MBP("DL",JJ)>X2 S %GR(%II)=JJ-1,%II=%II+1,%PROV=X1
 .S %PROV=%PROV+%MBP("DL",JJ)+1
 .Q
 I '$D(%GR(1)) S %GR(1)=COLG,%II=1
 I %II>1 I %GR(%II-1)<COLG S %GR(%II)=COLG
 S COLS=RSCR
KOT ; -------------------------- KOTERET
 I $D(%L1PCL("KOTNO")) G PC ; ---------  NO TYPE HEADER
 D INT^%T W "  "_%TIM_"  "_$$^%L1DC($H,1)_$TR($$^%L1HB(" : dqtcd onf "),TS0,TSS),!
KOT2 S I=0 I $D(%MBP("KOT")) X %MBP("KOT")
 W !!,?X1 F %II=1:1 Q:'$D(%GR(%II))  D  W !?X1
 .F JJ=%GR(%II):-1:$G(%GR(%II-1))+1 W $J($TR($$^%L1HB(%MBP("Z",JJ)),TS0,TSS),%MBP("DL",JJ))," "
 .W !?X1 F JJ=%GR(%II):-1:$G(%GR(%II-1))+1 D
 ..W $TR($J("",%MBP("DL",JJ))," ","=")," "
 Q:$D(%L1PCL("PCNO"))  ;NO TYPE
PC D P
 S END=0 I NOD'="" D:'$G(USTR)  Q:END  S %SHL=$G(%SHL)+1 W # G KOT2
 .U 0 R !,"<>",A I A="."!(A="u") S END=1
 I EOP S I=0 Q
 Q
P ;
 N %NODOLD
 I '$D(%L1PCL("USL")) S %L1PCL("USL")=1
 S BEG=1,EOP=0 F  S %NODOLD=$G(NOD) S NOD=$O(@%MBP("REF")) Q:NOD=""  D  Q:EOP
 .X:$D(%L1PCL("DO")) %L1PCL("DO")
 .I @%L1PCL("USL") S:'$D(%L1PCL("TOT")) I=I+1 X:$D(MRKV("KOT"))&BEG MRKV("KOT") S:BEG BEG=0 W:'$D(%L1PCL("TOT")) !?X1 D PG
 .I @%L1PCL("USL") I I+%II+1>COLS S EOP=1
 Q
PG ;
 F %II=1:1 Q:'$D(%GR(%II))  D  W:'$D(%L1PCL("TOT")) !?X1 S I=I+1
 .F J=%GR(%II):-1:$G(%GR(%II-1))+1 D
 ..X MRKV(J) Q:$D(%L1PCL("TOT"))
 ..S RKV=$TR($E(RKV,1,%MBP("DL",J)),TS0,TSS)
 ..W $S('$D(%MBP("DR",J)):$J($$^%L1HB(RKV),%MBP("DL",J)),1:$J(RKV,%MBP("DL",J),%MBP("DR",J)))," "
 Q
 ;-
INIT S RZD=$G(%MBP("RZD"),"\") D ^%L1TS
 I '$G(USTR) S TSS=TS0
 S X1=$G(%MBP("LG"),5)
 S X2=$G(%MBP("PG"),78)
 S Y1=$G(%MBP("VGR"),0)
 S Y2=$G(%MBP("NGR"),22)
 S RSCR=Y2-Y1
 S %SHL=$G(%SHL,1),SH=0
 S NOD=""
 Q

%L1PCP
%L1PCP ; [ 02.07.07 11:12 ] [ 01.07.07 11:29 ] [ 07.02.06 09:46 ]
 ;
 ; IN : MIUN(IND)       (%L1PCIN) + SHEILTA ; IND LEFI %L1PC("FLD")
 ;      SIK (IND)       (---""--) + SHEILTA
 ;      CT  (IND)       (---""--) + SHEILTA
 ;
 ;      MAXMIUN      ;  (%L1PCIN)
 ;      ME... - AD...;  (%L1PCIN) + SHEILTA
 ;
 ;      %REPN
 ;      SIKUM
 ;
 ;      FLMODIF         (---""--)
 ;      %L1PC("FLD") ;  (%L1PCIN)
 ;      GLOB1        ;  (%L1PCIN)
 ;      GLOB2        ;  (%L1PCIN)
 ;      COLG         ;  (%L1PCIN)
 ;
 ; MIUN - SAVE PRIZN MIUN ; SIK0 - SAVE PRIZN SUMM ; CT - SAVE PRIZN KOT
 ;
 N USERPORT,PORTN,USERGLOB,USERMOD,%SCKPORT,%L2NALAN
 I '$D(%GLOU) S %GLOU="^TREPK($P)"
 K @%GLOU Q:'$G(MAXMIUN)
M1 K MIUN1 S J=0 F I=1:1:MAXMIUN D
  .S J=J+1 S MIUN1(+MIUN(I))=$G(MIUN(I))
M2 .I $P($G(^rep(%REPN,"FLD0")),"*",J)="-" S J=J+1 G M2
 ;
 I $G(SIKUM)=99 S ONLYSIK=1
 F I=1:1:MAXMIUN S A=$P(%L1PC("FLD"),"*",I) S:$G(@("ME"_A))?.P @("ME"_A_"=0") S:$G(@("AD"_A))?.P @("AD"_A_"=$TR($J("""",$P($G(^rep(%REPN,0,A)),"";"",2)),"" "",9)")
11 ;
 ; --------------- CHECK FOR DFLT ( MIUN - POSLEDN )
 ;;S N="" F  S N=$O(SIK(N)) Q:N=""  I SIK(N),$G(MIUN(N)) S SIK(N)=MIUN(N)
 ;
 ; ------------------------- SEDM -  PERESORT SPISOK PR. REKV.
 ; ------------------------- SEDSM - PERESORT SPISOK PRIZ. SIK.
 S SEDM=%L1PC("FLD"),SEDSM=""
 F JJ=1:1:MAXMIUN D
 .S A=$P(%L1PC("FLD"),"*",JJ)
 .S $P(SEDM,"*",MIUN(JJ))=A
 .S $P(SEDSM,"*",MIUN(JJ))=+SIK(JJ)
 ;
 S N="" F  S N=$O(CT(N)) Q:N=""  D
 .I CT(N)=1 D  Q
 ..S N1="" F  S N1=$O(CT(N1)) Q:N1=""  I MIUN(N1)<MIUN(N) S CT(N1)=1
 .I CT(N)=2 D  Q
 ..S N1="" F  S N1=$O(CT(N1)) Q:N1=""  I MIUN(N1)<MIUN(N),CT(N1)'=1 S CT(N1)=2
 ;
 S MCT=0,MCT2=0 F I=1:1:MAXMIUN S:CT(I)=1 MCT=MCT+1 S:CT(I)=1!(CT(I)=2) MCT2=MCT2+1
 S J=0 F JJ=1:1:MCT S A=$P(SEDM,"*",JJ) Q:A=""  D
 .S J=J+1 I $D(^rep(%REPN,0,A,"OUT")) S J=J+1
 S COL0=J ;---------- COL REKV V.SHAP
 S J=0 F JJ=1:1:MCT2 S A=$P(SEDM,"*",JJ) Q:A=""  D
 .S J=J+1 I $D(^rep(%REPN,0,A,"OUT")) S J=J+1
 S COL01=J ;---------- COL. REKV V+NIJ SHAP
VVV D INIT Q:$D(%L1PCSND)
 D MIUN G:$G(OK)=9 END
VVV1 D FORM
END Q
 ;
MIUN N A,A1,IN,%IND,K,K1,K2,I,JJ1,GLO,GLOB,OK,ST ;
   ;---- INPUT: GLOB1 - START, GLOB2 - FINISH
   ;           ^rep(%REPN,"US" - PROGR. FOR FIELDS DEFINING
   ;     OUTPUT: ^TREP($J,... - MIUN HADASH
   ;------------------------------------------
   N %NMB
   I $G(%GLOU)'["^L1PCPRM" S %SAY=" ... oeinl oznd `p` " X %XMSGN
   I $D(^rep(%REPN,"MIUN","PROG"))#2 D @^("PROG") Q:'$D(%L1PC("CONTINUE"))
   I $E(GLOB1,$L(GLOB1))=")" S GLOB1=$E(GLOB1,1,$L(GLOB1)-1)
   S %IND=$P($P(GLOB2,GLOB1,2),")")
   I $E(%IND)?1P S %IND=$E(%IND,2,255)
   S K1=$L(GLOB1,","),K2=$L(GLOB2,","),GLOB=GLOB1
   I GLOB1["(" S K1=K1+1
   S JJ1=0 F I=K1:1:$L(%IND,",")+K1-1 S JJ1=JJ1+1 S:$E($P(%IND,",",JJ1))'="""" IN(I)=$P(%IND,",",JJ1)
   S K=K1
LP  S %NMB=0
    I '$D(@("ME"_IN(K))@("SET")),+$G(@("ME"_IN(K)))=$G(@("ME"_IN(K)))!($G(@("ME"_IN(K)))=""),+$G(@("AD"_IN(K)))=$G(@("AD"_IN(K))) S %NMB=1
LP0 S @IN(K)=$S(%NMB:$G(@("ME"_IN(K))),1:"") I $G(@IN(K)),@IN(K)'=+@IN(K) S %NMB=0
    S IN=IN(K)
    I GLOB["(" S GLOBL=GLOB_","""")",GLOB=GLOB_","_IN_")"
    E  S GLOBL=GLOB_"("""")",GLOB=GLOB_"("_IN_")"
    I $O(@GLOBL,-1)'="",$O(@GLOBL,-1)'?."-"1N.N.".".N S %NMB=0
    I @IN(K)'="" S @IN(K)=$ZP(@GLOB)
LP1 ;
    S @IN(K)=$O(@GLOB) S OK=1
    I @IN(K)'="" D  G:'OK LP1
    .N A,%INDOLD S A=$G(@IN(K))
    .I $P($G(^rep(%REPN,0,IN(K))),";",2)["D" D
    ..I $TR(A,"/.","")'?5N.E Q
    ..I A["/"!(A[".") S A=$$^%L1DC(A,3) Q
    ..S A=$$^%L1DC(A,4)
    .I A'=+A S %NMB=0
    .N A1 S A1=A I IN(K)["PAR"!(IN(K)["PRT"),$E(A,1,2)="A-" S A1=$P(A,"-",2)
    .I $L(A1),$D(@("ME"_IN(K))@("SET"))>9,'$D(@("ME"_IN(K))@("SET",A1)) S OK=0 Q
    .I $L(A1),$D(@("ME"_IN(K))@("SET"))>9,$D(@("ME"_IN(K))@("SET",A1)) G LP2
    .I $G(@("ME"_IN(K)))'="" I A<@("ME"_IN(K)) S OK=0 Q  ;02.05.00 *** LEV
    .I $G(@("AD"_IN(K)))'="" I A>@("AD"_IN(K)) S OK=$S(%NMB:2,1:0) Q
LP2 .I $D(^rep(%REPN,"US",$L(GLOB,","))) D  Q:OK'=1
    ..N JJ F JJ=1:1:20 S @("x"_JJ)=""
    ..X ^rep(%REPN,"US",$L(GLOB,","))
    .I $L(GLOB,",")=$L(GLOB2,",") D  Q:OK'=1
    ..N %IND
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" I $D(@%IND)#2 S %INDOLD(II)=@%IND
    ..S GLO="^TREP($J,"
    ..;;N LL S LL=$P($G(^rep(%REPN,0,$P(SEDM,"*",II))),";",2)
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" D
    ...N LL S LL=$P($G(^rep(%REPN,0,$P(SEDM,"*",II))),";",2)
    ...S:$G(@%IND)="" @%IND=" - " S @%IND=$TR(@%IND,",*""()"," X'[]")
    ...S @%IND=$E(@%IND,1,128)
    ...I $L($P(SEDM,"*",II)),LL["D",@%IND["/"!(@%IND[".") S @%IND=$$^%L1DC(@%IND,3)
    ...F JJ=1:1 Q:'$D(MIUN(JJ))  Q:+MIUN(JJ)=II
    ...I $D(MIUN(JJ)),MIUN(JJ)["!",$D(^rep(%REPN,0,$P(SEDM,"*",II),"FILE")),$E(^("FILE"))'="+" D
    ....N A,A1,A2 S A2=$G(^("FILE")) Q:A2=""
    ....S A=$G(@A2@(@$P(SEDM,"*",II)))
    ....I A2="^PAR" S A=$P(A,"**")
    ....S A=$TR($E(A,$L(A)-9,$L(A)),",*""()"," X'[]")
    ....S A1="" F JJ=1:1:10 S A1=$E(A,JJ)_A1
    ....S A1=A1_$J("",10-$L(A1))_$J(@$P(SEDM,"*",II),+LL)
    ....S @%IND=A1 S:@%IND="" @%IND="          "
    ...S GLO=GLO_%IND_","
    ..S GLO=$E(GLO,1,$L(GLO)-1)_")"
    ..S %SRKM=0 F JJ=1:1:COLGM I $G(@("MEx"_JJ))!$G(@("ADx"_JJ)) S %SRKM=1 Q
    ..S OK=1 I %SRKM D  ;---------- HITUHIM NOSAFIM
    ...F JJ=1:1:COLGM S A1=$G(@("x"_JJ)) I $D(@("MEx"_JJ)),$D(@("ADx"_JJ)),A1<@("MEx"_JJ)!(A1>@("ADx"_JJ)) S OK=0 Q
    ..Q:'OK
    ..S ST="" S:'$D(@GLO) @GLO="" F JJ=1:1:COLG S A1=$G(@$P(%L1PC("FLD"),"*",MAXMIUN+JJ)) S $P(@GLO,"*",JJ)=$S($P(%L1PC("SIK"),"*",JJ):$P($G(@GLO),"*",JJ)+A1,1:A1)
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" I $D(%INDOLD(II))#2 S @%IND=%INDOLD(II)
    ..K %INDOLD
    I @IN(K)=""!(OK=2) S K=$O(IN(K),-1) G:K<K1 EMIUN S GLOB=$P(GLOB,",",1,$L(GLOB,",")-1)_")" G LP1
    S K=$O(IN(K)) I K="" S K=$O(IN(K),-1) G LP1
    S GLOB=$E(GLOB,1,$L(GLOB)-1) G LP
EMIUN ;
  Q
FORM N I,IN,IND,K,K1,K2,LEVELBG,FIRSTS,GLOB,GLOBO,PRITOG,%STRING ;
   ;---- INPUT : GLOB (^TREP($J,...),SEDM - OTSORT. FILE
   ;     OUTPUT: ^TREPK($P,... - VIX.FORMA S SIKUMIMAMI
   ;     WORK  : IN(I) - MAS.REKV-IND IN GLOB ( GLOB(@IN(1),@IN(2),...)
   ;             K -  LEVEL COUNTER
   ;             K2 - MAX.COL. IND (PROST.STR)
   ;             K1 - MIN.COL. IND
   ;---------------------------------------------------
   I $G(%GLOU)'["^L1PCPRM" S %SAY=" g""ec zwtdl oznd `p` " X %XMSGN
   F I=1:1:$L(SEDM,"*") S IN(I)=$P(SEDM,"*",I)
   S K=1,K1=1,K2=MAXMIUN+1,GLOB="^TREP($J",FIRSTS=0 K INO S PRITOG=0
   ;;;;;;
   S GLOB=GLOB_","""")"
   S GLOB=$Q(@GLOB) Q:GLOB=""  Q:$P(GLOB,",")'=("^TREP("_$J)
   D IND(GLOB)
FRM1 F I=1:1:$L(IND,",") S INO(I)=$P(IND,",",I),@IN(I)=INO(I)
   D:FIRSTS STRSHP D:'ONLYSIK PROST S K=$L(IND,",") D SIK S FIRSTS=0
   S GLOB=$Q(@GLOB) G:GLOB="" FORME G:$P(GLOB,",")'=("^TREP("_$J) FORME
   D IND(GLOB)
   F I=1:1:$L(IND,",") I $P(IND,",",I)'=INO(I) D  Q
   .F K=$L(IND,","):-1:I D STRSIK
   .I I'>MCT S FIRSTS=1
   F I=1:1:$L(IND,",") S @IN(I)=$P(IND,",",I)
   G FRM1
FORME F K=$L(IND,","):-1:0 D STRSIK
   Q
IND(GLOB) S IND=$P($P(GLOB,"(",2),")")
  N IND1,IND2,I S IND1=""
  F I=2:1:$L(IND,",") S IND2=$P(IND,",",I) S:$E(IND2)="""" IND2=$P(IND2,"""",2) S IND1=IND1_IND2_","
  S IND=$E(IND1,1,$L(IND1)-1)
  Q
PROST ;
 Q:ONLYSIK  N %STRING,A,INFL,JJ,JJ1
 I PRITOG D  S PRITOG=0
 .N IND S IND=$O(@%GLOU@(99999),-1) I IND,@%GLOU@(IND)'?1"#"."#" S %STRING="" D SAVST
PROST1 S %STRING=""
 F JJ=1:1:MAXMIUN S INFL=@IN(JJ),A=IN(JJ) D OUTFL
 S JJ1=0 S %STRING=%STRING_$G(@GLOB)
 D SAVST
 Q
SAVST S MONE=$O(@%GLOU@(999999),-1)+1 S @%GLOU@(MONE)=%STRING
 S ^TREPK($P)=MONE
 Q
SIK ; K - UR, LASTFN - STR. KODOV DLQ PECH, SUMFL - STR. SUM
 N ST,KK S ST=$G(@GLOB)
 F KK=0:1:K F JJ=1:1:COLG D
 .I $P(%L1PC("SIK"),"*",JJ) D
 ..S SUM(KK,JJ)=$G(SUM(KK,JJ))+$P(ST,"*",JJ)
 ..S SUM(KK,JJ,1)=$G(SUM(KK,JJ,1))+1
 F KK=1:1:K S INO(KK)=@IN(KK)
 Q
STRSHP ;
 N %STRING S %STRING="#############" D SAVST
 Q
STRSIK ;
 ;------------------- FORM ITOG STROKI DLQ PECHATI ( FROM "K" UR).
 Q:($P(SEDSM,"*",K)<1)&(K>0)  ;-- NET PR. SIK
 N %STRING,INFL,A,I,J,JJ,JJ1,JJJ,IND
 S %STRING=""
STRSIKA ;
 S JJ1=0 F JJ=K+1:1:$L(SEDSM,"*") I $P(SEDSM,"*",JJ)>0 S JJ1=JJ1+1
 ;-- JJ1=0 -> POSL. ITOG
 I ONLYSIK,'JJ1,PRITOG D  S PRITOG=0 S %STRING="" ;PUST STR. POSLE ITOGA (ONLYSIK)
 .N IND S IND=$O(@%GLOU@(99999),-1) I IND,@%GLOU@(IND)'?1"#"."#" S %STRING="" D SAVST
 S %STRING=""
 I 'ONLYSIK!(ONLYSIK&JJ1) D  S PRITOG=1 ;-- PREDITOG. STR.
 .F SP=1:1:FLDNUM S %STRING=%STRING_"===========*"
 .S %STRING=$E(%STRING,1,$L(%STRING)-1)
 .D SAVST
 ;
 S %STRING="" ;------ ITOG. STR
 F JJ=1:1:K S INFL=INO(JJ),A=IN(JJ) D OUTFL
 F JJ=$L(%STRING,"*"):1:FLDNUM-COLG S OUTFL=$TR($J("",16)," ","-") D SAVFL
 ;;I 'JJ1,ONLYSIK,$L(GLOB) G ESS
 I 'JJ1,ONLYSIK G ESS
 I $P(SEDM,"*",K)'="" D
 .S $P(%STRING,"*",FLDNUM-COLG-2)=$TR($J("",16)," ","-")
 .N A,D S A=$G(^rep(%REPN,0,$P(SEDM,"*",K))),D=$P(A,";",2)
 .S $P(%STRING,"*",FLDNUM-COLG-1)=$P(A,";")
 .S $P(%STRING,"*",FLDNUM-COLG)=$S(D["D"&($TR(INO(K),"./","")?5N.E):$$^%L1DC(INO(K),1),$G(MIUN1(K))["!":$$INV^%L1FRM(INO(K)),1:INO(K))
ESS ;
 I $D(^rep(%REPN,"SIX")) D ;-- PKUDA L SHURA SIKUMIM ( HORIZ )
 .N JJ,JJ1,ER F JJ=1:1:$L(^rep(%REPN,"FLD"),"*") Q:$E($P(^("FLD"),"*",JJ))="x"
 .S ER=0
 .F JJ1=JJ:1:$L(^rep(%REPN,"FLD"),"*") I $E($P($G(^("FLD0")),"*",JJ1))="-" S ER=1 Q
 .I 'ER,$D(^rep(%REPN,"SIX")) X ^("SIX") ;-- PKUDA L SHURA SIKUMIM ( HORIZ )
 ;
 N %STRING0 S %STRING0=%STRING
 S JJ1=0 F JJ=FLDNUM-COLG+1:1:FLDNUM D
 .S JJ1=JJ1+1
 .S %STRING=%STRING_$J($G(SUM(K,JJ1)),2,2)_"*"
 D SAVST
 ;
 I $P(SEDSM,"*",K)=2!($P(SEDSM,"*",K)=3) D  ;--- AVERAGE
 .S %STRING=%STRING0
 .S $P(%STRING,"*",FLDNUM-COLG-1)="rvenn"
 .S JJ1=0 F JJ=FLDNUM-COLG+1:1:FLDNUM D
 ..S JJ1=JJ1+1
 ..N COL S COL=1 I $G(SUM(K,JJ1,1)) S COL=SUM(K,JJ1,1)
 ..S %STRING=%STRING_$J($G(SUM(K,JJ1))/COL,2,2)_"*"
 .D SAVST
 ;
 F J=K:1:MAXMIUN K SUM(J)
 Q
 ;
OUTFL ;-- INFL --> OUTFL (FORM-E VIX. REKV IZ VX. V ZAVIS. OT ^rep(%REPN,0,A,..))
  ; ^rep(%REPN,0,A,"OUT")=<VRB>, -> INFL*F(INFL) ;; F(INFL)= X ^rep(%REPN,0,A,"M2") -> VRB
  ;-----------------------------------------------------------------------
  I INFL="" G OF1
  ;;I $L(INFL)>10,INFL'?1N.N S INFL=$E(INFL,11,20)
  N LL S LL=+$P($G(^rep(%REPN,0,A)),";",2),INFL=$$SPA^%L1FRM($E(INFL,$L(INFL)-LL+1,255))
  I $P($G(^rep(%REPN,0,A)),";",2)["D" D  Q
  .S OUTFL=INFL
  .I $TR(INFL,"/.","")?5N.E D
  ..I INFL'["."&(INFL'["/"),$L(INFL)=6 S OUTFL=$E(INFL,5,6)_"/"_$E(INFL,3,4)_"/"_$E(INFL,1,2)
  ..I INFL'["."&(INFL'["/"),$L(INFL)=8 S OUTFL=$E(INFL,7,8)_"/"_$E(INFL,3,4)_"/"_$E(INFL,1,2)
  ..I INFL'["."&(INFL'["/"),$L(INFL)=5 S OUTFL=$$^%L1DC(INFL,1)
  .D SAVFL
  ;
OF1 N DOT S DOT=$P($P($G(^rep(%REPN,0,A)),";",2),",",2)
  I DOT S OUTFL=$J(INFL,DOT,DOT)
  S OUTFL=INFL D SAVFL
  I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"M2")) X ^("M2") S OUTFL=$TR($G(@^rep(%REPN,0,A,"OUT")),"*""(),","X'[] ") D SAVFL Q
  I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"FILE")),$E(^("FILE"))'="+",INFL'="" D  Q
  .N FILE S FILE=^rep(%REPN,0,A,"FILE") S OUTFL=$TR($G(@FILE@(INFL)),"*""(),","X'[] ") D SAVFL
  Q
  ;
SAVFL S %STRING=%STRING_OUTFL_"*"
 Q
 ;
INIT ;
 S %L1PC("COD")=""
 F JJ=1:1 S A=$P(SEDM,"*",JJ) Q:A=""  S %L1PC("COD")=%L1PC("COD")_A_"*" I $D(^rep(%REPN,0,A,"OUT")) S %L1PC("COD")=%L1PC("COD")_^rep(%REPN,0,A,"OUT")_"*"
 S %L1PC("COD")=$E(%L1PC("COD"),1,$L(%L1PC("COD"))-1)
 S SEDFL=%L1PC("COD") ;---- SPISOK REKV DLQ PECH
 S FLDNUM=$L(%L1PC("COD"),"*") K SUM ; --- FLDNUM -- KOL REKV
 Q
 ;

%L1PCPRM
L1PCPRM ; [ 07.02.06 10:25 ] [ 05.02.06 10:06 ] [ 03.02.06 11:55 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,JOB,%L2NALAN,%SCKPORT) D ^%L1C
 S ZT=$ZT S $ZT="G SVER^%L1X"
 ;;M ^A("SCKPORT")=%SCKPORT
 S %L1PCOK=1
 I $D(^L1PCPRM) D  G:'%L1PCOK SENDE
 .N %A S %A=$G(^L1PCPRM) Q:%A=""
 .S %H=$P(%A,"*",3)
 .I $H-%H>1 Q
 .I $P($H,",",2)-$P(%H,",",2)>1000 Q
 .S ^L1PCPRM("ER")="BUSY"
 .S %L1PCOK=0
 ;
 S %L2G1("NOCLOSE")=""
 K ^L1PCPRM
 ;
 D ^%L2GTR1 I '$D(^L2G1($J,"OK")) S ^L1PCPRM("ER")="NOK" G SENDE
 S %REPN=$G(^L1PCPRM("REPN")) I %REPN="" S ^L1PCPRM("ER")="NOREPN" G SENDE
 ;
 I $D(^L1PCPRM("QUERY"))#2 D
 .S QUERY=^("QUERY")
 .I QUERY?1N.N D  Q:QUERY=""
 ..N N,I S N="" F I=1:1:QUERY S N=$O(^rep(%REPN,"QUERY",N)) Q:N=""
 ..I N'=""  S QUERY=N
 .Q:$D(^rep(%REPN,"QUERY",QUERY))<10
 .N I F I="MIUN","SIK0","CT","FLD0" S ^rep(%REPN,I)=$G(^rep(%REPN,"QUERY",QUERY,I))
 ;
 D
 .N %L2NALAN,USERMOD,USERPHONE,USERPORT,USERGLOB,%SCKPORT D ^%L1PCIN
 ;
 I $D(^L1PCPRM("SHEIL")) S %L1PC("SHEIL")=$G(^("SHEIL"))
 ;
 I $D(^L1PCPRM("VAL"))>9 D
 .S N="" F  S N=$O(^L1PCPRM("VAL",N)) Q:N=""  D
 ..S @N=$G(^L1PCPRM("VAL",N))
 ;
 I $D(^L1PCPRM("MIUN"))>9 D
 .S N="" F  S N=$O(^L1PCPRM("MIUN",N)) Q:N=""  D
 ..S MIUN(N)=$G(^L1PCPRM("MIUN",N))
 ;
 I $D(^L1PCPRM("SIK"))>9 D
 .S N="" F  S N=$O(^L1PCPRM("SIK",N)) Q:N=""  D
 ..S SIK(N)=$G(^L1PCPRM("SIK",N))
 ;
 I $D(^L1PCPRM("SIK0"))>9 D
 .S N="" F  S N=$O(^L1PCPRM("SIK0",N)) Q:N=""  D
 ..S SIK0(N)=$G(^L1PCPRM("SIK0",N))
 ;
 I $D(^L1PCPRM("CT"))>9 D
 .S N="" F  S N=$O(^L1PCPRM("CT",N)) Q:N=""  D
 ..S CT(N)=$G(^L1PCPRM("CT",N))
 ;
 S %GLOU="^L1PCPRM(""GLOU"")"
 D ^%L1PCP
 ;
SENDE K ^UTILITY($J) S ^UTILITY($J,"L1PCPRM")=""
 S USERGLOB="" K ^GTR000($J)
 S USERPORT=$P
 I $D(%SCKPORT) S USERPORT=%SCKPORT M ^L1PCPRM("SCKPORT")=%SCKPORT
 S ^L1PCPRM("USERPORT")=USERPORT
 S %L1RCV="" D ^%L2GTR
 K ^L1PCPRM0 M ^L1PCPRM0=^L1PCPRM
END K ^L1PCPRM S $ZT=$G(ZT) Q

%L1PCQ
%L1PCQ(QUERY) ; [ 08.04.05  4:44 PM ] [
 ; IN: QUERY - NAME OF QUESTION
 ;
 N I F I="MIUN","SIK0","CT","FLD0" D
 .S ^rep(%REPN,I)=$G(^rep(%REPN,"QUERY",QUERY,I))
 Q

%L1PCS
SHEIL N %L1PCER ;     [ 01.07.07 11:15 ] [ 23.08.06  2:43 PM ] [ 21.08.06  2:55 PM ]
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL1 N COD,IJK,TYP,%GETREST S %BS=0,%TO=""
 I $D(%L1PC("SHEIL")) X %L1PC("SHEIL") Q
 N %HBRY S %HBRY=""
 I $D(%L1GET) S Y1=4,Y2=Y1+MAXMIUN+1,X1=3,X2=79 D ^%L1RBUA
 D KOT
 S %SAY="{} zxzek | mekiq | oein {}  (.) - zezli`y blcl ++2,45,HH" X %XMSG
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) D  Q:%BS
 .Q:$G(^rep(%REPN,0,COD,"SH"))=0  K %RNG
ZSH .S %RNG=^rep(%REPN,0,COD) S DL=$P(%RNG,";",2),TYP=$TR($P(%RNG,";",2),"0123456789,","") S:TYP?.P TYP="E"
 .S %SAY=$P($P(%RNG,";"),"++")_"++"_(3+IJK)_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_(3+IJK)_",60,HH#++"_DL_","_TYP_",I",%L1PCER=0
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL1^%L1PCS K %L1GET"
 .S %RNG=%RNG_"++++"_$G(^rep(%REPN,0,COD,"HELP"))
 .I $D(^rep(%REPN,0,COD,"FILE")) S %RNG=%RNG_"++"_^rep(%REPN,0,COD,"FILE")
 .S %RNG("V")=COD
 .I TYP="D" K:$G(%L1GET)="END1"&'$D(%L1PC("VAL",COD)) %L1GET
 .I $D(%L1PC("VAL",COD)),'$D(%L1GET) S %L1GET="V"
 .D RR^%L1RNG I $G(%L1GET)="V" K %L1GET
 .I $D(%L1GET) G ZSHM
 .I $G(%TO)="END"!($G(%TO)="UP") D  S IJK=IJK-1 S:IJK<0 %BS=1 Q
 ..N IJKOK S IJKOK=0
 ..F IJK=IJK-1:-1:1 S COD=$P(%L1PC("FLD"),"*",IJK) I $L(COD) D  Q:IJKOK
 ...I $D(%L1PC("VAL",COD)) Q
 ...I $G(^rep(%REPN,0,COD,"SH"))'=0 S IJKOK=1 Q
 .I $G(%TO)="END1" S %L1GET="END1"  ;------- <.> --> %TO="END1"
 .;;I $D(^rep(%REPN,0,COD,"M2")),'$D(%L1GET) X ^("M2") I %L1PCER W *7 G ZSH
 .I TYP="D",@("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4)
 .I TYP="D",@("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4)
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)),'$D(%L1PC("VAL",COD)) W *7 G ZSH
 .I $G(%TO)="DW" S %TO="" Q
ZSHM .S %GET="++"_(3+IJK)_",25,H#"_$S($G(MIUN(IJK)):$G(MIUN(IJK)),1:"")_"++2,E,I++++(oein 'qn ixg` ""!"" siqedl `p a""` itl oeinl) 'eke 2- dpyn oein ,1- deab ikd oein"
 .D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") S:$D(%L1PC("VAL",COD)) IJK=IJK-1 S:IJK<1 %BS=1 Q:%BS  G ZSH
 .S MIUN(IJK)=%S
ZSHM1 .S %GET="++"_(3+IJK)_",15,H#"_$S($G(SIK(IJK)):$G(SIK(IJK)),1:"")_"++1,E,I++3210++ 0 - zxg` ,2 - rvenn, 1 - dcy itl mekiq lawl " D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") G ZSHM
 .S SIK(IJK)=+%S
 .S %GET="++"_(3+IJK)_",7,H#"_$S($G(CT(IJK)):$G(CT(IJK)),1:"")_"++1,E,I++012++oeniq `ll e` 0 - izxbiy dcy ,2 -zexeyd oia zxzek,1 - g""ec zxzeka dcy" D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") G ZSHM1
 .S CT(IJK)=+%S
 Q:%BS  I $D(%L1PC("SHEIL1")) X %L1PC("SHEIL1")
 K:$G(%L1GET)="END1" %L1GET
 I $D(%L1GET) D SHEIL3
 Q
 ;
SHEIL2 ;---------------- HITUHIM NOSAFIM
 I $D(%L1PC("SHEIL")) Q
 N JJ,OLDCOD S JJ=0
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL21 N COD,IJK,TYP,%GETREST S %BS=0
 N %HBRY S %HBRY="",%TO=""
 I $D(%L1GET) S Y1=14,Y2=Y1+$L(%L1PC("FLD"),"*")-MAXMIUN+1,X1=3,X2=79,%L1RBCL="" D ^%L1RBUA
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I COD'?.P D  Q:%BS
 .K %RNG
 .S IJK1=IJK-MAXMIUN+13
 .S %RNG=^rep(%REPN,0,COD) S DL=+$P(%RNG,";",2),TYP="E"
ZSH2 .S %SAY=$P($P(%RNG,";"),"++")_"++"_IJK1_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_IJK1_",60,HH#++"_DL_","_TYP_",I"
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL21^%L1PCS K %L1GET"
 .S %RNG("V")=COD ;S %RNG("DAT")=""
 .I '$D(%L1GET),$D(%L1PC("VAL",COD)) S %L1GET="V"
 .D RR^%L1RNG I $G(%L1GET)="V" K %L1GET
 .Q:$D(%L1GET)
 .I $G(%TO)="END"!($G(%TO)="UP") S IJK=IJK-2 S:IJK<MAXMIUN %BS=1 Q
 .I TYP="D",@("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4)
 .I TYP="D",@("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4)
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)),'$D(%L1PC("VAL",COD)) W *7 G ZSH2
 .I @("ME"_COD)?.P S @("ME"_COD)=-99999999
 .I @("AD"_COD)?.P S @("AD"_COD)=99999999
 .I $G(%TO)="END1" S %L1GET="END1" Q  ;------- <.> --> %TO="END1"
 S %SRKM=1 K:$G(%L1GET)="END1" %L1GET
 Q
 ;
SHEIL3 ;
 N %L1PCER,IJK,COD,Y1,Y2,CMIN,%I ; --> %FLDMIN (-)
 S %FLDMIN="",%BS=0,%TO=""
 F %I=1:1:$L(^rep(%REPN,"FLD"),"*") I $P($G(^rep(%REPN,"FLD0")),"*",%I)="-"  D
 .K %RNG
 .S COD=$P(^rep(%REPN,"FLD"),"*",%I)
 .Q:$G(^rep(%REPN,0,COD,"SH"))=0
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)="" ;;99999999
 .S %FLDMIN=%FLDMIN_COD_"*"
 Q:%FLDMIN=""
 S %FLDMIN=$E(%FLDMIN,1,$L(%FLDMIN)-1)
SHEIL31 I $D(%L1PC("SHEIL")) Q
 S CMIN=$L(%FLDMIN,"*")
 N %HBRY S %HBRY=""
 S Y1=4+MAXMIUN+3,Y2=Y1+CMIN+1,X1=3,X2=79 I $D(%L1GET) D ^%L1RBUA
 D KOT
 S Y1=Y1-1
 S %SAY="(.) - zezli`y blcl ++"_(Y1-1)_",45,HH" X %XMSG
 F IJK=1:1:$L(%FLDMIN,"*") D  Q:%BS
ZSH3 .S COD=$P(%FLDMIN,"*",IJK) Q:COD=""  I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
 .S %RNG=^rep(%REPN,0,COD) S DL=+$P(%RNG,";",2),TYP=$TR($P(%RNG,";",2),"0123456789,","") S:TYP?.P TYP="E"
 .S %SAY=$P($P(%RNG,";"),"++")_"++"_(Y1+IJK)_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_(Y1+IJK)_",60,HH#++"_DL_","_TYP_",I",%L1PCER=0
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL31^%L1PCS K %L1GET"
 .I $D(^rep(%REPN,0,COD,"FILE")) S %RNG=%RNG_"++++++"_^rep(%REPN,0,COD,"FILE")
 .S %RNG("V")=COD
 .I TYP="D" K:$G(%L1GET)="END1" %L1GET
 .I $D(%L1PC("VAL",COD)),'$D(%L1GET) S %L1GET="V"
 .D RR^%L1RNG I $G(%L1GET)="V" K %L1GET
 .Q:$D(%L1GET)
 .I $G(%TO)="END"!($G(%TO)="UP") S IJK=IJK-2 S:IJK<0 %BS=1 Q
 .I $G(%TO)="END1" S %L1GET="END1" Q  ;------- <.> --> %TO="END1"
 .Q:$D(%L1GET)
 .I TYP="D",@("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4)
 .I TYP="D",@("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4)
 .;;I $D(^rep(%REPN,0,COD,"M2")) X ^("M2") I %L1PCER W *7 G ZSH3
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)),'$D(%L1PC("VAL",COD)) W *7 G ZSH3
 .I $G(%TO)="DW" S %TO="" Q
 K:$G(%L1GET)="END1" %L1GET
 I '$D(%L1GET) F I=1:1:$L(%FLDMIN,"*") S A=$P(%FLDMIN,"*",I) I A'?.P D
 .S:$G(@("ME"_A))?.P @("ME"_A_"=-99999999")
 .I $G(@("AD"_A))?.P S @("AD"_A)=$TR($J("",$P($G(^rep(%REPN,0,A)),";",2))," ",9)
 Q
KOT S %SAY=" "_$G(QUERY)_" : "_$G(^rep(%REPN)) X %XMSGV
 Q
S0 ;
 I ","_$P($P($G(GLOB2),"(",2),")")_","[(","_COD_",")!$D(%L1PC("S0",COD)) S %RNG("S0")=1 S %SAY="*"_%SAY
 Q

%L1PCS0
SHEIL N %L1PCER ;     [ 20.08.06 13:47 ] [ 14.01.06 17:30 ] [ 26.12.04  1:36 PM ]
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL1 N COD,IJK,TYP,%GETREST S %BS=0,%TO=""
 I $D(%L1PC("SHEIL")) X %L1PC("SHEIL") Q
 N %HBRY S %HBRY=""
 I $D(%L1GET) S Y1=4,Y2=Y1+MAXMIUN+1,X1=3,X2=79 D ^%L1RBUA
 D KOT
 S %SAY="{} zxzek | mekiq | oein {}  (.) - zezli`y blcl ++2,45,HH" X %XMSG
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) D  Q:%BS
 .Q:$G(^rep(%REPN,0,COD,"SH"))=0  K %RNG
ZSH .S %RNG=^rep(%REPN,0,COD) S DL=$P(%RNG,";",2),TYP=$TR($P(%RNG,";",2),"0123456789,","") S:TYP?.P TYP="E"
 .S %SAY=$P($P(%RNG,";"),"++")_"++"_(3+IJK)_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_(3+IJK)_",60,HH#++"_DL_","_TYP_",I",%L1PCER=0
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL1^%L1PCS K %L1GET"
 .S %RNG=%RNG_"++++"_$G(^rep(%REPN,0,COD,"HELP"))
 .I $D(^rep(%REPN,0,COD,"FILE")) S %RNG=%RNG_"++"_^rep(%REPN,0,COD,"FILE")
 .S %RNG("V")=COD
 .I TYP="D" K:$G(%L1GET)="END1" %L1GET
 .D RR^%L1RNG
 .I $D(%L1GET) G ZSHM
 .I $G(%TO)="END"!($G(%TO)="UP") D  S IJK=IJK-1 S:IJK<0 %BS=1 Q
 ..F IJK=IJK-1:-1:1 S COD=$P(%L1PC("FLD"),"*",IJK) I $L(COD) Q:$G(^rep(%REPN,0,COD,"SH"))'=0
 .I $G(%TO)="END1" S %L1GET="END1"  ;------- <.> --> %TO="END1"
 .;;I $D(^rep(%REPN,0,COD,"M2")),'$D(%L1GET) X ^("M2") I %L1PCER W *7 G ZSH
 .I TYP="D",@("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4)
 .I TYP="D",@("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4)
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)) W *7 G ZSH
 .I $G(%TO)="DW" S %TO="" Q
ZSHM .S %GET="++"_(3+IJK)_",25,H#"_$S($G(MIUN(IJK)):$G(MIUN(IJK)),1:"")_"++2,E,I++++(oein 'qn ixg` ""!"" siqedl `p a""` itl oeinl) 'eke 2- dpyn oein ,1- deab ikd oein" D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") G ZSH
 .S MIUN(IJK)=%S
ZSHM1 .S %GET="++"_(3+IJK)_",15,H#"_$S($G(SIK(IJK)):$G(SIK(IJK)),1:"")_"++1,E,I++10++ 0 - zxg` ,1 - dcy itl mekiq lawl " D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") G ZSHM
 .S SIK(IJK)=+%S
 .S %GET="++"_(3+IJK)_",7,H#"_$S($G(CT(IJK)):$G(CT(IJK)),1:"")_"++1,E,I++012++oeniq `ll e` 0 - izxbiy dcy ,2 -zexeyd oia zxzek,1 - g""ec zxzeka dcy" D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") G ZSHM1
 .S CT(IJK)=+%S
 Q:%BS  I $D(%L1PC("SHEIL1")) X %L1PC("SHEIL1")
 K:$G(%L1GET)="END1" %L1GET
 I $D(%L1GET) D SHEIL3
 Q
 ;
SHEIL2 ;---------------- HITUHIM NOSAFIM
 I $D(%L1PC("SHEIL")) Q
 N JJ,OLDCOD S JJ=0
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL21 N COD,IJK,TYP,%GETREST S %BS=0
 N %HBRY S %HBRY="",%TO=""
 I $D(%L1GET) S Y1=14,Y2=Y1+$L(%L1PC("FLD"),"*")-MAXMIUN+1,X1=3,X2=79,%L1RBCL="" D ^%L1RBUA
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I COD'?.P D  Q:%BS
 .K %RNG
 .S IJK1=IJK-MAXMIUN+13
 .S %RNG=^rep(%REPN,0,COD) S DL=+$P(%RNG,";",2),TYP="E"
ZSH2 .S %SAY=$P($P(%RNG,";"),"++")_"++"_IJK1_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_IJK1_",60,HH#++"_DL_","_TYP_",I"
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL21^%L1PCS K %L1GET"
 .S %RNG("V")=COD ;S %RNG("DAT")=""
 .D RR^%L1RNG Q:$D(%L1GET)
 .I $G(%TO)="END"!($G(%TO)="UP") S IJK=IJK-2 S:IJK<MAXMIUN %BS=1 Q
 .I TYP="D",@("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4)
 .I TYP="D",@("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4)
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)) W *7 G ZSH2
 .I @("ME"_COD)?.P S @("ME"_COD)=-99999999
 .I @("AD"_COD)?.P S @("AD"_COD)=99999999
 .I $G(%TO)="END1" S %L1GET="END1" Q  ;------- <.> --> %TO="END1"
 S %SRKM=1 K:$G(%L1GET)="END1" %L1GET
 Q
 ;
SHEIL3 ;
 N %L1PCER,IJK,COD,Y1,Y2,CMIN,%I ; --> %FLDMIN (-)
 S %FLDMIN="",%BS=0,%TO=""
 F %I=1:1:$L(^rep(%REPN,"FLD"),"*") I $P($G(^rep(%REPN,"FLD0")),"*",%I)="-"  D
 .K %RNG
 .S COD=$P(^rep(%REPN,"FLD"),"*",%I)
 .Q:$G(^rep(%REPN,0,COD,"SH"))=0
 .S @("ME"_COD)="",@("AD"_COD)="" ;;99999999
 .S %FLDMIN=%FLDMIN_COD_"*"
 Q:%FLDMIN=""
 S %FLDMIN=$E(%FLDMIN,1,$L(%FLDMIN)-1)
SHEIL31 I $D(%L1PC("SHEIL")) Q
 S CMIN=$L(%FLDMIN,"*")
 N %HBRY S %HBRY=""
 S Y1=4+MAXMIUN+3,Y2=Y1+CMIN+1,X1=3,X2=79 I $D(%L1GET) D ^%L1RBUA
 D KOT
 S Y1=Y1-1
 S %SAY="(.) - zezli`y blcl ++"_(Y1-1)_",45,HH" X %XMSG
 F IJK=1:1:$L(%FLDMIN,"*") D  Q:%BS
ZSH3 .S COD=$P(%FLDMIN,"*",IJK) Q:COD=""  S @("ME"_COD)="",@("AD"_COD)=""
 .S %RNG=^rep(%REPN,0,COD) S DL=+$P(%RNG,";",2),TYP=$TR($P(%RNG,";",2),"0123456789,","") S:TYP?.P TYP="E"
 .S %SAY=$P($P(%RNG,";"),"++")_"++"_(Y1+IJK)_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_(Y1+IJK)_",60,HH#++"_DL_","_TYP_",I",%L1PCER=0
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL31^%L1PCS K %L1GET"
 .I $D(^rep(%REPN,0,COD,"FILE")) S %RNG=%RNG_"++++++"_^rep(%REPN,0,COD,"FILE")
 .S %RNG("V")=COD
 .I TYP="D" K:$G(%L1GET)="END1" %L1GET
 .D RR^%L1RNG Q:$D(%L1GET)
 .I $G(%TO)="END"!($G(%TO)="UP") S IJK=IJK-2 S:IJK<0 %BS=1 Q
 .I $G(%TO)="END1" S %L1GET="END1" Q  ;------- <.> --> %TO="END1"
 .Q:$D(%L1GET)
 .I TYP="D",@("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4)
 .I TYP="D",@("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4)
 .;;I $D(^rep(%REPN,0,COD,"M2")) X ^("M2") I %L1PCER W *7 G ZSH3
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)) W *7 G ZSH3
 .I $G(%TO)="DW" S %TO="" Q
 K:$G(%L1GET)="END1" %L1GET
 I '$D(%L1GET) F I=1:1:$L(%FLDMIN,"*") S A=$P(%FLDMIN,"*",I) I A'?.P D
 .S:$G(@("ME"_A))?.P @("ME"_A_"=-99999999")
 .I $G(@("AD"_A))?.P S @("AD"_A)=$TR($J("",$P($G(^rep(%REPN,0,A)),";",2))," ",9)
 Q
KOT U $P S %SAY=" "_$G(QUERY)_" : "_$G(^rep(%REPN)) X %XMSGV
 Q
S0 ;
 I ","_$P($P($G(GLOB2),"(",2),")")_","[(","_COD_",")!$D(%L1PC("S0",COD)) S %RNG("S0")=1 S %SAY="*"_%SAY
 Q

%L1PCSND
%L1PCSND ; [ 29.10.06 18:41 ] [ 10.10.06 18:21 ] [ 15.02.06 16:36 ]
 S %L1PCOK=2 K ^TREPK($P),^L1PCSND($P)
ZM K %L1PC("HEAD") S %GET=" : (':' - mixgap , ** - mlek ) rcin xewn - fkxn++23,70,HH#"_$G(MRKZ)_"++4,E,I++++++^MRKZ\\\8\V"
 D ^%L1GET Q:%S=""!(%TO="END")
 Q:%S=$$^%L1MRK
 K MRKZ
 S N="" F  S N=$O(^MRKZ(N)) Q:N=""  S MRKZ(N)=$G(^(N))
 S %ALL=0 I %S="**" S %ALL=1
 I %S=":" D VIB S %ALL=.5
 I %ALL G BG
 ;
 I $$^%L1ZU("0")="MLY" Q:$D(^[^UCI("MLG")]MRKZNO(%S))
 I '$D(^MRKZ(%S)) S %SAY=" ! zkxrna miiw `l fkxn " X %XMSGV(1) G ZM
 I '$D(^MRKZ(%S,"MD")),'$D(^MRKZ(%S,"ADDR")) S %SAY=" ! zkxrna excbed `l fkxn ly IP zaezk e` mcen xtqn " X %XMSGV(1) G ZM
 S MRKZ=%S
BG ;
 N %FRST
 S %L1PCOK=1,%FRST=1
 I $D(^L1PCPRM) D  Q:'%L1PCOK
 .N %A S %A=$G(^L1PCPRM) Q:%A=""
 .S %JOB=$P(%A,"*")
 .S %PRT=$P(%A,"*",2)
 .I %JOB=$J,%PRT=$P Q
 .S %H=$P(%A,"*",3)
 .I $H-%H>1 Q
 .I $P($H,",",2)-$P(%H,",",2)>2000 Q
 .I $P($H,",",2)-$P(%H,",",2)<0,$P($H,",",2)-$P(%H,",",2)+84600>2000 Q
 .S %L1PCOK=0
 .S %GET="("_%JOB_" dniyn ) "_%PRT_" dcnrn wgexn aygnn zeg""ec zlaw zpkezd mr micaer " D N^%L1GET
 ;
 K ^L1PCPRM
 ;
 S ^L1PCPRM=$J_"*"_$P_"*"_$H
 S ^L1PCPRM("REPN")=%REPN
 D
 .N N S N="" F  S N=$O(%REPN(N)) Q:N=""  S ^L1PCPRM("VAL",N)=%REPN(N)
 ;
 N %J,%FLD,%MIUN,%CT,%SIK,%SIK0
 F %J=1:1:$L(^rep(%REPN,"FLD"),"*") D
 .S %FLD=$P(^rep(%REPN,"FLD"),"*",%J)
 .I $D(@("ME"_%FLD)) S ^L1PCPRM("VAL","ME"_%FLD)=@("ME"_%FLD)
 .I '$D(@("ME"_%FLD)) S ^L1PCPRM("VAL","ME"_%FLD)=$S($E(%FLD)="x":-99999999,1:"")
 .I $D(@("AD"_%FLD)) S ^L1PCPRM("VAL","AD"_%FLD)=@("AD"_%FLD)
 .I $G(@("AD"_%FLD))="" S ^L1PCPRM("VAL","AD"_%FLD)=$TR($J("",+$P(^rep(%REPN,0,%FLD),";",2))," ",9)
 ;
 S %N="" F  S %N=$O(MIUN(%N)) Q:%N=""  D
 .S ^L1PCPRM("MIUN",%N)=$G(MIUN(%N))
 ;
 S %N="" F  S %N=$O(CT(%N)) Q:%N=""  D
 .S ^L1PCPRM("CT",%N)=$G(CT(%N))
 ;
 S %N="" F  S %N=$O(SIK(%N)) Q:%N=""  D
 .S ^L1PCPRM("SIK",%N)=$G(SIK(%N))
 ;
 S %N="" F  S %N=$O(SIK0(%N)) Q:%N=""  D
 .S ^L1PCPRM("SIK0",%N)=$G(SIK0(%N))
 ;
 S ^L1PCPRM("QUERY")=$G(QUERY)
 ;
 I '%ALL D SNDMRK(MRKZ)
 I %ALL D
 .S MRKZ="" F  S MRKZ=$O(MRKZ(MRKZ)) Q:MRKZ=""  D
 ..D SNDMRK(MRKZ)
 .Q:$D(^TREPK($P))<10
 .I %REPN'["m" S %REPN=%REPN_"m"
 .k ^rep(%REPN) M ^rep(%REPN)=^rep($E(%REPN,1,$L(%REPN)-1))
 .Q:$D(^rep(%REPN,0,"MRKZ"))
 .S ^rep(%REPN,0,"MRKZ")="fkxn;4"
 .S ^rep(%REPN,0,"MRKZ","FILE")="^MRKZ"
 .S ^rep(%REPN,0,"MRKZ","OUT")="MRKZ1"
 .S ^rep(%REPN,0,"MRKZ","SET")=0
 .S ^rep(%REPN,0,"MRKZ1")="fkxn my;12H"
 .S ^rep(%REPN,0,"MRKZ","SH")=1
 .S ^rep(%REPN,0,"MRKZ","SET")=0
 .S ^rep(%REPN,"COD")="MRKZ*MRKZ1*"_^rep(%REPN,"COD")
 .I $D(%L1PC("COD")) S %L1PC("COD")="MRKZ*MRKZ1*"_%L1PC("COD")
 .S ^rep(%REPN,"FLD")="MRKZ*"_^rep(%REPN,"FLD")
 .I $D(%L1PC("FLD")) S %L1PC("FLD")="MRKZ*"_%L1PC("FLD")
 .I $D(^rep(%REPN,"FLD0")) S ^rep(%REPN,"FLD0")="MRKZ*"_^rep(%REPN,"FLD0")
 .I $D(%L1PC("FLD0")) I $D(%L1PC("FLD0")) S %L1PC("FLD0")="MRKZ*"_%L1PC("FLD0")
 .;S ^rep(%REPN,"CT")="1*1*"_^rep(%REPN,"CT")
 .;S %L1PC("CT")="1*1"_%L1PC("CT")
 .;S ^rep(%REPN,"SIK")="1*"_^rep(%REPN,"SIK")
 .;S %L1PC("SIK")="1*"_%L1PC("SIK")
 .;S ^rep(%REPN,"SIK0")="1*"_^rep(%REPN,"SIK0")
 .;I $D(%L1PC("SIK0")) S %L1PC("SIK0")="1*"_%L1PC("SIK0")
 .
 .S COL0=COL0+2
 .S COL01=COL01+2
 .S MAXMIUN=MAXMIUN+1
 .S SEDM="MRKZ*"_SEDM
 .S SEDSM="1*"_SEDSM
 ;
END K ^L1PCPRM
 I $D(^L1PCSND($P))>9 D ^%L1PCSNP
 Q
SND(PHONE) ;
 S JOB=$O(^L1TRPRM(999999),-1)+1
 I JOB>1000 K ^L1TRPRM(JOB-1000)
 M ^L1TRPRM(JOB,"REF")=^UTILITY($J)
 S ^L1TRPRM(JOB,"G")=1
 S ^L1TRPRM(JOB,"XON")="&K4"
 S ^L1TRPRM(JOB,"PHONE")=PHONE
 S ^L1TRPRM(JOB,"PORT")=$$^%L1PORT
 S ^L1TRPRM(JOB,"STAT")="S\"_$P_"\"_$H
 ;
 S ^L1TRPRM(JOB,"LKH")=2
 S ^L1TRPRM(JOB,"LKH1")="fkxn"
 S ^L1TRPRM(JOB,"UCI")=$$^%L1UCI
 ;S ^L1TRPRM(JOB,"DISPMSG")=1
 S ^L1TRPRM(JOB,"PROG")="%L1PCPRM"
 S ^L1TRPRM(JOB,"PROGRCV")="%L2GTR1"
 ;
 S %L2G1("TIME")=180
 S %SAY=" ... "_MRKZ_" fkxn ly aygnn g""ec ipezp zlawe zexywzdl oznd `p` " X %XMSGN
 D SENDJ^%L1MODJ(JOB)
 D ENDSEND(JOB)
 K ^UTILITY($J)
 Q
ENDSEND(JOB) ;
 H 1
 Q:$G(JOB)=""
 Q
 ;
CLR ;
 Q
 ;
MDPORT(STAM) Q $$MDPORT^%L1PORT
 ;
PHONE(LEAN) ;
 I $G(^MRKZ(LEAN,"ADDR")) Q $G(^MRKZ(LEAN,"ADDR"))
 Q $G(^MRKZ(LEAN,"MD"))
SNDMRK(MRKZ) ;
 I $$^%L1ZU("0")="MLY",$D(^MRKZNO(MRKZ)) Q
 K ^UTILITY($J)
 S ^UTILITY($J,"L1PCPRM")=""
 I '$D(^L1PCPRM("REPN")) S ^L1PCPRM("REPN")=%REPN
 D SND($$PHONE(MRKZ))
 S ^L1PCSND($P,MRKZ)="NOK"_"~"_$H_"~"_%REPN
 I $P($G(^L1TRPRM(JOB,"STAT")),"\")'="O" S %GET("TIME")=10,%GET=" <ENTER> ugl .xywzdl gilvd `l " D N^%L1GET G ENDS
 I $G(^L1PCPRM("ER"))="BUSY" S %GET=" <ENTER> ugl ! qetz wgexn aygn " D N^%L1GET G ENDS
 I $G(^L1PCPRM("ER"))="NODATA" S %SAY=" ! mipezp oi` " X %XMSGV(1) G ENDS
 S ^L1PCSND($P,MRKZ)="OK"_"~"_$H_"~"_%REPN
 K %GLOU N %L1PCSND S %L1PCSND="" D M1^%L1PCP
 I '%ALL K ^TREPK($P) M ^TREPK($P)=^L1PCPRM("GLOU")
 I %ALL D
 .I '%FRST D
 ..S NL=$O(^TREPK($P,999999),-1)+1
 ..S ^TREPK($P,NL)="#######"
 .N N S N="" F  S N=$O(^L1PCPRM("GLOU",N)) Q:N=""  D
 ..N %ST S %ST=$G(^(N))
 ..S NL=$O(^TREPK($P,999999),-1)+1
 ..N %FLD1 S %FLD1=$P(^L1PCPRM("GLOU",N),"*")
 ..I $E(%FLD1,1,2)="##"!(%ST="") D  Q
 ...S ^TREPK($P,NL)=^L1PCPRM("GLOU",N)
 ..I %FLD1?.P,$E(%FLD1,1,2)="--" D  Q
 ...S ^TREPK($P,NL)="-------*-------*"_^L1PCPRM("GLOU",N)
 ..I %FLD1?.P,$E(%FLD1,1,2)="==" D  Q
 ...S ^TREPK($P,NL)="=========*==========*"_^L1PCPRM("GLOU",N)
 ..S ^TREPK($P,NL)=MRKZ_"*"_$G(^MRKZ(MRKZ))_"*"_^L1PCPRM("GLOU",N)
 I $D(^TREPK($P))>10,'%ALL S %L1PC("HEAD")=$G(^MRKZ(MRKZ))
 I %FRST S %FRST=0
ENDS K ^L1PCPRM("GLOU"),^L1PCPRM("ER")
 Q
VIB ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,MRKZ) D ^%L1C
 S I=0 K ^TMP($P)
 S N="" F  S N=$O(^MRKZ(N)) Q:N=""  D
 .S ADR=$S($G(^MRKZ(N,"ADDR")):^("ADDR"),$G(^("MD")):^("MD"),1:"")
 .Q:ADR=""
 .S I=I+1,^TMP($P,I)=$J(ADR,18)_" | "_$$HBR^%L1FRM($G(^MRKZ(N)),22)_" | "_$J(N,5)
 ;
 S MAC="^TMP($P)"
 S %L2VIEW("T1")=": miyexc mifkxn , 'geex' ywn zxfra ,oiivl `p"
 S %L2VIEW("Y1")=6
 S %L2VIEW("H")=14
 S %L2VIEW("FIND")=2
 S %L2VIEW("SORT")=2
 S %L2VIEW("SORT",2)="H"
 S %L2VIEW("SORT","MASTER")=1
 S %L2VIEW("SORT","HEAD")="IP zaezk e` mcen 'qn|         fkxn  my         | fkxn "
 D ^%L2VIEW
 I $L($G(%L2VIN)),'$D(^L2VMM($J,%L2VIN)),%L2VIN,$G(%I) S ^L2VMM($J,%L2VIN)=%L2VNM
 I '$D(^L2VMM($J)) D A^%L1SC S %SC("ST")=1 Q
 K MRKZ
 S N="",I=0 F  S N=$O(^L2VMM($J,N)) Q:N=""  D
 .N LKH,MODEM,SHEM
 .S LKH=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",3))
 .S MRKZ(LKH)=$G(^MRKZ(LKH))
 K ^TMP($P)
 Q

%L1PCSNP
%L1PCSNP ; [ 23.12.05  1:50 PM ] [ 22.12.05 11:05 AM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 Q:'$D(^L1PCSND($P))
 D FORM Q:'$D(^TMPS111($J))
 ;
 S %S2V("TXT")=" mifkxnn zegec zxardd lewehext "
 D ^%S2VIEW
 K ^TMPS111($J) Q
 ;
S1(TXT) ;
 S ^TMPS111($J,$O(^TMPS111($J,999999),-1)+1)=$J("",SM)_TXT
 Q
FORM ;
 Q:'$D(^L1PCSND($P))
 K ^TMPS111($J) S SM=5
 S ^TMPS111($J,1)=$J("",SM)_"-------------------------------------------------------------"
 S ^TMPS111($J,2)=$J("",SM)_": d`vez :  zxeywz onf  :           fkxn my           : fkxn :"
 S ^TMPS111($J,3)=$J("",SM)_"-------------------------------------------------------------"
 S N="" F  S N=$O(^L1PCSND($P,N)) Q:N=""  S A=$G(^(N)) D
 .S TXT="  "_$J($P(A,"~"),3)_"   :"
 .S TXT=TXT_$$^%L1DC($P(A,"~",2),1)_" "_$$T^%L1TIME($P($P(A,"~",2),",",2))_":"
 .S TXT=TXT_$$HBR^%L1FRM($G(^YZRN(N)),28)_" :"
 .S TXT=TXT_$J(N,5)
 .D S1(TXT)
 Q
PC D FORM
 S:'$D(USTR) USTR=3
 S %L1OUT("NOTST")=""
 D Z31^%L1OUT
 Q

%L1PCT
%L1PCT ; PRINT/TYPE TAVLAOT [ 09/29/96 12:50 PM ]
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 I '$D(%POSIC) D ^%L1C
 N %BE,%LS,%S,%L1DS,OLDDAT,YOLD,SHOLD,SCHOLD
 N COLG,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPG,NPGL,OTB,PG,%PRNEW,RKV,RSCR,RZD,%REFH1
 N SHOLD,SCHOLD,STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2 ;SH,SCH
 ;
 N %HBRY S %HBRY=""
 I $D(%MBG("PAR"))>9 D ^%L1MBG1
 S NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 ;
BEG D INIT
 S %REFH1=$G(%MBG("REF"),"^MBG($P")
 D PS
ZB S %GET="<<" D N^%L1GET I %TO="END"!(%TO=""&(%S="")) G END
PGUP ;
 I %TO="PGUP" G:NPG'>1 ZB S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
 I %TO="PGDW" G:'$D(@(%REFH1_",SH-SCH+COLS+1)")) ZB S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
 G ZB
 ;-
END S %YY=24,%XX=1 X %POSIC W %ENG,%chists,%HBR Q
 ;-
PS D PS^%L1MBG
 Q
CLEAR ;
 N %XX,%YY,I U $P:(NOECHO:NOWRAP)
 D ^%L1RBUA
 F I=Y1:1:Y2-2 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 Q
 ;-
ZAPR ;
 S %XX=X1,%YY=Y2-2 X %POSIC W $J("",X2-X1-1)
 S %GET=" <ENTER> - jiyndl , <.> - miiql , 1 - owzl, 0 - mcew jqn  ++"_(Y2-2)_",75,HH#++1,E,I++10.u"
 D ^%L1GET
 S OTB=%S
 I OTB=0 Q:NPG'>1  S NPG=NPG-1 Q
 I OTB="" S NPG=NPG+1,PG(NPG)=SH-SCH+COLS Q
 I OTB'="."&(OTB'=1) W *7,*7 H 1 G ZAPR
 Q
ER ;
 S %XXX=%XX,%YYY=%YY,$X=%XX,$Y=%YY W *7 S %SAY=" d`iby ++0,40,HH,I" X %XMSG H 2
 S %SAY="       ++0,40,HH,I" X %XMSG S %XX=%XXX,%YY=%YYY X %POSIC
 Q
INIT  S:'$D(NPG) NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 S VGR0=$G(%MBG("VGR0"),1),VGR=$G(%MBG("VGR"),3)
 S Y1=VGR0,X1=%MBG("LL")-1,Y2=$G(%MBG("NGR"),24)
 S COLG=%MBG("COLG")
 S XX0=$G(%MBG("LR"),70)+5,X2=XX0+1 S:XX0>79 XX0=79
 S RSCR=Y2-VGR-2,STEP=$G(%MBG("STEP"),2)
 S COLS=RSCR-STEP\STEP,SCH=0,%YY=VGR,SH=PG(NPG)
 Q

%L1PCZ
%L1PCZ ;      [ 10.09.09 22:33 ] [ 06.09.09 06:57 ] [ 09.06.09 12:38 ]
  N COD,COLPR,A,FLD,OUT
  I '$D(%POSIC) D ^%L1C
  X %chista N %ECHO S %HBRY=""
  S %SAY=" zegec llegn " X %XMSGV
ZD S %GET=" g""ec cew ++2,70,HH#"_$G(%REPN)_"++6,E,I++++++^rep" D ^%L1GET Q:%S=""!($G(%TO)="END")
  S %REPN=%S I $D(^rep(%REPN))=11 G ZN
  K %Q S %Q("Z")=" xg` gecn wizrdl ",%Q("X")=10,%Q("Y")=3 D ^%S2ASK I YES D
 .S %GET=" dwzrdl gec cew ++3,34,HH,,,C#++6,E,I++++++^rep" D ^%L1GET Q:%S=""!(%TO="END")
 .N %REPN1 S %REPN1=%S
 .S MAC1="^rep(%REPN1)",MAC2="^rep(%REPN)" D ^%S1GC1
ZN S %RNAME=$G(^rep(%REPN)) S %GET=" g""ec xe`z ++2,50,HH#"_%RNAME_"++30,H,I" D ^%L1GET G:$G(%TO)="END" ZD
  S (%RNAME,^rep(%REPN))=%S
  S %GLOB1=$G(^rep(%REPN,"GLOB1"))
Z1 S %GET="GLOBAL START:++3,1,EE#"_%GLOB1_"++40,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") ZN
  S %GLOB1=%S I $E(%GLOB1)'="^" S %GLOB1="^"_%GLOB1
  S ^rep(%REPN,"GLOB1")=%GLOB1
  S %GLOB2=$G(^rep(%REPN,"GLOB2"))
Z2 S %GET="GLOBAL FINISH:++4,1,EE#"_%GLOB2_"++60,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") Z1
  S %GLOB2=%S I $E(%GLOB2)'="^" S %GLOB2="^"_%GLOB2
  I %GLOB2'[$E(%GLOB1,1,$L(%GLOB1)-1) X %XMSGV("ER") G Z2
  S ^rep(%REPN,"GLOB2")=%GLOB2
  S (%S,COD)=$G(^rep(%REPN,"COD"))
Z3 S %SAY="VARIABLE LIST:++5,1,EE#" X %XMSG
  N %X1,%X2,%Y1,%Y2 S %X1=5,%X2=75,%Y1=6,%Y2=7 D ^%L1WE
  Q:$D(%L1GET)
  K ^MBG($P) N A,FLD
  S COD=%S,^rep(%REPN,"COD")=COD
  I $D(^rep(%REPN,0))<10 D 1,2,3,4 G %L1PCZ
  D 1 S COD=^rep(%REPN,"COD")
Z4 D  G:%S=""!($G(%TO)="END") Z5 D @%S G Z4
  .F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I
  .S %XX=0,%YY=8 X %POSIC,%chiste
  .S %GET=" 4 - zexcbd , 3 - dpeilr zxzek , 2 - miizenk mipezp , 1 - micew ++8,70,HH#++1,E,I"
  .D ^%L1GET
  Q
Z5 S %Q("Z")=" CONDENSED ",%Q("U")=$S($G(^rep(%REPN,"LPT"))="S":"Y",1:"N")
 D ^%S1ASK S ^rep(%REPN,"LPT")=$S(YES:"S",1:"B")
 G ZD
1 N COD,GLOB2,I,A
 S COD=^rep(%REPN,"COD") K ^MBG($P)
 S GLOB2=^rep(%REPN,"GLOB2")
 F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I D
  .N PRM
  .S PRM=$G(^rep(%REPN,0,A))
  .;COD\SHEM\DL\SUG
  .S ^MBG($P,I)=A_"\"_$P(PRM,";")_"\"_+$P(PRM,";",2)_$S($P(PRM,";",2)[".":".",1:"")_"\"_$S($P(PRM,";",2)["H":"H",$P(PRM,";",2)["D":"D",1:"E")
  .;FILE\OUT\DL\MUMPS\SHEIL\SET
  .I ","_$P($P(GLOB2,")"),"(",2)_","[(","_A_",") S ^rep(%REPN,0,A,"SET")=1
  .S ^MBG($P,I)=^MBG($P,I)_"\"_$G(^rep(%REPN,0,A,"FILE"))_"\"_$G(^rep(%REPN,0,A,"OUT"))_"\"_$S($D(^("M2")):^("M2"),1:"")_"\"_$G(^("SH"),1)_"\"_+$G(^("SET"))
  S %SAY=" g""eca micew xe`z ++9,50,HH,I,,C" X %XMSG
  D INIT D ^%L1MBG
  S %GETIN="k" D IS1^%L1GET I 'YES K ^MBG($P) Q  ;G 2
  K OUT
  F I=1:1 Q:'$D(^MBG($P,I))  D
  .S ST=^(I),A=$P(ST,"\") Q:A=""  K ^rep(%REPN,0,A)
  .S ^rep(%REPN,0,A)=$P(ST,"\",2)_";"_$P(ST,"\",3)_$S($P(ST,"\",4)="H":"H",$P(ST,"\",4)="D":"D",1:"")
  .I $P(ST,"\",5)'="" S ^rep(%REPN,0,A,"FILE")=$S($P(ST,"\",5)'["^"&($E($P(ST,"\",5))'="+"):"^",1:"")_$P(ST,"\",5)
  .I $P(ST,"\",6)'="" D  S:$P(ST,"\",7)'="" ^rep(%REPN,0,A,"M2")=$P(ST,"\",7) S:$P(ST,"\",9)'="" ^rep(%REPN,0,A,"SET")=$P(ST,"\",9) Q
  ..S ^rep(%REPN,0,A,"OUT")=$P(ST,"\",6)
  ..S OUT($P(ST,"\",6))=""
  .I $P(ST,"\",7)'="" S ^rep(%REPN,0,A,"M2")=$P(ST,"\",7)
  .I $P(ST,"\",8)'="" S ^rep(%REPN,0,A,"SH")=$P(ST,"\",8)
  .I $P(ST,"\",9)'="" S ^rep(%REPN,0,A,"SET")=$P(ST,"\",9)
  K ^MBG($P)
  S FLD="" F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) I A'="",'$D(OUT(A)) S FLD=FLD_A_"*"
  S ^rep(%REPN,"FLD")=$E(FLD,1,$L(FLD)-1)
  Q
2 S COD=^rep(%REPN,"COD") K ^MBG($P)
  F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I
  Q:COLPR'<$L(COD,"*")
  S JJ=0
  F I=COLPR+1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  D
  .N PRM
  .S PRM=$G(^rep(%REPN,0,A))
  .S JJ=JJ+1 S ^MBG($P,JJ)=$P(PRM,";")_"\"_$P($P(PRM,";",2),",")_"\"_+$P($P(PRM,";",2),",",2)_"\"_$P($G(^rep(%REPN,"SIK")),"*",JJ)
  S %SAY=" g""eca miizenk mipezp xe`z ++8,50,HH,I,,C" X %XMSG
  D INIT1 S %YY=%MBG("VGR0")-1,%XX=0 X %POSIC,%chiste D ^%L1MBG
  S %GETIN="k" D IS1^%L1GET I 'YES Q  ;G %L1PCZ
  F I=1:1 Q:'$D(^MBG($P,I))  D
  .S ST=^(I) S A="x"_I K ^rep(%REPN,0,A)
  .S ^rep(%REPN,0,A)=$P(ST,"\")_";"_$P(ST,"\",2)_","_$P(ST,"\",3)
  .S $P(^rep(%REPN,"SIK"),"*",I)=$P(ST,"\",4)
  D GET
  Q
3 ;
 S SHP=$G(^rep(%REPN,"SHP","KOD")) K %L1GET
 S %GET=" dpeilr zxzek cew++8,60,HH,,,C#"_SHP_"++8,E,I" D ^%L1GET Q:($G(%TO)="END")
 I '$D(^rep(%REPN,"SHP")),%S="" Q
 I %S="" S %GET=" 99 - lehial " D N^%L1GET G:%S'=99 3 K ^rep(%REPN,"SHP") Q
 N SHP S SHP=%S K ^S000($P) S ^rep(%REPN,"SHP","KOD")=SHP
 F I=1:1 Q:'$D(^SHP(SHP,I))  S ^S000($P,I)=^SHP(SHP,I)
 K U,R,L,Y1,X1,U1 S %RMAX=79,%PRHBR=1,RL=79 D RSHP D ^%S2ERG1
 S %GETIN="k" D IS1^%L1GET I 'YES K ^S000($P) G E3
 S %GET=" ycg zxzek cew ++23,24,HH#"_SHP_"++8,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") E3
 S SHP=%S
 K ^SHP(SHP) F I=1:1 Q:'$D(^S000($P,I))  S ^SHP(SHP,I)=^S000($P,I)
 S %SAY=" zxzek mixhnxt zexcbdl MUMPS zcewt qipkdl `p ++12,70,HH,I" X %XMSG
 S %Y1=13,%Y2=15,%X1=5,%X2=75,%S=$G(^rep(%REPN,"SHP","PROG"))
 D ^%L1WE I %S'="" S ^rep(%REPN,"SHP","PROG")=%S
E3 X %chista S %L1GET="" D ZD K %L1GET
 Q
INIT S NPG=1,PG(1)=0,RZD="\" K %MBG
 S %MBG("VGR0")=10,%MBG("VGR")=11
 F J=1:1 Q:$E($T(SCREEN+J),2)="Q"  S %MBG("PAR",J)=$T(SCREEN+J)
 S %MBG("REF")="^MBG($P"
 S %REFH1=%MBG("REF")
 S %REFHS="^MBG($P,SH)"
 S %MBG("STEP")=2
 Q
INIT1 S NPG=1,PG(1)=0,RZD="\" K %MBG
 S %MBG("VGR0")=10,%MBG("VGR")=11
 F J=1:1 Q:$E($T(SCREEN1+J),2)="Q"  S %MBG("PAR",J)=$T(SCREEN1+J)
 S %MBG("REF")="^MBG($P"
 S %REFH1=%MBG("REF")
 S %REFHS="^MBG($P,SH)"
 S %MBG("STEP")=1
 Q
4 ;
GET ;
 S %XX=0,%YY=8 X %POSIC,%chiste
 S %SAY=" :mipzynl aly lka zexcbd qipkdl `p ++8,50,HH,I" X %XMSG
 N GLOB S %BS=0 K %L1GET
 F II=1:1:$L(%GLOB2,",") S GLOB=$P(%GLOB2,",",1,II) S:GLOB'[")" GLOB=GLOB_")" D  Q:%BS
 .S %SAY=GLOB_":++"_(10+(II-1*2))_",10,EE,I" X %XMSG
 .S %S="" S %GET="++"_(11+(II-1*2))_",3,EE#"_$G(^rep(%REPN,"US",II))_"++70,E,I" D ^%L1GET
 .I $G(%TO)="END"!($G(%TO)="UP") S II=II-2 I II<0 S %BS=1
 .I %S?.P K ^rep(%REPN,"US",II) Q
 .I %S'?.P S ^rep(%REPN,"US",II)=%S
 .F J=1:1:$L(%S,"=") S SET=$P(%S,"=",J) S:SET[" " SET=$P(SET," ",$L(SET," ")) S:SET["," SET=$P(SET,",",$L(SET,",")) I SET'="" S SET(SET)=""
 N A1 S A1="" F J=1:1:$L(COD,"*") S A=$P(COD,"*",J) I ","_$P($P(%GLOB2,$P(%GLOB1,")"),2),")")_","'[(","_A_","),'$D(OUT(A)),'$D(SET(A)) S A1=A1_A_" , "
 I A1'="" W *7,!,$E(A1,1,$L(A1)-2)," : xcben `l "
 S %GETIN="k" D IS1^%L1GET I 'YES G GET
 Q
RSHP K ^S000($P)
 F I=1:1 Q:'$D(^SHP(SHP,I))  D:'+$G(^SHP(SHP,I,"%TOP"))  S ^S000($P,I)=^SHP(SHP,I),^S000($P,I,"%TOP")=$G(^SHP(SHP,I,"%TOP"))
 .S SS=^SHP(SHP,I) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 .S ^SHP(SHP,I,"%TOP")=II-($E(SS,II)'=" ")
 Q
SCREEN ;
KOD ;(lbp`)cew;72;8;E;#@S %MBG("NEW",%MBG("F","KOD"))=1## <ESC> - d`ivi
SHEM ;(zixar) my;62;16;H;#@S %MBG("NEW",%MBG("F","SHEM"))=1##
DL ;jxe`;44;4;E;#@S %MBG("NEW",%MBG("F","DL"))=1##
TYP ;beq;38;1;E;#@S %MBG("NEW",%MBG("F","TYP"))=1## D - jix`z , H - ixar , E - ixnep
FILE ;uaew;33;18;E;### oezp xe`z `vnp dti` ,zilbp`a uaew my
BEN ; dpyin ;13;8;E;#@S %MBG("NEW",J)=1##(zilbp`) oezp xe`zl dpzyn my
SUG ; `zli`y zwical e` dpyn zxcbdl MUMPS zcewt ;+75;60;E;###
SH ;`zli`y;+14;1;E;### 0 - `l , 1 - `zli`y
SET ;hq;+6;1;E### 0 - zxg` ,1 - mipezp hq cilwdl ixyt` m`d
 Q
SCREEN1 ;
SHEM1 ;(zixar) my;72;20;H;#@S %MBG("NEW",%MBG("F","SHEM1"))=1##
DL1 ;jxe`;50;4;E;#@S %MBG("NEW",%MBG("F","DL1"))=1##
DL2 ;dcewp ixg`;40;4;E;###
SIK ;mekiq oniq;20;1;E;#@S %MBG("NEW",%MBG("F","SIK"))=1## 0 - zxg` , 1 - mekiq lawl zexyt`
 Q

%L1PNU
%L1PNU ; [ 11/18/92  7:50 AM ]
 I '$D(MAC) W *7,!,"*** HASN'T GLOBAL !" Q
 K STEC S FLAG="",%UR=1 S GLOB=MAC D FKOD S UROV=%I-1
 S %VETKA=$P(MAC,"""",2),RSTR=20 G PROV
PSTR ;
 I %SHS+2>RSTR S %PRFIN=1 Q
 I '($D(^(%NXN))#2) W !?3,%NXN,?5," ",?9,"<",%MAC11_$S(%PRS:",""",1:"""")_%NXN_""") >" S %SHS=%SHS+1 Q
 S %CHAST=^(%NXN)
 S %LASTP=60-$L(%MAC11)-$L(%NXN) W !?3,%NXN,?5," ",?9,%MAC11_$S(%PRS:",""",1:"""")_%NXN_""")  ",$E(%CHAST,1,%LASTP) S %SHS=%SHS+1
 S %CHAST=$E(%CHAST,%LASTP+1,255)
 F I=0:1 S %CH1=$E(%CHAST,I*60+1,(I+1)*60) Q:%CH1=""  W !?19,%CH1 S %SHS=%SHS+1
 K %CHAST,%CH1 Q
PROV ;
 I $D(@MAC)=0 W !,*7,"*** HASN'T DATA !" S FLAG="ND" H 2 Q
 S %MAC1=$S($F(MAC,"("):$E(MAC,1,$L(MAC)-1)_","""")",1:MAC_"("""")"),FLAG="",%PRS=$F(%MAC1,",")
BEGP ;
 S %K=0,TOP(%UR)=1,STEC(%UR,TOP(%UR))=%MAC1_"!"_"0"
CYC S %SHS=0 S %MAC11=$S(%PRS:$P(%MAC1,",",1,UROV),1:MAC_"(") W #
 S %PRFIN=0 S %NXN=$O(@%MAC1) F %I=1:1 S %K=%K+1 Q:%NXN=""  D PSTR Q:%PRFIN  S %IND(%I)=%NXN S %NXN=$O(^(%NXN))
 I %I=1&(%NXN="") W !," *** LAST LEVEL !" H 2 Q
ZN K %P G:'%PRFIN&(TOP(%UR)=1) END
 D
 .N (%UPRCOD,%XMSG,%XMSGV,%TO) S %GET="NEXT SCREEN- <PGDW>, PREVIOS SCREEN - <PGUP>, EXIT - <ESC>++23,3,EE,,,C#++1,E,I" D ^%L1GET
 I $G(%TO)="PGDW" G PRAVO
 I $G(%TO)="PGUP" G LEVO
 I $G(%TO)="END" G END
 W *7 G ZN
END ;
 I $D(%ECHO) U $P:(ECHO:WRAP)
 K %MAC1,%MACF,%K,%I,%J,%IND,%NXN,%SIMB,%YES,%NOM,%SIMB,%SUB Q
LEVO ;
 I TOP(%UR)=1 W *7 S %SAY="*** BEGIN OF LEVEL !" X %XMSGV H 1 G ZN
 K STEC(%UR,TOP(%UR)) S TOP(%UR)=TOP(%UR)-1,%MAC1=$P(STEC(%UR,TOP(%UR)),"!",1)
 S %K=$P(STEC(%UR,TOP(%UR)),"!",2) G CYC
PRAVO ;
 I %NXN="" W *7 S %SAY="*** END OF LEVEL !" X %XMSGV H 1 G ZN
 X %chiste S TOP(%UR)=TOP(%UR)+1
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_%IND(%I-1)_""")"
 S STEC(%UR,TOP(%UR))=%MAC1_"!"_(%K-1) S %K=%K-1 G CYC
FKOD ;
 F %I=2:1 Q:$P(GLOB,",",%I)=""
 Q

%L1PORT
%L1PORT(STAM) ; [ 05.02.06 10:15 ] [ 31.01.06 20:10 ] [
 N ADSL
 S ADSL=$$ADSL I ADSL Q ADSL
 Q $$MDPORT
MDPORT(STAM) ;
 Q $G(^[$$^%L1GLD]PL("MDPORT"),4)
XON(STAM) ;
 Q $G(^[$$^%L1GLD]PL("MDXON"),"&K4")
ADSL(STAM) Q $G(^[$$^%L1GLD]PL("ADSL"))

%L1PR
%L1PR ; PRINT PO KOMANDAM REDAKTIPOBANIA ; SHEER ; 17.02.94 [ 05/25/94  4:52 PM ]
  ; STR  ---  INPUT LINE
  S STR=$C(217)_"CEN"_$C(215)_"TR"_$C(215)_"OBKA "_$C(189)
  S STR=$C(217)_"CEN"_$C(215)_"TR"_$C(215)_"OBKA "
  S STR=$C(172)_"qkl`"
  S (CENT,SPACE,BRI,LINE,BOL)=0
  W !,STR,!
  Q
INP ; %GLO,%LL
  ; S IND="" F  S IND=$O(@%GLO@(IND)) Q:IND=""  S STR=^(IND) W $L(STR),! D 0
  O 3 U 3 S IND="" F   S IND=$O(@%GLO@(IND)) Q:IND=""  S STR=^(IND) D 0
  C 3 Q
  Q
0 S %LL=80,STR1="" S (CENT,SPACE,BRI,LINE,BOL,DBA,POD)=0
  I STR[$C(172)!(STR[$C(236)) G B
  I STR[$C(250)!(STR[$C(231)) G G
  I STR[$C(189)!(STR[$C(217)) G C
  I STR[$C(162)!(STR[$C(177)) G 2
  I STR[$C(196)!(STR[$C(239)) G POD
FOR ;
  F %EE=1:1:$L(STR) S %SYM=$E(STR,%EE) D
  .I $A(%SYM)=197!($A(%SYM)=215) S SPACE='SPACE Q  ; _" "_
  .I $A(%SYM)=172!($A(%SYM)=236) S BOL='BOL Q
  .I $A(%SYM)=241!($A(%SYM)=226) D Y Q
  .I $A(%SYM)=178!($A(%SYM)=163) W # Q
  .I $A(%SYM)=179!($A(%SYM)=161) S LINE='LINE Q  ; CHEREZ STROKU
  .I 'CENT W %SYM I SPACE W " "
  .I CENT S STR1=STR1_%SYM I SPACE S STR1=STR1_" "
  .Q
  I CENT W $J(STR1,$L(STR1)+(%LL-$L(STR1)\2)),!
  W ! I LINE W !
  Q
2 W $TR(STR,$C(162)_$C(177),"") W *13
  F I=1:1:$L(STR) D
  .I $A(STR,I)=162!($A(STR,I)=177) S DBA='DBA
  .E  W $S(DBA:$E(STR,I),1:" ")
  Q
POD W $TR(STR,$C(196)_$C(239),"") W *13
  F I=1:1:$L(STR) D
  .I $A(STR,I)=196!($A(STR,I)=239) S POD='POD
  .E  W $S(POD:"_",1:" ")
  Q
C ;
  S CENT=1
  S STR=$P(STR,$C(189),1)_$P(STR,$C(189),2)_$P(STR,$C(189),3)_$P(STR,$C(189),4)
  S STR=$P(STR,$C(217),1)_$P(STR,$C(217),2)_$P(STR,$C(217),3)_$P(STR,$C(217),4)
  D FOR S CENT=0
  Q
G ;
  S STR=$TR($$AA(STR),$C(250)_$C(231),"") W *27,"W1",$TR(STR,$C(231),""),*27,"W0",!
  Q
B ;
  S STR=$TR(STR,$C(172)_$C(236),"") S %L1BKV("MIL")=STR D 1^%L1BKV
  Q
Y ;
  ;
  ;
  ;
  ;
  Q
PERE ;
  K STR,XBOST,STR1,KOLPR,BSTAV,BST,DOP
  S %LL=79 ; %GLO - GLOBAL %NS - # STROKI, %NP - # POZICII, %LL - DLINA STROKI
  S STR=@%GLO@(%NS) S XBOST=" "_$$AA($E(STR,1,%NP)),STR=$E(STR,%NP+1,255)
  S @%GLO@(%NS)=$J(STR,%LL)
  F  S %NS=$O(@%GLO@(%NS)) Q:XBOST?." "  Q:%NS=""  S STR=^(%NS) Q:$E(STR,%LL-1,%LL)["  "  D
  .S STR=STR_XBOST S %NP=$L(STR)-%LL F %NP=%NP:1:79 Q:$E(STR,%NP)=" "
  .S XBOST=" "_$$AA($E(STR,1,%NP)),STR=$E(STR,%NP+1,255)
  .S @%GLO@(%NS)=$J(STR,%LL)
  I XBOST'?." " S POSL="" D  S ^(%NS)=$J(XBOST,%LL)
  .F  S POSL=$ZP(@%GLO@(POSL)) Q:POSL=%NS  S ^(POSL+1)=^(POSL)
  Q  ; ---- 25.05.94
  ; O 10 U 10 W !,%NP U 0
  S STR=@%GLO@(%NS) F %NP=%NP:1:79 Q:$E(STR,%NP)=" "
  ; U 10 W !,%NP R R C 10 ; STR,$J($L(STR),5)
  S XBOST=" "_$$AA($E(STR,1,%NP)),STR=$E(STR,%NP+1,255)
  ;W !,XBOST,$J($L(XBOST),5) W !,STR,$J($L(STR),5) R R C 17
LAB ;
  S STR1="",KOLPR=$L(STR," ")-1 G:'KOLPR LA
  S BSTAV=%LL-$L(STR),BST=BSTAV\KOLPR,DOP=BSTAV#KOLPR
  F I=1:1:KOLPR+1 S STR1=STR1_$P(STR," ",I)_$E($J("",30),1,BST)_$S(DOP>0:"  ",1:" ") S DOP=DOP-1
  S @%GLO@(%NS)=$E(STR1,1,%LL),@%GLO@(%NS,"%TOP")=0
  ;
LA S %NS=%NS+1,@%GLO@(%NS)=$J($$AA($G(@%GLO@(%NS)))_XBOST,79)
  S @%GLO@(%NS,"%TOP")=79-$L(@%GLO@(%NS))
  I $L(@%GLO@(%NS))>%LL S %NP=$L(@%GLO@(%NS))-%LL G PERE
  Q
  G:$O(@%GLO@(%NS))="" END
  S %NS=$O(@%GLO@(%NS)),STR=^(%NS) S STR=$$AA(STR)
  I $E(STR,$L(STR))=" " D  S @%GLO@(%NS)=$J(XBOST,%LL) G END
  .F IND=$ZP(@%GLO@("")):-1:%NS S @%GLO@(IND+1)=@%GLO@(IND) I $D(@%GLO@(IND,"%TOP")) S @%GLO@(IND+1,"%TOP")=@%GLO@(IND,"%TOP")
  S STR=STR_XBOST
  G:$L(STR)'>%LL END
  F I=2:1 Q:$L($P(STR," ",I,255))'>%LL
  S XBOST=" "_$P(STR," ",1,I-1),STR=$P(STR," ",I,255)
  G LAB
  Q
END ;
  ; S IND="" F  S IND=$O(@%GLO@(IND)) Q:IND=""  W !,^(IND)
  Q
PROBA ;
  S %LL=80
  N STR1,CENT,SPACE,BRI,LINE,BOL
  S %GLO="^SC(""SASA"")" W %HBR
  S IND="" F  S IND=$O(@%GLO@(IND)) Q:IND=""  S STR=$$AA(^(IND)) D 0
  Q
AA(INP) ;
1 I $E(INP)=" " S INP=$E(INP,2,$L(INP)) G 1
2 ; I $E(INP,$L(INP))=" " S INP=$E(INP,1,$L(INP)-1) G 2
  Q INP
AAA ;
  F I=1:1:$L(STR) W $A(STR,I)," "
  Q
SCEP ;  S %GLO="^SC(""SAS"")",%NS=7,%LL=80
  S %LL=79,Q=0
  S %NS=%NS-1 F  S %NS=$O(@%GLO@(%NS)) Q:'%NS  D  Q:Q="Q"
  .Q:'$O(@%GLO@(%NS))
  .I $O(@%GLO@(%NS+2)) S %SL=@%GLO@(%NS+2) I $E(%SL,$L(%SL)-1,$L(%SL))="  " S Q="Q"
  .S STR=$$AA(@%GLO@(%NS)) S STR=$$UDA(STR)
  .S %SLED=$$AA(^(%NS+1)) S %SLED=$$UDA(%SLED) D
  ..F II=$L(%SLED," "):-1 S PIC=$P(%SLED," ",II) Q:$L(PIC_" "_STR)>%LL  D
  ...S STR=PIC_" "_STR
  ..D RASH S STR=$P(%SLED," ",1,II)
  .S @%GLO@(%NS)=STR1,@%GLO@(%NS+1)=$J(STR,79)
  .S @%GLO@(%NS,"%TOP")=0,@%GLO@(%NS+1,"%TOP")=79-$L(STR)
  Q
  S STR=$$AA(@%GLO@(%NS)) S STR=$$UDA(STR) ; DELETE LISHNIX PROBELOV
  F I=%NS+1:1 Q:$G(@%GLO@(I))=""  S %SLED=$$AA(^(I)) S %SLED=$$UDA(%SLED) D
  .F II=$L(%SLED," "):-1 S PIC=$P(%SLED," ",II) Q:$L(PIC_" "_STR)>%LL  D
  ..S STR=PIC_" "_STR
  .D RASH S STR=$P(%SLED," ",1,II)
  .S @%GLO@(I-1)=STR1
  Q
UDA(ARG) ;
  N PIC S ARG1=""
  F PIC=1:1:$L(ARG," ") I $P(ARG," ",PIC)'="" S ARG1=ARG1_$P(ARG," ",PIC)_" "
  I $E(ARG,$L(ARG))'=" " S ARG1=$E(ARG1,1,$L(ARG1)-1)
  Q ARG1
RASH ;
  N I
  S STR1="",KOLPR=$L(STR," ")-1,BSTAV=%LL-$L(STR),BST=BSTAV\KOLPR,DOP=BSTAV#KOLPR
  F I=1:1:KOLPR+1 S STR1=STR1_$P(STR," ",I)_$E($J("",30),1,BST)_$S(DOP>0:"  ",1:" ") S DOP=DOP-1
  ; W !,STR1
  Q

%L1PRESS
%L1PRESS(TXT,Y0,X0,Y2,X2) ; [ 28.03.04 12:54 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,TXT,Y0,Y2,X0,X2) D ^%L1C
 Q:'$$HZGTOUCH^%L2MOUSE
 Q:'$L($G(TXT))
 S:'$D(Y0) Y0=23
 S:'$D(Y2) Y2=Y0+1
 S:'$D(X0) X0=(80-$L(TXT))\2
 S:'$D(X2) X2=X0+$L(TXT)
 S MTXT("B")=%CV("MB")
 S MTXT(1,1)=TXT
 S MTXT(1,1,"TO")="END"
 S COLX=$O(MTXT(1,20),-1),COLY=1,SH=1
 S STEPX=X2-X0+1,STEPY=Y2-Y0+1,%PREV=""
 D TV^P1RBUA S %S=""
 Q

%L1PROT
%L1PROT ; [ 03/15/92  4:34 PM ]
 N  D ^%L1C D ^%RSEL
 S N="",STOP=0 F  S N=$O(^UTILITY($J,N)) Q:N=""  Q:STOP  D
 .K %Q S %Q("B")="" S %Q("Z")="SOURCE TEXT OF ROUTINE "_N_"  ... DELETE" D ^%S1ASK S:YES="^"!(YES=".") STOP=1 Q:'(+YES)
 .X "ZL @N ZS @N:1"
M D ^%RSEL S N="",STOP=0 F  S N=$O(^UTILITY($J,N)) Q:N=""  X "ZL @N ZS @N:1"

%L1PRSC
%L1PRSC ; [ 10.12.06 17:02 ] [ 08.11.06 16:58 ] [ 24.10.06 17:25 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 D GET^%VIDEO("scr",0,0,80,25,0)
 S USTR=3 S %DEV="USTR"
 D ^%L1LPT Q:$G(%EROP)  Q:'$D(scr)
 U USTR
 S %END=0 S I=1 F  D  Q:%END
 .N A S A=$E(scr,I,I+79)
 .W A,!
 .I $L(scr)'>(I+79) S %END=1 Q
 .S I=I+80
 D CLOSE^%L1LPT
 Q

%L1PTW
%L1PTW(GLOB,FL) ; HAAVARAT KVAZIM DEREH POWERTERM     [ 23.11.05 13:15 ] [ 16.06.03  9:26 AM ] [ 15.06.03 12:38 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,GLOB,DIR,FL) D ^%L1C
 X %chista S %SAY=" "_FL_" uaewl mipezp zxard "
 S I=1,N="",J=0
C ;                                                                                       j
 S N=$O(@GLOB@(N)) Q:N=""
 S ST=$$PRST($G(^(N)))
 S TYP=$S('I:"w+",1:"a+")
 I '$$TV(FL,TYP,ST,I) Q
 S I=I+1,J=0 G C
 Q
TV(FL,TYP,ST,I) ;
 N J,OK S J=0
 N FLRCV S FLRCV="tranas.psl" G TV1
TV0(STAM) ;
TV1 S ST=$$PRST(ST)
 U 0 W $C(27)_"P$s"_FLRCV_" "_FL_" "_TYP_" """_ST_""""_$c(27)_"\"
 R OK:10
 I OK="NOKI=" U 0 W "--- DOUBLE I="_I,! Q 1
 I OK'="OK" U 0 W "--- ERROR ! ",! S J=J+1 G:J<8 TV1 Q 0
 Q 1
 ;
TVB(FL,ST,I) ;
 N J,OK,TYP S J=0
 I I=0 S TYP="w+"
 E  S TYP="a+"
 S FLRCV="tranb.psl"
TVB1 Q $$TV0
 ;
PRST(ST) ;
 S ST=$TR(ST,""";","',")
 Q ST
 S ST=$$RPL^%L1FRM(ST,"[","\[")
 S ST=$$RPL^%L1FRM(ST,"]","\]")
 S ST=$$RPL^%L1FRM(ST,"{","\{")
 S ST=$$RPL^%L1FRM(ST,"}","\}")
 S ST=$$RPL^%L1FRM(ST,"$","\$")
 S ST=$$RPL^%L1FRM(ST,"$","\$")
 Q

%L1PZ
%L1PCZ ; [ 08/03/93  1:31 PM ]
  I '$D(%POSIC) D ^%L1C
  X %chista N %ECHO S %HBRY=""
  S %SAY=" zegec llegn " X %XMSGV
ZD S %GET=" gec xtqn ++3,70,HH#++4,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
  S %REPN=%S S %RNAME=$G(^rep(%REPN))
ZN S %GET=" gec xe`z ++3,50,HH#"_%RNAME_"++30,H,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
  S %RNAME=%S
  S %GLOB1=$G(^rep(%REPN,"GLOB1"))
Z1 S %GET="GLOBAL START :++5,1,EE#"_%GLOB1_"++40,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") ZN
  S %GLOB1=%S I $E(%GLOB1)'="^" S %GLOB1="^"_%GLOB1
  S %GLOB2=$G(^rep(%REPN,"GLOB2"))
Z2 S %GET="GLOBAL FINISH :++6,1,EE#"_%GLOB2_"++64,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") Z1
  S %GLOB2=%S I $E(%GLOB2)'="^" S %GLOB2="^"_%GLOB2
  I %GLOB2'[$E(%GLOB1,$L(%GLOB1-1)) X %XMSG("ER") G Z2

%L1RB
%L1RB(X1,X2,Y1,Y2) ; [ 09.06.03 08:48 ] [ 10/23/99   6:40 AM ]
 I $G(%XMSG(0))>1 S X1=X1-1,X2=X2-1
RBUA1 N I,J W %ENG U $P:(NOECHO:NOWRAP)
 I $D(%L1RBCL) D
 .I %TYPCRT["VT5",'%CVET W $C(27,91),Y1,";",X1,";",Y2,";",X2,"$z" Q
 .I $G(%CVET),$L($G(%L1RBCL)) N %N S %N="" F  S %N=$O(%CV(%N)) Q:%N=""  I %L1RBCL=%CV(%N) W %L1RBCL Q
 .F I=Y1:1:Y2-1 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 ;I %TYPCRT["PC" W $C(27,91),Y1,";",X1,";",Y2,";",X2,"b" Q
 ;I %TYPCRT["VT5" W $C(27,91),Y1,";",X1,";",Y2,";",X2,"b" Q
 ;;W *27,"(0"
 ;;W *27,")0"
 I %TYPCRT="VT100" W *27,"["_Y1_";"_X1_"H",$C(104) F I=X1+1:1:X2-1 W $C(116)
 E  W *27,"["_Y1_";"_X1_"H",$C(108) F I=X1+1:1:X2-1 W $C(113)
 W *27,"["_Y1_";"_X2_"H" W $C(107)
 I %TYPCRT="VT100" F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H",$C(112)
 E  F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H",$C(120)
 I %TYPCRT="VT100" W *27,"["_Y2_";"_X1_"H",$C(105) F I=X1+1:1:X2-1 W $C(116)
 E  W *27,"["_Y2_";"_X1_"H",$C(109) F I=X1+1:1:X2-1 W $C(113)
 W *27,"["_Y2_";"_X2_"H" W $C(106)
 ;;W *27,"(B"
 ;;W *27,")B"
 W %HBR
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q

%L1RBUA
%L1RBUA ; INPUT X1,X2,Y1,Y2 [ 15.03.19 12:22 ] [ 26.04.07 21:42 ] [ 12.12.06 23:06 ] 
RBUA ; INPUT X1,X2,Y1,Y2
RBUA1 N I,J,%YY,%XX W %ENG U $P:(NOECHO:NOWRAP)
 ;
 I $D(%L1RBCL) D CLEAR(Y1,X1,Y2,X2)
 ;
 I %TYPCRT["PC",%XMSG(0)'<0 D  G END
 .W *27,"["_Y1_";"_X1_"H" W $S($G(%L1RBCL)=%CV("MB"):%CV("MB"),1:%CV("CB"))
 .F I=X1:1:X2 W " "
 .F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H"," "
 .W *27,"["_Y2_";"_X1_"H" F I=X1:1:X2 W " "
 .X %XCL
 ;
 I %TYPCRT["PC",%XMSG(0)<0 D  G END
 .W *27,"["_Y1_";"_X1_"H"
 .D LVUG F I=X1+1:1:X2-1 D GLIN
 .D PVUG
 .F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H" D VLIN
 .W *27,"["_Y2_";"_X1_"H" D LNUG F I=X1+1:1:X2-1 D GLIN
 .D PNUG
 .X %XCL
 ;
 I %TYPCRT["-" D TV1(Y1-1,X1-1,Y2-1,X2-1) G END
 I %TYPCRT["VT" W *27,"(0"
 I %TYPCRT="VT100" W *27,"["_Y1_";"_X1_"H",$C(104) F I=X1+1:1:X2-1 W $C(116)
 E  D
 .W *27,"["_Y1_";"_X1_"H",$C(108)
 .N I F I=X1+1:1:X2-1 W *27,"["_Y1_";"_I_"H",$C(113)
 ;
 W *27,"["_Y1_";"_X2_"H" W $C(107)
 I %TYPCRT="VT100" F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H",$C(112)
 E  F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H",$C(120)
 I %TYPCRT="VT100" W *27,"["_Y2_";"_X1_"H",$C(105) F I=X1+1:1:X2-1 W $C(116)
 E  W *27,"["_Y2_";"_X1_"H",$C(109) W $TR($J("",X2-X1-1)," ",$C(113)) ; F I=X1+1:1:X2-1 W $C(113)
 W *27,"["_Y2_";"_X2_"H" W $C(106)
 I %TYPCRT["?",'$D(%MENU) H 1
 I %TYPCRT["VT" W *27,"(B"
END ;;K %L1RBUA,%L1RBCL
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q
TV(Y1,X1,Y2,X2) ;
 N P F P="Y1","X1","Y2","X2" S @P=$J(@P,0,0)
 I Y1=Y2 D  Q ;-- LINE
 .N %XX,%YY
 .I $E(%TYPCRT,1,2)["PC" D  Q
 ..S %XX=X1,%YY=Y1 X %POSIC N %I F %I=X1:1:X2 W $C(196)
 .W $C(27),"(0" S %XX=X1,%YY=Y1 X %POSIC N %I F %I=X1:1:X2 W $C(113)
 .W $C(27),"(B"
 D BDK ;
 G RBUA
TV1(Y1,X1,Y2,X2) ;
 N %XX,%YY,%I
 S %XX=X1,%YY=Y1 X %POSIC
 F %I=X1:1:X2 W "-"
 F %I=Y1+1:1:Y2-1 S %XX=X1,%YY=%I X %POSIC W "|" S %XX=X2,%YY=%I X %POSIC W "|"
 S %XX=X1,%YY=Y2 X %POSIC
 F %I=X1:1:X2 W "-"
 Q
CLEAR(Y1,X1,Y2,X2) ;
 D BDK
 N %XX,%YY,I
 I %TYPCRT["VT5",%L1RBCL=%CV("BB")!'%CVET W $C(27,91),Y1+1,";",X1+1,";",Y2,";",X2-1,"$z" Q
 I $G(%CVET),$L($G(%L1RBCL)) N %N S %N="" F  S %N=$O(%CV(%N)) Q:%N=""  I %L1RBCL=%CV(%N) W %L1RBCL Q
 U $P:(NOECHO:NOWRAP) F I=Y1:1:Y2-1 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 Q
BDK ;
 I X1<0,X2>0 D
 .N R S R=X2-X1,X1=X2,X2=X2+R
 I X1>X2 D
 .N X0 S X0=X1,X1=X2,X2=X0
 Q
LVUG ;
 I $D(%L1RBUA("DOUBLE")),%TYPCRT="PC" W $C(201) Q
 W $C(218)
 Q
PVUG ;
 I $D(%L1RBUA("DOUBLE")),%TYPCRT="PC" W $C(187) Q
 W $C(191)
 Q
GLIN ;
 I $D(%L1RBUA("DOUBLE")),%TYPCRT="PC" W $C(205) Q
 W $C(196)
 Q
VLIN ;
 I $D(%L1RBUA("DOUBLE")),%TYPCRT="PC" W $C(186) Q
 W $C(179)
 Q
LNUG ;
 I $D(%L1RBUA("DOUBLE")),%TYPCRT="PC" W $C(200) Q
 W $C(192)
 Q
PNUG ;
 I $D(%L1RBUA("DOUBLE")),%TYPCRT="PC" W $C(188) Q
 W $C(217)
 Q
 
 
 
 
 
 
 
 

%L1RCDOS
%L1RCDOS ; [ 11/01/99  7:37 PM ] [
 L ^L1TRDOS
 K ^L1TRDOS
 D ^%L2GTR1
 I $G(^L1TRDOS)="" G END
 N FILE S FILE=^L1TRDOS
 O FILE:(WRITE:NEWVERSION):1
 S N="" F  S N=$O(^L1TRDOS(N)) Q:N=""  D
 .U FILE W ^(N)
 .I $D(^L1TRDOS(N,"BK")) W $C(13)
 K ^L1TRDOS
END C FILE L
 Q

%L1RCE
%L1RCE ;GT.M %RCE utility - change every occurrence of a string in one or more routines [ 29.12.16 18:40 ] [ 20.06.07 08:18 ] [ 19.11.05 18:47 ] 
 ;invoke ^%L1RCE to get interaction
 ;invoke CALL^%L1RCE with %ZF - string to find, %ZN - new string, %ZR - routine array or name,
 ;   %ZD an optional device to receive a trail
 ;
 n cnt1,cnt2,cnt3,fnd,h,i,o,out,outd,r,tf,x,xn,%ZC,%ZD,%ZF,%ZN,%ZR
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%L1RCE" u $p:(ctrap=$c(3):exc="zg "_$zl_":LOOP^%L1RCE")
 d init,MAIN
 u $p:(ctrap="":exc="")
 q
CALL i '$l($g(%ZF)) q
 n %ZC,cnt1,cnt2,cnt3,fnd,h,i,o,out,outd,r,tf,x,xn n:'$d(%ZD) %ZD
 s %ZC=1,%ZD=$g(%ZD),%ZN=$g(%ZN),(cnt1,cnt2,cnt3,out)=0,outd=$l(%ZD),tf=$j_"rce.tmp" s:'outd %ZD=$p
 i $d(%ZR)<10 D ^%L1RSEL ;; d CALL^%RSEL
 d work
 q
init s %ZC=1,(cnt1,cnt2,cnt3)=0,out=1,tf=$j_"rce.tmp"
 w !,"Routine Change Every occurrence",!
 q
MAIN s %ZR="" d ^%L1RSEL ;CALL^%RSEL
 i %ZR=0 w !,"No routines selected" q
 w !,$s(%ZC:"Old",1:"Find")," string: " S %S="" K %LS D ^%ZMSL S %ZF=%S ;r %ZF
 i '$l(%ZF) w !,"No search string to find - no search performed",! q
 i %ZF?.E1C.E w !,"The find string contains control characters"
 i %ZC w !,"New string: " S %S="" K %LS D ^%ZMSL S %ZN=%S ;r %ZF
 i %ZC,%ZN?.E1C.E w !,"The New string contains control characters"
 w !,$s(%ZC:"Replace",1:"Find")," all occurrences of:",!,">",%ZF,"<",! i %ZC w "With: ",!,">",%ZN,"<",!
 i %ZC f  r !,"Show changed lines <Yes>?: ",x,! q:$e(x)'="?"  d help
 i %ZC,$l(x) q:"\QUIT"[("\"_$tr(x,"quit","QUIT"))  s outd=$e("NO",1,$l(x))'=$e($tr(x,"no","NO"),1,2)
 e  s outd=1
 i outd f  d  q:$l(%ZD)
 . r !,"Output device: <terminal>: ",%ZD,!
 . i '$l(%ZD) s %ZD=$S(%ZC:$p,1:"aaaaa") q:%ZD=$p
 . i %ZD="^" q
 . i %ZD="?" d  q
  . . w !!,"Select the device you want for output"
  . . w !,"If you wish to exit enter a carat (^)",!
 . i $zparse(%ZD)="" w "  no such device" s %ZD="" q
 . c %ZD:DELETE
 . o %ZD:(newversion:block=2048:record=2044:exception="g noopen"):0
 . i '$t  w !,%ZD," is not available" s %ZD="" q
 . q
noopen . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
 q:%ZD="^"
 w !
 d work
 q
work s %ZR="",r=$zsearch("__")
 i outd,%ZD'=$p u %ZD w $zd($h,"DD-MON-YEAR 24:60:SS"),!
 i  w "Routine ",$s(%ZC:"Change",1:"Search for")," Every occurrence of:",!,">",%ZF,"<",! i %ZC w "To:",!,">",%ZN,"<",!
 i '%ZC d
 . s gtmvt=$$GTMVT^%GSE
 . i gtmvt s sx=$c(27)_"[7m"_%ZF_$c(27)_"[0m"
 . e  s sx=%ZF,flen=$l(%ZF),tics=$tr($j("",flen)," ","^")
 ;
 K ^RSEWORD
 f  s %ZR=$o(%ZR(%ZR)) q:'$l(%ZR)  d scan
 q:'out
 u %ZD w !!,"Total of ",cnt1," routine",$s(cnt1=1:"",1:"s")," parsed.",!
 w cnt2," occurrence",$s(cnt2=1:" ",1:"s "),$s(%ZC:"changed",1:"found")," in ",cnt3," routine",$s(cnt3=1:".",1:"s."),!
 c %ZD
 I %ZD="aaaaa" D
 .S %NMF=%ZD_">",%S2V("NOHB")="",%S2V("TXT")=" LOOKING FOR : "_%ZF_" "
 .I $D(%JSP) S %S2V("JSP")=%JSP
 .S %S2V("PROG")="viewpr^%L1RCE"
 .D ^%S2V O %ZD C %ZD:(DELETE)
 q
viewpr ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,U,%JSP) D ^%L1C
 s %st=$g(^TMPS111($J,U))
 I $E(%st,1,2)'="<<",$E(%st,$L(%st)-1,$L(%st))'=">>" q
 s %ind="+"_+$p(%st,"+",2)_"^"_$p($p(%st,"<<",2),"+")
 d POISK^%L1ER(%ind)
 q
scan s r=%ZR(%ZR)_$tr($e(%ZR),"%","_")_$e(%ZR,2,9999)_$S($D(%JSP):".jsp",1:".m"),o=$zsearch(r),fnd=0
 u $p i out,%ZD'=$p!'outd w:$x>70 ! w %ZR,?$x\10+1*10
 ;;i outd,%ZC u %ZD w !!,r
 o:%ZC tf:(newversion:exception="s fnd=0 g reof") o o:(readonly:record=2048:rewind:exception="g rnoopen")
 u o:(exception="g reof")
 s cnt1=cnt1+1 s cntr=0,yes=""
 f  u o:TERM=$C(13) r x s h=$l(x,%ZF) d
 .s cntr=cntr+1
 . i h=1 d:%ZC  q
 . . u tf w x,!
 . ;----------------- F O U N D
 . i outd,'fnd u %ZD w !!,r
 . s fnd=fnd+h-1
 . i %ZC d  q
 . . i outd u %ZD w !,$c(27),"[1m",%ZR,"+",cntr,">>",$c(27),"[0m"
 . . s xn=""
 . . f i=1:1:h-1 d
 . . .d:yes'="."&(yes'=2) ask(i) i 'yes s xn=xn_$p(x,%ZF,i)_%ZF q
 . . .s xn=xn_$p(x,%ZF,i)_%ZN
 . .s xn=xn_$p(x,%ZF,h)
 . . i outd w !,"Now: ",xn
 . . u tf w xn,! q
 . ; -------------------- S H O W  O N L Y
 . u %ZD w ! s rl=""
 . w "<<",%ZR,"+",cntr,">>" w !
 . N POS S POS=0
 . f i=1:1:h-1 D
 .. N WORD S POS=$F(x,%ZF,POS)-$L(%ZF)
 .. S WORD=$P($P($E(x,POS,1000)," "),",")
 .. ;
 .. S WORD=$P(WORD,"(")
 .. S WORD=$P(WORD,"]")
 .. I WORD'="" S ^RSEWORD(WORD)=%ZR
 .. s p=$tr($p(x,%ZF,i),$c(9)," ")
 .. w p,sx
 .. i 'gtmvt s rl=rl_$j(tics,$l(p)+flen)
 .
 . w $p(x,%ZF,h)
 . i 'gtmvt w !,rl
 q
reof i fnd s cnt2=cnt2+fnd,cnt3=cnt3+1 i %ZC c:$zver'["VMS" o:(DELETE) c tf:(RENAME=r)
 e  c o i %ZC c tf:(DELETE)
 ; warning - fall-through
rnoopen i $zs'["EOF" w !,$p($zs,",",2,999),!
 q
help i "Dd"[$e(x,2),$l(%x)=2 d cur q
 i %ZC w !,"Answer No to this prompt if you do not wish a trail of the changes"
 w !,"Enter Q to exit",!
 w !,"?D for the current routine selection"
 q
cur w ! s r=""
 f  s r=$o(%ZR(r)) q:'$l(r)  w:$x>70 ! w r,?$x\10+1*10
 q
ERR i $d(tf) c tf:(DELETE)
 i $d(o) c o
 i $d(%ZD),%ZD'=$p c %ZD
 u $p w !,$p($ZS,",",2,999),!
 u $p:(ctrap="":exception="")
 s $ec=""
 q
LOOP i $d(tf) c tf:delete
 i $d(o) c o
 i $d(%ZD),%ZD'=$p c %ZD
 d MAIN
 u $p:(ctrap="":exception="")
 q
ask(i) ;
 w !,xn_$p(x,%ZF,i)_$c(27)_"[7m"_%ZF_$c(27)_"[0m"_$p(x,%ZF,i+1,255)
 f  r !,"Change (y,yy,n,.) : ",yes i $l(yes),"YyNn."[$e(yes) q
 i yes'="." s yes=$s(yes="yy"!(yes="YY"):2,"Yy"[$E(yes):1,1:0)
 q
 
 
 
 
 
 
 
 

%L1RCMP
%RCMP ;JWC;COMPARE ROUNTINES {BETWEEN UCI'S} [ 09/16/93  3:16 PM ]
 ;Copyright Micronetics Design Corp. @1986
 U 0 N $ZT S $ZT="" ;;S $ZT="G ERR^%RCMP" U 0
 W !?10,$P($P($ZV,","),"-")," - ","Routine Compare Utility"
DOIT D SET,BG
 D COMP
 U 0 W !!,"**** DONE ****" G EXIT
SET S:'$D(%SP) %SP=.55
 S %SCR="Y",%SEL="Y"
 Q
ERR ;
 I $F($ZS,"CTRAP") U 0 W !!,"...Aborted." D EXIT
 Q
EXIT ;I $D(%HI) V 2:$J:%HI:2
 I $D(%DEV),%DEV'=$I C %DEV
 K %LCT,%LPP,%SCR,%WH,%DAT,%DAT1,%LY,%N,%TIM,%V,%ZA,%LD,%LF,%DN,%HI,%LD,%LF,%LM,%LX,%Q,%RUM,%SP,%UCI,%UI,%,%D,%S,%ED,%ES,%DD,%T,%X,%Y,%TTL,%TAD,%TMD,%TDL,%TSM,%I,%LL,%SEL,%TIM1,%DAY1,%YY,%TY,%DEV,%FN,%TP,%P,%CL,QUIT,VIEW
 K ^UTILITY($J,1),^(2)
 Q
BG S %SEL="Y"
GDEV2 R !!,"Line per page <16>: ",%LPP S:%LPP="" %LPP=16
 I %LPP="?" W !!,"Enter a positive integer for line per page",!,"Enter '^' for Scroll question" G GDEV2
 I %LPP'>0 W "Must be a positive interger" G GDEV2
 ;
GDEV3 W !!,"Line width <80> :" R %WH S:%WH="" %WH=80 I %WH="^" G GDEV2
 I %WH="?" W !!,"Enter number of characters per line" G GDEV3
 I %WH'>0 W "Must be a positive integer" G GDEV3
 S %WH=%WH-20\2
 ;
GLST R !!,"Listing level (S/D/B) <B>: ",%LL S:%LL="" %LL="B"
 S:$A(%LL)>96 %LL=$C($A(%LL)-32)
 S %Q=$S(%LL="^":-1,%LL="^Q":1,1:0) I %Q Q
 I %LL="?" D GLST1 G GLST
 G:%LL'="D"&(%LL'="S")&(%LL'="B") GLST QUIT
GLST1 W !!,"Enter 'B' for a brief listing (identical code is not listed).",!
 W "      'D' for a detailed listing (all source code is listed).",!,"      'S' for a statistics listing (counts only).",!,"Enter '^' return to previous question",!,"Enter '^Q' to exit the utility." QUIT
HIUI W !!,"     Enter the name of the routine to be compared, or"
 W !,"         <RETURN> to accept the default routine name"
 W !,"     '-' to skip the compare of this routine.",!,"     '^' or '^Q' to exit the utility." QUIT
 ;
COMP U 0
 W !!,"Compare : " R %N Q:%N=""
 D RED1^%L1ED(%N)
 I '$D(^S000($P)) W !,%N,"   ...  Routine not found",! G COMP
 S %ES=$O(^S000($P,99999),-1)
 M ^UTILITY($J,1,%N)=^S000($P)
 W " To : " R %DN Q:%DN=""
 S:%DN="" %DN=%N I %N=%DN W *7,"   ...  same routine" G COMP
 D RED1^%L1ED(%DN)
 I '$D(^S000($P)) W !,%N,"   ...  Routine not found",! G COMP
 S %ED=$O(^S000($P,99999),-1)
 M ^UTILITY($J,2,%DN)=^S000($P)
NOE ;
 S %DEV=$P
 U %DEV ;;W !!,"REPORT AT: ",%TIM1," ",%DAT1
 W !!,"= STATUS = === LINES FROM ",%N," ===",?%WH+14,"=== LINES FROM ",%DN," ===",!
 S (%Q,%LCT,%TTL,%TAD,%TSM,%TMD,%TDL)=0,%D=1
 F %S=1:1:%ES S %DD=%D D RATE,FRMT Q:%Q
 Q:%Q  G:%D>%ED STA
 S %DD=%D,%D=%ED+1 D DLT Q:%Q
STA U %DEV W !!,"STATISTICS: ",$S(%TSM:%TSM,1:"Zero"),?16," LINE",$S(%TSM'=1:"S ARE",1:" IS")," THE SAME"
 W !?12,$S(%TMD:%TMD,1:"Zero"),?16," LINE",$S(%TMD'=1:"S",1:"")," MODIFIED IN SOURCE ROUTINE"
 W !?12,$S(%TAD:%TAD,1:"Zero"),?16," LINE",$S(%TAD'=1:"S",1:"")," ADDED TO SOURCE ROUTINE"
 W !?12,$S(%TDL:%TDL,1:"Zero"),?16," LINE",$S(%TDL'=1:"S",1:"")," DELETED FROM SOURCE ROUTINE",!
 K ^UTILITY($J,1),^(2) Q
 ;
RATE S %X=^UTILITY($J,1,%N,%S)
 I %D>%ED S %P=0 Q
 D LRT Q:%P>%SP
 K %T S %TP=0
 F %=2:1:$L(%X," ") S %LX=$P(%X," ",%) D:(%LX'="") RAT1
RAT0 I %TP>2 X "F %=1:1:%TP S %P=%P+(%Y[%T(%))" S %P=%P/%TP
 Q:%P>%SP!(%D=%ED)!(%D=(%DD+7))
 S %D=%D+1 D LRT Q:%P>%SP
 G RAT0
RAT1 I %LX'="" S %TP=%TP+1,%T(%TP)=" "_%LX
 Q:%T(%TP)'[","
 S %T=%T(%TP),%TP=%TP-1
 F %I=1:1:$L(%T,",") S %TP=%TP+1,%T(%TP)=$P(%T,",",%I)
 Q
LRT S %Y=^UTILITY($J,2,%DN,%D)
 I %X=%Y S %P=2 QUIT
 S %LX=$P(%X," ",1),%LY=$P(%Y," ",1)
 S %P=(%LX'="")&(%LY'="")&(%LX=%LY)
 Q
FRMT G:%P>%SP FMT1 S %Y="" D DSP S %D=%DD Q
FMT1 G:%D=%DD FMT2
 S %T=%X,%TY=%Y D DLT S %X=%T,%Y=%TY
FMT2 D DSP S %D=%D+1 Q
DLT S %X="" F %DD=%DD:1:%D-1 S %Y=^UTILITY($J,2,%DN,%DD) D DSP Q:%Q
 Q
DSP S %V=$S(%X="":"%TDL",%Y="":"%TAD",%P=2:"%TSM",1:"%TMD")
 S @%V=@%V+1,%Q=0,%TTL=%TTL+1
 Q:(%LL="B"&(%P=2))!(%LL="S")
 U %DEV W !,"[",$S(%X="":"DELETED ",%Y="":"  ADDED ",%P=2:"  SAME  ",1:"MODIFIED"),"]",$E(%X,1,%WH+2),?%WH+12," <> ",$E(%Y,1,%WH+2) D PSS Q:%Q
 S %LX=$L(%X),%LY=$L(%Y),%LM=$S(%LX>%LY:%LX,1:%LY)
 F %=%WH+3:%WH:%LM D
 .W !,?12,$E(%X,%,%+%WH-1),?%WH+12," <>   ",$E(%Y,%,%+%WH-1) D PSS Q:%Q
 Q
PSS Q:%SCR="N"!(%SCR="n")  S %LCT=%LCT+1 Q:%LCT<%LPP
PSS1 U 0 R !,"<>",%Q#1
 I %Q="?" W !,"Enter <RETURN> to display next page",!,"      ^ to quit the process" G PSS1
 I %Q="^"!(%Q="")  S %LCT=1,%Q=(%Q="^")
 Q

%L1RCNV
%L1RCNV ;GT.M %RCE utility - change every occurrence of a string in one or more routines [ 07.02.06 09:07 ] [ 22.01.06 15:32 ] [ 18.01.06 18:24 ]
 ;invoke ^%RCE to get interaction
 ;invoke CALL^%RCE with %ZF - string to find, %ZN - new string, %ZR - routine array or name,
 ;   %ZD an optional device to receive a trail
 ;
 n cnt1,cnt2,cnt3,fnd,h,i,o,out,outd,r,tf,x,xn,%ZC,%ZD,%ZF,%ZN,%ZR
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%RCE" u $p:(ctrap=$c(3):exc="zg "_$zl_":LOOP^%RCE")
 d init,MAIN
 u $p:(ctrap="":exc="")
 q
CALL i '$l($g(%ZF)) q
 n %ZC,cnt1,cnt2,cnt3,fnd,h,i,o,out,outd,r,tf,x,xn n:'$d(%ZD) %ZD
 s %ZC=1,%ZD=$g(%ZD),%ZN=$g(%ZN),(cnt1,cnt2,cnt3,out)=0,outd=$l(%ZD),tf=$j_"rce.tmp" s:'outd %ZD=$p
 i $d(%ZR)<10 d CALL^%RSEL
 d work
 q
init s %ZC=1,(cnt1,cnt2,cnt3)=0,out=1,tf=$j_"rce.tmp"
 w !,"Routine Change Every occurrence",!
 q
MAIN s %ZR="" d CALL^%RSEL S %NR=0
 i %ZR=0 w !,"No routines selected" q
 S %ZF(1)="O 0:(0::::%OPT)",%ZN(1)="U $P:(NOECHO:NOWRAP)"
 S %ZF(2)="O 0:(::::%OPT)",%ZN(2)="U $P:(NOECHO:NOWRAP)"
 S %ZF(3)="U 0:(0::::%OPT)",%ZN(3)="U $P:(NOECHO:NOWRAP)"
 S %ZF(4)="U 0:(::::%OPT)",%ZN(4)="U $P:(NOECHO:NOWRAP)"
 S %ZF(5)="O 0:(::::1)",%ZN(5)="U $P:(NOECHO:NOWRAP)"
 S %ZF(6)="U 0:(::::1)",%ZN(6)="U $P:(NOECHO:NOWRAP)"
 S %ZF(7)="O 0:(0::::1)",%ZN(7)="U $P:(NOECHO:NOWRAP)"
 S %ZF(8)="U 0:(0::::1)",%ZN(8)="U $P:(NOECHO:NOWRAP)"
 ;
 S %ZF(9)="O 0:(:::::%OPT)",%ZN(9)="U $P:(ECHO:WRAP)"
 S %ZF(10)="O 0:(0:::::%OPT)",%ZN(10)="U $P:(ECHO:WRAP)"
 S %ZF(11)="O 0:(80:::::%OPT)",%ZN(11)="U $P:(ECHO:WRAP)"
 S %ZF(12)="U 0:(:::::%OPT)",%ZN(12)="U $P:(ECHO:WRAP)"
 S %ZF(13)="U 0:(0:::::%OPT)",%ZN(13)="U $P:(ECHO:WRAP)"
 S %ZF(14)="U 0:(80:::::%OPT)",%ZN(14)="U $P:(ECHO:WRAP)"
 S %ZF(15)="O 0:(:::::1)",%ZN(15)="U $P:(ECHO:WRAP)"
 S %ZF(16)="O 0:(0:::::1)",%ZN(16)="U $P:(ECHO:WRAP)"
 S %ZF(17)="O 0:(80:::::1)",%ZN(17)="U $P:(ECHO:WRAP)"
 S %ZF(18)="U 0:(:::::1)",%ZN(18)="U $P:(ECHO:WRAP)"
 S %ZF(19)="U 0:(0:::::1)",%ZN(19)="U $P:(ECHO:WRAP)"
 S %ZF(20)="U 0:(80:::::1)",%ZN(20)="U $P:(ECHO:WRAP)"
 ;
 ;;S %ZF(21)="$ZT=""",%ZN(21)="$ZT=""ZG ""_$ZL_"":"
 S %ZF(21)="$ZT=""",%ZN(21)="$ZT="""
 S %ZF(22)=" B 0",%ZN(22)=" U $P:(NOCENABLE)"
 S %ZF(23)=" B 1",%ZN(23)=" U $P:(CENABLE:CTRAP=$C(3))"
 S %ZF(24)=" ZQ",%ZN(24)=" Q"
 S %ZF(25)="$P(ZU(0),"","")",%ZN(25)="$$^%L1UCI"
 S %ZF(26)="$P(ZU(0),"","",1)",%ZN(26)="$$^%L1UCI"
 S %ZF(27)="$ZU(0)",%ZN(27)="$$^%L1UCI"
 S %ZF(28)="$ZR",%ZN(28)="$R"
 S %ZF(29)="$ZD($H,3)",%ZN(29)="$$^%L1DC($H,1)"
 S %ZF(30)="$ZD(P1DZ,3)",%ZN(30)="$$^%L1DC(P1DZ,1)"
 S %ZF(31)="$ZD(DT,3)",%ZN(31)="$$^%L1DC(DT,1)"
 S %ZF(32)="ZU 0",%ZN(32)="U $P"
 S %ZF(33)="[""MER""]",%ZN(33)="[^UCI(""MGG"")]"
 S %ZF(34)=" B  ",%ZN(34)=" "
 S %ZF(35)=".B  ",%ZN(35)="."
 S %ZF(36)="$ZO(",%ZN(36)="$Q("
 S %ZF(37)="$ZE",%ZN(37)="$P($ZS,"","",3)"
 S %ZF(38)="^[UCI]LKH",%ZN(38)="^LKH"
 S %ZF(39)="'USTR",%ZN(39)="USTR=0!(USTR=$P)"
 S %ZF(40)="$ZOS(",%ZN(40)="$$^%L1ZOS("
 S %ZF(41)="$ZU(0)",%ZN(41)="$$^%L1UCI"
 S %ZF(42)="$ZCRC",%ZN(42)="$$^%L1ZCRC"
 S %ZF(43)="%OPT=65",%ZN(43)="%TYPCRT[""VT"""
 S %ZF(44)="$ZU(""MLY"")",%ZN(44)="$$^%L1ZU(""MLY"")"
 S %ZF(45)=".B 0",%ZN(45)=".U $P:(NOCENABLE)"
 S %ZF(46)=".B 1",%ZN(46)=".U $P:(CENABLE:CTRAP=$C(3))"
 S %ZF(47)="<INRPT>",%ZN(47)="<CTRLC>"
 S %ZF(48)="""INRPT""",%ZN(48)="""CTRAP"""
 S %ZF(49)="^THZ1($P",%ZN(49)="^THZ1(%L3MYDVN"
 S %ZF(50)="^THZ($P",%ZN(50)="^THZ(%L3MYDVN"
 S %ZF(51)="^DEV($P",%ZN(51)="^DEV(%L3MYDVN"
 S %ZF(52)=" I USTR ",%ZN(52)=" I '$$^%L1DISP(USTR) "
 S %ZF(53)=" I 'USTR ",%ZN(53)=" I $$^%L1DISP(USTR) "
 S %ZF(54)="[""MLY""]",%ZN(54)="^[^UCI(""MLG"")]"
 S %ZF(55)="$ZCR",%ZN(55)="$$^%L1ZCRC"
 S %ZF(56)="$ZH",%ZN(56)="$$^%L1ZH"
 ;
CYC ;w !,$s(%ZC:"Old",1:"Find")," string: " r %ZF
 ;i '$l(%ZF) w !,"No search string to find - no search performed",! q
 ;i %ZF?.E1C.E w !,"The find string contains control characters"
 ;i %ZC r !,"New string: ",%ZN
 S %NR=%NR+1 I '$D(%ZF(%NR)) G END
 S %ZF=%ZF(%NR),%ZN=%ZN(%NR)
 i %ZC,%ZN?.E1C.E w !,"The New string contains control characters"
 w !,$s(%ZC:"Replace",1:"Find")," all occurrences of:",!,">",%ZF,"<",! i %ZC w "With: ",!,">",%ZN,"<",!
 S x="Y" ;i %ZC f  r !,"Show changed lines <Yes>?: ",x,! q:$e(x)'="?"  d help
 i %ZC,$l(x) q:"\QUIT"[("\"_$tr(x,"quit","QUIT"))  s outd=$e("NO",1,$l(x))'=$e($tr(x,"no","NO"),1,2)
 e  s outd=1
 i outd f  d  q:$l(%ZD)
 . S %ZD="" ;r !,"Output device: <terminal>: ",%ZD,!
 . i '$l(%ZD) s %ZD=$p q
 . i %ZD="^" q
 . i %ZD="?" d  q
  . . w !!,"Select the device you want for output"
  . . w !,"If you wish to exit enter a carat (^)",!
 . i $zparse(%ZD)="" w "  no such device" s %ZD="" q
 . o %ZD:(newversion:block=2048:record=2044:exception="g noopen"):0
 . i '$t  w !,%ZD," is not available" s %ZD="" q
 . q
noopen . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
 q:%ZD="^"
 w !
 d work G CYC
END q
work s %ZR="",r=$zsearch("__")
 i outd,%ZD'=$p u %ZD w $zd($h,"DD-MON-YEAR 24:60:SS"),!
 i  w "Routine ",$s(%ZC:"Change",1:"Search for")," Every occurrence of:",!,">",%ZF,"<",! i %ZC w "To:",!,">",%ZN,"<",!
 i '%ZC d
 . s gtmvt=$$GTMVT^%GSE
 . i gtmvt s sx=$c(27)_"[7m"_%ZF_$c(27)_"[0m"
 . e  s sx=%ZF,flen=$l(%ZF),tics=$tr($j("",flen)," ","^")
 f  s %ZR=$o(%ZR(%ZR)) q:'$l(%ZR)  d scan
 q:'out
 u %ZD w !!,"Total of ",cnt1," routine",$s(cnt1=1:"",1:"s")," parsed.",!
 w cnt2," occurrence",$s(cnt2=1:" ",1:"s "),$s(%ZC:"changed",1:"found")," in ",cnt3," routine",$s(cnt3=1:".",1:"s."),!
 c %ZD
 q
scan s r=%ZR(%ZR)_$tr($e(%ZR),"%","_")_$e(%ZR,2,9999)_".m",o=$zsearch(r),fnd=0
 u $p i out,%ZD'=$p!'outd w:$x>70 ! w %ZR,?$x\10+1*10
 i outd u %ZD w !!,r
 o:%ZC tf:(newversion:exception="s fnd=0 g reof") o o:(readonly:record=2048:rewind:exception="g rnoopen")
 u o:exception="g reof"
 s cnt1=cnt1+1 s cntr=0,yes=""
 f  u o r x s h=$l(x,%ZF) d
 .s cntr=cntr+1
 . i h=1 d:%ZC  q
 . . u tf w x,!
 . s fnd=fnd+h-1
 . i %ZC d  q
 . . i outd u %ZD w !,$c(27),"[1m",%ZR,"+",cntr,">>",$c(27),"[0m"
 . . s xn=""
 . . f i=1:1:h-1 d
 . . .d:yes'="." ask(i)
 . . .i 'yes s xn=xn_$p(x,%ZF,i)_%ZF q
 . . .s xn=xn_$p(x,%ZF,i)_%ZN
 . .s xn=xn_$p(x,%ZF,h)
 . . i outd w !,"Now: ",xn
 . . u tf w xn,! q
 . u %ZD w ! s rl=""
 . f i=1:1:h-1 s p=$tr($p(x,%ZF,i),$c(9)," ") w p,sx i 'gtmvt s rl=rl_$j(tics,$l(p)+flen)
 . w $p(x,%ZF,h)
 . i 'gtmvt w !,rl
 q
reof i fnd s cnt2=cnt2+fnd,cnt3=cnt3+1 i %ZC c:$zver'["VMS" o:(DELETE) c tf:(RENAME=r)
 e  c o i %ZC c tf:(DELETE)
 ; warning - fall-through
rnoopen i $zs'["EOF" w !,$p($zs,",",2,999),!
 q
help i "Dd"[$e(x,2),$l(%x)=2 d cur q
 i %ZC w !,"Answer No to this prompt if you do not wish a trail of the changes"
 w !,"Enter Q to exit",!
 w !,"?D for the current routine selection"
 q
cur w ! s r=""
 f  s r=$o(%ZR(r)) q:'$l(r)  w:$x>70 ! w r,?$x\10+1*10
 q
ERR i $d(tf) c tf:(DELETE)
 i $d(o) c o
 i $d(%ZD),%ZD'=$p c %ZD
 u $p w !,$p($ZS,",",2,999),!
 u $p:(ctrap="":exception="")
 s $ec=""
 q
LOOP i $d(tf) c tf:delete
 i $d(o) c o
 i $d(%ZD),%ZD'=$p c %ZD
 d MAIN
 u $p:(ctrap="":exception="")
 q
ask(i) ;
 w !,xn_$p(x,%ZF,i)_$c(27)_"[7m"_%ZF_$c(27)_"[0m"_$p(x,%ZF,i+1,255)
 s yes=1 q
 f  r !,"Change (y,n,.) : ",yes i $l(yes),"YyNn."[$e(yes) q
 i yes'="." s yes="Yy"[$E(yes)
 q

%L1RCPRG
%L1RCPRG ; [ 01/04/2000  3:33 PM ] [
 K ^L1TRPRG
 D ^%L2GTR1
 S N="" F  S N=$O(^L1TRPRG(N)) Q:N=""  D
 .X "X ""ZR  F I=1:1 Q:'$D(^L1TRPRG(N,I))  ZI ^(I)"" ZS @N"
 Q

%L1RCV
%L1RCV(USERPHON,USERPORT,MDXON,UCI,PROG,MDLKH,GLOB,FL,PROGRCV) ;       [ 14.05.07 21:39 ] [ 13.05.07 11:59 ] [ 02.01.07 03:52 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,USERPHONE,USERPORT,MDXON,UCI,PROG,MDLKH,GLOB,PROGRCV,%L1MDOK,%L1RCV,FL) D ^%L1C
 S ZT=$ZT,$ZT="S zr=$R X ^ZT ZG "_$ZL_":ER^%L1RCV"
 ;
 K %L1MDOK
 I $$FTP D
 .S ^L1RCV("FTP")=1,%L2MODEM("FTP")=""
 ;
 K %L2MODEM("OK")
 I $D(%L1RCV) S %L2MODEM("NODISP")=""
 S %L2MODEM("ADDR")=USERPHON
 S %L2MODEM("MDPORT")=USERPORT
 S %L2MODEM("NAMETO")=MDLKH
 S %L2MODEM("GLOB")=$S($G(GLOB)="":"^L1RCV",1:GLOB)
 S %L2MODEM("FL")=$S($G(FL)="":$P($E(%L2MODEM("GLOB"),2,9),"("),1:FL)
 S %L2MODEM("PROG")=$S($G(PROG)="":"%L2GTR1",1:PROG)
 S %L2MODEM("PROGRCV")=$S($G(PROGRCV)="":"%L2GTR1",$G(PROGRCV)="-":"",1:PROGRCV)
 S %L2MODEM("XON")=MDXON
 S %L2MODEM("UCI")=$S($G(UCI)="":"MGR",1:UCI)
 S %L2MODEM("NOCLOSE")=""
 ;
 D ^%L2MODEM
 ;
 S %L1MDOK=$G(%L2MODEM("OK"))
 I '$G(%L1MDOK) G END
 ;
 I $$DISPMSG D
 .S %L2G1("DISP")=""
 .S %L2G1("DISP","Y")=20
 .S %L2G1("DISP","X")=6
 .S %L2G1("DISP","L")=60
 ;
 I USERPHON[".",'$$FTP S USERPORT="SCK$"_$J
 ;
 I '$$FTP,$L($G(%L2MODEM("PROGRCV"))) D @("^"_%L2MODEM("PROGRCV")) I $G(^L2G1($J,"OK")) S %L1MDOK=1
 ;
 C USERPORT
 ;
END K ^L1RCV L  U $P:(CENABLE) Q
 ;
ER D SVER^%L1X
 G END
 ;
DISPMSG(STAM) ;
 I '$D(%L1RCV) Q 1
 Q 0
 ;
FTP(STAM) ;
 I USERPHON[".",$$^%L1ISFTP("L1RCV") Q 1
 Q 0

%L1RCV1
%L1RCV1(GLOB) ; [ 04.08.00  7:08 PM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,GLOB) D ^%L1C,^%L1TS
 K ^UTILITY($J)
 S ^UTILITY($J,GLOB)=""
 S USERPORT=0,USERGLOB="" K ^GTR000($P)
 S $ZS="",%L1RCV="" D ^%L2GTR
 Q

%L1RD
%RD ;DJM;DISPLAY ROUTINE DIRECTORY; [ 12/31/87  10:36 AM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 W #,?20,"ROUTINE DIRECTORY  " D ^%D
 W !,?25,"OF ",$$^%L1ZU(0),?38 D ^%T
INT D ZE K %REF
INT1 ;
 S (%RNUM,%PCT)=0,%NAM=""
 I $D(%REF) K ^UTILITY("%RD") S ^UTILITY("%RD")=$H
%GO S %NAM=$O(^ (%NAM)) G:%NAM="" TOTAL
 S %PCT=%PCT+1
 I '$D(%REF) W:'(%PCT-1#8) ! R:($Y#24)=21 !,"PRESS <ENTER>",YES,! W ?(%PCT-1)#8*10,%NAM
 I $D(%REF) S ^UTILITY("%RD",%NAM)="" W:'$D(%ROU)&(%PCT#5=0) "." S %RNUM=%RNUM+1
 G %GO
TOTAL G:$D(%ROU) EXIT W:'$D(%REF) !,?5,%PCT," Routine",$S(%PCT=1:".",1:"s.")
 W:$D(%REF) "   ",%PCT," Routine",$S(%PCT=1:".",1:"s.")
EXIT ;
 K %I,%REF,%NAM,%PT,%BLK,%PCT,%ST,%,%A
 S $ZT=%ZE("%RD") K %ZE("%RD") Q
ERROR U 0 I $P($ZS,">")="<INRPT" W:%ZE("%RD")=""!($E(%ZE("%RD"),1)="<") !!,"...Aborted." K %ROU G EXIT
 I %ZE("%RD")'="" G @%ZE("%RD")
 W !!,$ZS Q
REFRESH ;
 D ZE S %REF="" G INT1
ZE S %ZE("%RD")=$ZT,$ZT="S zr=$R "_^ZT_"ZG "_$ZL_":ERROR^%RD" Q

%L1RDEL
%L1RDEL ; [ 31.12.16 19:49 ] [ 
 N
 D ^%RSEL Q:'$D(%ZR)
 R !!,"Are You sure to delete ( Y/N ) ?",YES
 I YES'="Y",YES'="y" W " -- Deleting cancelled" Q
 W !
 S N="" F  S N=$O(%ZR(N)) Q:N=""  D
 .S N1=N I $E(N)="%" S N1="_"_$E(N,2,10)
 .S DIR=%ZR(N)
 .I $E(DIR,$L(DIR)-1,$L(DIR))="//" S DIR=$E(DIR,1,$L(DIR)-1)
 .I $E(DIR,$L(DIR))'="/" S DIR=DIR_"/"
 .ZSY "rm "_DIR_N1_".m"
 .ZSY "rm "_DIR_N1_".o"
 Q
 
 
 
 
 

%L1RDF
%L1RDF ;READS FIELD [ 05/08/91  3:27 PM ]
 ; INPUT: %FLD=DESC, OF FIELD (%FLD=1 - HEBREW)
 ;        %DIN - INP. STRING
 ;        %FL  - MAX.LENGTH
 ;        %X,%Y - COORD
 ;N (%DIN,%FLD,%FL,%X,%Y,%TO,%C)
 S %AXY="$C(27,91),%Y,"";"",%XX,""H"""
 S %AXY1="$C(27,91),%Y,"";"",%X,""H"""
 S %PF=""
 S %HLP="" ; I $D(^SCRX(%SCRN,1,$P(%FNAME,"(",1),1)) S %HLP=$P(^(1),"^",1)
OUT S SRL=$E(%FLD,1),FRST=1
OUT1 S LX=%X+%FL-1,%XX=$S(SRL:LX,1:%X)
 ;I %MSG="",%HLP'="",$D(^MSG(+%HLP)) S %MSG=^MSG(+%HLP) D MSG^SD S %MSG=""
 U $P:(0::::1)
 ;W @%AXY1,$J(%DIN,%FL),@%AXY
WALK W @%AXY R:'FRST *%C S FRST=0
 G PRINT:%C=1,JUMP:%C=2,VT105:%C=4,VT106:%C=5,PRINT1:%C=6,VT107:%C=21,VT108:%C=16,BACK:%C=127!(%C=8),SETCHAR:%C>31,FUNCT
SETCHAR ;I $F(%TY,"MENU") G WALK
 S %=$C(%C),$E(%DIN,(%XX-%X+1))=% W % G:SRL 8
21 S %XX=%XX+1 S:%XX>LX %XX=LX G WALK
8 S %XX=%XX-1 S:%XX<%X %XX=%X G WALK
VTF D TM R *B:0 D TM R *E:0 G:B=54 DOWN G:B=53 UP S %TO="PF"_$S(B=55:6,B=56:5,B=57:8,B=48:9,B=49:10,1:"ERROR") G @%TO;
VTF1 D TM R *B:0 D TM R *E:0  S %TO="PF"_$S(B=51:3,B=55:6,B=56:5,B=57:8,B=48:9,B=49:10,1:"ERROR") G @%TO;
 ; B=51 IS F3 BUT FOR VT100 IS NOW F10 . GIORA 31/10/90
FUNCT G BACK:%C=8,ENT:%C=13,TAB:%C=9,PF
PF R *A:0 E  S %TO="PF3" G PF3
 I %C=0 G PGUP:A=73,PGDOWN:A=81,SELECT:A=82,PFERROR
 R *B:0 E  G PF3
 I B=68 G 8
 I B=67 G 21
 I B=65 G ARRUP
 I B=66 G ARRDOWN
 I B=50,CRT="VT" G VTF1
 I B=49,CRT="VT" G VTF
 I B=54,CRT="VT" R *E:0 G PGDOWN
 I B=52,CRT="VT" R *E:0 G SELECT
 I B=53,CRT="VT" R *E:0 G PGUP
 I B<80!(B>89) G PFERROR
 S %TO="PF"_(B-79) S:%TO="PF3" %TO="PF10" G @%TO
UP S %PGUP=1 G ENT
DOWN S %PGDN=1 G ENT
TAB S %TO="PF2" G PF2
ENT S %TO="ENT" Q
BACK F %JJ=1:1:%FL Q:$E(%DIN,%JJ)'=" "
 I %XX-%X+1<%JJ G 21
 I %XX-%X+1=%JJ W " " S %DIN=$J($E(%DIN,%XX-%X+2,$L(%DIN)),%FL),%XX=%XX+1 G WALK
BACK1 S %DIN=$J("",%JJ)_$E(%DIN,%JJ+1,%XX-%X)_$E(%DIN,(%XX-%X+2),$L(%DIN)) W @%AXY1,%DIN G WALK
PF1 W *27,"[24;1H",$J(^MSG(+$P(%HLP,"^",1)),30) G WALK
PF4 S %PF="PF4",%TO="PF4" Q
PF2
PF3 Q
PF8 S %PF="PF8" G PASS Q
PF9 S %PF="PF9" G PASS Q
PF10 S %PF="PF10" G PASS Q
PF7 S %TO="PF5"
PF5
PF6 G:NOPF PFERROR D ^RDF1 S NOPF=0 Q
PFRT G 21
PFLF G 8
PGUP S %PGUP=1 G ENT
SELECT S %PF="SELECT" G ENT
PGDOWN S %PGDN=1 G ENT
PFERROR W *7 G WALK
ARRUP S %TO="ARRUP" Q
ARRDOWN S %TO="ARRDOWN" Q
PASS I $TR(%DIN," ","")="" S %DIN=%DOUT
 I %DIN="" S %DIN=0
 G ENT
JUMP F %JJ=1:1:$L(%DIN) I $E(%DIN,%JJ)'=" " Q
 S %XX=%X+%JJ-2
 G WALK
PRINT D ^PRTSC G WALK
PRINT1 S %MSG="WAIT..." D MSG^SD D ^PRTSC1 S %MSG="FINISHED" D MSG^SD G WALK
VT105 S %TO="PF5" G PF5
VT106 S %TO="PF6" G PF6
VT107 G PGUP
VT108 G PGDOWN
TM F UU=1:1:1100
 Q

%L1READ
%L1READ(%PORT,%ESC) ; [ 18.05.04 09:38 ] [ 19.09.00  3:31 PM ] [ 07/21/97  8:54 AM ]
 D ^%L1C X %chista
 I '$D(%PORT) S %PORT=$P
 S %SAY=" TEST "_$$FUNC^%UCASE(%PORT)
 I $G(%ESC) S %SAY=%SAY_" ( ESCAPE MODE ) "
 X %XMSGV W !!
 N A,A1,ZB I '$D(%PORT) S %PORT=$P
RE O:%PORT'=$P %PORT I '$D(%ZB) U %PORT
 I $G(%ESC) U %PORT:(NOWRAP:NOECHO:ESC)
 I '$G(%ESC) U %PORT:(NOWRAP:NOECHO)
 F  R *A:0 Q:'$T  ;---CLEAR PORT
 S A1=""
L F I=1:1 R *A:1 Q:'$T  Q:A=13  S A1=A1_$C(A) I I=1 S ZB=$ZB
 G:A=13 EXIT
 I '$L(A1) G L
L1 U 0 W !,A1
 W !,"$ZB=" F I=1:1:$L(ZB) W $A(ZB,I)," "
 W !,"<16>:" F I=1:1:$L(A1) W $$^%L1ZH($A($E(A1,I)))," "
 W !,"<10>:" F I=1:1:$L(A1) W $A($E(A1,I))," "
 W !!
 G RE
EXIT ;
 I %PORT'=$P C %PORT
 Q

%L1READY
%L1READY(%PORT) ; [ 16.06.10 09:53 ] [
  I $G(%PORT)="" Q "?"
  Q 250
  Q $&libserial.getdsr(%PORT)

%L1REF
%L1REF(GLB) ;       [ 06.07.01  1:35 PM ] [
 K %L1REF
 N GLB1,N1,N2,N3
 S N1="" F  S N1=$O(@GLB@(N1)) Q:N1=""  D
 .I $O(@GLB@(N1,""))="" S %L1REF("^"_N1)=""
 .S N2="" F  S GLB1="^"_N1_"(""" S N2=$O(@GLB@(N1,N2)) Q:N2=""  D  S GLB1=$E(GLB1,1,$L(GLB1)-2)_")",%L1REF(GLB1)=""
 ..S N3="" F  S N3=$O(@GLB@(N1,N2,N3)) Q:N3=""  D
 ...I $D(^(N3,2)) S GLB1=GLB1_^(2)_""","""
 Q

%L1REN
%L1REN ;  RENAME ROUTINES [ 28.04.00  5:25 PM ] [ 11/12/91 11:49 AM ]
 K ^UTILITY($J)
 D ^%RSEL
Z W !!,"FROM:" K CIST,%S D ^%ZMSL Q:%S=""  S %FROM=%S
 W !,"TO:" K %S D ^%ZMSL G:%S="" Z S %TO=%S
 W !!
 S N="" F  S N=$O(^UTILITY($J,N)) Q:N=""  S N1=$P(N,%FROM,1)_%TO_$P(N,%FROM,2,10) X "ZL @N ZS @N1" U 0 W N," -RENAME TO: ",N1,!
 Q

%L1REP
%L1REP ;-- ARHEON DOHOT                 [ 22.05.03 16:21 ] [ 25.07.01  5:56 PM ] [ 30.04.01  6:58 AM ]
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
ZD  K  D ^%L1C X %chista
  S %SAY=" zeg""ec oeikx` " X %XMSGV
  S %YY=3 D ^%L1RNG Q:'$D(%L1D1)
  S MAC="^SPOOL"
  S %L1("BE",1)=6,%L1("BE",2)=8,%L1("EU")=2
  S %L1("US",1)=1
  S %L1("US",2)="$P(%NXS,""\"")'<%L1D1&($P(%NXS,""\"")'>%L1D2)"
  S %L1("T1",1)="                  fkxn my                  | fkxn 'qn "
  S %L1("T1",2)="             dxrd            |             g""ec xe`z          |  jix`z  "
  S %L1("TXT1",1)="$$NAME^%L1MRK(%NXN)<>\/%NXN"
  S %L1("TXT1",2)="$P(%NXS,""\"",5)<>,H\/$P(%NXS,""\"",3)<>,H\/$$^%L1DC($P(%NXS,""\""),1)"
  S %L1("T2")="D T2^%L1REP"
  D ^%L1NU G ZD
  Q
Z(GLB) ;
 S %GETIN=1
Z1 X %chista D ^%L1TS
  S MRK=$$^%L1IND(%L1("MAC"),1) Q:MRK=""  Q:$G(INDEX)=""
  I '$D(@GLB@(MRK,INDEX)) S %SAY=" ! lhea " X %XMSGV(1) Q
  S %SAY=" "_$P(@GLB@(MRK,INDEX),"\",3)_" " X %XMSGV
  W !! F I=1:1 Q:'$D(@GLB@(MRK,INDEX,"KOT",I))  D
  .I $G(%XMSG(0))<0 W $TR(^(I),TS0,TSS),! Q
  .W ^(I),!
  W $TR($J("",78)," ","."),!
  W $TR($J("",78)," ","."),!
  W $TR($J("",78)," ","."),!
Z11 ;;S %GETIN=1,%GET=" 0 - lhal , 4 - xeciyl oikdl, 3 - zqtcnl , 2- hwqicl , 1 - jqnl g""ec bivdl " D N^%L1GET Q:%S=""!(%TO="END")
 S %GET="0- lhal, 5 - xeciyl oikdl, 4 - uaew, 3 - zqtcn, 2 - hwqic, 1 - jqn " D N^%L1GET Q:%S=""!(%TO="END")
 S %GETIN=""
  ;
  I %S=0 D IS1^%L1GET G:'YES Z11 D  Q
  .K @GLB@(MRK,INDEX)
  I %S=1 D  G Z1
  .N MDPS,MXLEN,%L1OUT,A,%N,I,PRT
  .S MDPS=$P(@GLB@(MRK,INDEX),"\",4) I 'MDPS S MDPS=5
  .D DEFMDP^%L1OUT(MDPS)
  .K ^TMPS111($J) S MXLEN=0
  .S N="",I=0 F  S N=$O(@GLB@(MRK,INDEX,"PC",N)) Q:N=""  D
  ..S A=$G(^(N))
  ..S I=I+1
  ..S ^TMPS111($J,I)=$$CL^%L1LPT(A)
  ..I $L(^TMPS111($J,I))>MXLEN S MXLEN=$L(^(I))
  .X %chista
  .I MXLEN>80 D
  ..I %TYPCRT["VT5" S %S2V("SMALL")="" Q
  ..S %S2V("HBR")=""
  .D ^%S2VIEW K ^TMPS111($J)
  ;
Z23  I %S=3!(%S=2) D  G Z1
  .S OTB=%S
  .N MDPSO,%L1OUT,A,%N,I,PRT
  .S MDPSO=$P(@GLB@(MRK,INDEX),"\",4) I 'MDPSO S MDPSO=5
  .D DEFMDP^%L1OUT(MDPSO)
  .K MDPO S MAC1="%L1OUT(""MDP"")",MAC2="MDPO" D ^%S1GC1
  .K %L1OUT
  .I OTB=3 D ^%L1LPT Q:$G(%EROP)
  .I OTB=2 D KONAN Q:DEV=""&'$D(FILEDOS)  D  Q:FL=""
   ..S FL=""
ZK ..S %GET=": uaewd my++20,60,HH,,R#++30,E,I" D ^%L1GET S:%TO="END" %S="" S FL=%S Q:FL=""
  ..S FILE=$S('$D(FILEDOS):DEV_":\",1:"")_$TR(FL," ","")
  ..I $$^%L1ZOS(10,FILE)>0 S %GET="<F9> - xey`l . miiw xak dfd uaew" D N^%L1GET S:%TO="F9" %S=99 I %S'=99 S FL="" Q
  ..S %GET="2 - HP ,1 - OKI e` CITIZEN/90-240 ly hnxeta uaew xenyl "
  ..D N^%L1GET I %S=""!(%TO="END") G ZK
  ..S %MDPSUG=$S(%S=1:5,1:7) D DEFMDP^%L1OUT(%MDPSUG)
  ..C FILE:DELETE O FILE:(WRITE:NEWVERSION):2 E  S FL="",%SAY=" ! qetz 54 hxet " X %XMSGV(1) Q
  ..U FILE
  .K ^TMPS111($J)
  .S N="",I=0 F  S N=$O(@GLB@(MRK,INDEX,"PC",N)) Q:N=""  D
  ..S A=$G(^(N))
  ..I %MDPSUG'=MDPSO S %N="" F  S %N=$O(MDPO(%N)) Q:%N=""  I %N'="GWPC",A[MDPO(%N) D
  ...I $D(%L1OUT("MDP",%N)) S A=$$RPL^%L1FRM(A,MDPO(%N),%L1OUT("MDP",%N))
  ..W A,!
  .I OTB=3 D CLOSE^%L1LPT
  .I OTB=2 W # C FILE ZSY "unix2dos "_FILE
  .K ^TMPS111($J)
  ;
  I %S=4 D  G:$D(FILEDOS) Z23 G Z1
  .N M,MAC,%L2MN,%I K FILEDOS
  .S M(1)=" d ` i v i"
  .S M(2)="DOS uaew"
  .S M(3)="WINDOWS uaew"
  .S M(4)="POWER TERM"
  .S %L2MN("NOCLB")=""
  .S MAC="M" D ^%L2MENU Q:%I=1
  .I %I=2 S FILEDOS="",%S=2 Q
  .K ^TMPS111($J) S MXLEN=0
  .S N="",I=0 F  S N=$O(@GLB@(MRK,INDEX,"PC",N)) Q:N=""  D
  ..S A=$G(^(N))
  ..S A=$$CL^%L1LPT(A)
  ..S A=$$CLST^%L1FRM(A)
  ..S I=I+1 S A=$J(A,79)
  ..S ^TMPS111($J,I)=$S(%I=3:$$INVHBW^%L1FRM(A),1:A)
ZK4 .S %GET=": uaewd my++20,60,HH,,R#++30,E,I" D ^%L1GET S:%TO="END" %S="" S FL=%S Q:FL=""
  .S FILE=$TR(FL," ","")
  .I $$^%L1ZOS(10,FILE)>0 S %GET="<F9> - xy`l . miiw xak dfd uaew" D N^%L1GET S:%TO="F9" %S=99 I %S'=99 S FL="" Q
  .C FILE O FILE:(WRITE:NEWVERSION):2 E  S %SAY=" ! yeniya"_FILE_" uaew " X %XMSGV(1) Q
  .U FILE F I=1:1 Q:'$D(^TMPS111($J,I))  D
  ..I %XMSG(0)<0 W $TR(^(I),TS0,TSS),! Q
  ..I %XMSG(0)'>1 W $TR(^(I),TS1,TSS),! Q
  .C FILE
  ;
  I %S=5 D  G Z1
ZM .S %GET=": fkxnl xeciyl jnqn oikdl ++13,60,HH,,R#++4,E,I++++++^MRKZ\\\\VP" D ^%L1GET Q:%S=""!(%TO="END")
  .S MRKN=%S I MRKN=MRK S %SAY=" ! jnvrl xcyl mrh oi` " X %XMSGV(1) G ZM
  .S MAC1=GLB_"(MRK,INDEX)",MAC2="^SPOOLSND(MRKN,MRK,INDEX)"
  .D ^%S1GC1
  .S %GET=" <ENTER> . dnlyed dlert " D N^%L1GET
  Q
DO ;
 I $$^%L1IND(%L1("MAC"),1) D Z^%L1REP("^SPOOL") Q
 S %L1OLD("DO")="Q"
 Q
T2 ;
 N A S A=" "_$$NAME^%L1MRK(INDEX)_" "_INDEX_" "
 I $G(INDEX) S %SAY=A_" ++2,"_(80-(80-$L(A)\2))_",HH,I" X %XMSG
 S %L1("DO")="D DO^%L1REP"
 Q
KONAN ;
  S DEV="" Q:$D(FILEDOS)
  X %chista
  S ERR=0
  S %GET=": opekd my++3,60,HH,,R#A++1,E,I++AB++ <ESC> - z`vl , <F7> - hwqic okez bivdl , B e` A laewn opew my " D ^%L1GET S DEV=%S
  I $G(%TO)="F7" S %X=DEV_":",%L1OS=345 D O13M^%L1OS G KONAN
  S:$G(%TO)="END" DEV="" Q:DEV=""
K1 S ERR=0 U 0 W ! S DER=$$^%L1ZOS(9,DEV) I DER<0 D MSGER G KONAN
  Q
MSGER ;
  D  X %XMSGN(1)
  .I ",15,20,257,"[(","_DER_",") S %SAY=" oekp `l opek my " Q
  .I ",19,256,"[(","_DER_",") S %SAY=" ! hwqicdn dpbd zwacn cixedl jixv " Q
  .S %SAY=" oken `l opek " X %XMSGN(1)
  Q

%L1REPR
%L1REPR ; [ 23.08.00  1:50 PM ] [
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
ZD  K  D ^%L1C X %chista
  S %SAY=" ehlwpy zeg""ec zniyx " X %XMSGV
  K ^VRM($J)
  S MRKTO=$$^%L1MRK
  S MRKFROM="" F  S MRKFROM=$O(^SPOOLSND(MRKTO,MRKFROM)) Q:MRKFROM=""  D
  .S MAC2="^VRM($J,MRKFROM)",MAC1="^SPOOLSND(MRKTO,MRKFROM)" D ^%S1GC1
  ;
  S MAC="^VRM($J)"
  S %L1("BE",2)=6,%L1("BE",3)=8,%L1("EU")=3
  S %L1("T1",2)="                  fkxn my                  | fkxn 'qn "  S %L1("T1",1)="                  fkxn my                  | fkxn 'qn "
  S %L1("T1",3)="          dxrd          |        g""ec xe`z       |  jix`z  "
  S %L1("TXT1",2)="$$NAME^%L1MRK(%NXN)<>\/%NXN"
  S %L1("TXT1",3)="$P(%NXS,""\"",5)\/$P(%NXS,""\"",3)\/$$^%L1DC($P(%NXS,""\""),1)"
  S %L1("T2")="D T2^%L1REPR"
  D ^%L1NU
  K ^VRM($J) Q
Z(GLB) ;
Z1 X %chista
  S MRK=$$^%L1IND(%L1("MAC"),2) Q:MRK=""  Q:$G(INDEX)=""
  I '$D(@GLB@(MRK,INDEX)) S %SAY=" ! lhea " X %XMSGV(1) Q
  S %SAY=" "_$P(@GLB@(MRK,INDEX),"\",3)_" " X %XMSGV
  W !! F I=1:1 Q:'$D(@GLB@(MRK,INDEX,"KOT",I))  W ^(I),!
  W $TR($J("",78)," ","."),!
  W $TR($J("",78)," ","."),!
  W $TR($J("",78)," ","."),!
Z11 S %GETIN=1,%GET=" 0 - lhal , 3 - zqtcnl , 2- hwqicl , 1 - jqnl g""ec bivdl " D N^%L1GET Q:%S=""!(%TO="END")
  ;
  I %S=0 D IS1^%L1GET G:'YES Z11 D  Q
  .K @GLB@(MRK,INDEX)
  I %S=1 D  G Z1
  .N MDPS,MXLEN,%L1OUT,A,%N,I,PRT
  .S MDPS=$P(@GLB@(MRK,INDEX),"\",4) I 'MDPS S MDPS=5
  .D DEFMDP^%L1OUT(MDPS)
  .K ^TMPS111($J) S MXLEN=0
  .S N="",I=0 F  S N=$O(@GLB@(MRK,INDEX,"PC",N)) Q:N=""  D
  ..S A=$G(^(N))
  ..S I=I+1
  ..S ^TMPS111($J,I)=$$CL^%L1LPT(A)
  ..I $L(^TMPS111($J,I))>MXLEN S MXLEN=$L(^(I))
  .X %chista
  .I MXLEN>80 D
  ..I %TYPCRT["VT5" S %S2V("SMALL")="" Q
  ..S %S2V("HBR")=""
  .D ^%S2VIEW K ^TMPS111($J)
  ;
  I %S=3!(%S=2) D  G Z1
  .S OTB=%S
  .N MDPSO,%L1OUT,A,%N,I,PRT
  .S MDPSO=$P(@GLB@(MRK,INDEX),"\",4) I 'MDPSO S MDPSO=5
  .D DEFMDP^%L1OUT(MDPSO)
  .K MDPO S MAC1="%L1OUT(""MDP"")",MAC2="MDPO" D ^%S1GC1
  .K %L1OUT
  .I OTB=3 D ^%L1LPT Q:$G(%EROP)
  .I OTB=2 D KONAN Q:DEV=""  D  Q:FL=""
   ..S FL=""
ZK ..S %GET=": uaewd my++20,60,HH,,R#++30,E,I" D ^%L1GET S:%TO="END" %S="" S FL=%S Q:FL=""
  ..S FILE=DEV_":\"_$TR(FL," ","")
  ..I $$^%L1ZOS(10,FILE)>0 S %GET="<F9> - xey`l . miiw xak dfd uaew" D N^%L1GET S:%TO="F9" %S=99 I %S'=99 S FL="" Q
  ..S %GET="2 - HP ,1 - OKI e` CITIZEN/90-240 ly hnxeta uaew xenyl "
  ..D N^%L1GET I %S=""!(%TO="END") G ZK
  ..S %MDPSUG=$S(%S=1:5,1:7) D DEFMDP^%L1OUT(%MDPSUG)
  ..O 54:(FILE:"W"):2 E  S %SAY=" ! qetz 54 hxet " X %XMSGV(1) Q
  ..U 54
  .K ^TMPS111($J)
  .S N="",I=0 F  S N=$O(@GLB@(MRK,INDEX,"PC",N)) Q:N=""  D
  ..S A=$G(^(N))
  ..I %MDPSUG'=MDPSO S %N="" F  S %N=$O(MDPO(%N)) Q:%N=""  I %N'="GWPC",A[MDPO(%N) D
  ...I $D(%L1OUT("MDP",%N)) S A=$$RPL^%L1FRM(A,MDPO(%N),%L1OUT("MDP",%N))
  ..W A,!
  .I OTB=3 D CLOSE^%L1LPT
  .I OTB=2 W # C 54
  .K ^TMPS111($J)
  ;
  Q
DO ;
 I $$^%L1IND(%L1("MAC"),2) D Z^%L1REPR("^VRM($J)") Q
 S %L1OLD("DO")="Q"
 Q
T2 ;
 I '$G(INDEX) S %SAY=" : mi`ad mifkxndn ehlwpy zeg""ec ++2,60,HH,I" X %XMSG Q
 N A S A=" : "_$$NAME^%L1MRK(INDEX)_" "_INDEX_" fkxndn ehlwpy ze""ec zniyx"
 I $G(INDEX) S %SAY=A_" ++2,"_(80-(80-$L(A)\2))_",HH,I" X %XMSG
 S %L1("DO")="D DO^%L1REPR"
 Q
KONAN ;
  X %chista
  S ERR=0
  S %GET=": opekd my++3,60,HH,,R#A++1,E,I++AB++ <ESC> - z`vl , <F7> - hwqic okez bivdl , B e` A laewn opew my " D ^%L1GET S DEV=%S
  I $G(%TO)="F7" S %X=DEV_":",%L1OS=345 D O13M^%L1OS G KONAN
  S:$G(%TO)="END" DEV="" Q:DEV=""
K1 S ERR=0 U 0 W ! S DER=$$^%L1ZOS(9,DEV) I DER<0 D MSGER G KONAN
  Q
MSGER ;
  D  X %XMSGN(1)
  .I ",15,20,257,"[(","_DER_",") S %SAY=" oekp `l opek my " Q
  .I ",19,256,"[(","_DER_",") S %SAY=" ! hwqicdn dpbd zwacn cixedl jixv " Q
  .S %SAY=" oken `l opek " X %XMSGN(1)
  Q

%L1REPS
%L1REPS ; [ 23.08.00  1:50 PM ] [
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
ZD  K  D ^%L1C X %chista
  S %SAY=" xeciyl mipken zeg""ec zniyx " X %XMSGV
  K ^VRM($J)
  S MRKTO="" F  S MRKTO=$O(^SPOOLSND(MRKTO)) Q:MRKTO=""  D
  .S MRKFROM="" F  S MRKFROM=$O(^SPOOLSND(MRKTO,MRKFROM)) Q:MRKFROM=""  D
  ..S MAC2="^VRM($J,MRKTO)",MAC1="^SPOOLSND(MRKTO,MRKFROM)" D ^%S1GC1
  ;
  S MAC="^VRM($J)"
  S %L1("BE",2)=6,%L1("BE",3)=8,%L1("EU")=3
  S %L1("T1",2)="                  fkxn my                  | fkxn 'qn "  S %L1("T1",1)="                  fkxn my                  | fkxn 'qn "
  S %L1("T1",3)="          dxrd          |        g""ec xe`z       |  jix`z  "
  S %L1("TXT1",2)="$$NAME^%L1MRK(%NXN)<>\/%NXN"
  S %L1("TXT1",3)="$P(%NXS,""\"",5)\/$P(%NXS,""\"",3)\/$$^%L1DC($P(%NXS,""\""),1)"
  S %L1("T2")="D T2^%L1REPS"
  D ^%L1NU
  K ^VRM($J) Q
Z(GLB) ;
Z1 X %chista
  S MRK=$$^%L1IND(%L1("MAC"),2) Q:MRK=""  Q:$G(INDEX)=""
  I '$D(@GLB@(MRK,INDEX)) S %SAY=" ! lhea " X %XMSGV(1) Q
  S %SAY=" "_$P(@GLB@(MRK,INDEX),"\",3)_" " X %XMSGV
  W !! F I=1:1 Q:'$D(@GLB@(MRK,INDEX,"KOT",I))  W ^(I),!
  W $TR($J("",78)," ","."),!
  W $TR($J("",78)," ","."),!
  W $TR($J("",78)," ","."),!
Z11 S %GETIN=1,%GET=" 0 - lhal , 3 - zqtcnl , 2- hwqicl , 1 - jqnl g""ec bivdl " D N^%L1GET Q:%S=""!(%TO="END")
  ;
  I %S=0 D IS1^%L1GET G:'YES Z11 D  Q
  .K @GLB@(MRK,INDEX)
  I %S=1 D  G Z1
  .N MDPS,MXLEN,%L1OUT,A,%N,I,PRT
  .S MDPS=$P(@GLB@(MRK,INDEX),"\",4) I 'MDPS S MDPS=5
  .D DEFMDP^%L1OUT(MDPS)
  .K ^TMPS111($J) S MXLEN=0
  .S N="",I=0 F  S N=$O(@GLB@(MRK,INDEX,"PC",N)) Q:N=""  D
  ..S A=$G(^(N))
  ..S I=I+1
  ..S ^TMPS111($J,I)=$$CL^%L1LPT(A)
  ..I $L(^TMPS111($J,I))>MXLEN S MXLEN=$L(^(I))
  .X %chista
  .I MXLEN>80 D
  ..I %TYPCRT["VT5" S %S2V("SMALL")="" Q
  ..S %S2V("HBR")=""
  .D ^%S2VIEW K ^TMPS111($J)
  ;
  I %S=3!(%S=2) D  G Z1
  .S OTB=%S
  .N MDPSO,%L1OUT,A,%N,I,PRT
  .S MDPSO=$P(@GLB@(MRK,INDEX),"\",4) I 'MDPSO S MDPSO=5
  .D DEFMDP^%L1OUT(MDPSO)
  .K MDPO S MAC1="%L1OUT(""MDP"")",MAC2="MDPO" D ^%S1GC1
  .K %L1OUT
  .I OTB=3 D ^%L1LPT Q:$G(%EROP)
  .I OTB=2 D KONAN Q:DEV=""  D  Q:FL=""
   ..S FL=""
ZK ..S %GET=": uaewd my++20,60,HH,,R#++30,E,I" D ^%L1GET S:%TO="END" %S="" S FL=%S Q:FL=""
  ..S FILE=DEV_":\"_$TR(FL," ","")
  ..I $$^%L1ZOS(10,FILE)>0 S %GET="<F9> - xey`l . miiw xak dfd uaew" D N^%L1GET S:%TO="F9" %S=99 I %S'=99 S FL="" Q
  ..S %GET="2 - HP ,1 - OKI e` CITIZEN/90-240 ly hnxeta uaew xenyl "
  ..D N^%L1GET I %S=""!(%TO="END") G ZK
  ..S %MDPSUG=$S(%S=1:5,1:7) D DEFMDP^%L1OUT(%MDPSUG)
  ..O 54:(FILE:"W"):2 E  S %SAY=" ! qetz 54 hxet " X %XMSGV(1) Q
  ..U 54
  .K ^TMPS111($J)
  .S N="",I=0 F  S N=$O(@GLB@(MRK,INDEX,"PC",N)) Q:N=""  D
  ..S A=$G(^(N))
  ..I %MDPSUG'=MDPSO S %N="" F  S %N=$O(MDPO(%N)) Q:%N=""  I %N'="GWPC",A[MDPO(%N) D
  ...I $D(%L1OUT("MDP",%N)) S A=$$RPL^%L1FRM(A,MDPO(%N),%L1OUT("MDP",%N))
  ..W A,!
  .I OTB=3 D CLOSE^%L1LPT
  .I OTB=2 W # C 54
  .K ^TMPS111($J)
  ;
  Q
DO ;
 I $$^%L1IND(%L1("MAC"),2) D Z^%L1REPS("^VRM($J)") Q
 S %L1OLD("DO")="Q"
 Q
T2 ;
 I '$G(INDEX) S %SAY=" : mi`ad mifkxnl xeciyl mipken zeg""ec ++2,60,HH,I" X %XMSG Q
 N A S A=" : "_$$NAME^%L1MRK(INDEX)_" "_INDEX_" fkxnl xeciyl mipken ze""ec zniyx"
 I $G(INDEX) S %SAY=A_" ++2,"_(80-(80-$L(A)\2))_",HH,I" X %XMSG
 S %L1("DO")="D DO^%L1REPS"
 Q
KONAN ;
  X %chista
  S ERR=0
  S %GET=": opekd my++3,60,HH,,R#A++1,E,I++AB++ <ESC> - z`vl , <F7> - hwqic okez bivdl , B e` A laewn opew my " D ^%L1GET S DEV=%S
  I $G(%TO)="F7" S %X=DEV_":",%L1OS=345 D O13M^%L1OS G KONAN
  S:$G(%TO)="END" DEV="" Q:DEV=""
K1 S ERR=0 U 0 W ! S DER=$$^%L1ZOS(9,DEV) I DER<0 D MSGER G KONAN
  Q
MSGER ;
  D  X %XMSGN(1)
  .I ",15,20,257,"[(","_DER_",") S %SAY=" oekp `l opek my " Q
  .I ",19,256,"[(","_DER_",") S %SAY=" ! hwqicdn dpbd zwacn cixedl jixv " Q
  .S %SAY=" oken `l opek " X %XMSGN(1)
  Q

%L1RESET
%L1RESET(%P) ; [ 06/07/99  8:49 AM ] [
 ; S %P=$P to avoid OPEN and CLOSE on device to reset modem cntrl flag
 NEW (%P) I $V(0,-4,2)#16'=8 S %P=$P Q
 ; turn off modem control
 S DDB=$V(4*%P+$V(7,-5),-3,0)
 I $ZB($V(DDB+20,-3,4),#10000000,1) S %P=$P Q  ; LAT device
 S X=$V(DDB+12,-3,4)
 S X=$ZB(X,#208,2) V DDB+12:-3:X:4
 ; reset xoff flag
 S PORT=%P D LOOKUP^DEVRESET Q:QF
 D RESET^DEVRESET
 Q

%L1REST
%L1REST ; RESTOR GLOBAL MI DOS ( BLOCKS ) SHEER 26.04.94 [ 04/28/94  2:58 PM ]
  X %chista S %NMF="#GLOBAL.RES"
  S %SAY=" lhean vaew xefgye zbvd " X %XMSGV
  S %GET=" : <ESC> e` <ENTER> - d`ivi, 2 - vaew xefgy, 1 - vaew zbvd++5,70,H#++1,E,I"
  D ^%L1GET Q:%S=""!(%TO="END")  D VIEW:%S=1,REST:%S=2
  W *7 G %L1REST
VIEW ;
  X %chista N (%NMF) D ^%S2V
  Q
REST ;
  U 0 W !!?5,%NMF
  S %ER=$$^%L1ZOS(10,%NMF) I %ER<0 D ^%L1OS1 H 3 Q
  O 54:(%NMF:"R") U 54
  F  U 54 R %GLOB Q:%GLOB=""  R %ZNACH S %GLOB="^"_%GLOB D
  .S @%GLOB=%ZNACH U 0 W !,%GLOB," = ",%ZNACH
  C 54 Q

%L1RGR1
%L1RGR1 ; HELP FOR ^RR,^GR ; SHEER ; 08.08.93      [ 10.12.09 06:57 ] [ 28.09.05 09:12 ] [ 18.05.04 09:41 ]
  ;**********************************************;
  ; INPUT: ^L1ADR($J,
  ; OUTPUT : %NAM
  ;************************************************
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%NAM,%L1RM,%L1GM) D ^%L1C
  S NAME=$G(NAME),%NAM=""
  N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ER^%L1RGR1"
  K ^VRM($J) D PG
  S PAGE=1 D READ
0 D P ; HAZAGA
  S LIN=1,COL=1 S %NAM=$P(LIN(1),";"),$Y=1,$X=1 W *27,"[3;1H" D WRIN
MAIN K %HBRY ;
  U $P:(NOECHO:NOWRAP:ESCAPE)
  W *27,7 W *27,"[23;1H" W *27,"[2K" W !,NAME," ( ^ - EXIT ) : "
  K PRPRAVO,PRVNIZ,PRLEVO,PRPRAVO
RD  R *KOD S ZB="",ZB0=$ZB
  F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
  I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
  S SYM=$C(KOD) W *27,8
  I SYM="^"!(SYM=$C(25)) G ESC
  ;
  I KOD=13 G:'$D(%L1RM)&'$D(%L1GM) END
  I KOD=13,$D(%L1GM("VIEW")) D  G END
  .S MAC=%NAM
  .S:$E(%NAM)'="^" MAC="^"_%NAM N %NAM S USTR=0 X %chista D ^%S1GLPC
  I KOD=13,$D(%L1RM("VIEW")) D  G END
  .S USTR=0 X %chista S %RNAME=%NAM N %NAM D M1^%L1RV
  I KOD=13 D
  .S %LAB=""
  .S %GET=" "_%NAM_": EDIT - 1, VIEW - 2,"_$S($D(%L1RM):" DO - 3 ,",1:"")_" DELETE - 0 #1"
  .D NE^%L1GET S GLO=%NAM I %TO="END"!(%S'=1&(%S'=2)&(%S'=0)&(%S'=3)) S %LAB="PROG" Q
  .I %S=3 D  Q
  ..N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%NAM) D ^%L1C X %chista U $P:(ECHO:WRAP:WIDTH=80) D @("^"_%NAM) S %GET="<>" D N^%L1GET
  .S KOD=$S(%S=1:$S($D(%L1RM):18,1:7),%S=2:22,%S=0:4) S %LAB="RO"
  ;
  I $L(ZB),$D(%UPRCOD(ZB)),"ESC,TAB,VVERX,VNIZ,PRAVO,LEVO,PGUP,PGDN"[%UPRCOD(ZB) G @%UPRCOD(ZB)
  I $L(ZB)>3,'$D(%UPRCOD(ZB)) G MAIN
  ;
RO I $D(%L1RM),KOD<32 D  S GLO=%NAM G PROG
  .N (%UPRCOD,%XMSG,%XMSGN,%XMSGV,LIN,KOD,%NAM) D ^%L1C
  .I KOD=22 S %RNAME=%NAM N %NAM D M1^%L1RV Q  ; ----- VIEW PROG
  .I KOD=18 D ^%L1ED Q  ;    ----- EDIT
  .I KOD=4 D  Q:'YES  S %NAMF=$TR(%NAM,"%","_")_".m" O %NAMF C %NAMF:delete K ^L1ADR($J,%NAM) D PG Q  ;---- DELETE
  ..W *27,7 S %Q("Z")=" ARE YOU SHURE ?",%Q("U")="N",%Q("X")=1,%Q("Y")=23 D ^%S1ASK W *27,8
  ;
  I $D(%L1GM),KOD<32 D  S GLO=%NAM G PROG
  .N (%UPRCOD,%XMSG,%XMSGN,%XMSGV,LIN,KOD,%NAM) D ^%L1C
  .I KOD=22 S %S=%NAM N %NAM S USTR=0 X %chista D M0^%S1GL Q  ;--- VIEW
  .I KOD=7 S MAC="^"_%NAM N %NAM X %chista D KOD^%S3GLKR Q  ;--- EDIT
  .I KOD=4 D  Q:'YES  K @%NAM K ^L1ADR($J,%NAM) D PG Q   ; DELETE
  ..W *27,7 S %Q("Z")=" ARE YOU SHURE ?",%Q("U")="N",%Q("X")=1,%Q("Y")=23 D ^%S1ASK W *27,8
  ;
  D WR W *27,"[24;1H",*27,"[2K" W NAME," : "_SYM
  U $P:(WRAP:ECHO) R GLO W *27,"[2K" U $P:(NOECHO:NOWRAP)
  S GLO=SYM_GLO,YES=0
PROG S PROG="" ; --- FIND PROG
  F %SHP=1:1 S PROG=$O(^L1ADR($J,PROG)) Q:PROG=""  I PROG=GLO!(PROG]GLO) D POZIC Q
  D:PROG="" Q S YES=0 G MAIN
  Q
Q ;
  S I=I-1,PROG=$O(^L1ADR($J,PROG),-1)
POZIC ;
  S YES=1,PAGE=%SHP-1\160+1 D READ,P S LIN=%SHP-1#20+1,COL=%SHP-1#160\20+1,%NAM=PROG S:LIN=0 LIN=20 S ($Y,%YY)=(LIN+1),($X,%XX)=(COL-1*10) X %POSIC D WRIN
  Q
WR ;
  W *27,7 W $E(%NAM,1,8) W *27,8
  Q
WRIN ;
  W *27,7 W %CLI W $E(%NAM,1,8) W *27,"[0m"
  S %SAY=$S($L(%NAM)>8:%NAM,1:"") X %XMSGN W *27,8
  ; --- W *27,7 W *27,"[7m" W $E(%NAM,1,8) W *27,"[0m" W *27,8
  Q
SET ;
  S %NAM=$P($G(LIN(LIN)),";",COL)
  Q
VVERX ;
  D WR S LIN=LIN-1 D SET I LIN=0 S PRVVERX="" D  W *27,"["_LIN_"B",*27,"[A" G:'$D(PRLEVO) LEVO K PRLEVO,PRVVERX D WRIN G MAIN
  .F LIN=20:-1:1 D SET Q:%NAM'=""
  W *27,"[A" D WRIN
  G MAIN
VNIZ ;
  D WR S LIN=LIN+1 D SET I %NAM="" S PRVNIZ="" W *27,"["_(LIN-1)_"A" S LIN=1 D SET W *27,"[B" G:'$D(PRPRAVO) PRAVO K PRPRAVO,PRVNIZ D WRIN G MAIN
  W *27,"[B" D WRIN
  G MAIN
PRAVO ;
  D WR S COL=COL+1 D SET I %NAM="" W *27,"["_(LIN+2)_";1H" S COL=1 D SET S:'$D(LIN(LIN+1))&(PAGE=PAGES) PAGE=PAGES-1 G:'$D(LIN(LIN+1)) PGDN S PRPRAVO="" G:'$D(PRVNIZ) VNIZ K PRPRAVO,PRVNIZ D WRIN G MAIN
  W:COL>1 *27,"[10C" D WRIN
  G MAIN
LEVO ;
  D WR S COL=COL-1 D SET I %NAM="" D  W *27,"["_(LIN+2)_";"_(COL-1*10+1)_"H" G:'$D(LIN(LIN-1))&(PAGE>1) PGUP S PRLEVO="" G:'$D(PRVVERX) VVERX K PRVVERX,PRLEVO D WRIN G MAIN
  .F COL=8:-1:1 D SET Q:%NAM'=""
  W *27,"[10D" D WRIN
  G MAIN
TAB ;
  D WR S COL=COL+1 D SET I %NAM="" W *27,"["_(LIN+2)_";1H" S COL=1 D SET
  W:COL>1 *27,"[10C" D WRIN
  G MAIN
PGUP ;
  I PAGE=1 W *7 G MAIN
  S PAGE=PAGE-1 D READ X %chista G 0
PGDN ;
  I PAGE=PAGES W *7 G MAIN
  S PAGE=PAGE+1 D READ X %chista G 0
READ ;
  F LIN=1:1:20 S LIN(LIN)=$G(^VRM($J,PAGE,LIN))
  Q
ESC S %NAM="" ;
END ;
  W *27,"[23;1H" W *27,"[0J",$C(27,91,63,50,53,104)
  K ^VRM($J) Q
DIR ; --- S %FN="B",%DEV=51,NAME="GLOBAL" ;
  N %S,%C,%RC U 0 S %GET=" CREATE  CATALOG - 99 ? " D NE^%L1GET G:%S'=99 END
  K ^L1ADR($J) O %FN:(REWIND:READONLY) U %FN
  I NAME["ROU" F I=1:1 R STR Q:$ZC  I STR=""!(I=2) S ZB=$ZB R STR Q:$ZC!(STR="")  S ^L1ADR($J,STR)=ZB
  I NAME["GLO" F I=1:1 R STR Q:$ZC!(STR="**")  S ZV=0 D  Q:STR="**"
  .I I=2 S ZB=$ZB R STR Q:STR="**"  S ZV=2
  .I STR="*" F ZV=1:1 S ZB=$ZB R STR Q:STR'="*"
  .Q:STR="**"
  .S:ZV>1 ^L1ADR($J,$P($P(STR,"("),"^",2))=ZB
  C %DEV
  S %FNN=$P(%FN,".")_"."_$E($P(%FN,".",2),1,2)_"#"
  O %FNN:WRITE U %DEV S IND="" F  S IND=$O(^L1ADR($J,IND)) Q:IND=""  W ^L1ADR($J,IND)_"|"_IND,!
  C %DEV Q
P U $P:(NOECHO:NOWRAP)
 X %chista
 I '$D(%L1RM),'$D(%L1GM) W *27,"[1;1H" W "UCI : ",$$ZU($ZG) I '$D(%L1RM) W:NAME'="" ?31,"RESTORE ",NAME W ?60 D ^%D W "   " D ^%T W !
 I $D(%L1RM)!$D(%L1GM) S %SAY=" ["_$$ZU($ZG)_"]  VIEW - <CTRL>V, EDIT - <CTRL>"_$S($D(%L1RM):"R",1:"G")_", DELETE - <CTRL>D, EXIT - <CTRL>Y " X %XMSGV W !
 F LIN=1:1:20 W ! D
  .F COL=1:1:8 S PIC=$E($P($G(LIN(LIN)),";",COL),1,8) W PIC_$J("",10-$L(PIC))
  Q
PG K ^VRM($J) N PAGE,%NAM,%NAM1 S %NAM=""
  F PAGE=1:1 D  Q:%NAM=""
  .F I=1:1:8 D  Q:%NAM=""
  ..F LIN=1:1:20 S %NAM=$O(^L1ADR($J,%NAM)) Q:%NAM=""  S ^VRM($J,PAGE,LIN)=$G(^VRM($J,PAGE,LIN))_%NAM_";"
  S PAGES=PAGE
  Q
ER ;
  S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ER^%L1RGR1"
  S %SAY=$ZS X %XMSGV(1) I $D(GLO) G PROG
  I $D(%NAM) S GLO=%NAM G PROG
  G 0
ZU(ZG) ;
 Q $$FUNC^%UCASE($P(ZG,"/",$L(ZG,"/")))

%L1RGR2
%L1RGR2 ; HELP FOR LIST ; SHEER ; 18.05.94 [ 05/23/94  2:49 PM ]
  S %NAM="" K LIN,^VRM($J),^LIST($J) D ^%L1C
  F PAGE=1:1 D  Q:%NAM=""
  .F I=1:1:8 D  Q:%NAM=""
  ..F LIN=1:1:20 S %NAM=$O(^L1ADR($J,%NAM)) Q:%NAM=""  S ^VRM($J,PAGE,LIN)=$G(^VRM($J,PAGE,LIN))_%NAM_";" I PAGE=1 S LIN(LIN)=$G(LIN(LIN))_%NAM_";"
  S PAGES=PAGE,PAGE=1
0 X %chista W *27,"[1;1H" W "UCI : ",$$^%L1ZU(0),?31,$G(NAME)," LIST" W ?60 D ^%D W "   " D ^%T W !
F F LIN=1:1:20 W ! D  ; :%TYPCRT="PC" ! D  W:%TYPCRT["VT" !
  .F COL=1:1:8 S PIC=$E($P($G(LIN(LIN)),";",COL),1,8) Q:PIC=""  D
  ..W:$D(^LIST($J,PIC)) *27,"[7m" W PIC W:$D(^LIST($J,PIC)) *27,"[0m" W $J("",10-$L(PIC))
  Q:$G(YES)
  S LIN=1,COL=1 S %NAM=$P(LIN(1),";"),$Y=1,$X=1 W *27,"[3;1H" W *27,7 ; D WRIN
MAIN ;
  F  R *R:0 Q:R=-1
  W *27,7 ; W *27,"[23;1H" W *27,"[2K" W !,"NAME : " W *27,8 ;,$C(27,91,63,50,53,108)
  ; R *KOD S SYM=$C(KOD) W *27,8
1 F  D RGR R *KOD:0 Q:KOD'=-1  ; D 2^RGR2
  S SYM=$C(KOD) W *27,8
  I SYM="^" S %NAM="" G END
  I KOD=13 G LIST
  ;I $ZB=4379 G VVERX
  ;I $ZB=4635 G VNIZ
  ;I $ZB=4891 G PRAVO
  ;I $ZB=5147 G LEVO
  ; S ZB=$ZB R *R1:0 I R1>0 S ZB=0_R1
  S ZB=$ZB R *R1:0 I R1>0 S ZB=$S(ZB=0:0_R1,1:R1)
  R *R1:0 I R1>0 S ZB=ZB_R1
  ; O 9 U 9 W ZB R R C 9
  I $D(%UPRCOD(ZB)),"TAB,VVERX,VNIZ,PRAVO,LEVO,PGUP,PGDN,ESC,END"[%UPRCOD(ZB) G @%UPRCOD(ZB)
  ; D WR W *27,"[24;1H",*27,"[2K" W NAME," : "_SYM U $P:(ECHO:WRAP) R GLO W *27,"[2K"
  S %GET="NAME : ++24,1,EE#"_SYM_"++8,E,I",%BE="E" D ^%L1GET I %TO="END"!(%S="") W *27,8 G MAIN
  S GLO=%S,YES=0 ; S GLO=SYM_GLO,YES=0
PROG S PROG=""
  F I=1:1 S PROG=$O(^L1ADR($J,PROG)) Q:PROG=""  I PROG=GLO!(PROG]GLO) D POZIC Q
  D:PROG="" Q S YES=0 G MAIN
  Q
Q ;
  S I=I-1,PROG=$ZPR(^L1ADR($J,PROG))
POZIC ;
  S YES=1,PAGE=I-1\160+1 D READ,0 S LIN=I-1#20+1,COL=I-1#160\20+1,%NAM=PROG S:LIN=0 LIN=20 W *27,"["_(LIN+2)_";"_(COL-1*10+1)_"H" D WRIN
  Q
WR ;
  ; W *27,7 W $E(%NAM,1,8) W *27,8
  Q
WRIN ;
  ; W *27,7 W *27,"[7m" W $E(%NAM,1) W *27,"[0m" W *27,8
  ; S %SAY=$S($L(%NAM)>8:%NAM,1:"") X %XMSGN W *27,8
  ; --- W *27,7 W *27,"[7m" W $E(%NAM,1,8) W *27,"[0m" W *27,8
  Q
SET ;
  S %NAM=$P($G(LIN(LIN)),";",COL)
  Q
VVERX ;
  D WR S LIN=LIN-1 D SET I LIN=0 D  W *27,"["_(LIN-1)_"B" G LEVO
  .F LIN=20:-1:1 D SET Q:%NAM'=""
  W *27,"[A" D WRIN
  G MAIN
VNIZ D WR;
BN S LIN=LIN+1 D SET I %NAM="" W *27,"["_(LIN-2)_"A" S LIN=1 G PRAVO ; SET
  W *27,"[B" D WRIN
  G MAIN
PRAVO ;
  D WR S COL=COL+1 D SET I %NAM="" W *27,"["_(LIN+2)_";1H" S COL=1 D SET
  W:COL>1 *27,"[10C" D WRIN
  G MAIN
LEVO ;
  D WR S COL=COL-1 D SET I %NAM="" D  W *27,"["_(LIN+2)_";"_(COL-1*10+1)_"H" D WRIN G MAIN
  .F COL=8:-1:1 D SET Q:%NAM'=""
  W *27,"[10D" D WRIN
  G MAIN
TAB ;
  D WR S COL=COL+1 D SET I %NAM="" W *27,"["_(LIN+2)_";1H" S COL=1 D SET
  W:COL>1 *27,"[10C" D WRIN
  G MAIN
PGUP ;
  I PAGE=1 W *7 G MAIN
  S PAGE=PAGE-1 D READ X %chista G 0
PGDN ;
  I PAGE=PAGES W *7 G MAIN
  S PAGE=PAGE+1 D READ X %chista G 0
READ ;
  F LIN=1:1:20 S LIN(LIN)=$G(^VRM($J,PAGE,LIN))
  Q
ESC ;
END ;
  U $P:(ECHO:WRAP) W *27,"[23;1H" W *27,"[0J",$C(27,91,63,50,53,104)
  Q
LIST ;
  I '$D(^LIST($J,%NAM)) S ^LIST($J,%NAM)="" D IN G BN
  I $D(^LIST($J,%NAM)) K ^LIST($J,%NAM) D WR1 G BN
IN ;
  W *27,7 W *27,"[7m" W $E(%NAM,1,8) W *27,"[0m" W *27,8
  Q
WR1 ;
  W *27,7 W $E(%NAM,1,8) W *27,8
  Q
RGR ;
  ; W *27,7,$J("",9),*27,8 W *27,7,%NAM,*27,8
  W *27,7,$J("",9),*27,8 S F=20000 D FOR
  W *27,7,%NAM,*27,8 D:$D(^LIST($J,%NAM)) IN S F=20000 D FOR
  Q
FOR ;
  F I=1:1:F

%L1RI
%L1RI ;service@greystone.com %RI;19920722 07:40;routine input [ 09.05.06 06:55 ] [ 26.04.06 12:55 ] [ 22.09.03 09:23 ]
 ;Converts mumps routines from a standard routine output (RO)
 ;file to individual *.m files.
 ;possible enhancements:
 ;selection and/or exclusion by list, range and/or wildcard
 ;optional confirmation by routine name
 ;callable entry point
 ;
 w !,"Routine Input Utility - Converts MSM files to *.m files.",!
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%RI" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%RI")
 n d,dir,ff,l,r,x,y,%ZD,ff
 s ff=$c(13,12)
 f  d  q:$l(%ZD)
 . r !,"Input file: ",%ZD,!
 . I %ZD="" S %ZD="^"
 . i %ZD="^" q
 . i $e(%ZD)=">" S %ZD="/home/lev/"_$E(%ZD,2,255)
 . i $e(%ZD,1,3)="mu>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/"_$E(%ZD,4,255)
 . i $e(%ZD,1,3)="ml>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/mly/"_$E(%ZD,4,255)
 . i $e(%ZD,1,2)="a>"!($E(%ZD,1,2)="A:")!($E(%ZD,1,2)="a:") S %ZD="/mnt/floppy/"_$E(%ZD,3,255)
 . I %ZD["/mnt/floppy/" D ^%L1FLOP
 . i $zparse(%ZD)="" w "  no such file" s %ZD="" q
 . o %ZD:(readonly:block=2048:record=2044:exception="g noopen"):0
 . i '$t  w !,%ZD," is not available" s %ZD="" q
 . q
noopen . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
 q:%ZD="^"!(%ZD="")
 u %ZD:exception="zg "_$zl_":eof"
 r x0,y0 u $p w "x0=",x0," y0=",y0
 s dir="" ;;r !,"Output directory : ",dir w !!
 i dir="^" c:%ZD'=$p %ZD u $p:(ctrap="":exc="") q
 s (l,r)=0 u $p w # S ENDR=0,YES=0
cyc u %ZD r x2
 i $l(x2),$e(x2)?1a!($e(x2)="%") d  G:ENDR eof
 . ;warning - loop terminated by exception
 . u $p w !,x2
 . S YES=1 ;R " >",Y S YES=(Y="Y"!(Y="y")) I Y="."!(Y="^") S ENDR=1 Q
 . s x=$tr($e(x2),"%","_")_$p($e(x2,2,8),$c(13))_".m",r=r+1 ;convert % to _
 . ;u $p w !,"x=",x,! h 1
 . I YES o x:(newversion:noreadonly:blocksize=2048:recordsize=2044)
 . f  u %ZD r y q:y=ff!(y=$c(13))  d:YES
 ..s l=l+1 u x w $p(y,$c(13)),!
 . I YES c x
 i $G(yy)'=ff g cyc
eof u $p
 i $l(x),YES c x
 w !!,"Restored ",l," line",$s(l=1:"",1:"s")
 w " in ",r," routine",$s(r=1:".",1:"s.")
 c:%ZD'=$p %ZD u $p:(ctrap="":exc="")
 q
 ;
ERR u $p w !,$p($zs,",",2,99),!
 s $ec=""
 ; Warning - Fall-though
EXIT i $d(%ZD),%ZD'=$p c %ZD
 u $p:(ctrap="":exc="")
 q

%L1RL
%L1RL K %L1RL ; LIST ROUTINE [ 01/26/92  3:13 PM ]
 S $ZT="S zr=$R "_^ZT_"ZG "_$ZL_":ER^%L1RL"
 W !!,"ROUTINE NAME : " S %LS=8,%S="" D ^%ZMSL S %NAME=%S G:%NAME="" END
 X "ZL @%NAME S %I=0 F  S YYY="""" S %I=%I+1 Q:$T(+%I)=""""  W !,$T(+%I) R:'(%I#16) !!,""<>"",*YYY S:YYY=30 %I=%I-32 X:YYY=30 %chista S:%I<0 %I=0 Q:$C(YYY)="".""!($C(YYY)=""/"")"
 G %L1RL
ER W !,*7,$P($ZS,">") S %L1XER="" G %L1RL+1
END I $D(^ZE($P,"%ERG")),$D(%L1XER) D ^%L1C S %TIP=^ZE($P,"%ERG") G 241^%S2ERG
 Q

%L1RM
%L1RM ; ROUTINE MONITOR ;[ 10/23/95  6:57 PM ] [ 05/23/99  5:29 PM ] [ 10/23/95  6:57 PM ]
 U $P:(NOECHO:NOWRAP)
 X %chista S %SAY=" ROUTINE MONITOR " X %XMSGV
 U $P:(ECHO:WRAP) D ^%RSEL U $P:(NOECHO:NOWRAP) G M1
M1 K ^L1ADR($J) S N="" F  S N=$O(%ZR(N)) Q:N=""  S ^L1ADR($J,N)=%ZR(N)
 K %ZR
 S %L1RM="" D ^%L1RGR1 K %L1RM
 Q

%L1RNG
%L1RNG ;      [ 15.01.06 19:34 ] [ 08.04.05 12:40 PM ] [ 20.11.04  3:55 PM ]
 ; D ^%L1RNG ---- FROM DATE TO DATE
 ; D YM^%L1RNG --- FROM YEAR, MONTH TO YEAR, MONTH
 ; D RR^%L1RNG --- FROM "ME" TO "AD"
D ; INPUT : %YY
 ; OUTPUT : %L1DAT01,%L1DAT02 (YYMMDD)
 ;          %L1DAT11,%L1DAT12 (DD.MM.YY)
 ;          %L1D1,%L1D2 ($H)
 K %L1DAT01,%L1DAT02
 I '$D(%L1DAT11) S %L1DAT11=$ZD($H,"DD/MM/YY")
 N %YYDAT S:'$D(%YY) %YY=3 S %YYDAT=%YY
Z1 U 0 S %GET=$G(%RNG("DAT"),"jix`z")_"n++"_%YYDAT_",70,HH#"_$TR($G(%L1DAT11),"./","")_"++8,D,I"
 I %ENGLISH S %GET="FROM DATE++"_%YYDAT_",10,EE#"_$TR($G(%L1DAT11),"./","")_"++8,D,I"
 D ^%L1GET I %S=""!($G(%TO)="END")!($G(%TO)="UP") K %L1DAT01,%L1DAT02,%L1DAT11,%L1DAT12,%L1D1,%L1D2,%L1CALL Q
 I %TO="F7",$D(%L1CALL("PROG")) D ^%L1CALL(%L1CALL("PROG"),$G(%SCRN),$G(%L1CALL("VRB"))_",%L1CALL(""OUT"")") S %L1DAT11=$G(%L1CALL("OUT")) G Z1
 S %L1D1=$$^%L1DC(%L1DAT1,3)
 I $E(%L1D1)="?" S %SAY=" ! d`iby " X %XMSGV(1) G Z1
 S %L1DAT01=%L1DAT,%L1DAT11=%L1DAT1
Z2 U 0 S %GET=$G(%RNG("DAT"),"jix`z")_" cr++"_%YYDAT_",45,HH#"_$TR($G(%L1DAT12,%L1DAT11),"./","")_"++8,D,I"
 I %ENGLISH S %GET="TO DATE++"_%YYDAT_",45,EE#"_$TR($G(%L1DAT12,%L1DAT11),"./","")_"++8,D,I"
 D ^%L1GET G:%S=""!($G(%TO)="END")!($G(%TO)="UP") Z1
 I %TO="F7",$D(%L1CALL("PROG")) D ^%L1CALL(%L1CALL("PROG"),$G(%SCRN),$G(%L1CALL("VRB"))_",%L1CALL(""OUT"")") S %L1DAT12=$G(%L1CALL("OUT")) G Z2
 S %L1D2=$$^%L1DC(%L1DAT1,3)
 I $E(%L1D2)="?" S %SAY="! d`iby " X %XMSGV(1) G Z2
 S %L1DAT02=%L1DAT,%L1DAT12=%L1DAT1
 I %L1D2<%L1D1 N %YY0 S %YY0=%YY S %SAY=" ! d`iby " W *7 X %XMSGV H 2 S %SAY="         " W *7 X %XMSGV S %YY=%YY0 G D
 K %L1CALL,%RNG Q
YM K YYMM N YY,MM S YY=$P($$^%L1DC($H,1),".",3),MM=$P($ZD($H,"DD/MM/YY"),"/",2)
 I $D(%RNG("YMPREV")),MM=1 S YY=YY-1,MM=12
 I $D(%RNG("YMPREV")),MM>1 S MM=MM-1
 S %GET=":dpy++"_%YY_",70,HH#"_YY_"++2,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S YY=%S I YY<80,YY>50 W *7 G YM
YM1 S %GET=":yceg++"_%YY_",60,HH#"_MM_"++2,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") YM
 S MM=$TR($J(%S,2)," ",0) I MM>12!(MM<1) W *7 G YM1
 S YY=$TR($J(YY,2)," ",0)
 S YYMM=YY_MM
 K %RNG Q
R N %RNGZ,%RNGX ;
R1 S %RNGZ=%RNG("Z")_"n"
 S %RNGX=$G(%RNG("X"),70) D RG
 D ^%L1GET
 Q:$G(%TO)="END"!($G(%TO)="UP")
 S @("ME"_$G(%RNG("V"))_"=%S")
 S %RNG("O")=%S
 S %RNGZ=%RNG("Z")_" cr" S %RNGX=%RNGX-$L(%RNGZ)-$G(%RNG("PAR"),2)-11 D RG
 D ^%L1GET G:$G(%TO)="END"!($G(%TO)="UP") R1
 S @("AD"_$G(%RNG("V"))_"=%S")
 K %RNG
 Q
RG ;
 S %GET=%RNGZ_"++"_$G(%RNG("Y"),%YY)_","_$G(%RNGX,70)_",HH,,"_$G(%RNG("RB"))_"#"
 S %GET=%GET_$G(%RNG("O"))_"++"_$G(%RNG("PAR"),"2,E,I")
 S %GET=%GET_"++"_$G(%RNG("CIST"))_"++"_$G(%RNG("HELP"))
 S %GET=%GET_"++"_$G(%RNG("FILE"))_"++"_$G(%RNG("C"))
 Q
RR S %FL=1,%TO=""
 N TYP,%RNGX,%RNGY,%RNGO,%MERNGV,%RNGER,%MER,%ADR
 S %MER="ME"_$G(%RNG("V")),%ADR="AD"_$G(%RNG("V"))
 S %SAY="" X %XMSGN
 S:'$D(@%MER) @%MER="" S:'$D(@%ADR) @%ADR=""
R0 S TYP=$P($P($P(%RNG,"#",2),"++",2),",",2)
 I $P($P($P(%RNG,"++",2),",",3),"#")="HH",%ENGLISH D
 .N CRD S CRD=$P($P(%RNG,"++",2),"#")
 .S CRD=$P(CRD,",")_","_(80-$P(CRD,",",2))_",EE"_$P(CRD,",",4,24)
 .S %RNG=$P(%RNG,"++")_"++"_CRD_"#"_$P(%RNG,"#",2,25)
 S %MERNGV=$G(@%MER) ; -------- %RNG("V") - VALUE NAME
 I TYP="D",$TR(%MERNGV,"./","")?6N S %MERNGV=$E(%MERNGV,5,6)_$E(%MERNGV,3,4)_$E(%MERNGV,1,2)
 I TYP="D",$TR(%MERNGV,"/.","")?8N S %MERNGV=$E(%MERNGV,7,8)_$E(%MERNGV,3,4)_$E(%MERNGV,1,2)
 I TYP="D",%MERNGV?.P,'$D(%L1GET) S %MERNGV="  "_$$MMGG($H)
 I TYP="D",%MERNGV?5N S %MERNGV=$ZD(%MERNGV,"DD/MM/YY") I %MERNGV?.P S %MERNGV="  "_$$MMGG($H)
 I TYP="T",$G(%ADRNGV)>24 S %ADRNGV=%ADRNGV-24
 S %GET=$P(%RNG,"++")_"n++"_$P($P(%RNG,"++",2,20),"#")_"#"_$G(%MERNGV)_$P(%RNG,"#",2,20)
 I %ENGLISH S %GET=" FROM "_$P(%RNG,"++")_"++"_$P($P(%RNG,"++",2,20),"#")_"#"_$G(%MERNGV)_$P(%RNG,"#",2,20)
 I $D(%RNG("S0")),'$D(%L1GET) D
 .S %SAY="(S0-ycg,<F8> mihq zniyx) hq 'qne ""S"" ze` cilwdl `p ""*"" mr zecya mipezp hq zclwdl++22,79,HH,I" X %XMSG
 D ^%L1GET
 Q:$G(%TO)="END"!($G(%TO)="UP")  ;I "/.>u"[%S,$L(%S) S %TO="END1" Q
 I $D(%L1GET) G RR1
 I TYP="D" S @%MER=%L1DAT
 E  S @%MER=%S
 ;
 I $D(%RNG("S0")),%TO="F8" D  G R0
 .S MAC="^RNGSET(%RNG(""V""))"
 .S %L1("EU")=2,%L1("BE")=6 D ^%L1NU Q:FLAG'=""
 .S @(%MER_"=""S"_INDEX_"""")
 .
 I @%MER?1"S"1N.N,'$D(%RNG("S0")) W *7 G R0
 I @%MER?1"S"1N.N,$D(%RNG("S0")),$D(%RNG("V")),'$D(%L1GET) D  S @%ADR="" K %RNG Q
 .D SAVE^%L3MBGG
 .K ^MBG($P)
 .N %NSET,%SSET S %NSET=$E(@%MER,2,3)
 .I %NSET,$D(^RNGSET(%RNG("V"),%NSET)) M ^MBG($P)=^RNGSET(%RNG("V"),%NSET)
 .N %GL S %GL=$P($P(%RNG,"#",2),"++",5)
 .S %MBG("PAR",1)=";oezp qn;60;10;E;"
 .S %MBG("PAR",2)=";my;48;20;E;#"""""
 .I $E(%GL)="^" S %MBG("GLOB",1)=%GL,%MBG("PAR",1)=%MBG("PAR",1)_"##D CMD^%L1RNG"
 .S %MBG("VGR0")=$P(%RNG,"++",2)+1
 .S %MBG("VGR")=%MBG("VGR0")+1
 .S %MBG("STEP")=1
 .D ^%L1MBG1
 .I $G(%MBG("GLOB",1))="^PARIT" S %MBG("D",1)="8."
 .S %MBG("=")=""
 .D ^%L1MBG
 .N %I F %I=1:1 Q:'$D(^MBG($P,%I))  I $G(^(%I))'="" S %ITEM=$P(^(%I),"\") I %ITEM'="" S @%MER@("SET",%ITEM)=""
 .K %Q S %Q("Z")="hq xenyl" S:'%NSET %Q("U")="l" D N^%S2ASK I YES D
 ..I '%NSET S %NSET=$O(^RNGSET(%RNG("V"),9999),-1)+1
ZR ..S %GET="(F8 - dniyx) hq 'qn++24,78,HH,,,C#"_%NSET_"++2,E,I" D ^%L1GET
 ..Q:%TO="END"
 ..I %TO="F8" D  G:FLAG'="" ZR
 ...S MAC="^RNGSET(%RNG(""V""))"
 ...S %L1("EU")=2,%L1("BE")=6 D ^%L1NU
 ...S %NSET=INDEX
 ..Q:%S=""
 ..S %NSET=%S
 ..S %SSET=$G(^RNGSET(%RNG("V"),%NSET))
 ..I $D(^RNGSET(%RNG("V"),%NSET)) D  Q:%S'=99
 ...S %GET="<F9> ugl xeyi`l . miiw xak "_%NSET_" hq++24,65,HH#++1,E,I" D ^%L1GET S:%TO="F9" %S=99
 ..S %GET=": hq my ++24,65,HH#"_%SSET_"++30,H,I" D ^%L1GET S %SSET=%S
 ..M ^RNGSET(%RNG("V"),%NSET)=^MBG($P)
 ..S ^RNGSET(%RNG("V"),%NSET)=%SSET
 .K ^MBG($P)
 .I %TYPCRT="PC" D REST^%L3MBGG Q
 .I $D(%L1PC),$D(%REPN),'$D(%L1GET) D
 ..N IJK,COD,%RNG,%RNGO,%MER,%ADR,%L1GET,TYP,%TO X %chista
 ..S %L1GET="",%L1RNG="" D SHEIL1^%L1PCS
 ;
 I TYP="D",%L1DAT?.P,'$D(%L1GET),$D(%RNG("DAT")) W *7,*7,*7 G RR
 I $D(%RNG("ME")) X %RNG("ME")
 I %TO="DW" Q
 I $G(%RNGER) S %RNGER=0 G R0
 S %TO=""
 ;I $D(%RNGREST) X %RNGREST
RR1 S %RNGX=$P($P(%RNG,"++",2),",",2)-$L($P(%RNG,"++"))-$P($P(%RNG,"#",2),"++",2)-4
 I %ENGLISH S %RNGX=$P($P(%RNG,"++",2),",",2)+$L($P(%RNG,"++"))+$P($P(%RNG,"#",2),"++",2)+7
 I %RNGX>45,'%ENGLISH S %RNGX=45
 I $D(%L1GET) S %RNGO=$G(@%ADR) D  G RR2
 .I TYP="D",%RNGO?5N S %RNGO=$ZD(%RNGO,"DD/MM/YY")
 I $G(@%ADR)="" S %RNGO=$S(TYP="D":$$^%L1DC(@%MER,1),1:%S)
 E  S %RNGO=$G(@%ADR)
 ;I TYP="D",%RNGO?6N S %RNGO=$E(%RNGO,5,6)_$E(%RNGO,3,4)_$E(%RNGO,1,2)
 I TYP="D" I %RNGO?5N S %RNGO=$ZD(%RNGO,"DD/MM/YY")
 I "/.>u"[%S,$L(%S) S %TO="END1" Q
RR2 I $P($P(%RNG,"#"),",",6)="C" S $P(%RNG,",",6)=$E($P(%RNG,",",6),2,255)
 S %FL=1 S %GET=$P(%RNG,"++")_" cr++"_$P($P(%RNG,"++",2),",")_","_%RNGX_","_$P($P($P(%RNG,"#"),"++",2),",",3,20)_"#"_%RNGO_"++"_$P($P(%RNG,"#",2),"++",2,25)
 I %ENGLISH S %GET=" TO "_$P(%RNG,"++")_"++"_$P($P(%RNG,"++",2),",")_","_%RNGX_","_$TR($P($P($P(%RNG,"#"),"++",2),",",3,20),"H","E")_"#"_%RNGO_"++"_$P($P(%RNG,"#",2),"++",2,25)
 D ^%L1GET Q:$D(%L1GET)
 G:$G(%TO)="END"!($G(%TO)="UP") RR
 I TYP="D" S @%ADR=%L1DAT
 E  S @%ADR=%S
 I TYP="D",%L1DAT?.P,'$D(%L1GET),$D(%RNG("DAT")) W *7,*7,*7 G RR1
 I $D(%RNG("AD")) X %RNG("AD")
 I TYP="T" D
 .I @%ADR?4N S @%ADR=$E(@%ADR,1,2)_":"_$E(@%ADR,3,4)
 .I @%MER?4N S @%MER=$E(@%MER,1,2)_":"_$E(@%MER,3,4)
 .S @%MER=$$TDEC^%L1TIME(@%MER)
 .S @%ADR=$$TDEC^%L1TIME(@%ADR)
 .I @%ADR<@%MER S @%ADR=@%ADR+24
 I TYP="D",$$^%L1DC(@%ADR,4)<$$^%L1DC(@%MER,4) W *7 G RR
 I TYP'="D",@%ADR<@%MER W *7 G RR
 I $G(%RNGER) S %RNGER=0 G RR1
 K %RNG ;I $D(%RNGREST) X %RNGREST
 Q
MMGG(H) ;
 Q $E($TR($$^%L1DC($H,1),"/.",""),3,6)
CMD ;
 I $L(%MBG("O",1)),'$D(@%MBG("GLOB",1)@(%MBG("O",1))) S %SC("ST")=1 Q
 S %MBG("O",2)=""
 I $L(%MBG("O",1)) S %MBG("O",2)=$TR($P($G(@%MBG("GLOB",1)@(%MBG("O",1))),"**"),"\","/")
 S ^MBG($P,SH)=%MBG("O",1)_"\"_%MBG("O",2)
 S %MBG("TO",1)="PL"
 Q

%L1RNG0
%L1RNG ;      [ 15.01.06 19:31 ] [ 08.07.01  4:21 PM ] [ 06.05.01  1:13 PM ]
 ; D ^%L1RNG ---- FROM DATE TO DATE
 ; D YM^%L1RNG --- FROM YEAR, MONTH TO YEAR, MONTH
 ; D RR^%L1RNG --- FROM "ME" TO "AD"
D ; INPUT : %YY
 ; OUTPUT : %L1DAT01,%L1DAT02 (YYMMDD)
 ;          %L1DAT11,%L1DAT12 (DD.MM.YY)
 ;          %L1D1,%L1D2 ($H)
 K %L1DAT01,%L1DAT02
 I '$D(%L1DAT11) S %L1DAT11=$$^%L1DC($H,1)
 N %YYDAT S:'$D(%YY) %YY=3 S %YYDAT=%YY
Z1 U 0 S %GET="jix`zn++"_%YYDAT_",70,HH#"_$TR($G(%L1DAT11),"./","")_"++8,D,I"
 I %ENGLISH S %GET="FROM DATE++"_%YYDAT_",10,EE#"_$TR($G(%L1DAT11),"./","")_"++8,D,I"
 D ^%L1GET I %S=""!($G(%TO)="END")!($G(%TO)="UP") K %L1DAT01,%L1DAT02,%L1DAT11,%L1DAT12,%L1D1,%L1D2,%L1CALL Q
 I %TO="F7",$D(%L1CALL("PROG")) D ^%L1CALL(%L1CALL("PROG"),$G(%SCRN),$G(%L1CALL("VRB"))_",%L1CALL(""OUT"")") S %L1DAT11=$G(%L1CALL("OUT")) G Z1
 S %L1D1=$$^%L1DC(%L1DAT1,3)
 I $E(%L1D1)="?" S %SAY=" ! d`iby " X %XMSGV(1) G Z1
 S %L1DAT01=%L1DAT,%L1DAT11=%L1DAT1
Z2 U 0 S %GET="jix`z cr++"_%YYDAT_",45,HH#"_$TR($G(%L1DAT12,%L1DAT11),"./","")_"++8,D,I"
 I %ENGLISH S %GET="TO DATE++"_%YYDAT_",45,EE#"_$TR($G(%L1DAT12,%L1DAT11),"./","")_"++8,D,I"
 D ^%L1GET G:%S=""!($G(%TO)="END")!($G(%TO)="UP") Z1
 I %TO="F7",$D(%L1CALL("PROG")) D ^%L1CALL(%L1CALL("PROG"),$G(%SCRN),$G(%L1CALL("VRB"))_",%L1CALL(""OUT"")") S %L1DAT12=$G(%L1CALL("OUT")) G Z2
 S %L1D2=$$^%L1DC(%L1DAT1,3)
 I $E(%L1D2)="?" S %SAY="! d`iby " X %XMSGV(1) G Z2
 S %L1DAT02=%L1DAT,%L1DAT12=%L1DAT1
 I %L1D2<%L1D1 N %YY0 S %YY0=%YY S %SAY=" ! d`iby " W *7 X %XMSGV H 2 S %SAY="         " W *7 X %XMSGV S %YY=%YY0 G D
 K %L1CALL Q
YM K YYMM N YY,MM S YY=$P($$^%L1DC($H,1),".",3),MM=$P($$^%L1DC($H,1),".",2)
 I $D(%RNG("YMPREV")),MM=1 S YY=YY-1,MM=12
 I $D(%RNG("YMPREV")),MM>1 S MM=MM-1
 S %GET=":dpy++"_%YY_",70,HH#"_YY_"++2,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S YY=%S I YY<80,YY>50 W *7 G YM
YM1 S %GET=":yceg++"_%YY_",60,HH#"_MM_"++2,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") YM
 S MM=$TR($J(%S,2)," ",0) I MM>12!(MM<1) W *7 G YM1
 S YY=$TR($J(YY,2)," ",0)
 S YYMM=YY_MM
 K %RNG Q
R N %RNGZ,%RNGX ;
R1 S %RNGZ=%RNG("Z")_"n"
 S %RNGX=$G(%RNG("X"),70) D RG
 D ^%L1GET
 Q:$G(%TO)="END"!($G(%TO)="UP")
 S @("ME"_$G(%RNG("V"))_"=%S")
 S %RNG("O")=%S
 S %RNGZ=%RNG("Z")_" cr" S %RNGX=%RNGX-$L(%RNGZ)-$G(%RNG("PAR"),2)-11 D RG
 D ^%L1GET G:$G(%TO)="END"!($G(%TO)="UP") R1
 S @("AD"_$G(%RNG("V"))_"=%S")
 K %RNG
 Q
RG ;
 S %GET=%RNGZ_"++"_$G(%RNG("Y"),%YY)_","_$G(%RNGX,70)_",HH,,"_$G(%RNG("RB"))_"#"
 S %GET=%GET_$G(%RNG("O"))_"++"_$G(%RNG("PAR"),"2,E,I")
 S %GET=%GET_"++"_$G(%RNG("CIST"))_"++"_$G(%RNG("HELP"))
 S %GET=%GET_"++"_$G(%RNG("FILE"))_"++"_$G(%RNG("C"))
 Q
RR S %FL=1,%TO=""
 N TYP,%RNGX,%RNGY,%RNGO,%MERNGV,%RNGER,%MER,%ADR
 S %MER="ME"_$G(%RNG("V")),%ADR="AD"_$G(%RNG("V"))
 S %SAY="" X %XMSGN
 S:'$D(@%MER) @%MER="" S:'$D(@%ADR) @%ADR=""
R0 S TYP=$P($P($P(%RNG,"#",2),"++",2),",",2)
 I $P($P($P(%RNG,"++",2),",",3),"#")="HH",%ENGLISH D
 .N CRD S CRD=$P($P(%RNG,"++",2),"#")
 .S CRD=$P(CRD,",")_","_(80-$P(CRD,",",2))_",EE"_$P(CRD,",",4,24)
 .S %RNG=$P(%RNG,"++")_"++"_CRD_"#"_$P(%RNG,"#",2,25)
 S %MERNGV=$G(@%MER) ; -------- %RNG("V") - VALUE NAME
 I TYP="D",$TR(%MERNGV,"./","")?6N S %MERNGV=$E(%MERNGV,5,6)_$E(%MERNGV,3,4)_$E(%MERNGV,1,2)
 I TYP="D",$TR(%MERNGV,"/.","")?8N S %MERNGV=$E(%MERNGV,7,8)_$E(%MERNGV,3,4)_$E(%MERNGV,1,2)
 I TYP="D",%MERNGV?.P,'$D(%L1GET) S %MERNGV="  "_$$MMGG($H)
 I TYP="D",%MERNGV?5N S %MERNGV=$$^%L1DC(%MERNGV,1) I %MERNGV?.P S %MERNGV="  "_$$MMGG($H)
 I TYP="T",$G(%ADRNGV)>24 S %ADRNGV=%ADRNGV-24
 S %GET=$P(%RNG,"++")_"n++"_$P($P(%RNG,"++",2,20),"#")_"#"_$G(%MERNGV)_$P(%RNG,"#",2,20)
 I %ENGLISH S %GET=" FROM "_$P(%RNG,"++")_"++"_$P($P(%RNG,"++",2,20),"#")_"#"_$G(%MERNGV)_$P(%RNG,"#",2,20)
 D ^%L1GET
 Q:$G(%TO)="END"!($G(%TO)="UP")  ;I "/.>u"[%S,$L(%S) S %TO="END1" Q
 I TYP="D" S @%MER=%L1DAT
 E  S @%MER=%S
 I TYP="D",%L1DAT?.P,'$D(%L1GET),$D(%RNG("DAT")) W *7,*7,*7 G RR
 I $D(%RNG("ME")) X %RNG("ME")
 I %TO="DW" Q
 I $G(%RNGER) S %RNGER=0 G R0
 S %TO=""
 ;I $D(%RNGREST) X %RNGREST
RR1 S %RNGX=$P($P(%RNG,"++",2),",",2)-$L($P(%RNG,"++"))-$P($P(%RNG,"#",2),"++",2)-4
 I %ENGLISH S %RNGX=$P($P(%RNG,"++",2),",",2)+$L($P(%RNG,"++"))+$P($P(%RNG,"#",2),"++",2)+7
 I %RNGX>45,'%ENGLISH S %RNGX=45
 I $D(%L1GET) S %RNGO="" G RR2
 I $G(@%ADR)="" S %RNGO=$S(TYP="D":$$^%L1DC(@%MER,1),1:%S)
 E  S %RNGO=$G(@%ADR)
 ;I TYP="D",%RNGO?6N S %RNGO=$E(%RNGO,5,6)_$E(%RNGO,3,4)_$E(%RNGO,1,2)
 I TYP="D",%RNGO?5N S %RNGO=$$^%L1DC(%RNGO,1)
 I "/.>u"[%S,$L(%S) S %TO="END1" Q
RR2 I $P($P(%RNG,"#"),",",6)="C" S $P(%RNG,",",6)=$E($P(%RNG,",",6),2,255)
 S %FL=1 S %GET=$P(%RNG,"++")_" cr++"_$P($P(%RNG,"++",2),",")_","_%RNGX_","_$P($P($P(%RNG,"#"),"++",2),",",3,20)_"#"_%RNGO_"++"_$P($P(%RNG,"#",2),"++",2,25)
 I %ENGLISH S %GET=" TO "_$P(%RNG,"++")_"++"_$P($P(%RNG,"++",2),",")_","_%RNGX_","_$TR($P($P($P(%RNG,"#"),"++",2),",",3,20),"H","E")_"#"_%RNGO_"++"_$P($P(%RNG,"#",2),"++",2,25)
 D ^%L1GET G:$G(%TO)="END"!($G(%TO)="UP") RR
 I TYP="D" S @%ADR=%L1DAT
 E  S @%ADR=%S
 I TYP="D",%L1DAT?.P,'$D(%L1GET),$D(%RNG("DAT")) W *7,*7,*7 G RR1
 I $D(%RNG("AD")) X %RNG("AD")
 I TYP="T" D
 .I @%ADR?4N S @%ADR=$E(@%ADR,1,2)_":"_$E(@%ADR,3,4)
 .I @%MER?4N S @%MER=$E(@%MER,1,2)_":"_$E(@%MER,3,4)
 .S @%MER=$$TDEC^%L1TIME(@%MER)
 .S @%ADR=$$TDEC^%L1TIME(@%ADR)
 .I @%ADR<@%MER S @%ADR=@%ADR+24
 I TYP="D",$$^%L1DC(@%ADR,4)<$$^%L1DC(@%MER,4) W *7 G RR
 I TYP'="D",@%ADR<@%MER W *7 G RR
 I $G(%RNGER) S %RNGER=0 G RR1
 K %RNG ;I $D(%RNGREST) X %RNGREST
 Q
MMGG(H) ;
 Q $E($TR($$^%L1DC($H,1),"/.",""),3,6)

%L1RPR
%L1RPR ; REPARATION         [ 11.06.02  9:11 AM ] [ 01/15/97 12:36 PM ]
 K
 I '$D(%POSIC) D ^%L1C
 K MM
 S MM(0)="oewiz zeipkez"
 S MM(1)=" d ` i v i        "
 S MM(2)="DDP - zyx zxivre zlrtd"
 S MM(3)="GBMAINT - mivaw oewiz"
 S MM(4)="RECOVER - miwela xefgiy"
 S MM(5)="zkxrn avn"
 S MM(6)="KILLJOB - miae'b zwqtd"
 S MM(7)="VALIDATE - DATABASE zwica"
 S MM(8)="UCIMGR - zevign zldpd"
 S MM(9)="DBFIX - DATABASE oewiz"
 S MM(10)="INS - zetew zkx`n mixhnxt"
 S MM(11)="VERIFY - miwela zwica"
 S MM(12)="%L1DIR - zevign belhw zxiny"
 S MM(13)="mivaw belhw zxiny"
 S MM(14)="ltp mipezp qiqa m` mivaw xefgy"
 S MM(15)="miwelaa lhean vaew yetig"
 ;  S MM(17)="lhean vaew zbvd"
 S MM(16)="(14 divte` ixg` ) lhean vaew xefgy"
 S MM(17)="SYSGEN - MUMPS zkxrn zxcbd"
 S MM(18)="KILL GLOBAL PROTECTION"
 S MM(19)="RESET DEVICE"
 S MAC="MM" D ^%L2MENU Q:%I=1
 D  U $P:(NOECHO:NOWRAP) R !!,"<>",Y W %HBR G %L1RPR
 .W %ENG N (%I) U $P:(ECHO:WRAP)
 .I %I=2 D ^DDP Q
 .I %I=3 D ^GBMAINT Q
 .I %I=4 D ^RECOVER Q
 .I %I=5 D ^%SS Q
 .I %I=6 D ^%SS,^KILLJOB Q
 .I %I=7 D ^VALIDATE Q
 .I %I=8 D ^UCIMGR Q
 .I %I=9 D ^DBFIX Q
 .I %I=10 V 2:$J:+$ZU("MER"):2 D ^INS V 2:$J:1:2
 .I %I=11 D ^VERIFY Q
 .I %I=12 D ^%L1C S %SAY="... oznd `p` " X %XMSGV(1) D ^%L1DIR S %SAY=" #DIR uaewa xnyp belhw " X %XMSGV Q
 .I %I=13 D ^%L1C S %SAY=" ... oznd `p` " D I^%L1DIR  S %SAY=" #DIR1 uaewa xnyp belhw " X %XMSGV Q
 .I %I=14 V 2:$J:+$ZU("MER"):2 D  V 2:$J:1:2
 ..D ^PLREST
 .I %I=15 D ^%L1SGK Q
 .; I %I=17 D ^%L1C,VIEW^%L1REST Q
 .I %I=16 D ^%L1C,^%L1REST Q
 .I %I=17 D ^SYSGEN Q
 .I %I=18 D ^%L1DPRO Q
 .I %I=19 D DVR Q
 .Q
 Q
DVR D ^%L1C X %chista
 S %GET="uexr xtqn++8,63,HH#++2,E,I" D ^%L1GET Q:%S=""!(%TO="END")
 N PORT
 S PORT=%S
 S %Q("Z")="df uexra miynzynd zeniynd lk cixedl"
 S %Q("X")=20,%Q("Y")=10 D ^%S2ASK I 'YES G DVR1
 D ^%L1DV8
 I $G(%DV(PORT)) D
 .I $ZV["4.0." D KILL^%L1KLJ8(+%DV(PORT),1) Q
 .I $ZV["4.4." D KILL^%L1KLJ16(+%DV(PORT),1,2) Q
DVR1 D ^%L1DVRES(PORT)
 S %SAY="<DONE>" X %XMSGN
 Q

%L1RPRTC
%L1RPRTC(%PORT) ; [ 20.08.07 14:46 ] [ 13.08.07 13:35 ] [ 04.04.07 10:45 ]
 N %PRT,%TYPCRT S %PRT="",%TYPCRT="PC" D WAIT
 U %PORT:(NOWRAP:NOECHO:NOESC:NOTERM:NOCENABLE:NOFILTER)
 ;N I F I=1:1:1000 R *A:1 Q:'$T
 W $C(0,0,0,0,0,0,0,0,0)
 W "UM"_$C(0,4,0,0,0,0,0,0) ;-- UNTOUCH
 ;;S ^A=$G(^A)+1,^A(^A)=$$POS^P1CRDTCH
 I POS="?" D
 .U %PRT D REST^%L3MBGG
 Q
WAIT ;
 S POS=$$POS^P1CRDTCH
 I POS="?" D  Q
 .S %PRT=$P U %PRT
 .D SAVE^%L3MBGG
 .W #!!!!!!!!!!!?36,"WAIT ..."
 ;
 Q

%L1RR
%L1RR ;DJM;MSM: ROUTINE RESTORE; [ 11/01/93  1:23 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. (c) 1985
 S $ZT="S zr=$R "_^ZT_"ZG "_$ZL_":ERR^%L1RR",NAME=" ROUTINE ",ZAP=0 W %ENG ; ---
 W !?10,$C(27,91,55,109)," ",$$^%L1ZU(0)," ",$C(27,91,48,109),"   ",$P($P($ZV,","),"-")," - Routine Restore Utility "
 D IN^%SDEV Q:$D(QUIT)
INT ; Bypass device selection, %DEV=input dev, must be already open
 S %TAP=%DEV>46&(%DEV<51)
 S (%RNUM,%C,%S,QUIT)=0,%SEQ=1 D:%TAP %SET^%MTCHK
 U %DEV R %TIME,%CMT G:%TIME="" L4 I %TIME?1"DISK#"1N.N S %TIME=%CMT R %CMT
 U 0 W !,"Routine(s) saved at ",%TIME,!,"Header comment is: ",%CMT
L1 U 0 R !,"Selective restore? (allows rename) <N>: ",%RT I %RT="" W "NO" S %RT=1 G L2
  ; ---
  S %FNN=$P(%FN,".")_"."_$E($P(%FN,".",2),1,2)_"#" U %DEV D:$$^%L1ZOS(10,%FNN)'>0 DIR^%L1RGR1 G:$$^%L1ZOS(10,%FNN)>0 ZAP
  U 0
  ; ---
 I $E("YES",1,$L(%RT))=%RT W $E("YES",$L(%RT)+1,3) S %RT=0 G L2
 I $E("NO",1,$L(%RT))=%RT W $E("NO",$L(%RT)+1,2) S %RT=1 G L2
 I $E("yes",1,$L(%RT))=%RT W $E("yes",$L(%RT)+1,3) S %RT=0 G L2
 I $E("no",1,$L(%RT))=%RT W $E("no",$L(%RT)+1,2) S %RT=1 G L2
 G:%RT="^"!(%RT="^Q") EXIT
 I %RT'="?" W *7,"  ??" G L1
 W !,?5,"If you chose selective restore (reply YES), you will be prompted"
 W !,?5,"for each routine. You must then respond to each prompt to restore"
 W !,?5,"the routine, possibly with a different name."
 W !,?5,"Enter NO to restore all routines that were saved."
 W !,?5,"Enter ^  to exit without restoring any routines.",!
 G L1
L2 I %RT U 0 W !,"Restoring...",!
 S $ZT="S zr=$R "_^ZT_"ZG "_$ZL_":ERR1^%L1RR"
 F %I=1:1 U %DEV R %RN Q:%RN=""  D:%RN="*EOF*" NEXTFILE Q:QUIT  D RESTORE Q:QUIT
 I 'QUIT,%TAP U %DEV I @(%MTTMK_"=0") W *12
L4 U 0 W !!,%RNUM," Routine",$S(%RNUM=1:"",1:"s")," restored."
 I $D(%DEV),%DEV>58,%DEV<63 U %DEV S %RN=$ZA U 0 W !,"Last block read in: ",%RN
EXIT ;
 I $D(%DEV) I %DEV'=$P C %DEV
 C 63 I $D(%TAP) D:%TAP %KILL^%MTCHK
 K %DEV,%I,%RN,%RNN,%RR,%RNUM,%RT,%PCODE,%SBP,%S,%C,%RC,%FN,%SEQ,%SIZE,%X,%ZA,QUIT,%TAP,%TIME,%CMT Q
RESTORE ;
 I %RT S %RNN=%RN G R1
 U 0 W !,"Routine: ",$P(%RN,":"),?19 S %RNN=%RN I ZAP,R'[%RN U 0 W *7," ERROR !!! ",*7 H 1 W *7 Q  ; ---
 I %S G:%RC]%RN R0 S %S=0
 I %C G:%RC]%RN R1 S %C=0
 R "Restore (Y/N/R/S/C) <N>? ",*%RR S:%RR>96&(%RR<123) %RR=%RR-32 I %RR=13 S %RR=78 W "N"
 G R1:%RR=89,R0:%RR=78,R3:%RR=82,R5:%RR=83,R7:%RR=67
 I %RR=94 S QUIT=1 Q
 I %RR'=63 W *7,"  ??" G RESTORE
 W !!,"Enter 'Y' to restore the routine using the same name."
 W !,"Enter 'N' to bypass restoring this routine."
 W !,"Enter 'R' to restore the routine and rename it."
 W !,"Enter 'S' to skip without restoring up to a specified routine."
 W !,"Enter 'C' to continue restoring without prompts up to a specified routine."
 W !,"Enter '^' to end the entire restore process.",!
 G RESTORE
R0 D PCSKIP I %PCODE U %DEV F  R %I Q:%I=""!$ZC
 U 0 W " --Not restored" W:%RT ! Q
R1 ;
 I $ZN=$P(%RNN,":") U 0 W !,"  ***  ",$ZN," cannot restore over itself" G R0
 D PCZLOAD I %PCODE U %DEV X "ZL  ZS @%RNN"
 S %RNUM=%RNUM+1
 U 0 I %RT W:'(%RNUM-1#8) ! W ?%RNUM-1#8*10,%RNN Q
 W " --Restored" Q
PCZLOAD I $P(%RN,":",2)="" S %PCODE=1 Q
 D ZLOAD Q
R2 W !,?44,"R"
R3 R "ename to: ",%RNN I %RNN=$ZN W !,"  *** Cannot restore ",$ZN," over itself",*7 G R2
 I %RNN="?" W !,"Enter the new name under which to restore the routine,",!,"or '^' to return to the previous question." G R2
 I $L(%RNN)<9,%RNN?1A.AN!(%RNN?1"%".AN) G R1
 I %RNN="^" G RESTORE
 W *7,"  Invalid" G R2
R4 W !,?44,"S"
R5 R "kip until: ",%RC
 I %RC="?" W !,"Enter the routine name where the skipping should stop,",!,"or '^' to return to the previous question" G R4
 I $L(%RC)<9,%RC?1A.AN!(%RC?1"%".AN) S %S=1 G RESTORE
 I %RC="^" G RESTORE
 W *7,"  Invalid" G R4
R6 W !,?44,"C"
R7 R "ontinue until: ",%RC
 I %RC="?" W !,"Enter the routine name where restoring should stop,",!,"or '*' to restore all remaining routines,",!,"or '^' to return to the previous question" G R6
 I $L(%RC)<9,%RC?1A.AN!(%RC?1"%".AN) S %C=1 G RESTORE
 I %RC="^" G RESTORE
 I %RC="*" S %RT=1 W !,"Restoring...",! G RESTORE
 W *7,"  Invalid" G R6
ERR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." G L4
 Q
ERR1 ;
 I $F($ZS,"<MTERR>") G ERRTAP
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
PCSKIP ;
 I $P(%RN,":",2)="" S %PCODE=1 Q
 N (%DEV,%RNN,%PCODE) S %ZERO=$C(0,0,0,0)
 I %DEV>50,%DEV<55 D SKIPHFS S %PCODE=0 Q
 I %DEV>58,%DEV<64 D SKIPSBP S %PCODE=0 Q
 I %DEV>46,%DEV<51 D SKIPTAP S %PCODE=0 Q
 U 0 W !!,"*** Cannot restore compiled routines through device #",%DEV,!,*7
 W 1/0 Q
SKIPHFS S %DLMS=24 D GETDLM U %DEV:(:::::"") D SKIPRTN U %DEV:(:::::%DLMS) Q
SKIPSBP S %DLMS=20 D GETDLM U %DEV:(:::"":"V") D SKIPRTN U %DEV:(:::%DLMS:"S") Q
SKIPTAP S %DLMS=44 D GETDLM U %DEV:("N":::"") D SKIPRTN U %DEV:(:::%DLMS) Q
SKIPRTN F %X=1:1 R %BLK#1024 Q:$E(%BLK,1013,1016)=%ZERO  Q:$ZC
 S %PCODE=0 Q
ZLOAD N (%DEV,%RNN,%PCODE)
 S %RNN=$P(%RNN,":") X "ZR  ZI %RNN_"" "" ZS @%RNN" ;create dummy routine
 S %BN=$ZBN(^ (%RNN)),%BNHDR=%BN,%PTR=#1000000
 S %UI=$$^%L1ZU(0),%UI=$ZU($P(%UI,","),$P(%UI,",",2)),%VGI=$P(%UI,",",2),%UI=+%UI,UCITAB=$V($V($V(10,-5)+(%VGI*4))+20)
 S RP=$V(UCITAB+(%UI-1*32)+20,-3,2)*512 K UCITAB,%UI,%VGI
 O 63::0 E  U 0 W !,"Waiting for device 63" O 63
 G LOADHFS:%DEV>50&(%DEV<55),LOADSBP:%DEV>58&(%DEV<64),LOADTAP:%DEV>46&(%DEV<51)
 U 0 W !!,"*** Cannot restore compiled routines through device #",%DEV,!,*7
 C 63 S %PCODE=1 Q
LOADHFS S %DLMS=24 D GETDLM U %DEV:(:::::"") D XFER U %DEV:(:::::%DLMS) Q
LOADSBP S %DLMS=20 D GETDLM U %DEV:(:::"":"V") D XFER U %DEV:(:::%DLMS:"S") Q
LOADTAP S %DLMS=44 D GETDLM U %DEV:("N":::"") D XFER U %DEV:(:::%DLMS) Q
XFER R %BLK#1024
XFER10 V 0:0:%BLK:1024:1 G:'$ZC XFER20:$V(1012,0,4) ;continuation block present
 S %BNTAB($V(1016,0,4))=%BN V 1016:0:%BN:4,-%BN,%BNHDR
 F %Z=18,24 S %X=$V(%Z,0,4),%Y=%X#%PTR,%X=%X\%PTR,%Y=%X*%PTR+%BNTAB(%Y) V %Z:0:%Y:4
 V -%BNHDR C 63 S %PCODE=0 Q
XFER20 ;there will be a continuation block
 S %BNX=$ZBN("",RP),%BNTAB($V(1016,0,4))=%BN
 V 1016:0:%BN:4,1012:0:%BNX:4,-%BN S %BN=%BNX G XFER
GETDLM S %SV=$V(44),%SVA=%SV+$V(%SV+8,-3,2),%DDBTB=$V(%SVA+28),%DDB=$V(%DEV*4+%DDBTB)
 S %DLMS=$V(%DDB+%DLMS+1,-3,$V(%DDB+%DLMS,-3,1),1) Q
ERRTAP U %DEV I @%MTTMK U 0 W !,"Unexpected tape mark encountered.",! G L4
 U 0 W !,$ZS,!,"Tape status:" D %ERR^%MTCHK Q
NEXTFILE ;
 G:%TAP NEXTTAPE
 C %DEV U 0 W !,"Sequence #",%SEQ," restored"
 W !,"Please put sequence #",%SEQ+1," into the drive and"
 S %SEQ=%SEQ+1
NEXTFIL1 R !,"Press <RETURN> when ready",%X
 I %X?1"?".E W !!,"Press <RETURN> to continue restoring from sequence #",%SEQ,!,"or abort the restore by entering 'control C'" G NEXTFIL1
 O %DEV:%FN U %DEV I '$ZA R %X I '$ZC
 U 0 E  W !!,"Cannot access ",%FN,", please correct" G NEXTFIL1
 I %X?2NP1":"2N1" ".E S %X=1
 I %X?1"DISK#"1N.N S %X=$P(%X,"#",2)
 I %X'=%SEQ W !!,"Out of sequence, this file is #",%X,", please correct" G NEXTFIL1
 I %RT U 0 W !,"Restoring...",!
 U %DEV R %RN S QUIT=0 Q
NEXTTAPE ;
 U 0 W !,"End of tape sequence number ",%SEQ," has been reached."
 W !,"After this tape rewinds, mount the next tape.",!
 S %SEQ=%SEQ+1
NT0 U %DEV W *16 U 0
NT1 W !,"Enter 'GO' when tape sequence number ",%SEQ R " is ready: ",%X
 I %X="?" W !,"Mount the next tape (sequence number ",%SEQ,") and enter 'GO' when it is ready.",!,"Or enter '^' to abort the restore.",! G NT1
 I %X["^" S QUIT=1 Q
 I %X'="GO",%X'="go" W *7,"  ??" G NT1
 U %DEV W *10 I @(%MTON_"=0") U 0 W *7,!,"Tape is not ready" G NT1
 R %I,%RR
 S %X=$P(%I,%TIME_"  (sequence ",2) I %X'?1.N1")" U 0 W !,"This is not a correct tape:",!,%I,!,%RR,! G NT0
 G:+%X=%SEQ NT4
 U 0 W !,"This is sequence number ",+%X,", not number ",%SEQ
NT2 W !,"Do you want to proceed with number ",+%X R "? <N> ",%I S:%I="" %I="N"
 I %I="?" W !,"Enter 'YES' to continue restoring with tape number ",+%X," instead of number ",%SEQ,!,"Enter 'NO' if you want to mount the correct tape",!,"Enter '^' to end the restore." G NT2
 I %I["^" S QUIT=1 Q
 S %I=$ZB(%I,"_",1) I %I=$E("NO",1,$L(%I)) G NT0
 I %I'=$E("YES",1,$L(%I)) W "  ??" G NT2
 S %SEQ=+%X
NT4 I %RT U 0 W !,"Restoring...",!
 U %DEV R %RN S QUIT=0 Q
 Q
ZAP ;
  K ^L1ADR($J) S ZAP=1
  O %DEV:(%FNN:"R") U %DEV F  R STR Q:STR=""  S ^L1ADR($J,$P(STR,"|",2))=$P(STR,"|")
  C %DEV U 0 S %RT=0 S NAME=" ROUTINE "
  ; W !?5,"Routine : " R %ROU Q:%ROU=""  I '$D(^L1ADR($J,%ROU)) W "   No Routine...",*7 G Z
  D ^%L1RGR1 Q:%NAM=""
Z S %RN=%NAM O %DEV:(%FN:"R":^L1ADR($J,%RN)) U %DEV R R ; I R'[%RN U 0 W *7," ERROR ",*7 H 1 W *7
  D RESTORE I %RR'=94 S %NAM=$O(^L1ADR($J,%RN)) Q:%NAM=""  G Z
  ; D RESTORE I %RR'=94 S %NAM=$O(^L1ADR($J,%RN)) S:%NAM="" %NAM=$O(^L1ADR($J,"")) G Z
  ; --- E  D RESTORE I %RR'=94 S %NAM=$O(^L1ADR($J,%RN)) Q:%NAM=""  G Z
  S GLO=%NAM D PROG^%L1RGR1 Q:%NAM=""  G Z
  W *27,"["_(LIN+2)_";"_(COL-1*10+1)_"H" D WRIN^%L1RGR1,MAIN^%L1RGR1 Q:%NAM=""  G Z
  Q

%L1RS
%L1RS ;DJM;ROUTINE SAVE; [ 20.07.26 18:07 ] [ 05.03.21 12:43 ] [ 21.05.03 17:01 ] 
SELECT ;
 I $D(^%L1SAVE($J,"NAME")) S NAME=^("NAME"),ANS=2 K %ZR G S21
 U $P R !!,"SAVE DATE - 1, SAVE SET - 2 , SAVE NORMAL - 3 : ",ANS Q:ANS=""
 I ANS'=1,ANS'=2,ANS'=3 W *7," ???" G SELECT
 I ANS=3 K %ZR G RO1
 G:ANS=2 S2
 ;
 F  R !!,"HOW MANY DAYS:",NDAY Q:NDAY=""  Q:NDAY?1N.N  W *7," ???"
 G:NDAY="" SELECT
 S N=$H-NDAY-1 K %ZR S %ZR=0
 F  S N=$O(^%ERGS(N)) Q:N=""  S N1="" F  S N1=$O(^%ERGS(N,N1)) Q:N1=""  D
 .I $E(N1)'="^",N1'["." S %ZR(N1)=""
RO S N1="" F  S N1=$O(%ZR(N1)) Q:N1=""  S %ZR=%ZR+1
 U $P W !!?30,$$^%L1ZU(0),!!
 I $D(%ZR)>9 S %ZR0=$G(%ZR) S %ZR="?D" D help^%RSEL W ! S %ZR=%ZR0
 Q:'$D(%ZR)
RO1 U $P W !
 D
 .       n ctrap,exp s ctrap=$C(3),exc="zg "_$zl_":EXIT^%RO"
 .       i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%RO" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%RO")
 .       n ename,fl,l,lc,out,r,rn,rf,src,x,y,t1,%ZC,%ZD,%ZH
 .       s (fl,lc,r)=0,out=1
 .       d main
 Q
 ;
S2 K %ZR
 R !!,"  NAME :",NAME
 S %ZE=".m"
 D init^%RSEL
 I NAME="?" D  G S2
 .S (N,N0)="%RS" F I=1:1  S N=$O(^SHP(N)) Q:N=""  Q:N'[N0  W !,$P(N,N0,2)," ",$G(^(N)) I '(I#18) R "<>",Y Q:Y="."
 I '$D(^SHP("%RS"_NAME)) W *7," -- NOT EXIST !!! " G S2
S21 S N="" F  S N=$O(^SHP("%RS"_NAME,N)) Q:N=""  S %ZR=$G(^(N)) Q:%ZR=""  S rd=0 D work^%RSEL
 G RO
 ;
main
        s %ZR="" d CALL^%RSEL
        i %ZR=0 w !,"No routines selected" q
        f  d  q:$l(%ZD)
        . r !,"Output device: <terminal>: ",%ZD,!
        . i '$l(%ZD) s %ZD=$p q
        . i $E(%ZD)="." S %ZD="/home/gtmuser/ppj-transfer/"_$E(%ZD,2,255)
        . i %ZD="^" q
        . i %ZD="?" d  q
         . . w !!,"Select the device you want for output"
         . . w !,"If you wish to exit enter a carat (^)",!
         . . s %ZD=""
        . W "%ZD="_%ZD,!
        . i $zparse(%ZD)="" w "  no such device" s %ZD="" q
        . o %ZD:(newversion:recordsize=2**20:exception="g noopen"):0
        . i '$t  w !,%ZD," is not available" s %ZD="" q
        . q
noopen  . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
        q:%ZD="^"
        i 'fl d
        . r !,"Header Label: ",%ZH
        . r !,"Strip comments <No>?: ",%ZC
        . i $l(%ZC),"\YES"[("\"_$tr(%ZC,"yes","YES")) s %ZC=0
        . e  s %ZC=1
        w !
        d work^%RO
        q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1RSAND
%L1RSAND ;CDS;ROUTINE SEARCH; [ 05/06/99  8:54 AM ] [ 11/18/92  10:00 AM ]
 ;Copyright Micronetics Design Corp. @1984
 ;ONE OR MORE STRINGS MAY BE SELECTED
 ;A PROGRAM IS NOTED IF ANY OF THE STRINGS ARE FOUND IN IT
 N (%LF)
 S %LF=0 ; DON'T USE LABELS IN DISPLAY
INT ;
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ERROR^%L1RSAND"
 W !?10,$P($P($ZV,","),"-")," - ","Routine Search Utility",!?16,$ZD($H,"DD/MM/YY")
 S %FLG=0 K %DEV
ASK1 U 0 K QUIT D INT^%RSEL I $D(QUIT) W:'%FLG !,"No routines selected" G EXIT
 S %FLG=1,%ST=0
ASK2 U 0 W !!,"Search for any of the following..."
ASK3 R !,"Search string: ",%X I %X="",'$D(%SE(1)) G ASK1
 I %X'="" S %ST=%ST+1,%SE(%ST)=%X G ASK3
 I $D(%DEV) C:%DEV'=$I %DEV
 D CRT^%SDEV G:$D(QUIT) EXIT
 W !! U 0 I %DEV'=$I U %DEV W:$Y #
 U %DEV W !,?22,"Routine search  " D ^%D
 W !,?24,"of ",$$^%L1ZU(0),?38 D ^%T
 W !,?18,"search for any of the following:",!
 F %I=1:1:%ST W ?(33-($L(%SE(%I))\2)),%SE(%I),!
 S %LK="F %I=1:1 S %T=$T(+%I) Q:%T=""""  S:$A(%T)'=32 %LA=$P($P(%T,"" ""),""(""),%LI=-1 S %LI=%LI+1 X %LK1 I %OK X %WR S %F=%F+1"
 S %LK1="S %OK=1 F %J=1:1:%ST I %T'[%SE(%J) S %OK=0 Q"
 I '%LF S %WR="W !,%CC,""+"",%I-1,"": "",%T"
 I %LF S %WR="W:'%F !!,%CC W !,%LA W:%LI ""+"",%LI W "": "",%T"
 S %ZL="ZL @%CC U 0 X:%DEV'=$I ""W:'(%K-1#8) ! W ?(%K-1)#8*10,%CC,""""  """""" U %DEV S %LI=0,%LA="""" X %LK"
RSEL ;
 S %CC="",%PCT=0,%FND=0,%F=0
RSEL1 ;
 S $ZT="S zr=$R X ^ZT ZG "_$ZL_":RSEL2^%L1RSAND"
 F %K=1:1 S %CC=$O(^UTILITY($J,%CC)) Q:%CC=""  X %ZL S %PCT=%PCT+1 S:%F %FND=%FND+1,%F=0
 W !!,?5,%PCT," Routine",$S(%PCT=1:"",1:"s")," processed, string(s) found in ",$S('%FND:"none",1:%FND)," of them."
 U 0 I %DEV'=$I U %DEV W !#
 K %SE S %ST=0 G ASK2
RSEL2 ;
 I $F($ZS,"<NOPGM>") W !,"Routine: ",%CC," not found." G RSEL1
 G ERROR
EXIT ;
 U 0 I $D(%DEV),%DEV'=$I C %DEV
 K %,%BLK,%CC,%DEV,%F,%FLG,%FND,%LK,%I,%J,%K,%PCT,%SE,%ST,%T,%X,QUIT Q
ERROR ;
 I $F($ZS,"CTRAP") U 0 W !!,"...Aborted." D EXIT
 Q
L S %LF=1 ; USE LABEL+OFFSET IN DISPLAY
 G INT

%L1RSDOS
%L1RSDOS  ;service@greystone.com ESM %RO;19920722 07:40;routine output [ 20.07.26 07:36 ] [ 
        ;last modified by R. Partridge
        ;invoke ^%RO to get interaction
        ;invoke CALL^%RO with %ZR - routine array,
        ;%ZC - strip comments, %ZD - device, %ZH - header label
        ;
        w !,"Routine Output - Save selected routines into RO file.",!
        i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%RO" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%RO")
        n ename,fl,l,lc,out,r,rn,rf,src,x,y,t1,%ZC,%ZD,%ZH,%ZR
        s (fl,lc,r)=0,out=1
        d main
        q
        ;
CALL    n ename,fl,l,lc,out,r,rn,rf,src,x,y,t1
        n:'$d(%ZC) %ZC n:'$d(%ZD) %ZD n:'$d(%ZH) %ZH
        s %ZC=$g(%ZC,1),%ZD=$g(%ZD,$p),%ZH=$g(%ZH),(fl,lc,r,out)=0
        o %ZD:(newversion):0 e  q
        i $d(%ZR)<10 d CALL^%RSEL q:$d(%ZR)<10
        d work
        q
        ;
FL      w !,"First Line Lister",!
        i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%RO" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%RO")
        n ename,fl,l,lc,out,r,rf,rn,src,x,y,t1,%ZC,%ZD,%ZH,%ZR
        s (lc,r)=0,(%ZC,fl,out)=1,%ZH="Routine First Line Lister Utility"
        d main
        q
        ;
main
        s %ZR="" d CALL^%RSEL
        i %ZR=0 w !,"No routines selected" q
        f  d  q:$l(%ZD)
        . r !,"Output device: <terminal>: ",%ZD,!
        . i '$l(%ZD) s %ZD=$p q
        . i $E(%ZD)="." S %ZD="/home/gtmuser/ppj-transfer/"_$E(%ZD,2,255)
        . i %ZD="^" q
        . i %ZD="?" d  q
         . . w !!,"Select the device you want for output"
         . . w !,"If you wish to exit enter a carat (^)",!
        . i $zparse(%ZD)="" w "  no such device" s %ZD="" q
        . o %ZD:(newversion:exception="g noopen"):0
        . i '$t  w !,%ZD," is not available" s %ZD="" q
        . q
noopen  . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
        q:%ZD="^"
        i 'fl d
        . r !,"Header Label: ",%ZH
        . r !,"Strip comments <No>?: ",%ZC
        . i $l(%ZC),"\YES"[("\"_$tr(%ZC,"yes","YES")) s %ZC=0
        . e  s %ZC=1
        w !
        d work
        q
        ;
work    i '$l(%ZH) s %ZH="%RO Routine Output Utility"
        u %ZD w $zd($h,"12:60  DD-MON-YEAR"),$C(13,10),$C(13,10) u $p
        s %ZR=""
        f  s %ZR=$o(%ZR(%ZR)) q:'$l(%ZR)  d out
        i 'fl u %ZD w $C(13,10)
        u $p
        i out d
        . w !!,"Total of ",lc," line",$s(lc=1:"",1:"s")
        . w " in ",r," routine",$s(r=1:".",1:"s."),!!
        c:%ZD'=$p %ZD u $p:(ctrap="":exc="")
        q
        ;
out     s rf=%ZR(%ZR)_$tr($e(%ZR),"%","_")_$e(%ZR,2,9999)_".m"
        o rf:(readonly:rewind:exception="g rnoopen")
        u rf:exception="g reof" r x s rn=$p($p($p(x,$c(9))," "),"(") d frmt
        i $tr(rn,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")'=%ZR s rn=%ZR
        i %ZD'=$p u $p w:$x>70 ! w %ZR,?$x\10+1*10
        s r=r+1,lc=lc+1 s:x="" x=rn
        u %ZD w rn,$C(13,10),x,$C(13,10)
        ; warning - loop terminated by an execption
        i 'fl f  u rf r x d frmt i $l(x) u %ZD w x,$C(13,10) s lc=lc+1
        f  u rf r x d frmt q:x'?.E1";".E1.A.E  u %ZD w x,$C(13,10) s lc=lc+1
        u %ZD w $C(13,10) c rf
        q
        ;
reof    u %ZD w $C(13,10) c rf
rnoopen i $zs'["EOF" w !,$p($zs,",",2,999),!
        q
frmt    i '%ZC s t1=0 d                         ;strip comments
        . f  s t1=$f(x,";",t1) q:'t1  i $l($e(x,1,t1),"""")#2 d  q
        . . i $e(x,t1)'=";" s x=$e(x,1,t1-2)
        i '$l(x) s x=" " q
        i $e(x)=";" s x=" "_x                   ;if lonely comment, provide ls
        s t1=0
        f  s t1=$f(x,$c(9),t1) q:'t1  d         ;convert <TAB>s to spaces
        . s x=$e(x,1,t1-2)_$j("",8-(t1-2#8))_$e(x,t1,9999)
        f t1=$l(x):-1:0 q:$e(x,t1)'=" "         ;strip trailing spaces
        s x=$e(x,1,t1)
        q
        ;
ERR     u $p w !,$p($zs,",",2,99),!
        s $ec=""
        ; Warning - Fall-though
EXIT    i $d(%ZD),%ZD'=$p c %ZD
        i $d(rf) c rf
        u $p:(ctrap="":exc="")
        q
 
 

%L1RSE
%L1RSE ;GT.M %RSE utility - find every occurrence of a string in one or more routines [ 10.09.07 16:31 ] [ 20.06.07 08:36 ] [ 19.11.05 18:47 ] [
 ;invoke ^%L1RSE to get interaction
 ;invoke CALL^%L1RSE with %ZF - string to find, %ZR - routine array or name, %ZD a device to receive a trail
 ;
 n cnt1,cnt2,cnt3,flen,fnd,gtmvt,h,i,o,out,outd,p,r,rl,sx,tics,x,xn,%ZC,%ZD,%ZF,%ZR
 w !,"Routine Search for Every occurrence",!
 s %ZC=0,(cnt1,cnt2,cnt3)=0,(out,outd)=1
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%L1RCE" u $p:(ctrap=$c(3):exc="zg "_$zl_":LOOP^%L1RCE")
 d MAIN^%L1RCE
 u $p:(ctrap="":exc="")
 q
CALL i '$l($g(%ZF)) q
 n %ZC,cnt1,cnt2,cnt3,flen,fnd,gtmvt,h,i,o,out,outd,p,r,rl,sx,tics,x,xn n:'$d(%ZD) %ZD
 s %ZD=$g(%ZD),(%ZC,cnt1,cnt2,cnt3,out)=0,outd=$l(%ZD)
 i $d(%ZR)<10 d ^%L1RSEL ; CALL^%RSEL
 d WORK^%L1RCE
 q
JSP N %JSP D JSPDIR G %L1RSE
JSPDIR S %JSP=$$WEBL^W3MAIN
 Q

%L1RSE0
%L1RSE ;CDS;ROUTINE SEARCH; [ 02/11/99 10:40 PM ] [ 11/18/92  10:00 AM ]
 ;Copyright Micronetics Design Corp. @1984
 ;ONE OR MORE STRINGS MAY BE SELECTED
 ;A PROGRAM IS NOTED IF ANY OF THE STRINGS ARE FOUND IN IT
 ;-------------------------------------------------------
 ; INPUT: ^UTILITY($J,  - PROGRAM LIST
 ;        ^L1RSE($P,  - FIND LIST
 ;-------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L1RSENP)
 S %LF=0 ; DON'T USE LABELS IN DISPLAY
INT ;
 S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ERROR^%L1RSE"
 I '$D(%L1RSENP) W !?10,$P($P($ZV,","),"-")," - ","Routine Search Utility",!?16,$ZHL(1,"dd-MON-yy")," ",$ZHL(2,"bh:mm P")
 S %FLG=0 K %DEV
ASK1 I '$D(^UTILITY($J)),'$D(%L1RSENP) U 0 W !,"No routines selected" G EXIT
 S %FLG=1,%ST=0
 K %SE N %N S %N="" F  S %N=$O(^L1RSE($P,"F",%N)) Q:%N=""  S %ST=%ST+1,%SE(%ST)=^(%N)
 I '$D(%SE) G EXIT
 I $D(%DEV) C:%DEV'=$I %DEV
 ;;D CRT^%SDEV G:$D(QUIT) EXIT
 S %DEV=$G(^L1RSE($P,"DEV"))
 I '$G(%DEV) S %DEV=$P
 I '$D(%L1RSENP) D
 .W !! U 0 I %DEV'=$I U %DEV W:$Y #
 .U %DEV W !,?22,"Routine search  " D ^%D
 .W !,?24,"of ",$$^%L1ZU(0),?38 D ^%T
 .W !,?18,"search for any of the following:",!
 .F %I=1:1:%ST W ?(33-($L(%SE(%I))\2)),%SE(%I),!
 S %LK="F %I=1:1 S %T=$T(+%I) Q:%T=""""  S:$A(%T)'=32 %LA=$P($P(%T,"" ""),""(""),%LI=-1 S %LI=%LI+1 F %J=1:1:%ST I %T[%SE(%J) X:'$D(%L1RSENP) %WR S %F=%F+1 Q"
 I '%LF S %WR="W !,%CC,""+"",%I-1,"": "",%T"
 I %LF S %WR="W:'%F !!,%CC W !,%LA W:%LI ""+"",%LI W "": "",%T"
 S %ZL="ZL @%CC U 0 X:%DEV'=$I&'$D(%L1RSENP) ""W:'(%K-1#8) ! W ?(%K-1)#8*10,%CC,""""  """""" U %DEV S %LI=0,%LA="""" X %LK"
RSEL ;
 S %CC="",%PCT=0,%FND=0,%F=0
RSEL1 ;
 S $ZT="S zr=$R X ^ZT ZG "_$ZL_":RSEL2^%L1RSE"
 F %K=1:1 S %CC=$O(^UTILITY($J,%CC)) Q:%CC=""  X %ZL S %PCT=%PCT+1 S:%F %FND=%FND+1,%F=0,^L1RSE($P,"O",%CC)=""
 S ^L1RSE($P,"FC")=%FND
 I '$D(%L1RSENP) D
 .W !!,?5,%PCT," Routine",$S(%PCT=1:"",1:"s")," processed, string(s) found in ",$S('%FND:"none",1:%FND)," of them."
 .I %DEV'=$I U %DEV W !#
 K %SE,%L1RSENP S %ST=0 U 0
 Q
RSEL2 ;
 I $F($ZS,"<NOPGM>") W !,"Routine: ",%CC," not found." G RSEL1
 G ERROR
EXIT ;
 U 0 I $D(%DEV),%DEV'=$I C %DEV
 K %,%BLK,%CC,%DEV,%F,%FLG,%FND,%LK,%I,%J,%K,%PCT,%SE,%ST,%T,%X,QUIT Q
ERROR ;
 I $F($ZS,"CTRAP") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
L S %LF=1 ; USE LABEL+OFFSET IN DISPLAY
 G INT

%L1RSEL
%L1RSEL ; [ 09.11.07 19:17 ] [ 08.11.07 13:16 ] [ 20.06.07 08:24 ]
 N A,I,N
 K ^l1rsel($J),%ZR
 F  U $P W !!,$S($D(%JSP):"JSP FILE",1:"ROUTINE")_" SELECTOR : " R A Q:A=""  D
 .I $D(%JSP) S A=$$FUNC^%LCASE(A)
 .I A="^D" D ^%RD Q
 .I A="?"!(A="^L") D  Q
 ..W !
 ..N N,I S N="" F I=1:1 S N=$O(%ZR(N)) Q:N=""  D
 ...W N_$J("",8-$L(N)),"  " I '(I#8) W !
 .
 .D SEL(A) Q
 ;
 S N="",I=0 F  S N=$O(%ZR(N)) Q:N=""  S I=I+1
 S %ZR=I
 ;;W # ZWR %ZR
 k ^l1rsel($J) Q
 ;
SEL(A) ;
 N DIR,A1,A2,D,I,N,%PR,%SH
 ;
 I A'["*",A'["-",A'[":" S DIR=$$EXIST(A) D:$L(DIR)  Q
 .Q:A=""
 .S %ZR(A)=DIR_"/" U $P W " -- 1 ROUTINE SELECTED" Q
 ;
 I A["*",A'["-" D  U $P W " -- "_%SH_" ROUTINES SELECTED" Q
 .S A1=A,%SH=0
 .I $E(A1)="%" S $E(A1)="_"
 .I A1'["." S A1=A1_$S($D(%JSP):".jsp",1:".m")
 .S ZROU=$ZROUTINE I $D(%JSP) S ZROU=%JSP
 .F D=1:1:$L(ZROU," ") S DIR=$P(ZROU," ",D) D HIP
 ;
 I $E(A)="-" D
 .N A1 S %SH=0
 .S A1=$E(A,2,200)
 .
 .I A1'="",$D(%ZR(A1)) K %ZR(A1) U $P W " -- 1 ROUTINE DE-SELECTED" Q
 .
 .I A1["*" D
 ..N A2 S A2=""
 ..
 ..I A1?1"*".E D  Q
 ...S A2=$P(A1,"*",2)
 ...I A2="" K %ZR D  Q
 ....U $P W " -- ALL ROUTINES DE-SELECTED" Q
 ...S N="" F  S N=$O(%ZR(N)) Q:N=""  I $E(N,$L(N)-$L(A2)+1,$L(N))=A2 K %ZR(N) S %SH=%SH+1
 ...U $P W " -- "_%SH_" ROUTINES DE-SELECTED" Q
 ..
 ..I A1?.E1"*" D  Q
 ...S A2=$P(A1,"*")
 ...I A2="" K %ZR D  Q
 ....U $P W " -- ALL ROUTINES DE-SELECTED" Q
 ...S N="" F  S N=$O(%ZR(N)) Q:N=""  I $E(N,1,$L(A2))=A2 K %ZR(N) S %SH=%SH+1
 ...U $P W " -- "_%SH_" ROUTINES DE-SELECTED" Q
 Q
 ;
HIP ;
 N FLRS S FLRS="l1rsel."_$J
 I $$^%L1ZOS(10,FLRS)'<0 C FLRS:(DELETE)
 I A1="" Q
 ZSY "ls "_DIR_"/"_A1_" > "_FLRS
 D ^%L1F2G(FLRS,"^l1rsel($J)")
 S N="" F  S N=$O(^l1rsel($J,N)) Q:N=""  D
 .S %PR=$G(^(N))
 .I %PR["/" S %PR=$P(%PR,"/",$L(%PR,"/"))
 .S %PR=$TR($P(%PR,$S($D(%JSP):".jsp",1:".m")),"_","%")
 .I $L(%PR) S %ZR(%PR)=DIR_"/",%SH=%SH+1
 C FLRS:(DELETE)
 Q
 ;
EXIST(%RO) ;
 N ZROU,D,OK S OK=""
 S ZROU=$ZROUTINE I $D(%JSP) S ZROU=%JSP
 I $E(%RO)="%" S $E(%RO)="_"
 I %RO'["." S %RO=%RO_$S($D(%JSP):".jsp",1:".m")
 F D=1:1:$L(ZROU," ") S DIR=$P(ZROU," ",D) D  Q:OK
 .I $$^%L1ZOS(10,DIR_"/"_%RO)'<0 S OK=DIR
 Q OK

%L1RSIS
%L1RSIS(TIME) ; [ 02.01.08 12:09 ] [ 29.10.06 18:42 ] [ 31.05.06 14:59 ]
 N MAX,%WT S %WT=0
 S MAX=19
 S CARDONLY=+$G(^[^UCI("MGG")]PL("PSWCARD"))
 I $$^%L1ZU(0)="MLY" S CARDONLY=0
 S SIS=$$READ(MAX,$G(^[^UCI("MGG")]PL("PSWCARD")))
 I $L(SIS)=12 S SIS=+$E(SIS,3,10)
 I $L(SIS)=18 S SIS=+$E(SIS,6,13)
 Q SIS
READ(MAX,CARDONLY) ;
 N %pn,J,S,TSTART,SIS S SIS=""
 S %pn=MAX X %levon
 U $P:(NOWRAP:NOECHO)
 S SIS="",%BEG=1 F J=1:1:MAX D READS Q:S=13!(S=27)!(S=0)  D
 .I J=1 S TSTART=$P($H,",",2)
 .I S=8!(S=127),$L(SIS)>0 S SIS=$E(SIS,1,$L(SIS)-1) W $C(8)," ",$C(8) S J=J-2 Q
 .I S=8!(S=127),'$L(SIS) Q
 .S SIS=SIS_$C(S) W "*"
 ;
 I $$TCHONLY D
 .D PUT^%L1NMB
 .S %SAY="" X %XMSGN
 ;
 I $G(CARDONLY),$D(TSTART),$P($H,",",2)-TSTART>+$G(TIME),$E(SIS,$L(SIS))'="!" S %SAY="  ! cala qihxk  " X %XMSGV(1) Q 0
 I $E(SIS,$L(SIS))="!" S SIS=$E(SIS,1,$L(SIS)-1)
 I S=27!(S=0) D  Q 0
 .F  R *S:0 Q:S=-1
 ;
 I $ZB=27!(SIS="") Q ""
 I $E(SIS)=";"!($E(SIS)="s") S SIS=$E(SIS,2,255)
 I $P($G(^[^UCI("MGG")]PL("BF")),"<>")=$E(SIS) S SIS=$E(SIS,2,20)
 I $P($G(^[^UCI("MGG")]PL("BF")),"<>",2)=$E(SIS,$L(SIS)) S SIS=$E(SIS,1,$L(SIS)-1)
 Q SIS
READS ;
 N %C I '$D(%WT) S %WT=.5
RS0 R *%C:%WT I %C>0 S S=%C,%WT=1 Q
 I $$TCHONLY D  S:'$D(S) S=0 Q
 .K %L1NMB("ALB") S %L1NMB("ZY")=$G(%YY,23)
 .W *27,7
RS1 .S %NMB=7,S=$$^%L1NMB("") S %WT=$S($G(%PRKB):1,1:.1) K %PRKB
 .I S="ENTER" S S=13 G ERS1
 .I S="ESC" S S=27 G ERS1
 .I S="DEL" S S=8 G ERS1
 .I $L(S)>1 G RS1
 .S S=$A(S)
ERS1 .
 .W *27,8
 ;
 R *S S %WT=1
 Q
TCHONLY(STAM) ;
 I $$TCHONLY^%L2MOUSE&$G(^P1PRM("SISTCH")) Q 1
 Q 0

%L1RTR
%L1RTR ; SEND ROUTINES [ 10/22/92  6:31 AM ]
 N
 U 0 S PRT=$P
 ;S %HBR=$C(27,41,74)
 S %ENG=$C(27,41,76)
 S BUF=255 S SOT=$C(4),STX=$C(2),ETX=$C(3)
 S X1="S %LENGTH=1 U 0 W *7,!!,""*** A NODE TOO LENGTH :"",$R,!!,RT,!! K ^RTR000(PRT,RNAME)"
 K ^RTR000(PRT),^UTILITY($J) D ^%RSEL
 S RNAME="" F  S RNAME=$O(^UTILITY($J,RNAME)) Q:RNAME=""  D
 .S CHKS=0,%LENGTH=0 X "ZL @RNAME F II=1:1 S RT=$T(+II) Q:RT=""""  X:$L(RT)>236 X1 Q:%LENGTH  S CHKS=CHKS+$ZCR(RT,1) S ^RTR000(PRT,RNAME,II)=RT"
 .Q:%LENGTH  S ^RTR000(PRT,RNAME,II)=$C(5)_$S($O(^UTILITY($J,RNAME))="":"END",1:"ENDR")_"*"_RNAME_"*"_II_"*"_CHKS_$C(6)
 I $D(^RTR000(PRT))<10 U 0 W !,"HASN'T ROUTINES FOR TRANSMISSION" Q
ASK R !!,"I/O PORT? > ",PORTN G:PORTN="" EXIT
 I $P=PORTN!'PORTN W !!,"CANNOT SELECT YOUR OWN DEVICE.",*7 G ASK
 U $P:(CENABLE) O PORTN::0 E  W *7,"..LINE IN USE..WAITING.." O PORTN W "READY"
 U PORTN I $ZB($ZA,2,1) U 0 W !,"DEVICE ",PORTN," IS AN OUTPUT ONLY DEVICE.",*7 G ASK
INIT U PORTN:(0::::257) U 0 W ! ;B 0
 S %DC=0 S %DT=0
P0 U PORTN W "AT"_$C(13)
 U PORTN R %Y:6 G:%Y[$C(1) EXIT S %CR=$ZB U 0 W:$L(%Y) %Y W:$T $C(%CR),! S %DT=%DT+1
 I %Y'["OK" H 2 G:%DT<12 P0 U 0 W *7,!!,"NO CARRIER" G EXIT
 S %DT=0
P1 U PORTN W "ATS0=2"_$C(13)
 R %Y:6 G:%Y[$C(1) EXIT S %CR=$ZB U 0 W:$L(%Y) %Y W:$T $C(%CR),! S %DT=%DT+1
 I %Y'["OK" H 2 G:%DT<12 P1 U 0 W *7,!!,"NO CARRIER" G EXIT
 U 0 R !!,"TELEFON NUMBER > ",NUMBER G:NUMBER="" EXIT W !
 U PORTN
 S ST="ATDP"_NUMBER_$C(13)
 F I=1:1:$L(ST) W $E(ST,I)
 H 10
 S OK=0
 F I=1:1:20 R A:5 D  Q:OK  S ^A(I)=A U 0 W !,A U PORTN
 .I $F(A,"CONN") S OK=1 Q
 .I $F(A,"BUS") S OK=2 Q
 .I $F(A,"BUS") S OK=2 Q
 .I $F(A,"NO CAR") S OK=3 Q
 .I $F(A,"NO DIAL") S OK=4 Q
 I OK'=1 U 0 W !,A G EXIT
 I OK=1 K ^A U 0 W !!,"MODEM IN USE ! "
 S ER=0 U PORTN
 S RNAME="" F  S RNAME=$O(^RTR000(PRT,RNAME)) Q:RNAME=""  D  Q:ER=10000
 .U 0 W !,"--",RNAME,! S OKSND=0 D SETSTR
 G:ER>999 ERREND
 U 0 W !!,"******** TRANSMISSION SUCCESFUL **********",!!
EXIT H 1 U PORTN W "ATH",$C(13) H 1 W "ATZ",$C(13) H 1
 U PORTN I $D(PORTN),PORTN?1N.N C PORTN
 Q
 ;-
ERREND ;
 U 0 W !!,"******** TRANSMISSION ERROR **********",!!
 I ER>1000 W !!,"*** END OF TRANSMISSION ***",! H 1 U PORTN W "+++",$C(13) H 1 C PORTN
 Q
 ;-
SETSTR ;
 U PORTN:(0::::257) S ER=0
 S N=-1 S N=$N(^RTR000(PRT,RNAME,N))
 I N'=-1 D SET I ER=1000 K ^RTR000(PRT,RNAME)
 X "F III=1:1:200"
 I N>0,ER<1000 G SETSTR
ENDP Q
 ;-
SET S ER=0,CNER=0,CNER1=0,OK=1
S1 S STRR=^RTR000(PRT,RNAME,N)
 S STROUT=SOT_RNAME_"*"_(OKSND+1)_"*"_$L(STRR)_"*"_$ZCR(STRR,1)_STX_STRR
 S BCC=$ZCR($E(STROUT,2,255),1)
 S STROUT=STROUT_ETX_BCC
 F JJ=1:1:BUF R *Z:0 E  Q
 W STROUT,$C(13)
 R ANS1:6 E  S OK=0 S ER=3,CNER=CNER+1 D ER G:CNER<5 S1 S ER=10000 Q
 I BCC'=$P(ANS1,ETX,2) D  S OK=0 G:ER=4 ENDST I ER=1000 D ERREND G ENDST
 .I $P($P(ANS1,STX,2),ETX)=($C(5)_"DOUBLE") K ^RTR000(PRT,RNAME,N) S ER=4 Q
 .I $P($P(ANS1,STX,2),ETX)=($C(5)_"SEQ") S ER=1000 Q
 .S ER=$P($P(ANS1,STX,2),ETX)
 I 'OK S CNER1=CNER1+1 D ER G:CNER1<20 S1 S ER=10000 Q
 S OK=1,OKSND=OKSND+1
 U 0 W RNAME_"*"_(OKSND+1)_"*"_STRR,! U PORTN
 K ^RTR000(PRT,RNAME,N)
ENDST ;
 U PORTN Q
 ;-
ER U 0 W !,"ERR: ",ER,! U PORTN
 Q
 ;-
DEB ZU 0 F J=1:1:$L(SS) W $$^%L1ZH($A($E(SS,J)))_" "
 ZU 0 W !
 U PORTN
 Q

%L1RTR1
%L1RTR1 ;RECEIVE PROGRAMMS VIA MODEM [ 05/23/99  5:29 PM ] [ 12/30/93  5:05 PM ]

%L1RV
%L1RV ; VIEW ROUTINES [ 20.04.07 13:44 ] [ 18.05.05 10:51 ] [ 08.08.03 11:06 ]
 N (%RNAME,%UPRCOD,%XMSG,%XMSGV,%XMSGN,%Z,%S2V,%HBRY) D ^%L1C S $ZT="ZG "_$ZL_":ER"
Z ;;W !,"UCI:" S (%S,%UCIOLD)=$$^%L1ZU(0),%LS=7
 N L1RVZDIR S L1RVZDIR=$ZDIR
M I '$D(%RNAME) D  G:%RNAME="" END
 .I '$D(%W1JSP) W !!,"ROUTINES NAME : "
 .E  W !!,"JSP FILE NAME : "
 .S %LS=20,%S="" D ^%ZMSL S %RNAME=%S
 D M1 G:'$D(%RNAME) M
END K %RNAME
 S $ZDIR=L1RVZDIR
 Q
ER U 0 W *7,$ZS," ???" G END
 ;
M1
 I '$D(%W1JSP),%RNAME'["." D GETS1(%RNAME)
 I $D(%W1JSP)!(%RNAME[".") D VW^%W1JSP(%RNAME)
ERG u $P K U,L,R N $ZT
 s $ZT="" S %TIP="R" S %S2V("NOHB")="" d ^%S2VIEW
 Q
RNOOPEN U $P W *7 W "  ERROR !" Q
 ;
GETS1(%RNAME) ;
 N (%RNAME,%UPRCOD,%XMSG,%XMSGV,%XMSGN,%Z,%S2V,%FLI,TXT1,%HBRY) D ^%L1C
 s %R=$TR(%RNAME,"%","_")_".m"
 S %L1DIR=$$DIR^%L1ED(%R)
 I $L(%L1DIR),$E(%L1DIR,$L(%L1DIR))'="/" S %L1DIR=%L1DIR_"/"
 S %R=%L1DIR_%R
 ;
 o %R:(readonly:record=2048:rewind)
 S $ZT="G REOF"
 k ^TMPS111($J) S I=0
 f  u %R r X S I=I+1,^TMPS111($J,I)=X
REOF    ;
 c %R Q

%L1SAVE
%L1SAVE ; [ 10/23/95  8:13 PM ]
 U 0 W !!?30,"MADE INSTALL",!
 O 51:("CONFIG.MS_":"W")
 U 51
 W "c:\msm\database.msm",!
 W "120 10 9 20 20 16",!
 W "CONFIBM.EXE",!
 W "ZCALL386.EXE",!
 C 51
 K ^UTILITY($J),^%L1SAVE($J)
 U 0 W !!,"SAVE %L1INS...",!
 S ^%L1SAVE($J,"NAME")="IN",^%L1SAVE($J,"FN")="%L1INS"
 D ^%L1RS
 K ^UTILITY($J),^%L1SAVE($J)
 U 0 W !!,"SAVE %LLL...",!
 S ^%L1SAVE($J,"NAME")="L",^%L1SAVE($J,"FN")="%LLL"
 D ^%L1RS
 K ^UTILITY($J),^%L1SAVE($J)
 U 0 W !!,"SAVE %SSS..."
 S ^%L1SAVE($J,"NAME")="S",^%L1SAVE($J,"FN")="%SSS"
 D ^%L1RS
 Q

%L1SAY
%L1SAY ; [ 02/24/93 11:31 AM ]
ER W *7 S %SAY=" d ` i b y " X %XMSGV H 2
  S %SAY="           " X %XMSGV
  Q

%L1SC
%L1SC ;      [ 06.09.21 11:02 ] [ 15.03.19 12:52 ] [ 18.01.14 13:44 ] 
 ; PARAMETRIM:
 ;        %SCVA -
 ;        %SCVG -
 ;        %SCNC -
 ;        %SC("OUT"),%SCO
 ;        %SC("NOUT"),%SCN
 ;        %SC("A") - ^%L1SC+VIEW
 ;        %SCREF
 N %FNAME,%FNAMEOLD,NPG,PG,%FLINS ;;N $ZT S ZT=$ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ZT^%L1SC" S %L1SCBEG=1,%BS=0
 S %FNAME="" S:'$D(FRST) FRST=1 S %FNAMEOLD=%FNAME
 N %MBG,%MSC S %MBG("OU")="" D SC2MBG
 ;
 N %HBRY S %HBRY=""
 N %L1SC S %L1SC=$G(^SCR(%SCRN))
 I '$D(%SC("A")) S (%SCVA,%SCVG)=1 D A K %SCVA,%SCVG G F
 D A
F K %SC("A") S %FNAME=%FNAMEOLD
GF ;N %SCO,%SCN I $D(%SC("OUT")) S %SCO=%SC("OUT")
 ;I $D(%SC("NOUT")) S %SCN=%SC("NOUT")
 D GETF G:%BS!'$G(FRST) END
 ;
 ;I $D(%SCO) S %SC("OUT")=%SCO
 ;I $D(%SCN) S %SC("NOUT")=%SCN
 D GETFG S %TO="" G:%BS END ;GF
END K %MSC,%MBG,%SC Q
 ;
A Q:'$D(%SCRN)  D
 .N N,N1 S N="" F  S N=$O(^SCR(%SCRN,"P","NAME",N)) S N1=$TR(N,"""","") Q:N=""  I $L(N1),$E(N1)?1A!($E(N1)="%"),$D(@N1)#2 S %L1SCA(N1)=@N1
 N (%L1SCA,%SCRN,%SCNC,%SCVA,%SCVG,%SC,%L1SCBEG,%L1SCRG,%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PG,NPG) D ^%L1C
 S HB=($G(^SCR(%SCRN))="H")
 N %L1SC S %L1SC=$G(^SCR(%SCRN))
 S N="" F  S N=$O(%L1SCA(N)) Q:N=""  S @N=%L1SCA(N)
 ;;I %TYPCRT["VT" W $C(27,91),"1U"
 S %AI=$S(%TYPCRT["PC":"A",1:"AV")
 U $P:(NOECHO:NOWRAP) W *27,"[1;24r" W %vverxe
 ;;I $D(%SCNC),%TYPCRT["VT" W #
 D CLEAR
 I $D(%SCNC) N %L1RBCL S %L1RBCL="" D RBG K %L1RBCL
 W %vverxe
 X:'$D(%SCNC) %chista S %HBRY="" W %HBR
 F %I=1:1 Q:'$D(^SCR(%SCRN,%AI,%I))  D W
 ;;F %I=1:1 Q:'$D(^SCR(%SCRN,%I))  D W
 D:'$D(%SCVA) VA  D RB
 I $D(^SCR(%SCRN,"G"))>9,'$D(%SCVG) D VG
 K %L1SCBEG,%L1SCA
 I $G(%SCRN)="P1HZ",$$^P1DELIS S %SAY="oiipa++3,13,HH" X %XMSG
 Q
W I ^(%I)?." " W:'$D(%SCNC) %chists Q
 W $G(^(%I))
 Q
VG N %NMOLD,YOLD,SH,SHOLD,SCH,SCHOLD
  N Y1,X1,Y2,X2,XX0,RZD,COLG,VGR0,VGR2,RSCR,STEP,COLS,%S,%REFH1
  S %L3MBG="" D GETFG K %L3MBG Q
CLEAR N %PAR,N,%XX,%YY S %PAR="P"
 S N="" F  S N=$O(^SCR(%SCRN,%PAR,"RB",N)) Q:N=""  D
 .N Y1,Y2,X1,X2,I,J,I1
 .S J=0 F I="Y1","X1","Y2","X2" S J=J+1 S @I=$P(^(N),",",J) ;I %TYPCRT="VT220",I["Y" S @I=@I-1
 .I $D(%SCNC) F I1=Y1:1:Y2 S %YY=I1-1,%XX=X1 X %POSIC W $J("",X2-X1-1)
 .Q
 Q
RB N %PAR,N S %PAR="P" ;
 S N="" F  S N=$O(^SCR(%SCRN,%PAR,"RB",N)) Q:N=""  D
 .N Y1,Y2,X1,X2,I,J
 .S J=0 F I="Y1","X1","Y2","X2" S J=J+1 S @I=$P(^(N),",",J) ;I %TYPCRT="VT220",I["Y" S @I=@I-1
 .D RBUA
 .Q
RBG I $D(^SCR(%SCRN,"G"))'>9 Q
 N %PAR S %PAR="G" ;
 N Y1,Y2,X1,X2,I,J
 S J=0 F I="Y1","X1","Y2","X2" S J=J+1 S @I=$P(^SCR(%SCRN,%PAR,"RB"),",",J) ;I %TYPCRT="VT220",I["Y" S @I=@I-1
 D RBUA
 Q
VA N %NN S %NN="" F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D SAY
 Q
V Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) D:%NN'="" SAY F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D SAY
 Q
V1 Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) D:%NN'="" SAY
 Q
VP Q:%FNAME=""  N %FNAME1,%I F %I=1:1:$L(%FNAME,",") S %FNAME1=$P(%FNAME,",",%I) I %FNAME1?."%"1U.E D
 .N %FNAME S %FNAME=%FNAME1 D V1
 Q
CA N %NN S %NN="" F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D C1,SAY
 Q
C Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D C1,SAY Q:%NN=""
 Q
C1 ;
 N %FNAME S %FNAME=^SCR(%SCRN,"P","NM",%NN) S @%FNAME="" I $D(%SCREF) D REF1^%L1SCR
 Q
CANV N %NN S %NN="" F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D C1 Q:%NN=""
 Q
CNV Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D C1 ;S @(^(%NN))=""
 Q
KA N %NN S %NN="" F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  K @(^(%NN))
 Q
K Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) K:%NN'="" @(^SCR(%SCRN,"P","NM",%NN)) F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  K @(^(%NN))
 Q
NA N %NN S %NN="" F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  N @(^(%NN))
 Q
N Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) N:%NN'="" @(^SCR(%SCRN,"P","NM",%NN)) F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  N @(^(%NN))
 Q
GETF ;
 N END,NNN,NNN1,ISCR,OUT,%NM,%SCO,%SCN,%MOUSE S %TO=""
 I $D(%SC("OUT")) S %SCO=%SC("OUT")
 I $D(%SC("NOUT")) S %SCN=%SC("NOUT")
 S %BS=0,%ZMSF="" X %XCL
 I '$G(FRST),%FNAME'["," D ^%L1SCR S:$G(%TO)="END"!($G(%TO)="UP")!(%TO="HOME") %BS=1 K %L1GET Q
 U $P:(NOECHO:NOWRAP)
 I %FNAME["," N %FN S %FN=%FNAME N %FNAME D  Q
 .F ISCR=1:1:$L(%FN,",") X %XCL K %TO S %FNAME=$P(%FN,",",ISCR),%FNAMEL=%FNAME,%ZMSF="" D ^%L1SCR D  K %L1GET Q:%BS
 ..I $G(%TO)="HOME",ISCR'>1 S %TO="END"
 ..I $G(%TO)="HOME" S ISCR=0 Q
 ..I $G(%TO)="END"!($G(%TO)="UP") X "F ISCR=ISCR-1:-1:0  I ISCR>0 S %FNAME=$P(%FN,"","",ISCR),%FNAMEL=%FNAME D OUT Q:'OUT"  S:ISCR'>0 %BS=1 Q:%BS  S ISCR=ISCR-1 Q
 N %FNAMEND S:$D(%FNAME("END")) %FNAMEND=%FNAME("END")
 S NNN=$G(%FNAME),NNN1=0
 I NNN'="" S NNN=^SCR(%SCRN,"P","NAME",NNN) S NNN1=NNN I NNN'="" S NNN=$O(^SCR(%SCRN,"P","NM",NNN),-1)
 N %FNAME F  S NNN=$O(^SCR(%SCRN,"P","NM",NNN)) Q:NNN=""  X %XCL S %FNAME=^(NNN),%FNAMEL=%FNAME,%ZMSF="" D ^%L1SCR D  K %SC,%L1GET Q:%BS  I $D(%FNAMEND) Q:%FNAME=%FNAMEND
 .I $G(%TO)="HOME",NNN=NNN1 S %TO="END"
 .I $G(%TO)="END"!($G(%TO)="UP") X "F  S NNN=$O(^SCR(%SCRN,""P"",""NM"",NNN),-1) Q:NNN<NNN1  Q:NNN=""""  S %FNAME=$G(^(NNN)),%FNAMEL=%FNAME D OUT Q:'OUT" S:NNN<NNN1!(NNN="") %BS=1 Q:%BS  S NNN=$O(^SCR(%SCRN,"P","NM",NNN),-1) Q
 .I $G(%TO)="HOME" S NNN=$O(^SCR(%SCRN,"P","NM",NNN1),-1)
 X %XCL Q
OUT Q:%FNAME=""
 S OUT=0 I (","_$G(%SCN)_",")[(","_%FNAME_",") Q
 I (","_$G(%SCO)_",")[(","_%FNAME_",") S OUT=1 Q
 S %NM=^SCR(%SCRN,"P","NAME",%FNAME)
 I $D(^SCR(%SCRN,"P",%NM,"OUTPUT")) S OUT=1
 Q
GETFG ;
 S %BS=0 S %TO=""
 Q:$D(^SCR(%SCRN,"G"))<10  ;I $D(%MBG)>9 S %MBG("GWUL")=^SCR(%SCRN,"G","MAX"),%MBG("NOZAPR")=$G(^SCR(%SCRN,"G","NOZAPR")) G MBG
 S %MBG("=")="" I $D(%SC("NOEQ")) K %MBG("=")
 D SC2MBG
 S %MBG("STEP")=^SCR(%SCRN,"G","STEP")
 S %MBG("GWUL")=^SCR(%SCRN,"G","MAX")
 S %MBG("REF")=^SCR(%SCRN,"G","REF")
 S %MBG("RZD")=$G(^SCR(%SCRN,"G","RZD"),"\")
 S %MBG("VGR0")=$P(^SCR(%SCRN,"G","RB"),",")
 S %MBG("NGR")=$P(^SCR(%SCRN,"G","RB"),",",3)
 S %MBG("VGR")=^SCR(%SCRN,"G","VG")
 S %MBG("NOZAPR")=$G(^SCR(%SCRN,"G","NOZAPR"))
 I $D(^SCR(%SCRN,"G","RB")) D
 .N Y1,Y2,X1,X2,I,J
 .S J=0 F I="Y1","X1","Y2","X2" S J=J+1 S @I=$P(^("RB"),",",J)
 .S %MBG("LL")=X1,%MBG("LR")=X2-1
 .Q
 N II F II="GLOB","NLN","TOPB","VRB","CREAT","CHECK","NEW","DO","NS","RZDF","FNC" S %MBG(II)=""
 S %MBG("DELAS")="" I $D(^SCR(%SCRN,"G","DEL")) K %MBG("DELAS")
 N N F N=1:1 Q:'$D(^SCR(%SCRN,"G",N))  D
 .S %MBG("PAR",N)=^SCR(%SCRN,"G","NM",N)_" ;"_^SCR(%SCRN,"G",N,"SHEM")_";"
 .S $P(%MBG("O"),"\",N)=^SCR(%SCRN,"G","NM",N)
 .S CRD=^SCR(%SCRN,"G",N,"CRD"),TYP=^("TYP")
 .S %MBG("PAR",N)=%MBG("PAR",N)_$P(CRD,",",2)_";"_$S(+$P(CRD,",",5):$P(CRD,",",4,5),1:$P(CRD,",",4))_";"_$S(TYP["N":"E",1:TYP)_";"_$S(TYP="N":"0123456789.-+",1:"")
 .S %MBG("PAR",N)=%MBG("PAR",N)_"#@"_^SCR(%SCRN,"G",N,"MUMPS1")_"#"_^("MUMPS2")_"#"_$G(^("HELP"))
 .I $D(^SCR(%SCRN,"G",N,"OUTPUT")) S $P(%MBG("OU"),"\",N)="IN"
 .I $D(^SCR(%SCRN,"G",N,"MUST")) S $P(%MBG("NEW"),"\",N)="Y"
 .S:$G(^SCR(%SCRN,"G",N,"FNC"))?1U.E $P(%MBG("FNC"),"\",N)=^("FNC")
 .I $G(^SCR(%SCRN,"G",N,"GLOB"))'?.P S $P(%MBG("GLOB"),"\",N)=^("GLOB") D
 ..S:$G(^("NLN"))?1N.N $P(%MBG("NLN"),"\",N)=^("NLN")
 ..S:$G(^("TOPB"))?1N.N $P(%MBG("TOPB"),"\",N)=^("TOPB")
 ..S:$G(^("VRB"))?1U.E $P(%MBG("VRB"),"\",N)=^("VRB")
 ..S:$D(^("CREAT")) $P(%MBG("CREAT"),"\",N)="Y"
 ..S:$D(^("CHECK")) $P(%MBG("CHECK"),"\",N)=^("CHECK")
 ..S:$G(^("NS"))?1A.E $P(%MBG("NS"),"\",N)=^("NS")
 ..S:$D(^("RZD")) $P(%MBG("RZDF"),"\/",N)=^("RZD")
 .Q
MBG ;
 S %MBG("LINE")=""
 K:$D(%SC("NOLINE")) %MBG("LINE")
 ;;S:$D(%SC("LINE")) %MBG("LINE")=""
 I $D(%L1SCBEG) D ^%L3MBG G MBG1
 I '$D(%L1SCBEG) D BEG^%L3MBG
MBG1 I $G(%TO)="END"!($G(%TO)="UP") S %BS=1
 Q
SAY D ^%L1SCSAY
 Q
ZT D ^%ET
 K  D ^%L1C Q
RBUA ; INPUT X1,X2,Y1,Y2
 ;;I %CVET W %LIGHT1,%CV("CF")
 D ^%L1RBUA X %XCL
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q
SC2MBG ;
 I $D(%SC("UPDOWN")) S %MBG("UPDOWN")=""
 I $D(%SC("MOVE")) S %MBG("MOVE")=""
 I $D(%SC("DEL")) S %MBG("DEL")=%SC("DEL")
 I $D(%SC("LINE")) S %MBG("LINE")=""
 I $D(%SC("MIUN")) S %MBG("MIUN")=""
 I $D(%SC("OUG")) F II=1:1:$L(%SC("OUG"),",") I $P(%SC("OUG"),",",II)'="" S $P(%MBG("OU"),"\",^SCR(%SCRN,"G","NAME",$P(%SC("OUG"),",",II)))="IN"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1SCA
%L1SCA ; [ 15.03.19 11:21 ] [ 09/16/97  5:35 PM ]
A I '$D(^SCR(%SCRN)) Q
 N HB S HB=0
 S %AI=$S(%TYPCRT["PC":"A",1:"AV")
 X %chista,%XCL I $G(^SCR(%SCRN))="H" S HB=1
 K ^SCR(%SCRN,%AI) N ST,ST1,SMB1,SMB2
 F %I=1:1 Q:'$D(^SCR(%SCRN,%I))  D
 .;;S ST=$S(HB:$TR($TR(^(%I),%TES1,%TES2),%TEN,%THB),1:^(%I))
 .S ST=$S(HB:$$W^%L1C(^(%I)),1:^(%I))
 .I ST'["{",ST'["}",ST'["[",ST'["]",ST'["#" D W Q
 .S SMB1="{",SMB2="}" D FIG S SMB1="[",SMB2="]" D FIG
 .I ST["#" S %W1=0,ST1=$P(ST,"#") D  S ST=ST1
 ..F %II=2:1:$L(ST,"#") S %W1='%W1  S:%W1 ST1=ST1_%CLI_" "_$P(ST,"#",%II) S:'%W1 ST1=ST1_" "_$C(27,91,48,109)_$S($D(%CL0):%CL0,1:"")_$P(ST,"#",%II)
 .D W
 I $D(^SCR(%SCRN,"G","RB")) D
 .N Y1,Y2,X1,X2,I,J
 .S J=0 F I="Y1","X1","Y2","X2" S J=J+1 S @I=$P(^("RB"),",",J)
 .I X2<X1 S X=X1,X2=X1,X1=X
 .F %I=Y1,Y2 S $E(^SCR(%SCRN,%AI,%I-1),X1,X2)=$J("",X2-X1+1)
 .N %ST S %ST=$G(^SCR(%SCRN,"G","STG"))
 .I %ST'="" S %ST2=$P(%ST,":")_" " F %J=2:1:X2-1 S %A=$P(%ST,":",%J) S %A=$TR($J("",$L(%A))," ","-") Q:$L(%ST2)+$L(%A)>X2  S %ST2=%ST2_%A_" "
 .S $E(^SCR(%SCRN,%AI,^SCR(%SCRN,"G","VG")-1),X1,X2)=$S(%ST2'="":$E(%ST2,X1,X2),1:$TR($J("",X2-X1+1)," ","-"))
 .F %I=Y1+1:1:Y2-1 S $E(^SCR(%SCRN,%AI,%I-1),X1,X2)=$TR($E($G(^SCR(%SCRN,%AI,%I-1)),X1,X2),"\:","  ")
 .Q
 F %I=1:1 Q:'$D(^SCR(%SCRN,%AI,%I))  S ^SCR(%SCRN,%AI,%I)=$$ESC^%L1FRM(^SCR(%SCRN,%AI,%I),%I+1)
 Q
W S ^SCR(%SCRN,%AI,%I)=ST
 Q
FIG N P1,P2
 F  S P1=$F(ST,SMB1) S:'P1 P1=1000 S P2=$F(ST,SMB2) S:'P2 P2=1000 Q:P1+P2=2000  D
 .I P1<P2 S $E(ST,P1-1,P1+1)="   " Q
 .S $E(ST,P2-3,P2-1)="   "
 Q
 

%L1SCEX
%L1SCEX(GLOB) ;                                                 [ 03.11.03 13:22 ] [ 02.04.02  8:53 AM ] [ 01.04.02  1:55 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,GLOB,%L2,%L1SCPC) D ^%L1C
 I GLOB["^TREPK(" S %GET="^TREPK zeidl leki `l laelb my" D N^%L1GET Q
 K ^TREPK($P),PRM
 I $D(%L1SCPC("EXCEL","FRM")) D FRM
 S I1=1,PRM(I1)="~"
 S N="" F  S N=$O(%L2("FF",1,N),-1) Q:N=""  D
 .S A=%L2("FF",1,N)
 .S TYP=$S($P(A,",")="T"!($P(A,",")="TP"):"H",$P(A,",")=9&($L(A,",")>2):"N",1:"E")
 .S DL=$S($P(A,",",2)[":":$P($P(A,":",2),",",1,2),1:$P(A,",",2)_",0")
 .S PRM(I1)=PRM(I1)_TYP_","_DL_"*"
 I $L(PRM(I1))>1 S PRM(I1)=$E(PRM(I1),1,$L(PRM(I1))-1)
 S I1=2 S PRM(I1)="!*"_$G(%L1SCPC("EXCEL"))
 S I2=0,FLI=0,I3=0
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S A=$G(^(N)),SMB=$E(A,$L(A)),A1=$E(A,1,$L(A)-1)
 .I SMB="^" D  Q  ;-- TOP HEADER
 ..I '$D(%L1SCPC("EXCEL","NOSP1")) S A="?"_$$SP1^%L1FRM($$INVHBW^%L1FRM(A1))
 ..I $D(%L1SCPC("EXCEL","NOSP1")) S A="?"_$$INVHBW^%L1FRM(A1)
 ..D SV1(A)
 .
 .I SMB="=" D  Q  ;-- BOTTOM HEADER
 ..I A1?.P1"-"."-".P S FLI=1-FLI Q
 ..S A2=$$SPA^%L1FRM($$INVHBW^%L1FRM(A1))
 ..S A="&"_A2
 ..I FLI,A1?.P1":".E1":".P S A="&&"_$TR(A1,":","*")
 ..D SV1(A)
 .
 .I SMB="!" D  ;-- GROUP HEADER
 ..S I3=I3+1
 ..S KOT(I3)="" S A2=$$SPA^%L1FRM(A)
 ..F J=2:1:$L(A2,":")-1 S KOT(I3)=$P(A2,":",J)_"*"_KOT(I3)
 .
 .I SMB="@" D SV2(A1)  ; -- NORMAL LINE
 ;
 S %L1SCEX=""  D ^%L1PCEX
 Q
SV1(A) ;
 S I1=I1+1,PRM(I1)=A
 Q
SV2(A) ;
 S I2=I2+1
 S A2="" F J=1:1:$L(A,"*") S A2=$$SPA^%L1FRM($P(A,"*",J))_"*"_A2
 S ^TREPK($P,I2)=$E(A2,1,$L(A2)-1)
 Q
FRM ;
 N FLSHP,N,NEXT,A,A1,SMB
 S FLSHP=0
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S NEXT=$O(@GLOB@(N)) I NEXT'="" S NEXT=$G(^(NEXT))
 .I $E(NEXT,1,$L(NEXT))="^" S NEXT=$E(NEXT,1,$L(NEXT)-1)
 .S A=$G(^(N)),SMB=$E(A,$L(A)),A1=$E(A,1,$L(A)-1)
 .I SMB="^" D  Q  ;-- TOP HEADER
 ..I A1?.P1"-".P,NEXT[%L1SCPC("EXCEL","DLM") S FLSHP=FLSHP+1 I FLSHP<3 K @GLOB@(N) Q
 ..I FLSHP=1 S @GLOB@(N)=$TR(A1,%L1SCPC("EXCEL","DLM"),":")_"!"
 ..I FLSHP=2 S @GLOB@(N)=$TR(A1,%L1SCPC("EXCEL","DLM"),"*")_"@"
 ..I FLSHP=3 S @GLOB@(N)=$TR(A1,%L1SCPC("EXCEL","DLM"),":")_"="
 I $D(%L1SCPC("EXCEL","FF")) M %L2("FF",1)=%L1SCPC("EXCEL","FF")
 Q

%L1SCH
%L1SCH ; [ 08/20/93  1:05 PM ]
 ; T. VHODA:
 ;    A - VISVETKA VSEGO
 ;       IF '$D(%SCVA) - S VISV. PEREM
 ;       ELSE          - BEZ NIH
 ;       IF '$D(%SCVG) - S VISV. GR. PEREM
 ;       ELSE          - BEZ NIH
 ;       IF '$D(%SCNC) - CLEAR MASAH
 ;       ELSE          - NO CLEAR
 ;
 ;   GF - VVOD VSEH PEREM BEZ PEREVISV. VSEGO EKRANA
 ;
 ;   GETF - VVOD VSEH NEGRUP. PEREM BEZ PEREVISV. VSEGO EKRANA
 ;
 ;   GETFG - VVOD VSEH GRUP. PEREM BEZ PEREVISV. VSEGO EKRANA
 ;
 ;   VA  -  VISV VSEH NEGRUP. PEREM BEZ PEREVISV. VSEGO EKRANA
 ;
 ;   VG  -  VISV VSEH GRUP. PEREM BEZ PEREVISV. VSEGO EKRANA
 ;
 ;   V  -  VISV  NEGRUP. PEREM NATH. S %FNAME BEZ PEREVISV. VSEGO EKRANA
 ;
 ;   CA -  CLEAR (="") VSEH NEGRUP. PEREM S VISV POLEJ
 ;
 ;   C -  CLEAR (="")  NEGRUP. PEREM NATH. S %FNAME  S VISV. POLEI
 ;
 ;  CANV - CLEAR (="")  NEGRUP. VSEH PEREM  BEZ VISV. POLEI
 ;
 ;  CNV - CLEAR (="")  NEGRUP. PEREM NATH. S %FNAME  BEZ VISV. POLEI
 ;
 ;  KA -  KILL  NEGRUP. VSEH PEREM  BEZ VISV. POLEI
 ;
 ;  K  -  KILL NEGRUP. PEREM NATH. S %FNAME  BEZ VISV. POLEI
 ;---------------------------------------------
 ; VARIABLES:
 ;
 ; %MOLD : STAROE. ZNACENIE
 ; %SC("OUT") - SPISOK PEREM. CHEREZ (,) TOLKO DLQ VIVODA
 ; %SC("NOUT") - SPISOK PEREM. CHEREZ (,) - OTMENQET %SC("OUT")
 ;%SC("VIEW") - PRIZNAK PROSMOTRA ( VIZOV D A^%L1SC)
 ; $D(%L1SCBEG) - VISV 1-J STR. GRUP. VVODA
 ; %MBG: PERED VISV GRUP. POLEJ V SLUCHAE 2-H EKRANOV SDELAT K %MBG
 ;
 ; GLOBALS:
 ;
 ; ^TABLs(<name file>,"PROG") - PROGRAMM NAME , KOT. SOZDAET FILE <name file>)

%L1SCPC
%L1SCPC ;                             [ 05.06.08 13:16 ] [ 27.04.08 12:49 ] [ 04.12.06 09:36 ]
 ; INPUT : 1) %SHP=%SCRN - SCREEN CODE  or 2) %SCRN("SHP") or 3) %L1SCPC("SHP")
 ;         %L1SCPC("MDP","B"), "N"), "R"), "PG") ,"GWPC")
 ;         %L1SCPC("USTR") IF =2 - WRITE TO FILE =$S($D(%L1SCPC("FILE)):%L1SCPC("FILE"),1:"LEVPC")
 ;         %L1SCPC("GLOB") - GLOBAL TO PRINT
 ;         %L1SCPC("NOKDM") - BLI KIDUM NEJAR
 ;         %L1SCPC("NIZ") - COMMAND BEFORE BOTTOM PARTITION PRINT
 ;         %L1SCPC("ZLIST") IF $D - ASK FOR BEG. & END PAGE NUMBER
 ;         %L1SCPC(1),...,%L1SCPC(97) <=> MAS(1) - MAS(97)
 ;---------------------------------------------------------------
 ; PARAMETERS FOR ^%L2SHAP:
 ;    INP:
 ;       %L2("U") - $S($D(%L1SCPC("USTR)):%L1SCPC("USTR),1:%L1DEV)
 ;       %L2("COD") - CODE OF HEADER FROM ^SHP
 ;       %L2("SM") - LEFT OFFSET
 ;       %L2("PC") - SIMAN OF PRINT
 ;       %L2("RZ") - ":" - DELIMITER FOR GROUP MACKET
 ;       %L2("!") - BLI FORM FEED LIFNEJ HADPASA
 ;    OUT:
 ;       %L2("RL") - PAGE SIZE
 ;       %L2("PG1") - RIGHT MARGINE FOR GROUP REKVIZITS
 ;       %L2("MP") - MACKET POSITIONS
 ;-------------------------------------------------------
 N $ZT
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 N LL,RR,%VAR,MAS,%POZ,%SUM,%M1,%M1,%M2,%STR,%PRPER,%PEND1,%ST,TS0,TSS,%L1LPT
 N %KNS,%SHL,%FF,%DLG,%DROB,%VV,%RZD,%RZ0,%VAR,%CHAST,%NR,%FRAZA
 N %K,%COLI,%IND,ZT,%USP,L1I,USTR,MAX,%L2,%I
 I $D(%L1SCPC("FILE")) S %NMF=%L1SCPC("FILE")
 I $D(%L1SCPC("ARX")) S %L1LPT("ARX")=%L1SCPC("ARX")
 I $D(%L1SCPC("SND")) S MAC1="%L1SCPC(""SND"")",MAC2="%L1LPT(""SND"")" D ^%S1GC1
 I $D(%L1SCPC("EXCEL")),'$D(%L1SCPC("GLOB")) S %L1SCPC("GLOB")="^L1SCEX($P)" K @%L1SCPC("GLOB")
 ;I $D(%L1SCPC("GLOB")) K @%L1SCPC("GLOB")
 ;S %L1SCPC("NODT")=""
 N %RZD S %HBRY="" S %PRPER=0
 S %RZD="&",%RZ0="\" D ^%L1TS
 S %USP="%SHL'<%BEGS&(%SHL'>%ENDS)"
 S %KNS=0,%SHS=1,MAS(98)=1,%SHL=1
 F %I=1:1:97 I $D(%L1SCPC(%I)) S MAS(%I)=%L1SCPC(%I)
 G BEG
 ;
X1 S LL=$E(^SHP(%L2("COD"),%SHS+%L2("VG")-1),1,%L2("LG2")),%POZ=0,%JJ=0
 S %VV=LL ;D CX1
 S RR=$E(^(%SHS+%L2("VG")-1),%L2("PG1")+1,%L2("PG2"))
 S %VV=RR ;D CX1
 K %VV,%M1,%JJ Q
 ;
CX1 S %POZ=$F(%VV,"&",%POZ)
 I %POZ S %JJ=%JJ+1 D  G CX1
 .S %VAR=$S($D(%M1)=0:$S($D(%M2(%JJ)):%M2(%JJ),1:" "),1:$S($D(%M1(%JJ)):%M1(%JJ),1:" "))
 .S %VV=$E(%VV,1,%POZ-2)_%VAR_$E(%VV,%POZ+$L(%VAR)-1,255)
 Q
 ;
PC ; ________________
 N MAX,%J,%FF,%FRAZA,%DLG,%NR,%KSS,%KG
 ;---------------- FORMAT OF PRINT LINE
 S MAX=1 F %J=1:1 Q:'$D(%L2("FF",%NT,%J))  S:'$D(%M(%J)) %M(%J)="" D
 .S %FF=%L2("FF",%NT,%J)
 .I %FF["TP" S %FRAZA=%M(%J),%DLG=$P(%FF,",",2),%NR=%J K %CHAST(%J) D DELG S %M(%J)=%CHAST(%J,1) S:%KSS>MAX MAX=%KSS Q
 .I $P(%FF,",")="T",'%ENGLISH S %DLG=$P(%FF,",",2),%M(%J)=$J($E(%M(%J),$L(%M(%J))-%DLG+1,$L(%M(%J))),%DLG) S:'$D(MAX) MAX=1 Q
 .I $P(%FF,",")="T",%ENGLISH S %DLG=$P(%FF,",",2) D  S %M(%J)=%MT_$J("",%DLG-$L(%MT)) S:'$D(MAX) MAX=1 Q
 ..S %MT=$E($$SPA^%L1FRM(%M(%J)),1,%DLG)
 .I $P(%FF,",")=9,$P(%FF,",",3)?1N S %DROB=$P(%FF,",",3) S %M(%J)=$S($P(%FF,",",$L(%FF,","))="S":$S(%M(%J)>0:"+",%M(%J)<0:"-",1:""),1:"")_$J(%M(%J),%DROB+1,%DROB) S:+%M(%J)=0 %M(%J)="-"_$J("",$P(%FF,",",2)\2-1) S %M(%J)=$J(%M(%J),$P(%FF,",",2)) Q
 .I $P(%FF,",")=9 S %M(%J)=$J(%M(%J),$P(%FF,",",2)) Q
 .Q
 S %KG=%J-1
 ;
 I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D  G ENDPC
 .S %ST="" F %J=1:1:%KG S %ST=%ST_$G(%M(%J))_"*"
 .S %ST=$E(%ST,1,$L(%ST)-1)_"@"
 .N IND S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 .S @%L1SCPC("GLOB")@(IND)=%ST
 ;
 S %KS=MAX I $G(%L2("RL")),%SHS+%KS+($D(%L2("MP",2))'=0)>%L2("RL") D PEREXL Q:'%PRPER
 I %SHL<%BEGS!(%SHL>%ENDS) S:%SHS %SHS=%SHS+%KS+($D(%L2("MP",2))'=0) G ENDPC
 ;------------------ PRINT LINE ----------------
 S %SHS=%SHS+1 D X1 S %ST=$J("",%L2("SM"))_LL
 S %ST=%ST_$J("",%L2("MP",%NT,1)-$L(%ST)-$L($G(%M(1)))-1) ;-- LEFT SPACE
 F %J=1:1:%KG S %ST=%ST_$G(%M(%J))_$J("",%L2("MP",%NT,%J)-$L(%ST)-$L($G(%M(%J))))
 S %ST=%ST_$J("",%PEND1-$L(%ST))_RR
 D STPC
 ;----------------- PRINT WRAP LINES ------------
 F I=2:1:%KS S %SHS=%SHS+1 D X1 S %ST=$J("",%L2("SM"))_LL D  S %ST=%ST_$J("",%PEND1-$L(%ST))_RR D STPC
 .S %ST=%ST_$J("",%L2("MP",%NT,1)-$L(%M(1))-$L(%ST)-1)
 .F %J=1:1:%KG S %M(%J)="" S:$D(%CHAST(%J,I))#2 %M(%J)=%CHAST(%J,I) S %ST=%ST_%M(%J)_$J("",%L2("MP",%NT,%J)-$L(%ST)-$L(%M(%J)))
 .Q
ENDPC K %CHAST,LL,RR,%KG,%KS,%NR,%DROB,M Q
 ;-
PCPUST S %SHS=%SHS+1 I @%USP D PCPUST1
 Q
PCPUST1 ;
 D X1 S %ST=$J("",%L2("SM"))_LL S %ST=%ST_$J("",%PEND1-$L(%ST))_RR D STPC
 Q
KAV ;
 D X1 S %ST=$J("",%L2("SM"))_LL S %ST=%ST_$TR($J("",%PEND1-$L(%ST))," ","-")_RR D STPC
 Q
STPC ;
 I $D(%L1SCPC("GLOB")) D  D ^%L1STPC(%ST,%L1SCPC("GLOB"),"%L1SCPC(""MDP"")") Q
 .I $L(%ST)<79,$A($E(%ST))'<$A(" ") S %ST=%ST_$J("",79-$L(%ST))
 D UDEV^%L1LPT(USTR) W $TR($TR(%ST,TS0,TSS),TS1,TSS)
 ;;I %ST["------" W *13,$TR($TR(%ST,TS0,TSS),TS1,TSS)
 I %ST'=%L1SCPC("MDP","PG") W !
 Q
 ;-
DELG ;------------ %FRAZA --> %CHAST(1-%KSS) LEFI %DLG
 N %I,%POZ
 I '$D(%NR) S %NR=1
 S %I=0 G DELGEND1:$L(%FRAZA)'>%DLG
DELGC F %POZ=$L(%FRAZA)-%DLG+1:1:$L(%FRAZA) G DLG1:".,:;?!-  "[$E(%FRAZA,%POZ)
 S %I=%I+1,%CHAST(%NR,%I)="-"_$E(%FRAZA,$L(%FRAZA)-%DLG+2,$L(%FRAZA)),%FRAZA=$E(%FRAZA,1,$L(%FRAZA)-%DLG+1) G DELGEND1
DLG1 S %I=%I+1,%CHAST(%NR,%I)=$J($E(%FRAZA,%POZ,$L(%FRAZA)),%DLG)
 S %FRAZA=$E(%FRAZA,1,%POZ-1)
DELGEND1 G:$L(%FRAZA)>%DLG DELGC
 S %KSS=%I+1,%CHAST(%NR,%KSS)=$J(%FRAZA,%DLG)
 Q
 ;-
PEREXL ;
 I %SHL<%BEGS!(%SHL>%ENDS) G PRXL1
 S %SHS1=%SHS+1
 I $D(%L2("RL")) F %SHS=%SHS1:1:%SHS1+3 Q:%SHS'<%L2("RL")  D PCPUST1
 K %SHS1
 D PPNS
 I '%PRPER S %L2("PC")="1N" D NSHAP^%L2SHAP
 I $$^%L1DISP(USTR),'$D(%L1SCPC("EXCEL")) R !,"<ENTER> - jyndl, <.> - d`ivi",YYY#1 S:"./u?>"[YYY&$L(YYY) YYY="." X %chista S:YYY="." %PRPER=0
PRXL1 S %SHS=1 I '$$^%L1DISP(USTR),USTR'[".LP",USTR<51,'$D(%L1SCPC("GLOB")) H 10
 I USTR[".LP" H 3
 Q:'%PRPER
 I %SHL>%ENDS S %PRPER=0 Q
 I @%USLVIX Q
 D KAV S %ST=$J("`ad sca jynd",%PEND1) D STPC
 S %SHL=%SHL+1 S MAS(98)=%SHL
 S %NEXTS=$G(^SHP(%L2("COD"),1)) D PSHAP K %NEXTS,I
 Q
 ;
KILL K %KODS,%PEND1,SHO,%NEXTS,PER,%POZ,LENGTH,%USLVIX,%SHPC
 K %L2,MAS,%KNS,%KSS,SSTR,L1I,%SHL,%BEGS,%ENDS,%SHS,TIPS,%STR,%CHAST
 K %L1SCPC I $G(USTR)=51 S USTR=2
 Q
 ;-
BEG ;----------------------- BODY   --------------------------------
 I $D(%L1SCPC("MDP","DAF")) S %ST=%L1SCPC("MDP","DAF") D STPC
 K L1I D IP I %PRVIX G ENMK ;-- %PRVIX - ERROR
 S %L2("U")=$S(USTR=$P:0,1:3)
 S %TIM=$ZD($H,"24:60") I '$D(%L1SCPC("NODT")) S %ST=" "_$$^%L1DC($H,1)_" "_%TIM_" "_$$^%L1DC($H,9)_" mei : dwtd zrye jix`z" D STPC
 S %KNS=0,%SHS=1
 S %L2("PC")=0 D ^%L2SHAP I $$^%L1DISP(USTR),'$D(%L1SCPC("EXCEL")) S %L2("RL")=22 ;-- PARAMETERS DEFINING
 S %L2("!")=1 ;-- FIRST HEADER WITHOUT PROGON
 I $D(%L2("PG1")),$D(%L2("SM")) D  ;--------- GROUP LINES
 .S %PEND1=%L2("PG1")-1+%L2("SM") S %PRPER=1
 D PSHAP K %L2("!")
 D PCKBL
 I $D(%L2("PG1")) D PEREXL ;-- IF GROUP LINES FORM FEED IN PRINT FINISH
ENMK ;
 I $D(%L1SCPC("NIZ")) X %L1SCPC("NIZ")
 I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D ^%L1SCEX(%L1SCPC("GLOB")) G ENDPROG
 I $D(%L1SCPC("GLOB")) D  G ENDPROG
 .N IND S IND=$O(@%L1SCPC("GLOB")@(999999),-1)+1
 .S @%L1SCPC("GLOB")@(IND)=$G(%L1SCPC("MDP","PG"))_$G(%L1SCPC("MDP","CUT"))_$G(%L1SCPC("MDP","PG"))
 I '$$^%L1DISP(USTR),$L($G(%L1SCPC("MDP","CUT"))) W %L1SCPC("MDP","PRG"),%L1SCPC("MDP","CUT")
 ;;I '$$^%L1DISP(USTR) S %ST=%L1SCPC("MDP","PG") D STPC D CDEV^%L1LPT(USTR) I '$D(%L1SCPC("GLOB")) S %DEV="USTR" S:$D(%L1SCPC("NOKDM")) %L1LPT("NOFF")="" D PRINT^%L1LPT
 I '$$^%L1DISP(USTR) D CDEV^%L1LPT(USTR) I '$D(%L1SCPC("GLOB")) S %DEV="USTR" S:$D(%L1SCPC("NOKDM")) %L1LPT("NOFF")="" D PRINT^%L1LPT
 I $$^%L1DISP(USTR),'$D(%L2("PG1")),'$D(%L1SCPC("EXCEL")) S %GET="<<" D N^%L1GET X %chista
ENDPROG D KILL S:$D(ZT) $ZT=ZT Q
 ;-------------------------- END OF BODY ------------------------
 ;
IP ;---> %L2("RZ"),%L2("COD"),   L1I("ZS")
 S %PRVIX=0
 S %L2("RZ")=":" S @("L1I(""ZU"")="_%L1DEV)
 I $D(%L1SCPC("SMALL")) S %L1LPT("SMALL")=""
 I $D(%L1SCPC("SM")) S %L2("SM")=%L1SCPC("SM")
 K %L1LPT("DEV") I $D(%L1SCPC("USTR")) S L1I("ZU")=%L1SCPC("USTR") S %L1LPT("DEV")=%L1SCPC("USTR")
 S L1I("ZS")="" ;-------- WITHOUT QUESTION "FROM PAGE - TO PAGE"
 I $D(%L1SCPC("ZLIST")) K L1I("ZS") ;--- ASK "FROM PAGE TO PAGE"
 I $D(%SCRN) S %L2("COD")=%SCRN_"s"
 I $D(%SCRN("SHP")) S %L2("COD")=%SCRN("SHP")_"s"
 I $D(%L1SCPC("SHP")) S %L2("COD")=%L1SCPC("SHP")_"s" ;--- CODE FROM ^SHP
 D L1PCIN
 I $G(%MDPSUG) D
 .N %L1OUT D DEFMDP^%L1OUT(%MDPSUG)
 .N MAC1,MAC2 S MAC1="%L1OUT",MAC2="%L1SCPC" D ^%S1GC1
 .I $G(%L1SCPC("MDP","GWPC")),%L1SCPC("MDP","GWPC")<80 S %L2("SM")=0
 I '$D(%L1SCPC("MDP","B")) S %L1SCPC("MDP","B")=$C(27)_"W1"
 I '$D(%L1SCPC("MDP","N")) S %L1SCPC("MDP","N")=$C(27)_"W0"
 I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(13,12)
 ;;I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(12)
 I '$D(%L1SCPC("MDP","GWPC")) S %L1SCPC("MDP","GWPC")=80
 I $D(%L1SCPC("NOKDM")),$G(%L1SCPC("MDP","PG"))[$C(12) S %L1SCPC("MDP","PG")=$C(10,10,10)
 S %USLVIX="%PRPER=0"
 Q
 ;-
PSHAP ;
 S %L2("PC")="1V"
PSHAP1 ;
 N %NN S %NN="" F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D
 .S MAS(%NN)=$G(@^(%NN))
 .I $D(%L1SCPC(%NN))#2 S MAS(%NN)=%L1SCPC(%NN)
 .S CRD=$G(^SCR(%SCRN,"P",%NN,"CRD"))
 .I $P(CRD,",",3)["H" S MAS(%NN)=$E(MAS(%NN),$L(MAS(%NN))-$P(CRD,",",4)+1,255)
 .I $P(CRD,",",3)["E",%ENGLISH S MAS(%NN)=$E(MAS(%NN),1,$P(CRD,",",4)) S MAS(%NN)=MAS(%NN)_$J("",$P(CRD,",",4)-$L(MAS(%NN)))
 .I $P(CRD,",",3)="N",$P(CRD,",",5),'$D(%L1SCPC(%NN)) S MAS(%NN)=$J(MAS(%NN),2,$P(CRD,",",5))
 D FSHAP
 Q
FSHAP ;
 S %L2("PC")=$S(%SHL'<%BEGS&(%SHL'>%ENDS):"1V",1:0)
 D ^%L2SHAP S %NEXTS=$G(^SHP(%L2("COD"),1)) K PER Q
 Q
SAY ;
 S V=^SCR(%SCRN,"P","NM",%NN) S CRD=^SCR(%SCRN,"P",%NN,"CRD")
 S TYP=^("TYP") I TYP="N"
 S VL=$G(@V) I $P(CRD,",",5)'>0 S VL=$J(VL,+$P(CRD,",",4))
 ;-
PCKBL ; -------------------------------------
 K %SUM S %PRPER=1 Q:$D(^SCR(%SCRN,"G"))<10
 S %REFG=$G(^SCR(%SCRN,"G","REF")) Q:%REFG=""
 S %RZDG=$G(^SCR(%SCRN,"G","RZD")) Q:%RZD=""
 I $E(%REFG)'="^" S %REFG="^"_%REFG
 I %REFG["(",%REFG'[")" S %REFG=%REFG_")"
 F %SHPC=1:1 Q:'$D(@%REFG@(%SHPC))  D
 .N %REFST S %REFST=^(%SHPC)
 .K %M ;;S %COLGG=$L(%REFST,%RZDG)
 .S %SCPCOK=1 I $D(%L1SCPC("USL")) X %L1SCPC("USL") Q:%SCPCOK=0
 .I '%ENGLISH F %JII=1:1:$G(%L2("MP",1)) S %M(%L2("MP",1)-%JII+1)=$P(%REFST,%RZDG,%JII)
 .I %ENGLISH F %JII=1:1:$G(%L2("MP",1)) S %M(%JII)=$P(%REFST,%RZDG,%JII)
 .S %NT=1 D PC
 .I $D(%L2("MP",2)),$D(@%REFG@(%SHPC)) D
 ..S %COLGG=%L2("MP",1)+%L2("MP",2)
 ..I '%ENGLISH K %M F %JII=$G(%L2("MP",1))+1:1:%COLGG S %M(%COLGG-%JII+1)=$P(%REFST,%RZDG,%JII)
 ..I %ENGLISH K %M F %JII=$G(%L2("MP",1))+1:1:%COLGG S %M(%JII)=$P(%REFST,%RZDG,%JII)
 ..S %NT=2 D PC K %M D PCPUST
 S %PRPER=0
 Q
PPNS ;
 Q
 ;
L1PCIN ; [ 05/28/92  2:43 PM ]
 ;L1I("ZU")  ---> USTR,'$D(L1I("ZS")) --> %BEGS,%ENDS
 ;  O USTR, U USTR
 I $D(%L1SCPC("EXCEL")) S USTR=0,%BEGS=1,%ENDS=999 G END
 I $D(%L1SCPC("GLOB")) S USTR=+$G(L1I("ZU")) G ZS
ZU N $ZT S %PRVIX=0,$ZT="G M1^%L1SCPC"
 I '$D(L1I("ZU")) X %chista S %GET="3 - zqtcn , 0 - jqn ++1,60,HH#++1,E,I++03" D ^%L1GET S USTR=%S I "^."[USTR S %PRVIX=1,%EROP=1 G END
 I $D(L1I("ZU")) S USTR=L1I("ZU")
 S:$G(L1I("ZU"))=2 USTR=51
 I $G(L1I("ZU"))>50,$G(L1I("ZU"))<54 O $S($D(%NMF):%NMF,1:"LEVPC"):APPEND G ZF
 I '$$^%L1DISP(USTR) S %DEV="USTR" D ^%L1LPT I %EROP K L1I("ZU"),%L1GET G ZU
ZF N OTBS ;
ZS S %BEGS=1,%ENDS=999
 G:$D(L1I("ZS")) END
 U 0 W ! S %GET=":<1,999> sc cr,scn#8" D N^%L1GET S OTBS=%S
 S:OTBS="" OTBS="1,999" S %BEGS=$P(OTBS,","),%ENDS=$P(OTBS,",",2)
 G:%BEGS="." ZU S:%ENDS="" %ENDS=%BEGS
 I %BEGS'?1N.N!(%ENDS'?1N.N)!(%BEGS>%ENDS) W *7,"   *** ERROR !" G ZS
 D UDEV^%L1LPT(USTR)
END ;
 Q
M S %GET="3 - zqtcn , 0 - jqn ++1,60,HH#++1,E,I++03" D ^%L1GET S USTR=%S I "^."[USTR S %PRVIX=1 G END
 Q
M1 U 0 W *7 S %SAY="! dpken `l zqtcn++0,50,HH,I" X %XMSG H 2
 I '$$^%L1DISP($G(USTR)) D CDEV^%L1LPT
 K L1I("ZU") G ZU
ER Q

%L1SCPC0
%L1SCPC ;                             [ 04.05.08 12:27 ] [ 04.12.06 09:36 ] [ 09.11.06 14:06 ]
 ; INPUT : 1) %SHP=%SCRN - SCREEN CODE  or 2) %SCRN("SHP") or 3) %L1SCPC("SHP")
 ;         %L1SCPC("MDP","B"), "N"), "R"), "PG") ,"GWPC")
 ;         %L1SCPC("USTR") IF =2 - WRITE TO FILE =$S($D(%L1SCPC("FILE)):%L1SCPC("FILE"),1:"LEVPC")
 ;         %L1SCPC("GLOB") - GLOBAL TO PRINT
 ;         %L1SCPC("NOKDM") - BLI KIDUM NEJAR
 ;         %L1SCPC("NIZ") - COMMAND BEFORE BOTTOM PARTITION PRINT
 ;         %L1SCPC("ZLIST") IF $D - ASK FOR BEG. & END PAGE NUMBER
 ;         %L1SCPC(1),...,%L1SCPC(97) <=> MAS(1) - MAS(97)
 ;---------------------------------------------------------------
 ; PARAMETERS FOR ^%L2SHAP:
 ;    INP:
 ;       %L2("U") - $S($D(%L1SCPC("USTR)):%L1SCPC("USTR),1:%L1DEV)
 ;       %L2("COD") - CODE OF HEADER FROM ^SHP
 ;       %L2("SM") - LEFT OFFSET
 ;       %L2("PC") - SIMAN OF PRINT
 ;       %L2("RZ") - ":" - DELIMITER FOR GROUP MACKET
 ;       %L2("!") - BLI FORM FEED LIFNEJ HADPASA
 ;    OUT:
 ;       %L2("RL") - PAGE SIZE
 ;       %L2("PG1") - RIGHT MARGINE FOR GROUP REKVIZITS
 ;       %L2("MP") - MACKET POSITIONS
 ;-------------------------------------------------------
 N $ZT
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 N LL,RR,%VAR,MAS,%POZ,%SUM,%M1,%M1,%M2,%STR,%PRPER,%PEND1,%ST,TS0,TSS,%L1LPT
 N %KNS,%SHL,%FF,%DLG,%DROB,%VV,%RZD,%RZ0,%VAR,%CHAST,%NR,%FRAZA
 N %K,%COLI,%IND,ZT,%USP,L1I,USTR,MAX,%L2,%I
 I $D(%L1SCPC("FILE")) S %NMF=%L1SCPC("FILE")
 I $D(%L1SCPC("ARX")) S %L1LPT("ARX")=%L1SCPC("ARX")
 I $D(%L1SCPC("SND")) S MAC1="%L1SCPC(""SND"")",MAC2="%L1LPT(""SND"")" D ^%S1GC1
 I $D(%L1SCPC("EXCEL")),'$D(%L1SCPC("GLOB")) S %L1SCPC("GLOB")="^L1SCEX($P)" K @%L1SCPC("GLOB")
 ;I $D(%L1SCPC("GLOB")) K @%L1SCPC("GLOB")
 ;S %L1SCPC("NODT")=""
 N %RZD S %HBRY="" S %PRPER=0
 S %RZD="&",%RZ0="\" D ^%L1TS
 S %USP="%SHL'<%BEGS&(%SHL'>%ENDS)"
 S %KNS=0,%SHS=1,MAS(98)=1,%SHL=1
 F %I=1:1:97 I $D(%L1SCPC(%I)) S MAS(%I)=%L1SCPC(%I)
 G BEG
 ;
X1 S LL=$E(^SHP(%L2("COD"),%SHS+%L2("VG")-1),1,%L2("LG2")),%POZ=0,%JJ=0
 S %VV=LL ;D CX1
 S RR=$E(^(%SHS+%L2("VG")-1),%L2("PG1")+1,%L2("PG2"))
 S %VV=RR ;D CX1
 K %VV,%M1,%JJ Q
 ;
CX1 S %POZ=$F(%VV,"&",%POZ)
 I %POZ S %JJ=%JJ+1 D  G CX1
 .S %VAR=$S($D(%M1)=0:$S($D(%M2(%JJ)):%M2(%JJ),1:" "),1:$S($D(%M1(%JJ)):%M1(%JJ),1:" "))
 .S %VV=$E(%VV,1,%POZ-2)_%VAR_$E(%VV,%POZ+$L(%VAR)-1,255)
 Q
 ;
PC ; ________________
 N MAX,%J,%FF,%FRAZA,%DLG,%NR,%KSS,%KG
 ;---------------- FORMAT OF PRINT LINE
 S MAX=1 F %J=1:1 Q:'$D(%L2("FF",%NT,%J))  S:'$D(%M(%J)) %M(%J)="" D
 .S %FF=%L2("FF",%NT,%J)
 .I %FF["TP" S %FRAZA=%M(%J),%DLG=$P(%FF,",",2),%NR=%J K %CHAST(%J) D DELG S %M(%J)=%CHAST(%J,1) S:%KSS>MAX MAX=%KSS Q
 .I $P(%FF,",")="T",'%ENGLISH S %DLG=$P(%FF,",",2),%M(%J)=$J($E(%M(%J),$L(%M(%J))-%DLG+1,$L(%M(%J))),%DLG) S:'$D(MAX) MAX=1 Q
 .I $P(%FF,",")="T",%ENGLISH S %DLG=$P(%FF,",",2) D  S %M(%J)=%MT_$J("",%DLG-$L(%MT)) S:'$D(MAX) MAX=1 Q
 ..S %MT=$E($$SPA^%L1FRM(%M(%J)),1,%DLG)
 .I $P(%FF,",")=9,$P(%FF,",",3)?1N S %DROB=$P(%FF,",",3) S %M(%J)=$S($P(%FF,",",$L(%FF,","))="S":$S(%M(%J)>0:"+",%M(%J)<0:"-",1:""),1:"")_$J(%M(%J),%DROB+1,%DROB) S:+%M(%J)=0 %M(%J)="-"_$J("",$P(%FF,",",2)\2-1) S %M(%J)=$J(%M(%J),$P(%FF,",",2)) Q
 .I $P(%FF,",")=9 S %M(%J)=$J(%M(%J),$P(%FF,",",2)) Q
 .Q
 S %KG=%J-1
 ;
 I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D  G ENDPC
 .S %ST="" F %J=1:1:%KG S %ST=%ST_$G(%M(%J))_"*"
 .S %ST=$E(%ST,1,$L(%ST)-1)_"@"
 .N IND S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 .S @%L1SCPC("GLOB")@(IND)=%ST
 ;
 S %KS=MAX I $G(%L2("RL")),%SHS+%KS+($D(%L2("MP",2))'=0)>%L2("RL") D PEREXL Q:'%PRPER
 I %SHL<%BEGS!(%SHL>%ENDS) S:%SHS %SHS=%SHS+%KS+($D(%L2("MP",2))'=0) G ENDPC
 ;------------------ PRINT LINE ----------------
 S %SHS=%SHS+1 D X1 S %ST=$J("",%L2("SM"))_LL
 S %ST=%ST_$J("",%L2("MP",%NT,1)-$L(%ST)-$L($G(%M(1)))-1) ;-- LEFT SPACE
 F %J=1:1:%KG S %ST=%ST_$G(%M(%J))_$J("",%L2("MP",%NT,%J)-$L(%ST)-$L($G(%M(%J))))
 S %ST=%ST_$J("",%PEND1-$L(%ST))_RR
 D STPC
 ;----------------- PRINT WRAP LINES ------------
 F I=2:1:%KS S %SHS=%SHS+1 D X1 S %ST=$J("",%L2("SM"))_LL D  S %ST=%ST_$J("",%PEND1-$L(%ST))_RR D STPC
 .S %ST=%ST_$J("",%L2("MP",%NT,1)-$L(%M(1))-$L(%ST)-1)
 .F %J=1:1:%KG S %M(%J)="" S:$D(%CHAST(%J,I))#2 %M(%J)=%CHAST(%J,I) S %ST=%ST_%M(%J)_$J("",%L2("MP",%NT,%J)-$L(%ST)-$L(%M(%J)))
 .Q
ENDPC K %CHAST,LL,RR,%KG,%KS,%NR,%DROB,M Q
 ;-
PCPUST S %SHS=%SHS+1 I @%USP D PCPUST1
 Q
PCPUST1 ;
 D X1 S %ST=$J("",%L2("SM"))_LL S %ST=%ST_$J("",%PEND1-$L(%ST))_RR D STPC
 Q
KAV ;
 D X1 S %ST=$J("",%L2("SM"))_LL S %ST=%ST_$TR($J("",%PEND1-$L(%ST))," ","-")_RR D STPC
 Q
STPC ;
 I $D(%L1SCPC("GLOB")) D  D ^%L1STPC(%ST,%L1SCPC("GLOB"),"%L1SCPC(""MDP"")") Q
 .I $L(%ST)<79,$A($E(%ST))'<$A(" ") S %ST=%ST_$J("",79-$L(%ST))
 D UDEV^%L1LPT(USTR) W $TR($TR(%ST,TS0,TSS),TS1,TSS)
 ;;I %ST["------" W *13,$TR($TR(%ST,TS0,TSS),TS1,TSS)
 I %ST'=%L1SCPC("MDP","PG") W !
 Q
 ;-
DELG ;------------ %FRAZA --> %CHAST(1-%KSS) LEFI %DLG
 N %I,%POZ
 I '$D(%NR) S %NR=1
 S %I=0 G DELGEND1:$L(%FRAZA)'>%DLG
DELGC F %POZ=$L(%FRAZA)-%DLG+1:1:$L(%FRAZA) G DLG1:".,:;?!-  "[$E(%FRAZA,%POZ)
 S %I=%I+1,%CHAST(%NR,%I)="-"_$E(%FRAZA,$L(%FRAZA)-%DLG+2,$L(%FRAZA)),%FRAZA=$E(%FRAZA,1,$L(%FRAZA)-%DLG+1) G DELGEND1
DLG1 S %I=%I+1,%CHAST(%NR,%I)=$J($E(%FRAZA,%POZ,$L(%FRAZA)),%DLG)
 S %FRAZA=$E(%FRAZA,1,%POZ-1)
DELGEND1 G:$L(%FRAZA)>%DLG DELGC
 S %KSS=%I+1,%CHAST(%NR,%KSS)=$J(%FRAZA,%DLG)
 Q
 ;-
PEREXL ;
 I %SHL<%BEGS!(%SHL>%ENDS) G PRXL1
 S %SHS1=%SHS+1
 I $D(%L2("RL")) F %SHS=%SHS1:1:%SHS1+3 Q:%SHS'<%L2("RL")  D PCPUST1
 K %SHS1
 D PPNS
 I '%PRPER S %L2("PC")="1N" D NSHAP^%L2SHAP
 I $$^%L1DISP(USTR),'$D(%L1SCPC("EXCEL")) R !,"<ENTER> - jyndl, <.> - d`ivi",YYY#1 S:"./u?>"[YYY&$L(YYY) YYY="." X %chista S:YYY="." %PRPER=0
PRXL1 S %SHS=1 I '$$^%L1DISP(USTR),USTR'[".LP",USTR<51,'$D(%L1SCPC("GLOB")) H 10
 I USTR[".LP" H 3
 Q:'%PRPER
 I %SHL>%ENDS S %PRPER=0 Q
 I @%USLVIX Q
 D KAV S %ST=$J("`ad sca jynd",%PEND1) D STPC
 S %SHL=%SHL+1 S MAS(98)=%SHL
 S %NEXTS=$G(^SHP(%L2("COD"),1)) D PSHAP K %NEXTS,I
 Q
 ;
KILL K %KODS,%PEND1,SHO,%NEXTS,PER,%POZ,LENGTH,%USLVIX,%SHPC
 K %L2,MAS,%KNS,%KSS,SSTR,L1I,%SHL,%BEGS,%ENDS,%SHS,TIPS,%STR,%CHAST
 K %L1SCPC I $G(USTR)=51 S USTR=2
 Q
 ;-
BEG ;----------------------- BODY   --------------------------------
 I $D(%L1SCPC("MDP","DAF")) S %ST=%L1SCPC("MDP","DAF") D STPC
 K L1I D IP I %PRVIX G ENMK ;-- %PRVIX - ERROR
 S %L2("U")=$S(USTR=$P:0,1:3)
 S %TIM=$ZD($H,"24:60") I '$D(%L1SCPC("NODT")) S %ST=" "_$$^%L1DC($H,1)_" "_%TIM_" "_$$^%L1DC($H,9)_" mei : dwtd zrye jix`z" D STPC
 S %KNS=0,%SHS=1
 S %L2("PC")=0 D ^%L2SHAP I $$^%L1DISP(USTR),'$D(%L1SCPC("EXCEL")) S %L2("RL")=22 ;-- PARAMETERS DEFINING
 S %L2("!")=1 ;-- FIRST HEADER WITHOUT PROGON
 I $D(%L2("PG1")),$D(%L2("SM")) D  ;--------- GROUP LINES
 .S %PEND1=%L2("PG1")-1+%L2("SM") S %PRPER=1
 D PSHAP K %L2("!")
 D PCKBL
 I $D(%L2("PG1")) D PEREXL ;-- IF GROUP LINES FORM FEED IN PRINT FINISH
ENMK ;
 I $D(%L1SCPC("NIZ")) X %L1SCPC("NIZ")
 I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D ^%L1SCEX(%L1SCPC("GLOB")) G ENDPROG
 I '$$^%L1DISP(USTR),$L($G(%L1SCPC("MDP","CUT"))) W %L1SCPC("MDP","PRG"),%L1SCPC("MDP","CUT")
 ;;I '$$^%L1DISP(USTR) S %ST=%L1SCPC("MDP","PG") D STPC D CDEV^%L1LPT(USTR) I '$D(%L1SCPC("GLOB")) S %DEV="USTR" S:$D(%L1SCPC("NOKDM")) %L1LPT("NOFF")="" D PRINT^%L1LPT
 I '$$^%L1DISP(USTR) D CDEV^%L1LPT(USTR) I '$D(%L1SCPC("GLOB")) S %DEV="USTR" S:$D(%L1SCPC("NOKDM")) %L1LPT("NOFF")="" D PRINT^%L1LPT
 I $$^%L1DISP(USTR),'$D(%L2("PG1")),'$D(%L1SCPC("EXCEL")) S %GET="<<" D N^%L1GET X %chista
ENDPROG D KILL S:$D(ZT) $ZT=ZT Q
 ;-------------------------- END OF BODY ------------------------
 ;
IP ;---> %L2("RZ"),%L2("COD"),   L1I("ZS")
 S %PRVIX=0
 S %L2("RZ")=":" S @("L1I(""ZU"")="_%L1DEV)
 I $D(%L1SCPC("SMALL")) S %L1LPT("SMALL")=""
 I $D(%L1SCPC("SM")) S %L2("SM")=%L1SCPC("SM")
 K %L1LPT("DEV") I $D(%L1SCPC("USTR")) S L1I("ZU")=%L1SCPC("USTR") S %L1LPT("DEV")=%L1SCPC("USTR")
 S L1I("ZS")="" ;-------- WITHOUT QUESTION "FROM PAGE - TO PAGE"
 I $D(%L1SCPC("ZLIST")) K L1I("ZS") ;--- ASK "FROM PAGE TO PAGE"
 I $D(%SCRN) S %L2("COD")=%SCRN_"s"
 I $D(%SCRN("SHP")) S %L2("COD")=%SCRN("SHP")_"s"
 I $D(%L1SCPC("SHP")) S %L2("COD")=%L1SCPC("SHP")_"s" ;--- CODE FROM ^SHP
 D L1PCIN
 I $G(%MDPSUG) D
 .N %L1OUT D DEFMDP^%L1OUT(%MDPSUG)
 .N MAC1,MAC2 S MAC1="%L1OUT",MAC2="%L1SCPC" D ^%S1GC1
 .I $G(%L1SCPC("MDP","GWPC")),%L1SCPC("MDP","GWPC")<80 S %L2("SM")=0
 I '$D(%L1SCPC("MDP","B")) S %L1SCPC("MDP","B")=$C(27)_"W1"
 I '$D(%L1SCPC("MDP","N")) S %L1SCPC("MDP","N")=$C(27)_"W0"
 I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(13,12)
 ;;I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(12)
 I '$D(%L1SCPC("MDP","GWPC")) S %L1SCPC("MDP","GWPC")=80
 I $D(%L1SCPC("NOKDM")),$G(%L1SCPC("MDP","PG"))[$C(12) S %L1SCPC("MDP","PG")=$C(10,10,10)
 S %USLVIX="%PRPER=0"
 Q
 ;-
PSHAP ;
 S %L2("PC")="1V"
PSHAP1 ;
 N %NN S %NN="" F  S %NN=$O(^SCR(%SCRN,"P","NM",%NN)) Q:%NN=""  D
 .S MAS(%NN)=$G(@^(%NN))
 .I $D(%L1SCPC(%NN))#2 S MAS(%NN)=%L1SCPC(%NN)
 .S CRD=$G(^SCR(%SCRN,"P",%NN,"CRD"))
 .I $P(CRD,",",3)["H" S MAS(%NN)=$E(MAS(%NN),$L(MAS(%NN))-$P(CRD,",",4)+1,255)
 .I $P(CRD,",",3)["E",%ENGLISH S MAS(%NN)=$E(MAS(%NN),1,$P(CRD,",",4)) S MAS(%NN)=MAS(%NN)_$J("",$P(CRD,",",4)-$L(MAS(%NN)))
 .I $P(CRD,",",3)="N",$P(CRD,",",5),'$D(%L1SCPC(%NN)) S MAS(%NN)=$J(MAS(%NN),2,$P(CRD,",",5))
 D FSHAP
 Q
FSHAP ;
 S %L2("PC")=$S(%SHL'<%BEGS&(%SHL'>%ENDS):"1V",1:0)
 D ^%L2SHAP S %NEXTS=$G(^SHP(%L2("COD"),1)) K PER Q
 Q
SAY ;
 S V=^SCR(%SCRN,"P","NM",%NN) S CRD=^SCR(%SCRN,"P",%NN,"CRD")
 S TYP=^("TYP") I TYP="N"
 S VL=$G(@V) I $P(CRD,",",5)'>0 S VL=$J(VL,+$P(CRD,",",4))
 ;-
PCKBL ; -------------------------------------
 K %SUM S %PRPER=1 Q:$D(^SCR(%SCRN,"G"))<10
 S %REFG=$G(^SCR(%SCRN,"G","REF")) Q:%REFG=""
 S %RZDG=$G(^SCR(%SCRN,"G","RZD")) Q:%RZD=""
 I $E(%REFG)'="^" S %REFG="^"_%REFG
 I %REFG["(",%REFG'[")" S %REFG=%REFG_")"
 F %SHPC=1:1 Q:'$D(@%REFG@(%SHPC))  D
 .N %REFST S %REFST=^(%SHPC)
 .K %M ;;S %COLGG=$L(%REFST,%RZDG)
 .S %SCPCOK=1 I $D(%L1SCPC("USL")) X %L1SCPC("USL") Q:%SCPCOK=0
 .I '%ENGLISH F %JII=1:1:$G(%L2("MP",1)) S %M(%L2("MP",1)-%JII+1)=$P(%REFST,%RZDG,%JII)
 .I %ENGLISH F %JII=1:1:$G(%L2("MP",1)) S %M(%JII)=$P(%REFST,%RZDG,%JII)
 .S %NT=1 D PC
 .I $D(%L2("MP",2)),$D(@%REFG@(%SHPC)) D
 ..S %COLGG=%L2("MP",1)+%L2("MP",2)
 ..I '%ENGLISH K %M F %JII=$G(%L2("MP",1))+1:1:%COLGG S %M(%COLGG-%JII+1)=$P(%REFST,%RZDG,%JII)
 ..I %ENGLISH K %M F %JII=$G(%L2("MP",1))+1:1:%COLGG S %M(%JII)=$P(%REFST,%RZDG,%JII)
 ..S %NT=2 D PC K %M D PCPUST
 S %PRPER=0
 Q
PPNS ;
 Q
 ;
L1PCIN ; [ 05/28/92  2:43 PM ]
 ;L1I("ZU")  ---> USTR,'$D(L1I("ZS")) --> %BEGS,%ENDS
 ;  O USTR, U USTR
 I $D(%L1SCPC("EXCEL")) S USTR=0,%BEGS=1,%ENDS=999 G END
 I $D(%L1SCPC("GLOB")) S USTR=+$G(L1I("ZU")) G ZS
ZU N $ZT S %PRVIX=0,$ZT="G M1^%L1SCPC"
 I '$D(L1I("ZU")) X %chista S %GET="3 - zqtcn , 0 - jqn ++1,60,HH#++1,E,I++03" D ^%L1GET S USTR=%S I "^."[USTR S %PRVIX=1,%EROP=1 G END
 I $D(L1I("ZU")) S USTR=L1I("ZU")
 S:$G(L1I("ZU"))=2 USTR=51
 I $G(L1I("ZU"))>50,$G(L1I("ZU"))<54 O $S($D(%NMF):%NMF,1:"LEVPC"):APPEND G ZF
 I '$$^%L1DISP(USTR) S %DEV="USTR" D ^%L1LPT I %EROP K L1I("ZU"),%L1GET G ZU
ZF N OTBS ;
ZS S %BEGS=1,%ENDS=999
 G:$D(L1I("ZS")) END
 U 0 W ! S %GET=":<1,999> sc cr,scn#8" D N^%L1GET S OTBS=%S
 S:OTBS="" OTBS="1,999" S %BEGS=$P(OTBS,","),%ENDS=$P(OTBS,",",2)
 G:%BEGS="." ZU S:%ENDS="" %ENDS=%BEGS
 I %BEGS'?1N.N!(%ENDS'?1N.N)!(%BEGS>%ENDS) W *7,"   *** ERROR !" G ZS
 D UDEV^%L1LPT(USTR)
END ;
 Q
M S %GET="3 - zqtcn , 0 - jqn ++1,60,HH#++1,E,I++03" D ^%L1GET S USTR=%S I "^."[USTR S %PRVIX=1 G END
 Q
M1 U 0 W *7 S %SAY="! dpken `l zqtcn++0,50,HH,I" X %XMSG H 2
 I '$$^%L1DISP($G(USTR)) D CDEV^%L1LPT
 K L1I("ZU") G ZU
ER Q

%L1SCR
%L1SCR ; INPUT - %FNAME                [ 06.09.21 11:04 ] [ 15.03.19 11:57 ] [ 03.04.08 12:48 ] 
 N %XX,%YY,%XXXX,%YYYY,%SAY,%INV,%S,CIST,%LS,DL,%MOLD,%BE,%C,%GET,%L1NMB0,%HBRY
GETF Q:'$D(%FNAME)  Q:%FNAME=""  Q:'$D(^SCR(%SCRN,"P","NAME",%FNAME))
 S %NM=^SCR(%SCRN,"P","NAME",%FNAME) N %ECHO K %SCER D INIT
 I $D(%SCO) I (","_%SCO_",")[(","_%FNAME_",") S %MSC("OUT")=""
 I $D(%SCN) I (","_%SCN_",")[(","_%FNAME_",") K %MSC("OUT")
 K %L1GET I $D(%MSC("OUT")) S %L1GET=""
LGR U $P:(NOECHO:NOWRAP) K %TO,%FLL,%S,%L1DS,%SC S %TO="" ; W %ENG
 I '$D(%L1NMB),$D(%L1NMB0) M %L1NMB=%L1NMB0
 S %SAY=$G(%MSC("H")) X %XMSGN
 ;
 I '$D(%MSC("H")),$G(%MSC("GLOB"))?."^"1U.E D
 .N GLOB S GLOB=%MSC("GLOB") S:$E(GLOB)="^" GLOB=$E(GLOB,2,255)
 .I GLOB["]" S GLOB=$P(GLOB,"]",2,20)
 .I GLOB["|" S GLOB=$P(GLOB,"|",2,20)
 .;;S %SAY="" I '$D(^TABLs(GLOB,"NOPROG",%SCRN)) S %SAY=" <F9> - dlaha mipezp oekcr,"
 .S %SAY="" I $D(%MSC("CREAT")) S %SAY=$S(%ENGLISH:" UPDATE TABLE - <F9> ,",1:" <F9> - dlaha mipezp oekcr,")
 .S %SAY=%SAY_$S(%ENGLISH:" SEARCH BY NAME - <F6> , DISPLAY ALL - <F7> ",1:" <F7 > - dbvd , <F6> - my zlgzd itl yetig ") X %XMSGN
 ;
 I $D(%MSC("DO")) X %MSC("DO") Q:$G(%BS)
 S (%DIN,%MOLD)=$G(@%FNAME)
 S %XX=%MSC("X"),%YY=%MSC("Y") I '$D(%L1GET) S %INV=""
 X %POSIC S $Y=%YY,$X=%XX S %FL=""
 S %LS=%MSC("D") S %S=%DIN
 I $D(%L1SC(%SCRN,%FNAME)) S %S=%L1SC(%SCRN,%FNAME) I $G(%SCN)'[%FNAME S %L1GET=""
 I %MSC("RGS")="D" S %S=$TR(%S,"./","")
 I %MSC("RGS")="H",%MSC("D")'["/" S %S=$E(%S,$L(%S)-%LS+1,255)
 I %MSC("RGS")="H",%MSC("D")["/" G CIST
 I %MSC("RGS")="HH" S %S=$E(%S,$L(%S)-(%LS*%MSC("Y2"))+1,255)
 E  S %S=$E(%S,1,%LS)
CIST S CIST=$G(%MSC("S")) K:CIST="" CIST S %PRNEW=0
 M %L1NMB0=%L1NMB
 ;
 I %MSC("RGS")="E"!(%MSC("RGS")="N")!(%MSC("RGS")="EE") D  I '$D(%L1GET),%S'["==",$G(%MSC("DR")),$L($P(%S,"."))>(%MSC("D")-%MSC("DR")-1) D ER G LGR
 .S $X=%XX-1 I %MSC("RGS")="N" S CIST="0123456789+-.u*?"
 .K %BE,%FLINS N %HBRY S:%MSC("D")[">"!$D(%L1SCR(">")) %BE="E"
 .D  D ^%ZMSL K %INV,%FL,CIST
 ..S %XX=%MSC("X"),%YY=%MSC("Y")
 ..X %POSIC S $Y=%YY,$X=%XX
 .I $G(%MSC("DR"))>0,%S'["%" S %S=$J(%S,%MSC("DR")+1,%MSC("DR"))
 I %MSC("RGS")="H" S $X=%XX-1 K %FLINS D  D ^%L1ZMS K %INV,%FL,CIST
 .S:%MSC("D")[">"!$D(%L1SCR(">")) %BE="E"
 ;
 I %MSC("RGS")="HH" D HH
 ;
 I %MSC("RGS")="D" S $X=%XX S %L1DS=$TR(%S,"./:","") D ^%L1DAT S %S=%L1DAT1 ; LGR --> SET
 ;
 I %MSC("RGS")="T" S $X=%XX S %L1TS=$TR(%S,"./:","") D ^%L1TIME S %S=%L1TIME1 ; LGR --> SET
 ;-------- Q:$D(%L1GET)  S DL=%MSC("D")
 S DL=%MSC("D")
 I %MSC("RGS")="H" S %XX=%MSC("X")-DL
 S %XXXX=%XX,%YYYY=%YY
 X %XCL S:%TO="UP" %TO="END" I %TO="END" D VSV Q
 I $D(%L1SC(%SCRN,%FNAME)) S %S=%L1SC(%SCRN,%FNAME) K %L1GET,%L1SC(%SCRN,%FNAME) S %TO=""
 I ($D(%L1GET)) D VSV D REF,REF1 Q
 I %MSC("RGS")="N" S %S=+$TR(%S," ","")
 S @%FNAME=%S
 ;I ($D(%L1GET)) D VSV D REF,REF1 Q
 I DL[".",+%S,%MSC("RGS")="E"!(%MSC("RGS")="EE") S (%S,@%FNAME)=$TR($J(%S,+DL)," ",0) D VSV
 S %OLDTO=%TO ;I %TO="F9",$G(%MSC("C"))'?.P G IBUD
 I $G(%MSC("FNC"))[%TO,%TO'="",$G(%MSC("C"))'?.P G IBUD
 I $G(%MSC("GLOB"))?."^"1U.E D ^%L1SCRG I $D(%SC) D:$D(%SC("ER")) ER K %SC G LGR
 I $D(%MSC("NEW")),@%FNAME="",'$D(%L1GET),"PGDW"[%TO D ER K %SC G LGR
IBUD ;
 I $D(%MSC("C")),%MSC("C")'?.P S %NMOLD=%NM D  D:$G(%MSC("TO"))="PL" PL G:$G(%MSC("TO"))'="P" END D PS G END
 .S %NMOLD=%NM,YOLD=%YY
 .X %MSC("C")
 .S %NM=$G(%NMOLD),%YY=$G(YOLD)
 .Q
END ;
 I $D(%MSC("NEW")),$G(%FNAME)'="",$G(@%FNAME)="",'$D(%L1GET) D ER K %SC G LGR
 S %TO=$G(%OLDTO)
 ;;N %JJ,%A F %JJ=1:1:10 R *%A:0
 I $L($G(%FNAME)),$G(@%FNAME)="",$D(^SCR(%SCRN,"P","NAME",%FNAME,"KEY")) S %SC("ER")=1
 ;; W %ENG
 K %ECHO U $P:(NOECHO:NOWRAP) S %XX=%XXXX,%YY=%YYYY X %POSIC S $X=%XX,$Y=%YY
 D VSV
 I $D(%SC("ST"))!$D(%SC("ER")) D:$D(%SC("ER")) ER K %SC S:$G(%SC("ST"))="ER" @%FNAME=%MOLD G LGR
 S %DIN=$G(@%FNAME) D REF,REF1 X %XCL K %MSC,%L1SCR
 Q
 ;
ER ;
 X %XMSGV("ER") S @%FNAME=%MOLD
 Q
 ;
VSV U 0:(NOECHO:NOWRAP) X %POSIC,%XCL,%LIGHT
 S $X=%XX,$Y=%YY
 N VSV S VSV=$TR($G(@%FNAME),$C(10),"")
 I %MSC("RGS")="HH" D  G EV
 .N %L1GET,%TO,%OLDTO,%L1WH
 .W:%CVET %CV("YF")
 .S %L1GET="" D HH1(VSV)
 ;
 I %MSC("RGS")="H"!($$HBR(VSV)&($E(%MSC("RGS"))'="E")) S VSV=$$^%L1HB($$HBR^%L1FRM(VSV,DL))
 I '(%MSC("RGS")="H"!($$HBR(VSV)&($E(%MSC("RGS"))'="E"))) S VSV=$E(VSV,1,DL)
 I %CVET W %CV("YF")
 I DL["!",$L(VSV) W %CLI
 ;
 X %POSIC ;---
 I $G(%MSC("DR")) W $J(VSV,DL,%MSC("DR")) G EV
 I '$$ENG W $J(VSV,DL)
 I $$ENG W VSV_$J("",DL-$L(VSV))
EV X %XCL Q
 ;
PS ; D ^%L1SCA
 Q
 ;
PL ;
 Q
 ;
REF ;
 F %IR=1:1 Q:'$D(^SCR(%SCRN,"P","NAME",%FNAME,"KEY",%IR))  D
 .N VRB1,VRB2,REF1,REF2,I,ER S REF1=$P(^(%IR),"/\"),VRB1=$P(^(%IR),"/\",2)
 .S ER=0
 .F I=1:1:$L(REF1,",") S REF2=$P(REF1,",",I) I REF2?1U.E D
 ..I '$D(@REF2) S ER=1 Q
 ..I REF2="" S ER=1 Q
 .Q:ER
 .F I=1:1:$L(VRB1,",") S VRB2=$P(VRB1,",",I) I VRB2'="",$D(^SCR(%SCRN,"P","NAME",VRB2,"REF")) X:'$D(@VRB2)!'$D(%L1SCVRB) "S @VRB2="_$G(^SCR(%SCRN,"P","NAME",VRB2,"REF")) S %NN=$G(^SCR(%SCRN,"P","NAME",VRB2)) ;D ^%L1SCSAY
 .Q
 Q
REF1 ;
 Q:'$D(^SCR(%SCRN,"P","NAME",%FNAME,"REF1"))
 X "S "_^("REF1")_"=$G(@%FNAME)"
 Q
INIT ;
 K %MSC
 S %MSC("Y")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",")
 S %MSC("X")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",2)
 S %MSC("RGS")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",3)
 S %MSC("D")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",4)
 S %MSC("DR")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",5)
 S %MSC("Y2")=$P($P(^SCR(%SCRN,"P",%NM,"CRD"),",",4),"*",2)
 S:%MSC("Y2")'>1 %MSC("Y2",%NM)=1
 ;I +%MSC("DR")=0 K %MSC("DR",%NM)
 S %MSC("RGS")=^SCR(%SCRN,"P",%NM,"TYP")
 S %MSC("S")=$G(^SCR(%SCRN,"P",%NM,"RANGE")) I %MSC("S")="" K %MSC("S")
 S %MSC("H")=$G(^SCR(%SCRN,"P",%NM,"HELP")) I %MSC("H")="" K %MSC("H")
 S %MSC("C")=$G(^SCR(%SCRN,"P",%NM,"MUMPS2")) I %MSC("C")="" K %MSC("C")
 S %MSC("DO")=$G(^SCR(%SCRN,"P",%NM,"MUMPS1")) I %MSC("DO")="" K %MSC("DO")
 I $D(^SCR(%SCRN,"P",%NM,"MUST")) S %MSC("NEW")="Y"
 S:$G(^SCR(%SCRN,"P",%NM,"FNC"))?1U.E %MSC("FNC")=^("FNC")
 I $G(^SCR(%SCRN,"P",%NM,"GLOB"))'?.P S %MSC("GLOB")=^("GLOB") D
 .S:$G(^("NLN"))?1N.N %MSC("NLN")=^("NLN")
 .S:$G(^("TOPB"))?1N.N %MSC("TOPB")=^("TOPB")
 .S:$G(^("VRB"))?1U.E %MSC("VRB")=^("VRB")
 .S:$D(^("CREAT")) %MSC("CREAT")=^("CREAT")
 .S:$D(^("NS")) %MSC("NS")=$G(^("NS"))
 .S:$D(^("CHECK")) %MSC("CH")=$G(^("CHECK"))
 .S:$D(^("RZD")) %MSC("RZD")=$G(^("RZD"))
 I $D(^SCR(%SCRN,"P",%NM,"OUTPUT")) S %MSC("OUT")=""
 Q
HH1(%S) ;
HH ;
 N %X1,%Y1,%X2,%Y2,%OLDTO,%LS I $D(%L1GET) S %L1WH=""
 S %LS=%MSC("D")
 S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+%MSC("Y2")-1
 S %LS=%LS*%MSC("Y2") D ^%L1WH S %OLDTO=%TO
HH2 S %L1WH="" K %INV D ^%L1WH K %L1WH S %TO=%OLDTO
 Q
HBR(%TX) N %JJ,%OK S %OK=0 F %JJ=1:1:$L(%TX) I $A(%TX,%JJ)>95,$A(%TX,%JJ)<123 S %OK=1 Q
 Q %OK
 ;
ENG(STAM) ; 
 I $G(%ENGLISH) Q 1 
 I $G(%L1SC)="E" Q 1 
 Q 0
 
 
 
 
 
 
 
 
 
 
 

%L1SCR0
%L1SCR ; INPUT - %FNAME                [ 20.01.07 10:51 ] [ 19.01.07 13:25 ] [ 14.01.07 17:23 ]
 N %XX,%YY,%XXXX,%YYYY,%SAY,%INV,%S,CIST,%LS,DL,%MOLD,%BE,%C,%GET,%L1NMB0,%HBRY
GETF Q:'$D(%FNAME)  Q:%FNAME=""  Q:'$D(^SCR(%SCRN,"P","NAME",%FNAME))
 S %NM=^SCR(%SCRN,"P","NAME",%FNAME) N %ECHO K %SCER D INIT
 I $D(%SCO) I (","_%SCO_",")[(","_%FNAME_",") S %MSC("OUT")=""
 I $D(%SCN) I (","_%SCN_",")[(","_%FNAME_",") K %MSC("OUT")
 K %L1GET I $D(%MSC("OUT")) S %L1GET=""
LGR U $P:(NOECHO:NOWRAP) K %TO,%FLL,%S,%L1DS,%SC S %TO="" ; W %ENG
 I '$D(%L1NMB),$D(%L1NMB0) M %L1NMB=%L1NMB0
 S %SAY=$G(%MSC("H")) X %XMSGN
 I '$D(%MSC("H")),$G(%MSC("GLOB"))?."^"1U.E D
 .N GLOB S GLOB=%MSC("GLOB") S:$E(GLOB)="^" GLOB=$E(GLOB,2,255)
 .I GLOB["]" S GLOB=$P(GLOB,"]",2,20)
 .I GLOB["|" S GLOB=$P(GLOB,"|",2,20)
 .;;S %SAY="" I '$D(^TABLs(GLOB,"NOPROG",%SCRN)) S %SAY=" <F9> - dlaha mipezp oekcr,"
 .S %SAY="" I $D(%MSC("CREAT")) S %SAY=$S(%ENGLISH:" UPDATE TABLE - <F9> ,",1:" <F9> - dlaha mipezp oekcr,")
 .S %SAY=%SAY_$S(%ENGLISH:" SEARCH BY NAME - <F6> , DISPLAY ALL - <F7> ",1:" <F7 > - dbvd , <F6> - my zlgzd itl yetig ") X %XMSGN
 I $D(%MSC("DO")) X %MSC("DO") Q:$G(%BS)
 S (%DIN,%MOLD)=$G(@%FNAME)
 S %XX=%MSC("X"),%YY=%MSC("Y") I '$D(%L1GET) S %INV=""
 X %POSIC S $Y=%YY,$X=%XX S %FL=""
 S %LS=%MSC("D") S %S=%DIN
 I $D(%L1SC(%SCRN,%FNAME)) S %S=%L1SC(%SCRN,%FNAME) I $G(%SCN)'[%FNAME S %L1GET=""
 I %MSC("RGS")="D" S %S=$TR(%S,"./","")
 I %MSC("RGS")="H",%MSC("D")'["/" S %S=$E(%S,$L(%S)-%LS+1,255)
 I %MSC("RGS")="H",%MSC("D")["/" G CIST
 I %MSC("RGS")="HH" S %S=$E(%S,$L(%S)-(%LS*%MSC("Y2"))+1,255)
 E  S %S=$E(%S,1,%LS)
CIST S CIST=$G(%MSC("S")) K:CIST="" CIST S %PRNEW=0
 M %L1NMB0=%L1NMB
 I %MSC("RGS")="E"!(%MSC("RGS")="N")!(%MSC("RGS")="EE") D  I '$D(%L1GET),%S'["==",$G(%MSC("DR")),$L($P(%S,"."))>(%MSC("D")-%MSC("DR")-1) D ER G LGR
 .S $X=%XX-1 I %MSC("RGS")="N" S CIST="0123456789+-.u*?"
 .K %BE,%FLINS N %HBRY S:%MSC("D")[">"!$D(%L1SCR(">")) %BE="E"
 .;D  S:'$G(%ENGLISH)&(%MSC("RGS")'="N") %HBRY="" D ^%ZMSL K %INV,%FL,CIST
 .D  D ^%ZMSL K %INV,%FL,CIST
 ..S %XX=%MSC("X"),%YY=%MSC("Y")
 ..X %POSIC S $Y=%YY,$X=%XX
 .I $G(%MSC("DR"))>0,%S'["%" S %S=$J(%S,%MSC("DR")+1,%MSC("DR"))
 I %MSC("RGS")="H" S $X=%XX-1 K %FLINS D  D ^%L1ZMS K %INV,%FL,CIST
 .S:%MSC("D")[">"!$D(%L1SCR(">")) %BE="E"
 I %MSC("RGS")="HH" D HH
 I %MSC("RGS")="D" S $X=%XX S %L1DS=$TR(%S,"./:","") D ^%L1DAT S %S=%L1DAT1 ; LGR --> SET
 I %MSC("RGS")="T" S $X=%XX S %L1TS=$TR(%S,"./:","") D ^%L1TIME S %S=%L1TIME1 ; LGR --> SET
 ;-------- Q:$D(%L1GET)  S DL=%MSC("D")
 S DL=%MSC("D")
 ;;W %ENG
 S:%MSC("RGS")="H" %XX=%MSC("X")-DL
 S %XXXX=%XX,%YYYY=%YY
 X %XCL S:%TO="UP" %TO="END" I %TO="END" D VSV Q
 I $D(%L1SC(%SCRN,%FNAME)) S %S=%L1SC(%SCRN,%FNAME) K %L1GET,%L1SC(%SCRN,%FNAME) S %TO=""
 I ($D(%L1GET)) D VSV D REF,REF1 Q
 I %MSC("RGS")="N" S %S=+$TR(%S," ","")
 S @%FNAME=%S
 ;I ($D(%L1GET)) D VSV D REF,REF1 Q
 I DL[".",+%S,%MSC("RGS")="E"!(%MSC("RGS")="EE") S (%S,@%FNAME)=$TR($J(%S,+DL)," ",0) D VSV
 S %OLDTO=%TO ;I %TO="F9",$G(%MSC("C"))'?.P G IBUD
 I $G(%MSC("FNC"))[%TO,%TO'="",$G(%MSC("C"))'?.P G IBUD
 I $G(%MSC("GLOB"))?."^"1U.E D ^%L1SCRG I $D(%SC) D:$D(%SC("ER")) ER K %SC G LGR
 I $D(%MSC("NEW")),@%FNAME="",'$D(%L1GET),"PGDW"[%TO D ER K %SC G LGR
IBUD ;
 I $D(%MSC("C")),%MSC("C")'?.P S %NMOLD=%NM D  D:$G(%MSC("TO"))="PL" PL G:$G(%MSC("TO"))'="P" END D PS G END
 .S %NMOLD=%NM,YOLD=%YY
 .X %MSC("C")
 .S %NM=$G(%NMOLD),%YY=$G(YOLD)
 .Q
END ;
 I $D(%MSC("NEW")),$G(%FNAME)'="",$G(@%FNAME)="",'$D(%L1GET) D ER K %SC G LGR
 S %TO=$G(%OLDTO)
 ;;N %JJ,%A F %JJ=1:1:10 R *%A:0
 I $L($G(%FNAME)),$G(@%FNAME)="",$D(^SCR(%SCRN,"P","NAME",%FNAME,"KEY")) S %SC("ER")=1
 ;; W %ENG
 K %ECHO U $P:(NOECHO:NOWRAP) S %XX=%XXXX,%YY=%YYYY X %POSIC S $X=%XX,$Y=%YY
 D VSV
 I $D(%SC("ST"))!$D(%SC("ER")) D:$D(%SC("ER")) ER K %SC S:$G(%SC("ST"))="ER" @%FNAME=%MOLD G LGR
 S %DIN=$G(@%FNAME) D REF,REF1 X %XCL K %MSC,%L1SCR Q
ER ;
 X %XMSGV("ER") S @%FNAME=%MOLD
 Q
VSV X %POSIC,%XCL,%LIGHT
 S $X=%XX,$Y=%YY
 N VSV S VSV=$TR($G(@%FNAME),$C(10),"")
 I %MSC("RGS")="HH" D  G EV
 .N %L1GET,%TO,%OLDTO,%L1WH
 .W:%CVET %CV("YF")
 .S %L1GET="" D HH1(VSV)
 ;
 I %MSC("RGS")="H"!($$HBR(VSV)&(%MSC("RGS")'="EE")) S VSV=$TR($TR($E(VSV,$L(VSV)-DL+1,255),%TES1,%TES2),%TEN,%THB)
 E  S VSV=$E(VSV,1,DL)
 I %CVET W %CV("YF")
 I DL["!",$L(VSV) W %CLI
 X %POSIC ;---
 I $G(%MSC("DR")) W $J(VSV,DL,%MSC("DR")) G EV
 I '%ENGLISH W $J(VSV,DL)
 I %ENGLISH W VSV_$J("",DL-$L(VSV))
EV X %XCL Q
PS ; D ^%L1SCA
 Q
PL ;
 Q
REF ;
 F %IR=1:1 Q:'$D(^SCR(%SCRN,"P","NAME",%FNAME,"KEY",%IR))  D
 .N VRB1,VRB2,REF1,REF2,I,ER S REF1=$P(^(%IR),"/\"),VRB1=$P(^(%IR),"/\",2)
 .S ER=0
 .F I=1:1:$L(REF1,",") S REF2=$P(REF1,",",I) I REF2?1U.E D
 ..I '$D(@REF2) S ER=1 Q
 ..I REF2="" S ER=1 Q
 .Q:ER
 .F I=1:1:$L(VRB1,",") S VRB2=$P(VRB1,",",I) I VRB2'="",$D(^SCR(%SCRN,"P","NAME",VRB2,"REF")) X:'$D(@VRB2)!'$D(%L1SCVRB) "S @VRB2="_$G(^SCR(%SCRN,"P","NAME",VRB2,"REF")) S %NN=$G(^SCR(%SCRN,"P","NAME",VRB2)) ;D ^%L1SCSAY
 .Q
 Q
REF1 ;
 Q:'$D(^SCR(%SCRN,"P","NAME",%FNAME,"REF1"))
 X "S "_^("REF1")_"=$G(@%FNAME)"
 Q
INIT ;
 K %MSC
 S %MSC("Y")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",")
 S %MSC("X")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",2)
 S %MSC("RGS")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",3)
 S %MSC("D")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",4)
 S %MSC("DR")=$P(^SCR(%SCRN,"P",%NM,"CRD"),",",5)
 S %MSC("Y2")=$P($P(^SCR(%SCRN,"P",%NM,"CRD"),",",4),"*",2)
 S:%MSC("Y2")'>1 %MSC("Y2",%NM)=1
 ;I +%MSC("DR")=0 K %MSC("DR",%NM)
 S %MSC("RGS")=^SCR(%SCRN,"P",%NM,"TYP")
 S %MSC("S")=$G(^SCR(%SCRN,"P",%NM,"RANGE")) I %MSC("S")="" K %MSC("S")
 S %MSC("H")=$G(^SCR(%SCRN,"P",%NM,"HELP")) I %MSC("H")="" K %MSC("H")
 S %MSC("C")=$G(^SCR(%SCRN,"P",%NM,"MUMPS2")) I %MSC("C")="" K %MSC("C")
 S %MSC("DO")=$G(^SCR(%SCRN,"P",%NM,"MUMPS1")) I %MSC("DO")="" K %MSC("DO")
 I $D(^SCR(%SCRN,"P",%NM,"MUST")) S %MSC("NEW")="Y"
 S:$G(^SCR(%SCRN,"P",%NM,"FNC"))?1U.E %MSC("FNC")=^("FNC")
 I $G(^SCR(%SCRN,"P",%NM,"GLOB"))'?.P S %MSC("GLOB")=^("GLOB") D
 .S:$G(^("NLN"))?1N.N %MSC("NLN")=^("NLN")
 .S:$G(^("TOPB"))?1N.N %MSC("TOPB")=^("TOPB")
 .S:$G(^("VRB"))?1U.E %MSC("VRB")=^("VRB")
 .S:$D(^("CREAT")) %MSC("CREAT")=^("CREAT")
 .S:$D(^("NS")) %MSC("NS")=$G(^("NS"))
 .S:$D(^("CHECK")) %MSC("CH")=$G(^("CHECK"))
 .S:$D(^("RZD")) %MSC("RZD")=$G(^("RZD"))
 I $D(^SCR(%SCRN,"P",%NM,"OUTPUT")) S %MSC("OUT")=""
 Q
HH1(%S) ;
HH ;
 N %X1,%Y1,%X2,%Y2,%OLDTO,%LS I $D(%L1GET) S %L1WH=""
 S %LS=%MSC("D")
 S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+%MSC("Y2")-1
 S %LS=%LS*%MSC("Y2") D ^%L1WH S %OLDTO=%TO
HH2 S %L1WH="" K %INV D ^%L1WH K %L1WH S %TO=%OLDTO
 Q
HBR(%TX) N %JJ,%OK S %OK=0 F %JJ=1:1:$L(%TX) I $A(%TX,%JJ)>95,$A(%TX,%JJ)<123 S %OK=1 Q
 Q %OK

%L1SCREF
%L1SCREF ;   [ 10.12.03 18:18 ] [ 15.02.02 11:39 AM ] [ 14.11.01  2:34 PM ]
GET ;
 N %R,%MKT,%V,%I
 S %MKT=^SCR(%SCRN,"P","REF",%L1SCREF("N"),"STR")
 S %R=^("RZD")
 F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I %V?."%"1U.E S @%V=$P(%L1SCREF("S"),%R,%I)
 Q
GETALL G GA1 ;
 ; INPUT - %L1SCREF - GLOBAL REFERENCE , %SCRN - SCREEN NAME
 ; OUTPUT - ALL VARIABLES
GA(%SCRN,%L1SCREF,%GLB1) ;
 I %L1SCREF["\V" S %L1SCREF("SCV")="",%L1SCREF=$P(%L1SCREF,"\")
GA1 N %GLB,%GLBO,%OST,%MKT,%R,%II,%V,%I
 I '$D(%GLB1) S %GLB1=$G(^SCR(%SCRN,"P","REF",1))
 I %L1SCREF["=" S %GLB1=$P(%L1SCREF,"=",2),%L1SCREF=$P(%L1SCREF,"=")
 I $E(%GLB1,$L(%GLB1))=")" S %GLB1=$E(%GLB1,1,$L(%GLB1)-1)_","
 S:%GLB1'["(" %GLB1=%GLB1_"("
 F %II=1:1 Q:'$D(^SCR(%SCRN,"P","REF",%II,"STR"))  D
 .N %R,%MKT,%V,%I,%GLB
 .S %MKT=^("STR"),%R=^("RZD"),%GLB=^SCR(%SCRN,"P","REF",%II) Q:%GLB'[%GLB1&(%II>1)
 .S %OST=$P(%GLB,%GLB1,2,10)
 .I '$L(%OST) S %GLBO=$G(@%L1SCREF)
 .I $L(%OST),$E(%L1SCREF,$L(%L1SCREF))=")" S %GLBO=$G(@($E(%L1SCREF,1,$L(%L1SCREF)-1)_","_%OST))
 .I $L(%OST),%L1SCREF'["(" S %GLBO=$G(@(%L1SCREF_"("_%OST))
 .F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) D
 ..I $D(%L1SCREF("SCV")),%V?."%"1U.E S %SCV("MS",%V)=$P(%GLBO,%R,%I) Q
 ..I %V?."%"1U.E S @%V=$P(%GLBO,%R,%I)
 Q
GET1(%REF,%SCRN,%NMB,%NAME) ;
 N %R,%MKT,%V,%I,%OK
 S %MKT=^SCR(%SCRN,"P","REF",%NMB,"STR")
 S %R=^("RZD"),%OK=0
 F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I $L(%V),%V=%NAME S %OK=1 Q
 I %OK Q $P(%REF,%R,%I)
 Q "?????"
 Q
PUT(%REF,%SCRN,%NMB,%NAME) ;
 ; %REF - GLOBAL REFERENCE, %NMB - MACKET NUMBER, %NAME - LIST VARIABLE NAMES("%NM1,%NM2,...
 N %R,%MKT,%V,%I
 S %MKT=^SCR(%SCRN,"P","REF",%NMB,"STR")
 S %R=^("RZD")
 N %N,%NM F %N=1:1:$L(%NAME,",") D
 .S %NM=$P(%NAME,",",%N)
 .F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I %V=%NM S $P(@%REF,%R,%I)=$G(@%NM) Q
 Q
PUT1(%SCRN,%FNAME) ;
 Q:$G(%FNAME)=""  Q:$G(%SCRN)=""  N %F,%FN
 F %F=1:1:$L(%FNAME,",") D
 .S %FN=$P(%FNAME,",",%F)
 .Q:'$D(^SCR(%SCRN,"P","NAME",%FN,"REF1"))
 .X "S "_^("REF1")_"=$G(@%FN)"
 Q
PUTALL(%REF,%SCRN,%NMB) ;
 ;  %NMB - MACKET NUMBER (IF %NMB="A" - ALL MACKETS, %REF=^SCR(%SCRN,"P","REF",%NMB)
 I %NMB="A" D  Q
 .F %NMB=1:1 Q:'$D(^SCR(%SCRN,"P","REF",%NMB))  S %REF=^(%NMB) D PA
PA S %MKT=^SCR(%SCRN,"P","REF",%NMB,"STR")
 S %R=^("RZD")
 F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I %V?1U.E,$D(@%V) D
 .S $P(@%REF,%R,%I)=@%V
 Q

%L1SCRG
%L1SCRG ;         [ 15.03.19 12:28 ] [ 20.01.07 12:11 ] [ 16.12.03 10:27 ] 
 S %NMOLD=%NM N FILE,SH,SCH,%YYYY,X1,X2,Y1,Y2,%L1SCS,%PROG,%SCRNOLD,%L1SCRG
 S %L1SCS="",%SCRNOLD=$G(%SCRN)
 S STRING=%S,FILE=%MSC("GLOB") S:$E(FILE)'="^" FILE="^"_FILE
 D UCI^%L3MBGS
 I %TO="PGUP" S @%FNAME=$O(@FILE@(STRING),-1) S %TO="" Q
 I %TO="PGDW" S @%FNAME=$O(@FILE@(STRING)) S %TO="" Q
 S FILE(1)=%MSC("D"),FILE(2)=$G(%MSC("NLN"),30),FILE(3)=$G(%MSC("TOPB"),8)
 S RZD=$G(%MSC("RZD"),"*")
 I $G(%TO)="",'$D(%MSC("CH")) S @%FNAME=STRING D VRB G GETV ; END
 ;
 I $G(%TO)="F6"!($G(%TO)="F7")!((%S="*")!(%S="?")&($G(%TO)="")) D SAVE D  D REST G END
 .S:STRING="*"&($G(%TO)="") %TO="F7",%S="" S:STRING="?"&($G(%TO)="") %TO="F6",%S=""
 .D @$S($G(%TO)="F7":"DAFUS^%L3MBGS",1:"POISK^%L3MBGS")
 .I $G(FLAG)'=""!'$D(STRING) S %SC("ST")="" Q
 .S @%FNAME=STRING D VRB
 ;
 I $G(%TO)="F9",$D(%MSC("CREAT")) D TBL,VRB G END
GETV ;
 I @%FNAME="",$G(%MSC("NEW"))="Y",$G(%MSC("FNC"))'[%TO!(%TO="") S %SC("ER")="" G END
 I @%FNAME="",$G(%MSC("VRB"))?1U.E S @%MSC("VRB")="" G END
 I FILE["(" G END ;
 I @%FNAME'="" D  G:$D(%SC) END D VRB G END
 .I '($D(@(FILE_"(STRING)")))#2,$D(%MSC("CH")) D
 ..I '$D(%MSC("CREAT"))  S %SC("ER")="" Q
 ..S %GET="99 - miwdl . miiw `l" D N^%L1GET I %S'=99 D  Q
 ...I $G(%MSC("NEW"))="Y" S %SC("ER")="" Q
 ...S %SC("ST")="" D VRB Q
 ..D TBL
END S %NM=%NMOLD S %TO=""
 Q
 ;
PROGSET ;
 N N S N="" F  S N=$O(%L1SCRG("SET",N)) Q:N=""  S @N=%L1SCRG("SET",N)
 Q
SAVE I %TYPCRT="PC" D GET^%VIDEO("oldg",0,0,80,24,2) Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;3$v" Q
 Q
REST ;
 X %XCL I %TYPCRT="PC" D PUT^%VIDEO("oldg",0,0,80,24,2) K oldg Q
 I $E(%TYPCRT,1,3)="VT5",%CVET W $C(27,91),";;;;3;;;$v" Q
 S %SCRN=%SCRNOLD D A^%L1SC
 Q
VRB ;
 Q:$G(%MSC("VRB"))'?1U.E
 Q:'$D(STRING)
 I @%FNAME="" S @%MSC("VRB")="" Q
 N %A S %A=$P($G(@(FILE_"(STRING)")),RZD)
 I %MSC("VRB")=%FNAME,%A="" Q
 S @%MSC("VRB")=%A
 Q
TBL ;
 N GLOB,REST S GLOB=$E(FILE,2,20) S %SC("ST")="" S REST=1
 I GLOB["]" S GLOB=$P(GLOB,"]",2,20)
 I GLOB["|" S GLOB=$P(GLOB,"|",2,20)
 I $D(^TABLs(GLOB)) D SAVE D  D:REST REST Q
 .;;I $G(%SCRN)'="",$D(^TABLs(GLOB,"PROG",%SCRN)) S %PROG=^(%SCRN),%L1SCRG("STRING")=STRING N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%PROG) D ^%L1C D PROGSET,@%PROG Q
 .;;I $D(^TABLs(GLOB,"PROG")) S %PROG=^("PROG"),%PROG("STRING")=STRING Q:$D(^TABLs(GLOB,"NOPROG",%SCRN))  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%PROG) D ^%L1C D PROGSET,@%PROG Q
 .I $G(%SCRN)'="",$D(^TABLs(GLOB,"PROG",%SCRN)) S %PROG=^(%SCRN) D CALL S REST=0 Q
 .I $D(^TABLs(GLOB,"PROG"))#2 S %PROG=^("PROG"),%L1SCRG("STRING")=STRING Q:$D(^TABLs(GLOB,"NOPROG",%SCRN))  D CALL S REST=0 Q
 .D I^%L1TABL
 S NSNAME=$G(%MSC("NS")) D SAVE D ^%L1SCS
 S @%FNAME=STRING D REST
 Q
CALL ;
 N KEY S KEY="STRING"
 I $G(^TABLs(GLOB,"UCI"))?3U S %PROG=%PROG_"["_^("UCI")_"]"
 I $G(^TABLs(GLOB,"KEY"))?."%"1U.E S KEY=^("KEY") N @KEY S @KEY=STRING
 D ^%L1CALL(%PROG,%SCRN,KEY)
 Q
 

%L1SCRG0
%L1SCRG ;     [ 22.06.03 17:28 ] [ 04.11.01  6:43 PM ] [ 03.05.01 11:50 AM ]
 S %NMOLD=%NM N FILE,SH,SCH,%YYYY,X1,X2,Y1,Y2,%L1SCS,%PROG,%SCRNOLD,%L1SCRG
 S %L1SCS="",%SCRNOLD=$G(%SCRN)
 S STRING=%S,FILE=%MSC("GLOB") S:$E(FILE)'="^" FILE="^"_FILE
 D UCI^%L3MBGS
 I %TO="PGUP" S @%FNAME=$O(@FILE@(STRING),-1) S %TO="" Q
 I %TO="PGDW" S @%FNAME=$O(@FILE@(STRING)) S %TO="" Q
 S FILE(1)=%MSC("D"),FILE(2)=$G(%MSC("NLN"),30),FILE(3)=$G(%MSC("TOPB"),8)
 S RZD=$G(%MSC("RZD"),"*")
 I $G(%TO)="",'$D(%MSC("CH")) S @%FNAME=STRING D VRB G GETV ; END
 I $G(%TO)="F6"!($G(%TO)="F7")!((%S="*")!(%S="?")&($G(%TO)="")) D SAVE D  D REST G END
 .S:STRING="*"&($G(%TO)="") %TO="F7",%S="" S:STRING="?"&($G(%TO)="") %TO="F6",%S=""
 .D @$S($G(%TO)="F7":"DAFUS^%L3MBGS",1:"POISK^%L3MBGS")
 .I $G(FLAG)'=""!'$D(STRING) S %SC("ST")="" Q
 .S @%FNAME=STRING D VRB
 I $G(%TO)="F9",$D(%MSC("CREAT")) D TBL,VRB G END
GETV ;
 I @%FNAME="",$G(%MSC("NEW"))="Y",$G(%MSC("FNC"))'[%TO!(%TO="") S %SC("ER")="" G END
 I @%FNAME="",$G(%MSC("VRB"))?1U.E S @%MSC("VRB")="" G END
 I FILE["(" G END ;
 I @%FNAME'="" D  G:$D(%SC) END D VRB G END
 .I '($D(@(FILE_"(STRING)")))#2,$D(%MSC("CH")) D
 ..I '$D(%MSC("CREAT"))  S %SC("ER")="" Q
 ..S %GET="99 - miwdl . miiw `l" D N^%L1GET I %S'=99 D  Q
 ...I $G(%MSC("NEW"))="Y" S %SC("ER")="" Q
 ...S %SC("ST")="" D VRB Q
 ..D TBL
END S %NM=%NMOLD S %TO=""
 Q
 ;
PROGSET ;
 N N S N="" F  S N=$O(%L1SCRG("SET",N)) Q:N=""  S @N=%L1SCRG("SET",N)
 Q
SAVE I %TYPCRT="PC" D GET^%VIDEO(.oldg,0,0,80,24,2) Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;3$v" Q
 Q
REST ;
 X %XCL I %TYPCRT="PC" D PUT^%VIDEO(oldg,0,0,80,24,2) K oldg Q
 I $E(%TYPCRT,1,3)="VT5",%CVET W $C(27,91),";;;;3;;;$v" Q
 S %SCRN=%SCRNOLD D A^%L1SC
 Q
VRB ;
 Q:$G(%MSC("VRB"))'?1U.E
 Q:'$D(STRING)
 I @%FNAME="" S @%MSC("VRB")="" Q
 S @%MSC("VRB")=$P($G(@(FILE_"(STRING)")),RZD)
 Q
TBL ;
 N GLOB,REST S GLOB=$E(FILE,2,20) S %SC("ST")="" S REST=1
 I GLOB["]" S GLOB=$P(GLOB,"]",2,20)
 I GLOB["|" S GLOB=$P(GLOB,"|",2,20)
 I $D(^TABLs(GLOB)) D SAVE D  D:REST REST Q
 .I $G(%SCRN)'="",$D(^TABLs(GLOB,"PROG",%SCRN)) S %PROG=^(%SCRN) D CALL S REST=0 Q
 .I $D(^TABLs(GLOB,"PROG"))#2 S %PROG=^("PROG"),%L1SCRG("STRING")=STRING Q:$D(^TABLs(GLOB,"NOPROG",%SCRN))  D CALL S REST=0 Q
 .D I^%L1TABL
 S NSNAME=$G(%MSC("NS")) D SAVE D ^%L1SCS
 S @%FNAME=STRING D REST
 Q
CALL ;
 N KEY S KEY="STRING"
 ;;I $G(^TABLs(GLOB,"UCI"))?3U S %PROG=%PROG_"["_^("UCI")_"]"
 I $G(^TABLs(GLOB,"KEY"))?."%"1U.E S KEY=^("KEY") N @KEY S @KEY=STRING
 D ^%L1CALL(%PROG,%SCRN,KEY)
 Q

%L1SCS
%L1SCS ; INPUT TABLE PROVIDED      [ 21.11.05 21:56 ] [ 13.02.02 12:25 PM ] [ 28.11.01  8:58 AM ]
 ; INPUT: FILE,FILE(1),FILE(2),NSNAME
 ;-
ZAPR3 ;
 I '$D(%POSIC) D ^%L1C
 ;I $E(FILE,$L(FILE))=")" S FILE=$E(FILE,1,$L(FILE)-1)_","
 ;I FILE'["(" S FILE=FILE_"("
 ;I $E(FILE,$L(FILE))'="(",$E(FILE,$L(FILE))'="," S FILE=FILE_","
 S:'$D(RZD) RZD="*"
 N %MBS,VGR0,J,SH,SCH S %MBS("PAR",1)=" ;oezp xe`z;8,50;20;H;"
I S %SCSFIN=0 D ^%L1MBS1
 K %L1SCSZ ;-------------- PR NE OCHISTKI EKR
 D ^%L1SCSZ ;------------- ASK NUMBER ; OUTPUT - STRING
 K %L1SCSZ I %S=""!($G(%TO)="END") S %SCSFIN=1 G E3
 D VVSP I '$D(%L1SCS) G I
E3 Q:$D(%L1SCS)  S %GET="<99> - "_NSNAME_" qitcdl" D N^%L1GET
 I %S=99 S %UNIT=3 D ^%L1SCSP U 0 S %GET="<ENTER> ugl" D N^%L1GET
 Q
 ;-
VVSP ;
 I $D(@(FILE_"(STRING)"))=0 K %MBS("O") G INP
 D PCT
 S %GET=" <ESC> - d`ivi, 0 - leha, 3 - dqtcd ,2 - xtqn iepiy, 1 - mipezp oekcr++5,75,HH#1++1,E,I++01234"
 I %ENGLISH S %GET="MODIFY -1, CHANGE NUMBER - 2, PRINT - 3, ERASE - 0 , EXIT - ESC++5,7,EE#1++1,E,I++01234"
 D ^%L1GET Q:%S=""!(%TO="END")
 I %S=0 K %Q S %Q("Z")=$S(%ENGLISH:"ARE YOU SHURE",1:"geha"),%Q("X")=3,%Q("Y")=22 D ^%S2ASK I YES D KF^%L1SCSV K @FILE@(STRING) S STRING="" Q
 I %S=1 G INP
 I %S=2 D  Q
 .S %GET=": ycg xtqn++2,34,HH#++"_$G(FILE(1),10)_",E,I" D ^%L1GET Q:%S=""!(%TO="END")
 .N NEW S NEW=%S I $D(@FILE@(NEW)) S %SAY=" ! miiw xak xtqnd " X %XMSGV(1) Q
 .S MAC1=FILE_"(STRING)",MAC2=FILE_"(NEW)" D ^%S1GC1
 .D KF^%L1SCSV
 .K @FILE@(STRING) S STRING=NEW D SF^%L1SCSV
 I %S=3 D
 .D ^%L1LPT Q:$G(%EROP)
 .S %GETIN=1 D ^%L1TS
 .S %GET=" miwzrd zenk "
 .I %ENGLISH S %GET="COPIES NUMBER :"
 .D N^%L1GET K %GETIN Q:%TO="END"  S %EKZ=%S
 .N JJJ F JJJ=1:1:%EKZ+1 D
 ..U USTR W $C(18) W $J("",70-($L(%MBS("O",1))+$L(STRING)*2)\2),%L1OUT("MDP","B"),$TR(%MBS("O",1)_"  "_STRING,TS0,TSS),%L1OUT("MDP","N"),!!?10,$TR($J("",60)," ","-")
 ..F I=2:1:COLS W !,$TR($J(%MBS("O",I),40)_" : "_$J(%MBS("Z",I),LZ),TS0,TSS)
 ..W !?10,$TR($J("",60)," ","-"),#
 .D CLOSE^%L1LPT U 0
 I %S=4,FILE="^LAK",$G(STRING)'="" D
 .N MODEM S MODEM=$P($G(^LAK(STRING,1)),"\",3)
 .;;U 0 W $C(27)_"P$scomm1.psl "_MODEM_$c(27)_"\"
 .;;S %GET="<DONE>" D N^%L1GET
 .D ^%L1MDCON(STRING)
 Q
INP D ^%L1SCSV
 Q
PCT ;
 Q:STRING=""
 S %MBS("O",1)=$G(@(FILE_"(STRING)"))
 F I=2:1:COLS S %MBS("O",I)=$P($G(@(FILE_"(STRING,1)")),RZD,I-1)
 S %L1MBS="" D ^%L1MBS K %L1MBS
 Q

%L1SCS0
%L1SCS ; INPUT TABLE PROVIDED      [ 21.11.05 21:55 ] [ 13.02.02 12:25 PM ] [ 28.11.01  8:58 AM ]
 ; INPUT: FILE,FILE(1),FILE(2),NSNAME
 ;-
ZAPR3 ;
 I '$D(%POSIC) D ^%L1C
 ;I $E(FILE,$L(FILE))=")" S FILE=$E(FILE,1,$L(FILE)-1)_","
 ;I FILE'["(" S FILE=FILE_"("
 ;I $E(FILE,$L(FILE))'="(",$E(FILE,$L(FILE))'="," S FILE=FILE_","
 S:'$D(RZD) RZD="*"
 N %MBS,VGR0,J,SH,SCH S %MBS("PAR",1)=" ;oezp xe`z;8,50;20;H;"
I S %SCSFIN=0 D ^%L1MBS1
 K %L1SCSZ ;-------------- PR NE OCHISTKI EKR
 D ^%L1SCSZ ;------------- ASK NUMBER ; OUTPUT - STRING
 K %L1SCSZ I %S=""!($G(%TO)="END") S %SCSFIN=1 G E3
 D VVSP I '$D(%L1SCS) G I
E3 Q:$D(%L1SCS)  S %GET="<99> - "_NSNAME_" qitcdl" D N^%L1GET
 I %S=99 S %UNIT=3 D ^%L1SCSP U 0 S %GET="<ENTER> ugl" D N^%L1GET
 Q
 ;-
VVSP ;
 I $D(@(FILE_"(STRING)"))=0 K %MBS("O") G INP
 D PCT
 S %GET=" <ESC> - d`ivi, 0 - leha, 3 - dqtcd ,2 - xtqn iepiy, 1 - mipezp oekcr++5,75,HH#1++1,E,I++01234"
 I %ENGLISH S %GET="MODIFY -1, CHANGE NUMBER - 2, PRINT - 3, ERASE - 0 , EXIT - ESC++5,7,EE#1++1,E,I++01234"
 D ^%L1GET Q:%S=""!(%TO="END")
 I %S=0 K %Q S %Q("Z")=$S(%ENGLISH:"ARE YOU SHURE",1:"geha"),%Q("X")=3,%Q("Y")=22 D ^%S2ASK I YES D KF^%L1SCSV K @FILE@(STRING) S STRING="" Q
 I %S=1 G INP
 I %S=2 D  Q
 .S %GET=": ycg xtqn++2,34,HH#++"_$G(FILE(1),10)_",E,I" D ^%L1GET Q:%S=""!(%TO="END")
 .N NEW S NEW=%S I $D(@FILE@(NEW)) S %SAY=" ! miiw xak xtqnd " X %XMSGV(1) Q
 .S MAC1=FILE_"(STRING)",MAC2=FILE_"(NEW)" D ^%S1GC1
 .D KF^%L1SCSV
 .K @FILE@(STRING) S STRING=NEW D SF^%L1SCSV
 I %S=3 D
 .D ^%L1LPT Q:$G(%EROP)
 .S %GETIN=1 D ^%L1TS
 .S %GET=" miwzrd zenk "
 .I %ENGLISH S %GET="COPIES NUMBER :"
 .D N^%L1GET K %GETIN Q:%TO="END"  S %EKZ=%S
 .N JJJ F JJJ=1:1:%EKZ+1 D
 ..U USTR W $C(18) W $J("",70-($L(%MBS("O",1))+$L(STRING)*2)\2),%L1OUT("MDP","B"),$TR(%MBS("O",1)_"  "_STRING,TS0,TSS),%L1OUT("MDP","N"),!!?10,$TR($J("",60)," ","-")
 ..F I=2:1:COLS W !,$TR($J(%MBS("O",I),40)_" : "_$J(%MBS("Z",I),LZ),TS0,TSS)
 ..W !?10,$TR($J("",60)," ","-"),#
 .D CLOSE^%L1LPT U 0
 I %S=4,FILE="^LAK",$G(STRING)'="" D ^%L1MDCON(STRING)
 Q
INP D ^%L1SCSV
 Q
PCT ;
 Q:STRING=""
 S %MBS("O",1)=$G(@(FILE_"(STRING)"))
 F I=2:1:COLS S %MBS("O",I)=$P($G(@(FILE_"(STRING,1)")),RZD,I-1)
 S %L1MBS="" D ^%L1MBS K %L1MBS
 Q

%L1SCSA0
%L1SCSAY ;         [ 20.01.07 11:26 ] [ 19.01.07 14:59 ] [ 06.12.06 14:42 ]
SAY ;
 N V,CRD,TYP,VL,%XX,%YY,%INV,%X1,%X2,%Y1,%Y2,%LS,%L1WH
 S V=^SCR(%SCRN,"P","NM",%NN) S CRD=^SCR(%SCRN,"P",%NN,"CRD")
 S TYP=^("TYP") U $P:(NOECHO:NOWRAP:NOESC)
 I %TYPCRT["VT5" W $C(27,91),$P(CRD,",")+1,";",$P(CRD,",",2)+1-$S($E(TYP)'="H":0,1:($P(CRD,",",4))),";",$P(CRD,",")+1,";",$P(CRD,",",2)+1+$S($E(TYP)="H":0,1:$P(CRD,",",4)),"${"
 ;I %TYPCRT["VT5",%ENGLISH W $C(27,91),$P(CRD,",")+2,";",$P(CRD,",",2)+1-$S($E(TYP)'="H":0,1:($P(CRD,",",4))),";",$P(CRD,",")+1,";",$P(CRD,",",2)+2+$S($E(TYP)="H":0,1:$P(CRD,",",4)),"${"
 S VL=$G(@V) Q:VL?." "&(%TYPCRT["VT5")  Q:+VL=0&(TYP="N")&(%TYPCRT["VT5")
 I $P(CRD,",",5)'>0,'%ENGLISH S VL=$J(VL,+$P(CRD,",",4))
 ;;I $P(CRD,",",5)'>0,%ENGLISH S VL=" "_VL_$J("",$P(CRD,",",4)-$L(VL)-1)
 I $P(CRD,",",5)'>0,%ENGLISH S VL=VL_$J("",$P(CRD,",",4)-$L(VL))
 I TYP="N",$P(CRD,",",5)>0 S VL=$J(VL,$P(CRD,",",4),$P(CRD,",",5)) I +$TR(VL," ","")=0 S VL=$J("",$P(CRD,",",4))
 I TYP="D",VL?6N S VL=$E(VL,1,2)_"."_$E(VL,3,4)_"."_$E(VL,5,6)
 I TYP="T",VL?6N S VL=$E(VL,1,2)_":"_$E(VL,3,4)_":"_$E(VL,5,6)
 I TYP'="HH" D  G END
 .I TYP'="N",TYP'="EE" S %SAY=$$^%L1HB($E(VL,$L(VL)-$P(CRD,",",4)+1,$L(VL)))_"++"_$P(CRD,",")_","_$P(CRD,",",2)_","_$S(TYP="H":"HH",1:"EE")
 .I TYP="N" S %SAY=VL_"++"_$P(CRD,",")_","_$P(CRD,",",2)_","_$S(TYP="H":"HH",1:"EE")
 .I $P(CRD,",",4)["/",$L(VL)>$P(CRD,",",4) D
 ..S $P(%SAY,"++")="..."_$E(VL,$L(VL)-$P(CRD,",",4)+4,$L(VL))
 .S $Y=$P(CRD,","),$X=$P(CRD,",",2)
 .I $P(CRD,",",4)["!",VL'?.P S %SAY=%SAY_",I"
 .E  X %LIGHT
 .I %CVET W $S($D(%L1SCSAY("CV")):%L1SCSAY("CV"),1:%CV("YF"))
 .X %XMSG,%XCL
 N %X1,%Y1,%X2,%Y2 S %L1WH=""
 S %X1=$P(CRD,",",2)-$P(CRD,",",4),%X2=$P(CRD,",",2)-1
 S %Y1=$P(CRD,","),%Y2=%Y1+$P($P(CRD,",",4),"*",2)-1 K %LS
 K %INV I $P(CRD,",",4)["!",$L(VL) S %INV=""
 S %S=VL D ^%L1WH K %L1WH,%INV
END K %L1SCSAY X %XCL Q
 ;
P Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) Q:%NN=""  G SAY
 Q
P1(%FIELD) ;
 Q:$G(%FIELD)=""  Q:$G(%SCRN)=""  Q:'$D(^SCR(%SCRN))
 N %I,%FLD F %I=1:1:$L(%FIELD,",") S %FLD=$P(%FIELD,",",%I)  Q:%FLD=""  D
 .I %FLD["=" D
 ..I $E($P(%FLD,"=",2))'="""" S @($P(%FLD,"=")_"="""_$P(%FLD,"=",2)_""""),%FLD=$P(%FLD,"=") Q
 ..S @($P(%FLD,"=")_"="_$P(%FLD,"=",2)),%FLD=$P(%FLD,"=") Q
 .Q:$G(%FLD)=""
 .N %NN,%I S %NN=$G(^SCR(%SCRN,"P","NAME",%FLD)) Q:%NN=""  D SAY

%L1SCSAY
%L1SCSAY ;         [ 15.03.19 13:34 ] [ 01.02.07 15:57 ] [ 20.01.07 13:52 ] 
SAY ;
 N V,CRD,TYP,VL,%XX,%YY,%INV,%X1,%X2,%Y1,%Y2,%LS,%L1WH
 S V=^SCR(%SCRN,"P","NM",%NN) S CRD=^SCR(%SCRN,"P",%NN,"CRD")
 S TYP=^("TYP") U $P:(NOECHO:NOWRAP) ;:ESC)
 ;;I %TYPCRT["VT5" W $C(27,91),$P(CRD,",")+1,";",$P(CRD,",",2)+1-$S($E(TYP)'="H":0,1:($P(CRD,",",4))),";",$P(CRD,",")+1,";",$P(CRD,",",2)+1+$S($E(TYP)="H":0,1:$P(CRD,",",4)),"${"
 S VL=$G(@V) Q:VL?." "&(%TYPCRT["VT5")  Q:+VL=0&(TYP="N")&(%TYPCRT["VT5")
 I $P(CRD,",",5)'>0,'%ENGLISH S VL=$J(VL,+$P(CRD,",",4))
 I $P(CRD,",",5)'>0,%ENGLISH S VL=VL_$J("",$P(CRD,",",4)-$L(VL))
 I TYP="N",$P(CRD,",",5)>0 S VL=$J(VL,$P(CRD,",",4),$P(CRD,",",5)) I +$TR(VL," ","")=0 S VL=$J("",$P(CRD,",",4))
 I TYP="D",VL?6N S VL=$E(VL,1,2)_"."_$E(VL,3,4)_"."_$E(VL,5,6)
 I TYP="T",VL?6N S VL=$E(VL,1,2)_":"_$E(VL,3,4)_":"_$E(VL,5,6)
 ;
 I TYP'="HH" D  G END
 .I TYP'="N",TYP'="EE" S %SAY=$$^%L1HB($E(VL,$L(VL)-$P(CRD,",",4)+1,$L(VL)))_"++"_$P(CRD,",")_","_$P(CRD,",",2)_","_$S(TYP="H":"HH",1:"EE")
 .I TYP="N" S %SAY=VL_"++"_$P(CRD,",")_","_$P(CRD,",",2)_","_$S(TYP="H":"HH",1:"EE")
 .I $P(CRD,",",4)["/",$L(VL)>$P(CRD,",",4) D
 ..S $P(%SAY,"++")="..."_$E(VL,$L(VL)-$P(CRD,",",4)+4,$L(VL))
 .S $Y=$P(CRD,","),$X=$P(CRD,",",2)
 .I $P(CRD,",",4)["!",VL'?.P S %SAY=%SAY_",I"
 .E  X %LIGHT
 .I %CVET W $S($D(%L1SCSAY("CV")):%L1SCSAY("CV"),1:%CV("YF"))
 .X %XMSG,%XCL
 ;
 N %X1,%Y1,%X2,%Y2 S %L1WH=""
 S %X1=$P(CRD,",",2)-$P(CRD,",",4),%X2=$P(CRD,",",2)-1
 S %Y1=$P(CRD,","),%Y2=%Y1+$P($P(CRD,",",4),"*",2)-1 K %LS
 K %INV I $P(CRD,",",4)["!",$L(VL) S %INV=""
 S %S=VL D ^%L1WH K %L1WH,%INV
END K %L1SCSAY X %XCL Q
 ;
P Q:$G(%FNAME)=""  N %NN S %NN=$G(^SCR(%SCRN,"P","NAME",%FNAME)) Q:%NN=""  G SAY
 Q
P1(%FIELD) ;
 Q:$G(%FIELD)=""  Q:$G(%SCRN)=""  Q:'$D(^SCR(%SCRN))
 N %I,%FLD F %I=1:1:$L(%FIELD,",") S %FLD=$P(%FIELD,",",%I)  Q:%FLD=""  D
 .I %FLD["=" D
 ..I $E($P(%FLD,"=",2))'="""" S @($P(%FLD,"=")_"="""_$P(%FLD,"=",2)_""""),%FLD=$P(%FLD,"=") Q
 ..S @($P(%FLD,"=")_"="_$P(%FLD,"=",2)),%FLD=$P(%FLD,"=") Q
 .Q:$G(%FLD)=""
 .N %NN,%I S %NN=$G(^SCR(%SCRN,"P","NAME",%FLD)) Q:%NN=""  D SAY
 
 
 

%L1SCSP
%L1SCSP ;   [ 18.01.06 18:10 ] [ 27.11.01  5:31 PM ] [ 06.06.01  9:25 AM ]
 ;N %MBS,MRKV,COLG,%MBP,FILEOLD S %MBS("PAR",1)=" ;oezp xe`z;8,50;20;H;" D ^%L1MBS1
 N %MBP
 S %MBP("D",1)=3
 S %MBP("Z",1)="oezp cew"
I S %GET="2 - izatl` , 1 - ixnep xcq++23,70,HH#1++1,E,I++12" D N^%L1GET Q:%S=""!($G(%TO)="END")
 S %SCNUM=(%S=1)
 I '%SCNUM D
 .K @("^TEMPAi"_$J) N %L1SCN,%L1SCN1 S %L1SCN="" F  S %L1SCN=$O(@FILE@(%L1SCN)) Q:%L1SCN=""  D
 ..S %S=$G(^(%L1SCN)) I %S[" " D ALL^%S1KA
 ..S %L1SCN1="" F %IJ=1:1:6 Q:%IJ>$L(%S)  S %L1SCN1=%L1SCN1_$E(%S,$L(%S)-%IJ+1)
 ..;S $E(%L1SCN1,7,8)="\/" I %L1SCN1'["""",%L1SCN1'[")",%L1SCN1'["(",%L1SCN1'["," S @("^TEMPAi"_$J_"("""_%L1SCN1_%L1SCN_""")=""""")
 ..S $E(%L1SCN1,7,8)="\/" S @("^TEMPAi"_$J_"(%L1SCN1_%L1SCN)=""""")
 .S FILEOLD=FILE,FILE="^TEMPAi"_$J
 F I=1:1:COLS S %MBP("Z",I+1)=%MBS("Z",I),%MBP("D",I+1)=%MBS("D",I,1) S:$D(%MBS("DR",I)) %MBP("DR",I)=%MBS("DR",I)
 S %MBP("REF")=FILE_"(NOD)",%SKB1="(""",%SKB2=""")"
 S MRKV(1)="S RKV=$S(%SCNUM:NOD,1:$P(NOD,""\/"",2))"
 S MRKV(2)="S RKV=$S(%SCNUM:$G(@(FILE_""(NOD)"")),1:$G(@(FILEOLD_%SKB1_$P(NOD,""\/"",2)_%SKB2)))"
 I %SCNUM S IND=1 F I=1:1:COLS S MRKV(I+2)="S RKV=$P($G(@(FILE_""(NOD,"_IND_")"")),RZD,"_I_")"
 I '%SCNUM S IND=1 F I=1:1:COLS S MRKV(I+2)="S RKV=$P($G("_FILEOLD_"($P(NOD,""\/"",2),"_IND_")),RZD,"_I_")"
 S COLG=COLS+1
 S %MBP("VGR")=2 I %UNIT S %MBP("NGR")=50 D ^%L1TS
 E  S %MBP("NGR")=22
 S %MBP("LG")=0,%MBP("PG")=79 K %SHL
 I '$$^%L1DISP(%UNIT) S %DEV="%UNIT" D OPEN^%L1LPT Q:%EROP
 U %UNIT W !!
 I '$$^%L1DISP(%UNIT) S %MBP("KOT")="W %L1OUT(""MDP"",""B""),?3,%SHL,$TR($$^%L1HB("" sc""),TS0,TSS),?15,$TR($$^%L1HB(NSNAME),TS0,TSS),%L1OUT(""MDP"",""N"")"
 I $$^%L1DISP(%UNIT) S %MBP("KOT")="W %CLI,%SHL X %XCL W "" sc"" S $X=6 W ?15,%CLI,NSNAME X %XCL"
 I $$^%L1DISP(%UNIT) X %chista
 D ^%L1PCL
 K @("^TEMPAi"_$J)
 I '$$^%L1DISP(%UNIT) S %DEV="%UNIT" D CLOSE^%L1LPT
 Q
HB(ST) Q $$^%L1HB(ST)

%L1SCSV
%L1SCSV ; DATA INPUT       [ 31.05.09 16:01 ] [ 14.05.02  9:14 AM ] [ 29.06.01  9:51 AM ]
INP ; ------------------- INPUT
 U $P:(NOECHO:NOWRAP)
 K %L1MBS
 D ^%L1MBS
ISHUR ;
 D IS3^%L1GET
 G:$G(%TO)="END"!(%S=0) END G:%S=2!(%S=3) ZAP G INP
 Q
ZAP ;
 S @(FILE_"(STRING)")=%MBS("O",1)
 D KF D SF
 S IND=1,J=0
 F I=2:1:COLS S:%MBS("Z",I)["~" IND=IND+1,J=0 S J=J+1 S $P(@(FILE_"(STRING,IND)"),RZD,J)=%MBS("O",I)
END Q
SF ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  S FILEi
 N IN,IN1,I,JJ,SSS
 Q:STRING=""
 Q:'$D(@(FILE_"(STRING)"))
 I '$D(RZD) N RZD S RZD="\"
 I FILE="^NAME" S SSS=$P($G(@(FILE_"(STRING,1)")),RZD) I SSS'="" D IND(SSS) Q
 S SSS=$P($G(@(FILE_"(STRING)")),RZD) I SSS'="" D IND(SSS)
 Q
IND(SSS) ;
 N I,IN,IN1 Q:$G(SSS)=""
 D:'$D(%L1SCSV("NOKF")) KF
 S SSS=$TR(SSS,"/.;,()""","       ")
 F I=1:1:$L(SSS," ") S IN=$P($P(SSS," ",I),RZD) I IN'="" D
 .D IN1
 .S @(FILE_"i(IN1,STRING)")=""
 Q
KF ;
 ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  K FILEi
 N IN,IN1,I,JJ,SSS Q:STRING=""
 I '$D(RZD) S RZD="\"
 I FILE="^NAME" S SSS=$G(@(FILE_"(STRING,1)"))
 E  S SSS=$TR($G(@(FILE_"(STRING)")),"/.;,()""","       ")
 G KF2
KF1(FILE,STRING,SSS,RZD) ;
 N IN,IN1,I,JJ Q:$G(SSS)=""
KF2 ;
 F I=1:1:$L(SSS," ") S IN=$P($P(SSS," ",I),RZD) I IN'="" D
 .D IN1
 .Q:IN1=""  K @(FILE_"i(IN1,STRING)")
 ;K STRINGOLD
 Q
IN1 ;
 S:IN>0 IN=+IN I IN?1N.N!(IN?1U.U.P) S IN1=IN
 E  S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 Q

%L1SCSV1
%L1SCSV ; DATA INPUT [ 01/18/93  2:59 AM ]
INP ; ------------------- INPUT
 U $P:(NOECHO:NOWRAP)
 K %L1MBS
 D ^%L1MBS
ISHUR ;
 S %GET="<ESC> - rval `l, 2 - rval, 1 - owzl" D N^%L1GET
 G:$G(%TO)="END" END G:%S=2 ZAP G INP
 Q
ZAP S @(FILE_"(STRING)")=%MBS("O",1)
 D KF D SF
 S IND=1,J=0
 F I=2:1:COLS S:%MBS("Z",I)["~" IND=IND+1,J=0 S J=J+1 S $P(@(FILE_"(STRING,IND)"),RZD,J)=%MBS("O",I)
END Q
SF Q:'$D(@(FILE_"(STRING)"))  S SSS=$P($G(@(FILE_"(STRING)")),RZD) I SSS'="" D
 .D KF
 .F I=1:1:$L(SSS," ") S IN=$P($P(SSS," ",I),RZD) I IN'="" D
 ..S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 ..S @(FILE_"i(IN1,STRING)")=""
 Q
KF ;
 Q:$G(STRINGOLD)=""
 N STRING S STRING=STRINGOLD
 F I=1:1:$L($G(@(FILE_"(STRING)"))," ") S IN=$P($P($G(@(FILE_"(STRING)"))," ",I),RZD) I IN'="" D
 .S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 .Q:IN1=""  K @(FILE_"i(IN1,STRING)")
 K STRINGOLD
 Q

%L1SCSZ
%L1SCSZ ; ASK NUMBER ; OUTPUT: STRING [ 02/03/97  8:35 AM ]
 X %chista ; K STRING
 N %SCBEG,%SCSOF
 S %SCBEG=0,%SCSOF=0
 S:$G(STRING)="" %SCBEG=1
ZAPR1 U $P:(NOECHO:NOWRAP) K %ECHO S %HBRY=""
 S %SAY=NSNAME X %XMSGV
 S %SAY="<PGUP> - zncew dniyx, <PGDN> - d`a dniyx, <F7> - dbvd ,<F6> - my itl yetig" X %XMSGN
 S:'$D(FILE("Z")) FILE("Z")=" : oezp cew"
 S %GET=FILE("Z")_"++3,70,HH#"_$G(STRING)_"++"_FILE(1)_","_$G(FILE("REGKEY"),"E")_",I"
 S %FL="" D ^%L1GET
Z1 I %TO="PGDW" G:%SCSOF SOF S STRING=$O(@(FILE_"($G(STRING))")),%S=STRING S %SCSOF=$S(STRING?.P:1,1:0),%SCBEG=0 D PCT^%L1SCS G ZAPR1
 I %TO="PGUP" G:%SCBEG BEG S STRING=$ZP(@(FILE_"($G(STRING))")),%S=STRING S %SCBEG=$S(STRING?.P:1,1:0),%SCSOF=0 D PCT^%L1SCS G ZAPR1
 I %TO="F7" D DAFUS^%L3MBGS G ZAPR1
 I %TO="F6" D POISK^%L3MBGS G ZAPR1
 K %INV,%FL,%L1 G:%S=""!($G(%TO)="END") END
 K STRING
 S STRING=%S
 ;S %GET=" : oezp cew++3,70,HH#"_$G(STRING)
END S %XX=0,%YY=4 X %POSIC,%chiste
 Q
BEG S %SAY=" ! mipezp zligz " W *7 X %XMSGV H 2 W %vverxe,%chists G ZAPR1
SOF S %SAY=" ! mipezp seq " W *7 X %XMSGV H 2 W %vverxe,%chists G ZAPR1

%L1SCV
%L1SCV ;     [ 10.12.06 17:38 ] [ 21.04.02  9:56 AM ] [ 14.03.02 11:02 AM ]
G(%SCRN,%ST) ;
 N R,%I,NM S R=^SCR(%SCRN,"G","RZD")
 F %I=1:1 Q:'$D(^SCR(%SCRN,"G","NM",%I))  S NM=^(%I) I NM?."%"1U.E S @NM=$P(%ST,R,%I)
 Q
P(%SCRN,%ST) ;
 N R,%I,NM S R=^SCR(%SCRN,"G","RZD")
 F %I=1:1 Q:'$D(^SCR(%SCRN,"G","NM",%I))  S NM=^(%I) I NM?."%"1U.E S $P(@%ST,R,%I)=@NM
 Q
SCG(SCRN,ST,RZD) ; SHURA ^SCR(SCRN)
 I SCRN="" S ST1="<SUBSCR>" Q ST1
 I '$D(^SCR(SCRN)) S ST1="<"_SCRN_">" Q ST1
 I $D(^SCR(SCRN,"G"))<10 S ST1="<"_SCRN_"(G)>" Q ST1
 I '$D(^SCR(SCRN,"G","STG")) S ST1="<"_SCRN_"(STG)>" Q ST1
 S %STG=^("STG") S ST1=""
 N EN S EN=($G(^SCR(%SCRN))="E")
 N %I F %I=1:1 Q:'$D(^SCR(SCRN,"G",%I))  D
 .N %DL,%SC,%HE,%DL1,%GR S %SC=^(%I,"CRD")
 .I 'EN S %DL=$L($P(%STG,":",$L(%STG,":")-%I))
 .I EN S %DL=$L($P(%STG,":",%I+1))
 .S %DL1=$P(%SC,",",5)
 .S %HE=$P(%SC,",",3),%GR=$P(ST,RZD,%I)
 .S %GR=$S(%HE="N":$J(%GR,%DL,%DL1),1:$$HBR^%L1FRM(%GR,%DL))
 .I 'EN S ST1=%GR_" "_ST1
 .I EN S ST1=ST1_" "_%GR
 I 'EN S ST1=$P(%STG,":")_" "_ST1
 I EN S ST1=$P(%STG,":")_ST1
 Q ST1
SCH ; HEAD
 N MAS,SMB1,SMB2,%SCRN,CRD,SC,ST,ST1,%I,%I1,%SHP
 S %SCRN=%SCV("SCRN") ;,SC=%SCV("SC")
 S %SHP=$G(%SCV("SHP"),%SCRN_"v")
 N %NN,%NB S %NN="" F  S %NN=$O(%SCV("MS",%NN)) Q:%NN=""  D
 .Q:'$G(^SCR(%SCRN,"P","NAME",%NN))
 .S %NB=^(%NN) S MAS(%NB)=%SCV("MS",%NN)
 .S CRD=^SCR(%SCRN,"P",%NB,"CRD")
 .I $P(CRD,",",3)["H" D
 ..N LN S LN=$P(CRD,",",4)
 ..I LN["/" S LN=$P(LN,"/",2)
 ..S MAS(%NB)=$E(MAS(%NB),$L(MAS(%NB))-LN+1,255)
 .I $P(CRD,",",3)["E",%ENGLISH S MAS(%NB)=$$SPA^%L1FRM(MAS(%NB)) S MAS(%NB)=$E(MAS(%NB),1,$P(CRD,",",4)) S MAS(%NB)=MAS(%NB)_$J("",$P(CRD,",",4)-$L(MAS(%NB)))
 .I $P(CRD,",",5) S MAS(%NB)=$J(MAS(%NB),$P(CRD,",",4),$P(CRD,",",5))
 S %NN="" F  S %NN=$O(%SCV("MS1",%NN)) Q:%NN=""  I %NN?1N.N S MAS(%NN)=%SCV("MS1",%NN)
 N %STRS S %I1=0
 F %I=1:1 Q:'$D(^SHP(%SHP,%I))  S ST=^(%I) S:ST["$" %I1=%I1+1 Q:%SCV="V"&%I1  I ST'["$",(%SCV="V"&'%I1)!(%SCV="N"&(%I1=2)) D
 .I ST'["{",ST'["}",ST'["[",ST'["]",ST'["#" D W Q
 .S SMB1="{",SMB2="}" D FIG S SMB1="[",SMB2="]" D FIG
 .I ST["#" S %W1=0,ST1=$P(ST,"#") D  S ST=ST1
 ..;F %II=2:1:$L(ST,"#") S %W1='%W1  S:%W1 ST1=ST1_%CLI_" "_$P(ST,"#",%II) S:'%W1 ST1=ST1_" "_$C(27,91,48,109)_$S($D(%CL0):%CL0,1:"")_$P(ST,"#",%II)
 ..F %II=2:1:$L(ST,"#") S %W1='%W1  S:%W1 ST1=ST1_%CLI_$P(ST,"#",%II) S:'%W1 ST1=ST1_$C(27,91,48,109)_$S($D(%CL0):%CL0,1:"")_$P(ST,"#",%II)
 .D W
 Q
W S ^TMPS111($J,$ZP(^TMPS111($J,99999))+1)=$E(ST,1,255)
 Q
FIG N P1,P2,%IN
 I '$D(%ENGLISH) D ^%L1C
 F  S P1=$F(ST,SMB1) S:'P1 P1=1000 S P2=$F(ST,SMB2) S:'P2 P2=1000 Q:P1+P2>1000  D
 .S %IN=0
 .I $E(ST,P1)?1N S %IN=+$E(ST,P1,P1+1)
 .E  I $E(ST,P2-2)?1N S %IN=+$TR($E(ST,P2-3,P2-2)," ","")
 .I '%ENGLISH S $E(ST,P1-1,P2-1)=$J($G(MAS(%IN)),P2-P1+1) Q
 .I %ENGLISH S $E(ST,P1-1,P2-1)=$G(MAS(%IN))_$J("",P2-P1+1-$L($G(MAS(%IN)))) Q
 Q

%L1SDAT
%L1SDAT ; [ 11.10.15 12:05 ] [ 09.11.12 17:57 ] [ 08.09.12 11:46 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 X %chista
 S %SAY=" drye jix`z zxcbd " X %XMSGV
ZD S %GET="jix`z++3,70,HH#"_$$^%L1DC($H,1)_"++8,D,I" D ^%L1GET Q:%S?.P!(%TO="END")
 S DAT=%S
 S DD=$E(DAT,1,2)
 S MM=$E(DAT,3,4)
 S YY=$E(DAT,5,6)
 S TM=$$T^%L1TIME($H)
 S ST="sudo date -s 20"_YY_"-"_MM_"-"_DD
 U $P W !!?20
 ZSY ST
ZT S %GET="dry++3,50,HH#"_TM_"++8,T,I" D ^%L1GET I %S?.P!(%TO="END") G ZT
 S TM=%S
 U $P W !!?20
 ZSY "sudo date -s "_$E(TM,1,2)_":"_$E(TM,3,4)
 ZSY "sudo /sbin/hwclock --systohc"
 S %GET="<ENTER> ugl" D N^%L1GET Q

%L1SERV
SERVMD ; [ 19.07.04 16:43 ] [
 N CMD
 S CMD=$ZCMD
 I $P(CMD,":")="mly" D  H
 .S $ZROUTINES=^UCI("MLR"),$ZGBLDIR=^UCI("MLG")
 .D @$P(CMD,":",2)
 .S $ZROUTINES=^UCI("MGR"),$ZGBLDIR=^UCI("MGG")
 ;
 S $ZROUTINES=^UCI("MGR"),$ZGBLDIR=^UCI("MGG")
 D @$S(CMD[":":$P(CMD,":",2),1:CMD)
 H

%L1SF
%L1SF ;    [ 15.03.19 14:31 ] [ 07.03.19 19:15 ] [ 03.03.19 17:57 ] 
 K  D ^%L1C U $P:(NOECHO:NOWRAP:CTRAP=$C(3)) K ^S000($P)
 S ^%TYPCRT(%L3MYDVN)="VT510" D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":^%ET"
 ;R A Q:A'=2206
ZCOD X %chista S:$G(%SCRN)="" %SCRN=$G(^SCR) S %FL=1,%GET="SCREEN CODE ( ? - LIST ) :++3,20,EE#"_$G(%SCRN)_"++8,E,I++++++^SCR\\\\V" D ^%L1GET Q:%S=""!($G(%TO)="END")
 I %S="?" D  G ZCOD
 .S MAC="^SCR",%L1("EU")=1 S %L1("TXT")="S %L1NS(%I)=$J($G(^SCR(%NXN,""NAME"")),30)_"" | ""_$J(%NXN,8)"
 .S %L1("BE")=8
 .D ^%L1NU Q:FLAG'=""  S %SCRN=INDEX
 S %SCRN=%S
ZHBR  K HBR S %GET="HEBREW - H , ENGLISH - E:++14,20,EE#"_$G(^SCR(%SCRN))_"++1,E,I++EH" D ^%L1GET G:%S=""!($G(%TO)="END") ZCOD
 S NM=0 S MDFP=""
 I %S="H" S HBR="",%HBRY=""
 I %S'=$G(^SCR(%SCRN)) S ^SCR(%SCRN)=%S K MDFP
 S %GET="SCREEN NAME:++5,20,EE++RB,WF#"_$G(^SCR(%SCRN,"NAME"))_"++30,"_$S($D(HBR):"H",1:"E")_",I" D ^%L1GET
 S ^SCR(%SCRN,"NAME")=%S
 I '$D(MDFP) G REG1
 ; I $N(^SCR(%SCRN,-1))<0 G REG1
Z0 K MDFP I $G(%CVET) S %CL00=%CL0,%CL0=%CL1
 S %GET="MODIFY SCREEN - {}1{}, MODIFY PARAMETERS - {}2{}, MODIFY GROUP -{}3{} , VIEW - {}4{}" D NE^%L1GET S:$D(%CL00) %CL0=%CL00 I %S=""!($G(%TO)="END") G ZCOD
 I "1234"'[%S D TER G Z0
 I %S=2 S MDFP="" D VSVP Q:$G(%TO)="END"  G CP
 I %S=3 S %PAR="G" D CC G CPA
 I %S=4 D VSVP D PRINT G Z0
REG1 K MDFP F I=1:1 Q:'$D(^SCR(%SCRN,I))  S ^S000($P,I)=^SCR(%SCRN,I) D:$D(HBR)
 .S SS=^SCR(%SCRN,I) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 .S ^S000($P,I,"%TOP")=II-($E(SS,II)'=" ")
 S U=1 K L,R S SCR=$G(^SCR(%SCRN)) K ^SCR1(%SCRN) S MAC1="^SCR(%SCRN)",MAC2="^SCR1(%SCRN)" D ^%S1GC1
S2 S %TIP="G",%PRHBR=$S($D(HBR):1,1:0),RL=79,%RMAX=79,TXT=%SCRN D ^%S2ERG1
 S %GET="SAVE - 99" D N^%L1GET S:%TO="F9" %S=99 I %S'=99,%S'="Y",%S'="y",%S'="k" G ZCOD
 F I=1:1 Q:'$D(^S000($P,I))
 I I>23 S %GET=" 99 - xey`l. jqna zexey icn xzei" D N^%L1GET I %S'=99 G S2
 X %chista S %GET="NEW SCREEN CODE :++22,20,EE#"_$G(%SCRN)_"++8,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") ZCOD
 S %SCRN0=%SCRN,%SCRN=%S
 I %S'=%SCRN0,$D(^SCR(%S)) K %Q S %Q("Z")="SCREEN "_%S_" EXIST ! REWRITE",%Q("Y")=12,%Q("X")=10 D ^%S1ASK G:'YES ZCOD
 S %NAME=$G(^SCR(%SCRN,"NAME")) K ^SCR(%SCRN)
 ;F I=1:1:22 Q:'$D(^S000($P,I))  S ^SCR(%SCRN,I)=^S000($P,I)
 F I=1:1 Q:'$D(^S000($P,I))  S ^SCR(%SCRN,I)=^S000($P,I)
 K ^S000($P,I) S ^SCR(%SCRN)=SCR,^SCR(%SCRN,"NAME")=%NAME K SCR
 S MAC1="^SCR1(%SCRN0,""P"",""REF"")" S MAC2="^SCR(%SCRN,""P"",""REF"")" D ^%S1GC1
 ;-----------------------------------------------  OBR-KA &&& -----
 D SV(%SCRN)
 ;-----------------------------------------------  OBR-KA PARAM -----
CP S %PAR="P"
 D CC
 S %GET="FOR A WORK WITH GROUP REKVIZIT PRESS <ENTER>, EXIT - <ESC> " D N^%L1GET I $G(%TO)="END" G CPA
 S %SAY="WORK WITH GROUP REKVIZIT" X %XMSGN
 S %PAR="G" D CC
CPA K %L1GET D VSVP D ^%L1SCA
 D PRINT
 S %GET="COMMENT :++23,1,EE#++65,E,I" D ^%L1GET
 S ^%ERGS(+$H,"^SCR("_%SCRN,$P($H,",",2))=%S S ^%ERGS(+$H,"^SCR("_%SCRN)=$P($ZG,"/",$L($ZG,"/"))
 S ^SCR=%SCRN
 G %L1SF
END Q
PRINT ;
 S %GET=$S('$D(^SHP(%SCRN_"s")):"CREATE",1:"EDIT")_" PRINT FORM - 99 ?#2" D NE^%L1GET I %S'=99 G PR0
 S YES=1 I $D(^SHP(%SCRN_"s")) K %Q S %Q("Y")=24,%Q("X")=10,%Q("Z")=" PRINT FILE EXIST ! OWERWRITE " D ^%S1ASK
 I YES D ^%L1SFSH
 D
 .N (%UPRCOD,%XMSG,%MSC,%XMSGV,%XMSGN,%SCRN,HBR) D ^%L1C
 .S KOD=%SCRN_"s" D REG2^%S277
PR0 S %GET=$S('$D(^SHP(%SCRN_"v")):"CREATE",1:"EDIT")_" VIEW FORM - 99 ?#2" D NE^%L1GET Q:%S'=99  D
 .N (%UPRCOD,%XMSG,%MSC,%XMSGV,%XMSGN,%SCRN,HBR) D ^%L1C
 .S KOD=%SCRN_"v"
 .S NAM=$S($D(^SHP(KOD))#10:^SHP(KOD),1:"") G:$D(^SHP(KOD,1)) PR1
 .K ^SHP(KOD)
 .F I=1:1 Q:'$D(^SCR(%SCRN,I))  S ^SHP(KOD,I)=^(I)
PR1 .D REG2^%S277
 Q
CC ;
 S NM=.9 N %L1SF S %L1SF="" K ^SCR(%SCRN,%PAR,"NEW")
 F  K NM1 S NM=$O(^SCR(%SCRN,%PAR,NM)) Q:NM'>0  D  Q:NM=""  I NM>.9 D:$G(NM1)="A" VSVP,VSVALL X:$D(VSVI) "K VSVI D VSV" S:$D(NM1) NM=NM-1 I $G(%TO)="END" S NM=$O(^SCR(%SCRN,%PAR,NM),-1) Q:NM=""  S %TO="" I NM>0 S NM=$O(^SCR(%SCRN,%PAR,NM),-1)
 .D PODVAL S VSVI="" D VSV S %L1GET="",HZG=1 D Z K %L1GET S HZG=0 D Z
 I %PAR="G",'$D(^SCR(%SCRN,"G",1)) Q
 I %PAR="P",$D(^SCR(%SCRN,%PAR))<10 Q
 K %Q S %Q("Y")=23,%Q("X")=10 S %XX=0,%YY=%Q("Y") X %POSIC W %chists
 S %Q("Z")="ARE YOU SHURE " D ^%S1ASK G:'YES CC
 F  S NM=$O(^SCR(%SCRN,%PAR,NM)) Q:NM=""  I NM>0,$G(^SCR(%SCRN,%PAR,"NM",NM))'?1U.E D
 .S %SAY="HASN'T NAME !" W *7 X %XMSGN H 2
 .D PODVAL S VSVI="" D VSV S %L1GET="",HZG=1 D Z K %L1GET S HZG=0 D Z
CG I %PAR="G" D ^%L1SFGZ S %Q("Z")="ARE YOU SHURE " D ^%S1ASK G:'YES CG
 I %PAR="P" D ^%L1SFPZ S %Q("Z")="ARE YOU SHURE " D ^%S1ASK G:'YES CG
 Q
Z S ZT=$ZT D ^%L1SFZ S $ZT=ZT
 Q
 ;
VSV G:%PAR="G" VSVG S CRD=^SCR(%SCRN,%PAR,NM,"CRD"),CRDY=$P(CRD,",")-1,CRDX=$P(CRD,",",2),TYP=$P(CRD,",",3),CRDL=$P(CRD,",",4) I CRDL<3 S CRDL=3
 S %SAY=$S(TYP'["H":"{",1:$J(NM,CRDL-1))_$S(TYP["H":"}",1:NM_$J("",CRDL-$L(NM)-1))_"++"_CRDY_","_CRDX_","_$S(TYP["H":"HH",1:"EE")_$S($D(VSVI):",I",1:"") X %XMSG
 I TYP="HH" F II=1:1:$P(CRDL,"*",2)-1 S %SAY=$J("",+CRDL)_"++"_(CRDY+II)_","_CRDX_",HH,I" X %XMSG
 Q
VSVG S CRD=^SCR(%SCRN,%PAR,NM,"CRD"),CRDY=^SCR(%SCRN,%PAR,"VG"),CRDX=$P(CRD,",",2) S:CRDX["+" CRDY=CRDY+1 S TYP=$P(CRD,",",3),CRDL=$P(CRD,",",4) ; I CRDL<3 S CRDL=3
 S %SAY=$S(TYP'["H":"{",1:$J(NM,CRDL-1))_$S(TYP["H":"}",1:NM_$J("",CRDL-$L(NM)-1))_"++"_CRDY_","_CRDX_",HH"_$S($D(VSVI):",I",1:"") X %XMSG
 I TYP="HH" F II=1:1:$P(CRDL,"*",2)-1 S %SAY=$J("",+CRDL)_"++"_(CRDY+II)_","_CRDX_",HH,I" X %XMSG
 Q
PODVAL S CRDY=+^SCR(%SCRN,%PAR,NM,"CRD") S FSTY=$S(CRDY<12:19,1:1)
 I FSTY'=$G(FSTYOLD) D VSVALL
 S FSTYOLD=FSTY
PDV1 S %XX=0 F II=0:1:3 S %YY=FSTY+II X %POSIC W %chists
 S Y1=FSTY,X1=1,Y2=FSTY+5,X2=80 D ^%L1RBUA
 Q
 ;
CRDST N JJ,SMB S IOLD=I
 F JJ=$L(ST):-1:1 S SMB=$E(ST,JJ) S JJOLD=JJ D CRDH:SMB="}",CRDE:SMB="{" S JJ=JJOLD
 Q
VSVALL X %chista I $D(HBR) W %HBR S %HBRY=""
 N I,L,R S L=0,R=79
 N HB S HB=($G(^SCR(%SCRN))="H")
 F I=1:1 Q:'$D(^SCR(%SCRN,I))  D
 .W $$W^%L1C($G(^(I))),! Q
 .;;W !,$S(HB:$TR($TR(^(I),%TES1,%TES2),%TEN,%THB),1:^(I))
 Q
VSVP K %ECHO  N NM,%PAR,Y1,Y2,X1,X2 D VSVALL S %PAR="P" D VSVPR S %PAR="G" D VSVPR
 I $D(^SCR(%SCRN,"G","RB")) D
 .S J=0 F I="Y1","X1","Y2","X2" S J=J+1 S @I=$P(^("RB"),",",J)
 .I %TYPCRT["VT" S Y1=Y1-1
 I $D(^SCR(%SCRN,"G","RB")) D ^%L1RBUA
VSVPZ S %GET="NUMERIC SHOW -1, MNEMONIC -2, P-GLOBAL -3, G-GLOBAL -4, EXIT - <ENTER>#1" D NE^%L1GET Q:%S=""!($G(%TO)="END")
 I %S=1 D VSVALL G VSVPZ
 I %S=2 G VSVP
 I %S=3 D ^%L1SFPZ G VSVPZ
 I %S=4 S (FSTY,FSTYOLD)=19 D ^%L1SFGZ G VSVPZ
 Q
VSVPR S NM="" F  S NM=$O(^SCR(%SCRN,%PAR,NM)) Q:NM=""  I $D(^SCR(%SCRN,%PAR,"NM",NM))#2 S CRD=$G(^SCR(%SCRN,%PAR,NM,"CRD")) D
 .I $P(CRD,",",3)'="HH" S %SAY=$J(^SCR(%SCRN,%PAR,"NM",NM),$P(CRD,",",4))_"++"_(($P(CRD,",")-1)+($P(CRD,",",2)["+"))_","_$P(CRD,",",2)_","_$S($P(CRD,",",3)["H"!(%PAR="G"):"HH",1:"EE")_",I" X %XMSG Q
 .N %X1,%Y1,%X2,%Y2 S %L1WH=""
 .S %X1=$P(CRD,",",2)-$P(CRD,",",4),%X2=$P(CRD,",",2)-1,%Y1=$P(CRD,","),%Y2=%Y1+$P($P(CRD,",",4),"*",2)-1 K %LS ;D ^%L1WH
 .S %INV="",%L1WH="",%L1WH("CVF")=%CV("BF") S %S=$G(^SCR(%SCRN,%PAR,"NM",NM)) D ^%L1WH K %L1WH,%INV
 ;  
 S N="" F  S N=$O(^SCR(%SCRN,"P","RB",N)) Q:N=""  D
 .N Y1,Y2,X1,X2
 .S J=0 F I="Y1","X1","Y2","X2" S J=J+1 S @I=$P(^(N),",",J)
 .I %TYPCRT["VT" S Y1=Y1-1,Y2=Y2-1
 .D ^%L1RBUA
 .Q
 Q
TER W *7 S %SAY=" d ` i b y " X %XMSGV H 2 Q
CRDH ;
 N NM,L,JJJ
 Q:$E(ST,JJ-1)=" "
 S NM=+$TR($E(ST,JJ-2,JJ-1)," ","") Q:NM'>0
 S L=3 F JJJ=JJ-3:-1:1 Q:$E(ST,JJJ)'=" "  S L=L+1
 D CRDC
 S CRDH=$G(^SCR(%SCRN,%PAR,NM,"CRD"))
 S ^SCR(%SCRN,%PAR,NM,"CRD")=IOLD_","_JJOLD_","_$S($P(CRDH,",",3)["H":$P(CRDH,",",3),1:"H")_","_$S(L<$P(CRDH,",",4)!($P(CRDH,",",4)=""):L,1:$P(CRDH,",",4))
 Q
CRDE ;
 Q:$E(ST,JJ+1)=" "
 S NM=+$TR($E(ST,JJ+1,JJ+2)," ","") Q:NM'>0
 S L=3 F JJJ=JJ+3:1:$L(ST) Q:$E(ST,JJJ)'=" "  S L=L+1
 D CRDC
 S CRDE=$G(^SCR(%SCRN,%PAR,NM,"CRD"))
 S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",1,2)=IOLD_","_(JJOLD-1)
 S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",4)=$S(L<$P(CRDE,",",4)!($P(CRDE,",",4)=""):L,1:$P(CRDE,",",4))
 S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",3)=$S($P(CRDE,",",3)["H":"E",1:$P(CRDE,",",3))
 S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",5)=$S($P(CRDE,",",3)'="N":0,1:$P(CRDE,",",5))
 Q
CRDC ;
 S MAC1="^SCR1(%SCRN0,%PAR,NM)",MAC2="^SCR(%SCRN,%PAR,NM)" D ^%S1GC1
 S MAC1="^SCR1(%SCRN0,%PAR,""NM"",NM)",MAC2="^SCR(%SCRN,%PAR,""NM"",NM)" D ^%S1GC1
 S NN1=$G(^SCR1(%SCRN0,%PAR,"NM",NM)) I $L(NN1) S ^SCR(%SCRN,%PAR,"NAME",NN1)=NM
 S ^SCR(%SCRN,%PAR,NM,"LMAX")=L
 Q
CRDGR D ^%L1SFG
 Q
CRDRB ;
 N RB,Y1,Y2,X1,X2,I,I1,N,ST,SMB
 F I=1:1 Q:'$D(^SCR(%SCRN,I))  S ST=^SCR(%SCRN,I) I ST["["!(ST["]") D
 .F I1=1:1:$L(ST) S SMB=$E(ST,I1) D
 ..I SMB="[" S SMB1=$E(ST,I1+1) I SMB1?1N S RB(SMB1,"L")=(I+1)_"*"_I1 Q
 ..I SMB="]" S SMB1=$E(ST,I1-1) I SMB1?1N S RB(SMB1,"P")=(I+1)_"*"_I1 Q
 ;
 S N="" F  S N=$O(RB(N)) Q:N=""  I $D(RB(N,"P")),$D(RB(N,"L")) D
 .S Y1=$P(RB(N,"P"),"*"),Y2=$P(RB(N,"L"),"*",1)
 .S X1=$P(RB(N,"P"),"*",2),X2=$P(RB(N,"L"),"*",2)
 .Q:Y1=Y2!(X1=X2)
 .I Y1>Y2 S Y=Y1,Y1=Y2,Y2=Y
 .I X1>X2 S X=X1,X1=X2,X2=X
 .S ^SCR(%SCRN,"P","RB",N)=Y1_","_X1_","_Y2_","_X2
 Q
SV(%SCRN) ;
 N I,ST,%PAR,SCR
 X %chista F I=1:1 Q:'$D(^SCR(%SCRN,I))  D
 .S ST=^SCR(%SCRN,I) I ST["{"!(ST["}") S %PAR="P" D CRDST Q
 .I ST["$" S %PAR="G" D CRDGR
 .Q
 D CRDRB
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1SFCR
%L1SFCR ; CREATE A PROGRAM TEMPLATE [ 07/09/96 12:26 PM ]
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC) D ^%L1C
  S %LC("PROG")="P2EZM"
  S %LC("PROGNAME")="TEST PROGRAM"
  S %LC("FRST")="MUZAR"
  S %LC("FRST1")="MUZAR1"
  S %LC("TMP")="^TEMP($P,""EZ"")"
  S %LC("TMP1")="^TEMP($P,""EZ"""
  S %LC("GLB")="^P1EZI(MUZAR)"
  S %LC("GLB1")="^P1EZI(MUZAR"
  S %LC("GLBN")="$$SHEM^P1P(%NXN)"
  K ^TMPS111($J),^S110($J)
  S I1=0
  X "ZR  ZL %L1SFCRT F II=2:1 S A=$T(+II) Q:A=""""  W !,A ";S B=$$RPLA^%L1FRM(A,""%LC"",""{"",""}"") I B'="""" S I1=I1+1,^TMPS111($J,I1)=B"

%L1SFCRT
%L1SFCRT ; CREATE A PROGRAM TEMPLATE [ 07/09/96 12:11 PM ]
M ; {PROGNAME}
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C,^P1IN
BEG S %SCRN={SCR},(%SCVA,%SCVG)=1 D A^%L1SC K %SCVA,%SCVG
BEG1 S FRST=0,%FNAME={FRST} D GETF^%L1SC Q:%BS
 I $D(^{GLB}) D  G @LAB
 .D REST
 .D V^%L1SC,VG^%L1SC
ZB .S %GET=" 0 - lhal, 2 - qitcdl ,1 - okcrl#1" D N^%L1GET
 .I $G(%TO)="PGUP"!($G(%TO)="PGDW") S %SC("VIEW")=%TO S %L1SCBEG=1 D VG^%L1SC K %L1SCBEG G ZB
 .I %S=""!($G(%TO)="END") S LAB="BEG1" Q
 .I %S=0 D DS K {TMP} S LAB="BEG" Q
 .I %S=1 S LAB="BEG2" Q
 .I %S=2 D ^%L1SCPC S LAB="BEG" Q
 D V^%L1SC,VG^%L1SC
BEG2 S %L1SCBEG=1 D GETFG^%L1SC
 D IS^%L1GET I 'YES K {TMP} G BEG
 D SAVE G BEG1
 ;
REST ;
 I %OLDTO="F9" D HZG S %OLDTO="" Q
 N N,I,EM S I=0 K {TMP}
 S N="" F  S N=$O({GLB1},N)}) Q:N=""  D
 .S I=I+1
 .S {TMP1},I)={GLB1},N)
 S {TMP}=$G({GLB})
 Q
SAVE ;
 Q
DS ;--- DELETE
 Q
HZG S FLAG="" S MAC=$P(@({GLB0} K %L1 S %L1("EU")=1,%L1("BE")=6
 S %L1("TXT1")="{GLBN}<>20\/%NXN<>8"
 D ^%L1NU I FLAG'="" S %SC("ST")=1 Q
 S {FRST}=INDEX,{FRST1}={GLBN}
 Q

%L1SFCV
%L1SFCV ; CVET <--> BLI CVET [ 11/03/93  3:51 PM ]
 D ^%L1C S %SCRN="" F  S %SCRN=$O(^SCR(%SCRN)) Q:%SCRN=""  D ^%L1SCA
 Q

%L1SFG
%L1SFG ; [ 19.01.07 12:39 ] [ 09/16/2000  9:26 AM ] [ 09/03/2000 10:56 AM ]
CRDGR ;
 N GRY1,GRX1,GRY2,GRX2,II,STG,SMB,SMB1,SP,SP1,NM,L,CRDE,STG K %MPOZ
 S GRY1=I,GRX1=$F(ST,"$")-2
 F II=GRY1+1:1:23 Q:'$D(^SCR(%SCRN,II))  Q:^(II)["$"
 Q:'$D(^(II))  Q:^(II)'["$"
 S GRY2=II,GRX2=$F(^(II),"$")-2
 Q:GRY2'>GRY1  Q:GRX2=GRX1  I GRX2>GRX1 S GRX=GRX2,GRX2=GRX1,GRX1=GRX+1
 S SMB1=":"
 F II=GRY1:1:GRY2 Q:'$D(^SCR(%SCRN,II))  Q:^SCR(%SCRN,II)[SMB1
 Q:'$D(^(II))  Q:^(II)'[SMB1  S STG=^(II)
 ; S ^SCR(%SCRN,%PAR,"VG")=II+1,GRY=II
 N S01 S S01=$E($G(^SCR(%SCRN,II+1)),GRX2,GRX1)
 ;I S01[":" S STG=S01
 S ^SCR(%SCRN,%PAR,"VG")=$S(S01[":"!(S01["\"):II+3,1:II+2),GRY=II ; $S(II>12:II+2,1:II+3),GRY=II
 S ^SCR(%SCRN,%PAR,"STG")=STG
 F II="REF","STEP","MAX","RZD","DEL" S ^SCR(%SCRN,%PAR,II)=$G(^SCR1(%SCRN0,%PAR,II))
 S SP=0
 I $$SCRHBR F II=$L(STG):-1:1 S SMB=$E(STG,II) I SMB=":" S SP=SP+1 S %MPOZ(SP)=II-1
 I '$$SCRHBR K %MPOZ F II=1:1:$L(STG) S SMB=$E(STG,II) I SMB=":" S SP=SP+1 S %MPOZ(SP)=II+1
 S SP1=SP,SP=0
C F II=SP+2:1 Q:'$D(%MPOZ(II))  D
 .S NM=II-1 S L=%MPOZ(II-1)-%MPOZ(II)-1
 .I '$$SCRHBR S L=%MPOZ(II)-%MPOZ(II-1)-1
 .D CRDC^%L1SF N X S X=%MPOZ(II-1) I '$$SCRHBR S X=X+L-1
 .S CRDE=$G(^SCR(%SCRN,%PAR,NM,"CRD")) K ^SCR1(%SCRN0,%PAR,NM)
 .S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",1,2)=(GRY+1)_","_$S(SMB1="\":"+",1:"")_X
 .S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",4)=$S(L<$P(CRDE,",",4)!($P(CRDE,",",4)<1):L,1:$P(CRDE,",",4))
 .S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",3)=$S($P(CRDE,",",3)?.P:"H",1:$P(CRDE,",",3))
 .S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",",5)=$S($P(CRDE,",",3)'="N":0,1:$P(CRDE,",",5))
 .S ^SCR(%SCRN,%PAR,NM,"SHEM")=$E(STG,%MPOZ(II)+2,%MPOZ(II-1))
 .I '$$SCRHBR S ^SCR(%SCRN,%PAR,NM,"SHEM")=$E(STG,%MPOZ(II-1),%MPOZ(II)-2)
 .Q
 I SMB1="\" D  G M
 .S NM="" F  S NM=$O(^SCR(%SCRN,%PAR,NM)) Q:NM=""  I NM?1N.N S $P(^SCR(%SCRN,%PAR,NM,"CRD"),",")=$P(^SCR(%SCRN,%PAR,NM,"CRD"),",")+1
 .I ^SCR(%SCRN,%PAR,"STEP")=1 S ^("STEP")=2
 S SMB1="\"
 F II=GRY:1:GRY2 Q:^SCR(%SCRN,II)[SMB1
 I ^(II)[SMB1 S SP=SP1-1 D  S SP=SP1-1 G C ;;S ^("VG")=^SCR(%SCRN,%PAR,"VG")+1 G C
 .S STG=^(II)
 .I $$SCRHBR F II=$L(STG):-1:1 S SMB=$E(STG,II) I SMB="\" S SP=SP+1 S %MPOZ(SP)=II-1
 .I '$$SCRHBR F II=1:1:$L(STG) S SMB=$E(STG,II) I SMB="\" S SP=SP+1 S %MPOZ(SP)=II+1
 .Q
M S ^SCR(%SCRN,%PAR,"RB")=(GRY1+1)_","_(GRX2+1)_","_(GRY2+1)_","_(GRX1+1)
 Q
SCRHBR(STAM) ;
 I %ENGLISH Q 0
 I $G(^SCR(%SCRN))="H" Q 1
 Q 0

%L1SFGZ
%L1SFGZ ; [ 07.03.19 18:54 ] [ 08.03.05 12:35 ] [ 08/04/93  1:55 PM ]
 S %PAR="G"
 D PODVAL S %L1GET="",HZG=1 D ZN K %L1GET S HZG=0 D ZN Q:$G(%TO)="END"
 K %L1GET
 S ^SCR(%SCRN,%PAR,"REF")=NAME
 S ^SCR(%SCRN,%PAR,"RZD")=RZD
 S ^SCR(%SCRN,%PAR,"STEP")=STEP
 S ^SCR(%SCRN,%PAR,"MAX")=MAX
 S ^SCR(%SCRN,%PAR,"DEL")=DEL
 I DEL'="Y",DEL'="y" K ^("DEL")
 Q
ZN S NAME=$G(^SCR(%SCRN,%PAR,"REF"))
 S %GET="GLOBAL++"_FSTY_",2,EE#"_NAME_"++25,E,I" D ^%L1GET
 G:HZG ZD I $G(%TO)="END"!(%S="") S %TO="END" Q
 S NAME=%S
 I $P(NAME,"(")'?."^"1U.U.N.U D TER G ZN
 S:$E(NAME)'="^" NAME="^"_NAME
 S:$E(NAME,$L(NAME))=")" NAME=$E(NAME,1,$L(NAME)-1)
 S:$E(NAME,$L(NAME))="," NAME=$E(NAME,1,$L(NAME)-1)
ZD S RZD=$G(^SCR(%SCRN,%PAR,"RZD"))
 S %GET="DELIMITER ++"_FSTY_",32,EE#"_RZD_"++2,E,I" D ^%L1GET G:HZG Z1 K %L1GET
 I $G(%TO)="END"!(%S="") G ZN
 S RZD=$TR(%S," ","")
Z1 K %INV S STEP=$G(^SCR(%SCRN,%PAR,"STEP"),1)
ZT S %GET="STEP++"_FSTY_",50,EE#"_STEP_"++2,E,I++0123456789" D ^%L1GET K:'HZG %L1GET
 G:HZG ZL G:$G(%TO)="END"!(%S="") ZN
 S STEP=%S
ZL S MAX=$G(^SCR(%SCRN,%PAR,"MAX"),99999)
 S %GET="HOW MUCH LINE ++"_(FSTY+1)_",5,EE#"_MAX_"++5,E,I" D ^%L1GET Q:HZG  K %L1GET
 I $G(%TO)="END"!(%S="") G Z1
 S MAX=%S
ZDEL S DEL=$G(^SCR(%SCRN,%PAR,"DEL"),"N")
 S %GET="DELETE IT'S POSSIBLE (Y/N) ? ++"_(FSTY+1)_",35,EE#"_DEL_"++1,E,I++YyNn" D ^%L1GET Q:HZG  K %L1GET
 I $G(%TO)="END"!(%S="") G ZL
 S DEL=%S
 Q
PODVAL S CRDY=+$G(^SCR(%SCRN,%PAR,"VG")) S FSTY=$S(CRDY<12:20,1:1)
 I FSTY'=FSTYOLD D VSVALL^%L1SF
 S FSTYOLD=FSTY
 S %XX=0 F II=0:1:3 S %YY=FSTY+II X %POSIC W %chists
 S Y1=FSTY,X1=1,Y2=FSTY+4,X2=80 D ^%L1RBUA
 Q
TER W *7 S %SAY=" d ` i b y " X %XMSGV H 2 Q
 

%L1SFPZ
%L1SFPZ ; [ 08.03.05 12:34 ] [ 06/30/94 11:37 AM ]
 S %PAR="P" N STR,NAME,STR,RZD,MN,I,VR,ER
 S MN=1,NAMEOLD="",STROLD=""
 S %NN="" F  S %NN=$O(^SCR(%SCRN,%PAR,"NAME",%NN)) Q:%NN=""  K ^(%NN,"KEY")
P D PODVAL S %L1GET="",HZG=1 D ZN K %L1GET S HZG=0 D ZN I %TO="END" S:MN'>1 MN=2 S MN=MN-1 G P ; G:$G(%TO)="END" END
 K %L1GET D:NAME=""&(NAMEOLD'="") KILL G:NAME="" END G:RZD="" END
 ; F I=1:1:$L(STR,RZD) S VR=$P(STR,RZD,I) I VR'?.P,$D(^SCR(%SCRN,%PAR,"NAME",VR)) S ^SCR(%SCRN,%PAR,"NAME",VR,"REF")="$P($G("_NAME_"),"""_RZD_""","_I_")" S ^SCR(%SCRN,%PAR,"NAME",VR,"REF1")="$P("_NAME_","""_RZD_""","_I_")" ;*** LEV 24.04.94
 F I=1:1:$L(STR,RZD) S VR=$P(STR,RZD,I) I VR'?.P S ^SCR(%SCRN,%PAR,"NAME",VR,"REF")="$P($G("_NAME_"),"""_RZD_""","_I_")" S ^SCR(%SCRN,%PAR,"NAME",VR,"REF1")="$P("_NAME_","""_RZD_""","_I_")" ;*** LEV 24.04.94
 I NAME["(" D
 .N NAME1,NAME2,NAME3 S NAME1=$P($P(NAME,"(",2),")"),NAME3=""
 .F I=1:1:$L(NAME1,",") S NAME2=$P(NAME1,",",I) I NAME2?1U.E,$D(^SCR(%SCRN,%PAR,"NAME",NAME2)) S NAME3=NAME3_NAME2_",",^SCR(%SCRN,%PAR,"NAME",NAME2,"KEY")=""
 .S NAME3=$E(NAME3,1,$L(NAME3)-1)
 .I NAME3'="" S NAME2=$P(NAME3,",",$L(NAME3,",")) Q:NAME2=""
 .F IR=1:1 Q:'$D(^SCR(%SCRN,%PAR,"NAME",NAME2,"KEY",IR))
 .S ^SCR(%SCRN,%PAR,"NAME",NAME2,"KEY",IR)=NAME3_"/\"_$TR(STR,RZD,",")
 S ^SCR(%SCRN,%PAR,"REF",MN)=NAME
 S ^SCR(%SCRN,%PAR,"REF",MN,"STR")=STR
 S ^SCR(%SCRN,%PAR,"REF",MN,"RZD")=RZD
 S MN=MN+1 G P
END Q
ZN S NAME=$G(^SCR(%SCRN,%PAR,"REF",MN)),NAMEOLD=NAME
 S %GET="GLOBAL "_MN_"++"_FSTY_",2,EE#"_NAME_"++25,E,I" D ^%L1GET G:HZG ZD
 S:%TO="PGUP" %TO="END" I $G(%TO)="END"!($G(%TO)="PGDW"),'$D(^SCR(%SCRN,%PAR,"NEW")) Q
 S NAME=%S I NAME="" Q
 I $P(NAME,"(")'?."^"1U.U.N.U D TER G ZN
 S:$E(NAME)'="^" NAME="^"_NAME
 S:$E(NAME,$L(NAME))="," NAME=$E(NAME,1,$L(NAME)-1)_")"
 S:$E(NAME,$L(NAME))'=")" NAME=$E(NAME,1,$L(NAME)-1)_")"
ZD S RZD=$G(^SCR(%SCRN,%PAR,"REF",MN,"RZD"))
 S %GET="DELIMITER ++"_FSTY_",50,EE#"_RZD_"++2,E,I" D ^%L1GET G:HZG ZL K %L1GET
 I $G(%TO)="END"!(%S="") G ZN
 S RZD=$TR(%S," ","")
ZL S STR=$G(^SCR(%SCRN,%PAR,"REF",MN,"STR")),STROLD=STR
ZL1 S %SAY="STRUCTURE ++"_(FSTY+1)_",3,EE#" X %XMSG
 S %Y1=FSTY+2,%Y2=FSTY+3,%X1=2,%X2=78 S %S=STR D ^%L1WE K %X1,%Y1,%X2,%Y2 Q:HZG
 I $G(%TO)="END"!(%S="") G ZD
 S STR=%S
 S ER=0 F I=1:1:$L(STR,RZD) S VR=$P(STR,RZD,I) I VR'="",VR'?1U.U.N.U.N D TER S ER=1 Q
 G:ER ZL1 K ^SCR(%SCRN,%PAR,"NEW")
 Q
PODVAL S FSTY=19
 ; I FSTY'=FSTYOLD D VSVALL^%L1SF
 ; S FSTYOLD=FSTY
 S %XX=0 F II=0:1:4 S %YY=FSTY+II X %POSIC W %chists
 S Y1=FSTY,X1=1,Y2=FSTY+5,X2=80 D ^%L1RBUA
 Q
TER W *7 S %SAY=" d ` i b y " X %XMSGV H 2 Q
KILL ;
 F I=1:1:$L(STROLD,RZD) S VR=$P(STROLD,RZD,I) I VR'?.P,$D(^SCR(%SCRN,%PAR,"NAME",VR)) K ^SCR(%SCRN,%PAR,"NAME",VR,"REF") K ^SCR(%SCRN,%PAR,"NAME",VR,"REF1")
 I NAMEOLD["(" D
 .N NAME1,NAME2,NAME3 S NAME1=$P($P(NAMEOLD,"(",2),")"),NAME3=""
 .F I=1:1:$L(NAME1,",") S NAME2=$P(NAME1,",",I) I NAME2?1U.E,$D(^SCR(%SCRN,%PAR,"NAME",NAME2)) S NAME3=NAME3_NAME2_"," K ^SCR(%SCRN,%PAR,"NAME",NAME2,"KEY")
 .S NAME3=$E(NAME3,1,$L(NAME3)-1)
 .I NAME3'="" S NAME2=$P(NAME3,",",$L(NAME3,",")) Q:NAME2=""
 .F IR=1:1 Q:'$D(^SCR(%SCRN,%PAR,"NAME",NAME2,"KEY",IR))
 .K ^SCR(%SCRN,%PAR,"NAME",NAME2,"KEY",IR)
 K ^SCR(%SCRN,%PAR,"REF",MN)
 K ^SCR(%SCRN,%PAR,"REF",MN,"STR")
 K ^SCR(%SCRN,%PAR,"REF",MN,"RZD")
 Q

%L1SFSH
%L1SFSH ; SCR --> SHP [ 25.04.13 12:28 ] [ 001/19/00  3:12 PM ]
 N %ST,%I,%I1 S %SHP=%SCRN_"s"
 L ^SHP(%SHP):2 E  U 0 S %SAY=" xg` jqnn uaew mr micaer " X %XMSGV Q
 K ^SHP(%SHP) S %FLDLR=0,%I1=0
 N %COLS
 S %GET="izveaw dcya zexey dnk" D N^%L1GET Q:$G(%TO)="END"
 S %COLS=%S
 F %I=1:1 Q:'$D(^SCR(%SCRN,%I))  D
 .S %ST=^SCR(%SCRN,%I)
 .I %ST["$" S %FLDLR='%FLDLR S (SMB1,SMB2)="$" D FIG Q
 .I %ST[":" I %FLDLR S SMB1=":" S %JJJ1=0 D:$G(^SCR(%SCRN,%I+1))[":" WW D:$G(^SCR(%SCRN,%I+1))'[":" KOT D  D:$G(^SCR(%SCRN,%I+1))'[":" FP Q
 ..I ^SCR(%SCRN,%I+1)["\" S %I=%I+1 S %ST=^(%I) S SMB1="\" D KOT Q
 .I %ST'["{",%ST'["}",%ST'["[",%ST'["]" D W Q
 .S SMB1="{",SMB2="}" D FIG1
 .S SMB1="[",SMB2="]" D FIG
 .D W
 .Q
 Q
W S %I1=%I1+1 S ^SHP(%SHP,%I1)=%ST U 0 W !,%ST
 Q
WW N %STO S %STO=%ST
 S %STK=":"_$P(%ST,":",2,$L(%ST,":")-1)_":"
 S (KAV,%ST)=$J("",$L($P(%STO,":")))_$TR($J("",$L(%STK))," ","-") D W
 S %ST=$TR(%STO,":","|") D W
 Q
FIG N P1,P2,P3
 F  S P1=$F(%ST,SMB1) S:'P1 P1=1000 S P2=$F(%ST,SMB2) S:'P2 P2=1000 Q:P1+P2=2000  D
 .I P1<P2 S $E(%ST,P1-1,P1+1)="   " Q
 .S $E(%ST,P2-3,P2-1)="   "
 Q
FIG1 N P1,P2,%SMBN1,%SMBN2
 S P1=0,P2=0
 F  S P1=$F(%ST,SMB1,P1) S:'P1 P1=1000 S P2=$F(%ST,SMB2,P2) S:'P2 P2=1000 Q:P1+P2=2000  D
 .S %SMBN1=$E(%ST,P1,P1+1) S %SMBN2=$TR($E(%ST,P2-3,P2-2)," ",0)
 .I P1<P2 D  Q
 ..I P2=1000,$D(^SCR(%SCRN,"P",+%SMBN1,"CRD")) S $E(%ST,P1-1)="&" N P10 S P10=$P(^SCR(%SCRN,"P",+%SMBN1,"CRD"),",",4) S:P1-2+P10>(P1+2) $E(%ST,P1-2+P10)=">" Q
 ..I %SMBN1 S $E(%ST,P1-1)="&",$E(%ST,P2-1)=">" Q
 ..I %SMBN2 S $E(%ST,P2-3,P2-1)="  >",$E(%ST,P1-1,P1+$L(%SMBN2)-1)="&"_%SMBN2 Q
 .I %SMBN2 S $E(%ST,P2-3,P2-1)=">"
 .I %SMBN2 S P3=P2-$P(^SCR(%SCRN,"P",+%SMBN2,"CRD"),",",4)-1 S $E(%ST,P3,P3+$L(%SMBN2)-1)="&"_%SMBN2
 Q
KOT ;
 ;N CRD,LMAX,P1,%JJJ,%STO,%STK,%STB
 S %ST=$TR(%ST,"\",":")
 S %STO=%ST
 S %STK=":"_$P(%ST,":",2,$L(%ST,":")-1)_":"
 I SMB1=":",$G(^SCR(%SCRN,%I-1))'[":" S (KAV,%ST)=$J("",$L($P(%STO,":")))_$TR($J("",$L(%STK))," ","-") D W
 I SMB1=":" S %ST=%STO,%KG=$L(%ST,":"),%ST=$TR(%ST,":","|") D W I ^SCR(%SCRN,%I+1)["\" S %ST=$TR(^(%I+1),"\","|") D W
 I SMB1=":" S %ST=KAV D W
 S %STB=$P(%STO,":")_$S(SMB1="\":" ",1:"$")
 S %ST=""
 ;F %JJJ=$S(SMB1="\":$L(%STK,":")+%KG-2,1:$L(%STK,":"))-1:-1:$S(SMB1="\":%KG,1:2) D
 I '%ENGLISH F %JJJ=$L(%STK,":")-1:-1:2 D CRD
 I %ENGLISH F %JJJ=2:1:$L(%STK,":")-1 D CRD
 I $E(%ST)=":" S %ST=$E(%ST,2,255)
 I $E(%ST,$L(%ST))'=":" S %ST=%ST_":"
 S %ST=%STB_%ST_$S(SMB1="\":2,1:"1")
 D W
 Q
FP S %ST=""
 F %JJJ=1:1:%COLS-2 D W
 S %ST=$J("",$L($P(%STO,":")))_$J("",$L(%STK)) S $E(%ST,$L(%ST)-1)="$" D W
 S %ST=$G(KAV) D W
 Q
CRD ;
 S %JJJ1=%JJJ1+1 S CRD=^SCR(%SCRN,"G",%JJJ1,"CRD"),LMAX=^SCR(%SCRN,"G",%JJJ1,"LMAX")
 I $P(CRD,",",3)="H"!($P(CRD,",",3)="E") S %ST=$$ST($TR($J("",LMAX)," ","T"),%ST) Q
 I $P(CRD,",",5)>0 S %ST=$$ST($J($TR($J("",$P(CRD,",",4)-$P(CRD,",",5)-1)," ",9)_"."_$TR($J("",$P(CRD,",",5))," ",9),LMAX),%ST) Q
 S %ST=$$ST($J($TR($J("",$P(CRD,",",4))," ",9),LMAX),%ST) Q
 Q
ST(ST2,ST1) I %ENGLISH Q ST1_":"_ST2
 Q ST2_":"_ST1

%L1SFZ
%L1SFZ ;  [ 04.02.22 11:28 ] [ 07.03.19 19:15 ] [ 21.05.09 11:09 ] 
 ;"NEW" - NADO ZAK-T
Z ;
 N $ZT S $ZT="ZG "_$ZL_":INTR^%L1SFZ"
 S %FL="" S %GET="NUMBER++"_FSTY_",1,EE#"_NM_"++2,E,I++++DOUBLE - D, RENUMBER - N , CLEAR - C "_$S(%PAR="G":", RIGHT/LEFT SHIFT - SR,SL",1:"")_", VIEW - <F5>" D ^%L1GET
 S %SAY="" X %XMSGN
 I $G(%TO)="END"!($G(%TO)="UP")!($G(%TO)="PGUP") S %TO="END" Q:$D(^SCR(%SCRN,%PAR,"NEW"))<10
 I %S="",$D(^SCR(%SCRN,%PAR,"NEW"))<10 S NM="" Q
 I $G(%TO)="DW"!($G(%TO)="PGDW"),$D(^SCR(%SCRN,%PAR,"NEW"))<10 Q
 I %S="A" S NM1="A" Q
 I %S="" G Z
 S CHECK="N",RZD="\"
 ;
 I %S="D"!(%S="N"),%PAR="P" D  S NM1=%S Q
 .N NEW,OLD,NEWCRD,NEWLM,OPT,OLDCRD,OLDLM S OPT=%S
ZOLD .S %GET="OLD NUMBER:++24,10,EE,,,C#"_NM_"++2,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 .S OLD=%S I '$D(^SCR(%SCRN,%PAR,"NM",OLD)) W *7 G ZOLD
 .S %GET="NEW NUMBER:++24,30,EE#++2,E,I" D ^%L1GET S NEW=%S
 .I $D(^SCR(%SCRN,%PAR,NEW,"TYP")) W *7 S %SAY=" DEFINED !" X %XMSGN H 2 Q
 .I '$D(^SCR(%SCRN,%PAR,NEW,"CRD")) W *7 S %SAY=" NOT EXIST !" X %XMSGN H 2 Q
 .D RNMB
 ;
 I %S="C",%PAR="P" D  S NM1=%S Q
 .N NEW,OLD,NEWCRD,NEWLM
 .S %GET=" CLEAR NUMBER:" D NE^%L1GET Q:%S=""!($G(%TO)="END")  S NEW=%S
 .I '$D(^SCR(%SCRN,%PAR,NEW,"CRD")) W *7 S %SAY=" NOT EXIST !" X %XMSGN H 2 Q
 .D CLEAR
 ;
 I %S="SR",%PAR="G" D  S NM=$ZP(^SCR(%SCRN,%PAR,NM)) S:NM="" NM=.9 Q
 .N %S
 .S OPT="N" N MAX S MAX=$ZP(^SCR(%SCRN,%PAR,999))
 .N I,NEW,OLD F I=MAX:-1:NM+1 S NEW=I,OLD=I-1 D RNMB
 ;
 I %S="SL",%PAR="G" D  S NM=$ZP(^SCR(%SCRN,%PAR,NM)) S:NM="" NM=.9 Q
 .N %S
 .S OPT="N" N MAX S MAX=$ZP(^SCR(%SCRN,%PAR,999))
 .N I,NEW,OLD F I=NM:1:MAX-1 S NEW=I,OLD=I+1 D RNMB
 .S NEW=MAX D CLEAR
 ;
 I %S="SW" D  S NM=$ZP(^SCR(%SCRN,%PAR,NM)) S:NM="" NM=.9 Q
 .N NMB,NEW,OLD,OPT
ZSW .S %GET="SWAP WITH NUMBER:#3" D N^%L1GET Q:%S=""!($G(%TO)="END")
 .I '$D(^SCR(%SCRN,%PAR,%S)) X %XMSGV("ER") G ZSW
 .S NMB=%S
 .S OPT="N" S NEW=.9,OLD=NM S ^SCR(%SCRN,%PAR,NEW,"CRD")="1,1",^("LMAX")=1 D RNMB
 .S NEW=NM,OLD=NMB D RNMB
 .S NEW=NMB,OLD=.9 D RNMB
 .S NEW=.9 D CLEAR
 ;
 I '$D(^SCR(%SCRN,%PAR,%S)) D TER G Z
 I %S>NM,$D(^SCR(%SCRN,%PAR,"NEW"))>10 D TER G Z
 I %S'=NM K VSVI D VSV S NM=+$TR($J(%S-1,2)," ",0) Q
G S MUMPS1=$G(^SCR(%SCRN,%PAR,NM,"MUMPS1")) ;
 S MUMPS2=$G(^SCR(%SCRN,%PAR,NM,"MUMPS2")) ;
 S NLN=20,TOPB=8,VRB="",CREAT="N",NS=""
 S FUNCTION=$G(^SCR(%SCRN,%PAR,NM,"FNC"))
 S GLOB=$G(^SCR(%SCRN,%PAR,NM,"GLOB")) I GLOB'?.P D
 .S NLN=$G(^SCR(%SCRN,%PAR,NM,"NLN"),30) ;
 .S TOPB=$G(^SCR(%SCRN,%PAR,NM,"TOPB"),8) ;
 .S VRB=$G(^SCR(%SCRN,%PAR,NM,"VRB")) ;
 .S CREAT=$S($D(^SCR(%SCRN,%PAR,NM,"CREAT")):"Y",1:"N")
 .S CHECK=$S($D(^SCR(%SCRN,%PAR,NM,"CHECK")):"Y",1:"N")
 .S NS=$G(^SCR(%SCRN,%PAR,NM,"NS"))
 .S RZD=$G(^SCR(%SCRN,%PAR,NM,"RZD"))
 S (NAME,NAMEOLD)=$G(^SCR(%SCRN,%PAR,"NM",NM))
 S TYP=$P($G(^SCR(%SCRN,%PAR,NM,"CRD")),",",3),TYP1=$G(^SCR(%SCRN,%PAR,NM,"TYP"))
 S DROBL=+$P($G(^SCR(%SCRN,%PAR,NM,"CRD")),",",5)
 S LENGTH=$P($G(^SCR(%SCRN,%PAR,NM,"CRD")),",",4),LMAX=$G(^SCR(%SCRN,%PAR,NM,"LMAX"))
 S MUST=$S($D(^SCR(%SCRN,%PAR,NM,"MUST")):"Y",1:"N")
 S OUTPUT=$S($D(^SCR(%SCRN,%PAR,NM,"OUTPUT")):"Y",1:"N")
 S HELP=$G(^SCR(%SCRN,%PAR,NM,"HELP"))
ZN ;S NAME=$G(^SCR(%SCRN,%PAR,"NM",NM))
 S %GET="NAME++"_FSTY_",11,EE#"_NAME_"++8,E,I" D ^%L1GET S:$G(%TO)="UP" %TO="END"
 G:HZG Z1 I $G(%TO)="END"!(%S="") G Z
 S NAME=%S
 I NAME'?1U.U.N.U D TER G ZN
 I $D(^SCR(%SCRN,%PAR,"NAME",NAME)),$G(^(NAME))'=NM D TER G ZN
Z1 K %INV ;S TYP=$P($G(^SCR(%SCRN,%PAR,NM,"CRD")),",",3),TYP1=$G(^SCR(%SCRN,%PAR,NM,"TYP"))
 I TYP="E",TYP1'="",TYP1'="H" S TYP=TYP1
 I TYP="E",TYP1="" S TYP="N"
 ; I TYP="H" S %L1GET=""
ZT S %GET="TYP(E,N,H,HH,D,T,B)?++"_FSTY_",26,EE#"_TYP_"++2,E,I++BENHDTC?" D ^%L1GET K:'HZG %L1GET
 G:HZG ZL S:$G(%TO)="UP" %TO="END" G:$G(%TO)="END"!(%S="") ZN
 I %S="?" S %SAY="E - ENG, H - HBR, N - NUM , D - DATE, T - TIME, HH - FILD HBR DOUBLE" X %XMSGV H 3 G ZT
 I %S="H"!(%S="HH"),TYP'="H",TYP'="HH",%PAR="P" D TER G ZT
 I %S'="H",%S'="HH",TYP="H"!(TYP="HH"),%PAR="P" D TER G ZT
 S TYP=%S
 I TYP="D",$G(^SCR(%SCRN,%PAR,NM,"LMAX"))<8 D TER G ZT
 I (TYP="T"),$G(^SCR(%SCRN,%PAR,NM,"LMAX"))<5 D TER G ZT
ZL S %FL="" ;S LENGTH=$P($G(^SCR(%SCRN,%PAR,NM,"CRD")),",",4),LMAX=$G(^SCR(%SCRN,%PAR,NM,"LMAX"))
 I TYP="HH" S %SAY=" EXAMPLE:60*2 " X %XMSGV
 I TYP="D" S LENGTH=8,LMAX=8 S %L1GET=""
 I TYP="C" S LENGTH=16,LMAX=16 S %L1GET=""
 I TYP="T" S LENGTH=5,LMAX=5 S %L1GET=""
 I TYP="B" S LENGTH=1,%L1GET=""
 S %GET="LENGTH++"_FSTY_",48,EE#"_LENGTH_"++6,E,I" D ^%L1GET G:HZG Z2 K %L1GET
 S:$G(%TO)="UP" %TO="END"
 I $G(%TO)="END"!(%S="") G Z1
 S LENGTH=%S I TYP="D"!(TYP="T") G Z2
 I +LMAX,LENGTH>LMAX,'HZG D TER G ZL
 I TYP="HH",%S'["*" D TER G ZL
 I TYP="HH",$P(%S,"*")*$P(%S,"*",2)>250 D TER G ZL
Z2 I TYP'="N" S DROBL=0 G Z3
 S %GET="AFTER DOT++"_FSTY_",64,EE#"_DROBL_"++1,E,I++0123456789"
 D ^%L1GET G:HZG Z3 S:$G(%TO)="UP" %TO="END" G:$G(%TO)="END"!(%S="") Z1
 S DROBL=%S
Z3 ;S MUST=$S($D(^SCR(%SCRN,%PAR,NM,"MUST")):"Y",1:"N")
 S %GET="MUST (Y/N) ?++"_(FSTY+1)_",8,EE#"_MUST_"++1,E,I++YNyn" D ^%L1GET
 G:HZG Z31 S:$G(%TO)="UP" %TO="END"
 G:$G(%TO)="END"!(%S="") ZL S MUST=%S
Z31 ;S OUTPUT=$S($D(^SCR(%SCRN,%PAR,NM,"OUTPUT")):"Y",1:"N")
 S %GET="OUTPUT (Y/N) ?++"_(FSTY+1)_",28,EE#"_OUTPUT_"++1,E,I++YNyn" D ^%L1GET
 G:HZG Z32 S:$G(%TO)="UP" %TO="END"
 G:$G(%TO)="END"!(%S="") Z3 S OUTPUT=%S
Z32 ;S GLOB=$G(^SCR(%SCRN,%PAR,NM,"GLOB"))
 S %GET="FIND TO GLOBAL++"_(FSTY+1)_",48,EE#"_GLOB_"++8,E,I" D ^%L1GET
 Q:HZG&(GLOB="")  G:HZG Z330 S:$G(%TO)="UP" %TO="END" I %S="",GLOB?."^".E1A.E K ^SCR(%SCRN,%PAR,NM,"GLOB")
 G:$G(%TO)="END" Z31 S GLOB=%S I GLOB="" G Z4
 I $G(^SCR(%SCRN,%PAR,NM,"HELP"))="" S ^("HELP")=" <F7 > - dbvd , <F6> - my zlgzd itl yetig "
Z330 ;
 S %XX=1,%YY=FSTY+2 X %POSIC X %XCL W $J("",78) I GLOB?.P G Z4
 S %GET="CHECK (Y/N)++"_(FSTY+2)_",2,EE#"_CHECK_"++1,E,I" D ^%L1GET G:HZG Z33
 S:$G(%TO)="UP"!(%S="") %TO="END"
 G:$G(%TO)="END" Z32 S CHECK=%S
Z33 ;
 S %GET="NAME LENGTH++"_(FSTY+2)_",17,EE#"_NLN_"++2,E,I" D ^%L1GET
 G:HZG Z331
 S:$G(%TO)="UP"!(%S="") %TO="END"
 G:$G(%TO)="END" Z330 S NLN=%S
Z331 ;
 ;S TOPB=$G(^SCR(%SCRN,%PAR,NM,"TOPB"),8) ;
 S %GET="TOP BOUNDARY++"_(FSTY+2)_",34,EE#"_TOPB_"++2,E,I" D ^%L1GET G:HZG Z34
 S:$G(%TO)="UP"!(%S="") %TO="END"
 G:$G(%TO)="END" Z33 S TOPB=%S
Z34 ;
 ;S VRB=$G(^SCR(%SCRN,%PAR,NM,"VRB")) ;
 S %GET="TO VARIABLE++"_(FSTY+2)_",52,EE#"_VRB_"++8,E,I" D ^%L1GET G:HZG Z35
 S:$G(%TO)="UP" %TO="END"
 G:$G(%TO)="END" Z331 S VRB=%S G:VRB="" Z35
 I VRB'?1U.U.N.U D TER G ZN
Z35 ;
 S %GET="DELIMITER++"_(FSTY+3)_",2,EE#"_RZD_"++2,E,I" D ^%L1GET
 G:HZG Z350 S:$G(%TO)="UP" %TO="END"
 G:$G(%TO)="END"!(%S="") Z34 S RZD=%S
Z350 ;
 S %GET="FUNCTION KEYS++"_(FSTY+3)_",25,EE#"_FUNCTION_"++19,E,I" D ^%L1GET
 G:HZG Z351 S:$G(%TO)="UP" %TO="END"
 G:$G(%TO)="END" Z34 S FUNCTION=%S
Z351 S %GET="CREATE (Y/N/1) ?++"_(FSTY+3)_",58,EE#"_CREAT_"++2,E,I++1YNyn" D ^%L1GET
 Q:HZG  S:$G(%TO)="UP" %TO="END"
 G:$G(%TO)="END"!(%S="") Z35 S CREAT=%S I "Y1y1"'[CREAT S NS="" G Z4
Z36 ;
 ;S NS=$G(^SCR(%SCRN,%PAR,NM,"NS"))
 ;I CREAT[1 D TV^%L1TABL D VSVALL^%L1SF G Z4
 S %GET="GLOBAL HEADER++"_(FSTY+3)_",25,EE#"_NS_"++38,"_$S($D(HBR):"H",1:"E")_",I" D ^%L1GET
 S:$G(%TO)="UP" %TO="END"
 G:$G(%TO)="END"!(%S="") Z35 S NS=%S
Z4 ;S MUMPS1=$G(^SCR(%SCRN,%PAR,NM,"MUMPS1")) ;
 X %XCL S %SAY="MUMPS COMMAND 1:                                ++"_(FSTY+2)_",1,EE" X %XMSG W $J("",30)
 ;K %FL S %GET="++"_(FSTY+3)_",1,EE#"_MUMPS1_"++76,E,I" D ^%L1GET
 K %LS S %S=MUMPS1,%Y1=FSTY+3,%Y2=FSTY+5,%X1=1,%X2=78,%INV="" D ^%L1WE K %INV S %L1WE="" D ^%L1WE K %L1WE
 I %S="<" S %GET=" DOUBLE FROM NUMBER:#" D NE^%L1GET G:%S="" Z4 G:'$D(^SCR(%SCRN,%PAR,%S,"MUMPS1")) Z4 S MUMPS1=^("MUMPS1") G Z4
 S:$G(%TO)="UP"!($G(%TO)="PGUP") %TO="END"
 G:$G(%TO)="END" Z32
 I %S'=MUMPS1,MUMPS1'="" D IS1^%L1GET I 'YES G Z4
 S MUMPS1=%S
Z5 X %XCL ;S MUMPS2=$G(^SCR(%SCRN,%PAR,NM,"MUMPS2")) ;
 S %SAY="MUMPS COMMAND 2 :                               ++"_(FSTY+2)_",1,EE" X %XMSG
 ;S %GET="++"_(FSTY+3)_",1,EE#"_MUMPS2_"++76,E,I" D ^%L1GET
 K %LS N %OLDTO S %S=MUMPS2,%Y1=FSTY+3,%Y2=FSTY+5,%X1=1,%X2=78,%INV="" D ^%L1WE K %INV S %OLDTO=%TO S %L1WE="" D ^%L1WE K %L1WE
 I %S="<" S %GET=" DOUBLE FROM NUMBER:#" D NE^%L1GET G:%S="" Z5 G:'$D(^SCR(%SCRN,%PAR,%S,"MUMPS2")) Z5 S MUMPS2=^("MUMPS2") G Z5
 S %TO=%OLDTO
 S:$G(%TO)="UP"!($G(%TO)="PGUP") %TO="END"
 G:$G(%TO)="END" Z4
 I %S'=MUMPS2,MUMPS2'="" D IS1^%L1GET I 'YES G Z5
 S MUMPS2=%S
Z6 ;
 X %XCL ;S HELP=$G(^SCR(%SCRN,%PAR,NM,"HELP"))
 S %SAY="HELP:++"_(FSTY+2)_",1,EE" X %XMSG W $J("",30)
 S %GET="++"_(FSTY+3)_",2,EE#"_HELP_"++77,"_$S($D(HBR):"H",1:"E")_",I++++> - COPY HELP" D ^%L1GET
 S:$G(%TO)="UP"!($G(%TO)="PGUP") %TO="END"
 G:$G(%TO)="END" Z5
 S HELP=%S
 I HELP="<" S %GET=" DOUBLE FROM NUMBER:#" D NE^%L1GET G:%S="" Z6 G:'$D(^SCR(%SCRN,%PAR,%S,"HELP")) Z6 S HELP=^("HELP") G Z6
 S CRD=^SCR(%SCRN,%PAR,NM,"CRD") S CRD=$P(CRD,",",1,2)_","_TYP_","_LENGTH_","_DROBL
 S ^SCR(%SCRN,%PAR,NM,"CRD")=CRD
 S ^SCR(%SCRN,%PAR,NM,"TYP")=TYP
 S ^SCR(%SCRN,%PAR,NM,"MUMPS1")=MUMPS1
 S ^SCR(%SCRN,%PAR,NM,"MUMPS2")=MUMPS2
 I NAMEOLD'="" K ^SCR(%SCRN,%PAR,"NAME",NAMEOLD)
 S ^SCR(%SCRN,%PAR,"NAME",NAME)=NM
 S ^SCR(%SCRN,%PAR,NM,"HELP")=HELP
 S ^SCR(%SCRN,%PAR,"NM",NM)=NAME
 I "yY"'[MUST K ^SCR(%SCRN,%PAR,NM,"MUST")
 E  S ^SCR(%SCRN,%PAR,NM,"MUST")=""
 I "yY"'[OUTPUT K ^SCR(%SCRN,%PAR,NM,"OUTPUT")
 E  S ^SCR(%SCRN,%PAR,NM,"OUTPUT")=""
 K ^SCR(%SCRN,%PAR,NM,"VRB"),^("NS")
 I GLOB?.P K ^SCR(%SCRN,%PAR,NM,"NLN"),^("TOPB"),^("VRB"),^("CREAT"),^("NS"),^("CHECK"),^("RZD"),^("FNC")
 I GLOB?."^".E1A.E S ^SCR(%SCRN,%PAR,NM,"GLOB")=GLOB,^("NLN")=NLN,^("TOPB")=TOPB,^("CHECK")=CHECK,^("RZD")=RZD,^("FNC")=FUNCTION K:CHECK="N" ^("CHECK") D  I VRB'?.P S ^("VRB")=VRB
 .I "yY"'[CREAT K ^SCR(%SCRN,%PAR,NM,"CREAT")
 .E  S ^SCR(%SCRN,%PAR,NM,"CREAT")="",^("NS")=NS
 I %PAR="G" S VSVI=""
 K ^SCR(%SCRN,%PAR,"NEW",NM)
 Q
VSV D VSV^%L1SF
 Q
TER W *7 S %SAY=" d ` i b y " X %XMSGV H 2 Q
INTR I $ZS["CTRAP" S $ZT="ZG "_$ZL_":INTR^%L1SFZ" G Z4
 Q
RNMB ;
 N NEWCRD,NEWLM,MAC1,MAC2,OLDCRD,OLDLM
 S NEWCRD=^SCR(%SCRN,%PAR,NEW,"CRD")
 S MAC1="^SCR(%SCRN,%PAR,OLD)",MAC2="^SCR(%SCRN,%PAR,NEW)" D ^%S1GC1
 I OPT="N" S MAC1="^SCR(%SCRN,%PAR,""NM"",OLD)",MAC2="^SCR(%SCRN,%PAR,""NM"",NEW)" D ^%S1GC1
 I OPT="N",$G(^SCR(%SCRN,%PAR,"NM",OLD))?1U.E S ^SCR(%SCRN,%PAR,"NAME",^SCR(%SCRN,%PAR,"NM",OLD))=NEW
 S OLDCRD=^SCR(%SCRN,%PAR,OLD,"CRD"),OLDLM=^("LMAX")
 S ^SCR(%SCRN,%PAR,NEW,"CRD")=$P(NEWCRD,",",1,2)_","_$P(OLDCRD,",",3,5)
 I OPT="N" D  ;K ^SCR(%SCRN,%PAR,OLD),^SCR(%SCRN,%PAR,"NM",OLD) S ^SCR(%SCRN,%PAR,OLD,"CRD")=OLDCRD,^("LMAX")=OLDLM
 .N NEW S NEW=OLD D CLEAR
 S ^SCR(%SCRN,%PAR,"NEW",NEW)="",^SCR(%SCRN,%PAR,"NEW")=""
 Q
CLEAR ;
 N NEWCRD,NEWLM
 I $D(^SCR(%SCRN,%PAR,NEW,"CRD")) S NEWCRD=^("CRD"),NEWLM=^("LMAX")
 K ^SCR(%SCRN,%PAR,NEW) I $G(^SCR(%SCRN,%PAR,"NM",NEW))?1U.E K ^SCR(%SCRN,%PAR,"NAME",^SCR(%SCRN,%PAR,"NM",NEW)) K ^SCR(%SCRN,%PAR,"NM",NEW)
 I $D(NEWCRD),$D(NEWLM),NEW'<1 S ^SCR(%SCRN,%PAR,NEW,"CRD")=NEWCRD,^("LMAX")=NEWLM
 Q
 
 
 

%L1SGK
%L1SGK ;CDS;DISK BLOCK DUMP; [ 04/28/94  2:59 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1984
 S $ZT="ZG "_$ZL_":ERR1^%L1SGK"
 W !?10,$P($P($ZV,","),"-")," - Block Dump Utility"
 O 63::0 E  U 0 W !,"VIEW BUFFER IN USE, TRY LATER." Q
 S %LR="",R="" K %POINT
 O 54:("#GLOBAL.RES":"W")
ASK G:$D(%INT) EXIT S $ZT="ZG "_$ZL_":ERR1^%L1SGK" U 0 R !,"FROM BLOCK: ",%BN G EXIT:%BN=""!(%BN="^Q"),DEV:%BN="^"
 G:%BN'="?" ASK1
 W !,"Enter block number in one of the following forms:",!
 W !,"  bn",!,"  vn:bn",!,"  bn:vg",!,"  vn:bn:vg",!,"  exp",!,"  *",!
 W !,"Where vn is the volume number (0 is the default),"
 W !?6,"bn is the relative block number,"
 W !?6,"vg is a 'G' followed by the volume group index (default is current)."
 W !?6,"exp is a MUMPS expression (i.e., X+3),"
 W !?6,"* means the block currently in the View buffer.",!
 G ASK
ASK1 ;
 S $ZT="ZG "_$ZL_":ERR^%L1SGK"
 R !,"  TO BLOCK: ",%BNF G EXIT:%BNF=""!(%BNF="^Q"),DEV:%BNF="^"
 R !,"    GLOBAL: ",%GLB G EXIT:%GLB=""!(%GLB="^Q"),DEV:%GLB="^"
 I %GLB'["(" S %GLB=%GLB_"("
 R !,"ALL BLOCKS ? (1/0) : ",%ALLBLK I %ALLBLK'=1 S %ALLBLK=0
DEV S %DEV=$P U 0 D:%DEV=$P CRT^%SDEV G:$D(QUIT) EXIT S %ID='(%DEV=$P)
 D SCRL G:%SC="^" DEV G:%SC="^Q" EXIT
ASK2 ;
 I %BN'="*",%BN'?1.N,%BN'?1N1":"1.N,%BN'?1N1":"1.N1":"1"G"1N,%BN'?1.N1":"1"G"1N,%BN'?1N1":"1.N1":"1""""1"G"1N1"""",%BN'?1.N1":"1""""1"G"1N1"""" S @("%BN="_%BN)
 I %BN'="*" S X=%BN D VB^DBFIX G:'$D(X)#10 ASK S %BN=X
 V:%BN'="*" %BN:$S($D(VG)#10:VG,1:"")
INT1 S %LR=%BN
 ; DEV S %DEV=$P U 0 D:%DEV=$P CRT^%SDEV G:$D(QUIT) EXIT S %ID='(%DEV=$P)
 ; D SCRL G:%SC="^" DEV G:%SC="^Q" EXIT
 U 63 S %B=$ZA U %DEV
 W !!,"Block ",%B S X=%B D BN^%L1SGK1 W "  (",Y,")" W:$D(VGI) ?25,"Volume group ",VGI
 I +$P(Y,":",2)=0 D BLKDMP^VGLABELE S R="" G ASK
 S %T=$V(1020,0,1),%T2=$V(1021,0,1,3) I $E(%T2,5) W !,"Block awaiting garbage collection"
 I %T>12!'%T W *7,!,"Uninitialized block, or invalid block type" G ASK
 I %T'=3 S %BN=%BN+1 Q:%BN>%BNF  G ASK:%BN=0,ASK2
 O 54:("#GLOBAL.RES":"A") D DATA^%L1SGK1 C 54
 ; D:%T=3 @($P("GDIR^PTR^DATA^XDATA^RDIR^RTNHDR^RTN^MAP^JRNL^SBP^SPDIR^SPBLK","^",%T)_"^%L1SGK1")
 ; I %T=3 W !,%B,"   ",%BN
 ; W !!!,%B,"   ",%BN
 I $G(%POINT)=999 W "   ",*27,"[7m"," POINTER ERROR ",*27,"[0m" W *7 R "  <>",R Q
 S R="" S %BN=$S(%ALLBLK=1:%BN+1,'$G(BNL):%BN+1,1:Y) Q:%BN>%BNF  G ASK:%BN=0,ASK2
EXIT I $D(%DEV),$D(%ID),%ID U %DEV W !! U 0 C:%DEV'=$P&+%DEV %DEV
 I '$D(%INT) C 63,54 K VG,VGI,VGVOL,VGTAB,%BL,%LR,%SC,%T2,FBLK,BNL,R,Y,Z
 K %C,%I,%J,%L,%L2,%L3,%N,%N2,%OF,%T,%DEV,%ID,%BN,%B,%LN,%P,%INT,A,B,BAK,C,D,E
 K COLL,D,F,GBN,GLB,GN,I,JRN,K,KEY,MAX,PSZ,PTR,OFST,QUI,UNT,SAVE,STRING,TYPE,UC,UI,USZ,UT,X
 Q
ERR I $F($ZS,"<INRPT>") U 0 W !!,"Aborted ..." G ASK
 D EXIT Q
ERR1 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
INT S %INT=1,%ID=1,%DEV=$P,%BN="*" G INT1
SCRL I %ID S %SC=0 Q
 R !,"Do you want to scroll? <N> ",%SC S:%SC="" %SC="N"
 I %SC?1.N,%SC>0 S $Y=0 Q
 I %SC=$E("NO",1,$L(%SC))!(%SC=$E("no",1,$L(%SC))) S %SC=0 Q
 G SCRL1:%SC=$E("YES",1,$L(%SC)),SCRL1:%SC=$E("yes",1,$L(%SC))
 Q:(%SC="^")!(%SC="^Q")
 W !,"Enter ""Y"" if you want the listing to pause every 'n' lines and wait for a",!,"Carriage Return before continuing. You will be prompted for 'n'."
 W !,"Or, you may enter directly the number of lines per screen."
 G SCRL
SCRL1 W !,"How many lines per screen? <",$S(%ID:60,1:20),"> " R %SC S:%SC="" %SC=$S(%ID:60,1:20)
 I %SC?1.N,%SC>0 S $Y=0 Q
 G:%SC="^" SCRL Q:%SC="^Q"
 W !,"Enter the number of lines to list before pausing for a Carriage Return." G SCRL1

%L1SGK1
%L1SGK1 ;CDS;DISK BLOCK DUMP (PART II); [ 04/27/94  3:59 PM ]
DATA ;
 ; W !!,"Data block" D OFST G:'%OF NEXT
 D OFST G:'%OF NEXT
 NEW BYTREV S BYTREV=$ZB($V($V(44),-3,2),#40,1)
 I $D(NCOL) S STRING='NCOL G DATA1
 D ^BLKDMP2 G:'F EXIT
DATA1 S %I=0,%N=""
 ; W !!," Key,Data",?11,"Global Name/",!," Off Off",?11,"Value",!," --- ---   -----"
DATA2 S %L2=$V(%I+1,0,1) D N2 ; W !,$J(%I,4),",",%I+%L2+2,?11 D N2 W "="
      I %GLOB'["(",%GLOB_"("'[%GLB Q
      I $G(%POINT),%ALLBLK=0,%GLOB["(",%GLOB'[%GLB S %POINT=999 Q
      I %GLOB["(",%GLOB'[%GLB Q
      ; S %L2=$V(%I+1,0,1) W !!,"%I=",%I,"   %L2=",%L2
      ; W !,$J(%I,4),",",%I+%L2+2,?11 D N2 W "="
 S %I=%I+%L2+2,%L3=$V(%I,0,1)
      ; W !!,"%I=",%I,"   %L2=",%L2,"   %L3=",%L3
   S %ZNACH=""
 ; I %L3=0 W $V(%I+1,0,4,0) S %ZNACH=%ZNACH_$V(%I+1,0,4,0) S %I=%I+5
 I %L3=0 S %ZNACH=%ZNACH_$V(%I+1,0,4,0) S %I=%I+5
 E  I %L3=2 DO  S %I=%I+9 ; If byte reversed, swap bytes before display
 .; I 'BYTREV W $V(%I+1,0,8,4) S %ZNACH=%ZNACH_$V(%I+1,0,8,4) Q
 .I 'BYTREV S %ZNACH=%ZNACH_$V(%I+1,0,8,4) Q
 .NEW %J,%OVAL,%X,%XX S %X=$V(%I+1,0,8,2),%OVAL=$V(%I+1,0,8,4),%XX=15
 .F %J=1:1:8 V %I+%J:0:$ZH($E(%X,%XX,%XX+1)):1 S %XX=%XX-2 ; swap bytes
 .; W $V(%I+1,0,8,4) V %I+1:0:%OVAL:8:4 Q  ; put back original value
 .V %I+1:0:%OVAL:8:4 Q  ; put back original value
 E  I %L3=3 S %ZNACH=%ZNACH_$V(%I+2,0,$V(%I+1,0,1),5) S %I=%I+2+$V(%I+1,0,1)
 E  I %L3=8 S %ZNACH=%ZNACH_$V(%I+2,0,256+$V(%I+1,0,1),5) S %I=%I+2+256+$V(%I+1,0,1)
 E  I %L3=7 S %ZNACH=%ZNACH_"...<UNDEF>..." S %I=%I+1
 ; E  I %L3=3 W """",$V(%I+2,0,$V(%I+1,0,1),5),"""" S %ZNACH=%ZNACH_$V(%I+2,0,$V(%I+1,0,1),5) S %I=%I+2+$V(%I+1,0,1)
 ; E  I %L3=8 W """",$V(%I+2,0,256+$V(%I+1,0,1),5),"""" S %ZNACH=%ZNACH_$V(%I+2,0,256+$V(%I+1,0,1),5) S %I=%I+2+256+$V(%I+1,0,1)
 ; E  I %L3=7 W "...<UNDEF>..." S %ZNACH=%ZNACH_"...<UNDEF>..." S %I=%I+1
 E  W " *** UNRECOGNIZED DATA TYPE ***" G NEXT
    W !,%GLOB," = ",%ZNACH S %POINT=1
    I %ZNACH'["...<UNDEF>..." U 54 W %GLOB,!,%ZNACH,! U 0
 D CHKSC Q:R="^"
 G DATA2:%I<%OF,NEXT
N S %L2=$V(%I+1,0,1) S %BL=$V(%I+%L2+2,0,3) D BL W ?5,$J(%BL,7)
 I $X>12 W "  "
 E  W ?13
N2 S D=$C(0),%N=$E(%N,1,$V(%I,0,1))_$V(%I+2,0,%L2,5),%P=0
 S %GLOB=$P(%N,D) ; W $P(%N,D)
 F %J=2:1:$L(%N,D)-1 S %C=$P(%N,D,%J) D N3
 S:%P %GLOB=%GLOB_""")"  ; W:%P ")"
 Q
N3 I %C="" D P W """"""  S %GLOB=%GLOB_"""""" Q
   ; W "   %C=",%C
 I STRING D P S %GLOB=%GLOB_%C Q  ; W %C
 S F=$A(%C)-128,%C=$E(%C,2,1023),%LN=$L(%C) I %LN=0 D P S %GLOB=%GLOB_0 Q  ; W 0
 I F=127 D P S %GLOB=%GLOB_%C Q  ; W %C
 ; I F'<0 D P W $E(%C,1,F) W:F<%LN ".",$E(%C,F+1,%LN) S %GLOB=%GLOB_$E(%C,1,F) S:F<%LN %GLOB=%GLOB_"."_$E(%C,F+1,%LN) Q
 I F'<0 D P S %GLOB=%GLOB_$E(%C,1,F) S:F<%LN %GLOB=%GLOB_"."_$E(%C,F+1,%LN) Q
 D P S F=-2-F S %GLOB=%GLOB_"-" Q  ; W "-"
 F X=1:1:F S %GLOB=%GLOB_(9-$E(%C,X)) ; W 9-$E(%C,X)
 ; I %LN-1>F W "." S %GLOB=%GLOB_"." F X=F+1:1:%LN-1 W 9-$E(%C,X) S %GLOB=%GLOB_(9-$E(%C,X))
 I %LN-1>F S %GLOB=%GLOB_"." F X=F+1:1:%LN-1 S %GLOB=%GLOB_(9-$E(%C,X))
 Q
P I %P S %GLOB=%GLOB_""",""" Q  ; W "," Q
 E  S %P=1 S %GLOB=%GLOB_"(""" Q  ; W "("
 Q
OFST S %OF=$V(1022,0,2) Q  ; W "  Offset=",%OF Q
UNKN W !!,*7,"Unknown block type: ",$ZH(%T) G EXIT
ERR I $F($ZS,"<INRPT>") W !!,"Aborted ..." G EXIT
 U 0 W !,$ZS
 Q
INT S %INT=1,%ID=1,%DEV=$P,%BN="*" G INT1
 ;
HDR ;
 W !!,"OFST NAME",?14,"CS",?17,"JRN",?21,"PROTC (S,W,G,U)",?39,"GROWTH",?47,"PTR BLK"
 W !,"---- --------",?14,"--",?17,"---",?21,"---------------",?38,"-------",?47,"-------"
 Q
CHKSC Q:'%SC  Q:$Y<%SC  R:'%ID !,"<>",R W:%ID # S $Y=0 Q
BN ;BLOCK NUMBER -> VOLUME INDEX:BLOCK NUMBER
 ;PASS IN X RETURNED IN Y
 S Y=X I '$D(VGI)!'$D(VGVOL) D GETVOL^%VGUTIL
 F Z=VGVOL-1:-1:0 I $P(VGVOL(Z),"^",2)'>X S Y=Z_":"_(X-$P(VGVOL(Z),"^",2)) Q
 Q
NEXT U 0 W:"6,7,10,"[(%T_",") !!,"Option not available" S X=%B D BN W !!,"Current block is ",Y
 U 0 S BNL=$ZB($V(1012,0,4),#FFFFFF,1)
NX2 I BNL S X=BNL D BN W !!,"Link block is ",Y,! I $P'=%DEV U %DEV D CHKSC Q:R="^"  G NX2
 W:'BNL&($P=%DEV) !
 ; S %BN=Y
EXIT Q

%L1SHA
%L1SHA ; FORMIROVANIE KRASIVOI SHAPKI ; SHEER
  ; INPUT %LL     - LIST DLIN GRAF
  ;       %STR(I) - NAZVANIE GRAF I #STPOKI SHAPKI
  ;       %SM     - SMESHENIE OT LEVOGO KRAIA %SM="C" CENTROVKA
  ;       %VERT   - SMESHENIE OT BERXHEGO KRAIA
  ; S %LL="10,4,8,6,12" K %STR,^VRM2($J)
  ; S %STR(1)="AAA\\BBBB\\CCCCCC\\DDD\\EEE"
  ;   S %STR(2)="AAAAAA\\BB\\CCC\\DDD\\EEE"
  K ^VRM2($J) N %GW S %GW=200
  S %KG=$L(%LL,","),%SM=$G(%SM,0) I %SM="C" D  S %SM=80-(%SM+%KG+1)\2
  .F I=1:1:%KG S %SM=%SM+$P(%LL,",",I)
  S %VERT=$G(%VERT),LIN=%VERT+1
  F I=186,187,188,200:1:205 S C(I)=$C(I)
  I %TYPCRT["VT" S C(186)=$C(124),C(187)=$C(107),C(188)=$C(106),C(200)=$C(109),C(201)=$C(108),C(202)=$C(118),C(203)=$C(119),C(205)=$C(113)
1 S $E(^VRM2($J,LIN),%SM,%GW)=C(201)
  F GR=1:1:%KG S ^VRM2($J,LIN)=^VRM2($J,LIN)_$TR($J("",$P(%LL,",",GR))," ",C(205))_$S(GR'=%KG:C(203),1:"") ; $C(209)
  S ^VRM2($J,LIN)=^VRM2($J,LIN)_C(187)
2 F I=1:1 Q:'$D(%STR(I))  S LIN=LIN+1 D
  .S $E(^VRM2($J,LIN),%SM,%GW)=C(186) F GR=1:1:%KG D  S ^VRM2($J,LIN)=^VRM2($J,LIN)_$J(PIC,LL)_C(186)
  ..S LL=$P(%LL,",",GR),PIC=$P(%STR(I),"\\",GR),LLP=$L(PIC),PIC=PIC_$J("",LL-LLP\2)
3 S LIN=LIN+1  S $E(^VRM2($J,LIN),%SM,%GW)=C(200)
  F GR=1:1:%KG S ^VRM2($J,LIN)=^VRM2($J,LIN)_$TR($J("",$P(%LL,",",GR))," ",C(205))_$S(GR'=%KG:C(202),1:"")
  S ^VRM2($J,LIN)=^VRM2($J,LIN)_C(188)
  I $G(%OTL) W !,"12345678901234567890123456789012345678901234567890123456789012345678901234567890"
  K %OTL
  Q

%L1SHAP
%L1SHAP ;  [ 13.01.06 11:18 ] [ 06/16/97  2:00 PM ]
 ;INPUT: KOD - HEADER'S CODE
 ;       SC -  LINE'S COUNTER
 ;       SM - OFFSET
 ;       SL - PAGE'S COUNTER
 ;       L1PAGE - IF $D - START FROM NEW PAGE
 ;       PRPC - PRINT LINE
 ;       USTR - 0,3
 ;OUTPUT:
 ;       PEND1  - LAST COLUMN
 ;       RLIST - GODEL DAF
 ;       CHERTA - KAV TAHAT KOTERET
 ;       MPOZ
 N %NEXTS,%LENGTH,%STRS,%K,%POZ,%IND,%NEXTS,%I,%HBRY
 I $$^%L1DISP(USTR) W %HBR S %HBRY=""
 S %SS="&" S:'$D(SM) SM=1 S:'$D(SC) SC=0 S:'$D(SL) SL=1 S:'$D(PRPC) PRPC=1
 I PRPC,'$D(USTR) U 0 W !,*7,"*** DEVICE ISN'T DEFINED (USTR) !" Q
 I '$D(^SHP(KOD)) U 0 W !,"***  COD HEADER ISN'T GOOD: ",KOD," !" Q
 S %NEXTS=^SHP(KOD,1)
 O USTR::2 E  U 0 W *7 S %SAY=" dqetz zqtcn " X %XMSGV(1) Q
 I $$^%L1DISP(USTR) U $P:(NOECHO:NOWRAP)
 I PRPC U USTR W:$D(L1PAGE)&USTR # X:$D(L1PAGE)&(USTR=0!(USTR=$P)) %chista W:'$D(L1PAGE) !
 D FSHAP S RLIST=66-%I S PEND1=$L(^(%I-2))+SM-3
 S CHERTA=^(%I-1)
 K %NEXTS,%LENGTH,%STRS,%K,%POZ,%IND,%NEXTS,L1PAGE Q
FSHAP ;
 N %STRS
 F %I=1:1 Q:'$D(^(%I))#10  Q:$E(^(%I))?1N  S %STRS=^(%I),%POZ=0 D PSK D:PRPC PCS S SC=SC+1 I SC>68 S SC=0,SL=SL+1
 S:'$D(RAZD) RAZD=":"
 I $D(^(%I)) K MPOZ F J1=%I:1 Q:'$D(^(J1))  D DO1
 G EN1
DO1 ;
 N SHPZ
 S %POZ=1,SHPZ=0 F J2=1:1 S %POZ=$F(^(J1),RAZD,%POZ) Q:'%POZ  S SHPZ=SHPZ+1,MPOZ($E(^(J1)),SHPZ)=%POZ+SM-1
 S %CPOZ=SHPZ
 Q
EN1 ;
 Q
PCS N %II,%W1 W ?SM,$P(%STRS,"#") S %W1=0
 F %II=2:1:$L(%STRS,"#") S %W1='%W1 W:USTR=3 *27,"W"_%W1 W:USTR=0!(USTR=$P)&%W1 %ENG,%CLI,%HBR W $P(%STRS,"#",%II) X:USTR=0!(USTR=$P) %XCL
 W:USTR=3 *27,"W0"
 W !
 Q
DEFL N %K I $D(^("P"_%IND)) S %LENGTH=^("P"_%IND) Q
 F %K=%POZ+2:1 Q:$E(%STRS,%K)'=" "
 S %LENGTH=%K-%POZ+1 K %K S ^("P"_%IND)=%LENGTH
 Q
PSK ;
 F %J=%POZ:0 S %POZ=$F(%STRS,%SS,%POZ) Q:%POZ<1  S %IND=+$E(%STRS,%POZ,%POZ+1) D DEFL S %NST=$S($D(MAS(%IND)):$E(MAS(%IND),1,%LENGTH),1:""),%STRS=$E(%STRS,1,%POZ-2)_%NST_$J("",%LENGTH-$L(%NST))_$E(%STRS,%POZ+%LENGTH-1,255)
 Q

%L1SPACE
%L1SPACE ; [ 03.08.06 12:43 ] [ 19.09.04 15:17 ] [
 N %A
 S %A=$$TV
 S %AVK=$P(%A,"\"),%AVA=$P(%A,"\",2)
 S %SP(1)="  %-a iept | (K) wqica iept mewn "
 S %SP(2)="----------------------------------"
 S %SP(3)=$J(%AVA,9,2)_"  |    "_$J(%AVK,8)
 Q
TV(STAM) ;
 N %A,%AVA,%AVK,%FL
 S %FL="l1sp"_$J
 ZSY "df > "_%FL
 O %FL:(REWIND:READONLY)
 U %FL
 R %A,%A
 C %FL:(DELETE)
 S %A=$$SP1^%L1FRM(%A)
 S %AVK=$P(%A," ",4)
 S %AVA=100-$P(%A," ",5)
 Q %AVK_"\"_%AVA

%L1SRV
%L2SRV ; [ 09.12.05 21:48 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) N $ZT
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
0 K (%L2MN) D ^%L1C,^P1IN
 S J=0 K MM F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" SERVER MANAGER "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 D @MM1(%I) G 0
1 ;
 D SHOW
 U 0:(NOWRAP:ECHO)
ZP R !!," PORT NUMBER : ",PORTN Q:PORTN=""
 I 'PORTN!(PORTN'?4N) W *7 G ZP
 J single^%L2SRV1(PORTN,4)
 H 2 D SHOW
 Q
2 ;
 D ^%L2SRVS
 Q
3 D SHOW
 U 0:(NOWRAP:ECHO)
ZJ R !!," JOB NUMBER (ALL - '*'): ",JOBN Q:JOBN=""
 I JOBN="*" S ^SCKSERV=-1 H 2 D SHOW Q
 S ^SCKSERV(JOBN)=-1 H 2 S ^SCKSERV(JOBN)=-1
 D SHOW
 Q

%L1SRV1
%L1SRV1 ;fscwitte@users.sourceforge.net;2000/10/25,21:22:13;Socket Device,Server [ 06.11.05 17:22 ] [
 ; NO ^ROUTINE ENTRY
 QUIT
 ;----------------------------------------------------------------------
 ; public procedure single^SCKSERV1()
 ;
 ; General TCP/IP server procedure to handle single client connection.
 ;
single(%ZNPort,%ZNTimeS) new %Z0,%ZNCmd,%ZNData,%ZNDev,%ZNLevel,%ZNSock
 ;
 ; set a new errortrap
 new $ZTRAP set $ZTRAP="ZGOTO "_$ZLEVEL_":singleQ"
 kill ^SCKSERV($job)
 ;
 ; Construct a dummy, but "unique", devicename.
 set %ZNDev="SCK$"_$J
 ;
 ; Open the device:
 OPEN %ZNDev:(ZLISTEN=%ZNPort_":TCP":DELIMITER=$C(13,10,58,27,95):ATTACH="listener"):%ZNTimeS:"SOCKET"
 else  set ^SCKSERV($job)="-1,NotOpen" quit
 ;
 ; Adjust errortrap after open (need to close)
 set $ZTRAP="ZGOTO "_$ZLEVEL_":singleC"
 set ^SCKSERV($job)=0
 ;
 ; USE fills $KEY with "BOUND|socket_handle|portnumber"
 use %ZNDev set ^SCKSERV($job,0)=$KEY
 ;
 ; Start listening, sets $KEY to "LISTENING|socket_handle|portnumber"
 WRITE /LISTEN(1) set ^SCKSERV($job,1)=$KEY
 ;
 ; Wait for connection, $KEY will be "CONNECT|socket_handle|remote_ipaddress"
 for  do  quit:^SCKSERV($job)
 . WRITE /WAIT(%ZNTimeS)
 . IF $KEY]"" set ^SCKSERV($job,2)=$KEY,^SCKSERV($job)=2 quit
 ;
 ; Store the connection socket in local variable,
 set %ZNSock=$piece($KEY,"|",2)
 ;
 ; Close listen socket, so another process can start listening on this port.
 ; Force connection socket to be the active
 CLOSE %ZNDev:(SOCKET="listener")
 USE %ZNDev:(SOCKET=%ZNSock)
 ;
 ; specify a trap that does not terminate the FOR-loop
 set $ZTRAP="GOTO singleX",%ZNLevel=$ZLEVEL
 set ^SCKSERV($job)=0,%Z0=2
 for  do  quit:^SCKSERV($job)
 . READ %ZNData:%ZNTimeS ELSE  quit
 . set %Z0=%Z0+1
 . set ^SCKSERV($job,%Z0,1)=%ZNData
 . set ^SCKSERV($job,%Z0,2)=$DEVICE
 . set ^SCKSERV($job,%Z0,3)=$KEY
 . ;
 . ; If an error occurs during READ, stop the loop
 . IF $DEVICE set ^SCKSERV($job)=$DEVICE quit
 . ;
 . ; If no terminator we are in trouble, but ignore for now
 . IF $KEY="" quit
 . ;
 . ; If terminator is associated with db operation, handle request
 . IF $KEY=$CHAR(13,10) DO  ;database request
 . . set %ZNCmd=$piece(%ZNData," "),%ZNData=$piece(%ZNData," ",2,32767)
 . . ;
 . . ; Reply, WRITE ! appends FIRST delimiter ($CHAR(13,10), and flushes data
 . . if %ZNCmd="get" WRITE "val ",@%ZNData,! quit
 . . if %ZNCmd="set" set @%ZNData WRITE "ok",! quit
 . . if %ZNCmd="kil" kill @%ZNData WRITE "ok",! quit
 . . WRITE "dbe "_%ZNCmd,!
 . ;
 . ; If terminator is associated with remote command, handle command
 . IF $KEY=$CHAR(27,95) DO  ;command
 . . s %ZNCmd="cme "_%ZNData ; assume the worst
 . . if %ZNData="stop" set ^SCKSERV($j)="-11,stop" quit
 . . if %ZNData="clone" job single(%ZNPort,%ZNTimeS) set %ZNCmd="dup"
 . . ;
 . . ; Non-standard terminator ($CHAR(27,95)), requires explicit flush
 . . if $e(%ZNData,1,4)="cmd " X $E(%ZNData,5,255) S %ZNCmd="okcmd"
 . . WRITE %ZNCmd_$CHAR(27,95) ;,#
 ;
 ; for-loop terminated by +^SCKSERV($job)'=0, notify client
 WRITE "end"_$CHAR(27,95) ;,#
 ;
 ; singleC - close device before quiting
 ;
singleC CLOSE %ZNDev
 ;
 ; singleQ - just QUIT
 ;
singleQ QUIT
 ;
 ; singleX - M runtime exception
 ;
 ; If not at procedure level + 2, then "normal" error: close and quit
 ; Else error while executing request from client: reply and retry
singleX if %ZNLevel+2>$ZLEVEL ZGOTO %ZNLevel:singleC
 WRITE "xcpt "_$ZSTATUS_$CHAR(27,95) ;,#
 quit

%L1SRV2
%L1SRV1 ;fscwitte@users.sourceforge.net;2000/10/25,21:22:13;Socket Device,Server [ 17.11.05 19:00 ] [ 06.11.05 17:22 ] [
 ; NO ^ROUTINE ENTRY
 QUIT
 ;----------------------------------------------------------------------
 ; public procedure single^SCKSERV1()
 ;
 ; General TCP/IP server procedure to handle single client connection.
 ;
single(%ZNPort,%ZNTimeS) new %Z0,%ZNCmd,%ZNData,%ZNDev,%ZNLevel,%ZNSock
 ;
 ; set a new errortrap
 new $ZTRAP set $ZTRAP="ZGOTO "_$ZLEVEL_":singleQ"
 kill ^SCKSERV($job)
 ;
 ; Construct a dummy, but "unique", devicename.
 set %ZNDev="SCK$"_$J
 ;
 ; Open the device:
 OPEN %ZNDev:(ZLISTEN=%ZNPort_":TCP":DELIMITER=$C(13,10,58,27,95):ATTACH="listener"):%ZNTimeS:"SOCKET"
 else  set ^SCKSERV($job)="-1,NotOpen" quit
 ;
 ; Adjust errortrap after open (need to close)
 set $ZTRAP="ZGOTO "_$ZLEVEL_":singleC"
 set ^SCKSERV($job)=0
 ;
 ; USE fills $KEY with "BOUND|socket_handle|portnumber"
 use %ZNDev set ^SCKSERV($job,0)=$KEY
 ;
 ; Start listening, sets $KEY to "LISTENING|socket_handle|portnumber"
 WRITE /LISTEN(1) set ^SCKSERV($job,1)=$KEY
 ;
 ; Wait for connection, $KEY will be "CONNECT|socket_handle|remote_ipaddress"
 for  do  quit:^SCKSERV($job)
 . WRITE /WAIT(%ZNTimeS)
 . IF $KEY]"" set ^SCKSERV($job,2)=$KEY,^SCKSERV($job)=2 quit
 ;
 ; Store the connection socket in local variable,
 set %ZNSock=$piece($KEY,"|",2)
 ;
 ; Close listen socket, so another process can start listening on this port.
 ; Force connection socket to be the active
 CLOSE %ZNDev:(SOCKET="listener")
 USE %ZNDev:(SOCKET=%ZNSock)
 ;
 ; specify a trap that does not terminate the FOR-loop
 set $ZTRAP="GOTO singleX",%ZNLevel=$ZLEVEL
 set ^SCKSERV($job)=0,%Z0=2
 for  do  quit:^SCKSERV($job)
 . READ %ZNData:%ZNTimeS ELSE  quit
 . set %Z0=%Z0+1
 . set ^SCKSERV($job,%Z0,1)=%ZNData
 . set ^SCKSERV($job,%Z0,2)=$DEVICE
 . set ^SCKSERV($job,%Z0,3)=$KEY
 . ;
 . ; If an error occurs during READ, stop the loop
 . IF $DEVICE set ^SCKSERV($job)=$DEVICE quit
 . ;
 . ; If no terminator we are in trouble, but ignore for now
 . IF $KEY="" quit
 . ;
 . ; If terminator is associated with db operation, handle request
 . IF $KEY=$CHAR(13,10) DO  ;database request
 . . set %ZNCmd=$piece(%ZNData," "),%ZNData=$piece(%ZNData," ",2,32767)
 . . ;
 . . ; Reply, WRITE ! appends FIRST delimiter ($CHAR(13,10), and flushes data
 . . if %ZNCmd="get" WRITE "val ",@%ZNData,! quit
 . . if %ZNCmd="set" set @%ZNData WRITE "ok",! quit
 . . if %ZNCmd="kil" kill @%ZNData WRITE "ok",! quit
 . . WRITE "dbe "_%ZNCmd,!
 . ;
 . ; If terminator is associated with remote command, handle command
 . IF $KEY=$CHAR(27,95) DO  ;command
 . . s %ZNCmd="cme "_%ZNData ; assume the worst
 . . if %ZNData="stop" set ^SCKSERV($j)="-11,stop" quit
 . . if %ZNData="clone" job single(%ZNPort,%ZNTimeS) set %ZNCmd="dup"
 . . ;
 . . ; Non-standard terminator ($CHAR(27,95)), requires explicit flush
 . . if $e(%ZNData,1,4)="cmd " X $E(%ZNData,5,255) S %ZNCmd="okcmd"
 . . WRITE %ZNCmd_$CHAR(27,95) ;,#
 ;
 ; for-loop terminated by +^SCKSERV($job)'=0, notify client
 WRITE "end"_$CHAR(27,95) ;,#
 ;
 ; singleC - close device before quiting
 ;
singleC CLOSE %ZNDev
 ;
 ; singleQ - just QUIT
 ;
singleQ QUIT
 ;
 ; singleX - M runtime exception
 ;
 ; If not at procedure level + 2, then "normal" error: close and quit
 ; Else error while executing request from client: reply and retry
singleX if %ZNLevel+2>$ZLEVEL ZGOTO %ZNLevel:singleC
 WRITE "xcpt "_$ZSTATUS_$CHAR(27,95) ;,#
 quit

%L1SS
%L1SS ; [ 09.02.24 07:18 ] [ 22.03.21 14:36 ] [ 21.10.06 17:56 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
BG D FRM
 ;
S2V X %chista
 S %S2V("NOHB")=""
 S %S2V("PROG")="VIEW^%L1SS"
 S %S2V("TXT1")=" TO SHOW TEXT OF PROGRAMM OR FULL STATUS PRESS <F9> "
 D ^%S2VIEW
 K ^TMPS111($J),^l1ss($J) Q
 ;
VIEW N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,U,%MET,zl) D ^%L1C
 W %CLI D W^%S2VIEW(U,1,80) X %XCL
 S %GET=" SHOW PROGRAMM -1 , FULL STATUS -2 , STACK - 3 , KILL JOB - 0 "
 S %GETIN=1 D NE^%L1GET I %TO="END" Q
 ;
 I %S=1 D TV^%L1FL($P($$SPL^%L1FRM($E(^TMPS111($J,U),23,40))," ")) Q
 ;
 I %S=2 D  Q
 .Q:'U  S %NMF=$G(^l1ss($J,U,"NMF")),%NMF1=1 Q:%NMF=""
 .K ^S999($J) S MAC1="^TMPS111($J)",MAC2="^S999($J)" D ^%S1GC1
 .K ^TMPS111($J) D ^%L1TS
 .S %S2V("NOHB")=""
 .S %S2V("TXT1")=" PRESS <ESC> TO EXIT "
 .S PRT=$J D IN^%S2V
 .K ^TMPS111($J)
 .S MAC2="^TMPS111($J)",MAC1="^S999($J)" D ^%S1GC1
 .K ^S999($J)
 ;
 I %S=3 D  Q
 .S %NMF=$G(^l1ss($J,U,"NMF")),%NMF1=1 Q:%NMF=""
 .C %NMF K ^VRM($J) I '$$SIZE^%L1ZOS(%NMF) G M2
 .O %NMF:(READONLY:REWIND)
 .S %I1=0,%PRS=0 F %I=1:1 U %NMF:(TERMINATOR=$C(13,10,26,27)) R %STRING Q:$ZEOF  D
 ..I %STRING[" ($ZINTER" S %PRS=1
 ..I %PRS S %I1=%I1+1,^VRM($J,%I1)=$P(%STRING," ")
 .C %NMF U $P
M2 .S MAC="^VRM($J)" S %L1("EU")=2,%L1("BE")=6
 .S %L1("T2")=" S %SAY="" [""_$$FUNC^%UCASE($ZG)_""]   "" X %XMSGV"
 .S %L1("TXT1")="$P(%NXS,""~"")_$J("""",15-$L($P(%NXS,""~"")))"
 .X %chista S %L1("NOHB")=""
 .D ^%L1NU I FLAG'="" K ^VRM($J) Q
 .S %L1("IND")=INDEX
 .S INDEX=@MAC D POISK^%L1ER(INDEX)
 .G M2
 ;
 I %S=0 D  Q
 .S %Q("Z")="ARE YOU SHURE" D N^%S1ASK Q:'YES
 .ZSY "kill "_$TR($E(^TMPS111($J,U),1,5)," ","")
 .I $G(zl) S $E(^S2VTMPS111($J,zl,U),66,79)="-- KILLED --"
 .S %MET="TMPS111"
 Q
FRM ;
 N %NMF,%NMF0,%NMF1,%NM,%IO,I,A,B,PID,%NAME,%REF,%DEV
 S %NMF="l1ss"_$J
 S %IO=$I
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC mumps > "_%NMF
 I $$^%L1ZOS(10,%NMF)<0 G S2V
 O %NMF:(REWIND:READONLY)
 S I=2 K ^TMPS111($J),^l1ss($J)
 S ^TMPS111($J,1)="PID   STIME TTY       ROUTINE NAME     GLOBAL REFERENCE        OWN DEVICES     "
 S ^TMPS111($J,2)="----  ----- --------  ---------------  ----------------------  --------------- "
 F  U %NMF R A Q:$ZEOF  D
 .S PID=$TR($E(A,10,14)," ","") Q:'PID
 .S %NMF0="GTM_JOBEXAM.ZSHOW_DMP_"_PID_"_"
 .ZSY "rm -f "_%NMF0_"*"
 .ZSY $$^%L1ENVAR("gtm_dist")_"/mupip intrpt "_PID
 .S %NMF1=$$^%L1ZOS(13,%NMF0_"*") Q:'$L(%NMF1)
 .Q:%NMF1'[%NMF0
 .I '$$SIZE^%L1ZOS(%NMF1) Q
 .O %NMF1:(REWIND:READONLY)
 .S %NAME="",%REF="",%DEV=""
 .F  U %NMF1 R B Q:$ZEOF  D
 ..I $E(B,1,11)="$ZPOSITION=" S %NAME=$P(B,"=",2)
 ..I $E(B,1,11)="$REFERENCE=" S %REF=$P(B,"=",2)
 ..I B[" OPEN RMS",B'["GTM_JOBEXAM" S %DEV=%DEV_$S($L(%DEV):",",1:"")_$P(B," ")
 .C %NMF1 ;;:DELETE
 .F %NM="%NAME","%REF","%DEV" S @%NM=$TR(@%NM,"""","")
 .S I=I+1,CONT=$E(A,10,14)_"  "_$E(A,25,39)_"  "_%NAME_$J("",15-$L(%NAME))_"  "_%REF_$J("",23-$L(%REF))_"  "_%DEV
 .S ^TMPS111($J,I)=$E(CONT,1,800)
 .S ^l1ss($J,I,"NMF")=%NMF1
 I $$^%L1ZOS(2,%NMF)
 Q
KLJ(NMPROG) ;
 N ST
 S ST=$$WHATNMB(NMPROG) ;
 ;
 I 'ST Q 0
 ZSY "kill "_$P(ST,"~",2)
 Q 1
 ;
 ;
WHATNMB(NMPROG) ;
 N A,U,I,PROG K ^TMPS111($J)
 D FRM S U=0
 ;
 F I=1:1 Q:'$D(^TMPS111($J,I))  D
 .S A=$G(^(I))
 .S PROG=$P($P($E(A,25,50)," "),"^",2) Q:PROG?.P
 .I PROG=NMPROG S U=I
 I 'U Q 0
 S A=$G(^TMPS111($J,U)) K ^TMPS111($J),^l1ss($J)
 Q U_"~"_$TR($$SP1^%L1FRM(A)," ","~")
 
 
 
 

%L1SSD
%L1SSD ;CDS;SYSTEM SHUTDOWN;   [ 21.12.01  7:26 AM ] [ 002/15/00  7:17 AM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1984
 D ^%L1STOP K ^flag,^FLAG,^STLOOP
 H

%L1STOP
%L1STOP ; [ 29.12.06 11:24 ] [ 24.12.06 10:17 ] [ 21.11.05 12:56 ]
 S ^STLOOP("PC")=1 H 3
 N %NMF K ^flag,^flagio,^STLOOP,^FLAG,^zms
 S %NMF="l1ss"_$J
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC mumps > "_%NMF
 C %NMF O %NMF:(REWIND:READONLY)
 F  U %NMF R A Q:$ZEOF  D
 .S PID=$TR($E(A,10,14)," ","") Q:'PID  Q:PID=$J
 .I PID=$P($G(^VESoTCP(0,"In Use",9000)),";",3) Q
 .ZSY "kill "_PID
 ;;ZSY "killall gtcm_gnp_server"
 C %NMF:(DELETE)
 H 1 Q

%L1STPC
%L1STPC(ST,GL,MDP) ;  [ 20.05.24 15:21 ] [ 28.02.17 12:36 ] [ 16.12.15 13:32 ] 
 N GW,GWPC,J,ST1,ST2,TXT,FLAGRED
 S FLAGRED=0
 I '$D(TS0)!'$D(TSS) D TS
 I ST'[@MDP@("PG") S ST=$TR(ST,TS0,TSS)
 S GWPC=$G(@MDP@("GWPC"))
 S GW=$G(@MDP@("GWPC")) F J=1:1:$L(ST,"#") I '(J#2) S GW=GW-$L($P(ST,"#",J))
 S GW=GW+$L(ST,"#")-1
 S:GW<1 GW=10
 I $D(%L1STPC("RIGHT")) S ST=$J($$SPL^%L1FRM(ST),GW-1)
 ;
 S ST1=$$SPR^%L1FRM(ST)
 ;
 S ST2=$P(ST,"#")
 F J=2:1:$L(ST,"#") S ST2=ST2_$S('(J#2):@MDP@("B"),1:"")_$P(ST,"#",J)_$S('(J#2):@MDP@("N"),1:"")
 S TXT=ST2 D S1
 Q
 ;
S1 ;
 N IND S IND=$O(@GL@(99999),-1)+1
 ;;I ST'[@MDP@("PG") D
 .I '$D(%L1STPC("NOSHP")) S TXT=TXT_$J("",GW-$L(TXT))
 .;;S TXT=$E(TXT,$L(TXT)-GWPC+1,255)
 ;
 S @GL@(IND)=TXT
ES1 Q
 ;
TS ;
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 S TSS=$C(128) F J=129:1:154 S TSS=TSS_$C(J)
 Q
 
 
 
 
 

%L1SVMEM
%L1SVMEM ;       [ 28.09.05 09:15 ] [ 19.06.03 13:06 ] [ 22.10.01 12:55 PM ] [
SAVE N %FN S %FN="#SAVEMEM"_$J
 I $$^%L1ZOS(2,%FN)
 O %FN:(WRITE:NEWVERSION):1 E  Q
 U %FN ZWR  C %FN
 Q
REST ;;N %FN,A,A1,A2,ZT,SMB,OK,KV,J
 S %FN="#SAVEMEM"_$J
 N $ZT
 ;;S $ZT="ZG "_$ZL_":E"
 I $$^%L1ZOS(10,%FN)<0 Q
 O %FN:(REWIND:READONLY):1 E  Q
 U %FN F  R A Q:$ZEOF  D
 .S A1=$P(A,"=") I A1["(" S A1=$P(A,")=")_")"
 .S A2=$P(A,A1_"=",2,254)
 .I $E(A2)="""" S A2=$E(A2,2,$L(A2)-1)
 .S A2=$$RPL^%L1FRM(A2,"""""","""")
 .S @A1=A2
E C %FN Q

%L1SYS
%L1SYS ; [ 30.01.04 18:11 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C,^P1IN
M K MM S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" xferd "
 S MAC="MM" D ^%L2MENU
 I %I=1 G END
 D @MM1(%I) G M
END Q
 ;
MENU ;
 ;1;EXIT;;
 ;1;FILESYSTEM SHOW;1;
 ;1;DIRECTORY SHOW (SIZE SORT);2;
 ;1;FILES SHOW (SIZE SORT);3;
 ;1;ALIAS (.BASHRC);4;
 ;1;SHOW PROCESSES BY NAME;5;
 ;1;SHOW PROCESSES BY TERMINAL;6;
 Q  ;
1 ;
 zsy "df"
 S %GET="Press <ENTER>" D N^%L1GET
 q
2 ;
 u $p:ECHO
 S ZPR="Directory ( ^ - exit ) : <"_$ZDIR_"> "
 W !,ZPR
 r DIR I DIR="^" G E2
 I DIR="" S DIR=$ZDIR
 S FL="l1sys.du"
 C FL:DELETE
 O FL:(write:newversion) U FL
 W "#!/bin/bash",!
 W "cd "_DIR,!
 W "du | sort -r -n > l1sys.duvi",!
 W "vi l1sys.duvi",!
 C FL
 ZSY "bash "_FL
 C FL:DELETE G 2
E2 q
3 ;
 u $p:ECHO
 S ZPR="Directory ( ^ - exit ) : <"_$ZDIR_"> "
 W !,ZPR
 r DIR I DIR="^" G E3
 I DIR="" S DIR=$ZDIR
 S FL="l1sys.ls"
 C FL:DELETE
 O FL:(write:newversion) U FL
 W "#!/bin/bash",!
 W "cd "_DIR,!
 W "ls -l | sort --k=5,5 -nr > l1sys.lsvi",!
 W "vi l1sys.lsvi",!
 C FL
 ZSY "bash "_FL
 C FL:DELETE G 3
E3 q
4 ZSY "vi /root/.bashrc"
 Q
5 ;
 u $p:ECHO
 R !,"Name of process : ",ZN Q:ZN=""!(ZN="^")
 ZSY "ps -C "_ZN
 S %GET="Press <ENTER> "
 D N^%L1GET
 Q

%L1SZ
%L1SZ(FILE) ; [ 10.11.07 09:36 ] [
 I $G(FILE)="" Q ""
 N fsize,fdate,fname
 S fsize=$J("",14)
 s fdate=$J("",10)
 S fname=$J("",64)
 D &libfstat.fstat(FILE,.fsize,.fdate,.fname)
 i fsize?.p s fsize=""
 i fdate?.p s fdate=""
 i fdate s fdate=$$^%L1DC(fdate,3)
 q FILE_"^"_fsize_"^"_fdate

%L1T
%L1T ; [ 19.05.09 13:42 ] [ 27.03.08 10:06 ] [ 04/26/94 10:15 AM ]
Z K
 K MM N %ECHO I '$D(%POSIC) D ^%L1C
 X %chista
 S MM(0)=" ze`lah  llegn "
 S MM(1)=" d ` i v i "
 S MM(2)="llegnl dlah xe`z"
 S MM(3)="ze`lah mr dcear"
 W %HBR
 S MAC="MM" D ^%L2MENU G:%I=1 END
 I %I=2 D ^%L1TABL G Z
 K %L1 S MAC="^TABLs",%L1("EU")=1
 S %L1("TXT")="S %L1NS(%I)=$P($G(^(%NXN)),""\"")_""  ""_$J(%NXN,8)"
 D ^%L1NU G:FLAG'="" Z
 S GLOB=INDEX D I^%L1TABL
 G Z
END Q

%L1T2P
%L1T2P(ST,%TST) ; TERMINAL -> PRINTER [ 02.07.08 13:40 ] [ 05.11.06 14:29 ] [ 09.01.01  1:17 PM ]
 I $P=1 D  Q 1
 .O 3 U 3 W ST,! C 3
 U $P:(ECHO:WRAP) U $P:(NOECHO:NOWRAP)
 N A,A1,I,BUSY S BUSY=0
 W $C(27),"[2$s" ;----- IBM PROPRINTER
 W $C(27),"[862*p" ;----- IBM PROPRINTER HEBREW SET (DECSPPCS)
 U $P:(ECHO:WRAP)
T2Z U $P:(NOECHO:NOWRAP)
 ;;I '$G(%TST) G P
 G P
 F I=1:1:100 R *A:0
 W $C(27),"[?15n" ;;R *A:2 S ^A("T2P",1)=A I A=27 S A="" F I=1:1:5 R *A1:1 S ^A("T2P",I+1)=A1 S A(I)=A1 S A=A_$C(A1) ;- ? PRINTER STATUS
 ;;I A'="[?10n",BUSY<5 H 1 S BUSY=BUSY+1 G T2Z
 ;;I A'="[?10n" U $P:(NOECHO:NOWRAP) Q 0
P W $C(27),"[2;3;4;1*s" ;-- NO FLOW CONTROL (DECSFC)
 W $C(27)," G",$C(27),"[?36h",$C(27),"[5i"
 W ST W:'$D(%L1T2P("EOL")) ! W:$D(%L1T2P("EOL")) %L1T2P("EOL")
 W $C(27),"[4i" ;---- TURN OFF PRINTER CONTROLLED MODE (MC)
 W $C(27),"[?36l" ;--- RESET HEBREW ENCODING MODE (DECHEM)
 W $C(27)," F" ;---- 7-BIT CONTROL (S7C1T)
 W $C(27),"[2;3;3;1*s" ;-- FLOW CONTROL XON/XOFF (DECSFC)
 W $C(17)
 U $P:(NOECHO:NOWRAP) Q 1

%L1TABL
%L1TABL ; [ 15.03.19 12:39 ] [ 04.03.14 20:36 ] [ 07.02.14 18:26 ] 
 K  K ^TEMP0($P) D ^%L1C
 N %ECHO,$ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":^%ET"
TV S %SCRN="TABL" S %SC("A")=""
 D ^%L1SC
 D IS2^%L1GET I 'YES G END
 S ^TEMP0($P,"RZD")=RZD
 S T=$T(GLOB+1) F I=2:1:$L(T,";")-1 I $P(T,";",I)?1U.E S $P(^TEMP0($P),"\",I-1)=$G(@$P(T,";",I))
 K ^TABLs(GLOB) S PRT=$P
 S MAC1="^TEMP0(PRT)",MAC2="^TABLs(GLOB)" D ^%S1GC1
END K ^TEMP0($P)
 Q
 ;
ER S %SAY=" d ` i b y "
 W *7 X %XMSGV Q
 ;
I N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,GLOB,%SCSFIN,STRING) D ^%L1C
 S TB=^TABLs(GLOB) S NSNAME=$P(TB,"\"),FILE(1)=$P(TB,"\",3),FILE(2)=$P(TB,"\",5),FILE("Z")=$P(TB,"\",2)
 S RZD=^TABLs(GLOB,"RZD"),FILE="^"_GLOB K %MBS
 S %MBS("PAR",1)=" ;"_$P(TB,"\",4)_";7,50;"_$P(TB,"\",5)_";H;"
 F I=1:1 Q:'$D(^TABLs(GLOB,I))  S TB=^(I) I TB'?.P D
 .S DL=$P(TB,"\",2),SG=$P(TB,"\",3)
 .S DL=$TR(DL,".",",")
 .S %MBS("PAR",I+1)=" ;"_$P(TB,"\")_";"_(7+I)_",50;"_DL_";"
 .S %MBS("PAR",I+1)=%MBS("PAR",I+1)_$S(SG="N":"E",1:SG)_";"
 .S %MBS("PAR",I+1)=%MBS("PAR",I+1)_$S($D(^TABLs(GLOB,I,"S")):^("S"),SG="N":"1234567890-.+",SG="B":"kl10",1:"")
 ;
 S %L1SCS="",%SCSFIN=0 F  D I^%L1SCS Q:%SCSFIN
 K %L1SCS
E3 S %GET="<99> - "_NSNAME_" qitcdl" D N^%L1GET Q:%S'=99
 K %MBP S %MBP("D",1)=FILE(1) S %MBP("RZD")=RZD
 S %MBP("Z",1)="oezp cew"
 S %GET="3 - zqtcn , 0 - jqn++23,70,H#3++1,E,I" D N^%L1GET Q:$G(%TO)="END"!(%S="")  S %UNIT=%S
 D I^%L1SCSP U 0 S %GET="<ENTER> ugl" D N^%L1GET
 Q
 ;
GLOB Q:'($D(^TABLs(GLOB))#2)
 ;SHTBL;ZKEY;LKEY;NAME;LNAME;;SUGK;SUGN;VLD;
 K ^TEMP0($P) S MAC1="^TABLs(GLOB)",MAC2="^TEMP0($P)" D ^%S1GC1
 S T=$T(GLOB+1)
 F I=2:1:$L(T,";")-1 I $P(T,";",I)?1U.E S @$P(T,";",I)=$P(^TEMP0($P),"\",I-1)
 S RZD=^TEMP0($P,"RZD")
 D VA^%L1SC
 D VG^%L1SC
 Q
 ;
TYP1 ;
 I %S'="E",%S'="H",%S'="N",%S'="D",%S'="T",%S'="B",%S'="CB",%S'="CF",%S'="DY" S %SC("ST")=1
 Q
 
 
 
 

%L1TCHLD
%L1TCHLD ; [ 20.08.07 12:08 ] [ 23.11.06 17:42 ] [ 04.10.06 07:17 ]
  D ^%L1C S %TCHOK=0
  ;;X %chista S %SAY=" WORK DEFINITIONS RESTORING " X %XMSGV
  I '$$BDKPORT Q
  S %SAY=" WAIT, PLEASE ...++10,30,EE" X %XMSG
  S END=0 F I=1:1:1000 U PORTN R *A:1 Q:'$T
  U PORTN:(NOWRAP:NOECHO) W $C(0,0,0,0,0,0,0,0,0)
  U PORTN W "UM"_$C(0,4,0,0,0,0,0,0)
  F I=1:1:100000 R *A:0 Q:$C(A)="U"
  I $C(A)'="U" U 0 S %GET="A PORT IS NOT RESPONDING !" D MSG^%L1GET Q
  S B="" F I=1:1:10 U PORTN R *A:1 Q:'$T  S B=B_$C(A)
  S %TCHOK=1 Q
BDKPORT(STAM) ;
  N %L1INIT S %L1INIT=""
  I '$$INIT^%L2MOUSE S %GET=" TOUCH PORT IS NOT DEFINED OR LOCKED " D MSG^%L1GET Q 0
  S PORTN=$$PORT^%L2MOUSE
  I PORTN<0 S %GET=" TOUCH PORT NUMBER IS NEGATIVE " D MSG^%L1GET Q 0
  Q 1
TV D TV1
 G %L1TCHLD
TV1 K ^r,^zms,^P1INIT(+$H),^SCKSERV,^L2G,^L2G1
 D KILL^P1INIT
 S ^STLOOP("PC")=1 H 3 K ^STLOOP
 ;J ^P1PCDOS
 Q

%L1TESTM
%L1TESTM ; [ 04/09/98 12:44 PM ] [ 01/15/98  3:36 PM ] [ 06/06/97 10:00 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 K ^%L1TESTM
BG0 I $G(^%L1TESTM)=1 G END
 K (%SH) K ^test($J) N $ZT S $ZT="ZG "_$ZL_":BDK"
 S %I1=0
 F %I=1:1:100 S %M1(%I)="AAAAAAAAAAAAA"
 F %I=1:1 Q:$S<1000  S %M(%I)=%I,%I1=%I
BDK ;
 I $ZS["CTRAP" S ^%L1TESTM=1 G END
 K %M1 S $ZT="ZG "_$ZL_":"
 F %I=1:1:%I1 I %M(%I)'=%I ZU 1 W !,$J,": MEMORY TEST ERROR ! ",%I G BG0
 S %SH=$G(%SH)+1 ZU 1 W !,$J,": MEMORY TEST N",%SH," - OK" H 1
 ZU 1 W !,$J,": DISK TEST START:"
 S $ZT="ZG "_$ZL_":BDK2",%I1=0
 F %I=1:1:100 S ^test($J,"R")="AAAAAAAAAAAAA"
 F %I=1:1 S ^test($J,%I)=%I I '(%I#1000) ZU 1 W $J,"," H 1 I $G(^%L1TESTM)=1 G END
BDK2 K ^test($J,"R")
 F %I=1:1:%I1 I ^test($J,%I)'=%I ZU 1 W !,$J,": DISK TEST ERROR ! ",%I G BG0
 ZU 1 W !,$J,": DISK TEST N",%SH," - OK" H 1
 G BG0
END ZU 1 W !!,$J,": *** END OF TEST *** ",! K ^test($J) Q

%L1TG
%L1TG ; TEUR GLOBALIM [ 07/04/94  4:55 PM ]
 N STR,NAME,STR,RZD,MN,I,VR,ER,%HBRY
Z X %chista S %SAY=" ["_$$^%L1ZU(0)_"]  GLOBAL DESCRIPTION " X %XMSGV
 S %GET=" GLOBAL NAME:++7,20,EE#++8,E,I++++++^tg\\\\V" D ^%L1GET Q:%S=""!($G(%TO)="END")  S %NG=%S
 S MN=1,NAMEOLD="",STROLD="",NAMEOLD1="" K ^tg1($P)
 I '$D(^tg(%NG,"REF")) K %Q S %Q("Z")=" DO YOU WANT COPY DESCRIPTION FROM ^SCR" D ^%S1ASK I YES D ^%L1TGC
 I $D(^tg(%NG)) S MAC1="^tg(%NG)",MAC2="^tg1($P)" D ^%S1GC1
P D PODVAL S %L1GET="",HZG=1 D ZN K %L1GET S HZG=0 D ZN I %TO="END" S:MN'>1 MN=2 S MN=MN-1 G P ; G:$G(%TO)="END" END
 K %L1GET D:NAME=""&(NAMEOLD'="") KILL G:NAME="" END G:RZD="" END
 F I=1:1:$L(STR,RZD) S VR=$P(STR,RZD,I) I VR?."%"1U.E S ^tg1($P,"NAME",VR,"REF")="$P($G(^"_%NG_"("_NAME_")),"""_RZD_""","_I_")" S ^tg1($P,"NAME",VR,"REF1")="$P(^"_%NG_"("_NAME_"),"""_RZD_""","_I_")" ;*** LEV 24.04.94
 D
 .N NAME1,NAME2,NAME3 S NAME1=NAME,NAME3=""
 .F I=1:1:$L(NAME1,",") S NAME2=$P(NAME1,",",I) I NAME2?1U.E,$D(^tg1($P,"NAME",NAME2)) S NAME3=NAME3_NAME2_","
 .S NAME3=$E(NAME3,1,$L(NAME3)-1)
 .S ^tg1($P,"KEY")=NAME3
 S ^tg1($P,"REF",MN)=NAME
 S ^tg1($P,"REF",MN,"STR")=STR
 S ^tg1($P,"REF",MN,"RZD")=RZD
 S MN=MN+1 G P
END D IS^%L1GET I YES K ^tg(%NG) S MAC1="^tg1($P)",MAC2="^tg(%NG)" D ^%S1GC1
 K ^tg1($P) D TABL G Z
 ;
ZN S NAME=$G(^tg1($P,"REF",MN)),NAMEOLD=NAME
 I NAME="",NAMEOLD1'="" S NAME=NAMEOLD1_","
 S %GET="INDEX STRING "_MN_"++"_FSTY_",2,EE#"_NAME_"++40,E,I" D ^%L1GET G:HZG ZD
 S:%TO="PGUP" %TO="END" I $G(%TO)="END"!($G(%TO)="PGDW"),'$D(^tg1($P,"NEW")) Q
 S NAME=%S I NAME="" Q
 S:$E(NAME,$L(NAME))="," NAME=$E(NAME,1,$L(NAME)-1)
 S NAMEOLD1=NAME
 F I=1:1 Q:'$D(^tg1($P,"REF",I))  I ^(I)=NAME,I'=MN S MN=I G ZN
ZD S RZD=$G(^tg1($P,"REF",MN,"RZD"))
 S %GET="DELIMITER ++"_FSTY_",60,EE#"_RZD_"++2,E,I" D ^%L1GET G:HZG ZL K %L1GET
 I $G(%TO)="END"!(%S="") G ZN
 S RZD=$TR(%S," ","")
ZL S STR=$G(^tg1($P,"REF",MN,"STR")),STROLD=STR
ZL1 S %SAY="STRUCTURE ++"_(FSTY+1)_",3,EE#" X %XMSG
 S %Y1=FSTY+2,%Y2=FSTY+3,%X1=2,%X2=78 S %S=STR D ^%L1WE K %X1,%Y1,%X2,%Y2 Q:HZG
 I $G(%TO)="END"!(%S="") G ZD
 S STR=%S
 S ER=0 F I=1:1:$L(STR,RZD) S VR=$P(STR,RZD,I) I VR'="",VR'?1U.U.N.U.N D TER S ER=1 Q
 G:ER ZL1 K ^tg1($P,"NEW")
 Q
PODVAL S FSTY=1
 ; I FSTY'=FSTYOLD D VSVALL^%L1SF
 ; S FSTYOLD=FSTY
 S %XX=0 F II=0:1:4 S %YY=FSTY+II X %POSIC W %chists
 S Y1=FSTY,X1=1,Y2=FSTY+5,X2=80 D ^%L1RBUA
 Q
TER W *7 S %SAY=" d ` i b y " X %XMSGV H 2 Q
KILL ;
 F I=1:1:$L(STROLD,RZD) S VR=$P(STROLD,RZD,I) I VR'?.P,$D(^tg1($P,"NAME",VR)) K ^tg1($P,"NAME",VR,"REF") K ^tg1($P,"NAME",VR,"REF1")
 D
 .N NAME1,NAME2,NAME3 S NAME1=NAMEOLD,NAME3=""
 .F I=1:1:$L(NAME1,",") S NAME2=$P(NAME1,",",I) I NAME2?1U.E,$D(^tg1($P,"NAME",NAME2)) S NAME3=NAME3_NAME2_"," K ^tg1($P,"NAME",NAME2,"KEY")
 .S NAME3=$E(NAME3,1,$L(NAME3)-1)
 .I NAME3'="" S NAME2=$P(NAME3,",",$L(NAME3,",")) Q:NAME2=""
 .F IR=1:1 Q:'$D(^tg1($P,"NAME",NAME2,"KEY",IR))
 .K ^tg1($P,"NAME",NAME2,"KEY",IR)
 K ^tg1($P,"REF",MN)
 K ^tg1($P,"REF",MN,"STR")
 K ^tg1($P,"REF",MN,"RZD")
 Q
TABL ;------------------------------------------------------
 K ^MBG($P) N A S A="" X %chista
 F I=1:1 S A=$O(^tg(%NG,"NAME",A)) Q:A=""  D
  .N PRM
  .S PRM=$G(^tg(%NG,0,A))
  .S ^MBG($P,I)=A_"\"_$P(PRM,";")_"\"_+$P(PRM,";",2)_$S($P(PRM,";",2)[".":".",1:"")_"\"_$S($P(PRM,";",2)["H":"H",$P(PRM,";",2)["D":"D",1:"E")_"\"_$G(^tg(%NG,0,A,"FILE"))_"\"_$G(^tg(%NG,0,A,"OUT"))_"\"_$G(^tg(%NG,0,A,2))
  S %SAY=" g""eca micew xe`z " X %XMSGV
  D INIT D ^%L1MBG
  D IS^%L1GET I 'YES K ^MBG($P) Q  ;G 2
  K OUT
  F I=1:1 Q:'$D(^MBG($P,I))  D
  .S ST=^(I),A=$P(ST,"\") Q:A=""  K ^tg(%NG,0,A)
  .N %TTIP S %TTIP=$P(ST,"\",4)
  .S ^tg(%NG,0,A)=$P(ST,"\",2)_";"_$P(ST,"\",3)_$S(%TTIP="N":",2",1:"")_$S(%TTIP="H":"H",%TTIP="D":"D",1:"")
  .I $P(ST,"\",5)'="" S ^tg(%NG,0,A,"FILE")=$S($P(ST,"\",5)'["^":"^",1:"")_$P(ST,"\",5)
  .I $P(ST,"\",6)'="" S ^tg(%NG,0,A,"OUT")=$P(ST,"\",6),OUT($P(ST,"\",6))="" I $P(ST,"\",7)'="" S ^tg(%NG,0,A,2)=$P(ST,"\",7)
  K ^MBG($P)
  ;S FLD="" F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) I A'="",'$D(OUT(A)) S FLD=FLD_A_"*"
  ;S ^tg(%NG,"FLD")=$E(FLD,1,$L(FLD)-1)
  Q
INIT S NPG=1,PG(1)=0,RZD="\" K %MBG
 S %MBG("VGR0")=3,%MBG("VGR")=4
 F J=1:1 Q:$E($T(SCREEN+J),2)="Q"  S %MBG("PAR",J)=$T(SCREEN+J)
 S %MBG("REF")="^MBG($P"
 S %REFH1=%MBG("REF")
 S %REFHS="^MBG($P,SH)"
 S %MBG("STEP")=2
 Q
SCREEN ;
KOD ;(lbp`)cew;72;8;E;#@S %MBG("NEW",%MBG("F","KOD"))=1## <ESC> - d`ivi
SHEM ;(zixar) my;62;20;H;#@S %MBG("NEW",%MBG("F","SHEM"))=1##
DL ;jxe`;40;4;E;#@S %MBG("NEW",%MBG("F","DL"))=1##
TYP ;beq;34;1;E;#@S %MBG("NEW",%MBG("F","TYP"))=1## D - jix`z , H - ixar , E - zilbp` , N - ixnep "
FILE ;uaew;28;8;E;### oezp xe`z `vnp dti` ,zilbp`a uaew my
BEN ; dpyin ;18;8;E;#@S %MBG("NEW",J)=1#I %MBG("O",J)?.P!(%MBG("O",J-1)'?.P) S %MBG("OU",J+1)=1 K %MBG("NEW",J)#(zilbp`) oezp xe`zl dpzyn my
SUG ; dpyn zxcbdl MUMPS zcewt ;+72;65;E;###
 Q

%L1TGC
%L1TGC ; COPY SCR -> tg [ 07/04/94  4:45 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C
 X %chista
Z S %GET="SCREEN NUMBER++7,10,EE#++8,E,I++++++^SCR\\\\P" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S %SCRN=%S
 S %GET="GLOBAL NAME++9,10,EE#++8,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") Z
 S %NG=%S
 I $D(^tg(%NG)) K %Q S %Q("U")="N" S %Q("Z")=" GLOBAL DESCRIPTOR EXIST ! OVERLAY" D ^%S1ASK Q:'YES  K ^tg(%NG,"REF")
 S MAC1="^SCR(%SCRN,""P"",""REF"")",MAC2="^tg(%NG,""REF"")" D ^%S1GC1
 F I=1:1 Q:'$D(^SCR(%SCRN,"P","REF",I))  S %G=^(I),^tg(%NG,"REF",I)=$P($P(%G,",",2,255),")")
 Q

%L1TGG
%L1TGG ; [ 28.04.00  5:53 PM ] [ 06/30/94  6:09 PM ]
GET ;
 N %R,%MKT,%V,%I,%PRALL
GETBG S %PRALL=0 I '$G(%L1TGG) S %L1TGG=1,%PRALL=1 ;
 S %MKT=$G(^tg(%NG,"REF",%L1TGG,"STR")) Q:%MKT=""
 S %R=$G(^("RZD"),"*"),%REF=$G(@("^"_%NG_"("_^tg(%NG,"REF",%L1TGG)_")"))
 F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I %V?."%"1U.E S @%V=$P(%REF,%R,%I)
 I %PRALL S %L1TGG=%L1TGG+1 G GETBG
 Q
GET1(%NG,%KEY,%NAME) ;
 I '$D(^tg(%NG,"NAME",%NAME,"REF")) Q "?????"
 S %REF=^("REF") X %KEY S @("%REF="_%REF) Q %REF
GET2(%NG,%KEY,%NAME) ;
 N I F I=1:1:$L(%NAME,",") S %NAME1=$P(%NAME,",",I) S %REF="?????" I $D(^tg(%NG,"NAME",%NAME1,"REF")) D
 .S %REF=^("REF") X %KEY S @("%NAME1="_%REF)
 Q
PUT(%NG,%KEY,%NAME) ;
 N I F I=1:1:$L(%NAME,",") S %NAME1=$P(%NAME,",",I) I $D(^tg(%NG,"NAME",%NAME1,"REF1")) D
 .S %REF=^("REF1") X %KEY S @(%REF_"="_%NAME1)
 Q

%L1TGR
%L1TGR ; RESTORE ^tg(%NG,"REF") [ 07/04/94  5:35 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C X %chista
 S %SAY=" RESTORE 'REF'-DESCRIPTION " X %XMSGV
 S %GET="GLOBAL NAME ++10,10,EE#++8,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")  S %NG=%S
 S N="" F  S N=$O(^tg(%NG,"NAME",N)) Q:N=""  D
 .S %RF=$P($P(^(N,"REF1"),"(",3,22),")"),%V1=$P(^("REF"),",",3,25)
 .F I=1:1 Q:'$D(^tg(%NG,"REF",I))  I ^(I)=%RF S @("$P(^(I,""STR""),"_%V1_"=N")
 Q

%L1TIME
%L1TIME ; TIME            [ 14.09.25 14:23 ] [ 10.09.25 15:13 ] [ 27.10.24 16:29 ] 
 N %HH,%MM,%SS
 S %MOUSE=$$INIT^%L2MOUSE K %screen S %BEG=1 K %L1NMB("ALB")
 S %TO="",%L1TIME="",%L1TIME1="",%L1TM=""
 S:'$D(%XX) %XX=$X-5 S:%XX<0 %XX=0 S %XX1=%XX
 S:'$D(%YY) %YY=$Y S:%XX>72 %XX=72 S:%YY>23 %YY=23
 S %S="" I $D(%L1TS),%L1TS'="" D
 .I %L1TS'[":",$L(%L1TS)=4 S %L1TS=$E(%L1TS,1,2)_":"_$E(%L1TS,3,4)
 .I %L1TS'[":",$L(%L1TS)<3 S %L1TS=%L1TS_":00"
 .I %L1TS>24 S $P(%L1TS,":")=%L1TS#24
 .S:%L1TS[":"&($L($P(%L1TS,":"))<2) $P(%L1TS,":")=0_$P(%L1TS,":")
 .S %S=$TR(%L1TS,":","") K %L1TS
 D PD I $D(%L1GET) G END
VTT X %POSIC
 D VV G:%S="" END
 ;I %S'?4N&(%TO="END") S %S="",%L1TIME="",%L1TIME1="" D PD G END
 S %HH=$E(%S,1,2),%MM=$E(%S,3,4)
 S:%MM="" %MM="00"
 I %MM>60!(%MM'?2N) W *7 H 1 G %L1TIME
 S %HH=$TR($J(%HH,2)," ",0)
 I %HH>24!(%HH'?2N) W *7 H 1 G %L1TIME
 S %L1TIME=(%HH*3600)+(%MM*60)
 S %L1TIME1=%HH_":"_%MM
 K %HH,%MM,%SS D PD G END
 ;-
END X %XCL I $D(%ECHO) U $P:(ECHO:WRAP:WIDTH=80)
 I $$HZGTOUCH^%L2MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")),$D(%L1NMB("Y0")) X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 K %L1TM Q
VV D VV^%L1DAT
 Q
PD ;
 X %POSIC
 W %ENG,%CLI,$J($E(%S,1,2),2) X %XCL W ":"
 W %ENG,%CLI,$J($E(%S,3,4),2) X %XCL ;W ":"
 ;W %ENG,%CLI,$J($E(%S,5,6),2)
 Q
T(%TT) ;
 I %TT?2N1":"2N Q %TT
 ;;I %TT?6N.N S %TT=$E(%TT,6,10)
 I %TT?5N1","1N.N S %TT=$P(%TT,",",2)
 I %TT<0 S %TT=0 ;-%TT
 Q $TR($J(%TT\3600,2)," ",0)_":"_$TR($J(%TT#3600\60,2)," ",0)
 ;
TDEC(%SHAA) Q %SHAA+$J($P(%SHAA,":",2)/60,2,2)
 ;
TS(%SHAA) ;
 N %MIN S %MIN=$P(%SHAA,":",2)
 I %SHAA>24 S %SHAA=%SHAA#24
 I $L(%MIN) Q $TR($J($P(%SHAA,":"),2)," ",0)_":"_$TR($J(%MIN,2)," ",0)
 Q $TR($J($P(%SHAA,"."),2)," ",0)_":"_$TR($J("."_$P(%SHAA,".",2)*60\1,2)," ",0)
 ;
DIF(T1,T2,SEC,DR) ;
 N (T1,T2,SEC)
 S T1=$$T2S(T1)
 S T2=$$T2S(T2)
 S DIF=T1-T2
 I $G(SEC) Q DIF
 I $G(DR) Q $J(DIF/60,DR,DR)
 Q DIF\60
 ;
 ;
T2S(T) ;
 S T=$$SPA^%L1FRM(T)
 I T?1N1":"2N!(T?2N1":"2N) D  Q T
 .S T=T*3600+($P(T,":",2)*60)
 ;
 I T["."!(T["/")!(T[" "),T[":" D  Q T
 .S T=$$SP1^%L1FRM(T) 
 .N DT,SHAA S DT=$$^%L1DC($P(T," "),3)
 .S SHAA=$P(T," ",2)
 .S T=DT*24*3600+(SHAA*3600+($P(SHAA,":",2)*60))
 ;
 I T["," S T=+T*24*3600+$P(T,",",2) Q T
 ;
 I T?6N.N S T=$E(T,1,5)*24*3600+$TR($E(T,6,10)," ",0) Q T
 ;
 Q T
 ;
 ;
PLUS(T,SEC,PR) ;
 I SEC[":" S SEC=SEC*3600+($P(SEC,":",2)*60)
 S T=$$T2S(T)+SEC
 ;
 N SEC1 S SEC1=T#(24*3600)
 N TH S TH=T\(24*3600)_","_SEC1
 I $G(PR)=":" Q $ZD(TH,"DD.MM.YY 24:60")
 Q TH
 ;
 ;
TMIN(MIN) ; 
 N CL,DR
 S CL=$P(MIN,".") 
 S DR=$P(MIN,".",2) 
 S DR=$E(DR*100,1,2)
 S DR=DR*60\100
 Q CL_":"_DR
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1TIP
%L1TIP(%CM) ; [ 01.07.00  5:31 PM ] [ 10/18/2000  9:53 PM ] [ 04/27/99 12:31 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%CM) D ^%L1C
 X %chista U $P:(NOECHO:NOWRAP)
 S X1=18,X2=64,Y1=6,Y2=18
 S %SAY=" ... zrci m`d ++"_(Y1-2)_","_(X2-12)_",HH,I" X %XMSG
 S N=$G(^L1TIP(%CM)),%BS=0 F  S N=$O(^L1TIP(%CM,N)) S:N="" N=$O(^L1TIP(%CM,N))  D  Q:%BS
 .S %L1RBCL="" D ^%L1RBUA
 .K SSS F I=1:1 Q:'$D(^L1TIP(%CM,N,I))  K %CHAST S %FRAZA=^(I),%DLG=X2-X1-2 D DELG^%L1SCPC D
 ..F J=1:1 Q:'$D(%CHAST(1,J))  S SSS($O(SSS(""),-1)+1)=%CHAST(1,J)
 .F I=1:1 Q:'$D(SSS(I))  S %XX=X1,%YY=Y1+I-1 X %POSIC W %HBR,SSS(I)
 .S %GET="<ESC> - z`vl , <PGUP> - mcew jqn ,<ENTER> - jiyndl ++"_(Y2+1)_","_(X2+3)_",HH#++1,E,I" D ^%L1GET I ($G(%TO)="END") S %BS=1,^L1TIP(%CM)=$G(N)
 .I %TO="PGUP" S N=$O(^L1TIP(%CM,N),-1) S:N="" N=$O(^L1TIP(%CM,N),-1) S N=$O(^L1TIP(%CM,N),-1)
 Q
VV ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %CM="MS"
VV1 X %chista I %CM="MTK" D  Q:%S=""  G:%S="<" VV1  S TIP=%S
 .S %S="" S %GET=" : xven xtqn ++3,70,HH#"_$G(MTKN)_"++5,E,I++++<F8> - mipekzn zbvd, <F7> mihixt zbvd++^PAR\\\\VP\/**" D ^%L1GET
 .I %TO="END" D  S %S="" Q
 ..S %GET="<F9> - mipekzn qitcdl" D N^%L1GET S:%TO="F9" %S=99 Q:%S'=99
 ..N N S N="" F  S N=$O(^L1TIP("MTK",N)) Q:N=""  D
 ...S MZR=N,MZR1=$G(^L1TIP("MTK",N))
 ...N I,N1 S I=0,N1="" F  S N1=$O(^L1TIP("MTK",N,N1)) Q:N1=""  D
 ....S I=I+1,^TEMP($P,I)=^(N1)
 ...S %SCRN="P1MTK"
 ...D ^%L1SCPC
 .;
 .I %TO="F8" K %L1 D HZGMTK Q
 .;
 .I %S,'$D(^L1TIP("MTK",%S)) D
 ..S MTKN=%S N %S
 ..K %Q S %Q("X")=24,%Q("Y")=5,%Q("Z")="xg` xvenn oekzn wizrdl " D ^%S2ASK
 ..Q:'YES
ZM ..S %GET=" : dwzrdl xven xtqn ++7,70,HH#++5,E,I++++<F8> - mipekzn zbvd" D ^%L1GET
 ..I %TO="F8" K %L1 S %L1("BE")=9 D HZGMTK
 ..Q:'%S  I '$D(^L1TIP(%CM,%S)) S %SAY=" ! miiw `l oekzn " X %XMSGV(1) G ZM
 ..I %S S MAC1="^L1TIP(%CM,%S)",MAC2="^L1TIP(%CM,MTKN)" D ^%S1GC1
 ..S %S="<"
 ;
 I %CM="MS" S %GET=" : tih xtqn ++3,70,HH#++3,E,I++++++^L1TIP(%CM)\\\\V" D ^%L1GET S TIP=%S I %TO="END" S %S=""
 Q:%S=""
 K ^S000($P)
 D RTI(TIP)
 K U,R,L,Y1,X1,U1,SAVE S %RMAX=79,%PRHBR=1,RL=79
 D ^%S2ERG1 ;;S %GETIN="k" S %GET=" ? xenyl" D N^%L1GET I %S'="k" K ^S000($P) G VV1
ZO S %GETIN=1,%GET=" 0 - "_$S(%CM="MTK":"oekzn",%CM="MS":"tih",1:"")_" lhal , 2 - xenyl `l , 1 - miepiy xenyl " D N^%L1GET
 I %TO="END" G ZO
 I %S=0 D IS^%L1GET G:'YES ZO K ^L1TIP(%CM,TIP) G VV1
 I %S=2 K ^S000($P) G VV1
 I %S'=1 W *7 G ZO
 I %CM="MTK" S SHEM=$P($G(^PAR(TIP)),"**") G SV
 S %GET=": my++20,70,HH#"_$G(^L1TIP(%CM,TIP))_"++22,H,I" D ^%L1GET
 S SHEM=%S
SV K ^L1TIP(%CM,TIP) F I=1:1 Q:'$D(^S000($P,I))  S ^L1TIP(%CM,TIP,I)=^S000($P,I),^L1TIP(%CM,TIP,I,"%TOP")=$G(^S000($P,I,"%TOP"))
 S ^L1TIP(%CM,TIP)=SHEM
 G VV1
RTI(TIP) K ^S000($P)
 Q:$G(TIP)=""
 N I,II
 F I=1:1 Q:'$D(^L1TIP(%CM,TIP,I))  D:'+$G(^L1TIP(%CM,TIP,I,"%TOP"))  S ^S000($P,I)=^L1TIP(%CM,TIP,I),^S000($P,I,"%TOP")=$G(^L1TIP(%CM,TIP,I,"%TOP"))
 .S SS=^L1TIP(%CM,TIP,I) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 .S ^L1TIP(%CM,TIP,I,"%TOP")=II-($E(SS,II)'=" ")
 Q
HZGMTK ;
 S MAC="^L1TIP(%CM)",%L1("EU")=2,%L1("BE")=6
 D ^%L1NU I FLAG'="" S %S="<" Q
 S %S=INDEX
 Q

%L1TM
%L1TM(%TM) ; [ 07.07.21 12:47 ] [ 10/09/96  6:45 PM ]
 Q $$T^%L1TIME(%TM)
 ;
 ;$P(H,",",2) -> HH:MM
TV  N %HH,%MM
 S %HH=%TM\3600
 S %MM=(%TM-(%HH*3600))\60
 ;;Q $J(%HH,2)_":"_$TR($J(%MM,2)," ",0)
 W $J(%HH,2)_":"_$TR($J(%MM,2)," ",0)
 
 
 

%L1TMP
%L1TMP ; SAVE GLOBALS TO TEMPORARY FILES[ 03/08/98  9:55 AM ] [ 28.04.00  5:57 PM ] [ 03/08/98  9:55 AM ] [ 08/08/97  6:14 AM ]
 ; %NGLB - INT. NUMBER, %GLBIN - CODE, %GLB - GLOBAL
GS(%NGLB,%GLBIN,%GLB,%ER) ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%GLBIN,%GLB,%NGLB,%ER) D ^%L1C
 S %ER=0
 I $D(^tmpsv($P,%NGLB,%GLBIN)) S %ER=1 Q
 S MAC1=%GLB,MAC2="^tmpsv($P,%NGLB,%GLBIN)" D ^%S1GC1
 Q
GR(%NGLB,%GLBIN,%GLB) ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%GLBIN,%GLB,%NGLB) D ^%L1C
 K @%GLB
 S MAC2=%GLB,MAC1="^tmpsv($P,%NGLB,%GLBIN)" D ^%S1GC1
 Q
GN(%PUSTO) ;
 S %NGLB=$ZP(^tmpsv($P,999999))+1
 Q %NGLB
KL(%NGLB) ;
 K ^tmpsv($P,%NGLB)
 Q

%L1TRDOS
%L1TRDOS ;  [ 31.01.06 20:23 ] [ 06/20/2002  12:52 PM ]
 D ^%L1C X %chista S %SAY=" FILES TRANSMISSION " X %XMSGV
 L ^L1TRDOS:1 E  S %SAY=" WORK WITH JOB FROM OTHE TERMINAL ! " X %XMSGV(1) Q
 U 0 S PRT=$P N %HBRY W %ENG S %S="" K ^L1TRDOS
Z1 S %FL="" U 0 W !!,"FULL NAME OF HOST FILE (INPUT): " D ^%ZMSL
 I %S="?"!(%TO="F7") D O13^%L1OS D  G Z1
 .Q:'$D(%L2VNM)
 .S %S=$S($G(%PATH)'="":%PATH_"\",1:"")_$TR($E(%L2VNM,1,8)_"."_$E(%L2VNM,11,13)," ","")
 I %S="" G END
 S %ER=$$^%L1ZOS(10,%S) I %ER<0 D ^%L1OS1 G Z1
 S %NMF=%S
 O %NMF:(READONLY:REWIND):2 E  U 0 W !,"*** FILE "_%NMF_" IN USE !" G Z1
 I $ZEOF D OE G Z1
 S %ER=0 D CAMA G:%ER<0 Z1 U 0 W !?30,$J(%CAMA/1024,3,3)_"K"
 S %J=0,%B="" U 0 W !
 F %I=1:1 Q:%I>%CAMA  U %NMF R *%A Q:$ZC>0  D
 .S %B=%B_$C(%A)
 .S:%A'=13 %B=%B_$C(%A)
 .I %A=13 S %J=%J+1,^L1TRDOS(%J)=%B,^L1TRDOS(%J,"BK")="",%B="" Q
 .I $L(%B)=100 S %J=%J+1,^L1TRDOS(%J)=%B,%B="" Q
 .I '(%I#10000) U 0 W "."
 I $L(%B) S %J=%J+1,^L1TRDOS(%J)=%B,%B=""
 S ^L1TRDOS=$S(%NMF["\":$P(%NMF,"\",$L(%NMF,"\")),1:%NMF)
 C %NMF
MODEM I '$D(^L1TRDOS) S %SAY=" ! xcyl dn oi` " X %XMSGV(1) Q
 x %chista
 I $G(%L1TRDOS) S USERPORT=%L1TRDOS,USERGLOB="",USERMOD=1 G GTR
 S USERPORT=$$^%L1PORT,USERGLOB=""
 S USERMOD=1,MDTRANS=""
 S MDMOD=1
 S PORTN=USERPORT
 S MDTON="T"
 S US="U PORTN:(0::::#001001:#800040:8::$C(13))"
 D ^%L2MD(PORTN,MDMOD,$G(MDPHONE),MDTON,US,$G(^PL("MDXON")))
 S OK=$G(%L1MDOK)
 I '$D(MDTRANS),$G(PORTN)>3,PORTN'=$P C PORTN
 I $G(OK)'=1 G END
GTR S PORTN=USERPORT
 O PORTN::2 E  U 0 S %SAY=" qetz hxet " X %XMSGV(1) G END
 U PORTN F I=1:1:%DELAY R *A:0 E  Q
 U PORTN W $C(13) H 1 W "MGR:%L1RCDOS:90",$C(13) H 1
 U PORTN F I=1:1:3 R A:1 I A["UCI" W $C(13) H 3 W "MGR:%L1RCDOS:90",$C(13) H 1
L3GTR K ^UTILITY($J)
 S ^UTILITY($J,"L1TRDOS")=""
 U 0 X %chista
 D ^%L3GTR
 D:'$G(%L1TRDOS) ^%L1HANG K ^UTILITY($J)
 C:PORTN>3&(PORTN'=$P) PORTN Q
END K ^L1TRDOS L  Q
 ;
TE W *7,!,"TRANSFER ERROR $ZC=",$ZC Q
OE W *7,"*** OPEN ERROR ! $ZC=",$ZC Q
 ;
CAMA ;
 N (%UPRCOD,%XMSG,%NMF,%CAMA,%ER)
 S %A=$L(%NMF,"\"),%B=$P(%NMF,"\",%A) I %B'="",%B'["*",%B'["."
 S %ER=$$^%L1ZOS(12,%NMF,32+16+4+1) I %ER<0 D ^%L1OS1 Q
 S %Y=%ER
O13D S %I=$P(%Y,"^"),%J=$P(%Y,"^",2,999)
 S %K=$A(%J,22)
 S %A=$A(%J,27),%B=$A(%J,28),%C=$A(%J,29),%D=$A(%J,30)
 S %CAMA=($J(%A+(%B*256)+(%C*256*256)+(%D*256*256*256),8))
 S %CAMA=+$TR(%CAMA," ","")
 Q

%L1TRP
%L1TRP ;     [ 05.02.06 10:27 ] [ 31.01.06 11:50 ] [ 01.02.04 14:08 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%L1TRG) D ^%L1C
 L ^L1TRPRG:1 E  S %SAY=" WORKING WITH A JOB FROM OTHER TERMINAL ! " X %XMSGV(1) Q
0 K (%L1TRG) D ^%L1C
 S J=0 K MM F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" zegewll "_$S($D(%L1TRG):"milaelb",1:"dpkez ipekcr")_" xeciy "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 D @MM1(%I) G 0
MENU ;
 ;1; d ` i vi ;
 ;1; mipekcr xeciy;SEND;
 ;1;   mixeciy lewehext;PROT;
 Q  ;
SEND ;
 I $D(^TEMPL($P)),$D(^TEMPR($P)) D  G:%S=0 END G:%S=1 Z1
 .S %S=1
 .I '$D(%L1TRG) S %SCRN="L1TRP" D ^%L1SC I %BS S %S=0 Q
 .S %SCRN="L1TRPL" D ^%L1SC
 .S %GETIN=1,%GET=" 2 - ycg xeciy ligzdl ,1 - xeciya jiyndl " D N^%L1GET
 ;
 K ^L1TRPRG,^TEMPL($P)
 I $D(%L1TRG) D  G LAK
 .K ^UTILITY($J) X %chista
 .W %ENG U $P:(ECHO:WRAP) K %ZG D ^%GSEL U $P:(NOECHO:NOWRAP)
 .M ^UTILITY($J)=%ZG
 .M ^L1TRPRG=%ZG
 ;
 K ^TEMPR($P) D GET
PRG S %SCRN="L1TRP",%SC("A")="" D ^%L1SC G:%BS END
 I '$D(^TEMPR($P)) G END
LAK K ^TEMPL($P)
 I $D(^LAK) D
 .K %Q S %Q("Z")="AUTOANSWER mr zegewld lk xegal" D N^%S2ASK I YES D
 ..S N="",I=0 F  S N=$O(^LAK(N)) Q:N=""  D
 ...S MODEM=$P($G(^(N,1)),"\",3) Q:'MODEM  Q:$P($G(^LAK(N,1)),"\",7)'="k"
 ...S I=I+1,^TEMPL($P,I)=N_"\"_$G(^LAK(N))_"\"_MODEM_"\"
 S %SCRN="L1TRPL" D ^%L1SC I %BS G PRG
Z1 ;
 S %GET="TARGET UCI :++22,10,EE#++18,E,I" D ^%L1GET Q:%S=""!(%TO="END")  S UCI=%S
 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ERR"
 I $D(%L1TRG) G Z2
 F %I=1:1 Q:'$D(^TEMPR($P,%I))  D
 .S SHEM=$TR($P($G(^(%I)),"\")," ","") Q:'$L(SHEM)
 .I '$D(%ZR(SHEM)) Q
 .D RED1^%L1ED(SHEM)
 .M ^L1TRPRG(SHEM)=^S000($P) K ^S000($P)
 .U 0 W "."
 I $D(^L1TRPRG)<10 S %SAY=" ! xeciyl mipezp oi`" X %XMSGV(1) G END
 K %Q S %Q("Z")="xcyl " D N^%S2ASK I 'YES G END
Z2 ;
 I '$D(^TEMPL($P)) G END
 F I=$O(^TEMPL($P,99999),-1):-1:1 Q:$P(^(I),"\",4)["OK"
 S:I<1 I=1
 X %chista S ^l2md($P)=3,INTR=0
 F L1TRPRGL=I:1 Q:'$D(^TEMPL($P,L1TRPRGL))  D  G:INTR END
 .S A=$G(^(L1TRPRGL))
 .D G^%L1SCV("L1TRPL",A) Q:SIMAN="OK"
 .D MODEM I INTR K %Q S %Q("Z")="CONTINUE",%Q("X")=10,%Q("Y")=24 D ^%S1ASK I YES S INTR=0
END0 S IND=$P($H,",",1)_$TR($J($P($H,",",2),5)," ",0)
 I '$D(%L1TRG) S MAC1="^TEMPR($P)",MAC2="^L1TRPROT(IND,""R"")" D ^%S1GC1
 I $D(%L1TRG) S MAC1="^UTILITY($J)",MAC2="^L1TRPROT(IND,""G"")" D ^%S1GC1 S ^L1TRPROT(IND)="G"
 S MAC1="^TEMPL($P)",MAC2="^L1TRPROT(IND,""L"")" D ^%S1GC1
 K ^L1TRPRG,^TEMPR($P),^TEMPL($P),^UTILITY($J)
END L  Q
 ;
GET ;
 U 0 W %ENG
 X %chista
 U 0 K ^TEMPR($P) U $P:(ECHO:WRAP)
 K %ZR D ^%RSEL I '$D(%ZR) W !,"No routines selected" Q
 S %SAY=" ... oznd `p` " X %XMSGN
 S N="",I=0 F  S N=$O(%ZR(N)) Q:N=""  D
 .S I=I+1,^TEMPR($P,I)=N_"\"_$$HRA(N)
 U $P:(NOECHO:NOWRAP)
 Q
PROG ;
 I %OLDTO="F7" D  S %SC("ST")=1 Q
 .N N,NR,%ZR K ^L1TRP($P)
 .D ^%RSEL Q:'$D(%ZR)
 .S N="" F  S N=$O(%ZR(N)) Q:N=""  S ^L1TRP($P,N)=""
 .S MAC="^L1TRP($P)"
 .S %L1("BE")=6
 .S %L1("EU")=2
 .S %L1("T1")="                        dxrd                        |    dpkez  "
 .S %L1("TXT1")="%ENG_$$HRA^%L1TRP(%NXN)\/$$ENG^%L1FRM(%NXN,8)<>8"
 .D ^%L1NU Q:FLAG'=""
 .S PROG=INDEX,HRA=$$HRA(PROG),%SC("TO")="PL"
 Q:PROG=""
 I %OLDTO="F9" D ^%L1CALL("VIEW^%L1TRP(PROG)",%SCRN,"PROG") S %SC("ST")=1 Q
 I '$D(%ZR(PROG)) S %SC("ER")=1 Q
 S HRA=$$HRA(PROG)
 Q
HRA(PROG) ;
 N HRA
 S HRA="" D RED1^%L1ED(PROG)
 S HRA=$$ENG^%L1FRM($E($$SPA^%L1FRM($P(^S000($P,1),";",2,40)),1,55),55)
 Q HRA
VIEW(%RNAME) ;
 D M1^%L1RV
 Q
LKH ;
 I %OLDTO="F7"!(%OLDTO="F6") D  S %SC("ST")=1 Q
 .N SHM,%S,MAC,%L2VIEW S SHM="",GLB="^TEMPL($P)"
 .I %OLDTO="F6" S %GET="my zligz++23,60,HH#++10,H,I" D ^%L1GET Q:%S=""!(%TO="ESC")  S SHM=%S
 .K ^TEMPH($P,"EZ")
 .N N,I S N="" F  S N=$O(^LAK(N)) Q:N=""  D
 ..N OK S OK=1
 ..N I F I=1:1 Q:'$D(@GLB@(I))  I N=$P(^(I),"\") S OK=0 Q
 ..Q:'OK
 ..I $L(SHM),$$HBR^%L1FRM($G(^LAK(N)),$L(SHM))'=SHM Q
 ..I $P($G(^LAK(N,1)),"\",7)'="k" Q
 ..S ^TEMPH($P,"EZ",N)=$J($P($G(^LAK(N,1)),"\",3),10)_" | "_$$HBR^%L1FRM($TR($G(^LAK(N)),"|","/"),22)_"|"_$J(N,10)_" "
 .S MAC="^TEMPH($P,""EZ"")"
 .S %L2VIEW("T1")=": miyexc zegewl , 'geex' ywn zxfra ,oiivl `p"
 .S %L2VIEW("Y1")=6
 .S %L2VIEW("H")=14
 .S %L2VIEW("FIND")=2
 .S %L2VIEW("SORT")=2
 .S %L2VIEW("SORT",2)="H"
 .S %L2VIEW("SORT","MASTER")=1
 .S %L2VIEW("SORT","HEAD")="    mcen    |            my          |    xtqn   "
 .D ^%L2VIEW I $L($G(%L2VIN)),'$D(^L2VMM($J,%L2VIN)),%L2VIN,$G(%I) S ^L2VMM($J,%L2VIN)=%L2VNM
 .I '$D(^L2VMM($J)) D A^%L1SC S %SC("ST")=1 Q
 .S N="",I=0 F  S N=$O(^L2VMM($J,N)) Q:N=""  D
 ..N LKH,MODEM,SHEM
 ..S LKH=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",3))
 ..S SHEM=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",2))
 ..S MODEM=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",1))
 ..D ADD^%L1GSEQ(GLB,SH+I,LKH_"\"_SHEM_"\"_MODEM)
 ..S I=I+1
 .K ^L2VMM($J),^TEMPH($P,"EZ")
 .D GET^%L3MBG
 .D A^%L1SC
 Q:$G(LKH)=""  S LKH1=$G(^LAK(LKH))
 S MDPHONE=$P($G(^LAK(LKH,1)),"\",3)
 S %SC("TO")="PL"
 Q
MODEM ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L1TRG,MDPHONE,LKH1,L1TRPRGL,UCI,INTR) D ^%L1C
 I $D(%L1TRG) D
 .K ^UTILITY($J)
 .N GLB,GLB1
 .S N1="" F  S GLB="^UTILITY($J,""",N1=$O(^L1TRPRG(N1)) Q:N1=""  D  I $E(GLB,$L(GLB))'=")" S GLB=GLB_""")",@GLB=""
 ..S GLB=GLB_N1,GLB1=GLB
 ..S N2="",N2O=N2 F  S N2=$O(^L1TRPRG(N1,N2)) Q:N2=""  D
 ...S GLB=GLB1
 ...S N3="" F  S N3=$O(^L1TRPRG(N1,N2,N3)) Q:N3=""  I N3=1 D  Q
 ....S GLB=GLB_"("""""_^L1TRPRG(N1,N2,N3,2)_""""")"")" S @GLB=""
 S USERPORT=$$^%L1PORT Q:USERPORT=""
 S USERGLOB="",INTR=0
 S USERMOD=1,MDTRANS=""
 I $D(%L1TRG) S PROG="%L2GTR1"
 E  S PROG="%L1RCPRG"
 S MDMOD=1
 S PORTN=USERPORT
 S MDTON="T"
 S US="O PORTN U PORTN:(NOECHO:NOWRAP:PASTHRU:TERM=$C(13,10))"
 S %L1RBCL=%CV("CF")
 W %LIGHT1 D TV^%L1RBUA(20,5,24,76) X %XCL
 D ^%L2MD(PORTN,MDMOD,$G(MDPHONE),MDTON,US,$$XON^%L1PORT,LKH1)
 I $G(%L1MDOK)["INTR" S INTR=1
 S OK=$G(%L1MDOK)
 I $G(OK)'=1 G ENDM
 S PORTN=USERPORT
 O PORTN::2 E  U 0 S %SAY=" qetz hxet " X %XMSGV(1) G ENDM
 X US F I=1:1:%DELAY R *A:0 E  Q
 W $C(13) H 1 W UCI_":"_PROG_":90",$C(13) H 1
 F I=1:1:3 R A:1 I A["UCI" W $C(13) H 3 W UCI_":"_PROG_":90",$C(13) H 1
 I '$D(%L1TRG) D
 .K ^UTILITY($J)
 .S ^UTILITY($J,"L1TRPRG")=""
 K ^GTR000($P)
 D ^%L3GTR I '$D(^%L1GTER) D
 .S $P(^TEMPL($P,L1TRPRGL),"\",4)="OK"
 .S %YY=17,%XX=33 X %POSIC W "OK"
 I $D(^%L1GTER) D
 .S $P(^TEMPL($P,L1TRPRGL),"\",4)="NOK"
 .I $G(^%L1GTER)["INTR" S INTR=1
 D ^%L1HANG K ^UTILITY($J)
 C:PORTN>3&(PORTN'=$P) PORTN
ENDM Q
 ;
ERR L  S %NOASKEXIT="" G ER^%L1X
 ;
PROT ;
 S MAC="^L1TRPROT"
 S %L1("BE")=5,%L1("T1")=" mixeciy lewehext "
 S %L1("TXT1")="$$^%L1DC($E(%NXN,1,5),1)_""  ""_$$T^%L1TIME($E(%NXN,6,10))"
 S %L1("DO")="D PROTV^%L1TRP"
 S %L1("US")="I '$D(%L1TRG)&(%NXS'=""G"")!($D(%L1TRG)&(%NXS=""G""))"
 S %L1("REV")=""
 x %chista
 D ^%L1NU
 Q
PROTV ;
 S UCI=$P($$^%L1ZU(0),",")
 K ^TEMPR($P),^TEMPL($P)
 I '$D(%L1TRG) S MAC1="^L1TRPROT(INDEX,""R"")",MAC2="^TEMPR($P)" D ^%S1GC1
 I $D(%L1TRG) K ^L1TRPRG S MAC1="^L1TRPROT(INDEX,""G"")",MAC2="^L1TRPRG" D ^%S1GC1
 S MAC1="^L1TRPROT(INDEX,""L"")",MAC2="^TEMPL($P)" D ^%S1GC1
 S TRH=$$^%L1DC($E(INDEX,1,5),1)
 I '$D(%L1TRG) S %SCRN="L1TRP",%SC("VIEW")=1 D A^%L1SC
 S %SCRN="L1TRPL",%SC("VIEW")=1 D ^%L1SC K %SC
 S %GET="<ESC> - z`vl , 2 - xeciy jiyndl ,1 - ycgn lkd xcyl " D N^%L1GET Q:%S=""!(%TO="END")
 I %S=2 D  G Z1
 .K %SC
 .I '$D(%L1TRG) S %SCRN="L1TRP" D ^%L1SC
 .S %SCRN="L1TRPL" D ^%L1SC
 I %S=1 D  G Z1
 .K ^TEMP0($P)
 .F I=1:1 Q:'$D(^TEMPL($P,I))  S $P(^(I),"\",4)=""
 .K %SC
 .I '$D(%L1TRG) S %SCRN="L1TRP" D ^%L1SC
 .S %SCRN="L1TRPL" D ^%L1SC
 Q

%L1TRPR
%L1TRPR ;  [ 06/20/2002  12:52 PM ]
 S USERPORT=$G(^PL("MDPORT")),USERGLOB=""
 S USERMOD=1,MDTRANS=""
 S MDMOD=1
 S PORTN=USERPORT
 S MDTON="T"
 S US="U PORTN:(NOWRAP:NOECHO:TERM=$C(13))"
 D ^%L1MD(PORTN,MDMOD,$G(MDPHONE),MDTON,US,$G(^PL("MDXON")))
 I $G(OK)'=1 G END
 S PORTN=USERPORT
 O PORTN::2 E  U 0 S %SAY=" qetz hxet " X %XMSGV(1) G END
 X US D CL
TV S KV="""",KVKV=KV_KV
 W $C(13) H 1 W "MGR:PRIEM:90",$C(13) H 1
 D CL  W "ZI ""%L1RCPRG D ^%L2GTR1""",$C(13) H 1
 D CL  W "ZI "" S N="_KVKV_KVKV_" F  S N=$O(^L1TRPRG(N)) Q:N="_KVKV_KVKV_" D""",$C(13) H 1
 D CL  W "ZI "" .X """"X """"""""ZR  F I=1:1 Q:'$D(^L1TRPRG(N,I))  ZI ^(I)"""""""" ZS @N""",$C(13) H 1
 D CL  W "ZS %L1RCPRG",$C(13) H 1
 D CL  W "^^^^^",$C(13)
END D ^%L1HANG C PORTN
 Q
CL F I=1:1:%DELAY R *A:0 E  Q

%L1TRPRG
%L1TRPRG ; SEND PROGRAMMS TO MULTIPLE COMPUTERS  [ 07.02.06 08:44 ] [ 06/20/2002  12:52 PM ]
 D ^%L1C X %chista S %SAY=" ROUTINES TRANSMISSION " X %XMSGV
 L ^L1TRPRG:1 E  S %SAY=" WORKING WITH A JOB FROM OTHER TERMINAL ! " X %XMSGV(1) Q
 U 0 S PRT=$P N %HBRY W %ENG S %S="" K ^L1TRPRG
 S N="" F  S N=$O(^SHP("L1TRPRGL",N)) Q:N=""  S $E(^SHP("L1TRPRGL",N),70)=" "
Z1 ;
 K ^L1TRPRG S ^L1TRPRG=1
 F %I=1:1 Q:'$D(^SHP("L1TRPRG",%I))  D
 .S SHEM=$TR($G(^(%I))," ","") Q:'$L(SHEM)
 .I '$D(^ (SHEM)) Q
 .X "ZL @SHEM F %I1=1:1 Q:$T(+%I1)=""""  S ^L1TRPRG(SHEM,%I1)=$T(+%I1)"
 .I '(%I#10000) U 0 W "."
 I '$D(^L1TRPRG) S %SAY=" ! xeciyl mipezp oi`" X %XMSGV(1) G END
Z2 ;
 S UCI=$P($$^%L1ZU(0),",") I UCI="MEZ" S UCI="MGR"
 I '$D(^SHP("L1TRPRGL",^L1TRPRG)) G END
 S MDPHONE=$P($G(^SHP("L1TRPRGL",^L1TRPRG))," ")
 I '$L(MDPHONE) G Z2E
 I $E(^SHP("L1TRPRGL",^L1TRPRG),70)="*" G Z2E
 D MODEM
Z2E S ^L1TRPRG=^L1TRPRG+1 G Z2
MODEM ;
 S USERPORT=$G(^PL("MDPORT")),USERGLOB=""
 S USERMOD=1,MDTRANS=""
 S MDMOD=1
 S PORTN=USERPORT
 S MDTON="T"
 S US="U PORTN:(0::::#001001:#800040:8::$C(13))"
 D ^%L1MD(PORTN,MDMOD,$G(MDPHONE),MDTON,US,$G(^PL("MDXON")))
 S OK=$G(%L1MDOK)
 ;;I '$D(MDTRANS),$G(PORTN)>3,PORTN'=$P C PORTN
 I $G(OK)'=1 G END
 S PORTN=USERPORT
 O PORTN::2 E  U 0 S %SAY=" qetz hxet " X %XMSGV(1) G END
 X US F I=1:1:%DELAY R *A:0 E  Q
 W $C(13) H 1 W UCI_":%L1RCPRG:90",$C(13) H 1
 F I=1:1:3 R A:1 I A["UCI" W $C(13) H 3 W UCI_":%L1RCPRG:90",$C(13) H 1
 K ^UTILITY($J)
 S ^UTILITY($J,"L1TRPRG")=""
 U 0 X %chista U PORTN
 D ^%L2GTR I '$D(^%L1GTER) S $E(^SHP("L1TRPRGL",^L1TRPRG),70)="*"
 D ^%L1HANG K ^UTILITY($J)
 C:PORTN>3&(PORTN'=$P) PORTN
 Q
END L  Q
 ;
TE W *7,!,"TRANSFER ERROR $ZC=",$ZC Q
OE W *7,"*** OPEN ERROR ! $ZC=",$ZC Q
 ;

%L1TRSNS
%L1TRSNS ;                                                                                                             [ 07.02.06 09:08 ] [ 19.01.06 07:06 ] [ 13.02.03 11:22 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC) D ^%L1C
 L ^L1TRSNS:1 E  S %SAY=" WORKING WITH A JOB FROM OTHER TERMINAL ! " X %XMSGV(1) Q
0 K  D ^%L1C
 S J=0 K MM F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" SMS- jxc zegewll zerced xeciy "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 D @MM1(%I) G 0
MENU ;
 ;1; d ` i vi ;
 ;1; zerced xeciy;SEND;
 ;1; mixeciy lewehext;PROT;
 Q  ;
SEND ;
 I '$G(^PL("MDPSNS")) S %SAY=" ! SMS xiyknl uexr xcbed `l " X %XMSGV(1) Q
 S UCI=$$^%L1UCI
 ;----- HEMSHEH SHIDUR KODEM
 I $D(^TMPL($P)),$D(^TMPR($P)) D  G:%S=0!$G(EM) END G:%S=1 Z2
 .S %S=1
SND1 .D HZGMSG($G(^TMPR($P))) Q:$G(EM)
 .S %SCRN="L1TRSNSL" K %SC D ^%L1SC
 .S %GETIN=1 F  S %GET=" 0 - z`vl, 3 - ycgn ligzdle lkd wegnl , 2 - drced owzl, 1 - xeciya jiyndl " D N^%L1GET S:%TO="END" %S="" Q:"0123"[%S&$L(%S)  W *7
 .I %S=2 G SND1
 ;
 ; ------------ SHIDUR HADASH
 K ^L1TRSNS,^TMPL($P),^TMPR($P)
HM D HZGMSG($G(^TMPR($P))) I $G(EM) G END
LAK ;
 S %SCRN="L1TRSNSV" S %SCNC="" D A^%L1SC
 D CA^%L1SC
LAKV S %FNAME="",FRST=1 D GETF^%L1SC
 D IS2^%L1GET I 'YES G LAKV
 S UCL="MER" I $$^%L1UCI["MEZ" S UCL="MEZ"
 I $$^%L1UCI["MLY" S UCL=^UCI("KL")
 S SHLK=0
 I VLKH=2 D
 .S %SCRN="L1TRSNSC" D ^%L1SC
 .S N=999 F  S N=$O(^LKH(N)) Q:N=""  S PEL=$P($G(^LKH(N,2)),"*",19) S:'PEL PEL=$P($G(^LKH(N,1)),"*",15) D BDL D:PEL VIB
 I VLKH=1 D
 .S N=999 F  S N=$O(^LKH(N)) Q:N=""  S PEL=$P($G(^LKH(N,2)),"*",19) S:'PEL PEL=$P($G(^LKH(N,1)),"*",15) D BDL D:PEL TMPL(N,$G(^LKH(N)),PEL)
 I VLAK D
 .S N="" F  S N=$O(^LAK(N)) Q:N=""  S PEL=$P($G(^LAK(N,1)),"\",2) D BDL D:PEL TMPL("L"_N,$G(^LAK(N)),PEL)
 I VSEF D
 .S N="" F  S N=$O(^TEL(N)) Q:N=""  S PEL=$P($G(^TEL(N,1)),"\",2) D BDL D:PEL TMPL("T"_N,$G(^TEL(N)),PEL)
 I VSAP!VMRK D
 .;;S N="" F  S N=$O(^["MLY"]YZRN(N)) Q:N=""  D
 ..S A=$G(^[^UCI("MLG")]YZRN(N,10))
 ..S PN=$P(A,"*",2) Q:PN="k"&'VMRK  Q:PN="l"&VMRK&'VSAP
 ..N TEL S TEL(1)=$P(A,"*",5)
 ..S TEL(2)=$P(A,"*",10)
 ..S TEL(3)=$P(A,"*",19)
 ..S TEL(4)=$P(A,"*",20)
 ..N I F I=1:1:4 I $$PEL(TEL(I)) S PEL=$$PEL(TEL(I)) D TMPL("M"_N,$G(^[^UCI("MLG")]YZRN(N)),PEL) Q
 ;
ZL K %SCNC S %SCRN="L1TRSNSL" D ^%L1SC ;--- BHIRAT LAKOHOT
 ;
Z1 S $ZT="ZG "_$ZL_":ERR"
 S %GET=" 0 - z`vl , 3 - xcyl , 2 - zegewl zniyx owzl, 1 - drcedl xefgl" D N^%L1GET
 I %S=0 G END
 I %S=1 G HM
 I %S=2 G ZL
 I %S=3 G Z2
 W *7 G Z1
 ;
Z2 ;
 I '$D(^TMPL($P)) G END
 F I=$O(^TMPL($P,99999),-1):-1:1 Q:$P(^(I),"\",4)["OK"
 S:I<1 I=1
 X %chista S INTR=0
 F L1TRSNSL=I:1 Q:'$D(^TMPL($P,L1TRSNSL))  D  G:INTR END
 .S A=$G(^(L1TRSNSL))
 .D G^%L1SCV("L1TRSNSL",A) Q:SIMAN="OK"
 .D MODEM I INTR K %Q S %Q("Z")="CONTINUE",%Q("X")=10,%Q("Y")=24 D ^%S1ASK I YES S INTR=0
END0 G:'$L($G(MSG)) END S IND=$P($H,",",1)_$TR($J($P($H,",",2),5)," ",0)
 S ^L1PRSNS(IND,"M")=MSG
 S MAC1="^TMPL($P)",MAC2="^L1PRSNS(IND,""L"")" D ^%S1GC1
END K ^L1TRSNS,^TMPR($P),^TMPL($P),^UTILITY($J)
 L  Q
 ;
LKH ;
 I %OLDTO="F7"!(%OLDTO="F6") D  S %SC("ST")=1 Q
 .N SHM,%S,MAC,%L2VIEW S SHM="",GLB="^TMPL($P)"
 .I %OLDTO="F6" S %GET="my zligz++23,60,HH#++10,H,I" D ^%L1GET Q:%S=""!(%TO="ESC")  S SHM=%S
 .K ^TMPH($P,"EZ")
 .N N,I S N="" F  S N=$O(^L1TRSNS(N)) Q:N=""  D
 ..N OK S OK=1
 ..N I F I=1:1 Q:'$D(@GLB@(I))  I N=$P(^(I),"\") S OK=0 Q
 ..Q:'OK
 ..I $L(SHM),$$HBR^%L1FRM($G(^L1TRSNS(N)),$L(SHM))'=SHM Q
 ..I '$G(^L1TRSNS(N,1)) Q
 ..S ^TMPH($P,"EZ",N)=$J($G(^L1TRSNS(N,1)),10)_" | "_$$HBR^%L1FRM($TR($G(^L1TRSNS(N)),"|","/"),22)_"|"_$J(N,10)_" "
 .S MAC="^TMPH($P,""EZ"")"
 .S %L2VIEW("T1")=": miyexc zegewl , 'geex' ywn zxfra ,oiivl `p"
 .S %L2VIEW("Y1")=6
 .S %L2VIEW("H")=14
 .S %L2VIEW("FIND")=2
 .S %L2VIEW("SORT")=2
 .S %L2VIEW("SORT",2)="H"
 .S %L2VIEW("SORT","MASTER")=1
 .S %L2VIEW("SORT","HEAD")="    mcen    |            my          |    xtqn   "
 .D ^%L2VIEW I $L($G(%L2VIN)),'$D(^L2VMM($J,%L2VIN)),$G(%I) S ^L2VMM($J,%L2VIN)=%L2VNM
 .I '$D(^L2VMM($J)) D A^%L1SC S %SC("ST")=1 Q
 .S N="",I=0 F  S N=$O(^L2VMM($J,N)) Q:N=""  D
 ..N LKH,MODEM,SHEM
 ..S LKH=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",3))
 ..S SHEM=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",2))
 ..S PEL=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",1))
 ..D ADD^%L1GSEQ(GLB,SH+I,LKH_"\"_SHEM_"\"_PEL)
 ..S I=I+1
 .K ^L2VMM($J),^TMPH($P,"EZ")
 .D GET^%L3MBG
 .D A^%L1SC
 ;
 I %OLDTO="F9",$$^%L1UCI["ME" D ^%L1CALL("KLLKHS",%SCRN,"LKH") S %SC("ST")=1 Q
 Q:$G(LKH)=""  N LKH0 S LKH0=LKH ;I $E(LKH)?1A S LKH0=$E(LKH,2,25)
 S LKH1=$G(^L1TRSNS(LKH0))
 I LKH'=%MOLD S MDPHONE=$G(^L1TRSNS(LKH0,1))
 I LKH1="" S $P(%MBG("OU"),"\",2)=""
 S %SC("TO")="PL"
 Q
MODEM ;
 S US="O PORTN U PORTN:(0::::#001001:#800040:8::$C(13))"
 S PORTN=$G(^PL("MDPSNS"))
 S MSG=$$FRMMSG(MSG)
 D ^%L3MD(PORTN,MDPHONE,US,LKH1,MSG,0)
 Q
FRMMSG(MSG) ;
 Q MSG
 S MSG1=""
BFM N A S A=$E(MSG,$L(MSG)-12,$L(MSG)) I '$L(A) G EFM
 I $E(A)'=" " S A=$J(" "_A,13)
 S MSG1=A_MSG1
 S MSG=$E(MSG,1,$L(MSG)-13)
 G BFM
EFM Q MSG1
 ;
ERR L  S %NOASKEXIT="" G ER^%L1X
 ;
PROT ;
 S MAC="^L1PRSNS"
 S %L1("BE")=5,%L1("T1")=" mixeciy lewehext "
 S %L1("TXT1")="$$^%L1DC($E(%NXN,1,5),1)_""  ""_$$T^%L1TIME($E(%NXN,6,10))"
 S %L1("DO")="D PROTV^%L1TRSNS"
 S %L1("REV")=""
 x %chista
 D ^%L1NU
 Q
PROTV ;
 S UCI=$$^%L1UCI
 K ^TMPR($P),^TMPL($P)
 D HZGMSG($G(^L1PRSNS(INDEX,"M"))) Q:$G(EM)
 S MAC1="^L1PRSNS(INDEX,""L"")",MAC2="^TMPL($P)" D ^%S1GC1
 S TRH=$$^%L1DC($E(INDEX,1,5),1)
 S %SCRN="L1TRSNSL",%SC("VIEW")=1 D ^%L1SC K %SC
PROTVZ S %GETIN=3,%GET="<ESC> - z`vl , 3 - xeciya jiyndl , 2 - zegewl zniyx owzl ,1 - drced owzl " D N^%L1GET Q:%S=""!(%TO="END")
 I %S=2 D  Q:$G(EM)  G PROTVZ
 .K %SC S EM=0
 .S %SCRN="L1TRSNSL" D ^%L1SC
 I %S=1 S EM=0 D  Q:$G(EM)  G PROTVZ
 .K ^TMP0($P)
 .F I=1:1 Q:'$D(^TMPL($P,I))  S $P(^(I),"\",4)=""
 .K %SC D HZGMSG($G(^L1PRSNS(INDEX,"M"))) Q:$G(EM)
 .S %SCRN="L1TRSNSL" D ^%L1SC
 I %S=3 G Z2
 Q
HZGMSG(%S) ;
 N %X1,%X2,%Y1,%Y2,%L1WH
 X %chista S %SAY=" xeciyl drced cilwdl `p " X %XMSGV
HM1 S %X1=34,%X2=47,EM=0
 S %Y1=3,%Y2=14
 S %L1WH("RB")=""
 S %L1WH("WORD")=""
 S %L1WH("=")=""
 S %L1WH("ESC")="" D ^%L1WH
 D  G:EM=2 HM1 Q:EM
 .N %S,%TO S %GETIN=2 F %GET="0 - z`vl , 2 - rval , 1 - owzl " D N^%L1GET S:%TO="END" %S="" Q:"012"[%S&($L(%S)=1)  W *7
 .I %S=0 S EM=1
 .I %S=1 S EM=2
 I %S?.P S EM=1 Q
 K ^TMPR($P)
 S MSG=%S,^TMPR($P)=%S
 Q
BDL I '$$PEL(PEL),$$PEL(N) S PEL=N
 Q
PEL(N) ;
 I $E(N,1,2)="05"!($E(N,1,2)="06") Q 1
 Q 0
TMPL(LKH,LKH1,PEL) ;
 S ^L1TRSNS(LKH)=LKH1
 S ^L1TRSNS(LKH,1)=PEL
 S SHLK=SHLK+1,^TMPL($P,SHLK)=LKH_"\"_LKH1_"\"_PEL_"\"
 Q
VIB ;
 I $$MAZAV(N)="q" Q
 I MESUGL!ADSUGL,$$SUGL(N)<MESUGL!($$SUGL(N)>ADSUGL) Q
 I MELKH!ADLKH,$TR(N,"-","")<MELKH!($TR(N,"-","")>ADLKH) Q
 I MESUGL="-",ADSUGL="-",$$SUGL(N)'="" Q
 N JOMH S JOMH=$$MMDD($$JOMH(N))
 I JOMH<$$MMDD(METRH)!(JOMH>$$MMDD(ADTRH)) Q
 I METRHML,$$^%L1DC($$TRHMDL(N),3)<$$^%L1DC(METRHML,3) Q
 I ADTRHML,$$^%L1DC($$TRHMDL(N),3)>$$^%L1DC(ADTRHML,3) Q
 I $$^%L1DC($$DATPTH(N),3)<$$^%L1DC(MEDATPTH,3)!($$^%L1DC($$DATPTH(N),3)>$$^%L1DC(ADDATPTH,3)) Q
 I $G(ISAH)'?.P,$$ISCR(N)'=(ISAH="k") Q
 I $L($TR(IR," ","")),$TR(IR," ","")'=$TR($$IR(N)," ","") Q
 I MEITRA,$$ITRA(N)<MEITRA Q
 I ADITRA,$$ITRA(N)>ADITRA Q
 Q:N?1A  D TMPL(N,$G(^LKH(N)),PEL)
 Q
ITRA(LKH) ;
 I $G(LKH)="" Q "***"
 I '($D(^LKH(LKH,2))#2) Q "?????"
 Q $P(^LKH(LKH,2),"*",4)
MAZAV(LKH) ;
 Q $P($G(^LKH(LKH,2)),"*",18)'="q"
DATPTH(LKH) ;
 I $G(LKH)="" Q ""
 I '($D(^LKH(LKH,2))#2) Q "?????"
 Q $P(^LKH(LKH,2),"*",13)
IR(LKH) Q:$G(LKH)="" ""  N IR S IR=$P($G(^LKH(LKH,1)),"*",13) S:IR="" IR=$G(^P1PRM("IR")) Q IR
JOMH(LKH) Q:$G(LKH)="" ""  Q $P($G(^LKH(LKH,1)),"*",17)
SUGL(LKH) Q:$G(LKH)="" ""  Q $P($G(^LKH(LKH,2)),"*",5)
TRHMDL(LKH) Q:$G(LKH)="" ""  Q $P($G(^LKH(LKH,2)),"*",16)
 Q ""
MMDD(DAT) ;
 S DAT=$TR(DAT,"./","")
 S DAT=$E(DAT,3,4)_$E(DAT,1,2)
 Q DAT

%L1TS
%L1TS ;  [ 25.07.23 06:34 ] [ 24.07.23 21:01 ] [ 11.03.20 05:18 ] 
 N J
 S TSEN="ABGDHVZHTIHCLMMNNSAPPZZKRST"
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 I '$$^%W1HB!$D(HSBENG) S TSS=TS0,TS1=TS0 Q
 D TSS
 Q
 ;
TSS ;
 N J
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 S TSS=$C(128) F J=129:1:154 S TSS=TSS_$C(J)
 S TS1=$C(224) F J=225:1:250 S TS1=TS1_$C(J)
 Q
 
 
 
 
 
 
 
 
 

%L1TSTC1
%L1TSTC1(PORTN) ;                 [ 09.10.06 19:51 ] [ 08.10.06 10:29 ] [ 17.09.06 13:13 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PORTN,%L1TSTC2) D ^%L1C
 O PORTN
CYC ;
 S OK=0
 Q:'$D(@$$^W4DEVI@($P))
 S %XMIN=$$XMIN1^%L1CRDTC ;^P1PRM("TOUCH",$$^%L1INDTC,"XMIN")
 S %XMAX=$$XMAX1^%L1CRDTC ;^P1PRM("TOUCH",$$^%L1INDTC,"XMAX")
 S %YMIN=$$YMIN1^%L1CRDTC ;^P1PRM("TOUCH",$$^%L1INDTC,"YMIN")
 S %YMAX=$$YMAX1^%L1CRDTC ;^P1PRM("TOUCH",$$^%L1INDTC,"YMAX")
 ;
 U PORTN:(NOWRAP:NOECHO)
 F I=1:1:100000 R *A Q:$C(A)="U"
 I $C(A)'="U" G END
 R *A:0 I $C(A)'="T" G END
 R *A:0 ;U 0 I A\4 G END
 U PORTN S X="" R *A,*B
 S X=A+(B*256)
 S Y="" R *A,*B
 S Y=A+(B*256)
 S B=""
 F I=1:1:3 R *A:0 S:A>0 B=B_$C(A) E  Q
 ;
 I X>4000 G CYC
 I Y>4000 G CYC
 I $D(%L1TSTC2) S %L1TSTC2=X_"\"_Y G END
 ;;U 0 W "X=",X,"  Y=",Y,"  X1="_(X-491\39.076+1)," Y1="_(25-(Y-700\114.64))
 U 0 W "X=",X,"  Y=",Y,"  X1="_$$SCX^%L2MOUSE(X)," Y1=",$$SCY^%L2MOUSE(Y)
 U 0 W !
 u PORTN f i=1:1:200 r *a:0
 S OK=1
END c PORTN Q

%L1TSTC2
%L1TSTC2(PORTN) ; [ 13.11.06 05:04 ] [ 09.10.06 19:44 ] [ 08.10.06 10:32 ]
 D ^%L1C N %L1TSTC2 S %L1TSTC2=""
 U 0:(NOECHO:NOWRAP)
 W $C(27,91),"?25l"
 S %XX=5,%YY=2 X %POSIC W %LIGHT1,%CV("YF"),"+" X %XCL
 D ^%L1TSTC1(PORTN)
 S X1=$P(%L1TSTC2,"\")
 S Y1=$P(%L1TSTC2,"\",2)
 U 0:(NOECHO:NOWRAP)
 O PORTN U PORTN:(NOECHO:NOWRAP) F  R *A:1 E  Q
 C PORTN
 S %XX=75,%YY=23 X %POSIC W %LIGHT1,%CV("YF"),"+"
 D ^%L1TSTC1(PORTN)
 S X2=$P(%L1TSTC2,"\")
 S Y2=$P(%L1TSTC2,"\",2)
 S X10=X1-((X2-X1)\15) I X10<0 S X10=0
 S Y10=Y1-((Y2-Y1)\16) I Y10<0 S Y10=0
 S X20=X2+((X2-X1)\22)
 S Y20=Y2+((Y2-Y1)\21)
 Q:'$D(@$$^W4DEVI@($P))
 S ^P1PRM("TOUCH",$$P^%L1INDTC,"XMIN")=X10
 S ^P1PRM("TOUCH",$$P^%L1INDTC,"XMAX")=X20
 S ^P1PRM("TOUCH",$$P^%L1INDTC,"YMIN")=Y10
 S ^P1PRM("TOUCH",$$P^%L1INDTC,"YMAX")=Y20
 W $C(27,91),"?25h"
 S %GET="CALIBRATION DONE",%GET("ISY")=19 D MSG^%L1GET
 Q

%L1TSTCH
%L1TSTCH ; [ 29.10.09 11:19 ] [ 23.11.06 17:41 ] [ 14.12.05 08:02 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 X %chista
BG K  D ^%L1C I %XMSG(0)'>1 S %HBRY=""
 ;;S ^P1HZMS(%L3MYDVN)=""
 S %L1NMB("NO")=""
 S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4),MM2(J)=$P(T,";",5)
 S MM(0)=" TOUCH PORT TESTING "
 S MAC="MM" D ^%L2MENU
 I %I=1 G END
 D @MM1(%I) G BG
END K ^P1HZMS(%L3MYDVN) Q
 ;
MENU ;
 ;1; E X I T ;
 ;1; ALL PORTS DEFINITIONS ;10;
 ;1; NET TERMINAL DEFINITIONS ;11;
 ;0; TOUCH PORTS DEFINITIONS ;1;
 ;0; RESTORE CONNECTION TO TERMINAL ;16;
 ;0; REPAIRE TOUCH DISPLAY ;15;
 ;0; RESTORE WORKING DEFINITIONS ;7;
 ;0; CALIBRATION ;4;
 ;0; TEST OF TOUCH ;5;
 ;0; SHOW INPUT FROM PORT ;2;
 ;0; SMARTSET ;6;
 ;0; CHANGE TERMINAL DEFINITION : PC <-> PC1 ;8;
 ;1; SYSTEM MANAGER ;9;
 ;0; INSTALLATION HELP ;12;
 ;0; START GTM SERVER ;14;
 ;0; SERVER WORK DIAGNOSTIC ;13;
 Q  ;
1 D ^P1PRMTCH Q
2 X %chista S %SAY=" SHOW SIGNALS FROM TOUCH PORT " X %XMSGV
  I '$$BDKPORT Q
  U 0 W !
  S END=0 F  U PORTN R *A:3 D  Q:END
  .I  U 0 W:A=85 ! W A," " R *K:0 S:$C(K)="."!($C(K)="^") END=1 Q
  .U 0 S %GET="NO ANSWER !",%GET("ISY")=19 D MSG^%L1GET S END=1
 C PORTN
 Q
3 X %chista S %SAY=" SHOW TOUCH PORT MODE " X %XMSGV
  I '$$BDKPORT Q
  S END=0 F I=1:1:1000 U PORTN R *A:1 Q:'$T
  U PORTN:(NOWRAP:NOECHO) W $C(0,0,0,0,0,0,0,0,0)
  U PORTN W "Um"_$C(0,0,0,0,0,0,0,0)
  F I=1:1:100000 R *A Q:$C(A)="U"
  I $C(A)'="U" U 0 S %GET="A PORT IS NOT RESPONDING !" D MSG^%L1GET Q
  S B="" F I=1:1:10 U PORTN R *A:1 Q:'$T  S B=B_$C(A)
  C PORTN
  S B1=$A(B,3)
  S B2=$A(B,4)
  ;
  U 0
  W !!?20,$TR($J("",35)," ","-"),!
  S INIT=B1#2 D W("INITIAL TOUCHES ",INIT)
  S STREAM=B1\2#2 D W("STREAM TOUCHES",STREAM)
  S UNT=B1\4#2 D W("UNTOUCHES",UNT)
  S RNG=B1\64#2 D W("RANGE CHECK",RNG)
  S TRIM=B2\2#2 D W("TRIM ",TRIM)
  S CAL=B2\4#2 D W("CALIBRATION",CAL)
  S SCAL=B2\8#2 D W("SCALING",SCAL)
  S TRACK=B2\64#2 D W("TRACKING MODE",TRACK)
  W !!?20,$TR($J("",35)," ","-"),!!
  S %GET="PRESS",%GET("ISY")=19 D MSG^%L1GET
 Q
W(TXT,VL) ;
 W !?20,$$ENG^%L1FRM(TXT,20),":   ",$S($G(VL):"ENABLED",1:"DISABLED")
 Q
4 X %chista S %SAY=" CALIBRATION " X %XMSGV
  I '$$BDKPORT Q
  D ^%L1TSTC2(PORTN)
5 ;
  N $ZT S $ZT="ZG "_$ZL_":E5^%L1TSTCH"
  U $P:(CENABLE:CTRAP=$C(3))
  X %chista S %SAY=" TOUCH TEST ( CTRL+C - EXIT ) " X %XMSGV W !!
  I '$$BDKPORT Q
  F  D ^%L1TSTC1(PORTN)
E5  Q
6 D ^%L1DOS("SMARTSET") Q
7 ;
  N %L1INIT S %L1INIT=""
  D ^%L1TCHLD Q:'$G(%TCHOK)
  D 3
  K %Q S %Q("Z")="DO CALIBRATION" D N^%S2ASK Q:'YES
  ;
  D 4
  S %GET="PRESS",%GET("ISY")=19 D MSG^%L1GET
  Q
8 N DEV,POS,ER,GLD S ER=0
 S POS=$$TV^%L1DEFWS
 I POS'["ws" S ER=2 G ER8
 S GLD=$$^%L1GLD
 S DEV=$G(^[GLD]devi2(POS)) I DEV="" S ER=3 G ER8
 S ^[GLD]%TYPCRT(DEV)=$S($G(^[GLD]%TYPCRT(DEV))="PC":"PC1",1:"PC")
 D ^%L1C
 S %SAY=" %TYPCRT = "_%TYPCRT_"++ 10,35,EE,I,R" X %XMSG
 S %GET="<DONE>" D N^%L1GET
 Q
9 R !!,"PASSWORD : ",PSW I PSW'=19571710 Q
 X %chista
 S %SAY=" SYSTEM MANAGER " X %XMSGV
 N SYSMAN S SYSMAN="" D ^%L1X
 Q
10 D ^%L1DEV
 Q
11 D ^%L1MSF
 Q
12 K ^TMPS111($J) F I=1:1 Q:'$D(^SHP("TCH",I))  S ^TMPS111($J,I)=^(I)
 S %S2V("PRINT")="" D ^%S2VIEW
 K ^TMPS111($J) Q
13 D ^%S1SRV Q
14 D SRV^P1PRMN
 Q
15 D 16^P1POP
 Q
16 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %ENGFL=""
 D SRV^P1PRMN
 D 421^P1PRMN
 Q
ER8 S %SAY=" ERROR "_ER_" " X %XMSGV(1)
 Q
BDKPORT(STAM) ;
  N %L1INIT S %L1INIT=""
  I '$$INIT^%L2MOUSE S %GET=" TOUCH PORT IS NOT DEFINED OR LOCKED " D MSG^%L1GET Q 0
  S PORTN=$$PORT^%L2MOUSE
  I PORTN<0 S %GET=" TOUCH PORT NUMBER IS NEGATIVE " D MSG^%L1GET Q 0
  Q 1

%L1TSTPR
%L1TSTPR(N,ADDR) ; [ 30.11.09 19:12 ] [ 19.11.09 15:46 ] [
 N $ZT
 N CMD
 N FLOUT S FLOUT="/usr/local/mumps/prn"_N_".out"
 C FLOUT:(DELETE)
 K ^tstprn($J)
 S CMD="nmap -sP -q --max_rtt_timeout 200 -n -oX "_FLOUT_" "_ADDR_" > /dev/null"
 ZSY CMD
 N OK,I S OK=1,I=0
 I $$^%L1ZOS(10,FLOUT)<0 G ETP
 S $ZT="S $ZT="""",zr=$R ZG "_$ZL_":ETP^P1PC"
 O FLOUT:(READONLY:REWIND) U FLOUT
 F  R A Q:$ZEOF  S I=I+1,^tstprn($J,I)=A
 C FLOUT
 N STAT S STAT=""
 F I=1:1 Q:'$D(^tstprn($J,I))  D  Q:$L(STAT)
 .N A S A=$G(^(I)) Q:A=""
 .I A["<status state"  D
 ..S STAT=$P(A,"=",2)
 ..S STAT=$P(STAT,"""",2)
 ..S STAT=$$FUNC^%UCASE(STAT)
 I STAT="DOWN" S OK=0
 K ^tstprn($J)
ETP Q OK

%L1TSTR
%L1TSTR ;
 S %NAM="A2TRANWI"
 I $L($G(%NAM)) S %S=%NAM D RED1(%S)
ERG I '$D(%NAM) K U,L,R
 s %PR=$TR(%S,"%","_")_".m"
 S $ZT="g WNOOPEN"
 o %PR:(newversion)
 s $ZT=""
 f I=1:1 q:'$D(^S000($P,I))  u %PR w ^(I),!
 c %PR u $P k ^S000($P)
 ZLINK %PR
 Q
RNOOPEN U $P W *7,"  NO PROGRAMM ! " q
WNOOPEN U $P W *7," ERROR !" Q
 ;
RED1(%S) s %PR=$TR(%S,"%","_")_".m"
 K ^S000($P)
 S $ZT="g RNOOPEN"
 c %PR
 o %PR:(readonly:record=2048:rewind)
 S $ZT="g REOF"
 N I,X S I=0
 f  u %PR r X S I=I+1,^S000($P,I)=$TR(X,$C(9)," ")
REOF ;
 c %PR

%L1TYPCR
%L1TYPCR(STAM) ; [ 25.02.05 14:12 ] [
 N %TYPCRT S %TYPCRT="PC"
 S %TYPCRT=$G(^[$$^%L1GLD]%TYPCRT($$^%L3MYDVN))
 Q %TYPCRT

%L1UCI
%L1UCI(STAM) ; [ 07.02.06 08:38 ] [
 I $ZGBLDIR["mly" Q "MLY"
 I $ZGBLDIR["mer" Q "MER"
 Q "MGR"

%L1UM16
%L1UM16 ; JWC; DISMOUNT A VOLUME GROUP;     [ 21.12.01 10:28 AM ] [ 11/06/97  8:45 AM ]
 ;Copyright Micronetics Design Corp. @1990
 O 63::0 E  ZU 0 W !,"Device 63 in use.. retry later" Q
 NEW QUIET S QUIET=0,OS=$ZB($V(0,-4,2),#F,1) D GETVG^%VGUTIL
ASKVG S X=1
 D CHKNAME(X)
 I QF=1 G EXIT
 I QF=2 G EXIT
 I 'VGRVG,VGUSE>0 D ASKR
 D RemapAUm^%msrpath(VGIN)
 S UNTR=0 ; flag for translation reset in FIXUP subroutine
 D USRCHK G ASKVG:USRS<0,EXIT:USRS>0
 D UMOUNT^TRANSLA2(VGIN) ; turn off translation
 B:(OS&'VGRVG) 0
 D UNMNT1^VGUTIL2(VGIN) ; state = unmounting
 D UNMOUNT I QF G EXIT
 D FINISH
 B:(OS&'VGRVG) 1
 G EXIT
UNMOUNT ;
 S UNTR=1 ; From now on, if error, translation must be reset
 S X=$ZMSM(7,VGIN,VGINAME) ; invalidate nakeds
 S X=$ZMSM(60,VGIN) ; release any locks
 F X=1:1:10 ZF VGIN:1 Q:$T
 I $ZB(VGFLAGS,#4000,1) D CLOSBIJ^DBMAINT8(QUIET) Q:QF
 I OS,'VGRVG F F=0:1:VGVOLS-1 D VOLINFO^%VGUTIL2(VGIN,F) D CLOSE^MOUNT
 I VGRVG,VGCKT S $ZT="ZG "_$ZL_":RVGTRAP^%L1UM16" D  S $ZT="ZG "_$ZL_":"
 .S X=$ZCHAR(64,2,1,0,65,3)_VGNAME
 .V VGCKT+232+VGRMINDX::0:1
 .V 248:$J:VGCKT:0:8 S XX=$ZNET(26,X) V 248:$J:0:0:8
 Q
FINISH ; Flush, and update DDP
 F X=1:1:10 ZF VGIN:1 Q:$T
 D UNMNT2^VGUTIL2(VGIN) ; finish unmount
 D:$D(^ ("DDP")) DBCHG^DDP
 Q
EXIT ;
 C 63 K X,XX,JL,J,USRS
 Q
ALL ; Unmount all VGs except for VG 0
 NEW  D GETVG^%VGUTIL
 S VG=0 F  S VG=$O(VG(VG)) Q:VG'?1.N  D AUTO(VG)
 Q
AUTO(LIST) ; Application entry point to unmount a Volume Group LIST
 ; LIST is list of VGs to be unmounted (indexs or names) separated
 ; by commas
 NEW (LIST,QF) S QUIET=1
 S OS=$ZB($V(0,-4,2),#F,1) D GETVG^%VGUTIL
 F ITEM=1:1:$L(LIST,",") S X=$P(LIST,",",ITEM) DO
 .D CHKNAME(X) Q:QF
 .I $V(2,$J,2)\32=VGIN S QF=-1 Q  ; cannot unmount my current VG
 .D UMOUNT^TRANSLA2(VGIN) ; turn off translation
 .D UNMNT1^VGUTIL2(VGIN) ; state = unmounting
 .D UNMOUNT Q:QF
 .D FINISH
 Q
CHKNAME(X) ; Check validity of VG, return VGNAME, VGIN, and Vginfo
 S VGNAME=X,QF=0
 I VGNAME=+VGNAME,$D(VG(VGNAME)) S VGNAME=VG(VGNAME)
 I '$D(VG(VGNAME)) S QF=1 Q
 I 'VG(VGNAME) S QF=2 Q
 I VG(VGNAME)=0 S QF=3 Q  ; can't unmount VG0
 S VGIN=VG(VGNAME) D VGINFO^%VGUTIL2(VGIN,1)
 Q
FIXUP ;
 D MOUNT^TRANSLA2(VGIN):UNTR
 D UNMNT1F^VGUTIL2(VGIN)
 Q
USRCHK S USRS=$$LIST^%ACTJOB(.JL,VGIN) Q:'USRS
 S X="Y"
 D KILLALL^KILLJOB(VGIN,0) S USRS=0 Q
RVGTRAP ;
 I $ZS["<DSTDB" Q ; circuit forced down
 D FIXUP
 I $ZS'["<INRPT" Q
 S QF=1 Q
SRVUMNT ; from DDPSRV when remote user unmounts
 D GETVG^%VGUTIL S FLG=0,I=1
 F  S J=$ZASCII(M,I) Q:J'>0  D  Q:FLG<0  S I=I+2+$ZASCII(M,I+1)
 .I J=64 Q
 .I J=65 S VGNAME=$E(M,I+2,I+1+$ZASCII(M,I+1)),FLG=$S(VGNAME="":-2,$D(VG(VGNAME)):FLG+1,1:-1) Q
 G:FLG<0 SRVRET
 S VGI=VG(VGNAME) D VGUSE^VGUTIL2(VGI,-1)
 S CIR=$V(248,$J,0) L +DDPCIR(CIR)
 V CIR+264+VGI::$V(CIR+264+VGI,-3,1)-1:1 L -DDPCIR(CIR)
 S J=$ZMSM(60,VGI,$V(48,$J,2)) ; clear remote locks
SRVRET ;
 S M=$ZCHAR(64,2,1,0)
 I FLG<0 S M=M_$ZCHAR(68,1,-FLG,0)
 E  S M=M_$ZCHAR(0)
 D VGINFK^%VGUTIL2 K VG,FLG,I,J,VGI
 Q
SETSAT(OMAPS) ; SET SAT FOR VGIN
 ; SAT is Storage Allocation Table
 N I,SAT,SATNO,SATEND,SATLIM,SATMAP,SATRE,ADJ,V
 I $D(OMAPS) S SAT=VGSAT G:OMAPS=VGMAPS SETSAT1 ;S QF=$ZMSM(2,VGSAT,OMAPS+7\8)
 S SAT=$ZMSM(1,VGMAPS+7\8),VGSAT=SAT
 I SAT=0 ZU 0 W !,"Unable to allocate memory for allocation table for volume group ",VGIN,! S QF=1 Q
SETSAT1 ;
 D SETSAT^VGUTIL2(VGIN,SAT)
 S QF=0,ADJ=0,SATLIM=SAT+(VGMAPS+7\8)
 F V=0:1:VGVOLS-1 D SATVOL
 Q
SATVOL ; SET SAT FOR EACH VOLUME
 D VOLINFO^%VGUTIL2(VGIN,V) S MAXMAPS=VOLBLKS\512
 I ADJ D
 .S:ADJ>VOLMAPS ADJ=VOLMAPS S X=$V(SAT-1,-3,1),Y=1
 .F J=1:1:ADJ S X=$ZB(X,Y,2),Y=Y*2
 .V SAT-1:-3:X:1
 .S VOLMAPS=VOLMAPS-ADJ,MAXMAPS=MAXMAPS-ADJ,ADJ=0
 S SATNO=VOLMAPS\8,SATRE=VOLMAPS#8,SATEND=MAXMAPS+7\8,SATMAP=0
 I (SAT+SATNO+(SATRE'=0))>SATLIM!(SAT+SATEND>SATLIM) D  Q
 .W *7,!!,"Invalid label detected on volume ",V,".  Volume size is inconsistent with"
 .W !,"volume group size.  Use VGLABELE to examine and correct the problem.",!
 .S QF=1 ZT "VGSIZE"
 I MAXMAPS#8 S ADJ=8-(MAXMAPS#8)
 I SATNO F J=1:1:SATNO V SAT:-3:0:1 S SAT=SAT+1
 I SATRE X "F J=7:-1:SATRE S SATMAP=SATMAP*2+1" V SAT:-3:SATMAP:1 S SAT=SAT+1
 I SATEND>SATNO F J=SATNO+(SATRE'=0):1:SATEND-1 V SAT:-3:#FF:1 S SAT=SAT+1
 Q
ASKR ;
ASKR1 ;
 S X="Y" Q
CIRSTOP ; from server when remote system goes down
 D GETVG^%VGUTIL
 ; look for rvgs mounted from remote system
 S VGIN="" F  S VGIN=$O(VG(VGIN)) Q:VGIN'?1.N  D VGINFO^%VGUTIL2(VGIN,1) D
 . L +SUSPRVG(VGIN)
 . I VGSTATE=3,VGRVG,VGCKT=CIR D
 .. D RemapAUm^%msrpath(VGIN)
 .. S VGFLAGS=$ZB(VGFLAGS,#1+#2+#4,7) D SETVGFF^VGUTIL2(VGFLAGS) ;(8) suspend access
 .. D SUSPRVG^VGUTIL2(VGIN,SYS) ;(8)Save SYS name & set VG to MOUNTING
 . L -SUSPRVG(VGIN)
 ; look for local vgs mounted by remote system
 F VGIN=0:1:32-1 S Z=$V(CIR+264+VGIN,-3,1) I Z D VGUSE^VGUTIL2(VGIN,-Z)
 Q

%L1UU
%L1UU ;ENCODE/DECODE UU CODING;YER;RTE-Jun 15 2000, 4:24:44 PM,BY: Eli Reidler
 ;
 ;----------------------------------------------------------------------------------------------------
 ;
UUE(STRING) ; will UUencode contents of STRING
 N (STRING)
UUE2 S OUTPUT=$C($L(STRING)+32) F P=1:3:$L(STRING) S CHRS3=$E(STRING,P,P+2) D UUE3
 S OUTPUT=$TR(OUTPUT," ","`")   ; change space chrs (6bit byte value 0 + 32) to ascii 96 (`)
UUEQ Q OUTPUT
 ;
UUE3 S CHRS3=CHRS3_$C(0,0)
 S X=$A(CHRS3)*256+$A(CHRS3,2)*256+$A(CHRS3,3)
 S B1=X\262144,X=X#262144,OUTPUT=OUTPUT_$C(B1+32)
 S B2=X\4096,X=X#4096,OUTPUT=OUTPUT_$C(B2+32)
 S B3=X\64,X=X#64,OUTPUT=OUTPUT_$C(B3+32)
 S B4=X,OUTPUT=OUTPUT_$C(B4+32)
UUE3Q Q
 ;
 ;----------------------------------------------------------------------------------------------------
 ;
 ; will decode contents of a UUencoded STRING
DEUUE(STRING) ;
 N $ZT S $ZT="ZG "_$ZL_":^%ZER"
 N (STRING)
 S STRING=$TR(STRING,"`"," ")
 S OUTPUT="" F P=2:4:$L(STRING) S CHRS4=$E(STRING,P,P+3) D DEUUE3
 S OUTPUT=$E(OUTPUT,1,$A(STRING)-32)
 Q OUTPUT
 ;
DEUUE3 S B1=$A(CHRS4)-32
 S B2=$A(CHRS4,2)-32
 S B3=$A(CHRS4,3)-32
 S B4=$A(CHRS4,4)-32
DEUUE4 S X=B1*64+B2*64+B3*64+B4
 S OUTPUT=OUTPUT_$C(X\65536),X=X#65536
 S OUTPUT=OUTPUT_$C(X\256),X=X#256
 S OUTPUT=OUTPUT_$C(X)
 Q

%L1VIDEO
%L1VIDEO(PRT) ; [ 09.08.04 09:31 ] [ 05.08.04 09:51 ] [ 02.05.04 22:46 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PRT) D ^%L1C
 S II0=0
CYC F II=1:1 S CRD=$G(^P1VIDEO(PRT)) Q:$D(^STLOOP("VIDEO"))  D  H .01 I $L(CRD) D VIZ
 .I '(II#50) D
 ..S H=$P($H,",",2)
 ..S TIM=$TR($J(H\3600,2)," ",0)_":"_$TR($J(H\60#60,2)," ",0)_":"_$TR($J(H#60,2)," ",0)
 ..S %SAY="  "_TIM_" ++10,35,EE,I,R" X %XMSG
 ..S ^P1VIDEO(PRT,"TIME")=$H
 ..S ^P1VIDEO(PRT,"$J")=$J
 I $D(^STLOOP("VIDEO")) D
 .H 3 K ^STLOOP("VIDEO")
 .zsy "killall mumps"
 Q
VIZ ;
 I $P(CRD,",")="G" D  S ^P1VIDEO(PRT)="EG" Q
 .S X=$P(CRD,",",2)
 .S Y=$P(CRD,",",3)
 .S COL=$P(CRD,",",4)
 .S ROW=$P(CRD,",",5)
 .S MODE=$P(CRD,",",6)
 .S BUF=$P(CRD,",",7)
 .D GET^%VIDEO(BUF,X,Y,COL,ROW,MODE)
 ;
 I $P(CRD,",")="P" D  S ^P1VIDEO(PRT)="EP" Q
 .S X=$P(CRD,",",2)
 .S Y=$P(CRD,",",3)
 .S COL=$P(CRD,",",4)
 .S ROW=$P(CRD,",",5)
 .S MODE=$P(CRD,",",6)
 .S BUF=$P(CRD,",",7)
 .D PUT^%VIDEO(BUF,X,Y,COL,ROW,MODE)
 .;;K @BUF
 Q

%L1VIEW
%L1VIEW ; VT220 OR PC [ 09/27/93  3:34 PM ]
 U 0
 S %MM="$J($E(@%M,1,%LL),%LL)"
 W %ENG S %CLEAR=""
 I '$D(MAC) W *7,!!?5,"*** HASN'T NAME ARRAY !" Q
 I $D(@MAC)<10 W *7,!!?5,"*** HASN'T DATA !" Q
 I '$D(%POSIC) D ^%L1C
 S %M=MAC_"(%SH)" S %LL=0,%SH=0
 F %SH=1:1 Q:'$D(@%M)  I $L(@%M)>%LL S %LL=$L(@%M)
 I %LL>60 S %LL=60
 S %I1=%SH I %I1>16 S %I1=16
 S %SH=0
 I '$D(%SM) S %SM=80-%LL-4\2
 I %SM<1!(%SM>70) S %SM=80-%LL-4\2
 S:%SM<3 %SM=3
 S %SMX=%SM S:'$D(%SMY) %SMY=23-%I1-4\2
 I %SMY>22 S %SMY=23-%I1-4\2
 S:%SMY<2 %SMY=2
 I %I1>(23-%SMY) S %I1=23-%SMY
 X:'$D(%CLEAR) %chista
 ;------------------------------- BODY ----------------
 D CLEAR
 D PHON
 D PC
 S %I=1,%SH=1
CYC0 D INV
CYC R *%A
 I $L($ZB)=4,$D(%UPRCOD($ZB)) S %A=$ZB G COM
 I %A=27 R *%A1:0 G:%A1=-1 27 R *%A:0 G:%A=-1 27 S %A=%A1_%A G COM
 I %A=0 R *%A1:0 I %A1>0 S %A="0"_%A1 G COM
 G:%A=13 ENDPR
COM I $D(%UPRCOD(%A)),$T(@%UPRCOD(%A))'="" G @%UPRCOD(%A)
 G CYC
 ;-
27 S %I=""
ENDPR S %L1VNM=@%M,%L1VIN=%MSH(%SH) K %MSH,%A,%B,%M,@MAC,%LL,%I1,%B1,%B2
 X %XCL
 I '$D(%CLEAR) X %chista
 E  S %XX=0,%YY=%SMY-2 X %POSIC,%chiste
 K %SM,%SMX,%SMY W:$D(%HBRY) %HBR
 Q
 ;-
SERV ;
VVERX G:%I=1 VVM D CL S %I=%I-1,%SH=%SH-1 W %vverx D INV G CYC
VNIZ G:'$D(@(MAC_"(%SH+1)")) CYC
 G:%I=%I1 VNM D CL S %I=%I+1,%SH=%SH+1 W %vniz D INV G CYC
PGDN G:'$D(@(MAC_"(%SH+%I1-%I-1)")) CYC S %SH=%SH+%I1-%I,%I=1 D CLEAR,PC S %SH=%SH+1 G CYC0
PGUP I %SH-%I1-%I<1 S %SH=0,%I=1 G PGUP1
 S %SH=%SH-%I1-%I,%I=1
PGUP1 D CLEAR,PC S %SH=%SH+1 G CYC0
END G:'$D(@(MAC_"(%SH+%I1-%I)")) CYC
 F %J=1:1 Q:'$D(@(MAC_"(%J)"))
 S %SH=%J-%I1-1,%I=1 G PGUP1
HOME S %SH=0,%I=1 G PGUP1
 ;-
VVM G:%SH'>1 CYC S %SH=%SH-2 D CLEAR,PC S %SH=%SH+1 G CYC0
VNM G:'$D(@(MAC_"(%SH+1)")) CYC
 S %SH0=%SH+1,%SH=%SH-%I+1 D CLEAR,PC S %SH=%SH0 K %SH0 G CYC0
 ;-
CL X %XCL D PC1
 Q
 ;-
INV W %CLI D PC1
 Q
 ;-
PHON ;
 X %XCL
 S %XX=%SM-1,%YY=%SMY+1 ;S %XX=%SM-3,%YY=%SMY-2
 S Y1=%YY,X1=%XX,Y2=%YY+%I1+1,X2=%XX+%LL+4
 D RBUA
 Q
 ;-
PC ;
 X %XCL N %I S %SHOLD=%SH
 F %I=1:1:%I1 S %SH=%SH+1 Q:'$D(@%M)  D PC1
 S %SH=%SHOLD K %SHOLD
 Q
PC1 S %XX=%SMX,%YY=%I+%SMY X %POSIC W %HBR,$J($E(@%M,1,%LL),%LL),%ENG
 Q
 ;-
CLEAR ;
 X %XCL N %I S %SHOLD=%SH
 F %I=1:1:%I1 S %XX=%SM-1,%YY=%I+%SMY X %POSIC W $J("",%LL+3)
 S %SH=%SHOLD K %SHOLD
 Q
 ;-
CVET W $J("",%LL+4)
 I $D(%CL0) W *27,*91,%CL0,"m"
 E  X %XCL
 Q
RBUA ;
 D ^%L1RBUA
 Q

%L1WE
%L1WE ; WINDOW ENGLISH ; %X1,%Y1,%X2,%Y2 - COORD WINDOW,%LS - LENGTH,%INV -INVERS  [ 31.03.19 14:54 ] [ 10.04.09 10:53 ] [ 16.10.08 13:37 ] 
 ; %X0,%Y0 -
 I '$D(%POSIC) D ^%L1C
 N %L1WEFR S %L1WEFR=""
 U $P:(NOECHO:NOWRAP:ESCAPE) N %ECHO,%HBRY S %FHBR=0 S %TO=""
 S:'$D(%S) %S="" N %INS S %INS=1
 S:'$D(%X1) %X1=0 S:'$D(%X2) %X2=79
 S:'$D(%Y1) %Y1=20 S:'$D(%Y2) %Y2=23
 N %M,%I,%II,%XX,%YY,%C,%C1,%C2,%TOP,%X0,%Y0,%HBRY
 S:%X1<0 %X1=0 S:%X1>79 %X1=79
 S:%Y1<0 %Y1=0 S:%Y1>23 %Y1=23
 S:%X2<1 %X2=1 S:%X2>79 %X2=79
 S:%Y2<1 %Y2=1 S:%Y2>24 %Y2=24
 S:%X2<%X1 %X2=%X1
 S:%Y2<%Y1 %Y2=%Y1
 S:'$D(%LS) %LS=(%X2-%X1+1)*(%Y2-%Y1+1)
 S %S=$E(%S,1,%LS)
 S %I=1 ;F %II=1:1:$L(%S) S %M(%I)=$E(%S,%II) S %I=%I+1
 S %TOP=$L(%S)
 S %I=1 I $D(%INV) W %ENG,%CLI
 D CLEAR
 D P G:$D(%L1WE)!$D(%L1GET) END1
 S %X0=%X1,%Y0=%Y1
POZ S %XX=%X0,%YY=%Y0 X %POSIC
 R *%C S ZB=""
 I $D(%L1WEFR) S %STARTVV=$P($H,",",2) K %L1WEFR
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 ;;R *%C1:0 I %C1>0 S ZB=ZB_%C1
 I $L(ZB)>3,$D(%UPRCOD(ZB)) G @%UPRCOD(ZB)
 G:%C=13 END
 ;I %C=25 G ESC
 ;I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
 ;I %C=27 R *%C1:0 G:%C1<0 ESC R *%C2:0 I %C2>0 S %C=%C1_%C2
 ;I %C=0 D DELAY R *%C1:0 D DELAY R *%C2:0 I %C1>0 S %C="0"_%C1
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 I %C>31&(%C<127) D VV G POZ
 G POZ
ESC S %TO="END" G END
 ;-
VV I $D(CIST),CIST'[$C(%C) W *7 Q
 I %INS D VSTAV S %XX=%X0,%YY=%Y0 X %POSIC
 S $E(%S,%I)=$$SMB^%S2ERG(%C) ;;$S($D(%HBRY):$TR($C(%C),%TES2,%TES1),1:$C(%C))
 D
 .I $D(%HBRY) W $$W^%L1C($E(%S,%I)) Q
 .W $E(%S,%I)
 ;;W $S($D(%HBRY):$TR($TR($E(%S,%I),%TES1,%TES2),%TEN,%THB),1:$E(%S,%I))
 S:%I>%TOP %TOP=%I D RIGHT
 Q
 ;-
CLEAR ;
 F %II=%Y1:1:%Y2 S %XX=%X1,%YY=%II X %POSIC W $J("",%X2-%X1+1)
 Q
 ;-
P ;
 S %XX=%X1 S %S=$E(%S,1,%TOP)
 F %II=%Y1:1:%Y2 S %YY=%II X %POSIC D
 .N A S A=$E(%S,(%X2-%X1+1)*(%II-%Y1)+1,(%X2-%X1+1)*(%II-%Y1+1))
 .D
 ..I $D(%HBRY) W $$W^%L1C(A) Q  ;;W $S($D(%HBRY):$TR($TR(A,%TES1,%TES2),%TEN,%THB),1:A)
 ..W A
 Q
P1 ;
 N %SSS
 S %SSS=$E(%S,%I,400)
 ;;I $D(%HBRY) S %SSS=$TR($TR(%SSS,%TES1,%TES2),%TEN,%THB)
 ;; W $E(%SSS,1,%X2-%X0+1)
 D
 .I $D(%HBRY) W $$W^%L1C($E(%SSS,1,%X2-%X0+1)) Q
 .W $E(%SSS,1,%X2-%X0+1)
 ;
 S %SSS=$E(%SSS,%X2-%X0+2,400)
 I $D(%HBRY) S %SSS=$$W^%L1C(%SSS)
 F %II=%Y0+1:1:%Y2 S %YY=%II,%XX=%X1 X %POSIC W $E(%SSS,1,%X2-%X1+1) Q:%SSS=""  S %SSS=$E(%SSS,%X2-%X1+2,400)
 Q
 ;-
RIGHT ;
 Q:%X0=%X2&(%Y0=%Y2)!(%I=%LS)!(%I>%TOP)
 I %FHBR W *8 Q
 I %X0=%X2 S %X0=%X1,%Y0=%Y0+1
 E  S %X0=%X0+1
 S %I=%I+1
 Q
LEFT ;
 Q:%X0=%X1&(%Y0=%Y1)!(%I=1)
 I %X0=%X1 S %X0=%X2,%Y0=%Y0-1
 E  S %X0=%X0-1
 S %I=%I-1
 Q
ENDS S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1
 ;-
LEVO ;
 D LEFT G POZ
PRAVO ;
 D RIGHT
 G POZ
VVERX ;
 I %Y0=%Y1,%X0=%X1 S %TO="UP" G END
 I %Y0=%Y1 S %X0=%X1,%I=1 G POZ
 S %Y0=%Y0-1,%I=%I-(%X2-%X1+1)
 G POZ
VNIZ ;
 I %Y0=%Y2!(%I+(%X2-%X1+1)>%TOP) S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1 ;S %X0=%X1+(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) S:%X0>%X2 %X0=%X2 G POZ
 S %Y0=%Y0+1,%I=%I+(%X2-%X1+1)
 G POZ
INS S %INS=1-%INS S %SAY=$S(%INS:"INSERT",1:"OVERFLOW") X %XMSGV G POZ
TAB I %I+10>%TOP S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1
 S %I=%I+10 S:%I>%LS %I=%LS G POZ1
TABN I %I-10<1 S %I=1 G POZ1
 S %I=%I-10
POZ1 S %X0=%X1+(%I-.1#(%X2-%X1+1)+.1)-1,%Y0=%Y1+(%I-.1\(%X2-%X1+1)) S:%X0<%X1 %X0=%X1 S:%X0>%X2 %X0=%X2 G POZ
 ;-
DEL G:%TOP=0 POZ
 F %II=%I:1:%TOP-1 S $E(%S,%II)=$E(%S,%II+1)
 S $E(%S,%TOP)=" " S %TOP=%TOP-1
 I %I-1>%TOP D LEFT S %XX=%X0,%YY=%Y0 X %POSIC W " " G POZ
 D P1 ;D CLEAR,P
 G POZ
 ;-
ADD G:%TOP+1>%LS POZ
 F %II=%TOP:-1:%I S $E(%S,%II+1)=$E(%S,%II)
 S $E(%S,%I)=" " S %TOP=%TOP+1
 D CLEAR,P G POZ
VSTAV Q:%TOP+1>%LS
 F %II=%TOP:-1:%I S $E(%S,%II+1)=$E(%S,%II)
 S $E(%S,%I)=" " S %TOP=%TOP+1
 S %XX=%X0,%YY=%Y0 X %POSIC D P1 Q
 ;D CLEAR,P S %XX=%X0,%YY=%Y0 X %POSIC Q
 ;-
 ;-
HOME S %X0=%X1,%Y0=%Y1,%I=1 G POZ
PGDN S %TO="DW" G END
PGUP S %TO="UP" G END
FIND S %TO="F8" G END
COR S %TO="F7" G END
SAVE S %TO="F9" G END
ADDL S %TO="F5" D ADDL^%L1ZMSL G END
DELL S %TO="F6" G END
REST G:'$D(%L1SF) POZ G:'$D(NM) POZ S %SOLD=%S D  D VSVALL^%L1SF,PODVAL^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ K %L1GET S %S=%SOLD,%INV=1 G %L1WE
 .I %S?.E1"D ".U.N1"^".E S $ZS="<>^"_$P($P($P(%S,"D ",2),"^",2)," ")
 .;N (%UPRCOD,%XMSG,%XMSGV,%XMSGN) X ^%ERG
 .S %PR=$P($P($P(%S,"D ",2),"^",2)," "),U=1
 .S %DLM=$S($E(%S,1,2)="D ":"D ",1:" D ")
 .S %LB=$P($P(%S,%DLM,2),"^",1)
 .X %XCL D POISK^%L1ER(%LB_"^"_%PR)
END S %S=$E(%S,1,%TOP)
END1 U $P
 X %XCL K CIS,%LS Q
 ;-
CHISTS G:%I=0 POZ S %TOP=%I-1
 D CLEAR,P G POZ
 ;-
DELAY F %II=1:1:400
 Q
 ;MDRG S %FHBR='%FHBR I %FHBR S %FLINS=1 W *27,7 S %SAY="HEBREW TEXT" X %XMSGV W *27,8 K %HBRY G HBR ;S %HBRY="" W %HBR G POZ
 ;W *27,7 S %SAY="ENGLISH TEXT" X %XMSGV W *27,8 S %HBRY="" G HBR
 ;HBR I '$D(%HBRY) S %HBRY="" W %HBR D P G POZ
 ;K %HBRY W %ENG D P G POZ
MDRG ;
HBR I '$D(%HBRY),'$G(%FHBR) S TXT="HEBREW SHOW" D STR1 S %HBRY="" D P G POZ
 I $D(%HBRY),'$G(%FHBR) S TXT="HEBREW TEXT" D STR1 S %HBRY="",%FHBR=1 D P G POZ
 S %FHBR=0 K %HBRY S TXT="ENGLISH" D STR1 D P G POZ
 ;
STR1 Q:'$D(TXT)  W %vverxe,%chists S %YY=0,%XX=16 X %POSIC D WT("YF",TXT) K:'$D(TXT(1)) TXT X %XCL
 Q
WT(CV,TXT) X %LIGHT W %CV(CV),TXT X %XCL
 Q
 
 

%L1WEBHD
%L1WEBHD(KOT,PRM,CLASS) ; [ 28.09.23 12:46 ] [ 31.07.23 13:31 ] [ 01.07.10 16:04 ] 
 S KOT=$G(KOT)
 I $G(CLASS)="" S CLASS="hdvw"
 I $G(PRM)["S" W "Session ID="_$G(JB,"?")_"<br>",!
 W "<table class="""_CLASS_""" width="""_$S($G(PRM)["W":$P(PRM,"W",2),1:"100%")_""" align=""center"" border=""1"">",!
 N %NM S %NM=$$^%W1PCNMR
 W "<tr><td dir="""_$$^%W1DIR_""">"
  I %NM'="" D
  .W "<span style=""font-size:"_$$^W3FSZ(11)_""">"_$$^%W1PCNMR_"</span>"
  .W $$NBSP^%L1FRM(2)
  W $S($G(PRM)["T":$$H2U^%L1FRM(KOT),1:$$^%W1DICT(KOT))
 W "</td></tr>",!
 W "</table>",!
 Q
STYLE(CLS,BC,FC,SZ,AL) ;
 I '$D(CLS) S CLS=""
 I '$D(BC) S BC="#000088"
 I '$D(FC) S FC="#FFFFFF"
 I '$D(SZ) S SZ="24pt"
 I '$D(AL) S AL="center"
 W "<style type=""text/css"">",!
 W $S(CLS="":"table {",1:"."_CLS_" {")
 W "   background-color:"_BC_";",!
 W "   color:"_FC_";",!
 W "   font-size:"_SZ_";",!
 W "   text-align:"_AL,!
 W "}"
 W "</style>"
 Q
 
 
 
 
 
 

%L1WEBJS
%L1WEBJS(FILE,TITLE,KOT) ; [ 10.09.07 16:33 ] [ 26.07.07 15:20 ] [ 28.04.07 16:10 ]
 S FFILE=$$FULL(FILE)
 I $$^%L1ZOS(10,FFILE)>0 U 0 W !!," FILE "_FFILE_" EXIST ! " H 1 Q
 O FFILE:(WRITE:NEWVERSION:REWIND)
 U FFILE
 W "<html>",!
 W "<head>",!
 W "<title>"_TITLE_"</title>",!
 W "<%@ taglib uri=""http://cav.co.il/taglibs/mumps"" prefix=""m"" %>",!
 W "<m:session namespace=""USER"">",!
 W "</head>",!
 W "<body>",!
 W "<%@ include file=""w1jbarg.jsp"" %>",!
 W "</m:session>",!
 W "</body>",!
 W "</html>",!
 C FFILE
 Q
PATHJSP(STAM) ;
 N PJSP S PJSP=$$WEBL^W3MAIN
 I $E(PJSP,$L(PJSP))'="/" S PJSP=PJSP_"/"
 Q PJSP
FULL(FILE) ;
 N FFILE
 S %PATHJSP=$$PATHJSP
 S FILE=$$FUNC^%LCASE(FILE)
 I FILE'["." S FILE=FILE_".jsp"
 S FFILE=%PATHJSP_FILE
 Q FFILE

%L1WEBMN
%L1WEBMN(MENU) ; [ 16.09.16 14:41 ] [ 05.06.09 14:55 ] [ 09.05.09 18:25 ] 
 N (MENU,JB,%ARG,%REM)
 N I,N,MN,IM,A
 S N="",I=0 F  S N=$O(^[$$^W3MAIN]W4OPT(MENU,N)) Q:N=""  D
 .S A=$G(^(N))
 .S US=$P(A,";") Q:'@US
 .S RKV=$P(A,";",2)
 .S PROC=$P(A,";",3)
 .S I=I+1,MN(I)=$$^%W1DICT(RKV),MA(I)=PROC
 S IM=I
 ;
 D WMN(.MN,.MA)
 Q
 ;
WMN(MN,MA) ;
 N MN1,MA1
 M MN1=MN
 N I,CLSMN,HREF,IM
 S IM=$O(MN(999),-1)
 S CLSMN=$S($$^%W1DIR="RTL":"menuh",1:"menu")
 ;
 W "<p></p>",!
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table class="""_CLSMN_""" width=""50%"""
 W " dir="""_$$^%W1DIR_""""
 W " >",!
 N I1 S I1=0
 F I=1:1:IM D
 .S MN1(I)=$$SPA^%L1FRM(MN1(I))
 .N JSP,PRM S JSP=$P(MA(I),"?")
 .S PRM=$P(MA(I),"?",2,25)
 .S MA1(I)=$$FUNC^%LCASE(JSP) I PRM'="" S MA1(I)=MA1(I)_"?"_PRM
 .S HREF="<a href="""_MA1(I)_""" target=""_self"">"
 .I MN1(I)["~" D  Q
 ..W "<tr><td colspan=""2"" style=""background-color:brown; text-align:center; color:white"">"
 ..W "<p style=""border-style:ridge"">"_$$H2U^%L1FRM($TR(MN1(I),"~",""))_"</p>"
 ..W "</td></tr>",!
 .
 .S I1=I1+1
 .W "<tr><td>"_I1_".<td width=""90%"">"_HREF_$$H2U^%L1FRM(MN1(I))_"</a></td></tr>",!
 W "</table>",!
 W "</div>",!
 W "<p></p>",!
 Q
 
 

%L1WEEK
%L1WEEK(YY,MM) ; [ 02/01/99  8:52 AM ] [ 06/16/97  6:39 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,YY,MM)
 D INIT^%L1LUAH
 D DEF^%L1LUAH
 S %WEEK="" S:DEN=0 DEN=7
 I DEN=7 S %WEEK="1,",DNX=2
 I DEN=1 S %WEEK="1-7,",DNX=8
 I DEN>1,DEN<7 S %WEEK="1-"_(7-DEN+1)_",",DNX=7-DEN+2
 F I=1:1 Q:(COLD-DNX)<6  S %WEEK=%WEEK_DNX_"-"_(DNX+6)_"," S DNX=DNX+7
 I COLD'<DNX S %WEEK=%WEEK_DNX_"-"_COLD
 E  S %WEEK=$E(%WEEK,1,$L(%WEEK)-1)
 Q %WEEK

%L1WH
%L1WH ; WINDOW HEBRY ; %X1,%Y1,%X2,%Y2 - COORD WINDOW,%LS - LENGTH,%INV -INVERS [ 31.03.19 14:36 ] [ 10.04.09 10:53 ] [ 03.03.09 11:59 ] 
 ;%L1WH("CVB") - BACKGRAUND
 ;%L1WH("CVF") - FOREGRAUND
 ;%L1WH("RB")  -  RIBUA
 ; %X0,%Y0 -
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%S,%X1,%X2,%Y1,%Y2,%L1WH,%L1GET,%LS,%INV,CIST,%TO,%ZMSL,%BE)
 D ^%L1C
 I $D(%L1WH)#2,'$D(%L1WH("CVF")) S %L1WH("CVF")="YF" W %LIGHT1
 U $P:(NOECHO:NOWRAP) ;U $P:(NOECHO:NOWRAP)
 S:'$D(%S) %S="" S %TO="",%INS="",%FHBR=1,%HBRY=""
 S %L1NMB("ALB")=1,%BEG=1
 S %MOUSE=$$INIT^%L2MOUSE K %screen
 N %M,%I,%II,%XX,%YY,%C,%C1,%C2,%TOP,%X0,%Y0,%HBRY,A1
 S:'$D(%X1) %X1=0 S:'$D(%X2) %X2=78 S:'$D(%Y1) %Y1=20 S:'$D(%Y2) %Y2=23
 S:%X1<0 %X1=0 S:%X1>78 %X1=78
 S:%Y1<0 %Y1=0 S:%Y1>23 %Y1=23
 S:%X2<1 %X2=1 S:%X2>79 %X2=79
 S:%Y2<1 %Y2=1 S:%Y2>24 %Y2=24
 S:%X2<%X1 %X2=%X1
 S:%Y2<%Y1 %Y2=%Y1
 S %HBRY=""
 S:'$D(%LS) %LS=(%X2-%X1+1)*(%Y2-%Y1+1)
 I %LS>400 S %LS=400
 D FNS S %S=$E(%S,%JJ,$L(%S))
 S %S=$E(%S,1,%LS)
 S %I=1 F %II=$L(%S):-1:1 S %M(%I)=$E(%S,%II) S %I=%I+1
 S %TOP=$L(%S)
 S %I=1 I $D(%INV) W %CLI
 D CLEAR
 D P G:$D(%L1WH)#2!$D(%L1GET) END1
 I $G(%BE)="E",$L(%S) K %BE G ENDS
 S %X0=%X2,%Y0=%Y1
 I $D(%ZMSL("LB","GL")) D SV
 I %MOUSE,%TOP>1 G ENDS
POZ ;
 ;;W %vverxe,%chists," %X0=",%X0,"  %Y0=",%Y0," %I=",%I," %X1=",%X1,"  %Y1=",%Y1,"  %X2=",%X2,"  %Y2=",%Y2,"  %LS=",%LS,"  %TOP=",%TOP,"  $L(%S)=",$O(%M(9999),-1)
 U $P:(NOECHO:NOWRAP) S %XX=%X0,%YY=%Y0 X %POSIC
 I $G(%PRKB) G RC
 I %MOUSE,'$$KB^%L2MOUSE,'$D(%L1NMB("NO")) D  S %C=$$^%L1NMB("") S:%C="ENTER"!(%C="")!(%C=$C(10)) %C=$C(13) G:$A(%C)<65!($A(%C)>90) CYC2 G:$T(@%C)'="" @%C G CYC2
 .S %L1NMB("ZY")=%Y1 K %PRKB
 ;
RC R *%C:1 E  K %PRKB G POZ
 I $G(%ZMSL)'="",%ZMSL[$C(%C),%C'=13 S %TO=$C(%C) K %ZMSL Q
13 S %XX=%X0,%YY=%Y0 X %POSIC S %BEG=0
 G:%C=13&'$D(%L1WH("ESC")) END
 I %C=13,$D(%L1WH("ESC")) G VNIZ
 I %C=61,$D(%L1WH("=")) G END
 I %C=25 G ESC
 I %C=46 S %C=149
READ G:%TYPCRT="PC" 27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
27 I %C=27 D DELAY R:'$D(%FLL) *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL) *%C2:%WAIT S:%C2>0 C=%C1_%C2
 .R:'$D(%FLL) *%C3:%WAIT S:%C3>0 C=C_%C3
 .R:'$D(%FLL) *%C4:%WAIT S:%C4>0 C=C_%C4
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 I $$ABC(%C) D VV G POZ
 G POZ
VV I $G(%ZMSL)'="",%ZMSL[$C(%C),%C'=13 S %TO=$C(%C) K %ZMSL Q
 I $D(CIST),CIST="" S %TO=$C(%C) Q
 I $D(CIST),CIST'[$C(%C) W *7 Q
 I %C>47&(%C<58)!(%C>64&(%C<91)),%FHBR S %FHBR=0,%INS="" K %HBRY
 I %C>95&(%C<123)!((%C>127)&(%C<155)),'%FHBR S %FHBR=1,%INS="",%HBRY=""
 I $D(%INS),%I'>%TOP!'%FHBR D  D P S %XX=%X0,%YY=%Y0 X %POSIC Q:'%FHBR  Q:%I'>%TOP  G WORD
 .I %I'<%LS!($O(%M(99999),-1)'<%LS) Q
 .
 .I %FHBR D  S %M(%I)=" ",%TOP=%TOP+1 S %M(%I)=$$SMB^%S2ERG(%C) D W(%C) S:%I>%TOP %TOP=%I D LEFT
 ..F %II=%TOP+1:-1:%I+1 S %M(%II)=%M(%II-1)
 .I '%FHBR D  S %M(%I)=$$SMB^%S2ERG(%C) D W(%C) S %TOP=$O(%M(900),-1)
 ..F %II=%TOP+1:-1:%I S:$D(%M(%II-1)) %M(%II)=%M(%II-1)
 .Q
 .
 .I %FHBR D  S %M(%I)=" ",%TOP=%TOP+1 S %M(%I)=$S(%C'=44&(%C'=39):$TR($TR($C(%C),%THB,%TEN),%TES2,%TES1),1:$TR($C(%C),%TES2,%TES1)) D W(%I) S:%I>%TOP %TOP=%I D LEFT
 ..F %II=%TOP+1:-1:%I+1 S %M(%II)=%M(%II-1)
 .I '%FHBR D  S %M(%I)=$TR($TR($C(%C),%THB,%TEN),%TES2,%TES1) D W(%I) S %TOP=$O(%M(900),-1)
 ..F %II=%TOP+1:-1:%I S:$D(%M(%II-1)) %M(%II)=%M(%II-1)
 ;
VV1 S %M(%I)=$$SMB^%S2ERG(%C)
 ;;I %C'<65,%C'=149 S %M(%I)=$TR($TR($C(%C),%THB,%TEN),%TES2,%TES1)
 ;;E  S %M(%I)=$TR($C(%C),%TES2,%TES1)
 D W(%C)
 S:%I>%TOP %TOP=%I D LEFT
 ;
WORD I $D(%L1WH("WORD")),$C(%C)'=" ",%X0=%X2,%I>1 D  ;-- PERENOS PO SLOVAM
 .N %I1,%I2,%I3,%OK S %I2=0,%OK=0
 .F %I1=%I-1:-1:1 S %I2=%I2+1 Q:%M(%I1)=" "  Q:%I2>(%X2-%X1)
 .I %M(%I1)=" ",%I*2-%I1-2'>%LS D
 ..F %I3=%I-1:-1:%I1+1 S %M(%I3+%I-%I1-1)=%M(%I3),%M(%I3)=" "
 ..S %TOP=$O(%M(900),-1),%I=%TOP+1 D P
 ..S %X0=%X2+1-(%I-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%I-.1\(%X2-%X1+1))
 ;
LBG I $D(%ZMSL("LB","GL")),%CVET W *27,7 D LB($$M2S("%M")) W *27,8
 Q
CYC2 S %C=$A(%C) G 13
CLEAR ;
 I $D(%L1WH("CVB")) S %L1RBCL=%CV(%L1WH("CVB"))
 I $D(%L1WH("RB")) D TV^%L1RBUA(%Y1,%X1,%Y2+2,%X2+2)
 F %II=%Y1:1:%Y2 S %XX=%X1,%YY=%II X %POSIC W $J("",%X2-%X1+1)
 I $D(%L1WH("LI")) W %LIGHT1
 I $L($G(%L1WH("CVF"))),$D(%CV(%L1WH("CVF"))) W %CV(%L1WH("CVF"))
 Q
P ;
 S %XX=%X2,%YY=%Y1 W %HBR
 S %TOP=$O(%M(900),-1)
 F %II=1:1:%TOP X %POSIC S:'$D(%M(%II)) %M(%II)=" " W $$W^%L1C(%M(%II)) Q:%XX=%X1&(%YY=%Y2)  S:%XX=%X1 %YY=%YY+1 S %XX=$S(%XX=%X1:%X2,1:%XX-1)
 Q
DELG ;
 N %I,%J,%II,%FRAZA,%CHAST S %FRAZA=""
 F %II=1:1 Q:'$D(%M(%II))  S %FRAZA=%M(%II)_%FRAZA
 D DLG^%L1FRM(%FRAZA,%X2-%X1+1)
 K %M S %II=0
 F %I=1:1 Q:'$D(%CHAST(1,%I))  D
 .N A S A=$J($$SPR^%L1FRM(%CHAST(1,%I)),%X2-%X1+1)
 .F %J=$L(A):-1:1  S %II=%II+1,%M(%II)=$E(A,%J)
 S %TOP=$O(%M(900),-1)
 Q
LEFT ;
 ;Q:%X0=%X1&(%Y0=%Y2)!(%I=%LS)!(%I>%TOP)
 Q:%I'<%LS  Q:$O(%M(999),-1)'<%LS
 I %X0=%X1 S %X0=%X2,%Y0=%Y0+1
 E  S %X0=%X0-1
 S %I=%I+1 S:'$D(%M(%I)) %M(%I)=" "
 S %FHBR=1,%HBRY="" Q
RIGHT ;
 Q:%X0=%X2&(%Y0=%Y1)!(%I=1)
 I %X0=%X2 S %X0=%X1,%Y0=%Y0-1
 E  S %X0=%X0+1
 S %I=%I-1
 Q
LEVO ;
 D LEFT G POZ
PRAVO ;
 D RIGHT
 G POZ
HOME S %X0=%X2,%Y0=%Y1,%I=1 G POZ
ENDS ;
 S %TOP=$O(%M(900),-1)
 S %Y0=%Y2,%I=%TOP+1 S:%I>%LS %I=%LS
 S %X0=%X2-(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1))
 S %FHBR=1,%HBRY=""
 G POZ
VVERX ;
 I %Y0=%Y1 S %X0=%X2,%I=1 G POZ
 S %Y0=%Y0-1,%I=%I-(%X2-%X1+1)
 G POZ
VNIZ ;
 I $D(%ZMSL("LB")),$D(%L1LB) D  K %L1LB G:$G(%L3VN)'="" END G POZ
 .W *27,7 N %XXZMS,%YYZMS S %XXZMS=%XX,%YYZMS=%YY
 .K %L1("VIEW"),%L3VN S %L3VNOHZG="" D TV^%L1LB
 .D RS I $G(%ZMSL("LB","START"))<2 K %ZMSL("LB","START")
 .I $G(%L3VN)'="" S %S=$$HBR^%L1FRM($G(%L1LB(%L3VN))_" "_$S($D(%ZMSL("LB","START")):$E(%S,$L(%S)-%ZMSL("LB","START")+1,400),1:""),%LS)
 .S %S=$$SPL^%L1FRM(%S) D S2M(%S)
 .K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC
 .S $X=%XX,$Y=%YY D P S %I=%LS
 ;
 S %TOP=$O(%M(900),-1)
 I %Y0=%Y2!(%I+(%X2-%X1+1)>%TOP&'$D(%L1WH("ESC"))) S %I=%TOP+1 S:%I>%LS %I=%LS S %X0=%X2-(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) G POZ
 ;;I %I+(%X0-%X1+1)>%TOP,$D(%L1WH("ESC")) S %I0=%I,%I=%I+%X0-%X1+1 S:%I>%LS %I=%LS D  S %X0=%X2+1-(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) G POZ
 .S %TOP=%I
 .N %II F %II=%I0:1:%TOP S:'$D(%M(%II)) %M(%II)=" "
 I %I+(%X0-%X1+1)>%TOP,$D(%L1WH("ESC")) S %I0=%I,%I=%I+%X0-%X1+1 S:%I>%LS %I=%LS D  S %X0=%X2,%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) G POZ
 .S %TOP=%I
 .N %II F %II=%I0:1:%TOP S:'$D(%M(%II)) %M(%II)=" "
 ;
 I %I+(%X2-%X1+1)>%TOP G ENDS
 .S %TOP=%I
 .N %II F %II=%I0:1:%TOP S:'$D(%M(%II)) %M(%II)=" "
 ;
 S %Y0=%Y0+1,%I=%I+(%X2-%X1+1)
 G POZ
DEL G:%TOP=0 POZ
 S %TOP=$O(%M(900),-1)
 F %II=%I:1:%TOP-1 S %M(%II)=$G(%M(%II+1)," ")
 F %II=%TOP:1 Q:'$D(%M(%II))  K %M(%II)
 S %TOP=%TOP-1
 I %I-1>%TOP D RIGHT S %XX=%X0,%YY=%Y0 X %POSIC W " " G POZ
 D CLEAR,P
 G POZ
CHISTS G:%I=0 POZ S %TOP=%I-1 F %II=%TOP:1 Q:'$D(%M(%II))  K %M(%II)
 D CLEAR,P G POZ
LIMEND K %ZMSL
END I $D(%L1WH("WORD")) D DELG,P
 S %S="" S %I=1 F %II=%TOP:-1:1 S $E(%S,%I)=$G(%M(%II)) S %I=%I+1
 S %S=$$SPL^%L1FRM(%S)
END1 I $D(%ECHO) U $P:(ECHO:WRAP)
 D RS
 X %XCL K CIST,%LS,%L1WH,%L1GET,%ZMSL Q
DELAY Q  F %II=1:1:200
 Q
M2S(M) ;
 N %S,%I,%II
 S %S="" S %I=1 F %II=$O(@M@(999),-1):-1:1 Q:'$D(@M@(%II))  S $E(%S,%I)=@M@(%II) S %I=%I+1
 S %S=$$SPL^%L1FRM(%S)
 Q %S
S2M(%S) ;
 K %M S %I=1 F %II=$L(%S):-1:1 S %M(%I)=$E(%S,%II) S %I=%I+1
 S %TOP=$L(%S)
 Q
ESC R *A1:0 R *A1:0 S %TO="END" G END
PGUP S %TO="PGUP" G END
PGDN S %TO="PGDW" G END
INS I $D(%INS) K %INS S %SAY=" OVERLAY " X %XMSGV G POZ
 S %INS="" S %SAY=" INSERT " X %XMSGV G POZ
FIND S %TO="F8" G END
COR S %TO="F7" G END
SAVE S %TO="F9" G END
REST S %TO="F10" G END
ADDL S %TO="F5" D ADDL^%L1ZMSL G END
DELL S %TO="F6" G END
FINDS S %TO="FINDS" G END
MOD S %TO="DEL" D DELAY R *C1:0 G END
PGLN S %TO="PGLN" D DELAY R *%C1:0 G END
HELP S %TO="HELP" D DELAY R *%C1:0 G END
IND S %TO="F4" D DELAY R *%C1:0 G END
CHISTE S %TO="F2" D DELAY R *%C1:0 G END
PGRG S %TO="PGRG" D DELAY R *%C1:0 G END
BEGF S %TO="BEGF" D DELAY R *%C1:0 G END
ENDF S %TO="ENDF" D DELAY R *%C1:0
 I $D(^r($J)),$G(%SCRN)["P1HZ" D 1^P1POP ;-- PTICHAT MEGIRA
 G END
FNS ;
 I $L(%S)=0 S %JJ=0 Q
 F %JJ=1:1:$L(%S)+1 Q:$E(%S,%JJ)'=" "
 Q
SV ;
 I %TYPCRT["PC" s l1zms="" D GET^%VIDEO("l1zms",0,0,80,24,2) Q
 ;;I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;4$v" S l1zms=""
 Q
RS ;
 ;
 I %TYPCRT["PC" D PUT^%VIDEO("l1zms",0,0,80,24,2) K l1zms Q
 ;;I $E(%TYPCRT,1,3)="VT5",%CVET W $C(27,91),";;;;4;;;$v" K l1zms Q
 Q
LB(%S) ;
 N %TXT S %TXT=" "_$$SPL^%L1FRM(%S)
 I $D(%ZMSL("LB","NOTR")) D
 .N %I F %I=1:1:$L(%S) Q:%ZMSL("LB","NOTR")'[$E(%S,$L(%S)+1-%I)
 .I %I>$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=%I
 I $L(%TXT)-1<$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=$L(%TXT)
 I '$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=1
 N %J,%J0 S %J0=%ZMSL("LB","START") F %J=%J0-1:-1:1 Q:$A($E(%TXT,$L(%TXT)-%J))<96!($A($E(%TXT,$L(%TXT)-%J))>122)  S %ZMSL("LB","START")=%J
 I $G(%ZMSL("LB","START")) S %TXT=$E(%TXT,1,$L(%TXT)+1-%ZMSL("LB","START"))
 S %TXT=$$SPA^%L1FRM(%TXT)
 Q:%TXT=""
 I $D(%ZMSL("LB","HELP")) W *27,"[24;30H",$$^%L1HB(%ZMSL("LB","HELP"))
 D ^%L1LB(%TXT,%ZMSL("LB","GL"),$G(%ZMSL("LB","PR")))
 Q
TAB ;
 N %J,%J1,%TOP
 S %TOP=$O(%M(999),-1)
 F %J=%I-($G(%M(%I))=" "):-1:1 Q:'$D(%M(%J))  Q:" +,;:-="[%M(%J)
 I %J<1 S %J=1
 S %J1=%J I $D(%M(%J)) S %J1=%J+(" +,;:-="[%M(%J))
 S %WORD="" F %J2=%J1:1:%TOP Q:'$D(%M(%J2))  Q:" +,;:-="[%M(%J2)  S %WORD=%WORD_%M(%J2)
 I $L(%WORD),$D(^word(%WORD)) D  G POZ
 .S %WORD1=^(%WORD)
 .S %S="" F %J3=1:1:%J1-1 S %S=%M(%J3)_%S
 .S %S=" "_%WORD1_%S
 .F %J3=%J2+1:1:%TOP S %S=%M(%J3)_%S
 .D S2M(%S) D P
 W *7 G POZ
ABC(SMB) ;
 I SMB>31&(SMB<123) Q 1
 I SMB>127&(SMB<155) Q 1
 Q 0
W(%C) ;;W $S($D(%HBRY):$TR($TR(%M(%I),%TES1,%TES2),%TEN,%THB),1:%M(%I))
 N %PR S %PR=""
 I $D(%HBRY) S %PR="I"
 W $$WC^%S2ERG($C(%C),%PR)
 Q
 
 
 
 
 
 

%L1WH0
%L1WH ; WINDOW HEBRY ; %X1,%Y1,%X2,%Y2 - COORD WINDOW,%LS - LENGTH,%INV -INVERS [ 18.10.06 13:39 ] [ 02.05.06 10:01 ] [ 01.05.06 21:17 ]
 ;%L1WH("CVB") - BACKGRAUND
 ;%L1WH("CVF") - FOREGRAUND
 ;%L1WH("RB")  -  RIBUA
 ; %X0,%Y0 -
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%S,%X1,%X2,%Y1,%Y2,%L1WH,%L1GET,%LS,%INV,CIST,%TO) D ^%L1C
 I $D(%L1WH)#2,'$D(%L1WH("CVF")) S %L1WH("CVF")="YF" W %LIGHT1
 U $P:(NOECHO:NOWRAP) ;U $P:(NOECHO:NOWRAP)
 S:'$D(%S) %S="" S %TO="",%INS="",%FHBR=1 W %HBR
 S %L1NMB("ALB")=1,%BEG=1
 S %MOUSE=$$INIT^%L2MOUSE K %screen
 N %M,%I,%II,%XX,%YY,%C,%C1,%C2,%TOP,%X0,%Y0,%HBRY,A1
 S:'$D(%X1) %X1=0 S:'$D(%X2) %X2=78 S:'$D(%Y1) %Y1=20 S:'$D(%Y2) %Y2=23
 S:%X1<0 %X1=0 S:%X1>78 %X1=78
 S:%Y1<0 %Y1=0 S:%Y1>23 %Y1=23
 S:%X2<1 %X2=1 S:%X2>79 %X2=79
 S:%Y2<1 %Y2=1 S:%Y2>24 %Y2=24
 S:%X2<%X1 %X2=%X1
 S:%Y2<%Y1 %Y2=%Y1
 S %HBRY=""
 S:'$D(%LS) %LS=(%X2-%X1+1)*(%Y2-%Y1+1)
 I %LS>255 S %LS=255
 S %S=$E(%S,1,%LS)
 S %I=1 F %II=$L(%S):-1:1 S %M(%I)=$E(%S,%II) S %I=%I+1
 S %TOP=$L(%S)
 S %I=1 I $D(%INV) W %CLI
 D CLEAR
 D PC G:$D(%L1WH)#2!$D(%L1GET) END1
 S %X0=%X2,%Y0=%Y1
 I %MOUSE,%TOP>1 G ENDS
POZ ;
 ;W %vverxe,%chists," %X0=",%X0,"  %Y0=",%Y0," %I=",%I," %X1=",%X1,"  %Y1=",%Y1,"  %X2=",%X2,"  %Y2=",%Y2,"  %LS=",%LS,"  %TOP=",%TOP
 U $P:(NOECHO:NOWRAP)
 S %XX=%X0,%YY=%Y0 X %POSIC
 I $G(%PRKB) G RC
 I %MOUSE,'$$KB^%L2MOUSE,'$D(%L1NMB("NO")) D  S %C=$$^%L1NMB("") S:%C="ENTER"!(%C="")!(%C=$C(10)) %C=$C(13) G:$A(%C)<65!($A(%C)>90) CYC2 G:$T(@%C)'="" @%C G CYC2
 .S %L1NMB("ZY")=%Y1 K %PRKB
 ;
RC R *%C:1 E  K %PRKB G POZ
13 S %XX=%X0,%YY=%Y0 X %POSIC S %BEG=0
 G:%C=13&'$D(%L1WH("ESC")) END
 I %C=13,$D(%L1WH("ESC")) G VNIZ
 I %C=61,$D(%L1WH("=")) G END
 I %C=25 G ESC
 I %C=46 S %C=149
READ G:%TYPCRT="PC" 27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
27 I %C=27 D DELAY R:'$D(%FLL) *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL) *%C2:%WAIT S:%C2>0 C=%C1_%C2
 .R:'$D(%FLL) *%C3:%WAIT S:%C3>0 C=C_%C3
 .R:'$D(%FLL) *%C4:%WAIT S:%C4>0 C=C_%C4
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 I $$ABC(%C) D VV G POZ
 G POZ
VV I $D(CIST),CIST'[$C(%C) W *7 Q
 I %C>47&(%C<58)!(%C>64&(%C<91)),%FHBR S %FHBR=0,%INS="" W %ENG
 I %C>95&(%C<123)!((%C>127)&(%C<155)),'%FHBR S %FHBR=1,%INS="" W %HBR
 I $D(%INS),%I'>%TOP!'%FHBR D  D PC S %XX=%X0,%YY=%Y0 X %POSIC Q:'%FHBR  Q:%I'>%TOP  G WORD
 .I %I'<%LS&($O(%M(99999),-1)'<%LS) Q
 .I %FHBR D  S %M(%I)=" ",%TOP=%TOP+1 S %M(%I)=$TR($TR($C(%C),%THB,%TEN),%TES2,%TES1) D W(%I) S:%I>%TOP %TOP=%I D LEFT
 ..F %II=%TOP+1:-1:%I+1 S %M(%II)=%M(%II-1)
 .I '%FHBR D  S %M(%I)=$TR($TR($C(%C),%THB,%TEN),%TES2,%TES1) D W(%I) S %TOP=$O(%M(900),-1)
 ..F %II=%TOP+1:-1:%I S:$D(%M(%II-1)) %M(%II)=%M(%II-1)
 ;
 I %C'<65,%C'=149 S %M(%I)=$TR($TR($C(%C),%THB,%TEN),%TES2,%TES1)
 E  S %M(%I)=$TR($C(%C),%TES2,%TES1)
 D W(%I)
 S:%I>%TOP %TOP=%I D LEFT
WORD I $D(%L1WH("WORD")),$C(%C)'=" ",%X0=%X2,%I>1 D
 .N %I1,%I2,%I3,%OK S %I2=0,%OK=0
 .F %I1=%I-1:-1:1 S %I2=%I2+1 Q:%M(%I1)=" "  Q:%I2>(%X2-%X1)
 .I %M(%I1)=" ",%I*2-%I1-2'>%LS D
 ..F %I3=%I-1:-1:%I1+1 S %M(%I3+%I-%I1-1)=%M(%I3),%M(%I3)=" "
 ..S %TOP=$O(%M(900),-1),%I=%TOP+1 D PC
 ..S %X0=%X2+1-(%I-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%I-.1\(%X2-%X1+1))
 Q
CYC2 S %C=$A(%C) G 13
CLEAR ;
 I $D(%L1WH("CVB")) S %L1RBCL=%CV(%L1WH("CVB"))
 I $D(%L1WH("RB")) D TV^%L1RBUA(%Y1,%X1,%Y2+2,%X2+2)
 F %II=%Y1:1:%Y2 S %XX=%X1,%YY=%II X %POSIC W $J("",%X2-%X1+1)
 I $D(%L1WH("LI")) W %LIGHT1
 I $D(%L1WH("CVF")),$D(%CV(%L1WH("CVF"))) W %CV(%L1WH("CVF"))
 Q
PC ;
 S %XX=%X2,%YY=%Y1 W %HBR
 S %TOP=$O(%M(900),-1)
 F %II=1:1:%TOP X %POSIC S:'$D(%M(%II)) %M(%II)=" " D W(%II) Q:%XX=%X1&(%YY=%Y2)  S:%XX=%X1 %YY=%YY+1 S %XX=$S(%XX=%X1:%X2,1:%XX-1)
 I '%FHBR W %ENG
 Q
DELG ;
 N %I,%J,%II,%FRAZA,%CHAST S %FRAZA=""
 F %II=1:1 Q:'$D(%M(%II))  S %FRAZA=%M(%II)_%FRAZA
 D DLG^%L1FRM(%FRAZA,%X2-%X1+1)
 K %M S %II=0
 F %I=1:1 Q:'$D(%CHAST(1,%I))  D
 .N A S A=$J($$SPR^%L1FRM(%CHAST(1,%I)),%X2-%X1+1)
 .F %J=$L(A):-1:1  S %II=%II+1,%M(%II)=$E(A,%J)
 S %TOP=$O(%M(900),-1)
 Q
LEFT ;
 ;Q:%X0=%X1&(%Y0=%Y2)!(%I=%LS)!(%I>%TOP)
 Q:%I=%LS
 I %X0=%X1 S %X0=%X2,%Y0=%Y0+1
 E  S %X0=%X0-1
 S %I=%I+1 S:'$D(%M(%I)) %M(%I)=" "
 S %FHBR=1 W %HBR Q
RIGHT ;
 Q:%X0=%X2&(%Y0=%Y1)!(%I=1)
 I %X0=%X2 S %X0=%X1,%Y0=%Y0-1
 E  S %X0=%X0+1
 S %I=%I-1
 Q
LEVO ;
 D LEFT G POZ
PRAVO ;
 D RIGHT
 G POZ
HOME S %X0=%X2,%Y0=%Y1,%I=1 G POZ
ENDS ;
 S %TOP=$O(%M(900),-1)
 S %Y0=%Y2,%I=%TOP+1 S:%I>%LS %I=%LS
 S %X0=%X2-(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1))
 S %FHBR=1 W %HBR
 G POZ
VVERX ;
 I %Y0=%Y1 S %X0=%X2,%I=1 G POZ
 S %Y0=%Y0-1,%I=%I-(%X2-%X1+1)
 G POZ
VNIZ ;
 S %TOP=$O(%M(900),-1)
 I %Y0=%Y2!(%I+(%X2-%X1+1)>%TOP&'$D(%L1WH("ESC"))) S %I=%TOP+1 S:%I>%LS %I=%LS S %X0=%X2-(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) G POZ
 ;;I %I+(%X0-%X1+1)>%TOP,$D(%L1WH("ESC")) S %I0=%I,%I=%I+%X0-%X1+1 S:%I>%LS %I=%LS D  S %X0=%X2+1-(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) G POZ
 .S %TOP=%I
 .N %II F %II=%I0:1:%TOP S:'$D(%M(%II)) %M(%II)=" "
 I %I+(%X0-%X1+1)>%TOP,$D(%L1WH("ESC")) S %I0=%I,%I=%I+%X0-%X1+1 S:%I>%LS %I=%LS D  S %X0=%X2,%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) G POZ
 .S %TOP=%I
 .N %II F %II=%I0:1:%TOP S:'$D(%M(%II)) %M(%II)=" "
 ;
 I %I+(%X2-%X1+1)>%TOP G ENDS
 .S %TOP=%I
 .N %II F %II=%I0:1:%TOP S:'$D(%M(%II)) %M(%II)=" "
 ;
 S %Y0=%Y0+1,%I=%I+(%X2-%X1+1)
 G POZ
DEL G:%TOP=0 POZ
 S %TOP=$O(%M(900),-1)
 F %II=%I:1:%TOP-1 S %M(%II)=$G(%M(%II+1)," ")
 F %II=%TOP:1 Q:'$D(%M(%II))  K %M(%II)
 S %TOP=%TOP-1
 I %I-1>%TOP D RIGHT S %XX=%X0,%YY=%Y0 X %POSIC W " " G POZ
 D CLEAR,PC
 G POZ
CHISTS G:%I=0 POZ S %TOP=%I-1 F %II=%TOP:1 Q:'$D(%M(%II))  K %M(%II)
 D CLEAR,PC G POZ
END I $D(%L1WH("WORD")) D DELG,PC
 S %S="" S %I=1 F %II=%TOP:-1:1 S $E(%S,%I)=%M(%II) S %I=%I+1
 S %S=$$SPL^%L1FRM(%S)
END1 D PUT^%L1ZMS
 I $D(%ECHO) U $P:(ECHO:WRAP)
 X %XCL K CIST,%LS,%L1WH,%L1GET Q
DELAY Q  F %II=1:1:200
 Q
ESC R *A1:0 R *A1:0 S %TO="END" G END
PGUP S %TO="PGUP" G END
PGDN S %TO="PGDW" G END
INS I $D(%INS) K %INS S %SAY=" OVERLAY " X %XMSGV G POZ
 S %INS="" S %SAY=" INSERT " X %XMSGV G POZ
FIND S %TO="F8" G END
COR S %TO="F7" G END
SAVE S %TO="F9" G END
ADDL S %TO="F5" D ADDL^%L1ZMSL G END
DELL S %TO="F6" G END
SHIFT I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=2,%NMB=9 G SHIFT1
 I $G(%L1NMB("ALB"))=2 S %L1NMB("ALB")=1,%HBRY="",%NMB=9 G SHIFT1
 I $G(%L1NMB("ALB"))=1 K %L1NMB("ALB") S %NMB=5 G SHIFT1
SHIFT1 D PUT^%L1ZMS,PC S %XX=%X0,%YY=%Y0 G POZ
 ;
W(%I) W $S($D(%HBRY):$TR($TR(%M(%I),%TES1,%TES2),%TEN,%THB),1:%M(%I))
 Q
ABC(SMB) ;
 I SMB>31&(SMB<123) Q 1
 I SMB>127&(SMB<155) Q 1
 Q 0

%L1WND
%L1WND(WND) ; [ 28.04.00  6:09 PM ] [ 11/06/99  2:54 PM ] [
 C WND
 O WND:(0::::::::::256*23+80:256*23+80:257)
COM S $ZT="ZG "_$ZL_":ER^%L1WND" I WND'=1 F  U WND W !,$I,">> " R A Q:A="."  W ! X A
 Q
ER W !,$ZS H 2
 G COM

%L1WP
%L1WP ; WORD PROCESSOR             [ 07.02.06 08:44 ] [ 13.01.06 11:19 ] [ 04.12.05 15:21 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
 K  D ^%L1C S GL="^SC"
 ; S TS=$C(68) F J=69:1:94 S TS=TS_$C(J)
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 ; S TS1=$C(160) F J=161:1:186 S TS1=TS1_$C(J)
 S TSS=$C(128) F J=129:1:154 S TSS=TSS_$C(J)
 S MM(1)=" d ` i v i "
 S MM(2)="ycg jnqn"
 S MM(3)="miiw jnqn"
 S MM(4)="jnqn zqtcd / zbvd"
 S MM(5)="DOS-l dwzrd"
 S MM(6)="DOS-n xefgy"
 S MM(7)="miknqn lehia"
 S MAC="MM" D ^%L2MENU Q:%I=1
 D @("M"_%I) G %L1WP Q
 ;
M2 ;
 N HADASH S HADASH="" G M3
 ;
READ K U,R,L,Y1,X1,U1,SAVE S %RMAX=79,%PRHBR=1,RL=79
 ;;S TXT=$S(%TYPCRT["VT":" CTRL+? - dxfr ",1:" CTRL+F1 - dxfr ")
 I '%ENGLISH D ^%S2ERG1
 I %ENGLISH D ^%S2ERG
 K %Q S %Q("Z")="xenyl",%Q("Y")=23,%Q("X")=10 D ^%S2ASK Q:'YES
 I $G(SHEM)="" S SHEM=$P($G(@GL@(KOD)),"\")
 S SAVE="" D ZK K SAVE
 D MAS
 K @GL@(KOD) F I=1:1 Q:'$D(^S000($P,I))  S @GL@(KOD,I)=^S000($P,I),@GL@(KOD,I,"%TOP")=$G(^S000($P,I,"%TOP"))
 N N,I S N="",I=0
 F  S N=$O(MAS(N)) Q:N=""  S I=I+1,@GL@(KOD,"MAS",N)=$G(%MBS("O",I))
 S @GL@(KOD)=SHEM_"\"_$H Q
 ;
MAS K MAS
 N I,N,%MBS
 I $D(MSGVIEW) D  Q
 .K MAS
 .S N="" F  S N=$O(@GL@(KOD,"OTB",N)) Q:N=""  S MAS(N)=$G(^(N))
 ;
 F I=1:1 Q:'$D(@GL@(KOD,I))  D
 .S A=$G(^(I)) F J=1:1:$L(A)  I $E(A,J)="&",$E(A,J+1)?1N D
 ..S MAS(+$TR($E(A,J+1,J+2)," ",""))=""
 K %MBS S N="",I=0 F  S N=$O(MAS(N)) Q:N=""  D
 .S I=I+1
 .I $D(HZG) D
 ..S %MBS("Z",I)=" "_$G(@GL@(KOD,"MAS",N),N_" oezp")_" cilwdl `p"
 ..S %MBS("O",I)=$G(@GL@(KOD,"OTB",N))
 .I '$D(HZG) S %MBS("Z",I)=" "_N_" oezp cilwdl `p",%MBS("O",I)=$G(@GL@(KOD,"MAS",N))
 .S %MBS("RGS",I)="H"
 S %MBS("DZ")=20 D ^%S3BST
 S N="",I=0 F  S N=$O(MAS(N)) Q:N=""  S I=I+1,MAS(N)=$G(%MBS("O",I)) D
 .I $D(HZG) S @GL@(KOD,"OTB",N)=MAS(N)
 Q
 ;
M3 ;
 K HZG D ZK  Q:%S=""!($G(%TO)="END")
 I $D(@GL@(KOD,"VIEW")) S %GET=" <ENTER> . cala dbvdl dfd uaew " D N^%L1GET Q
 D RSC
 G READ
 ;
M4 D KAT Q:FLAG'=""  N HZG
M40 S SHEM=$P($G(@GL@(KOD)),"\")
 ;;K SHEM S %GET="jnqn my++20,40,HH,,R#"_$G(@GL@(KOD))_"++30,H,I" D ^%L1GET Q:$G(%TO)="END"  S (SHEM,@GL@(KOD))=%S
 S HZG="" D MAS I $D(MSGVIEW) S USTR=0,GWUL=20,KAMA=0 G KAMA
M41 S %GETIN="",%GET=" 3 - zqtcn , 0 - jqn " D N^%L1GET Q:$G(%TO)="END"
 S:%S="" %S=0 I '%S X %chista
 S USTR=%S I USTR S %DEV="USTR" D ^%L1LPT Q:%EROP
 I $$^%L1DISP(USTR) S %GET=" : miwzrd dnk " S %GETIN=1 D N^%L1GET K %GETIN G:$G(%TO)="END"!(%S="") M41 S KAMA=%S
 U USTR S GWUL=$S(USTR:57,1:20)
KAMA ;
 S NL=1 D KOT S ENDH=0
 S I1=1
MET4 S J=0 K ^sc($P)
 F I=I1:1 Q:'$D(@GL@(KOD,I))  S J=J+1,^sc($P,KOD,J)=$TR(@GL@(KOD,I),TSS,TS0) Q:'(I+1#GWUL)
 S %L2("GLOB")="^sc($P)"
 S %L2("!")="",%L2("$")=$C(255)
 S %L2("U")=USTR,%L2("COD")=KOD,%L2BEG=1
 I USTR'=0,USTR'=$P,USTR<51 S USTR=3
 S %L1SCPC(1)=""
 D ^%L2SHAP S I1=I+1
 ;;F I=I1:1 Q:'$D(@GL@(KOD,I))  W !,^(I) I '(I+1#GWUL) D PER Q:ENDH  D KOT
 I $D(@GL@(KOD,I)) D PER D:'ENDH KOT G MET4:'ENDH,SOF
 I $G(KAMA)>0 S KAMA=KAMA-1 I KAMA W # G KAMA
SOF I '$$^%L1DISP(USTR) D CLOSE^%L1LPT
 K ^sc($P)
 U 0 S %GET=" <ENTER> . dniizqd dbvd#1" D N^%L1GET
 Q
KOT ;
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 I $$^%L1DISP(USTR) X %chista N TSS S TSS=TS0
 W:$$^%L1DISP(USTR) %CLI W:NL>1 NL
 I '$$^%L1DISP(USTR) W $TR(" sc",TS0,TSS),!
 I $$^%L1DISP(USTR) X %XCL W " sc"
 Q
PER S NL=NL+1 I '$$^%L1DISP(USTR) W # Q
 R !," <.> - dbvd miiql , <ENTER> - jiyndl ",*Y
 I "u.?/"[$C(Y),Y'=13 S ENDH=1 Q
 X %chista
 Q
 ;
M5 X %chista
 D KAT Q:FLAG'=""
 S %GET="99 - bivdl" D N^%L1GET I %S=99 D M41
 S %GET="(dixtiq llek) DOS-a uaew my++20,70,HH,,R#++20,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S SHEMD=%S
 I %S="?" D O13^%L1OS G M5
 I $$^%L1ZOS(10,SHEMD)>0 K %Q S %Q("Z")="xy`l . miiw uaew",%Q("Y")=10,%Q("X")=10 D ^%S2ASK G:'YES M5
 O SHEMD:(WRITE:NEWVERSION)
 I $ZC'=0 D OE G M5
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 U SHEMD F %I=1:1 Q:'$D(@GL@(KOD,%I))  W $TR(^(%I),TS0,TSS),!
 C SHEMD Q
 ;
M6 ;
 S %GET="(dixtiq llek) DOS-a uaew my++20,70,HH,,R#++20,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S SHEMD=%S
 I %S="?" D O13^%L1OS G M6
 I $$^%L1ZOS(10,SHEMD)>0 S %SAY=" miiw `l uaew " X %XMSGV(1) G M6
 D ZK Q:$G(KOD)=""!'$D(SHEM)
 O SHEMD:(REWIND:READONLY)
 I $ZC'=0 D OE G M6
 U SHEMD F %I=1:1 R A Q:$ZC'=0  S @GL@(KOD,%I)=$TR(A,TSS,TS0) I AIN S @GL@(KOD,%I)=$$AAA(@GL@(KOD,%I))
 I $ZC>0 D TE G M6
 C SHEMD Q
 ;
M7 X %chista D KAT Q:FLAG'=""
 S %GET="99 - "_KOD_" jnqn lehia xey`l" D N^%L1GET
 G:%S'=99 M7 K @GL@(KOD)
 G M7
 ;
M8 ; -- E-MAIL
  ;;S AIN=1 D M6 K AIN ;; EINSHTEIN
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S MRK=+$$^%L1MRK("")
 S MAC="^MSGSEND("_MRK_")"
 X %chista
 S %L1("EU")=2
 S %L1("BE")=6
 S %L1("REV")=""
 S %L1("T1")="  jix`z  |      drced xe`z     | drced cew"
 S %L1("TXT1")="$$^%L1DC($P(%NXS,""\"",2),1)\/$P(%NXS,""\"")\/%NXN"
 S %L1("DO")="S KOD=INDEX,MSGVIEW="""",GL=""^[^UCI(""MGG"")]MSGSEND(MRK)"" D M40^%L1WP"
 S %L1("DO","MRK")=MRK
 D ^%L1NU
 Q
 ;
KAT ;
 K %L1 S MAC=GL
 S %L1("BE")=6,%L1("EU")=1
 S %L1("TXT1")="$$^%L1DC($P(%NXS,""\"",2),1)<>10\/$P(%NXS,""\"",1)<>30\/%NXN<>10"
 S %L1("REV")=""
 D ^%L1NU Q:FLAG'=""
 S KOD=INDEX,SHEM=$G(@MAC)
 Q
RSC K ^S000($P)
 F I=1:1 Q:'$D(@GL@(KOD,I))  D:'+$G(@GL@(KOD,I,"%TOP"))  S ^S000($P,I)=@GL@(KOD,I),^S000($P,I,"%TOP")=$G(@GL@(KOD,I,"%TOP"))
 .S SS=@GL@(KOD,I) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 .S @GL@(KOD,I,"%TOP")=II-($E(SS,II)'=" ")
 Q
TE W *7,!,"TRANSFER ERROR $ZC=",$ZC Q
OE W *7,"*** OPEN ERROR ! $ZC=",$ZC Q
ZK X %chista S %GET="jnqn cew++20,70,HH,,R#"_$G(KOD)_"++8,E,I" D ^%L1GET
 S KOD=%S I KOD="*"!($G(%TO)="F7") D KAT G ZK
 Q:%S=""!($G(%TO)="END")
 I KOD?.P S %SAY=" d ` i b y " X %XMSGV W *7 H 2 G ZK
 I $D(HADASH),$D(SAVE),$D(@GL@(KOD)) S %SAY=" ! miiw jnqn " X %XMSGV W *7 H 2 G ZK
 S KOD=%S I '$D(SAVE)!($G(SHEM)="") S SHEM=$P($G(@GL@(KOD)),"\")
 S %GET="jnqn my++20,40,HH,,R#"_SHEM_"++30,H,I" D ^%L1GET S SHEM=%S
 Q
AAA(IN) ;
  N ENG,TIP,TIPS,EE,SYM,KOD
  S (OUT,ENG)="",TIP="H" Q:IN="" OUT
  F EE=1:1:$L(IN) S SYM=$E(IN,EE),KOD=$A(SYM) D
  .I KOD<32!(KOD>154) Q  ; SPEC SIMB
  .I KOD<48!(KOD>57&(KOD<65))!(KOD>90&(KOD<96))!(KOD>122&(KOD<128)) S TIPS="P"
  .I KOD>47&(KOD<58)!(KOD>64&(KOD<91)) S TIPS="E"
  .I KOD=32!(KOD>95&(KOD<123))!(KOD>127&(KOD<155)) S TIPS="H"
  .;I KOD<48!(KOD>57&(KOD<65))!(KOD>90&(KOD<123)) S OUT=SYM_ENG_OUT S ENG=""
  .S TIP=$S(TIPS="P":TIP,1:TIPS)
  .I TIP="H" S OUT=SYM_ENG_OUT S ENG=""
  .E  S ENG=ENG_SYM
  S OUT=ENG_OUT
  Q OUT

%L1X
%L1X ;  [ 20.07.26 06:40 ] [ 28.03.26 05:28 ] [ 03.03.26 14:39 ] 
 N (MCOM,I000,%UPRCOD,%XMSG,%XMSGV,%XMSGN,%Z,%S2ERG,SYSMAN,%W1JSP)
 I $P'["/vc/2" K ^zcmd($P) ;;D ^%L1DEFWS
 D ^%L1C
 I $ZDIR'="/opt/appsrv/envs/corp/app/mumps/",$G(^W4RLD)=""!($$DIF^%L1TIME($H,$G(^W4RLD))>1200) D ^W4RLD
 ;;S ^%TYPCRT(%L3MYDVN)="VT510",^%CVET(%L3MYDVN)=1 D ^%L1C
 K %HBRY S %FLENG="" W %ENG x %chista
 ;;U 0 W *7 W !," IT'S OLD SYSTEM !" H 1
XX ;S $ZT="U $P ZP @$ZPOS W !! ZSHOW ""S"" B  ZG "_$ZL_":ER^%L1X"
 S GLD=$$^%L1GLD
 S $ZT="S zr=$R X ^ZT ZG "_$ZL_":XX^%L1X"
 I '$D(%POSIC)!('$D(%OPT)) D ^%L1C
 S (%PDS,%PDS1)=$P($$FUNC^%UCASE($P($zg,"/",$L($zg,"/"))),".")_" "_$$^%L1MRK_" "_$P($p,"/dev/",2)_" <"_%L3MYDVN_">>"
 I $D(^%L1X($P_">")) D
 .S (%PDS,%PDS1)=($zg_" "_$P($p,"/",3,6)_">>")
 I %CVET S %PDS=%LIGHT1_%CV("CF")_%PDS_%CCL
 U $p W !,%PDS S %S="" S %ECHO=""
VC W $C(27,91),"?25h" ;  CURSOR VISIBLE
 S:$Y>23 $Y=23
 U $p:(NOWRAP:NOECHO:NOESC)
 W *13,%PDS,%chists K %L1NMB
 ;;I $E(%TYPCRT,1,3)="VT5" W $C(27)," F"
 K %L1GET S %BE="E",%FLINS=1 K %INV,CIST S %TO=""
 S:'$D(%L1XLN) %LS=79-$L(%PDS1)
 W:$D(%L1XLN) !!!,%PDS,! ;;I $E(%TYPCRT,1,3)="VT5" W $C(17)
 I %TYPCRT["PC",$D(%FLENG) K %HBRY,%GETHB W %ENG
 K %HBRY,%FHBR D ^%ZMSL:'$D(%L1XLN),^%L1WE:$D(%L1XLN)
 I %S="",$G(%TO)="" K %L1XLN
 ;;I %TO="END" S %TO="UP" ; -- 08/03/19 
 G LL:%TO="UP",RGHT:%TO="DW",SV:%TO="F7",XX:%S="" S COM=%S
 G:(%S="."!(%S="u")!(%S="/")!(%S="Q")!(%S="q")!(%S="H")!(%S="i")!(%S="I")!(%S="h")!(%S="EXIT")!(%S="exit"))&$D(SYSMAN) END
 I %S="."!(%S="u")!(%S="/") W ! G END
 I (%S="Q")!(%S="q")!(%S="H")!(%S="i")!(%S="I")!(%S="h")!(%S="EXIT")!(%S="exit") W !! H
 I COM="=?" D  G:FLAG'="" VC S COM="="_INDEX
 .N %ECHO S %CLEAR=2 K %L1 S MAC="^%L1X",%L1("EU")=1,%L1("TXT")="S %L1NS(%I)=^(%NXN)_$J("""",8-$L(%NXN))_""<""_%NXN_"">""" D ^%L1NU
 I COM?1"=".E,$L(COM)>1 S COM=$E(COM,2,255) I $D(^%L1X(COM)) S %S=^%L1X(COM) G VC
 I COM=">" S ^%L1X($P_">")="" G XX
 I COM="<" K ^%L1X($P_">") G XX
 S:'$D(I000) I000=0
 F I000=1:1 Q:'$D(MCOM(I000))
 S MCOM(I000)=COM
XE U $p W ! D XEC G XX
ER ;
 I $ZS["CTRAP" Q
 I $L($P)<3 G SVER
 D SVER
 I $D(^ZT)=11 G ER1
 I $D(%NOASKEXIT) X %chista
 U $p X:$Y>23 %chista W *7,!,"  *** ERROR: " W $P($ZS,",",2)," ",$P($ZS,",",4) ;;W !,"$R=",$R,!
ER1 U $p D:'$D(%chista) ^%L1C R !!,"<>",%A X %chista W !,$ZS,!!?2,$TR($J("",50)," ","-"),!!,$J($TR($TR("!!! zkxrna d`iby",%TES1,%TES2),%TEN,%THB),34),! W %ENG
 W !,?2,$J($TR($TR("03-5225075 .lh ""cyx""-l dlwzd lr ricedl `p",%TES1,%TES2),%TEN,%THB),45)
 W !!?2,$TR($J("",50)," ","-"),!
 S %L1XER="" I $D(%NOASKEXIT) W !!,$J("<ENTER> PRESS",40) R KUKU H
 R !!,"EXIT ? (Y/N/V) <N> ",QQ
 I QQ="Y"!(QQ="y")!(QQ="h")!(QQ="k")!(QQ=".") Q
 I QQ="V" D W G XX
 D ^%L1C G XX
 ;
ERWB ;
 I $ZS["CTRAP" Q
 I $L($P)<3 G SVER
 D SVER
 U $p W !,"  *** ERROR: " W $P($ZS,",",2)," ",$P($ZS,",",4),!
 Q
 ;
SVER Q:$ZS["CTRAP"  N zp,ZR,PRT
 S PRT=$P I PRT?.P!(PRT=0) S PRT=0
 S zp=$O(^er(+$H,PRT,"")) I +zp=0 S zp=1000
 S (^ZE(PRT),^er(+$H,PRT,zp-1))=$P($ZS,",",2)_"~"_$P($ZS,",",3)_"~"_$H_"~"_$J
 Q
 ;-
XEC N I000,MCOM,%ECHO
 ;S:COM="i" COM="H"
 ;I COM="OFF"!(COM="off")!(COM="mkk") S %L1XOFF="" X %chista G EN01
 ;I COM="ON" K %L1XOFF G EN01
 I COM="CA"!(COM="ca")!(COM="ay") X %chista G EN01
 I COM="AW"!(COM="aw")!(COM="y'") D ^%L1DOS("aw","aw") X %chista G EN01
 I COM="LN"!(COM="ln")!(COM="jn") S %L1XLN="" G EN01
 I COM="KR" K %L1XLN G EN01
 ;;I COM="UCI"!(COM="uci")!(COM="eao") W $$^%L1ZU(0) G EN01
 I COM="EN"!(COM="wn") K %HBRY W %ENG S %FLENG="" G EN01
 I $E(COM,1,3)="HB(" D  X "W $$W^%L1C("_%TX_")" G EN01
 .S %TX=$E(COM,4,$L(COM)-1)
 ;
 I $E(COM,1,3)="HI(" D  X "W $$W^%L1C($$INVH^%L1FRM("_%TX_"))" G EN01
 .S %TX=$E(COM,4,$L(COM)-1)
 ;
 I COM="HB"!(COM="hb") K %FLENG S %HBRY="" W %HBR G EN01
 ;I COM="PS"!(COM="ps")!(COM="tc") D ^%PARTSIZE G EN01
 I COM="SS"!(COM="ss")!(COM="cc") D ^%L1SS G EN01
 I COM?1"R "."%"1a.e!(COM?1"r "."%"1a.e) D R G EN01
 I COM?1"E "."%"1a.e!(COM?1"e "."%"1a.e)!(COM="E")!(COM="e")!(COM="R")!(COM="r") D E G EN01
 I COM?1"EW "1a.e!(COM?1"ew "1a.e)!(COM="EW")!(COM="ew") D EW G EN01
 I COM?1"ED ".e!(COM="ED")!(COM="ed")!(COM?1"ed ".e) D ED G EN01
 I COM="FN"!(COM="fn")!(COM="nk") D ^%L1FND G EN01
 I (COM?1"VI "."%"1a.e!(COM?1"vi "."%"1a.e)) D  G EN01
 .zsy "vi "_$E(COM,4,200)
 I COM?1"E $"!(COM?1"e $")!(COM="E -")!(COM="e -") D E G EN01
 I COM?1"E ".E!(COM?1"e ".E) S COM="E" D E G EN01
 I COM="EB"!(COM="eb")!(COM="wp") D EB G EN01
 I $E(COM)="G"!($E(COM)="g"),$E(COM,2)=" "!($E(COM,2)="") D G G EN01
 I COM="GN"!(COM="gn")!(COM="rn") D GN G EN01
 I $E(COM,1,2)="GL"!($E(COM,1,2)="rj")!($E(COM,1,2)="gl"),$E(COM,3)=" "!($E(COM,3)="") D GL G EN01
 ;I COM="LG"!(COM="jr")!(COM="lg") D ^%LOGON Q
 ;I COM="RL"!(COM="xj")!(COM="rl") D RL G EN01
 I $E(COM)="V"!($E(COM)="v")!($E(COM)="d"),$E(COM,2)?." " D V G EN01
 I COM="RR"!(COM="xx")!(COM="rr") D RR G EN01
 I COM="RSE"!(COM="xcw")!(COM="rse") D ^%L1RSE G EN01
 I COM="RSJ"!(COM="xcg")!(COM="rsj") D JSP^%L1RSE G EN01
 I COM="RSA"!(COM="xcy")!(COM="rsa") D ^%L1RSAND G EN01
 I COM="GSE"!(COM="rcw")!(COM="gse") D ^%GSE G EN01
 I COM="FL"!(COM="fl")!(COM="kj") D ^%L1FL G EN01
 I COM="RS"!(COM="xc")!(COM="rs") D RS G EN01
 I COM="OS"!(COM="os") D ^%L1OS G EN01
 I COM="mc"!(COM="MC") ZSY "mc" G EN01
 I COM="RC"!(COM="xa")!(COM="rc") D RC G EN01
 I COM="RCJ"!(COM="xag")!(COM="rcj") D RCJ G EN01
 I COM="RD"!(COM="xb")!(COM="rd") D RD G EN01
 I COM="GR"!(COM="rx")!(COM="gr") D GR G EN01
 I COM="GS"!(COM="rc")!(COM="gs") D GS G EN01
 I COM="GC"!(COM="ra")!(COM="gs") D GC G EN01
 I COM="GD"!(COM="rb")!(COM="gd") D GD G EN01
 I COM="GDEL"!(COM="gdel") D ^%L1GDEL G EN01
 I COM="HF"!(COM="ik")!(COM="hf") D H G EN01
 I COM="RCMP"!(COM="rcmp") D ^%L1RCMP G EN01
 I COM="WW"!(COM="''")!(COM="ff") D W G EN01
 I COM="SF"!(COM="ck")!(COM="sf") D ^%L1SF G EN01
 I COM="CV"!(COM="cv")!(COM="ad") D ^%L1SFCV G EN01
 I COM="RM"!(COM="xv")!(COM="rm") D ^%L1RM G EN01
 I COM="GM"!(COM="rv")!(COM="gm") D ^%L1GM G EN01
 I COM="TG"!(COM="`r")!(COM="tg") D ^%L1TG G EN01
 I COM="ER"!(COM="wx")!(COM="er") D ^%L1ER G EN01
 I COM="ED"!(COM="wb")!(COM="ed") D ^%L1MSGED G EN01
 I COM="MS"!(COM="ms")!(COM="vc") D ^%L1MSG G EN01
 I COM="TR"!(COM="tr")!(COM="'x") D ^%L1TRP G EN01
 I COM="VB"!(COM="vb")!(COM="dp") D ^%S2VDB G EN01
 I COM="XM"!(COM="xm")!(COM="qv") D ^%L1TS,^%L1XM G EN01
 I COM="TB"!(COM="tb")!(COM="`p") D ^P1TBLAK G EN01
 I COM="TRG"!(COM="trg")!(COM="'xr") D  G EN01
 .N %L1TRG S %L1TRG="" D ^%L1TRP
 I COM="TCH"!(COM="tch")!(COM="`ai") D ^%L1TSTCH G EN01
 I COM="SP"!(COM="sp")!(COM="cti") D ^%FREECNT G EN01
 I COM="SRV"!(COM="srv") D ^%L2SRV G EN01
 I COM="NC"!(COM="nc")!(COM="na") D ^%L1DOS("nc","nc") G EN01
 I COM="DOS"!(COM="dos")!(COM="bmc") G:$$TERMINAL^%HOSTCMD("dosemu -k") EN01 G EN01
 I COM="tomstop"!(COM="TOMSTOP") G:$$TERMINAL^%HOSTCMD("tomstop") EN01 G EN01
 I COM="tomstart"!(COM="TOMSTART") G:$$TERMINAL^%HOSTCMD("tomstart") EN01 G EN01
 ;I COM="ASH"!(COM="ash")!(COM="yci") G:$$TERMINAL^%HOSTCMD("ASH") EN01 G EN01
 I $E(COM)="!" ZSY $E(COM,2,255) G EN01
 I COM=77 D ^%S277 G EN01
 I COM=88 D ^%S288 G EN01
 I COM="?" D  G EN01
 .W !,"********************************************",!
 .W !,"LG - D ^%LOGON"
 .W !,"R - ROUTINES FULL SCREEN EDITOR"
 .W !,"RS - D ^%RS"
 .W !,"RR - D ^%RR"
 .W !,"V - ROUTINE'S VIEW"
 .W !,"RD - D ^%RD"
 .W !,"RC - D ^%L1RCE"
 .W !,"FL - D ^%FL"
 .W !,"G - GLOBALS FULL SCREEN EDITOR"
 .W !,"GS - D ^%GS"
 .W !,"GR - D ^%GR"
 .W !,"GL - GLOBAL'S LIST ( ISN'T %GL)"
 .W !,"HF - HFS-FILE'S FULL SCREEN EDITOR"
 .W !,"WW - VARIABLE'S LIST"
 .W !,"OS - D ^%OS"
 .W !,"SS - D ^%SS"
 .W !,"EN - ENGLISH"
 .W !,"HB - HEBREW"
 .W !,"CA - CLEAR SCREEN"
 .W !,"TR - SEND PROGRAMM UPDATE"
 .W !,"!... - DOS COMMAND"
 I COM'[" ",COM'="H",COM'="h",COM'="W",COM'="w",COM'="ZW",COM'="zw",COM'="K",COM'="k" D  G EN01
 .N %FLENG
 .;;I $D(%HBRY),%TYPCRT["PC" S COM=$TR(COM,%THB,%TEN1)
 .D @("^"_$TR(COM,%TSMALL,%TBIG)) G EN01
 I $E(COM)="/"!($E(COM)=".")!($E(COM)="u"),$L(COM)>1 D  G EN01
 .S COM=$P($E(COM,2,255)," ")
 .N %FLENG,%HBRY
 .I $T(@COM)="" D @("^"_COM) Q
 .D @COM
 D
 .N SYSMAN,%FLENG X COM
EN01 ;
 Q
END I $D(^ZE($P,"%ERG")),$D(%L1XER),$ZV["2.0" D ^%L1C S %TIP=^ZE($P,"%ERG") G 241^%S2ERG
 N PORTN S PORTN=$$PORT^%L2MOUSE
 I PORTN C PORTN D CLOSE^%L1MDLCK(PORTN)
 Q
LL ;S I000=I000-1 I I000<1 U 0 W *7,"  *** BEGIN " S I000=0 G XX
 I '$D(I000) S I000=$O(MCOM(99999),-1)
 I I000>0 S %S=MCOM(I000)
 S I000=I000-1 I I000<0 U $p W *7,"  *** BEGIN " S I000=0 G XX
 G VC
RGHT S I000=I000+1 I '$D(MCOM(I000)) U $p W *7,"  *** END" S I000=I000-1 S:I000<1 I000=0 G XX
R1 S %S=MCOM(I000) G VC
R S %NAM=$tr($P(COM," ",2),"%","_") ZED %NAM ZLINK $P(%NAM,".") Q
E I $D(%S2ERG) W *7 S %SAY="YOU ARE INTO EDITOR ALREADY" X %XMSGV W *7 Q
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,COM,%Z) D ^%L1C
 S %NAM=$P(COM," ",2) K U,L,R
 D ^%L1ED Q
EB I $D(%S2ERG) W *7 S %SAY="YOU ARE INTO EDITOR ALREADY" X %XMSGV W *7 Q
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,COM,%Z) D ^%L1C
 D POISK^%L1ER($P($ZS,",",2))
 Q
EW I $D(%S2ERG) W *7 S %SAY="YOU ARE INTO EDITOR ALREADY" X %XMSGV W *7 Q
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,COM,%Z) D ^%L1C
 S %NAM=$P(COM," ",2) K U,L,R
EWZ I %NAM="" R !!,"JSP FILE NAME : ",%NAM
 I %NAM="" Q
 I %NAM'["." S %NAM=$$FUNC^%LCASE(%NAM)_".jsp"
 D ED^%W1JSP(%NAM)
 Q
 ;
ED I $D(%S2ERG) W *7 S %SAY="YOU ARE INTO EDITOR ALREADY" X %XMSGV W *7 Q
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,COM,%Z) D ^%L1C
 S %NAM=$P(COM," ",2) K U,L,R
EDZ I %NAM="" R !!,"LINUX FILE NAME : ",%NAM
 I %NAM="" Q
 D ED^%W1ED(%NAM)
 Q
 ;
V S %NAM=$P(COM," ",2)
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%NAM,%Z,%HBRY,%W1JSP) D ^%L1C
 I %NAM'="" S %RNAME=%NAM N %NAM D M1^%L1RV Q  ; ----- VIEW PROG
 D ^%L1RV Q
G D B^%S3GLKR Q  N %s1gedv D ^%S1GED Q
GN S %S3G=-1 D B^%S3GLKR Q
GL S %S1GL("MAC")=$P(COM," ",2) D ^%S1GL Q
RL D ^%L1RL Q
RS N %FORMAT
 D FORMAT
 I %FORMAT="" Q
 I %FORMAT=1 D ^%L1RSDOS Q
 D ^%L1RS Q
RR N %FORMAT
 D FORMAT
 I %FORMAT="" Q
 I %FORMAT=1 D ^%L1RI Q
 D ^%L2RI Q
RD D ^%L1RM Q
RC D ^%L1RCE Q
RCJ N %JSP D JSPDIR^%L1RSE G RC
GS D ^%L1GS Q
GR N %FORMAT U $P:(ECHO) W !?10,"GLOBAL RESTORING"
 D ^%L1GI Q
 ;
 D FORMAT
 Q:%FORMAT=""
 I %FORMAT=1 D ^%L1GI Q
 D ^%GI Q
GC D ^%S1GC Q
GD D ^%GD Q
H D ^%L1HFS Q
W D ^%L1OW Q
SV D
 .N COM,COD S COM=%S N %S W !!!!,"COD: " S %S="" D ^%ZMSL Q:%S=""!($G(%TO)="END")
 .S COD=%S S ^%L1X(COD)=COM
 G VC
FORMAT ;
 F  R !!,"MSM-FORMAT - 1, GTM-FORMAT - 2 : ",%FORMAT Q:%FORMAT=1!(%FORMAT=2)!(%FORMAT="")  W *7," ???"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1XM
%L1XM ;RTM;MSM CPU<->CPU TRANSMIT; [ 14.07.06 09:54 ] [ 31.01.06 20:24 ] [ 23.11.05 10:13 ]
 ; COPYRIGHT MICRONETICS DESIGN CORP. @1985
 ; If you need to send $C(1) or $C(2) through as data,
 ; pick another character and change the line INIT+1.
 ; %HT = wait time for READs (0 or 1)
 ; %DT = # of READs from IO device since last terminal read
 ; %DC = # iterations thru fast loop with no data received
 ; %RS = 1 if recording, 0 if not
 S %INT=0 K %MSM N GLD ; $D(%MSM) flag for calling from %TRANS
 N $ZT S $ZT="ZG "_$ZL_":ERROR^%L1XM"
 N %HB,%PRHB D ^%L1TS S GLD=$$^%L1GLD
GO S %HT=0,%DT=0,%DC=0,%RS=0,FLSTART=1,%HB=0 G:%INT INIT
 u $p W !?10,$P($P($ZV,","),"-")," - Transmission Utility"
 S %IO=$$MDPORT^%L1PORT I %IO S %IO=$G(@$$^W4DEV@(%IO)) I $L(%IO) G ASK1
ASK R !!,"I/O PORT? > ",%IO G:%IO="" EXIT
 G:%IO?1"^".E EXIT I %IO?1"?".E D QUE G ASK
 I '$D(^[GLD]dev(%IO)) U 0 W !,"Device ",%IO," is not defined ",*7 G ASK
 S %IO=^[GLD]dev(%IO)
ASK1 U $P I $I=%IO W !!,"Cannot select your own device.",*7 G ASK
 N $ZT S $ZT="ZG "_$ZL_":NOPEN^%L1XM"
 U $P:(CENABLE:CTRAP=$C(3))
 ;
 I '$$^%L1MDLCK(%IO) S %GET="A PORT OF MODEM IS BUSY !" D N^%L1GET G EXIT
 O %IO::0 E  W *7,"..line in use..waiting.." O %IO W "ready"
 S $ZT="ZG "_$ZL_":ERROR^%L1XM"
INIT U 0 W ! ;;S %ESC=$ZB($ZA,64,1) ; save escape processing status
 S %EXIT=$C(1),%RECORD=$C(2),%PRHB=$C(4)
 ;;V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 ; Turn off pass-all, esc processing, & tab control. Set terminators
 U %IO:(NOECHO:NOWRAP:TERM=$C(3,13))
 U $P:(NOECHO:NOWRAP:NOCENABLE:TERM=$C(3,13))
 S %ECHO=1
TERM ;
 U $P S %CR=13
 ;;D ^%L1DIAL(^PL("MDXON"),TEL)
 I $G(TEL) I $G(FLSTART)=1 S %X="AT"_$G(^PL("MDXON"))_"DTW"_TEL_$C(13) K FLSTART S %CR=13 I 1 S %ECHO=0 G TERM10
 R *%X0:%HT ;-- WAIT FOR COMMAND FROM KEYBOARD
 I %X0>31 S %HT=1
 I %X0=13 S %HT=0
 I %X0=$A(%EXIT) G EXIT
 I %X0=$A(%PRHB) S %HB=1-%HB
 ;
 S %X=$C(%X0),%X2=0
 ;
TERM10 U %IO W:$L(%X) %X
 S:$L(%X)!$T %DC=0,%HT=0 S %DT=0
 I %X["DT",%X["AT" S %ECHO=0
PORT ;
 U %IO R %Y:0 G:%INT!(%Y[$C(1)) EXIT ; %INT=1 - FROM ^TRANS
 I %Y[%PRHB S %HB=1-%HB
 S %Y1="" I $L(%Y) R %Y1:2
 S %Y=%Y_%Y1
 U $P W:$L(%Y) $TR(%Y,TS0,$S('$G(%HB):TS0,%XMSG(0)<0:TSS,1:TS1)) W:$T $C(%CR) W:%Y="+++" !
 I %Y="NO CARRIER"!(%Y="+++") S %ECHO=1
 S:$L(%Y)!$T %DC=0,%HT=0,%DT=%DT+1
 G TERM
EXIT ;
 D:%RS HALT ;;I $D(%ESC),%ESC U 0:(::::64)
 K %ESC,%X,%Y,%RS,%XN,%XE,%XS,%DC,%DT,%HT,%CR,%EXIT,%RECORD
 U $P:(ECHO:TERM=$C(13))
 I %INT!$D(%MSM) U $P:(CENABLE:CTRAP=$C(3)) K %INT Q  ; return to %TRANS
 I %IO'="" C %IO D CLOSE^%L1MDLCK(%IO) U 0 K %IO,%INT
 W:'$F($ZS,"DSCON") !,"Transmission Complete",!!
 Q
RECORD ;
 S:'$D(^XMIT) ^XMIT(0)=1
 S %XN=^XMIT(0),^XMIT(0)=%XN+1,%RS=1
 S %XS="",%XE=1,%X=$E(%X,2,999),^XMIT(%XN)=$H
 U 0 W !!,"Recording Started in ^XMIT(",%XN,",1)",!
 Q
HALT ;
 S:$L(%XS) ^XMIT(%XN,%XE)=%XS S %RS=0
 U 0 W !!,"Recording halted, last node is ^XMIT(",%XN,",",%XE,")",!!
 Q
NOPEN S %IO="" ; avoid <NOPEN> on <INRPT>
ERROR ;
 ;;I $F($ZS,"MXSTR") F %XE=%XE:1 G:%XS="" ERROR1 S ^XMIT(%XN,%XE)=$E(%XS,1,255),%XS=$E(%XS,256,9999)
 I $F($ZS,"CTRAP") U 0 W !!,"...Aborted." D EXIT Q
 I $F($ZS,"DSCON") DO:$I'=$P  D EXIT
 .U 0 W !!,"...Disconnected."
 U $P W !,$ZS
 D EXIT
 Q
ERROR1 S $ZT="ZG "_$ZL_":ERROR^%L1XM" Q ; resume after <MXSTR>
 ;
INT ;FROM TRANSFER UTILS
 S %INT=1 U $P:(NOCENABLE) G GO
 ;
QUE W !! F %IO=1:1 S %X=$T(TEXT+%IO) Q:%X=""  W $P(%X,";",2),!
 Q
TEXT ;
 ;Enter the port number to be used for the transmission.
 ;While the transmission is in progress, all characters except CTRL/A
 ;and CTRL/B will be passed through to the port.
 ;Use CTRL/B to start or stop recording of the information in the XMIT
 ;global, and CTRL/A to exit the program.

%L1XMIT
%L1XMIT ;RTM;MSM CPU<->CPU TRANSMIT; [ 14.07.06 11:25 ] [ 13.07.06 14:19 ] [ 11.02.01 10:23 AM ]
 ; COPYRIGHT MICRONETICS DESIGN CORP. @1985
 ; If you need to send $C(1) or $C(2) through as data,
 ; pick another character and change the line INIT+1.
 ; %HT = wait time for READs (0 or 1)
 ; %DT = # of READs from IO device since last terminal read
 ; %DC = # iterations thru fast loop with no data received
 ; %RS = 1 if recording, 0 if not
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %INT=0 K %MSM ; $D(%MSM) flag for calling from %TRANS
 S $ZT="ZG "_$ZL_":ERROR^%L1XMIT"
GO S %HT=0,%DT=0,%DC=0,%RS=0,FLSTART=1 G:%INT INIT
 u $p W #?10,$P($P($ZV,","),"-")," - Transmission Utility",!
 W !?10,"CTRL+A - EXIT"
 ;;I $G(^PL("MDPORT")) S %IO=^("MDPORT") G ASK1
ASK R !!,"I/O PORT? > ",%IO G:%IO="" EXIT G:%IO?1"^".E EXIT I %IO?1"?".E D QUE G ASK
 I '$D(@$$^W4DEV@(%IO)) U 0 W !,"Device ",%IO," is not defined ",*7 G ASK
ASK1 U $P I $I=@$$^W4DEV@(%IO) W !!,"Cannot select your own device.",*7 G ASK
 S %IO=@$$^W4DEV@(%IO)
 S $ZT="ZG "_$ZL_":NOPEN^%L1XMIT"
 U $P:(CENABLE)
 O %IO::12 E  U 0 W "..line in use " C %IO G ASK
 S $ZT="ZG "_$ZL_":ERROR^%L1XMIT"
 I '$$^%L1MDLCK(%IO) S %GETIN=0,%GET="A PORT OF MODEM IS BUSY ! OPEN IT - 1, EXIT - 0" D N^%L1GET G:'%S ASK D  I '$$^%L1MDLCK(%IO) U 0 W !," MODEM IS BUSY ! " G EXIT
 .D DELLOCK^%L2MOUSE(%IO)
 .U 0 W #!!,"I/O PORT > "_$G(@$$^W4DEVI@(%IO)),!
 S %FRST=1
 U %IO
INIT U 0 W ! ;
 S %EXIT=$C(1),%RECORD=$C(2)
 ; Turn off pass-all, esc processing, & tab control. Set terminators
 U %IO:(NOECHO:NOWRAP:TERM=$C(3,13))
 U $P:(NOECHO:NOWRAP:NOCENABLE:TERM=$C(3,13))
TERM ;
 U $P
 I $G(TEL) I $G(FLSTART)=1 S %X="AT"_$G(^PL("MDXON"))_"DTW"_TEL K FLSTART S %CR=13 I 1 G TERM10
 I $G(%FRST) S %FRST=0,%X="AT" G TERM1
 R %X:%HT ;-- WAIT FOR COMMAND FROM KEYBOARD
TERM1 S %CR=13
TERM10 G:$E(%X)=%EXIT EXIT
 D:$E(%X)=%RECORD
 .D @$S(%RS:"HALT",1:"RECORD") S %X=$E(%X,2,$L(%X)) Q
 ;
 U %IO W:$L(%X) %X W:$T $C(%CR) S:$L(%X)!$T %DC=0,%HT=0 S %DT=0
PORT ;
 U %IO R %Y:%HT G:%INT&(%Y[$C(1)) EXIT ; %INT=1 - FROM ^TRANS
 S %CR=13 U $P W:$L(%Y) %Y W:$T $C(%CR)
 S:$L(%Y)!$T %DC=0,%HT=0,%DT=%DT+1
 S:$L(%Y)&%RS %XS=%XS_%Y ;-- FOR RECORD
 I $T,%RS S ^XMIT(%XN,%XE)=%XS,%XE=%XE+1 K:%XS["OK" FLSTART S %XS=""
PORT1 I %DT>20 G TERM ; heavy incoming data, force check of CRT
 G TERM:$L(%X),PORT:$L(%Y)
 S %DC=%DC+1 G:%DC<500 TERM
 S %HT=1 ; READ timeout 1, goto slow mode
TERMWAIT ; TERMWAIT and PORTWAIT handle periods in which no data has been
 ; received from either side for %DC iterations through the
 ; TERM & PORT loop.
 U $P R %X#1:%HT E  G PORTWAIT
 G:%X=%EXIT EXIT
 I %X=%RECORD D @$S(%RS:"HALT",1:"RECORD") S (%DC,%DT,%HT)=0 G TERM
 S %CR=13
TW1 U %IO W %X W:'$L(%X) $C(%CR) S (%DC,%DT,%HT)=0 G TERM
 ;
PORTWAIT ;
 U %IO R %Y#1:%HT E  G TERMWAIT
 G:%INT&(%Y[%EXIT) EXIT ; %TRANS rtn or gbl selection finished
 S %CR=13
 U $P W %Y W:'$L(%Y) $C(%CR) S (%DC,%DT,%HT)=0
 ; If recording...
 S:$L(%Y)&%RS %XS=%XS_%Y ; add to captured string
 ; or terminate & file captured string
 I '$L(%Y),%RS S ^XMIT(%XN,%XE)=%XS,%XE=%XE+1,%XS=""
 G PORT
 ;
EXIT ;
 D:%RS HALT ;;I $D(%ESC),%ESC U 0:(::::64)
 K %ESC,%X,%Y,%RS,%XN,%XE,%XS,%DC,%DT,%HT,%CR,%EXIT,%RECORD
 ;;U:(%IO?.N)&(%IO'="") %IO:(:::::#001001:::$C(13,27))
 U $P:(ECHO:TERM=$C(13,27))
 I %INT!$D(%MSM) U $P:(CENABLE) K %INT Q  ; return to %TRANS
 I %IO'="" C %IO D CLOSE^%L1MDLCK(%IO) U 0 K %IO,%INT
 W:'$F($ZS,"DSCON") !,"Transmission Complete",!!
 Q
RECORD ;
 S:'$D(^XMIT) ^XMIT(0)=1
 S %XN=^XMIT(0),^XMIT(0)=%XN+1,%RS=1
 S %XS="",%XE=1,%X=$E(%X,2,999),^XMIT(%XN)=$H
 U 0 W !!,"Recording Started in ^XMIT(",%XN,",1)",!
 Q
HALT ;
 S:$L(%XS) ^XMIT(%XN,%XE)=%XS S %RS=0
 U 0 W !!,"Recording halted, last node is ^XMIT(",%XN,",",%XE,")",!!
 Q
NOPEN S %IO="" ; avoid <NOPEN> on <INRPT>
ERROR ;
 ;;I $F($ZS,"MXSTR") F %XE=%XE:1 G:%XS="" ERROR1 S ^XMIT(%XN,%XE)=$E(%XS,1,255),%XS=$E(%XS,256,9999)
 ;;I $F($ZS,"INRPT") U 0 W !!,"...Aborted." D EXIT
 ;;I $F($ZS,"DSCON") DO:$I'=$P  D EXIT
 .U 0 W !!,"...Disconnected."
 U $P W !,$ZS
 D EXIT
 Q
ERROR1 S $ZT="ZG "_$ZL_":ERROR^%L1XMIT" G PORT1 ; resume after <MXSTR>
INT ;FROM TRANSFER UTILS
 S %INT=1 U $P:(NOCENABLE) G GO
 ;
QUE W !! F %IO=1:1 S %X=$T(TEXT+%IO) Q:%X=""  W $P(%X,";",2),!
 Q
TEXT ;
 ;Enter the port number to be used for the transmission.
 ;While the transmission is in progress, all characters except CTRL/A
 ;and CTRL/B will be passed through to the port.
 ;Use CTRL/B to start or stop recording of the information in the XMIT
 ;global, and CTRL/A to exit the program.

%L1YN
%L1YN(%V)  ; [ 12/28/99 10:57 AM ] [ 02/17/98  2:08 PM ] [ 10/17/97  9:37 AM ]
 N %A S %A=$G(@%V)
 I "kFYh"[%A,$L(%A) S @%V=$S(%ENGLISH:"Y",1:"k") Q 1
 I "lKNn"[%A,$L(%A) S @%V=$S(%ENGLISH:"N",1:"l") Q 0
 Q -1

%L1YNT
%L1YNT ; [ 24.06.04 10:56 ] [ 18.02.04 13:17 ] [ 10.02.04 08:40 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%GET,%TO) D ^%L1C
 D SAVE^%L3MBGG
 X %LIGHT
 N XX1,XX2,YY1,YY2
 S XX1=20,YY1=18,XX2=XX1+40
 I $D(%GET("ISY")) S YY1=%GET("ISY")
 S YY2=YY1+5
 S %L1RBCL=%CV("MB")
 N TXT S TXT="? x y ` l"
 I $D(%GET("IS")) S TXT=%GET("IS") ; $E(%GET("IS"),1,XX2-XX1-1)
 I TXT'["?" S TXT="? "_TXT
 I $L(TXT)>(XX2-XX1-2) S YY2=YY2+1
 D TV^%L1RBUA(YY1,XX1,YY2,XX2)
 I $L(TXT)>(XX2-XX1-2) D  G MT
 .X %LIGHT N %DLG,%FRAZA S %FRAZA=TXT N TXT
 .S %DLG=XX2-XX1-2 D DELG^%L1SCPC
 .S TXT=%CHAST(1,1) N XXH S XXH=(XX2-1-(XX2-XX1-$L(TXT)\2))
 .S %SAY=TXT_"++"_YY1_","_XXH_",HH++MB,YF" X %XMSG
 .S TXT=%CHAST(1,2) X %LIGHT
 .I $E(%CHAST(1,1),$L(%CHAST(1,1)))=" " S TXT=$E(TXT,2,255)_" "
 .S %SAY=TXT_"++"_(YY1+1)_","_XXH_",HH++MB,YF" X %XMSG
 X %LIGHT
 S %SAY=TXT_"++"_YY1_","_(XX2-1-(XX2-XX1-$L(TXT)\2))_",HH++MB,YF" X %XMSG
MT N MTXT,Y0,Y2,X0,X2,SH,COLX,COLY
 S MTXT("B")=%CV("MB")
 S MTXT(1,1)=" `l       "
 S MTXT(1,1,"TO")="F1"
 S MTXT(1,2)=" ok       "
 S MTXT(1,2,"TO")="F2"
 I $G(%GET("DEF")) S MTXT(1,%GET("DEF"),"DEF")=""
 E  S MTXT(1,2,"DEF")=""
 S Y0=YY1+2+($L(TXT)>(XX2-XX1-2)),Y2=YY2-1,X0=XX1+2,X2=XX2-2
 S COLX=$O(MTXT(1,20),-1),COLY=1,SH=1
 S STEPX=XX2-XX1-4\2,STEPY=2,%PREV=""
 D TV^P1RBUA S %S=""
 D REST^%L3MBGG
 Q

%L1ZB
%L1ZB(%S1,%S2,%MS) ; [ 20.09.05 16:38 ] [ 12.10.03 11:30 ] [
 N %S12,%S22,%R,%Q,%A,%B,%J
 I %S1="" Q ""
 I %S2="" Q %S1
 S %S12=$$102^%L12(%S1)
 S %S22=$$102^%L12(%S2),%S220=%S22
 ;SR I $L(%S22)<$L(%S12) S %S22=%S22_%S220
 ;I $L(%S22)<$L(%S12) G SR
 I $L(%S22)<$L(%S12) S %S22=$TR($J("",$L(%S12)-$L(%S22))," ",0)_%S22
 I $L(%S12)<$L(%S22) S %S12=$TR($J("",$L(%S22)-$L(%S12))," ",0)_%S12
 ;
 ;S %S22=$E(%S22,1,$L(%S12))
 ;S %S22=$TR($J(%S22,$L(%S12))," ",0)
 S %Q=""
 F %J=1:1:$L(%S12) D  S %Q=%Q_%R
 .S %A=$E(%S12,%J)
 .S %B=$E(%S22,%J)
 .I %MS=1 S %R=$S(%A&%B:1,1:0) Q
 .I %MS=2 S %R=$S(%A&'%B:1,1:0) Q
 .I %MS=3 S %R=$S(%A:1,1:0) Q
 .I %MS=4 S %R=$S('%A&%B:1,1:0) Q
 .I %MS=5 S %R=$S(%B:1,1:0) Q
 .I %MS=6 S %R=$S(%A'=%B:1,1:0) Q
 .I %MS=7 S %R=$S(%A!%B:1,1:0) Q
 .I %MS=8 S %R=$S('%A&'%B:1,1:0)
 .I %MS=9 S %R=$S(%A=%B:1,1:0)
 .I %MS=10 S %R=$S('%B:1,1:0)
 .I %MS=11 S %R=$S('%A&'%B!%A:1,1:0)
 .I %MS=12 S %R=$S('%A:1,1:0)
 .I %MS=13 S %R=$S('%A!(%A&%B):1,1:0)
 .I %MS=14 S %R=$S(%A'=%B!('%A&'%B):1,1:0)
 .I %MS=15 S %R=1
 Q $$210^%L12(%Q)

%L1ZCRC
%L1ZCRC(%STR,%PR) ; [ 10.04.08 12:45 ] [
 N %R,%I,%J,%B,%X1,%K,%SUM
 S %SUM=0 S %R=$ZBITSTR(8,0)
 F %I=1:1:$L(%STR) S %R=$ZBITXOR(%R,$C(0)_$E(%STR,%I)) S %SUM=%SUM+$A(%STR,%I)
 I '$G(%PR) Q $A(%R,2)
 Q (%SUM#512)

%L1ZH
%L1ZH(%N) ;
 I %N'?1N.N Q $$FUNC^%HD(%N)
 Q $$NULL^%L1FRM($$FUNC^%DH(%N))

%L1ZMS
%L1ZMS ; HEBREW     [ 19.01.24 07:55 ] [ 11.01.24 16:08 ] [ 09.01.24 11:33 ] 
 ; $D(%FLL) --> %C,%C1,%C2
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 U $P:(NOECHO:NOWRAP) I '$D(%POSIC) D ^%L1C
 N %I,%J,%J1,%JJ,%XX,%YY,%FIRST,%FIRST1,%L,%A,%WORD,%WORD1,%NUMB,%SS,l1zms,%HBRY,C1,%FHBR,ZB,%SYM,%ZMSLX,%ZMSLY,%PRKB
 N %XX0,%YY0
 S %BEG=1,%L1NMB("ALB")=1
 I '$D(%MOUSE) S %MOUSE=$$INIT^%L2MOUSE
 K %screen I %MOUSE S %BE="E"
 I '$D(%FLL) N %C,%C1,%C2
 S %FHBR=1,%HBRY="" S:'$D(%S) %S="" S %SS=%S S:'$D(%LS) %LS=$X+1 S %TO=""
 I '$D(%C)#2 K %FLL
 I $G(%C)=27!($G(%C)=0),'$D(%C1) K %FLL
 I $L(%S)>%LS,%LS'["/" S %S=$E(%S,$L(%S)-%LS+1,255),%SS=%S
 I $L(%S)>%LS,%LS["/" S %S=$E(%S,$L(%S)-$P(%LS,"/",2)+1,255),%SS=%S
 D USE S %XX=$X-%LS+1,%YY=$Y S:%XX<0 %XX=0 S:%YY>24 %YY=24 X %POSIC
 S %XX0=%XX,%YY0=%YY
 S %ZMSLX=%XX,%ZMSLY=%YY
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_"?109l" ;-- CAPS LOCK OFF (DECCAPSLK)
 S %NUMB=0 S:'$D(%FLINS) %FLINS=1 D:%LS'["/"!$D(%L1GET) PC
 I $D(%L1GET) D KILL Q
 I $P(%LS,"/",2)>%LS D  G 13 ;-- WND
 .N %X1,%X2,%Y1,%Y2,%L1WH
 .S %X1=%XX0,%X2=%X1+%LS-1
 .S %Y1=%YY0,%Y2=%Y1+($P(%LS,"/",2)-.1\%LS)
 .I %TYPCRT="PC" D GET^%VIDEO("%l1zms",0,0,80,24,2)
 .I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;2$v"
 .N %LS0 S %LS0=%LS N %LS S %LS=$P(%LS0,"/",2)
 .S %L1WH("=")=""
 .D ^%L1WH
 .I %TYPCRT="PC",$D(%l1zms) D PUT^%VIDEO("%l1zms",0,0,80,24,2) Q
 .I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;2;;;$v"
 ;
 S %I=%LS S %FIRST=1,%FIRST1=1,%NMB=12
 I $G(%BE)="E",$L(%SS) S %pn=$L(%SS) X %levon S %I=%LS-$L(%SS)
 I $D(%ZMSL("LB","GL")) D SV
CYC ;
 K %SYM S %L=$L(%S) S %A=$E(%S,%I)
 G:$D(%PRKB) CYC0
 I %MOUSE,'$$KB^%L2MOUSE,'$D(%L1NMB("NO")) D  W *27,7 S %C=$$^%L1NMB("") W *27,8 G:%C=""!(%C="ENTER") 13 G:$A(%C)<65!($A(%C)>90)!($L(%C)=1) CYC2 G:$T(@%C)'="" @%C G CYC2
 .S %L1NMB("ZY")=%ZMSLY
 .;;S %NMB=12
 D ^%L1MSGBR
 I $G(%ZMSL("TIME")) D:('%FIRST!'$D(%FLL))  G:$T READ S %TO="TIME",%S="" G 13
 .N %JJ F %JJ=1:1:%ZMSL("TIME") D ^%L1MSGBR R *%C:1 Q:$T
CYC0 D ^%L1MSGBR
 S %L=$L(%S) S %A=$E(%S,%I)
 I 1 R:('%FIRST!'$D(%FLL)) *%C:1 E  K %PRKB G CYC
 S %FIRST=0 I %C'=0,%C'=27 K %FLL
READ G:%TYPCRT="PC" BDK S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
BDK I %C=8 G DEL
 I %C=7 S %TO="DBL" G 13
 I %C=5 G MOD ;;S %TO="DEL" G 13
 I %C=25 S %TO="END" G 13
 I %C=24 W *27,7 N %XXZMS,%YYZMS S %XXZMS=%XX,%YYZMS=%YY D ^%L1CLC S:$D(%L1CLC("F")) %S=$E(%L1CLC,1,%LS) K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC S $X=%XX,$Y=%YY D PC S %I=%LS G CYC
 I %C=20 G VNIZE ;;,$G(^zms($P))?1"^"."%"1U.E W *27,7 D ^%L1ZMST S $X=%XX,$Y=%YY D PC S %I=%LS G CYC
 I %C=46,$D(%HBRY),%TYPCRT["PC" S %C=149
 I $$ABC(%C) G SYM
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
 ;;I %C=27 D DELAY R:('$D(%FLL)!'$D(%C1)) *%C1:%WAIT G:%C1<0 ESC D DELAY R:'$D(%FLL)!'$D(%C2) *%C2:%WAIT K %FLL I %C2>0 S %C=%C1_%C2
 I %C=27 D DELAY R:'$D(%FLL) *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL) *%C2:%WAIT Q:%C2<0  S:%C2>0 C=%C1_%C2 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL) *%C3:%WAIT Q:%C3<0  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL) *%C4:%WAIT S:%C4>0 C=C_%C4
 I %C=27 G ESC
 I %C=0 D DELAY R:('$D(%FLL)!'$D(%C1)) *%C1:%WAIT D DELAY R:('$D(%FLL)!'$D(%C2)) *%C2:%WAIT K %FLL I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<120))!(%C1>129):"0"_%C1,1:60+%C1) G:%C>160 SYM
KF K %FLL
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 G CYC
CYC2 S %C=$A(%C) G BDK
SYM ;
 S %BEG=0
 ;
 I $G(%ZMSL)[$C(%C) S %TO=$C(%C) G 13
 I $D(CIST),CIST="" S %TO=$C(%C) G 13
 I $D(CIST),CIST'[$TR($C(%C),%TES2,%TES1) W *7 G CYC ;--- 01.10.01
 ;;I %I=1 W $TR($C(%C),%TEN,%THB) S %S=$TR($C(%C),%TES2,%TES1)_$E(%S,2,255) W *8,*7 G:$D(%GET(1)) 13 G CYC
 N %ergdos S %ergdos=$G(^ERGDOS)
 I %I=1 W $$WC^%S2ERG($C(%C),"I") S %S=$TR($C(%C),%TES2,%TES1)_$E(%S,2,255) W *8,*7 G:$D(%GET(1)) 13 G CYC
 I '%FLINS,$G(%FIRST1) S %S="" X %POSIC D PC
 S %FIRST1=0
 K %FL W:%I>%LS *7 G:%I>%LS CYC I $D(CIST),CIST'[$TR($C(%C),%TES2,%TES1) W *7 G CYC
 S %SYM=""
 I %C>47&(%C<58)!(%C>64&(%C<91)),%FHBR S %FLINS=1,%FHBR=0
 ;
 I %C>95&(%C<123),'%FHBR,%I>1 D FNS I %JJ>0,%I'<%JJ D
 .N %I1,%SMB,%HB S %HB=0
 .F %I1=%JJ:1:%I S %SMB=$A($E(%S,%I1)) I %SMB>95,%SMB<123 S %HB=1 Q
 .S %pn=%I-%JJ+(%I>1) X %levon S %I=%JJ-(%I>1)
 ;
 D FNS
 I %C>95&(%C<123),'%FHBR S %FHBR=1,%HBRY=""
 I %FLINS D INSERT G:%JJ=1 CYC
 ;;W $TR($C(%C),%TEN,%THB) S %S=$E(%S,1,%I-1)_$TR($C(%C),%TES2,%TES1)_$E(%S,%I+1,%L)
 W $$WC^%S2ERG($C(%C),"I")
 S %S=$E(%S,1,%I-1)_$TR($C(%C),%TES2,%TES1)_$E(%S,%I+1,%L)
 I %I<2 G:$D(%GET(1)) 13 G CYC
 ;
 I $D(%ZMSL("LB","GL")),%CVET W *27,7 D  W *27,8
 .N %TXT S %TXT=" "_$$SPL^%L1FRM(%S)
 .I $D(%ZMSL("LB","NOTR")) D
 ..N %I F %I=1:1:$L(%S) Q:%ZMSL("LB","NOTR")'[$E(%S,$L(%S)+1-%I)
 ..I %I>$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=%I
 .I $L(%TXT)-1<$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=$L(%TXT)
 .I '$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=1
 .N %J,%J0 S %J0=%ZMSL("LB","START") F %J=%J0-1:-1:1 Q:$A($E(%TXT,$L(%TXT)-%J))<96!($A($E(%TXT,$L(%TXT)-%J))>122)  S %ZMSL("LB","START")=%J
 .I $G(%ZMSL("LB","START")) S %TXT=$E(%TXT,1,$L(%TXT)+1-%ZMSL("LB","START"))
 .S %TXT=$$SPA^%L1FRM(%TXT)
 .Q:%TXT=""
 .I $D(%ZMSL("LB","HELP")) W *27,"[30;24H",$$W^%L1C(%ZMSL("LB","HELP"))
 .D ^%L1LB(%TXT,%ZMSL("LB","GL"),$G(%ZMSL("LB","PR")))
 .;;S %XX=%XXZMS,%YY=%YYZMS
 I %FHBR W *8 G LEVO
 W *8
 G CYC
 ;
9 ;
 F %J=%I+($E(%S,%I)=" "):1:%LS Q:" +,;:-="[$E(%S,%J)
 S %WORD="" F %J1=%J-(%J<%LS):-1:1 Q:" +,;:-="[$E(%S,%J1)  S %WORD=%WORD_$E(%S,%J1)
 I $L(%WORD),$D(^word(%WORD)) S %WORD1=^(%WORD) S %S=$$HBR^%L1FRM($E(%S,1,%J1)_%WORD1_$S(%J<%LS:$E(%S,%J,%LS),1:""),%LS) X %POSIC S $X=%XX,$Y=%YY D PC s %pn=(%LS-%I+$L(%WORD1)-1) S:%pn'<%LS %pn=%LS-1 X %levon S %I=%I-$L(%WORD1)+1 S:%I<1 %I=1 G CYC
 W *7 G CYC
 G:%I>%LS CYC S %J=%I+8 S:%J>%L %J=%L S %pn=(%J-%I) G:%pn=0 CYC
 X %pravon S %I=%J G CYC
15 ;
 G:%I=1 CYC S %J=%I-8 S:%J<1 %J=1 S %pn=%I-%J X %levon S %I=%J G CYC
TAB I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TAB" G 13
  G 9
TABN I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TABN" D DELAY R *%C1:0 G 13
  G 15
23 ;
 D INSERT
 G CYC
ADD G 23
ADDL S %TO="F5" R *%C1:0 G 13
MOD S %TO="DEL" G 13
VNIZE I $G(^zms($P))?1"^"."%"1U.E D ^%L1ZMST S %XX=%ZMSLX,%YY=%ZMSLY X %POSIC D PC S %I=%LS
 G CYC
PRSC ;
 D ^%L1PRSC
 G CYC
IND S %TO="F4" D DELAY R *%C1:0 G 13
CHISTE S %TO="F2" D DELAY R *%C1:0 G 13
FINDS S %TO="FINDS" D DELAY R *%C1:0 G 13
CHISTS ;
 I $D(%ZMSF) S %TO="F1" D DELAY R *%C1:0 G 13
 I $D(CIST),CIST="" S %TO="F1" D DELAY R *%C1:0 G 13
 I %I=1,%L=1 S %S=" " D W W *8 G CYC
 G:%I>%L CYC S %S=$J($E(%S,%I+1,%L),%LS) S %pn=%I-1 X %levon D W S %pn=%L-%I+1
 X %levon G CYC
SBROS ;
 S %TO="F3" D DELAY R *%C1:0 G 13
SHIFT I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=2,%NMB=12 G SHIFT1
 I $G(%L1NMB("ALB"))=2 S %L1NMB("ALB")=1,%HBRY="",%NMB=12 G SHIFT1
 I $G(%L1NMB("ALB"))=1 K %L1NMB("ALB") S %NMB=7 G SHIFT1
SHIFT1 D PUT S %XX=%ZMSLX,%YY=%ZMSLY X %POSIC D PC D  G CYC
 .S %pn=(%LS-%I) X %levon
 .;S %I=%LS
PRAVO ;
 I $D(CIST),CIST="" S %TO="RIGHT" D DELAY R *%C1:0 G 13
 I $D(%ZMSF("LR")) S %TO="RIGHT" D DELAY R *%C1:0 G 13
 I %I>($L(%S)+1) K %PRKB
 G:%I'<%LS CYC0 W %pravo S %I=%I+1
 G CYC0
LEVO ;
 I '%FHBR D FNS I %I'>%JJ,'$D(%SYM) S %FHBR=1,%HBRY=""
 I $D(CIST),CIST="" S %TO="LEFT" D DELAY R *%C1:0 G 13
 I $D(%ZMSF("LR")) S %TO="LEFT" D DELAY R *%C1:0 G 13
 I %I=1 K %PRKB
 G:%I=1 CYC W %levo S %I=%I-1
 G CYC
13 ;
 N %S0 S %S0=""
 F %JJ=1:1:$L(%S) D
 .S %S0=%S0_$S($A(%S,%JJ)<128:$E(%S,%JJ),1:$C($A(%S,%JJ)-32))
 S %S=%S0
 I $D(l1zms) D RS
 D KILL D PUT
 D FNS S %S=$E(%S,%JJ,$L(%S))
 X %XCL W:$D(%HBRY) %HBR I $D(%ECHO) U $P:(ECHO:WRAP)
 K %L1NMB Q
KILL K CIST,%I,%L,%J,%SS,%LS,%FLINS,%BE,%ZMSL,%ZMSF,%C,%C1,%C2,%FLL,%L1LB,l1zms
 Q
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
BK G 13
VVERX ;
 S %TO="UP" G 13
ENDS I $D(%ZMSF) S %TO="ENDS" D DELAY R *%C1:0 G 13
 D FNS I %I>%JJ S %pn=%I-%JJ+1 X %levon S %I=%JJ-1
 I '%FHBR S %FHBR=1,%HBRY=""
 G CYC
VNIZ ;
 ;;I %MOUSE,'$$KB^%L2MOUSE,'$D(%L1NMB("NO")) K %PRKB G CYC
 S %TO="DW"
 I $D(%ZMSL("LB")),$D(%L1LB) D  K %L1LB G CYC
 .W *27,7 N %XXZMS,%YYZMS S %XXZMS=%XX,%YYZMS=%YY
 .K %L1("VIEW"),%L3VN S %L3VNOHZG="" D TV^%L1LB
 .D RS I $G(%ZMSL("LB","START"))<2 K %ZMSL("LB","START")
 .I $G(%L3VN)'="" S %S=$$HBR^%L1FRM($G(%L1LB(%L3VN))_$S($D(%ZMSL("LB","START")):$E(%S,$L(%S)-%ZMSL("LB","START")+1,255),1:""),%LS)
 .K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC
 .S $X=%XX,$Y=%YY D PC S %I=%LS
 G 13
HOME I $D(%ZMSF) S %TO="HOME" D DELAY R *%C1:0 G 13
 I %I'>%L S %pn=%L-%I X %pravon S %I=%L
 G CYC
PGUP S %TO="PGUP" D DELAY R *%C1:0 G 13
PGDN S %TO="PGDW" D DELAY R *%C1:0 G 13
PGLN S %TO="PGLN" D DELAY R *%C1:0 G 13
PGRG S %TO="PGRG" D DELAY R *%C1:0 G 13
BEGF S %TO="BEGF" D DELAY R *%C1:0 G 13
ENDF S %TO="ENDF" D DELAY R *%C1:0 G 13
HELP S %TO="HELP" D DELAY R *%C1:0 G 13
FIND S %TO="F8" G 13
COR S %TO="F7" G 13
SAVE S %TO="F9" G 13
REST S %TO="F10" G 13
DELL S %TO="F6" G 13
ESC S %TO="END" G 13
DEL ;
 I $D(CIST),CIST="" S %TO="BS" G 13
 G:%S?." " CYC
 I $D(CIST),CIST="" G CYC
 D FNS
 S:%I>%LS %I=%LS
 I %JJ=%I W " ",*8 S %S=$J($E(%S,%I+1,$L(%S)),%LS) G CYC
 I %JJ=(%I+1) W %pravo," ",*8 S %S=$J($E(%S,%I+2,$L(%S)),%LS) S %I=%I+1 G CYC
 G:%I<%JJ A8
 S %S=$J($E(%S,1,%I-1)_$E(%S,%I+1,$L(%S)),%LS) S %pn=%I-1 X %levon D W
 S %pn=%L-%I+1 x %levon G CYC
A8 G PRAVO
FNS ;
 I $L(%S)=0 S %JJ=0 Q
 F %JJ=1:1:$L(%S)+1 Q:$E(%S,%JJ)'=" "
 Q
INSERT D FNS I %JJ=1 W *7 Q
 S %S=$E(%S,2,%I)_" "_$E(%S,%I+1,%L)
 S %pn=%I-1 X %levon D W
 S %pn=(%LS-%I+1) X %levon
 Q
INS I $D(%ZMSF) S %TO="INS" D DELAY R *%C1:0 G 13
 S %FLINS='%FLINS
 G CYC
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q
 ;MDRG S %FHBR='%FHBR I %FHBR S %FLINS=0 W *27,7 S %SAY="HEBREW TEXT" X %XMSGV W *27,8 S %HBRY="" G CYC
 ;W *27,7 S %SAY="ENGLISH TEXT",%FLINS=1 X %XMSGV W *27,8 G CYC
MDRG S %FHBR='%FHBR I %FHBR S %FLINS=0 S %HBRY="" G CYC
 K %HBRY S %FLINS=1 G CYC
PC ;
 I $D(%INV) W %CLI
 I %LS["/",$L(%S)>%LS W %HBR W "..."_$$HBR^%L1FRM(%S,%LS-3) Q
 W %HBR S %S=$J($E(%S,1,%LS),%LS) D W W *8
 Q
SV ;
 I %TYPCRT="PC" D GET^%VIDEO("l1zms",0,0,80,24,2) Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;4$v" S l1zms=""
 Q
RS ;
 I %TYPCRT="PC",$D(l1zms)!$D(^P1VIDEO($$POS^%L2MOUSE)) D PUT^%VIDEO("l1zms",0,0,80,24,2) K l1zms Q
 I $E(%TYPCRT,1,3)="VT5",%CVET W $C(27,91),";;;;4;;;$v" K l1zms Q
 I $D(%SCRN) D A^%L1SC
 Q
W W $$W^%L1C(%S)
 Q
PUT ;
 I %MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)) D
 .I '$D(%L1NMB("X0")) Q
 .I '$D(%L1NMB("Y0")) Q
 .I '$D(%L1NMB("X2")) Q
 .I '$D(%L1NMB("Y2")) Q
 .X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
ABC(SMB) ;
 I SMB>31&(SMB<127) Q 1
 I SMB>127&(SMB<155) Q 1
 Q 0
 
 
 
 
 
 
 
 

%L1ZMS0
%L1ZMS ; HEBREW     [ 25.04.06 07:28 ] [ 21.04.06 14:05 ] [ 30.03.06 15:04 ]
 ; $D(%FLL) --> %C,%C1,%C2
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 U $P:(NOECHO:NOWRAP) I '$D(%POSIC) D ^%L1C
 N %I,%J,%J1,%JJ,%XX,%YY,%FIRST,%FIRST1,%L,%A,%WORD,%WORD1,%NUMB,%SS,l1zms,%HBRY,C1,%FHBR,ZB,%SYM,%ZMSLX,%ZMSLY
 S %BEG=1,%L1NMB("ALB")=1
 I '$D(%MOUSE) S %MOUSE=$$INIT^%L2MOUSE
 K %screen I %MOUSE S %BE="E"
 I '$D(%FLL) N %C,%C1,%C2
 S %FHBR=1,%HBRY="" S:'$D(%S) %S="" S %SS=%S S:'$D(%LS) %LS=$X+1 S %TO=""
 I '$D(%C)#2 K %FLL
 I $G(%C)=27!($G(%C)=0),'$D(%C1) K %FLL
 ;;I $G(%C)<31!($G(%C)>126) K %FLL,%C
 I $L(%S)>%LS S %S=$E(%S,$L(%S)-%LS+1,255),%SS=%S
 D USE S %XX=$X-%LS+1,%YY=$Y S:%XX<0 %XX=0 S:%YY>24 %YY=24 X %POSIC
 S %ZMSLX=%XX,%ZMSLY=%YY
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_"?109l" ;-- CAPS LOCK OFF (DECCAPSLK)
 S %NUMB=0 S:'$D(%FLINS) %FLINS=1 D PC
 I $D(%L1GET) D KILL Q
 S %I=%LS S %FIRST=1,%FIRST1=1,%NMB=12
 I $G(%BE)="E",$L(%SS) S %pn=$L(%SS) X %levon S %I=%LS-$L(%SS)
 I $D(%ZMSL("LB","GL")) D SV
CYC ;
 K %SYM S %L=$L(%S) S %A=$E(%S,%I)
 I %MOUSE,'$$KB^%L2MOUSE,'$D(%L1NMB("NO")) D  W *27,7 S %C=$$^%L1NMB("") W *27,8 G:%C=""!(%C="ENTER") 13 G:$A(%C)<65!($A(%C)>90)!($L(%C)=1) CYC2 G:$T(@%C)'="" @%C G CYC2
 .S %L1NMB("ZY")=%ZMSLY
 D ^%L1MSGBR
 I $G(%ZMSL("TIME")) D:('%FIRST!'$D(%FLL))  G:$T READ S %TO="TIME",%S="" G 13
 .N %JJ F %JJ=1:1:%ZMSL("TIME") D ^%L1MSGBR R *%C:1 Q:$T
CYC0 D ^%L1MSGBR
 S %L=$L(%S) S %A=$E(%S,%I)
 I 1 R:('%FIRST!'$D(%FLL)) *%C:1 E  G CYC
 S %FIRST=0 I %C'=0,%C'=27 K %FLL
READ G:%TYPCRT="PC" BDK S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
BDK I %C=8 G DEL
 I %C=7 S %TO="DBL" G 13
 I %C=5 G MOD ;;S %TO="DEL" G 13
 I %C=25 S %TO="END" G 13
 I %C=24 W *27,7 N %XXZMS,%YYZMS S %XXZMS=%XX,%YYZMS=%YY D ^%L1CLC S:$D(%L1CLC("F")) %S=$E(%L1CLC,1,%LS) K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC S $X=%XX,$Y=%YY D PC S %I=%LS G CYC
 I %C=20 G VNIZE ;;,$G(^zms($P))?1"^"."%"1U.E W *27,7 D ^%L1ZMST S $X=%XX,$Y=%YY D PC S %I=%LS G CYC
 I %C>31&(%C<127) G SYM
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
 ;;I %C=27 D DELAY R:('$D(%FLL)!'$D(%C1)) *%C1:%WAIT G:%C1<0 ESC D DELAY R:'$D(%FLL)!'$D(%C2) *%C2:%WAIT K %FLL I %C2>0 S %C=%C1_%C2
 I %C=27 D DELAY R:'$D(%FLL) *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL) *%C2:%WAIT Q:%C2<0  S:%C2>0 C=%C1_%C2 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL) *%C3:%WAIT Q:%C3<0  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL) *%C4:%WAIT S:%C4>0 C=C_%C4
 I %C=27 G ESC
 I %C=0 D DELAY R:('$D(%FLL)!'$D(%C1)) *%C1:%WAIT D DELAY R:('$D(%FLL)!'$D(%C2)) *%C2:%WAIT K %FLL I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<120))!(%C1>129):"0"_%C1,1:60+%C1) G:%C>160 SYM
KF K %FLL
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 G CYC
CYC2 S %C=$A(%C) G BDK
SYM ;
 S %BEG=0
 ;;I %C=46,$D(%HBRY) S %C=$S(%XMSG(0)<0:149,1:245)
 I $G(%ZMSL)[$C(%C) S %TO=$C(%C) G 13
 I $D(CIST),CIST="" S %TO=$C(%C) G 13
 I $D(CIST),CIST'[$TR($C(%C),%TES2,%TES1) W *7 G CYC ;--- 01.10.01
 I %I=1 W $TR($C(%C),%TEN,%THB) S %S=$TR($C(%C),%TES2,%TES1)_$E(%S,2,255) W *8,*7 G:$D(%GET(1)) 13 G CYC
 ;I $G(%FL)="H",'%FLINS S %S="" X %POSIC D PC
 I '%FLINS,$G(%FIRST1) S %S="" X %POSIC D PC
 S %FIRST1=0
 K %FL W:%I>%LS *7 G:%I>%LS CYC I $D(CIST),CIST'[$TR($C(%C),%TES2,%TES1) W *7 G CYC
 S %SYM=""
 I %C>47&(%C<58)!(%C>64&(%C<91)),%FHBR S %FLINS=1,%FHBR=0
 ;;I %C>95&(%C<123)!($C(%C)=" "!($C(%C)=","))!($C(%C)="<"),'%FHBR,%I>1 D FNS I %JJ>0,%I'<%JJ D
 I %C>95&(%C<123),'%FHBR,%I>1 D FNS I %JJ>0,%I'<%JJ D
 .N %I1,%SMB,%HB S %HB=0 F %I1=%JJ:1:%I S %SMB=$A($E(%S,%I1)) I %SMB>95,%SMB<123 S %HB=1 Q
 .;;S %pn=%I-%JJ+(%I>1)-1 X %levon S %I=%JJ-(%I>1)-1
 .S %pn=%I-%JJ+(%I>1) X %levon S %I=%JJ-(%I>1)
 ;;I %C>95&(%C<123)!($C(%C)=" ")!($C(%C)=",")!($C(%C)="<"),'%FHBR S %FHBR=1,%HBRY=""
 D FNS
 I %C>95&(%C<123),'%FHBR S %FHBR=1,%HBRY=""
 I %FLINS D INSERT G:%JJ=1 CYC
 W $TR($C(%C),%TEN,%THB) S %S=$E(%S,1,%I-1)_$TR($C(%C),%TES2,%TES1)_$E(%S,%I+1,%L)
 I %I<2 G:$D(%GET(1)) 13 G CYC
 I $D(%ZMSL("LB","GL")),%CVET W *27,7 D  W *27,8
 .N %TXT S %TXT=" "_$$SPL^%L1FRM(%S)
 .I $D(%ZMSL("LB","NOTR")) D
 ..N %I F %I=1:1:$L(%S) Q:%ZMSL("LB","NOTR")'[$E(%S,$L(%S)+1-%I)
 ..I %I>$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=%I
 .I $L(%TXT)-1<$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=$L(%TXT)
 .I '$G(%ZMSL("LB","START")) S %ZMSL("LB","START")=1
 .N %J,%J0 S %J0=%ZMSL("LB","START") F %J=%J0-1:-1:1 Q:$A($E(%TXT,$L(%TXT)-%J))<96!($A($E(%TXT,$L(%TXT)-%J))>122)  S %ZMSL("LB","START")=%J
 .I $G(%ZMSL("LB","START")) S %TXT=$E(%TXT,1,$L(%TXT)+1-%ZMSL("LB","START"))
 .S %TXT=$$SPA^%L1FRM(%TXT)
 .Q:%TXT=""
 .I $D(%ZMSL("LB","HELP")) W *27,"[30;24H",$TR($TR(%ZMSL("LB","HELP"),%TES1,%TES2),%TEN,%THB)
 .D ^%L1LB(%TXT,%ZMSL("LB","GL"),$G(%ZMSL("LB","PR")))
 .;;S %XX=%XXZMS,%YY=%YYZMS
 I %FHBR W *8 G LEVO
 W *8
 G CYC
9 ;
 F %J=%I+($E(%S,%I)=" "):1:%LS Q:" +,;:-="[$E(%S,%J)
 S %WORD="" F %J1=%J-(%J<%LS):-1:1 Q:" +,;:-="[$E(%S,%J1)  S %WORD=%WORD_$E(%S,%J1)
 I $L(%WORD),$D(^word(%WORD)) S %WORD1=^(%WORD) S %S=$$HBR^%L1FRM($E(%S,1,%J1)_%WORD1_$S(%J<%LS:$E(%S,%J,%LS),1:""),%LS) X %POSIC S $X=%XX,$Y=%YY D PC s %pn=(%LS-%I+$L(%WORD1)-1) S:%pn'<%LS %pn=%LS-1 X %levon S %I=%I-$L(%WORD1)+1 S:%I<1 %I=1 G CYC
 W *7 G CYC
 G:%I>%LS CYC S %J=%I+8 S:%J>%L %J=%L S %pn=(%J-%I) G:%pn=0 CYC
 X %pravon S %I=%J G CYC
15 ;
 G:%I=1 CYC S %J=%I-8 S:%J<1 %J=1 S %pn=%I-%J X %levon S %I=%J G CYC
TAB I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TAB" G 13
  G 9
TABN I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TABN" D DELAY R *%C1:0 G 13
  G 15
23 ;
 D INSERT
 G CYC
ADD G 23
ADDL S %TO="F5" R *%C1:0 G 13
MOD S %TO="DEL" G 13
VNIZE I $G(^zms($P))?1"^"."%"1U.E D ^%L1ZMST S %XX=%ZMSLX,%YY=%ZMSLY X %POSIC D PC S %I=%LS
 G CYC
IND S %TO="F4" D DELAY R *%C1:0 G 13
CHISTE S %TO="F2" D DELAY R *%C1:0 G 13
FINDS S %TO="FINDS" D DELAY R *%C1:0 G 13
CHISTS ;
 I $D(%ZMSF) S %TO="F1" D DELAY R *%C1:0 G 13
 I $D(CIST),CIST="" S %TO="F1" D DELAY R *%C1:0 G 13
 I %I=1,%L=1 S %S=" " D W W *8 G CYC
 G:%I>%L CYC S %S=$J($E(%S,%I+1,%L),%LS) S %pn=%I-1 X %levon D W S %pn=%L-%I+1
 X %levon G CYC
SBROS ;
 S %TO="F3" D DELAY R *%C1:0 G 13
SHIFT I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=2,%NMB=12 G SHIFT1
 I $G(%L1NMB("ALB"))=2 S %L1NMB("ALB")=1,%HBRY="",%NMB=12 G SHIFT1
 I $G(%L1NMB("ALB"))=1 K %L1NMB("ALB") S %NMB=7 G SHIFT1
SHIFT1 D PUT S %XX=%ZMSLX,%YY=%ZMSLY X %POSIC D PC D  G CYC
 .S %pn=(%LS-%I) X %levon
 .;S %I=%LS
PRAVO ;
 I $D(CIST),CIST="" S %TO="RIGHT" D DELAY R *%C1:0 G 13
 G:%I'<%LS CYC0 W %pravo S %I=%I+1
 G CYC0
LEVO ;
 I '%FHBR D FNS I %I'>%JJ,'$D(%SYM) S %FHBR=1,%HBRY=""
 I $D(CIST),CIST="" S %TO="LEFT" D DELAY R *%C1:0 G 13
 G:%I=1 CYC0 W %levo S %I=%I-1
 G CYC0
13 ;
 I $D(l1zms) D RS
 D KILL D PUT
 D FNS S %S=$E(%S,%JJ,$L(%S))
 X %XCL W:$D(%HBRY) %HBR I $D(%ECHO) U $P:(ECHO:WRAP)
 K %L1NMB Q
KILL K CIST,%I,%L,%J,%SS,%LS,%FLINS,%BE,%ZMSL,%ZMSF,%C,%C1,%C2,%FLL,%L1LB,l1zms
 Q
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
BK G 13
VVERX ;
 S %TO="UP" G 13
ENDS I $D(%ZMSF) S %TO="ENDS" D DELAY R *%C1:0 G 13
 D FNS I %I>%JJ S %pn=%I-%JJ+1 X %levon S %I=%JJ-1
 I '%FHBR S %FHBR=1,%HBRY=""
 G CYC
VNIZ ;
 S %TO="DW"
 I $D(%ZMSL("LB")),$D(%L1LB) D  K %L1LB G CYC
 .W *27,7 N %XXZMS,%YYZMS S %XXZMS=%XX,%YYZMS=%YY
 .K %L1("VIEW"),%L3VN S %L3VNOHZG="" D TV^%L1LB
 .D RS I $G(%ZMSL("LB","START"))<2 K %ZMSL("LB","START")
 .I $G(%L3VN)'="" S %S=$$HBR^%L1FRM($G(%L1LB(%L3VN))_$S($D(%ZMSL("LB","START")):$E(%S,$L(%S)-%ZMSL("LB","START")+1,255),1:""),%LS)
 .K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC
 .S $X=%XX,$Y=%YY D PC S %I=%LS
 G 13
HOME I $D(%ZMSF) S %TO="HOME" D DELAY R *%C1:0 G 13
 I %I'>%L S %pn=%L-%I X %pravon S %I=%L
 G CYC
PGUP S %TO="PGUP" D DELAY R *%C1:0 G 13
PGDN S %TO="PGDW" D DELAY R *%C1:0 G 13
PGLN S %TO="PGLN" D DELAY R *%C1:0 G 13
PGRG S %TO="PGRG" D DELAY R *%C1:0 G 13
BEGF S %TO="BEGF" D DELAY R *%C1:0 G 13
ENDF S %TO="ENDF" D DELAY R *%C1:0 G 13
HELP S %TO="HELP" D DELAY R *%C1:0 G 13
FIND S %TO="F8" G 13
COR S %TO="F7" G 13
SAVE S %TO="F9" G 13
REST S %TO="F10" G 13
DELL S %TO="F6" G 13
ESC S %TO="END" G 13
DEL ;
 I $D(CIST),CIST="" S %TO="BS" G 13
 G:%S?." " CYC
 I $D(CIST),CIST="" G CYC
 D FNS
 S:%I>%LS %I=%LS
 I %JJ=%I W " ",*8 S %S=$J($E(%S,%I+1,$L(%S)),%LS) G CYC
 I %JJ=(%I+1) W %pravo," ",*8 S %S=$J($E(%S,%I+2,$L(%S)),%LS) S %I=%I+1 G CYC
 G:%I<%JJ A8
 S %S=$J($E(%S,1,%I-1)_$E(%S,%I+1,$L(%S)),%LS) S %pn=%I-1 X %levon D W
 S %pn=%L-%I+1 x %levon G CYC
A8 G PRAVO
FNS ;
 I $L(%S)=0 S %JJ=0 Q
 F %JJ=1:1:$L(%S)+1 Q:$E(%S,%JJ)'=" "
 Q
INSERT D FNS I %JJ=1 W *7 Q
 S %S=$E(%S,2,%I)_" "_$E(%S,%I+1,%L)
 S %pn=%I-1 X %levon D W
 S %pn=(%LS-%I+1) X %levon
 Q
INS I $D(%ZMSF) S %TO="INS" D DELAY R *%C1:0 G 13
 S %FLINS='%FLINS
 G CYC
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q
 ;MDRG S %FHBR='%FHBR I %FHBR S %FLINS=0 W *27,7 S %SAY="HEBREW TEXT" X %XMSGV W *27,8 S %HBRY="" G CYC
 ;W *27,7 S %SAY="ENGLISH TEXT",%FLINS=1 X %XMSGV W *27,8 G CYC
MDRG S %FHBR='%FHBR I %FHBR S %FLINS=0 S %HBRY="" G CYC
 K %HBRY S %FLINS=1 G CYC
PC ;
 I $D(%INV) W %CLI
 W %HBR S %S=$J($E(%S,1,%LS),%LS) D W W *8
 Q
SV ;
 I %TYPCRT="PC" D GET^%VIDEO("l1zms",0,0,80,24,2) Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;4$v" S l1zms=""
 Q
RS ;
 I %TYPCRT="PC",$D(l1zms)!$D(^P1VIDEO($$POS^%L2MOUSE)) D PUT^%VIDEO("l1zms",0,0,80,24,2) K l1zms Q
 I $E(%TYPCRT,1,3)="VT5",%CVET W $C(27,91),";;;;4;;;$v" K l1zms Q
 Q
W W $TR($TR(%S,%TES1,%TES2),%TEN,%THB)
 Q
PUT ;
 I %MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)) D
 .I '$D(%L1NMB("X0")) Q
 .I '$D(%L1NMB("Y0")) Q
 .I '$D(%L1NMB("X2")) Q
 .I '$D(%L1NMB("Y2")) Q
 .X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q

%L1ZMSL
%ZMSL ;               [ 19.01.24 07:52 ] [ 18.01.24 10:02 ] [ 11.01.24 16:10 ] 
 ;PARAMETERS :
 ;  %HBRY - $D - LEKABEL OTIJOT IVRIJOT
 ; %FLINS - $D - INSERT , '$D - OVERLAY
 ; %FLL - FIRST SYMBOL AUX
 ; %LS - LENGTH
 ; CIST - SET SYMBOLS SHE MUTAR LEHACHNIS (CIST="": COL MAKASH -> %TO)
 ; %BE="E"- LHATHIL HAKLADAT TEXT MI SOF SHURA
 ; %ZMSL - SYMBOLS SET THAT INTERRUPT INPUT -> %TO
 ; %ZMSL("bf") ;-- B<>F - PRE- & POST SYMBOLS
 ; %ZMSL("LS") : IF $L(%S)=%LS - EXIT
 ; %ZMSF - TAB,INS,PGUP,PGDN,F1-F10,END,HOME - MESAJEMIM HAKLADA - > %TO
 ; %MBG("MOVE") - PARAMETER FROM %L3MBG
 ; %INV - INVERS
 ; %GET(1) - HAKLADAT SYMBOL 1 & EXIT
 ;-------------------------------------------------------------
 ; OUTPUT: %S,%TO
 ;-------------------------------------------------------------
 S ^%TYPCRT(%L3MYDVN)="VT510",%TYPCRT=^(%L3MYDVN)
 K %FLL N %FRVV S %FRVV=""
 ;;K %HBRY
 N %ZMSLX,%ZMSLY,%NMB,%NMB0 S %ZMSLX=$X,%ZMSLY=$Y
 D USE I '$D(%POSIC) D ^%L1C
 S %MOUSE=0
 ;;I '$D(%MOUSE) S %MOUSE=$$HZGTOUCH^%L2MOUSE K %screen
 S %T1=$P($H,",",2)
 N %I,%J,%L,%A,%C,%C1,%C2,%BEG,%XX,%YY,%PRKB I '$D(%C) K %FLL
 K %L1NMB("ALB")
 ;;W %ENG I $D(%HBRY) W %HBR
 S:'$D(%S) %S="" S %SS=%S S:'$D(%L1GET("TO")) %TO="" S:'$D(%FLINS) %FLINS=0 S %FHBR=0
 S:'$D(%LS) %LS=79-$X S:%LS>79 %LS=79 I %LS=0 S %S="" G 13
 S %S=$E(%S,1,%LS)
 S:'$D(%BE) %BE=""
 ;;I '$D(%FLL) R *%C:0 S:$T %FLL="" I %C=13 D KILL K %FLL Q
 D PC I $D(%L1GET) D KILL Q
 ;;S (%NMB,%NMB0)=7
 ;;I $D(%ZMSL("NMB")) S %NMB=%ZMSL("NMB")
 S %BEG=1 G CYC
PC I $D(%INV) W %CLI
 D USE ;;W $S($D(%HBRY):$TR($TR(%S,%TES1,%TES2),%TEN,%THB),1:%S)
 I $D(%HBRY) W $$W^%L1C(%S)
 I '$D(%HBRY) W %S
 W $J("",%LS-$L(%S))
 I $G(%BE)'="E" S %pn=+%LS X %levon S %I=1
 E  S %I=$L(%S)+($L(%S)<%LS) s %pn=%LS-$L(%S) X %levon
 Q
 ;
CYC ;
 I $G(%ZMSL)'="",%ZMSL[%S&(%S'=""),$L(%S)=1 S %TO=%S,%S="" G LIMEND
 D USE S %L=$L(%S) S %A=$S(%I>%L:" ",1:$E(%S,%I))
 I $D(%FLL) G CYC01
 I %MOUSE R *%C:0 D STARTVV X:%C<0 "H .1 R *%C:0" I $T K %MS G CYC1
 K %MS ;;I %MOUSE,'$$KB^%L2MOUSE!$D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("KB")),'$D(%L1NMB("NO")) D  S:'$D(%C) %C="" S:'$G(%PRKB) %MS="" G:%C="ENTER"!(%C="") 13 G:$A(%C)<65!($A(%C)>90) CYC2 G:$T(@%C)'="" @%C G CYC2
 D ^%L1MSGBR
 I $G(%GET("TIME")) D:'$D(%FLL) RTIME(%GET("TIME")) K %FLL,%GET("TIME") G:$T CYC1 S %C=13,%TO="TIME" G CYC1
 I $G(%ZMSL("TIME")) D:'$D(%FLL) RTIME(%ZMSL("TIME")) K %FLL G:$T CYC1 D:%BEG&$D(%ZMSL("SS"))  S %C=13,%TO="TIME" G CYC1
 .W *27,7
 .D ^%L1CALL(%ZMSL("SS"),$G(%SCRN),$G(%ZMSL("SS","PAR")))
 .S %XX=%ZMSLX+1,%YY=%ZMSLY S:%YY>(23+(%TYPCRT'="PC")) %YY=23+(%TYPCRT'="PC") X %POSIC S $Y=%YY,$X=%XX D PC
CYC0 D ^%L1MSGBR
 I $D(%MS) G CYC
 R:'$D(%FLL) *%C:1 E  K %PRKB G CYC
 K %MS
CYC01 K %MS,%ZMSL("NMB") G CYC1
CYC1 ;
 K %FLL ;;I %TYPCRT["VT" K %HBRY
 S %L=$L(%S) S %A=$S(%I>%L:" ",1:$E(%S,%I))
 G:%C=13!(%C=10) 13
 I %C=46,$D(%HBRY)&(%TYPCRT'["VT") S %C=149
 I %C=38,$D(%ZMSL("bf")),%ZMSL("bf")="&<>SC" R %A D  D PC G 13
 .I $E(%A,1,3)=280 S %S=+$E(%A,4,6),KAM=$E(%A,8,12)*.001 S:KAM<.01 KAM=KAM*1000 Q
 .I $E(%A,1,3)=284!($E(%A,1,3)=220) S %S=+$E(%A,4,7),KAM=$E(%A,8,12)*.001 S:KAM<.01 KAM=KAM*1000 Q
 .S %S=+$E(%A,$L(%A)-7,255)
 I $D(%ZMSL("bf")),%ZMSL("bf")="",%BEG,%C=98!(%C=112)!(%C=66) S %BEG=0 G CYC
 I $D(%ZMSL("bf")),%ZMSL("bf")[";"!(%ZMSL("bf")["s"),%BEG,$C(%C)=";"!($C(%C)="s") S %BEG=0 K %ZMSL("bf","MUST") G:'$D(%ZMSL("NOLS")) CYC R %S D KILL Q
 I $D(%ZMSL("bf")),%ZMSL("bf")'="",%BEG,$P(%ZMSL("bf"),"<>")[$C(%C) S %BEG=0 K %ZMSL("bf","MUST") G:'$D(%ZMSL("NOLS")) CYC R %S D KILL Q
 I $L($P($G(%ZMSL("bf")),"<>")),$D(%ZMSL("bf","MUST")),%ZMSL("bf")'="",$$ABC(%C),$P(%ZMSL("bf"),"<>")'[$C(%C) S %TO="BF",%S="" G 13
 I $L($P($G(%ZMSL("bf")),"<>")),$D(%ZMSL("bf","MUST")),%ZMSL("bf")'="",$$ABC(%C),$P(%ZMSL("bf"),"<>")[$C(%C) S %BEG=0 K %ZMSL("bf","MUST") G CYC
 I $$ABC(%C) K %FLL G SYM
 S %BEG=0
 ;
READ G:%TYPCRT="PC" 27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
 ;
27 I %C=27 D DELAY R:'$D(%FLL)!'$D(%C1) *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL)!'$D(%C2) *%C2:%WAIT Q:%C2<0  S:%C2>0 C=%C1_%C2 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL)!'$D(%C3) *%C3:%WAIT Q:%C3<0  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL)!'$D(%C4) *%C4:%WAIT S:%C4>0 C=C_%C4
 I %C=27 G ESC
 I %C=0 S %TO="" D DELAY R:'$D(%FLL) *%C1:%WAIT D DELAY R:'$D(%FLL) *%C2:%WAIT I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<121))!(%C1>129):"0"_%C1,1:60+%C1) G:%C>160 SYM
 K %FLL I %C=25 S %TO="END" G 13
 I %C=5 S %TO="DEL" G 13
 I %C=7 S %TO="DBL" G 13
 I %C=13!(%C=10) G 13
 I %C=24 W *27,7 N %XXZMS,%YYZMS S %XXZMS=%ZMSLX,%YYZMS=%ZMSLY D ^%L1CLC S:$D(%L1CLC("F")) %S=$E(%L1CLC,1,%LS) K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC S $X=%XX,$Y=%YY D PC G CYC
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 G CYC
CYC2 S %C=$S(%C="":13,1:$A(%C)) S:$G(%L1NMB("ALB"))=1 %HBRY="" G CYC1
SYM ;
 ;;S %L1NMB("NO")=""
 D STARTVV
 I $G(%ZMSL)'="",%ZMSL[$C(%C) S %TO=$C(%C) G LIMEND
 I $D(CIST),CIST="" S %TO=$C(%C) G 13
 ;;I $D(%FL),%BE'="E",%I=1,%BEG,'%FLINS S %S="" D PC
 I %BE'="E",%I=1,%BEG,'%FLINS S %S="" D PC
 S %BEG=0
 K %FL W:%I>%LS *7 G:%I>%LS CYC
 ;;S:%C=117&'$G(%FHBR) %C=46
 I $D(CIST),CIST'[$C(%C) W *7 G CYC
 ;;W:$D(%HBRY) %HBR
 I %FLINS D INSERT G:%L=+%LS 13:$D(%ZMSL("LS")),CYC0 S %L=$L(%S)
 I $G(%BE)="*" W "*" G SYM1
 ;;W " %C="_%C_" %HBRY="_$D(%HBRY)
 I $D(%HBRY) D
 .;;W $TR($C(%C),%TEN,%THB) S:%C>95&(%C<123) %FHBR=1,%FLINS=1
 .S:%C>95&(%C<123)!(%C=44) %FHBR=1,%FLINS=1
 .;;I %C=44 W $C(250) Q
 .S %ergdos=+$G(^ERGDOS)
 .W $$WC^%S2ERG($C(%C),"I")
 ;
 I '$D(%HBRY) W $C(%C)
 ;
SYM1 ;;S %S=$E(%S,1,%I-1)_$S('$D(%HBRY):$C(%C),1:$TR($C(%C),%TES2,%TES1))_$E(%S,%I+1,%L) S:'%FHBR %I=%I+1 I %FHBR W *8
 S %S=$E(%S,1,%I-1)_$$SMB^%S2ERG(%C)_$E(%S,%I+1,%L)
 S:'%FHBR %I=%I+1
 I %FHBR W *8
 I $L(%S)=+%LS,$D(%ZMSL("LS")) G 13
 G:$D(%GET(1)) 13
 I '$D(%MS) G CYC0
 K %MS G CYC
9 ;
 G:%I>%LS CYC S %J=%I+8 S:%J>%L %J=%L+1 S %pn=%J-%I G:%pn=0 CYC
 X %pravon S %I=%J G CYC0
15 ;
 G:%I=1 CYC S %J=%I-8 S:%J'>0 %J=1 S %pn=%I-%J X %levon S %I=%J G CYC0
TAB I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TAB" G 13
  I $D(CIST),CIST="" S %TO="TAB" G 13
  G 9
TABN I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TABN" D DELAY R *%C1:0 G 13
  I $D(CIST),CIST="" S %TO="TAB" G 13
  G 15
23 ;
 W:$D(%HBRY) %HBR D INSERT G CYC0
INSERT W:%L=+%LS *7 Q:%L=+%LS  S %S=$E(%S,1,%I-1)_" "_$E(%S,%I,%L)
 I '$D(%HBRY) W $E(%S,%I,%L+1)
 ;
 I $D(%HBRY) D
 .;;W $TR($TR($E(%S,%I,%L+1),%TES1,%TES2),%TEN,%THB)
 .W $$W^%L1C($E(%S,%I,%L+1))
 ;
 S %pn=$L($E(%S,%I,%L+1)) X %levon
 Q
 ;
 ;
ADD G 23
FINDS S %TO="FINDS" D DELAY R *%C1:0 G 13
CHISTE S %TO="F2" D DELAY R *%C1:0 G 13
CHISTS ;
 I $D(%ZMSF) S %TO="F1" D DELAY R *%C1:0 G 13
 G:%I>%L CYC S %S=$E(%S,1,%I-1) W $J("",%L-%I+1) S %pn=%L-%I+1
 X %levon G CYC0
INS  I $D(%ZMSF) S %TO="INS" D DELAY R *%C1:0 G 13
 S %FLINS='%FLINS G CYC0
SBROS ;
 I $D(%ZMSF) S %TO="F3" D DELAY R *%C1:0 G 13
 S %S=%SS S %pn=%I-1 X %levon S %I=1 G %ZMSL
IND S %TO="F4" D DELAY R *%C1:0 G 13
PRAVO ;
 I $D(CIST),CIST="" S %TO="RIGHT" G 13
 I $D(%ZMSF("LR")) S %TO="RIGHT" G 13
 I %LS=1 S %TO=$S(%XMSG(0)>1:"",1:"END") G 13
 G:%I>%LS CYC0 W %pravo S %S=$E(%S,1,%I-1)_%A_$E(%S,%I+1,%L),%I=%I+1
 ;;G:'$D(%MS) CYC0 K %MS G CYC
 G CYC0
LEVO ;
 I $D(CIST),CIST="" S %TO="LEFT" G 13
 I $D(%ZMSF("LR")) S %TO="LEFT" G 13
 I %LS=1,%I=1 S %TO=$S(%XMSG(0)>1:"END",1:"") G 13
 G:%I=1 CYC0 W %levo S %I=%I-1
 ;;G:'$D(%MS) CYC0 K %MS G CYC
 G CYC0
VNIZE ;
 I $G(^zms($I))?1"^"."%"1U.E W *27,7 K:%TYPCRT="PC" ^zms($P,"SCRN") D ^%L1ZMST S %XX=%ZMSLX,%YY=%ZMSLY X %POSIC D PC G CYC
 G CYC
PRSC ;
 D ^%L1PRSC
 G CYC
ENTER ;
13 ;
 I %TO="",$D(%ZMSL("bf")),%ZMSL("bf")="",$E(%S,$L(%S))="f"!($E(%S,$L(%S))="F") S %S=$E(%S,1,$L(%S)-1)
 I %TO="",$D(%ZMSL("bf")),$P(%ZMSL("bf"),"<>",2)'="",$P(%ZMSL("bf"),"<>",2)[$E(%S,$L(%S)) S %S=$E(%S,1,$L(%S)-1)
 ;;I %ENGLISH S %S=$$CAPIT(%S)
 ;;N %JJ,%A F %JJ=1:1:20 R *%A:0
 D KILL
 N %S0 S %S0="" 
 F %JJ=1:1:$L(%S) D
 .S %S0=%S0_$S($A(%S,%JJ)<128:$E(%S,%JJ),1:$C($A(%S,%JJ)-32))
 S %S=%S0
 D PUT
 X %XCL I $D(%ECHO) U $P:(ECHO:WRAP:WIDTH=80)
 K %L1NMB Q
KILL K %C,%LS,CIST,%I,%L,%J,%SS,%FLINS,%FLL,%BE,%ZMSL,%ZMSF K %GET("TIME")
 Q
BK G 13
LIMEND K %ZMSL G 13
SHIFT I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=2,(%NMB,%NMB0)=12 G SHIFT1
 I $G(%L1NMB("ALB"))=2 S %L1NMB("ALB")=1,%HBRY="",(%NMB,%NMB0)=12 G SHIFT1
 I $G(%L1NMB("ALB"))=1 K %L1NMB("ALB") S (%NMB,%NMB0)=7 G SHIFT1
SHIFT1 D PUT W *27,8 X:%I>1 "S %pn=%I-1 X %levon" D  G CYC
 .N %BE S %BE="E" D PC
PUT I %MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
VVERX ;
 S %TO="UP" G 13
HOME I $D(%ZMSF) S %TO="HOME" D DELAY R *%C1:0 G 13
 I %I>1 S %pn=%I-1 X %levon S %I=1
 G CYC
VNIZ ;
 S %TO="DW" G 13
ENDS I $D(%ZMSF) S %TO="ENDS" D DELAY R *%C1:0 G 13
 I %I'>%L S %pn=%L-%I+1 X %pravon S %I=%L+1
 G:'$D(%MS) CYC0 K %MS G CYC
MOD S %TO="DEL" D DELAY R *C1:0 G 13
PGUP S %TO="PGUP" D DELAY R *%C1:0 G 13
PGDN S %TO="PGDW" D DELAY R *%C1:0 G 13
PGLN S %TO="PGLN" D DELAY R *%C1:0 G 13
HELP S %TO="HELP" D DELAY R *%C1:0 G 13
PGRG S %TO="PGRG" D DELAY R *%C1:0 G 13
BEGF S %TO="BEGF" D DELAY R *%C1:0 G 13
ENDF S %TO="ENDF" D DELAY R *%C1:0
 I $D(^r($J)),$G(%SCRN)["P1HZ" D 1^P1POP ;-- PTICHAT MEGIRA
 G 13
FIND S %TO="F8" G 13
COR S %TO="F7" G 13
SAVE S %TO="F9" G 13
REST S %TO="F10" G 13
ADDL ;
 I $D(%L1SF),$D(%SCRN) N %FSTY S %FSTY=FSTY N FSTY,FSTYOLD S (FSTY,FSTYOLD)=20-%FSTY D
 .N (FSTY,FSTYOLD,%UPRCOD,%XMSGV,%XMSGN,%XMSG,%SCRN,%PAR,NM) D ^%L1C S %NM=NM N NM S NM=%NM,%ZMZT=$ZT D  S $ZT=%ZMZT S NM=%NM D VSVALL^%L1SF,PODVAL^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ
 ..S NM=.9 D PDV1^%L1SF
 ..F  K NM1 S NM=$O(^SCR(%SCRN,%PAR,NM)) Q:NM'>0  D  Q:NM=""  D:$G(NM1)="A" VSVP^%L1SF,VSVALL^%L1SF X:$D(VSVI) "K VSVI D VSV^%L1SF" S:$D(NM1) NM=NM-1 I $G(%TO)="END" S NM=$O(^SCR(%SCRN,%PAR,NM),-1) Q:NM=""  S %TO="" I NM>0 S NM=$O(^SCR(%SCRN,%PAR,NM),-1)
 ...D PDV1^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ K %L1GET S HZG=0 D ^%L1SFZ
 S %TO="F5" G 13
DELL S %TO="F6" G 13
MVUP S %TO="MVUP" G 13
MVDW S %TO="MVDW" G 13
ESC S %TO="END" G 13
DEL ;
 I $D(CIST),CIST="" S %TO="DEL" D DELAY R *%C1:0 G 13
 G:%I>%L A8 S %S=$E(%S,1,%I-1)_$E(%S,%I+1,%L) W:$D(%HBRY) %HBR W $E(%S,%I,%L-1)_" "
 S %pn=%L-%I+1 x %levon G:'$D(%MS) CYC0 K %MS G CYC
A8 G:%L=0 CYC S %S=$E(%S,1,%I-2),%I=%I-1 W %levo," ",%levo G CYC0
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:6000
 Q
 ;MDRG S %FHBR='%FHBR I %FHBR S %FLINS=1 W *27,7 S %SAY="HEBREW TEXT" X %XMSGV W *27,8 S %HBRY="" G CYC
 ;W *27,7 S %SAY="ENGLISH TEXT" X %XMSGV W *27,8 G CYC
MDRG S %FHBR='%FHBR K %HBRY I %FHBR S %FLINS=1 S %HBRY="" G CYC0
 G CYC0
HBR I '$D(%HBRY) S %HBRY="" D BEGS W $TR($TR(%S,%TES1,%TES2),%TEN,%THB) G HBR1
 N %HBRY W %ENG D BEGS W %S
HBR1 S %pn=$L(%S)-%I+1 S:%pn<0 %pn=0 X:%pn>0 %levon G CYC0
BEGS S %pn=%I-1 X:%pn>0 %levon Q
HBEN I $D(%HBRY) S %S=$E(%S,1,%I-1)_$TR($E(%S,%I,255),%THB,%TEN) G HBR
 I '$D(%HBRY) S %S=$E(%S,1,%I-1)_$TR($TR($E(%S,%I,255),%TES1,%TES2),%TEN,%THB) G HBR
CAPIT(%ST) N J,%SMB
 N J
 F J=1:1:$L(%ST) S %SMB=$E(%ST,J) D
 .I $A(%SMB)<123,$A(%SMB)>95 S $E(%ST,J)=$C($A(%SMB)-32)
 Q %ST
USE ;
 ;;I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
RTIME(%TM) ;
 N %JJ F %JJ=1:1:%TM D ^%L1MSGBR R *%C:1 Q:$T
 Q
ABC(SMB) ;
 I SMB>31&(SMB<127) Q 1
 I SMB>127&(SMB<155) Q 1
 Q 0
STARTVV Q:'$D(%FRVV)
 S %STARTVV=$P($H,",",2) K %FRVV
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L1ZMSL0
%ZMSL ;               [ 15.03.19 07:51 ] [ 15.04.08 12:54 ] [ 03.04.08 11:56 ] 
 ;PARAMETERS :
 ;  %HBRY - $D - LEKABEL OTIJOT IVRIJOT
 ; %FLINS - $D - INSERT , '$D - OVERLAY
 ; %FLL - FIRST SYMBOL AUX
 ; %LS - LENGTH
 ; CIST - SET SYMBOLS SHE MUTAR LEHACHNIS (CIST="": COL MAKASH -> %TO)
 ; %BE="E"- LHATHIL HAKLADAT TEXT MI SOF SHURA
 ; %ZMSL - SYMBOLS SET THAT INTERRUPT INPUT -> %TO
 ; %ZMSL("bf") ;-- B<>F - PRE- & POST SYMBOLS
 ; %ZMSL("LS") : IF $L(%S)=%LS - EXIT
 ; %ZMSF - TAB,INS,PGUP,PGDN,F1-F10,END,HOME - MESAJEMIM HAKLADA - > %TO
 ; %MBG("MOVE") - PARAMETER FROM %L3MBG
 ; %INV - INVERS
 ; %GET(1) - HAKLADAT SYMBOL 1 & EXIT
 ;-------------------------------------------------------------
 ; OUTPUT: %S,%TO
 ;-------------------------------------------------------------
 K %FLL N %FRVV S %FRVV=""
 N %ZMSLX,%ZMSLY,%NMB,%NMB0 S %ZMSLX=$X,%ZMSLY=$Y
 D USE I '$D(%POSIC) D ^%L1C
 ;;I '$D(%MOUSE) S %MOUSE=$$INIT^%L2MOUSE K %screen
 I '$D(%MOUSE) S %MOUSE=$$HZGTOUCH^%L2MOUSE K %screen
 S %T1=$P($H,",",2)
 N %I,%J,%L,%A,%C,%C1,%C2,%BEG,%XX,%YY,%PRKB I '$D(%C) K %FLL
 K %L1NMB("ALB")
 W %ENG I $D(%HBRY) W %HBR
 S:'$D(%S) %S="" S %SS=%S S:'$D(%L1GET("TO")) %TO="" S:'$D(%FLINS) %FLINS=0 S %FHBR=0
 S:'$D(%LS) %LS=79-$X S:%LS>79 %LS=79 I %LS=0 S %S="" G 13
 S %S=$E(%S,1,%LS)
 S:'$D(%BE) %BE=""
 ;;I '$D(%FLL) R *%C:0 S:$T %FLL="" I %C=13 D KILL K %FLL Q
 D PC I $D(%L1GET) D KILL Q
 ;;S (%NMB,%NMB0)=7
 ;;I $D(%ZMSL("NMB")) S %NMB=%ZMSL("NMB")
 S %BEG=1 G CYC
PC I $D(%INV) W %CLI
 D USE W $S($D(%HBRY):$TR($TR(%S,%TES1,%TES2),%TEN,%THB),1:%S)
 W $J("",%LS-$L(%S))
 I $G(%BE)'="E" S %pn=+%LS X %levon S %I=1
 E  S %I=$L(%S)+($L(%S)<%LS) s %pn=%LS-$L(%S) X %levon
 Q
CYC ;
 I $G(%ZMSL)'="",%ZMSL[%S&(%S'=""),$L(%S)=1 S %TO=%S,%S="" G LIMEND
 D USE S %L=$L(%S) S %A=$S(%I>%L:" ",1:$E(%S,%I))
 I $D(%FLL) G CYC01
 I %MOUSE R *%C:0 D STARTVV X:%C<0 "H .1 R *%C:0" I $T K %MS G CYC1
 K %MS ;;I %MOUSE,'$$KB^%L2MOUSE!$D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("KB")),'$D(%L1NMB("NO")) D  S:'$D(%C) %C="" S:'$G(%PRKB) %MS="" G:%C="ENTER"!(%C="") 13 G:$A(%C)<65!($A(%C)>90) CYC2 G:$T(@%C)'="" @%C G CYC2
 I %MOUSE,'$$KB^%L2MOUSE!($$KB^%L2MOUSE&$G(^P1PRM("VKB"))) D  S:'$D(%C) %C="" S:'$G(%PRKB) %MS="" G:%C="ENTER"!(%C="") 13 G:$A(%C)<65!($A(%C)>90) CYC2 G:$T(@%C)'="" @%C G CYC2
 .S %ZMSF="",%L1NMB("ZX")=%ZMSLX+.1#80-.1,%L1NMB("ZY")=%ZMSLY
 .W *27,7 S %C=$$^%L1NMB("") W *27,8
 .I %C="ENTER"!(%C="") S %TO=""
 D ^%L1MSGBR
 I $G(%GET("TIME")) D:'$D(%FLL) RTIME(%GET("TIME")) K %FLL,%GET("TIME") G:$T CYC1 S %C=13,%TO="TIME" G CYC1
 I $G(%ZMSL("TIME")) D:'$D(%FLL) RTIME(%ZMSL("TIME")) K %FLL G:$T CYC1 D:%BEG&$D(%ZMSL("SS"))  S %C=13,%TO="TIME" G CYC1
 .W *27,7
 .D ^%L1CALL(%ZMSL("SS"),$G(%SCRN),$G(%ZMSL("SS","PAR")))
 .S %XX=%ZMSLX+1,%YY=%ZMSLY S:%YY>(23+(%TYPCRT'="PC")) %YY=23+(%TYPCRT'="PC") X %POSIC S $Y=%YY,$X=%XX D PC
CYC0 D ^%L1MSGBR
 I $D(%MS) G CYC
 R:'$D(%FLL) *%C:1 E  K %PRKB G CYC
 K %MS
CYC01 K %MS,%ZMSL("NMB") G CYC1
CYC1 ;
 K %FLL I %TYPCRT["VT" K %HBRY
 S %L=$L(%S) S %A=$S(%I>%L:" ",1:$E(%S,%I))
 G:%C=13!(%C=10) 13
 I %C=46,$D(%HBRY)&(%TYPCRT'["VT") S %C=149
 I %C=38,$D(%ZMSL("bf")),%ZMSL("bf")="&<>SC" R %A D  D PC G 13
 .I $E(%A,1,3)=280 S %S=+$E(%A,4,6),KAM=$E(%A,8,12)*.001 S:KAM<.01 KAM=KAM*1000 Q
 .I $E(%A,1,3)=284!($E(%A,1,3)=220) S %S=+$E(%A,4,7),KAM=$E(%A,8,12)*.001 S:KAM<.01 KAM=KAM*1000 Q
 .S %S=+$E(%A,$L(%A)-7,255)
 I $D(%ZMSL("bf")),%ZMSL("bf")="",%BEG,%C=98!(%C=112)!(%C=66) S %BEG=0 G CYC
 I $D(%ZMSL("bf")),%ZMSL("bf")[";"!(%ZMSL("bf")["s"),%BEG,$C(%C)=";"!($C(%C)="s") S %BEG=0 K %ZMSL("bf","MUST") G:'$D(%ZMSL("NOLS")) CYC R %S D KILL Q
 I $D(%ZMSL("bf")),%ZMSL("bf")'="",%BEG,$P(%ZMSL("bf"),"<>")[$C(%C) S %BEG=0 K %ZMSL("bf","MUST") G:'$D(%ZMSL("NOLS")) CYC R %S D KILL Q
 I $L($P($G(%ZMSL("bf")),"<>")),$D(%ZMSL("bf","MUST")),%ZMSL("bf")'="",$$ABC(%C),$P(%ZMSL("bf"),"<>")'[$C(%C) S %TO="BF",%S="" G 13
 I $L($P($G(%ZMSL("bf")),"<>")),$D(%ZMSL("bf","MUST")),%ZMSL("bf")'="",$$ABC(%C),$P(%ZMSL("bf"),"<>")[$C(%C) S %BEG=0 K %ZMSL("bf","MUST") G CYC
 I $$ABC(%C) K %FLL G SYM
 S %BEG=0
 ;
READ G:%TYPCRT="PC" 27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
 ;
27 I %C=27 D DELAY R:'$D(%FLL)!'$D(%C1) *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL)!'$D(%C2) *%C2:%WAIT Q:%C2<0  S:%C2>0 C=%C1_%C2 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL)!'$D(%C3) *%C3:%WAIT Q:%C3<0  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL)!'$D(%C4) *%C4:%WAIT S:%C4>0 C=C_%C4
 I %C=27 G ESC
 I %C=0 S %TO="" D DELAY R:'$D(%FLL) *%C1:%WAIT D DELAY R:'$D(%FLL) *%C2:%WAIT I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<121))!(%C1>129):"0"_%C1,1:60+%C1) G:%C>160 SYM
 K %FLL I %C=25 S %TO="END" G 13
 I %C=5 S %TO="DEL" G 13
 I %C=7 S %TO="DBL" G 13
 I %C=13!(%C=10) G 13
 I %C=24 W *27,7 N %XXZMS,%YYZMS S %XXZMS=%ZMSLX,%YYZMS=%ZMSLY D ^%L1CLC S:$D(%L1CLC("F")) %S=$E(%L1CLC,1,%LS) K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC S $X=%XX,$Y=%YY D PC G CYC
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 G CYC
CYC2 S %C=$S(%C="":13,1:$A(%C)) S:$G(%L1NMB("ALB"))=1 %HBRY="" G CYC1
SYM ;
 ;;S %L1NMB("NO")=""
 D STARTVV
 I $G(%ZMSL)'="",%ZMSL[$C(%C) S %TO=$C(%C) G LIMEND
 I $D(CIST),CIST="" S %TO=$C(%C) G 13
 ;;I $D(%FL),%BE'="E",%I=1,%BEG,'%FLINS S %S="" D PC
 I %BE'="E",%I=1,%BEG,'%FLINS S %S="" D PC
 S %BEG=0
 K %FL W:%I>%LS *7 G:%I>%LS CYC
 ;;S:%C=117&'$G(%FHBR) %C=46
 I $D(CIST),CIST'[$C(%C) W *7 G CYC
 ;;W:$D(%HBRY) %HBR
 I %FLINS D INSERT G:%L=+%LS 13:$D(%ZMSL("LS")),CYC0 S %L=$L(%S)
 I $G(%BE)="*" W "*" G SYM1
 I $D(%HBRY) W $TR($C(%C),%TEN,%THB) S:%C>95&(%C<123) %FHBR=1,%FLINS=1
 I '$D(%HBRY) W $C(%C)
SYM1 S %S=$E(%S,1,%I-1)_$S('$D(%HBRY):$C(%C),1:$TR($C(%C),%TES2,%TES1))_$E(%S,%I+1,%L) S:'%FHBR %I=%I+1 I %FHBR W *8
 I $L(%S)=+%LS,$D(%ZMSL("LS")) G 13
 G:$D(%GET(1)) 13
 I '$D(%MS) G CYC0
 K %MS G CYC
 ;;I $D(%HBRY) W $TR($TR(%S,%TES1,%TES2),%TEN,%THB)
 ;;I '$D(%HBRY) W %S
9 ;
 G:%I>%LS CYC S %J=%I+8 S:%J>%L %J=%L+1 S %pn=%J-%I G:%pn=0 CYC
 X %pravon S %I=%J G CYC0
15 ;
 G:%I=1 CYC S %J=%I-8 S:%J'>0 %J=1 S %pn=%I-%J X %levon S %I=%J G CYC0
TAB I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TAB" G 13
  I $D(CIST),CIST="" S %TO="TAB" G 13
  G 9
TABN I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TABN" D DELAY R *%C1:0 G 13
  I $D(CIST),CIST="" S %TO="TAB" G 13
  G 15
23 ;
 W:$D(%HBRY) %HBR D INSERT G CYC0
INSERT W:%L=+%LS *7 Q:%L=+%LS  S %S=$E(%S,1,%I-1)_" "_$E(%S,%I,%L)
 I '$D(%HBRY) W $E(%S,%I,%L+1)
 I $D(%HBRY) W $TR($TR($E(%S,%I,%L+1),%TES1,%TES2),%TEN,%THB)
 S %pn=$L($E(%S,%I,%L+1)) X %levon
 Q
ADD G 23
FINDS S %TO="FINDS" D DELAY R *%C1:0 G 13
CHISTE S %TO="F2" D DELAY R *%C1:0 G 13
CHISTS ;
 I $D(%ZMSF) S %TO="F1" D DELAY R *%C1:0 G 13
 G:%I>%L CYC S %S=$E(%S,1,%I-1) W $J("",%L-%I+1) S %pn=%L-%I+1
 X %levon G CYC0
INS  I $D(%ZMSF) S %TO="INS" D DELAY R *%C1:0 G 13
 S %FLINS='%FLINS G CYC0
SBROS ;
 I $D(%ZMSF) S %TO="F3" D DELAY R *%C1:0 G 13
 S %S=%SS S %pn=%I-1 X %levon S %I=1 G %ZMSL
IND S %TO="F4" D DELAY R *%C1:0 G 13
PRAVO ;
 I $D(CIST),CIST="" S %TO="RIGHT" G 13
 I $D(%ZMSF("LR")) S %TO="RIGHT" G 13
 I %LS=1 S %TO=$S(%XMSG(0)>1:"",1:"END") G 13
 G:%I>%LS CYC0 W %pravo S %S=$E(%S,1,%I-1)_%A_$E(%S,%I+1,%L),%I=%I+1
 ;;G:'$D(%MS) CYC0 K %MS G CYC
 G CYC0
LEVO ;
 I $D(CIST),CIST="" S %TO="LEFT" G 13
 I $D(%ZMSF("LR")) S %TO="LEFT" G 13
 I %LS=1,%I=1 S %TO=$S(%XMSG(0)>1:"END",1:"") G 13
 G:%I=1 CYC0 W %levo S %I=%I-1
 ;;G:'$D(%MS) CYC0 K %MS G CYC
 G CYC0
VNIZE ;
 I $G(^zms($I))?1"^"."%"1U.E W *27,7 K:%TYPCRT="PC" ^zms($P,"SCRN") D ^%L1ZMST S %XX=%ZMSLX,%YY=%ZMSLY X %POSIC D PC G CYC
 G CYC
PRSC ;
 D ^%L1PRSC
 G CYC
ENTER ;
13 ;
 I %TO="",$D(%ZMSL("bf")),%ZMSL("bf")="",$E(%S,$L(%S))="f"!($E(%S,$L(%S))="F") S %S=$E(%S,1,$L(%S)-1)
 I %TO="",$D(%ZMSL("bf")),$P(%ZMSL("bf"),"<>",2)'="",$P(%ZMSL("bf"),"<>",2)[$E(%S,$L(%S)) S %S=$E(%S,1,$L(%S)-1)
 ;;I %ENGLISH S %S=$$CAPIT(%S)
 ;;N %JJ,%A F %JJ=1:1:20 R *%A:0
 D KILL
 D PUT
 X %XCL I $D(%ECHO) U $P:(ECHO:WRAP:WIDTH=80)
 K %L1NMB Q
KILL K %C,%LS,CIST,%I,%L,%J,%SS,%FLINS,%FLL,%BE,%ZMSL,%ZMSF K %GET("TIME")
 Q
BK G 13
LIMEND K %ZMSL G 13
SHIFT I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=2,(%NMB,%NMB0)=12 G SHIFT1
 I $G(%L1NMB("ALB"))=2 S %L1NMB("ALB")=1,%HBRY="",(%NMB,%NMB0)=12 G SHIFT1
 I $G(%L1NMB("ALB"))=1 K %L1NMB("ALB") S (%NMB,%NMB0)=7 G SHIFT1
SHIFT1 D PUT W *27,8 X:%I>1 "S %pn=%I-1 X %levon" D  G CYC
 .N %BE S %BE="E" D PC
PUT I %MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
VVERX ;
 S %TO="UP" G 13
HOME I $D(%ZMSF) S %TO="HOME" D DELAY R *%C1:0 G 13
 I %I>1 S %pn=%I-1 X %levon S %I=1
 G CYC
VNIZ ;
 S %TO="DW" G 13
ENDS I $D(%ZMSF) S %TO="ENDS" D DELAY R *%C1:0 G 13
 I %I'>%L S %pn=%L-%I+1 X %pravon S %I=%L+1
 G:'$D(%MS) CYC0 K %MS G CYC
MOD S %TO="DEL" D DELAY R *C1:0 G 13
PGUP S %TO="PGUP" D DELAY R *%C1:0 G 13
PGDN S %TO="PGDW" D DELAY R *%C1:0 G 13
PGLN S %TO="PGLN" D DELAY R *%C1:0 G 13
HELP S %TO="HELP" D DELAY R *%C1:0 G 13
PGRG S %TO="PGRG" D DELAY R *%C1:0 G 13
BEGF S %TO="BEGF" D DELAY R *%C1:0 G 13
ENDF S %TO="ENDF" D DELAY R *%C1:0
 I $D(^r($J)),$G(%SCRN)["P1HZ" D 1^P1POP ;-- PTICHAT MEGIRA
 .;;N J,%MDP D MDP^P1PC Q:'$G(PRINT)  L ^[$$^%L1GLD]pc(PRINT) S J=$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1
 .;;S ^[$$^%L1GLD]pc(PRINT,J)=$G(%MDP("P"))
 G 13
FIND S %TO="F8" G 13
COR S %TO="F7" G 13
SAVE S %TO="F9" G 13
REST S %TO="F10" G 13
ADDL ;
 I $D(%L1SF),$D(%SCRN) N %FSTY S %FSTY=FSTY N FSTY,FSTYOLD S (FSTY,FSTYOLD)=20-%FSTY D
 .N (FSTY,FSTYOLD,%UPRCOD,%XMSGV,%XMSGN,%XMSG,%SCRN,%PAR,NM) D ^%L1C S %NM=NM N NM S NM=%NM,%ZMZT=$ZT D  S $ZT=%ZMZT S NM=%NM D VSVALL^%L1SF,PODVAL^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ
 ..S NM=.9 D PDV1^%L1SF
 ..F  K NM1 S NM=$O(^SCR(%SCRN,%PAR,NM)) Q:NM'>0  D  Q:NM=""  D:$G(NM1)="A" VSVP^%L1SF,VSVALL^%L1SF X:$D(VSVI) "K VSVI D VSV^%L1SF" S:$D(NM1) NM=NM-1 I $G(%TO)="END" S NM=$O(^SCR(%SCRN,%PAR,NM),-1) Q:NM=""  S %TO="" I NM>0 S NM=$O(^SCR(%SCRN,%PAR,NM),-1)
 ...D PDV1^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ K %L1GET S HZG=0 D ^%L1SFZ
 S %TO="F5" G 13
DELL S %TO="F6" G 13
MVUP S %TO="MVUP" G 13
MVDW S %TO="MVDW" G 13
ESC S %TO="END" G 13
DEL ;
 I $D(CIST),CIST="" S %TO="DEL" D DELAY R *%C1:0 G 13
 G:%I>%L A8 S %S=$E(%S,1,%I-1)_$E(%S,%I+1,%L) W:$D(%HBRY) %HBR W $E(%S,%I,%L-1)_" "
 S %pn=%L-%I+1 x %levon G:'$D(%MS) CYC0 K %MS G CYC
A8 G:%L=0 CYC S %S=$E(%S,1,%I-2),%I=%I-1 W %levo," ",%levo G CYC0
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:6000
 Q
 ;MDRG S %FHBR='%FHBR I %FHBR S %FLINS=1 W *27,7 S %SAY="HEBREW TEXT" X %XMSGV W *27,8 S %HBRY="" G CYC
 ;W *27,7 S %SAY="ENGLISH TEXT" X %XMSGV W *27,8 G CYC
MDRG S %FHBR='%FHBR I %FHBR S %FLINS=1 S %HBRY="" G CYC0
 G CYC0
HBR I '$D(%HBRY) S %HBRY="" D BEGS W $TR($TR(%S,%TES1,%TES2),%TEN,%THB) G HBR1
 N %HBRY W %ENG D BEGS W %S
HBR1 S %pn=$L(%S)-%I+1 S:%pn<0 %pn=0 X:%pn>0 %levon G CYC0
BEGS S %pn=%I-1 X:%pn>0 %levon Q
HBEN I $D(%HBRY) S %S=$E(%S,1,%I-1)_$TR($E(%S,%I,255),%THB,%TEN) G HBR
 I '$D(%HBRY) S %S=$E(%S,1,%I-1)_$TR($TR($E(%S,%I,255),%TES1,%TES2),%TEN,%THB) G HBR
CAPIT(%ST) N J,%SMB
 N J
 F J=1:1:$L(%ST) S %SMB=$E(%ST,J) D
 .I $A(%SMB)<123,$A(%SMB)>95 S $E(%ST,J)=$C($A(%SMB)-32)
 Q %ST
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
RTIME(%TM) ;
 N %JJ F %JJ=1:1:%TM D ^%L1MSGBR R *%C:1 Q:$T
 Q
ABC(SMB) ;
 I SMB>31&(SMB<127) Q 1
 I SMB>127&(SMB<155) Q 1
 Q 0
STARTVV Q:'$D(%FRVV)
 S %STARTVV=$P($H,",",2) K %FRVV
 Q
 

%L1ZMST
%L1ZMST ;   [ 12.02.07 14:50 ] [ 02.07.04 10:21 ] [ 28.06.04 13:40 ]
 Q:'$D(^zms($P))  Q:$D(^zms($P,"NO"))  W *27,7
 N %XX,%YY
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 N I,J I %TYPCRT="PC" N %SCRN
 D SAVE^%L3MBGG
 N %XXZMS,%YYZMS,SH,SCH,%S,%FNAME,FRST
 S %XXZMS=$G(%XX,$X),%YYZMS=$G(%YY,$Y)
 I $G(^zms($P))'="" D
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%SCRN,%UCI) D ^%L1C
 .I '$D(^zms($P,"SCRN")),$L($G(%SCRN)) S ^("SCRN")=$G(%SCRN),^("SCRN","TMP")=""
 .N %SCRN
 .I $G(^zms($P,"SCRN"))'="" D
 ..S %SCRN=^("SCRN"),(%NG,%NGF)=$$GN^%L1TMP("")
 ..N %N S %N="" F  S %N=$O(^SCR(%SCRN,"P","REF",%N)) Q:%N=""  D SVGLB(^(%N))
 ..I $D(^SCR(%SCRN,"G","REF")) D SVGLB(^SCR(%SCRN,"G","REF"))
 ..S %NGL=%NG-1
 .;
 .S (%UCIR,%UCIG)=""
 .I $D(^zms($P,"UCI")) D
 ..S %UCOR=$ZROUTINES,%UCOG=$ZGBLDIR
 ..S %UCIR=$P(^zms($P,"UCI"),"^"),%UCIG=$P(^("UCI"),"^",2)
 ..I $L(%UCIG) S MAC1="^zms($P)",MAC2="^[%UCIG]zms($P)" D ^%S1GC1 K ^zms($P)
 ..I $L(%UCIR) S $ZROUTINES=%UCIR
 ..I $L(%UCIG) S $ZGBLDIR=%UCIG
 .;
 .S %N="" F  S %N=$O(^zms($P,"V",%N)) Q:%N=""  D
 ..I $D(^(%N))>9 S MAC1="^zms($P,""V"",%N)",MAC2=%N D ^%S1GC1 Q
 ..I $D(^(%N))#2 S @%N=^(%N) Q
 .;
 .I $G(^zms($P))'="" D @^zms($P)
 .
 .I $L($G(%UCIR)) D
 ..S MAC1="^zms($P)",MAC2="^[%UCOG]zms($P)" D ^%S1GC1 K ^zms($P)
 ..S:$D(%UCOR) $ZROUTINES=%UCOR S:$D(%UCOG) $ZGBLDIR=%UCOG
 .
 .I $G(^zms($P,"SCRN"))'="" S %SCRN=^("SCRN") D
 ..S %NG=+$G(%NGF)
 ..N %N S %N="" F  S %N=$O(^SCR(%SCRN,"P","REF",%N)) Q:%N=""  D RSGLB(^(%N))
 ..I $D(^SCR(%SCRN,"G","REF")) D RSGLB(^SCR(%SCRN,"G","REF"))
 ;
 D ^%L1C
 I $L($G(^zms($P,"SCRN"))),^("SCRN")'="-",$G(^("RESTPRG"))="" X %chista,%XCL S %SCRN=^zms($P,"SCRN") D A^%L1SC G E
 I $G(^zms($P,"RESTPRG"))'="" S %RESTPRG=^("RESTPRG")
 I $D(^zms($P,"NOVIDEO")) S %NOVIDEO=""
 D REST^%L3MBGG
E W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC S $X=%XX,$Y=%YY
 I $D(^zms($P,"SCRN","TMP")) K ^zms($P,"SCRN")
 Q
SVGLB(%GLB) ;
 S %GLB=$P(%GLB,",")
 I $E(%GLB,$L(%GLB))'=")" S %GLB=%GLB_")"
 S %ER=""
 D GS^%L1TMP(%NG,"%L1ZMST",%GLB,%ER) S %NG=$$GN^%L1TMP("")
 Q
RSGLB(%GLB) ;
 S %GLB=$P(%GLB,",")
 I $E(%GLB,$L(%GLB))'=")" S %GLB=%GLB_")" K @%GLB
 D GR^%L1TMP(%NG,"%L1ZMST",%GLB) D KL^%L1TMP(%NG) S %NG=%NG+1
 Q

%L1ZOS
%L1ZOS(FNC,PRM1,PRM2) ; [ 20.07.08 12:41 ] [ 16.07.08 09:24 ] [ 08.04.07 08:50 ]
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 I $T(@FNC)'="" G @FNC
 Q -1
2 I '$$EXIST(PRM1) Q -1
 N $ZT S $ZT="ZG "_$ZL_":ER^%L1ZOS"
 O PRM1 C PRM1:(DELETE)
 Q 1
3 I '$$EXIST(PRM1) Q -1
 N $ZT S $ZT="ZG "_$ZL_":ER^%L1ZOS"
 I $$EXIST(PRM2) Q -2
 O PRM1 C PRM1:(RENAME=PRM2)
 Q 1
4 Q $ZV
6 ;
 N $ZT S $ZT="ZG "_$ZL_":ER^%L1ZOS"
 ZSY "mkdir "_PRM1
 Q 1
7 N $ZT S $ZT="ZG "_$ZL_":ER^%L1ZOS"
 ZSY "rmdir "_PRM1
 Q 1
8 N $ZT S $ZT="ZG "_$ZL_":ER^%L1ZOS"
 ZSY "cd "_PRM1
 ;;w !,$ZDIR,!
 Q 1
10 I '$$EXIST(PRM1) Q -1
 I '$$SIZE(PRM1) Q -1
 Q 1
11 Q $ZDIR
12 N $ZT S $ZT="ZG "_$ZL_":ER^%L1ZOS"
 I $ZSEARCH("*.@@@")
 N A S A=$ZSEARCH(PRM1)
 I A="" Q -1
 Q A
13 Q $ZSEARCH(PRM1)
ER Q -9
EXIST(FILE) ;
 I $ZSEARCH(FILE_"-")
 Q $L($ZSEARCH(FILE))>0
SIZE(FILE) ;
 I '$$EXIST(FILE) Q 0
 Q $P($$^%L1FLP(FILE),"^",2)

%L1ZPC
%L1ZPC(%PRM) ; [ 30.01.05  3:10 PM ] [
 N %OTB1,%OTB2
 I '$L($G(%PRM)) S %PRM="99,97"
 S %OTB1=$P(%PRM,",")
 S %OTB2=$P(%PRM,",",2)
 S %GET=%OTB1_" - qitcdl"
 I $P(%PRM,",",2) S %GET=%GET_", "_%OTB2_" - EXCEL-l xiardl"
 D N^%L1GET S:%TO="F9" %S=99
 S:%TO="F7" %TO=97
 I %S=97!(%S=99) S:%S=97 %L1SCPC("EXCEL")="" D ^%L1SCPC
 Q

%L1ZU
%L1ZU(%PRM) ; [ 17.07.03 13:33 ] [
 I %PRM=0 Q $$FUNC^%UCASE($ZPARSE($ZGBLDIR,"NAME"))
 Q ""

%L1ZV
%L1ZV(DUMP) ; [ 06/06/98  2:49 PM ] [
 Q $TR($ZV,"MSM-PC/386","MUMPS-PC")

%L2CLNT
%L2CLNT(%ZNHost,%ZNPort,%ZNTimeS,%ZNDev) ; [ 08.04.07 08:15 ] [ 08.08.06 13:10 ] [ 01.02.06 13:49 ]
 new %Z0,%ZNReq,%ZNRsp
 ;
 ; set a new errortrap
 N $ZT ;;S $ZT="G EROP^%L2CLNT"
 S $ZT="ZG "_$ZL_":EROP^%L2CLNT"
 kill ^SCKCLI($job)
 ;
 ; Construct a dummy, but "unique", devicename.
 ;  set %ZNDev="SCK$"_$J
 ;
 ; Open the device:
 OPEN %ZNDev:(CONNECT=%ZNHost_":"_%ZNPort_":TCP":DELIMITER=$CHAR(13,10,58,27,95,58,12):ATTACH="client"):%ZNTimeS:"SOCKET"
 else  set ^SCKCLI($job)="-1,NotOpen" quit
 U %ZNDev:(NOECHO:NOWRAP:NOCENABLE:PASTHRU:TERM=$C(13))
 Q
EROP set ^SCKCLI($job)="-1,NotOpen" quit

%L2CLNT0
%L2CLNT(%ZNHost,%ZNPort,%ZNTimeS,%ZNDev) ; [ 06.11.05 18:40 ] [ 19.09.05 17:29 ] [ 11.09.05 17:58 ] [
 new %Z0,%ZNReq,%ZNRsp
 ;
 ; set a new errortrap
 new $ZTRAP set $ZTRAP="ZGOTO "_$ZLEVEL_":clientQ"
 kill ^SCKCLI($job)
 ;
 ; Construct a dummy, but "unique", devicename.
 ;  set %ZNDev="SCK$"_$J
 ;
 ; Open the device:
 OPEN %ZNDev:(CONNECT=%ZNHost_":"_%ZNPort_":TCP":DELIMITER=$CHAR(13,10,58,27,95):ATTACH="client"):%ZNTimeS:"SOCKET"
 else  set ^SCKCLI($job)="-1,NotOpen" quit
 Q
 ;
 ; Adjust errortrap after open (need to close)
 ;;set $ZTRAP="ZGOTO "_$ZLEVEL_":clientC"
 s $ZT=""
 set ^SCKCLI($job)=0
 ;
 ; After successful OPEN, USE will fill $KEY with
 ; "ESTABLISHED|socket_handle|host_ip_address"
 USE %ZNDev:(IOERROR="TRAP":EXCEPTION="ZGOTO "_$ZLEVEL_":clientD")
 set ^SCKCLI($job,0,3)=$KEY
 set ^SCKCLI($job)=0
 ; use ZSHOW command "D" and "I" before closing the device
 Q
clientC ZSHOW "DI":^SCKCLI($job,"CLOSE") CLOSE %ZNDev
 ;
 ; clientQ - just QUIT
 ;
clientQ QUIT
 ;
 ; clientD - Device exception occured
 ;
clientD set ^SCKCLI($job)="-11,IOException" goto clientC

%L2DAT
%L2DAT U $P:(NOECHO:NOWRAP) ; DATE [ 08/02/91  9:52 AM ]
 S:'$D(%XX) %XX=$X-8 S:%XX<0 %XX=0 S %XX1=%XX
 S:'$D(%YY) %YY=$Y S:%XX>72 %XX=72 S:%YY>23 %YY=23
 X %POSIC S %TO=""
 S %S="" I $D(%L1DS) S %S=%L1DS
 W %ENG,%CLI,$J($E(%S,1,2),2) X %XCL W "."
 W %ENG,%CLI,$J($E(%S,3,4),2) X %XCL W "."
 W %ENG,%CLI,$J($E(%S,5,6),2)
VDD X %POSIC
 D VV G:%S="" END
 S %DD=$E(%S,1,2),%MM=$E(%S,3,4),%HH=$E(%S,5,6)
 S %DD=$TR(%DD," ",0)
 I %DD>31!(%DD<1) W *7 H 1 G %L1DAT
 S %MM=$TR(%MM," ",0)
 I %MM>12!(%MM<1) W *7 H 1 G %L1DAT
 S %HH=$TR(%HH," ",0)
 I %HH<90 W *7 H 1 G %L1DAT
 S %L1DAT=%HH_%MM_%DD
 S %L1DAT1=%DD_"."_%MM_"."_%HH
 K %HH,%MM,%DD G END
 -
VV U 0:(0::::65) S %I=1
VR R *A Q:A=13&($L(%S)=6!('$L(%S)))
 I A=13&($L(%S)=1) S A=$A(%S),%S=0 W *8,0 G VM
 I A=13&($L(%S)=3) S A=$A($E(%S,3)),%S=$E(%S,1,2)_"0" W *8,0 G VM
 G:A=13 VR
 I A=127!(A=8) G:%S="" VV S A=32 G:%I'>$L(%S) VM D  G VR
 .I $L(%S)=1 S %S="" W *8," ",*8 S %I=1 Q
 .S %S=$E(%S,1,%I-2)
 .I '(%I#2)!(%I>6) W *8," ",*8
 .E  W *8,*8," ",*8
 .S %I=%I-1
 I $L($ZB)=4,$D(%UPRCOD($ZB)),%UPRCOD($ZB)="LEVO" G:%I=1 VR S %I=%I-1 W *8 W:%I=2!(%I=4) *8 G VR
 I $L($ZB)=4,$D(%UPRCOD($ZB)),%UPRCOD($ZB)="PRAVO" G:%I>6!(%I-1>$L(%S)) VR S %I=%I+1 W %pravo W:%I=3!(%I=5) %pravo G VR
 I $L($ZB)=4,$D(%UPRCOD($ZB)),%UPRCOD($ZB)="VVERX" G:$L(%S)<6 VR S %TO="UP" Q
 I $L($ZB)=4,$D(%UPRCOD($ZB)),%UPRCOD($ZB)="VNIZ" G:$L(%S)<6 VR S %TO="DW" Q
 I A=0 R *A1:0 G VR
 I A=27 R *A1:0,*A2:0 G VR
 G:%I>6 VR I A<48!(A>57) G VR
VM S %S=$E(%S,1,%I-1)_$C(A)_$E(%S,%I+1,6) W $C(A)
 W:'(%I#2)&(%I<6) %pravo S %I=%I+1 G VR
 Q
 -
END X %XCL O 0:(:::::65) U $P:(NOECHO:NOWRAP) I $D(%ECHO) U $P:(ECHO:WRAP:WIDTH=80)
 Q

%L2DBG
%DEBUG ;BPS;INTERACTIVE DEBUGGING ROUTINE [ 04/16/99  3:11 AM ] [ 10/11/93  3:42 PM ]
 ;Copyright Micronetics Design Corp. @1988
 U 0 N %I,%IO,%X,%Y,%Z S $ZT="ZG "_$ZL_":ERROR^%DEBUG"
MENU ;DISPLAY MENU
MENU0 ;
 W !?10,$P($P($ZV,","),"-")," - ","Interactive Debugging Utility",!?16,$ZHL(1,"dd-MON-yy")," ",$ZHL(2,"bh:mm P")
MENU1 W !!,"Available options:",!
 F %I=0:1 S %Y=$P($T(TEXT+%I),";",2) Q:%Y="*"  W !?4,%I+1," - ",%Y
 W !!,"Select option: " R %X G:%X="^Q" EXIT
 I %X=""!(%X="^") G EXIT
 I %X'?1N F %I=0:1 S %Y=$T(TEXT+%I) G:%Y["*" MENU2 I $ZB(%X,"_",1)=$E($ZB($P(%Y,";",2),"_",1),1,$L(%X)) W $E($P(%Y,";",2),$L(%X)+1,99) S %X=%I+1 Q
 S %Y=$T(TEXT+%X-1)
 G @($P(%Y,";",3))
MENU2 W:%X'="?" *7 W !!,"Enter the option number to select an option, or"
 W !,"Enter enough characters to identify the option, or"
 W !,"Enter '^' or '^Q' to exit the utility." G MENU1
ENABLE ;Enable Error and Ctrl-c Trapping
 D DBGIO G:%IO["^" MENU0
 ZM 2:%IO V $V(280,$J,0)+112::1:2 ;errors
 V $V(280,$J,0)::1:2
 ;V $V(280,$J,0)+128::1:2 ; ctrl-c
 ;V $V(280,$J,0)+64::1:2 ; line step
 W !!,"Debugging Environment Enabled"
 G EXIT
DISABLE ;Disable Error Trapping
 S %Z=$V(280,$J,0) I %Z,$ZB($V(%Z,-3,2),#4,1) W !,"Cannot execute this request while running a program",! G EXIT
 W !!,"Debugging Environment Disabled"
 ZM 0:0
 G EXIT
RUN ;Interactively Debug a Routine
 S %Z=$V(280,$J,0) I %Z,$ZB($V(%Z,-3,2),#4,1) W !,"Cannot execute this request while running a program",! G EXIT
 S %Z=$ZT
RUN1 ;
 S %X=$ZN ;R !!,"Enter Routine Name: ",%X G:%X=""!(%X="^") MENU0
 G:%X="^Q"!(%X="^q") EXIT
 I %X="?" W !!,"Enter the name of the routine to be debugged.",!,"You may enter a routine name, or line^routine.",!,"Enter '^' to return to the previous question, or",!,"Enter '^Q' to exit the utility" G RUN1
 S %Y=$P($S(%X["^":$P(%X,"^",2),1:%X),"("),$ZT="ZG "_$ZL_":RUNER^%DEBUG" S:%X'["^" %X="^"_%X
 I '$D(^ (%Y)) D  I %Y W *7,"  ...Routine does not exist" S $ZT="ZG "_$ZL_":" G RUN1
 .I $E(%Y)'="%" S %Y=1 Q
 .N VG S VG=+$P($ZU(""),",",2),%I=$$UCILIB^%VGUTIL2(VG,+$ZU(""))
 .S:'%I %I=1,VG=0
 .I '$D(^|$ZU(%I,VG)| (%Y)) S %Y=1 Q
 .S %Y=0 Q
 X "S %Y=$T("_$P(%X,"(")_")"
 I %Y="" W *7,"  ...Line does not exist" S $ZT="ZG "_$ZL_":" G RUN1
 S $ZT="ZG "_$ZL_":"
 I $V(280,$J,0) V $V(280,$J,0)+112::0:2 S %IO=$V($V(280,$J,0)+10,-3,2)
 E  D DBGIO G:%IO["^" MENU0
 ZM 2:%IO S %I=$V(280,$J,0) V %I+752::$L(%X):1,%I+752+1::%X:$L(%X):1
 S $ZT="ZG "_$ZL_":RUN2^%DEBUG" I 1/0
RUN2 ;
 N %X,%I S %I=$V(280,$J,0) S $ZT="ZG "_$ZL_":",$ZS=""
 V %I::#8005:2,%I+112::1:2 S %X=$V(%I+752+1,-3,$V(%I+752,-3,1),1)
 D BRKPT(0,$P(%X,"("))
 I $F(%X,"(") D @($$RUNR^%DEBUG) Q
 G @$$RUNR^%DEBUG
RUNR() N ZZ V %I+645::0:1 S ZZ=%X K %X,%I,%IO,%Y,%Z Q ZZ
RUNER W *7,"  ...Invalid entry reference" G RUN1
BRKPT(B,T) ;set break point B to T
 N BP,CMD,ENT,DSP,ROUT,%BRKPT,E,A,D S D=$V(280,$J,0)
 I 'D U 0 W *7,!,"BRKPT^%DEBUG: Debugging Environment not Active ***",! Q
 S %BRKPT(+B)=T G BRKSET^%DEBUGI1
DBGIO ;Get debug device
IO1 S %IO="" ;;W !,"Debug device <",$I,">: " R %IO
 I %IO=""!(%IO=$I)!(%IO=0) S %IO=0 Q
 I %IO["^" Q
 I %IO="?" DO  G IO1
 .W !,"Enter the terminal device number which will be used for"
 .W !,"controlling the debugger.  All debugging prompts and"
 .W !,"error messages will be directed to this device."
 .W !,"This feature can be used to debug full screen applications"
 .W !,"so that the contents of the screen are not disturbed."
 I %IO'?1.N W *7,!,"Device number must be numeric",! G IO1
 I %IO=2!(%IO>19&(%IO<64))!((%IO>199)&(%IO<256)) W *7,!,"Invalid value...Terminal devices are 1,3-19,64-199,256 and up.",! G IO1
 I $V(2*%IO+$V(5,-5),-3,2)#2 W *7,"  ...Device does not exist",! G IO1
 I $V(4*%IO+$V(7,-5),-3,0)#2 W *7,"  ...Device does not exist",! G IO1
 O %IO::1 E  W *7,"  ...Device is in use",! G IO1
 Q
HELP ;Display HELP text
 S %HELP="HELP1" W # D ^%DEBUGI2 G MENU
EXIT ;Exit Interactive Debugger
 Q
ERROR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
TEXT ;Run a Program;RUN
 ;Enable Debugging Environment;ENABLE
 ;Disable Debugging Environment;DISABLE
 ;HELP Information;HELP
 ;*

%L2ERST0
%L1WE ; WINDOW ENGLISH ; %X1,%Y1,%X2,%Y2 - COORD WINDOW,%LS - LENGTH,%INV -INVERS  [ 02/26/92 12:48 PM ]
 ; %X0,%Y0 -
 S %ZR=$R
 N (%UPRCOD,%XMSG,%S,%ZR,%L1WE) D ^%L1C
 U $P:(ECHO:WRAP)
 O 0:(0::::65) S:'$D(%S) %S="" N %INS S %INS=1
 S:'$D(%X1) %X1=0 S:'$D(%X2) %X2=79
 S:'$D(%Y1) %Y1=20 S:'$D(%Y2) %Y2=23
 N %M,%I,%II,%XX,%YY,%C,%C1,%C2,%TOP,%X0,%Y0,%HBRY
 S:%X1<0 %X1=0 S:%X1>79 %X1=79
 S:%Y1<0 %Y1=0 S:%Y1>23 %Y1=23
 S:%X2<1 %X2=1 S:%X2>79 %X2=79
 S:%Y2<1 %Y2=1 S:%Y2>24 %Y2=24
 S:%X2<%X1 %X2=%X1
 S:%Y2<%Y1 %Y2=%Y1
 S:'$D(%LS) %LS=(%X2-%X1+1)*(%Y2-%Y1+1)
 S %S=$E(%S,1,%LS)
 S %I=1 ;F %II=1:1:$L(%S) S %M(%I)=$E(%S,%II) S %I=%I+1
 S %TOP=$L(%S)
 S %I=1 I $D(%INV) W %ENG,%CLI
 D CLEAR
 D P G:$D(%L1WE) END1
 S %X0=%X1,%Y0=%Y1
POZ S %XX=%X0,%YY=%Y0 X %POSIC
 R *%C G:%C=13!($ZB=13) END
 I %C=25 S %TO="END" G END
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
 I %C=27 R *%C1,*%C2 I %C2>0 S %C=%C1_%C2
 I %C=0 D DELAY R *%C1:0 D DELAY R *%C2:0 I %C1>0 S %C="0"_%C1
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 I %C>31&(%C<127) D VV G POZ
 G POZ
 ;-
VV I $D(CIST),CIST'[$C(%C) W *7 Q
 I %INS D VSTAV S %XX=%X0,%YY=%Y0 X %POSIC
 S $E(%S,%I)=$C(%C) W $E(%S,%I) S:%I>%TOP %TOP=%I D RIGHT
 Q
 ;-
CLEAR ;
 F %II=%Y1:1:%Y2 S %XX=%X1,%YY=%II X %POSIC W $J("",%X2-%X1+1)
 Q
 ;-
P ;
 S %XX=%X1
 F %II=%Y1:1:%Y2 S %YY=%II X %POSIC W $E(%S,(%X2-%X1+1)*(%II-%Y1)+1,(%X2-%X1+1)*(%II-%Y1+1))
 Q
P1 ;
 S %SSS=$E(%S,%I,255) W $E(%SSS,1,%X2-%X0+1) S %SSS=$E(%SSS,%X2-%X0+2,255)
 F %II=%Y0+1:1:%Y2 S %YY=%II,%XX=%X1 X %POSIC W $E(%SSS,1,%X2-%X1+1) Q:%SSS=""  S %SSS=$E(%SSS,%X2-%X1+2,255)
 Q
 ;-
RIGHT ;
 Q:%X0=%X2&(%Y0=%Y2)!(%I=%LS)!(%I>%TOP)
 I %X0=%X2 S %X0=%X1,%Y0=%Y0+1
 E  S %X0=%X0+1
 S %I=%I+1
 Q
LEFT ;
 Q:%X0=%X1&(%Y0=%Y1)!(%I=1)
 I %X0=%X1 S %X0=%X2,%Y0=%Y0-1
 E  S %X0=%X0-1
 S %I=%I-1
 Q
ENDS S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1
 ;-
LEVO ;
 D LEFT G POZ
PRAVO ;
 D RIGHT
 G POZ
VVERX ;
 I %Y0=%Y1 S %X0=%X1,%I=1 G POZ
 S %Y0=%Y0-1,%I=%I-(%X2-%X1+1)
 G POZ
VNIZ ;
 I %Y0=%Y2!(%I+(%X2-%X1+1)>%TOP) S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1 ;S %X0=%X1+(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) S:%X0>%X2 %X0=%X2 G POZ
 S %Y0=%Y0+1,%I=%I+(%X2-%X1+1)
 G POZ
CHISTS ;
CHISTE S %TOP=%I-1 S:%TOP<1 %TOP=1 S %S=$E(%S,1,%TOP) D CLEAR,P G POZ
INS S %INS=1-%INS S %SAY=$S(%INS:"INSERT",1:"OVERFLOW") X %XMSGV G POZ
TAB I %I+10>%TOP S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1
 S %I=%I+10 S:%I>%LS %I=%LS G POZ1
TABN I %I-10<1 S %I=1 G POZ1
 S %I=%I-10
POZ1 S %X0=%X1+(%I-.1#(%X2-%X1+1)+.1)-1,%Y0=%Y1+(%I-.1\(%X2-%X1+1)) S:%X0<%X1 %X0=%X1 S:%X0>%X2 %X0=%X2 G POZ
 ;-
DEL G:%TOP=0 POZ
 F %II=%I:1:%TOP-1 S $E(%S,%II)=$E(%S,%II+1)
 S $E(%S,%TOP)=" " S %TOP=%TOP-1
 I %I-1>%TOP D LEFT S %XX=%X0,%YY=%Y0 X %POSIC W " " G POZ
 D P1 ;D CLEAR,P
 G POZ
 ;-
ADD G:%TOP+1>%LS POZ
 F %II=%TOP:-1:%I S $E(%S,%II+1)=$E(%S,%II)
 S $E(%S,%I)=" " S %TOP=%TOP+1
 D CLEAR,P G POZ
VSTAV Q:%TOP+1>%LS
 F %II=%TOP:-1:%I S $E(%S,%II+1)=$E(%S,%II)
 S $E(%S,%I)=" " S %TOP=%TOP+1
 S %XX=%X0,%YY=%Y0 X %POSIC D P1 Q
 ;D CLEAR,P S %XX=%X0,%YY=%Y0 X %POSIC Q
 ;-
 ;-
PGDN S %TO="DW" G END
PGUP S %TO="UP" G END
ESC S %TO="END" ;
END S %S=$E(%S,1,%TOP)
END1 O 0:(0:::::65) I $D(%ECHO) U $P:(ECHO:WRAP:WIDTH=80)
 X %XCL K CIS,%LS S %ZR=$D(@%ZR) Q
 ;-
CHISTS G:%I=0 POZ S %TOP=%I-1
 D CLEAR,P G POZ
 ;-
DELAY F %II=1:1:400
 Q

%L2ERSTR
%L1WE ; WINDOW ENGLISH ; %X1,%Y1,%X2,%Y2 - COORD WINDOW,%LS - LENGTH,%INV -INVERS  [ 10.05.04 08:29 ] [ 08/25/97  8:59 AM ]
 ; %X0,%Y0 -
 I '$D(%POSIC) D ^%L1C
 U $P:(NOECHO:NOWRAP:ESCAPE) N %ECHO,%HBRY S %FHBR=0 S %TO=""
 S:'$D(%S) %S="" N %INS S %INS=1
 S:'$D(%X1) %X1=0 S:'$D(%X2) %X2=79
 S:'$D(%Y1) %Y1=20 S:'$D(%Y2) %Y2=23
 N %M,%I,%II,%XX,%YY,%C,%C1,%C2,%TOP,%X0,%Y0,%HBRY
 S:%X1<0 %X1=0 S:%X1>79 %X1=79
 S:%Y1<0 %Y1=0 S:%Y1>23 %Y1=23
 S:%X2<1 %X2=1 S:%X2>79 %X2=79
 S:%Y2<1 %Y2=1 S:%Y2>24 %Y2=24
 S:%X2<%X1 %X2=%X1
 S:%Y2<%Y1 %Y2=%Y1
 S:'$D(%LS) %LS=(%X2-%X1+1)*(%Y2-%Y1+1)
 S %S=$E(%S,1,%LS)
 S %I=1 ;F %II=1:1:$L(%S) S %M(%I)=$E(%S,%II) S %I=%I+1
 S %TOP=$L(%S)
 S %I=1 I $D(%INV) W %ENG,%CLI
 D CLEAR
 D P G:$D(%L1WE)!$D(%L1GET) END1
 S %X0=%X1,%Y0=%Y1
POZ S %XX=%X0,%YY=%Y0 X %POSIC
 R *%C S ZB=""
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 ;;R *%C1:0 I %C1>0 S ZB=ZB_%C1
 I $L(ZB)>3,$D(%UPRCOD(ZB)) G @%UPRCOD(ZB)
 G:%C=13 END
 ;I %C=25 G ESC
 ;I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
 ;I %C=27 R *%C1:0 G:%C1<0 ESC R *%C2:0 I %C2>0 S %C=%C1_%C2
 ;I %C=0 D DELAY R *%C1:0 D DELAY R *%C2:0 I %C1>0 S %C="0"_%C1
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 I %C>31&(%C<127) D VV G POZ
 G POZ
ESC S %TO="END" G END
 ;-
VV I $D(CIST),CIST'[$C(%C) W *7 Q
 I %INS D VSTAV S %XX=%X0,%YY=%Y0 X %POSIC
 S $E(%S,%I)=$C(%C) W $E(%S,%I) S:%I>%TOP %TOP=%I D RIGHT
 Q
 ;-
CLEAR ;
 F %II=%Y1:1:%Y2 S %XX=%X1,%YY=%II X %POSIC W $J("",%X2-%X1+1)
 Q
 ;-
P ;
 S %XX=%X1 S %S=$E(%S,1,%TOP)
 F %II=%Y1:1:%Y2 S %YY=%II X %POSIC W $E(%S,(%X2-%X1+1)*(%II-%Y1)+1,(%X2-%X1+1)*(%II-%Y1+1))
 Q
P1 ;
 S %SSS=$E(%S,%I,255) W $E(%SSS,1,%X2-%X0+1) S %SSS=$E(%SSS,%X2-%X0+2,255)
 F %II=%Y0+1:1:%Y2 S %YY=%II,%XX=%X1 X %POSIC W $E(%SSS,1,%X2-%X1+1) Q:%SSS=""  S %SSS=$E(%SSS,%X2-%X1+2,255)
 Q
 ;-
RIGHT ;
 Q:%X0=%X2&(%Y0=%Y2)!(%I=%LS)!(%I>%TOP)
 I %FHBR W *8 Q
 I %X0=%X2 S %X0=%X1,%Y0=%Y0+1
 E  S %X0=%X0+1
 S %I=%I+1
 Q
LEFT ;
 Q:%X0=%X1&(%Y0=%Y1)!(%I=1)
 I %X0=%X1 S %X0=%X2,%Y0=%Y0-1
 E  S %X0=%X0-1
 S %I=%I-1
 Q
ENDS S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1
 ;-
LEVO ;
 D LEFT G POZ
PRAVO ;
 D RIGHT
 G POZ
VVERX ;
 I %Y0=%Y1,%X0=%X1 S %TO="UP" G END
 I %Y0=%Y1 S %X0=%X1,%I=1 G POZ
 S %Y0=%Y0-1,%I=%I-(%X2-%X1+1)
 G POZ
VNIZ ;
 I %Y0=%Y2!(%I+(%X2-%X1+1)>%TOP) S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1 ;S %X0=%X1+(%TOP-.1#(%X2-%X1+1)+.1),%Y0=%Y1+(%TOP-.1\(%X2-%X1+1)) S:%X0>%X2 %X0=%X2 G POZ
 S %Y0=%Y0+1,%I=%I+(%X2-%X1+1)
 G POZ
INS S %INS=1-%INS S %SAY=$S(%INS:"INSERT",1:"OVERFLOW") X %XMSGV G POZ
TAB I %I+10>%TOP S %I=%TOP+1 S:%I>%LS %I=%LS G POZ1
 S %I=%I+10 S:%I>%LS %I=%LS G POZ1
TABN I %I-10<1 S %I=1 G POZ1
 S %I=%I-10
POZ1 S %X0=%X1+(%I-.1#(%X2-%X1+1)+.1)-1,%Y0=%Y1+(%I-.1\(%X2-%X1+1)) S:%X0<%X1 %X0=%X1 S:%X0>%X2 %X0=%X2 G POZ
 ;-
DEL G:%TOP=0 POZ
 F %II=%I:1:%TOP-1 S $E(%S,%II)=$E(%S,%II+1)
 S $E(%S,%TOP)=" " S %TOP=%TOP-1
 I %I-1>%TOP D LEFT S %XX=%X0,%YY=%Y0 X %POSIC W " " G POZ
 D P1 ;D CLEAR,P
 G POZ
 ;-
ADD G:%TOP+1>%LS POZ
 F %II=%TOP:-1:%I S $E(%S,%II+1)=$E(%S,%II)
 S $E(%S,%I)=" " S %TOP=%TOP+1
 D CLEAR,P G POZ
VSTAV Q:%TOP+1>%LS
 F %II=%TOP:-1:%I S $E(%S,%II+1)=$E(%S,%II)
 S $E(%S,%I)=" " S %TOP=%TOP+1
 S %XX=%X0,%YY=%Y0 X %POSIC D P1 Q
 ;D CLEAR,P S %XX=%X0,%YY=%Y0 X %POSIC Q
 ;-
 ;-
HOME S %X0=%X1,%Y0=%Y1,%I=1 G POZ
PGDN S %TO="DW" G END
PGUP S %TO="UP" G END
FIND S %TO="F8" G END
COR S %TO="F7" G END
SAVE S %TO="F9" G END
ADDL S %TO="F5" D ADDL^%L1ZMSL G END
DELL S %TO="F6" G END
REST G:'$D(%L1SF) POZ G:'$D(NM) POZ S %SOLD=%S D  D VSVALL^%L1SF,PODVAL^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ K %L1GET S %S=%SOLD,%INV=1 G %L1WE
 .I %S?.E1"D ".U.N1"^".E S $ZS="<>^"_$P($P($P(%S,"D ",2),"^",2)," ")
 .;N (%UPRCOD,%XMSG,%XMSGV,%XMSGN) X ^%ERG
 .S %PR=$P($P($P(%S,"D ",2),"^",2)," "),U=1
 .S %DLM=$S($E(%S,1,2)="D ":"D ",1:" D ")
 .S %LB=$P($P(%S,%DLM,2),"^",1)
 .I $L(%LB) N I,T X "ZL @%PR F I=1:1 S T=$T(+I) Q:T=""""  Q:$P(T,"" "")=%LB" I T'="" S U=I
 .S %L1ER="",%FLI=1 X %XCL X ^%ERG(2) K %L1ER
END S %S=$E(%S,1,%TOP)
END1 U $P
 X %XCL K CIS,%LS Q
 ;-
CHISTS G:%I=0 POZ S %TOP=%I-1
 D CLEAR,P G POZ
 ;-
DELAY F %II=1:1:400
 Q
MDRG S %FHBR='%FHBR I %FHBR S %FLINS=1 W *27,7 S %SAY="HEBREW TEXT" X %XMSGV W *27,8 S %HBRY="" W %HBR G POZ
 W *27,7 S %SAY="ENGLISH TEXT" X %XMSGV W *27,8 G POZ
HBR I '$D(%HBRY) S %HBRY="" W %HBR D P G POZ
 K %HBRY W %ENG D P G POZ

%L2GTR
%L2GTR ; SEND GLOBALS    [ 04.06.07 15:20 ] [ 13.05.07 07:30 ] [ 12.05.07 21:38 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,USERPHONE,USERPORT,USERGLOB,USERMOD,ER,%L1RCV,%L2NALAN,%SCKPORT,%L3GTR) S $ZS="" D ^%L1C
 S ZT=$ZT,ER=0,SH=0
 S $ZT="ZG "_$ZL_":SVER^%L1X" D ^%L1C
 S %MXDL=500
 S %US="U PORTN:(NOECHO:NOWRAP:NOCENABLE:PASTHRU:TERM=$C(13,10))"
 I $D(%SCKPORT) S %US=%SCKPORT("USE"),USERPORT=%SCKPORT
 K ^L2G($J) K ^A
 I $D(%L2NALAN) M ^L2G($J,"NALAN")=%L2NALAN
 ;
 I '$D(%L1RCV) U 0 D
 .S %VG=20,%NG=22,%LG=5,%RG=75
 .S %L1RBCL=%CV("CF")                       ; -- ADD
 .W %LIGHT1 D TV^%L1RBUA(20,5,24,76) X %XCL ; -- ADD
 .D SCALE0(70)
 ;
 K ^%L1GTER($J)
 I '$D(USERMOD) S USERMOD=1
 Q:'$D(USERPORT)&$D(%L1RCV)
 S PRT=$J
 ;
 I $D(USERPORT) S PORTN=USERPORT
 E  I '$D(%L1RCV) S %GET=" I/O PORT > ++12,10,EE#++2,E,I" D ^%L1GET S PORTN=%S
 ;
 S BUF=2550 S SOT=$C(4),STX=$C(2),ETX=$C(3)
 ;
 I $D(^GTR000(PRT)),'$D(%L1RCV) U 0 K %Q S %Q("Z")=" mcew wqtp didy xeciy jiyndl ",%Q("X")=10,%Q("Y")=4 D ^%S2ASK I YES G IN01
 K ^GTR000(PRT) I '$D(USERGLOB),$D(%L1RCV) Q
 ;
 I $$NALAN=1 D  G IN0
 .S FILEGT=$$^%L1ENVAR("gtm_dist")_"/GTR."_PRT
 .C FILEGT:(DELETE)
 .O FILEGT:(NEWVERSION:WRITE:BLOCK=2048:RECORD=2044)
 ;
 I $D(USERGLOB) G IN0
 K ^UTILITY($J) U $P:(ECHO:WRAP) D ^%GSEL U $P:(NOECHO:NOWRAP)
 ;
IN0 S GNAME="" F  S GNAME=$O(^UTILITY($J,GNAME)) Q:GNAME=""  D
 .S MAC=$S($E(GNAME)'="^":"^",1:"")_GNAME
 .I $$NALAN'=1 D GLSV Q
 .
 .D GLSVN(GNAME)
 ;
 I $$NALAN=1 C FILEGT G M
 ;
IN01 I $D(^GTR000(PRT))<10 D:'$D(%L1RCV)  S ER=1000 G ERREND
 .D MSG("NO GLOBALS FOR TRANSMISSION",3,2)
 ;
M S ER=0,SH=0
 I '$$NALAN O PORTN::120 E  S ER=1001 G ERREND
 ;
 S ^L2G($J,"PORTN")=PORTN
 S ^L2G($J,"US")=%US
 ;
 I $$NALAN=1 S GNLAST=1 D FAST G:ER>999 ERREND G EXCV
 ;
 S GNLAST=0
 S GNAME="" F  S GNAME=$O(^GTR000(PRT,GNAME)) Q:GNAME=""  D  I 'ER S ^L2G($J,"OK",GNAME)=1,^L2G($J,"OK",GNAME,"TIME")=$H
 .I '$D(%L1RCV) D MSG("--"_GNAME,1)
 .I $O(^GTR000(PRT,GNAME))="" S GNLAST=1
 .S OKSND=0,SUMBCC=0 D SETSTR
 ;
 I ER>999 G ERREND
 ;
EXCV I $$NALAN'=1 D WSTR($C(5)_"SOF"_$C(6))
 ;
 S ^L2G($J,"OK")=1,^L2G($J,"OKTIME")=$H
 ;
 I '$D(%L1RCV) D
 .D SCALE(1,1,70)
 .I '$D(%L1RCV) D MSG("********** TRANSMISSION SUCCESFUL **********",3)
 ;
 K USERPHONE,USERPORT,USERGLOB S $ZT=$G(ZT)
 ;
EXIT Q
 ;-
ERREND ;
 I $ZS'="" S ER=10000 D SVER^%L1X
 S $ZT=$G(ZT)
 D ER S ^%L1GTER($J)=ER_"~"_$P($ZS,",",3)
 I $$NALAN'=1 D WSTRE($C(5)_"SOF"_$C(6))
 K USERPHONE,USERPORT,USERGLOB S $ZT=$G(ZT)
 I '$D(%L1RCV) D MSG("********** TRANSMISSION ERROR (ER="_ER_") **********",3,3)
 Q
 ;-
SETSTR ;
 S ER=0
 S N=-1 S N=$N(^GTR000(PRT,GNAME,N))
 I N'=-1 D SET
 I ER=10000 G ENDP ;
 I N>0,ER<1000 G SETSTR
 ;
 I $L($G(GNAME)) K ^GTR000(PRT,GNAME)
ENDP Q
 ;-
SET S (CNER,CNER1)=0 ;
S1 S STRG=^GTR000(PRT,GNAME,N)
S2 S OK=1,ER=0
S21 S STROUT=SOT_$G(GNAME)_"*"_+$G(N)_"*"_$L(STRG)_"*"_$$^%L1ZCRC(STRG,1)_STX_STRG
 S BCC=$$^%L1ZCRC($E(STROUT,2,$L(STROUT)),1)
 S SUMBCC=SUMBCC+BCC
 S STROUT=STROUT_ETX_BCC
 ;
 D W(STROUT)
 ;
 S SH=SH+1 S ^L2G($J,"SH",SH)=STROUT
 ;
 I $$NALAN=2,STROUT'[$C(5),STROUT'[$C(6),'ER G S3
 ;
 ; ---- $$NALAN '=2 OR END OF GLOB ------
 D READ I ER>999 D ER Q
 ;
 S ^L2G($J,"SH",SH,"IN")=$E(ANS1,1,400)
 S ^L2G($J,"SH",SH,"SUMBCC")=+SUMBCC
 ;
 I $G(ANS1)="",STROUT'["SOF" D  Q
 .S OK=0 S ER=3,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1003
 ;
 I $G(ANS1)="",STROUT[($C(5)_"SOF"_$C(6)) D  G ENDST
 .I $$NALAN=2 D
 ..S ^L2G($J,"BCCOK")="OK"
 ..D WOK
 ;
 I ANS1=STROUT S ER=31,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1031 Q
 ;
 S ER=0
 I $$NALAN=2,+SUMBCC'=+$P(ANS1,ETX,2) S ER=41,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1041 Q
 I $$NALAN=2,+SUMBCC=+$P(ANS1,ETX,2) D  S SUMBCC=0 G S3
 .S ^L2G($J,"BCCOK1")="OK"
 .D WOK
 ;
 ;  ---- $$NALAN'=2
 I BCC'=$P(ANS1,ETX,2) D  Q
 .S ER=4,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1004 S SUMBCC=0 Q
 ;
 I 'OK S CNER1=CNER1+1 D ER G:CNER1<6 S2 S ER=1010 Q
 ;
S3 S OK=1,CNER1=0
 I '$D(%L1RCV) D
 .Q:(N#100)
 .D SCALE(N,$O(^GTR000(PRT,GNAME,999999),-1)+1,70) X %US
 K ^GTR000(PRT,GNAME,N)
 ;
ENDST ;
 X %US Q
 ;-
 ;
ER ;
 I '$D(%L1RCV) D MSG("ERR: "_ER,3,2) X %US
 S ^L2G($J,"ER",+$G(SH))=ER_"~"_$G(GNAME)_"~"_$H
 I ER>999 S ^%L1GTER($J)=ER
 Q
 ;-
DEB Q:$D(%L1RCV)  U 0 F J=1:1:$L(SS) W $$^%L1ZH($A($E(SS,J)))_" "
 U 0 W !
 X %US
 Q
GLSV ;
 S %LENGTH=0 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 I '$D(%L1RCV) D MSG(MAC,1)
 S CHKS=0
 S %MAC2=$R S:$R[")" %MAC2=$E($R,1,$L($R)-1) S II=0
 I %PR D
 .S (GT1,^GTR000(PRT,GNAME,1))=MAC
 .S (GT2,^GTR000(PRT,GNAME,2))=@MAC
 .S II=2,CHKS=CHKS+$$^%L1ZCRC(GT1,1)+$$^%L1ZCRC(GT2,1) K GT1,GT2
 ;
 S %MAC1=MAC
 S %MAC1=$Q(@%MAC1)
 I %MAC1="",'$D(%L1RCV) W:%PR=0 *7,!?15,"*** ARRAY ",MAC," HASN'T NODES !" Q
PR F  Q:%MAC1'[%MAC2  Q:%MAC1=""  Q:%LENGTH  D
 .S II=II+1 S (GT,^GTR000(PRT,GNAME,II))=%MAC1,CHKS=CHKS+$$^%L1ZCRC(GT,1)
 .S II=II+1,(GT,^GTR000(PRT,GNAME,II))=$G(@%MAC1,$C(7))
 .S CHKS=CHKS+$$^%L1ZCRC(GT,1) S:$L(GT)>(%MXDL-20) %LENGTH=1
 .S %MAC1=$Q(@%MAC1)
 ;
 S II=II+1
 S ^GTR000(PRT,GNAME,II)=$C(5)_$S($O(^UTILITY($J,GNAME))="":"END",1:"ENDG")_"*"_GNAME_"*"_II_"*"_CHKS_$C(6)
END K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2 Q
 ;
ZT D ERREND G EXIT
 ;
READ ;
 N A
 I $$NALAN'=1 X %US D  Q
 .N FIRST S FIRST=1
 .S ANS1="" N TIME S TIME=6
RD .N %JJ F %JJ=1:1:255 R *A:TIME Q:A<0  Q:A=27  Q:A=13  Q:A=10  Q:A=12  Q:A=0  D
 ..S ^A($O(^A(999999),-1)+1)=A
 ..S ANS1=ANS1_$C(A),TIME=1
 .I A<0 S ER=1009 Q
 .I ANS1="",FIRST S FIRST=0 G RD
 .S ^A($O(^A(999999),-1)+1,"ANS1")=ANS1
 ;
 ;------------------------- $$NALAN = 1
 N H0,A1,TIME,SOFR
 S SOFR=$S($$NALAN:12,1:13)
 X %US ;
 S ANS1="" S H0=$P($H,",",2)
 S TIME=2
 X %US F  R *A:TIME Q:A=3  Q:'$T  Q:$P($H,",",2)-H0>2
 Q:A'=3
 S TIME=1
 S ANS1=$C(3) F  R *A:TIME Q:A=SOFR  Q:'$T  D  Q:$L(ANS1)>200
 .S:A'=13&(A'=10)&(A'=12) ANS1=ANS1_$C(A)
 E  Q
 I $L(ANS1)>200 S ANS1=""
 I 1 Q
 ;
FAST ;
 N %PR,GT,GT1,GT2,MAC,%MAC1,%MAC2,%II,II,CRC,%SIZE,%STRING
 S %SIZE=$P($$^%L1FLP(FILEGT),"^",2)
 X %US W $C(4,251)
 O FILEGT:(READONLY:REWIND)
 S %STRING=""
 K ^L2G($J,"ERFAST")
 ;
 S ER=0
 F %II=1:1 U FILEGT R *A Q:$ZEOF  D  I ER S ER=1020 Q
 .S:A=12 A=212
 .S:A=10 A=210
 .S:A=13 A=213
 .S %STRING=%STRING_$C(A)
 .I $L(%STRING)=$G(^%L2G("BLOCK"),1000) D WBL S %STRING=""
 ;
 I $L(%STRING),'ER D WBL S %STRING=""
 ;
 C FILEGT ;;I $$^%L1ZOS(2,FILEGT)
 I ER S ER=1000+ER Q
 X %US W $C(251)
 I 'ER W "OK" I GNLAST W $C(5)_"SOF"_$C(6)
 D ENDLINE
 Q
WR(GT) ;
 U FILEGT W GT,! S %II=%II+1
 Q
WBL ;
 S %RPT=0
WBL1 S %RPT=%RPT+1,CRC=0
 X %US F %II1=1:1:$L(%STRING) S %SMB=$E(%STRING,%II1) W %SMB D
 .S CRC=CRC+(%II1*$A(%SMB))
 ;
 S ^L2G($J,"FAST",%II,"CRC")=CRC
 X %US W $C(3),CRC D ENDLINE
 ;;G WBL2
 R ANS1 ; D READ
 I ANS1[$C(3) S ANS1=$P(ANS1,$C(3),2)
 I ANS1[$C(12) S ANS1=$P(ANS1,$C(12))
 I +ANS1'=+CRC H:'(%RPT#3) 1 G:%RPT<6 WBL1 S ER=$S(ANS1="":3,1:4) S ^L2G($J,"ERFAST")=CRC_"<>"_ANS1
 S ^L2G($J,"FAST",%II,"CRCBACK")=ANS1
 Q:ER
WBL2 I '$D(%L1RCV),$D(%L3GTR) D
 .Q:(%II#10000)
 .D SCALE^%L3GTR(%II,%SIZE,70) X %US
 Q
GLSVN(GNAME) ;
 N %PR,GT,GT1,GT2,MAC,%MAC1,%MAC2,%II,II,CRC,%SIZE,%STRING
 S MAC=$S($E(GNAME)'="^":"^",1:"")_GNAME
 S CRC=0,%II=0
 S %PR=0 I ($D(@MAC)#10)'=0 S %PR=1
 S %MAC2=$R S:$R[")" %MAC2=$E($R,1,$L($R)-1)
 I $E(%MAC2,1,2)="^|" S %MAC2="^"_$P(%MAC2,"|",3,255)
 I %PR S GT1=MAC,GT2=@MAC D WR(GT1),WR(GT2)
 S %MAC1=MAC
 S %MAC1=$Q(@%MAC1)
 F  Q:%MAC1'[%MAC2  Q:%MAC1=""  D  S %MAC1=$Q(@%MAC1)
 .S GT=%MAC1 D WR(GT)
 .S GT=$G(@%MAC1) D WR(GT)
 Q
NALAN(STAM) ;
 I $D(%L2NALAN) Q 2
 I $D(%SCKPORT) Q 2
 Q 0
ENDLINE W !#
 Q
SCALE0(LN) ;
 D SCALE0^%L3GTR(LN)
 Q
SCALE(N,MAX,LN) ;
 D SCALE^%L3GTR(N,MAX,LN)
 Q
MSG(TXT,NOM,DELAY) ;
 Q:$D(%L1RCV)
 U $P:(NOECHO:NOWRAP)
 S %YY=%VG+NOM-1,%XX=%LG+12 X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(TXT,%RG-%LG-20) X %XCL
 I $G(DELAY) H DELAY
 Q
WSTR(TXT) ;
 N GNAME,STRG,N
 S GNAME=" " S STRG=$C(5)_"SOF"_$C(6),(CNER,CNER1)=0 S N=0 D S2
 Q
WSTRE(TXT) ;
 N GNAME,STRG,N
 S GNAME=" " S STRG=$C(5)_"SOF"_$C(6),(CNER,CNER1)=0 S N=0 D S21
 Q
WOK ;
 X %US
 D CLEAR
 W "OK",!
 Q
W(STROUT) ;
 X %US
 I '$$NALAN D W0(STROUT) Q
 I $$NALAN=1 D W1(STROUT) Q
 I $$NALAN=2 D W2(STROUT) Q
 Q
W0(STROUT) ;
 I '$D(BUF) S BUF=2550
 F JJ=1:1:BUF R *Z:0
 W STROUT,!
 Q
W1(STROUT) ;
 W STROUT,!
 Q
W2(STROUT) ;
 W STROUT,!
 Q
CLEAR ;
 N A F  R *A:0 Q:A<1
 Q

%L2GTR0
%L2GTR ; SEND GLOBALS    [ 10.08.06 09:48 ] [ 09.05.06 06:58 ] [ 28.02.06 13:52 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,USERPHONE,USERPORT,USERGLOB,USERMOD,ER,%L1RCV,%L2NALAN,%SCKPORT,%L3GTR) S $ZS="" D ^%L1C
 S ZT=$ZT,ER=0,SH=0
 S $ZT="ZG "_$ZL_":SVER^%L1X" D ^%L1C
 S %MXDL=500
 S %US="U PORTN:(NOECHO:NOWRAP:NOCENABLE:PASTHRU:TERM=$C(13,10))"
 I $D(%SCKPORT) S %US=%SCKPORT("USE"),USERPORT=%SCKPORT
 ;
 I '$D(%L1RCV) U 0 D
 .S %VG=20,%NG=22,%LG=5,%RG=75
 .S %L1RBCL=%CV("CF")                       ; -- ADD
 .W %LIGHT1 D TV^%L1RBUA(20,5,24,76) X %XCL ; -- ADD
 .D SCALE0(70)
 ;
 K ^%L1GTER($J)
 I '$D(USERMOD) S USERMOD=1
 Q:'$D(USERPORT)&$D(%L1RCV)
 S PRT=$J
 ;
 I $D(USERPORT) S PORTN=USERPORT
 E  I '$D(%L1RCV) S %GET=" I/O PORT > ++12,10,EE#++2,E,I" D ^%L1GET S PORTN=%S
 ;
 S BUF=2550 S SOT=$C(4),STX=$C(2),ETX=$C(3)
 I $D(^GTR000(PRT)),'$D(%L1RCV) U 0 K %Q S %Q("Z")=" mcew wqtp didy xeciy jiyndl ",%Q("X")=10,%Q("Y")=4 D ^%S2ASK I YES G IN01
 K ^GTR000(PRT) I '$D(USERGLOB),$D(%L1RCV) Q
 ;
 I $$NALAN=1 D  G IN0
 .S FILEGT=$$^%L1ENVAR("gtm_dist")_"/GTR."_PRT
 .C FILEGT:(DELETE)
 .O FILEGT:(NEWVERSION:WRITE:BLOCK=2048:RECORD=2044)
 ;
 I $D(USERGLOB) G IN0
 K ^UTILITY($J) U $P:(ECHO:WRAP) D ^%GSEL U $P:(NOECHO:NOWRAP)
IN0 S GNAME="" F  S GNAME=$O(^UTILITY($J,GNAME)) Q:GNAME=""  S MAC=$S($E(GNAME)'="^":"^",1:"")_GNAME D
 .I $$NALAN'=1 D GLSV Q
 .D GLSVN(GNAME)
 ;
 I $$NALAN=1 C FILEGT G M
 ;
IN01 I $D(^GTR000(PRT))<10 D:'$D(%L1RCV)  S ER=1000 G ERREND
 .D MSG("NO GLOBALS FOR TRANSMISSION",3,2)
 ;
M S ER=0,SH=0 K ^L2G($J)
 I '$$NALAN O PORTN::120 E  S ER=1001 G ERREND
 S ^L2G($J,"PORTN")=PORTN
 S ^L2G($J,"US")=%US
 ;
 I $$NALAN=1 S GNLAST=1 D FAST G:ER>999 ERREND G EXCV
 ;
 S GNLAST=0
 S GNAME="" F  S GNAME=$O(^GTR000(PRT,GNAME)) Q:GNAME=""  D  I 'ER S ^L2G($J,"OK",GNAME)=1,^L2G($J,"OK",GNAME,"TIME")=$H
 .I '$D(%L1RCV) D MSG("--"_GNAME,1)
 .I $O(^GTR000(PRT,GNAME))="" S GNLAST=1
 .S OKSND=0,SUMBCC=0 D SETSTR
 ;
 I ER>999 G ERREND
 ;
EXCV I $$NALAN'=1 S GNAME=" " S STRG=$C(5)_"SOF"_$C(6),(CNER,CNER1)=0 S N=0 D S2
 S ^L2G($J,"OK")=1,^L2G($J,"OKTIME")=$H
 I '$D(%L1RCV) D
 .D SCALE(1,1,70)
 .I '$D(%L1RCV) D MSG("********** TRANSMISSION SUCCESFUL **********",3)
 K USERPHONE,USERPORT,USERGLOB S $ZT=$G(ZT)
 ;
EXIT Q
 ;-
ERREND ;
 I $ZS'="" S ER=10000 D SVER^%L1X
 S $ZT=$G(ZT)
 D ER S ^%L1GTER($J)=ER_"~"_$P($ZS,",",3)
 I $$NALAN'=1 S GNAME=" " S STRG=$C(5)_"SOF"_$C(6),(CNER,CNER1)=0 S N=0 D S21
 K USERPHONE,USERPORT,USERGLOB S $ZT=$G(ZT)
 I '$D(%L1RCV) D MSG("********** TRANSMISSION ERROR (ER="_ER_") **********",3,3)
 Q
 ;-
SETSTR ;
 S ER=0
 S N=-1 S N=$N(^GTR000(PRT,GNAME,N))
 I N'=-1 D SET
 I ER=10000 G ENDP ;
 I N>0,ER<1000 G SETSTR
 ;
 I $L($G(GNAME)) K ^GTR000(PRT,GNAME)
ENDP Q
 ;-
SET S (CNER,CNER1)=0 ;
S1 S STRG=^GTR000(PRT,GNAME,N)
S2 S OK=1,ER=0
S21 S STROUT=SOT_$G(GNAME)_"*"_+$G(N)_"*"_$L(STRG)_"*"_$$^%L1ZCRC(STRG,1)_STX_STRG
 ;;S BCC=$$^%L1ZCRC($E(STROUT,2,%MXDL),1)
 S BCC=$$^%L1ZCRC($E(STROUT,2,$L(STROUT)),1)
 S SUMBCC=SUMBCC+BCC
 S STROUT=STROUT_ETX_BCC
 ;
 X %US
 ;
 I '$$NALAN D
 .I '$D(BUF) S BUF=2550
 .F JJ=1:1:BUF R *Z:0
 .W STROUT,!
 ;
 I $$NALAN W STROUT,!
 ;
 S SH=SH+1 S ^L2G($J,"SH",SH)=STROUT
 ;
 I $$NALAN=2,STROUT'[$C(5),STROUT'[$C(6),'ER G S3
 I $$NALAN W #
 ;
 D READ I ER>999 D ER Q
 I $G(ANS1)="" S OK=0 S ER=3,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1003 Q
 S ^L2G($J,"SH",SH,"IN")=$E(ANS1,1,400)
 I ANS1=STROUT S ER=31,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1031 Q
 S ER=0
 I $$NALAN=2,SUMBCC'=$P(ANS1,ETX,2) S ER=41,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1041 Q
 I $$NALAN=2,SUMBCC=$P(ANS1,ETX,2) X %US W $C(3)_"OK"_$C(3),#! S SUMBCC=0 G S3
 ;
 I BCC'=$P(ANS1,ETX,2) S ER=4,CNER=CNER+1 D ER G:CNER<5 S2 S ER=1004 S SUMBCC=0 Q
 I 'OK S CNER1=CNER1+1 D ER G:CNER1<6 S2 S ER=1010 Q
S3 S OK=1,CNER1=0
 ;
 I '$D(%L1RCV) D
 .Q:(N#100)
 .D SCALE(N,$O(^GTR000(PRT,GNAME,999999),-1)+1,70) X %US
 K ^GTR000(PRT,GNAME,N)
ENDST ;
 X %US Q
 ;-
ER ;
 I '$D(%L1RCV) D MSG("ERR: "_ER,3,2) X %US
 S ^L2G($J,"ER",+$G(SH))=ER_"~"_$G(GNAME)_"~"_$H
 I ER>999 S ^%L1GTER($J)=ER
 Q
 ;-
DEB Q:$D(%L1RCV)  U 0 F J=1:1:$L(SS) W $$^%L1ZH($A($E(SS,J)))_" "
 U 0 W !
 X %US
 Q
GLSV ;
 S %LENGTH=0 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 I '$D(%L1RCV) D MSG(MAC,1)
 S CHKS=0
 S %MAC2=$R S:$R[")" %MAC2=$E($R,1,$L($R)-1) S II=0
 I %PR S (GT1,^GTR000(PRT,GNAME,1))=MAC,(GT2,^GTR000(PRT,GNAME,2))=@MAC S II=2,CHKS=CHKS+$$^%L1ZCRC(GT1,1)+$$^%L1ZCRC(GT2,1) K GT1,GT2
 S %MAC1=MAC
 S %MAC1=$Q(@%MAC1) I %MAC1="",'$D(%L1RCV) W:%PR=0 *7,!?15,"*** ARRAY ",MAC," HASN'T NODES !" Q
 S ^L2G($J,GNAME,"MAC1")=%MAC1
 S ^L2G($J,GNAME,"MAC2")=%MAC2
PR F  Q:%MAC1'[%MAC2  Q:%MAC1=""  Q:%LENGTH  S II=II+1 S (GT,^GTR000(PRT,GNAME,II))=%MAC1,CHKS=CHKS+$$^%L1ZCRC(GT,1),II=II+1,(GT,^GTR000(PRT,GNAME,II))=$G(@%MAC1,$C(7)) S CHKS=CHKS+$$^%L1ZCRC(GT,1) S:$L(GT)>(%MXDL-20) %LENGTH=1 S %MAC1=$Q(@%MAC1)
 ;;I %LENGTH D:'$D(%L1RCV)  K ^GTR000(PRT,GNAME) G END
 .D MSG("*** A NODE TOO LONG :"_%MAC1,3,2) D MSG(GT,4)
 S II=II+1 S ^GTR000(PRT,GNAME,II)=$C(5)_$S($O(^UTILITY($J,GNAME))="":"END",1:"ENDG")_"*"_GNAME_"*"_II_"*"_CHKS_$C(6)
END K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2 Q
ZT D ERREND G EXIT
READ ;
 I $$NALAN'=1 X %US R ANS1:6 Q
 ;
 N H0,A,A1,TIME,SOFR
 S SOFR=$S($$NALAN:12,1:13)
 X %US ;
 S ANS1="" S H0=$P($H,",",2)
 S TIME=2
 X %US F  R *A:TIME Q:A=3  Q:'$T  Q:$P($H,",",2)-H0>2
 Q:A'=3
 S TIME=1
 S ANS1=$C(3) F  R *A:TIME Q:A=SOFR  Q:'$T  D  Q:$L(ANS1)>200
 .S:A'=13&(A'=10)&(A'=12) ANS1=ANS1_$C(A)
 E  Q
 I $L(ANS1)>200 S ANS1=""
 I 1 Q
FAST ;
 N %PR,GT,GT1,GT2,MAC,%MAC1,%MAC2,%II,II,CRC,%SIZE,%STRING
 ;
 S %SIZE=$P($$^%L1FLP(FILEGT),"^",2)
 X %US W $C(4,251)
 O FILEGT:(READONLY:REWIND)
 S %STRING=""
 K ^L2G($J,"ERFAST")
 ;
 S ER=0
 F %II=1:1 U FILEGT R *A Q:$ZEOF  D  I ER S ER=1020 Q
 .S:A=12 A=212
 .S:A=10 A=210
 .S:A=13 A=213
 .S %STRING=%STRING_$C(A)
 .I $L(%STRING)=$G(^%L2G("BLOCK"),1000) D WBL S %STRING=""
 ;
 I $L(%STRING),'ER D WBL S %STRING=""
 ;
 C FILEGT ;;I $$^%L1ZOS(2,FILEGT)
 I ER S ER=1000+ER Q
 X %US W $C(251)
 I 'ER W "OK" I GNLAST W $C(5)_"SOF"_$C(6)
 D ENDLINE
 Q
WR(GT) ;
 U FILEGT W GT,! S %II=%II+1
 Q
WBL ;
 S %RPT=0
WBL1 S %RPT=%RPT+1,CRC=0
 X %US F %II1=1:1:$L(%STRING) S %SMB=$E(%STRING,%II1) W %SMB D
 .S CRC=CRC+(%II1*$A(%SMB))
 ;
 S ^L2G($J,"FAST",%II,"CRC")=CRC
 X %US W $C(3),CRC D ENDLINE
 ;;G WBL2
 R ANS1 ; D READ
 I ANS1[$C(3) S ANS1=$P(ANS1,$C(3),2)
 I ANS1[$C(12) S ANS1=$P(ANS1,$C(12))
 I +ANS1'=+CRC H:'(%RPT#3) 1 G:%RPT<6 WBL1 S ER=$S(ANS1="":3,1:4) S ^L2G($J,"ERFAST")=CRC_"<>"_ANS1
 S ^L2G($J,"FAST",%II,"CRCBACK")=ANS1
 Q:ER
WBL2 I '$D(%L1RCV),$D(%L3GTR) D
 .Q:(%II#10000)
 .D SCALE^%L3GTR(%II,%SIZE,70) X %US
 Q
GLSVN(GNAME) ;
 N %PR,GT,GT1,GT2,MAC,%MAC1,%MAC2,%II,II,CRC,%SIZE,%STRING
 S MAC=$S($E(GNAME)'="^":"^",1:"")_GNAME
 S CRC=0,%II=0
 S %PR=0 I ($D(@MAC)#10)'=0 S %PR=1
 S %MAC2=$R S:$R[")" %MAC2=$E($R,1,$L($R)-1)
 I $E(%MAC2,1,2)="^|" S %MAC2="^"_$P(%MAC2,"|",3,255)
 I %PR S GT1=MAC,GT2=@MAC D WR(GT1),WR(GT2)
 S %MAC1=MAC
 S %MAC1=$Q(@%MAC1)
 F  Q:%MAC1'[%MAC2  Q:%MAC1=""  D  S %MAC1=$Q(@%MAC1)
 .S GT=%MAC1 D WR(GT)
 .S GT=$G(@%MAC1) D WR(GT)
 Q
NALAN(STAM) ;
 I $D(%L2NALAN) Q 2
 I $D(%SCKPORT) Q 2
 Q 0
ENDLINE W !#
 Q
SCALE0(LN) ;
 D SCALE0^%L3GTR(LN)
 Q
SCALE(N,MAX,LN) ;
 D SCALE^%L3GTR(N,MAX,LN)
 Q
MSG(TXT,NOM,DELAY) ;
 Q:$D(%L1RCV)
 U $P:(NOECHO:NOWRAP)
 S %YY=%VG+NOM-1,%XX=%LG+12 X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(TXT,%RG-%LG-20) X %XCL
 I $G(DELAY) H DELAY
 Q

%L2GTR1
%L2GTR1 ;NEW PROGRAM      [ 13.05.07 07:02 ] [ 07.08.06 15:28 ] [ 28.02.06 12:51 ]
 N (%UPRCOD,%XMSG,USERPORT,USERMOD,%L2G1,%SCKPORT)
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X" D ^%L1C
 S %MXDL=440
 I '$D(USERMOD) S USERMOD=1
 I '$D(USERPORT) S USERPORT=$P
 ;
 S DEV=USERPORT
 ;
 I $$NALAN(DEV)=1 S UD=%SCKPORT("USE"),DEV=%SCKPORT
 I $$NALAN(DEV)'=1 S UD="U DEV:(NOECHO:NOWRAP:PASTHRU:NOCENABLE:TERM=$C(13,10))"
 S PRT=$J
 ;
 I $$NALAN(DEV) D
 .S %L2G1("NOCLOSE")=""
 .S PRT=$J
 ;
 I '$D(%L2G1("CONT")) K ^GTR100(PRT)
 ;
ZP I '$$NALAN(DEV) S DEV=USERPORT O DEV::60 E  S END=2 G END
 ;
PORT ;
 K ^L2G1($J) S ^L2G1($J)=$H
 S END=0,SH=0,CNOLD=+$G(^L2G1($J,"CNOLD"))
 S BCCSUM=0,GNAMEOLD=$G(^L2G1($J,"GNAME")),STROUT=""
 S BEG=1
 S H1=$P($H,",",2),BG0=0 X UD
 F  R *BG:$G(%L2G1("TIME"),300) S:BG=0 BG0=BG0+1 S:BG BG0=0 D:BG=4  S:BG=-1&'$D(%L2G1("NOWAIT"))!(BG0>500) END=2 Q:END
 .I $G(%L2G1("TIME"))&($$H(H1)>$G(%L2G1("TIME"))) S END=2 Q
 .D READ Q:END  ; --> STR
 .
 .S H1=$P($H,",",2)
 .S ST1=$P(STR,$C(2)),STRG=$P($P(STR,$C(2),2,240),$C(3),1,$L(STR,$C(3))-1)
 .S GNAME=$P(ST1,"*"),CN=$P(ST1,"*",2),DL=$P(ST1,"*",3)
 .I CN=1 S CNOLD=0,GNAMEOLD=""
 .S SH=SH+1 S ^L2G1($J,"SH",SH)=$E(STR,1,%MXDL)
 .I $D(%L2G1("DISP")) D
 ..I GNAME'=$G(GNAMEOLD) D MSG(GNAME)
 ..I '(SH#10) D MSH(SH)
 .
 .S ZCRC=$$^%L1ZCRC($P(STR,$C(3),1,$L(STR,$C(3))-1),1)
 .S BCCSUM=BCCSUM+ZCRC
 .S OUT=$C(3)_ZCRC
 .
 .X UD
 .I '$$NALAN(DEV) D
 ..F I=1:1:%DELAY R *A:0
 ..W OUT_$C(13)
 ..S ^L2G1($J,"SH",SH,"OUT")=OUT
 .
 .I $$NALAN(DEV),$$ENDGL(STRG) D  I ANS'["OK" G NEXT
 ..W $C(3)_BCCSUM,#! R ANS:5
 ..S ^L2G1($J,"SH",SH,"OUT")=BCCSUM
 ..S ^L2G1($J,"SH",SH,"IN")=ANS
 .
 .I GNAMEOLD="" S GNAMEOLD=GNAME
 .
 .I $$ENDGL(STRG) D
 ..I STRG["SOF",GNAMEOLD'="",$D(^GTR100(PRT,GNAMEOLD)) N GNAME S GNAME=GNAMEOLD
 ..D ZAP
 .
NEXT .I $$ENDGL(STRG) D  S:STRG["SOF" END=1 Q
 ..S END=0,CNOLD=0,BCCSUM=0,GNAMEOLD=""
 ..K ^GTR100(PRT,GNAME)
 .
 .S CNOLD=CN,GNAMEOLD=GNAME
 .S ^L2G1($J,"CNOLD")=CN,^L2G1($J,"GNAME")=GNAME,^L2G1($J,"BCCSUM")=BCCSUM
 .I $L(GNAME),CN S ^GTR100(PRT,GNAME,CN)=STRG
 .S BEG=0 Q
 ;
END ;
 I $G(END)=1,$P($ZS,",",3)="" D
 .S ^L2G1($J,"OK")=1,^L2G1($J,"OKTIME")=$H
 .D MSG("DONE") H 1
 ;
 I $ZS'="" D SVER^%L1X
 I $$NALAN(DEV),$D(%L2G1("DISP")) U $P:(CENABLE)
 I $D(%L2G1("NOCLOSE")) K %L2G1 Q
 K %L2G1
 I $$NALAN(DEV)=1 C %SCKPORT Q
 I $$NALAN(DEV)=2 Q
 I DEV,DEV'=$P C DEV
 Q
ENDGL(STRG)
 I STRG[$C(5),STRG[$C(6),STRG["END"!(STRG["SOF") Q 1
 Q 0
 ;-
ZAP ;
 Q:$G(GNAME)?." "  I '$D(PRT) S PRT=$J
 S J=0 F  S J=J+1 Q:'$D(^GTR100(PRT,GNAME,J))  I $E($G(^(J)))="^" D
 .S:$G(^(J+1))'=$C(7) @(^(J))=$G(^GTR100(PRT,GNAME,J+1))
 .S J=J+1
 S ^L2G1($J,"OK",GNAME)=1,^L2G1($J,"OK",GNAME,"TIME")=$H
 U DEV
 Q
H(H1) ;
 N RZ S RZ=$P($H,",",2)-H1
 I RZ<0 S RZ=RZ+86400
 Q RZ
MSG(GNAME) ;
 Q:'$D(%L2G1("DISP"))
 D ZU(0)
 I '$D(%L2G1("DISP","Y"))!'$D(%L2G1("DISP","X")) Q
 S %XX=%L2G1("DISP","X"),%YY=%L2G1("DISP","Y") X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(GNAME,%L2G1("DISP","L")) X %XCL
 Q
MSH(SH) ;
 Q:$$NALAN(DEV)  Q:'$D(%L2G1("DISP"))
 D ZU(0)
 I '$D(%L2G1("DISP","Y"))!'$D(%L2G1("DISP","X")) W !,SH Q
 S %XX=%L2G1("DISP","X"),%YY=%L2G1("DISP","Y")+1 X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(SH,%L2G1("DISP","L")) X %XCL
 Q
READ ;
 N %J,A,TIME X UD
 ;;I $$NALAN(DEV)=1 D  Q
 .S STR="",%J=0
 .I $D(%L2G1("NOWAIT")) S TIME=99999
 .I '$D(%L2G1("NOWAIT")) S TIME=$G(%L2G1("TIME"),60)
 .F  R *A:TIME Q:'$T  Q:A=251  S TIME=1
 .E  S END=2 Q
 .I A=251 D RFAST Q
 ;
 I $D(%L2G1("NOWAIT")) R STR
 I '$D(%L2G1("NOWAIT")) R STR:$G(%L2G1("TIME"),60) E  S END=2
 I STR[$C(13) S STR=$P(STR,$C(13))
 I STR[$C(10) S STR=$P(STR,$C(10))
 I STR[$C(12) S STR=$P(STR,$C(12))
 I STR[$C(27,95) S STR=$P(STR,$C(27,95))
 Q
RFAST ;
 N STR,STR1,A,B,AOLD,CRC,TIME,ANS,BCC,SH,SH0,RPT,FILEGT
 S SH0=0,RPT=0
RFAST1 S SH0=SH0+1,^L2G1($J,"FAST",SH0)=$H
 S FILEGT=$ZDIST_"GTR1."_PRT
 C FILEGT:(DELETE) O FILEGT:(NEWVERSION:WRITE)
RFAST2 S STR="",STR1="",A="",CRC=0,BCC=0,TIME=3,END=0,ER=0,SH=0
 N A0 S A0=0
 F II=1:1 S AOLD=A X UD R *A:TIME Q:A=251  S:'$T END=2 Q:'$T  D  Q:ER
 .N SMB S SMB=A
 .I A>200,A<251 S A=A-200
 .I A=198 S A=58
 .I A S A0=0
 .I 'A S A0=A0+1 I A0>1000 S ER=1000 Q
 .
 .I $L(STR1)>4000 S ER=5,SH=SH+1,^L2G1($J,"FAST",SH0,SH,"ER")=ER Q
 .I A'=3 I $L(STR1)<4000 S STR1=STR1_$C(A) I A'=12 S CRC=CRC+($L(STR1)*SMB)
 .I A=3 D  S STR1="",CRC=0
 ..X UD R BCC S:$E(BCC)=$C(3) BCC=$P(BCC,$C(3),2)
 ..I BCC[$C(12) S BCC=$P(BCC,$C(12))
 ..I BCC[$C(13) S BCC=$P(BCC,$C(13))
 ..I BCC[$C(10) S BCC=$P(BCC,$C(10))
 ..S SH=SH+1,^L2G1($J,"FAST",SH0,SH,"CRC")=CRC
 ..D MSG("BLOCK : "_SH)
 ..I BCC'=CRC D
 ...S ER=3,^L2G1($J,"FAST",SH0,SH,"ER")=ER_":"_CRC_"<>"_BCC
 ...D MSG("ERROR : "_^L2G1($J,"FAST",SH0,SH,"ER"))
 ..X UD W $C(3),CRC,#! S CRC=0
 ..Q:ER
 ..D RFASTOU
 ;
 I ER S RPT=RPT+1 S:RPT>3 END=2 I 'END S ^L2G1($J,"FAST",SH0,SH,"RPT")=RPT G RFAST2
 C FILEGT
 ;
 I A'=251 S ^L2G1($J,"FAST",SH0,SH,"ERA")=A
 I END=2 S ^L2G1($J,"FAST",SH0,SH,"END")=END
 I A'=251!END S END=2 Q
 ;
 X UD R ANS
 S ^L2G1($J,"FAST",SH0,SH,"LASTANS")=ANS
 Q:ANS'["OK"
RESTGT O FILEGT:(READONLY:REWIND)
 F  U FILEGT R A Q:$ZEOF  D
 .I $E(A)="^",$E(A,2)?1A,$L(A)>1 R B Q:$ZEOF  S @A=B
 C FILEGT ;;I $$^%L1ZOS(2,FILEGT)
 S END=1
 Q
RFASTOU ;
 N J F J=1:1:$L(STR1) D
 .U FILEGT W $E(STR1,J)
 Q
ZU(PORT) ;
 I $P["tty" U $P:(NOECHO:NOWRAP) Q
 U PORT Q
NALAN(DEV) ;
 I $D(%SCKPORT)>9 Q 1
 I $G(DEV)["SCK$" Q 2
 Q 0

%L2GTR10
%L2GTR1 ;NEW PROGRAM      [ 10.08.06 09:48 ] [ 28.02.06 12:51 ] [ 27.02.06 11:08 ]
 N (%UPRCOD,%XMSG,USERPORT,USERMOD,%L2G1,%SCKPORT)
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X" D ^%L1C
 S %MXDL=440
 I '$D(USERMOD) S USERMOD=1
 I '$D(USERPORT) S USERPORT=$P
 ;
 S DEV=USERPORT
 ;
 I $$NALAN(DEV)=1 S UD=%SCKPORT("USE"),DEV=%SCKPORT
 I $$NALAN(DEV)'=1 S UD="U DEV:(NOECHO:NOWRAP:PASTHRU:NOCENABLE:TERM=$C(13,10))"
 S PRT=$J
 ;
 I $$NALAN(DEV) D
 .S %L2G1("NOCLOSE")=""
 .S PRT=$J
 ;
 I '$D(%L2G1("CONT")) K ^GTR100(PRT)
 ;
ZP I '$$NALAN(DEV) S DEV=USERPORT O DEV::60 E  S END=2 G END
 ;
PORT ;
 K ^L2G1($J) S ^L2G1($J)=$H
 S END=0,SH=0,CNOLD=+$G(^L2G1($J,"CNOLD"))
 S BCCSUM=0,GNAMEOLD=$G(^L2G1($J,"GNAME")),STROUT=""
 S BEG=1
 S H1=$P($H,",",2),BG0=0 X UD
 F  R *BG:$G(%L2G1("TIME"),300) S:BG=0 BG0=BG0+1 S:BG BG0=0 D:BG=4  S:BG=-1&'$D(%L2G1("NOWAIT"))!(BG0>500) END=2 Q:END
 .I $G(%L2G1("TIME"))&($$H(H1)>$G(%L2G1("TIME"))) S END=2 Q
 .D READ Q:END
 .S H1=$P($H,",",2)
 .S ST1=$P(STR,$C(2)),STRG=$P($P(STR,$C(2),2,240),$C(3),1,$L(STR,$C(3))-1)
 .S GNAME=$P(ST1,"*"),CN=$P(ST1,"*",2),DL=$P(ST1,"*",3)
 .I CN=1 S CNOLD=0,GNAMEOLD=""
 .S SH=SH+1 S ^L2G1($J,"SH",SH)=$E(STR,1,%MXDL)
 .I $D(%L2G1("DISP")) D
 ..I GNAME'=$G(GNAMEOLD) D MSG(GNAME)
 ..I '(SH#10) D MSH(SH)
 .S ZCRC=$$^%L1ZCRC($P(STR,$C(3),1,$L(STR,$C(3))-1),1)
 .S BCCSUM=BCCSUM+ZCRC
 .S OUT=$C(3)_ZCRC
 .
 .X UD
 .I '$$NALAN(DEV) D
 ..F I=1:1:%DELAY R *A:0
 ..W OUT_$C(13)
 ..S ^L2G1($J,"SH",SH,"OUT")=OUT
 .;;I $$NALAN(DEV)=1 D
 ..W OUT,#!
 ..S ^L2G1($J,"SH",SH,"OUT")=OUT
 .
 .I $$NALAN(DEV),$$ENDGL(STRG) D  I ANS'["OK" G NEXT
 ..W $C(3)_BCCSUM,#! R ANS:5
 ..S ^L2G1($J,"SH",SH,"OUT")=BCCSUM
 ..S ^L2G1($J,"SH",SH,"IN")=ANS
 .
 .I GNAMEOLD="" S GNAMEOLD=GNAME
 .
 .I $$ENDGL(STRG) D
 ..I STRG["SOF",GNAMEOLD'="",$D(^GTR100(PRT,GNAMEOLD)) N GNAME S GNAME=GNAMEOLD
 ..D ZAP
 .
NEXT .I $$ENDGL(STRG) D  S:STRG["SOF" END=1 Q
 ..S END=0,CNOLD=0,BCCSUM=0,GNAMEOLD=""
 ..K ^GTR100(PRT,GNAME)
 .
 .S CNOLD=CN,GNAMEOLD=GNAME
 .S ^L2G1($J,"CNOLD")=CN,^L2G1($J,"GNAME")=GNAME,^L2G1($J,"BCCSUM")=BCCSUM
 .I $L(GNAME),CN S ^GTR100(PRT,GNAME,CN)=STRG
 .S BEG=0 Q
 ;
END ;
 I $G(END)=1,$P($ZS,",",3)="" D
 .S ^L2G1($J,"OK")=1,^L2G1($J,"OKTIME")=$H
 .D MSG("DONE") H 1
 ;
 I $ZS'="" D SVER^%L1X
 I $$NALAN(DEV),$D(%L2G1("DISP")) U $P:(CENABLE)
 I $D(%L2G1("NOCLOSE")) K %L2G1 Q
 K %L2G1
 I $$NALAN(DEV)=1 C %SCKPORT Q
 I $$NALAN(DEV)=2 Q
 I DEV,DEV'=$P C DEV
 Q
ENDGL(STRG)
 I STRG[$C(5),STRG[$C(6),STRG["END"!(STRG["SOF") Q 1
 Q 0
 ;-
ZAP ;
 Q:$G(GNAME)?." "  I '$D(PRT) S PRT=$J
 S J=0 F  S J=J+1 Q:'$D(^GTR100(PRT,GNAME,J))  I $E($G(^(J)))="^" D
 .S:$G(^(J+1))'=$C(7) @(^(J))=$G(^GTR100(PRT,GNAME,J+1))
 .S J=J+1
 S ^L2G1($J,"OK",GNAME)=1,^L2G1($J,"OK",GNAME,"TIME")=$H
 U DEV
 Q
H(H1) ;
 N RZ S RZ=$P($H,",",2)-H1
 I RZ<0 S RZ=RZ+86400
 Q RZ
MSG(GNAME) ;
 Q:'$D(%L2G1("DISP"))
 D ZU(0)
 I '$D(%L2G1("DISP","Y"))!'$D(%L2G1("DISP","X")) Q
 S %XX=%L2G1("DISP","X"),%YY=%L2G1("DISP","Y") X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(GNAME,%L2G1("DISP","L")) X %XCL
 Q
MSH(SH) ;
 Q:$$NALAN(DEV)  Q:'$D(%L2G1("DISP"))
 D ZU(0)
 I '$D(%L2G1("DISP","Y"))!'$D(%L2G1("DISP","X")) W !,SH Q
 S %XX=%L2G1("DISP","X"),%YY=%L2G1("DISP","Y")+1 X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(SH,%L2G1("DISP","L")) X %XCL
 Q
READ ;
 N %J,A,TIME X UD
 ;;I $$NALAN(DEV)=1 D  Q
 .S STR="",%J=0
 .I $D(%L2G1("NOWAIT")) S TIME=99999
 .I '$D(%L2G1("NOWAIT")) S TIME=$G(%L2G1("TIME"),60)
 .F  R *A:TIME Q:'$T  Q:A=251  S TIME=1
 .E  S END=2 Q
 .I A=251 D RFAST Q
 ;
 I $D(%L2G1("NOWAIT")) R STR Q
 R STR:$G(%L2G1("TIME"),60) E  S END=2
 Q
RFAST ;
 N STR,STR1,A,B,AOLD,CRC,TIME,ANS,BCC,SH,SH0,RPT,FILEGT
 S SH0=0,RPT=0
RFAST1 S SH0=SH0+1,^L2G1($J,"FAST",SH0)=$H
 S FILEGT=$ZDIST_"GTR1."_PRT
 C FILEGT:(DELETE) O FILEGT:(NEWVERSION:WRITE)
RFAST2 S STR="",STR1="",A="",CRC=0,BCC=0,TIME=3,END=0,ER=0,SH=0
 N A0 S A0=0
 F II=1:1 S AOLD=A X UD R *A:TIME Q:A=251  S:'$T END=2 Q:'$T  D  Q:ER
 .N SMB S SMB=A
 .I A>200,A<251 S A=A-200
 .I A=198 S A=58
 .I A S A0=0
 .I 'A S A0=A0+1 I A0>1000 S ER=1000 Q
 .
 .I $L(STR1)>4000 S ER=5,SH=SH+1,^L2G1($J,"FAST",SH0,SH,"ER")=ER Q
 .I A'=3 I $L(STR1)<4000 S STR1=STR1_$C(A) I A'=12 S CRC=CRC+($L(STR1)*SMB)
 .I A=3 D  S STR1="",CRC=0
 ..X UD R BCC S:$E(BCC)=$C(3) BCC=$P(BCC,$C(3),2)
 ..I BCC[$C(12) S BCC=$P(BCC,$C(12))
 ..I BCC[$C(13) S BCC=$P(BCC,$C(13))
 ..I BCC[$C(10) S BCC=$P(BCC,$C(10))
 ..S SH=SH+1,^L2G1($J,"FAST",SH0,SH,"CRC")=CRC
 ..D MSG("BLOCK : "_SH)
 ..I BCC'=CRC D
 ...S ER=3,^L2G1($J,"FAST",SH0,SH,"ER")=ER_":"_CRC_"<>"_BCC
 ...D MSG("ERROR : "_^L2G1($J,"FAST",SH0,SH,"ER"))
 ..X UD W $C(3),CRC,#! S CRC=0
 ..Q:ER
 ..D RFASTOU
 ;
 I ER S RPT=RPT+1 S:RPT>3 END=2 I 'END S ^L2G1($J,"FAST",SH0,SH,"RPT")=RPT G RFAST2
 C FILEGT
 ;
 I A'=251 S ^L2G1($J,"FAST",SH0,SH,"ERA")=A
 I END=2 S ^L2G1($J,"FAST",SH0,SH,"END")=END
 I A'=251!END S END=2 Q
 ;
 X UD R ANS
 S ^L2G1($J,"FAST",SH0,SH,"LASTANS")=ANS
 Q:ANS'["OK"
RESTGT O FILEGT:(READONLY:REWIND)
 F  U FILEGT R A Q:$ZEOF  D
 .I $E(A)="^",$E(A,2)?1A,$L(A)>1 R B Q:$ZEOF  S @A=B
 C FILEGT ;;I $$^%L1ZOS(2,FILEGT)
 S END=1
 Q
RFASTOU ;
 N J F J=1:1:$L(STR1) D
 .U FILEGT W $E(STR1,J)
 Q
ZU(PORT) ;
 I $P["tty" U $P:(NOECHO:NOWRAP) Q
 U PORT Q
NALAN(DEV) ;
 I $D(%SCKPORT)>9 Q 1
 I $G(DEV)["SCK$" Q 2
 Q 0

%L2GTR11
%L2GTR1 ;NEW PROGRAM      [ 06.07.05 12:17 ] [ 07/06/05  7:53 AM ] [ 06.07.05  7:28 AM ]
 N (%UPRCOD,%XMSG,USERPORT,USERMOD,%L2G1,%L2NALAN) D ^%L1C
 I '$D(USERMOD) S USERMOD=1
 I '$D(USERPORT) S USERPORT=$P
 S PRT=$J N $ZT S $ZT="ZG "_$ZL_":END^%L2GTR1"
 I '$D(%L2G1("CONT")) K ^GTR100(PRT)
 S %MXDL=500
 I $D(%L2NALAN("DEV")) D
 .S USERPORT=56
 .S (DEVIN,DEVOUT)=%L2NALAN("DEV"),DEV=USERPORT
 .S %L2G1("NOCLOSE")=""
 .S PRT=$J
 I '$D(%L2G1("CONT")) K ^GTR100(PRT)
 ;W !?20,"CTRL/C - EXIT",!
ZP I USERPORT'=56 S DEV=$P I $G(@$$^W4DEV@(USERPORT))>3 S DEV=@$$^W4DEV@(USERPORT) O DEV::60 E  S END=2 G END
PORT ;
 ;S END=0,CNOLD=0,BCCSUM=0,GNAMEOLD="",STROUT="",SH=0
 K ^L2G1 ;;("SH")
 S END=0,SH=0,CNOLD=+$G(^L2G1("CNOLD")),BCCSUM=+$G(^L2G1("BCC")),GNAMEOLD=$G(^L2G1("GNAME")),STROUT=""
 U $P:(NOCENABLE) S BEG=1
 S UD="U DEV:(NOECHO:NOWRAP:PASTHRU:NOCENABLE:TERM=$C(13,10))"
 I DEV=$G(@$$^W4DEV@(56)) S UD="U DEV:DEVIN"
 X UD
 S H1=$P($H,",",2),BG0=0
 F  R *BG:$G(%L2G1("TIME"),60) S:BG=0 BG0=BG0+1 S:BG BG0=0 D:BG=4  S:BG=-1&'$D(%L2G1("NOWAIT"))!(BG0>500) END=2 Q:END
 .I $G(%L2G1("TIME"))&($$H(H1)>$G(%L2G1("TIME"))) S END=2 Q
 .D READ Q:END
 .S ST1=$P(STR,$C(2)),STRG=$P($P(STR,$C(2),2,240),$C(3),1,$L(STR,$C(3))-1)
 .S GNAME=$P(ST1,"*"),CN=$P(ST1,"*",2),DL=$P(ST1,"*",3)
 .I CN=1 S CNOLD=0,BCCSUM=0,GNAMEOLD=""
 .S SH=SH+1 S ^L2G1("SH",SH)=$E(STR,1,%MXDL)
 .I $D(%L2G1("DISP")) D  X UD
 ..I GNAME'=$G(GNAMEOLD) D MSG(GNAME)
 ..I '(SH#10) D MSH(SH)
 .S ^L2G1("SH",SH,"OUT")=$C(3)_$$^%L1ZCRC($P(STR,$C(3),1,$L(STR,$C(3))-1),1)
 .I $G(@$$^W4DEVI@(DEV))'=56 D
 ..F I=1:1:%DELAY R *A:0
 ..W ^("OUT")_$C(13)
 .I $G(@$$^W4DEVI@(DEV))=56 D
 ..U DEV ;:DEVOUT
 ..W ^("OUT"),#!
 .I GNAMEOLD="" S GNAMEOLD=GNAME
 .I STRG[$C(5),STRG[$C(6),STRG["SOF" S END=1 Q  ;*** END ROUT
 .;;I STRG[$C(5),STRG[$C(6),STRG["END",GNAMEOLD=$P(STRG,"*",2) D  Q  ;*** END ROUT
 .I STRG[$C(5),STRG[$C(6),STRG["END" D  Q  ;*** END ROUT
 ..D ZAP S END=0,CNOLD=0,BCCSUM=0,GNAMEOLD="" K ^GTR100(PRT,GNAME) Q
 .S CNOLD=CN,GNAMEOLD=GNAME
 .S ^L2G1("CNOLD")=CN,^L2G1("GNAME")=GNAME,^L2G1("BCC")=BCCSUM
 .I $L(GNAME),CN S ^GTR100(PRT,GNAME,CN)=STRG
 .S BEG=0
END ;
 I $G(END)=1,$ZS="" D
 .S ^L2G1("OK")=1,^L2G1("OKTIME")=$H
 .D MSG("DONE") H 1
 I $ZS'="" D SVER^%L1X
 I $D(%L2G1("NOCLOSE")) K %L2G1 Q
 K %L2G1
 I DEV,DEV'=$P C DEV
 U $P:(CENABLE:NOPASTHRU) K %L2G1
 Q
 ;-
ZAP ;
 Q:$G(GNAME)=""  I '$D(PRT) S PRT=$J
 S J=0 F  S J=J+1 Q:'$D(^GTR100(PRT,GNAME,J))  I $E($G(^(J)))="^" S:$G(^(J+1))'=$C(7) @(^(J))=$G(^GTR100(PRT,GNAME,J+1)) S J=J+1
 S ^L2G1("OK",GNAME)=1,^L2G1("OK",GNAME,"TIME")=$H
 U DEV
 Q
H(H1) ;
 N RZ S RZ=$P($H,",",2)-H1
 I RZ<0 S RZ=RZ+86400
 Q RZ
MSG(GNAME) ;
 ;Q:$G(DEV)=56  Q:'$D(%L2G1("DISP"))
 Q:'$D(%L2G1("DISP"))
 D ZU(0)
 I '$D(%L2G1("DISP","Y"))!'$D(%L2G1("DISP","X")) Q
 S %XX=%L2G1("DISP","X"),%YY=%L2G1("DISP","Y") X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(GNAME,%L2G1("DISP","L")) X %XCL
 Q
MSH(SH) ;
 Q:'$D(%L2G1("DISP"))
 D ZU(0)
 I '$D(%L2G1("DISP","Y"))!'$D(%L2G1("DISP","X")) W !,SH Q
 S %XX=%L2G1("DISP","X"),%YY=%L2G1("DISP","Y")+1 X %POSIC
 W %LIGHT1,$$ENG^%L1FRM(SH,%L2G1("DISP","L")) X %XCL
 Q
READ ;
 N %J,A,TIME
 I $G(@$$^W4DEVI@(DEV))=56 D  Q
 .S STR="",%J=0
 .I $D(%L2G1("NOWAIT")) S TIME=99999
 .I '$D(%L2G1("NOWAIT")) S TIME=$G(%L2G1("TIME"),60)
 .F  R *A:TIME Q:'$T  Q:A=251  S TIME=1
 .E  S END=2 Q
 .I A=251 D RFAST Q
 ;
 I $D(%L2G1("NOWAIT")) R STR
 E  R STR:$G(%L2G1("TIME"),60) E  S END=2 Q
 Q
RFAST ;
 N STR,STR1,A,B,AOLD,CRC,TIME,ANS,BCC,SH,SH0,RPT,FILEGT
 S SH0=0,RPT=0
RFAST1 S SH0=SH0+1,^L2G1("FAST",SH0)=$H
 S FILEGT="GTR1."_PRT
 O FILEGT:(NEWVERSION:WRITE)
RFAST2 S STR="",STR1="",A="",CRC=0,BCC=0,TIME=3,END=0,ER=0,SH=0
 F II=1:1 S AOLD=A X UD R *A:TIME Q:A=251  S:'$T END=2 Q:'$T  D  Q:ER
 .S:A=212 A=12
 .;;S ^L2G1("FAST","II",II)=A
 .I $L(STR1)>4000 S ER=5,SH=SH+1,^L2G1("FAST",SH0,SH,"ER")=ER Q
 .I A'=3 I $L(STR1)<4000 S STR1=STR1_$C(A) I A'=12 S CRC=CRC+($L(STR1)*A)
 .I A=3 D  S STR1="",CRC=0
 ..X UD R BCC S:$E(BCC)=$C(3) BCC=$P(BCC,$C(3),2)
 ..I BCC[$C(12) S BCC=$P(BCC,$C(12))
 ..I BCC[$C(13) S BCC=$P(BCC,$C(13))
 ..I BCC[$C(10) S BCC=$P(BCC,$C(10))
 ..S SH=SH+1,^L2G1("FAST",SH0,SH,"CRC")=CRC
 ..D MSG("BLOCK : "_SH)
 ..I BCC'=CRC D
 ...S ER=3,^L2G1("FAST",SH0,SH,"ER")=ER_":"_CRC_"<>"_BCC
 ...D MSG("ERROR : "_^L2G1("FAST",SH0,SH,"ER"))
 ..X UD W $C(3),CRC,#! S CRC=0
 ..Q:ER
 ..D RFASTOU
 ;
 I ER S RPT=RPT+1 S:RPT>3 END=2 I 'END S ^L2G1("FAST",SH0,SH,"RPT")=RPT G RFAST2
 C FILEGT
 ;
 I A'=251 S ^L2G1("FAST",SH0,SH,"ERA")=A
 I END=2 S ^L2G1("FAST",SH0,SH,"END")=END
 I A'=251!END S END=2 Q
 ;
 X UD R ANS
 S ^L2G1("FAST",SH0,SH,"LASTANS")=ANS
 Q:ANS'["OK"
RESTGT O FILEGT:(REWIND:READONLY)
 F  U FILEGT R A Q:$ZC  D
 .I $E(A)="^",$E(A,2)?1A,$L(A)>1 R B Q:$ZC  S @A=B
 C FILEGT ;;I $ZOS(2,FILEGT)
 S END=1
 Q
RFASTOU ;
 N J F J=1:1:$L(STR1) D
 .U FILEGT W $E(STR1,J)
 Q
ZU(PORT) ;
 I $P["tty" U $P:(NOECHO:NOWRAP) Q
 U ^[$$^%L1GLD]dev(1):(NOECHO:NOWRAP)
 Q

%L2ISNAL
%L2ISNAL ; [ 31.01.06 20:27 ] [
 I $D(^[$$^%L1GLD]PL("ADSL"))=11 Q 1
 Q 0

%L2MBG
%L2MBG ; INPUT FROM DISPLAY [ 16.12.03 10:33 ] [ 14.12.03 16:46 ] [ 002/17/00  4:38 PM ]
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 I '$D(%POSIC) D ^%L1C
 K %BE,%LS,%S,%L1DS,OLDDAT,YOLD,SHOLD,SCHOLD
 N COLG,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPG,NPGL,OTB,PG,%PRNEW,RKV,RSCR,RZD,%REFH1
 N SHOLD,SCHOLD,STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2 ;SH,SCH
 N %HBRY S %HBRY=""
 I $D(%MBG("PAR"))>9 D ^%L1MBG1
 S NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
BEG D INIT
 S %REFH1=$G(%MBG("REF"),"^MBG($P")
 F JJ=1:1:COLG S %MBG("X",JJ)=43,%MBG("Y",JJ)=JJ+VGR0
 S STEP=1 D PS
 Q:$D(%L1MBG)
L0 ;
LOOP ;
 K %MBG("TO") X %XCL
 K %INV
 I $D(%MBG("GWUL")),SH>%MBG("GWUL") W *7 G RSM
 K %MBG("NEW"),%PRPL
 F JJ=1:1:COLG S %MBG("O",JJ)=""
 K JJ
ML ;
 F JJ=1:1 Q:'$D(%MBG("OU",JJ))
 S %FIRST=JJ K JJ
 S J=0
 G INC
LGR U $P:(NOECHO:NOWRAP) K %TO,%FLL,%S,%L1DS W %ENG
 K %MBG("TO",J)
 S (%MOLD,%MBG("O",J))=$P($G(@(%REFH1_",SH)")),RZD,J)
 S %XX=0,%YY=24 X %POSIC W %chists
 I $D(%MBG("H",J)) S %SAY=%MBG("H",J)_"++24,78,HH,I" X %XMSG
 S RKV=$P($G(@(%REFH1_",SH)")),RZD,J)
 I RKV'?.P S %MBG("O",J)=RKV
 K RKV
 I $D(%MBG("DO",J)) X %MBG("DO",J) I $G(%MBG("TO",J))="P" D PS
 S %YY=%MBG("Y",J)
 I %YY>(STEP*COLG+VGR)!(%YY>23) S:%YY>23 %YY=23 D ZAPR G RSM:OTB=".",BEG
 S %XX=%MBG("X",J)
 X %POSIC
 S %LS=%MBG("D",J) S %S=%MBG("O",J) S %INV=""
 S CIST=$G(%MBG("S",J)) K:CIST="" CIST S %PRNEW=0
 I %MBG("RGS",J)="E" D  I %S'["==",$D(%MBG("DR",J)),$L($P(%S,"."))>(%MBG("D",J)-%MBG("DR",J)-1) D ER G LGR
 .S %XX=%XX-%LS X %POSIC S $X=%XX
 .S %FL="" K %BE D ^%ZMSL K %INV,%FL Q:%S["=="
 .I $D(%MBG("DR",J)),%S'["%" S %S=$J(%S,%MBG("DR",J)+1,%MBG("DR",J))
 I %MBG("RGS",J)="H" S $X=%XX-1,$Y=%YY D ^%L1ZMS
 I %MBG("RGS",J)="HH" D
 .N %X1,%Y1,%X2,%Y2
 .S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+STEP-1,%LS=%LS*STEP D ^%L1WH
 .S %L1WH="" K %INV D ^%L1WH K %L1WH
 .Q
 I %MBG("RGS",J)="D" S %XX=%XX-8 S $X=%XX S %L1DS=$TR(%S,".","") D ^%L1DAT I %S'="" S %S=%L1DAT1 ; LGR --> SET
 I %MBG("RGS",J)="T" S %XX=%XX-8 S $X=%XX S %L1TS=$TR(%S,".","") D ^%L1TIME I %S'="" S %S=%L1TIME1 ; LGR --> SET
 S DL=$S(%MBG("RGS",J)="D":8,1:%MBG("D",J)) ;***
 W %ENG S %XX=%MBG("X",J)-DL
 I $G(%TO)="DEL",'$D(%MBG("DELAS")) D DEL G:%TO'="PGUP" BEG G PGUP
 I %S["==",J=%FIRST,$O(^(SH))="" G RSM
 S %X000=%XX I %MBG("RGS",J)'="HH" X %POSIC X %XCL X:$D(%PRPL) %LIGHT W $J(%S,DL) ;***
 S $P(@(%REFH1_",SH)"),RZD,J)=%S
 I %MBG("O",J)'=%S!$D(%MBG("NEW",J))!(%MBG("O",J)="?")!(%MBG("O",J)="*")!($G(%TO)'="") S %PRNEW=1
 S %MBG("O",J)=%S
IBUD ;
 I %PRNEW,$D(%MBG("C",J)),%MBG("C",J)'?.P S JOLD=J D  D:$G(%MBG("TO",J))="PL" PL G:$G(%MBG("TO",J))'="P" SET D PS G SET ;G BEG
 .I %OPT=1 D GET^%VIDEO("OLD",0,1,79,VGR0-1,2)
 .X %MBG("C",J) F J=1:1 Q:'$D(%MBG("O",J))  I $G(%MBG("O",J))'?.P S $P(@(%REFH1_",SH)"),RZD,J)=%MBG("O",J)
 .I %OPT=1 D PUT^%VIDEO("OLD",0,1,79,VGR0-1,2)
 .S J=JOLD
 .Q
SET ;
NAZAD S:$G(%TO)="END" %TO="UP"
 I $D(%TO),%TO="UP",J>%FIRST S J=J-1 G:'$D(%MBG("OU",J)) LGR G NAZAD
 ;I $G(%TO)'="",'$D(%MBG("NEW")) G:J=%FIRST RSM G LGR
 I $G(%TO)="UP" G:J=%FIRST RSM G LGR
INC S J=J+1
 I J>COLG G RSM
 I $D(%MBG("OU",J)) G INC
 G LGR
UP ;
 I %TO="UP",J>1 S J=J-1 G LGR
 I J>COLG G RSM
 I %TO="END" G RSM
PGUP ;
 I %TO="PGUP" G:SH'>1 ML:'$D(%L1MBG),END S SH=SH-1 K %MBG("TO") G BEG
 I %TO="PGDW" S SH=SH+1 K %MBG("TO") G BEG
 D CLOU G LOOP
CLOU F JJ=1:1:COLG I $G(%MBG("OU",JJ))'="IN" K %MBG("OU",JJ)
 Q
PL S GG=$G(@(%REFH1_",SH)")),I=0 ;
 D INIT
 S %YY=VGR0 D PG Q
RSM ;
 I $D(%MBG("RSM")) D @%MBG("RSM")
END Q
PS N %YY,J
 D CLEAR S %SAY=NPG_"++"_(VGR0-1)_","_(X1+2)_",EE"
 X %XMSG S %SAY=" cenr++"_(VGR0-1)_","_(X1+8)_",HH" X %XMSG
 F JJ=1:1:COLG D
 .S %SAY=%MBG("Z",JJ)_"++"_(JJ+VGR0)_","_(%MBG("X",JJ)+30)_",HH," X %XMSG
 .S %SAY=":++"_(JJ+VGR0)_","_(%MBG("X",JJ)+2)_",HH," X %XMSG
 S %YY=VGR0 D P S %YY=VGR0
 X %XCL Q
P N I,%S,%L1DS,J ;
 I $D(@(%REFH1_",SH)")) D PG
 ; S %SAY="PG-DW++"_(Y2-2)_",8,EE,I" X %XMSG S %SAY=" - d`ad cenr++"_(Y2-2)_",28,HH" X %XMSG
 ; S %SAY="PG-UP++"_(Y2-2)_",35,EE,I" X %XMSG S %SAY=" - mcew cenr++"_(Y2-2)_",53,HH" X %XMSG
 ; S %SAY="==,"_$S(%OPT=65:"<PF11>",1:"<ESC>")_"++"_(Y2-2)_",57,EE,I" X %XMSG S %SAY=" - meiq++"_(Y2-2)_",75,HH" X %XMSG
 ;I '$D(%MBG("DELAS")) S %SAY=" <CNTR>/U++"_(Y2-1)_",31,EE" X %XMSG S %SAY=" - lhal ++"_(Y2-1)_",48,HH" X %XMSG
 Q
PG N RKV,J,DL X %XCL
 F J=1:1:COLG S DL=$S(%MBG("RGS",J)="D":8,1:%MBG("D",J)) S %XX=%MBG("X",J)-DL S %YY=%MBG("Y",J) X %POSIC D
 .W:$D(%MBG("INV",J)) %CLI
 .S RKV=$P($G(^(SH)),RZD,J)
 .I %MBG("RGS",J)="HH" D  Q
 ..N %X1,%Y1,%X2,%Y2
 ..S %X1=%XX,%X2=%XX+DL-1,%Y1=%YY,%Y2=%Y1+STEP-1,%S=RKV S %L1WH="" D ^%L1WH K %L1WH,%S
 ..Q
 .S RKV=$E(RKV,1,DL)
 .W $S('$D(%MBG("DR",J)):$J(RKV,DL),1:$J(RKV,DL,%MBG("DR",J))) X %XCL
 Q
CLEAR ;
 N %XX,%YY,I
 F I=Y1:1:Y2-2 S %XX=X1,%YY=I X %POSIC W %chists
 D RBUA
 Q
ZAPR Q
ER ;
 W *7 S %SAY=" d`iby " X %XMSGN
 Q
INIT S:'$D(NPG) NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 S VGR0=$G(%MBG("VGR0"),1),VGR=$G(%MBG("VGR"),3)
 S Y1=VGR0,X1=$G(%MBG("LL2"),2),Y2=$G(%MBG("NGR"),24)
 S COLG=%MBG("COLG")
 S XX0=$G(%MBG("LR2"),70)+5,X2=XX0+1 S:XX0>79 XX0=79
 Q
RBUA ; INPUT X1,X2,Y1,Y2
 D ^%L1RBUA
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q

%L2MBS
%L2MBS ; DATA INPUT [ 25.02.05 13:00 ] [ 11/24/91  6:00 PM ]
 D ^%L1C
INP ; ------------------- INPUT
 N I,%ECHO,%HBRY,%XX,%YY ;,COLS,LL,LB,LT,LZ,LR
 ;D ^%L2MBS1
 S:'$D(%FIRST) %FIRST=1
 U $P:(NOECHO:NOWRAP)
 F JJ=1:1:COLS S %SAY=%MBS("Z",JJ)_"++"_%MBS("VGR0")_","_%MBS("X",JJ)_",HH,I" X %XMSG
 D PC Q:$D(%L2MBS)
 S I=1 K %ECHO S %HBRY=""
LOOP I $D(%MBS("DO",I)) X %MBS("DO",I) ;**************
 S %XX=0,%YY=24 X %POSIC W %chists
 I $D(%MBS("H",I)) S %SAY=%MBS("H",I)_"++24,78,HH,I" X %XMSG ;**************
 U $P:(NOECHO:NOWRAP) K %FLL W %ENG
 S %YY=%MBS("Y",I),%XX=%MBS("X",I) X %POSIC S $Y=%YY
 S %LS=%MBS("D",I,1) K CIST S %S=%MBS("O",I) S %INV=""
 S CIST=%MBS("S",I) K:CIST="" CIST
 I %MBS("RGS",I)="E" S %XX=%XX-%LS X %POSIC S $X=%XX S CIST="0123456789-,.;" S %FL="" D ^%ZMSL K %FL
 I %MBS("RGS",I)="H" S %XX=%XX-1,$X=%XX D ^%L1ZMS
 I %MBS("RGS",I)="D" S %XX=%XX-8,$X=%XX D ^%L1DAT S %S=%L1DAT1
 I %MBS("RGS",I)="T" S %XX=%XX-8,$X=%XX D ^%L1TIME S %S=%L1TIME1
 W %ENG S %XX=%MBS("X",I)-%MBS("D",I,1) X %POSIC X %XCL W $J(%S,%MBS("D",I,1))
 S %MBS("O",I)=%S
 I $D(%MBS("C",I)) D
 .S IOLD=I
 .X %MBS("C",I)
 .S I=IOLD
 .D PC
NAZAD I $D(%TO),%TO="UP",I>%FIRST S I=I-1 G:'$D(%MBS("OU",I)) LOOP G NAZAD
 I $D(%TO),%TO="UP",I=1 G LOOP
INC S I=I+1 G:$D(%MBS("OU",I)) INC
 I I>COLS G END
 G LOOP
 Q
PC ;
 N I
 U $P:(NOECHO:NOWRAP)
 I '$D(%POSIC) D ^%L1C
 I %TYPCRT="PC" %ENG,$C(27,91)_LT_";"_LL_";"_LB_";"_LR_"b"
 E  S Y1=LT,X1=LL,Y2=LB,X2=LR D RBUA^%L3MENU
 F I=1:1:COLS W %ENG D
 .S %YY=%MBS("Y",I),%XX=%MBS("X",I)-%MBS("D",I,1) X %POSIC
 .W %HBR
 .S:'$D(%MBS("O",I)) %MBS("O",I)=""
 .W $J(%MBS("O",I),%MBS("D",I,1))
 Q
END Q

%L2MBS1
%L2MBS1 ; INIT07/14/91 12:05 PM ] [ 11/24/91  2:51 PM ]
 N ZAPR,I
 S LZ=0,LT=24,LB=0,LL=80,LR=0,LX=0
 F I=1:1 Q:'$D(%MBS("PAR",I))  S ZAPR=$P(%MBS("PAR",I),"#") D
 .S %MBS("Z",I)=$P(ZAPR,";",2) I $L(%MBS("Z",I))>LZ S LZ=$L(%MBS("Z",I))
 .S %MBS("Y",I)=$P($P(ZAPR,";",3),","),%MBS("X",I)=$P($P(ZAPR,";",3),",",2)
 .S %MBS("INV",I)=$P($P(ZAPR,";",3),",",3) I %MBS("INV",I)'="I" K %MBS("INV",I)
 .I %MBS("Y",I)>LB S LB=%MBS("Y",I)
 .I %MBS("Y",I)<LT S LT=%MBS("Y",I)
 .I %MBS("X",I)>LX S LX=%MBS("X",I)
 .S %MBS("D",I,1)=$P($P(ZAPR,";",4),",")
 .S %MBS("DR",I)=$P($P(ZAPR,";",4),",",2)
 .I %MBS("X",I)-%MBS("D",I,1)<LL S LL=%MBS("X",I)-%MBS("D",I,1)
 .S %MBS("RGS",I)=$P(ZAPR,";",5)
 .S %MBS("S",I)=$P(ZAPR,";",6)
 .S %MBS("C",I)=$P(%MBS("PAR",I),"#",3) I %MBS("C",I)="" K %MBS("C",I)
 .S %MBS("H",I)=$P(%MBS("PAR",I),"#",4) I %MBS("H",I)="" K %MBS("H",I)
 .S %MBS("O",I)=$P(%MBS("PAR",I),"#",2)
 .I $E(%MBS("O",I))="""" S %MBS("O",I)=$P(%MBS("O",I),"""",2),%MBS("OU",I)="IN"
 .I $E(%MBS("O",I))="@" S %MBS("DO",I)=$E(%MBS("O",I),2,255) K %MBS("O",I)
 S COLS=I-1
 S LB=LB+2 S:LB>23 LB=23
 S LT=LT-1 S:LT<0 LT=0
 S:LZ>70 LZ=70
 S LR=LX+4 S:LR>80 LR=80
 S:LL<0 LL=0
 Q

%L2MD
%L2MD(PORTN,USERMOD,NUMBER,MDTONE,US,XON,MDLKH) ;   [ 08.02.06 12:55 ] [ 07.02.06 09:16 ] [ 01.02.06 14:12 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PORTN,USERMOD,NUMBER,MDTONE,MDLKH,%L1MDOK,US,XON,%DELAY,%L2MD,%L2NALAN,%L1RCV)
 D ^%L1C S %L1MDOK=0,%L2MD=""
 I '$$NODISP U $P S %SAY=" CTRL/C - CANCEL " X %XMSGV
 S PRT=$P N $ZT S $ZT="" ;"ZG "_$ZL_":ERR^%L2MD"
 K ^MODEM($P) S ^MODEM($P)="BEG"
 ;
 S US="U PORTN:(NOECHO:NOWRAP:NOCENABLE:PASTHRU:TERM=$C(13))"
 ;
 I '$$NODISP D
 .S %L2MD("M","VG")=3,%L2MD("M","NG")=17,%L2MD("M","LG")=5,%L2MD("M","RG")=25
 .W %LIGHT1,%CV("CF")
 .D TV^%L1RBUA(%L2MD("M","VG"),%L2MD("M","LG"),%L2MD("M","NG")+2,%L2MD("M","RG")+1)
 .W %LIGHT1,%CV("CF")
 .S %L2MD("L","VG")=3,%L2MD("L","NG")=17,%L2MD("L","LG")=32,%L2MD("L","RG")=75
 .D TV^%L1RBUA(%L2MD("L","VG"),%L2MD("L","LG"),%L2MD("L","NG")+2,%L2MD("L","RG")+1)
 .X %XCL
 ;
 I PORTN?4N,NUMBER?1N.N1".".E D  G EXIT ;---------- ADSL
 .D MSGL($G(MDLKH),"L")
 .K %L2NALAN
 .S %L1MDOK='$$^%L2NALAN(NUMBER,PORTN)
 .I %L1MDOK D MSG("CONNECTION ESTABLISHED","M") Q
 .D MSG("NO CONNECTION","M") Q
 ;
 ; ------------------------------------- MODEM RAGIL
 I PORTN>3!($L(PORTN)>3)!$$NODISP G ASK+1
ASK S %GET="I/O PORT? > ++3,3,EE#++2,E,I" D ^%L1GET S PORTN=%S G:PORTN="" EXIT
 I PORTN S PORTN=$G(^[%L3GLD]dev(PORTN))
 I PORTN="" G EXIT
 I $P=PORTN D MSG("CANNOT SELECT YOUR OWN DEVICE.","M") G ASK
 I '$$^%L1MDLCK(PORTN) S %GET="A PORT OF MODEM IS BUSY !" D N^%L1GET G EXIT
 C PORTN U $P:(CENABLE:CTRAP=$C(3))
 O PORTN::0 E  D MSG("..LINE IN USE..WAITING..","M") O PORTN D MSG("READY","M")
 D HANGUP
 X US
INIT ;
 S %DC=0 S %DT=0,%Y=""
P0 X US D CLPORT S %ST="AT&F"_$G(XON)_$C(13)
 F %J=1:1:$L(%ST) W $E(%ST,%J) D DELAY
P01 X US R *%Y1:1 E  S %DC=%DC+1 G:%DC<12 P01:%DC#4,P0 D MSG("NO CARRIER","M") G EXIT
 G:%Y1=1 EXIT
 I %Y1'=13 S %Y=%Y_$C(%Y1) G P01
 D MSG(%Y,"M") S %DT=%DT+1 S ^MODEM($P,"ATZ",%DT)=%Y
 G:%Y1=1 EXIT
 I %Y'["OK" G:%DT<12 P01:%DT#4,P0 D MSG("NO CARRIER","M") G EXIT
 S %DT=0
 I $G(NUMBER)!$$NODISP D DELAY G TP1
TP U $P:(CENABLE:CTRAP=$C(3)) S %GET="PHONE NUMBER > ++23,5,EE,,,,RF#++10,E,I"
 D ^%L1GET S NUMBER=%S G:NUMBER="" EXIT
TP1 X US S NUMBER=$TR(NUMBER,"-","") D CLPORT
 S ST="ATD"_$G(MDTONE,"P")_NUMBER_$C(13) W ST
 D MSG(ST,"M")
 S TXT=%HBR_$$HBR^%L1FRM($G(MDLKH),30)_" "_$$HBR^%L1FRM(NUMBER,10)_%ENG
 D MSGL(TXT,"L") X US
 H 5
 S OK=0
 F I=1:1:10 D  Q:OK
 .S A="" F I1=1:1:60 R *O:1 Q:O=10  D
 ..I O'=10,O'=13 S A=A_$C(O)
 .I A="" S OK=3 Q
 .D  Q:OK  S ^MODEM("CONN",I)=A
 ..I $F(A,"CONN") S OK=1 Q
 ..I $F(A,"BUS") S OK=2 Q
 ..I $F(A,"NO CAR") S OK=3 Q
 ..I $F(A,"NO DIAL") S OK=4 Q
 I OK'=1 D MSG(A,"M") D CLOSE^%L1MDLCK(PORTN) G EXIT
 I OK=1 K ^MODEM($P) D MSG("MODEM IN USE !","M")
 S %L1MDOK=OK
EXIT H 1
 Q
ERR S %L1MDOK=$P($P($ZS,"<",2),">") D CLOSE^%L1MDLCK(PORTN) G EXIT
HANGUP ;
 D ^%L1HANG
 Q
CLPORT X US ;
 F  R *A:1 E  Q
 Q
DELAY ;
 F %JJJ=1:1:%DELAY
 Q
MSG(TXT,PR) Q:$$NODISP
 U $P:(NOECHO:NOWRAP)
 D SDVIG(PR)
 S %YY=%L2MD(PR,"NG"),%XX=%L2MD(PR,"LG")+1 X %POSIC
 W %LIGHT1,%CV($S(PR="M":"GF",1:"YF"))
 W $$ENG^%L1FRM($$SPA^%L1FRM($$CLA^%L1FRM(TXT)),%L2MD(PR,"RG")-%L2MD(PR,"LG")-1),%CCL
 Q
MSGL(TXT,PR) Q:$$NODISP
 U $P:(NOECHO:NOWRAP)
 D SDVIG(PR)
 S %YY=%L2MD(PR,"NG"),%XX=%L2MD(PR,"LG") X %POSIC
 W %LIGHT1,%CV("YF"),$TR($TR(TXT,%TES1,%TES2),%TEN,%THB),%CCL
 Q
SDVIG(PR) Q:$$NODISP
 I %TYPCRT="PC" W ! Q
 ;;I %TYPCRT="PC" D  Q
 .D GET^%VIDEO("l2md",%L2MD(PR,"LG")-1,%L2MD(PR,"VG")+1,%L2MD(PR,"RG")-%L2MD(PR,"LG")+1,%L2MD(PR,"NG")-%L2MD(PR,"VG"),2)
 .D PUT^%VIDEO("l2md",%L2MD(PR,"LG")-1,%L2MD(PR,"VG"),%L2MD(PR,"RG")-%L2MD(PR,"LG")+1,%L2MD(PR,"NG")-%L2MD(PR,"VG"),2)
 I $E(%TYPCRT,1,3)="VT5" D  Q
 .W $C(27,91),(%L2MD(PR,"VG")+2)_";"_%L2MD(PR,"LG")_";"_(%L2MD(PR,"NG")+1)_";"_%L2MD(PR,"RG")_";;"_(%L2MD(PR,"VG")+1)_";"_%L2MD(PR,"LG")_";$v"
 Q
NODISP(STAM) I $D(%L1RCV) Q 1
 I $G(%L2MD)="NOMSG" Q 1
 Q 0

%L2MENU
%L2MENU ; VT220 OR PC               [ 15.03.19 08:21 ] [ 08.10.06 09:35 ] [ 17.09.06 13:15 ] 
 ;-- INPUT: MAC - NAME OF OPTIONS ARRAY
 ;          %L2MN("LEFT") - LEFT; %L2MN("TOP") - TOP
 ;          %L2MN("IND") - FOCUS,  $D(%L2MN("NOCLR")) - NO CLEAR IN FINISH
 ;          %L2MN("T2") - MUMPS COMMAND
 ;          $D(%L2MN("VIEW")) - VIEW ONLY
 ;          $D(%L2MN("NOCLB")) - NO CLEAR BACKGROUND (IN START)
 ;          $D(%L2MN("POP")) - EXIT TO LEFT, EXIT TO RIGHT
 ;
 ;-- OUTPUT: %I      - OPTION NUMBER
 ;           %L3MOPT - OPTION NAME
 ;           %TOMN   - EXIT FLAG ("LEFT" OR "RIGHT")
 ;---------------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,MAC,@MAC,%L2MN,%CLEAR,%L3MOPT,%I,%HBRY,%TOMN) D ^%L1C
 I $$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE D  S %I=INDEX Q
 .D PRE
 .k ^l2mn0($p) M ^l2mn0($p)=^l2mn($p)
 .K ^l2mn($p)
 .M ^l2mn($p)=@MAC
 .I $D(^l2mn($P,0)) S %L1("T1")=^(0) K ^(0)
 .S MAC="^l2mn($p)"
 .S %L1("EU")=2 D ^%L1NU I FLAG'="" S INDEX=1
 .K ^l2mn($p) m ^l2mn($p)=^l2mn0($p)
 S F("CHISTS")=1,F("CHISTE")=2,F("SBROS")=3,F("IND")=4
 S F("ADDL")=5,F("DELL")=6,F("COR")=7,F("FIND")=8
 S F("SAVE")=9,F("REST")=10
 D USE I %XMSG(0)'>1 S %HBRY=""
 W %ENG K %L3MOPT S %TOMN=""
 I '$D(MAC) W *7,!!?5,"*** HASN'T NAME ARRAY !" Q
 I $D(@MAC)<10 W *7,!!?5,"*** HASN'T DATA !" Q
 S %L1TXT=MAC_"(0)"
 S %M=MAC_"(%I)" S %LL=0
 F %I=1:1 Q:'$D(@%M)  I $L($G(@%M))+6>%LL S %LL=$L($G(@%M))+6
 S %I1=%I-1 I %I1>20 D ^%L4MENU S:%I=0 %I=1 S %L2MN("IND")=%I G END
 S F10=0 I $D(%L2MN("F10")),%I1'>10 S F10=1
 I $D(%L2MN("LEFT")) S %SM=%L2MN("LEFT")
 I $D(%L2MN("TOP")) S %SMY=%L2MN("TOP")
 I $D(%L2MN("TOP0")) S %SMY0=%L2MN("TOP0")
 I $D(%L2MN("NOCLR")) S %CLEAR=%L2MN("NOCLR")
 I '$D(%SM) S %SM=80-%LL-4\2
 I %SM<1!(%SM>70) S %SM=80-%LL-4\2
 S:%SM<3 %SM=3
 S %SMX=%SM S:'$D(%SMY) %SMY=24-%I1-1\2
 I %SMY>22 S %SMY=24-%I1-1\2
 S:%SMY<1 %SMY=1
 D PRE
 I $D(@%L1TXT) D
 .S:'$D(%SMY0) %SMY0=$G(%SMY)-2 S:%SMY0=0 %SMY0=1 S:%SMY0<0 %SMY0=0
 .S %SAY=@%L1TXT_"++"_%SMY0_","
 .I '$D(%L2MN("LEFT")) S %SAY=%SAY_(78-(80-$L($TR(@%L1TXT,"{}",""))\2))_",H,I" X %XMSG
 .I $D(%L2MN("LEFT")) S %SAY=%SAY_(%L2MN("LEFT")+$L(@%L1TXT))_",H,I" X %XMSG
 D CL0 ;;N %CL0 S %CL0=$C(27,91)_"45;37m"
 D PHON F %I=1:1:%I1 D
 .S %XX=%SMX,%YY=%I+%SMY X %POSIC D PCST
 I $D(%L2MN("VIEW")) K %L2MN Q
 S %XX=%SM,%YY=%SMY X %POSIC S %I=$G(%L2MN("IND"),1) D INV S %NOM=""
CYC ;
 S (%A1,%B)=0
 I 1 F  R *%A:1 Q:$T  D ^%L1MSGBR I $P($H,",",2)\60-%L2MT D  S %L2MT=$P($H,",",2)\60
 .N %M,%L,%I,%NP S %TIM=$ZD($H,"24:60")
 .W *27,7 S %SAY="  "_$$^%L1DC($H,1)_"   "_%TIM_"  ++0,59,E" X %XMSG W *27,8
READ G:%TYPCRT="PC" 27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $A(ZB0,1)=27,$D(%UPRCOD(ZB)),$T(@%UPRCOD(ZB))'="" G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
27 ;
 I %A=27 D DELAY R *%A1:%WAIT G:%A1<0 ESC D DELAY R *%B:%WAIT G:%B>0&(%A1'=79) SERV I %A1<0 G ESC
 I %A=25 G ESC
 I %A=24 W *27,7 N %XXMNU,%YYMNU S %XXMNU=%XX,%YYMNU=%YY D ^%L1CLC W *27,8 S %XX=%XXMNU,%YY=%YYMNU X %POSIC S $X=%XX,$Y=%YY G CYC
 I %A=20,$G(^zms($I))?1"^"."%"1U.E W *27,7 N %XXMNU,%YYMNU S ($X,%XXMNU)=%XX,($Y,%YYMNU)=%YY,%LS=2 D ^%L1ZMST W *27,8 S %XX=%XXMNU,%YY=%YYMNU X %POSIC S $X=%XX,$Y=%YY G CYC
 G:%A=13 END
 I $G(%UPRCOD($ZB))="ESC" G ESC
 I $G(%A1)>0,$G(%B)>0 N %A1B S %A1B=%A1_%B I $D(%UPRCOD(%A1B)),$D(F(%UPRCOD(%A1B))) S %B=F(%UPRCOD(%A1B))+49 G SERV
 I $L($ZB)>3,$D(%UPRCOD($ZB)),$D(F(%UPRCOD($ZB))) S %B=F(%UPRCOD($ZB))+49 G SERV
 I $L($ZB)>3,$D(%UPRCOD($ZB)) S %B=$G(@("%"_%UPRCOD($ZB))) G SERV
 I %A=27 G SERV
 I $C(%A)?1N S %NOM=%NOM_$C(%A)
 I %NOM?2N,(%NOM+1)>%I1 S %NOM=$E(%NOM,2)
 I (%NOM+1)>%I1 S %A=8 U 0 W *7
 I %A=8 S %NOM="" D CL S %IOLD=%I S %I=1 D VSV D SDVIG K %IOLD D INV G CYC
 I $C(%A)?1N D CL S %IOLD=%I S %I=%NOM+1 D VSV D SDVIG K %IOLD D INV G CYC
 G CYC
END D CL0 ;;S %CL0=$C(27,91)_"44;37m"
 S %L3MOPT=$G(@%M) K %A,%B,%M,@MAC,%LL,%B1,%B2,%NOM
 X %XCL ;W %ENG W *27,*91,0,"m"
 I '$D(%CLEAR) X %chista
 ;E  I %CLEAR=1 S %XX=0,%YY=%SMY-2 X %POSIC,%chiste
 ;E  I %CLEAR=2 S %XX=0,%YY=%SMY+%I1+2 X %POSIC,%chiste
 K %SM,%SMX,%SMY,%I1,%L2MN W:$D(%HBRY) %HBR I $D(^HBB) W ^HBB
 Q
VSV W *27,7 X %XCL S %SAY=$J($S(%NOM=""&(%I=1):" ",1:%I-1),2) X %XMSGN W *27,8 X %XCL
 Q
SDVIG ;
 Q:%I=%IOLD
 I %I>%IOLD F %KK=1:1:%I-%IOLD W %vniz
 F %KK=1:1:%IOLD-%I W %vverx
 Q
 ;-
ESC D CL S:'$D(%L2MN("ESC")) %I=1 G END
SERV ;;G:%B'=%VVERX&(%B'=%VNIZ)&(%B'=%LEVO)&(%B'=%PRAVO)&($C(%B)'?1N.N) CYC
 I %B=%VVERX G VVERX
 I %B=%VNIZ G VNIZ
 I %B=%PRAVO G PRAVO
 I %B=%LEVO G LEVO
 I %B>78,%B<90,%A1=79 S %B=%B-30 ;----- F1
 G:%B<48!(%B>(%I1+48)) CYC
 S %B1=%B-48,%B2=%I-%B1
 I %B2<0 D CL S %I=%B1,%pn=-%B2-1 X %vverxn D INV G:F10 END G CYC
 I %B2>0 D CL S %I=%B1,%pn=%B2-1 X %vnizn D INV G:F10 END G CYC
 G CYC
VVERX G:%I=1 VNM D CL S %I=%I-1 W %vverx D VSV,INV G:$G(@%M)["~" SERV G CYC
VNIZ G:%I=%I1 VVM D CL S %I=%I+1 W %vniz D VSV,INV G:$G(@%M)["~" SERV G CYC
PRAVO G:'$D(%L2MN("POP")) CYC D CL S %TOMN="RIGHT" G END
LEVO G:'$D(%L2MN("POP")) CYC D CL S %TOMN="LEFT" G END
 ;-
CL D CL0 X %XCL S %XX=%SMX,%YY=%I+%SMY X %POSIC D PCST Q
PCST ;
 W %HBR
 N A,WD S A=$G(@%M),WD=%LL-$L(A)+9
 ;;I $E($TR(A," ",""))="~" W $$KAV($E($$SPL^%L1FRM(A),2,255),WD) Q
 I $E($TR(A," ",""))="~" W $$KAV($E($$SPL^%L1FRM(A),2,255),%LL) Q
 I %ENGLISH W " "_$G(@%M),$J("",%LL-$L($G(@%M))-6)," - ",$$OPT(%I-1) Q
 W "- "_$$OPT(%I-1)_" -"_$J($$W^%L1C($G(@%M)),%LL-6) Q
 Q
OPT(%NMB) Q $S(F10:$S(%NMB=0:"ESC",1:"F"_%NMB),1:$J(%NMB,2))
 ;-
INV W:'$G(%CVET) *27,*91,7,"m" W:$G(%CVET) %CV("RF"),%CV("WB") S %XX=%SMX,%YY=%I+%SMY X %POSIC D PCST X %XCL
 Q
 ;-
KAV(%KOT,%DL) N KAV S KAV="" I %TYPCRT["VT" S KAV=$C(27)_"(0"
 D CL0
 S KAV=KAV_$TR($J("",%DL-$L(%KOT)\2+1)," ",$S(%TYPCRT["VT":$C(113),1:"-"))
 I %TYPCRT["VT" S KAV=KAV_$C(27)_"(B"
 S KAV=KAV_%LIGHT1_%CV("YF")_%KOT_%CCL
 I %TYPCRT["VT" S KAV=KAV_$C(27)_"(0"
 S KAV=KAV_$TR($J("",%DL-$L(%KOT)\2-1)," ",$S(%TYPCRT["VT":$C(113),1:"-"))
 I %TYPCRT["VT" S KAV=KAV_$C(27)_"(B"
 Q KAV
CL0 ;
 N BCGR
 S BCGR="MB"
 I %TYPCRT'="PC",%CVET S BCGR="BCB"
 I $D(%L2MN("CVB")) S BCGR=%L2MN("CVB")
 S %CL0=%CV(BCGR)_%CV("WF")
 S %CCL=$C(27,91,48,109)_%CL0
 S %L1RBCL=%CL0
 Q
PRE ;
 X:'$D(%CLEAR)&'$D(%L2MN("NOCLB")) %chista D
 .N %M,%L,%I,%NP S %TIM=$ZD($H,"24:60")
 .I %TYPCRT="PC",'$D(%L2MN("NOCLB")) D ^%L1CH
 N %AT S %AT=$$^%L1HEAD("")
 I $L(%AT) S %SAY=%AT_"++0,"_(80-(80-$L(%AT)\2))_",H,I" X %XMSG X %XCL
 S %SAY="  "_$$^%L1DC($H,1)_"   "_%TIM_"  ++0,59,E" X %XMSG S %L2MT=$P($H,",",2)\60
 I $D(^MSGSEND(+$$^%L1MRK("")))>9 W $C(27,91,72)_">>>"
 I $D(^PARSEND(+$$^%L1MRK("")))>9 S %SAY="<P>++0,4,EE,I" X %XMSG
 I $$NO^%L1CRDTC S %SAY="<X>++0,6,EE,I" X %XMSG
 D HZGDEV
 I $D(%L2MN("T2")) X %L2MN("T2")
 Q
PHON ;
 W %ENG X %XCL
 S %XX=%SM-1,%YY=%SMY+1 ;S %XX=%SM-3,%YY=%SMY-2
 S Y1=%YY,X1=%XX,Y2=%YY+%I1+1,X2=%XX+%LL+4
 D RBUA
 Q
CVET W %CL("RB") W $J("",%LL+4)
 I $G(%CVET) W *27,*91,%CL0,"m"
 E  W *27,*91,0,"m"
 Q
VNM D CL S %I=%I1,%pn=%I1-1 X %vnizn D VSV,INV G CYC
VVM D CL S %I=1,%pn=%I1-1 X %vverxn D VSV,INV G CYC
 Q
RBUA ; INPUT X1,X2,Y1,Y2
 S %L1RBCL="",%MENU=""
 I $D(%L2MN("CVB")) S %L1RBCL=$G(%CV(%L2MN("CVB")))
 D ^%L1RBUA K %L1RBCL
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
HZGDEV ;
 N POS,DEV S POS=$$FUNC^%UCASE($$POS^%L2MOUSE) I POS=0 S POS=""
 S DEV=$P($P,"/",$L($P,"/")-1,$L($P,"/"))
 I $P(DEV,"/")="dev" S DEV=$P(DEV,"/",2)
 S %SAY=" "_%L3MYDVN_" "_$J($$FUNC^%UCASE(DEV),5)_" "_$J(POS,5)_" "_$J(%TYPCRT,5)
 S %SAY=%SAY_"++1,"_(79-$L(%SAY))_",EE,I" X %XMSG
 Q
 

%L2MODEM
%L2MODEM ; [ 07.05.07 16:50 ] [ 23.04.07 10:40 ] [ 08.02.06 18:17 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L2MODEM) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 ;
 S NMB=$G(%L2MODEM("MRKTO"))
 S GLOB=$G(%L2MODEM("GLOB"))
 S FL=$G(%L2MODEM("FL"))
 S PROG=$G(%L2MODEM("PROG"))
 S ADDR=$$SPA^%L1FRM($G(%L2MODEM("ADDR")))
 S MDLKH=$G(%L2MODEM("NAMETO"))
 ;
 I $G(GLOB)="" D MSG(" ! xcyl dn oi` ") S %L2MODEM("ER")="1\NOGL" G ER
 I '$D(@GLOB) D MSG(" ! xcyl dn oi` ") S %L2MODEM("ER")="1\NOINGL" G ER
 I ADDR="" D MSG(" ! xcyl o`l oi` ") S %L2MODEM("ER")="1\NOADDR" G ER
 ;
 I $G(PROG)="" S PROG="%L2GTR1"
 ;
 I $G(ADDR)[".",$$^%L1ISFTP(PROG) S (PORTN,USERPORT)="" D  G END
 .Q:'$$^%L1G2F(GLOB,FL)
 .D ^%L1FTP(ADDR,FL) I $ZSY G ES
 .N ENDFL S ENDFL=FL_".END" O ENDFL U ENDFL W "1",! C ENDFL
 .H 1 D ^%L1FTP(ADDR,ENDFL)
ES .I $ZSY S %L2MODEM("ER")=$ZSY
 .I '$ZSY S %L2MODEM("OK")=1
 .I $$^%L1ZOS(2,FL),$$^%L1ZOS(2,FL_".END")
 ;
 S ZT=$ZT,$ZT="" ;"G ER^%L2MODEM"
 S USERPHONE=$TR(ADDR,"-",",")
 S USERPORT=$G(%L2MODEM("MDPORT")),USERGLOB=""
 I USERPHONE="" D MSG(" ! xcyl o`l oi` ") S L2MODEM("ER")="3\PHONE" G ER
 S USERMOD=1,MDTRANS=""
 ;
 I $$DISP D
 .X %chista
 .S %L1RBCL=%CV("CF")
 .W %LIGHT1 D TV^%L1RBUA(20,5,24,76) X %XCL
 ;
 I '$$DISP S %L1RCV=""
 D ^%L2MD(USERPORT,1,USERPHONE,"T",$G(US),$G(%L2MODEM("XON")),MDLKH)
 I $G(%L1MDOK)'=1 S %L2MODEM("ER")="4\L2MD" G ER
 ;
 S PORTN=USERPORT
 I $D(%L2NALAN("DEV")) S (USERPORT,PORTN)=%L2NALAN("DEV")
 ;
 I '$D(%L2MODEM("UCI")) S %L2MODEM("UCI")="MGR"
 ;
 D ^%L1MDPRG(PORTN,%L2MODEM("UCI"),PROG)
 ;
 I $G(%L1MDPRG("ER")) S L2MODEM("ER")="5\L1MDPRG\"_%L1MDPRG("ER") G ER
 ;
 I GLOB'["^UTILITY($J)" D
 .K ^UTILITY($J)
 .S ^UTILITY($J,GLOB)=""
 ;
 K ^GTR000($J)
 ;
 K %L2MODEM("OK")
 ;
 I $$DISP D ^%L3GTR
 ;
 I '$$DISP D ^%L2GTR
 ;
 I $G(^L2G($J,"OK")) S %L2MODEM("OK")=1
 ;
 K ^UTILITY($J)
 I $D(%L2MODEM("NOCLOSE")) G END
 ;
 I $L(PORTN),PORTN'=$P,'$D(%L2NALAN) D
 .C PORTN O PORTN::1 E  Q
 .D ^%L1GETMD
 .C PORTN
 .D CLOSE^%L1MDLCK(USERPORT)
 ;
 I $D(%L2NALAN("DEV")) C %L2NALAN("DEV")
 ;
END Q:'$$DISP
 I $D(%L2MODEM("ER")) D ER
 I $D(%L2MODEM("OK")),'$D(%L2MODEM("NOCLOSE")),$$DISP S %GET=" <ENTER> ugl . dglvda rvea xeciy " D N^%L1GET
 Q
 ;
ER I $D(%L2MODEM("ER"))#2,$$DISP S %GET=" <ENTER> ugl . "_+%L2MODEM("ER")_" zexywzd z`iby " D N^%L1GET
 Q
DISP(STAM) ;
 I $D(%L2MODEM("NODISP")) Q 0
 Q 1
MSG(TXT) ;
 Q:'$$DISP
 U 0 S %SAY=TXT X %XMSGV(1)

%L2MOUS0
%L2MOUSE ; [ 08.04.07 07:30 ] [ 28.03.07 16:58 ] [ 23.11.06 18:16 ]
INIT(STAM) N OK ;
 N GLD S GLD=$$^%L1GLD
 I '$$HZGTOUCH Q 0
 I '$D(@$$^W4DEVI@($P)) Q 0
 S PORT=+$$PORT^%L1CRDTC I 'PORT Q 0
 I PORT<0 S OK=1 G CRD
 N PORTN S PORTN=$G(^[GLD]dev(PORT)) I PORTN="" Q 0
 C PORTN I $P'["/vc" D DELLOCK(PORTN)
 S OK=$$^%L1MDLCK(PORTN) I 'OK Q OK
 O PORTN S OK=1
CRD I '$D(@$$^W4DEVI@($P)) Q 0
 S %XMIN=$$XMIN^%L1CRDTC
 S %XMAX=$$XMAX^%L1CRDTC
 S %YMIN=$$YMIN^%L1CRDTC
 S %YMAX=$$YMAX^%L1CRDTC
 Q OK
REPORT(%PORT,%XMIN,%XMAX,%YMIN,%YMAX) ;
 N GLD S GLD=$$^%L1GLD
 N POS,CRD
 I %PORT<0 S POS=$$POS I POS'?.P S CRD=$G(^CRDTCH(POS)) S ^(POS)="?" D:CRD=""  Q CRD
 .I $P["/pts/" S %SAY=" ! zcaer `l ^P1CRDTCH dpkez " X %XMSGV(1)
 I $G(%PORT)="" Q 0
 N %I,%A,%B,%X,%Y,%CRD,%STAT
 S %CRD=0
CYC ;
 S %CRD=0,%DLY=0.1 K U
 U %PORT:(NOWRAP:NOECHO:NOESC:NOTERM:NOCENABLE:NOFILTER)
 I $D(%L2MOUSE("A")) S %A=%L2MOUSE("A") K %L2MOUSE("A")
 I $G(%A)=85 G CYC1
 F %I=1:1:1000 R *%A:0 S:%A>0 U(%I)=%A Q:$C(%A)="U"
 I $C(%A)'="U" G:%A>0 CYC R *%A:%DLY S:%A>0 U(1)=%A I $C(%A)'="U" G END
CYC1 S U(1)=%A S %DLY=.05
 R *%A:%DLY I $C(%A)'="T" G CYC ; 1 - TOUCH
 S U(2)=%A
 R *%A:%DLY I %A<0 G END        ; 2 - %STAT
 S U(3)=%A
 S %STAT=%A
 U %PORT S %X="" R *%A:%DLY R *%B:%DLY   ; 3-4 - %X
 S U(4)=%A,U(5)=%B
 I %A<0!(%B<0) G END
 S %X=%A+(%B*256)
 S %Y="" U %PORT R *%A:%DLY R *%B:%DLY           ; 5-6 - %Y
 S U(6)=%A,U(7)=%B
 I %A<0!(%B<0) G END
 S %Y=%A+(%B*256)
 S %B=""
 F %I=1:1:3 U %PORT R *%A:%DLY S:%A>0 %B=%B_$C(%A) S U(%I+7)=%A ; 7-9
 I %X>($S(%XMAX<%XMIN:%XMIN,1:%XMAX)+100) G CYC
 I %Y>($S(%YMAX<%YMIN:%YMIN,1:%YMAX)+100) G CYC
 ;;N %I,%J F %I=1:1:20 D
 .F %J=1:1:10 W $C(0)
 .W "Ua00000000"
 .F %J=1:1:20 R *%A:0
 F %J=1:1:200 R *%A:0
 S %CRD=$$SCX(%X)_","_$$SCY(%Y)_","_%STAT
END U $P
 Q %CRD
 ;
SCX(%X) ;
 N %STEP S %STEP=%XMAX-%XMIN/79
 Q %X-%XMIN\%STEP+1
SCY(%Y) ;
 N %STEP S %STEP=%YMAX-%YMIN/24
 I %STEP<0 Q 25-(%Y-%YMAX\-%STEP)
 Q %Y-%YMIN\%STEP+1
 ;
DELLOCK(PORTN) ;
 N MDLOCK,OK,DJ S OK=1
 S MDLOCK="/var/lock/LCK.."_$zparse(PORTN,"NAME")
 I $$EXIST^%L1ZOS(MDLOCK) D  I OK zsy "rm "_MDLOCK
 .C MDLOCK O MDLOCK:(REWIND:READONLY) U MDLOCK R A C MDLOCK
 .S DJ=$TR(A," ","")
 .ZSY "rm /var/lock/LCK..."_DJ
 Q
 ;
KB(STAM) Q $$KB^%L1CRDTC
 ;
PORT(STAM) N GLD S GLD=$$^%L1GLD
 I '$D(@$$^W4DEVI@($P)) Q 0
 N PORT S PORT=$$PORT^%L1CRDTC Q:PORT="" 0
 I PORT<0 Q PORT
 I $G(^[GLD]dev(PORT))="" Q 0
 Q $G(^[GLD]dev(PORT))
 ;
HZGTOUCH(STAM) ;
 N GLD S GLD=$$^%L1GLD Q:'$D(@$$^W4DEVI@($P)) 0
 N PORT S PORT=$$PORT^%L1CRDTC I 'PORT Q 0
 I '$D(%TYPCRT) D ^%L1C
 I %TYPCRT'="PC" Q 0
 I $$NO^%L1CRDTC Q 0
 I $ZGLD["/mly.gld" Q 0
 I $ZGLD["/mln.gld" Q 0
 I '$D(%L1INIT),'$D(^P1HZMS($$^%L3MYDVN)),'$G(^P1PRM("TCHALL")) Q 0
 N PORTN S PORTN=$G(^[GLD]dev(PORT)) I PORT>0,PORTN="" Q 0
 Q 1
TCHONLY(STAM) I $$HZGTOUCH,'$$KB Q 1
 Q 0
POS(STAM) ;
 I $P["/vc" Q 0
 N GLD,POS S GLD=$$^%L1GLD
 S POS=$G(^[GLD]devi1($$^%L3MYDV))
 I POS="",$P["/pts" H .1 D ^%L1DEFWS S POS=$G(^[GLD]devi1($P),0)
 I POS="" S POS=0
 Q POS

%L2MOUSE
%L2MOUSE ; [ 06.04.09 14:41 ] [ 18.03.09 13:54 ] [ 10.03.09 13:20 ]
INIT(STAM) N OK ;
 N GLD S GLD=$$^%L1GLD
 I '$$HZGTOUCH Q 0
 I '$D(@$$^W4DEVI@($P)) Q 0
 S PORT=+$$PORT^%L1CRDTC I 'PORT Q 0
 I PORT<0 S OK=1 G CRD
 N PORTN S PORTN=$G(^[GLD]dev(PORT)) I PORTN="" Q 0
 C PORTN I $P'["/vc" D DELLOCK(PORTN)
 S OK=$$^%L1MDLCK(PORTN) I 'OK Q OK
 O PORTN S OK=1
CRD I '$D(@$$^W4DEVI@($P)) Q 0
 S %XMIN=$$XMIN^%L1CRDTC
 S %XMAX=$$XMAX^%L1CRDTC
 S %YMIN=$$YMIN^%L1CRDTC
 S %YMAX=$$YMAX^%L1CRDTC
 Q OK
REPORT(%PORT,%XMIN,%XMAX,%YMIN,%YMAX) ;
 N GLD S GLD=$$^%L1GLD
 N POS,CRD
 I %PORT<0 S POS=$$POS I POS'?.P S CRD=$G(^CRDTCH(POS)) S ^(POS)="?" D:CRD=""  Q CRD
 .I $P["/pts/" S %SAY=" ! zcaer `l ^P1CRDTCH dpkez " X %XMSGV(1)
 I $G(%PORT)="" Q 0
 N %I,%A,%B,%X,%Y,%CRD,%STAT
 S %CRD=0
CYC ;
 S %CRD=0,%DLY=0.1 K U
 U %PORT:(NOWRAP:NOECHO:NOESC:NOTERM:NOCENABLE:NOFILTER)
 I $D(%L2MOUSE("A")) S %A=%L2MOUSE("A") K %L2MOUSE("A")
 I $G(%A)=85 G CYC1
 F %I=1:1:100 R *%A:0 S:%A>0 U(%I)=%A Q:$C(%A)="U"
 I $C(%A)'="U" H %DLY G:%A>0 CYC H %DLY R *%A:0 S:%A>0 U(1)=%A S ^IRA(99999)="OK" I $C(%A)'="U" G END
CYC1 S U(1)=%A S %DLY=0 H %DLY S %DLY=0
 R *%A:%DLY I $C(%A)'="T" G CYC ; 1 - TOUCH
 S U(2)=%A
 R *%A:%DLY I %A<0 G END        ; 2 - %STAT
 S U(3)=%A I U(3)'=4 G CYC
 S %STAT=%A
 U %PORT S %X="" R *%A:%DLY R *%B:%DLY   ; 3-4 - %X
 S U(4)=%A,U(5)=%B
 I %A<0!(%B<0) G END
 S %X=%A+(%B*256)
 S %Y="" U %PORT R *%A:%DLY R *%B:%DLY           ; 5-6 - %Y
 S U(6)=%A,U(7)=%B
 I %A<0!(%B<0) G END
 S %Y=%A+(%B*256)
 S %B=""
 F %I=1:1:3 U %PORT R *%A:%DLY S:%A>0 %B=%B_$C(%A) S U(%I+7)=%A ; 7-9
 I %X>($S(%XMAX<%XMIN:%XMIN,1:%XMAX)+100) G CYC
 I %Y>($S(%YMAX<%YMIN:%YMIN,1:%YMAX)+100) G CYC
 ;;N %I,%J F %I=1:1:20 D
 .F %J=1:1:10 W $C(0)
 .W "Ua00000000"
 .F %J=1:1:20 R *%A:0
 F %J=1:1:200 R *%A:0
 S %CRD=$$SCX(%X)_","_$$SCY(%Y)_","_%STAT
END U $P
 Q %CRD
 ;
SCX(%X) ;
 N %STEP S %STEP=%XMAX-%XMIN/79
 Q %X-%XMIN\%STEP+1
SCY(%Y) ;
 N %STEP S %STEP=%YMAX-%YMIN/24
 I %STEP<0 Q 25-(%Y-%YMAX\-%STEP)
 Q %Y-%YMIN\%STEP+1
 ;
DELLOCK(PORTN) ;
 N MDLOCK,OK,DJ S OK=1
 S MDLOCK="/var/lock/LCK.."_$zparse(PORTN,"NAME")
 I $$EXIST^%L1ZOS(MDLOCK) D  I OK zsy "rm "_MDLOCK
 .C MDLOCK O MDLOCK:(REWIND:READONLY) U MDLOCK R A C MDLOCK
 .S DJ=$TR(A," ","")
 .ZSY "rm /var/lock/LCK..."_DJ
 Q
 ;
KB(STAM) Q $$KB^%L1CRDTC
 ;
PORT(STAM) N GLD S GLD=$$^%L1GLD
 I '$D(@$$^W4DEVI@($P)) Q 0
 N PORT S PORT=$$PORT^%L1CRDTC Q:PORT="" 0
 I PORT<0 Q PORT
 I $G(^[GLD]dev(PORT))="" Q 0
 Q $G(^[GLD]dev(PORT))
 ;
HZGTOUCH(STAM) ;
 ;;Q 1
 N GLD S GLD=$$^%L1GLD Q:'$D(@$$^W4DEVI@($P)) 0
 N PORT S PORT=$$PORT^%L1CRDTC I 'PORT Q 0
 I '$D(%TYPCRT) D ^%L1C
 I %TYPCRT'="PC" Q 0
 I $$NO^%L1CRDTC Q 0
 I $ZGLD["/mly.gld" Q 0
 I $ZGLD["/mln.gld" Q 0
 I '$D(%L1INIT),'$D(^P1HZMS($$^%L3MYDVN)),'$G(^P1PRM("TCHALL")) Q 0
 N PORTN S PORTN=$G(^[GLD]dev(PORT)) I PORT>0,PORTN="" Q 0
 Q 1
TCHONLY(STAM) I $$HZGTOUCH,'$$KB Q 1
 Q 0
POS(STAM) ;
 I $P["/vc" Q 0
 N GLD,POS S GLD=$$^%L1GLD
 S POS=$G(^[GLD]devi1($$^%L3MYDV))
 ;;I POS="",$P["/pts" H .1 D ^%L1DEFWS S POS=$G(^[GLD]devi1($P),0)
 I POS="" S POS=0
 Q POS

%L2NALAN
%L2NALAN(ADDR,PORT) ; [ 03.08.11 08:47 ] [ 29.08.10 17:18 ] [ 07.12.09 12:01 ]
 N ER,PORTN S ER=0 K %L2NALAN
 I ADDR["P" S ADDR=$P(ADDR,"P")
 S PORTN="SCK$"_$J
 ;;I '$$^%L1TSTPR($TR(ADDR,".",""),ADDR) S ER=-1.1,%L2NALAN("ER")=ER C PORTN Q ER
 D ^%L2CLNT(ADDR,PORT,3,PORTN) ;3
 I $G(^SCKCLI($J))<0 S ER=^($J)
 I 'ER S %L2NALAN("DEV")=PORTN
 I ER S %L2NALAN("ER")=ER C PORTN
 Q ER

%L2NMB
%L2NMB(STAM) ; [ 11.03.07 14:03 ] [ 14.01.07 17:41 ] [ 09.01.07 05:30 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%NMB,%BEG,screen,%L2NMB) D ^%L1C
 U $P:(NOECHO:NOWRAP:CENABLE:CTRAP=$C(3))
 S %W=0 I $G(%PRKB) S %W=.1
BG00 S (%C0,%C00)=""
BG0 ;
BG ;
 S %L1NMB("X0")=0,%L1NMB("Y0")=0,%L1NMB("X2")=80,%L1NMB("Y2")=25
 I $G(%BEG)=1 D GET^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2) S %BEG=2
 D IN
 S %TO=""
 I $D(%NMB) S SH=%NMB
 W $C(27,91),"?25l"
READ0 S SH1=SH
READ ;
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 ;
 I %MOUSE S %CRD=$$REPORT^%L2MOUSE($G(%PORT),%XMIN,%XMAX,%YMIN,%YMAX) I %CRD D  G:OK END
 .S %PRKB=0
 .S %XX=$P(%CRD,",",1),%YY=$P(%CRD,",",2)
 .S N="",OK=0 F  S N=$O(%L2NMB("MTXT",N)) Q:N=""  D  Q:OK
 ..I %L2NMB("MTXT",N,"X")-1'>%XX,%L2NMB("MTXT",N,"X")+%L2NMB("MTXT",N,"SX")+1'<%XX,%L2NMB("MTXT",N,"Y")-1'>%YY,%L2NMB("MTXT",N,"Y")+%L2NMB("MTXT",N,"SY")+1'<%YY S OK=1
 .I OK S %TO="#"_%L2NMB("MTXT",N,"C") Q
 .S N="",OK=0 F  S N=$O(%L2NMB("MFUNC",N)) Q:N=""  D  Q:OK
 ..I %L2NMB("MFUNC",N,"X")-1'>%XX,%L2NMB("MFUNC",N,"X")+%L2NMB("MFUNC",N,"SX")+1'<%XX,%L2NMB("MFUNC",N,"Y")-1'>%YY,%L2NMB("MFUNC",N,"Y")+%L2NMB("MFUNC",N,"SY")+1'<%YY S OK=1
 .I OK S %TO="$"_%L2NMB("MFUNC",N,"C") Q
 ;
READ1 ;
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 U $P:(NOECHO:NOWRAP) R *%C:0 E  H .02 R *%C:0 G:'$T READ
 I %C'=13,%C'=10 S %PRKB=1
27 I %C=27 D DELAY R *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)) X "N %CC F  R *%CC:0 E  Q" G:$T(@%UPRCOD(C))="" TO K %FLL G @%UPRCOD(C)
 .S C="" Q:%C1=27  D DELAY R *%C2:%WAIT Q:%C2=27  S:%C2>0 C=%C1_%C2 Q:%C2<0  Q:$D(%UPRCOD(C))
 .R *%C3:%WAIT Q:%C3=27  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))  Q:%C3<0
 .R *%C4:%WAIT Q:%C4=27  S:%C4>0 C=C_%C4
 I $G(%C1)=27 S %C=27 K %C1 G 27
 I $G(%C2)=27 S %C=27 K %C2 G 27
 I $G(%C3)=27 S %C=27 K %C3 G 27
 I $G(%C4)=27 S %C=27 K %C4 G 27
 I %C=27 G 27
 I %C=0 S %TO="" D DELAY R *%C1:%WAIT D DELAY R *%C2:%WAIT I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<121))!(%C1>129):"0"_%C1,1:60+%C1)
 I %C=13!(%C=10) S %TO=$G(%L2NMB("MTXT",SH,"C"),"") G END
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
BD ;
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))="" S %TO=%UPRCOD(%C) G END
 I $C(%C)="=" S %TO=$C(%C) G END
 S %TO=$TR($C(%C),%TES2,%TES1)
 I $C(%C)="." S %TO=$C(%C)
 I $C(%C)="/" S %TO=$C(%C)
 G END
TO K %FLL S %TO=%UPRCOD(C) G END
VNIZ ;
 S %TO="DW" G END
VVERX ;
 S %TO="UP" G END
PRAVO ;
 S %TO="RIGHT" G END
LEVO ;
 S %TO="LEFT" G END
PGUP ;
 S %TO="PGUP" G END
PGDN ;
 S %TO="PGDW" G END
SAVE ;
 S %TO="F9" G END
ESC ;
 S %TO="END" G END
END ;
 I '$D(%TO) S %TO=""
 ;
 I $G(%C2)=27!($G(%C3)=27)!($G(%C4)=27) S C2=27 K %C2,%C3,%C4
 U $P:(NOECHO:NOWRAP)
 W $C(27,91),"?25h"
 I %TO'=".",%TO'="/" Q $TR(%TO,%TES1,%TES2)
 I %TO="." Q "."
 I %TO="/" Q "/"
 ;
 Q
IN ;
 S %PREV=""
 S:'$D(SH1) SH1=1 S:'$D(%NMB) %NMB=1
 N %L1INIT S %L1INIT=""
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 Q
CLCDN Q
DELAY Q
PUT ;
 I $D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) D
 .D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q

%L2RBUA
%L1RBUA ; INPUT X1,X2,Y1,Y2 [ 11.12.06 19:48 ] [ 31.10.03 12:14 ] [ 10/30/2000  6:36 PM ]
RBUA ; INPUT X1,X2,Y1,Y2
RBUA1 N I,J,%YY,%XX W %ENG U $P:(NOECHO:NOWRAP)
 ;I $D(%L1RBCL) W:$G(%CVET) %CV("MB") F I=Y1:1:Y2-1 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 I $D(%L1RBCL) D CLEAR(Y1,X1,Y2,X2)
 ;I %TYPCRT["PC" W $C(27,91),Y1,";",X1,";",Y2,";",X2,"b" H:%TYPCRT["PC1" 1 Q
 I %TYPCRT["PC",%XMSG(0)'<0 D  Q
 .W *27,"["_Y1_";"_X1_"H" W $S($G(%L1RBCL)=%CV("MB"):%CV("MB"),1:%CV("CB"))
 .F I=X1:1:X2 W " "
 .F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H"," "
 .W *27,"["_Y2_";"_X1_"H" F I=X1:1:X2 W " "
 .X %XCL
 I %TYPCRT["PC",%XMSG(0)<0 D  Q
 .W *27,"["_Y1_";"_X1_"H"
 .W $C(218) F I=X1+1:1:X2-1 W $C(196)
 .W $C(191)
 .F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H",$C(179)
 .W *27,"["_Y2_";"_X1_"H" W $C(192) F I=X1+1:1:X2-1 W $C(196)
 .W $C(217)
 .X %XCL
 I %TYPCRT["-" D TV1(Y1-1,X1-1,Y2-1,X2-1) Q
 ;;I %TYPCRT="VT520" W $C(27,91)," ",Y1,";",X1,";",Y2,";",X2,"$x" Q
 I %TYPCRT["VT" W *27,"(0"
 I %TYPCRT="VT100" W *27,"["_Y1_";"_X1_"H",$C(104) F I=X1+1:1:X2-1 W $C(116)
 E  W *27,"["_Y1_";"_X1_"H",$C(108) W $TR($J("",X2-X1-1)," ",$C(113)) ; F I=X1+1:1:X2-1 W $C(113)
 W *27,"["_Y1_";"_X2_"H" W $C(107)
 I %TYPCRT="VT100" F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H",$C(112)
 E  F I=Y1+1:1:Y2-1 F J=X1,X2 W *27,"["_I_";"_J_"H",$C(120)
 I %TYPCRT="VT100" W *27,"["_Y2_";"_X1_"H",$C(105) F I=X1+1:1:X2-1 W $C(116)
 E  W *27,"["_Y2_";"_X1_"H",$C(109) W $TR($J("",X2-X1-1)," ",$C(113)) ; F I=X1+1:1:X2-1 W $C(113)
 W *27,"["_Y2_";"_X2_"H" W $C(106)
 I %TYPCRT["?",'$D(%MENU) H 1
 I %TYPCRT["VT" W *27,"(B"
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q
TV(Y1,X1,Y2,X2) ;
 I Y1=Y2 D  Q ;-- LINE
 .N %XX,%YY
 .I $E(%TYPCRT,1,2)["PC" D  Q
 ..S %XX=X1,%YY=Y1 X %POSIC N %I F %I=X1:1:X2 W $C(196)
 .W $C(27),"(0" S %XX=X1,%YY=Y1 X %POSIC N %I F %I=X1:1:X2 W $C(113)
 .W $C(27),"(B"
 D BDK ;I %ENGLISH S X1=X1-1
 G RBUA
TV1(Y1,X1,Y2,X2) ;
 N %XX,%YY,%I
 S %XX=X1,%YY=Y1 X %POSIC
 F %I=X1:1:X2 W "-"
 F %I=Y1+1:1:Y2-1 S %XX=X1,%YY=%I X %POSIC W "|" S %XX=X2,%YY=%I X %POSIC W "|"
 S %XX=X1,%YY=Y2 X %POSIC
 F %I=X1:1:X2 W "-"
 Q
CLEAR(Y1,X1,Y2,X2) ;
 D BDK
 N %XX,%YY,I
 I %TYPCRT["VT5",%L1RBCL=%CV("BB")!'%CVET W $C(27,91),Y1+1,";",X1+1,";",Y2,";",X2-1,"$z" Q
 I $G(%CVET),$L($G(%L1RBCL)) N %N S %N="" F  S %N=$O(%CV(%N)) Q:%N=""  I %L1RBCL=%CV(%N) W %L1RBCL Q
 U $P:(NOECHO:NOWRAP) F I=Y1:1:Y2-1 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 Q
BDK ;
 I X1<0,X2>0 D
 .N R S R=X2-X1,X1=X2,X2=X2+R
 I X1>X2 D
 .N X0 S X0=X1,X1=X2,X2=X0
 Q

%L2RCMP
%L2RCMP ;JWC;COMPARE ROUNTINES {BETWEEN UCI'S} [ 03.01.03  5:07 PM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %WH=30,%SP=.55,%LL="B" K ^TMPS111($J)
 S %N=$G(^UTILITY($J,1),1)
 S %DN=$G(^UTILITY($J,2),2)
 S %ES=$O(^UTILITY($J,1,%N,999999),-1)
 F %ES=%ES:-1:1 Q:$G(^(%ES))'=""
 S %ED=$O(^UTILITY($J,2,%DN,999999),-1)
 F %ED=%ED:-1:1 Q:$G(^(%ED))'=""
NOE ;
 D W($J("= STATUS = === LINES FROM "_%N_" ===",%WH+14)_"=== LINES FROM "_%DN_" ===")
 S (%Q,%LCT,%TTL,%TAD,%TSM,%TMD,%TDL)=0,%D=1
 F %S=1:1:%ES S %DD=%D D RATE,FRMT Q:%Q
 Q:%Q  G:%D>%ED STA
 S %DD=%D,%D=%ED+1 D DLT Q:%Q
STA D W("") G ESTA
 D W($J("STATISTICS: "_$S(%TSM:%TSM,1:"ZERO"),16)_" LINE"_$S(%TSM'=1:"S ARE",1:" IS")_" THE SAME")
 D W($J($S(%TMD:%TMD,1:"ZERO"),28)_" LINE"_$S(%TMD'=1:"S",1:"")_" MODIFIED IN SOURCE ROUTINE")
 D W($J($S(%TAD:%TAD,1:"ZERO"),28)_" LINE"_$S(%TAD'=1:"S",1:"")_" ADDED TO SOURCE ROUTINE")
 D W($J($S(%TDL:%TDL,1:"ZERO"),28)_" LINE"_$S(%TDL'=1:"S",1:"")_" DELETED FROM SOURCE ROUTINE")
ESTA K ^UTILITY($J,1),^(2) Q
 ;
RATE S %X=^UTILITY($J,1,%N,%S)
 I %D>%ED S %P=0 Q
 D LRT Q:%P>%SP
 K %T S %TP=0
 F %=2:1:$L(%X," ") S %LX=$P(%X," ",%) D:(%LX'="") RAT1
RAT0 I %TP>2 X "F %=1:1:%TP S %P=%P+(%Y[%T(%))" S %P=%P/%TP
 Q:%P>%SP!(%D=%ED)!(%D=(%DD+7))
 S %D=%D+1 D LRT Q:%P>%SP
 G RAT0
RAT1 I %LX'="" S %TP=%TP+1,%T(%TP)=" "_%LX
 Q:%T(%TP)'[","
 S %T=%T(%TP),%TP=%TP-1
 F %I=1:1:$L(%T,",") S %TP=%TP+1,%T(%TP)=$P(%T,",",%I)
 Q
LRT S %Y=^UTILITY($J,2,%DN,%D)
 I %X=%Y S %P=2 QUIT
 S %LX=$P(%X," ",1),%LY=$P(%Y," ",1)
 S %P=(%LX'="")&(%LY'="")&(%LX=%LY)
 Q
FRMT G:%P>%SP FMT1 S %Y="" D DSP S %D=%DD Q
FMT1 G:%D=%DD FMT2
 S %T=%X,%TY=%Y D DLT S %X=%T,%Y=%TY
FMT2 D DSP S %D=%D+1 Q
DLT S %X="" F %DD=%DD:1:%D-1 S %Y=^UTILITY($J,2,%DN,%DD) D DSP Q:%Q
 Q
DSP S %V=$S(%X="":"%TDL",%Y="":"%TAD",%P=2:"%TSM",1:"%TMD")
 S @%V=@%V+1,%Q=0,%TTL=%TTL+1
 Q:(%LL="B"&(%P=2))!(%LL="S")
 D W($$ENG^%L1FRM("["_$S(%X="":"DELETED ",%Y="":"  ADDED ",%P=2:"  SAME  ",1:"MODIFIED")_"]"_$E(%X,1,%WH+2),%WH+12)_" <> "_$E(%Y,1,%WH+2))
 S %LX=$L(%X),%LY=$L(%Y),%LM=$S(%LX>%LY:%LX,1:%LY)
 F %=%WH+3:%WH:%LM D
 .D W($$ENG^%L1FRM($E(%X,%,%+%WH-1),%WH+12)_" <>   "_$E(%Y,%,%+%WH-1))
 Q
W(TXT) ;
 S ^TMPS111($J,$O(^TMPS111($J,99999),-1)+1)=TXT
 Q

%L2RCPRG
%L2RCPRG ;   [ 07.07.01  6:07 PM ] [ 01/04/2000  3:33 PM ] [
 k ^l1trprg
 D ^%L2GTR1
 S N="" F  S N=$O(^l1trprg(N)) Q:N=""  D
 .X "X ""ZR  F I=1:1 Q:'$D(^l1trprg(N,I))  ZI ^(I)"" ZS @N"
 ;k ^l1trprg
 Q

%L2RI
%L2RI(%PROG) ; GTM ROUTINE RESTORE [ 29.09.26 09:35 ] [ 22.09.26 09:33 ] [ 20.07.26 07:37 ] 
        ;Converts mumps routines from a standard routine output (RO)
        ;file to individual *.m files.
        ;possible enhancements:
        ;selection and/or exclusion by list, range and/or wildcard
        ;optional confirmation by routine name
        ;callable entry point
        ;
        I '$D(%zdebug) n $et s $et="zg "_$zl_":ERR^%L2RI" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%RI")
        ;
        I $G(%PROG)'="" S %L2RI("PROG")=%PROG
        ;
        I $G(%L2RI("PROG"))="" G BG
        ;
        n sel,dir,ff,%ZD
        s sel=0,dir="",ff=""
        ;
        s %ZD=%L2RI("PROG")
        Q:%ZD="" 
        I %ZD'["/" S %ZD="/home/gtmuser/"_%ZD 
        I $E(%ZD)="." S %ZD="/home/gtmuser/ppj-transfer/downloads/"_$E(%ZD,2,255) 
        U 0 W !,%ZD
        o %ZD:(REWIND:READONLY)
        u %ZD:exception="zg "_$zl_":eof"
        G REST
        ;
BG       w !,"Routine Input Utility - Converts RO file to *.m files.",!
        ;;i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%L2RI" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%RI")
        n d,dir,ff,l,r,x,y,%ZD,ff
        r !,"Formfeed delimited <No>? ",x
        s ff=$s($e($tr(x,"u","U"))="Y":$c(13,12),1:"")
        f  d  q:$l(%ZD)
        . r !,"Input file : ",%ZD,!
        . i '$l(%ZD) s %ZD="^" q
        . i %ZD="^" q
        . i %ZD="?" d  q
         . . w !!,"Select the device you want for input"
         . . w !,"If you wish to exit enter a carat (^)",!
        .I $E(%ZD)="." S %ZD="/home/gtmuser/ppj-transfer/downloads/"_$E(%ZD,2,255) 
        .i $e(%ZD)=">" S %ZD="/home/gtmuser/"_$E(%ZD,2,255)
        .i $e(%ZD,1,3)="mu>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/"_$E(%ZD,4,255)
        .i $e(%ZD,1,3)="ml>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/mly/"_$E(%ZD,4,255)
        .i $e(%ZD,1,2)="a>"!($E(%ZD,1,2)="A:")!($E(%ZD,1,2)="a:") S %ZD="/mnt/floppy/"_$E(%ZD,3,255)
        . I %ZD["/mnt/floppy" D ^%L1FLOP
        . i $zparse(%ZD)="" w "  no such device" s %ZD="" q
        . o %ZD:(readonly:block=2048:record=2044:exception="g noopen"):0
        . i '$t  w !,%ZD," is not available" s %ZD="" q
        . q
noopen  . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
        q:%ZD="^"
        u %ZD:exception="zg "_$zl_":eof"
        r x,y u $p w !,x,!,y,!!
        r !,"Output directory : ",dir,!!
        i dir="^" c:%ZD'=$p %ZD u $p:(ctrap="":exc="") q
        f  r !,"Selective restore ? (y/n) <n> : ",sel,! s sel=$$FUNC^%LCASE($E(sel)) s:sel="" sel="n" i sel="y"!(sel="n") q
        s sel=(sel="y")
REST    s rest="n" i 'sel s rest="y"
        i dir="^" c:%ZD'=$p %ZD u $p:(ctrap="":exc="") q
        s (l,r,exit)=0
        N PROG
        f  u %ZD r x i $l(x),$e(x)?1a!($e(x)="%"),$e(x,2,99)?.an d  q:exit
        .S PROG=x
        .i sel d  w ! q:exit  q:rest="n"!(rest="s")
        . .U $P w !,x
        . .i rest="c"!((rest="s")&(x=unr))!("cs"'[rest) d ZREST
        . .w " -- "_$s(rest="s"!(rest="n"):"Not ",1:"")_"restored"
        .
        . ;warning - loop terminated by exception
        . i 'sel u $p w:$x>70 ! w x,?$x\10+1*10
        .
        . s x=dir_$tr($e(x),"%","_")_$e(x,2,9999)_".m",r=r+1    ;convert % to _
        . o x:(newversion:noreadonly:blocksize=2048:recordsize=2044)
        . f  u %ZD r y q:y=ff  s l=l+1 u x w $s(y="":" ",1:y),!
        . c x
        .;;u $P ZLINK $tr(PROG,"%","_") ; -- 31/01/24
eof     u $p
        i $l(x) c x
        w !!,"Restored ",l," line",$s(l=1:"",1:"s")
        w " in ",r," routine",$s(r=1:".",1:"s.")
        c:%ZD'=$p %ZD u $p:(ctrap="":exc="")
        q
        ;
ERR     u $p w !,$p($zs,",",2,99),!
        s $ec=""
        ; Warning - Fall-though
EXIT    i $d(%ZD),%ZD'=$p c %ZD
        u $p:(ctrap="":exc="")
        q
ZREST ;
  n new s unr=""
  u $p w ?10," -- restore ? (y/n/s/c/r) <n> " r rest
  s:rest="" rest="n"
  i rest="^" s exit=1 q
  s rest=$$FUNC^%LCASE($e(rest))
  i "ynscr"'[rest w *7 w ! g ZREST
  I rest="s"!(rest="c") w "  until : " r unr i unr=""!(unr="^") w ! G ZREST
  i rest="r" d
  .f  r !?5,"   Enter new name : ",new i $l(new),$e(new)?1a!($e(new)="%"),$e(new,2,99)?.an s x=new q
  q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%L2RI0
%L2RI   ; GTM ROUTINE RESTORE [ 31.01.24 07:42 ] [ 09.05.06 07:03 ] [ 26.04.06 12:49 ] 
        ;Converts mumps routines from a standard routine output (RO)
        ;file to individual *.m files.
        ;possible enhancements:
        ;selection and/or exclusion by list, range and/or wildcard
        ;optional confirmation by routine name
        ;callable entry point
        ;
        w !,"Routine Input Utility - Converts RO file to *.m files.",!
        i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%RI" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%RI")
        n d,dir,ff,l,r,x,y,%ZD,ff
        r !,"Formfeed delimited <No>? ",x
        s ff=$s($e($tr(x,"u","U"))="Y":$c(13,12),1:"")
        f  d  q:$l(%ZD)
        . r !,"Input file : ",%ZD,!
        . i '$l(%ZD) s %ZD="^" q
        . i %ZD="^" q
        . i %ZD="?" d  q
         . . w !!,"Select the device you want for input"
         . . w !,"If you wish to exit enter a carat (^)",!
        .i $e(%ZD)=">" S %ZD="/home/lev/"_$E(%ZD,2,255)
        .i $e(%ZD,1,3)="mu>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/"_$E(%ZD,4,255)
        .i $e(%ZD,1,3)="ml>" S %ZD=$$^%L1ENVAR("gtm_dist")_"/mly/"_$E(%ZD,4,255)
        .i $e(%ZD,1,2)="a>"!($E(%ZD,1,2)="A:")!($E(%ZD,1,2)="a:") S %ZD="/mnt/floppy/"_$E(%ZD,3,255)
        . I %ZD["/mnt/floppy" D ^%L1FLOP
        . i $zparse(%ZD)="" w "  no such device" s %ZD="" q
        . o %ZD:(readonly:block=2048:record=2044:exception="g noopen"):0
        . i '$t  w !,%ZD," is not available" s %ZD="" q
        . q
noopen  . w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
        q:%ZD="^"
        u %ZD:exception="zg "_$zl_":eof"
        r x,y u $p w !,x,!,y,!!
        r !,"Output directory : ",dir,!!
        i dir="^" c:%ZD'=$p %ZD u $p:(ctrap="":exc="") q
        f  r !,"Selective restore ? (y/n) <n> : ",sel,! s sel=$$FUNC^%LCASE($E(sel)) s:sel="" sel="n" i sel="y"!(sel="n") q
        s sel=(sel="y")
        s rest="n" i 'sel s rest="y"
        i dir="^" c:%ZD'=$p %ZD u $p:(ctrap="":exc="") q
        s (l,r,exit)=0
        f  u %ZD r x i $l(x),$e(x)?1a!($e(x)="%"),$e(x,2,99)?.an d  q:exit
        .i sel d  w ! q:exit  q:rest="n"!(rest="s")
        . .U $P w !,x
        . .i rest="c"!((rest="s")&(x=unr))!("cs"'[rest) d ZREST
        . .w " -- "_$s(rest="s"!(rest="n"):"Not ",1:"")_"restored"
        .
        . ;warning - loop terminated by exception
        . i 'sel u $p w:$x>70 ! w x,?$x\10+1*10
        .
        . s x=dir_$tr($e(x),"%","_")_$e(x,2,9999)_".m",r=r+1    ;convert % to _
        . o x:(newversion:noreadonly:blocksize=2048:recordsize=2044)
        . f  u %ZD r y q:y=ff  s l=l+1 u x w $s(y="":" ",1:y),!
        . c x
eof     u $p
        i $l(x) c x
        w !!,"Restored ",l," line",$s(l=1:"",1:"s")
        w " in ",r," routine",$s(r=1:".",1:"s.")
        c:%ZD'=$p %ZD u $p:(ctrap="":exc="")
        q
        ;
ERR     u $p w !,$p($zs,",",2,99),!
        s $ec=""
        ; Warning - Fall-though
EXIT    i $d(%ZD),%ZD'=$p c %ZD
        u $p:(ctrap="":exc="")
        q
ZREST ;
  n new s unr=""
  u $p w ?10," -- restore ? (y/n/s/c/r) <n> " r rest
  s:rest="" rest="n"
  i rest="^" s exit=1 q
  s rest=$$FUNC^%LCASE($e(rest))
  i "ynscr"'[rest w *7 w ! g ZREST
  I rest="s"!(rest="c") w "  until : " r unr i unr=""!(unr="^") w ! G ZREST
  i rest="r" d
  .f  r !?5,"   Enter new name : ",new i $l(new),$e(new)?1a!($e(new)="%"),$e(new,2,99)?.an s x=new q
  q
 

%L2RSIS
%L1RSIS(TIME) ; [ 19.05.08 11:39 ] [ 02.01.08 12:09 ] [ 29.10.06 18:42 ]
 N MAX,%WT S %WT=0
 S MAX=19
 S CARDONLY=+$G(^[^UCI("MGG")]P1PRM("IOCARD"))
 I $$^%L1ZU(0)="MLY" S CARDONLY=0
 S SIS=$$READ(MAX,$G(^[^UCI("MGG")]P1PRM("IOCARD")))
 I $L(SIS)=12 S SIS=+$E(SIS,3,10)
 I $L(SIS)=18 S SIS=+$E(SIS,6,13)
 Q SIS
READ(MAX,CARDONLY) ;
 N %pn,J,S,TSTART,SIS S SIS=""
 S %pn=MAX X %levon
 U $P:(NOWRAP:NOECHO)
 S SIS="",%BEG=1 F J=1:1:MAX D READS Q:S=13!(S=27)!(S=0)  D
 .I J=1 S TSTART=$P($H,",",2)
 .I S=8!(S=127),$L(SIS)>0 S SIS=$E(SIS,1,$L(SIS)-1) W $C(8)," ",$C(8) S J=J-2 Q
 .I S=8!(S=127),'$L(SIS) Q
 .S SIS=SIS_$C(S) W "*"
 ;
 I $$TCHONLY D
 .D PUT^%L1NMB
 .S %SAY="" X %XMSGN
 ;
 I $G(CARDONLY),$D(TSTART),$P($H,",",2)-TSTART>+$G(TIME),$E(SIS,$L(SIS))'="!" S %SAY="  ! cala qihxk  " X %XMSGV(1) Q 0
 I $E(SIS,$L(SIS))="!" S SIS=$E(SIS,1,$L(SIS)-1)
 I S=27!(S=0) D  Q 0
 .F  R *S:0 Q:S=-1
 ;
 I $ZB=27!(SIS="") Q ""
 I $E(SIS)=";"!($E(SIS)="s") S SIS=$E(SIS,2,255)
 I $P($G(^[^UCI("MGG")]PL("BF")),"<>")=$E(SIS) S SIS=$E(SIS,2,20)
 I $P($G(^[^UCI("MGG")]PL("BF")),"<>",2)=$E(SIS,$L(SIS)) S SIS=$E(SIS,1,$L(SIS)-1)
 Q SIS
READS ;
 N %C I '$D(%WT) S %WT=.5
RS0 R *%C:%WT I %C>0 S S=%C,%WT=1 Q
 I $$TCHONLY D  S:'$D(S) S=0 Q
 .K %L1NMB("ALB") S %L1NMB("ZY")=$G(%YY,23)
 .W *27,7
RS1 .S %NMB=7,S=$$^%L1NMB("") S %WT=$S($G(%PRKB):1,1:.1) K %PRKB
 .I S="ENTER" S S=13 G ERS1
 .I S="ESC" S S=27 G ERS1
 .I S="DEL" S S=8 G ERS1
 .I $L(S)>1 G RS1
 .S S=$A(S)
ERS1 .
 .W *27,8
 ;
 R *S S %WT=1
 Q
TCHONLY(STAM) ;
 I $$TCHONLY^%L2MOUSE&$G(^P1PRM("SISTCH")) Q 1
 Q 0

%L2RTR
%L2RTR ; [ 01/12/94  4:42 PM ]
  ; HAGDARAT PORT: 1200+EP+7B+1,0,NO ECHO,PALL ?
  D ^%L1C X %chista
Z0 S %GET="PORT:++6,10,E#++2,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
  S PORT=%S
Z S %GET="ROUTINE NAME:#8" D NE^%L1GET I %S=""!($G(%TO)="END") G Z0
  I '$D(^ (%S)) W "   ???",*7 G Z
  S ROU=%S
  U 0 W #
  O PORT::2 E  S %SAY=" LINE IN USE " X %XMSGV(1) G Z0
  ;U PORT:(0::::8388608+(9*4096)+(5*16)+9)
  U PORT:(0::::#840001)
  F  R A:1 Q:'$T
  W $C(7),$C(13),$C(7),$C(13),"%L2RTR1",$C(13)
  S ST=$C(2)_$C(4)_%S
  W ST_$C(13)
  F  R A:1 Q:'$T
  S X0="S ER=0 X X1 W:'ER $C(6),$C(13) W:ER $C(7),$C(13)"
  S X1="ZR  ZL @ROU U PORT F I=1:1 Q:$T(+I)=""""  S ST=$T(+I),OK=1 S ST2=I_$C(2)_ST X X2 Q:ER"
  S X2="S A=0 X X4 S:IJ=6&'$T ER=1 Q:ER"
  S X4="F IJ=1:1:6 U PORT W ST2_$C(13) X X5 U 0 W:OK ST2,! W:'OK ""?"",IJ Q:OK"
  S X5="S OK=0 F IJ1=1:1:10 U PORT R A:6 U 0 W:IJ1>1 ""."" I $TR(A,$C(2),"""")=$TR(ST2,$C(2),"""") S OK=1 Q"
  X X0

%L2RTR1
%L2RTR1 ; [ 01/12/94  4:40 PM ]
 S SH=0,ER=0 k ^rtr($J),RN
 U 0:(0::::#840001) F  R A Q:A=$C(6)!(A=$C(7))  D
 .S SH=$P(A,$C(2)) I A'[$C(4) W A,$C(13)
 .S ST1=$P(A,$C(2),2)
 .I ST1[$C(4) S RN=$P(ST1,$C(4),2) K ^rtr($J) Q
 .I SH S ^rtr($J,SH)=ST1
 I A=$C(6) X "X ""ZR  F I=1:1 Q:'$D(^rtr($J,I))  ZI ^(I)"" ZS @RN"

%L2RTR2
%L2RTR2 ; [ 02/23/94 12:52 PM ]
 X %chista S %SAY=" %L2RTR dxard " X %XMSGV K ^B
Z0 ;
 U 0 S %GET="PORT:++6,10,E#++2,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S PORT=%S S PRT=$P
 O PORT::2 E  S %SAY=" LINE IN USE " X %XMSGV(1) G Z0
 S PRM="(0::::#840001)" ;"(0::::8388608+(9*4096)+(5*16)+9)"
 S CL="U @(""PORT:""_PRM) F  R B:1 Q:'$T" X CL
 S PST=""
 K ^S000(PRT) X "ZR  ZL %L2RTR1 F I=1:1 S A=$T(+I) Q:A=PST  S ^S000(PRT,I)=A"
 U @("PORT:"_PRM)
 W "S Z=0 K ^S000($P) F I=1:1 R A Q:A[""^ZZZ^""  S ^S000($P,I)=A,Z=Z+$ZCR(A,1)",$C(13)
 X CL
 S ZCR=0 F I=1:1 Q:'$D(^S000(PRT,I))  U @("PORT:"_PRM) S A=^(I) W A,$C(13) X CL U 0 W !,A S ZCR=ZCR+$ZCR(A,1)
 U @("PORT:"_PRM) W $C(13),"^ZZZ^"_ZCR_$C(13) X CL
 W "S ^a=""X """"F I=1:1 Q:'$D(^S000($P,I))  I $L(^(I)) ZI ^(I)"""" ZS %L2RTR1""",$C(13) X CL
 W "S ^a(""C"")=A_""=""_+Z I +$P(A,""^ZZZ^"",2)=+Z ZR  X ^a W ""S OK=1"",$C(13)",$C(13)
 U @("PORT:"_PRM)
 I 1 S B="" F I=1:1 R B:1 Q:'$T  S ^B(I)=B Q:B["OK=1"
 E  U 0 W !!," NO CONNECTION" G END
 U 0 W !!,"TRANSFER OF %L2RTR1 -- "_$S(B["OK=1":"",1:"NOT")_" OK"
END C PORT Q

%L2SHA
%L2SHA ; FORMIROVANIE KRASIVOI SHAPKI ; SHEER ; 02/08/93 [ 05/20/98 10:21 AM ] [ 04/17/94  1:23 PM ]
  ; INPUT %L2SHA("L")     - LIST DLIN GRAF
  ;       %L2SHA(I) - NAZVANIE GRAF I #STPOKI SHAPKI
  ;       %L2SHA("LEFT")     - SMESHENIE OT LEVOGO KRAIA %L2SHA("LEFT")="C" CENTROVKA
  ;       %L2SHA("TOP")   - SMESHENIE OT BERXHEGO KRAIA
  ;
  ;       S %L2SHA("L")="10,4,8,6,12" K %STR,^l2sha($J)
  ;       S %L2SHA(1)="AAA\\BBBB\\CCCCCC\\DDD\\EEE"
  ;       S %L2SHA(2)="AAAAAA\\BB\\CCC\\DDD\\EEE"
  ;
  ;  OUTPUT: ^l2sha($J)
  ;---------------------------------------------------------------------
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L2SHA,%L2SHAMC) D ^%L1C
  K ^l2sha($J) S %LL=%L2SHA("L")
  S %KG=$L(%LL,","),%L2SHA("LEFT")=$G(%L2SHA("LEFT"),0) I %L2SHA("LEFT")="C" D  S %L2SHA("LEFT")=80-(%L2SHA("LEFT")+%KG+1)\2
  .F I=1:1:%KG S %L2SHA("LEFT")=%L2SHA("LEFT")+$P(%LL,",",I)
  S %L2SHA("TOP")=$G(%L2SHA("TOP")),LIN=%L2SHA("TOP")+1
  F I=186,187,188,200:1:205 S C(I)=$C(I)
  I %OPT=65 S C(186)=$C(120),C(187)=$C(107),C(188)=$C(106),C(200)=$C(109),C(201)=$C(108),C(202)=$C(118),C(203)=$C(119),C(205)=$C(113)
1 ;;S $E(^l2sha($J,LIN),%L2SHA("LEFT"),200)=C(201)
  S ^l2sha($J,LIN)=C(201)
  F GR=1:1:%KG S ^l2sha($J,LIN)=^l2sha($J,LIN)_$TR($J("",$P(%LL,",",GR))," ",C(205))_$S(GR'=%KG:C(203),1:"") ; $C(209)
  S ^l2sha($J,LIN)=^l2sha($J,LIN)_C(187)
2 F I=1:1 Q:'$D(%L2SHA(I))  S LIN=LIN+1 D
  .;;S $E(^l2sha($J,LIN),%L2SHA("LEFT"),200)=C(186)
  .S ^l2sha($J,LIN)=C(186)
  .F GR=1:1:%KG D  S ^l2sha($J,LIN)=^l2sha($J,LIN)_$J(PIC,LL)_C(186)
  ..S LL=$P(%LL,",",GR),PIC=$P(%L2SHA(I),"\\",GR),LLP=$L(PIC),PIC=PIC_$J("",LL-LLP\2)
  .S %L2SHA("MC")=$TR(^(LIN),C(186),"|")
3 S LIN=LIN+1  ;;S $E(^l2sha($J,LIN),%L2SHA("LEFT"),200)=C(200)
  S ^l2sha($J,LIN)=C(200)
  F GR=1:1:%KG S ^l2sha($J,LIN)=^l2sha($J,LIN)_$TR($J("",$P(%LL,",",GR))," ",C(205))_$S(GR'=%KG:C(202),1:"")
  S ^l2sha($J,LIN)=^l2sha($J,LIN)_C(188)
  I $G(%OTL) W !,"12345678901234567890123456789012345678901234567890123456789012345678901234567890"
  U $P:(NOECHO:NOWRAP)
  I %TYPCRT["VT" W $C(27),"(0"
  S N="" F  S N=$O(^l2sha($J,N)) Q:N=""  S %XX=%L2SHA("LEFT"),%YY=N X %POSIC W ^(N)
  I %TYPCRT["VT" W $C(27),"(B"
  K %OTL
  Q

%L2SHAP
%L2SHAP ; SHP(%L2("COD")) ;                      [ 06.03.08 17:35 ] [ 12.04.07 18:33 ] [ 10.12.06 18:07 ]
 ;--------------------------------------------
 ;%L2("U") - 0,3;KOD OF SHP - %L2("COD") ;
 ; ARRAY OF VALUE REKV (MAS);
 ; %L2("SM") - OFFSET, %L2("SC") -  COUNTER OF LINES, %L2("SL") - COUNTER OF PAGES
 ; %L2("PC") - PRINT FLAG, %L2("RZ") - DELIMITER
 ; %L2("RL") - SIZE OF PAGE, %L2("LAST") - LAST POSITION
 ;---------------------------------------------
 ;;I %L2("U")'=0,%L2("U")'=$P,%L2("U")'="LEVPC" S %L2("U")=3
 N %L2GLOB D L2GLOB
 D
 .N I F I="B","N","PG","COND","NOCOND" I '$D(%L1SCPC("MDP",I)),$D(%L1OUT("MDP",I))#2,$$PCH S %L1SCPC("MDP",I)=%L1OUT("MDP",I)
 I '$D(%L1SCPC("MDP","B")) S %L1SCPC("MDP","B")=$S($$PCH:$C(27)_"W1",1:"")
 I '$D(%L1SCPC("MDP","N")) S %L1SCPC("MDP","N")=$S($$PCH:$C(27)_"W0",1:"")
 I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(13,12)
 I '$D(%L1SCPC("MDP","GWPC")) S %L1SCPC("MDP","GWPC")=80
 I '$D(TS0)!'$D(TSS)!'$D(TS1) D ^%L1TS
 S %L2("SS")="&" S:'$D(%L2("SM")) %L2("SM")=0 S:'$D(%L2("SC")) %L2("SC")=0 S:$D(%L2("SL")) %L2("SL")=%L2("SL")+1 S:'$D(%L2("SL")) %L2("SL")=1 S:'$D(%L2("PC")) %L2("PC")="1V"
 I %L2("PC"),'$D(%L2("U")) D MSG("A DEVICE WAS NOT DEFINED (%L2(""U"")) !") Q
 I '$D(%L2("COD")) D MSG("A HEADER CODE WAS NOT DEFINED (%L2(""COD"")) !") Q
 I '$D(@%L2GLOB@(%L2("COD"))) D MSG("A NODE "_%L2("COD")_" THERE IS NOT IN "_%L2GLOB_" !") Q
 S %NEXTS=@%L2GLOB@(%L2("COD"),1)
 I +%L2("PC") D
 .;;I %L2("U"),%L2("U")'=$P&(%L2("PC")="1V"),$G(%MDPSUG)=5 W $C(18)
 .I $$PCH,(%L2("PC")="1V")&'$D(%L2("!")) S %ST=%L1SCPC("MDP","PG") D STPC Q
 .S %ST="" D STPC S %ST="" D STPC Q
 I %L2("PC")="1V" D  S %L2BEG=1 D FSHAP
 .I '$G(%L1SCPC("LOGO")),'$D(%L1SCPC(1)) S %AT=$$SPA^%L1FRM($$^%L1HEAD("")) I $L(%AT) D
 ..I $G(%MDPSUG)=7 D  Q
 ...S %AT=$$SPC^%L1FRM(%AT)
 ...S %ST=%L1SCPC("MDP","B")_$$CENTR^%L1FRM($$TR($TR(%AT,"#_","")),%L1SCPC("MDP","GWPC"))_%L1SCPC("MDP","N")
 ...D STPC S %ST="" D STPC
 ..
 ..S %ST=%L1SCPC("MDP","B")_$$CENTRB^%L1FRM($$TR($TR(%AT,"#_","")),%L1SCPC("MDP","GWPC"))_%L1SCPC("MDP","N") D STPC S %ST="" D STPC
 .
 .N %J F %J=1:1:$G(%L1SCPC("LOGO")) W ! S %L2("SC")=$G(%L2("SC"))+1
 I %L2("PC")="1N" D NSHAP
 I %L2("PC")=0 D FSTR
END K %NEXTS,%IND,%J1,%J2,%K,%LENGTH,%NST,%POZ,%SHPZ,%STR,%STRS
 Q
FSHAP ;
 N %I,%DLMD
 S %DLMD="$" I $D(%L2("$")) S %DLMD=%L2("$")
 I $$^%L1DISP(%L2("U")) U $P:(NOECHO:NOWRAP) N %ECHO
 I $G(%L2("PC"))="1V" D
 F %I=%L2BEG:1 Q:'$D(@%L2GLOB@(%L2("COD"),%I))#10  Q:^(%I)[%DLMD  S %STRS=^(%I),%POZ=0 D PSK D
 .I %L2("PC") S %ST=$J("",%L2("SM")) D  D STPC Q
 ..
 ..I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D
 ...I $G(%L2("PC"))="1V"!($G(%L2("PC"))="1N") D
 ....N IND,%SMB S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 ....I %L2("PC")="1V" D  Q:%SMB="!"
 .....I %STRS?.P1"-"."-".P,$G(@%L2GLOB@(%L2("COD"),%I+1))?.P1":".E,%I'<(%L2("VG")-4) D  Q
 ......F %I1=%I+1:1 Q:'$D(@%L2GLOB@(%L2("COD"),%I1))#10  Q:^(%I1)[%DLMD  S %STRS=^(%I1) Q:%STRS?.P1"-"."-".P  D
 .......S %SMB="!"
 .......S @%L1SCPC("GLOB")@(IND)=$G(@%L2GLOB@(%L2("COD"),%I1))_%SMB
 .......S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 ......S %I=%L2("VG")-1
 .....S %SMB="^"
 ....I %L2("PC")="1N" S %SMB="="
 ....S @%L1SCPC("GLOB")@(IND)=%STRS_%SMB
 ..
 ..S %ST=%ST_$$TR(%STRS) D:'$D(%L1SCPC("GLOB"))
 ...S %ST=$J("",%L2("SM"))_$$TR($P(%STRS,"#")) S %W1=0
 ...F %II=2:1:$L(%STRS,"#") S %W1='%W1 D
 ....S:$$PCH %ST=%ST_$S(%II#2:%L1SCPC("MDP","N"),1:%L1SCPC("MDP","B"))
 ....;;I '$$PCH&%W1 S %ST=%ST_%LIGHT1
 ....N %ST1 S %ST1=$P(%STRS,"#",%II)
 ....I $$PCH&%W1,$G(%MDPSUG)=7 S %ST1=$$SPC^%L1FRM(%ST1)
 ....S %ST=%ST_$$TR(%ST1)
 ....;;I '$$PCH S %ST=%ST_%CCL
 ...I $D(%L1SCPC("MDP","_")),$D(%L1SCPC("MDP","\_")) D
 ....S %ST=$J("",%L2("SM"))_$$TR($P(%STRS,"~")) S %W1=0
 ....F %II=2:1:$L(%STRS,"~") S %W1='%W1 S:$$PCH %ST=%ST_$S(%II#2:%L1SCPC("MDP","_"),1:%L1SCPC("MDP","\_")) S %ST=%ST_$$TR($P(%STRS,"~",%II)) ;;S:'$$PCH %ST=%ST_%CCL
 .S %L2("SC")=%L2("SC")+1
 .I %L2("SC")>60 S %L2("SC")=0,%L2("SL")=%L2("SL")+1
 I $D(^(%I)) S %L2("VG")=%I
 Q
PSK ;
 F  S %POZ=$F(%STRS,%L2("SS"),%POZ) Q:%POZ<1  D
 .S %IND=+$E(%STRS,%POZ,%POZ+1) D DEFL
 .;;S %NST=$S($D(MAS(%IND)):$E(MAS(%IND),1,%LENGTH),1:"")
 .S %NST=$S($D(MAS(%IND)):$E($$CLST^%L1FRM(MAS(%IND),"",""),1,%LENGTH),1:"")
 .S %STRS=$E(%STRS,1,%POZ-2)_$J(%NST,%LENGTH)_$E(%STRS,%POZ-1+%LENGTH,255)
 .Q
 Q
DEFL ;
 F %K=%POZ+2:1:132 Q:$E(%STRS,%K)'=" "
 S %LENGTH=%K-%POZ+1 S:$E(%STRS,%K)=">" %LENGTH=%LENGTH+1 K %K ;S ^("S"_%IND)=%LENGTH
 Q
FSTR ;
 N %DLMD
 S %DLMD="$" I $D(%L2("$")) S DLMD=%L2("$")
 S FLAG="ER"
 I '$D(%L2("VG"))!'$D(%I) F %I=1:1 Q:'$D(^(%I))#10  Q:^(%I)[%DLMD
 I  I $D(^(%I)) S %L2("VG")=%I
 Q:'$D(%L2("VG"))
 S %STR=^(%I),%POZ=$F(%STR,%DLMD)-1,%L2("VG")=%I ;
 S %L2("LG1")=1,%L2("LG2")=%POZ-1
 S:'$D(%L2("RZ")) %L2("RZ")=":"
 K %L2("MP") F %J1=%I:1 Q:'$D(^(%J1))  S %STR=$$SPR^%L1FRM(^(%J1)),%NT=$E(%STR,$L(%STR)) Q:%NT'?1N.N  D
 .S %POZ=%L2("LG2")+1,%SHPZ=0
 .F  S %POZ=$F(%STR,%L2("RZ"),%POZ) Q:'%POZ  S %SHPZ=%SHPZ+1,%L2("MP",%NT,%SHPZ)=%POZ+%L2("SM")-1
 .S %L2("MP",%NT)=%SHPZ
 K %NT,%STR,%POZ,%SHPZ
 Q:'$D(^(%J1))
 ; ________________________________;
 F %J2=%J1:1 Q:'$D(^(%J2))  S %STR=$$SPR^%L1FRM(^(%J2)) Q:%STR[%DLMD
 Q:'$D(^(%J2))
 S %L2("PG1")=$F(%STR,%DLMD),%L2("PG2")=$L(%STR)
 S %L2("NG")=%J2+1,%L2("RL")=%L2("NG")-%L2("VG")-1 ;-$G(%L1SCPC("LOGO"))
 F %J1=%I:1 Q:'$D(^(%J1))  S %STR=$$SPR^%L1FRM(^(%J1)),%NT=$E(%STR,$L(%STR)) Q:%NT'?1N.N  D
 .S %STR=$E(%STR,%L2("LG2")+1,%L2("PG1")-1)
 .F %J2=1:1:%L2("MP",%NT) S %S=$P(%STR,%L2("RZ"),%J2) X "F %OFF=$L(%S):-1:1 Q:$E(%S,%OFF)=9" D ALL^%S1KA D  S %L2("FF",%NT,%J2)=%FF
 ..I %S["9" S %FF=9_","_%OFF_":"_($L(%S)-(%S[".")) S:%S["." %FF=%FF_","_$L($P(%S,".",2)) S:$E(%S)="S" %FF=%FF_",S" Q
 ..I %S["TP" S %FF="TP," S %FF=%FF_$L($P(%STR,%L2("RZ"),%J2)) Q
 ..I %S?1"T"."T" S %FF="T,"_$L(%S) Q
 ..S %FF="T,"_$L($P(%STR,%L2("RZ"),%J2))
 K %NT,%S
 S FLAG=""
 Q
NSHAP ;
 D L2GLOB
 I '$D(%L2("NG")) D FSTR
 I '$D(%L2("NG")) Q
 S %L2BEG=%L2("NG") D FSHAP
 Q
MSG(TXT) ;
 U 0 W *7 S %SAY="*** %L2SHAP ."_TXT X %XMSGV(1)
 Q
STPC ;
 I $$^%L1DISP(%L2("U")) Q:$D(%L1SCPC("EXCEL"))  U $P:(NOECHO:NOWRAP) W $TR($TR(%ST,%TES1,%TES2),%TEN,%THB),! Q
 I $D(%L1SCPC("GLOB")) D  D ^%L1STPC(%ST,%L1SCPC("GLOB"),"%L1SCPC(""MDP"")") Q
 .I $L(%ST)<79,$A($E(%ST))<$A(" "),%L2("U")'=51 S %ST=%ST_$J("",79-$L(%ST))
 W %ST
 W !
 Q
TR(%ST) I '$$PCH Q %ST
 Q $TR($TR(%ST,TS0,TSS),TS1,TSS)
L2GLOB ;
 I '$D(%L2("GLOB")) S %L2GLOB="^SHP"
 E  S %L2GLOB=%L2("GLOB")
 Q
PCH(STAM)
 S:'$D(%L2("U")) %L2("U")=""
 I %L2("U")="0"!(%L2("U")=$P)!(%L2("U")["LEVPC")!(%L2("U")="") Q 0
 Q 1

%L2SHAP0
%L2SHAP ; SHP(%L2("COD")) ;                      [ 27.06.08 08:24 ] [ 12.04.07 18:33 ] [ 10.12.06 18:07 ]
 ;--------------------------------------------
 ;%L2("U") - 0,3;KOD OF SHP - %L2("COD") ;
 ; ARRAY OF VALUE REKV (MAS);
 ; %L2("SM") - OFFSET, %L2("SC") -  COUNTER OF LINES, %L2("SL") - COUNTER OF PAGES
 ; %L2("PC") - PRINT FLAG, %L2("RZ") - DELIMITER
 ; %L2("RL") - SIZE OF PAGE, %L2("LAST") - LAST POSITION
 ;---------------------------------------------
 I %L2("U")'=0,%L2("U")'=$P,%L2("U")'="LEVPC" S %L2("U")=3
 N %L2GLOB D L2GLOB
 D
 .N I F I="B","N","PG","COND","NOCOND" I '$D(%L1SCPC("MDP",I)),$D(%L1OUT("MDP",I))#2,%L2("U") S %L1SCPC("MDP",I)=%L1OUT("MDP",I)
 I '$D(%L1SCPC("MDP","B")) S %L1SCPC("MDP","B")=$S(%L2("U"):$C(27)_"W1",1:%LIGHT1)
 I '$D(%L1SCPC("MDP","N")) S %L1SCPC("MDP","N")=$S(%L2("U"):$C(27)_"W0",1:%CCL)
 I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(13,12)
 I '$D(%L1SCPC("MDP","GWPC")) S %L1SCPC("MDP","GWPC")=80
 I '$D(TS0)!'$D(TSS)!'$D(TS1) D ^%L1TS
 S %L2("SS")="&" S:'$D(%L2("SM")) %L2("SM")=0 S:'$D(%L2("SC")) %L2("SC")=0 S:$D(%L2("SL")) %L2("SL")=%L2("SL")+1 S:'$D(%L2("SL")) %L2("SL")=1 S:'$D(%L2("PC")) %L2("PC")="1V"
 I %L2("PC"),'$D(%L2("U")) D MSG("A DEVICE WAS NOT DEFINED (%L2(""U"")) !") Q
 I '$D(%L2("COD")) D MSG("A HEADER CODE WAS NOT DEFINED (%L2(""COD"")) !") Q
 I '$D(@%L2GLOB@(%L2("COD"))) D MSG("A NODE "_%L2("COD")_" THERE IS NOT IN "_%L2GLOB_" !") Q
 S %NEXTS=@%L2GLOB@(%L2("COD"),1)
 I +%L2("PC") D
 .;;I %L2("U"),%L2("U")'=$P&(%L2("PC")="1V"),$G(%MDPSUG)=5 W $C(18)
 .I %L2("U"),%L2("U")'=$P&(%L2("PC")="1V")&'$D(%L2("!")) S %ST=%L1SCPC("MDP","PG") D STPC Q
 .S %ST="" D STPC S %ST="" D STPC Q
 I %L2("PC")="1V" D  S %L2BEG=1 D FSHAP
 .I '$G(%L1SCPC("LOGO")),'$D(%L1SCPC(1)) S %AT=$$SPA^%L1FRM($$^%L1HEAD("")) I $L(%AT) D
 ..I $G(%MDPSUG)=7 D  Q
 ...S %AT=$$SPC^%L1FRM(%AT)
 ...S %ST=%L1SCPC("MDP","B")_$$CENTR^%L1FRM($$TR($TR(%AT,"#_","")),%L1SCPC("MDP","GWPC"))_%L1SCPC("MDP","N")
 ...D STPC S %ST="" D STPC
 ..
 ..S %ST=%L1SCPC("MDP","B")_$$CENTRB^%L1FRM($$TR($TR(%AT,"#_","")),%L1SCPC("MDP","GWPC"))_%L1SCPC("MDP","N") D STPC S %ST="" D STPC
 .
 .N %J F %J=1:1:$G(%L1SCPC("LOGO")) W ! S %L2("SC")=$G(%L2("SC"))+1
 I %L2("PC")="1N" D NSHAP
 I %L2("PC")=0 D FSTR
END K %NEXTS,%IND,%J1,%J2,%K,%LENGTH,%NST,%POZ,%SHPZ,%STR,%STRS
 Q
FSHAP ;
 N %I,%DLMD
 S %DLMD="$" I $D(%L2("$")) S %DLMD=%L2("$")
 I %L2("U")=0!(%L2("U")=$P) U $P:(NOECHO:NOWRAP) N %ECHO
 I $G(%L2("PC"))="1V" D
 F %I=%L2BEG:1 Q:'$D(@%L2GLOB@(%L2("COD"),%I))#10  Q:^(%I)[%DLMD  S %STRS=^(%I),%POZ=0 D PSK D
 .I %L2("PC") S %ST=$J("",%L2("SM")) D  D STPC Q
 ..
 ..I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D
 ...I $G(%L2("PC"))="1V"!($G(%L2("PC"))="1N") D
 ....N IND,%SMB S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 ....I %L2("PC")="1V" D  Q:%SMB="!"
 .....I %STRS?.P1"-"."-".P,$G(@%L2GLOB@(%L2("COD"),%I+1))?.P1":".E,%I'<(%L2("VG")-4) D  Q
 ......F %I1=%I+1:1 Q:'$D(@%L2GLOB@(%L2("COD"),%I1))#10  Q:^(%I1)[%DLMD  S %STRS=^(%I1) Q:%STRS?.P1"-"."-".P  D
 .......S %SMB="!"
 .......S @%L1SCPC("GLOB")@(IND)=$G(@%L2GLOB@(%L2("COD"),%I1))_%SMB
 .......S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 ......S %I=%L2("VG")-1
 .....S %SMB="^"
 ....I %L2("PC")="1N" S %SMB="="
 ....S @%L1SCPC("GLOB")@(IND)=%STRS_%SMB
 ..
 ..S %ST=%ST_$$TR(%STRS) D:'$D(%L1SCPC("GLOB"))
 ...S %ST=$J("",%L2("SM"))_$$TR($P(%STRS,"#")) S %W1=0
 ...F %II=2:1:$L(%STRS,"#") S %W1='%W1 D
 ....S:%L2("U")&(%L2("U")'=$P) %ST=%ST_$S(%II#2:%L1SCPC("MDP","N"),1:%L1SCPC("MDP","B"))
 ....I '%L2("U")&%W1 S %ST=%ST_%LIGHT1
 ....N %ST1 S %ST1=$P(%STRS,"#",%II)
 ....I %L2("U")&%W1,$G(%MDPSUG)=7 S %ST1=$$SPC^%L1FRM(%ST1)
 ....S %ST=%ST_$$TR(%ST1)
 ....I '%L2("U") S %ST=%ST_%CCL
 ...I $D(%L1SCPC("MDP","_")),$D(%L1SCPC("MDP","\_")) D
 ....S %ST=$J("",%L2("SM"))_$$TR($P(%STRS,"~")) S %W1=0
 ....F %II=2:1:$L(%STRS,"~") S %W1='%W1 S:%L2("U")&(%L2("U")'=$P) %ST=%ST_$S(%II#2:%L1SCPC("MDP","_"),1:%L1SCPC("MDP","\_")) S:'%L2("U")&%W1 %ST=%ST_%LIGHT1 S %ST=%ST_$$TR($P(%STRS,"~",%II)) S:'%L2("U") %ST=%ST_%CCL
 .S %L2("SC")=%L2("SC")+1
 .I %L2("SC")>60 S %L2("SC")=0,%L2("SL")=%L2("SL")+1
 I $D(^(%I)) S %L2("VG")=%I
 Q
PSK ;
 F  S %POZ=$F(%STRS,%L2("SS"),%POZ) Q:%POZ<1  D
 .S %IND=+$E(%STRS,%POZ,%POZ+1) D DEFL
 .;;S %NST=$S($D(MAS(%IND)):$E(MAS(%IND),1,%LENGTH),1:"")
 .S %NST=$S($D(MAS(%IND)):$E($$CLST^%L1FRM(MAS(%IND),"",""),1,%LENGTH),1:"")
 .S %STRS=$E(%STRS,1,%POZ-2)_$J(%NST,%LENGTH)_$E(%STRS,%POZ-1+%LENGTH,255)
 .Q
 Q
DEFL ;
 F %K=%POZ+2:1:132 Q:$E(%STRS,%K)'=" "
 S %LENGTH=%K-%POZ+1 S:$E(%STRS,%K)=">" %LENGTH=%LENGTH+1 K %K ;S ^("S"_%IND)=%LENGTH
 Q
FSTR ;
 N %DLMD
 S %DLMD="$" I $D(%L2("$")) S DLMD=%L2("$")
 S FLAG="ER"
 I '$D(%L2("VG"))!'$D(%I) F %I=1:1 Q:'$D(^(%I))#10  Q:^(%I)[%DLMD
 I  I $D(^(%I)) S %L2("VG")=%I
 Q:'$D(%L2("VG"))
 S %STR=^(%I),%POZ=$F(%STR,%DLMD)-1,%L2("VG")=%I ;
 S %L2("LG1")=1,%L2("LG2")=%POZ-1
 S:'$D(%L2("RZ")) %L2("RZ")=":"
 K %L2("MP") F %J1=%I:1 Q:'$D(^(%J1))  S %STR=$$SPR^%L1FRM(^(%J1)),%NT=$E(%STR,$L(%STR)) Q:%NT'?1N.N  D
 .S %POZ=%L2("LG2")+1,%SHPZ=0
 .F  S %POZ=$F(%STR,%L2("RZ"),%POZ) Q:'%POZ  S %SHPZ=%SHPZ+1,%L2("MP",%NT,%SHPZ)=%POZ+%L2("SM")-1
 .S %L2("MP",%NT)=%SHPZ
 K %NT,%STR,%POZ,%SHPZ
 Q:'$D(^(%J1))
 ; ________________________________;
 F %J2=%J1:1 Q:'$D(^(%J2))  S %STR=$$SPR^%L1FRM(^(%J2)) Q:%STR[%DLMD
 Q:'$D(^(%J2))
 S %L2("PG1")=$F(%STR,%DLMD),%L2("PG2")=$L(%STR)
 S %L2("NG")=%J2+1,%L2("RL")=%L2("NG")-%L2("VG")-1 ;-$G(%L1SCPC("LOGO"))
 F %J1=%I:1 Q:'$D(^(%J1))  S %STR=$$SPR^%L1FRM(^(%J1)),%NT=$E(%STR,$L(%STR)) Q:%NT'?1N.N  D
 .S %STR=$E(%STR,%L2("LG2")+1,%L2("PG1")-1)
 .F %J2=1:1:%L2("MP",%NT) S %S=$P(%STR,%L2("RZ"),%J2) X "F %OFF=$L(%S):-1:1 Q:$E(%S,%OFF)=9" D ALL^%S1KA D  S %L2("FF",%NT,%J2)=%FF
 ..I %S["9" S %FF=9_","_%OFF_":"_($L(%S)-(%S[".")) S:%S["." %FF=%FF_","_$L($P(%S,".",2)) S:$E(%S)="S" %FF=%FF_",S" Q
 ..I %S["TP" S %FF="TP," S %FF=%FF_$L($P(%STR,%L2("RZ"),%J2)) Q
 ..I %S?1"T"."T" S %FF="T,"_$L(%S) Q
 ..S %FF="T,"_$L($P(%STR,%L2("RZ"),%J2))
 K %NT,%S
 S FLAG=""
 Q
NSHAP ;
 D L2GLOB
 I '$D(%L2("NG")) D FSTR
 I '$D(%L2("NG")) Q
 S %L2BEG=%L2("NG") D FSHAP
 Q
MSG(TXT) ;
 U 0 W *7 S %SAY="*** %L2SHAP ."_TXT X %XMSGV(1)
 Q
STPC ;
 I $G(%L2("U"))=0!($G(%L2("U"))=$P) Q:$D(%L1SCPC("EXCEL"))  U $P:(NOECHO:NOWRAP) W $TR($TR(%ST,%TES1,%TES2),%TEN,%THB),! Q
 I $D(%L1SCPC("GLOB")) D  D ^%L1STPC(%ST,%L1SCPC("GLOB"),"%L1SCPC(""MDP"")") Q
 .I $L(%ST)<79,$A($E(%ST))<$A(" "),%L2("U")'=51 S %ST=%ST_$J("",79-$L(%ST))
 W %ST
 W !
 Q
TR(%ST) I $G(%L2("U"))=0 Q %ST
 Q $TR($TR(%ST,TS0,TSS),TS1,TSS)
L2GLOB ;
 I '$D(%L2("GLOB")) S %L2GLOB="^SHP"
 E  S %L2GLOB=%L2("GLOB")
 Q

%L2SHD
%L2SHD(MRK,GLOB,FTP,PROGRCV) ; [ 19.04.07 10:28 ] [
 K %L2SHD N MD S MD=0
 ;
 I MRK?1N.N1".".1N.E D  G GL
 .S %L2MODEM("ADDR")=MRK
 .S %L2MODEM("NAMETO")=""
 ;
 I '$D(^MRKZ(MRK)) S %L2SHD("ER")=1 Q
 S %L2MODEM("ADDR")=$G(^MRKZ(MRK,"ADDR"))
 I %L2MODEM("ADDR")="" S %L2MODEM("ADDR")=$G(^MRKZ(MRK,"MD")),FTP=0,MD=1
 I %L2MODEM("ADDR")="" S %L2SHD("ER")=2 Q
 S %L2MODEM("NAMETO")=$G(^MRKZ(MRK))
GL ;
 S %L2MODEM("GLOB")=GLOB
 S %L2MODEM("FL")=$E(GLOB,2,100)
 ;
 I MD D
 .S %L2MODEM("MDPORT")=$$^%L1PORT
 .S %L2MODEM("PROG")=$G(PROG,"%L2GTR1")
 .S %L2MODEM("XON")=$G(^PL("MDXON"))
 ;
 S %L2MODEM("UCI")="MGR"
 I $G(FTP)'=0 S %L2MODEM("FTP")=""
 ;
 D ^%L2MODEM
 Q

%L2SRV
%L2SRV ; [ 29.01.06 14:20 ] [ 16.12.05 13:01 ] [ 15.12.05 13:47 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) N $ZT
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
0 K (%L2MN) D ^%L1C,^P1IN
 S J=0 K MM F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" SERVER MANAGER "
 S MAC="MM" D ^%L2MENU I %I=1 W ! U $P:(NOECHO:NOWRAP) Q
 D @MM1(%I) G 0
MENU ;
 ;1; EXIT ;
 ;1; START SERVER;1;
 ;1; SHOW SERVERS STATUS;2;
 ;1; STOP SERVER;3;
 ;1; SHOW ^SCKSERV;5;
 ;1; KILL ALL SERVERS;4;
 Q  ;
1 ;
 D SHOW
 U 0:(NOWRAP:ECHO)
ZP R !!," PORT NUMBER : ",PORTN Q:PORTN=""
 I 'PORTN!(PORTN'?4N) W *7 W "  ???" G ZP
 J single^%L2SRV1(PORTN,4)
 ;;I $G(^SCKSERV($J))<0 S %SAY=$TR($P(^(J),",",2),%TSMALL,%TBIG) X %XMSGV(1)
 H 2 D SHOW R !,">",OTB
 Q
2 ;
 D ^%L2SRVS
 Q
3 D SHOW
 U 0:(NOWRAP:ECHO)
ZJ R !!," JOB NUMBER (ALL - '*'): ",JOBN Q:JOBN=""
 I JOBN="*" S ^SCKSERV=-1 W !!," WAIT ..." H 10 D SHOW Q  ;K ^SCKSERV Q
 ;
 S ^SCKSERV(JOBN)=-1 W !!," WAIT ..." H 2 S ^SCKSERV(JOBN)=-1 H 10
 D SHOW R !,">",OTB ;;K ^SCKSERV(JOBN)
 Q
4 S ^SCKSERV=-2
 H 4 D SHOW R !,">",OTB
 Q
5 D SHOW
 U 0:(NOWRAP:ECHO)
 R !!," JOB NUMBER : ",JOBN Q:JOBN=""
 K ^S000($P)
 S MAC="^SCKSERV("_JOBN_")" D ^%S1GLSV
 K ^TMPS111($J) M ^TMPS111($J)=^S000($P) K ^S000($P)
 D ^%S2VIEW
 Q
SHOW D SHOW^%L2SRVS
 Q

%L2SRV1
%L2SRV1 ;fscwitte@users.sourceforge.net;2000/10/25,21:22:13;Socket Device,Server [ 11.07.07 17:44 ] [ 24.06.07 12:58 ] [ 20.06.07 15:28 ]
 ; NO ^ROUTINE ENTRY
 QUIT
 ;----------------------------------------------------------------------
 ; public procedure single^SCKSERV1()
 ;
 ; General TCP/IP server procedure to handle single client connection.
 ;
single(%ZNPort,%ZNTimeS) new %Z0,%ZNCmd,%ZNData,%ZNDev,%ZNLevel,%ZNSock
 ;
 ; set a new errortrap
 ;
 new $ZTRAP set $ZTRAP="ZGOTO "_$ZLEVEL_":singleQE"
 S ^SCKSERV=0
 kill ^SCKSERV($job)
 ;
 ; Construct a dummy, but "unique", devicename.
 ;
 set %ZNDev="SCK$"_$J
 ;
 ; Open the device:
 ;
OP OPEN %ZNDev:(ZLISTEN=%ZNPort_":TCP":DELIMITER=$C(27,95,58,13,10,58,12):ATTACH="listener"):%ZNTimeS:"SOCKET"
 else  set ^SCKSERV($job)="-1,NotOpen" D  quit
 .set ^SCKSERV($job,"H")=$H_"~"_$ZD($H,"DD.MM.YY  24:60")
 .set $P(^SCKSERV($job,1),"|",3)=%ZNPort
 ;
 ; Adjust errortrap after open (need to close)
 ;
 Set $ZTRAP="ZGOTO "_$ZLEVEL_":singleCE"
 Set ^SCKSERV($job)=0
 ;
 ; USE fills $KEY with "BOUND | socket_handle | portnumber"
 ;
 Use %ZNDev set ^SCKSERV($job,0)=$KEY
 ;
 ; Start listening, sets $KEY to "LISTENING | socket_handle | portnumber"
 ;
 WRITE /LISTEN(1) set ^SCKSERV($job,1)=$KEY
 ;
 ; Wait for connection, $KEY will be "CONNECT | socket_handle | remote_ipaddress"
 ;
LOOP For  do  quit:^SCKSERV($job)  Q:$G(^SCKSERV)<0
 . set ^SCKSERV($job,"H")=$H_"~"_$ZD($H,"DD.MM.YY  24:60")
 . WRITE /WAIT(%ZNTimeS)
 . IF $KEY]"" set ^SCKSERV($job,2)=$KEY,^SCKSERV($job)=2 quit
 ;
 ; Store the connection socket in local variable,
 ;
 Set %ZNSock=$piece($KEY,"|",2)
 ;
 ; Close listen socket, so another process can start listening on this port.
 ; Force connection socket to be the active
 ;
 CLOSE %ZNDev:(SOCKET="listener")
 I $G(^SCKSERV)<0 K:^SCKSERV<-1 ^SCKSERV G singleQ
 ;
 ; specify a trap that does not terminate the FOR-loop
 ;
 ;;set $ZTRAP="GOTO singleX"
 s %ZNLevel=$ZLEVEL
 set ^SCKSERV($job)=0,%Z0=2
 ;
 D
 . set ^SCKSERV($job,"H")=$H_"~"_$ZD($H,"DD.MM.YY  24:60")
 . USE %ZNDev:(SOCKET=%ZNSock)
 . READ %ZNData:%ZNTimeS ELSE  quit
 . set %Z0=%Z0+1
 . set ^SCKSERV($job,%Z0,1)=%ZNData
 . set ^SCKSERV($job,%Z0,2)=$DEVICE
 . set ^SCKSERV($job,%Z0,3)=$KEY
 . ;
 . ; If an error occurs during READ, stop the loop
 . IF $DEVICE set ^SCKSERV($job)=$DEVICE quit
 . ;
 . ; If no terminator we are in trouble, but ignore for now
 . IF $KEY="" quit
 . ;
 . IF $KEY=$CHAR(27,95) DO  ;
 . . N %J,%A F %J=1:1:$L(%ZNData) S %A=$A($E(%ZNData,%J)) I %A'=10,%A'=12,%A'=13,%A'=27 Q
 . . S %ZNData=$E(%ZNData,%J,$L(%ZNData))
 . . set %ZNCmd=$piece(%ZNData," "),%ZNData=$piece(%ZNData," ",2,32767)
 . . ;
 . . if %ZNCmd="get" D  quit
 . . . N %DATA S %DATA=$G(@%ZNData)
 . . . WRITE "val ",%DATA_$C(3)_$$^%L1ZCRC(%DATA),!
 . .
 . . if %ZNCmd="set" D  quit
 . . .N CS S CS=$P(%ZNData,$c(3),2),%ZNData=$P(%ZNDdata,$C(3))
 . . .N ZCRC S ZCRC=$$^%L1ZCRC(%ZNData)
 . . .I CS,ZCRC'=CS W "nok",! quit
 . . .set @%ZNData WRITE "ok",! quit
 . .
 . . if %ZNCmd="kil" D  quit
 . . .N CS S CS=$P(%ZNData,$c(3),2),%ZNData=$P(%ZNDdata,$C(3))
 . . .N ZCRC S ZCRC=$$^%L1ZCRC(%ZNData)
 . . .I CS,ZCRC'=CS W "nok",! quit
 . . .kill @%ZNData WRITE "ok",! quit
 . .
 . . if %ZNCmd="cmd" D CMD quit
 . .
 . . if %ZNData="stop" set ^SCKSERV($j)="-11,stop" quit
 . .
 . . WRITE "ercmd "_%ZNCmd,!
 . . set ^SCKSERV($job,%Z0,4)=%ZNCmd
 . ;
 ;
 ; for-loop terminated by +^SCKSERV($job)'=0, notify client
 ;;I $G(^SCKSERV)'<0,'$G(^SCKSERV($J)) C %ZNDev G OP
 I $G(^SCKSERV)'<0 C %ZNDev G OP
 ;
 USE %ZNDev:(SOCKET=%ZNSock)
 WRITE "end_serv",!
 ;
 ; singleC - close device before quiting
 ;
singleC CLOSE %ZNDev
 ; singleQ - just QUIT
 ;
 K:$G(^SCKSERV)<-1 ^SCKSERV
singleQ QUIT
 ;
 ; singleX - M runtime exception
 ;
 ; If not at procedure level + 2, then "normal" error: close and quit
 ; Else error while executing request from client: reply and retry
singleX if %ZNLevel+2>$ZLEVEL ZGOTO %ZNLevel:singleC
 C %ZNDev
 D SVER^%L1X H 10
 ;USE %ZNDev:(SOCKET=%ZNSock)
 ;WRITE "xcpt "_$ZSTATUS,! ;,#
 G OP ; Q
 ;
CMD ;
 N $ZT
CMD1 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L2SRV1"
 S $ZS=""
 S %SCKPORT=%ZNDev
 S %SCKPORT("SOCK")=%ZNSock
 N CMD S CMD=$P(%ZNData,$C(3))
 S UCI=$P(%ZNData,$C(3),2)
 I UCI="" S UCI="MGR"
 S %SCKPORT("CMD")=CMD
 S %SCKPORT("UCI")=UCI
 S %SCKPORT("USE")="use %SCKPORT:(SOCKET=%SCKPORT(""SOCK""))"
 M ^SCKSERV($J,"SCKPORT")=%SCKPORT
 N (%SCKPORT,%ZNDev,%ZNTimeS)
 I %SCKPORT("UCI")="MGR" S $ZGBLDIR=^UCI("MGG"),$ZROUTINES=^UCI("MGR")
 I %SCKPORT("UCI")="MLY" S $ZGBLDIR=^UCI("MLG"),$ZROUTINES=^UCI("MLR")
 I $ZS="",$L($G(%SCKPORT("CMD"))) X %SCKPORT("CMD")
 Q
ER ;;C %ZNDev
 D SVER^%L1X H 2
 I '$D(^SCKSERV) Q
 I '$D(^SCKSERV($j)) Q
 G LOOP
 Q
singleCE D SVER^%L1X G singleC
singleQE D SVER^%L1X G singleQ

%L2SRV10
%L2SRV1 ;fscwitte@users.sourceforge.net;2000/10/25,21:22:13;Socket Device,Server [ 10.08.06 09:48 ] [ 07.02.06 13:56 ] [ 29.01.06 14:45 ]
 ; NO ^ROUTINE ENTRY
 QUIT
 ;----------------------------------------------------------------------
 ; public procedure single^SCKSERV1()
 ;
 ; General TCP/IP server procedure to handle single client connection.
 ;
single(%ZNPort,%ZNTimeS) new %Z0,%ZNCmd,%ZNData,%ZNDev,%ZNLevel,%ZNSock
 ;
 ; set a new errortrap
 ;
 new $ZTRAP set $ZTRAP="ZGOTO "_$ZLEVEL_":singleQE"
 S ^SCKSERV=0
 kill ^SCKSERV($job)
 ;
 ; Construct a dummy, but "unique", devicename.
 ;
 set %ZNDev="SCK$"_$J
 ;
 ; Open the device:
 ;
OP OPEN %ZNDev:(ZLISTEN=%ZNPort_":TCP":DELIMITER=$C(27,95,58,13,10):ATTACH="listener"):%ZNTimeS:"SOCKET"
 else  set ^SCKSERV($job)="-1,NotOpen" D  quit
 .set ^SCKSERV($job,"H")=$H_"~"_$ZD($H,"DD.MM.YY  24:60")
 .set $P(^SCKSERV($job,1),"|",3)=%ZNPort
 ;
 ; Adjust errortrap after open (need to close)
 ;
 Set $ZTRAP="ZGOTO "_$ZLEVEL_":singleCE"
 Set ^SCKSERV($job)=0
 ;
 ; USE fills $KEY with "BOUND | socket_handle | portnumber"
 ;
 Use %ZNDev set ^SCKSERV($job,0)=$KEY
 ;
 ; Start listening, sets $KEY to "LISTENING | socket_handle | portnumber"
 ;
 WRITE /LISTEN(1) set ^SCKSERV($job,1)=$KEY
 ;
 ; Wait for connection, $KEY will be "CONNECT | socket_handle | remote_ipaddress"
 ;
LOOP For  do  quit:^SCKSERV($job)  Q:$G(^SCKSERV)<0
 . set ^SCKSERV($job,"H")=$H_"~"_$ZD($H,"DD.MM.YY  24:60")
 . WRITE /WAIT(%ZNTimeS)
 . IF $KEY]"" set ^SCKSERV($job,2)=$KEY,^SCKSERV($job)=2 quit
 ;
 ; Store the connection socket in local variable,
 ;
 Set %ZNSock=$piece($KEY,"|",2)
 ;
 ; Close listen socket, so another process can start listening on this port.
 ; Force connection socket to be the active
 ;
 CLOSE %ZNDev:(SOCKET="listener")
 I $G(^SCKSERV)<0 K:^SCKSERV<-1 ^SCKSERV G singleQ
 ;
 ; specify a trap that does not terminate the FOR-loop
 ;
 ;;set $ZTRAP="GOTO singleX"
 s %ZNLevel=$ZLEVEL
 set ^SCKSERV($job)=0,%Z0=2
 ;
 D
 . set ^SCKSERV($job,"H")=$H_"~"_$ZD($H,"DD.MM.YY  24:60")
 . USE %ZNDev:(SOCKET=%ZNSock)
 . READ %ZNData:%ZNTimeS ELSE  quit
 . set %Z0=%Z0+1
 . set ^SCKSERV($job,%Z0,1)=%ZNData
 . set ^SCKSERV($job,%Z0,2)=$DEVICE
 . set ^SCKSERV($job,%Z0,3)=$KEY
 . ;
 . ; If an error occurs during READ, stop the loop
 . IF $DEVICE set ^SCKSERV($job)=$DEVICE quit
 . ;
 . ; If no terminator we are in trouble, but ignore for now
 . IF $KEY="" quit
 . ;
 . IF $KEY=$CHAR(27,95) DO  ;
 . .if %ZNData[$c(13,10) s %ZNData=$P(%ZNData,$c(13,10),$l(%ZNData,$C(13,10)))
 . . set %ZNCmd=$piece(%ZNData," "),%ZNData=$piece(%ZNData," ",2,32767)
 . . ;
 . . if %ZNCmd="get" D  quit
 . . . N %DATA S %DATA=$G(@%ZNData)
 . . . WRITE "val ",%DATA_$C(3)_$$^%L1ZCRC(%DATA),!
 . .
 . . if %ZNCmd="set" D  quit
 . . .N CS S CS=$P(%ZNData,$c(3),2),%ZNData=$P(%ZNDdata,$C(3))
 . . .N ZCRC S ZCRC=$$^%L1ZCRC(%ZNData)
 . . .I CS,ZCRC'=CS W "nok",! quit
 . . .set @%ZNData WRITE "ok",! quit
 . .
 . . if %ZNCmd="kil" D  quit
 . . .N CS S CS=$P(%ZNData,$c(3),2),%ZNData=$P(%ZNDdata,$C(3))
 . . .N ZCRC S ZCRC=$$^%L1ZCRC(%ZNData)
 . . .I CS,ZCRC'=CS W "nok",! quit
 . . .kill @%ZNData WRITE "ok",! quit
 . .
 . . if %ZNCmd="cmd" D CMD quit
 . .
 . . if %ZNData="stop" set ^SCKSERV($j)="-11,stop" quit
 . .
 . . WRITE "ercmd "_%ZNCmd,!
 . . set ^SCKSERV($job,%Z0,4)=%ZNCmd
 . ;
 ;
 ; for-loop terminated by +^SCKSERV($job)'=0, notify client
 I $G(^SCKSERV)'<0,'$G(^SCKSERV($J)) C %ZNDev G OP
 ;
 USE %ZNDev:(SOCKET=%ZNSock)
 WRITE "end_serv",!
 ;
 ; singleC - close device before quiting
 ;
singleC CLOSE %ZNDev
 ; singleQ - just QUIT
 ;
 K:$G(^SCKSERV)<-1 ^SCKSERV
singleQ QUIT
 ;
 ; singleX - M runtime exception
 ;
 ; If not at procedure level + 2, then "normal" error: close and quit
 ; Else error while executing request from client: reply and retry
singleX if %ZNLevel+2>$ZLEVEL ZGOTO %ZNLevel:singleC
 C %ZNDev
 D SVER^%L1X H 10
 ;USE %ZNDev:(SOCKET=%ZNSock)
 ;WRITE "xcpt "_$ZSTATUS,! ;,#
 G OP ; Q
 ;
CMD ;
 S $ZS=""
 N $ZT S $ZT="G ER"
 S %SCKPORT=%ZNDev
 S %SCKPORT("SOCK")=%ZNSock
 N CMD S CMD=$P(%ZNData,$C(3))
 S UCI=$P(%ZNData,$C(3),2)
 I UCI="" S UCI="MGR"
 S %SCKPORT("CMD")=CMD
 S %SCKPORT("UCI")=UCI
 S %SCKPORT("USE")="use %SCKPORT:(SOCKET=%SCKPORT(""SOCK""))"
 N (%SCKPORT)
 I %SCKPORT("UCI")="MGR" S $ZGBLDIR=^UCI("MGG"),$ZROUTINES=^UCI("MGR")
 I %SCKPORT("UCI")="MLY" S $ZGBLDIR=^UCI("MLG"),$ZROUTINES=^UCI("MLR")
 I $ZS="" X %SCKPORT("CMD")
 Q
ER ;;C %ZNDev
 D SVER^%L1X H 10
 Q
singleCE D SVER^%L1X G singleC
singleQE D SVER^%L1X G singleQ

%L2SRVS
%L2SRVS ; [ 29.01.06 14:37 ] [ 16.12.05 13:06 ] [ 09.12.05 22:13 ]
 N N,OTB
LOOP D SHOW
 R !!!,">",OTB:20
 I $T U $P:(NOECHO:NOWRAP) W ! Q
 G LOOP
 ;
PORT(N) Q $P($G(^SCKSERV(N,1)),"|",3)
TIME(N) Q $P($G(^SCKSERV(N,"H")),"~",2)
STAT(N) ;
 N TM
 S TM=$G(^SCKSERV(N,"H"))
 I '($H-TM),$P($H,",",2)-$P(TM,",",2)<10 Q "+"
 Q "-"
CONN(N) Q $P($G(^SCKSERV(N,2)),"|",3)
CMD(N) ;
 N CMD,LI S CMD=""
 S LI=$O(^SCKSERV(N,9999999),-1)
 I LI>2 S CMD=$G(^SCKSERV(N,LI,1))
 Q CMD
ERR(N) I $G(^SCKSERV(N))<0 Q $TR($P(^(N),",",2),%TSMALL,%TBIG)
 Q ""
SHOW ;
 N N,PORT,STAT,LCMD,COMM,ERR
 U 0 ;
 W !,"-----------------------------------------------------------------------------"
 W !,":JOB NUMBER:PORT:STATUS:  CONNECT TO  :     LAST COMMAND     :  START TIME  : "
 W !,"-----------------------------------------------------------------------------"
 S N="" F  S N=$O(^SCKSERV(N)) Q:N=""  D
 .S PORT=$$PORT(N),STAT=$$STAT(N),LCMD=$$CMD(N),CONN=$$CONN(N),ERR=$$ERR(N)
 .S TIME=$$TIME(N)
 .I ERR'="" S LCMD=ERR
 .W !?5,N,?12,PORT,?20,STAT,?25,CONN,?40,LCMD,?62,TIME
 ;
 Q

%L2SS
%L2SS ; [ 22.10.25 18:30 ] [ 
 N (%BROWSER) S %NMF="l1ss"_$J N $ZT
 S %IO=$I
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC mumps > "_%NMF
 O %NMF:(REWIND:READONLY)
 S I=2 K ^TMPS111($J),^l1ss($J)
 S ^TMPS111($J,1)="PID   STIME TTY       ROUTINE NAME     GLOBAL REFERENCE        OWN DEVICES     "
 S ^TMPS111($J,2)="----  ----- --------  ---------------  ----------------------  --------------- "
 ;
 F  U %NMF R A Q:$ZEOF  D
 .S PID=$TR($E(A,10,14)," ","") Q:'PID
 .S %NMF0="GTM_JOBEXAM.ZSHOW_DMP_"_PID_"_"
 .ZSY "rm -f "_%NMF0_"*"
 .ZSY "mupip intrpt "_PID
 .
 .S %NMF1=$$^%L1ZOS(13,%NMF0_"*") Q:'$L(%NMF1)
 .Q:%NMF1'[%NMF0
 .
 .O %NMF1:(REWIND:READONLY)
 .S %NAME="",%REF="",%DEV=""
 .F  U %NMF1 R B Q:$ZEOF  D
 ..I $E(B,1,11)="$ZPOSITION=" S %NAME=$P(B,"=",2)
 ..I $E(B,1,11)="$REFERENCE=" S %REF=$P(B,"=",2)
 ..I B[" OPEN RMS",B'["GTM_JOBEXAM" S %DEV=%DEV_$S($L(%DEV):",",1:"")_$P(B," ")
 .C %NMF1
 .
 .F %NM="%NAME","%REF","%DEV" S @%NM=$TR(@%NM,"""","")
 .S I=I+1,^TMPS111($J,I)=$E(A,11,14)_"  "_$E(A,25,39)_"  "_%NAME_$J("",15-$L(%NAME))_"  "_%REF_$J("",23-$L(%REF))_"  "_%DEV
 .S ^l1ss($J,I,"NMF")=%NMF1
 ;
 I $D(%BROWSER) D  G END
 .U $P F I=1:1 Q:'$D(^TMPS111($J,I))  D
 ..S A=$G(^(I))
 ..S A=$$SP1^%L1FRM(A)
 ..S A=$TR(A," ",$C(9))
 ..W A,!
 ;
 I $$^%L1ZOS(2,%NMF)
 O %NMF:(NEWVERSION:WRITE)
 U %NMF F I=1:1 Q:'$D(^TMPS111($J,I))  W ^(I),!
 C %NMF
 ZSY "vi "_%NMF
 I $$^%L1ZOS(2,%NMF)
 ;
END ;;K ^TMPS111($J),^l1ss($J) Q
 
 
 
 
 
 
 
 
 
 

%L2TRP
%L2TRP ;                                       [ 29.07.01 11:33 AM ] [ 19.07.01  9:16 AM ] [ 07.07.01  6:12 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%L1TRG) D ^%L1C
0 K (%L1TRG) D ^%L1C
 S J=0 K MM F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" zegewll "_$S($D(%L1TRG):"milaelb",1:"dpkez ipekcr")_" xeciy "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 D @MM1(%I) G 0
MENU ;
 ;1; d ` i vi ;
 ;1; mipekcr xeciy;SEND;
 ;1;   mixeciy lewehext;PROT;
 Q  ;
SEND ;
 I $L($G(^%L1MODJ)),$G(^%L1MODJ)'=$$^%L1ZU(0) S %GET="WORKING WITH A JOB FROM OTHER UCI ! " D N^%L1GET Q
 L ^L1TRPRG:1 E  S %SAY=" WORKING WITH A JOB FROM OTHER TERMINAL ! " X %XMSGV(1) Q
 J ^%L1MODJ:90
 S UCI=$P($$^%L1ZU(0),",")
 I $D(^TEMPL($P)),$D(^TEMPR($P)) D  G:%S=0 END G:%S=1 Z1
 .S %S=1
 .I '$D(%L1TRG) S %SCRN="L1TRP" D ^%L1SC I %BS S %S=0 Q
 .S %SCRN="L1TRPL" D ^%L1SC
 .S %GETIN=1,%GET=" 2 - ycg xeciy ligzdl ,1 - xeciya jiyndl " D N^%L1GET
 ;
 K ^L1TRPRG,^TEMPL($P)
 ;
 I $D(%L1TRG) D  G LAK ;---- ^L1TRPRG - LIST OF GLOBALS
 .K ^UTILITY($J)
 .W %ENG U $P:(ECHO:WRAP) D ^%GSEL U $P:(NOECHO:NOWRAP)
 .S MAC1="^UTILITY($J)",MAC2="^L1TRPRG" D ^%S1GC1
 .K ^UTILITY($J)
 ;
 ;--------------------------- ROUTINES
 K ^TEMPR($P) D GET
PRG S %SCRN="L1TRP",%SC("A")="" D ^%L1SC G:%BS END
 I '$D(^TEMPR($P)) G END ;--- ^TEMPR($P - LIST OF PROGRAMMS
LAK K ^TEMPL($P) ;-- ^TEMPL($P LIST OF CLIENTS & MODEMS
 I $D(^LAK) D
 .K %Q S %Q("Z")="AUTOANSWER mr zegewld lk xegal" D N^%S2ASK I YES D
 ..S N="",I=0 F  S N=$O(^LAK(N)) Q:N=""  D
 ...S MODEM=$P($G(^(N,1)),"\",3) Q:'MODEM  Q:$P($G(^LAK(N,1)),"\",7)'="k"
 ...S I=I+1,^TEMPL($P,I)=N_"\"_$G(^LAK(N))_"\"_MODEM_"\"
 ;
 S %SCRN="L1TRPL" D ^%L1SC I %BS G PRG
Z1 ;
 S $ZT="S zr=$R "_^ZT_"ZG "_$ZL_":ERR"
 I $D(%L1TRG) G Z2
 ;-----------------------------  ROUTINES
 F %I=1:1 Q:'$D(^TEMPR($P,%I))  D
 .S SHEM=$TR($P($G(^(%I)),"\")," ","") Q:'$L(SHEM)
 .I '$D(^ (SHEM)) Q
 .X "ZL @SHEM F %I1=1:1 Q:$T(+%I1)=""""  S ^L1TRPRG(SHEM,%I1)=$T(+%I1)"
 .I '(%I#10000) U 0 W "."
 I '$D(^L1TRPRG) S %SAY=" ! xeciyl mipezp oi`" X %XMSGV(1) G END
 K %Q S %Q("Z")="xcyl " D N^%S2ASK I 'YES G END
Z2 ;
 I '$D(^TEMPL($P)) G END
 F I=$O(^TEMPL($P,99999),-1):-1:1 Q:$P(^(I),"\",4)["OK"
 S:I<1 I=1
 X %chista S INTR=0
 ;
 F L1TRPRGL=I:1 Q:'$D(^TEMPL($P,L1TRPRGL))  D  G:INTR END
 .S A=$G(^(L1TRPRGL))
 .D G^%L1SCV("L1TRPL",A) Q:SIMAN="OK"  ;--> LKH,LKH1,MDPHONE,SIMA
 .D MODEM
END0 S IND=$P($H,",",1)_$TR($J($P($H,",",2),5)," ",0)
 S MAC1="^TEMPL($P)",MAC2="^L1TRPROT(IND,""L"")" D ^%S1GC1
 D PROT
 K ^L1TRPRG,^TEMPR($P),^TEMPL($P),^UTILITY($J)
END L  Q
 ;
GET ;
 U 0 W %ENG
 X %chista
 W !?10,$P($P($ZV,","),"-")," - ","FIRST LINE DISPLAY UTILITY"
 W !?16,$ZHL(1,"dd-MON-yy")," ",$ZHL(2,"bh:mm P")
 U 0 K ^TEMPR($P) U $P:(ECHO:WRAP)
 K QUIT D INT^%RSEL I $D(QUIT) W !,"NO ROUTINES SELECTED" Q
 S %SAY=" ... oznd `p` " X %XMSGN
 S N="",I=0 F  S N=$O(^UTILITY($J,N)) Q:N=""  D
 .S I=I+1,^TEMPR($P,I)=N_"\"_$$HRA(N)
 U $P:(NOECHO:NOWRAP)
 Q
PROG ;
 I %OLDTO="F7" D  S %SC("ST")=1 Q
 .N N,NR K ^L1TRP($P)
 .S N="" F  S N=$O(^ (N)) Q:N=""  S ^L1TRP($P,N)=""
 .S MAC="^L1TRP($P)"
 .S %L1("BE")=6
 .S %L1("EU")=2
 .S %L1("T1")="                        dxrd                        |    dpkez  "
 .S %L1("TXT1")="%ENG_$$HRA^%L1TRP(%NXN)\/$$ENG^%L1FRM(%NXN,8)<>8"
 .D ^%L1NU Q:FLAG'=""
 .S PROG=INDEX,HRA=$$HRA(PROG),%SC("TO")="PL"
 Q:PROG=""
 I %OLDTO="F9" D ^%L1CALL("VIEW^%L1TRP(PROG)",%SCRN,"PROG") S %SC("ST")=1 Q
 I '$D(^ (PROG)) S %SC("ER")=1 Q
 S HRA=$$HRA(PROG)
 Q
HRA(PROG) ;
 N HRA
 S HRA="" X "ZL @PROG S HRA=$$ENG^%L1FRM($$SPA^%L1FRM($P($T(+1),"";"",2,40)),55)"
 Q HRA
 ;
VIEW(PROG) ;
 K ^TMPS111($J)
 X "ZL @PROG F I=1:1 Q:$T(+I)=""""  S ^TMPS111($J,I)=$T(+I)"
 D ^%S2VIEW
 K ^TMPS111($J)
 Q
 ;
LKH ;
 I %OLDTO="F7"!(%OLDTO="F6") D  S %SC("ST")=1 Q
 .N SHM,%S,MAC,%L2VIEW S SHM="",GLB="^TEMPL($P)"
 .I %OLDTO="F6" S %GET="my zligz++23,60,HH#++10,H,I" D ^%L1GET Q:%S=""!(%TO="ESC")  S SHM=%S
 .K ^TEMPH($P,"EZ")
 .N N,I S N="" F  S N=$O(^LAK(N)) Q:N=""  D
 ..N OK S OK=1
 ..N I F I=1:1 Q:'$D(@GLB@(I))  I N=$P(^(I),"\") S OK=0 Q
 ..Q:'OK
 ..I $L(SHM),$$HBR^%L1FRM($G(^LAK(N)),$L(SHM))'=SHM Q
 ..I $P($G(^LAK(N,1)),"\",7)'="k" Q
 ..S ^TEMPH($P,"EZ",N)=$J($P($G(^LAK(N,1)),"\",3),10)_" | "_$$HBR^%L1FRM($TR($G(^LAK(N)),"|","/"),22)_"|"_$J(N,10)_" "
 .S MAC="^TEMPH($P,""EZ"")"
 .S %L2VIEW("T1")=": miyexc zegewl , 'geex' ywn zxfra ,oiivl `p"
 .S %L2VIEW("Y1")=6
 .S %L2VIEW("H")=14
 .S %L2VIEW("FIND")=2
 .S %L2VIEW("SORT")=2
 .S %L2VIEW("SORT",2)="H"
 .S %L2VIEW("SORT","MASTER")=1
 .S %L2VIEW("SORT","HEAD")="    mcen    |            my          |    xtqn   "
 .D ^%L2VIEW I $L($G(%L2VIN)),'$D(^L2VMM($J,%L2VIN)),%L2VIN,$G(%I) S ^L2VMM($J,%L2VIN)=%L2VNM
 .I '$D(^L2VMM($J)) D A^%L1SC S %SC("ST")=1 Q
 .S N="",I=0 F  S N=$O(^L2VMM($J,N)) Q:N=""  D
 ..N LKH,MODEM,SHEM
 ..S LKH=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",3))
 ..S SHEM=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",2))
 ..S MODEM=$$SPA^%L1FRM($P(^L2VMM($J,N),"|",1))
 ..D ADD^%L1GSEQ(GLB,SH+I,LKH_"\"_SHEM_"\"_MODEM)
 ..S I=I+1
 .K ^L2VMM($J),^TEMPH($P,"EZ")
 .D GET^%L3MBG
 .D A^%L1SC
 Q:$G(LKH)=""  S LKH1=$G(^LAK(LKH))
 S MDPHONE=$P($G(^LAK(LKH,1)),"\",3)
 S %SC("TO")="PL"
 Q
 ;
MODEM ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%L1TRG,MDPHONE,LKH,LKH1,L1TRPRGL,UCI,INTR) D ^%L1C
 S JOB=$O(^L1TRPRM(999999),-1)+1
 I $D(%L1TRG) S ^L1TRPRM(JOB,"G")=1
 D ^%L1REF("^L1TRPRG")
 M ^L1TRPRM(JOB,"SRC")=^L1TRPRG
 I '$D(%L1TRG) M ^L1TRPRM(JOB,"REF")=%L1REF
 S ^L1TRPRM(JOB,"PORT")=$G(^PL("MDPORT")),INTR=0
 S ^L1TRPRM(JOB,"PHONE")=MDPHONE
 S ^L1TRPRM(JOB,"XON")=$G(^PL("MDXON"))
 S ^L1TRPRM(JOB,"LKH")=$G(LKH)
 S ^L1TRPRM(JOB,"LKH1")=$G(LKH1)
 S ^L1TRPRM(JOB,"UCI")=UCI
 S ^L1TRPRM(JOB,"STAT")="S\"_$P_"\"_$H
ENDM Q
 ;
ERR L  S %NOASKEXIT="" G ER^%L1X
 ;
PROT ;
 K %L1
 S MAC="^L1TRPRM"
 S %L1("BE")=4
 S %L1("EU")=1
 S %L1("T1")=" qehhq |    xcey izn   |xeciyl oken izn|     lawnd my     | lawnd 'qn|xtqn"
 S %L1("TXT1")="$$STAT^%L2TRP(%NXN)\/$$TIMEN^%L2TRP(%NXN)\/$$TIMER^%L2TRP(%NXN)\/$G(^L1TRPRM(%NXN,""LKH1""))\/$G(^L1TRPRM(%NXN,""LKH""))\/%NXN"
 ;S %L1("PLACE")="D PLACE^%L2TRP"
 S %L1("DO")="D DO^%L2TRP"
 S %L1("US")="%NXN?1N.N"
 S %L1("TIME")=20
 S %L1("REV")=""
 D ^%L1NU I FLAG="TIME" G PROT
 Q
DO W *27,7 S %GET=" 3 - zerced, 2 - xcyl , 1 - bivdl "
 D N^%L1GET I %TO="END"!(%S="") W *27,8 Q
 N JOB,STAT S JOB=INDEX
 S STAT=$TR($P(%NXS,"|")," ","")
 ;
 I %S=1,$D(^L1TRPRM(JOB,"G")) D  Q
 .K ^L1ADR($J) M ^L1ADR($J)=^L1TRPRM(JOB,"REF")
 .S %L1GM("VIEW")="" D ^%L1RGR1 K %L1GM
 ;
 I %S=1,'$D(^L1TRPRM(JOB,"G")) D  Q
 .K ^L1ADR($J) M ^L1ADR($J)=^L1TRPRM(JOB,"SRC")
 .S %L1RM("VIEW")="" D ^%L1RGR1 K %L1RM
 ;
 I %S=2 D  Q
 .N A S A=$TR($P($G(^L1TRPRM(JOB,"STAT")),"\",3),",","")
 .I A S ^L1TRPRM(JOB,"STAT",A)=^L1TRPRM(JOB,"STAT")
 .S ^L1TRPRM(JOB,"STAT")="S\"_$P_"\"_$H
 .S %SAY=" aey xcey uaew ++12,48,HH,I,R" X %XMSG H 1
 .S %L1OLD("TIME")=1 J ^%L1MODJ
 ;
 I %S=3 D  Q
 .K ^TMPS111($J) N N,J
 .S J=0,N="" F  S N=$O(^L1TRPRM(JOB,"MSG",N)) Q:N=""  D
 ..S J=J+1,^TMPS111($J,J)=$J(^(N),70)
 .D ^%S2VIEW K ^TMPS111($J)
 Q
STAT(JOB) ;
 N STAT
 S STAT=$P($G(^L1TRPRM(JOB,"STAT")),"\")
 I STAT="S" Q "oken"
 I STAT="M" Q "xywzn"
 I STAT="D" Q "xcyn"
 I STAT="O" Q "OK"
 I STAT="N" Q "NOK"
 Q ""
TIMEN(JOB) N TM S TM=$G(^L1TRPRM(JOB,"END")) I TM="" Q ""
 Q $$^%L1DC(TM,1)_" "_$$T^%L1TIME($P(TM,",",2))
TIMER(JOB) N TM S TM=$P($G(^L1TRPRM(JOB,"STAT")),"\",3) I TM="" Q ""
 Q $$^%L1DC(TM,1)_" "_$$T^%L1TIME($P(TM,",",2))

%L2VIEW
%L2VIEW ; VT220 OR PC               [ 22.04.07 20:36 ] [ 19.02.07 13:04 ] [ 20.11.06 13:55 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,MAC,%L2VIEW,%I,%L2VIN,%L2VNM,%L2VTO,%L1OS,%PATH) D ^%L1C
 ;-----------------------------------------------------------------
 ;INPUT: %L2VIEW("X1") - LEFT, %L2VIEW("Y1") - TOP
 ;       %L2VIEW("H") - HEIGHT,%L2VIEW("LAST") - INDEX ON LAST LINE
 ;       %L2VIEW("T1") - HEADER
 ;       %L2VIEW("TN") - BOTTOM HEADER
 ;       %L2VIEW("SH") - COUNTER IN  FILE
 ;       %L2VIEW("I") - COUNTER IN SCREEN
 ;       %L2VIEW("LAST") - CURSOR TO END OF FILE
 ;       %L2VIEW("IND") - DISPLAY INDEX
 ;       %L2VIEW("FIND") - COLUMN NUMBER FOR AL-BET FINDING
 ;       %L2VIEW("DO") - DO MUMPS-COMMAND IF CR WAS PRESSED
 ;       %L2VIEW("PREPROG") - PRE-MUMPS-COMMAND
 ;       %L2VIEW("PROG") - DO MUMPS-COMMAND IF OTHER KEY (NO FUNCTION) WAS PRESSED
 ;       %L2VIEW("PROGF9") - DO MUMPS-COMMAND IF F9 WAS PRESSED
 ;       %L2VIEW("PROGT") - DO MUMPS-COMMAND IF CTRL+T WAS PRESSED
 ;       %L2VIEW("SORT") - COLUMN NUMBER FOR SORTING
 ;       %L2VIEW("SORT","MASTER") - ALTERNATIVE COLUMN NUMBER FOR SORTING
 ;       %L2VIEW("SORT","HEADER") - SCREEN HEADER FOR SORTING
 ;       %L2VIEW("SP") - <ENTER> = <SPACE>
 ;       %L2VIEW("VAR") - VARIABLES
 ;       %L1OS - CALL FROM %L1OS , %PATH
 ;
 ;       ^L2VMSH($J,%SH)=IND  ;-- %SH - POR. NOM ; IND - IND V GLOV
 ;       ^L2VMSH1($J,%SH)    - SPISOK OTMECH. INDEXOV
 ;
 ;OUTPUT : %I,%L2VIN,%L2VNM,%PATH
 ;------------------------------------------------------------------
 D USE K ^L2VMSH($J),^L2VMSH1($J),^L2VMSH2($J),%SH,^L2VMM($J),%PRFND
 N %FIND,%LL,%SH,%SH0,%SHOLD,%JJ,%N,%IOLD,%J,%I1,%SM,%SMY,%SMX,%A,%A1,%JJ,%L2VMAC
 N X1,Y1,X2,Y2
 I $D(%L2VIEW("Y1")) S %SMY=%L2VIEW("Y1")
 I $D(%L2VIEW("X1")) S %SM=%L2VIEW("X1")
 S N="" F  S N=$O(%L2VIEW("VAR",N)) Q:N=""  I N?."%"1U.E S @N=%L2VIEW("VAR",N)
 W %ENG S %CLEAR=""
 I '$D(MAC) W *7,!!?5,"*** HASN'T NAME ARRAY !" Q
 I $D(@MAC)<10 S %SAY="!  mipezp oi` " X %XMSGV(1) Q
 I '$D(%POSIC) D ^%L1C
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 I %MOUSE S %L1("RB")=1
 I '%MOUSE K %L2VIEW("+-")
 S %L2VMAC=MAC
 I MAC'["(" S MAC=MAC_"("
 I $E(MAC,$L(MAC))=")" S $E(MAC,$L(MAC))=","
 S %M=MAC_"^L2VMSH($J,%SH))" S %LL=$L($G(%L2VIEW("T1"))),%SH=0
 S %N="",%SH=0 F  S %N=$O(@(MAC_"%N)")) Q:%N=""  S %SH=%SH+1,^L2VMSH($J,%SH)=%N I $L($G(@%M))>%LL S %LL=$L($G(@%M))
 I '$D(^L2VMSH($J,1)) S %SAY=" mipezp oi` !" X %XMSGV(1) Q
 I %LL>75 S %LL=75
 S %I1=%SH
 I $G(%L2VIEW("H")),%I1>%L2VIEW("H") S %I1=%L2VIEW("H")
 I %I1>16 S %I1=16 ;--- SCREEN SIZE
 I $D(%L1("RB")),%I1>5 S %I1=5,%SMY=3,%L2VIEW("Y2")=23
 S %SH=0
 I '$D(%SM) S %SM=80-%LL\2
 I %SM<1!(%SM>70) S %SM=80-%LL\2
 S:%SM<3 %SM=3
 S %SMX=%SM I '$D(%SMY),'$D(%L1("RB")) S %SMY=22-%I1\2
 I '$D(%SMY),$D(%L1("RB")) S %SMY=22-(%I1*3)\2
 I %SMY>22,'$D(%L1("RB")) S %SMY=22-%I1\2
 I %SMY>22,$D(%L1("RB")) S %SMY=22-(%I1*3)\2
 S:%SMY<4 %SMY=4
 I %I1>(22-%SMY) S %I1=22-%SMY
 X:'$D(%CLEAR) %chista
 N %H0 S %H0=$P($H,",",2)
 ;------------------------------- BODY ----------------
BD I $G(%CVET) N %CL0 S %CL0=$C(27,91)_"45;37m"
 S X1=%SM-1,X2=%SM+%LL+3-$G(%L1("RB")),Y1=%SMY+1,Y2=%SMY+(%I1*$S($D(%L1("RB")):3,1:1))+1+'$G(%L1("RB"))
 I %TYPCRT="PC" D GET^%VIDEO("L2VWVD",X1-1,Y1-2-$D(%L2VIEW("T1")),X2,$$YD(Y2),2)
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_(Y1-2-$D(%L2VIEW("T1")))_";"_(X1-1)_";"_Y2_";"_X2_";;"_(Y1-2-$D(%L2VIEW("T1")))_";"_(X1-1)_";2$v"
 D PHON
 I $D(%L2VIEW("T1")) D  S %SAY=$G(%L2VIEW("T1"))_"++"_(%SMY-1)_","_(%SMX+%LL)_",HH++MB,YF L" X %XMSG
 .N %L1RBCL S %L1RBCL=%CV("MB")
 .D CLEAR^%L1RBUA(Y1-1,X1-1,Y1+1,X2)
 .D RBUA(X1,X2,Y1-2,Y1)
 I $D(%L2VIEW("T2")) X %L2VIEW("T2")
 S %I=1,%SH=1
 I $D(%L2VIEW("SH")) S %SH=%L2VIEW("SH")
 I $D(%L2VIEW("I")) S %I=%L2VIEW("I")
 I $D(%L2VIEW("LAST")) S %SH=$O(^L2VMSH($J,999999),-1),%I=%I1
 I %I>%I1 S %I=%I1
 I $D(^L2VMSH($J,%SH+%I1)) S %L1("MENU")=""
 D PC(%SH-%I)
 I '$D(%L1("RB")) D
 .I $D(%L2VIEW("SORT","HEAD")),'$D(%L2VIEW("TN")) D  S %SAY=" <F8> - oein zepyl ++"_Y2_","_(%SMX+%LL)_",HH" X %XMSG
 ..S %L1RBCL="" D RBUA(X1,X2,Y2,Y2+2)
 .I $D(%L2VIEW("TN")) D  S %SAY=%L2VIEW("TN")_"++"_Y2_","_(%SMX+%LL)_",HH" X %XMSG
 ..S %L1RBCL="" D RBUA(X1,X2,Y2,Y2+2)
CYC0 D INV
CYC D ^%L1MSGBR
 G RDS ;;R *%A:1 G:$T READ G CYC
 I $G(%L2VIEW("TIME")),'$D(^L2VMSH1($J)) D RTIME(%L2VIEW("TIME")) E  S %L2VTO="TIME" G ENDPR
 ;
READ G:%TYPCRT="PC" CYC1 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1 S %A=ZB
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27,$T(@%UPRCOD(ZB))'="" G @%UPRCOD(ZB)
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27,$T(@%UPRCOD(ZB))="" S %A=ZB
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
 ;
CYC1 ;
 I %A=61 G 27
 ;I %A=27 R *%A1:%WAIT G:%A1=-1 27 R *%A:%WAIT G:%A=-1 27 S %A=%A1_%A G COM
 I %A=27 D DELAY R:'$D(%FLL) *%A1:%WAIT G:%A1<0 ESC D  G COM
 .S %A="" D DELAY R:'$D(%FLL) *%A2:%WAIT S:%A2>0 %A=%A1_%A2
 .R:'$D(%FLL) *%A3:%WAIT S:%A3>0 %A=%A_%A3
 .R:'$D(%FLL) *%A4:%WAIT S:%A4>0 %A=%A_%A4
 I %A=0 R *%A1:%WAIT I %A1>0 S %A="0"_%A1 G COM
 I %A=13,$D(%L1OS),@%M'?.P,$E(@%M,18,22)'["<",%L1OS'["6" S %A=$A("V")
 I %A=13,$D(%L2VIEW("SP")) G:$D(^L2VMSH1($J,%SH)) CYC S %A=32
 I %A=13 G:'$D(%L2VIEW("DO")) ENDPR D PROG("DO") G:%L2VIEW("DO")="Q" ENDPR G BD
 I %A=16 D PRINT G 27
COM I $D(%UPRCOD(%A)),$T(@%UPRCOD(%A))'="" G @%UPRCOD(%A)
 I $D(%L2VIEW("PROG"))#2 D  G:%L2VIEW("PROG")="Q" ENDPR
 .S %L2VIEW("PROG","%A")=%A
 .D PROG("PROG") D RESTORE
 I %A=32,'$D(^L2VMSH1($J,%SH)),$G(^L2VMSH($J,%SH))'="",$G(@%M)'["<"!'$D(%L1OS) S ^L2VMSH1($J,%SH)="" D PC1 G:$D(%L2VIEW("SP"))&'$D(%L1("RB")) VNIZ G CYC
 I %A=32,'$D(%L2VIEW("+-")),$D(^L2VMSH1($J,%SH)) K ^L2VMSH1($J,%SH) D PC1 G:$D(%L2VIEW("SP")) VNIZ G CYC
 I %A>32,%A<127,$G(%L2VIEW("FIND")) D  G CYC
 .N %S,%SHOLD,%IOLD,%FIND
 .S %S=$C(%A),$X=%SMX+%LL-1,$Y=Y2,%LS=20,%BE="E" D ^%L1ZMS Q:%S=""  S %NAME=%S
 .D FND(%NAME)
 I %A>255 G CYC
 I $D(%L1OS) D ^%L2VWOS(%A,%M,%L1OS) D RESTORE
 I $C(%A)="=" G 27
 G CYC
FND(%NAME) ;
 N %FIND,%SHOLD,%IOLD
 S %FIND=0,%SHOLD=%SH,%IOLD=%I
 F %SH=%SHOLD+1:1 Q:'$D(^L2VMSH($J,%SH))  S %A=$$HBR^%L1FRM($$SPA^%L1FRM($P($G(@%M),"|",$L(@%M,"|")-%L2VIEW("FIND")+1)),$L(%NAME)) I %A=%NAME S %FIND=1 Q
 I '%FIND W *7 S %SAY="NOT FOUND" X %XMSGV(1) S %SH=%SHOLD,%I=%IOLD D RESTORE Q
 I %IOLD+%SH-%SHOLD'>%I1 S %I=%IOLD+%SH-%SHOLD D RESTORE Q
 S %I=1 K %SHOLD,%IOLD D RESTORE
 Q
RESTORE S %SH0=%SH S:%SH<%I %I=%I-1 S %SH=%SH-%I I $D(%L1OS) X %chista
 I $D(%L1OS) D SPACE^%L1OS
 D PHON,PC(%SH) S %SH=%SH0 D INV
 Q
ESC ;
27 S %I="",%L2VIN="",%L2VNM=""
ENDPR S %L2VNM="",%L2VIN="" I $D(^L2VMSH($J,%SH)) S %L2VIN=^L2VMSH($J,%SH),%L2VNM=$G(@%M)
 S N="" F %JJ=1:1 S N=$O(^L2VMSH1($J,N)) Q:N=""  S %SH=N I $D(^L2VMSH($J,%SH))#2,$D(@%M)#2 S %SH=N,^L2VMM($J,^L2VMSH($J,%SH))=@%M
 K ^L2VMSH($J),^L2VMSH1($J),^L2VMSH2($J) K %A,%B,%M,%LL,%I1,%B1,%B2
 D ^%L1C X %XCL
 K %SM,%SMX,%SMY W:$D(%HBRY) %HBR
 I %TYPCRT="PC" D PUT^%VIDEO("L2VWVD",X1-1,Y1-2-$D(%L2VIEW("T1")),X2,$$YD(Y2),2) Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_(Y1-2-$D(%L2VIEW("T1")))_";"_(X1-1)_";"_Y2_";"_X2_";2;"_(Y1-2-$D(%L2VIEW("T1")))_";"_(X1-1)_";$v" Q
 W $C(27,91),"?25h" W %HBR
 K %L2VIEW Q
 ;-
SERV ;
VVERX G:%I=1 VVM D CL S %I=%I-1,%SH=%SH-1 W %vverx D INV G CYC
VNIZ G:'$D(^L2VMSH($J,%SH+1)) CYC
 G:%I=%I1 VNM D CL S %I=%I+1,%SH=%SH+1 W %vniz D INV G CYC
PGDN G:'$D(^L2VMSH($J,%SH+%I1-%I-1)) CYC S %SH=%SH+%I1-%I,%I=1 D CLEAR,PC(%SH) S %SH=%SH+1 G CYC0
PGUP I %SH-%I1-%I<1 S %SH=0,%I=1 G PGUP1
 S %SH=%SH-%I1-%I,%I=1
PGUP1 D CLEAR,PC(%SH) S %SH=%SH+1 G CYC0
MIN N %A S %A=$A("-"),%L2VIEW("PROG","%A")=%A D PROG("PROG") G CYC0
PLUS N %A S %A=$A("+"),%L2VIEW("PROG","%A")=%A D PROG("PROG") G CYC0
END G:'$D(^L2VMSH($J,%SH+%I1-%I)) CYC
 F %J=1:1 Q:'$D(^L2VMSH($J,%J))
 S %SH=%J-%I1-1,%I=1 G PGUP1
HOME S %SH=0,%I=1 G PGUP1
FIND I '$D(%L1OS),$D(%L2VIEW("SORT")) G SORT
 S %FIND=0 S %SHOLD=%SH,%IOLD=%I S %GET="NAME-<N> ,DATE - <D> ++23,10,EE,,,C#N++1,E,I++DN" D ^%L1GET S:%S="" %S="N" S %PRFND=%S S %YY=23,%XX=0 X %POSIC W %chists
FD0 G:%PRFND="N" FN0 S %XX=20 D ^%L1DAT G:%S="" NF
FD F %SH=%SHOLD+1:1 Q:'$D(^L2VMSH($J,%SH))  I $TR(@%M," ","")[(+$E(%L1DAT1,4,5)_"-"_$E(%L1DAT1,1,2)_$S($E(%L1DAT1,7,8)<50:"-20",1:"-19")_$E(%L1DAT1,7,8)) S %FIND=1 Q
 G NF
FN0 S %GET="BEGIN OF NAME:++23,20,EE,I,R#++10,E,I" D ^%L1GET I %S="" S %SH=%SHOLD,%I=%IOLD D RESTORE G CYC
 S %NAME=%S
FN F %SH=%SHOLD+1:1 Q:'$D(^L2VMSH($J,%SH))  I $E($TR(@%M," ",""),1,$L(%NAME))=%NAME S %FIND=1 Q
NF I '%FIND W *7 S %SAY="NOT FOUND" X %XMSGV H 2 S %SH=%SHOLD,%I=%IOLD K %SHOLD,%IOLD D RESTORE G CYC
 S %I=1 K %SHOLD,%IOLD D RESTORE G CYC
TAB I $D(%PRFND) S %S=%PRFND,%SHOLD=%SH,%IOLD=%I,%FIND=0 G @("F"_%PRFND) G CYC
 I $L($G(%NAME)) D FND(%NAME)
 G CYC
SORT ;
 D SORT1 G BD
SORT1 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,MAC,%L2VIEW) D ^%L1C
 S GLB=MAC N MAC Q:'$D(%L2VIEW("SORT","HEAD"))
 S STG=%L2VIEW("SORT","HEAD")
 I $G(%L2VIEW("SORT")) D  G SORT2
 .S %I=%L2VIEW("SORT")
 .I $G(%L2VIEW("SORT","MASTER")) D
 ..N A S A=%L2VIEW("SORT","MASTER")
 ..S %L2VIEW("SORT","MASTER")=%L2VIEW("SORT")
 ..S %L2VIEW("SORT")=A
 S M(0)=" : oeinl oezp xegal `p "
 S M(1)=" d ` i v i "
 S J=1 K MI
 F I=1:1:$L(STG,"|") D
 .S J=J+1
 .S M(J)=$$SPA^%L1FRM($P(STG,"|",$L(STG,"|")-I+1))
 S MAC="M",%L2MN("NOCLB")=1
 D ^%L2MENU Q:%I=1
 S %I=%I-1
SORT2 K ^L2VMSH2($J)
 N N S N="" F  S N=$O(^L2VMSH1($J,N)) Q:N=""  S ^L2VMSH2($J,^L2VMSH($J,N))=N
 K ^L2VMSH($J),^L2VMSH1($J)
 S TYPS=$G(%L2VIEW("SORT",%I),"E")
 K ^vrm($J)
 S N="" F J=1:1 S N=$O(@(GLB_"N)")) Q:N=""  D
 .S A=$G(^(N))
 .S IND=$$SPA^%L1FRM($P(A,"|",$L(STG,"|")-%I+1))
 .I TYPS="H" S IND=$$INV^%L1FRM($$HBR^%L1FRM(IND,10))_$TR($J(J,5)," ",0)
 .I TYPS="D"!(IND?2N1"."2N1"."2N)!(IND?2N1"."2N1"."4N)!(IND?2N1"/"2N1"/"2N)!(IND?2N1"/"2N1"/"4N) D  G SORTV
 ..S IND=$J($$^%L1DC(IND,3),10)_$TR($J(J,5)," ",0)
 .I TYPS="E"!(TYPS="N") S IND=$J(IND,10)_$TR($J(J,5)," ",0)
SORTV .S ^vrm($J,IND)=N
 S N="",SH=0 F  S N=$O(^vrm($J,N)) Q:N=""  S SH=SH+1,^L2VMSH($J,SH)=^vrm($J,N) D
 .I $D(^L2VMSH2($J,^L2VMSH($J,SH))) S ^L2VMSH1($J,SH)=""
 K ^vrm($J),^L2VMSH2($J)
 Q
 ;-
VVM ;
 I $G(%L1("RB")) G CYC
 G:%SH'>1 CYC D  S %SH=%SH-1 G CYC0
 .I %TYPCRT="PC" D CL H .3 D  Q
 ..D GET^%VIDEO("L2VWVD1",X1,Y1,X2-X1,Y2-Y1-2,2)
 ..D PUT^%VIDEO("L2VWVD1",X1,Y1+1,X2-X1,Y2-Y1-2,2)
 .I $E(%TYPCRT,1,3)="VT5" D CL D  Q
 ..W $C(27,91),(Y1+1)_";"_X1_";"_(Y2-2)_";"_X2_";;"_(Y1+2)_";"_X1_";$v"
 .D CLEAR,PC(%SH-2)
VNM G:'$D(^L2VMSH($J,%SH+1)) CYC
 I $G(%L1("RB")) G CYC
 D CL H .3
 S %SH00=%SH,%SH0=%SH+1,%SH=%SH-%I+1 D  S %SH=%SH0 K %SH0 G CYC0
 .I %TYPCRT="PC" D  Q
 ..D GET^%VIDEO("L2VWVD1",X1,Y1+1,X2-X1,Y2-Y1-2,2)
 ..D PUT^%VIDEO("L2VWVD1",X1,Y1,X2-X1,Y2-Y1-2,2)
 .
 .I $E(%TYPCRT,1,3)="VT5" D  Q
 ..W $C(27,91),(Y1+2)_";"_X1_";"_(Y2-1)_";"_X2_";;"_(Y1+1)_";"_X1_";$v"
 .
 .D CLEAR,PC(%SH)
 ;-
CL X %XCL D PC1
 Q
 ;-
INV X %XCL W %CLI D  D PC1
 .N %I Q:'$G(%SH)  Q:'$D(^L2VMSH($J,%SH))
 .I $D(%L2VIEW("PREPROG")) X %L2VIEW("PREPROG")
 Q
 ;-
PHON ;
 X %XCL S %L1RBCL=""
 I '$D(%L1("RB")) D RBUA(X1,X2,Y1,Y2)
 I $D(%L1("RB")) D
 .N %L1RBCL S %L1RBCL=%CV("MB") ; "BB"
 .D CLEAR^%L1RBUA(Y1,X1-1,Y2+1,X2+1) ; Y2+1
 Q
 ;-
PC(%SH) ;
 N %PC S %PC=""
 X %XCL N %I S %SHOLD=%SH
 F %I=1:1:%I1 S %SH=%SH+1 Q:'$D(^L2VMSH($J,%SH))  Q:'$D(@%M)  W:$G(%CVET) %CV("MB") D PC1
 S %SH=%SHOLD ;;K %SHOLD
 I $D(%L1OS) S %SAY="F8 - FIND "_$S($G(%L1OS)'[2:", D - DELETE",1:"")_"  V - VIEW  L - LIST "_$S($G(%L1OS)'[5:" C - COPY ",1:"")_$S($G(%L1OS)'[3:"  R - ^%RR",1:"")_$S($G(%L1OS)'[4:"  G - ^%GR ",1:"") X %XMSGN
 Q
PC1 Q:'$D(^L2VMSH($J,%SH))  Q:'($D(@%M)#2)
 S %LL1=$L(^L2VMSH($J,%SH))+1
 ;;S %XX=%SMX,%YY=%I+%SMY X %POSIC
 I $D(%L1("RB")) W $C(27,91),"?25l"
 S %YY=%SMY+(%I*$S($D(%L1("RB")):3,1:1)) S:$D(%L1("RB")) %YY=%YY-1
 I $D(%L1("RB")) D
 .N X1,X2,Y1,Y2
 .S X1=%SM-1,X2=X1+%LL+3
 .S Y1=%YY,Y2=%YY+2
 .I %I=%I1,$D(%L1("MENU")),$D(%PC) D  ; KAMA DAPIM
 ..N X10,X20 S X10=X1,X20=X2 N X1,X2,Y1,Y2
 ..N Y0 S Y0=%YY+4
 ..S X1=X10,X2=X1+7,Y1=Y0,Y2=Y1+2
 ..W %CV("YF"),%LIGHT1 D RBUA(X1,X2,Y1,Y2)
 ..S X1=X20-7,X2=X1+7,Y1=Y0,Y2=Y1+2
 ..W %CV("YF"),%LIGHT1 D RBUA(X1,X2,Y1,Y2) N %XX,%YY
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X10+1,%YY=Y1 X %POSIC W "PGUP"
 ..S %XX=X20-6 X %POSIC W "PGDN"
 ..I '$D(%L2VIEW("+-")) D
 ...S X1=X10+8,X2=X20-8 Q:X2'>X1  D RBUA(X1,X2,Y1,Y2)
 ...X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ...S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "E S C"
 ..I $D(%L2VIEW("+-")),X20-X10>25 D
 ...S X1=X10+8,X2=X10+15 D RBUA(X1,X2,Y1,Y2)
 ...X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ...S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "ESC"
 ...S X1=X2+1,X2=X1+((X20-X10-24)\2) D RBUA(X1,X2,Y1,Y2)
 ...X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ...S %XX=X1+((X2-X1-3)\2)+1,%YY=Y1 X %POSIC W "-"
 ...S X1=X2+1,X2=X20-8 D RBUA(X1,X2,Y1,Y2)
 ...X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ...S %XX=X1+((X2-X1-2)\2),%YY=Y1 X %POSIC W "+"
 .
 .W %CV("YF"),%LIGHT1 D RBUA(X1,X2,Y1,Y2)
 ;
 S %XX=%SMX X %POSIC
 I $D(^L2VMSH1($J,%SH)) W %CLI
 I $D(%L2VIEW("IND")) W $J($E($$W(@%M),1,%LL-5),%LL-5),"|",$J(^L2VMSH($J,%SH),3) W %ENG X %XCL
 I '$D(%L2VIEW("IND")) W $J($E($$W(@%M),1,%LL),%LL) X %XCL
 I $D(^L2VMSH1($J,%SH)) W "*"
 E  W " "
 ;
 S %L3VINV=0
 I %I=%I1,'$D(%L1("MENU")),$D(%L1("RB")) D
 .N X10,X20 S X10=X1,X20=X2 N X1,X2,Y1,Y2
 .S Y1=%YY+4,Y2=Y1+2
 .I '$D(%L2VIEW("+-")) D
 ..S X1=X10,X2=X20 Q:X2'>X1  D RBUA(X1,X2,Y1,Y2)
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "E S C"
 .I $D(%L2VIEW("+-")) D
 ..S X1=X10,X2=X10+12 Q:X2'>X1  D RBUA(X1,X2,Y1,Y2)
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-3)\2)-1,%YY=Y1 X %POSIC W "E S C"
 ..S X1=X2+1,X2=X1+(X20-X10-9\2) D RBUA(X1,X2,Y1,Y2)
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "-"
 ..S X1=X2+1,X2=X20 D RBUA(X1,X2,Y1,Y2)
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "+"
 Q
W(%TX) I $D(%L2VIEW("NOHB")) Q %TX
 Q $TR($TR(%TX,%TES1,%TES2),%TEN,%THB)
 ;-
CLEAR ;
 I $G(%CVET) W %CV("MB")
 X %XCL N %I S %SHOLD=%SH
 N %KF S %KF=$S($G(%L1("RB")):3,1:1)
 F %I=1:1:%I1*%KF S %XX=%SM-1-$G(%L1("RB")),%YY=%I+%SMY X %POSIC W $J("",%LL+3+$G(%L1("RB")))
 S %SH=%SHOLD K %SHOLD
 Q
 ;-
CVET W $J("",%LL+4)
 I $D(%CL0) W *27,*91,%CL0,"m"
 E  X %XCL
 Q
 ;-
RBUA(X1,X2,Y1,Y2) ; INPUT X1,X2,Y1,Y2
 N %I,SH
 S:$G(%CVET) %L1RBCL="" D ^%L1RBUA  K %L1RBCL
 Q
SAVE ;
 I $D(%L2VIEW("PROGF9"))#2 D PROG("PROGF9") G:%L2VIEW("PROGF9")="Q" ENDPR G BD
 G ENDPR
 Q
VNIZE ;
 I $D(%L2VIEW("PROGT"))#2 D PROG("PROGT") G:%L2VIEW("PROGT")="Q" ENDPR G BD
 G BD
PRSC ;
 D ^%L1PRSC
 G ENDPR
PROG(DO) ;
 S %L2VIEW("SH")=%SH,%L2VIEW("I")=%I
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%SH,%L2VIEW,DO,%M) D ^%L1C
 S MAC1="%L2VIEW",MAC2="%L2VIEWO" D ^%S1GC1
 S N="" F  S N=$O(%L2VIEW(DO,N)) Q:N=""  I N?."%"1U.E S @N=%L2VIEW(DO,N)
 D
 .N %L2VIEWO X %XCL X %L2VIEW(DO)
 X:$D(%L2VIEW("C")) %chista K %L2VIEW S MAC1="%L2VIEWO",MAC2="%L2VIEW" D ^%S1GC1
 Q
PRINT ;
 N %L2VWDEV,%L2VWPRN,%L2VWSHL,%NN1 S %NN1=0,%L2VWSHL=0
 S %L2VWDEV=3 S %DEV="%L2VWDEV" D OPEN^%L1LPT Q:%EROP
 S %L2VWPRN("SM")=80-%LL\2 D ^%L1TS
 I $D(%L2VIEW("PRINT","PROG")) X %L2VIEW("PRINT","PROG") G CLPRINT
 D KOT
 U %L2VWDEV S %NN=""
 F  S %NN=$O(@(MAC_"%NN)")) Q:%NN=""  D
 .W !?%L2VWPRN("SM"),$TR($G(@(MAC_"%NN)")),TS0,TSS) S %NN1=%NN1+1 I %NN1>52 D KOT
 U %L2VWDEV D:$D(%L2VIEW("T1")) KAV
CLPRINT S %DEV="%L2VWDEV" D CLOSE^%L1LPT
 U 0 S %GET=" <ENTER> . dnlyed dqtcd " D N^%L1GET
 Q
KOT ;
 S %NN1=0 S %L2VWSHL=%L2VWSHL+1 W:%L2VWSHL>1 #
 U %L2VWDEV S %TIM=$ZD($H,"24:60") W !,%L2VWSHL,$TR(" sc ",TS0,TSS),?10,%TIM_$TR(" :dry  ",TS0,TSS)_$$^%L1DC($H,1)_$TR(" :g""ec zwtd jix`z",TS0,TSS),! I $D(%L2VIEW("T3")) X %L2VIEW("T3")
 I $D(%L2VIEW("T1")) D KAV W !?$G(%L2VWPRN("SM"))+1,$TR(%L2VIEW("T1"),TS0,TSS) D KAV W !
 Q
 ;*
KAV ;
 W !?$G(%L2VWPRN("SM"))+1,$TR($J("",$L(%L2VIEW("T1")))," ","-")
 Q
DELAY Q  H .05
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
RTIME(%TM) ;
 N %JJ F %JJ=1:1:%TM D ^%L1MSGBR R *%A:1 Q:$T
 Q
RDS ;
 I '$G(%MOUSE),$G(%L2VIEW("TIME")),$P($H,",",2)-%H0>%L2VIEW("TIME") S %L2VTO="TIME" G ENDPR
 H .1
 R *%A:0 E  G MOUSE:%MOUSE,CYC
 G READ
MOUSE ;
 S %CRD=$$REPORT^%L2MOUSE($G(%PORT),%XMIN,%XMAX,%YMIN,%YMAX) I '%CRD G CYC
 S LAB=""
 ;;S %SAY="%CRD="_%CRD_",  Y2="_Y2_",X1="_X1_",  X2="_X2_" ,%SH="_%SH_", %I="_%I_",%I1="_%I1 X %XMSGV
 I $P(%CRD,",",2)=(Y2+1) S $P(%CRD,",",2)=Y2-1
 I $P(%CRD,",",2)=Y2 S $P(%CRD,",",2)=Y2-1
 I $P(%CRD,",",2)'<(Y2+1),($P(%CRD,",",2)'>(Y2+4)) D  G:LAB="" CYC G @LAB
 .N X10,X20 S X10=X1,X20=X2 N X1,X2,%XX,%YY
 .I $D(%L1("MENU")) D  Q
 ..I $P(%CRD,",")'>(X10+7)&($P(%CRD,",")'<X10) S LAB="PGUP" Q
 ..I '$D(%L2VIEW("+-"))!(X20-X10'>25),$P(%CRD,",")<(X20-7)&($P(%CRD,",")'<(X10+8)) S LAB="ESC" Q
 ..I $D(%L2VIEW("+-")),$P(%CRD,",")'>(X10+15)&($P(%CRD,",")'<(X10+8)) S LAB="ESC" Q
 ..I $P(%CRD,",")'>X20&($P(%CRD,",")'<(X20-7)) S LAB="PGDN" Q
 ..I $D(%L2VIEW("+-")),X20-X10>25 D
 ...I $P(%CRD,",")'<(X10+16)&($P(%CRD,",")'>(X10+16+(X20-X10-24\2))) S LAB="MIN" Q
 ...I $P(%CRD,",")'<(X10+16+(X20-X10-24\2)+1),$P(%CRD,",")'>(X20-8) S LAB="PLUS" Q
 .
 .I '$D(%L2VIEW("+-")) S LAB="ESC" Q
 .I $P(%CRD,",")'<X10&($P(%CRD,",")'>(X10+12)) S LAB="ESC" Q
 .I $P(%CRD,",")'<(X10+13)&($P(%CRD,",")'>(X10+13+((X20-X10-9)\2))) S LAB="MIN" Q
 .I $P(%CRD,",")'<(X10+13+((X20-X10-9)\2)),$P(%CRD,",")'>X20 S LAB="PLUS" Q
 .S LAB="ESC"
 ;
 I $P(%CRD,",")<(X1-1)!($P(%CRD,",")>(X2+1)) G RDS
 I $P(%CRD,",",2)<(Y1-1)!($P(%CRD,",",2)>(Y2+1)) G RDS
 S %IN=$P(%CRD,",",2)-%SMY-1+$G(^SMXY(%L3MYDVN))\3+1
 ;;I '$D(@%L2VMAC@(^L2VMSH($J,%IN))) G CYC
 ;
 D
 .D CL
 .S %SH=$G(%SHOLD)+%IN,%I=%IN D INV
 ;
 S %A=13 S %A=32 G CYC1
YD(Y2) ;
 N Y23
 I $G(%L1("RB")) D  Q Y23
 .I Y2<22 S Y23=Y2+3
 .I Y2<23 S Y23=Y2+2
 .I Y2<24 S Y23=Y2
 .S Y23=24
 I Y2<22 S Y23=Y2+2
 I Y2<23 S Y23=Y2+1
 I Y2<24 S Y23=Y2
 Q 23

%L2VWOS
%L2VWOS(%A,%M,%L1OS) ;       [ 13.04.01  2:10 PM ] [ 02/12/99  1:05 AM ] [ 12/05/96  9:12 AM ]
 ;-- %SH - NUMBER OF CURRENT LINE
 ;-- %L1OS: =1 - NO EDIT
 ;          =2 - NO DELETE
 ;          =3 - NO ROUTINE RESTORE
 ;          =4 - NO GLOBAL RESTORE
 ;          =5 - NO COPY
 ;----------------------------------
 N %II Q:'$D(%L1OS)
 ;;-------------------  VIEW
 N $ZT S $ZT=""
 I $C(%A)="V"!($C(%A)="v"),$P($$SP1^%L1FRM(@%M)," ",2)'["<" D  G END
 .S %NMF=$$NM^%L1OS(@%M)
 .X %chista N %HBRY
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%NMF,%HBRY)
 .S %S2V("NOHB")="" D ^%L1C,^%S2V
 ;;
 ;;-------------------  EDIT
 ;;
 I $C(%A)="E"!($C(%A)="e")!($C(%A)="w"),%L1OS'[1 D  G END
 .S %NMF=$$NM^%L1OS(@%M)
 .X %chista N (%NMF) S %TIP="G" D ^%L1HFS
 ;;
 ;;------------------- DELETE
 ;;
 I $C(%A)="D"!($C(%A)="d"),%L1OS'[2 D  G END
 .S %NMF=$$NM^%L1OS(@%M)
 .X %chista W !!,%NMF S %Q("Z")="DELETE",%Q("U")="N",%Q("V")="." D ^%S1ASK Q:'YES!(YES=".")
 .S %ER=$$^%L1ZOS(2,%NMF) I %ER<0 D ^%L1OS1 W !! H 2 Q
 .W "  ...DELETED." H 1 F %II=%SH:1 Q:'$D(^TEMPo($P,%II+1))  S ^TEMPo($P,%II)=^TEMPo($P,%II+1)
 .K ^TEMPo($P,%II) I '$D(^TEMPo($P,%SH)) S %SH=%SH-1
 ;;
 ;;------------------- ROUTINE RESTORE
 ;;
 I $C(%A)="R"!($C(%A)="r"),%L1OS'[3 D  G END
 .D SAVE
 .S %NMF=$$NM^%L1OS(@%M)
 .X %chista W !!,%NMF S %Q("Z")="RESTORE",%Q("U")="N",%Q("V")="." D ^%S1ASK Q:'YES!(YES=".")
 .S %FN=%NMF O %FN:(REWIND:READONLY):2 E  U 0 W !,"*** FILE "_%FN_" IN USE !" Q
 .N (%FN,%DEV,%UPRCOD,%XMSGV,%XMSG,%XMSGN) D ^%L1C S NAME=" ROUTINE ",ZAP=0 W !?10,$C(27,91,55,109)," ",$$^%L1ZU(0)," ",$C(27,91,48,109),"   ",$P($P($ZV,","),"-")," - ROUTINE RESTORE UTILITY " D INT^%L1RR
 ;;
 ;;------------------- GLOBAL RESTORE
 ;;
 I $C(%A)="G"!($C(%A)="g"),%L1OS'[4 D  G END
 .D SAVE
 .S %NMF=$$NM^%L1OS(@%M)
 .X %chista W !!,%NMF S %Q("Z")="RESTORE",%Q("U")="N",%Q("V")="." D ^%S1ASK Q:'YES!(YES=".")
 .S %FN=%NMF O %FN:(REWIND:READONLY):2 E  U 0 W !,"*** FILE "_%FN_" IN USE !" Q
 .N (%FN,%DEV,%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C S NAME=" GLOBAL " K ^L1ADR($J) W !?10,$C(27,91,55,109)," ",$$^%L1ZU(0)," ",$C(27,91,48,109),"   ",$P($P($ZV,","),"-")," - GLOBALS RESTORE UTILITY " D SDEV+1^%L1GR
 ;;
 ;;------------------- COPY
 ;;
 I $C(%A)="C"!($C(%A)="a"),%L1OS'[5 D  G END
 .D SAVE
 .S %NMF=$$NM^%L1OS(@%M)
 .S %FN=%NMF O %FN:(READONLY:REWIND):2 E  U 0 W !,"*** FILE "_%FN_" IN USE !" Q
 .N (%NMF,FN,%DEV,%UPRCOD,%XMSG,%XMSGV,%XMSGN) D ^%L1C U $P X %chista
 .S %S=%NMF,%L1GET="" D Z1^%L1COPY
 ;;
 ;;------------------- LIST
 ;;
 I $C(%A)="L"!($C(%A)="l"),$D(%L1OS) D  G END
 .S %NMF=$$NM^%L1OS(@%M)
 .D SAVE N (%PATH,%M,%UPRCOD,%XMSGV,%XMSG,%XMSGN,%NMF) D ^%L1C
 .S %FN="",%DEV="",%OFN="",%PRM2=""
 .X %chista W !!,%NMF S %FN=%NMF D OPEN^%FLIST
SAVE ;
 Q
END Q

%L2XMIT
%L2XMIT ;RTM;MSM CPU<->CPU TRANSMIT;   [ 08.02.02  2:33 PM ] [ 11.02.01 10:23 AM ] [ 002/13/00  9:04 PM ]
 ; COPYRIGHT MICRONETICS DESIGN CORP. @1985
 ; If you need to send $C(1) or $C(2) through as data,
 ; pick another character and change the line INIT+1.
 ; %HT = wait time for READs (0 or 1)
 ; %DT = # of READs from IO device since last terminal read
 ; %DC = # iterations thru fast loop with no data received
 ; %RS = 1 if recording, 0 if not
 S %INT=0 K %MSM ; $D(%MSM) flag for calling from %TRANS
 S $ZT="ZG "_$ZL_":ERROR^%L1XMIT"
GO S %HT=0,%DT=0,%DC=0,%RS=0,FLSTART=1 G:%INT INIT
 W !?10,$P($P($ZV,","),"-")," - Transmission Utility"
 I $D(^PL("MDPORT")) S %IO=^("MDPORT") G ASK1
ASK R !!,"I/O PORT? > ",%IO G:%IO="" EXIT G:%IO?1"^".E EXIT I %IO?1"?".E D QUE G ASK
ASK1 I $I=%IO!'%IO W !!,"Cannot select your own device.",*7 G ASK
 S $ZT="ZG "_$ZL_":NOPEN^%L1XMIT"
 U $P:(CENABLE) O %IO::0 E  W *7,"..line in use..waiting.." O %IO W "ready"
 S $ZT="ZG "_$ZL_":ERROR^%L1XMIT"
 U %IO I $ZB($ZA,2,1) U 0 W !,"Device ",%IO," is an output only device.",*7 G ASK
INIT U 0 S %ESC=$ZB($ZA,64,1) ; save escape processing status
 S %EXIT=$C(1),%RECORD=$C(2)
 ;;V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 ; Turn off pass-all, esc processing, & tab control. Set terminators
 U %IO:(0::::#001001:#800040:::$C(3,8,13,21,24,27,127))
 U 0:(0::::#000001:#800040:::$C(3,8,13,15,18,21,24,27,127)) U $P:(NOCENABLE) W !
TERM ;
 U 0 I $G(FLSTART)=1 S %X="AT"_$G(^PL("MDXON"))_"S0=1" K FLSTART S %CR=13 I 1 G TERM10
 R %X:%HT
TERM1 S %CR=$ZB ; get READ terminator
TERM10 G:$E(%X)=%EXIT EXIT D:$E(%X)=%RECORD
 .D @$S(%RS:"HALT",1:"RECORD") S %X=$E(%X,2,$L(%X)) Q
 U %IO W:$L(%X) %X W:$T $C(%CR) S:$L(%X)!$T %DC=0,%HT=0 S %DT=0
PORT ;
 U %IO R %Y:%HT G:%INT&(%Y=$C(1)) EXIT S %CR=$ZB U 0 W:$L(%Y) %Y W:$T $C(%CR) S:$L(%Y)!$T %DC=0,%HT=0,%DT=%DT+1
 S:$L(%Y)&%RS %XS=%XS_%Y I $T,%RS S ^XMIT(%XN,%XE)=%XS,%XE=%XE+1 K:%XS["OK" FLSTART S %XS=""
PORT1 I %DT>20 G TERM ; heavy incoming data, force check of CRT
 G TERM:$L(%X),PORT:$L(%Y)
 S %DC=%DC+1 G:%DC<500 TERM S %HT=1 ; READ timeout 1, goto slow mode
TERMWAIT ; TERMWAIT and PORTWAIT handle periods in which no data has been
 ; received from either side for %DC iterations through the
 ; TERM & PORT loop.
 U 0 R %X#1:%HT E  G PORTWAIT
 G:%X=%EXIT EXIT
 I %X=%RECORD D @$S(%RS:"HALT",1:"RECORD") S (%DC,%DT,%HT)=0 G TERM
 S %CR=$ZB
TW1 U %IO W %X W:'$L(%X) $C(%CR) S (%DC,%DT,%HT)=0 G TERM
PORTWAIT ;
 U %IO R %Y#1:%HT E  G TERMWAIT
 G:%INT&(%Y=%EXIT) EXIT ; %TRANS rtn or gbl selection finished
 S %CR=$ZB
 U 0 W %Y W:'$L(%Y) $C(%CR) S (%DC,%DT,%HT)=0
 ; If recording...
 S:$L(%Y)&%RS %XS=%XS_%Y ; add to captured string
 ; or terminate & file captured string
 I '$L(%Y),%RS S ^XMIT(%XN,%XE)=%XS,%XE=%XE+1,%XS=""
 G PORT
EXIT ;
 D:%RS HALT I $D(%ESC),%ESC U 0:(::::64)
 K %ESC,%X,%Y,%RS,%XN,%XE,%XS,%DC,%DT,%HT,%CR,%EXIT,%RECORD
 U:(%IO?.N)&(%IO'="") %IO:(:::::#001001:::$C(13,27))
 U 0:(:::::#000001:::$C(13,27))
 I %INT!$D(%MSM) U $P:(CENABLE) K %INT Q  ; return to %TRANS
 I %IO?.N&(%IO'="") C %IO U 0 K %IO,%INT
 W:'$F($ZS,"<DSCON>") !,"Transmission Complete",!!
 Q
RECORD ;
 S:'$D(^XMIT) ^XMIT(0)=1
 S %XN=^XMIT(0),^XMIT(0)=%XN+1,%RS=1,%XS="",%XE=1,%X=$E(%X,2,999),^XMIT(%XN)=$H
 U 0 W !!,"Recording Started in ^XMIT(",%XN,",1)",!
 Q
HALT ;
 S:$L(%XS) ^XMIT(%XN,%XE)=%XS S %RS=0
 U 0 W !!,"Recording halted, last node is ^XMIT(",%XN,",",%XE,")",!!
 Q
NOPEN S %IO="" ; avoid <NOPEN> on <INRPT>
ERROR ;
 I $F($ZS,"<MXSTR>") F %XE=%XE:1 G:%XS="" ERROR1 S ^XMIT(%XN,%XE)=$E(%XS,1,255),%XS=$E(%XS,256,9999)
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 I $F($ZS,"<DSCON>") DO:$I'=$P  D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 .U 0 W !!,"...Disconnected."
 Q
ERROR1 S $ZT="ZG "_$ZL_":ERROR^%L1XMIT" G PORT1 ; resume after <MXSTR>
INT ;FROM TRANSFER UTILS
 S %INT=1 U $P:(NOCENABLE) G GO
 ;
QUE W !! F %IO=1:1 S %X=$T(TEXT+%IO) Q:%X=""  W $P(%X,";",2),!
 Q
TEXT ;
 ;Enter the port number to be used for the transmission.
 ;While the transmission is in progress, all characters except CTRL/A
 ;and CTRL/B will be passed through to the port.
 ;Use CTRL/B to start or stop recording of the information in the XMIT
 ;global, and CTRL/A to exit the program.

%L3CVET
%L3CVET(STAM) ; [ 25.02.05 14:06 ] [
 N %CVET S %CVET=0
 I '$D(%L3MYDVN) S %L3MYDVN=$$^%L3MYDVN
 I '$D(%L3GLD) S %L3GLD=$$^%L1GLD
 S %CVET=+$G(^[%L3GLD]%CVET(%L3MYDVN))
 Q %CVET
CL0(STAM) ;
 N %CL0
 S %CL0=$C(27,91)_"44;37m"
 I $D(^[%L3GLD]%CVET(%L3MYDVN,"CL0")) S %CL0=^("CL0")
 Q %CL0

%L3DJRN
%L3DJRN ;BFH;DEJOURNAL UTILITY[ 02/16/90  4:48 PM ] [ 04/24/92  4:31 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 S $ZT="ZG "_$ZL_":ERR^%L3DJRN"
 K REPEAT
 ;U 0 W !?10,$P($P($ZV,","),"-")," - Dejournal Utility"
 O 63::1 E  W !,"Device 63 is busy, please try again later" Q
 S SV=$V(44)
 S OS=$V(SV,-3,2)#16  ; get operating system type, 0=VM, 3=UNIX5, 6=DG, 8=MS/DOS
START D AREA G:QF EXIT
ALL ;
 S X="ALL" ;W !!,"De-journal All or Selected globals? <A> " R X S:X="" X="ALL"
 S ALL=1 G DEV
DEV ;
 D SELDEV G:QF EXIT
VERIFY ;
 S X="Y" ; W !!,"Do you wish to verify each restored SET or KILL? <N> " R X S:X="" X="NO" G ALL:X="^",EXIT:X="^Q"
 I X=$E("NO",1,$L(X))!($E("no",1,$L(X))=X) S VERIFY=0 G OUTPUT
 S VERIFY=1
OUTPUT ;
 S X="N" ; W !!,"DO YOU WISH TO PRINT THE DATA BEING RESTORED? <N> " R X S:X="" X="NO" G VERIFY:X="^",EXIT:X="^Q"
 I X=$E("NO",1,$L(X))!($E("no",1,$L(X))=X) S %DEV=0 G ^%L3DJRN2
EXIT ;
 I $D(JDEV) C JDEV
 I $D(%DEV) C:%DEV&(%DEV'=$P) %DEV
 C 63
 K %DA,%DEV,%DN,%DS,%TN,%TS,ALL,DAT,DTYP,GL,GN,GNKD,I,JDEV,JNAME,JNSAV,JTYPE,L,P,PARM,QF,QUE,QUIT,REF,REPEAT,SDEV,STRING,T,TIM,TYP,U,UCI,VGN,VAL,VERIFY,X,X1,X2,X3,Y
 Q
ERR ;
 I $F($ZS,"<INRPT>") ZU 0 W !!,"...ABORTED." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
AREA ;
 S QF=0 ;W !!,"SELECT JOURNAL AREA: " R X S:"^"[X QF=1 S:X="^Q" QF=2 Q:QF
 ;I X="^L" D ^JRNLSHOW G AREA
 ;I X="?" S QUE=1 D ^DEJRNL3 G AREA
 S X=$O(^["MGR"]SYS("JOURNAL","")) I X="" ZU 0 W *7,!,"HASN'T JOURNAL SPACE !!!" G EXIT
 I '$D(^["MGR"]SYS("JOURNAL",X)) W !,"  DOES NOT EXIST, ENTER '^L' FOR A LIST OF AVAILABLE JOURNAL SPACES" S QF=1 Q
 S JNAME=X,X=^["MGR"]SYS("JOURNAL",JNAME)
 I $P(X,"^",4)'="FULL",$P(X,"^",2)'="TAPE" W !!,"JOURNAL SPACE ",JNAME," IS ",$P(X,"^",4),",",!,"ONLY A FULL JOURNAL SPACE MAY BE USED FOR DE-JOURNALLING" D ^%L3JRIN,^%L3JRN,^%L3JRST S QF=1 Q
 S JTYPE=$P(X,"^",2),PARM=$P($P(X,"^"),",",2,3),SDEV=$P(X,"^",3)
 I 'OS S:JTYPE="HFS" PARM=$P(X,"^",6)
 I JTYPE="SBP",$P(PARM,",",1) D  I 'X W *7,!,"VOLUME GROUP ",$P(PARM,",",1)," IS NOT MOUNTED" S QF=1 Q
 . N (PARM,X) D GETVG^%VGUTIL
 . S X=$D(VG($P(PARM,",",1))) Q
 Q
SELDEV ; SELECT JOURNAL DEVICE
 S QF=0 F I=1:1:$L(SDEV,",") S JDEV=$P(SDEV,",",I) C JDEV D @JTYPE I  G SELDEV1
 E  D NOPEN S QF=1 Q
 Q
SBP ; SBP DEVICE
 O JDEV:(:-($P(PARM,",",2)):($P(PARM,",",1))::"V"):0
 Q
HFS ; HOST FILE SERVER DEVICE
 I OS O JDEV:(PARM::::"V"):0 S X=$T
 I 'OS O JDEV:(PARM:"RA":::"V"):0 S X=$T
 I X
 Q
TAPE ; TAPE DEVICE
 S X=$ZT,$ZT="ZG "_$ZL_":TAPERR"
 O JDEV:($P(PARM,",",1)_"T"::$P(PARM,",",2)):0
 S $ZT=X Q
TAPERR ;
 S $ZT=X G:'$F($ZS,"<NODEV>") @X
 W !,"DEVICE ",JDEV," IS NOT AVAILABLE" I 0
 Q
SELDEV1 W !!,"DEVICE ",JDEV," WILL BE USED FOR READING THE JOURNAL"
 U JDEV S X=$ZA ZU 0 G SELDEV3:JTYPE="TAPE",SELDEV2:JTYPE="HFS"
 I X<0 W !,"UNABLE TO ACCESS SBP AREA" C JDEV S QF=1
 Q
SELDEV2 ;
 I X W !,"UNABLE TO ACCESS FILE ",PARM C JDEV S QF=1
 Q
SELDEV3 ;
 I '$ZB(X,1,1) D
REW . R !,"REWIND? <Y>: ",X S:X="" X="Y" I X["^" S QF=1 Q
 . I X="?" W !,"THE TAPE IS NOT AT THE BEGINNING OF THE REEL.",!,"ENTER 'Y' TO REWIND THE TAPE BEFORE USING IT." G REW
 . S X=$ZB(X,"_",1) I $E("NO",1,$L(X))=X Q
 . I $E("YES",1,$L(X))=X U JDEV W *5 ZU 0 Q
 . W "  ??" G REW
 Q
NOPEN ZU 0 W !!,"ALL ",JTYPE," DEVICES (",SDEV,") ARE BUSY, PLEASE TRY AGAIN LATER"
 Q

%L3DJRN2
%L3DJRN2 ;BFH;MSM DEJOURNAL UTILITY - RESTORE FROM JOURNAL [ 04/24/92  4:31 PM ]
 S (DAT,TIM)="00000"
GO W !!,"DE-JOURNAL FROM AREA ",JNAME,"    TYPE OF JOURNAL AREA = ",JTYPE,!
 I JTYPE="HFS" W "FILE NAME = ",PARM
 E  I JTYPE="SBP" W "VOLUME GROUP INDEX = ",$P(PARM,",",1),"  STARTING BLOCK NUMBER = ",$P(PARM,",",2)
 E  W "FORMAT = ",$P(PARM,",",1),"  BLKSIZE = ",$P(PARM,",",2)
 S KNJ=$S($ZB($V(0,-4,2),128,1):-32,1:0)
 S JNSAV=^["MGR"]SYS("JOURNAL"),JNSAV(1)=^["MGR"]SYS("JOURNAL",JNAME)
 D READ I X'="H" ZU 0 W !!,*7,"BAD JOURNAL, FIRST ENTRY IS NOT A TIME ENTRY" D ^%L3JRIN,^%L3JRN,^%L3JRST G EXIT
 D CHKTIM G:QF EXIT
 ZU 0 S %DN=DAT,%TN=TIM W !,"FIRST TIME ENTRY IS " D DATTIM
READY S X="Y" ;R !!,"READY TO RESTORE? <Y> ",X S:X="" X="Y" G EXIT:X="^Q" I X="^" G DONE:$D(REPEAT),OUTPUT^%L3DJRN
 I X=$E("NO",1,$L(X))!($E("no",1,$L(X))=X) G EXIT
 I '(X=$E("YES",1,$L(X))!(X=$E("yes",1,$L(X)))) W "  ??" G READY
 I %DEV U %DEV W:$Y!$X # W !!,"DE-JOURNAL FROM AREA ",JNAME,"   " D ^%D,^%T S X=$X W ! F I=1:1:X W "-"
 S U=$C(0),QF=0
LOOP D READ G:QF DONE S TYP=X
 I TYP="H" D CHKTIM G ERR:QF>1,DONE:QF,LOOP
 S DIFF=$S($A(TYP,2):1,1:0)
 I (DIFF&(TYP'?1U15E))!('DIFF&(TYP'?1U11E)) ZU 0 W *7,!!,"Invalid journal entry type: ",TYP G ERR
 S X=$A(TYP,9)*256+$A(TYP,10),X1=X\2048,X=X-(X1*2048),X2=X\64,X3=X-(X2*64)/2,UCI=$C(X1+64,X2+64,X3+64)
 S X=$A(TYP,11)*256+$A(TYP,12),X1=X\2048,X=X-(X1*2048),X2=X\64,X3=X-(X2*64)/2,VGN=$C(X1+64,X2+64,X3+64)
 S TYP=$E(TYP)
 D READ G:QF DONE S REF=X
 I TYP="S" D READ G:QF DONE S DTYP=$A(X) D READ G:QF DONE S VAL=X
 S GN=$P(REF,U) G:ALL REF
CHKGL ; CHECK GLOBAL SELECTION
 I '$D(GL(UCI_VGN)) G LOOP
 I $D(GL(UCI_VGN,GN)) G REF
 I $D(GL(UCI_VGN,"*"))&'$D(GL(UCI_VGN,"-",GN)) G REF
 G LOOP ;DESELECTED
REF ; ASSEMBLE GLOBAL REFERENCE
 G:$P(REF,U,2)="" VALUE:TYP="S",VERIFY
 I $D(@("^["""_UCI_""","""_VGN_"""]"_GN))
 S GNKD=$V(36+$V(24,$J,2),$J,4,8),STRING=$V(GNKD+24,-3,1)#2
 S P=0
 F I=2:1 S X=$P(REF,U,I) Q:X=""  D DECODE
 S GN=GN_")"
 G VERIFY:TYP="K"
 ;
VALUE ; DECODE DATA VALUE
 I DTYP=2 V 0:0:VAL:8:1 S VAL=$V(0,0,8,4)
 I DTYP=0 V 0:0:VAL:4:1 S VAL=$V(0,0,4)
VERIFY G:'VERIFY XECUTE
 ZU 0 W ! D PRINT
VERIFY1 S X="Y" ;R !!,"OK? <Y> ",X S:X="" X="Y"
 I X="?" S QUE=8 D ^DEJRNL3 G VERIFY
 I X="^Q" G ERR
 I X=$E("NO",1,$L(X))!($E("no",1,$L(X))=X) G LOOP
 I '(X=$E("YES",1,$L(X))!(X=$E("yes",1,$L(X)))) W "  ??" G VERIFY1
XECUTE ;
 I TYP="K" K @("^["""_UCI_""","""_VGN_"""]"_GN)
 E  S @("^["""_UCI_""","""_VGN_"""]"_GN)=VAL
 I %DEV U %DEV D PRINT
 G LOOP
 ;
CHKTIM ; VERIFY TIME RECORD
 S QF=0 D READ Q:QF  D READ Q:QF
 I X'?5N1","1.5N ZU 0 W !!,"INVALID TIME ENTRY ",X,", RESTORE TERMINATED" S QF=1 Q
 S T=$P(X,",",2),Y=$P(X,",")
 I '(Y<DAT!(Y=DAT&(T<TIM))) S DAT=Y,TIM=T Q
 ZU 0 W !!,"TIME ENTRY OUT OF ORDER!",*7,*7
 W !!,"LAST JOURNAL TIME STAMP WAS:    "
 S %DN=DAT,%TN=TIM D DATTIM
 W !,"CURRENT JOURNAL TIME STAMP IS:  "
 S %DN=Y,%TN=T D DATTIM
CHKTIM1 S X="Y" ;ZU 0 R !!,"OK TO PROCEED WITH RESTORE? <N> ",X S:X=""!(X="^Q") X="N"
 I X="?" S QUE=9 D ^DEJRNL3 G CHKTIM1
 I X=$E("NO",1,$L(X))!($E("no",1,$L(X))=X) S QF=1 Q
 I '(X=$E("YES",1,$L(X))!(X=$E("yes",1,$L(X)))) W "  ??" G CHKTIM1
 S DAT=%DN,TIM=%TN Q
DECODE ; X contains the global subscript to be decoded
 I STRING D:X["""" DECODE1 S GN=GN_$S(P:",",1:"(")_""""_X_"""",P=1 Q
 S T=$A(X)-128,X=$E(X,2,999),L=$L(X) I L=0 S GN=GN_$S(P:",",1:"(")_"0",P=1 Q
 I T=127 D:X["""" DECODE1 S GN=GN_$S(P:",",1:"(")_""""_X_"""",P=1 Q
 S:T>0 T=T+KNJ
 I T'<0 S GN=GN_$S(P:",",1:"(")_$E(X,1,T)_$S(T<L:"."_$E(X,T+1,L),1:""),P=1 Q
 S GN=GN_$S(P:",",1:"(")_"-",T=-2-T
 F Y=1:1:T S GN=GN_(9-$E(X,Y))
 I L-1>T S GN=GN_"." F Y=T+1:1:L-1 S GN=GN_(9-$E(X,Y))
 S P=1
 Q
DECODE1 ;SPECIAL CASE WHEN GLOBAL REFERENCE CONTAINS '"'s
 S T="",L=1
DECODE2 S Y=$F(X,"""",L) I Y'=0 S T=T_$E(X,L,Y-1)_"""",L=Y G DECODE2
 S T=T_$E(X,L,$L(X))
 S X=T
 Q
READ S QF=0 U JDEV R X I $ZC S QF=1
 Q
PRINT W !,TYP," ^[""",UCI,""",""",VGN,"""]",GN I TYP="S" W "=""",VAL,""""
 Q
DATTIM D ^%DO,^%TO W %DS," ",%TS
 Q
 ;
DONE S REPEAT=1
 S ^["MGR"]SYS("JOURNAL",JNAME)=JNSAV(1),^["MGR"]SYS("JOURNAL")=JNSAV
 I %DEV U %DEV W !!,"END OF JOURNAL",!,"LAST TIME ENTRY IS " S %DN=DAT,%TN=TIM D DATTIM W !
 ZU 0 W !!,"DE-JOURNALLING COMPLETED FOR JOURNAL AREA ",JNAME
 D ^%L3JRIN D ^%L3JRN D ^%L3JRST
DONE1 S X="N" ;ZU 0 R !!,"DO YOU WISH TO CONTINUE DE-JOURNALLING FROM ANOTHER AREA? ",X
 I X=$E("NO",1,$L(X))!($E("no",1,$L(X))=X) G EXIT
 I '(X=$E("YES",1,$L(X))!(X=$E("yes",1,$L(X)))) W "  ??" G DONE1
 D AREA^%L3DJRN G EXIT:QF>1,DONE1:QF
 D SELDEV^%L3DJRN G EXIT:QF,GO
 ;
EXIT ZU 0 W !!,"DE-JOURNALLING FINISHED"
 K KNJ G EXIT^%L3DJRN
ERR U JDEV S X=$ZA,Y=$ZB,T=$ZC
 I %DEV U %DEV D ERR1
 ZU 0 D ERR1 W *7,*7
 G EXIT
ERR1 W !!,"RESTORE TERMINATED BEFORE END OF FILE"
 W !,"$ZA=",X,!,"$ZB=",Y,!,"$ZC=",T
 Q

%L3GI
%L3GI ; [ 17.01.26 21:18 ] [ 
 N (JB,%ARG)
 S %ZD=$ZCMD
 D ^%L1GI
 Q
 
 
 
 
 
 

%L3GR
%L3GR ;CDS;GLOBAL RESTORE [ 21.04.26 13:54 ] [ 06/30/92  1:20 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1982
 S $ZT="ZG "_$ZL_":ERR^%L3GR"
 W !?10,$P($P($ZV,","),"-")," - Global Restore Utility"
SDEV ;
 D
 .I $L($G(%L3GR("FN"))) S %FN=%L3GR("FN") Q
 .S %FN=^%L3GR("FN")
 ;
 D GETHFS^%SDEV I '%DEV U 0 W !!,"ALL HOST FILE SERVER (HFS) DEVICES ARE BUSY" Q
 O %DEV:%FN U %DEV G:$ZA OPENHFS
OPENHFS O %DEV:(%FN:"R")
 U %DEV S %ZA=$ZA U 0 I %ZA<0 W !,?5,"OPEN FAILED ON DEVICE ",%DEV," FOR FILE ",%FN,*7 C %DEV U 0 Q
 S %TAP=%DEV>46&(%DEV<51) D:%TAP %SET^%MTCHK
 ;I %TAP U %DEV I @(%MTON_"=0") U 0 W !,"Tape is not ready" C %DEV G SDEV
 U %DEV R %TIME,%CMT I %TIME="" G BADSAVE
 U 0 S %S=0,%SEQ=1,%LG="",%POS=0
 W !!,"GLOBAL(S) SAVED AT ",%TIME,".",!,"HEADER COMMENT IS : ",%CMT,!
 S %SEL=0,%ANS="Y" G START
START U 0 W !!,"RESTORING..."
NXTGBL K %GSEL S %POS=1
NG1 U %DEV R %GN,%GV I %GN="*E" D NEXTFILE G NG1:'QUIT,DONE2
 G DONE:$E(%GN,1,2)="**",BADSAVE:%GN="",NXTGBL:%GN="*"
 I $E(%GN)="*" S %GSEL=$E(%GN,2,999) G NG1
 S %GNN=$P(%GN,"("),%GNL=$L(%GNN)+1 S:'$D(%GSEL) %GSEL=%GNN
 S %POS=2
ASK U 0 W !,"GLOBAL: ",%GSEL W:$X>17 "  " W ?18
 G SET
READ U %DEV R %GN,%GV G:%GN="" BADSAVE I %GN="*E" D NEXTFILE G READ:'QUIT,DONE2
 I %GN="*" U 0 W:%SEL&(%ANS="N") " ... Not Restored" W:'(%SEL&(%ANS="N")) " ... Restored" G NXTGBL
SET S %LG=%GN G READ:%ANS="N",NXTGBL:%GN="*",DONE:$E(%GN,1,2)="**"
 S @(%GNN_$E(%GN,%GNL,255))=%GV G READ
DONE I %TAP U %DEV I @(%MTTMK_"=0") W *12
DONE2 U 0 W !,"RESTORE COMPLETE"
EXIT U 0
 I $D(%TAP) D:%TAP %KILL^%MTCHK
 C:$D(%DEV) %DEV K %GN,%GNL,%GNN,%GV,%DEV,%SBP,%SEL,%ANS,%TIME,%CMT,%GSEL,%RC,%S,%I,%FN,%SEQ,%SIZE,%X,%ZA,QUIT,%TAP,%POS,%LG
 Q
BADSAVE U 0 W !,*7,"INVALID BACKUP FORMAT...UNABLE TO RESTORE." G EXIT
ERR ;
 I $F($ZS,"<MTERR>") U 0 G ERRTAP
 I $F($ZS,"<INRPT>") U 0 W !!,"...ABORTED." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
NEXTFILE ;
 U 0 W !,"SEQUENCE #",%SEQ," RESTORED",!
 U %DEV R %X U 0 I $E(%X,1,2)="**" S QUIT=1 Q
 W !,"PLEASE PUT SEQUENCE #",%SEQ+1," INTO THE DRIVE AND"
 S %SEQ=%SEQ+1
NEXTFIL1 R !,"PRESS <RETURN> WHEN READY",%X
 I %X?1"?".E W !!,"PRESS <RETURN> TO CONTINUE RESTORING FROM SEQUENCE #",%SEQ,!,"OR ABORT THE RESTORE BY ENTERING 'CONTROL C'" G NEXTFIL1
 C %DEV O %DEV:%FN U %DEV I '$ZA R %X I '$ZC
 U 0 E  W !!,"CANNOT ACCESS ",%FN,", PLEASE CORRECT" G NEXTFIL1
 I %X?2NP1":"2N1" ".E S %X=1
 I %X'=%SEQ W !!,"OUT OF SEQUENCE, THIS FILE IS #",%X,", PLEASE CORRECT" G NEXTFIL1
 S QUIT=0 Q
 

%L3GS
%L3GS(FL,GLOB,PR) ; [ 03.08.05 10:41 ] [ 10.04.05  1:41 PM ] [ 14.03.04  1:08 PM ]
 ;     PR="A" OR "W"
 ;
 ; --- REST : D REST^%L2GS
 ;
 ;------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,FL,GLOB,PR) D ^%L1C
 S $ZT="G ER"
 K ^UTILITY($J)
 O (FL:WRITE)
 I $E(GLOB,1,3)'="%GS" D SV(GLOB) G END
BG1 ;
 S %GTEMP="^UTILITY($J)"
 K @%GTEMP S %L1GS("NOMSG")=""
 S N="",%GSEL=0 F  S N=$O(^SHP(GLOB,N)) Q:N=""  D
 .S %GN=$G(^(N)) Q:%GN=""  D S21^%L1GS
 S N="" F  S N=$O(^UTILITY($J,N)) Q:N=""  U USTR D SV(N)
END C USTR Q
 ;
SV(N) ;
 I $D(@("^"_N))#2 W "^"_N,!,$G(@("^"_N)),!
 S N1="^"_N_"("""")"
 F  S N1=$ZO(@N1) Q:N1=""  W N1,!,$G(@N1),!
 Q
ER U 0 W !!,"$ZE=",$ZE
 Q
 ;

%L3GSEL
%L3GSEL ; [ 06/28/94  6:18 PM ]
 K ^UTILITY($J)
 S %P=$$%SRCHPAT^%SRCHPAT(%RS)
 S %RN=0,X=FIRST D:FIRST'=""
 .Q:$D(@("^"_X))=0  Q:X]LAST  X %P S:$T %RN=%RN+1,^UTILITY($J,FIRST)=""
 F  S X=$O(@("^"_X)) Q:X=""!(X]LAST)  X %P S:$T %RN=%RN+1,^UTILITY($J,X)=""

%L3GTR
%L3GTR ; SEND GLOBALS    [ 10.08.06 09:48 ] [ 27.02.06 10:55 ] [ 27.01.06 14:25 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,USERPHONE,USERPORT,USERGLOB,USERMOD,ER,%L1RCV,%L3GTR,%L2NALAN) S $ZS="" D ^%L1C
 K %L1RCV S %L3GTR="" D ^%L2GTR
 Q
SCALE0(LN) ;
 U $P:(NOECHO:NOWRAP)
 S %L1RBCL=%CV("CF")
 D INCRD
 W %LIGHT1 D TV^%L1RBUA(%VG,%LG,%NG+2,%RG+1) X %XCL
 S %YY=%VG+1,%XX=%LG X %POSIC
 I %TYPCRT="PC" W %LIGHT1
 I %TYPCRT["VT" W *27,"(0"
 W $TR($J("",LN)," ",$S(%TYPCRT["VT":$C(225),1:$C(176))) X %XCL
 I %TYPCRT["VT" W *27,"(B"
 Q
SCALE(N,MAX,LN) ;
 U $P:(NOECHO:NOWRAP)
 D INCRD
 S %YY=%VG+1,%XX=%LG X %POSIC
 I %TYPCRT["VT" W *27,"(0"
 I MAX W %LIGHT1,%CV("YF"),$TR($J("",N/MAX*LN)," ",$S(%TYPCRT["VT":$C(225),1:$C(177))) X %XCL
 I %TYPCRT["VT" W *27,"(B"
 Q
INCRD ;
 S:'$D(%VG) %VG=20 S:'$D(%NG) %NG=22 S:'$D(%LG) %LG=5 S:'$D(%RG) %RG=75
 Q

%L3GTR0
%L3GTR ; SEND GLOBALS    [ 10.08.06 09:48 ] [ 27.02.06 10:55 ] [ 27.01.06 14:25 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,USERPHONE,USERPORT,USERGLOB,USERMOD,ER,%L1RCV,%L3GTR,%L2NALAN) S $ZS="" D ^%L1C
 K %L1RCV S %L3GTR="" D ^%L2GTR
 Q
SCALE0(LN) ;
 U $P:(NOECHO:NOWRAP)
 S %L1RBCL=%CV("CF")
 D INCRD
 W %LIGHT1 D TV^%L1RBUA(%VG,%LG,%NG+2,%RG+1) X %XCL
 S %YY=%VG+1,%XX=%LG X %POSIC
 I %TYPCRT="PC" W %LIGHT1
 I %TYPCRT["VT" W *27,"(0"
 W $TR($J("",LN)," ",$S(%TYPCRT["VT":$C(225),1:$C(176))) X %XCL
 I %TYPCRT["VT" W *27,"(B"
 Q
SCALE(N,MAX,LN) ;
 U $P:(NOECHO:NOWRAP)
 D INCRD
 S %YY=%VG+1,%XX=%LG X %POSIC
 I %TYPCRT["VT" W *27,"(0"
 I MAX W %LIGHT1,%CV("YF"),$TR($J("",N/MAX*LN)," ",$S(%TYPCRT["VT":$C(225),1:$C(177))) X %XCL
 I %TYPCRT["VT" W *27,"(B"
 Q
INCRD ;
 S:'$D(%VG) %VG=20 S:'$D(%NG) %NG=22 S:'$D(%LG) %LG=5 S:'$D(%RG) %RG=75
 Q

%L3JRIN
%L3JRIN ;DJM;INITIALIZE JOURNAL SPACE; [ 04/24/92  4:13 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 ;W !?10,$P($P($ZV,","),"-")," - Journal Space Initialization Utility"
 W !?21 D ^%T W "  " D ^%D
PROMPT ;
 S JNAME=$O(^["MGR"]SYS("JOURNAL","")) I JNAME="" W !,*7,"HASN'T JOURNAL SPACE" G EXIT
 ;R !!,"Journal space name to be reset: ",JNAME G:JNAME=""!(JNAME="^") EXIT
 ;I JNAME="?" W !,"Select journal space by name, or '^L' for available list" G PROMPT
 ;I JNAME="^L"!(JNAME="^l") S INT=1 D SHOW^JRNLSHOW G PROMPT
 I $D(^["MGR"]SYS("JOURNAL",JNAME))#2=0 W !,*7,"NO SUCH NAME DEFINED.. " G EXIT
 I $P(^(JNAME),"^",4)="ACTIVE" W !,*7,"CANNOT RESET AN ACTIVE JOURNAL SPACE" G EXIT
 S J=^(JNAME) G HFS:$P(J,"^",2)="HFS",SBP:$P(J,"^",2)="SBP",TAPE:$P(J,"^",2)="TAPE"
 W !,*7,"UNKNOWN JOURNAL SPACE TYPE: '",$P(J,"^",2),"'... PLEASE SELECET ANOTHER" G EXIT
HFS ; host file server file
 D VERIFY G:QUIT PROMPT
 S $P(J,"^",4)="EMPTY",$P(J,"^",5)=0,$P(J,",")="*",HFS=$P($P(J,"^",1),",",2)
 I OS F DEV=51:1:54 O DEV:HFS:5 I $T U DEV S A=$ZA ZU 0 C:A<0 DEV Q:A<0  O DEV:(HFS:"W") C DEV Q
 S ^["MGR"]SYS("JOURNAL",JNAME)=J
 W !,"HFS JOURNAL SPACE '",JNAME,"' NOW RESET" G EXIT
TAPE ; tape file
 D VERIFY G:QUIT PROMPT
 S $P(J,"^",4)="EMPTY",$P(J,"^",5)=0
 S ^["MGR"]SYS("JOURNAL",JNAME)=J
 W !,"TAPE JOURNAL SPACE '",JNAME,"' NOW RESET" G EXIT
SBP ; sequential block processor file
 D VERIFY G:QUIT PROMPT
 O 63::5 E  W !!,*7,"*** VIEW BUFFER IN USE.. RETRY LATER ***",! G EXIT
 I $P(J,",",2) D  I 'BN W *7,!,"VOLUME GROUP ",$P(J,",",2)," IS NOT MOUNTED" G EXIT
 . N (J,BN) D GETVG^%VGUTIL
 . S BN=$D(VG($P(J,",",2))) Q
 S BN=$P(J,",",3),VGI="G"_$P(J,",",2)
LOOP ;
 G NEW
 W !!,"RESETTING"
 S $P(X,$C(0),1012)=$C(0) ;create 1012 bytes of zeros
 S I=0 F BN=BN:0 V BN:VGI Q:$V(1020,0,1)'=9  V 0:0:X:1012:1,1022:0:0:2,-BN:VGI S BN=$V(1012,0,4) Q:BN=0  S I=I+1 I I=10 S I=0 W "."
BADBLK I BN W !,*7,"*** INVALID JOURNAL BLOCK ENCOUNTERED.. JOURNAL SPACE UNUSABLE" S $P(J,"^",4)="ERROR",^["MGR"]SYS("JOURNAL",JNAME)=J G EXIT
OK S $P(J,"^",4)="EMPTY",$P(J,"^",5)=0,^["MGR"]SYS("JOURNAL",JNAME)=J
 W !,"SBP JOURNAL SPACE '",JNAME,"' NOW RESET" G EXIT
NEW ; quick reset
 S $P(X,$C(0),1010)=$C(0) ;create 1010 bytes of zeros
 V BN:VGI G:$V(1020,0,1)'=9 BADBLK
 V 0:0:X:1010:1,1010:0:$V(1010,0,2)+1:2,1022:0:0:2 V -BN:VGI
 G OK
EXIT ;
 K BN,DEV,HFS,I,J,JNAME,N,QUIT,X,VGI
 Q
VERIFY ;
 S QUIT=0
 S N="Y" ;W !,"ARE YOU SURE <N>: " R N I N="" S N="NO" W N
 I N="^" S QUIT=1 Q
 I N="?" W !,"RESPOND YES OR NO.  IF YOU DELETE THE JOURNAL AREA, ALL INFORMATION IN THE",!,"   JOURNAL AREA WILL BE LOST" G VERIFY
 I N=$E("NO",1,$L(N)) W ".. not reset" S QUIT=1 Q
 I N=$E("no",1,$L(N)) W ".. not reset" S QUIT=1 Q
 Q:N=$E("YES",1,$L(N))!(N=$E("yes",1,$L(N)))
 W *7," ..PLEASE RESPOND YES OR NO" G VERIFY

%L3JRN
%L3JRN ;MJ;GLOBAL CHARACTERISTICS--DRIVER [ 04/21/92  2:43 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1990
 S $ZT="ZG "_$ZL_":ERROR^%L3JRN" N %OPT
 O 63::0 I '$T W !!,"VIEW BUFFER BUSY.. PLEASE RETRY LATER" G EXIT
 D GETVG^%VGUTIL S %MGR=($ZU($P($$^%L1ZU(0),","),$P($$^%L1ZU(0),",",2))="1,0")
 ;W !?10,$P($P($ZV,","),"-")," - Global Characteristics Utility"
%GLOBAL S %UCI="",%VGN=$P($$^%L1ZU(0),",",2)
 I $D(^JRNL)>9 S N="" F  S N=$O(^JRNL(N)) Q:N=""  S %GLB=N D JRN
 G EXIT
JRN S %QF=0,%EF=0
 S:%GLB?1"^".E %GLB=$E(%GLB,2,99)
 I %GLB["[" S %UCI=$P(%GLB,"]"),%GLB=$P(%GLB,"]",2)
%CHECK I %UCI["""" F %I=1:1:$L(%UCI) I $E(%UCI,%I)="""" S $E(%UCI,%I)="",%I=%I-1
 I %UCI'="",%UCI'?1"["3U1","3U,%UCI'?1"["3U W *7,"   INVALID CROSS UCI NOTATION " Q
 I %UCI'="" S:$L(%UCI)<5 %UCI=%UCI_","_%VGN ;S %GLB="["""_$P(%UCI,"[",2)_"""]"_$P(%GLB,"]",2)
 I %UCI'="" S %VGN=$P(%UCI,",",2) S %UCI=$E(%UCI,2,4) S %UI=$ZU(%UCI,%VGN) I %UI<1  W *7," NONEXISTENT UCI NAME" Q
 I (%UCI'="")&('%MGR) W !,*7,"CROSS UCI IS NOTATION NOT AVAILABLE FROM NON MANAGER UCI" Q
 S %UI=$S(%UCI'="":+%UI,1:$V(2,$J,2)#32),(%VGI,VGI)=VG(%VGN),%VGSLOT="G"_%VGI D GETVOL^%VGUTIL
 I '(%GLB?1"%".AN!(%GLB?1A.AN)) U 0 W " INVALID GLOBAL NAME -- ",%GLB,*7 Q
 I $L(%GLB)>8 W " GLOBAL NAME MUST BE 8 CHARACTERS OR LESS ",*7 Q
 S %PTRS=$V($V(44)+8,-3,2),%USZ=$V($V(44)+14,-3,2),%VGPTR=$V(40+%PTRS+$V(44)),%VGPTR1=$V(%VGI*4+%VGPTR),%UT=%UI-1*32+$V(%VGPTR1+20)
UCINUM ;
 S %GBN=$V(%UT+4,-3,4),GN=%GLB,%GLB=%GLB_$C(0)
%GDBLK V %GBN:%VGSLOT S OF=$V(1022,0),TYP=1,TFL=$E($V(1021,0,1,3))
 S K="" K KEY S I=$S(TYP=1&TFL&($V(0,0,4)=0):13,1:0)
 F I=I:0:OF-1 S CC=$V(I,0,1),UC=$V(I+1,0,1),K=$E(K,1,CC)_$V(I+2,0,UC,1),KEY(I)=K,I=I+UC+2+$S(TYP=8:$V(I,0,1)+1,TYP=1&TFL:11,1:3)
 S %F=0,%X=-1
%GDENT S %X=$N(KEY(%X)) I %X'<0 G:$S(TFL:%GLB]KEY(%X),1:KEY(%X)]%GLB) %GDENT  S:%GLB=KEY(%X) %F=1
 I 'TFL,'%F S %GBN=$V(%X+2+$V(%X+1,0,1),0,3) G %GDBLK
 I TFL,'%F S %GBN=$ZB($V(1012,0,4),#FFFFFF,1) G:%GBN>0 %GDBLK
 I '%F&%EF W !!,"GLOBAL NOT FOUND IN DIRECTORY!!,  CALL SYSTEM MANAGER" G EXIT
 ;I '%F W "  does not exist.. ",*7
%GDENT1 S %HLP=2
 I '%F S @("^"_$S(%UCI="":"",1:"["""_%UCI_$S(%VGN="":"",1:""","""_%VGN)_"""]")_GN_"(1)")=1 K ^(1) ZF  S %EF=1 W !,"GLOBAL ^"_GN_" CREATED" S %GLB=GN G UCINUM
 S %OF=%X+2+$V(%X+1,0,1)+4
 S %USTS=(($V(%OF,0,1)#4)=3)
 G %OPT
ERROR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...ABORTED." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
EXIT ;
 I $D(^ZZZZZZZZ)!($D(^UTILITY)) ; FLUSHES LOCAL COPY OF CHANGED GLOBAL
 C 63
 K %,%ANS,%BLK,%DIV,%DN,%DR,%DT,%EF,%GBN,%GLB,%HLP,%I,%MF,%NB,%OPT,%PC,%PT,%QF,%QST,%QUE,%RSP,%RSPHLD,%T,%X,CLASS,GN,PRO,PROTECT,KEY,%OF,XEM,%F,%MAX,%UI,%USZ,%UT,CC,I,K,OF,TFL,TYP,UC,XE
 K %B,%DB,%GNUM,%GSN,%MGR,%NAM,%PR,%ST,%UCI,%USTS,COL,NEW,SEQ,%GVN,VG
 Q
%OPT S %QUE=1,%HLP=3 ;D %SEL G EXIT:%QF=2,%GLOBAL:%QF
%JRN S %ST=$E($V(%OF-1,0,1,3)) ;W !!,"Global is currently",$S(%ST:"",1:" not")," set for journaling"
 Q:%ST
%J1 ;
 S %ST=0 V %OF-1:0:$V(%OF-1,0,1)+$S(%ST:-128,1:128):1 V -%GBN:%VGSLOT
 Q
EXIT ;
 I $D(^ZZZZZZZZ)!($D(^UTILITY)) ; FLUSHES LOCAL COPY OF CHANGED GLOBAL
 C 63
 K %,%ANS,%BLK,%DIV,%DN,%DR,%DT,%EF,%GBN,%GLB,%HLP,%I,%MF,%NB,%OPT,%PC,%PT,%QF,%QST,%QUE,%RSP,%RSPHLD,%T,%X,CLASS,GN,PRO,PROTECT,KEY,%OF,XEM,%F,%MAX,%UI,%USZ,%UT,CC,I,K,OF,TFL,TYP,UC,XE
 K %B,%DB,%GNUM,%GSN,%MGR,%NAM,%PR,%ST,%UCI,%USTS,COL,NEW,SEQ,%GVN,VG
 Q

%L3JRST
%L3JRST ;DJM;START (ACTIVATE) JOURNAL; [ 04/24/92  4:33 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 ;W !?10,$P($P($ZV,","),"-")," - Journal Startup Utility"
 W !?14 D ^%T W "  " D ^%D
 L JOURNAL:1 I '$T W !,*7,"JOURNAL STATUS CHANGE ALREADY IN PROGRESS" G EXIT
 S JTAB=$V(13,-5)
 I $V(2,-4,2)\2#2 W !!,"JOURNAL ALREADY ACTIVE" G EXIT
PROMPT ;
 S JNAME=$O(^["MGR"]SYS("JOURNAL","")) I JNAME="" W !,*7,"HASN'T JOURNAL SPACE" G EXIT
 I $D(^["MGR"]SYS("JOURNAL",JNAME))#2=0 W !,*7,"NO SUCH NAME DEFINED.. ENTER '^L' FOR AVAILABLE LIST" G PROMPT
 I $P(^(JNAME),"^",4)'="EMPTY" W !,*7,"JOURNAL SPACE MUST BE MARKED 'EMPTY' IN ORDER TO BE USED" G PROMPT
AUTO S J=^["MGR"]SYS("JOURNAL",JNAME) G HFS:$P(J,"^",2)="HFS",SBP:$P(J,"^",2)="SBP",TAPE:$P(J,"^",2)="TAPE"
 W !,*7,"UNKNOWN JOURNAL SPACE TYPE: '",$P(J,"^",2),"'... PLEASE SELECET ANOTHER" G PROMPT
HFS ; host file server file
 S JDEV=$P(J,"^",3),HFS=$P($P(J,"^"),",",2)
 I OS F I=1:1:$L(JDEV,",") S DEV=+$P(JDEV,",",I) O DEV:(HFS:"W":::"V"):10 I $T U DEV S ZA=$ZA ZU 0 G GOTHFS
 I 'OS F I=1:1:$L(JDEV,",") S DEV=+$P(JDEV,",",I) O DEV:(HFS:"WA":::"V"::::1024):10 I $T U DEV S ZA=$ZA ZU 0 G GOTHFS
 W !,*7,"ALL SPECIFIED DEVICE(S): ",JDEV," ARE IN USE.. CANNOT START JOURNAL" G PROMPT
GOTHFS ;
 I ZA C DEV W !,*7,"UNABLE TO ACCESS FILE '",HFS,"' THROUGH DEVICE #",DEV G PROMPT
 G STARTUP
TAPE ; tape file
 S $ZT="ZG "_$ZL_":TAPERR^JRNSTART"
 S JDEV=$P(J,"^",3),MODE=$P(J,",",2),BLKSIZE=+$P(J,",",3)
 F I=1:1:$L(JDEV,",") S DEV=+$P(JDEV,",",I) O DEV:(MODE::BLKSIZE):10 I $T U DEV S ZA=$ZA ZU 0 G GOTTAPE
 S $ZT="ZG "_$ZL_":"
 W !,*7,"ALL SPECIFIED DEVICE(S): ",JDEV," ARE IN USE.. CANNOT START JOURNAL" G PROMPT
GOTTAPE ;
 S $ZT="ZG "_$ZL_":"
 U DEV D %ERRCHK^%MTCHK I %MTERR C DEV G PROMPT
 ZU 0 G STARTUP
TAPERR Q:'$F($ZS,"<NODEV>")
 W !,"Device ",DEV," is not available" G PROMPT
SBP ; sequential block processor file
 S JDEV=$P(J,"^",3),SBPDB=$P(J,",",2),SBP=+$P(J,",",3)
 F I=1:1:$L(JDEV,",") S DEV=+$P(JDEV,",",I) O DEV:(0:-SBP:SBPDB::"VW"):10 I $T U DEV S ZA=$ZA ZU 0 G GOTSBP
 W !,*7,"All specified device(s): ",JDEV," are in use.. cannot start Journal" G PROMPT
GOTSBP ;
 I ZA<0 C DEV W !,*7,"Unable to SBP journal space through device #",DEV G PROMPT
STARTUP ; start up the journal space
 S DTAB=$V(5,-5) V DEV+DEV+DTAB::255:2
 V JTAB::0:2  ;clear flags
 V JTAB+2::DEV:2   ;set journaling device number
 V JTAB+4::0:4,JTAB+8::0:4,JTAB+12::0:4   ;clear counts
 V 2:-4:$ZB($V(2,-4,2),2,7):2   ;activate journal
 V 4:-4:$ZB($V(4,-4,2),4,2):2   ; turn off suspend
 S $P(J,"^",4)="ACTIVE",$P(J,"^",5)=0
 S ^["MGR"]SYS("JOURNAL")=JNAME,^["MGR"]SYS("JOURNAL",JNAME)=J
 W !!,"Journaling now activated"
EXIT ;
 L  K DEV,DTAB,I,J,JDEV,JNAME,UCH,DCH,L,JTAB,SBP,SBPDB,ZA
 Q
STU ;ENTRY POINT FOR AUTOSTART OF JOURNAL AT STARTUP
 S JTAB=$V(13,-5)
 S UCH=$P(^["MGR"]SYS(CONFIG,"AUTO","JRNL"),"^",2)
 F L=1:1 S DCH=$P(UCH,",",L) Q:DCH=""  I $D(^["MGR"]SYS("JOURNAL",DCH)) I $P(^["MGR"]SYS("JOURNAL",DCH),"^",4)="EMPTY" S JNAME=DCH D AUTO Q

%L3LOG
%LOGON ;MJ;LOGON ROUTINE; [ 03/30/92  4:10 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. 1990
 K %
SYSTEM ;
 O 0::0 E  H
 U 0 U $P:(NOCENABLE) I $ZB($ZA,8,1) H 1 ; modem control timing
 S SV=$V(44),MU=$ZB($V(SV,-3,2),16,1),%PS=$S(MU:20480,1:51200)
 L  ZD  D EXPDATE S %INT=1,%RETRY=3,%PB=$V(SV+8,-3,2)
 S %UT=$V(SV+%PB+4) K BASELINE
 I $V(SV+2,-3,2)#2=0 D ^STU S SV=$V(44),MU=$ZB($V(SV,-3,2),16,1),%PS=$S(MU:20480,1:51200),%UI=1 S:$D(BASELINE) %VGI=0 G PGMR:$D(BASELINE),SYSTEM ;AUTO STARTUP
 V 0:$J:$ZB($V(0,$J,2),250,1):2
LOGON ;
 S LOGON=$V(SV+4,-3,2)\64#2,CONSOLE=$V(SV+4,-3,2)\2048#2,SSD=$V(SV+4,-3,2)\32768#2
 I LOGON!CONSOLE!SSD,$P'=1 W !,"Signon not allowed now." H
 V 2:$J:1:2 ;SWITCH TO MGR's uci
 S CNFG=0 I $D(^["MGR"]SYS("CONFIG"))#2 S CNFG=$P(^["MGR"]SYS("CONFIG"),";",2) I CNFG="" S CNFG=0
 S CNFG=+^["MGR"]SYS("CONFIG",CNFG)
 U $P:(:::::1) I $D(^["MGR"]SYS(CNFG,"DDB",$P))#2 U $P:(:::::#FDFF) U $P:($P(^($P),",",5)::::$ZH($P(^($P),",",6)))
 I $ZB($ZA,258,1) HALT  ; check for nolog and output only bits
 S:$D(^["MGR"]SYS(CNFG,"PSIZE")) %PS=^["MGR"]SYS(CNFG,"PSIZE") I %PS=20480 S:$ZV["MSM-PC"!($ZV["MUMPS L-PC")&'MU %PS=51200
 G:'MU TTT S LATBASE=$V($V(388,-4)+8)
 I LATBASE S DI=$V($P*4+$V(7,-5)) I $ZB($V(DI+20,-3,4),#10000000,1) S DI=$V(DI+72),SRVSTR=$V(DI+101,-3,$V(DI+100,-3,1),1) D  I VCNO&($P(SRVSTR,"`",4)'="") G TIEDLAT Q:'VCNO
 .S VCNO=0 F I=0:1:7 I $ZU(1,I)'="" D  Q:VCNO
 ..I '$D(^[$ZU(1,I)]SYS("LAT_SERV",1)),I=0 Q
 ..S SLNO="" F  S SLNO=$O(^(SLNO)) Q:SLNO=""  I $P(^(SLNO),"`")=SRVSTR S SRVSTR=^(SLNO),VCNO=1 Q
TTT S TTT=0 I $D(^["MGR"]SYS(CNFG,"DDB",$P))#2 S TTT=+$P(^($P),",",4) I $D(^["MGR"]SYS(CNFG,"TTT",TTT))#2 G TIEDTERM
 S %PB=$V(SV+8,-3,2) G:$D(^["MGR"]SYS("PASSWD"))#2=0 PROMPT
 I $D(%ID) G PR0 ;******* LEV
 U $P:(NOECHO:NOWRAP) W !,":" R %ID:180 U $P:(ECHO:WRAP) G ABORT:'$T,ABORT:%ID'=^["MGR"]SYS("PASSWD") K %ID
PROMPT ;
 I $D(%ID) G PR0 ;******* LEV
 D:$D(%) LOGPARMS(%) I $D(%ID) G:$G(TIED) TIEDTERM ; check for signon parms
 S:'$D(%INT) %INT=1
 I %INT W !,$ZV,"  Line #",$P R "  UCI: ",%ID:180 G:'$T ABORT
PR0 S %UCI=$P(%ID,":",1) I $L(%UCI)<1 G:$ZB($ZA,8,1) RETRY Q
 I %UCI[$C(0) W "       ...Invalid" G RETRY
 S %VGNA=$P(%UCI,",",2),%UCI=$P(%UCI,",",1)
 S:%VGNA="" %VGNA=$P($$^%L1ZU(0),",",2)
 I %UCI="" W "       ...Invalid" G RETRY
 I $D(^["MGR"]SYS("LOGON",%UCI)) I $P(%ID,":",2)'=$P(^["MGR"]SYS("LOGON",%UCI),":",4) S %OUI=$V(2,$J,2) G:$ZU(%UCI,%VGNA)'="" PROMPT1 W " ...Invalid" G RETRY
 I $D(^["MGR"]SYS("LOGON",%UCI)) S %ID=$P(^["MGR"]SYS("LOGON",%UCI),":",1,3),%VGNA=$E(%ID,5,7),%UCI=$P(%ID,",")
PROMPT1 I $P(%ID,":",3)'="" S %PS=$P(%ID,":",3)*1024 S:%PS<12288!(%PS>262144) %PS=$S($D(^["MGR"]SYS(CNFG,"PSIZE")):^("PSIZE"),1:20480)
 S %ID=$P(%ID,":",2)
UCINUM S %OUI=$V(2,$J,2),%UI=+$ZU(%UCI,%VGNA),%VGI=+$P($ZU(%UCI,%VGNA),",",2)
 I %UI=0 W "   ...UCI not found" G RETRY
PGMTST ;
 S %VGTB=$V($V(40+%PB+SV)+(%VGI*4))
 S %UCITB=%UI-1*32+$V(%VGTB+20)
 I $V(%UCITB+24,-3,3,1)'=$C(0,0,0) G:%ID=$V(%UCITB+24,-3,3,1) PGMR
 G:'$D(^["MGR"]SYS(CNFG,"PAC")) NOPAC
 I $V(%UCITB+24,-3,3,1)=$C(0,0,0) G:%ID=^["MGR"]SYS(CNFG,"PAC") PGMR
 I %ID="" W *7," ... invalid 'null' application id" G RETRY
NOPAC ;
 I $D(^%) ;CLEAR NAKED
 I $D(^%E) ;CLEAR NAKED
 V 2:$J:%VGI*32+%UI:2,108:$J:%PS:4 ;SWITCH TO NEW UCI
 G:%ID="" PGMR
 I %ID'?1.AN,%ID'?1"%".AN,%ID'?1"^".AN,%ID'?1"^%".AN W *7," ..invalid application id" G RETRY
 S:'$F(%ID,"^") %ID="^"_%ID
 I $D(^ ($P(%ID,"^",2)))=0 W *7," ..invalid application id" G RETRY
 K (%,%ID) G @%ID
PGMR ;
 I $D(^%) ;CLEAR NAKED
 V 0:$J:$V(0,$J,2)\2*2+1:2,2:$J:%VGI*32+%UI:2,108:$J:%PS:4 W:%INT "  Job #",$J K  X "ZR  Q"
 Q
TIEDTERM ;TIED TERMINAL
 I $G(TIED) ; from logon parms
 E  S TIED="",%UCI=$P(^(TTT),",",2),%ID=$P(^(TTT),",",1),%PS=$P(^(TTT),",",3)
 S %UI=$ZU($P(%UCI,":"),$P(%UCI,":",2))
 G TIEDGO
TIEDLAT ;TIED TERMINAL FOR LAT
 S TIED="",SRVSTR=$P(SRVSTR,"`",4),%UCI=$P(SRVSTR,":",1),%ID=$P(SRVSTR,":",2),%PS=$S($P(SRVSTR,":",3)="":%PS,1:$P(SRVSTR,":",3)*1024)
 S %UCI=%UCI_","_$P($ZU(1,I),",",2),%UI=$ZU($P(%UCI,","),$P(%UCI,",",2))
TIEDGO ;
 V 108:$J:%PS:4 S %VGI=$P(%UI,",",2),%UI=+%UI
 I %UI=1,%ID="%LOGON" K TIED G PROMPT
 G NOPAC:%UI>0 W " ..UCI not found" G RETRY
INT ;
 S %INT=0,%UCI=%ID,%RETRY=0 G LOGON
RETRY ;
 I $D(TIED) W !," ..logon aborted" H 2 Q
 V 2:$J:1:2 ;SWITCH TO MGR's uci
 S %RETRY=%RETRY-1 G:%RETRY PROMPT
 W !!,"Logon aborted.." H 2
 I $D(%OUI) V 2:$J:%OUI:2 ;SWITCH back to original UCI
ABORT Q
%MGR ;Entry to put user back into MGR and goto error subrtn (VALIDATE)
 V 2:$J:1:2 I $D(%ZT) G:%ZT'="" @%ZT
 Q
LOGPARMS(X) ; parse MSM logon parms
 ; TIED=1 -> UCI:PAC or UCI:RTN
 ; TIED=0 -> LABEL^RTN
 S X=$P(X," ",2,99)
 FOR  Q:'($E(X)="-"!($E(X)="/"))  DO  ; strip out unwanted parms
 . S %ID=$P(X," ")
 . I $E(%ID)="/" S X=$P(X," ",2,99) Q  ; /autoconfig
 . I %ID="-E"!(%ID="-e") S X=$P(X," ",2,99) Q  ; EMS flag
 . I %ID="-P"!(%ID="-p"),$E(%ID,4)'?1N S X=$P(X," ",2,99) Q  ; pause
 . S X=$P(X," ",3,99) Q  ; all other parms are two part
 S X=$P(X," ") ; ignore extra '-' parms
 I X="" K %ID Q  ; no signon specified
 I X?3U1":"1.ANP!(X?3U1","3U1":"1.ANP) S %ID=X,TIED=0,%INT=0  Q
 S %ID=$P(X,"["),%UCI=$P(X,"[",2)
 I %UCI="" S %UCI=$ZU(1,0) ; default to MGR
 E  S %PS=$P(%UCI,":",2),%UCI=$P(%UCI,":")
 I $G(%PS)="" S %PS=^["MGR"]SYS(CNFG,"PSIZE") ; partsize not entered
 E  S:%PS<1024 %PS=%PS*1024
 S %UCI=$TR(%UCI,"""]","") ; strip out " and ]
 I %UCI?3U S %UCI=%UCI_":"_$P($$^%L1ZU(0),",",2)
 E  S $E(%UCI,4)=":" ; for TIEDTERM subroutine
 S TIED=1,%INT=0 Q
EXPDATE ;
 G:$V(176,-4,4)>94599 EXPIRED
 Q:$H<($V(176,-4,4)-10)
 S N=$P($P($ZV,","),"-")
 I $H+1<$V(176,-4,4) W !!,*7,"WARNING: ***THIS COPY OF ",N," WILL EXPIRE IN ",$V(176,-4,4)-$H," DAY(S)" Q
 I $H+1=$V(176,-4,4) W !!,*7,"WARNING: ***THIS COPY OF ",N," WILL EXPIRE TOMORROW" Q
EXPIRED ;
 S N=$P($P($ZV,","),"-")
 W #,!,*7
 W !,*7,"***************************************************************"
 W !,*7,"*                                                             *"
 W !,*7,"*               ----  W  A  R  N  I  N G ----                 *"
 W !,*7,"*                                                             *"
 W !,*7,"*            !!! THIS COPY OF ",N," HAS EXPIRED !!!             *"
 W !,*7,"*                                                             *"
 W !,*7,"*        CONTINUED USE WILL CAUSE UNPREDICTABLE RESULTS       *"
 W !,*7,"*                                                             *"
 W !,*7,"*..Please contact your ",N," dealer for renewing this license...*"
 W !,*7,"*                                                             *"
 W !,*7,"***************************************************************"
 H

%L3M
DBMAINT3 ;JWC;MOUNT VOLUME GROUPS [ 03/30/92  3:28 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1990
 ZF  D PTRS^%VGUTIL,OS^%VGUTIL,DSK^%VGUTIL1:'OS,GETVG^%VGUTIL K %DEV
 D VGSLOT I QF ZU 0 W !,"No room to mount another volume group" Q
 I OS D GETHFS^%SDEV I '%DEV ZU 0 W *7,!!,"No HFS devices available..." K %DEV Q
RETRY D HNAME Q:QF  D VGNAME I QF ZU 0  W !,"Volume is not initialized",*7 G RETRY
 I $D(VG(VGNAME)) D QAGN G:QF=1 RETRY Q:QF
 I VIN ZU 0 W !,*7,"This is not a volume 0" G RETRY
 ZU 0 W !,"Mounting."
 S %VGI=VGIN D START Q:QF
 D MOUNT^TRANSLA1
 ZU 0 W:VGIN "done." C 0 ;D DBMAINT^%SP
 Q
START D GETVOLS I QF ZU 0 W !,"Error in finding volumes for this volume group",*7 Q
 D CHKVOLS I QF ZU 0 W !,"mounting aborted." Q
 D MTVOLS^MOUNT,MOUNT,SETSAT^UMOUNT,SETUCI^MOUNT
 S $ZS="" I $D(^ ("DDP")) S %ZT=$ZT,$ZT="ZG "_$ZL_":PLDER" D DBCHG^DDP S $ZT=%ZT
PLDER I $ZS'="",'$F($ZS,"<PLDER") G:%ZT'="" @%ZT Q  ; ignore PLDER for DDP
 Q
STU ; STU ENTRY POINT
 D PTRS^%VGUTIL,OS^%VGUTIL,DSK^%VGUTIL1:'OS,GETVG^%VGUTIL
 S:OS %DEV=51 D CHKNAME Q:QF
 X "ZF" O 63
 D VGNAME Q:QF
 I VGIN,$D(VG(VGNAME)) F X=65:1 S $E(VGALT,3)=$C(X) I '$D(VG(VGALT)) S X=VGALT D HASH^%VGUTIL S $P(LABEL(0),"^",5)=Y Q
 G START
MOUNT S VGOF=$V(VGIN*4+VGTAB)
 V VGOF:-3:VGALT:3:1,VGOF+10:-3:VGMAP:2,VGOF+12:-3:VGBLK:4
 V VGOF+30:-3:VOLS:2,VGOF+4:-3:$P(LABEL(0),"^",5):2
 V VGOF+28:-3:0:2 ; ptr to 1st free bit in SAT
 Q
CHKVOLS Q:VOLS<2  F I=1:1:VOLS-1 D CHKVOL
 Q
CHKVOL ;
 S VIN=$P(LABEL(I),"^",7),VMAP=$P(LABEL(I),"^",6),VN=$P(LABEL(I),"^",1),VMAG=$P(LABEL(I),"^",3) ZU 0  S QF=0
 I VIN'=I ZU 0 W !,"** WARNING ** volume ",I," has volume number ",VIN,*7
 I VN'=VG0N(I) ZU 0 W !,"** WARNING ** volume ",I,"'s name is '",VN,"' but known to volume 0 as ",VG0N(I),*7
 I VMAP'=VG0M(I) ZU 0 W !,"** WARNING ** volume ",I," has ",VMAP," map(s) but known to volume 0 as ",VG0M(I)," map(s)",*7
 I VMAG'=MAGIC ZU 0 W !,"** WARNING ** volume ",I,"'s magic is",VMAG," but known to volume 0 as ",MAGIC,*7
 Q
GETVOLS S QF=0 Q:VOLS<2  D VOLNAME:OS,VOLDSK:'OS Q
VOLNAME F I=1:1:VOLS-1 ZU 0 W:'$G(STUAUTO) "." S (HNAME,VOLNA(I))=$V(I*64,0,64,1) D CHKNAME G:QF VOLBAD
 F I=1:1:VOLS-1 S HNAME=VOLNA(I) ZU 0 W:'$G(STUAUTO) "." D LABEL^MOUNT C %DEV S LABEL(I)=LABEL
VOLBAD Q
VOLDSK ; GET OTHER VOLUMES ADDRESS FOR SA
 U 63:(:::"T") ZU 0
 S DSK="" F I=1:1 S DSK=$O(%DSK(DSK)) ZU 0 W:'$G(STUAUTO) "." Q:DSK=""  S HNAME=DSK D LABEL^MOUNT I $P(LABEL,"^",7),$P(LABEL,"^",3)=MAGIC,($P(LABEL,"^",2)=VGNAME) DO
 .NEW P7 S P7=$P(LABEL,"^",7)
 .I $D(LABEL(P7)) S QF=2_"^"_$P(LABEL(P7),"^",8)_"^"_$P(LABEL(P7),"^")_"^"_$P(LABEL,"^",8)_"^"_$P(LABEL,"^") Q
 .S LABEL(P7)=LABEL
 I +QF=2 ZU 0 W *7,!!,"Error: duplicate volumes",!?3,"disk address ",$P(QF,"^",2),", volume name=",$P(QF,"^",3),!?3,"disk address ",$P(QF,"^",4),", volume name=",$P(QF,"^",5) S QF=1 Q
 F I=1:1:VOLS-1 I '$D(LABEL(I)) ZU 0 W !,"Unable to locate volume number ",I," (",VG0N(I),") of volume group ",VGNAME S QF=1
 U 63:(:::"C") ZU 0
 Q
VGNAME S QF=0 ZU 0 W:'$G(STUAUTO) "." K LABEL
 U 63:(:::"T") ZU 0
 D LABEL^MOUNT U 63:(:::"C") ZU 0  I LABEL="" S QF=1 Q
 S LABEL(0)=LABEL,VIN=$P(LABEL,"^",7)
 S (VGALT,VGNAME)=$V(512+8,0,3,1),MAGIC=$V(512+16,0,4)
 I VGNAME'?3A!(MAGIC=0) S QF=1 Q
 S VGBLK=$V(512+36,0,4),VGMAP=$V(512+40,0,2),VGUCI=$V(512+32,0,4),VOLS=$V(512+42,0,2)
 I VOLS>1 F I=1:1:VOLS-1 S VF=I-1*12+512+44,VG0N(I)=$V(VF,0,8,1),VG0M(I)=$V(VF+8,0,2)
 C:$D(%DEV) %DEV Q
HNAME ;
 I $D(^MOUNT) S HNAME=^MOUNT G CHKNAME
 ZU 0 W !!,"Enter ",$S(OS:"host file name",1:"disk address") R " for volume group: ",X S QF=0,HNAME=X I X="^Q"!(X="^q")!("^"[X) S QF=1 Q
 I HNAME?.E1C.E ZU 0 W !,"Invalid characters entered",*7 G HNAME
 I HNAME["?" ZU 0 W !!?3 ZU 0 W:'OS "Enter the hexadecimal address of the disk which"
 I  ZU 0 W:OS "Enter the full name of the host operating system file which"
 I  ZU 0 W !?3,"contains the first volume of the volume group to mount."
 I  ZU 0 W:'OS !?3,"Enter '^L' for a list of accessible disks."
 I  ZU 0 W !?3,"Enter '^' to return to the previous question."
 I  ZU 0 W !?3,"Enter '^Q' to exit to the utility." G HNAME
 D CHKNAME G:QF HNAME Q
CHKNAME ;
 S QF=0 G:'OS CHKNAME1 O %DEV:(HNAME:"R") U %DEV S ZA=$ZA C %DEV
 I ZA<0 ZU 0 W !,"File name ",HNAME," does not exist." S QF=1 Q
 O 63 O %DEV:(HNAME:"CBR") Q
CHKNAME1 I HNAME="^L" S X="" ZU 0 W !,"Accessible disks are:",!
 I  F I=0:1 S X=$O(%DSK(X)) Q:X=""  ZU 0 W ?(I#10*8),X ZU 0 W:$X>70 !
 I  S QF=1 Q
 I '$D(%DSK(HNAME)) ZU 0 W !,"Disk ",HNAME," not available" S QF=1 Q
 Q
QAGN ;
 ZU 0 W !,"You have selected volume group '",VGNAME,"' which is already mounted"
 R !,"To continue mount, enter an alternate volume group name: ",X
QAGNR ;
 I X="^L"!(X="^l") D VGLIST^%VGUTIL G QAGNX
 I X="^" S QF=1 Q
 I X="^Q" S QF=2 Q
 I X?3U S VGALT=X D HASH^%VGUTIL S $P(LABEL(0),"^",5)=Y,QF=0 Q
 ZU 0 W !,"   Each mounted volume group must have a unique 3 letter name."
 ZU 0 W !,"   Since the volume group you want to mount has the same name "
 ZU 0 W !,"   as one which is already mounted, you must give it a "
 ZU 0 W !,"   surrogate name which will be valid as long as it is mounted."
 ZU 0 W !,"   Enter '^L' to see a list of mounted volume groups."
 ZU 0 W !,"   Enter '^' to return to the previous question"
 ZU 0 W !,"   Enter '^Q' to exit the utility."
QAGNX R !!,"Please enter an alternate volume group name: ",X G QAGNR
VGSLOT S QF=1 F VGIN=1:1:7 S VGOF=$V(VGIN*4+VGTAB) Q:'VGOF  I '$V(VGOF+4,-3,2) S QF=0 Q

%L3MBG
%L3MBG ; INPUT FROM DISPLAY                                                            [ 16.10.08 13:49 ] [ 10.10.08 16:31 ] [ 10.07.08 07:38 ]
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 I '$D(%POSIC) D ^%L1C
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 N NPG,PG S NPG=1,PG(1)=0 G BEG
VSV N %XX,%YY S %XX=%X000,%YY=%Y000 X %POSIC X %XCL X:$D(%PRPL) %LIGHT
 W:$G(%NOMOD) %CLI ;;W:$D(%MBGLIGHT) %CLI
 W:$D(%MBGLIGHT) %LIGHT1
 I $P(%MBG("DR"),"\",J) W $J(%S,DL,$P(%MBG("DR"),"\",J)) G EV
 I $P(%MBG("RGS"),"\",J)="H" W $$HBR^%L1FRM($TR($TR(%S,%TES1,%TES2),%TEN,%THB),DL) G EV
 I $P(%MBG("RGS"),"\",J)="HH"!($P(%MBG("RGS"),"\",J)="EE") G EV
 W $J(%S,DL)
EV X %XCL
 Q
BEG ;
 U $P:(NOECHO:NOWRAP)
 N %BE,%GG,%LS,%S,%SOLD,%X000,%Y000,%L1DS,%YY,%L3MBGST,%YYYY,%MSC,%SCHIP
 N DL,OLDDAT,XOLD,YOLD,SHOLD,SCHOLD
 N COLS,SH,SCH,%SH00,%SCH00,%YY00,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPGL,OTB,%PRNEW,RKV,RSCR,RZD,%REFH1
 N STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2,%MBGOU,%MODIF,%ENDSS
 N %HBRY,%HIP S %MBGOU=$G(%MBG("OU")) S %L3MBGST="" K ^mbg1($P)
BEG1 D INIT S %YY=VGR2 K %L3MBGST
 I ($G(%SC("VIEW"))="PGUP")!($G(%SC("VIEW"))="PGDW")!($E($G(%SC("VIEW")))=":")!$D(%SC("HIP")) G ZB
 D PS I $D(%SC("VIEW")) G ZB
 Q:$D(%L3MBG)  G L0
ZB0 I %TO="PGDW" S %SAY=$S(%ENGLISH:"END OF DATA",1:" mipezp seq ") X %XMSGN(1)
    I %TO="PGUP" S %SAY=$S(%ENGLISH:"BEGIN OF DATA",1:" mipezp zligz ")  X %XMSGN(1)
    G @%ZBL
ZB S %ZBL="ZB" I $G(%SC("VIEW"))="PGUP"!($G(%SC("VIEW"))="PGDW") S %TO=%SC("VIEW"),%SC("VIEW")=1 G ZB1
 I $E($G(%SC("VIEW")))=":" D  K %SC("VIEW") G POISK
 .S %L3MBGHIP=$E(%SC("VIEW"),2,20)
 .S %L3MBGHIP(1)="",%L3MBGHIP("=")="",J=1
 .S %SCHIP=""
 I $D(%SC("HIP"))#2 D  K %SC("VIEW") G POISK
 .S %L3MBGHIP=$P(%SC("HIP"),":")
 .S %L3MBGHIP(1)="",%L3MBGHIP("=")="",J=1
 .I $P(%SC("HIP"),":",2) S J=$P(%SC("HIP"),":",2)
 N %L1GET
 I %ENGLISH S %GET=" PAGE DOWN - <PGDN> , PAGE UP - <PGUP> , EXIT - <ESC> "
 E  S %GET=" <ESC> - d`ivi , <PGUP> - mcew , <PGDW>  - `ad sc "
 D N^%L1GET I %TO="END" G END
ZB1 I %TO="PGUP" G:NPG'>1 ZB0 S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I %TO="PGDW" G:'$D(@(%REFH1_"SH-SCH+COLS)")) ZB0 S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 W *7 G ZB
 ;
L0 S:$D(YOLD) %YY=YOLD S:$D(SHOLD) SH=SHOLD S:$D(SCHOLD) SCH=SCHOLD
 I $D(%TO("UP")),'$G(SCH) D  D ENDP K %TO S %TO=""
 .F SH=SH+1:1:SH+COLS-1 D
 ..S %YY=%YY+STEP
 ..S SCH=SCH+1
 .S $Y=%YY,%YYYY=%YY
 .S %SH00=SH,%SCH00=SCH,%YY00=%YY
 I $D(%SC("ENDS")) S NPGOLD=NPG D ENDF S %PS=1 S:$D(%SC("ENDS","NOPS")) %PS=0 S:$G(%SC("ENDS"))'?.P %ENDSS=%SC("ENDS") K %SC("ENDS") G:NPG'=NPGOLD BEG1 D:%PS PS G L0
LOOP ; -------------------------------- NEW LINE
 K YOLD,SHOLD,SCHOLD,%MBG("TO"),%SC,%MODIF X %XCL
 F JJ=1:1 Q:'$D(@(%REFH1_"SH-SCH+JJ)"))  I $G(^(SH-SCH+JJ))'[(RZD_"@@!") Q
 S %FIRSTL=JJ
 F JJ=COLS:-1:1 I $D(@(%REFH1_"SH-SCH+JJ)")),$G(^(SH-SCH+JJ))'[(RZD_"@@!") Q
 S %LASTL=JJ
LOOP1 ;
 K %INV S SH=SH+1,SCH=SCH+1 K %PRX
 I $D(%MBG("GWUL")),SH>%MBG("GWUL") W *7 G ZP ;RSM
 I %YY+STEP>(STEP*COLS+VGR2)!(%YY>23) S:%YY>23 %YY=23 S %PRX="" G ZP
 I $D(%MBG("LINE")),$G(%SH00),$G(%YY00),$G(%SCH00) D
 .N %YY,%YYYY,SH,SCH K %MBGLIGHT S %YYYY=%YY00,SH=%SH00,SCH=%SCH00 D PL
 S %YY=%YY+STEP,$Y=%YY,%YYYY=%YY
 S %SH00=SH,%SCH00=SCH,%YY00=%YY
 I $$NOMOD(SH)=2 G LOOP1
 I $D(%MBG("LINE")) D
 .S %MBGLIGHT="" D PL
 K %PRPL,%X000,%Y000
ML ;
 S %NOMOD=$$NOMOD(SH)
 F JJ=1:1 Q:$P(%MBG("OU"),"\",JJ)?.P
 S %FIRST=JJ K JJ,%PRX
 I %YY>(STEP*COLS+VGR2)!(%YY>23) S:%YY>23 %YY=23 S %PRX="" G ZP
 S J=0 D NMB(0)
 I $D(XOLD) S J=XOLD K XOLD G LGR
 G INC
 ;------------------------------------ NEW COLUMN
LGR K %TO,%OLDTO,%FLL,%S,%L1DS,%SC S %TO="",%OLDTO=""
 D GET
 S %SAY=$P(%MBG("H"),"\",J)
 S %SAY=" "_$P(%SAY,"++")
 X "S A=1"
 I J'=$G(^mbg1($P,"H")) X %XMSGN
 S ^mbg1($P,"H")=J
 I $P(%MBG("H"),"\",J)?.P,$P(%MBG("GLOB"),"\",J)?."^"1A.E S %SAY=" <F7 > - dbvd , <F6> - my zlgzd itl yetig " X %XMSGN
 I $D(^SCR(%SCRN,"G",J,"MUMPS1")) D  S %YY=%YYYY G:$P(%MBG("OU"),"\",J)'?.P INC
 .N SHOLD,JOLD,SCHOLD
 .S SHOLD=SH,JOLD=J,SCHOLD=SCH
 .N SH,SCH,J S J=JOLD,SH=SHOLD,SCH=SCHOLD
 .X ^SCR(%SCRN,"G",J,"MUMPS1")
 .I $$HZGTOUCH^%L2MOUSE,'$D(%L1NMB),$$KB^%L2MOUSE S %L1NMB("LINE")=""
 ;----------------------------------------  PARAMETRIM HACNASA
LGR1 S %XX=$P(%MBG("X"),"\",J)
 I $P(%MBG("OU"),"\",J)?.P,J'=$G(^mbg1($P,"Z")) S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH,I" X %XMSG S %XX=$P(%MBG("X"),"\",J) S ^mbg1($P,"Z")=J
 S %YY=%YYYY,$Y=%YY I %XX["+" S %YY=%YY+1,$Y=$Y+1,%PRPL="" X %LIGHT
 X %POSIC
 S %LS=$P(%MBG("D"),"\",J),%FL=""
 ;;S %S=$$SPA^%L1FRM($G(@$P(%MBG("O"),"\",J))) S %INV=""
 S (%MOLD,%S)=$G(@$P(%MBG("O"),"\",J)) S %INV=""
 I $D(%ENDSS),J=%FIRST S %S=%ENDSS
 S CIST=$P(%MBG("S"),"\",J) K:CIST="" CIST S %PRNEW=0
 ;;I $D(%MBG("=")) S %ZMSL=$G(%ZMSL)_"="
 ;----------------------------------------  HACNASA
 I $P(%MBG("RGS"),"\",J)="E" D
 .I $D(%MBG("=")) S %ZMSL=$G(%ZMSL)_"="
 .S %XX=%XX-%LS X %POSIC S:%XX<0 %XX=0 S $X=%XX
 .I $$HZGTOUCH^%L2MOUSE S %ZMSL("NMB")=1
 .S %FL="" K %BE S %ZMSF="" S:$D(%ENDSS) %BE="E" K:'$D(%BE) %FLINS N %HBRY D ^%ZMSL K %INV,%GET,%ENDSS I %S["=="!(%TO="END")!(%TO="=") S %S=%MOLD Q
 .I $P(%MBG("DR"),"\",J),%S'["%" S %S=$J(%S,$P(%MBG("DR"),"\",J)+1,$P(%MBG("DR"),"\",J))
 ;
 I $P(%MBG("RGS"),"\",J)="H" S $X=%XX-1 D ^%L1ZMS
 ;
 I $P(%MBG("RGS"),"\",J)="HH" D
 .N %X1,%Y1,%X2,%Y2
 .S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+STEP-1,%LS=%LS*STEP D ^%L1WH
 .S %L1WH="" K %INV D ^%L1WH K %L1WH
 .Q
 ;
 I $P(%MBG("RGS"),"\",J)="EE" D
 .N %X1,%Y1,%X2,%Y2
 .S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+STEP-1,%LS=%LS*STEP D ^%L1WE
 .S %L1WE="" K %INV D ^%L1WE K %L1WE
 .Q
 I $P(%MBG("RGS"),"\",J)="D" S %XX=%XX-8 S $X=%XX S %L1DS=$TR(%S,"/.:","") D ^%L1DAT S %S=%L1DAT1 ; LGR --> SET
 ;
 I $P(%MBG("RGS"),"\",J)="T" S %XX=%XX-5 S $X=%XX S %L1TS=$TR(%S,":/.","") D ^%L1TIME S %S=%L1TIME1 ; LGR --> SET
 ;
 K %ENDSS
 S DL=$S($P(%MBG("RGS"),"\",J)="D":8,1:+$P(%MBG("D"),"\",J)) ;***
 S %XX=$P(%MBG("X"),"\",J)-DL
 I $P(%MBG("OU"),"\",J)?.P D
 .I $P(%MBG("X"),"\",J)["+" W %LIGHT1
 .N %XX,%YY S %XX=$P(%MBG("X"),"\",J) S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH" X %XMSG
 ;
 ;----------------------------------------- VIHOD
 I $D(%SCHIP) S %S=%MOLD,%MBG("NOZAPR")=1
 I %TO="HELP" D HELP S %SC("ST")=1,%TO="" G NAZAD
 I $G(%TO)="DEL",'$D(%MBG("DELAS")),$D(@(%REFH1_"SH)")),'$G(%NOMOD) D DEL G:%TO'="PGUP" BEG1 G PGUP
 I %S["==",%MBG("O")?.P S %TO="END",%S=""
 K %TOEQ I $G(%TO)="=",$D(%MBG("=")) S %TO="END",%TOEQ="" S %X000=%XX,%Y000=%YY D VSV I '$G(%MODIF) S J=%FIRST G NZ
 I $P(%MBG("D"),"\",J)[".",+%S,$P(%MBG("RGS"),"\",J)="E" S %S=$TR($J(%S,DL)," ",0)
 S %X000=%XX,%Y000=%YY I $P(%MBG("RGS"),"\",J)'="HH" D VSV
 X %XCL
 ;;S %MOLD=$$SPL^%L1FRM($P($G(@(%REFH1_"SH)")),RZD,J))
 I $P(%MBG("DR"),"\",J),$P(%MBG("OU"),"\",J)="!",%TO="" S $P(@(%REFH1_"SH)"),RZD,J)=%S G MUST
 I $P(%MBG("DR"),"\",J),%NOMOD,+%MOLD'=+%S S %SAY=" ! iepiyl ozip `l " X %XMSGV(1) S %S=%MOLD,%MODIF=0 G LGR
 I '$P(%MBG("DR"),"\",J),%NOMOD,%MOLD'=%S S %SAY=" ! iepiyl ozip `l " X %XMSGV(1) S %S=%MOLD,%MODIF=0 G LGR
MUST I $G(@$P(%MBG("O"),"\",J))'=%S!($P(%MBG("NEW"),"\",J)'?.P) S %PRNEW=1
 S @$P(%MBG("O"),"\",J)=%S S %YY=%YYYY,$Y=%YY
 S %SOLD=%S
 I $P(%MBG("RGS"),"\",J)="D",$TR(%S,"/.")=$TR(%MOLD,"./") G TOUP
 I $P(%MBG("RGS"),"\",J)="T",+$TR(%S,"/.:")=+$TR(%MOLD,"./:") G TOUP
 I %S'=%MOLD,$P(%MBG("DR"),"\",J)="" S %MODIF=$G(%MODIF)+1
 I $P(%MBG("DR"),"\",J)'="",$J(%S,0,$P(%MBG("DR"),"\",J))'=$J(%MOLD,0,$P(%MBG("DR"),"\",J)) S %MODIF=$G(%MODIF)+1
 I SH>$O(@(%REFH1_"999999)"),-1) D
 .N JJ,ZN S %MODIF=0 F JJ=1:1:$L(%MBG("O"),"\") S ZN=$G(@$P(%MBG("O"),"\",J)) I ZN'="" S %MODIF=1
 ;
TOUP I %TO="UP",'$G(%MODIF) G UP
 I %TO="ESC",'$G(%MODIF) G NZ
 S %CMD=0 F JJ=1:1:COLG D  Q:%CMD
 .I $D(^SCR(%SCRN,"G",JJ,"MUMPS1")),^("MUMPS1")'?.P S %CMD=1 Q
 .I $D(^SCR(%SCRN,"G",JJ,"MUMPS2")),^("MUMPS2")'?.P S %CMD=1 Q
 G:'%CMD BDTO
 I $G(%MODIF),%TO="F8"&($P($G(%MBG("FNC")),"\",J)'[%TO)!(%TO="PGUP")!(%TO="PGDW")!(%TO="BEGF")!(%TO="ENDS") S %TO=""
 I $G(%MODIF) I (%TO="UP"!(%TO="END"))&(J=%FIRST)!(%TO="DW")!(%TO="HOME") S %TO=""
BDTO I $G(%TO)="F8",$P(%MBG("FNC"),"\",J)'[%TO G POISK
 I $G(%TO)="PGUP" G PGUP
 ;---------------------- MOVE
 I %TO="TAB" I $D(%MBG("MOVE")),$$NOMOD(SH)!(SH'<$O(@(%REFH1_"99999)"),-1)) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="TAB",$D(%MBG("MOVE")) D  D PS G LOOP
 .N %ST S %ST=$G(@(%REFH1_"SH+1)"))
 .S @(%REFH1_"SH+1)")=$G(@(%REFH1_"SH)"))
 .S @(%REFH1_"SH)")=%ST
 ;
 I %TO="PGLN" I $D(%MBG("MOVE")),$$NOMOD(SH)!(SH'>1) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="PGLN",$D(%MBG("MOVE")),'$$NOMOD(SH),SH>1 D  D PS S %TO="UP" G UP
 .N %ST S %ST=$G(@(%REFH1_"SH-1)"))
 .S @(%REFH1_"SH-1)")=$G(@(%REFH1_"SH)"))
 .S @(%REFH1_"SH)")=%ST S SHOLD=SH-1,SCHOLD=SCH-1,YOLD=%YY-1
 ;
 I %TO="INS" I $G(%MODIF)!'$D(%MBG("MOVE"))!$$NOMOD(SH)!(SH>$O(@(%REFH1_"99999)"),-1)) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="INS" D  D PS G LOOP1
 .N %SHLAST S %SHLAST=$O(@(%REFH1_"99999)"),-1)+1
 .N %I,%ST F %I=%SHLAST:-1:SH+1 S %ST=@(%REFH1_"%I-1)") S @(%REFH1_"%I)")=%ST
 .S @(%REFH1_"SH)")=""
 .S %MODIF=$G(%MODIF)+120
 .S %YY=%YY-STEP,SH=SH-1,SCH=SCH-1
 ;
 ;;I %TO="DBL" D  D PS G L0
 .N %SHEND,%G
 .S %SHEND=$ZP(@(%REFH1_"99999)"))+1 Q:%SHEND>%MBG("GWUL")
 .S MAC1=%REFH1_"SH)",MAC2=%REFH1_%SHEND_")",%S1GC("R")=RZD_"@@" D ^%S1GC1
 .S YOLD=%YY,SHOLD=SH,SCHOLD=SCH
 ;
 I %TO="DBL" D  G NAZAD
 .D
 ..N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%SCRN) D ^%L1C
 ..D MENU^%L3MBGR(%SCRN)
 .N %NOVIDEO S %NOVIDEO="" D REST^%L3MBGG
 .S %TO="",%SC("ST")=1
 I %TO="F3",'$D(%MBG("NODBL")),SH>1 S @$P(%MBG("O"),"\",J)=$P(@(%REFH1_"SH-1)"),RZD,J) G LGR1
 I $G(%TO)="BEGF" S NPG=1 K SHOLD,SCHOLD,YOLD G BEG1
 I $G(%TO)="ENDS" S NPGOLD=NPG D ENDF G:NPG'=NPGOLD BEG1 G L0
 I %TO="",$G(%NOMOD),$P(%MBG("OU"),"\",J)'="!" S %TO="DW"
 I %TO="HOME" D  G L0
 .S SHOLD=SH-SCH
 .S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 ;;I %TO="DW",J=%FIRST,SCH=%LASTL,$D(%MBG("UPDOWN")) D  G L0
 .S SHOLD=SH-SCH
 .S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 S %OLDTO=%TO
 I %TO="DW",J=%FIRST S %TO="" I '$G(%MODIF),%MOLD'?.P!($P(%MBG("NEW"),RZD,J)?.P&($G(^SCR(%SCRN,"G",J,"MUMPS2"))?.P)) D CLOU G LOOP
 K %L1SCBEG ;*** LEV 010495
 S %NOMOD=$$NOMOD(SH) I %NOMOD G IBUD
 I $P(%MBG("GLOB"),"\",J)?."^"1A.E,%TO="" D ^%L3MBGG S %TO="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV
 ;I $P(%MBG("GLOB"),"\",J)?."^"1U.E,%TO="F6"!(%TO="F7"),$P(%MBG("FNC"),"\",J)'[%TO D ^%L3MBGG S %TO="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV ;D SETM D VSV
 I $P(%MBG("GLOB"),"\",J)?."^"1A.E,(%TO="F7")!(%TO="F6"),$P(%MBG("FNC"),"\",J)'[%TO D ^%L3MBGG S (%TO,%OLDTO)="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV ;D SETM D VSV
IBUD ;
 I $D(^SCR(%SCRN,"G",J,"MUMPS2")),^("MUMPS2")'?.P S JOLD=J D  S %S=$G(@$P(%MBG("O"),"\",J)) G:$D(%SC("ER")) NAZAD D:%S'=$G(%SOLD) VSV D SETM D:$G(%SC("TO"))="PL" PL G:$G(%SC("TO"))'="P" NAZAD D PS G NAZAD
 .N %FIRSTOLD
 .S JOLD=J,YOLD=%YY,XOLD=%XX,SHOLD=SH,SCHOLD=SCH D
 ..N JOLD,YOLD,XOLD,SHOLD,SCHOLD
 ..S JOLD=J,YOLD=%YY,XOLD=%XX,SHOLD=SH,SCHOLD=SCH,%FIRSTOLD=%FIRST N %FIRST
 ..K %SC X ^SCR(%SCRN,"G",J,"MUMPS2")
 .S J=JOLD,%YY=YOLD,%XX=XOLD,SH=SHOLD,SCH=SCHOLD S:$G(%FIRSTOLD) %FIRST=%FIRSTOLD K XOLD,YOLD,SHOLD,SCHOLD
 .Q
SET ;
NAZAD ;
 I $D(%L3MBGHIP) G POISK
 I $D(%SC("END")),J=%FIRST,'$G(%MODIF) G RSM
 ;;I $D(%OLDTO),(%OLDTO="END")&(COLG>1)!(%OLDTO="UP")!(%OLDTO="PGDW")!(%OLDTO="ENDS") S %TO=%OLDTO,%OLDTO="" G NZ
 I $D(%OLDTO),'$G(%MODIF),%OLDTO="END"!(%OLDTO="PGDW")!(%OLDTO="ENDS")!(%OLDTO="UP") S %TO=%OLDTO,%OLDTO="" D  G NZ
 .I $G(@$P(%MBG("O"),"\",J))?." ",J=%FIRST,$G(@(%REFH1_"SH)"))?.P,SH=$O(@(%REFH1_"99999)"),-1) K @(%REFH1_"SH)")
 I '$D(%SC("ST")),$G(@$P(%MBG("O"),"\",J))?." ",$P(%MBG("OU"),"\",J)?.P,$P(%MBG("NEW"),"\",J)'?.P,%OLDTO'="END" D ER G LGR
 I $D(%SC("ER")) D ER K %SC G LGR
 D SETM
 I $D(%SC("ST")) K %SC G LGR
NZ K %SC S:$G(%TO)="END"&(J>%FIRST) %TO="UP"
 I $G(%TO)="END",J=%FIRST G ZP
 I $G(%TO)="UP" G:J'>%FIRST UP S J=J-1 G:$P(%MBG("OU"),"\",J)?.P LGR G NZ
 ; -----------------------------------------    END OF INPUT COLUMN
UP ;
 I $G(%TO)="UP",$D(%MBG("UPDOWN"))&(SCH'>%FIRSTL) D ENDP G L0
 I $G(%TO)="UP" S:SCH=1 %TO="PGUP",%TO("UP")="" G:SCH=1 PGUP D  D CLOU G LOOP
UPB .Q:SCH<2  S %YY=%YY-(2*STEP),SH=SH-2,SCH=SCH-2
 .S SH=SH+1 S %NOMOD=$$NOMOD(SH) I %NOMOD=2 S %YY=%YY+STEP,SCH=SCH+1 G UPB
 .S SH=SH-1
 I $G(%TO)="DW" D CLOU G LOOP
PGUP ;
 I $G(%TO)="PGUP" D CLR G:NPG'>1 ML:'$D(%L3MBG),END S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I $G(%TO)="PGDW" D CLR S %ZBL=$S('$D(%L3MBG):"ML",1:"END") G:'$D(@(%REFH1_"SH-SCH+COLS)")) ZB0 S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I $G(%TO)="ENDS" D CLR S NPGOLD=NPG D ENDF G:NPG'=NPGOLD BEG1 G L0
INC S J=J+1 K %L1GET
 I J>COLG D CLOU G LOOP
INC1 S %NOMOD=$$NOMOD(SH) I $P(%MBG("OU"),"\",J)'?.P S RKV=$P($G(@(%REFH1_"SH)")),RZD,J) D PGR G INC
 G LGR
CLOU N JJ S %MBG("OU")=%MBGOU
 F JJ=1:1:COLG I $P(%MBG("NEW"),"\",JJ)'="Y" S $P(%MBG("NEW"),"\",JJ)=""
 I $D(%MBGSAVE),$D(@(%REFH1_"SH)"))#2 S ^mbg($P,SH)=@(%REFH1_"SH)"),^mbg($P)=""
 Q
GET F JJ=1:1:COLG S @$P(%MBG("O"),"\",JJ)=$P($G(@(%REFH1_"SH)")),RZD,JJ)
 Q
SETM ;
 N %GG,JJ S %GG=$G(@(%REFH1_"SH)"))
 I '$D(%SC("ER")),$G(%SC("ST"))'="ER" F JJ=1:1:COLG S $P(@(%REFH1_"SH)"),RZD,JJ)=$G(@$P(%MBG("O"),"\",JJ))
 I $G(%NOMOD),$G(@(%REFH1_"SH)"))'=%GG S @(%REFH1_"SH)")=%GG D PL
 Q
ZP D CLR K YOLD,SHOLD,SCHOLD S %SAY="" X %XMSGN
 S OTB="" D ZAPR G RSM:OTB="."!($G(%TO)="END"),BEG1
 ;
PL N Y1,X1,Y2,X2,%GG,XX0,%XX,%YY ; -- INPUT: SH,SCH,%YYYY
 S %GG=$G(@(%REFH1_"SH)")),I=SCH
 S Y1=VGR0,X1=%MBG("LL"),Y2=$G(%MBG("NGR"),24)
 S XX0=$G(%MBG("LR"),70),X2=XX0+1 S:XX0>79 XX0=79
 S %XX=X1,%YY=%YYYY X %POSIC W $J("",X2-X1-1)
 D PG Q
RSM ;
 I $D(%MBG("RSM")) D @%MBG("RSM")
END K %L3MBG S mbgs=$O(^mbg0($P,9999999),-1)+1 S ^mbg($P)="",MAC1="^mbg($P)",MAC2="^mbg0($P,mbgs)" D ^%S1GC1 K ^mbg($P),^mbg0($P,mbgs-5)
 K ^mbg1($P)
 Q
 ;
PS N SH,SCH,%YY,J,JJ,%OFF
 S SCH=0,SH=PG(NPG),%OFF=0
 I $D(%SC("ENDS")),'$D(%L3MBG),'$D(%SC("VIEW")) Q
 D CLEAR
 F JJ=1:1:COLG D
 .I $P(%MBG("X"),"\",JJ)["+" S %OFF=1 X %LIGHT
 S %YY=VGR2 D P
 X %XCL Q
 ;
P N I,%S,%L1DS,J,%GG,%SAY,%MBGLIGHT
 X %XCL
 F J=1:1:COLG D
 .N %SAY,%XX,%YY
 .S %XX=$P(%MBG("X"),"\",J) I %XX["+" W %LIGHT1
 .S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH" X %XMSG
 N ZT S ZT=$ZT N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":PZT^%L3MBG"
 F I=1:1:COLS Q:'$D(@(%REFH1_"SH-SCH+I)"))  S %YY=%YY+STEP S %GG=$G(@(%REFH1_"SH-SCH+I)")) D PG
PZT S $ZT=ZT
 S %SAY="" I '$D(%MBG("DELAS")),'$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="{}<CTRL>/E{} dxey wegnl "
 I $D(%MBG("MOVE")),'$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="{}INS{} qpkd {}TAB,<CTRL>+L{} fifdl "_%SAY
 I $D(%MBG("MIUN")),'$D(%SC("VIEW")) S %SAY="{}F8{} oein/yetig "_%SAY ;;I %TYPCRT="PC" S %SAY="{}CTRL+G{} sxb "_%SAY
 I %SAY'="",'$D(%L1NMB("LINE")) S %SAY=%SAY_"++"_(Y2-1)_","_(%MBG("LR")-(%MBG("LR")-%MBG("LL")-$L($TR(%SAY,"{}",""))\2))_",HH++"_%BCG_",YF" X %XMSG
 Q
PG N RKV,J,%NOMOD S %NOMOD=0 X %XCL ;---< INPUT - %GG,I >
 I %GG[("!"_$G(RZD,"\")_"@@!"),'%ENGLISH S %XX=X2-$L(%GG)-2 S:%XX<X1 %XX=X1 X %POSIC W %CLI W $P(%GG,"!"_$G(RZD,"\")_"@@!") X %XCL Q
 D NMB(I-SCH)
 S %NOMOD=$$NOMOD1(%GG)
 F J=1:1:COLG S RKV=$P(%GG,RZD,J) D PGR
 Q
NMB(%OFS) N %XX S %XX=XX0-2 ;--- INPUT: XX0,X1,SH
 I $G(^SCR(%SCRN))="E" S %XX=X1
 I %XX-$P(%MBG("X"),"\",1)>0 X %POSIC W %CLI W $J(SH+%OFS+$G(%MBG("OFF")),2) X %XCL
 Q
PGR ;  ------------------ INPUT - RKV,%YY
 N DL,%XX Q:$G(RKV)=""  W:%TYPCRT["VT" *27,"(B" W:%NOMOD %CLI W:$D(%MBGLIGHT) %LIGHT1 ; %CLI
 S DL=$S($P(%MBG("RGS"),"\",J)="D":8,1:+$P(%MBG("D"),"\",J))
 S %XX=$P(%MBG("X"),"\",J)-DL X %POSIC
 W:$P(%MBG("INV"),"\",J)'?.P %CLI
 I $P(%MBG("X"),"\",J)["+" S %YY=%YY+1 X %POSIC S %YY=%YY-1 X %LIGHT
 I $G(RKV)="" W $J("",DL) X %XCL Q
 I $P(%MBG("RGS"),"\",J)="HH" D  X %XCL Q
 .N %X1,%Y1,%X2,%Y2,%S,%L1WH
 .S %X1=%XX,%X2=%XX+DL-1,%Y1=%YY,%Y2=%Y1+STEP-1
 .S %S=RKV S %L1WH="" D ^%L1WH K %L1WH,%S
 .Q
 I $P(%MBG("RGS"),"\",J)="EE" D  X %XCL Q
 .N %X1,%Y1,%X2,%Y2,%S,%L1WE
 .S %X1=%XX,%X2=%XX+DL-1,%Y1=%YY,%Y2=%Y1+STEP-1
 .S %S=RKV S %L1WE="" D ^%L1WE K %L1WE,%S
 .Q
 ;
 D
 .N RKV1
 .I RKV="-" W $J("",DL\2-1)_"-" Q
 .I $P(%MBG("RGS"),"\",J)="H" D  W $J($$^%L1HB(RKV1),DL) Q
 ..S RKV1=""
 ..I $L(RKV)>DL&($P(%MBG("D"),"\",J)["/") S RKV1="..."_$E(RKV,$L(RKV)-DL+4,255) Q
 ..S RKV1=RKV
 .
 .I '$P(%MBG("DR"),"\",J) W $J(RKV,DL) Q
 .W $J(RKV,DL,$P(%MBG("DR"),"\",J))
 X %XCL Q
CLEAR ;-- INPUT: X2,X1,VGR,Y2,NPG
 N %XX,%YY,I  X %XCL
 I $D(%SCNC) F I=VGR:1:Y2-2 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1) D RBUA ;Y1 --> VGR
 I '$D(%SCNC),'$D(%SC("NOCL")) D
 .;;I %TYPCRT["VT5" W $C(27,91),VGR+1,";",X1+1,";",Y2-1,";",X2-1,"$z" Q
 .F I=VGR:1:Y2-2 S %XX=X1,%YY=I X %POSIC W %chists
 .D RBUA
 S %SAY=NPG_" sc++"_(VGR0-1)_","_(X1+8)_",HH++"_%BCG_",YF"
 X %XMSG
 I '$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="<CTRL+F1> dxfr++"_(VGR0-1)_","_(X2-2)_",HH++"_%BCG_",YF" X %XMSG
 Q
NOMOD(SH) N %NOMOD S %NOMOD=$$NOMOD1($G(@(%REFH1_"SH)")))
 Q %NOMOD
NOMOD1(ST) ;
 N ST1 S ST1=$P(ST,RZD,$L(ST,RZD))
 I $E(ST1,1,2)="@@" Q $S($E(ST1,3)="!":2,1:1)
 Q 0
ZAPR ;
 D ZAPR^%L3MBG2
 Q
ER ;
 X %XMSGV("ER") K %L1GET S %SC("ER")=1 S:$D(%MOLD) %S=%MOLD S:$G(%MODIF)>0 %MODIF=%MODIF-1 Q
 I $P(%MBG("NEW"),"\",J)'="Y" S $P(%MBG("NEW"),"\",J)=""
 S $P(@(%REFH1_"SH)"),RZD,J)=$G(%MOLD) I $G(%MODIF)>0 S %MODIF=%MODIF-1
 Q
DEL Q:$G(%NOMOD)  D DEL^%L3MBG2 ;
 Q
INIT D INIT^%L3MBG2
 S %NOMOD=0
 Q
ENDF ;
 N I,JJ S JJ=0
 F I=SH-SCH+1:1 Q:'$D(@(%REFH1_"I)"))  D
 .S JJ=JJ+1 I JJ>COLS S NPG=NPG+1,PG(NPG)=I-1,JJ=1,%PS=1
 S SHOLD=I S:SHOLD>0 SHOLD=SHOLD-1 I $G(%MBG("GWUL")),SHOLD'<%MBG("GWUL") S SHOLD=%MBG("GWUL")-1
 S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 K %SH00,%SCH00,%SCH00
 Q
ENDP ;
 N I,JJ S JJ=0
 F I=SH-SCH+1:1:SH-SCH+COLS Q:'$D(@(%REFH1_"I)"))  S JJ=JJ+1
 S SHOLD=I-'$D(^(I)) S:SHOLD>0 SHOLD=SHOLD-1 S:SHOLD<0 SHOLD=0
 S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 Q
POISK D POISK^%L3MBG2 G @%LAB
RBUA W:%CVET %LIGHT1,%CV("CF") K %L1RBCL D ^%L1RBUA X %XCL
 Q
CLR X %XCL K %SH00,%SCH00,%YY00
 Q
HELP ;
 D SAVE^%L3MBGG D
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 .X "ZL %L3MBGH K ^TMPS111($J) N I F I=2:1 Q:$T(+I)=""""  S ^TMPS111($J,I)=$T(+I)" S %S2V("LEFT")=5 X %chista W %CV("YF") D ^%S2VIEW
 D REST^%L3MBGG
 Q

%L3MBG0
%L3MBG ; INPUT FROM DISPLAY                                                            [ 19.01.07 10:46 ] [ 18.10.06 13:27 ] [ 26.07.06 15:26 ]
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 I '$D(%POSIC) D ^%L1C
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 N NPG,PG S NPG=1,PG(1)=0 G BEG
VSV N %XX,%YY S %XX=%X000,%YY=%Y000 X %POSIC X %XCL X:$D(%PRPL) %LIGHT
 W:$G(%NOMOD) %CLI ;;W:$D(%MBGLIGHT) %CLI
 W:$D(%MBGLIGHT) %LIGHT1
 I $P(%MBG("DR"),"\",J) W $J(%S,DL,$P(%MBG("DR"),"\",J)) G EV
 I $P(%MBG("RGS"),"\",J)="H" W $$HBR^%L1FRM($TR($TR(%S,%TES1,%TES2),%TEN,%THB),DL) G EV
 W $J(%S,DL)
EV X %XCL
 Q
BEG ;
 U $P:(NOECHO:NOWRAP)
 N %BE,%GG,%LS,%S,%SOLD,%X000,%Y000,%L1DS,%YY,%L3MBGST,%YYYY,%MSC,%SCHIP
 N DL,OLDDAT,XOLD,YOLD,SHOLD,SCHOLD
 N COLS,SH,SCH,%SH00,%SCH00,%YY00,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPGL,OTB,%PRNEW,RKV,RSCR,RZD,%REFH1
 N STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2,%MBGOU,%MODIF,%ENDSS
 N %HBRY,%HIP S %MBGOU=$G(%MBG("OU")) S %L3MBGST="" K ^mbg1($P)
BEG1 D INIT S %YY=VGR2 K %L3MBGST
 I ($G(%SC("VIEW"))="PGUP")!($G(%SC("VIEW"))="PGDW")!($E($G(%SC("VIEW")))=":")!$D(%SC("HIP")) G ZB
 D PS I $D(%SC("VIEW")) G ZB
 Q:$D(%L3MBG)  G L0
ZB0 I %TO="PGDW" S %SAY=$S(%ENGLISH:"END OF DATA",1:" mipezp seq ") X %XMSGN(1)
    I %TO="PGUP" S %SAY=$S(%ENGLISH:"BEGIN OF DATA",1:" mipezp zligz ")  X %XMSGN(1)
    G @%ZBL
ZB S %ZBL="ZB" I $G(%SC("VIEW"))="PGUP"!($G(%SC("VIEW"))="PGDW") S %TO=%SC("VIEW"),%SC("VIEW")=1 G ZB1
 I $E($G(%SC("VIEW")))=":" D  K %SC("VIEW") G POISK
 .S %L3MBGHIP=$E(%SC("VIEW"),2,20)
 .S %L3MBGHIP(1)="",%L3MBGHIP("=")="",J=1
 .S %SCHIP=""
 I $D(%SC("HIP"))#2 D  K %SC("VIEW") G POISK
 .S %L3MBGHIP=$P(%SC("HIP"),":")
 .S %L3MBGHIP(1)="",%L3MBGHIP("=")="",J=1
 .I $P(%SC("HIP"),":",2) S J=$P(%SC("HIP"),":",2)
 N %L1GET
 I %ENGLISH S %GET=" PAGE DOWN - <PGDN> , PAGE UP - <PGUP> , EXIT - <ESC> "
 E  S %GET=" <ESC> - d`ivi , <PGUP> - mcew , <PGDW>  - `ad sc "
 D N^%L1GET I %TO="END" G END
ZB1 I %TO="PGUP" G:NPG'>1 ZB0 S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I %TO="PGDW" G:'$D(@(%REFH1_"SH-SCH+COLS)")) ZB0 S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 W *7 G ZB
 ;
L0 S:$D(YOLD) %YY=YOLD S:$D(SHOLD) SH=SHOLD S:$D(SCHOLD) SCH=SCHOLD
 I $D(%SC("ENDS")) S NPGOLD=NPG D ENDF S %PS=1 S:$D(%SC("ENDS","NOPS")) %PS=0 S:$G(%SC("ENDS"))'?.P %ENDSS=%SC("ENDS") K %SC("ENDS") G:NPG'=NPGOLD BEG1 D:%PS PS G L0
LOOP ; -------------------------------- NEW LINE
 K YOLD,SHOLD,SCHOLD,%MBG("TO"),%SC,%MODIF X %XCL
 F JJ=1:1 Q:'$D(@(%REFH1_"SH-SCH+JJ)"))  I $G(^(SH-SCH+JJ))'[(RZD_"@@!") Q
 S %FIRSTL=JJ
 F JJ=COLS:-1:1 I $D(@(%REFH1_"SH-SCH+JJ)")),$G(^(SH-SCH+JJ))'[(RZD_"@@!") Q
 S %LASTL=JJ
LOOP1 ;
 K %INV S SH=SH+1,SCH=SCH+1 K %PRX
 I $D(%MBG("GWUL")),SH>%MBG("GWUL") W *7 G ZP ;RSM
 I %YY+STEP>(STEP*COLS+VGR2)!(%YY>23) S:%YY>23 %YY=23 S %PRX="" G ZP
 I $D(%MBG("LINE")),$G(%SH00),$G(%YY00),$G(%SCH00) D
 .N %YY,%YYYY,SH,SCH K %MBGLIGHT S %YYYY=%YY00,SH=%SH00,SCH=%SCH00 D PL
 S %YY=%YY+STEP,$Y=%YY,%YYYY=%YY
 S %SH00=SH,%SCH00=SCH,%YY00=%YY
 I $$NOMOD(SH)=2 G LOOP1
 I $D(%MBG("LINE")) D
 .S %MBGLIGHT="" D PL
 K %PRPL,%X000,%Y000
ML ;
 S %NOMOD=$$NOMOD(SH)
 F JJ=1:1 Q:$P(%MBG("OU"),"\",JJ)?.P
 S %FIRST=JJ K JJ,%PRX
 I %YY>(STEP*COLS+VGR2)!(%YY>23) S:%YY>23 %YY=23 S %PRX="" G ZP
 S J=0 D NMB(0)
 I $D(XOLD) S J=XOLD K XOLD G LGR
 G INC
 ;------------------------------------ NEW COLUMN
LGR K %TO,%OLDTO,%FLL,%S,%L1DS,%SC S %TO="",%OLDTO=""
 D GET
 S %SAY=$P(%MBG("H"),"\",J)
 S %SAY=" "_$P(%SAY,"++")
 X "S A=1"
 I J'=$G(^mbg1($P,"H")) X %XMSGN
 S ^mbg1($P,"H")=J
 I $P(%MBG("H"),"\",J)?.P,$P(%MBG("GLOB"),"\",J)?."^"1A.E S %SAY=" <F7 > - dbvd , <F6> - my zlgzd itl yetig " X %XMSGN
 I $D(^SCR(%SCRN,"G",J,"MUMPS1")) D  S %YY=%YYYY G:$P(%MBG("OU"),"\",J)'?.P INC
 .N SHOLD,JOLD,SCHOLD
 .S SHOLD=SH,JOLD=J,SCHOLD=SCH
 .N SH,SCH,J S J=JOLD,SH=SHOLD,SCH=SCHOLD
 .X ^SCR(%SCRN,"G",J,"MUMPS1")
 .I $$HZGTOUCH^%L2MOUSE,'$D(%L1NMB),$$KB^%L2MOUSE S %L1NMB("LINE")=""
 ;----------------------------------------  PARAMETRIM HACNASA
LGR1 S %XX=$P(%MBG("X"),"\",J)
 I $P(%MBG("OU"),"\",J)?.P,J'=$G(^mbg1($P,"Z")) S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH,I" X %XMSG S %XX=$P(%MBG("X"),"\",J) S ^mbg1($P,"Z")=J
 S %YY=%YYYY,$Y=%YY I %XX["+" S %YY=%YY+1,$Y=$Y+1,%PRPL="" X %LIGHT
 X %POSIC
 S %LS=$P(%MBG("D"),"\",J),%FL=""
 ;;S %S=$$SPA^%L1FRM($G(@$P(%MBG("O"),"\",J))) S %INV=""
 S (%MOLD,%S)=$G(@$P(%MBG("O"),"\",J)) S %INV=""
 I $D(%ENDSS),J=%FIRST S %S=%ENDSS
 S CIST=$P(%MBG("S"),"\",J) K:CIST="" CIST S %PRNEW=0
 ;;I $D(%MBG("=")) S %ZMSL=$G(%ZMSL)_"="
 ;----------------------------------------  HACNASA
 I $P(%MBG("RGS"),"\",J)="E" D
 .I $D(%MBG("=")) S %ZMSL=$G(%ZMSL)_"="
 .S %XX=%XX-%LS X %POSIC S:%XX<0 %XX=0 S $X=%XX
 .I $$HZGTOUCH^%L2MOUSE S %ZMSL("NMB")=1
 .S %FL="" K %BE S %ZMSF="" S:$D(%ENDSS) %BE="E" K:'$D(%BE) %FLINS N %HBRY D ^%ZMSL K %INV,%GET,%ENDSS I %S["=="!(%TO="END")!(%TO="=") S %S=%MOLD Q
 .I $P(%MBG("DR"),"\",J),%S'["%" S %S=$J(%S,$P(%MBG("DR"),"\",J)+1,$P(%MBG("DR"),"\",J))
 ;
 I $P(%MBG("RGS"),"\",J)="H" S $X=%XX-1 D ^%L1ZMS
 ;
 I $P(%MBG("RGS"),"\",J)="HH" D
 .N %X1,%Y1,%X2,%Y2
 .S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+STEP-1,%LS=%LS*STEP D ^%L1WH
 .S %L1WH="" K %INV D ^%L1WH K %L1WH
 .Q
 ;
 I $P(%MBG("RGS"),"\",J)="D" S %XX=%XX-8 S $X=%XX S %L1DS=$TR(%S,"/.:","") D ^%L1DAT S %S=%L1DAT1 ; LGR --> SET
 ;
 I $P(%MBG("RGS"),"\",J)="T" S %XX=%XX-5 S $X=%XX S %L1TS=$TR(%S,":/.","") D ^%L1TIME S %S=%L1TIME1 ; LGR --> SET
 ;
 K %ENDSS
 S DL=$S($P(%MBG("RGS"),"\",J)="D":8,1:+$P(%MBG("D"),"\",J)) ;***
 S %XX=$P(%MBG("X"),"\",J)-DL
 I $P(%MBG("OU"),"\",J)?.P D
 .I $P(%MBG("X"),"\",J)["+" W %LIGHT1
 .N %XX,%YY S %XX=$P(%MBG("X"),"\",J) S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH" X %XMSG
 ;
 ;----------------------------------------- VIHOD
 I $D(%SCHIP) S %S=%MOLD,%MBG("NOZAPR")=1
 I %TO="HELP" D HELP S %SC("ST")=1,%TO="" G NAZAD
 I $G(%TO)="DEL",'$D(%MBG("DELAS")),$D(@(%REFH1_"SH)")),'$G(%NOMOD) D DEL G:%TO'="PGUP" BEG1 G PGUP
 I %S["==",%MBG("O")?.P S %TO="END",%S=""
 K %TOEQ I $G(%TO)="=",$D(%MBG("=")) S %TO="END",%TOEQ="" S %X000=%XX,%Y000=%YY D VSV I '$G(%MODIF) S J=%FIRST G NZ
 I $P(%MBG("D"),"\",J)[".",+%S,$P(%MBG("RGS"),"\",J)="E" S %S=$TR($J(%S,DL)," ",0)
 S %X000=%XX,%Y000=%YY I $P(%MBG("RGS"),"\",J)'="HH" D VSV
 X %XCL
 ;;S %MOLD=$$SPL^%L1FRM($P($G(@(%REFH1_"SH)")),RZD,J))
 I $P(%MBG("DR"),"\",J),$P(%MBG("OU"),"\",J)="!",%TO="" S $P(@(%REFH1_"SH)"),RZD,J)=%S G MUST
 I $P(%MBG("DR"),"\",J),%NOMOD,+%MOLD'=+%S S %SAY=" ! iepiyl ozip `l " X %XMSGV(1) S %S=%MOLD,%MODIF=0 G LGR
 I '$P(%MBG("DR"),"\",J),%NOMOD,%MOLD'=%S S %SAY=" ! iepiyl ozip `l " X %XMSGV(1) S %S=%MOLD,%MODIF=0 G LGR
MUST I $G(@$P(%MBG("O"),"\",J))'=%S!($P(%MBG("NEW"),"\",J)'?.P) S %PRNEW=1
 S @$P(%MBG("O"),"\",J)=%S S %YY=%YYYY,$Y=%YY
 S %SOLD=%S
 I $P(%MBG("RGS"),"\",J)="D",$TR(%S,"/.")=$TR(%MOLD,"./") G TOUP
 I $P(%MBG("RGS"),"\",J)="T",+$TR(%S,"/.:")=+$TR(%MOLD,"./:") G TOUP
 I %S'=%MOLD,$P(%MBG("DR"),"\",J)="" S %MODIF=$G(%MODIF)+1
 I $P(%MBG("DR"),"\",J)'="",$J(%S,0,$P(%MBG("DR"),"\",J))'=$J(%MOLD,0,$P(%MBG("DR"),"\",J)) S %MODIF=$G(%MODIF)+1
 I SH>$O(@(%REFH1_"999999)"),-1) D
 .N JJ,ZN S %MODIF=0 F JJ=1:1:$L(%MBG("O"),"\") S ZN=$G(@$P(%MBG("O"),"\",J)) I ZN'="" S %MODIF=1
 ;
TOUP I %TO="UP",'$G(%MODIF) G UP
 I %TO="ESC",'$G(%MODIF) G NZ
 S %CMD=0 F JJ=1:1:COLG D  Q:%CMD
 .I $D(^SCR(%SCRN,"G",JJ,"MUMPS1")),^("MUMPS1")'?.P S %CMD=1 Q
 .I $D(^SCR(%SCRN,"G",JJ,"MUMPS2")),^("MUMPS2")'?.P S %CMD=1 Q
 G:'%CMD BDTO
 I $G(%MODIF),%TO="F8"&($P($G(%MBG("FNC")),"\",J)'[%TO)!(%TO="PGUP")!(%TO="PGDW")!(%TO="BEGF")!(%TO="ENDS") S %TO=""
 I $G(%MODIF) I (%TO="UP"!(%TO="END"))&(J=%FIRST)!(%TO="DW")!(%TO="HOME") S %TO=""
BDTO I $G(%TO)="F8",$P(%MBG("FNC"),"\",J)'[%TO G POISK
 I $G(%TO)="PGUP" G PGUP
 ;---------------------- MOVE
 I %TO="TAB" I $D(%MBG("MOVE")),$$NOMOD(SH)!(SH'<$O(@(%REFH1_"99999)"),-1)) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="TAB",$D(%MBG("MOVE")) D  D PS G LOOP
 .N %ST S %ST=$G(@(%REFH1_"SH+1)"))
 .S @(%REFH1_"SH+1)")=$G(@(%REFH1_"SH)"))
 .S @(%REFH1_"SH)")=%ST
 ;
 I %TO="TABN" I $D(%MBG("MOVE")),$$NOMOD(SH)!(SH'>1) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="TABN",$D(%MBG("MOVE")),'$$NOMOD(SH),SH>1 D  D PS S %TO="UP" G UP
 .N %ST S %ST=$G(@(%REFH1_"SH-1)"))
 .S @(%REFH1_"SH-1)")=$G(@(%REFH1_"SH)"))
 .S @(%REFH1_"SH)")=%ST S SHOLD=SH-1,SCHOLD=SCH-1,YOLD=%YY-1
 ;
 I %TO="INS" I $G(%MODIF)!'$D(%MBG("MOVE"))!$$NOMOD(SH)!(SH>$O(@(%REFH1_"99999)"),-1)) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="INS" D  D PS G LOOP1
 .N %SHLAST S %SHLAST=$O(@(%REFH1_"99999)"),-1)+1
 .N %I,%ST F %I=%SHLAST:-1:SH+1 S %ST=@(%REFH1_"%I-1)") S @(%REFH1_"%I)")=%ST
 .S @(%REFH1_"SH)")=""
 .S %MODIF=$G(%MODIF)+120
 .S %YY=%YY-STEP,SH=SH-1,SCH=SCH-1
 ;
 ;;I %TO="DBL" D  D PS G L0
 .N %SHEND,%G
 .S %SHEND=$ZP(@(%REFH1_"99999)"))+1 Q:%SHEND>%MBG("GWUL")
 .S MAC1=%REFH1_"SH)",MAC2=%REFH1_%SHEND_")",%S1GC("R")=RZD_"@@" D ^%S1GC1
 .S YOLD=%YY,SHOLD=SH,SCHOLD=SCH
 ;
 I %TO="DBL" D  G NAZAD
 .D
 ..N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%SCRN) D ^%L1C
 ..D MENU^%L3MBGR(%SCRN)
 .N %NOVIDEO S %NOVIDEO="" D REST^%L3MBGG
 .S %TO="",%SC("ST")=1
 I %TO="F3",'$D(%MBG("NODBL")),SH>1 S @$P(%MBG("O"),"\",J)=$P(@(%REFH1_"SH-1)"),RZD,J) G LGR1
 I $G(%TO)="BEGF" S NPG=1 K SHOLD,SCHOLD,YOLD G BEG1
 I $G(%TO)="ENDS" S NPGOLD=NPG D ENDF G:NPG'=NPGOLD BEG1 G L0
 I %TO="",$G(%NOMOD),$P(%MBG("OU"),"\",J)'="!" S %TO="DW"
 I %TO="HOME" D  G L0
 .S SHOLD=SH-SCH
 .S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 ;;I %TO="DW",J=%FIRST,SCH=%LASTL,$D(%MBG("UPDOWN")) D  G L0
 .S SHOLD=SH-SCH
 .S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 S %OLDTO=%TO
 I %TO="DW",J=%FIRST S %TO="" I '$G(%MODIF),%MOLD'?.P!($P(%MBG("NEW"),RZD,J)?.P&($G(^SCR(%SCRN,"G",J,"MUMPS2"))?.P)) D CLOU G LOOP
 K %L1SCBEG ;*** LEV 010495
 S %NOMOD=$$NOMOD(SH) I %NOMOD G IBUD
 I $P(%MBG("GLOB"),"\",J)?."^"1A.E,%TO="" D ^%L3MBGG S %TO="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV
 ;I $P(%MBG("GLOB"),"\",J)?."^"1U.E,%TO="F6"!(%TO="F7"),$P(%MBG("FNC"),"\",J)'[%TO D ^%L3MBGG S %TO="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV ;D SETM D VSV
 I $P(%MBG("GLOB"),"\",J)?."^"1A.E,(%TO="F7")!(%TO="F6"),$P(%MBG("FNC"),"\",J)'[%TO D ^%L3MBGG S (%TO,%OLDTO)="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV ;D SETM D VSV
IBUD ;
 I $D(^SCR(%SCRN,"G",J,"MUMPS2")),^("MUMPS2")'?.P S JOLD=J D  S %S=$G(@$P(%MBG("O"),"\",J)) G:$D(%SC("ER")) NAZAD D:%S'=$G(%SOLD) VSV D SETM D:$G(%SC("TO"))="PL" PL G:$G(%SC("TO"))'="P" NAZAD D PS G NAZAD
 .N %FIRSTOLD
 .S JOLD=J,YOLD=%YY,XOLD=%XX,SHOLD=SH,SCHOLD=SCH D
 ..N JOLD,YOLD,XOLD,SHOLD,SCHOLD
 ..S JOLD=J,YOLD=%YY,XOLD=%XX,SHOLD=SH,SCHOLD=SCH,%FIRSTOLD=%FIRST N %FIRST
 ..K %SC X ^SCR(%SCRN,"G",J,"MUMPS2")
 .S J=JOLD,%YY=YOLD,%XX=XOLD,SH=SHOLD,SCH=SCHOLD S:$G(%FIRSTOLD) %FIRST=%FIRSTOLD K XOLD,YOLD,SHOLD,SCHOLD
 .Q
SET ;
NAZAD ;
 I $D(%L3MBGHIP) G POISK
 I $D(%SC("END")),J=%FIRST,'$G(%MODIF) G RSM
 ;;I $D(%OLDTO),(%OLDTO="END")&(COLG>1)!(%OLDTO="UP")!(%OLDTO="PGDW")!(%OLDTO="ENDS") S %TO=%OLDTO,%OLDTO="" G NZ
 I $D(%OLDTO),'$G(%MODIF),%OLDTO="END"!(%OLDTO="PGDW")!(%OLDTO="ENDS")!(%OLDTO="UP") S %TO=%OLDTO,%OLDTO="" D  G NZ
 .I $G(@$P(%MBG("O"),"\",J))?." ",J=%FIRST,$G(@(%REFH1_"SH)"))?.P,SH=$O(@(%REFH1_"99999)"),-1) K @(%REFH1_"SH)")
 I '$D(%SC("ST")),$G(@$P(%MBG("O"),"\",J))?." ",$P(%MBG("OU"),"\",J)?.P,$P(%MBG("NEW"),"\",J)'?.P,%OLDTO'="END" D ER G LGR
 I $D(%SC("ER")) D ER K %SC G LGR
 D SETM
 I $D(%SC("ST")) K %SC G LGR
NZ K %SC S:$G(%TO)="END"&(J>%FIRST) %TO="UP"
 I $G(%TO)="END",J=%FIRST G ZP
 I $G(%TO)="UP" G:J'>%FIRST UP S J=J-1 G:$P(%MBG("OU"),"\",J)?.P LGR G NZ
 ; -----------------------------------------    END OF INPUT COLUMN
UP ;
 I $G(%TO)="UP",$D(%MBG("UPDOWN"))&(SCH'>%FIRSTL) D ENDP G L0
 I $G(%TO)="UP" G:SCH=1 ZP D  D CLOU G LOOP
UPB .Q:SCH<2  S %YY=%YY-(2*STEP),SH=SH-2,SCH=SCH-2
 .S SH=SH+1 S %NOMOD=$$NOMOD(SH) I %NOMOD=2 S %YY=%YY+STEP,SCH=SCH+1 G UPB
 .S SH=SH-1
 I $G(%TO)="DW" D CLOU G LOOP
PGUP ;
 I $G(%TO)="PGUP" D CLR G:NPG'>1 ML:'$D(%L3MBG),END S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I $G(%TO)="PGDW" D CLR S %ZBL=$S('$D(%L3MBG):"ML",1:"END") G:'$D(@(%REFH1_"SH-SCH+COLS)")) ZB0 S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I $G(%TO)="ENDS" D CLR S NPGOLD=NPG D ENDF G:NPG'=NPGOLD BEG1 G L0
INC S J=J+1 K %L1GET
 I J>COLG D CLOU G LOOP
INC1 S %NOMOD=$$NOMOD(SH) I $P(%MBG("OU"),"\",J)'?.P S RKV=$P($G(@(%REFH1_"SH)")),RZD,J) D PGR G INC
 G LGR
CLOU N JJ S %MBG("OU")=%MBGOU
 F JJ=1:1:COLG I $P(%MBG("NEW"),"\",JJ)'="Y" S $P(%MBG("NEW"),"\",JJ)=""
 I $D(%MBGSAVE),$D(@(%REFH1_"SH)"))#2 S ^mbg($P,SH)=@(%REFH1_"SH)"),^mbg($P)=""
 Q
GET F JJ=1:1:COLG S @$P(%MBG("O"),"\",JJ)=$P($G(@(%REFH1_"SH)")),RZD,JJ)
 Q
SETM ;
 N %GG,JJ S %GG=$G(@(%REFH1_"SH)"))
 I '$D(%SC("ER")),$G(%SC("ST"))'="ER" F JJ=1:1:COLG S $P(@(%REFH1_"SH)"),RZD,JJ)=$G(@$P(%MBG("O"),"\",JJ))
 I $G(%NOMOD),$G(@(%REFH1_"SH)"))'=%GG S @(%REFH1_"SH)")=%GG D PL
 Q
ZP D CLR K YOLD,SHOLD,SCHOLD S %SAY="" X %XMSGN
 S OTB="" D ZAPR G RSM:OTB="."!($G(%TO)="END"),BEG1
 ;
PL N Y1,X1,Y2,X2,%GG,XX0,%XX,%YY ; -- INPUT: SH,SCH,%YYYY
 S %GG=$G(@(%REFH1_"SH)")),I=SCH
 S Y1=VGR0,X1=%MBG("LL"),Y2=$G(%MBG("NGR"),24)
 S XX0=$G(%MBG("LR"),70),X2=XX0+1 S:XX0>79 XX0=79
 S %XX=X1,%YY=%YYYY X %POSIC W $J("",X2-X1-1)
 D PG Q
RSM ;
 I $D(%MBG("RSM")) D @%MBG("RSM")
END K %L3MBG S mbgs=$O(^mbg0($P,9999999),-1)+1 S ^mbg($P)="",MAC1="^mbg($P)",MAC2="^mbg0($P,mbgs)" D ^%S1GC1 K ^mbg($P),^mbg0($P,mbgs-5)
 K ^mbg1($P)
 Q
 ;
PS N SH,SCH,%YY,J,JJ,%OFF
 S SCH=0,SH=PG(NPG),%OFF=0
 I $D(%SC("ENDS")),'$D(%L3MBG),'$D(%SC("VIEW")) Q
 D CLEAR
 F JJ=1:1:COLG D
 .I $P(%MBG("X"),"\",JJ)["+" S %OFF=1 X %LIGHT
 S %YY=VGR2 D P
 X %XCL Q
 ;
P N I,%S,%L1DS,J,%GG,%SAY,%MBGLIGHT
 X %XCL
 F J=1:1:COLG D
 .N %SAY,%XX,%YY
 .S %XX=$P(%MBG("X"),"\",J) I %XX["+" W %LIGHT1
 .S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH" X %XMSG
 N ZT S ZT=$ZT N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":PZT^%L3MBG"
 F I=1:1:COLS Q:'$D(@(%REFH1_"SH-SCH+I)"))  S %YY=%YY+STEP S %GG=$G(@(%REFH1_"SH-SCH+I)")) D PG
PZT S $ZT=ZT
 S %SAY="" I '$D(%MBG("DELAS")),'$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="{}<CTRL>/E{} dxey wegnl "
 I $D(%MBG("MOVE")),'$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="{}INS{} qpkd {}TAB,<SHIFT>TAB{} fifdl "_%SAY
 I $D(%MBG("MIUN")),'$D(%SC("VIEW")) S %SAY="{}F8{} oein/yetig "_%SAY ;;I %TYPCRT="PC" S %SAY="{}CTRL+G{} sxb "_%SAY
 I %SAY'="",'$D(%L1NMB("LINE")) S %SAY=%SAY_"++"_(Y2-1)_","_(%MBG("LR")-(%MBG("LR")-%MBG("LL")-$L($TR(%SAY,"{}",""))\2))_",HH++"_%BCG_",YF" X %XMSG
 Q
PG N RKV,J,%NOMOD S %NOMOD=0 X %XCL ;---< INPUT - %GG,I >
 D NMB(I-SCH)
 S %NOMOD=$$NOMOD1(%GG)
 F J=1:1:COLG S RKV=$P(%GG,RZD,J) D PGR
 Q
NMB(%OFS) N %XX S %XX=XX0-2 ;--- INPUT: XX0,X1,SH
 I $G(^SCR(%SCRN))="E" S %XX=X1
 I %XX-$P(%MBG("X"),"\",1)>0 X %POSIC W %CLI W $J(SH+%OFS+$G(%MBG("OFF")),2) X %XCL
 Q
PGR ;  ------------------ INPUT - RKV,%YY
 N DL,%XX Q:$G(RKV)=""  W:%TYPCRT["VT" *27,"(B" W:%NOMOD %CLI W:$D(%MBGLIGHT) %LIGHT1 ; %CLI
 S DL=$S($P(%MBG("RGS"),"\",J)="D":8,1:+$P(%MBG("D"),"\",J))
 S %XX=$P(%MBG("X"),"\",J)-DL X %POSIC
 W:$P(%MBG("INV"),"\",J)'?.P %CLI
 I $P(%MBG("X"),"\",J)["+" S %YY=%YY+1 X %POSIC S %YY=%YY-1 X %LIGHT
 I $G(RKV)="" W $J("",DL) X %XCL Q
 I $P(%MBG("RGS"),"\",J)="HH" D  X %XCL Q
 .N %X1,%Y1,%X2,%Y2,%S,%L1WH
 .S %X1=%XX,%X2=%XX+DL-1,%Y1=%YY,%Y2=%Y1+STEP-1
 .S %S=RKV S %L1WH="" D ^%L1WH K %L1WH,%S
 .Q
 D
 .N RKV1
 .I RKV="-" W $J("",DL\2-1)_"-" Q
 .I $P(%MBG("RGS"),"\",J)="H" D  W $J($$^%L1HB(RKV1),DL) Q
 ..S RKV1=""
 ..I $L(RKV)>DL&($P(%MBG("D"),"\",J)["/") S RKV1="..."_$E(RKV,$L(RKV)-DL+4,255) Q
 ..S RKV1=RKV
 .
 .I '$P(%MBG("DR"),"\",J) W $J(RKV,DL) Q
 .W $J(RKV,DL,$P(%MBG("DR"),"\",J))
 X %XCL Q
CLEAR ;-- INPUT: X2,X1,VGR,Y2,NPG
 N %XX,%YY,I  X %XCL
 I $D(%SCNC) F I=VGR:1:Y2-2 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1) D RBUA ;Y1 --> VGR
 I '$D(%SCNC),'$D(%SC("NOCL")) D
 .I %TYPCRT["VT5" W $C(27,91),VGR+1,";",X1+1,";",Y2-1,";",X2-1,"$z" Q
 .F I=VGR:1:Y2-2 S %XX=X1,%YY=I X %POSIC W %chists
 .D RBUA
 S %SAY=NPG_" sc++"_(VGR0-1)_","_(X1+8)_",HH++"_%BCG_",YF"
 X %XMSG
 I '$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="<CTRL+F1> dxfr++"_(VGR0-1)_","_(X2-2)_",HH++"_%BCG_",YF" X %XMSG
 Q
NOMOD(SH) N %NOMOD S %NOMOD=$$NOMOD1($G(@(%REFH1_"SH)")))
 Q %NOMOD
NOMOD1(ST) ;
 N ST1 S ST1=$P(ST,RZD,$L(ST,RZD))
 I $E(ST1,1,2)="@@" Q $S($E(ST1,3)="!":2,1:1)
 Q 0
ZAPR ;
 D ZAPR^%L3MBG2
 Q
ER ;
 X %XMSGV("ER") K %L1GET S %SC("ER")=1 S:$D(%MOLD) %S=%MOLD S:$G(%MODIF)>0 %MODIF=%MODIF-1 Q
 I $P(%MBG("NEW"),"\",J)'="Y" S $P(%MBG("NEW"),"\",J)=""
 S $P(@(%REFH1_"SH)"),RZD,J)=$G(%MOLD) I $G(%MODIF)>0 S %MODIF=%MODIF-1
 Q
DEL Q:$G(%NOMOD)  D DEL^%L3MBG2 ;
 Q
INIT D INIT^%L3MBG2
 S %NOMOD=0
 Q
ENDF ;
 N I,JJ S JJ=0
 F I=SH-SCH+1:1 Q:'$D(@(%REFH1_"I)"))  D
 .S JJ=JJ+1 I JJ>COLS S NPG=NPG+1,PG(NPG)=I-1,JJ=1,%PS=1
 S SHOLD=I S:SHOLD>0 SHOLD=SHOLD-1 I $G(%MBG("GWUL")),SHOLD'<%MBG("GWUL") S SHOLD=%MBG("GWUL")-1
 S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 K %SH00,%SCH00,%SCH00
 Q
ENDP ;
 N I,JJ S JJ=0
 F I=SH-SCH+1:1:SH-SCH+COLS Q:'$D(@(%REFH1_"I)"))  S JJ=JJ+1
 S SHOLD=I-'$D(^(I)) S:SHOLD>0 SHOLD=SHOLD-1 S:SHOLD<0 SHOLD=0
 S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 Q
POISK D POISK^%L3MBG2 G @%LAB
RBUA W:%CVET %LIGHT1,%CV("CF") K %L1RBCL D ^%L1RBUA X %XCL
 Q
CLR X %XCL K %SH00,%SCH00,%YY00
 Q
HELP ;
 D SAVE^%L3MBGG D
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 .X "ZL %L3MBGH K ^TMPS111($J) N I F I=2:1 Q:$T(+I)=""""  S ^TMPS111($J,I)=$T(+I)" S %S2V("LEFT")=5 X %chista W %CV("YF") D ^%S2VIEW
 D REST^%L3MBGG
 Q

%L3MBG00
%L3MBG ; INPUT FROM DISPLAY                                                            [ 19.01.07 11:17 ] [ 18.10.06 13:27 ] [ 26.07.06 15:26 ]
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 I '$D(%POSIC) D ^%L1C
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 N NPG,PG S NPG=1,PG(1)=0 G BEG
VSV N %XX,%YY S %XX=%X000,%YY=%Y000 X %POSIC X %XCL X:$D(%PRPL) %LIGHT
 W:$G(%NOMOD) %CLI ;;W:$D(%MBGLIGHT) %CLI
 W:$D(%MBGLIGHT) %LIGHT1
 I $P(%MBG("DR"),"\",J) W $J(%S,DL,$P(%MBG("DR"),"\",J)) G EV
 I $P(%MBG("RGS"),"\",J)="H" W $$HBR^%L1FRM($TR($TR(%S,%TES1,%TES2),%TEN,%THB),DL) G EV
 W $J(%S,DL)
EV X %XCL
 Q
BEG ;
 U $P:(NOECHO:NOWRAP)
 N %BE,%GG,%LS,%S,%SOLD,%X000,%Y000,%L1DS,%YY,%L3MBGST,%YYYY,%MSC,%SCHIP
 N %ENGSCR
 N DL,OLDDAT,XOLD,YOLD,SHOLD,SCHOLD
 N COLS,SH,SCH,%SH00,%SCH00,%YY00,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPGL,OTB,%PRNEW,RKV,RSCR,RZD,%REFH1
 N STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2,%MBGOU,%MODIF,%ENDSS
 N %HBRY,%HIP S %MBGOU=$G(%MBG("OU")) S %L3MBGST="" K ^mbg1($P)
BEG1 D INIT S %YY=VGR2 K %L3MBGST
 I ($G(%SC("VIEW"))="PGUP")!($G(%SC("VIEW"))="PGDW")!($E($G(%SC("VIEW")))=":")!$D(%SC("HIP")) G ZB
 D PS I $D(%SC("VIEW")) G ZB
 Q:$D(%L3MBG)  G L0
ZB0 I %TO="PGDW" S %SAY=$S(%ENGLISH:"END OF DATA",1:" mipezp seq ") X %XMSGN(1)
    I %TO="PGUP" S %SAY=$S(%ENGLISH:"BEGIN OF DATA",1:" mipezp zligz ")  X %XMSGN(1)
    G @%ZBL
ZB S %ZBL="ZB" I $G(%SC("VIEW"))="PGUP"!($G(%SC("VIEW"))="PGDW") S %TO=%SC("VIEW"),%SC("VIEW")=1 G ZB1
 I $E($G(%SC("VIEW")))=":" D  K %SC("VIEW") G POISK
 .S %L3MBGHIP=$E(%SC("VIEW"),2,20)
 .S %L3MBGHIP(1)="",%L3MBGHIP("=")="",J=1
 .S %SCHIP=""
 I $D(%SC("HIP"))#2 D  K %SC("VIEW") G POISK
 .S %L3MBGHIP=$P(%SC("HIP"),":")
 .S %L3MBGHIP(1)="",%L3MBGHIP("=")="",J=1
 .I $P(%SC("HIP"),":",2) S J=$P(%SC("HIP"),":",2)
 N %L1GET
 I %ENGLISH S %GET=" PAGE DOWN - <PGDN> , PAGE UP - <PGUP> , EXIT - <ESC> "
 E  S %GET=" <ESC> - d`ivi , <PGUP> - mcew , <PGDW>  - `ad sc "
 D N^%L1GET I %TO="END" G END
ZB1 I %TO="PGUP" G:NPG'>1 ZB0 S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I %TO="PGDW" G:'$D(@(%REFH1_"SH-SCH+COLS)")) ZB0 S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 W *7 G ZB
 ;
L0 S:$D(YOLD) %YY=YOLD S:$D(SHOLD) SH=SHOLD S:$D(SCHOLD) SCH=SCHOLD
 I $D(%SC("ENDS")) S NPGOLD=NPG D ENDF S %PS=1 S:$D(%SC("ENDS","NOPS")) %PS=0 S:$G(%SC("ENDS"))'?.P %ENDSS=%SC("ENDS") K %SC("ENDS") G:NPG'=NPGOLD BEG1 D:%PS PS G L0
LOOP ; -------------------------------- NEW LINE
 K YOLD,SHOLD,SCHOLD,%MBG("TO"),%SC,%MODIF X %XCL
 F JJ=1:1 Q:'$D(@(%REFH1_"SH-SCH+JJ)"))  I $G(^(SH-SCH+JJ))'[(RZD_"@@!") Q
 S %FIRSTL=JJ
 F JJ=COLS:-1:1 I $D(@(%REFH1_"SH-SCH+JJ)")),$G(^(SH-SCH+JJ))'[(RZD_"@@!") Q
 S %LASTL=JJ
LOOP1 ;
 K %INV S SH=SH+1,SCH=SCH+1 K %PRX
 I $D(%MBG("GWUL")),SH>%MBG("GWUL") W *7 G ZP ;RSM
 I %YY+STEP>(STEP*COLS+VGR2)!(%YY>23) S:%YY>23 %YY=23 S %PRX="" G ZP
 I $D(%MBG("LINE")),$G(%SH00),$G(%YY00),$G(%SCH00) D
 .N %YY,%YYYY,SH,SCH K %MBGLIGHT S %YYYY=%YY00,SH=%SH00,SCH=%SCH00 D PL
 S %YY=%YY+STEP,$Y=%YY,%YYYY=%YY
 S %SH00=SH,%SCH00=SCH,%YY00=%YY
 I $$NOMOD(SH)=2 G LOOP1
 I $D(%MBG("LINE")) D
 .S %MBGLIGHT="" D PL
 K %PRPL,%X000,%Y000
ML ;
 S %NOMOD=$$NOMOD(SH)
 F JJ=1:1 Q:$P(%MBG("OU"),"\",JJ)?.P
 S %FIRST=JJ K JJ,%PRX
 I %YY>(STEP*COLS+VGR2)!(%YY>23) S:%YY>23 %YY=23 S %PRX="" G ZP
 S J=0 D NMB(0)
 I $D(XOLD) S J=XOLD K XOLD G LGR
 G INC
 ;------------------------------------ NEW COLUMN
LGR K %TO,%OLDTO,%FLL,%S,%L1DS,%SC S %TO="",%OLDTO=""
 D GET
 S %SAY=$P(%MBG("H"),"\",J)
 S %SAY=" "_$P(%SAY,"++")
 X "S A=1"
 I J'=$G(^mbg1($P,"H")) X %XMSGN
 S ^mbg1($P,"H")=J
 I $P(%MBG("H"),"\",J)?.P,$P(%MBG("GLOB"),"\",J)?."^"1A.E S %SAY=" <F7 > - dbvd , <F6> - my zlgzd itl yetig " X %XMSGN
 I $D(^SCR(%SCRN,"G",J,"MUMPS1")) D  S %YY=%YYYY G:$P(%MBG("OU"),"\",J)'?.P INC
 .N SHOLD,JOLD,SCHOLD
 .S SHOLD=SH,JOLD=J,SCHOLD=SCH
 .N SH,SCH,J S J=JOLD,SH=SHOLD,SCH=SCHOLD
 .X ^SCR(%SCRN,"G",J,"MUMPS1")
 .I $$HZGTOUCH^%L2MOUSE,'$D(%L1NMB),$$KB^%L2MOUSE S %L1NMB("LINE")=""
 ;----------------------------------------  PARAMETRIM HACNASA
LGR1 S %XX=$P(%MBG("X"),"\",J)
 I $P(%MBG("OU"),"\",J)?.P,J'=$G(^mbg1($P,"Z")) S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH,I" X %XMSG S %XX=$P(%MBG("X"),"\",J) S ^mbg1($P,"Z")=J
 S %YY=%YYYY,$Y=%YY I %XX["+" S %YY=%YY+1,$Y=$Y+1,%PRPL="" X %LIGHT
 X %POSIC
 S %LS=$P(%MBG("D"),"\",J),%FL=""
 ;;S %S=$$SPA^%L1FRM($G(@$P(%MBG("O"),"\",J))) S %INV=""
 S (%MOLD,%S)=$G(@$P(%MBG("O"),"\",J)) S %INV=""
 I $D(%ENDSS),J=%FIRST S %S=%ENDSS
 S CIST=$P(%MBG("S"),"\",J) K:CIST="" CIST S %PRNEW=0
 ;;I $D(%MBG("=")) S %ZMSL=$G(%ZMSL)_"="
 ;----------------------------------------  HACNASA
 I $P(%MBG("RGS"),"\",J)="E" D
 .I $D(%MBG("=")) S %ZMSL=$G(%ZMSL)_"="
 .S:'$G(%ENGSCR) %XX=%XX-%LS X %POSIC S:%XX<0 %XX=0 S $X=%XX
 .I $$HZGTOUCH^%L2MOUSE S %ZMSL("NMB")=1
 .S %FL="" K %BE S %ZMSF="" S:$D(%ENDSS) %BE="E" K:'$D(%BE) %FLINS N %HBRY D ^%ZMSL K %INV,%GET,%ENDSS I %S["=="!(%TO="END")!(%TO="=") S %S=%MOLD Q
 .I $P(%MBG("DR"),"\",J),%S'["%" S %S=$J(%S,$P(%MBG("DR"),"\",J)+1,$P(%MBG("DR"),"\",J))
 ;
 I $P(%MBG("RGS"),"\",J)="H" S $X=%XX-1 D ^%L1ZMS
 ;
 I $P(%MBG("RGS"),"\",J)="HH" D
 .N %X1,%Y1,%X2,%Y2
 .S %X1=%XX-%LS,%X2=%XX-1,%Y1=%YY,%Y2=%Y1+STEP-1,%LS=%LS*STEP D ^%L1WH
 .S %L1WH="" K %INV D ^%L1WH K %L1WH
 .Q
 ;
 I $P(%MBG("RGS"),"\",J)="D" S:'$G(%ENGSCR) %XX=%XX-8 S $X=%XX S %L1DS=$TR(%S,"/.:","") D ^%L1DAT S %S=%L1DAT1 ; LGR --> SET
 ;
 I $P(%MBG("RGS"),"\",J)="T" S:'$G(%ENGSCR) %XX=%XX-5 S $X=%XX S %L1TS=$TR(%S,":/.","") D ^%L1TIME S %S=%L1TIME1 ; LGR --> SET
 ;
 K %ENDSS
 S DL=$S($P(%MBG("RGS"),"\",J)="D":8,1:+$P(%MBG("D"),"\",J)) ;***
 S %XX=$P(%MBG("X"),"\",J)-$S($G(%ENGSCR):0,1:DL)
 I $P(%MBG("OU"),"\",J)?.P D
 .I $P(%MBG("X"),"\",J)["+" W %LIGHT1
 .N %XX,%YY S %XX=$P(%MBG("X"),"\",J) S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH" X %XMSG
 ;
 ;----------------------------------------- VIHOD
 I $D(%SCHIP) S %S=%MOLD,%MBG("NOZAPR")=1
 I %TO="HELP" D HELP S %SC("ST")=1,%TO="" G NAZAD
 I $G(%TO)="DEL",'$D(%MBG("DELAS")),$D(@(%REFH1_"SH)")),'$G(%NOMOD) D DEL G:%TO'="PGUP" BEG1 G PGUP
 I %S["==",%MBG("O")?.P S %TO="END",%S=""
 K %TOEQ I $G(%TO)="=",$D(%MBG("=")) S %TO="END",%TOEQ="" S %X000=%XX,%Y000=%YY D VSV I '$G(%MODIF) S J=%FIRST G NZ
 I $P(%MBG("D"),"\",J)[".",+%S,$P(%MBG("RGS"),"\",J)="E" S %S=$TR($J(%S,DL)," ",0)
 S %X000=%XX,%Y000=%YY I $P(%MBG("RGS"),"\",J)'="HH" D VSV
 X %XCL
 ;;S %MOLD=$$SPL^%L1FRM($P($G(@(%REFH1_"SH)")),RZD,J))
 I $P(%MBG("DR"),"\",J),$P(%MBG("OU"),"\",J)="!",%TO="" S $P(@(%REFH1_"SH)"),RZD,J)=%S G MUST
 I $P(%MBG("DR"),"\",J),%NOMOD,+%MOLD'=+%S S %SAY=" ! iepiyl ozip `l " X %XMSGV(1) S %S=%MOLD,%MODIF=0 G LGR
 I '$P(%MBG("DR"),"\",J),%NOMOD,%MOLD'=%S S %SAY=" ! iepiyl ozip `l " X %XMSGV(1) S %S=%MOLD,%MODIF=0 G LGR
MUST I $G(@$P(%MBG("O"),"\",J))'=%S!($P(%MBG("NEW"),"\",J)'?.P) S %PRNEW=1
 S @$P(%MBG("O"),"\",J)=%S S %YY=%YYYY,$Y=%YY
 S %SOLD=%S
 I $P(%MBG("RGS"),"\",J)="D",$TR(%S,"/.")=$TR(%MOLD,"./") G TOUP
 I $P(%MBG("RGS"),"\",J)="T",+$TR(%S,"/.:")=+$TR(%MOLD,"./:") G TOUP
 I %S'=%MOLD,$P(%MBG("DR"),"\",J)="" S %MODIF=$G(%MODIF)+1
 I $P(%MBG("DR"),"\",J)'="",$J(%S,0,$P(%MBG("DR"),"\",J))'=$J(%MOLD,0,$P(%MBG("DR"),"\",J)) S %MODIF=$G(%MODIF)+1
 I SH>$O(@(%REFH1_"999999)"),-1) D
 .N JJ,ZN S %MODIF=0 F JJ=1:1:$L(%MBG("O"),"\") S ZN=$G(@$P(%MBG("O"),"\",J)) I ZN'="" S %MODIF=1
 ;
TOUP I %TO="UP",'$G(%MODIF) G UP
 I %TO="ESC",'$G(%MODIF) G NZ
 S %CMD=0 F JJ=1:1:COLG D  Q:%CMD
 .I $D(^SCR(%SCRN,"G",JJ,"MUMPS1")),^("MUMPS1")'?.P S %CMD=1 Q
 .I $D(^SCR(%SCRN,"G",JJ,"MUMPS2")),^("MUMPS2")'?.P S %CMD=1 Q
 G:'%CMD BDTO
 I $G(%MODIF),%TO="F8"&($P($G(%MBG("FNC")),"\",J)'[%TO)!(%TO="PGUP")!(%TO="PGDW")!(%TO="BEGF")!(%TO="ENDS") S %TO=""
 I $G(%MODIF) I (%TO="UP"!(%TO="END"))&(J=%FIRST)!(%TO="DW")!(%TO="HOME") S %TO=""
BDTO I $G(%TO)="F8",$P(%MBG("FNC"),"\",J)'[%TO G POISK
 I $G(%TO)="PGUP" G PGUP
 ;---------------------- MOVE
 I %TO="TAB" I $D(%MBG("MOVE")),$$NOMOD(SH)!(SH'<$O(@(%REFH1_"99999)"),-1)) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="TAB",$D(%MBG("MOVE")) D  D PS G LOOP
 .N %ST S %ST=$G(@(%REFH1_"SH+1)"))
 .S @(%REFH1_"SH+1)")=$G(@(%REFH1_"SH)"))
 .S @(%REFH1_"SH)")=%ST
 ;
 I %TO="TABN" I $D(%MBG("MOVE")),$$NOMOD(SH)!(SH'>1) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="TABN",$D(%MBG("MOVE")),'$$NOMOD(SH),SH>1 D  D PS S %TO="UP" G UP
 .N %ST S %ST=$G(@(%REFH1_"SH-1)"))
 .S @(%REFH1_"SH-1)")=$G(@(%REFH1_"SH)"))
 .S @(%REFH1_"SH)")=%ST S SHOLD=SH-1,SCHOLD=SCH-1,YOLD=%YY-1
 ;
 I %TO="INS" I $G(%MODIF)!'$D(%MBG("MOVE"))!$$NOMOD(SH)!(SH>$O(@(%REFH1_"99999)"),-1)) S %OLDTO="",%SC("ST")=1 G NAZAD
 I %TO="INS" D  D PS G LOOP1
 .N %SHLAST S %SHLAST=$O(@(%REFH1_"99999)"),-1)+1
 .N %I,%ST F %I=%SHLAST:-1:SH+1 S %ST=@(%REFH1_"%I-1)") S @(%REFH1_"%I)")=%ST
 .S @(%REFH1_"SH)")=""
 .S %MODIF=$G(%MODIF)+120
 .S %YY=%YY-STEP,SH=SH-1,SCH=SCH-1
 ;
 ;;I %TO="DBL" D  D PS G L0
 .N %SHEND,%G
 .S %SHEND=$ZP(@(%REFH1_"99999)"))+1 Q:%SHEND>%MBG("GWUL")
 .S MAC1=%REFH1_"SH)",MAC2=%REFH1_%SHEND_")",%S1GC("R")=RZD_"@@" D ^%S1GC1
 .S YOLD=%YY,SHOLD=SH,SCHOLD=SCH
 ;
 I %TO="DBL" D  G NAZAD
 .D
 ..N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%SCRN) D ^%L1C
 ..D MENU^%L3MBGR(%SCRN)
 .N %NOVIDEO S %NOVIDEO="" D REST^%L3MBGG
 .S %TO="",%SC("ST")=1
 I %TO="F3",'$D(%MBG("NODBL")),SH>1 S @$P(%MBG("O"),"\",J)=$P(@(%REFH1_"SH-1)"),RZD,J) G LGR1
 I $G(%TO)="BEGF" S NPG=1 K SHOLD,SCHOLD,YOLD G BEG1
 I $G(%TO)="ENDS" S NPGOLD=NPG D ENDF G:NPG'=NPGOLD BEG1 G L0
 I %TO="",$G(%NOMOD),$P(%MBG("OU"),"\",J)'="!" S %TO="DW"
 I %TO="HOME" D  G L0
 .S SHOLD=SH-SCH
 .S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 ;;I %TO="DW",J=%FIRST,SCH=%LASTL,$D(%MBG("UPDOWN")) D  G L0
 .S SHOLD=SH-SCH
 .S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 S %OLDTO=%TO
 I %TO="DW",J=%FIRST S %TO="" I '$G(%MODIF),%MOLD'?.P!($P(%MBG("NEW"),RZD,J)?.P&($G(^SCR(%SCRN,"G",J,"MUMPS2"))?.P)) D CLOU G LOOP
 K %L1SCBEG ;*** LEV 010495
 S %NOMOD=$$NOMOD(SH) I %NOMOD G IBUD
 I $P(%MBG("GLOB"),"\",J)?."^"1A.E,%TO="" D ^%L3MBGG S %TO="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV
 ;I $P(%MBG("GLOB"),"\",J)?."^"1U.E,%TO="F6"!(%TO="F7"),$P(%MBG("FNC"),"\",J)'[%TO D ^%L3MBGG S %TO="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV ;D SETM D VSV
 I $P(%MBG("GLOB"),"\",J)?."^"1A.E,(%TO="F7")!(%TO="F6"),$P(%MBG("FNC"),"\",J)'[%TO D ^%L3MBGG S (%TO,%OLDTO)="" G:$D(%SC("ER"))!$D(%SC("ST")) NAZAD S:%MOLD'=@$P(%MBG("O"),"\",J) %MODIF=$G(%MODIF)+1 D VSV ;D SETM D VSV
IBUD ;
 I $D(^SCR(%SCRN,"G",J,"MUMPS2")),^("MUMPS2")'?.P S JOLD=J D  S %S=$G(@$P(%MBG("O"),"\",J)) G:$D(%SC("ER")) NAZAD D:%S'=$G(%SOLD) VSV D SETM D:$G(%SC("TO"))="PL" PL G:$G(%SC("TO"))'="P" NAZAD D PS G NAZAD
 .N %FIRSTOLD
 .S JOLD=J,YOLD=%YY,XOLD=%XX,SHOLD=SH,SCHOLD=SCH D
 ..N JOLD,YOLD,XOLD,SHOLD,SCHOLD
 ..S JOLD=J,YOLD=%YY,XOLD=%XX,SHOLD=SH,SCHOLD=SCH,%FIRSTOLD=%FIRST N %FIRST
 ..K %SC X ^SCR(%SCRN,"G",J,"MUMPS2")
 .S J=JOLD,%YY=YOLD,%XX=XOLD,SH=SHOLD,SCH=SCHOLD S:$G(%FIRSTOLD) %FIRST=%FIRSTOLD K XOLD,YOLD,SHOLD,SCHOLD
 .Q
SET ;
NAZAD ;
 I $D(%L3MBGHIP) G POISK
 I $D(%SC("END")),J=%FIRST,'$G(%MODIF) G RSM
 ;;I $D(%OLDTO),(%OLDTO="END")&(COLG>1)!(%OLDTO="UP")!(%OLDTO="PGDW")!(%OLDTO="ENDS") S %TO=%OLDTO,%OLDTO="" G NZ
 I $D(%OLDTO),'$G(%MODIF),%OLDTO="END"!(%OLDTO="PGDW")!(%OLDTO="ENDS")!(%OLDTO="UP") S %TO=%OLDTO,%OLDTO="" D  G NZ
 .I $G(@$P(%MBG("O"),"\",J))?." ",J=%FIRST,$G(@(%REFH1_"SH)"))?.P,SH=$O(@(%REFH1_"99999)"),-1) K @(%REFH1_"SH)")
 I '$D(%SC("ST")),$G(@$P(%MBG("O"),"\",J))?." ",$P(%MBG("OU"),"\",J)?.P,$P(%MBG("NEW"),"\",J)'?.P,%OLDTO'="END" D ER G LGR
 I $D(%SC("ER")) D ER K %SC G LGR
 D SETM
 I $D(%SC("ST")) K %SC G LGR
NZ K %SC S:$G(%TO)="END"&(J>%FIRST) %TO="UP"
 I $G(%TO)="END",J=%FIRST G ZP
 I $G(%TO)="UP" G:J'>%FIRST UP S J=J-1 G:$P(%MBG("OU"),"\",J)?.P LGR G NZ
 ; -----------------------------------------    END OF INPUT COLUMN
UP ;
 I $G(%TO)="UP",$D(%MBG("UPDOWN"))&(SCH'>%FIRSTL) D ENDP G L0
 I $G(%TO)="UP" G:SCH=1 ZP D  D CLOU G LOOP
UPB .Q:SCH<2  S %YY=%YY-(2*STEP),SH=SH-2,SCH=SCH-2
 .S SH=SH+1 S %NOMOD=$$NOMOD(SH) I %NOMOD=2 S %YY=%YY+STEP,SCH=SCH+1 G UPB
 .S SH=SH-1
 I $G(%TO)="DW" D CLOU G LOOP
PGUP ;
 I $G(%TO)="PGUP" D CLR G:NPG'>1 ML:'$D(%L3MBG),END S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I $G(%TO)="PGDW" D CLR S %ZBL=$S('$D(%L3MBG):"ML",1:"END") G:'$D(@(%REFH1_"SH-SCH+COLS)")) ZB0 S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG1
 I $G(%TO)="ENDS" D CLR S NPGOLD=NPG D ENDF G:NPG'=NPGOLD BEG1 G L0
INC S J=J+1 K %L1GET
 I J>COLG D CLOU G LOOP
INC1 S %NOMOD=$$NOMOD(SH) I $P(%MBG("OU"),"\",J)'?.P S RKV=$P($G(@(%REFH1_"SH)")),RZD,J) D PGR G INC
 G LGR
CLOU N JJ S %MBG("OU")=%MBGOU
 F JJ=1:1:COLG I $P(%MBG("NEW"),"\",JJ)'="Y" S $P(%MBG("NEW"),"\",JJ)=""
 I $D(%MBGSAVE),$D(@(%REFH1_"SH)"))#2 S ^mbg($P,SH)=@(%REFH1_"SH)"),^mbg($P)=""
 Q
GET F JJ=1:1:COLG S @$P(%MBG("O"),"\",JJ)=$P($G(@(%REFH1_"SH)")),RZD,JJ)
 Q
SETM ;
 N %GG,JJ S %GG=$G(@(%REFH1_"SH)"))
 I '$D(%SC("ER")),$G(%SC("ST"))'="ER" F JJ=1:1:COLG S $P(@(%REFH1_"SH)"),RZD,JJ)=$G(@$P(%MBG("O"),"\",JJ))
 I $G(%NOMOD),$G(@(%REFH1_"SH)"))'=%GG S @(%REFH1_"SH)")=%GG D PL
 Q
ZP D CLR K YOLD,SHOLD,SCHOLD S %SAY="" X %XMSGN
 S OTB="" D ZAPR G RSM:OTB="."!($G(%TO)="END"),BEG1
 ;
PL N Y1,X1,Y2,X2,%GG,XX0,%XX,%YY ; -- INPUT: SH,SCH,%YYYY
 S %GG=$G(@(%REFH1_"SH)")),I=SCH
 S Y1=VGR0,X1=%MBG("LL"),Y2=$G(%MBG("NGR"),24)
 S XX0=$G(%MBG("LR"),70),X2=XX0+1 S:XX0>79 XX0=79
 S %XX=X1,%YY=%YYYY X %POSIC W $J("",X2-X1-1)
 D PG Q
RSM ;
 I $D(%MBG("RSM")) D @%MBG("RSM")
END K %L3MBG S mbgs=$O(^mbg0($P,9999999),-1)+1 S ^mbg($P)="",MAC1="^mbg($P)",MAC2="^mbg0($P,mbgs)" D ^%S1GC1 K ^mbg($P),^mbg0($P,mbgs-5)
 K ^mbg1($P)
 Q
 ;
PS N SH,SCH,%YY,J,JJ,%OFF
 S SCH=0,SH=PG(NPG),%OFF=0
 I $D(%SC("ENDS")),'$D(%L3MBG),'$D(%SC("VIEW")) Q
 D CLEAR
 F JJ=1:1:COLG D
 .I $P(%MBG("X"),"\",JJ)["+" S %OFF=1 X %LIGHT
 S %YY=VGR2 D P
 X %XCL Q
 ;
P N I,%S,%L1DS,J,%GG,%SAY,%MBGLIGHT
 X %XCL
 F J=1:1:COLG D
 .N %SAY,%XX,%YY
 .S %XX=$P(%MBG("X"),"\",J) I %XX["+" W %LIGHT1
 .S %SAY=$P(%MBG("Z"),"\",J)_"++"_(VGR0+(%XX["+"))_","_%XX_",HH" X %XMSG
 N ZT S ZT=$ZT N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":PZT^%L3MBG"
 F I=1:1:COLS Q:'$D(@(%REFH1_"SH-SCH+I)"))  S %YY=%YY+STEP S %GG=$G(@(%REFH1_"SH-SCH+I)")) D PG
PZT S $ZT=ZT
 S %SAY="" I '$D(%MBG("DELAS")),'$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="{}<CTRL>/E{} dxey wegnl "
 I $D(%MBG("MOVE")),'$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="{}INS{} qpkd {}TAB,<SHIFT>TAB{} fifdl "_%SAY
 I $D(%MBG("MIUN")),'$D(%SC("VIEW")) S %SAY="{}F8{} oein/yetig "_%SAY ;;I %TYPCRT="PC" S %SAY="{}CTRL+G{} sxb "_%SAY
 I %SAY'="",'$D(%L1NMB("LINE")) S %SAY=%SAY_"++"_(Y2-1)_","_(%MBG("LR")-(%MBG("LR")-%MBG("LL")-$L($TR(%SAY,"{}",""))\2))_",HH++"_%BCG_",YF" X %XMSG
 Q
PG N RKV,J,%NOMOD S %NOMOD=0 X %XCL ;---< INPUT - %GG,I >
 D NMB(I-SCH)
 S %NOMOD=$$NOMOD1(%GG)
 F J=1:1:COLG S RKV=$P(%GG,RZD,J) D PGR
 Q
NMB(%OFS) N %XX S %XX=XX0-2 ;--- INPUT: XX0,X1,SH
 I $G(^SCR(%SCRN))="E" S %XX=X1
 I %XX-$P(%MBG("X"),"\",1)>0 X %POSIC W %CLI W $J(SH+%OFS+$G(%MBG("OFF")),2) X %XCL
 Q
PGR ;  ------------------ INPUT - RKV,%YY
 N DL,%XX Q:$G(RKV)=""  W:%TYPCRT["VT" *27,"(B" W:%NOMOD %CLI W:$D(%MBGLIGHT) %LIGHT1 ; %CLI
 S DL=$S($P(%MBG("RGS"),"\",J)="D":8,1:+$P(%MBG("D"),"\",J))
 S %XX=$P(%MBG("X"),"\",J)-$S($G(%ENGSCR):0,1:DL) X %POSIC
 W:$P(%MBG("INV"),"\",J)'?.P %CLI
 I $P(%MBG("X"),"\",J)["+" S %YY=%YY+1 X %POSIC S %YY=%YY-1 X %LIGHT
 I $G(RKV)="" W $J("",DL) X %XCL Q
 I $P(%MBG("RGS"),"\",J)="HH" D  X %XCL Q
 .N %X1,%Y1,%X2,%Y2,%S,%L1WH
 .S %X1=%XX,%X2=%XX+DL-1,%Y1=%YY,%Y2=%Y1+STEP-1
 .S %S=RKV S %L1WH="" D ^%L1WH K %L1WH,%S
 .Q
 D
 .N RKV1
 .I RKV="-" W $J("",DL\2-1)_"-" Q
 .I $P(%MBG("RGS"),"\",J)="H" D  W $J($$^%L1HB(RKV1),DL) Q
 ..S RKV1=""
 ..I $L(RKV)>DL&($P(%MBG("D"),"\",J)["/") S RKV1="..."_$E(RKV,$L(RKV)-DL+4,255) Q
 ..S RKV1=RKV
 .
 .I '$P(%MBG("DR"),"\",J) W $J(RKV,DL) Q
 .W $J(RKV,DL,$P(%MBG("DR"),"\",J))
 X %XCL Q
CLEAR ;-- INPUT: X2,X1,VGR,Y2,NPG
 N %XX,%YY,I  X %XCL
 I $D(%SCNC) F I=VGR:1:Y2-2 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1) D RBUA ;Y1 --> VGR
 I '$D(%SCNC),'$D(%SC("NOCL")) D
 .I %TYPCRT["VT5" W $C(27,91),VGR+1,";",X1+1,";",Y2-1,";",X2-1,"$z" Q
 .F I=VGR:1:Y2-2 S %XX=X1,%YY=I X %POSIC W %chists
 .D RBUA
 S %SAY=NPG_" sc++"_(VGR0-1)_","_(X1+8)_",HH++"_%BCG_",YF"
 X %XMSG
 I '$D(%L3MBG),'$D(%SC("VIEW")) S %SAY="<CTRL+F1> dxfr++"_(VGR0-1)_","_(X2-2)_",HH++"_%BCG_",YF" X %XMSG
 Q
NOMOD(SH) N %NOMOD S %NOMOD=$$NOMOD1($G(@(%REFH1_"SH)")))
 Q %NOMOD
NOMOD1(ST) ;
 N ST1 S ST1=$P(ST,RZD,$L(ST,RZD))
 I $E(ST1,1,2)="@@" Q $S($E(ST1,3)="!":2,1:1)
 Q 0
ZAPR ;
 D ZAPR^%L3MBG2
 Q
ER ;
 X %XMSGV("ER") K %L1GET S %SC("ER")=1 S:$D(%MOLD) %S=%MOLD S:$G(%MODIF)>0 %MODIF=%MODIF-1 Q
 I $P(%MBG("NEW"),"\",J)'="Y" S $P(%MBG("NEW"),"\",J)=""
 S $P(@(%REFH1_"SH)"),RZD,J)=$G(%MOLD) I $G(%MODIF)>0 S %MODIF=%MODIF-1
 Q
DEL Q:$G(%NOMOD)  D DEL^%L3MBG2 ;
 Q
INIT D INIT^%L3MBG2
 S %NOMOD=0
 Q
ENDF ;
 N I,JJ S JJ=0
 F I=SH-SCH+1:1 Q:'$D(@(%REFH1_"I)"))  D
 .S JJ=JJ+1 I JJ>COLS S NPG=NPG+1,PG(NPG)=I-1,JJ=1,%PS=1
 S SHOLD=I S:SHOLD>0 SHOLD=SHOLD-1 I $G(%MBG("GWUL")),SHOLD'<%MBG("GWUL") S SHOLD=%MBG("GWUL")-1
 S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 K %SH00,%SCH00,%SCH00
 Q
ENDP ;
 N I,JJ S JJ=0
 F I=SH-SCH+1:1:SH-SCH+COLS Q:'$D(@(%REFH1_"I)"))  S JJ=JJ+1
 S SHOLD=I-'$D(^(I)) S:SHOLD>0 SHOLD=SHOLD-1 S:SHOLD<0 SHOLD=0
 S SCHOLD=SHOLD-PG(NPG),YOLD=VGR+((SCHOLD-1)*STEP)
 Q
POISK D POISK^%L3MBG2 G @%LAB
RBUA W:%CVET %LIGHT1,%CV("CF") K %L1RBCL D ^%L1RBUA X %XCL
 Q
CLR X %XCL K %SH00,%SCH00,%YY00
 Q
HELP ;
 D SAVE^%L3MBGG D
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 .X "ZL %L3MBGH K ^TMPS111($J) N I F I=2:1 Q:$T(+I)=""""  S ^TMPS111($J,I)=$T(+I)" S %S2V("LEFT")=5 X %chista W %CV("YF") D ^%S2VIEW
 D REST^%L3MBGG
 Q

%L3MBG1
%L3MBG1 ; INIT07/14/91 12:05 PM ] [ 08/18/2000  8:07 AM ] [ 07/23/93 11:27 AM ]
 N J,ZAPR
 I '$D(%MBG("LL")) S %MBG("LL")=78
 I '$D(%MBG("LR")) S %MBG("LR")=0
 F J=1:1 Q:'$D(%MBG("PAR",J))  S ZAPR=$P(%MBG("PAR",J),"#") D
 .S $P(%MBG("Z"),"\",J)=$P(ZAPR,";",2)
 .S $P(%MBG("X"),"\",J)=$P(ZAPR,";",3)
 .S $P(%MBG("INV"),"\",J)=$P($P(ZAPR,";",3),",",3)
 .I $P(%MBG("X"),"\",J)>%MBG("LR") S %MBG("LR")=$P(%MBG("X"),"\",J)
 .I $P(%MBG("X"),"\",J)<%MBG("LL") S %MBG("LL")=$P(%MBG("X"),"\",J)
 .S $P(%MBG("D"),"\",J)=$P($P(ZAPR,";",4),",")
 .S $P(%MBG("DR"),"\",J)=$P($P(ZAPR,";",4),",",2)
 .S %MAXD=$S($L($P(%MBG("Z"),"\",J))>$P(%MBG("D"),"\",J):$L($P(%MBG("Z"),"\",J)),1:$P(%MBG("D"),"\",J))
 .I $P(%MBG("X"),"\",J)-%MAXD<%MBG("LL") S %MBG("LL")=$P(%MBG("X"),"\",J)-%MAXD
 .S $P(%MBG("RGS"),"\",J)=$P(ZAPR,";",5)
 .S $P(%MBG("S"),"\",J)=$P(ZAPR,";",6)
 .S $P(%MBG("H"),"\",J)=$P(%MBG("PAR",J),"#",4)
 .S %MBGD=$P(%MBG("PAR",J),"#",2) I $E(%MBGD)="@" S $P(%MBG("DO"),"\",J)=$E(%MBGD,2,255) K %MBGD
 .;S $P(%MBG("C"),"\",J)=$P(%MBG("PAR",J),"#",3) I $P(%MBG("C"),"\",J)="" K $P(%MBG("C"),"\",J)
 S %MBG("COLG")=J-1
 S:%MBG("LR")>80 %MBG("LR")=80
 S:%MBG("LL")<0 %MBG("LL")=0
 K %MBG("PAR")
 Q

%L3MBG2
%L3MBG2 ;                                                 [ 19.01.07 10:51 ] [ 09.12.06 14:00 ] [ 28.11.06 15:55 ]
ZAPR ;
 N %GET S %GET(1)="",%TO="",^mbg($P)=2
 S %ZMSL="=" I $D(%MBG("=")),$D(%TOEQ) S OTB=".",%TO="" K %TOEQ Q
 ;;I $$HZGTOUCH^%L2MOUSE S %MBG("NOZAPR")=1
 I $G(%MBG("NOZAPR")) S OTB=".",%TO="" Q
 I %ENGLISH S %GET=" PAGE UP - <0>, CORRECT - <1>, NEXT PAGE - <ENTER>, EXIT - <ESC> "
 I '%ENGLISH,$$HZGTOUCH^%L2MOUSE S %GET=" {}ESC{} - miiql , {}1{} - owzl, {}ENTER{} `ad jqn, {}0{} - mcew jqn"
 I '%ENGLISH,'$$HZGTOUCH^%L2MOUSE S %GET=" {}ENTER{} - `ad jqn , {}ESC{} - miiql , {}1{} - owzl, {}0{} - mcew jqn"
 I '$$HZGTOUCH^%L2MOUSE D N^%L1GET
 I $$HZGTOUCH^%L2MOUSE D
 .N %GETIN S %GETIN=$S($D(%PRX):"ENTER",1:"ESC") K %PRX
 .S %S="" D HZG^P1HZGKEY(%GET)
 .I %TO S %S=%TO
 .I %TO="F10" S %S=0,%TO="" Q
 .I %TO="F1" S %S=1,%TO="" Q
 .I %TO="ENTER" S %S="",%TO="" Q
 .I %TO="" S %S=""
 X %XCL
 I %TO="=" S %TO="END"
 S OTB=$G(%S)
 I %TO="UP",OTB="" S OTB=1,%TO=""
 I %TO="DW" S %TO=""
 I %TO="END" S OTB=""
 I %TO="END",$D(%MBG("ENDPAGE")),$D(@(%REFH1_"SH-SCH+COLS)")),SH-SCH+COLS+1'>%MBG("GWUL") S %TO="",OTB=""
 I %TO="END" S OTB=".",%TO=""
 I OTB=0!($G(%TO)="PGUP") Q:NPG'>1  S NPG=NPG-1 Q
 I OTB="",'$D(@(%REFH1_"SH-SCH+COLS)")) W *7 D ER G ZAPR
 I OTB="",SH-SCH+COLS+1>%MBG("GWUL") W *7 D ER G ZAPR
 I OTB="" S NPG=NPG+1,PG(NPG)=SH-SCH+COLS Q
 S:OTB="/"!(OTB="u") OTB="." I OTB'="."&(OTB'=1) W *7,*7 H 1 G ZAPR
 Q
ER ;
 X %XMSGV("ER") K %L1GET
 Q
DEL ;
 K %L1DS,%SC("NODEL")
 I $D(%MBG("DELUS")) X %MBG("DELUS") E  Q
 Q:$D(%SC("NODEL"))  G DEL1
DELS(SH) ;
DEL1 ;
 K YOLD,SHOLD,SCHOLD,SH0 N %II,%I1,%JJ
 S SH0=SH
 F %II=SH:1 Q:'$D(@(%REFH1_"%II+1)"))  D
 .S MAC1=%REFH1_(%II+1)_")"
 .K @(%REFH1_"%II)")
 .S MAC2=%REFH1_%II_")"
 .D ^%S1GC1
 K @(%REFH1_"%II)")
 F %I1=1:1 Q:'$D(PG(%I1))  S NPGL=%I1
 I PG(NPGL)=(%II-1),NPGL>1 K PG(NPGL)
 S %LASTSH=0 I %II=SH S %LASTSH=1
 I %II=SH,SCH=1,SH>1 S SCHOLD=COLS-1,SHOLD=SH-2,YOLD=STEP*(COLS-1)+VGR S %TO="PGUP" G EDEL
 I %II=SH,SCH>1 S SCHOLD=SCH-2,SHOLD=SH-2,YOLD=STEP*SCHOLD+VGR-STEP,SH=SH-1,SCH=SCH-1 D  G EDEL
 .F JJ=1:1:COLG S @$P(%MBG("O"),"\",JJ)=$P($G(@(%REFH1_"SH-1)")),RZD,JJ)
 K %MODIF
 I SH>1 S SHOLD=SH-1
 I SCH>1 S SCHOLD=SCH-1
 I %YY+1>(VGR+STEP) S YOLD=%YY-STEP
EDEL I $D(%MBG("DEL")) X %MBG("DEL")
 Q
INIT S:'$D(NPG) NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 I $D(%MBG("PAR"))>9 D ^%L3MBG1
 S:'$D(%MBG("OU")) %MBG("OU")=""
 S %HBRY="" N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":^%ET"
 S %ENGSCR=0 I %ENGLISH S %ENGSCR=1
 S %BCG="CB" I %TYPCRT["VT" S %BCG="BB"
 S VGR0=$G(%MBG("VGR0"),1),VGR=$G(%MBG("VGR"),3)
 S Y1=VGR0,X1=%MBG("LL"),Y2=$G(%MBG("NGR"),24)
 S COLG=%MBG("COLG")
 S XX0=$G(%MBG("LR"),70),X2=XX0+1 S:XX0>79 XX0=79
 ;;I $G(^SCR(%SCRN))="E" S X1=X1+1,X2=X2+1
 S STEP=$G(%MBG("STEP"),1) I STEP'>0 S STEP=1
 S RSCR=Y2-VGR-1 ;-STEP ;2
 I $$HZGTOUCH^%L2MOUSE,Y2>21 S RSCR=RSCR-(Y2-21)
 S VGR2=VGR-STEP
 ;S COLS=RSCR\STEP+(STEP>1),SCH=0,SH=PG(NPG)
 S COLS=RSCR\STEP,SCH=0,SH=PG(NPG)
 S %REFH1=$G(%MBG("REF"),"^MBG($P")
 I %REFH1["(",$E(%REFH1,$L(%REFH1))'="," S %REFH1=%REFH1_","
 I %REFH1'["(" S %REFH1=%REFH1_"("
 I $D(%MBGSAVE),$D(^mbg($P))>9,$G(^mbg($P))'=2,'$D(%L3MBG),$D(%L3MBGST) D
 .S ^mbg($P)=2
 .F  S %GET=" 0 - ieaib uaew wegnl , 2 - xfgyl `l ,1 - ieaib uaewn mipezp xfgyl" D N^%L1GET Q:"012"[%S&($L(%S)=1)  W *7
 .I %S=0 K ^mbg($P) Q
 .I %S=1 N MAC1,MAC2 S MAC1="^mbg($P)",MAC2=$E(%REFH1,1,$L(%REFH1)-1)_")" D ^%S1GC1 N %SC D PS^%L3MBG
 Q
POISK ;
 ;--- %L3MBGHIP - STRING LE HIPUS
 ;    %L3MBGHIP("H") - HEBREW TEXT
 ;    %L3MBGHIP("1") - HIPUS MI HATHALA
 ;    %L3MBGHIP("=") - HIPUS MEDUJAK
 ;    J - MISP AMUD LE HIPUS
 N GRF,I,I1,II,JJ,JPOISK,NPGOLD,OK,PRHBR,STR,%YYOLD
 ;
 I $D(%MBG("LINE")),$G(%SH00),$G(%YY00),$G(%SCH00) D
 .N %YY,%YYYY,SH,SCH K %MBGLIGHT S %YYYY=%YY00,SH=%SH00,SCH=%SCH00 D PL^%L3MBG
 ;
 S %YYOLD=%YY,SHOLD=SH,SCHOLD=SCH,NPGOLD=NPG,JPOISK=J,I1=SH
 D PRHBR
 ;
 I $G(%L3MBGHIP("COL")) N J
 I $D(%L3MBGHIP),$G(%L3MBGHIP("COL"))=0 D  K %L3MBGHIP G:'OK NOK G EP
 .S I=%L3MBGHIP,OK=0 Q:'$D(@(%REFH1_"I)"))  Q:I<(SH-SCH+1)  Q:I>(SH-SCH+%LASTL)  S STR=$G(@(%REFH1_"I)"))
 .S GRF=$P(STR,RZD,J)
 .S %EQ=$D(%L3MBGHIP("="))
 .S SCH=I-PG(NPG),SH=I
 .S %YY=VGR+(STEP*SCH)-1
 .S %YYYY=%YY,J=JPOISK S %LAB="INC1",OK=1
 ;
 I $D(%L3MBGHIP) D  K %L3MBGHIP G:I1 P1 G P11
 .S %HIP=%L3MBGHIP,%FND=0,PRHBR=$G(%L3MBGHIP("H"),PRHBR),%EQ=$D(%L3MBGHIP("="))
 .I $D(%L3MBGHIP(1)) S NPG=1 D INIT S I1=0
 .I $D(%L3MBGHIP("COL")) S J=%L3MBGHIP("COL")
 ;
 ;----- '$D(%L3MBGHIP)
ZP S %FL="",%ZMSF="",%ZMSF("LR")=""
 S %SAY=", -->  dpini , <-- dl`ny dcenr "
 I $D(%MBG("MIUN")) S %SAY=" <F10> - dlrnln ,<F9> - dhnln oein "_%SAY
 X %XMSGN
 S %GET="++"_(VGR-1)_","_($P(%MBG("X"),"\",J)+1)_",H#"_$G(%HIP)_"++"_$P(%MBG("D"),"\",J)_","_$S(PRHBR:"H",1:"E")_",I"
 D ^%L1GET D RCAV
 I $P(%MBG("RGS"),"\",J)="H",%TO="F10" S %SAY=" ! dhnln wx oein ozip dfd dcya " X %XMSGV(1) G ZP
 I $G(%TO)="F10"!($G(%TO)="F9"),'$D(%MBG("MIUN")) S %SAY=" ! oiinl ozip `l " X %XMSGV(1) G ZP
 I $G(%TO)="F10"!($G(%TO)="F9"),$D(%MBG("MIUN")) D  D PS^%L3MBG S %SAY="*++"_(VGR-1)_","_$P(%MBG("X"),"\",J)_",HH" X %XMSG K %HIP S %LAB="L0" G EP
 .S %SAY=" ... oeinl oznd `p` " X %XMSGN
 .K ^mbgsort($P),^mbgsort1($P) N IND,N,I,MAC1,MAC2
 .F I=1:1 Q:'$D(@(%REFH1_"I)"))  S STR=$G(@(%REFH1_"I)")) D
 ..I $P(%MBG("RGS"),"\",J)="H" D  G SORT
 ...S IND=$$INV^%L1FRM($P(STR,RZD,J))
 ...S IND=$E(IND_$J("",10-$L(IND)),1,10)_$J(I,5)
 ..I %TO="F9" D
 ...I $P(%MBG("RGS"),"\",J)="D" S IND=$E($J($$^%L1DC($P(STR,RZD,J),3),10),1,10)_$J(I,5) G SORT
 ...I $P(%MBG("RGS"),"\",J)="E"&$P(%MBG("DR"),"\",J) S IND=1900000000+$J($P(STR,RZD,J)*100,0,0)_$J(I,5) G SORT
 ...S IND=$E($J($P(STR,RZD,J),10),1,10)_$J(I,5)
 ..I %TO="F10" D
 ...I $P(%MBG("RGS"),"\",J)="D" S IND=$E($J(99999-$$^%L1DC($P(STR,RZD,J),3),10),1,10)_$J(I,5) G SORT
 ...S IND=$E($J(1000000000-$P($P(STR,RZD,J)*100,"."),10),1,10)_$J(I,5)
SORT ..S ^mbgsort($P,IND)=I
 .S MAC1=%REFH1 I $E(%REFH1,$L(%REFH1))="," S MAC1=$E(%REFH1,1,$L(%REFH1)-1)
 .S:$E(MAC1,$L(MAC1))'=")" MAC1=MAC1_")"
 .S MAC2="^mbgsort1($P)" D ^%S1GC1
 .K @MAC1 S N="",I=0 F  S N=$O(^mbgsort($P,N)) Q:N=""  D
 ..S I=I+1,IND=+^(N)
 ..S @(%REFH1_"I)")=^mbgsort1($P,IND)
 .K ^mbgsort($P),^mbgsort1($P)
 .S (SHOLD,SCHOLD)=0,YOLD=VGR2 K NPG D INIT
 .;;S (SH,SCH)=1 D SETM^%L3MBG
 I $G(%TO)="TAB"!($G(%TO)="LEFT"),$P(%MBG("X"),"\",J+1) S J=J+1 K %HIP D PRHBR G ZP
 I $G(%TO)="TABN"!($G(%TO)="RIGHT"),$P(%MBG("X"),"\",J-1) S J=J-1 K %HIP D PRHBR G ZP
 I $G(%TO)="END"!(%S="") S J=JPOISK S %LAB="INC1" G EP
 S %HIP=%S,%FND=0
 ;
 ;--------------- OTO DAF
P1 S %YY=$S(I1:%YYOLD,1:VGR2),%FND=0
 F I=I1+1:1:SH-SCH+COLS Q:'$D(@(%REFH1_"I)"))  S STR=$G(@(%REFH1_"I)")) D  Q:%FND
 .S %YY=%YY+STEP S GRF=$P(STR,RZD,J)
 .D HIP
 I %FND S SCH=I-PG(NPG),SH=I,%YYYY=%YY,J=JPOISK S %LAB="INC1" G EP
 ;
 ;--------------- DAF AHER
 G P12 ;S NPG=NPG+1,PG(NPG)=SH-SCH+COLS G P12
 N I1 S I1=SH-SCH+COLS
P11 ;
P12 X %XCL K %SH00,%SCH00,%YY00
 F I=I1+1:1 Q:'$D(@(%REFH1_"I)"))  S STR=$G(@(%REFH1_"I)")) D  Q:%FND
 .S GRF=$P(STR,RZD,J) D  D HIP
 ..I '(I-1#COLS),I-1'=I1 S NPG=NPG+1,PG(NPG)=I-1
 S J=JPOISK
 I %FND S SHOLD=I-1,SCHOLD=SHOLD-PG(NPG),YOLD=VGR2+(SCHOLD*STEP),XOLD=J
 I '%FND S NPG=NPGOLD,SHOLD=SHOLD-1,YOLD=%YYOLD-STEP,SCHOLD=SCHOLD-1 S %SAY=" `vnp `l " X %XMSGN(1)
 N J1 F J1=J:1:COLG Q:$P(%MBG("OU"),"\",J1)?.P
 S XOLD=J1 K J1
 D PS^%L3MBG S %LAB="L0"
EP S %TO="" S %SAY="" X %XMSGN Q
 ;
NOK S %SAY=" `vnp `l " X %XMSGN(1) K %HIP S %YY=%YYOLD,J=JPOISK S %LAB="ML" G EP
 ;
RCAV ;
 S %SAY=$TR($J("",$P(%MBG("D"),"\",J))," ","-")_"++"_(VGR-1)_","_$P(%MBG("X"),"\",J)_",H"
 X %XMSG
 Q
HIP ;
 I $D(%EQ)," "_GRF=(" "_%HIP)&'PRHBR!((GRF_" ")=(%HIP_" ")&PRHBR) S %FND=1 Q
 ;;I '$G(%EQ)," "_GRF[(" "_%HIP)&'PRHBR!((GRF_" ")[(%HIP_" ")&PRHBR) S %FND=1 Q
 I '$G(%EQ),'PRHBR D  Q
 .S %FND=1
 .N JJ,WRD F JJ=1:1:$L(%HIP," ") D  Q:'%FND
 ..S WRD=$P(%HIP," ",JJ)
 ..I " "_GRF'[(" "_WRD) S %FND=0
 I '$G(%EQ),PRHBR D  Q
 .N JJ,JJ1,WRD F JJ=1:1:$L(%HIP," ") D  Q:'%FND
 ..S %FND=1
 ..S WRD=$P(%HIP," ",JJ)
 ..F JJ1=" ",";",",","/","-" I GRF_" "[(WRD_JJ1) S %FND=2
 ..Q:%FND>1
 ..F JJ1="l","d","a","e" I GRF_" "[(WRD_JJ1)&(JJ<$L(%HIP," ")) S %FND=2
 ..S %FND=%FND-1
 Q
PRHBR S PRHBR=$S($P(%MBG("RGS"),"\",J)["H":1,1:0)
 Q
SUM(%RKV,%SRKV,%PR,%RZD) ;
 ;-- %RKV  - FIELD NAME
 ;-- %SRKV - TOTAL FIELD NAME
 ;-- %PR=1 - TOTAL BY GLOBAL ONLY (NOT MEMORY %RKV VALUE)
 N %A,%I,%NB
 I '$D(%RZD) S %RZD="\"
 S @%SRKV=0
 S %NB=$G(^SCR(%SCRN,"G","NAME",%RKV)) Q:'%NB
 I '$G(%PR),$G(SH) S @%SRKV=@%SRKV+@%RKV
 F %I=1:1 Q:'$D(@(^SCR(%SCRN,"G","REF")_",%I)"))  S %A=$G(^(%I)) D
 .S @%SRKV=@%SRKV+$S($G(%PR)!($G(SH)'=%I):$P(%A,%RZD,%NB),1:"")
 Q
UN(%SCRN,%S) ;--- BDIKA IM PARIT YAHID BTAVLA
 N N,I,NOTOK,SH00,%MSP,%DLM
 N GLBCUR
 S NOTOK=0,SH00=SH
 S %DLM=^SCR(%SCRN,"G","RZD")
 S %MSP=%S
 S %L3MBGHIP=%MSP,%L3MBGHIP(1)=1,%L3MBGHIP("=")=""
 S GLBCUR=^SCR(%SCRN,"G","REF")_","""_SH_""")"
 S N=-1 F I=1:1 S N=$N(@(^SCR(%SCRN,"G","REF")_","""_N_""")")) Q:N=-1  I N'=SH,$L(%MSP),%MSP=$P($G(^(N)),%DLM,$G(J,1)) S NOTOK=NOTOK+1 Q
 I NOTOK'>0 K %L3MBGHIP
 I NOTOK>0 S %GET=" <F9> - blcl . dcerza clwed xak xtqn " D N^%L1GET S:%TO="F9" %S=99 G:%S'=99 UNER D  G UNEND
 .I %MOLD?.P,($O(@GLBCUR)'?1N.N) S %SC("ER")=1 S @GLBCUR="" D SETM^%L3MBG D DEL^%L1GSEQ(^SCR(%SCRN,"G","REF")_")",SH) Q
 .S @^SCR(%SCRN,"G","NM",J)=%MOLD
UNEND Q
UNER S %SC("ER")=1 K %L3MBGHIP
 I %MOLD?.P,($O(@GLBCUR)'?1N.N) D DEL^%L1GSEQ(^SCR(%SCRN,"G","REF")_")",SH)
 Q

%L3MBGG
%L3MBGG ; [ 12.03.09 13:05 ] [ 12.02.07 14:15 ] [ 30.12.03 12:19 ]
 I $P(%MBG("FNC"),"\",J)[%TO&(%TO'="") Q
 N SHGG,COLGG S SHGG=SH,COLGG=COLG S JOLD=J
 N FILE,SH,SCH,YOLD,XOLD,SHOLD,SCHOLD,Y000,%YYYY,%XX,%YY
 N X1,X2,Y1,Y2,%L1SCS,COLS,STRING,%RZDF,%GGSOLD
 S %L1SCS="" K %PL
 S (STRING,%GGSOLD)=%S,FILE=$P(%MBG("GLOB"),"\",J)
 S:$E(FILE)'="^" FILE="^"_FILE I FILE["(" S %SC("ST")="" G END
 S %RZDF=$P(%MBG("RZDF"),"\/",J)
 S FILE(1)=$P(%MBG("D"),"\",J),FILE(2)=$P(%MBG("NLN"),"\",J),FILE(3)=$P(%MBG("TOPB"),"\",J)
 S:FILE(1)="" FILE(1)=8 S:FILE(2)="" FILE(2)=30 S:FILE(3)="" FILE(3)=8
 I $G(%TO)="F6"!($G(%TO)="F7")!((%GGSOLD="*")!(%GGSOLD="?")&($G(%TO)="")) D SAVE D  D REST G END
 .S FLAG=""
 .S:STRING="*"&($G(%TO)="") %TO="F7",%GGSOLD="" S:STRING="?"&($G(%TO)="") %TO="F6",%GGSOLD=""
 .D @$S($G(%TO)="F7":"DAFUS^%L3MBGS",1:"POISK^%L3MBGS") I $G(FLAG)'=""!'$D(STRING) S %SC("ST")="" Q
 .S (@$P(%MBG("O"),"\",JOLD),%GGSOLD)=STRING D VRB
 I @$P(%MBG("O"),"\",J)="",$P(%MBG("NEW"),"\",J)="Y",$P(%MBG("FNC"),"\",J)'[%TO!(%TO="") S %SC("ER")="" G END
 I @$P(%MBG("O"),"\",J)="",$P(%MBG("NEW"),"\",J)="Y" G END
 I @$P(%MBG("O"),"\",J)="",$P(%MBG("VRB"),"\",J)?1U.E S @$P(%MBG("VRB"),"\",J)="" G END
 ;
 I @$P(%MBG("O"),"\",J)'="",@$P(%MBG("O"),"\",J)'=0 D  G:$D(%SC("ER"))!$D(%SC("ST")) END D VRB G END
 .I '($D(@(FILE_"(STRING)")))#2 D  Q
 ..I $P(%MBG("CREAT"),"\",J)?.P,$P(%MBG("CHECK"),"\",J)'?.P S %SC("ER")="" Q
 ..I $P(%MBG("CREAT"),"\",J)?.P,$P(%MBG("CHECK"),"\",J)?.P Q
 ..K %L1GET S %GET="<F9> - miwdl . miiw `l" D N^%L1GET S:%TO="F9" %S=99 I %S'=99 D  Q
 ...I $P(%MBG("NEW"),"\",J)="Y" S %SC("ER")="" Q
 ...S %SC("ST")="" D VRB Q
 ..N GLOB,%PROG,RZD,NSNAME,TB,DL,SG
 ..S GLOB=$P($E(FILE,2,20),"(") S %SC("ST")="" I $D(^TABLs(GLOB)) D SAVE D  D REST Q
 ...I $G(%SCRN)'="",$D(^TABLs(GLOB,"PROG",%SCRN)) S %PROG=^(%SCRN) N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%PROG,STRING,GLOB) D ^%L1C S:$G(^TABLs(GLOB,"KEY"))?."%"1U.E @^("KEY")=$G(STRING) D PROGSET,@%PROG Q
 ...I $D(^TABLs(GLOB,"PROG")) D  Q
 ....S %PROG=^("PROG") ;;N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%PROG,STRING,GLOB) D ^%L1C S:$G(^TABLs(GLOB,"KEY"))?."%"1U.E @^("KEY")=$G(STRING) D PROGSET,@%PROG Q
 ....I $D(^TABLs(GLOB,"UCI")) S %PROG=%PROG_"["_^("UCI")_"]"
 ....S:$G(^TABLs(GLOB,"KEY"))?."%"1U.E @^("KEY")=$G(STRING)
 ....D ^%L1CALL(%PROG,$G(%SCRN),$G(^TABLs(GLOB,"KEY")))
 ...N FILE D I^%L1TABL
 ..D SAVE S NSNAME=$P(%MBG("NS"),"\",J) D ^%L1SCS D REST I $G(%TO)="END" S %SC("ST")="" Q
 ..S (@$P(%MBG("O"),"\",JOLD),%GGSOLD)=STRING
END S J=JOLD S %TO="",%S=%GGSOLD
 Q
PROGSET ;
 S %PROG("STRING")=$G(STRING)
 Q
SAVE D:'$D(%TYPCRT) ^%L1C I %TYPCRT="PC" D GET^%VIDEO("olds",0,1,80,25,2) Q
 I $E(%TYPCRT,1,3)="VT5",'$D(%NOVIDEO) W $C(27,91),";;;;;;;2$v" S %SC("TO")="PL" Q
 Q
REST D:'$D(%TYPCRT) ^%L1C ;
 I %TYPCRT="PC",'$L($G(%SCRN)) D PUT^%VIDEO("olds",0,1,80,25,2) K olds S %SC("TO")="PL" Q
 I $E(%TYPCRT,1,3)="VT5",'$D(%NOVIDEO) W $C(27,91),";;;;2;;;$v" S %SC("TO")="PL" Q
 I $L($G(%RESTPRG)) X %RESTPRG Q
 I $L($G(%SCRN)) N J,STRING,FILE,%SCNC K %L1SCBEG D A^%L1SC
 Q
VRB ;
 Q:$D(%SC("ER"))!($G(%SC("ST"))="ER")
 Q:$P(%MBG("VRB"),"\",J)'?1U.E
 I @$P(%MBG("O"),"\",J)="" S @$P(%MBG("VRB"),"\",J)="" Q
 N VRB S VRB=$G(@(FILE_"(STRING)")) I %RZDF'="" S VRB=$P(VRB,%RZDF)
 S @$P(%MBG("VRB"),"\",J)=VRB
 I '$D(%SC("ER")),$G(%SC("ST"))'="ER" F JJ=1:1:COLGG S $P(@(%REFH1_"SHGG)"),RZD,JJ)=$G(@$P(%MBG("O"),"\",JJ))
 Q

%L3MBGH
%L3MBGH ; [ 02/14/99  6:26 AM ] [
 ;-------------------------------------------------------------------;
 ;                         <ESC> -  dxfrn z`vl                       ;
 ;-------------------------------------------------------------------;
 ;         <CTRL+^> e`  <PGUP> -                `ad sc               ;
 ;         <CTRL+N> e`  <PGDN> -               mcew sc               ;
 ;                      <END>  -             dlah seql               ;
 ;                      <CTRL+HOME>-       dlah zligzl               ;
 ;                      <HOME> -            jqn zligzl               ;
 ;                                                                   ;
 ;                      <F3>   -     dlrnl zvaynn oezip wizrdl       ;
 ;          <CTRL+F> e` <F8>   -          oein / yetig               ;
 ;                                                                   ;
 ;                     <CTRL+E> -           dxey wegnl               ;
 ;                     <CTRL+G> -           dxey ltkyl               ;
 ;                     <CTRL+T> -         POP-UP hixtz               ;                       ;
 ;                     <CTRL+X>  -              oeaygn               ;
 ;                                                                   ;
 ;      <ESC> miinrt  e`  <=>   -                 d`ivi              ;
 ;-------------------------------------------------------------------;

%L3MBGR
%L3MBGR(GL,NR,DLM,STG) ; %MBG GRAPH [ 29.12.00  6:16 AM ] [ 18.05.00  1:57 PM ] [ 17.05.00  5:10 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,GL,NR,DLM,STG) D ^%L1C
 S DL=78 K ^TMPS111($J),%S2V
 S CVG=%CV("YF")
 S KVD=$S(%TYPCRT="PC":$C(223),1:"=")
 S KVD2=$S(%TYPCRT="PC":$C(222),1:"-")
 S KVD3=$S(%TYPCRT="PC":$C(221),1:"[")
 S KVV=$S(%TYPCRT="PC":$C(179),1:"|")
 S STG1=$$SPA^%L1FRM(STG)
 S %S2V("TXT1")=STG1
 S NRA=$L(STG1,":")-NR-1
 D SUM I 'SUM S %SAY=" ! sxb bivdl zexyt` oi` . 0 `ed oezp k""dq " X %XMSGV(1) Q
 ;I %TYPCRT["VT" W *27,"(0"
 S N="" F  S N=$O(@GL@(N)) Q:N=""  S A=$P($G(^(N)),DLM,1,$L(STG1,":")-2) D
 .S SM=80-$L(STG1)\2+1
 .S TXT=" "_%LIGHT1_CVG_KVV_%CCL_$J("",SM-2)_$$MCH(A,DLM,STG1,":",NR) D S1
 .S VL=$P(A,DLM,NRA)
 .S DL1=$S('SUM:0,1:DL*VL/SUM)
 .I DL1>DL S DL1=DL+1
 .I DL1'<.75 S TXT=" "_KVV_$TR($J("",DL1)," ",KVD) D S2
 .I DL1<.75,DL1>.3 S TXT=" "_KVV_KVD2 D S2
 .;;I DL1'>.3,DL1>.1 S TXT=" "_KVV_KVD3 D S2
 .I DL1'>.3,DL1>0 S TXT=" "_KVV_KVV D S2
 .I DL1<0,DL1>-.3 S TXT=KVV_KVV D S2
 .I DL1'>-.3,DL1>-.7 S TXT=KVD2_KVV D S2
 .I DL1<-.7 S TXT=KVD_KVV D S2
 S %S2V("PRINT")=""
 S %S2V("PRINT","KOT")=$P(STG1,":",NR+1)_" itl sxb "
 S %S2V("PRINT","KOT",1)=$J("",SM)_$TR($J("",$L(STG1))," ","-")
 S %S2V("PRINT","KOT",2)=$J("",SM)_STG1
 S %S2V("PRINT","KOT",3)=%S2V("PRINT","KOT",1)
 S %S2V("RIGHT")=125
 X %chista
 D ^%S2VIEW
 ;I %TYPCRT["VT" W *27,"(B"
 K ^TMPS111($J)
 Q
SUM ;
 S SUM=0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  S A=$G(^(N)) S SUM=SUM+$P(A,DLM,NRA)
 Q
S1 ;
 S ^TMPS111($J,$O(^TMPS111($J,9999999),-1)+1)=TXT
 Q
S2 ;
 S ^TMPS111($J,$O(^TMPS111($J,9999999),-1)+1)=%LIGHT1_CVG_TXT_%CCL
 Q
MENU(%SCRN) ;
 Q:'$D(^SCR(%SCRN,"G","REF"))
 Q:$G(^SCR(%SCRN,"G","REF"))'["("
 Q:'$D(^SCR(%SCRN,"G","RZD"))
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%SCRN) D ^%L1C
 S GL=^SCR(%SCRN,"G","REF")
 S STG=$$SPA^%L1FRM(^("STG")),RZD=^("RZD")
 I $E(GL,$L(GL))="," S GL=$E(GL,1,$L(GL)-1)
 I $E(GL,$L(GL))'=")" S GL=GL_")"
 S M(0)=" : sxbl oezp xegal `p "
 S M(1)=" d ` i v i "
 S J=1 K MI
 F I=2:1:$L(STG,":") D
 .I $G(^SCR(%SCRN,"G",I,"TYP"))'="N" Q
 .S J=J+1
 .S M(J)=$$SPA^%L1FRM($P(STG,":",$L(STG,":")-I))
 .S MI(J)=$L(STG,":")-I-1
 I '$D(M(2)) S %SAY=" ! g""eca mixtqn mipezp oi` " X %XMSGV(1) Q
 I '$D(M(3)) S %I=2 G GR
 S MAC="M"
 D ^%L2MENU Q:%I=1
GR D %L3MBGR(GL,MI(%I),RZD,STG)
 Q
MCH(%ST1,%D1,%ST2,%D2,%NR) ;
 N %MP,%I,%ST3,%SMB S %ST3=" "
 F %I=1:1:$L(%ST1,%D1) D
 .S %RV=$P(%ST1,%D1,$L(%ST1,%D1)-%I+1)
 .S %SMB=$$HBR^%L1FRM(%RV,$L($P(%ST2,%D2,%I+1)))
 .I %I=%NR S %SMB=%LIGHT1_CVG_%SMB_%CV("BF")_"*"_%CCL S %ST3=%ST3_%SMB
 .E  S %ST3=%ST3_%SMB_" "
 Q $E(%ST3,1,$L(%ST3)-1)

%L3MBGS
%L3MBGS ;                          [ 31.05.06 09:16 ] [ 17.01.06 18:20 ] [ 12.09.05 18:50 ]
DAFUS ;
 K STRING N %L1,INDEX,MAC,KOD,%FIRST,%I
 N I,INDEX,SH,SCH,%ECHO,SHEM1,SHEM2
 N I,J,N,N1,IN,IN1
 S:$G(FILE(1))="" FILE(1)=8 S:$G(FILE(2))="" FILE(2)=30 S:$G(FILE(3))="" FILE(3)=8
 D UCI
 S MAC=FILE S %HBRY="" K %L1
 I $D(FILE("RB")) S %L1("RB")=""
 S N="" F I=1:1 S N=$O(@FILE@(N)) Q:N=""  Q:I>36
 ;;I $G(%S)'="",%S'?."0",$G(%MSC("FNC"))["FF"!($G(%MBG("FNC"))["FF") D  Q:$G(%TO)="END"
 I $G(%S)'="",%S'?."0",I>36 D  Q:$G(%TO)="END"
 .N %SO S %SO=%S I %S?1N.N S %S=+%S
 .S %FL="" S %GET=": F7 - mlek, F8 - cew llek ,<ENTER> - cewn yetig#13" S %GETIN=%S
 .I %ENGLISH S %GET="SEARCH :(F7 - ALL, F8 - INCUDING CODE ,<ENTER> - FROM CODE#13" S %GETIN=%S
 .D N^%L1GET K %GETIN Q:$G(%TO)="END"  I $G(%TO)="F7" S %S=""
 .I $$HZGTOUCH^%L2MOUSE S %S=%SO
 .I $G(%TO)="",%S'="" D  S MAC="^L3MBGS($J)" Q
 ..K ^L3MBGS($J) N N,I,SS,J1
 ..S N="" F  S N=$O(@FILE@(N)) Q:N=""  I N'<%S S ^L3MBGS($J,N)=""
 .I $G(%TO)="F8",%S'="" D  Q
 ..S J1=0 F I=$L(%S):1:FILE(1) S SS=%S_$TR($J("",I-$L(%S))," ",0) S:$D(@FILE@(SS)) ^L3MBGS($J,SS)="" S N=SS D
 ...F  S N=$O(@FILE@(N)) Q:N=""  Q:$E(N,1,$L(%S))'=%S  S ^L3MBGS($J,N)=""
 ..S J1=0 F I=$L(%S):1:FILE(1) S SS=$TR($J("",FILE(1)-I)," ",0)_%S_$TR($J("",J1)," ",0) S:$D(@FILE@(SS)) ^L3MBGS($J,SS)="" S N=SS D  S J1=J1+1
 ...F  S N=$O(@FILE@(N)) Q:N=""  Q:$E($$NULL^%L1FRM(N),1,$L(%S))'=%S  S ^L3MBGS($J,N)=""
 ..S MAC="^L3MBGS($J)"
 .;;I $G(%TO)="F8" S %L1("US")="$E(+%NXN_$P(%NXN,+%NXN,2,20),1,$L(%S))=%S"
 .I %S'="" U $P S %SAY="   ...oznd `p .dligza "_%S_" mr micew yetig  " X %XMSGV ;(1)
 I %S="" K %L1("US")
 S %L1("EU")=1,%L1("BE")=$G(FILE(3),6) ;;,%L1("NGR")=22
 D HZG
 D ^%L1NU K ^L3MBGS($J) S %TO=""
 Q:FLAG'=""  S STRING=INDEX Q
 Q
POISK ;
 Q:FILE["("
 N FL0 S FL0=$P($E(FILE,2,100),"(")
 I FL0["]" S FL0=$P(FL0,"]",2)
 I FL0["|" S FL0=$P(FL0,"|",2)
 Q:FL0=""  N %ZMSF S %ZMSF="",FLAG=""
 S %GET=$S($D(^TABLs(FL0,"FIND")):"( F6 - illk yetig )",1:"")_" my zlgzd ++24,60,HH,,,C#++15,H,I" ;;++++ agx yetig - my? "
 I %ENGLISH S %GET="BEGINNING OF NAME "_$S($D(^TABLs(FL0,"FIND")):"(ADVANCED SEARCH - F6 )",1:"")_"++24,20,EE,,,C#++15,E,I"
 D ^%L1GET I %S=""&(%TO'="F6")!($G(%TO)="END") S FLAG="AB" G EP
 I %TO'="F6" G PSK1
 N SHEM S SHEM=%S K STRING
 I $L($G(%SCRN)),$D(^TABLs(FL0,"FIND",%SCRN)) D  G:$D(STRING(1)) EP G PSKNU
 .D @(^(%SCRN))
 I $D(^TABLs(FL0,"FIND")) D  G:$D(STRING(1)) EP G PSKNU
 .D @^("FIND")
 G PSK1
PSK(%S) ; -- +FILE
PSK1 K STRING N %L1,INDEX,MAC,KOD,%FIRST,%I
 N I,INDEX,SH,SCH,%ECHO,SHEM1,SHEM2
 N I,J,N,N1,IN,IN1,%GET
 I '$D(%L3MBGSI) S %L3MBGSI="i"
 S:$G(FILE(1))="" FILE(1)=8 S:$G(FILE(2))="" FILE(2)=30 S:$G(FILE(3))="" FILE(3)=8
 S %HBRY="" D UCI
 I $E(%S,$L(%S))="?"!($E(%S)="?") D  G PSKNU
 .N SHEM,POS
 .I $E(%S)="?" S %S=$E(%S,2,$L(%S))
 .E  S %S=$E(%S,1,$L(%S)-1)
 .K ^TEMPi($P) S N="" F  S N=$O(@FILE@(N)) Q:N=""  S OK=1 D  I OK S ^TEMPi($P,N)=SHEM
 ..S SHEM=$P($G(^(N)),RZD)
 ..I $L(%S)>$L(SHEM) S OK=0 Q
 ..;;F I=1:1:$L(%S) I '$F(SHEM,$E(%S,I)) S OK=0 Q
 ..S POS=0
 ..F I=1:1:$L(%S) S POS=$F(SHEM,$E(%S,I),POS) I 'POS S OK=0 Q
 S %S=$TR(%S,",.;/()-","       ")
 S SHEM1=$P(%S," ",$L(%S," "))
 S SHEM2=$P(%S," ",$L(%S," ")-1) ;_" "
 D HIPUS(SHEM1)
 I SHEM2'?.P D
 .K ^TEMPi1($P) S MAC1="^TEMPi($P)",MAC2="^TEMPi1($P)" D ^%S1GC1 K ^TEMPi($P)
 .D HIPUS(SHEM2)
 .S N="" F  S N=$O(^TEMPi($P,N)) Q:N=""  I '$D(^TEMPi1($P,N)) K ^TEMPi($P,N)
 .K ^TEMPi1($P)
 Q:$D(P3PSK)
PSKNU S MAC="^TEMPi($P)" K %L1 S %L1("EU")=2,%L1("BE")=$G(FILE(3),8) ;;,%L1("NGR")=22
 ;S %L1("US")="$G(@(FILE_""(%NXN)""))_"" ""[SHEM2"
 D HZG
 D ^%L1NU
 I FLAG'="" K ^TEMPi($P) G EP
 S STRING=INDEX
 K ^TEMPi($P)
EP K %INV S %SAY="                ++24,60,HH" X %XMSG
 K %L3MBGSI Q
END Q
CREAT ;
 S %SAY="...oznd `p " X %XMSGN N %I
 I $E(FILE)'="^" S FILE="^"_FILE D UCI
 K @(FILE_"i")
 S STRING="",%I=0 I $D(^TABLs($E(FILE,2,8),"RZD")) S RZD=^("RZD")
 S:'$D(RZD) RZD="*"
 F  S STRING=$O(@(FILE_"(STRING)")) Q:STRING=""  D
 .I FILE="^NAME",$L($G(^(STRING,1))) D IND(^(1)) Q
 .I $D(@(FILE_"(STRING)"))#2 D IND(^(STRING))
 Q
IND(TOH) ;
 N %ST,IN,IN1,I,JJ S %ST=$TR(TOH,",.;""()-/","        ")
 F I=1:1:$L(%ST," ") S IN=$P($P(%ST," ",I),RZD) I IN'="" D
 .S:IN>0 IN=+IN I IN?1N.N!(IN?1U.U) S IN1=IN
 .E  S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 .S @(FILE_"i(IN1,STRING)")="" S %I=%I+1 I '(%I#100) W "."
 Q
UCI ;
 Q:FILE["["
 I $D(^TABLs($E(FILE,2,8),"UCI")) S FILE("UCI")=^("UCI")
 I $D(FILE("UCI")) S FILE="^["""_FILE("UCI")_"""]"_$P(FILE,"^",2)
 Q
HZG ;
 S:'$D(RZD) RZD="*" N RZDO S RZDO=RZD I $G(%RZDF)'="" S RZD=%RZDF
 N FL0 S FL0=$E(FILE,2,100) I FL0["]" S FL0=$P(FL0,"]",2)
 Q:FL0=""
 I $L($G(%SCRN)),$D(^TABLs(FL0,"HZG",%SCRN))#2 S %L1("TXT1")=^(%SCRN) S:$D(^TABLs(FL0,"SET"))#2 %L1("SET")=^("SET") S:$D(^TABLs(FL0,"HZGKOT",%SCRN))#2 %L1("T1")=^(%SCRN) G M1
 I $D(^TABLs(FL0,"HZG"))#2 S %L1("TXT1")=^TABLs(FL0,"HZG") S:$D(^TABLs(FL0,"SET"))#2 %L1("SET")=^("SET") S:$D(^TABLs(FL0,"HZGKOT"))#2 %L1("T1")=^("HZGKOT")
 I '$D(^TABLs(FL0,"HZG")) S %L1("TXT1")="$P($G(@FILE@(%NXN)),"""_RZD_""")<>"_FILE(2)_"H\/$S(FILE'=""^word"":%NXN,1:$$INV^%L1FRM(%NXN))<>"_FILE(1)
M1 S RZD=RZDO
 I $D(^TABLs(FL0,"FIRST"))#2 S %L1("FIRST")=^TABLs(FL0,"FIRST")
 I $L($G(%SCRN)),$D(^TABLs(FL0,"FIRST",%SCRN)) S %L1("FIRST")=^TABLs(FL0,"FIRST",%SCRN)
 I $L($G(FILE(6))) S %L1("US")=$G(%L1("US"),1)_"&("_FILE(6)_")" Q
 I $L($G(%SCRN)),$D(^TABLs(FL0,"US",%SCRN)) S %L1("US")=$G(%L1("US"),1)_"&("_^TABLs(FL0,"US",%SCRN)_")" Q
 I $D(^TABLs(FL0,"US"))#2 S %L1("US")=$G(%L1("US"),1)_"&("_^TABLs(FL0,"US")_")" Q
 Q
HIPUS(SHEM) ;
 N JJ,N,N1
 I $P(SHEM," ")?1U.U!($P(SHEM," ")?1N.N) S N=SHEM
 E  S N="" F JJ=1:1:$L(SHEM) S N=$E(SHEM,JJ)_N
 K ^TEMPi($P) S N1=N
 I '$D(@(FILE_%L3MBGSI))!($G(%TO)="R") S %SAY=" belhw oekcr oizndl `p " X %XMSGV H 1 D CREAT
 I $L(N1) I $D(@(FILE_%L3MBGSI_"(N1)"))>9 S JJ="" F  S JJ=$O(@(FILE_%L3MBGSI_"(N1,JJ)")) Q:JJ=""  S ^TEMPi($P,JJ)=$G(@FILE@(JJ))
 F  S N1=$O(@(FILE_%L3MBGSI_"(N1)")) Q:N1=""  Q:$$NOMATH(N1,N)  S JJ="" F  S JJ=$O(@(FILE_%L3MBGSI_"(N1,JJ)")) Q:JJ=""  S ^TEMPi($P,JJ)=$G(@FILE@(JJ)) ;""
 Q
NOMATH(N1,N) ;
 I $E(N1,1,$L(N))'=N Q 1
 Q 0

%L3MD
%L3MD(PORTN,NUMBER,US,MDLKH,MSG,LNG) ;       [ 16.12.03 10:36 ] [ 14.12.03 16:48 ] [ 08/13/2002  3:26 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PORTN,USERMOD,NUMBER,MDTONE,MDLKH,%L1MDOK,US,%DELAY,%L2MD,MSG,LNG)
 D ^%L1C,^%L1TS S %L1MDOK=0,%L2MD=""
 U $P S %SAY=" CTRL/C - CANCEL " X %XMSGV
 U $P S PRT=$P S $ZT="ZG "_$ZL_":ERR^%L3MD" K ^MODEM($P) S ^MODEM($P)="BEG"
 ;;S US="U PORTN:(0::::#001001:#800040:::$C(13))"
 S %S=MSG,%L1WH="",%L1WH("RB")="",%X1=4,%X2=74,%Y1=21,%Y2=23 D ^%L1WH
 S %L2MD("M","VG")=4,%L2MD("M","NG")=17,%L2MD("M","LG")=4,%L2MD("M","RG")=27
 W %LIGHT1,%CV("CF")
 D TV^%L1RBUA(%L2MD("M","VG"),%L2MD("M","LG"),%L2MD("M","NG")+2,%L2MD("M","RG")+1)
 W %LIGHT1,%CV("CF")
 S %L2MD("L","VG")=4,%L2MD("L","NG")=17,%L2MD("L","LG")=32,%L2MD("L","RG")=75
 D TV^%L1RBUA(%L2MD("L","VG"),%L2MD("L","LG"),%L2MD("L","NG")+2,%L2MD("L","RG")+1)
 X %XCL
 I $G(PORTN)>3 G ASK+1
ASK S %GET="I/O PORT? > ++3,3,EE#++2,E,I" D ^%L1GET S PORTN=%S G:PORTN="" EXIT
 I $P=PORTN!'PORTN D MSG("CANNOT SELECT YOUR OWN DEVICE.","M") G ASK
 C PORTN U $P:(CENABLE:CTRAP=$C(3)) O PORTN::0 E  D MSG("..LINE IN USE..WAITING..","M") O PORTN D MSG("READY","M")
 D HANGUP
 X US ;;I $ZB($ZA,2,1) D MSG("DEVICE "_PORTN_" IS AN OUTPUT ONLY DEVICE.","M") G ASK
INIT ;
 I $$CMD("AT+CSDUH="_$S(LNG:8,1:28)) G EXIT
 I 'LNG S MSG=$TR($$INV^%L1FRM($TR(MSG,"""","'")),TS0,TS1)
 I $$CMD("AT*CSWHT=0,"""_$TR(MSG,"""","'")_"""") G EXIT
 S %DT=0
 I $G(NUMBER) D DELAY G TP1
TP U $P:(CENABLE:CTRAP=$C(3)) S %GET="PHONE NUMBER > ++23,5,EE,,,,RF#++10,E,I" D ^%L1GET S NUMBER=%S G:NUMBER="" EXIT
TP1 X US S NUMBER=$TR(NUMBER,"-","") D CLPORT
 S ST="AT+CSMH=1,"""_NUMBER_""""_$C(13) W ST
 D MSG(ST,"M")
 S TXT=%HBR_$$HBR^%L1FRM($G(MDLKH),30)_" "_$$HBR^%L1FRM(NUMBER,10)_%ENG
 D MSGL(TXT,"L") X US
 H 3
 F I=1:1:60 R A:1 D  Q:OK  S ^MODEM("CONN",I)=A
 .I $F(A,"CONN") S OK=1 Q
 I OK'=1 D MSG(A,"M") G EXIT
 I OK=1 K ^MODEM($P) D MSG("MODEM IN USE !","M")
 S %L1MDOK=OK
EXIT H 1
 Q
ERR S %L1MDOK=$P($P($P($ZS,",",3),"<",2),">") G EXIT
HANGUP ;
 ;D ^%L1HANG
 Q
CLPORT X US ;
 F I=1:1:%DELAY R *A:0
 I A>0 F  R *A:1 E  Q
 Q
DELAY ;
 F %JJJ=1:1:%DELAY
 Q
MSG(TXT,PR) U $P:(NOECHO:NOWRAP)
 D SDVIG(PR)
 S %YY=%L2MD(PR,"NG"),%XX=%L2MD(PR,"LG")+1 X %POSIC
 W %LIGHT1,%CV($S(PR="M":"GF",1:"YF"))
 W $$ENG^%L1FRM($$SPA^%L1FRM($$CLA^%L1FRM(TXT)),%L2MD(PR,"RG")-%L2MD(PR,"LG")-1),%CCL
 Q
MSGL(TXT,PR) U $P:(NOECHO:NOWRAP)
 D SDVIG(PR)
 S %YY=%L2MD(PR,"NG"),%XX=%L2MD(PR,"LG") X %POSIC
 W %LIGHT1,%CV("YF"),TXT,%CCL
 Q
SDVIG(PR) ;
 I %TYPCRT="PC" D  Q
 .D GET^%VIDEO("l2md",%L2MD(PR,"LG")-1,%L2MD(PR,"VG")+1,%L2MD(PR,"RG")-%L2MD(PR,"LG")+1,%L2MD(PR,"NG")-%L2MD(PR,"VG"),2)
 .D PUT^%VIDEO("l2md",%L2MD(PR,"LG")-1,%L2MD(PR,"VG"),%L2MD(PR,"RG")-%L2MD(PR,"LG")+1,%L2MD(PR,"NG")-%L2MD(PR,"VG"),2)
 I $E(%TYPCRT,1,3)="VT5" D  Q
 .W $C(27,91),(%L2MD(PR,"VG")+2)_";"_%L2MD(PR,"LG")_";"_(%L2MD(PR,"NG")+1)_";"_%L2MD(PR,"RG")_";;"_(%L2MD(PR,"VG")+1)_";"_%L2MD(PR,"LG")_";$v"
 Q
CMD(%CMD) ;
 S %DC=0 S %DT=0,%Y=""
P0 X US D CLPORT S %ST=%CMD_$C(13)
 F %J=1:1:$L(%ST) W $E(%ST,%J) D DELAY
P01 X US R *%Y1:2 E  S %DC=%DC+1 G:%DC<12 P01:%DC#4,P0 D MSG("NO CARRIER","M") Q 1
 Q:%Y1=1 2
 I %Y1'=13 S %Y=%Y_$C(%Y1) G P01
 ;D MSG(%Y,"M")
 S %DT=%DT+1 S ^MODEM($P,"ATZ",%DT)=%Y
 Q:%Y1=1 3
 I %Y'["OK" G P01:%DT#24,P0:%DT<49 D MSG("NO CARRIER","M") Q 4
 S %DT=0
 Q 0

%L3MENU
%L3MENU ; VT220 OR PC [ 27.03.08 10:07 ] [ 08/20/2000  2:38 PM ] [ 05/21/97  7:49 AM ]
 U 0 ;S:'$D(%CL0) %CL0=44
 I '$D(%POSIC) D ^%L1C
 W %HBR K %L3MOPT
 I '$D(MAC) W *7,!!?5,"*** HASN'T NAME ARRAY !" Q
 I $D(@MAC)<10 W *7,!!?5,"*** HASN'T DATA !" Q
 S %L1TXT=MAC_"(0)"
 S %M=MAC_"(%I)" S %LL=0
 ; S:'$D(%CL1) %CL1=46 S:'$D(%CL2) %CL2=44 S:'$D(%CL3) %CL3=37
 F %I=1:1 Q:'$D(@%M)  I $L(@%M)>%LL S %LL=$L(@%M)
 S %I1=%I-1 I %I1>19 U 0 W !,*7,"  *** ARRAY TOO LARGE (",%I1,")" S %I="" H 2 G END
 I '$D(%SM) S %SM=80-%LL-4\2
 I %SM<1!(%SM>70) S %SM=80-%LL-4\2
 S:%SM<3 %SM=3
 S %SMX=%SM S:'$D(%SMY) %SMY=23-%I1-4\2
 I %SMY>22 S %SMY=23-%I1-4\2
 S:%SMY<2 %SMY=2
 X:'$D(%CLEAR) %chista
 S %AT="" ;"03-5620172 .lh   n''ra ciixh oil`"
 I $D(^n($J)) S %AT=" b v n "
 S %SAY=%AT_"++0,"_(77-(80-$L(%AT)\2))_",H,I" X %XMSG
 I $D(@%L1TXT) S:'$D(%SMY0) %SMY0=2 S %SAY=@%L1TXT_"++"_%SMY0_","_(77-(80-$L(@%L1TXT)\2))_",H,I" X %XMSG
 D PHON F %I=1:1:%I1 S %XX=%SMX,%YY=%I+%SMY X %POSIC W %HBR,$J(@%M,%LL),%ENG
 S %XX=%SM,%YY=%SMY X %POSIC S %I=1 S:$D(%L2MN("IND")) %I=%L2MN("IND") D INV
CYC R *%A  I %A=27,%OPT=1 D DELAY R *%A1:0 D DELAY R *%B:0 G:%B>0 SERV I %A1<0 S %I=1 G END
 I %A=25 S %I=1 G END
 I %A=24 W *27,7 N %XXMNU,%YYMNU S %XXMNU=%XX,%YYMNU=%YY D ^%L1CLC W *27,8 S %XX=%XXMNU,%YY=%YYMNU X %POSIC S $X=%XX,$Y=%YY G CYC
 I %A=13 G END
 I $L($ZB)>3,$D(%UPRCOD($ZB)) S %B=$G(@("%"_%UPRCOD($ZB))) G SERV
 I %A=27 G SERV
 G CYC
END S %L3MOPT=@%M K %A,%B,%M,@MAC,%LL,%I1,%B1,%B2
 W %ENG W *27,*91,0,"m"
 I '$D(%CLEAR) X %chista
 E  S %XX=0,%YY=%SMY-2 X %POSIC,%chiste
 K %SM,%SMX,%SMY W:$D(%HBRY) %HBR
 Q
 ;-
SERV G:%B'=%VVERX&(%B'=%VNIZ)&($C(%B)'?1N.N) CYC
 ;I %B=%VVERX S:%I=1 %I="" G:%I="" END D CL S %I=%I-1 W %vverx D INV G CYC
 I %B=%VVERX G:%I=1 VNM D CL S %I=%I-1 W %vverx D INV G CYC
 ;I %B=%VNIZ S:%I=%I1 %I="" G:%I="" END D CL S %I=%I+1 W %vniz D INV G CYC
 I %B=%VNIZ G:%I=%I1 VVM D CL S %I=%I+1 W %vniz D INV G CYC
 G:$C(%B)<1!($C(%B)>%I1) CYC
 S %B1=$C(%B),%B2=%I-%B1
 I %B2<0 D CL S %I=%B1,%pn=-%B2-1 X %vverxn D INV G CYC
 I %B2>0 D CL S %I=%B1,%pn=%B2-1 X %vnizn D INV G CYC
 ;-
CL W *27,*91,0,"m" S %XX=%SMX,%YY=%I+%SMY X %POSIC W %HBR,$J(@%M,%LL),%ENG Q
 ;-
INV W *27,*91,7,"m" S %XX=%SMX,%YY=%I+%SMY X %POSIC W %HBR,$J(@%M,%LL),%ENG Q
 ;-
PHON ;
 W %ENG W *27,*91,0,"m"
 S %XX=%SM-1,%YY=%SMY+1 ;S %XX=%SM-3,%YY=%SMY-2
 ;W "%YY=",%YY,"  %XX=",%XX,"   %I1=",%I1,"  %LL+4=",%LL+4
 ; W $C(27,91),%YY,";",%XX,";",%YY+%I1+1,";",%XX+%LL+4,"b"
 S Y1=%YY,X1=%XX,Y2=%YY+%I1+1,X2=%XX+%LL+4
 D RBUA
 Q
CVET W $J("",%LL+4)
 I $D(%CL0) W *27,*91,%CL0,"m"
 E  W *27,*91,0,"m"
 Q
VNM D CL S %I=%I1,%pn=%I1-1 X %vnizn D INV G CYC
VVM D CL S %I=1,%pn=%I1-1 X %vverxn D INV G CYC
 Q
RBUA ; INPUT X1,X2,Y1,Y2
 S %L1RBCL="" D ^%L1RBUA
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:%DELAY
 Q

%L3MOUNT
MOUNT ;JWC;MOUNT A VOLUME [ 10/03/93 11:03 AM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. 1984
 G ^DBMAINT ; for ignorant user
MTVOLS S VGOF=$V(VGIN*4+VGTAB),MAXBLKS=0
 F VIN=0:1:VOLS-1 D MNT I QF ZU 0 W !,"mounting failed at volume index ",VIN Q
 Q
MNT D:OS OPNVOL D:'OS OPENOK Q:QF  D PCHVOL S MAXBLKS=MAXBLKS+$P(LABEL(VIN),"^",4) Q
PCHVOL S VF=VIN*8+VGOF+32
 V VF:-3:$P(LABEL(VIN),"^",4):4,VF+6:-3:$P(LABEL(VIN),"^",6):2
 I OS V VF+5:-3:HFSDBI:1
 E  V VF+4:-3:%DSK($P(LABEL(VIN),"^",8)):2
 Q
OPNVOL S HNAME=$P(LABEL(VIN),"^",8) D HFSTAB^%VGUTIL1 V HFSDB+24:-3:HNAME:64:1 ; poke in name and open flag
 I VGIN!VIN,OS=8 O 63,51:(HNAME:"CBM") U 51:(:::0) W *6 W:'$ZC *4 C 51 ; update 'last modified' date
 I 'VGIN,'VIN,OS'=8 S QF=0 G OPENOK
 S BYPASS=0 I OS=8 S BYPASS=$D(^SYS("DD",$P(HNAME,$C(0),1)))'>0
 S MU=$ZB($V(SV,-3,2),16,1) ;multi-user flag
 S INTDRV=0 I OS=8&MU S INTDRV=$D(^SYS("DDINT",$P(HNAME,$C(0),1)))'>0
 I OS=8&BYPASS S ^SYS("DD",$P(HNAME,$C(0),1))="" ZF  S:INTDRV ^SYS("DDINT",$P(HNAME,$C(0),1))="" ZF  ; flag to disable bypass
 I VGIN=0,VIN=0,OS=8 D CLOSE I QF ZU 0 W !!,"Cannot close Volume Group 0, call system manager!" Q
 V HFSDB+16:-3:#FFFFFF:4 ; SET MAX BLK NO
 I OS=8&'BYPASS G OPNVOL1
 V 8+HFSDB:-3:$S(OS=8&BYPASS&('INTDRV):1,OS=8&BYPASS&INTDRV:3,1:0)+#100:2
 D OPEN ; turn on Dave's driver if PC
CHECK ; check HFSDBTAB for successful open
 S QF=0 I $ZB(FLAGS,#8000,1) Q:$ZV'["MSM-PC"  D ^MOUNT1 Q:'QF  ; TRY TO USE IT
 D CLOSE S QF=1 Q:OS'=8
OPNVOL1 ; TRY WITHOUT MS_DOS BYPASS
 V HFSDB+8:-3:#100:2
 D OPEN I '$ZB(FLAGS,#8000,1) D CLOSE S QF=1
 Q
CLOSE ; unmount volume
 S QF=0,FLAGS=$V(8+HFSDB,-3,2)
 V 8+HFSDB:-3:$ZB(FLAGS,#200,7):2 O 63:(:::"S") C 63
 F I=1:1:5 H 1 S FLAGS=$V(8+HFSDB,-3,2) I '$ZB(FLAGS,#200,1) Q
 E  ZU 0 W !,"System won't unmount volume" S QF=1
 Q
OPEN ; mount volume
 ZU 0 W:'$G(STUAUTO) "." S VOF=512,QF=0 O 63 O 63:(:::"S")
 F I=1:1:3 H 1 S FLAGS=$V(8+HFSDB,-3,2) G:$ZB(FLAGS,#8000,1) OPENOK
 C 63 S QF=1 Q
OPENOK ;
 O 63 S VMAP=$P(LABEL(VIN),"^",6)-1*512,SZ=512 V VMAP+1:$S(OS:"DB/"_HFSDBI,1:$P(LABEL(VIN),"^",8))
 F I=511:-1:0 Q:$V(I,0,1)'=254  S SZ=SZ-1 ; get vol size
 V:OS HFSDB+16:-3:VMAP+SZ:4 ; PUT THE REAL BLK NO IN
 V:'OS $V($V(44)+448)+(VGIN*32)+(VIN*4):-3:VMAP+SZ:4
 C 63 Q
SETUCI ; SET UCI FROM BLK VGUCI
 O 63 V VGUCI:"G"_VGIN
 S VGOF=$V(VGIN*4+VGTAB),UCITAB=$V(VGOF+20),UCISZ=$V(SV+14,-3,2)
 F I=0:1:$V(12,-4,2)-1 S UCI=$V(I*UCISZ,0,UCISZ,1) V I*UCISZ+UCITAB:-3:UCI:UCISZ:1
 Q
LABEL ; VOL NAME^VG NAME^MAGIC^MAX BLK^HASH^REAL MAPS^VOL NO^HNAME
 I OS O %DEV:(HNAME:"CBM") U %DEV:(:::0) W *6  ; READ LABEL
 E  V 0:HNAME U 63 S LABEL=$ZA U 0 I LABEL S LABEL="" Q
 S LABEL=$V(512,0,8,1)_"^"_$V(512+8,0,3,1)_"^"_$V(512+16,0,4)_"^"_$V(512+20,0,4)_"^"_$V(512+24,0,2)_"^"_$V(512+28,0,2)_"^"_$V(512+30,0,1)_"^"_HNAME
 Q

%L3MYDV
%L3MYDV(STAM) ; [ 28.02.05 16:56 ] [ 27.02.05 14:23 ] [
 N N
 I $L($P) Q $P
 Q $J

%L3MYDV0
%L3MYDVN(STAM) ; [ 09.07.06 12:09 ] [ 12.04.05 15:14 ] [ 06.04.05 19:38 ]
 I '$D(%L3GLD) S %L3GLD=$$^%L1GLD()
 I $L($P)>2,+$G(^[%L3GLD]devi($P)) Q +$G(^[%L3GLD]devi($P))
 I $D(^[%L3GLD]devi($J))#2 Q ^[%L3GLD]devi($J)
 Q $J

%L3MYDVN
%L3MYDVN(STAM) ; [ 23.02.09 12:52 ] [ 08.02.09 16:01 ] [ 01.04.08 17:47 ]
 N %L3MYDVF S %L3MYDVF=0
 I '$D(%L3GLD) S %L3GLD=$$^%L1GLD()
BG I $L($P)>2,+$G(^[%L3GLD]devi($P)) D  Q %NOM
 .S %NOM=^($P)
 .I $P["/pts/" D
 ..I $D(^zcmd($P)) S %WS=^($P) I $D(^[%L3GLD]devi3(%WS)) S %NOM=^(%WS) Q
 ..N WS S WS=$G(^[$$^%L1GLD]devi1($P)) I WS="" S %NOM=$J Q
 ..N MS S MS=$G(^[$$^%L1GLD]devi3(WS)) I MS="" S %NOM=$J Q
 ..S %NOM=MS
 ;
 I $D(^[%L3GLD]devi($J))#2 Q ^($J)
 ;
 Q $J

%L3MYLPT
%L3MYLPT(STAM) ; [ 04.04.05 13:12 ] [ 23.03.05 10:00 ] [ 27.02.05 11:28 ]
 Q $G(^DEV($$^%L3MYDVN,"LP"))
SUG(STAM) ;
 Q $G(^DEV($$^%L3MYDVN,"LP","SUG"))
CMDS(STAM) ;
 Q $G(^DEV($$^%L3MYDVN,"LP","CMDS"))
CMDF(STAM) ;
 Q $G(^DEV($$^%L3MYDVN,"LP","CMDF"))

%L3PCT
%L3PCT ; PRINT/TYPE TAVLAOT [ 09/29/96 12:50 PM ]
 ;INP - %MBG("PAR"),%MBG("VGR0"),%MBG("VGR"),%MBG("STEP"),%MBG("NGR")
 I '$D(%POSIC) D ^%L1C
 N %BE,%LS,%S,%L1DS,OLDDAT,YOLD,SHOLD,SCHOLD
 N COLG,CIST,COLG,%ECHO,I,%I,%I1,%INV,J,JOLD,NPG,NPGL,OTB,PG,%PRNEW,RKV,RSCR,RZD,%REFH1
 N SHOLD,SCHOLD,STEP,VGR0,VGR,XX0,X1,X2,Y1,Y2 ;SH,SCH
 ;
 N %HBRY S %HBRY=""
 I $D(%MBG("PAR"))>9 D ^%L3MBG1
 S NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 ;
BEG D INIT
 S %REFH1=$G(%MBG("REF"),"^MBG($P")
 D PS
ZB S %GET="<<" D N^%L1GET I %TO="END"!(%TO=""&(%S="")) G END
PGUP ;
 I %TO="PGUP" G:NPG'>1 ZB S NPG=NPG-1 K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
 I %TO="PGDW" G:'$D(@(%REFH1_",SH-SCH+COLS+1)")) ZB S NPG=NPG+1,PG(NPG)=SH-SCH+COLS K SHOLD,SCHOLD,YOLD,%MBG("TO") G BEG
 G ZB
 ;-
END S %YY=24,%XX=1 X %POSIC W %ENG,%chists,%HBR Q
 ;-
PS D PS^%L3MBG
 Q
CLEAR ;
 N %XX,%YY,I
 D ^%L1RBUA
 F I=Y1:1:Y2-2 S %XX=X1,%YY=I X %POSIC W $J("",X2-X1-1)
 Q
 ;-
ZAPR ;
 S %XX=X1,%YY=Y2-2 X %POSIC W $J("",X2-X1-1)
 S %GET=" <ENTER> - jiyndl , <.> - miiql , 1 - owzl, 0 - mcew jqn  ++"_(Y2-2)_",75,HH#++1,E,I++10.u"
 D ^%L1GET
 S OTB=%S
 I OTB=0 Q:NPG'>1  S NPG=NPG-1 Q
 I OTB="" S NPG=NPG+1,PG(NPG)=SH-SCH+COLS Q
 I OTB'="."&(OTB'=1) W *7,*7 H 1 G ZAPR
 Q
ER ;
 S %XXX=%XX,%YYY=%YY,$X=%XX,$Y=%YY W *7 S %SAY=" d`iby ++0,40,HH,I" X %XMSG H 2
 S %SAY="       ++0,40,HH,I" X %XMSG S %XX=%XXX,%YY=%YYY X %POSIC
 Q
INIT  S:'$D(NPG) NPG=1,PG(1)=0 S RZD=$G(%MBG("RZD"),"\")
 S VGR0=$G(%MBG("VGR0"),1),VGR=$G(%MBG("VGR"),3)
 S Y1=VGR0,X1=%MBG("LL")-1,Y2=$G(%MBG("NGR"),24)
 S COLG=%MBG("COLG")
 S XX0=$G(%MBG("LR"),70)+5,X2=XX0+1 S:XX0>79 XX0=79
 S RSCR=Y2-VGR-2,STEP=$G(%MBG("STEP"),2)
 S COLS=RSCR-STEP\STEP,SCH=0,%YY=VGR,SH=PG(NPG)
 Q

%L3RD
%L3RD ;DJM;DISPLAY ROUTINE DIRECTORY; [ 11/17/92  9:57 AM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 W !!,?20,"ROUTINE DIRECTORY  " D ^%D
 W !,?24,"OF ",$$^%L1ZU(0),?39 D ^%T W !
INT ;
 N %RDS,%RDA S $ZT="ZG "_$ZL_":ERROR^%L3RD",%NAM="",%RDS=1,%RDA=""
 F %RNUM=0:1 S %NAM=$O(^ (%NAM)) Q:%NAM=""  X:'(%RNUM#8) "W ! S %RDS=%RDS+1" X:'(%RDS#20) "R !,""<>"",%RDA S %RDS=1 W *13" Q:$L(%RDA)&("/.?^"[%RDA)  W ?(%RNUM)#8*10,%NAM
 W !,?5,%RNUM," Routine",$S(%RNUM=1:".",1:"s.")
EXIT ;
 K %NAM
 Q
ERROR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q

%L3RI
%L3RI ; [ 11.01.26 04:15 ] [ 
 N ARG
 S ARG=$ZCMD
 D ^%L2RI(ARG)
 Q
 
 
 
 

%L3RR
%L3RR ;DJM;MSM: ROUTINE RESTORE; [ 06/28/94  5:43 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. (c) 1985
 S $ZT="ZG "_$ZL_":ERR^%L3RR"
 W !?10,$P($P($ZV,","),"-")," - ROUTINE RESTORE UTILITY"
 S %FN=^%L3RR("FN")
 D GETHFS^%SDEV I '%DEV U 0 W !!,"ALL HOST FILE SERVER (HFS) DEVICES ARE BUSY" Q
 O %DEV:%FN U %DEV G:$ZA OPENHFS
OPENHFS O %DEV:(%FN:"R")
 U %DEV S %ZA=$ZA U 0 I %ZA<0 W !,?5,"OPEN FAILED ON DEVICE ",%DEV," FOR FILE ",%FN,*7 C %DEV U 0 Q
INT ; BYPASS DEVICE SELECTION, %DEV=INPUT DEV, MUST BE ALREADY OPEN
 S %TAP=%DEV>46&(%DEV<51)
 S (%RNUM,%C,%S,QUIT)=0,%SEQ=1 Q:%TAP
 U %DEV R %TIME,%CMT G:%TIME="" L4 I %TIME?1"DISK#"1N.N S %TIME=%CMT R %CMT
 U 0 W !,"ROUTINE(S) SAVED AT ",%TIME,!,"HEADER COMMENT IS: ",%CMT
L1 U 0 S %RT=1 G L2
L2 I %RT U 0 W !,"RESTORING...",!
 S $ZT="ZG "_$ZL_":ERR1^%L3RR"
 F %I=1:1 U %DEV R %RN Q:%RN=""  D:%RN="*EOF*" NEXTFILE Q:QUIT  D RESTORE Q:QUIT
 I 'QUIT,%TAP Q
L4 U 0 W !!,%RNUM," ROUTINE",$S(%RNUM=1:"",1:"S")," RESTORED."
 I $D(%DEV),%DEV>58,%DEV<63 U %DEV S %RN=$ZA U 0 W !,"LAST BLOCK READ IN: ",%RN
EXIT ;
 I $D(%DEV) I %DEV'=$P C %DEV
 C 63 I $D(%TAP) D:%TAP %KILL^%MTCHK
 K %DEV,%I,%RN,%RNN,%RR,%RNUM,%RT,%PCODE,%SBP,%S,%C,%RC,%FN,%SEQ,%SIZE,%X,%ZA,QUIT,%TAP,%TIME,%CMT Q
RESTORE ;
 I %RT S %RNN=%RN G R1
R1 ;
 I $ZN=$P(%RNN,":") U 0 W !,"  ***  ",$ZN," CANNOT RESTORE OVER ITSELF" G L1
 D PCZLOAD I %PCODE U %DEV X "ZL  ZS @%RNN"
 S %RNUM=%RNUM+1
 U 0 I %RT W:'(%RNUM-1#8) ! W ?%RNUM-1#8*10,%RNN Q
 W " --RESTORED" Q
PCZLOAD I $P(%RN,":",2)="" S %PCODE=1 Q
 D ZLOAD Q
 ;I $L(%RNN)<9,%RNN?1A.AN!(%RNN?1"%".AN) G R1
 ;I $L(%RC)<9,%RC?1A.AN!(%RC?1"%".AN) S %C=1 G RESTORE
ERR ;
 I $F($ZS,"<INRPT>") U 0 W !!,"...ABORTED." G L4
 Q
ERR1 ;
 I $F($ZS,"<MTERR>") Q
 I $F($ZS,"<INRPT>") U 0 W !!,"...ABORTED." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
PCSKIP ;
 I $P(%RN,":",2)="" S %PCODE=1 Q
 N (%DEV,%RNN,%PCODE) S %ZERO=$C(0,0,0,0)
 D SKIPHFS S %PCODE=0 Q
 U 0 W !!,"*** CANNOT RESTORE COMPILED ROUTINES THROUGH DEVICE #",%DEV,!,*7
 W 1/0 Q
SKIPHFS S %DLMS=24 D GETDLM U %DEV:(:::::"") D SKIPRTN U %DEV:(:::::%DLMS) Q
SKIPRTN F %X=1:1 R %BLK#1024 Q:$E(%BLK,1013,1016)=%ZERO  Q:$ZC
 S %PCODE=0 Q
ZLOAD N (%DEV,%RNN,%PCODE)
 S %RNN=$P(%RNN,":") X "ZR  ZI %RNN_"" "" ZS @%RNN" ;create dummy routine
 S %BN=$ZBN(^ (%RNN)),%BNHDR=%BN,%PTR=#1000000
 S %UI=$$^%L1ZU(0),%UI=$ZU($P(%UI,","),$P(%UI,",",2)),%VGI=$P(%UI,",",2),%UI=+%UI,UCITAB=$V($V($V(10,-5)+(%VGI*4))+20)
 S RP=$V(UCITAB+(%UI-1*32)+20,-3,2)*512 K UCITAB,%UI,%VGI
 O 63::0 E  U 0 W !,"Waiting for device 63" O 63
 G LOADHFS:%DEV>50&(%DEV<55)
 U 0 W !!,"*** CANNOT RESTORE COMPILED ROUTINES THROUGH DEVICE #",%DEV,!,*7
 C 63 S %PCODE=1 Q
LOADHFS S %DLMS=24 D GETDLM U %DEV:(:::::"") D XFER U %DEV:(:::::%DLMS) Q
XFER R %BLK#1024
XFER10 V 0:0:%BLK:1024:1 G:'$ZC XFER20:$V(1012,0,4) ;continuation block present
 S %BNTAB($V(1016,0,4))=%BN V 1016:0:%BN:4,-%BN,%BNHDR
 F %Z=18,24 S %X=$V(%Z,0,4),%Y=%X#%PTR,%X=%X\%PTR,%Y=%X*%PTR+%BNTAB(%Y) V %Z:0:%Y:4
 V -%BNHDR C 63 S %PCODE=0 Q
XFER20 ;THERE WILL BE A CONTINUATION BLOCK
 S %BNX=$ZBN("",RP),%BNTAB($V(1016,0,4))=%BN
 V 1016:0:%BN:4,1012:0:%BNX:4,-%BN S %BN=%BNX G XFER
GETDLM S %SV=$V(44),%SVA=%SV+$V(%SV+8,-3,2),%DDBTB=$V(%SVA+28),%DDB=$V(%DEV*4+%DDBTB)
 S %DLMS=$V(%DDB+%DLMS+1,-3,$V(%DDB+%DLMS,-3,1),1) Q
NEXTFILE ;
 Q:%TAP
 C %DEV U 0 W !,"SEQUENCE #",%SEQ," RESTORED"
 W !,"PLEASE PUT SEQUENCE #",%SEQ+1," INTO THE DRIVE AND"
 S %SEQ=%SEQ+1
NEXTFIL1 R !,"PRESS <RETURN> WHEN READY",%X
 I %X?1"?".E W !!,"PRESS <RETURN> TO CONTINUE RESTORING FROM SEQUENCE #",%SEQ,!,"OR ABORT THE RESTORE BY ENTERING 'CONTROL C'" G NEXTFIL1
 O %DEV:%FN U %DEV I '$ZA R %X I '$ZC
 U 0 E  W !!,"CANNOT ACCESS ",%FN,", PLEASE CORRECT" G NEXTFIL1
 I %X?2NP1":"2N1" ".E S %X=1
 I %X?1"DISK#"1N.N S %X=$P(%X,"#",2)
 I %X'=%SEQ W !!,"OUT OF SEQUENCE, THIS FILE IS #",%X,", PLEASE CORRECT" G NEXTFIL1
 I %RT U 0 W !,"RESTORING...",!
 U %DEV R %RN S QUIT=0 Q

%L3RSEL
%L3RSEL ; [ 10/23/95  8:09 PM ]
 ;K ^UTILITY($J)
 I $E(%RS)="-" G DEL
 S %P=$$%SRCHPAT^%SRCHPAT(%RS)
 S %RN=0,X=FIRST D:FIRST'=""
 .Q:$D(^ (X))=0  Q:X]LAST  X %P S:$T %RN=%RN+1,^UTILITY($J,FIRST)=""
 F  S X=$O(^ (X)) Q:X=""!(X]LAST)  X %P S:$T %RN=%RN+1,^UTILITY($J,X)=""
 U 0 W !!,?10,%RN," ROUTINE SELECTED."
 Q
DEL ;
 S %P=$$%SRCHPAT^%SRCHPAT($E(%RS,2,$L(%RS))),%RN=0
 S %RN=0,X=FIRST D:FIRST'=""
 .Q:$D(^UTILITY($J,X))=0  Q:X]LAST  X %P I $T S %RN=%RN+1 K ^UTILITY($J,X)
 F  S X=$O(^UTILITY($J,X)) Q:X=""!(X]LAST)  X %P I $T S %RN=%RN+1 K ^UTILITY($J,X)
 U 0 W !!,?10,%RN," ROUTINE DE-SELECTED."
 Q

%L3SHAP
%L3SHAP ;  [ 14.01.06 18:55 ] [ 13.01.06 11:57 ] [ 17.05.04 18:54 ]
 ;INPUT: %L1PC("SHP","KOD") - HEADER'S CODE
 ;       %L1PC("SHP","SC") -  LINE'S COUNTER
 ;       %L1PC("SHP","SM") - OFFSET
 ;       %L1PC("SHP","SL") - PAGE'S COUNTER
 ;       %L1PC("SHP","PAGE") - IF $D - START FROM NEW PAGE
 ;       %L1PC("SHP","PRPC") - PRINT LINE
 ;       USTR - 0,3
 ;OUTPUT:
 ;       PEND1  - LAST COLUMN
 ;       RLIST - GODEL DAF
 ;       CHERTA - KAV TAHAT KOTERET
 ;       MPOZ ,NSP
 N %NEXTS,%LENGTH,%STRS,%K,%POZ,%IND,%NEXTS,%I,%HBRY
 N KOD,SC,SM,SL,L1PAGE,PRPC,USTR0
 S USTR0=$G(USTR) N USTR S USTR=USTR0
 Q:'$D(%L1PC("SHP","KOD"))
 I '$$^%L1DISP(USTR) S %DEV="USTR" D ^%L1LPT Q:%EROP
 I $G(%L1PC("SHP","PROG"))'="" X %L1PC("SHP","PROG")
 S KOD=%L1PC("SHP","KOD")
 ;S SC=+$G(%L1PC("SHP","SC"))
 S SM=$G(%L1PC("SHP","SM"),1)
 S SL=$G(%L1PC("SHP","SL"),1)
 S PRPC=$G(%L1PC("SHP","PRPC"),1)
 I $$^%L1DISP(USTR) W %HBR S %HBRY=""
 S %SS="&" S:'$D(SM) SM=1 S:'$D(SC) SC=0 S:'$D(SL) SL=1 S:'$D(PRPC) PRPC=1
 I PRPC,'$D(USTR) U 0 W !,*7,"*** DEVICE ISN'T DEFINED (USTR) !" H 2 Q
 I '$D(^SHP(KOD)) U 0 W !,"***  COD HEADER ISN'T GOOD: ",KOD," !" H 2 Q
 S %NEXTS=^SHP(KOD,1)
 ;;O USTR::2 E  U 0 W *7 S %SAY=" dqetz zqtcn " X %XMSGV(1) Q
 U USTR
 I $$^%L1DISP(USTR) U $P:(NOECHO:NOWRAP)
 I PRPC U USTR W:$D(%L1PC("SHP","PAGE"))&USTR # X:$D(%L1PC("SHP","PAGE"))&(USTR=0!(USTR=$P)) %chista W:$D(%L1PC("SHP","PAGE"))&(USTR=0!(USTR=$P))&(%TYPCRT="PC") ! W:'$D(%L1PC("SHP","PAGE")) !
 D FSHAP S RLIST=66-%I ;S PEND1=$L(^(%I-2))+SM-3
 ;S CHERTA=^(%I-1)
 S %L1PC("SHP","SC")=SC+1
 S %L1PC("SHP","SL")=SL
 K %NEXTS,%LENGTH,%STRS,%K,%POZ,%IND,%NEXTS Q
FSHAP ;
 N %STRS
 F %I=1:1 Q:'$D(^SHP(KOD,%I))#10  Q:$E(^(%I))?1N  S %STRS=^(%I),%POZ=0 D PSK D:PRPC PCS S SC=SC+1 I SC>68 S SC=0,SL=SL+1
 S:'$D(RAZD) RAZD=":"
 I $D(^(%I)) K MPOZ F J1=%I:1 Q:'$D(^(J1))  D DO1
 G EN1
DO1 ;
 N SHPZ
 S %POZ=1,SHPZ=0 F J2=1:1 S %POZ=$F(^(J1),RAZD,%POZ) Q:'%POZ  S SHPZ=SHPZ+1,MPOZ($E(^(J1)),SHPZ)=%POZ+SM-1
 S %CPOZ=SHPZ
 Q
EN1 ;
 Q
PCS I '$D(TS0)!'$D(TSS) D ^%L1TS
 N %II,%W1 S %STRS=$TR($TR(%STRS,%TES1,%TES2),%TEN,%THB)
 W ?SM,$S(USTR=0!(USTR=$P):$P(%STRS,"#"),1:$TR($P(%STRS,"#"),TS0,TSS)) S %W1=0
 F %II=2:1:$L(%STRS,"#") D
 .S $X=0 S %W1='%W1
 .I '$$^%L1DISP(USTR) W %L1OUT("MDP",$S(%W1:"B",1:"N")) W $TR($P(%STRS,"#",%II),TS0,TSS)
 .I $$^%L1DISP(USTR) W:%W1 %ENG,%CLI,%HBR W $P(%STRS,"#",%II) U $P X %XCL
 I '$$^%L1DISP(USTR),%W1=1 W *27,%L1OUT("MDP","N")
 W !
 Q
DEFL N %K I $D(^("P"_%IND)) S %LENGTH=^("P"_%IND) Q
 F %K=%POZ+2:1 Q:$E(%STRS,%K)'=" "
 S %LENGTH=%K-%POZ+1 K %K S ^("P"_%IND)=%LENGTH
 Q
PSK ;
 F %J=%POZ:0 S %POZ=$F(%STRS,%SS,%POZ) Q:%POZ<1  S %IND=+$E(%STRS,%POZ,%POZ+1) D DEFL S %NST=$S($D(MAS(%IND)):$E(MAS(%IND),1,%LENGTH),1:""),%STRS=$E(%STRS,1,%POZ-2)_%NST_$J("",%LENGTH-$L(%NST))_$E(%STRS,%POZ+%LENGTH-1,255)
 Q

%L3SP
%L3SP ;DJM;DISPLAY AVAILABLE SPACE; [ 31.12.06 08:53 ] [ 11/28/97 12:57 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 ;ZU 0 W !?10,$C(27,41,74,27,91,55,109),"     zkxrn jeza wqica iept mewn zwica     ",$C(27,91,48,109)
 O 63::0 I '$T W !,"VIEW BUFFER BUSY." Q
 D GETVG S %NOSHOW=0 D ^%L1C
 ;I %VG=1 S %VGI=0,%VOLP=$V(%VGTAB) D DISPVG G EXIT
 S %VGI=0,%VOLP=$V(%VGTAB) D DISPVG G EXIT
 ;D SPACE
EXIT ;
 C 63 K %I,%VGTAB,%VOLP,%VGNA,%VGI,%FLAG,%VG,%X,%OS
 Q
DISPVG ;DISPLAY ONE VOLUME GROUP
 Q:'$V(%VOLP+4,-3,2)  S %VGNA=$V(%VOLP,-3,3,1)
 S %NOVOL=$V(%VOLP+30,-3,2),%TOTBLK=0,%FTOTBLK=0
 I '$G(%ENGLISH) ZU 0 W %HBR,!!?13,"miwela k''dq",?28,"miept miwela",?44,"%- iept"
 I $G(%ENGLISH)  ZU 0 W !!?11,"TOTAL OF BLOCKS",?28,"FREE BLOCKS",?44,"%- FREE"
 ZU 0 W !?11,"---------------",?28,"-------------",?44,"--------"
 D INT
 K %NOVOL,%DB,%VOLENT,%SPMAP,%SZ,%SP,%SPLAB,%SPDBNA,%I,%J,%HFSDB,%VA,%HFSTAB
 Q
INT NEW (%FTOTBLK,%TOTBLK,%VGI,%NOSHOW) I '$D(%NOSHOW) S %NOSHOW=1
 D PTRS^%SP
 O 63 S (%TOTBLK,%FTOTBLK)=0 I '$D(%VGI) S %VGI=0
 S %VOLP=$V(%VGI*4+%VGTAB),%NOVOL=$V(%VOLP+30,-3,2)
 I %OS S %HFSTAB=$V(44,-5)
 S %SPFBLK=0 F %DB=0:1:%NOVOL-1 S %VOLENT=%VOLP+32+(%DB*8) D DBDISP S %SPFBLK=%SPFBLK+$V(%VOLENT,-3,4)
 Q
INT1 ;
 N (%DB,%SP,%SZ,%VGI,VGVOL) D PTRS S (%TOTBLK,%FTOTBLK)=0,%VOLP=$V(%VGI*4+%VGTAB),%NOVOL=$V(%VOLP+30,-3,2),%NOSHOW=1
 I %OS S %HFSTAB=$V(44,-5)
 S %VOLENT=%VOLP+32+(%DB*8),%SPFBLK=$P(VGVOL(%DB),"^",2) D DBDISP
 Q
DBDISP ;
 S %SPMAP=$V(%VOLENT+6,-3,2) D DBDISP1,HFS
 I '%NOSHOW ZU 0 W !,?11,$J(%SZ,8,0),?28,$J(%SP,8,0),?44,$J(%SP*100/$S(%SZ:%SZ,1:1),6,2)
 S %TOTBLK=%TOTBLK+%SZ,%FTOTBLK=%FTOTBLK+%SP
 Q
DBDISP1 ;GET TOTAL BLOCKS & TOTAL FREE BLOCKS
 S %SP=0,%SZ=0
 S %SPMP=$V(%VOLENT+6,-3,2)
INTSUM ;
 F %K=0:1:%SPMP-1 D DBSPACE
 Q
DBSPACE ;COMPUTE TOTAL BLOCKS & FREE BLOCKS
 V %K*512+%SPFBLK+1:"G"_%VGI S %SP=%SP+$S($V(1022,0,2)>511:0,1:$V(1022,0,2))
 Q:%OS  I %K'=(%SPMP-1) S %SZ=%SZ+512 Q
 F %L=0:1:511 Q:$V(%L,0,1)=#FE  S %SZ=%SZ+1
 Q
PTRS S %VGTAB=$V(10,-5)
OS S %OS=$V(0,-4,2)#16  ; GET OPERATING SYSTEM TYPE, 0=SA, 3=UNIX5, 6=DG, 8=MS/DOS
 Q
GETVG ; GET LIST OF MOUNTED VOLUME GROUPS
 D PTRS K %VG
 S %VG=0 F %I=0:1:7 S %VGI=$V(4*%I+%VGTAB) I %VGI D GETVG1
 Q
GETVG1 ; GET ONE VOLUME GROUP
 S %X=$V(%VGI+4,-3,2) Q:'%X  S %VG(%I)=$V(%VGI,-3,3,1),%VG=%VG+1
 S %VG($V(%VGI,-3,3,1))=%I
 Q
HFS G:'%OS SA
 S %HFSDB=$V($V(%VOLENT+5,-3,1)*4+4+%HFSTAB),%SZ=$V(%HFSDB+16,-3,4),%SPDBNA=$P($V(%HFSDB+24,-3,64,1),$C(0),1)
 Q
SA S %SPDBNA=$V($V(4*$V(%VOLENT+5,-3,1)+76+$V(4*$V(%VOLENT+4,-3,1)+$V($V(18,-5)+16))),-3,$S($ZB($V(0,-4,2),#F00,1)=#800:3,1:8),1)
 Q

%L3SS
%L3SS ; [ 28.03.07 13:04 ] [ 21.10.06 17:56 ] [ 09.05.06 06:57 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
BG D FRM
 Q
 ;
FRM ;
 N %NMF,%NMF0,%NMF1,%NM,%IO,I,A,B,PID,%NAME,%REF,%DEV
 S %NMF="l1ss"_$J
 S %IO=$I
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC mumps > "_%NMF
 I $$^%L1ZOS(10,%NMF)<0 Q
 O %NMF:(REWIND:READONLY)
 S I=2 K ^TMPS111($J),^l1ss($J)
 S ^TMPS111($J,1)="PID   STIME TTY       ROUTINE NAME     GLOBAL REFERENCE        OWN DEVICES     "
 S ^TMPS111($J,2)="----  ----- --------  ---------------  ----------------------  --------------- "
 F  U %NMF R A Q:$ZEOF  D
 .S PID=$TR($E(A,10,14)," ","") Q:'PID
 .S %NMF0="GTM_JOBEXAM.ZSHOW_DMP_"_PID_"_"
 .ZSY "rm -f "_%NMF0_"*"
 .ZSY $$^%L1ENVAR("gtm_dist")_"/mupip intrpt "_PID
 .S %NMF1=$$^%L1ZOS(13,%NMF0_"*") Q:'$L(%NMF1)
 .Q:%NMF1'[%NMF0
 .I '$$SIZE^%L1ZOS(%NMF1) Q
 .O %NMF1:(REWIND:READONLY)
 .S %NAME="",%REF="",%DEV=""
 .F  U %NMF1 R B Q:$ZEOF  D
 ..I $E(B,1,11)="$ZPOSITION=" S %NAME=$P(B,"=",2)
 ..I $E(B,1,11)="$REFERENCE=" S %REF=$P(B,"=",2)
 ..I B[" OPEN RMS",B'["GTM_JOBEXAM" S %DEV=%DEV_$S($L(%DEV):",",1:"")_$P(B," ")
 .C %NMF1 ;;:DELETE
 .F %NM="%NAME","%REF","%DEV" S @%NM=$TR(@%NM,"""","")
 .S I=I+1,^TMPS111($J,I)=$E(A,10,14)_"  "_$E(A,25,39)_"  "_%NAME_$J("",15-$L(%NAME))_"  "_%REF_$J("",23-$L(%REF))_"  "_%DEV
 .S ^l1ss($J,I,"NMF")=%NMF1
 ;
 I $$^%L1ZOS(2,%NMF)
 U 0:(NOECHO:NOWRAP) W !! F I=1:1 Q:'$D(^TMPS111($J,I))  W ^(I),!
 K ^TMPS111($J),^l1ss($J)
 Q
KLJ(NMPROG) ;
 N ST
 S ST=$$WHATNMB(NMPROG) ;
 I 'ST Q 0
 ZSY "kill "_$P(ST,"~",2)
 Q 1
WHATNMB(NMPROG) ;
 N A,U,I,PROG K ^TMPS111($J)
 D FRM S U=0
 F I=1:1 Q:'$D(^TMPS111($J,I))  D
 .S A=$G(^(I))
 .S PROG=$P($P($E(A,25,50)," "),"^",2) Q:PROG?.P
 .I PROG=NMPROG S U=I
 I 'U Q 0
 S A=$G(^TMPS111($J,U)) K ^TMPS111($J),^l1ss($J)
 Q U_"~"_$TR($$SP1^%L1FRM(A)," ","~")

%L3SSD
%L3SSD ;CDS;SYSTEM SHUTDOWN; [ 01/04/99 10:13 AM ] [ 10/29/97  5:11 AM ]
 H

%L3TRTB
%L3TRTB ;CLJ;EDIT/ENABLE/DISABLE TRANSLATION [ 07/17/92  2:38 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1990
 K stmsm
INT1 S $ZT="ZG "_$ZL_":ERR^%L3TRTB",SGNDX=1
 S SGCNFG=+^SYS("CONFIG",$P(^SYS("CONFIG"),";",2))
 ;;W !?10,$P($P($ZV,","),"-")," - TRANSLATION/REPLICATION MANAGEMENT UTILITY"
 D:$D(stmsm) CONFIG^SGCNFG D INT K SGNDX,SGCFNM,EDITED Q
INT N (SGCNFG,EDITED,SGDSP,QUIT)
 ;;I $G(SGDSP)="DISPLAY" D DISP,DISP^REPTABLE G EXIT2
 ;;S SGID="TRANSLAT",SGHDR="AVAILABLE FUNCTIONS:" S:'$D(EDITED) EDITED=0 D ^SGMENU G:$D(QUIT) EXIT G:SGOPT="" EXIT
 ;;I '$D(@("^ ("""_$P(SGOPT,"^",2)_""")")) ZU 0 W !,"Option not available"
 ;;E  D @SGOPT
 S SGOPT="EDIT" D @SGOPT
 ;;R !!,"Press <RETURN> to continue",SGOPT G INT
EXIT ;
 D:$G(EDITED) EDITED
EXIT2 K SGID,SGOPT,SGHDR Q
ERR I $F($ZS,"<INRPT>") U 0 ZU 0 W !!,"...ABORTED." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
 ;
EDIT ;EDIT TRANSLATION TABLE
 ;SGCNFG IS THE CONFIGURATION INDEX
 D DISP
 S SV=$V(44),PB=$V(SV+8,-3,2),MAX=$V($V(32*4+PB+SV),-3,4)
EDIT10 S SG=^%L3TRTB("SG") ;R !!,"ENTER TRANSLATION TABLE INDEX: ",SG Q:SG=""!(SG="^")!(SG="^Q")  I SG?1.N,SG>0,SG'>MAX S T=$G(^SYS(SGCNFG,"TRANSLATE",SG)) D GET G KEY
 I SG?1.N,SG>0,SG'>MAX S T=$G(^SYS(SGCNFG,"TRANSLATE",SG)) D GET G KEY
 I SG?1"-"1.N S SG=$E(SG,2,99),X=$S($D(^SYS(SGCNFG,"TRANSLATE",SG)):1,1:0) K:X ^(SG) S:X EDITED=1 W:X "   ...deleted" W:'X *7,"   ...no such entry" Q
 I SG="?" S V="SG" D DUMMY Q
 I SG="^L" D DISP Q
 Q
FROM ;TRANSLATE FROM UCI
 S V="FROM",PRMPT="UCI TO TRANSLATE FROM",CONTROL="1`EDIT10`BIT``TO`DUMMY",VAL="4`VALUCI",SPECPROC="" G ASK
TO ;TRANSLATE TO UCI
 S V="TO",PRMPT="UCI TO TRANSLATE TO",CONTROL="0`EDIT10`FROM``LOCK`DUMMY`DEL",VAL="4`VALUCI",SPECPROC="2`S:X="""" TV=""NO"" I 1" G ASK
LOCK ;LOCK MASTER
 S PRMPT="UCI FOR MAINTENANCE OF LOCKS",V="LOCK",CONTROL="0`EDIT10`TO``RI`DUMMY`DEL",VAL="4`VALUCI",SPECPROC="2`S:X="""" LV=""NO"" I 1" G ASK
RI ;REPLICATION INDEX
 S V="RI",PRMPT="REPLICATION TABLE INDEX",I="FILE" F J="TO^TV","LOCK^LV","RI^RV" I @$P(J,"^")'="" S I=$P(J,"^",2) Q ;ESTABLISH PROCEED BRANCH
 S CONTROL="0`EDIT10`LOCK`DISP^REPTABLE`"_I_"`DUMMY`DEL",VAL="1`I X?1.N,$D(^SYS(SGCNFG,""REPLICATE"",X))#10",SPECPROC="2`S:X="""" RV=""NO"" S:$P(CONTROL,""`"",5)=""RV""&(@V="""")&(X="""") $P(CONTROL,""`"",5)=""FILE"" I 1 " G ASK
TV ;TRANSLATION VALID
 S:TV="" TV="YES" S V="TV",PRMPT="ENABLE TRANSLATION",I="FILE" F J="LOCK^LV","RI^RV" I @$P(J,"^")'="" S I=$P(J,"^",2) Q
 S CONTROL="0`EDIT10`RI``"_I_"`DUMMY",VAL="2`YES`NO",SPECPROC="" G ASK
LV ;LOCK MASTER VALID
 S:LV="" LV="YES" S V="LV",PRMPT="ENABLE LOCK TABLE TRANSLATION",I="TV",J="RV" S:TO="" I="RI" S:RI="" J="FILE"
 S CONTROL="0`EDIT10`"_I_"``"_J_"`DUMMY",VAL="2`YES`NO",SPECPROC="" G ASK
RV ;REPLICATION VALID
 S:RV="" RV="YES" S V="RV",PRMPT="ENABLE REPLICATION",I="RI" F J="LOCK^LV","TO^TV" I @$P(J,"^")'="" S I=$P(J,"^",2) Q
 S CONTROL="0`EDIT10`"_I_"``FILE`DUMMY",VAL="2`YES`NO",SPECPROC="" G ASK
CS ;COLLATING SEQUENCE
 S V="CS",PRMPT="COLLATING SEQUENCE" S:CS="" CS="NUMERIC"
 S CONTROL="1`EDIT10`KEY``BIT`DUMMY",VAL="2`NUMERIC`STRING",SPECPROC="" G ASK
BIT ;COLLATING SEQUENCE
 S V="BIT",PRMPT="Global encoding [7=7-bit/8=8-bit]" S:BIT="" BIT=8
 S CONTROL="1`EDIT10`CS``FROM`DUMMY",VAL="2`7`8",SPECPROC="" G ASK
KEY ;KEY TO MATCH
 S V="KEY",PRMPT="GLOBAL NAME",CONTROL="1`EDIT10`EDIT10``CS`DUMMY",VAL="1`S:$E(X)=""^"" X=$E(X,2,999) I X?1.8AN!(X?1""%"".7AN)!(X?.7AN1""*"")!(X?1""%"".6AN1""*"")",SPECPROC="" G ASK
FILE ;FILE TABLE ENTRY
 D PUT S ^SYS(SGCNFG,"TRANSLATE",SG)=T,EDITED=1 D DISP Q
 ;
DISP ;DISPLAY TRANSLATION TABLE
 Q
 I $D(^SYS(SGCNFG,"TRANSLATE")) ZU 0 W !!,"CURRENT TRANSLATION TABLE: " D DISP2 F SG=-1:0 S SG=$N(^SYS(SGCNFG,"TRANSLATE",SG)) Q:SG<0  D DISP3
 I '$D(^SYS(SGCNFG,"TRANSLATE")) ZU 0 W !!,"TRANSLATION TABLE IS EMPTY."
 Q
DISP2 ;
 ZU 0 W !!,"   GLOBAL         TRANSLATE        LOCK    REPL   FUNCTIONS     COLL GLOBAL"
 ZU 0 W !,"#  NAME(S)     FROM UCI  TO UCI   MASTER   IND    ENABLED       SEQ  ENCODE"
 ZU 0 W !,?3,"-------     ----------------   ------   ----   ---------     ---- ------"
 Q
DISP3 ;
 S T=^SYS(SGCNFG,"TRANSLATE",SG),X=$P(T,"^") D UNHASH ZU 0 W !,SG,?3,$P(T,"^",10)_$S($ZB(+$P(T,"^",7),8,1):"*",1:""),?15,X,"," S X=$P(T,"^",2) D UNHASH ZU 0 W X
 S X=$P(T,"^",3) I X D UNHASH ZU 0 W ?24,X,"," S X=$P(T,"^",4) D UNHASH W X
 S X=$P(T,"^",5) I X D UNHASH ZU 0 W ?34,X,"," S X=$P(T,"^",6) D UNHASH W X
 S X=$P(T,"^",8) W:X?1.2N ?45,X S S="",X=$P(T,"^",7) F I=1,2,4 S:$ZB(+X,+I,1) S=S_I
 I S'="" S X=$E(S),S=$E(S,2,999) ZU 0 W ?50,$S(X=1:"TRANSLATION",X=2:"REPLICATION",X=4:"LOCK MASTER",1:"")
 ZU 0 W ?64,$E($P(T,"^",9),1,3) W ?70,$P(T,"^",11)_"-bit" F I=0:0 Q:S=""  S X=$E(S),S=$E(S,2,99) W !,?50,$S(X=1:"TRANSLATION",X=2:"REPLICATION",1:"LOCK MASTER")
 Q
GET ;EXTRACT INFO FROM ^SYS (PASS IN T)
 S (FROM,TO,LOCK,TV,LV,RV,RI,CS,KEY,BIT)="" S X=$P(T,"^") I X D UNHASH S FROM=X_"," S X=$P(T,"^",2) D UNHASH S FROM=FROM_X
 S X=$P(T,"^",3) I X D UNHASH S TO=X_"," S X=$P(T,"^",4) D UNHASH S TO=TO_X
 S X=$P(T,"^",5) I X D UNHASH S LOCK=X_",",X=$P(T,"^",6) D UNHASH S LOCK=LOCK_X
 S X=$P(T,"^",7) F I="1:TV","2:RV","4:LV" S @$P(I,":",2)=$S($ZB(+X,+I,1):"YES",1:"NO")
 S RI=$P(T,"^",8),CS=$P(T,"^",9),KEY=$P(T,"^",10)_$S($ZB(+X,8,1):"*",1:""),BIT=$P(T,"^",11)
 Q
PUT ;REBUILD ^SYS NODE (PASS BACK IN T)
 S T="" F I=1:1:3 F J=1,2 S X=$P(@$P("FROM^TO^LOCK","^",I),",",J) I X'="" D HASH S $P(T,"^",I-1*2+J)=Y
 S $P(T,"^",7)=$S(TV["Y":1,1:0)+$S(RV["Y":2,1:0)+$S(LV["Y":4,1:0)+$S(KEY["*":8,1:0)
 S $P(T,"^",8)=RI,$P(T,"^",9)=CS,$P(T,"^",10)=$P(KEY,"*"),$P(T,"^",11)=BIT
 Q
UNHASH ; UNHASH A UCI NAME, INPUT IN X, RETURNED IN X
 S X(1)=X\2048,X=X-(X(1)*2048),X(2)=X\64,X(3)=X-(X(2)*64)/2,X=$C(X(1)+64,X(2)+64,X(3)+64) ;UNHASH NAME
 K X(1),X(2),X(3) Q
HASH ; HASH A UCI NAME, INPUT IN X, RETURNED IN Y
 S Y=0 F Z=1:1:3 S Y=Y*32+$A(X,Z)-64
 S Y=Y+Y
 Q
ASK ;QUESTION HANDELER
 ;PASS IN V,PRMPT,CONTROL. V CONTAINS CURRENT VARAIBLE NAME. PRMPT IS THE PROMPT.
 ;CONTROL="REQUIRED 1 OR 0`^Q BRANCH`^ BRANCH`^L ROUTINE`PROCEED BRANCH`? ROUTINE
 ;W !!,PRMPT W:@V'="" " <",@V,">" R ": ",X
 S X=$G(^%L3TRTB(V),@V)
 I X?1"-".N,$P(CONTROL,"`",7)'="" D @$P(CONTROL,"`",7)
 I X="",@V="",$P(CONTROL,"`",8)'="" G @$P(CONTROL,"`",8)
 I X="",@V'="" S X=@V ;FIX FOR DEFAULT
 I X="" G:@V=""&(CONTROL) @$P(CONTROL,"`",3) G @$P(CONTROL,"`",5)
 I X="?" D @$P(CONTROL,"`",6) G ASK
 I X="^L",$P(CONTROL,"`",4)'="" D @$P(CONTROL,"`",4) G ASK
 G:X="^" @($P(CONTROL,"`",3))
 G:X="^Q" @($P(CONTROL,"`",2))
 D VAL G:'$D(X)#10 ASK S @V=X G @$P(CONTROL,"`",5)
 ;*
VAL ;INPUT VALIDATER
 ;PASS IN VAL. $P(VAL,"`") SPECIFIES TYPE OF VALIDATION.
 ;1`XECUTABLE CODE
 ;2`SET OF CODES
 ;3`RANGE:   MIN-MAX^...^MIN-MAX
 ;4`ROUTINE: LABEL^ROUTINE
 ;PASS IN SPECPROC. $P(SPECPROC,"`") SPECIFIES TYPE
 ;1`ROUTINE: LABEL^ROUTINE
 ;2`XECUTABLE CODE
 D @("VAL"_+VAL) I '$T K X ZU 0 W *7,"   ...INVALID" Q
 I 1 X:+SPECPROC=2 $P(SPECPROC,"`",2,999) D:+SPECPROC=1 @$P(SPECPROC,"`",2,999) I '$T K X ZU 0 W *7,"   ...INVALID"
 Q
VAL1 X $P(VAL,"`",2,999) Q
VAL2 F I=2:1:$L(VAL,"`") S Y=$P(VAL,"`",I) I $E(Y,1,$L(X))=X S X=Y Q
 Q
VAL3 I 0
 Q:X'?1.N  F I=2:1:$L(VAL,"`") S Y=$P(VAL,"`",I) I +Y'>X,X'>$P(Y,"-",2) Q
 Q
VAL4 D @$P(VAL,"`",2,999) Q
DUMMY ;DUMMY HELP
 I V="SG" S %HELP="REPTABLE;1~1;1;2;50;64"
 I V="FROM" S %HELP="%L3TRTB;2;1~1;1;2"
 I V="TO" S %HELP="%L3TRTB;3;1~1;1;2"
 I V="LOCK" S %HELP="%L3TRTB;4;1~1;1;2"
 I V="TV" S %HELP="%L3TRTB;5~1;1;2"
 I V="RV" S %HELP="%L3TRTB;6~1;1;2"
 I V="LV" S %HELP="%L3TRTB;7;~1;1;2"
 I V="RI" S %HELP="%L3TRTB;8~1;1;2;50;64"
 I V="CS" S %HELP="%L3TRTB;9~1;1;2"
 I V="BIT" S %HELP="%L3TRTB;12~1;1;2"
 I V="KEY" S %HELP="%L3TRTB;10~1;1;2"
 I $G(%HELP)'="" N (%HELP) D ^%UTLH Q
 ZU 0 W !!,"NO HELP AVAILABLE." Q
VALUCI ;VALIDATE UCI
 I X?3U1","3U Q
 I X?3U S Y=","_$P($$^%L1ZU(0),",",2),X=X_Y ZU 0 W Y Q
 Q
DEL S (@V,X)="" I "TO^LOCK^RI"[V X $P(SPECPROC,"`",2,999) S @$S(V="TO":"TV",V="LOCK":"LV",1:"RV")="NO"
 Q
CF S stmsm=1 G INT1
EDITED ;Update tables after an edit session
 ;Variable SGCNFG must be passed in
 S MODE=3 D ALONE G:Q EXIT S MSG=$C(27)_7_$C(27,91)_"24;1H"_$C(27,91,75)_"UPDATING TABLES IN MEMORY..."_$C(27)_8 G PTRS^TRANSLA1
ALONE ;See if other jobs active
 S Q=0 S:$V(168,-4,2)>2 Q=1
 D DISLOG S MODE=MODE+4 Q:'Q
 S V="CONT",^%L3TRTB("CONT")="Y",PRMPT="OTHER USERS ARE LOGGED ON TO THE SYSTEM."_$C(13,10)_"DO YOU WISH TO UPDATE MEMORY",CONT="Y",CONTROL="1`Q^TRANSLA1`Q^TRANSLA1``Q^TRANSLA1`DUMMY",VAL="2`YES`NO",SPECPROC="2`S:$E(X)=""Y"" Q=0" G ASK
Q Q ;I WOULDN'T REMOVE THIS IF I WERE YOU.
DISLOG ;DISABLE LOGON
 S X=$V(4,-4,2) S:'$ZB(X,#40,1) X=X+#40 V 4:-4:X:2
 Q
ENLOG ;ENABLE LOGON
 V 4:-4:$ZB(+$V(4,-4,2),(#FF-#40),1):2
 Q

%L3TYPCR
%L1TYPCR(STAM) ; [ 25.02.05 12:18 ] [
 N %TYPCRT S %TYPCRT="PC"
 I $L($P) S %TYPCRT=$G(^[GLD]%TYPCRT(+$G(^[GLD]devi($P))))
 Q %TYPCRT

%L3UA
%L3UA ;DJM;ADD NEW UCI TO SYSTEM; [ 06/30/92 12:36 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 D GETVG^%VGUTIL S VGTAB=$V(10,-5)
 I $V(2,-4,2)#2=0 W !,*7,$P($P($ZV,","),"-")," MUST BE INITIALIZED VIA ^STU PRIOR TO CREATING NEW UCI'S" G EXIT
 I $V(168,-4,2)>2 W *7,!!,"ALL OTHER USERS MUST BE OFF." D ^%SS G EXIT
 O 63::5 E  W *7,!!,"VIEW BUFFER BUSY.. REQUEST ABORTED" G EXIT
VGPROMPT ;
 I VG=1 S VGI=0 G UCIPROMP
 D VGPMT G:ERVG EXIT
UCIPROMP ;
 S %VGNA=VG(VGI)
 S SGMAX=$V(12,-4,2) F SGCUR=1:1 Q:$ZU(SGCUR,VGI)=""
 S SGCUR=SGCUR-1
 I SGCUR'<SGMAX W !!,*7,"UCI TABLE FULL.. CANNOT ADD UCI'S.. ONLY RENAME" G EXIT
 S SGUCI=^%L3UA("UCI")
 I SGUCI'?3U W *7," ..INVALID UCI NAME SYNTAX" G EXIT
 I $ZU(SGUCI,%VGNA)'="" W *7,!!,"UCI ALREADY DEFINED.. ENTER '?' FOR HELP" G EXIT
 D GETVOL^%VGUTIL
REPROMPT ;
 D ^%L3UAG G:SGBLK="^" EXIT D ^%L3UAR G:SGBLK="^" EXIT
 G ^%L3UAV
EXIT ;
 L  C 63
 K ERFLG,SGGBL,SGRTN,SGUCI,SGCUR,SGBLK,SGMAX,SGHELP,SGNDX,SGANS,SGMAP,UC,VGI,%VGNA,VGTAB,VG,VGVOL
 Q
VGPMT ;
 S ERVG=0
 S VGI=0 I $D(^%L3UA("VGI")) S VGI=^%L3UA("VGI")
 S:VGI="" VGI=0
 I VGI'?1N&(VGI'?3U) W "... INVALID RESPONSE." S ERVG=1 Q
 I '$D(VG(VGI)) W "....NOT A MOUNTED VOLUME GROUP." S ERVG=2 Q
 I VGI?3U S VGI=VG(VGI)
 Q

%L3UAG
%L3UAG ;DJM;ADD GLOBAL DIRECTORY; [ 06/30/92 12:37 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 K SGGBL S SGGBL(1)=0
 W !!,"GLOBAL DIRECTORY ALLOCATION"
 S %VOLP=$V(VGTAB+(VGI*4))
PROMPT3 ;
 S SGBLK=0
 I SGBLK[":" S SGDEVT=+SGBLK,SGBLK=+$P(SGBLK,":",2)
 E  D CONVERT
 I SGDEVT'<VGVOL W *7,"   ...VOLUME NOT MOUNTED" S SGBLK="^" Q
 I SGBLK'<(+$P(VGVOL(SGDEVT),"^",4)) W *7,"   ...BLOCK NOT DEFINED" G PROMPT3
 D ^UCIFIND I 'SGBLK S SGBLK="^" Q
 S SGGBL(1)=SGBLK W !,?5," ..ACTUAL BLOCK SELECTED: ",SGDEVT,":",SGBLK-SGBLKX
PROMPT4 ;
 S X=$S($D(SGGBL(2)):SGGBL(2),SGGBL(1)<1536&'VGI:3,1:SGGBL(1)\512)
 D DEBLK S SGBLK=""
 D CHECK I ERFLG S SGBLK="^" Q
 S SGGBL(2)=SGBLK
PROMPT5 ;
 S X=$S($D(SGGBL(3)):SGGBL(3),SGGBL(1)<1536&'VGI:3,1:SGGBL(1)\512)
 D DEBLK S SGBLK=""
 D CHECK I ERFLG S SGBLK="^" Q
 S SGGBL(3)=SGBLK Q
CHECK ;
 S ERFLG=0
 I SGBLK?1N.N S SGBLK=SGBLK-1 I SGBLK,0!(SGBLK'<$P(VGVOL(0),"^",3)) W *7,"  ..INVALID MAP NO." S ERFLG=1 Q
 I SGBLK?1N1":".N,SGBLK>(VGVOL-1) W *7," ...VOLUME NOT MOUNTED" S ERFLG=1 Q
 I SGBLK?1N1":".N I +$P(SGBLK,":",2)=0!($P(SGBLK,":",2)>$P(VGVOL(+SGBLK),"^",3)) W *7," ..INVALID RELATIVE MAP NO." S ERFLG=1 Q
 I SGBLK?1N1":".N S SGBLK=$P(VGVOL(+SGBLK),"^",2)\512+$P(SGBLK,":",2)-1
 I SGBLK="" S SGBLK=X D DEBLK
 I SGBLK'?1N.N W *7," ..ENTER NUMERIC VALUE" S ERFLG=1 Q
 Q
CONVERT ;
 F I=0:1:VGVOL-1 Q:SGBLK<(+$P(VGVOL(I),"^",2))
 I SGBLK'<(+$P(VGVOL(I),"^",2)) S SGDEVT=I
 E  S SGDEVT=I-1
 S SGBLK=SGBLK-$P(VGVOL(SGDEVT),"^",2) Q
DEBLK ;
 N (X,VGVOL) S C1=0,C2=X
 F I=VGVOL-1:-1:0 S C3=$P(VGVOL(I),"^",2)/512 I C3'>X S C1=I,C2=X-C3+1 Q
 ;W !,C1,":",C2
 Q

%L3UAR
%L3UAR ;DJM;ADD ROUTINE DIRECTORY; [ 06/30/92 12:36 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
 K SGRTN
 W !!,"ROUTINE DIRECTORY ALLOCATION"
PROMPT3 ;
 S SGBLK=1
 D CONVERT^%L3UAG
 I SGDEVT'<VGVOL W *7,"   ...VOLUME NOT MOUNTED" S SGBLK="^" Q
 I SGBLK'<(+$P(VGVOL(SGDEVT),"^",4)) W *7,"   ...BLOCK NOT DEFINED" S SGBLK="^" Q
 D ^UCIFIND I 'SGBLK S SGBLK="^" Q
 S SGRTN(1)=SGBLK W !,?5," ..ACTUAL BLOCK SELECTED: ",SGDEVT,":",SGBLK-SGBLKX
PROMPT4 ;
 S X=$S(SGRTN(1)<1536&'VGI:3,1:SGRTN(1)\512)
 S SGBLK=""
 D DEBLK^%L3UAG I SGBLK="^" Q
 D CHECK^%L3UAG I ERFLG S SGBLK="^" Q
 S SGRTN(2)=SGBLK Q

%L3UAV
%L3UAV ;DJM;ADD NEW UCI TO SYSTEM PART #2 [ 06/30/92 11:15 AM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP. @1984
VERIFY ;
 W !,?4,"GLOBAL DIRECTORY BLOCK" S SGBLK=SGGBL(1) D CONVERT
 W !,?7,"GLOBAL DATA EXPANSION AREA" S SGBLK=SGGBL(2) D CONVERT1
 W !,?7,"GLOBAL POINTER EXPANSION AREA" S SGBLK=SGGBL(3) D CONVERT1
 W !,?4,"ROUTINE DIRECTORY BLOCK" S SGBLK=SGRTN(1) D CONVERT
 W !,?7,"ROUTINE EXPANSION AREA" S SGBLK=SGRTN(2) D CONVERT1
 S SGANS="YES"
 F SGI=0:4:1020 V SGI:0:0:4
 V 1016:0:SGGBL(1):4,1020:0:1:1,1021:0:#81:1,1022:0:13:2
 V -SGGBL(1):"G"_VGI W !,"GLOBAL DIRECTORY CREATED."
 V 1016:0:SGRTN(1):4,1020:0:5:1,1021:0:#81:1,1022:0:5:2
 V -SGRTN(1):"G"_VGI W !,"ROUTINE DIRECTORY CREATED."
 S SGMAP=SGGBL(1)\512*512+1 V SGMAP:"G"_VGI,SGGBL(1)#512:0:-1:1,1022:0:$V(1022,0)-1,1021:0:1:1,-SGMAP:"G"_VGI
 S SGMAP=SGRTN(1)\512*512+1 V SGMAP:"G"_VGI,SGRTN(1)#512:0:-1:1,1022:0:$V(1022,0)-1,1021:0:1:1,-SGMAP:"G"_VGI
 W !,"BLOCK MAPS UPDATED TO REFLECT DIRECTORIES."
 S SGSTB=SGCUR*32+$V($V(VGI*4+VGTAB)+20),X=SGUCI D HASH^%VGUTIL
 V 0:"G"_VGI S UCIDSK=$V(544,0,4) V UCIDSK:"G"_VGI
 V SGSTB::Y:2,SGSTB+2::0:2
 V SGSTB+4::SGGBL(1):4,SGSTB+8::SGRTN(1):4,SGSTB+20::SGRTN(2):2,SGSTB+16::SGGBL(2):2,SGSTB+12::SGGBL(3):2
 V SGSTB+14::#FFFF:2 ;LAST BLOCK IN LAST DB
 V SGSTB+18::#FFFF:2 ;LAST BLOCK IN LAST DB
 V SGSTB+22::#FFFF:2 ;LAST BLOCK IN LAST DB
 V SGSTB+24::0:4,SGSTB+28::0:4
 S SGSTB=SGCUR*32
 V SGSTB:0:Y:2,SGSTB+2:0:0:2
 V SGSTB+4:0:SGGBL(1):4,SGSTB+8:0:SGRTN(1):4,SGSTB+20:0:SGRTN(2):2,SGSTB+16:0:SGGBL(2):2,SGSTB+12:0:SGGBL(3):2
 V SGSTB+14:0:#FFFF:2 ;last block in last db
 V SGSTB+18:0:#FFFF:2 ;last block in last db
 V SGSTB+22:0:#FFFF:2 ;last block in last db
 V SGSTB+24:0:0:4,SGSTB+28:0:0:4
 V 1021:0:1:1,-UCIDSK:"G"_VGI
 W !,"UCI: ",SGUCI," ...CREATED."
EXIT ;
 K %VGNA,ERFLG,FBLK,I,SGBLKX,VGTAB,Y,SGGBL,SGRTN,SGUCI,SGCUR,SGSTB,SGBLK,SGMAX,SGHELP,SGNDX,SGANS,SGMAP,SGI,UC,SGDEVT,SGUNIT,SV,SVA,SVJTAB,UCIDSK,%VOLP,VGI,UCIDSK,X,VGVOL,VG
 L  C 63 Q
CONVERT ;
 W $E("........................................",$X,40),"..:  "
 F VOLN=0:1:VGVOL-1 S:SGBLK<$P(VGVOL(VOLN),"^",2) X=VOLN-1 Q:SGBLK<$P(VGVOL(VOLN),"^",2)  S X=VOLN
 W X,":",SGBLK-$P(VGVOL(X),"^",2) K VOLN,X Q
CONVERT1 ;
 W $E("........................................",$X,40),"..:  "
 F VOLN=0:1:VGVOL-1 S:SGBLK<($P(VGVOL(VOLN),"^",2)\512) X=VOLN-1 Q:SGBLK<($P(VGVOL(VOLN),"^",2)\512)  S X=VOLN
 W X,":",SGBLK-($P(VGVOL(X),"^",2)\512)+1 K VOLN,X Q

%L3VIEW
%L3VIEW ; SHOW WINDOW ( SCREEN ONE ONLY)    [ 15.03.19 08:16 ] [ 17.02.09 12:07 ] [ 19.06.07 16:33 ] 
 ;INPUT:
 ;      %CLEAR=1 - jqn iewip ila, 0 - jqn iewip mr
 ;      %L3VMAC - WORK ARRAY NAME ("%L1NS" - FROM %L1NU)
 ;      %L3VLL - WINDOWS WIDTH
 ;      %SM - WINDOW LEFT ; %SMY - WINDOW.TOP  ; %SMI - IND BHALON
 ;OUTPUT: %L3VTO -"PGUP","PGDN"
 ;      %L3VN - CHOOSED INDEX ; %L3VNM - CHOOSED NAME
 ;EXECUTION:
 ;   %L1NUV("PROG",%UROV) - MUMPS COMMAND FOR EXECUTION
 ;   %L1NUV("UROV") - LEVEL FOR EXECUTION %L1NUV("PROG",UROV)
 ;   %L1NUV("PRMIN",N) - MUMPS COMMAND FOR INPUT PARAMETERS
 ;------------------------------------------------------------
 ;;S %SAY=%L1("MAC") X %XMSGV(1)
 N %MAC1,%I,%IO,%M,X1,Y1,X2,Y2,%LL,%XX,%YY,%L1OLD,%CD,%HBRY,%L3VINV,%MOUSE,%PORT
 ;
 D USE S %HBRY="",%CD="" I $D(%L1("NOHB")) K %HBRY
 W $C(27,91),"?25l"
 S %L3VTO="",%L3VN="",%L3VNM="" S:'$D(%L3VH) %L3VH=16
 S %L3VINV=0,%POPUP=0,%PLUS=0,%MINUS=0 ;
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 I '$D(%L3VMAC) W *7,!!?5,"*** A NAME ARRAY IS NOT DEFINED!" H 2 G ESC
 I $D(@%L3VMAC)<10 G ESC ;W *7,!!?5,"*** ARRAY HASN'T A DATA !" H 2 G ESC
 I '$D(%POSIC) D ^%L1C
 ;I $ZV["3.",$P=1 D GET^%VIDEO(.OLD,1,1,80,24,2)
 S %M=%L3VMAC_"(%I)" S %LL=0
 F %I=1:1 Q:'$D(@%M)  I $L(@%M)>%LL S %LL=$L(@%M)
 S %I1=%I-1 I '%I1 G ENDPR1
 I $D(%L3VLL),%LL<%L3VLL S %LL=%L3VLL
 I %LL<20 S %LL=20
 I %LL>75 S %LL=75
 S %L3VLL=%LL
 S %I=0
 I '$D(%SM) S %SM=80-%LL-4\2
 I %SM<1!(%SM>70) S %SM=80-%LL-4\2
 S:%SM<3 %SM=3
 I %SM+%LL>77 S %SM=77-%LL
 ;;I %I1<$G(%L3VLB) S %I1=$G(%L3VLB)
 S %SMX=%SM S:'$D(%SMY) %SMY=23-%I1-4\2
 S %SM=%SMX
 I %SMY>20 S %SMY=20
 I %SMY+%I1>22 S %SMY=22-%I1
 S:%SMY<1 %SMY=1
 S %L3VLB=%I1
 ;------------------------------- BODY ----------------
 S %I=$G(%SMI,1) I %I>%I1 S %I=1
 N %H0 S %H0=$P($H,",",2)
BG I $G(%CVET) N %CL0 S %CL0=$C(27,91)_"45;37m"
 I $D(%L3VNOHZG) G BD
 D PHON
 D PC
BD K %L3VNOHZG I $D(%L1("VIEW")) G ENDPR1
CYC0 D INV
CYC D ^%L1MSGBR I $D(%L1("PLACE")),%I'=$G(%IO) X %L1("PLACE") S %IO=%I
 ;;I '$G(%L1("TIME")) R *%A:1 E  G CYC
 ;;I $G(%L1("TIME")) D RTIME(%L1("TIME")) E  S %L3VTO="TIME" G ENDPR1
 G RDS
 ;
READ G:%TYPCRT="PC" 20 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27,$T(@%UPRCOD(ZB))'="" D CLBF G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL D CLBF G @%UPRCOD($ZB)
 ;
20 N C I %A=27 D DELAY R:'$D(%FLL) *%A1:%WAIT G:%A1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" I %A1=27 K %A1 S %A=27 Q
 .D DELAY R:'$D(%FLL) *%A2:%WAIT I %A2=27 K %A2 S %A=27 Q
 .S:%A2>0 C=%A1_%A2
 .R:'$D(%FLL) *%A3:%WAIT I %A3=27 K %A3 S %A=27 Q
 .S:%A3>0 C=C_%A3
 .R:'$D(%FLL) *%A4:%WAIT I %A4=27 K %A4 S %A=27 Q
 .S:%A4>0 C=C_%A4
 I %A=27 G 20
 I %A=20 G VNIZE ;,$G(^zms($I))?1"^"."%"1U.E W *27,7 D ^%L1ZMST S $X=%XX,$Y=%YY G:%TYPCRT'="PC" BG G CYC0
 I %A<48!(%A>57) X "I $G(%CD)'="""" S %SAY="""" X %XMSGN" S %CD=""
 I $L($ZB)>3,$D(%UPRCOD($ZB)) S %A=$ZB G COM
 I %A=0 D DELAY R *%A1:%WAIT I %A1>0 S %A="0"_%A1 G COM
 I %A>47,%A<58,$D(%L1("TXT1"))#2 D  G CYC
 .S %CD=%CD_$C(%A) S %SAY=%CD X %XMSGN
 .N %II,%OK S %OK=0 F %II=1:1:%I1 Q:'$D(@%L3VMAC@(%II))  D  Q:%OK
 ..N %ST,%IN,%LN S %ST=$G(@%L3VMAC@(%II))
 ..S %LN=+$P(%L1("TXT1"),"<>",$L(%L1("TXT1"),"<>"))
 ..S %CD0=$$SPA^%L1FRM($E(%ST,$L(%ST)-%LN+1,255))
 ..I $E(%CD0,1,$L(%CD))=%CD D CL S %I=%II D INV S %OK=1 Q
 ;
ENT I %A=13!(%A=32),$D(%L1NUV("PROG")) D  G BG
 .S %L1NUV("INDEX")=%I,%L1NUV("%L3VIEW")=@%M
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%L1NUV) D ^%L1C
 .S N="" F  S N=$O(%L1NUV("PRMIN",N)) Q:N=""  X %L1NUV("PRMIN",N)
 .I $D(%L1NUV("UROV")),$D(%L1NUV("PROG",%L1NUV("UROV"))) D @%L1NUV("PROG",%L1NUV("UROV")) Q
 .I $D(%L1NUV("PROG"))=1 D @%L1NUV("PROG") Q
 G:%A=13!(%A=32) ENDPR:'$D(%L1("LOOK")),PGDN
COM I $D(%UPRCOD(%A)),$T(@%UPRCOD(%A))'="" D CLBF G @%UPRCOD(%A)
 ;I "/.u"[$C(%A) S %L3VTO="." G ENDPR
 D CLBF G CYC
 ;-
INS S %A=13 G ENT
27 R *%A1:%WAIT D DELAY R *A1:%WAIT S %I=""
ENDPR S %L3VNM=@%M,%L3VN=%I I $D(%L1("DO")),%L3VN D  D DOOUT G:$G(%L1("DO"))="Q" ENDPR1 X:$D(%L1("T2")) %L1("T2") G BG
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%L1,%K,%IND,%COLI,%L3VN,%L3VNM) D ^%L1C
 .K %L1("DO-OUT") N %VNM S %VNM=%L3VNM N %L3VNM S %L3VNM=%VNM
 .N %VN S %VN=%L3VN N %L3VN S %L3VN=%VN
 .S MAC1="%L1",MAC2="%L1OLD" D ^%S1GC1
 .S N="" F  S N=$O(%L1("DO",N)) Q:N=""  I N?."%"1U.E S @N=%L1("DO",N)
 .S INDEX=%IND(%K+%L3VN-%COLI),%NXS=$G(@%L1("MAC")@(INDEX))
 .N %IND,%K,%COLI
 .X %XCL X %L1("DO") X:'$D(%L1("DO","-")) %chista K %L1 S MAC1="%L1OLD",MAC2="%L1" D ^%S1GC1
ENDPR1 K %A,%B,%M,%LL,%I1,%B1,%B2
 I $D(%L3VMAC),$D(@%L3VMAC) K @%L3VMAC
 W $C(27,91),"?25h"
 X %XCL
 K %SM,%SMX W:$D(%HBRY) %HBR
 K %HEAD,%L3VH,%L3VMAC,%HEAD,%L3VNM
 Q
 ;-
DOOUT ;
 N N S N="" F  S N=$O(%L1("DO-OUT",N)) Q:N=""  I N?."%"1U.E S @N=%L1("DO-OUT",N)
 Q
SERV ;
VVERX G:$D(%L1("LOOK")) PGUP I %I=1 D CL D  D INV G CYC
 .F %I=%I1:-1:1 Q:$D(@%M)
 D CL S %I=%I-1 D INV G CYC
VNIZ G:$D(%L1("LOOK")) PGDN I %I=%I1 D CL S %I=1 D INV G CYC
 I '$D(@%L3VMAC@(%I+1)) G CYC
 D CL S %I=%I+1 D INV G CYC
LEVO ;
PRAVO ;
 G CYC
PGDN S %L3VTO="PGDW" G ENDPR1
PGUP S %L3VTO="PGUP" G ENDPR1
PGRG S %L3VTO="P" G ENDPR1
FIND S %L3VTO="F8" G ENDPR1
ESC S %L3VTO="VVERX" G ENDPR1
VNIZE ;
 I $G(^zms($I))?1"^"."%"1U.E D  S $X=%XX,$Y=%YY G:%TYPCRT'="PC" BG G CYC0
 .N %NG,NOMGL S (NOMGL,%NG)=$$GN^%L1TMP("")
 .I MAC["^l2mn(" D SVGLB^%L1ZMST("^l2mn($P)")
 .W *27,7 D ^%L1ZMST S %HBRY=""
 .S %NG=NOMGL I MAC["^l2mn(" D RSGLB^%L1ZMST("^l2mn($P)")
 .D ^%L1C
 G CYC0
 ;-
PRSC ;
 D ^%L1PRSC
 G CYC0
CL X %XCL D PC1
 Q
CLBF N %JJ,%A F %JJ=1:1:100 R *%A:0
 Q
 ;-
INV W %CLI S %L3VINV=1 D PC1
 Q
 ;-
PHON ;
 I $D(%HEAD) S %SAY=$J(%HEAD,%LL)_"++"_(%SMY-1)_","_(%SM+%LL)_",HH,I" X %XMSG
 X %XCL ;;N Y1,X1,Y2,X2
 S %XX=%SM-1,%YY=%SMY+1 ;S %XX=%SM-3,%YY=%SMY-2
 S Y1=%YY,X1=%XX,Y2=%YY+(%I1*$S($D(%L1("RB")):3,1:1))+1,X2=%XX+%LL+3
 ;;I $D(%L1("RB")) S Y2=Y2-2
 I $D(%L1("NGR")),Y2<%L1("NGR") S Y2=%L1("NGR")
 ;;D CLEAR
 I '$D(%L1("RB")) D RBUA
 I $D(%L1("RB")) D
 .N %L1RBCL S %L1RBCL=%CV("BB")
 .I Y2>$G(%V3MAXY),$G(%V3MAXY)>-1 S %V3MAXY=Y2
 .I Y2<$G(%V3MAXY),$G(%V3MAXY)>-1 N Y2 S Y2=$G(%V3MAXY)+1
 .D CLEAR^%L1RBUA(Y1,X1-1,Y2+1,X2+1)
 I $G(%UR)>0,$D(%TOP(%UR)) S %SAY=$TR($J("",X2-X1+1)," ",$S(%TYPCRT["PC"&($G(MAC)["^l2mn("):$C(177),1:" "))_"++"_(Y1-1)_","_X2_",HH" X %XMSG S %SAY=" "_%TOP(%UR)_" sc ++"_(Y1-1)_","_(X1+6)_",H" X %XMSG
 I $D(%L1("MENU")),'$D(%L1("RB")) S %SAY=" PGUP ++"_(Y1-1)_","_(X1+1)_",E" X %XMSG
 I '$D(%L1("RB")) S %SAY=" d`ivi - "_$S(%TYPCRT="VT220":"<F11>",1:"<ESC>")_" ++"_(Y1-1)_","_(X2-2)_",HH" X %XMSG
 I $D(%L1("MENU")),'$D(%L1("RB")) S %SAY=" PGDN ++"_(Y2-1)_","_(X1+1)_",E" X %XMSG
 I '$D(%L1("LOOK")),'$D(%L1("MENU")),'$D(%L1("RB")) S %SAY="<CTRL>+P - qitcdl++"_(Y2-1)_","_(X2-2)_",HH" X %XMSG
 I $D(%L1("SORT")) S %SAY="<F8> - oiinl++"_(Y2-1)_","_(X2-25)_",HH" X %XMSG
 Q
 ;-
PC ;
 X %XCL N %I
 F %I=1:1:%I1 Q:'$D(@%M)  D PC1
 Q
PC1 S %YY=%SMY+(%I*$S($D(%L1("RB")):3,1:1)) S:$D(%L1("RB")) %YY=%YY-1
 I $D(%L1("RB")) D
 .N X1,X2,Y1,Y2
 .S X1=%SM-1,X2=X1+%LL+3
 .S Y1=%YY,Y2=%YY+2
 .
 .I %I=%I1,$D(%L1("MENU")) D  ; KAMA DAPIM
 ..N X10,X20 S X10=X1,X20=X2 N X1,X2,Y1,Y2
 ..S X1=X10,X2=X1+7,Y1=%YY+3,Y2=Y1+2
 ..W %CV("YF"),%LIGHT1 D RBUA
 ..S X1=X20-7,X2=X1+7,Y1=%YY+3,Y2=Y1+2
 ..W %CV("YF"),%LIGHT1 D RBUA N %XX,%YY
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X10+1,%YY=Y1 X %POSIC W "PGUP"
 ..S %XX=X20-6 X %POSIC W "PGDN"
 ..S X1=X10+8,X2=X20-8 Q:X2'>X1
 ..I X2-X1>10 S %POPUP=1,X2=X1+((X2-X1)\2)-1
 ..D RBUA
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-3)\2)-1,%YY=Y1 X %POSIC W "ESC"
 ..I $D(%L1("+-")),X2-X1>10 D
 ...S %POPUP=2
 ...S X1=X2+1,X2=X20-15
 ...D RBUA
 ...X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ...S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "  -"
 ...
 ...S X1=X2+1,X2=X20-8
 ...D RBUA
 ...X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ...S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "  +"
 ..Q:%POPUP'=1
 ..S X1=X2+1,X2=X20-8
 ..D RBUA
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "POPUP"
 .
 .W %CV("YF"),%LIGHT1 D RBUA
 ;
 S %XX=%SMX X %POSIC
 D
 .X %XCL I $G(@%M)["~",$G(%CVET) W %CV("BB"),%CV("YF"),%LIGHT1
 .E  I $G(%L3VINV) X %XCL W:'$G(%CVET) %CLI I $G(%CVET) W %CV("WB"),%CV("RF")
 .E  W %CV("MB"),%CV("YF"),%LIGHT1
 .I $D(%HBRY) W $J($E($$W^%L1C($G(@%M)),1,%LL),%LL) Q  ;;,%ENG
 .W $J($E($G(@%M),1,%LL),%LL) Q  ;;,%ENG
 ;
 S %L3VINV=0
 I %I=%I1,'$D(%L1("MENU")),$D(%L1("RB")) D  ; -- DAF 1
 .N X10,X20 S X10=X1,X20=X2 N X1,X2,Y1,Y2
 .S X1=X10,X2=X20
 .S %POPUP=0 I X2-X1>10 S %POPUP=1,X2=X1+((X2-X1)\2)
 .S Y1=%YY+3,Y2=Y1+2
 .S X1=X10 Q:X2'>X1  D RBUA
 .X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 .S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "E S C"
 .I $D(%L1("+-")),X2-X1>10 D  Q
 ..S %POPUP=2
 ..S X1=X2+1,X2=X1+(X20-X1\2)-1
 ..D RBUA
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "  -"
 ..
 ..S X1=X2+1,X2=X20
 ..D RBUA
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "  +"
 .
 .Q:%POPUP'=1  Q:$D(%L1NU("+-"))
 .S X1=X2+1,X2=X20 Q:X2'>X1  D RBUA
 .X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 .S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "POPUP"
 Q
 ;-
CLEAR ;
 X %XCL N %I
 ;I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_%SMY_";"_%SM_";"_%V3MAXY_";"_(%SM+%LL+3)_"${" Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_32_";"_(%SMY+1)_";"_%SM_";"_%V3MAXY_";"_(%SM+%LL+2)_"$x" Q
 F %I=1:1:%V3MAXY-%SMY-1 S %XX=%SM-1,%YY=%I+%SMY X %POSIC W $J("",%LL+3)
 Q
 ;-
CVET W $J("",%LL+4)
 I $D(%CL0) W *27,*91,%CL0,"m"
 E  X %XCL
 Q
 ;-
RBUA S %L1RBCL="" S:$G(%CVET) %L1RBCL=%CV("MB")
 N %XX,%YY
 I $D(%L1("CVB")) S %L1RBCL=%CV(%L1("CVB")),%CL0=%L1RBCL_%CV("WF")
 D ^%L1RBUA  K %L1RBCL
 Q
DELAY I %TYPCRT="PC1" N %JJJ F %JJJ=1:1:2000
 Q
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
RTIME(%TM) ;
 N %JJ F %JJ=1:1:%TM D ^%L1MSGBR R *%A:1 Q:$T
 Q
RDS ;
 I $G(%L1("TIME")),$P($H,",",2)-%H0>$G(%L1("TIME")) S %L3VTO="TIME" G ENDPR1
 H .1
 R *%A:0 E  G MOUSE:%MOUSE,CYC
 G READ
MOUSE ;
 S %CRD=$$REPORT^%L2MOUSE($G(%PORT),%XMIN,%XMAX,%YMIN,%YMAX) I '%CRD G CYC
 S LAB=""
 I $P(%CRD,",",2)'<Y2,($P(%CRD,",",2)'>(Y2+3)) D  I LAB'="" G @LAB
 .N X10,X20 S X10=X1,X20=X2 N X1,X2,%XX,%YY
 .
 .I $D(%L1("MENU")) D  Q  ; KAMA DAPIM
 ..I $P(%CRD,",")<(X10+7)&($P(%CRD,",")'<X10) S LAB="PGUP" Q
 ..I $P(%CRD,",")'>X20&($P(%CRD,",")'<(X20-7)) S LAB="PGDN" Q
 ..N X2 S X2=X20-7 I $G(%POPUP) S X2=X10+8+((X20-X10-14)\2)
 ..I $P(%CRD,",")>(X10+7)&($P(%CRD,",")<X2) S LAB="ESC" Q
 ..I $G(%POPUP)=1,$P(%CRD,",")>(X2+1)&($P(%CRD,",")<(X20-7)) S LAB="VNIZE" Q
 ..I $G(%POPUP)=2,$P(%CRD,",")>(X2+1)&($P(%CRD,",")<(X20-15)) S LAB="-" Q
 ..I $G(%POPUP)=2,$P(%CRD,",")>(X2+1)&($P(%CRD,",")<(X20-7)) S LAB="+" Q
 .
 .S X2=X20 I $G(%POPUP)=1 S X2=X10+((X20-X10)\2)
 .I $P(%CRD,",")>X10&($P(%CRD,",")<X2) S LAB="ESC" Q
 .I $G(%POPUP)=1,$P(%CRD,",")>X2,$P(%CRD,",")<X20 S LAB="VNIZE" Q
 .I $G(%POPUP)=2,$P(%CRD,",")>X2,$P(%CRD,",")<(X2+(X20-X2\2)) S LAB="-" Q
 .I $G(%POPUP)=2,$P(%CRD,",")>X2+(X20-X2\2),$P(%CRD,",")<X20 S LAB="+" Q
 ;
 I $P(%CRD,",")<(X1-1)!($P(%CRD,",")>(X2+1)) G RDS ;ESC
 I $P(%CRD,",",2)<(Y1-1)!($P(%CRD,",",2)>(Y2+1)) G RDS ; ESC
 S %IN=$P(%CRD,",",2)-%SMY-1+$G(^SMXY(%L3MYDVN))\3+1
 I '$D(@%L3VMAC@(%IN)) G RDS ;ESC
 ;
 I %IN'=%I D
 .D CL
 .S %I=%IN D INV
 ;
 S %A=13 G ENT
 

%L3VIEW0
%L3VIEW ; SHOW WINDOW ( SCREEN ONE ONLY)    [ 13.09.06 11:07 ] [ 18.12.05 17:11 ] [ 29.11.05 09:54 ]
 ;INPUT:
 ;      %CLEAR=1 - jqn iewip ila, 0 - jqn iewip mr
 ;      %L3VMAC - WORK ARRAY NAME ("%L1NS" - FROM %L1NU)
 ;      %L3VLL - WINDOWS WIDTH
 ;      %SM - WINDOW LEFT ; %SMY - WINDOW.TOP  ; %SMI - IND BHALON
 ;OUTPUT: %L3VTO -"PGUP","PGDN"
 ;      %L3VN - CHOOSED INDEX ; %L3VNM - CHOOSED NAME
 ;EXECUTION:
 ;   %L1NUV("PROG",%UROV) - MUMPS COMMAND FOR EXECUTION
 ;   %L1NUV("UROV") - LEVEL FOR EXECUTION %L1NUV("PROG",UROV)
 ;   %L1NUV("PRMIN",N) - MUMPS COMMAND FOR INPUT PARAMETERS
 ;------------------------------------------------------------
 ;;S %SAY=%L1("MAC") X %XMSGV(1)
 N %MAC1,%I,%IO,%M,X1,Y1,X2,Y2,%LL,%XX,%YY,%L1OLD,%CD,%HBRY,%L3VINV,%MOUSE,%PORT
 ;;I $P'["/dev/pts/" S %V3MAXY=-1
 D USE S %HBRY="",%CD="" I $D(%L1("NOHB")) K %HBRY
 S %L3VTO="",%L3VN="",%L3VNM="" S:'$D(%L3VH) %L3VH=16
 S %L3VINV=0,%POPUP=0 ;;W %ENG
 S %MOUSE=$$INIT^%L2MOUSE,%PORT=$$PORT^%L2MOUSE
 I '$D(%L3VMAC) W *7,!!?5,"*** A NAME ARRAY IS NOT DEFINED!" H 2 G ESC
 I $D(@%L3VMAC)<10 G ESC ;W *7,!!?5,"*** ARRAY HASN'T A DATA !" H 2 G ESC
 I '$D(%POSIC) D ^%L1C
 ;I $ZV["3.",$P=1 D GET^%VIDEO(.OLD,1,1,80,24,2)
 S %M=%L3VMAC_"(%I)" S %LL=0
 F %I=1:1 Q:'$D(@%M)  I $L(@%M)>%LL S %LL=$L(@%M)
 S %I1=%I-1 I '%I1 G ENDPR1
 I $D(%L3VLL),%LL<%L3VLL S %LL=%L3VLL
 I %LL<20 S %LL=20
 I %LL>75 S %LL=75
 S %L3VLL=%LL
 S %I=0
 I '$D(%SM) S %SM=80-%LL-4\2
 I %SM<1!(%SM>70) S %SM=80-%LL-4\2
 S:%SM<3 %SM=3
 I %SM+%LL>77 S %SM=77-%LL
 ;;I %I1<$G(%L3VLB) S %I1=$G(%L3VLB)
 S %SMX=%SM S:'$D(%SMY) %SMY=23-%I1-4\2
 S %SM=%SMX
 I %SMY>20 S %SMY=20
 I %SMY+%I1>22 S %SMY=22-%I1
 S:%SMY<1 %SMY=1
 S %L3VLB=%I1
 ;------------------------------- BODY ----------------
 S %I=$G(%SMI,1) I %I>%I1 S %I=1
 N %H0 S %H0=$P($H,",",2)
BG I $G(%CVET) N %CL0 S %CL0=$C(27,91)_"45;37m"
 I $D(%L3VNOHZG) G BD
 D PHON
 D PC
BD K %L3VNOHZG I $D(%L1("VIEW")) G ENDPR1
CYC0 D INV
CYC D ^%L1MSGBR I $D(%L1("PLACE")),%I'=$G(%IO) X %L1("PLACE") S %IO=%I
 ;;I '$G(%L1("TIME")) R *%A:1 E  G CYC
 ;;I $G(%L1("TIME")) D RTIME(%L1("TIME")) E  S %L3VTO="TIME" G ENDPR1
 G RDS
 ;
READ G:%TYPCRT="PC" 20 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27,$T(@%UPRCOD(ZB))'="" D CLBF G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL D CLBF G @%UPRCOD($ZB)
 ;
20 N C I %A=27 D DELAY R:'$D(%FLL) *%A1:%WAIT G:%A1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" I %A1=27 K %A1 S %A=27 Q
 .D DELAY R:'$D(%FLL) *%A2:%WAIT I %A2=27 K %A2 S %A=27 Q
 .S:%A2>0 C=%A1_%A2
 .R:'$D(%FLL) *%A3:%WAIT I %A3=27 K %A3 S %A=27 Q
 .S:%A3>0 C=C_%A3
 .R:'$D(%FLL) *%A4:%WAIT I %A4=27 K %A4 S %A=27 Q
 .S:%A4>0 C=C_%A4
 I %A=27 G 20
 I %A=20 G VNIZE ;,$G(^zms($I))?1"^"."%"1U.E W *27,7 D ^%L1ZMST S $X=%XX,$Y=%YY G:%TYPCRT'="PC" BG G CYC0
 I %A<48!(%A>57) X "I $G(%CD)'="""" S %SAY="""" X %XMSGN" S %CD=""
 I $L($ZB)>3,$D(%UPRCOD($ZB)) S %A=$ZB G COM
 I %A=0 D DELAY R *%A1:%WAIT I %A1>0 S %A="0"_%A1 G COM
 I %A>47,%A<58,$D(%L1("TXT1"))#2 D  G CYC
 .S %CD=%CD_$C(%A) S %SAY=%CD X %XMSGN
 .N %II,%OK S %OK=0 F %II=1:1:%I1 Q:'$D(@%L3VMAC@(%II))  D  Q:%OK
 ..N %ST,%IN,%LN S %ST=$G(@%L3VMAC@(%II))
 ..S %LN=+$P(%L1("TXT1"),"<>",$L(%L1("TXT1"),"<>"))
 ..S %CD0=$$SPA^%L1FRM($E(%ST,$L(%ST)-%LN+1,255))
 ..I $E(%CD0,1,$L(%CD))=%CD D CL S %I=%II D INV S %OK=1 Q
 ;
ENT I %A=13!(%A=32),$D(%L1NUV("PROG")) D  G BG
 .S %L1NUV("INDEX")=%I,%L1NUV("%L3VIEW")=@%M
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%L1NUV) D ^%L1C
 .S N="" F  S N=$O(%L1NUV("PRMIN",N)) Q:N=""  X %L1NUV("PRMIN",N)
 .I $D(%L1NUV("UROV")),$D(%L1NUV("PROG",%L1NUV("UROV"))) D @%L1NUV("PROG",%L1NUV("UROV")) Q
 .I $D(%L1NUV("PROG"))=1 D @%L1NUV("PROG") Q
 G:%A=13!(%A=32) ENDPR:'$D(%L1("LOOK")),PGDN
COM I $D(%UPRCOD(%A)),$T(@%UPRCOD(%A))'="" D CLBF G @%UPRCOD(%A)
 ;I "/.u"[$C(%A) S %L3VTO="." G ENDPR
 D CLBF G CYC
 ;-
INS S %A=13 G ENT
27 R *%A1:%WAIT D DELAY R *A1:%WAIT S %I=""
ENDPR S %L3VNM=@%M,%L3VN=%I I $D(%L1("DO")),%L3VN D  D DOOUT G:$G(%L1("DO"))="Q" ENDPR1 X:$D(%L1("T2")) %L1("T2") G BG
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%L1,%K,%IND,%COLI,%L3VN,%L3VNM) D ^%L1C
 .K %L1("DO-OUT") N %VNM S %VNM=%L3VNM N %L3VNM S %L3VNM=%VNM
 .N %VN S %VN=%L3VN N %L3VN S %L3VN=%VN
 .S MAC1="%L1",MAC2="%L1OLD" D ^%S1GC1
 .S N="" F  S N=$O(%L1("DO",N)) Q:N=""  I N?."%"1U.E S @N=%L1("DO",N)
 .S INDEX=%IND(%K+%L3VN-%COLI),%NXS=$G(@%L1("MAC")@(INDEX))
 .N %IND,%K,%COLI
 .X %XCL X %L1("DO") X:'$D(%L1("DO","-")) %chista K %L1 S MAC1="%L1OLD",MAC2="%L1" D ^%S1GC1
ENDPR1 K %A,%B,%M,%LL,%I1,%B1,%B2
 I $D(%L3VMAC),$D(@%L3VMAC) K @%L3VMAC
 X %XCL
 K %SM,%SMX W:$D(%HBRY) %HBR
 K %HEAD,%L3VH,%L3VMAC,%HEAD,%L3VNM
 Q
 ;-
DOOUT ;
 N N S N="" F  S N=$O(%L1("DO-OUT",N)) Q:N=""  I N?."%"1U.E S @N=%L1("DO-OUT",N)
 Q
SERV ;
VVERX G:$D(%L1("LOOK")) PGUP I %I=1 D CL D  D INV G CYC
 .F %I=%I1:-1:1 Q:$D(@%M)
 D CL S %I=%I-1 D INV G CYC
VNIZ G:$D(%L1("LOOK")) PGDN I %I=%I1 D CL S %I=1 D INV G CYC
 I '$D(@%L3VMAC@(%I+1)) G CYC
 D CL S %I=%I+1 D INV G CYC
PGDN S %L3VTO="PGDW" G ENDPR1
PGUP S %L3VTO="PGUP" G ENDPR1
PGRG S %L3VTO="P" G ENDPR1
FIND S %L3VTO="F8" G ENDPR1
ESC S %L3VTO="VVERX" G ENDPR1
VNIZE ;
 I $G(^zms($I))?1"^"."%"1U.E D  S $X=%XX,$Y=%YY G:%TYPCRT'="PC" BG G CYC0
 .N %NG,NOMGL S (NOMGL,%NG)=$$GN^%L1TMP("")
 .I MAC["^l2mn(" D SVGLB^%L1ZMST("^l2mn($P)")
 .W *27,7 D ^%L1ZMST S %HBRY=""
 .S %NG=NOMGL I MAC["^l2mn(" D RSGLB^%L1ZMST("^l2mn($P)")
 .D ^%L1C
 G CYC0
 ;-
CL X %XCL D PC1
 Q
CLBF N %JJ,%A F %JJ=1:1:100 R *%A:0
 Q
 ;-
INV W %CLI S %L3VINV=1 D PC1
 Q
 ;-
PHON ;
 I $D(%HEAD) S %SAY=$J(%HEAD,%LL)_"++"_(%SMY-1)_","_(%SM+%LL)_",HH,I" X %XMSG
 X %XCL ;;N Y1,X1,Y2,X2
 S %XX=%SM-1,%YY=%SMY+1 ;S %XX=%SM-3,%YY=%SMY-2
 S Y1=%YY,X1=%XX,Y2=%YY+(%I1*$S($D(%L1("RB")):3,1:1))+1,X2=%XX+%LL+3
 ;;I $D(%L1("RB")) S Y2=Y2-2
 I $D(%L1("NGR")),Y2<%L1("NGR") S Y2=%L1("NGR")
 ;;D CLEAR
 I '$D(%L1("RB")) D RBUA
 I $D(%L1("RB")) D
 .N %L1RBCL S %L1RBCL=%CV("BB")
 .I Y2>$G(%V3MAXY),$G(%V3MAXY)>-1 S %V3MAXY=Y2
 .I Y2<$G(%V3MAXY),$G(%V3MAXY)>-1 N Y2 S Y2=$G(%V3MAXY)+1
 .D CLEAR^%L1RBUA(Y1,X1-1,Y2+1,X2+1)
 I $G(%UR)>0,$D(%TOP(%UR)) S %SAY=$TR($J("",X2-X1+1)," ",$S(%TYPCRT["PC"&($G(MAC)["^l2mn("):$C(177),1:" "))_"++"_(Y1-1)_","_X2_",HH" X %XMSG S %SAY=" "_%TOP(%UR)_" sc ++"_(Y1-1)_","_(X1+6)_",H" X %XMSG
 I $D(%L1("MENU")),'$D(%L1("RB")) S %SAY=" PGUP ++"_(Y1-1)_","_(X1+1)_",E" X %XMSG
 I '$D(%L1("RB")) S %SAY=" d`ivi - "_$S(%TYPCRT="VT220":"<F11>",1:"<ESC>")_" ++"_(Y1-1)_","_(X2-2)_",HH" X %XMSG
 I $D(%L1("MENU")),'$D(%L1("RB")) S %SAY=" PGDN ++"_(Y2-1)_","_(X1+1)_",E" X %XMSG
 I '$D(%L1("LOOK")),'$D(%L1("MENU")),'$D(%L1("RB")) S %SAY="<CTRL>+P - qitcdl++"_(Y2-1)_","_(X2-2)_",HH" X %XMSG
 I $D(%L1("SORT")) S %SAY="<F8> - oiinl++"_(Y2-1)_","_(X2-25)_",HH" X %XMSG
 Q
 ;-
PC ;
 X %XCL N %I
 F %I=1:1:%I1 Q:'$D(@%M)  D PC1
 Q
PC1 S %YY=%SMY+(%I*$S($D(%L1("RB")):3,1:1)) S:$D(%L1("RB")) %YY=%YY-1
 I $D(%L1("RB")) D
 .N X1,X2,Y1,Y2
 .S X1=%SM-1,X2=X1+%LL+3
 .S Y1=%YY,Y2=%YY+2
 .
 .I %I=%I1,$D(%L1("MENU")) D
 ..N X10,X20 S X10=X1,X20=X2 N X1,X2,Y1,Y2
 ..S X1=X10,X2=X1+7,Y1=%YY+3,Y2=Y1+2
 ..W %CV("YF"),%LIGHT1 D RBUA
 ..S X1=X20-7,X2=X1+7,Y1=%YY+3,Y2=Y1+2
 ..W %CV("YF"),%LIGHT1 D RBUA N %XX,%YY
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X10+1,%YY=Y1 X %POSIC W "PGUP"
 ..S %XX=X20-6 X %POSIC W "PGDN"
 ..S X1=X10+8,X2=X20-8 Q:X2'>X1
 ..I X2-X1>10 S %POPUP=1,X2=X1+((X2-X1)\2)
 ..D RBUA
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "ESC"
 ..Q:'%POPUP
 ..S X1=X2+1,X2=X20-8
 ..D RBUA
 ..X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 ..S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "POPUP"
 .
 .W %CV("YF"),%LIGHT1 D RBUA
 ;
 S %XX=%SMX X %POSIC
 D
 .X %XCL I $G(@%M)["~" W %CV("BB"),%CV("YF"),%LIGHT1
 .E  I $G(%L3VINV) X %XCL W %CV("WB"),%CV("RF")
 .E  W %CV("MB"),%CV("YF"),%LIGHT1
 .I $D(%HBRY) W $J($E($TR($TR($G(@%M),%TES1,%TES2),%TEN,%THB),1,%LL),%LL) Q  ;;,%ENG
 .W $J($E($G(@%M),1,%LL),%LL) Q  ;;,%ENG
 ;
 S %L3VINV=0
 I %I=%I1,'$D(%L1("MENU")),$D(%L1("RB")) D
 .N X10,X20 S X10=X1,X20=X2 N X1,X2,Y1,Y2
 .S X1=X10,X2=X20
 .S %POPUP=0 I X2-X1>10 S %POPUP=1,X2=X1+((X2-X1)\2)
 .S Y1=%YY+3,Y2=Y1+2
 .S X1=X10 Q:X2'>X1  D RBUA
 .X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 .S %XX=X1+((X2-X1-3)\2),%YY=Y1 X %POSIC W "E S C"
 .S X1=X2+1,X2=X20 Q:X2'>X1  D RBUA
 .X %XCL W %CV("MB"),%CV("YF"),%LIGHT1
 .S %XX=X1+((X2-X1-5)\2),%YY=Y1 X %POSIC W "POPUP"
 Q
 ;-
CLEAR ;
 X %XCL N %I
 ;I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_%SMY_";"_%SM_";"_%V3MAXY_";"_(%SM+%LL+3)_"${" Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91)_32_";"_(%SMY+1)_";"_%SM_";"_%V3MAXY_";"_(%SM+%LL+2)_"$x" Q
 F %I=1:1:%V3MAXY-%SMY-1 S %XX=%SM-1,%YY=%I+%SMY X %POSIC W $J("",%LL+3)
 Q
 ;-
CVET W $J("",%LL+4)
 I $D(%CL0) W *27,*91,%CL0,"m"
 E  X %XCL
 Q
 ;-
RBUA S %L1RBCL="" S:$G(%CVET) %L1RBCL=%CV("MB")
 N %XX,%YY
 I $D(%L1("CVB")) S %L1RBCL=%CV(%L1("CVB")),%CL0=%L1RBCL_%CV("WF")
 D ^%L1RBUA  K %L1RBCL
 Q
DELAY I %TYPCRT="PC1" N %JJJ F %JJJ=1:1:2000
 Q
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
RTIME(%TM) ;
 N %JJ F %JJ=1:1:%TM D ^%L1MSGBR R *%A:1 Q:$T
 Q
RDS ;
 I $G(%L1("TIME")),$P($H,",",2)-%H0>$G(%L1("TIME")) S %L3VTO="TIME" G ENDPR1
 H .1
 R *%A:0 E  G MOUSE:%MOUSE,CYC
 G READ
MOUSE ;
 S %CRD=$$REPORT^%L2MOUSE($G(%PORT),%XMIN,%XMAX,%YMIN,%YMAX) I '%CRD G CYC
 S LAB=""
 I $P(%CRD,",",2)'<Y2,($P(%CRD,",",2)'>(Y2+3)) D  I LAB'="" G @LAB
 .N X10,X20 S X10=X1,X20=X2 N X1,X2,%XX,%YY
 .
 .I $D(%L1("MENU")) D  Q
 ..I $P(%CRD,",")<(X10+7)&($P(%CRD,",")'<X10) S LAB="PGUP" Q
 ...X %XCL W %CV("WB"),%CV("RF")
 ...S %XX=X10+1,%YY=Y2 X %POSIC W "PGUP"
 ..I $P(%CRD,",")'>X20&($P(%CRD,",")'<(X20-7)) S LAB="PGDN" Q
 ...X %XCL W %CV("WB"),%CV("RF")
 ...S %XX=X20-6,%YY=Y2 X %POSIC W "PGDN"
 ..N X2 S X2=X20-7 I $G(%POPUP) S X2=X10+8+((X20-X10-14)\2)
 ..I $P(%CRD,",")>(X10+7)&($P(%CRD,",")<X2) S LAB="ESC" Q
 ...X %XCL W %CV("WB"),%CV("RF")
 ...S X1=X10+8,X2=X2-1
 ...S %XX=X1+((X2-X1-3)\2),%YY=Y2 X %POSIC W "ESC"
 ..I $G(%POPUP),$P(%CRD,",")>(X2+1)&($P(%CRD,",")<(X20-7)) S LAB="VNIZE" Q
 ...X %XCL W %CV("WB"),%CV("RF")
 ...S X1=X2+1,X2=X20-8
 ...S %XX=X1+((X2-X1-5)\2)-1,%YY=Y2+2 X %POSIC W "POPUP"
 .
 .S X2=X20 I $G(%POPUP) S X2=X10+((X20-X10)\2)
 .I $P(%CRD,",")>X10&($P(%CRD,",")<X2) S LAB="ESC" Q
 ..X %XCL W %CV("WB"),%CV("RF")
 ..N X1 S X1=X10 ;,X2=X20
 ..S %XX=X1+((X2-X1-3)\2),%YY=Y2 X %POSIC W "E S C"
 .I $G(%POPUP),$P(%CRD,",")>X2,$P(%CRD,",")<X20 S LAB="VNIZE" Q
 ..X %XCL W %CV("WB"),%CV("RF")
 ..N X1 S X1=X2+1,X2=X20
 ..S %XX=X1+((X2-X1-5)\2),%YY=Y2 X %POSIC W "POPUP"
 ;
 I $P(%CRD,",")<(X1-1)!($P(%CRD,",")>(X2+1)) G RDS ;ESC
 I $P(%CRD,",",2)<(Y1-1)!($P(%CRD,",",2)>(Y2+1)) G RDS ; ESC
 S %IN=$P(%CRD,",",2)-%SMY-1\3+1
 I '$D(@%L3VMAC@(%IN)) G RDS ;ESC
 ;
 I %IN'=%I D
 .D CL
 .S %I=%IN D INV
 ;
 S %A=13 G ENT

%L3VLD
%L3VLD ;RTM;DATABASE INTEGRITY UTILITY; [ 31.12.06 08:54 ] [ 18.06.00  2:32 PM ] [ 10/04/2000  5:03 PM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1984
 I $ZV["4." D  G DONE
 .U 0 W !!," WAIT ..."
 .S %ERR=0 D ^%L4VLD I '$G(%ERR) S SUMBAD=0 Q
 .I $G(%ERR) D
 ..N %N K ^%VLD S %N="",SUMBAD=0 F  S %N=$O(%ERR(%N)) Q:%N=""  S SUMBAD=SUMBAD+1,^%VLD(%N)=%ERR(%N)
 S %ZT="ERR^%L3VLD",$ZT="S zr=$R "_^ZT_"ZG "_$ZL_":%MGR^%LOGON"
 S %DEV=$P U 0
 S %HI=$V(2,$J,2) S SUMBAD=0 ; home UCI
 O 63::0 E  W !,"VIEW BUFFER IN USE.. REQUEST ABORTED" K %DEV Q
 S VIEW=$ZB($V($V(44)+2,-3,2),#80,1) I VIEW V 0:$J:$ZB($V(0,$J,2),#8000,7):2
 W !?10,$P($P($ZV,","),"-")," - DATABASE INTEGRITY UTILITY"
VG ;SELECT VOLUME GROUP
 S (%ALLFLG,%UCI)="" D GETVG^%VGUTIL I VG=1 S %VG="G0",%VGN=VG(0),(%VGI,%VGR)=0 G UCI ;ONLY ONE VOLUME GROUP
VG1 ;R !!,"Enter volume group to validate <ALL>: ",%VGR S %VGI=%VGR G:%VGI="^"!(%VGI="^Q")!(%VGI="^Q") EXIT S:%VGI="" (%VGI,%VGR)="ALL" G:%VGI="ALL" TRACE
 S (%VGI,%VGR)="ALL" G:%VGI="ALL" TRACE
UCI S %UCI="ALL"
TRACE S %AN="N" ;
 I $E("NO",1,$L(%AN))=%AN!($E("no",1,$L(%AN))=%AN) S TR=0
 I $D(TR)<1 W "   ??",*7 G TRACE
 I %UCI="ALL"!(%VGR="ALL") D CRT^%SDEV G:$D(QUIT) EXIT S A=$$^%L1ZOS(2,"VALOK")
 S SV=$V(44),%PB=$V(SV+8,-3,2),%USZ=$V(SV+14,-3,2) S %VGT=$V(4*10+%PB+SV) G UCIALL:%UCI="ALL",VGALL:%VGI="ALL" D PTR
 V 2:$J:%VGI*32+%UI:2 D INT^%GSEL I '$D(^UTILITY($J)) W !!,"No Globals Selected" V 2:$J:%HI:2 G TYPE
START D CRT^%SDEV G:$D(QUIT) TYPE
VALROUT G:%TYPE=1 VALGLOB
 U 0 W !!,"VALIDATING ROUTINES FROM [",%UN,",",%VGN,"]",!
 I %DEV'=$P U %DEV W !!,"VALIDATING ROUTINES FROM [",%UN,",",%VGN,"]",!
 U %DEV ZM:TR 1 S %ER=$ZV(%RBN,9999,%VGI) ZM:TR 0
 S BAD=0 I %ER'="" S %NM="" D VALIDAT1
 W !,"ALL ROUTINES PROCESSED, ",$S(BAD=0:"NO",1:BAD)," ERROR",$S(BAD=0:"S",BAD=1:"",1:"S")," FOUND."
 S SUMBAD=SUMBAD+BAD
VALGLOB G:%TYPE=2 DONE
 S BAD=0,%GLB="" U 0 W !!,"VALIDATING GLOBALS FROM [",%UN,",",%VGN,"]",!
 I %DEV'=$P U %DEV W !!,"VALIDATING GLOBALS FROM [",%UN,",",%VGN,"]",!
 U %DEV V 2:$J:%VGI*32+%UI:2
 F %COUNT=1:1 S %GLB=$S(%UCI'="ALL"&(%VGR'="ALL"):$O(^UTILITY($J,%GLB)),1:$O(@("^"_%GLB))) Q:%GLB=""  S %PRT=$ZBN(@("^["""_%UN_"""]"_%GLB)) I %PRT D
 . U 0 W:%DEV'=$P ?%COUNT-1#8*10,%GLB W:%DEV'=$P&(%COUNT#8=0) ! U %DEV
 . V %PRT:"G"_%VGI I $V(1020,0,1)'=2 S %ER="3,"_%PRT_",0",%NM=%GLB D VALIDAT1 Q
 . ZM:TR 1 S %ER=$ZV(%PRT,9999,%VGI) ZM:TR 0 I %ER'="" S %NM=%GLB D VALIDAT1
 W !,%COUNT-1," GLOBAL",$S(%COUNT'=2:"S",1:"")," PROCESSED, ",$S(BAD=0:"NO",1:BAD)," ERROR",$S(BAD=0:"S",BAD=1:"",1:"S")," FOUND."
 S SUMBAD=SUMBAD+BAD
 V 2:$J:%HI:2 Q:%UCI="ALL"!(%VGR="ALL")
DONE U 0 W !!,"DONE"
 I SUMBAD D
 .S %L1RBCL="" D TV^%L1RBUA(4,15,10,72)
 .W *7,*7 S %SAY="mipezp qiqaa ze`iby yi++5,70,HH,I" X %XMSG
 .S %SAY="rvea `l ieaib++6,70,HH,I" X %XMSG
 .S %SAY="dpkez wtql xywzdl `p++7,70,HH,I" X %XMSG
 .S %GET="<ENTER>" D N^%L1GET
 I 'SUMBAD O 51::2 I  O 51:("VALOK":"W") U 51 W $H_": OK",$C(13) C 51
EXIT I $D(%DEV),%DEV'=$P U %DEV W ! C %DEV
 I $ZV["4." K (QUIT) Q
 V 2:$J:%HI:2 C 63 V:VIEW 0:$J:$ZB($V(0,$J,2),#8000,2):2 K (QUIT) Q
ERR ;
 V 2:$J:%HI:2 V:VIEW 0:$J:$ZB($V(0,$J,2),#8000,2):2
 I $F($ZS,"<INRPT>") U 0 W !!,"...ABORTED." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
PTR ;GET POINTERS TO DIRECTORY BLOCKS FOR UCI
 S %VGP=$V(%VGI*4+%VGT),%UT=$V(%VGP+20),%UT=%UI-1*%USZ+%UT,%GBN=$V(%UT+4,-3,4),%RBN=$V(%UT+8,-3,4)
 Q
VGALL ;VALIDATE ALL VOLUME GROUPS
 S %ALLFLG=1 F %VGI=0:1:7 I $D(VG(%VGI)) S %VG="G"_%VGI,%VGN=VG(%VGI),VGP=$V(%VGI*4+%VGT) D:$V(VGP+4,-3,2) UCIALL
 G DONE
UCIALL ;VALIDATE ALL UCIS FOR A GIVEN VOLUME GROUP
 S %TYPE=3 F %UI=1:1:$V(12,-4,2) S %UN=$P($ZU(%UI,%VGI),",") I %UN'="" D PTR,VALROUT
 Q:%ALLFLG  G DONE
UTIL ;SET UP UTILITY GLOBAL FOR ALL
 V 2:$J:%VGI*32+%UI:2 K ^UTILITY($J) S S="" F J=0:0 S S=$N(@("^"_S)) Q:S=-1  S ^UTILITY($J,S)=""
 Q
VALIDAT1 ;
 V 2:$J:%HI:2 D %L3VLD1 V 2:$J:32*%VGI+%UI:2
 Q
%L3VLD1 ;RTM;DATABASE VALIDATION UTILITY PART II; [ 11/29/90  8:56 AM ]
 ;COPYRIGHT MICRONETICS DESIGN CORP @1984
 S VALIDATE=1 ; if called from VALIDATE
INT W:%NM'="" !!,"^",%NM ; VERIFY calls it here with VALIDATE=0
 F %Z=1:1:$L(%ER,"^") S %ET=$P(%ER,"^",%Z),BAD=BAD+1 D RPT
 W ! Q
RPT ;
 S %B=$P(%ET,",",2) W:VALIDATE ! W !,"BLOCK ",+%B,","
 I $D(%GBN) S:%NM'="" $P(%B,":",$L(%B,":")+1)=%GBN
 W ?15,"OFFSET ",$J($P(%ET,",",3),3,0)
 W ": ",$S($T(@$P(%ET,",",1))'="":$P($T(@$P(%ET,",",1)),";",2,999),1:"UNKNOWN ERROR: "_$P(%ET,",",1))
 I VALIDATE W !,"PATH TO BLOCK: " F %I=$L(%B,":"):-1:1 S %X=$P(%B,":",%I) W %X W:%I>1 "-> "
 Q
1 ;UNKNOWN BLOCK TYPE
2 ;UNKNOWN DATA TYPE IN BLOCK
3 ;BLOCK TYPE MIS-MATCH WITH DESCENDANT BLOCK
4 ;BLOCK NOT MARKED ALLOCATED IN MAP BLOCK
5 ;RIGHT-HAND LINK DOES NOT MATCH DOWN-LINK OF POINTER KEY
6 ;BLOCK NUMBER MISMATCH
10 ;NON-ZERO COMMON COUNT FOR LEADING KEY IN BLOCK
11 ;ZERO LENGTH UNIQUE COUNT IN KEY
12 ;COMMON COUNT GREATER THAN TOTAL LENGTH OF PREVIOUS KEY
20 ;LENGTH OF LEADING KEY DOES NOT AGREE WITH EXPECTED VALUE
21 ;LEADING KEY DOES NOT MATCH EXPECTED VALUE
30 ;KEYS ARE NOT IN ASCENDING ORDER
31 ;KEY VALUE IS NOT HIGHER THAN KEY IN SUBTREE
40 ;HDRNEXT() INCONSISTENT WITH ACTUAL END
50 ;ZERO POINTER TO LOWER LEVEL
51 ;POSSIBLE LOOP IN POINTER BLOCKS
52 ;POSSIBLE LOOP IN RIGHT-HAND LINKS
60 ;INDEX TO FIRST FREE BLOCK IN MAP IS WRONG
61 ;COUNT OF FREE BLOCK IN MAP IS WRONG
64 ;MAP BLOCK NOT ALLOCATED TO SYSTEM

%L3XM
%XMIT ;RTM;MSM CPU<->CPU TRANSMIT; [ 05/12/92  8:18 PM ]
 ; COPYRIGHT MICRONETICS DESIGN CORP. @1985
 ; If you need to send $C(1) or $C(2) through as data,
 ; pick another character and change the line INIT+1.
 ; %HT = wait time for READs (0 or 1)
 ; %DT = # of READs from IO device since last terminal read
 ; %DC = # iterations thru fast loop with no data received
 ; %RS = 1 if recording, 0 if not
 S %INT=0 K %MSM ; $D(%MSM) flag for calling from %TRANS
 S $ZT="ZG "_$ZL_":ERROR^%XMIT"
GO S %HT=0,%DT=0,%DC=0,%RS=0 G:%INT INIT
 W !?10,$P($P($ZV,","),"-")," - TRANSMISSION UTILITY"
ASK I $D(^XM("PORT")) S %IO=^XM("PORT") G INIT
 R !!,"I/O PORT? > ",%IO G:%IO="" EXIT G:%IO?1"^".E EXIT I %IO?1"?".E D QUE G ASK
 I $P=%IO!'%IO W !!,"CANNOT SELECT YOUR OWN DEVICE.",*7 G ASK
 S $ZT="ZG "_$ZL_":NOPEN^%XMIT"
 U $P:(CENABLE) O %IO::0 E  W *7,"..LINE IN USE..WAITING.." O %IO W "READY"
 S $ZT="ZG "_$ZL_":ERROR^%XMIT"
 U %IO I $ZB($ZA,2,1) U 0 W !,"DEVICE ",%IO," IS AN OUTPUT ONLY DEVICE.",*7 G ASK
INIT U 0 S %ESC=$ZB($ZA,64,1) ; save escape processing status
 S %EXIT=$C(1),%RECORD=$C(2)
 ; TURN OFF PASS-ALL, ESC PROCESSING, & TAB CONTROL. SET TERMINATORS
 U %IO:(0::::#001001:#800040:::$C(3,8,13,21,24,27,127))
 U 0:(0::::#000001:#800040:::$C(3,8,13,15,18,21,24,27,127)) U $P:(NOCENABLE) W !
 S SH=0
TERM ;
 I '$D(^XM) U 0 R %X:%HT G M
 S SH=SH+1 S:SH>$L($G(^XM)) %X=%EXIT
 S %X=$E($G(^XM),SH) I 1
M S %CR=$ZB ; get READ terminator
 G:$E(%X)=%EXIT EXIT D:$E(%X)=%RECORD
 .D @$S(%RS:"HALT",1:"RECORD") S %X=$E(%X,2,$L(%X)) Q
 U %IO W:$L(%X) %X W:$T $C(%CR) S:$L(%X)!$T %DC=0,%HT=0 S %DT=0
PORT ;
 U %IO R %Y:%HT G:%INT&(%Y=$C(1)) EXIT S %CR=$ZB U 0 W:$L(%Y) %Y W:$T $C(%CR) S:$L(%Y)!$T %DC=0,%HT=0,%DT=%DT+1
 S:$L(%Y)&%RS %XS=%XS_%Y I $T,%RS S ^XMIT(%XN,%XE)=%XS,%XE=%XE+1,%XS=""
PORT1 I %DT>20 G TERM ; heavy incoming data, force check of CRT
 G TERM:$L(%X),PORT:$L(%Y)
 S %DC=%DC+1 G:%DC<500 TERM S %HT=1 ; READ timeout 1, goto slow mode
TERMWAIT ; TERMWAIT and PORTWAIT handle periods in which no data has been
 ; received from either side for %DC iterations through the
 ; TERM & PORT loop.
 ;U 0 R %X#1:%HT E  G PORTWAIT
 S SH=SH+1 S:SH>$L($G(^XM)) %X=%EXIT
 S %X=$E($G(^XM),SH) I 1
 G:%X=%EXIT EXIT
 I %X=%RECORD D @$S(%RS:"HALT",1:"RECORD") S (%DC,%DT,%HT)=0 G TERM
 S %CR=$ZB
 U %IO W %X W:'$L(%X) $C(%CR) S (%DC,%DT,%HT)=0 G TERM
PORTWAIT ;
 U %IO R %Y#1:%HT E  G TERMWAIT
 G:%INT&(%Y=%EXIT) EXIT ; %TRANS rtn or gbl selection finished
 S %CR=$ZB
 U 0 W %Y W:'$L(%Y) $C(%CR) S (%DC,%DT,%HT)=0
 ; If recording...
 S:$L(%Y)&%RS %XS=%XS_%Y ; add to captured string
 ; or terminate & file captured string
 I '$L(%Y),%RS S ^XMIT(%XN,%XE)=%XS,%XE=%XE+1,%XS=""
 G PORT
EXIT ;
 D:%RS HALT I $D(%ESC),%ESC U 0:(::::64)
 K %ESC,%X,%Y,%RS,%XN,%XE,%XS,%DC,%DT,%HT,%CR,%EXIT,%RECORD
 U:(%IO?.N)&(%IO'="") %IO:(:::::#001001:::$C(13,27))
 U 0:(:::::#000001:::$C(13,27))
 I %INT!$D(%MSM) U $P:(CENABLE) K %INT Q  ; return to %TRANS
 I %IO?.N&(%IO'="") C %IO U 0 K %IO,%INT
 W:'$F($ZS,"<DSCON>") !,"TRANSMISSION COMPLETE",!!
 Q
RECORD ;
 S:'$D(^XMIT) ^XMIT(0)=1
 S %XN=^XMIT(0),^XMIT(0)=%XN+1,%RS=1,%XS="",%XE=1,%X=$E(%X,2,999),^XMIT(%XN)=$H
 U 0 W !!,"RECORDING STARTED IN ^XMIT(",%XN,",1)",!
 Q
HALT ;
 S:$L(%XS) ^XMIT(%XN,%XE)=%XS S %RS=0
 U 0 W !!,"RECORDING HALTED, LAST NODE IS ^XMIT(",%XN,",",%XE,")",!!
 Q
NOPEN S %IO="" ; avoid <NOPEN> on <INRPT>
ERROR ;
 I $F($ZS,"<MXSTR>") F %XE=%XE:1 G:%XS="" ERROR1 S ^XMIT(%XN,%XE)=$E(%XS,1,255),%XS=$E(%XS,256,9999)
 I $F($ZS,"<INRPT>") U 0 W !!,"...ABORTED." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 I $F($ZS,"<DSCON>") DO:$P'=$P  D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 .U 0 W !!,"...DISCONNECTED."
 Q
ERROR1 S $ZT="ZG "_$ZL_":ERROR^%XMIT" G PORT1 ; resume after <MXSTR>
INT ;FROM TRANSFER UTILS
 S %INT=1 U $P:(NOCENABLE) G GO
 ;
QUE W !! F %IO=1:1 S %X=$T(TEXT+%IO) Q:%X=""  W $P(%X,";",2),!
 Q
TEXT ;
 ;ENTER THE PORT NUMBER TO BE USED FOR THE TRANSMISSION.
 ;WHILE THE TRANSMISSION IS IN PROGRESS, ALL CHARACTERS EXCEPT CTRL/A
 ;AND CTRL/B WILL BE PASSED THROUGH TO THE PORT.
 ;USE CTRL/B TO START OR STOP RECORDING OF THE INFORMATION IN THE XMIT
 ;GLOBAL, AND CTRL/A TO EXIT THE PROGRAM.

%L4CLC
%L4CLC(%S) ; CALCCULATOR ONE-LINE   [ 25.07.15 12:51 ] [ 13.08.11 13:59 ] [ 30.11.01 11:19 PM ]
 N (%S)
 N $ZT S $ZT="ZG "_$ZL_":ER"
 S %S=$$SPA^%L1FRM(%S)
 S %IGUL=0
 I %S["<>" S %IGUL=$P(%S,"<>",2),%S=$P(%S,"<>")
M0 ;
 S %L1BT=%S
 S %S=$TR(%S,"X:|[]{},","*//()().")
 I $L(%S,"(")'=$L(%S,")") Q "!PARENTHESISNUMBERISWRONG"
 S I=1,S=%S,UR=1 K ZN,V
BEG ;
 I $E(S,I)="" D VC G EN
 I $E(S,I)="(" S ZN(UR)=$E(S,I-1) S:ZN(UR)="" ZN(UR)="+" S:ZN(UR)=")"!(ZN(UR)?1N) ZN(UR)="*" S UR=UR+1 G ADI
 I $E(S,I)=")" D VC S UR=UR-1 G:UR<1 ER S VUR=$G(V(UR)) S V(UR)=VUR_$S("+-*/"[$E(VUR,$L(VUR)):"",1:ZN(UR))_V G ADI
 S V(UR)=$G(V(UR))_$E(S,I)
ADI S I=I+1 G BEG
 ;
VC S S2=V(UR),ZN="",S4="",V=0,J1=1,JOLD=1 D  X "S V="_S4 K V(UR) Q
C .S S3=""
C1 .F J=J1:1:$L(S2) Q:"+-*/"[$E(S2,J)  S S3=S3_$E(S2,J)
 .I S3="",J<$L(S2) S S3=$E(S2,J) S J1=J+1 G C1
 .I J'<$L(S2),$L(ZN),$L(S3) D:S3["%" PRCNT Q:S3["%"  S @("S4="_S4_ZN_S3) Q
 .I J'<$L(S2) S:S4="" S4=S3 Q
 .S ZN1=$E(S2,J),S31="",JOLD=J
C2 .F J2=J+1:1:$L(S2) Q:"+-*/"[$E(S2,J2)  S S31=S31_$E(S2,J2)
 .S ZN2="" I J2<$L(S2),S31="" S S31=$E(S2,J2),J=J2 G C2
 .I J2<$L(S2) S ZN2=$E(S2,J2)
 .;;W !,"S4=",S4,"  ZN=",ZN,"  S3=",S3,"  ZN1=",ZN1,"  S31=",S31,"   ZN2=",ZN2 H 2
 .;--------  +,- & *,/
 .I ZN="",ZN1="+"!(ZN1="-"),ZN2="*"!(ZN2="/"),S31'["%" S:S31["%" S31=S31*.01 S S32="" D  S @("S30="_S31_ZN2_S32) S @("S4="_S4_ZN_S3_ZN1_S30) S ZN=$E(S2,J3),J1=J3+1,ZN1="",ZN2="" Q:J1>$L(S2)  G C
 ..F J3=J2+1:1:$L(S2) Q:"+-"[$E(S2,J3)&("+-*/"'[$E(S2,J3-1))  S S32=S32_$S($E(S2,J3)'="%":$E(S2,J3),1:"*.01")
 ..S @("S32="_S32)
 .I ZN="+"!(ZN="-"),ZN1="*"!(ZN1="/"),S3'["%" S J3=J2 D:ZN2'=""  S @("S30="_S3_ZN1_S31) S @("S4="_S4_ZN_S30) S ZN=$E(S2,J3),ZN1="",ZN2="",J1=J3+1 Q:J1>$L(S2)  G C
 ..F J3=J2:1:$L(S2) Q:"+-"[$E(S2,J3)&("+-*/"'[$E(S2,J3-1))  S S31=S31_$S($E(S2,J3)'="%":$E(S2,J3),1:"*.01")
 ..S @("S31="_S31)
 .I S3["%",ZN="" D PRCNT S ZN=ZN2,(ZN1,ZN2)="" S J1=J2+1 Q:J1>$L(S2)  G C
 .I S3["%",ZN'="" D PRCNT S ZN=ZN1 S (ZN1,ZN2)="" S J1=JOLD+1 Q:J1>$L(S2)  G C
 .S @("S4="_S4_ZN_S3) S ZN=ZN1 S (ZN1,ZN2)="" S J1=JOLD+1 Q:J1>$L(S2)  G C
 Q
PRCNT ;
 I ZN="+"!(ZN="-") S @("S4="_S4_"*("_100_ZN_+S3_")*.01")
 I ZN="*"!(ZN="/") S @("S4="_S4_ZN_+S3_"*.01")
 Q
 ;
EN ;
 N %RES S %RES=$J($G(V),2,2)
 I $G(%IGUL) S %RES=$$SUM^W4IGUL(%RES,%IGUL)
 Q %RES
 ;
ER Q "!ERROR"

%L4GCH
%L4GCH ;MJ;GLOBAL CHARACTERISTICS--DRIVER [ 10/20/97  4:42 PM ]
 ;Copyright Micronetics Design Corp. @1990
 S $ZT="ZG "_$ZL_":ERROR^%L4GCH"
 O 63::0 I '$T W !!,"View Buffer busy.. Please retry later" G EXIT
 D GETVG^%VGUTIL S %MGR=($V(2,$J,2)=1)
 W !?10,$P($P($ZV,","),"-")," - Global Characteristics Utility"
%GLOBAL D SELECT^%GSEL($S(%MGR:"UN",1:"N"))
 G:'$D(^UTILITY($J)) EXIT
 K %COLLSEQ,%JOURNAL,%PROTECT
 I %GSEL=1 D  G %GLOBAL:%QF=1,EXIT:%QF D %OPT G EXIT:%QF=2,%GLOBAL
 .S (%GN,%GLB)=$O(^UTILITY($J,""))
 .U 63:(:::"P"),0
 .D FIND
 .U 63:(:::"C"),0
 ; Process multiple globals
 D %OPT G:%QF=2 EXIT
 I '$D(%COLLSEQ),'$D(%JOURNAL),'$D(%PROTECT),'$D(%DELPROT) G %GLOBAL ; nothing changed
 W !!,"Changing characteristics for ",%GSEL," globals."
 S (%COUNT,%GN)=""
LOOP S (%GN,%GLB)=$O(^UTILITY($J,%GN)) G:%GN="" EXIT
 S %W=0,%DD=$D(@("^"_%GN))
 I $D(%COLLSEQ),%DD>1 W !,*7,"Global ^",%GN," has subscripts.  Cannot change collating sequence."
 U 63:(:::"P"),0
 D FIND I %QF U 63:(:::"C"),0 G EXIT:%QF=2,LOOP
 I $D(%COLLSEQ),%DD<10 DO
 .S %X=$V(%OF-1,0,1)
 .I %X#2'=%COLLSEQ V %OF-1:0:$ZB(%X,1,6):1 S %W=1 ;toggle cs bit
 I $D(%JOURNAL) D %JRN1^%L4GCH1 S %W=1
 I $D(%PROTECT) V %OF:0:%PROTECT:1 S %W=1
 I $D(%DELPROT) DO
 .S %X=$V(%OF-1,0,1)
 .I $ZB(%X,#20,1)\32'=%DELPROT V %OF-1:0:$ZB(%X,#20,6):1 S %W=1
 I %W V -%GBN:"G"_VGI
 U 63:(:::"C"),0
 I $G(%TPTR),$ZMSM(5,%TPTR) ; invalidate top ptr blk in all nakeds
 S %COUNT=%COUNT+1
 ; print status line - allow for message from collseq subrtn
 I $X W !,$J(%COUNT,$L(%GSEL))," globals processed.",*13
 E  W $J(%COUNT,$L(%GSEL)),*13
 G LOOP
EXIT ;
 C 63
 K %ANS,%BLK,%DIV,%DN,%DR,%DT,%EF,%GBN,%GLB,%GN,%HLP,%I,%MF,%NB,%OPT,%PC,%PT,%QF,%QST,%QUE,%RSP,%RSPHLD,%T,%VGN,%X,BTMLEVEL,CLASS,FBLK,GN,PRO,KEY,%OF,%F,%MAX,%UI,CC,I,K,OF,UC,VGI,VGVOL
 K %ACCESS,%B,%COLLSEQ,%COUNT,%DB,%GNUM,%GSN,%JOURNAL,%MGR,%NAM,%PR,%PROT,%PROTECT,%UCI,%NEW,%GVN,VG,%GSEL,%W,%DD
 Q
ERROR ;
 I $F($ZS,"<INRPT>") U 63:(:::"C"),0 C 63 W !!,"...Aborted." D EXIT V 0:$J:$ZB($V(0,$J,2),#0400,7):2
 Q
 ;
%OPT ; Select characteristic to be changed
 K %GDFLT ; dflt value only for jrnl menu
 S %QUE=1,%HLP=3 D %SEL Q:%QF
 ; All 4 of the following subroutines goto %OPT when done
 G ^%L4GCH1:%OPT=1,%GRO^%L4GCH1:%OPT=2,%PRO:%OPT=3,%JRN^%L4GCH1:%OPT=4,%DEL^%L4GCH1:%OPT=5
 ;
 Q
FIND ; Find directory block and patch offset for the global
 ; Returns with %GBN (gdir blk containing the global) in the VIEW buffer
 ;  %OF=offset of protection byte, %ACCESS=1 if user has access
 ;  %TPTR=top pointer block
 S %QF=0,%EF=0
 I %GLB["["!(%GLB["|") D  Q:%QF
 .S %UCI=$E(%GLB,3,5),%VGN=$E(%GLB,7,9),%GLB=$E(%GLB,12,$L(%GLB))
 .S %UI=+$ZU(%UCI,%VGN)
 .I '%UI W *7,!,"Global ",%GN," is not on a mounted volume group" S %QF=1
 E  S %UCI="",%VGN=$P($$^%L1ZU(0),",",2),%UI=+$ZU("")
 S VGI=VG(%VGN) D  Q:%QF
 .N (%QF,VGI,%GSEL,%GN) D VGINFO^%VGUTIL2(VGI)
 .I VGRVG S %QF=1 W:%GSEL=1 !  W !,"%L4GCH not allowed on Remote Volume Group" W:%GSEL>1 "  ^",%GN," skipped" Q
 D GETVOL^%VGUTIL
 S GN=%GLB,%GLB=%GLB_$C(0)
FIND1 ;
 S %GBN=$$GDIR^%VGUTIL2(VGI,%UI),%TPTR=0
FIND2 ;
 I '%GBN S %F=0 G FIND35
 V %GBN:"G"_VGI S OF=$V(1022,0,2),BTMLEVEL=$V(1021,0,1)\128
 S K="" K KEY
 S I=$S(BTMLEVEL&($V(0,0,4)=0):13,1:0) ; 1st btm gdir starts at 13
 F I=I:0:OF-1 S CC=$V(I,0,1),UC=$V(I+1,0,1),K=$E(K,1,CC)_$V(I+2,0,UC,1),KEY(I)=K,I=I+UC+2+$S(BTMLEVEL:11,1:3)
 S %F=0,%X=-1
FIND3 S %X=$N(KEY(%X)) I %X'<0 G:$S(BTMLEVEL:%GLB]KEY(%X),1:KEY(%X)]%GLB) FIND3  S:%GLB=KEY(%X) %F=1
 I 'BTMLEVEL,'%F S %GBN=$V(%X+2+$V(%X+1,0,1),0,3) G FIND2
 I BTMLEVEL,'%F S %GBN=$ZB($V(1012,0,4),#FFFFFF,1) G:%GBN>0 FIND2
FIND35 ;
 I '%F,%EF W *7,!!,"Global ",%GN," has been deleted...skipped." S %QF=1 Q
 I '%F W:%GSEL>1 !,"^",GN W "  does not exist.. ",*7
 I %F DO  Q
 .S %OF=%X+2+$V(%X+1,0,1)+4,%EF=1
 .S %ACCESS=(($V(%OF,0,1)#4)=3),%TPTR=$V(%OF-4,0,3)
 .Q:%MGR!%ACCESS  ; honor protection and always give MGR access
 .W !,*7,"Access denied to ^",GN W:%GSEL>1 "...skipped." S %QF=1
 .Q
 U 63:(:::"C"),0
FIND4 ; Global does not exist in gdir
 I $E(%GN)'="[",$E(%GN)'="|" D TRCHK^%L4GCH1 Q:%QF  ; check translation
 W !,"Do you want to create global ^",$S(%UCI="":"",1:"["""_%UCI_$S(%VGN="":"",1:""","""_%VGN)_"""]"),GN," <Y>: " R %RSP
 S:%RSP="" %RSP="Y" S %RSP=$TR(%RSP,"yesnq","YESNQ")
 I %RSP["?" S %HLP=2 D ^%L4GCH2 G FIND4
 S:%RSP["^Q" %QF=2 S:(%RSP["^")!($E(%RSP,1)="N") %QF=1 Q:%QF
 I $E(%RSP,1,$L(%RSP))'=$E("YES",1,$L(%RSP)) W " ?? ",*7 G FIND4
 S @("^"_$S(%UCI="":"",1:"["""_%UCI_$S(%VGN="":"",1:""","""_%VGN)_"""]")_GN_"(1)")=1 K ^(1) ZF
 S %EF=1 W !,"Global created"
 U 63:(:::"P"),0
 G FIND1
 ;
%PRO ; Modify protection byte
 ; If >1 globals selected, pass back new protection byte in %PROTECT
 I %GSEL>1 DO  ; For multiple globals, begin with svector default
 .I $D(%PROTECT) S %PROT=%PROTECT Q
 .S %X=$O(^UTILITY($J,"")) ; get first global selected
 .S %X=($E(%X)'="%") ; Is it a non-% global?
 .S %PROT=$V(122+%X,-4,1) ; %X=0 is for % globals
 I %GSEL=1 S (%PROT,%PROTECT)=$V(%OF,0,1)
 W !!,$S('$D(%PROTECT):"Default",1:"Current")," Status -->" D %LST
 S %QUE=2,%HLP=4 D %SEL G EXIT:%QF>1,%OPT:%QF
 S PRO=$S(%OPT=1:0,%OPT=2:1,%OPT=3:2,%OPT=4:3,1:4)
 ;
%CLASS S %QUE=3,%HLP=5 D %SEL G EXIT:%QF>1,%PRO:%QF
 ;
%CLASS1 F %I=1:1 S %X=$P(%OPT,",",%I) Q:%X=""  S %PT(%X)=PRO
 S %PROT=0,%DIV=256
 F %X=1:1:4 S %DIV=%DIV\4,%PROT=%PROT+(2*%DIV*(%PT(%X)\2)+(%DIV*(%PT(%X)#2)))
 I %GSEL=1 DO  G:%QF %OPT
 .U 63:(:::"P"),0
 .D FIND1 I %QF U 63:(:::"C"),0 Q
 .V %OF:0:%PROT:1 V -%GBN:"G"_VGI
 .U 63:(:::"C"),0
 .I $G(%TPTR),$ZMSM(5,%TPTR) ; invalidate top ptr blk in all nakeds
 E  S %PROTECT=%PROT ; return new value to main procedure
 W !!,"    New Status --> " D %LST
 G %OPT
%LST S %DIV=256 F %X=1:1:4 S %DIV=%DIV\4,%PC=%PROT\%DIV#4,%PT(%X)=%PC W ?(%X-1*15+20),$P("System,World,Group,User",",",%X)," = ",$P("NONE,R,RW,RWD",",",%PC+1)
 Q
%SEL ;OPTION DRIVER
 S %MF=0
 U 0 W !!,"Select ",$P($T(@("MENU"_%QUE)),";",2,99)
 W !! F %I=1:1 S %T=$T(@("MENU"_%QUE)+%I) Q:$P(%T,";",2)="*"  W !,?5,%I,?10,$P(%T,";",2)
 W !!,$P($T(@("MENU"_%QUE)+%I+1),";",2)
%SEL1 I %GSEL=1 W " for ^",$S(%UCI="":"",1:"["""_%UCI_$S(%VGN="":"",1:""","""_%VGN)_"""]"),GN
 I $D(%GDFLT) W " <",%GDFLT,">"
 R ": ",%RSP
 I %RSP="",$D(%GDFLT) S %QF=0,%OPT=%GDFLT Q
 S %QF=$S("^Q"=%RSP:2,"^"[%RSP:1,1:0) Q:%QF
 I %RSP?1"?".E D ^%L4GCH2 G %SEL
 I %RSP["," D %SEL4
 I %RSP'["," D %SEL2
 G %SEL1:%QF>1,%SEL:'%QF S %QF=0 Q
%SEL2 I %RSP?1N.N G %SEL3
 ;SELECTION BY LEADING CHARACTER
 S %QF=0 F %I=1:1 S %T=$P($T(@("MENU"_%QUE)+%I),";",2) Q:%T="*"  I %RSP=$E(%T,1,$L(%RSP)) S %QF=%QF+1,%OPT=%I Q:%QUE=2
 I %QF=0 G %SEL5
 I (%QF=1)&(%MF=1) W $E($P($T(@("MENU"_%QUE)+%OPT),";",2),1,255) Q
 E  W $E($P($T(@("MENU"_%QUE)+%OPT),";",2),$L(%RSP)+1,255) Q
 W !!,*7,"Please be more specific ",!
 F %I=1:1 S %T=$P($T(@("MENU"_%QUE)+%I),";",2,99) Q:%T="*"  I %RSP=$E(%T,1,$L(%RSP)) W !,?5,%I,?10,%T
 W !!,$P($T(@("MENU"_%QUE)+%I+1),";",2)," " Q
%SEL3 I (%RSP<%I&%RSP>0) W "  ",$P($T(@("MENU"_%QUE)+%RSP),";",2,99) S %QF=1,%OPT=%RSP Q
 E  S %QF=0 G %SEL5
%SEL4 I %QUE'=3 W !!,*7,"Enter one choice only ",! S %QF=0 Q
 S %RSPHLD=%RSP,%MF=1
 W "  "
 F %X=1:1 S %RSP=$P(%RSPHLD,",",%X) Q:%RSP=""  D %SEL2 Q:%QF'=1  S $P(%RSPHLD,",",%X)=%OPT W:$L(%RSPHLD,",")'=%X ","
 S %MF=0,%RSP=%RSPHLD
 Q:%QF'=1
 S %OPT=%RSPHLD
 Q
%SEL5 W !!,*7,"Invalid option selection, enter '?' for more help" Q
MENU1 ;OPTION
 ;Collating Sequence
 ;Global Growth
 ;Protection
 ;Journaling
 ;Allow/Prevent KILL
 ;*
 ;Enter option
MENU2 ;PROTECTION STATUS
 ;N   - None
 ;R   - Read
 ;RW  - Read/Write
 ;RWD - Read/Write/Delete
 ;*
 ;Enter protection
MENU3 ;CLASS
 ;System
 ;World
 ;Group
 ;User
 ;*
 ;Enter class
MENU4 ;Journaling Option
 ;Always journal
 ;Journal only when UCI is journaled
 ;Never journal
 ;*
 ;Select Option

%L4GCH1
%L4GCH1 ;MJ;GLOBAL CHARACTERISTICS--COLLATING SEQ [ 10/20/97  4:42 PM ]
 ;Copyright Micronetics Design Corp. @1984
 ; Enter at the top for collating sequence
 ; If >1 global selected, return collseq in %COLLSEQ
 G:%GSEL>1 %COL G:$D(@("^"_GN))<10 %COL
 W !!,*7,"Global ^",GN," contains subscripts..."
 W !?5,"collating sequence cannot be changed",*7
 G EXIT
%COL I %GSEL=1 S %COLLSEQ=$V(%OF-1,0,1)#2
%COL1 W !!,"Enter Collating Sequence"
 W:%GSEL=1 " for ^",$S(%UCI="":"",1:"["""_%UCI_"""]"),GN
 I %GSEL=1 W:%COLLSEQ " <S>" W:'%COLLSEQ " <N>"
 R ": ",%X
 I $E(%X)="^" K %COLLSEQ G EXIT:%X="^",EXIT^%L4GCH:%X="^Q"
 I %X["?" S %HLP=6 D ^%L4GCH2 G %COL1
 S %NEW=$S(%X="N":0,%X="S":1,%X="":3,1:4)
 W:%NEW<3 $S(%X="N":"UMERIC",%X="S":"TRING")
 I %GSEL=1 S:%NEW=%COLLSEQ %NEW=3
 I %NEW=4 W " ?? ",*7 G %COL1
 I %NEW=3 W " unchanged " K %COLLSEQ G EXIT
 S %COLLSEQ=%NEW G:%GSEL>1 EXIT
 U 63:(:::"P"),0
 D FIND1^%L4GCH G:%QF EXITC
 V %OF-1:0:$V(%OF-1,0,1)+$S(%NEW:1,1:-1):1
EXITW ;
 V -%GBN:"G"_VGI
EXITC ;
 U 63:(:::"C"),0
 I $G(%TPTR),$ZMSM(5,%TPTR) ; invalidate top ptr blk in all nakeds
EXIT G %OPT^%L4GCH
%GRO ;
 I %GSEL>1 W !!,"Cannot change growth pointer on multiple globals." G EXIT
%G1 S %X=$V(%OF+4,0,3) W !!,"Enter Global Growth Pointer <" W:'%X "0" W:%X (%X\512+1) W ">: " R %X G EXIT:"^"=%X,EXIT^%L4GCH:%X="^Q"
 I %X=""!(%X=$V(%OF+4,0,3)) W " unchanged" G EXIT
 I %X?1"?".E S %HLP=7 D ^%L4GCH2 G %G1
 I %X?1N.N S %BLK=%X-1*512+1 G DN
 I %X'?1N1":"1N.N W "  Invalid syntax",*7 G %G1
 S %DB=$P(%X,":",1),%B=$P(%X,":",2)
 I '$D(VGVOL(%DB)) W !,?5,"Volume ",%DB," does not exist.",*7 G %G1
 S %BLK=%B-1*512+1+$P(VGVOL(%DB),"^",2)
DN ;
 I %X="0" D  G EXITC:%QF,EXITW ;remove the growth pointer for the global
 .U 63:(:::"P"),0
 .D FIND1^%L4GCH Q:%QF
 .V %OF+4:0:0:3
 F VOL=0:1:VGVOL-1 I (%BLK>$P(VGVOL(VOL),"^",2))&(%BLK<($P(VGVOL(VOL),"^",2)+$P(VGVOL(VOL),"^",4)-510)) G DN1
 E  W !!,"Map is not in database" G %G1
DN1 U 63:(:::"P"),0
 D FIND1^%L4GCH G:%QF EXITC
 V %OF+4:0:%BLK:3 ;W !!,"New global growth pointer is Map ",%BLK\512+1
 G EXITW
BN ;Transform block # from internal to external format
 ;Input - X as a block number
 ;Output - Y as volume index:relative block number
 S Y="0:"_X F I=VGVOL-1:-1:0 S %P1=$P(VGVOL(I),"^"),%P2=$P(VGVOL(I),"^",2) I %P2'>X,%P1+%P2-1'<X S Y=I_":"_(X-%P2) Q
 Q
%JRN ; Change journal flags
 I %GSEL=1 DO
 .S %X=$ZB($V(%OF-1,0,1),#C0,1) ; get current jrnl bits
 .S %GDFLT=$S(%X=#80:1,%X=#40:3,1:2) ; default menu option
 S %QUE=4,%HLP=8 D %SEL^%L4GCH
 G EXIT^%L4GCH:%QF=2,EXIT:%QF
 S %JOURNAL=$S(%OPT=1:#80,%OPT=3:#40,1:0) G:%GSEL>1 EXIT
 U 63:(:::"P"),0
 D FIND1^%L4GCH G:%QF EXITC
 D %JRN1
 G EXITW
%JRN1 S %X=$V(%OF-1,0,1) ; get current value of jrn/cs field
 S %X=$ZB(%X,#C0,2) ; Turn off both jrnl flags
 S %X=$ZB(%X,%JOURNAL,7) ; Turn on selected jrnl flags
 V %OF-1:0:%X:1
 Q
%DEL I %GSEL=1 S %DELPROT=$ZB($V(%OF-1,0,1),#20,1)
%DEL1 W !!,"Prevent KILL of Entire Global"
 W:%GSEL=1 " for ^",$S(%UCI="":"",1:"["""_%UCI_"""]"),GN
 I %GSEL=1 W:%DELPROT " <Y>" W:'%DELPROT " <N>"
 R ": ",%X
 I $E(%X)="^" K %DELPROT G EXIT:%X="^",EXIT^%L4GCH:%X="^Q"
 I %X["?" S %HLP=9 D ^%L4GCH2 G %DEL1
 I $E(%X)="n" S %X="N"
 I $E(%X)="y" S %X="Y"
 S %NEW=$S($E(%X)="N":0,$E(%X)="Y":1,%X="":3,1:4)
 I %GSEL=1 S:%NEW=(%DELPROT\32) %NEW=3
 W:%NEW<4 $S(%X="N":"O",%X="Y":"ES",1:"")
 I %NEW=4 W " ?? ",*7 G %DEL1
 I %NEW=3 W " unchanged " K %DELPROT G EXIT
 S %DELPROT=%NEW G:%GSEL>1 EXIT
 U 63:(:::"P"),0
 D FIND1^%L4GCH G:%QF EXITC
 V %OF-1:0:$V(%OF-1,0,1)+$S(%NEW:#20,1:-#20):1
 G EXITW
TRCHK ; check for translated globals
 N X,DD,ZR
 S X=$V(140,$J,2) D OFF^%MODESET(3)
 S DD=$D(@("^"_%GN)),ZR=$R
 V 140:$J:X:2
 I $E(ZR,2)="|" D  S %QF=1 Q
 .W:%GSEL=1 !
 .W *7,!,"Global ",%GN," is translated to ",$E(ZR,4,10)
 .W !,"It may not be changed from this UCI"
 Q

%L4GCH2
%L4GCH2 ;MDS;MSM GLOBAL CHANGE UTILITY HELP INFO [ 10/20/97  4:43 PM ]
 ;Copyright Micronetics Design Corp. @1990
 ;
 ;THIS ROUTINE WRITES THE HELP RESPONSES FOR THE
 ;GLOBAL CHANGE UTILS
 ;
 N ID,F S ID=$P($P($ZV,","),"-")
 S $Y=0 W !! F %I=0:1 S %X=$P($T(@("HLP"_%HLP)+%I),";",2) Q:%X="*"  D  Q:%X=94
 .F  S F=$F(%X,"@ID") Q:'F  S %X=$E(%X,1,F-4)_ID_$E(%X,F,$L(%X))
 .W %X,! I $Y>21 D CONT Q:%X=94  W #
 W "Enter <RETURN> to continue" R *%X F %Y=$X:-1:1 W $C(8,32,8)
 K %X,%Y Q
CONT W "Enter <RETURN> to continue, '^' to quit." R *%X F %Y=$X:-1:1 W *8,*32,*8
 Q
%HELP ;
HLP2 ;Enter '^' to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Enter 'Y' or <RETURN> to create global, or enter 'N' to select another global.
 ;*
HLP3 ;Enter '^' or <RETURN> to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Enter C-Collating Sequence, P-Protection, G-Global Growth,
 ;      J-Journaling, A-Allow/Prevent KILL
 ;or Enter the Option number.
 ;*
HLP4 ;Enter '^' or <RETURN> to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Enter N-None, R-Read, RW-Read/Write, RWD-Read/Write/Delete
 ;or Enter the Protection number.
 ;
 ;None means that no access is possible to the class to be specified.
 ;Read means that the class can read the global, but not write or
 ;delete nodes.
 ;Read/Write means that the class can read from and write to the global.
 ;Read/Write/Delete means that the class can also delete nodes.
 ;*
HLP5 ;Enter '^' or <RETURN> to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Enter the class of user that you wish to apply the protection
 ;previously entered as follows:  S-System, U-User, G-Group, W-World
 ;or Enter the Class number.
 ;
 ;To enter more than one class, separate by commas,
 ;i.e.  U,S <RETURN> or 4,1 <RETURN>  for User and System classes.
 ;
 ;The user classes are as defined as follows.
 ;
 ;System is the manager's UCI
 ;User is the UCI in which the global resides.
 ;Group is the set of all UCI's in this Volume Group.
 ;World is the set of all UCI's in other Volume Groups.
 ;
 ;Protection status is maintained in the following priority
 ;order: System,User,Group,World.  For example, if a global
 ;in the manager's UCI has no access for SYSTEM, but has RWD access
 ;for USER, a <PROT > error will be generated when this global
 ;is accessed from the manager's UCI.  In this example, when the global
 ;is accessed, @ID first checks the protection status for SYSTEM
 ;(MGR) and finds that no access is allowed.  Even though USER access
 ;is allowed, @ID preferentially uses the SYSTEM class protection
 ;status in determining global access.
 ;*
HLP6 ;Enter '^' to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Enter N-Numeric, S-String
 ;*
HLP7 ;Enter '^' to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Enter a Map Number for global growth.  The Map Number
 ;     can be specified as "Volume Number:Relative Map"
 ;     if the actual Map Number is not known, or
 ;Enter '0' to remove the global growth pointer.
 ;*
HLP8 ;Enter '^' to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Select option 1 to journal selected global(s) regardless of the
 ; journal status for the UCI.
 ;Select option 2 to journal selected global(s) when the UCI
 ; is journalled.
 ;Select option 3 to disable journaling for the global(s)
 ; regardless of the journaling status for the UCI.
 ;*
HLP9 ;Enter '^' to back up to the previous question, or
 ;Enter '^Q' to exit, or
 ;Enter YES to prevent unsubscripted KILLs to the selected global(s), or
 ;Enter NO to allow unsubscripted KILLs (i.e., allow the global(s) to be deleted)
 ;*

%L4LOGON
%LOGON ;MJ;LOGON ROUTINE; [ 03/08/99  8:46 AM ] [ 11/23/93  11:15 AM ]
 ;Copyright Micronetics Design Corp. @1990
 K % S %LOGON=1
SYSTEM ;
 O 0::0 E  H
 U 0 U $P:(NOCENABLE) I $ZB($ZA,8,1) H 1 ; modem control timing
 S MU=$ZB($V(0,-4,2),16,1),%PS=$S(MU:20480,1:51200)
 G:$V(121,-4,1) LICENSE^%LOGON0
 L  ZD  D EXPDATE^%LOGON0 S %INT=1,%RETRY=3
 K BASELINE
 I $V(2,-4,2)#2=0 D ^STU S MU=$ZB($V(0,-4,2),16,1),%PS=$S(MU:20480,1:51200),%UI=1 S:$D(BASELINE) %VGI=0 G PGMR:$D(BASELINE),SYSTEM ;AUTO STARTUP
 V 0:$J:$ZB($V(0,$J,2),250,1):2
LOGON ;
 W $C(27,41,76)
 S LOGON=$V(4,-4,2)\64#2,CONSOLE=$V(4,-4,2)\2048#2,SSD=$V(4,-4,2)\32768#2
 I LOGON!CONSOLE!SSD,$I'=1 W !,"Signon not allowed now." H
 V 2:$J:1:2 ;SWITCH TO MGR's UCI
 S CNFG=0 I $D(^SYS("CONFIG"))#2 S CNFG=$P(^SYS("CONFIG"),";",2) I CNFG="" S CNFG=0
 S CNFG=+^SYS("CONFIG",CNFG)
 U $I:(:::::1) I $D(^SYS(CNFG,"DDB",$I))#2 U $I:(:::::#FDFF) U $I:($P(^($I),",",5)::::$ZH($P(^($I),",",6)))
 IF  I $ZB($ZH($P(^($I),",",6)),258,1) HALT  ; check for nolog and output only bits
 S:$D(^SYS(CNFG,"PSIZE")) %PS=^SYS(CNFG,"PSIZE") I %PS=20480 S:$V(0,-4,2)#16=8&'MU %PS=51200
 G:'MU TTT S LATBASE=$V($V(29,-5)+8,-3,0)
 I LATBASE,'$G(%LOGON) S DI=$V(4*$I+$V(7,-5),-3,0) I $ZB($V(DI+20,-3,4),#10000000,1) S DI=$V(DI+72,-3,0),SRVSTR=$V(DI+101,-3,$V(DI+100,-3,1),1) D  G:VCNO&($P(SRVSTR,"`",4)'="") TIEDLAT I 'VCNO W !!,"This LAT service has been disabled or deleted" H
 .S SRVSTR=$$UPCASE(SRVSTR)
 .S VCNO=0 F I=0:1:$V($V(58,-5)+8,-3,2)-1 D  Q:VCNO
 ..D VGINFO^%VGUTIL2(I,1) I '$ZB(VGFLAGS,#100,1) Q
 ..I $ZU(VGSYSUCI,I)="" Q
 ..I '$D(^[$ZU(VGSYSUCI,I)]SYS("LAT_SERV",1)),I=0 Q
 ..S SLNO="" F  S SLNO=$O(^(SLNO)) Q:SLNO=""  I $P(^(SLNO),"`")=SRVSTR,$P(^(SLNO),"`",3)="Y" S SRVSTR=^(SLNO),VCNO=1 Q
TTT S TTT=0 I $D(^SYS(CNFG,"DDB",$I))#2 S TTT=+$P(^($I),",",4) I $D(^SYS(CNFG,"TTT",TTT))#2 G TIEDTERM
 I $I>1,$D(^SYS(CNFG,"DDB",$I))#2=0,$D(^SYS(CNFG,"TTT","DYNAMIC"))#2 S TTT=^("DYNAMIC") G TIEDTERM
 G:$D(^SYS("PASSWD"))#2=0 PROMPT
 U $P:(NOECHO:NOWRAP) W !,":" R %ID:180 U $P:(ECHO:WRAP) G ABORT:'$T,ABORT:%ID'=^SYS("PASSWD") K %ID
PROMPT ;
 I $ZB(+$P($$LICINFO^%MSMOPS,"^",2),32,1) D
 .I $D(%),$ZUCASE(%)'["MGR:XXX" S %=%_" MGR:XXX"
 .I '$D(%) S %=" MGR:XXX"
 D:$D(%) LOGPARMS^%LOGON0(%) I $D(%ID) G:$G(TIED) TIEDTERM ; check for signon parms
 S:'$D(%INT) %INT=1
 I %INT W !,$ZV,"  Line #",$I,"  UCI: " D READ G:'$T ABORT
 S %UCI=$P(%ID,":",1) I $L(%UCI)<1 G:$ZB($ZA,8,1) RETRY Q
 I %UCI[$C(0) W "       ...Invalid" G RETRY
 S %VGNA=$P(%UCI,",",2),%UCI=$P(%UCI,",",1)
 S %USERVGNA=1 I %VGNA="" S %VGNA=$P($$^%L1ZU(0),",",2) S %USERVGNA=0
 I %UCI="" W "       ...Invalid" G RETRY
 I $D(^SYS("LOGON",%UCI)) I $P(%ID,":",2)'=$P(^SYS("LOGON",%UCI),":",4) S %OUI=$V(2,$J,2) G:$ZU(%UCI,%VGNA)'="" PROMPT1 W " ...Invalid" G RETRY
 I $D(^SYS("LOGON",%UCI)) S %ID=$P(^SYS("LOGON",%UCI),":",1,3),%VGNA=$E(%ID,5,7),%UCI=$P(%ID,",")
PROMPT1 I $P(%ID,":",3)'="" S %PS=$P(%ID,":",3)*1024 S:%PS<12288!(%PS>262144) %PS=$S($D(^SYS(CNFG,"PSIZE")):^("PSIZE"),1:20480)
 S %ID=$P(%ID,":",2)
UCINUM S %OUI=$V(2,$J,2),%UI=+$ZU(%UCI,%VGNA),%VGI=+$P($ZU(%UCI,%VGNA),",",2)
 I %UI'=0 G PGMTST
 S %TEMPVGNA=%VGNA
 I %UI=0 F %VGI=0:1:$V($V(58,-5)+8,-3,2)-1 S %TEMPVGNA=$P($ZU(1,%VGI),",",2) I %TEMPVGNA'="" S %UI=+$ZU(%UCI,%TEMPVGNA) Q:%UI
 I %UI=0 W "   ...UCI not found" G RETRY
 S:'%USERVGNA %VGNA=%TEMPVGNA
 S %UI=+$ZU(%UCI,%VGNA),%VGI=+$P($ZU(%UCI,%VGNA),",",2)
 I %UI=0 W "   ...Invalid Volume Group" G RETRY
PGMTST ;
 S %PGMR=$$UCIPSWD^%VGUTIL2(%VGI,%UI)
 I %PGMR'="" G:%ID=%PGMR PGMR
 G:'$D(^SYS(CNFG,"PAC")) NOPAC
 I %PGMR="" G:%ID=^SYS(CNFG,"PAC") PGMR
 I %ID="" W *7," ... invalid 'null' application id" G RETRY
NOPAC ;
 I $D(^%) ;CLEAR NAKED
 I $D(^%E) ;CLEAR NAKED
 V 2:$J:%VGI*32+%UI:2,108:$J:%PS:4 ;SWITCH TO NEW UCI
 G:%ID="" PGMR
 S:'$F(%ID,"^") %ID="^"_%ID
 S I=$P(%ID,"^",2) I I'?1A.7AN,I'?1"%".7AN W *7," ..invalid application id" G RETRY
 S I=$P(%ID,"^") I I'="",I'?1A.7AN,I'?1"%".7AN,I'?1.8N W *7," ..invalid label" G RETRY
 I $E($P(%ID,"^",2))'="%",$D(^ ($P(%ID,"^",2)))=0 W *7," ..invalid application id" G RETRY
 K (%,%ID) G @%ID
PGMR ;
 I $D(^%) ;CLEAR NAKED
 V 0:$J:$ZB($V(0,$J,2),1,7):2,2:$J:%VGI*32+%UI:2,108:$J:%PS:4
 S EXP=$G(EXP) I $ZB(+$P($$LICINFO^%MSMOPS,"^",2),32,1) D
 .W:'EXP $ZV,"  "
 .S:'%INT %INT=1 W "Line #",$I
 W:%INT "  Job #",$J K  X "ZR  Q"
 Q
READ ; Read user login
 ; returns $T=0 if timeout
 I $ZB($V(0,-4,2),#F0F,1)=#800 U $P:(NOECHO:NOWRAP) R %ID:180 S:%ID?3L1":".E %ID=$$UPCASE(%ID) U $P:(ECHO:WRAP) Q  ; MUMPS/VM
 NEW X,Y,BS,DEL
 U $P:(NOECHO:NOWRAP) ; echo off
 S DEL=$V(126,-4,1),BS=$V(127,-4,1)
 S X=""
 R "" ; flush type-ahead
 F  R *Y:180 Q:Y=13!'$T  DO  ; $T set here, not modified hereafter
 .I (Y=8!(Y=127)&'BS)!(Y=BS) DO  Q  ; process backspace
 ..Q:X=""  W $C(8,32,8) ; erase #
 ..S X=$E(X,1,$L(X)-1) ; remove last char
 .I (Y=21!(Y=24)&'DEL)!(Y=DEL) DO  Q  ; line delete
 ..Q:X=""
 ..F Y=1:1:$L(X) W $C(8,32,8) ; erase the line
 ..S X="" Q
 .I Y>96 S Y=Y-32
 .S X=X_$C(Y) W $C(Y) Q  ; echo * for each char
 U $P:(ECHO:WRAP) ; echo on
 S:X?3L1":".E!(X?3L1","3L1":".E) X=$$UPCASE(X) ; if UCI entered in lower case, -> upper
 S %ID=X Q
UPCASE(X) Q $TR(X,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
TIEDTERM ;TIED TERMINAL
 I $G(TIED) ; from logon parms
 E  S TIED="",%UCI=$P(^(TTT),",",2),%ID=$P(^(TTT),",",1),%PS=$P(^(TTT),",",3)
 S %UI=$ZU($P(%UCI,":"),$P(%UCI,":",2))
 G TIEDGO
TIEDLAT ;TIED TERMINAL FOR LAT
 S TIED="",SRVSTR=$P(SRVSTR,"`",4),%UCI=$P(SRVSTR,":",1),%ID=$P(SRVSTR,":",2),%PS=$S($P(SRVSTR,":",3)="":%PS,1:$P(SRVSTR,":",3)*1024)
 S %UCI=%UCI_","_$P($ZU(1,I),",",2),%UI=$ZU($P(%UCI,","),$P(%UCI,",",2))
TIEDGO ;
 V 108:$J:%PS:4 S %VGI=$P(%UI,",",2),%UI=+%UI
 I %UI=1,%ID="%LOGON" K TIED G PROMPT
 G NOPAC:%UI>0 W " ..UCI not found" G RETRY
INT ;
 S %INT=0,%UCI=%ID,%RETRY=0 G LOGON
RETRY ;
 I $D(TIED) W !," ..logon aborted" H 2 Q
 V 2:$J:1:2 ;SWITCH TO MGR's uci
 S %RETRY=%RETRY-1 G:%RETRY PROMPT
 W !!,"Logon aborted.." H 2
 I $D(%OUI) V 2:$J:%OUI:2 ;SWITCH back to original UCI
ABORT Q
%MGR ;Entry to put user back into MGR and goto error subrtn (VALIDATE)
 V 2:$J:1:2 I $D(%ZT) G:%ZT'="" @%ZT
 Q

%L4MENU
%L4MENU ; [ 08.10.06 09:43 ] [ 17.09.06 13:18 ] [ 19.06.05 07:48 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,MAC,@MAC,%I) D ^%L1C
 ;---------- INIT -------------
 S CL0=%CL0,CCL0=%CCL,CVKP="BCB,YF",BCGR="MB"
 I %TYPCRT'="PC",%CVET S BCGR="BCB"
 S VRT=" "_$S(%TYPCRT="PC":$C(179),$E(%TYPCRT,1,3)="VT5":$C(27)_"(0"_$C(120,27)_"(B",1:"|")_" "
 S %L1RBCL=%CV(BCGR)
 ;
 ;;S SM0=72,SM01=SM0+2
 S LCOD=2,LG(1)=5-'%ENGLISH
 ;
 S WD(1)=32+LCOD,WD(2)=32+LCOD
 I %ENGLISH D
 .S X1(1)=LG(1),X2(1)=X1(1)+WD(1)+1
 .S X1(2)=X2(1)+3,X2(2)=X1(2)+WD(2)+1
 I '%ENGLISH D
 .S X1(2)=LG(1),X2(2)=X1(2)+WD(2)+1
 .S X1(1)=X2(2)+3,X2(1)=X1(1)+WD(1)+1
 ;
 S ind=$O(^l4m0($P,9999),-1)+1
 M ^l4m0($p,ind)=^l4menu($p)
 S GL="^l4menu($P,TF)" K ^l4menu($P)
 S SH0=0,SAYOLD=""
 S SH1(1)=1
 S CWND=1
 ;
 D SIDKVZ S RL=%L4MAX\2+(%L4MAX#2)
 S Y1=$S(RL<17:5,1:3),Y2=Y1+RL+1
 ;--------------- SIDUR KVUZOT
 ;
M S SH=1,TF=1,(CWND,CWNDOLD)=1,CURTF=TF,FL10=1,(PG,PGOLD)=1
 ;
H D VIEW
 ;
R S %OTO=$G(%TO,"DW") K CAM,%TO,COD,REST,%SC,P1AI,HRP S CURTF=TF
 I $P($H,",",2)\60-%L2MT D TIME
 F I=SH:-1:1 Q:$D(@GL@(SH1(TF)+((CWND-1)*RL)+I-1))
 S SH=I I $G(CDNIN) S CDN=$E(CDNIN,1,$L(CDNIN)-1),%TO=$E(CDNIN,$L(CDNIN)) K CDNIN G R1
 D BAR(CWND,SH) I %TO'?1N.N,%TO'="*",$A(%TO)<96!($A(%TO)>122) S CDN=""
 ;;D CL1
 ;
R1 ;;I %TO="END",TF=1,CWND=1 S SH=0 G END
 I %TO="END"!(%TO="=") S SH=0,TF=1,CWND=1 G END
 ;;I %TO="END",TF=1,CWND=2 S %TO="TAB"
 ;;I %TO="END" D  G R
 ;;I %TO="=" G END
 I %TO="LEFT"!(%TO="RIGHT") S %TO="TAB"
 ;;I %TO="RIGHT"&'%ENGLISH!(%TO="LEFT"&%ENGLISH) D  G R
 .I CWND=2 D CLN(CWND,0),CLBAR(CWND,SH) S CWND=1 D CLN(CWND,1) Q
 I %TO="TAB"!(%TO="TABN") K P1HZTF7 D CLN(CWND,0),CLBAR(CWND,SH) S CWND=3-CWND D CLN(CWND,1) G R
 ;
 ;----------------------- HIPUS LEFI SHEM
 ;;I %TO="F6" D CLBAR(CWND,SH) D  G:STRING="" R S %TO="" D VIEW S %TO=""
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,STRING,SH,SHOLD,PG,PGOLD,CWNDOLD,X1,X2,Y1,Y2,WD1,WD2,SH1,SH2,RL,TF,GL,KVZ,BCGR,KOT,CL0,CCL0,CVKP,CWND,PG,LCOD) D ^%L1C
 .S SHF6=SH,SHOLDF6=$G(SHOLD),CWNDOLDF6=CWNDOLD,PGOLDF6=PGOLD,%SCRN="%L4MENU"
 .S FILE=MAC,%HBRY="" D POISK^%L3MBGS
 .I FLAG'="" S STRING="",SH=SHF6,SHOLD=SHOLDF6,CWNDOLD=CWNDOLDF6,PGOLD=PGOLDF6
 .Q:STRING=""
 .D FIND(STRING)
 ;-------------------------- NUMBER
 ;
 I %TO>0&(%TO<10)!(%TO=0) S OKCDN=0 S:$G(CDN)>3 CDN="" S CDN=$G(CDN)_%TO S:$L(CDN)>2 CDN=$E(CDN,$L(CDN-1),$L(CDN)) D  G R
 .N %I,A F %I=1:1:(2*RL) Q:'$D(@GL@(SH1(TF)+%I-1))  D  Q:OKCDN
 ..I %I-1=CDN D CLBAR(CWND,SH),CLN(CWND,0) S SH=%I,OKCDN=1 S:SH'>RL CWND=1 S:SH>RL CWND=2,SH=SH-RL D CLN(CWND,1) Q
 ;
 I %TO>0&(%TO<10)!(%TO=0) D  G R
 .N SHT S SHT=%TO
 .I $D(@GL@(SH1(TF)+((CWND-1)*RL)+SHT-1)) D CLBAR(CWND,SH) S SH=SHT Q
 ;
 ;------------------------------ HEBREW
 I $A(%TO)>95&($A(%TO)<123) S OKCDN=0 S CDN=%TO_$G(CDN) D  G R
 .N %I,A F %I=1:1:(2*RL) Q:'$D(@GL@(SH1(TF)+%I-1))  S A=$G(^(SH1(TF)+%I-1)) D  Q:OKCDN
 ..N IN S IN=$E(A,$L(A)-$L(CDN)+1,255)
 ..I IN=CDN D CLBAR(CWND,SH),CLN(CWND,0) S SH=%I,OKCDN=1 S:SH'>RL CWND=1 S:SH>RL CWND=2,SH=SH-RL D CLN(CWND,1) Q
 ;-------- ENTER
 I %TO="" G END
 ;
 I %TO="UP",SH'>1 D  G R
 .D CLBAR(CWND,SH)
 .I $D(@GL@(SH1(TF)+((CWND-1)*RL)+RL-1)) S SH=RL Q
 .N I F I=SH+RL-1:-1:SH Q:$D(@GL@(SH1(TF)+((CWND-1)*RL)+I-1))
 .S SH=I
 I %TO="UP" D CLBAR(CWND,SH) S SH=SH-1 G R
 ;
 I %TO="DW",'$D(@GL@(SH1(TF)+((CWND-1)*RL)+SH))!(SH'<RL) D CLBAR(CWND,SH) S SH=1 G R
 I %TO="DW" D CLBAR(CWND,SH) S SH=SH+1 G R
 ;
 I %TO="PGUP" S SH1(TF)=SH1(TF)-(2*RL) S:SH1(TF)<1 SH1(TF)=1 S PG=PG-2 S:PG<1 PG=1 D HZG(TF) S SH=1 G R
 I %TO="PGDW" D  G R
 .I '$D(@GL@(SH1(TF)+(2*RL))) W *7 Q
 .S SH1(TF)=SH1(TF)+(2*RL) S SH=1,PG=PG+2 D HZG(TF)
 G R
END ;
 S %I=SH1(TF)+((CWND-1)*RL)+SH-1
 K ^l4menu($P)
 I $g(ind),$D(^l4m0($p,ind))>9 m ^l4menu($p)=^l4m0($p,ind)
 Q
 ;
BAR(WND,SCH) X:$D(BAR1) %LIGHT D POS1(WND,SCH)
 S %S=$$DATA(TF,WND,SH) I $E($TR(%S," ",""))="~" X %XCL S %TO=$S('%OTO:%OTO,1:0) Q
 D POS1(WND,SCH)
 N CIST,%LS,%INV S CIST="",%LS=WD(WND)-LCOD-2 S:'$D(BAR1) %INV="" D CL0
 S %ZMSL("TIME")=60
 I '%ENGLISH S %ZMSF="",%L1NMB("NO")="" D ^%L1ZMS X %XCL
 I %ENGLISH S %ZMSF="" D ^%L1ZMSL X %XCL
 Q
BAR1(WND,SCH) N BAR1 S %L1GET="",BAR1="" D BAR(WND,SCH) K %L1GET Q
 ;
DATA(TF,WND,SCH) N A S A=$G(@GL@(SH1(TF)+((WND-1)*RL)+SCH-1))
 Q A
 ;
HZG(TF) ;
 N %CL0,%CCL,BC S BC=BCGR D CL0 ;S BCGR=$S(TF=1:"GB",1:"YB") D CL0 X %XCL
 W %HBR S %L1RBCL=%CL0
 ;;I TF=1 S %XX=1,%YY=Y1-3 X %POSIC W %CV("BB"),%chists
 D TV^%L1RBUA(Y1,X1(1),Y2,X2(1))
 D KOTHZG(TF,1,PG)
 I $D(@GL@(SH1(TF)+(2*RL))) X %LIGHT S %SAY=" <PGDN>  ++"_(Y1+RL)_","_(X1(TF)+10)_",HH" X %XMSG
 F %I=1:1:RL Q:'$D(@GL@(SH1(TF)+%I-1))  D PC(TF,1,%I)
 D TV^%L1RBUA(Y1,X1(2),Y2,X2(2))
 D KOTHZG(TF,2,PG+1)
 F %I=1:1:RL Q:'$D(@GL@(SH1(TF)+RL+%I-1))  D PC(TF,2,%I)
 S RL(TF)=%I-'$D(@GL@(SH1(TF)+%I-1))
 S BCGR=BC
 Q
KOTHZG(TF,WND,PG) ;
 Q
 X %LIGHT S %SAY=PG_" sc "_$G(KOT(TF))_" ++"_(Y1-1)_","_(X2(WND)-6)_",HH"
 I $D(@GL@(SH1(TF)-1)) S %SAY=" <PGUP> "_%SAY
 D CL0 X %XMSG
 I $D(@GL@(SH1(TF)+(2*RL))) X %LIGHT S %SAY=" <PGDN>  ++"_(Y1+RL)_","_(X1(TF)+10)_",HH" X %XMSG
 Q
CL0 S %CL0=%CV(BCGR)
 S %CCL=$C(27,91,48,109)_%CV(BCGR)
 S %L1RBCL=%CL0
 Q
CL1 S %CL0=CL0,%L1RBCL=%CL0
 S %CCL=CCL0 X %XCL
 Q
PC(TF,WND,%I) ;
 N A S A=$G(@GL@(SH1(TF)+((WND-1)*RL)+%I-1))
 D POS(WND,%I) D CL0
 I $E($TR(A," ",""))="~" W %LIGHT1,%CV($S(%TYPCRT="PC":"YF",1:"CF")),$TR($TR($$KAV($E($$SPL^%L1FRM(A),2,255),WD(CWND)),%TES1,%TES2),%TEN,%THB),%CCL Q
 N %I0 S %I0=%I-1
 ;;I '%ENGLISH W %LIGHT1,%CV("YF"),$J(WND-1*RL+%I0,2),%CCL D CL0 W %HBR," ",$TR($TR($$HBR^%L1FRM(A,WD(CWND)-LCOD-2)_" ",%TES1,%TES2),%TEN,%THB) Q
 ;;I %ENGLISH W %ENG,$E(A,1,WD(CWND)-LCOD-1)_$J("",WD(CWND)-LCOD-2-$L(A))," " W %LIGHT1,%CV("YF"),$J(WND-1*RL+%I0,2),%CCL D CL0
 W %LIGHT1,%CV("YF"),$J(WND-1*RL+%I0,2),%CCL D CL0 W " ",$TR($TR($$HBR^%L1FRM(A,WD(CWND)-LCOD-2)_" ",%TES1,%TES2),%TEN,%THB) Q
 Q
CLN(WND,FL) ;
 Q
 N %I D CL0 X %XCL
 F %I=1:1:RL D POS(WND,%I) D
 .I FL,$D(@GL@(SH1(TF)+((WND-1)*RL)+%I-1)) W %LIGHT1_$J(%I,2)_%CCL Q
 .;;W "  "
 Q
POS(TF,SH) ;
 S %XX=X1(TF),%YY=Y1-1+SH X %POSIC
 Q
POS1(WND,SCH) ;
 I '%ENGLISH S %XX=X1(WND)+WD(WND)-2,%YY=Y1-1+SCH X %POSIC S $X=%XX,$Y=%YY Q
 I %ENGLISH S %XX=X1(WND),%YY=Y1-1+SCH X %POSIC S $X=%XX,$Y=%YY Q
 Q
CLBAR(WND,SCH) ;;N %TO,%I S %L1GET="" K %INV S %LS=WD(WND)
 D PC(TF,WND,SCH) ;
 Q
 D POS1(WND,SCH)
 ;;S %SAY=$J("",7)_"++"_%YY_",45,HH++BB,WF" X %XMSG
 ;;D POS1(WND,SCH)
 D CL0 X %XCL D POS1(WND,SCH) S %L1NMB("NO")="" D ^%L1ZMS K %L1GET
 Q
COD(TF,SH1) ;
 N A,I S A=$G(@GL@(SH1))
 N COD S COD=$$SPA^%L1FRM($E(A,$L(A)-LCOD+1,255))
 S:COD="" COD=" "
 Q COD
 ;
SAYN ;
 Q
SAYV ;
 D CL1 X %XCL N %AT S %AT=$$^%L1HEAD("")
 I $L(%AT) S %SAY=%AT_"++0,"_(80-(80-$L(%AT)\2))_",H,I" X %XMSG X %XCL
 I $D(@MAC@(0))#2 D
 .X %LIGHT N YK S YK=2 I $G(RL)>16 S YK=1
 .I '%ENGLISH S %SAY=@MAC@(0)_"++"_YK_","_(80-(80-$L(@MAC@(0))\2))_",HH++BB,YF" X %XMSG Q
 .I %ENGLISH S %SAY=@MAC@(0)_"++"_YK_","_(80-$L(@MAC@(0))\2)_",EE" X %XMSG Q
 D HZGDEV^%L2MENU
 D CL0 X %XCL
 I $D(^MSGSEND(+$$^%L1MRK("")))>9 W $C(27,91,72)_">>>"
 I $D(^PARSEND(+$$^%L1MRK("")))>9 S %SAY="<P>++0,4,EE,I" X %XMSG
 I $D(@$$^W4DEVI@($P)),$$NO^%L1CRDTC S %SAY="<X>++0,6,EE,I" X %XMSG
 D TIME
 Q
FIND(PAR) ;
 ; OUT: SHOLD,SH,TF
 N I,I1,N,N1 S OK=0
 F I=1:1 Q:'$D(^l4menu($P,1,I))  D  Q:OK
 .S N=$$COD(1,I) Q:N=""
 .D FIND1 S OK=1 Q
 I 'OK W *7
 Q
FIND1 ;
 ;;D VTF2(I) S SHOLD=$$GETSH(1,I),CWNDOLD=CWND,PGOLD=PG
 ;;S PG=1 F I1=1:1 Q:'$D(^l4menu($P,TF,I1))  I $$COD(TF,I1)=COD S SH=$$GETSH(TF,I1),PG=(I1-1\(2*RL))*2+1 Q
 Q
GETSH(TF,I) ;
 S A=I-SH1(TF)+1
GETSHA I A<0 S A=A+(2*RL),SH1(TF)=SH1(TF)-(2*RL),PG=PG-2 S:PG<1 PG=1 G GETSHA
 I SH1(TF)<0 S SH1(TF)=1
 I A>(2*RL) S A=A-(2*RL),SH1(TF)=SH1(TF)+(2*RL),PG=PG+2 G GETSHA
 S CWND=1
 I A>RL S A=A-RL,CWND=2
 Q A
 ;
SAVE ;
 I %TYPCRT="PC" D GET^%VIDEO("p1hztf",0,0,79,24,2) Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;;;;3$v"
 Q
REST ;
 I %TYPCRT="PC" D PUT^%VIDEO("p1hztf",0,0,79,24,2) Q
 I $E(%TYPCRT,1,3)="VT5" W $C(27,91),";;;;3;;;$v" Q
 D VIEW
 Q
VIEW D CL1 X %chista
 I %TYPCRT="PC" D ^%L1CH
 D HZG(TF)
 D SAYN ;--- SHURA TAHTONA
 D SAYV ;--- SHURA ELYONA
 D CL1 X %XCL
 Q
SIDKVZ ;
 N N,I
 S N=0,I=0 F  S N=$O(@MAC@(N)) Q:N=""  S I=I+1 D
 .N A S A=$G(@MAC@(N))
 .I '%ENGLISH S ^l4menu($P,1,I)=$$HBR^%L1FRM(A,WD(CWND)-LCOD-1)
 .I %ENGLISH S ^l4menu($P,1,I)=$E(A,1,WD(CWND)-LCOD-2)
 S %L4MAX=I
 Q
TIME ;
 N %M,%L,%I,%NP S %TIM=$ZD($H,"24:60")
 W *27,7 S %SAY="  "_$$^%L1DC($H,1)_"   "_%TIM_"  ++0,59,E" X %XMSG W *27,8
 S %L2MT=$P($H,",",2)\60
 Q
KAV(%KOT,%DL) N KAV S KAV="" I %TYPCRT["VT" S KAV=$C(27)_"(0"
 D CL0
 S KAV=KAV_$TR($J("",%DL-$L(%KOT)\2+1)," ",$S(%TYPCRT["VT":$C(113),1:$C(196))) ;"-"
 I %TYPCRT["VT" S KAV=KAV_$C(27)_"(B"
 S KAV=KAV_%LIGHT1_%CV("YF")_%KOT_%CCL
 I %TYPCRT["VT" S KAV=KAV_$C(27)_"(0"
 S KAV=KAV_$TR($J("",%DL-$L(%KOT)\2-1)," ",$S(%TYPCRT["VT":$C(113),1:$C(196))) ;"-"
 I %TYPCRT["VT" S KAV=KAV_$C(27)_"(B"
 Q KAV

%L4NH
%L4NH ;HELP %L4NU
 ;INPUT PARAMETERS: NAME GLOBAL WITH INDEX (MAC)
 ;                    L4("EU") -
 ;                               = 98
 ;                    L4("TX",%UROV)- TEXT IN BEG LINE( ----------  )
 ;                    L4("T1",%UROV) - HEADER TEXT
 ;                    L4("T2",%UROV) - COMMAND FOR TYPE HEADER
 ;                    L4("CD") - SIGN TYPE CODE (NO DEF-LAST. LEVEL.; "" - IND2_...INDn.," " - NO TYPE IND.,"I" - INDEX ONLY)
 ;                    L4("SS",%UROV)-LIMIT-SIMBOL
 ;                    L4("NR",%UROV) - NUMBER POLE SS ( ---""---   - 1)
 ;                    L4("SET",%UROV) - COMMAND MUMPS FOR INIT VALUE
 ;                    L4("US0",%UROV) - ---"---
 ;                    L4("US",%UROV) - ---"--- FOR CHOOSE MENU (%NXN - INDEX,^(%NN) - DATA
 ;                    L4("US1",%UROV) - ---"---,AFTER INPUT NUMBER IN MENU
 ;                    L4("TXT",%UROV) - COMMAND MUMPS FOR TYPE TEXT
 ;                    L4("FIRST",%UROV) - START VALUE FOR MENU
 ;                    L4("LAST",%UROV)  - USL END MENU
 ;                    L4("BE",%UROV) - LINE-TOP MENU
 ;                    L4("BU",%UROV) - NUMBER START LEVEL
 ;                    L4(1)         -  IF 1 NOAD IN MENU -> NEXT LEVEL
 ;                    L4(",")       - MUCH NUMBERS FOR CHOOSE
 ;                    L4("NOM",%UROV) - IF DEF,NO TYPE LINE'S NUMBERS
 ;OUTPUT   - FULL REF (MAC)
 ;           OR ARRAY INDEX %MM
 ;           FLAG  (FLAG)

%L4NL
L4NL ;
 K %STEC,%L4,KOD,INDEX,%TOP S:'$D(L4("EU")) L4("EU")=99
 S:'$D(L4("BE")) L4("BE")=0 S:'($D(L4("FIRST"))#2) L4("FIRST")=""
 S:'($D(L4("US"))#2) L4("US")=1
 K %MM S FLAG="",%UR=1,%PRZPT=0,%PRV=0,%PREND=0,INDEX="",NOMER=""
 S %RSTR=20,%KAV="""""",%KAV1=""""
 S %GLOB=MAC D FKOD S %UROV=%I-1
 S %XF="S %FIRST=%KAV1_%L4(""FIRST"")_%KAV1"
 S %XL="S %LASTI=0 I $D(%L4(""LAST""))#2 I @%L4(""LAST"") S %LASTI=1"
 S %XU="X:$D(%L4(""US0""))#2 %L4(""US0"") S %USL=$S($D(%L4(""US""))#2:%L4(""US""),1:1)"
 G PROV
CYC1 S %V=%MAC1,%V1=%MAC11,%V2=%PRS
 I $D(%L4("SET"))#2 X %L4("SET")
 S %MAC1=%V,%MAC11=%V1,%PRS=%V2
 S %V=%MAC1,%V1=%MAC11,%V2=%PRS
 X %XU I @%USL S %K=%K+1 S %MAC1=%V,%MAC11=%V1,%PRS=%V2 D PSTR I '%PRFIN S %IND(%K)=%NXN
 Q
PSTR ;
 I %SHS+2>%RSTR S %PRFIN=1 Q
 W !,%K,?2,";"
 I $D(%L4("TXT"))#2 S %VP=%MAC1,%VP1=%MAC11,%VP2=%PRS X %L4("TXT") S %SHS=%SHS+1 S %MAC1=%VP,%MAC11=%VP1,%PRS=%VP2 K %VP,%VP1,VP2 Q
 W ?9,$S($D(%L4("TX"))#2:%L4("TX"),1:""),$S($D(%L4("CD"))#2:$S(%L4("CD")=" ":"",%L4("CD")="":KOD_%NXN,1:%NXN),1:%NXN)
 I $D(%L4("CD")),%L4("CD")="ˆ" S %SHS=%SHS+1 Q
 I '($D(@%MAC1)#2) W ?10," <",%NXN,"> " S %SHS=%SHS+1 Q
 S %CHAST=$S($D(%L4("SS"))#2:$P(@%MAC1,%L4("SS"),$S($D(%L4("NR"))#2:%L4("NR"),1:1)),1:@%MAC1)
 S %LASTP=60-$L(%MAC11)-$L(%NXN) W ?20," ",$E(%CHAST,1,%LASTP) S %SHS=%SHS+1
 F I=1:1 Q:$L(%CHAST)<%LASTP  W !?19,$E(%CHAST,%LASTP+1,%LASTP+60) S %LASTP=%LASTP+60,%SHS=%SHS+1
 K %CHAST Q
 ;____
PRV S %PRV=1 U $P:(NOECHO:NOWRAP)
PROV ;
 I $D(@MAC)=0 W !,"*** HASN'T DATA !" S FLAG="ND" H 2 G END1
 S FLAG="" S %MAC1=$S($F(MAC,"("):$E(MAC,1,$L(MAC)-1)_",",1:MAC_"(")
 S %PRS=$F(%MAC1,",")
BEGP ;   �…�…•Ž„ �€ �ˆ†�ˆ‰ “�Ž‚…�œ
 S %INUR=%UROV+(%PRS>0)
 F %I=1:1 Q:$P($T(PAR+1),",",%I)=""  S PAR=$P($T(PAR+1)," ",2),%L4I=$P(PAR,",",%I) I $D(L4(%L4I))>0 S %L4(%L4I)=$S($D(L4(%L4I,%INUR)):L4(%L4I,%INUR),1:L4(%L4I))
 X %XF S %MAC1=%MAC1_%FIRST_")"
 S %K=0,%TOP(%UR)=1,%STEC(%UR,%TOP(%UR))=%MAC1_"!"_"0"
CYC S %PRS=$F(%MAC1,","),%RSTR=20-%L4("BE")
 S %XX=0,%YY=%L4("BE") X %POSIC W #
 S %SHS=0 I %PRS S %MAC11=$P(%MAC1,",",1,%UROV)
 I '%PRS S %MAC11=MAC_"("
 W ?10,$S($D(%L4("T1"))#2:%L4("T1"),1:""),!,%chists S %SHS=%SHS+1
 S %V=%MAC1,%V1=%MAC11,%V2=%PRS I $D(%L4("T2"))#2 X %L4("T2") S %SHS=%SHS+1
 S %MAC1=%V,%MAC11=%V1,%PRS=%V2 K %V,%V1,%V2
 S %PRFIN=0 S %NXN=$O(@%MAC1) K %IND
 S %MAC1=%MAC11_$S(%PRS:",",1:"")_"%NXN)"
 F %I=1:1 Q:%NXN=""  X %XL Q:%LASTI  D CYC1 Q:%PRFIN  S %NXN=$O(@%MAC1)
 I %K=0 W !," *** LAST LEVEL !" G:L4("EU")=98 END H 2 G VVERX^%L4NL2
 I %K=1,$D(L4(1)),L4("EU")'=(%UROV+(%PRS'=0)) G:%PRV VVERX^%L4NL2 S %NOM=1 G NOM
 S %PRV=0 I %PRFIN W !?30," *** „‹Ÿ ��Ž„Ž‹†…�ˆŸ �€�…�ˆ’… ""-->"""
 S %LAST=$S($D(%IND(%K-%PRFIN)):%IND(%K-%PRFIN),1:"")
ZN I $D(L4("PR")) G ZNP
 K %P X %chiste R !," �ŽŒ…� (? - ˆ�‘’�“Š–ˆŸ) > ",*%SIMB
 I %SIMB=0 D ^%S1CALC G CYC
 G SERV^%L4NL2:%SIMB=27,AVAR^%L4NL2:%SIMB=13&'%PRZPT,END1:%SIMB=13&%PRZPT
 W $C(%SIMB)
 S %SIMB=$C(%SIMB) G INSTR^%L4NL2:%SIMB="?"
NOMER ;
 S %NOM=%SIMB,%PREND=0 G:%PRZPT ZNZ^%L4NL2
VVOD R *%SIMB I %SIMB>31 W $C(%SIMB)
 I $C(%SIMB)?1N S %NOM=%NOM_$C(%SIMB) S:$L(%NOM)>3 %SIMB=8 G:$L(%NOM)>3 VVOD+1 G VVOD
 I %SIMB=8 G:$L(%NOM)=0 VVOD S:$L(%NOM)=1 %NOM="" S:$L(%NOM)>1 %NOM=$E(%NOM,1,$L(%NOM)-1) W %levo G VVOD
 I %SIMB'=13&(%SIMB'=46)&(%SIMB'=44) S %NOM=%NOM_$C(%SIMB) S %SIMB=8 G VVOD+1
 I %SIMB=46 S %PREND=1
 I %SIMB=44,%UROV+(%PRS'=0)=L4("EU") S %PRZPT=1,%NOM=%NOM_"," G ZNZ^%L4NL2
 I %NOM="" G AVAR^%L4NL2
 I %NOM="." S FLAG="." S MAC=$S($P(%MAC11,"(",2)'="":%MAC11_")",1:MAC) G END1
NOM I '$D(%IND(%NOM)) W *7,?63,"*** Ž˜ˆ�Š€ !!" X PEREX G ZN
 S %UR=%UR+1 S:%PRS %UROV=%UROV+1 S:%UROV=L4("EU") %PREND=1
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_%IND(%NOM)_"""," S %PRS=1
 X %XF S %MAC1=%MAC1_%FIRST_")" S KOD=KOD_%IND(%NOM),INDEX=%IND(%NOM)
 G:'%PREND BEGP
END S MAC=$P(%MAC1,",",1,%UROV)_")"
 I $E(NOMER,$L(NOMER))="," S NOMER=$E(NOMER,1,$L(NOMER)-1)
 S %UR=%UR+1 S:%PRS %UROV=%UROV+1 S:%UROV'<L4("EU") %PREND=1
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_%IND(%NOM)_"""," S %PRS=1
 S KOD=KOD_%IND(%NOM),INDEX=%IND(%NOM)
 I $D(%L4("US1"))#2 X %L4("US1")
 G:'%PREND BEGP
END1 U $P:(ECHO:WRAP:WIDTH=80) K %GLOB,%MAC1,%L4,%L4I,%MACF,%K,%I,%J,%IND,%NXN,%SIMB,%YES,%NOM,%SIMB,%SUB,%XF,%XL,%XU,%FIRST,%GLOB,%LASTI,%USL,%LAB,%LAST,%LASTP,%MAC11,%PRFIN,%PRS,%RSTR,%SHS,%KAV,%KAV1,%MACN Q
ZNP G ZNP^%L4NL2
 ;*****
FKOD ;
 S KOD="",%KOD="" F %I=2:1 Q:$P(%GLOB,",",%I)=""  S %KOD=$P(%GLOB,",",%I) S:%KOD["""" %KOD=$P(%KOD,"""",2) S KOD=KOD_%KOD
 S:%UR>1 INDEX=%KOD
 Q
PAR ;
 T1,T2,TXT,FIRST,LAST,BU,TX,SS,NR,US,US0,CD,BE,SET
 Q

%L4NL2
%L4NL2 ;
AVAR ;
 R !,"  EXIT ? (Y/N) <Y> ",%YES
 I %YES="D"!(%YES="Y")!(%YES="") S FLAG="AB" G END1^%L4NL
 G:%YES="N" ZN^%L4NL
 G AVAR
INSTR W !!,ZWEZD,!
 W !,"->  "
 W !,"<-  "
 W !,"^",!,"!   "
 W !,"<Enter>- ",!,ZWEZD,! R !?40," <Enter>",YES
 S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) G CYC^%L4NL
SERV R *%P1:0,*%P:0 I %P>0 G LEVO:%P=%LEVO,PRAVO:%P=%PRAVO,VVERX:%P=%VVERX W *7,?63,"*** ERROR !" X PEREX G ZN^%L4NL
LEVO ;
 I %TOP(%UR)=1 W *7,?43,"*** BEGIN OF LEVEL!" X PEREX G ZN^%L4NL
 K %STEC(%UR,%TOP(%UR)) S %TOP(%UR)=%TOP(%UR)-1,%MAC1=$P(%STEC(%UR,%TOP(%UR)),"!",1) S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) G CYC^%L4NL
PRAVO ;
 I %NXN="" W *7,?33,"*** END OF LEVEL !" X PEREX G ZN^%L4NL
 X %chiste S %TOP(%UR)=%TOP(%UR)+1 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_%LAST_""")" S %STEC(%UR,%TOP(%UR))=%MAC1_"!"_(%K-1) S %K=%K-1 G CYC^%L4NL
VVERX ;
 I '$D(L4("BU")),%UR=1 S FLAG="^" G END1^%L4NL
 S %PRZPT=0 S %GLOB=%MAC1 D FKOD^%L4NL S %UROV=%I-1 I %UROV=1 S FLAG="^" G END1^%L4NL
 I $D(L4("BU")) I %UROV-1=L4("BU") S FLAG="^" G END1^%L4NL
 K %STEC(%UR) S %UR=%UR-1,%UROV=%UROV-2
 S:%UROV=0 MAC=$P(MAC,"(",1),%PRS=0,KOD="" S %GLOB=$P(%MAC1,",",1,%UROV) D FKOD^%L4NL S %K=0 S:'%PRS %UROV=1 S:%PRS MAC=%GLOB_")" G PRV^%L4NL
 Q
ZNP K %P X %chiste G:'%PRFIN&(%TOP(%UR)=1) END1^%L4NL
 R !!?15,"NEXT SCREEN.- '-->',PREVIOS SCREEN - '<--', EXIT - <Enter> ",*%SIMB
 G SERV:%SIMB=27,END1^%L4NL:%SIMB=13
 W *7 X PEREX G ZNP
ZNZ R %S S %S=%NOM_%S I '$D(NOMER) S NOMER=""
 S %FLE=0 F %JJ=1:1 S %NOM=$P(%S,",",%JJ) Q:%NOM=""  I '$D(%IND(%NOM)) W !,%NOM," - Ž˜ˆ�Š€ !" S %FLE=1
 G:%FLE ZN^%L4NL S %JE=%JJ-1 S %PREND=1
 F %JJ=1:1:%JE S %NOM=$P(%S,",",%JJ),%MM(%IND(%NOM))=%MAC11_$S(%PRS:",""",1:"""")_%IND(%NOM)_""")" S NOMER=NOMER_%IND(%NOM)_","
 G ZN^%L4NL

%L4NU
%L4NU ;   [ 08.08.01  5:33 PM ] [ 06/15/98 11:34 AM ] [ 06/13/98  9:30 AM ]
 K %STEC,%L4,KOD,INDEX,%TOP,NOMER,%PRTCH,%ORD S:'$D(L4("EU")) L4("EU")=99
 S %ORD=1 I $G(%S3G)<0 S %ORD=-1
 S:'$D(L4("BE")) L4("BE")=0 S:'($D(L4("FIRST"))#2) L4("FIRST")=""
 S:'($D(L4("US"))#2) L4("US")=1
 K %MM S FLAG="",%UR=1,%PRZPT=0,%PRV=0,%PREND=0,INDEX="",NOMER=""
 S %VETKA=$P(MAC,"""",2),%RSTR=20,%KAV="""""",%KAV1=""""
 S %GLOB=MAC D FKOD S %UROV=%I-1
 S %XF="S %FIRST=%KAV1_%L4(""FIRST"")_%KAV1"
 S %XL="S %LASTI=0 I $D(%L4(""LAST""))#2 I @%L4(""LAST"") S %LASTI=1"
 S %XU="X:$D(%L4(""US0""))#2 %L4(""US0"") S %USL=$S($D(%L4(""US""))#2:%L4(""US""),1:1)"
 G PROV
CYC1 S %V=%MAC1,%SS="" S:$D(^(%NXN))#2 %SS=^(%NXN)
 I $D(%L4("SET"))#2 X %L4("SET") S %V=$O(@%V) S %V=%MAC1
 X %XU I @%USL S %V=$O(@%V) S %K=%K+1 D PSTR I '%PRFIN S %IND(%K)=%NXN
 I $E(%V,1,2)?1"^"1U S %V=$O(@%V)
 S %V=%MAC1
 Q
PSTR ;
 I %SHS+2>%RSTR S %PRFIN=1 Q
 W !?3 I '$D(L4("PR")),'$D(%L4("NOM")) W %K,?5,";"
 I $D(%L4("TXT"))#2 S %V=%MAC1 X %L4("TXT") S %V=$O(@%V) S %SHS=%SHS+1 Q
 S %KODL4=$S($D(%L4("TX"))#2:%L4("TX"),1:"")_$S($D(%L4("CD"))#2:$S(%L4("CD")=" ":"",%L4("CD")="":KOD_%NXN,1:%NXN),1:%NXN)
 I '($D(^(%NXN))#2) W ?10," <",%NXN,"> " S %SHS=%SHS+1 Q
 S %CHAST=$S($D(%L4("SS"))#2:$P(^(%NXN),%L4("SS"),$S($D(%L4("NR"))#2:%L4("NR"),1:1)),1:^(%NXN))
 W ?9,%KODL4 ; X %XCL S $X=$L(%KODL4)+9
 I $D(%L4("CD")),%L4("CD")="I" S %SHS=%SHS+1 Q
 S %LASTP=69-$L(%KODL4) W " ",$E(%CHAST,1,%LASTP) S %SHS=%SHS+1
 F %II=1:1 S %CHASTL4=$E(%CHAST,%LASTP*%II+1,%LASTP*(%II+1)) Q:%CHASTL4=""  W !?$L(%KODL4)+9," ",%CHASTL4 S %SHS=%SHS+1
 K %CHAST,%KODL4,%CHASTL4 Q
 ;___
PRV S %PRV=1
PROV U $P:(NOECHO:NOWRAP:NOESC)
 I $D(@MAC)=0 W:'$D(L4("ND")) !!,"*** HASN'T DESCENDANTS !" S FLAG="ND" H 2 G END1
 S FLAG="" S %MAC1=$S($F(MAC,"("):$E(MAC,1,$L(MAC)-1)_",",1:MAC_"(")
 S %PRS=$F(%MAC1,",")
BEGP ;
 S %INUR=%UROV+(%PRS>0)
 F %I=1:1 Q:$P($T(PAR+1),",",%I)=""  S PAR=$P($T(PAR+1)," ;",2),%L4I=$P(PAR,",",%I) I $D(L4(%L4I))>0 S %L4(%L4I)=$S($D(L4(%L4I,%INUR)):L4(%L4I,%INUR),1:L4(%L4I))
 X %XF S %MAC1=%MAC1_%FIRST_")"
 S %K=0,%TOP(%UR)=1,%STEC(%UR,%TOP(%UR))=%MAC1_"!"_"0"
CYC S %PRS=$F(%MAC1,","),%RSTR=20-%L4("BE")
 S %XX=0,%YY=%L4("BE") X %POSIC X %chiste
 S %SHS=0 I %PRS S %MAC11=$P(%MAC1,",",1,%UROV)
 I '%PRS S %MAC11=MAC_"("
 W ?10,$S($D(%L4("T1"))#2:%L4("T1"),1:""),!,%chists S %SHS=%SHS+1
 I $D(%L4("T2"))#2 X %L4("T2") S %SHS=%SHS+1
 X %XCL
 S %PRFIN=0 S %NXN=$O(@%MAC1,%ORD) K %IND
 F %I=1:1 Q:%NXN=""  X %XL Q:%LASTI  D CYC1 Q:%PRFIN  S %NXN=$O(^(%NXN),%ORD)
 I %K=0 W:L4("EU")'=98 !," *** LAST LEVEL !" X %XCL G:L4("EU")=98 END H 2 G:%UR>1 VVERX S FLAG="ND" G END1
 I %K=1,$D(L4(1)),L4("EU")'=%INUR G:%PRV VVERX S %NOM=1 G NOM
 S %PRV=0 I %PRFIN W !?30," *** LOOK AT ""-->""" X %XCL
 S %LAST=$S($D(%IND(%K-%PRFIN)):%IND(%K-%PRFIN),1:"")
 G ZN
END S MAC=$P(%MAC1,",",1,%UROV)_")"
END01 I $E(NOMER,$L(NOMER))="," S NOMER=$E(NOMER,1,$L(NOMER)-1)
END1 ;;S %CL0=44 X %XCL U $P:(ECHO:WRAP)
 K %GLOB,%L4I,%MAC1,%L4,%MACF,%K,%KOD,%I,%J,%IND,%NXN,%SIMB
 K %YES,%NOM,%SIMB,%SUB,%XF,%XL,%XU,%FIRST,%GLOB,%LASTI,%USL
 K %LAB,%LAST,%LASTP,%MAC11,%PRFIN,%PRS,%RSTR,%SHS,%VETKA,%KAV,%KAV1,%MACN
 Q
 ;*
FKOD ;
 S KOD="" S KOD1=$P($P(%GLOB,"(",2),")") S:$E(KOD1)="""" KOD1=$P(KOD1,"""",2)
 F %I=2:1 Q:$P(%GLOB,",",%I)=""  S %KOD=$P(%GLOB,",",%I) S:%KOD["""" %KOD=$P(%KOD,"""",2) S KOD=KOD_%KOD
 S:%UR>1 INDEX=%KOD I $E(KOD,$L(KOD))=")" S KOD=$E(KOD,1,$L(KOD)-1)
 S KOD1=KOD1_KOD
 Q
PAR ;
 ;T1,T2,TXT,FIRST,LAST,BU,TX,SS,NR,US,US0,US1,CD,BE,SET,NOM
 Q
%L4NU4 ;
ZN I $D(L4("PR")) G ZNP
 K %P S %XX=0,%YY=22 X %POSIC,%chiste W " NUMBER (? - HELP > "
 X %XCL W %chists R *%SIMB X %XCL
 I $D(%UPRCOD($ZB)),$T(@%UPRCOD($ZB))'="" G @%UPRCOD($ZB)
 I %SIMB>31,%SIMB<192 W $C(%SIMB) X %XCL
 I %UROV+(%PRS'=0)=L4("EU"),$D(L4(",")) S %PRZPT=1
 ;;I %SIMB=0 D ^%S1CALC S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) G CYC
 G SERV:%SIMB=27!'%SIMB,AVAR^%L4NU3:%SIMB=13&('%PRZPT!(NOMER="")),END1:%SIMB=13&%PRZPT
 S %SIMB=$C(%SIMB) G INSTR^%L4NU3:%SIMB="?"
NOMER ;
 S %NOM=%SIMB,%PREND=0
VVOD R *%SIMB G:%SIMB=27!(%SIMB>191) VVOD
 I %SIMB>31 W $C(%SIMB) X %XCL
 I $C(%SIMB)?1N S %NOM=%NOM_$C(%SIMB) I '%PRZPT S:$L(%NOM)>3 %SIMB=8 G:$L(%NOM)>3 VVOD+1
 I $C(%SIMB)?1N G VVOD
 I %SIMB=8 G:$L(%NOM)=0 VVOD S:$L(%NOM)=1 %NOM="" S:$L(%NOM)>1 %NOM=$E(%NOM,1,$L(%NOM)-1) W %levo," ",%levo G VVOD
 I '$D(%L4("NOM")),%SIMB'=13&(%SIMB'=46)&(%SIMB'=44)&(%SIMB'=45)!((%SIMB=44!(%SIMB=45))&'%PRZPT) S %NOM=%NOM_$C(%SIMB) S %SIMB=8 G VVOD+1
 I %SIMB=46 S %PREND=1,%PRTCH=""
 I %SIMB=44,%PRZPT S %NOM=%NOM_"," G VVOD
 I %SIMB=45,%PRZPT S %NOM=%NOM_"-" G VVOD
 I %NOM="",NOMER="" G AVAR^%L4NU3
 I %PRZPT G ZNZ
 I %NOM="." S FLAG="." S MAC=$S($P(%MAC11,"(",2)'="":%MAC11_")",1:MAC) G END1
NOM I '$D(%L4("NOM")),'$D(%IND(+%NOM)) W *7,?63,"*** ERROR !!" X PEREX G ZN
 I $D(%L4("NOM")),'$D(^(%NOM)) W *7,?63,"*** ERROR !!" X PEREX G ZN
NOM1 S %UR=%UR+1 S:%PRS %UROV=%UROV+1 S:%UROV'<L4("EU") %PREND=1
 S %NOMMENU=$S($D(%L4("NOM")):"%NOM",1:"%IND(+%NOM)")
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_@%NOMMENU_"""," S %PRS=1
 S KOD=KOD_@%NOMMENU,INDEX=@%NOMMENU
 I $D(%L4("US1"))#2 X %L4("US1")
 G:'%PREND BEGP
 G END
ZNP K %P X %chiste G:'%PRFIN&(%TOP(%UR)=1) END1
 R !!?15,"NEXT- '-->',PREVIOS - '<--', EXIT - <ENTER> ",*%SIMB
 X %XCL
 G SERV:%SIMB=27,END1:%SIMB=13
 W *7 X PEREX G ZNP
ZNZ ;
 S %S=%NOM,%FLE=0
 I %S["-" F %JJ=1:1 S %NOM=$P(%S,",",%JJ) Q:%NOM=""  D DO1
 G EN1
DO1 ;
 I %NOM?1"-"1N.N S %NOM=$E(%NOM,2,10) K:$D(@%NOMMENU) %MM(@%NOMMENU) S %S=$P(%S,",",1,%JJ-1)_$P(%S,",",%JJ+1,255) K %NOM Q
 I %NOM?1"-"1N.N1"-"1N.N S %NOM1=$P(%NOM,"-",2),%NOM2=$P(%NOM,"-",3) F %NOM=%NOM1:1:%NOM2 K:$D(@%NOMMENU) %MM(@%NOMMENU) S %S=$P(%S,",",1,%JJ-1)_$P(%S,",",%JJ+1,255)
 I  K %NOM,%NOM1,%NOM2 Q
 I %NOM?1N.N1"-"1N.N S %NOM1=$P(%NOM,"-",1),%NOM2=$P(%NOM,"-",2) S %NOM="" F %JJ2=%NOM1:1:%NOM2 S:$D(^(%JJ2)) %NOM=%NOM_%JJ2_","
 I  S $P(%S,",",%JJ)=$E(%NOM,1,$L(%NOM)-1) K %NOM,%NOM1,%NOM2,%JJ1,%JJ2
 Q
EN1 ;
 S %FLE=0 F %JJ=1:1 S %NOM=$P(%S,",",%JJ) Q:%NOM=""  I '$D(@%NOMMENU) W !,%NOM," - Ž˜ˆ�Š€ !" S %FLE=1
 G:%FLE ZN S %JE=%JJ-1 S %PREND=1
 F %JJ=1:1:%JE S %NOM=$P(%S,",",%JJ),%MM(@%NOMMENU)=%MAC11_$S(%PRS:",""",1:"""")_@%NOMMENU_""")",NOMER=NOMER_$S(NOMER'="":",",1:"")_@%NOMMENU
 S %NOM1="" F %JJ=1:1:$L(NOMER,",") S %JJ1=$P(NOMER,",",%JJ) I %JJ1'="",$D(%MM(%JJ1)) S %NOM1=%NOM1_%JJ1_","
 S NOMER=$E(%NOM1,1,$L(%NOM1)-1)
 I %L4("US")=1 S %SAY=" ***  "_NOMER X %soob
 G ZN
SERV R *%P1:0,*%P:0 G LEVO:%P=%LEVO,PRAVO:%P=%PRAVO,VVERX:%P=%VVERX
 W *7,?63,"*** ERROR !" X PEREX G ZN
LEVO ;
 I %TOP(%UR)=1 W *7,?43,"*** BEGIN OF LEVEL!" H 2 X PEREX,%XCL G ZN
 K %STEC(%UR,%TOP(%UR)) S %TOP(%UR)=%TOP(%UR)-1,%MAC1=$P(%STEC(%UR,%TOP(%UR)),"!",1) S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) G CYC
PRAVO ;
 I %NXN=""!%LASTI W *7,?33,"*** END OF LEVEL !" H 2 X PEREX,%XCL G ZN
 X %chiste S %TOP(%UR)=%TOP(%UR)+1
 S %MAC1=%MAC11_$S(%PRS:",""",1:"""")_%LAST_""")"
 S %STEC(%UR,%TOP(%UR))=%MAC1_"!"_(%K-1) S %K=%K-1 G CYC
VVERX ;
 N A R *A:0
 I '$D(L4("BU")),%UR=1 S FLAG="^" G END01
 S %PRZPT=0 S %GLOB=%MAC1 D FKOD S %UROV=%I-1
 I %UROV=1 S FLAG="^" G END1
 I $D(L4("BU")) I %UROV-1=L4("BU") S FLAG="^" G END1
 K %STEC(%UR) S %UR=%UR-1,%UROV=%UROV-1 I %UROV>1 S %UROV=%UROV-1
 S %MAC1=$P(%STEC(%UR,%TOP(%UR)),"!",1) S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) G CYC
 Q

%L4NU3
%L4NU3 ; [ 06/13/98 12:09 PM ] [ 12/16/92  3:21 PM ]
AVAR ;
 R !,"  END OF SEARCH ? (Y/N) <Y> ",%YES
 I %YES="D"!(%YES="Y")!(%YES="") S FLAG="AB" X %XCL G END1^%L4NU
 X %XCL G:%YES="N" ZN^%L4NU
 G AVAR
INSTR W !!,ZWEZD,!,"ENTER MENU NUMBER (AND DOT <.> AFTER NUMBER IN YOU WANT TO TERMINATE SEARCH)"
 W !,"-> NEXT SCREEN "
 W !,"<- PREVIOUS SCREEN "
 W !,"^",!,"|  GO TO PREVIOUS LEVEL "
 W !,"<Enter>- EMERGENCY EXIT",!,ZWEZD,! R !?40,"PRESS <Enter>",YES
 S %K=$P(%STEC(%UR,%TOP(%UR)),"!",2) X %XCL G CYC^%L4NU
 Q

%L4SP
%L4SP ;DJM;DISPLAY AVAILABLE SPACE; [ 08/15/2000  5:00 PM ] [ 05/25/93  10:25 AM ]
 ;Copyright Micronetics Design Corp. @1984
 ;;W !?10,$P($P($ZV,","),"-")," - ","Disk Space/Free Space Utility",!?16,$ZHL(1,"dd-MON-yy")," ",$ZHL(2,"bh:mm P")
 O 63::0 I '$T W !,"VIEW buffer busy." Q
 NEW
 D GETVG^%VGUTIL S %NOSHOW=0
 I VG=1 S %VGI=0 D DISPVG G EXIT
 D SPACE
EXIT ;
 C 63
 Q
SPACE ;DISPLAY MOUNTED DATABASES
 R !!,"Select volume group to display <ALL>: ",%VGNA
 I %VGNA="^L" W ! D VGLIST^%VGUTIL G SPACE
 I %VGNA="?" W !!,"Enter the name or number of the volume group to be displayed.",!,"Enter <RETURN> to display all volume groups.",!,"Enter '^L' for a list of mounted volume groups.",!,"Enter '^' or '^Q' to exit" G SPACE
 Q:%VGNA="^"
 I %VGNA="" G MNTVG
 I %VGNA'?3U&%VGNA'?1.N W "... Invalid volume group name." G SPACE
 I '$D(VG(%VGNA)) W "... not a mounted volume group." G SPACE
 S:%VGNA?3U %VGI=VG(%VGNA)
 S:%VGNA?1.N %VGI=%VGNA,%VGNA=VG(%VGI)
 D DISPVG Q
MNTVG ;DISPLAY ALL MOUNTED VOLUME GROUPS
 D GETVG^%VGUTIL S %VGI=0,%NOSHOW=0
MNTVG1 ;
 D DISPVG S %VGI=$O(VG(%VGI)) Q:%VGI'?1.N
 D PAUSE Q:%FLAG
 G MNTVG1
DBMAINT(%VGI) ;
 O 63 S %NOSHOW=0 D DISPVG Q
PAUSE ;
 S %FLAG=0 W !,"<>" R %I S:%I="." %FLAG=1 Q
DISPVG ;DISPLAY ONE VOLUME GROUP
 D VGINFO^%VGUTIL2(%VGI),OS Q:'VGINAME
 D ^%L1C
 S %TOTBLK=0,%FTOTBLK=0
 I %ENGLISH D
 .W !!?5,"Volume Group:  ",VGNAME
 .W "   Index:  ",%VGI
 .I VGRVG W "  (Remote on ",VGCIRN,")"
 .E  W:VGRESBLK "    DKRES reserved blocks:  ",VGRESBLK
 .W !!?5,"Vol",?12,"Maps",?20,"Tot Blks",?30,"Free Spc",?43,"%-Free",?53,$S(%OS:"Host File Name",1:"Disk Address")
 I '%ENGLISH D
 .W %HBR
 .W !!?5,VGNAME," : dveaw "
 .W %VGI," : qwcpi` "
 .W !!?5,"dveaw",?12,"dtn",?20,"  k""dq",?30,"  iept",?43,"%-iept",?53,$S(%OS:"mipezp qiqa",1:"zaezk")
 .W %ENG
 W !?5,"---",?12,"----",?20,"--------",?30,"--------",?43,"------",?53,"--------------"
 D INT
 W:VGVOLS>1 !,?20,"========",?30,"========",?43,"======",!,?20,$J(%TOTBLK,8,0),?30,$J(%FTOTBLK,8,0),?43,$J(%FTOTBLK*100/$S(%TOTBLK:%TOTBLK,1:1),6,2)
 K %DB,%SZ,%SP,%I,%J,%TOTBLK,%FTOTBLK
 Q
INT N (%FTOTBLK,%TOTBLK,%VGI,%NOSHOW,VGVOLS) I '$D(%NOSHOW) S %NOSHOW=1
 O 63 S (%TOTBLK,%FTOTBLK)=0 I '$D(%VGI) S %VGI=0
 D VGINFO^%VGUTIL2(%VGI),OS
 S %SPFBLK=0 F %DB=0:1:VGVOLS-1 D DBDISP S %SPFBLK=%SPFBLK+VOLBLKS
 Q
INT1 ;
 N (%DB,%SP,%SZ,%VGI,VGVOL)
 S (%TOTBLK,%FTOTBLK)=0,%NOSHOW=1,%SPFBLK=$P(VGVOL(%DB),"^",2)
 D OS,DBDISP
 Q
DBDISP ;
 D VOLINFO^%VGUTIL2(%VGI,%DB)
 D DBDISP1
 I '%NOSHOW W !?5,$J(%DB,2,0),?11,$J(VOLMAPS,4,0),?20,$J(%SZ,8,0),?30,$J(%SP,8,0),?43,$J(%SP*100/$S(%SZ:%SZ,1:1),6,2),?53,VOLDBNA
 S %TOTBLK=%TOTBLK+%SZ,%FTOTBLK=%FTOTBLK+%SP
 Q
DBDISP1 ;GET TOTAL BLOCKS & TOTAL FREE BLOCKS
 S %SP=0,%SZ=VOLDBSZ
 F %K=0:1:VOLMAPS-1 V %K*512+%SPFBLK+1:"G"_%VGI S %SP=%SP+$S($V(1022,0,2)>511:0,1:$V(1022,0,2))
 Q
OS S %OS=$V(0,-4,2)#16 Q

%L4SSD
SSD ;CDS;SYSTEM SHUTDOWN; [ 12/03/98  3:03 PM ] [ 09/21/93  11:44 AM ]
 H

%L4VLD
%L4VLD ;    [ 21.12.01 10:35 AM ] [ 10/21/99  7:29 PM ] [ 10/04/2000  5:22 PM ]
 Q

%L5K
%L5K ; [ 23.11.06 18:22 ] [ 29.05.03 11:38 ] [ 05/03/98  7:25 PM ]
          W #
          N Y,YES D ^%L1C
          W !?20,"UCI: ",$$^%L1ZU(0),!
          W !," KILL GLOBALS "_%CLI_" ^SCR,^SHP,^TABLs,^rep "_%CCL_" ? (Y/N) <N> " R Y S YES=(Y="Y"!(Y="y")!(Y="F")!(Y="k"))
          W " - ",$S(YES:"YES",1:"NO") Q:'YES
          K ^SCR,^SHP,^TABLs,^rep D ^%L1GI
          Q

%L5MENU
%L5MENU ; [ 11.12.06 23:28 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,MAC,@MAC) D ^%L1C
 S %N="",%I=0 F  S %N=$O(@MAC@(%N)) Q:%N=""  S %I=%I+1
 X %chista
 S %LN=14,%COLM=%I
 S %CVB=%CV("CB")
 S %CVFR=%LIGHT1_%CV("BF")
 S %CVF=%LIGHT1_%CV("YF")
 ;
 I %COLM<5 S %Y1=8
 I %COLM>4,%COLM<9 S %Y1=5
 I %COLM>8,%COLM<13 S %Y1=3
 I %COLM>12,%COLM<17 S %Y1=3
 I %COLM>16 S %Y1=2
 ;
 I %COLM=1 D COLM1(1)
 ;
 I %COLM=2 D COLM2(1)
 ;
 I %COLM=3 D COLM3(1)
 ;
 I %COLM=4 D COLM4(1)
 ;
 I %COLM=5 D COLM4(1) S %Y1=%Y1+5 D COLM1(5)
 ;
 I %COLM=6 D COLM4(1) S %Y1=%Y1+5 D COLM2(5)
 ;
 I %COLM=7 D COLM4(1) S %Y1=%Y1+5 D COLM3(5)
 ;
 I %COLM=8 D COLM4(1) S %Y1=%Y1+5 D COLM4(5)
 ;
 I %COLM=9 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM1(9)
 ;
 I %COLM=10 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM2(9)
 ;
 I %COLM=11 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM3(9)
 ;
 I %COLM=12 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9)
 ;
 I %COLM=13 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9) S %Y1=%Y1+5 D COLM1(13)
 ;
 I %COLM=14 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9) S %Y1=%Y1+5 D COLM2(13)
 ;
 I %COLM=15 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9) S %Y1=%Y1+5 D COLM3(13)
 ;
 I %COLM=16 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9) S %Y1=%Y1+5 D COLM4(13)
 ;
 I %COLM=17 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9) S %Y1=%Y1+5 D COLM4(13) S %Y1=%Y1+5 D COLM1(17)
 ;
 I %COLM=18 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9) S %Y1=%Y1+5 D COLM4(13) S %Y1=%Y1+5 D COLM2(17)
 ;
 I %COLM=19 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9) S %Y1=%Y1+5 D COLM4(13) S %Y1=%Y1+5 D COLM3(17)
 ;
 I %COLM=20 D COLM20
 ;
 Q
COLM1(IND) ;
 S %L1RBUA("DOUBLE")=""
 S %L1RBCL=%CVB
 S %X1=80-%LN\2
 S %X2=%X1+%LN+1,%Y2=%Y1+3
 D VRB(@MAC@(IND))
 Q
COLM2(IND) ;
 S %L1RBUA("DOUBLE")=""
 S %L1RBCL=%CVB
 S %X1=80-(3*%LN)\2
 S %X2=%X1+%LN+1,%Y2=%Y1+3
 D VRB(@MAC@(IND))
 S %X1=%X2+%LN
 S %X2=%X1+%LN+1
 D VRB(@MAC@(IND+1))
 Q
COLM3(IND) ;
 S %L1RBUA("DOUBLE")=""
 S %L1RBCL=%CVB
 S %X1=80-(4*%LN)\2
 S %X2=%X1+%LN+1,%Y2=%Y1+3
 D VRB(@MAC@(IND))
 S %X1=%X2+(%LN\2)
 S %X2=%X1+%LN+1
 D VRB(@MAC@(IND+1))
 S %X1=%X2+(%LN\2)
 S %X2=%X1+%LN+1
 D VRB(@MAC@(IND+2))
 Q
 ;
COLM4(IND) ;
 S %L1RBUA("DOUBLE")=""
 S %L1RBCL=%CVB
 S %X1=80-(5*%LN)\2-1
 S %X2=%X1+%LN+1,%Y2=%Y1+3
 D VRB(@MAC@(IND))
 S %X1=%X2+(%LN\3)
 S %X2=%X1+%LN+1
 D VRB(@MAC@(IND+1))
 S %X1=%X2+(%LN\3)
 S %X2=%X1+%LN+1
 D VRB(@MAC@(IND+2))
 S %X1=%X2+(%LN\3)
 S %X2=%X1+%LN+1
 D VRB(@MAC@(IND+3))
 Q
COLM20 D COLM4(1) S %Y1=%Y1+5 D COLM4(5) S %Y1=%Y1+5 D COLM4(9)
 S %Y1=%Y1+5 D COLM4(13) S %Y1=%Y1+5 D COLM4(17)
 Q
TXT(%FRAZA,X1,Y1,X2,Y2,%DLG) ;
 D DELG^%L1SCPC
 W %CVB,%CVF
 S %XX=X1,%YY=Y1 X %POSIC
 W $J($$CENTR^%L1FRM($$SPA^%L1FRM(%CHAST(1,1)),%LN),%LN)
 I $D(%CHAST(1,2)) D
 .S %XX=X1,%YY=Y1+1 X %POSIC
 .W $J($$CENTR^%L1FRM($$SPA^%L1FRM(%CHAST(1,2)),%LN),%LN)
 Q
VRB(TXT) ;
 W %CVFR
 D TV^%L1RBUA(%Y1,%X1,%Y2,%X2)
 D TXT(TXT,%X1,%Y1,%X2,%Y2,%LN)
 Q

%RD
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;                                                              ;
 ;      Copyright 1987, 2003 Sanchez Computer Associates, Inc.  ;
 ;                                                              ;
 ;      This source code contains the intellectual property     ;
 ;      of its copyright holder(s), and is made available       ;
 ;      under a license.  If you do not know the terms of       ;
 ;      the license, please stop and do not read further.       ;
 ;                                                              ;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
%RD     ;GT.M %RD utility - routines directory
        ;invoke ^%RD for an interactive routine directory
        ;invoke OBJ^%RSEL for an interactive directory based on object modules
        ;
SRC
        n %ZE,%ZR
        s %ZE=".m"
        d RD^%RSEL
        q
OBJ
        n %ZE,%ZR
        s %ZE=$s($zver["VMS":".obj",1:".o")
        d RD^%RSEL
        q
LIB
        n %ZE,%ZR
        s %ZE=".m",%ZR="%*"
        d RD^%RSEL
        q

%RSEL
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;                                                              ;
 ; Copyright (c) 1987, 2015 Fidelity National Information       ;
 ; Services, Inc. and/or its subsidiaries. All rights reserved. ;
 ;                                                              ;
 ;      This source code contains the intellectual property     ;
 ;      of its copyright holder(s), and is made available       ;
 ;      under a license.  If you do not know the terms of       ;
 ;      the license, please stop and do not read further.       ;
 ;                                                              ;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
%RSEL   ;service@greystone.com gtm,%rsel;19920523;GT.M %RSEL utility - routine select into a local array
        ;invoke ^%RSEL to create %ZR - a local array of existing routines, interactively
        ;invoke OBJ^%RSEL to create %ZR based on object modules
        ;invoke CALL^%RSEL to maintain the array %ZR with the input %ZR, %ZE specifies extensions .m or .o[bj]
        ;
SRC
        n $et s $et=$s($d(%zdebug):"b",1:"zg "_$zl_":err^%RSEL")
        n add,beg,cnt,ctrap,d,delim,end,exc,from,i,k,last,mtch,pct,r,rd,rdf,out,scwc,stack,stop,strt,to,%ZE
        s %ZE=".m"
        k %ZR
        i $d(%ZRSET) k ^%RSET($j)
        d init,main
        q
OBJ
        n $et s $et=$s($d(%zdebug):"b",1:"zg "_$zl_":err^%RSEL")
        n add,beg,cnt,ctrap,d,delim,end,exc,from,i,k,last,mtch,pct,r,rd,rdf,out,scwc,stack,stop,strt,to,%ZE
        s %ZE=$s($zver["VMS":".obj",1:".o")
        k %ZR
        i $d(%ZRSET) k ^%RSET($j)
        d init,main
        q
RD
        n $et s $et=$s($d(%zdebug):"b",1:"zg "_$zl_":err^%RSEL")
        n add,beg,cnt,ctrap,d,delim,end,exc,from,i,k,last,mtch,pct,r,rd,rdf,out,scwc,stack,stop,strt,to,%ZRSET
        w !,"Routine directory"
        d init
        s (out,rd,rdf)=1
        i $l($g(%ZR)) w ! d work w !,"Total of ",cnt," routine",$s(cnt=1:".",1:"s."),! q
        d main
        i rdf s %ZR="*" d work W !,"Total of ",cnt," routine",$s(cnt=1:".",1:"s."),!
        q
CALL
        n add,beg,cnt,ctrap,d,delim,end,exc,from,i,k,last,mtch,pct,r,rd,rdf,out,scwc,stack,stop,strt,to n:'$d(%ZE) %ZE
        i $g(%ZE)'[".o" s %ZE=".m"
        d init
        i $d(%ZRSET) d  i $l($g(^%RSET($j))) s out=0 d main s ^%RSET($j)=cnt q
        . i $d(^%RSET($j))>1 s r="" f  s r=$o(^%RSET($j,r)) q:'$l(r)  s cnt=cnt+1
        e  d  i $l($g(%ZR)) s out=0 d main s:'$d(%ZRSET) %ZR=cnt s:$d(%ZRSET) ^%RSET($j)=cnt q
        . i $d(%ZR)>1 s r="" f  s r=$o(%ZR(r)) q:'$l(r)  s cnt=cnt+1
        d main
        q
SILENT(patt,label)
        n $et s $et=$s($d(%zdebug):"b",1:"zg "_$zl_":err^%RSEL")
        i ""=$g(label) s label="SRC"
        d @label
        q
init
        i $zver["VMS" d
        . s delim=",",scwc="%",from="abcdefghijklmnopqrstuvwxyz !""#$&'()+'-./;<=>?@[]\^_`{}|~",to="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
        e  d
        . s delim=" ",scwc="?",from=" !""#$&'()+'-./;<=>@[]\^_`{}|~",to=""
        s from=from_$c(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,127)
        zsh "d":d
        s d=""
        f  s d=$o(d("D",d)) q:d=""  i $p=$p(d("D",d)," ") s d=d("D",d),ctrap=$p($p(d,"CTRA=",2)," "),exc=$p(d,"EXCE=",2) q
        e  s (ctrap,exc)="" ; should never happen
        s k=$l(exc,"""")
        s k=$l(exc) i $e(exc,1,1)="""",$e(exc,k,k)="""" s exc=$e(exc,2,k-1)
        if ctrap'="" s exc="s ctrap="_ctrap x exc
        k d
        s (cnt,rd)=0,out=1,(last,r(0))=$c(255)
        i '$l($zro) s d=1,d(1)="" q
        s d=0
        f k=1:1:$l($zro,delim) d  i $l(r) s d=d+1,d(d)=$p(r,"*")
        . s r=$tr($p($zro,delim,k),"*")
        . i delim=" " d  s:$l(r) r=$zparse(r_"/","","*") q                        ; UNIX conventions
        . . i r'["(" q                                                            ; no source info - it does both
        . . i %ZE[".o" d  q                                                       ; only want objects
        . . . s r=$p(r,"(")                                                       ; grab object directory
        . . . f k=k:1:$l($zro,delim) q:$p($zro,delim,k)[")"                       ; and step over source info
        . . s r=$p(r,"(",2)                                                       ; grab 1st souce directory
        . . i r[")" s r=$p(r,")") q                                               ; it's the only one - we're done
        . . d  f k=k+1:1 s r=$p($zro,delim,k) i $l(r) d  i r[")" s r=$p(r,")") q  ; record all but the last
        . . . i r'[")" s r=$p($zparse(r_"/","","*"),"*") i $l(r) s d=d+1,d(d)=r
        . e  d  s:$l(r) r=$zparse(r,"","*") q                                     ; VMS conventions
        . . i r[".olb" s r="" q                                                   ; it's an object library and we don't poke in them
        . . i r'["/" q                                                            ; no souces info - it does both
        . . i %ZE[".o" d  q                                                       ; only want objects
        . . . s r=$p(r,"/")                                                       ; grab the object directory
        . . . f k=k:1:$l($zro,delim) q:$p($zro,delim,k)[")"                       ; and step over source info
        . . s r=$p(r,"=",2)                                                       ; grab 1st source directory
        . . i $e(r)'="(" q                                                        ; /SRC or /NOSRC - we're done
        . . s r=$p(r,"(",2)                                                       ; strip the opening (
        . . i r[")" s r=$p(r,")") q                                               ; it's in parens but only one
        . . d  f k=k+1:1 s r=$p($zro,delim,k) i $l(r) d  i r[")" s r=$p(r,")") q  ; record all but the last
        . . . i r'[")" s r=$p($zparse(r,"","*"),"*") i $l(r) s d=d+1,d(d)=r
        q
main
        u:'$d(%zdebug) $p:(ctrap=$c(3):exception="zg "_$zl_":main^%RSEL")
        s mtch="__" d start(0)
        f  d  q:'$l(%ZR)
        . zsh "s":stack                                                                                   ; get the current stack
        . i $p(stack("S",1),"^",2)=$p($g(stack("S",4)),"^",2) s %ZR=patt,patt="",out=0 k stack q:'$l(%ZR) ; if silent, don't prompt
        . e  r !,"Routine: ",%ZR,! q:'$l(%ZR)
        . i $e(%ZR)="?" d help q
        . d work
        . i '$d(stack) q                                                                    ; if silent, don't output count
        . e  w !,$s(rd:"T",1:"Current t"),"otal of ",cnt," routine",$s(cnt=1:".",1:"s."),!
        i $D(%ZRSET) s ^%RSET($j)=cnt k %ZR
        e  s %ZR=cnt
        u $p:(ctrap=ctrap:exception=exc)
        q
work
        i rd s add=1,cnt=0,r=%ZR k %ZR s %ZR=r ; This behavior is a bit odd
        e  i "'-"[$e(%ZR) s add=0,r=$e(%ZR,2,999)
        e  s add=1,r=%ZR
        s r=$tr(r,from,to)      ; strip out invalid characters, and, in VMS, xlate lower to upper
        ; In addition, filter out "all" non-ascii characters (irrespective of M or UTF-8)
        n r1,c s r1="" f k=1:1:$l(r) s c=$e(r,k) if $a(c)<128 s r1=r1_c
        s r=r1
        s end=$p(r,":",2),beg=$p(r,":"),rdf=0
        i end=beg!'$l(end) q:'$l(beg)  s stop=last                                          ; if all stripped out, done
        s:'$l(beg) beg="*" s pct=$e(beg)                                                    ; CAUTION: ELSE on next line
        e  s strt=$$mask(beg),stop=$$mask(end) i $l($p(stop,"$")) q:stop']strt              ; if end before begining, done
        i "*?"[pct s mtch="%*" d start(1) f  s r=$$search(1) q:r]stop!'$l(r)  d save        ; if alls, get _files first
        s pct=pct="%",mtch=beg
        d start(pct)
        f  s r=$$search(pct) q:r]stop!'$l(r)  d save                                        ; do begining
        i stop=last q                                                                       ; no range - we're done
        s stop=$p(stop,"$")
        i $l(stop),stop]$p(strt,"$") d                                                      ; if no overlap, do middle
        . s strt=$tr(strt,"$",last)
        . i pct s mtch="%*" d start(1) f  s r=$$search(1) q:stop']r!'$l(r)  i r]strt d save
        . i $e(end)'="%" s mtch="*" d start(0) f  s r=$$search(0) q:stop']r!'$l(r)  i r]strt d save
        e  s strt=$p(strt,"$") i '$l(strt) s strt="$"
        s pct=$e(end)="%",mtch=end
        d start(pct)
        f  s r=$$search(pct) q:'$l(r)  i strt']r d save                                    ; and finish
        q
mask(val)
        q $tr($e(val),"*?","$$")_$tr($e(val,2,9999),"*?%","$$$")
        ;
start(pct)
        s mtch=$s('pct:mtch,1:"_"_$e(mtch,2,9999))_%ZE
        f k=1:1:d s r(k)=$$next(k,pct)
        q
search(pct)
        s r=last
        f k=d:-1:1 i $l(r(k)) s:r(k)=r(k-1) r(k)=$$next(k,pct) i $l(r(k)),r(k)']r s i=k,r=r(k)
        i r'=last s r(i)=$$next(i,pct)
        e  s r=""
        q r
        ;
next(k,pct,t)
        f  s t=$zsearch(d(k)_mtch,k) q:t=""  s t=$zparse(t,"NAME") q:t?1A.AN!pct  i scwc="%",$e(t)]"Z" s t="" q
        q $s('pct:t,$e(t)="_":"%"_$e(t,2,9999),1:"")
        ;
save
        i $d(%ZRSET) d
        . i add,'$d(^%RSET($j,r)) s ^%RSET($j,r)=d(i),cnt=cnt+1
        . e  i 'add,$d(^%RSET($j,r)) k ^%RSET($j,r) s cnt=cnt-1
        . i  i out w:$x>70 ! w r,?$x\10+1*10
        e  d
        . i add,'$d(%ZR(r)) s %ZR(r)=d(i),cnt=cnt+1
        . e  i 'add,$d(%ZR(r)) k %ZR(r) s cnt=cnt-1
        . i  i out w:$x>70 ! w r,?$x\10+1*10
        q
help
        i "Dd"[$e(%ZR,2),$l(%ZR)=2 d  q
        . w ! s r=""
        . f  s r=$o(%ZR(r)) q:'$l(r)  w:$x>70 ! w r,?($x\10+1*10)
        w !,"<RET>",?15,"to leave",!,"* ",?15,"for all",!,"rout ",?15,"for 1 routine",!,"rout1:rout2 ",?15,"for a range"
        w !,"* ",?15,"as wildcard permitting any number of characters"
        w !,scwc,?15,"as a single character wildcard in positions other than the first"
        i rd q
        w !,"' ",?15,"as the 1st character to remove routines from the list"
        w !,"?D ",?15,"for the currently selected routines"
        q
err
        u $p:(ctrap=ctrap:exception=exc) w !,$p($ZS,",",2,999),!
        s $ec=""
        q

%S1ASK
%S1ASK ; ;%Q("Z") - ASK,%Q("U") - DEFAULT.,%Q("V")-POSSIBLE POINT ;- YES=1 - YES,0 - NO [ 22.02.04 11:57 ] [ 07/04/94  4:03 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%Q,YES) D ^%L1C
BG S YES="E" U 0 I $D(%Q("U"))#2,%Q("U")'="Y",%Q("U")'="N" W *7,!,"*** %S1ASK .ERROR IN PARAMETR'S VALUES: %Q(""U"")=",%Q("U") G END
 I '($D(%Q("Z"))#2) W !,"*** %S1ASK . ISN'T (%Q(""Z"")) !" G END
 ;
 S:'$D(%Q("Y")) %Q("Y")=$Y
 S:'$D(%Q("X")) %Q("X")=0
 S %XX=%Q("X"),%YY=%Q("Y") X %POSIC W %chists W %Q("Z")_" (Y/N) ? " S %S="" S:$D(%Q("U")) %S=%Q("U") S %LS=1 S $Y=%YY D ^%ZMSL S YES=%S G BDK
 I '$D(%Q("U")) W !!,%Q("Z")_" (Y/N) ? " W:$D(%Q("U")) "<"_%Q("U")_"> " S %LS=1,%S="" D ^%ZMSL S YES=%S
 ;
BDK I $D(%Q("V")) I YES="."&($D(%Q("U")))!(YES=""&('$D(%Q("U")))) S YES="." G END
 I $D(%Q("B")) I YES="."!(YES="^") G END
 I YES="D"!(YES="Y")!(YES="y")!(YES="h") S YES=1 G END
 I YES="N"!(YES="n")!(YES="n") S YES=0 G END
 I YES="" G:'($D(%Q("U"))#2) ER S YES=$S(%Q("U")="Y":1,1:0) G END
 I YES="?" G:$D(%Q("H"))>10 INSTR W !?30,"A HELP TEXT IS NOT EXIST !" G BG
 G ER1
END X %XCL Q
 ;-
ER ;;I $D(%Q("X")),$D(%Q("Y")) W "  *** ERROR IN %Q PARAMETERS" H 1 G END
ER1 W ?30," *** ERROR ! " H 1 G BG
 ;-
INSTR S PROGR=%Q("H") I PROGR["^W" D @PROGR G BG
 K PROGR W ! F %J=1:1 Q:'$D(%Q("H",%J))  W !?3,%Q("H",%J)
 G BG
N S %Q("X")=5,%Q("Y")=24 G BG

%S1GC
%S1GC ;MAC1 --> MAC2; [ 15.12.21 19:38 ] [ 04/09/99 11:56 PM ] [ 11/07/96  9:47 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC) D ^%L1C
FROM K MAC2 S %TO="",%S=$G(MAC1,"^"),%BE="E" K CIST,%LS S %FLINS=1 W !!,"%FROM :" D ^%ZMSL Q:(%TO="END")!("^"[%S&(%TO=""))
 S MAC1=%S I $E(MAC1)'="^" S MAC1="^"_MAC1
 S MAC1=$$IG(MAC1) I $E(MAC1,$L(MAC1))'="!" G FROM
 S MAC1=$E(MAC1,1,$L(MAC1)-1)
 S MAC2=MAC1
TO S %FL="",%FLINS=1,%TO="",%BE="E",%S=$G(MAC2) W !,"%TO  :" D ^%ZMSL G:%S=""&(%TO="")!(%TO="END") FROM S MAC2=%S I $E(MAC2)'="^" S MAC2="^"_MAC2
 I MAC1=MAC2 U 0 S %SAY=" MAC1=MAC2 " X %XMSGV H 2 G FROM
 ;S MAC2=$$IG(MAC2) I $E(MAC2,$L(MAC2))'="!" W !!,"FROM :"_MAC1 G TO
 ;S MAC2=$E(MAC2,1,$L(MAC2)-1)
 I $D(@MAC2) K %Q,%ECHO W ! S %X=$X,%Y=$Y S %Q("Z")="OVERWRITE" D ^%S1ASK G:'YES TO W "  KILL OLD "_MAC2_" ? " S %S="N",$Y=%Y,$X=50 D ^%ZMSL I %S="Y"!(%S="y")!(%S="h") K @MAC2
 D ^%S1GC1
 G FROM
IG(MAC) ;
 I MAC="??"!(MAC="^??")!(MAC="^^D")!(%TO="F7") D ^%GD S MAC="" Q MAC
 I MAC=""!(MAC="^") Q ""
 I $E(MAC,$L(MAC))=":" S MAC=$E(MAC,1,$L(MAC)-1) D ^%L4NU Q:FLAG'="" ""  Q MAC
 I '$D(@MAC) W !,*7,"*** ISN'T GLOBAL !!! " Q ""
 Q MAC_"!"
 

%S1GC1
%S1GC1 ;MAC1 --> MAC2; [ 30.08.14 09:09 ] [ 04/10/99 12:45 AM ] [ 09/18/94  9:49 AM ]
 M @MAC2=@MAC1
 I $D(%S1GC("R")) D
 .I $D(@MAC2)#2 S @MAC2=$P(@MAC2,%S1GC("R"))
 .N %MAC20 S %MAC20=$R I $E(%MAC20,$L(%MAC20))=")" S %MAC20=$E(%MAC20,1,$L(%MAC20)-1)
 .N %N S %N=MAC2 F  S %N=$Q(@%N) Q:%N=""  Q:$E(%N,1,$L(%MAC20))'=%MAC20  D
 ..I $D(@%N)#2 S @%N=$P(@%N,%S1GC("R"))
 K %S1GC Q

%S1GED
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;        ;
 ; Copyright 1989,2001 Sanchez Computer Associates, Inc. ;
 ;        ;
 ; This source code contains the intellectual property ;
 ; of its copyright holder(s), and is made available ;
 ; under a license.  If you do not know the terms of ;
 ; the license, please stop and do not read further. ;
 ;        ;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
%s1ged ;%ged - global editor
bg n (%zdebug,%s1gedv) D ^%L1C X %chista
 s %("lo")="abcdefghijklmnopqrstuvwxyz"
 s %("up")="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
 s %("$zso")=$zso
 s %("$io")=$io
 s $zso=$select($zv'["VMS":".",1:"[]")_"_"_$j_".ged"
 s %("zlbeg")=$zl
beg ;
 n $et  s $et=$s($d(%zdebug):"b",1:"s $ec="""" zg "_$zl_":beg")
 u 0:(ctrap=$c(3))
 f  w !,$s($d(%s1gedv):"View ^",1:"Edit ^") r %("global") q:%("global")=""  d
 .  i $e(%("global"))'="^" s %("global")="^"_%("global")
 .  if (($e(%("global"),2)="%")&($l(%("global"))=2)) d   q
 ..   w !,"%ged will not "_$s($d(%s1gedv):"view :",1:"edit: "),%("global")
 ..   q
 .  if ($e(%("global"),2)="?") d help q
 .  d convert
 .  d main
 .  k @%("local"),@(%("a")_$e(%("global"),3,%("glbl lngth")))
 .  zwi %("add"),%("change"),%("kill"),%("s")
 .  quit
 s:$D(%("$zso"))#2 $zso=%("$zso") u:$g(%("$io")) %("$io"):(ctrap="":exception="")
 q
 ;
main ;
 s %("glbl lngth")=$f(%("global"),"(")-2
 if %("glbl lngth")=-2 s %("glbl lngth")=$l(%("global"))
 s %("local")=$e(%("global"),2,%("glbl lngth"))
 d zwr
 s %=%("global")
 o $zso u $zso
 f  r % q:$zeof  s @(%("a")_$e(%,3,9999)) s %("s")=$g(%("s"))+1
 c $zso
 zed $zso
 q:$d(%s1gedv)
 K %Q S %Q("Z")="SAVE",%Q("X")=5,%Q("Y")=24 D ^%S1ASK I 'YES q
 o $zso:(read:rewind)
 d stor
 c $zso:delete
 o $zso c $zso:delete
 w !,"node          : ",%("global")
 w !,"selected      : ",+$g(%("s"))
 w !,"changed       : ",+$g(%("change"))
 w !,"added         : ",+$g(%("add"))
 w !,"killed        : ",+$g(%("kill"))
 q
 ;
zwr ;
 n $et s $et=$s($d(%zdebug):"b",1:"s $ec="""" goto continue")
 o $zso:(newversion:exc="":noreadonly)
 u $zso zwr @%("global")
continue
 c $zso
 q
badzwr ;
 c $zso:delete
 u 0 w !,"invalid global description: ",%("global")
 q
stor ;
 s %("storlvl")=$zl
 u $zso
 f  r % quit:$zeof  d istor
 do work
 q
istor ;
 n $et
 s $et="do istorerr"
 i '$l($tr(%," ")) q
 i $e(%)'="^" s %="^"_%
 i $e(%,1,%("glbl lngth"))=$e(%("global"),1,%("glbl lngth")) do
 .  s %=$e(%,2,99999)
 .  s @%
 .  quit
 else    do
 .  set %("cur io")=$io
 .  u 0 w !,"%ged will not edit: ",%
 .  use %("cur io")
 .  quit
 q
 ;
istorerr;
 close $zso
 use 0
 w !,"invalid syntax: ",%,!,"return to continue: "  r %:30,!
 zed $zso
 open $zso:(read:rewind)
 s $ec=""
 zg %("storlvl"):stor
work ;
 s %=%("local")
 if $d(@%)'[0          d check   ; Set top node
 f  s %=$q(@%) q:%=""  d check
 d kill
  q
check ;
 if ($d(@("^"_%))[0)&($d(@(%("a")_$e(%,2,9999)))[0) d add  q
 if ($d(@("^"_%))[0)&($d(@(%("a")_$e(%,2,9999)))'[0) d addcheck  q
 if ($d(@("^"_%))'[0)&($d(@(%("a")_$e(%,2,9999)))[0) d conflict q
 if @("^"_%)=@% d withdraw q
 if @(%("a")_$e(%,2,9999))=@("^"_%) d change q
 d checkerr
 q
 ;
add ;
 s @("^"_%)=@%
 s %("add")=$g(%("add"))+1
 d withdraw
 q
 ;
change ;
 s @("^"_%)=@%
 s %("change")=$g(%("change"))+1
 d withdraw
 q
 ;
withdraw;
 if $d(@(%("a")_$e(%,2,9999)))'[0 zwithdraw @(%("a")_$e(%,2,9999))
 q
 ;
conflict;
 u 0
 w !,"WARNING: The original value for node ^",%," was not stored before"
 w !,"the edit session and may have changed while in the editor.",!
 s %("%local")=%("a")_$e(%,2,9999)
 w !,"old value     : ",$s($d(@%("%local"))'[0:@%("%local"),1:"")
 w !,"current value : ",@("^"_%)
 w !,"edit value    : ",@(%),!!
 w !,"Do you still wish to use the edit value? [n] "
 r %("ans"):30 s %("ans")=$tr(%("ans"),%("lo"),%("up"))
 if "\NO"[("\"_%("ans")) d withdraw q
 if "\YES"[("\"_%("ans")) d change q
 d withdraw
 q
addcheck;
 u 0
 w !,"WARNING: Node ^",%," was deleted while in the editor",!
 s %("%local")=%("a")_$e(%,2,9999)
 w !,"old value     : ",$s($d(@%("%local"))'[0:@%("%local"),1:"")
 w !,"current value : "
 w !,"edit value    : ",@(%),!!
 w !,"Do you still wish to use the edit value? [n] "
 r %("ans"):30 s %("ans")=$tr(%("ans"),%("lo"),%("up"))
 if "\NO"[("\"_%("ans")) d withdraw q
 if "\YES"[("\"_%("ans")) d add q
 d withdraw
 q
checkerr;
 u 0
 w !,"WARNING: Node ^",%," was modified while in editor",!
 s %("%local")=%("a")_$e(%,2,9999)
 w !,"old value     : ",$s($d(@%("%local"))'[0:@%("%local"),1:"")
 w !,"current value : ",@("^"_%)
 w !,"edit value    : ",@(%),!!
 w !,"Do you still wish to use the edit value? [n] "
 r %("ans"):30 s %("ans")=$tr(%("ans"),%("lo"),%("up"))
 if "\NO"[("\"_%("ans")) d withdraw q
 if "\YES"[("\"_%("ans")) d add q
 d withdraw
 q
 ;
kill ;
 n $et
 s $et="s $ec="""" q"
 s %=(%("a")_$e(%("local"),2,9999))
 if $d(@%)'[0 d killcheck
 f  s %=$q(@%) q:%=""  d killcheck
 q
 ;
killcheck;
 if $d(@("^"_%("b")_$e(%,2,9999)))[0 s %("kill")=$g(%("kill"))+1 q
 if @("^"_%("b")_$e(%,2,9999))=@% zwi @("^"_%("b")_$e(%,2,9999)) s %("kill")=$g(%("kill"))+1 q
 u 0
 w !,"killed node has changed: "
 w !,"node          :  ^",%("b")_$e(%,2,9999)
 w !,"old value     :   ",@(%("a")_$e(%,2,9999))
 w !,"current value :   ",@("^"_%("b")_$e(%,2,9999))
 q
 ;
nofile c $zso:delete
 u 0 w !,"No changes made",!
 q
 ;
convert;
 s %("b")=$e(%("global"),2)
 s %("a")=$a(%("global"),2)
 s %("a")=%("a")+1
 s %("a")=$s(%("a")=91:65,%("a")=123:97,%("a")=38:65,1:%("a"))
 s %("a")=$c(%("a"))
 q
 ;
help i "dD"[$e(%("global"),3),$l(%("global"))=3 d ^%GD q
 w !,"VALID INPUT",!!
 w !,?3,"<RET>",?16,"to leave the %GED utility ",!
 w !,?4,"?D",?16,"to display existing globals in your directory ",!
 w !,"[global name]",?16,"the MUMPS name for the global e.g. ABC"
 w !?16,"the global name may be followed by: "
 w !?16,"subscript(s) in parentheses"
 w !?16,"a subscript is a MUMPS expression e.g. ""joe"",10,$e(a,1),"
 w !?16,"a ""*"" as a subscript causes all descendents to be included,"
 w !?16,"or by a range of subscripts in parentheses"
 w !?16,"expressed as [expr]:[expr] e.g 1:10 ""a"":""d"""
 w !?16,"a MUMPS pattern to match selected subscripts: ^TEST(?1.3N)"
 q

%S1GL
%S1GL N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%S1GL) D ^%L1C ; [ 13.01.06 11:22 ] [
 S USTR=0 K OLDMAC N %HBRY,%S2V
ZAPR1 N $ZT S $ZT="S zr=$R X ^ZT ZG "_$ZL_":ER^%S1GL" K %INV S %TO=""
 I $G(%S1GL("MAC"))="" K %S1GL("MAC")
 I $D(%S1GL("MAC")) S MAC=%S1GL("MAC") K %S1GL G M
 S %S="^",%BE="E"
M0 K %HBRY W %ENG U $P W #!," NAME OF GLOBAL (EXIT - <ESC> : " D ^%ZMSL
 K %INV S MAC=%S
M I MAC="??"!(MAC="^??")!(MAC="^^D")!(%TO="F7") D ^%GD G ZAPR1
 G:MAC=""!(MAC="^")!(%TO="END") END I MAC="?"!(MAC="^?") D INSTR K MAC G M0
 I $E(MAC)'="^" S MAC="^"_MAC
 I $$^%L1DISP(USTR) U $P:(ECHO:WRAP:NOESC) W !! K %Q,%HBRY S %Q("Z")="HEBREW",%Q("U")="Y" S %Q("X")=1,%Q("Y")=$Y D ^%S1ASK I YES W %HBR S %S2V("HBRY")=""
 I $$^%L1DISP(USTR) K:'YES %HBRY
 I $E(MAC,$L(MAC))=":" S MAC=$E(MAC,1,$L(MAC)-1) D ^%L4NU G:FLAG'="" ZAPR1
 S OLDMAC=MAC
 I '$D(@MAC) W !,*7,"*** ISN'T GLOBAL !!! " G ZAPR1
 S %S3G("MAC")=MAC,%S3G("VIEW")="" D B^%S3GLKR G ZAPR1
 Q
END K USTR Q
INSTR W !,"***********************************************************"
 W !,"  ENTER REFERENCE"
 W !,"  OR REFERENCE & ':' IN ORDER TO SEARCH A NODE"
 W !,"  OR ?? TO TYPE GLOBAL DIRECTORY "
 W !,"***********************************************************",!
 Q
ER I $ZS["CTRAP" U 0 W !,*7,"INTRERUPT..." G Z
 W !,*7,"ERROR:",$ZS G Z
 W !,"$R=",$R
 Q
Z U $P W !! S %S=0,CIST="03",%LS=1 W "DEVICE ? (0,3)> " D ^%ZMSL S USTR=%S G END:USTR=""
 I USTR'=0&(USTR'=3) W *7,!?20,"*** ERROR !" G Z
 G ZAPR1

%S1GLL
%S1GLL I '$D(%LEVO) D ^%L1C ; [ 13.01.06 11:12 ] [
 S USTR=0
ZAPR1 S $ZS="ER^%S1GLL" O USTR
 W !!,"NAME OF ARRAY LOCAL " S %S="",%BE="E" D ^%ZMSL
 S MAC=%S G:MAC=""!(MAC="^") END I MAC="?" D INSTR K MAC G KOD
 I $E(MAC,$L(MAC))=":" S MAC=$E(MAC,1,$L(MAC)-1) D ^%L4NL G:FLAG'="" ZAPR1
 I '$D(@MAC) W !,*7,"*** HASN'T DATA !!! " G ZAPR1
 I '$$^%L1DISP(USTR) D ACPU G ZAPR
 U 0 W !!!?20,MAC W ! D ^%S1GLPCL W ! G ZAPR1
 ;
ACPU ;
 O 3::3 E  U 0 W *7,!,"  *** €–�“ ‡€�Ÿ’Ž !" Q
 O 3 U 3 W #?20,MAC,!! D ^%S1GLPC W !! C 1 Q
 Q
END K USTR Q
ER I $ZS["CTRAP" U 0 W !,*7,"INTRERUPT..." G ZAPR1
 W !,*7,"ERROR:",$ZS S KO=+$ZS S:$L(KO)<2 KO="0"_KO
 I $D(^E(KO))#2 U 0 W !!,^(KO)
 G ZAPR1
 Q

%S1GLPC
%S1GLPC ;   [ 29.07.01 11:39 AM ] [ 06.07.01 11:10 AM ] [ 04/03/99  2:37 AM ]
 S $Y=0 K ^TEMPg($P)
 L ^s1glpc:1 E  U $P W !," ... BUSY ! " Q
 k ^s1glpc
 M ^s1glpc=@MAC
 O "s1glpc.m":(newversion) U "s1glpc.m" ZWR ^s1glpc
 C "s1glpc.m"
 k ^s1glpc L
 S %RNAME="s1glpc" D ^%L1RV
 Q

%S1GLPCL
%S1GLPCL ; [ 08/23/91  9:36 AM ]
 ; �…—€’œ
 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1 W !,MAC,"=",@MAC
 S %MAC2=$S($F(MAC,"("):$E(MAC,1,$L(MAC)-1)_",",1:MAC_"(")
 S %MAC1=%MAC2_""""")" S %IND1=$O(@%MAC1) G:%IND1="" END
VN1 S %IND1=$O(@%MAC1)
 I %IND1="" G VV
 S %MAC1=%MAC2_""""_%IND1_""")"
VN ;
 D PC
 S %MAC2=$E(%MAC1,1,$L(%MAC1)-1)_","
 S %MAC1=%MAC2_""""")"
 G VN1
VV ;
VV1 ;
 I $L(%MAC1,",")<3 S %MAC2=$P(MAC,"(")_"("
 E  S %MAC2=$P(%MAC1,",",1,$L(%MAC1,",")-2)_","
 S %MAC1=$P(%MAC1,",",1,$L(%MAC1,",")-1)_")"
 I $L(%MAC1,",")<$L(MAC,",")!($L(%MAC1,",")=$L(MAC,",")&(MAC["("))!(%MAC1=")") G END
 G VN1
PC ;
 I %IND1'="",($D(@%MAC1)#10)'=0 W !,%MAC1,"=",@%MAC1
 Q
END ;K %MAC1,%MAC2,MAC,%IND1 Q
 Q

%S1GLSV
%S1GLSV ;     [ 22.12.21 07:57 ] [ 03.02.21 14:19 ] [ 20.01.21 20:57 ] 
 N %PR,%MAC1,%MAC2,%ORD
 S %ORD=1 I $G(%S3G)<0 S %ORD=-1
 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1 W !,MAC,"=",@MAC
 S %MAC2=$E($R,1,$L($R)-1)_$S($E(MAC,$L(MAC))=")":",",1:"")
 S ^S000($P,1)=MAC_"=<<<<<UNDEF>>>>>"
 I %PR S ^S000($P,1)=MAC_"="_@MAC
 S %MAC1=MAC I $E(%MAC1,$L(%MAC1))=")" S %MAC1=$E(%MAC1,1,$L(%MAC1)-1)_","""")"
 I $E(%MAC1,$L(%MAC1))'=")" S %MAC1=%MAC1_"("""")"
 S %MAC1=$Q(@%MAC1) I %MAC1="" W:%PR=0 *7,!?15,"*** ARRAY ",MAC," HASN'T DESCENDANTS !" H 2 Q
PR F I=2:1:1000000 Q:%MAC1'[%MAC2  Q:%MAC1=""  S ^S000($P,I)=%MAC1_"="_$G(@%MAC1) S %MAC1=$Q(@%MAC1)
 I I=1000000 S FLAG=1
END K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2 Q
 
 
 

%S1JOBL
%S1JOBL ; [ 21.10.06 17:27 ] [ 14.12.05 07:44 ] [ 23.03.05 10:24 ]
 N FN,I,PID,DEV,NAME
 S FN="s1j"_$J
 ZSY "rm -f "_FN
 ZSY "ps -A > "_FN
 D GET^%L1OS(FN)
 C FN:DELETE
 S %L3MYDVN=$$^%L3MYDVN
 K ^s1job(%L3MYDVN)
 F I=1:1 Q:'$D(^TMPS111($J,I))  D
 .N A S A=$G(^(I)) Q:A=""
 .S PID=$TR($E(A,1,5)," ")
 .S DEV=$TR($E(A,7,14)," ")
 .S NAME=$TR($E(A,24,40)," ")
 .S ^s1job(%L3MYDVN,NAME,PID)=DEV
 Q

%S1KA
%S1KA ;
 N %J,%J0,%J1,%J2,%CC S %J0=1
M F %J=%J0:1:$L(%S) Q:$E(%S,%J)'=" "
M1 I %J0=1 S %CC=$E(%S,1,%J-1)
 S %J1=$F(%S," ",%J)
 I '%J1!(%J1'<$L(%S)) S %S=%CC_$E(%S,%J,255) G END
 S %CC=%CC_$E(%S,%J,%J1-1) S %J0=%J1 G M
ALL F %J=1:1 Q:$E(%S,%J)'=" "
 S %S=$E(%S,%J,255) G %S1KA
END I $E(%S,$L(%S))=" " F %J2=$L(%S):-1:1 Q:$E(%S,%J2)'=" "
 I  S %S=$E(%S,1,%J2)
 Q

%S1KLJ
%S1KLJ(NAME) ; [ 21.10.06 17:30 ] [
 D ^%S1JOBL
 Q

%S1LH
%S1LH ; [ 11.01.02  7:46 AM ] [
 I $$TERMINAL^%HOSTCMD("C:\LOADHEB")
 Q

%S1MCIND
%S1MCIND(%MAC) ; [ 08.11.15 11:59 ] [ 26.10.15 12:45 ] [ 20.10.15 14:08 ]
 I %MAC'["(" Q %MAC
 N %IND,%IND1,%IN,%IN1,%J,%MAC1
 ;;S %MAC="^AA(A1,""B1"",C1,""D1"")"
 S %IND=$P($P(%MAC,"(",2),")")
 S %IND1=""
 ;
 F %J=1:1:$L(%IND,",") D
 .S (%IN,%IN1)=$P(%IND,",",%J)
 .I $E(%IN)'="""",$E(%IN)?1A!($E(%IN)="%") S %IN1="""""""_"_%IN_"_"""""""
 .S %IND1=%IND1_%IN1_","
 S %MAC1=$P(%MAC,"(")_"("_$E(%IND1,1,$L(%IND1)-1)_")"
 Q %MAC1

%S1SGL
%S1SGL ; SAVE GLOBAL [ 03/31/92  3:46 PM ]
 S %BN=2235,%REFER="MSG",%PRFIND=0,%PRZI=0
 O 63
ASK1 ;S %BN=3686 ;
 S $ZT="ERR^BLKDMP"
 I %BN'="*",%BN'?1.N,%BN'?1N1":"1.N,%BN'?1N1":"1.N1":"1"G"1N,%BN'?1.N1":"1"G"1N,%BN'?1N1":"1.N1":"1""""1"G"1N1"""",%BN'?1.N1":"1""""1"G"1N1"""" S @("%BN="_%BN)
 I %BN'="*" S X=%BN D VB^DBFIX G:'$D(X)#10 ASK S %BN=X
 V:%BN'="*" %BN:$S($D(VG)#10:VG,1:"")
INT S %INT=1,%ID=1,%DEV=$P
 S %LR=%BN
DEV S %DEV=$P U 0 ;D:%DEV=$P CRT^%SDEV G:$D(QUIT) EXIT S %ID='(%DEV=$P)
 O 63 U 63 S %B=$ZA U 0
 W !!,"Block :",%B S X=%B D BN^BLKDMP1 W "  (",Y,")" W:$D(VGI) ?25,"Volume group ",VGI
 I +$P(Y,":",2)=0 D BLKDMP^VGLABELE S R="" G ASK
 S %T=$V(1020,0,1),%T2=$V(1021,0,1,3) I $E(%T2,5) W !,"Block awaiting garbage collection"
 I %T'=3 G NEXT  ;>12!'%T W *7,!,"Uninitialized block, or invalid block type" G ASK
 ;D @($P("GDIR^PTR^DATA^XDATA^RDIR^RTNHDR^RTN^MAP^JRNL^SBP^SPDIR^SPBLK","^",%T)_"^BLKDMP1")
DATA W !!,"Data block" D OFST G:'%OF NEXT
 NEW BYTREV S BYTREV=$ZB($V($V(44),-3,2),#40,1)
 I $D(NCOL) S STRING='NCOL G DATA1
 D ^BLKDMP2 G:'F EXIT
DATA1 S %I=0,%N=""
 W !!," Key,Data",?11,"Global Name/",!," Off Off",?11,"Value",!," --- ---   -----"
DATA2 W ! S %L2=$V(%I+1,0,1) S %GLOB="" D N2 G:'%PRFIND&(%GLOB'[%REFER) NEXT G:$P(%GLOB,"(")'=%REFER!(%PRFIND) EXIT W "%GLOB=",%GLOB
 S %I=%I+%L2+2,%L3=$V(%I,0,1) S %VALUE=""
 I %L3=0 S %VALUE=$V(%I+1,0,4,0) S %I=%I+5
 E  I %L3=2 DO  S %I=%I+9 ; If byte reversed, swap bytes before display
 .I 'BYTREV S %VALUE=$V(%I+1,0,8,4) Q
 .NEW %J,%OVAL,%X,%XX S %X=$V(%I+1,0,8,2),%OVAL=$V(%I+1,0,8,4),%XX=15
 .F %J=1:1:8 V %I+%J:0:$ZH($E(%X,%XX,%XX+1)):1 S %XX=%XX-2 ; swap bytes
 .S %VALUE=$V(%I+1,0,8,4) V %I+1:0:%OVAL:8:4 Q  ; put back original value
 E  I %L3=3 S %VALUE=$V(%I+2,0,$V(%I+1,0,1),5) S %I=%I+2+$V(%I+1,0,1)
 E  I %L3=8 S %VALUE=$V(%I+2,0,256+$V(%I+1,0,1),5) S %I=%I+2+256+$V(%I+1,0,1)
 E  I %L3=7 W "...<UNDEF>..." S %I=%I+1
 E  W " *** UNRECOGNIZED DATA TYPE ***" G NEXT
 W " %VALUE=",%VALUE S @("^"_%REFER_"z"_$S(%GLOB["(":"("_$P(%GLOB,"(",2,255),1:""))=%VALUE
 G DATA2:%I<%OF,NEXT
EXIT C 63
N S %L2=$V(%I+1,0,1) S %BL=$V(%I+%L2+2,0,3) D BL W ?5,$J(%BL,7)
 I $X>12 W "  "
 E  W ?13
N2 S D=$C(0),%N=$E(%N,1,$V(%I,0,1))_$V(%I+2,0,%L2,5),%P=0
 S %GLOB=$P(%N,D) Q:$P(%N,D,2)=""
 F %J=2:1 S %C=$P(%N,D,%J) Q:%C=""  D N3
 S %GLOB=%GLOB_""")"
 Q
N3 I STRING D P S %GLOB=%GLOB_%C Q
 S F=$A(%C)-128,%C=$E(%C,2,1023),%LN=$L(%C) I %LN=0 D P S %GLOB=%GLOB_0 Q
 I F=127 D P S %GLOB=%GLOB_%C Q
 I F'<0 D P S %GLOB=%GLOB_$E(%C,1,F) S:F<%LN %GLOB=%GLOB_"."_$E(%C,F+1,%LN) Q
 D P W "-" S F=-2-F
 F X=1:1:F S %GLOB=%GLOB_(9-$E(%C,X))
 I %LN-1>F S %GLOB=%GLOB_"." F X=F+1:1:%LN-1 S %GLOB=%GLOB_(9-$E(%C,X))
 Q
P I %P S %GLOB=%GLOB_""",""" Q
 E  S %GLOB=%GLOB_"(""" S %P=1
 Q
OFST S %OF=$V(1022,0,2) Q
NEXT ;
 U 0 W:"6,7,10,"[(%T_",") !!,"Option not available" S X=%B D BN W !!,"Current block is ",Y S CUR=Y
 U 0 S BNL=$ZB($V(1012,0,4),#FFFFFF,1)
NX2 I BNL S X=BNL D BN W !!,"Link block is ",Y,!
 I %PRZI S %BN=%BN+1 Q:%BN>BLOCK2  G ASK1
 W:'BNL&($P=%DEV) ! Q:Y=CUR  Q:Y=0
 S %BN=Y G ASK1
 Q
BN ;BLOCK NUMBER -> VOLUME INDEX:BLOCK NUMBER
 ;PASS IN X RETURNED IN Y
 S Y=X I '$D(VGI)!'$D(VGVOL) D GETVOL^%VGUTIL
 F Z=VGVOL-1:-1:0 I $P(VGVOL(Z),"^",2)'>X S Y=Z_":"_(X-$P(VGVOL(Z),"^",2)) Q
 Q
ZI U 0 R !!,"FROM BLOCK:",BLOCK1 Q:BLOCK1=""
 W !!,"TO BLOCK :" R BLOCK2 G:"^"[BLOCK2 ZI
 W !!,"GLOBAL ^" R %REFER G:%REFER="" ZI
 S %PRFIND=0,%PRZI=1,%BN=BLOCK1 O 63 G ASK1

%S1SRV
%S1SRV ; [ 25.02.05 13:11 ] [ 27.08.04 18:49 ] [ 09.08.04 09:56 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
BG X %chista K ^TMPS111($J)
 D KOT
 S ^TMPS111($J,1)=$J("",SM)_KAV
 S ^TMPS111($J,2)=$J("",SM)_KOT
 S ^TMPS111($J,3)=$J("",SM)_KAV
 D STR1
 S ^TMPS111($J,4)=$J("",SM)_STR1
 S ^TMPS111($J,5)=""
 D STR2
 S ^TMPS111($J,6)=$J("",SM)_STR2
 W !
 ZSY "uptime" X %XCL
 W !
 F I=1:1:6 W !,^TMPS111($J,I)
 R *A:10 Q:A=13!(A=25)  G BG
 Q
KOT ;
 S KOT=" SERVER "
 S J=0 K MP
 S MP(0)=80
 S N="" F  S N=$O(^[%L3GLD]devi2(N)) Q:N=""  I $E(N,1,2)="ws",J<6 D
 .S L=$L(^(N),"/")
 .S J=J+1,KOT=" "_$J(N,5)_" "_$J($P(^(N),"/",L-1,L),5)_" |"_KOT
 .S MP(J)=MP(J-1)-12
 S SM=80-$L(KOT)\2
 I SM<0 S SM=0
 S KAV=$TR($J("",$L(KOT))," ","-")
 Q
STR1 ;
 S STR1=""
 K MD
 S N="",J=0 F  S N=$O(^[%L3GLD]devi2(N)) Q:N=""  I $E(N,1,2)="ws",J<6 D
 .S J=J+1
 .I $D(^CRDTCHT(N)) S MD(J)=$J($P(^(N),"\",2),5)_" "_$$T^%L1TIME(+$E(^(N),6,10)+$G(^SYNCTIME(N,"SMT")))_" "_$$SIMAN($E(^CRDTCHT(N),1,5)_","_+$E(^(N),6,10),N)
 .I '$D(^CRDTCHT(N)) S MD(J)=$J("",6)_"-"_$J("",6)
 F J=1:1 Q:'$D(MD(J))  S STR1=MD(J)_" "_STR1
 S STR1=STR1_" TOUCH"
 Q
STR2 ;
 S STR2=""
 K MD
 S N="",J=0 F  S N=$O(^[%L3GLD]devi2(N)) Q:N=""  I $E(N,1,2)="ws",J<6 D
 .S J=J+1
 .I $D(^P1VIDEO(N)) D
 ..S MD(J)=$S($D(^P1VIDEO(N,"$J")):$J(^("$J"),5),1:$J("",5))
 ..S MD(J)=MD(J)_" "_$S($D(^P1VIDEO(N,"TIME")):$J($$T^%L1TIME($P(^("TIME"),",",2)+$G(^SYNCTIME(N,"SMT"))),5),1:$J("",5))
 ..S MD(J)=MD(J)_" "_$$SIMAN($G(^P1VIDEO(N,"TIME")),N)
 .
 .I '$D(^CRDTCHT(N)) S MD(J)=$J("",6)_"-"_$J("",6)
 F J=1:1 Q:'$D(MD(J))  S STR2=MD(J)_" "_STR2
 S STR2=STR2_" VIDEO"
 Q
SIMAN(H,POS) ;
 I $P(H,",")-$G(^SYNCTIME(POS,"SMD"))'=+$H Q "-"
 I $P($H,",",2)-$G(^SYNCTIME(POS,"SMT"))-$P(H,",",2)>20 Q "-"
 I $P($H,",",2)-$G(^SYNCTIME(POS,"SMT"))-$P(H,",",2)<-20 Q "-"
 Q "+"

%S277
%S277 ;      [ 25.04.10 13:55 ] [ 27.04.06 11:36 ] [ 08.01.02  1:48 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC)
BG K (%Z) D ^%L1C
 S N="" F  S N=$O(^SHP(N)) Q:N=""  I '$D(^SHP(N,1)) K ^SHP(N)
 S %TIPT=1 N %ECHO
 S N=""
%77 X %chista W ! F I=1:1 Q:$T(MEN+I)["Q  ;"  S MM(I)=$P($T(MEN+I),";",2)
 S MAC="MM" D ^%L2MENU Q:%I=1  X %chista S HEAD=$P($T(MEN+%I),";",2) D @$P($T(MEN+%I),";",3) G BG
MEN ;
 ; EXIT                     ;
 ; CREATE/MODIFY A HEADER   ;REG1;
 ; ERASE A HEADER           ;REG3;
 ; TYPE A HEADER            ;REG5;
 K  D ^%L1C Q  ;
REG0 K ^S000($P) Q
REG1 S VP="V" D ZCOD Q:KOD=""
REG10 K ^S000($P) F I=1:1 Q:'$D(^SHP(KOD,I))  S ^S000($P,I)=^SHP(KOD,I)
REG2 S U=1 K L,R
 S %GETIN=$G(^SHP(KOD,"RG"),$S(%XMSG(0)'>1:"H",1:"E"))
 S %GET=" ENGLISH - E , HEBREW - H ++14,5,EE#1" D NE^%L1GET K %GETIN Q:%S=""!($G(%TO)="END")
 S %TIP="G"
 I %S="H"!(%S="h")!(%S="i") S ^SHP(KOD,"RG")=%S D RSHP K U,R,L,Y1,X1,U1 S %RMAX=79,%PRHBR=1,RL=79 D ^%S2ERG1 G ZS
 D ^%S2ERG
ZS S %GET="SAVE (Y/N) ?#1" D NE^%L1GET K %GETIN I %S'="Y"&(%S'="h")&(%S'="y")!($G(%TO)="END") K:'$D(^SHP(KOD,1)) ^SHP(KOD) Q
 D REG4
 S ^%ERGS(+$H,"^SHP("_KOD,$P($H,",",2))=%S S ^%ERGS(+$H,"^SHP("_KOD)=$P($$^%L1ZU(0),",")
 S ^SHP=KOD
 Q
REG3 S VP="VP" D ZCOD Q:KOD=""
 D VIEW
Z3 W !?20,"  ARE YOU SURE YOU WANT TO DELETE (Y/N/T - TYPE) ?" S CIST="YNT",%S="N" D ^%ZMSL G:%TO="END"!(%S="") REG3 I %S'="Y",%S'="N",%S'="T" W *7 G Z3
 I %S="T" D VIEW G REG3
 I %S'="Y" G REG3
 K ^SHP(KOD) W *7,"   HEADER ",KOD," IS ERASE !" S KOD="" G REG3
 ;-------------------------  SAVE
REG4  X %chista S %GET="SAVING CODE :++24,30,EE#"_$G(KOD)_"++10,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")  S KOD=%S
REG41 ;
 N RGR
 S NAM=$G(^SHP(KOD)) S %GET="NAME ++15,10,EE#"_(NAM)_"++20,H,I" D ^%L1GET S NAM=%S
 S RGR=$G(^SHP(KOD,"RG"),$S(%XMSG(0)>1:"E",1:"H"))
 K ^SHP(KOD) F J=1:1 Q:'$D(^S000($P,J))  S ^SHP(KOD,J)=^S000($P,J)
 S ^SHP(KOD)=$G(NAM)
 S ^SHP(KOD,"RG")=RGR
 K ^S000($P) Q
REG5 S VP="VP" D ZCOD Q:KOD=""
 D PR2 G REG5
REG6 D PR1 Q
PR1 S %QTY=2,%DEF="3" D %IOS Q:'$D(%IOD)  U @%IOD
 I %IOD=1!(%IOD=2) G R1
 G R10
R1 W #,!,?4," COD ",?10," NAME OF HEADER ",!
 S IS="" F K=0:0 S IS=$O(^SHP(IS)) Q:IS=""  W ?4,IS," " W:$D(^(IS))#10 ^(IS) W !
 C %IOD
 Q
R10 U 0 S IS=""
 F K=1:1:20 S IS=$O(^SHP(IS)) Q:IS=""  W !?4,IS," " W:$D(^(IS))#10 ^(IS)
 G R10+4:IS="" R !!,"EXIT '^' / NEXT <Enter> ",VK G R10+4:VK="^",R10+1:VK=""
 I $D(%IOD),%IOD C %IOD K %IOD O 0 U 0
 Q
PR2 S %QTY=2,%DEF="3" D %IOS Q:'$D(%IOD)
 I '%IOD D VIEW Q
KL U 0 W !!,"   EXEMPLAR :" S CIST="0123456789",%LS=3,%S=1 D ^%ZMSL Q:%TO="END"  S K1=%S S:K1="" K1=1
 W "1...5....1....5....2....5....3....5....4....5....5....5....6....5....7....5....8" W:%IOD["1" "....5....9....5....0....5....1....5....2....5....3"
 F I=1:1:K1 S %IO=%IOD U @%IOD W !,KOD,?12,NAM,!! D %S288 R:'%IOD !!,"<>",Y W #
 I $D(%IOD),%IOD C %IOD K %IOD O 0 U 0
 Q
%IOS U 0 W !!,"DEVICE (0,3) >" S CIST="03",%LS=1,%S="" S:$D(%DEF) %S=%DEF
 D ^%ZMSL Q:%S=""
 S %IOD=%S K %S
 O %IOD
 Q
%S288 D ^%L1TS F I=1:1 Q:'$D(^SHP(KOD,I))  W $S($G(%IOD):$TR(^(I),TS0,TSS),1:^(I)),!
 Q
RSHP K ^S000($P)
 F I=1:1 Q:'$D(^SHP(KOD,I))  D:'+$G(^SHP(KOD,I,"%TOP"))  S ^S000($P,I)=^SHP(KOD,I),^S000($P,I,"%TOP")=$G(^SHP(KOD,I,"%TOP"))
 .S SS=^SHP(KOD,I) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 .S ^SHP(KOD,I,"%TOP")=II-($E(SS,II)'=" ")
 Q
ZCOD I $G(HEAD)'="" S %SAY=HEAD X %XMSGV
 I '$L($G(KOD)) S KOD=$G(^SHP)
 S %GET="HEADER'S CODE:++4,10,EE#"_$G(KOD)_"++10,E,I++++++^SHP\\\\"_VP D ^%L1GET I %S=""!($G(%TO)="END") S KOD="" Q
 S KOD=%S
 S NAM=$S($D(^SHP(KOD))#10:^SHP(KOD),1:"")
 Q
VIEW ;
 K ^TMPS111($J) F I=1:1 Q:'$D(^SHP(KOD,I))  S ^TMPS111($J,I)=^SHP(KOD,I)
 K R,L,U S TXT=" EXIT - <ESC> " S:%XMSG(0)'>1 %HBRY="" D ^%S2VIEW
 K ^TMPS111($J)
 Q

%S2ASK
%S2ASK ; ;%Q("Z") - ASK,%Q("U") - DEFAULT.,%Q("V")-POSSIBLE POINT ;- YES=1 - YES,0 - NO      [ 15.03.19 07:08 ] [ 01.03.04 10:26 ] [ 09.02.04 13:44 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%Q,YES) D ^%L1C
BG I $D(%Q(1)) S %GET(1)=""
 I %ENGLISH,$D(%Q("U")) S:%Q("U")="l" %Q("U")="N" S:%Q("U")="k" %Q("U")="Y"
 I %ENGLISH G ^%S1ASK
 N %ECHO,%HBRY S %HBRY=""
 S YES="E" U 0 I $D(%Q("U"))#2,%Q("U")'="l",%Q("U")'="k" W *7,!,"*** %S2ASK .ERROR IN PARAMETR'S VALUES: %Q(""U"")=",%Q("U") G END
 I '($D(%Q("Z"))#2) W !,"*** %S2ASK . ISN'T (%Q(""Z"")) !" G END
 I $$HZGTOUCH^%L2MOUSE D  G END
 .N %GET S %GET("IS")=$TR(%Q("Z"),"{}","")
 .I $D(%Q("U")) S %GET("DEF")=$S(%Q("U")="l":1,1:2)
 .D IS^%L1GET
 I '$D(%Q("X"))!'$D(%Q("Y")) G N ;W *7,!,"*** %S2ASK .UNFEFINED COORDINATS" G END
 I $D(%Q("X")),$D(%Q("Y")),$D(%Q("C"))  S %XX=0,%YY=%Q("Y") X %POSIC W %chists
 I $D(%Q("X")),$D(%Q("Y"))  S %XX=%Q("X"),%YY=%Q("Y") X %POSIC W $$^%L1HBR("? (l\k) "_%Q("Z")) S %XX=%XX-2,$X=%XX,$Y=%YY S %S=$G(%Q("U")) S CIST="klFK",%LS=1,%INV="" D ^%L1ZMS K %INV S YES=%S
 I $D(%Q("V")) I YES="."&($D(%Q("U")))!(YES=""&('$D(%Q("U")))) S YES="." G END
 I $D(%Q("B")) I YES="."!(YES="^") G END
 I YES="k"!(YES="F") S YES=1 G END
 I YES="l"!(YES="K") S YES=0 G END
 I YES="" G:'($D(%Q("U"))#2) ER S YES=$S(%Q("U")="k":1,1:0) G END
 I YES="?" G:$D(%Q("H"))>9 INSTR W !?30,"HASN'T HELP !" G %S2ASK
 G ER
END X %XCL Q
 ;-
 ;;ER W *8,*8,$S($A(YES)<97&($A(YES)>64):$TR($TR("<CAPS LOCK> ugl",%TES1,%TES2),%TEN,%THB),1:"")_$TR($TR(" *** d`iby",%TES1,%TES2),%TEN,%THB),%chists H 1 W *13,%chists G %S2ASK
ER W *8,*8,$S($A(YES)<97&($A(YES)>64):$$W^%L1C("<CAPS LOCK> ugl"),1:"")_$$W^%L1C(" *** d`iby"),%chists H 1 W *13,%chists G %S2ASK
 ;-
INSTR S PROGR=%Q("H") I PROGR["^W" D @PROGR G %S2ASK
 K PROGR W ! F %J=1:1 Q:'$D(%Q("H",%J))  W !?3,%Q("H",%J)
 G %S2ASK
N N Q,L S Q=$$RPL^%L1FRM(%Q("Z"),%LIGHT1,"")
 S Q=$$RPL^%L1FRM(%Q("Z"),%CLI,"")
 S Q=$$RPL^%L1FRM(%Q("Z"),%CCL,"")
 S L=$L(Q)-2
 S %Q("X")=80-L\2
 S %Q("Y")=24,%Q("C")=""
 G %S2ASK
 

%S2BST
%S2BST ; [ 04/13/92 11:51 AM ]
 S:'$D(%MBS("B")) %MBS("B")=0 S:%MBS("B")>15 %MBS("B")=15 S %MBS("F")=0
 S:'$D(%MBS("DZ")) %MBS("DZ")=30 S %30V=%MBS("DZ")
 S %SH=0,%RST=20-%MBS("B") ;,$ZS="ER^%S2BST" ;
 D:'$D(%LEVO) ^%L1C G VIV
ZAPR ;
 W !,$E(%MBS("Z",%SH),1,%30V-1),?%30V,":" S:'$D(%MBS("O",%SH)) %MBS("O",%SH)="" X %XCL W %MBS("O",%SH) X %XCL
 Q
OBRVV ;
 D BEGS R *%C
 I %C=27 R *%C1:0,*%D:0 I %D>0 D VVERX:%D=%VVERX,VNIZ:%D=%VNIZ,VVOD:%D'=%VNIZ&(%D'=%VVERX) Q
VVOD S %S=%MBS("O",%SH),%FLL=1 K CIST,%LS
 I %C>31&(%C<127) S %S=$C(%C)_$E(%MBS("O",%SH),2,$L(%MBS("O",%SH)))
 S:$D(%MBS("D",%SH,1))#10 %LS=%MBS("D",%SH,1) S:$D(%MBS("S",%SH))#10 CIST=%MBS("S",%SH)
 I %C=13 S %FLL=0 G CONTR
 I $D(CIST)&(%C>31)&(%C<160) G:(CIST'[$C(%C)) OBRVV
VIZ ;
 S %PRVX=0 S:'$D(%S) %S="" S %I=$L(%S)+1 I '$D(%LS) S %LS=255
 S:'$D(%FLL) %FLL=0 S %BEG=1
 W %S D BEGS S %I=1
CYC S:'%BEG %FLL=0 S %L=$L(%S) S %A=$S(%I>%L:" ",1:$E(%S,%I))
 R:'%FLL *%C S %BEG=0 G:%C=27 SERV S %FLL=0 G TAB:%C=2,TAB:%C=9,FIN:%C=13,IC:%C=23,DC:%C=8!(%C=127),SYM:%C>31&(%C<127),CYC
SYM I $D(CIST)'=0 I '(CIST[$C(%C)) W *7 G CYC
 G:%I>%LS CYC W *%C S %S=$E(%S,1,%I-1)_$C(%C)_$E(%S,%I+1,%L),%I=%I+1 G CYC
FIN D KOH+1 G CONTR
SERV R *%C1:0,*%D:0 I %D>0 S %FLL=0 G DC:%D=216 G LEFT:%D=%LEVO,RIGHT:%D=%PRAVO,UP:%D=%VVERX,DOWN:%D=%VNIZ,ERL:%D=%CHISTS,CYC
RIGHT G:%I>%LS CYC W %pravo S %S=$E(%S,1,%I-1)_%A_$E(%S,%I+1,%L),%I=%I+1 G CYC
LEFT G:%I=1 CYC W %levo S %I=%I-1 G CYC
IC G:%L=%LS CYC S %S=$E(%S,1,%I-1)_" "_$E(%S,%I,%L) W $E(%S,%I,%L+1) X "F %NP=1:1:(%L+2-%I) W %levo" G CYC
DC I %I'>%L S %S=$E(%S,1,%I-1)_$E(%S,%I+1,%L) W $E(%S,%I,%L-1)_" " X "F %NP=1:1:%L-%I+1 W %levo" G CYC
 G:%L=0 CYC S %S=$E(%S,1,%I-2),%I=%I-1 W %levo," ",%levo G CYC
ERL G:%I>%L CYC S %S=$E(%S,1,%I-1) W $J("",%L-%I+1) X "F %NP=1:1:%L-%I+1 W %levo" G CYC
KOH D KOH+1 G CYC
 X "F %NP=1:1:$L(%S)+1-%I W %pravo" S %I=$L(%S)+1 Q
TAB S %J=%I-(%C=2*2)\10+(%C=9)*10+1 S:%J>%L %J=%L+1 S:%J<1 %J=1
 X:%J>%I "F %NP=1:1:%J-%I W %pravo" X:%J<%I "F %NP=1:1:%I-%J W %levo" S %I=%J G CYC
UP G:%I=1 CYC
 S %J=%I-80 S:%J<1 %J=1 G TAB+1
DOWN G:%I>%L CYC S %J=%I+80 S:%J>%L %J=%L+1 G TAB+1
 ;-
CONTR ;
 I %S=".",$D(%MBS(".")) S %TXT="DO YOU MASN'T ENTER DOT !" D SOOB,BEGS G VIZ
 I %S="."!(%S="&") S %MBS("O",%SH)="",%SH=%SH+%KOLS+1-%SCH,%SCH=%KOLS+1 G ENDC
 S %SOLD=%S
 I $D(%MBS("D",%SH,2)) I ($L(%S)<%LS)&(%MBS("D",%SH,2)=1) S %TXT="*** FORMAT !" D SOOB,BEGS G VIZ
 S %MC=$S($D(%MBS("C",%SH))#2:%MBS("C",%SH),$D(%MBS("C"))#2:%MBS("C"),1:"")
 I %MC'=""&(%S'="&") X "S %FLOSH=0,%TXT="""" "_%MC I %FLOSH D SOOB,BEGS K %MC G VIZ
 S %MBS("O",%SH)=%S
 S %MP=$S($D(%MBS("P",%SH))#2:%MBS("P",%SH),$D(%MBS("P"))#2:%MBS("P"),1:"")
 I %MP'="",%S'="&" X "S %FLOSH=0 S %XX=0,%YY=%MBS(""B"") X %POSIC x %chiste D @%MP" S:'$D(%SCH) %SCH=0 S %SH1=%SH,%SCH1=%SCH,%SH=%SH-%SCH D P S %SH=%SH1,%SCH=%SCH1,%MP="" K %SH1,%SCH1 D BEGS
 S %SH=%SH+1,%SCH=%SCH+1
ENDC S:%S="&" %MBS("F")=1
 K %FLL,%BEG,%I,%NP,%MC,%MP,%L,%C,%D,%LS,%J
 Q  ; ********************************** �€—€‹Ž Ž‘�. —€‘’ˆ *********
 ;-
VIV ;
 D P
 S %SH=%SH-%SCH+1,%SCH=1
 I $D(%MBS("LOOK")) G ZR
CVV ;
 D OBRVV G CVV:%SCH'>%KOLS
 I %MBS("F") K %MBS("O") G END
ZR S %XX=0,%YY=21 X %POSIC
 I '$D(%MBS("LOOK")) W "MODIFY - 1,"_$S($D(%MBS("O",%SH-%RST-1)):"PREVIOS SCREEN - 2 ,",1:"")_$S('%PRFIN:"NEXT SCREEN",1:"TERMINATE")_" INPUT - <Enter> " X %XCL W %chists U $P:(ECHO:WRAP) R %REG  X %XCL
 E  R "PRESS <Enter> ",Y S %REG="" S %SH=%SH+%KOLS+1-%SCH,%SCH=%KOLS+1
 I %REG="" G:%PRFIN END S %SH=%SH-1 G VIV
 I %REG=2&($D(%MBS("Z",%SH-%RST-1))) S %SH=%SH-1.1\%RST-1*%RST G VIV
 I %REG'=1 W *7,%vverx x %chiste G ZR
 S %SH=%SH-%SCH+1,%SCH=1
 ; W %vverx x %chiste w !,%vverxE,%vniz D BEGS G CVV
 D BEGS G CVV
END S %XX=0,%YY=23 X %POSIC
 K %SH,%SCH,CIST,%FLL,%LS,%C,%D,%REG,%KOLS,%I,%I1,%J,%30V
 K %XX,%YY X %XCL U $P:(ECHO:WRAP:WIDTH=80)
 Q  ; ********************
VVERX ;
 I %SCH>1 W %vverx S %SCH=%SCH-1,%SH=%SH-1
 Q
VNIZ ;
 W %vniz S %SCH=%SCH+1,%SH=%SH+1
 Q
BEGS ;
 S %XX=%30V+1,%YY=%SCH+%MBS("B") X %POSIC
 Q
SOOB W %vverxe,%chists S %XX=10,%YY=0 X %POSIC W %TXT,%chists H 3 W *13,%chists
 Q
SOOB1 W %vverxe,%chists S %XX=10,%YY=0 X %POSIC W %TXT,%chists
 X %XCL
 Q
ER S %TXT="*** ERROR IN CHECK COMMAND ! " K %MBS("C") D SOOB,BEGS S $ZS="ER^%S2BST" G VIV
 Q
P ;
 I $D(%MBS("N")) S %TXT=%MBS("N") D SOOB1 S:%MBS("B")=0 %MBS("B")=1
 S %XX=0,%YY=%MBS("B") X %POSIC X %chiste F %SCH=1:1:%RST S %SH=%SH+1 Q:'$D(%MBS("Z",%SH))  D ZAPR
 S %KOLS=%SCH-'$D(%MBS("Z",%SH)) S %PRFIN='$D(%MBS("Z",%SH+1))
 Q

%S2DBV
%S2DBV

%S2ERG
%S2ERG S %S2ERG="" ;   [ 11.03.25 12:11 ] [ 29.12.23 10:03 ] [ 28.12.23 19:28 ] 
BEG S $ZE="ERRRR^%S2ERG" S %GWUL=78 K %HBRY W %ENG
 I $G(^ERGDOS) S %ergdos=1
 E  S %ergdos=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 K U1,Y1 S:'$D(%FLV) %FLV=1 S:'$D(%FLI) %FLI=0
 S SDV=60,%FHBR=0 S:'$D(%TIP) %TIP="R"
 W %vverxe,%chists
M11 S:'$G(U) U=1 S:'$D(^S000($P,U)) ^S000($P,U)="" S:'$D(L) L=0 S:'$D(R) R=L+%GWUL S:'$D(%FLC) %FLC=0
M12 W *27,"[1;24r"
 D:$D(TXT) STR1 S %X=0,%Y=1,RL=1+R-L,%K=L U $P:(NOECHO:NOWRAP:ESCAPE) D P
M13 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 S:$D(X1) %X=X1 S %K=L+%X K U1,Y1,X1
M2 I '$D(^S000($P,U)) S ^(U)=""
 S %SS=^(U) U $P:(NOECHO:NOWRAP:ESCAPE)
 ;;S %SAY=" HELP - <CTRL>+<F1> " X %XMSGN
3 U $P:(NOECHO:NOWRAP:ESCAPE)
 W:%FLI %vverxe,%LIGHT1,%CV("RF"),"+",U,":",$L(^S000($P,U)),":",%K+1,":",%Y,":",%X+1,"   " X %XCL ;,%chists
 S %YY=%Y,%XX=%X X %POSIC
READ D ^%L1MSGBR I '$D(^S000($P,U)) S ^(U)=""
 U $P:(NOECHO:NOWRAP:ESCAPE)
 R *C:1 E  G READ
 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
COM I $D(%UPRCOD(C)) G @%UPRCOD(C)
 K %NOVSV
 I C=215 K %HBRY S %FHBR=0 R *D:1 W $C(C,D) S C=D-48,%NOVSV=1 G READ0
 I C>223,C<251 S C=C-128
 I '$$ERGDOS,C<127,C>31,'%FLV G READ1 ; *** 28/12/23
 I $$ERGDOS,C>31,'%FLV G READ1 ; *** 28.12.23
 G ERCOM:C<32&(C-31)&(C-29)
READ0 I %FLV G:%K'<$L(^(U))!($L(^(U))=400) READ1 S ^(U)=$E(^(U),1,%K)_" "_$E(^(U),%K+1,400) D V S %XX=%X,%YY=%Y X %POSIC
READ1 S ^(U)=$E(^(U),1,%K)_$$SMB(C)_$E(^(U),%K+2,400)
 D
 .Q:$G(%NOVSV)
 .;;I $D(%HBRY),C=44 W $C(250) Q
 .W $$WC($C(C),"I")
 K %NOVSV G:%FHBR 3
 ;
PRAVO I %X<(RL-1) S %K=%K+1,%X=%X+1 G 3
 S SDV=1 D SPRAVO S SDV=60,%K=%K+1,RL=1+R-L,%Y=1 D P G M13
MET G ^%S2ERG01 ;
MDRG ;
 G HBR
27 ;
ESC S %XX=20,%YY=23 X %POSIC W ! X %XCL U $P:(ECHO:WRAP) K %S2ERG,%LABOLD Q
INS S TXT="INSERT" D STR1 I '%FLV S %FLV=1,%GTV="" H 1 G 3
 I %FLV S %FLV=0 K %GTV S TXT="OVERLAY" D STR1 H 1 G 3
HBR I '$D(%HBRY) S %HBRY="" S TXT="HEBREW TEXT" D STR1 S %HBRY="",%FHBR=1 S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
 S %FHBR=0 K %HBRY S TXT="ENGLISH" D STR1 S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
 G M12
HELP ;
 X "ZL %S2ERGH K ^TMPS111($J) N I,J,T,TH S J=0 F I=2:1 Q:$T(+I)=""""  S T=$T(+I),TH=$E(T,2,4) S:TH=""\R\""!(TH=""\G\"") T="" ""_$P(T,TH,2,20) I TH'=""\R\""&(TH'=""\G\"")!(TH=(""\""_%TIP_""\"")) S J=J+1,^TMPS111($J,J)=T" D  G BEG
 .S %SAY=" EXIT FROM HELP - <ESC> " X %XMSGN
 .N L S L=0 D ^%S2VIEW X %XCL
2 G 3:%Y'<23 D VIR S %K=L,%X=0,%Y=%Y+1 D P G 3
MOD G 5^%S2ERG02
FIND G 6^%S2ERG02
IND I %FLI S %FLI=0 S TXT="INDEX OUT" D STR1 H 1 G 3
 S %FLI=1 G 3
TABN G:'$D(%SIMB) 810 S %KK=%K F I=U:-1:1 S %OPOZ=0 S:U'=I %KK=$L(^(I)) D 801 Q:%OPOZ>0&(%KK>0)
 G 802
SMB(C) ;
 N SMB I $D(%HBRY) D  Q SMB
 .I $$ERGDOS D  Q
 ..I C<96!(C>122),C'=44,C'=46 S SMB=$C(C) Q  ; *** 28/12/23
 ..I C=44 S SMB=$C(154) Q  ; ***
 ..I C=46 S SMB=$C(149) Q  ; ***
 ..S SMB=$TR($C(C),%TES2,%TES1)  ; ***
 ..S SMB=$C($A(SMB)+32) ; ***
 .
 .; -- OLD --
 .I C=46 S SMB=$C(117) Q
 .S SMB=$TR($C(C),%TES2,%TES1)
 ;
 Q $C(C)
 ;
 ;
W(U) ;
 ;W %LIGHT1,%CV("CF")
 N ST,STO,STH S ST=$G(^S000($P,U)),%FLC=0,STH=""
 D W1(ST)
 Q
 ;
W1(ST) ;
 I '$D(L) S L=0
 I '$D(R) S R=79
 I '$D(%HBRY) S STO=$E(ST,L+1,R+1) G WE
 ;
 D  Q  ;I %TYPCRT["PC" D  Q  ;; -- ZOC !
 .S STO=$E(ST,L+1,R+1)
 .N JJ F JJ=1:1:$L(STO) D
 ..N SMB S SMB=$E(STO,JJ)
 ..W $$WC(SMB,1) Q
 ;
 I '$D(TSS) D ^%L1TS
 S STO=$TR($E(ST,L+1,R+1),TS0,$S($G(%XMSG(0))<1:TSS,1:TS1)) G WE
WE I '$D(%W1JSP) W STO Q
 N JJ F JJ=1:1:$L(STO) W $$WC($E(STO,JJ))
 Q
 ;
WH ; 
 N JJ F JJ=1:1:$L(STH) D
 .N SMB S SMB=$E(STH,JJ)
 .I ($A(SMB)<96)!($A(SMB)>122) W SMB Q
 .I $G(^ERGDOS) W $C($A(SMB)+32) Q
 .W $C(215,$A(SMB)+48)
 S STH=""
 Q
 ;
WC(%A,%PR) ;
 I '$$ERGDOS,$D(%HBRY),$A(%A)=44,$G(%PR)="I" Q $C(250)  ; *** OLD 28.12.23
 I '$$ERGDOS I $D(%HBRY),$A(%A)=46,$G(%PR)="I" Q $C(245)  ; *** OLD
 I $$ERGDOS,$D(%HBRY),$A(%A)=44,'$G(%PR) Q $C(154)  ; *** NEW
 I $$ERGDOS,$D(%HBRY),$A(%A)=46,'$G(%PR) Q $C(149)  ; *** NEW
 ;
 I $A(%A)>95,$A(%A)<123 D
 .I $D(%HBRY) D
 ..I $$ERGDOS D  Q
 ...I '$G(%PR) S %A=$TR(%A,%TES2,%TES1) ; *** NEW
 ...S %A=$C($A(%A)+32) ; *** NEW
 ..
 ..I $G(%PR) S %A=$C($A(%A)+128) Q
 ..S %A=$C($A($TR(%A,%TES2,%TES1))+128)
 Q %A
 ;
 ;
801 F JJ=0:0 S J=$F(^(I),%SIMB,%OPOZ) Q:J>%KK!(J=0)!(%KK=0)  S %OPOZ=J
 Q
802 S TXT="" S:I=1&'%OPOZ TXT=" NOT" S TXT=TXT_" FOUND" D STR1 G 3:'%OPOZ
 S %OPOZ=%OPOZ-$L(%SIMB)-1
 S %Y=I-U+%Y,%X=%OPOZ-%K+%X,U=I,%K=%OPOZ I %X<RL,%X'<0,%Y<24,%Y>0 G 3
 S L=%OPOZ,R=L+RL-1 G M12^%S2ERG
810 G READ:'%K S C=%K-%X,%K=%K-.1\10*10,%X=%K-C G:%K'<L 3
 S SDV=L-%K D SLEVO S SDV=60 G M12
TAB I '$D(%SIMB) G 910
 S RAZ=%SIMB,J=%K+2 F I=U:1 Q:'$D(^(I))  S J=$F(^(I),RAZ,J) Q:J
 S TXT="" S:'J TXT=" NOT " S TXT=TXT_" FOUND" D STR1 G 3:'J S J=J-$L(RAZ)-1
 S %Y=I-U+%Y,%X=J-%K+%X,U=I,%K=J I %X<RL,%X'<0,%Y<24 G 3
 S L=J,R=L+RL-1 G M12^%S2ERG
910 G READ:%K>330 S C=%K-%X,%K=%K\10+1*10,%X=%K-C G:%K'>R 3
 S SDV=%K-R D SPRAVO S SDV=60,RL=1+R-L,%Y=1 D P S %X=R-L,%K=R G M13
ENDS S S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G 3
ENDL S S=$L(^(U)) G:S<R 3 S SDV=S-R D SPRAVO D P
 S %X=0,%Y=1,RL=1+R-L,%K=L D P
 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 K U1,Y1 S %K=S,%X=%K-L S SDV=60
 G 3
COR K %L1WE S %YY=19,%XX=0 X %POSIC W %chists,"<<LINE ",U,">>" S %S=^(U),%6=20
 ;%L2STR
 D ^%L1WE S ^(U)=%S K %S,%6 I %Y>18 S U1=U,U=U-%Y+1,Y1=%Y S:U<1 U=1 G M12
 D P G 3
PGLN G 3:'L D SLEVO G M12
BK S %K=L,%X=0 G VNIZ
HOME I L>0 S SDV=L D SLEVO S SDV=60 G M12
 S %K=0,%X=0 G 3
PGUP G 3:U'>%Y S U=U-%Y-19 S:U'>0 U=1 G M12
PGRG G 3:L>295 D SPRAVO G M12
SPRAVO S L=L+SDV,U1=U,Y1=%Y,U=U-%Y+1,R=R+SDV Q
REST S %PROG="^%S2ERG" D 18^%S2ERG03 G 3
VNIZE W %vverxe F I=1:1:23 Q:'$D(^(U-%Y+I))  W %vniz
 S:'$D(^(U-%Y+I)) I=I-1
 S U=U-%Y+I,%Y=I,%K=L,%X=0 G M2
DELL X "F I=U:1 Q:'$D(^(I+1))  S ^(I)=^(I+1)" K ^(I) S %X=0,%K=L D P G M2
ADDL G 3:%Y'<23 D VIR S %K=L,%X=0,%Y=%Y+1 D P G 3
ADD G:%K'<$L(^(U))!($L(^(U))=400) READ
 S ^(U)=$E(^(U),1,%K)_" "_$E(^(U),%K+1,400) D V G 3
PGDN G 3:'$D(^(U-%Y+21)) S U=U-%Y+21 G BEG+2
 .S %LABOLD($O(%LABOLD(""),-1)+1)=U
24 S $ZE="" X %chista S %ZT=$ZT
 S ^ZE($P,"%ERG")=%TIP D ^%L1X
241 K ^ZE($P,"%ERG") G:$ZE=""!($ZV'["2.0") BEG X:%TIP="R" ^%ERG(1) Q  ; G BEG
ER24 W !,$ZS D ^%L1C S %PR="" G 24+1
XEC G 24
SAVE S %PROG="^%S2ERG" D 26^%S2ERG03 G 3
KOD F J=1:1:$L(^(U)) S %SMB=$E(^(U),J) I $A(%SMB)<123,$A(%SMB)>96 S $E(^(U),J)=$C($A(%SMB)-32)
 S SDV=0 D SLEVO S SDV=60 G M12
096 G KOD
VVERX G:%Y=1 VIRA S U=U-1,%Y=%Y-1 G M2
VNIZ S U=U+1,%Y=%Y+1 G MAINA:%Y>22,M2
LEVO G READ:'%K I %X>0 S %K=%K-1,%X=%X-1 G 3
 S SDV=1 D SLEVO S SDV=60 G M12
SLEVO S R=R-$S(L>SDV:SDV,1:L),L=$S(L>SDV:L-SDV,1:0) S U1=U,U=U-%Y+1,Y1=%Y Q
SBROS G:^(U)=%SS BK S ^(U)=%SS D V G BK
V S %YY=%Y,%XX=0 X %POSIC W %chists D W(U)
 Q
VVERXE S %K=L,U=U-%Y+1,%X=0,%Y=1 G M2
ENDF D DELAY R *%A:%WAIT D DELAY R *%A:%WAIT F I=U+1:1 Q:'$D(^(I))
 S U=I-20 S:U<1 U=1 S L=0 G M11
BEGF S U=1,L=0 G M11
CHISTS S ^(U)=$E(^S000($P,U),1,%K) W %chists G 3
CHISTE F I=U:-1:1 Q:$E(^(I),1)'=" "&($E(^(I),1)'="")
 S %LAB=$P(^(I)," ",1)
ZGE S TXT=" NUMBER ERASE LINE,BEGIN "_%LAB D STR1 K TXT
 W:U-I'=0 "+",U-I W " <ALL> " U $P:(ECHO:WRAP) R %COLUD U $P:(NOECHO:NOWRAP:ESCAPE) G:%COLUD=0 3
UD I %COLUD="" S ^(U)=$E(^(U),1,%K) D V X %chiste F I=U+1:1 G:'$D(^(I)) 3 K ^(I)
 I %COLUD'?1N.N W *7,"   *** ERROR !" H 2 G ZGE
 I '$D(^(U+%COLUD)) S %COLUD="" G UD
 F I=U:1 Q:'$D(^(I+%COLUD))  S ^(I)=^(I+%COLUD) K ^(I+%COLUD)
 F I1=I:1 Q:'$D(^(I1))  K ^(I1)
 S %X=0,%K=L D P G M2
DEL G:%K>$L(^(U)) READ G:%K=$L(^(U)) 1271
 S ^(U)=$E(^(U),1,%K)_$E(^(U),%K+2,400) D V G 3
1271 G READ:'%K I %X>0 S %K=%K-1,%X=%X-1
 S ^(U)=$E(^(U),1,%K) D V G 3
P S %YY=%Y,%XX=0 X %POSIC X %chiste I $O(^S000($P,1))
 F I=0:1:23-%Y Q:'$D(^(I+U))  D
 .S %YY=I+%Y,%XX=0 X %POSIC D W(I+U) X %XCL W %chists
 D STR1 Q
 ;W %vverxe,%chists Q
MAINA S:'$D(^(U)) ^(U)="" 
 I $D(^S000($P,1)) W $C(27),"E" D W(U) W %vverxe,%chists S %Y=23 G M2
VIRA R ! S U=U-1 D VIR:'U,P:%Y=1 S:%Y>1 %Y=%Y-1 G:$L($G(^(U))) M2
 ;S:C=164 S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G M2
 S S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G M2
VIR F I=U+1:1 Q:'$D(^(I))
 X "F I=I:-1:U+2 S ^(I)=^(I-1)" S U=U+1,^(U)=""
 Q
VIR1 F I=1:1 Q:'$D(^(I))
 X "F I=I+%COLVS-1:-1:U+%COLVS+1 S ^(I)=^(I-%COLVS)"
 X "F I=U+1:1:U+%COLVS S ^(I)=""""" S U=U+1 Q
ERXEC W !,"ERROR = ",$ZE S $ZE=%ZE G 24+1
ERCOM S TXT="ISN'T FUNCTION" D STR1 G 3
STR1 Q:'$D(TXT)  W %vverxe,%chists S %YY=0,%XX=16 X %POSIC D WT^%S2ERG02("YF",TXT) K:'$D(TXT(1)) TXT X %XCL
 Q
FINDS K %SIMB S TXT="SEARCH KEY NOW <TAB>. ENTER STRING FOR SEARCH :" D STR1
 U $P:(ECHO:WRAP) R %SIMB U $P:(NOECHO:NOWRAP:ESCAPE) I %SIMB="" K %SIMB G 3
 I $A(%SIMB)<32 W *7,"  *** ERROR !" H 2 G FINDS
 G 3
ER W "   ??? "_$P($ZE,">")_">",!! K  X ^%ERG K %S2ERG Q
ERRRR D ^%L1C S %XX=0,%YY=23 X %POSIC W %chists,*7,"ERROR:",$ZE,!
 I $ZE["PGMOV" K
 W " NAME ROUTINE :$" K %S2ERG Q
DELAY F %IJK=1:1:10000
 Q
 ;
ERGDOS() ; 
 Q $G(%ergdos)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%S2ERG0
%S2ERG S %S2ERG="" ;   [ 29.12.23 09:51 ] [ 28.12.23 19:28 ] [ 13.12.20 14:27 ] 
BEG S $ZE="ERRRR^%S2ERG" S %GWUL=78 K %HBRY W %ENG
 I $G(^ERGDOS) S $ZDATA("ERGDOS")=1
 E  S $ZDATA("ERGDOS")=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 K U1,Y1 S:'$D(%FLV) %FLV=1 S:'$D(%FLI) %FLI=0
 S SDV=60,%FHBR=0 S:'$D(%TIP) %TIP="R"
 W %vverxe,%chists
M11 S:'$G(U) U=1 S:'$D(^S000($P,U)) ^S000($P,U)="" S:'$D(L) L=0 S:'$D(R) R=L+%GWUL S:'$D(%FLC) %FLC=0
M12 W *27,"[1;24r"
 D:$D(TXT) STR1 S %X=0,%Y=1,RL=1+R-L,%K=L U $P:(NOECHO:NOWRAP:ESCAPE) D P
M13 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 S:$D(X1) %X=X1 S %K=L+%X K U1,Y1,X1
M2 I '$D(^S000($P,U)) S ^(U)=""
 S %SS=^(U) U $P:(NOECHO:NOWRAP:ESCAPE)
 ;;S %SAY=" HELP - <CTRL>+<F1> " X %XMSGN
3 U $P:(NOECHO:NOWRAP:ESCAPE)
 W:%FLI %vverxe,%LIGHT1,%CV("RF"),"+",U,":",$L(^S000($P,U)),":",%K+1,":",%Y,":",%X+1,"   " X %XCL ;,%chists
 S %YY=%Y,%XX=%X X %POSIC
READ D ^%L1MSGBR I '$D(^S000($P,U)) S ^(U)=""
 U $P:(NOECHO:NOWRAP:ESCAPE)
 R *C:1 E  G READ
 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
COM I $D(%UPRCOD(C)) G @%UPRCOD(C)
 K %NOVSV
 I C=215 K %HBRY S %FHBR=0 R *D:1 W $C(C,D) S C=D-48,%NOVSV=1 G READ0
 I C>223,C<251 S C=C-128
 I '$$ERGDOS,C<127,C>31,'%FLV G READ1 ; *** 28/12/23
 I $$ERGDOS,C>31,'%FLV G READ1 ; *** 28.12.23
 G ERCOM:C<32&(C-31)&(C-29)
READ0 I %FLV G:%K'<$L(^(U))!($L(^(U))=400) READ1 S ^(U)=$E(^(U),1,%K)_" "_$E(^(U),%K+1,400) D V S %XX=%X,%YY=%Y X %POSIC
READ1 S ^(U)=$E(^(U),1,%K)_$$SMB(C)_$E(^(U),%K+2,400)
 D
 .Q:$G(%NOVSV)
 .;;I $D(%HBRY),C=44 W $C(250) Q
 .W $$WC($C(C),"I")
 K %NOVSV G:%FHBR 3
 ;
PRAVO I %X<(RL-1) S %K=%K+1,%X=%X+1 G 3
 S SDV=1 D SPRAVO S SDV=60,%K=%K+1,RL=1+R-L,%Y=1 D P G M13
MET G ^%S2ERG01 ;
MDRG ;
 G HBR
27 ;
ESC S %XX=20,%YY=23 X %POSIC W ! X %XCL U $P:(ECHO:WRAP) K %S2ERG,%LABOLD Q
INS S TXT="INSERT" D STR1 I '%FLV S %FLV=1,%GTV="" H 1 G 3
 I %FLV S %FLV=0 K %GTV S TXT="OVERLAY" D STR1 H 1 G 3
HBR I '$D(%HBRY) S %HBRY="" S TXT="HEBREW TEXT" D STR1 S %HBRY="",%FHBR=1 S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
 S %FHBR=0 K %HBRY S TXT="ENGLISH" D STR1 S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
 G M12
HELP ;
 X "ZL %S2ERGH K ^TMPS111($J) N I,J,T,TH S J=0 F I=2:1 Q:$T(+I)=""""  S T=$T(+I),TH=$E(T,2,4) S:TH=""\R\""!(TH=""\G\"") T="" ""_$P(T,TH,2,20) I TH'=""\R\""&(TH'=""\G\"")!(TH=(""\""_%TIP_""\"")) S J=J+1,^TMPS111($J,J)=T" D  G BEG
 .S %SAY=" EXIT FROM HELP - <ESC> " X %XMSGN
 .N L S L=0 D ^%S2VIEW X %XCL
2 G 3:%Y'<23 D VIR S %K=L,%X=0,%Y=%Y+1 D P G 3
MOD G 5^%S2ERG02
FIND G 6^%S2ERG02
IND I %FLI S %FLI=0 S TXT="INDEX OUT" D STR1 H 1 G 3
 S %FLI=1 G 3
TABN G:'$D(%SIMB) 810 S %KK=%K F I=U:-1:1 S %OPOZ=0 S:U'=I %KK=$L(^(I)) D 801 Q:%OPOZ>0&(%KK>0)
 G 802
SMB(C) ;
 N SMB I $D(%HBRY) D  Q SMB
 .I $$ERGDOS D  Q
 ..I C<96!(C>122),C'=44,C'=46 S SMB=$C(C) Q  ; *** 28/12/23
 ..I C=44 S SMB=$C(154) Q  ; ***
 ..I C=46 S SMB=$C(149) Q  ; ***
 ..S SMB=$TR($C(C),%TES2,%TES1)  ; ***
 ..S SMB=$C($A(SMB)+32) ; ***
 .
 .; -- OLD --
 .I C=46 S SMB=$C(117) Q
 .S SMB=$TR($C(C),%TES2,%TES1)
 ;
 Q $C(C)
 ;
 ;
W(U) ;
 ;W %LIGHT1,%CV("CF")
 N ST,STO,STH S ST=$G(^S000($P,U)),%FLC=0,STH=""
 D W1(ST)
 Q
 ;
W1(ST) ;
 I '$D(L) S L=0
 I '$D(R) S R=79
 I '$D(%HBRY) S STO=$E(ST,L+1,R+1) G WE
 ;
 D  Q  ;I %TYPCRT["PC" D  Q  ;; -- ZOC !
 .S STO=$E(ST,L+1,R+1)
 .N JJ F JJ=1:1:$L(STO) D
 ..N SMB S SMB=$E(STO,JJ)
 ..W $$WC(SMB,1) Q
 ;
 I '$D(TSS) D ^%L1TS
 S STO=$TR($E(ST,L+1,R+1),TS0,$S($G(%XMSG(0))<1:TSS,1:TS1)) G WE
WE I '$D(%W1JSP) W STO Q
 N JJ F JJ=1:1:$L(STO) W $$WC($E(STO,JJ))
 Q
 ;
WH ; 
 N JJ F JJ=1:1:$L(STH) D
 .N SMB S SMB=$E(STH,JJ)
 .I ($A(SMB)<96)!($A(SMB)>122) W SMB Q
 .I $G(^ERGDOS) W $C($A(SMB)+32) Q
 .W $C(215,$A(SMB)+48)
 S STH=""
 Q
 ;
WC(%A,%PR) ;
 I '$$ERGDOS,$D(%HBRY),$A(%A)=44,$G(%PR)="I" Q $C(250)  ; *** OLD 28.12.23
 I '$$ERGDOS I $D(%HBRY),$A(%A)=46,$G(%PR)="I" Q $C(245)  ; *** OLD
 I $$ERGDOS,$D(%HBRY),$A(%A)=44,'$G(%PR) Q $C(154)  ; *** NEW
 I $$ERGDOS,$D(%HBRY),$A(%A)=46,'$G(%PR) Q $C(149)  ; *** NEW
 ;
 I $A(%A)>95,$A(%A)<123 D
 .I $D(%HBRY) D
 ..I $$ERGDOS D  Q
 ...I '$G(%PR) S %A=$TR(%A,%TES2,%TES1) ; *** NEW
 ...S %A=$C($A(%A)+32) ; *** NEW
 ..
 ..I $G(%PR) S %A=$C($A(%A)+128) Q
 ..S %A=$C($A($TR(%A,%TES2,%TES1))+128)
 Q %A
 ;
WC0(%A,%PR) ;
 I $A(%A)>95,$A(%A)<123,$D(%HBRY) D
 .I $G(%PR) S %A=$C($A(%A)+128) Q
 .S %A=$C($A($TR(%A,%TES2,%TES1))+128)
 I %A="<"!(%A=">")!(%A=":")!(%A="/")!(%A="!")!(%A="&")!(%A="_") W %LIGHT1,%CV("CF"),%A,%CCL G WCE
 I $G(%FLC)!(%A="""") W %LIGHT1,%CV("CF"),%A,%CCL G WCE
 I %A=")"!(%A="(")!(%A="[")!(%A="]") W %LIGHT1,%CV("CF"),%A,%CCL G WCE
 I %A="," W %LIGHT1,%CV("CF"),%A,%CCL G WCE
 I %A="=" W %LIGHT1,%CV("CF"),%A,%CCL G WCE
 I %A="'" W %LIGHT1,%CV("YF"),%A,%CCL G WCE
 W %A
WCE Q ""
 ;
801 F JJ=0:0 S J=$F(^(I),%SIMB,%OPOZ) Q:J>%KK!(J=0)!(%KK=0)  S %OPOZ=J
 Q
802 S TXT="" S:I=1&'%OPOZ TXT=" NOT" S TXT=TXT_" FOUND" D STR1 G 3:'%OPOZ
 S %OPOZ=%OPOZ-$L(%SIMB)-1
 S %Y=I-U+%Y,%X=%OPOZ-%K+%X,U=I,%K=%OPOZ I %X<RL,%X'<0,%Y<24,%Y>0 G 3
 S L=%OPOZ,R=L+RL-1 G M12^%S2ERG
810 G READ:'%K S C=%K-%X,%K=%K-.1\10*10,%X=%K-C G:%K'<L 3
 S SDV=L-%K D SLEVO S SDV=60 G M12
TAB I '$D(%SIMB) G 910
 S RAZ=%SIMB,J=%K+2 F I=U:1 Q:'$D(^(I))  S J=$F(^(I),RAZ,J) Q:J
 S TXT="" S:'J TXT=" NOT " S TXT=TXT_" FOUND" D STR1 G 3:'J S J=J-$L(RAZ)-1
 S %Y=I-U+%Y,%X=J-%K+%X,U=I,%K=J I %X<RL,%X'<0,%Y<24 G 3
 S L=J,R=L+RL-1 G M12^%S2ERG
910 G READ:%K>330 S C=%K-%X,%K=%K\10+1*10,%X=%K-C G:%K'>R 3
 S SDV=%K-R D SPRAVO S SDV=60,RL=1+R-L,%Y=1 D P S %X=R-L,%K=R G M13
ENDS S S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G 3
ENDL S S=$L(^(U)) G:S<R 3 S SDV=S-R D SPRAVO D P
 S %X=0,%Y=1,RL=1+R-L,%K=L D P
 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 K U1,Y1 S %K=S,%X=%K-L S SDV=60
 G 3
COR K %L1WE S %YY=19,%XX=0 X %POSIC W %chists,"<<LINE ",U,">>" S %S=^(U),%6=20
 ;%L2STR
 D ^%L1WE S ^(U)=%S K %S,%6 I %Y>18 S U1=U,U=U-%Y+1,Y1=%Y S:U<1 U=1 G M12
 D P G 3
PGLN G 3:'L D SLEVO G M12
BK S %K=L,%X=0 G VNIZ
HOME I L>0 S SDV=L D SLEVO S SDV=60 G M12
 S %K=0,%X=0 G 3
PGUP G 3:U'>%Y S U=U-%Y-19 S:U'>0 U=1 G M12
 .S %LABOLD($O(%LABOLD(""),-1)+1)=U
PGRG G 3:L>295 D SPRAVO G M12
SPRAVO S L=L+SDV,U1=U,Y1=%Y,U=U-%Y+1,R=R+SDV Q
REST S %PROG="^%S2ERG" D 18^%S2ERG03 G 3
VNIZE W %vverxe F I=1:1:23 Q:'$D(^(U-%Y+I))  W %vniz
 S:'$D(^(U-%Y+I)) I=I-1
 S U=U-%Y+I,%Y=I,%K=L,%X=0 G M2
DELL X "F I=U:1 Q:'$D(^(I+1))  S ^(I)=^(I+1)" K ^(I) S %X=0,%K=L D P G M2
ADDL G 3:%Y'<23 D VIR S %K=L,%X=0,%Y=%Y+1 D P G 3
ADD G:%K'<$L(^(U))!($L(^(U))=400) READ
 S ^(U)=$E(^(U),1,%K)_" "_$E(^(U),%K+1,400) D V G 3
PGDN G 3:'$D(^(U-%Y+21)) S U=U-%Y+21 G BEG+2
 .S %LABOLD($O(%LABOLD(""),-1)+1)=U
24 S $ZE="" X %chista S %ZT=$ZT
 S ^ZE($P,"%ERG")=%TIP D ^%L1X
241 K ^ZE($P,"%ERG") G:$ZE=""!($ZV'["2.0") BEG X:%TIP="R" ^%ERG(1) Q  ; G BEG
ER24 W !,$ZS D ^%L1C S %PR="" G 24+1
XEC G 24
SAVE S %PROG="^%S2ERG" D 26^%S2ERG03 G 3
KOD F J=1:1:$L(^(U)) S %SMB=$E(^(U),J) I $A(%SMB)<123,$A(%SMB)>96 S $E(^(U),J)=$C($A(%SMB)-32)
 S SDV=0 D SLEVO S SDV=60 G M12
096 G KOD
VVERX G:%Y=1 VIRA S U=U-1,%Y=%Y-1 G M2
VNIZ S U=U+1,%Y=%Y+1 G MAINA:%Y>22,M2
LEVO G READ:'%K I %X>0 S %K=%K-1,%X=%X-1 G 3
 S SDV=1 D SLEVO S SDV=60 G M12
SLEVO S R=R-$S(L>SDV:SDV,1:L),L=$S(L>SDV:L-SDV,1:0) S U1=U,U=U-%Y+1,Y1=%Y Q
SBROS G:^(U)=%SS BK S ^(U)=%SS D V G BK
V S %YY=%Y,%XX=0 X %POSIC W %chists D W(U)
 Q
VVERXE S %K=L,U=U-%Y+1,%X=0,%Y=1 G M2
ENDF D DELAY R *%A:%WAIT D DELAY R *%A:%WAIT F I=U+1:1 Q:'$D(^(I))
 S U=I-20 S:U<1 U=1 S L=0 G M11
BEGF S U=1,L=0 G M11
CHISTS S ^(U)=$E(^S000($P,U),1,%K) W %chists G 3
CHISTE F I=U:-1:1 Q:$E(^(I),1)'=" "&($E(^(I),1)'="")
 S %LAB=$P(^(I)," ",1)
ZGE S TXT=" NUMBER ERASE LINE,BEGIN "_%LAB D STR1 K TXT
 W:U-I'=0 "+",U-I W " <ALL> " U $P:(ECHO:WRAP) R %COLUD U $P:(NOECHO:NOWRAP:ESCAPE) G:%COLUD=0 3
UD I %COLUD="" S ^(U)=$E(^(U),1,%K) D V X %chiste F I=U+1:1 G:'$D(^(I)) 3 K ^(I)
 I %COLUD'?1N.N W *7,"   *** ERROR !" H 2 G ZGE
 I '$D(^(U+%COLUD)) S %COLUD="" G UD
 F I=U:1 Q:'$D(^(I+%COLUD))  S ^(I)=^(I+%COLUD) K ^(I+%COLUD)
 F I1=I:1 Q:'$D(^(I1))  K ^(I1)
 S %X=0,%K=L D P G M2
DEL G:%K>$L(^(U)) READ G:%K=$L(^(U)) 1271
 S ^(U)=$E(^(U),1,%K)_$E(^(U),%K+2,400) D V G 3
1271 G READ:'%K I %X>0 S %K=%K-1,%X=%X-1
 S ^(U)=$E(^(U),1,%K) D V G 3
P S %YY=%Y,%XX=0 X %POSIC X %chiste I $O(^S000($P,1))
 F I=0:1:23-%Y Q:'$D(^(I+U))  D
 .S %YY=I+%Y,%XX=0 X %POSIC D W(I+U) X %XCL W %chists
 D STR1 Q
 ;W %vverxe,%chists Q
MAINA S:'$D(^(U)) ^(U)="" 
 I $D(^S000($P,1)) W $C(27),"E" D W(U) W %vverxe,%chists S %Y=23 G M2
VIRA R ! S U=U-1 D VIR:'U,P:%Y=1 S:%Y>1 %Y=%Y-1 G:$L($G(^(U))) M2
 ;S:C=164 S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G M2
 S S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G M2
VIR F I=U+1:1 Q:'$D(^(I))
 X "F I=I:-1:U+2 S ^(I)=^(I-1)" S U=U+1,^(U)=""
 Q
VIR1 F I=1:1 Q:'$D(^(I))
 X "F I=I+%COLVS-1:-1:U+%COLVS+1 S ^(I)=^(I-%COLVS)"
 X "F I=U+1:1:U+%COLVS S ^(I)=""""" S U=U+1 Q
ERXEC W !,"ERROR = ",$ZE S $ZE=%ZE G 24+1
ERCOM S TXT="ISN'T FUNCTION" D STR1 G 3
STR1 Q:'$D(TXT)  W %vverxe,%chists S %YY=0,%XX=16 X %POSIC D WT^%S2ERG02("YF",TXT) K:'$D(TXT(1)) TXT X %XCL
 Q
FINDS K %SIMB S TXT="SEARCH KEY NOW <TAB>. ENTER STRING FOR SEARCH :" D STR1
 U $P:(ECHO:WRAP) R %SIMB U $P:(NOECHO:NOWRAP:ESCAPE) I %SIMB="" K %SIMB G 3
 I $A(%SIMB)<32 W *7,"  *** ERROR !" H 2 G FINDS
 G 3
ER W "   ??? "_$P($ZE,">")_">",!! K  X ^%ERG K %S2ERG Q
ERRRR D ^%L1C S %XX=0,%YY=23 X %POSIC W %chists,*7,"ERROR:",$ZE,!
 I $ZE["PGMOV" K
 W " NAME ROUTINE :$" K %S2ERG Q
DELAY F %IJK=1:1:10000
 Q
 ;
ERGDOS() ; 
 I $ZDATA("ERGDOS")=1 Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%S2ERG01
%S2ERG01 ; [ 05/15/98  8:02 PM ] [ 07/09/96 10:38 AM ]
1 K %STROKA,%STROKA1,%LAB,%SM,%,%UOLD S %E=0
 G:%TIP'="R" 1111 S TXT="    LABEL <"_$P(^S000($P,1)," ",1)_"> " D STR1^%S2ERG
 U $P:(ECHO) R %STROKA S %UOLD=U
13 I %STROKA="-" W %vverxe,%chists K %UOLD G 3^%S2ERG
 S:%STROKA="" %STROKA=$P(^S000($P,1)," ",1) S %STROKA1=$P(%STROKA,":",1)
 S %=$S(%STROKA1["+":"+",%STROKA1["-":"-",1:" ") S %LAB=$P(%STROKA1,%,1)
 S:%LAB="" %LAB=$P(^(1)," ",1)
 S %LAB=$P(%LAB,"(")
 S %E='(%LAB?1"%".AN!(%LAB?.AN))
 I '%E S %SM=$P(%STROKA1,%,2) S:%SM="" %SM=0 S:%'=" " %SM=%_%SM S %E='(%SM?1"+"1N.N!(%SM?1"-"1N.N)!(%SM?1N.N))
 I %E W *7,"     LABEL ISN'T RIGHT !" H 2 G 1
 I $G(%UOLD) S %LABOLD($O(%LABOLD(""),-1)+1)=%UOLD K %UOLD
 F I=1:1 Q:'$D(^(I))  Q:$P($P(^(I)," ",1),"(")=%LAB
 I '$D(^(I)) W *7,"   LABEL NOT !" H 2 G 1
 I '$D(^(I+%SM)) W *7,"   OFFSET TOO LARGE !" H 2 G 1
 S U=I+%SM,L=0,R=L+%GWUL K %STROKA,%STROKA1,%LAB,%SM,%E,% G M12^%S2ERG
1111 U $P:(ECHO) S TXT="    LINE NUMBER <1> " D STR1^%S2ERG  R %STROKA U $P:(NOECHO:NOWRAP:ESCAPE)
 S:%STROKA="" %STROKA="1" S %UOLD=U
 I %STROKA="-" K %UOLD G 3^%S2ERG
11113 S %LAB=$P(%STROKA,":",1) S:%LAB="" %LAB=1
 S %E='(%LAB?1"+"1N.N!(%LAB?1N.N))
 I %E W *7,"   NUMBER ISN'T RIGHT !" H 2 G 1
 I '$D(^S000($P,%LAB)) W *7,"   NUMBER TOO LARGE !" H 2 G 1
 I $G(%UOLD) S %LABOLD($O(%LABOLD(""),-1)+1)=%UOLD K %UOLD
 S U=%LAB,L=0,R=L+%GWUL K %STROKA,%STROKA1,%LAB,%E G M12^%S2ERG
 Q

%S2ERG02
%S2ERG02 ; [ 08.12.24 13:12 ] [ 30.10.23 09:53 ] [ 13.02.04 10:52 ] 
5 U $P:(ECHO) S TXT="    UPDATE : " D STR1 R %SS G 550:%SS=""
 D WT("YF"," TO : ") R %S  D WT("YF","  VERIFICATION ?(Y/N) ") R YES
 F J=0:0 Q:"DNY"[YES&(YES'="")  R YES
 U $P:(NOECHO:NOWRAP:ESCAPE)
 I "DYdy"[YES S YES="Y" S TXT="UPDATE - Y, NO UPDATE - N, EXIT - ^" D STR1 S Y1=%Y,U1=U D CH1 S TXT="END OF UPDATING. PRESS <ENTER>" D STR1 U $P:(ECHO) R YES S %Y=1,U=U1,%X=0,L=0,RL=(%GWUL+1),R=%GWUL,%K=L K Y1,U1,X1 D P G M2
 I %S'=%SS F J=U:1 Q:'$D(^(J))  S %K1=%K D CH
 D P K %K1 G M2
550 G 3
CH S %PZC=$F(^(J),%SS,%K1) Q:'%PZC
 S ^(J)=$E(^(J),1,%PZC-$L(%SS)-1)_%S_$E(^(J),%PZC,999) S %K1=%PZC-$L(%SS)+$L(%S)
 G CH
CH1 S %PZC=0 I '$D(%PRHBR) S %PZC=%K F J=U:1 Q:'$D(^(J))  S %PZC=$F(^(J),%SS,%PZC) Q:%PZC>0
 I '%PZC!('$D(^(J))) W *7,%vverxe,"  NOT FOUND",%chists H 2 Q
 S %PZC=%PZC-$L(%SS)-1,%Y=%Y+(J-U),%X=%X+(%PZC-%K),U=J,%K=%PZC
 I %X<RL,%X'<0,%Y<24 D CH12,CH13 Q:"^"[%A  s %YY=%Y,%XX=0 X %POSIC W $E(^(U),L+1,R+1),%chists G CH1
 S %XX=0,%YY=1 X %POSIC
 W $E(^(U),1,80),%chists,!,$E(^(U),81,160),%chists,!,$E(^(U),161,240),%chists,!,$E(^(U),241,255),%chists
 S %Y=$L(^(U))\80+3 s %YY=%Y,%XX=0 X %POSIC,%chiste
 S L=0,RL=(%GWUL+1),R=%GWUL
 F I=1:1:23-%Y Q:'$D(^(I+U))  s %YY=I+%Y,%XX=0 X %POSIC W $E(^(I+U),L+1,R+1)
CH11 S %X=%PZC#80,%Y=%PZC\80+1,%K=%PZC D CH12,CH13 Q:"^"[%A
 S %PZC=$F(^(J),%SS,%PZC+$L(%S)+1)
 S %XX=0,%YY=1 X %POSIC W $E(^(U),1,80),%chists,!,$E(^(U),81,160),%chists,!,$E(^(U),161,240),%chists,!,$E(^(U),241,255),%chists I '%PZC H 1 S %Y=1 D P G CH1
 S %PZC=%PZC-$L(%SS)-1
 G CH11
CH12 W:%FLI %vverxe,"+",U,":",$L(^(U)),":",%K+1,":",%Y,":",%X+1,%chists S %YY=%Y,%XX=%X X %POSIC
 Q
CH13 S %FLZ=0 R *%A
 F J1=0:0 S %A=$C(%A) Q:"^NYyn"[%A&(%A'="")  R *%A
 Q:"^"[%A  S:"DYy"[%A %FLZ=1
 I %FLZ S ^(J)=$E(^(J),1,%PZC)_%S_$E(^(J),%PZC+$L(%SS)+1,999) S %K=%PZC+$L(%S)+1,%X=%K-L
 E  S %K=%PZC+$L(%SS)+1,%X=%K-L
 Q
 ;
6;
 ;;S ^AA("S2ERG02","RAZ")=$G(RAZ)
 K %ECHO U $P:(NOECHO:NOWRAP:ESCAPE) S %FL="",%GET="     FIND :++0,16,EE,,,C#"_$G(RAZ)_"++30,E,I" D ^%L1GET S %PZC=%S
 I %PZC="" K RAZ G ERCOM
 S RAZ=%PZC,J=%K+2 I '$D(%PRHBR) F %PZC=U:1 Q:'$D(^S000($P,%PZC))  S J=$F(^(%PZC),RAZ,J) Q:J
 I $D(%PRHBR) F %PZC=U:1 Q:'$D(^(%PZC))  S:%PZC>U J=RL D  I J1&'J0 S J=J1 Q
 .S J1=0,J0=0 F  S J0=$F(^(%PZC),RAZ,J0) S:J0'<J J0=0 Q:'J0  S J1=J0
 I $D(%PRHBR),J=RL!(J=(%K+2)&(%PZC=U)) S J=0
 W:'J *7 W %LIGHT1 S %SAY=$S('J:" NOT",1:"")_" FOUND++0,44,EE++CF,AA" X %XMSG G 3:'J S J=J-$L(RAZ)-1
 S %Y=%PZC-U+%Y,%X=J-%K+%X,U=%PZC,%K=J I %X<RL,%X'<0,%Y<24 G 3
 I %X'<RL!(%X<0&(J-RL>0)) S L=J,R=L+RL-1 G M12
 I %X<0,J-RL<0 S L=0,R=L+RL-1,X1=J,Y1=1 G M12
 S %Y=1,X1=%X G M12
STR1 W %vverxe,%chists S %YY=0,%XX=16 X %POSIC D WT("YF",TXT) K TXT
 Q
P S %YY=%Y,%XX=0 X %POSIC X %chiste
 F I=0:1:23-%Y Q:'$D(^(I+U))  S %YY=I+%Y,%XX=0 X %POSIC W $E(^(I+U),L+1,R+1),%chists
 Q
M2 I '$D(%PRHBR) G M2^%S2ERG
 E  G M2^%S2ERG1
M12 I '$D(%PRHBR) G M12^%S2ERG
 E  G M12^%S2ERG1
3 I '$D(%PRHBR) G 3^%S2ERG
 E  G 3^%S2ERG1
ERCOM G ERCOM^%S2ERG
WT(CV,TXT) X %LIGHT W %CV(CV),TXT X %XCL
 Q
 
 
 

%S2ERG03
%S2ERG03 ; SAVE/REST
18 N C,C1
 U $P:(NOECHO:NOWRAP:ESCAPE) R *C
 I $A($E($ZB))=27 S C="" X "F %JJ=2:1:$L($ZB) S C=C_$A($E($ZB,%JJ))" I $D(%UPRCOD(C)) S C=%UPRCOD(C) G M
 I $C(C)="G"!($C(C)="g") S %NLAB=$O(%LABOLD($G(%NLAB)),-1) G:%NLAB="" EXIT D  S %X=0,%Y=1 G EX
 .S %STROKA=%LABOLD(%NLAB)-1
 .S %LAB=%STROKA+(%TIP="R") S U=%LAB,L=0,R=L+%GWUL,%K=L K %STROKA,%STROKA1,%LAB,%E
 ;
 I $C(C)="L"!($C(C)="j")!($C(C)="l") D ^%S2ERGLP G EXIT:$D(%G)<11 S %COLVS=%G D VIR1 D  N NS F I=1:1:%G S NS=I+U-1 S ^(NS)=$E($G(^(NS))_$G(%G(I)),1,255) D TOP
 .I $G(%PRHBR)'=1 S %K=L,%Y=%Y+1,%X=0 Q
 .S %Y=%Y+1,%X=RL-1,%K=L+%X Q
 ;
 I $C(C)="H"!($C(C)="h")!($C(C)="i") D  S U1=U,Y1=%Y,X1=%X,U=U-%Y+1,%Y=1,%X=0 D @("P"_%PROG) S U=U1,%Y=Y1,%X=X1 K U1,Y1,X1,%PP G EX
 .S %L1WE="" S %YY=19,%XX=0 X %POSIC W %chists,"<<LINE ",U,">>"
 .S %S=^(U),%6=20
 .N %I,%S1,%N S %S1=$P(%S,"^m(",1)
 .F %I=2:1:$L(%S,"^m(") S %N=$P($P(%S,"^m(",%I),")") D
 ..S %TXT="" S:%N %TXT=$G(^m(%N)) S %S1=%S1_""""_%TXT_""""_$P($P(%S,"^m(",%I),")",2,25)
 .S %S=%S1
 .D ^%L1WE ;;I %Y>18 S U1=U,U=U-%Y+1,Y1=%Y S:U<1 U=1
 .S %GET="<ENTER>" D N^%L1GET
 .
 I $C(C)="R"!($C(C)="x")!($C(C)="r") S ^S000($P,U)=$$PEREST(^S000($P,U)) G EX
 ;
 I $C(C)=1 S %LABOLD($O(%LABOLD(""),-1)+1)=U
 ;
 I $C(C)="M"!($C(C)="m")!($C(C)="v") N %PP D  I $D(%PP) S U1=U,Y1=%Y,X1=%X,U=U-%Y+1,%Y=1,%X=0 D @("P"_%PROG) S U=U1,%Y=Y1,%X=X1 K U1,Y1,X1,%PP
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,U,%K,%PP) D ^%L1C
181 .S %GET="LABEL:#8" D VE^%L1GET
 .I %S="?"!(%TO="F7") X "W ! X %chista ZP %S2ERGM" R !!?40,"<ENTER>",Y S %PP="" G 181
 .Q:%S=""
 .S %MACRO=" "_$P($T(@(%S_"^%S2ERGM"))," ",2,255)
 .I '$D(^S000($P,U)) S ^(U)=""
 .I $L(^(U))+$L(%MACRO)'>255 S ^(U)=$E(^(U),1,%K)_%MACRO_$E(^(U),%K+1,255)
 ;
 I $C(C)="W" D
 .D ^%L1TS
 .N I F I=1:1 Q:'$D(^S000($P,I))  S ^(I)=$TR(^(I),TS1,TS0)
 .S L=0,R=L+%GWUL,%K=L
 .S U1=U,Y1=%Y,X1=%X,U=U-%Y+1,%Y=1,%X=0
 G EX
 ;
M I C="ADDL" G EXIT:%Y'<23 S TXT="HOW MANY LINES <3> " D @("STR1"_%PROG) U $P:(ECHO) R %COLVS U $P:(NOECHO:NOWRAP:ESCAPE) S:%COLVS="" %COLVS=3 G:%COLVS'?1N.N EXIT D VIR1 S %K=L,%X=0,%Y=%Y+1 G EX
 G EXIT:$D(%Z)<11 I C="VNIZ" S %COLVS=%Z D VIR1 D  N NS F I=1:1:%Z S NS=I+U-1 S ^(NS)=$E($G(^(NS))_$G(%Z(I)),1,255) D TOP
 .I $G(%PRHBR)'=1 S %K=L,%Y=%Y+1,%X=0 Q
 .S %Y=%Y+1,%X=RL-1,%K=L+%X Q
 ;
 I C="LEVO" N %TOP F I=1:1:%Z S NS=I+U-1 D:'$D(^(NS)) CREATS D GTOP S ^(NS)=%Z(I)_$E($G(^(NS)),%TOP,255) D TOP
 I $G(%PRHBR)=1 G EX
 ;
 I C="PRAVO" F I=1:1:%Z S NS=I+U-1 D:'$D(^(NS)) CREATS S ^(NS)=^(NS)_$J("",%K-$L(^(NS)))_%Z(I) D TOP
 ;
 I C="VVERX" F I=1:1:%Z S NS=I+U-1 D:'$D(^(NS)) CREATS S ^(NS)=$E(^(NS),1,%K)_$J("",%K-$L(^(NS)))_%Z(I)_$E(^(NS),%K+1,999) D TOP
EX D @("P"_%PROG)
EXIT U $P:(NOWRAP:NOECHO:ESCAPE) Q
 ;------------------------- CTRL + Z ------------------------
26 S %GET="SAVE LINE[,COLUMN] <1>#7" D VE^%L1GET S C=%S
 S:C="" C=1 G:C="-" EXIT G 26:C'?.N.",".N
 G:C'=0 260 K %Q S %Q("Z")=" ERASE OLD ARRAY :",%Q("X")=10,%Q("Y")=0 W *13,%chists D ^%S1ASK
 K:YES %Z G EXIT
260 I $D(%Z) S YES=0 F J=0:0 Q:"123"[YES&($L(YES)=1)  S %GET="    OLD ARRAY: ERASE - 1,LOOK  - 2,TO ADD - 3 <1>#1" D VE^%L1GET S YES=%S S:YES="" YES=1
 I $D(%Z) K:YES=1 %Z I YES=2 W # X "F J=1:1 Q:'$D(%Z(J))  W !,%Z(J)" R !!?40,"PRESS <ENTER>",YES S U1=U,Y1=%Y,X1=%X,U=U-%Y+1,%Y=1,%X=0 D @("P"_%PROG) S U=U1,%Y=Y1,%X=X1 K U1,Y1,X1 G 260
 S:'$D(%Z) %Z=0 S I=999.3 S:C["," I=+$P(C,",",2) S C=+C
 F J=1:1:C Q:'$D(^S000($P,U+J-1))  D  S:I'=999.3 %S=%S_$J("",I-$L(%S)) S %Z(%Z+J)=$TR(%S,$C(9)," ")
 .I $G(%PRHBR)'=1 S %S=$E(^(U+J-1),%K,%K+I) Q
 .S %TOP=^(U+J-1,"%TOP") I ^S000($P,U+J-1)
 .I %K+2-I>%TOP S %TOP=%K+2-I
 .S %S=$E(^(U+J-1),%TOP,%K+1) Q
 S %Z=%Z+J-'$D(%Z(%Z+J)) K:'%Z %Z G EXIT
 Q
DELAY ;
 F I=1:1:500
 Q
TOP Q:$G(%PRHBR)'=1
 S SS=$J($E(^(NS),$L(^(NS))-%RMAX+1,255),%RMAX) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 S ^(NS,"%TOP")=II-($E(SS,II)'=" ")
 S ^S000($P,NS)=SS
 Q
VIR1 N I F I=1:1 Q:'$D(^S000($P,I))
 N NS
 F I=I+%COLVS-1:-1:U+%COLVS+1 S ^S000($P,I)=^S000($P,I-%COLVS) I $G(%PRHBR)=1 S ^S000($P,I,"%TOP")=$G(^S000($P,I-%COLVS,"%TOP")) I ^S000($P,I)
 F I=U+1:1:U+%COLVS S NS=I D CREATS
 S U=U+1
 Q
CREATS I $G(%PRHBR)'=1 S ^(NS)="" Q
 S ^(NS)=$J("",%RMAX),^(NS,"%TOP")=%RMAX I ^S000($P,NS)
 Q
GTOP I $G(%PRHBR)'=1 S %TOP=1 Q
 S %TOP=^(NS,"%TOP") I %TOP>(%K+1) S %TOP=%K+1
 I $O(^S000($P,NS))
 Q
PEREST(%S) ;
 N %I,%I0,%FLEQ,%FLKV,%ST,%MP,%ST1,%S1
 S %FLEQ=0,%FLKV=0,%I=0,%I0=1,%ST="",%S1=""
BP S %I=%I+1 I %I>$L(%S) D:$L(%ST) PRST Q %S1
 I $E(%S,%I)="=",%FLKV D:'%FLEQ S1 G:'%FLEQ BP D ST G BP
 I $E(%S,%I)="=",'%FLKV S %FLEQ=1 D S1 G BP
 I '%FLEQ D S1 G BP
 I $E(%S,%I)="""" S %FLKV='%FLKV D ST G BP
 I $E(%S,%I)=" ",%FLKV D ST G BP
 I $E(%S,%I)'=" " D ST G BP
 I $E(%S,%I)=" ",'%FLKV D PRST S %S1=%S1_" " G BP
 Q
ST S %ST=%ST_$E(%S,%I)
 Q
S1 S %S1=%S1_$E(%S,%I)
 Q
PRST ;
 N %J,%J1,%ST3,%ST1,%ST2 S %ST2=""
 I %ST["_" D
 .F %J=1:1:$L(%ST,"_") S %ST1(%J)=$P(%ST,"_",%J)
 .S %J1=1 F %J=1:1 Q:'$D(%ST1(%J))  D
 ..I %ST1(%J)["^m(" S %J1=%J1+1,%ST3(%J1)=%ST1(%J),%J1=%J1+1 Q
 ..S %ST3(%J1)=$G(%ST3(%J1))_%ST1(%J)_"_"
 .S %J1="" F  S %J1=$O(%ST3(%J1)) Q:%J1=""  I $E(%ST3(%J1),$L(%ST3(%J1)))="_" S %ST3(%J1)=$E(%ST3(%J1),1,$L(%ST3(%J1))-1)
 .S %J1=99999 F  S %J1=$O(%ST3(%J1),-1) Q:%J1=""  S %ST2=%ST2_%ST3(%J1)_"_"
 I %ST'["_" S %ST2=%ST_" "
 S %S1=%S1_$E(%ST2,1,$L(%ST2)-1) S %I0=%I S %ST=""
 S %FLEQ=0
 Q

%S2ERG1
%S2ERG1 S %S2ERG="" ;    [ 25.03.19 14:02 ] [ 15.03.19 13:49 ] [ 07.03.19 19:32 ] 
 ; INPUT : RL,%RMAX
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 S %GWUL=78 D ^%L1GRAF
 I '$D(RL) S RL=%GWUL
 I '$D(TXT) S TXT=" CTRL+Y miywn ugl d`ivil "
 I '$D(%RMAX) S %RMAX=%GWUL
 I '$D(%PRHBR) S %PRHBR=1,%HBRY=""
 I RL>%RMAX S %SAY="RL="_RL_"   ,%RMAX="_%RMAX X %XMSGV H 3 W *7 Q
 S %TOP=0 I %PRHBR S %TOP=%RMAX
 U $P:(NOWRAP:NOECHO:ESCAPE)
 W *27,"[1;24r"
BEG D ^%L1TS ;S $ZS="ERRRR^%S2ERG"
M1 K U1 S %FLV=1,%FLGRF=0,%FLI=$S(%PRHBR:1,1:0),%FLH=0,SDV=60 S:'$D(%TIP) %TIP="R"
 S:'$D(U) U=1 S:'$D(L) L=0 I $D(^S000($P,U))
 S:%PRHBR L=%RMAX-RL S R=L+RL-1 G M12
CREATS I '$D(^S000($P,U)) S ^S000($P,U)=$S('%PRHBR:"",1:$J("",%RMAX)) ;S %X=$S(%PRHBR:RL-1,1:0) ;*** LEV
 Q
M12 S %X=$S(%PRHBR:RL-1,1:0),%Y=1  S:%PRHBR %HBRY="" W:%PRHBR %HBR D P D:$D(TXT) STR1
M13 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 S:$D(X1) %X=X1 K U1,Y1,X1
M2 D CREATS S %K=L+%X
M21 I %PRHBR S %TOP=$G(^S000($P,U,"%TOP"),%RMAX) I ^S000($P,U)
 S %SS=^S000($P,U)
3 ;
 ;;I %FLI W %vverxe,"LINE:",U,"   COL:",$S(%PRHBR:%RMAX-(%K+1)+1,1:%K+1),"  LENGTH:",$S(%PRHBR:%RMAX-%TOP,1:$L(^S000($P,U))),"    "
 S %YY=%Y,%XX=%X X %POSIC
 ;READ R *C I $L($ZB)>3,$D(%UPRCOD($ZB)) S C=$ZB G @%UPRCOD($ZB)
READ D ^%L1MSGBR
 I '$D(^S000($P,U)) S ^(U)=""
 U $P:(NOWRAP:NOECHO:ESCAPE)
 R *C:1 E  G READ
 S ZB=""
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $L(ZB)>3,$D(%UPRCOD(ZB)) G @%UPRCOD(ZB)
 ;I C=27 R *C1:%WAIT G:C1=-1 27 R *C:%WAIT G:C=-1 27 S C=C1_C G COM
 ;I C=0 X "F %JJ=1:1:500" R *C1:%WAIT I C1>0 S C="0"_C1
 I %TYPCRT="VT220"&(C=31)!(C="094") D  G M12
 .X "ZL %S2ERGH K ^TMPS111($J) N I,J,T,TH S J=0 F I=2:1 Q:$T(+I)=""""  S T=$T(+I),TH=$E(T,2,4) S:TH=""\R\""!(TH=""\G\"") T="" ""_$P(T,TH,2,20) I TH'=""\R\""&(TH'=""\G\"")!(TH=(""\""_%TIP_""\"")) S J=J+1,^TMPS111($J,J)=T" D
 ..S %SAY=" EXIT FROM HELP - <ESC> " X %XMSGN
 ..N L S L=0 D ^%S2VIEW X %XCL
 .;;S %GET="<ENTER>"  D N^%L1GET D HELP^%L1GRAF S %GET="<ENTER>" D N^%L1GET
 .S U1=U,Y1=%Y,U=U-%Y+1,X1=%X Q
 ;I %TYPCRT="VT220"&(C=30)!(C="099")!(C="097") D ^%S2ERGP S U1=U,Y1=%Y,U=U-%Y+1,X1=%X G M12 ;B  S %FLGRF='%FLGRF S TXT=$S(%FLGRF:" GRAF ",1:" NORMAL ") D STR1 G 3
 I %TYPCRT="VT220"&(C=30)!(C="099")!(C="097") S %FLGRF='%FLGRF S TXT=$S(%FLGRF:" GRAF ",1:" NORMAL ") D STR1 G 3
 ; -----
 I %FLGRF,C=95 S %GLO="^S000($P)",%NS=U,%NP=%K D PERE^%L1PR,P G 3
 I %FLGRF,C=38 S %GLO="^S000($P)",%NS=U,%NP=%K D SCEP^%L1PR,P G 3
COM I $D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" G @%UPRCOD(C)
 I C<127,C>31,'%FLV G READ1
 I C=2 S %NETTO=$$SPA^%L1FRM(^S000($P,U)) S ^S000($P,U)=$J(%NETTO_$J("",%RMAX-$L(%NETTO)\2),%RMAX) S %TOP=$L(%NETTO)+(%RMAX-$L(%NETTO)\2) D V D SVTOP S %X=%RMAX-%TOP-1,%K=L+%X G 3
 G ERCOM:C<32&(C-31)&(C-29)
 ;;I $D(%HBRY),C=46 S C=$S(%XMSG(0)<0:149,1:245)
READ0 I %FLV,(%K<1!(%TOP<2))&%PRHBR!((%K+1)'<%RMAX&'%PRHBR) G 3
 I %FLV,'%PRHBR G:(%K+1)'<$L(^S000($P,U))!($L(^S000($P,U))=%RMAX) READ1 D LINE
 I %FLV,%PRHBR G:(%K+1)'>%TOP READ1 D LINE
READ1 I %PRHBR&(%TOP<1) G READ
 S C=$C(C)
READ2 I %FLGRF S C=$$GRA^%L1GRAF(C)
 I '%PRHBR S ^S000($P,U)=$E(^S000($P,U),1,(%K+1)-1)_$J(C,(%K+1)-$L(^S000($P,U)))_$E(^S000($P,U),(%K+1)+1,%RMAX) W C G PRAVO
 I %PRHBR D  W $$WC(C),*8 S:(%K+1)-1<%TOP %TOP=(%K+1)-1 G LEVO
 .;;S ^S000($P,U)=$E(^S000($P,U),1,(%K+1)-1)_$TR(C,%TES2,%TES1)_$E(^(U),(%K+1)+1,%RMAX) W $TR(C,%TEN,%THB),*8 S:(%K+1)-1<%TOP %TOP=(%K+1)-1 G LEVO
 .S ^S000($P,U)=$E(^S000($P,U),1,%K)_$$SMB^%S2ERG($A(C))_$E(^S000($P,U),%K+2,400)
 W $$WC^%S2ERG(C)
PRAVO G:(%K+1)'<%RMAX 3
 I %X<(RL-1) S %K=%K+1,%X=%X+1 G:%FLI 3 W:$A(C)>127 %pravo G 3
 S SDV=1 D SPRAVO S SDV=60,%K=%K+1,RL=1+R-L,%Y=1 D P G M13
LINE I '%PRHBR S ^(U)=$E(^S000($P,U),1,(%K+1)-1)_" "_$E(^(U),(%K+1),%RMAX) D V S %XX=%X,%YY=%Y X %POSIC Q
 Q:%TOP<2  S ^(U)=$E(^S000($P,U),2,%K+1)_" "_$E(^(U),%K+2,%RMAX) D V S %XX=%X,%YY=%Y X %POSIC S %TOP=%TOP-1
 Q
MET G ^%S2ERG01 ;
27 ;
ESC S %XX=20,%YY=23 X %POSIC W ! X %XCL U $P:(ECHO:WRAP:WIDTH=80) K %S2ERG Q
INS S TXT="INSERT" D STR1 I '%FLV S %FLV=1,%GTV="" H 1 G 3
 I %FLV S %FLV=0 K %GTV S TXT="OVERLAY" D STR1 H 1 G 3
HBR S TXT="HEBREW" D STR1 I '%FLH S %FLH=1 S %HBRY="" W %HBR S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
 I %FLH S %FLH=0 K %HBRY W %ENG S TXT="ENGLISH" D STR1 S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
HELP D ^%S2ERHEL G BEG
2 G 3:%Y'<23 D VIR S %X=$S('%PRHBR:0,1:RL-1),%Y=%Y+1,%K=L+%X D P G 3
MOD G 5^%S2ERG02
FIND D SVTOP G 6^%S2ERG02
IND I %FLI S %FLI=0 S TXT="INDEX OUT" D STR1 H 1 G 3
 S %FLI=1 G 3
TABN G:%PRHBR TAB1
TABN1 G:'$D(%SIMB) 810
 S %KK=%K F I=U:-1:1 S %OPOZ=0 S:U'=I %KK=$L(^(I)) D 801 Q:%OPOZ>0&(%KK>0)
 G 802
801 F JJ=0:0 S J=$F(^(I),%SIMB,%OPOZ) Q:J>%KK!(J=0)!(%KK=0)  S %OPOZ=J
 Q
802 S TXT="" S:I=1&'%OPOZ TXT=" NOT" S TXT=TXT_" FIND" D STR1 H 1 G 3:'%OPOZ
 S %OPOZ=%OPOZ-$L(%SIMB)-1
 S %Y=I-U+%Y,%X=%OPOZ-%K+%X,U=I,%K=%OPOZ I %X<RL,%X'<0,%Y<24,%Y>0 G 3
 S L=%OPOZ,R=L+RL-1 G M12
810 G READ:'%K S C=%K-%X,%K=%K-.1\10*10,%X=%K-C G:%K'<L 3
 S SDV=L-%K D SLEVO S SDV=60 G M12
 G READ
TAB G:%PRHBR TABN1
TAB1 G:'$D(%SIMB) 910
 S RAZ=%SIMB,J=%K+2 F I=U:1 Q:'$D(^(I))  S J=$F(^(I),RAZ,J) Q:J
 S TXT="" S:'J TXT=" NOT " S TXT=TXT_" FIND" D STR1 G 3:'J S J=J-$L(RAZ)-1
 S %Y=I-U+%Y,%X=J-%K+%X,U=I,%K=J I %X<RL,%X'<0,%Y<24 G 3
 S L=J,R=L+RL-1 G M12
910 S C=%K-%X,%K=%K\10+1*10 S:(%K+1)>%RMAX %K=%RMAX-1 S %X=%K-C G:%K'>R 3
 S SDV=%K-R D SPRAVO S SDV=60,RL=1+R-L,%Y=1 D P S %X=R-L,%K=R G M13
ENDS I '%PRHBR S S=$L(^S000($P,U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G 3
 I %PRHBR S %K=$S((%TOP-1)<L:L,(%TOP-1)>R:R,1:%TOP-1),%X=%K-L G 3
ENDL S S=$L(^S000($P,U)) G:S<R 3 S SDV=S-R D SPRAVO D P
 S %X=$S('%PRHBR:0,1:RL-1),%Y=1,RL=1+R-L,%K=L+%X D P
 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 K U1,Y1 S %K=S,%X=%K-L S SDV=60
 G 3
COR K %L1WE S %YY=19,%XX=0 X %POSIC W %chists,"<<LINE ",U,">>" S %S=^S000($P,U),%6=20
 D  S ^S000($P,U)=$S('%PRHBR:"",1:$J("",%RMAX-$L(%S)))_%S,%TOP=%RMAX-$L(%S) D SVTOP K %S,%6 I %Y>18 S U1=U,U=U-%Y+1,Y1=%Y S:U<1 U=1 G M12
 .N (%S,%6,%PRHBR,%RMAX,%GWUL)
 .I %PRHBR S %X1=0,%X2=%GWUL,%Y1=20,%Y2=23,%LS=%RMAX F %II=1:1:$L(%S) Q:$E(%S,%II)'=" "  S %S=$E(%S,%II,255)
 .D ^%L1C D @$S(%PRHBR:"^%L1WH",1:"^%L2ERSTR")
 .Q
 D P G 3
PGLN G 3:'L D SLEVO G M12
BK I '%PRHBR S %K=L,%X=0 G VNIZ
 S %K=R,%X=RL-1 G VNIZ
HOME G:%PRHBR HOMEH I L>0 S SDV=L D SLEVO S SDV=60 G M12
 S %K=0,%X=0 G 3
HOMEH ;
 S %K=(%K+RL-%X-1),%X=RL-1 G 3
PGUP G 3:U'>%Y D SVTOP S U=U-%Y-19 S:U'>0 U=1 G M12
PGRG G 3:(L+1)>(%RMAX-SDV) S:R+SDV>(%RMAX-1) SDV=%RMAX-1-R D SPRAVO S SDV=60 G M12
SPRAVO D SVTOP S L=L+SDV,U1=U,Y1=%Y,U=U-%Y+1,R=R+SDV Q
REST D SVTOP S %PROG="^%S2ERG1" D 18^%S2ERG03 G M21
VNIZE W %vverxe F I=1:1:23 Q:'$D(^(U-%Y+I))  W %vniz
 S:'$D(^(U-%Y+I)) I=I-1
 D SVTOP
 S U=U-%Y+I,%Y=I,%X=$S('%PRHBR:0,1:RL-1),%K=L+%X G M2
DELL F I=U:1 Q:'$D(^S000($P,I+1))  S ^(I)=^(I+1),^S000($P,I,"%TOP")=$G(^S000($P,I+1,"%TOP"))
 K ^S000($P,I) S %X=$S(%PRHBR:RL-1,1:0),%K=L+%X D P G M2
ADDL G 3:%Y'<23 D VIR D CREATS S %Y=%Y+1 D P G M2
ADD G:%K'<$L(^S000($P,U))!($L(^(U))=%RMAX) READ
 S ^(U)=$E(^S000($P,U),1,%K)_" "_$E(^(U),%K+1,%RMAX) D V G 3
PGDN G 3:'$D(^(U-%Y+21)) D SVTOP S U=U-%Y+21 G BEG+2
24 S $ZS="" X %chista S %ZT=$ZT U $P:(ECHO:WRAP:WIDTH=80)
 S ^ZE($P,"%ERG")=%TIP D ^%L1X
241 K ^ZE($P,"%ERG") S:$D(%ZT) $ZT=%ZT  G:$ZS=""!($ZV'["2.0") BEG X:%TIP="R" ^%ERG(1) Q  ; G BEG
ER24 W !,$ZS D ^%L1C S %PR="" G 24+1
XEC G 24
SAVE D SVTOP S %PROG="^%S2ERG1" D 26^%S2ERG03 G M21
KOD F J=1:1:$L(^S000($P,U)) S %SMB=$E(^(U),J) I $A(%SMB)<123,$A(%SMB)>96 S $E(^(U),J)=$C($A(%SMB)-32)
 S SDV=0 D SLEVO S SDV=60 G M12
096 G KOD
VVERX D SVTOP G:%Y=1 VIRA S U=U-1,%Y=%Y-1 G M2
VNIZ D SVTOP S U=U+1,%Y=%Y+1 G MAINA:%Y=24,M2
SVTOP Q:'$D(%PRHBR)  S ^S000($P,U,"%TOP")=%TOP I ^S000($P,U)
 Q
LEVO S:%K=0 %X=0 G READ:'%K I %X>0 S %K=%K-1,%X=%X-1 G 3
 S SDV=1 D SLEVO S SDV=60 D P G M13
SLEVO D SVTOP S L=$S(L>SDV:L-SDV,1:0),R=L+RL-1 S U1=U,U=U-%Y+1,Y1=%Y,%X=0,%Y=1 K X1 Q
SBROS G:^S000($P,U)=%SS BK S ^(U)=%SS D V G BK
V S %YY=%Y,%XX=0 X %POSIC W %chists D W(U) Q
VVERXE D SVTOP S U=U-%Y+1,%X=$S('%PRHBR:0,1:RL-1),%Y=1,%K=L+%X G M2
CHISTS I '%PRHBR S ^(U)=$E(^S000($P,U),1,%K) W %chists G 3
 S ^(U)=$J("",%K+1)_$E(^S000($P,U),%K+2,$L(^(U))) S %XX=0,%YY=%Y X %POSIC W $J("",%K+1) S %TOP=%K+1 G 3
CHISTE F I=U:-1:1 Q:$E(^(I),1)'=" "&($E(^(I),1)'="")
 S %LAB=$P(^(I)," ",1)
ZGE S TXT=" NUMBER ERASE LINE,BEGIN "_%LAB D STR1 K TXT
 W:U-I'=0 "+",U-I W " <ALL> " U $P:(ECHO:WRAP) R %COLUD  G:%COLUD=0 3
UD I %COLUD="" S ^(U)=$E(^S000($P,U),1,%K) D V X %chiste F I=U+1:1 G:'$D(^(I)) 3 K ^(I)
 I %COLUD'?1N.N W *7,"   *** ERROR !" H 2 G ZGE
 I '$D(^(U+%COLUD)) S %COLUD="" G UD
 F I=U:1 Q:'$D(^S000($P,I+%COLUD))  S ^(I)=^(I+%COLUD) S ^S000($P,I,"%TOP")=^S000($P,I+%COLUD,"%TOP") K ^S000($P,I+%COLUD)
 F I1=I:1 Q:'$D(^S000($P,I1))  K ^(I1)
 S %X=$S('%PRHBR:0,1:RL-1),%K=L+%X D P G M2
DEL ;
 I '%PRHBR G:%K>$L(^S000($P,U)) READ G:%K=$L(^(U)) 1271
 I '%PRHBR S ^(U)=$E(^S000($P,U),1,%K)_$E(^(U),%K+2,%RMAX) D V G 3
 ;------ %PRHBR
 G:%TOP'<%RMAX!(%K>R)!((%K+1)<%TOP) READ I (%K+1)=%TOP S ^S000($P,U)=$J("",%K+2)_$E(^S000($P,U),%K+3,%RMAX) D V S %K=%K+1,%X=%X+1,%TOP=%TOP+1 G 3
 S ^(U)=" "_$E(^S000($P,U),1,%K)_$E(^(U),%K+2,%RMAX) D V S %TOP=%TOP+1 G 3
1271 G READ:'%K I %X>0 S %K=%K-1,%X=%X-1
 S ^(U)=$E(^S000($P,U),1,%K) D V G 3
P S %YY=%Y,%XX=0 X %POSIC X %chiste W:%PRHBR!%FLH %HBR
 F I=0:1:23-%Y Q:'$D(^S000($P,I+U))  S %YY=I+%Y,%XX=0,$X=0 X %POSIC D W(I+U) W %chists
 W %vverxe,%chists Q
MAINA D CREATS
 I $D(^S000($P,1)) D W(U) W %vverxe,%chists S %Y=23 G M2
VIRA R ! S U=U-1 D VIR:'U,P:%Y=1 S:%Y>1 %Y=%Y-1 G M2
VIR F I=U+1:1 Q:'$D(^(I))
 F I=I:-1:U+2 S ^S000($P,I)=^S000($P,I-1) I %PRHBR S ^S000($P,I,"%TOP")=^S000($P,I-1,"%TOP")
 S U=U+1 K ^S000($P,U) D CREATS
 Q
W(U) ; 
 D W^%S2ERG(U)
 Q
 N ST S ST=$E(^S000($P,U),L+1,R+1)
 I '$D(%HBRY) W ST Q
 I %TYPCRT["VT" W $TR($TR(ST,%TES1,%TES2),%TEN,%THB) Q
 ;
 I %TYPCRT["PC" D  Q  ;; -- ZOC !
 .N STO S STO=$E(ST,L+1,R+1)
 .N JJ F JJ=1:1:$L(STO) D
 ..N SMB S SMB=$E(STO,JJ)
 ..W $$WC(SMB,1) Q
 ;;I $A(SMB)<96!($A(SMB)>122) W SMB Q
 ;;N A S A=$TR(SMB,%TES1,%TES2)
 ;;W $C($A(A)+128)
 Q
 ;
WC(%A,%PR) ;
 I $D(%HBRY),%A="," Q $C(250)
 I $D(%HBRY),%A="." Q $C(245)
 I $A(%A)>95,$A(%A)<123,$D(%HBRY) D
 .I $G(%PR) S %A=$C($A(%A)+128) Q
 .S %A=$C($A($TR(%A,%TES2,%TES1))+128)
 Q %A
 ;
MDRG ;
 I %PRHBR D  S ^(U)=$E(^S000($P,U),$L(%S)+1,(%K+1))_%S_$E(^S000($P,U),(%K+2),255) S %TOP=%TOP-$L(%S) D SVTOP S Y1=%Y,U1=U,X1=%X-$L(%S),U=U-%Y+1,%Y=1 G M12
 .S %S="" Q:%K'>1
 .S:(%K+1)-1<%TOP %TOP=(%K+1)-1 S %X=%K-L
 .S %XX=%X,%YY=%Y
 .S %LS=%XX I %LS>%TOP S %LS=%TOP Q:%LS'>0
 .N (%YY,%XX,%XMSG,%UPRCOD,%S,U,%RMAX,%LS) D ^%L1C
 .S %GET="++"_%YY_","_$S(%XX'<%LS:%XX-%LS+1,1:0)_"#++"_%LS_",E,I" D ^%L1GET
 ; .S %K=$S((%TOP-1)<L:L,(%TOP-1)>R:R,1:%TOP-1),%X=%K-L
 I '%PRHBR D  S ^(U)=$E(^S000($P,U),1,(%K+1)-1)_%S_$E(^S000($P,U),(%K+1),255) S Y1=%Y,U1=U,X1=%X,U=U-%Y+1,%Y=1 G M12
 .S S=$L(^S000($P,U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L
 .S %XX=%X,%YY=%Y
 .N (%YY,%XX,%XMSG,%UPRCOD,%S,RL,U,%RMAX) D ^%L1C
 .S %S="" S %LL=$S(%RMAX-$L(^S000($P,U))>(RL-%XX):RL-%XX-1,1:%RMAX-$L(^S000($P,U))-1) Q:%LL<1
 .S %GET="++"_%YY_","_RL_"#++"_$S(%RMAX-$L(^S000($P,U))>(RL-%XX):RL-%XX-1,1:%RMAX-$L(^S000($P,U))-1)_",H,I" D ^%L1GET
ERXEC W !,"ERROR = ",$ZS S $ZS=%ZE G 24+1
ERCOM S TXT="ISN'T FUNCTION" D STR1 G 3
STR1 W %vverxe,%chists W %CLI S %YY=0,%XX=(RL-$L(TXT))\2+10 X %POSIC W $TR($TR(TXT,%TES1,%TES2),%TEN,%THB) X %XCL Q
FINDS K %SIMB S TXT="SEARCH KEY <TAB>. INPUT SIMBOL (<ENTER> - END SEARCH):" D STR1
 U $P:(ECHO:WRAP) R %SIMB  I %SIMB="" K %SIMB G 3
 I $A(%SIMB)<32 W *7,"  *** ERROR !" H 2 G FINDS
 G 3
ER W "   ???" X ^%ERG K %S2ERG Q
ERRRR D ^%L1C S %XX=0,%YY=23 X %POSIC W %chists,*7,"ERROR:",$ZS,!
 W " 'X ^%ERG' AND '$'" K %S2ERG Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%S2ERGA
%S2ERGA ; [ 11/30/98 11:58 AM ] [ 05/16/98  8:24 AM ] [
 Q
 D ^%L1C X %chista W %LIGHT1,%CV("YF") W !!!
 N I F I=1:1 S T=$P($T(TXT+I),";",2,25) Q:T["Q;"  W T,!
 X %XCL Q
TXT ;
 ;   Hello ! My name is Lev Fainstein . I'm glad to present to You
 ; my version of full screen editor. MSM version of full screen editor
 ; (X ^%E) it isn't useful in my opinion. Other version (X ^%G) is much better,
 ; but it isn't work properly on dumb terminals .
 ;   If You'll decide that my version is suitable, You can send message to
 ; e-mail rsd@netvision.net.il .
 ;   If You'll want to get full version of this editor that include built-in
 ; full-screen programm manager, built-in msm-shell, progamm viewer ,
 ; possibility to transfer part of one programm to another (even in other
 ; UCI) , technical support and new versions of programm please send
 ; 30$ USA (cash) by address :
 ;
 ;  Hagvura 15/30, Qyriat-Gat , Israel , 82000
 ;        Lev Fainstein
 Q  ;Q;

%S2ERGH
%S2ERGH ; [ 06/15/98 11:20 AM ] [ 05/16/98 11:01 AM ] [ 05/15/98  8:18 PM ]
 ; FOR PROPERLY WORK OF EDITOR YOU NEED TO DO SETTINGS IN MANAGER UCI :
 ; S ^%TYPCRT(+$G(@$$^W4DEVI@($P)))="PC" - FOR CONSOLE OR WINDOW
 ; S ^%TYPCRT(+$G(@$$^W4DEVI@($P)))="VT520" - FOR TERMINALS FROM VT420 OR BETTER
 ; S ^%TYPCRT(+$G(@$$^W4DEVI@($P)))="VT220" - FOR TERMINALS VT220,VT320
 ; FOR COLORS MONITOR SET ^%CVET($P)=1
 ; SET GLOBAL PROTECTION FOR GLOBAL ^%ERGS TO "RWD" (SYSTEM,WORLD,GROUP,USER)
 =========================== CURSOR MOVING COMMANDS ==========================
 ;
 UP, DOWN, LEFT, RIGHT ARROWS , <PGUP> , <PGDN> - USUAL
 <CTRL>+"^" = <PGUP>
 <CTRL>+"N" = <PGDN>
 MOVE CURSOR TO END OF SCREEN LINE         : <END> OR <CTRL>+"]"
 MOVE CURSOR TO BEGIN OF SCREEN LINE       : <ENTER> + <UP ARROW>
 MOVE CURSOR TO BEGIN OF LINE              : <HOME>
 \R\MOVE CURSOR TO LABEL OR
 \R\               LABEL+OFFSET,LABEL-OFFSET  : <CTRL>+"G"
 \G\MOVE CURSOR TO LINE #N                    : <CTRL>+"G" AND #N
 TEN CHARACTERS TO RIGHT                   : <TAB>
 TEN CHARACTERS TO LEFT                    : <SHIFT>+<TAB>
 60 CHARACTERS TO RIGHT                    : <CTRL>+"P"
 60 CHARACTERS TO LEFT                     : <CTRL>+"L"
 END OF SCREEN                             : <CTRL>+"T"
 LAST SCREEN                               : <CTRL>+<END>
                                           :
 FIRST SCREEN                              : <CTRL>+"G" AND <ENTER>
                                           :
 FIND A STRING                             : <F8> (OR <CTRL>+"F") + STRING
                                             IF STRING="" - REPEAT LAST FIND
 TAB-SEARCH                                : <CTRL>+<->+<STRING>
                                              SEARCHING FORWARD - <TAB>
                                              SEARCHING BACKWARD-<SHIFT>+<TAB>
                                              IF STRING="" - CANCEL TAB-SEARCH
                                           :
 ADD BOOK-MARK                             : <CTRL>+"R" THEN "1"
 BACK TO BOOK-MARK                         : <CTRL>+"R" THEN "G"
 ;
 ============================== EDITING COMMANDS =============================
 ;
 OPEN A NEW LINE                           : <F5> OR <CTRL>+<V>
 INSERT/OVERLAY EDITING MODE               : <INSERT>
 INSERT SPACE                              : <CTRL>+"W"
 EDIT A ENTIRE LINE                        : <F7> OR <CTRL>+<K>
 UPDATE STRING TO ANOTHER                  : <CTRL>+"E"
 INSERT MACRO-STRING                       : <CTRL>+"R" THEN "M" AND LABEL FROM
                                                       ROUTINE %S2ERGM
 RESTORE A MODIFIED LINE                   : <F3>
 \R\INSERT MULTI-LEVEL LOOP WITH GLOBAL       : <CTRL>+"R" THEN "L"
 ;
 ============================== DELETE COMMANDS ==============================
 ;
 DELETE A LINE                             : <F6> OR <CTRL>+<U>
 DELETE A SYMBOL                           : <BS> OR <DEL>
 ERASE FROM CURSOR TO END OF LINE          : <F1> OR <CTRL>+"\"
 DELETE GROUP OF LINES                     : <F2>
 ;
 ============================== COPY/PASTE COMMANDS ==========================
 ;
 SAVE GROUP OF LINES                       : <F9> OR <CTRL>+"Z"
 RESTORE GROUP OF LINES                    : <F10>(OR <CTRL>+"R")
                                         + <DOWN ARROW> - UNDER CURRENT LINE
                                         + <RIGHT ARROW> - TO END OF LINES
                                         + <UP ARROW>    - TO CURSOR PLACE
 ;
 ============================= MISCELLANEOUS COMMANDS ========================
 ;
 TURN ON/OFF AT INDICATION
 IN FORM <LINE:LENGTH:POSITION:Y:X>        : <F4>
 BUILT-IN MSM-SHELL (FULL VERSION ONLY)    : <CTRL>+"X"
 \R\BUILT-IN PROGRAMM MANAGER (FULL VERSION
 \R\ONLY)                                     : IN "ROUTINE NAME" FIELD
                                             ENTER "*" OR PART OF ROUTINE NAME
                                             AND "*" OR "?"
 \R\VIEW OTHER PROGRAMMS  (FULL VERSION ONLY) : IN BUILT-IN MSM-SHELL ENTER "V"
 =============================================================================
 EXIT FROM EDITOR                          : <ESC> OR <CTRL>+"Y"

%S2ERGJ
%S2ERGJ ; [ 05.01.08 10:54 ] [
 R !!,"DAYS :",DAYS
 S FL="ls"_$J
 ZSY "ls -l "_^[$$^W3MAIN]W3MAIN("WEBL")_" *.jsp > "_FL
 O FL:(REWIND)
 F  U FL R A Q:$ZEOF  D
 .S A=$$SPA^%L1FRM(A)
 .S A=$$SP1^%L1FRM(A)
 .S DAT=$P(A," ",6),PROG=$P(A," ",8)
 .S DT=$P(DAT,"-",3)_"/"_$P(DAT,"-",2)_"/"_$E(DAT,3,4)
 .S DT=$$^%L1DC(DT,3)
 .I DT<($H-DAYS) Q
 .U 0 W $$^%L1DC(DT,1)," ",PROG,!
 C FL
 Q

%S2ERGLP
%S2ERGLP ; [ 02/24/93  6:13 PM ]
 N (%G,%UPRCOD,%XMSGV,%XMSGN,%XMSG) D ^%L1C N $ZT S ZT=$ZT S $ZT="ZG "_$ZL_":ER^%S2ERGLP"
GB K %G S %GET="GLOBAL:^++0,1,EE,,,C#++20,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 I $E(%S)'="^" S %S="^"_%S
 S %S2GLB=%S S %S2LB="GB" I $D(@%S2GLB)
GB1 I %S2GLB'["(" S %S2GLB=%S2GLB_"("
 I $E(%S2GLB,$L(%S2GLB))=")" S %S2GLB=$E(%S2GLB,1,$L(%S2GLB)-1)_","
IN S %GET="INDEXES:++0,32,EE#++20,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") GB
 S %S2IND=%S S %S2LB="IN" I $D(@(%S2GLB_%S2IND_")"))
IN1 F %S2UR=1:1:$L(%S2IND,",") D
 .S %S2GLBU=%S2GLB_$P(%S2IND,",",1,%S2UR)_")"
 .S %S2INDU=$P(%S2IND,",",%S2UR)
 .S %G(%S2UR)=" "_$TR($J("",%S2UR-1)," ",".")_"S "_%S2INDU_"="""" F  S "_%S2INDU_"=$O("_%S2GLBU_") Q:"_%S2INDU_"=""""  D"
 S %G=$L(%S2IND,",")
 S $ZT=ZT Q
ER I $ZS["SYNTX"!($ZS["INDER") S $ZT="ZG "_$ZL_":ER" D  G @%S2LB
 .S %SAY=" ERROR !++0,70,EE,I" W *7 X %XMSG H 2 S %SAY="        ++0,70,EE,I" W *7 X %XMSG
 S $ZT="ZG "_$ZL_":ER" G @(%S2LB_1)

%S2ERGM
%S2ERGM ; [ 07/15/96 12:46 PM ]
CA X %chista
Q Q:%S=""!($G(%TO)="END")
G S %GET=" ++,,HH#++,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
GN S %GET=" " D N^%L1GET Q:%S=""!($G(%TO)="END")
S S %SCRN="",(%SCVA,%SCVG)=1 D A^%L1SC K %SCVA,%SCVG S %FNAME="",FRST=1
NU S MAC=" " K %L1 S %L1("EU")=1,%L1("BE")=6
N N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
AE K %Q S %Q("Z")="",%Q("U")="N" D ^%S1ASK I YES
A K %Q S %Q("Z")="",%Q("X")="",%Q("Y")="",%Q("U")="" D ^%S2ASK I YES
D S %GET=":jix`z++3,70,HH#"_$TR($$^%L1DC($H,1),"/.","")_"++8,D,I" D ^%L1GET Q:%S=""!($G(%TO)="END")

%S2ERGN
%S2ERG ; [ 02/11/92 11:50 AM ]
BEG S $ZS="ERRRR^%S2ERG"
M1 K U1,Y1 S %FLV=1,%FLI=0,%FLH=0,SDV=60 S:'$D(%TIP) %TIP="R"
 S:'$D(U) U=1 S:'$D(^S000($P,U)) ^S000($P,U)="" S:'$D(L) L=0 S:'$D(R) R=L+%GWUL
M12 S %X=0,%Y=1,RL=1+R-L,%K=L D P
M13 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 S:$D(X1) %X=X1 S %K=L+%X K U1,Y1,X1
M2 I '$D(^(U)) S ^(U)=""
 S %SS=^(U) U $P:(NOECHO:NOWRAP)
3 W:%FLI %vverxe,"+",U,":",$L(^(U)),":",%K+1,":",%Y,":",%X+1;,%chists
 S %YY=%Y,%XX=%X X %POSIC
READ R *C I $L($ZB)=4,$D(%UPRCOD($ZB)) S C=$ZB G @%UPRCOD($ZB)
 I C=27 R *C1:0 G:C1=-1 27 R *C:0 G:C=-1 27 S C=C1_C G COM
 I C=0 R *C1:0 I C1>0 S C="0"_C1
COM I $D(%UPRCOD(C)) G @%UPRCOD(C)
 I C<127,C>31,'%FLV G READ1
 G ERCOM:C<32&(C-31)&(C-29)
READ0 I %FLV G:%K'<$L(^(U))!($L(^(U))=255) READ1 S ^(U)=$E(^(U),1,%K)_" "_$E(^(U),%K+1,255) D V S %XX=%X,%YY=%Y X %POSIC
READ1 S ^(U)=$E(^(U),1,%K)_$J($C(C),%K-$L(^(U))+1)_$E(^(U),%K+2,255) W *C
PRAVO I %X<(RL-1) S %K=%K+1,%X=%X+1 G:%FLI 3 W:C>127 %pravo G READ
 S SDV=1 D SPRAVO S SDV=60,%K=%K+1,RL=1+R-L,%Y=1 D P G M13
MET G ^%S2ERG01 ;
ESC S %XX=20,%YY=23 X %POSIC W ! U $P:(CENABLE) X %XCL U $P:(ECHO:WRAP:WIDTH=80) Q
INS S TXT="INSERT" D STR1 I '%FLV S %FLV=1,%GTV="" H 1 G 3
 I %FLV S %FLV=0 K %GTV S TXT="OVERLAY" D STR1 H 1 G 3
HBR S TXT="HEBREW" D STR1 I '%FLH S %FLH=1 S %HBRY="" W %HBR S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
 I %FLH S %FLH=0 K %HBRY W %ENG S TXT="ENGLISH" D STR1 S X1=%X,Y1=%Y,U1=U S U=U-%Y+1 G M12
HELP D ^%S2ERHEL G BEG
2 G 3:%Y'<23 D VIR S %K=L,%X=0,%Y=%Y+1 D P G 3
MOD G 5^%S2ERG02
FIND G 6^%S2ERG02
IND I %FLI S %FLI=0 S TXT="INDEX OUT" D STR1 H 1 G 3
 S %FLI=1 G 3
TABN G:'$D(%SIMB) 810 S %KK=%K F I=U:-1:1 S %OPOZ=0 S:U'=I %KK=$L(^(I)) D 801 Q:%OPOZ>0&(%KK>0)
 G 802
801 F JJ=0:0 S J=$F(^(I),%SIMB,%OPOZ) Q:J>%KK!(J=0)!(%KK=0)  S %OPOZ=J
 Q
802 S TXT="" S:I=1&'%OPOZ TXT=" NOT" S TXT=TXT_" FIND" D STR1 H 1 G 3:'%OPOZ
 S %OPOZ=%OPOZ-$L(%SIMB)-1
 S %Y=I-U+%Y,%X=%OPOZ-%K+%X,U=I,%K=%OPOZ I %X<RL,%X'<0,%Y<24,%Y>0 G 3
 S L=%OPOZ,R=L+RL-1 G M12^%S2ERG
810 G READ:'%K S C=%K-%X,%K=%K-.1\10*10,%X=%K-C G:%K'<L 3
 S SDV=L-%K D SLEVO S SDV=60 G M12
TAB I '$D(%SIMB) G 910
 S RAZ=%SIMB,J=%K+2 F I=U:1 Q:'$D(^(I))  S J=$F(^(I),RAZ,J) Q:J
 S TXT="" S:'J TXT=" NOT " S TXT=TXT_" FIND" D STR1 G 3:'J S J=J-$L(RAZ)-1
 S %Y=I-U+%Y,%X=J-%K+%X,U=I,%K=J I %X<RL,%X'<0,%Y<24 G 3
 S L=J,R=L+RL-1 G M12^%S2ERG
910 G READ:%K>230 S C=%K-%X,%K=%K\10+1*10,%X=%K-C G:%K'>R 3
 S SDV=%K-R D SPRAVO S SDV=60,RL=1+R-L,%Y=1 D P S %X=R-L,%K=R G M13
END S S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G 3
ENDL S S=$L(^(U)) G:S<R END S SDV=S-R D SPRAVO D P
 S %X=0,%Y=1,RL=1+R-L,%K=L D P
 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 K U1,Y1 S %K=S,%X=%K-L S SDV=60
 G 3
COR S %YY=19,%XX=0 X %POSIC W %chists,"<<LINE ",U,">>" S %S=^(U),%6=20
 D ^%L2ERSTR S ^(U)=%S K %S,%6 I %Y>18 S U1=U,U=U-%Y+1,Y1=%Y S:U<1 U=1 G M12
 D P G 3
PGLN G 3:'L D SLEVO G M12
BK S %K=L,%X=0 G VNIZ
HOME I L>0 S SDV=L D SLEVO S SDV=60 G M12
 S %K=0,%X=0 G 3
PGUP G 3:U'>%Y S U=U-%Y-19 S:U'>0 U=1 G M12
PGRG G 3:L>195 D SPRAVO G M12
SPRAVO S L=L+SDV,U1=U,Y1=%Y,U=U-%Y+1,R=R+SDV Q
REST G 18^%S2ERG03
VNIZE W %vverxe F I=1:1:23 Q:'$D(^(U-%Y+I))  W %vniz
 S:'$D(^(U-%Y+I)) I=I-1
 S U=U-%Y+I,%Y=I,%K=L,%X=0 G M2
DELL X "F I=U:1 Q:'$D(^(I+1))  S ^(I)=^(I+1)" K ^(I) S %X=0,%K=L D P G M2
ADDL G 3:%Y'<23 D VIR S %K=L,%X=0,%Y=%Y+1 D P G 3
ADD G:%K'<$L(^(U))!($L(^(U))=255) READ
 S ^(U)=$E(^(U),1,%K)_" "_$E(^(U),%K+1,255) D V G 3
PGDN G 3:'$D(^(U-%Y+21)) S U=U-%Y+21 G BEG+2
24 S $ZS="" X %chista S %ZT=$ZT U $P:(ECHO:WRAP:WIDTH=80)
 S ^ZE($P,"%ERG")=%TIP D ^%L1X
241 K ^ZE($P,"%ERG") S:$D(%ZT) $ZT=%ZT G:$ZS="" BEG X:%TIP="R" ^%ERG(1) Q  ; G BEG
ER24 W !,$ZS D ^%L1C S %PR="" G 24+1
XEC G 24
SAVE G 26^%S2ERG03
KOD F J=1:1:$L(^(U)) S %SMB=$E(^(U),J) I $A(%SMB)<123,$A(%SMB)>96 S $E(^(U),J)=$C($A(%SMB)-32)
 S SDV=0 D SLEVO S SDV=60 G M12
096 G KOD
VVERX G:%Y=1 VIRA S U=U-1,%Y=%Y-1 G M2
VNIZ S U=U+1,%Y=%Y+1 G MAINA:%Y=24,M2
LEVO G READ:'%K I %X>0 S %K=%K-1,%X=%X-1 G 3
 S SDV=1 D SLEVO S SDV=60 G M12
SLEVO S R=R-$S(L>SDV:SDV,1:L),L=$S(L>SDV:L-SDV,1:0) S U1=U,U=U-%Y+1,Y1=%Y Q
SBROS G:^(U)=%SS 13 S ^(U)=%SS D V G 13
V S %YY=%Y,%XX=0 X %POSIC W %chists,$E(^(U),L+1,R+1) Q
VVERXE S %K=L,U=U-%Y+1,%X=0,%Y=1 G M2
CHISTS S ^(U)=$E(^(U),1,%K) W %chists G 3
CHISTE F I=U:-1:1 Q:$E(^(I),1)'=" "&($E(^(I),1)'="")
 S %LAB=$P(^(I)," ",1)
ZGE S TXT=" NUMBER ERASE LINE,BEGIN "_%LAB D STR1 K TXT
 W:U-I'=0 "+",U-I W " <ALL> " U $P:(ECHO) R %COLUD G:%COLUD=0 3
UD I %COLUD="" S ^(U)=$E(^(U),1,%K) D V X %chiste F I=U+1:1 G:'$D(^(I)) 3 K ^(I)
 I %COLUD'?1N.N W *7,"   *** ERROR !" H 2 G ZGE
 I '$D(^(U+%COLUD)) S %COLUD="" G UD
 F I=U:1 Q:'$D(^(I+%COLUD))  S ^(I)=^(I+%COLUD) K ^(I+%COLUD)
 F I1=I:1 Q:'$D(^(I1))  K ^(I1)
 S %X=0,%K=L D P G M2
DEL G:%K>$L(^(U)) READ G:%K=$L(^(U)) 1271
 S ^(U)=$E(^(U),1,%K)_$E(^(U),%K+2,255) D V G 3
1271 G READ:'%K I %X>0 S %K=%K-1,%X=%X-1
 S ^(U)=$E(^(U),1,%K) D V G 3
P S %YY=%Y,%XX=0 X %POSIC X %chiste I $O(^S000($P,1))
 F I=0:1:23-%Y Q:'$D(^(I+U))  S %YY=I+%Y,%XX=0 X %POSIC W $E(^(I+U),L+1,R+1),%chists
 W %vverxe,%chists Q
MAINA S:'$D(^(U)) ^(U)=""  I $D(^S000($P,1)) W $C(27),"E",$E(^(U),L+1,R+1),%vverxe,%chists S %Y=23 G M2
VIRA R ! S U=U-1 D VIR:'U,P:%Y=1 S:%Y>1 %Y=%Y-1
 S:C=164 S=$L(^(U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G M2
VIR F I=U+1:1 Q:'$D(^(I))
 X "F I=I:-1:U+2 S ^(I)=^(I-1)" S U=U+1,^(U)=""
 Q
VIR1 F I=1:1 Q:'$D(^(I))
 X "F I=I+%COLVS-1:-1:U+%COLVS+1 S ^(I)=^(I-%COLVS)"
 X "F I=U+1:1:U+%COLVS S ^(I)=""""" S U=U+1 Q
ERXEC W !,"ERROR = ",$ZS S $ZS=%ZE G 24+1
ERCOM S TXT="ISN'T FUNCTION" D STR1 G 3
STR1 W %vverxe,%chists S %YY=0,%XX=10 X %POSIC W TXT K TXT Q
FINDS K %SIMB S TXT="SEARCH KEY <TAB>. INPUT SIMBOL (<ENTER> - END SEARCH):" D STR1
 U $P:(ECHO) R %SIMB I %SIMB="" K %SIMB G 3
 I $A(%SIMB)<32 W *7,"  *** ERROR !" H 2 G FINDS
 G 3
ER W "   ???" I $ZV["2.0" X ^%ERG Q
ERRRR D ^%L1C S %XX=0,%YY=23 X %POSIC W %chists,*7,"ERROR:",$ZS,!
 W " 'X ^%ERG' AND '$'" Q

%S2ERGP
%S2ERGP ; [ 02/20/94 11:58 AM ]
 X %chista
 D HELP
B U $P:(ECHO:WRAP:WIDTH=80) R !!,"COD SIMBOL (?,?? - HELP)> ",%KODSMB G:%KODSMB="" END
 I %KODSMB="?" D HELP G B
 I %KODSMB="??" D HELP1 G B
 W $C(%KODSMB)
 R "  PRESS KEY > ",*%KEY G:%KEY=13 B
 I %KEY>31&(%KEY<160) W !,*7,"*** COD (",%KEY,") IS THE SIMBOL KOD ",$C(%KEY) S %Q("Z")="DO" D ^%S1ASK G:'YES B
 I $D(%UPRCOD(%KEY))#2 W !,*7,"*** COD (",%KEY,") USE IN EDITOR COMMAND ",%UPRCOD(%KEY) S %Q("Z")="DO" D ^%S1ASK G:'YES B
 S ^%MKOD(%KEY)=%KODSMB
 G B
END S %Q("Z")="ERASE ALL UPDATE COD",%Q("U")="N" D ^%S1ASK
 I YES K ^%MKOD
 U $P:(NOECHO:NOWRAP)
 Q
HELP ;
 W !! F I=176:1:191 W "   ",$C(I)
 W ! F I=176:1:191 W $J(I,4)
 W !! F I=192:1:207 W "   ",$C(I)
 W ! F I=192:1:207 W $J(I,4)
 W !! F I=208:1:223 W "   ",$C(I)
 W ! F I=208:1:223 W $J(I,4)
 X %XCL Q
HELP1 N N S N="" W !!
 F I=1:1 S N=$O(^%MKOD(N)) Q:N=""  W:'(I#6) !! W $C(N)," ",$C(^(N)),"      "
 W !
 Q

%S2ERGS
%S2ERGS ; [ 03.03.21 10:34 ] [ 06.07.03 09:03 ] [ 21.05.03 12:37 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S RPCL=48,RCRT=20 K ^TMPS111($J)
 U $P:(NOECHO:NOWRAP)
 D ^%L1CERGS
Z0 W #!!,"DEVICE (0,3):" S %S="0",%LS=1,CIST="03" D ^%ZMSL Q:%S=""  S USTR=%S
Z1 W !!,"PERIOD (DAYS) :" S %S="0",%LS=3 D ^%ZMSL G:$G(%TO)="END" Z0
 G:%S="" Z0 I %S="?" W !?3,"ENTER NUMBER OF DAYS TO BACK FROM TODAY ( 0 - TODAY) " G Z1
 I %S'?1N.N W *7,"   ???" G Z1
 S DAY=%S
Z2 S UCI=0
Z3 S %S="" W !!,"PROGRAMM NAME <ALL> :" D ^%ZMSL G:$G(%TO)="END" Z2
 S PROG=%S I $E(PROG,$L(PROG))="*" S PROG=$E(PROG,1,$L(PROG)-1)
 E  S PROG=PROG_" "
Z4 ;
 S DAT1=+$H-DAY-1 S %H=DAT1+1
 K ^TMPS111($J)
 D W($J("",12)_$$^%L1DC(%H,1)_"  -  "_$$^%L1DC($H,1))
 K ^s2ergs($P)
 S N=DAT1 F  S N=$O(^%ERGS(N)) Q:N=""  Q:N>+$H  I $D(^(N))>9 D W(""),W($$^%L1DC(N,1),2) D
 .S N1="" F  S N1=$O(^%ERGS(N,N1)) Q:N1=""  I N1_" "[PROG D W(""),W(N1,5) D
 ..S ^s2ergs($P,N1)=""
 ..S N2="" F  S N2=$O(^%ERGS(N,N1,N2)) Q:N2=""  I $L($G(^(N2))) D W($G(^(N2)),15)
 S %S2V("NOHB")=""
 S %S2V("PROG")="VIEW^%S2ERGS"
 D ^%S2VIEW
 Q
W(TXT,SM) ;
 S ^TMPS111($J,$O(^TMPS111($J,99999),-1)+1)=$J("",$G(SM))_TXT
 Q
W1(TXT,SM) ;
 S ^S222($J,$O(^S222($J,99999),-1)+1)=$J("",$G(SM))_TXT
 Q
 ;
VIEW ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,U) D ^%L1C
 K ^S999($J),^S222($J)
 M ^S999($J)=^TMPS111($J)
 N A,B,I,N,N1,N2,N3 S A=$$SPA^%L1FRM($G(^TMPS111($J,U)))
 ;
 I $P(A,".")'?."%"1U.UN Q
 S B="" F I=U:-1:1 S B=$$SPA^%L1FRM($G(^(I))) Q:B?2N1"."2N1"."2N
 Q:'B
 S %S2V("TXT1")=" "_A_" "_B_" "
 ;
 S N=$$^%L1DC(B,3),N1=A
 S N2="" F  S N2=$O(^%ERGS(N,N1,N2)) Q:N2=""  I $D(^(N2))>9 D W1($G(^(N2)),15) D
 .S N3="" F  S N3=$O(^%ERGS(N,N1,N2,N3)) Q:N3=""  S A=$G(^(N3)) D:$E(A)="[" W1("") D W1(A)
 K ^TMPS111($J) M ^TMPS111($J)=^S222($J) K ^S222($J)
 S %S2V("NOHB")=""
 D ^%S2VIEW
 K ^TMPS111($J)
 M ^TMPS111($J)=^S999($J) K ^S999($J)
 Q
 
 
 
 
 
 
 

%S2ERGS0
%S2ERGS ; [ 27.02.01  9:40 AM ] [ 07/28/99  8:45 AM ] [ 02/03/96  1:13 PM ]
 S RPCL=48,RCRT=20
 D ^%L1CERGS
Z0 W #!!,"DEVICE (0,3):" S %S="0",%LS=1,CIST="03" D ^%ZMSL Q:%S=""  S USTR=%S
Z1 W !!,"PERIOD (DAYS) :" S %S="0",%LS=3 D ^%ZMSL G:$G(%TO)="END" Z0
 G:%S="" Z0 I %S="?" W !?3,"ENTER NUMBER OF DAYS TO BACK FROM TODAY ( 0 - TODAY) " G Z1
 I %S'?1N.N W *7,"   ???" G Z1
 S DAY=%S
Z2 W !! K %Q S %Q("Z")="UCI <"_$$^%L1ZU(0)_"> ONLY",%Q("U")="Y" D ^%S1ASK S UCI='YES
 S %S="" W !!,"PROGRAMM NAME <ALL> :" D ^%ZMSL G:$G(%TO)="END" Z2
 S PROG=%S I $E(PROG,$L(PROG))="*" S PROG=$E(PROG,1,$L(PROG)-1)
 E  S PROG=PROG_" "
 I USTR O USTR::1 E  S %SAY=" ! qetz "_USTR_" hxet " X %XMSGV(1) Q
 U USTR
 S DAT1=+$H-DAY-1 ;
 W !!!?20,$ZD(DAT1+1,"DD/MM/YY"),"   -    ",$ZD($H,"DD/MM/YY"),!!
 K ^s2ergs($P)
 S N=DAT1 F  S N=$O(^%ERGS(N)) Q:N=""  Q:N>+$H  S %DAT1=$ZD(N,"DD/MM/YY") W !?2,%DAT1,! D
 .S N1="" F  S N1=$O(^%ERGS(N,N1)) Q:N1=""  I N1_" "[PROG,$$FUNC^%UCASE($ZPARSE($G(^(N1)),"NAME"))=$P($$^%L1ZU(0),",")!($G(^(N1))="")!UCI W !?5,N1 D
 ..S ^s2ergs($P,N1)=""
 ..S N2="" F  S N2=$O(^%ERGS(N,N1,N2)) Q:N2=""  I $D(^(N2))#2,^(N2)'?.P W !?15,^(N2)
 ..I USTR=0!(USTR=$P),$Y>19 R !,"<>",YYY W #
 Q
 S N=DAT1 F  S N=$O(^%ERGS(N)) Q:N=""  Q:N>+$H  S %DAT1=$ZD(N,"DD/MM/YY") D
 . S N1="" F  S N1=$O(^%ERGS(N,N1)) Q:N1=""  I N1_" "[PROG,$G(^(N1))=$P($$^%L1ZU(0),",")!($G(^(N1))="")!UCI D
 ..S N2="" F  S N2=$O(^%ERGS(N,N1,N2)) Q:N2=""  I $D(^(N2))#2,^(N2)'?.P S ^TEMP($P,I)=^(N2)
 ..I USTR=0!(USTR=$P),$Y>19 R !,"<>",YYY W #

%S2GLSV
%S2GLSV(MAC,FILE,PRM) ;     [ 05.02.24 15:38 ] [ 04.02.24 15:12 ] [ 16.11.21 15:52 ] 
 Q:$G(^S2GIB)'=1
 D ^%S3GLSV($G(MAC),$G(FILE),$G(PRM)) ;
 Q
 
 
 

%S2L
%S2L N (%NMF) D ^%L1C ; [ 01/30/92  1:41 PM ]
 U 0 S PRT=$J I $D(%NMF) S %NMF1="" G IN
Z1 G:$D(%NMF1) END S %S="" U 0 W !!,"FULL NAME OF HOST FILE (INPUT): " D ^%ZMSL G:%S="" END
 I %S="?" U $P:(ECHO:WRAP) D DIR^%OS U $P:(NOECHO:NOWRAP) G Z1
 S %NMF=%S S USTR=3
 O USTR::2 E  U 0 W *7,"PRINTER IN USE !" G Z1
IN U USTR W !!?5,%NMF
 S %ER=$$^%L1ZOS(10,%NMF) I %ER<0 D ^%L1OS1 G Z1
 O %NMF:(READONLY:REWIND):2 E  U 0 W !,"*** FILE "_%NMF_" IN USE !" G Z1
 I $ZC>0 D OE G Z1
 F %I=1:1 U %NMF R %STRING Q:$ZC'=0  U USTR W %STRING,!
 C %NMF
 U USTR W !!! C USTR
 G:'$D(%NMF1) Z1
END K %NMF Q
TE W *7,!,"TRANSFER ERROR $ZC=",$ZC Q
OE W *7,"*** OPEN ERROR ! $ZC=",$ZC Q

%S2LOADG
%S2LOADG ;     [ 08.04.03  3:20 PM ] [ 03.01.03  5:02 PM ] [ 27.02.01  9:44 AM ]
 W !,"D LOAD^%S2LOAD" Q
1 S $ZT="ERRRR^%S2ERG" X ^%ERG(4) F %E1=1:1 K:$G(TXT)'["ERROR " TXT W $C(27)_"[1;24r" D ^%S2ERG ZR  X ^%ERG(6) I '%E D ^%L1C Q
101 K ^S000($P) S MAC1="^S200($P)",MAC2="^S000($P)" D ^%S1GC1 S %PR="$"
2 S $ZT="ER^%S2ERG" ZR  ZL @%PR X ^%ERG(20),^%ERG(3),^%ERG(1)
20 S %TOP=$O(^ZE($P,""))-1 K:%TOP<1000 ^ZE($P) S:%TOP<1000 %TOP=100000 K ^ZE($P,%TOP+32) I $D(%PR) S ^ZE($P,%TOP)=%PR ZR  ZL @%PR
3 K ^S000($P) S ^S000($P,1)="" F J=1:1 Q:$T(+J)=""  S ^(J)=$T(+J)
4 K ^S222($P) M ^S222($P)=^S000($P) K L,R,TXT K:'$D(%L1ER) U S %TIP="R" I $D(^ZE($P))#2 S TXT=^ZE($P)
5 Q:$N(^S000($P,-1))=-1  F J=1:1 Q:'$D(^S000($P,J))  I ^(J)'="" S %LAB=$P($P(^(J)," ",1),"("),%E=^(J)'[" "!($L(%LAB)>8)!((%LAB'?.AN)&(%LAB'?1"%".AN)) ZI:'%E ^(J) I %E S U=J,L=0,R=80 W *7,!?20,"*** ERROR INTO ",J," LINE" K R H 2 ZR  D ^%L1C X %XCL Q
6 S %E=0 Q:'$D(^S000($P,1))  X "F  R !,""SAVE (Y/N) ?"",YES Q:""YyNnh""[$E(YES)&$L(YES)" I "Yyh"[$E(YES) S:$E(YES,2)=0 %ZS=0 X ^%ERG(10) X ^%ERG(7) I %E W *7 S TXT="ERROR IN LINE "_U_"  COLUMN "_(L+1) S %SAY=TXT X %XMSGV K R H 2 ZR  X %XCL Q
7 F  W "  NAME [ "_$G(%PR)_" ] :" R %PROG S:%PROG="" %PROG=%PR S %ER=$L(%PROG)>8!((%PROG'?1A.AN)&(%PROG'?1"%".AN)) W:%ER *7,!?30 I '%ER X ^%ERG(73) X ^%ERG(71) Q:%E  X ^%ERG(9) S %PR=%PROG,^ZE($P)="^"_%PROG ZF  Q
8 K %LS,CIST,%ECHO X ^%ERG(80) S:%TO="END" (%S,%PR)="^" X:%S="*"!(%TO="F7") ^%ERG(82) Q:%S="^"  X:%S="?"!(%TO="F6") ^%ERG(85) Q:$G(FLAG)'=""  X:%S="??" ^%ERG(83) X:%S?1U.E!(%S?1"%".E)&(%S["*"!(%S["?")) ^%ERG(84) X:%TO="UP"!(%TO="DW") ^%ERG(81) S %PR=%S
80 S %RP1=$S($E($ZE)="<":$P($P($ZE,"^",2),":"),1:$ZN) S:%RP1["%L1X"!(%RP1="") %RP1=$P($P($G(^ZE($P)),"^",2),":") S:$E(%RP1)="^" %RP1=$E(%RP1,2,9) S %FL="",$Y=23,$X=0,%GET="ROUTINE NAME [ NEW - <-> ] :++23,1,E,,,C#"_%RP1_"++8,E,I" N %BE D ^%L1GET
81 F  X:'$D(%TOP) ^%ERG(20) X:%TO="UP" "I $D(^ZE($P,%TOP+1)) S %TOP=%TOP+1 S %S=^ZE($P,%TOP)" X:%TO="DW" "I $D(^ZE($P,%TOP+1)) S %TOP=%TOP+1 S %S=^ZE($P,%TOP)" S %S=%S_$J("",8-$L(%S)),$X=22,$Y=22,%TO="" D ^%ZMSL S %S=$TR(%S," ","") I %TO="" Q
82 K %L1 S (%S,%PR)="^" K ^L1ADR($J) X "N N S N="""" F  S N=$O(^ZE($P,N)) Q:N=""""  I $L($G(^ZE($P,N))) S ^L1ADR($J,^ZE($P,N))=""""" S %L1RM="" D ^%L1RGR1 K %L1RM S (%PR,%S)="^",%TO=""
83 D ^%L3RD
84 N %RS K %L1 S %L1RM="" D M^%L1RM K %L1RM S %S="a",%TO=""
85 S %S="",%PR="1" K %L1 S MAC="^ZE($P)",%L1("EU")=2,%L1("CD")=" " S %CLEAR=2 D ^%L1NU Q:FLAG'=""  S %S=@MAC S %TO=""
9 W !,"COMMENT :",! S %S="" D ^%ZMSL S ^%ERGS(+$H,%PROG,$P($H,",",2))=%S M ^%ERGS(+$H,%PROG,$P($H,",",2))=^TMPS111($J) S ^%ERGS(+$H,%PROG)=$P($ZU(0),",")
10 X ^%ERG(102) S %CMM=$P(^S000($P,1)," ;",2,90) S %TIM=$ZD($H,"24:60") X ^%ERG(11) S %CMM=$P(%CMM," [ ")_" [ "_$$^%L1DC($H,1)_" "_%TIM1_" ] [ "_$P(%CMM,"[ ",2+%DFR,3+%DFR) S ^(1)=$P($G(^S000($P,1))," ;")_" ;"_%CMM
102 K ^UTILITY($J),^TMPS111($J) M ^UTILITY($J,1,"[ NEW ]")=^S000($P) M ^UTILITY($J,2,"[ OLD ]")=^S222($P) S ^UTILITY($J,1)="[ NEW ]",^UTILITY($J,2)="[ OLD ]" D ^%L2RCMP
11 S %DFR=0 S %DTOLD=$P($P(%CMM,"[ ",2)," ",1) I $$^%L1DC($H,1)=%DTOLD S %DFR=1
12 S %abc="",%ABC="" X "F %JJ=97:1:122 S %abc=%abc_$C(%JJ),%ABC=%ABC_$C(%JJ-32)"
71 ZR  X ^%ERG(5) I '%E S:'$D(%ZS) %ZS=1 ZS @%PROG::%ZS S:%ZS (%E,U)=$ZA,L=$ZB-1
73 I $D(^ (%PROG)) ZR  ZL @%PROG K ^S200($P) S ^S200($P,1)="" F J=1:1 Q:" "[$T(+J)  S ^(J)=$T(+J)
% D ^%L1C S %ZS=1 K %ECHO U 0:(0::::%OPT) D ^%S2ERGA W %ENG F %E=1:1 S $ZT="ER^%S2ERG" X ^%ERG(8),^%ERG(12) S %PR=$TR(%PR,%abc,%ABC) X %XCL K:%PR'="$" ^S000($P) Q:"^"[%PR  X:%PR="$$" ^%ERG(101) I %PR?."%"."$".UN!(%PR="-") X ^%ERG("$-"'[%PR+1)
LOAD K ^%ERG S ^%ERG=$P($T(%)," ",2,255)
 F I=3:1 S T=$T(+I) Q:T=""  Q:$P(T," ")="%"  I $P(T," ")?1N.N S ^%ERG($P(T," "))=$P(T," ",2,255)
 Q
1082 K %L1 S MAC="^ZE($P)",%L1("EU")=2,%L1("CD")=" " S %CLEAR=2 D ^%L1NU Q:FLAG'=""  S %S=@MAC S %TO=""

%S2V
%S2V N (%NMF,%UPRCOD,%XMSG,%XMSGV,%XMSGN,%S2V) D ^%L1C ; [ 04.01.04 12:04 ] [ 29.06.03 22:33 ] [ 18.06.03 09:06 ]
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 S TSS=$C(128) F J=129:1:154 S TSS=TSS_$C(J)
 U 0 S PRT=$J,%S="" I $D(%NMF) S %NMF1="" S:$E(%NMF,$L(%NMF))=">" %NMF1=">",%NMF=$E(%NMF,1,$L(%NMF)-1) G IN
Z1 X %chista G:$D(%NMF1) END S %FL=""
 U 0 S %SAY=" VIEW FILE " X %XMSGV
 W !!,"FULL NAME OF HOST FILE (INPUT): " D ^%ZMSL G:%S=""!(%TO="END") END
 I %S="?" D O13^%L1OS S %S=$S($G(%PATH)'="":%PATH_"\",1:"")_$TR($E(%L2VNM,1,8)_"."_$E(%L2VNM,11,13)," ","") G Z1
 S %NMF=%S
IN U $P ;;W:'$L($G(%NMF1)) !!?5,%NMF
 ;;I '$L($ZSEARCH(%NMF)) G Z1
 N $ZT S $ZT="ZG "_$ZL_":ER" K DOS
 C %NMF I $$^%L1ZOS(10,%NMF)<0 K ^TMPS111(PRT) G V
 O %NMF:(READONLY:REWIND)
 I %NMF'["LEVPC",'$L($G(%NMF1)),'$D(%S2V("TEXTFILE")) D  Q:%S=""!(%TO="END")  G @LAB
 .S %GET="LINUX FORMAT - 1 , DOS FORMAT - 2 , HEXA - 3++23,10,EE#1++1,E,I++123"
 .D ^%L1GET
 .I %S=3 D NOTEXT S LAB="V"
 .I %S=2 S DOS=""
 .S LAB="CYC"
CYC K ^TMPS111(PRT) S %I1=0 F %I=1:1 U %NMF:(TERMINATOR=$C(13,10,26,27)) R %STRING Q:$ZEOF  D  I '(%I#500) U $P W "." W:'(%I#40000) ! U %NMF
 .N S S S=$E(%STRING,1,412)
 .S S=$TR(S,$C(12),"#")
 .N N S N="" F  S N=$O(%CV(N)) Q:N=""  S S=$$RPL^%L1FRM(S,%CV(N),"")
 .N N S N="" F  S N=$O(%CV(N)) Q:N=""  S S=$$RPL^%L1FRM(S,$TR(%CV(N),TS0,TSS),"")
 .S S=$$RPL^%L1FRM(S,"37m","")
 .S S=$$RPL^%L1FRM(S,$TR("37m",TS0,TSS),"")
 .I $D(DOS) S S=$P(S,$C(13))
 .S %I1=%I1+1,^TMPS111(PRT,%I1)=$TR(S,TSS,TS0)
 C %NMF S $ZT=""
V S U=1,%FLI=1 U $P:(NOECHO:NOWRAP:NOESC) D ^%S2VIEW
 I $G(%NMF1)=">" D ^%L1OUT
 K ^TMPS111(PRT) G:'$D(%NMF1) Z1
END C %NMF K %NMF Q
 ;
NOTEXT ;
 U %NMF K ^TMPS111(PRT) F %I=1:1 S %ST="" D  S ^TMPS111(PRT,%I)=%ST Q:$ZC'=0  I '(%I#50) U $P W "." U %NMF
 .F  Q:$L(%ST)>47  U %NMF R *%A Q:$ZC'=0  S %ST=%ST_$TR($J($$^%L1ZH(%A),2)," ",0)_" "
 .S %ST1=%ST,%ST=%ST_$J("",50-$L(%ST1))_" ||" F %II=1:1:$L(%ST1," ") X "S %SMB=$$^%L1ZH("""_$P(%ST1," ",%II)_"#"")" S %SMB=$S(%SMB>31&(%SMB<128):$C(%SMB),1:" ") S %ST=%ST_%SMB
 C %NMF Q
ER I $ZEOF!($ZS["IOEOF") C %NMF U $P G V
 U $P S %SAY=$$FUNC^%UCASE($ZS) X %XMSGV(1)
 S %OK=0 G CYC ;;Q:$D(%NMF1)
 K %Q S %Q("Z")="CONTINUE" D N^%S1ASK I 'YES Q:$D(%NMF1)  G Z1
 G V ;  Z1

%S2VDB
%S2VDB ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 X %chista S ^S2VDB=1
 S %S2V("FIFO")="",%S2V("IND")=1,%S2V("TXT")=""
 O "S2VFIFO":FIFO
RD H 1 Q:'$G(^S2VDB)  U "S2VFIFO":(EXCEPTION="G RD")
 U "S2VFIFO" R %ZPOS:1
 U $P:(NOECHO:NOWRAP)
 S %RNAME=$P($G(%ZPOS),"^",2) I %RNAME="" G RD
 S %S2V("RNAME")=%RNAME
 S %S2V("ZPOS")=%ZPOS
 D M1^%L1RV
 C "S2VFIFO" K ^S2VDB Q

%S2VIEW
%S2VIEW ;DJM;MAIN EDITOR;                         [ 03.03.21 10:19 ] [ 20.06.07 08:13 ] [ 08.03.07 08:00 ] 
 ; INPUT: ^TMPS111($J,
 ;        %S2V("TXT"),%S2V("TXT1") - HEADER
 ;        %S2V("TXTN") - BOTTOM HEADER
 ;        %S2V("VGR") - TOP SCREEN MARGIN
 ;        %S2V("NGR") - BOTTOM SCREEN MARGIN
 ;        %S2V("LEFT") - LEFT MARGIN
 ;        %S2V("LAB") - ROUTINE LABEL(%TIP="R") OR LINE NUMBER (%TIP="G")
 ;        %S2V("PRINT") - ASK FOR PRINT
 ;        %S2V("PROG") - PROGRAMM NAME IF <F9> WAS PRESSED
 ;        %S2V("IND") - LINE INDEX ON(=1) OR OFF (=0)
 ;        %S2V("HBR") - VIEW DROM RIGHT SIDE
 ;----------------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%S2V,%TIP,%Z,%JSP) D ^%L1C
 N $ZT,%ECHO
 S %HBRY="" I $D(%S2V("NOHB")) K %HBRY
BEG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 S %BG=1 I $D(%S2V("FIFO")) O "S2VFIFO":FIFO
 I '$D(^TMPS111($J,1)) S %SAY=" ! mipezp oi` " X %XMSGV(1) Q
 S %BEG=1
 S %MOUSE=$$INIT^%L2MOUSE K %screen
M1 D INIT
M11 S:'$D(U) U=1 S:'$D(^TMPS111($J,U)) ^TMPS111($J,U)=""
 S:'$D(L) L=0 S:'$D(R) R=L+%S2GW
 S %XX=0,%YY=%S2V("VGR") I %S2V("VGR")=1!(%TYPCRT="PC") X %POSIC W %chists
 I $D(%S2V("FIFO")),$L($G(%S2V("ZPOS"))) U "S2VFIFO":(EXCEPTION="G M12") D  I $L(%STROKA) G 1110
 .S %ZPOS=%S2V("ZPOS"),%STROKA=""
 .S %RNAME=$P(%ZPOS,"^",2) Q:%RNAME=""
 .I %RNAME'=$G(%S2V("RNAME")) S %S2V("RNAME")=%RNAME D GETS1^%L1RV(%RNAME)
 .S %STROKA=$P(%ZPOS,"^")
 ;
M12 S %X=0,%Y=%S2V("VGR"),RL=R-L+1,%K=L D USE
 I $D(%S2V("HBR")),%BG S %BG=0 G HOME
 D:'$D(%S2V("LAB")) P
 I $$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE!$D(%S2V("TOUCH")),%BEG S %BEG=0 G VNIZE
M13 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 S:$D(X1) %X=X1 S %K=L+%X K U1,Y1,X1
M2 I $G(TXT)'="" D STR1
 I $G(TXT1)'="" D STR21
 I $G(%S2V("TXTN"))'="" D STRN
 ;I $G(TXT)="" S %SAY=" <ESC> - d`ivi , <PGUP> - mcew sc , <PGDW> - `ad sc " X %XMSGV
 I '$D(^TMPS111($J,U)) S ^(U)=""
 S %SS=^(U) D USE
3 K HOME,ENDS
 D USE
 I %FLI=1 W %vverxe,%CLI,"+",U,":",$L(^TMPS111($J,U)),":",%K+1,":",%Y,":",%X+1,%CCL ;,%chists ;X %XCL ;W !
 I %FLI=2 W %vverxe,%LIGHT1,$S(%CVET&(%TYPCRT="PC"):%CV("CF"),%CVET:%CV("YF"),1:""),"LINE:",$J(U,3) W:$G(%S2V("IND"))'["." "  POS:",$J(%K+1,3)," " W %CCL
 S %YY=%Y,%XX=%X X %POSIC
READ ;
 I '$D(^TMPS111($J,1)) S ^(1)=""
 D ^%L1MSGBR
 I $D(%S2V("FIFO")) U "S2VFIFO":(EXCEPTION="G READ1") R %ZPOS:0 I $T D  I $L(%STROKA) G 1110
 .S %RNAME=$P(%ZPOS,"^",2) Q:%RNAME=""
 .I %RNAME'=$G(%S2V("RNAME")) S %S2V("RNAME")=%RNAME D GETS1^%L1RV(%RNAME)
 .S %STROKA=$P(%ZPOS,"^")
READ1 D USE S C="" K C1,C2,C3,C4
 G:$G(%PRKB) READ2
 I $$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE!$D(%S2V("TOUCH")) D  G:C="ENTER"!(C="") 13 G:$A(C)<33 READ1 G:C'?1U.E READ G:$T(@C)="" READ G @C
 .S %L1NMB("VIEW")="" K %PRKB
 .W *27,7 S C=$$^%L1NMB("") W *27,8
 .I $D(^TMPS111($J,1)) Q
READ2 R *C:1 E  K %PRKB G READ
READ21 G:%TYPCRT="PC" C27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G:$T(@%UPRCOD(ZB))="" READ G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 ;
C27 I C=27 D DELAY R:'$D(%FLL) *C1:%WAIT G:C1<0 ESC D  I CC,$D(%UPRCOD(CC)),$T(@%UPRCOD(CC))'="" K %FLL G @%UPRCOD(CC)
 .S CC="" Q:C1=27  D DELAY R:'$D(%FLL) *C2:%WAIT Q:C2<0  Q:C2=27  S:C2>0 CC=C1_C2 Q:$D(%UPRCOD(CC))
 .R:'$D(%FLL) *C3:%WAIT Q:C3<0  Q:C3=27  S:C3>0 CC=CC_C3 Q:$D(%UPRCOD(CC))
 .R:'$D(%FLL) *C4:%WAIT Q:C4=27  S:C4>0 CC=CC_C4
 I $G(C1)=27 K C1 S C=27 G C27
 I $G(C2)=27 K C2 S C=27 G C27
 I $G(C3)=27 K C3 S C=27 G C27
 I $G(C4)=27 K C4 S C=27 G C27
 I $G(C)=27 G C27
 ;
 I C=0 R *C1:%WAIT I C1>0 S C="0"_C1
 I C=2,$D(^%dbg)#2 S ^%dbg(+^%dbg,"B",U)="+"_U_"^"_$P(^%dbg(+^%dbg),"^",2) I $D(^TMPS111($J,1)) S ^(U)=%CLI_^(U) G M12
COM I $D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" G @%UPRCOD(C)
 I $C($E(C))="=" G ESC
 I C<127,C>31 G READ
 G ERCOM:C<32&(C-31)&(C-29)
 G READ
PRAVO I %X<(RL-1) S %K=%K+1,%X=%X+1 G:%FLI 3 W %pravo G READ
 S SDV=1 D SPRAVO S SDV=60,%K=%K+1,RL=1+R-L,%Y=%S2V("VGR") D P G M13
MET G 1
27 ;
ESC S %XX=22,%YY=23 X %POSIC W:'$D(%S2V("PRINT")) !
 I $D(%S2V("PRINT")),@(%L1DEV_">2") S %GET=" 99 - qitcdl , 96 - xenyl , 95 - xeciyl oikdl " D N^%L1GET I %S>94 D
 .X %chista S PRT=$J S USTR=3,%DEV="USTR",%L1OUT("PRINTER")="",%L1OUT("KOT")=$G(%S2V("TXT1")),%L1OUT("S2V")=""
 .I $D(%S2V("PRINT","KOT"))#2 S %L1OUT("KOT")=%S2V("PRINT","KOT")
 .N N S N="" F  S N=$O(%S2V("PRINT","KOT",N)) Q:N=""  S %L1OUT("KOT",N)=%S2V("PRINT","KOT",N)
 .S %L1OUT("DAF")="" S:$D(%S2V("PRINT","SMALL")) %L1OUT("PRINTER","SMALL")=""
 .I $D(%S2V("PRINT","SM"))#2 S %L1OUT("SM")=%S2V("PRINT","SM")
 .I %S=96!(%S=95) D
 ..N OTB S OTB=%S
 ..F  S %GETHB="" S %GET=": dxrd #30" D N^%L1GET S HEARA=%S Q:$L(HEARA)
 ..K %GETHB
 ..N SUGM S @("SUGM="_%L1SUG)
 ..I OTB=95 K %L1LPT("SND") D  Q:'$G(%L1LPT("SND"))
ZM ...S %GET=": fkxnl xeciyl oikdl ++13,60,HH,,R#++4,E,I++++++^MRKZ\\\\VP" D ^%L1GET Q:%S=""!(%TO="END")
 ...S %L1LPT("SND")=%S I %L1LPT("SND")=$$^%L1MRK S %SAY=" ! jnvrl xcyl mrh oi` " X %XMSGV(1) G ZM
 ...S %L1LPT("SND","ARX")=$G(%S2V("TXT1"))_"\"_SUGM_"\"_HEARA
 ..I OTB=96 K %L1("ARX") S %L1LPT("ARX")=$G(%S2V("TXT1"))_"\"_SUGM_"\"_HEARA
 ..S %L1LPT("DEV")=54,USTR=3
 .N %S2V D Z31^%L1OUT
 .U 0 S %GET="<DONE>" D N^%L1GET
 ;;U 0 W $C(27,91),"1;1;24;80w"
 ;;W $C(27,91),"1;24r" I %TYPCRT'="PC" S %XX=1,%YY=%S2V("NGR") X %POSIC W !
 X %XCL ;;I $D(%ECHO) U $P:(ECHO)
 I %TYPCRT["VT5" U 0 W $C(27),"[?3l"
 I $$HZGTOUCH^%L2MOUSE S %XX=0,%YY=22 X %POSIC,%chiste H .5 I $D(^TMPS111($J,1))
 K %S2V,%L1NMB C:$D(%S2V("FIFO")) "S2VFIFO" Q
HBR I '$D(%HBRY) S TXT="HEBREW" D STR1 S %HBRY="" S X1=%X,Y1=%Y,U1=U S U=U-(%Y-%S2V("VGR")+1)+1 G M12
 I $D(%HBRY) K %HBRY S TXT="ENGLISH" D STR1 S X1=%X,Y1=%Y,U1=U S U=U-(%Y-%S2V("VGR")+1)+1 G M12
MOD G 3
FIND G 6
IND I %FLI S %FLI=0 S TXT="INDEX OUT" D STR1 H 1 G 3
 S %FLI=1 G 3
TABN G:'$D(%SIMB) 810 S %KK=%K F I=U:-1:1 S %OPOZ=0 S:U'=I %KK=$L(^TMPS111($J,I)) D 801 Q:%OPOZ>0&(%KK>0)
 G 802
801 F JJ=0:0 S J=$F(^TMPS111($J,I),%SIMB,%OPOZ) Q:J>%KK!(J=0)!(%KK=0)  S %OPOZ=J
 Q
802 ;
 S TXT="" S:I=1&'%OPOZ TXT=" NOT" S TXT=TXT_" FOUND" D STR1 H 1 G 3:'%OPOZ
 S %OPOZ=%OPOZ-$L(%SIMB)-1
 S %Y=I-U+%Y,%X=%OPOZ-%K+%X,U=I,%K=%OPOZ I %X<RL,%X'<0,%Y<%S2V("NGR"),%Y>0 G 3
 S L=%OPOZ,R=L+RL-1 G M12
810 G READ:'%K S C=%K-%X,%K=%K-.1\10*10,%X=%K-C G:%K'<L 3
 S SDV=L-%K D SLEVO S SDV=60 G M12
TAB I '$D(%SIMB) G 910
 S RAZ=%SIMB,J=%K+2 F I=U:1 Q:'$D(^TMPS111($J,I))  S J=$F(^(I),RAZ,J) Q:J
 S TXT="" S:'J TXT=" NOT " S TXT=TXT_" FOUND" D STR1 G 3:'J S J=J-$L(RAZ)-1
 S %Y=I-U+%Y,%X=J-%K+%X,U=I,%K=J I %X<RL,%X'<0,%Y<%S2V("NGR") G 3
 S L=J,R=L+RL-1 G M12
910 G READ:%K>230 S C=%K-%X,%K=%K\10+1*10,%X=%K-C G:%K'>R 3
 S SDV=%K-R D SPRAVO S SDV=60,RL=1+R-L,%Y=%S2V("VGR") D P S %X=R-L,%K=R G M13
END S S=$L(^TMPS111($J,U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G 3
ENDS ;
ENDL S ENDS="" I $D(%S2V("HBR")),'$D(HOME) G HOME
 S S=$L(^TMPS111($J,U)) I S>R S SDV=S-R D SPRAVO S %X=0,%Y=%S2V("VGR"),RL=1+R-L,%K=L D P
 S %X=0,%Y=%S2V("VGR"),RL=1+R-L,%K=L D P ;?
 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 K U1,Y1 S %K=S,%X=%K-L S SDV=60
 G 3
PGLN G 3:'L D SLEVO G M12
COR S %L1WE="" S %YY=19,%XX=0 X %POSIC W %chists,"<<LINE ",U,">>" S %S=^TMPS111($J,U),%6=20
 D ^%L2ERSTR R YYY S U1=U,U=U-(%Y-%S2V("VGR")+1)+1,Y1=%Y S:U<1 U=1 G M12
 ;;D P G 3
13 ;
BK S %K=L,%X=0 G VNIZ
HOME S HOME="" I $D(%S2V("HBR"))&'$D(ENDS) G ENDL
 I L>0 S SDV=L D SLEVO S SDV=60 G M12
 S %K=0,%X=0 G M12 ;;3
PGUP I U'>(%Y-%S2V("VGR")+1) S %SAY=" ! mipezp zligz " X %XMSGV(1) G 3
  S U=U-(%Y-%S2V("VGR")+1)-%S2V("RSTR")+1 S:U'>0 U=1 G M12
PGRG G 3:L>195 D SPRAVO G M12
SPRAVO S L=L+SDV,U1=U,Y1=%Y,U=U-(%Y-%S2V("VGR")+1)+1,R=R+SDV Q
VNIZE D VNIZE1 G M2
VNIZE1 W %vverxe F I=1:1:%S2V("NGR")-1 Q:'$D(^TMPS111($J,U-(%Y-%S2V("VGR")+1)+I))  W %vniz
 S:'$D(^TMPS111($J,U-(%Y-%S2V("VGR")+1)+I)) I=I-1
 S U=U-(%Y-%S2V("VGR")+1)+I,%Y=I,%K=L,%X=0
 Q
PRSC ;
 D ^%L1PRSC
 G M2
PGDW ;
PGDN ;
 I '$D(^TMPS111($J,U-(%Y-%S2V("VGR")+1)+%S2V("RSTR")+1)) S %SAY=" ! mipezpd seq " X %XMSGV(1) G 3
 S U=U-(%Y-%S2V("VGR")+1)+%S2V("RSTR")+1 G BEG+2
VVERX G:%Y=%S2V("VGR1") VIRA S U=U-1,%Y=%Y-1 G M2
VNIZ S U=U+1,%Y=%Y+1 G MAINA:(%Y+1)'<%S2V("NGR"),M2
LEVO G READ:'%K I %X>0 S %K=%K-1,%X=%X-1 G 3
 S SDV=1 D SLEVO S SDV=60 G M12
SLEVO S R=R-$S(L>SDV:SDV,1:L),L=$S(L>SDV:L-SDV,1:0) S U1=U,U=U-(%Y-%S2V("VGR")+1)+1,Y1=%Y Q
SBROS G:^TMPS111($J,U)=%SS 13 S ^(U)=%SS D V G 13
V S %YY=%Y,%XX=$S(%TYPCRT="PC":0,1:%S2V("LEFT")) S:%XX<0 %XX=0 X %POSIC W %chists D W(U,L+1,R) Q
VVERXE S %K=L,U=U-(%Y-%S2V("VGR1")+1)+1,%X=0,%Y=%S2V("VGR1") G M2
P S %XX=%S2V("LEFT") D  I $O(^TMPS111($J,1))
 .I $O(^TMPS111($J,1))
 .;I %S2V("NGR")>23 S %XX=%S2V("LEFT"),%YY=%S2V("VGR") X %POSIC,%chiste Q
 .F I=%Y:1:%S2V("NGR") S %YY=I X %POSIC W $J("",%S2V("RIGHT")-%S2V("LEFT"))
 F I=0:1:%S2V("RSTR")-1 Q:'$D(^TMPS111($J,I+U))  S %YY=I+%Y,%XX=$S(%TYPCRT="PC":0,1:%S2V("LEFT")) X %POSIC D W(I+U,L+1,R) X %XCL W %chists
 ;W %vverxe,%chists Q
 Q
MAINA G:'$D(^TMPS111($J,1)) 3
 S:'$D(^TMPS111($J,U)) ^(U)="" X %XCL W ! S %XX=0,%YY=%S2V("VGR")-1 X %POSIC W %chists S %Y=%S2V("NGR")-1 D V G M2
 ;;S U1=U,U=U-%S2V("RSTR")+1,Y1=%S2V("NGR") G M12
VIRA ;
 G:U<(%S2V("U1")+1) 3 S U=U-1
 X %XCL
 I %TYPCRT="PC",%S2V("RIGHT")-%S2V("LEFT")<80 D  D V G M2
 .D GET^%VIDEO("%s2view",%S2V("LEFT"),%S2V("VGR1"),%S2V("RIGHT")-%S2V("LEFT")+1,%S2V("NGR1")-%S2V("VGR1")-1,2)
 .D PUT^%VIDEO("%s2view",%S2V("LEFT"),%S2V("VGR1")+1,%S2V("RIGHT")-%S2V("LEFT")+1,%S2V("NGR1")-%S2V("VGR1")-1,2)
 .k %s2view
 I $E(%TYPCRT,1,3)="VT5" D  D V G M2
 .W $C(27,91),(%S2V("VGR1")+1)_";"_%S2V("LEFT")_";"_(%S2V("NGR1")-1)_";"_%S2V("RIGHT")_";;"_(%S2V("VGR1")+2)_";"_%S2V("LEFT")_";$v"
 S:C=164 S=$L(^TMPS111($J,U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L ;G M2
 D P G M2
 Q
ERCOM S TXT="ISN'T FUNCTION" D STR1 G 3
STR1 ;I $D(TXT) S %SAY=TXT X %XMSGV(1) K TXT Q  ;W %vverxe,%chists S %YY=0,%XX=19 X %POSIC W %CLI,TXT K:'$D(TXT(1)) TXT X %XCL Q
 I $D(TXT) W %vverxe,%chists S %YY=0,%XX=19 X %POSIC W %CLI,$$^%L1HB(TXT)," " K:'$D(TXT(1)) TXT X %XCL Q
STR21 S %SAY=$$^%L1HB(TXT1) X %XMSGV Q
STRN S %SAY=$$^%L1HB(%S2V("TXTN")) X %XMSGN Q
FINDS K %SIMB S TXT="SEARCH KEY <TAB>. INPUT SIMBOL (<ENTER> - END SEARCH):" D STR1
 U $P:(ECHO) R %SIMB D USE I %SIMB="" K %SIMB G 3
 I $A(%SIMB)<32 W *7,"  *** ERROR !" H 2 G FINDS
 G 3
ER W "   ???"
 Q
1 W %vverxe,%chists
 G:%TIP'="R" 1111 S TXT="    LABEL <"_$P(^TMPS111($J,1)," ",1)_"> " D STR1
 U $P:(ECHO) R %STROKA
1110 D USE
 I %STROKA="-" W %vverxe,%chists G 3
 I $D(^TMPS111($J,1))
 S:%STROKA="" %STROKA=$P(^TMPS111($J,1)," ",1) S %STROKA1=$P(%STROKA,":",1)
 S %=$S(%STROKA1["+":"+",%STROKA1["-":"-",1:" ") S %LAB=$P(%STROKA1,%,1)
 I %LAB="",%="+" S I=0,%SM=+$P(%STROKA,"^") G 11101
 S:%LAB="" %LAB=$P(^TMPS111($J,1)," ",1)
 S %LAB=$P(%LAB,"(")
 S %E='(%LAB?1"%".UN!(%LAB?.UN))
 I '%E S %SM=$P(%STROKA1,%,2) S:%SM="" %SM=0 S:%'=" " %SM=%_%SM S %E='(%SM?1"+"1N.N!(%SM?1"-"1N.N)!(%SM?1N.N))
 I %E W *7,"     LABEL ISN'T RIGHT !" H 2 G 1
 F I=1:1 Q:'$D(^TMPS111($J,I))  Q:$P($P(^(I)," ",1),"(")=%LAB
 I '$D(^(I)) W *7,"   LABEL NOT !" H 2 G 1
11101 I '$D(^TMPS111($J,I+%SM)) W *7,"   OFFSET TOO LARGE !" H 2 G 1
 S U=I+%SM,L=0,R=L+%S2GW K %STROKA,%STROKA1,%LAB,%SM,%E,% G M12
 ;
1111 U $P:(ECHO) R "    LINE NUMBER <1> ",%STROKA D USE
 S:%STROKA="" %STROKA="1"
 I %STROKA="-" G 3
 S %LAB=$P(%STROKA,":",1) S:%LAB="" %LAB=1
 S %E='(%LAB?1"+"1N.N!(%LAB?1N.N))
 I %E W *7,"   NUMBER ISN'T RIGHT !" H 2 G 1
 I '$D(^TMPS111($J,%LAB)) W *7,"   NUMBER TOO LARGE !" H 2 G 1
 S U=%LAB,L=0,R=L+%S2GW K %STROKA,%STROKA1,%LAB,%E G M1+2
 Q
6 S TXT="FIND : " D STR1 U $P:(ECHO) S %LS=20,%S="" D ^%ZMSL S C=%S D USE
 I $D(^TMPS111($J,1))
 I C="" G ERCOM:'$D(RAZ) S C=RAZ
 S RAZ=C,J=%K+2 F C=U:1 Q:'$D(^TMPS111($J,C))  S J=$F(^TMPS111($J,C),RAZ,J) Q:J
 W:'J *7," NOT" W " FOUND" G 3:'J S J=J-$L(RAZ)-1
 S %Y=C-U+%Y,%X=J-%K+%X,U=C,%K=J I %X<RL,%X'<0,%Y<%S2V("NGR") G 3
 I %X'<RL!(%X<0&(J-RL>0)) S L=J,R=L+RL-1 G M12
 I %X<0,J-RL<0 S L=0,R=L+RL-1,X1=J,Y1=1 G M12
 S %Y=%S2V("VGR"),X1=%X G M12
 ;;STR1 W %vverxe,%chists,! S %YY=0,%XX=5 X %POSIC W TXT K TXT Q
ENDF F I=U+1:1 Q:'$D(^TMPS111($J,I))
 S U=I-%S2V("RSTR") S:U<1 U=1 S L=0 G M11
BEGF S U=1,L=0 G M11
SAVE ;
 I $D(%S2V("PROG")) S U1=U,Y1=%Y,X1=%X D  S U=U1-$S($G(%MET)="M2":0,1:Y1-$G(%S2V("VGR"))) K:%MET="M2" U1,Y1,X1 G @%MET
 .N U S U=U1 N U1
 .I $D(%S2V("SV")) D SV
 .U 0 I %S2V("VGR")>1!(%S2V("NGR")<24) W $C(27,91),"1;1;24;80w"
 .X %XCL
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%S2V,s2view,U,%MET) D ^%L1C ;;S %OPT=65
 .I $D(%S2V("JSP")) S %JSP=%S2V("JSP")
 .S %N="" F  S %N=$O(%S2V("PROG",%N)) Q:%N=""  S @%N=%S2V("PROG",%N)
 .K ^S2VTMPS111($J,$ZL) M ^S2VTMPS111($J,$ZL)=^TMPS111($J)
 .I $O(^TMPS111($J,U)) S zl=$ZL
 .D @%S2V("PROG") X:'$D(%S2V("PROGNCA")) %chista
 .S %MET="BEG" D INIT
 .D:$D(%S2V("SV")) REST
 .K ^TMPS111($J) M ^TMPS111($J)=^S2VTMPS111($J,$ZL) K ^S2VTMPS111($J,$ZL)
 .I $O(^TMPS111($J,1))
 S %GET=" SAVE LINE[,COLUMN] <1> #6" D VE^%L1GET S C=%S
 S:C="" C=1 G:C="-" 3 G SAVE:C'?.N.",".N
 G:C'=0 260 W " ERASE OLD ARRAY (Y/N) :"
 R "?",*I G 3:I=%S2GW,SAVE+2:I-89 W *I K %Z G 3
260 I $D(%Z) S YES=0 F %J=0:0 Q:"123"[YES&($L(YES)=1)  W %vverxe,%chists U $P:(ECHO) R "    OLD ARRAY: ERASE - 1,LOOK  - 2,TO ADD - 3 <1> ",YES D USE S:YES="" YES=1
 I $D(%Z) K:YES=1 %Z I YES=2 W # X "F J=1:1 Q:'$D(%Z(J))  W !,%Z(J)" R !!?40,"PRESS <ENTER>",YES S U1=U,Y1=%Y,X1=%X,U=U-(%Y-%S2V("VGR")+1)+1,%Y=%S2V("VGR"),%X=0 D P S U=U1,%Y=Y1,%X=X1 K U1,Y1,X1 G 260
 S:'$D(%Z) %Z=0 S I=999.3 S:C["," I=+$P(C,",",2) S C=+C
 F J=1:1:C Q:'$D(^TMPS111($J,U+J-1))  S %S=$E(^TMPS111($J,U+J-1),%K,%K+I) S:I'=999.3 %S=%S_$J("",I-$L(%S)) S %Z(%Z+J)=$TR(%S,$C(9)," ")
 S %Z=%Z+J-'$D(%Z(%Z+J)) K:'%Z %Z G 3
 Q
INIT S %FLV=1 S:$D(%S2V("IND")) %FLI=+%S2V("IND")
 I $D(^TMPS111($J,1))
 S:'$D(%FLI) %FLI=0 S SDV=60 S:'$D(%TIP) %TIP="G"
 I '$D(%S2V("U1")) S %S2V("U1")=1
 I $G(%S2V("U"))>1 S U=%S2V("U")
 I '$D(%S2V("NGR")) S %S2V("NGR")=24
 I '$D(%S2V("VGR")) S %S2V("VGR")=1
 I '$D(%S2V("LEFT")) S %S2V("LEFT")=0
 I '$D(%S2V("RIGHT")) S %S2V("RIGHT")=79
 ;;S %HBRY="" I $D(%S2V("NOHB")) K %HBRY
 I $E(%TYPCRT,1,3)="VT5",$D(%S2V("SMALL")) S %S2V("RIGHT")=132 W $C(27),"[?3h"
 I %S2V("VGR")<1 S %S2V("VGR")=1
 I %S2V("NGR")>24 S %S2V("NGR")=24
 I %S2V("NGR")>21,$$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE!$D(%S2V("TOUCH")) S %S2V("NGR")=21 I $D(^TMPS111($J,1))
 S TXT=$G(%S2V("TXT"))
 S TXT1=$G(%S2V("TXT1"))
 S %S2V("RSTR")=%S2V("NGR")-%S2V("VGR")
 S %S2GW=%S2V("RIGHT")-%S2V("LEFT")
 D USE
 W *27,"["_%S2V("VGR")_";"_%S2V("LEFT")_";"_%S2V("NGR")_";"_%S2V("RIGHT")_"w"
 S:'$D(%S2V("VGR1")) %S2V("VGR1")=%S2V("VGR") S:'$D(%S2V("NGR1")) %S2V("NGR1")=%S2V("NGR")
 W *27,"["_%S2V("VGR1")_";"_%S2V("NGR1")_"r"
 Q
XEC ;
 D ^%L1CLC
 D USE G 3
 ;
SV D:'$D(%TYPCRT) ^%L1C I %TYPCRT="PC" D GET^%VIDEO("s2view",0,0,80,24,2) Q
 I $E(%TYPCRT,1,3)="VT5",'$D(%NOVIDEO) W $C(27,91),";;;;;;;2$v" Q
 Q
REST D:'$D(%TYPCRT) ^%L1C ;
 I %TYPCRT="PC" D PUT^%VIDEO("s2view",0,0,80,24,2) K s2view S %MET="M2" Q
 I $E(%TYPCRT,1,3)="VT5",'$D(%NOVIDEO) W $C(27,91),";;;;2;;;$v" S %MET="M2" Q
 S %MET="BEG" Q
W(U,L,R) I '$D(%HBRY) W $E(^TMPS111($J,U),L,R) Q
 N %A S %A=^TMPS111($J,U)
 S %A=$$RPL^%L1FRM(%A,%CLI,"<%CLI>")
 S %A=$$RPL^%L1FRM(%A,%CCL,"<%CCL>")
 ;;S %A=$TR($TR($E(%A,L,R),%TES1,%TES2),%TEN,%THB)
 S %A=$$W^%L1C(%A)
 S %A=$$RPL^%L1FRM(%A,"<%CLI>",%CLI)
 S %A=$$RPL^%L1FRM(%A,"<%CCL>",%CCL)
 W %A
 Q
MDRG G HBR
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
DELAY ;
 N %II I %TYPCRT="PC1" F %II=1:1:6000
 Q
 

%S2VIEW0
%S2VIEW ;DJM;MAIN EDITOR;                         [ 10.04.09 12:17 ] [ 08.03.07 08:00 ] [ 24.10.06 07:57 ]
 ; INPUT: ^TMPS111($J,
 ;        %S2V("TXT"),%S2V("TXT1") - HEADER
 ;        %S2V("TXTN") - BOTTOM HEADER
 ;        %S2V("VGR") - TOP SCREEN MARGIN
 ;        %S2V("NGR") - BOTTOM SCREEN MARGIN
 ;        %S2V("LEFT") - LEFT MARGIN
 ;        %S2V("LAB") - ROUTINE LABEL(%TIP="R") OR LINE NUMBER (%TIP="G")
 ;        %S2V("PRINT") - ASK FOR PRINT
 ;        %S2V("PROG") - PROGRAMM NAME IF <F9> WAS PRESSED
 ;        %S2V("IND") - LINE INDEX ON(=1) OR OFF (=0)
 ;        %S2V("HBR") - VIEW DROM RIGHT SIDE
 ;----------------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%S2V,%TIP,%Z) D ^%L1C
 N $ZT,%ECHO
 S %HBRY="" I $D(%S2V("NOHB")) K %HBRY
BEG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 S %BG=1 I $D(%S2V("FIFO")) O "S2VFIFO":FIFO
 I '$D(^TMPS111($J,1)) S %SAY=" ! mipezp oi` " X %XMSGV(1) Q
 S %BEG=1
 S %MOUSE=$$INIT^%L2MOUSE K %screen
M1 D INIT
M11 S:'$D(U) U=1 S:'$D(^TMPS111($J,U)) ^TMPS111($J,U)=""
 S:'$D(L) L=0 S:'$D(R) R=L+%S2GW
 S %XX=0,%YY=%S2V("VGR") I %S2V("VGR")=1!(%TYPCRT="PC") X %POSIC W %chists
 I $D(%S2V("FIFO")),$L($G(%S2V("ZPOS"))) U "S2VFIFO":(EXCEPTION="G M12") D  I $L(%STROKA) G 1110
 .S %ZPOS=%S2V("ZPOS"),%STROKA=""
 .S %RNAME=$P(%ZPOS,"^",2) Q:%RNAME=""
 .I %RNAME'=$G(%S2V("RNAME")) S %S2V("RNAME")=%RNAME D GETS1^%L1RV(%RNAME)
 .S %STROKA=$P(%ZPOS,"^")
 ;
M12 S %X=0,%Y=%S2V("VGR"),RL=R-L+1,%K=L D USE
 I $D(%S2V("HBR")),%BG S %BG=0 G HOME
 D:'$D(%S2V("LAB")) P
 I $$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE!$D(%S2V("TOUCH")),%BEG S %BEG=0 G VNIZE
M13 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 S:$D(X1) %X=X1 S %K=L+%X K U1,Y1,X1
M2 I $G(TXT)'="" D STR1
 I $G(TXT1)'="" D STR21
 I $G(%S2V("TXTN"))'="" D STRN
 ;I $G(TXT)="" S %SAY=" <ESC> - d`ivi , <PGUP> - mcew sc , <PGDW> - `ad sc " X %XMSGV
 I '$D(^TMPS111($J,U)) S ^(U)=""
 S %SS=^(U) D USE
3 K HOME,ENDS
 D USE
 I %FLI=1 W %vverxe,%CLI,"+",U,":",$L(^TMPS111($J,U)),":",%K+1,":",%Y,":",%X+1,%CCL ;,%chists ;X %XCL ;W !
 I %FLI=2 W %vverxe,%LIGHT1,$S(%CVET&(%TYPCRT="PC"):%CV("CF"),%CVET:%CV("YF"),1:""),"LINE:",$J(U,3) W:$G(%S2V("IND"))'["." "  POS:",$J(%K+1,3)," " W %CCL
 S %YY=%Y,%XX=%X X %POSIC
READ ;
 I '$D(^TMPS111($J,1)) S ^(1)=""
 D ^%L1MSGBR
 I $D(%S2V("FIFO")) U "S2VFIFO":(EXCEPTION="G READ1") R %ZPOS:0 I $T D  I $L(%STROKA) G 1110
 .S %RNAME=$P(%ZPOS,"^",2) Q:%RNAME=""
 .I %RNAME'=$G(%S2V("RNAME")) S %S2V("RNAME")=%RNAME D GETS1^%L1RV(%RNAME)
 .S %STROKA=$P(%ZPOS,"^")
READ1 D USE S C="" K C1,C2,C3,C4
 G:$G(%PRKB) READ2
 I $$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE!$D(%S2V("TOUCH")) D  G:C="ENTER"!(C="") 13 G:$A(C)<33 READ1 G:C'?1U.E READ G:$T(@C)="" READ G @C
 .S %L1NMB("VIEW")="" K %PRKB
 .W *27,7 S C=$$^%L1NMB("") W *27,8
 .I $D(^TMPS111($J,1)) Q
READ2 R *C:1 E  K %PRKB G READ
READ21 G:%TYPCRT="PC" C27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G:$T(@%UPRCOD(ZB))="" READ G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 ;
C27 I C=27 D DELAY R:'$D(%FLL) *C1:%WAIT G:C1<0 ESC D  I CC,$D(%UPRCOD(CC)),$T(@%UPRCOD(CC))'="" K %FLL G @%UPRCOD(CC)
 .S CC="" Q:C1=27  D DELAY R:'$D(%FLL) *C2:%WAIT Q:C2<0  Q:C2=27  S:C2>0 CC=C1_C2 Q:$D(%UPRCOD(CC))
 .R:'$D(%FLL) *C3:%WAIT Q:C3<0  Q:C3=27  S:C3>0 CC=CC_C3 Q:$D(%UPRCOD(CC))
 .R:'$D(%FLL) *C4:%WAIT Q:C4=27  S:C4>0 CC=CC_C4
 I $G(C1)=27 K C1 S C=27 G C27
 I $G(C2)=27 K C2 S C=27 G C27
 I $G(C3)=27 K C3 S C=27 G C27
 I $G(C4)=27 K C4 S C=27 G C27
 I $G(C)=27 G C27
 ;
 I C=0 R *C1:%WAIT I C1>0 S C="0"_C1
 I C=2,$D(^%dbg)#2 S ^%dbg(+^%dbg,"B",U)="+"_U_"^"_$P(^%dbg(+^%dbg),"^",2) I $D(^TMPS111($J,1)) S ^(U)=%CLI_^(U) G M12
COM I $D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" G @%UPRCOD(C)
 I $C($E(C))="=" G ESC
 I C<127,C>31 G READ
 G ERCOM:C<32&(C-31)&(C-29)
 G READ
PRAVO I %X<(RL-1) S %K=%K+1,%X=%X+1 G:%FLI 3 W %pravo G READ
 S SDV=1 D SPRAVO S SDV=60,%K=%K+1,RL=1+R-L,%Y=%S2V("VGR") D P G M13
MET G 1
27 ;
ESC S %XX=22,%YY=23 X %POSIC W:'$D(%S2V("PRINT")) !
 I $D(%S2V("PRINT")),@(%L1DEV_">2") S %GET=" 99 - qitcdl , 96 - xenyl , 95 - xeciyl oikdl " D N^%L1GET I %S>94 D
 .X %chista S PRT=$J S USTR=3,%DEV="USTR",%L1OUT("PRINTER")="",%L1OUT("KOT")=$G(%S2V("TXT1")),%L1OUT("S2V")=""
 .I $D(%S2V("PRINT","KOT"))#2 S %L1OUT("KOT")=%S2V("PRINT","KOT")
 .N N S N="" F  S N=$O(%S2V("PRINT","KOT",N)) Q:N=""  S %L1OUT("KOT",N)=%S2V("PRINT","KOT",N)
 .S %L1OUT("DAF")="" S:$D(%S2V("PRINT","SMALL")) %L1OUT("PRINTER","SMALL")=""
 .I $D(%S2V("PRINT","SM"))#2 S %L1OUT("SM")=%S2V("PRINT","SM")
 .I %S=96!(%S=95) D
 ..N OTB S OTB=%S
 ..F  S %GETHB="" S %GET=": dxrd #30" D N^%L1GET S HEARA=%S Q:$L(HEARA)
 ..K %GETHB
 ..N SUGM S @("SUGM="_%L1SUG)
 ..I OTB=95 K %L1LPT("SND") D  Q:'$G(%L1LPT("SND"))
ZM ...S %GET=": fkxnl xeciyl oikdl ++13,60,HH,,R#++4,E,I++++++^MRKZ\\\\VP" D ^%L1GET Q:%S=""!(%TO="END")
 ...S %L1LPT("SND")=%S I %L1LPT("SND")=$$^%L1MRK S %SAY=" ! jnvrl xcyl mrh oi` " X %XMSGV(1) G ZM
 ...S %L1LPT("SND","ARX")=$G(%S2V("TXT1"))_"\"_SUGM_"\"_HEARA
 ..I OTB=96 K %L1("ARX") S %L1LPT("ARX")=$G(%S2V("TXT1"))_"\"_SUGM_"\"_HEARA
 ..S %L1LPT("DEV")=54,USTR=3
 .N %S2V D Z31^%L1OUT
 .U 0 S %GET="<DONE>" D N^%L1GET
 ;;U 0 W $C(27,91),"1;1;24;80w"
 ;;W $C(27,91),"1;24r" I %TYPCRT'="PC" S %XX=1,%YY=%S2V("NGR") X %POSIC W !
 X %XCL ;;I $D(%ECHO) U $P:(ECHO)
 I %TYPCRT["VT5" U 0 W $C(27),"[?3l"
 I $$HZGTOUCH^%L2MOUSE S %XX=0,%YY=22 X %POSIC,%chiste H .5 I $D(^TMPS111($J,1))
 K %S2V,%L1NMB C:$D(%S2V("FIFO")) "S2VFIFO" Q
HBR I '$D(%HBRY) S TXT="HEBREW" D STR1 S %HBRY="" S X1=%X,Y1=%Y,U1=U S U=U-(%Y-%S2V("VGR")+1)+1 G M12
 I $D(%HBRY) K %HBRY S TXT="ENGLISH" D STR1 S X1=%X,Y1=%Y,U1=U S U=U-(%Y-%S2V("VGR")+1)+1 G M12
MOD G 3
FIND G 6
IND I %FLI S %FLI=0 S TXT="INDEX OUT" D STR1 H 1 G 3
 S %FLI=1 G 3
TABN G:'$D(%SIMB) 810 S %KK=%K F I=U:-1:1 S %OPOZ=0 S:U'=I %KK=$L(^TMPS111($J,I)) D 801 Q:%OPOZ>0&(%KK>0)
 G 802
801 F JJ=0:0 S J=$F(^TMPS111($J,I),%SIMB,%OPOZ) Q:J>%KK!(J=0)!(%KK=0)  S %OPOZ=J
 Q
802 ;
 S TXT="" S:I=1&'%OPOZ TXT=" NOT" S TXT=TXT_" FOUND" D STR1 H 1 G 3:'%OPOZ
 S %OPOZ=%OPOZ-$L(%SIMB)-1
 S %Y=I-U+%Y,%X=%OPOZ-%K+%X,U=I,%K=%OPOZ I %X<RL,%X'<0,%Y<%S2V("NGR"),%Y>0 G 3
 S L=%OPOZ,R=L+RL-1 G M12
810 G READ:'%K S C=%K-%X,%K=%K-.1\10*10,%X=%K-C G:%K'<L 3
 S SDV=L-%K D SLEVO S SDV=60 G M12
TAB I '$D(%SIMB) G 910
 S RAZ=%SIMB,J=%K+2 F I=U:1 Q:'$D(^TMPS111($J,I))  S J=$F(^(I),RAZ,J) Q:J
 S TXT="" S:'J TXT=" NOT " S TXT=TXT_" FOUND" D STR1 G 3:'J S J=J-$L(RAZ)-1
 S %Y=I-U+%Y,%X=J-%K+%X,U=I,%K=J I %X<RL,%X'<0,%Y<%S2V("NGR") G 3
 S L=J,R=L+RL-1 G M12
910 G READ:%K>230 S C=%K-%X,%K=%K\10+1*10,%X=%K-C G:%K'>R 3
 S SDV=%K-R D SPRAVO S SDV=60,RL=1+R-L,%Y=%S2V("VGR") D P S %X=R-L,%K=R G M13
END S S=$L(^TMPS111($J,U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L G 3
ENDS ;
ENDL S ENDS="" I $D(%S2V("HBR")),'$D(HOME) G HOME
 S S=$L(^TMPS111($J,U)) I S>R S SDV=S-R D SPRAVO S %X=0,%Y=%S2V("VGR"),RL=1+R-L,%K=L D P
 S %X=0,%Y=%S2V("VGR"),RL=1+R-L,%K=L D P ;?
 S:$D(U1) U=U1 S:$D(Y1) %Y=Y1 K U1,Y1 S %K=S,%X=%K-L S SDV=60
 G 3
PGLN G 3:'L D SLEVO G M12
COR S %L1WE="" S %YY=19,%XX=0 X %POSIC W %chists,"<<LINE ",U,">>" S %S=^TMPS111($J,U),%6=20
 D ^%L2ERSTR R YYY S U1=U,U=U-(%Y-%S2V("VGR")+1)+1,Y1=%Y S:U<1 U=1 G M12
 ;;D P G 3
13 ;
BK S %K=L,%X=0 G VNIZ
HOME S HOME="" I $D(%S2V("HBR"))&'$D(ENDS) G ENDL
 I L>0 S SDV=L D SLEVO S SDV=60 G M12
 S %K=0,%X=0 G M12 ;;3
PGUP I U'>(%Y-%S2V("VGR")+1) S %SAY=" ! mipezp zligz " X %XMSGV(1) G 3
  S U=U-(%Y-%S2V("VGR")+1)-%S2V("RSTR")+1 S:U'>0 U=1 G M12
PGRG G 3:L>195 D SPRAVO G M12
SPRAVO S L=L+SDV,U1=U,Y1=%Y,U=U-(%Y-%S2V("VGR")+1)+1,R=R+SDV Q
VNIZE D VNIZE1 G M2
VNIZE1 W %vverxe F I=1:1:%S2V("NGR")-1 Q:'$D(^TMPS111($J,U-(%Y-%S2V("VGR")+1)+I))  W %vniz
 S:'$D(^TMPS111($J,U-(%Y-%S2V("VGR")+1)+I)) I=I-1
 S U=U-(%Y-%S2V("VGR")+1)+I,%Y=I,%K=L,%X=0
 Q
PRSC ;
 D ^%L1PRSC
 G M2
PGDW ;
PGDN ;
 I '$D(^TMPS111($J,U-(%Y-%S2V("VGR")+1)+%S2V("RSTR")+1)) S %SAY=" ! mipezpd seq " X %XMSGV(1) G 3
 S U=U-(%Y-%S2V("VGR")+1)+%S2V("RSTR")+1 G BEG+2
VVERX G:%Y=%S2V("VGR1") VIRA S U=U-1,%Y=%Y-1 G M2
VNIZ S U=U+1,%Y=%Y+1 G MAINA:(%Y+1)'<%S2V("NGR"),M2
LEVO G READ:'%K I %X>0 S %K=%K-1,%X=%X-1 G 3
 S SDV=1 D SLEVO S SDV=60 G M12
SLEVO S R=R-$S(L>SDV:SDV,1:L),L=$S(L>SDV:L-SDV,1:0) S U1=U,U=U-(%Y-%S2V("VGR")+1)+1,Y1=%Y Q
SBROS G:^TMPS111($J,U)=%SS 13 S ^(U)=%SS D V G 13
V S %YY=%Y,%XX=$S(%TYPCRT="PC":0,1:%S2V("LEFT")) S:%XX<0 %XX=0 X %POSIC W %chists D W(U,L+1,R) Q
VVERXE S %K=L,U=U-(%Y-%S2V("VGR1")+1)+1,%X=0,%Y=%S2V("VGR1") G M2
P S %XX=%S2V("LEFT") D  I $O(^TMPS111($J,1))
 .I $O(^TMPS111($J,1))
 .;I %S2V("NGR")>23 S %XX=%S2V("LEFT"),%YY=%S2V("VGR") X %POSIC,%chiste Q
 .F I=%Y:1:%S2V("NGR") S %YY=I X %POSIC W $J("",%S2V("RIGHT")-%S2V("LEFT"))
 F I=0:1:%S2V("RSTR")-1 Q:'$D(^TMPS111($J,I+U))  S %YY=I+%Y,%XX=$S(%TYPCRT="PC":0,1:%S2V("LEFT")) X %POSIC D W(I+U,L+1,R) X %XCL W %chists
 ;W %vverxe,%chists Q
 Q
MAINA G:'$D(^TMPS111($J,1)) 3
 S:'$D(^TMPS111($J,U)) ^(U)="" X %XCL W ! S %XX=0,%YY=%S2V("VGR")-1 X %POSIC W %chists S %Y=%S2V("NGR")-1 D V G M2
 ;;S U1=U,U=U-%S2V("RSTR")+1,Y1=%S2V("NGR") G M12
VIRA ;
 G:U<(%S2V("U1")+1) 3 S U=U-1
 X %XCL
 I %TYPCRT="PC",%S2V("RIGHT")-%S2V("LEFT")<80 D  D V G M2
 .D GET^%VIDEO("%s2view",%S2V("LEFT"),%S2V("VGR1"),%S2V("RIGHT")-%S2V("LEFT")+1,%S2V("NGR1")-%S2V("VGR1")-1,2)
 .D PUT^%VIDEO("%s2view",%S2V("LEFT"),%S2V("VGR1")+1,%S2V("RIGHT")-%S2V("LEFT")+1,%S2V("NGR1")-%S2V("VGR1")-1,2)
 .k %s2view
 I $E(%TYPCRT,1,3)="VT5" D  D V G M2
 .W $C(27,91),(%S2V("VGR1")+1)_";"_%S2V("LEFT")_";"_(%S2V("NGR1")-1)_";"_%S2V("RIGHT")_";;"_(%S2V("VGR1")+2)_";"_%S2V("LEFT")_";$v"
 S:C=164 S=$L(^TMPS111($J,U)),%K=$S(S<L:L,S>R:R,1:S),%X=%K-L ;G M2
 D P G M2
 Q
ERCOM S TXT="ISN'T FUNCTION" D STR1 G 3
STR1 ;I $D(TXT) S %SAY=TXT X %XMSGV(1) K TXT Q  ;W %vverxe,%chists S %YY=0,%XX=19 X %POSIC W %CLI,TXT K:'$D(TXT(1)) TXT X %XCL Q
 I $D(TXT) W %vverxe,%chists S %YY=0,%XX=19 X %POSIC W %CLI,$$^%L1HB(TXT)," " K:'$D(TXT(1)) TXT X %XCL Q
STR21 S %SAY=$$^%L1HB(TXT1) X %XMSGV Q
STRN S %SAY=$$^%L1HB(%S2V("TXTN")) X %XMSGN Q
FINDS K %SIMB S TXT="SEARCH KEY <TAB>. INPUT SIMBOL (<ENTER> - END SEARCH):" D STR1
 U $P:(ECHO) R %SIMB D USE I %SIMB="" K %SIMB G 3
 I $A(%SIMB)<32 W *7,"  *** ERROR !" H 2 G FINDS
 G 3
ER W "   ???"
 Q
1 W %vverxe,%chists
 G:%TIP'="R" 1111 S TXT="    LABEL <"_$P(^TMPS111($J,1)," ",1)_"> " D STR1
 U $P:(ECHO) R %STROKA
1110 D USE
 I %STROKA="-" W %vverxe,%chists G 3
 I $D(^TMPS111($J,1))
 S:%STROKA="" %STROKA=$P(^TMPS111($J,1)," ",1) S %STROKA1=$P(%STROKA,":",1)
 S %=$S(%STROKA1["+":"+",%STROKA1["-":"-",1:" ") S %LAB=$P(%STROKA1,%,1)
 I %LAB="",%="+" S I=0,%SM=+$P(%STROKA,"^") G 11101
 S:%LAB="" %LAB=$P(^TMPS111($J,1)," ",1)
 S %LAB=$P(%LAB,"(")
 S %E='(%LAB?1"%".UN!(%LAB?.UN))
 I '%E S %SM=$P(%STROKA1,%,2) S:%SM="" %SM=0 S:%'=" " %SM=%_%SM S %E='(%SM?1"+"1N.N!(%SM?1"-"1N.N)!(%SM?1N.N))
 I %E W *7,"     LABEL ISN'T RIGHT !" H 2 G 1
 F I=1:1 Q:'$D(^TMPS111($J,I))  Q:$P($P(^(I)," ",1),"(")=%LAB
 I '$D(^(I)) W *7,"   LABEL NOT !" H 2 G 1
11101 I '$D(^TMPS111($J,I+%SM)) W *7,"   OFFSET TOO LARGE !" H 2 G 1
 S U=I+%SM,L=0,R=L+%S2GW K %STROKA,%STROKA1,%LAB,%SM,%E,% G M12
 ;
1111 U $P:(ECHO) R "    LINE NUMBER <1> ",%STROKA D USE
 S:%STROKA="" %STROKA="1"
 I %STROKA="-" G 3
 S %LAB=$P(%STROKA,":",1) S:%LAB="" %LAB=1
 S %E='(%LAB?1"+"1N.N!(%LAB?1N.N))
 I %E W *7,"   NUMBER ISN'T RIGHT !" H 2 G 1
 I '$D(^TMPS111($J,%LAB)) W *7,"   NUMBER TOO LARGE !" H 2 G 1
 S U=%LAB,L=0,R=L+%S2GW K %STROKA,%STROKA1,%LAB,%E G M1+2
 Q
6 S TXT="FIND : " D STR1 U $P:(ECHO) S %LS=20,%S="" D ^%ZMSL S C=%S D USE
 I $D(^TMPS111($J,1))
 I C="" G ERCOM:'$D(RAZ) S C=RAZ
 S RAZ=C,J=%K+2 F C=U:1 Q:'$D(^TMPS111($J,C))  S J=$F(^TMPS111($J,C),RAZ,J) Q:J
 W:'J *7," NOT" W " FOUND" G 3:'J S J=J-$L(RAZ)-1
 S %Y=C-U+%Y,%X=J-%K+%X,U=C,%K=J I %X<RL,%X'<0,%Y<%S2V("NGR") G 3
 I %X'<RL!(%X<0&(J-RL>0)) S L=J,R=L+RL-1 G M12
 I %X<0,J-RL<0 S L=0,R=L+RL-1,X1=J,Y1=1 G M12
 S %Y=%S2V("VGR"),X1=%X G M12
 ;;STR1 W %vverxe,%chists,! S %YY=0,%XX=5 X %POSIC W TXT K TXT Q
ENDF F I=U+1:1 Q:'$D(^TMPS111($J,I))
 S U=I-%S2V("RSTR") S:U<1 U=1 S L=0 G M11
BEGF S U=1,L=0 G M11
SAVE ;
 I $D(%S2V("PROG")) S U1=U,Y1=%Y,X1=%X D  S U=U1-$S($G(%MET)="M2":0,1:Y1-$G(%S2V("VGR"))) K:%MET="M2" U1,Y1,X1 G @%MET
 .N U S U=U1 N U1
 .I $D(%S2V("SV")) D SV
 .U 0 I %S2V("VGR")>1!(%S2V("NGR")<24) W $C(27,91),"1;1;24;80w"
 .X %XCL
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%S2V,s2view,U,%MET) D ^%L1C ;;S %OPT=65
 .S %N="" F  S %N=$O(%S2V("PROG",%N)) Q:%N=""  S @%N=%S2V("PROG",%N)
 .K ^S2VTMPS111($J,$ZL) M ^S2VTMPS111($J,$ZL)=^TMPS111($J)
 .I $O(^TMPS111($J,U)) S zl=$ZL
 .D @%S2V("PROG") X:'$D(%S2V("PROGNCA")) %chista
 .S %MET="BEG" D INIT
 .D:$D(%S2V("SV")) REST
 .K ^TMPS111($J) M ^TMPS111($J)=^S2VTMPS111($J,$ZL) K ^S2VTMPS111($J,$ZL)
 .I $O(^TMPS111($J,1))
 S %GET=" SAVE LINE[,COLUMN] <1> #6" D VE^%L1GET S C=%S
 S:C="" C=1 G:C="-" 3 G SAVE:C'?.N.",".N
 G:C'=0 260 W " ERASE OLD ARRAY (Y/N) :"
 R "?",*I G 3:I=%S2GW,SAVE+2:I-89 W *I K %Z G 3
260 I $D(%Z) S YES=0 F %J=0:0 Q:"123"[YES&($L(YES)=1)  W %vverxe,%chists U $P:(ECHO) R "    OLD ARRAY: ERASE - 1,LOOK  - 2,TO ADD - 3 <1> ",YES D USE S:YES="" YES=1
 I $D(%Z) K:YES=1 %Z I YES=2 W # X "F J=1:1 Q:'$D(%Z(J))  W !,%Z(J)" R !!?40,"PRESS <ENTER>",YES S U1=U,Y1=%Y,X1=%X,U=U-(%Y-%S2V("VGR")+1)+1,%Y=%S2V("VGR"),%X=0 D P S U=U1,%Y=Y1,%X=X1 K U1,Y1,X1 G 260
 S:'$D(%Z) %Z=0 S I=999.3 S:C["," I=+$P(C,",",2) S C=+C
 F J=1:1:C Q:'$D(^TMPS111($J,U+J-1))  S %S=$E(^TMPS111($J,U+J-1),%K,%K+I) S:I'=999.3 %S=%S_$J("",I-$L(%S)) S %Z(%Z+J)=$TR(%S,$C(9)," ")
 S %Z=%Z+J-'$D(%Z(%Z+J)) K:'%Z %Z G 3
 Q
INIT S %FLV=1 S:$D(%S2V("IND")) %FLI=+%S2V("IND")
 I $D(^TMPS111($J,1))
 S:'$D(%FLI) %FLI=0 S SDV=60 S:'$D(%TIP) %TIP="G"
 I '$D(%S2V("U1")) S %S2V("U1")=1
 I $G(%S2V("U"))>1 S U=%S2V("U")
 I '$D(%S2V("NGR")) S %S2V("NGR")=24
 I '$D(%S2V("VGR")) S %S2V("VGR")=1
 I '$D(%S2V("LEFT")) S %S2V("LEFT")=0
 I '$D(%S2V("RIGHT")) S %S2V("RIGHT")=79
 ;;S %HBRY="" I $D(%S2V("NOHB")) K %HBRY
 I $E(%TYPCRT,1,3)="VT5",$D(%S2V("SMALL")) S %S2V("RIGHT")=132 W $C(27),"[?3h"
 I %S2V("VGR")<1 S %S2V("VGR")=1
 I %S2V("NGR")>24 S %S2V("NGR")=24
 I %S2V("NGR")>21,$$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE!$D(%S2V("TOUCH")) S %S2V("NGR")=21 I $D(^TMPS111($J,1))
 S TXT=$G(%S2V("TXT"))
 S TXT1=$G(%S2V("TXT1"))
 S %S2V("RSTR")=%S2V("NGR")-%S2V("VGR")
 S %S2GW=%S2V("RIGHT")-%S2V("LEFT")
 D USE
 W *27,"["_%S2V("VGR")_";"_%S2V("LEFT")_";"_%S2V("NGR")_";"_%S2V("RIGHT")_"w"
 S:'$D(%S2V("VGR1")) %S2V("VGR1")=%S2V("VGR") S:'$D(%S2V("NGR1")) %S2V("NGR1")=%S2V("NGR")
 W *27,"["_%S2V("VGR1")_";"_%S2V("NGR1")_"r"
 Q
XEC ;
 D ^%L1CLC
 D USE G 3
 ;
SV D:'$D(%TYPCRT) ^%L1C I %TYPCRT="PC" D GET^%VIDEO("s2view",0,0,80,24,2) Q
 I $E(%TYPCRT,1,3)="VT5",'$D(%NOVIDEO) W $C(27,91),";;;;;;;2$v" Q
 Q
REST D:'$D(%TYPCRT) ^%L1C ;
 I %TYPCRT="PC" D PUT^%VIDEO("s2view",0,0,80,24,2) K s2view S %MET="M2" Q
 I $E(%TYPCRT,1,3)="VT5",'$D(%NOVIDEO) W $C(27,91),";;;;2;;;$v" S %MET="M2" Q
 S %MET="BEG" Q
W(U,L,R) I '$D(%HBRY) W $E(^TMPS111($J,U),L,R) Q
 N %A S %A=^TMPS111($J,U)
 S %A=$$RPL^%L1FRM(%A,%CLI,"<%CLI>")
 S %A=$$RPL^%L1FRM(%A,%CCL,"<%CCL>")
 S %A=$TR($TR($E(%A,L,R),%TES1,%TES2),%TEN,%THB)
 S %A=$$RPL^%L1FRM(%A,"<%CLI>",%CLI)
 S %A=$$RPL^%L1FRM(%A,"<%CCL>",%CCL)
 W %A
 Q
MDRG G HBR
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
DELAY ;
 N %II I %TYPCRT="PC1" F %II=1:1:6000
 Q

%S3BSG
%S3BSG ;  [ 17.04.01  9:35 AM ] [ 04/03/98  7:54 AM ] [ 10/01/92  9:35 PM ]
 N %ECHO,%BE S %MSCH="$P(^(%ST),%R,%SCH)" G BEGROU
 ;-
DELAY I %OPT=65 F X=1:1:200
 Q
BEGGR ;
 I %SCH'>%KOLR,(%SCH'<1),MPOZ(%SCH)<80,%STR<25 S %XX=MPOZ(%SCH),%YY=%STR X %POSIC Q
 Q
PNS W %vverxe,%chists,"--LINE:",%ST S %OLDS=$S($D(^(%ST)):^(%ST),1:"") D BEGGR
 Q
STROKA ;
 W *13,%chists I $D(^(%ST)) F JJ=1:1:%KOLR Q:JJ>$L(^(%ST),%R)  I $P(^(%ST),%R,JJ)'="" S %XX=MPOZ(JJ),%YY=%STR X %POSIC W $P(^(%ST),%R,JJ)
 Q
NAZAD ;
 I %SCH>1 S %SCH=%SCH-1 D BEGGR
 Q
VPERED ;
 I %SCH<%KOLR S %SCH=%SCH+1 D BEGGR
 Q
VVERX ;
 I %ST=1 S %ST=0 W *13,%chists D VSTAV^%S3BSG1 Q
 S $P(^(%ST),%R,%SCH)=%S,%ST=%ST-1,%SCH=1,%S=$S($D(^(%ST)):$P(^(%ST),%R,%SCH),1:"") I %STR>1 S %STR=%STR-1 D PNS Q
 I %STR=1 D P S %SCH=1 D PNS
 Q
VNIZ ;
 S:%SCH'>%KOLR $P(^(%ST),%R,%SCH)=%S
 S %ST=%ST+1,%SCH=1,%S=$S($D(^(%ST)):$P(^(%ST),%R,%SCH),1:"")
 I %STR<23 S %STR=%STR+1 D PNS Q
 I %STR'<23 W ! D STROKA S %SCH=1 D PNS
 Q
VVERXE ;
 I %ST>%STR S %ST=%ST-%STR+1,%STR=1,%SCH=1 D PNS Q
 I %ST'>%STR  S %STR=%STR-%ST+1,%ST=1,%SCH=1 D PNS
 Q
 ;-
VVOD S %FLL=1,%FLV=1
 I %C>31&(%C<127) S %S=$C(%C)_$E(%S,2,$L(%S))
 S %LS=$S($D(MDLIN(%SCH,1)):MDLIN(%SCH,1),1:255) S:$D(MSIMB(%SCH))#10 CIST=MSIMB(%SCH)
 I $D(CIST)&(%C>31)&(%C<127) S %FLV=0 Q
 ;
VIZ ;
 I '$D(%LS) S %LS=8
 D ^%ZMSL
ENDCYC I $D(MDLIN(%SCH,2)) I ($L(%S)<%LS)&(MDLIN(%SCH,2)=1) W *7,%vverxe,"***FORMAT*** !" D BEGGR S %FL=0 G VIZ
 S $P(^(%ST),%R,%SCH)=%S S %SCH=%SCH+1
 Q
 ;-
BEGROU ;
 S %SCH=1,%ST=1,%PRFIN=0 K CIST S:'$D(%STR) %STR=1 D PSHAP
 I '$D(MPOZ) F I=1:1:8 S MPOZ(I)=I*10-9
 I $D(MDLIN)<10 F I=1:1:8 S MDLIN(I,1)=9
 F I=1:1 Q:'$D(MPOZ(I))
 S %KOLR=I-1 I '$D(%R) S %R="\"
 S:'$D(^MOTV($J,%ST)) ^(%ST)="" D BEGGR,P
 S %SCH=1,%ST=1 D PNS
CVV ;
 K %TO S %S=$S($D(^(%ST)):$P(^(%ST),%R,%SCH),1:"")
OBRVV ;
 S %D=0  R *%C I %C=13 S %SCH=%SCH+1 G ENDOBR
 I %C>31,%C<127 G M
 I %C=%DEL S %S=$E(%S,2,255),%FL=1 G M2
 I %C=27 R *%C1:0 D DELAY D:%C1<0 NAZAD G:%C1<0 ENDOBR R *%C2:0 S %D=%C1_%C2 D:$T(@%UPRCOD(%D))'="" @%UPRCOD(%D) G CVV
 I %C=0 D DELAY R *%C1:0 D DELAY R *%C2:0 I %C1>0 S %D="0"_%C1 D:$T(@%UPRCOD(%D))'="" @%UPRCOD(%D) G CVV
 I %C=9!(%C=25) S %PRFIN=1 G ENDOBR
 I %C=30 D LNAZAD^%S3BSG1 G CVV
 I %C=14 D LVPERED^%S3BSG1 G CVV
 I %C=16 S RAZD=%R D PEREST^%S3BSG1 G CVV
 I %C=4 S ^(%ST)=$P(^(%ST),%R,1,%SCH-1) S:%SCH>1 %SCH=%SCH-1 D STROKA,BEGGR G CVV
 I %C=20 F I=1:1:23-%STR Q:'$D(^(%ST+I))  ;  W %vniz
 I  S %STR=%STR+I-'$D(^(%ST+I)),%ST=%ST+I-'$D(^(%ST+I)),%SCH=1 D PNS G CVV ;          *** ‚�ˆ‡ �Š�.
 I %C=21!(%C=22) D VSTAV^%S3BSG1:%C=22,UDAL^%S3BSG1:%C=21 G CVV
 I %C=26 D ZAP^%S3BSG1 G CVV
 I %C=18 D REST^%S3BSG1 G CVV
 I %C=27 S %PRFIN=1 G ENDOBR
 G:%C'>31 CVV
M S %FLL=1,%I=1
 I %C>31&(%C<127) S %A=$C(%C)
M2 S %LS=$S($D(MDLIN(%SCH,1)):MDLIN(%SCH,1),1:255)
 S:$D(MSIMB(%SCH))#10 CIST=MSIMB(%SCH)
 S %L=$L(%S) D VIZ
ENDOBR I %PRFIN S %XX=0,%YY=23 X %POSIC W ! G END
 I $G(%TO)="UP" S %S=$S($D(^(%ST)):$P(^(%ST),%R,%SCH),1:"") D VVERX G CVV
 I $G(%TO)="DW" S %S=$S($D(^(%ST)):$P(^(%ST),%R,%SCH),1:"") D VNIZ G CVV
 D:%SCH>%KOLR VNIZ D BEGGR G CVV
END K %SCH,CIST,%FL,%LS,%C,%D,%REG,%KOLR,%I,%I1,%J
 S %CL0=44 X %XCL
 Q  ;
 ;-
PRAVO G M
PGUP D LNAZAD^%S3BSG1 Q
PGDN D LVPERED^%S3BSG1 Q
ADDL D VSTAV^%S3BSG1 Q
DELL D UDAL^%S3BSG1 Q
SOOB W %vverxe s %pn=3 w %pravon,*7,TXT X %XCL D BEGGR
 Q
STR1 W %vverxe s %pn=3 X %pravon W *7
 Q
CHISTE D STR1  W " HOW MATH OF LINES DELETE ? <ALL> " R %COLUD X %XCL
 I %COLUD=0 D BEGGR Q
 I %COLUD="" S ^(%ST)=$P(^(%ST),%R,1,%SCH-1) F I=%ST+1:1 Q:'$D(^(I))  K ^(I)
 I %COLUD="" D BEGGR,P,PNS Q
 I %COLUD'?1N.N W *7,"   *** ERROR !" H 2 G CHISTE
 X "F I=%ST:1 Q:'$D(^(I+%COLUD))  S ^(I)=^(I+%COLUD) K ^(I+%COLUD)" S %SCH=1 D BEGGR,P,PNS
 Q
SBROS D SBROS^%S3BSG1 Q
P ;
 W *13 X %chiste F I=0:1:23-%STR Q:'$D(^(%ST+I))  D P1
 Q
P1 F JJ=1:1:%KOLR Q:JJ>$L(^(%ST+I),%R)  I $P(^(%ST+I),%R,JJ)'="" S %XX=MPOZ(JJ),%YY=%STR+I X %POSIC W $P(^(%ST+I),%R,JJ)
 Q
PSHAP G:$D(S1BDC) PSHAP1 G:'$D(KOD) EPS G:KOD="" EPS G:'$D(^SHP(KOD,1))#10 EPS
 W # F %STR=1:1 Q:'$D(^(%STR))  Q:$E(^(%STR))="R"  W !,^(%STR)
 I '$D(^(%STR)),$D(^(%STR-2)),^(%STR-2)[":",$D(MPOZ)<10 S MPOZ(0)=0 F I=1:1 S MPOZ(I)=$F(^(%STR-2),":",MPOZ(I-1)) Q:MPOZ(I)=0  S:I>1&('$D(MDLIN(I-1,1))) MDLIN(I-1,1)=MPOZ(I)-MPOZ(I-1)-1
 I  K MPOZ(I),MPOZ(I-1),MPOZ(0) F I=1:1 Q:'$D(MPOZ(I))  S MPOZ(I)=MPOZ(I)-1
 G EPS
PSHAP1 K MPOZ(0) S PZ=0 D @$S($D(KOD):"APAK+1^L1PAK",1:"APAK^L1PAK")
 I PZ D ^L1777 G PSHAP1
 G:'$D(^SHP(KOD,1))#10 EPS
 W # F %STR=1:1 Q:'$D(^(%STR))  Q:$E(^(%STR))="R"  W !,^(%STR)
 I '$D(^(%STR)),$D(^(%STR-2)),^(%STR-2)[":",$D(MPOZ)<10 S MPOZ(0)=0 F I=1:1 S MPOZ(I)=$F(^(%STR-2),":",MPOZ(I-1)) Q:MPOZ(I)=0  S:I>1&('$D(MDLIN(I-1,1))) MDLIN(I-1,1)=MPOZ(I)-MPOZ(I-1)-1
 I  K MPOZ(I),MPOZ(I-1),MPOZ(0) F I=1:1 Q:'$D(MPOZ(I))  S MPOZ(I)=MPOZ(I)-1 Q
 I '$D(^(%STR)),$D(^(%STR-2)),^(%STR-2)["!",$D(MPOZ)<10 S MPOZ(0)=0 F I=1:1 S MPOZ(I)=$F(^(%STR-2),"!",MPOZ(I-1)) Q:MPOZ(I)=0  S:I>1&('$D(MDLIN(I-1,1))) MDLIN(I-1,1)=MPOZ(I)-MPOZ(I-1)-1
 I  K MPOZ(I),MPOZ(I-1),MPOZ(0) F I=1:1 Q:'$D(MPOZ(I))  S MPOZ(I)=MPOZ(I)-1
EPS X %XCL Q

%S3BSG1
%S3BSG1 ; [ 10/01/92  8:04 PM ]
VSTAV Q:%STR=23  F %LASTI=1:1 Q:'$D(^(%LASTI))
 S %LASTI=%LASTI-1
 F I=%LASTI:-1:%ST+1 S ^(I+1)=^(I)
 S %ST=%ST+1 S:%ST>1 %STR=%STR+1 S ^(%ST)="",%SCH=1 W %vniz D P,PNS^%S3BSG
 Q
UDAL F I=%ST:1 Q:'$D(^(I+1))  S ^(I)=^(I+1)
 K ^(I) D P S %SCH=1 D PNS^%S3BSG
 Q
SBROS S ^(%ST)=%OLDS D STROKA^%S3BSG,BEGGR^%S3BSG
 Q
LNAZAD Q:%ST'>%STR  S %ST=%ST-%STR-19 S:%ST<0 %ST=1 S %SCH=1,%STR=1 D:%ST=1 PSHAP^%S3BSG S %V=^MOTV($J,1) D BEGGR^%S3BSG,P,PNS^%S3BSG
 Q
LVPERED I %ST'<%STR Q:'$D(^(%ST-%STR+21))  S %ST=%ST+21-%STR,%STR=1,%SCH=1 D BEGGR^%S3BSG,P,PNS^%S3BSG Q
 I %ST<%STR Q:'$D(^(21-%STR+%ST))  S %ST=21-%STR+%ST,%STR=1,%SCH=1 D BEGGR^%S3BSG,P,PNS^%S3BSG
 Q
ZAP K %Z W %vverxe,%chists,"   HOW MATH LINE TO SAVE ? <1> "
 R %COLS S:%COLS="" %COLS=1 I %COLS'?1N.N W *7,"   *** Ž˜ˆ�Š€ !" G ZAP
 F J=1:1:%COLS Q:'$D(^(%ST+J-1))  S %Z(J)=^(%ST+J-1)
 S %Z=J-'$D(^(%ST+J-1))  D PNS^%S3BSG
 Q
REST I $D(%Z)'=11 S TXT="HASN'T ARRAY !" D SOOB^%S3BSG Q
 I %Z'?1N.N!(%Z'>0) S TXT="ARRAY ISN'T GOOD !" D SOOB^%S3BSG Q
 F J=%ST:1 Q:'$D(^(J))
 F J=J+%Z-1:-1:%ST+%Z+1 S ^(J)=^(J-%Z)
 F J=1:1:%Z S ^(%ST+J)=%Z(J)
 D P,PNS^%S3BSG
 Q
SOOB W %vverxe,%chists,!,%vverx,?5,*7,TXT D BEGGR
 Q
STR1 W %vverxe,%chists,!,%vverx,?5
 Q
P ;
 W *13 X %chiste F I=0:1:23-%STR Q:'$D(^(%ST+I))  D P1
 Q
P1 F JJ=1:1:%KOLR Q:JJ>$L(^(%ST+I),%R)  I $P(^(%ST+I),%R,JJ)'="" S %XX=MPOZ(JJ),%YY=%STR+I X %POSIC W $P(^(%ST+I),%R,JJ)
 Q
PSHAP Q:'$D(KOD)  Q:'$D(^SHP(KOD,1))#10
 W # F %STR=1:1 Q:'$D(^(%STR))  Q:$E(^(%STR))="R"  W !,^(%STR)
 I '$D(^(%STR)),$D(^(%STR-2)),^(%STR-2)[":",$D(MPOZ)<10 S MPOZ(0)=0 F I=1:1 S MPOZ(I)=$F(^(%STR-2),":",MPOZ(I-1)) Q:MPOZ(I)=0  S:I>1&('$D(MDLIN(I-1,1))) MDLIN(I-1,1)=MPOZ(I)-MPOZ(I-1)-1
 I  K MPOZ(I),MPOZ(I-1),MPOZ(0) F I=1:1 Q:'$D(MPOZ(I))  S MPOZ(I)=MPOZ(I)-1
 Q
PEREST ;
 S NEWROU="%S3BSG1" S NEWNEW="GRAF,LINE,NGRAF,NG,LINE1" X XNEW1
 S ERP=0 I $D(^MOTV($J,1))
 W %vverxe,%chists R " GRAF NUMBER  > ",NGRAF I NGRAF="" G EPER
 K NG F I=1:1:$L(NGRAF,",") S NG(I)=$P(NGRAF,",",I) I NG(I)'?1N,NG(I)'?2N,'$D(MPOZ(NG(I))) S ERP=1
 I ERP W *7,"   ???" G PEREST
 F I=1:1 Q:'$D(^(I))  S LINE=^(I),LINE1="" D PE1 G PER1
PE1 F J=1:1 Q:'$D(NG(J))  S GRAF=$P(LINE,RAZD,NG(J)) S LINE1=LINE1_GRAF_RAZD
 S ^(I)=LINE1 K LINE
 S NEWROU="%S3BSG1" X XNEW2
 Q
PER1 S %ST=%ST-%STR+1,%STR=1,%SCH=1 S:%ST<0 %ST=1
 D PSHAP^%S3BSG S %V=^MOTV($J,1)
 D BEGGR^%S3BSG,P,PNS^%S3BSG,BEGGR^%S3BSG
EPER
 Q

%S3BST
%S3BST ; HEBREW [ 15.03.19 08:18 ] [ 15.02.04 14:21 ] [ 16.01.04 11:30 ] 
 ;INP: %MBS("Z",I) - QUEST
 ;     %MBS("O",I) - ANS
 ;     %MBS("D",I,1) - MAX LENGTH OF ANS
 ;     %MBS("D",I,2) - MAX LENGTH AFTER DOT
 ;     %MBS("S",I) - SIMBOL COLLECTION
 ;     %MBS("RGS",I) - TYPE ("E","H")
 ;     %MBS("C",I) - TEST COMMAND (%FLOSH =1 - ERROR)
 ;     %MBS("B",I) - TOP BOUND
 ;     %MBS("N") - KOTERET
 ;     %MBS("DO") - COMMAND FOR AZAGA OR FOR INIT
 ;     %MBS("DZ",I) - ZAPR - DLINA ZAPR
 Q:'$D(%MBS("Z"))
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%MBS) D ^%L1C
 U $P:(NOECHO:NOWRAP) D:'$D(%POSIC) ^%L1C W %HBR
 S:'$D(%MBS("B")) %MBS("B")=0 S:%MBS("B")>15 %MBS("B")=15 S %MBS("F")=0
 S:'$D(%MBS("DZ")) %MBS("DZ")=30 S %30V=%MBS("DZ")
 S:'$D(%RGR) %RGR=78 S %FL0=%RGR-%30V
 S %SH=0,%RST=20-%MBS("B") ;
 G VIV
 ;-
OBRVV ;
 D BEGS I $D(%TO) D:%TO="UP" VVERX,VVERX K %TO Q
 U $P:(NOECHO:NOWRAP) ;R *%C
VVOD S %S=$G(%MBS("O",%SH)) K CIST,%LS
 S %LS=%FL0-2 S:$D(%MBS("D",%SH,1))#10 %LS=%MBS("D",%SH,1)
 S:$D(%MBS("S",%SH))#10 CIST=%MBS("S",%SH)
VIZ ;
 S $X=%XX,$Y=%YY;,%FLL=""
 K %FLINSO I $D(%FLINS) S %FLINSO=%FLINS
 I $D(%MBS("RGS",%SH)),%MBS("RGS",%SH)="E" S %XX=%XX-%LS+1 S:%XX<0 %XX=0 X %POSIC D ^%ZMSL U $P:(NOECHO:NOWRAP) G CONTR
 D ^%L1ZMS U $P:(NOECHO:NOWRAP)
 I $D(%FLINSO) S %FLINS=%FLINSO
CONTR ;
 I %S=".",$D(%MBS(".")) S %TXT=" WITHOUT DOT !" D SOOB,BEGS G VIZ
 I %S="."!(%S="&") S %MBS("O",%SH)="",%SH=%SH+%KOLS+1-%SCH,%SCH=%KOLS+1 G ENDC
 I $G(%TO)="END" S %SH=%SH+%KOLS+1-%SCH,%SCH=%KOLS+1 G ENDC
 S %SOLD=%S
 I $D(%MBS("D",%SH,2)) I ($L(%S)<%LS)&(%MBS("D",%SH,2)=1) S %TXT="*** FORMAT !" D SOOB,BEGS G VIZ
 S %MC=$S($D(%MBS("C",%SH))#2:%MBS("C",%SH),$D(%MBS("C"))#2:%MBS("C"),1:"")
 I %MC'=""&(%S'="&") X "S %FLOSH=0,%TXT="""" "_%MC I %FLOSH D SOOB,BEGS K %MC G VIZ
 S %MBS("O",%SH)=%S
 S %MP=$S($D(%MBS("P",%SH))#2:%MBS("P",%SH),$D(%MBS("P"))#2:%MBS("P"),1:"")
 I %MP'="",%S'="&" X "S %FLOSH=0 S %XX=0,%YY=%MBS(""B"") X %POSIC x %chiste D @%MP" S:'$D(%SCH) %SCH=0 S %SH1=%SH,%SCH1=%SCH,%SH=%SH-%SCH D P S %SH=%SH1,%SCH=%SCH1,%MP="" K %SH1,%SCH1 D BEGS
 S %SH=%SH+1,%SCH=%SCH+1
ENDC S:%S="&" %MBS("F")=1 X %XCL
 K %FLL,%BEG,%I,%NP,%MC,%MP,%L,%C,%D,%LS,%J
 Q
VIV ;
 D P
 S %SH=%SH-%SCH+1,%SCH=1
 I $D(%MBS("LOOK")) G ZR
CVV ;
 D OBRVV G CVV:%SCH'>%KOLS
 I %MBS("F") K %MBS("O") G END
ZR S %XX=0,%YY=22 X %POSIC W %chists S %XX=5,%YY=22 X %POSIC W %HBR
 I '$D(%MBS("LOOK")) S %GET=" : 1 - oewiz ,"_$S($D(%MBS("O",%SH-%RST-1)):"2 - mcew jqn ,",1:"")_" <ENTER> "_$S('%PRFIN:"`ad jqn",1:"d`ivi") D N^%L1GET S %REG=%S
 I $D(%MBS("LOOK")) S %GET=" <ENTER> ywd",%REG="" D N^%L1GET S %SH=%SH+%KOLS+1-%SCH,%SCH=%KOLS+1
 I %REG="" G:%PRFIN END S %SH=%SH-1 G VIV
 I %REG=2&($D(%MBS("Z",%SH-%RST-1))) S %SH=%SH-1.1\%RST-1*%RST G VIV
 I %REG'=1 W *7,%vverx x %chiste G ZR
 S %SH=%SH-%SCH+1,%SCH=1
 D BEGS G CVV
END S %XX=0,%YY=23 X %POSIC
 K %SH,%SCH,CIST,%FLL,%LS,%C,%D,%REG,%KOLS,%I,%I1,%J,%30V
 K %XX,%YY X %XCL ;I $D(%ECHO) U $P:(ECHO:WRAP:WIDTH=80)
 Q
VVERX ;
 I %SCH>1 W %vverx S %SCH=%SCH-1,%SH=%SH-1
 Q
VNIZ ;
 W %vniz S %SCH=%SCH+1,%SH=%SH+1
 Q
BEGS ;
 S %XX=%RGR-%30V-2,%YY=%SCH+%MBS("B") X %POSIC
 Q
SOOB S %SAY=TXT X %XMSGV(1) K TXT,%SAY
 Q
SOOB1 W %vverxe,%chists S %XX=10,%YY=0 X %POSIC W $$W^%L1C(%TXT),%chists
 K %TXT
 Q
ER S %TXT="*** CHECK COMMAND ERROR ! " K %MBS("C") D SOOB,BEGS S $ZS="ER^%S2BST" G VIV
 Q
P ;
 I $D(%MBS("N")) S %SAY=%MBS("N") X %XMSGV S:%MBS("B")=0 %MBS("B")=1
 S %YY=%MBS("B"),%XX=0 X %POSIC X %chiste
 F %SCH=1:1:%RST S %SH=%SH+1 Q:$D(%MBS("Z",%SH))=0  D
 .S %XX=1
 .S %YY=%MBS("B")+%SCH X %POSIC
 .S:'$D(%MBS("O",%SH)) %MBS("O",%SH)="" W $J($$W^%L1C(%MBS("O",%SH)),%FL0-2)
 .S %XX=%RGR-%30V-1 X %POSIC W ":",$$HBR^%L1FRM($$W^%L1C(%MBS("Z",%SH)),%30V-1)
 S %KOLS=%SCH-'$D(%MBS("Z",%SH)) S %PRFIN='$D(%MBS("Z",%SH+1)) ;   ŠŽ‹-‚Ž ‘’�ŽŠ �€ �Š�€�…
 I $D(%MBS("DO")) X %MBS("DO")
 Q
 

%S3G
%S3G ; [ 04/30/99  6:06 PM ] [ 06/18/98 10:25 AM ] [ 06/15/98 11:24 AM ]
 D ^%L1C X %chista W %LIGHT1,%CV("YF")
 I $H>57920 W !!," SORRY , YOUR EVALUATION TIME IS OVER "
 W !,"   IT'S EVALUATION VERSION OF FULL SCREEN GLOBAL EDITOR "
 W !," IF YOU WANT TO GET FULL VERSION , TECHNICAL SUPPORT"
 W !," AND NEW VERSIONS OF PROGRAMM SEND PLEASE "_%CV("RF")_"30$"_%CV("YF")_" USA (CASH) BY ADDRESS :"
 W !!,%CV("CF"),"  HAGVURA 15/30, QYRIAT-GAT , ISRAEL , 82000"
 W !,"        LEV FAINSTEIN"
 W !!,%CV("YF")," QUESTIONS OR/AND SUGGESTIONS YOU CAN SEND TO E-MAIL :"
 W !!,%CV("RF"),"   LEV1957@INTERNET-ZAHAV.NET "
 W %CV("YF") R !!," <ENTER>",BK X %XCL
 I $H>57920 Q
 S %S3G="" D B^%S3GLKR
 Q

%S3GLK1
%S3GLK1 ; [ 06/18/98  9:34 AM ] [ 06/13/98  9:41 AM ] [ 11/18/92  7:56 AM ]
INSTR1 W !,"*****************************************************"
 W !,"********************************************************"
 Q
INSTR W !,"********************************************************************"
 W !,"  ENTER GLOBAL REFERENCE F.EX. ^A(1,""BC"",""124-A"")"
 W !,"  OR REFERENCE & ':' TO SEARCH A NODE"
 W !,"  OR ?? FOR A LIST OF ALL GLOBALS"
 W !,"*******************************************************************",!
 Q
HELP2 W !!,""
 G YES^%S3GLKR
HELP3 W !
 G ZK^%S3GLKR
 Q

%S3GLKR
%S3GLKR ; [ 29.12.23 10:06 ] [ 10/04/2000  9:59 AM ] [ 06/18/98 10:42 AM ] 
 W !!,"Routine not directly callable by user - use ^%S3G"
 Q
B N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%S3G,%S2ERG)
 N $ZT D ^%L1C X %chista S %SAY=" FULL SCREEN GLOBAL EDITOR " X %XMSGV
 W !!?2,"WARNING ! IF LENGTH OF GLOBAL REFERENCE + DATA MORE THAN 255 SYMBOLS"
 W !?2,"YOU'LL GET ERROR <MXSTR> IN FULL SCREEN MODE ."
 ;;W !?2,"TO AVOID IT SET MODE FLAG TO GLOBAL DATA LENGTH UP TO 511 CHARACTERS",!
 ;;W !?2,"IF LENGTH OF DATA GREATER OF 255 SYMBOLS"
 ;;W !?2,"EDITOR IS NOT WORK PROPERLY !!!",!
BG K (%S3G,%S2ERG) D ^%L1C
 I $S<(19*1024) W !!?10,"FREE MEMORY NOW IS "_$J($S/1024,1,1)_"K . MINIMUM MEMORY FOR EDITOR IS 36K " Q
 S MAC="^" N %HBRY
KOD K (%Z,MAC,%S3G,%S2ERG) S %BEG=1,%BE="E" D:'$D(%POSIC) ^%L1C S %TIPT=1 S PZ="W $C(27,91),24,*59,1,*72"
 S $ZT="S zr=$R X ^ZT G ER^%S3GLKR" K %HBRY W %ENG
 ;;W !!,"HEBREW (Y/N) <Y> ? " D ^%ZMSL I "Nn"'[%S S %HBRY=""
 I $D(%S3G("MAC")) S MAC=%S3G("MAC") G REG4
 W !!,"GLOBAL NAME (EXIT - <ESC> , HELP - ? ) : " S %S=$S($D(MAC):MAC,1:"^")
 D ^%ZMSL G:($G(%TO)="END")!(%TO="UP") END S MAC=%S
 I MAC="?"!(MAC="^?") D INSTR^%S3GLK1 K MAC G KOD
 I MAC="??"!(MAC="^??")!(%TO="F7") D ^%GD K (%Z,%S3G,%S2ERG) G BG
 G:MAC=""!(MAC="^")!($G(%TO)="END") END
 I $E(MAC,$L(MAC))=":" S MAC=$E(MAC,1,$L(MAC)-1) D  S MAC=$R D ^%L4NU G:FLAG="." REG0 G:FLAG'="" KOD
 .I $D(@MAC)
 I '($D(@MAC)#2) W !!,*7," <",MAC,">  - UNDEFINED !" G REG0
 W !!,MAC,"  ",$E(@MAC,1,50),!?10,$E(@MAC,51,120),!?10,$E(@MAC,121,190)
 G:'%BEG REG
REG0 W !!,"1 - EDIT THIS NODE"
 W !,"2 - FULL SCREEN GLOBAL'S EDITOR"
 W !,"<ENTER>- EXIT"
REG S BD1=$S($F(MAC,"("):$E(MAC,1,$L(MAC)-1)_",""",1:MAC_"(""")
 S %BEG=0 W !!,"FUNCTION (? - HELP) > " S CIST="12?",%LS=1 K %S D ^%ZMSL S %REG=%S G:%REG="" KOD
 G:%REG="?" REG0 I '("12"[%REG) W ?40,*7,"  ???" G REG
 D @$S(%REG=1:"REG1",1:"REG4")
 G KOD
END Q
ER I $F($ZS,"CTRAP") W !,*7,"***  BYE ..." G END
 W *7,"   *** ERROR :",$ZS H 2 G KOD
REG1 ;
 I '($D(@MAC)#10) W !!,*7,"*** THIS NODE IS UNDEFINED ! "
 S %S=$G(@MAC) W !!,"PLEASE...",!!! S %Y1=17 D ^%L1WE
 I %S="",'($D(@MAC)#10) Q
 S @MAC=%S W !!!! D COMM
 Q
REG4 K %PRER4 W *27,7 I $D(%S2ERG) S %SAY=" YOU ALREADY IN EDITOR ! " X %XMSGV(1) W *27,8 Q
 W !!!?10,"WAIT PLEASE...",!!!
 K ^S000($P) D ^%S1GLSV I FLAG=1 W *7,!,"*** ARRAY TOO LARGE !",!,"     CHOOSE SUBGLOBAL ." H 2 K ^S000($P) Q
 S U=1
ERG I $D(%S2ERG) S %SAY=" YOU ALREADY IN EDITOR ! " X %XMSGV(1) Q
 I '$D(%S3G("VIEW")) S %TIP="G",%FLI=1 D ^%S2ERG
 I $D(%S3G("VIEW")) S %TIP="G",%FLI=1 K ^TMPS111($J) M ^TMPS111($J)=^S000($P) D ^%S2VIEW G END4
YES I '$D(%S3G("VIEW")) W # K %Q S %Q("Z")="SAVE " D ^%S1ASK I 'YES K ^S000($P) Q
ZNAME S $ZT="ZG "_$ZL_":ER4"
 W !,"NEW GLOBAL'S NAME [ WITHOUT '()' ]:^" S %S=$P($P(MAC,"(",1),"^",2),%LS=9 D ^%ZMSL I %S=""!($G(%TO)="END") K ^S000($P) Q
 S NNAME=%S I $E(NNAME)'="[",NNAME'?1"%".UN&(NNAME'?1A.AN) W *7,"   ERROR !" G ZNAME
 I $E(NNAME)="[",$P(NNAME,"]",2,255)'?1"%".UN&($P(NNAME,"]",2,255)'?1A.AN) W *7,"   ERROR !" G ZNAME
ZC S %Q("Z")="VERIFY INDEXES " D ^%S1ASK I 'YES G ZK
 W !!!?10,"INDEX VERIFICATION ...",!!! K %S0 S I1=1 Q:'$D(^S000($P,1))
CHECK S %PRD=0 K ^s3glkr($P)
 F I=I1:1 Q:'$D(^S000($P,I))  W:'(I#500) "." S %IX=$P($P(^(I),")=",1),"(",2,511) I %IX'="",$P($P(^(I),"="),"(",2)'="" X "I $D(@(""^s3glkr($P,""_%IX_"")"")) W *7,!?5,""DOUBLE INDEX !"" H 1 S U=I,%PRD=1" G:%PRD ERG S @("^s3glkr($P,"_%IX_")")=""
ZK K %S0,%Q S %Q("Z")="KILL OLD GLOBAL " D ^%S1ASK
 I YES,NNAME=$P($P(MAC,"(",1),"^",2) D
 .K ^s3glkr1($P) W !!,"SAVING OLD GLOBAL TO GLOBAL ^s3glkr1($P) ..."
 .S MAC1=MAC,MAC2="^s3glkr1($P)" D ^%S1GC1
 W !!?10," SAVING ^"_NNAME_" ... ",!! S I1=1
 N A S A=$G(@MAC,"%s3glkr") K:YES @MAC ;;I A'="%s3glkr" S @MAC=A
 F I=I1:1 Q:'$D(^S000($P,I))  D
 .W:'(I#500) "."
 .S %IND=$S($P($P(^(I),"="),"(",2)'="":"("_$P($P(^(I),")="),"(",2)_")",1:"")
 .Q:MAC["("&(%IND="")
 .N %THN S %THN=$P(^S000($P,I),$S(%IND="":"=",1:")="),2,511) Q:%THN["<<<<<UNDEF>>>>>"
 .S %THN=$$STW^%L1ED(%THN)
 .S @("^"_NNAME_%IND)=%THN
 K ^S000($P),^s3glkr($P) ;;ZF
 D COMM
END4 Q
 ;
ER4 S %PRER4="" I $ZS["<PROT" W *7,!," PROTECTION " H 2 G ZNAME
 I $ZS["<PGMOV" W *7,!," MEMORY PROBLEM !" H 2 K %S0 S $ZT="ZG "_$ZL_":ER4" S I1=I-1 G ZC
 I $ZS["<INRPT" W *7,!," *** INTRERUPT..." H 2 G END
 W !,*7,"*** ERROR ",$P($ZS,">",1)," > IN LINE ",I W:$D(%IND) !,"%IND=",%IND H 2
 S $ZT="ZG "_$ZL_":ER4" S U=$S(I>0:I,1:1) G ERG
 Q
COMM ;
 Q:$D(%S3G)
 S %GET="COMMENT :++23,1,EE#++60,E,I" D ^%L1GET ;;Q:%S=""!(%TO="END")
 S ^%ERGS(+$H,MAC,$P($H,",",2))=%S S ^%ERGS(+$H,MAC)=$ZG
 Q
 

%S3GLSV
%S3GLSV(MAC,FILE,PRM) ;     [ 04.02.26 16:21 ] [ 04.02.24 15:12 ] [ 
 Q:$G(^S3NOGIB)=1
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%S3GLSV"
 S MAC=$$^%S1MCIND(MAC)
 ;
 N %PR,%MAC1,%MAC2,%ORD,%DEV,FLAG
 N MSD0 S MSD0=$G(MSD) N MSD S MSD=MSD0
 I '$G(MSD) S MSD=$$GET^%W1PRM("MSD")
 N DIR S DIR=$P(FILE,"/",1,$L(FILE,"/")-1)
 I $$^%L1ZOS(10,DIR)<0 D
 .ZSY "mkdir -p "_DIR
 ;
 C FILE O FILE:(APPEND)
 U FILE
 I $G(PRM)="K" W "#K "_MAC,! G END
 S %PR=0,FLAG=0
 ;
 I $D(@MAC)
 S %MAC1=$R,%MAC2=$E($R,1,$L($R)-1)_$S(MAC["(":",",1:"")
 ;
 I ($D(@MAC)#10)'=0 S %PR=1 D
 .W MAC,!,$G(@MAC),!
 .D REM(MAC,@MAC)
 ;
 I $G(PRM)=1 G END
 I %MAC1["(" S %MAC1=$E(%MAC1,1,$L(%MAC1)-1)_","""")"
 I %MAC1'["(" S %MAC1=%MAC1_"("""")"
 S %MAC1=$Q(@%MAC1) I %MAC1="" G END
 ;
PR F  Q:%MAC1'[%MAC2  Q:%MAC1=""  W %MAC1,!,$G(@%MAC1),! D REM(%MAC1,$G(@%MAC1)) S %MAC1=$Q(@%MAC1) Q:%MAC1=""
 ;
END C FILE
 K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2 Q
 ;
ER D SVER^%L1X G END
 ;
REM(IND,TXT) ;
 Q:'$G(@$$^W4PRM@("REMGIB"))
 I '$D(MSD) S MSD=$$GET^%W1PRM("MSD") Q:'MSD
 N REMGIB,DT S DT=$$^W4DZ
 S REMGIB=$$REMGIB
 L +@REMGIB@(MSD,DT):2
 N SH S SH=$O(@REMGIB@(MSD,DT,9999999),-1)+1
 S @REMGIB@(MSD,DT,SH)=IND
 S @REMGIB@(MSD,DT,SH+1)=TXT
 L -@REMGIB@(MSD,DT)
 Q
 ;
REMGIB(STAM) Q "^|$$^W3MAIN|REMGIB"
 
 
 
 
 
 
 
 

%S4BSG
%S4BSG ;                                                                               [ 24.10.06 07:58 ] [ 26.10.05 18:27 ] [ 18.05.04 09:46 ]
 ; INPUT: ^S4B($P,
 ;        %S4B("SHP") - HEADER CODE
 ;        %S4B("TXT") - TOP MESSAGE
 ;        %S4B("TXT1") - BOTTOM MESSAGE
 ;        %S4B("RG",...) - REG-R
 ;        %S4B("SUM",...)="" - SUM
 ;        %S4B("FORM",...)="" - FORMULA
 ;        %S4B("VGR") - TOP SCREEN MARGIN
 ;        %S4B("NGR") - BOTTOM SCREEN MARGIN
 ;        %S4B("LEFT") - LEFT MARGIN
 ;        %S4B("LAB") - LINE NUMBER (%TIP="G")
 ;        %S4B("PRINT") - ASK FOR PRINT
 ;        %S4B("VIEW") - VIEW ONLY
 ;        %S4B("IND") - LINE INDEX ON(=1) OR OFF (=0)
 ;        %S4B("LINE1") - LINE INPUT
 ;        %S4B("NEWST") - NEW LINE INPUT POSSIBLE
 ;        %ST - COUNTER OF LINES IN FILE
 ;        %STR - COUNTER OF LINES IN SCREEN
 ;        %SCH - COUNTER OF GRAF
 ;----------------------------------------------------------------
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%S4B,%S4BO) D ^%L1C
 K %S4BO D INIT W %HBR
  G BEGROU
 ;-----------------------------------------------------------------
DELAY I %TYPCRT["VT" F X=1:1:200
 Q
BEGGR ;
 I %SCH'>%KOLR,%SCH'<1,MPOZ(%SCH)<80,%STR<25 S %XX=MPOZ(%SCH),%YY=%S4B("VGR1")+%STR-1 X %POSIC
 S %S=$P($G(^S4B($P,%ST)),%R,$$IX(%SCH))
 Q
PNS W %vverxe,"--LINE:",$J(%ST,3) S %OLDS=$G(^S4B($P,%ST)) ;;D BEGGR
 I $D(%S4B("INV")) W %CLI D STROKA(%ST,%STR)
 D BEGGR Q
STROKA(%ST,%STR) ;
 N %XX,%YY,A
 I '$D(%R) S %R="\" I $D(%S4B("RZD")) S %R=%S4B("RZD")
 S A=$G(^S4B($P,%ST))
 F JJ=1:1:%S4B("FIX") D
 .S %XX=MPOZ(JJ)-$L($P(A,%R,JJ))+1,%YY=%S4B("VGR1")+%STR-1 X %POSIC
 .W $TR($TR($P(A,%R,JJ),%TES1,%TES2),%TEN,%THB)
 F JJ=%S4B("FIX")+1:1:%KOLR D GRAFA(%ST,JJ,%STR)
 Q
GRAFA(I,J,%STR) ;
 N A S A=$G(^S4B($P,I))
 ;;S %XX=MPOZ(J)-$L($P(A,%R,$$IX(J)))+1
 S %XX=MPOZ(J)-MDLIN(J)+1
 S %YY=%S4B("VGR1")+%STR-1
 X %POSIC W $J($TR($TR($P(A,%R,$$IX(J)),%TES1,%TES2),%TEN,%THB),MDLIN(J))
 Q
NAZAD ;
 I %SCH>(%S4B("FIX")+1) S %SCH=%SCH-1 D PSK1 D BEGGR
 Q
VPERED ;
 I %SCH<%KOLR S %SCH=%SCH+1 D BEGGR
 Q
VVERX ;
 I $D(%S4B("NOEXP")),%ST'>1 Q
 S $P(^S4B($P,%ST),%R,$$IX(%SCH))=$TR(%S,%R,"/")
 I %ST'>1,$G(%S4B("FIX")) Q
 I %ST'>1 S %ST=0,%SCH=1 W *13,%chists D VSTAV G EV
 I $D(%S4B("INV")) X %XCL D STROKA(%ST,%STR)
 S %ST=%ST-1
 I %STR>1 S %STR=%STR-1 D PNS G EV
 I %STR'>1 S %STR=1 D P,PNS
EV ;;I $D(%S4B("INV")) W %CLI D STROKA(%ST,%STR)
 Q
VNIZ ;
 S:%SCH'>%KOLR $P(^S4B($P,%ST),%R,$$IX(%SCH))=$TR(%S,%R,"/")
 I '$D(^S4B($P,%ST+1)) Q:'$D(%S4B("NEWST"))  S ^S4B($P,%ST+1)=%R,%SCH=$G(%S4B("FIX"))+1
 I $D(%S4B("INV")) X %XCL D STROKA(%ST,%STR),BEGGR
 S %ST=%ST+1
 I %STR<(%S4B("RSTR")-1) S %STR=%STR+1 D:$D(%S4B("INV"))  D PNS Q
 .;;W %CLI D STROKA(%ST,%STR)
 I %STR'<(%S4B("RSTR")-1) D
 .S %XX=0,%YY=%S4B("VGR1") X %POSIC W %chists
 .D BEGGR W ! D PNS ;;W:$D(%S4B("INV")) %CLI
 .D STROKA(%ST,%STR)
 Q
VVERXE ;
 I %ST>%STR S %ST=%ST-%STR+1,%STR=1,%SCH=$G(%S4B("FIX"))+1 D PNS Q
 I %ST'>%STR  S %STR=%STR-%ST+1,%ST=1,%SCH=%S4B("FIX")+1 D PNS
 Q
HELP D
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 .X "ZL %S4BSGH K ^TMPS111($J) N I F I=2:1 Q:$T(+I)=""""  S ^TMPS111($J,I)=$T(+I)" S %S2V("LEFT")=1 X %chista W %CV("YF") D ^%S2VIEW
 D VIEW
 Q
 ;-
VIZ ;
 I '$D(%LS) S %LS=8 N %BE
 S %ZMSF="",%FLL=1,%ZMSL="="
 S %S=$P($G(^S4B($P,%ST)),%R,$$IX(%SCH))
 I $G(MDLIN(%SCH))=1 S %GET(1)=""
 I $G(%S4B("RG",%SCH))="H" S $Y=%YY,$X=%XX S:%C>95&(%C<123) %BE="E" D ^%L1ZMS G ENDCYC
 S %XX=MPOZ(%SCH)-MDLIN(%SCH)+1 X %POSIC S %S=$C(%C) D ^%ZMSL
ENDCYC I $D(MDLIN(%SCH,2)) I ($L(%S)<%LS)&(MDLIN(%SCH,2)=1) W *7,%vverxe,"***FORMAT*** !" D BEGGR S %FL=0 G VIZ
 S $P(^S4B($P,%ST),%R,$$IX(%SCH))=$TR(%S,%R,"/")
 Q
 ;------------------------- BEGIN OF ROUTINE -----------------------------
BEGROU ;
 ;;I $D(%S4B("VIEW")),$D(%S4B("SUM")) D SUM
 N %BEG
 S %PRFIN=0,%BEG=1 K CIST D VIEW
CVV ;
 I $D(%S4B("CMD1")) X %S4B("CMD1")
 K %TO S %S=$P($G(^S4B($P,%ST)),%R,$$IX(%SCH)) D BEGGR
OBRVV ;
 S %D=0
 I $$HZGTOUCH^%L2MOUSE,'$$KB^%L2MOUSE,'$D(%L1NMB("NO")) S %ZMSF="" W *27,7 S %C=$$^%L1NMB("") W *27,8 S:%C="ENTER" %C="" S:$L(%C)<2 %C=$A(%C) G:%C?1N.N ENTER G:%C'?1U.E CVV G:$T(@%C)="" CVV D @%C G CVV
 R *%C
 G:%TYPCRT="PC" 27
 S ZB="",ZB0=$ZB ;-- VT
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27,$T(@%UPRCOD(ZB))'="" D @%UPRCOD(ZB) G CVV ;OBRVV
 I $A($E(ZB0))=27 K ZB0 D ESC G OBRVV
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL D @%UPRCOD($ZB) G CVV ;OBRVV
 ;
27 I %C=27 D  I %C1<0 D TABN G OBRVV
 .R *%C1:0 D DELAY
 ;
 I %C=27 D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G:$G(%UPRCOD(C))="LEVO"&('$D(%S4B("VIEW"))&($G(MDLIN(%SCH))>1)) LABTAB D @%UPRCOD(C) G CVV ;OBRVV
 .S C="" D DELAY R:'$D(%FLL) *%C2:%WAIT S:%C2>0 C=%C1_%C2
 .R:'$D(%FLL) *%C3:%WAIT S:%C3>0 C=C_%C3
 .R:'$D(%FLL) *%C4:%WAIT S:%C4>0 C=C_%C4
 ;
ENTER I %C=13,$$IX(%SCH+1)'<%SGR,$D(%S4B("LINE1")) D VNIZ,HOME G OBRVV
 I %C=13 S:$D(%S4B("LINE1")) %C=9 I %C=13 D PSK2 G CVV
LABTAB I %C=9 G:$$IX(%SCH+1)'<%SGR CVV S %SCH=%SCH+1 D PSK1 I %SCH'>%KOLR G CVV
 I %C=9,%SCH>(%S4B("FIX")+1) S %FGR=%FGR+1 D VIEW G CVV
 I %C=8!(%C=127),'$D(%S4B("VIEW")) G M
 I %C=25!(%C=61) S %PRFIN=1 G ENDOBR
 I %C=1 D DELCOL G CVV
 I %C>31,%C<127,'$D(%S4B("VIEW")) G M
 I %C=%DEL,'$D(%S4B("VIEW")) S %S=$E(%S,2,255),%FL=1 G M2
 I %C=15 D NAZAD G ENDOBR
 ;
 I %C=0,$L($ZB),$D(%UPRCOD($ZB)) G:$ZB=5147&'$D(%S4B("VIEW")) M I $T(@%UPRCOD($ZB))'="" S %B=$ZB D @%UPRCOD(%B) G:$G(%PRFIN) ENDOBR G CVV
 I %C=0 D DELAY R *%C1:0 D DELAY R *%C2:0 I %C1>0 S %D="0"_%C1 G:'$D(%UPRCOD(%D)) CVV D:$T(@%UPRCOD(%D))'="" @%UPRCOD(%D) G CVV
 I %C=30 D LNAZAD G CVV ;-- CTRL+^
 I %C=14 D LVPERED G CVV ;---- CTRL+N
 ;;I %C=16 S RAZD=%R D PEREST G CVV ;CTRL+P
 ;;I %C=20 F I=1:1:%S4B("RSTR")-%STR Q:'$D(^S4B($P,%ST+I))  ;  W %vniz ; CTRL+T
 ;;I  S %STR=%STR+I-'$D(^S4B($P,%ST+I)),%ST=%ST+I-'$D(^S4B($P,%ST+I)),%SCH=%S4B("FIX")+1 D PNS G CVV ;          *** ‚�ˆ‡ �Š�.
 I %C=20 D POP G CVV
 I %C=21!(%C=22),'$D(%S4B("VIEW")) D VSTAV:%C=22,UDAL:%C=21 G CVV ;CTRL+U,CTRL+V
 I %C=24 D  G CVV
 .W *27,7 N %XXZMS,%YYZMS S %XXZMS=%XX,%YYZMS=%YY
 .D ^%L1CLC
 .S:$D(%L1CLC("F"))&'$D(%S4B("VIEW")) %S=%L1CLC
 .W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC S $X=%XX,$Y=%YY
 I %C=26 D SAVE G CVV ;--- CTRL+Z
 I %C=18,'$D(%S4B("VIEW")) D REST G CVV ;CTRL+R
 ;;I %C=126 D HELP G CVV ;CTRL+F1
 I %C'>31 D  G CVV
 .I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" D @%UPRCOD(%C)
 G CVV
 ;
TAB S %C=9 G LABTAB
TABN ;
 I %SCH>(%S4B("FIX")+1) D NAZAD Q
 I %FGR>(%S4B("FIX")+1) S %FGR=%FGR-1,%SCH=%S4B("FIX")+1 D PSK1 D VIEW Q
 Q
LEVO Q:$$IX(%SCH+1)'<%SGR  S %SCH=%SCH+1 D PSK1 I %SCH'>%KOLR Q
 I %SCH>(%S4B("FIX")+1) S %FGR=%FGR+1 D VIEW
 Q
PRAVO Q:$$IX(%SCH+1)'>(%S4B("FIX")+1)  I %SCH>1 S %SCH=%SCH-1 D PSK1 I %SCH'>%KOLR Q
 I %SCH'>1 S %FGR=%FGR-1 D VIEW
 Q
 ;
M S %FLL=1,%I=1
 I %C>31&(%C<127) S %A=$C(%C)
M2 S %LS=$S($D(MDLIN(%SCH)):MDLIN(%SCH),1:255)
 K CIST S:$D(MSIMB(%SCH))#10 CIST=MSIMB(%SCH)
 I $G(%C)=27,$G(%C1)=91,$G(%C2)=68,$G(MDLIN(%SCH))=1 S %TO="TAB" G ENDOBR
 I $G(%C)=27,$G(%C1)=91,$G(%C2)=67,$G(MDLIN(%SCH))=1 S %TO="TABN" G ENDOBR
 D VIZ
ENDOBR I %PRFIN G END
 I $G(%TO)="UP" D VVERX G CVV
 I %TO="END" G ESC
 ;;I $G(%TO)="END" D  I %TO="END" G END
 .I $D(%S4B("LINE1")),'$D(%S4B("VIEW")),%SCH>(%S4B("FIX")+1) S %TO="TABN"
 I $G(%TO)="DW" D VNIZ G CVV
 I $G(%TO)="PGUP" D LNAZAD G CVV
 I $G(%TO)="PGDW" D LVPERED G CVV
 I $G(%TO)="TABN"!($G(%TO)="RIGHT"&$D(%S4B("VIEW"))) D TABN G CVV
 I $G(%TO)="TAB"!($G(%TO)="LEFT"&$D(%S4B("VIEW")))!($G(%TO)=""&$D(%S4B("LINE1"))) S %TO="",%C=9 G LABTAB
 I $G(%TO)?1A.E,$T(@%TO)'="" D @%TO G CVV
 I $D(%TO),%TO="" D PSK2 G CVV
 G CVV
ESC ;
 G TABN
 ;;
 I $D(%S4B("LINE1")),'$D(%S4B("VIEW")),%SCH>(%S4B("FIX")+1) S %C=15,%TO="TABN",%SCH=%SCH+1 G LABTAB
 S %PRFIN=1 ;
END ;
 I $$HZGTOUCH^%L2MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 U 0 W $C(27,91),"1;25r" I %TYPCRT'="PC" S %XX=1,%YY=23 X %POSIC W !
 I $D(%S4B("PRINT")) S %GET="99 - qitcdl, 97 - EXCEL-l uaew oikdl" D N^%L1GET D PRINT:%S=99,EXCEL:%S=97
 S %S4BO("ST")=%ST,%S4BO("SCH")=%SCH,%S4BO("STR")=%STR
 K %S4B X %XCL
 Q  ;
 ;-
HOME S %FGR=%S4B("FIX")+1,%SCH=%FGR D VIEW
 S %S=$P($G(^S4B($P,%ST)),%R,$$IX(%SCH))
 Q
ENDS ;
 S %FGR=%SGR-%KOLR+%S4B("FIX"),%SCH=%S4B("FIX")+1 D VIEW Q
 Q
PGUP D LNAZAD Q
PGDW ;
PGDN D LVPERED Q
MET I $D(%S4B("MET")) X %S4B("MET")
 Q
F1 ;
CHISTS I $D(%S4B("F1")) X %S4B("F1") Q
 S $P(^S4B($P,%ST),%R,$$IX(%SCH))="" D GRAFA(%ST,%SCH,%STR)
 Q
F2 ;
CHISTE I $D(%S4B("F2")) X %S4B("F2") Q
 Q
 ;;F3 ;
 ;;SBROS I $D(%S4B("F3")) X %S4B("F3") Q
F4 ;
IND I $D(%S4B("F4")) X %S4B("F4") Q
 Q
INS D VSTAVS Q
F5 ;
ADDL I $D(%S4B("F5")) X %S4B("F5") Q
 D VSTAV Q
MOD ;
F6 ;
DELL I $D(%S4B("F6")) X %S4B("F6") Q
 D UDAL Q
F7 ;
COR I $D(%S4B("F7")) X %S4B("F7") Q
PGLN I %FGR+%KOLR'>%SGR S %FGR=%FGR+%KOLR-%S4B("FIX") D VIEW Q
 D ENDS
 Q
F8 ;
FIND I $D(%S4B("F8")),%S4B("F8")'="DEL" X %S4B("F8") Q
 Q:$D(%S4B("VIEW"))
 Q:$G(%S4B("F8"))'="DEL"
 N %S,%TO,%L1GET,%C,%FLL
 S %GET="3-(dl`ny onqn) dxey ,2 -(dhnl onqn)  dcenr ,1 -(dl`ny onqn) zecenrd lk zewpl" D N^%L1GET
 I %S=1 D  D VIEW G CVV
 .N %I,%J F %I=1:1 Q:'$D(^S4B($P,%I))  D
 ..F %J=$$IX(%SCH):1:%SGR S $P(^S4B($P,%I),%R,%J)=""
 I %S=2 D  D VIEW G CVV
 .N %I F %I=%ST:1 Q:'$D(^S4B($P,%I))  S $P(^S4B($P,%I),%R,$$IX(%SCH))=""
 I %S=3 D  D VIEW G CVV
 .N %I F %J=$$IX(%SCH):1:%SGR  S $P(^S4B($P,%ST),%R,%J)=""
 Q
PGRG I %FGR-%KOLR+1'<(%S4B("FIX")+1) S %FGR=%FGR-%KOLR+1 D VIEW Q
 D HOME
 Q
VNIZE D POP Q
PRSC D ^%L1PRSC Q
PSK1 ;
 Q:'$G(%S4B("FIX"))  Q:$P($G(^S4B($P,%ST)),%R,1)'?.P
 I $D(%S4B("INV")) X %XCL D STROKA(%ST,%STR)
 N I F I=%ST:-1:1 Q:$P($G(^S4B($P,I)),%R,1)'?.P
 I $P($G(^S4B($P,I)),%R,1)'="" D
 .I %ST-I+1>%STR S %ST=I D P,PNS Q
 .S %STR=%STR+I-%ST,%ST=I D PNS
 Q
PSK2 ;
 I $P($G(^S4B($P,%ST+1)),%R,1)?.P D VNIZ Q
 I $P($G(^S4B($P,%ST)),%R,1)'?.P D VNIZ Q
 Q:$D(%S4B("NOEXP"))  Q:'$G(%S4B("FIX"))
 D VSTAV
 Q
SOOB W %vverxe s %pn=3 w %pravon,*7,TXT X %XCL D BEGGR
 Q
STR1 W %vverxe s %pn=3 X %pravon W *7
 Q
P ;
 D BEGGR
 W *13 X %chiste W %HBR F I=0:1:%S4B("RSTR")-%STR-1 Q:'$D(^S4B($P,%ST+I))  D STROKA(%ST+I,%STR+I)
 D NIZ
 I $D(%S4B("TXT1")) S %SAY=%S4B("TXT1") X %XMSGN
 Q
PSHAP ;
 G:'$D(KOD) EPS G:KOD="" EPS G:'$D(^SHP(KOD,1))#10 EPS
 N %STR
 X %chista
 F %STR=1:1 Q:'$D(^SHP(KOD,%STR))  Q:$E($TR(^(%STR)," ",""))="$"  W ^(%STR),!
 I $E($TR($G(^(%STR))," ",""))="$" S %S4B("PRM")=$E($$SPA^%L1FRM(^SHP(KOD,%STR)),2,255) D GETPAR(%S4B("PRM")) G EP
EPS I $D(%S4B("PRM")) D GETPAR(%S4B("PRM")) D:'$D(%NOPC) WS
EP X %XCL Q
 ;
GETPAR(PRM) ;
 S %SGR=$L(%S4B("PRM"),%RSH)-1,SPZ=0
 S %SHP=$$DEFSHP(%FGR),%KOLR=$L(%SHP,%RSH)-2
 K MPOZ,MDLIN,MSIMB
 F I=$L(%SHP):-1:1 I $E(%SHP,I)=%RSH D
 .S SPZ=SPZ+1,MPOZ(SPZ)=I-2+%S4B("LEFT")
 .I $D(MPOZ(SPZ-1)) S MDLIN(SPZ-1)=MPOZ(SPZ-1)-MPOZ(SPZ)-1
 F I=$L(%SHP,"|"):-1:1 D
 .I $D(%S4B("CIST")) D
 ..I $D(%S4B("CIST",I)) S MSIMB(I)=%S4B("CIST",I) Q
 ..I $D(%S4B("CIST"))#2 S MSIMB(I)=%S4B("CIST")
 .I $D(%S4B("DLIN")) D
 ..I $D(%S4B("DLIN",I)) S MDLIN(I)=%S4B("DLIN",I) Q
 ..I $D(%S4B("DLIN"))#2 S MDLIN(I)=%S4B("DLIN")
 K MPOZ(SPZ) Q
 ;--------
DEFSHP(%FGR) ;
 N A1,SPZ,RGR,I,SPZ,B,%SHP
 N B S B=$P(PRM,%RSH,$L(PRM,%RSH)-%S4B("FIX"),255)
 S B=$P(PRM,%RSH,1,$L(PRM,%RSH)-%FGR)_%RSH_B
 S B=$$SPA^%L1FRM($E(B,$L(B)-%S4GW+1,$L(B)))
 S %SHP=B I $E(%SHP)'=%RSH S %SHP=%RSH_$P(%SHP,%RSH,2,255)
 Q %SHP
 ;
VSTAV Q:$D(%S4B("NOEXP"))  F %LASTI=%ST+1:1 Q:'$D(^S4B($P,%LASTI))
 S %LASTI=%LASTI-1
 I $D(%S4B("INV")) X %XCL D STROKA(%ST,%STR)
 F I=%LASTI:-1:%ST+1 S ^(I+1)=$G(^S4B($P,I))
 S ^S4B($P,%ST+1)=%R
 I '%ST S %ST=1,%S="" D P,PNS Q
 D P,VNIZ,PNS
 Q
VSTAVS Q:$D(%S4B("NOEXP"))  F %LASTI=%ST:1 Q:'$D(^S4B($P,%LASTI))
 S %LASTI=%LASTI-1
 I $D(%S4B("INV")) X %XCL D STROKA(%ST,%STR)
 F I=%LASTI:-1:%ST S ^(I+1)=$G(^S4B($P,I))
 S ^S4B($P,%ST)=%R
 D P,PNS Q
 Q
UDAL Q:$D(%S4B("NOEXP"))  F I=%ST:1 Q:'$D(^S4B($P,I+1))  S ^(I)=^(I+1)
 K ^S4B($P,I) X %XCL D P S %SCH=%S4B("FIX")+1 D PNS
 Q
SBROS S ^S4B($P,%ST)=%OLDS D STROKA(%ST,%STR),BEGGR
 Q
LNAZAD Q:%ST'>%STR
 X %XCL S %ST=%ST-%STR-%S4B("RSTR")+2 S:%ST'>0 %ST=1 S %STR=1 D:%ST=1 PSHAP S %V=$G(^S4B($P,1)) D BEGGR,P,PNS
 Q
LVPERED X %XCL I %ST'<%STR Q:'$D(^S4B($P,%ST-%STR+%S4B("RSTR")))  S %ST=%ST+%S4B("RSTR")-%STR,%STR=1 D BEGGR,P,PNS Q
 I %ST<%STR Q:'$D(^S4B($P,%S4B("RSTR")-%STR+%ST))  S %ST=%S4B("RSTR")-%STR+%ST,%STR=1 D BEGGR,P,PNS
 Q
SAVE I $D(%S4B("F9")) X %S4B("F9") D:$D(%S4B("F9","REST"))  D:'$D(%S4B("F9","REST")) PNS,BEGGR Q
 .D VIEW K %S4B("F9","REST")
 K %Z S %GET="zexey xenyl++24,70,HH,,,C#1++3,E,I" D ^%L1GET I %TO="END"!(%S'>0) S %SAY=%S4B("TXT1") X %XMSGN Q
 S %LINES=%S
 S %GET="zecenr++24,50,HH#1++2,E,I" D ^%L1GET G:%TO="END"!(%S'>0) SAVE S %COLS=%S
 F J=1:1:%LINES Q:'$D(^S4B($P,%ST+J-1))  S %Z(J)=$P(^(%ST+J-1),%R,$$IX(%SCH),$$IX(%SCH)+%COLS-1)
 S %Z=J-'$D(^(%ST+J-1))
SAVE1 S %GET="wegnl++24,30,HH#l++1,H,I" D ^%L1GET G:%TO="END"!(%S="") SAVE
 I %S'="k",%S'="l",%S'="F",%S'="K" W *7 G SAVE
 Q:%S'="F"&(%S'="k")
 I %SCH>%S4B("FIX") F J=0:1:%Z-1 S $P(^S4B($P,%ST+J),%R,$$IX(%SCH),$$IX(%SCH)+$L(%Z(J+1),%R)-1)=$TR($J("",$L(%Z(J+1),%R)-1)," ",%R)
 D P
 Q
REST I $D(%S4B("F10")) X %S4B("F10") Q
 I $D(%Z)'=11 W *7 Q
 I %Z'?1N.N!(%Z'>0) W *7 Q
 F J=0:1:%Z-1 S $P(^S4B($P,%ST+J),%R,$$IX(%SCH),$$IX(%SCH)+$L(%Z(J+1),%R)-1)=$G(%Z(J+1))
 X %XCL D P,PNS
 Q
PEREST ;
 S NEWROU="%S4BSG" S NEWNEW="GRAF,LINE,NGRAF,NG,LINE1" X XNEW1
 S ERP=0 I $D(^S4B($P,1))
 W %vverxe,%chists R " GRAF NUMBER  > ",NGRAF I NGRAF="" G EPER
 K NG F I=1:1:$L(NGRAF,",") S NG(I)=$P(NGRAF,",",I) I NG(I)'?1N,NG(I)'?2N,'$D(MPOZ(NG(I))) S ERP=1
 I ERP W *7,"   ???" G PEREST
 F I=1:1 Q:'$D(^S4B($P,I))  S LINE=^(I),LINE1="" D PE1 G PER1
PE1 F J=1:1 Q:'$D(NG(J))  S GRAF=$P(LINE,RAZD,NG(J)) S LINE1=LINE1_GRAF_RAZD
 S ^S4B($P,I)=LINE1 K LINE
 S NEWROU="%S4BSG" X XNEW2
 Q
PER1 S %ST=%ST-%STR+1,%STR=1,%SCH=%S4B("FIX")+1 S:%ST<0 %ST=1
 D PSHAP S %V=$G(^S4B($P,1))
 D BEGGR,P,PNS,BEGGR
EPER ;
 Q
INIT D USE K U1,Y1 N I S %FLV=1 S:$D(%S4B("IND")) %FLI=%S4B("IND")
 S:'$D(%FLI) %FLI=0 S %FLH=0,SDV=60 S:'$D(%TIP) %TIP="G"
 ;
 S %RSH="|" I $D(%S4B("RSH")) S %RSH=%S4B("RSH")
 S %R="\" I $D(%S4B("RZD")) S %R=%S4B("RZD")
 K KOD I $D(%S4B("SHP"))#2 S KOD=%S4B("SHP")
 I '$D(%S4B("U1")) S %S4B("U1")=1
 I '$D(%S4B("FGR")) S %S4B("FGR")=1
 I '$D(%S4B("NGR")) S %S4B("NGR")=23
 I '$D(%S4B("VGR")) S %S4B("VGR")=1
 I '$D(%S4B("LEFT")) S %S4B("LEFT")=0
 I '$D(%S4B("RIGHT")) S %S4B("RIGHT")=79
 I $E(%TYPCRT,1,3)="VT5",$D(%S4B("SMALL")) S %S4B("RIGHT")=125 W $C(27),"[?3h"
 I %S4B("VGR")<1 S %S4B("VGR")=1
 I %S4B("NGR")>24 S %S4B("NGR")=24
 I '$D(%S4B("FIX")) S %S4B("FIX")=0
 S %S4GW=%S4B("RIGHT")-%S4B("LEFT")
 ;;U $P:(NOECHO:NOWRAP)
 S:'$D(%S4B("VGR1")) %S4B("VGR1")=%S4B("VGR")
 S:'$D(%S4B("NGR1")) %S4B("NGR1")=%S4B("NGR")
 I %S4B("VGR1")<1 S %S4B("VGR1")=1
 I %S4B("NGR1")>24 S %S4B("NGR1")=24
 S %S4B("RSTR")=%S4B("NGR1")-%S4B("VGR1")+1
 W *27,"["_(%S4B("VGR1")+1)_";"_%S4B("NGR1")_"r"
 ;
 S %FGR=%S4B("FGR")+%S4B("FIX")
IN1 S %NOPC="" D PSHAP K %NOPC
 I '$D(MPOZ) F I=1:1:8 S MPOZ(I)=I*10-9
 I $D(MDLIN)<10 F I=1:1:8 S MDLIN(I)=9
 I $D(%S4B("VRB")) D
 .N %N S %N="" F  S %N=$O(%S4B("VRB",%N)) Q:%N=""  S @%N=$G(%S4B("VRB",%N))
 F I=1:1 Q:'$D(MPOZ(I))
 S %ST=1 I $G(%S4B("ST")) S %ST=%S4B("ST")
 S %SCH=$G(%S4B("FIX"))+1 I $G(%S4B("SCH")) S %SCH=%S4B("SCH")
 S %STR=1 I $G(%S4B("STR")) S %STR=%S4B("STR")
 Q
W(A) ;
 ;;W:%TYPCRT="PC" ! W ?%S4B("LEFT"),A W:%TYPCRT'="PC" !
 W !?%S4B("LEFT") I A'[%RSH W A Q
 N I W $P(A,%RSH) F I=2:1:$L(A,%RSH)-1 D
 .W %CV("RF")_%RSH_%CV("CF")_$TR($TR($P(A,%RSH,I),%TES1,%TES2),%TEN,%THB)_%CV("RF")
 W %RSH
 Q
WS X %chista
 I $D(%S4B("TXT")) S %SAY=%S4B("TXT") X %XMSGV
 D KAV
 D W(%SHP)
 D KAV
 Q
KAV I %TYPCRT["VT" W $C(27),"(0"
 W %LIGHT1 W %CV("RF") D W($TR($J("",$L(%SHP))," ",$S(%TYPCRT["VT":$C(113),1:"-")))
 I %TYPCRT["VT" W $C(27),"(B"
 Q
VIEW ;
 N %STRO,%STO S %STRO=%STR,%STO=%ST S %STR=1,%ST=%ST-%STRO+1 S:%ST<1 %ST=1
 D PSHAP S:%SCH>%KOLR %SCH=%KOLR D P
 S %STR=%STRO,%ST=%STO D PNS,BEGGR
 ;;I $D(%S4B("INV")) W %CLI D STROKA(%ST,%STR)
 Q
NIZ Q:'$D(^S4B($P,99999))
 S %XX=0,%YY=%S4B("NGR1") X %POSIC
 D KAV X %XCL,%LIGHT
 D STROKA(99999,23-%S4B("VGR1"))
 Q
SUM Q:'$D(%S4B("SUM"))  N SUM
 N I,J,K F I=1:1 Q:'$D(^S4B($P,I))  D
 .F K=1:1:$L(%S4B("SUM"),",") S J=$P(%S4B("SUM"),",",K) S SUM(J)=$G(SUM(J))+$P(^(I),%R,J)
 S J="" F  S J=$O(SUM(J)) Q:J=""  S $P(^S4B($P,99999),%R,J)=SUM(J)
 Q
IX(A) Q %FGR-%S4B("FIX")+A-1
POP ;
 I $G(^zms($P))?1"^"."%"1U.E W *27,7 S:$D(^msphzs($P)) ^($P)=%S D ^%L1ZMST S $X=%XX,$Y=%YY
 Q
PRINT ;
 S %DEV="USTR"  D ^%L1LPT Q:$G(%EROP)
 D INIT^%S4BSG S %S4GW=125,%FGR=%S4B("FIX")+1,DAF=0
 ;;I %MDPSUG=7 S %GET=" ""CONDENSED"" zixep wlciy cr ""FONT"" ywn lr ugl " D N^%L1GET
BPC D GETPAR^%S4BSG(%S4B("PRM"))
 S %SHP=$E(%SHP,1,$L(%SHP)-1)
 U USTR W %L1OUT("MDP","COND") D PCSHP
 F I=1:1 Q:'$D(^S4B($P,I))  D
 .D WPC(I)
 .I '(I+SHSHP#56) W # D PCSHP
 W $J($TR($J("",$L(%SHP))," ","-"),%S4GW),!
 D WPC(99999)
 I %FGR+%KOLR>%SGR D CLOSE^%L1LPT U 0 X %chista Q
 H 1 S %FGR=%FGR+%KOLR-1 W # G BPC
 Q
PCSHP ;
 I '$D(TSS)!'$D(TS0) D ^%L1TS
 S SHSHP=0
 I '$G(%S4B("LOGO")) S %AT=$$SPA^%L1FRM($$^%L1HEAD("")) I $L(%AT) D
 .I $G(%MDPSUG)=7 D  Q
 ..S %AT=$$SPC^%L1FRM(%AT)
 ..S %ST=%L1OUT("MDP","B")_$$CENTR^%L1FRM($$TR($TR(%AT,"#_","")),%L1OUT("MDP","GWPC"))_%L1OUT("MDP","N")
 ..W ?(145-($L(%ST)*2)\2),%ST,!!
 .
 .S %ST=%L1OUT("MDP","B")_$$CENTRB^%L1FRM($$TR($TR(%AT,"#_","")),%L1OUT("MDP","GWPC"))_%L1OUT("MDP","N")
 .W ?(145-($L(%ST)*2)\2),%ST,!!
 ;
 I $G(%S4B("LOGO")) F I=1:1:%S4B("LOGO") W ! S SHSHP=SHSHP+1
 S DAF=DAF+1 S $X=0 I '$D(TSS) D ^%L1TS
 W ?10,DAF,$TR(" sc",TS0,TSS)
 I $D(%S4B("TXT")) W ?(145-($L(%S4B("TXT"))*2)\2),%L1OUT("MDP","B")_$TR(%S4B("TXT"),TS0,TSS)_%L1OUT("MDP","N")
 N I F I=1:1 Q:'$D(%S4B("TXT",I))  W !?(145-($L(%S4B("TXT",I))*2)\2),%L1OUT("MDP","B")_$TR(%S4B("TXT",I),TS0,TSS)_%L1OUT("MDP","N")
 W !
 W $J($TR($J("",$L(%SHP))," ","-"),%S4GW),!
 W $J($TR(%SHP,TS0,TSS),%S4GW),!
 W $J($TR($J("",$L(%SHP))," ","-"),%S4GW),!
 S SHSHP=SHSHP+I
 Q
WPC(I) ;
 N ST Q:'$D(^S4B($P,I))
 S ST=^S4B($P,I)_$TR($J("",%FGR+%KOLR-%S4B("FIX"))," ",%R)
 S ST=$P(ST,%R,1,%S4B("FIX"))_%R_$P(ST,%R,%FGR,%FGR+%KOLR-%S4B("FIX")-1)
 W $J($TR($$MCH^%L1FRM(ST,%R,%SHP,%RSH),TS0,TSS),%S4GW-1),!
 Q
MIUN(J) ;
 N I,IND,N,MAC1,MAC2,PRZ,STR
 S PRZ=1 I $G(%S4B("RG",J))="H" G MIUN1
 S %GETIN=2 S %GET="2 - dlrnln, 1 - dhnln oein " D N^%L1GET Q:%TO="END"!(%S="")
 S PRZ=(%S=1)
MIUN1 K ^s4bmn($P),^s4bmn1($P) N %REFH1 S %REFH1="^S4B($P)"
 S %SAY=" ... oeinl oznd `p` " X %XMSGN
 K ^s4bmn($P),^s4bmn1($P)
 F I=1:1 Q:'$D(^S4B($P,I))  S STR=$G(^(I)) D
 .I $G(%S4B("RG",J))="H" D  G SORT
 ..S IND=$$INV^%L1FRM($$SPA^%L1FRM($P(STR,%R,J)))
 ..S IND=$E(IND_$J("",10-$L(IND)),1,10)_$J(I,5)
 .I 'PRZ D  G SORT
 ..I $G(%S4B("RG",J))="D" S IND=$E($J(99999-$$^%L1DC($P(STR,%R,J),3),10),1,10)_$J(I,5) Q
 ..S IND=$E($J(1000000000-$P($P(STR,%R,J),"."),10),1,10)_$J(I,5)
 .I PRZ D  G SORT
 ..I $G(%S4B("RG",J))="D" S IND=$$^%L1DC($P(STR,%R,J),3)_$J(I,5) Q
 ..;S IND=$E($J($P($P(STR,%R,J),"."),10),1,10)_$J(I,5)
 ..S IND=$P($P(STR,%R,J),".")*10000+I
SORT .S ^s4bmn($P,IND)=I
 N SUM S SUM=$G(^S4B($P,99999))
 S MAC1=%REFH1 I $E(%REFH1,$L(%REFH1))="," S MAC1=$E(%REFH1,1,$L(%REFH1)-1)
 S:$E(MAC1,$L(MAC1))'=")" MAC1=MAC1_")"
 S MAC2="^s4bmn1($P)" D ^%S1GC1
 K @MAC1 S N="",I=0 F  S N=$O(^s4bmn($P,N)) Q:N=""  D
 .S I=I+1,IND=+^(N)
 .S ^S4B($P,I)=^s4bmn1($P,IND)
 I $L(SUM) S ^S4B($P,99999)=SUM
 K ^s4bmn($P),^s4bmn1($P)
 S %S4B("FGR")=$G(%FGR)-$G(%S4B("FIX")) D INIT
 D VIEW
 Q
DELCOL ;
 Q:$D(%S4B("VIEW"))
 N I F I=%ST:1 Q:'$D(^S4B($P,I))  D
 .S $P(^S4B($P,I),%R,$$IX(%SCH))=""
 S %V=$G(^S4B($P,%ST)) D P,PNS
 Q
TR(%ST) ;
 Q $TR(%ST,TS0,TSS)
 ;
EXCEL ;
 K ^TREPK($P) N MDLIN,MPOZ,%SHP
 D PSHAPEX
 N PRM,I,J,DL,RGS,DOT,%S
 S PRM(1)="~"
 F J=1:1 Q:'$D(MDLIN(J))  D
 .S PRM(1)=PRM(1)_"H,"_MDLIN(J)_",0*"
 S PRM(1)=$E(PRM(1),1,$L(PRM(1))-1)
 S PRM(2)="!*"_$G(%S4B("TXT"))_"*1"
 S PRM(3)="#*0*0*"
 F I=1:1 Q:'$D(%S4B("TXT",I))  S PRM(I+3)="?*"_%S4B("TXT",I)
 I $D(^S4B($P,99999)) D
 .N IT
 .S IT="" F I=1:1:$L(^S4B($P,99999),%R)  S IT=$P(^S4B($P,99999),%R,I)_"*"_IT
 .S IT=$E(IT,1,$L(IT)-1)
 .N LZ S LZ=$L(IT,"*")
 .S LZ=$L(%SHP,"*")-LZ-1
 .I LZ>0 S IT=$TR($J(" ",LZ)," ","*")_IT
 .S PRM($O(PRM(99999),-1)+1)="&&"_IT
 ;
 N %R S %R="\" I $D(%S4B("RZD")) S %R=%S4B("RZD")
 S ^TREPK($P,1)="!"_%SHP
 F I=1:1 Q:'$D(^S4B($P,I))  D
 .S ^TREPK($P,I+1)=$TR(^S4B($P,I),%R,"*")
 .N LZ S LZ=$L(^TREPK($P,I+1),"*")
 .S LZ=$L(%SHP,"*")-LZ-2
 .I LZ>0 S ^TREPK($P,I+1)=^TREPK($P,I+1)_$TR($J(" ",LZ)," ","*")
 D ^%L1PCEX
 Q
PSHAPEX ;
 N %S4B1,%STR,I
 G:'$D(KOD) EPEX G:KOD="" EPEX G:'$D(^SHP(KOD,1))#10 EPEX
 M %S4B1("TXT")=%S4B("TXT")
 F %STR=1:1 Q:'$D(^SHP(KOD,%STR))  Q:$E($TR(^(%STR)," ",""))="$"  S %S4B("TXT",%STR)=^(%STR)
 F I=1:1 Q:'$D(%S4B1("TXT",I))  S %S4B($O(%S4B("TXT",999),-1)+1)=%S4B1("TXT",I)
 I $E($TR($G(^(%STR))," ",""))="$" S %S4B("PRM")=$E($$SPA^%L1FRM(^SHP(KOD,%STR)),2,255) G EPEX
EPEX ;
 N SPZ
 S %SHP="" F I=1:1:$L(%S4B("PRM"),%RSH)  S %SHP=$P(%S4B("PRM"),%RSH,I)_"*"_%SHP
 S %SHP=$E(%SHP,1,$L(%SHP)-1)
 S SPZ=0
 F I=$L(%SHP):-1:1 I $E(%SHP,I)="*" D
 .S SPZ=SPZ+1,MPOZ(SPZ)=I-2+%S4B("LEFT")
 .I $D(MPOZ(SPZ-1)) S MDLIN(SPZ-1)=MPOZ(SPZ-1)-MPOZ(SPZ)-1
 Q
USE ;
 I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q

%S4BSGH
%S4BSGH ; [ 06/16/98 11:44 AM ]
 ;-------------------------------------------------------------------;
 ;                         <ESC> -  dxfrn z`vl                       ;
 ;-------------------------------------------------------------------;
 ;                      <TAB>  -            `ad xeh                  ;
 ;             <SHIFT>+ <TAB>  -           mcew xeh                  ;
 ;                      <PGUP> -             `ad sc                  ;
 ;                      <PGDN> -            mcew sc                  ;
 ;                      <F7>   -           dl`ny sc                  ;
 ;                      <F8>   -           dpini sc                  ;
 ;                      <END>  -           dxey seq                  ;
 ;                      <HOME> -         dxey zligz                  ;
 ;                                                                   ;
 ;                      <F1>   -        zvayn wegnl                  ;
 ;                                                                   ;
 ;                      <F9>   - mixehe zexey xenyl                  ;
 ;                      <F10>  - mixehe zexey xfgyl                  ;
 ;                                                                   ;
 ;                     <ESC>   -              d`ivi                  ;
 ;-------------------------------------------------------------------;

%W1ALIGN
%W1ALIGN(STAM) ; [ 10.08.17 20:20 ] [ 30.07.10 19:42 ] [ 26.06.09 11:06 ] 
 Q " align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""""
INV(STAM) ;
 Q " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
NUM(STAM) ;
 Q " dir=""LTR"" align=""right"""
 

%W1ARG
%W1ARG ; [ 27.03.23 10:35 ] [ 18.02.21 13:39 ] [ 08.08.17 15:09 ] 
 N %NN
 S %NN="" F  S %NN=$O(%ARG(%NN)) Q:%NN=""  D
 .S %ARG(%NN)=$$CLR($G(%ARG(%NN)))
 ;
 S %NN="" F  S %NN=$O(%ARG(%NN)) Q:%NN=""  I %NN?."%"1U.E D
 .I $G(%ARG(%NN))?2N1"."2N1"."2N S %ARG(%NN,"D")="" Q
 .I $G(%ARG(%NN))?2N1"/"2N1"/"2N S %ARG(%NN,"D")="" Q
 .I %NN?1U.U1"IDdd" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-4)),1,2)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"IDmm" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-4)),3,4)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"IDyy" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-4)),5,6)=%ARG(%NN) K %ARG(%NN)
 ..S %ARG($E(%NN,1,$L(%NN)-4),"D")=""
 .I %NN?1U.U1"mnid" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-4)),3,4)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"hrid" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-4)),1,2)=%ARG(%NN) K %ARG(%NN)
 ..S %ARG($E(%NN,1,$L(%NN)-4),"T")=""
 .
 .I %NN?1U.U1"dd" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),1,2)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"mm" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),3,4)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"yy" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),5,6)=%ARG(%NN) K %ARG(%NN)
 ..S %ARG($E(%NN,1,$L(%NN)-2),"D")=""
 .I %NN?1U.U1"mn" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),3,4)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"hr" D  Q
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),1,2)=%ARG(%NN) K %ARG(%NN)
 ..S %ARG($E(%NN,1,$L(%NN)-2),"T")=""
 .
 S %NN="" F  S %NN=$O(%ARG(%NN)) Q:%NN=""  I %NN?."%"1U.E D
 .I $D(%ARG(%NN,"D")),%ARG(%NN)?6N S @%NN=$E(%ARG(%NN),1,2)_"."_$E(%ARG(%NN),3,4)_"."_$E(%ARG(%NN),5,6) Q
 .I $D(%ARG(%NN,"T")),%ARG(%NN)?4N S @%NN=$E(%ARG(%NN),1,2)_":"_$E(%ARG(%NN),3,4) Q
 .;;W " %ARG("_%NN_")="_%ARG(%NN),!
 .S @%NN=%ARG(%NN)
 Q
KILL ;
 N %NN
 S %NN="" F  S %NN=$O(%ARG(%NN)) Q:%NN=""  I %NN?."%"1U.E I %NN'="JB" K @%NN
 K %ARG
 Q
PCPRM(JB) ;
 N %NN
 ;;M ^AA("ARG")=%ARG
 S %NN="" F  S %NN=$O(%ARG(%NN)) Q:%NN=""  D
 .I %NN?1U.U1"dd" D
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),1,2)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"mm" D
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),3,4)=%ARG(%NN) K %ARG(%NN)
 .I %NN?1U.U1"yy" D
 ..S $E(%ARG($E(%NN,1,$L(%NN)-2)),5,6)=%ARG(%NN) K %ARG(%NN)
 ..S %ARG($E(%NN,1,$L(%NN)-2),"D")=""
 ;
 S %ERRDATE=""
 S %NN="" N DT F  S %NN=$O(%ARG(%NN)) Q:%NN=""  I $D(%ARG(%NN,"D")) D  S %ARG(%NN)=DT
 .S DT=%ARG(%NN)
 .I $E(%NN,1,2)="ME",DT="" Q
 .I $E(%NN,1,2)="AD",DT=99999 Q
 .I DT?5N Q
 .S DT=$TR(DT,"./","")
 .I DT'?6N D
 ..I $E(DT,1,2)'?2N!($E(DT,1,2)<1)!($E(DT,1,2)>31)!($L(DT)<6) S %ERRDATE=%NN_"IDdd" Q
 ..I $E(DT,3,4)'?2N!($E(DT,3,4)<1)!($E(DT,3,4)>12) S %ERRDATE=%NN_"IDmm" Q
 ..I $E(DT,5,6)'?2N S %ERRDATE=%NN_"IDyy"
 ..
 .S DT=$$^%L1DC(DT,3)
 ;
 S %NN="" F  S %NN=$O(%ARG(%NN)) Q:%NN=""  D
 .S @$$^%W1GLPRM@("VAL",%NN)=$G(%ARG(%NN))
 .S @%NN=%ARG(%NN)
 ;
 S %NN="" F  S %NN=$O(@$$^%W1GLPRM@("VAL",%NN)) Q:%NN=""  D
 .I %NN?1"AD".E D
 ..N ME S ME="ME"_$E(%NN,3,100)
 ..I $G(%ARG(ME))?1"S"1N.N D 
 ...S @$$^%W1GLPRM@("VAL",%NN)=$G(%ARG(ME))
 Q
 ;
 ;
CLR(ARG) ;
 S ARG=$G(ARG)
 I $A(ARG,1)>126 S ARG=$E(ARG,2,255)
 I $A(ARG,1)<32 S ARG=$E(ARG,2,255)
 I $A(ARG,1)=63 S ARG=$E(ARG,2,255)
 I $A(ARG,1)=34 S ARG=$E(ARG,2,$L(ARG)-1)
 Q ARG
 
 
 
 
 
 
 
 
 

%W1CLRCH
%W1CLRCLH ; [ 01.02.08 15:25 ] [
 R !!,"DAYS : ",DAYS Q:DAYS=""
 S N="" F  S N=$O(^CacheTempJSP(N)) Q:N=""  D
 .S DT=$E(N,1,5)
 .I DT<($H-DAYS) K ^CacheTempJSP(N)
 Q

%W1CLRCS
%W1CLRCLH ; [ 01.02.08 15:22 ] [
 R !!,"DAYS",DAYS Q:DAYS=""
 S N="" F  S N=$O(^CacheTempJsp(N)) Q:N=""  D
 .S DT=$E(N,1,5)
 .I DT<($H-DAYS) K ^CacheTempJSP(N)
 Q

%W1COOK
%W1COOK ; [ 10.04.07 14:01 ] [ 09.04.07 21:13 ] [
 W "<script type=""text/javascript"">",!
 W "function getCookie(c_name)",!
 W "{",!
 W " if (document.cookie.length>0)",!
 W "  {",!
 W "   c_start=document.cookie.indexOf(c_name + ""="")",!
 W "   if (c_start!=-1)",!
 W "    {",!
 W "     c_start=c_start + c_name.length+1",!
 W "     c_end=document.cookie.indexOf("";"",c_start)",!
 W "     if (c_end==-1) c_end=document.cookie.length",!
 W "       return unescape(document.cookie.substring(c_start,c_end))",!
 W "    }",!
 W "  }",!
 W "return """"",!
 W "}",!
 W !
 W "function setCookie(c_name,value,expiredays)",!
 W "{",!
 W " var exdate=new Date()",!
 W " exdate.setDate(exdate.getDate()+expiredays)",!
 W " document.cookie=c_name+ ""="" +escape(value)+",!
 W " ((expiredays==null) ? """" : "";expires=""+exdate.toGMTString())",!
 W "}",!
 W !
 W "function SessionID()",!
 W "{",!
 W "var SID",!
 W " SID=getCookie('ssid')",!
 W " if (SID=null && SID="""")",!
 W "    {",!
 W "      SessionID=5",!
 W "      setCookie('ssid',SID,1)",!
 W "    }",!
 W " return SID",!
 W "}",!
 W "</script>",!
Q

%W1CSS
%W1CSS ; [ 24.07.07 07:36 ] [
 Q

%W1D2U
%W1D2U(VL) ; [ 09.07.26 11:50 ] [ 08.07.26 13:36 ] [ 
 N OSMAC S OSMAC=$$GETP^%W1PRM("OSMAC")
 I 'OSMAC S OSMAC=$G(@$$^W4PRM@("EX2UTF"))
 I OSMAC Q $$D2U^%L1CNV($$INVH^%L1FRM(VL))
 ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 Q $TR($$INVH^%L1FRM(VL),TS0,TS1)
 
 
 
 
 

%W1DAT
%W1DAT(COD,DT,TXT) ; [ 08.12.25 17:26 ] [ 29.08.25 12:33 ] [ 11.08.25 13:07 ] 
 N WD,DD,MM,YY,DAT S WD=$$WD
 ;
 S (DD,MM,YY)=""
 S DT=$G(DT)
 S TXT=$G(TXT)
 ;
 I $G(DT)="",$$OLDDAT D
 .S DD="" S MM=$ZD($H,"MM"),YY=$ZD($H,"YY")
 .N DN S DN=$ZD($H,"DD") I DN<11 S MM=""
 .I DN<11,+MM=1 S MM=""
 ;
 I $G(DT)="",'$$OLDDAT S DT=+$H
 ;
 I $G(DT)="-" S (DD,MM,YY)=""
 ;
 S DT=$TR(DT,"/",".")
 ;
 I $G(DT)?2N1"."2N1"."2N D
 .S DD=$P(DT,".",1)
 .S MM=$P(DT,".",2)
 .S YY=$P(DT,".",3)
 ;
 I $G(DT)?2N1"."2N1"."4N D
 .S DD=$P(DT,".",1)
 .S MM=$P(DT,".",2)
 .S YY=$E($P(DT,".",3),3,4)
 ;
 I $G(DT)?1"."2N1"."2N D
 .S DD=""
 .S MM=$P(DT,".",2)
 .S YY=$P(DT,".",3)
 ;
 I $P($G(DT),",")?5N D
 .S DD=$ZD(DT,"DD")
 .S MM=$ZD(DT,"MM")
 .S YY=$ZD(DT,"YY")
 ;
 S ^AA("W1DAT","DT")=DT
 S DAT=DD_"."_MM_"."_YY
 S ^AA("W1DAT","DAT0")=DAT
 ;
 I $D(%W1DAT("TD")) D  ; -- TEXT
 .W:$G(TXT)'="" "<td>&nbsp;&nbsp;"_$G(TXT)_"</td>"
 ;
 I DT'?5N S DT=$$^%L1DC(DT,3)
 ;
 I $$^W4TABLET=2 S %W1DAT("CLND")=2 G CLND2
 I '$G(%W1DAT("CLND")) G INP ; -- !!!
 ;
 ; ; --------- CALENDER -------
 ;
 W "<td dir="""_$$^%W1DIR_""" align="""_$G(%W1DAT("ALIGN"),"center")_""""
 I $D(%W1DAT("TD")) W " width=""90px"""
 W " >",!
 I '$D(%W1DAT("TD")) W $G(TXT)_" " W "</td><td width=""80px"">",!
 ;
 I DT'?5N S DT=$$^%L1DC(DT,3)
 ;
 I $G(%W1DAT("CLND"))=1 D
 .W "<input type=""text"" name="""_COD_""" id="""_COD_""" size=""8"""
 .W " style=""background-color:yellow;text-align:center"""
 .W " value="""_DAT_""""
 .W " onClick=""getClnd(this);"""
 .D ONCHANGE
 .W " />&nbsp;"
 ;
CLND2 ;
 I +$G(%W1DAT("CLND"))=2 D
 .N DAYS S DAYS=$P(%W1DAT("CLND"),";",2)
 .N SM S SM=$P(%W1DAT("CLND"),";",3)
 .I 'DAYS S DAYS=$S($$^W4TABLET:540,1:30),SM=$S($$^W4TABLET:360,1:10)
 .W "<select name="""_COD_""" id="""_COD_""""
 .D ONCHANGE
 .I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 .I $G(%W1DAT("TABIND")) W " tabindex="""_%W1DAT("TABIND")_""" "
 .I $G(%W1DAT("STYLE")) W " style="""_STYLE_""" "
 .W ">",!
 .N I,DT0,DTS S DT0=$$^%L1DC(DAT,3)
 .I $$GETP^%W1PRM("ELPOS"),DT0>+$H!$$^W4TABLET S DT0=+$H
 .I $$GETP^%W1PRM("ELPOS"),$$^W4TABLET,'DT S DT=$$^W4DZ
 .N I,DTS
 .;;S ^AA("DT0")=DT0,^AA("SM")=SM,^AA("DT")=DT,^AA("DAYS")=DAYS
 .I SM>720 S SM=720
 .F I=1:1:DAYS D
 ..S DTS=DT0-SM+I-1
 ..N VL S VL=$$^%L1DC(DTS,1)
 ..I $$^W3VLDDT(DTS)'>0,$$ONLINE^W4DLVCSR Q
 ..W "<option value="""_VL_""" "
 ..I DTS=DT W " selected=""selected"" "
 ..W " >"
 ..I $$^%W1LNG="H" W VL_" "_$$H2U^%L1FRM($$^%L1DC(DTS,9))
 ..I $$^%W1LNG="E" D
 ...N ND S ND=$$^%L1DC(DTS,8)
 ...W VL_" "_$P("Sn/Mn/Ts/We/Th/Fr/St","/",ND)
 ..W "</option>",!
 .W "</select>"
 ;
 I $$^W4TABLET=2 G END
 G ED1
 ;
 ; ------------ INPUT DAT
 ;
INP ;
 ;;W "INP:COD="_COD_"  TXT="_TXT_"  DD="_DD_"  MM="_MM_" YY="_YY_" WD="_WD,! ;
 I $D(%W1DAT("TD")) W "<td>"
 N STDT S STDT=$$STDT(COD,TXT,DD,MM,YY,WD)
 W STDT
ED ;
ED1 ;
 ;
 I $D(%W1DAT("TD")) W "</td>",!
 ;
END ;
 K %W1DAT Q
 ;
 ;
ONCHANGE ;
 I $D(%W1DAT("W3ORDHD")) W " onChange=""ChangeDat('"_$$GET^%W1PRM("CODE")_"')"""
 I $D(%W1DAT("CHANGE")) W " onChange=""ChangeDat('"_$$GET^%W1PRM("CODE")_"')"""
 Q
 ;
TIME(COD,TM,TXT) ;
 N HR,MN S HR="",MN="00"
 I $L(TM) D
 .I TM[":" S HR=$P(TM,":"),MN=$P(TM,":",2) Q
 .I TM?1N.N S TM=$P($H,",")_","_TM
 .S HR=$ZD(TM,"24")
 .S MN=$ZD(TM,"60")
 ;
 N WD S WD=$$WD
 ;
 I '$D(%W1DAT("TDTM")) W $S($$^%W1LNG'="H":$G(TXT)_"&nbsp",1:"")
 I $D(%W1DAT("TDTM")) D
 .I $L($G(TXT)) D
 ..W "<td style=""align:"_$S($$^%W1DIR="RTL":"left",1:"right")_";"_$S($D(%W1DAT("TXTCOLOR")):"color:"_%W1DAT("TXTCOLOR"),1:"")_""" >",$G(TXT),"</td>"
 .W "<td dir=""LTR"" "
 .W "  align="""_$S($D(%W1DAT("ALIGN")):%W1DAT("ALIGN"),1:"center")_""">",!
 ;
 W "<input type=""text"" name="""_COD_"hr"" id="""_COD_"hrid"" "
  D INPPRM(HR)
 W "/>&nbsp;",!
 W ! ;
 W "<input type=""text"" name="""_COD_"mn"" id="""_COD_"mnid"""
  D INPPRM(MN)
 W "/>&nbsp;"
 ;
 I '$D(%W1DAT("TDTM")) W $S($$^%W1LNG="H":$G(TXT),1:"")
 I $D(%W1DAT("TDTM")) W "</td>"
 K %W1DAT
 Q
 ;
INPPRM(VL) ;
 W $$INPPRM1(VL)
 I $D(%W1DAT("W3ORDHD")) D
 .W "onChange=""CallTfr('"_$$GET^%W1PRM("CODE")_"')"" "
 Q
 ;
 ;
STDT(COD,TXT,DD,MM,YY,WD) ;
 I $G(MM)="",$G(YY)="",$G(DD)?2N1"."2N1"."2N N DT S DT=DD D
 .S MM=$P(DD,".",2)
 .S YY=$P(DD,".",3)
 .S DD=$P(DD,".")
 ;
 I $G(MM)="",$G(YY)="",$G(DD)?2N1"/"2N1"/"2N N DT S DT=DD D
 .S MM=$P(DD,"/",2)
 .S YY=$P(DD,"/",3)
 .S DD=$P(DD,"/")
 ;
 S:'$G(WD) WD=$$WD
 S:'$D(TXT) TXT=""
 S:'$D(DD) DD="" S:'$D(MM) MM="" S:'$D(YY) YY=""
 ;
 N STDT S STDT=""
 ;
 I '$$OLDDAT D  G STDTE
 .N DT S DT=0 I DD S DT=$$^%L1DC(DD_MM_YY,3)
 .I DD="" D
 ..S DT=$S($$^W4ELPOS:$$^W4DZ,1:$H)
 ..N DAT S DAT=$ZD(DT,"DDMMYY")
 ..S DD=$E(DAT,1,2)
 ..S MM=$E(DAT,3,4)
 ..S YY=$E(DAT,5,6)
 .;;W "NOOLD: DD="_DD_"  MM="_MM_" YY="_YY,! ;
 .D STDTSEL
 ;
 ;
 S STDT=STDT_"<table dir="""_$$^%W1DIR_""" align=""center"" border=""0""><tr>"
 I '$D(%W1DAT("TD")),$L($G(TXT)) D
 .S STDT=STDT_"<td>"_$G(TXT)_"</td>"
 ;
 D EQ
 S STDT=STDT_"<td "_$$STYLE^%W1DIR("LTR")_" align=""center"" >"
 S STDT=STDT_"<input type=""text"" name="""_COD_"dd"" id="""_COD_"IDdd"""
 S STDT=STDT_$$INPPRM1(DD)
 D CHANGE(COD)
 S STDT=STDT_" onBlur=""VldDD('"_COD_"IDdd')""/>&nbsp;"
 ;
 S STDT=STDT_"<input type=""text"" name="""_COD_"mm"" id="""_COD_"IDmm"""
 S STDT=STDT_$$INPPRM1(MM)
 D CHANGE(COD)
 S STDT=STDT_" onBlur=""VldMM('"_COD_"IDmm')"" />&nbsp;"
 ;
 S STDT=STDT_"<input type=""text"" name="""_COD_"yy"" id="""_COD_"IDyy"""
 S STDT=STDT_$$INPPRM1(YY)
 D CHANGE(COD)
 S STDT=STDT_" onBlur=""VldYY('"_COD_"IDyy')"" />&nbsp;"
 S STDT=STDT_"</td>"
 D DAY
 ;
 ;;D EQ
 ;
 S STDT=STDT_"</tr></table>"
 ;
STDTE ;
 Q STDT
 ;
 ;
INPPRM1(VL) ;
 N A
 S A=" maxlength=""2"" style=""width:"_WD_";text-align:center"
 I $$1024^W4WDSCR S A=A_";font-size:"_$$^W3FSZ(10)
 s A=A_""""
 S A=A_" value="""_VL_""" "
 S A=A_" onClick=""this.select()"" "
 S A=A_" onKeyUp=""OnDateKeyUp(this,event)"" "
 I $D(%W1DAT("W3ORDHD")) D
 .S A=A_"onKeyPress=""OnKeyPress(event)"" "
 .S A=A_"onChange=""CallTfr('"_$$GET^%W1PRM("CODE")_"')"""
 Q A
 ;
STDTRP(COD,TXT,DD,MM,YY,WD) ;
 Q $$RPL^%L1FRM($$STDT(COD,TXT,DD,MM,YY,WD),"'","\'")
 ;
CHANGE(COD) ;
 I $L($G(%W1DAT("CHANGE"))) S STDT=STDT_" onChange="""_$TR(%W1DAT("CHANGE"),"""","'")_"""" Q
 S STDT=STDT_" "_$$CHNDT(COD)
 Q
 ;
TIMENEW(COD,TM,TXT,PR) ;
 ; PR '< 1 - MINUTES
 ;--------------------------
 W "<table dir=""LTR"" cellpadding=""1px"" width=""70px"">",!
 W "<tr>",!
 I $L($G(TXT)),$$^%W1DIR="LTR" D TMNTXT
 D
 .N HR,MN,I
 .S HR=$P(TM,":",1),MN=$P(TM,":",2)
 .W "<td dir=""LTR"">"
 .W "<select id="""_COD_"hr"" "
 .I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 .W ">",!
 .F I=0:1:24 D
 ..W "<option"
 ..N VL S VL=$TR($J(I,2)," ",0) I $G(PR)<1 S VL=VL_":00"
 ..W " value="""_VL_""""
 ..I +I=+HR W " selected=""selected"""
 ..W ">"_$J(VL,10)_"</option>",!
 ..I I=24 Q
 ..I $G(PR)<1 D
 ...W "<option"
 ...S VL=$TR($J(I,2)," ",0)_":30"
 ...W " value="""_VL_""""
 ...I +I=+HR,MN=30 W " selected=""selected"""
 ...W ">"_$J(VL,10)_"</option>",!
 .
 .I '$G(PR) D
 ..W "<option value=""24HR"""
 ..I HR["24HR" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("24HR")_"</option>",!
 ..W "<option value=""LAST"""
 ..I HR["LAST" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("LASTCLIENT")_"</option>",!
 .
 .I $D(%W1DAT("SHBT")) D
 ..W "<option value=""SHBT1"""
 ..I HR["SHBT1" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("SHABAT1")_"</option>",!
 ..W "<option value=""SHBT2"""
 ..I HR["SHBT2" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("SHABAT2")_"</option>",!
 .
 .W "</select>",!
 .W "</td>",!
 .
 .I $G(PR)'<1 D
 ..W "<td>"
 ..W "<select id="""_COD_"mn"" "
 ..I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 ..W " >",!
 ..F I=0:5:55 D
 ...W "<option"
 ...N VL S VL=$TR($J(I,2)," ",0)
 ...I +I=+MN W " selected=""selected"""
 ...W " value="""_VL_""""
 ...W " >"_VL_"</option>",!
 .W "</select>",!
 ;
 I $L($G(TXT)),$$^%W1DIR="RTL" D TMNTXT
 W "</tr>",!
 W "</table>",!
 Q
TMNTXT ;
 W "<td "
 W " dir="""_$$^%W1DIR_""""
 W " align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 W ">"
 W $$H2U^%L1FRM(TXT)
 W "</td>"
 Q
 ;
ONKEYPRESS ;
 W " onKeyPress=""OnKeyPress(event,this)"" "
 Q
 ;
WD(STAM) ; 
 Q $$^W4KF(25)
 ;;I $$^W4TABLET Q 32 
 Q 25 
 ;
STDTSEL ; 
 N DAT S DAT=$G(DT)
 I DAT?5N S DAT=$ZD(DAT,"DDMMYY")
 I DAT="" S DAT=$ZD($H,"DDMMYY")
 ;;W "STDTSEL.DAT="_DAT_"  DD="_DD_"  MM="_MM_"  YY="_YY,! ; *** 
 ;;S STDT=STDT_"<table dir="""_$$^%W1DIR_""" border=""0"" "_$$^%W1ALIGN_"><tr>"
 S STDT=STDT_"<table dir="""_$$^%W1DIR_""" border=""0"" align=""center""><tr>"
 ;
 I $G(TXT)'="",'$D(%W1DAT("TD")) D
 .S STDT=STDT_"<td "_$$STYLE^%W1DIR_"> "_$G(TXT)_" </td>"
 ;
 D EQ
 S ^AA("W1DAT","DAT")=DAT
 S STDT=STDT_"<td dir=""LTR"">"
 S STDT=STDT_"<select name="""_COD_"dd"" "_$$CHNDT(COD)_" id="""_COD_"IDdd"" >"
 ;
 N J F J=0:1:31 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"DD")_">"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select>"
 ;
 S STDT=STDT_"<select name="""_COD_"mm"" "_$$CHNDT(COD)_" id="""_COD_"IDmm"" >"
 F J=0:1:12 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"MM")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select>"
 ;
 S STDT=STDT_"<select name="""_COD_"yy"" "_$$CHNDT(COD)_" id="""_COD_"IDyy"" >"
 F J=0:1:99 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"YY")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select></td> "
 ;
 I '$D(%W1DAT("NODAY")) D DAY
 ;;D EQ
 S STDT=STDT_"</tr></table>"
 Q
 ;
 ;
DAY ;
 N DAY S DAY="" I $G(DT) S DAY=$$^W3DAY(DT) 
 S STDT=STDT_"<td id="""_COD_"day"" dir="""_$$^%W1DIR_""">"_DAY_"</td>"
 Q
 ;
DOP(J) ; 
 Q $TR($J(J,2)," ",0) 
 ;
SEL(J,DAT,IND)
 ;;W "SEL.DAT="_DAT_" J="_J ; ***
 N DD,MM,YY
 S DAT=$TR(DAT,"./","") 
 S DD=$E(DAT,1,2) 
 S MM=$E(DAT,3,4) 
 S YY=$E(DAT,5,6) 
 I IND="DD",+J=+DD Q " selected=""selected"" "
 I IND="MM",+J=+MM Q " selected=""selected"" "
 I IND="YY",+J=+YY Q " selected=""selected"" "
 Q "" 
 ; 
LM(DAT) ;
 Q $$LMM^%L1DC(DAT)
 ;
OLDDAT(STAM) ; 
 I $$OLDDAT^W4PRM!$G(%ARG("OLDDAT"))!$G(%W1DAT("OLDDAT")) Q 1
 Q 0
 ;
CHNDT(COD) ;
 N ST S ST="onChange=""OnChangeW1Dat('"_COD_"')"" "
 Q ST 
 ;
EQ ; 
 ;;I $E(COD,1,3)="ADD",'$D(%W1DAT("NOEQ")),$D(%W1DAT("="))!$$DELIS^W4PRM!'$$NOEQDAT^W4PRM D
 I $E(COD,1,2)="AD"!(COD?1"DAT2".E),'$D(%W1DAT("NOEQ")),$D(%W1DAT("="))!$$DELIS^W4PRM!'$$NOEQDAT^W4PRM D
 .;;I $$1024^W4WDSCR,'$D(%W1DAT("=")) Q
 .N MEDAT,ADDAT
 .S ADDAT=COD
 .I $E(COD,1,2)="AD" S MEDAT="ME"_$E(COD,3,20)
 .I $E(COD,1,4)="DAT2" S MEDAT="DAT1"_$E(COD,5,20)
 .S STDT=STDT_"<td width=""5%"">&nbsp;</td>"
 .S STDT=STDT_"<td><input type=""button"" style=""height:"_$$^W4KF(28)_"px;width:"_$$^W4KF(28)_"px"""
 .S STDT=STDT_" value=""="" onclick=""SameDate('"_MEDAT_"','"_ADDAT_"')"" /></td>"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1DAT0
%W1DAT(COD,DT,TXT) ; [ 25.02.20 14:08 ] [ 24.02.20 16:59 ] [ 01.02.19 08:27 ] 
 N WD,DD,MM,YY,DAT S WD=$$WD
 ;
 S (DD,MM,YY)=""
 S DT=$G(DT)
 S TXT=$G(TXT)
 ;
 I $G(DT)="",$$OLDDAT D
 .S DD="" S MM=$ZD($H,"MM"),YY=$ZD($H,"YY")
 .N DN S DN=$ZD($H,"DD") I DN<11 S MM=""
 .I DN<11,+MM=1 S MM=""
 ;
 I $G(DT)="",'$$OLDDAT S DT=+$H
 ;
 I $G(DT)="-" S (DD,MM,YY)=""
 ;
 S DT=$TR(DT,"/",".")
 ;
 I $G(DT)?2N1"."2N1"."2N D
 .S DD=$P(DT,".",1)
 .S MM=$P(DT,".",2)
 .S YY=$P(DT,".",3)
 ;
 I $G(DT)?2N1"."2N1"."4N D
 .S DD=$P(DT,".",1)
 .S MM=$P(DT,".",2)
 .S YY=$E($P(DT,".",3),3,4)
 ;
 I $G(DT)?1"."2N1"."2N D
 .S DD=""
 .S MM=$P(DT,".",2)
 .S YY=$P(DT,".",3)
 ;
 I $P($G(DT),",")?5N D
 .S DD=$ZD(DT,"DD")
 .S MM=$ZD(DT,"MM")
 .S YY=$ZD(DT,"YY")
 ;
 S DAT=DD_"."_MM_"."_YY
 ;
 I $D(%W1DAT("TD")) D
 .W:$G(TXT)'="" "<td>&nbsp;&nbsp;"_$G(TXT)_"</td>"
 ;
 I DT'?5N S DT=$$^%L1DC(DT,3)
 I $$^W4TABLET=2 S %W1DAT("CLND")=2 G CLND2
 I '$G(%W1DAT("CLND")) G OLD
 ;
 ; ; --------- NEW -------
 ;
 W "<td dir="""_$$^%W1DIR_""" align="""_$G(%W1DAT("ALIGN"),"center")_""""
 I $D(%W1DAT("TD")) W " width=""90px"""
 W " >",!
 I '$D(%W1DAT("TD")) W $G(TXT)_" " W "</td><td width=""80px"">",!
 ;
 I DT'?5N S DT=$$^%L1DC(DT,3)
 ;
 I $G(%W1DAT("CLND"))=1 D
 .W "<input type=""text"" name="""_COD_""" id="""_COD_""" size=""8"""
 .W " style=""background-color:yellow;text-align:center"""
 .W " value="""_DAT_""""
 .W " onClick=""getClnd(this);"""
 .D ONCHANGE
 .W " />&nbsp;"
 ;
CLND2 ;
 I +$G(%W1DAT("CLND"))=2 D
 .N DAYS S DAYS=$P(%W1DAT("CLND"),";",2)
 .N SM S SM=$P(%W1DAT("CLND"),";",3)
 .I 'DAYS S DAYS=$S($$^W4TABLET:540,1:30),SM=$S($$^W4TABLET:360,1:10)
 .;;I $$^W4TABLET S SM=360
 .W "<select name="""_COD_""" id="""_COD_""""
 .D ONCHANGE
 .I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 .I $G(%W1DAT("TABIND")) W " tabindex="""_%W1DAT("TABIND")_""" "
 .I $G(%W1DAT("STYLE")) W " style="""_STYLE_""" "
 .W ">",!
 .N I,DT0,DTS S DT0=$$^%L1DC(DAT,3)
 .I $$GETP^%W1PRM("ELPOS"),DT0>+$H!$$^W4TABLET S DT0=+$H
 .I $$GETP^%W1PRM("ELPOS"),$$^W4TABLET,'DT S DT=$$^W4DZ
 .N I,DTS
 .S ^AA("DT0")=DT0,^AA("SM")=SM,^AA("DT")=DT,^AA("DAYS")=DAYS
 .I SM>720 S SM=720
 .F I=1:1:DAYS D
 ..S DTS=DT0-SM+I-1
 ..N VL S VL=$$^%L1DC(DTS,1)
 ..I $$^W3VLDDT(DTS)'>0,$$ONLINE^W4DLVCSR Q
 ..W "<option value="""_VL_""" "
 ..I DTS=DT W " selected=""selected"" "
 ..W " >"
 ..I $$^%W1LNG="H" W VL_" "_$$H2U^%L1FRM($$^%L1DC(DTS,9))
 ..I $$^%W1LNG="E" D
 ...N ND S ND=$$^%L1DC(DTS,8)
 ...W VL_" "_$P("Sn/Mn/Ts/We/Th/Fr/St","/",ND)
 ..W "</option>",!
 .W "</select>"
 ;
 I $$^W4TABLET=2 G END
 G ED1
 ; ------------ OLD
OLD ;
 ;;W "OLD:COD="_COD_"  TXT="_TXT_"  DD="_DD_"  MM="_MM_" YY="_YY_" WD="_WD,! ;
 N STDT S STDT=$$STDT(COD,TXT,DD,MM,YY,WD)
 W STDT
ED ;
ED1 ;
 I $P($G(DAT),"."),'$D(%W1DAT("NODAY")),+$G(%W1DAT("CLND"))'=2 D
 .W "</td>"
 .W "<td id="""_COD_"IDday"" style=""color:black"" "
 .W " align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" width=""30px"" "
 .W ">"
 .W $$^W3DAY(DAT)
 ;
 I $D(%W1DAT("TD")) W "</td>",!
 ;
END ;
 K %W1DAT Q
 ;
 ;
ONCHANGE ;
 I $D(%W1DAT("W3ORDHD")) W " onChange=""ChangeDat('"_$$GET^%W1PRM("CODE")_"')"""
 I $D(%W1DAT("CHANGE")) W " onChange=""ChangeDat('"_$$GET^%W1PRM("CODE")_"')"""
 Q
 ;
TIME(COD,TM,TXT) ;
 N HR,MN S HR="",MN="00"
 I $L(TM) D
 .I TM[":" S HR=$P(TM,":"),MN=$P(TM,":",2) Q
 .I TM?1N.N S TM=$P($H,",")_","_TM
 .S HR=$ZD(TM,"24")
 .S MN=$ZD(TM,"60")
 ;
 N WD S WD=$$WD
 ;
 I '$D(%W1DAT("TDTM")) W $S($$^%W1LNG'="H":$G(TXT)_"&nbsp",1:"")
 I $D(%W1DAT("TDTM")) D
 .I $L($G(TXT)) D
 ..W "<td style=""align:"_$S($$^%W1DIR="RTL":"left",1:"right")_";"_$S($D(%W1DAT("TXTCOLOR")):"color:"_%W1DAT("TXTCOLOR"),1:"")_""" >",$G(TXT),"</td>"
 .W "<td dir=""LTR"" "
 .W "  align="""_$S($D(%W1DAT("ALIGN")):%W1DAT("ALIGN"),1:"center")_""">",!
 ;
 W "<input type=""text"" name="""_COD_"hr"" id="""_COD_"hrid"" "
  D INPPRM(HR)
 W "/>&nbsp;",!
 W ! ;
 W "<input type=""text"" name="""_COD_"mn"" id="""_COD_"mnid"""
  D INPPRM(MN)
 W "/>&nbsp;"
 ;
 I '$D(%W1DAT("TDTM")) W $S($$^%W1LNG="H":$G(TXT),1:"")
 I $D(%W1DAT("TDTM")) W "</td>"
 K %W1DAT
 Q
 ;
INPPRM(VL) ;
 W $$INPPRM1(VL)
 I $D(%W1DAT("W3ORDHD")) D
 .W "onChange=""CallTfr('"_$$GET^%W1PRM("CODE")_"')"" "
 Q
 ;
 ;
STDT(COD,TXT,DD,MM,YY,WD) ;
 I $G(MM)="",$G(YY)="",$G(DD)?2N1"."2N1"."2N N DT S DT=DD D
 .S MM=$P(DD,".",2)
 .S YY=$P(DD,".",3)
 .S DD=$P(DD,".")
 ;
 I $G(MM)="",$G(YY)="",$G(DD)?2N1"/"2N1"/"2N N DT S DT=DD D
 .S MM=$P(DD,"/",2)
 .S YY=$P(DD,"/",3)
 .S DD=$P(DD,"/")
 ;
 S:'$G(WD) WD=$$WD
 S:'$D(TXT) TXT=""
 S:'$D(DD) DD="" S:'$D(MM) MM="" S:'$D(YY) YY=""
 ;
 N STDT S STDT=""
 I '$D(%W1DAT("TD")) S STDT=STDT_$S($$^%W1LNG="H":"",1:$G(TXT))_"&nbsp;"
 ;
 I '$$OLDDAT D  G STDTE
 .N DT S DT=$$^%L1DC(DD_MM_YY,3)
 .I 'DD D
 ..S DT=$S($$^W4ELPOS:$$^W4DZ,1:$H)
 ..N DAT S DAT=$ZD(DT,"DDMMYY")
 ..S DD=$E(DAT,1,2)
 ..S MM=$E(DAT,3,4)
 ..S YY=$E(DAT,5,6)
 .;;W "NOOLD: DD="_DD_"  MM="_MM_" YY="_YY,! ;
 .D STDTSEL
 ;
 ;
 S STDT=STDT_"<input type=""text"" name="""_COD_"dd"" id="""_COD_"IDdd"""
 S STDT=STDT_$$INPPRM1(DD)
 D CHANGE
 S STDT=STDT_" onBlur=""VldDD('"_COD_"IDdd')""/>&nbsp;"
 ;
 S STDT=STDT_"<input type=""text"" name="""_COD_"mm"" id="""_COD_"IDmm"""
 S STDT=STDT_$$INPPRM1(MM)
 D CHANGE
 S STDT=STDT_" onBlur=""VldMM('"_COD_"IDmm')"" />&nbsp;"
 ;
 S STDT=STDT_"<input type=""text"" name="""_COD_"yy"" id="""_COD_"IDyy"""
 S STDT=STDT_$$INPPRM1(YY)
 D CHANGE
 S STDT=STDT_" onBlur=""VldYY('"_COD_"IDyy')"" />&nbsp;"
 ;
STDTE ;
 I '$D(%W1DAT("TD")) S STDT=STDT_$S($$^%W1LNG="H":" "_$G(TXT),1:"")
 Q STDT
 ;
 ;
INPPRM1(VL) ;
 N A
 S A=" maxlength=""2"" style=""width:"_WD_";text-align:center"" "
 S A=A_" value="""_VL_""" "
 S A=A_" onClick=""this.select()"" "
 S A=A_" onKeyUp=""OnDateKeyUp(this,event)"" "
 I $D(%W1DAT("W3ORDHD")) D
 .S A=A_"onKeyPress=""OnKeyPress(event)"" "
 .S A=A_"onChange=""CallTfr('"_$$GET^%W1PRM("CODE")_"')"""
 Q A
 ;
STDTRP(COD,TXT,DD,MM,YY,WD) ;
 Q $$RPL^%L1FRM($$STDT(COD,TXT,DD,MM,YY,WD),"'","\'")
 ;
CHANGE ;
 Q:'$D(%W1DAT("CHANGE"))
 I $L($G(%W1DAT("CHANGE"))) S STDT=STDT_" onChange="""_$TR(%W1DAT("CHANGE"),"""","'")_""""
 Q
TIMENEW(COD,TM,TXT,PR) ;
 ; PR '< 1 - MINUTES
 ;--------------------------
 W "<table dir=""LTR"" cellpadding=""1px"" width=""70px"">",!
 W "<tr>",!
 I $L($G(TXT)),$$^%W1DIR="LTR" D TMNTXT
 D
 .N HR,MN,I
 .S HR=$P(TM,":",1),MN=$P(TM,":",2)
 .W "<td dir=""LTR"">"
 .W "<select id="""_COD_"hr"" "
 .I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 .W ">",!
 .F I=0:1:24 D
 ..W "<option"
 ..N VL S VL=$TR($J(I,2)," ",0) I $G(PR)<1 S VL=VL_":00"
 ..W " value="""_VL_""""
 ..I +I=+HR W " selected=""selected"""
 ..W ">"_$J(VL,10)_"</option>",!
 ..I I=24 Q
 ..I $G(PR)<1 D
 ...W "<option"
 ...S VL=$TR($J(I,2)," ",0)_":30"
 ...W " value="""_VL_""""
 ...I +I=+HR,MN=30 W " selected=""selected"""
 ...W ">"_$J(VL,10)_"</option>",!
 .
 .I '$G(PR) D
 ..W "<option value=""24HR"""
 ..I HR["24HR" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("24HR")_"</option>",!
 ..W "<option value=""LAST"""
 ..I HR["LAST" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("LASTCLIENT")_"</option>",!
 .
 .I $D(%W1DAT("SHBT")) D
 ..W "<option value=""SHBT1"""
 ..I HR["SHBT1" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("SHABAT1")_"</option>",!
 ..W "<option value=""SHBT2"""
 ..I HR["SHBT2" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("SHABAT2")_"</option>",!
 .
 .W "</select>",!
 .W "</td>",!
 .
 .I $G(PR)'<1 D
 ..W "<td>"
 ..W "<select id="""_COD_"mn"" "
 ..I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 ..W " >",!
 ..F I=0:5:55 D
 ...W "<option"
 ...N VL S VL=$TR($J(I,2)," ",0)
 ...I +I=+MN W " selected=""selected"""
 ...W " value="""_VL_""""
 ...W " >"_VL_"</option>",!
 .W "</select>",!
 ;
 I $L($G(TXT)),$$^%W1DIR="RTL" D TMNTXT
 W "</tr>",!
 W "</table>",!
 Q
TMNTXT ;
 W "<td "
 W " dir="""_$$^%W1DIR_""""
 W " align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 W ">"
 W $$H2U^%L1FRM(TXT)
 W "</td>"
 Q
 ;
ONKEYPRESS ;
 W " onKeyPress=""OnKeyPress(event,this)"" "
 Q
 ;
WD(STAM) ; 
 I $$^W4TABLET Q 32 
 Q 25 
 ;
STDTSEL ; 
 N DAT S DAT=$G(DT)
 I DAT?5N S DAT=$ZD(DAT,"DDMMYY")
 I 'DAT S DAT=$ZD($H,"DDMMYY")
 ;;W "DAT="_DAT_"  DD="_DD_"  MM="_MM_"  YY="_YY,! 
 S STDT=STDT_" <select name="""_COD_"dd"" id="""_COD_"IDdd"" >"
 ;
 N J F J=1:1:31 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"DD")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select>"
 ;
 S STDT=STDT_"<select name="""_COD_"mm"" id="""_COD_"IDmm"" >"
 F J=1:1:12 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"MM")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select>"
 ;
 S STDT=STDT_"<select name="""_COD_"yy"" id="""_COD_"IDyy"" >"
 F J=17:1:26 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"YY")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select> "
 Q
 ;
DOP(J) ; 
 Q $TR($J(J,2)," ",0) 
 ;
SEL(J,DAT,IND)
 N DD,MM,YY
 S DAT=$TR(DAT,"./","") 
 S DD=$E(DAT,1,2) 
 S MM=$E(DAT,3,4) 
 S YY=$E(DAT,5,6) 
 I IND="DD",+J=+DD Q " selected=""selected"" "
 I IND="MM",+J=+MM Q " selected=""selected"" "
 I IND="YY",+J=+YY Q " selected=""selected"" "
 Q "" 
 ; 
LM(DAT) ;
 Q $$LMM^%L1DC(DAT)
 ;
OLDDAT(STAM) ; 
 I $$OLDDAT^W4PRM!$G(%ARG("OLDDAT")) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1DAT1
%W1DAT(COD,DT,TXT) ; [ 26.02.20 10:41 ] [ 25.02.20 17:49 ] [ 24.02.20 16:59 ] 
 N WD,DD,MM,YY,DAT S WD=$$WD
 ;
 S (DD,MM,YY)=""
 S DT=$G(DT)
 S TXT=$G(TXT)
 ;
 I $G(DT)="",$$OLDDAT D
 .S DD="" S MM=$ZD($H,"MM"),YY=$ZD($H,"YY")
 .N DN S DN=$ZD($H,"DD") I DN<11 S MM=""
 .I DN<11,+MM=1 S MM=""
 ;
 I $G(DT)="",'$$OLDDAT S DT=+$H
 ;
 I $G(DT)="-" S (DD,MM,YY)=""
 ;
 S DT=$TR(DT,"/",".")
 ;
 I $G(DT)?2N1"."2N1"."2N D
 .S DD=$P(DT,".",1)
 .S MM=$P(DT,".",2)
 .S YY=$P(DT,".",3)
 ;
 I $G(DT)?2N1"."2N1"."4N D
 .S DD=$P(DT,".",1)
 .S MM=$P(DT,".",2)
 .S YY=$E($P(DT,".",3),3,4)
 ;
 I $G(DT)?1"."2N1"."2N D
 .S DD=""
 .S MM=$P(DT,".",2)
 .S YY=$P(DT,".",3)
 ;
 I $P($G(DT),",")?5N D
 .S DD=$ZD(DT,"DD")
 .S MM=$ZD(DT,"MM")
 .S YY=$ZD(DT,"YY")
 ;
 S DAT=DD_"."_MM_"."_YY
 ;
 I $D(%W1DAT("TD")) D  ; -- TEXT
 .W:$G(TXT)'="" "<td>&nbsp;&nbsp;"_$G(TXT)_"</td>"
 ;
 I DT'?5N S DT=$$^%L1DC(DT,3)
 ;
 I $$^W4TABLET=2 S %W1DAT("CLND")=2 G CLND2
 I '$G(%W1DAT("CLND")) G INP ; -- !!!
 ;
 ; ; --------- CALENDER -------
 ;
 W "<td dir="""_$$^%W1DIR_""" align="""_$G(%W1DAT("ALIGN"),"center")_""""
 I $D(%W1DAT("TD")) W " width=""90px"""
 W " >",!
 I '$D(%W1DAT("TD")) W $G(TXT)_" " W "</td><td width=""80px"">",!
 ;
 I DT'?5N S DT=$$^%L1DC(DT,3)
 ;
 I $G(%W1DAT("CLND"))=1 D
 .W "<input type=""text"" name="""_COD_""" id="""_COD_""" size=""8"""
 .W " style=""background-color:yellow;text-align:center"""
 .W " value="""_DAT_""""
 .W " onClick=""getClnd(this);"""
 .D ONCHANGE
 .W " />&nbsp;"
 ;
CLND2 ;
 I +$G(%W1DAT("CLND"))=2 D
 .N DAYS S DAYS=$P(%W1DAT("CLND"),";",2)
 .N SM S SM=$P(%W1DAT("CLND"),";",3)
 .I 'DAYS S DAYS=$S($$^W4TABLET:540,1:30),SM=$S($$^W4TABLET:360,1:10)
 .W "<select name="""_COD_""" id="""_COD_""""
 .D ONCHANGE
 .I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 .I $G(%W1DAT("TABIND")) W " tabindex="""_%W1DAT("TABIND")_""" "
 .I $G(%W1DAT("STYLE")) W " style="""_STYLE_""" "
 .W ">",!
 .N I,DT0,DTS S DT0=$$^%L1DC(DAT,3)
 .I $$GETP^%W1PRM("ELPOS"),DT0>+$H!$$^W4TABLET S DT0=+$H
 .I $$GETP^%W1PRM("ELPOS"),$$^W4TABLET,'DT S DT=$$^W4DZ
 .N I,DTS
 .S ^AA("DT0")=DT0,^AA("SM")=SM,^AA("DT")=DT,^AA("DAYS")=DAYS
 .I SM>720 S SM=720
 .F I=1:1:DAYS D
 ..S DTS=DT0-SM+I-1
 ..N VL S VL=$$^%L1DC(DTS,1)
 ..I $$^W3VLDDT(DTS)'>0,$$ONLINE^W4DLVCSR Q
 ..W "<option value="""_VL_""" "
 ..I DTS=DT W " selected=""selected"" "
 ..W " >"
 ..I $$^%W1LNG="H" W VL_" "_$$H2U^%L1FRM($$^%L1DC(DTS,9))
 ..I $$^%W1LNG="E" D
 ...N ND S ND=$$^%L1DC(DTS,8)
 ...W VL_" "_$P("Sn/Mn/Ts/We/Th/Fr/St","/",ND)
 ..W "</option>",!
 .W "</select>"
 ;
 I $$^W4TABLET=2 G END
 G ED1
 ;
 ; ------------ INPUT DAT
 ;
INP ;
 ;;W "INP:COD="_COD_"  TXT="_TXT_"  DD="_DD_"  MM="_MM_" YY="_YY_" WD="_WD,! ;
 I $D(%W1DAT("TD")) W "<td>"
 N STDT S STDT=$$STDT(COD,TXT,DD,MM,YY,WD)
 W STDT
ED ;
ED1 ;
 ;;I $P($G(DAT),"."),'$D(%W1DAT("NODAY")),+$G(%W1DAT("CLND"))'=2 D
 .W "</td>"
 .W "<td id="""_COD_"IDday"" style=""color:black"" "
 .W " align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" width=""30px"" "
 .W ">"
 .W $$^W3DAY(DAT)
 ;
 I $D(%W1DAT("TD")) W "</td>",!
 ;
END ;
 K %W1DAT Q
 ;
 ;
ONCHANGE ;
 I $D(%W1DAT("W3ORDHD")) W " onChange=""ChangeDat('"_$$GET^%W1PRM("CODE")_"')"""
 I $D(%W1DAT("CHANGE")) W " onChange=""ChangeDat('"_$$GET^%W1PRM("CODE")_"')"""
 Q
 ;
TIME(COD,TM,TXT) ;
 N HR,MN S HR="",MN="00"
 I $L(TM) D
 .I TM[":" S HR=$P(TM,":"),MN=$P(TM,":",2) Q
 .I TM?1N.N S TM=$P($H,",")_","_TM
 .S HR=$ZD(TM,"24")
 .S MN=$ZD(TM,"60")
 ;
 N WD S WD=$$WD
 ;
 I '$D(%W1DAT("TDTM")) W $S($$^%W1LNG'="H":$G(TXT)_"&nbsp",1:"")
 I $D(%W1DAT("TDTM")) D
 .I $L($G(TXT)) D
 ..W "<td style=""align:"_$S($$^%W1DIR="RTL":"left",1:"right")_";"_$S($D(%W1DAT("TXTCOLOR")):"color:"_%W1DAT("TXTCOLOR"),1:"")_""" >",$G(TXT),"</td>"
 .W "<td dir=""LTR"" "
 .W "  align="""_$S($D(%W1DAT("ALIGN")):%W1DAT("ALIGN"),1:"center")_""">",!
 ;
 W "<input type=""text"" name="""_COD_"hr"" id="""_COD_"hrid"" "
  D INPPRM(HR)
 W "/>&nbsp;",!
 W ! ;
 W "<input type=""text"" name="""_COD_"mn"" id="""_COD_"mnid"""
  D INPPRM(MN)
 W "/>&nbsp;"
 ;
 I '$D(%W1DAT("TDTM")) W $S($$^%W1LNG="H":$G(TXT),1:"")
 I $D(%W1DAT("TDTM")) W "</td>"
 K %W1DAT
 Q
 ;
INPPRM(VL) ;
 W $$INPPRM1(VL)
 I $D(%W1DAT("W3ORDHD")) D
 .W "onChange=""CallTfr('"_$$GET^%W1PRM("CODE")_"')"" "
 Q
 ;
 ;
STDT(COD,TXT,DD,MM,YY,WD) ;
 I $G(MM)="",$G(YY)="",$G(DD)?2N1"."2N1"."2N N DT S DT=DD D
 .S MM=$P(DD,".",2)
 .S YY=$P(DD,".",3)
 .S DD=$P(DD,".")
 ;
 I $G(MM)="",$G(YY)="",$G(DD)?2N1"/"2N1"/"2N N DT S DT=DD D
 .S MM=$P(DD,"/",2)
 .S YY=$P(DD,"/",3)
 .S DD=$P(DD,"/")
 ;
 S:'$G(WD) WD=$$WD
 S:'$D(TXT) TXT=""
 S:'$D(DD) DD="" S:'$D(MM) MM="" S:'$D(YY) YY=""
 ;
 N STDT S STDT=""
 ;
 I '$$OLDDAT D  G STDTE
 .N DT S DT=$$^%L1DC(DD_MM_YY,3)
 .I 'DD D
 ..S DT=$S($$^W4ELPOS:$$^W4DZ,1:$H)
 ..N DAT S DAT=$ZD(DT,"DDMMYY")
 ..S DD=$E(DAT,1,2)
 ..S MM=$E(DAT,3,4)
 ..S YY=$E(DAT,5,6)
 .;;W "NOOLD: DD="_DD_"  MM="_MM_" YY="_YY,! ;
 .D STDTSEL
 ;
 ;
 S STDT=STDT_"<table dir="""_$$^%W1DIR_"""><tr>"
 I '$D(%W1DAT("TD")),$L($G(TXT)) D
 .S STDT=STDT_"<td>"_$G(TXT)_"</td>"
 ;
 S STDT=STDT_"<td "_$$STYLE^%W1DIR("LTR")_">"
 S STDT=STDT_"<input type=""text"" name="""_COD_"dd"" id="""_COD_"IDdd"""
 S STDT=STDT_$$INPPRM1(DD)
 D CHANGE(COD)
 S STDT=STDT_" onBlur=""VldDD('"_COD_"IDdd')""/>&nbsp;"
 ;
 S STDT=STDT_"<input type=""text"" name="""_COD_"mm"" id="""_COD_"IDmm"""
 S STDT=STDT_$$INPPRM1(MM)
 D CHANGE(COD)
 S STDT=STDT_" onBlur=""VldMM('"_COD_"IDmm')"" />&nbsp;"
 ;
 S STDT=STDT_"<input type=""text"" name="""_COD_"yy"" id="""_COD_"IDyy"""
 S STDT=STDT_$$INPPRM1(YY)
 D CHANGE(COD)
 S STDT=STDT_" onBlur=""VldYY('"_COD_"IDyy')"" />&nbsp;"
 S STDT=STDT_"</td>"
 D DAY
 S STDT=STDT_"</tr></table>"
 ;
STDTE ;
 Q STDT
 ;
 ;
INPPRM1(VL) ;
 N A
 S A=" maxlength=""2"" style=""width:"_WD_";text-align:center"" "
 S A=A_" value="""_VL_""" "
 S A=A_" onClick=""this.select()"" "
 S A=A_" onKeyUp=""OnDateKeyUp(this,event)"" "
 I $D(%W1DAT("W3ORDHD")) D
 .S A=A_"onKeyPress=""OnKeyPress(event)"" "
 .S A=A_"onChange=""CallTfr('"_$$GET^%W1PRM("CODE")_"')"""
 Q A
 ;
STDTRP(COD,TXT,DD,MM,YY,WD) ;
 Q $$RPL^%L1FRM($$STDT(COD,TXT,DD,MM,YY,WD),"'","\'")
 ;
CHANGE(COD) ;
 I $L($G(%W1DAT("CHANGE"))) S STDT=STDT_" onChange="""_$TR(%W1DAT("CHANGE"),"""","'")_"""" Q
 S STDT=STDT_" "_$$CHNDT(COD)
 Q
 ;
TIMENEW(COD,TM,TXT,PR) ;
 ; PR '< 1 - MINUTES
 ;--------------------------
 W "<table dir=""LTR"" cellpadding=""1px"" width=""70px"">",!
 W "<tr>",!
 I $L($G(TXT)),$$^%W1DIR="LTR" D TMNTXT
 D
 .N HR,MN,I
 .S HR=$P(TM,":",1),MN=$P(TM,":",2)
 .W "<td dir=""LTR"">"
 .W "<select id="""_COD_"hr"" "
 .I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 .W ">",!
 .F I=0:1:24 D
 ..W "<option"
 ..N VL S VL=$TR($J(I,2)," ",0) I $G(PR)<1 S VL=VL_":00"
 ..W " value="""_VL_""""
 ..I +I=+HR W " selected=""selected"""
 ..W ">"_$J(VL,10)_"</option>",!
 ..I I=24 Q
 ..I $G(PR)<1 D
 ...W "<option"
 ...S VL=$TR($J(I,2)," ",0)_":30"
 ...W " value="""_VL_""""
 ...I +I=+HR,MN=30 W " selected=""selected"""
 ...W ">"_$J(VL,10)_"</option>",!
 .
 .I '$G(PR) D
 ..W "<option value=""24HR"""
 ..I HR["24HR" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("24HR")_"</option>",!
 ..W "<option value=""LAST"""
 ..I HR["LAST" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("LASTCLIENT")_"</option>",!
 .
 .I $D(%W1DAT("SHBT")) D
 ..W "<option value=""SHBT1"""
 ..I HR["SHBT1" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("SHABAT1")_"</option>",!
 ..W "<option value=""SHBT2"""
 ..I HR["SHBT2" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("SHABAT2")_"</option>",!
 .
 .W "</select>",!
 .W "</td>",!
 .
 .I $G(PR)'<1 D
 ..W "<td>"
 ..W "<select id="""_COD_"mn"" "
 ..I $D(%W1DAT("KEYPRESS")) D ONKEYPRESS
 ..W " >",!
 ..F I=0:5:55 D
 ...W "<option"
 ...N VL S VL=$TR($J(I,2)," ",0)
 ...I +I=+MN W " selected=""selected"""
 ...W " value="""_VL_""""
 ...W " >"_VL_"</option>",!
 .W "</select>",!
 ;
 I $L($G(TXT)),$$^%W1DIR="RTL" D TMNTXT
 W "</tr>",!
 W "</table>",!
 Q
TMNTXT ;
 W "<td "
 W " dir="""_$$^%W1DIR_""""
 W " align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 W ">"
 W $$H2U^%L1FRM(TXT)
 W "</td>"
 Q
 ;
ONKEYPRESS ;
 W " onKeyPress=""OnKeyPress(event,this)"" "
 Q
 ;
WD(STAM) ; 
 I $$^W4TABLET Q 32 
 Q 25 
 ;
STDTSEL ; 
 N DAT S DAT=$G(DT)
 I DAT?5N S DAT=$ZD(DAT,"DDMMYY")
 I 'DAT S DAT=$ZD($H,"DDMMYY")
 ;;W "DAT="_DAT_"  DD="_DD_"  MM="_MM_"  YY="_YY,! 
 S STDT=STDT_"<table dir="""_$$^%W1DIR_"""><tr>"
 ;
 I $G(TXT)'="",'$D(%W1DAT("TD")) D
 .S STDT=STDT_"<td "_$$STYLE^%W1DIR_"> "_$G(TXT)_" </td>"
 ;
 S STDT=STDT_"<td dir=""LTR"">"
 S STDT=STDT_"<select name="""_COD_"dd"" "_$$CHNDT(COD)_" id="""_COD_"IDdd"" >"
 ;
 N J F J=1:1:31 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"DD")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select>"
 ;
 S STDT=STDT_"<select name="""_COD_"mm"" "_$$CHNDT(COD)_" id="""_COD_"IDmm"" >"
 F J=1:1:12 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"MM")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select>"
 ;
 S STDT=STDT_"<select name="""_COD_"yy"" "_$$CHNDT(COD)_" id="""_COD_"IDyy"" >"
 F J=17:1:26 S STDT=STDT_"<option value="""_$$DOP(J)_""" "_$$SEL(J,DAT,"YY")_" >"_$$DOP(J)_"</option>"
 S STDT=STDT_"</select></td> "
 ;
 I '$D(%W1DAT("NODAY")) D DAY
 S STDT=STDT_"</tr></table>"
 Q
 ;
 ;
DAY ;
 N DAY S DAY="" I $G(DT) S DAY=$$^W3DAY(DT) 
 S STDT=STDT_"<td id="""_COD_"day"" dir="""_$$^%W1DIR_""">"_DAY_"</td>"
 Q
 ;
DOP(J) ; 
 Q $TR($J(J,2)," ",0) 
 ;
SEL(J,DAT,IND)
 N DD,MM,YY
 S DAT=$TR(DAT,"./","") 
 S DD=$E(DAT,1,2) 
 S MM=$E(DAT,3,4) 
 S YY=$E(DAT,5,6) 
 I IND="DD",+J=+DD Q " selected=""selected"" "
 I IND="MM",+J=+MM Q " selected=""selected"" "
 I IND="YY",+J=+YY Q " selected=""selected"" "
 Q "" 
 ; 
LM(DAT) ;
 Q $$LMM^%L1DC(DAT)
 ;
OLDDAT(STAM) ; 
 I $$OLDDAT^W4PRM!$G(%ARG("OLDDAT"))!$G(%W1DAT("OLDDAT")) Q 1
 Q 0
 ;
CHNDT(COD) ;
 N ST S ST="onChange=""OnChangeW1Dat('"_COD_"')"" "
 Q ST 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1DECOD
%W1DECOD(STR) ; [ 11.03.10 20:03 ] [
 N (STR)
 S I=0
 S SOU=""
CYC S I=I+1 I I>$L(STR) G END
 I $E(STR,I)="%" D  G CYC
 .S SMB=$E(STR,I+1,I+2)
 .I SMB="D7",$E(STR,I+3)="%" D  S I=I+5 Q
 ..S SMB2=$E(STR,I+4,I+5)
 ..S SOU=SOU_$C($$H2D(SMB2)-48)
 .S SMBOU=$C($$H2D(SMB))
 .I SMBOU="`" S SMBOU="'"
 .S SOU=SOU_SMBOU
 .S I=I+2
 S SOU=SOU_$E(STR,I) G CYC
END Q SOU
 ;
H2D(NMB) ;
 S NMB=$$FUNC^%UCASE(NMB)
 N A,B
 S A=$E(NMB),B=$E(NMB,2)
 I A?1U S A=9+$A(A)-64
 I B?1U S B=9+$A(B)-64
 Q A*16+B

%W1DICT
%W1DICT(KEY,PRM,LNG) ; [ 06.09.26 13:06 ] [ 24.06.26 12:59 ] [ 14.04.26 01:31 ] 
 ;;D PUT^%W3DEB("%W1DICT","KEY=KEY & PRM=PRM")
 N TXT
 I $G(KEY)="" Q ""
 ;
 S KEY=$$SPA^%L1FRM(KEY)
 S PRM=$$SPA^%L1FRM($G(PRM))
 S LNG=$$SPA^%L1FRM($G(LNG))
 ;
 I $G(KEY)="" Q ""
 I $G(LNG)="" S LNG=$$^%W1LNG
 ;
 I $E(KEY,1,3)="<!>" Q $$H2U^%L1FRM($E(KEY,4,255))
 ;
 I $G(PRM)="",KEY["<>" D
 .S PRM=$P(KEY,"<>",2,200)
 .S KEY=$P(KEY,"<>")
 ;
 I $G(PRM)="" S PRM=" "
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 ;
 I KEY="MOVINGITEMSFROMTABLE",$$^W4CP S KEY="COPYITEMSFROMTABLE"
 ;
 I KEY="RECEIVER",$$DELIS^W4PRM S KEY="ORDERMGR"
 ;
 I KEY="KK",$$PAPJ^W4PRM S KEY="GIFTCARD"
 ;
 I $G(NMB),$$^W4MSD(NMB) D
 .I KEY="CHNDLV" S KEY="CHNSRV"
 .I KEY="CHNDLVP" S KEY="CHNSRVP"
 .I KEY="DLVPAYCHANGE" S KEY="SRVPAYCHANGE"
 .I KEY="DLVPAYPRCCHANGE" S KEY="SRVPAYPRCCHANGE"
 ;
 I $$^W4DLVCSR,$$SDMSL^W4PRM,$$SDSAK^W4PRM D
 .I $G(NMB),$$^W4MSD(NMB) Q
 .I KEY="SOAD"!(KEY="SD") S KEY="SAKN" Q
 .I KEY="SOADIM"!(KEY="GUESTS") S KEY="SAKIOT" Q
 .I KEY="CHANGEGUESTSQN" S KEY="CHANGESAKQN" Q
 .I KEY="GUESTNUMBERNOTVALID" S KEY="SAKNUMBERNOTVALID" Q
 .I KEY="GUESTSQN"!(KEY="QNMSD") S KEY="SAKSQN" Q
 .I KEY="GUESTSTOTAL" S KEY="SAKSTOTAL" Q
 .I KEY="SSOAD"!(KEY="TOTALGUESTS") S KEY="SSAKS" Q
 ;
 I KEY="MYESEK",$G(@$$^W4PL@("ESEK",1))["n""ra" S KEY="MYHP"
 I KEY="PAYERTEL",$$GETP^%W1PRM("TLDFLT") S KEY="PAYERNMB"
 ;
 I $$KUPA^W4PLUK D REST2POS G TX
 I $$DLV=1 D REST2DLV G TX
 I $$DLV=.5 D REST2DLV5 G TX
 I $$TAW D REST2POS
 ;
TX S TXT=$$TV(LNG,KEY,$G(PRM))
 ;;S ^AA("%W1DICT","LNG")=LNG
 ;;S ^AA("%W1DICT","KEY")=KEY
 ;;S ^AA("%W1DICT","PRM")=$G(PRM)
 ;
 I LNG="H" S TXT=$$H2U^%L1FRM(TXT)
 I LNG="R" S TXT=$$R2U^%L1FRM(TXT)
 ;;S ^AA("%W1DICT","TXT")=TXT
 Q TXT
 ;
TV(LNG,KEY,PRM) ;
 I $G(LNG)=""!($G(KEY)="") Q ""
 S PRM=$G(PRM)
 N KBENG S KBENG=0
 I LNG="H",$$KBENG,'$$GETP^%W1PRM("W4BO") S LNG="E",KBENG=1
 ;;S ^AA("%W1DICT-TV","KEY")=KEY
 ;;S ^AA("%W1DICT-TV","LNG")=LNG
 ;;S ^AA("%W1DICT-TV","MAIN")=$$^W3MAIN
 ;;S ^AA("%W1DICT-TV","GL")=$$^W4GL("W1DICT")
 ;;S ^AA("%W1DICT-TV","$D")=$D(^[$$^W3MAIN]W1DICT(KEY,LNG))
 ;
 I '$D(^[$$^W3MAIN]W1DICT(KEY,LNG)) Q KEY
 ;
 N TXT S TXT=$G(^[$$^W3MAIN]W1DICT(KEY,LNG))
 ;;S ^AA("%W1DICT-TV","TXT")=TXT
 I KBENG S TXT=$$FUNC^%UCASE(TXT)
 D CHPRM
 Q TXT
 ;
TVTXT(TXT,PRM) ;
 S PRM=$G(PRM)
 D CHPRM
 Q TXT
 ;
CHPRM ;
 I TXT["$" D
 .N PRM1 S PRM1=PRM N PRM S PRM=PRM1_"<><><><><><><><><><><><><>"
 .N I F I=1:1:$L(PRM,"<>") D
 ..Q:TXT'[("$"_I)
 ..N VL S VL=$P(PRM,"<>",I)
 ..S TXT=$P(TXT,"$"_I)_VL_$P(TXT,"$"_I,2,255)
 Q
 ;
REST2POS ;
 ;
 I $$MTAW^W4MTAW D
 .I KEY="TABLENUMBER" S KEY="CSRNUMBER"
 .I KEY="FROMTABLE" S KEY="FROMCSR"
 .I KEY="UNTILTABLE" S KEY="UNTILCSR"
 .I KEY="CHOICETABLE" S KEY="CHOICECSR"
 .I KEY="ERASETABLE" S KEY="ERASECSR"
 .I KEY="NOTTABLE" S KEY="CSRNOTEXIST"
 .I KEY="TABLENOTBUSY" S KEY="CSRNOTBUSY"
 .I KEY="WRONGTABLENUMBER" S KEY="WRONGCSRNUMBER"
 .I KEY="ERSTBL" S KEY="ERSCSR"
 .I KEY="TABLEREPORT" S KEY="CSRREPORT"
 .I KEY="TABLERANGEWRONG" S KEY="CSRRANGEWRONG"
 .I KEY="SOADIM" S KEY="CUSTOMERSNUMBER"
 .I KEY="GUESTSQN" S KEY="CUSTOMERSNUMBER"
 .I KEY="TOTAVMSD" S KEY="TOTAVCSR"
 .I KEY="AVMSD" S KEY="AVCUST"
 ;
 I KEY="CHOICEWAITER" S KEY="CHOICECASHIER"
 I KEY="ITEMSSALEPERWAITERSREPORT" S KEY="ITEMSSALEPERCASHIERSREPORT"
 I KEY="ONEWAITERREPORT" S KEY="ONECASHIERREPORT"
 I KEY="WAITERNAME" S KEY="CASHIERNAME"
 I KEY="WAITER" S KEY="CASHIER"
 I KEY="WAITERNUMBER" S KEY="CASHIERNUMBER"
 I KEY="WAITERSREPORT" S KEY="CASHIERSREPORT"
 I KEY="WAITERSTABLE" S KEY="CASHIERSTABLE"
 I KEY="TOREST" S KEY="TOCSR"
 ;
 Q
 ;
 ;
REST2DLV ;
 I KEY="TABLENUMBER" D
 .S KEY="CUSTOMNUMBER"
 I KEY="FROMTABLE" S KEY="FROMCUSTOM"
 I KEY="UNTILTABLE" S KEY="UNTILCUSTOM"
 I KEY="CHOICETABLE" S KEY="CHOICECUSTOM"
 I KEY="TABLEREPORT" S KEY="CUSTOMREPORT"
 I KEY="TABLERANGEWRONG" S KEY="CUSTOMSRANGEWRONG"
 ;
 I KEY="CHOICEWAITER" S KEY="CHOICERECEIVER"
 I KEY="ITEMSSALEPERWAITERSREPORT" S KEY="ITEMSSALEPERRECEIVERSREPORT"
 I KEY="ONEWAITERREPORT" S KEY="ONERECEIVERREPORT"
 I KEY="WAITERNAME" S KEY="RECEIVERNAME"
 I KEY="WAITER" D
 .S KEY="RECEIVER" Q
 I KEY="WAITERNUMBER" D
 .S KEY="RECEIVERNUMBER" Q
 ;
 I KEY="WAITERSREPORT" S KEY="RECEIVERSREPORT"
 I KEY="WAITERSTABLE" S KEY="RECEIVERSTABLE"
 ;
 I KEY="SOADIM" S KEY="CUSTOMERSNUMBER"
 I KEY="GUESTSQN" S KEY="CUSTOMERSNUMBER"
 Q
DLV(STAM) ;
 I $$^W4DLVCSR Q 1
 I $$^W4DLVCSR="AND" Q .5
 Q 0
 ;
REST2DLV5 ;
 I KEY="TABLENUMBER" D
 .S KEY="CUSTOMNUMBERORTABLE"
 I KEY="WAITER" D
 .S KEY="WAITERORCOURIER"
 .I $$TAW S KEY="CASHIERORCOURIER"
 I KEY="WAITERNUMBER" D
 .S KEY="WAITERORCOURIERNUMBER"
 .I $$TAW S KEY="CASHIERORCOURIERNUMBER"
 I KEY="WAITERNAME" D
 .S KEY="WAITERORCOURIERNAME"
 .I $$TAW S KEY="CASHIERORCOURIERNAME"
 Q
 ;
TAW(STAM) ;
 I $$POS^W4MTAW!($$^W4MTAW) Q 1
 Q 0
 ;
KBENG(STAM) ; 
 I $$GETP^%W1PRM("KBENG") Q 1 
 Q +$$KBENG^W4PRM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1DIR
%W1DIR(STAM) ; [ 25.02.20 04:46 ] [ 03.10.08 15:30 ] [ 06.05.07 08:12 ] [
 N A S A=$$^%W1LNG
 I A="H" Q "RTL"
 Q "LTR"
 ;
DRC(DRC) ;
 I $G(DRC)="" S DRC=$$%W1DIR
 Q "direction:"_$$FUNC^%LCASE(DRC)
 ;
STYLE(DRC) ;
 Q "style='"_$$DRC($G(DRC))_"'"
 
 

%W1ED
%W1ED ; [ 28.07.25 10:45 ] [ 13.06.08 11:35 ] [ 12.09.07 14:39 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
MF X %chista
 R !!,"FILE :" S %LS=40 D ^%ZMSL Q:%S=""!(%TO="END")
 S FILE=%S
 D ED(FILE)
 Q
 ;
 ;
ED(FFILE) ;
 I FFILE'[".m" S FFILE=FFILE_".m"
 I FFILE'["/" S FFILE=$ZDIR_FFILE 
 N YES,%Q
 c FFILE
 o FFILE:(readonly:record=4096:rewind)
 ;;S $ZT="g REOF"
 N I,X S I=0 K ^S000($P)
 f  u FFILE r X  Q:$ZEOF  D
 .F J1=1:1:$L(X,$C(9)) D
 ..S X1=$P(X,$C(9),J1)
 ..F J2=1:1:$L(X1,$C(10)) D
 ...S X2=$P(X1,$C(10),J2)
 ...S I=I+1,^S000($P,I)=X2
REOF ;
 c FFILE
 N %W1JSP,%TIP S %W1JSP="",%TIP="G"
 D ^%S2ERG
 K %Q  S %Q("Z")="SAVE" D N^%S1ASK I 'YES G END
 O FFILE:(WRITE:NEWVERSION:REWIND)
 U FFILE
 N I F I=1:1 Q:'$D(^S000($P,I))  W ^(I),!
 C FFILE
END K ^S000($P) Q
 ;
VW(FFILE) ;
 K ^TMPS111($J)
 N YES,%Q
 c FFILE
 o FFILE:(readonly:record=2048:rewind)
 S $ZT="g REOFVW"
 N I,X S I=0
 f  u FFILE r X S I=I+1,^TMPS111($J,I)=$TR(X,$C(9)," ")
REOFVW c FFILE
 Q
 
 
 
 

%W1EDIT
%W1EDIT ; [ 06.08.26 09:47 ] [ 03.05.26 10:43 ] [ 29.04.26 14:40 ] 
 N (JB,%ARG,%REM)
 I $L($G(%ARG("TXTPROG"))) ZWR %ARG Q  ;;G SAVE
 ;
 S LABEL=""
 S PRG=$G(%ARG("PROG"))
 I PRG["^" S LABEL=$P(PRG,"^"),PRG=$P(PRG,"^",2)
 S FILE=$$FUNC^%UCASE(PRG)
 S PROG=FILE
 I PROG["/" S PROG=$P(FILE,"/",$L(FILE,"/"))
 I PROG["." S PROG=$P(PROG,".")
 S PROG=$TR(PROG,"%","_")
 ;
 D PUT^%W1PRM("PROG",PROG)
 ;
 I FILE'[".m" S FILE=FILE_".m"
 I FILE'["/" S FILE=$ZDIR_FILE
 D ED(FILE)
 Q
 ;
 ;
ED(FFILE) ;
 D PUT^%W1PRM("PROGFILE",FFILE)
 ;
 N A,ER S A="",ER=0
 I '$$EXIST^%L1ZOS(FFILE) G ED1
 ;
 c FFILE
 o FFILE:(readonly:record=4096:rewind)
 ;
 S ER=0
 f  u FFILE r X  Q:$ZEOF  D
 .I X["&amp;" S ER=1
 .S A=A_X_$C(10)
REOF ;
 c FFILE
 ;
ED1 ;
  W "<div align=""center"" >",!
  ;
  I ER D  W "</div>",! Q
  .W "<p>&nbsp</p>",! 
  .W "<p style=""font-size:"_$$^W3FSZ(16)_""">PROGRAMM HAS [AMP] SYMBOLS - EDITING FORBIDDEN !</p>",!
  ;
  W "<div dir="""_$$^%W1DIR_""">",!
   W $$^%W1DICT("SEARCHLABEL")_" :"
   W $$NBSP^%L1FRM(3) W "<input id=""label"" type=""text"">"
   W $$NBSP^%L1FRM(1) W "<button onClick=""w1procFindLab()"" >"_$$^%W1DICT("SEARCH")_"</button>"
   W $$NBSP^%L1FRM(10)
   W $$^%W1DICT("SEARCHLINENUMBER")_" :"
   W $$NBSP^%L1FRM(3) W "<input id=""lineNum"" type=""text"" onClick=""this.select()"" >"
   W $$NBSP^%L1FRM(1) W "<button onClick=""w1procFindLine()"" >"_$$^%W1DICT("SEARCH")_"</button>"
  W "</div>",!
  ;
  D CHN 
  ;
  S A=$$RPL^%L1FRM(A,"&","&amp;")
  ;;S A=$$RPL^%L1FRM(A,"<","&lt;")
  ;;S A=$$RPL^%L1FRM(A,">","&gt;")
  ;
  W "<textarea cols=""120"" rows=""20"" id=""prog"" name=""TXTPROG"" "
   N HG S HG=18 I $$1700^W4WDSCR S HG=22
   W " style=""line-height:"_HG_"px"
   I $$1700^W4WDSCR W ";font-size:"_$$^W3FSZ(12)
   W """ "
  W ">" 
   W A,!
  W "<" W "/textarea>",!
  W "<p></p>",!
  W "</div>",!
 ;
DIVBTN ;
 W "<table align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td id=""hbr"" width=""20%"">"
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     W "<button onMouseDown=""ShowHebrew()"">"_$$^%W1DICT("SHOWHEBREW")_"</button>",!
   W "</td>" 
   W "<td>"
     W "<button onMouseDown=""InversText()"">"_$$^%W1DICT("INVERSTEXT")_"</button>",!
   W "</td>" 
   W "<td width=""10%"">&nbsp;</td>"
   W "<td>"
    D ^W4SBM
   W "</td>" 
   W "<td>"
    D ^W4BCK 
   W "</td>"
   W "</tr>"
   ;
  W "</table>",!
 Q
 ;
 ;
SAVE ;
 N FILE,TX,I
 S TX=$$CNWEB^%L1FRM(%ARG("TXTPROG"))
 S FILE=$$GETP^%W1PRM("PROGFILE")
 I FILE="" G END
 ;
 O FILE:(WRITE:NEWVERSION:REWIND)
 U FILE
 F I=1:1:$L(TX,"$10$") D
 .S T=$P(TX,"$10$",I)
 .S T=$TR(T,$C(13,10,27,8,9),"")
 .S T=$$CNWEB^%L1FRM(T)
 .W T,!
 C FILE
 ; 
 W "<script>",!
 W " Back()",!
 W "</script>",!
END Q
 ;
 ;
CHN ;
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>"
    W "<td>"
      W $$^%W1DICT("FROM")_" :"
      W $$NBSP^%L1FRM(3) W "<input id=""fromtx"" type=""text"">"
    W "<td>"
    W "<td>"
      W $$^%W1DICT("TO")_" : "
      W $$NBSP^%L1FRM(3) W "<input id=""totx"" type=""text"">"
    W "</td>"
   ;
   W "<td>"
    N TXBOX S TXBOX="prog" 
    I $D(GLED) S TXBOX="glob"
    I $L($G(%ARG("TXBOX"))) S TXBOX=%ARG("TXBOX")
    W "<button onClick=""w1procChangeAll('"_TXBOX_"')"">"_$$^%W1DICT("CHANGEALL")_"</button>",!
   W "</td>"
   ;
   I $G(@$$^W4PRM@("NEWED")) D
   .W "<td>"
   . W "<button onClick=""w1procChangeOneOne('"_TXBOX_"')"">"_$$^%W1DICT("CHANGEONEONE")_"</button>",!
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<div id=""overlay""></div>",!
 W "<div id=""dialog"" style=""display:none"">",!
  W "<div id=""dialogText""></div>",!
  W "  <br>",!
  W " <button id=""okBtn"">Replace</button>",!
  W "  <button id=""skipBtn"">Skip</button>",!
  W " <button id=""cancelBtn"">Cancel</button>",!
 W "</div>",!
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1EDIT0
%W1EDIT ; [ 08.10.25 11:16 ] [ 05.08.25 11:58 ] [ 30.07.25 14:30 ] 
 N (JB,%ARG,%REM)
 I $L($G(%ARG("TXTPROG"))) G SAVE
 ;
 S FILE=$$FUNC^%UCASE($G(%ARG("PROG")))
 S PROG=FILE
 I PROG["/" S PROG=$P(FILE,"/",$L(FILE,"/"))
 I PROG["." S PROG=$P(PROG,".")
 ;
 D PUT^%W1PRM("PROG",PROG)
 ;
 I FILE'[".m" S FILE=FILE_".m"
 I FILE'["/" S FILE=$ZDIR_FILE
 D ED(FILE)
 Q
 ;
 ;
ED(FFILE) ;
 D PUT^%W1PRM("PROGFILE",FFILE)
 ;
 N A S A=""
 I '$$EXIST^%L1ZOS(FFILE) G ED1
 ;
 c FFILE
 o FFILE:(readonly:record=4096:rewind)
 ;
 f  u FFILE r X  Q:$ZEOF  D
 .S A=A_X_$C(10)
REOF ;
 c FFILE
 ;
ED1 ;
 W "<form id=""Form"" action=""w1ed1ed.jsp?JB="_JB_"&PROG="_$G(%ARG("PROG"))_""" method=""post"" >",!
  
  W "<div align=""center"" >",!
  W "<textarea cols=""120"" rows=""24"" id=""prog"" name=""TXTPROG"" "
   N HG S HG=18 I $$1700^W4WDSCR S HG=22
   W " style=""line-height:"_HG_"px"
   I $$1700^W4WDSCR W ";font-size:"_$$^W3FSZ(12)
   W """ "
  W ">" 
   W A,!
  W "</textarea>",!
  W "<p></p>",!
  W "</div>",!
 ;
DIVBTN ;
 W "<table align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td id=""hbr"" width=""20%"">"
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ^W4BTN("SHOWHEBREW","ShowHebrew()")
   W "</td>" 
   W "<td>"
     D ^W4BTN("INVERSTEXT","InversText()")
   W "</td>" 
   W "<td width=""10%"">&nbsp;</td>"
   W "<td>"
    D ^W4SBM
   W "</td>" 
   W "<td>"
    D ^W4BCK 
   W "</td>"
   W "</tr>"
  W "</table>",!
 
  W "</form>",! 
 Q
 ;
 ;
SAVE ;
 N FILE,TX,I
 S TX=$$CNWEB^%L1FRM(%ARG("TXTPROG"))
 S FILE=$$GETP^%W1PRM("PROGFILE")
 I FILE="" G END
 ;
 O FILE:(WRITE:NEWVERSION:REWIND)
 U FILE
 F I=1:1:$L(TX,"$10$") D
 .S T=$P(TX,"$10$",I)
 .S T=$TR(T,$C(13,10,27,8,9),"")
 .S T=$$CNWEB^%L1FRM(T)
 .W T,!
 C FILE
 ; 
 W "<script>",!
 W " Back()",!
 W "</script>",!
END Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1EDJS
%W1EDJS ; [ 03.05.26 10:44 ] [ 21.04.26 11:29 ] [ 15.04.26 20:12 ] 
 N (JB,%ARG,%REM)
 I $L($G(%ARG("TXTPROG"))) ZWR %ARG Q  ;;G SAVE
 ;
 S FILE=$$FUNC^%LCASE($G(%ARG("PROG")))
 S PROG=FILE
 I PROG["/" S PROG=$P(FILE,"/",$L(FILE,"/"))
 I PROG["." S PROG=$P(PROG,".")
 S PROG=$TR(PROG,"%","_")
 ;
 D PUT^%W1PRM("PROG",PROG)
 ;
 I FILE'["." S FILE=FILE_".jsp"
 N PATH S PATH=$$PATHJSP^%L1WEBJS
 I $E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 I FILE'["/" S FILE=PATH_FILE
 D ED(FILE)
 Q
 ;
 ;
ED(FFILE) ;
 D PUT^%W1PRM("PROGFILE",FFILE)
 ;
 N A,ER S A="",ER=0
 I '$$EXIST^%L1ZOS(FFILE) G ED1
 ;
 c FFILE
 o FFILE:(readonly:record=4096:rewind)
 ;
 f  u FFILE r X  Q:$ZEOF  D
 .I X["&amp;" S ER=1
 .S A=A_X_$C(10)
REOF ;
 c FFILE
 ;
ED1 ;
  W "<div align=""center"" >",!
  ;
  I ER D  W "</div>",! Q
  .W "<p>&nbsp</p>",! 
  .W "<p style=""font-size:"_$$^W3FSZ(16)_""">PROGRAMM HAS [AMP] SYMBOLS - EDITING FORBIDDEN !</p>",!
  ;
  D CHN 
  ;
  S A=$$RPL^%L1FRM(A,"&","&amp;")
  ;
  W "<textarea cols=""120"" rows=""20"" id=""prog"" name=""TXTPROG"" "
   N HG S HG=18 I $$1700^W4WDSCR S HG=22
   W " style=""line-height:"_HG_"px"
   I $$1700^W4WDSCR W ";font-size:"_$$^W3FSZ(12)
   W """ "
  W ">" 
   W A,!
  W "<" W "/textarea>",!
  W "<p></p>",!
  W "</div>",!
 ;
DIVBTN ;
 D DIVBTN^%W1EDIT
 Q
 ;
 ;
SAVE ;
 N FILE,TX,I
 S TX=$$CNWEB^%L1FRM(%ARG("TXTPROG"))
 S FILE=$$GETP^%W1PRM("PROGFILE")
 I FILE="" G END
 ;
 O FILE:(WRITE:NEWVERSION:REWIND)
 U FILE
 F I=1:1:$L(TX,"$10$") D
 .S T=$P(TX,"$10$",I)
 .S T=$TR(T,$C(13,10,27,8,9),"")
 .S T=$$CNWEB^%L1FRM(T)
 .W T,!
 C FILE
 ; 
 W "<script>",!
 W " Back()",!
 W "</script>",!
END Q
 ;
 ;
CHN ;
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>"
    W "<td>"
      W $$^%W1DICT("FROM")_" :"
      W $$NBSP^%L1FRM(3) W "<input id=""fromtx"" type=""text"">"
    W "<td>"
    W "<td>"
      W $$^%W1DICT("TO")_" : "
      W $$NBSP^%L1FRM(3) W "<input id=""totx"" type=""text"">"
    W "</td>"
   ;
   W "<td>"
    W "<button onClick=""w1procChangeAll()"">"_$$^%W1DICT("CHANGEALL")_"</button>",!
   W "</td>"
   ;
   W "<td>"
    W "<button onClick=""w1procChangeOneOne()"">"_$$^%W1DICT("CHANGEONEONE")_"</button>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<div id=""overlay""></div>",!
 W "<div id=""dialog"">",!
 W "<div id=""dialogText""></div>",!
 W "  <br>",!
 W " <button id=""okBtn"">Replace</button>",!
 W "  <button id=""skipBtn"">Skip</button>",!
 W " <button id=""cancelBtn"">Cancel</button>",!
 W "</div>",!
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1EDLD
%W1EDLD ; [ 29.04.26 13:43 ] [ 28.04.26 17:20 ] [ 15.04.26 20:10 ] 
 N (JB,%ARG,%REM)
 ;
 S FILE=$$FUNC^%UCASE($G(%ARG("PROG")))
 S PROG=FILE
 I PROG["/" S PROG=$P(FILE,"/",$L(FILE,"/"))
 I PROG["." S PROG=$P(PROG,".")
 S PROG=$TR(PROG,"%","_")
 ;
 D PUT^%W1PRM("PROG",PROG)
 ;
 I FILE'[".m" S FILE=FILE_".m"
 I FILE'["/" S FILE=$ZDIR_FILE
 D ED(FILE)
 Q
 ;
 ;
ED(FFILE) ;
 D PUT^%W1PRM("PROGFILE",FFILE)
 ;
 N A S A=""
 I '$$EXIST^%L1ZOS(FFILE) G END
 ;
 c FFILE
 o FFILE:(readonly:record=4096:rewind)
 ;
 f  u FFILE r X  Q:$ZEOF  D
 .U 0 W X,!
REOF ;
 c FFILE
 ;
END ;
 Q
 
 
 
 

%W1ENCRL
%W1ENCRL(PRM) ; [ 29.06.16 18:14 ] [ 27.06.15 14:31 ] [ 27.11.14 15:00 ] 
 N ENCR,I,SMB S ENCR=""
 F I=1:1:$L(PRM) D
 .;S SMB=$TR($J($A(PRM,I)-11,3)," ",0)
 .S ENCR=ENCR_$C($A(PRM,I)+1)
 Q ENCR
 ;
DCR(PRM) ;
 N I,SMB,DCR S DCR=""
 F I=1:1:$L(PRM) D
 .S SMB=$C($A(PRM,I)-1)
 .S DCR=DCR_SMB
 ;
 S DCR=$$RPL^%L1FRM(DCR,"$15","%")
 S DCR=$$RPL^%L1FRM(DCR,"$2@","9")
 S DCR=$$RPL^%L1FRM(DCR,"$4A","Z")
 S DCR=$$RPL^%L1FRM(DCR,"$6A","z")
 S DCR=$$RPL^%L1FRM(DCR,"$4a","Z")
 S DCR=$$RPL^%L1FRM(DCR,"$6a","z")
 ;
 Q DCR
 

%W1ENG
%W1ENG() ; [ 02.11.23 07:48 ] [ 
 I $$^%W1LNG="E",'$D(NOPCLOAZ) Q 1
 Q 0

%W1ENTCN
%W1ENTCN(SITE,HRF) ; [ 02.01.08 10:29 ] [
 I $G(SITE)="" Q
 I $G(HRF)="" Q
 N GL S GL="^[$$^W3MAIN]W1ENTCN("""_SITE_""")"
 S @GL=$G(@GL)+1
 S @GL@(HRF)=$G(@GL@(HRF))+1
 S @GL@(HRF,$P($H,",")_$TR($J($P($H,",",2),5)," ",0))=$ZD($H,"DD/MM/YY  24:60")
 Q

%W1FRBE0
%W1FRBEX(COD) ; [ 20.11.11 08:11 ] [ 19.11.11 21:09 ] [
 N (JB,%ARG,%REM,COD)
 D ^%L1TS
 D TMPREP^%W1FREP
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_COD_JB
 I $G(TOT) S FL=FL_"S"
 S FLCSV=FL_".txt"
 N A,B,I,J,RZD
 C FLCSV:(DELETE)
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 K MRKV S PRG=0,BEGG=0,ENDG=0,MC=""
 D STRG^%W1FREPB(COD)
 N GREP S GREP="^[$$^W3MAIN]W4REP"
 S LNG=$$^%W1LNG S:LNG="" LNG="H"
 ;
 S B=""
 F J=1:1 Q:'$D(@GREP@(COD,"REP",LNG,J))  D
 .N A S A=$G(^(J))
 .S ZN=$P(A,";",2)
 .S ZN=$$SPA^%L1FRM(ZN)
 .S B=B_$TR($$INVH^%L1FRM(ZN),TS0,TS1)_$C(9)
 ;
 S B=$E(B,1,$L(B)-1) Q:B=""
 ;;U 0 W B,! H 1
 U FLCSV W B,!
 ;
 S BG="",RZD="\"
 F  S BG=$O(@$$^W4MAIN("S4B")@(BG)) Q:BG=""  Q:BG>90000  D
 .S B=""
 .N A S A=$G(^(BG))
 .N J,F S J=0,F=0
 .N N S N="" F  S N=$O(MRKV("G",N)) Q:N=""  D
 ..S J=J+1
 ..N MCF S MCF=$$SPA^%L1FRM($G(MRKV("G",N)))
 ..N FLD S FLD=0
 ..I $G(MRKV("G",N,"FLD")) S FLD=1
 ..I FLD S F=F+1
 ..I FLD D
 ...N ZN S ZN=$TR($$INVH^%L1FRM($$SPA^%L1FRM($P(A,RZD,F))),TS0,TS1)
 ...I $L(MCF),MCF["9",MCF["." D
 ....S DR=$L($P(MCF,".",2))
 ....S ZN=$J(ZN,DR,DR)
 ....S B=B_ZN_$C(9)
 .S B=$E(B,1,$L(B)-1)
 .;;U 0 W B,! H 1 ;
 .U FLCSV W B,!
 ;
 C FLCSV
 ;
 ZSY "unix2dos "_FLCSV
 ZSY "zip -j "_FL_" "_FLCSV
 Q
 ;
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
KAVSIK(A)
 I A?1"=="."="1"*"1"=".E,A?.P Q 1
 Q 0

%W1FRBEX
%W1FRBEX(COD,FMT) ; [ 03.02.18 04:45 ] [ 13.05.14 11:59 ] [ 28.10.12 07:58 ] 
 N (JB,%ARG,%REM,COD,FMT)
 N $ZT S $ZT="G ER"
 D ^%L1TS S FMT=$G(FMT)
 D TMPREP^%W1FREP
 S FL=$$FL^%W1FREPX(COD,FMT)
 I $G(TOT) S FL=FL_"S"
 S FLCSV=FL_"."_$$FMT^%W1PCEX(FMT)
 S MAXHD=79
 S CODS=COD_"s"
 S GLHD=$$BG^W4SHP_"CODS)"
 ;
 N A,B,I,J,RZD
 C FLCSV:(DELETE)
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 K MRKV S PRG=0,BEGG=0,ENDG=0,MC=""
 ;
 F I=1:1 Q:'$D(@GLHD@(I))  D
 .N A S A=$G(^(I)) S B=""
 .D STR^%W1FREPB(I)
 .S RKV="" F  S RKV=$O(MRKV(I,RKV)) Q:RKV=""  D
 ..S ZN=$G(MRKV(I,RKV))
 ..I $G(MRKV(I,RKV,"FLD")) D
 ...S ZN=$G(@TMPREP@("P",+ZN))
 ..S B=B_$$RKV^%W1PCEX(ZN,FMT)
 .S B=$E(B,1,$L(B)-1) Q:B=""
 .U FLCSV W B,!
 .
 ;
 D STRG^%W1FREPB(COD)
 N GREP S GREP="^[$$^W3MAIN]W4REP"
 S LNG=$$^%W1LNG S:LNG="" LNG="H"
 ;
 S B=""
 F J=1:1 Q:'$D(@GREP@(COD,"REP",LNG,J))  D
 .N A S A=$G(^(J))
 .S ZN=$P(A,";",2)
 .S ZN=$$SPA^%L1FRM(ZN)
 .S B=B_$$RKV^%W1PCEX(ZN,FMT)
 ;
 S B=$E(B,1,$L(B)-1) Q:B=""
 ;;U 0 W B,! H 1
 U FLCSV W B,!
 ;
 S BG="",RZD="\"
 F  S BG=$O(@$$^W4MAIN("S4B")@(BG)) Q:BG=""  Q:BG>90000  D
 .S B=""
 .N A S A=$G(^(BG))
 .N J,F S J=0,F=0
 .F F=1:1:$L(A,RZD)  D
 ..S ZN=$P(A,RZD,F)
 ..S B=B_$$RKV^%W1PCEX(ZN,FMT)
 .S B=$E(B,1,$L(B)-1)
 .;;U 0 W B,! H 1 ;
 .U FLCSV W B,!
 ;
 C FLCSV
 ;
 ;ZSY "unix2dos "_FLCSV
 ;ZSY "zip -j "_FL_" "_FLCSV
END ;
 Q
 ;
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
KAVSIK(A)
 I A?1"=="."="1"*"1"=".E,A?.P Q 1
 Q 0
 ;
ER ;
 D SVER^%L1X
 G END
 

%W1FREP
%W1FREP(COD) ; [ 24.02.26 04:25 ] [ 02.11.25 12:53 ] [ 31.08.25 14:04 ] 
 ; -------------------- PARAMETERS FROM GLOBAL ^W4REPSCR
 N (JB,%ARG,%REM,COD)
 N MAX,MRKV,%PGNMB
 S PRINT=+$$GETP^%W1PRM("PRINTREPBACK")
 S %PGNMB=0
 D TMPREP
 ;
 I $$GETP^%W1PRM("CURSORT")="" D
 .D TMPREPB
 .K @TMPREPB
 .M @TMPREPB=@TMPREP
 ;
 D INIT
 ;
 N TYPREP
 S TYPREP=$$TYPREP(COD)
 ;
 D GLHD(COD)
 D GETMRKV(COD) ; --> MRKV,GI,BEGG,ENDG
 ;
 I '$G(%ARG("NOEXCEL")) D
 .I $E(COD,1,5)="W4TOT" S %ARG("REPS")=1
 .D DIVEXC^%W1PC1(COD,"%W1FREPX")
 ;
 I $D(@TMPREP@("KOT")) D
 .W ^("KOT") ;;_"<br>" ;; *** LEV 14/01/17
 ;
 S MAXG1=MAXG0-BEGG ; -- MAX KOL CTROK V GR TBL
PC W "<div align=""center"">",!
 D FSZ
 S %PGNMB=%PGNMB+1
 S MAXG=$S(%PGNMB=1:MAXG1-7,1:MAXG1)
 S @TMPREP@("P",98)=%PGNMB
 W "<table id=""TblRep"" dir="""_$$^%W1DIR_""" border=""0"" width=""98%"" "
  W " style="""
  I $G(%ARG("PADDING")) W " cellpadding:"_%ARG("PADDING")_";"
  W "color:black;font-size:"_$$^W3FSZ(FSZ)_""""
 W ">",!
 W "<tr><td>" D TBL1
 ;
 N PRKAV,ST,PRM,PRVHD
 S PRKAV=0,PRVHD=1 K MWD
 S ST="" F  S ST=$O(MRKV(ST)) Q:ST=""  Q:BEGG&(ST'<BEGG)  D SHAP(ST)
 ;
 I GI D
 .S RZD="\"
 .;;ZWR MWD
 .;;ZWR MRKV("G")
 .
 .S K=0 F  S BG=$O(@TMPREP@("G",BG)) Q:BG=""  S K=K+1 Q:K>GI  Q:K>MAXG  D
 ..N A S A=$G(^(BG))
 ..W "<tr "
 ..I '(K#2) W " bgcolor='#F2F2F2' "
 ..I $D(@TMPREP@("GTR")) X ^("GTR")
 ..W ">"
 ..N J,F S J=0,F=0
 ..N PRM S PRM=MRKV("G")
 ..S N="" F  S N=$O(MRKV("G",N)) Q:N=""  D
 ...S J=J+1
 ...N MCF S MCF=$$SPA^%L1FRM($G(MRKV("G",N)))
 ...N FLD S FLD=0
 ...I $G(MRKV("G",N,"FLD")) S FLD=1
 ...I FLD S F=F+1
 ...N WD S WD=$J($P(PRM,",",J)/MAX*100,0,0)_"%"
 ...I $D(MWD(J)) S WD=MWD(J)_"%"
 ...W "<td width="""_WD_""""
 ...I $L(MCF),MCF["9"!(MCF["E") W " dir=""LTR"" align=""right"""
 ...I F,$D(@TMPREP@("GTD",F)) X ^(F)
 ... W " onMouseDown=""CurrentBorder(this)"" "
 ...W ">"
 ...W "&nbsp;"
 ...I FLD D
 ....N ZN S ZN=$$H2U^%L1FRM($P(A,RZD,F))
 ....D SHOWZN(ZN,$G(MCF))
 ...W "</td>"
 ..W "<td width="""_$G(MWD($O(MWD(999),-1)))_"%"">&nbsp;</td>"
 ..W "</tr>",!
 .W "</table>",!,"</td>",!,"</tr>",!
 .
 .I $D(MRKV(ENDG+1)) D
 ..W "<tr><td>"
 ..I BG="" D
 ...D TBL1
 ...S ST=ENDG F  S ST=$O(MRKV(ST)) Q:ST=""  D SHAP(ST)
 ;
 W "</table></div>",!
 ;;I $G(PRINT) W "<hr>",!
 ;
 I BG'="",GI D  S BG=BG-1 G PC
 .N BG1 S BG1=$O(MRKV(9999),-1)
 .I ENDG S BG1=ENDG
 .I '$G(%ARG("NONEXTPG")) D
 ..W $$^%W1DICT("CONTINUENEXTPAGE"),!
 .D PAGEBREAK
 .;;F I=BG1+3:1:44 W "<br />"
 Q
 ;
 ;
GETMRKV(COD)
 D INIT
 D TMPREP
 N GLHD,I,MC,PRG,A
 ;
 D GLHD(COD)
 ;
 K MRKV S PRG=0,BEGG=0,ENDG=0,MC="",GI=0
 ;
 F I=1:1 Q:'$D(@GLHD@(I))  D
 .S A=$G(^(I))
 .I A["$" S PRG=1-PRG D
 ..I PRG S BEGG=I,MC=A D STRG(A) D  Q
 ...N N S N="" F  S N=$O(MRKV("G",N)) Q:N=""  D
 ....N L S L=$L($G(MRKV("G",N)))
 ....S MRKV("G")=$G(MRKV("G"))_L_","
 ...D GETMRKVGN(COD,I)
 ...
 ..I 'PRG S GI=I-BEGG+1,ENDG=I+1
 .
 .I PRG Q
 .;
 .D STR(I)
 .
 .N N S N="" F  S N=$O(MRKV(I,N)) Q:N=""  D
 ..N L S L=$L($G(MRKV(I,N)))
 ..I $G(MRKV(I,N,"FLD")) S L=L+2
 ..I $G(MRKV(I,N,"BIG")) S L=L*2
 ..S MRKV(I)=$G(MRKV(I))_L_","
 .I $D(@TMPREP@("M",I))#2 S MRKV(I)=^(I)
 Q
 ;
 ;
GETMRKVGN(COD,I)
 K MRKVGN
 N ST,NM D GLHD(COD)
 N I2 S I2=0
 N I1 F I1=I-2:-1:1 Q:'$D(@GLHD@(I1))  Q:$$SPA^%L1FRM($G(@GLHD@(I1)))?1"-"."-"
 I $$SPA^%L1FRM($G(@GLHD@(I1)))?1"-"."-" D
 .F I3=I1+1:1 Q:'$D(@GLHD@(I3))  Q:$$SPA^%L1FRM($G(@GLHD@(I3)))?1"-"."-"  D
 ..S ST=$G(@GLHD@(I3))
 ..N K S K=0
 ..N J S I2=I2+1
 ..I $$TYPREP(COD)'="H" F J=2:1:$L(ST,"|")-1 S K=K+1 D GETNM(ST,J,K,I2)
 ..I $$TYPREP(COD)="H" F J=$L(ST,"|")-1:-1:2 S K=K+1 D GETNM(ST,J,K,I2)
 ;
 I $$TYPREP(COD)="H" D
 .S K="" F  S K=$O(NM(K)) Q:K=""  D
 ..S I2="" F  S I2=$O(NM(K,I2)) Q:I2=""  D
 ...S NM(K)=NM(K,I2)_" "_$G(NM(K))
 ..S NM(K)=$$SPA^%L1FRM($$SP1^%L1FRM($G(NM(K))))
 ..S MRKVGN(K)=NM(K)
 ;
 I $$TYPREP(COD)'="H" D
 .S K="" F  S K=$O(NM(K)) Q:K=""  D
 ..S I2="" F  S I2=$O(NM(K,I2)) Q:I2=""  D
 ...S NM(K)=$G(NM(K))_" "_$G(NM(K,I2))
 ..S NM(K)=$$SPA^%L1FRM($$SP1^%L1FRM($G(NM(K))))
 ..S MRKVGN(K)=NM(K)
 ;
 Q
 ;
GETNM(ST,J,K,I2) ;
 S NM(K,I2)=$$SPA^%L1FRM($P(ST,"|",J))
 Q
 ;
SHAP(ST) ;
 Q:'ST
 D TMPREP
 S PRM=MRKV(ST)
 ;;W "PRM="_PRM
 I $$KAV(ST) S PRKAV=1-PRKAV,PRVHD=0 Q
 ;;I $G(PRINT) W "<hr>",!
 W "<tr"
 W ">" D  W "</tr>",! ;;I $G(PRINT) W "<hr>",!
 .S J=0
 .S RKV="" F  S RKV=$O(MRKV(ST,RKV)) Q:RKV=""  D
 ..S J=J+1
 ..N BIG S BIG=0 I $G(MRKV(ST,RKV,"BIG")) S BIG=1
 ..N FLD S FLD=0
 ..I $G(MRKV(ST,RKV,"FLD")) S FLD=MRKV(ST,RKV,"FLD") ; RKV LENGTH
 ..N WD
 ..S WD=$J($P(PRM,",",J)/MAX*100,0,0)
 ..I $G(@GLHD@(ST))["|" S MWD(J)=WD
 ..I $G(@GLHD@(ST))'["|",WD>50 S WD=WD\4
 ..W "<td width="""_WD_"%"""
 ..I PRKAV,$G(MRKV(ST,RKV,"PRVERT")) D HDSTYLE
 ..I BIG,'FLD W " align=""center"""
 ..E  W " align=""right"""
 ..I FLD D
 ...S ZN=$$SPA^%L1FRM(MRKV(ST,RKV))
 ...S TYP=$G(@TMPREP@("P",+ZN,"TYP"))
 ...I TYP="N" W " dir=""LTR"" align=""right"""
 ..W " >"
 ..D
 ...N ZN,TYP S TYP="" S ZN=$G(MRKV(ST,RKV))
 ...I BIG!FLD S ZN=$$SPA^%L1FRM(ZN)
 ...I FLD D
 ....S TYP=$G(@TMPREP@("P",+ZN,"TYP"))
 ....S ZN=$G(@TMPREP@("P",+ZN))
 ....;;S ZN=$$HBR^%L1FRM(ZN,FLD) ; -- FLD - RKV LENGTH
 ...W "<span style="""
 ...I 'PRKAV D
 ....W "color:"_$S('$$SPA^%L1FRM(ZN)&(TYP="N"):"grey",FLD&(TYP="N")&(ZN["-"):"red",1:"black")
 ...I PRKAV W "color:white"
 ...I BIG W ";font-size:"_$$^W3FSZ(12)
 ...I FLD,PRVHD!(ENDG&(ST>ENDG)) W ";font-weight:bold"
 ...W """>"
 ...I TYP="N",ZN["." S ZN=$$ZPT^%L1FRM(ZN)
 ...W $$H2U^%L1FRM(ZN)
 ..W "</span>"
 ..W "</td>"
 ;
 I MRKV(ST)'=$G(MRKV(ST+1)) D
 .W "</table></td></tr>",!
 .I $D(@GLHD@(ST+1)) W "<tr><td>" D TBL1
 ;
 Q
 ;
STR(I) ;
 N A,J,NRKV,FLD,BTW
 S A=$G(@GLHD@(I))
 S NRKV=1,J=MAX+1,FLD=0,PRSP=1,BIG=0,PRKAV=0,PRVERT=0
CYC S J=J-1 Q:J<1
 S BTW=$$BETWEEN(A,J,"|")
 I $E(A,J)=">" S:'BTW NRKV=NRKV+1 S FLD=$$FLDLEN(A,J),PRSP=0,PRKAV=0 G CYC
 I $E(A,J)="&" S:'BTW NRKV=NRKV+1,FLD=0 S PRSP=$S(PRVERT:0,1:1),PRKAV=0 G CYC
 I $E(A,J)="|" S NRKV=NRKV+1,FLD=0,PRSP=0,PRKAV=0 G CYC
 I $E(A,J)="#" S NRKV=NRKV+1,BIG=1-BIG S PRSP=0,PRKAV=0 G CYC
 I $E(A,J)="-",$TR(A,"- ","")="",PRSP S NRKV=NRKV+1,PRSP=0,PRKAV=1
 I $E(A,J)'=" ",PRSP S NRKV=NRKV+1,PRSP=0 I $E(A,J)'="-" S PRKAV=0
 I $E(A,J)=" ",PRKAV S NRKV=NRKV+1,PRKAV=0
 ;
 ;;I PRVERT,$E(A,J)'?1N S PRVERT=0
 ;
 S MRKV(I,NRKV)=$E(A,J)_$G(MRKV(I,NRKV))
 ;
 I '$G(MRKV(I,NRKV,"FLD")) S MRKV(I,NRKV,"FLD")=FLD
 I '$G(MRKV(I,NRKV,"BIG")) S MRKV(I,NRKV,"BIG")=BIG
 I '$G(MRKV(I,NRKV,"PRKAV")) S MRKV(I,NRKV,"PRKAV")=PRKAV
 ;
 I '$G(MRKV(I,NRKV,"PRVERT")) S MRKV(I,NRKV,"PRVERT")=BTW
 ;
 G CYC
 ;
 ;
FLDLEN(A,J)
 N J1,K S K=0 F J1=J:-1:1 S K=K+1 Q:$E(A,J1)="&"
 I $E(A,J1,J1+1)'?1"&"1N S K=0
 Q K
 ;
TBL1 ;
 W " <table border=""0"" cellspacing=""1"" "
 W "style=""width:100%;table-layout:fixed;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(FSZ)_""">"
 Q
 ;
KAV(ST) ;
 N N S N=""
 N PRKAV S PRKAV=0
 F  S N=$O(MRKV(ST,N)) Q:N=""  D
 .I $TR(MRKV(ST,N)," ","")?1"-"."-",'PRKAV S PRKAV=1 Q
 .I $TR(MRKV(ST,N)," ","")'?1"-"."-",$TR(MRKV(ST,N)," ","")'="" S PRKAV=-1
 I PRKAV<1 S PRKAV=0
 Q PRKAV
 ;
NOSPACE(ST,RKV) ;
 I $TR($G(MRKV(ST,RKV))," ","")'="" Q 1
 N NRKV S NRKV=$O(MRKV(ST,RKV))
 N PRKV S PRKV=$O(MRKV(ST,RKV),-1)
 I NRKV,$TR($G(MRKV(ST,NRKV))," ","")'="",PRKV,$TR($G(MRKV(ST,PRKV))," ","")'="" Q 1
 Q 0
 ;
HDSTYLE ;
 S BCL=$$BGHD^W3CSS("DRW")
 W " style=""background-color:"_BCL_";text-align:center;color:white;font-weight:bold;font-size:"_$$^W3FSZ(FSZ)_""""
 Q
 ;
STRG(A) ;
 N J,NRKV S J=MAX+1
 S NRKV=0
STRGC S J=J-1 Q:J<1
 I $E(A,J)=":" S NRKV=NRKV+1 G STRGC
 I $E(A,J)="$" G STRGC
 S MRKV("G",NRKV)=$E(A,J)_$G(MRKV("G",NRKV))
 I $$BETWEEN(A,J,":") S MRKV("G",NRKV,"FLD")=1
 I $$BETWEEN1(A,J,"$",":") S MRKV("G",NRKV,"FLD")=1
 G STRGC
 ;
BETWEEN(A,J,RZD) ;
 N PR S PR=0
 N K F K=J-1:-1:1 I $E(A,K)=RZD S PR=1 Q
 N K1 F K1=J+1:1:$L(A) I $E(A,K1)=RZD S PR=PR+1 Q
 I PR=2 Q 1
 Q 0
 ;
BETWEEN1(A,J,RZD1,RZD2) ;
 N PR S PR=0
 N K F K=J-1:-1:1 I $E(A,K)=RZD1 S PR=1 Q
 N K1 F K1=J+1:1:$L(A) I $E(A,K1)=RZD2 S PR=PR+1 Q
 I PR=2 Q 1
 Q 0
 ;
SELSORT ;
 N (JB,%ARG,%REM)
 N COD S COD=$$GET^%W1PRM("REPN") Q:COD=""  Q:COD["UNDEF"
 N SCR S SCR=COD
 I $D(@$$^W4REPSCR@(COD)) S SCR=$$SCR^W4REPSCR(COD)
 D TMPREP
 N CURSORT S CURSORT=+$$GET^%W1PRM("CURSORT")
 ;
 I $D(^[$$^W3MAIN]W4REP(COD))=11 D  G SELSORT1
 .N LNG S LNG=$$^%W1LNG I LNG="" S LNG="H"
 .N N S N="" F  S N=$O(^[$$^W3MAIN]W4REP(COD,"REP",LNG,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..S MRKVGN(N)=$P(A,";",2)
 ;
 D GETMRKV(SCR)
 ;
 I $D(MRKVGN)<10 Q
 ;
SELSORT1 ;
 W "<select id=""sort"" onChange=""SwitchSort()"" >",!
 W "<option value=""0"">"_$$^%W1DICT("BASICSORT")_"</option>",!
 N N S N="" F  S N=$O(MRKVGN(N)) Q:N=""  D
 .W "<option value="""_N_""""_$S(N=CURSORT:" selected=""selected"" ",1:"")_" >"_$$H2U^%L1FRM(MRKVGN(N))_"</option>",!
 W "</select>",!
 Q
 ;
ASCDESC ;
 N CURAD S CURAD=$P($$GET^%W1PRM("CURSORT"),"~",2)
 W "<select id=""ascdesc"" onChange=""ChangeSort()"">",!
 W " <option value=""0"" "_$S('CURAD:" selected=""selected"" ",1:"")_" >"_$$^%W1DICT("ASCENDING")_"</option>",!
 W " <option value=""1"" "_$S(CURAD:" selected=""selected"" ",1:"")_" >"_$$^%W1DICT("DESCENDING")_"</option>",!
 W "</select>",!
 Q
 ;
SORT(COD,NOM) ;
 N K,N,A,SH,SORTVL,MG,BEGG,END
 D TMPREP,TMPREPB,VRM
 K @VRM
 N AD S AD=$P(NOM,"~",2)
 S NOM=+NOM
 I 'NOM D  Q
 .I '$D(@TMPREPB) Q
 .K @TMPREP
 .M @TMPREP=@TMPREPB
 ;
 S RZD=$$RZD
 ;
 D GETMRKV(COD)
 ;
 N SCR S SCR=$$SCR^W4REPSCR(COD)
 S F=0
 S N="" F  S N=$O(MRKV("G",N)) Q:N=""  D
 .I $G(MRKV("G",N,"FLD")) D
 ..S F=F+1
 ..S MG(F)=$$SPA^%L1FRM(MRKV("G",N))
 ;
 ;;M ^AA("W1FREP","MG0")=MG
 I '$D(MG(NOM)) Q
 ;
 I MG(NOM)?1"T"."T" D
 .S MG(NOM,"L")=$L(MG(NOM))
 .S MG(NOM,"T")="TX"
 .I $G(@$$^W4SCR@(COD,"G",NOM,"TYP"))'="" D
 ..S MG(NOM,"T")=^("TYP")
 ..S MG(NOM,"L")=$G(@$$^W4SCR@(COD,"G",NOM,"LMAX"))
 ;
 I MG(NOM)?1"9"."9" D
 .S MG(NOM,"L")=$L(MG(NOM))
 .S MG(NOM,"T")="9"
 .S MG(NOM,"DR")="0"
 ;
 I MG(NOM)?1"9"."9"1".9"."9" D
 .S MG(NOM,"L")=$L(MG(NOM))
 .S MG(NOM,"T")="9"
 .S MG(NOM,"DR")=$L($P(MG(NOM),".",2))
 ;
 N TYP S TYP=$G(@$$^W4SCR@(COD,"G",NOM,"TYP"))
 I TYP="D" S MG(NOM,"T")="D",MG(NOM,"L")=8 K MG(NOM,"DR")
 ;
 S MG(NOM,"L")=$G(@$$^W4SCR@(COD,"G",NOM,"LMAX"))
 ;
 S K=0,SH="" F  S SH=$O(@TMPREP@("G",SH)) Q:SH=""  S K=K+1  D
 .;;W "SH="_SH,!
 .N A S A=$G(^(SH))
 .S SORTVL=$P(A,RZD,NOM)
 .I SORTVL="" S SORTVL="-"
 .I MG(NOM,"T")="TX" D
 ..S SORTVL=$$ENG^%L1FRM($S($$^%W1DIR="RTL":$$INV^%L1FRM(SORTVL),1:SORTVL),MG(NOM,"L"))
 ..D SORTVLI
 .I MG(NOM,"T")="E"!(MG(NOM,"T")="T") D
 ..S SORTVL=$TR(SORTVL,"-:","")
 ..S SORTVL=$$ENG^%L1FRM(SORTVL,MG(NOM,"L"))
 ..D SORTVLI
 .I MG(NOM,"T")="H" D
 ..S SORTVL=$$ENG^%L1FRM($$INV^%L1FRM(SORTVL),MG(NOM,"L"))
 ..D SORTVLI
 .I MG(NOM,"T")="D" D
 ..S SORTVL=$$^%L1DC(SORTVL,3)
 ..D SORTVLI
 .I MG(NOM,"T")="9",MG(NOM,"DR")=0 D
 ..;S SORTVL=$$HBR^%L1FRM(SORTVL,MG(NOM,"L"))
 ..S SORTVL=+SORTVL
 ..D SORTVLIN
 .I MG(NOM,"T")="9",MG(NOM,"DR") D
 ..S SORTVL=$J(SORTVL,MG(NOM,"DR"),MG(NOM,"DR"))
 ..I SORTVL=0 S SORTVL=""
 ..D SORTVLIN
 .S @VRM@(SORTVL)=A
 ;
 K @TMPREP@("G")
 S SH=0
 S AD=$S(AD:-1,1:1)
 ;
 S N="" F  S N=$O(@VRM@(N),AD) Q:N=""  D
 .S A=$G(^(N))
 .S SH=SH+1
 .S @TMPREP@("G",SH)=A
 K @VRM
 ;
 ;;M ^AA("W1FREP","MG")=MG
 Q
 ;
SORTVLI ;
 ;;W "  SORTVLI",!
 N J
 F J=1:1 Q:'$D(@VRM@(" "_$TR(SORTVL,"-","")_$TR($J(J,4)," ",0)))
 S SORTVL=" "_$TR(SORTVL,"-","")_$TR($J(J,4)," ",0)
 ;;W "  ENDSORTVLI",!
 Q
 ;
SORTVLIN ;
 ;;W "  SORTVLIN",!
 N J
 N BG S BG=15*(10**16)
 ;
 S BG=BG+$TR($J(SORTVL,2,2),".","")
 ;;F J=BG:1 Q:'$D(@VRM@(BG+J*.0001))
 ;;S SORTVL=BG+(J*.0001)
 S SORTVL="0"_BG_$TR($J(SH,5)," ",0)
 ;;W "  ENDSORTVLIN",!
 Q
 ;
INIT ;
 S MAX=79,MAXG0=45,BG=""
 D FSZ
 Q
 ;
FSZ S FSZ=10 Q
 ;
RZD(STAM) Q "\"
 ;
GLHD(COD) ;
 S GLHD=$$BG^W4SHP_""""_COD_"s"")"
 Q
 ;
TMPREP ;
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
TMPREPB ;
 S TMPREPB=$$^W4MAIN("TMPREPB")
 Q
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
TYPREP(COD) ;
 Q $G(@$$^W4SCR@(COD))
 ;
PAGEBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
 ;
SHOWZN(ZN,MCF) ;
 N PRBOLD S PRBOLD=0
 I $L(MCF),MCF["9",MCF["." D
 .I $E(ZN,1,3)="<B>" S ZN=$P(ZN,"<B>",2) S PRBOLD=1
 .I ZN["[" Q
 .S DR=$L($P(MCF,".",2))
 .S ZN=$J(ZN,DR,DR)
 .S ZN=$$ZPT^%L1FRM(ZN) ; --- LEV 08/02/18
 .I 'ZN S ZN="&nbsp;"
 ;
 D
 .I $TR(ZN,"[] ","")<0 W "<span style=""color:red"_$S(PRBOLD:";font-weight:bold",1:"")_""">&nbsp;"_ZN_"&nbsp;</span>" Q
 .I PRBOLD W "<span style=""font-weight:bold;font-size:"_$$^W3FSZ(11)_""">&nbsp;"_ZN_"&nbsp;</span>" Q
 .W "&nbsp;"_ZN_"&nbsp;"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1FREPA
%W1FREPA(COD,SBMBCK) ; [ 01.07.26 11:19 ] [ 28.06.26 14:30 ] [ 04.06.26 09:49 ] 
 N (JB,%ARG,%REM,COD,SBMBCK)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(%ARG("VWPRM")) S VWPRM=""
 ;
 D PUT^%W3DEB("W1FREPA","COD=COD")
 S %ARG("SRCH")=$$CNWEB^%L1FRM($G(%ARG("SRCH")))
 N SRCH S SRCH=$$INVH^%L1FRM($G(%ARG("SRCH")))
 ;
 N MAX,MRKV,MRKVZ,%PGNMB
 ;
 D FRMRKV(COD)
 ;
 ;
PC ;;D NOSELECT^%W1JS
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $G(%ARG("FIRST")) D KILL^%W1PRM("VIRTKB")
 ;
 I $G(%ARG("VIRTKB")) D
 .W "<br>",!
 .W "<input type=""button"" id=""virtkbtn"" class=""btnrnd"" "
 .I $G(%ARG("FIRST")) D
 ..W " value="""_$$^%W1DICT("SHOWVIRTKB")_""" "
 .W " onMouseUp=""VirtKB()"" style=""color:blue"" />",!
 .W "<br><span id=""virtmsg"" style=""color:brown;"_$$FONTFM^W3CSS_"""></span>",!
 .
 W "<br>",!
 ;
 I $L($G(%ARG("SEARCH"))) D SEARCH(SRCH,$G(SBMBCK))
 ;
 I $L($G(%ARG("KOT"))) D
 .W "<p dir="""_$$^%W1LNG_""" style=""font-size:"_$$^W3FSZ(16)_";color:brown"">"
 . W $$H2U^%L1FRM(%ARG("KOT"))
 .W "</p>",!
 ;
 W "<table id=""TblPrm"" dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" "
 W " class=""rep"" "
 W " cellspacing=""0"" cellpadding=""3"" "
 W " style="""_$$FONTFM^W3CSS_""" onMouseDown=""ifrHide('MUST')"" >",!
 ;
 F K=1:1 Q:'$D(MRKVZ(K))  D
 .N VL S VL=MRKVZ(K,1)
 .W "<tr style="""
 . I $L(SRCH),VL[SRCH D
 . .W "background-color:yellow"
 . E  I '(K#2) D
 ..W "background-color:#eaeaea"
 .W """>"
 .W "<td width=""60%"" style=""font-weight:bold"" dir="""_$$^%W1DIR_""" "
 .W ">"_$$H2U^%L1FRM(VL)
 .W "</td>"
 .N DRC S DRC=$S($$TYP(K)="D"!($$TYP(K)="T"):"style='direction:ltr'",1:"")
 .W "<td align=""center"" "_DRC_" >"
 .N VV S VV=$$VV(K)
 .W VV
 .W "</td></tr>",!
 ;
 W "</table></div>",!
 ;
 I $L($G(%ARG("SEARCH"))) D
 .W "<script>",!
 . W "GetId(""srcvl"").focus()",!
 .W "</script>",!
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
FRMRKV(COD) ;
 N (JB,%ARG,%REM,COD,MAX,MRKVZ)
 Q:$G(COD)=""
 S MAX=120 D ^%W1ARG; -- 02.02.26 -- WAS 79
 N GLHD,I,BEGG,MC,PRG,GI
 D GLHD
 ;
 K MRKV S PRG=0,BEGG=0,ENDG=0,MC=""
 ;
 S OK=0
 ;
 F I=1:1 Q:'$D(@GLHD@(I))  S A=$G(^(I)) Q:A["$"  Q:A["-"&($TR(A,"- ","")="")  D  Q:OK
 .I A["#" S KOT=$P(A,"#",$L(A,"#")-1) S OK=1
 I OK S MRKV("KOT")=$$SPA^%L1FRM(KOT)
 ;
 F I=1:1 Q:'$D(@GLHD@(I))  S A=$G(^(I)) Q:A["$"  Q:A["-"&($TR(A,"- ","")="")  D
 .I A'["{" Q
 .D STR(I)
 .N N S N="" F  S N=$O(MRKV(I,N)) Q:N=""  D
 ..N L S L=$L($G(MRKV(I,N)))
 ..I $G(MRKV(I,N,"FLD")) S L=L+2 D
 ...N FLD S FLD=MRKV(I,N,"FLD")
 ...N ZN S ZN=$$SPA^%L1FRM(MRKV(I,N)) Q:'ZN
 ...N ZPR S ZPR=MRKV(I,N-1)
 ...I ZPR["(",ZPR[")",ZPR[","  D
 ....N SEL S SEL=$P($P(ZPR,"(",2),")")
 ....S MRKV(I,N-1)=$$SPA^%L1FRM($P(MRKV(I,N-1),")",2,20))
 ....N J,K S K=0 F J=$L(SEL,","):-1:1 D
 .....N OPT S OPT=$P(SEL,",",J)
 .....N VL,TX S VL=$P(OPT,"-"),TX=$P(OPT,"-",2)
 .....S VL=$$SPA^%L1FRM(VL),TX=$$SPA^%L1FRM(TX)
 .....I $$GCOUPIT^W4PRM,COD="W4PRMMSD",ZPR["dpzn yelz ynnl",VL=1 Q
 .....I TX?1N.N D
 ......N X S X=TX,TX=VL,VL=X
 .....S K=K+1,MRKV(I,N,"SEL",K)=VL_"="_TX
 ...I $G(@GLHD@("P",+ZN,"OUTPUT")) D
 ....S MRKV(I,N,"OU")=""
 ....;;S MRKV(I,N)=$J("",FLD)
 ....;;K MRKV(I,N,"FLD")
 ..S MRKV(I)=$G(MRKV(I))_L_","
 ;
 ;
 D GET(COD)
 ;
 K MRKVZ S K=0
 S NST="" F  S NST=$O(MRKV(NST)) Q:NST=""  D
 .S NRKV="" F  S NRKV=$O(MRKV(NST,NRKV)) Q:NRKV=""  D
 ..I $G(MRKV(NST,NRKV,"FLD")) D
 ...S K=K+1
 ...S MRKVZ(K,1)=$TR($G(MRKV(NST,NRKV-1)),":","")
 ...S MRKVZ(K,"NID")=$$SPA^%L1FRM($G(MRKV(NST,NRKV)))
 ...S MRKVZ(K,"TYP")=$$TYP(K)
 ...S MRKVZ(K,"LEN")=$$LEN(K)
 ...S MRKVZ(K,"GL")=$$GLB(K)
 ...S MRKVZ(K,"ID")=$$ID(K)
 ...S MRKVZ(K,"VL")=$$VL(K)
 ...S MRKVZ(K,"MUMPS1")=$$MUMPS1(K)
 ...S MRKVZ(K,"MUMPS2")=$$MUMPS2(K)
 ...I $D(MRKV(NST,NRKV,"OU")) S MRKVZ(K,"OU")=1
 ...I $D(MRKV(NST,NRKV,"SEL")) M MRKVZ(K,"SEL")=MRKV(NST,NRKV,"SEL")
 ;
 S MRKVZ("KOT")=$G(MRKV("KOT"))
 Q
 ;
STR(I) ;
 N A,J,NRKV,FLD
 S A=$G(@GLHD@(I))
 ;
 S NRKV=1,J=MAX+1,FLD=0,PRSP=1
CYC S J=J-1 Q:J<1
 ;
 I $E(A,J)="}" S NRKV=NRKV+1 S FLD=$$FLDLEN(A,J),PRSP=0 D  G CYC
 .I '$G(MRKV(I,NRKV,"FLD")) S MRKV(I,NRKV,"FLD")=FLD
 ;
 I $E(A,J)="{" S NRKV=NRKV+1,FLD=0 S PRSP=1 G CYC
 I $E(A,J)="#" G CYC
 ;
 I $E(A,J)'=" ",PRSP S NRKV=NRKV+1,PRSP=0
 ;
 S MRKV(I,NRKV)=$E(A,J)_$G(MRKV(I,NRKV))
 ;
 ;;I '$G(MRKV(I,NRKV,"FLD")) S MRKV(I,NRKV,"FLD")=FLD
 ;
 G CYC
 ;
 ;
FLDLEN(A,J)
 N J1,K S K=0 F J1=J:-1:1 S K=K+1 Q:$E(A,J1)="{"
 N FLD S FLD=$$SPA^%L1FRM($E(A,J1+1,J-1))
 I FLD'?1N.N Q 0
 I $$OUTZ(FLD) Q 0
 Q K
 ;
KAV(ST) ;
 N N S N=""
 N PRKAV S PRKAV=0
 F  S N=$O(MRKV(ST,N)) Q:N=""  D
 .I $TR(MRKV(ST,N)," ","")?1"-"."-",'PRKAV S PRKAV=1 Q
 .I $TR(MRKV(ST,N)," ","")'?1"-"."-",$TR(MRKV(ST,N)," ","")'="" S PRKAV=-1
 I PRKAV<1 S PRKAV=0
 Q PRKAV
 ;
VV(K) ;
 N ZN,TYP,LEN,MSDR
 S ZN=$$ZN(K) Q:ZN="" ""
 S TYP=$$TYP(K) Q:TYP="" ""
 S LEN=$$LEN(K) Q:LEN="" ""
 S MSDR=$$MSDR
 S GLB=$$GLB(K)
 S ID=$$ID(K) Q:ID="" ""
 
 N VV S VV=""
 S @ID=$G(MRKVZ(K,"VL"))
 I $$MUMPS1(K)'="" X $$MUMPS1(K)
 ;
 I TYP="N"!(TYP="E")!(TYP="H"),GLB=""!'$$SMALLG(GLB) D
 .I $D(MRKVZ(K,"SEL")),GLB="" S VV=$$SELRKV(ID,$$VLC(K)) Q
 .I LEN["*" D VVA Q
 .D BEGVV
 .I $D(VWPRM) S VV=VV_" disabled=""disabled"" "
 .S VV=VV_" value="""_$$VLC(K)_""">"
 .I GLB'="",'$D(VWPRM) D
 ..S VV=VV_" &nbsp;&nbsp; <input type=""button"""
 ..S VV=VV_" value="""_$$^%W1DICT("SEARCH")_""""
 ..S VV=VV_" onClick=""Find('"_ID_"','"_GLB_"')"" />"
 ;
 I TYP="N"!(TYP="E")!(TYP="H"),GLB'="",$$SMALLG(GLB) D
 .S VV="<select name="""_ID_""" id="""_ID_""" "
 .I $D(VWPRM) S VV=VV_" disabled=""disabled"" "
 .S VV=VV_">"
 .S GLB1=$$GLB1(GLB)
 .I $G(@GLB1)'["!" D
 ..S VV=VV_"<option value=""0"">"_$$^%W1DICT("ALLKAV")_"</option>"
 .N N S N=""
 .S N=$$FIRST(GLB)
 .F  S N=$O(@GLB1@(N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I GLB="NAME"!(GLB="^NAME") S A=$G(^(N,1))
 ..I GLB="WLKMNET"!(GLB="^WLKMNET") S A=$$GETL^W3ANSLKM(N,"LKH")
 ..I '$$US(COD,GLB,N) Q
 ..S VV=VV_"<option value="""_N_""" "
 ..N VLS
 ..S VLS=$$VL(K)
 ..I VLS="" S VLS=$$GETP^%W1PRM("W4REPSCR_"_GLB) S:VLS["UNDEF" VLS=""
 ..I $L(VLS),N=VLS D
 ...S VV=VV_" selected=""selected"" "
 ..S VV=VV_">"_N_"&nbsp;&nbsp;"_$$H2U^%L1FRM($P(A,"**"))_"</option>"
 .S VV=VV_"</select>"
 ;
 I TYP="B" D
 .S VV="<input type=""checkbox"" name="""_ID_""" "
 .I $D(VWPRM) S VV=VV_" disabled=""disabled"" "
 .S VV=VV_"id="""_ID_""" "_$S($$VLC(K)!($$VLC(K)="k"):" checked=""checked"" ",1:"")_" >"
 ;
 I TYP="D" D
 .I $D(VWPRM) S VV=$G(@ID) Q
 .S %W1DAT("=")=""
 .S %W1DAT("NODAY")=1 D ^%W1DAT(ID,$G(@ID))
 ;
 I TYP="T" D
 .I $$MUMPS1(K)'="" X $$MUMPS1(K)
 .I $D(VWPRM) S VV=$$VLC(K) Q
 .D TIMENEW^%W1DAT(ID,$$VLC(K),"",.5)
 ;
 I TYP="C" D
 .N BG,FG
 .S BG=$G(@ID) I BG?6N S BG="#"_BG
 .S FG="black"
 .I BG="#000000" S FG="red"
 .S VV="<input type=""text"" readonly=""readonly"" value="""_$G(@ID)_""" "
 .S VV=VV_"id="""_ID_""" OnClick=""ChoiceColor('"_ID_"')"" "
 .S VV=VV_" style=""text-align:center;background-color:"_BG
 .S VV=VV_";color:"_FG_";font-weight:bold;cursor:pointer"" "
 ;
 Q VV
 ;
TYP(K) ;
 N ZN
 S ZN=$$ZN(K) Q:ZN="" ""
 Q $$TIPZ(ZN)
TIPZ(ZN)
 N TYP D GLHD
 S TYP=$G(@GLHD@("P",+ZN,"TYP"))
 Q TYP
 ;
LEN(K) ;
 N ZN
 S ZN=$$ZN(K) Q:ZN="" ""
 Q $$LENZ(ZN)
 ;
LENZ(ZN)
 N LEN D GLHD
 N CRD S CRD=$G(@GLHD@("P",+ZN,"CRD"))
 S LEN=$P(CRD,",",4)
 I 'LEN S LEN=$G(@GLHD@("P",+ZN,"LMAX"))
 Q LEN
 ;
GLB(K) ;
 N ZN
 S ZN=$$ZN(K) Q:ZN="" ""
 Q $$GLBZ(ZN)
GLBZ(ZN) ;
 N GLB D GLHD
 S GLB=$G(@GLHD@("P",+ZN,"GLOB"))
 Q GLB
 ;
ID(K) ;
 N ZN
 S ZN=$$ZN(K) Q:ZN="" ""
 Q $$IDZ(ZN)
IDZ(ZN) ;
 N ID D GLHD
 S ID=$G(@GLHD@("P","NM",+ZN))
 Q ID
 ;
MUMPS1(K) ;
 N ZN
 S ZN=$$ZN(K) Q:ZN="" ""
 Q $$MUMPS1Z(ZN)
MUMPS1Z(ZN) ;
 N MUMPS1 D GLHD
 S MUMPS1=$G(@GLHD@("P",+ZN,"MUMPS1"))
 Q MUMPS1
 ;
MUMPS2(K) ;
 N ZN
 S ZN=$$ZN(K) Q:ZN="" ""
 Q $$MUMPS2Z(ZN)
MUMPS2Z(ZN) ;
 N MUMPS2 D GLHD
 S MUMPS2=$G(@GLHD@("P",+ZN,"MUMPS2"))
 Q MUMPS2
 ;
OUTZ(ZN) ;
 N GLB D GLHD
 I $D(@GLHD@("P",+ZN,"OUTPUT")),^("OUTPUT")="" Q 1
 Q $G(@GLHD@("P",+ZN,"OUTPUT"))
 ;
VL(K)
 N ID S ID=$$ID(K)
 I ID="" Q ""
 N VL S VL=$G(@ID)
 I $$TYP(K)'="H" Q VL
 Q $$H2U^%L1FRM(VL)
 ;
VLC(K) Q $P($$VL(K),"<>")
 ;
READONLY(K)
 N ID S ID=$$ID(K)
 I ID="" Q ""
 N VL S VL=$G(@ID)
 ;;W "RO-VL="_VL,!
 I VL["<>READONLY" Q 1
 Q 0
 ;
DISABLE(K)
 N ID S ID=$$ID(K)
 I ID="" Q ""
 N VL S VL=$G(@ID)
 I VL["<>DISABLE" Q 1
 Q 0
 ;
ZN(K) Q $G(MRKVZ(K,"NID"))
 ;
SMALLG(GLB) ;
 I $G(GLB)="" Q 0
 I $E(GLB)="^" S GLB=$E(GLB,2,20)
 N GLB1 S GLB1=$$GLB1(GLB)
 N I,N S N="" F I=1:1:20 S N=$O(@GLB1@(N)) Q:N=""
 I N="" Q 1
 Q 0
 ;
GLHD S GLHD=$$BG^W4SCR_"COD)"
 I '$D(COD) S COD=$$COD
 Q
 ;
COD(STAM) ;
 Q $G(@$$^W4MAIN("TMPARG")@("SCR"))
 ;
GLB1(GLB) ;
 N GLB1 S GLB1=GLB
 I $E(GLB)="^" S GLB1=$E(GLB1,2,200)
 I GLB="WLKMNET" S GLB1="^|$$^W3MAIN|WLKMNET(MSDR)" Q GLB1
 Q $$^W4GL(GLB1)
 ;
FIRST(GLB) ;
 N FIRST S FIRST=""
 I $E(GLB)="^" S GLB=$E(GLB,2,200)
 I $D(@$$^W4TABL@(GLB,"FIRST")) S FIRST=$G(^("FIRST"))
 Q FIRST
 ;
US(COD,GLB,%NXN) ;
 N US S US=1
 I $D(@$$^W4TABL@(GLB,"US",COD)) S US=$G(@^(COD)) G EUS
 I $D(@$$^W4TABL@(GLB,"US"))#2 S US=$G(@^("US")) G EUS
EUS Q US
 ;
GET(COD) ;
 Q:$G(COD)=""
 D W4SP^W4SPIDK
 I $D(@W4SP@(COD,"GET"))#2 X @W4SP@(COD,"GET")
 Q
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,%REP,PRM,%REM)
 S COD=$P(PRM,";") I COD="" Q "0:NOSCR"
 S PRM=$P(PRM,";",2,200)
 ;
 F II=1:1:$L(PRM,";") D
 .N COUP S COUP=$P(PRM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 D W4SP^W4SPIDK
 I $D(@W4SP@(COD,"PUT"))#2 X @W4SP@(COD,"PUT")
 I $D(%SC("ER")) Q "0;"_%SC("ER")
 Q 1
 ;
 ;
SELRKV(ID,VLK)
 N VV
 S VV="<select name="""_ID_""" id="""_ID_""" "
 I $D(VWPRM) S VV=VV_" disabled=""disabled"" "
 S VV=VV_">"
 N N S N="" F  S N=$O(MRKVZ(K,"SEL",N)) Q:N=""  D
 .N TX,VL S VL=$P(MRKVZ(K,"SEL",N),"="),TX=$P(MRKVZ(K,"SEL",N),"=",2)
 .I TX?1N.N,VL'?1N.N D
 ..N AA S AA=VL,VL=TX,TX=AA
 .S VV=VV_"<option value="""_VL_""" "
 .;;W "VL="_VL_" VLK="_VLK,!
 .S VV=VV_$S($$SPA^%L1FRM(VL)=VLK:" selected=""selected""",1:"")_" >"
 .S VV=VV_$$CNWEB^%L1FRM($$H2U^%L1FRM(TX))
 .S VV=VV_"</option>"
 S VV=VV_"</select>"
 Q VV
 ;
BEGVV ;
 N LENSZ S LENSZ=LEN
 I $$^W4TABLET=2,LENSZ>30 S LENSZ=30
 S VV="<input type=""text"" style=""text-align:right"" "
 S VV=VV_" dir="""_$S(TYP="H":"RTL",1:"LTR")_""""
 S VV=VV_" size="""_LENSZ_""" "
 I TYP="N" S VV=VV_" maxlength="""_LEN_""""
 S VV=VV_$S(TYP="H"!(LEN>8):"",1:" onClick=""this.select()""")
 S VV=VV_$S(TYP="EN"!(ID["EMAIL"):" onKeyUp=""EnglishOnly(event,'"_ID_"')"" ",1:"")
 I $D(MRKVZ(K,"OU"))!$$READONLY(K) S VV=VV_" readonly=""readonly"""
 I $$DISABLE(K) S VV=VV_" disabled=""disabled"""
 I '$$OU(K) D
 .S VV=VV_" onFocus=""ShowVirtKB(this,'"_COD_"','"_TYP_"','"_LEN_"','"_K_"')"
 .S VV=VV_""""
 .S VV=VV_" onBlur =""this.style.backgroundColor='white'"" "
 S VV=VV_" name="""_ID_""" id="""_ID_""""
 Q
 ;
VVA ;
 S VV="<textarea style=""text-align:right"" "
 S VV=VV_" dir="""_$S(TYP="H":"RTL",1:"LTR")_""""
 S VV=VV_" cols="""_$P(LEN,"*")_""" "
 S VV=VV_" rows="""_$P(LEN,"*",2)_""" "
 I $D(MRKVZ(K,"OU"))!$$READONLY(K) S VV=VV_" readonly=""readonly"""
 I $$DISABLE(K) S VV=VV_" disabled=""disabled"""
 I '$$OU(K) D
 .S VV=VV_"onFocus=""ShowVirtKB(this,'"_COD_"','"_TYP_"','"_LEN_"','"_K_"')"
 .S VV=VV_""""
 .S VV=VV_" onBlur =""this.style.backgroundColor='white'"" "
 S VV=VV_" name="""_ID_""" id="""_ID_""">"
 D
 .N J,VL S VL=$$VLC(K)
 .F J=1:1:$L(VL,"_") D
 ..S VV=VV_$$H2U^%L1FRM($P(VL,"_",J))_$C(10)
 S VV=VV_"<"_"/textarea>"
 Q
 ;
VIRTKB(STAM) ;
 ;;I $G(%ARG("VIRTKB")) Q 1
 I $$GETP^%W1PRM("VIRTKB") Q 1
 Q 0
 ;
SWITCHVIRTKB(STAM) ;
 N VKB S VKB=$$GETP^%W1PRM("VIRTKB")
 S VKB=1-VKB
 D PUT^%W1PRM("VIRTKB",VKB)
 I VKB=1 Q "HIDEVIRTKB"
 Q "SHOWVIRTKB"
 ;
OU(K) ;
 I $D(MRKVZ(K,"OU"))!$$READONLY(K)!$$DISABLE(K) Q 1
 Q 0
 ;
GETPREV(PRM) ;
 N (JB,%ARG,PRM)
 S COD=$P(PRM,";") I COD="" Q 0
 S K=$P(PRM,";",2)
 D FRMRKV(COD)
 S OK=0
 N K1 F K1=K-1:-1:0 Q:'$D(MRKVZ(K1))  D FINDEL(K1) Q:OK
 I OK S OK=$$ID(OK)_";"_$$TYP(OK)_";"_$$LEN(OK)_";"_OK
 Q OK
 ;
GETNEXT(PRM) ;
 N (JB,%ARG,PRM)
 S COD=$P(PRM,";") I COD="" Q 0
 S K=$P(PRM,";",2)
 D FRMRKV(COD)
 S OK=0
 N K1 F K1=K+1:1 Q:'$D(MRKVZ(K1))  D FINDEL(K1) Q:OK
 I OK S OK=$$ID(OK)_";"_$$TYP(OK)_";"_$$LEN(OK)_";"_OK
 Q OK
 ;
FINDEL(K1) ;
 N TYP,GLB
 S TYP=$$TYP(K1)
 S GLB=$$GLB(K)
 I TYP="N"!(TYP="E")!(TYP="H"),GLB=""!'$$SMALLG(GLB) D
 .I $D(MRKVZ(K1,"SEL")) Q
 .S OK=K1
 Q
 ;
FIRSTID(COD) ;
 N (JB,%ARG,COD)
 D FRMRKV(COD) S OK=""
 S K="" F  S K=$O(MRKVZ(K)) S ID=$$ID(K) I $L(ID) S OK=ID Q
 Q OK
 ;
SEARCH(SRCH,SBMBCK)
 W "<div dir="""_$$^%W1DIR_""">",!
 W " <input id=""srcvl"" style=""font-size:"_$$^W3FSZ(12)_""" "
 W " type=""text"" size=""16"" value="""_$$H2U^%L1FRM(SRCH)_""" "
 W " onKeyPress=""if (event.keyCode===13) SearchPrm()"" "
 W " onClick=""this.select()"" />"
 W " &nbsp;&nbsp;"
  D ^W4BUTTON("srch","SEARCH","SearchPrm()","font-size:"_$$^W3FSZ(12))
  I $G(SBMBCK) D SBMBCK
 W "</div>",!
 W "<br>",!
 Q
 ;
SBMBCK ; 
 W $$NBSP^%L1FRM(10)
 D ^W4BTN("SUBMIT","Submit()","green","",12,4)
 W $$NBSP^%L1FRM(5)
 D ^W4BTN("BACK","Back()","red","",12,4)
 Q
 ;
MSDR() ; 
 I $G(%ARG("MSDR")) Q %ARG("MSDR") 
 Q $$GETP^%W1PRM("MSDR") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1FREPB
%W1FREPB(COD) ; [ 08.10.20 11:22 ] [ 06.09.20 09:32 ] [ 08.02.18 05:53 ] 
 N MAX,MRKV,%PGNMB
 S %PGNMB=0
 S CODS=COD_"s",MAX=$$SWG(COD),BG="",MAXG0=57
 S MAXHD=79
 N GLHD,I,BEGG,MC,PRG,GI
 S GLHD=$$BG^W4SHP_"CODS)"
 ;
 K MRKV S PRG=0,BEGG=0,ENDG=0,MC=""
 ;
 D DIVEXC^%W1PC1(COD,"%W1FRBEX")
 ;
 D STRG(COD)
 ;
 N N S N="" F  S N=$O(MRKV("G",N)) Q:N=""  D
 .N L S L=$L($G(MRKV("G",N)))
 .S MRKV("G")=$G(MRKV("G"))_L_","
 ;
 F I=1:1 Q:'$D(@GLHD@(I))  D
 .N A S A=$G(^(I))
 .;
 .D STR(I)
 .N N S N="" F  S N=$O(MRKV(I,N)) Q:N=""  D
 ..N L S L=$L($G(MRKV(I,N)))
 ..I $G(MRKV(I,N,"FLD")) S L=L+2
 ..I $G(MRKV(I,N,"BIG")) S L=L*2
 ..S MRKV(I)=$G(MRKV(I))_L_","
 .;;ZWR MRKV
 .I $D(@$$^W4MAIN("TMPREP")@("M",I))#2 S MRKV(I)=^(I)
 ;
 S BEGG=I
 S MAXG=MAXG0-(BEGG*2)-2
 S ENDG=BEGG+MAXG
 ;
PC ;;D NOSELECT^%W1JS
 N CURSORT S CURSORT=$$GETP^%W1PRM("CURSORT")
 I CURSORT D SORT(CURSORT)
 ;
 W "<div align=""center"" onMouseDown=""MsgIfrClose(self,'ifr')"">"
 ;;W " style=""page-break-before:always;filter: progid:DXImageTransform.Microsoft.BasicImage(Rotation=1);"">",!
 S %PGNMB=%PGNMB+1
 S @$$^W4MAIN("TMPREP")@("P",98)=%PGNMB
 W "<table dir="""_$$^%W1DIR_""" cellpadding=""1"" border=0 width=""100%""",!
 ;;W "<table dir="""_$$^%W1DIR_""" border=""0"" width=""100%"""
 N KF S KF=MAX/79
 S FSZ=12
 I KF'<1.7,KF<1.9 S FSZ=7
 I KF'<1.5,KF<1.7 S FSZ=8
 I KF<1.5&(KF'<1.3) S FSZ=9
 I KF<1.3&(KF'<1.1) S FSZ=10
 I KF<1.1&(KF'<1) S FSZ=11
 I KF<1 S FSZ=12
 S FSZHD=FSZ+$S(FSZ<9:3,FSZ<11:2,FSZ=11:1,1:0)
 W " style=""font-size:"_$$^W3FSZ(FSZ)_""""
 W ">",!
 W "<tr><td>" D TBL1(0,FSZHD)
 ;
 N PRKAV,ST,PRM,PRVHD
 S PRKAV=0,PRVHD=1
 S ST="" F  S ST=$O(MRKV(ST)) Q:ST=""  D SHAP(ST)
 W "</table></td></tr>"
 ;
 W "<tr><td>" D PCHD(COD) W "</td></tr>",!
 ;
 W "<tr><td>" D TBL1(0,FSZ)
 S RZD="\"
 ;
 S K=0 F  S BG=$O(@$$^W4MAIN("S4B")@(BG)) Q:BG=""  Q:BG>90000  S K=K+1 Q:K>MAXG  D
 .N A S A=$G(^(BG))
 .I $D(@$$^W4MAIN("S4B")@(BG,"B")) D PCRKVG(A,2) Q
 .D PCRKVG(A,0)
 ;
 W "</table></td></tr>",!
 ;
 I BG=""!(BG=99999) D
 .W "<tr><td>"
 .D TBL1(0,FSZ)
 .D PCRKVG($G(@$$^W4MAIN("S4B")@(99999)),1)
 .W "</table></td></tr>",!
 ;
 W "</table></div>",!
 ;
 I BG'="",BG<99999 D  S BG=BG-1 G PC
 .W $$^%W1DICT("CONTINUENEXTPAGE"),!
 Q
 ;
 ;
PCRKVG(A,PRTOT)
 W "<tr style=""color:black"
  D
  .I PRTOT=2 W ";background-color:lightyellow" Q
  .I PRTOT=1 W ";background-color:yellow;font-size:"_$$^W3FSZ(12) Q
  .I '(K#2) W ";background-color:#eae0d3"
  W """ "
 W ">"
 N J,F S J=0,F=0
 N PRM S PRM=$G(MRKV("G")) ;;Q:PRM=""
 ;
 N N S N="" F  S N=$O(MRKV("G",N)) Q:N=""  D
 .S J=J+1
 .N MCF S MCF=$$SPA^%L1FRM($G(MRKV("G",N)))
 .N FLD S FLD=0
 .I $G(MRKV("G",N,"FLD")) S FLD=1
 .I FLD S F=F+1
 .W "<td width="""_$J($P(PRM,",",J)/MAX*100,0,0)_"%"""
 .I $L(MCF),MCF["9" W " dir=""LTR"" align=""right"""
 .I $L(MCF),MCF["DD." W " align=""center"""
 .I $D(MRKV("G",N,"PROC")) W " onClick='"_MRKV("G",N,"PROC")_"'"
 .W " style="""
 .I $D(MRKV("G",N,"PROC")) W "cursor:pointer;"
 .I $G(PRTOT) W "font-weight:bold;"
 .W """"
 .W ">"
 .W "&nbsp;"
 .I FLD D
 ..N ZN S ZN=$$H2U^%L1FRM($P(A,RZD,F))
 ..I ZN="" Q
 ..I $L(MCF),MCF["9",MCF["." D
 ...I ZN["[" Q
 ...S DR=$L($P(MCF,".",2))
 ...S ZN=$J(ZN,DR,DR)
 ...S ZN=$$ZPT^%L1FRM(ZN)
 ..I $$CLRZN(ZN)?1"0"."."."0" W "<span style=""color:grey"">"
 ..I $$CLRZN(ZN)<0 W "<span style=""color:red"">"
 ..W ZN
 ..I $$CLRZN(ZN)<0 W "</span>"
 .W "</td>"
 W "</tr>",!
 Q
 ;
SHAP(ST) ;
 Q:'ST
 S PRM=MRKV(ST)
 ;;I $$KAV(ST) S PRKAV=1-PRKAV,PRVHD=0 Q
 W "<tr"
 W ">" D  W "</tr>",!
 .S J=0
 .S RKV="" F  S RKV=$O(MRKV(ST,RKV)) Q:RKV=""  D
 ..S J=J+1
 ..N BIG S BIG=0 I $G(MRKV(ST,RKV,"BIG")) S BIG=1
 ..N FLD S FLD=0 I $G(MRKV(ST,RKV,"FLD")) S FLD=MRKV(ST,RKV,"FLD")
 ..W "<td width="""_$J($P(PRM,",",J)/MAXHD*100,0,0)_"%"""
 ..I 'FLD W " align=""center"" dir="""_$$^%W1DIR_""""
 ..I FLD D
 ...W " align=""right"""
 ...S ZN=$$SPA^%L1FRM(MRKV(ST,RKV))
 ...S TYP=$G(@$$^W4MAIN("TMPREP")@("P",+ZN,"TYP"))
 ...I TYP="N" W " dir=""LTR"""
 ..W " >"
 ..D
 ...N ZN,TYP S TYP="" S ZN=$G(MRKV(ST,RKV))
 ...I BIG!FLD S ZN=$$SPA^%L1FRM(ZN)
 ...I FLD D
 ....S TYP=$G(@$$^W4MAIN("TMPREP")@("P",+ZN,"TYP"))
 ....S ZN=$G(@$$^W4MAIN("TMPREP")@("P",+ZN))
 ....S ZN=$$HBR^%L1FRM(ZN,FLD)
 ...W "<span style="""
 ...I 'PRKAV W "color:"_$S(FLD&(TYP="N")&(ZN["-"):"red",1:"black")
 ...I PRKAV W "color:white"
 ...I BIG W ";font-size:"_$$^W3FSZ(14)
 ...I FLD,PRVHD!(ENDG&(ST>ENDG)) W ";font-weight:bold"
 ...W """>"
 ...W $$H2U^%L1FRM(ZN)
 ..W "</span>"
 ..W "</td>"
 ;
 I MRKV(ST)'=$G(MRKV(ST+1)) D
 .W "</table></td></tr>",!
 .I $D(@GLHD@(ST+1)) W "<tr><td>" D TBL1(0,FSZHD)
 ;
 Q
 ;
STR(I) ;
 N A,J,NRKV,FLD,BTW
 S A=$G(@GLHD@(I))
 S NRKV=1,J=MAXHD+1,FLD=0,PRSP=1,BIG=0
CYC S J=J-1 Q:J<1
 I $E(A,J)=">" S NRKV=NRKV+1 S FLD=$$FLDLEN(A,J),PRSP=0 G CYC
 I $E(A,J)="&" S NRKV=NRKV+1,FLD=0 S PRSP=1 G CYC
 I $E(A,J)="#" S NRKV=NRKV+1,BIG=1-BIG S PRSP=0,PRKAV=0 G CYC
 I $E(A,J)'=" ",PRSP S NRKV=NRKV+1,PRSP=0
 ;
 S MRKV(I,NRKV)=$E(A,J)_$G(MRKV(I,NRKV))
 ;
 I '$G(MRKV(I,NRKV,"FLD")) S MRKV(I,NRKV,"FLD")=FLD
 I '$G(MRKV(I,NRKV,"BIG")) S MRKV(I,NRKV,"BIG")=BIG
 ;
 G CYC
 ;
 ;
FLDLEN(A,J)
 N J1,K S K=0 F J1=J:-1:1 S K=K+1 Q:$E(A,J1)="&"
 I $E(A,J1,J1+1)'?1"&"1N S K=0
 Q K
 ;
TBL1(BORDER,FSZ) ;
 ;;S BORDER=1
 W " <table border="""_BORDER_""" dir="""_$$^%W1DIR_""" cellspacing=""1"" style=""width:100%;table-layout:fixed;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(FSZ)_""">",!
 Q
 ;
 ;
HDSTYLE ;
 S BCL=$$BGHD^W3CSS("DRW")
 W " style=""background-color:"_BCL_";color:white;font-weight:bold;text-align:center"""
 Q
 ;
 ;
BETWEEN(A,J,RZD) ;
 N PR S PR=0
 N K F K=J-1:-1:1 I $E(A,K)=RZD S PR=1 Q
 N K1 F K1=J+1:1:$L(A) I $E(A,K1)=RZD S PR=PR+1 Q
 I PR=2 Q 1
 Q 0
 ;
STRG(COD) ;
 N GREP S GREP="^[$$^W3MAIN]W4REP"
 D LNG
 F J=1:1 Q:'$D(@GREP@(COD,"REP",LNG,J))  D
 .N A S A=$G(^(J))
 .N TYP S TYP=$P(A,";",3)
 .N L S L=$P(A,";",4)
 .N DR S DR=$P(L,",",2)
 .I TYP="D" S MRKV("G",J)="DD.DD.DD"
 .I TYP="E"!(TYP="H") S MRKV("G",J)=$TR($J("",L)," ","T")
 .I TYP="N" D
 ..S MRKV("G",J)=$TR($J("",L-DR-1)," ","9")
 ..I DR D
 ...S MRKV("G",J)=MRKV("G",J)_"."_$TR($J("",DR)," ","9")
 ...S MRKV("G",J)=$$ZPT^%L1FRM(MRKV("G",J))
 .S MRKV("G",J,"FLD")=1
 .I $D(@GREP@(COD,"REP",LNG,J,"PROC")) S MRKV("G",J,"PROC")=$G(^("PROC"))
 Q
 ;
PCHD(COD) ;
 N PRM S PRM=$G(MRKV("G")) Q:PRM=""
 S SWG=$$SWG(COD)
 D TBL1(0,FSZ)
  W "<tr>"
  N GREP S GREP="^[$$^W3MAIN]W4REP"
  S LNG=$$^%W1LNG S:LNG="" LNG="H"
  F J=1:1 Q:'$D(@GREP@(COD,"REP",LNG,J))  D
  .N A S A=$G(^(J))
  .W "<td "
  .W " width="""_$J($P(PRM,",",J)/SWG*100,0,0)_"%"""
  .D HDSTYLE
  .W ">"_$$H2U^%L1FRM($P(A,";",2))_"</td>"
  W "</tr></table>",!
 Q
 ;
SWG(COD) ;
 N GREP S GREP="^[$$^W3MAIN]W4REP"
 S LNG=$$^%W1LNG S:LNG="" LNG="H"
 N L S L=0
 F J=1:1 Q:'$D(@GREP@(COD,"REP",LNG,J))  D
 .N A S A=$G(^(J))
 .S L=L+$P(A,";",4)+1
 Q L
 ;
CLRZN(VL) ;
 Q $TR(ZN,"[] ","")
 ;
SORT(CURSORT) ; 
 N (JB,%ARG,CURSORT,COD,GREP,LNG)
 ;;S ^AA("W1FREPB-SORT")=CURSORT
 S INDTOT=99999
 S SORT=+CURSORT 
 S:$G(LNG)="" LNG="H"
 S ASDS=$S($P(CURSORT,"~",2):-1,1:1)
 S GREP="^[$$^W3MAIN]W4REP"
 S TYP=$G(@GREP@(COD,"REP",LNG,SORT))
 S S4B=$$^W4MAIN("S4B")
 S VRM=$$^W4MAIN("vrm") K @VRM
 S I=0
 ;
 S DL=20
 S N="" F  S N=$O(@S4B@(N)) Q:N=""  I N,N<INDTOT D
 .S I=I+1
 .S A=$G(^(N))
 .S RKV=$P(A,"\",SORT)
 .I RKV?1N.N1".".N S RKV=$P(RKV,".")
 .S RKV=$J(RKV,DL)
 .I TYP="H",$$^%W1LNG="H" D
 ..S RKV=$$INVH^%L1FRM(RKV)
 .S RKV=$$ENG^%L1FRM(RKV,DL)_$J(I,5)
 .S @VRM@(RKV)=A
 ;
 S @VRM@("TOT")=$G(@S4B@(INDTOT))
 ;
 K @S4B S I=0
 S N="" F  S N=$O(@VRM@(N),ASDS) Q:N=""  I N'="TOT" D
 .S A=$G(^(N))
 .S I=I+1
 .S @S4B@(I)=A
 ;
 S @S4B@(INDTOT)=@VRM@("TOT")
 K @VRM
 Q
 ;
LNG ;
 S LNG=$$^%W1LNG S:LNG="" LNG="H"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1FREPX
%W1FREPX(COD,FMT) ; [ 25.12.18 10:08 ] [ 06.10.16 19:34 ] [ 29.09.16 11:07 ] 
 N (JB,%ARG,%REM,COD,FMT)
 I $G(@$$^W4PRM@("NOEXCEL")) Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 D ^%W1ARG
 D TMPREP^%W1FREP
 D GLHD^%W1FREP(COD)
 ;
 I $G(FMT)="" S FMT="txt"
 S FL=$$FL(COD,FMT)
 I $G(TOT) S FL=FL_"S"
 S FLCSV=FL_"."_FMT1
 D PUT^%W3DEB("W1FREPX","COD=COD & FMT=FMT & FLCSV=FLCSV")
 N A,B,I,J,RZD
 S ^LEVDEB("FLCSV")=FLCSV
 D OPEN(FLCSV)
 ;;C FLCSV:(DELETE)
 ;;O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 D GETMRKV^%W1FREP(COD)
 ;
 ;;ZWR MRKV
 ;
 S B="",PRKAV=0
 N ST
 S ST="" F  S ST=$O(MRKV(ST)) Q:ST=""  Q:BEGG&(ST'<BEGG)  D
 .I $$KAV^%W1FREP(ST) S PRKAV=1-PRKAV,PRVHD=0 Q
 .S J=0 S B="",PR=0
 .S RKV="" F  S RKV=$O(MRKV(ST,RKV)) Q:RKV=""  D
 ..I PRKAV,'PR,COD="W4TOT" S B=B_$$RKV^%W1PCEX("",FMT)_$$RKV^%W1PCEX("",FMT) S PR=1
 ..S ZN=$$SPA^%L1FRM($G(MRKV(ST,RKV)))
 ..I $G(MRKV(ST,RKV,"FLD")) D
 ...S ZN=$G(@TMPREP@("P",+ZN))
 ..;;I PRKAV,'$G(MRKV(ST,RKV,"PRVERT")) Q
 ..S B=B_$$RKV^%W1PCEX(ZN,FMT)
 .S B=$E(B,1,$L(B)-1) Q:B=""
 .U FLCSV W B,!
 ;
 S BG="",RZD="\"
 F  S BG=$O(@TMPREP@("G",BG)) Q:BG=""  D
 .N A S A=$G(^(BG))
 .S B=$$RKV^%W1PCEX("",FMT)
 .N J,F S J=0,F=0
 .S N="" F  S N=$O(MRKV("G",N)) Q:N=""  D
 ..S J=J+1
 ..N FLD S FLD=0
 ..I $G(MRKV("G",N,"FLD")) S FLD=1
 ..I FLD D
 ...S F=F+1
 ...S B=B_$$RKV^%W1PCEX($P(A,RZD,F),FMT)
 .S B=$E(B,1,$L(B)-1)
 .;;U 0 W B,! H 1 ;
 .U FLCSV W B,!
 ;
 C FLCSV
 ;
 ;;ZSY "unix2dos "_FLCSV
 ;ZSY "zip -j "_FL_" "_FLCSV
 Q
 ;
DIRL(STAM) ;
 N WEBL S WEBL=$$WEBL^W3MAIN
 I $E(WEBL,$L(WEBL))'="/" S WEBL=WEBL_"/"
 N DIR,MSD
 S MSD=+$$GETP^%W1PRM("MSD")
 S DIR=WEBL_MSD_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N WEB S WEB=$$WEB^W3MAIN
 S:WEB="" WEB="."
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 N DIR S DIR=WEB_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
KAVSIK(A)
 I A?1"=="."="1"*"1"=".E,A?.P Q 1
 Q 0
 ;
FL(COD,FMT)
 N DIR S DIR=$$DIRL
 N MRKZ S MRKZ=""
 I $G(@$$^W4GL("MERKAZ")) S MRKZ="_"_^("MERKAZ")_"_"
 N IND S IND=COD_MRKZ_$$^W4MYDVN
 S FMT1=$$FMT^%W1PCEX(FMT)
 N SHCSV
 S SHCSV=""
 I FMT1="csv" D
 .S SHCSV=$O(@$$^W4MAIN("TMPCSV")@(IND,FMT1,9999999),-1)+1
 .S @$$^W4MAIN("TMPCSV")@(IND,FMT1,SHCSV)=$H
 Q DIR_IND_"_"_SHCSV
 ;
OPEN(FLCSV) ;
 N $ZT S $ZT="D SVER^%L1X G EOPEN"
 O FLCSV:(REWIND:NEWVERSION:WRITE:SYSTEM="rwx":GROUP="rw":WORLD="r")
EOPEN Q
 
 
 
 
 
 
 
 
 
 
 

%W1G
%W1G ; [ 03.05.26 10:28 ] [ 15.04.26 20:11 ] [ 12.03.26 12:43 ] 
 N (JB,%ARG,%REM)
 K @$$^W4MAIN("W1G")
 D ^%W1ARG
 ;
 S GLOB=$$GLOB(%ARG("GLOB"))
 D PUT^%W1PRM("GLOB",GLOB)
 ;
 D ED(GLOB)
 Q
 ;
 ;
ED(GLOB) ;
 D PREP(GLOB)
 D VRM
 S A="",ER=0
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  I N D
 .S X=$G(^(N))
 .I X["&amp;" S ER=1
 .S A=A_X_$C(10)
 ;
 W "<div align=""center"" >",!
 I ER D  W "</div>",! Q
 .W "<p>&nbsp</p>",! 
 .W "<p style=""font-size:"_$$^W3FSZ(16)_""">PROGRAMM HAS [AMP] SYMBOLS - EDITING FORBIDDEN !</p>",!
  ;
 ;
 N GLED S GLED=""
 D CHN^%W1EDIT
 ;
 S A=$$RPL^%L1FRM(A,"&","&amp;")
 ;
 W "<textarea cols=""80"" rows=""20"" style=""line-height:18px"" id=""glob"" name=""TXTGLOB"" >",!
  W A,!
 W "<" W "/textarea>",!
 W "<p></p>",!
 W "</div>",!
 ;
DIVBTN ;
 D DIVBTN^%W1EDIT
 Q
 ;
 ;
PREP(GLOB) ;
 N %PR,%MAC1,%MAC2,%ORD,FLAG,%PR,VRM
 N MAC S MAC=GLOB
 I $E(MAC)'="^" S MAC="^"_MAC
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 S %ORD=1
 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 S %MAC2=$E($R,1,$L($R)-1)_$S($E(MAC,$L(MAC))=")":",",1:"")
 S @VRM@(1)=MAC_"=<<<<<UNDEF>>>>>"
 S @VRM=MAC
 I %PR S @VRM@(1)=MAC_"="_@MAC
 S %MAC1=MAC I $E(%MAC1,$L(%MAC1))=")" S %MAC1=$E(%MAC1,1,$L(%MAC1)-1)_","""")"
 I $E(%MAC1,$L(%MAC1))'=")" S %MAC1=%MAC1_"("""")"
 S %MAC1=$Q(@%MAC1) ;;I %MAC1="" W:%PR=0 *7,!?15,"*** ARRAY ",MAC," HASN'T DESCENDANTS !" H 2 Q
 F I=2:1:10000 Q:%MAC1'[%MAC2  Q:%MAC1=""  S @VRM@(I)=%MAC1_"="_@%MAC1 S %MAC1=$Q(@%MAC1)
 I I=10000 S FLAG=1
 Q
 ;
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
ER ;
 S @$$^W4MAIN("W1G")=$ZS_"~"_$$GETP^%W1PRM("GLOB")_"~"_I_"~IND="_$G(IND)_"~CONT="_$G(CONT)_"~"_$H
 S @$$^W4MAIN("W1G")@(+$G(I))=$ZS_"~"_$G(I)_"~IND="_$G(IND)_"~CONT="_$G(CONT)
 Q
 ;
GLOB(GLOB)
 S GLOB=$$RPL^%L1FRM(GLOB,"$28","(")
 S GLOB=$$RPL^%L1FRM(GLOB,"$29",")")
 S GLOB=$$RPL^%L1FRM(GLOB,"$22","""")
 S GLOB=$$RPL^%L1FRM(GLOB,"$2B","+")
 S GLOB=$$RPL^%L1FRM(GLOB,"$25","%")
 S GLOB=$$RPL^%L1FRM(GLOB,"0g","")
 Q GLOB
 ;
GETGLOB(STAM)
 N A
 S A=$$GETP^%W1PRM("GLOB")
 I A="" Q "<PUSTO>"
 I $E(A)'="^" S A="^"_A
 Q A
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1GETPR
%W1GETPR(%PRM) ; [ 09.04.21 17:18 ] [ 25.06.20 18:40 ] [ 07.05.17 09:12 ] 
 N %A,%B,%COUPL,%I
 S ^AA("W1GETPR")=%PRM
 F %I=1:1:$L(%PRM,";")-1 D
 .S %COUPL=$P(%PRM,";",%I)
 .S %A=$P(%COUPL,"=") Q:%A=""
 .S %B=$P(%COUPL,"=",2,200)
 .S @%A=$$SPA^%L1FRM(%B)
 Q
 
 
 
 

%W1GLARX
%W1GLARX(STAM) ; [ 12.06.09 12:01 ] [ 02.05.09 18:41 ] [
 Q $$^W4MAIN("W1PCARX")

%W1GLPRM
%W1GLPRM(STAM) ; [ 06.06.09 09:29 ] [ 05.06.09 19:29 ] [ 02.05.09 18:40 ]
 Q "^|"""_$$^W3MAIN_"""|TMPPCPRM("""_$$^%W1JB_""")"
BG(STAM) ;
 N A S A=$$%W1GLPRM
 Q $E(A,1,$L(A)-1)_","

%W1GLREP
%W1GLREP(STAM) ; [ 21.07.26 13:07 ] [ 12.09.22 17:40 ] [ 09.08.09 07:21 ] 
 N A
 S A="^[$$^W3MAIN]W1REP("""_$$^%W1LNG_""",%REPN)"
 Q $$CNWEB^%L1FRM(A)
 

%W1GS
%W1GS ;service@greystone.com %GO;19920722 21:15;global output [ 20.07.26 07:37 ] [ 03.01.24 06:23 ] [ 30.08.16 15:32 ] 
 ;Extracts global data to standard global output (GO) file
 ;Invoke ^%GO to get interaction
 ;possible enhancements:
 ;selection by key list, range and/or wildcard, rather than global name
 ;callable entry point
 ;
 D W("Global Output Utility")
 i '$d(%zdebug) n $et s $et="zg "_$zl_":ERR^%GO" u $p:(ctrap=$c(3):exc="zg "_$zl_":EXIT^%GO")
 n g,gn,m,n,%ZD,%ZG,%ZH,fmt
 I $D(%L1GS("SV"))>9 D  G M
 .D init^%L1GSEL
 .N N S N="" F  S N=$O(%L1GS("SV",N)) Q:N=""  S %ZG=N D BDK^%L1GSEL
 d ^%L1GSEL
M ;
 i %ZG=0 D W("No globals selected") q
 D SPACE(1)
 S %ZH=""
 s fmt=0
 f  d  q:$l(%ZD)
 .I $D(%L1GS("TO")) S %ZD=%L1GS("TO") K %L1GS("TO")
 .E  r !,"Output device: <terminal>: ",%ZD,!
 . D ZDV
 . q
 ;
BGW K %L1GS ; TV : IN : %ZD (OUT FILE),%ZG() - GLOBALS LIST
 q:%ZD="^"
 i '$l($G(%ZH)) s %ZH="%GO Global Output Utility"
 ;
 u %ZD w %ZH,!,"GT.M ",$zd($h,"DD-MON-YEAR 24:60:SS") w !
 s gn="",(m,n)=0
 f  s gn=$o(%ZG(gn)) q:gn=""  s g=gn d
 . D W(gn_"<br>")
 . u %ZD ;;i $p=%ZD w "<br>",!
 . s m=m+1
 .i $d(@g)'[0 w g  d   s n=n+1
 . .w !,@g,!
 . i g'["(" d  q  ; whole globals
 . . f  s g=$q(@g) q:g=""  d
 . . . w g,!,@g,!
 . . . s n=n+1
 .N MAC,%MAC2,%MAC1 S MAC=g
 .I $E(MAC,$L(MAC))["," S MAC=$E(MAC,1,$L(MAC)-1)
 .I MAC["(",$E(MAC,$L(MAC))'[")" S MAC=MAC_")"
 .I $D(@MAC)
 .S %MAC2=$E($R,1,$L($R)-1)_$S(MAC["(":",",1:"")
 .S %MAC1=$E(MAC,1,$L(MAC)-1)_","""")"
 .S %MAC1=$Q(@%MAC1) Q:%MAC1=""
 .F  Q:%MAC1'[%MAC2  Q:%MAC1=""  W %MAC1,!,@%MAC1,! S %MAC1=$Q(@%MAC1)
 ;
 u %ZD w !!
 D W("Total of "_n_" node"_$s(n=1:"",1:"s")_" in "_m_" global"_$s(m=1:".",1:"s."),"color:green")
 c:%ZD'=$p %ZD
 u $p:(ctrap="":exc="")
 q
 ;
ERR D W($p($zs,",",2,99))
 ; Warning - Fall-though
 s $ec=""
EXIT i $d(%ZD),%ZD'=$p c %ZD
 u $p:(ctrap="":exc="")
 q
TV ; IN : %ZD - OUT FILE, %ZG() - GLOBALS LIST
 S %ZH="" D ZDV G BGW
 Q
ZDV ;
 i '$l(%ZD) s %ZD=$p q
 i $E(%ZD)="." S %ZD="/home/gtmuser/ppj-transfer/"_$E(%ZD,2,255)
 i %ZD="^" q
 i %ZD="?" d  q
  . w !!,"Select the device you want for output"
  . w !,"If you wish to exit enter a carat (^)",!
  . s %ZD=""
 I %ZD["/mnt/floppy/" D ^%L1FLOP
 i $zparse(%ZD)="" D W("  no such device") s %ZD="" q
 ;
 o %ZD:(newversion:block=2048:record=2044:exception="g noopen"):0
 i '$t  D W(%ZD_" is not available") s %ZD="" q
 Q
noopen w !,$p($ZS,",",2,999),! c %ZD s %ZD=""
 q
SVSHP(%ZD,CD) ;
 I '$D(^SHP(CD)) S %SAY=" ^SHP("_CD_") IS NOT EXIST ! " X %XMSGV(1) Q
 I $G(%ZD)="" S %SAY=" OUT FILE IS NOT DEFINED ! " X %XMSGV(1) Q
 K %ZG
 N N S N="" F  S N=$O(^SHP(CD,N)) Q:N=""  D
 .S %GN=$G(^(N)) Q:%GN=""  I $E(%GN)'="^" S %GN="^"_%GN
 .S %ZG(%GN)=""
 G TV
 ;
W(TXT,DOPSTYLE) ;
 I $D(%NOSHOW) Q
 N A
 S A="<div dir=""LTR"" style=""text-align:center;"_$$FONTFM^W3CSS
 I $L($G(DOPSTYLE)) S A=A_";"_DOPSTYLE
 S A=A_""">"
 S A=A_TXT
 S A=A_"</div>"
 S SH=$O(@TMP@(9999999),-1)+1
 D TMP
 S @TMP@(SH)=A
 Q
SPACE(COUNT) ;
 D TMP
 N I F I=1:1:COUNT S SH=SH+1,@TMP@(SH)="<br>"
 Q
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 
 
 
 
 
 
 
 
 
 
 

%W1H2U
%W1H2U(TXT) ; [ 04.03.19 18:30 ] [ 08.10.15 19:33 ] [ 13.05.13 10:18 ] 
 N I,I1,OU,HB,W,W1,PRHB S HB=0
 F I=1:1:$L(TXT) I $$HB($E(TXT,I)) S HB=1 Q
 I 'HB Q TXT
 ;
 ;;N DMLS S DLMS="=-)(*&^%$#@!\[]';?><|"
 ;;N J F J=1:1:$L(DLMS) S TXT=$$RPL^%L1FRM(TXT,$E(DLMS,J)," "_$E(DLMS,J)_" ")
 ;
 S I=$L(TXT)
 S OU="",PRHB=""
CYC S I1=I I $$HB($E(TXT,I)) D
 .S W="",W1="",EN=0
 .F I1=I:-1:0 Q:$E(TXT,I1)=" "  D  ;?.P&'$$HB($E(TXT,I1))  D
 ..N CMB S SMB=$E(TXT,I1)
 ..I $$HB(SMB)!("<([{"[SMB) S:EN W=W_W1,EN=0,W1="" S W=W_$$PROC(SMB) Q
 ..I '$$HB(SMB),"<([{"'[SMB S W1=$$PROC(SMB)_W1,EN=1 Q
 .I $L(W1) S W=W_W1
 .S OU=OU_W
 ;
 I I1<1 G END
 ;
 S I=I1
 I $E(TXT,I)=" " S OU=OU_" ",I=I-1 G:I<1 END G CYC
 ;
 I '$$HB($E(TXT,I)),")]}"[$E(TXT,I),$$PRHB(I) D  G:I<1 END G CYC
 .S OU=OU_$$SCB($E(TXT,I)),I=I-1
 ;
 I '$$HB($E(TXT,I)),")]}"[$E(TXT,I),'$$PRHB(I) D  G:I<1 END G CYC
 .N W S W=""
 .N SK S SK(")")="("
 .S SK("]")="["
 .S SK("}")="{"
 .F I1=I:-1:1 Q:$E(TXT,I1)=SK($E(TXT,I))  S W=$E(TXT,I1)_W
 .S W=$E(TXT,I1)_W,I=I1-1
 .S OU=OU_W,PRHB=0
 ;
 ;
 I '$$HB($E(TXT,I)),"([{"[$E(TXT,I) D  G:I<1 END G CYC
 .S OU=OU_$$SCB($E(TXT,I)),I=I-1
 ;
 S PREN=0,W1=""
 I '$$HB($E(TXT,I)) D
MET .I $E(TXT,I)=">",$E(TXT,I-1)="E",$E(TXT,I-2)="<" D  S OU=OU_W1 Q
 ..S W1="<E>",I=I-3
 ..F I1=I:-1:0 Q:$E(TXT,I1)=">"&($E(TXT,I1-1)="E")&($E(TXT,I1-2)="<")  D
 ...S W1=$E(TXT,I1)_W1
 ..I I1>2 S W1="<E>"_W1,I1=I1-3 Q
 .
 .S W="",PREN=0
 .F I1=I:-1:0 Q:$E(TXT,I1)=" "  Q:$$HB($E(TXT,I1))  Q:$E(TXT,I1)=">"&($E(TXT,I1-1)="E")&($E(TXT,I1-2)="<")  D
 ..S W=$E(TXT,I1)_W
 .S OU=OU_W
 .I $E(TXT,I1)=">",$E(TXT,I1-1)="E",$E(TXT,I1-2)="<" S I=I1 Q:I<1  G MET
 .I I1>0,$E(TXT,I1)?.P,$E(TXT,I1)'="" S OU=OU_$$SCB($E(TXT,I1)),I1=I1-1
 ;
 I I1>0 S I=I1 G CYC
 ;
END ;
 Q OU
 ;
HB(SMB) ;
 I $A(SMB)<96 Q 0
 I $A(SMB)>122 Q 0
 Q 1
SCB(SMB) ;
 I SMB="(" Q ")"
 I SMB=")" Q "("
 I SMB="[" Q "]"
 I SMB="]" Q "["
 I SMB="{" Q "}"
 I SMB="}" Q "{"
 I SMB="<" Q ">"
 I SMB=">" Q "<"
 Q SMB
PRHB(I) ;
 N PRHB S PRHB=0
 N J I $E(TXT,I)="" Q 0
 N SK S SK(")")="("
 S SK("]")="["
 S SK("}")="{"
 S SK(">")="<"
 I '$D(SK($E(TXT,I))) Q 0
 F J=I-1:-1:1 Q:$E(TXT,J)=SK($E(TXT,I))  D  Q:PRHB
 .I $$HB($E(TXT,J)) S PRHB=1
 Q PRHB
 ;
PROC(SMB) ;
 I "{[(<>)]}"'[SMB Q SMB
 Q $$SCB(SMB)
 
 

%W1H2U0
%W1H2U(TXT) ; [ 22.12.12 21:16 ] [ 13.10.07 12:15 ] [ 02.10.07 19:13 ]
 N I,I1,OU,HB,W,W1,PRHB S HB=0
 F I=1:1:$L(TXT) I $$HB($E(TXT,I)) S HB=1 Q
 I 'HB Q TXT
 ;
 S I=$L(TXT)
 S OU="",PRHB=""
CYC S I1=I I $$HB($E(TXT,I)) D
 .S W=""
 .F I1=I:-1:0 Q:$E(TXT,I1)?.P&'$$HB($E(TXT,I1))  D
 ..S W=W_$E(TXT,I1)
 .S OU=OU_W
 .;;I $E(TXT,I1)=">" I $E(TXT,I1-1)="E",$E(TXT,I1-2)="<" Q
 .I $E(TXT,I1)?.P,"{[(<>)]}"'[$E(TXT,I1) S OU=OU_$E(TXT,I1),I1=I1-1
 ;
 I I1=0 G END
 S I=I1
 I $E(TXT,I)=" " S OU=OU_" ",I=I-1 G CYC
 ;
 I '$$HB($E(TXT,I)),")]}"[$E(TXT,I),$$PRHB(I) D  G:I<1 END G CYC
 .S OU=OU_$$SCB($E(TXT,I)),I=I-1
 ;
 I '$$HB($E(TXT,I)),")]}"[$E(TXT,I),'$$PRHB(I) D  G:I<1 END G CYC
 .N W S W=""
 .N SK S SK(")")="("
 .S SK("]")="["
 .S SK("}")="{"
 .F I1=I:-1:1 Q:$E(TXT,I1)=SK($E(TXT,I))  S W=$E(TXT,I1)_W
 .S W=$E(TXT,I1)_W,I=I1-1
 .S OU=OU_W,PRHB=0
 ;
 ;
 I '$$HB($E(TXT,I)),"([{"[$E(TXT,I) D  G CYC
 .S OU=OU_$$SCB($E(TXT,I)),I=I-1
 ;
 S PREN=0,W1=""
 I '$$HB($E(TXT,I)) D
MET .I $E(TXT,I)=">",$E(TXT,I-1)="E",$E(TXT,I-2)="<" D  S OU=OU_W1 Q
 ..S W1="<E>",I=I-3
 ..F I1=I:-1:0 Q:$E(TXT,I1)=">"&($E(TXT,I1-1)="E")&($E(TXT,I1-2)="<")  D
 ...S W1=$E(TXT,I1)_W1
 ..I I1>2 S W1="<E>"_W1,I1=I1-3 Q
 .
 .S W="",PREN=0
 .F I1=I:-1:0 Q:$E(TXT,I1)=" "  Q:$$HB($E(TXT,I1))  Q:$E(TXT,I1)=">"&($E(TXT,I1-1)="E")&($E(TXT,I1-2)="<")  D
 ..S W=$E(TXT,I1)_W
 .S OU=OU_W
 .I $E(TXT,I1)=">",$E(TXT,I1-1)="E",$E(TXT,I1-2)="<" S I=I1 G MET
 .I I1>0,$E(TXT,I1)?.P,$E(TXT,I1)'="" S OU=OU_$$SCB($E(TXT,I1)),I1=I1-1
 I I1>0 S I=I1 G CYC
END Q OU
 ;
HB(SMB) ;
 I $A(SMB)<96 Q 0
 I $A(SMB)>122 Q 0
 Q 1
SCB(SMB) ;
 I SMB="(" Q ")"
 I SMB=")" Q "("
 I SMB="[" Q "]"
 I SMB="]" Q "["
 I SMB="{" Q "}"
 I SMB="}" Q "{"
 I SMB="<" Q ">"
 I SMB=">" Q "<"
 Q SMB
PRHB(I) ;
 N PRHB S PRHB=0
 N J I $E(TXT,I)="" Q 0
 N SK S SK(")")="("
 S SK("]")="["
 S SK("}")="{"
 S SK(">")="<"
 I '$D(SK($E(TXT,I))) Q 0
 F J=I-1:-1:1 Q:$E(TXT,J)=SK($E(TXT,I))  D  Q:PRHB
 .I $$HB($E(TXT,J)) S PRHB=1
 Q PRHB

%W1HB
%W1HB(STAM) ; [ 01.11.23 22:57 ] [ 11.07.17 16:35 ] [ 
 I ($$^%W1LNG="H")!$D(NOPCLOAZ) Q 1
 Q 0
 

%W1HD
%W1HD(PRM,REP,FUNC) ; [ 28.04.26 01:52 ] [ 20.04.26 15:28 ] [ 23.10.25 11:40 ] 
 N (JB,%ARG,PRM,REP,FUNC)
 S WD=4
 S COLOR="#EAEAEA"
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 W "<table id=""TblHeadVw"" class=""hdvw""  width=""100%"" border=""0"" "
  I $$1024^W4WDSCR W "cellspacing=""0"" cellpadding=""0"" "
  W "style=""font-size:"_$$^W3FSZ(12)_";border:double "_WD_"px "_COLOR_""" "
 W ">",! 
  W "<tr style=""height:"_$$^W4KF(28)_"px"">"
   I $G(FUNC) W "<td width=""10%"">&nbsp;</td>"
   W "<td dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(16)_""" "
    I $G(FUNC)=1!($G(FUNC)=2) W " width=""80%"" "
   W ">"
   D NAME($G(PRM),$G(REP))
  W "</td>"
  ;
  I $G(FUNC) D
  .;;I FUNC=3 D  Q
  .;; W "<img src=""w3close.jpg"" name=""back"" id=""backid"" alt="""_$$^%W1DICT("BACK")_""" style=""padding:3px;cursor:pointer"" onClick=""Back()"" />"
  .
  .N PROC S PROC="SaveAndBack()"
  .I FUNC=2 S PROC="Save()"
  .W "<td >"
  . W "<img src=""w3save.jpg"" name=""save"" id=""saveid"" alt="""_$$^%W1DICT("SAVE")_""" style=""padding:3px;cursor:pointer"" onClick="""_PROC_""" />"
  . W $$NBSP^%L1FRM(5)
  . W "<img src=""w3close.jpg"" name=""back"" id=""backid"" alt="""_$$^%W1DICT("BACK")_""" style=""padding:3px;cursor:pointer"" onClick=""Back()"" />"
  .W "</td>"
  W "</tr>",!
 W "</table>",!
 w "</div>",!
 Q
 ;
NAME(PRM,REP) ;
  N MSD
  S MSD=$$GETP^%W1PRM("MSD")
  I MSD D
  .W "<span style=""font-size:"_$$^W3FSZ(11)_";color:yellow"">"
  . W $$H2U^%L1FRM($$^W3MSDG(MSD))_" </span>"_$$NBSP^%L1FRM(2)
  D
  .I $E(PRM)="!" W $$H2U^%L1FRM($E(PRM,2,255)) Q 
  .I '$G(REP) W $$^%W1DICT(PRM) Q
  .W $$REPNAME^W4REPSCR(PRM)
 Q
 ;
 ; 
STYLE1(WD,COLOR) ;
 Q ""
 ;
STYLE2(WD,COLOR) ;
 Q ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1HD0
%W1HD(PRM,REP,FUNC) ; [ 29.03.25 06:25 ] [ 26.03.25 17:13 ] [ 11.11.24 11:19 ] 
 N (JB,%ARG,PRM,REP,FUNC)
 S WD=2
 S COLOR="#EAEAEA" ;"#A35232" 
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 W "<table id=""TblHeadVw"" class=""hdvw"" style=""border-collapse:collapse"" width=""100%"" "
  W "style=""font-size:"_$$^W3FSZ(16)_""" border=""0"">",!
  W "<tr>"
   W "<td dir="""_$$^%W1DIR_""" "_$$STYLE1(WD,COLOR)
    I $G(FUNC)=1 W "width=""90%"" "
   W ">"
   D NAME($G(PRM),$G(REP))
  W "</td>"
  ;
  I $G(FUNC) D
  .W "<td "_$$STYLE2(WD,COLOR)_" >"
  . W "<img src=""w3save.jpg"" name=""save"" id=""saveid"" alt="""_$$^%W1DICT("SAVE")_""" style=""padding:3px;cursor:pointer"" onClick=""SaveAndBack()"" />"
  . W $$NBSP^%L1FRM(5)
  . W "<img src=""w3close.jpg"" name=""back"" id=""backid"" alt="""_$$^%W1DICT("BACK")_""" style=""padding:3px;cursor:pointer"" onClick=""Back()"" />"
  .W "</td>"
  W "</tr>",!
 W "</table>",!
 w "</div>",!
 Q
 ;
NAME(PRM,REP) ;
  N MSD
  S MSD=$$GETP^%W1PRM("MSD")
  I MSD D
  .W "<span style=""font-size:"_$$^W3FSZ(11)_";color:yellow"">"
  . W $$H2U^%L1FRM($$^W3MSDG(MSD))_" </span>"_$$NBSP^%L1FRM(2)
  D
  .I $E(PRM)="!" W $$H2U^%L1FRM($E(PRM,2,255)) Q 
  .I '$G(REP) W $$^%W1DICT(PRM) Q
  .W $$REPNAME^W4REPSCR(PRM)
 Q
 ;
 ; 
STYLE1(WD,COLOR) ;
 I $G(WD)="" S WD=2
 I $G(COLOR)="" S COLOR="white"
 Q "style=""border-bottom:"_WD_"px inset "_COLOR_" ; border-top:"_WD_"px inset "_COLOR_" ; border-right:"_WD_"px inset "_COLOR_""" "
 ;
STYLE2(WD,COLOR) ;
 I '$G(WD) S WD=2
 I $G(COLOR)="" S COLOR="white"
 Q "style=""border-bottom:"_WD_"px inset "_COLOR_" ; border-top:"_WD_"px inset "_COLOR_" ; border-left:"_WD_"px inset "_COLOR_""" "
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1JB
%W1JB(STAM) ; [ 06.01.26 10:35 ] [ 15.06.13 18:13 ] [ 16.04.12 12:31 ] 
 I $$^W4GLLIN Q $J
 Q "JB"_+$G(JB)
 

%W1JS
%W1JS ; [ 18.12.25 17:07 ] [ 31.10.24 15:35 ] [ 08.06.23 07:35 ] 
 D ADDROW,PARSE,LEN,BDIKA,CLRNMB
 Q
ADDROW ; --> LenDlm(), Parse()
 W "function AddRowOrd(Tbl,Str,Dlm)",!
 W " {",!
 ;;W "   alert(""Tbl=""+Tbl+""  Str=""+Str+""  Dlm=""+Dlm)",!
 W "   var t=document.getElementById(Tbl);",!
 W "   var last=t.rows.length;",!
 W "   var newrow=t.insertRow(last);",!
 W "   for (i=1;i<=LenDlm(Str,Dlm);i++)",!
 W "     {",!
 W "       x=newrow.insertCell(0);",!
 W "     }",!
 W "   for (i=0;i<LenDlm(Str,Dlm);i++)",!
 W "     {",!
 W "        var fld=Parse(Str,Dlm,i+1,i+1);",!
 W "        newrow.cells[i].innerHTML=fld;",!
 W "     }",!
 W " }",!
 W !
 Q
PARSE ; -- no call
 W "function Parse(Str,Dlm,Start,Fin)",!
 W " {",!
 W "  Str=Str+'';",!
 W "  var arr=new Array(80);",!
 W "  arr=Str.split(Dlm);",!
 W "  var st;",!
 W "  var i;",!
 W "  if (Str.indexOf(Dlm)<0 && Start===1) {return Str;}",!
 W "  if (Str.indexOf(Dlm)<0 && Start>1) {return '';}",!
 W "  if (Start<1) {Start=1;}",!
 W "  if (Fin>arr.length) {Fin=arr.length;}",!
 W "  if (Start>arr.length) {return '';}",!
 W "  st=arr[Start-1];",!
 W "  for (i=Start;i<Fin;i++)",!
 W "    {",!
 W "       st=st+Dlm+arr[i]; ",!
 W "    }",!
 W "  return st;",!
 W " }",!
 W !
 Q
LEN ; -- no call
 W "function LenDlm(Str,Dlm)",!
 W " {",!
 W "  return Str.split(Dlm).length;",!
 W " }",!
 W !
 Q
TBLSEL ; --> Parse(), LenDlm(), SetCellSel()
 W "function CellSel(IDC,SEL)",!
 W "  {",!
 W "    var i,sel;",!
 W "    sel=""<option>""+Parse(SEL,""~"",1,1)+""</option>"";",!
 W "    for (i=2;i<=LenDlm(SEL,""~"");i++)",!
 W "      { sel=sel+""<option>""+Parse(SEL,""~"",i,i)+""</option>""; }",!
 ;;W "    alert('sel='+sel);",!
 W "    document.getElementById(IDC).innerHTML="
        W "'<select id=""SelMenu"" onchange=""SetCellSel(IDC)"">'+sel+'</select>';",!
 W "  }",!
 W !
 W "function SetCellSel(IDC)",!
 W "  {",!
 W "      var x=document.getElementById(""SelMenu"");",!
 W "      var y=document.getElementById(IDC);",!
 W "      y.innerHTML=x.options[x.selectedIndex].text;",!
 W "  }",!
 W !
 Q
DELROW ; -- no call
 W "function DelRow(Tbl,NRow)",!
 W " {",!
 W "   var t=document.getElementById(Tbl);",!
 W "   if (t !== null)",!
 W "     { t.deleteRow(NRow); }",!
 W " }",!
 W !
 Q
BDIKA ; --> Msg(),ClearFld(),Parse()
 W "function BDIKA(FLD,NMFLD,MIN,SUG)",!
 W " {",!
 W "  var sug=Parse(SUG,""-"",1,1);",!
 W "  var fld=document.getElementById(FLD);",!
 W "  if (fld===null) { Msg('FLDNOTDEF',FLD) ; return false; }",!
 W "  var fldvl=ClearFld(FLD);",!
 W "  fldvl=fldvl.replace(/-/g,'')",!
 ;
 I $$POLYGON^W4PRM D
 .W "  if ( FLD == 'STREET' ) {",!  
 . W "  if (fldvl.indexOf(',')<0) { MsgFoc(FLD,'FLDMUST',NMFLD+'!D','font-size:"_$$^W3FSZ(18)_";background-color:yellow');return false; }",!
 . W "  if (ParseTxt(fldvl,',',1,1)=='' || ParseTxt(fldvl,',',2,2)=='') { MsgFoc(FLD,'FLDMUST',NMFLD+'!D','font-size:"_$$^W3FSZ(18)_";background-color:yellow');return false; }",!
 .W " }",!!  
 ;
 W "  if (sug==='TEL') {",!
 W "    fldvl=fldvl.replace(/!/g,'')",!
 W "  }",!
 W "  var fldvl1=fldvl.replace(/ /g,'')",!
 ;;W "  alert(FLD+'='+Asc(fldvl))",!
 W "  var fldlen=fldvl1.length;",!
 W "  if (fldlen<1 && SUG.indexOf(""\-M"")>-1 ) { MsgFoc(FLD,'FLDMUST',NMFLD+'!D','font-size:"_$$^W3FSZ(18)_";background-color:yellow');return false; }",!
 W "  if (fldlen<1 && SUG.indexOf(""\-M"")===-1 ) {return true;}",!
 W "  var MAX=999;",!
 W !
 I $$^%W1LNG="H" D
 .W "  if (sug==='TEL') {",!
 .W "    if (fldlen<7 ) { MsgFoc(FLD,'FLDMIN',NMFLD+'!D;7');return false; }",!
 .W "    if (fldlen>"_$S($$^%W1LNG="H":11,1:14)_") { MsgFoc(FLD,'FLDMAX',NMFLD+'!D;"_$S($$^%W1LNG="H":11,1:14)_"');return false;}",!
 .W "    var vln=Parse(fldvl,'-',1,1)+Parse(fldvl,'-',2,2);",!
 .W "    if (isNaN(vln)===true) { MsgFoc(FLD,'FLDNUM',NMFLD+'!D');return false;}",!
 .W "    return true;",!
 .W "   }",!
 W !
 W "  if (sug==='EM') {",!
 W "    if (fldlen<7 ) { MsgFoc(FLD,'FLDMIN',NMFLD+'!D;7');return false; }",!
 W "    var pre=Parse(fldvl,'@',1,1);",!
 W "    var post=Parse(fldvl,'@',2,2);",!
 W "    if (post.length === 0) { MsgFoc(FLD,'FLDERR',NMFLD+'!D');return false; }",!
 W "    var post1=Parse(post,'.',1,1);",!
 W "    var post2=Parse(post,'.',2,2);",!
 W "    if (post1.length === 0) { MsgFoc(FLD,'FLDERR',NMFLD+'!D');return false; }",!
 W "    if (post2.length === 0) { MsgFoc(FLD,'FLDERR',NMFLD+'!D');return false; }",!
 W "    return true;",!
 W "   }",!
 W !
 W "  if (sug==='TX') {",!
 W "    if (isNaN(fldvl)===false) { MsgFoc(FLD,'FLDTXT',NMFLD+'!D');return false; }",!
 W "  }",!
 W !
 W "  if (sug==='N') {",!
 W "    if (isNaN(fldvl)===true) { MsgFoc(FLD,'FLDNUM',NMFLD+'!D');return false; }",!
 W "  }",!
 W !
 W "  if (sug==='NA') {",!
 W "    if (isNaN(fldvl.substr(0,1))===true && fldvl !== ""."" ) { MsgFoc(FLD,'FLDNUM',NMFLD+'!D');return false; }",!
 W "  }",!
 W !
 W " var MINS=MIN+'';",!
 W " if (MINS.indexOf('-')>-1)",!
 W "   { MAX=Parse(MINS,'-',2,2);",!
 W "     MIN=Parse(MINS,'-',1,1);",!
 W "   }",!
 W " if (isNaN(MAX) === false ) ",!
 W "  { ",!
 W "   if (fldlen>MAX) ",!
 W "      { MsgFoc(FLD,'FLDMAX',NMFLD+'!D;'+MAX);",!
 W "        return false;",!
 W "      }",!
 W "  }",!
 W !
 W " if (isNaN(MIN)===false)",!
 W "  {",!
 W "     if ( MIN>0 ) {",!
 W "         if (fldlen<MIN) { MsgFoc(FLD,'FLDMIN',NMFLD+'!D;'+MINS);return false; }",!
 W "     }",!
 W "  }",!
 W " return true;",!
 W " }",!
 W !
CLRFLD ;
 W "function ClearFld(FLD) ",!
 W "{",!
 W " var fl=document.getElementById(FLD);",!
 W " if ( fl === null) return 'NULL';",!
 w " var fld=fl.value;",!
 ;;W "  alert('CLRFLD1: '+FLD+'='+fld)",!
 W " if (fld.length === 0) {return '';}",!
 W "  var a=fld;",!
 W " if (fld.charCodeAt(0) === 160 )"
 W "  {",!
 W "     a=a.substr(1);",!
 W "  }",!
 W " if (fld.charCodeAt(0) === 32 )"
 W "  {",!
 W "     a=a.substr(1);",!
 W "  }",!
 W " if (a.charCodeAt(0) === 34 )"
 W "  {",!
 W "     a=a.substr(1,a.length-2);",!
 W "  }",!
 W " var i,a1,smb;",!
 W " var a1=""""",!
 W "  for (i=0; i<a.length; i++)",!
 W "  {",!
 W "   smb=a.charCodeAt(i)",!
 W "   if (smb>31 && smb < 127 || smb>1000 )",!
 W "     {a1=a1+a.substr(i,1)}",!
 W "   }",!
 ;;W "  alert('CLRFLD2: '+FLD+'='+fld)",!
 W " return a1;",!
 W "}",!
 W !
ASC ;
 W "function Asc(VL)",!
 W " {",!
 W "  VL=VL+'';",!
 W "  var st='';",!
 W "  for (var j=0; j<VL.length; j++)",!
 W "    {st=st+VL.charCodeAt(j)+',';}",!
 W "  st=st.substr(0,st.length-1);",!
 W "  return st;",!
 W " }",!
 Q
CLRNMB ;
 W "function ClearNmb(Vl) ",!
 W "{",!
 W "  var a=Vl+'';",!
 W "  if (a.length === 0) {return '';}",!
 W "   var i ;",!
 W "   var a1='' ",!
 W "   for (i=0 ; i <a.length ; i++ )",!
 W "     {",!
 W "       if (Vl.charCodeAt(i) <45 || Vl.charCodeAt(i) > 57 ) continue ;",!
 W "       if (Vl.charCodeAt(i) == 47 ) continue ;",!
 W "       a1=a.substr(i)",!
 W "       break;",!
 W "      }",!
 W "   return a1;",!
 W "}",!
 Q
DT ;
 W "function VldDD(DID)",!
 W " {",!
 W "   var dd=document.getElementById(DID);",!
 W "   if ( dd.value>31 ) {",!
 ;W "      dd.value="""";",!
 W "      dd.select();",!
 W "      dd.focus();",!
 W "   }",!
 W " }",!
 W !
 W "function VldMM(MID)",!
 W " {",!
 W "   var mm=document.getElementById(MID);",!
 W "   if (mm.value>12 ) {",!
 ;W "      mm.value="""";",!
 W "      mm.select();",!
 W "      mm.focus();",!
 W "   }",!
 W " }",!
 W !
 W "function VldYY(YY)",!
 W " {",!
 W " }",!
 W !
 Q
READONLY ;
 W !
 W "function ReadOnly(RKV)",!
 W "{",!
 W "var rkv=document.getElementById(RKV);",!
 W "if (rkv===null) {return;}",!
 W "rkv.readOnly=true;",!
 W "}",!
 W !
 Q
DISABLE ;
 W !
 W "function Disable(RKV)",!
 W "{",!
 W "var rkv=document.getElementById(RKV);",!
 W "if (rkv===null) {return;}",!
 W "rkv.disabled=true;",!
 W "}",!
 W !
 Q
SETFOCUS ;
 W !
 W "function SetFocus(RKV)",!
 W "{",!
 W "var rkv=document.getElementById(RKV)",!
 W "if (rkv===null) {return;}",!
 W "rkv.focus();",!
 W "}",!
 W !
 Q
FORMAT ;
 W !
 W "function Format(NMB,DEC)",!
 W "{",!
 W "  if (NMB == null || NMB == undefined ) return ''",!
 W "  if (typeof DEC =='undefined' ) DEC=2",!
 W "  if (NMB.length===0) {NMB=""0.0"";}",!
 W "  if (isNaN(NMB)) {NMB=""0.0"";}",!
 W "  var integ=ParseTxt(NMB,""."",1,1);",!
 W "  var drob=ParseTxt(NMB,""."",2,2);",!
 W "  var lendr=drob.length;",!
 W !
 W "  if (DEC===0) return Math.round(NMB);",!
 W "  if (DEC<0) return Math.round(NMB);",!
 W !
 W "  if (lendr<DEC) ",!
 W "    {",!
 W "      var dr=drob;",!
 W "      for (var i=lendr; i<DEC ; i++ )",!
 W "       {",!
 W "            dr=dr+'0';",!
 W "       }",!
 W "       dr=dr.substr(0,DEC);",!
 W "       return (integ+"".""+dr);",!
 W "    }",!
 W !
 W "  if (lendr>DEC) ",!
 W "    {",!
 W "      var dr=drob.substr(0,DEC);",!
 W "      var drl=+drob.substr(DEC,1);",!
 W "      if (drl>4) {dr=+dr+1;}",!
 W "      dr=dr+''",!
 W "      lendr=dr.length",!
 W "      if (lendr<DEC) ",!
 W "       {",!
 W "         for (var i=lendr; i<DEC ; i++ )",!
 W "            dr='0'+dr;",!
 W "       }",!
 W "      if (lendr>DEC) ",!
 W "       {",!
 W "        integ=+integ+1;",!
 W "        dr='0000000000000'",!
 W "        dr=dr.substr(0,DEC);",!
 W "       }",!
 W "      return (integ+"".""+dr);",!
 W "    }",!
 W "   return NMB;",!
 W "}",!
 W !
 Q
MSG ; --> LenDlm(),ParseTxt()
 W "function Message(txt)",!
 W " {",!
 W "  var a=""""",!
 W "  for (var i=0;i<LenDlm(txt,"","");i++)",!
 W "   {a=a+String.fromCharCode(ParseTxt(txt,",",i+1,i+1))}",!
 W "   alert(a)  ",!
 W " }",!
 Q
NEWORD ;
 W "function NewOrd(jb,code)",!
 W "{",!
 N A,B
 S A="""w3orddet.jsp?JB=""+jb+""&CODE=""+code"
 W " var wn=self.location.replace("_A_"+""&FULLWIN=1"")",!
 W "}",!
 W !
 Q
BACK2MAIN ;
 W "function Back2Main()",!
 W " {",!
 W "  self.location.replace("""_$$MAINWEB^W3PRM_""");",!
 W " }",!
 W !
 Q
MOD ;
 W "function Mod(Nmb1,Nmb2)",!
 W " {",!
 W "  if (Nmb1<0) Nmb1=-Nmb1;",!
 W "  if (Nmb2<0) Nmb2=-Nmb2;",!
 W "  while (Nmb1-Nmb2 >= 0)",!
 W "   {",!
 W "      Nmb1=Nmb1-Nmb2;",!
 W "   }",!
 W "    return Nmb1;",!
 W " }",!
 W !
 Q
ROUNDBUT(ID,TXT,ONCLICK,STYLE,DOP) ;
 D ^W4BUTTON(ID,TXT,ONCLICK,$G(STYLE),$G(DOP))
 Q
 W $$ROUNDTB(ID,$G(TXT),$G(ONCLICK),$G(STYLE),$G(DOP)) ;
 Q
 ;
ROUNDTB(ID,TXT,ONCLICK,STYLE,DOP) ;
 N DOPIMG,DOPHEIGHT,BG,WD,FS S BG="",FS=""
 S DOPIMG="",HG=20,WD=""
 ;
 I $G(DOP)="",$$GET^%W1PRM("COLOR")'["<UNDEF" D
 .N CL S CL=$$GET^%W1PRM("COLOR")
 .I $G(^[$$^W3MAIN]W3COLOR(CL,"BTNWH")) S DOP="wh,22"
 ;
 I $G(DOP)="-" S DOP=""
 ;
 I $G(DOP)'="" D
 .S DOPIMG=$P(DOP,",")
 .S:$P(DOP,",",2) HG=$P(DOP,",",2)
 .S BG=$P(DOP,",",3)
 .S WD=$P(DOP,",",4)
 .S FS=$P(DOP,",",5)
 ;
 ;;I $$GET^%W1PRM("REST"),DOPIMG="" S DOPIMG="rest"
 ;
 N TB
 S TB="<table id="""_ID_""" dir="""_$$^%W1DIR_""" border=""0"""
 S TB=TB_" cellspacing=""0px"" cellpadding=""0px"""
 S TB=TB_" style=""border-spacing:0px;cursor:default"_$S($L(BG):";background-color:"_BG,1:"")
 S TB=TB_";"_$$FONTFM^W3CSS
 I FS S TB=TB_";font-size:"_$$^W3FSZ(FS)
 ;
 S TB=TB_""""
 I HG S TB=TB_" height="""_HG_"px"""
 I WD S TB=TB_" width="""_WD_"px"""
 S TB=TB_">"
 S TB=TB_"<tr>"
 ;
 I $$^%W1DIR="RTL" D
 .S TB=TB_"<td style=""padding:0""><img src=""w3roundr"_DOPIMG_".png"" /></td>"
 I $$^%W1DIR="LTR" D
 .S TB=TB_"<td style=""padding:0""><img src=""w3roundl"_DOPIMG_".png"" /></td>"
 ;
 S TB=TB_"<td style=""background: url(w3roundm"_DOPIMG_".png)"
 I WD S TB=TB_";width:100%"
 S TB=TB_";padding:0;text-align:center;"_$G(STYLE)_""" "_$$^W4TOUCH_"="""_ONCLICK_""">&nbsp;"_TXT_"&nbsp;</td>"
 ;
 I $$^%W1DIR="RTL" D
 .S TB=TB_"<td style=""padding:0""><img src=""w3roundl"_DOPIMG_".png"" /></td>"
 I $$^%W1DIR="LTR" D
 .S TB=TB_"<td style=""padding:0""><img src=""w3roundr"_DOPIMG_".png"" /></td>"
 ;
 S TB=TB_"</tr></table>"
 Q TB
 ;
 ;
NOSELECT ;
 Q  ; -- 08/06/23
 ;
 W "<script>",!
 ;
 W "function disabletext(e){",!
 W "return false",!
 W "}",!
 ;
 W "function reEnable(){",!
 W "return true",!
 W "}",!
 ;
 W "var b=navigator.appName;",!
 W "if (b.indexOf(""Explorer"")>-1 )",!
 W " { document.onselectstart=new Function (""return false"") }",!
 W "else if (b.indexOf(""Opera"")>-1 )",!
 W " { document.onmousedown=new Function (""return false"") }",!
 W "else {",!
 W " if (window.sidebar){",!
 W "   document.onmousedown=disabletext",!
 W "   document.onclick=reEnable",!
 W "     }",!
 W " }",!
 W "</script>",!
 Q
CLEARSEL ;
 W "<script>",!
 W "function clearSelection() {",!
 W " var sel ;",!
 ;;W " alert(0)",!
 W " if(document.selection && document.selection.empty)",!
 W " {",!
 ;;W "  alert(1)",!
 W "  document.selection.empty() ;",!
 W " }",!
 W " else if(window.getSelection)",!
 W " {",!
 W "  sel=window.getSelection();",!
 ;;W "  alert(sel)",!
 W "  if(sel && sel.removeAllRanges)",!
 W "  { sel.removeAllRanges() ;}",!
 W " }",!
 W "}",!
 W "</script>",!
 Q
 ;
NOSELTBL(TBL) ;
 W "<script>",!
 W "function disabletext(e){",!
 W "return false",!
 W "}",!
 ;
 W "function reEnable(){",!
 W "return true",!
 W "}",!
 ;
 W "var b=navigator.appName;",!
 W "if (b.indexOf(""Explorer"")>-1 )",!
 W " { GetId('"_TBL_"').onselectstart=new Function (""return false"") }",!
 W "else if (b.indexOf(""Opera"")>-1 )",!
 W " { GetId('"_TBL_"').onmousedown=new Function (""return false"") }",!
 W "else {",!
 W " if (window.sidebar){",!
 W "   GetId('"_TBL_"').onmousedown=disabletext",!
 W "   GetId('"_TBL_"').onclick=reEnable",!
 W "     }",!
 W " }",!
 W "</script>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1JSP
%W1JSP ; [ 22.09.26 09:09 ] [ 03.03.21 10:29 ] [ 25.10.09 19:30 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
MF X %chista
 R !!,"FILE :" S %LS=40 D ^%ZMSL Q:%S=""!(%TO="END")
 S FILE=%S
 S FFILE=$$FULL^%L1WEBJS(FILE)
 I $$^%L1ZOS(10,FFILE)>0 U 0 W !!," FILE "_FFILE_" EXIST ! " H 3 G MF
MT R !!,"TITLE:" S %LS=40,%S="" D ^%ZMSL G:%S=""!(%TO="END") MF  S TITLE=%S
 R !!,"CAPTION :"
 W ! S %LS=40,%S="",%XX=50,%YY=$Y X %POSIC S %INV="" D ^%L1ZMS G:%S=""!(%TO="END") MT  S HD=%S
 ;
 D ^%L1WEBJS(FILE,TITLE,HD)
 ;
 D ED(FILE)
 Q
 ;
 ;
ED(FILE) ;
 N FFILE,YES,%Q,%W1JSP
 S FFILE=$$FULL^%L1WEBJS(FILE)
 c FFILE
 ;
 o FFILE:(readonly:record=2048:rewind)
 ;;S $ZT="g REOF"
 N I,X S I=0 K ^S000($P)
 f  u FFILE r X  Q:$ZEOF  S I=I+1,^S000($P,I)=$TR(X,$C(9)," ")
REOF ;
 c FFILE
 K ^S222($J) M ^S222($J)=^S000($P) ; -- OLD VERSION
 N %W1JSP,%TIP S %W1JSP="",%TIP="G"
 D ^%S2ERG
 K %Q  S %Q("Z")="SAVE" D N^%S1ASK I 'YES G END
 N NMO,NM S NMO=$P(FFILE,"/",$L(FFILE,"/"))
 S NMO=$P(NMO,".")
 N ZAPR S ZAPR="  NAME ["_NMO_"] :"
 W ZAPR S %ZMSL("LS")=15,%S="" D ^%L1ZMSL S NM=%S
 I NM="" S NM=NMO
 S FFILE=$$FULL^%L1WEBJS(NM)
 O FFILE:(WRITE:NEWVERSION:REWIND)
 U FFILE
 N I F I=1:1 Q:'$D(^S000($P,I))  W ^(I),!
 C FFILE
 ;
 S %PROG=$$FUNC^%UCASE(FILE)
 K ^UTILITY($J),^TMPS111($J)
 M ^UTILITY($J,1,"[ NEW ]")=^S000($P)
 M ^UTILITY($J,2,"[ OLD ]")=^S222($J)
 S ^UTILITY($J,1)="[ NEW ]"
 S ^UTILITY($J,2)="[ OLD ]" D ^%L2RCMP
 ;
 S DIR=$ZGBLDIR
 M ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=^TMPS111($J)
 S ^[DIR]%ERGS(+$H,%PROG)=$$^%L1ZU(0)
 W !,"COMMENT :",! S %S="" D ^%ZMSL S ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=%S
 ;;S ^[DIR]%ERGS(+$H,%PROG)=$ZROU
 K ^TMPS111($J),^S222($J)
END K ^S000($P) Q
 ;
 ;
VW(FILE) ;
 K ^TMPS111($J)
 N FFILE,YES,%Q
 S FFILE=$$FULL^%L1WEBJS(FILE)
 c FFILE
 o FFILE:(readonly:record=2048:rewind)
 S $ZT="g REOFVW"
 N I,X S I=0
 f  u FFILE r X S I=I+1,^TMPS111($J,I)=$TR(X,$C(9)," ")
REOFVW c FFILE
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1JSPID
%W1JSPID(%PKG) ; [ 09.04.07 14:57 ] [
 W "<m:if expr='$D(%ARG(""JB""))' >",!
 W "  <m:setSessionId expr='%ARG(""JB"")' />",!
 W "  <m:set varName=""JB"" varValue='%ARG(""JB"")' />",!
 W "</m:if>",!
 W "<m:if expr=""'$D(JB)"" >",!
 W "   <m:set varName=""JB"" varValue='$$^%W1SsID("""_%PKG_""")' />",!
 W "   <m:setSessionId expr='JB' />",!
 W "</m:if>",!
 W "<br>",!
 W "<m:out expr='""Session ID=""_JB' />",!
 Q

%W1KILL
%W1KILL ; [ 09.04.07 10:26 ] [
 K
 Q
KS(JB) ;
 I $G(JB)="" Q
 Q

%W1LNG
%W1LNG(STAM) ; [ 11.08.25 11:38 ] [ 22.07.17 13:24 ] [ 16.07.17 18:32 ] 
 N (JB,%W1LNG)
 I $G(%W1LNG)?1U.U Q %W1LNG
 S %LNG=$$GET^%W1PRM("LNG")
 I $L(%LNG),%LNG'["UNDEF" S %W1LNG=%LNG G END
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 ;
 I MSD,$L($$LNG^W3PRM(MSD)) S %LNG=$$LNG^W3PRM(MSD) G END
 ;
 N MSDR S MSDR=$$GET^%W1PRM("MSDR")
 I MSDR Q $$LNG^W3MSDR(MSDR)
 S %LNG=$G(^[$$^%W1UCI(+$G(JB))]W1LNG,"H")
END I %LNG'?1U.U S %LNG="H"
 Q %LNG
 ;
SHIFT(STAM) ;
 I $$%W1LNG="H" Q 1392
 I $$%W1LNG="E" Q 0
 Q 0
 ;
ENG ; 
 S %W1LNG="E" D ^%L1TS
 Q
HBR ; 
 S %W1LNG="H" D ^%L1TS
 Q
 ;
TMPENG() ;
 N LNG S LNG=$G(@$$^W4GL("W1LNG"))
 I LNG="H"!(LNG=""),$$GETP^%W1PRM("LNG")="E" Q 1 
 Q 0 
 
 
 
 

%W1MN
%W1MN ; [ 22.06.10 03:47 ] [
MENUCOLOR ;
 W " style=""cursor:pointer;color:"_$$BGHD^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"""
 W " onMouseOver=""this.style.color='blue'"""
 W " onMouseOut=""this.style.color='"_$$BGHD^W3CSS($$COLOR^W3CSS)_"'"""
 Q

%W1MROOT
%W1MROOT() ;  [ 15.10.25 14:59 ] [ 08.09.25 10:00 ] [ 31.08.25 09:17 ] 
 N (JB)
 I '$G(JB) S JB=0
 S FLOU="/tmp/w1mpath"_+$H_"_"_JB
 S CMD="which mumps > "_FLOU
 S PATH=""
 ZSY CMD
 O FLOU:(READONLY:REWIND):2 
 U FLOU R PATH C FLOU
 ZSY "rm "_FLOU
 Q PATH
 
 
 
 
 
 

%W1MSG
%W1MSG ; [ 03.05.07 14:39 ] [
 ;;W "<script type=""text/javascript"">",!
 W "function MyMsg(MSG)",!
 W "{",!
 W "  myMsg=window.open('','_blank','width=300,height=160,top=240,directories=0,resizeble=0,scrollbars=0,toolbars=0,location=0')",!
 W "  var TXT=MSG",!
 W "  myMsg.document.write(""<body style='background-color:ffffff' >"")",!
 W "  myMsg.document.write(""<p></p>"")",!
 W "  myMsg.document.write(""<p>"")",!
 W "  myMsg.document.write(""<H2 style='text-align:center ; color:red '>"")",!
 W "  myMsg.document.write(TXT)",!
 W "  myMsg.document.write(""</H2>"")",!
 W "  myMsg.document.write(""</p>"")",!
 W "  myMsg.document.write(""</body>"")",!
 ;;S BTN="<input type='button' onclick='CloseWindow(this)' value='OK' />"
 ;;W "  myMsg.document.write("""_BTN_""")",!
 W "  myMsg.focus()",!
 W "  var t=setTimeout(""myMsg.close()"",5000)",!
 W "}",!
 ;
 W "function CloseWindow(Wnd)",!
 W "{",!
 W "  Wnd.close()",!
 W "}",!
 ;
 ;;W "</script>",!
Q

%W1PC
%W1PC(%REPN) ;                                [ 19.03.25 14:11 ] [ 18.03.25 10:31 ] [ 16.03.25 18:15 ] 
 ;INPUT :%REPN - REPORT CODE
 ;       %REPN(... - REPORT PARAMETERS
 ;
 ;       %L1PC("SHEIL") - PROG FOR SHEILTA
 ;       %L1PC("SHEIL1") - DOP. ZAPROSY
 ;
 ;       ^rep(%REPN,"MIUN","PROG") - PROGR. VMESTO PROC. MIUN ( -> ^TREPK(%L3MYDVN))
 ;       ^rep(%REPN,"SIX") - GORIZ. COMM. FOR SIKUMIM
 ;
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"M2")) X ^("M2") S OUTFL=@^rep(%REPN,0,A,"OUT") D SAVFL Q
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"FILE")) D  Q
 ; .N FILE S FILE=^rep(%REPN,0,A,"FILE") S OUTFL=$G(@FILE@(INFL)) D SAVFL
 ;-------------------------------------------------------------------
BG ;
 K (%REPN,%L1PC,MAS,JB,%ARG,%REM)
 I %REPN["m" S %REPN=$P(%REPN,"m")
 Q
 ;
ISQUERY(STAM) ;
 I $G(%REPN)="" S %REPN=$G(@$$^%W1GLPRM("REPN")) I %REPN="" Q "NOREPN"
 D GLREP
 I $D(@GLREP@("QUERY")),$O(@GLREP@("QUERY",$O(@GLREP@("QUERY",""))))'="" Q 1
 Q 0
 ;
QUERYMN ;
 N GLREP D GLREP
 K MN N N,I S I=0
 I $G(NEWMENU),'$$NEWMENU^W4PRM K NEWMENU
 ;
 I '$G(NEWMENU) D
 .S I=I+1,MN(I)=$$^%W1DICT("BACK")
 ;
 S MA(I)=$$GET^W4STACK("REPBACK",1) ;;$$GETP^%W1PRM("REPBACK")
 I $$US^W4PRSMNU D
 .S MA(I)="Back()"
 ;
 S N="" F  S N=$O(@GLREP@("QUERY",N)) Q:N=""  D
 .S I=I+1,MN(I)=$$SPA^%L1FRM(N)
 .I MN(I)?1N.N." "."-".E D
 ..S MN(I)=$$CLR(MN(I))
 .S MA(I)="w1query.jsp?JB="_JB_"&QUERY="_$$CLWEB^%L1FRM(N)_"&FIRST=1"
 ;
 N ZERO S ZERO=1
 I '$$NEWMENU^W4PRM!$D(NONEWMENU) D
 .D WMN^%W1WEBMN(.MN,.MA,"",1)
 ;
 I $$NEWMENU^W4PRM,'$D(NONEWMENU) D
 .N MN1 M MN1=MN
 .N CUR,ZERO S CUR=0,ZERO=0
 .N MENU S MENU="-"
 .I $L($G(%ARG("REPN"))) S MENU="-^"_$$REPNAME^W4REP($G(%ARG("REPN")))
 .D BODYMENU^%W2WEBMN(MENU,1)
 ;
 Q
 ;
SETPRMQ(QUERY) ;
 I $G(QUERY)="" Q
 I $G(%REPN)="" Q
 M %REPN=@$$^%W1GLPRM@("REPN")
 D GLREP
 N I F I="MIUN","SIK0","CT","FLD0" D
 .S @GLREP@(I)=$G(@GLREP@("QUERY",QUERY,I))
 Q
 ;
V0 ;
 D ^%W1PCIN
 D SHEIL ; ----- VISV. SHEIL.
 D SAVE^%W1PCIN(JB)
 ;
 I $$KBVRT^W4PRM D ^W4KBABC
 Q
 ;
KAV S %STRING=""
 F JJ=1:1:3 S %STRING=%STRING_"-----------------------------------*"
 D SAVST S PRSUM=1
 Q
 ;
SHEIL D SHEIL^%W1PCS
 Q
 ;
LPT ;
  S %EROP=0 I $$^%L1DISP(USTR) Q
  S %DEV="USTR" D ^%L1LPT
  Q
 ;
SHEIL2 D SHEIL2^%W1PCS ;
 Q
SHEIL3 D SHEIL3^%W1PCS
 Q
 ;
SAVST S MONE=$O(@$$^W4MAIN("TREPK")@(999999),-1)+1
 S @$$^W4MAIN("TREPK")@(MONE)=%STRING
 S @$$^W4MAIN("TREPK")=MONE
 Q
GLREP ;
 S GLREP=$$^%W1GLREP
 Q
 ;
INIT ;
 K (JB,%ARG,%REM,%REPN)
 I '$G(%ARG("NOKILLPRM")) K @$$^%W1GLPRM
 K @$$^W4MAIN("TREP")
 K @$$^W4MAIN("TREPK")
 K @$$^W4MAIN("TMPREP")
 K @$$^W4MAIN("TMPREPB")
 Q
 ;
CLR(MN) ;
 N J F J=1:1 Q:$E(MN,J)'?1N&($E(MN,J)'=" ")&($E(MN,J)'="-")
 S MN=$E(MN,J,255)
 Q MN
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1PC0
%W1PC(%REPN) ;                                [ 12.06.09 09:41 ] [ 11.06.09 21:12 ] [ 10.06.09 16:40 ]
 ;INPUT :%REPN - REPORT CODE
 ;       %REPN(... - REPORT PARAMETERS
 ;
 ;       %L1PC("SHEIL") - PROG FOR SHEILTA
 ;       %L1PC("SHEIL1") - DOP. ZAPROSY
 ;
 ;       ^rep(%REPN,"MIUN","PROG") - PROGR. VMESTO PROC. MIUN ( -> ^TREPK(%L3MYDVN))
 ;       ^rep(%REPN,"SIX") - GORIZ. COMM. FOR SIKUMIM
 ;
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"M2")) X ^("M2") S OUTFL=@^rep(%REPN,0,A,"OUT") D SAVFL Q
 ; I $D(^rep(%REPN,0,A,"OUT")),$D(^rep(%REPN,0,A,"FILE")) D  Q
 ; .N FILE S FILE=^rep(%REPN,0,A,"FILE") S OUTFL=$G(@FILE@(INFL)) D SAVFL
 ;-------------------------------------------------------------------
BG ;
 K (%REPN,%L1PC,MAS,JB,%ARG,%REM)
 I %REPN["m" S %REPN=$P(%REPN,"m")
 Q
 ;
ISQUERY(STAM) ;
 I '$D(%REPN) S %REPN=$G(@$$^%W1GLPRM("REPN"))
 D GLREP
 I $D(@GLREP@("QUERY")),$O(@GLREP@("QUERY",$O(@GLREP@("QUERY",""))))'="" Q 1
 Q 0
 ;
QUERYMN ;
 N GLREP D GLREP
 K MN N N,I S I=0
 S I=I+1,MN(I)=$$^%W1DICT("BACK")
 S MA(I)=$$GET^%W1PRM("REPBACK")
 S N="" F  S N=$O(@GLREP@("QUERY",N)) Q:N=""  D
 .S I=I+1,MN(I)=N
 .S MA(I)="w1query.jsp?JB="_JB_"&QUERY="_$$CLWEB^%L1FRM(N)_"&FIRST=1"
 ;
 D WMN^%W1WEBMN(.MN,.MA,"",1)
 Q
 ;
SETPRMQ(QUERY) ;
 M %REPN=@$$^%W1GLPRM@("REPN")
 D GLREP
 N I F I="MIUN","SIK0","CT","FLD0" D
 .S @GLREP@(I)=$G(@GLREP@("QUERY",QUERY,I))
 Q
 ;
V0 ;
 D ^%W1PCIN
 D SHEIL ; ----- VISV. SHEIL.
 D SAVE^%W1PCIN(JB)
 Q
 ;
 ;
Z(STAM) N (%ARG,JB,%REM)
 D GLREP
 I $D(%L1PC("SHEIL")) G S0
 ;
S D SHEIL1^%W1PCS K %L1GET ; ---- VERXN. SHEILTA
 ;
S0 S MM=0,ER=0
 F I=1:1:MAXMIUN I $G(MIUN(I))>MM,$G(MIUN(I))<MAXMIUN S MM=+$G(MIUN(I))
 ;
S1 F I=1:1:MAXMIUN I +$G(MIUN(I))=0 S MM=MM+1,MIUN(I)=MM G S1
 ;
 F IJK=1:1:MAXMIUN I MIUN(IJK)>MAXMIUN S ER="-1;SORTTOOBIG" Q
 I ER<0 Q ER
 ;
 F I=1:1:MAXMIUN F J=I+1:1:MAXMIUN I +MIUN(I),+MIUN(I)=+MIUN(J) S ER="-3;DOUBLESORT" Q
 I ER<0 Q ER
 ;
S3 D SHEIL31^%W1PCS
 ;
S31 S SIKUM=""
S2 ;
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") D
 .S COD=$P(%L1PC("FLD"),"*",IJK) K @("ME"_COD),@("AD"_COD)
 ;
 S %SRKM=0 G:SIKUM M1
 ; ---------- HITUHIM NOSAFIM --------
 S %L1GET="" D SHEIL2 K %L1GET D SHEIL2
 ;
M1 ;
  S J=0 F I=1:1:MAXMIUN D
  .S J=J+1
M2 .I $P($G(@GLREP@("FLD0")),"*",J)="-" S J=J+1 G M2
 .N K F K="MIUN","SIK0","CT" D
 ..S:$P($G(@GLREP@(K)),"*",J)'=$S(K="SIK0":SIK(I),1:@K@(I)) FLMODIF=FLMODIF+1
 ..S $P(@GLREP@(K),"*",J)=$S(K="SIK0":SIK(I),1:@K@(I))
 ;
ZU K %L1PC("L1PCPRM")
 I $$^%L1MRK=1000,$$ADSL^%L1PORT D ^%W1PCSND G:'$G(%L1PCOK) BG I %L1PCOK=1 S %L1PC("L1PCPRM")=""
 ;
 S %GETIN=0
 ;
 I '$D(%L1PC("L1PCPRM")) D ^%W1PCP
 ;
 S KOTNUM=1
 I '$D(@$$^W4MAIN("TREPK")) Q "-3;NODATA"
 ;
ALDSP S %L1PC("FILE")=$$^W4MAIN("TREPK")
 D ^%W1PC1
END K @$$^W4MAIN("TREP"),@$$^W4MAIN("TREPK"),@$$^W4MAIN("TREPK0")
 Q 1
 ;
KAV S %STRING=""
 F JJ=1:1:3 S %STRING=%STRING_"-----------------------------------*"
 D SAVST S PRSUM=1
 Q
 ;
SHEIL D SHEIL^%W1PCS
 Q
 ;
LPT ;
  S %EROP=0 I $$^%L1DISP(USTR) Q
  S %DEV="USTR" D ^%L1LPT
  Q
 ;
SHEIL2 D SHEIL2^%W1PCS ;
 Q
SHEIL3 D SHEIL3^%W1PCS
 Q
 ;
SAVST S MONE=$O(@$$^W4MAIN("TREPK")@(999999),-1)+1
 S @$$^W4MAIN("TREPK")@(MONE)=%STRING
 S @$$^W4MAIN("TREPK")=MONE
 Q
GLREP ;
 S GLREP=$$^%W1GLREP
 Q
INIT ;
 K @$$^%W1GLPRM
 K @$$^W4MAIN("TREP")
 K @$$^W4MAIN("TREPK")
 K %L1PC
 K MAXMIUN
 K COLG,COLGM,SIK,CT,MIUN,QUERY
 K GLOB1,GLOB2
 Q

%W1PC1
%W1PC1 ; [ 15.07.26 17:22 ] [ 15.06.26 09:51 ] [ 19.05.26 15:17 ] 
 N SHLN0 S SHLN0=0
 N ADD
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$$FL D NOSELECT^%W1JS
 D UFL
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 N GLPRM S GLPRM=$$^%W1GLPRM
 ;
 N DTPC1 S DTPC1=$G(@$$^%W1GLPRM@("VAL","METRH"))
 I 'DTPC1 S DTPC1=$G(@$$^%W1GLPRM@("VAL","MEDAT"))
 I 'DTPC1 S DTPC1=+$H
 N AHMAM
 S AHMAM=$$MAMD^W4L(DTPC1)
 S %ARG("AHMAM")=AHMAM
 ;
 S %REPN=$G(@$$^%W1GLPRM@("REPN")) I %REPN="" Q
 I '$$FL D
 .I $$GETP^%W1PRM("P1PCBACK")'="NOBACK" D DIVEXC(%REPN,"%W1PCEX")
 D UFL
 ;
 I %REPN="W4GAPNTD" D PROT
 ;
 W "<table width=""45%"" border=0 cellspacing=""0"" dir="""_$$^%W1DIR_""" >",!
 I $$^W4TABLET'=2 D TRISSUE
 W "<tr><td dir="""_$$^%W1DIR_""" style=""color:"_$$BGHD^W3CSS($$COLOR^W3PRM)_";font-size:"_$$^W3FSZ(18)_";text-align:center"">"
  W $$H2U^%L1FRM($$REPNAME^%W1PCS)
  I %REPN="DLVLK" D
 .S KINDDAT1=$$^%W1DICT($$HEADDAT^W4DLVLK)
 .S SHLN0=1
 .W "<br><span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"
 . W KINDDAT1
 .W "</span>"
 W "</td>",!
 W "</tr>",! 
 ;
 D GET^%W1PCIN(JB)
 ;
 ;;S ^AA("REPMAM","REPN")=$G(%REPN)
 ;;S ^AA("REPMAM","REPMAM")=$$REPMAM($G(%REPN))
 ;
 I $$REPMAM($G(%REPN)) D
 .W "<tr>"
 . W "<td >"
 . D TBMAM
 . W "</td>"
 .W "</tr>",! 
 .S SHLN0=SHLN0+1
 ;
 I $G(%REPN)="W4PRHL" D
 .N PRASR S PRASR=$$GETP^%W1PRM("PRASR")
 .
 .W "<tr>"
 . W "<td style=""text-align:center;font-weight:bold"">"
 .  W $$^%W1DICT($S(PRASR:"CREDITSALESONLY",1:"ALLSALES"))
 . W "</td>"
 .W "</tr>",! 
 ;
 I $G(%REPN)="W4DPMH" D
 .N PRTIP S PRTIP=+$$GETP^%W1PRM("W4DPNHTIP")
 .
 .W "<tr>"
 . W "<td style=""text-align:center;font-weight:bold"">"
 .  W $$^%W1DICT($S(PRTIP:"SHOWDMSHNTIPS",1:"NOSHOWDMSHNTIPS"))
 . W "</td>"
 .W "</tr>",! 
 ;
 I $$DATREP D
 .W "<tr>"
 .W "<td style=""text-align:center"">"
 . D SHOWDAYS
 .W "</td>",!
 .W "</tr>",!
 .W "<tr><td>&nbsp;</td></tr>",!
 .S SHLN0=SHLN0+2
 ;
 W "</table>",!
 ;
 ;
 N I,J,A,PRTOT,PRHEAD
 D GETPRM S RSIZE=42,SHLN1=$G(SHLN0),SHLN=0
 I $G(%REPN)="W4CLKT",$$DELIS^W4PRM S RSIZE=36
 N HGLOGO S HGLOGO=$G(@$$^W4PL@("LOGO","HEIGHT"))
 I HGLOGO>20,'$G(@$$^W4PRM@("NOPCLOGO")) S SHLN1=SHLN1+(HGLOGO\30)+5
 E  S SHLN1=SHLN1+8
 ;
 I $D(@$$^W4MAIN("TMPPROT"))>9 D
 .W "<table>",!
 .N N S N="" F  S N=$O(@$$^W4MAIN("TMPPROT")@(N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..W "<tr><td>"_$$H2U^%L1FRM(A)_"</td></tr>",!
 .W "</table>",!,"<br>",!
 ;
 ;---------------------- REPORT PARAMETERS ----------------
 W "<table width=""45%"" border=0 cellspacing=""0"" dir="""_$$^%W1DIR_""" >",!
  N IJK,%RNG,DL,TYP,MCOD
  D REPPRM
  ;
  F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK)  D SHOWRNG(COD) S MCOD(COD)=""
  ;
  F %I=1:1:$L(%FLDMIN,"*")  D
  .S COD=$P(%FLDMIN,"*",%I) Q:COD?.P  Q:$D(MCOD(COD))
  .D SHOWRNG(COD) S MCOD(COD)=""
  ;
  F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK)  D SHOWRNG(COD) S MCOD(COD)=""
  ;
 W "</table>",!
 W "<br />",!
 ;
 ;
 ;---------------- REPORT TABLE ---------------------
 D OPTBL(1)
 S FIRSTCOL=COL01+1
 ;
 ;--------------------- BODY ----------------
 N AO S AO="",PRHD2=0
 N A,I,J,OKEQ
 ;
 N GLPRM S GLPRM=$$^%W1GLPRM
 ;
 ;;N DTPC1 S DTPC1=$G(@$$^%W1GLPRM@("VAL","METRH"))
 ;;I 'DTPC1 S DTPC1=$G(@$$^%W1GLPRM@("VAL","MEDAT"))
 ;;I 'DTPC1 S DTPC1=+$H
 ;;N AHMAM
 ;;S AHMAM=$$MAMD^W4L(DTPC1)
 ;
 ;
 F I=1:1 Q:'$D(@GLPRM@("GLOUT",I))  D
 .S A=$G(^(I))
 .
 .I A?.P1"#"."#".P D NEWPAGE(I+1) Q
 .
 .I A?.P,A'?.P1"="."=".P,PRTOT S PRHEAD=1,PRTOT=0 D  Q
 ..K ADD ; --- 04.10.22
 ..D SHLN(0)
 ..W "<tr>",!
 ..F J=FIRSTCOL:1:$L(STO,"*") D
 ...W "<td>&nbsp;</td>",!
 ..W "</tr>",!
 .
 .I A?.P1"="."=".P S PRTOT=$S($G(PRTOT):2,1:1) Q
 .
 .I $G(%ARG("SIK")),'$G(PRTOT) Q
 .
 .I 'PRTOT,'PRHD2 D
 ..S OKEQ=1
 ..F J=1:1:COL01 I $P(A,"*",J)'=$P(AO,"*",J) S OKEQ=0 Q
 ..I 'OKEQ D HEAD2(I)
 .
 .S PRHD2=0
 .;
 .D SHLN(1)
 .W "<tr "
 .N FSZ S FSZ=$$FSZ(LENST)
 .;;I PRTOT=2!(PRTOT=1&'$G(%ARG("SIK"))) S FSZ=(FSZ+1)_"pt"
 .W " style=""font-size:"_FSZ
 .I '(I#2),'PRTOT W ";background-color:#eae0d3"
 .I PRTOT=2!(PRTOT=1&'$G(%ARG("SIK"))) D
 ..W ";font-weight:bold;background-color:lightyellow"
 .W """ "
 .W ">",!
 .S TD="<td"
 .I PRTOT S TD=TD_" style=""font-weight:bold;border-top-style:solid;border-top-width:1px"""
 .
 .W "<td style=""color:darkblue;font-size:"_$$^W3FSZ(7)_";font-weight:bold"" "
 .W ">&nbsp;"_SHLN_"</td>"
 .
 .F J=FIRSTCOL:1:$L(STO,"*") D
 ..W "  "_TD
 ..N FLD S FLD=$P(STO,"*",J)
 ..I $G(PRM(FLD,"DR"))?1N W " dir=""LTR"" align=""right"""
 ..I $G(PRM(FLD,"DR"))="" W " dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN
 ..
 ..D
 ...I $$ORD(FLD),%REPN="W4LKTN" D SNIFORD(A,8,10) Q
 ...
 ...I $$ORD(FLD),%REPN="W4MZB" D SNIFORD(A,2,4) Q
 ...
 ...I $$ORD(FLD),%REPN="W4SLNET" D SNIFORD(A,1,6) Q
 ...
 ...I $$ORD(FLD),%REPN="W4DPOS",$G(QUERY)["mikix`z itl" D SNIFORD(A,2,5) Q
 ...I $$ORD(FLD),%REPN="W4DPOS",$G(QUERY)["mitipq itl" D SNIFORD(A,1,5) Q
 ...
 ...I $$ORD(FLD),%REPN="HZHMM" W " onClick=""ShowCCOrder('"_$P(A,"*",J)_"',this)"" style=""cursor:pointer"" " Q
 ...
 ...I $$ORD(FLD) W " onClick=""ShowOrder('"_$P(A,"*",J)_"',this)"" style=""cursor:pointer"" " Q
 ...
 ...I $$CUST(FLD) D  Q
 ....I $G(@GLPRM@("REPN"))="DLVLK" D  Q
 .....N MEDAT S MEDAT=$ZD($G(@GLPRM@("VAL","METRH")),"DD.MM.YY")
 .....N ADDAT S ADDAT=$ZD($G(@GLPRM@("VAL","ADTRH")),"DD.MM.YY")
 .....W " onClick=""ShowDlvCustReport('"_$P(A,"*",J)_"',this,'"_MEDAT_"','"_ADDAT_"')"" style=""cursor:pointer"" "
 ....W " onClick=""ShowCust('"_$P(A,"*",J)_"',this)"" style=""cursor:pointer"" "
 ...
 ...I $$INVOICE(FLD) D TRG^W4DHB($P(A,"*",J)) Q
 ...
 ...N REPNAME S REPNAME=$G(@GLPRM@("REPN"))
 ...I REPNAME="MLTNIN" D  Q
 ....I $G(PRM(FLD))'["hixt cew" Q
 ....N PAR S PAR=$P(A,"*",J)
 ....N MEDAT S MEDAT=$ZD($G(@GLPRM@("VAL","MEDAT")),"DD.MM.YY")
 ....N ADDAT S ADDAT=$ZD($G(@GLPRM@("VAL","ADDAT")),"DD.MM.YY")
 ....W " style=""cursor:pointer"" "
 ....W " onClick=""CurrentBorder(this);ShowItemReport('"_PAR_"','"_MEDAT_"','"_ADDAT_"','ifr')"""
 ...
 ...;;S ^AA("W1PC1","REPNAME",I,J)=REPNAME
 ...;;S ^AA("W1PC1",I,"A")=A
 ...;;S ^AA("W1PC1",I,J,"FLD")=FLD
 ...I $E(REPNAME,1,2)="ML"!($E(REPNAME,1,4)="W4ML")!(REPNAME="W4RMMLY"),FLD="PAR"!(FLD="PRT") D  Q
 ....N PAR S PAR=$P(A,"*",J)
 ....W " style=""cursor:pointer"" "
 ....W " onClick=""CurrentBorder(this);ShowMlyItemCard('"_PAR_"',this)"""
 ...
 ...I $$OVED(FLD) D
 ....I $G(@GLPRM@("REPN"))'="W4CLKT" Q
 ....N MEDAT S MEDAT=$G(@GLPRM@("REPN","MEDAT"))
 ....N ADDAT S ADDAT=$G(@GLPRM@("REPN","ADDAT"))
 ....N FLSLR S FLSLR=$G(@GLPRM@("REPN","FLSLR"))
 ....D DHOV^W4CLKT($P(A,"*",J),MEDAT,ADDAT,FLSLR) Q
 ...
 ...I %REPN="W4DCB",FLD="CB" D
 ....W " style=""cursor:pointer"" "
 ....W " onClick=""CurrentBorder(this);ShowReceipt('"_$P(A,"*",2)_"','"_$P(A,"*",5)_"','ifr')"""
 ...
 ...D
 ....N DLD,VL S VL=$P(A,"*",J)
 ....I VL?."+"."-".1N.N.".".N D
 .....S DLD=$G(PRM(FLD,"DLD"))
 .....I DLD,+VL=0 W " style=""color:grey"" "
 .....I VL<0 W " style=""color:red"" "
 ..
 ..N VL S VL=$P(A,"*",J)
 ..N VL0 S VL0=VL
 ..;
 ..I $$LMAM,'$$EILAT(A),$$RKVMAM(J) D
 ...S VL=$J(VL*100/(100+AHMAM),5,5)
 ..;
 ..I $$LMAM,$$EILAT(A),$$RKVMAM(J),'PRTOT D
 ...S ADD(J)=$G(ADD(J))+(VL0*AHMAM/(100+AHMAM))
 ..
 ..I $$LMAM,$$RKVMAM(J),PRTOT D
 ...S VL=VL+$G(ADD(J))
 ..
 ..W ">&nbsp;"_$$OUT(FLD,VL)_"&nbsp;</td>",!
 .W "</tr>",!
 .
 .S AO=A
 ;
 W "</table>",!
 D PGBREAK
 W "</div>",!
 Q
 ;
 ;
OUT(FLD,VL) ;
 I $G(FLD)="" Q "&nbsp;"
 N NM,DL,DLD,TP,I,J,OU
 ;;M ^AA("W1PC1-OUT","PRM")=PRM
 S NM=$G(PRM(FLD))
 S DL=$G(PRM(FLD,"DL"))
 S DLD=$G(PRM(FLD,"DLD"))
 S TP=$G(PRM(FLD,"TP"))
 ;
 I VL?1"-"."-".P Q "&nbsp;"
 ;
 I TP="D",$TR(VL,"./","")?4N.N Q $$^%L1DC(VL,1)_"<span dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ(7)_""">"_$$H2U^%L1FRM($$^%L1DC(VL,9))_"'</span>"
 ;
 I VL?."+"."-".1N.N.".".N D  Q OU
 .S OU=VL ;;S OU=$S(DLD:$J(VL,DL,DLD),1:$J(VL,DL,0))
 .I $G(DLD) S OU=$J(VL,DL,DLD)
 .I OU["." S OU=$$ZPT^%L1FRM(OU)
 .I $G(%REPN)="W4LEVD"!($G(%REPN)="W4LVDT"),NM["zery k""dq",VL,VL[".",'$$GETP^%W1PRM("DECHOUR") D
 ..N DR S DR=$P(VL,".",2) I $L(DR)=1 S DR=DR_"0"
 ..S OU=$P(VL,".")_":"_$TR($J(DR*.6,2,0)," ",0)
 .;;I DLD,+VL=0 S OU="<span style=""color:grey"">"_OU_"</span>"
 .;;I VL<0 S OU="<span style=""color:red"">"_OU_"</span>"
 ;
 I VL?1U.P.U Q VL
 ;;I $$PAPJ^W4PRM,%REPN["DPAY",VL["`""k" S VL="htib + `""k"
 Q $$H2U^%L1FRM(VL)
 ;
 ;
GETPRM ;--> STO,PRM
 K PRM S LENST=0
 D GET^%W1PCIN(JB)
 S STO=$G(@$$^%W1GLPRM@("COD"))
 ;W "STO="_STO_" L1PC(COD)="_$G(%L1PC("COD"))
 N FLD,I
 F I=1:1:$L(STO,"*") D
 .S FLD=$P(STO,"*",I) Q:FLD=""
 .N NM,DL,DLD,TP S NM=$$NM^%W1PCRKV(%REPN,FLD)
 .S DL=$$DL^%W1PCRKV(%REPN,FLD)
 .S DLD=$$DR^%W1PCRKV(%REPN,FLD)
 .S TP=$$TYP^%W1PCRKV(%REPN,FLD)
 .S PRM(FLD)=NM
 .S PRM(FLD,"DL")=DL
 .S PRM(FLD,"DLD")=DLD
 .S PRM(FLD,"TP")=TP
 .S PRM(FLD,"DR")=$P($P(TP,";",2),",",2)
 .S LENST=LENST+DL+1
 Q
 ;
NEWPAGE(I)
 S PRTOT=0,PRHEAD=0
 I '$D(@$$^%W1GLPRM@("GLOUT",I)) Q
 W "</table>",!
 D PGBREAK
 D OPTBL(I)
 Q
 ;
OPTBL(NEWLN) ;
 S COL0=$G(@$$^%W1GLPRM@("COL0"))
 S COL01=$G(@$$^%W1GLPRM@("COL01"))
 N ST S ST=$G(@$$^%W1GLPRM@("GLOUT",NEWLN)) ;;Q:ST=""
 ;
 I COL0 D HEAD1 ; --- HEADER 1
 ;
 ;
 S PRTOT=0,PRHEAD=0
 ;-------------------- TABLE GROUP HEADER --------------
 D HEADG
 ;
 Q
 ;
HEAD1 ;
 W "<table dir="""_$$^%W1DIR_""" rules=""rows"" cellpadding=""5"" style=""font-weight:bold"">"
 D SHLN(0)
 W "<tr align=""center"""
 W ">"
 N J F J=1:1:COL0 D
 .N FLD S FLD=$P(STO,"*",J)
 .W "<td>"_$$H2U^%L1FRM($G(PRM(FLD)))_"</td>"
 .W "<td>&nbsp;</td>"
 W "</tr>",!
 ;
 D SHLN(0)
 W "<tr align=""center"">"
 N J F J=1:1:COL0 D
 .W "<td>"_$$OUT($P(STO,"*",J),$P(ST,"*",J))_"</td>"
 .W "<td>&nbsp;</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
HEAD2(NEWLN) ;
 N ST S ST=$G(@$$^%W1GLPRM@("GLOUT",NEWLN)) Q:ST=""
 I COL01>COL0 D
 .D SHLN(0)
 .W "<tr style=""text-align:center;font-weight:bold;color:darkgreen"" >"
 .W "<td colspan="""_($L(STO,"*")-COL01)_""">"
 . W "<table width=""100%"" >"
 . D SHLN(0) W "<tr>"
 . N WD S WD=20 I COL01>COL0 S WD=100/(COL01-COL0) I WD>33 S WD=33
 . N J F J=COL0+1:1:COL01 D
 .. N FLD S FLD=$P(STO,"*",J)
 .. W "<td style=""width:"_WD_"%;color:darkgreen;text-decoration:underline"">"
 ..  W "&nbsp;"_$$H2U^%L1FRM($G(PRM(FLD)))_" : "
 ..  W "<span style=""font-weight:bold;color:"_$$BGHD^W3CSS($$COLOR^W3PRM)_""">"_$$OUT(FLD,$P(ST,"*",J))_"</span>&nbsp;"
 .. W "</td>"
 . W "<td width="_(100-(WD*(COL01-COL0)))_"%>&nbsp;</td>"
 . W "</tr></table></td>"
 .W "</tr>",!
 Q
 ;
HEADG ;
 N J,FLD,WD
 N COLGR S COLGR=$L(STO,"*")-COL01
 I COLGR<7 S WD=COLGR*15_"%"
 E  S WD="100%"
 ;
 N SDL,FLDJ S SDL=0
 F J=COL01+1:1:$L(STO,"*") D
 .S FLDJ=$P(STO,"*",J)
 .S SDL=SDL+$G(PRM(FLDJ,"DL"))
 ;
 W "<table id=""tbrep"" border=0 width="""_WD_""" dir="""_$$^%W1DIR_""" cellspacing=""0"" rules=""none"" style=""table-layout:fixed;color:black"">",!
 D SHLN(0)
 W "<tr name=""trth"" style=""border-style:solid;border-width:1px"
 W ";font-size:"_$$FSZ(LENST,1)
 W """>",!
 N TH S TH="<th style=""border-bottom-style:solid;border-bottom-width:1px"
 W TH_";font-size:"_$$^W3FSZ(7)_";font-weight:bold"" width=""2%"">"_$$^%W1DICT("LINE")_"</th>"
 ;
 N WDJ
 F J=COL01+1:1:$L(STO,"*") D
 .S FLDJ=$P(STO,"*",J)
 .I FLDJ="" S FLD="&nbsp;"
 .E  S FLD=$$OUT(FLDJ,PRM(FLDJ))
 .S WDJ=0 I SDL S WDJ=$J($G(PRM(FLDJ,"DL"))/SDL*100,0,0)
 .I WDJ<5 S WDJ=5
 .W TH_";width:"_WDJ_"%"">"_FLD_"</th>",!
 W "</tr>",!
 Q
 ;
FSZ(LENST,PR) ;
 ;;N SZ S SZ=$S($G(LENST)>120:7,$G(LENST)>100:8,$G(LENST)>80:9,1:10)
 N SZ S SZ=$S($G(LENST)>120:9,$G(LENST)>100:10,1:11)
 I $$1024^W4WDSCR S SZ=SZ-1
 S SZ=SZ+$G(PR)
 Q $$^W3FSZ(SZ)
 ;
SHLN(PR) ;
 I SHLN1+1>RSIZE D
 .W "</table>",!
 .D PGBREAK
 .I '$$FL W "<br /><br />"
 .S SHLN1=2 D HEADG
 ;
 I $G(PR) S SHLN=SHLN+1
 S SHLN1=SHLN1+1
 Q
 ;
PGBREAK ;
 I $$FL W "<br>",! S SHLN1=0 Q
 W "<p style=""page-break-before:always"">",! S SHLN1=0
 Q
 ;
SHOWRNG(COD) ;
 I '$D(@$$^%W1GLREP@(0,COD)) Q
 N VLME,VLAD,NM,DL,TYP
 S DL=$$DL^%W1PCRKV(%REPN,COD)
 S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 S VLME=$G(@("ME"_COD))
 S VLAD=$G(@("AD"_COD))
 I TYP="D",VLME?5N D
 .S VLME=$ZD(VLME,"DD.MM.YY"),VLAD=$ZD(VLAD,"DD.MM.YY")
 S NM=$$NM^%W1PCRKV(%REPN,COD)
 ;
 I VLME=""!(VLME?1"-9"."9"),VLAD?1"9"."9"!(VLAD="") Q
 D SHOWRNG1(NM,VLME,VLAD)
 Q
 ;
 ;
SHOWRNG1(NM,VLME,VLAD) ;
 D SHLN(0)
 W "<tr style=""font-weight:bold"">"
 W "  <td width=""30%"">"_$$H2U^%L1FRM(NM)_"</td>",!
 W "  <td width=""36%"">&nbsp;"_$$^%W1DICT("FROM")_"&nbsp;"_VLME_"</td>",!
 W "  <td width=""34%"">&nbsp;"_$$^%W1DICT("TO")_"&nbsp;"_VLAD_"</td>",!
 W "</tr>",!
 Q
 ;
REPPRM ;
 N MAS,ME,AD,NM,IJK,MCOD,COD,IJK
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) S MCOD(COD)=""
 F IJK=1:1:$L(%FLDMIN,"*") D
 .S COD=$P(%FLDMIN,"*",IJK) Q:COD?.P  S MCOD(COD)=""
 ;
 N N S N="" F  S N=$O(%REPN(N)) Q:N=""  D
 .S COD=$E(N,3,20) Q:COD=""  I $D(MCOD(COD)) Q
 .I $E(N,1,2)="ME" S MAS(COD,"ME")=$G(%REPN(N))
 .I $E(N,1,2)="AD" S MAS(COD,"AD")=$G(%REPN(N))
 ;
 S N="" F  S N=$O(MAS(N)) Q:N=""  D
 .S NM=$G(%REPN(N,"NM"))
 .S ME=MAS(N,"ME")
 .S AD=MAS(N,"AD")
 .D SHOWRNG1(NM,ME,AD)
 Q
 ;
SELSORT ;
 D GETPRM
 N CURSORT S CURSORT=+$G(@$$^%W1GLPRM@("CURSORT"))
 W "<select id=""sort"" onChange=""ChangeSort()"">",!
 N J,JJ S J=0
 W "<option value=""0"">"_$$^%W1DICT("BASICSORT")_"</option>",!
 F JJ=1:1:$L($G(%L1PC("FLD")),"*") D
 .I $P($G(%L1PC("FLD")),"*",JJ)?1"x"1N.N,$P($G(%L1PC("FLD0")),"*",JJ)'="-" D
 ..N FLD S FLD=$P(%L1PC("FLD"),"*",JJ)
 ..S J=J+1
 ..W "<option value="""_J_""""_$S(J=CURSORT:" selected=""selected"" ",1:"")_" >"_$$H2U^%L1FRM($$NM^%W1PCRKV(%REPN,FLD))_"</option>",!
 W "</select>",!
 Q
 ;
SORT(%SORT) ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PUT^%W3DEB("%W1PC1-SORT","%SORT=%SORT")
 N GLTMP,GLCUR,GLBASE
 S GLTMP=$$BG^%W1GLPRM_"""GLTMP"")"
 S GLCUR=$$BG^%W1GLPRM_"""GLOUT"")"
 S GLBASE=$$BG^%W1GLPRM_"""GLBASE"")"
 S @$$^%W1GLPRM@("CURSORT")=%SORT
 ;
 I $P(%SORT,"~",3)?1N D PUT^%W1PRM("DECHOUR",$P(%SORT,"~",3))
 ;
 N AD S AD=$P(%SORT,"~",2)
 S AD=$S(AD:-1,1:1)
 S %SORT=+%SORT
 ;
 D GETPRM
 ;
 K @GLCUR
 ;
 I %SORT=0 Q:'$D(@GLBASE)  D  Q
 .M @GLCUR=@GLBASE
 ;
 N COL01 S COL01=$G(@$$^%W1GLPRM@("COL01"))
 ;
 N J F J=1:1:$L(STO,"*") Q:$P(STO,"*",J)?1"x"1N.N
 N COLRKV S COLRKV=J-1
 ;
 N I,I1,FL,A,IJ,IND
 S I=0,I1=0,FL=0
 ; -- FL - PR. PROST.STR
 K @GLTMP
F101 S I=I+1 I '$D(@GLBASE@(I)) D TMP2CUR(AD) Q
 S A=$G(@GLBASE@(I))
 I A="" S I1=I,FL=0 D TMP2CUR(AD),A2CUR(A) G F101
 ;
 I A?1"#"."#" S FL=0,I1=I D TMP2CUR(AD),A2CUR(A) G F101
 ;
 I A?1"="."="1"*".P D  S FL=1 G F101
 .D TMP2CUR(AD),A2CUR(A)
 .S I=I+1 S A=$G(@GLBASE@(I)) D A2CUR(A)
 ;
 I A?1"-"."-"1"*".P D TMP2CUR(AD),A2CUR(A) S FL=1 G F101
 ;
 I 'FL,$G(@GLBASE@(I-1))'?.P,$G(@GLBASE@(I))'?.P D
 .F IJ=COL01:-1:1 I $P(@GLBASE@(I),"*",IJ)'=$P($G(@GLBASE@(I-1)),"*",IJ) D TMP2CUR(AD) S I1=I-1 Q
 ;
 I 'FL D  G F101
 .S IND=$P(A,"*",COLRKV+%SORT)
 .I IND?.E1A.E D
 ..I $$^%W1DIR="RTL",$$HBR(IND) D  Q
 ...S IND=$$INV^%L1FRM(IND)
 ...S IND=$E(IND_$J("",12-$L(IND)),1,12)
 ..S IND=$$ENG^%L1FRM(IND,12)
 .I IND'?.E1A.E S IND=150000000000+$P(IND,".")
 .S IND="0"_$J(IND,12)_$J(I,5)
 .S @GLTMP@(IND)=A
 ;
 G F101
 ;
 ;
TMP2CUR(AD) N II,N
 S A=$G(@GLBASE@(I))
 S N=""
 ;
 F  S N=$O(@GLTMP@(N),AD) Q:N=""  D
 .S II=$$LASTIND+1
 .S @GLCUR@(II)=$G(@GLTMP@(N))
 ;
 K @GLTMP
 Q
 ;
 ;
A2CUR(A) ;
 S @GLCUR@($$LASTIND+1)=A
 Q
 ;
LASTIND(STAM) ;
 Q $O(@GLCUR@(99999999),-1)
 ;
HBR(STR) ;
 N OK S OK=0
 N J F J=1:1:$L(STR) I $$INVHB^%L1FRM($A(STR,J)) S OK=1 Q
 Q OK
 ;
 ;
DIVEXC(COD,PROG,BCK) ;
 W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 ;
 I $L($G(PROG)) D
 .D @("^"_PROG_"(COD,0)")
 .D @("^"_PROG_"(COD,1)")
 ;
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 N IND S IND=COD_$$^W4MYDVN
 S FL=COD_$$^W4MYDVN_"_"_$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 S FLCSV=DIR_FL_".csv"
 S FLTXT=DIR_FL_".txt"
  ;
 W "<table width=""100%"" >"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
   I $G(BCK) D
   .W "<td width=""78%"">&nbsp;</td>"
   .W "<td>" D BUT^W4BCK W "</td>"
   ;
   I $$GETP^%W1PRM("MANYREPS") D
   .W "<td>" 
   . D ^W4MNREP
   .W "</td>"
   .W "<td width=""12%"">&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 ;;W "<table width=""100%"" border=0 dir="""_$$^%W1DIR_""" >",!
 Q
 ;
ORD(FLD) ;
 I $$^W4LKH Q 0
 N NM I $G(PRM(FLD))="" Q 0
 S NM=$$SPA^%L1FRM(PRM(FLD))
 S NM=$$SP1^%L1FRM(NM)
 S NM=$TR(NM,"'.","")
 I NM="dpnfd"!(NM="dpnfd qn") Q 1
 Q 0
 ;
CUST(FLD) ;
 N NM I $G(PRM(FLD))="" Q 0
 S NM=$$SPA^%L1FRM(PRM(FLD))
 S NM=$$SP1^%L1FRM(NM)
 S NM=$TR(NM,"'.","")
 I NM="gewl 'qn"!(NM="gewl qn")!(NM="gewl xtqn")!(NM="gewl cew") Q 1
 Q 0
 ;
INVOICE(FLD) ;
 N NM I $G(PRM(FLD))="" Q 0
 S NM=$$SPA^%L1FRM(PRM(FLD))
 S NM=$$SP1^%L1FRM(NM)
 S NM=$TR(NM,"'.","")
 I NM="zipeayg"!(NM="zipeayg qn") Q 1
 Q 0
 ;
OVED(FLD) ;
 N NM I $G(PRM(FLD))="" Q 0
 S NM=$$SPA^%L1FRM(PRM(FLD))
 S NM=$$SP1^%L1FRM(NM)
 S NM=$TR(NM,"'.","")
 I $TR(NM," ","")="caerqn" Q 1
 Q 0
 ;
MLPRT(FLD) ;
 N NM I $G(PRM(FLD))="" Q 0
 S NM=$$SPA^%L1FRM(PRM(FLD))
 S NM=$$SP1^%L1FRM(NM)
 S NM=$TR(NM,"'.","")
 I $TR(NM," ","")="hixt" Q 1
 Q 0
 ;
FL(STAM) ;
 Q +$L($G(%W1PC1("FL")))
 ;
UFL(STAM) ;
 I $$FL U %W1PC1("FL")
 Q 
 ;
TBMAM ; 
  ;;N OK S OK=0
  ;
  ;;I 'OK,$G(@$$^%W1GLPRM@("VAL","MEDAT")) S OK=1
  ;;I 'OK,$G(@$$^%W1GLPRM@("VAL","METRH")) S OK=1
  ;;Q:'OK
  D PUT^%W1PRM("PCLMAM",+$G(%ARG("LMAM")))
  W "<table dir="""_$$^%W1DIR_""" style=""width:100%;text-align:center"" >",!
  W "<tr>"
   W "<td width=""25%""></td>" 
   W "<td>"
    W $$^%W1DICT("AFTERTAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S('$$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('0')"" >"
   W "</td>"
   W "<td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S($$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('1')"" >"
   W "</td>"
   W "<td width=""25%""></td>" 
  W "</tr>",!
  W "<tr>"
   W "<td colspan=""4"" style=""color:darkblue;font-size:"_$$^W3FSZ(10)_""">"
    W $$^%W1DICT("MUSTEQTAX")
   W "</td>"
  W "</tr>",! 
  W "</table>",!
 Q
 ;
LMAM() ; 
 Q $$GETP^%W1PRM("PCLMAM")
 ;
REPMAM(%REPN) ; 
 I $$^W4ELPOS,$$^W4DPNMAM Q 0
 N OK S OK=0 
 N A S A=$G(%L1PC("MAM"))
 N JJ F JJ=1:1:$L(A,"*") I $P(A,"*",JJ) S OK=1 Q
 Q OK 
 ;
RKVMAM(J) ;
 N JJ,K,OK S K=0,OK=0
 N STO S STO=$G(@$$^%W1GLPRM@("COD"))
 F JJ=1:1:J D  Q:OK
 .I $P(STO,"*",JJ)?1"x"1N.N,$P($G(%L1PC("FLD0")),"*",JJ)'="-" D
 ..S K=K+1 I K=J S OK=1
 Q +$P($G(%L1PC("MAM")),"*",K)
 ;
EILAT(A) ;
 I $G(%REPN)["W4GAP",$P(A,"*",2)["zli`"!($P(A,"*",3)["zli`") Q 1
 Q 0  
 ; 
DATREP(STAM) ;
 Q $$GETP^%W1PRM("REPDAYS")
 ; 
SHOWDAYS ;
 N DAYS S DAYS=$$GETP^%W1PRM("REPDAYS")
 N J F J=1:1:7 D
 .W $$^%W1DICT("DAY"_J)
 .W "<input type=""checkbox"" name=""days"" id=""day"_J_""" "
 .I $E(DAYS,J)'=0 W "checked=""checked"" "
 .W " disabled=""disabled"" "
 .W "/>"
 Q
 ;
TRISSUE ;
 W "<tr dir="""_$$^%W1DIR_""">"
  W "<td align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""" style=""color:black;font-size:"_$$^W3FSZ(10)_""">"
   W "<table width=""100%"" dir="""_$$^%W1DIR_""" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W "<tr>"
     W "<td>SessionID="_$G(JB)_"</td>"
      I $G(%ARG("SIK")) D
      .W "<td style=""width:55%;text-align:center;font-size:"_$$^W3FSZ(12)_";font-weight:bold;color:darkblue"">"_$$^%W1DICT("CONCENTRATEDREPORT")_"</td>",!
      I '$G(%ARG("SIK")) D
      .W "<td width=""35%"">&nbsp;</td>"
      ;
      W "<td >"
       W $$^%W1DICT("ISSUETIME")_" : "_$ZD($H,"DD.MM.YY  24:60")
      W "</td>"
    W "</tr>"
   W "</table>",!
  W "</td>"
  W "</tr>",!
 Q
 ;
SETDAYS ; 
 D KILL^%W1PRM("REPDAYS")
 N A S A=""
 N J F J=1:1:7 D
 .I $G(%ARG("day"_J))="on" S A=A_1 Q
 .S A=A_0
 I A="0000000" S A="" 
 D PUT^%W1PRM("REPDAYS",A) 
 Q 
 ;
SETSUGMSL ; 
 D KILL^%W1PRM("SUGMSL")
 N A S A=0
 M ^AA("W1PC1","ARG")=%ARG
 I $G(%ARG("SUGTAW"))="on" S A=A+1
 I $G(%ARG("SUGDLV"))="on" S A=A+2
 I $G(%ARG("SUGBID"))="on" S A=A+4
 I $G(%ARG("SUGCPN"))="on" S A=A+8
 D PUT^%W1PRM("SUGMSL",A) 
 Q 
SNIFORD(A,FLDSN,FLDORD) ;
 N ORD,SNIF,URL
 S SNIF=$P(A,"*",FLDSN) Q:'SNIF
 S ORD=$P(A,"*",FLDORD) Q:'ORD
 S URL=$$SITE^W3R(SNIF)
 I URL'[".",URL'["/" Q
 I $E(URL,$L(URL))'="/" S URL=URL_"/"
 W " onClick=""ShowSnifOrder('"_ORD_"','"_URL_"',this)"" style=""cursor:pointer"" " Q
 Q
 ;
PROT ; 
 Q
 N GL S GL=$$^W4MAIN("TMPPR")
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .W "<p>"_$$H2U^%L1FRM(A)_"</p>",!
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1PCBEG
%W1PCBEG(JB) ; [ 11.03.18 19:19 ] [ 13.06.09 00:15 ] [ 05.06.09 14:50 ] 
 I '$D(@$$^%W1GLPRM@("START")) Q 1
 Q 0
 ;
START(JB) S @$$^%W1GLPRM@("START")=$H
 Q
 ;
FIN(JB) S @$$^%W1GLPRM@("FINISH")=$H
 Q
 

%W1PCEX
%W1PCEX(%REPN,FMT) ; [ 08.07.26 13:17 ] [ 03.11.25 16:54 ] [ 04.06.25 16:11 ] 
 N (JB,%ARG,%REM,%REPN,FMT,TOT,FLCSV,%W1PCEX)
 S %W1LAHMAM=$S($G(%ARG("LMAM")):$G(^|$$^W3MAIN|P1PRM("MAM")),1:0)
 I $G(%ARG("LMAM")),$G(%ARG("AHMAM")) S %W1LAHMAM=%ARG("AHMAM")
 D ^%L1TS
 S FL=$$FL^%W1FREPX(%REPN,FMT)
 ;N DIR S DIR=$$DIRL
 ;N FL S FL=DIR_%REPN_$$^W4MYDVN
 I $G(TOT) S FL=FL_"S"
 S FLCSV=FL_"."_$$FMT(FMT)
 ;;U 0 W "FLCSV="_FLCSV,!
 N A,B,I,J,RZD
 S RZD="*"
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 D OPEN^%W1FREPX(FLCSV)
 ;
 D HEAD
 ;
 N STO
 S STO=$G(@$$^%W1GLPRM@("COD"))
 ;
 I '$D(%W1PCEX("NOHD1")) D
 .N FLD,I,I1,J
 .S B=""
 .F J=1:1:$L(STO,"*") D
 ..S FLD=$P(STO,"*",J) Q:FLD=""
 ..N NM S NM=$$NM^%W1PCRKV(%REPN,FLD)
 ..S B=B_$$RKV(NM,FMT)
 .U FLCSV W B,!
 ;
 N STMAM S STMAM=$G(@$$^%W1GLREP@("MAM"))
 ;
 N K
 F I=1:1 Q:'$D(@$$^%W1GLPRM@("GLOUT",I))  D
 .S A=$G(^(I)),B=""
 .I '$G(TOT),$$KAVSIK(A) D  Q
 ..F I1=I:1 Q:'$D(@$$^%W1GLPRM@("GLOUT",I1))  S A=$G(^(I1)) Q:'$$KAVSIK(A)&(A?.P)
 ..S I=I1
 .S K=0
 .S EILAT=0
 .I $P(A,"*",2)["zli`" S EILAT=1
 .I $P(A,"*",3)["zli`" S EILAT=1
 .F J=1:1:$L(A,RZD) D
 ..N COD S COD=$P(STO,"*",J)
 ..I COD?1"x"1N.N S K=K+1
 ..S VL=$P(A,RZD,J)
 ..S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 ..S RKVMAM=+$P(STMAM,"*",K)
 ..;;U 0 W "COD="_$P(STO,"*",J)_" TYP="_TYP_" ",!
 ..I TYP="D" S VL=$TR(VL,".","/")
 ..;;S ^AAA(I,J,"VL0")=VL
 ..;;S ^AAA(I,J,"RKVMAM")=RKVMAM
 ..;;S ^AAA(I,J,"W1LAHMAM")=%W1LAHMAM
 ..I RKVMAM,$G(%W1LAHMAM),'EILAT S VL=$J(VL*100/(100+%W1LAHMAM),2,2)
 ..;;S ^AAA(I,J,"VL")=VL
 ..I TYP="N" S VL=$J(VL,2,2)
 ..S B=B_$$RKV(VL,FMT)
 .
 .S B=$E(B,1,$L(B)-1)
 .;;U 0 W B,!
 .U FLCSV W B,!
 ;
 C FLCSV
 ;
 ;;ZSY "unix2dos "_FLCSV ; 23/01/17
 ;;ZSY "zip -j "_FL_" "_FLCSV
 Q
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
KAVSIK(A)
 I A?1"=="."="1"*"1"=".E,A?.P Q 1
 Q 0
 ;
RKV(VL,FMT)
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 N DLM S DLM=$G(%W1PCEX("DLM")) S:DLM="" DLM=","
 S VL=$$SPA^%L1FRM(VL)
 I VL?2N1"."2N1"."2N!(VL?2N1"."2N1"."4N) S VL=$TR(VL,".","/")
 S VL=$TR(VL,","," ")
 ;
 D
 .I VL?9N.N S VL="'"_VL_"'" Q
 .I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N S VL="'"_VL_"'" Q
 .;;S VL=$TR($$INVH^%L1FRM(VL),TS0,TS1)
 .S VL=$$^%W1D2U(VL)
 ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_DLM
 ;
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
HEAD ;
 Q:$D(%W1PCEX("NOHD"))
 D GETPRM^%W1PC1
 ;
 ;---------------------- REPORT PARAMETERS ----------------
  N IJK,%RNG,DL,TYP
  D REPPRM
  ;
  F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK)  D SHOWRNG(COD)
  ;
  F %I=1:1:$L(%FLDMIN,"*")  D
  .S COD=$P(%FLDMIN,"*",%I) Q:COD?.P
  .D SHOWRNG(COD)
  ;
 Q
 ;
REPPRM ;
 N MAS,ME,AD,NM
 N N S N="" F  S N=$O(%REPN(N)) Q:N=""  D
 .I $E(N,1,2)="ME" S MAS($E(N,3,20),"ME")=$G(%REPN(N))
 .I $E(N,1,2)="AD" S MAS($E(N,3,20),"AD")=$G(%REPN(N))
 ;
 S N="" F  S N=$O(MAS(N)) Q:N=""  D
 .S NM=$G(%REPN(N,"NM"))
 .S ME=MAS(N,"ME")
 .S AD=MAS(N,"AD")
 .D SHOWRNG1(NM,ME,AD)
 Q
 ;
SHOWRNG(COD) ;
 S B=""
 I '$D(@$$^%W1GLREP@(0,COD)) Q
 N VLME,VLAD,NM,DL,TYP
 S DL=$$DL^%W1PCRKV(%REPN,COD)
 S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 S VLME=$G(@("ME"_COD))
 S VLAD=$G(@("AD"_COD))
 I TYP="D" S VLME=$ZD(VLME,"DD.MM.YY"),VLAD=$ZD(VLAD,"DD.MM.YY")
 I VLME=""!(VLME?1"-9"."9"),VLAD?1"9"."9" Q
 S NM=$$NM^%W1PCRKV(%REPN,COD)
 D SHOWRNG1(NM,VLME,VLAD)
 Q
 ;
SHOWRNG1(NM,VLME,VLAD) ;
 S B=$$RKV(NM,FMT)
 S B=B_$$RKV($$TV^%W1DICT($$^%W1LNG,"FROM"),FMT)
 S B=B_$$RKV(VLME,FMT)
 S B=B_$$RKV($$TV^%W1DICT($$^%W1LNG,"TO"),FMT)
 S B=B_$$RKV(VLAD,FMT)
 S B=$E(B,1,$L(B)-1)
 U FLCSV W B,!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1PCIN
%W1PCIN ; [ 02.12.25 12:36 ] [ 13.02.25 13:06 ] [ 27.03.23 10:38 ] 
 ; IN  : %REPN
 ; OUT : %L1PC("FLD")
 ;       %L1PC("MIUN")
 ;       %L1PC("SIK0")
 ;       %L1PC("SIK")
 ;       %L1PC("CT")
 ;
 ;       MIUN,SIK,CT,MAXMIUN
 ;       COLG,COLGM,GLOB1,GLOB2
 ;
 ;       ME...   AD...
 ;;K (JB,%ARG,%REM,%L1PC,QUERY,%REPN)
 ;
 ;;S ^AA("W1PCIN","JB")=JB
 D GLREP
 D GLPRM
 N %N,%I,%J,I
 ;
 ;;I '$D(%REPN),$D(@GLPRM@("REPN")) M %REPN=@GLPRM@("REPN")
 I $D(@GLPRM@("REPN")) M %REPN=@GLPRM@("REPN")
 ;
 S %N="" F  S %N=$O(%REPN(%N)) Q:%N=""  D
 .I $D(%REPN(%N))#2 S @%N=%REPN(%N) D
 ..I $D(%REPN(%N,"VIEW")) S %L1PC("VAL",%N)=%REPN(%N)
 ;
 ;---- CREATE %L1PC("FLD"),%L1PC("MIUN")
 ;----        %L1PC("SIK0"),%L1PC("CT"),%L1PC("SIK")
 ;
 S %L1PC("FLD")="",%L1PC("MIUN")="",%L1PC("SIK0")="",%L1PC("CT")=""
 S %L1PC("SIK")=""
 S %L1PC("MAM")=""
 D FLD0
 ;
 ;;S ^AA("W4PCIN","GLREP")=GLREP
 F %I=1:1:$L($G(@GLREP@("FLD")),"*") D
 .N %FLD S %FLD=$P($G(@GLREP@("FLD")),"*",%I) Q:%FLD=""
 .;
 .I $G(@GLREP@(0,%FLD,"SET")) S %L1PC("S0",%FLD)=""
 .
 .I $P($G(@GLREP@("FLD0")),"*",%I)'="-" D
 ..S %L1PC("FLD")=%L1PC("FLD")_%FLD_"*"
 ..N MIUNI S MIUNI=$P($G(@GLREP@("MIUN")),"*",%I)
 ..I $G(@GLREP@(0,%FLD,"SH"))=0 S MIUNI=$P($G(@GLREP@("MIUN")),"*",%I-1)+1
 ..S %L1PC("MIUN")=%L1PC("MIUN")_MIUNI_"*"
 ..S %L1PC("SIK0")=%L1PC("SIK0")_$P($G(@GLREP@("SIK0")),"*",%I)_"*"
 ..N CTI S CTI=$P($G(@GLREP@("CT")),"*",%I)
 ..I $G(@GLREP@(0,%FLD,"SH"))=0 S CTI=$P($G(@GLREP@("CT")),"*",%I-1)
 ..S %L1PC("CT")=%L1PC("CT")_CTI_"*"
 .
 .I $P($G(@GLREP@("FLD0")),"*",%I)="-" D
 ..N A S A=$P(@GLREP@("FLD"),"*",%I) Q:A?.P
 ..I '$D(%L1PC("VAL",A))!'$D(@("ME"_A)) S @("ME"_A)=""
 ..I '$D(%L1PC("VAL",A))!'$D(@("AD"_A)) D
 ...S @("AD"_A)=$TR($J("",+$P(@GLREP@(0,A),";",2))," ",9)
 ;
 S %L1PC("FLD")=$E(%L1PC("FLD"),1,$L(%L1PC("FLD"))-1)
 S %L1PC("MIUN")=$E(%L1PC("MIUN"),1,$L(%L1PC("MIUN"))-1)
 S %L1PC("SIK0")=$E(%L1PC("SIK0"),1,$L(%L1PC("SIK0"))-1)
 S %L1PC("CT")=$E(%L1PC("CT"),1,$L(%L1PC("CT"))-1)
 ;
 S %L1PC("SIK")="" S %J=0 F %I=1:1:$L($G(@GLREP@("FLD")),"*") D
 .N A S A=$P($G(^("FLD")),"*",%I) I $E(A)="x",$P($G(^("FLD0")),"*",%I)'="-" D
 ..S %L1PC("SIK")=%L1PC("SIK")_$P($G(@GLREP@("SIK")),"*",$E(A,2,3))_"*"
 S %L1PC("SIK")=$E(%L1PC("SIK"),1,$L(%L1PC("SIK"))-1)
 ;
 S %L1PC("MAM")="" S %J=0 F %I=1:1:$L($G(@GLREP@("FLD")),"*") D
 .N A S A=$P($G(^("FLD")),"*",%I) I $E(A)="x",$P($G(^("FLD0")),"*",%I)'="-" D
 ..S %L1PC("MAM")=%L1PC("MAM")_$P($G(@GLREP@("MAM")),"*",$E(A,2,3))_"*"
 S %L1PC("MAM")=$E(%L1PC("MAM"),1,$L(%L1PC("MAM"))-1)
 ;----------------------------------------------------------------------
 ;
 S ONLYSIK=0,MONE=0
 ;
 ;------------ MAXMIUN - SPISOK PRIZN.REKV, COLG - SPISOK KOL. REKV.
 ;
 F I=1:1:$L(%L1PC("FLD"),"*") S A=$P(%L1PC("FLD"),"*",I) Q:A["x"
 ;
 S MAXMIUN=I-(%L1PC("FLD")["*x")
 S COLG=$L(%L1PC("FLD"),"*")-MAXMIUN
 S COLGM=$L($P($G(@GLREP@("FLD")),"*x1*",2),"*")+1
 ;
 S GLOB1=$G(@GLREP@("GLOB1")),GLOB2=$G(@GLREP@("GLOB2"))
 S GLOB1=$$GLOB2W4(GLOB1)
 S GLOB2=$$GLOB2W4(GLOB2)
 D
 .N J F J="FLD","S0","MIUN","SIK0","SIK","CT" S @GLPRM@(J)=$G(%L1PC(J))
 .F J="MAXMIUN","COLG","COLGM","GLOB1","GLOB2" S @GLPRM@(J)=@J
 ;
 S %BS=0,FRST=1
V ;------------------------
 ; %L1PC("MIUN") -> MIUN() ; %L1PC("SIK0") --> SIK() ; %L1PC("CT") --> CT
 ;
 K MIUN,SIK,CT
 ;
 F I=1:1:MAXMIUN D
 .S MIUN(I)=$S($P(%L1PC("MIUN"),"*",I)>MAXMIUN:"",1:$P(%L1PC("MIUN"),"*",I))
 .S SIK(I)=$P(%L1PC("SIK0"),"*",I)
 .S CT(I)=$P(%L1PC("CT"),"*",I) ;-- KOTERET
 .
 Q
 ;
 ;
SAVE(JB) ; ------------------------------------------------------------
 D GLPRM
 S:'$D(@GLPRM)#2 @GLPRM=$H
 M @GLPRM@("REPN")=%REPN
 D
 .N N S N="" F  S N=$O(%REPN(N)) Q:N=""  M @GLPRM@("VAL",N)=%REPN(N)
 ;
 N %J,%FLD,%MIUN,%CT,%SIK,%SIK0
 ;
 N %N S %N="" F  S %N=$O(MIUN(%N)) Q:%N=""  D
 .S @GLPRM@("MIUN",%N)=$G(MIUN(%N))
 ;
 S %N="" F  S %N=$O(CT(%N)) Q:%N=""  D
 .S @GLPRM@("CT",%N)=$G(CT(%N))
 ;
 S %N="" F  S %N=$O(SIK(%N)) Q:%N=""  D
 .S @GLPRM@("SIK",%N)=$G(SIK(%N))
 ;
 S %N="" F  S %N=$O(SIK0(%N)) Q:%N=""  D
 .S @GLPRM@("SIK0",%N)=$G(SIK0(%N))
 ;
 I $L($G(QUERY))>0 S @GLPRM@("QUERY")=$G(QUERY)
 ;-------------------------- END SAVE -----------------------------------
 Q
 ;
 ;
MEAD(%FLD) ;
 Q:$G(%FLD)=""
 ;
 I $G(@("ME"_%FLD))="" D
 .S @("ME"_%FLD)=$S($E(%FLD)="x":-99999999,1:"")
 .S @GLPRM@("VAL","ME"_%FLD)=@("ME"_%FLD)
 ;
 I $G(@("AD"_%FLD))="" D
 .S @("AD"_%FLD)=$TR($J("",+$P(@GLREP@(0,%FLD),";",2))," ",9)
 .S @GLPRM@("VAL","AD"_%FLD)=@("AD"_%FLD)
 Q
 ;
 ;
GET(JB) ;------------------- START GET ----------------------------------
 ; ^W1PCPRM -> %L1PC, MIUN, MAXMIUN ,SIK, SIK0 , CT ,
 D GLPRM,GLREP
 M %REPN=@GLPRM@("REPN")
 I $G(%REPN)="" S @GLPRM@("ER")="NOREPN" G GETE
 ;
 ;;D %W1PCIN ; --->
 ;
 S %FLDMIN=$G(@GLPRM@("FLDMIN"))
 ;
 I $D(@GLPRM@("QUERY"))#2 D
 .S QUERY=^("QUERY")
 .I QUERY?1N.N D  Q:QUERY=""
 ..N N,I S N="" F I=1:1:QUERY S N=$O(@GLREP@("QUERY",N)) Q:N=""
 ..I N'=""  S QUERY=N
 .Q:QUERY=""
 .Q:$D(@GLREP@("QUERY",QUERY))<10
 .N I F I="MIUN","SIK0","CT","FLD0" S @GLREP@(I)=$G(@GLREP@("QUERY",QUERY,I))
 ;
 D %W1PCIN ; --- !!!
 ;
 I $D(@GLPRM@("SHEIL")) S %L1PC("SHEIL")=$G(^("SHEIL"))
 N N  ;
 I $D(@GLPRM@("VAL"))>9 D
 .S N="" F  S N=$O(@GLPRM@("VAL",N)) Q:N=""  D
 ..N A S A=$G(@GLPRM@("VAL",N)) Q:N="QUERY"
 ..S @N=A
 ;
 K SIK
 I $D(@GLPRM@("SIK"))>9 D
 .;;K SIK
 .S N="" F  S N=$O(@GLPRM@("SIK",N)) Q:N=""  D
 ..S SIK(N)=$G(@GLPRM@("SIK",N))
 ;
 K SIK0
 I $D(@GLPRM@("SIK0"))>9 D
 .;;K SIK0
 .S N="" F  S N=$O(@GLPRM@("SIK0",N)) Q:N=""  D
 ..S SIK0(N)=$G(@GLPRM@("SIK0",N))
 ;
 I $D(@GLPRM@("CT"))>9 D
 .K CT
 .S N="" F  S N=$O(@GLPRM@("CT",N)) Q:N=""  D
 ..S CT(N)=$G(@GLPRM@("CT",N))
 ;
 F I=1:1:MAXMIUN D
 .S A=$P(%L1PC("FLD"),"*",I)
 .D MEAD(A)
 ;
 I $L($G(%FLDMIN)) F I=1:1:$L(%FLDMIN,"*") D
 .S A=$P(%FLDMIN,"*",I)
 .D MEAD(A)
GETE Q
 ;
 ;
REST(JB) ;
 D GLARX
 S MAC=GLARX
 S %L1("EU")=3
 S %L1("BE",2)=4
 S %L1("BE",3)=6
 D ^%L1NU Q:FLAG'=""
 S %REPN=$$^%L1IND(MAC,2)
 S QUERY=$$^%L1IND(MAC,3)
 I %REPN=""!(QUERY="") S %SAY=" RESTORE ERROR ! " X %XMSGV(1) Q
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM=@GLARX@(%REPN,QUERY)
 Q
GLREP ;
 S GLREP=$$^%W1GLREP
 Q
GLPRM ;
 S GLPRM=$$^%W1GLPRM
 Q
GLARX ;
 S GLARX=$$^%W1GLARX
 Q
GLOB2W4(GLOB) ;
 Q $$FILE2W4^%W1PCP(GLOB)
 ;
FLD0 ;
 ;;I %REPN="W4DPMH" D
 .N TIP S TIP=$$GETP^%W1PRM("W4DPMHTIP")
 .S ^LV("FLD0")=@GLREP@("FLD0")
 .S $P(@GLREP@("FLD0"),"*",12)=$S(TIP:"",1:"-")
 ;
 S %L1PC("FLD0")=$G(@GLREP@("FLD0"))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1PCNMR
%W1PCNMR(STAM) ; [ 31.05.13 18:37 ] [ 20.06.09 14:42 ] [
 I $$GETP^%W1PRM("REPNET") Q $$H2U^%L1FRM($$NAME^W4GFUCI)
 I $G(%ARG("MSD")) Q $$H2U^%L1FRM($$^W3MSDG(%ARG("MSD")))
 I $G(%ARG("MSDR")) Q $$H2U^%L1FRM($$NAME^W3MSDR(+$G(%ARG("MSDR"))))
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I MSD Q $$H2U^%L1FRM($$^W3MSDG(MSD))
 N MSDR S MSDR=$$GET^%W1PRM("MSDR")
 I MSDR Q $$H2U^%L1FRM($$NAME^W3MSDR(MSDR))
 Q ""

%W1PCP
%W1PCP(JB,CURSORT) ; [ 17.09.26 11:16 ] [ 14.09.26 10:17 ] [ 09.08.26 08:16 ] 
 ;
 ; IN : MIUN(IND)       (%L1PCIN) + SHEILTA ; IND LEFI %L1PC("FLD")
 ;      SIK (IND)       (---""--) + SHEILTA
 ;      CT  (IND)       (---""--) + SHEILTA
 ;
 ;      MAXMIUN      ;  (%L1PCIN)
 ;      ME... - AD...;  (%L1PCIN) + SHEILTA
 ;
 ;      %REPN
 ;      SIKUM
 ;
 ;      FLMODIF         (---""--)
 ;      %L1PC("FLD") ;  (%L1PCIN)
 ;      GLOB1        ;  (%L1PCIN)
 ;      GLOB2        ;  (%L1PCIN)
 ;      COLG         ;  (%L1PCIN)
 ;
 ; MIUN - SAVE PRIZN MIUN ; SIK0 - SAVE PRIZN SUMM ; CT - SAVE PRIZN KOT
 ;
 N (JB,%ARG,CURSORT,%REM,%REPN)
 K @$$^W4MAIN("TMPPROT")
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N A,I,II,J,JJ,N,N1,SEDM,SEDSM,MCT,MCT2,COL0,COL01,OK,IN
 ;
 D PUT^%W1PRM("PCPEND",0)
 ;
 D GET^%W1PCIN(JB)
 ;
 I $G(%ARG("SIK")) S SIKUM=99
 I $G(%ARG("SIK"))=0 K SIKUM
 ;
 I '$D(%GLOU) S %GLOU=$$BG^%W1GLPRM_"""GLOUT"")"
 I '$D(%GLWORK) S %GLWORK=$$BG^%W1GLPRM_"""GLWORK"""
 ;
 ;;W "%GLOU="_%GLOU_"  %GLWORK="_%GLWORK
 ;
 K @%GLOU,@(%GLWORK_")") Q:'$G(MAXMIUN)
 ;
M1 N MIUN1 S J=0 F I=1:1:MAXMIUN D
  .S J=J+1 S MIUN1(+MIUN(I))=$G(MIUN(I))
M2 .I $P($G(@$$^%W1GLREP@("FLD0")),"*",J)="-" S J=J+1 G M2
 ;
 I $G(SIKUM)=99 S ONLYSIK=1
 F I=1:1:MAXMIUN D
 .S A=$P(%L1PC("FLD"),"*",I)
 .N MEA S MEA=$G(@("ME"_A))
 .S:MEA?.P @("ME"_A_"=0")
 .I MEA?1"S"1N.N D
 ..N SET S SET=$E(MEA,2,200) Q:SET=""
 ..Q:$D(@$$^W4GL("P1SET")@(SET))<9
 ..M @("ME"_A)@("SET")=@$$^W4GL("P1SET")@(SET)
 .S:$G(@("AD"_A))?.P @("AD"_A_"=$TR($J("""",$P($G(@$$^%W1GLREP@(0,A)),"";"",2)),"" "",9)")
 ;
 I $L($G(%FLDMIN)) F I=1:1:$L(%FLDMIN,"*") D
 .S A=$P(%FLDMIN,"*",I)
 .S:$G(@("ME"_A))?.P @("ME"_A_"=0")
 .S:$G(@("AD"_A))?.P @("AD"_A_"=$TR($J("""",$P($G(@$$^%W1GLREP@(0,A)),"";"",2)),"" "",9)")
 ;
11 ;
 ; --------------- CHECK FOR DFLT ( MIUN - POSLEDN )
 S N="" F  S N=$O(SIK(N)) Q:N=""  I $G(SIK(N)),$G(MIUN(N)) S SIK(N)=MIUN(N)
 ;
 ; ------------------------- SEDM -  PERESORT SPISOK PR. REKV.
 ; ------------------------- SEDSM - PERESORT SPISOK PRIZ. SIK.
 S SEDM=%L1PC("FLD"),SEDSM=""
 ;
 F JJ=1:1:MAXMIUN D
 .S A=$P(%L1PC("FLD"),"*",JJ)
 .S $P(SEDM,"*",MIUN(JJ))=A
 .S $P(SEDSM,"*",MIUN(JJ))=$S(+$G(SIK(JJ))=0:0,1:1)
 ;
 S N="" F  S N=$O(CT(N)) Q:N=""  D
 .I $G(CT(N))=1 D  Q
 ..S N1="" F  S N1=$O(CT(N1)) Q:N1=""  I $G(MIUN(N1)),MIUN(N1)<MIUN(N) S CT(N1)=1
 .I $G(CT(N))=2 D  Q
 ..S N1="" F  S N1=$O(CT(N1)) Q:N1=""  I $G(MIUN(N1)),MIUN(N1)<MIUN(N),CT(N1)'=1 S CT(N1)=2
 ;
 S MCT=0,MCT2=0 F I=1:1:MAXMIUN D
 .S:$G(CT(I))=1 MCT=MCT+1
 .S:$G(CT(I))=1!($G(CT(I))=2) MCT2=MCT2+1
 ;
 S J=0 F JJ=1:1:MCT S A=$P(SEDM,"*",JJ) Q:A=""  D
 .S J=J+1 I $D(@$$^%W1GLREP@(0,A,"OUT")) S J=J+1
 ;
 S COL0=J ;---------- COL REKV V.SHAP
 S @$$^%W1GLPRM@("COL0")=COL0
 ;
 S J=0 F JJ=1:1:MCT2 S A=$P(SEDM,"*",JJ) Q:A=""  D
 .S J=J+1 I $D(@$$^%W1GLREP@(0,A,"OUT")) S J=J+1
 S COL01=J ;---------- COL. REKV V+NIJ SHAP
 S @$$^%W1GLPRM@("COL01")=COL01
 ;
VVV D INIT Q:$D(%L1PCSND)
 D MIUN G:$G(OK)=9 END
VVV1 D FORM
 K @$$^%W1GLPRM@("GLBASE")
 M @$$^%W1GLPRM@("GLBASE")=@$$^%W1GLPRM@("GLOUT")
 D PUT^%W1PRM("PCPEND",1) D KILL^%W1PRM("PCPDAT")
END Q
 ;
 ;
MIUN N A,A1,IN,%IND,K,K1,K2,I,JJ1,GLO,GLOB,OK,ST,%NMB ;
   ;---- INPUT: GLOB1 - START, GLOB2 - FINISH
   ;           @$$^%W1GLREP@("US" - PROGR. FOR FIELDS DEFINING
   ;
   ;------------------------------------------
   ;
   S GLOB1=$$RPL^%L1FRM(GLOB1,"|M|","|$$^W3MAIN|")
   S GLOB2=$$RPL^%L1FRM(GLOB2,"|M|","|$$^W3MAIN|")
 ;
   N A,A1,A2,%NMB,%IND,%INDOLD,K1,K2,GLOB,GLOBL,GLOBN,I,JJ,JJ1,IN
   N %MEIN,%ADIN,%MEINV,%ADINV,%PRTIME
   ; 
   I $D(@$$^%W1GLREP@("MIUN","PROG"))#2 D @^("PROG") Q:$G(%L1PC("CONTINUE"))="NO" ;;- 06/08/26 --> COMMENT
   ;
   N SUGMSL S SUGMSL=$$GETP^%W1PRM("SUGMSL")
   ;;S ^AA("W1PC1","SUGMSL")=SUGMSL
   I $E(GLOB1,$L(GLOB1))=")" S GLOB1=$E(GLOB1,1,$L(GLOB1)-1)
   S %IND=$P($P(GLOB2,GLOB1,2),")")
   I $E(%IND)?1P S %IND=$E(%IND,2,255)
   S K1=$L(GLOB1,","),K2=$L(GLOB2,","),GLOB=GLOB1
   I GLOB1["(" S K1=K1+1
   S JJ1=0 F I=K1:1:$L(%IND,",")+K1-1 D
   .S JJ1=JJ1+1 S:$E($P(%IND,",",JJ1))'="""" IN(I)=$P(%IND,",",JJ1)
   S K=K1
LP  S %NMB=0
    I '$D(@("ME"_IN(K))@("SET")),+$G(@("ME"_IN(K)))=$G(@("ME"_IN(K)))!($G(@("ME"_IN(K)))=""),+$G(@("AD"_IN(K)))=$G(@("AD"_IN(K))) S %NMB=1
    ;;W "IN(K)="_IN(K),!
LP0 S @IN(K)=$S(%NMB:$G(@("ME"_IN(K))),1:"")
    I $G(@IN(K)),@IN(K)'=+@IN(K) S %NMB=0
    S IN=IN(K)
    ; 
    I $G(PRTN)="" S PRTN=$$^%W1JB
    S GLOBN=GLOB
    I GLOBN["]" S GLOBN=$P(GLOBN,"]",2)
    I GLOBN["|" S GLOBN=$P(GLOBN,"|",3)
    ;;I $G(@IN)="" S @IN=" - "
    I GLOBN["(" S GLOBL=GLOB_","""")",GLOB=GLOB_","_IN_")"
    E  S GLOBL=GLOB_"("""")",GLOB=GLOB_"("_IN_")"
    I $O(@GLOBL,-1)'="",$O(@GLOBL,-1)'?."-"1N.N.".".N S %NMB=0
    I @IN(K)'="" S @IN(K)=$ZP(@GLOB)
LP1 ;
    ;
    S @IN(K)=$O(@GLOB) S OK=1
    ;
    S %MEIN="ME"_IN(K),%ADIN="AD"_IN(K)
    S %MEINV=$G(@%MEIN),%ADINV=$G(@%ADIN)
    S %PRTIME=0 I $$TIME(%MEINV,%ADINV) S %PRTIME=1
    ;
    I @IN(K)'="" D  G:'OK LP1
    .N A,%INDOLD S A=$G(@IN(K))
    . 
    .I $P($G(@$$^%W1GLREP@(0,IN(K))),";",2)["D" D
    ..I $TR(A,"/.","")'?5N.E Q
    ..I A["/"!(A[".") S A=$$^%L1DC(A,3) Q
    ..S A=$$^%L1DC(A,4)
    . 
    .N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
    .I $P($G(@$$^%W1GLREP@(0,IN(K))),";",2)["D",REPDAYS D  Q:$G(OK)=0
    ..N A1 S A1=$$^%L1DC(A,8)
    ..I $E(REPDAYS,A1)=0 S OK=0
    .
    .D  Q:$G(OK)=0
    ..N DLVREP,W1PCHZM S DLVREP=$$GETP^%W1PRM("DLVREP") Q:'DLVREP  Q:'SUGMSL
    ..I DLVREP,IN(K)="HZM",$G(@IN(K)) D
    ...S W1PCHZM=@IN(K)
    ...D
    ....N NMB S NMB=$$NMB^W4HZMST(W1PCHZM)
    ....I '(SUGMSL\8#2),NMB=$$MPLK^W4MPCHZ()!(NMB=$$COUPLK^W4MPCHZ) S OK=0 Q
    ....I '(SUGMSL\4#2),$$^W4HZMH(W1PCHZM) S OK=0 Q
    ....I '(SUGMSL\2#2),$$HZM^W4MSL(W1PCHZM),'$$TAKEAWAY^W4HZMST(W1PCHZM) S OK=0 Q
    ....I '(SUGMSL#2),$$TAKEAWAY^W4HZMST(W1PCHZM) S OK=0 Q
    ...;;S ^AA("W1PC1",W1PCHZM)=OK
    .
    .I A'=+A S %NMB=0
    .N A1 S A1=A I IN(K)["PAR"!(IN(K)["PRT"),$E(A,1,2)="A-" S A1=$P(A,"-",2)
    .I $L(A1),$D(@%MEIN@("SET"))>9,'$D(@%MEIN@("SET",A1)) S OK=0 Q
    .I $L(A1),$D(@%MEIN@("SET"))>9,$D(@%MEIN@("SET",A1)) G LP2
    .I %MEINV'="",'%PRTIME I A<%MEINV S OK=0 Q
    .I %ADINV'="",'%PRTIME I A>%ADINV S OK=$S(%NMB:2,1:0) Q
    .;;S ^AA("MEIN",K)=%MEIN,^AA("ADIN",K)=%ADIN
    .;;S ^AA("MEINV",K)=%MEINV,^AA("ADINV",K)=%ADINV,^AA("A",K)=A
    .I %PRTIME S OK=$$VIBTIME(%MEINV,%ADINV,A) I 'OK Q
LP2 .I $D(@$$^%W1GLREP@("US",$L(GLOB,","))) D  Q:OK'=1
    ..N JJ F JJ=1:1:20 S @("x"_JJ)=""
    ..X @$$^%W1GLREP@("US",$L(GLOB,",")) ; -------- PROG !!!!!!!!!!!!
    .
    .I $L(GLOB,",")=$L(GLOB2,",") D  Q:OK'=1
    ..N %IND
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" I $D(@%IND)#2 S %INDOLD(II)=@%IND
    ..S GLO=%GLWORK_","
    ..
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" D
    ...N FLD S FLD=$P(SEDM,"*",II) S:FLD="" FLD=" "
    ...N LL S LL=$P($G(@$$^%W1GLREP@(0,FLD)),";",2)
    ...S:$G(@%IND)="" @%IND=" - " S @%IND=$TR(@%IND,",*""()"," X'[]")
    ...S @%IND=$E(@%IND,1,128)
    ...I $L(FLD),LL["D",@%IND["/"!(@%IND[".") S @%IND=$$^%L1DC(@%IND,3)
    ...F JJ=1:1 Q:'$D(MIUN(JJ))  Q:+MIUN(JJ)=II
    ...I $D(MIUN(JJ)),MIUN(JJ)["!",$L($$FILE(FLD)) D
    ....S A=$$OUFL($$FILE(FLD),$G(@FLD))
    ....S A=$E(A,$L(A)-9,$L(A))
    ....S A1="" F JJ=1:1:10 S A1=$E(A,JJ)_A1
    ....S A1=A1_$J("",10-$L(A1))_$J(@FLD,+LL)
    ....S @%IND=A1 S:@%IND="" @%IND="          "
    ...S:@%IND="" @%IND="          "
    ...S GLO=GLO_""""_$G(@%IND)_"""," ; --- WAS _%IND
    ..S GLO=$E(GLO,1,$L(GLO)-1)_")"
    ..S %SRKM=0 F JJ=1:1:COLGM I $G(@("MEx"_JJ))!$G(@("ADx"_JJ)) S %SRKM=1 Q
    ..S OK=1 I %SRKM D  ;---------- HITUHIM NOSAFIM
    ...F JJ=1:1:COLGM S A1=$G(@("x"_JJ)) D
    ....I '$$DAT(A1),A1["." S A1=$J(A1,2,2)
    ....I $L(A1)>16 Q
    ....I '$$DAT(A1) D
    .....I $G(@("MEx"_JJ))'="",A1<@("MEx"_JJ) S OK=0 Q
    .....I $G(@("ADx"_JJ))'="",A1>@("ADx"_JJ) S OK=0 Q
    ....I $$DAT(A1) D
    .....I $G(@("MEx"_JJ))'="",$$^%L1DC(A1,3)<$$^%L1DC(@("MEx"_JJ),3) S OK=0 Q
    .....I $G(@("ADx"_JJ))'="",$$^%L1DC(A1,3)>$$^%L1DC(@("ADx"_JJ),3) S OK=0 Q
    ..Q:'OK
    ..S ST="" S:'$D(@GLO) @GLO=""
    ..;
    ..F JJ=1:1:COLG D
    ...S A1=$G(@$P(%L1PC("FLD"),"*",MAXMIUN+JJ)); -- xJJ
    ...N %W1PCPMAM S %W1PCMAM=$$MAM(GLO)
    ...;;I $P($G(%L1PC("MAM")),"*",JJ),%W1PCMAM'<0 S A1=$J(A1*100/(100+%W1PCMAM),2,2) ; *** 04.10.22
    ...S $P(@GLO,"*",JJ)=$S($P(%L1PC("SIK"),"*",JJ):$P($G(@GLO),"*",JJ)+A1,1:A1)
    ..F II=1:1:MAXMIUN S %IND="@$P(SEDM,""*"","_II_")" I $D(%INDOLD(II))#2 S @%IND=%INDOLD(II)
    ..K %INDOLD
    ;
    I @IN(K)=""!(OK=2) S K=$O(IN(K),-1) G:K<K1 EMIUN S GLOB=$P(GLOB,",",1,$L(GLOB,",")-1)_")" G LP1
    ;
    S K=$O(IN(K)) I K="" S K=$O(IN(K),-1) G LP1
    S GLOB=$E(GLOB,1,$L(GLOB)-1) G LP
EMIUN ;
  Q
  ;
  ;
FORM N I,IN,IND,K,K1,K2,LEVELBG,FIRSTS,GLOB,GLOBO,PRITOG,%STRING ;
   ;---- INPUT : @%GLWORK,SEDM - OTSORT. FILE
   ;     OUTPUT: @%GLOU,... - VIX.FORMA S SIKUMIMAMI
   ;     WORK  : IN(I) - MAS.REKV-IND IN GLOB ( GLOB(@IN(1),@IN(2),...)
   ;             K -  LEVEL COUNTER
   ;             K2 - MAX.COL. IND (PROST.STR)
   ;             K1 - MIN.COL. IND
   ;---------------------------------------------------
   F I=1:1:$L(SEDM,"*") S IN(I)=$P(SEDM,"*",I)
   S K=1,K1=1,K2=MAXMIUN+1,GLOB=%GLWORK,FIRSTS=0 K INO S PRITOG=0
   ;;;;;;
   S GLOB=GLOB_","""")"
   ;
   ;
   S GLOB=$Q(@GLOB) Q:GLOB=""  Q:$P(GLOB,",",1,2)'=%GLWORK
   D IND(GLOB)
FRM1 F I=1:1:$L(IND,",") S INO(I)=$P(IND,",",I),@IN(I)=INO(I)
   D:FIRSTS STRSHP
   ;
   D:'ONLYSIK PROST
   S K=$L(IND,",") D SIK S FIRSTS=0
   S GLOB=$Q(@GLOB) G:GLOB="" FORME G:$P(GLOB,",",1,2)'=%GLWORK FORME
   D IND(GLOB)
   F I=1:1:$L(IND,",") I $P(IND,",",I)'=INO(I) D  Q
   .F K=$L(IND,","):-1:I D STRSIK
   .I I'>MCT S FIRSTS=1
   F I=1:1:$L(IND,",") S @IN(I)=$P(IND,",",I)
   G FRM1
FORME F K=$L(IND,","):-1:0 D STRSIK
   Q
   ;
IND(GLOB) S IND=$P($P(GLOB,"(",2),")")
  N IND1,IND2,I S IND1=""
  F I=$L(%GLWORK,",")+1:1:$L(IND,",") D
  .S IND2=$P(IND,",",I) S:$E(IND2)="""" IND2=$P(IND2,"""",2)
  .S IND1=IND1_IND2_","
  S IND=$E(IND1,1,$L(IND1)-1)
  Q
  ;
PROST ;
 Q:ONLYSIK  N %STRING,A,INFL,OUTFL,JJ,JJ1
 I PRITOG D  S PRITOG=0
 .N IND S IND=$O(@%GLOU@(99999),-1)
 .I IND,@%GLOU@(IND)'?1"#"."#" S %STRING="" D SAVST
PROST1 S %STRING="" ;
 F JJ=1:1:MAXMIUN  S INFL=$G(@IN(JJ)),A=IN(JJ) D OUTFL
 ;;W "GLOB="_GLOB_" @GLOB="_$G(@GLOB),!
 S JJ1=0 S %STRING=%STRING_$G(@GLOB)
 D SAVST
 Q
 ;
SAVST S MONE=$O(@%GLOU@(999999),-1)+1
 S @%GLOU@(MONE)=%STRING
 S @%GLOU=MONE
 Q
 ;
SIK ; K - UR, LASTFN - STR. KODOV DLQ PECH, SUMFL - STR. SUM
 N ST,KK,JJ S ST=$G(@GLOB)
 F KK=0:1:K F JJ=1:1:COLG D
 .I $P(%L1PC("SIK"),"*",JJ) S SUM(KK,JJ)=$G(SUM(KK,JJ))+$P(ST,"*",JJ)
 F KK=1:1:K S INO(KK)=@IN(KK)
 Q
 ;
STRSHP ;
 Q:$D(%W1PCP("EXP"))
 N %STRING S %STRING="#############" D SAVST
 Q
 ;
 ;
STRSIK ;
 ;------------------- FORM ITOG STROKI DLQ PECHATI ( FROM "K" UR).
 Q:$D(%W1PCP("EXP"))
 Q:($P(SEDSM,"*",K)'[1)&(K>0)  ;-- NET PR. SIK
 N %STRING,INFL,A,I,J,JJ,JJ1,JJJ,IND,SP
 S %STRING=""
STRSIKA ;
 S JJ1=0 F JJ=K+1:1:$L(SEDSM,"*") I $P(SEDSM,"*",JJ)>0 S JJ1=JJ1+1
 ;-- JJ1=0 -> POSL. ITOG
 I ONLYSIK,'JJ1,PRITOG D  S PRITOG=0 S %STRING="" ;--PUST STR. POSLE ITOGA (ONLYSIK)
 .N IND S IND=$O(@%GLOU@(99999),-1)
 .I IND,@%GLOU@(IND)'?1"#"."#" S %STRING="" D SAVST
 ;
 S %STRING=""
 ;
 I 'ONLYSIK!(ONLYSIK&JJ1) D  S PRITOG=1 ;-- PREDITOG. STR.
 .F SP=1:1:FLDNUM S %STRING=%STRING_"===========*"
 .S %STRING=$E(%STRING,1,$L(%STRING)-1)
 .D SAVST
 ;
 S %STRING="" ;------ ITOG. STR
 F JJ=1:1:K S INFL=INO(JJ),A=IN(JJ) D OUTFL
 F JJ=$L(%STRING,"*"):1:FLDNUM-COLG S OUTFL=$TR($J("",16)," ","-") D SAVFL
 I 'JJ1,ONLYSIK G ESS
 N SEDMK S SEDMK=$P(SEDM,"*",K)
 ;
 I SEDMK'="" D
 .S $P(%STRING,"*",FLDNUM-COLG-2)=$TR($J("",16)," ","-")
 .N A,D S A=$G(@$$^%W1GLREP@(0,SEDMK)),D=$P(A,";",2)
 .S $P(%STRING,"*",FLDNUM-COLG-1)=$P(A,";")
 .N ST S ST=$S(D["D"&($TR(INO(K),"./","")?5N.E):$$^%L1DC(INO(K),1),$G(MIUN1(K))["!":$$INV^%L1FRM(INO(K)),1:INO(K))
 .I $L($$FILE(SEDMK)),$L($G(INO(K))) D
 ..S OU=$$OUFL($$FILE(SEDMK),INO(K))
 ..S ST=OU_" "_ST
 .S $P(%STRING,"*",FLDNUM-COLG)=ST
ESS ;
 I $D(@$$^%W1GLREP@("SIX")) D ;-- PKUDA L SHURA SIKUMIM ( HORIZ )
 .N CMD S CMD=$G(^("SIX")) Q:CMD=""
 .N JJ,JJ1,ER
 .F JJ=1:1:$L(@$$^%W1GLREP@("FLD"),"*") Q:$E($P(^("FLD"),"*",JJ))="x"
 .S ER=0 N MSUM,M,MJ S M=0,MJ=0
 .F JJ1=JJ:1:$L(@$$^%W1GLREP@("FLD"),"*") D
 ..;;I $E($P($G(^("FLD0")),"*",JJ1))="-" S ER=1 Q
 ..S MJ=MJ+1
 ..I $E($P($G(^("FLD0")),"*",JJ1))="-" Q
 ..S M=M+1
 ..S M(MJ)=M
 .S CMD=$$CNVCMD(CMD)
 .;;S ^DEB("CMD")=CMD
 .X CMD
 ;
 S JJ1=0 F JJ=FLDNUM-COLG+1:1:FLDNUM D
 .S JJ1=JJ1+1 S %STRING=%STRING_$J($G(SUM(K,JJ1)),2,2)_"*"
 ;
 D SAVST F J=K:1:MAXMIUN K SUM(J)
 Q
 ;
 ;
OUTFL ;-- INFL --> OUTFL (FORM-E VIX. REKV IZ VX. V ZAVIS. OT @$$^%W1GLREP@(0,A,..))
  ; @$$^%W1GLREP@(0,A,"OUT")=<VRB>, -> INFL*F(INFL) ;; F(INFL)= X @$$^%W1GLREP@(0,A,"M2") -> VRB
  ;-----------------------------------------------------------------------
  I INFL="" G OF1
  ;
  N LL S LL=+$P($G(@$$^%W1GLREP@(0,A)),";",2)
  S INFL=$$SPA^%L1FRM($E(INFL,$L(INFL)-LL+1,255))
  ;
  I $P($G(@$$^%W1GLREP@(0,A)),";",2)["D" D  Q
  .S OUTFL=INFL
  .I $TR(INFL,"/.","")?5N.E D
  ..I INFL'["."&(INFL'["/"),$L(INFL)=6 S OUTFL=$E(INFL,5,6)_"/"_$E(INFL,3,4)_"/"_$E(INFL,1,2)
  ..I INFL'["."&(INFL'["/"),$L(INFL)=8 S OUTFL=$E(INFL,7,8)_"/"_$E(INFL,3,4)_"/"_$E(INFL,1,2)
  ..I INFL'["."&(INFL'["/"),$L(INFL)=5 S OUTFL=$$^%L1DC(INFL,1)
  .D SAVFL
  ;
OF1 N DOT S DOT=$P($P($G(@$$^%W1GLREP@(0,A)),";",2),",",2)
  I DOT S OUTFL=$J(INFL,DOT,DOT)
  S OUTFL=INFL D SAVFL
  ;
  N FLDOU S FLDOU=$G(@$$^%W1GLREP@(0,A,"OUT"))
  I $L(FLDOU),$D(@$$^%W1GLREP@(0,A,"M2")) X ^("M2") S OUTFL=$TR($G(@FLDOU),"*""(),","X'[] ") D SAVFL Q
  ;
  I $L(FLDOU),$L($$FILE(A)),INFL'="" D  Q
  .S OUTFL=$$OUFL($$FILE(A),INFL)
  .D SAVFL
  Q
  ;
SAVFL ;;W "%STRING="_%STRING_"  INFL="_$G(INFL)_"  OUTFL="_OUTFL,! H 1
 S %STRING=%STRING_OUTFL_"*"
 Q
 ;
INIT ;
 S %L1PC("COD")=""
 N JJ F JJ=1:1 S A=$P(SEDM,"*",JJ) Q:A=""  D
 .S %L1PC("COD")=%L1PC("COD")_A_"*"
 .I $D(@$$^%W1GLREP@(0,A,"OUT")) S %L1PC("COD")=%L1PC("COD")_@$$^%W1GLREP@(0,A,"OUT")_"*"
 ;
 S %L1PC("COD")=$E(%L1PC("COD"),1,$L(%L1PC("COD"))-1)
 S SEDFL=%L1PC("COD") ;---- SPISOK REKV DLQ PECH
 S FLDNUM=$L(%L1PC("COD"),"*") K SUM ; --- FLDNUM -- KOL REKV
 S @$$^%W1GLPRM@("COD")=SEDFL
 Q
 ;
FILE2W4(FL) ;
 I FL["^["!(FL["^|") Q FL
 N FL1,FL2
 S FL1=$P(FL,"(")
 S FL2=$P(FL,"(",2,20)
 I FL1["^" S FL1=$E(FL1,2,20)
 I FL2="" Q $$^W4GL(FL1)
 Q $$^W4GL(FL1)_"("_FL2
 ;
OUFL(FL0,FLD)
 N A,FL,FL00 I FL0="" Q ""
 S FL00=FL0
 ;
 I $E(FL00)="^" S FL00=$E(FL00,2,100)
 I $E(FL00)="|" S FL00=$P(FL00,"|",3,20)
 I $E(FL00)="[" S FL00=$P(FL00,"]",2,20)
 ;
 I $G(FLD)="" Q ""
 S FL=$$FILE2W4(FL0) I FL="" Q ""
 I FL00'="NAME" S A=$G(@FL@(FLD))
 I FL00="NAME" S A=$G(@FL@(FLD,1))
 I FL00="PAR" S A=$P(A,"**")
 I FL00="B1CLUB" S A=$P($G(@FL@(FLD,1)),"\",3)
 S A=$TR(A,",*""()"," X'[]")
 Q A
 ;
FILE(FLD) ;
 N FILE S FILE=$G(@$$^%W1GLREP@(0,FLD,"FILE"))
 I FILE["!" Q ""
 Q FILE
 ;
CNVCMD(CMD) ;
 N CMD1,POS,POS0,POS1,IND,IND1
 S CMD1="",POS0=1
CNVCMD1 ;
 S POS=$F(CMD,"(K,",POS0)
 I 'POS Q CMD1_$E(CMD,POS0,255)
 S POS1=$F(CMD,")",POS)
 S CMD1=CMD1_$E(CMD,POS0,POS-1)
 S IND=$E(CMD,POS,POS+4)
 S IND=$P(IND,")")
 S IND1=IND
 I IND,$D(M(IND)) S IND1=M(IND)
 S CMD1=CMD1_IND1_")"
 I 'POS1 Q CMD1
 S POS0=POS1
 G CNVCMD1
 ;
TIME(ME,AD)
 S ME=$$RPL^%L1FRM(ME,"%3A",":")
 S AD=$$RPL^%L1FRM(AD,"%3A",":")
 I $P(ME,":")>24!($P(ME,":",2)>60) Q 0
 I $P(AD,":")>24!($P(AD,":",2)>60) Q 0
 I ME?.N1N1":"2N Q 1
 I AD?.N1N1":"2N Q 1
 Q 0
 ;
VIBTIME(%MEINV,%ADINV,A) ; 
  ;;S ^AA("MEINV","TIME")=%MEINV,^AA("ADINV","TIME")=%ADINV,^AA("A","TIME")=A
  N %MEIN1,%ADIN1
  S %MEIN1=%MEINV*60+$P(%MEINV,":",2)
  S %ADIN1=%ADINV*60+$P(%ADINV,":",2)
  N %AT S %AT=A*60+$P(A,":",2)
  N %SHAAGV S %SHAAGV=$$SHAAZ^W4PRM I %SHAAGV'?1N.E S %SHAAGV=6
  I %MEIN1?1N.E,%MEIN1<%SHAAGV S %MEIN1=%MEIN1+(24*60)
  I %ADIN1?1N.E,%ADIN1<%SHAAGV S %ADIN1=%ADIN1+(24*60)
  I %AT?1N.E,%AT<%SHAAGV S %AT=%AT+(24*60)
  I %AT<%MEIN1!(%AT>%ADIN1) Q 0
  Q 1 
 ;
MAM(GLO) ; 
 ;;S ^AA("W1PCP-MAM","GLO")=GLO
 ;;S ^AA("W1PCP-MAM","MAXMIUN")=MAXMIUN
 ;;S ^AA("W1PCP-MAM","SEDM")=$G(SEDM)
 N A,MAM,IND S MAM=-1
 I '$$GETP^%W1PRM("PCLMAM") Q MAM
 ;
 N JJ F JJ=1:1:MAXMIUN D  Q:MAM'<0
 .S A=$P($G(SEDM),"*",JJ)
 .I A["DAT"!(A["TRH") D
 ..S IND=$$^%L1IND(GLO,JJ+2)
 ..I IND'?5N,IND'?2N1"."2N1"."2N.E,IND'?2N1"/"2N1"/"2N.E,IND'?6N Q
 ..S IND=$$^%L1DC(IND,3)
 ..S MAM=$$MAMD^W4L(IND)
 ;
 I MAM<0,$G(@$$^%W1GLPRM@("VAL","METRH")) D
 .N DD S DD=^("METRH"),MAM=$$MAMD^W4L(DD)
 ;
 I MAM<0,$G(@$$^%W1GLPRM@("VAL","MEDAT")) D
 .N DD S DD=^("MEDAT"),MAM=$$MAMD^W4L(DD)
 Q MAM 
 ;
 ;
DAT(A) ;  
 I $G(A)="" Q 0  
 I A?2N1"."2N1"."2N Q 1  
 I A?2N1"/"2N1"/"2N Q 1  
 I A?2N1"."2N1"."4N Q 1  
 I A?2N1"/"2N1"/"4N Q 1  
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1PCREP
%W1PCREP ; [ 08.11.21 08:29 ] [ 31.05.17 12:50 ] [ 05.01.13 09:45 ] 
 N (JB,%ARG,%REM)
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN")) D PUT^%W1PRM("PCFIRST",1)
 D KILL^%W1PRM("CURSORT") ; -- 8.11.21
 D PUT^%W1PRM("REPNAME",$$REPNAME^%W1PCS)
 ;
 N GLPRM S GLPRM=$$^%W1GLPRM
 K @GLPRM@("SIK")
 N N S N="" F  S N=$O(%ARG(N)) Q:N=""  D
 .I N?1"SIK"1N.N D
 ..S @GLPRM@("SIK",$E(N,4,10))=$S(%ARG(N)="on":1,1:0)
 ;;M ^AA("W1PCREP","SIK")=@GLPRM@("SIK")
 ;
 N MI,K S K=0
 S N="" F  S N=$O(@GLPRM@("MIUN",N)) Q:N=""  D
 .S MI(K)=$G(^(N))
 ;
 K @GLPRM@("CT")
 N N S N="" F  S N=$O(%ARG(N)) Q:N=""  D
 .I N?1"CT"1N.N D
 ..S @GLPRM@("CT",$E(N,3,5))=%ARG(N)
 Q
 
 
 

%W1PCRKV
%W1PCRKV(%REPN,COD) ; [ 12.09.22 17:39 ] [ 26.10.15 14:35 ] [ 03.04.12 09:30 ] 
 N GLREP D GLREP
 I $G(COD)="" Q ""
 N TEUR S TEUR=$G(@GLREP@(0,COD))
 Q TEUR
 ;
NM(REPN,COD) ;
 N A S A=$$%W1PCRKV(REPN,COD)
 Q $P(A,";")
 ;
DL(REPN,COD) ;
 N A S A=$$%W1PCRKV(REPN,COD)
 N DL S DL=$P(A,";",2)
 I DL["D" Q 8
 Q +DL
 ;
DR(REPN,COD) ;
 N A S A=$$%W1PCRKV(REPN,COD)
 Q $P($P(A,";",2),",",2)
 ;
TYP(REPN,COD) ;
 N TYP
 N A S A=$$%W1PCRKV(REPN,COD)
 S TYP=$TR($P(A,";",2),"0123456789,","")
 S:TYP?.P TYP="E"
 Q TYP
 ;
GL(%REPN,COD) ;
 N GLREP D GLREP
 N A S A=$G(@GLREP@(0,COD,"FILE"))
 Q A
 ;
GLREP ;
 S GLREP=$$^%W1GLREP
 Q
 

%W1PCS
%W1PCS ; [ 22.07.26 06:25 ] [ 19.07.26 16:55 ] [ 13.07.26 08:22 ] 
 ; INPUT : MAXMIUN
SHEIL N %L1PCER ;
 D GLREP,GLPRM
 S PRTN="JB"_$G(JB)
 ;
 I $$PCZ,$D(@GLREP@("QUERY"))>9 D  ; -- 26.11.25
 .S @GLREP@("BASE","FLD0")=$G(@GLREP@("FLD0"))
 .K @GLREP@("FLD0")
 .S @GLREP@("BASE","MIUN")=$G(@GLREP@("MIUN"))
 .K @GLREP@("MIUN")
 .S @GLREP@("BASE","CT")=$G(@GLREP@("CT"))
 .K @GLREP@("CT")
 .S @GLREP@("BASE","SIK0")=$G(@GLREP@("SIK0"))
 .K @GLREP@("SIK0")
 ;
 S %LNG=$G(^W1DICT,"H")
 N IJK,COD,%RNG,TH,DL,TYP
 I '$G(MAXMIUN),$G(@GLPRM@("MAXMIUN")) S MAXMIUN=^("MAXMIUN")
 D PUT^%W3DEB("%W1PCS","%L1PC=[%L1PC")
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) D
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
 ;
 N COD,IJK,TYP,DL,%GETREST,TH
 I $D(%L1PC("SHEIL")) X %L1PC("SHEIL") Q
 S TH(1)=$$^%W1DICT("DATA_NAME")
 S TH(2)=$$^%W1DICT("FROM")
 S TH(3)=$$^%W1DICT("TO")
 S TH(4)=$$^%W1DICT("SORT")
 S TH(5)=$$^%W1DICT("TOT")
 S TH(6)=$$^%W1DICT("HEADER")
 W "<p></p>",!
 ;
 D GLREP,GLPRM
 N URL S URL="_self" ;
 ;
 W "<div align=""center"">",!
 I $$PCZ G PCS1
 ;
 W "<form id=""FormAsk"" method=""get"" dir="""_$$^%W1DIR_""" target="""_URL_""" "
 D 
  .I '$$NEWMENU^W4PRM!$$GETP^%W1PRM("NOBACK2BO") W "onReset=""self.location.replace(unescape('"_$$GET^W4STACK("HRFREP",1)_"'))"" >",! Q
  .W "onReset=""self.location.replace('w5bo.jsp?JB="_$G(JB)_"')"" "
 W "<input type=""hidden"" name=""JB"" value="""_$G(JB)_""" >"
 ;
 D DOPASK
PCS1 ;
 ;
 I $$PCZ D QRYNAME
 ;
 D OPTBL(1) W ">",!
 N I W "<tr>" F I=1:1 Q:'$D(TH(I))  S TH=$$H2U^%L1FRM(TH(I)) D
 .I I=1 W "<th width=""16%"">"_TH_"</th>" Q
 .I I>3 W "<th width=""10%"">"_TH_"</th>" Q
 .W "<th width=""27%"">"_TH_"</th>"
 W "</tr>",!
 ;
 N DL,TYP,NM,GL
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK)  D
ZSH .Q:COD=""
 .S DL=$$DL^%W1PCRKV(%REPN,COD)
 .S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 .W "  <tr "
 . I $G(@GLREP@(0,COD,"SH"))=0 W " style=""visibility:collapse"" " S CT(IJK)=+$G(CT(IJK-1)),SIK(IJK)=0
 . W ">",!
 .W "   <td>"
 .W "  &nbsp;"_$$H2U^%L1FRM($$NM^%W1PCRKV(%REPN,COD))_"</td>",!
 .I TYP'="D" D
 ..D TD(COD)
 .I TYP="D" D TDAT(COD)
 .W "  <td style=""text-align:center"">"
 .D
 ..I '$$PCZ W $S($G(MIUN(IJK)):$G(MIUN(IJK)),1:"&nbsp;") Q
 ..I $$PCZ D
 ...W "<select id=""SORT"_IJK_""">",! 
 ... N JJ F JJ=1:1:MAXMIUN D 
 .... W "<option value="""_JJ_""" "
 .... I $G(MIUN(IJK)),+JJ=+$G(MIUN(IJK)) W " selected=""selected"" "
 .... I '$G(MIUN(IJK)),+JJ=+IJK W " selected=""selected"" "
 .... W ">"_JJ_"</option>",!
 ...W "</select>",! 
 .W "</td>",!
 .W " <td style=""text-align:center"">"
 . W "<input type=""checkbox"" id=""SIK"_IJK_""" name=""SIK"_IJK_""""
 . W $S($G(SIK(IJK)):" checked=""checked"" ",1:"")
 .W " /></td>",!
 .W "  <td style=""text-align:center"">"
 . ;;W $S($G(CT(IJK)):$G(CT(IJK)),1:"&nbsp;")
 . W "<select id=""CT"_IJK_""" name=""CT"_IJK_""">"
 . D
 .. N M S M(0)="NOHEAD"
 ..  S M(1)="HEADPAGE"
 ..  S M(2)="HEADLINE"
 ..  N J F J=0:1:2 D
 ...  W "<option "_$$SELCT(J,$G(CT(IJK)))_" value="""_J_""">",!
 ...   W $$^%W1DICT(M(J))
 ...  W "</option>",!
 . W "</select>"
 .W "  </td>",!
 .W "</tr>",!
 W "</table>",!
 ;
 I $$PCZ W "<p></p>" D  G ESHEIL
 .W "<table>",!
 . W "<tr>",!
 .  W "<td><button style=""color:blue"" onClick=""ChangeFieldList()"">"_$$^%W1DICT("CHANGEFIELDLIST")_"</button></td>"
 .  W "<td><button style=""color:green"" onClick=""Submit()"">"_$$^%W1DICT("SUBMIT")_"</button></td>"
 .  I $L($$QUERY) D
 ..  W "<td><button style=""background-color:red;color:black;font-weight:bold"" onClick=""DelQuery()"">"_$$^%W1DICT("DELETE")_"</button>"
 .  W "<td><button style=""color:red"" onClick=""Back()"">"_$$^%W1DICT("BACK")_"</button>"
 . W "</tr>",!
 .W "</table>",!
 ;
 W "<p></p>",!
 D HRTAG W "<br>",!
 D SHEIL3
 W "<p></p>",!
 D HRTAG
 W "<p></p>",!
 D SHEIL2
 W "<p></p>",!
 I $$DAT D SHOWDAYS W "<p></p>",!
 I $$GETP^%W1PRM("DLVREP") D SUGMSL
 ;
 W "<input type=""submit"" style=""color:green"" value="""_$$^%W1DICT("SUBMIT")_""" />",!
 W $$NBSP^%L1FRM(5)
 W "<input type=""reset""  style=""color:red"" value="""_$$^%W1DICT("BACK")_""" />",!
ESHEIL ;
 W "</form>",!
 W "</div>",!
 Q
 ;
OPTBL(BORD) ;
 W "<table id=""TbPrm"" width=""80%"" border="""_BORD_""" cellspacing=""0"" "
 ;;W " style=""border:grey"" "
 W " dir="""_$$^%W1DIR_""" "
 Q
 ;
HRTAG ;
 D OPTBL(0) W ">",!
 W "<tr><td><hr STYLE=""border-style:dotted""></td></tr>",!
 W "</table>",! 
 Q
 ;
SELCT(J,NC)
 I J=NC Q " selected=""selected"" "
 Q ""
 ;
TD(COD) ;
 Q:$G(COD)=""
 N GL S GL=$TR($$GL^%W1PCRKV(%REPN,COD),"!+","")
 ;
 I GL'="",$$SMALLG(GL) W "<td align=""center"">" D SEL(GL,"ME"_COD) W "</td><td align=""center"">" D SEL(GL,"AD"_COD) W "</td>" Q
 ;
 W "<td align=""center"" "_$$STYLE^%W1DIR
 W ">"_$$VV("ME"_COD,COD,GL)_"</td>"
 W "<td align=""center"" "_$$STYLE^%W1DIR
 W ">"_$$VV("AD"_COD,COD,GL)_"</td>"
 Q
 ;
TDD(COD,PRE) ;
 W "<td width=""22%"" "_$$STYLE^%W1DIR("LTR")_" align=""center"">"
  N VL
  D
  .I $D(%L1PC("VAL",PRE_COD)) D  Q
  ..S VL=%L1PC("VAL",PRE_COD)
  ..I VL?5N S VL=$ZD(VL,"DD.MM.YY")
  ..W VL,!
  .S VL=$$VL(PRE_COD)
  .S %W1DAT("NODAY")=""
  .D ^%W1DAT(PRE_COD,VL)
 W "</td>"
 Q
 ;
SHEIL2 ;---------------- HITUHIM NOSAFIM
 I $D(%L1PC("SHEIL")) Q
 N %W1PCS2 S %W1PCS2=""
 N JJ,OLDCOD S JJ=0
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL21 N COD,IJK,TYP,%GETREST S %BS=0
 D GLREP
 W "<table width=""80%"" border=1 cellspacing=""0"" rules=""rows"" dir="""_$$^%W1DIR_""" >",!
 D OPTBL(1) W " rules=""rows"" >",!
 ;
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I COD'?.P D
 .S IJK1=IJK-MAXMIUN+13
 .S DL=$$DL^%W1PCRKV(%REPN,COD)
 .S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 .D S0
 .D SHTR(COD,TYP)
 W "</table>",!
 Q
 ;
 ;
MULTY(NUM,DL)
 Q $TR($J("",DL)," ",NUM)
 ;
SHEIL3 ; -- CODS WITH "-" -> ADDIT. TABLE
 N %L1PCER,A,DL3,TYP3,IJK,COD,Y1,Y2,CMIN,I ; --> %FLDMIN (-)
 S %FLDMIN=""
 N %I,COD D GLREP,GLPRM
 F %I=1:1:$L(@GLREP@("FLD"),"*") I $P($G(@GLREP@("FLD0")),"*",%I)="-"  D
 .S COD=$P(@GLREP@("FLD"),"*",%I)
 .Q:$G(@GLREP@(0,COD,"SH"))=0
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)="" ;;99999999
 .S %FLDMIN=%FLDMIN_COD_"*"
 ;
 S %FLDMIN=$E(%FLDMIN,1,$L(%FLDMIN)-1)
 ;
 S @GLPRM@("FLDMIN")=%FLDMIN
 Q:%FLDMIN=""
 ;
SHEIL31 I $D(%L1PC("SHEIL")) Q
 ;
 D GLREP
 D OPTBL(1) W " rules=""rows"" >",!
 N CMIN,IJK
 S CMIN=$L(%FLDMIN,"*")
 F IJK=1:1:$L(%FLDMIN,"*") D
ZSH3 .S COD=$P(%FLDMIN,"*",IJK) Q:COD=""
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
 .N DL,TYP
 .S DL=$$DL^%W1PCRKV(%REPN,COD)
 .S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 .S DL3(IJK)=DL,TYP3(IJK)=TYP
 .D S0
 .I $D(%L1PC("VAL",COD)),'$D(%L1GET) S %L1GET="V"
 .D SHTR(COD,TYP)
 W "</table>",!
 Q
 ;
SHTR(COD,TYP) ;
 W "<tr><td width=""16%"">&nbsp;"_$$H2U^%L1FRM($$NM^%W1PCRKV(%REPN,COD))_"</td>"
 I TYP'="D" D TD(COD)
 I TYP="D" D TDAT(COD)
 W "<td width=""10%"">&nbsp;</td>"
 W "<td width=""10%"">&nbsp;</td>"
 W "<td width=""10%"">&nbsp;</td>"
 W "<tr>",!
 Q
 ;
 ;
KOT(STAM) Q $G(@GLPRM@("QUERY"))
 Q
 ;
S0 ;
 I ","_$P($P($G(GLOB2),"(",2),")")_","[(","_COD_",")!$D(%L1PC("S0",COD)) S %RNG("S0")=1
 Q
 ;
GLREP S GLREP=$$^%W1GLREP
 Q
 ;
GLPRM S GLPRM=$$^%W1GLPRM Q
 ;
TDAT(COD) ;
 D TDD(COD,"ME"),TDD(COD,"AD")
 ;;W "<td>&nbsp;</td>"
 Q
 ;
 ;
CHECKPRM(STAM) ;
 N %REPN S %REPN=$G(@$$^%W1GLPRM@("REPN")) I %REPN="" Q "REPN"
 D PCPRM^%W1ARG(JB) ; ---> $$^%W1GLPRM("VAL","ME","AD"
 ;
 I $G(%ERRDATE)'="" Q "DT:"_%ERRDATE
 ;
 N QUERY S QUERY=$$QUERY
 ;
 N N,MASPRM,OU S OU=""
 S N="" F  S N=$O(@$$^%W1GLPRM@("VAL",N)) Q:N=""  I $L(N)>2 D
 .I $E(N,1,2)="ME" S MASPRM($E(N,3,20),"ME")=$G(^(N))
 .I $E(N,1,2)="AD" S MASPRM($E(N,3,20),"AD")=$G(^(N))
 ;
 D US I $L(OU) Q OU
 ;
 S N="" F  S N=$O(MASPRM(N)) Q:N=""  D
 .N ME,AD,TYP
 .S ME=$G(MASPRM(N,"ME"))
 .S AD=$G(MASPRM(N,"AD"))
 .S TYP=$$TYP^%W1PCRKV(%REPN,N)
 .I ME!AD,ME>AD S OU="AD"_N
 .I ME,ME?2N1"."2N1"."2N,$$^%L1DC(ME,3)'>$$^%L1DC(AD,3) S OU=""
 .I ME?2N1"."2N1"."2N,$$^%L1DC(ME,3)>$$^%L1DC(AD,3) S OU="AD"_N
 .I TYP="D",OU'="" S OU=OU_"IDdd"
 ;
 Q OU
 ;
 ;
VL(CD) ;
 N VL S VL=$G(@$$^%W1GLPRM@("VAL",CD))
 Q $$H2U^%L1FRM(VL)
 ;
REPNAME(STAM) ;
 N %REPN S %REPN=$G(@$$^%W1GLPRM@("REPN")) I %REPN="" Q "REPN"
 D GLREP
 N REPNAME
 S REPNAME=$G(@GLREP)
 N QUERY
 S QUERY=$$CLR^%W1PC($$QUERY)
 I $L(QUERY) S REPNAME=QUERY_" - "_REPNAME
 S REPNAME=$$CNWEB^%L1FRM(REPNAME)
 Q REPNAME
 ;
SEL(GLB,ID) ;
 N VV
 S VV="<select name="""_ID_""" id="""_ID_""">"
 N GLB1 I $E(GLB)="^" S GLB1=GLB
 E  S GLB1="^"_GLB
 S VV=VV_"<option value="""">"_$$^%W1DICT("ALLKAV")_"</option>"
 N N S N=""
 N GLB2 S GLB2=GLB1
 I GLB2["|" S GLB2="^"_$P(GLB1,"|",3,10)
 I GLB2["[" S GLB2="^"_$P(GLB1,"]",3,10)
 I GLB2="^LKH" S N=999
 I GLB1["^|M|" S GLB1="^|$$^W3MAIN|"_$P(GLB1,"|",3,10)
 ;
 F  S N=$O(@GLB1@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I GLB2="^NAME" S A=$G(^(N,1))
 .I GLB2="^W4PLGN" S A=$G(@GLB1@(1,"DESCR",N))
 .I GLB2="^B1CLUB" S A=$$NAMEI^WBCLUB(N)
 .N VL S VL=$$H2U^%L1FRM($P(A,"**"))
 .N N1 S N1=N I $TR(N1," .,'`""","")?1A.A S N1=""
 .S VV=VV_"<option value="""_N_""" "_$S(N=$$VL(ID):" selected=""selected""",1:"")_">"_N1_"&nbsp;&nbsp;"_VL_"</option>"
 S VV=VV_"</select>"
 W VV
 Q
 ;
SMALLG(GLB) ;
 I $G(GLB)="" Q 0
 N GLB1 S GLB1=GLB ;$S($E(GLB)="^":"",1:"^")_GLB
 ;
 N I,N S N="" F I=1:1:39 S N=$O(@GLB1@(N)) Q:N=""
 I N="" Q 1
 Q 0
 ;
VV(ID,COD,GL)
 N VV
 N TYP,LEN
 S LEN=$$DL^%W1PCRKV(%REPN,COD)
 S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 ;
 N VL S VL=$$VL(ID)
 I $D(%W1PCS2),$E(ID,1,2)="ME" S VL="-"_$$MULTY(9,LEN)
 I TYP="N",$E(ID,1,2)="ME" S VL="-"_$$MULTY(9,LEN)
 I $D(%W1PCS2),$E(ID,1,2)="AD" S VL=$$MULTY(9,LEN)
 ;
 S VV="<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_"""><tr>"
 S VV=VV_"<td align=""center"" >"
 D 
 .I $D(%L1PC("VAL",ID)) D  Q
 ..S VL=%L1PC("VAL",ID)
 ..W VL,!
 .
 .S VV=VV_"<input type=""text"" style=""text-align:right"" "
 .S VV=VV_" dir="""_$S(TYP="H":$$^%W1DIR,1:"LTR")_""""
 .S VV=VV_" size=""12"" "
 .S VV=VV_" maxlength="""_LEN_""""
 .S VV=VV_$S(TYP="H":"",1:" onClick=""this.select()""")
 .S VV=VV_" name="""_ID_""" id="""_ID_""""
 .S VV=VV_" value="""_VL_""">"
 ;
 I $G(GL)'="" D
 .I GL="^PAR"!($P(GL,"|",3)="PAR")!($P(GL,"]",3)="PAR"),$D(@$$^W4GL("P1SET"))>9,$E(ID,1,2)="ME" D
 ..S VV=VV_"</td><td width=""20%"">"
 ..S VV=VV_" &nbsp;&nbsp; <input type=""button"""
 ..S VV=VV_" value="""_$$^%W1DICT("SET")_""""
 ..S VV=VV_" onClick=""FindSet('"_ID_"','"_GL_"')"" />"
 .
 .S VV=VV_"</td><td width=""30%"" "_$$^%W1ALIGN_" >"
 .S VV=VV_" &nbsp;&nbsp; <input type=""button"""
 .S VV=VV_" value="""_$$^%W1DICT("SEARCH")_""""
 .S VV=VV_" onClick=""Find('"_ID_"','"_GL_"')"" />"
 ;
 S VV=VV_"</td></tr></table>"
 ;
 Q VV
 ;
 ;
US ;
 S OU=""
 I %REPN="W4DPMH",QUERY["zepnfd" D  Q
 .I '$G(MASPRM("PARIT","ME")),'$G(MASPRM("SUGP","ME")) D
 ..N MEDT,ADDT
 ..S MEDT=$$GETP^%W1PRM("W4DPMHDT1")
 ..S ADDT=$$GETP^%W1PRM("W4DPMHDT2")
 ..I ADDT-MEDT>10 S OU="ITEMORGROUPMUST:MEPARIT"
 ;
 I %REPN="W4PRHZ" D  Q
 .I $G(MASPRM("PAR","ME"))="" D
 ..N MEDT,ADDT
 ..S MEDT=$G(MASPRM("TRH","ME"))
 ..S ADDT=$G(MASPRM("TRH","AD"))
 ..I ADDT-MEDT>10 S OU="ITEMMUST:MEPAR"
 ;
 I %REPN="DLVLK" D
 .N KINDDAT
 .S KINDDAT=$G(%ARG("KINDDAT"))
 .I KINDDAT?1N D PUT^%W1PRM("KINDDAT",KINDDAT) 
 Q
 ;
 ;
DOPASK ; 
 I %REPN="DLVLK" D
 .W "<select id=""KINDDAT"" name=""KINDDAT"" >",! 
 . W "<option value=""0"" "_$$DOPASKSEL(0)_">"_$$^%W1DICT("PERSNDDAT")_"</option>",!
 . W "<option value=""1"" "_$$DOPASKSEL(1)_">"_$$^%W1DICT("PERORDDAT")_"</option>",!
 . W "<option value=""2"" "_$$DOPASKSEL(2)_">"_$$^%W1DICT("PERPAYDAT")_"</option>",!
 .W "</select>",! 
 .W "<br><br>",!
 Q
 ;
DOPASKSEL(VL) ; 
 I VL=+$$GETP^%W1PRM("KINDDAT") Q " selected=""selected"" "
 Q ""
 ;
DAT(STAM) ; 
 N OK S OK=0
 N FLD,COD S FLD=$G(@$$^%W1GLREP@("COD"))
 ;;S ^AA("W1PCS","FLD")=FLD
 I $G(%REPN)'="" D  Q OK
 .N IJK F IJK=1:1:$L(FLD,"*") S COD=$P(FLD,"*",IJK)  D  Q:OK
 ..S TYP=$$TYP^%W1PCRKV(%REPN,COD) I TYP="D" S OK=1
 ;
 N N
 S N="" F  S N=$O(@$$^%W1GLPRM@("VAL",N)) Q:N=""  D
 .I N["DAT"!(N["TRH") S OK=1
 Q OK 
 ;
 ; 
SHOWDAYS ;
 N DAYS S DAYS=$$GETP^%W1PRM("REPDAYS")
 N J F J=1:1:7 D
 .W $$^%W1DICT("DAY"_J)
 .W "<input type=""checkbox"" name=""day"_J_""" id=""day"_J_""" "
 .I $E(DAYS,J)'=0 W "checked=""checked"" "
 .W "/>"
 Q
 ;
PCZ() ;
 Q +$$GETP^%W1PRM("W1PCZ") 
 ;
BORD() ; 
 Q "style=""cursor:pointer;border:double 3px brown;"" "
 ;
QUERY() ;
 N QUERY
 I $L($G(%ARG("QUERY"))) Q %ARG("QUERY")
 S QUERY=$G(@$$^%W1GLPRM@("QUERY"))
 Q QUERY
 ;
QRYNAME ;
 N QUERY S QUERY=$$QUERY
 S QUERY=$$H2U^%L1FRM(QUERY)
 I QUERY=0 S QUERY=""
 S QUERY=$$RPL^%L1FRM(QUERY,"""","&quot;") 
 W $$^%W1DICT("QUERYNAME")_"&nbsp;"
 W "<input id=""QUERY"" type=""text"" size=""80"" value="""_QUERY_""" />",!
 W "<p></p>",!
 Q
 ;
SUGMSL ; 
 W "<table>",! 
 W "<tr>"
   W "<td>"_$$^%W1DICT("TAWONLY")_" <input type=""checkbox"" name=""SUGTAW"" checked=""checked""></td>"
   W "<td>"_$$^%W1DICT("DLVONLY")_" <input type=""checkbox"" name=""SUGDLV"" checked=""checked""></td>"
   W "<td>"_$$^%W1DICT("BIDS")_" <input type=""checkbox"" name=""SUGBID"" checked=""checked"" ></td>"
   I $$PAPJ^W4PRM D
   .W "<td>"_$$^%W1DICT("COUPONS")_" <input type=""checkbox"" name=""SUGCPN"" checked=""checked"" ></td>"
  W "</tr>",! 
 W "</table>",! 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1PCS0
%W1PCS ; [ 02.09.15 15:34 ] [ 30.05.14 12:40 ] [ 19.04.13 20:51 ]
 ; INPUT : MAXMIUN
SHEIL N %L1PCER ;
 D GLREP,GLPRM
 S %LNG=$G(^W1DICT,"H")
 N IJK,COD,%RNG,TH,DL,TYP
 I '$D(MAXMIUN),$D(@GLPRM@("MAXMIUN")) S MAXMIUN=^("MAXMIUN")
 D PUT^%W3DEB("%W1PCS","%L1PC=[%L1PC")
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) D
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
 ;
SHEIL1 N COD,IJK,TYP,DL,%GETREST,TH
 I $D(%L1PC("SHEIL")) X %L1PC("SHEIL") Q
 S TH(1)=$$^%W1DICT("DATA_NAME")
 S TH(2)=$$^%W1DICT("FROM")
 S TH(3)=$$^%W1DICT("TO")
 S TH(4)=$$^%W1DICT("SORT")
 S TH(5)=$$^%W1DICT("TOT")
 S TH(6)=$$^%W1DICT("HEADER")
 W "<p></p>",!
 W "<p></p>",!
 W "<p></p>",!
 ;
 D GLREP,GLPRM
 N URL S URL="_self" ;
 ;;D NOSELECT^%W1JS
 W "<div align=""center"">",!
 W "<form method=""get"" dir="""_$$^%W1DIR_""" target="""_URL_""" onReset=""self.location.replace(unescape('"_$$GET^%W1PRM("HRFREP")_"'))"" >",!
 W "<input type=""hidden"" name=""JB"" value="""_$G(JB)_""" >"
 ;
 W "<table width=""80%"" border=1 cellspacing=""0"" dir="""_$$^%W1DIR_""" >",!
 N I W "<tr>" F I=1:1 Q:'$D(TH(I))  S TH=$$H2U^%L1FRM(TH(I)) D
 .I I=1 W "<th width=""16%"">"_TH_"</th>" Q
 .I I>3 W "<th width=""10%"">"_TH_"</th>" Q
 .W "<th width=""27%"">"_TH_"</th>"
 W "</tr>",!
 ;
 N DL,TYP,NM,GL
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK)  D
 .;;Q:$G(@GLREP@(0,COD,"SH"))=0
ZSH .;
 .S DL=$$DL^%W1PCRKV(%REPN,COD)
 .S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 .W "  <tr "
 . I $G(@GLREP@(0,COD,"SH"))=0 W " style=""visibility:collapse"" " S CT(IJK)=+$G(CT(IJK-1)),SIK(IJK)=0
 . W ">",!
 .W "   <td>"
 .W "  &nbsp;"_$$H2U^%L1FRM($$NM^%W1PCRKV(%REPN,COD))_"</td>",!
 .I TYP'="D" D
 ..D TD(COD)
 .I TYP="D" D TDAT(COD)
 .W "  <td style=""text-align:center"">"_$S($G(MIUN(IJK)):$G(MIUN(IJK)),1:"&nbsp;")_"</td>",!
 .;;W " <td style=""text-align:center"">"_$S($G(SIK(IJK)):$G(SIK(IJK)),1:"&nbsp;")_"</td>",!
 .W " <td style=""text-align:center"">"
 . W "<input type=""checkbox"" id=""SIK"_IJK_""" name=""SIK"_IJK_""""
 . W $S($G(SIK(IJK)):" checked=""checked"" ",1:"")
 .W " /></td>",!
 .W "  <td style=""text-align:center"">"
 . ;;W $S($G(CT(IJK)):$G(CT(IJK)),1:"&nbsp;")
 . W "<select id=""CT"_IJK_""" name=""CT"_IJK_""">"
 . D
 .. N M S M(0)="NOHEAD"
 ..  S M(1)="HEADPAGE"
 ..  S M(2)="HEADLINE"
 ..  N J F J=0:1:2 D
 ...  W "<option "_$$SELCT(J,$G(CT(IJK)))_" value="""_J_""">",!
 ...   W $$^%W1DICT(M(J))
 ...  W "</option>",!
 . W "</select>"
 .W "  </td>",!
 .W "</tr>",!
 W "</table>",!
 W "<p></p>",!
 W "<p></p>",!
 D SHEIL3
 W "<p></p>",!
 W "<p></p>",!
 W "<input type=""submit"" style=""color:green"" value="""_$$^%W1DICT("SUBMIT")_""" />",!
 W "<input type=""reset"" style=""color:red"" value="""_$$^%W1DICT("BACK")_""" />",!
 W "</form>",!
 W "</div>",!
 Q
 ;
 ;
SELCT(J,NC)
 I J=NC Q " selected=""selected"" "
 Q ""
 ;
TD(COD) ;
 Q:$G(COD)=""
 N GL S GL=$TR($$GL^%W1PCRKV(%REPN,COD),"!+","")
 S ^LEVDEB(COD,"GL")=GL_"\"_%REPN_"\"_COD
 ;
 I GL'="",$$SMALLG(GL) W "<td align=""center"">" D SEL(GL,"ME"_COD) W "</td><td align=""center"">" D SEL(GL,"AD"_COD) W "</td>" Q
 ;
 W "<td align=""center"">"_$$VV("ME"_COD,COD,GL)_"</td>"
 W "<td align=""center"">"_$$VV("AD"_COD,COD,GL)_"</td>"
 Q
 ;
TDD(COD,PRE) ;
 W "<td width=""22%"" dir=""LTR"" align=""center"">"
  N VL
  D
  .I $D(%L1PC("VAL",PRE_COD)) D  Q
  ..S VL=%L1PC("VAL",PRE_COD)
  ..I VL?5N S VL=$ZD(VL,"DD.MM.YY")
  ..W VL,!
  .S VL=$$VL(PRE_COD)
  .S %W1DAT("NODAY")=""
  .D ^%W1DAT(PRE_COD,VL)
 W "</td>"
 Q
 ;
SHEIL2 ;---------------- HITUHIM NOSAFIM
 I $D(%L1PC("SHEIL")) Q
 N JJ,OLDCOD S JJ=0
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL21 N COD,IJK,TYP,%GETREST S %BS=0
 D GLREP
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I COD'?.P D
 .S IJK1=IJK-MAXMIUN+13
 .S DL=$$DL^%W1PCRKV(%REPN,COD)
 .S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 .D S0
 Q
 ;
 ;
SHEIL3 ; -- CODS WITH "-" -> ADDIT. TABLE
 N %L1PCER,A,DL3,TYP3,IJK,COD,Y1,Y2,CMIN,I ; --> %FLDMIN (-)
 S %FLDMIN=""
 N %I,COD D GLREP,GLPRM
 F %I=1:1:$L(@GLREP@("FLD"),"*") I $P($G(@GLREP@("FLD0")),"*",%I)="-"  D
 .S COD=$P(@GLREP@("FLD"),"*",%I)
 .Q:$G(@GLREP@(0,COD,"SH"))=0
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)="" ;;99999999
 .S %FLDMIN=%FLDMIN_COD_"*"
 ;
 S %FLDMIN=$E(%FLDMIN,1,$L(%FLDMIN)-1)
 ;
 S @GLPRM@("FLDMIN")=%FLDMIN
 Q:%FLDMIN=""
 ;
SHEIL31 I $D(%L1PC("SHEIL")) Q
 ;
 D GLREP
 W "<table width=""80%"" border=1 cellspacing=""0"" rules=""rows"" dir="""_$$^%W1DIR_""" >",!
 N CMIN,IJK
 S CMIN=$L(%FLDMIN,"*")
 F IJK=1:1:$L(%FLDMIN,"*") D
ZSH3 .S COD=$P(%FLDMIN,"*",IJK) Q:COD=""
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
 .N DL,TYP
 .S DL=$$DL^%W1PCRKV(%REPN,COD)
 .S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 .S DL3(IJK)=DL,TYP3(IJK)=TYP
 .D S0
 .I $D(%L1PC("VAL",COD)),'$D(%L1GET) S %L1GET="V"
 .
 .W "<tr><td width=""16%"">&nbsp;"_$$H2U^%L1FRM($$NM^%W1PCRKV(%REPN,COD))_"</td>"
 .I TYP'="D" D TD(COD)
 .I TYP="D" D TDAT(COD)
 .W "<td width=""10%"">&nbsp;</td>"
 .W "<td width=""10%"">&nbsp;</td>"
 .W "<td width=""10%"">&nbsp;</td>"
 .W "<tr>",!
 W "</table>",!
 Q
 ;
 ;
KOT(STAM) Q $G(@GLPRM@("QUERY"))
 Q
 ;
S0 ;
 I ","_$P($P($G(GLOB2),"(",2),")")_","[(","_COD_",")!$D(%L1PC("S0",COD)) S %RNG("S0")=1
 Q
 ;
GLREP D GLREP^%W1PC Q
GLPRM S GLPRM=$$^%W1GLPRM Q
 ;
TDAT(COD) ;
 D TDD(COD,"ME"),TDD(COD,"AD")
 ;;W "<td>&nbsp;</td>"
 Q
 ;
 ;
CHECKPRM(STAM) ;
 N %REPN S %REPN=$G(@$$^%W1GLPRM@("REPN")) I %REPN="" Q "REPN"
 D PCPRM^%W1ARG(JB)
 ;
 I $G(%ERRDATE)'="" Q "DT:"_%ERRDATE
 ;
 N QUERY S QUERY=$G(@$$^%W1GLPRM@("QUERY"))
 ;
 N N,MASPRM,OU S OU=""
 S N="" F  S N=$O(@$$^%W1GLPRM@("VAL",N)) Q:N=""  I $L(N)>2 D
 .I $E(N,1,2)="ME" S MASPRM($E(N,3,20),"ME")=$G(^(N))
 .I $E(N,1,2)="AD" S MASPRM($E(N,3,20),"AD")=$G(^(N))
 ;
 D US I $L(OU) Q OU
 ;
 S N="" F  S N=$O(MASPRM(N)) Q:N=""  D
 .N ME,AD S ME=$G(MASPRM(N,"ME"))
 .S AD=$G(MASPRM(N,"AD"))
 .I AD,ME>AD S OU="AD"_N
 .I $$TYP^%W1PCRKV(%REPN,N)="D",$$^%L1DC(ME,3)'>$$^%L1DC(AD,3) S OU=""
 .I $$TYP^%W1PCRKV(%REPN,N)="D",OU'="" S OU=OU_"IDdd"
 ;
 Q OU
 ;
 ;
VL(CD) ;
 N VL S VL=$G(@$$^%W1GLPRM@("VAL",CD))
 Q $$H2U^%L1FRM(VL)
 ;
REPNAME(STAM) ;
 N %REPN S %REPN=$G(@$$^%W1GLPRM@("REPN")) I %REPN="" Q "REPN"
 D GLREP
 N REPNAME
 S REPNAME=$G(@GLREP)
 N QUERY
 S QUERY=$G(@$$^%W1GLPRM@("QUERY"))
 I $L(QUERY) S REPNAME=QUERY_" - "_REPNAME
 Q REPNAME
 ;
SEL(GLB,ID) ;
 N VV
 S VV="<select name="""_ID_""" id="""_ID_""">"
 N GLB1 I $E(GLB)="^" S GLB1=GLB
 E  S GLB1="^"_GLB
 S VV=VV_"<option value="""">"_$$^%W1DICT("ALLKAV")_"</option>"
 N N S N=""
 N GLB2 S GLB2=GLB1
 I GLB2["|" S GLB2="^"_$P(GLB1,"|",3,10)
 I GLB2["[" S GLB2="^"_$P(GLB1,"]",3,10)
 I GLB2="^LKH" S N=999
 F  S N=$O(@GLB1@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I GLB2="^NAME" S A=$G(^(N,1))
 .N VL S VL=$$H2U^%L1FRM($P(A,"**"))
 .S VV=VV_"<option value="""_N_""" "_$S(N=$$VL(ID):" selected=""selected""",1:"")_">"_N_"&nbsp;&nbsp;"_VL_"</option>"
 S VV=VV_"</select>"
 W VV
 Q
 ;
SMALLG(GLB) ;
 I $G(GLB)="" Q 0
 N GLB1 S GLB1=GLB ;$S($E(GLB)="^":"",1:"^")_GLB
 ;
 N I,N S N="" F I=1:1:39 S N=$O(@GLB1@(N)) Q:N=""
 I N="" Q 1
 Q 0
 ;
VV(ID,COD,GL)
 N VV
 N TYP,LEN
 S LEN=$$DL^%W1PCRKV(%REPN,COD)
 S TYP=$$TYP^%W1PCRKV(%REPN,COD)
 ;
 S VV="<table width=""100%"" border=""0""><tr><td>"
 S VV=VV_"<input type=""text"" style=""text-align:right"""
 S VV=VV_" dir="""_$S(TYP="H":$$^%W1DIR,1:"LTR")_""""
 S VV=VV_" size=""12"" "
 S VV=VV_" maxlength="""_LEN_""""
 S VV=VV_$S(TYP="H":"",1:" onClick=""this.select()""")
 S VV=VV_" name="""_ID_""" id="""_ID_""""
 S VV=VV_" value="""_$$VL(ID)_""">"
 ;
 S VV=VV_"</td>"
 I $G(GL)'="" D
 .S VV=VV_"<td width=""40%"" "_$$^%W1ALIGN_" >"
 .S VV=VV_" &nbsp;&nbsp; <input type=""button"""
 .S VV=VV_" value="""_$$^%W1DICT("SEARCH")_""""
 .S VV=VV_" onClick=""Find('"_ID_"','"_GL_"')"" />"
 ;
 S VV=VV_"</td></tr></table>"
 ;
 Q VV
 ;
 ;
US ;
 S OU=""
 I %REPN="W4DPMH",QUERY["zepnfd" D  Q
 .I '$G(MASPRM("PARIT","ME")),'$G(MASPRM("SUGP","ME")) D
 ..N MEDT,ADDT
 ..S MEDT=$$GETP^%W1PRM("W4DPMHDT1")
 ..S ADDT=$$GETP^%W1PRM("W4DPMHDT2")
 ..S ^LV("MEDT")=MEDT,^LV("ADDT")=ADDT
 ..I ADDT-MEDT>10 S OU="ITEMORGROUPMUST:MEPARIT"
 ;
 I %REPN="W4PRHZ" D  Q
 .I '$G(MASPRM("PAR","ME")) D
 ..N MEDT,ADDT
 ..S MEDT=$G(MASPRM("TRH","ME"))
 ..S ADDT=$G(MASPRM("TRH","AD"))
 ..S ^LV("MEDT")=MEDT,^LV("ADDT")=ADDT
 ..I ADDT-MEDT>10 S OU="ITEMMUST:MEPAR"
 ;
 Q

%W1PCSR
%W1PCSR(PRINT,TXT,SM) ; [ 27.04.14 09:36 ] [
S1 ;
 Q:$G(PRINT)<3
 S %MDP("B")=$G(%MDP("B"))
 S %MDP("N")=$G(%MDP("N"))
 I '$G(%MDP("GWPC")) S %MDP("GWPC")=40
 S TXT=$$RPL^%L1FRM(TXT,"<B>",%MDP("B"))
 S TXT=$$RPL^%L1FRM(TXT,"<N>",%MDP("N"))
 ;
 S TXT=$$CLST^%L1FRM(TXT,%MDP("B"),%MDP("N"))
 ;
 I $$L^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),%MDP("N"))>40,%MDP("GWPC")'>40 D
 .S TXT=$$RPL^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),"")
 ;
S11 Q:$G(PRINT)<3
 S SM=+$G(SM)
 L +@$$^W4PC@(PRINT):1
 N PCN,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 S ST=%MDP("N")_$J("",SM)_$TR(TXT,TS0,TSS)
 S ST=$$RPL^%L1FRM(ST,$TR(%MDP("B"),TS0,TSS),%MDP("B"))
 S ST=$$RPL^%L1FRM(ST,$TR(%MDP("N"),TS0,TSS),%MDP("N"))
S12 Q:$G(PRINT)<3  I PRINT=54,$$^%L1T2P(ST) G ES11
 I '$D(PCN) S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 S @$$^W4PC@(PRINT,PCN)=ST
ES11 K TXT L -@$$^W4PC@(PRINT)
 Q

%W1PCVRM
%W1PCVRM ; [ 13.06.09 20:37 ] [
 S PRTN=$$^%W1JB
 S VRM=$$^W4GL("VRM")_"("""_PRTN_""")"
 Q

%W1PCZ
%W1PCZ ;      [ 19.07.26 17:37 ] [ 19.07.22 20:40 ] [ 06.10.21 13:20 ] 
  S ^%TYPCRT(%L3MYDVN)="VT510"
  S %HBRY=""
  N COD,COLPR,A,FLD,OUT
  I '$D(%POSIC) D ^%L1C
  X %chista
BG S GLREP="^[$$^W3MAIN]W1REP(""H"")"
  S GLREPBG="^[$$^W3MAIN]W1REP(""H"","
  X %chista N %ECHO S %HBRY=""
  S %SAY=" zegec llegn " X %XMSGV
ZD S %GET=" g""ec cew ++2,70,HH#"_$G(%REPN)_"++8,E,I++++++^rep" D ^%L1GET Q:%S=""!($G(%TO)="END")
  S %REPN=%S I $D(@GLREP@(%REPN))=11 G ZN
  K %Q S %Q("Z")=" xg` gecn wizrdl ",%Q("X")=10,%Q("Y")=3 D ^%S2ASK I YES D
 .S %GET=" dwzrdl gec cew ++3,34,HH,,,C#++8,E,I++++++^|$$^W3MAIN|W1REP" D ^%L1GET Q:%S=""!(%TO="END")
 .N %REPN1 S %REPN1=%S
 .S MAC1=GLREPBG_"%REPN1)",MAC2=GLREPBG_"%REPN)" D ^%S1GC1
 ;
ZN S %RNAME=$G(@GLREP@(%REPN)) S %GET=" g""ec xe`z ++2,50,HH#"_%RNAME_"++40,H,I" D ^%L1GET G:$G(%TO)="END" ZD
  S (%RNAME,@GLREP@(%REPN))=%S
  ;
  S %GLOB1=$$GL4($G(@GLREP@(%REPN,"GLOB1")))
Z1 S %GET="GLOBAL START:++3,1,EE#"_%GLOB1_"++40,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") ZN
  S %GLOB1=%S I $E(%GLOB1)'="^" S %GLOB1="^"_%GLOB1
  S @GLREP@(%REPN,"GLOB1")=$$GL2(%GLOB1)
  ;
  S %GLOB2=$$GL4($G(@GLREP@(%REPN,"GLOB2")))
Z2 S %GET="GLOBAL FINISH:++4,1,EE#"_%GLOB2_"++60,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") Z1
  S %GLOB2=%S I $E(%GLOB2)'="^" S %GLOB2="^"_%GLOB2
  I %GLOB2'[$E(%GLOB1,1,$L(%GLOB1)-1) X %XMSGV("ER") G Z2
  S @GLREP@(%REPN,"GLOB2")=$$GL2(%GLOB2)
  ;
  S (%S,COD)=$G(@GLREP@(%REPN,"COD"))
Z3 S %SAY="VARIABLE LIST:++5,1,EE#" X %XMSG
  N %X1,%X2,%Y1,%Y2 S %X1=5,%X2=75,%Y1=6,%Y2=7 D ^%L1WE
  Q:$D(%L1GET)
  K ^MBG($P) N A,FLD
  S COD=%S,@GLREP@(%REPN,"COD")=COD
  I $D(@GLREP@(%REPN,0))<10 D 1,2,3,4 G BG
  D 1 S COD=@GLREP@(%REPN,"COD")
Z4 D  G:%S=""!($G(%TO)="END") Z5 D @%S G Z4
  .F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I
  .S %XX=0,%YY=8 X %POSIC,%chiste
  .S %GET=" 5 - zezli`y, 4 - zexcbd , 3 - zxzek , 2 - miizenk mipezp , 1 - micew ++8,77,HH#++1,E,I"
  .D ^%L1GET
  Q
Z5 S %Q("Z")=" CONDENSED ",%Q("U")=$S($G(@GLREP@(%REPN,"LPT"))="S":"Y",1:"N")
 D ^%S1ASK S @GLREP@(%REPN,"LPT")=$S(YES:"S",1:"B")
 G ZD
 ;
 ;
1 N COD,GLOB2,I,A
 S COD=@GLREP@(%REPN,"COD") K ^MBG($P)
 S GLOB2=@GLREP@(%REPN,"GLOB2")
 F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I D
  .N PRM
  .S PRM=$G(@GLREP@(%REPN,0,A))
  .;COD\SHEM\DL\SUG
  .S ^MBG($P,I)=A_"\"_$P(PRM,";")_"\"_+$P(PRM,";",2)_$S($P(PRM,";",2)[".":".",1:"")_"\"_$S($P(PRM,";",2)["H":"H",$P(PRM,";",2)["D":"D",$P(PRM,";",2)["N":"N",1:"E")
  .;FILE\OUT\DL\MUMPS\SHEIL\SET
  .I ","_$P($P(GLOB2,")"),"(",2)_","[(","_A_",") S @GLREP@(%REPN,0,A,"SET")=1
  .S ^MBG($P,I)=^MBG($P,I)_"\"_$$GL4($G(@GLREP@(%REPN,0,A,"FILE")))_"\"_$G(@GLREP@(%REPN,0,A,"OUT"))_"\"_$S($D(^("M2")):^("M2"),1:"")_"\"_$G(^("SH"),1)_"\"_+$G(^("SET"))
 ;
  S %SAY=" g""eca micew xe`z ++9,50,HH,I,,C" X %XMSG
  D INIT D ^%L1MBG
  S %GETIN="k" D IS1^%L1GET I 'YES K ^MBG($P) Q  ;G 2
  K OUT
  F I=1:1 Q:'$D(^MBG($P,I))  D
  .S ST=^(I),A=$P(ST,"\") Q:A=""  K @GLREP@(%REPN,0,A)
  .S @GLREP@(%REPN,0,A)=$P(ST,"\",2)_";"_$P(ST,"\",3)_$S($P(ST,"\",4)="H":"H",$P(ST,"\",4)="D":"D",$P(ST,"\",4)="N":"N",1:"")
  .I $P(ST,"\",5)'="" S @GLREP@(%REPN,0,A,"FILE")=$$GL2($S($P(ST,"\",5)'["^"&($E($P(ST,"\",5))'="+"):"^",1:"")_$P(ST,"\",5))
  .I $P(ST,"\",6)'="" D  S:$P(ST,"\",7)'="" @GLREP@(%REPN,0,A,"M2")=$P(ST,"\",7) S:$P(ST,"\",9)'="" @GLREP@(%REPN,0,A,"SET")=$P(ST,"\",9) Q
  ..S @GLREP@(%REPN,0,A,"OUT")=$P(ST,"\",6)
  ..S OUT($P(ST,"\",6))=""
  .I $P(ST,"\",7)'="" S @GLREP@(%REPN,0,A,"M2")=$P(ST,"\",7)
  .I $P(ST,"\",8)'="" S @GLREP@(%REPN,0,A,"SH")=$P(ST,"\",8)
  .I $P(ST,"\",9)'="" S @GLREP@(%REPN,0,A,"SET")=$P(ST,"\",9)
  K ^MBG($P)
  S FLD="" F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) I A'="",'$D(OUT(A)) S FLD=FLD_A_"*"
  S @GLREP@(%REPN,"FLD")=$E(FLD,1,$L(FLD)-1)
  Q
  ;
  ;
2 S COD=@GLREP@(%REPN,"COD") K ^MBG($P)
  F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I
  Q:COLPR'<$L(COD,"*")
  S JJ=0
  F I=COLPR+1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  D
  .N PRM
  .S PRM=$G(@GLREP@(%REPN,0,A))
  .S JJ=JJ+1 S ^MBG($P,JJ)=$P(PRM,";")_"\"_$P($P(PRM,";",2),",")_"\"_+$P($P(PRM,";",2),",",2)_"\"_$P($G(@GLREP@(%REPN,"SIK")),"*",JJ)_"\"_$P($G(@GLREP@(%REPN,"MAM")),"*",JJ)
  ;
  S %SAY=" g""eca miizenk mipezp xe`z ++8,50,HH,I,,C" X %XMSG
  D INIT1 S %YY=%MBG("VGR0")-1,%XX=0 X %POSIC,%chiste D ^%L1MBG
  S %GETIN="k" D IS1^%L1GET I 'YES Q
  ;
  F I=1:1 Q:'$D(^MBG($P,I))  D
  .S ST=^(I) S A="x"_I K @GLREP@(%REPN,0,A)
  .S @GLREP@(%REPN,0,A)=$P(ST,"\")_";"_$P(ST,"\",2)_","_$P(ST,"\",3)
  .S $P(@GLREP@(%REPN,"SIK"),"*",I)=$P(ST,"\",4)
  .S $P(@GLREP@(%REPN,"MAM"),"*",I)=$P(ST,"\",5)
  D GET
  Q
  ;
  ;
3 ;
 S SHP=$G(@GLREP@(%REPN,"SHP","KOD")) K %L1GET
 S %GET=" dpeilr zxzek cew++8,60,HH,,,C#"_SHP_"++8,E,I" D ^%L1GET Q:($G(%TO)="END")
 I '$D(@GLREP@(%REPN,"SHP")),%S="" Q
 I %S="" S %GET=" 99 - lehial " D N^%L1GET G:%S'=99 3 K @GLREP@(%REPN,"SHP") Q
 N SHP S SHP=%S K ^S000($P) S @GLREP@(%REPN,"SHP","KOD")=SHP
 F I=1:1 Q:'$D(^SHP(SHP,I))  S ^S000($P,I)=^SHP(SHP,I)
 K U,R,L,Y1,X1,U1 S %RMAX=79,%PRHBR=1,RL=79 D RSHP D ^%S2ERG1
 S %GETIN="k" D IS1^%L1GET I 'YES K ^S000($P) G E3
 S %GET=" ycg zxzek cew ++23,24,HH#"_SHP_"++8,E,I" D ^%L1GET G:%S=""!($G(%TO)="END") E3
 S SHP=%S
 K ^SHP(SHP) F I=1:1 Q:'$D(^S000($P,I))  S ^SHP(SHP,I)=^S000($P,I)
 S %SAY=" zxzek mixhnxt zexcbdl MUMPS zcewt qipkdl `p ++12,70,HH,I" X %XMSG
 S %Y1=13,%Y2=15,%X1=5,%X2=75,%S=$G(@GLREP@(%REPN,"SHP","PROG"))
 D ^%L1WE I %S'="" S @GLREP@(%REPN,"SHP","PROG")=%S
E3 X %chista S %L1GET="" D ZD K %L1GET
 Q
 ;
 ;
4 ;
GET ;
 S %XX=0,%YY=8 X %POSIC,%chiste
 S %SAY=" :mipzynl aly lka zexcbd qipkdl `p ++8,50,HH,I" X %XMSG
 N GLOB S %BS=0 K %L1GET
 F II=1:1:$L(%GLOB2,",") S GLOB=$P(%GLOB2,",",1,II) S:GLOB'[")" GLOB=GLOB_")" D  Q:%BS
 .S %SAY=GLOB_":++"_(10+(II-1*2))_",10,EE,I" X %XMSG
 .S %S="" S %GET="++"_(11+(II-1*2))_",3,EE#"_$G(@GLREP@(%REPN,"US",II))_"++70,E,I" D ^%L1GET
 .I $G(%TO)="END"!($G(%TO)="UP") S II=II-2 I II<0 S %BS=1
 .I %S?.P K @GLREP@(%REPN,"US",II) Q
 .I %S'?.P S @GLREP@(%REPN,"US",II)=%S
 .F J=1:1:$L(%S,"=") S SET=$P(%S,"=",J) S:SET[" " SET=$P(SET," ",$L(SET," ")) S:SET["," SET=$P(SET,",",$L(SET,",")) I SET'="" S SET(SET)=""
 N A1 S A1="" F J=1:1:$L(COD,"*") S A=$P(COD,"*",J) I ","_$P($P(%GLOB2,$P(%GLOB1,")"),2),")")_","'[(","_A_","),'$D(OUT(A)),'$D(SET(A)) S A1=A1_A_" , "
 I A1'="" W *7,!,$E(A1,1,$L(A1)-2)," : xcben `l "
 S %GETIN="k" D IS1^%L1GET I 'YES G GET
 Q
 ;
 ;
5 ;-- SHEILTOT
 D ^%W1PCZS
 X %chista
 Q
 ;
 ;
INIT S NPG=1,PG(1)=0,RZD="\" K %MBG
 S %MBG("VGR0")=10,%MBG("VGR")=11
 F J=1:1 Q:$E($T(SCREEN+J),2)="Q"  S %MBG("PAR",J)=$T(SCREEN+J)
 S %MBG("REF")="^MBG($P"
 S %REFH1=%MBG("REF")
 S %REFHS="^MBG($P,SH)"
 S %MBG("STEP")=2
 Q
INIT1 S NPG=1,PG(1)=0,RZD="\" K %MBG
 S %MBG("VGR0")=10,%MBG("VGR")=11
 F J=1:1 Q:$E($T(SCREEN1+J),2)="Q"  S %MBG("PAR",J)=$T(SCREEN1+J)
 S %MBG("REF")="^MBG($P"
 S %REFH1=%MBG("REF")
 S %REFHS="^MBG($P,SH)"
 S %MBG("STEP")=1
 Q
 ;
RSHP K ^S000($P)
 F I=1:1 Q:'$D(^SHP(SHP,I))  D:'+$G(^SHP(SHP,I,"%TOP"))  S ^S000($P,I)=^SHP(SHP,I),^S000($P,I,"%TOP")=$G(^SHP(SHP,I,"%TOP"))
 .S SS=^SHP(SHP,I) F II=1:1:$L(SS) Q:$E(SS,II)'=" "
 .S ^SHP(SHP,I,"%TOP")=II-($E(SS,II)'=" ")
 Q
SCREEN ;
KOD ;(lbp`)cew;72;8;E;#@S %MBG("NEW",%MBG("F","KOD"))=1## <ESC> - d`ivi
SHEM ;(zixar) my;62;16;H;#@S %MBG("NEW",%MBG("F","SHEM"))=1##
DL ;jxe`;44;4;E;#@S %MBG("NEW",%MBG("F","DL"))=1##
TYP ;beq;38;1;E;#@S %MBG("NEW",%MBG("F","TYP"))=1## D - jix`z , H - ixar , E - ixnep
FILE ;uaew;33;18;E;### oezp xe`z `vnp dti` ,zilbp`a uaew my
BEN ; dpyin ;13;8;E;#@S %MBG("NEW",J)=1##(zilbp`) oezp xe`zl dpzyn my
SUG ; `zli`y zwical e` dpyn zxcbdl MUMPS zcewt ;+75;60;E;###
SH ;`zli`y;+14;1;E;### 0 - `l , 1 - `zli`y
SET ;hq;+6;1;E### 0 - zxg` ,1 - mipezp hq cilwdl ixyt` m`d
 Q
SCREEN1 ;
SHEM1 ;(zixar) my;72;20;H;#@S %MBG("NEW",%MBG("F","SHEM1"))=1##
DL1 ;jxe`;50;4;E;#@S %MBG("NEW",%MBG("F","DL1"))=1##
DL2 ;dcewp ixg`;40;4;E;###
SIK ;mekiq oniq;26;1;E;#@S %MBG("NEW",%MBG("F","SIK"))=1## 0 - zxg` , 1 - mekiq lawl zexyt`
MAM ;n"rn oniq;14;1;E;
 Q
GL2(GL) ;
 I $G(GL)="" Q ""
 N GL2
 I $E(GL)'="^",$E(GL)'="+" S GL="^"_GL
 S GL=$TR(GL,"[]","||")
 S GL2=GL
 I $E(GL,2)'="|" S GL2="^|$$^%W1UCI(JB)|"_$E(GL,2,80) Q GL2
 I GL["^|M|" S GL2="^|$$^W3MAIN|"_$P(GL,"|",3,20) Q GL2
 I '$D(JB) S JB=1
 I GL["^|TM|",$L(GL)>5 S GL2=$$^W4MAIN($P(GL,"|",3,20)) Q GL2
 Q GL
 ;
GL4(GL) ;
 I $G(GL)="" Q ""
 N GL4
 I $E(GL)'="^",$E(GL)'="+" S GL="^"_GL
 ;;I GL["^VRM"!(GL["^TMP")!(GL["^TEMP") S GL="^|M|"_$E(GL,2,80)
 S GL=$TR(GL,"[]","||")
 S GL4=GL
 I GL["^|$$^W3MAIN|" S GL4="^|M|"_$P(GL,"|",3) Q GL4
 I GL["(""JB" D  Q GL4
 .I GL["|" S GL=$P(GL,"|",3)
 .I GL["]" S GL=$P(GL,"]",2)
 .I $E(GL)="^" S GL=$E(GL,2,30)
 .I GL["(" S GL=$P(GL,"(")
 .S GL4="^|TM|"_GL
 ;
 I GL["|",GL'["|M|" S GL4="^"_$P(GL,"|",3) Q GL4
 Q GL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1PCZS
%W1PCZS ; [ 30.10.17 16:58 ] [ 08.08.17 13:54 ] [ 24.07.16 17:12 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%REPN) D ^%L1C
 S FLMODIF=0
 S GLREP="^[$$^W3MAIN]W1REP(""H"")"
 S GLREPBG="^[$$^W3MAIN]W1REP(""H"","
 S JB=$$^%W1SsID("W1PCZ")
QUERY ;
 X %chista
 I $D(@GLREP@(%REPN,"QUERY")) D  I $G(FLAG)'="" S %BS=1 G ENDPC
 .N %LAB,%L1,INDEX,MAC
 .S MAC=GLREPBG_"%REPN,""QUERY"")",%L1("EU")=3
 .I $G(%OLDIND) S %L1("IND")=%OLDIND
 .S %L1("T1")=" g""ec zxevz xegal `p "
 .S %L1("TXT1")="%NXN"
 .S %L1("BE")=4 D ^%L1NU
 .Q:FLAG'=""  Q:INDEX=""  S QUERY=INDEX,%OLDIND=INDEX("N")
 .N I F I="MIUN","SIK0","CT","FLD0" D
 ..S @GLREP@(%REPN,I)=$G(@GLREP@(%REPN,"QUERY",QUERY,I))
 ;
V0 D
 .N GLREP
 .D ^%W1PCIN
V01 X %chista
 S %L1GET="" D SHEIL K %L1GET ; ----- VISV. SHEIL.
 ;
Z ;;I $D(%L1PC("SHEIL")) G ENDPC
 S %SAY="" I $L($G(QUERY)) S %SAY=" <CTRL>+E - """_$$SPA^%L1FRM($$HBR^%L1FRM(QUERY,40))_""" `zli`y lehia "
 S %SAY=%SAY_"++23,78,HH" X %XMSG
 S %GETIN=""
 S %ZMSF="",%GET=" <F10> - mixhnxt zxiny ,<F9> - g""ecd akxda iepiy , <F7> - zezl`y zniyx " D N^%L1GET I %TO="F9" S %S=99 S FLMODIF=FLMODIF+1
 I %TO="DEL",$L($G(QUERY)) K @GLREP@(%REPN,"QUERY",QUERY) S QUERY="" G QUERY
 S %SAY="++23,78,HH,,,C" X %XMSG
 I %TO="F7" S %LAB="V0" G QUERY
 I %TO="F10" D SAVE G Z
 ;
 I (%S=99) D  S %LAB="V0" G V01 ;--- BITUL SADOT MEJUTAROT
 .S %HBRY="" N I,J,A,A1,O,%MBS F I=1:1:$L(@GLREP@(%REPN,"FLD"),"*") D
 ..S A=$P(^("FLD"),"*",I),A1=""
 ..I $L(A) S A1=$P(@GLREP@(%REPN,0,A),";")
 ..S %MBS("Z",I)=A1,%MBS("O",I)=$P($G(@GLREP@(%REPN,"FLD0")),"*",I)
 ..S %MBS("D",I,1)=1
 ..S %MBS("S",I)="-",%MBS("RGS",I)="E"
 .S %MBS("DZ")=14,%MBS("N")=" miievx `l zecy ""-""a onql `p " D ^%S3BST
 .;
 .S O="" F I=1:1 Q:'$D(%MBS("O",I))  S O=O_%MBS("O",I)_"*"
 .S FLD0=$E(O,1,$L(O)-1)
 .S @GLREP@(%REPN,"FLD0")=FLD0
 ;
S D SHEIL1 K %L1GET ; ---- VERXN. SHEILTA
 I %BS,$O(@GLREP@(%REPN,"QUERY",$O(@GLREP@(%REPN,"QUERY",""))))'="" X %chista S %LAB="ENDPC" G QUERY
ENDPC I %BS K %L1PC,MAS Q  ;----------------------- END
 ;
 ;
 S MM=0 F I=1:1:MAXMIUN I $G(MIUN(I))>MM,$G(MIUN(I))<MAXMIUN S MM=+$G(MIUN(I))
S1 F I=1:1:MAXMIUN I +$G(MIUN(I))=0 S MM=MM+1,MIUN(I)=MM G S1
 F IJK=1:1:MAXMIUN I MIUN(IJK)>MAXMIUN S %SAY=" icn lecb oein 'qn " X %XMSGN(1) G S
 F I=1:1:MAXMIUN F J=I+1:1:MAXMIUN I +MIUN(I),+MIUN(I)=+MIUN(J) S %SAY=" ! miinrt ywed oein xtqn eze` " X %XMSGN(1) G S
 ;
S3 D SHEIL31 I %BS G S
 D IS3^%L1GET
 I %S=0 G END
 I %S=2 D SAVE G END
 I %S=1!($G(%TO)="END") G S3
END Q
 ;
SHEIL N %L1PCER ;     [ 01.07.07 11:15 ] [ 23.08.06  2:43 PM ] [ 21.08.06  2:55 PM ]
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL1 N COD,IJK,TYP,%GETREST S %BS=0,%TO=""
 I $D(%L1PC("SHEIL")) X %L1PC("SHEIL") Q
 N %HBRY S %HBRY=""
 I $D(%L1GET) S Y1=4,Y2=Y1+MAXMIUN+1,X1=3,X2=79 D ^%L1RBUA
 D KOT
 S %SAY="{} zxzek | mekiq | oein {}  (.) - zezli`y blcl ++2,45,HH" X %XMSG
 F IJK=1:1:MAXMIUN S COD=$P(%L1PC("FLD"),"*",IJK) D  Q:%BS
 .;
 .Q:$G(@GLREP@(%REPN,0,COD,"SH"))=0  K %RNG
ZSH .S %RNG=$G(@GLREP@(%REPN,0,COD))
 .S DL=$P(%RNG,";",2),TYP=$TR($P(%RNG,";",2),"0123456789,","")
 .S:TYP?.P TYP="E"
 .S %SAY=$P($P(%RNG,";"),"++")_"++"_(3+IJK)_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_(3+IJK)_",60,HH#++"_DL_","_TYP_",I",%L1PCER=0
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL1 K %L1GET"
 .S %RNG=%RNG_"++++"_$G(@GLREP@(%REPN,0,COD,"HELP"))
 .I $D(@GLREP@(%REPN,0,COD,"FILE")) S %RNG=%RNG_"++"_@GLREP@(%REPN,0,COD,"FILE")
 .S %RNG("V")=COD
 .I TYP="D" K:$G(%L1GET)="END1"&'$D(%L1PC("VAL",COD)) %L1GET
 .I $D(%L1PC("VAL",COD)),'$D(%L1GET) S %L1GET="V"
 .D RR^%L1RNG I $G(%L1GET)="V" K %L1GET
 .I $D(%L1GET) G ZSHM
 .I $G(%TO)="END"!($G(%TO)="UP") D  S IJK=IJK-1 S:IJK<0 %BS=1 Q
 ..N IJKOK S IJKOK=0
 ..F IJK=IJK-1:-1:1 S COD=$P(%L1PC("FLD"),"*",IJK) I $L(COD) D  Q:IJKOK
 ...I $D(%L1PC("VAL",COD)) Q
 ...I $G(@GLREP@(%REPN,0,COD,"SH"))'=0 S IJKOK=1 Q
 .
 .I $G(%TO)="END1" S %L1GET="END1"  ;------- <.> --> %TO="END1"
 .;
 .I TYP="D" D
 ..I @("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4) Q
 ..I @("ME"_COD)?2N1"."2N1"."2N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),3) Q
 .I TYP="D" D
 ..I @("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4) Q
 ..I @("AD"_COD)?2N1"."2N1"."2N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),3) Q
 .
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)),'$D(%L1PC("VAL",COD)) W *7 G ZSH
 .I $G(%TO)="DW" S %TO="" Q
ZSHM .S %GET="++"_(3+IJK)_",25,H#"_$S($G(MIUN(IJK)):$G(MIUN(IJK)),1:"")_"++2,E,I++++(oein 'qn ixg` ""!"" siqedl `p a""` itl oeinl) 'eke 2- dpyn oein ,1- deab ikd oein"
 .D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") S:$D(%L1PC("VAL",COD)) IJK=IJK-1 S:IJK<1 %BS=1 Q:%BS  G ZSH
 .S MIUN(IJK)=%S
ZSHM1 .S %GET="++"_(3+IJK)_",15,H#"_$S($G(SIK(IJK)):$G(SIK(IJK)),1:"")_"++1,E,I++3210++ 0 - zxg` ,2 - rvenn, 1 - dcy itl mekiq lawl " D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") G ZSHM
 .S SIK(IJK)=+%S
 .S %GET="++"_(3+IJK)_",7,H#"_$S($G(CT(IJK)):$G(CT(IJK)),1:"")_"++1,E,I++012++oeniq `ll e` 0 - izxbiy dcy ,2 -zexeyd oia zxzek,1 - g""ec zxzeka dcy" D ^%L1GET I $G(%TO)="END"!($G(%TO)="UP") G ZSHM1
 .S CT(IJK)=+%S
 Q:%BS  I $D(%L1PC("SHEIL1")) X %L1PC("SHEIL1")
 K:$G(%L1GET)="END1" %L1GET
 I $D(%L1GET) D SHEIL3
 Q
 ;
SHEIL2 ;---------------- HITUHIM NOSAFIM
 I $D(%L1PC("SHEIL")) Q
 N JJ,OLDCOD S JJ=0
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
SHEIL21 N COD,IJK,TYP,%GETREST S %BS=0
 N %HBRY S %HBRY="",%TO=""
 I $D(%L1GET) S Y1=14,Y2=Y1+$L(%L1PC("FLD"),"*")-MAXMIUN+1,X1=3,X2=79,%L1RBCL="" D ^%L1RBUA
 F IJK=MAXMIUN+1:1:$L(%L1PC("FLD"),"*") S COD=$P(%L1PC("FLD"),"*",IJK) I COD'?.P D  Q:%BS
 .K %RNG
 .S IJK1=IJK-MAXMIUN+13
 .S %RNG=@GLREP@(%REPN,0,COD) S DL=+$P(%RNG,";",2),TYP="E"
ZSH2 .S %SAY=$P($P(%RNG,";"),"++")_"++"_IJK1_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_IJK1_",60,HH#++"_DL_","_TYP_",I"
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL21 K %L1GET"
 .S %RNG("V")=COD ;S %RNG("DAT")=""
 .I '$D(%L1GET),$D(%L1PC("VAL",COD)) S %L1GET="V"
 .D RR^%L1RNG I $G(%L1GET)="V" K %L1GET
 .Q:$D(%L1GET)
 .I $G(%TO)="END"!($G(%TO)="UP") S IJK=IJK-2 S:IJK<MAXMIUN %BS=1 Q
 .I TYP="D" D
 ..I @("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4) Q
 ..I @("ME"_COD)["." S @("ME"_COD)=$$^%L1DC(@("ME"_COD),3) Q
 .I TYP="D" D
 ..I @("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4) Q
 ..I @("AD"_COD)["." S @("AD"_COD)=$$^%L1DC(@("AD"_COD),3) Q
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)),'$D(%L1PC("VAL",COD)) W *7 G ZSH2
 .I @("ME"_COD)?.P,TYP="N" S @("ME"_COD)=-99999999
 .I @("AD"_COD)?.P S @("AD"_COD)=99999999
 .I $G(%TO)="END1" S %L1GET="END1" Q  ;------- <.> --> %TO="END1"
 S %SRKM=1 K:$G(%L1GET)="END1" %L1GET
 Q
 ;
SHEIL3 ;
 N %L1PCER,IJK,COD,Y1,Y2,CMIN,%I ; --> %FLDMIN (-)
 S %FLDMIN="",%BS=0,%TO=""
 F %I=1:1:$L($G(@GLREP@(%REPN,"FLD")),"*") I $P($G(@GLREP@(%REPN,"FLD0")),"*",%I)="-"  D
 .K %RNG
 .S COD=$P(@GLREP@(%REPN,"FLD"),"*",%I)
 .Q:$G(@GLREP@(%REPN,0,COD,"SH"))=0
 .I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)="" ;;99999999
 .S %FLDMIN=%FLDMIN_COD_"*"
 Q:%FLDMIN=""
 S %FLDMIN=$E(%FLDMIN,1,$L(%FLDMIN)-1)
SHEIL31 I $D(%L1PC("SHEIL")) Q
 S CMIN=$L(%FLDMIN,"*")
 N %HBRY S %HBRY=""
 S Y1=4+MAXMIUN+3,Y2=Y1+CMIN+1,X1=3,X2=79 I $D(%L1GET) D ^%L1RBUA
 D KOT
 S Y1=Y1-1
 S %SAY="(.) - zezli`y blcl ++"_(Y1-1)_",45,HH" X %XMSG
 F IJK=1:1:$L(%FLDMIN,"*") D  Q:%BS
ZSH3 .S COD=$P(%FLDMIN,"*",IJK) Q:COD=""  I '$D(%L1PC("VAL",COD)) S @("ME"_COD)="",@("AD"_COD)=""
 .S %RNG=@GLREP@(%REPN,0,COD) S DL=+$P(%RNG,";",2),TYP=$TR($P(%RNG,";",2),"0123456789,","") S:TYP?.P TYP="E"
 .S %SAY=$P($P(%RNG,";"),"++")_"++"_(Y1+IJK)_",77,HH"
 .D S0
 .X %XMSG
 .S %RNG="++"_(Y1+IJK)_",60,HH#++"_DL_","_TYP_",I",%L1PCER=0
 .I %TYPCRT'="PC"&(%TYPCRT'["VT5") S %GETREST="N %GET,%XX,%YY,IJK,%RNG,%S S %L1GET="""" D SHEIL31 K %L1GET"
 .I $D(@GLREP@(%REPN,0,COD,"FILE")) S %RNG=%RNG_"++++++"_@GLREP@(%REPN,0,COD,"FILE")
 .S %RNG("V")=COD
 .I TYP="D" K:$G(%L1GET)="END1" %L1GET
 .I $D(%L1PC("VAL",COD)),'$D(%L1GET) S %L1GET="V"
 .D RR^%L1RNG I $G(%L1GET)="V" K %L1GET
 .Q:$D(%L1GET)
 .I $G(%TO)="END"!($G(%TO)="UP") S IJK=IJK-2 S:IJK<0 %BS=1 Q
 .I $G(%TO)="END1" S %L1GET="END1" Q  ;------- <.> --> %TO="END1"
 .Q:$D(%L1GET)
 .I TYP="D" D
 ..I @("ME"_COD)?6N S @("ME"_COD)=$$^%L1DC(@("ME"_COD),4) Q
 ..I @("ME"_COD)["." S @("ME"_COD)=$$^%L1DC(@("ME"_COD),3) Q
 .I TYP="D" D
 ..I @("AD"_COD)?6N S @("AD"_COD)=$$^%L1DC(@("AD"_COD),4) Q
 ..I @("AD"_COD)["." S @("AD"_COD)=$$^%L1DC(@("AD"_COD),3) Q
 .;;I $D(@GLREP@(%REPN,0,COD,"M2")) X ^("M2") I %L1PCER W *7 G ZSH3
 .I TYP="D",'$G(@("AD"_COD))!'$G(@("ME"_COD)),'$D(%L1PC("VAL",COD)) W *7 G ZSH3
 .I $G(%TO)="DW" S %TO="" Q
 K:$G(%L1GET)="END1" %L1GET
 I '$D(%L1GET) F I=1:1:$L(%FLDMIN,"*") S A=$P(%FLDMIN,"*",I) I A'?.P D
 .I $G(@("ME"_A))?.P,TYP="N" S @("ME"_A_"=-99999999")
 .I $G(@("AD"_A))?.P S @("AD"_A)=$TR($J("",$P($G(@GLREP@(%REPN,0,A)),";",2))," ",9)
 Q
KOT S %SAY=" "_$G(QUERY)_" : "_$G(@GLREP@(%REPN)) X %XMSGV
 Q
S0 ;
 I ","_$P($P($G(GLOB2),"(",2),")")_","[(","_COD_",")!$D(%L1PC("S0",COD)) S %RNG("S0")=1 S %SAY="*"_%SAY
 Q
 ;
SAVE ;
 S %GET=" `zli`yd my ++22,75,HH,,R#"_$G(QUERY)_"++60,H,I++++++"_GLREPBG_"%REPN,""QUERY"")\60\1\16" D ^%L1GET G:%S=""!(%TO="END") ESAVE
 S QUERY=$$SPA^%L1FRM(%S) D KOT
 ;
 I $D(@GLREP@(%REPN,"QUERY",QUERY)) S %GET=" 99 - xey`l . zniiw xak `zli`y " D N^%L1GET G:%S'=99&(%TO'="F9") ESAVE
 ;
 M SIK0=SIK
 S FLD0=$G(@GLREP@(%REPN,"FLD0"))
 ;
 I FLD0="" D
 .S FLD0=$G(@GLREP@(%REPN,"FLD"))
 .S FLD0=$P(FLD0,"*x1")
 .S ^("FLD0")=FLD0
 S @GLREP@(%REPN,"QUERY",QUERY,"FLD0")=FLD0
 ;
 N I F I="MIUN","SIK0","CT" D
 .N PRM,J S PRM="",J=0
 .N SH F SH=1:1:$L(FLD0,"*") D
 ..I $P(FLD0,"*",SH)="-" S PRM=PRM_"*" Q
 ..S J=J+1,PRM=PRM_$G(@I@(J))_"*"
 .;
 .S @GLREP@(%REPN,"QUERY",QUERY,I)=$E(PRM,1,$L(PRM)-1)
 S %GET=" <ENTER> . dnlyed dxiny " D N^%L1GET
ESAVE N %YY S %YY=21,%XX=0 X %POSIC X %chiste
 Q
 
 
 
 
 
 
 
 
 
 

%W1PRM
%W1PRM ; [ 28.03.26 19:53 ] [ 10.09.23 14:37 ] [ 03.09.23 18:23 ] 
PUT(NM,VL,JBB) ;
 I '$G(JBB) S JBB=JB
 N MAIN S MAIN=$$^W3MAIN
 S ^[MAIN]TMPPRM(+$G(JBB),NM)=VL
 S ^[MAIN]TMPPRM(+$G(JBB),NM,"TIME")=$H
 Q
 ;
TIME(NM,JBB) ;
 I '$G(JBB) S JBB=JB
 N MAIN S MAIN=$$^W3MAIN
 Q $G(^[MAIN]TMPPRM(+$G(JBB),NM,"TIME"))
 ;
GET(NM,DELAY,JBB) ;
 I $G(NM)="" Q ""
 I '$G(JBB) S JBB=$G(JB)
 I '$G(JBB) Q "//<JB?>"
 I $G(DELAY) H DELAY
 N MAIN S MAIN=$$^W3MAIN
 I JBB[".",'($D(^[MAIN]TMPPRM(JBB,NM))#2),$D(^[MAIN]TMPPRM($P(JBB,"."),NM))#2 D
 .S JBB=$P(JBB,".")
 N OU S OU=$G(^[MAIN]TMPPRM(JBB,NM),"<UNDEF>"_JBB_";"_NM_";"_$$ASC(NM)_"")
 I $E(NM,1,3)="PSW" D
 .N LASTJB S LASTJB=$$^%W1SsID
 .I LASTJB-JBB>1000000 S OU="" Q
 .I $$DIF^%L1TIME($H,$$TIME(NM,JBB))>$$TIMPSW S OU=""
 I NM="MSD",'OU S OU=1
 Q OU
 ;
GETP(NM)
 N VL S VL=$$GET(NM)
 I VL["<UNDEF" S VL=""
 Q VL
 ;
KILL(NM,DELAY,JBB) ;
 I '$G(JBB) S JBB=JB
 I '$G(JBB) Q
 I $G(NM)="" Q
 I $G(DELAY) H DELAY
 N MAIN S MAIN=$$^W3MAIN
 K ^[MAIN]TMPPRM(JBB,NM)
 Q
 ;
ASC(NM) ;
 N A S A=""
 N I F I=1:1:$L(NM) S A=A_$A(NM,I)_","
 Q A
 ;
TIMPSW() 
 Q 180 
 
 
 
 
 
 
 
 
 

%W1QUERY
%W1QUERY(QUERY) ; [ 18.04.07 07:27 ] [
SET Q:'$G(JB)
 Q:$G(QUERY)=""
 Q:QUERY?.P
 S ^W1PCPRM(JB,"QUERY")=QUERY
 Q

%W1SCR
%W1SCR ; [ 12.02.26 11:09 ] [ 08.02.26 09:54 ] [ 02.02.26 12:27 ] 
 N (JB,%ARG,%REM)
 K @$$^W4MAIN("W1SCR")
 D ^%W1ARG
 ;
 W "<style>",!
 W "#TblBut tr button { font-size:inherit;}",!
 W "</style>",! 
 ;
 W "<div dir=""LTR"" align=""center"">",!
 W "<table id=""TblBut"">",!
  W "<tr style=""font-size:"_$$^W3FSZ(12)_""">",!
   W "<td><button onClick=""CreateScr()"">Create Screen</button></td>"
   W "<td><button onClick=""EditPPrm()"">Edit P-Parameters</button></td>"
   W "<td><button onClick=""EditGPrm()"">Edit G-Parameters</button></td>"
   W "<td><button onClick=""CreatePrintForm()"">Create Print Form</button></td>"
  W "</tr>",!
 W "</table>",! 
 ;
 I $L($G(%ARG("SCR"))) D
 .S SCR=$$SCR(%ARG("SCR"))
 .D PUT^%W1PRM("SCR",SCR)
 .
 .I $G(%ARG("OPT"))=1 D ED(SCR) Q
 ;
 W "</div>",!
 Q
 ;
 ;
ED(SCR) ;
 D PREP(SCR)
 D VRM
 S A=""
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  I N D
 .S X=$G(^(N))
 .S A=A_X_$C(10)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 N GLED S GLED=""
 D CHN^%W1EDIT
 ;
 W "<textarea cols=""80"" rows=""24"" style=""line-height:18px"" id=""scr"" name=""TXTSCR"" >",!
  W A,!
 W "</textarea>",!
 W "<p></p>",!
 W "</div>",!
 ;
DIVBTN ;
 D DIVBTN^%W1EDIT
 Q
 ;
 ;
PREP(SCR) ;
 N %PR,%MAC1,%MAC2,%ORD,FLAG,%PR,VRM
 N MAC S MAC=$$^W4GL("SCR")_"("""_SCR_""")"
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 N I F I=1:1 Q:'$D(@MAC@(I))  D
 .S @VRM@(I)=$$H2U^%L1FRM($G(@MAC@(I)))
 Q
 ;
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
 ;
SCR(SCR)
 S SCR=$$RPL^%L1FRM(SCR,"$28","(")
 S SCR=$$RPL^%L1FRM(SCR,"$29",")")
 S SCR=$$RPL^%L1FRM(SCR,"$22","""")
 S SCR=$$RPL^%L1FRM(SCR,"$2B","+")
 S SCR=$$RPL^%L1FRM(SCR,"0g","")
 Q SCR
 ;
 ;
GETSCR(STAM)
 N A
 S A=$$GETP^%W1PRM("SCR")
 Q A
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1SV
%W1SV(%MC,%PRM) ; [ 22.12.13 13:44 ] [
 N %I,%FLD,%RG,%VL,%A,%A1,%J,%SMB
 F %I=1:1:$L(%MC,"~") D
 .S %FLD=$P(%MC,"~",%I)
 .S %RG=$P(%FLD,"!",2),%FLD=$P(%FLD,"!")
 .S %VL=$TR($P(%PRM,"~",%I),$C(160)_"?","")
 .S %VL=$$CLEAR^%L1FRM(%VL)
 .S %VL=$$CNWEB^%L1FRM(%VL)
 .I %RG="H"&($$^%W1DIR="RTL") S %VL=$$INVH^%L1FRM(%VL)
 .S %A=$$SPA^%L1FRM(%VL)
 .S %A1="" F %J=1:1:$L(%A) D
 ..S %SMB=$E(%A,%J)
 ..I $A(%SMB)<32!($A(%SMB)>122) Q
 ..S %A1=%A1_%SMB
 .S @%FLD=%A1
 Q

%W1SsID
%W1SsID(%PKG) ; [ 19.04.16 06:25 ] [ 04.10.15 17:36 ] [ 09.01.13 19:01 ] 
 N GLD S GLD=$$^%L1GLD
 L +^[GLD]W1SsID:2
CYC N SSID S SSID=$O(^[GLD]W1SsID(999999999999),-1)
 I SSID<20 S SSID=20
 S SSID=SSID+$R(10)+1
 I $D(^[GLD]W1SsID(SSID)) G CYC
 S ^[GLD]W1SsID=SSID
 S ^[GLD]W1SsID1=SSID
 S ^[GLD]W1SsID(SSID)=$G(%REM)_"*"_$G(%SSUSER)_"*"_$G(%PKG)_"*"_$H_"*"_$J
 L -^[GLD]W1SsID
 S %ARG("JB")=SSID
 Q SSID
 
 

%W1SsID0
%W1SsID(%PKG) ; [ 17.07.12 15:45 ] [ 22.06.10 12:54 ] [ 09.04.07 13:07 ] [
 N GLD S GLD=$$^%L1GLD
 L +^[GLD]W1SsID:2
 L +^[GLD]W1SsID1:2
 N SSID S SSID=$G(^[GLD]W1SsID,1000)+1
 I SSID'>$G(^[GLD]W1SsID1) S SSID=$G(^[GLD]W1SsID1)+1
 S ^[GLD]W1SsID=SSID
 S ^[GLD]W1SsID1=SSID
 S ^[GLD]W1SsID(SSID)=$G(%REM)_"*"_$G(%SSUSER)_"*"_$G(%PKG)_"*"_$H_"*"_$J
 L -^[GLD]W1SsID
 L -^[GLD]W1SsID1
 Q SSID

%W1TBLSL
%W1TBLSL ; [ 04.05.07 18:05 ] [
 W "function CellSel(IDC,SEL)",!
 W "  {",!
 W "    var i,sel",!
 W "    sel=""<option>""+Parse(SEL,""~"",1,1)+""</option>""",!
 W "    for (i=2;i<=LenDlm(SEL,""~"");i++)",!
 W "      { sel=sel+""<option>""+Parse(SEL,""~"",i,i)+""</option>"" }",!
 W "    document.getElementById(IDC).innerHTML="
        W "'<select id=""SelMenu"" onchange=""SetCellSel()"">'+sel+'</select>'",!
 W "  }",!
 W "function SetCellSel()",!
 W "  {",!
 W "      var x=document.getElementById(""SelMenu"")",!
 W "      var y=document.getElementById(""td1"")",!
 W "      y.innerHTML=x.options[x.selectedIndex].text",!
 W "  }",!
 Q

%W1TXTJS
%W1TXTJS(TXT) ; [ 24.06.07 20:02 ] [ 22.06.07 17:26 ] [ 09.06.07 13:49 ]
 I $$^%W1LNG="E" Q TXT
 I $$^%W1LNG="H" N TXTH D  Q TXTH
 .S TXTH=""
 .S TXTH=$$H2U^%L1FRM(TXT)
 .S TXTH=$$D2H(TXTH)
 Q ""
D2H(TXTH) ;
 S TXTH=$TR(TXTH,"&#;","\u")
 Q $$D2H1(TXTH)
D2H1(TXTH) ;
 N PZ S PZ=0 F  S PZ=$F(TXTH,"\u",PZ) Q:'PZ  D
 .S PZ1=$F(TXTH,"\u",PZ)
 .I 'PZ1 S PZ1=$L(TXTH)+3
 .S $E(TXTH,PZ,PZ1-3)=$TR($J($$^%L1ZH($E(TXTH,PZ,PZ1-3)),4)," ",0)
 Q TXTH

%W1U2H
%W1U2H(TXT) ; [ 04.12.07 07:45 ] [ 13.10.07 12:15 ] [ 02.10.07 19:13 ]
 N I,I1,OU,HB,W,W1,PRHB S HB=0
 F I=1:1:$L(TXT) I $$HB($E(TXT,I)) S HB=1 Q
 I 'HB Q TXT
 ;
 S OU="",PRHB="",I=1
CYC S I1=I I $$HB($E(TXT,I)) D
 .S W=""
 .F I1=I:1:$L(TXT)+1 Q:$E(TXT,I1)?.P&'$$HB($E(TXT,I1))  D
 ..S W=$E(TXT,I1)_W
 .S OU=OU_W
 .I $E(TXT,I1)?.P,"{[(<>)]}"'[$E(TXT,I1) S OU=OU_$E(TXT,I1),I1=I1+1
 ;
 I I1=($L(TXT)+1) G END
 S I=I1
 I $E(TXT,I)=" " S OU=OU_" ",I=I+1 G CYC
 ;
 I '$$HB($E(TXT,I)),")]}"[$E(TXT,I),$$PRHB(I) D  G:I<1 END G CYC
 .S OU=OU_$$SCB($E(TXT,I)),I=I+1
 ;
 I '$$HB($E(TXT,I)),")]}"[$E(TXT,I),'$$PRHB(I) D  G:I<1 END G CYC
 .N W S W=""
 .N SK S SK(")")="("
 .S SK("]")="["
 .S SK("}")="{"
 .F I1=I:1:$L(TXT) Q:$E(TXT,I1)=SK($E(TXT,I))  S W=$E(TXT,I1)_W
 .S W=W_$E(TXT,I1),I=I1+1
 .S OU=OU_W,PRHB=0
 ;
 ;
 I '$$HB($E(TXT,I)),"([{"[$E(TXT,I) D  G CYC
 .S OU=OU_$$SCB($E(TXT,I)),I=I+1
 ;
 S PREN=0,W1=""
 I '$$HB($E(TXT,I)) D
MET .I $E(TXT,I)=">",$E(TXT,I+1)="E",$E(TXT,I+2)="<" D  S OU=OU_W1 Q
 ..S W1="<E>",I=I+3
 ..F I1=I:1:$L(TXT)+1 Q:$E(TXT,I1)=">"&($E(TXT,I1+1)="E")&($E(TXT,I1+2)="<")  D
 ...S W1=W1_$E(TXT,I1)
 ..I I1>2 S W1="<E>"_W1,I1=I1+3 Q
 .
 .S W="",PREN=0
 .F I1=I:1:$L(TXT)+1 Q:$E(TXT,I1)=" "  Q:$$HB($E(TXT,I1))  Q:$E(TXT,I1)=">"&($E(TXT,I1+1)="E")&($E(TXT,I1+2)="<")  D
 ..S W=W_$E(TXT,I1)
 .S OU=OU_W
 .I $E(TXT,I1)=">",$E(TXT,I1+1)="E",$E(TXT,I1+2)="<" S I=I1 G MET
 .I I1'>$L(TXT),$E(TXT,I1)?.P,$E(TXT,I1)'="" S OU=OU_$$SCB($E(TXT,I1)),I1=I1+1
 I I1'>$L(TXT) S I=I1 G CYC
END Q OU
 ;
HB(SMB) ;
 I $A(SMB)<96 Q 0
 I $A(SMB)>122 Q 0
 Q 1
SCB(SMB) ;
 I SMB="(" Q ")"
 I SMB=")" Q "("
 I SMB="[" Q "]"
 I SMB="]" Q "["
 I SMB="{" Q "}"
 I SMB="}" Q "{"
 I SMB="<" Q ">"
 I SMB=">" Q "<"
 Q SMB
PRHB(I) ;
 N PRHB S PRHB=0
 N J I $E(TXT,I)="" Q 0
 N SK S SK(")")="("
 S SK("]")="["
 S SK("}")="{"
 S SK(">")="<"
 I '$D(SK($E(TXT,I))) Q 0
 F J=I+1:1:$L(TXT) Q:$E(TXT,J)=SK($E(TXT,I))  D  Q:PRHB
 .I $$HB($E(TXT,J)) S PRHB=1
 Q PRHB

%W1UCI
%W1UCI(JB) ; [ 24.03.20 08:58 ] [ 14.09.17 11:28 ] [ 02.02.11 06:57 ] 
 N MSD ;
 S MSD=$G(%ARG("MSD"))
 I 'MSD S MSD=+$G(^[$$^W3MAIN]W3LINK(+JB))
 I 'MSD S MSD=$$GETP^%W1PRM("MSD")
 I 'MSD Q $$^W3MAIN
 Q $$TV(MSD)
 ;
TV(MSD) ;
 I '$D(^[$$^W3MAIN]UCI(MSD)) Q $$^W3MAIN
 Q ^[$$^W3MAIN]UCI(MSD)
 
 
 
 
 
 
 
 

%W1VLDDT
%W1VLDDT ; [ 22.06.07 09:53 ] [ 12.06.07 12:12 ] [
 W "function VldDD(DID)",!
 W " {",!
 W "   var dd=document.getElementById(DID)",!
 W "   if ( dd.value>31 ) {",!
 ;W "      dd.value="""";",!
 W "      dd.select();",!
 W "   }",!
 W " }",!
 W "function VldMM(MID)",!
 W " {",!
 W "   var mm=document.getElementById(MID)",!
 W "   if (mm.value>12 ) {",!
 ;W "      mm.value="""";",!
 W "      mm.select();",!
 W "   }",!
 W " }",!
 W "function VldYY(YY)",!
 W " {",!
 W " }",!
 Q

%W1WEBM0
%W1WEBMN(MENU) ; [ 24.06.23 05:35 ] [ 23.06.23 05:51 ] [ 11.06.23 19:00 ] 
 N (MENU,JB,%ARG,%REM)
 I $G(MENU)="" Q
 ;;W "%REM="_%REM,!
 ;;W "POS="_$$POS^W4MTAW,!
 N I,N,MN,IM,A
 S NOMENUCOUNT=0
 I $$GET^%W1PRM("NOMENUCOUNT") S NOMENUCOUNT=1
 ;
 S ZERO=0
 I $O(^[$$^W3MAIN]W4OPT(MENU,""))=0 S ZERO=1
 ;
 I MENU="LKH",$$GETP^%W1PRM("MSD")=7001,$G(%REM) D
 .S @$$^W4GL("ISHUR")@(%REM,+$H)=1
 ;
 D PREPMENU(MENU)
 ;
 D WMN(.MN,.MA,MENU,"",.MA0)
 Q
 ;
WMN(MN,MA,MENU,NODICT,MA0) ;
 I $G(%ARG("PRSNLPROC"))'="" D  Q
 .N PROC S PROC=%ARG("PRSNLPROC")
 .W "<div dir="""_$$^%W1DIR_""" style=""text-align:center;"_$$FONTFM^W4CSS1_";font-size:"_$$^W3FSZ_""" >",!
 .W "<p></p>",!
 .W "<p>"_$$^%W1DICT("WAIT")_"</p>",!
 .W "<script>",!
 . ;;W "alert('"_PROC_"')",!
 . W PROC,!
 .W "</script>",!
 .W "</div>",!
 ;;D NOSELECT^%W1JS
 
 W "<style>",!
 W "td {",!
 W " font-size:"_$$^W3FSZ(11),!
 W "}",!
 
 W "img {",!
 W " width:"_$$^W4KF(16)_"px;",!
 W " height:"_$$^W4KF(16)_"px;",!
 W "}",!
 W "</style>",!
 
 N CUR S CUR=0 S ZERO=+$G(ZERO)
 I $L($G(MENU)) S CUR=$G(@$$^W4MAIN("TMPCURMENU")@(MENU))
 N MN1,MA1
 M MN1=MN
 N I,CLSMN,HREF,IM
 S IM=$O(MN(999),-1)
 ;
 D SCRIPT(MENU)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" ",!
 W ">",!
  D SRV
  W "<table width=""100%"" border=""0"" cellspacing=""0"">",!
  W "<td width=""25%"">"
   I MENU="BO",$$^W4TABLET'=2 D
   .I $$NOCHKPSW^W4CHKPSW(3)!$$US23^W4LVL!($$BO^W4LVL=3) D SIDEMENU("SIDE") Q
   .D SIDEMENU("SIDE1") Q
  W "</td>"
  W "<td width=""75%"">"
   D BODYMENU(MENU)
  W "</td>"
 W "</div>",!
 W "<p></p>",!
 ;
 W "<script>",!
  W "UpdateTime()",!
  W "if ( GetId('ifr') == null ) GetId('tbvieword').style.visibility='hidden'",!
  I '$$^W4TABLET D
  .W "if ( GetId('findtxt') !== null ) GetId('findtxt').focus();GetId('findtxt').select()",!
 W "</script>",!
 Q
 ;
ALL(STAM) ;
 I $G(%ARG("OPENMENU"))="ALL" Q 1
 Q 0
 ;
BACK2MAIN(STAM) ;
 ;;I $G(%ARG("BO1")) Q 0
 ;;I $$GETP^%W1PRM("BO1") Q 0
 I $$GETP^%W1PRM("W4BO") Q 1
 I $G(%ARG("BACK2MAIN")) Q 1
 ;;I $$GETP^%W1PRM("BACK2MAIN") Q 1
 Q 0
 ;
CLOSE(STAM) ;
 I $G(%ARG("BO1")) Q 1
 I $$GETP^%W1PRM("BO1") Q 1
 Q 0
 ;
CSCARDS ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("FULLCUSTCARD")_""" "
  W " onClick=""ClickLkhCard()"" "
  W ">"
 W "</td>"
 ;
 W "<td>&nbsp;</td>"
 ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("FULLSUPPLCARD")_""" "
  W " onClick=""ClickSpkCard()"" "
  W ">"
 W "</td>"
 Q
 ;
 ;
BOCARDS ;
 ;
 I '$$PRTNET^W4PRM D
 .W "<td>"
 . W "<input type=""button"" "
 . W " value="""_$$^%W1DICT("ITEMCARD")_""" "
 . W " onClick=""ClickItemCard()"" "
 . W ">"
 .W "</td>"
 .W "<td>&nbsp;</td>"
 ;
 D
 .W "<td>"
  .W "<input type=""button"" "
  .W " value="""_$$^%W1DICT("FULLCUSTCARD")_""" "
  .W " onClick=""BOCustCard()"" "
  .W ">"
 .W "</td>",!
 .W "<td>&nbsp;</td>"
 ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("MISC")_""" "
  W " onClick=""BOMisc()"" "
  W ">"
 W "</td>"
 ;
 I $$MENU^W4PRSMNU D 
 .N IND S IND=$O(@$$GL^W4PRSMNU@(0)) Q:'IND
 .W "<td width=""30%"">"
 . W "<input type=""button"" "
 . W " value="""_$$^%W1DICT("PERSONALAREA")_""" "
 . W " onClick=""PersonalArea()"" "
 . W ">"
 .W "</td>"
 ;
 Q
 ;
 ;
SHOWORD ; 
 I $$PRSNL D  Q
 .W "<span style=""font-size:"_$$^W3FSZ_";color:brown"">"_$$^%W1DICT("CREATEPRSNLAREA")_"</span>",!
 ;
 W "<table id=""tbvieword"" width=""100%"">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("ORDERNUMBER")_" " 
   W "</td>" 
   W "<td>"
    W "<input type=""text"" id=""ord"" size=""6"" "
    W "  onClick=""this.select()"" "
    W "  onKeyPress=""OrdKeyPress(event)""  "
    W "/>",!
   W "</td>"
   W "<td>"
    W "<input type=""button"" id=""btnord"" value="""_$$^%W1DICT("SHOW")_""" "
    W " onClick=""w1procgViewOrd('ord')""/>"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
FIND ;
 I $$^W4TABLET Q
 W $$^%W1DICT("SEARCH")_"&nbsp;"
 W "<input id=""findtxt"" type=""text"" size=""30"" "
 W "onKeyPress=""FindTxtEnter(event)"" "
 W "onClick=""this.select()"" onChange=""ResetPos()"" />&nbsp;"
 W "<input type=""button"" id=""fndtxtbtnfw"" value="">"" onClick=""FindTxt('findtxt',false)"" style=""text-align:center;width:"_$S($$1024^W4WDSCR:25,1:25)_"px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:lightgree;padding:3px"" />"
 W "&nbsp;"
 W "<input type=""button"" id=""fndtxtbtnbc"" value=""<"" onClick=""FindTxt('findtxt',true)"" style=""text-align:center;width:"_$S($$1024^W4WDSCR:25,1:25)_"px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:lightgree;padding:3px"" />"
 I $G(MENU)="BO",'$$PRSNL D
 .W "&nbsp;"
 .W "<input type=""button"" id=""fndtxtbtnsrc"" value="""_$$^%W1DICT("FINDALL")_""" onClick=""FindAll('findtxt',true)"" style=""text-align:center;width:80px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:white;padding:3px"" >"
 Q
 ;
PRSNLSET(STAM) ; 
 Q $$GETP^%W1PRM("PRSNLSET") 
 ;
 ;
SETPERS(PRM) ; 
 N (JB,%ARG,%REM,PRM)
 S FL=$P(PRM,";",1)
 S NM=$P(PRM,";",2)
 S PROC=$P(PRM,";",3)
 S PROC=$$RPL^%L1FRM(PROC,"'","\'")
 S ACT=$P(PRM,";",4)
 ;
 S GL=$$GL^W4PRSMNU
 ;
 S ACT=1
 I $$PRSNLFIND(NM) S ACT=0
 ;
 I ACT D
 .S LAST=$O(@GL@(9999),-1)+1
 .I LAST=1 D
 ..S @GL@(0)="EXIT;w4prsmnu.jsp;Back();"
 .
 .S @GL@(LAST)=NM_";"_FL_";"_PROC
 ;
 I 'ACT D
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..I $P(A,";")=NM,$P(A,";",2)=FL,$P(A,";",3)=PROC K ^(N)
 Q 
 ;
ISPERS(NM,PROC) ; 
 N OK S OK=0
 N A,N S N="" F  S N=$O(@$$GL^W4PRSMNU@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)) 
 .S NMMN=$P(A,";")
 .S PROCMN=$P(A,";",3)
 .I NM=NMMN,PROC=PROCMN S OK=1 
 Q OK
 ;
PRSNL(STAM) ; 
 N MN S MN=$$GETP^%W1PRM("CURMENU")
 I $E(MN,1,7)="FINDALL" Q 0
 I $$PRSNLSET!$$GETP^%W1PRM("PRSNLMENU") Q 1 
 Q 0 
 ;
SRV ; 
 W "<table width=""100%"" cellspacing=""0"" border=""0"" dir="""_$$^%W1DIR_""">"
  W "<tr>"
   N WD1 S WD1=15 I $$1024^W4WDSCR S WD1=22
   N WD2 S WD2=35 I $$1024^W4WDSCR S WD2=50
   N WD3 S WD3=20 I $$1024^W4WDSCR S WD3=10
   I $$^W4TABLET=2 S WD3=5
   ;
   W "<td width="""_WD1_"%"">" D SHOWORD W "<td>"
   W "<td width="""_$S($$1024^W4WDSCR:6,1:12)_"%"">&nbsp;<td>"
   W "<td width="""_WD2_"%"">" D FIND W "<td>"
   W "<td width="""_WD3_"%"">" D  W "</td>"
   .I '$$PRSNL W "&nbsp;" Q
   .D ^W4BUTTON("showprsmnu","SHOWPRSNLAREA","ShowPrsnlArea()") 
   ;
   W "<td align=""left"">"
    ;;W "Session "_JB_" [ "_$$^W4MYDVN_" ]",!
    W "JB "_JB_" [ "_$$^W4MYDVN_" ]",!
    W $$NBSP^%L1FRM(3)
     W "<span id=""curtime"" style=""font-size:"_$$^W3FSZ(12)_";color:brown;font-weight:bold"">"_$ZD($H,"24:60")_"</span>"
   W "</td>"
  W "<tr>",!   
 W "</table>",!
 Q
 ;
PREPMENU(MENU) ;
 N (JB,MENU,MA,MA0,MN)
 S N="",I=0 F  S N=$O(^[$$^W3MAIN]W4OPT(MENU,N)) Q:N=""  D
 .S A=$G(^(N))
 .S US=$P(A,";") X "I "_US I  D
 ..S RKV=$P(A,";",2)
 ..S PROC=$P(A,";",3)
 ..S I=I+1,MN(I)=RKV,MA0(I)=PROC,MA(I)=PROC
 ..I N D  ; I $$PSWDRG^W4PRM D
 ...N LVL S LVL=$G(^[$$^W3MAIN]W4OPT(MENU,N,"PSWLVL")) Q:LVL<2
 ...I LVL<4,$$US23^W4LVL Q
 ...I LVL<4,$$^W4LVL("BO","EXIT")>2 Q
 ...S MA(I)="PswLvl('"_LVL_"','"_PROC_"')"
 Q
 ;
BODYMENU(MENU) ;
 I $$PRSNL,$$SIDE Q
 S CLSMN=$S($$^%W1DIR="RTL":"menuh",1:"menu")
 N WDT S WDT=70 ;;I $$SIDE S WDT=70
 W "<table class="""_CLSMN_""" width="""_WDT_"%"" border=""0"""
 W " cellpadding="""_$$^W4KF(4+$$^W4TABLET)_"px"" "
 W " dir="""_$$^%W1DIR_""""
 W " >",!
 ;
 N I1,K S I1=0,K=0
 N OPMN S OPMN=$G(%ARG("OPENMENU"))
 ;
 N ONCLICK,ONCLICKDIR,CURSORDIR
 ;
 F I=1:1:IM D
 .S PRARR=0
 .S MN1(I)=$$SPA^%L1FRM(MN1(I))
 .
 .I $E(MN1(I),$L(MN1(I)))=">" D
 ..S PRARR=1
 ..S MN1(I)=$E(MN1(I),1,$L(MN1(I))-1)
 .
 .N JSP,PRM S JSP=$P(MA(I),"?")
 .S HREF="",ONCLICK=""
 .
 .I MENU="TELMENU" S JSP=$$RPL^%L1FRM(JSP,"\'","'")
 .
 .I $$FUNC^%LCASE(MA(I))[".jsp" D
 ..S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurMenu('"_MENU_"','"_IND_"')",1:"")_";self.location.replace(unescape('"_MA(I)_"'))"""
 .
 .I ONCLICK="" S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurMenu('"_MENU_"','"_I1_"');",1:"")_JSP_""""
 .
 .I $$PRSNLSET,'$G(PRARR),$G(MA(I))'="Back()",$G(MA(I))'="Exit()" S ONCLICK=""
 .
 .I MN1(I)["~" S K=K+1
 .
 .S CURSORDIR=""
 .I $L(OPMN),OPMN'="ALL",OPMN'=K D
 ..S CURSORDIR=";cursor:pointer"
 .
 .S ONCLICKDIR=""
 .I $L(OPMN),OPMN'=K D
 ..S ONCLICKDIR=" onClick=""OnClickDirMenu('"_K_"')"" "
 .
 .I MN1(I)["~" D  Q
 ..W "<tr>"
 ..W "<td></td>"
 ..W "<td colspan=""2"" style=""background-color:brown; text-align:center; color:white"_CURSORDIR_""" "_ONCLICKDIR_" >"
 ..W "<p style=""border:ridge 1px;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT($TR(MN1(I),"~>",""))_"</p></td></tr>",!
 .
 .I $L(OPMN),OPMN'="ALL",OPMN'=K,I1>0 Q
 .
 .I 'ZERO S I1=I1+1
 .
 .I I1=(1-ZERO),'$$SIDE D  S:ZERO I1=I1+1 Q  ; --- BACK
 ..Q:$G(%ARG("NOBACK"))
 ..W "<tr>"
 ..W "<td></td>"
 ..W "<td width=""100%"" colspan=""2""><table width=""100%"">"
 ..N STYLE S STYLE=" style=""background-color:white;color:brown;text-align:center;cursor:pointer;border:ridge 1px brown;"
 .. W "<tr>" N WDP S WDP=0
 ..  I $L(OPMN) S WDP=6+WDP D
 ...  W " <td width="""_WDP_"%"" "_STYLE_";text-align:center;font-weight:"_$S($$ALL:"bold",1:"normal")_";font-size:"_$$^W3FSZ(14)_""""
 ...  I '$$ALL W " onClick=""OpenAll()"""
 ...  I $$ALL W " onClick=""CloseAll()"""
 ...  W ">"_$S($$ALL:"-",1:"+")_"</td>",!
 ..
 ..   I $$BACK2MAIN S WDP=WDP+6
 ..
 ..   I $$^W4LKH S WDP=WDP+30
 ..
 ..   W " <td width="""_(100-WDP)_"%"" "_STYLE_";font-size:"_$$^W3FSZ(14)_""""
 ..   W " "_ONCLICK_" >"
 ..    I $G(NODICT) S MN1=$$H2U^%L1FRM(MN1(I))
 ..    E  S MN1=$$^%W1DICT(MN1(I))
 ..    W MN1
 ..   W "</td>",!
 ..
 .. I $$^W4TABLET=2 W "<td>&nbsp;</td>"
 ..
 .. I $$^W4LKH D CSCARDS
 ..
 .. I $$GETP^%W1PRM("W4BO"),'$$GETP^%W1PRM("SUPPL"),'$$PRSNL,'$$SIDE D BOCARDS
 ..
 .. I $$BACK2MAIN,'$$PRSNL,'$$SIDE D
 ...  W " <td width=""10%"" "_STYLE_";text-align:center;font-weight:bold;font-size:"_$$^W3FSZ(14)_""""
 ...  I '$$CLOSE D
 ....  N BACK S BACK="HREFBO" I MENU="BO" S BACK="HREFMAIN"
 ....  W " onClick=""BackHref('"_BACK_"')"" "
 ...  I $$CLOSE W " onClick=""self.close()"" "
 ...  W ">&nbsp;^&nbsp; </td>",!
 .. W "</tr></table>",!
 ..W "</td></tr>",!
 .
 .
 .W "<tr>"
 .
 . W "<td>"
 . I PRARR W "<img src=""w3dir.jpg"" />"
 . I 'PRARR,$$PRSNLSET D
 .. W "<input type=""checkbox"" id=""mn"_I1_""" "
 .. ;;I $$ISPERS(MN1(I),MA0(I)) W " checked=""checked"" "
 .. I $$PRSNLFIND(MN1(I)) W " checked=""checked"" "
 .. W "onChange=""PersonalMenuSet('mn"_I1_"','"_$G(MN1(I))_"','"_$$RPL^%L1FRM($G(MA0(I)),"'","\'")_"')"" />"
 . W "</td>"
 .
 . W "<td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)
 .  W ";color:brown;cursor:pointer"" "
 . W ">"
 . I '$G(NOMENUCOUNT) W I1_"."
 .W "</td>"
 .
 .W "<td width=""90%"" "
 . I I1 W "id=""WebMenu"_MENU_I1_""" "
 . W " style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)
 . I '$$SIDE D
 .   .W ";color:"_$S(I1=(1-ZERO):"red",1:$$FGFLD^W3CSS($$COLOR^W3IMG))
 .   .W ";"_$$DRC^%W1DIR
 .   .W $S(I1=CUR:";text-decoration:underline",1:"")_";cursor:pointer"
 . I $$SIDE D
 .   .W ";color:brown;background-color:white;cursor:pointer;border:solid 2px brown"
 . W """ "
 . I I>1 D
 .. W " onMouseOver=""OnMouseOverMenu(this)"" "
 .. W " onMouseOut=""OnMouseOutMenu(this)"" "
 . I $G(NODICT) S MN1=$$H2U^%L1FRM(MN1(I))
 . E  S MN1=$$^%W1DICT(MN1(I))
 . W ONCLICK_" >"_MN1_"</td>"
 .W "</tr>",!
 .I ZERO S I1=I1+1
 W "</table>",!
 Q
 ;
SIDEMENU(SIDE) ;
 N (JB,SIDE)
 S ZERO=1,CUR=0,NOMENUCOUNT=1
 S %ARG("SIDE")=1
 D PREPMENU(SIDE)
 S IM=$O(MN(999),-1)
 M MN1=MN
 D BODYMENU(SIDE)
 Q
 ;
SIDE(STAM) ; 
 Q $G(%ARG("SIDE")) 
 ;
SCRIPT(MENU) ;
 W "<script>",!
  D RESETPOS
  ;
  D FINDTXT
  ;
  W "function FindTxtEnter(ev)",!
  W "{",!
   W "if (ev.keyCode == 13 || ev.which == 13 )",!
   W "{",!
    W "var opt=GetVl('findtxt')",!
    I $G(MENU)'="" D 
    .W "if ( !isNaN(opt) )",!
    .W "{",!
    . W "var idopt='WebMenu"_MENU_"'+opt;",!
    . W "var optel=GetId(idopt);",!
    . W "if (optel !== null && optel !== undefined) {optel.click();return}",! 
    .W "}",!
    ;
    W " GetId('fndtxtbtnfw').focus()",!
   W "}",!
  W "}",!
  ;
  W "function OrdKeyPress(ev)",!
  W "{",!
   W "if (ev.keyCode == 13 || ev.which == 13 )",!
   W "{",!
    ;;W "{",! ; ***
    ;; W "GetId('btnord').click()",! ; ***
    ;;W "}",! ; ***
    ;
    W " GetId('fndtxtbtnfw').focus()",!
   W "}",!
  W "}",!
  ;
  W "function ShowPrsnlArea()",!
  W "{",!
   W "var to=""w4showprsmnu.jsp?JB="_JB_"&FIRST=1"" ",!
   W "CallIfr(to,""ifr"",self,10,""40%"",""80%"",""30%"",""10%"")",!
  W "}",!
  ;
 W "</script>",!
 Q
 ;
 ;
PRSNLFIND(NM) ; 
 N GL S GL=$$GL^W4PRSMNU
 N OK,A S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)) 
 .I $P(A,";")=NM S OK=1 
 Q OK
 ;
 ;
PREPFINDALL(SRC) ; 
 N (JB,%ARG,SRC)
 S SRC=$$CNWEB^%L1FRM(SRC)
 I $G(SRC)?.P Q 0
 S PATH=^W3MAIN("WEBL")
 ;
 N TMPFA D TMPFA
 I '$D(@TMPFA) D
 .S HIP=""
 .S FL=$ZSEARCH(HIP)
 .S HIP=PATH_"w*.jsp"
CYCFA .F  S FL=$ZSEARCH(HIP) Q:FL=""  D CRTMPFA(FL)
 ;
 S SRC=$$INVH^%L1FRM(SRC)
 ;;S ^AA("FINDALL","SRC")=SRC
 N MENU S MENU="FINDALL"_JB 
 ;;S ^AA("FINDALL","MENU")=MENU
 D PUT^%W1PRM("CURMENU",MENU)
 K @$$^W4GL("W4PRSMNU")@(MENU)
 ;
 N A,US
 S N0="",I=0 F  S N0=$O(^[$$^W3MAIN]W4OPT(N0)) Q:N0=""  D
 .I '$$ELPOS(N0) Q
 .S N=0 F  S N=$O(^[$$^W3MAIN]W4OPT(N0,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S US=$P(A,";") X "I "_US I  D
 ...S RKV=$P(A,";",2)
 ...I RKV[">" S RKV=$P(RKV,">")
 ...N RKV1 S RKV1=$$TV^%W1DICT($$^%W1LNG,RKV)
 ...I '$$SRCH(RKV1,SRC) Q
 ...S PROC=$P(A,";",3)
 ...;;S ^AA("FINDALL",N0,N,"A")=A
 ...;;S ^AA("FINDALL",N0,N,"PROC")=PROC
 ...N JSP S JSP=$$JSP(N0,PROC) Q:JSP=""
 ...;;S ^AA("FINDALL",N0,N,"JSP")=JSP
 ...S I=I+1 D
 ....M @$$^W4GL("W4PRSMNU")@(MENU,I)=^[$$^W3MAIN]W4OPT(N0,N)
 ....N A1 S A1=$G(^[$$^W3MAIN]W4OPT(N0,N))
 ....;;S ^AA("FINDALL",N0,N,"A1")=A
 ....N PROC S PROC=$P(A1,";",3)
 ....N NM,PRARR S NM=$P(A,";",2),PRARR=0 I NM[">" S NM=$P(NM,">"),PRARR=1
 ....S @$$^W4GL("W4PRSMNU")@(MENU,I)=NM_";"_JSP_";"_PROC_";"_PRARR
 ;
 S @$$^W4GL("^W4PRSMNU")@(MENU,0)="EXIT;w4prsmnu.jsp;Back();"
 S @$$^W4GL("^W4PRSMNU")@(MENU)=SRC
 Q 1
 ; 
 ;
JSP(MN,PROC) ; 
 N TMPFA D TMPFA
 ;
 I PROC["(" S PROC=$P(PROC,"(")
 I $G(@TMPFA@(MN_"~"_PROC))'="" Q @TMPFA@(MN_"~"_PROC)
 Q ""
 ;
 ;
CRTMPFA(FL) ; 
 N TMPFA D TMPFA
 N M,MN,A
 ;
 N FLN S FLN=$P(FL,"/",$L(FL,"/")) Q:FLN=""  Q:FLN'[".jsp"
 N FLN0 S FLN0=$P(FLN,".")
 I $E(FLN0,$L(FLN0))="0" Q
 O FL:(REWIND:READONLY)
 ;
 F  U FL R A Q:$ZEOF  D
 .S A=$$SPA^%L1FRM(A)
 .I A?1"function ".E D
 ..S FUNC=$P(A,"function ",2)
 ..I FUNC'["()" Q
 ..I FUNC["OnLoad(" Q
 ..I FUNC["OnUnload(" Q
 ..S FUNC=$P(FUNC,"(")
 ..I FUNC'="" S M(FUNC)=""
 .I A["D ^%W1WEBMN(" D
 ..S MN=$P(A,"D ^%W1WEBMN(",2)
 ..S MN=$P(MN,")")
 ..;
 ..I $E(MN)="""" S MN=$P(MN,"""",2)
 ..I $$GETP^%W1PRM("ELPOS"),'$$ELPOS(MN) Q
 ..Q:MN=""
 ..N FN S FN="" F  S FN=$O(M(FN)) Q:FN=""  D
 ...S @TMPFA@(MN_"~"_FN)=FLN
 C FL
 Q
 ;
 ;
TMPFA ; 
 S TMPFA=$$^W4MAIN("TMPFA")
 Q
 ;
ELPOS(MN) ; 
 I MN="ASHRAM"!(MN="ASHRSRV")!(MN="BO1")!(MN="LKH")!(MN="REPNET")!(MN="SIDE")!(MN="LKHSYS") Q 0
 Q 1 
 ;
SRCH(RKV1,SRC) ; 
 S RKV1=$$SPA^%L1FRM(RKV1)
 S SRC=$$SPA^%L1FRM(SRC) 
 I RKV1[" " S RKV1=$$SP1^%L1FRM(RKV1)
 I SRC[" " S SRC=$$SP1^%L1FRM(SRC)
 I SRC'[" ",RKV1[SRC Q 1
 N OK S OK=1
 N J F J=1:1:$L(SRC," ") D  Q:'OK
 .I RKV1'[$P(SRC," ",J) S OK=0 
 Q OK 
 ;
 ;
RESETPOS ; 
  W "function ResetPos()",!
  W "{",!
   W " self.getSelection().empty()",!
  ;W "var a=true",!
  ;W "while ( a )",!
  ;W "{ a= self.find("" "",false,true) }",!
  W "FindTxt('findtxt',false)",!
  W "}",!!
 Q
 ;
FINDTXT ;
  W "function FindTxt(txtid,back,win)",!
  W "{",!
   W "if ( typeof win == 'undefined' ) win=self;",!
   W "if ( typeof back == 'undefined' ) back=false;",!
   W "var txt=GetVl(txtid);",!
   W "if ( txt == """" ) return;",!
   ;;W "var proc='FindTxt(""'+txtid+'"",'+back+')';",! 
   ;;W "alert('txt='+txt+' txtid='+txtid+' proc='+proc)",!
   ;;W "if ( endres == '0' ) { setTimeout(proc,200); return }",! 
   W "win.find(txt,false,back);",!
  W "}",!!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W1WEBMN
%W1WEBMN(MENU) ; [ 09.09.26 10:55 ] [ 05.08.26 13:55 ] [ 19.04.26 12:19 ] 
 N (MENU,JB,%ARG,%REM)
 ;
 I $$NEWMENU^W4PRM,'$$PRSNLSET D  Q
 .D ^%W2WEBMN($G(MENU))
 ;
 I $G(MENU)="" Q
 ;;W "%REM="_%REM,!
 ;;W "POS="_$$POS^W4MTAW,!
 ;
 S MENU=$P(MENU,"^")
 S FSZ=$$FSZ
 ;
 N I,N,MN,IM,A
 S NOMENUCOUNT=0
 I $$GET^%W1PRM("NOMENUCOUNT") S NOMENUCOUNT=1
 ;
 S ZERO=0
 I $O(^[$$^W3MAIN]W4OPT(MENU,""))=0 S ZERO=1
 ;
 I $G(%ARG("HDOPT")) D PUT^%W1PRM("HDOPT",1)
 ;
 I MENU="LKH",$$GETP^%W1PRM("MSD")=7001,$G(%REM) D
 .S @$$^W4GL("ISHUR")@(%REM,+$H)=1
 ;
 D PREPMENU(MENU)
 ;
 D WMN(.MN,.MA,MENU,"",.MA0)
 Q
 ;
 ;
WMN(MN,MA,MENU,NODICT,MA0) ;
 I $G(%ARG("PRSNLPROC"))'="" D  Q
 .N PROC S PROC=%ARG("PRSNLPROC")
 .W "<div dir="""_$$^%W1DIR_""" style=""text-align:center;"_$$FONTFM^W4CSS1_";font-size:"_$$^W3FSZ($$FSZ)_""" >",!
 .W "<p></p>",!
 .W "<p>"_$$^%W1DICT("WAIT")_"</p>",!
 .W "<script>",!
 . ;;W "alert('"_PROC_"')",!
 . W PROC,!
 .W "</script>",!
 .W "</div>",!
 ;
 W "<style>",!
 W "td {",!
 W " font-size:"_$$^W3FSZ(11),!
 W "}",!
 ;
 W "img {",!
 W " width:"_$$^W4KF(16)_"px;",!
 W " height:"_$$^W4KF(16)_"px;",!
 W "}",!
 W "</style>",!
 
 N CUR S CUR=0 S ZERO=+$G(ZERO)
 I $L($G(MENU)) S CUR=$G(@$$^W4MAIN("TMPCURMENU")@(MENU))
 N MN1,MA1
 M MN1=MN
 N I,CLSMN,HREF,IM
 S IM=$O(MN(999),-1)
 ;
 D SCRIPT(MENU)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" ",!
 W ">",!
  D SRV
  W "<table width="""_$S($$^W4TABLET=2:86,1:100)_"%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
  N SIDEPRSN S SIDEPRSN=0
  I $$^W4TABLET'=2 D
  .W "<td width=""25%"">"
   .I '$$PRSNLSET D
   ..N MN,DARGA S MN=$$GETP^%W1PRM("MNL") S DARGA=""
   ..I MN D
   ...D PUT^%W1PRM("CURMENU",MN)
   ...S DARGA=+$G(@$$^W4GL("W4PSWDRG")@(MN))
   ..I $$VIP S DARGA=4
   ..N LVL S LVL=$G(@$$^W4GL("W4OPT")@("BO",8,"PSWLVL")) ; -- REPORTS & QUERIES
   ..;;S ^AA("W4BO","DARGA")=DARGA
   ..Q:'$$^W4ELPOS
   ..I DARGA,DARGA<LVL D SIDEMENU("SIDE1") Q
   ..I $$NOCHKPSW^W4CHKPSW(3)!$$US23^W4LVL!($$BO^W4LVL=3)!$$VIP D SIDEMENU("SIDE") Q
   ..D SIDEMENU("SIDE1") Q
  .W "</td>"
  ;
  I MENU="BO",$$^W4TABLET'=2,$$MENU^W4PRSMNU,'$$PRSNLSET S SIDEPRSN=1
  ;
  W "<td width="""_$S(SIDEPRSN:55,1:75)_"%"">"
   D BODYMENU(MENU)
  W "</td>"
  ;
  I SIDEPRSN D
  .W "<td>"
  . D SIDEPRSN 
  .W "</td>"
  W "</tr>",! 
  W "</table>",! 
 W "</div>",!
 W "<p></p>",!
 ;
 W "<script>",!
  W "UpdateTime()",!
  W "if ( GetId('ifr') == null ) GetId('tbvieword').style.visibility='hidden'",!
  I '$$^W4TABLET D
  .W "if ( GetId('findtxt') !== null ) GetId('findtxt').focus();GetId('findtxt').select()",!
 W "</script>",!
 Q
 ;
 ;
ALL(STAM) ;
 I $G(%ARG("OPENMENU"))="ALL" Q 1
 Q 0
 ;
BACK2MAIN(STAM) ;
 ;;I $G(%ARG("BO1")) Q 0
 ;;I $$GETP^%W1PRM("BO1") Q 0
 I $$GETP^%W1PRM("W4BO") Q 1
 I $G(%ARG("BACK2MAIN")) Q 1
 ;;I $$GETP^%W1PRM("BACK2MAIN") Q 1
 Q 0
 ;
CLOSE(STAM) ;
 I $G(%ARG("BO1")) Q 1
 I $$GETP^%W1PRM("BO1") Q 1
 Q 0
 ;
CSCARDS ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("FULLCUSTCARD")_""" "
  W " onClick=""ClickLkhCard()"" "
  W ">"
 W "</td>"
 ;
 W "<td>&nbsp;</td>"
 ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("FULLSUPPLCARD")_""" "
  W " onClick=""ClickSpkCard()"" "
  W ">"
 W "</td>"
 Q
 ;
 ;
BOCARDS ;
 ;
 I '$$PRTNET^W4PRM D
 .W "<td>"
 . W "<input type=""button"" "
 . W " value="""_$$^%W1DICT("ITEMCARD")_""" "
 . W " onClick=""ClickItemCard()"" "
 . W ">"
 .W "</td>"
 .W "<td>&nbsp;</td>"
 ;
 D
 .W "<td>"
  .W "<input type=""button"" "
  .W " value="""_$$^%W1DICT("FULLCUSTCARD")_""" "
  .W " onClick=""BOCustCard()"" "
  .W ">"
 .W "</td>",!
 .W "<td>&nbsp;</td>"
 ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("MISC")_""" "
  W " onClick=""BOMisc()"" "
  W ">"
 W "</td>"
 ;
 I $$MENU^W4PRSMNU D 
 .N IND S IND=$O(@$$GL^W4PRSMNU@(0)) Q:'IND
 .W "<td width=""30%"">"
 . W "<input type=""button"" "
 . W " value="""_$$^%W1DICT("PERSONALAREA")_""" "
 . W " onClick=""PersonalArea()"" "
 . W ">"
 .W "</td>"
 ;
 Q
 ;
 ;
SHOWORD ; 
 I $$PRSNL D  Q
 .W "<span style=""font-size:"_$$^W3FSZ($$FSZ)_";color:brown"">"_$$^%W1DICT("CREATEPRSNLAREA")_"</span>",!
 ;
 W "<table id=""tbvieword"" width=""100%"">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("ORDERNUMBER")_" " 
   W "</td>" 
   W "<td>"
    W "<input type=""text"" id=""ord"" size=""6"" "
    W "  onClick=""this.select()"" "
    W "  onKeyPress=""OrdKeyPress(event)""  "
    W "/>",!
   W "</td>"
   W "<td>"
    W "<input type=""button"" id=""btnord"" value="""_$$^%W1DICT("SHOW")_""" "
    W " onClick=""w1procgViewOrd('ord')""/>"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
FIND ;
 I $$^W4TABLET Q
 W $$^%W1DICT("SEARCH")_"&nbsp;"
 W "<input id=""findtxt"" type=""text"" size=""30"" "
 W "onKeyPress=""FindTxtEnter(event)"" "
 W "onClick=""this.select()"" onChange=""ResetPos()"" />&nbsp;"
 W "<input type=""button"" id=""fndtxtbtnfw"" value="">"" onClick=""FindTxt('findtxt',false)"" style=""text-align:center;width:"_$S($$1024^W4WDSCR:25,1:25)_"px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:lightgree;padding:3px"" />"
 W "&nbsp;"
 W "<input type=""button"" id=""fndtxtbtnbc"" value=""<"" onClick=""FindTxt('findtxt',true)"" style=""text-align:center;width:"_$S($$1024^W4WDSCR:25,1:25)_"px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:lightgree;padding:3px"" />"
 I $G(MENU)="BO",'$$PRSNL D
 .W "&nbsp;"
 .W "<input type=""button"" id=""fndtxtbtnsrc"" value="""_$$^%W1DICT("FINDALL")_""" onClick=""FindAll('findtxt',true)"" style=""text-align:center;width:80px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:white;padding:3px"" >"
 Q
 ;
PRSNLSET(STAM) ; 
 Q $$GETP^%W1PRM("PRSNLSET") 
 ;
 ;
SETPERS(PRM) ; 
 N (JB,%ARG,%REM,PRM)
 S FL=$P(PRM,";",1)
 S NM=$P(PRM,";",2)
 S PROC=$P(PRM,";",3)
 S PROC=$$RPL^%L1FRM(PROC,"'","\'")
 S ACT=$P(PRM,";",4)
 ;
 S GL=$$GL^W4PRSMNU
 ;
 S ACT=1
 I $$PRSNLFIND(NM) S ACT=0
 ;
 I ACT D
 .S LAST=$O(@GL@(9999),-1)+1
 .I LAST=1 D
 ..S @GL@(0)="EXIT;w4prsmnu.jsp;Back();"
 .
 .S @GL@(LAST)=NM_";"_FL_";"_PROC
 ;
 I 'ACT D
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..I $P(A,";")=NM,$P(A,";",2)=FL,$P(A,";",3)=PROC K ^(N)
 Q 
 ;
ISPERS(NM,PROC) ; 
 N OK S OK=0
 N A,N S N="" F  S N=$O(@$$GL^W4PRSMNU@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)) 
 .S NMMN=$P(A,";")
 .S PROCMN=$P(A,";",3)
 .I NM=NMMN,PROC=PROCMN S OK=1 
 Q OK
 ;
PRSNL(STAM) ; 
 N MN S MN=$$GETP^%W1PRM("CURMENU")
 I $E(MN,1,7)="FINDALL" Q 0
 I $$PRSNLSET!$$GETP^%W1PRM("PRSNLMENU") Q 1 
 Q 0 
 ;
 ;
SRV ; 
 W "<table width=""100%"" cellspacing=""0"" border=""0"" dir="""_$$^%W1DIR_""">"
  W "<tr>"
   N WD1 S WD1=15 I $$1024^W4WDSCR S WD1=22
   N WD2 S WD2=35 I $$1024^W4WDSCR S WD2=50
   N WD3 S WD3=20 I $$1024^W4WDSCR S WD3=10
   I $$^W4TABLET=2 S WD3=5
   ;
   W "<td width="""_WD1_"%"">" D SHOWORD W "</td>",!
   W "<td width="""_$S($$1024^W4WDSCR:6,1:12)_"%"">&nbsp;</td>",!
   W "<td width="""_WD2_"%"">" D FIND W "</td>",!
   W "<td width="""_WD3_"%"">" D  W "</td>",!
   .I '$$PRSNL W "&nbsp;" Q
   .D ^W4BUTTON("showprsmnu","SHOWPRSNLAREA","ShowPrsnlArea()") 
   ;
   W "<td align=""left"">",!
    ;;W "Session "_JB_" [ "_$$^W4MYDVN_" ]",!
    W "JB "_JB_" [ "_$$^W4MYDVN_" ]",!
    W $$NBSP^%L1FRM(3)
     W "<span id=""curtime"" style=""font-size:"_$$^W3FSZ(12)_";color:brown;font-weight:bold"">"_$ZD($H,"24:60")_"</span>"
   W "</td>",!
  W "</tr>",!   
 W "</table>",!
 Q
 ;
PREPMENU(MENU) ;
 N (JB,MENU,MA,MA0,MN)
 S N="",I=0 F  S N=$O(^[$$^W3MAIN]W4OPT(MENU,N)) Q:N=""  D
 .S A=$G(^(N))
 .D PREPMENU1(A)
 Q
 ;
PREPMENU1(A) ;
 N (JB,MENU,MA,MA0,MN,A,I,N)
 S US=$P(A,";") X "I "_US I  D
 .S RKV=$P(A,";",2)
 .S PROC=$P(A,";",3)
 .S I=I+1,MN(I)=RKV,MA0(I)=PROC,MA(I)=PROC
 .I N D  ; I $$PSWDRG^W4PRM D
 ..N LVL S LVL=$G(^[$$^W3MAIN]W4OPT(MENU,N,"PSWLVL"))
 ..I $E(LVL)="@" S LVL=@($E(LVL,2,255))
 ..Q:LVL<2
 ..I LVL<4,$$US23^W4LVL Q
 ..I LVL<4,$$^W4LVL("BO","EXIT")>2 Q
 ..S MA(I)="PswLvl('"_LVL_"','"_PROC_"')"
 Q
 ;
BODYMENU(MENU) ;
 ;;I $$PRSNL,$$SIDE Q
 S CLSMN=$S($$^%W1DIR="RTL":"menuh",1:"menu")
 N WDT S WDT=$S($$^W4TABLET=2:90,1:70) ;;I $$SIDE S WDT=70
 W "<table class="""_CLSMN_""" width="""_WDT_"%"" border=""0"""
 W " cellpadding="""_$$^W4KF(4+$$^W4TABLET)_"px"" "
 W " dir="""_$$^%W1DIR_""""
 W " >",!
 ;
 N I1,K S I1=0,K=0
 N OPMN S OPMN=$G(%ARG("OPENMENU"))
 ;
 N ONCLICK,ONCLICKDIR,CURSORDIR
 ;
 F I=1:1:IM D
 .S PRARR=0
 .S MN1(I)=$$SPA^%L1FRM(MN1(I))
 .
 .I $E(MN1(I),$L(MN1(I)))=">" D
 ..S PRARR=1
 ..S MN1(I)=$E(MN1(I),1,$L(MN1(I))-1)
 .
 .N JSP,PRM S JSP=$P(MA(I),"?")
 .S HREF="",ONCLICK=""
 .
 .I MENU="TELMENU" S JSP=$$RPL^%L1FRM(JSP,"\'","'")
 .
 .I $$FUNC^%LCASE(MA(I))[".jsp" D
 ..S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurMenu('"_MENU_"','"_IND_"')",1:"")_";self.location.replace(unescape('"_MA(I)_"'))"""
 .;
 .I ONCLICK="" S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurMenu('"_MENU_"','"_I1_"');",1:"")_JSP_""""
 .
 .I $$PRSNLSET,'$G(PRARR),$G(MA(I))'="Back()",$G(MA(I))'="Exit()" S ONCLICK=""
 .
 .I MN1(I)["~" S K=K+1
 .
 .S CURSORDIR=""
 .I $L(OPMN),OPMN'="ALL",OPMN'=K D
 ..S CURSORDIR=";cursor:pointer"
 .
 .S ONCLICKDIR=""
 .I $L(OPMN),OPMN'=K D
 ..S ONCLICKDIR=" onClick=""OnClickDirMenu('"_K_"')"" "
 .
 .I MN1(I)["~" D  Q
 ..W "<tr>",!
 ..W "<td></td>"
 ..W "<td colspan=""2"" style=""background-color:brown; text-align:center; color:white"_CURSORDIR_""" "_ONCLICKDIR_" >"
 ..W "<p style=""border:ridge 1px;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT($TR(MN1(I),"~>",""))_"</p></td></tr>",!
 .
 .I $L(OPMN),OPMN'="ALL",OPMN'=K,I1>0 Q
 .
 .I 'ZERO S I1=I1+1
 .
 .I I1=(1-ZERO),'$$SIDE D  S:ZERO I1=I1+1 Q  ; --- BACK
 ..Q:$G(%ARG("NOBACK"))
 ..W "<tr>",!
 ..W "<td></td>"
 ..W "<td width=""100%"" colspan=""2""><table width=""100%"">"
 ..N STYLE S STYLE=" style=""background-color:white;color:brown;text-align:center;cursor:pointer;border:ridge 1px brown;"
 .. W "<tr>" N WDP S WDP=0
 ..  I $L(OPMN) S WDP=6+WDP D
 ...  W " <td width="""_WDP_"%"" "_STYLE_";text-align:center;font-weight:"_$S($$ALL:"bold",1:"normal")_";font-size:"_$$^W3FSZ($$FSZ)_""""
 ...  I '$$ALL W " onClick=""OpenAll()"""
 ...  I $$ALL W " onClick=""CloseAll()"""
 ...  W ">"_$S($$ALL:"-",1:"+")_"</td>",!
 ..
 ..   I $$BACK2MAIN S WDP=WDP+6
 ..
 ..   I $$^W4LKH S WDP=WDP+30
 ..
 ..   W " <td width="""_(100-WDP)_"%"" "_STYLE_";font-size:"_$$^W3FSZ($$FSZ)_""""
 ..   W " "_ONCLICK_" >"
 ..    I $G(NODICT) S MN1=$$H2U^%L1FRM(MN1(I))
 ..    E  S MN1=$$^%W1DICT(MN1(I))
 ..    W MN1
 ..   W "</td>",!
 ..
 .. I $$^W4TABLET=2 W "<td>&nbsp;</td>"
 ..
 .. I $$^W4LKH D CSCARDS
 ..
 .. I $$GETP^%W1PRM("W4BO"),'$$GETP^%W1PRM("SUPPL"),'$$PRSNL,'$$SIDE D BOCARDS
 ..
 .. I $$BACK2MAIN,'$$PRSNL,'$$SIDE D
 ...  W " <td width=""10%"" "_STYLE_";text-align:center;font-weight:bold;font-size:"_$$^W3FSZ($$FSZ)_""""
 ...  I '$$CLOSE D
 ....  N BACK S BACK="HREFBO" I MENU="BO" S BACK="HREFMAIN"
 ....  W " onClick=""BackHref('"_BACK_"')"" "
 ...  I $$CLOSE W " onClick=""self.close()"" "
 ...  W ">&nbsp;^&nbsp; </td>",!
 ..
 .. W "</tr></table>",!
 ..W "</td></tr>",!
 .
 .
 .W "<tr>",!
 .
 . W "<td>"
 . I PRARR W "<img src=""w3dir.jpg"" "_ONCLICK_" />"
 . I 'PRARR,$$PRSNLSET D
 .. W "<input type=""checkbox"" id=""mn"_I1_""" "
 .. ;;I $$ISPERS(MN1(I),MA0(I)) W " checked=""checked"" "
 .. I $$PRSNLFIND(MN1(I)) W " checked=""checked"" "
 .. W "onChange=""PersonalMenuSet('mn"_I1_"','"_$G(MN1(I))_"','"_$$RPL^%L1FRM($G(MA0(I)),"'","\'")_"')"" />"
 . W "</td>"
 .
 . W "<td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)
 .  W ";color:brown;cursor:pointer"" "
 . I '$G(NOMENUCOUNT) W ONCLICK
 . W ">"
 . I '$G(NOMENUCOUNT) W I1_"."
 .W "</td>"
 .
 .W "<td width=""90%"" "
 . I I1 W "id=""WebMenu"_MENU_I1_""" "
 . W " style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)
 . I '$$SIDE D
 .   .W ";color:"_$S(I1=(1-ZERO):"red",1:$$FGFLD^W3CSS($$COLOR^W4GETCLR))
 .   .W ";"_$$DRC^%W1DIR
 .   .W $S(I1=CUR:";text-decoration:underline",1:"")_";cursor:pointer"
 . I $$SIDE D
 .   .W ";color:brown;background-color:white;cursor:pointer;border:solid 2px brown"
 . W """ "
 . I I>1 D
 .. W " onMouseOver=""OnMouseOverMenu(this)"" "
 .. W " onMouseOut=""OnMouseOutMenu(this)"" "
 . I $G(NODICT) S MN1=$$H2U^%L1FRM(MN1(I))
 . E  S MN1=$$^%W1DICT(MN1(I))
 . W ONCLICK_" >"_MN1_"</td>"
 .W "</tr>",!
 .I ZERO S I1=I1+1
 W "</table>",!
 Q
 ;
 ;
SIDEMENU(SIDE) ;
 N (JB,SIDE)
 S ZERO=1,CUR=0,NOMENUCOUNT=1
 S %ARG("SIDE")=1
 D PREPMENU(SIDE)
 S IM=$O(MN(999),-1)
 M MN1=MN
 D BODYMENU(SIDE)
 Q
 ;
SIDEPRSN ;
  D PUT^%W1PRM("PRSNLBO",1) 
  D ^W4PRSMNU(1)
 Q
 ;
 ;
SIDE(STAM) ; 
 Q $G(%ARG("SIDE")) 
 ;
SCRIPT(MENU) ;
 W "<script>",!
  D RESETPOS
  ;
  D FINDTXT
  ;
  W "function FindTxtEnter(ev)",!
  W "{",!
   W "if (ev.keyCode == 13 || ev.which == 13 )",!
   W "{",!
    W "var opt=GetVl('findtxt')",!
    W "if ( opt == 'LV' || opt == 'lv' ) {",!
     W " var hrf=self.location.href",!
     W " hrf=HrefWithoutPrmS(hrf,""&HDOPT"")",!
     W " hrf=hrf+""&HDOPT=1"" ",!
     W " self.location.replace(hrf)  ",!
     W " return",!
    W "}",! 
    
    I $G(MENU)'="" D 
    .W "if ( !isNaN(opt) )",!
    .W "{",!
    . W "var idopt='WebMenu"_MENU_"'+opt;",!
    . W "var optel=GetId(idopt);",!
    . W "if (optel !== null && optel !== undefined) {optel.click();return}",! 
    .W "}",!
    ;
    W " GetId('fndtxtbtnfw').focus()",!
   W "}",!
  W "}",!
  ;
  W "function OrdKeyPress(ev)",!
  W "{",!
   W "if (ev.keyCode == 13 || ev.which == 13 )",!
   W "{",!
    W " GetId('fndtxtbtnfw').focus()",!
   W "}",!
  W "}",!
  ;
  W "function ShowPrsnlArea()",!
  W "{",!
   W "var to=""w4showprsmnu.jsp?JB="_JB_"&FIRST=1"" ",!
   W "CallIfr(to,""ifr"",self,10,""60%"",""80%"",""20%"",""10%"")",!
  W "}",!
  ;
 W "</script>",!
 Q
 ;
 ;
PRSNLFIND(NM) ; 
 N GL S GL=$$GL^W4PRSMNU
 N OK,A S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)) 
 .I $P(A,";")=NM S OK=1 
 Q OK
 ;
 ;
PREPFINDALL(SRC) ; 
 N (JB,%ARG,SRC)
 S SRC=$$CNWEB^%L1FRM(SRC)
 I $G(SRC)?.P Q 0
 S PATH=^W3MAIN("WEBL")
 ;
 N TMPFA D TMPFA
 I '$D(@TMPFA) D
 .S HIP=""
 .S FL=$ZSEARCH(HIP)
 .S HIP=PATH_"w*.jsp"
CYCFA .F  S FL=$ZSEARCH(HIP) Q:FL=""  D CRTMPFA(FL)
 ;
 S SRC=$$INVH^%L1FRM(SRC)
 ;;S ^AA("FINDALL","SRC")=SRC
 N MENU S MENU="FINDALL"_JB 
 ;;S ^AA("FINDALL","MENU")=MENU
 D PUT^%W1PRM("CURMENU",MENU)
 K @$$^W4GL("W4PRSMNU")@(MENU)
 ;
 N A,US
 S N0="",I=0 F  S N0=$O(^[$$^W3MAIN]W4OPT(N0)) Q:N0=""  D
 .I '$$ELPOS(N0) Q
 .S N=0 F  S N=$O(^[$$^W3MAIN]W4OPT(N0,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S US=$P(A,";") X "I "_US I  D
 ...S RKV=$P(A,";",2)
 ...I RKV[">" S RKV=$P(RKV,">")
 ...N RKV1 S RKV1=$$TV^%W1DICT($$^%W1LNG,RKV)
 ...I '$$SRCH(RKV1,SRC) Q
 ...S PROC=$P(A,";",3)
 ...;;S ^AA("FINDALL",N0,N,"A")=A
 ...;;S ^AA("FINDALL",N0,N,"PROC")=PROC
 ...N JSP S JSP=$$JSP(N0,PROC) Q:JSP=""
 ...;;S ^AA("FINDALL",N0,N,"JSP")=JSP
 ...S I=I+1 D
 ....M @$$^W4GL("W4PRSMNU")@(MENU,I)=^[$$^W3MAIN]W4OPT(N0,N)
 ....N A1 S A1=$G(^[$$^W3MAIN]W4OPT(N0,N))
 ....;;S ^AA("FINDALL",N0,N,"A1")=A_"\"_I_"\"_MENU
 ....N PROC S PROC=$P(A1,";",3)
 ....N NM,PRARR S NM=$P(A,";",2),PRARR=0 I NM[">" S NM=$P(NM,">"),PRARR=1
 ....S @$$^W4GL("W4PRSMNU")@(MENU,I)=NM_";"_JSP_";"_PROC_";"_PRARR
 ;
 S @$$^W4GL("^W4PRSMNU")@(MENU,0)="EXIT;w4prsmnu.jsp;Back();"
 S @$$^W4GL("^W4PRSMNU")@(MENU)=SRC
 Q 1
 ; 
 ;
JSP(MN,PROC) ; 
 N TMPFA D TMPFA
 ;
 I PROC["(" S PROC=$P(PROC,"(")
 N A S A=""
 I $G(@TMPFA@(MN_"~"_PROC))'="" S A=@TMPFA@(MN_"~"_PROC)
 I A["=",$P(A,"=",2)[".jsp" S A=$P(A,"=",2)
 Q A
 ;
 ;
CRTMPFA(FL) ; 
 N TMPFA D TMPFA
 N M,MN,A
 ;
 N FLN S FLN=$P(FL,"/",$L(FL,"/")) Q:FLN=""  Q:FLN'[".jsp"
 N FLN0 S FLN0=$P(FLN,".")
 I $E(FLN0,$L(FLN0))="0" Q
 O FL:(REWIND:READONLY)
 ;
 F  U FL R A Q:$ZEOF  D
 .S A=$$SPA^%L1FRM(A)
 .I A?1"function ".E D
 ..S FUNC=$P(A,"function ",2)
 ..I FUNC'["()" Q
 ..I FUNC["OnLoad(" Q
 ..I FUNC["OnUnload(" Q
 ..S FUNC=$P(FUNC,"(")
 ..I FUNC'="" S M(FUNC)=""
 .I A["D ^%W1WEBMN(" D
 ..S MN=$P(A,"D ^%W1WEBMN(",2)
 ..I MN["^" S MN=$P(MN,"^")
 ..S MN=$P(MN,")")
 ..;
 ..I $E(MN)="""" S MN=$P(MN,"""",2)
 ..I $$GETP^%W1PRM("ELPOS"),'$$ELPOS(MN) Q
 ..Q:MN=""
 ..I MN="WORKCC" Q 
 ..N FN S FN="" F  S FN=$O(M(FN)) Q:FN=""  D
 ...S @TMPFA@(MN_"~"_FN)=FLN
 C FL
 Q
 ;
 ;
TMPFA ; 
 S TMPFA=$$^W4MAIN("TMPFA")
 Q
 ;
ELPOS(MN) ; 
 I MN="ASHRAM"!(MN="ASHRSRV")!(MN="BO1")!(MN="LKH")!(MN="REPNET")!(MN="SIDE")!(MN="LKHSYS") Q 0
 Q 1 
 ;
SRCH(RKV1,SRC) ; 
 S RKV1=$$SPA^%L1FRM(RKV1)
 S SRC=$$SPA^%L1FRM(SRC) 
 I RKV1[" " S RKV1=$$SP1^%L1FRM(RKV1)
 I SRC[" " S SRC=$$SP1^%L1FRM(SRC)
 I SRC'[" ",RKV1[SRC Q 1
 N OK S OK=1
 N J F J=1:1:$L(SRC," ") D  Q:'OK
 .I RKV1'[$P(SRC," ",J) S OK=0 
 Q OK 
 ;
 ;
RESETPOS ; 
  W "function ResetPos()",!
  W "{",!
   W " self.getSelection().empty()",!
  ;W "var a=true",!
  ;W "while ( a )",!
  ;W "{ a= self.find("" "",false,true) }",!
  W "FindTxt('findtxt',false)",!
  W "}",!!
 Q
 ;
FINDTXT ;
  W "function FindTxt(txtid,back,win)",!
  W "{",!
   W "if ( typeof win == 'undefined' ) win=self;",!
   W "if ( typeof back == 'undefined' ) back=false;",!
   W "var txt=GetVl(txtid);",!
   W "if ( txt == """" ) return;",!
   ;;W "var proc='FindTxt(""'+txtid+'"",'+back+')';",! 
   ;;W "alert('txt='+txt+' txtid='+txtid+' proc='+proc)",!
   ;;W "if ( endres == '0' ) { setTimeout(proc,200); return }",! 
   W "win.find(txt,false,back);",!
  W "}",!!
 Q
 ;
FSZ() ; 
 I $$^W4TABLET=2 Q 18
 I $$1024^W4WDSCR Q 13 
 Q 14 
 ;
VIP() ; 
 I $$MGR^W4OPT!($$GETP^%W1PRM("HDOPT")!$$GETP^%W1PRM("SISALL")) Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W2MSG
%W2MSG ; [ 03.05.07 17:20 ] [
 W "function PopMsg(MSG)",!
 W "{",!
 W "var p=window.createPopup()",!
 W "var pbody=p.document.body",!
 W "pbody.style.backgroundColor=""ffffcc""",!
 W "pbody.style.border=""solid black 2px""",!
 W "pbody.innerHTML=""<br><h3 style='text-align:center'>""+MSG+""</h3>""",!
 W "p.show(200,120,400,60,document.body)",!
 W "}",!
 Q

%W2WEBMN
%W2WEBMN(MENU) ; [ 11.05.26 09:34 ] [ 26.04.26 02:05 ] [ 20.04.26 15:51 ] 
 N (MENU,JB,%ARG,%REM)
 I $G(MENU)="" S MENU="BO"
 S FSZ=$$FSZ
 ;
 N I,N,MN,IM,A
 S NOMENUCOUNT=0
 I $$GET^%W1PRM("NOMENUCOUNT") S NOMENUCOUNT=1
 ;
 I MENU'="BO" D  G END
 .D MAINMENU(MENU)
 ;
 D PREPMENU(MENU)
 ;
 D WMN(.MN,.MA,MENU,"",.MA0)
END Q
 ;
 ;
WMN(MN,MA,MENU,NODICT,MA0) ;
 I $G(%ARG("PRSNLPROC"))'="" D PRSNLPROC Q
 ;
 D STYLE
 ; 
 N CUR S CUR=0 S ZERO=+$G(ZERO)
 I $L($G(MENU)) S CUR=$G(@$$^W4MAIN("TMPCURMENU")@(MENU))
 N MN1,MA1
 M MN1=MN
 N I,CLSMN,HREF,IM
 S IM=$O(MN(999),-1)
 ;
 D SCRIPT(MENU)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" ",!
 W ">",!
  D SRV ;; -- TOP SERVICE LINE
 W "</div>",! 
 ;
 W "<div style=""ovrflow-Y:auto;text-align:center;"
     W "height:"_$S($$1024^W4WDSCR:"80%",1:"85%")_";"" "
     W "dir="""_$$^%W1DIR_""" ",!
 W ">",!
  W "<table style=""width:100%;height:100%"" border=""0"">",!
  W "<tr>",!
   W "<td width=""25%"">",!
    S TO="w5bomenu.jsp?JB="_JB
    D IFR("ifrbo",TO)
    W "</iframe>",! 
   W "</td>"
   ;
   S TO2=$$GETP^%W1PRM("BOTO2")
   W "<td width=""25%"">",!
    D IFR("ifr2",TO2)
    W "</iframe>",! 
   W "</td>"
   ;
   S TO3=$$GETP^%W1PRM("BOTO3")
   W "<td width=""25%"">",!
    D IFR("ifr3",TO3)
    W "</iframe>",!
   W "</td>"
   ;
   S TO4=$$GETP^%W1PRM("BOTO4")
   W "<td width=""25%"">",!
    D IFR("ifr4",TO4)
    W "</iframe>",!
   W "</td>"
  W "</tr>",! 
  W "</table>",! 
 W "</div>",! 
  ;
 W "<p></p>",!
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
    D SHOWSIDEMENU
 W "</div>",!
 W "<p></p>",!
 ;
 W "<script>",!
  W "UpdateTime()",!
  W "if ( GetId('ifr') == null ) GetId('tbvieword').style.visibility='hidden'",!
  I '$$^W4TABLET D
  .W "if ( GetId('findtxt') !== null ) GetId('findtxt').focus();GetId('findtxt').select()",!
 W "</script>",!
 Q
 ;
 ;
ALL(STAM) ;
 I $G(%ARG("OPENMENU"))="ALL" Q 1
 Q 0
 ;
BACK2MAIN(STAM) ;
 I $$GETP^%W1PRM("W4BO") Q 1
 I $G(%ARG("BACK2MAIN")) Q 1
 Q 0
 ;
CLOSE(STAM) ;
 I $G(%ARG("BO1")) Q 1
 I $$GETP^%W1PRM("BO1") Q 1
 Q 0
 ;
CSCARDS ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("FULLCUSTCARD")_""" "
  W " onClick=""ClickLkhCard()"" "
  W ">"
 W "</td>"
 ;
 W "<td>&nbsp;</td>"
 ;
 W "<td>"
  W "<input type=""button"" "
  W " value="""_$$^%W1DICT("FULLSUPPLCARD")_""" "
  W " onClick=""ClickSpkCard()"" "
  W ">"
 W "</td>"
 Q
 ;
 ;
BOCARDS ;
 ;
 I '$$PRTNET^W4PRM D
 .W "<td>"
 . W "<input type=""button"" "
 . W " value="""_$$^%W1DICT("ITEMCARD")_""" "
 . W " onClick=""ClickItemCard()"" "
 . W ">"
 .W "</td>"
 .W "<td>&nbsp;</td>"
 ;
 D
 .W "<td>"
  .W "<input type=""button"" "
  .W " value="""_$$^%W1DICT("FULLCUSTCARD")_""" "
  .W " onClick=""BOCustCard()"" "
  .W ">"
 .W "</td>",!
 .W "<td>&nbsp;</td>"
 ;
 I '$$GETP^%W1PRM("KUP") D
 .W "<td>"
 . W "<input type=""button"" "
 . W " value="""_$$^%W1DICT("MISC")_""" "
 . W " onClick=""BOMisc()"" "
 . W ">"
 .W "</td>"
 .;
 .I $$MENU^W4PRSMNU D 
 ..N IND S IND=$O(@$$GL^W4PRSMNU@(0)) Q:'IND
 ..W "<td width=""7%"">"
 .. W "<input type=""button"" "
 .. W " value="""_$$^%W1DICT("PERSONALAREA")_""" "
 .. W " onClick=""PersonalArea()"" "
 .. W ">"
 ..W "</td>"
 ;
 Q
 ;
 ;
SHOWORD ; 
 I $$PRSNL D  Q
 .W "<span style=""font-size:"_$$^W3FSZ($$FSZ)_";color:brown"">"_$$^%W1DICT("CREATEPRSNLAREA")_"</span>",!
 ;
 W "<table id=""tbvieword"" width=""100%"">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("ORDERNUMBER")_" " 
   W "</td>" 
   W "<td>"
    W "<input type=""text"" id=""ord"" size=""6"" "
    W "  onClick=""this.select()"" "
    W "  onKeyPress=""OrdKeyPress(event)""  "
    W "/>",!
   W "</td>"
   W "<td>"
    W "<input type=""button"" id=""btnord"" value="""_$$^%W1DICT("SHOW")_""" "
    W " onClick=""w1procgViewOrd('ord')""/>"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
FIND ;
 I $$^W4TABLET Q
 W $$^%W1DICT("SEARCH")_"&nbsp;"
 W "<input id=""findtxt"" type=""text"" size="""_$S($$1024^W4WDSCR:10,1:20)_""" "
 W "onKeyPress=""FindTxtEnter(event)"" "
 W "onClick=""this.select()"" onChange=""ResetPos()"" />&nbsp;"
 ;;W "<input type=""button"" id=""fndtxtbtnfw"" value="">"" onClick=""FindTxt('findtxt',false)"" style=""text-align:center;width:"_$S($$1024^W4WDSCR:25,1:25)_"px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:lightgree;padding:3px"" />"
 ;;W "&nbsp;"
 ;;W "<input type=""button"" id=""fndtxtbtnbc"" value=""<"" onClick=""FindTxt('findtxt',true)"" style=""text-align:center;width:"_$S($$1024^W4WDSCR:25,1:25)_"px;height:"_$S($$1024^W4WDSCR:25,1:25)_"px;background-color:lightgree;padding:3px"" />"
 I $G(MENU)="BO",'$$PRSNL D
 .W "&nbsp;"
 .W "<input type=""button"" id=""fndtxtbtnsrc"" value="""_$$^%W1DICT("FINDALL")_""" onClick=""FindAll('findtxt',true)"" style=""text-align:center;background-color:white;padding:3px"" >"
 Q
 ;
PRSNLSET(STAM) ; 
 Q $$GETP^%W1PRM("PRSNLSET") 
 ;
 ;
SETPERS(PRM) ; 
 N (JB,%ARG,%REM,PRM)
 S FL=$P(PRM,";",1)
 S NM=$P(PRM,";",2)
 S PROC=$P(PRM,";",3)
 S PROC=$$RPL^%L1FRM(PROC,"'","\'")
 S ACT=$P(PRM,";",4)
 ;
 S GL=$$GL^W4PRSMNU
 ;
 S ACT=1
 I $$PRSNLFIND(NM) S ACT=0
 ;
 I ACT D
 .S LAST=$O(@GL@(9999),-1)+1
 .I LAST=1 D
 ..S @GL@(0)="EXIT;w4prsmnu.jsp;Back();"
 .
 .S @GL@(LAST)=NM_";"_FL_";"_PROC
 ;
 I 'ACT D
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..I $P(A,";")=NM,$P(A,";",2)=FL,$P(A,";",3)=PROC K ^(N)
 Q 
 ;
ISPERS(NM,PROC) ; 
 N OK S OK=0
 N A,N S N="" F  S N=$O(@$$GL^W4PRSMNU@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)) 
 .S NMMN=$P(A,";")
 .S PROCMN=$P(A,";",3)
 .I NM=NMMN,PROC=PROCMN S OK=1 
 Q OK
 ;
PRSNL(STAM) ; 
 N MN S MN=$$GETP^%W1PRM("CURMENU")
 I $E(MN,1,7)="FINDALL" Q 0
 I $$PRSNLSET!$$GETP^%W1PRM("PRSNLMENU") Q 1 
 Q 0 
 ;
 ;
SRV ; 
 W "<table width=""100%"" cellspacing=""0"" border=""0"" dir="""_$$^%W1DIR_""">"
  W "<tr>"
   N WD1 S WD1=15 I $$1024^W4WDSCR!($$^W4TABLET=1) S WD1=20
   N WD2 S WD2=35 I $$1024^W4WDSCR S WD2=35
   I $$^W4TABLET=1 S WD2=25
   N WD3 S WD3=10 I $$1024^W4WDSCR!($$^W4TABLET=1) S WD3=3
   ;
   W "<td width="""_WD1_"%"">" D SHOWORD W "</td>"
   ;
   W "<td width="""_$S($$1024^W4WDSCR:6,1:12)_"%"" align=""center"" >"
      W "<img id=""calcid"" src=""w3calc.jpg"" alt=""Calculator"" onClick=""BOCalc('','100','1')"" style=""width:25px;height:25px;cursor:pointer"" />"
   W "</td>"
   ;
   W "<td width="""_WD2_"%"">" D FIND W "</td>"
   ;
   D BOCARDS
   ; 
   W "<td width="""_WD3_"%"">" D  W "</td>"
   .I '$$PRSNL D  Q
   ..D ^W4BUTTON("createprsmnu","CREATEPRSNLAREA","CreatePrsnlArea()","font-size:"_$$^W3FSZ($$FSZ)) 
   .D ^W4BUTTON("showprsmnu","SHOWPRSNLAREA","ShowPrsnlArea()") 
   ;
   W "<td width=""3%"" align=""center"" >"
    D
     . N WD,HG S WD=35,HG=35 I $$1024^W4WDSCR S WD=30,HG=30
     . W "<img id=""exit"" src=""w1exit.png"" alt=""Exit"" onClick=""Exit()"" style=""width:"_WD_"px;height:"_HG_"px;cursor:pointer"" />"
   W "</td>"
   ;
   W "<td width=""8%"" align=""left"" style=""font-size:"_$$^W3FSZ(8)_""">"
    W "JB "_JB_" ["_$$^W4MYDVN_"]",!
    W $$NBSP^%L1FRM(3)
     W "<span id=""curtime"" style=""font-size:"_$$^W3FSZ(12)_";color:brown;font-weight:bold"">"_$ZD($H,"24:60")_"</span>"
   W "</td>"
  W "</tr>",!   
 W "</table>",!
 Q
 ;
 ;
PREPMENU(MENU) ;
 N (JB,MENU,MA,MA0,MN)
 S N="",I=0 F  S N=$O(^[$$^W3MAIN]W4OPT(MENU,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .D PREPMENU1(A)
 Q
 ;
PREPMENU1(A) ;
 N (JB,MENU,MA,MA0,MN,A,I,N)
 S US=$P(A,";") X "I "_US I  D
 .S RKV=$P(A,";",2)
 .S PROC=$P(A,";",3)
 .S I=I+1,MN(I)=RKV,MA0(I)=PROC,MA(I)=PROC
 .I N D
 ..N LVL S LVL=$G(^[$$^W3MAIN]W4OPT(MENU,N,"PSWLVL")) Q:LVL<2
 ..I LVL<4,$$US23^W4LVL Q
 ..I LVL<4,$$^W4LVL("BO","EXIT")>2 Q
 ..S MA(I)="PswLvl('"_LVL_"','"_PROC_"')"
 Q
 ;
 ;
BODYMENU(MENU,PARENT) ;
 S MENU=$G(MENU) 
 N MENUHD S MENUHD=""
 N IDCUREL S IDCUREL=""
 ;
 I MENU["^" D
 .S MENUHD=$$SPA^%L1FRM($P(MENU,"^",2))
 .S MENU=$$SPA^%L1FRM($P(MENU,"^"))
 ;
 I MENU="BO",MENUHD="" S MENUHD="MAINMENU"
 ;
 I $L(MENU) S CUR=$G(@$$^W4MAIN("TMPCURMENU")@(MENU))
 N WDT S WDT=98
 ;
 W "<table id=""TblMenu"" width="""_WDT_"%"" border=""0"""
 N CLPAD S CLPAD=4+$$^W4TABLET I $$1024^W4WDSCR S CLPAD=CLPAD-2
 W " cellpadding="""_$$^W4KF(CLPAD)_"px"" "
 W " dir="""_$$^%W1DIR_""""
 W " >",!
 ;
 I $L(MENUHD) D 
 .W "<tr ",!
 .  W " style=""width:95%;text-align:center;background-color:939598;color:white;"_$$FONTFM^W4CSS1_";font-size:"_$$^W3FSZ($$FSZ)_""" "
 .W ">",!
 . W "<td colspan=""3"" style=""text-align:center"" "
 . W "> ",!
 .  W $$^%W1DICT(MENUHD)
 .
 .  I $G(MENU)'="BO" D
 ..  N SZ S SZ=22 I $$1024^W4WDSCR S SZ=18
 ..  W "<img src=""w4closeifr.png"" "
 ..   W " style=""width:"_SZ_"px; height:"_SZ_"px; position: absolute; left: 15px;"" "
 ..   ;;W " onClick=""parent.ifrHide('MUST',window.frameElement.id)"" "
 ..   W " onClick=""HideSubMenu()"" "
 ..  W "/>",!
 . W "</td>"
 .W "</tr>",!
 ;
 N I1,K S I1=0,K=0
 N OPMN S OPMN=$G(%ARG("OPENMENU"))
 ;
 N ONCLICK,ONCLICKDIR,CURSORDIR
 ;
 N IM S IM=$O(MN1(9999),-1)
 ;
 F I=1:1:IM D
 .S PRARR=0
 .S MN1(I)=$$SPA^%L1FRM(MN1(I))
 .
 .I $E(MN1(I),$L(MN1(I)))=">" D
 ..S PRARR=1
 ..S MN1(I)=$E(MN1(I),1,$L(MN1(I))-1)
 .
 .N JSP,PRM S JSP=$P(MA(I),"?")
 .S HREF="",ONCLICK=""
 .
 .I MENU="TELMENU" S JSP=$$RPL^%L1FRM(JSP,"\'","'")
 .
 .N WIN S WIN="self" I $G(PARENT) S WIN="parent"
 .N IND S IND=I1 I 'ZERO S IND=I1+1
 .
 .I $$FUNC^%LCASE(MA(I))[".jsp" D
 ..S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurNewMenu(this,'"_MENU_"','"_IND_"')",1:"")_";"_WIN_".location.replace(unescape('"_MA(I)_"'))"""
 .;
 .I ONCLICK="" S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurNewMenu(this,'"_MENU_"','"_IND_"');",1:"")_JSP_""""
 .
 .I $$PRSNLSET,'$G(PRARR),$G(MA(I))'="Back()",$G(MA(I))'="Exit()" S ONCLICK=""
 .
 .I MN1(I)["~" S K=K+1
 .
 .S CURSORDIR=""
 .I $L(OPMN),OPMN'="ALL",OPMN'=K D
 ..S CURSORDIR=";cursor:pointer"
 .
 .S ONCLICKDIR=""
 .I $L(OPMN),OPMN'=K D
 ..S ONCLICKDIR=" onClick=""OnClickDirNeMenu(this,'"_K_"')"" "
 .
 .I MN1(I)["~" D  Q
 ..W "<tr>"
 .. W "<td colspan=""3"" style=""background-color:darkgrey; color:white ; text-align:center; color:white ;"_CURSORDIR_""" "_ONCLICKDIR_" >",!
 ..  W "<p style=""border:ridge 1px white;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT($TR(MN1(I),"~>",""))_"</p>"
 .. W "</td>"
 ..W "</tr>",!
 .
 .I $L(OPMN),OPMN'="ALL",OPMN'=K,I1>0 Q
 .
 .I 'ZERO S I1=I1+1
 .
 .W "<tr "
 . ;;I $G(CUR),I1=CUR W "style=""background-color:lightyellow"" "
 .W ">" 
 . W "<td >"
 . N HG,WD S (WD,HG)="20px" I $$1024^W4WDSCR S (WD,HG)="14px"
 . I PRARR W "<img src=""w3dir.jpg"" width="""_WD_""" height="""_HG_""" "_ONCLICK_" />"
 .W "</td>"
 . 
 . N FSZ S FSZ=$$FSZ-2
 . W "<td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(FSZ)
 .  W ";color:brown;cursor:pointer"" "
 .  W ONCLICK
 . W ">"
 . I '$G(NOMENUCOUNT) W I1 ;;_"."
 .W "</td>"
 .
 .W "<td width=""92%"" "
 . I I1 D
 .. N IDEL S IDEL="WebMenu"_MENU_I1
 .. W " id="""_IDEL_""" "
 .. I $G(CUR),I1=CUR S IDCUREL=IDEL
 .
 . W " style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)
 .  W ";color:"_$$FGFLD^W3CSS($$COLOR^W3IMG)
 .  W ";"_$$DRC^%W1DIR
 .  W $S(I1=CUR:";text-decoration:underline",1:"")_";cursor:pointer"
 . W """ " 
 .
 . I I>1 D
 .. W " onMouseOver=""OnMouseOverMenu(this)"" "
 .. W " onMouseOut=""OnMouseOutMenu(this)"" "
 .
 . I $G(NODICT) S MN1=$$H2U^%L1FRM(MN1(I))
 . E  S MN1=$$^%W1DICT(MN1(I))
 . W ONCLICK_" >"_MN1_"</td>"
 .W "</tr>",!
 .
 .I ZERO S I1=I1+1
 ;
 W "<tr><td colspan=""3"">&nbsp;</td></tr>",!
 W "</table>",!
 ;
 Q
 ;
 ;
MAINMENU(MENU) ;
 N (JB,MENU)
 I $G(MENU)="" S MENU="BO"
 S ZERO=0,CUR=0 ;;,NOMENUCOUNT=1
 D PREPMENU($P(MENU,"^"))
 S IM=$O(MN(999),-1)
 M MN1=MN
 D BODYMENU(MENU)
 Q
 ;
SIDEMENU(SIDE) ;
 N (JB,SIDE)
 S ZERO=1,CUR=0,NOMENUCOUNT=1
 S %ARG("SIDE")=1
 D PREPMENU(SIDE)
 S IM=$O(MN(999),-1)
 M MN1=MN
 D BOTTOMMENU(SIDE)
 Q
 ;
SIDEPRSN ;
  D PUT^%W1PRM("PRSNLBO",1) 
  D ^W4PRSMNU(1)
 Q
 ;
 ;
SIDE(STAM) ; 
 Q $G(%ARG("SIDE")) 
 ;
 ;
SCRIPT(MENU) ;
 W "<script>",!
  D RESETPOS
  ;
  D FINDTXT
  ;
  W "function FindTxtEnter(ev)",!
  W "{",!
   I $G(MENU)'="" D 
   
   W "if (ev.keyCode == 13 || ev.which == 13 )",!
   W "{",!
    W "var opt=GetVl('findtxt')",!
    W "if ( opt == 'LV' || opt == 'lv' ) {",!
     W " var hrf=self.location.href",!
     W " hrf=HrefWithoutPrmS(hrf,""&HDOPT"")",!
     W " hrf=hrf+""&HDOPT=1"" ",!
     W " self.location.replace(hrf)  ",!
     W " return",!
    W "}",! 
    
    I $G(MENU)'="" D 
    .W "if ( !isNaN(opt) )",!
    .W "{",!
    . W "var idopt='WebMenu"_MENU_"'+opt;",!
    . W "var optel=GetId(idopt);",!
    . W "if (optel !== null && optel !== undefined) {optel.click();return}",! 
    .W "}",!
    ;
    W " GetId('fndtxtbtnfw').focus()",!
   W "}",!
  W "}",!
  ;
  W "function OrdKeyPress(ev)",!
  W "{",!
   W "if (ev.keyCode == 13 || ev.which == 13 )",!
   W "{",!
    W " GetId('fndtxtbtnfw').focus()",!
   W "}",!
  W "}",!
  ;
  W "function ShowPrsnlArea()",!
  W "{",!
   W "var to=""w4showprsmnu.jsp?JB="_JB_"&FIRST=1"" ",!
   W "CallIfr(to,""ifr"",self,10,""60%"",""80%"",""20%"",""10%"")",!
  W "}",!
  ;
 W "</script>",!
 Q
 ;
 ;
PRSNLFIND(NM) ; 
 N GL S GL=$$GL^W4PRSMNU
 N OK,A S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)) 
 .I $P(A,";")=NM S OK=1 
 Q OK
 ;
 ;
PREPFINDALL(SRC) ; 
 Q $$PREPFINDALL^%W1WEBMN(SRC)
 ; 
 ;
ELPOS(MN) ; 
 I MN="ASHRAM"!(MN="ASHRSRV")!(MN="BO1")!(MN="LKH")!(MN="REPNET")!(MN?1"SIDE".E)!(MN="LKHSYS")!(MN["POP") Q 0
 Q 1 
 ;
 ;
RESETPOS ; 
  W "function ResetPos()",!
  W "{",!
   W " self.getSelection().empty()",!
  ;W "var a=true",!
  ;W "while ( a )",!
  ;W "{ a= self.find("" "",false,true) }",!
  W "FindTxt('findtxt',false)",!
  W "}",!!
 Q
 ;
FINDTXT ;
  W "function FindTxt(txtid,back,win)",!
  W "{",!
   W "FindText(txtid,back)",!
  W "}",!
  Q 
   W "if ( typeof win == 'undefined' ) win=self;",!
   W "if ( typeof back == 'undefined' ) back=false;",!
   W "var txt=GetVl(txtid);",!
   W "if ( txt == """" ) return;",!
  W "}",!!
 Q
 ;
FSZ() ; 
 I $$1024^W4WDSCR Q 11
 Q 13 
 ;
VIP() ; 
 I $$MGR^W4OPT!($$GETP^%W1PRM("HDOPT")!$$GETP^%W1PRM("SISALL")) Q 1
 Q 0 
 ;
PRSNLPROC ; 
 N PROC S PROC=%ARG("PRSNLPROC")
 W "<div dir="""_$$^%W1DIR_""" style=""text-align:center;"_$$FONTFM^W4CSS1_";font-size:"_$$^W3FSZ($$FSZ)_""" >",!
 W "<p></p>",!
 W "<p>"_$$^%W1DICT("WAIT")_"</p>",!
 W "<script>",!
  W PROC,!
 W "</script>",!
 W "</div>",!
 Q
 ;
STYLE ; 
 W "<style>",!
 W "td {",!
 W " font-size:"_$$^W3FSZ(11),!
 W "}",!
 ;
 W "img {",!
 W " width:"_$$^W4KF(16)_"px;",!
 W " height:"_$$^W4KF(16)_"px;",!
 W "}",!
 W "</style>",!
 Q
 ;
 ;
SHOWSIDEMENU ; ;
  N SIDEPRSN S SIDEPRSN=0
  ;
  I '$$PRSNLSET D
  .N MN,DARGA S MN=$$GETP^%W1PRM("MNL") S DARGA=""
  .I MN D
  ..D PUT^%W1PRM("CURMENU",MN)
  ..S DARGA=+$G(@$$^W4GL("W4PSWDRG")@(MN))
  .;
  .I $$VIP S DARGA=4
  .N LVL S LVL=$G(@$$^W4GL("W4OPT")@("BO",8,"PSWLVL")) ; -- REPORTS & QUERIES
  .;
  .I DARGA,DARGA<LVL D SIDEMENU("SIDE1") Q
  .I $$NOCHKPSW^W4CHKPSW(3)!$$US23^W4LVL!($$BO^W4LVL=3)!$$VIP D SIDEMENU("SIDE") Q
  .D SIDEMENU("SIDE1") Q
  ;
 Q
 ;
 ; 
BOTTOMMENU(MENU) ;
 N ONCLICK,ONCLICKDIR,CURSORDIR,CLSMN,WDT
 N I,CLSMN,HREF
 ;
 S CLSMN=$S($$^%W1DIR="RTL":"menuh",1:"menu")
 S WDT=IM*10 
 I WDT>100 S WDT=100
 ;
 W "<table align=""center"" class="""_CLSMN_""" width="""_WDT_"%"" border=""0"""
 W " cellpadding=""4px"" "
 W " dir="""_$$^%W1DIR_""""
 W " >",!
 ;
 N I1,K S I1=0,K=0
 ;
 W "<tr>"
 F I=1:1:IM D
 .S PRARR=0
 .S MN1(I)=$$SPA^%L1FRM(MN1(I))
 .
 .I $E(MN1(I),$L(MN1(I)))=">" D
 ..S PRARR=1
 ..S MN1(I)=$E(MN1(I),1,$L(MN1(I))-1)
 .
 .N JSP,PRM S JSP=$P(MA(I),"?")
 .S HREF="",ONCLICK=""
 .
 .I $$FUNC^%LCASE(MA(I))[".jsp" D
 ..S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurMenu('"_MENU_"','"_IND_"')",1:"")_";self.location.replace(unescape('"_MA(I)_"'))"""
 .;
 .I ONCLICK="" S ONCLICK=" onClick="""_$S($L($G(MENU)):"SetCurMenu('"_MENU_"','"_I1_"');",1:"")_JSP_""""
 .
 .I $$PRSNLSET,'$G(PRARR),$G(MA(I))'="Back()",$G(MA(I))'="Exit()" S ONCLICK=""
 .
 .I MN1(I)["~" S K=K+1
 .
 .S CURSORDIR=";cursor:pointer"
 .
 .S ONCLICKDIR=""
 .
 .W "<td "
 . I I1 W "id=""WebMenu"_MENU_I1_""" "
 . W " style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)
 . W ";color:brown;background-color:white;cursor:pointer;border:double 3px brown"
 . W """ "
 . D
 .. W " onMouseOver=""OnMouseOverMenu(this)"" "
 .. W " onMouseOut=""OnMouseOutMenu(this)"" "
 . 
 . I $G(NODICT) S MN1=$$H2U^%L1FRM(MN1(I))
 . E  S MN1=$$^%W1DICT(MN1(I))
 . W ONCLICK_" >"
 .  W MN1
 .W "</td>"
 ;
 W "</tr>",!
 W "</table>",!
 Q
 ;
IFR(ID,TO) ;
 S TO=$G(TO)
 W "<iframe id="""_ID_""" style=""border:none;width:100%;height:100%;overflow-y:auto;overflow-x:hidden"" "
  I $L(TO) W " src="""_TO_""" "
 W ">",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

%W3DEB
%W3DEB(%W3PROG,%W3PRM) ; [ 14.03.16 15:25 ] [ 11.02.15 18:29 ] [ 15.07.14 12:45 ] 
 G PUT1
PUT(%W3PROG,%W3PRM)
PUT1 I $G(%W3PROG)="" Q
 N $ZT S $ZT="ZG "_$ZL_":END"
 ;
 S JB=+$G(JB)
 I $G(@$$^W3GL("NODEBA")) Q
 ;
 N %IND
 I $D(@$$^W3GL("DEBAJ")) D
 .S %IND=$O(^[$$^W3MAIN]TMPAJ(+$H,JB,99999999),-1)+1
 .N %NMB S %NMB=$$GETP^%W1PRM("NMB")
 .S ^[$$^W3MAIN]TMPAJ(+$H,JB,%IND,%W3PROG)=%NMB_"\"_$P($H,",",2)_"\"_$J
 .S ^[$$^W3MAIN]TMPPOSJB(+$H,$J,"PROG")=%W3PROG_"\"_JB_"\"_$P($H,",",2)
 ;
 I '$D(@$$^W3GL("DEBA")) Q
 ;
 N %W3GL S %W3GL=$$GLDEB
 S @%W3GL=$ZD($H,"DD.MM.YY  24:60")_"\"_$J
 S %W3PRM=$TR(%W3PRM," ","")
 ;
 N %W3I F %W3I=1:1:$L(%W3PRM,"&") D
 .N %W3ITEM S %W3ITEM=$P(%W3PRM,"&",%W3I)
 .N %W3NM,%W3VL S %W3NM=$P(%W3ITEM,"="),%W3VL=$P(%W3ITEM,"=",2)
 .;;I %W3NM'?1A.AN Q
 .S %W3NM=$E(%W3NM,1,240)
 .I %W3NM=""!(%W3PROG="") Q
 .I $E(%W3VL)="[" M @%W3GL@(%W3PROG,%W3NM)=@$E(%W3VL,2,200) Q
 .I $E(%W3VL)="^" M @%W3GL@(%W3PROG,%W3NM)=@%W3VL Q
 .S @%W3GL@(%W3PROG,%W3NM)=$E($G(@%W3VL,"<UNDEF>"),1,400)
 ;
END Q
 ;
KILL(%W3PROG) ;
 N %W3GL S %W3GL=$$GLDEB
 I %W3PROG="*" K @%W3GL Q
 K @%W3GL@(%W3PROG)
 Q
 ;
GLDEB(STAM) ;
 ;;Q "^[$$^W3MAIN]A(+$G(JB))"
 N %IND S %IND=$O(^[$$^W3MAIN]A(+$H,+$G(JB),9999999),-1)+1
 Q "^[$$^W3MAIN]A(+$H,+$G(JB),"_%IND_")"
 ;
ASC(TXT) ;
 N OU S OU=""
 U 0 N I F I=1:1:$L(TXT) S OU=OU_$A(TXT,I)_" "
 Q OU
 

%W3MSG
%W1MSG(MSG) ; [ 03.05.07 09:52 ] [
 W "<script type=""text/javascript"">",!
 W "function Msg(MSG)"
 W "{",!
 W "  myMsg=window.open('','_blank','width=300,height=200')",!
 W "  myMsg.document.write(""<H1>"_escape(MSG)_"</H1>"")",!
 W "  myMsg.focus()",!
 W "}"
 W "</script>",!
Q

%ZCAVJSP
%ZCAVJSP ; wrapper for Mumps for JSP interaction. [ 07.12.20 10:57 ] [ 30.06.18 15:31 ] [ 01.10.17 12:31 ] 
 ; A single M job will handle many JSP pages, one at a time.
 ;----------------------------------------------------------
 ;------------------------ MAIN ----------------------------
 S D="_"
 D EXEC
 Q
 ;-----------------------------------------------------------
 ;
INIT ; init the job
 ;D INJ^%INTGET
 Q
 ;
CLEAR ; clear the job, on the beginning of each page handling
 ;D EXJ^%INTGET
 K
 ZD
 Q
 ;
EXEC ; main loop
 S $ZT="ZG "_$ZL_":ERR^MJSP"
 D NOECHO
 D U00
 W "~","~~> "
 ;;U 0 H 0
 R %COMMAND
 ;;S ^ZCAVCMD(+$G(JB),$O(^ZCAVCMD(+$G(JB),""),-1)+1)="EXEC:"_%COMMAND
 X %COMMAND
 G EXEC
 ;
REMSAVE(CODE) ; save M code for later execution by a remote browser
 ; CODE - The code to execute later
 ; generate a random key to save this code in
 ;-----------------------------------------------
 ;
 N $ZT S $ZT="ZG "_$ZL_":ERRS^MJSP"
 S CODE="D CWD^MJSP("""_$$PWD^MJSP()_""") "_CODE
 I $D(JB) S CODE="S JB="""_JB_""" "_CODE
 N KEY
 F  D  Q:'$D(^[$$^W3MAIN]CacheTempJSP(KEY)) ; Was ^["USER"]Ca... -- *** LEV
 .S KEY=$$KEYGEN()
 S ^[$$^W3MAIN]CacheTempJSP(KEY)=CODE
 ;;S ^ZCAVCMD(+$G(JB),$O(^ZCAVCMD(+$G(JB),""),-1)+1)="REMSAVE:"_CODE
 W KEY
 Q
 ;
KEYGEN() ; generate a random key. key is a 56 char long alphanumeric sequence
 N KEY,CHAR,I S KEY=+$H_$TR($J($G(JB),10)," ",0)_$TR($J($P($H,",",2),5)," ",0)
 F I=1:1:16  D  ; --- WAS 36
 .S CHAR=$R(36)
 .I CHAR>9 S CHAR=$C(55+CHAR) ; English capital letters
 .S KEY=KEY_CHAR
 Q KEY
 ;
REMEXEC(KEY)  ; remote execution of M label, called from the browser
 ; KEY - a one time random key, that will lead us to the M label
 ;       That was previously stored in it
 ;
 ; ARGS - optional arguments passed by the javascript, in the form
 ;       of AVG1=VAL1,ARG2=VAL2,...
 ;--------------------------------------------------------------------
 ;
 Q:$G(KEY)=""
 N $ZT S $ZT="ZG "_$ZL_":ERRS^MJSP"
 N %COMMAND
 S %COMMAND=$G(^[$$^W3MAIN]CacheTempJSP(KEY))
 ;;S ^ZCAVCMD(+$G(JB),$O(^ZCAVCMD(+$G(JB),""),-1)+1)="REMEXEC:"_%COMMAND
 I %COMMAND="" W "ERROR: key "_KEY_" not found",! Q
 I '$G(JB) S JB=+$E(KEY,6,15)
 I $G(ARGS)'="" D URI("ARGS",ARGS) S @ARGS
 X %COMMAND
 Q
 ;
ERR  ; Error trap
 H 1
 S $ZT="ZG "_$ZL_":HALT^MJSP"
 D NOECHO
 ;;W "ERR> ",$ZS,!
 N DATE S DATE=$$DATE
 N ZH S ZH=$O(^ERR(DATE,99999999),-1)+1 ; *** LEV
 S ^ERR(DATE,ZH,+$G(JB))=$ZS
 S ^ERR(DATE,ZH,+$G(JB),"$H")=$H ; *** LEV
 S ^ERR(DATE,ZH,+$G(JB),"CMD")=$G(%COMMAND)
 N I F I=0:1:$STACK D
 . S ^ERR(DATE,ZH,+$G(JB),I,"MCODE")=$STACK(I,"MCODE")
 . S ^ERR(DATE,ZH,+$G(JB),I,"PLACE")=$STACK(I,"PLACE")
HALT H  ;H 2 G EXEC
 ;
ERRS  ; Error trap
 H 1
 N $ZT S $ZT="ZG "_$ZL_":ERRSE^MJSP"
 D NOECHO
 N DATE S DATE=$$DATE
 N ZH S ZH=$O(^ERR(DATE,99999999),-1)+1 ; *** LEV
 S ^ERR(DATE,ZH,+$G(JB))=$ZS
 S ^ERR(DATE,ZH,+$G(JB),"$H")=$H ; *** LEV
 S ^ERR(DATE,ZH,+$G(JB),"CMD")=$G(%COMMAND)
 N I F I=0:1:$STACK D
 . S ^ERR(DATE,ZH,+$G(JB),I,"MCODE")=$STACK(I,"MCODE")
 . S ^ERR(DATE,ZH,+$G(JB),I,"PLACE")=$STACK(I,"PLACE")
ERRSE W "SE.NOK",!
 Q
 ;
DATE() ; Return the date in format YYYYMMDD
 N ZV S ZV=$$ZV
 ;;I ZV["MVX" Q $ZDATE($H,8) ;; *** LEV
 I ZV["GTM" Q $ZDATE($H,"YEARMMDD")
 Q "UNKNOWN"
 ;
ZV() ; Return system type
 ; for Cache open/M ISM all intersystems mumps "MVX"
 ; for GTM (sanches mumps) "GTM"
 ; for micronetics "MSM"
 ; for dsm "DSM"
 ; for dtm "DTM"
 ;---------------------------------------------------
 N SYS
 S SYS=$$SYS
 I SYS?1"Cache".E  Q "MVX"
 I SYS?1"M/S".E    Q "MVX"
 I SYS?1"Open M".E Q "MVX"
 I SYS?1"MSM".E    Q "MSM"
 I SYS["DSM"       Q "DSM"
 I SYS?1"DTM".E    Q "DTM"
 I SYS?1"GT.M".E   Q "GTM"
 Q "UNKNOWN"
 ;
NOECHO ; Turn off the echo on the terminal device
 N ZV,PLT S ZV=$$ZV,PLT=$$PLT
 U 0:(NOECHO:NOWRAP:NOCENABLE) ; NOWRAP - *** LEV
 ;;I ZV["MSM" U 0:(::::1) ;;*** LEV
 ;;I ZV["MVX" U 0:(:"+S") ;;*** LEV
 Q
 ;
U00 ; Cancel line wrap on terminal device
 N ZV,PLT S ZV=$$ZV,PLT=$$PLT
 U 0:(NOECHO:NOWRAP:NOCENABLE) ; NOWRAP - *** LEV
 ;;I PLT["VAX"!(ZV["GTM") U 0:WIDTH=0 Q
 ;;I ZV["MSM"!(ZV["MVX") U 0:0 ;; *** LEV
 Q
 ;
PLT() ; PLATFORM
 ; /**
 ;  * return Operating system platform
 ;  * example for linux the unix vendor (IBM/HP/SUN...)
 ;  * for windows-nt and 2000 "NT"
 ;  * for vms "VAX"
 ;  * for GTM "PC386"
 ;  * see also $$ZV
 ;  */
 ;--------------------------------------------------------
 ;
 N SYS,ZV S SYS=$$SYS,ZV=$$ZV
 I ZV="MVX" Q $P($P(SYS,")",1),"(",2) ;; *** LEV
 I SYS["MSM-PC/PLUS" Q "PC386"
 I SYS["MSM-PC/386" Q "PC386"
 I ZV="MSM",$$ZVER="2.2.6" Q "PC386"
 I SYS["MSM-PC" Q "PC"
 I ZV="DSM",SYS["PDP" Q "PDP"
 I ZV="DSM",SYS["VAX" Q "VAX"
 I ZV="GTM" Q:$P(SYS," ",4)="x86" "PC386" Q $P(SYS," ",4)
 Q "UNKNOWN"
 ;
ZVER() ;
 ; /**
 ;  * return system type version (see also $$ZV)
 ;  * for example cache 4.1.5 $$ZVER="4.1.5|
 ;  */
 ; VERSION (NUMBER.NUMBER.NUMBER OR NUMBER.NUMBER-NUMBER.NUMBER)
 ;--------------------------------------------------------------
 ;
 N SYS,ZV S SYS=$$SYS,ZV=$$ZV
 I ZV="MVX" S SYS=$P(SYS,")",2) Q $P(SYS," ",2)
 I ZV="MSM" Q $P(SYS,"Version ",2)
 I ZV="GTM" Q $E($P(SYS," ",2),2,99) ;GT.M V4.2-000 Linux x86
 Q $P(SYS," ",3)
 ;
CWD(%UCI) ; SWITCH TO ANOTHER NAMSPACE (A.K.A. UCI)
 ;    !! DONT USE THIS LABEL !! FOR INTERNAL USE ONLY !!
 ; (IN MSM MUST BE="UCI,VOL")
 ; (IN MSQL MUST BE="/dir/dir/")
 ;----------------------------------------------------------
 ;
 ;;S ^TEST("1")=%UCI
 ;
 ;-------------------------------- *** LEV --> COMMENT -----
 ;; I $$SYS?1"Cache".E D  q
 ;;.ZN %UCI
 ;;.I $D(^ROUTINE("HAVILA")) D ON^HAVILA
 ;;I $$ZV["MVX" D  Q
 ;;.I $ZU(39,$$MGR)
 ;;.I $ZU(5,%UCI)
 ;;.I $D(^ROUTINE("HAVILA")) D ON^HAVILA
 ;;I $$ZV["MSM" D  Q
 ;;.N %UCN
 ;;.I %UCI'["," S %UCI=%UCI_","_$P($ZU(0),",",2)
 ;;.S %UCN=$ZU($P(%UCI,",",1),$P(%UCI,",",2)),%UCN=$P(%UCN,",",2)*32+%UCN
 ;;.V 2:$J:%UCN:2
 ;;I $$ZV["DSM",$$OS="VMS" D  Q
 ;;.I %UCI'["," S %UCI=%UCI_","_$P($ZU(0),",",2)
 ;;.X "I $ZC(%SETUCI,$P(%UCI,"","",1),$P(%UCI,"","",2))"
 ;---------------------------------------------------------------
 ;
 I $$ZV["GTM" D  Q
 .S $ZPROMPT=%UCI_">"
 .
 ;.S $ZGBL=$$GBL^%ZUCIMAP(%UCI)
 ;.S ^TEST(1)="KUKU"
 ;.I %UCI="MGR" S $ZROU=$$RTN^%ZUCIMAP("MGR") Q
 ;.S $ZROU=$$RTN^%ZUCIMAP(%UCI)_" "_$$RTN^%ZUCIMAP("MGR")
 ;.S $ZGBL=$$GBL^%ZUCIMAP(%UCI)
 ;;ZT "UNKNOWN SYSTEM"
 Q
 ;
PWD() ; GET CURRENT WORKING NAMESPACE
 ; /**
 ;  * Return mumps current UCI or NameSpace
 ;  * in cache return Namespace. in Openm return directory.
 ;  * in gtm return UCI "MLI" in msm return UCI
 ;  *
 ;  * example S MYUCI=$$UCI^%ZCAVV S GLO=$NA(^[MYUCI]W(JB))
 ;  */
 ;-----------------------------------------------------------
 N A
 I $$ZV["GTM" S A="MGR" Q A   ;; *** dima
 ;;I $$ZV["MVX" S A=$ZU(5)    ;; *** LEV
 ;;E  S A=$ZU(0)              ;; *** LEV
 S A=$TR(A,"_")
 Q A
 ;
OS() ;
 ; /**
 ;  * return Operating system type (above the mumps)
 ;  * example for linux and other unix "UNIX"
 ;  * for windows-nt and 2000 "NT"
 ;  * for vms "VMS"
 ;  * see also $$ZV
 ;  */
 ;--------------------------------------------------
 N SYS,ZV S SYS=$$SYS,ZV=$$ZV
 I SYS["Unix" Q "UNIX"
 I SYS["UNIX" Q "UNIX"
 I SYS["VMS" Q "VMS"
 I SYS["VAX DSM" Q "VMS"
 I SYS["MSM-PC" Q "DOS"
 I SYS["DSM" Q "DSM"
 I SYS["DTM" Q "DOS"
 I SYS["Windows NT" Q "NT"
 I SYS["Windows 95" Q "WINDOWS"
 I ZV="GTM",SYS["Linux" Q "UNIX"
 Q "UNKNOWN"
 ;
MGR() ;
 ; /**
 ;  * Return mgr UCI name
 ;  *
 ;  */
 ;-----------------------
 I $$NS Q "MGR"
 ;;I $$ZV["MVX" Q $ZU(12)
 I $$ZV["GTM" Q "MGR"
 ;;Q $ZU(1,0)            ;;*** LEV
 Q
 ;
NS() ; =1 IF NAMESPACE METHOD
 I $$ZV'["MVX" Q 0
 I $$OS="NT" Q 1
 I $$SYS?1"Cache".E Q 1
 Q 0
 ;
SYS() Q $ZV
 ;
 ;
 ;------------------------------------------------
 ;          Test labels for the examples         ;
 ;------------------------------------------------
 ;
TBLTEST ;
 W "NAME=id,TYPE=N",!
 W "NAME=first,TYPE=E",!
 W "NAME=last,TYPE=E",!
 W "NAME=address,TYPE=E",!
 W ">>>DATA",!
 W "1_sidney_Levy_Rechasim",!
 W "2_Yishai_Pinchover_Haifa",!
 W "3_Uri_Schor_Zichron Ya'akov",!
 W "4_Dima_Sandratski_Tel Aviv",!
 Q
 ;
MULTTEST(T) ;
 N I,J
 W "NAME="_$$H2U^%L1FRM("al")_",TYPE=H",!
 F I=1:1:T W "NAME="_$$H2U^%L1FRM($C(95+I))_",TYPE=N",!
 W ">>>DATA",!
 F I=1:1:T D
 . W I
 . F J=1:1:T W "_"_(I*J)_$$H2U^%L1FRM($C(95+J))
 . W !
 Q
 ;
SQRTEST; return arg^2
 Q:'$D(arg)
 W arg*arg
 Q
 ;
URI(IND,CONT) ; 
 I $G(IND)="" Q 
 ;;S ^URI(IND)=$G(CONT)
 Q 
 
 
 
 
 
 
 
 
 

%ZMSL
%ZMSL ;               [ 16.02.24 05:19 ] [ 07.02.24 12:42 ] [ 19.01.24 09:59 ] 
 ;PARAMETERS :
 ;  %HBRY - $D - LEKABEL OTIJOT IVRIJOT
 ; %FLINS - $D - INSERT , '$D - OVERLAY
 ; %FLL - FIRST SYMBOL AUX
 ; %LS - LENGTH
 ; CIST - SET SYMBOLS SHE MUTAR LEHACHNIS (CIST="": COL MAKASH -> %TO)
 ; %BE="E"- LHATHIL HAKLADAT TEXT MI SOF SHURA
 ; %ZMSL - SYMBOLS SET THAT INTERRUPT INPUT -> %TO
 ; %ZMSL("bf") ;-- B<>F - PRE- & POST SYMBOLS
 ; %ZMSL("LS") : IF $L(%S)=%LS - EXIT
 ; %ZMSF - TAB,INS,PGUP,PGDN,F1-F10,END,HOME - MESAJEMIM HAKLADA - > %TO
 ; %MBG("MOVE") - PARAMETER FROM %L3MBG
 ; %INV - INVERS
 ; %GET(1) - HAKLADAT SYMBOL 1 & EXIT
 ;-------------------------------------------------------------
 ; OUTPUT: %S,%TO
 ;-------------------------------------------------------------
 S ^%TYPCRT(%L3MYDVN)="VT510",%TYPCRT=^(%L3MYDVN)
 K %FLL N %FRVV S %FRVV=""
 ;;K %HBRY
 N %ZMSLX,%ZMSLY,%NMB,%NMB0 S %ZMSLX=$X,%ZMSLY=$Y
 D USE I '$D(%POSIC) D ^%L1C
 S %MOUSE=0
 ;;I '$D(%MOUSE) S %MOUSE=$$HZGTOUCH^%L2MOUSE K %screen
 S %T1=$P($H,",",2)
 N %I,%J,%L,%A,%C,%C1,%C2,%BEG,%XX,%YY,%PRKB I '$D(%C) K %FLL
 K %L1NMB("ALB")
 S:'$D(%S) %S="" S %SS=%S S:'$D(%L1GET("TO")) %TO="" S:'$D(%FLINS) %FLINS=0 S %FHBR=0
 S:'$D(%LS) %LS=79-$X S:%LS>79 %LS=79 I %LS=0 S %S="" G 13
 S %S=$E(%S,1,%LS)
 S:'$D(%BE) %BE=""
 ;;I '$D(%FLL) R *%C:0 S:$T %FLL="" I %C=13 D KILL K %FLL Q
 D PC I $D(%L1GET) D KILL Q
 ;;S (%NMB,%NMB0)=7
 ;;I $D(%ZMSL("NMB")) S %NMB=%ZMSL("NMB")
 S %BEG=1 G CYC
PC I $D(%INV) W %CLI
 D USE
 I $D(%HBRY) W $$W^%L1C(%S)
 I '$D(%HBRY) W %S
 W $J("",%LS-$L(%S))
 I $G(%BE)'="E" S %pn=+%LS X %levon S %I=1
 E  S %I=$L(%S)+($L(%S)<%LS) s %pn=%LS-$L(%S) X %levon
 Q
 ;
CYC ;
 I $G(%ZMSL)'="",%ZMSL[%S&(%S'=""),$L(%S)=1 S %TO=%S,%S="" G LIMEND
 D USE S %L=$L(%S) S %A=$S(%I>%L:" ",1:$E(%S,%I))
 I $D(%FLL) G CYC01
 I %MOUSE R *%C:0 D STARTVV X:%C<0 "H .1 R *%C:0" I $T K %MS G CYC1
 K %MS ;;I %MOUSE,'$$KB^%L2MOUSE!$D(%L1NMB("HZM"))!$D(%L1NMB("LINE"))!$D(%L1NMB("KB")),'$D(%L1NMB("NO")) D  S:'$D(%C) %C="" S:'$G(%PRKB) %MS="" G:%C="ENTER"!(%C="") 13 G:$A(%C)<65!($A(%C)>90) CYC2 G:$T(@%C)'="" @%C G CYC2
 D ^%L1MSGBR
 I $G(%GET("TIME")) D:'$D(%FLL) RTIME(%GET("TIME")) K %FLL,%GET("TIME") G:$T CYC1 S %C=13,%TO="TIME" G CYC1
 I $G(%ZMSL("TIME")) D:'$D(%FLL) RTIME(%ZMSL("TIME")) K %FLL G:$T CYC1 D:%BEG&$D(%ZMSL("SS"))  S %C=13,%TO="TIME" G CYC1
 .W *27,7
 .D ^%L1CALL(%ZMSL("SS"),$G(%SCRN),$G(%ZMSL("SS","PAR")))
 .S %XX=%ZMSLX+1,%YY=%ZMSLY S:%YY>(23+(%TYPCRT'="PC")) %YY=23+(%TYPCRT'="PC") X %POSIC S $Y=%YY,$X=%XX D PC
CYC0 ;;D ^%L1MSGBR
 S %pn=0
 I $D(%MS) G CYC
 R:'$D(%FLL) *%C:1 E  K %PRKB G CYC
 K %MS
CYC01 K %MS,%ZMSL("NMB") G CYC1
CYC1 ;
 K %FLL ;;I %TYPCRT["VT" K %HBRY
 S %L=$L(%S) S %A=$S(%I>%L:" ",1:$E(%S,%I)) ;***
 G:%C=13!(%C=10) 13
 I %C=46,$D(%HBRY)&(%TYPCRT'["VT") S %C=149
 I %C=38,$D(%ZMSL("bf")),%ZMSL("bf")="&<>SC" R %A D  D PC G 13
 .I $E(%A,1,3)=280 S %S=+$E(%A,4,6),KAM=$E(%A,8,12)*.001 S:KAM<.01 KAM=KAM*1000 Q
 .I $E(%A,1,3)=284!($E(%A,1,3)=220) S %S=+$E(%A,4,7),KAM=$E(%A,8,12)*.001 S:KAM<.01 KAM=KAM*1000 Q
 .S %S=+$E(%A,$L(%A)-7,255)
 I $D(%ZMSL("bf")),%ZMSL("bf")="",%BEG,%C=98!(%C=112)!(%C=66) S %BEG=0 G CYC
 I $D(%ZMSL("bf")),%ZMSL("bf")[";"!(%ZMSL("bf")["s"),%BEG,$C(%C)=";"!($C(%C)="s") S %BEG=0 K %ZMSL("bf","MUST") G:'$D(%ZMSL("NOLS")) CYC R %S D KILL Q
 I $D(%ZMSL("bf")),%ZMSL("bf")'="",%BEG,$P(%ZMSL("bf"),"<>")[$C(%C) S %BEG=0 K %ZMSL("bf","MUST") G:'$D(%ZMSL("NOLS")) CYC R %S D KILL Q
 I $L($P($G(%ZMSL("bf")),"<>")),$D(%ZMSL("bf","MUST")),%ZMSL("bf")'="",$$ABC(%C),$P(%ZMSL("bf"),"<>")'[$C(%C) S %TO="BF",%S="" G 13
 I $L($P($G(%ZMSL("bf")),"<>")),$D(%ZMSL("bf","MUST")),%ZMSL("bf")'="",$$ABC(%C),$P(%ZMSL("bf"),"<>")[$C(%C) S %BEG=0 K %ZMSL("bf","MUST") G CYC
 I $$ABC(%C) K %FLL G SYM
 S %BEG=0
 ;
READ G:%TYPCRT="PC" 27 S ZB="",ZB0=$ZB
 F %JJ=2:1:$L($ZB) S ZB=ZB_$A($E($ZB,%JJ))
 I ZB=9191 R *C1:0 I C1>0 S ZB=ZB_C1
 I $D(%UPRCOD(ZB)),$A($E(ZB0))=27 G @%UPRCOD(ZB)
 I $A($E(ZB0))=27,ZB=113 G ESC
 I $L($ZB)>3,$D(%UPRCOD($ZB))#2,$T(@%UPRCOD($ZB))'="" K %FLL G @%UPRCOD($ZB)
 ;
27 I %C=27 D DELAY R:'$D(%FLL)!'$D(%C1) *%C1:%WAIT G:%C1<0 ESC D  I C,$D(%UPRCOD(C)),$T(@%UPRCOD(C))'="" K %FLL G @%UPRCOD(C)
 .S C="" D DELAY R:'$D(%FLL)!'$D(%C2) *%C2:%WAIT Q:%C2<0  S:%C2>0 C=%C1_%C2 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL)!'$D(%C3) *%C3:%WAIT Q:%C3<0  S:%C3>0 C=C_%C3 Q:$D(%UPRCOD(C))
 .R:'$D(%FLL)!'$D(%C4) *%C4:%WAIT S:%C4>0 C=C_%C4
 I %C=27 G ESC
 I %C=0 S %TO="" D DELAY R:'$D(%FLL) *%C1:%WAIT D DELAY R:'$D(%FLL) *%C2:%WAIT I %C1>0 S %C=$S(%C1<104!(%C1>113&(%C1<121))!(%C1>129):"0"_%C1,1:60+%C1) G:%C>160 SYM
 K %FLL I %C=25 S %TO="END" G 13
 I %C=5 S %TO="DEL" G 13
 I %C=7 S %TO="DBL" G 13
 I %C=13!(%C=10) G 13
 I %C=24 W *27,7 N %XXZMS,%YYZMS S %XXZMS=%ZMSLX,%YYZMS=%ZMSLY D ^%L1CLC S:$D(%L1CLC("F")) %S=$E(%L1CLC,1,%LS) K %GETREST W *27,8 S %XX=%XXZMS,%YY=%YYZMS X %POSIC S $X=%XX,$Y=%YY D PC G CYC
 I $D(%UPRCOD(%C)),$T(@%UPRCOD(%C))'="" G @%UPRCOD(%C)
 G CYC
CYC2 S %C=$S(%C="":13,1:$A(%C)) S:$G(%L1NMB("ALB"))=1 %HBRY="" G CYC1
SYM ;
 ;;S %L1NMB("NO")=""
 D STARTVV
 I $G(%ZMSL)'="",%ZMSL[$C(%C) S %TO=$C(%C) G LIMEND
 I $D(CIST),CIST="" S %TO=$C(%C) G 13
 ;;I $D(%FL),%BE'="E",%I=1,%BEG,'%FLINS S %S="" D PC
 I %BE'="E",%I=1,%BEG,'%FLINS S %S="" D PC
 S %BEG=0
 K %FL W:%I>%LS *7 G:%I>%LS CYC
 ;;S:%C=117&'$G(%FHBR) %C=46
 I $D(CIST),CIST'[$C(%C) W *7 G CYC
 ;;W:$D(%HBRY) %HBR
 I %FLINS D INSERT G:%L=+%LS 13:$D(%ZMSL("LS")),CYC0 S %L=$L(%S)
 I $G(%BE)="*" W "*" G SYM1
 ;;W " %C="_%C_" %HBRY="_$D(%HBRY)
 I $D(%HBRY) D
 .S:%C>95&(%C<123)!(%C=44) %FHBR=1,%FLINS=1
 .S %ergdos=+$G(^ERGDOS)
 .W $$WC^%S2ERG($C(%C),"I")
 ;
 I '$D(%HBRY) W $C(%C)
 ;
SYM1 ;
 S %S=$E(%S,1,%I-1)_$$SMB^%S2ERG(%C)_$E(%S,%I+1,%L)
 S:'%FHBR %I=%I+1
 I %FHBR W *8
 I $L(%S)=+%LS,$D(%ZMSL("LS")) G 13
 G:$D(%GET(1)) 13
 I '$D(%MS) G CYC0
 K %MS G CYC
9 ;
 G:%I>%LS CYC S %J=%I+8 S:%J>%L %J=%L+1 S %pn=%J-%I G:%pn=0 CYC
 X %pravon S %I=%J G CYC0
15 ;
 G:%I=1 CYC S %J=%I-8 S:%J'>0 %J=1 S %pn=%I-%J X %levon S %I=%J G CYC0
TAB I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TAB" G 13
  I $D(CIST),CIST="" S %TO="TAB" G 13
  G 9
TABN I $D(%ZMSF)!$D(%MBG("MOVE")) S %TO="TABN" D DELAY R *%C1:0 G 13
  I $D(CIST),CIST="" S %TO="TAB" G 13
  G 15
23 ;
 W:$D(%HBRY) %HBR D INSERT G CYC0
INSERT W:%L=+%LS *7 Q:%L=+%LS  S %S=$E(%S,1,%I-1)_" "_$E(%S,%I,%L)
 I '$D(%HBRY) W $E(%S,%I,%L+1)
 ;
 I $D(%HBRY) D
 .;;W $TR($TR($E(%S,%I,%L+1),%TES1,%TES2),%TEN,%THB)
 .W $$W^%L1C($E(%S,%I,%L+1))
 ;
 S %pn=$L($E(%S,%I,%L+1)) X %levon
 Q
 ;
 ;
ADD G 23
FINDS S %TO="FINDS" D DELAY R *%C1:0 G 13
CHISTE S %TO="F2" D DELAY R *%C1:0 G 13
CHISTS ;
 I $D(%ZMSF) S %TO="F1" D DELAY R *%C1:0 G 13
 G:%I>%L CYC S %S=$E(%S,1,%I-1) W $J("",%L-%I+1) S %pn=%L-%I+1
 X %levon G CYC0
INS  I $D(%ZMSF) S %TO="INS" D DELAY R *%C1:0 G 13
 S %FLINS='%FLINS G CYC0
SBROS ;
 I $D(%ZMSF) S %TO="F3" D DELAY R *%C1:0 G 13
 S %S=%SS S %pn=%I-1 X %levon S %I=1 G %ZMSL
IND S %TO="F4" D DELAY R *%C1:0 G 13
PRAVO ;
 I $D(CIST),CIST="" S %TO="RIGHT" G 13
 I $D(%ZMSF("LR")) S %TO="RIGHT" G 13
 I %LS=1 S %TO=$S(%XMSG(0)>1:"",1:"END") G 13
 G:%I>%LS CYC0 W %pravo S %S=$E(%S,1,%I-1)_%A_$E(%S,%I+1,%L),%I=%I+1
 ;;G:'$D(%MS) CYC0 K %MS G CYC
 G CYC0
LEVO ;
 I $D(CIST),CIST="" S %TO="LEFT" G 13
 I $D(%ZMSF("LR")) S %TO="LEFT" G 13
 I %LS=1,%I=1 S %TO=$S(%XMSG(0)>1:"END",1:"") G 13
 G:%I=1 CYC0 W %levo S %I=%I-1
 ;;G:'$D(%MS) CYC0 K %MS G CYC
 G CYC0
VNIZE ;
 I $G(^zms($I))?1"^"."%"1U.E W *27,7 K:%TYPCRT="PC" ^zms($P,"SCRN") D ^%L1ZMST S %XX=%ZMSLX,%YY=%ZMSLY X %POSIC D PC G CYC
 G CYC
PRSC ;
 D ^%L1PRSC
 G CYC
ENTER ;
13 ;
 I %TO="",$D(%ZMSL("bf")),%ZMSL("bf")="",$E(%S,$L(%S))="f"!($E(%S,$L(%S))="F") S %S=$E(%S,1,$L(%S)-1)
 I %TO="",$D(%ZMSL("bf")),$P(%ZMSL("bf"),"<>",2)'="",$P(%ZMSL("bf"),"<>",2)[$E(%S,$L(%S)) S %S=$E(%S,1,$L(%S)-1)
 ;;I %ENGLISH S %S=$$CAPIT(%S)
 ;;N %JJ,%A F %JJ=1:1:20 R *%A:0
 D KILL
 N %S0 S %S0="" 
 F %JJ=1:1:$L(%S) D
 .S %S0=%S0_$S($A(%S,%JJ)<128:$E(%S,%JJ),1:$C($A(%S,%JJ)-32))
 S %S=%S0
 D PUT
 X %XCL I $D(%ECHO) U $P:(ECHO:WRAP:WIDTH=80)
 K %L1NMB Q
KILL K %C,%LS,CIST,%I,%L,%J,%SS,%FLINS,%FLL,%BE,%ZMSL,%ZMSF K %GET("TIME")
 Q
BK G 13
LIMEND K %ZMSL G 13
SHIFT I '$D(%L1NMB("ALB")) S %L1NMB("ALB")=2,(%NMB,%NMB0)=12 G SHIFT1
 I $G(%L1NMB("ALB"))=2 S %L1NMB("ALB")=1,%HBRY="",(%NMB,%NMB0)=12 G SHIFT1
 I $G(%L1NMB("ALB"))=1 K %L1NMB("ALB") S (%NMB,%NMB0)=7 G SHIFT1
SHIFT1 D PUT W *27,8 X:%I>1 "S %pn=%I-1 X %levon" D  G CYC
 .N %BE S %BE="E" D PC
PUT I %MOUSE,$D(screen)!$D(^P1VIDEO($$POS^%L2MOUSE)),$D(%L1NMB("X0")) X %chista D PUT^%VIDEO("screen",%L1NMB("X0"),%L1NMB("Y0"),%L1NMB("X2"),%L1NMB("Y2"),2)
 Q
VVERX ;
 S %TO="UP" G 13
HOME I $D(%ZMSF) S %TO="HOME" D DELAY R *%C1:0 G 13
 I %I>1 S %pn=%I-1 X %levon S %I=1
 G CYC
VNIZ ;
 S %TO="DW" G 13
ENDS I $D(%ZMSF) S %TO="ENDS" D DELAY R *%C1:0 G 13
 I %I'>%L S %pn=%L-%I+1 X %pravon S %I=%L+1
 G:'$D(%MS) CYC0 K %MS G CYC
MOD S %TO="DEL" D DELAY R *C1:0 G 13
PGUP S %TO="PGUP" D DELAY R *%C1:0 G 13
PGDN S %TO="PGDW" D DELAY R *%C1:0 G 13
PGLN S %TO="PGLN" D DELAY R *%C1:0 G 13
HELP S %TO="HELP" D DELAY R *%C1:0 G 13
PGRG S %TO="PGRG" D DELAY R *%C1:0 G 13
BEGF S %TO="BEGF" D DELAY R *%C1:0 G 13
ENDF S %TO="ENDF" D DELAY R *%C1:0
 I $D(^r($J)),$G(%SCRN)["P1HZ" D 1^P1POP ;-- PTICHAT MEGIRA
 G 13
FIND S %TO="F8" G 13
COR S %TO="F7" G 13
SAVE S %TO="F9" G 13
REST S %TO="F10" G 13
ADDL ;
 I $D(%L1SF),$D(%SCRN) N %FSTY S %FSTY=FSTY N FSTY,FSTYOLD S (FSTY,FSTYOLD)=20-%FSTY D
 .N (FSTY,FSTYOLD,%UPRCOD,%XMSGV,%XMSGN,%XMSG,%SCRN,%PAR,NM) D ^%L1C S %NM=NM N NM S NM=%NM,%ZMZT=$ZT D  S $ZT=%ZMZT S NM=%NM D VSVALL^%L1SF,PODVAL^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ
 ..S NM=.9 D PDV1^%L1SF
 ..F  K NM1 S NM=$O(^SCR(%SCRN,%PAR,NM)) Q:NM'>0  D  Q:NM=""  D:$G(NM1)="A" VSVP^%L1SF,VSVALL^%L1SF X:$D(VSVI) "K VSVI D VSV^%L1SF" S:$D(NM1) NM=NM-1 I $G(%TO)="END" S NM=$O(^SCR(%SCRN,%PAR,NM),-1) Q:NM=""  S %TO="" I NM>0 S NM=$O(^SCR(%SCRN,%PAR,NM),-1)
 ...D PDV1^%L1SF S %L1GET="",HZG=1 D ^%L1SFZ K %L1GET S HZG=0 D ^%L1SFZ
 S %TO="F5" G 13
DELL S %TO="F6" G 13
MVUP S %TO="MVUP" G 13
MVDW S %TO="MVDW" G 13
ESC S %TO="END" G 13
DEL ;
 I $D(CIST),CIST="" S %TO="DEL" D DELAY R *%C1:0 G 13
 G:%I>%L A8 S %S=$E(%S,1,%I-1)_$E(%S,%I+1,%L) W:$D(%HBRY) %HBR W $E(%S,%I,%L-1)_" "
 S %pn=%L-%I+1 x %levon G:'$D(%MS) CYC0 K %MS G CYC
A8 G:%L=0 CYC S %S=$E(%S,1,%I-2),%I=%I-1 W %levo," ",%levo G CYC0
 Q
DELAY I %TYPCRT="PC1" F %II=1:1:6000
 Q
 ;MDRG S %FHBR='%FHBR I %FHBR S %FLINS=1 W *27,7 S %SAY="HEBREW TEXT" X %XMSGV W *27,8 S %HBRY="" G CYC
 ;W *27,7 S %SAY="ENGLISH TEXT" X %XMSGV W *27,8 G CYC
MDRG S %FHBR='%FHBR K %HBRY I %FHBR S %FLINS=1 S %HBRY="" G CYC0
 G CYC0
HBR I '$D(%HBRY) S %HBRY="" D BEGS W $TR($TR(%S,%TES1,%TES2),%TEN,%THB) G HBR1
 N %HBRY W %ENG D BEGS W %S
HBR1 S %pn=$L(%S)-%I+1 S:%pn<0 %pn=0 X:%pn>0 %levon G CYC0
BEGS S %pn=%I-1 X:%pn>0 %levon Q
HBEN I $D(%HBRY) S %S=$E(%S,1,%I-1)_$TR($E(%S,%I,255),%THB,%TEN) G HBR
 I '$D(%HBRY) S %S=$E(%S,1,%I-1)_$TR($TR($E(%S,%I,255),%TES1,%TES2),%TEN,%THB) G HBR
CAPIT(%ST) N J,%SMB
 N J
 F J=1:1:$L(%ST) S %SMB=$E(%ST,J) D
 .I $A(%SMB)<123,$A(%SMB)>95 S $E(%ST,J)=$C($A(%SMB)-32)
 Q %ST
USE ;
 ;;I %TYPCRT="PC" U $P:(NOWRAP:NOECHO:NOESC) Q
 U $P:(NOWRAP:NOECHO:ESC)
 Q
RTIME(%TM) ;
 N %JJ F %JJ=1:1:%TM D ^%L1MSGBR R *%C:1 Q:$T
 Q
ABC(SMB) ;
 I SMB>31&(SMB<127) Q 1
 I SMB>127&(SMB<155) Q 1
 Q 0
STARTVV Q:'$D(%FRVV)
 S %STARTVV=$P($H,",",2) K %FRVV
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

A2HZGT
A2HZGT(GLOB,PRTOT) ;     [ 12.08.11 17:55 ] [ 08.08.11 18:20 ] [ 26.10.05 14:39 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,GLOB,INDEX,A2HZGT,PRTOT,AUTOSHVA) D ^%L1C
 S %SCRN="SHVA"
 K ^TEMP($P,"S")
 S (SHHB,SHHK,SIHB,SIHK,SVHB,SVHK,SDHB,SDHK,SAHB,SAHK,SJHB,SJHK,SLHB,SLHK)=0
 S (SHZB,SHZK,SIZB,SIZK,SVZB,SVZK,SDZB,SDZK,SAZB,SAZK,SJZB,SJZK,SLZB,SLZK)=0
 I GLOB["^TRANL(" D
 .S ASM=$P($G(@GLOB),"^",10)
 .S KVZ=$P($G(@GLOB),"^",8)
 .S ZMAN=$P($G(@GLOB),"^",11)
 S N="",I=0 F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLOB@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1)) S SID=$E(A,1,6)
 ..S CARD=$P($E(A,32,50),"="),MG=$E(A,32,68)
 ..I (($E(MG,1,2)="12")!($E(MG,1,2)="20")!($E(MG,1,2)="31")),$E(MG,18)="=" S CARD=$E(MG,37)_$E(MG,20,27) ;****10.04
 ..S CARD=$E(CARD,$L(CARD)-15,255)
 ..S HEV=$E(A,69)
 ..S HEV1=$S(HEV=1:"yi",HEV=2:"ie",HEV=3:"ic",HEV=4:"n`",HEV=5:"JC",HEV=6:"nl",1:"")
 ..S SUM=$J($TR($E(A,12,19)," ","")*.01,2,2)
 ..S KOHAV=$J($TR($E(A,20,27)," ","")*.01,2,2)
 ..S TS=+$TR($E(A,114,116)," ","") S:'TS TS=""
 ..S SUM1=+$TR($E(A,98,105)," ","") S:'SUM1 SUM1=""
 ..S SUM2=+$TR($E(A,106,113)," ","") S:'SUM2 SUM2=""
 ..S ISKA=$E(A,7,8)
 ..I ISKA<50 S SHHB=SHHB+SUM,SHHK=SHHK+KOHAV D
 ...I HEV=1 S SIHB=SIHB+SUM,SIHK=SIHK+KOHAV
 ...I HEV=2 S SVHB=SVHB+SUM,SVHK=SVHK+KOHAV
 ...I HEV=3 S SDHB=SDHB+SUM,SDHK=SDHK+KOHAV
 ...I HEV=4 S SAHB=SAHB+SUM,SAHK=SAHK+KOHAV
 ...I HEV=5 S SJHB=SJHB+SUM,SJHK=SJHK+KOHAV
 ...I HEV=6 S SLHB=SLHB+SUM,SLHK=SLHK+KOHAV
 ..I ISKA>50 S SHZB=SHZB+SUM,SHZK=SHZK+KOHAV D
 ...I HEV=1 S SIZB=SIZB+SUM,SIZK=SIZK+KOHAV
 ...I HEV=2 S SVZB=SVZB+SUM,SVZK=SVZK+KOHAV
 ...I HEV=3 S SDZB=SDZB+SUM,SDZK=SDZK+KOHAV
 ...I HEV=4 S SAZB=SAZB+SUM,SAZK=SAZK+KOHAV
 ...I HEV=5 S SJZB=SJZB+SUM,SJZK=SJZK+KOHAV
 ...I HEV=6 S SLZB=SLZB+SUM,SLZK=SLZK+KOHAV
 ..S MB=$E(A,28) S MB1=$S(MB=1:"y",MB=2:"c",MB=4:"cv",MB=5:"nv",1:"  ")
 ..S ISKA1=$S(ISKA="00":"meqg",ISKA="01":"bx eg",ISKA="02":"yn eg",ISKA="03":"ln eg",ISKA="51":"bx kf",ISKA="52":"hia",ISKA=53:"yn kf",1:"")
 ..S ISKA1=$S($E(A,9,10)="50":"lh",$E(A,9,10)="51":"ag",1:"")_" "_ISKA1
 ..S I=I+1,^TEMP($P,"S",I)=SID_"\"_CARD_"\"_HEV1_"\"_SUM_"\"_KOHAV_"\"_ISKA1_"\"_$E(A,29)_"\"_TS_"\"_(SUM1*.01)_"\"_(SUM2*.01)_"\"_MB1
 ;
 I $D(A2HZGT("NODISP")) D  Q
 .S ^TEMP($P,"S","H")=SHHB_"^"_SHHK_"^"_SIHB_"^"_SIHK_"^"_SVHB_"^"_SVHK_"^"_SDHB_"^"_SDHK_"^"_SAHB_"^"_SAHK_"^"_SJHB_"^"_SJHK_"^"_SLHB_"^"_SLHK
 .S ^TEMP($P,"S","Z")=SHZB_"^"_SHZK_"^"_SIZB_"^"_SIZK_"^"_SVZB_"^"_SVZK_"^"_SDZB_"^"_SDZK_"^"_SAZB_"^"_SAZK_"^"_SJZB_"^"_SJZK_"^"_SLZB_"^"_SLZK
 ;
 S %SC("MIUN")=""
 I '$G(PRTOT) D ^%L1SC
 S %SCRN="SHVA1" D A^%L1SC
 I $G(AUTOSHVA) S %S=99
 I '$G(AUTOSHVA) S %GET="99 - qitcdl" D N^%L1GET
 I %S=99 S %SCRN="SHVA" D ^%L1SCPC S %SCRN="SHVA1",%L1SCPC(1)="",%L1SCPC("NODT")="" D ^%L1SCPC
 K ^TEMP($P,"S")
 Q
CARD ;
 I CARD'=%MOLD S %SC("ER")=1 Q
 Q

INSES
INSES ; [ 002/009/00  5:39 PM ]
 ;I $G(^PLUK)["MLY" S %SAY=" i`ln zkxrna xcben wqrd oeiv " X %XMSGV(1) Q
 N %SCRN,NAME,TEL,KTOV,MURSH,%BS,YES,%FNAME,%GET
 S %SCRN="INSES",FRST=1
 S NAME=$G(^PL("ESEK",1))
 S KTOV=$G(^PL("ESEK",2))
 S TEL=$G(^PL("ESEK",3))
 S MURSH=$G(^PL("ESEK",4))
 S SNIF=$G(^PL("SNIF"))
 S LOGO=$G(^PL("LOGO"))
VV S %SC("A")="" D ^%L1SC
Z S %GETIN=2,%GET="0 - rval `l ,2 - rval ,1 - owzl " D N^%L1GET
 I %S=1 G VV
 I %S=0 Q
 I %S'=2 W *7 G Z
 K ^PL("ESEK")
 S ^PL("ESEK",1)=NAME
 S ^PL("ESEK",2)=KTOV
 S ^PL("ESEK",3)=TEL
 S ^PL("ESEK",4)=MURSH
 S ^PL("SNIF")=SNIF
 S ^PL("LOGO")=LOGO
 Q

INSHSV
INSHSV ;   [ 09.01.02  5:26 PM ] [ 25.10.00  5:01 PM ] [ 003/31/00  1:25 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 F I="HKNIJOT","MAMT","HMHIROT","MAMI","HNKMM","MZMK","TIP","CHKK","CHKKM","ZK","ISRK","ISR","VISAK","VISA","DINERSK","DINERS","AMEXPK","AMEXP","JCBK","JCB","ALPHAK","ALPHA","BANK","KUPA","PATH" D
 .S @I=$G(^PL("HSV",I))
 S A=$G(^PL("HSV"))
 S FORMAT=$S(A="":1,A=90:2,A="FID":3,1:1)
INP S %SCRN="HSV",%SC("A")="" D ^%L1SC
Z S %GETIN=2,%GET="0 - rval `l, 2 - rval, 1 - owzl" D N^%L1GET
 I %S=1 G INP
 I %S=0 G 1
 I "012"'[%S G Z
 F I="HKNIJOT","MAMT","HMHIROT","MAMI","HNKMM","MZMK","TIP","CHKK","CHKKM","ZK","ISRK","ISR","VISAK","VISA","DINERSK","DINERS","AMEXPK","AMEXP","JCBK","JCB","ALPHAK","ALPHA","BANK","KUPA","PATH" D
 .I $L($G(@I)) S ^PL("HSV",I)=@I
 .E  K ^PL("HSV",I)
 S ^PL("HSV")=$S(FORMAT=2:90,FORMAT=3:"FID",1:"")
 I $G(^PL("MATB")) D ^INSHSVMB
1 F I="HMK","HML","CB","HMS","HMSB","TSH","HFMZ","HFTP","HFCH","HFIJ","HFVJ","HFDJ","HFAEJ","HFIA","HFVA","HFDA","HFAEA" D
 .S @I=$G(^PL("HSV","TN",I))
INP1 S %SCRN="HSV1",%SC("A")="" D ^%L1SC
Z1 S %GETIN=2,%GET="0 - rval `l, 2 - rval, 1 - owzl" D N^%L1GET
 I %S=1 G INP1
 I %S=0 Q
 I "012"'[%S G Z
 F I="HMK","HML","CB","HMS","HMSB","TSH","HFMZ","HFTP","HFCH","HFIJ","HFVJ","HFDJ","HFAEJ","HFIA","HFVA","HFDA","HFAEA","HFJCA","HFALA" D
 .I $L($G(@I)) S ^PL("HSV","TN",I)=@I
 .E  K ^PL("HSV","TN",I)
2 F I="NOHMK","NOHFK","NOMLY" D
 .S @I='$G(^PL("HSV",I))
 S KPH=$G(^PL("HSV","KPH"))
INP2 S %SCRN="HSV2",%SC("A")="" D ^%L1SC
Z2 S %GETIN=2,%GET="0 - rval `l, 2 - rval, 1 - owzl" D N^%L1GET
 I %S=1 G INP2
 I %S=0 Q
 I "012"'[%S G Z
 F I="NOHMK","NOHFK","NOMLY" D
 .I $L(@I) S ^PL("HSV",I)='(@I)
 .E  K ^PL("HSV",I)
 S ^PL("HSV","KPH")=KPH
 I '$G(^PL("HSV","NOHFK")) D
 .S %GET=" 0 - dtewdn zexiyi , 1 - dcwtd 'z itl dcwtd++18,70,HH#"_+$G(^PL("HSV","HFKT"))_"++1,E,I"
 .D ^%L1GET Q:%S=""!(%TO="END")
 .S ^PL("HSV","HFKT")=%S
 I '$G(^PL("HSV","NOMLY")) D ^INSHSVML
 Q

INSHSVMB
INSHSVMB ; [ 003/31/00  1:23 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SCRN="HSVMTB"
 K ^TEMP($P,"MB")
 S N="",I=0 F  S N=$O(^P1SUGM(N)) Q:N=""  I N?1N.N D
 .S I=I+1
 .S ^TEMP($P,"MB",I)=N_"\"_$P($G(^P1SUGM(N)),"\",2)_"\"_$G(^PL("HSV","MTB",N))
 S ^SCR(%SCRN,"G","MAX")=I
SC S %SCRN="HSVMTB" D ^%L1SC
 D IS3^%L1GET I %S=0 G END
 I %S=1 G SC
 K ^PL("HSV","MTB")
 F I=1:1 Q:'$D(^TEMP($P,"MB",I))  D
 .S A=$G(^(I)) Q:A?.P
 .I $P(A,"\") S ^PL("HSV","MTB",$P(A,"\"))=$P(A,"\",3)
END K ^TEMP($P,"MB")
 Q

INSHSVML
INSHSVML ; [ 25.10.00  5:19 PM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 K ^TEMPH($P)
 S N="",I=0 F  S N=$O(^PL("HSV","MLY",N)) Q:N=""  D
 .S A=$G(^(N))
 .S I=I+1,^TEMPH($P,I)=N_"\"_A
SC S %SCRN="INSHSVML" D ^%L1SC
 D IS3^%L1GET
 I %S=1 G SC
 I %S=0 G END
 K ^PL("HSV","MLY")
 F I=1:1 Q:'$D(^TEMPH($P,I))  D
 .S A=$G(^(I)) Q:$P(A,"\")=""
 .S ^PL("HSV","MLY",$P(A,"\"))=$P(A,"\",2,26)
END K ^TEMPH($P) Q

INSTALL
INSTALL ;NEW PROGRAM [ 09/12/91  3:13 PM ]
 ; TO COPY FIRST : SCRX,SCR1,MSG,REP,LPT
 ; TO INSERT MIDA TABLE
 S ^YZRN(99999)="zetewn d`ved"
 S ^YZRN(99999,4)="*t"
 S ^YZRN(99999,10)="*l*****"
 S ^HBB=$C(27,41,74),^ENN=$C(27,41,76)
 S ^UCI=$P($ZUCI(0),",",1)
 S ^DAT="01/01/91"
 S ^STAT("PREPRT")=1
 S ^E="W ^ENN X ^%E"
 S ^SIS(2)=911658
 F I=1,10,15,16,17 S ^CRT(I)="PC",^SHANA(I)=91
 F I=4:1:9,11:1:14 S ^CRT(I)="VT",^SHANA(I)=91
 S ^STAT("TYKUCI")=^UCI
 R !,"ENTER CURRNT SHANA:",SHANA S ^STAT("SHANA")=SHANA
 ;R !,"ENTER NAME:",NAME
 ;R !,"ENTER PATH TO DOS SYSTEM:",PATH
 S ^DEV(1,"LP")=3 F I=4:1:20,51:1:53 S ^DEV(I,"LP")=I
 W ^HBB
NAME R !,"ENTER USER NAME:",USER
 R !,"USER NAME OK (Y/N) ? >",OK I OK'="Y" G NAME
 S ^BA(0)=50,^BA(50)=USER
 S ^YZRN("1000")=USER
 S ^YZRN("1000",4)="*t"
 S ^YZRN("1000",10)="*k*50*1***"
 S ^TSTR(1)=" iy`x",^STR(50)=USER
 S ^STAT("MLY","EM","STR")=^BA(0)
 S ^STAT("MAM")=18
 S ^STAT("LASTPRT")=11100000
 S ^STAT("MLY","EM","MRKZ")=1000
 S ^STAT("MLY","EM","TSTR")=1
 S ^STAT("MLY","EM","COMTYPE")=1
 S ^STAT("MLY","EM","TYPE")=1
 S ^STAT("MLY","EM","UPDATE")=1
 S ^STAT("MLY","EM","PRIORITY")=1
 S ^STAT("MMBUCI")=^UCI
 S ^STAT("NAME")=USER
 K ^MLY
 S ^MLY(91,50,1)=0,^(2)=0,^(0)=0
 S A=" ;"_$ZBN(^MLY)
 X "ZL TVEX ZI A:STREV ZS  "
 S PATH=$G(^SCRX(88,6,"FLD"))
 I PATH="" Q
 S X=$$^%L1ZOS(10,PATH_"#123.HW") I X>0 W *7,"ERROR IN SYSTEM" K ^SCRX(88,6,"FLD") R ANS G ^RUNT Q
 O 51:(PATH_"#123.HW":"M"::::$C(13,10))
 U 51 W $C(1,2,3,4,5,6),!!
 C 51
ASK5 ;S %MSG=" zxeywzd oeayg >" D MSG^SD R ANS I '(ANS?3A) W *7 G ASK5
 R !,"DO NOT FORGET TO SET PROTECTION FOR ^SYS IN MGR TO ""RWD"" <RET>",ANS
 R !,"DO NOT FORGET TO SET START ""BA"" NAME TO ""M"" IN MGR <RET>",ANS
HEM4 S %MSG=" <RET> dxcbd jqnn ligzdl `p - dceara ligzdl ozip" D MSG^SD R ANS

INSTPK
INSTPK ;  [ 26.10.09 12:45 ] [ 05.09.07 16:22 ] [ 03.10.06 17:03 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
 K  D ^%L1C
 X %chista K %Q N %ECHO D ^PLUINP
 N %ECHO K PORT,KUPA,%MBG,^MBG($P)
 S N="" F  S N=$O(^PLUK(N)) Q:N=""  I 'N S N1=+$G(@$$^W4DEVI@(N)) M ^PLUK(N1)=^PLUK(N)
 S I=0 S N0=""
 F  S N=$O(^PLUK(N)) Q:N=""  D
 .S I=I+1
 .S PORT=N
 .S KUPA=^PLUK(N),MDP=$G(^PLUK(N,"LP")),SUGM=$G(^PLUK(N,"LP","SUG"))
 .S HSB=+$G(^PLUK(N,"HSB"))
 .S BIT=+$G(^PLUK(N,"BIT"))
 .S HNH=+$G(^PLUK(N,"HNH"))
 .S DMSH=+$G(^PLUK(N,"NOCHK"))
 .S MZM=+$G(^PLUK(N,"MZM"))
 .S TL='$G(^PLUK(N,"NOTL"))
 .S MISHKAL=$G(^PLUK(N,"MSKL"))
 .S SUGMSK=$G(^PLUK(N,"MSKL","SUG"))
 .S MKBL=$G(^P1PRM("MKBL",N)),MKBL1="" I MKBL S MKBL1=$$^P1NAME(MKBL)
 .S ^MBG($P,I)=PORT_"\"_KUPA_"\"_MDP_"\"_SUGM
 .S ^MBG($P,I)=^MBG($P,I)_"\"_$S(SUGM:$P($T(@("MDP"_SUGM)),";",2),1:"")
 .S ^MBG($P,I)=^MBG($P,I)_"\"_HSB_"\"_BIT_"\"_HNH_"\"_DMSH_"\"_MZM_"\"_TL_"\"_MKBL_"\"_MISHKAL_"\"_SUGMSK
 K PORT,KUPA S %SCNC=1
 S %SCRN="INSTPK" D ^%L1SC D IS2^%L1GET G:'YES END
 K ^PLUK0 S MAC1="^PLUK",MAC2="^PLUK0" D ^%S1GC1
 S PLUK=$G(^PLUK) K ^PLUK,^P1PRM("MKBL")
 F I=1:1 Q:'$D(^MBG($P,I))  D G^%L1SCV(%SCRN,^MBG($P,I)) D
 .I PORT?1N.N,KUPA?."-"1N.N D
 ..S PORTD=PORT
 ..S ^PLUK(PORTD)=KUPA
 ..I MDP S ^PLUK(PORTD,"LP")=MDP I SUGM S ^PLUK(PORTD,"LP","SUG")=SUGM
 ..K:'HSB ^PLUK(PORTD,"HSB") I HSB S ^PLUK(PORTD,"HSB")=HSB
 ..K:'BIT ^PLUK(PORTD,"BIT") I BIT S ^PLUK(PORTD,"BIT")=BIT
 ..K:'HNH ^PLUK(PORTD,"HNH") I HNH S ^PLUK(PORTD,"HNH")=HNH
 ..K:'DMSH ^PLUK(PORTD,"NOCHK") I DMSH S ^PLUK(PORTD,"NOCHK")=HNH
 ..K:'MZM ^PLUK(PORTD,"MZM") I MZM S ^PLUK(PORTD,"MZM")=MZM
 ..K:'MISHKAL ^PLUK(PORTD,"MSKL")
 ..I MISHKAL S ^PLUK(PORTD,"MSKL")=MISHKAL,^PLUK(PORTD,"MSKL","SUG")=SUGMSK
 ..S ^PLUK(PORTD,"NOTL")='TL
 ..I MKBL'="" S ^P1PRM("MKBL",PORTD)=MKBL
 S ^PLUK=PLUK
 K PORT,PORTD,KUPA
END ;
 Q
ER S %SAY="d`iby" X %XMSGV H 2 Q
 ;
PORT0(PORT,SM) ;
 S %SAY=""
 I $G(PORT) S %SAY=" "_$J($$FUNC^%UCASE($G(@$$^W4DEV@(PORT))),20)_" ++22,"_SM_",HH,I" I SM>70 S %SAY=%SAY_",,C"
 X %XMSG
 Q
PORT(PORT) ;
 Q:$G(PORT)=""
 I %OLDTO="F9" D ^%L1CALL("^%L1DEV",%SCRN,"") S %SC("ST")=1 Q
 I PORT<0 Q
 I $D(@$$^W4DEV@(PORT)) Q
 ;N N,OK S N="",OK=0 F  S N=$O(^devi3(N)) Q:N=""  I ^(N)=PORT S OK=1 Q
 ;I 'OK S %SC("ER")=1 Q
 I PORT<1,PORT'=-1 S %SC("ER")=1 Q
 Q
SUGMH ;
 N I S %SAY="" F I=1:1 Q:$T(@("MDP"_I))=""  S %SAY=%SAY_" "_I_"-"_$P($T(@("MDP"_I)),";",2)_" "
 X %XMSGN Q
SUGM ;
 S SUGM1=$P($T(@("MDP"_SUGM)),";",2)
 I SUGM1="" S %SC("ER")=1
 Q
MISHKAL ;
 I 'MISHKAL S $P(%MBG("OU"),"\",14)=1 Q
 I MISHKAL<4 S %SC("ER")=1
 Q
MKBL ;
 I $G(MKBL)="" S %SAY=$J("",20)_"++23,50,HH" X %XMSG Q
 S %SAY=$$HBR^%L1FRM($$^P1NAME(MKBL),20)_"++23,50,HH,I" X %XMSG Q
 Q
MDP1 ;CIT 3530;30;31;18;7;40;
MDP2 ;STAR-24;14;20;27,52/27,53;24;
MDP3 ;CIT 3540;
MDP4 ;SENOR;
MDP5 ;CIT 90/240;
MDP6 ;CBM-230;
MDP7 ;HP

KILLZ
KILLZ ;          [ 19.02.25 18:27 ] [ 09.11.23 11:37 ] [ 19.04.23 15:21 ] 
 X %chista
BG K  D ^%L1C U $P:(CENABLE:CTRAP=$C(3))
 K MM S MM(0)=" dycg zkxrn zpkd "
 S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4),MM2(J)=$P(T,";",5)
 S MAC="MM" D ^%L2MENU
 I %I=1 Q
 D @MM1(%I) G BG
MENU ;
 ;1; d ` i v i
 ;1; dycg zkxrn znwd;1;
 ;1; "miwgyn" zwign;2;
 ;1; oyi hixtz zwign;4;
 ;1; mieqn jix`z cr zerepz zwign;5;
 ;1; EXCEL-n mihixt zxard;3
 Q  ;
1 ;
  F I=1:1:20 W *7
  S %SAY=" !!! miwgnp mivawd lk dnwd zlert zeawra ++8,60,HH,I" X %XMSG
  D IS^%L1GET Q:'YES
  S NOKILL=",KILLZ,KL,KOD,LOOP,L1TIP,LEV,LEVSUGMS,LKH,P1KDM,P1KDMI"
  S NOKILL=NOKILL_",SCR,SCRL,SHP,TABLs,rep,P1MDPS,P1MDPSi,P1CODTS,P1STREET,ZT,ZB"
  S NOKILL=NOKILL_",UCI,UCIESI,UCI0,dev,devi,devi2,devi3"
  S NOKILL=NOKILL_",W4VWGR,W4OPT,W4PAY,W4PAYS,W4ASK,W4REP,W4REPSCR,W4SP,W4VDHB,W1REP,W1DICT,WO1VM"
  S NOKILL=NOKILL_",W3KKIND,W3MKR,W3SUGTS,W3COND,W3KASHER,W3MAIN,W3PRICE,W4ABS"
  S NOKILL=NOKILL_",W4CPERR,W4EZDI,W4SHP,W4SCR,W4TAB,W4ZOOM"
  ;
  S N1="%AAA" F  S N=$O(@("^"_N1)) Q:N=""  S N1=$E(N,2,30) I (","_NOKILL_",")'[(","_N1_","),$E(N,1,3)'="VES",$E(N,1,3)'="DBo" K @("^"_N1) D HZG
  S N=999 F  S N=$O(^LKH(N)) Q:N=""  K ^(N)
  D KILLDOS
  D ^%L1TSTCH
ES  ;;D ^INSES
  S %GETIN=100
  S %GET=" zepgley zenk #3" D N^%L1GET I %S=""!(%TO="END") G ES
  F I=1:1:%S S ^LKH(I)=I_" ogley"
  D IN
  D ^P1SISDEF
  D 1^P1PRMS
  S %GET="<ENTER> ywd . <DONE>" D N^%L1GET
  Q
2 ;
  S PATH=$G(^PATH) ;;D READ1^A2BLACK("START")
  G Z02
  I $D(P1NEWYR) G Z02
  I $D(^START) S END=0 D  Q:END
Z01  .x %chista
  .S %GET=": dnqiq yiwdl `p++10,55,HH#++6,E,I" D ^%L1GET I %S="" S END=1 S %GET="<ENTER> ugl ! dlhea dlert " D N^%L1GET Q
  .I $E(^START,1,7)\(20-$E($$YYMM^%L1DC(+$H),3,4))'=%S S %SAY=" ! dieby dnqiq " X %XMSGV(1) G Z01
  F I=1:1:20 W *7
  S %SAY=" !!! miwgnp minekiqe , `ay , dtew zerepzd lk z`fd zlert zeawra ++8,70,HH,I" X %XMSG
  D IS^%L1GET Q:'YES
  ;
Z02 D NOKILL
  I $D(P1NEWYR) S NOKILL=NOKILL_",FILE,FILE1,P1HZMN,"
  ;
  I '$D(P1NEWYR) D
  .S %Q("Z")=" zepnfd onei lhal",%Q("X")=30,%Q("Y")=12 D ^%S2ASK I 'YES S NOKILL=NOKILL_"P1HZMN,"
  .S %Q("Z")=" micaer ly d`ivie drbd uaew lhal",%Q("X")=30,%Q("Y")=14 D ^%S2ASK I 'YES S NOKILL=NOKILL_"FILE,FILE1,"
  ;
  S N1="A" F  S N=$O(@("^"_N1)) Q:N=""  S N1=$E(N,2,20) I (","_NOKILL_",")'[(","_N1_","),$E(N1,1,3)'="VES",$E(N1,1,3)'="DBo" K @("^"_N1) D HZG
  ;
  S N="" F  S N=$O(^LKH(N)) Q:N=""  S $P(^LKH(N,2),"*",4)=""
  ;
  I '$D(P1NEWYR) D
  .D KILLDOS
  S %GET="<ENTER> ywd . <DONE>" D N^%L1GET
  Q
HZG ;
 U 0 W !?10,"^"_N1_$J("",10-$L(N))_" - DELETED"
 Q
KILLDOS ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 Q:'$D(^PL("PATHM"))
 S %X=^PL("PATHM")
 K ^TEMPo($P) S %O13Q="",%TYPCRT="" D O13M^%L1OS D ^%L1C
 S %GET=" 99 - lhal " D N^%L1GET Q:%S'=99
 S %X=^PL("PATHM")
 S %L1OS("NOVIEW")=""
 K ^TEMPo($P) D O13M^%L1OS
 F I=1:1 Q:'$D(^TEMPo($P,I))  S A=^(I) S NM=$$SPA^%L1FRM($E(A,1,8))_"."_$$SPA^%L1FRM($E(A,11,13)) S B=$$^%L1ZOS(2,^PL("PATHM")_NM)
 K ^TEMPo($P)
 Q
3 D ^P1PAREX Q
4 X %chista
 K %Q S %Q("Z")=" (d)geza (d)z` m`d !!! wgni hixtzd lk "
 S %Q("X")=20,%Q("Y")=10
 D ^%S2ASK Q:'YES
 K %Q S %Q("Z")="DOS-a oyid hixtz xenyl "
 S %Q("X")=20,%Q("Y")=12
 D ^%S2ASK I YES D SVPAR
 F I=1:1 Q:'$D(^SHP("%GSPAR",I))  D
 .I ^(I)?1U.UN K @("^"_^(I))
 S %GET="<DONE>" D N^%L1GET
 Q
5 D ^P1KILLD
 Q
SVPAR ;
 U 0:(WRAP:ECHO)
 S %L1GS("SET")="PAR"
 D ^%L1GS
 U 0:(NOWRAP:NOECHO)
 Q
 ;
IN ;
  X %chista
  D ^INSES Q:$G(^PL("ESEK",1))?.P
  X %chista
  N MSDNM,DFWEB,DFWEBL,JRNPATH
  N MSD S MSD=$G(^W3PRM("MSD"),1)
  S %GET="dcrqn cew++3,75,HH#"_MSD_"++5,E,I" D ^%L1GET
  Q:%S=""  Q:%TO="END"
  S MSD=%S
  S ^[$$^%L1GLD]W3MSD(MSD)=$G(^PL("ESEK",1))
  ;;S ^[$$^%L1GLD]UCI(MSD)="/usr/local/mumps/mumps.gld"
  S ^W3PRM("MSD")=MSD
  I $$^%L1MRK S ^MRKZ($$^%L1MRK)=^PL("ESEK",1)
  S PATHJOUR=$$MSM^W3MAIN_"/"_MSD_"/jour/"
  I '$$EXIST^%L1ZOS(PATHJOUR) S ER=$$^%L1ZOS(6,PATHJOUR)
  S ^PATH=PATHJOUR
IN1 ;
  S SERET=$G(^PL("PATHM"))
  I SERET?.P S SERET="/usr/local/mumps/"_MSD_"/kup/"
  S SERET=$$FUNC^%UCASE(SERET)
  S %GET="zxewia ihxq dvignl jxc++5,75,HH#"_SERET_"++50,E,I" D ^%L1GET I %S=""!(%TO="END") G IN
  S PATHM=$$DIR(%S) I PATHM="-" G IN1
  S ^PL("PATHM")=PATHM
IN2 S DFWEBL=$G(^[$$^%L1GLD]W3MAIN("WEBL"))
  I DFWEBL?.P S DFWEBL="/var/lib/tomcat-6/webapps/mumps-examples/jsp/"
  S DFWEBL=$$FUNC^%UCASE(DFWEBL)
  S %GET="zil`wel /JSP/ dvignl jxc++7,75,HH#"_DFWEBL_"++50,E,I" D ^%L1GET I %S=""!(%TO="END") G IN1
  S DFWEBL=$$DIR(%S)
  I DFWEBL="-" G IN2
  S ^[$$^%L1GLD]W3MAIN("WEBL")=DFWEBL
IN3 ;S DFWEB=$G(^[$$^%L1GLD]W3MAIN("WEB"))
  ;I DFWEB?.P S DFWEB="http://         ----         /mumps-examples/jsp/"
  ;S DFWEB=$$FUNC^%UCASE(DFWEB)
  ;S %GET="xz`dn /JSP/ dvignl jxc++9,75,HH#"_DFWEB_"++50,E,I" D ^%L1GET I %S=""!(%TO="END") G IN2
  ;S ^[$$^%L1GLD]W3MAIN("WEB")=$$FUNC^%LCASE(%S)
  S ^[$$^%L1GLD]W3MAIN("WEB")=""
  ;
  ;
IN4 S INTIN=$G(^P1PRM("ASH","PATHINTIN"))
  S INTIN=$$FUNC^%UCASE(INTIN)
  S %GET="INTIN dvignl jxc++11,75,HH#"_INTIN_"++50,E,I" D ^%L1GET I %S=""!(%TO="END") G IN3
  S INTIN=$$DIR(%S)
  I INTIN="-" G IN4
  S ^P1PRM("ASH","PATHINTIN")=INTIN
IN5 S PATHTRAN=$G(^P1PRM("ASH","PATHTRAN"))
  S PATHTRAN=$$FUNC^%UCASE(PATHTRAN)
  S %GET="PATHTRAN dvignl jxc++13,75,HH#"_PATHTRAN_"++50,E,I" D ^%L1GET I %S=""!(%TO="END") G IN4
  S PATHTRAN=$$DIR(%S)
  I PATHTRAN="-" G IN5
  S ^P1PRM("ASH","PATHTRAN")=PATHTRAN
IN6 S USERNAME=$G(^P1PRM("ASH","USERNAME"))
  S USERNAME=$$FUNC^%UCASE(USERNAME)
  S %GET="ynzyn my++15,75,HH#"_USERNAME_"++10,E,I" D ^%L1GET I %S=""!(%TO="END") G IN5
  S ^P1PRM("ASH","USERNAME")=$$FUNC^%UCASE(%S)
IN7 S PASSWORD=$G(^P1PRM("ASH","PASSWORD"))
  S PASSWORD=$$FUNC^%UCASE(PASSWORD)
  S %GET="dnqiq++17,75,HH#"_PASSWORD_"++10,E,I" D ^%L1GET I %S=""!(%TO="END") G IN6
  S ^P1PRM("ASH","PASSWORD")=$$FUNC^%UCASE(%S)
IN8 S MAM=$G(^P1PRM("MAM"),18)
  S %GET="n""rn daeb++19,75,HH#"_MAM_"++5,E,I" D ^%L1GET I %S=""!(%TO="END") G IN7
  S ^P1PRM("MAM")=%S
IN9 ;
  S MHS=$G(^WO1P("DIR0"))
  I MHS?.P S MHS="/var/lib/tomcat-6/webapps/mumps-examples/jsp/"_MSD_"/"
  S MHS=$$FUNC^%UCASE(MHS)
  S %GET="dqpkd qn ly dvignl jxc++21,75,HH#"_MHS_"++50,E,I" D ^%L1GET I %S=""!(%TO="END") G IN8
  S MHS=$$DIR(%S)
  I MHS="-" G IN9
  S ^WO1P("DIR0")=MHS
  ;
  S MSHVA=$E($G(^P1PRM("ASH","MASOF")),1,10)
  S %GET="`ay seqn 'qn++23,75,HH#"_MSHVA_"++10,E,I"
  D ^%L1GET I %S=""!(%TO="END") G IN9
  S ^P1PRM("ASH","MASOF")=%S
  ;
  S ^PLUK="*LKH"
  I '$D(^P1PRM("MSD")) S ^P1PRM("MSD")=1
  I '$D(^P1PRM("MTAW")) S ^P1PRM("MTAW")=0
  I '$D(^P1PRM("MSL")) S ^P1PRM("MSL")=0
  S ^PL("ASH96")=1 ;
  S ^PL("TRDDP")=4
  S ^P1PRM("TIPNO")=0
  S ^P1PRM("TIPNT")=0
  I '$D(^P1PRM("SHAAZ")) S ^P1PRM("SHAAZ")=6
  ;
  I '$D(^W3PRM("COLOR")) S ^W3PRM("COLOR")="DRW"
  I '$D(^W3PRM("CODE")) S ^W3PRM("CODE")=1
  D MSUGMS^W4LEVPR
  ;
  S JRNPATH=$$DIR("/usr/local/mumps/"_MSD_"/jour/")
  ;
  D CRGL
  Q
  ;
CRGL ;
  I $A(^P1SBR(1))>200 K ^P1SBR
  I $A(^SUGS(1))>200 K ^SUGS
  ;
  I $D(^P1SBR)<10 D
  .S ^P1SBR(1)="mr"
  .S ^P1SBR(2)="ila"
  .S ^P1SBR(3)="cva"
  .S ^P1SBR(4)="hrn"
  .S ^P1SBR(5)="daxd"
  ;
  I $D(^SUGS)<10 D
  .S ^SUGS(1)="libx"
  .S ^SUGS(2)="xa"
  Q
  ;
DIR(%SSS) ;
 K %SC
 S %SSS=$$FUNC^%LCASE(%SSS)
 I $E(%SSS,$L(%SSS))'="/" S %SAY="'/' seqa" W *7 X %XMSGV Q "-"
 I '$$EXIST^%L1ZOS(%SSS) D  I %S'=99!(%ER<0) Q "-"
 .S %ER=0 S %GET=" 99 - xviil . zniiw `l dvign " D N^%L1GET Q:%S'=99
 .S %ER=$$^%L1ZOS(6,%SSS) I %ER'<0 S %SAY=" CREATED ..." X %XMSGV(1)
 Q %SSS
 ;
NOKILL ; 
  S NOKILL="%TYPCRT,%CVET,ADRES,BAR,BLACK,DARGA,DARGAi,DEP,DEV,DIASUG,DT,E1G,E1MSG,ISRVIS,JENR,KILLZ,KL,"
  S NOKILL=NOKILL_"KLLKHTZ,KLLKH,KOD,L1TIP,LEV,LEVKVZ,LEVSUGMS,LKH,LKHi,LKHi1,LKK,"
  S NOKILL=NOKILL_"MHSET,QNDEF,QNSET,"
  S NOKILL=NOKILL_"LOOP,MHT,MHTSF,MSPMOD,NAME,NAMEi,P1AREA,P1BARMAN,P1BLRD,P1CODH,P1CODHi,P1CODHM,P1CODTS,P1DOP,"
  S NOKILL=NOKILL_"P1EZ,P1EZI,P1EZA,P1EZAI,P1EZH,P1EZHK,P1EZT,P1EZK,P1EZKI,P1EZL,P1EZLI,P1EZP,P1EZPI,P1EZR,P1EZRI,"
  S NOKILL=NOKILL_"P1HLDR,P1HNH,P1HNHS,P1IR,P1HOD,P1HOD,P1KDM,P1KDMI,P1KEY,P1KUP,P1KVZSID,P1LKDM,P1LKWK,P1MDPS,P1MDPSi,P1MLZSH,P1MLZSHI,P1MSD,P1MSKS"
  S NOKILL=NOKILL_"P1MVC,P1PARTAW,P1PARMSL,P1PARSID,P1SBIT,P1SBR,P1SHNH,P1SIS,P1SL,P1SLi,P1STREET,P1SUGM,P1SUG,P1SUGi,P1PRM,P1SBIT,P1SET,P1SETA,P1SETAI,P1SETM,P1SETP,P1SETPI,P1TFRA,P1THUM,P1ULAM,"
  S NOKILL=NOKILL_"PARNL,PARSUG,PARSUGi,PAR,PARi,PARs,PARDEP,PARM,PARMS,PARLKH,PARSHA,PARSLK,PARTA,PATH,PL,PLUK,"
  S NOKILL=NOKILL_"PLZJ0,PRTBH,PRTMB,PRTNO,RANDOM,SCR,SCRP,SCRL,SHP,SHVA,SPK,SPKi,START,SUGL,SUGLi,SUGS,SUGSi,"
  S NOKILL=NOKILL_"TABLs,TEL,UCI,UCI0,UCIKL,VECT,VERSION,ZT,ZB,dev,devi,devi1,devi2,devi3,m,msg,rep,word,"
  S NOKILL=NOKILL_"W3MAIN,W3MSD,W3MSDR,W3SUG,W3PAR,W3PARM,W3PRM,W4ACNT,W4DIAPTB,W4OPT,W4PAY,W4PAYS,W4TIPAH,W4ASK,"
  S NOKILL=NOKILL_"W4GRC,W4KVZRKZ,W4REP,W4REPSCR,W4SP,W4VWGR,W4VDHB,W1REP,W1SP,W1DICT,WO1VM,"
  S NOKILL=NOKILL_"W3AZR,W4ITFAST,W4FASTGR,W4MAPPRM,W4MDP,W4MDPH,W4PSWDRG,W4PLGN,W4ULAM,W4ULAMA,W4SUGH,W4SUGM,W4SHVER,W4SETMT,"
  S NOKILL=NOKILL_"WCG,WCCMP,WCMSG,WCREP,WVG,"
  S NOKILL=NOKILL_"MLDEP,MLEZM,MLEZMI,MLMIDA,MLMKDM,MLPAR,MLSUGP,W4MTB,"
  ;;S NOKILL=NOKILL_"MLSPKMH,MLSPKMHI,MLSPKMHP,MLSPKMHS,"
  S NOKILL=NOKILL_"W4FREEDOC,W4INOUT,W4INDDIR,W4ITDGSH,"
  ;;S NOKILL=NOKILL_"W4ML,W4MLS,W4MLSP,W4MLY,W4MVC1,W4MVCAH,W4MVC11,"
  S NOKILL=NOKILL_"W3MVC,W4MVC1,W4MVCAH,W4MVC11,W4MVC3,"
  S NOKILL=NOKILL_"W4BCODE,W4BONCVG,W4NOITCN,W4TATSUG,W4POSEMV,"
  S NOKILL=NOKILL_"W3KKIND,W3MKR,W3SUGTS,W3COND,W3KASHER,W3PRICE,W4ABS,"
  S NOKILL=NOKILL_"W4CPERR,W4ORDEND,W4ORDENDR,W4SHP,W4SCR,W4TAB,W4ZOOM,"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

KLASSD
KLASSD ; "KPM" (HAIAVIM)        [ 12.02.19 15:07 ] [ 31.12.10 15:50 ] [ 01.05.10 13:43 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
BG K  D ^%L1C
 S CODPAY="0D",CODBUY="0H" S UCI=^UCI
 X %chista S %SAY=" zegewl uaew oewiz " X %XMSGV
Z0 S %RNG("V")="LKH",%RNG="gewl++3,70,HH#++10,E,I" D RR^%L1RNG Q:%TO="END"
Z S %GET=" uaewd lk oewizl <ENTER> e` YYMM dxeva oewizl ycege dpy qipkdl `p ++6,78,HH#++4,E,I"
 D ^%L1GET Q:%TO="END"  S YYMM=%S S %HBRY=""
 S %SAY=$S(YYMM="":"dtewzd lk",1:"{}"_$E(YYMM,1,2)_"{} dpy {}"_$E(YYMM,3,4)_"{} yceg")_"l zegewl uaew oewiz ++12,60,HH,,,R" X %XMSG
 K %GETIN D IS^%L1GET G:'YES Z
 I $G(^PLUK)["MLY" D
 .K %Q S %Q("Z")=" i`lna zeca`p zeipeayg yetig rval "
 .S %Q("Y")=24,%Q("X")=20,%Q("U")="k" D ^%S2ASK Q:'YES
 .D BDIKAML
 S %XX=0,%YY=14 X %POSIC
 S N="" F  S N=$O(^KLF(N)) Q:N=""  D
 .I ADLKH,$TR(N,"-","")<$TR(MELKH,"-","")!($TR(N,"-","")>$TR(ADLKH,"-","")) Q
 .W !,N
 .S DT="" I YYMM="" K ^KLF(N,"KPM") S $P(^LKH(N,2),"*",4)=0
 .E  K ^KLF(N,"KPM",YYMM)
 .I $D(^KLPTCH(N)) D
 ..S YYMMPT=$P(^(N),"*",3) I YYMMPT?4N,YYMM=""!(YYMM=YYMMPT) D
 ..S ^KLF(N,"KPM",YYMMPT)=$P(^KLPTCH(N),"*",1,2)
 ..I YYMM="" S $P(^LKH(N,2),"*",4)=$P($G(^LKH(N,2)),"*",4)+$P(^KLPTCH(N),"*",1)-$P(^KLPTCH(N),"*",2)
 .;
 .;
 .S DT="" F  S DT=$O(^KLF(N,"KP",DT)) Q:DT=""  Q:YYMM'=""&($$YYMM^W4DTL(DT)'=YYMM)  S ^(DT)=0 D
 ..N FYYMM S FYYMM=$$FYYMM^W4DTL(DT)
 ..N FDAT S FDAT=$$FULL^W4DTL(DT)
 ..N FDT S FDT=$$DT^W4DTL(DT)
 ..S CD="" F  S CD=$O(^KLF(N,"KP",DT,CD)) Q:CD=""  D
 ...S NM="" F  S NM=$O(^KLF(N,"KP",DT,CD,NM)) Q:NM=""  I NM D
 ....Q:+$P(^(NM),"\")=+$P(^(NM),"\",2)
 ....S COD=$P(NM,"-",4) S:COD=1 COD=$P(NM,"-",5)
 ....I CD="CB",NM=2 ;
 ....S SUM=$S(CD="TH"!(CD="H")!(CD="HZ"):$P(^(NM),"\",2),CD="TSHL"!(CD="CB")!(CD="TZ"):+^(NM),1:0)
 ....I CD="CB" S COD=CODPAY
 ....I CD="H" S COD=CODBUY
 ....I CD="HV",$P(^(NM),"\") S SUM=$P(^(NM),"\"),COD=CODPAY
 ....I CD="HV",$P(^(NM),"\",2) S SUM=$P(^(NM),"\",2),COD=CODBUY
 ....I (CD="TH")!(CD="H")!(CD="HZ") D
 .....S $P(^KLF(N,"KPM",FYYMM),"*",1)=$P($G(^KLF(N,"KPM",FYYMM)),"*",1)+SUM
 .....;;S ^KLF(N,"KP",FDAT)=$G(^KLF(N,"KP",FDAT))+SUM
 .....;;S ^KLIN(CD,NM)=N,^KLIN("DT",CD,FDT)=NM
 .....I $G(^P1PRM("ITRAHZ")) I FDT'>$H S $P(^LKH(N,2),"*",4)=$P($G(^LKH(N,2)),"*",4)+SUM
 ....I (CD="TSHL")!(CD="TZ")!(CD="CB")!(CD="MS") D
 .....S $P(^KLF(N,"KPM",FYYMM),"*",2)=$P($G(^KLF(N,"KPM",FYYMM)),"*",2)+SUM
 .....;;S ^KLF(N,"KP",FDAT)=$G(^KLF(N,"KP",FDAT))-SUM
 .....I $G(^P1PRM("ITRAHZ")),FDT'>$H D
 ......S $P(^LKH(N,2),"*",4)=$P($G(^LKH(N,2)),"*",4)-SUM
 ;
 S N="" F  S N=$O(^W4HB(N)) Q:N=""  D
 .S NOM=$G(^(N)) Q:'NOM
 .I $G(^KLIN("H",N)),^(N)'["W" S ^(N)=^(N)_"W"_NOM
 ;
 W !! S %GET=" <ENTER> . mlyed oewiz " D N^%L1GET
 I YYMM'="",$G(^P1PRM("ITRAHZ")) D M G BG
 I '$G(^P1PRM("ITRAHZ")) D M1 G BG
 Q
 ;
BDIKAML ;
 Q:$G(^PLUK)'["MLY"
 N SHN,STR,TSTR,SG,TD,LKH,PRT,DT,DT2,DT3,I
 S MLY=^UCI("MLG")
 S SHN="" F  S SHN=$O(^[MLY]MLY(SHN)) Q:SHN=""  D
 .S STR="" F  S STR=$O(^[MLY]MLY(SHN,STR)) Q:STR=""  D
 ..S TSTR="" F  S TSTR=$O(^[MLY]MLY(SHN,STR,TSTR)) Q:TSTR=""  D
 ...S TD="" F  S TD=$O(^[MLY]MLY(SHN,STR,TSTR,2,TD)) Q:TD=""  D
 ....Q:$P(TD,"-",2)="009"
 ....S A=$G(^(TD)),HB=+$P(A,"*",14),LKH=$P(A,"*",2) Q:'HB!'LKH  D
 .....I $G(ADLKH),$TR(LKH,"-","")<$TR(MELKH,"-","")!($TR(LKH,"-","")>$TR(ADLKH,"-","")) Q
 .....S N="",OK=0 F  S N=$O(^KLF(LKH,"KP",N)) Q:N=""  I $D(^KLF(LKH,"KP",N,"H",HB)) S OK=1 Q
 .....Q:OK
 .....S PRT="",SHUM=0 F  S PRT=$O(^[MLY]MLY(SHN,STR,TSTR,2,TD,PRT)) Q:PRT=""  D
 ......S SHUM=SHUM+$P(^(PRT),"*",5)
 .....S DT=$P(A,"*"),DT2=$$^%L1DC(A,2)
 .....F I=1:1 S DT3=$$CR^W4DTL(DT2)_$TR($J(I,4)," ",0) Q:'$D(^KLF(LKH,"KP",DT3))
 .....I YYMM'="",$$YYMM^W4DTL(DT3)'=YYMM Q
 .....;;S ^KLF(LKH,"KP",DT3,"H",HB)="\"_SHUM
 .....S ^KLIN("H",HB)=LKH,^KLIN("DT","H",$$^%L1DC(DT,3))=HB
 .....I $P($G(^KLF),"\",2)<HB S $P(^KLF,"\",2)=HB
 Q
 ;ITRA LKH --> MLY
M S %GET=" 99 - zegewl zexzi oewiz xey`l " D N^%L1GET Q:%S'=99
M1 S UCI=^UCI S N="" F  S N=$O(^KLF(N)) Q:N=""  D
 .I $G(ADLKH),$TR(N,"-","")<$TR(MELKH,"-","")!($TR(N,"-","")>$TR(ADLKH,"-","")) Q
 .I $G(^P1PRM("ITRAHZ")) D
 ..S $P(^LKH(N,2),"*",4)=0 D
 ...S DM="" F  S DM=$O(^KLF(N,"KPM",DM)) Q:DM=""  S IT=^(DM) S $P(^LKH(N,2),"*",4)=$P($G(^LKH(N,2)),"*",4)+IT-$P(IT,"*",2)
 .I '$G(^P1PRM("ITRAHZ")) D
 ..N STRING,DAT0
 ..S STRING=N,DAT0=$$^%L1DC($H,2) D ^KLOST
 ..S $P(^LKH(N,2),"*",4)=ITRA0
 Q
TZTH ;--- TZ,TH FROM KLF0
 S LK="" F  S LK=$O(^KLF0(LK)) Q:LK=""  D
 .S DT="" F  S DT=$O(^KLF0(LK,"KP",DT)) Q:DT=""  D
 ..S SUG="" F  S SUG=$O(^KLF0(LK,"KP",DT,SUG)) Q:SUG=""  I SUG="TH"!(SUG="TZ") D
 ...S ND="" F  S ND=$O(^KLF0(LK,"KP",DT,SUG,ND)) Q:ND=""  D
 ....S ^KLF(LK,"KP",DT,SUG,ND)=^KLF0(LK,"KP",DT,SUG,ND)
 Q
TZTH1 ;--- TZ,TH FROM KLF0
 S LK="" F  S LK=$O(^KLF0(LK)) Q:LK=""  D
 .F SD="TZ","TH" D
 ..I $D(^KLF0(LK,SD)) D
 ...S MAC1="^KLF0(LK,SD)",MAC2="^KLF(LK,SD)" D ^%S1GC1
 ...S MAC1="^KLF0(LK,SD_""P"")",MAC2="^KLF(LK,SD_""P"")" D ^%S1GC1
 Q
 
 

KLOST
KLOST ;                                       [ 01.03.23 14:32 ] [ 19.09.21 08:00 ] [ 04.11.03 17:12 ] 
 ; INPUT: STRING, DAT0 , DAT2 ( DAT0 - DATA, NA KOT TREB. ITRA,DAT2 - TODAY)
 ; OUTPUT: ITRA0 - SOF JOM DAT0
 ;         ITRA1 - THILAT JOM DAT2 - TASHLUMIM HABAIM
 ;
 I $G(^P1PRM("ITRAHZ")) G BG
 S KLOSTP("HZ")="" S (ITRA0,ITRA1)=0
 I $G(DAT0) S ITRA0=$$CBH(STRING,$$^%L1DC(DAT0,4),$G(KLOSTP("PR")))
 I $G(DAT2) S ITRA1=$$CBH(STRING,$$^%L1DC(DAT2,4),1)
 K KLOSTP("HZ")
 Q
BG S ITRA0=0,ITRA1=0 S DAT0=$E(DAT0,1,6),DAT2=$E(DAT2,1,6) N OK,N,S,M0,M2
 S N="" F  S N=$O(^KLF(STRING,"KPM",N)) Q:N=""  D
 .S M0=$E(DAT0,1,4) I M0<9000 S M0=M0+10000
 .S M2=$E(DAT2,1,4) I M2<9000 S M2=M2+10000
 .N N1 S N1=N I N1<9000 S N1=N+10000
 .I N1<M0 S ITRA0=ITRA0+^(N)-$P(^(N),"*",2)
 .I N1<M2 S ITRA1=ITRA1+^(N)-$P(^(N),"*",2)
 ;
 S N=$E(DAT0,1,4)_"00"
 F  S N=$O(^KLF(STRING,"KP",N)) Q:N=""  I N?6N D
 .S S=$G(^(N)) Q:$$^%L1DC($E(N,1,6),4)>$$^%L1DC(DAT0,4)  S ITRA0=ITRA0+S
 ;
 S N=$E(DAT2,1,4)_"00"
 F  S N=$O(^KLF(STRING,"KP",N)) Q:N=""  I N?6N D
 .S S=$G(^(N)) Q:$$^%L1DC($E(N,1,6),4)'<$$^%L1DC(DAT2,4)  S ITRA1=ITRA1+S
 ;
 S N=$E(DAT2,1,6)_$S($D(KLOSTP):"0000",1:"")
 F  S N=$O(^KLF(STRING,"KP",N)) Q:N=""  Q:$E(N,1,6)>DAT2  D
 .S S="\"_$G(^(N)) D BDK Q:'OK  S ITRA1=ITRA1+$P(S,"\",2)-$P(S,"\",1)
 ;
 S ITRA0=$J(ITRA0,2,2),ITRA1=$J(ITRA1,2,2)
 K KLOSTP Q:'$D(KLOST)
 N DAT21,DAT01
 S DAT21=$E(DAT2,5,6)_"."_$E(DAT2,3,4)_"."_$E(DAT2,1,2)
 S DAT01=$E(DAT0,5,6)_"."_$E(DAT0,3,4)_"."_$E(DAT0,1,2)
LOOK ;
 I DAT0'=DAT2 S %GET=$J(ITRA1,8,2)_" :"_DAT21_" jix`zl dxzi  "_$J(ITRA0,8,2)_" :"_DAT01_" jix`zl dxzi ++1,70,HH,I,R"
 E  S %GET=$J(ITRA0,8,2)_" :"_DAT01_" jix`zl dxzi ++1,50,HH,I,R"
 D ^%L1GET
 Q
BDK ;
 S OK=1 Q:'$D(KLOSTP("CD"))!'$D(KLOSTP("N"))
 I $D(^KLF(STRING,"KP",N,KLOSTP("CD"),KLOSTP("N"))) S OK=0 Q
 S N1=$O(^KLF(STRING,"KP",N,"")) I N1'="" S N2=$O(^KLF(STRING,"KP",N,N1,"")) I N2'="" S S=^(N2)
 Q
CBH(LKH,DT,PR) ;-- ITRA LEFI HESBONIOT & KABALOT
 ;-- PR=1 - LAKAHAT BE HESHBON TASHLUMIM HABAIM
 ;   KLOSTP("CD") & KLOSTP("N") - SUG & NOM DOC PRI KOT NADO PREKR HISHUV
 ;-----------------------------------------------------------------------
 N D,DOC,NOM,HOV,END S HOV=0,END=0
 ;
 I $D(^KLPTCH(LKH))#2 S HOV=HOV+$P(^(LKH),"*")-$P(^(LKH),"*",2) ;-- PTIHA
 ;
 S D="" F  S D=$O(^KLF(LKH,"KP",D)) Q:D=""  D  Q:END
 .N DTK S DTK=$$^%L1DC($$^%L1DC($E(D,1,6),1),3)
 .I '$G(PR),DTK>DT Q  ;-- ITRA HATHALATI
 .I '$G(PR),'$D(KLOSTP("CD"))!'$G(KLOSTP("N")),$D(KLOSTCP("<")),DTK'<DT Q
 .S DOC="" F  S DOC=$O(^KLF(LKH,"KP",D,DOC)) Q:DOC=""  D  Q:END
 ..S NOM="" F  S NOM=$O(^KLF(LKH,"KP",D,DOC,NOM)) Q:NOM=""  D  Q:END
 ...I '$G(PR),$D(KLOSTP("CD")),$G(KLOSTP("N")),DOC=KLOSTP("CD"),NOM=KLOSTP("N"),DTK'<DT S END=1 Q
 ...S A=$G(^(NOM)) I DOC="CB"!(DOC="TZ"&($P(A,"\",1)-$P(A,"\",2))) S HOV=HOV-A D DB(NOM,-A,HOV) Q
 ...I $G(PR)=1,DOC="H"!(DOC="TH"&($P(A,"\",1)-$P(A,"\",2))),$P(A,"\",2)>0!($P(A,"\",3)>0),DTK>DT Q
 ...I DOC="H"!(DOC="TH"&($P(A,"\",1)-$P(A,"\",2))),$P(A,"\",2) S HOV=HOV+$P(A,"\",2) D DB(NOM,$P(A,"\",2),HOV) Q  ;-- JAD
 ...;;I DOC="H",$P(A,"\",3),'$D(KLOSTP("HZ")) S HOV=HOV+$P(A,"\",3) D DB(NOM,$P(A,"\",3),HOV) Q  ;-- OT
 ...;;I DOC="HZ",$D(KLOSTP("HZ")),$P(A,"\",2) S HOV=HOV+$P(A,"\",2) D DB(NOM,$P(A,"\",2),HOV) Q
 ...I DOC="H",$P(A,"\",3) S HOV=HOV+$P(A,"\",3) D DB(NOM,$P(A,"\",3),HOV) Q  ;-- OT
 ...I DOC="HZ",$D(KLOSTP("HZ")),$P(A,"\",2),'$P(A,"\"),$D(^P1HL2(LKH,NOM)) S HOV=HOV+$P(A,"\",2) D DB(NOM,$P(A,"\",2),HOV) Q
 Q HOV
 ;
DB(NOM,SUM,HOV) I $G(^DEB) W !,NOM," ",$J(SUM,7,2)," ",HOV H 1
 Q
 ;
HOVHZ(LKH,D1,D2) ;
 N (JB,%ARG,%REM,LKH,D1,D2)
 S END=0,HOV=0
 S D="" F  S D=$O(^KLF(LKH,"KP",D)) Q:D=""  D  Q:END
 .I D'?10N Q
 .S DT=$$^%L1DC($E(D,1,6),4) I DT>D2 S END=1
 .I DT'<D1 D
 ..S NOM="" F  S NOM=$O(^KLF(LKH,"KP",D,"HZ",NOM)) Q:NOM=""  I NOM D
 ...S HOV=HOV+$P($G(^(NOM)),"\",2)
 Q HOV
 
 

KLUP
KLUP ; UPDATE    [ 25.09.05 13:53 ] [ 10.10.02  3:44 PM ] [ 03.01.01 11:22 AM ]
 ; FUNCTION : CREATE USER CREDIT TRANZACTION FILE ^KLF
 ;            UPDATE USER REMAINDER
 ; INPUT    : TRANZACTION'S DATA (DATE - YYMMDD)
 ;            TRANZACTION'S CODE (CODDOC)
 ;            TRANZACTION'S NUMBER (NUMBER)
 ;            USER CODE (CUSN)
 ; OUTPUT   : GLOBAL ^KLF(USER CODE,"KP",DATA,CODE,NUMBER)
 ; !!!!! *** SHINUJ MI- MER,MSM: TIDK - $P(^LKH(LKH,1),"*",11) A NE 10 *** !!!
 ;---------------------------------------------------------
 N N
 I DATE'?6N.N S OK=0,ER=7 Q
 I CODDOC="TSHL"!(CODDOC="HZ") G M
 ;;I $D(^PROV(DATE,CODDOC_NUMBER)),CODDOC'="IT",CODDOC'="HV" S OK=0,ER=92 Q
 ;;I CODDOC'="CUP" S ^PROV(DATE,CODDOC_NUMBER)=""
M N KLDATE S KLDATE=DATE N DATE S DATE=$E(KLDATE,1,6)_"0001"
 I $E($O(^KLF(CUSN,"KP",$E(DATE,1,6)_"0000")),1,6)=$E(DATE,1,6) S KLDATE=$O(^($E(DATE,1,6)_9999),-1) N DATE S DATE=$E(KLDATE,1,6)_$TR($J($E(KLDATE,7,10)+1,4)," ",0)
 N DATEOLD,SUMOLD,SUM1
 S SUMBUY=0,SUMPAY=0
 I COD=CODBUY,+SUM'=0 D
 .S $P(^KLF(CUSN,"KPM",$E(DATE,1,4)),"*",1)=$P($G(^KLF(CUSN,"KPM",$E(DATE,1,4))),"*",1)+SUM
 .S $P(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER),"\",2)=SUM ;+$P($G(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER)),"\",2)
 .O "#KLF":(APPEND) U "#KLF" W "S $P(^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",2)="_SUM,! C "#KLF"
 .D ^%S2GLSV("^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^P1FGIB)
 .S ^KLF(CUSN,"KP",$E(DATE,1,6))=$G(^KLF(CUSN,"KP",$E(DATE,1,6)))+SUM
 I COD=CODPAY,+SUM'=0 D
 .S $P(^KLF(CUSN,"KPM",$E(DATE,1,4)),"*",2)=$P($G(^KLF(CUSN,"KPM",$E(DATE,1,4))),"*",2)+SUM
 .S $P(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER),"\",1)=SUM ;+$P($G(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER)),"\",1)
 .O "#KLF":APPEND U "#KLF" W "S $P(^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",1)="_SUM,! C "#KLF"
 .D ^%S2GLSV("^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^P1FGIB)
 .S ^KLF(CUSN,"KP",$E(DATE,1,6))=$G(^KLF(CUSN,"KP",$E(DATE,1,6)))-SUM
 ;
 I COD=CODPAY!(COD=CODBUY) D
 .N DT,DT1 S DT=$E(DATE,1,6) S DT1=$E(DT,1,4) I DT1<9000 S DT1=DT1+10000
 .S ITRA0=0
 .S N="" F  S N=$O(^KLF(CUSN,"KPM",N)) Q:N=""  D
 ..I N'>DT1 S ITRA0=ITRA0+^(N)-$P(^(N),"*",2)
 .I $G(^P1PRM("ITRAHZ")) D
 ..S $P(^LKH(CUSN,2),"*",4)=ITRA0
 .I '$G(^P1PRM("ITRAHZ")) D
 ..N STRING,DAT0 S STRING=CUSN,DAT0=DT D ^KLOST
 ..S $P(^LKH(CUSN,2),"*",4)=ITRA0
 .S $P(^LKH(CUSN,1),"*",11)=$$^%L1DC(DT,4)
 .Q
 ;
 I COD'="A",COD'=CODBUY&(COD'=CODPAY),+SUM'=0 D  Q
 .S $P(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER),"\",1)=SUM ;+$P($G(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER)),"\",1)
 .S $P(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER),"\",2)=SUM ;+$P($G(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER)),"\",2)
 .S ^KLF(CUSN,"KP",$E(DATE,1,6))=$G(^KLF(CUSN,"KP",$E(DATE,1,6)))+0
 .O "#KLF":APPEND U "#KLF" W "S $P(^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",2)="_SUM_"\"_SUM,! C "#KLF"
 .D ^%S2GLSV("^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^P1FGIB)
 ;
 I COD="A" I +SUM'=0,$G(NUMBER) D
 .S $P(^KLF(CUSN,"KP",DATE,CODDOC,NUMBER),"\",3)=SUM
 .O "#KLF":APPEND U "#KLF" W "S $P(^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",2)="_SUM_"\"_SUM,! C "#KLF"
 .D ^%S2GLSV("^KLF("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^P1FGIB)
 Q

LEVINIT
LEVINIT ;    [ 02.04.04  6:21 PM ] [ 24.03.04 10:46 AM ] [ 05.03.04  9:28 AM ]
 S $ZT="ZG $ZL:^%ET"
 X %chista N %ECHO
ZU S %GET="ynzynd cew ++10,60,HH#"_$G(^LEV("USER"))_"++10,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 I %S'?1N.N,(%S'?1U.U.N) W *7 S %SAY=" d ` i b y " X %XMSGV H 2 G ZU
 S ^LEV("USER")=%S
 S %GET="ynzynd my ++12,60,HH,,R#"_$G(^LEV("NAME"))_"++20,H,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S ^LEV("NAME")=%S
 X %chista S %SAY=^LEV("NAME") X %XMSGV
ZK1 K %MBS S %XX=0,%YY=5 X %POSIC,%chiste
 F I=1:1 Q:$T(MAS1+I)=" Q  ;"  S %MBS("PAR",I)=$T(MAS1+I)
 U $P:(NOECHO:NOWRAP)
 K %L1MBS D ^%L1MBS1
 S %MBS("O",1)=$G(^LEV)
 S %MBS("O",2)=$G(^LEV("PSW"))
 S %MBS("O",3)=$G(^P1PRM("IOBDK"))
 S %MBS("O",4)=$G(^P1PRM("IOCARD"))
 S %MBS("O",5)='$G(^LEV("NOSUG"))
 S %MBS("O",6)='$G(^LEV("NONIGHT"))
 S %MBS("O",7)=$G(^LEV("CNISA"))
 S %MBS("O",8)='$G(^LEV("SHIFR"))
 S %MBS("O",9)=+$G(^LEV("HAFSAKA"))
 S %MBS("O",10)=$P($G(^LEV("HAFSAKA")),"\",2)
INP D ^%L1MBS
 S %GETIN=2,%GET="0 - rval `l, 2 - rval, 1 - owzl" D N^%L1GET
 I %S=1 G INP
 I %S=2 D ZAP
 D ^LEVP
 Q
ZAP ;
 S ^LEV=%MBS("O",1)
 S ^LEV("PSW")=%MBS("O",2)
 S ^P1PRM("IOBDK")=%MBS("O",3)
 S ^P1PRM("IOCARD")=%MBS("O",4)
 S ^LEV("NOSUG")='%MBS("O",5) I '^LEV("NOSUG") K ^LEV("NOSUG")
 S ^LEV("NONIGHT")='%MBS("O",6)
 S ^LEV("CNISA")=%MBS("O",7)
 S ^LEV("SHIFR")='%MBS("O",8)
 S $P(^LEV("HAFSAKA"),"\")=%MBS("O",9)
 S $P(^LEV("HAFSAKA"),"\",2)=%MBS("O",10)
 I $D(^r($J)) K ^LEV("NONIGHT")
 Q
END Q
MAS1 ;
 ;oery ly xiykn xeaigl hxet xtqn;5,30;2;E;0123456789;##
 ;ipci oewizl dnqiq;6,30;10;E;;
 ;(`l-0,ok-1) d`ivi ixg` dqipky wecal m`d;8,30;2;E;10;
 ;(`l-0,ok-1) ihpbn qihxk mr wx d`ivi/dqipk m`d;9,30;2;E;10;
 ;(`l-0,ok-1) zeveaw itl micaer wlgl m`d;10,30;2;E;10;
 ;(`l-0,ok-1) zevg ixg` d`ivi zeidl dleki m`d;11,30;2;E;10;
 ;(`l-0,ok-1) dcear ini deey zeqipk xtqn m`d;12,30;2;E;10;
 ;(`l-0,ok-1) qihxkd zxarda caer 'qn bivdl m`d;13,30;2;E;10;
 ;dwqtd zewc 'qn;14,30;2;E;1234567890;
 ;dwqtd onf zcxedl ilnipin dcear zery 'qn;15,30;2;E;1234567890;
 Q  ;

LEVP
LEVP ; [ 24.03.04 10:41 AM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 L ^LEVP:1 E  S %GET=" <ENTER> ugl .xg` mewndn dpkezd mr micaer " D N^%L1GET
 S %SCRN="LEVP"
 K ^TMP($P)
 S N="",I=0 F  S N=$O(^PLUK(N)) Q:N=""  S I=I+1,^TMP($P,I)=N_"\"_'$G(^LEVP(N))
 S ^SCR(%SCRN,"G","MAX")=I
 S SISMA=$G(^LEVP)
 I '$D(^LEVP) G SC
 D A^%L1SC
 S %GETIN=1
Z S %GET=" <ESC> - z`vl ,<1> - okcrl " D N^%L1GET
 I %TO="END" G END
 I %S'=1 W *7 G Z
 S %SC("A")=1
SC D ^%L1SC
 D IS3^%L1GET
 I %S=1 G SC
 I %S=0 G END
 K ^LEVP
 F I=1:1 Q:'$D(^TMP($P,I))  S PORT=$P(^(I),"\") I PORT,'$P(^(I),"\",2) S ^LEVP(PORT)='$P(^(I),"\",2)
 I SISMA S ^LEVP=SISMA
END K ^TMP($P) L  Q

MJSP
MJSP ; wrapper for Mumps for JSP interaction. [ 08.10.25 18:30 ] [ 22.11.22 15:48 ] [ 07.12.20 10:58 ] 
 ; A single M job will handle many JSP pages, one at a time.
 ;----------------------------------------------------------
 ;------------------------ MAIN ----------------------------
 S D="_"
 D EXEC
 Q
 ;-----------------------------------------------------------
 ;
INIT ; init the job
 ;D INJ^%INTGET
 Q
 ;
CLEAR ; clear the job, on the beginning of each page handling
 ;D EXJ^%INTGET
 K
 ZD
 Q
 ;
EXEC ; main loop
 S $ZT="ZG "_$ZL_":ERR^MJSP"
 D U00
 W "~","~~> "
 ;;U 0 H 0
 R %COMMAND
 S %COMMAND=$P(%COMMAND,$C(10))
 S %COMMAND=$P(%COMMAND,$C(13))
 ;;S ^ZCAVCMD(+$G(JB),$O(^ZCAVCMD(+$G(JB),""),-1)+1)="EXEC:"_$E(%COMMAND,1,2000)
 X %COMMAND
 G EXEC
 ;
REMSAVE(CODE) ; save M code for later execution by a remote browser
 ; CODE - The code to execute later
 ; generate a random key to save this code in
 ;-----------------------------------------------
 ;
 N $ZT S $ZT="ZG "_$ZL_":ERRS^MJSP"
 S CODE="D CWD^MJSP("""_$$PWD^MJSP()_""") "_CODE
 I $D(JB) S CODE="S JB="""_JB_""" "_CODE
 N KEY
 F  D  Q:'$D(^[$$^W3MAIN]CacheTempJSP(KEY)) ; Was ^["USER"]Ca... -- *** LEV
 .S KEY=$$KEYGEN()
 S ^[$$^W3MAIN]CacheTempJSP(KEY)=CODE
 ;;S ^ZCAVCMD(+$G(JB),$O(^ZCAVCMD(+$G(JB),""),-1)+1)="REMSAVE:"_CODE
 W KEY
 Q
 ;
KEYGEN() ; generate a random key. key is a 56 char long alphanumeric sequence
 N KEY,CHAR,I S KEY=+$H_$TR($J($G(JB),10)," ",0)_$TR($J($P($H,",",2),5)," ",0)
 F I=1:1:16  D  ; -- WAS 36
 .S CHAR=$R(36)
 .I CHAR>9 S CHAR=$C(55+CHAR) ; English capital letters
 .S KEY=KEY_CHAR
 Q KEY
 ;
REMEXEC(KEY)  ; remote execution of M label, called from the browser
 ; KEY - a one time random key, that will lead us to the M label
 ;       That was previously stored in it
 ;
 ; ARGS - optional arguments passed by the javascript, in the form
 ;       of AVG1=VAL1,ARG2=VAL2,...
 ;--------------------------------------------------------------------
 ;
 Q:$G(KEY)=""
 N $ZT S $ZT="ZG "_$ZL_":ERRS^MJSP"
 N %COMMAND
 S %COMMAND=$G(^[$$^W3MAIN]CacheTempJSP(KEY))
 ;;S ^ZCAVCMD(+$G(JB),$O(^ZCAVCMD(+$G(JB),""),-1)+1)="REMEXEC:"_%COMMAND
 I %COMMAND="" W "ERROR: key "_KEY_" not found",! Q
 I '$G(JB) S JB=+$E(KEY,6,15)
 I $G(ARGS)'="" S ^URI("ARGS")=ARGS S @ARGS
 X %COMMAND
 Q
 ;
ERR  ; Error trap
 H 1
 S $ZT="ZG "_$ZL_":HALT^MJSP"
 D NOECHO
 ;;W "ERR> ",$ZS,!
 N DATE S DATE=$$DATE
 N ZH S ZH=$O(^ERR(DATE,99999999),-1)+1 ; *** LEV
 ;
 S ^ERR(DATE,ZH,+$G(JB))=$ZS
 S ^ERR(DATE,ZH,+$G(JB),"$H")=$H ; *** LEV
 S ^ERR(DATE,ZH,+$G(JB),"CMD")=$G(%COMMAND)
 N I F I=0:1:$STACK D
 . S ^ERR(DATE,ZH,+$G(JB),I,"MCODE")=$STACK(I,"MCODE")
 . S ^ERR(DATE,ZH,+$G(JB),I,"PLACE")=$STACK(I,"PLACE")
HALT H  ;H 2 G EXEC
 ;
ERRS  ; Error trap
 H 1
 N $ZT S $ZT="ZG "_$ZL_":ERRSE^MJSP"
 D NOECHO
 N DATE S DATE=$$DATE
 N ZH S ZH=$O(^ERR(DATE,99999999),-1)+1 ; *** LEV
 S ^ERR(DATE,ZH,+$G(JB))=$ZS
 S ^ERR(DATE,ZH,+$G(JB),"$H")=$H ; *** LEV
 S ^ERR(DATE,ZH,+$G(JB),"CMD")=$G(%COMMAND)
 N I F I=0:1:$STACK D
 . S ^ERR(DATE,ZH,+$G(JB),I,"MCODE")=$STACK(I,"MCODE")
 . S ^ERR(DATE,ZH,+$G(JB),I,"PLACE")=$STACK(I,"PLACE")
ERRSE W "SE.NOK",!
 Q
 ;
DATE() ; Return the date in format YYYYMMDD
 N ZV S ZV=$$ZV
 ;;I ZV["MVX" Q $ZDATE($H,8) ;; *** LEV
 I ZV["GTM" Q $ZDATE($H,"YEARMMDD")
 Q "UNKNOWN"
 ;
ZV() ; Return system type
 ; for Cache open/M ISM all intersystems mumps "MVX"
 ; for GTM (sanches mumps) "GTM"
 ; for micronetics "MSM"
 ; for dsm "DSM"
 ; for dtm "DTM"
 ;---------------------------------------------------
 N SYS
 S SYS=$$SYS
 I SYS?1"Cache".E  Q "MVX"
 I SYS?1"M/S".E    Q "MVX"
 I SYS?1"Open M".E Q "MVX"
 I SYS?1"MSM".E    Q "MSM"
 I SYS["DSM"       Q "DSM"
 I SYS?1"DTM".E    Q "DTM"
 I SYS?1"GT.M".E   Q "GTM"
 Q "UNKNOWN"
 ;
NOECHO ; Turn off the echo on the terminal device
 N ZV,PLT S ZV=$$ZV,PLT=$$PLT
 U 0:(NOECHO:NOWRAP:NOCENABLE) ; NOWRAP - *** LEV
 Q
 ;
U00 ; Cancel line wrap on terminal device
 N ZV,PLT S ZV=$$ZV,PLT=$$PLT
 U 0:(NOWRAP:NOECHO:NOCENABLE)
 Q
 ;
PLT() ; PLATFORM
 ; /**
 ;  * return Operating system platform
 ;  * example for linux the unix vendor (IBM/HP/SUN...)
 ;  * for windows-nt and 2000 "NT"
 ;  * for vms "VAX"
 ;  * for GTM "PC386"
 ;  * see also $$ZV
 ;  */
 ;--------------------------------------------------------
 ;
 N SYS,ZV S SYS=$$SYS,ZV=$$ZV
 I ZV="MVX" Q $P($P(SYS,")",1),"(",2) ;; *** LEV
 I SYS["MSM-PC/PLUS" Q "PC386"
 I SYS["MSM-PC/386" Q "PC386"
 I ZV="MSM",$$ZVER="2.2.6" Q "PC386"
 I SYS["MSM-PC" Q "PC"
 I ZV="DSM",SYS["PDP" Q "PDP"
 I ZV="DSM",SYS["VAX" Q "VAX"
 I ZV="GTM" Q:$P(SYS," ",4)="x86" "PC386" Q $P(SYS," ",4)
 Q "UNKNOWN"
 ;
ZVER() ;
 ; /**
 ;  * return system type version (see also $$ZV)
 ;  * for example cache 4.1.5 $$ZVER="4.1.5|
 ;  */
 ; VERSION (NUMBER.NUMBER.NUMBER OR NUMBER.NUMBER-NUMBER.NUMBER)
 ;--------------------------------------------------------------
 ;
 N SYS,ZV S SYS=$$SYS,ZV=$$ZV
 I ZV="MVX" S SYS=$P(SYS,")",2) Q $P(SYS," ",2)
 I ZV="MSM" Q $P(SYS,"Version ",2)
 I ZV="GTM" Q $E($P(SYS," ",2),2,99) ;GT.M V4.2-000 Linux x86
 Q $P(SYS," ",3)
 ;
CWD(%UCI) ; SWITCH TO ANOTHER NAMSPACE (A.K.A. UCI)
 ;    !! DONT USE THIS LABEL !! FOR INTERNAL USE ONLY !!
 ; (IN MSM MUST BE="UCI,VOL")
 ; (IN MSQL MUST BE="/dir/dir/")
 ;----------------------------------------------------------
 ;
 S ^TEST("1")=%UCI
 ;
 ;-------------------------------- *** LEV --> COMMENT -----
 ;; I $$SYS?1"Cache".E D  q
 ;;.ZN %UCI
 ;;.I $D(^ROUTINE("HAVILA")) D ON^HAVILA
 ;;I $$ZV["MVX" D  Q
 ;;.I $ZU(39,$$MGR)
 ;;.I $ZU(5,%UCI)
 ;;.I $D(^ROUTINE("HAVILA")) D ON^HAVILA
 ;;I $$ZV["MSM" D  Q
 ;;.N %UCN
 ;;.I %UCI'["," S %UCI=%UCI_","_$P($ZU(0),",",2)
 ;;.S %UCN=$ZU($P(%UCI,",",1),$P(%UCI,",",2)),%UCN=$P(%UCN,",",2)*32+%UCN
 ;;.V 2:$J:%UCN:2
 ;;I $$ZV["DSM",$$OS="VMS" D  Q
 ;;.I %UCI'["," S %UCI=%UCI_","_$P($ZU(0),",",2)
 ;;.X "I $ZC(%SETUCI,$P(%UCI,"","",1),$P(%UCI,"","",2))"
 ;---------------------------------------------------------------
 ;
 I $$ZV["GTM" D  Q
 .S $ZPROMPT=%UCI_">"
 .
 ;.S $ZGBL=$$GBL^%ZUCIMAP(%UCI)
 ;.S ^TEST(1)="KUKU"
 ;.I %UCI="MGR" S $ZROU=$$RTN^%ZUCIMAP("MGR") Q
 ;.S $ZROU=$$RTN^%ZUCIMAP(%UCI)_" "_$$RTN^%ZUCIMAP("MGR")
 ;.S $ZGBL=$$GBL^%ZUCIMAP(%UCI)
 ;;ZT "UNKNOWN SYSTEM"
 Q
 ;
PWD() ; GET CURRENT WORKING NAMESPACE
 ; /**
 ;  * Return mumps current UCI or NameSpace
 ;  * in cache return Namespace. in Openm return directory.
 ;  * in gtm return UCI "MLI" in msm return UCI
 ;  *
 ;  * example S MYUCI=$$UCI^%ZCAVV S GLO=$NA(^[MYUCI]W(JB))
 ;  */
 ;-----------------------------------------------------------
 N A
 I $$ZV["GTM" S A="MGR" Q A   ;; *** dima
 ;;I $$ZV["MVX" S A=$ZU(5)    ;; *** LEV
 ;;E  S A=$ZU(0)              ;; *** LEV
 S A=$TR(A,"_")
 Q A
 ;
OS() ;
 ; /**
 ;  * return Operating system type (above the mumps)
 ;  * example for linux and other unix "UNIX"
 ;  * for windows-nt and 2000 "NT"
 ;  * for vms "VMS"
 ;  * see also $$ZV
 ;  */
 ;--------------------------------------------------
 N SYS,ZV S SYS=$$SYS,ZV=$$ZV
 I SYS["Unix" Q "UNIX"
 I SYS["UNIX" Q "UNIX"
 I SYS["VMS" Q "VMS"
 I SYS["VAX DSM" Q "VMS"
 I SYS["MSM-PC" Q "DOS"
 I SYS["DSM" Q "DSM"
 I SYS["DTM" Q "DOS"
 I SYS["Windows NT" Q "NT"
 I SYS["Windows 95" Q "WINDOWS"
 I ZV="GTM",SYS["Linux" Q "UNIX"
 Q "UNKNOWN"
 ;
MGR() ;
 ; /**
 ;  * Return mgr UCI name
 ;  *
 ;  */
 ;-----------------------
 I $$NS Q "MGR"
 ;;I $$ZV["MVX" Q $ZU(12)
 I $$ZV["GTM" Q "MGR"
 ;;Q $ZU(1,0)            ;;*** LEV
 Q
 ;
NS() ; =1 IF NAMESPACE METHOD
 I $$ZV'["MVX" Q 0
 I $$OS="NT" Q 1
 I $$SYS?1"Cache".E Q 1
 Q 0
 ;
SYS() Q $ZV
 ;
 ;
 ;------------------------------------------------
 ;          Test labels for the examples         ;
 ;------------------------------------------------
 ;
TBLTEST ;
 W "NAME=id,TYPE=N",!
 W "NAME=first,TYPE=E",!
 W "NAME=last,TYPE=E",!
 W "NAME=address,TYPE=E",!
 W ">>>DATA",!
 W "1_sidney_Levy_Rechasim",!
 W "2_Yishai_Pinchover_Haifa",!
 W "3_Uri_Schor_Zichron Ya'akov",!
 W "4_Dima_Sandratski_Tel Aviv",!
 W "5_ddd_san_tel",!
 Q
 ;
MULTTEST(T) ;
 N I,J
 W "NAME="_$$H2U^%L1FRM("al")_",TYPE=H",!
 F I=1:1:T W "NAME="_$$H2U^%L1FRM($C(95+I))_",TYPE=N",!
 W ">>>DATA",!
 F I=1:1:T D
 . W I
 . F J=1:1:T W "_"_(I*J)_$$H2U^%L1FRM($C(95+J))
 . W !
 Q
 ;
SQRTEST; return arg^2
 Q:'$D(arg)
 W arg*arg
 Q
 
 
 
 
 
 
 
 

P1CAZIC
P1CAZIC(DAT) ; [ 30.09.14 07:24 ] [ 03.12.13 07:58 ] [ 08.05.13 13:38 ]
 N (DAT) D ^%L1C D ^P1IN
 S DT=$$^%L1DC(DAT,3)
 I $$WEBSRV^P4 S II=$O(^W4TRAN(901,99999),-1)
 ;;I '$$WEBSRV^P4 S II=$O(^TRAN1(901,99999),-1)
 S II=0
 S HZ="" F  S HZ=$O(^P1H(DT,HZ)) Q:HZ=""  D
 .Q:'$D(^P1HZ(HZ,"CB","V"))
 .S IND="" F  S IND=$O(^P1HZ(HZ,"CB","V",IND)) Q:IND=""  D ZIC(HZ,IND)
 Q
 ;
ZIC(HZ,IND) ;
 S II=+$O(^W4TRAN(901,9999),-1)+1
 S STRIN=$G(^P1HZ(HZ,"CB","V",IND,"STRIN"))
 I '$D(TVM) U 0 W !,HZ
 S STRBIT=$$STRINBIT(STRIN)
 ;;W "STRBIT="_STRBIT,!
 ;
 S ST=$$INOUT^P3INOUT1(STRBIT)
 S STA=$P(ST,"~",2)
 S ^P1CAZIC(HZ,IND)=STA
 I '$D(TVM) D
 .W " -- "_STA," ",$G(^KOD(+STA)),!
 .;;W "  ST="_ST,!
 I $L($P(ST,"~",5)) D
 .I '$D(TVM) D
 ..W " -- OK",!
 ..W "II="_II,!
 .I $$WEBSRV^P4 D  Q
 ..S S21=$$^P4TRAN($P(ST,"~",4),$P(ST,"~",5))
 ..;;S ^W4TRAN(901,II)=$P(ST,"~",5) Q
 .;
 .S ^TRAN1(901,II)=901_$TR($J(II,3)," ",0)_$E($P(ST,"~",5),7,500)
 Q ST
 ;
STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM) ;
 N (HZM,ER,STRIN,VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM)
 I ASHSUM<0 S ASHSUM=-ASHSUM
 S STRIN=""
 S KUP=901
 S PAY=$J($J(ASHSUM,2,2)*100,0,0)
 S SUGIS=1
 S SUGIS1=SUGIS
 S SUGAS=1
 S SUGMTB=1
 S SUGMRB=1
 S AUTHNO="0000000"
 S (P1,PC,PN)=0
 S (PF,PG,PH)=0
 S SUGBC=51
 ;
 D ^W4STRIN
 Q STRIN
 ;
 ;
STRINBIT(STRIN) ;
 N ER
 I STRIN="" S ER="NOSTRIN" Q ER
 S STRIN=$$PUTCA(STRIN,"F",0)
 S STRIN=$$PUTCA(STRIN,"G",0)
 S STRIN=$$PUTCA(STRIN,"H",0)
 S STRIN=$$PUTCA(STRIN,"D",5111,1,4)
 S STRIN=$$PUTCA(STRIN,"E","1111111")
 S STRIN=$$PUTCA(STRIN,"T","1116")
 N SUM S SUM=$P($$GETCA(STRIN,"C"),"*")
 I $G(SUMCA) S SUM=SUMCA*100 I SUM<0 S SUM=-SUM
 S STRIN=$$PUTCA(STRIN,"C",SUM)
 Q STRIN
 ;
GETCA(ST,LET)
 N A,A1,J S A=$P(ST,LET,2)
 S A1=""
 F J=1:1:$L(A) Q:$E(A,J)?1U  S A1=A1_$E(A,J)
 Q A1
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 ;
M ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
Z ;
 X %chista
 I '$$WEBSRV^P4 S %GET=" qieexq aee `l df " D N^%L1GET Q
 S %SAY=" ( qieexq aee ) i`xy` qihxk iekif " X %XMSGV
 S %GET=" dpnfd 'qn++3,70,HH#++8,E,I" D ^%L1GET I %S=""!(%TO="END") Q
 S HZ=%S
VW ;
 S MAC="^P1HZ("_HZ_",""CB"",""V"")"
 S %L1("T1")="  mekq  |        qihxk 'qn         | drepz 'qn "
 S %L1("TXT1")="$P(%NXS,""*"",6)\/$P(%NXS,""*"",2)\/$P(%NXS,""*"",3)"
 S %L1("BE")=6
 S %L1("EU")=4
 D ^%L1NU
 I FLAG'="" Q
 S ST=^P1HZ(HZ,"CB","V",INDEX)
 S %SAY=" "_$P(ST,"*",6)_" : mekq  "_$P(ST,"*",2)_" : qihxk 'qn "_$P(ST,"*",3)_" : drepz 'qn++16,75,HH" X %XMSG
 D IS1^%L1GET I 'YES G VW
 ;
 N TVM S TVM=""
 S ST=$$ZIC(HZ,INDEX)
 S STA=$P(ST,"~",2)
 I STA S %SAY=" "_$G(^KOD(+STA))_" "_STA_" :`id d`iby cew ! dxar `l dlert" X %XMSGV
 ;
 I 'STA,$L($P(ST,"~",5))  S %SAY=" ! dglvda drvea dlert" X %XMSGV
 S %GET="<ENTER>" D N^%L1GET X %chista
 G Z
 ;
VV ;
 D ^%L1C X %chista
VV0 R !!,"SUM :",ASHSUM Q:'ASHSUM!(ASHSUM="^")
VV1 R !!,"CARD NUMBER :",VIZ I VIZ=""!(VIZ="^") G VV0
 I VIZ'?1N.N!($L(VIZ)<7) D ER G VV1
 S YYMM=1611
 I YYMM'?4N,$E(YYMM,3,4)>12 D ER G VV1
VV3 R !!,"ID ( ^ - BACK ) :",ASHTZ I ASHTZ="^" G VV1
VV4 R !!,"CREDIT - 1, DEBET - 2 :",CRED I CRED="^"!(CRED="") G VV3
 S CVV2=2
 W !!,"WAIT ...",!
 ;
 S ST=$$ZC(VIZ,YYMM,ASHTZ,CVV2,ASHSUM,CRED)
 S STA=$P(ST,"~",2)
 I STA S %GET=" ERROR !" D N^%L1GET
 ;
 I 'STA,$L($P(ST,"~",5))  S %GET="ACTION IS SUCCESSEFULL" D N^%L1GET
 G VV
 ;
ZC(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,CRED)
 N (VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,CRED)
 I '$G(CRED) S CRED=2
 S II=+$O(^W4TRAN(901,9999),-1)+1
 S STRIN=$$STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM)
 S STRIN=$$PUTCA(STRIN,"E","1111111")
 S STRBIT=STRIN
 I CRED=2 S STRBIT=$$STRINBIT(STRIN)
 ;
 S ST=$$INOUT^P3INOUT1(STRBIT)
 S STA=$P(ST,"~",2)
 I '$D(TVM) D
 .W !," -- "_STA," ",$G(^KOD(+STA)),!
 .;;W "  ST="_ST,!
 I $L($P(ST,"~",5)) D
 .I '$D(TVM) D
 ..W !," -- OK",!
 ..W "II="_II,!
 .S S21=$$^P4TRAN($P(ST,"~",4),$P(ST,"~",5))
 Q ST
 ;
ER ;
 W *7,"  -- ERROR !",!
 Q

P1CHL
P1CHL ;  [ 16.01.04 11:35 ] [ 22.10.01  2:15 PM ] [ 003/24/00 12:31 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
BG K (NOSAY) D ^%L1C Q:$D(^P1HL1)
 I '$D(NOSAY) D
 .X %chista
 .S %SAY=" ... belhw znwdl oznd `p` " X %XMSGV
 S LKH="" F  S LKH=$O(^P1LHB(LKH)) Q:LKH=""  D
 .I '$D(NOSAY) U 0 W !,LKH
 .S HB="" F  S HB=$O(^P1LHB(LKH,HB)) Q:HB=""  D CRLH(LKH,HB,"^P1HL1")
 ;
 S MAC1="^P1HL1",MAC2="^P1HL2" D ^%S1GC1
 S LKH="" F  S LKH=$O(^P1HL1(LKH)) Q:LKH=""  D
 .S HZM="" F  S HZM=$O(^P1HL1(LKH,HZM)) Q:HZM=""  I $D(^P1HL2(LKH,HZM,"HSB"))!($G(^P1HL2(LKH,HZM))<58134) K ^P1HL2(LKH,HZM)
 Q
CRLH(LKH,HB,GLOB) ;
 N A S A=$G(^P1LHB(LKH,HB))
 S HZM1=$P(A,"\"),HZM2=$P(A,"\",2),DTH=$P(A,"\",8) D CR(LKH,HZM1,HZM2,HB,GLOB) D
 .S LK="" F  S LK=$O(^P1LHB(LKH,HB,LK)) Q:LK=""  S HZM1=$P($G(^(LK)),"\"),HZM2=$P($G(^(LK)),"\",2) D CR(LK,HZM1,HZM2,HB,GLOB)
 Q
CR(LKH,HZM1,HZM2,HB,GLOB) ;
 N A,N S N=$S(HZM1>1:HZM1-1,1:"") F  S N=$O(@GLOB@(LKH,N)) Q:N=""  Q:N>HZM2  D
 .S A=$G(^(N)) I A>DTH Q
 .I '$D(^P1HZ(N,"CB","ASR")) Q
 .S ^P1HL1(LKH,N,"HSB")=HB
 .K ^P1HL2(LKH,N)
 .S ^KLIN("H",HB,LKH,N)=""
 Q
CLEAR ;
 K ^P1HL2
 S LKH="" F  S LKH=$O(^P1HL1(LKH)) Q:LKH=""  D
 .S HZM="" F  S HZM=$O(^P1HL1(LKH,HZM)) Q:HZM=""  K ^P1HL1(LKH,HZM,"HSB")
 S N="" F  S N=$O(^KLIN("H",N)) Q:N=""  S A=$G(^(N)) K ^KLIN("H",N) S ^(N)=A
 Q
NOSAY S NOSAY="" G BG

P1CUT
P1CUT(PRINT,%CUT) ;  [ 26.03.01 12:49 AM ] [ 30.12.00  4:39 PM ] [ 001/30/00  1:18 PM ]
 Q:'$G(PRINT)
 I $G(%MDP("GWPC"))=80 S TXT=%CUT_$C(255) G P1
 I $D(CUTPRG) G PRG
 S TXT=$C(10,10,10,10,10)_%CUT_$C(10,10,10) ;$C(10)
P1 I PRINT=54,$$^%L1T2P(TXT) Q
 S ^[$$^%L1GLD]pc(PRINT,$ZP(^[$$^%L1GLD]pc(PRINT,""))+1)=TXT
 Q
PROGON(PRINT,%CUT) ;
PRG Q:'$G(PRINT)
 S TXT=$C(10,10,10,10,10)_%CUT
 I PRINT=54,$$^%L1T2P(TXT) Q
 S ^[$$^%L1GLD]pc(PRINT,$ZP(^[$$^%L1GLD]pc(PRINT,""))+1)=TXT
 Q

P1DBREST
P1DBREST ; [ 08.05.18 09:58 ] [ 07.05.18 17:19 ] [ 29.03.11 07:25 ] 
 D ^%L1C K ^P1DZ
 X %chista
 S %SAY=" ON LINE ieaibn mipezp qiqa xefgy " X %XMSGV
ZT S %YY=3 D ^%L1RNG I '$D(%L1D1) G END
 S DEF=$$DGIBDIR^P1NEWDAY
ZP S %GET="ieaib zvignl jxc cilwdl `p++5,70,HH#"_DEF_"++60,E,I"
 D ^%L1GET I %TO="END" G ZT
 S (P1DZ,^P1DZ)=%L1D2
 S DIRGIB=%S
 I $L(DIRGIB),$E(DIRGIB,$L(DIRGIB))'="/" S DIRGIB=DIRGIB_"/"
 ;
 D RESTKLZ(%L1D1)
 D RESTZ(%L1D1,%L1D2)
 D RESTT(%L1D1,P1DZ)
 ;
ZK D ^KLASSD
 ;
 U 0 S %GET=" <ENTER> ugl . dnlyed dlert " D N^%L1GET
END Q
 ;
RESTKLZ(%L1D1) ;
 N FL
 S FL=DIRGIB_"#KLZ"
 I $$^%L1ZOS(10,FL)>0 D
 .N A,DFL S A=$$^%L1FLP(FL),DFL=$P(A,"^",3) Q:DFL<%L1D1
 .S %SAY=" ... ze`lah xefgyl oznd `p " X %XMSGV
 .S A=$$^%L1FLP(FL) Q:'$P(A,"^",2)  Q:$P(A,"^",3)<%L1D1
 .C FL O FL:(READONLY:REWIND)
 .S $ZT="G C1"
 .F  U FL R A D
 ..I $E(A)="^" R B S @A=B Q
 .;
C1 .C FL ;;U 0 S %SAY=" ... mihixt belhw oekcrl oznd `p " X %XMSGV(1)
 .;;U 0 S %SAY=" ... zegewl belhw oekcrl oznd `p " D M6+2^P1KL X %XMSGV(1)
 Q
 ;
RESTZ(%L1D1,%L1D2) ;
 U 0 W " --- RESTZ",!
 N IER S IER=0
 F DT=%L1D1:1:%L1D2 D
 .S FL=DIRGIB_"#J"_$$^%L1DC(DT,2)
 .I $$^%L1ZOS(10,FL)<0 Q
 .U 0 S %SAY=" "_FL_" uaewn mipezp xefgy " X %XMSGV
 .C FL O FL:(READONLY:REWIND)
 .S $ZT="G C2"
 .U 0 W "FL="_FL,!!
CYC .F  U FL R A S ^P1DBREST(FL,"LAST")=A D
 ..I $E(A)="^" R B S @A=B Q  ; I A["P1HZ(",A'["," U 0 W "A="_A_"  B="_B,! Q
 ..I $E(A,1,3)="#K " D
 ...N ST
 ...S ST=$$SPA^%L1FRM($E(A,4,255))
 ...I ST'["(" K @ST Q
 ...I ST["P1HM" ;
 ...N ST1 S ST1="" S ST1=$P(ST,"(")_"("
 ...N ST2 S ST2=$P($P(ST,"(",2),")")
 ...N J F J=1:1:$L(ST2,",") D
 ....N IND S IND=$P(ST2,",",J)
 ....I $E(IND)'="""" S IND=""""_IND_""""
 ....S ST1=ST1_IND_","
 ...S ST1=$E(ST1,1,$L(ST1)-1)_")"
 ...K @ST1
C2 .
 .
 .S ^P1DBREST(FL)=$S($ZS'["-IOEOF"!'$D(^P1DBREST(FL,"LAST")):"ERR\",1:"OK\")_$H
 .I $ZS'["-IOEOF"!'$D(^P1DBREST(FL,"LAST")) S IER=IER+1 U 0 S %SAY=" ! "_IER_" "_FL_" uaewa d`iby" X %XMSGV(1) I IER<20 G CYC
 .C FL
 ;
 N LHB,LHB2,LTM
 S LHB=$O(^P1HB(99999999),-1)
 I $P($G(^P1HZ),"\",2)<LHB S $P(^P1HZ,"\",2)=LHB
 S LHB2=$O(^P1HB2(99999999),-1)
 I $P($G(^P1HZ),"\",4)<LHB2 S $P(^P1HZ,"\",4)=LHB2
 S LTM=$O(^P1TM(99999999),-1)
 I $G(^P1HZ)<LTM S $P(^P1HZ,"\")=LTM
 S LZ=$O(^Z(9999999),-1)
 I LZ S LZ1=$O(^Z(LZ,99999999),-1) I $G(^Z)<LZ1 S ^Z=LZ1
 Q
RESTT(%L1D1,P1DZ) S %GET=" `ay  ivaw ieaib zvignl jxc cilwdl `p++3,70,HH#"_^PATH_"++60,E,I"
 D ^%L1GET I %S=""!(%TO="END") Q
 S DIRSHV=%S
 I $L(DIRSHV),$E(DIRSHV,$L(DIRSHV))'="/" S DIRSHV=DIRSHV_"/"
 ;
ZC1 S %GET="jix`zl `ay ly zerepz xfgyl++9,70,HH#"_$$^%L1DC(P1DZ,1)_"++8,D,I++++ <ESC> - xfgyl `l "
 S DTR="" D ^%L1GET I %TO'="END" S DTR=$$^%L1DC(%S,3)
 K ^TRAN00 M ^TRAN00=^TRAN K ^TRAN
 ;
 F DT=%L1D1:1:P1DZ D RESTTR(DIRSHV,DT)
 Q
 ;
 ;
RESTTR(DIRSHV,DT) ;
 U 0 W "RESTTTR "_$ZD(DT,"DD.MM.YY"),!
 N FL,I,A
 S FL=DIRSHV_"#T"_$$^%L1DC(DT,2)_".901"
 I $$^%L1ZOS(10,FL)<0 Q
 S %SAY=" "_FL_" uaewn mipezp xefgy " X %XMSGV
 C FL O FL:(READONLY:REWIND)
 S $ZT="G C3^P1DBREST"
 N NTL S NTL=$O(^TRANL(9999999),-1)+1
 S I=0
 F  U FL R A I $L(A)>100 D
 .S I=I+1
 .I DT=$G(DTR) S ^TRAN(901,I)=A
 .S ^TRANL(NTL,901,I)=A
 ;
C3 I '$D(P1REST) S ^P1DBREST(FL)="OK\"_$H
 S $ZT=""
 N A2HZGT S A2HZGT("NODISP")="" D ^A2HZGT("^TRANL("_NTL_")")
 S $P(^TRANL(NTL),"^")=DT
 S $P(^TRANL(NTL),"^",2)=$P($G(^TEMP($P,"S","H")),"^")
 S $P(^TRANL(NTL),"^",4)=$P($G(^TEMP($P,"S","Z")),"^")
 K ^TEMP($P,"S")
 C FL
 Q
 ;
RESTASR ; 
 S JB=12206521
 S DT1=$$^%L1DC("030518",3)
 S DT2=$$^%L1DC("070518",3)
 ;
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(^P1H(DT,HZ)) Q:HZ=""  I HZ'<1,$D(^P1HZ(HZ,"CB","ASR")) D
 ..S NOM="" F  S NOM=$O(^P1HZ(HZ,"CB","ASR",NOM)) Q:NOM=""  D
 ...S A=$G(^(NOM))
 ...S HZM=HZ
 ...D ^W4GTVCH(A,"ASR")
 ...S ASR=+$P(A,"*",4)
 ...D ASR
 Q  ;
 ;
 ;
ASR ;
 N (JB,%ARG,%REM,HZM,A,LKAH,LKHN,LKHNH,BLIPR,ASR,TIP,TIPAS,HRA,HZMLK,P1TNOPR,TLUSH,KMTL,CIBVT,CIBCARD,CIBCID,CIBUID,CIBUIC,TSFMH,P3T,PRBIT,TBCARD,TBRECID,DT) D ^W4INP
 Q:'$D(ASR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN S DAT=$$^%L1DC(DT,2)
 I $$HZM^W4MSL(HZM) S DAT=$$^%L1DC($$TRH^W4HZMST(HZM),2)
 S KUP=901
 ;
 S %L1SCREF("N")=1,%SCRN=HZSCR,%L1SCREF("S")=$G(@$$^W4ORD@(HZM)) D ^W4SCREF
 S LKHN=$P(A,"*")
 ;
 I '$D(TIP) S TIP=$$TIP^W4HZMST(HZM)
 S TIP=TIP+$G(TIPAS)
 ;
 I '$G(ASR) Q
 ;
 ; ---- WRITE TO CLIENT REPORT
 I $G(LKHN)="" Q
 I $D(^P1EZL(LKHN)) S LKHN=^P1EZL(LKHN)
 I $D(@$$^W4GL("P1HL1")@(LKHN,HZM)) Q
 D
 .N HZM1 S HZM1=+$$HZM^W4ORD(HZM)
 .S @$$^W4GL("P1HL1")@(LKHN,HZM1)=$$^%L1DC(DAT,4)
 .S @$$^W4GL("P1HL2")@(LKHN,HZM1)=$$^%L1DC(DAT,4)
 .S @$$^W4GL("P1HL2I")@(HZM1,LKHN)=""
 .S @$$^W4GL("P1HL1I")@(HZM1,LKHN)=""
 ;
 S CUSN="" D  Q:CUSN=""
 .N (JB,%ARG,%REM,HZSCR,CUSN,DAT,HZM,LKHN,NMB,ASR) D ^W4IN
 .S SUM=ASR N ASR
 .S CODDOC="HZ",DATE=DAT,COD="0H",CUSN="" N DAT
 .I '$D(@$$^W4GL("P1EZL")@(LKHN)) S CUSN=LKHN
 .E  S CUSN=$G(@$$^W4GL("P1EZL")@(LKHN))
 .Q:CUSN=""
 .S NUMBER=HZM D ^W4KLINIT S ER=0 D ^W4KLUP I ER S CUSN="" Q
 .I CUSN'=LKHN D
 ..N GL S GL=$$^W4GL("LKH")
 ..I '$D(@GL@(LKHN)) Q
 ..S $P(@GL@(LKHN,2),"*",4)=$P($G(@GL@(LKHN,2)),"*",4)+SUM
 .Q
 ;
PRINT ;
 Q
 ;
 ;
FULLPAYM(STAM) ;
 I TSHL+TIP-SHUL-SHULA<.01&(TSHL>0)!(TSHL+TIP-SHUL-SHULA>-.01&(TSHL<0)) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

P1DHB
P1DHB ; DOCH HESBONIOT                           [ 07.02.06 09:10 ] [ 18.05.04 08:25 ] [ 19.06.03 15:03 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC) D ^%L1C,^P1IN
BG ;
 K  D ^%L1C,^P1IN S M(1)="d ` i v i"
 S M(2)="dlaw / qn zeipeayg"
 S M(3)="qn zeipeayg"
 S MAC="M" D ^%L2MENU G:%I'>1 END
 S REG=%I-1 X %chista D @REG G BG
1 ;-------
 K ^TEMPDH($P) S KOT=" dlaw / qn zeipeayg g""ec "
 S %SCRN="P1HBMK",%FNAME="" D A^%L1SC S FRST=1,%L1SCBEG=1
 S HMK=""
Z D GETF^%L1SC I %BS K ^TEMPDH($P) Q
 K ^VRM($J),^TEMPDH($P) S I=0,SUM=0
 ;------------ HESBONIOT MAS-KABALA
 S DD=D1-1 F  S DD=$O(^P1HBI(DD)) Q:DD=""  Q:DD>D2  D
 .N HZM,NCAB,SHUL,NMB,NAME,%SCRN,MZM,CHK,CA,SHULA,SUGT
 .S HB="" F  S HB=$O(^P1HBI(DD,HB)) Q:HB=""  D
 ..S HZM=+$G(^P1HB(HB)) S (SHUL,NMB,NAME)="" Q:'$D(^P1HZ(HZM))  Q:$G(^P1HZ(HZM,"S"))<2
 ..D GA^%L1SCREF(HZSCR,"^P1HZ(HZM)")
 ..I NMB'="" S NAME=$G(^LKH(NMB))
 ..S SUGT=$S($G(MZM):1,1:"")_$S($G(CHK):2,1:"")_$S($G(CA):3,1:"")_$S(SHULA:4,1:"")_$S($G(TL):5,1:"")
 ..I $G(MESHUM)!$G(ADSHUM),TSHL-SHULA<MESHUM!(TSHL-SHULA>ADSHUM) Q
 ..S I=I+1,^TEMPDH($P,I)=$$^%L1DC(DD,1)_"\"_HB_"\"_$J(TSHL-SHULA,2,2)_"\"_NMB_"\"_NAME_"\"_HZM_"\"_SUGT_"\@@"
 ..S SUM=SUM+(TSHL-SHULA)
 G PRINT
2 ;------------------ HESBONIOT ASHRAI
 K ^TEMPDH($P) S I=0,SUM=0
 S KOT="           zeipeayg g""ec "
 S %SCRN="P1HB",%FNAME="" D A^%L1SC S FRST=1,%L1SCBEG=1
 S HMK=""
 D GETF^%L1SC I %BS K ^TEMPDH($P) Q
HB ;
 S HB="",I=0,SMAM=0 F  S HB=$O(^KLIN("H",HB)) Q:HB=""  D
 .N STRING0,DATHB
 .S (STRING,NMB,STRING0)=$G(^KLIN("H",HB)) N ER S ER=0
 .I $G(MELKH),STRING<MELKH Q
 .I $G(ADLKH),STRING>ADLKH Q
 .;
 .I STRING["+" D  Q:ER  G HB1 ;------ OTOMAT
 ..I $G(VD)=2 S ER=3 Q
 ..N STRING0
 ..S STRING0=STRING,STRING=$P(STRING,"+") I '$D(^P1LHB(STRING,HB)) S ER=1 Q
 ..S DATHB=$P(^P1LHB(STRING,HB),"\",8)
 ..I DATHB<$$^%L1DC(DAT1,3)!(DATHB>$$^%L1DC(DAT2,3)) S ER=2 Q
 ..S SHUM=$P($G(^P1LHB(STRING,HB)),"\",4),NMB=STRING
 ..I STRING0'["+M" D  Q
 ...S RMAM=$$MAM^P1L(STRING,DATHB)
 ...S MAM=$J(RMAM*SHUM/(100+RMAM),2,2) Q
 ..S MAM=$$MAM(STRING,HB)
 .;
 .I STRING'["+",STRING'["^" D  Q:ER  ;------ JAD
 ..I $G(VD)=1 S ER=3 Q
 ..S NMB=STRING
 ..I '$D(^KLF(NMB,"H",HB)) S ER=1 Q
 ..S DATHB=$$^%L1DC($P(^KLF(NMB,"H",HB),"\",4),4)
 ..I DATHB<$$^%L1DC(DAT1,3)!(DATHB>$$^%L1DC(DAT2,3)) S ER=2 Q
 ..S SHUM=$P($G(^KLF(NMB,"H",HB)),"\",2)
 ..S MAM=$J($P($G(^KLF(NMB,"H",HB)),"\",3),2,2)
 .;
 .I STRING'["+",STRING["^MLY" D  Q:ER  ;------ MLY JASHAN
 ..I $G(VD)=1 S ER=3 Q
 ..S SHUM=0,(DATHB,NAME)=""
 ..N A S A=$G(@("^["""_^UCI("MLG")_"""]"_$P(STRING,"^",2))) I A="" S ER=1 Q
 ..S SHUM=$P(A,"*",10)
 ..S DATHB=$$^%L1DC($P(A,"*",15),3)
 ..S NMB=$P(STRING,"^")
 ..I DATHB<$$^%L1DC(DAT1,3)!(DATHB>$$^%L1DC(DAT2,3)) S ER=2 Q
 ..S MAM=$P(A,"*",10)-$P(A,"*",9)
 .;
HB1 .I NMB'="" S NAME=$G(^LKH(NMB))
 .S I=I+1,^TEMPDH($P,I)=$$^%L1DC(DATHB,1)_"\"_HB_$S(STRING0["+M":"M",STRING0["^MLY":"<",STRING0["+":"",1:"+")_"\"_SHUM_"\"_MAM_"\"_NMB_"\"_NAME_"\@@"
 .S SUM=SUM+SHUM,SMAM=SMAM+MAM
 ;
 S SLMAM=SUM-SMAM
 G PRINT
 Q
PRINT I '$D(^TEMPDH($P)) S %FNAME="" S %SAY=" ! mipezp oi` " X %XMSGV(1) Q
 S SUMH=I,SUM=$J(SUM,2,2) S %FNAME="SUMH" D V^%L1SC
 S %SC("MIUN")="" D GETFG^%L1SC K %SC
 S %GET="99 - qitcdl , 97 - EXCEL-l uaew oikdl " D N^%L1GET
 I %S=99!(%S=97) D
 .I %S=97 S %L1SCPC("EXCEL")=""
 .D KOT^KLPCTZ S %L1SCPC("ZLIST")=""
 .D ^%L1SCPC K %L1SCPC
 S %FNAME="" Q
 ;
END K ^TEMPDH($P) L  Q
 ;
HESB ;
 I HESB'=$TR(%MOLD," ","") S %SC("ER")=1 Q
 I %OLDTO="F9",HESB D HESB1 D A^%L1SC S %SC("ST")=1 Q
 Q
HESB1 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,HESB,NMB) D ^%L1C
 I HESB["+" D  Q  ;--- JADANI
 .S NAMEDOC=$TR($TR("qn zipeayg",%TES1,%TES2),%TEN,%THB),NRZD=2
 .S CODDOC="H",%OLDTO="",%SCRN="TZK"
 .S NUMBER=+HESB D ^KLINIT
 .D NUMBER^KLTZ
 ;
 I HESB["<" D  Q
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,HESB) D ^%L1C
 .N A,UCI,TD,HZM,SHANA,STR,TSTR
 .S A=$G(^KLIN("H",+HESB)) Q:A=""  Q:A'["^MLY"
 .S SHANA=$$^%L1IND(A,1),STR=$$^%L1IND(A,2),TSTR=$$^%L1IND(A,3)
 .S TD=$$^%L1IND(A,5) Q:TD=""
 .S UCI=$$^%L1UCI
 .;;D SAVE^%L1SVMEM
 .;;V 2:$J:+$ZU("MLY"):2,108:$J:200000:4
 .;;D REST^%L1SVMEM
 .S $ZROUTINES=^UCI("MLR"),$ZGBLDIR=^UCI("MLG")
 .S MRK=$$MRK^L2MRK(STR,TSTR)
 .I SHANA=""!(MRK="")!(STR="")!(TSTR="") G RST
 .S OPT=""
 .D VW^L2TZ(SHANA,STR,TSTR,2,TD)
RST .S $ZGBLDIR=^UCI("MGG"),$ZROUTINES=^UCI("MGR")
 .;;K  D REST^%L1SVMEM
 .
 ;
 I HESB["M" D  Q
 .N LKH,KLTZHB,HB S LKH=NMB S KLTZHB="",HB=+HESB Q:'$L(LKH)  D ^P1LHBM
 ;
 N LKH,KLTZHB,HB S LKH=NMB S KLTZHB="",HB=+HESB Q:'$L(LKH)  D ^P1LHB
 Q
MAM(STRING,HB) ;
 N MAM S MAM=0
 N N S N="" F  S N=$O(^KLIN("H",HB,STRING,N)) Q:N=""  D
 .N SHANA,MRK,TD,STR,TSTR,A
 .S SHANA=$P(N,"-"),MRK=$P(N,"-",2),TD=$P($G(^(N)),"\",3)
 .Q:SHANA=""  Q:MRK=""  Q:TD=""
 .S STR=$P($G(^[^UCI("MLG")]YZRN(MRK,10)),"*",3) Q:STR=""
 .S TSTR=$P($G(^[^UCI("MLG")]YZRN(MRK,10)),"*",4) Q:TSTR=""
 .S A=$G(^[^UCI("MLG")]MLY(SHANA,STR,TSTR,2,TD))
 .I $J($P(A,"*",9)*1.18,1,0)'=$J($P(A,"*",10),1,0) S ^A(MRK_"-"_TD)=A
 .S MAM=MAM+$P(A,"*",10)-$P(A,"*",9)
 Q MAM

P1EZR
P1EZR ;KARTIS TOSAFOT RAV-BRERA  [ 01.09.02 11:17 AM ] [ 25.01.01  8:01 AM ] [ 12.01.01 10:54 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,P1EZR)
 D CREZRI
BEG G:$D(PARDEL) END K (P1EZR) D ^%L1C,^P1IN
BEG0 S %SCRN="P1EZR",(%SCVA,%SCVG)=1 D A^%L1SC K %SCVA,%SCVG
 I $D(P1EZR("TVX")) S %L1SC(%SCRN,"MUZAR")=P1EZR("TVX")
BEG1 S FRST=0,%FNAME="MUZAR" D GETF^%L1SC G:%BS END
 I '$D(PARDEL),$D(^P1EZT(MUZAR)) S %GET=" <F9> - xey`l . zetqez zeveaw mr hixtk xcbed xak dfd xven " D N^%L1GET S:%TO="F9" %S=99 I %S'=99 Q:$D(P1EZR("TVX"))  G BEG1
 I '$D(PARDEL),$D(^P1EZA(MUZAR)) S %GET=" <F9> - xey`l . ziwqr dgex`kk xcbed xak dfd xven " D N^%L1GET S:%TO="F9" %S=99 I %S'=99 Q:$D(P1EZR("TVX"))  G BEG1
 I '$D(PARDEL),$D(^P1EZI(MUZAR)) S %GET=" <F9> - xey`l . zelibx zetqez mr hixtk xcbed xak dfd xven " D N^%L1GET S:%TO="F9" %S=99 I %S'=99 Q:$D(P1EZR("TVX"))  G BEG1
 I $D(^P1EZR(MUZAR)) D  G @LAB
 .D REST
 .D V^%L1SC,VG^%L1SC
ZB .S %GETIN=$S($G(PARDEL):0,1:1) S %GET=" 0 - lhal, 2 - qitcdl ,1 - okcrl#1" D N^%L1GET
 .I $G(%TO)="PGUP"!($G(%TO)="PGDW") S %SC("VIEW")=%TO S %L1SCBEG=1 D VG^%L1SC K %L1SCBEG G ZB
 .I %S=""!($G(%TO)="END") S LAB=$S($D(PARDEL)!$D(P1EZR("TVX")):"END",1:"BEG1") Q
 .I %S=0 D DS K ^TEMP($P,"EZR") S LAB=$S($D(PARDEL)!$D(P1EZR("TVX")):"END",1:"BEG") Q
 .I %S=1 S LAB="BEG2" Q
 .I %S=2 D ^%L1SCPC S LAB=$S($D(P1EZR("TVX")):"END",1:"BEG") Q
 D V^%L1SC,VG^%L1SC
 S %GET=" 99 - xg` qihxkn wizrdl " D N^%L1GET S:%TO="F9" %S=99 I %S=99 D
 .N MUZARNEW S MUZARNEW=MUZAR N MUZAR
ZP .S %GET=":(F7 - dbvd) dwzrdl hixt cew#5" D N^%L1GET Q:(%TO="END")
 .I %TO="F7" D HZG G:FLAG'="" ZP G BDK
 .Q:%S=""  S MUZAR=%S
BDK .I '$D(^PAR(MUZAR)) S %SAY=" ! dfk hixt oi` " X %XMSGV(1) G ZP
 .I '$D(^P1EZR(MUZAR)) S %SAY=" dfk xven qihxk oi` " X %XMSGV(1) G ZP
 .D REST
BEG2 S %FNAME="MUST",FRST=1 D GETF^%L1SC Q:$D(P1EZR("TVX"))&%BS  G:%BS BEG
 S %L1SCBEG=1,%SC("MOVE")=1 D GETFG^%L1SC
 D IS2^%L1GET I 'YES K ^TEMP($P) Q:$D(P1EZR("TVX"))  G BEG
 D SAVE Q:$D(P1EZR("TVX"))  G BEG1
 ;
REST ;
 I %OLDTO="F9" D HZG S %OLDTO="" Q
 N N,I,EM,NOK Q:$G(MUZAR)=""
 S N="",NOK=0 F  S N=$O(^P1EZR(MUZAR,N)) Q:N=""  I ^(N)'?1N.N S NOK=1
 S I=0 K ^TEMP($P,"EZR")
 S N="" F  S N=$O(^P1EZR(MUZAR,N)) Q:N=""  D
 .S I=$S('NOK:^(N),1:I+1)
 .S ^TEMP($P,"EZR",I)=N_"\"_$$SHEM^P1P(N) ;***
 S MUST=$S($G(^P1EZR(MUZAR)):"k",1:"l")
 Q
BDIKA ;
 N PRTSF
 I %OLDTO="F9" N PAR S PAR=PARIT D ^%L1CALL("P1PARI",%SCRN,"PAR") S %SC("ST")=1 Q
 I %OLDTO="F6"!(%OLDTO="F7") S PRTSF=1 D VIEW^P1EZM("^TEMP($P,""EZR"")") Q
 Q:PARIT=""
 N I F I=1:1 Q:'$D(^TEMP($P,"EZR",I))  I PARIT=$P(^(I),"\"),I'=SH S %SAY=" qihxka zniiw xak ztqez " X %XMSGV(1) S %SC("ER")=1 Q
 I PARIT=MUZAR S %SAY=" hixt = xven " X %XMSGV(1) S %SC("ST")=1 Q
 I $D(^P1EZA(PARIT)) S %SAY=" ! ziwqr dgex`k xcbed xak "_PARIT_" hixt " X %XMSGV(1) S %SC("ST")="ER" Q
 I $D(^P1EZT(PARIT)) S %SAY=" ! zetqez zeveaw mr hixtk xcbed xak "_PARIT_" hixt " X %XMSGV(1) S %SC("ST")="ER" Q
 I $D(^P1EZI(PARIT)) S %SAY=" ! zetqez mr hixtk xcbed xak "_PARIT_" hixt " X %XMSGV(1) S %SC("ST")="ER" Q
 I $D(^P1EZR(PARIT)) S %SAY=" ! dxixa-ax zetqez mr hixtk xcbed xak "_PARIT_" hixt " X %XMSGV(1) S %SC("ST")="ER" Q
 Q
SAVE ;
 N MH,PARIT,I
 D DS S ^P1EZR(MUZAR)=(MUST="k")
 F I=1:1 Q:'$D(^TEMP($P,"EZR",I))  D
 .S PARIT=$P(^(I),"\") Q:PARIT=""
 .S MH=$P(^(I),"\",3)
 .S ^P1EZR(MUZAR,PARIT)=I,^P1EZRI(PARIT,MUZAR)=I
 Q
DS N N S N="" F  S N=$O(^P1EZR(MUZAR,N)) Q:N=""  K ^P1EZRI(N,MUZAR)
 K ^P1EZR(MUZAR)
 Q
HZG S FLAG="" S MAC="^P1EZR" K %L1 S %L1("EU")=1,%L1("BE")=6
 S %L1("TXT1")="$$SHEM^P1P(%NXN)<>20\/%NXN<>8"
 D ^%L1NU I FLAG'="" S %SC("ST")=1 Q
 S MUZAR=INDEX,MUZAR1=$$SHEM^P1P(MUZAR)
 Q
CREZRI ;
 I $D(^P1EZRI)<10 D
 .N N,N1 S N=""  F  S N=$O(^P1EZR(N)) Q:N=""  D
 ..S N1="" F  S N1=$O(^P1EZR(N,N1)) Q:N1=""  S ^P1EZRI(N1,N)=""
 Q
END K ^TEMP($P,"EZR")
 Q

P1FGIB
P1FGIB(STAM) ; [ 15.09.05  1:19 PM ] [
 I '$D(^P1DZ("J")) D P1DZJ^P1NEWDAY
 Q ^P1DZ("J")

P1FZ
P1FZ(P1DZ) ; [ 04.02.01 10:20 AM ] [ 05/23/98  1:24 PM ] [ 05/22/98 11:05 AM ]
 Q $G(^Z)+1
 ;--------------------------------- OLD --------
 N LZ,Z,N S LZ=$G(^Z) I 'LZ Q 1
 I '$D(^Z(P1DZ)) Q LZ+1
 S N="",Z=0 F  S N=$O(^Z(P1DZ,LZ,N)) Q:N=""  I ^(N)["- Z" S Z=1 Q
 I Z Q LZ+1
 Q LZ

P1GS
P1GS ; [ 12/21/94  7:21 PM ]
 D ^%L1C,^P1IN X %chista
 S %SAY=" mivaw zxiny " X %XMSGV
 ;D IS^%L1GET Q:'YES
 S NM="SAVEP"
 O NM:(WRITE:NEWVERSION)
 S %DAT=$ZD(+$H,"MM/DD/YEAR") S %TIM=$ZD($H,"24:60")
 W %TIM1_"  "_%DAT1,!!
 F I=1:1 S T=$T(GLB+I) Q:T=""  Q:T?1" Q".E  S REF=$P(T,";",2) I REF'="" D
 .S:$E(REF)'="^" REF="^"_REF U 0 W !,REF U NM
 .S REF=REF_"("""")"
 .F J=1:1 S REF=$Q(@REF) Q:REF=""  W REF,!,@REF,! D:'(J#200)
 ..U 0 W "." U NM
 .W "*",!,"*",!
 W "**",!,"**",!!
 C NM
 S %GET="<ENTER> ywd . "_$$^%L1ZOS(14)_":"_$$^%L1ZOS(11,$$^%L1ZOS(14))_"\SAVEP  : DOS-a uaew my "
 D N^%L1GET
 Q
GLB ;
 ;KL;
 ;KLF;
 ;KLIN;
 ;FILE;
 ;NAME;
 ;LEV;
 ;P1CHB;
 ;P1EZ;
 ;P1EZL;
 ;P1EZP;
 ;P1H;
 ;P1HB;
 ;P1HZ;
 ;P1L;
 ;P1LHB;
 ;P1MVC;
 ;P1MVCL;
 ;P1TM;
 ;P1TZ;
 ;PAR;
 ;TBAK;
 ;TOT;
 Q ;

P1GTVCH
P1GTVCH(GLBL,SUG) ;       [ 15.07.09 15:54 ] [ 16.12.05 11:01 ] [ 06.04.05 16:35 ]
  ; GLBL - DIRECT REFERENCE
  ; 1   2    3     4    5    6    7  8  9  10 11   12     13     14    15    16     17    18    19    20    21    22   23   24   25     27
V ;VTS*NCA*NISKA*SUG21*SUG1*CAVT*CAV*P1*PN*PC*FLP*AUTHNO*MIAUTH*TKFCA*SIBA*OFENCA*SUGMTB*KHVCA*HUZCA*SHEMCA*MOAD*SUGI*ASHTZ*CVV2*CVV4**TIPCA
CH ;CHS*NCHECK*TZ*BSN*HESH*DATP*TIPCH****FLP
HRA ;HRA
    ; 1    2     3    4   5    6    7      8    9    11   12    13     14    15     16     17     18     19    20
ASR ;LKHN*LKAH*LKHNH*ASR*HRA1*LKHR*HZMLK*TLUSH*KMTL**FLP*LKHN1*LKHR1*CIBVT*CIBCARD*CIBCID*CIBUID*CIBUIC*TSFMH*TIPAS*
 N I,ST S ST=$P($T(@SUG),";",2)
 F I=1:1:$L(ST,"*") I $L($P(ST,"*",I)) S @$P(ST,"*",I)=$P(GLBL,"*",I)
 Q
TL ;MSPTL*TLL
 N I,ST S ST=$P($T(@SUG),";",2)
 F I=1:1:$L(ST,"*") I $L($P(ST,"*",I)) S @$P(ST,"*",I)=$P(GLBL,"*",I)
 Q
PUT(GLBL,SUG) ;--- GLBL - INDIRECT REFERECE
 N I,ST S ST=$P($T(@SUG),";",2)
 F I=1:1:$L(ST,"*") I $L($P(ST,"*",I)) S $P(@GLBL,"*",I)=$G(@$P(ST,"*",I))
 Q

P1HODAA
P1HODAA ; [ 03.01.06 10:42 ] [ 04/16/99  1:10 PM ] [ 02/17/99  6:40 PM ]
 ;  IF MISP="D" - KOTERET TAHTOTNA ( FROM ^P1KOTD )
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C,^PLUINP,MDP^P1PC
BG K ^TEMP($P,"HD")
 S %SCRN="P1HODAA",(%SCVA,%SCVG)=1 D A^%L1SC K %SCVA,%SCVG
 S ^SCR(%SCRN,"G","MAX")=10
 ;;I $G(MISP)="D" S ^SCR(%SCRN,"G","MAX")=5 G M ;-- KOTERET TAHTONA
 I $G(MISP)="D" S ^SCR(%SCRN,"G","MAX")=25 G M ;-- KOTERET TAHTONA
 S FRST=0,%FNAME="MISP" D GETF^%L1SC I %BS G END
 I MISP="" G END
M S N="" F I=1:1 S N=$O(^P1HOD(MISP,N)) Q:N=""  S ^TEMP($P,"HD",I)=^P1HOD(MISP,N)
 D:MISP'="D" VG^%L1SC S %FNAME="MISP1" D GETF^%L1SC G:%TO="END" PC
G S %L1SCBEG=1 D GETFG^%L1SC
PC I MISP'="D" S %GET="99 - qitcdl" D N^%L1GET I %S=99 D
 .S %GETIN=1,%GET=" : miwzrd zenk " D N^%L1GET Q:%S<1!(%TO="END")  S KAMET=%S
 .L ^[$$^%L1GLD]pc(PRINT):2
 .F IT=1:1:KAMET D
 ..F J=1:1 Q:'$D(^PL("ESEK",J))  D PCST(^(J))
 ..S %TIM=$ZD($H,"24:60") D PCST(%TIM_" : dry "_$$^%L1DC($H,1)_" : d`ved jix`z")
 ..S TXT="" D S1
 ..S TXT=$TR($J("",GWPC)," ","*") D S1
 ..S TXT="" D S1
 ..F I=1:1 Q:'$D(^TEMP($P,"HD",I))  D
 ...N ST,ST1,ST2
 ...D PCST(^TEMP($P,"HD",I))
 ..S TXT="" D S1
 ..S TXT=$TR($J("",GWPC)," ","*") D S1
 ..D ^P1CUT(PRINT,%MDP("CUT"))
 .L
 I MISP="D" S %GETIN=2,%GET=" 0 - rval `l ,2 - rval ,1 - owzl " D N^%L1GET G M1:%S=2,END:%S=0,G
 S %GETIN="k",%GET="? (l/k) dlaha drced xenyl " D N^%L1GET
 G:'(%S="k"!(%S="F")!(%S="Y")) BG
M1 K ^P1HOD(MISP) F I=1:1 Q:'$D(^TEMP($P,"HD",I))  S ^P1HOD(MISP,I)=^(I)
 S ^P1HOD(MISP)=MISP1 G:MISP'="D" BG
END K ^TEMP($P,"HD") Q
 ;
BDIKA ;
 N L,J S L=$L($P(HODAA,"#")) F J=2:1:$L(HODAA,"#") S L=L+($S('(J#2):2,1:1)*$L($P(HODAA,"#",J)))
 I L>38 S %SAY=" ! dxeya  zeize` icin xzei " X %XMSGV(1) S %SC("ST")=1
 Q
PCST(ST) ;
 S %L1STPC("RIGHT")="",%L1STPC("NOSHP")=""
 D ^%L1STPC(ST,"^[$$^%L1GLD]pc(PRINT)","%MDP")
 Q
S1 ;
 S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=TXT
 Q

P1IN
W4IN ; INIT      [ 26.10.09 10:38 ] [ 21.03.09 05:19 ] [ 11.11.08 04:02 ]
 N GLPRM,GLPL
 S MRK=$G(@$$^W4GL("MERKAZ")) I 'MRK S MRK=0
 S P1DZ=$$^W4DZ
 D GLPRM,GLPL
 S DSH=$G(@GLPRM@("DSH"))
 S RMAM=$G(@GLPRM@("MAM"),15.5)
 S HZSCR=$G(@GLPRM@("HZM",+$G(JB)))
 I HZSCR="" S HZSCR=$G(@GLPRM@("HZM"))
 I HZSCR="" S HZSCR="P1HZMS" ;$S(%ENGLISH:"P1HZME",1:"P1HZMS")
 I $G(@GLPRM@("MTAW")),HZSCR="P1HZMS" S HZSCR="P1HZTA"
 I $G(@GLPRM@("SD")),HZSCR="P1HZMS" S HZSCR="P1HZMS1"
 S MISHL=$G(@GLPRM@("MSL"))
 S PATHM=$G(@GLPL@("PATHM"))
 S FLAGSHVA=+$G(@GLPRM@("SHVA"))
 Q
GLPRM ;
 S GLPRM=$$^W4GL("P1PRM")
 Q
GLPL ;
 S GLPL=$$^W4GL("PL")
 Q
P1DZ(STAM) ;
 Q $$^W4DZ

P1IR1
P1IR1(PORT) ;NEW PROGRAM       [ 29.09.06 14:43 ] [ 07.09.06 15:28 ] [ 06.09.06 16:27 ]
 ;;;I $D(^STLOOP("PC")) K ^flag(253) Q
 ;;;
 S HZSCR="P1HZMS",ZT=$ZT,BEGIN=1
 S (HZM,HZMOLD)="" ;;^zms($P)="^P1POP"
BG N (BEGIN,ZT,HZM,HZMOLD,PATH,PATHM,PORT,TS0,TSS,DGLE,PORT1) D ^%L1C,^P1IN,^%L1TS
 S ^P1PRM("HZM",$P)="P1HZMS",PORT1=@$$^W4DEV@(PORT)
 S IRN=240+PORT
 S $ZT="G ERR"
 I $G(^flag(IRN)) Q
 O PORT1::2  ;E  Q
 U PORT1
 S MLZR0="",%SC("ST")="",%SC("ER")="",(%OLDTO,%MOLD)="",SH=1
 S BL=" " F I=1:1:23 S BL=BL_" "
 S LIN=24,LIN1=2 S:PORT=1 LIN=10,LIN1=11
 I '$G(^flag(IRN)) S ^flag(IRN)=$J
 D EXEC
 Q
EXEC ;
 W $C(24) D MLZR01
1 I '$D(P1HZOP) D
 .N N S N="" F  S N=$O(^FLAG(N)) Q:N=""  I ^(N)=IRN K ^(N)
 U PORT1
 I $G(NMB),$G(^FLAG(NMB))=IRN K ^FLAG(NMB)
 S (%S,MLZR0,MLZR1,MKBL,TXT,NMB,PAR,FLGT,TSHL,ODEF,RZN,SOAD,KAM,HRP)=""
 I PORT=1 D W1(LIN),W1(LIN1)
 S TXT=": xvln" D W(TXT,LIN)
 D R(TXT,LIN,5) G:(%S="") 1
 S MLZR0=%S
 D MLZR0 I TXT'="" G 1
 S MLZR1=$RE($E($RE(MLZR1),1,8-$L(%S)))
 S TXT=MLZR1_" "_%S_" : xvln" D W(TXT,LIN)
 I $D(^P1TKT("KP",MLZR0)) G 5
2 S TXT=":ogley",%S="" D W(TXT,LIN1)
 D R(TXT,LIN1,3)
 I %S="" D  G:(%S=52) 2
 .D ^P1IRNM N II
 .F II=1:1:52 Q:'$D(^VRM($J,II))
 .S %S=II I %S=52 D  Q
 ..S TXT1="zeiept     ",TXT="zepgley oi`  "
 ..D W(TXT,LIN),W(TXT1,LIN1) H 1
 S NMB=%S I $L(%S)>3 G 2
 I %S,'$D(^LKH(%S)) G 2
 D NMB I %SC("ST")=1!(%SC("ER")=1) G 2
 I $G(HZM),$L($$NMB^P3HZMST(HZM))>3 G 2
 K %SC("ST"),%SC("ER")
 S ^FLAG(NMB)=IRN
 I MLZR0'=MKBL,HZM'="ycg",MKBL'="" D  ;G:HZM="ycg" 3 ;*** LEV ???
 .S MLZR0=MKBL,MLZR1=$G(^NAME(MLZR0,1))
 .S MLZR1=$RE($E($RE(MLZR1),1,9-$L(%S)))
 I HZM="ycg" S MKBL=MLZR0,$P(^THZ(IRN,HZM),"\",18)=MKBL,SOAD=1 G 3
 G A211
 ;
A2 U PORT1
 I +$G(^PLUK(PORT,"HSB"))=0 G A21
 S TXT="B-oeayg,A-siqedl" D W(TXT,LIN)
 S TXT="D-minelyz" D W(TXT,LIN1)
 S CD=1
 D R(TXT,LIN1,CD)
 I %S="" G 1
 I '$F("ABD",%S) G A2
 S OPT=%S
 I OPT="B" D PUTHSB G 1
 I OPT="D",HZM'="ycg" S (MZM,CA,ODEF,ITRA)="" D P1T G:(FLGT>0) 1 G A2
A211 I HZM,$L(NMB)<4,$D(^P1HZ(HZM))=11,($G(^P1HZ(HZM,"S"))'>1) D HEADPR
 G 3
A21 U PORT1
 S TXT=$J(TSHL,2,2)_" :melyzl" D W(TXT,LIN)
 S TXT="B-oeayg,A-siqedl" D W(TXT,LIN1)
 S CD=1
 D R(TXT,LIN1,CD)
 I %S="" G 1
 I '$F("AB",%S) G A21
 S OPT=%S
 I OPT="B" D PUTHSB G A21
 I HZM,$L(NMB)<4,$D(^P1HZ(HZM))=11,($G(^P1HZ(HZM,"S"))'>1) D HEADPR
3 ;
 S SOAD=1
 S TXT=HZM_"  "_NMB_" :ogley" D W(TXT,LIN)
 S TXT=": hixt" D W(TXT,LIN1)
A3 S CD=8
 D RP(TXT,LIN1,CD)
 I %S="",$D(^THZ1(IRN)) D PUT,HZMPR G 1
 I %S="",'$D(^THZ1(IRN)) D:DGLB=1 HEADEP,CUT G 1
 I %S="D" D BITULP G A3
 S PAR=$P(%S,"*",1),KAM=+$P(%S,"*",2)
 I PAR="A" D 3^P1POP G A3
 D PAR S TXT=": hixt"
 I %SC("ER")=1 W *7 S TXTE="* "_TXTE_PAR_" *",TXTE=$RE($E($RE(TXTE),1,16)) D W(TXTE,LIN),W(": hixt",LIN1)
 I %SC("ER")=2 W *7 S TXTE=$RE($E($RE(TXTE),1,16)) D W(TXTE,LIN),W(": hixt",LIN1) S %SC("ER")=1
 G A3
5 ;
 K ^THZ(IRN),^THZ1(IRN)
 S NMB=^P1TKT("NMB"),SOAD=1,HZM="ycg",MKBL=MLZR0,TSHL="",SH=1
 I $G(ZMANK)?.P S %TIM=$ZD($H,"24:60") S ZMANK=$$^%L1DC($H,1)_"  "_%TIM
 I '$G(DATK) S DATK=$$^%L1DC(P1DZ,1)
 S ^THZ(IRN,HZM)=NMB_"\\\"_ZMANK_"\\\\\"_"0"_"\\\\\\\\\"_MKBL_"\\\\\\"_1_"\\\\\"_DATK
 S ^THZ(IRN,HZM,"HR2")="\\"
 S SOAD=1,PAR1=$P(^PAR(^P1TKT("PAR")),"*"),PAR=^P1TKT("PAR")
 S TXT=$E(PAR1,1,16) D W(TXT,LIN)
 S TXT=" :mekq" D W(TXT,LIN1)
 S CD=7
 D RP(TXT,LIN1,CD)
 I %S="" G 1
 S SHUM=$P(%S,"*",1),KAM=+$P(%S,"*",2),MH=SHUM S:KAM<1 KAM=1
 S ^THZ1(IRN,1)=^P1TKT("PAR")_"\\"_PAR1_"\"_$J(MH,2,2)_"\"_KAM_"\\"_$J(SHUM*KAM,2,2)_"\\\\"     ;"_"@@"
 S ITRA=SHUM*KAM,TSHL=ITRA,CA=0   ;D PUT
 S $P(^THZ(IRN,HZM),"\",11)=$J(TSHL,2,2) D PUT
A5 S TXT=$J(ITRA,2,2)_" :melyzl" D W(TXT,LIN)
 U PORT1 D MEZUMAN
 I RZN>0,MZM>0 S TXT=" ! witqn `l " D W(TXT,LIN1) H 1 S MZM=0,RZN=0 G A5
 S LAB="TLTKT" D ^P1PCTKT(ITRA)
 G 5
 Q
PUTHSB ; - HOZAAT HESHBON
 K HSBENG
 S TXT=" glyp oeayg"
 S P1HZHB1=1,SHM="HB1",ITS=3,IET="ETHB1" K P1HZTM,P1HZHB D P1^P1HZTMI K P1HZHB1
 S ^P1HZ(HZM,"HSBENG")=""
 Q
P1T ;
 I '$D(^PLUK(PORT,"HSB")),'$G(^P1HZ(HZM,"S")) D W("! mlyl oi`",LIN1) H 1 Q
 S FLGT=""
 S ITRA=TSHL-MZM-CA
 U PORT1
 S TXT=$J(ITRA,2,2)_" :melyzl" D W(TXT,LIN)
 S TXT="B-`""k ,A-dtwd"
 D W(TXT,LIN1),R(TXT,LIN1,1)
 I %S="" Q
 I '$F("AB",%S) G P1T
 S OPT1=%S
 I OPT1="A" D HAKAFA Q:(FLGT=1)  G P1T
 I OPT1="B" D CA Q:(FLGT=2)  G P1T
 Q
MEZUMAN ;
 S TXT=" : onefn" D W(TXT,LIN1)
 S CD=$L(ITRA)+2,TXT=" : onefn"
 D R(TXT,LIN1,CD)
 I %S="" Q
 S MZM=%S
 S MZMN1=$J(MZM,2,2),TXT=MZMN1_" : onefn"
 D W(TXT,LIN1)
 S ODEF=0,TIP=0
 S SHUL=$G(MZM)+$G(CHK)+$G(CA)+$G(TL)
 I MZM<ITRA S RZN=ITRA-MZM S:(RZN<.3) RZN=0 Q:(RZN>0)
 I MZM>ITRA,ITRA>0 D
 .S ODEF=$J(MZM-ITRA,2,2)
 .S TXT=MZMN1_" :onefn"
 .D W(TXT,LIN)
 .S TXT=ODEF_" :scer"
 .D W(TXT,LIN1) H 1
 .S SHUL=SHUL-ODEF
 D ^P1IN S DAT=$$^%L1DC($$^%L1DC(P1DZ,1),2)
 I '$G(NCAB),$G(^P1HZ(HZM,"S"))'>1,$G(SHUL)+$G(SHULA)'<TSHL S NCAB=$P($G(^P1HZ),"\",2)+1 D
 .I $D(^P1HZ(HZM,"ETHBL")),$G(^P1HZ(HZM,"S"))'>1 S NCAB=$G(^P1CB,1000000)+1
 .I $D(^P1HZ(HZM,"ETHB")) S NCAB=^("ETHB")
 S:'SHUL NCAB=""
 S ^P1HZ(HZM,"CB")=NCAB_"\"_$S(ODEF>0:ITRA,1:MZM)_"\"_$G(CHK)_"\"_$G(CA)_"\"_$G(SHULA)_"\"_P1DZ_"\"_$H_"\"_$J(ODEF,2,2)_"\"_$G(TL)_"\"_$G(TIP)_"\"_$G(ODEFTL)_"\"_$G(TLN)_"\"_$G(HNHTL)
 S ^THZ(IRN,HZM,"CB")=^P1HZ(HZM,"CB")
 S $P(^P1HZ(HZM),"\",12)=SHUL
 I 'CA D PRINT I 1
PZ1 E  D CA1   ;S %S=4 D PZ1^P1TI
 S FLGT=1
 Q
HAKAFA ;
 S (LKHN,ASRN,ASR,ITRAS,HZMLK)=""
 S TXT=" :gewl" D W(TXT,LIN)
 S CD=10
 D R(TXT,LIN,CD)
 I %S="" Q
 S LKHN=%S
 I '$D(^LKH(LKHN)) S TXT="! miiw `l gewl" D W(TXT,LIN1) H 2 Q
 S TXT=$E($$LKH^P1L(LKHN),1,16) D W(TXT,LIN)
 I '$$ISCR^P1L(LKHN) S TXT=" ! dtwdl xey` oi` " D W(TXT,LIN1) H 2 Q
 S ITRAS=$S('$D(^P1EZL(LKHN))!'$G(^P1PRM("LIMIT")):$$ITRA^P1L(LKHN),1:$G(^P1LIM(LKHN,$$YYMM^P1HZ(P1DZ))))
 S TXT=$J(ITRA,2,2)_" : dtwd" D W(TXT,LIN1)
 S CD=$L(ITRA)+2,TXT=" : dtwd"
 D R(TXT,LIN1,CD)
 I %S=0 Q
 S:%S="" %S=ITRA S ASR=%S
AS1 I $G(LKHN),$D(^P1EZL(LKHN)),$G(^P1PRM("LIMIT")),$$GDCR^P1L(LKHN)>.1 D  Q:$G(%SC("ST"))
 .N YYMM S YYMM=$$YYMM^P1HZ(P1DZ)
 .I ASR+$G(^P1LIM(LKHN,YYMM))>$$GDCR^P1L(LKHN) S TXT=" ! dxwz lrn " D W(TXT,LIN1) H 1 S %SC("ST")=1 Q
 I $$GDCR^P1L(LKHN)>.1,'$D(^P1EZL(LKHN)),$$ITRA^P1L(LKHN)+ASR>$$GDCR^P1L(LKHN) S TXT=" ! dxwiz lrn " D W(TXT,LIN1) H 1 S %SC("ST")=1 Q
 I $G(^P1EZL(LKHN)),$$GDCR^P1L(^P1EZL(LKHN))>.1,ASR+$$ITRA^P1L(^P1EZL(LKHN))>$$GDCR^P1L(^P1EZL(LKHN)) D  S %SC("ST")=1 Q
 .S TXT=" ! dxwz lrn " D W(TXT,LIN1) H 1 S %SC("ST")=1 Q
 S ASR1=$J(ASR,2,2),TXT=ASR1_" : dtwd"
 D W(TXT,LIN1)
 I ASR<ITRA S RZN=ITRA-ASR S:(RZN<.3) RZN=0 Q:(RZN>0)
 ;I ASR>(TSHL-SHUL-SHULA-LKHNH+$G(TIP)),$G(^P1PRM("ASRIGUL")) S HNH1=-$J(ASR-TSHL+SHUL+SHULA+LKHNH-$G(TIP),2,2),TSHL=TSHL0-HNH-HNH1 D V Q
 ;I ASR>(TSHL-SHUL-SHULA-LKHNH) D  Q
 .S %GET="<ESC> - lhal , 2 - xign ztqezl , 1 - tihl "_$J(ASR-TSHL+SHUL+SHULA+LKHNH,7,2)_" scer xiardl " D N^%L1GET I %S'=1,%S'=2 Q
 .I %S=1 S TIP=ASR+SHUL+SHULA-TSHL+LKHNH Q
 .S HNH1=-$J(ASR-TSHL+SHUL+SHULA+LKHNH-$G(TIP),2,2),TSHL=TSHL0-HNH-HNH1 D V Q
 S ODEF=0,TIP=0,HNH1=0
 S SHUL=$G(MZM)+$G(CHK)+$G(CA)+$G(TL)+$G(ASR)
 I ASR>ITRA,ITRA>0 D  I %SC("ST")=1 Q
 .;S TXT="icn lecb mekq " D W(TXT,LIN1) H 1 S %SC("ST")=1 Q
 .S ODEF=$J(ASR-ITRA,2,2),TXT=ODEF_" :scer" D W(TXT,LIN)
 .S TXT=" 2-xignl,1-tihl" D W(TXT,LIN1),R(TXT,LIN1,1) I %S=1 S TIP=ODEF,ODEF="" Q
 .I %S=2 S HNH1=-ODEF,ODEF="" Q
 .S SHUL=SHUL-ODEF,MZM=-ODEF Q
 ;I $$MZM^P1L(LKHN) S TXT=" :oinfn",CD=7 D W(TXT,LIN),R(TXT,LIN,CD) S HZMLK=%S
 D ^P1IN S DAT=$$^%L1DC($$^%L1DC(P1DZ,1),2)
 ;I '$G(NCAB),$G(^P1HZ(HZM,"S"))'>1,$G(SHUL)+$G(SHULA)'<TSHL S NCAB=$P($G(^P1HZ),"\",2)+1 D
 .I $D(^P1HZ(HZM,"ETHBL")),$G(^P1HZ(HZM,"S"))'>1 S NCAB=$G(^P1CB,1000000)+1
 .I $D(^P1HZ(HZM,"ETHB")) S NCAB=^("ETHB")
 S:'SHUL NCAB=""
 S ^P1HZ(HZM,"CB")=NCAB_"\"_MZM_"\"_$G(CHK)_"\"_$G(CA)_"\"_$G(ASR)_"\"_P1DZ_"\"_$H_"\"_$J(ODEF,2,2)_"\"_$G(TL)_"\"_$G(TIP)_"\"_$G(ODEFTL)_"\"_$G(TLN)_"\"_$G(HNHTL)
 S ^P1HZ(HZM,"CB","ASR",1)=LKHN_"***"_$G(ASR)_"***"_HZMLK_"*****"_$$LKH^P1L(LKHN)_"*"
 S ^THZ(IRN,HZM,"CB")=^P1HZ(HZM,"CB")
 S ^P1HZ(HZM,"AN")=$G(^P1HZ(HZM,"AN"))+1,$P(^P1HZ(HZM),"\",17)=$G(ASR) I $G(HNH1) S $P(^P1HZ(HZM),"\",11)=ASR,$P(^P1HZ(HZM),"\",8)=$G(HNH1)  ;,^P1HZ(HZM,"S")=4
 I $G(ODEF) S $P(^P1HZ(HZM),"\",11)=ASR-ODEF,$P(^P1HZ(HZM),"\",12)=-ODEF D  D PRINT S ^P1HZ(HZM,"S")=2
 .I '$G(NCAB) S NCAB=$P($G(^P1HZ),"\",2)+1 D
 ..I $D(^P1HZ(HZM,"ETHBL")),$G(^P1HZ(HZM,"S"))'>1 S NCAB=$G(^P1CB,1000000)+1
 ..I $D(^P1HZ(HZM,"ETHB")) S NCAB=^("ETHB")
 D MDP^P1PCI,^P1ASRI S FLGT=1
 Q
CA ;
 S SHVAMR="",%BS=""
 S TXT=$J(ITRA,2,2)_" :  mley" D W(TXT,LIN1)
 S CD=$L(ITRA)+2,TXT=" :  mley"
 D R(TXT,LIN1,CD)
 I %S=0  Q
 I %S="" S %S=ITRA
 S CA=%S
 S CA1=$J(CA,2,2),TXT=CA1_":`""ka mley"
 D W(TXT,LIN1)
 S RZN=CA-(TSHL-MZM) I RZN<.03,RZN>-.03 S RZN=0
 S TIP=""
 S:RZN>0 TIP=$J(RZN,2,2)
 I (TIP>0) D  I %S'=9 S (TIP,CA,CA1)="" Q
 .S TXT=$J(CA,2,2)_": `""ka mley"
 .S TXT="9-xey`l "_TIP_"tih" D W(TXT,LIN1)
 .R %S#1
 S CAOLD=0,SUGT=3
 D  I 'CA,%BS Q
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%MBG,%MSC,CA,NCAB,S21,STA,NMB,BICUA,SHVAMR,P1HZHB51,BL,LIN,LIN1,TIP,PORT,FLGCA) D ^%L1C
 .S (RZN,RZN1,SUMH)=CA,KUP=901,CABN=NCAB,P1TCA=CA
 .D ^A1DAT S DATE=^COMP(1),S21="",%L1MBSC=1
 .D @$S($G(^PL("ASH96")):"START^IRTRANWI",1:"START^I1TRANWI")
 .I FLGCA="NO" S CA=0 Q
 .S CA=P1TCA I STA!'$L(S21) S CA=0
 .I CA S BICUA="" S P1HZHB51($O(P1HZHB51(9999),-1)+1)=CA_","_3
 I FLGCA="NO" S FLGT=0 Q
 S RZN=CA-TIP-(TSHL-MZM) I RZN<.03,RZN>-.03 S RZN=0
 I RZN'<0 S FLGT=2 ;Q
 I RZN'=0 Q
CA1 S INDV=$O(^THZ(IRN,"CB","V",999),-1)+1
 S ^THZ(IRN,"CB","V",INDV)=S21
 S $P(^THZ(IRN,"CB"),"\",10)=TIP
 D
 .S MAC1="^THZ(IRN,""CB"",""V"")",MAC2="^P1HZ(HZM,""CB"",""V"")" D ^%S1GC1
 .S MAC1="^THZ(IRN,""CB"",""V"")",MAC2="^THZ(IRN,HZM,""CB"",""V"")" D ^%S1GC1
 S PAY=CA
 S %S=4 D PZ1^P1TI
 I (MZM+CA)'<TSHL S FLGT=2
 Q
PAR ;
 S %SC("ST")="",%SC("ER")="",HRP="",TXTE=""
 I PAR="" S %SC("ST")=1 Q
 S TXT=PAR_" : hixt" D W(TXT,LIN)
 ;I PAR'?N.N S TXT="! ieby cew",%SC("ER")=1,TXTE="ieby  " Q
 I '$D(^PAR(PAR)) S TXT="! miiw `l hixt",%SC("ER")=1,TXTE="miiw `l " Q
 N KUPM S KUPM=$P(^PAR(PAR),"*",21)
 I KUPM'?1N.N.E S TXT="zxcben `l zqtcn",TXTE="zxcben `l zqtcn",%SC("ER")=2 Q
 I KUPM D ^P1MDP(KUPM) I '$D(%MDP)!'$G(PRINT) S TXT="zxcben `l zqtcn",TXTE="zxcben `l zqtcn",%SC("ER")=2 Q
 ;I $D(^P1EZA(PAR))!$D(^P1EZR(PAR))!$D(^P1EZT(PAR))!($G(^P1EZI(PAR))=1) S %SC("ER")=1,TXTE="akxen ",TXT="! akxen" Q  ;D W(TXT,LIN1) Q
 S MH=$P(^PAR(PAR),"*",3) I MH<0 S %SC("ER")=1 Q
 S:KAM<2 KAM=1 ;S:PAR="*" KAM=-1,MH=-MH,SUM=-SUM,PAR=$P(^THZ1(IRN,SH),"\",1)
 S SUM=MH*KAM
 S TXT=$J(PAR,5)_" : hixt",TXTO=TXT
 S:KAM>1 TXT=KAM_" "_TXT,TXTO=TXT
 D W(TXT,LIN)
 I KUPM?1"0".E,PAR,PAR'=$G(^P1PRM("SHEMZ")) D
 .Q:KUPM'=0
 .S HRP=" ! dqtcd `ll" I $L($G(HZM)),$D(^THZ(IRN,HZM,"SHEMZ")) S HRP=HRP_^("SHEMZ")
 S PAR1=$P(^PAR(PAR),"*",1),TXT=PAR1 D W(TXT,LIN1)
 S SH=$ZP(^THZ1(IRN,""))+1
 S ^THZ1(IRN,SH)=PAR_"\\"_PAR1_"\"_$J(MH,2,2)_"\"_KAM_"\\"_$J(SUM,2,2)_"\"_$G(HRP)_"\\\"     ;"_"@@"
 S TSHL=TSHL+SUM
 S $P(^THZ(IRN,HZM),"\",11)=$J(TSHL,2,2)
 D
 .N ST,SM,NP,NOMH
 .S (NOMH,NP,SM)=1
 .I SH=1,DGLB="" D HEADPR1
 .S ST=^THZ1(IRN,SH)
 .D MDP^P1PCI,LINE^P1HZTHI
 Q
PUT S HZMS=""
 I '$D(^THZ1(IRN,1)) S TXT="!!! mihixt oi`" D W(TXT,LIN1) W *7,*7,*7 Q
 I '$D(^THZ1(IRN,2)),HZM'="ycg" D CUT Q
 S HZMS=HZM
 I HZM="ycg" D
BDMS0 .S HZMS=$O(^P1HZ(99999999),-1) I 'HZMS S HZMS=1 G BDMS
 .I '$D(^P1HZ(HZMS,1)) S MAC1="^P1HZ(HZMS)",MAC2="^P1HZER(""KFZ"",HZMS)" D ^%S1GC1 K ^P1HZ(HZMS) G BDMS0
 .S HZMS=HZMS+1
BDMS .I $D(^P1HZ(HZMS)) S HZMS=HZMS+1 G BDMS
 .S P1DZ=$G(^P1DZ,+$H) D ^P1NEWDAY
 .S ^P1H(P1DZ,HZMS)="",^P1HI(HZMS,P1DZ)=""
 .S ^P1HL(NMB,HZMS)=P1DZ
 .S ^P1H0(P1DZ,HZMS)="",^P1HI0(HZMS,P1DZ)="",^P1HZ(HZMS)=""
 .S ^P1HL0(NMB,HZMS)=P1DZ
 N H I $D(^P1HZ(HZMS,"H")) S H=^("H")
 I $D(^THZ(IRN,HZM))>0,$D(^THZ1(IRN))>9 K ^P1HZ(HZMS) S ^P1HZ(HZMS)=""
 F I=1:1 Q:'$D(^THZ1(IRN,I))  D
 .I $P(^(I),"\",5)'<0,$D(^THZ(IRN,HZM,"BIT",I)) K ^(I) Q
 S MAC2="^P1HZ(HZMS)",MAC1="^THZ(IRN,HZM)" D ^%S1GC1 K ^THZ(IRN,HZM) ;-- KOTERET
 N I,I1,J S J=0 K ^THZ(IRN,HZM,"BIT")
 F I=1:1 Q:'$D(^THZ1(IRN,I))  I $P(^(I),"\")'?.P S J=J+1 S MAC2="^P1HZ(HZMS,J)",MAC1="^THZ1(IRN,I)" D ^%S1GC1  ;--- TOHEN (COLEL TOSAFOT)
 I $G(^P1PRM("BLRD")) S HZM=HZMS D BLRD^P1HZOP
 S LASTU=$P($H,",",2)
 D PUT^%L1SCREF("^P1HZ(HZMS)","P1HZMS",1,"LASTU")
 I $E($G(^START),1,7)="2520275" D ^P1SDPAR(HZMS) ;-- PAPAGAYO
 S ^P1HZ(HZMS,"H")=$G(H)+1
 I HZM'="ycg" S ^P1MLZ(HZMS)=MLZR0 D
 .S K1="" F  S K1=$O(^THZ1(IRN,K1)) Q:K1=""  D
 ..S THZ1=^THZ1(IRN,K1)
 ..S PAR=$P(THZ1,"\",1)
 ..S KAM=$P(THZ1,"\",5),MH=$P($P(THZ1,"\",4),".",1),SUM=+MH*KAM
 ..I $D(^P1MLZ(HZM,MLZR0,PAR)) D  Q
 ...S P1MLZ=^P1MLZ(HZM,MLZR0,PAR)
 ...S $P(P1MLZ,"*",1)=$P(P1MLZ,"*",1)+1
 ...S $P(P1MLZ,"*",2)=$P(P1MLZ,"*",2)+MH
 ..S ^P1MLZ(HZM,MLZR0,PAR)=KAM_"*"_SUM_"*"_MH_"*"_"0"
 S HZM=HZMS
 I $D(^P1TKT("KP",MLZR0)) Q
 D PR1
 L  Q
KHZ D KHZ^P1HZNM
 Q
HRL D HRL^P1HZNM
 Q
MLZR0 ;
 I $G(MLZR0)="" S %SC("ST")=1 Q
 K %SC
 N FILE S FILE="^NAME"
 I MLZR0,+MLZR0'=$G(^P1PRM("PSW")),+MLZR0'=$G(^P1PRM("PSW2")),$G(^P1PRM("BDNOCH")),$G(^FILE(MLZR0,"CIO"))'="I" S TXT=" !gkep `l caerd " W *7,*7,*7 D W(TXT,LIN1) S %SC("ER")=1 H 1 Q
 I $L(MLZR0)<5 S MLZR0=$E("00000",1,5-$L(MLZR0))_MLZR0
 S TXT="" I '$D(^NAME(MLZR0)) S TXT="! miiw `l caerd" W *7,*7,*7 D W(TXT,LIN1) H 1 Q
 S MLZR1=$G(^NAME(MLZR0,1)),MKBL=MLZR0
 Q
MLZR01 ;
 D P1TIME
 S %ZMSL=""
 I $D(^P1PRM("MLZCARD")) S %ZMSL("bf")=^P1PRM("MLZCARD"),%ZMSL("bf","MUST")=""
 S %ZMSL("TIME")=30,%ZMSL("SS")="TV^P1PRTEND"
 Q
NMB K ^THZ(IRN),^THZ1(IRN),HEAD
 S %SC("ST")="",%SC("ER")=""
 I $G(ZMANK)?.P S %TIM=$ZD($H,"24:60") S ZMANK=$$^%L1DC($H,1)_"  "_%TIM
 I '$G(DATK) S DATK=$$^%L1DC(P1DZ,1)
 S HZM=""
 S FLAG="" N %FNAME S %FNAME="NMB"
NMBEG I 'HZM S BEGIN=1
 I NMB="" S %SC("ST")=1 Q
 S NMB=$TR(NMB,"\/.,;|","------")
 I $L(NMB)<4,'$D(^LKH(NMB)) S %SC("ER")=1 Q
 S DGLB=""
 I $D(HSBZIC) G NMB1           ; ??????????
 I HZM'="",'$D(^P1HL(NMB,HZM)) S HZM=$ZP(^P1HL(NMB,9999999)) ;?????
 I HZM="" S HZM=$ZP(^P1HL(NMB,9999999))
 I HZM'="",$G(NMB),$D(^P1HL(NMB,HZM))#2,$D(^P1HZ(HZM))=11,$P(^P1HZ(HZM),"\")="" S $P(^P1HZ(HZM),"\")=NMB
 I HZM,$L(NMB)<4,$D(^P1HZ(HZM))=11,($G(^P1HZ(HZM,"S"))'>1) D BDNMB Q:%SC("ER")=1  D HZMPR Q
 I HZM,$G(BEGIN)<2 G NMB1
 I HZM,$L(NMB)<4 D  Q:HZPRINT  G:$G(BEGIN)<2 NMB1
 .S HZPRINT=""
 .I $D(^P1HZ(HZM))=11&($G(^P1HZ(HZM,"S"))'>1) S NZPRINT=1 D ^HZPRINT
 I HZM'="",$D(^P1HL(NMB,HZM))#2,BEGIN,$D(^P1HZ(HZM)),$G(^P1HZ(HZM,"S"))<2!(BEGIN=2) S BEGIN=0 Q
 I HZM'="",$D(^P1HL(NMB,HZM)),'BEGIN S BEGIN=1
 ;--------------  HAZMANA HADASHA
NMB1 K ^THZ(IRN),^THZ1(IRN)
 I NMB,MLZR0,$D(^P1MLZSHI(NMB)),'$D(^P1MLZSHI(NMB,MLZR0)),'$$^P1ADM(MLZR0) S TXT="!"_$G(^NAME($O(^P1MLZSHI(NMB,"")),1))_"l jiiy ogley" D W(TXT,LIN1) S %SC("ST")=1 Q
 S HZM="ycg",TSHL="",SH=1,^IR1($P,HZM)="" Q:$D(P1HZOP)  D BDNMB Q:%SC("ER")=1
NMB12 S ^THZ(IRN,HZM)=NMB_"\\\"_ZMANK_"\\\\\"_"0"_"\\\\\\\\\"_MKBL_"\\\\\\"_1_"\\\\\"_DATK
 S ^THZ(IRN,HZM,"HR2")="\\"
 D HEAD
 Q
BDNMB S %SC("ER")="" I $G(NMB),$D(^FLAG(NMB))#2,^FLAG(NMB)'=IRN,$L($G(HZM)),$G(^P1HZ(HZM,"S"))<2 D  Q
 .W *7,*7,*7
 .S TXT1="xg` seqnn z`fd",TXT="dpnfd mr micaer",%SC("ER")=1
 .D W(TXT,LIN),W(TXT1,LIN1) H 5
 .S TXT=MLZR1_" "_+MLZR0_" : xvln" D W(TXT,LIN)
 Q
W(TXT,LNW) ;W $C(27,14),$C(CD),$TR($J(TXT,16),TS0,TSS),$C(13)
 G:PORT<2 W2
 W $C(27,14),$C(LNW),$J($TR(TXT,TS0,TSS),16),$C(13)
 Q
W2 ;
 D W1(LNW)
 S CD=16-$L(TXT)
 W /CUP(LNW,CD),$TR(TXT,TS0,TSS)
 Q
W1(LNW) ;
 W /CUP(LNW,1),BL
 Q
HZMPR ;
 S THSL=""
 M ^THZ(IRN,HZM)=^P1HZ(HZM)
 F II=1:1 Q:'$D(^P1HZ(HZM,II))  M ^THZ1(IRN,II)=^P1HZ(HZM,II) K ^THZ(IRN,HZM,II)
 S SH=II
 N P1HZMET,I,P1HZMET0 I $G(^P1PRM("HZMDBL")) D
 .S P1HZMET0=1
 S (GLBV,GLBV1)="^P1HZ(HZM)" S:$D(^THZ(IRN,"NOPC")) P1HZOP="NOPC"
 S P1HZMET="",P1IR1=1,^IR1($P,HZM)="",^IR1($P,HZM,1)=""
 I $G(^P1PRM("HZMDBL")) S P1HZMET=$G(P1HZMET0) D ^P1HZTHI
 D GA^%L1SCREF(HZSCR,"^THZ(IRN,HZM)")
 D HEAD
 Q
PR1 ;
 N P1HZMET,I,P1HZMET0 I $G(^P1PRM("HZMDBL")) D
 .S P1HZMET0=1
 S (GLBV,GLBV1)="^P1HZ(HZM)" S:$D(^THZ(IRN,"NOPC")) P1HZOP="NOPC"
 K P1HZMET
 D HEADEP
 D CUT
 K P1HZMET
 S %SCRN=HZSCR I $G(P1HZOP)="NOPC" K P1HZOP Q ;;D ^P1HZMI gahn 'cnl dgely-dlghda
 I $G(^P1PRM("HZMDBL")) S P1HZMET=$G(P1HZMET0) D ^P1HZTHI
 Q
R(TXT,LNW,CD) ;
 G:PORT<2 R2
 S (%S,IJ,AA)="",TX1=TXT
 F IJ=1:1:CD R AA#1 Q:AA=""  S %S=%S_AA D
 .I $A(AA)=8 S %S=$E(%S,1,$L(%S)-1) Q
 .I IJ=1 S TXT=AA_" "_TX1 D W(TXT,LNW) Q
 .I AA="C" D  Q
 ..S %S=$E(%S,1,$L(%S)-2)
 ..S TXT=%S_" "_TX1
 ..D W(TXT,LNW)
 ..S IJ=IJ-2
 .I $A(AA)=8 S %S=$E(%S,1,$L(%S)-1)_"*"
 .S TXT=%S_" "_TX1
 .D W(TXT,LNW)
 .Q
 Q
R2 S (%S,IJ,AA)="",TX1=TXT
 R /CUP(LNW,2),AA#CD
 S %S=AA
 Q
RCA ;
 G:PORT<2 RCA2
 S (%S,IJ,AA)="",TX1=TXT
 F IJ=1:1:99 R AA#1 Q:AA=""  S %S=%S_AA Q:AA="B"  D
 Q
RCA2 S (%S,IJ,AA)="",TX1=TXT
 R /CUP(11,2),AA#1
 S %S=AA I %S="B" D W1(11) Q
 Q:$E(%S,1)'="a"
 F IJ=1:1:99 R AA#1 Q:AA=""  S %S=%S_AA Q:AA="B"
 Q
RR(TXT,LNW,CD) ;
 S (%S,IJ,AA)="",TX1=TXT
 F IJ=1:1:CD R AA#1:1 Q:'$T  Q:AA=""  S %S=%S_AA D
 .I IJ=1,AA=0 S IJ=5 Q
 .I IJ=1 S TXT=AA_"     "_TX1 D W(TXT,LNW) Q
 .I $A(AA)=8 D  Q
 ..S %S=$E(%S,1,$L(%S)-2)
 ..S TXT=%S_$E("     ",1,CD-$L(%S))_" "_TX1
 ..D W(TXT,LNW)
 ..S IJ=IJ-2
 .S TXT=%S_$E("     ",1,CD-$L(%S))_" "_TX1
 .D W(TXT,LNW)
 .Q
 Q
RCAN ;
 S %S="" R %S
 Q
RP(TXT,LNW,CD) ;
 G:PORT<2 R2
 S (%S,IJ,AA)="",TX1=TXT
 F IJ=1:1:CD R AA#1 Q:AA=""  S %S=%S_AA D
 .I IJ=1,(AA="D"!(AA="A")) S IJ=CD Q   ;0108
 .I IJ=1 S TXT=AA_" "_TX1 D W(TXT,LNW) Q
 .I AA="C" D  Q
 ..S %S=$E(%S,1,$L(%S)-2)
 ..S TXT=%S_" "_TX1
 ..D W(TXT,LNW)
 ..S IJ=IJ-2
 .I $A(AA)=8 S %S=$E(%S,1,$L(%S)-1)_"*"
 .S TXT=%S_" "_TX1
 .D W(TXT,LNW)
 .Q
 Q
PRINT ;
 Q:'$G(SHUL)  N LKHN
 N IET,ITS,SHM,FRST,%FNAME,%GETIN,I
 S IET="ETHB",ITS=2,SHM="NCAB",P1HZHB="",SHET=1 K P1HZTM
 D MDP^P1PCI Q:'$D(%MDP)
 D P1^P1HZTMI K P1HZHB
 I $G(^P1HZ(HZM,"S"))<2 S ^P1HZ(HZM,"S")=2,^THZ(IRN,HZM,"S")=2 D ^P1HZSHAA
 Q
CUT D MDP^P1PCI Q:'$D(%MDP)
 D ^P1CUT(PRINT,%MDP("CUT"))
 Q
HEAD ;
 N MON
 S MON=1,SM1=""
 D MDP^P1PCI Q:'$D(%MDP)
 S HEAD(MON)=$S(HZM'="ycg":%MDP("B")_"wzrd  "_%MDP("N"),1:$J("",12))_$S('$G(^P1PRM("HEADSH")):%MDP("B"),1:$J("",5))_$J(HZM,5)_%MDP("N")_" 'qn dpnfd",MON=MON+1
 S:(HZM'="ycg") HEAD(MON)=$J(ZMANK,20)_" :dpnfd zlaw onf",MON=MON+1
 S HEAD(MON)=$J("",16-($L(NMB)*2))_%MDP("R")_%MDP("B")_$J(NMB,3)_" : "_$S($L(NMB)>3:" gewl",1:"ogley")_%MDP("N"),HEAD(98)=HEAD(MON),MON=MON+1
 Q:$E($G(^START),1,7)=2520333  ;---- GIRAF
 S %TIM=$ZD($H,"24:60") S HEAD(MON)=$J("",5)_%MDP("B")_%TIM_" dqtcd onf"_%MDP("N"),MON=MON+1
 S HEAD(MON)="",MON=MON+1
 I '$$MSKL^P1SCANER(IRN) D
 .S HEAD(MON)=":zenk:             hixt xe`z          :",MON=MON+1
 .S HEAD(MON)=":----:--------------------------------:",MON=MON+1
 .S HEAD(97)="---------------------------------------"
 I $$MSKL^P1SCANER(IRN) D
 .S HEAD(MON)=":   zenk   :             hixt xe`z          :",MON=MON+1
 .S HEAD(MON)=":----------:--------------------------------:",MON=MON+1
 .S HEAD(97)="---------------------------------------------"
 S HEAD(21)="",HEAD(23)=""
 S HEAD(22)=%MDP("B")_"jynd"_%MDP("N")
 Q
HEADPR ;
 N ST,SM,NP,NOMH
 S (NOMH,NP,SM)=1
HEADPR1 D MDP^P1PCI Q:'$D(%MDP)
 S I1=""
 F  S I1=$O(HEAD(I1)) Q:I1=""!(I1>20)  S TXT=HEAD(I1) D S1
 Q:'$D(^THZ1(IRN))
 Q:HZM="ycg"
 S I1=""
 F  S I1=$O(^THZ1(IRN,I1)) Q:I1=""  D
 .S ST=^THZ1(IRN,I1)
 .D LINE^P1HZTHI
 F I1=21:1:23 S TXT=HEAD(I1) D S1
 Q
S1 Q:'$G(PRINT)
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 I '$D(TXT("NOTR")) S TXT=$TR(TXT,TS0,TSS)
 I $D(%MDP("B")),$D(%MDP("N")),$D(TS0),$D(TSS) D
 .S TXT=$$RPL^%L1FRM(TXT,$TR(%MDP("B"),TS0,TSS),%MDP("B"))
 .S TXT=$$RPL^%L1FRM(TXT,$TR(%MDP("N"),TS0,TSS),%MDP("N"))
 S ^[^UCI("MGG")]pc(PRINT,$ZP(^[^UCI("MGG")]pc(PRINT,999999))+1)=$J("",SM)_TXT
ES1 K TXT Q
DEFMDP(PRINT) ;
 D TV^P1MDP(MDPSUG)
 Q
P1TIME ;
 I $G(P1HZOP) S TXT=P1HZOP_" ogleyn dxard " D W(TXT,LIN1) Q
 S %TIM=$ZD($H,"24:60") I '$D(P1DZ) D ^P1IN
 Q
BITULP ;
 S TXTB="9-lehia xey`l" D W(TXTB,LIN1)
 R %S#1
 I %S'=9 G BITULP1
 S TXT="!!! lhea" W *7,*7,*7 D W(TXT,LIN1)
 D
 .N ST,SM,NP,NOMH
 .S (NOMH,NP,SM)=1
 .S ST=$G(^THZ1(IRN,SH))
 .S KAM=$P(ST,"\",5)
 .S $P(ST,"\",5)=-KAM
 .D LINE^P1HZTHI
 S DGLB=1
 S ^IRBITUL(IRN,SH)=$G(^THZ1(IRN,SH))
 K ^THZ1(IRN,SH)
 H 1
 S TXT=KAM_" lhea "_PAR D W(TXT,LIN)
BITULP1 S TXT=": hixt" D W(TXT,LIN1)
 Q
HEADEP ;
 D
 .N ST,SM,NP,NOMH,MDP
 .S (NOMH,NP,SM)=1
 .D MDP^P1PCI
 .F I1=97,98 S TXT=$G(HEAD(I1)) D S1^P1HZMI
 Q
V ;
  Q
ERR ;
   K ^flag(IRN)
   S $ZT="",zr=$R ZG "_$ZL_":SVER^%L1X
   ;;;S $ZT="k ^flag("_IRN_") S $ZT="""",zr=$R ZG "_$ZL_":SVER^%L1X"
   Q

P1JOB
P1JOB ;                     [ 16.06.10 09:36 ] [ 11.07.07 17:45 ] [ 27.03.07 11:01 ]
 K ^STLOOP D ^%L1C,^P1IN I '$D(P3LOADPC) X %chista
 N FLUP S FLUP="p1uptime"
 I $$^%L1ZOS(2,FLUP)
 ;ZSY "uptime > "_FLUP H 1
 D SRV^P1PRMN
 ;I $$^%L1ZOS(10,FLUP)>-1 D
 .O FLUP:(READONLY:REWIND) U FLUP
 .R A C FLUP S ZMANUP=$P($P(A," up ",2),",")
 .S MINUP=$$SPA^%L1FRM(ZMANUP) Q:MINUP'["min"
 .I MINUP[":" S MINUP=$P(MINUP,":")*24+$P(MINUP,":",2)
 .I $P($H,",",2)-$G(^P1INIT(+$H))>(MINUP*60) K ^P1INIT(+$H)
 ;
 I $D(^VIEWONLY) D
 .F N=1:1:999 S ^FLAG(N)=255
 ;;I $D(^P1NOGIB) D ^P1NOGIB K ^P1NOGIB
 I '$D(^VIEWONLY) D
 .I '$D(^P1HL2) J NOSAY^P1CHL
 .I $G(^LEV) J ^LEVR1(^LEV,$G(^LEV("LP")),$G(^LEV("LP","SUG")))
 .J ^P1PCDOS
 .D
 ..N PORT S PORT="" F  S PORT=$O(^PL("ADSL",PORT)) Q:PORT=""  D
 ...J single^%L2SRV1(PORT,6)
 .I $G(^PL("REMOTE","IN")) J ^P1RDREM(^PL("REMOTE","IN"))
 .J ^P3INOUT1
 .S N="" F  S N=$O(^PLUK(N)) Q:N=""  I $D(@$$^W4DEV@(N)) D
 ..I ^PLUK(N)<0 J ^P1IR1(N)   ;;; ***************
 ;D ^P1PRMT
 F I=-99:1:-1 K ^[$$^%L1GLD]pc(I)
 K ^[$$^%L1GLD]pc(54)
 N GLOB ;;D ^P1PCH
 S GLOB="^P1SETA" D CRSETAI^P1SETA,CREZRI^P1EZR
 I $G(^PLUK(%L3MYDVN,"DISP")),^("DISP")'=54 O ^("DISP") U ^("DISP") W " ",$C(27)_"[2J"
 I $G(^PLUK(%L3MYDVN,"DISP")),^("DISP")=54,$$^%L1T2P(" "_$C(27)_"[2J")
 I '$D(^PARPROT1) D
 .N N,N1,PAR,A
 .S N="" F  S N=$O(^PARPROT(N)) Q:N=""  D
 ..S N1="" F  S N1=$O(^PARPROT(N,N1)) Q:N1=""  D
 ...S A=$G(^(N1)) S PAR=$P(A,"\") Q:PAR=""
 ...S ^PARPROT1(PAR,N_$TR($J($E(N1,1,5),5)," ",0))=A
 ;
 I '$D(^P1SL(9999)) S ^P1SL(9999)="dpznda"
 I $G(^PL("MATB")),'$D(^P1SUGM) D
 .S ^P1SUGM(1)="1.000\lwy\g""y\@@!"
 ;;I $G(^PLUK)["MLY" J ^PLUPDT:64
 K ^zms($P) S ^r($J)=1,^zms($P)="^P1POP" K ^P1MDPF
TV S N="" F  S N=$O(^PLUK(N)) Q:N=""  I $G(^PLUK(N,"LP")) S PORT=^("LP") D JPC(PORT)
 I $D(^P1PRM("MDPMSL")) N I F I=1:1:$L($G(^P1PRM("MDPMSL")),",") S PORT=$P(^P1PRM("MDPMSL"),",",I) S:PORT<-1 PORT=-PORT D JPC(PORT)
 S N="" F  S N=$O(^P1PRM("MDP",N)) Q:N=""  S PORT=$P($G(^(N)),"\",3) I PORT D JPC(PORT)
 I $G(^LEV("LP")) D JPC(^LEV("LP"))
 I '$D(^P1INIT(+$H)),'$D(P3LOADPC) D ^P1INIT S ^P1INIT(+$H)=$P($H,",",2)
 I $E(%TYPCRT,1,3)="VT5",'$D(P3LOADPC) W $C(17,27,91)_"?108h",$C(27,91)_"?35h" ;-- NUM LOCK(DECNUMLK),HEB (DECHEBM)
 Q
JPC(PORT) ;
 Q:$D(^VIEWONLY)
 S PORTN=PORT ;$G(^PORT(PORT)) Q:PORTN=""
 Q:PORT<3  Q:PORT=54
 J JPC^P1PC(PORTN)
 Q

P1KILLD
P1KILLD ; [ 19.04.07 10:42 ] [ 04.05.06 09:25 ] [ 30.04.06  3:58 PM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 X %chista
 S %SAY=" ! oeikx`l mipezp qiqa wizrdl `p dlert revia iptl ++8,65,HH,I,R" X %XMSG
 I '$$^P1SSM(3) Q
 X %chista
ZD S %GET="jix`z cr mipezp wegnl++3,70,HH#++8,D,I" D ^%L1GET Q:%S=""!(%TO="END")
 K %Q S %Q("Z")="geha dz` " D N^%S2ASK I 'YES G ZD
 ;
 S DAT2=%S,DT2=$$^%L1DC(DAT2,3)
 S ^P1KILLD(DT2)=$H
 ;
 S %SAY=" ... oznd `p` " X %XMSGN
 S %YY=5,%XX=5 X %POSIC
 ;
 K ^STATIS,^P1HZER,^P1JRN,^VIZ,^VIZA,^VIZH
 ;
 S DT="" F  S DT=$O(^P1H(DT)) Q:DT=""  Q:DT>DT2  D
 .S DAT=$$^%L1DC(DT,2)
 .;
 .U 0 W !,$$^%L1DC(DT,1)
 .S N="" F  S N=$O(^P1H(DT,N)) Q:N=""  D
 ..K ^P1HI(N,DT),^P1HI0(N,DT)
 ..K ^P1HZ(N),^P1HZ0(N)
 ..K ^P1MLZ(N),^P1HL1I(N),^P1HL2I(N)
 .
 .K ^Z(DT)
 .K ^Z1(DAT)
 .K ^TOT(DAT)
 .K ^PLUTOT(DAT)
 .K ^P1H(DT),^P1H0(DT)
 ;
 ;;S N1="" F  S N1=$O(^KLIN("DT",N1)) Q:N1=""  D
 .S DT="" F  S DT=$O(^KLIN("DT",N1,DT)) Q:DT=""  Q:DT>DT2  K ^KLIN("DT",N1,DT)
 ;
 S N="" F  S N=$O(^P1TZ(N)) Q:N=""  D
 .I $P(^(N),"\",8)'>DT2 K ^P1TZ(N)
 ;
 S N="" F  S N=$O(^TRANL(N)) Q:N=""  D
 .N A,H,DT S A=$G(^(N)),H=$P(A,"^")
 .I ($P(H,",")-($P(H,",",2)<20000))'>DT2 K ^TRANL(N)
 ;
 S N="" F  S N=$O(^DUMP(N)) Q:N=""  D
 .I $$^%L1DC($P(^(N),"|",7),3)'>DT2 K ^DUMP(N)
 ;
 S N="" F  S N=$O(^P1HL(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL(N,N1)) Q:N1=""  I ^(N1)'>DT2 K ^P1HL(N,N1),^P1HL0(N,N1)
 ;
 S N="" F  S N=$O(^P1HL1(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL1(N,N1)) Q:N1=""  I ^(N1)'>DT2 K ^(N1)
 ;
 S N="" F  S N=$O(^P1HL2(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL2(N,N1)) Q:N1=""  I ^(N1)'>DT2 K ^(N1)
 ;
 S N="" F  S N=$O(^P1HL3(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL3(N,N1)) Q:N1=""  I ^(N1)'>DT2 K ^(N1)
 ;
 S N="" F  S N=$O(^P1LHB(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1LHB(N,N1)) Q:N1=""  I $P(^(N1),"\",7)'>DT2 K ^(N1)
 ;
 S N="" F  S N=$O(^TIPMZ(N)) Q:N=""  D
 .I $P(N,"^")'>DT2 K ^TIPMZ(N)
 ;
 S N="" F  S N=$O(^DUMP1(N)) Q:N=""  I $E(N,1,5)'>DT2  D
 .K ^DUMP1(N)
 ;
 S DT="" F  S DT=$O(^P1HBI(DT)) Q:DT=""  Q:DT>DT2  D  K ^P1HBI(DT)
 .S N="" F  S N=$O(^P1HBI(DT,N)) Q:N=""  K ^P1HB(N),^P1HB0(N)
 ;
 S DT="" F  S DT=$O(^P1HB2I(DT)) Q:DT=""  Q:DT>DT2  D  K ^P1HB2I(DT)
 .S N="" F  S N=$O(^P1HB2I(DT,N)) Q:N=""  K ^P1HB2(N),^P1HB20(N)
 ;
 S DT="" F  S DT=$O(^P1HB5I(DT)) Q:DT=""  Q:DT>DT2  D  K ^P1HB5I(DT)
 .S N="" F  S N=$O(^P1HB5I(DT,N)) Q:N=""  K ^P1HB5(N),^P1HB50(N)
 ;
 S DT="" F  S DT=$O(^P1TMI(DT)) Q:DT>DT2  Q:DT=""  D  K ^P1TMI(DT)
 .S N="" F  S N=$O(^P1TMI(DT,N)) Q:N=""  K ^P1TM(N)
 ;
 ;;S N="" F  S N=$O(^KLF(N)) Q:N=""  D
 .S KPMH=0,KPMZ=0
 .S N1="" F  S N1=$O(^KLF(N,N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(^KLF(N,N1,N2)) Q:N2=""  D
 ...I N1="CB" D
 ....S A=$G(^(N2))
 ....I $$^%L1DC($P(A,"\",4),4)'>DT2 K ^KLF(N,N1,N2)
 ...I N1="H" D
 ....S A=$G(^(N2))
 ....I $$^%L1DC($P(A,"\",4),4)'>DT2 K ^KLF(N,N1,N2)
 ...I N1="KP" D
 ....I $$^%L1DC($E(N2,1,6),4)'>DT2 K ^KLF(N,N1,N2)
 Q

P1KOTD
P1KOTD ; [ 08/26/97 12:31 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
 D ^%L1C,^PLUINP,MDP^P1PC
 S MISP="D",MISP1="dpezgz zxzek",%SC("OUT")="MISP1" D BG^P1HODAA
 Q

P1MDP
W4MDP(MDP) ;     [ 26.10.09 12:04 ] [ 20.10.09 10:27 ] [ 12.05.09 07:39 ]
 K %MDP,%MDS
 Q:$G(MDP)=""  S MDP=+MDP
 S PRINT=$$PRINT(MDP) Q:PRINT=""
 S MDPS=$$MDPS(MDP) Q:MDPS=""
 S MDPBEEP=$$BEEP(MDP)
 S MDPETEK=$$ETEK(MDP)
 G T
TV(MDPS) ;
T S %MDP("BEEP")=""
 S MDPS=+MDPS,GWPC=40
 I MDPS=1 S %MDP("B")=$C(30),%MDP("N")=$C(31),%MDP("R")=$C(18),%MDP("RL")="",%MDP("P")=$C(7),%MDP("BEEP")="",%MDP("CUT")="",(GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=%MDP("PRG") ; CITIZEN 3530
 I MDPS=2 S %MDP("B")=$C(14),%MDP("N")=$C(20),%MDP("R")=$C(27,52),%MDP("RL")=$C(27,53),%MDP("P")=$C(29),%MDP("BEEP")="",%MDP("CUT")="",%MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=%MDP("PRG"),(GWPC,%MDP("GWPC"))=22 ;-- STAR-24
 I MDPS=3 S %MDP("B")=$C(14),%MDP("N")=$C(15),%MDP("R")=$C(19),%MDP("RL")="",%MDP("P")=$C(7),%MDP("BEEP")=$C(30),%MDP("CUT")=$C(27,80,0),(GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=%MDP("PRG")_%MDP("CUT") ;-- CITIZEN 3540,3541
 I MDPS=4 S %MDP("B")=$C(27,87,49),%MDP("N")=$C(27,87,48),%MDP("R")="",%MDP("RL")="",%MDP("P")=$C(27,112,50,50),%MDP("CUT")=$C(27,105),(GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=%MDP("PRG")_%MDP("CUT") ;SENOR
 I MDPS=5 S %MDP("B")=$C(27)_"W1",%MDP("N")=$C(27)_"W0",%MDP("R")="",%MDP("RL")="",%MDP("P")="",%MDP("CUT")=$C(12),(GWPC,%MDP("GWPC"))=80,%MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=$C(12) ;-- CITIZEN 3540,3541 ;-- CITIZEN 90,240
 I MDPS=6 S %MDP("B")=$C(27,33,40),%MDP("N")=$C(27,33,8) D
 .S %MDP("BB")=$C(27,33,56)
 .S %MDP("R")="",%MDP("RL")=""
 .;;S %MDP("R")=$C(29,66,1), %MDP("RL")=$C(29,66,0)
 .S %MDP("P")=$C(27)_"p"_$C(0)_"14",%MDP("CUT")=$C(27)_"m"
 .S %MDP("BEEP")=$S($G(MDPBEEP):$C(27)_"p"_$C(1)_$C(64)_$C(255),1:"")
 .S (GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10)
 .S %MDP("PG")=%MDP("PRG")_%MDP("CUT") ;-- CBM 230/231
 I MDPS=7 D
 .S %MDP("R")="",%MDP("RL")="",%MDP("P")="",%MDP("CUT")=$C(12)
 .S %MDP("B")=$C(27)_"(s3B",%MDP("N")=$C(27)_"(s0B"
 .S (GWPC,%MDP("GWPC"))=80,%MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=$C(12)
 .S %MDP("COND")=$C(27)_"(s16H",%MDP("NOCOND")=$C(27)_"(s10H"
 I '$D(%MDP("BB")) S %MDP("BB")=$G(%MDP("B"))
 Q
PRINT(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",@G@("PORT"))
MDPS(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",@G@("MDPS"))
BEEP(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",@G@("BEEP"))
ETEK(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",@G@("ETEK"))
TEUR(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",4)
 ;
NIFRAD(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 I $G(@G@("NIFRAD"))="" Q ""
 Q $P(ST,"\",@G@("NIFRAD"))
 ;
MDPI ;
 S G=$$BG^W4SCR_"""P1MDP"",""G"",""NAME"")"
 S ST=$G(@$$^W4PRM@("MDP",MDPN))
 Q

P1MNSIS
P1MNSIS ; [ 08.05.00  8:55 AM ] [ 004/18/00  8:54 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 F I="SHIFT","Z","TOT","GRAPH","SHVA","LKH","PAR","TBL","CHK","MVC","SRV","SHAON","ZICUJ","HSV" S @I=$G(^P1PRM("PSWMN",I)) ;+$G(^P1PRM("MNL"))
 S %SCRN="P1MNSIS",%SC("A")="" D ^%L1SC
 F I="SHIFT","Z","TOT","GRAPH","SHVA","LKH","PAR","TBL","CHK","MVC","SRV","SHAON","ZICUJ","HSV" D
 .S ^P1PRM("PSWMN",I)=@I ;-$G(^P1PRM("MNL"))
 .I ^P1PRM("PSWMN",I)<0 S ^(I)=0
 Q

P1MNTR
P1MNTR(DUMP) ;  [ 25.07.02 11:03 AM ] [ 22.07.02  9:46 AM ] [
 N A S A=$E($G(^START),1,7)
 I A=2520260 Q 1
 I A=2520196 Q 2
 Q 0

P1NAME
P1NAME(%CDNM) ; [ 06/08/98  2:05 PM ]
 I %CDNM="" Q "?????"
 S %CDNM=$TR($J(%CDNM,5)," ",0)
 Q $G(^NAME(%CDNM,1))
SHORT(%CDNM) ;
 I %CDNM="" Q "?????"
 S %CDNM=$TR($J(%CDNM,5)," ",0)
 N A,I,B S A=$G(^NAME(%CDNM,1)),B=""
 S B=$$SPA^%L1FRM(A),B=$$SP1^%L1FRM(A)
 S B1=$P(A," ",$L(A," ")-1)
 S B2=$P(A," ",$L(A," "))
 S B=$E(B1,$L(B1))_" "_B2
 ;;F I=$L(A," "):-1:1 I $P(A," ",I)'="" S B=$P(A," ",I) Q
 Q B

P1NEWDAY
P1NEWDAY ; [ 16.01.07 12:20 ] [ 12.06.06 16:29 ] [ 06.10.05 14:59 ]
 I '($D(^P1DZ)#2) D
 .L ^P1DZ:1 S ^P1DZ=+$H L
 .D P1DZJ
 .O ^P1DZ("J"):(REWIND:NEWVERSION)
 .C ^P1DZ("J")
 Q
P1DZJ ;
 N P1DZ S P1DZ=$G(^P1DZ,+$H)
 S ^P1DZ("J")=$$DGIBDIR("")_"#J"_$$^%L1DC(P1DZ,2)
 Q
DGIBDIR(STAM) ;
 N DGIBOL
 S DGIBOL=$G(^P1PRM("DBB"))
 I $L(DGIBOL),$E(DGIBOL,$L(DGIBOL))'="/" S DGIBOL=DGIBOL_"/"
 Q DGIBOL
 ;

P1PAREX
P1PAREX ; [ 04.02.19 17:46 ] [ 22.07.17 13:06 ] [ 20.07.17 10:09 ] 
 N (%NMF,%UPRCOD,%XMSG,%TIP) D ^%L1C,^%L1TS
 U 0 S PRT=$P S %S="" I $D(%NMF) S %NMF1="" G IN
Z1 Q:$D(%NMF1)  X %chista S %FL="" U 0 S %SAY=" EXCEL uaewn hixtz znwd" X %XMSGV
 S %GET=": EXCEL uaew ly `ln my ++3,70,HH#++40,E,I"
 D ^%L1GET
 I %S="?"!(%TO="F7") D O13^%L1OS S %S=$S($G(%PATH)'="":%PATH_"\",1:"")_$TR($E(%L2VNM,1,8)_"."_$E(%L2VNM,11,13)," ","") G Z1
 G:%S=""!(%TO="END") END
 S %NMF=%S
IN U 0 W !!?5,%NMF
 S MRK=$$^%L1MRK I MRK="" S %SAY=" ! xcbed `l fkxn " X %XMSGV(1) G END
 K ^TMPT($P)
 S %ER=$$^%L1ZOS(10,%NMF) I %ER<0 D ^%L1OS1 G Z1
 ;
 M ^PAR00=^PAR K ^PAR
 ;
 D ^W1EX2PAR
 Q
 ;
 O %NMF:(REWIND:READONLY)
 N DLM S DLM=","
 F  U %NMF R %STRING Q:$ZEOF  D
 .S COD=$P(%STRING,DLM) Q:'COD
 .S SHEM=$P(%STRING,DLM,2) Q:SHEM=""
 .S SHEM=$$INVH^%L1FRM($TR(SHEM,TS1,TS0))
 .S SHEML=$P(%STRING,DLM,3)
 .S MH=$P(%STRING,DLM,4)
 .S KVZ=$P(%STRING,DLM,5)
 .S $P(^PAR(COD),"**")=SHEM
 .S $P(^PAR(COD),"**",14)=SHEML
 .S $P(^PAR(COD),"**",2)=MH
 .S $P(^PAR(COD),"**",5)=KVZ
 .S $P(^PAR(COD),"**",11)="G"
 C %NMF
 ;S P1PAREX=""
 ;D TV^P1TR2P
END K ^TMPT($P) Q
 
 
 
 
 
 
 
 
 
 
 

P1PC
P1PC ; PREPARE FOR BACKGROUND                                      [ 18.04.12 16:25 ] [ 29.02.12 14:11 ] [ 24.02.12 13:46 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,PRT,MDPB) D ^%L1C,MDP,^PLUINP
ZP1 N I,I0,I1,I2,I3,%PRW1,%PRW0 S I=0,I2=0,I0=0,I3=1,%PRW1=0 K STPC
 D ZPS
 S %HEAD=I0 L ^[$$^%L1GLD]pc:1
 F  S I=I+1 Q:'$D(^S111(PRT,I))  D
 .N ST S ST=^(I) S I1=I I $E(ST)="#" S STPC(1)=$C(12) D PC D ZPS S I2=0 F I1=I+1:1 Q:'$D(^S111(PRT,I1))  Q:^(I1)'?.P
 .Q:'$D(^S111(PRT,I1))
 .S I=I1 S I2=I2+1 I '(I2#(58-%HEAD)) S STPC(1)=$J("",30)_"`ad sca jynd"_$C(12,10)_$J("",30)_" mcew scn jynd"_$C(10)_$J("",5)_(I3+1)_" sc" D PC D ZPS S I2=3,I3=I3+1
 .S ST=^(I)
 .S STPC(1)=$$CLST^%L1FRM(ST,%MDP("B"),%MDP("N"))
 .D PC
 .Q
 S STPC(1)=$C(12) D PC
 L  Q
 ;
ZPS I '$D(%S2V("PRINT"))!'$D(%S2V("HEAD")) Q
 K STPC F I0=1:1 Q:'$D(%S2V("HEAD",I0))  S STPC(I0)=%S2V("HEAD",I0)
 D PC
 Q
 ;
PC ;
 N J,I S J=$O(^[$$^%L1GLD]pc(PRINT,""),-1)+1
 F I=1:1 Q:'$D(STPC(I))  D
 .S STPC=STPC(I) S:$D(STPC(I,"R")) STPC=%MDP("R")_STPC_%MDP("RL")
 .S ^[$$^%L1GLD]pc(PRINT,J)=STPC S J=J+1
 K STPC U 0
 Q
 ;
JPC(N) ;
 H 1
 I N<0 K ^pc(N)
 Q:N<3!(N=54)
 I $$^%L1FLAG("^flag("_+N_")") Q
 I $$^%L1FLAG("^flag("_+N_")") Q
 D ^P1IN D DEFMDP K MDPMDB
 ;
 S PAR="" F  S PAR=$O(^PAR(PAR)) Q:PAR=""  S IND=$P($P(^PAR(PAR),"**",11),">",2) I IND D
 .N %MDP,GWPC,MDPS,PRINT D ^P1MDP(IND) I $G(PRINT) S MDPMDB(PRINT)=""
 ;
 I '$$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 I $$MDPNET(N) C "SCK$"_$J
 ;
JPC1 S $ZT="S $ZT="""",zr=$R ZG "_$ZL_":ER"
 I $$^%L1FLAG("^flag("_+N_")") D CLN(N,1) Q
 I $$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 I $D(^STLOOP("PC")) K ^flag(+N) D:OK CLN(N,1) Q
 I $$MDPNET(N),'OK H 1 D CLN(N,0) G JPC1
 ;
 ;;D ^P1DISTM
 ;
 S N1=N-.1,OKP=0
 F  S N1=$O(^[$$^%L1GLD]pc(N1)) Q:N1=""  I +N1=N,$D(^[$$^%L1GLD]pc(N1)) S OKP=1 Q
 ;
 I 'OKP D
 .D ^P1IN,^%L1TS S THZ=$G(^P1PRM("TIMEHZ")),TTM=$G(^P1PRM("TIMETM"))
 .S TIME=P1DZ-1_"00000"
 .F  S TIME=$O(^P1HM(TIME)) Q:TIME=""  S HZM="" F  S HZM=$O(^P1HM(TIME,HZM)) Q:HZM=""  Q:$L($P($G(^P1HZ(HZM)),"\"))<4  Q:$D(^[$$^%L1GLD]pc(N))  D
 ..S DT=$E(TIME,1,5),TT=+$E(TIME,6,10)
 ..I $G(^P1HZ(HZM,"S"))#2 D  Q
 ...K ^P1HM(TIME,HZM) D ^%S2GLSV("^P1HM("""_TIME_""","_HZM_")",$$^P1FGIB,"K")
 ..I $H-DT=0,TT-($P($H,",",2)\60)<TTM,$L($P($G(^P1HZ(HZM)),"\"))>3,'$D(^P1NORING) D
 ...N P1MSG S P1MSG=$G(^P1MSG(HZM))
 ...I P1MSG,+P1MSG'=N!($P($H,",",2)-$P(P1MSG,"|",2)<60) Q
 ...S %MSG=" "_HZM_" dpnfdl gelyn zcerz witdl egkyz l` " D ALL H 2
 ...S ^P1MSG(HZM)=N_"|"_$P($H,",",2)
 ..Q:$D(^P1HM(TIME,HZM,N))
 ..D ZMANK I DT=D,TT-T'>(THZ+30) Q
 ..I $H-DT=0,TT-($P($H,",",2)\60)<THZ,$D(^P1HZ(HZM)),'$D(MDPMDB(N)),$G(^P1NORING)<2 D
 ...Q:$G(SUG)'=3&($G(SUG)'=6)
 ...S PC(N,1)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,2)=%MDP("B")_%MDP("R")_$TR("    !!! egkyz l`",TS0,TSS)_%MDP("RL")_%MDP("N")
 ...S PC(N,3)=%MDP("B")_"     "_HZM_$TR(" dpnfd",TS0,TSS)_%MDP("N")
 ...S PC(N,4)=$J("",10)_$TR("gewl lv` zeidl dxen`",TS0,TSS)
 ...S PC(N,5)=%MDP("B")_"     "_(TT\60_":"_(TT#60))_$TR(" drya",TS0,TSS)_%MDP("N")
 ...S PC(N,6)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,7)=$C(10,10,10,10,10,10)_%MDP("CUT")
 ...N NOKILL S NOKILL="" D JPW S ^P1HM(TIME,HZM,N)=""
 ;
 K PC D JPS,JPW,JPK
 ;
 D CLN(N,0) H 1 G JPC1
 ;
 ;
ER ;
 S TXT=$P($ZS,",",2,4) D MSG(TXT) I $G(N) K ^flag(+N)
 D SVER^%L1X
 Q
 ;
ALL N US ;
 I $G(^UCI("MGG"))["/esi" Q
 S US=""
 ;
ALLPC F  S US=$O(^PLUK(US)) Q:US=""  I US>0,$G(^PLUK(US))>0,$D(@$$^W4DEV@(US)) D
 .S ^msgbrd(@$$^W4DEV@(US))=%MSG
 .I $D(%MSG("DLY")) S ^msgbrd(@$$^W4DEV@(US),"DLY")=%MSG("DLY")
 ;;D PUT^P3MSGESI("","TXT",%MSG)
 Q
 ;
MSG1(%MSG) ;
 D ALL
 Q
 ;
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:1000
 Q DLY
 ;
OPN(N) ;
 S OK=0 K ERPC
 I $D(^PL("REMOTE","OUT",N)) S OK=1 Q
 ;
 I $$MDPNET(N) D  Q
 .N N1 S N1=+N
 .N ADDR,PORT
 .S ADDR=@$$^W4DEV@(N1),PORT=9100
 .I ADDR["P" S ADDR=$P(ADDR,"P")
 .K ERPC(N1) S ERPC(N1)=$$^%L2NALAN(ADDR,PORT)
 .;;S ^A($O(^A(99999),-1)+1)=ERPC(N1)_"\"_N1_"\"_ADDR_"\"_PORT
 .I $G(ERPC(N1)) D MSGPRER(ADDR,ERPC(N1)) S OK=0 Q
 .S OK=1
 ;
 O @$$^W4DEV@(+N):(WRITE:EXCEPTION="G OPNE^P1PC")
 S OK=1 Q
OPNE S OK=0 Q
 ;
CLN(N,PRM) ;
 I $$MDPNET(N) H 1 C "SCK$"_$J Q
 I $G(PRM) H 1 C @$$^W4DEV@(+N)
 Q
 ;
MSGPRER(ADDR,ER) ;
 D ^P1IN
 I $D(^P1NOMDP(P1DZ)) Q
 S %MSG=$J_": PRINT ERROR "_ADDR_" "_$$^%L1HB($$NMPR(ADDR))_" "_$$FUNC^%UCASE(ER) D ALL H 1 Q
 I $G(N) S ^P1PCER(N,$O(^P1PCER(N,9999999),-1)+1)=ADDR_"\"_ERR
 Q
 ;
NMPR(ADDR) ;
 I $G(ADDR)="" Q ""
 I '$D(@$$^W4DEVI@(ADDR)) Q ""
 N DEV S DEV=@$$^W4DEVI@(ADDR) I DEV="" Q ""
 Q $G(@$$^W4DEV@(DEV,"H"))
 ;
ZMANK N ZMANK,DATE S ZMANK=$P($G(^P1HZ(HZM)),"\",4)
 S DATE=$P(ZMANK,"  ")
 S TIM=$P(ZMANK,"  ",2)
 S D=$$^%L1DC(DATE,3),T=$P(TIM,":")*60+$P(TIM,":",2)
 Q
 ;
JPS N N0,OKP S N0=N-.1,OKP=0
 F  S N0=$O(^[$$^%L1GLD]pc(N0)) Q:N0=""  I +N0=+N,$D(^[$$^%L1GLD]pc(N0)) D
 .N JPSL S JPSL=$G(^P1PRM("PCDLY"),16)
 .I JPSL<8 S JPSL=8
 .S N1="" K PC
 .F J=1:1:JPSL S N1=$O(^[$$^%L1GLD]pc(N0,N1)) Q:N1=""  D
 ..S PC(N0,N1)=$G(^(N1))
 Q
 ;
JPW N N0,OKP S N0=N-.1,OKP=0 F  S N0=$O(PC(N0)) Q:N0=""  I +N0=+N D
 .S N1="" F  S N1=$O(PC(N0,N1)) Q:N1=""  D BDIKA Q:ERMDP  D  D DOS K PC(N0,N1) I '$D(NOKILL) K ^[$$^%L1GLD]pc(N0,N1)
 ..I $D(^PL("REMOTE","OUT",N)) Q
 ..N ST S ST=$G(PC(N0,N1))
 ..D UDEV(N) W ST W !
 Q
 ;
JPK ;
 K PC
 Q
 ;
BDIKA ; N - PORT NUMBER
 S ERMDP=0 I $D(^PL("REMOTE","OUT",N)) Q
 I '$D(@$$^W4DEV@(+N)) S ERMDP=1 Q
 I $G(ERPC(+N)) S ERMDP=2 G BDER
 I $$MDPNET(N) D UDEV(N) Q
 N I1
 F I1=1:1:3 S ERMDP=0 Q:$$^%L1READY(@$$^W4DEV@(+N))>0  H 1 S ERMDP=3
BDER I ERMDP,'$D(^NOSOOB) F I=1:1 Q:'$D(^P1PRM("MDP",I))  I $P(^(I),"\",3)=N S %MSG=" ! "_$G(ERMDP)_" d`iby - dpken `l ("_N_" hxet) "_$P(^(I),"\",4)_" zqtcn " D ALL H 12 Q
 D UDEV(N)
 Q
 ;
DOS ;
 S ^PC(N0,$O(^PC(N0,999999),-1)+1)=PC(N0,N1)
 Q
 ;
MSG(TXT) ;
 D MSG1(TXT)
 Q
 ;
MDP ; [ 05/26/94  5:52 PM ]
 N SUG,DG K %MDP,%MDS ;U 0
 I $D(MDPB) S PRINT=$G(^PL("LP")),SUG=$G(^PL("LP","SUG"),5) Q:PRINT=""  G EMDP
 S MDPPART=$$^%L3MYDVN
 I $P=0!($P=""),$D(PARTMSF) S MDPPART=PARTMSF
 I 'MDPPART!'$D(^PLUK(MDPPART,"LP")) S MDPPART=1
 S PRINT=$G(^PLUK(MDPPART,"LP")) Q:PRINT=""
 S SUG=$G(^PLUK(MDPPART,"LP","SUG")) I SUG="" S SUG=6
 S %MDP("SUG")=SUG
EMDP D TV^P1MDP(SUG)
 Q
 ;
DEFMDP ;
 N P,M
 S M="" F  S M=$O(^P1PRM("MDP",M)) Q:M=""  S P=$P(^(M),"\",3) I P S P(P)=$P(^(M),"\")
 S M="" F  S M=$O(^PLUK(M)) Q:M=""  I $G(^PLUK(M,"LP")),$G(^PLUK(M,"LP","SUG")) S P=^PLUK(M,"LP"),P(P)=$G(^PLUK(M,"LP","SUG"))
 I $D(^P1PRM("MDPMSL")) N I F I=1:1:$L($G(^P1PRM("MDPMSL")),",") S P=$P(^P1PRM("MDPMSL"),",",I),P(P)=$G(^P1PRM("MDPMSL","SUG"))
 I $D(P(N)) S SUG=P(N) D TV^P1MDP(SUG)
 I $D(P(-N)) S SUG=P(-N) D TV^P1MDP(SUG)
 Q
 ;
BACKUP S T=$P(^PL("BACKUP"),":")*60+$P(^PL("BACKUP"),":",2) I T-($P($H,",",2)\60)'>1,T-($P($H,",",2)\60)'<-1,'$D(^STLOOP("PC")) S P1PC="",%SAYZU="" S ^STLOOP("PC")=1 H 4 D  K ^STLOOP H 120
 .S %MSG=" mipezp qiqal ieaib rvazn " D ALL
 .N QUIT,%ERR,%DEV K ^P1NOGIB D ^%L4VLD S ^P1NOGIB=$H
 .Q:$D(QUIT)  I $G(%ERR) D  Q
 ..K ^P1ERGIB(+$H) S ^P1ERGIB(+$H)=$H
 ..N N S N="" F  S N=$O(%ERR(N)) Q:N=""  S ^P1ERGIB(+$H,N)=%ERR(N)
 .I $G(^PL("TIME")),$G(^PL("TIME"))<$G(^PL("BACKUP")),$$^%L1ZOS(10,$G(^PATHDOS)_"ASHZ.BAT")>0!($G(^PL("J"))>1) O "VALOK":(WRITE:NEWVERSION) U "VALOK" W $H_": OK",$C(13) C "VALOK" K ^P1NOGIB D ^%L1SSD Q
 .D ^%L1DOS("MSMGIB.BAT",$G(^PATHDOS))
 .K ^P1NOGIB
 .S %MSG=" rvea ieaib " D ALL
 Q
 ;
UDEV(N) ;
 I $$MDPNET(N) Q  U "SCK$"_$J Q
 U @$$^W4DEV@(+N):(NOWRAP)
 Q
 ;
MDPNET(N) ;
 I $G(@$$^W4DEV@(+N))?1N.N1"."1N.E Q 1
 Q 0
 ;
V(STAM) Q $C(83,32,94,80,49,80,82,77,40,34,90,83,34,41,61,36,36,83,84,65,82,84,94,80,49,80,67,72,92,36,36,77,73,83,94,80,49,80,67,72,40,36,36,83,84,65,82,84,94,80,49,80,67,72,41)

P1PCDOS
P1PCDOS ;                          [ 18.06.12 20:09 ] [ 24.02.12 14:05 ] [ 18.09.11 11:17 ]
 N
 S $ZT="k ^flag(253) S $ZT="""",zr=$R ZG "_$ZL_":SVER^%L1X"
 D ^PLUINP D TV^P1MDP(6)
BG S GLD=$$^%L1GLD()
 I GLD="" H 1 G BG
 N FN
 S P1PCDOS=0 D ^P1IN,^%L1LJ
 I $$^%L1FLAG("^flag(253)") Q
 ;
CYC ;----------------- MAIN LOOP -------------------------------------
 ;
 I '$G(^flag(253)) S ^flag(253)=$J
 S P1PCDOS=$G(P1PCDOS)+1
 I '(P1PCDOS#50),$$^%L1FLAG("^flag(253)") Q
 I $D(^STLOOP("PC")) K ^flag(253) Q
 I $G(^SYNCTIME)="?" S ^SYNCTIME=$H
 ;
 S P1DZ=$$^W4DZ
 ;
 I $D(^PC)<10 H 1 G RCVFILES
 ;
 S FN=PATHM_"#Z"_$$^%L1DC($$^%L1DC(P1DZ,1),2)_".001"
 O FN:(APPEND)
 ;
 S N0="" F  S N0=$O(^PC(N0)) Q:N0=""  D
 .S MAX=$O(^PC(N0,99999),-1)
 .D DEFMDP(+N0)
 .
 .S N1="" F I=1:1 S N1=$O(^PC(N0,N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..I $G(^PC(N0,N1))[$C(10,10,10,10,10) K ^(N1) Q
 ..N ST S ST=^PC(N0,N1)
 ..N I F I="R","RL","P","BEEP" S ST=$$RPL^%L1FRM(ST,%MDP(I),"")
 ..S ST=$$RPL^%L1FRM(ST,$C(13),"")
 ..S ST=$$RPL^%L1FRM(ST,$C(10),"<E><BR><E>")
 ..U FN W +N0_":"_ST,! K ^PC(N0,N1)
 ;
 C FN
 ;
 H 1 G CYC
 ;----------------------------------------------------------------------
 ;
RCVFILES ;
 I $G(^P1PRM("MRKZ"))="S",$$FTP D
 .I $$PRIEM("PARSEND")
 .
 .I $$PRIEM("p1sendm",1)
 .N N,N1 S N="" F  S N=$O(^p1sendm(N)) Q:N=""  D
 ..S N1=N I $E(N)'="^" S N1="^"_N
 ..K @N1
 ..M @N1=^p1sendm(N) K ^p1sendm(N)
 ..I N1["PRTNOSND" D
 ...N N S N="" F  S N=$O(^PRTNOSND(N)) Q:N=""  D
 ....I $D(^PAR(N)) M ^PRTNO(N)=^PRTNOSND(N) D
 .....M ^PRTNOSNA($H,N)=^PRTNOSND(N) K ^PRTNOSND(N)
 .
 .I $$PRIEM("LKHSEND") D
 ..N MRK S MRK=$$^%L1MRK("")
 ..N LKH S LKH="" F  S LKH=$O(^LKHSEND(MRK,LKH)) Q:LKH=""  D
 ...D CR^P1TR2L(MRK,LKH) K ^LKHSEND(MRK,LKH)
 ;
 I $$PRIEM("MSGSEND")
 ;
 L +^L1RCV:1
 I $$PRIEM("L1RCV",1) D
 .I $D(^L1RCV("PROG")) D @("^"_^L1RCV("PROG"))
 L -^L1RCV ; K ^L1RCV
 ;
 S FLP=$G(^PL("SND","DIRCV"))_"P1HZ3_*"
 S FLP=$ZSEARCH(FLP)
 S SNIF=$P(FLP,".",2)
 I $$PRIEM(FLP) D ^P1HZ3HZ(SNIF)
 ;
 ;
 I $G(^P1PRM("MRKZ"))="M",$$FTP D  ; --- MI MERKAZ ROSHI
 .S FLP=$G(^PL("SND","DIRCV"))_"PLUMRK0.*"
 .S FLP=$ZSEARCH(FLP)
 .I $$PRIEM(FLP)
 .
 .S FLP=$G(^PL("SND","DIRCV"))_"Z1MRK0.*"
 .S FLP=$ZSEARCH(FLP)
 .I $$PRIEM(FLP)
 .N IND S IND=+$H_$TR($J($P($H,",",2),5)," ",0)
 .D RCV^P1RCVD($P(FLP,".",2))
 .
 .S FLP=$G(^PL("SND","DIRCV"))_"P1HL3_*"
 .S FLP=$ZSEARCH(FLP)
 .I '$$PRIEM(FLP) Q
 .N LKH,HZM D ^KLINIT
 .S LKH="" F  S LKH=$O(^P1HL30(LKH)) Q:LKH=""  D  M ^P1HL3(LKH)=^P1HL30(LKH) K ^P1HL30(LKH)
 ..S HZM="" F  S HZM=$O(^P1HL30(LKH,HZM)) Q:HZM=""  D
 ...N CUSN,DATE,SUM,NUMBER,CODDOC,COD
 ...S CUSN=LKH,NUMBER=HZM
 ...I $G(^P1EZL(LKH)) S CUSN=^P1EZL(LKH)
 ...N A S A=$G(^P1HL30(LKH,HZM))
 ...M ^P1HL1(LKH,HZM)=^P1HL30(LKH,HZM)
 ...S ^P1HL1I(HZM,LKH)=""
 ...S DATE=$$^%L1DC($P(A,"*"),2)
 ...S SUM=$P(A,"*",2)
 ...S CODDOC="HZ"
 ...S COD="0H"
 ...D ^KLUP
 ;
 I $G(^PL("BACKUP")) D BACKUP^P1PC
 ;
 ;
VIDEO I $G(^P1PRM("VIDEO"))=1 D
 .N PORT,I,N0,N1,MAX,%MDP,WRTO S PORT=$G(^("VIDEO","PORT"))
 .I PORT<51!(PORT>54),$D(@$$^W4DEV@(PORT)) S WRTO=@$$^W4DEV@(PORT) O WRTO
 .I PORT'<51&(PORT'>54) D
 ..S WRTO=$G(^P1PRM("VIDEO","DIR"))_"#V"_$$^%L1DC(P1DZ,2)
 ..O WRTO:(APPEND)
 .S N0="" F  S N0=$O(^[$$^%L1GLD]pcv(N0)) Q:N0=""  D
 ..S MAX=$O(^[$$^%L1GLD]pcv(N0,99999),-1)
 ..D DEFMDP(+N0)
 ..S N1="" F I=1:1 S N1=$O(^[$$^%L1GLD]pcv(N0,N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ...N ST S ST=$G(^(N1))
 ...I ST[$C(10,10,10,10,10) K ^(N1) Q
 ...N I F I="B","N","R","RL","P","BEEP" S ST=$$RPL^%L1FRM(ST,$G(%MDP(I)),"")
 ...U WRTO W +N0_"\"_$P(ST,"\")_"\"_$$^%L1DC($P(ST,"\",2),1)_"\"_$$T^%L1TIME($P($P(ST,"\",2),",",2))_"\"_$P(ST,"\",3)_"\"_$$D2W^%L1PCEX($P(ST,"\",4,200)),!
 ...K ^[$$^%L1GLD]pcv(N0,N1)
 .C WRTO
 ;
VIDEO2 I $G(^P1PRM("VIDEO"))=2 D
 .N PORT,I,N0,N1,MAX,%MDP,WRTO S PORT=$G(^("VIDEO","PORT")) Q:'PORT
 .I PORT<51!(PORT>54) Q:'$D(@$$^W4DEV@(PORT))  S WRTO=@$$^W4DEV@(PORT) O WRTO
 .I PORT'<51&(PORT'>54) D
 ..S WRTO=$G(^P1PRM("VIDEO","DIR"))_"#V"_$$^%L1DC(P1DZ,2)_".2"
 ..O WRTO:(APPEND)
 .S MAX=$O(^[$$^%L1GLD]pcv2(999999),-1)
 .S N1="" F I=1:1 S N1=$O(^[$$^%L1GLD]pcv2(N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..N ST,ST1 S ST=$G(^(N1)),ST1=$P(ST,"~",5)
 ..U WRTO W $P(ST,"~")_"~"_$$^%L1DC($P(ST,"~",2),1)_"~"_$$T^%L1TIME($P($P(ST,"~",2),",",2))_"~"_$P(ST,"~",3,4)_"~"_ST1,!
 ..K ^[$$^%L1GLD]pcv2(N1)
 .C WRTO
 ;
RSTRN ;
 I $G(^P1PRM("RESTORAN")) D
 .N PORT,I,N0,N1,MAX,%MDP
 .D OPN I 'OK H 5 D CDEV Q
 .N GL S GL=$$GL^W4RSTRN
 .S MAX=$O(@GL@(999999),-1)
 .S N1="" F I=1:1 S N1=$O(@GL@(N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..N ST S ST=$G(^(N1))
 ..D UDEV W ST,!
 ..K @GL@(N1)
 .D CDEV
 ;
CONCEP ;
 I $G(^P1PRM("CONCEPTIC")) D
 .N PORT,I,N0,N1,MAX,%MDP
 .D OPCN I 'OK H 5 D CDEV Q
 .S MAX=$O(^[$$^%L1GLD]pccn(999999),-1)
 .S N1="" F I=1:1 S N1=$O(^[$$^%L1GLD]pccn(N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..N ST S ST=$G(^(N1))
 ..D UDEV W ST,!
 ..K ^[$$^%L1GLD]pccn(N1)
 .D CDEV
 ;
 H 1 G CYC
 ;
 ;
DEFMDP(N) ;
 N P,M
 S M="" F  S M=$O(^P1PRM("MDP",M)) Q:M=""  S P=$P(^(M),"\",3) I P S P(P)=$P(^(M),"\")
 S M="" F  S M=$O(^PLUK(M)) Q:M=""  I $G(^PLUK(M,"LP")),$G(^PLUK(M,"LP","SUG")) S P=^PLUK(M,"LP"),P(P)=$G(^PLUK(M,"LP","SUG"))
 I $D(P(N)) S SUG=P(N) D TV^P1MDP(SUG)
 Q
PRIEM(FL,PRKILL)
 N OKP S OKP=0
 I '$D(^PL("SND","DIRCV")) S ^PL("SND","DIRCV")="/home/lev/"
 N FLP S FLP=FL I FL'["/" S FLP=$G(^PL("SND","DIRCV"))_FL
 I $$^%L1ZOS(10,FLP)>0 H 4 I $$^%L1ZOS(10,FLP_".END")>0 D
 .I $G(PRKILL),FL'["/",FL'["." K @("^"_FL)
 .I $$GR^%L1G2F(FLP) S OKP=1
 .I 'OKP D  Q
 ..I FLP["P1HL3_"!(FLP["P1HZ3_") D MVER,MVERE
 .I FLP["P1HL3_" ZSY "mv "_FLP_" "_$P(FLP,"_")_"A_"_$P(FLP,"_",2)
 .I FLP["P1HZ3_" ZSY "mv "_FLP_" "_$P(FLP,"_")_"A_"_$P(FLP,"_",2)
 .I $$^%L1ZOS(2,FLP),$$^%L1ZOS(2,FLP_".END")
 .I $$^%L1ZOS(10,FLP)>0 D MVER
 .I $$^%L1ZOS(10,FLP_".END")>0 D MVERE
 I $$^%L1ZOS(10,FLP)<0,$$^%L1ZOS(10,FLP_".END")>0 D
 .ZSY "rm "_FLP_".END"
 Q OKP
 ;
FTP(STAM) ;
 I $$^%L1ISFTP("P1PCDOS") Q 1
 Q 0
 ;
MVER ZSY "mv "_FLP_" "_$P(FLP,"_")_"E_"_$P(FLP,"_",2) Q
MVERE ZSY "mv "_FLP_".END "_$P(FLP,"_")_"E_"_$P(FLP,"_",2)_".END" Q
 Q
 ;
OPN ;
 S OK=0 K ERPC
 N ADDR,PORT
 S ADDR=^P1PRM("RESTORAN","IP"),PORT=^("PORT")
 S ERPC=$$^%L2NALAN(ADDR,PORT)
 I $G(ERPC) D MSGPRER(ADDR,ERPC) S OK=0 Q
 S OK=1
 Q
OPCN ;
 S OK=0 K ERPC
 N ADDR,PORT
 Q:'$D(^P1PRM("CONCEPTIC","IP"))
 S ADDR=^P1PRM("CONCEPTIC","IP"),PORT=^("PORT")
 S ERPC=$$^%L2NALAN(ADDR,PORT)
 I $G(ERPC) D MSGPRER(ADDR,ERPC) S OK=0 Q
 S OK=1
 Q
 ;
UDEV ;
 U "SCK$"_$J Q
 Q
CDEV ;
 C "SCK$"_$J Q
 Q
 ;
MSGPRER(ADDR,ER) ;
 I '$D(P1DZ) D ^P1IN
 Q:$D(^P1NOMDP(P1DZ))
 S %MSG=$J_": PRINT ERROR "_ADDR_" "_$$^%L1HB($$NMPR(ADDR))_" "_$$FUNC^%UCASE(ER) D ALL^P1PC H 5 Q
 Q
 ;
NMPR(ADDR) ;
 I $G(ADDR)="" Q ""
 I '$D(@$$^W4DEVI@(ADDR)) Q ""
 N DEV S DEV=@$$^W4DEVI@(ADDR) I DEV="" Q ""
 Q $G(@$$^W4DEV@(DEV,"H"))

P1PCMLZ
P1PCMLZ ;                        [ 04.01.14 14:43 ] [ 08.12.06 05:12 ] [ 12.09.06 15:20 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,DAT,P1X,DOCH,SGIRATJOM,MEK)
 I $G(P1X),P1X=2!(P1X>4) Q  ;
 N DOCH1 S DOCH1=DOCH N DOCH S DOCH=$S(DOCH1="Y":"X",1:DOCH1)
 Q:$G(DOCH)=""
 K KAZAR I $G(^P1PRM("KZR")) S KAZAR=""
 I $D(P1X("SCR")) S NOPC=""
 ;
 D ^%L1C,^P1IN,MDP^P1PC,^PLUINP
 S GLBL=$S('MRK:"^TOT(DAT)",1:"^TOT(DAT,MRK)")
 ;
 I $D(SGIRATJOM),DOCH="Z" S GLBL="^Z1(DAT,NZ)" S NZ=$G(^Z)+1
 S (SPDN,SBTL,SSHER,SHNH,SSOAD,SHZM,STIP)=0
 S (SSHERHB,SHNHCIB,SHNHHB,SZICHB,SPDNHB,SBTLHB,SHSB,SSOADHB)=0
 S STZ="" D STZ
 ;;I $G(P1X)=1!($G(P1X)=3)!(DOCH1="Z")!(DOCH1="Y"),$D(%MDP) D
 .S STZ=$J("",10)_%MDP("B")_$S(DOCH1="Z":"- Z - ",DOCH1="Y":"- Y -",1:"- X -")_%MDP("N") D STZ
 .S %TIM=$ZD($H,"24:60") S STZ=%TIM_" "_$$^%L1DC($H,1)_" xewn zwtd jix`z" D STZ
 .S STZ="" D STZ
 S STZ=$J("",6)_$$^%L1DC(DAT,1)_"-l mixvln g""ec " D STZ
 D KAV
 F I=1:1 Q:'$D(^TEMP($P,I))  D
 .S ST=^(I)
 .D PRS^%L1FRM(ST,"MLZ\NAME\SHER\BTL\HNH\ZIC\TIP\PDN\SOAD\HZM\PDNHB","\")
 .
 .I $G(P1X("MLZ")),+$G(P1X("MLZ"))'=+MLZ Q
 .S SBTL=SBTL+BTL,SSHER=SSHER+SHER,SHNH=SHNH+HNH,SHZM=SHZM+HZM,SSOAD=SSOAD+SOAD
 .S STZ="" D STZ
 .S SM1=1,STZ=$G(%MDP("B"))_$$HBR^%L1FRM(NAME,12)_" "_$J(MLZ,5)_$G(%MDP("N")) D STZ K SM1
 .S STZ="" D STZ
 .;
 .I $G(^P1PRM(DOCH,"HZM")) D
 ..S STZ="      zepnfd itl g""ec " D STZ
 ..D KAV
 ..S STZ=$J(PDN+$S($G(^P1PRM("MLZ")):ZIC-SHER,1:0)-$S('$G(^P1PRM("TIPNT")):TIP,1:0),8,2)_$S($G(^P1PRM("MLZ")):" : mihixt zexikn",1:" : melyzl") D STZ S SPDN=SPDN+PDN
 ..S STZ=$J(BTL,8,2)_" : milehia" D STZ
 ..S STZ="" D STZ
 ..S STZ=$J(HZM,8)_" : zepnfd zenk" D STZ
 ..S STZ=$J(SOAD,8)_" : micreq" D STZ
 ..I SOAD S STZ=$J(PDN/SOAD,8,2)_" : creql rvenn" D STZ
 ..S STZ="" D STZ
 .;
 .I $G(^P1PRM(DOCH,"HSB"))!$G(P1X("MLZ")) D
 ..S STZ="   zeipeayg itl g""ec " D STZ
 ..D KAV S CHSB=0,SOADHB=0
 ..N DD S DD=$$^%L1DC(DAT,4) S N="" F  S N=$O(^P1HBI(DD,N)) Q:N=""  I $G(^(N)) S HZ=+$G(^P1HB(N)) I HZ S ML=$P(^P1HZ(HZ),"\",18) I +ML=+MLZ,'$G(^P1HZ(HZ,"TM")) S CHSB=CHSB+1,SOADHB=SOADHB+$P(^P1HZ(HZ),"\",24) S:$G(^P1HBI(DD,N))["^" CHSB=0,SOADHB=0
 ..S STZ=$J(PDNHB,8,2)_" : ehp mileawz" D STZ S SPDNHB=SPDNHB+PDNHB
 ..S SHERHB=$G(@GLBL@("DMSH",1,MLZ))
 ..S BTLHB=$G(@GLBL@("BIT",1,MLZ))
 ..S HNHCIB=$G(@GLBL@("CIBHN",1,MLZ))
 ..S HNHHB=$G(@GLBL@("MIN",1,MLZ))+$G(@GLBL@("MIN2",1,MLZ))-HNHCIB
 ..I $D(KAZAR) S NOPC=""
 ..S STZ=$J(SHERHB,8,2)_" : zexy inc" D STZ S SSHERHB=SSHERHB+SHERHB
 ..I $G(^P1PRM("COEF")) S STZ=$J(SHERHB*^P1PRM("COEF"),8,2)_" : xvln ly zexy inc" D STZ
 ..S STZ=$J(BTLHB,8,2)_" : milehia" D STZ S SBTLHB=SBTLHB+BTLHB
 ..S STZ=$J(HNHHB,8,2)_" : zegpd" D STZ S SHNHHB=SHNHHB+HNHHB
 ..I HNHCIB S STZ=$J(HNHCIB,8,2)_" : 'qeaiq' zegpd" D STZ S SHNHCIB=SHNHCIB+HNHCIB
 ..I '$D(P1X("SCR")) K NOPC
 ..I '$G(^P1PRM("TIPNO")) S STZ=$J(TIP,8,2)_" : "_$$TIPPS^P1TOT("") D STZ
 ..S STIP=STIP+TIP
 ..I $D(KAZAR) S NOPC=""
 ..S STZ=$J(ZIC,8,2)_" : miekif" D STZ
 ..S STZ=$J(PDNHB+ZIC+BTLHB+HNHHB-$S($G(^P1PRM("BRTDM")):0,1:SHERHB),8,2)_" : ehexa k""dq" D STZ
 ..S STZ="" D STZ
 ..I '$D(P1X("SCR")) K NOPC
 ..S STZ=$J(CHSB,8)_" : zeipeayg zenk" D STZ S SHSB=SHSB+CHSB
 ..S STZ=$J(SOADHB,8)_" : micreq 'qn" D STZ S SSOADHB=SSOADHB+SOADHB
 ..I SOADHB S STZ=$J(PDNHB-$S('$G(^P1PRM("TIPNT"))&'$G(^P1PRM("TIPNO")):TIP,1:0)/SOADHB,8,2)_" : creql rvenn" D STZ
 ..S STZ="" D STZ
 .;
 .I $G(^P1PRM(DOCH,"TSH"))!$G(P1X("MLZ")) D
 ..S STZ=" melyz irvn` itl g""ec " D STZ
 ..D KAV
 ..S STZ=$J($G(@GLBL@("F",1,MLZ)),8,2)_" : onefn" D STZ
 ..I $G(^PL("MATB")) D
 ...N SM1,MZM,SUMMTB,N,I
 ...S SM1=0 S MZM=$G(@GLBL@("F",1,MLZ))
 ...S STZ="" D STZ S SUMMTB=0,N="",I=0
 ...F  S N=$O(@GLBL@("MTB",N)) Q:N=""  D
 ....N A S A=$G(@GLBL@("MTB",N,MLZ))
 ....N SHAAR S SHAAR=1 I A S SHAAR=$P(A,"!",2)/A
 ....S I=I+1 S STZ=$J(A*SHAAR,7,2)_" = "_$J(SHAAR,7,3)_" *"_$J(+A,7,2)_" : "_$J($P($G(^P1SUGM(N)),"\",2),5) D STZ
 ....S SUMMTB=SUMMTB+(A*SHAAR)
 ...S STZ=$J(MZM-SUMMTB,7,2)_$J("",19)_" :   g""y" D STZ
 ...S STZ="" D STZ
 ..I '$G(^P1PRM("TIPNO")),$G(^P1PRM("TIPNT")) S STZ=$J($G(@GLBL@("T",1,MLZ)),8,2)_" : "_$$TIPPS^P1TOT("") D STZ
 ..S STZ=$J($G(@GLBL@("G",1,MLZ)),8,2)_" :  wiy" D STZ
 ..S STZ=$J($G(@GLBL@("Z",1,MLZ)),8,2)_" : yelz" D STZ
 ..S STZ=$J($G(@GLBL@("V",1,MLZ)),8,2)_" :  `""k "_$J($G(@GLBL@("V#",1,MLZ)),3,0) D STZ
 ..S STZ=$J($G(@GLBL@("H",1,MLZ)),8,2)_" : dtwd "_$J($G(@GLBL@("H#",1,MLZ)),3,0) D STZ
 ..S STZ="" D STZ
 ..S STZ=$J($G(@GLBL@("F",1,MLZ))+$G(@GLBL@("G",1,MLZ))+$G(@GLBL@("Z",1,MLZ))+$G(@GLBL@("V",1,MLZ))+$G(@GLBL@("H",1,MLZ))-$S('$G(^P1PRM("TIPNT"))!$G(^P1PRM("TIPNO")):0,1:$G(@GLBL@("T",1,MLZ))),8,2)_" : minelyz k""dq" D STZ
 ..S STZ="" D STZ
 ..I $D(KAZAR) S NOPC=""
 ..S STZ=$J(ZIC,8,2)_" : miekif" D STZ S STZ="" D STZ
 ..I '$D(P1X("SCR")) K NOPC
 ..I '$G(^P1PRM("TIPNO")),'$G(^P1PRM("TIPNT")) S STZ=$J($G(@GLBL@("T",1,MLZ)),8,2)_" : "_$$TIPPS^P1TOT("") D STZ
 ..S STZ="" D STZ
 .;
 .I $G(^P1PRM(DOCH,"LKH")) D LKH(MLZ)
 ;
 S STZ="" D STZ
 ;
 I $G(^P1PRM(DOCH,"HZM")) D
 .S STZ=" :  zepnfd itl k""dq" D STZ
 .D KAV
 .S STZ=$J(SHZM,8)_" : zepnfd zenk" D STZ
 .S STZ=$J(SSOAD,8)_" : micreq k""dq" D STZ
 .I SSOAD S STZ=$J(SPDN-$S('$G(^P1PRM("TIPNT"))&'$G(^P1PRM("TIPNO")):STIP,1:0)/SSOAD,8,2)_" : creql rvenn" D STZ
 .I $D(KAZAR) S NOPC=""
 .;;S STZ=$J(SSHER,8,2)_" : zexy inc k""dq" D STZ
 .;;I $G(^P1PRM("COEF")) S STZ=$J(SSHER*^P1PRM("COEF"),8,2)_" : mixvlnl zexy inc k""dq" D STZ
 .;;S STZ=$J(SHNH-$G(SHNHCIB),8,2)_" : zegpd k""dq" D STZ
 .;;I SHNHCIB S STZ=$J(SHNHCIB,8,2)_" : 'qeaiq' zegpd k""dq" D STZ
 .S STZ=$J(SBTL,8,2)_" : milehia k""dq" D STZ
 .I '$D(P1X("SCR")) K NOPC
 .I '$G(^P1PRM("TIPNO")),'$G(^P1PRM("TIPNT")) S STZ=$J(STIP,8,2)_" : "_$$TIPPS^P1TOT("") D STZ
 .S STZ="" D STZ K SM1
 ;
 I $G(^P1PRM(DOCH,"HSB")) D
 .S STZ=" : zeipeayg itl k""dq" D STZ
 .D KAV
 .S STZ=$J(SHSB,8)_" : zeipeayg zenk" D STZ
 .S STZ=$J(SSOADHB,8)_" : micreq k""dq" D STZ
 .I SSOADHB S STZ=$J(SPDNHB-$S('$G(^P1PRM("TIPNT"))&'$G(^P1PRM("TIPNO")):STIP,1:0)/SSOADHB,8,2)_" : creql rvenn" D STZ
 .I $D(KAZAR) S NOPC=""
 .S STZ=$J(SSHERHB,8,2)_" : zexy inc k""dq" D STZ
 .I $G(^P1PRM("COEF")) S STZ=$J(SSHERHB*^P1PRM("COEF"),8,2)_" : mixvlnl zexy inc k""dq" D STZ
 .S STZ=$J(SHNHHB,8,2)_" : zegpd k""dq" D STZ
 .I SHNHCIB S STZ=$J(SHNHCIB,8,2)_" : 'qeaiq' zegpd k""dq" D STZ
 .S STZ=$J(SBTLHB,8,2)_" : milehia k""dq" D STZ
 .I '$D(P1X("SCR")) K NOPC
 .I '$G(^P1PRM("TIPNO")) S STZ=$J(STIP,8,2)_" : "_$$TIPPS^P1TOT("")_" k""dq" D STZ
 ;
 I $G(P1X("MLZ")),$G(^P1PRM("MLZEXIT")) D
 .D LAST^LEVR(MLZ)
 .I ^FILE(MLZ,"CIO")="I" S %Q("U")="k"
 .I ^FILE(MLZ,"CIO")="O" S %Q("U")="l"
 .S %Q("Z")=" dcear zery zpigan caer xebql " D N^%S2ASK Q:'YES
 .N DAT,TMO S DAT=$$^%L1DC($H,2),TMO=$P($H,",",2)
 .S ^FILE(MLZ,DAT,TMO)="O",^FILE(MLZ,"CIO")="O"
 .D ^%S2GLSV("^FILE("""_MLZ_""","""_DAT_""","""_TMO_""")",$$^P1FGIB)
 .D ^%S2GLSV("^FILE("""_MLZ_""",""CIO"")",$$^P1FGIB)
 Q
STZ ;
 I $G(P1X),$D(P1X("SCR")) D  Q
 .I $D(%MDP("B")) S STZ=$$RPL^%L1FRM(STZ,%MDP("B"),"")
 .I $D(%MDP("N")) S STZ=$$RPL^%L1FRM(STZ,%MDP("N"),"")
 .S ^S111($J,$O(^S111($J,999999),-1)+1)=$J("",20)_STZ Q
 ;
 S NZ=$G(^Z)+1
 S NP=$ZP(^Z(P1DZ,NZ,99999))+1
 S ^Z(P1DZ,NZ,NP)=$$RPL^%L1FRM($$RPL^%L1FRM(STZ,$C(27)_"W1",%CLI),$C(27)_"W0",%CCL)
 Q:$D(NOPC)  Q:$D(P1X("SCR"))
 I '$D(PRINT) D MDP^P1PC
 S TXT=STZ
S1 Q:'$G(PRINT)  S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 S SM=6 S:$D(SM1) SM=SM1 I '$D(TS0)!'$D(TSS) D ^PLUINP
 I '$D(%OPT) D ^%L1C
 N ST S ST=$J("",SM)_$TR(TXT,TS0,TSS)
 I PRINT=54,$$^%L1T2P(ST) G ES1
S11 S ^[$$^%L1GLD]pc(PRINT,$ZP(^[$$^%L1GLD]pc(PRINT,""))+1)=ST
ES1 K TXT,STZ
 Q
KAV S STZ=$TR($J("",23)," ","-") D STZ Q
LKH(MLZ) ;
 S STZ="" D STZ
 S STZ=" zegewl itl "_MLZ_$S($L(MLZ)<5:" gily ",1:" xvln ") D STZ
 D KAV
 N LKH,TL S LKH="" F  S LKH=$O(@GLBL@("LKH",1,MLZ,LKH)) Q:LKH=""  D
 .N A S A=$G(^(LKH))
 .S STZ=$J(A,7,2)_" "_$$HBR^%L1FRM($G(^LKH(LKH)),16)_$J(LKH,11) D STZ
 .I $D(@GLBL@("LKH",1,MLZ,LKH))>9 S TL="" F  S TL=$O(@GLBL@("LKH",1,MLZ,LKH,TL)) Q:TL=""  D  S STZ="" D STZ
 ..I $G(^(TL)) S STZ=" g""y "_$J(TL,2)_" ly miyelz "_$J($G(^(TL)),3) D STZ
 .I $D(@GLBL@("LKH",1,MLZ,LKH))<10,$$TLUSH^P1L(LKH) D  S STZ="" D STZ
 ..S TL=$$TLUSH^P1L(LKH),KMTL=$J(A/TL,0,0)
 ..S STZ=" g""y "_$J(TL,2)_" ly miyelz "_$J(KMTL,3)_" (?)" D STZ
 Q

P1PRMC
P1PRMC ; PARAMETRIM KLALIIM                            [ 08.10.07 16:22 ] [ 06.07.06 13:16 ] [ 08.07.04 08:51 ]
 D ^%L1C K ^TEMP($P)
 I '$G(^P1PRM("MSD")),'$G(^P1PRM("MTAW")),'$G(^P1PRM("MSL")) D  Q
 .S %GET="<ENTER> ugl . zkxrn ly divxebitpew dligz xicbdl `p ++10,70,HH,I,R#++1,E,I" D ^%L1GET
 X %chista S %SAY="         miillk mixhnxt        ++6,58,HH,I,R" X %XMSG G ZS000
 ; TAW : ^P1PRM("HZM") - P1HZTA
 ; MSD : ^P1PRM("HZM") - P1HZMS
 ; $D(^P1PRM("HZM","TA")) - TAW + migelyn
 ; ELSE MISLOCHIM + MISADA
0 D ^%L1C X %chista ;
 S MSD=+$G(^P1PRM("MSD"))
 S MTAW=+$G(^P1PRM("MTAW"))
 S MSL=+$G(^P1PRM("MSL"))
 S MLY=($G(^PLUK)["MLY")
 S LKH=+$G(^P1PRM("LKH"))
 S MOADL=+$G(^P1PRM("MOADL"))
 S:'$D(^P1PRM("CHECK")) ^P1PRM("CHECK")=1
 S CHECK=+$G(^P1PRM("CHECK"))
 S SHAON=+$G(^P1PRM("SHAON"))
 S ASH96=1 ;+$G(^PL("ASH96"))
 S MATB=+$G(^PL("MATB"))
 S HZMNEW=+$G(^P1PRM("HZMNEW"))
 S TIP=+$G(^P1PRM("TIP"))
1 S %SCRN="P1PRMC" S %SC("A")="",%SCNC="" D ^%L1SC G:%BS END
 S %GETIN=2,%GET=" 0 - miepiy lhal , 2 - rval , 1 - owzl " D N^%L1GET K %GETIN G:%S=0 END
 I %S=1 G 0
 I 'MSD,'MSL,'MTAW S %GET=" <ENTER> ! zkxrn oiivl mzgky " D N^%L1GET G 1
 S ^P1PRM("MSD")=MSD
 K ^P1PRM("MM") S ^P1PRM("MSL")=MSL I MSL=2 S ^P1PRM("MM")=1
 S ^P1PRM("MTAW")=MTAW
 S ^PLUK="" I MLY S ^PLUK="MLY"
 S ^P1PRM("LKH")=LKH,$P(^PLUK,"*",2)="LKH"
 S ^P1PRM("CHECK")=CHECK
 S ^P1PRM("MOADL")=MOADL
 S ^P1PRM("SHAON")=SHAON
 S ^PL("ASH96")=1 ;ASH96
 S ^P1PRM("HZMNEW")=HZMNEW
 S ^P1PRM("TIP")=TIP
 S ^PL("MATB")=MATB
 S ^UCI=$P($P($ZG,"/",$L($ZG,"/")),",")
 S MISHL=$G(^P1PRM("MSL"))
 S MSD=$G(^P1PRM("MSD"))
 K ^P1PRM("HZM") Q
 ;
ZS000 S %GET=": (`l-0,ok-1) lwynde xpwq mr dcear zexyt` zniiw m`d++12,75,HH,,,C#"_+$G(^P1PRM("SCANER"))_"++1,E,I++01" D ^%L1GET
 ;G:%S=""!($G(%TO)="END")!(%TO="UP") 0
 I %S=""!($G(%TO)="END")!(%TO="UP") G END
 I %S=$G(^P1PRM("SCANER")) G ZS001
 S ^P1PRM("SCANER")=%S
 ;
 I $G(^P1PRM("SCANER")) D
 .K ^SCR("P1HZMS") S MAC1="^SCR(""P1HZMS3"")",MAC2="^SCR(""P1HZMS"")" D ^%S1GC1
 .K ^SCR("P1HZ") S MAC1="^SCR(""P1HZ3"")",MAC2="^SCR(""P1HZ"")" D ^%S1GC1
 .K ^SCR("P1HZTA") S MAC1="^SCR(""P1HZT3"")",MAC2="^SCR(""P1HZTA"")" D ^%S1GC1
 .K ^SCR("P1HZMS4") S MAC1="^SCR(""P1HZMS43"")",MAC2="^SCR(""P1HZMS4"")" D ^%S1GC1
 ;
 I '$G(^P1PRM("SCANER")) D
 .K ^SCR("P1HZMS") S MAC1="^SCR(""P1HZMS0"")",MAC2="^SCR(""P1HZMS"")" D ^%S1GC1
 .K ^SCR("P1HZMS4") S MAC1="^SCR(""P1HZMS40"")",MAC2="^SCR(""P1HZMS4"")" D ^%S1GC1
 .K ^SCR("P1HZ") S MAC1="^SCR(""P1HZ0"")",MAC2="^SCR(""P1HZ"")" D ^%S1GC1
 .K ^SCR("P1HZTA") S MAC1="^SCR(""P1HZTA0"")",MAC2="^SCR(""P1HZTA"")" D ^%S1GC1
 ;
ZS001 I $G(^P1PRM("MSD")) S ^P1PRM("HZM")=$S(%ENGLISH:"P1HZME",1:"P1HZMS")
 I $G(^P1PRM("MTAW")) S ^P1PRM("HZM")="P1HZTA"
 I '$G(^P1PRM("MSD")),'$G(^P1PRM("MTAW")),$G(^P1PRM("MSL")) S ^P1PRM("HZM")="P1HZ"
ZS00 ;;I $G(^P1PRM("MSL")) S %GET=": (`l - 0, ok - 1) zecrqn-ax migelyn zkxrn zniiw m`d++13,75,HH#"_+$G(^P1PRM("MM"))_"++1,E,I++0123" D ^%L1GET G:%S=""!($G(%TO)="END")!(%TO="UP") ZS000 S ^P1PRM("MM")=%S K:'%S ^P1TFR,^P1TFRM
ZS0 G:$G(^P1PRM("NOSHVA")) NOSHVA S %GET=":   0- `""k lawl `l, 3- 'zitqk' jxc, 2 - DOS-a `""k xeciy++14,75,HH#"_$G(^P1PRM("SHVA"))_"++1,E,I++0123"
 D ^%L1GET G:%S=""!($G(%TO)="END")!(%TO="UP") ZS000
 I %S'=2,%S'=3,%S'=0 W *7 G ZS0
 S ^P1PRM("SHVA")=%S,SHIDUR=%S
ZS I SHIDUR=2 S %GET="?   DOS-l `ay ivaw miyl okid++15,75,HH#"_$G(^PATH,"/root/dosemu/msdos/ash96/")_"++40,E,I" D ^%L1GET G:$G(%TO)="END"!(%TO="UP") ZS0 S %MBS("O",1)=%S,IOLD=1,I=1 D DIR G:'IOLD ZS S ^PATH=%MBS("O",1)
 I SHIDUR'=2 S %SAY="++15,75,HH,,,C" X %XMSG
ZS01 S %GET="? DOS-l zxewia hxq miyl okid++16,75,HH#"_$G(^PL("PATHM"),"/root/dosemu/msdos/msd04/")_"++40,E,I" D ^%L1GET G:$G(%TO)="END"!(%TO="UP") ZS0 S %MBS("O",1)=%S,IOLD=1,I=1 D DIR G:'IOLD ZS S ^PL("PATHM")=%MBS("O",1)
 S THZ=$G(^P1PRM("TIMEHZ"),30)
 S TTM=$G(^P1PRM("TIMETM"),10)
ZS02 S %GET="? DOS-ly ziy`x dixtiq z`vnp okid++17,75,HH#"_$G(^PATHDOS,"/root/dosemu/msdos/")_"++36,E,I" D ^%L1GET G:$G(%TO)="END"!(%TO="UP") ZS01 S %MBS("O",1)=%S,IOLD=1,I=1 D DIR G:'IOLD ZS S ^PATHDOS=%MBS("O",1)
ZS1 S ^P1PRM("TIMEHZ")=THZ
 S ^P1PRM("TIMETM")=TTM
ZS2 S %GET=":                (%) n""rn ly daeb++18,75,HH#"_+$G(^P1PRM("MAM"),17)_"++4,E,I" D ^%L1GET G:$G(%TO)="END"!(%TO="UP") ZS01 S ^P1PRM("MAM")=%S
ZS21 I $G(^P1PRM("LKH")) D  S %GET=":('n'a) i`xy` ly daeb++18,30,HH#"_+$G(^P1PRM("GDCR"),2000)_"++4,E,I" D ^%L1GET G:$G(%TO)="END"!(%TO="UP") ZS2 S ^P1PRM("GDCR")=%S
 .S ^UCIKL=$P($P($ZG,"/",$L($ZG,"/")),","),^UCI=^UCIKL,^PL("UCI")=^UCIKL ; ^UCI--^LKH, ^UCIKL -- ^KLF,PROG
 .;;S %GLB="["_^UCIKL_"]KL",%STAT="4,4,4,4" D ^%L1GCH
ZS3 S %GET=": (0-`l, 1-ok) mihixtza ""d`ivi""-l xefgl m`d++20,75,HH#"_+$G(^P1PRM("EXIT"))_"++1,E,I++01"
 D ^%L1GET G:$G(%TO)="END"!(%TO="UP") ZS2
 I %S'=1,%S'=0 W *7 G ZS3
 S ^P1PRM("EXIT")=%S
ZS4 ;
 S %GET=": (rval `l - 0 ) ihnehe` ieaib rval dry dfi`a++21,75,HH#"_$TR($G(^PL("BACKUP")),":","")_"++5,T,I"
 D ^%L1GET G:%TO="END" ZS3
 I '%S K ^PL("BACKUP")
 I %S D  G:'$G(^PL("BACKUP")) ZS4
 .K ^PL("BACKUP")
 .I $$^%L1ZOS(10,$G(^PATHDOS)_"MSMGIB.BAT")<0 S %GET="<ENTER> ywd ! `vnp `l MSMGIB.BAT uaew " D N^%L1GET Q
 .S ^PL("BACKUP")=%L1TIME1 Q
ZS5 ;
 S %GET=": dlil zxnyn zxnbp dry dfi`a++22,75,HH#"_+$G(^P1PRM("SHAAZ"),6)_"++2,E,I"
 D ^%L1GET G:%TO="END"!'%S ZS4
 S ^P1PRM("SHAAZ")=+$E(%S,1,2)
ZS6 ;
 S %GET=": (0-`l,1-ok) qn zeipeayge zelawa melyzl dxzi qitcdl m`d++23,75,HH#"_+$G(^P1PRM("ITRA"))_"++1,E,I++01"
 D ^%L1GET G:%TO="END"!(%S="") ZS5
 S ^P1PRM("ITRA")=+%S
 ;;S %GET=":                (lcgn zxixa) xir++22,75,HH#"_$G(^P1PRM("IR"))_"++14,H,I" D ^%L1GET G:$G(%TO)="END"!(%TO="UP") ZS3 S ^P1PRM("IR")=%S
 G END
MTAW ;
 I MTAW'=1,MTAW'=0 S %SC("ER")=1 Q
 I MTAW,MSD S %SAY=" ! dcrqn e` T.A.W e` " X %XMSGV(1) S %SC("ST")=1 Q
 Q
MSL ;
 I MSL'=1,MSL'=2,MSL'=0 S %SC("ER")=1 Q
 Q
DIR ;
 S %SSS=%MBS("O",I) S %MBS("NEW",I)=1 I %SSS="" W *7 S IOLD=IOLD-1 Q
 I $E(%SSS,$L(%SSS))'="/" S %SAY="'/' seqa" W *7 X %XMSGV S IOLD=IOLD-1 Q
 S:$E(%SSS,$L(%SSS)-1)'=":" %SSS=$E(%SSS,1,$L(%SSS)-1)
 I '$$EXIST^%L1ZOS(%SSS) D  I %S'=99!(%ER<0) S %S="",IOLD=IOLD-1 Q
 .S %ER=0 S %GET=" 99 - xviil . zniiw `l dvign " D N^%L1GET Q:%S'=99
 .S %ER=$$^%L1ZOS(6,%SSS) I %ER'<0 S %SAY=" CREATED ..." X %XMSGV(1)
 S %S=%MBS("O",I)
 Q
END D IS2^%L1GET I 'YES S %SAY="" X %XMSGN G ZS000
 Q
 ;;;------------MICHAEL
NOSHVA S ^P1PRM("SHVA")=0  S %GET="!!! xebq `ay++14,25" D ^%L1GET
 G ZS01

P1PRMCIB
P1PRMCIB ; [ 27.10.05 09:16 ] [ 24.01.05  9:52 AM ] [ 16.12.04  5:34 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SCRN="P1PRMCIB"
 S CIBLKH=$G(^P1PRM("CIBUS"))
 S ARM=$G(^P1PRM("CIBUS","ARM"))
 S MOADL=$G(^P1PRM("MOADL","CIBUS"))
 S KDM=$G(^P1PRM("CIBUS","KDM"))
 S AH=$G(^P1PRM("CIBUS","HNHAH"))
 S CID=$G(^E1G("CID"))
 D A^%L1SC
VV S FRST=1,%FNAME="CIBLKH" D GETF^%L1SC
 D IS3^%L1GET
 I %S=1 G VV
 I %S=0 G END
 S ^P1PRM("CIBUS")=CIBLKH
 S ^P1PRM("CIBUS","ARM")=ARM
 S ^P1PRM("MOADL","CIBUS")=MOADL
 S ^P1PRM("CIBUS","KDM")=KDM
 S ^P1PRM("CIBUS","HNHAH")=AH
 S ^E1G("CID")=CID
END Q

P1PRMCN
P1PRMCN ; [ 06.05.07 13:07 ] [ 07.12.06 12:47 ] [ 06.12.06 14:31 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SCRN="P1PRMCN"
 S PORT=$G(^P1PRM("CONCEPTIC","PORT"))
 S IP=$G(^P1PRM("CONCEPTIC","IP"))
 ;
 D A^%L1SC
 ;
VV S FRST=1,%FNAME="PORT" D GETF^%L1SC Q:%BS
 I 'PORT K ^P1PRM("CONCEPTIC") D  G END
 .S (PORT,IP)="" D V^%L1SC
 ;
 S ^P1PRM("CONCEPTIC")=1
ZP ;
 S ^P1PRM("CONCEPTIC","PORT")=PORT
 S ^P1PRM("CONCEPTIC","IP")=IP
 ;
END D IS1^%L1GET I 'YES G VV
 Q

P1PRMD
P1PRMD ;             [ 20.05.02 11:41 AM ] [ 09.05.02  6:02 AM ] [ 07.05.02  1:15 PM ]
 ; --- PARAMETRIM LE DOCH KASPI ---
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S PRMH="HZM\HSB\LKH\TSH"
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..S @("X"_PRM)=$G(^P1PRM("X",PRM))
 ..S @("Z"_PRM)=$G(^P1PRM("Z",PRM))
 S ^P1PRM("TOTNA")=1
 I '$D(^P1PRM("DOCHL")) S ^P1PRM("DOCHL")=1
 F II="KZR","TIPPS","TIPNT","BRTDM","ZDOCH","TIPMLZ","DOCHL","DOCHP","HRZ","ZM","BITA" S @II=$G(^P1PRM(II))
 S NSET=$G(^P1PRM("DOCHP","NSET"))
 S TIPD='$G(^P1PRM("TIPNO"))
 S DOCHY='$G(^P1PRM("NODOCHY"))
 S TIPNT='TIPNT
V S %SC("A")="",%SCRN="P1PRMD" D ^%L1SC
Z S %GETIN=2,%GET=" 0 - miepiy lhal , 2 - rval , 1 - owzl #1" D N^%L1GET K %GETIN
 I "012"'[%S!'$L(%S) G Z
 Q:%S=0
 I %S=1 G V
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..S ^P1PRM("X",PRM)=@("X"_PRM)
 ..S ^P1PRM("Z",PRM)=@("Z"_PRM)
 F II="KZR","TIPPS","TIPNT","BRTDM","ZDOCH","TIPMLZ","DOCHL","DOCHP","HRZ","ZM","BITA" S ^P1PRM(II)=@II
 S ^P1PRM("NODOCHY")='DOCHY
 S ^P1PRM("TIPNO")='TIPD
 S ^P1PRM("TIPNT")='TIPNT
 S ^P1PRM("DOCHP","NSET")=NSET
 Q
DOCHP ;
 I DOCHP'=1,DOCHP'=2,DOCHP'=0 S %SC("ER")=1 Q
 I DOCHP'=2 S NSET="" D P1^%L1SCSAY("NSET") S NNN=22 Q
 Q

P1PRMDB
P1PRMDB(GLB) ;             [ 31.12.02 12:46 PM ] [ 15.12.02  2:23 PM ] [ 03.11.02  1:05 PM ]
 D ^%L1C X %chista
 D TV^%L1RBUA(8,5,18,75)
BG S %GETIN=$G(@GLB@("LP"))
 S %GET=": (-1 ywd lehial) zegec zqtcnl hxet xtqn++10,70,HH#"_$G(@GLB@("LP"),$S(GLB["DEV":54,1:3))_"++2,E,I"
 D ^%L1GET S PORT=%S Q:PORT=""!(%TO="END")
 I PORT<2 K @GLB@("LP") Q
 S @GLB@("LP")=PORT
SUG S %GET=": zqtcn beq ywd++12,70,HH#"_$G(@GLB@("LP","SUG"),5)_"++2,E,I++++ 3 - CIT. 3540-41, 5- CIT.90/240, 7- HP , 7B - BROTHER"
 D ^%L1GET I %TO="END"!(%S="") G BG
 S @GLB@("LP","SUG")=%S
 S MDBD=$G(@GLB@("LP","MDB"))
 I 'MDBD S MDBD=$S(@GLB@("LP","SUG")<7:1,1:3)
 S %GET=": zewacn xiip beq ywd++14,70,HH#"_MDBD_"++2,E,I++++ 3 - geex ila cica , 2 - geex mr cica ,1 - zewacn oia geex mr sivx"
 D ^%L1GET I %TO="END"!(%S="") G SUG
 S @GLB@("LP","MDB")=%S
 D IS1^%L1GET I 'YES G BG
 Q

P1PRMH
P1PRMH ;                           [ 12.12.09 14:18 ] [ 28.10.09 14:53 ] [ 16.09.08 00:46 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
M K  D ^%L1C,^P1IN S M(1)="d ` i v i"
 S M(2)="miillk mixhnxt"
 S M(3)="dcrqnl mixhnxt"
 S M(4)="migelynl mixhnxt"
 S M(5)="dqtcdl mixhnxt"
 S MAC="M" D ^%L2MENU G:%I'>1 END S REG=%I-1 D @REG G M
1 ;---- KLALI
 S PRMH="HFNUM\KOLMAX\TSFTFR\AI\MNL\HNHAU\IGUL\TL\MZMDF\'NOPTCA\'NOPTASR\PTM\ITRAHZ"
 D SC(PRMH,"P1PRMH1")
 Q
2 ;----  MISSADA
 S PRMH="'MLZ\'LAST\MLZCARD\BDNOCH\MINMH\MINMHB\BARHNH\DMSBAR\BAR\LKHN\MSPSD\SHSH\HNHBAR\ZHRA\TAW\TAWH\TAWHR\FIRE\TIPMZM\HAVT\MESHVT\ADSHVT"
 D SC(PRMH,"P1PRMH3")
 Q
3 ;---- MISHLOCHIM
 S PRMH="TSHLDM\TAWMSL\TAWMSLP\TAWMSLH\HZJAD\'VIZSVNO\SHEMZ\NOTM\MMTM\TIMEHZ\TIMETM\IR\EZLA\MSLMHMIN\HZMH"
 D SC(PRMH,"P1PRMH4")
 Q
 ;
4 ;---- HADPASA
 S PRMH="HSBRKZ\SHEML\HSBENG\MANA\MANATL\HEADSH\'NOHZMPAR\BIGNAME\HZMBIT\HZMHV\HZMDBL\HZMBAR\TAWHZ\TAWS\SEFAHNM\HZMMSL\HRA2\BOTHB\ASR\TMASR\'NOKOTTSF\TSFTIED\ASRITRA\LINE\TAWHRKOT\TLBIT\JOMHL"
 D SC(PRMH,"P1PRMH2")
 Q
END Q
 ;
SC(PRMH,%SCRN) ;
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 ..I PRM1="'",PRM'="HZMHV",PRM'="HZMBIT",PRM'="NOPTCA" S @PRM='$G(^P1PRM(PRM)) Q
 ..I PRM="HZMBIT"!(PRM="HZMHV")!(PRM="NOPTCA") N A S A=$G(^P1PRM(PRM)) S @PRM=$S(A=1:0,A=0:1,1:A) Q
 ..I PRM="TAWHR",'$D(^P1PRM(PRM)) S @PRM="TAKE AWAY" Q
 ..S @PRM=$G(^P1PRM(PRM))
 .S HZMH1="" I PRM="HZMH",$G(@PRM) S HZMH1=$$SHEM^W4P(@PRM)
 .I PRM="HFNUM" S @PRM=@PRM+1
 .I PRM="ASR" S ASR=$S('ASR:1,ASR=1:0,1:ASR)
 .I PRM="BOTHB" S BOTHB=$S($G(^P1PRM("NOHDSRV")):0,'$G(^P1PRM("BOTHB")):1,1:2)
 .I PRM="KOLMAX",'@PRM S @PRM=99
 .I PRM="HNHAU",$G(HNHAU) S HNHAU1=$G(^P1HNH(HNHAU))
 .I PRM="HAVT",$G(HAVT) S HAVT1=$$SHEM^W4P(HAVT)
V S %SC("A")="" D ^%L1SC
Z S %GETIN=2,%GET=" 0 - rval `l , 2 - rval , 1 - owzl #1" D N^%L1GET K %GETIN
 I "012"'[%S!'$L(%S) G Z
 Q:%S=0
 I %S=1 G V
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 .I PRM1="'",PRM'="HZMBIT",PRM'="HZMHV",PRM'="NOPTCA" S ^P1PRM(PRM)='@PRM Q
 .I PRM="HZMBIT"!(PRM="HZMHV")!(PRM="NOPTCA") N A S A=@PRM S ^P1PRM(PRM)=$S(A=1:0,A=0:1,1:A) Q
 .S ^P1PRM(PRM)=@PRM
 .I PRM="HFNUM" S ^P1PRM(PRM)=@PRM-1
 .I PRM="ASR" S ^P1PRM("ASR")=$S('ASR:1,ASR=1:0,1:ASR)
 .I PRM="BOTHB" D
 ..S ^P1PRM("BOTHB")=$S(BOTHB>0:BOTHB-1,1:0),^P1PRM("NOHDSRV")='BOTHB
 .I PRM="HAVT",$G(HAVT) S ^PRTBH(HAVT)=""
 I '$G(^P1PRM("KOLMAX")) S ^P1PRM("KOLMAX")=99
 Q
BDHNH ;
 D ^%L1BDO Q:$G(%SC("ER"))
 I HNH,'MNL S %SAY=" ldpn cew i""r dpbd yiy i`pza wx zixyt` zakxen dgpd " X %XMSGV(1) S %SC("ST")=1
 Q
NEW D ^%L1BDO Q:$G(%SC("ER"))
 Q
MLZ I MLZ S %SCO=$G(%SCO)_",LAST",LAST=1 Q
 K %SCO
 Q

P1PRMHSV
P1PRMHSV ; [ 10/03/99  5:14 PM ] [ 09/29/97 12:24 PM ]
 F I="BANKH","BANKZ","MZMH","MZMZ","CHECKH","CHECKZ","ISRAH","ISRAZ","VIZAH","VIZAZ","DINERSH","DINERSZ","AMEXPH","AMEXPZ","HEVRAH","HEVRAZ","KUPAH","KUPAZ","MAMH","MAMZ" D
 .S @I=$G(^P1PRM("HSV",I))
 F I="TNHK","TNHS","TNHL","TNCB" D
 .S @I=$G(^P1PRM("HSV",I))
 S %SCRN="P1PRMHSV" D ^%L1SC
 S %GETIN=2,%GET=" 0 - miepiy lhal , 2 - rval , 1 - owzl " D N^%L1GET K %GETIN G:%S=0 END
 I %S=1 G 1
 F I="BANKH","BANKZ","MZMH","MZMZ","CHECKH","CHECKZ","ISRAH","ISRAZ","VIZAH","VIZAZ","DINERSH","DINERSZ","AMEXPH","AMEXPZ","HEVRAH","HEVRAZ","KUPAH","KUPAZ","MAMH","MAMZ" D
 .S ^P1PRM("HSV",I)=@I
 F I="TNHK","TNHS","TNHL","TNCB" D
 .S ^P1PRM("HSV",I)=@I
END Q

P1PRMMD
P1PRMMD ;     [ 08.08.02  8:49 AM ] [ 07.08.02  3:13 PM ] [ 23.12.01  3:38 PM ]
 ; --- PARAMETRIM LE MODEM
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S BF1=$P($G(^PL("BF")),"<>"),BF2=$P($G(^PL("BF")),"<>",2)
 S MDPORT=$G(^PL("MDPORT"))
 S P1PRMT=$G(^PL("PRMT"))
 S MDXON=$G(^PL("MDXON"))
 S INMD=$G(^P1PRM("INMD"))
 S DELAY=+$G(^PL("MDDELAY"))
 S MDLOW=+$G(^PL("MDLOW"))
 S MDRING=+$G(^PL("MDRING"),1)
 S MDPSNS=$G(^PL("MDPSNS"))
V S %SC("A")="",%SCRN="P1PRMMD" D ^%L1SC
Z S %GETIN=2,%GET=" 0 - miepiy lhal , 2 - rval , 1 - owzl #1" D N^%L1GET K %GETIN
 I "012"'[%S!'$L(%S) G Z
 Q:%S=0
 I %S=1 G V
 S ^PL("MDPORT")=MDPORT
 S ^PL("PRMT")=P1PRMT
 S ^PL("MDXON")=MDXON
 S ^P1PRM("INMD")=INMD
 S ^PL("BF")=BF1_"<>"_BF2
 S ^PL("MDTONE")="T"
 S ^PL("MDDELAY")=DELAY
 S ^PL("MDLOW")=MDLOW
 S ^PL("MDRING")=$S(MDRING<1:1,1:MDRING)
 S ^PL("MDPSNS")=MDPSNS
 Q

P1PRMML
P1PRMML ; [ 26.12.00  8:14 AM ] [ 21.11.00  9:51 AM ] [ 11.10.00 11:36 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SCRN="P1PRMML"
 F I="CARD","MESHAA","ADSHAA","MEJOM","ADJOM" S @I=$G(^P1PRM("MOADL",I))
 S PAR1="" I CARD S PAR1=$P($G(^PAR(CARD)),"**")
SC S %SC("A")="" D ^%L1SC
 D IS3^%L1GET I %S=1 G SC
 I %S=0 G END
 F I="CARD","MESHAA","ADSHAA","MEJOM","ADJOM" S ^P1PRM("MOADL",I)=@I
END Q
 ;
ADSHAA ;
 I ADSHAA'="",ADSHAA'?1N.N1 S %SC("ER")=1 Q
 I ADSHAA<MESHAA S %SC("ER")=1
 Q
ADJOM ;
 I ADJOM<MEJOM S %SC("ER")=1
 Q

P1PRMN
P1PRMN ;         [ 28.10.09 16:14 ] [ 13.08.08 09:37 ] [ 26.12.07 16:17 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC)
B D ^%L1C S ^P1HZMS(%L3MYDVN)=""
 D ^P1IN K MM S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" zexy zeipkez "
 S MAC="MM" D ^%L2MENU
 I %I=1 S ^P1HZMS(%L3MYDVN)="" Q
 S P1PRMi=%I
 K ^P1HZMS(%L3MYDVN)
 D @MM1(%I) K (P1PRMi) S:$D(P1PRMi) %L2MN("IND")=P1PRMi G B
1 ;
 D ^P1PRMS
 M ^P1PRM0=^P1PRM
 M ^PL0=^PL
 M ^PLUK0=^PLUK
 M ^DEV0=^DEV
 ;M ^SYS0=^SYS
 Q
2 ; dqtcdl xez lehia
 N PORT
 S %GETIN="",%GET="(ENTER - mlek) hxet 'qn" D N^%L1GET S PORT=%S
 D IS1^%L1GET Q:'YES
 I PORT="" K ^[$$^%L1GLD]pc Q
 K ^[$$^%L1GLD]pc(PORT)
 Q
6 X %chista I '$D(^P1NORING) S %SAY=" * - zepnfdd lkl sevtv ieaik "
 E  S %SAY=" * - sevtv xefgy "
 X %XMSGN
 S %GET=":dpnfd 'qn++3,70,HH#++7,E,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 I %S="*",$D(^P1NORING) K ^P1NORING S %SAY=" sevtiv yi " X %XMSGV(1) Q
 I %S="*",'$D(^P1NORING) S ^P1NORING="" S %SAY=" sevtv oi` " X %XMSGV(1) Q
 S HZM=%S
 S N="" F  S N=$O(^P1HM(N)) Q:N=""  I $D(^(N,HZM)) K ^(HZM) D ^%S2GLSV("^P1HM("_N_","_HZM_")",$$^P1FGIB,"K")
 I N="" S %SAY=" ! dpekp `l dpnfd " X %XMSGV(1) G 6
 S %SAY=" ! daekn " X %XMSGN(1)
 G 6
7 D ^P1KTOV
 Q
8 D ^P1JRN
 Q
9 D ^P1GS
 Q
10 U $P:(ECHO:WRAP) D ^%GR
 U $P:(NOECHO:NOWRAP)
 Q
14 ;
 S J=0 K MM F I=1:1 S T=$T(MENU1+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3)
 S MM(0)=" mirvan "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 S %SCRN=$S(%I=2:"P1MVC",%I=3:"P1MVC2",%I=4:"P1MVCH")
 S MVC=%I-1
 D
 .N DAT1,DAT2,I
 .S DAT1=$P($G(^P1MVC(MVC)),"\"),DAT2=$P($G(^P1MVC(MVC)),"\",2)
 .K ^TEMP($P) I '$D(^P1MVC(MVC)) Q
 .F I=1:1 Q:'$D(^P1MVC(MVC,I))  S ^TEMP($P,I)=^P1MVC(MVC,I)
 .S %SC("VIEW")=1
 .D A^%L1SC K %SC("VIEW")
140 S %GET=" dxey xtqn " D N^%L1GET Q:'%S!($G(%TO)="END")
 S SHURA=%S
 I '$D(^P1MVC(MVC,SHURA)) W *7 G 140
 D IS^%L1GET Q:'YES
 S N="" F  S N=$O(^P1MVCL(MVC,N)) Q:N=""  K ^P1MVCL(MVC,N,SHURA),^P1MVCL(MVC,N,99999),^P1MVCL1(MVC,N,SHURA)
 S %GET="<ENTER> . dnlyed dlert " D N^%L1GET
 Q
15 D ^P1KTOV1 Q
17 D:$$^P1SSM(4) ^P1TST Q
18 S ^P1NOSG(P1DZ)=1 S %GET="<DONE>" D N^%L1GET Q
19 ; zkxrn avn ;
 D SPACE
 U 0 R !!?40,"<ENTER>",Y
 ;;W %ENG D ^%SS W %HBR
 ;;U 0 R !!?40,"<ENTER>",Y
 Q
20 D VV^%L1TIP Q
25 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 X %chista S %SAY=" xg` aygn mr zxeywz " X %XMSGV
 S MAC="^MSPMOD"
 S %L1("EU")=1,%L1("BE")=6
 D ^%L1NU Q:FLAG'=""
 S %SAY=" SORRY , PROGRAMM IN DEVELOPMENT ..." X %XMSGV(1) Q
 D ^PLCON(INDEX)
 Q
28 D ^P1TIPMZ Q
 Q
29 ;
 D IS^%L1GET Q:'YES
 X %chista D ^%L3VLD
 Q:$D(QUIT)  Q:$$^%L1ZOS(10,"VALOK")<0
291 D ^%L1DOS("MSMGIB.BAT",$G(^PATHDOS))
 D ^%L1C
 S %GET=" DONE " D N^%L1GET
 Q
30 ;
 Q
 ;
31 S SUGSHD="M" D ^P1TR
 Q
32 D ^P1TR2M Q
33 D ^P1REPTR Q
34 D ^P1RCVD Q
35 D ^P1HVMLY Q
36 D ^P1TIPM Q
37 D REP^P1TIPM Q
38 D ^P1MDLDSK Q
39 I '$$^P1SSM(2) Q
 D ^%L1SDAT
 Q
40 I '$D(P3LOADPC) S %SAY=" ... oznd `p` " X %XMSGN
 S ^STLOOP("PC")=1 H 3 K ^flag D ^P1JOB
 Q
41 D 7^%L1TSTCH
 Q
42 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 D SRV
421 X %chista
 S %SAY=" seqn mr zxeywz xefgy "
 I $D(%ENGFL) S %SAY=" RESTORING CONNECTION TO TERMINAL "
 S MAC="^dev"
 S %L1("EU")=1,%L1("BE")=4
 S %L1("US")="%NXS[""/dev/pts""!($G(^%TYPCRT(%NXN))[""PC"")!($G(^%TYPCRT(%NXN))[""VT"")"
 S %L1("T1")=" : seqn 'qn xegal `p "
 I $D(%ENGFL) S %L1("T1")=" CHOOSE TERMINAL NUMBER : "
 S %L1("TXT1")="$$FUNC^%UCASE($G(@$$^W4DEV@(%NXN,""H"")))<>20\/%NXN<>10"
 D ^%L1NU Q:FLAG'=""
 S %GET=" <F9> ugl xey`l . "_INDEX_" seqn xgap "
 I $D(%ENGFL) S %GET=" TERMINAL NUMBER IS "_INDEX_" . TO CONFIRM PRESS <F9> "
 D N^%L1GET I %S'=99,%TO'="F9" G 421
 I INDEX<50 D
 .N N1 S N1=""
 .F  S N1=$O(^devi3(N1)) Q:N1=""  I ^devi3(N1)=INDEX S ^%TYPCRT(INDEX)="PC" Q
TV42 S FN="%l1"_$J
 ZSY "rm -f "_FN
 ZSY "ps -t "_@$$^W4DEV@(INDEX)_" > "_FN
 D GET^%L1OS(FN)
 C FN:DELETE
 F I=1:1 Q:'$D(^S111($J,I))  I ^(I)_" "[" bash " D
 .S PID=$TR($E(^(I),1,5)," ")
 .I PID ZSY "kill -9 "_PID
 S %GET="<ENTER> dnlyed dlert "
 I $D(%ENGFL) S %GET=" <DONE> "
 D N^%L1GET
 Q
43 D ^%L1TCHLD Q:'$G(%TCHOK)
 D 5^%L1TSTCH
 Q
44 I '$$^P1SSM(2) Q
 S %SAY=" ... zeipkez zwqtdl oznd `p` " X %XMSGN
441 O "msmreboot":(REWIND:NEWVERSION:WRITE) u "msmreboot" w $H c "msmreboot"
 D KMSF^P1STOP
 D ^%L1STOP H 2
 ZSY "killall gtcm_gnp_server"
 H
45 I $$^P1SSM(3) D ^P1DBREST
 Q
46 I '$$^P1SSM(2) Q
 U 0 W #
 D 461
 zsy "df"
 S %GET="<ENTER> ugl . dnlyed dlert " D N^%L1GET
 Q
461 ;
 ZSY "rm -f *.mjl_*"
 ZSY "rm -f GTM_JOBEXAM.*"
 ZSY "rm -f GTM_FATAL*"
 zsy "rm -f l1lj*"
 zsy "rm -f s1j*"
 zsy "rm -f l1sp*"
 zsy "rm -f l1ss*"
 Q
47 D ^P1START
 Q
48 D ^P1BDMDP
 Q
49 D ^P1BDMOD
 Q
50 I '$$^P1SSM(2) Q
 S %SAY=" ... zeipkez zwqtdl oznd `p` " X %XMSGN
 O "msmhalt":(REWIND:NEWVERSION:WRITE) u "msmhalt" w $H c "msmhalt"
 D KMSF^P1STOP
 D ^%L1STOP H 1
 ZSY "killall gtcm_gnp_server" H 1
 H
51 I '$$^P1SSM(2) Q
 S %SAY=" ... zeipkez zwqtdl oznd `p` " X %XMSGN
 O "msmusb":(REWIND:NEWVERSION:WRITE) u "msmusb"
 N ZGBLDIRO,PATH S ZGBLDIRO=$ZGBLDIR
 S PATH=$P(ZGBLDIRO,"/",1,$L(ZGBLDIRO,"/")-1)
 ;
 I $ZGBLDIR["/mumps.gld" D
 .W $$^%L1ENVAR("gtm_dist")_"/mumpsb.dat",!
 ;
 I $ZGBLDIR["/esiobjects.gld" D
 .W PATH_"/userb.dat",!
 .W PATH_"/esib.dat",!
 .
 W $$^%L1ENVAR("gtm_dist")_"/mly/mlyb.dat",!
 ;
 c "msmusb"
 D KMSF^P1STOP
 D ^%L1STOP H 2
 H
52 D ^P1IN S ^P1NOMDP(P1DZ)=""
 Q
53 D ^P1IN K ^P1NOMDP(P1DZ)
 Q
54 ;
 I $D(^P1HL30)<9 D  Q
 .S %GET=" <ENTER> ugl .xcyl dn oi` " D N^%L1GET
 ;
 S %L2MODEM("GLOB")="^P1HL30"
 S %L2MODEM("FL")="P1HL3_"_$P($H,",")_$TR($J($P($H,",",2),5)," ",0)_"."_$$^%L1MRK
 S %L2MODEM("MRKTO")=1000
 S %L2MODEM("ADDR")=^MRKZ(%L2MODEM("MRKTO"),"ADDR")
 D ^%L2MODEM
 I '$D(%L2MODEM("ER")) D
 .M ^P1HL3A(IND,"ALL")=^P1HL30 K ^P1HL30
 Q
SRV ;
 D ^%S1JOBL
 I $D(^s1job($$^%L3MYDVN,"gtcm_gnp_server")) Q
SRV1 ;
 ZSY $$^%L1ENVAR("gtm_dist")_"/gtcm_gnp_server -log=GTCM.LOG -service=6789"
 Q
MENU ;
 ;1; d ` i v i ;
 ;1; zkxrn ly mixhnxt;1;
 ;1; zkxrn avn;19;
 ;0;"yibx" rbn jqn oewiz;43;
 ;0; zepnfd zwica g""ec;17;
 ;0; onefna mitih zclwd;28;
 ;0; mixvlnl mitih zclwd;36;
 ;0; mixvlnl mitih g"ec;37;MANTE REJ
 ;0; dqtcdl xez lehia;2;
 ;1; "dxebq `l dtew" drced ieaik;18;
 ;MISHL; dcxhd sevtiv ieaik;6;
 ;1; "PRINT ERROR ..." drced ieaik;52;
 ;1; "PRINT ERROR ..." drced xefgy;53;
 ;0; DOS ivawn zegewl ivaw znwd;7
 ;0; DOS ivawn cewin zlzyd;15
 ;MISHL; mei jez exywzdy zegewl ihxt;8
 ;0; mivaw zxiny;9;
 ;0; mivaw xefgiy;10;
 ;$ZV["4.4."; mivaw xeciq;30;
 ;0;ynzynl mitih zclwd;20;
 ;0;xg` aygn mr zxeywz;25;
 ;$$^%L1ZOS(10,$G(^PATHDOS)_"MSMGIB.BAT")>0;zkxrn ieaib;29;
 ;0;zegewl oecren uaew zhilw;38;
 ;0;mifkxnl zerced xeciy;31;
 ;0;mifkxndn fekix zeg"ecl mipezp zxard;34;
 ;0;xg` aygnn mixg` zegec zxard;33;
 ;0;i`lnl mitipqa mihixt zexikn zxard;35;
 ;0;mifkxnn zerced zlaw;32;
 ;1;dry / jix`z oewiz;39;2
 ;1;dqtcd zeipkez zpirh;40;2
 ;0;zxyd ly 'u`h jqn zexcbd oewiz;41;
 ;0;seqn mr zxeywz xefgy;42;
 ;1;aygn legzi`;44;
 ;1;aygn ieaik;50;
 ;1;zeqtcn zwica;48;
 ;0;mcen zwica;49;
 ;1;USB wqicl ieaib;51;
 ;1;ON LINE ieaibn mipezp xefgy;45;3
 ;1;wqica mewn iepit;46;
 ;1;ycgn zkxrn zlrtd;47;
 ;0;dlwz llba exar `ly zepnfd xeciy;54;
 Q  ;
MENU1 ;
 ;1; d ` i v i
 ;1;mihixt itl rvan;1;
 ;1;mekq itl rvan;2;
 ;1;dxiav itl rvan;3;
 Q  ;
SPACE ;
 D ^%FREECNT
 N %RGN,%FTOTBLK S %RGN=$V("GVFIRST")
 S %FTOTBLK=$V("FREEBLOCKS",%RGN)
 I $D(%FTOTBLK),%FTOTBLK<1500 U $P W *7,*7,*7 S %SAY="***** ! icin ohw iept oexkif *****" X %XMSGV(1)
 Q
PATHM S %MBS("O",1)=%S,IOLD=1,I=1 D DIR S:'IOLD %SC("ER")=1 Q
 Q
DIR ;
Q
 S %SSS=%MBS("O",I) S %MBS("NEW",I)=1 I %SSS="" W *7 S IOLD=IOLD-1 Q
 I $E(%SSS,$L(%SSS))'="\" S %SAY="'\' seqa" W *7 X %XMSGV S IOLD=IOLD-1 Q
 S:$E(%SSS,$L(%SSS)-1)'=":" %SSS=$E(%SSS,1,$L(%SSS)-1)
 I $$^%L1ZOS(10,%SSS)<0 D  I %S'=99!(%ER<0) S %S="",IOLD=IOLD-1 Q
 .S %ER=0 S %GET=" 99 - xviil . zniiw `l dvign " D N^%L1GET Q:%S'=99
 .;;S %ER=$$^%L1ZOS(6,%SSS) I %ER'<0 S %SAY=" CREATED ..." X %XMSGV(1)
 S %S=%MBS("O",I)
 Q

P1PRMRS
P1PRMRS ; [ 07.12.06 12:47 ] [ 06.12.06 14:31 ] [ 22.03.06 15:10 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SCRN="P1PRMRS"
 S PORT=$G(^P1PRM("RESTORAN","PORT"))
 S IP=$G(^P1PRM("RESTORAN","IP"))
 ;
 D A^%L1SC
 ;
VV S FRST=1,%FNAME="PORT" D GETF^%L1SC Q:%BS
 I 'PORT K ^P1PRM("RESTORAN") D  G END
 .S (PORT,IP)="" D V^%L1SC
 ;
 S ^P1PRM("RESTORAN")=1
ZP ;
 S ^P1PRM("RESTORAN","PORT")=PORT
 S ^P1PRM("RESTORAN","IP")=IP
 ;
END D IS1^%L1GET I 'YES G VV
 Q

P1PRMS
 ; [ 02.11.09 10:45 ] [ 28.10.09 14:57 ] [ 16.09.08 00:44 ] [
P1PRMS ;                     [ 13.08.08 09:51 ] [ 12.08.08 18:09 ] [ 24.04.08 14:48 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC)
B D ^%L1C,^P1IN K MM S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" zkxrn ly mixhnxt "
 S MAC="MM" D ^%L2MENU
 I %I=1 Q
 S P1PRMi=%I
 D @MM1(%I) K (P1PRMi) S:$D(P1PRMi) %L2MN("IND")=P1PRMi G B
 Q
MENU ;
 ;1; d ` i v i ;
 ;0; mixhnxtd lk zxcbd;1;
 ;1; ze`nqiq;26;
 ;1; iy`xd hixtzl ze`nqiq ly zebxc;27;
 ;0; miillk mixhnxt;2;
 ;1; minelyze dpnfdl mixhnxt;3;
 ;0; `"ayl mixhnxt;20;
 ;1; oeayga dpezgz zxzekl dxrd;4;
 ;1; itqk g"ecl mixhnxt;15;
 ;1; mitih aeyig g"ecl mixhnxt;31;
 ;$G(^P1PRM("MOADL")); zegewl oecrenl mixhnxt;30;
 ;0; miqihxk `xewe mcenl mixhnxt;5;
 ;1; mipeal zeqtcn zxcbd;6;
 ;0;zepnfd zeqtcn divxebitpew iepiy;28;
 ;0;xg` aygnl dqtcd zxard;35;
 ;0;xg` aygnn dqtcd zxard;36;
 ;1; dcear zecnrl mixhnxt;7;
 ;0; 'u`h zecnrl mixhnxt;42;
 ;1; zillk zeg"ec zqtcn zxcbd;8;
 ;$P'["/tty1"; ef dcnrl zeg"ec zqtcn zxcbd;40;
 ;1; (xw'v) glynl zqtcn zxcbd;32;
 ;1; zegkep oeryl mixnhxt;11;
 ;1; zayaygl mixhnxt;9;
 ;0; 'qeaiq' ly dpgzl mixhnxt;37;
 ;0; 'qeaiq' zkxrnl mixhnxt;38;
 ;$G(^P1PRM("MP"));'qtihlen' zkxrnl mixhnxt;47;
 ;0; zenlvn zkxrnl mixhnxt;44;
 ;0; 'oxehqx'-l mixhnxt;45;
 ;0; 'wihtqpew'-l mixhnxt;46;
 ;1; wqr oeiv;10;
 Q  ;
1 ;
 D 0^P1PRMC,2,3,15,5,6,7,8,20,11
 Q
2 ; miillk mihnxt
 D ^P1PRMC
 ;D IS2^%L1GET I 'YES G 2
 Q
3 ; minelyze dpnfdl mixhnxt
 D ^P1PRMH
 Q
4 ; dpezgz zxzek zxcbd
  D ^P1KOTD
  Q
5 ; miqihxk `xewe mcenl mixhnxt
 D ^P1PRMMD
 Q
6 ; mipeal zeqtcn ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC) D ^%L1C
 K ^TEMP($P)
 S %SCRN="P1MDP",(%SCVA,%SCVG,%L1SCBEG)=1 D A^%L1SC K %SCVA,%SCVG S %FNAME="",FRST=1,%L1SCBEG=1
 F I=1:1 Q:'$D(^P1PRM("MDP",I))  S ^TEMP($P,I)=^P1PRM("MDP",I)
 D GETFG^%L1SC
 S %GETIN="k" D IS1^%L1GET K %GETIN I 'YES K ^TEMP($P) Q
 K ^P1PRM("MDP")
 F I=1:1 Q:'$D(^TEMP($P,I))  S ^P1PRM("MDP",I)=^TEMP($P,I)
 Q
7 D ^INSTPK Q
 ;
8 ; MADPESET DOCHOT
 D ^P1PRMDB("^PL")
 Q
 N PORT,SUG
81 S %GETIN=$G(^PL("LP"),3)
 S %GET=": (-1 ywd PC-l zxaegn `l zqtcn m`) zegec zqtcnl hxet xtqn " D N^%L1GET K %GETIN S PORT=%S Q:PORT=""!(%TO="END")
 S ^PL("LP")=PORT Q:PORT<3
 S %GETIN=$G(^PL("LP","SUG"),5)
 S %GET=": ( 3 - CIT. 3540-41, 4 - SENOR , 5 - CIT.90/240, 7 - HP) zqtcn beq ywd " D N^%L1GET K %GETIN I %TO="END"!(%S="") G 81
 S ^PL("LP","SUG")=%S
 Q
9 D ^INSHSV Q
10 ;wqr oeiv
 X %chista
 D ^INSES Q
11 D ^LEVINIT Q
15 D ^P1PRMD
 Q
20 D ^P1PRMSHV
 Q
26 I $$^P1SSM(3) D ^P1SISDEF
 Q
27 I $$^P1SSM(3) D ^P1MNSIS
 Q
28 ;-- SWITCH
 X %chista K ^TEMP($P)
 S ^P1PRM("SWITCH",1,1)="6\CITIZEN 1000\9\libx\0\0"
 S ^P1PRM("SWITCH",1,2)="6\CITIZEN 1000\64\zewacn\0\0"
 S ^P1PRM("SWITCH",2,1)="6\CITIZEN 1000\65\libx\0\0"
 S ^P1PRM("SWITCH",2,2)="6\CITIZEN 1000\66\zewacn\0\0"
 F I=1:1 Q:'$D(^P1PRM("MDP",I))  S ^TEMP($P,I)=^P1PRM("MDP",I)
 S %SCRN="P1MDP" D A^%L1SC
 S %GETIN=$G(^P1PRM("SWITCH")),%GET=" divxebitpew 'qn"  D N^%L1GET Q:%S=""!(%TO="END")
 S ^P1PRM("SWITCH")=%S
 K ^P1PRM("MDP")
 S MAC1="^P1PRM(""SWITCH"",^P1PRM(""SWITCH""))"
 S MAC2="^P1PRM(""MDP"")"
 D ^%S1GC1
 F I=1:1 Q:'$D(^P1PRM("MDP",I))  S ^TEMP($P,I)=^P1PRM("MDP",I)
 S %SCRN="P1MDP" D A^%L1SC
 S %SAY=" ... oznd `p` " X %XMSGN
 S ^STLOOP("PC")=1 H 2
 D TV^P1JOB
 S %GET="<DONE>" D N^%L1GET
 Q
30 D ^P1PRMML Q
31 D ^P1PRMTD Q
32 ;
 N PORT,SUG
321 S %GETIN=$G(^P1PRM("MDPMSL"),3)
 S %GET=": (wiqt onql diipy zqtcn yi m`) glynl zqtcnl hxet xtqn #5" D N^%L1GET K %GETIN S PORT=%S Q:PORT=""!(%TO="END")
 S ^P1PRM("MDPMSL")=PORT Q:PORT<3
 S %GETIN=$G(^P1PRM("MDPMSL","SUG"),6)
 S %GET=": ( 3 - CIT. 3540-41, 4 - SENOR , 5 - CIT.90/240, 7 - HP) zqtcn beq ywd #3" D N^%L1GET K %GETIN I %TO="END"!(%S="") G 81
 S ^P1PRM("MDPMSL","SUG")=%S
 Q
35 D ^P1MDPRMO Q
36 D ^P1MDPRMI Q
37 D ^E1SETUP Q
38 D ^P1PRMCIB Q
 Q
DIR ;
 S %SSS=%MBS("O",I) S %MBS("NEW",I)=1 I %SSS="" W *7 S IOLD=IOLD-1 Q
 I $E(%SSS,$L(%SSS))'="\" S %SAY="'\' seqa" W *7 X %XMSGV S IOLD=IOLD-1 Q
 S:$E(%SSS,$L(%SSS)-1)'=":" %SSS=$E(%SSS,1,$L(%SSS)-1)
 I $$^%L1ZOS(10,%SSS)<0 D  I %S'=99!(%ER<0) S %S="",IOLD=IOLD-1 Q
 .S %ER=0 S %GET=" 99 - xviil . zniiw `l dvign " D N^%L1GET Q:%S'=99
 .S %ER=$$^%L1ZOS(6,%SSS) I %ER'<0 S %SAY=" CREATED ..." X %XMSGV(1)
 S %S=%MBS("O",I)
 Q
40 ; MADPESET DOCHOT LE MASOF
 N PORT,SUG
41 D ^P1PRMDB("^DEV(%L3MYDVN)")
 Q
42 D ^P1PRMTCH
 Q
44 D ^P1PRMVD
 Q
45 D ^P1PRMRS Q
46 D ^P1PRMCN
 Q
47 D ^M1SETUP Q

P1PRMSHV
P1PRMSHV ;               [ 30.06.05 12:49 ] [ 25.06.03 10:00 ] [ 07.10.02  9:27 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
1 ;---- KLALI
 S %SCRN="P1PRMSHV"
 S PRMH="SHVMTB\KOHAV\Q\J\TIME\PCASH\TRDDP\MDPORTS\MDXONS\MDMRKS\INP\OUTP\GWULZ\VISA"
 D SC(PRMH,"P1PRMSHV")
 Q
SC(PRMH,%SCRN) ;
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..I $E(PRM)="'" S PRM=$E(PRM,2,25),@PRM='$G(^PL(PRM)) Q
 ..I PRM="INP" S @PRM=$G(^PL("TRDDP","IN")) Q
 ..I PRM="OUTP" S @PRM=$G(^PL("TRDDP","OUT")) Q
 ..I PRM="VISA" S @PRM=$G(^PL("C+L")) Q
 ..S @PRM=$G(^PL(PRM))
 ..I PRM="J" S @PRM=$S($D(^PL("SHVSH")):2,1:$G(^PL("J"))=4)
 I 'GWULZ S GWULZ=300
 I GWULZ<100 S GWULZ=100
V S %SC("A")="" D ^%L1SC
Z S %GET=" 0 - rval `l , 2 - rval , 1 - owzl #1" D N^%L1GET K %GETIN
 I "012"'[%S!'$L(%S) G Z
 Q:%S=0
 I %S=1 G V
 K ^PL("SHVSH"),^PL("TRDDP"),^PL("MDPORTS"),^PL("MDXONS"),^PL("MDMRKS")
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .I PRM="INP",@PRM S ^PL("TRDDP","IN")=@PRM Q
 .I PRM="OUTP",@PRM S ^PL("TRDDP","OUT")=@PRM Q
 .I PRM="VISA" S ^PL("C+L")=@PRM Q
 .I $E(PRM)="'" S PRM=$E(PRM,2,25),^PL(PRM)='@PRM Q
 .S ^PL(PRM)=@PRM
 .I PRM="J",@PRM=2 S ^PL(PRM)=1,^PL("SHVSH")=1 Q
 .I PRM="J",@PRM S ^PL(PRM)=4
 .I PRM="J",'@PRM S ^PL(PRM)=1
 Q
PCASH D ^%L1BDO Q:$G(%SC("ER"))
 I PCASH,$$^%L1ZOS(10,$G(^PATHDOS)_"ashz.bat")<0 D  Q
 .S %GET=" "_$$FUNC^%UCASE($G(^PATHDOS))_" dvigna ASHZ.BAT uaew xqeg "
 .D V^%L1GET S %SC("ER")=1
 Q
J I 'J S %SCO="TRDDP,OUTP,INP" ;;,(TRDDP,OUTP,INP)=""
 Q
TRDDP I 'TRDDP!(TRDDP=2) S %SCO="OUTP,INP",(OUTP,INP)=""
 I TRDDP=1 S (MDPORTS,MDXONS)="" S %SCO="MDPORTS,MDXONS,MDMRKS"
 I 'TRDDP S TRDDP="" S %SCO="MDPORTS,MDXONS,OUTP,INP,MDMRKS" S (MDPORTS,MDXONS,INP,OUTP)=""
 Q

P1PRMSI
P1PRMSI ;   [ 07/24/01  2:36 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC)
B D ^%L1C,^P1IN K MM S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" zkxrn mixhnxt "
 S MAC="MM" D ^%L2MENU
 I %I=1 Q
 S P1PRMi=%I
 D @MM1(%I) K (P1PRMi) S:$D(P1PRMi) %L2MN("IND")=P1PRMi G B
 Q
MENU ;
 ;1; d ` i v i ;
 ;0; mixhnxtd lk zxcbd;1;
 ;1; ze`nqiq;26;
 ;1; iy`x hixtzl ze`nqiq zebxc zxcbd;27;
 ;1; miillk mixhnxt;2;
 ;1; minelyze dpnfdl mixhnxt zxcbd;3;
 ;1; `ayl mixhnxt zxcbd;20;
 ;1; dpezgz zxzek zxcbd;4;
 ;1; itqk g"ec z`vedl mixhnxt zxcbd;15;
 ;1; mitih aeyig g"ecl mixhnxt zxcbd;31;
 ;$G(^P1PRM("MOADL")); zegewl oecrenl mixhnxt;30;
 ;1; miqihxk `xewe mcen mixhnxt zexcbd;5;
 ;1; zepnfd zeqtcn zxcbd;6;
 ;$G(^PL("USER"))="MAFINS";zepnfd zeqtcn divxebitpew iepiy;28;
 ;1; zepeayg zeqtcn zxcbd;7;
 ;1; zegecl zqtcn zxcbd;8;
 ;1; zegkep oeryl mixnhxt;11;
 ;$G(^P1PRM("MAHSHIR")); mixyknl mixhnxt;32;
 ;1; zayaygl mixhnxt;9;
 ;1; wqr oeiv;10;
 Q  ;
1 ;
 D 2,3,15,5,6,7,8,11
 Q
2 ; miillk mihnxt
 D ^P1PRMC
 D IS2^%L1GET I 'YES G 2
 Q
3 ; dpnfd mixhnxt
 D ^P1PRMH
 Q
4 ; dpezgz zxzek zxcbd
  D ^P1KOTD
  Q
5 ; mcen mixhnxt
 D ^P1PRMMD
 Q
6 ; gahn zeqtcn ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC) D ^%L1C
 K ^TEMP($P)
 S %SCRN="P1MDP",(%SCVA,%SCVG,%L1SCBEG)=1 D A^%L1SC K %SCVA,%SCVG S %FNAME="",FRST=1,%L1SCBEG=1
 F I=1:1 Q:'$D(^P1PRM("MDP",I))  S ^TEMP($P,I)=^P1PRM("MDP",I)
 D GETFG^%L1SC
 S %GETIN="k" D IS1^%L1GET K %GETIN I 'YES K ^TEMP($P) Q
 K ^P1PRM("MDP")
 F I=1:1 Q:'$D(^TEMP($P,I))  S ^P1PRM("MDP",I)=^TEMP($P,I)
 Q
7 D ^INSTPK Q
 ;
8 ; MADPESET DOCHOT
 N PORT,SUG
81 S %GETIN=$G(^PL("LP"),3)
 S %GET=": (-1 ywd PC-l zxaegn `l zqtcn m`) zegec zqtcnl hxet xtqn " D N^%L1GET K %GETIN S PORT=%S Q:PORT=""!(%TO="END")
 S ^PL("LP")=PORT Q:PORT<3
 S %GETIN=$G(^PL("LP","SUG"),5)
 S %GET=": ( 3 - CIT. 3540-41, 4 - SENOR , 5 - CIT.90/240, 7 - HP) zqtcn beq ywd " D N^%L1GET K %GETIN I %TO="END"!(%S="") G 81
 S ^PL("LP","SUG")=%S
 Q
9 D ^INSHSV Q
10 ;wqr oeiv
 X %chista
 D ^INSES Q
11 D ^LEVINIT Q
15 D ^P1PRMD
 Q
20 D ^P1PRMSHV
 Q
26 I $$^P1SSM(3) D ^P1SISDEF
 Q
27 I $$^P1SSM(3) D ^P1MNSIS
 Q
28 ;-- SWITCH
 X %chista K ^TEMP($P)
 S ^P1PRM("SWITCH",1,1)="3\CITIZEN 3541\14\libx\0\0"
 S ^P1PRM("SWITCH",1,2)="3\CITIZEN 3541\6\zewacn\0\0"
 S ^P1PRM("SWITCH",2,1)="3\CITIZEN 3541\71\libx\0\0"
 S ^P1PRM("SWITCH",2,2)="3\CITIZEN 3541\7\zewacn\0\0"
 F I=1:1 Q:'$D(^P1PRM("MDP",I))  S ^TEMP($P,I)=^P1PRM("MDP",I)
 S %SCRN="P1MDP" D A^%L1SC
 S %GETIN=$G(^P1PRM("SWITCH")),%GET=" divxebitpew 'qn"  D N^%L1GET Q:%S=""!(%TO="END")
 S ^P1PRM("SWITCH")=%S
 K ^P1PRM("MDP")
 S MAC1="^P1PRM(""SWITCH"",^P1PRM(""SWITCH""))"
 S MAC2="^P1PRM(""MDP"")"
 D ^%S1GC1
 F I=1:1 Q:'$D(^P1PRM("MDP",I))  S ^TEMP($P,I)=^P1PRM("MDP",I)
 S %SCRN="P1MDP" D A^%L1SC
 S %SAY=" ... oznd `p` " X %XMSGN
 S ^STLOOP("PC")=1 H 2
 D TV^P1JOB
 S %GET="<DONE>" D N^%L1GET
 Q
30 D ^P1PRMML Q
31 D ^P1PRMTD Q
32 D ^P1MDP1 Q
 Q
DIR ;
 S %SSS=%MBS("O",I) S %MBS("NEW",I)=1 I %SSS="" W *7 S IOLD=IOLD-1 Q
 I $E(%SSS,$L(%SSS))'="\" S %SAY="'\' seqa" W *7 X %XMSGV S IOLD=IOLD-1 Q
 S:$E(%SSS,$L(%SSS)-1)'=":" %SSS=$E(%SSS,1,$L(%SSS)-1)
 I $$^%L1ZOS(10,%SSS)<0 D  I %S'=99!(%ER<0) S %S="",IOLD=IOLD-1 Q
 .S %ER=0 S %GET=" 99 - xviil . zniiw `l dvign " D N^%L1GET Q:%S'=99
 .S %ER=$$^%L1ZOS(6,%SSS) I %ER'<0 S %SAY=" CREATED ..." X %XMSGV(1)
 S %S=%MBS("O",I)
 Q

P1PRMT
P1PRMT ;    [ 06.04.06 13:54 ] [ 13.12.05 17:50 ] [ 12.12.05 13:51 ]
 I $$^%L3MYDVN'=$G(^PL("MDPORT")) Q
 I '$G(^PL("PRMT")) Q
BG N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 I $$^%L3MYDVN<4 Q
 S TT=%TYPCRT
 S VT=$S(TT="VT510":1,TT["VT":2,1:3)
 S MDP=$$SUG^%L3MYLPT
SC ;
ZT X %chista
 U $P:(ECHO:NOWRAP)
 W !!,"TERMINAL TYPE ( 1 - PT, 2 - VT , 3 - PC ): " R VT
 I VT<1!(VT>3) W *7 G ZT
ZP W !!,"PRINTER TYPE ( 5 -CITIZEN , 7 - HP )     : " R MDP
 I MDP="" G ZT
 I MDP'=5,MDP'=7 W *7 G ZP
ZY R !!,"CONFIRM (Y/N) : ",YES
 S YES=$TR($E(YES),"yn","YN")
 I YES'="Y",YES'="N" W *7 G ZY
 I YES="N" G ZT
 D VT,MDP
 Q
VT ;
 I VT'=1,VT'=2,VT'=3 S %SC("ER")=1 Q
 I VT=1 S ^%TYPCRT(%L3MYDVN)="VT510"
 I VT=2 S ^%TYPCRT(%L3MYDVN)="VT520?"
 I VT=3 S ^%TYPCRT(%L3MYDVN)="PC1"
 Q
MDP Q:'MDP  I MDP'=5,MDP'=7 S %SC("ER")=1 Q
 S ^DEV(%L3MYDVN,"LP")=54
 S ^DEV(%L3MYDVN,"LP","SUG")=MDP
 I $G(^PLUK)["MLY" D
 .S ^[^UCI("MLG")]DEV(%L3MYDVN,"LP")=54
 .S ^[^UCI("MLG")]DEV(%L3MYDVN,"LP","SUG")=MDP
 Q

P1PRMTCH
P1PRMTCH ; [ 08.10.06 09:48 ] [ 17.09.06 12:52 ] [ 17.05.06 13:57 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 D ^P1CNVTCH
 ;S N="" F  S N=$O(^P1PRM("TOUCH",N)) Q:N=""  D
 .I N'?1N.N,N["/",$D(@$$^W4DEVI@(N)) M ^P1PRM("TOUCH",@$$^W4DEVI@(N))=^P1PRM("TOUCH",N) K ^P1PRM("TOUCH",N)
 S %SCRN="P1PRMTCH"
 S GLD=$$^%L1GLD
 D GET
SC D ^%L1SC
 D IS3^%L1GET
 I %S=1 G SC
 I %S=0 G END
 F I=1:1 Q:'$D(^TEMP($P,"TCH",I))  D
 .S A=$G(^(I)),PORT=$P(A,"\") Q:PORT?.P
 .S DEV=$$IND^%L1INDTC(PORT) Q:DEV=""
 .K ^[GLD]P1PRM("TOUCH",DEV)
 .S ^[GLD]P1PRM("TOUCH",DEV,"PORT")=$P(A,"\",2)
 .S ^[GLD]P1PRM("TOUCH",DEV,"KB")=$P(A,"\",3)
 .S ^[GLD]P1PRM("TOUCH",DEV,"XMIN")=$P(A,"\",4)
 .S ^[GLD]P1PRM("TOUCH",DEV,"XMAX")=$P(A,"\",5)
 .S ^[GLD]P1PRM("TOUCH",DEV,"YMIN")=$P(A,"\",6)
 .S ^[GLD]P1PRM("TOUCH",DEV,"YMAX")=$P(A,"\",7)
 .Q:'$P(A,"\",2)
 .S ^%CVET(+$G(@$$^W4DEVI@(DEV)))=$S($P(A,"\",8)=1:15,1:1)
END K ^TEMP($P,"TCH") L  Q
 ;
GET ;
 K ^TEMP($P,"TCH")
 S DEVN="",I=0 F  S DEVN=$O(^PLUK(DEVN)) Q:DEVN=""  D
 .;S DEV=$G(^[GLD]dev(DEVN)) Q:DEV=""
 .S DEV=DEVN
 .S I=I+1,$P(^TEMP($P,"TCH",I),"\",1)=DEVN
 .S $P(^TEMP($P,"TCH",I),"\",2)=$G(^[GLD]P1PRM("TOUCH",DEV,"PORT"))
 .S $P(^TEMP($P,"TCH",I),"\",3)=$G(^[GLD]P1PRM("TOUCH",DEV,"KB"))
 .S $P(^TEMP($P,"TCH",I),"\",4)=$G(^[GLD]P1PRM("TOUCH",DEV,"XMIN"))
 .S $P(^TEMP($P,"TCH",I),"\",5)=$G(^[GLD]P1PRM("TOUCH",DEV,"XMAX"))
 .S $P(^TEMP($P,"TCH",I),"\",6)=$G(^[GLD]P1PRM("TOUCH",DEV,"YMIN"))
 .S $P(^TEMP($P,"TCH",I),"\",7)=$G(^[GLD]P1PRM("TOUCH",DEV,"YMAX"))
 .S $P(^TEMP($P,"TCH",I),"\",8)=$S($G(^%CVET(+$G(@$$^W4DEVI@(DEV))))=15:1,1:0)
 Q
HZGDEV(PORT,SM) ;
 S %SAY=$J($$FUNC^%UCASE($G(^[GLD]dev(+PORT))),20)_"++22,"_SM_",HH,I" X %XMSG
 Q

P1PRMTD
P1PRMTD ; TIPIM ;    [ 24.08.01  8:52 AM ] [ 25.03.01  9:41 AM ] [ 02/19/2001  7:02 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S PRMH="MESHAA1\ADSHAA1\MESHAA2\ADSHAA2\AUTO\HILUK\AHTIP\AHDS\MZM\MSHA\SGKVZ\SGIRA"
 D SC(PRMH,"P1PRMTD")
END Q
 ;
SC(PRMH,%SCRN) ;
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..S @PRM=$G(^P1PRM("TIPDAY",PRM))
V S %SC("A")="" D ^%L1SC
Z S %GETIN=2,%GET=" 0 - rval `l , 2 - rval , 1 - owzl #1" D N^%L1GET K %GETIN
 I "012"'[%S!'$L(%S) G Z
 Q:%S=0
 I %S=1 G V
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .I $E(PRM)="'" S PRM=$E(PRM,2,25),^P1PRM("TIPDAY",PRM)='@PRM Q
 .S ^P1PRM("TIPDAY",PRM)=@PRM
 Q
AUTO I AUTO'=1,AUTO'=0 S %SC("ER")=1 Q
 I AUTO S MSHA="",%SCO="MSHA" D P1^%L1SCSAY("MSHA")
 I 'AUTO K %SCO
 Q

P1PRMVD
P1PRMVD ; [ 22.03.06 15:10 ] [ 17.06.05 11:02 AM ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S %SCRN="P1PRMVD"
 S VIDEO=$G(^P1PRM("VIDEO"))
 S PORT=$G(^P1PRM("VIDEO","PORT"))
 S DIR=$G(^P1PRM("VIDEO","DIR"))
 ;
 D A^%L1SC
 ;
VV S FRST=0,%FNAME="VIDEO" D GETF^%L1SC Q:%BS
 I 'VIDEO K ^P1PRM("VIDEO") D  G END
 .S (PORT,DIR)="" D V^%L1SC
 S ^P1PRM("VIDEO")=VIDEO
ZP S %FNAME="PORT" D GETF^%L1SC I %BS G VV
 S ^P1PRM("VIDEO","PORT")=PORT
 I PORT<51!(PORT>54) D  G END
 .K ^P1PRM("VIDEO","DIR")
 .S DIR="" D V^%L1SC
 ;
ZD S %FNAME="DIR" D GETF^%L1SC I %BS G ZP
 I $E(DIR,$L(DIR))'="/",$L(DIR) S DIR=DIR_"/"
 S ^P1PRM("VIDEO","DIR")=$TR(DIR," ","")
END D IS1^%L1GET I 'YES G VV
 Q

P1REMOTE
P1REMOTE(NMB) ; [ 15.04.07 09:28 ] [ 19.02.07 14:48 ] [ 05.02.07 11:55 ] [
 I $G(^P1PRM("REMOTE_FILIAL")) Q 1
 Q 0

P1SETA
P1SETA(GLOB) ;    [ 20.08.07 19:35 ] [ 05.08.07 16:07 ] [ 13.02.07 15:43 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,NSET,GLOB,%L1SC) D ^%L1C
 D CRSETAI
BG S %SCRN=$E(GLOB,2,9),(%SCVA,%SCVG)=1 D A^%L1SC K %SCVA,%SCVG
M S NSET1="" S %FNAME="NSET",FRST=0 D GETF^%L1SC I %BS D  Q
 .K %Q S %Q("Z")="mihqd lk qitcdl",%Q("Y")=3,%Q("X")=10,%Q("U")="l" D ^%S2ASK Q:'YES  D PRINT
 .K ^TEMPS($P)
 ;;I $G(%TO)="F7" K %L1 D HZGS G M
 I $G(NSET)<1 W *7 G M
 ;;S %FNAME="NSET1,LKH,LKH1",FRST=0 D GETF^%L1SC
 K ^TEMPS($P) ;;I '$D(@GLOB@(NSET)) D A^%L1SC G M0
ZNS ;
 I '$D(@GLOB@(NSET)) D A^%L1SC D  G:'YES M0
 .K %Q S %Q("Z")="xg` hqn hq ly okez wizrdl"
 .D N^%S2ASK Q:'YES
 .S %GET="'qn hqn okez wizrdl#3" D N^%L1GET Q:%S=""!(%TO="END")
 .I '$D(@GLOB@(%S)) S %SAY=" ! miiw `l hq " X %XMSGV(1) Q
 .D HZG(%S)
 .K %Q S %Q("Z")="wizrdl" D N^%S2ASK Q:'YES
 .M @GLOB@(NSET)=@GLOB@(%S)
 D HZG(NSET)
Z0 S %GETIN=1,%GET=" 0 - lhal , "_$S(GLOB["P1SETP":"3 - zetqez siqedl/bivdl",1:"3 - hqa miynzyn dti` ")_", 2 - qitcdl , 1 - owzl "
 D N^%L1GET I %S=""!($G(%TO)="END") G M
 I %S=0 D IS^%L1GET I YES D DS(NSET) K @GLOB@(NSET),^TEMPS($P) G BG
 I %S=2 D ^%L1SCPC G M
 I %S=3,GLOB["P1SETA" D  G Z0
 .K %L1
Z .S %GET=" 2 - zegex` , 1 - mihixt bivdl " D N^%L1GET Q:%S=""!(%TO="END")  I %S'=1,%S'=2 W *7 G Z
 .S OT=$S(%S=1:"T",1:"A")
 .S MAC="^P1EZ"_OT_"I(""A""_NSET)"
 .S %L1("EU")=2,%L1("BE")=6
 .S %L1("TXT1")="$$SHEM^P1P(%NXN)<>24H\/%NXN"
 .S %L1("DO")="S MUZAR=INDEX,%OLDTO="""" D REST^P1EZA S %SCRN=""P1EZA"" S %SC(""VIEW"")=1 D A^%L1SC"
 .S %L1("DO","GLOB")="^P1EZ"_OT
 .S %L1("DO","NSET")=NSET
 .D ^%L1NU
 I %S=3,GLOB["P1SETP" D TSF D A^%L1SC G Z0
M0 ;;S %FNAME="NSET1" S:GLOB["P1SETA" %FNAME=%FNAME_",TSF" D GETF^%L1SC I %BS G M
 I GLOB["P1SETP" S %FNAME="NSET1,LKH,LKH1"
 I GLOB["P1SETA" S %FNAME="NSET1,TSF"
 D GETF^%L1SC I %BS G M
M1 S %MBG("MOVE")="",%MBG("MIUN")="",%L1SCBEG=1 D GETFG^%L1SC Q:%BS
 S %GETIN="k" D IS1^%L1GET K %GETIN I 'YES K ^TEMPS($P) Q
 D DS(NSET) K @GLOB@(NSET) S @GLOB@(NSET)=NSET1
 I GLOB["^P1SETA" S ^(NSET)=^(NSET)_"\"_TSF
 I GLOB["^P1SETP" S ^(NSET)=^(NSET)_"\"_LKH
 F I=1:1 Q:'$D(^TEMPS($P,I))  S PAR=$P(^TEMPS($P,I),"\") I $L(PAR) D
 .S @GLOB@(NSET,PAR)=I ;;_"\"_$P(^TEMPS($P,I),"\",4)_"\"_$P(^TEMPS($P,I),"\",5)
 .S @(GLOB_"I")@(PAR,NSET)=""
 I GLOB["P1SETP" D TSF D A^%L1SC
 K ^TEMPS($P) G M
HZGS ;
  ;K %L1
  S MAC=GLOB S %L1("EU")=1,%L1("BE")=6
  S %L1("TXT1")="$P(%NXS,""\"",2)<>4H\/$P(%NXS,""\"")<>24H\/%NXN<>8"
  D ^%L1NU Q:FLAG'=""  S NSET=INDEX
 Q
HZG(NSET) ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,NSET,NSET1,PRINT,TSF,GLOB,LKH,LKH1) D ^%L1C
 K ^TEMPS($P) S %SCRN=$E(GLOB,2,9)
 S N="" F  S N=$O(@GLOB@(NSET,N)) Q:N=""  Q:N="T"  D
 .S NP=+^(N) I 'NP S NP=$ZP(^TEMPS($P,""))+1
 .S ^TEMPS($P,NP)=N_"\"_$$SHEM^P1P(N)_"\"_$$MH^P1P(N)
 S NSET1=$P($G(@GLOB@(NSET)),"\")
 S LKH1="" I GLOB["P1SETP" S LKH=$P($G(@GLOB@(NSET)),"\",2) I LKH S LKH1=$G(^LKH(LKH))
 S TSF="" I GLOB["P1SETA" S TSF=$$DEFTSF(NSET)
 S %FNAME="" S:'$D(PRINT) %SC("VIEW")=1 D A^%L1SC K %SC
 Q
DEFTSF(NSET) ;
 N KTSF,I
 S KTSF=$P($G(@GLOB@(NSET)),"\",2)
 I KTSF Q KTSF
 I KTSF="l" Q 1
 I KTSF="k"!(KTSF=0) D  Q I
 .N N S N="",I=0 F  S N=$O(@GLOB@(NSET,N)) Q:N=""  S I=I+1
 Q 1
EQ(NSET) ;
 N GLOB S GLOB="^P1SETA"
 N KT S KT=$$DEFTSF(NSET)
 I KT,KT["!"!(KT["=") Q +KT
 Q 0
PAR I $G(%OLDTO)="F9" D ^%L1CALL("P1PARI",%SCRN,"PAR") S %SC("ST")=1 Q
 I $G(%OLDTO)="F6"!($G(%OLDTO)="F7") D VIEW^P1EZM("^TEMPS($P)") Q
 I 'PAR S %SC("ER")=1 Q
 I $D(^P1EZA(PAR)),GLOB["^P1SETA" S %SAY=" ! ziwqr dgex` z`f " X %XMSGV(1) S %SC("ST")=1 Q
 I $D(^P1EZT(PAR)),GLOB["^P1SETA" S %SAY=" ! zetqez zveaw mr hixt df " X %XMSGV(1) S %SC("ST")=1 Q
 S MH=$$MH^P1P(PAR)
 N I F I=1:1 Q:'$D(^TEMPS($P,I))  I I'=SH,PAR,+$P(^TEMPS($P,I),"\")=+PAR D  Q
 .S %SAY=" ! dlaha miiw xak hixt " X %XMSGV(1)
 .S %SC("ST")=1
 Q
PRINT ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,%SCRN,GLOB) D ^%L1C
 S %GET=" 2- dagx zqtcnl , 1- dtew zqtcnl qitcdl" D N^%L1GET Q:$G(%TO)="END"!(%S="")
 I %S=1 G PRINTK
 S %DEV="USTR" D ^%L1LPT Q:$G(%EROP)
 K %L1SCPC("MDP")
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S PRINT="" D HZG(N) S NSET=N D ^%L1SCPC
 Q
DS(NSET) ;
 Q:$G(NSET)=""
 N N S N="" F  S N=$O(@GLOB@(NSET,N)) Q:N=""  K @(GLOB_"I")@(N,NSET)
 Q
PRINTK ;
 D MDP^P1PC Q:'$G(PRINT)  D ^%L1TS S %TIM=$ZD($H,"24:60")
 S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=$$^%L1DC($H,1)_" "_%TIM_$TR(" : d`ved onf ",TS0,TSS)
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=%MDP("B")_$J("",4)_$TR("dpnl mihixt hq",TS0,TSS)_%MDP("N")
 .S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=""
 .S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=%MDP("B")_$TR($$HBR^%L1FRM($P($G(@GLOB@(N)),"\"),16),TS0,TSS)_" "_N_%MDP("N")
 .I $P(@GLOB@(N),"\",2)="k" S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=%MDP("R")_$J("",12)_$TR("! zenk zwica `ll",TS0,TSS)_%MDP("RL")
 .S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=""
 .K ^VRMS($J)
 .N I S N1="" F  S N1=$O(@GLOB@(N,N1)) Q:N1=""  I $G(^(N1)) S ^VRMS($J,+^(N1))=N1
 .S N1="" F  S N1=$O(^VRMS($J,N1)) Q:N1=""  S ^[$$^%L1GLD]pc(PRINT,$O(^[$$^%L1GLD]pc(PRINT,99999),-1)+1)=$TR($$HBR^%L1FRM($$SHEM^P1P(^VRMS($J,N1)),24)_" "_^VRMS($J,N1),TS0,TSS)
 .D ^P1CUT(PRINT,%MDP("CUT")) K ^VRMS($J)
 ;;D CLOSE^%L1LPT
 Q
CRSETAI ;
 I $D(@(GLOB_"I"))<10 D
 .N N,N1 S N=""  F  S N=$O(@GLOB@(N)) Q:N=""  D
 ..S N1="" F  S N1=$O(@GLOB@(N,N1)) Q:N1=""  S @(GLOB_"I")@(N1,N)=""
 Q
TSF ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,NSET,NSET1,GLOB) D ^%L1C
 S MUZAR=NSET,MUZAR1=NSET1
 K ^TEMP($P,"EZS")
 S N="" F  S N=$O(@GLOB@(NSET,"T",N)) Q:N=""  D
 .S NP=+^(N) I 'NP S NP=$ZP(^TEMP($P,"EZS",""))+1
 .S ^TEMP($P,"EZS",NP)=N_"\"_$$SHEM^P1P(N)_"\"_$$MH^P1P(N)
 S MUST=$G(@GLOB@(NSET,"T"),"k")
 S %SCRN="P1EZS"
 I $D(^TEMP($P,"EZS"))>0 D A^%L1SC S %GET=" <F9> - owzl " D N^%L1GET S:%TO="F9" %S=99 Q:%S'=99
 S %SC("A")="" D ^%L1SC
 D IS2^%L1GET I 'YES K ^TEMP($P,"EZS") Q
 K @GLOB@(NSET,"T") S @GLOB@(NSET,"T")=MUST
 F I=1:1 Q:'$D(^TEMP($P,"EZS",I))  S N=$P(^(I),"\") I $L(N) S @GLOB@(NSET,"T",N)=I
 Q

P1SIS
P1SIS(CD) ;                           [ 05.02.09 12:24 ] [ 09.11.08 15:32 ] [ 02.01.08 13:38 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,CD,P3SSM) D ^%L1C
 N I1,SISM S I1=0 I $$NOTST(CD) Q 1
 I CD=1,$G(^P1PRM("PSW"))="" Q 1
 I CD=2,$G(^P1PRM("PSW2"))="" Q 1
 S SISM=0 I CD=2,$G(^P1PRM("PSW2")) S SISM=^("PSW2")
 I CD=3,$G(^P1PRM("PSW3")) S SISM=^("PSW3")
 I CD="B" S CD="lehial",SISM=^P1PRM("PSWBIT")
 I CD="H" S CD="dgpdl",SISM=^P1PRM("PSWHNH")
 I CD="H2" S CD="ztqep dgpdl",SISM=^P1PRM("PSWHNH2")
 I CD="HV" S CD="dxardl",SISM=^P1PRM("PSWHV")
 I CD="SISPTM" S CD="dxibn zgiztl",SISM=^P1PRM("SISPTM")
 I CD="LEVP" S SISM=^LEVP
 I CD="C" S CD="zipci dclwdl",SISM=^P1PRM("PSWCA")
 I CD="O" S CD="OTH ogley zgiztl",SISM=^P1PRM("POTH")
 I $D(P3SSM) S SIS=P3SSM G BDSIS
SIS K %S W *7 S I1=I1+1 S %SAY=" : "_CD_" `nqiq yiwdl `p " X %XMSGN
 ;;S %BE="*",%LS=12,%INV="" K CIST D ^%ZMSL
 S SIS=$$^%L1RSIS I SIS=0!(SIS="") Q 0
BDSIS ;
 I $L(SIS)=12 S SIS=+$E(SIS,3,10)
 I $L(SIS)=18 S SIS=+$E(SIS,6,13)
 I $P($G(^PL("BF")),"<>")=$E(SIS) S SIS=$E(SIS,2,20)
 I $P($G(^PL("BF")),"<>",2)=$E(SIS,$L(SIS)) S SIS=$E(SIS,1,$L(SIS)-1)
 I $$^P1SISALL(SIS) Q 1
 ;
 I SISM G BDK
 N I,CD1 S CD1=1 F I=1:1:CD-1 S CD1=CD1*10
 I CD1=1 S CD1=0
 S SISM=$G(^P1PRM("PSW"))+CD1
BDK I CD=1,$L($G(^P1PRM("PSW2"))),SIS=^P1PRM("PSW2") Q 1
 I CD<3,CD'="LEVP",$L($G(^P1PRM("PSW3"))),SIS=^P1PRM("PSW3") Q 1
 I SIS'=SISM,'$D(P3SSM) S %SAY=" ! dieby `nqiq " X %XMSGN(1) G:I1<3 SIS Q 0
 I SIS'=SISM,$D(P3SSM) Q 0
 Q 1
NOTST(CD) ;
 I CD="B",$G(^P1PRM("PSWBIT"))="" Q 1
 I CD="H",$G(^P1PRM("PSWHNH"))="" Q 1
 I CD="H2",$G(^P1PRM("PSWHNH2"))="" Q 1
 I CD="C",'$G(^P1PRM("PSWCA")) Q 1
 I CD="HV",'$G(^P1PRM("PSWHV")) Q 1
 I CD="SISPTM",'$G(^P1PRM("SISPTM")) Q 1
 I CD="LEVP",'$G(^LEVP) Q 1
 I CD="O",'$G(^P1PRM("POTH")) Q 1
 Q 0

P1SISALL
P1SISALL(SIS) ; [ 08.01.07 09:34 ] [ 04.01.07 12:11 ] [
 I $G(^P1PRM("SISHVA")),$G(^START),SIS[$E(^START,1,7) Q 1
 I '$G(^START)!'$G(^P1PRM("SISHVA")) D  I OK Q OK
 .S OK=0
 .I $G(^P1PRM("SISALL")) S OK=(SIS[^("SISALL")) Q
 .I SIS["17101957" S OK=1 Q
 .I SIS["19571710" S OK=1 Q
 .I SIS["19571017" S OK=1 Q
 Q 0

P1SISDEF
P1SISDEF ;   [ 05.02.09 12:31 ] [ 13.11.08 09:45 ] [ 13.11.02  9:49 AM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S PSW=$G(^P1PRM("PSW"))
 S PSW2=$G(^P1PRM("PSW2"))
 S PSW3=$G(^P1PRM("PSW3"))
 S PSWHNH=$G(^P1PRM("PSWHNH"))
 S PSWHNH2=$G(^P1PRM("PSWHNH2"))
 S PSWBIT=$G(^P1PRM("PSWBIT"))
 S PSWCA=$G(^P1PRM("PSWCA"))
 S PSWHV=$G(^P1PRM("PSWHV"))
 S PSWPM=$G(^P1PRM("SISPTM"))
 S POTH=$G(^P1PRM("POTH"))
1 S %SCRN="P1SISDEF" S %SC("A")="" D ^%L1SC
 S %GETIN=2,%GET=" 0 - miepiy lhal , 2 - rval , 1 - owzl " D N^%L1GET K %GETIN
 G:%S=0 END
 I %S=1 G 1
 S ^P1PRM("PSW")=PSW
 S ^P1PRM("PSW2")=PSW2
 S ^P1PRM("PSW3")=PSW3
 S ^P1PRM("PSWHNH")=PSWHNH
 S ^P1PRM("PSWHNH2")=PSWHNH2
 S ^P1PRM("PSWBIT")=PSWBIT
 S ^P1PRM("PSWCA")=PSWCA
 S ^P1PRM("PSWHV")=PSWHV
 S ^P1PRM("SISPTM")=PSWPM
 S ^P1PRM("POTH")=POTH
END ;
 Q

P1SISM
P1SISM(%DARGA) ;  [ 20.02.07 11:04 ] [ 19.02.07 12:35 ] [ 04.01.07 09:51 ]
 S MNL=0
 S %SAY=$J("",60)_"++23,70,HH" X %XMSG
ZM W *7 S %SAY=":ldpn cew++23,70,HH,I" X %XMSG
 S MNL=$$READ(1)
 I MNL=""!($G(%TO)="END") D CLSAY S MNL=0 Q MNL
 I MNL=0 Q 0
 I $$^P1SISALL(MNL) Q 1
 ;;I MNL="17101957" D CLSAY Q 1
 ;;I MNL="19571710" D CLSAY Q 1
 S MNL=$TR($J(MNL,5)," ",0) I 'MNL D CLSAY Q 0
 I '$D(^NAME(MNL,1)) S %SAY=" ! oekp `l cew " X %XMSGV(1) G ZM
 I '$D(^P1SIS(MNL)) S %SAY=" ! `nqiq oi` " X %XMSGV(1) G ZM
 I $P(^P1SIS(MNL),"\")<%DARGA S %SAY=" ! dni`zn `l dbxc " X %XMSGV(1) G ZM
 S %SAY=^NAME(MNL,1)_"++23,60,HH,I" X %XMSG
 S %SAY=":`nqiq++23,40,HH,I" X %XMSG
 S SIS=$$READ(1)
 G:SIS=""!(SIS=0) ZM
 I SIS'=$P(^P1SIS(MNL),"\",2) S %SAY=" ! dpekp `l `nqiq " X %XMSGV(1) G ZM
 S P1SISM=MNL D CLSAY
 Q P1SISM
CLSAY ;
 S %SAY=$J("",30)_"++23,70,HH,,,C" X %XMSG
 Q
READ(STAM) ;
 Q $$^%L1RSIS($G(STAM))

P1SSM
P1SSM(RAMA) ;     [ 09.11.08 17:11 ] [ 02.01.08 11:52 ] [ 06.09.06 16:39 ]
 I $G(RAMA)="" Q 1
 I $$NOTST^P1SIS(RAMA) Q 1
 I RAMA="SISPTM",$G(^P1PRM("SISPTM")) Q $$^P1SIS(RAMA)
 I RAMA="LEVP",$G(^LEVP) Q $$^P1SIS(RAMA)
 I 'RAMA,$D(^P1PRM("MNL",RAMA)) Q $$^P1SIS(RAMA)
 ;;I 'RAMA,$G(^P1PRM("MNL",RAMA)) Q $$^P1SISM(^P1PRM("MNL",RAMA))
 I '$G(^P1PRM("MNL")) Q $$^P1SIS(RAMA)
 I RAMA="O" Q $$^P1SIS(RAMA)
 I 'RAMA S RAMA=2
 ;;Q $$^P1SISM(RAMA+1)
 Q $$^P1SISM(RAMA)

P1TIPMZ
P1TIPMZ ; [ 08.03.09 09:36 ] [ 17.04.08 07:59 ] [ 25.02.08 17:17 ]
  N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
BG K  D ^%L1C,^P1IN X %chista
  S %SAY=" onefna mitih zclwd " X %XMSGV
  S LDZ=$$^P1FZ(P1DZ)
  S LASTZ=P1DZ_"^"_LDZ
  S MAC="^TIPMZ"
  I '$D(^TIPMZ(LASTZ)) S ^TIPMZ(LASTZ)=""
  S %L1("EU")=1
  S %L1("BE")=4
  S %L1("REV")=1
  S %L1("T1")=" onefna mitih :  jix`z  "
  S %L1("TXT1")="%NXS<>12,2\/$$^%L1DC($E(%NXN,1,5),1)<>12"
  S %L1("DO")="D VIEW^P1TIPMZ I INDEX=LASTZ S %L1OLD(""DO"")=""Q"""
  S %L1("DO","LASTZ")=LASTZ
  D ^%L1NU I FLAG="" G BG
END K ^TEMP($P),^VRM($J) Q
 ;
DAT1 ;
 S D2=D1,P1TIPMZ=""
 D TV^P1MLZ
 S SUMPD=$J(SUMT2,2,2),SUMSR=$J(SUMS2,2,2),SUMTPN=$J(SUMTP,2,2)
 S SH=0,TIPMZ=0 D SUM
 Q
VIEW I $P(INDEX,"^")<$P(LASTZ,"^")!($P(INDEX,"^",2)<$P(LASTZ,"^",2)) D VW Q
 D VCR
 Q
VCR S %SCRN="P1TIPMZ" K ^TEMP($P) D ^P1IN
  S D1=P1DZ,DAT1=$$^%L1DC(D1,1) D DAT1
  I $G(^P1PRM("TIPMZM")) D
  .N I F I=1:1 Q:'$D(^TEMP($P,I))  D
  ..S ^(I)=^(I)_"\@@"
  S ^SCR(%SCRN,"G","MAX")=$O(^TEMP($P,99999),-1)
  D ^%L1SC G:%BS!$G(^P1PRM("TIPMZM")) EVCR
  D IS2^%L1GET G:'YES EVCR
  ;;K ^TIPMZ(LASTZ)
  D ^%S2GLSV("^TIPMZ("""_LASTZ_""")",$$^P1FGIB,"K")
  K ^TIPMZ(LASTZ) F I=1:1 Q:'$D(^TEMP($P,I))  D
  .S MLZ=$P(^(I),"\"),TIPMZ=$P(^(I),"\",6)
  .S ^TIPMZ(LASTZ,MLZ)=TIPMZ
  .S ^TIPMZ(LASTZ)=$G(^TIPMZ(LASTZ))+TIPMZ
  D ^%S2GLSV("^TIPMZ("""_LASTZ_""")",$$^P1FGIB)
EVCR I $G(^PLUK(%L3MYDVN,"LP")) D
 .N %MDP D MDP^P1PC Q:'$G(PRINT)  Q:$D(%MDP)<10
 .S %GET="99 - mixvlnl miyelz qitcdl " D N^%L1GET S:%TO="F9" %S=99 Q:%S'=99
ME .S %GET="xvlnn++23,70,HH,,,C#++5.,E,I++++++^NAME\\\\VP" D ^%L1GET Q:%TO="END"  S ME=%S
 .S %GET="xvln cr++23,30,HH#++5.,E,I++++++^NAME\\\\VP" D ^%L1GET G:%TO="END" ME S AD=%S
 .I AD<ME G ME
 .I AD="" S AD=99999
 .N N S N="" F  S N=$O(^TIPMZ(LASTZ,N)) Q:N=""  D
 ..I N<ME!(N>AD) Q
 ..D TIPMLZ($P(LASTZ,"^"),N,$$^P1NAME(N),$G(^TIPMZ(LASTZ,N)))
 K ^TEMP($P) Q
 ;
VW S %SCRN="P1TIPMZ1" K ^TEMP($P) D ^P1IN
 S DAT1=$$^%L1DC($P(INDEX,"^"),1)
 S N="",I=0 F  S N=$O(^TIPMZ(INDEX,N)) Q:N=""  D
 .S I=I+1,^TEMP($P,I)=N_"\"_$$^P1NAME(N)_"\"_+^TIPMZ(INDEX,N)_$S($G(^P1PRM("TIPMZM")):"\@@",1:"")
 S %SC("VIEW")=1 D A^%L1SC
 Q
TIPMZ I $G(^P1PRM("TIPMZM")),%OLDTO="F9" D  S %SC("ST")=1 Q
 .N P1TIPMZ S P1TIPMZ=MSP
 .D ^%L1CALL("^P1TIPMZM",%SCRN,"P1TIPMZ")
 S TIPS=TIPN+TIPMZ
 D SUM D P1^%L1SCSAY("SUMTPM,SUMTP")
 Q
SUM ;
 N I S SUMTPM=0 F I=1:1 Q:'$D(^TEMP($P,I))  D
 .I I'=SH S SUMTPM=SUMTPM+$P(^(I),"\",6)
 S SUMTPM=SUMTPM+TIPMZ,SUMTP=SUMTPM+SUMTPN
 D P1^%L1SCSAY("SUMTPM,SUMTPN")
 Q
TIPMLZ(DAT,MLZ,NAME,TIP) ;
 Q:'$G(PRINT)  Q:'$D(%MDP)
 Q:$G(%MDP("CUT"))=""  Q:$D(P1X("SCR"))  Q:'TIP
 N SM1 S SM1=1
 S %TIM=$ZD($H,"24:60") S STZ=$J("",10)_%TIM_" "_$$^%L1DC($H,1)_" : dwtd onf" D STZ S STZ="" D STZ
 S STZ=$G(%MDP("B"))_$J("",4)_$$^%L1DC(DAT,1)_" jix`z"_$G(%MDP("N")) D STZ
 S STZ="" D STZ
 S STZ=$G(%MDP("B"))_$$HBR^%L1FRM(NAME,12)_" "_$J(MLZ,5)_$G(%MDP("N")) D STZ
 S STZ="" D STZ
 S STZ=$G(%MDP("B"))_$J(TIP,12,2)_" : "_$G(^P1PRM("TIPPS"),"tih")_$G(%MDP("N")) D STZ
 S STZ="" D STZ
 S STZ="" D STZ S STZ=$G(%MDP("B"))_"   ________  dnizg"_$G(%MDP("N")) D STZ
 D ^P1CUT(PRINT,%MDP("CUT"))
 Q
STZ D STZ^P1PCMLZ Q

P1TST
P1TST ; BDIKAT HAZMANOT  [ 02.09.12 11:56 ] [ 19.02.06 16:27 ] [ 07.11.01 12:25 PM ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C,^P1IN
 S CLS=$C(27,91,48,109) I $G(%CVET) S CLS=CLS_%CL0
Z X %chista  S %SAY=" zepnfd zwica " X %XMSGV
 S %L1DAT11=$$^%L1DC(P1DZ,1)
 S %L1CALL("PROG")="^P1HZGDAT"
 S %YY=3 D ^%L1RNG Q:%TO="END"
 S D1=$$^%L1DC(%L1DAT01,4),D2=$$^%L1DC(%L1DAT02,4)
 S SSSUM=0,STSH=0,SH=0 K ^S111($J)
 S (SMZM,SCHK,SCA,SISR,SVIZ,SDNR,SAEX,STL,STIP,SASR)=0
 S ST=%CLI_" zepnfd zwica g""ec "_CLS D S1 S ST="" D S1
 S ST=%L1DAT12_" jix`z cr   "_%L1DAT11_" jix`zn " D S1
 S ST=$TR($J("",$L(ST))," ","-") D S1
 S ST="" D S1 W !!
 F NN=D1:1:D2 S ST=$J("",15)_$ZD(NN,"DD/MM/YY") D S1 I $D(^P1H(NN)) S N1="" F  S N1=$O(^P1H(NN,N1)) Q:N1=""  D
 .S HZM=N1,SSUM=0 W HZM_" " S %SCRN=HZSCR D GA^%L1SCREF(HZSCR,"^P1HZ(HZM)")
 .I +(MZM+CHK+CA-TIP+TL+SHULA)'=+TSHL,$D(^P1HZ(HZM,"S")) S ST="" D S1 S ST=$J(TSHL,2,2)_" melyz =' "_$J(MZM+CHK+CA-TIP+TL+SHULA,2,2)_" melyz i`vnr k""dq" D S1 S ER=4
 .S SMZM=SMZM+MZM,SCHK=SCHK+CHK,SCA=SCA+CA,STIP=STIP+TIP,SASR=SASR+SHULA,STL=STL+TL
 .S ER=0
 .;
 .I CA D
 ..I $D(^P1HZ(HZM,"CB","V"))#2 S CAV=$P($G(^P1HZ(HZM,"CB","V")),"*",6),SUGV=$E($P($G(^("V")),"*",1),3) D SCAV(SUGV,CAV) Q
 ..N I,SUMV S I="",SUMV=0
 ..F  S I=$O(^P1HZ(HZM,"CB","V",I)) Q:I=""  D
 ...D ^P1GTVCH(^(I),"V") S SUGV=$E(VTS,2,6) D SCAV(SUGV,CAV) S SUMV=SUMV+CAV
 ..I +SUMV'=+CA D
 ...S ST="" D S1
 ...S ST=$J(CA,7,2)_" : dpnfda meyx mekql mi`zn `l "_$J(SUMV,7,2)_" `""k k""dq " D S1 S ER=4
 .;
 .I $D(^P1HZ(HZM,"CB","CH")) D
 ..I $D(^("CH"))#2,+^("CH")'=+CHK S ST=$J("",10)_$J(CHK,7,2)_" (CHK) '= "_$J(^("CH"),7,2)_" (CH)" D S1 Q
 ..N I S CHSS=0 F I=1:1 Q:'$D(^P1HZ(HZM,"CB","CH",I))  D ^P1GTVCH(^(I),"CH") S CHSS=CHSS+CHS
 ..I +CHSS'=+CHK S ST="" D S1 S ST=$J(CHK,7,2)_" : dpnfda meyx mekql mi`zn `l "_$J(CHSS,7,2)_" miwiy k""dq " D S1 S ER=4
 .;
 .I $D(^P1HZ(HZM,"CB","ASR")) D
 ..N I S ASRS=0,ASR0=ASR F I=1:1 Q:'$D(^P1HZ(HZM,"CB","ASR",I))  D ^P1GTVCH(^(I),"ASR") S ASRS=ASRS+ASR
 ..I +ASRS'=+ASR0 S ST="" D S1 S ST=$J(ASR0,7,2)_" : dpnfda meyx mekql mi`zn `l "_$J(ASRS,7,2)_" dtwd k""dq " D S1 S ER=4
 .S ST=HZM S ITRA=TSHL-SHUL-SHULA+TIP
 .I ITRA'=0 S ST=ST_"  - "_ITRA S ER=1
 .I $G(^P1HZ(HZM,"S"))<2 S ST=ST_"  -  dxebq `l dpnfd" S ER=2
 .D PLU1 I 'ER S ST=ST_"  - OK" D S1
 .I ER S ST="" D S1
 .S SSSUM=SSSUM+SSUM,STSH=STSH+TSHL
 S ST="" D S1
 S ST=$TR($J("",24)," ","-") D S1
 S ST=$J(STSH,7,2)_" : minelyz k""dq" D S1
 S ST=$J("",5)_$J(SMZM,7,2)_" : onefn   k""dq" D S1
 S ST=$J("",5)_$J(SCHK,7,2)_" : wiy     k""dq" D S1
 S ST=$J("",5)_$J(SCA,7,2)_" : `""k    k""dq" D S1
 S ST=$J("",10)_$J(SISR,7,2)_" : hxk`xyi k""dq" D S1
 S ST=$J("",10)_$J(SVIZ,7,2)_" : dfie    k""dq" D S1
 S ST=$J("",10)_$J(SDNR,7,2)_" : qxpiic  k""dq" D S1
 S ST=$J("",10)_$J(SAEX,7,2)_" : AM.EXP  k""dq" D S1
 S ST=$J(SSSUM,7,2)_" : aeyig itl k""dq" D S1
 S ST=$J(STSH-SSSUM,7,2)_" : yxtd" D S1
 S %L1OUT("DAF")=1 D ^%L1OUT K %L1OUT G Z
 Q
PLU1 N I,PAR,RF F I=1:1 Q:'$D(^P1HZ(HZM,I))  S RF=^(I),PAR=$P(RF,"\"),MH=$P(RF,"\",7),SUMP=0 I $L(PAR) D PLU2 D
 .N N S N="" F  S N=$O(^P1HZ(HZM,I,N)) Q:N=""  S RF=^(N),PAR=N D PLU3
 .I +SUMP'=+MH,$E(PAR)'="-" S ST=ST_":" D S1 S ST=$J(SUMP,6,2)_" : aeyig itl "_$J(MH,6,2)_" : xign    : "_$J(I,2)_" dxey "
 S SSUM=SSUM+DMSH-HNH-HNH2
 I $J(SSUM,2,2)'=$J(TSHL,2,2) D S1 S ST=$J("",10)_$J(SSUM,2,2)_": aeyig itl" D S1 S ST=$J("",10)_$J(TSHL,2,2)_": dpnfda" D S1 S ST="" D S1 S ER=3 Q
 I ER D S1
 Q
PLU2 ;
 I $E(PAR)="-",PAR["%" S SUM=$P(RF,"\",7) G PLU21
 N COL,PRC,SUM,ST,SUG,N
 S COL=$P(RF,"\",5),PRC=$P(RF,"\",4),COLP=COL
 S SUM=PRC*COL
PLU21 S SSUM=SSUM+SUM,SUMP=SUMP+SUM
 ;;W !,"PLU2: HZM=",HZM,"  PAR=",$G(PAR),"  COL=",$G(COL),"  PRC=",$G(PRC),"  SUM=",SUM,"  SSUM=",SSUM
 Q
PLU3 ;
 Q:$E(PAR,1,2)="A-"
 N ST0,COL,PRC,SUM S ST0=$P(RF,"\",2,25)
 I ST0["+\" S COL=($L(ST0,"+\")-1)*COLP S SUM=$P(ST0,"\",6)*COLP G PLU31
 S COL=$P(ST0,"\",2) S:'COL COL=COLP S SUM=$P(ST0,"\")*COL
PLU31 S SSUM=SSUM+SUM,SUMP=SUMP+SUM
 ;;W !?5,"PLU3: PAR=",PAR,"  COL=",COL,"  SUM=",SUM,"  SSUM=",SSUM
 Q
S1 S SH=SH+1,^S111($J,SH)=$J("",20)_ST
 Q
SCAV(SUGV,CAV) ;
 I SUGV=1 S SISR=SISR+CAV
 I SUGV=2 S SVIZ=SVIZ+CAV
 I SUGV=3 S SDNR=SDNR+CAV
 I SUGV=4 S SAEX=SAEX+CAV
 Q

PLUINP
PLUINP ; [ 04/24/2002   2:19 AM ]
 S TS=$C(68) F J=69:1:94 S TS=TS_$C(J)
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 S TS1=$C(224) F J=225:1:250 S TS1=TS1_$C(J)
 S TSS=$C(128) F J=129:1:154 S TSS=TSS_$C(J)
 S TSE=$C(64) F J=65:1:90 S TSE=TSE_$C(J)
 S NOMIN=+$G(^PL("NOMIN1")) ; ASUR -I
 S NOMIN2=+$G(^PL("NOMIN2")) ; ASUR  -II
 S NOMINH=+$G(^PL("NOMINH")) ; ASUR -%
 S NOITRA=+$G(^PL("NOITRA")) ; LO LATET ITRA LE MADPESET
 S PRMAM=+$G(^PL("MAM"))
 S ROMOLD=+$G(^PL("ROMOLD"))
 S ROMOLDK=+$G(^PL("ROMOLDK"))
 S SHIDUR=+$G(^PL("SHIDUR")) ; SHIDUR B MUMPS
 S PICUL=+$G(^PL("PICUL")) ; SHIDUR B MUMPS
 S PNB=+$G(^PL("NUM")) ;------- PRINT PLU WITH NUMBER
 S DLL=+$G(^PL("DLL"))
 S NML=$S(PNB:20,1:10) ;KAMUT OTIOT BSHEM
 S PLSUM=1 ;+$G(^PL("SUM"))
 S GIRSAD=+$G(^PL("GIRSAD"))
 S DOS='(+$G(^PL("NODOS")))
 S PATHM=$G(^PL("PATHM")) ;PATH LE SER KUPA
 S PLTOTM=+$G(^PL("TOT"))
 S TMISH=+$G(^PL("TM"))
 S GWOD=+$G(^PL("GWOD"),10)
 S CREAT=+$G(^PL("CREAT"))
 S MRK=+$G(^MERKAZ) ;,NOMIN=1,PLSUM=1
 ;S:MRK=1000 MRK=0
 S MRKC=$G(^MERKAZ("C")) S:'MRKC MRKC=MRK
 S FLAG=$G(^FLAG)
 S LAN=$G(^PL("LAN"),1) I LAN>1 S %XMSG(0)=LAN
 S LPLN=8
 S FLSIKS=+$G(^PL("SIKS"))
 S MATB=+$G(^PL("MATB"))
 S DMKSH=+$G(^PL("MKSH"))
 S DMSG=+$G(^PL("MSG"))
 S CARD=+$G(^PL("CARD"))
 S USER=$G(^PL("USER"),1)
 S PRKPT=+$G(^PL("KPT"))
 S ZKPT=+$G(^PL("ZKPT"))
 S MHLS=+$G(^PL("MHLS"),1000)
 S MHLC=+$G(^PL("MHLC"),100)
 S UCIKP=$ZG
 D HZG
 K MNAME S MNAME("F")="onefn"
 S MNAME("G")="d`gnd"
 S MNAME("H")="i`xy`"
 S MNAME("J")="ipci dfie"
 S MNAME("I")="ipci hxkxyi"
 S MNAME("K")="ipci qxpiic"
 S MNAME("L")="ipci AM.EX."
 S MNAME("D")="lawzd"
 S MNAME("E")="mley"
 S MNAME("S")="ipevig yelz"
 S MNAME("T")="inipt yelz"
 S MNAME("Z")="iekif 'z"
 S MNAME("V2")="dfie"
 S MNAME("V1")="hxkxyi"
 S MNAME("V3")="qxpiic"
 S MNAME("V4")="AM.EXP"
 S MNAME("V5")="ine`l"
 S MNAME("VD")="`""k lawzd"
 S MNAME("FD")="fn lawzd"
 S MNAME("GD")="wy lawzd"
 Q
HZG ;
 I '$G(^PL("ULAM")) S ULAM=1
 S GLHZG=$S($G(^PL("ULAM")):"^HZG(+$G(DATHZG),+$G(ULAM),+$G(NZG))",1:"^HZG(+$G(DATHZG),+$G(NZG))")
 S GLHZG0=$S($G(^PL("ULAM")):"^HZG(+$G(DATHZG),+$G(ULAM))",1:"^HZG(+$G(DATHZG))")
 Q

W1ADKPOR
E1ADKPOR(UID,UCD,SUM,CID) ; ADD KEYPAD ORDER [ 29.08.10 06:43 ] [ 08.06.05 16:08 ] [ 01/26/2004  3:51 PM ]
 N STR,STROU,RES
 K E1V
 I ^E1G("KEYPAD")="N" S E1V("RES")=E1C("NOKEYP") Q
 S STR=UID_"#"_^E1G("NCOID")_"#"_^E1G("RID")_"#"_SUM_"#"_^E1G("PID")_"#"_UCD_"#"_CID
 S STR="KPD"_$L(STR)_"~"_STR
 S RES=$$^E1CON(STR)
 S E1V("RES")=RES
 I RES'=E1C("OK") D ^E1GM(RES) Q
 D GETANS I RES'=E1C("OK") D ^E1GM(RES) Q
 S E1V("OID")=E1M(1)
 S E1V("SUM")=E1M(2)
 S E1V("CNAME")=E1M(3)
 S E1V("ITRA")=E1M(4)
 S E1V("RES")=E1C("OK")
 Q
GETANS ;
 D ^E1GETANS
 Q

W1BDJB
W1BDJB ; [ 31.07.11 08:24 ] [ 17.11.10 09:24 ] [
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 Q
BDK ;
 O FL:(REWIND:READONLY)
 S OK=0
 F  U FL R A Q:$ZEOF  D  Q:OK
 .I A["w1jbarg.jsp" S OK=1
 C FL
 U 0 I 'OK W !,FL
 Q

W1BDJB1
W1BDJB1 ; [ 29.10.13 03:53 ] [ 31.07.11 08:24 ] [ 17.11.10 09:24 ] [
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 Q
BDK ;
 O FL:(REWIND:READONLY)
 S OK=1
 F  U FL R A Q:$ZEOF  D  Q:'OK
 .I A[".jsp?",A'["?JB=" S OK=0
 C FL
 U 0 I 'OK W !,FL
 Q

W1BDJBAR
W1BDJBAR ; [ 09.05.17 18:43 ] [ 05.10.15 09:30 ] [ 27.08.15 08:39 ] 
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 Q
BDK ;
 O FL:(REWIND:READONLY)
 S I=0,FIRST=1,I1=0,I2=0
 F  U FL R A Q:$ZEOF  D
 .S I=I+1
 .I A["<script",FIRST S I2=I S FIRST=0 Q
 .I A["w1jbarg.jsp" S I1=I I I1>I2,I2 U 0 W FL,!
 C FL
 Q
 ;
 
 
 

W1BDJSP
W1BDJSP ; [ 30.06.12 09:57 ] [ 17.11.10 09:24 ] [
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 Q
BDK ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A[".jsp?",A'["JB=" D
 ..U $P W !,FL,!,A,!
 C FL
 Q

W1BDSE
W1BDSE ; [ 12.07.20 19:13 ] [ 01.04.20 11:17 ] [ 20.05.19 07:57 ] 
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 Q
BDK ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A["serverExec",A'[" W ",A'["'W ",A'["""W " D
 ..U $P W !,FL,!,A,!
 C FL
 Q
 ;
JB ;
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC1 S FL=$ZSEARCH(HIP) I FL'="" D BDK1 G CYC1
 Q
 ;
BDK1 ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A["w4",A[".jsp?",A'["JB=" D
 ..U $P W !,FL,!,A,!
 C FL
 Q
 ;
CHJB ;
 S PATH=$ZDIR
 S HIP=PATH_"W4*.m"
CYCJB S FL=$ZSEARCH(HIP) I FL'="" D BDKJB G CYCJB
 Q
BDKJB ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A[" N (",A'["JB" D
 ..U $P W !,FL,!,A,!
 C FL
 Q
 ;
ZAHI ;
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYCZH S FL=$ZSEARCH(HIP) I FL'="" D BDKZH G CYCZH
 Q
BDKZH ;
 S SH=0,SH1=0
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A[" frame" S SH=SH+1
 I SH>2 U $P W !,FL,!,A,!
 C FL
 Q
 ;
IF ; 
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYCIF S FL=$ZSEARCH(HIP) I FL'="" D BDKIF G CYCIF
 Q
BDKIF ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .S A1=$P(A,")")
 .I A1[" if ",A1'["==",A1["=",A1'["!=",A1'[">=",A1'["<=" D
 ..U $P W !,FL,!,A,!
 C FL
 ;
JBARG ;
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYCJBA S FL=$ZSEARCH(HIP) I FL'="" D BDKJBARG D:'OK&HTML  G CYCJBA
 .W FL,!
 Q
 ;
BDKJBARG ;
 N A S OK=0,HTML=0
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D  Q:OK
 .I A["w1jbarg",HTML S OK=1 Q
 .I A["html" S HTML=1
 C FL
 Q
 ;
ALERT ; 
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYCAL S FL=$ZSEARCH(HIP) I FL'="" D BDKAL G CYCAL
 Q
BDKAL ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I $E(A,1,6)="alert(" D
 ..U $P W !,FL,!,A,!
 C FL
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1BDSE1
W1BDSE1 ; [ 26.02.15 15:42 ] [ 25.03.14 15:59 ] [ 17.11.10 09:24 ] [
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
 S I0=0
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 Q
BDK ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A["serverExec" D
 ..R A1 I A1'["Trim" D
 ...U $P W !,FL,!,A,! S I0=I0+1
 C FL
 Q
 ;
JB ;
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC1 S FL=$ZSEARCH(HIP) I FL'="" D BDK1 G CYC1
 Q
 ;
BDK1 ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A["w4",A[".jsp?",A'["JB=" D
 ..U $P W !,FL,!,A,!
 C FL
 Q

W1BDSE2
W1BDSE2 ; [ 24.03.15 14:19 ] [ 26.02.15 15:42 ] [ 25.03.14 15:59 ]
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
 S I0=0
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 Q
BDK ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A["serverExec" D
 ..I A[" I " D
 ...U $P W !,FL,!,A,! S I0=I0+1
 C FL
 Q
 ;
JB ;
 S PATH=^W3MAIN("WEBL")
 S HIP=PATH_"w*.jsp"
CYC1 S FL=$ZSEARCH(HIP) I FL'="" D BDK1 G CYC1
 Q
 ;
BDK1 ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .I A["w4",A[".jsp?",A'["JB=" D
 ..U $P W !,FL,!,A,!
 C FL
 Q

W1BMB
W1BMB ; [ 20.03.23 09:34 ] [ 
 F I=1:1 Q:'$D(^BMB1(I))  D
 .S CD=$G(^BMB1(I,4))
 .S CD=$E(CD,$L(CD)-7,$L(CD)) Q:'CD
 .S MHAL=$G(^BMB1(I,5))
 .S $P(^MLPAR(CD,1),"\",10)=MHAL
 Q
 F I=1:1 Q:'$D(^BMB1(I))  D
 .S CD=$G(^BMB1(I,4))
 .S CD=$E(CD,$L(CD)-7,$L(CD)) Q:'CD
 .S NM=$$INVH^%L1FRM($G(^BMB1(I,3)))
 .S MH=$G(^BMB1(I,6))
 .S ^PAR(CD)=NM_"**"_MH
 Q
 ;
 ;
TV1 ;
 F I=1:1 Q:'$D(^BMB1(I))  D
 .S A=$G(^(I))
 .F J=1:1:$L(A,$C(9)) S B=$P(A,$C(9),J) D:J=3  S ^BMB1(I,J)=B
 ..I $E(B)="""" S B=$E(B,2,$L(B)-1)
 ..S B=$TR(B,TS1,TS0)
 Q
 ;
 ;
TV ;
 D ^%L1TS
 S FL="/home/gtmuser/bamb1.txt"
 O FL:(REWIND:READONLY)
 S I=0 K ^BMB1
 F  U FL R A Q:$ZEOF  D
 .S I=I+1
 .S ^BMB1(I)=$P(A,$C(13))
 C FL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1CLRTMP
W1CLRTMP ; [ 13.04.23 10:27 ] [ 30.09.18 11:15 ] [ 02.07.18 10:51 ] 
 N (JB,%ARG,%REM)
 I '$G(JB) S JB=$$^%W1SsID("W1CLRTMP")
 D ^W4CLEAR
 D CLEARJSP^W4JOB(JB)
 ;
 s gd=0,cnt=0,out=0
 D VIB("PARCAT")
 D VIB("TMP*")
 D VIB("TEMP*")
 D VIB("VRM*")
 D VIB("THZ*")
 D VIB("S000")
 D VIB("TMPS111")
 D VIB("S222")
 D VIB("S333")
 ;
 K %ZG("^TMPBIS")
 K %ZG("^TMPBISA")
 K %ZG("^TMPORD")
 K %ZG("^TMPORDA")
 K %ZG("^TMPPRM")
 ;
 S N="" F  S N=$O(%ZG(N)) Q:N=""  D
 .S REF="^[$$^W3MAIN]"_$P(N,"^",2)
 .;;W REF,!
 .K @REF
 ;
 S N1=$H-15
 S N="" F  S N=$O(^[$$^W3MAIN]TMPBISA(N)) Q:N=""  Q:N>N1  K ^(N)
 S N="" F  S N=$O(^[$$^W3MAIN]W3MSH(N)) Q:N=""  Q:$$^%L1DC(N,4)>N1  K ^(N)
 S N="" F  S N=$O(^[$$^W3MAIN]W3MSL(N)) Q:N=""  Q:$$^%L1DC(N,4)>N1  K ^(N)
 Q
 ;
VIB(PRM) ;
 S %ZG=PRM
 d setup^%GSEL
 d it^%GSEL
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1CMDSET
W1CMDSET ; [ 29.12.24 12:04 ] [ 04.04.24 21:38 ] [ 08.03.24 12:45 ] 
 N (JB,%ARG,%REM)
 I '$G(JB) S JB=$$^%W1SsID("W1CMDSET")
 ;
ZCMD R !!,"COMMAND :",CMD Q:CMD=""
 R !!,"TO <ALL>:",SSH I SSH="^" G ZCMD
 ;
 I $L($G(SSH)) S SSH=$$FUNC^%LCASE(SSH)
 D GL
 S GLTMP=$$^W4MAIN("TMP")
 S GLSET="^|$$^W3MAIN|W1CMDSET(+$H)"
 ;
 K @GLSET,@GLTMP
 ;
 S $ZT="G ER^W1CMDSET"
 S N=1
 ;
CYC G:N<1 ENDCYC S N=$O(@GL@(N)) G:N<1 ENDCYC D SNDSET(CMD)
 G CYC
ENDCYC ;
 K @GLTMP
 S $ZT="",N=""
 Q
 ;
 ;
SNDSET(CMD) ;
 ;
 I N<1 S N="" Q
 D GL
 S A=$G(@GL@(N,1))
 S IND=$P(A,"\",7) Q:IND=""
 ;
 S REF=$P(A,"\",2) Q:REF=""  Q:REF'["/w4main.jsp"
 I $L($G(SSH)),IND'[("ssh2"_SSH) Q
 S PAIL=$P(A,"\",4) Q:'PAIL
 S REF=$P(REF,"/",1,$L(REF,"/")-1)_"/w1cmdset.jsp"
 U 0 W !,N_" "_IND
 S FLOU="/home/www2order/w1cmdset"
 C FLOU:(DELETE)
 S CMD=$$CLWEB^%L1FRM(CMD)
 S CMD="curl -s -m 45 -k -d'CMD="_CMD_"' '"_REF_"' -o "_FLOU
 ;
 ZSY CMD
 ;
 I $ZSY U 0 W " -- $ZSY="_$ZSY,! Q
 I '$$EXIST^%L1ZOS(FLOU) U 0 W " -- FLOU NOT EXIST",! Q
 ;
 C FLOU
 ;
 O FLOU:(REWIND:READONLY)
 S OU="",SH=0,END=0
 ;
 N OK S OK=1
 F  U FLOU R ST Q:$ZEOF  D  Q:END
 .;;U 0 W ST,!
 .I ST["<body" D
 ..F  U FLOU R OU Q:$ZEOF  D  Q:END
 ...I OU["</body>"!(OU["</html>") S END=1 Q
 ...I OU["rror " S OK=0
 I 'OK S ^|$$^W3MAIN|W1CMDSET(+$H,"NOK",PROG,N)=IND
 ;
 C FLOU:(DELETE)
 Q
 ;
 ;
ER ;
 U 0 W N_": "_$ZS,!
 S ^|$$^W3MAIN|W1CMDSET(+$H,"ER",N)=$ZS_"\"_$G(IND)
 G CYC
 ;
 ;
GL ; 
 S GL="^|"""_$$^W3MAIN_"""|NEWCSR1"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1CRDIR
W1CRDIR ; [ 09.11.08 20:28 ] [
 S N="" F  S N=$O(^W3MSDR(1,N)) Q:N=""  I $G(^(N))'=0  D
 .I N<1005 Q
 .I '$D(^UCI(N)) Q
 .S DIR=$G(^(N)) Q:DIR=""
 .S NMDIR=$P(DIR,"/",5) Q:NMDIR=""
 .S PATH="/var/www/localhost/htdocs/"
 .I $$^%L1ZOS(10,PATH_NMDIR)>-1 Q
 .S $ZDIR=PATH
 .ZSY "mkdir "_NMDIR
 .ZSY "cd "_NMDIR
 .S FL="/usr/local/mumps/crdir"
 .O FL:(NEWVERSION:REWIND:WRITE) U FL
 .W "<html>",!
 .W "<script>",!
 .W "self.location.replace('http://www.2order.org/mumps-examples/jsp/w3menu.jsp?MSD="_N_"&COLOR=RW&NEWPAGE=1&FULLWIN=1&PR800=0')",!
 .W " </script>",!
 .W "</html>",!
 .C FL
 .ZSY "cp "_FL_" /var/www/localhost/htdocs/"_NMDIR_"/index.html"
 Q

W1CRLK
W1CRLK ; [ 20.09.19 17:14 ] [ 
 S GL="^LK" K @GL
 S DLM=$C(9)
 D ^%L1TS
 S FILE="/home/gtmuser/grand.cust.txt"
 O FILE:(REWIND:READONLY)
 F  U FILE R A Q:$ZEOF  D
 .S NUM=$P(A,DLM,1) Q:'NUM
 .I $L(NUM)<4 S NUM=$TR($J(NUM,4)," ",0)
 .S NAME=$$HB($P(A,DLM,2))
 .S SUG=$$HB($P(A,DLM,3))
 .D
 ..I SUG="libx"!(SUG="") S SUG=1,ISCR=0,GDCR=0 Q
 ..S SUG=2,ISCR=1,GDCR=2000
 .
 .S TELB=$P(A,DLM,4)
 .S KTV=$$HB($P(A,DLM,5))
 .S IR=$$HB($P(A,DLM,6))
 .I IR["aia` lz" S IR="aia` lz"
 .S MIKUD=$P(A,DLM,7)
 .S AH=$P(A,DLM,8)
 .S STAT=$P(A,DLM,9)
 .
 .D PUT^W4L(NUM,NAME,"LKH",GL)
 .D PUT^W4L(NUM,SUG,"SUGL",GL)
 .D PUT^W4L(NUM,ISCR,"ISCR",GL)
 .D PUT^W4L(NUM,GDCR,"GDCR",GL)
 .D PUT^W4L(NUM,TELB,"TELB",GL)
 .D PUT^W4L(NUM,KTV,"KTV",GL)
 .D PUT^W4L(NUM,IR,"IR",GL)
 .D PUT^W4L(NUM,MIKUD,"MIKUD",GL)
 C FILE ;
 Q
 ;
HB(TX) ;
 I $E(TX)="""" S TX=$E(TX,2,200)
 I $E(TX,$L(TX))="""" S TX=$E(TX,1,$L(TX)-1)
 Q $$INVH^%L1FRM($TR(TX,TS1,TS0))
 
 
 
 
 
 
 
 
 

W1CRPRT
 ; [ 22.09.19 20:14 ] [ 
W1CRPRT ; [ 22.09.19 20:11 ] [ 20.09.19 17:14 ] [ 
 N  K ^PRT,^PRTSUG
 S GL="^PRT" K @GL
 S DLM=$C(9)
 D ^%L1TS
 S FILE="/home/gtmuser/PAR.REST.txt"
 O FILE:(REWIND:READONLY)
 F  U FILE R A Q:$ZEOF  D
 .S SUG=$$INVH^%L1FRM($$HB($P(A,DLM,1)))
 .I $$RKV($P(A,DLM,4))="",$$RKV($P(A,DLM,5))="" Q
 .I SUG'="" S MSUG(SUG)=""
 C FILE
 ;
 S N="" F I=1:1 S N=$O(MSUG(N)) Q:N=""  S MSUG(N)=I D
 .S ^PRTSUG(I)=$$INVH^%L1FRM(N)
 ;
 O FILE:(REWIND:READONLY)
 F  U FILE R A Q:$ZEOF  D
 .S NUM=$P(A,DLM,5),L1=4
 .S NUM=$$RKV(NUM)
 .I 'NUM S NUM=$$RKV($P(A,DLM,4)) I NUM S L1=3
 .U 0
 .W NUM,!
 .Q:'NUM  Q:NUM'?1N.N
 .S NAME=$$HB($P(A,DLM,L1)) Q:NAME=""
 .S MH=$P(A,DLM,2)
 .S SUG=$$INVH^%L1FRM($$HB($P(A,DLM,1)))
 .S SUGP="" I SUG'="",$D(MSUG(SUG)) D
 ..S SUGP=MSUG(SUG)
 .S $P(@GL@(NUM),"**")=NAME
 .S $P(@GL@(NUM),"**",2)=MH
 .S $P(@GL@(NUM),"**",5)=SUGP
 ;
 C FILE ;
 Q
 ;
RKV(TX) ;
 S TX=$TR(TX,$C(13,10),"")
 S TX=$$SPA^%L1FRM(TX)
 Q TX 
 ;
HB(TX) ;
 S TX=$$RKV(TX)
 I $E(TX)="""" S TX=$E(TX,2,200)
 I $E(TX,$L(TX))="""" S TX=$E(TX,1,$L(TX)-1)
 Q $$INVH^%L1FRM($TR(TX,TS1,TS0))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1CURL
W1CURL(URL,FLTO,RESP,Timeout,Type,Token)  ; [ 06.09.26 10:46 ] [ 24.08.26 16:39 ] [ 28.07.26 11:37 ] 
 I $G(URL)="" Q "NOTURL"
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N A,ER,SH,I S ER=""
 SET RESP=""
 S Type=$G(Type)
 I $G(Timeout)="" S Timeout=15
 N FLOU S FLOU=FLTO_".ou"
 C FLOU:(DELETE)
 ;
 N CMD S CMD="curl -m "_Timeout_" -N  -s -S "
 I $L(Type) S CMD=CMD_"-H ""Content-Type:"_Type_""" "
 I $L($G(Token)) S CMD=CMD_"-H 'Authorization: Bearer "_Token_"' "
 I $G(W1CURL("DOP"))'="" S CMD=CMD_" "_W1CURL("DOP")
 S CMD=CMD_" -X POST -d@"_FLTO_" """_URL_""" -w ""\n%{http_code}"""
 S CMD=CMD_" > "_FLOU
 ZSY CMD
 ;
 D PROT("CMD",CMD)
 I $ZSY S ER=-$ZSY D PROT("ER",ER) G END
 N A
 I '$$EXIST^%L1ZOS(FLOU) S ER="NOANS" D PROT("ER",ER) G END
 ;
 O FLOU:(REWIND:READONLY)
 F  U FLOU R A Q:$ZEOF  D
 .S RESP=RESP_A_$C(9)
 ;
 I '$G(@$$^W4PRM@("DEBCURL")) C FLOU:(DELETE)
 I $G(@$$^W4PRM@("DEBCURL")) C FLOU
 ;
 S RESP=$E(RESP,1,$L(RESP)-1)
 N LN9 S LN9=$L(RESP,$C(9))
 S ER=$P(RESP,$C(9),LN9)
 D PROT("RES",ER)
 S RESP=$P(RESP,$C(9),1,LN9-1)
 N I F I=1:1:$L(RESP,$C(9)) D
 .D PROT("RESP",$P(RESP,$C(9),I))
END ; 
 I '$G(@$$^W4PRM@("DEBCURL")) D
 .ZSY "rm "_FLTO
 .ZSY "rm "_FLOU
 Q ER
 ;
 ;
PROT(IND,VL) ;
 N GL,SH,H
 S GL=$$^W4GL("W1CURL")
 S H=+$H
 S SH=$O(@GL@(H,999999),-1)+1
 S @GL@(H,SH,IND)=$E(VL,1,2000)
 ;
 I $G(GLSNDPR)'="" D
 .S SH=$O(@GLSNDPR@(H,999999),-1)+1
 .S @GLSNDPR@(H,SH,IND)=$E(VL,1,2000)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1CV
W1CV(CV) ; [ 26.01.24 06:42 ] [ 
 S CV=$G(CV)
 I $L(CV)=6,CV?.E1A.E,CV?.E1N.E,$E(CV)'="#" S CV="#"_CV
 I CV?6U S CV="#"_CV
 Q CV
 
 
 
 

W1DF
W1DF ; [ 08.01.24 13:57 ] [ 07.01.24 17:15 ] [ 
 S DIR0="/home/gtmuser/"
 S DIR1=DIR0_".con/"
 S HIP=DIR1_"ssh2*"
 S FLOU=DIR0_"df90"
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK(FL) G CYC
 Q
 ;
BDK(FL)
 S FL1=DIR0_$P(FL,"/",5)
 S CMD=FL1_" 'df' >"_FLOU
 ZSY CMD
 Q
 
 
 
 
 

W1DFNET
W1DFNET ; [ 29.12.24 12:05 ] [ 08.03.24 14:17 ] [ 14.01.24 16:45 ] 
 N (JB,%ARG,%REM)
 I '$G(JB) S JB=$$^%W1SsID("W1DF")
 ;
 S GL="^|"""_$$^W3MAIN_"""|NEWCSR1"
 S GLTMP=$$^W4MAIN("TMP")
 S GLDF="^|$$^W3MAIN|W1DF(+$H)"
 ;
 K @GLDF,@GLTMP
 ;
 S N=1
CYC S N=$O(@GL@(N)) G:N<1 ENDCYC D
 .I N<1 S N="" Q
 .S $ZT="G ER^W1DFNET"
 .S A=$G(^(N,1))
 .S REF=$P(A,"\",2) Q:REF=""  Q:REF'["/w4main.jsp"
 .S PAIL=$P(A,"\",4) Q:'PAIL
 .S IND=$P(A,"\",7) Q:IND=""
 .S REF=$P(REF,"/",1,$L(REF,"/")-1)_"/w1df.jsp"
 .
 .S FLOU="/home/www2order/w1df"_$$^W4MYDVN
 .C FLOU:(DELETE)
 .S CMD="curl -s -m 25 "_REF_" -o "_FLOU
 .;
 .ZSY CMD
 .
 .Q:$ZSY
 .Q:'$$EXIST^%L1ZOS(FLOU)
 .Q:$$SIZE^%L1ZOS(FLOU)<100
 .
 .U 0 W N_" "_IND,!
 .C FLOU
 .
 .O FLOU:(REWIND:READONLY)
 .S OU="",SH=0,END=0
 .F  U FLOU R ST Q:$ZEOF  D  Q:END
 ..I ST["<body" D
 ...F  U FLOU R OU Q:$ZEOF  D  Q:END
 ....I OU["</body>"!(OU["</html>") S END=1 Q
 ....I OU["Filesystem" Q
 ....S SH=SH+1
 ....S @GLTMP@(IND,SH)=OU
 .C FLOU:(DELETE)
 G CYC
ENDCYC ;
 S IND="" F  S IND=$O(@GLTMP@(IND)) Q:IND=""  D
 .S OK=0
 .S N="" F  S N=$O(@GLTMP@(IND,N)) Q:N=""  D  Q:OK
 ..S ST=$G(^(N))
 ..S ST=$$SP1^%L1FRM(ST)
 ..I $P(ST," ",5)>90 S OK=1
 .I OK M @GLDF@(IND)=@GLTMP@(IND)
 ;
 K @GLTMP ; ***
 S $ZT="",N="" Q
 ;
ER ;
 ;
 U 0 W N_": "_$ZS,!
 S ^|$$^W3MAIN|W1DF(+$H,"ER",N)=$ZS_"\"_$G(IND)
 G CYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1DICT
W1DICT ; [ 19.01.26 14:17 ] [ 16.06.17 12:57 ] [ 27.11.11 09:02 ] 
 N (JB,%ARG,%REM)
 S LNG1=$G(%ARG("LNG1"))
 S LNG2=$G(%ARG("LNG2"))
 W "<div dir=""LTR"" align=""center"" >",!
 ;
 D ^W4SBMBCK
 ;
 W "<table dir=""LTR"" id=""TblDict"" cellspacing=""1"" width=""90%"" border=""1"">",!
 ;
 W " <tr dir=""LTR"" style=""background-color:brown;color:white;font-weight:bold;text-align:center"">",!
 W "  <td>",!
 W "Index"
 W "  </td>",!
 W "  <td>",!
 D SEL(1)
 W "  </td>",!
 W "  <td>",!
 D SEL(2)
 W "  </td>",!
 W "  <td>",!
 W "Changed"
 W "  </td>",!
 W " </tr>",!
 ;
 I $G(LNG1)=0!($G(LNG1)="") G ETB
 ;
 S N="" F  S N=$O(^W1DICT(N)) Q:N=""  D
 .W " <tr id="""_N_""">",!
 .W "  <td>",!
 .D CODE(N)
 .W "  </td>",!
 .
 .W "  <td id=""vl1"_N_"""",!
 .I LNG1="H" W " align=""right"""
 .W " >"
 .D VL1(N)
 .W "  </td>",!
 .
 .W "  <td>",!
 .D VL2(N)
 .W "    <input type=""text"" id=""vl2"_N_""" maxlength=""80"" size=""60"" value="""_VL2_""" onKeyUp=""Changed('"_N_"')"""
 .I LNG2="H" W "style=""text-align:right;direction:RTL"""
 .W " >"
 .W "  </td>",!
 .
 .W "  <td align=""center"">",!
 .W "    <input type=""checkbox"" name=""chn"" id=""chn"_N_""" disabled=""disabled"" />"
 .W "  </td>",!
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br/>"
 W "<div id=""divbut"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
ETB ;
 W "</table>",!
 W "</div>",!
 Q
CODE(N) ;
 W N,!
 Q
SEL(NOM) ;
 W "<select id=""sel"_NOM_""" onChange=""ShowDict('"_NOM_"')"">",!
 W " <option value=""0"">Choice Dictionary</option>",!
 W " <option value=""H"" "_$$SELECTED("H",NOM)_">Hebrew</option>",!
 W " <option value=""E"" "_$$SELECTED("E",NOM)_">English</option>",!
 W " <option value=""R"" "_$$SELECTED("R",NOM)_">Russian</option>",!
 W "</select>",!
 Q
SELECTED(LNG,NOM) ;
 I @("LNG"_NOM)=LNG Q " selected=""selected"""
 Q ""
VL1(N) ;
 Q:LNG1=""  Q:LNG1=0
 S VL1=$G(^[$$^W3MAIN]W1DICT(N,LNG1))
 I LNG1="H" W $$H2U^%L1FRM(VL1) Q
 I VL1="" W "&nbsp;"
 W VL1
 Q
VL2(N) ;
 S VL2=""
 Q:LNG2=""  Q:LNG2=0
 S VL2=$G(^[$$^W3MAIN]W1DICT(N,LNG2))
 I LNG2="H" S VL2=$$H2U^%L1FRM(VL2)
 I LNG2="R" S VL2=$$CLHT^%L1FRM($$R2U^%L1FRM(VL2))
 Q
SAVE(PRM) ;
 D PUT^%W3DEB("W1DICT-SAVE","PRM=PRM")
 N IND,TXT,LNG
 S IND=$P(PRM,";") Q:IND=""
 S LNG=$P(PRM,";",2) Q:LNG=""
 S TXT=$P(PRM,";",3)
 S TXT=$$CNWEB^%L1FRM(TXT)
 I LNG="H" S TXT=$$INVH^%L1FRM(TXT)
 S ^[$$^W3MAIN]W1DICT(IND,LNG)=TXT
 Q
 
 

W1DO
W1DO ; HTTP handler for POST [ 17.06.26 10:50 ] [ 21.10.25 09:50 ] [ 20.10.25 16:45 ] 
 N
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 set body=""
 ;
 f  u $P r line q:$zeof  do
 . set body=body_line
 ;
 s prog=$p(body,"<<>>")
 i prog'?."%"1U.E s er="NOPROG" g sof
 ;
 s st=$p(body,"<<>>",2,2000)
 s er="OK" 
 ;
 i $e(prog)'="^" s prog="^"_prog
 S ^AA("W1DO","PROG")=prog
 s cmd="d "_prog_"(.st,.er)"
 S ^AA("W1DO","CMD")=cmd
 x cmd
 ; 
 U $P W "200",!
 Q
 ;
sof ;
 u $P
 w "HTTP/1.1 200 OK",!
 w "Content-Type: text/plain",!
 w "Access-Control-Allow-Origin: *",!
 w "Access-Control-Allow-Methods: GET, POST, OPTIONS",!
 w "Access-Control-Allow-Headers: Content-Type",!
 write er,!
 quit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1DPARS
 ; --> W4DPARS ; [ 09.06.09 12:37 ] [

W1DPMH
W1DPMH ;                           [ 11.07.23 12:02 ] [ 28.02.12 16:56 ] [ 06.04.07 10:22 ] 
 D ^P1IN
BG X %chista
 S HNHALL=0 K %Q
 S %Q("Z")="zexy ince mitih ,oeaygl zegpd mb hixtl zegpda lelkl"
 S %Q("X")=10,%Q("Y")=3
 D ^%S2ASK I YES S HNHALL=1
 S %YY=5 D ^%L1RNG Q:'$D(%L1D1)
 K ^TEMPMH($P)
 F DT=%L1D1:1:%L1D2 S HZM="" F  S HZM=$O(^P1H(DT,HZM)) Q:HZM=""  D
 .S DAT=$$^%L1DC(DT,2) D TEMPMH
 S %REPN="DPMH"
 S %REPN("SSOAD")=0
 S %REPN("HNHALL")=HNHALL
 D ^%L1PC
END K ^TEMPMH($P) Q
 ;
DAT S DATT=$$^%L1DC(DAT,1)
 I $$^%L1DC(DAT,4)<MEDATT S OK=0 Q
 I $$^%L1DC(DAT,4)>ADDATT S OK=0 Q
 I 'MEMH1 S MEMH1=-999
 Q
PAR ;
 D PAR1
 I PAR<MEPARIT S OK=0 Q
 I ADPARIT,PAR>ADPARIT S OK=0 Q
 S SUGP=$$SUG^P1P(PAR) I SUGP<MESUGP!(SUGP>ADSUGP) S OK=0 Q
 S MHL=$G(^PARSUG(SUGP,1))
 I MHL<MEMHL!(MHL>ADMHL) S OK=0 Q
 Q
MH N GL S GL=$G(@GLOB)
 N HZ S HZ="" F  S HZ=$O(@GLOB@(HZ)) Q:HZ=""  I '$D(^TREPK($P,"HZ",HZ)) D
 .S SOAD=$P($G(^P1HZ(HZ)),"\",24)
 .S NMB=$P($G(^P1HZ(HZ)),"\")
 .S HNH=$P($G(^P1HZ(HZ)),"\",8),TSHL=$P($G(^P1HZ(HZ)),"\",11)
 .I '$G(SOAD),$$^W4MSD(NMB),$$^P1DLPK(NMB),$G(^P1PRM("MSPSD"))=1,'$$^P1PPG S SOAD=1
 .I TSHL+HNH!$$^P1PPG,$$^W4MSD(NMB)!($$^P1PPG=3) S SSOAD=SSOAD+SOAD
 .S ^TREPK($P,"HZ",HZ)=""
 S x1=$P(GL,"*",1),x2=$J($P(GL,"*",4),2,2),x3=$P(GL,"*",2)-x2
 S x4=$J(x3*100/(100+^P1PRM("MAM")),2,2)
 I MH<MEMH1!(MH>ADMH1) S OK=0 Q
 S MH1=$TR($J(MH,2,2),".","_")
 S OK=1
 Q
PAR1 S PAR=PARIT I $E(PARIT,1,2)="A-" S PAR=$P(PARIT,"-",3) G PAR10
 I PARIT?1N.N1"-"1N.N S PAR=$P(PARIT,"-"),PARIT1=$$SHEM^P1P(PAR)_" "_$G(^P1SBR($P(PARIT,"-",2))) Q
PAR10 S PARIT1=$$SHEM^P1P(PAR)
 Q
 ;
TEMPMH N N1,PAR,RF,SSUM,SHNH,PLU1,HNHD S SSUM=0,SHNH=0
 S PLU1=""
 N TIP S TIP=$$TIP^P3HZMST(HZM)
 I '$$^W4TIPPD($$^%L1DC($G(DAT),1)) S TIP=0
 S HNHD=$$HNH^P3HZMST(HZM)-$$DMSH^P3HZMST(HZM)-TIP
 F N1=1:1 Q:'$D(^P1HZ(HZM,N1))  S PAR=$P(^P1HZ(HZM,N1),"\") S RF=^(N1) I $L(PAR) S SUMHN=$$SUMHN(HZM,N1) D PLU2 S SUMHN=0 D
 .N N S N="" F  S N=$O(^P1HZ(HZM,N1,N)) Q:N=""  S RF=^(N),PAR=N D:$D(^P1HZ(HZM,N1,N))<10 PLU3 D
 ..S N3="" F  S N3=$O(^P1HZ(HZM,N1,N,N3)) Q:N3=""  D SUM3($G(^(N3)))
 Q
PLU2 ;
 N COL,PRC,SUM,ST,SUG,N
 S SUG=$P(RF,"\",2),COL=$P(RF,"\",5),PRC=$P(RF,"\",4),SUM=$J(PRC*COL,2,2)
 S MIN=$S($TR(SUG," ","")[">":1,1:0)
 S COLP=COL D PLT
 Q
PLU3 ;
 N ST0,COL,PRC,SUM,PARO,SUMHN S ST0=$P(RF,"\",2,25)
 I $E(PAR,1,2)="A-" S COL=+ST0,SUM=0,PRC=0,PARO=PAR,PAR=$P(PAR,"-",3),MIN=$P(ST0,"\",2)[">" D PLT S PAR=PARO Q
 S PRC=$P(ST0,"\")
 I ST0["\+\" S COL=($L(ST0,"+\")-1)*COLP S SUM=$P(ST0,"\",6)*COLP
 I ST0'["\+\" S COL=$P(ST0,"\",2) S:'COL COL=COLP S SUM=PRC*COL
 D PLT
 Q
PLT ;
 N ST Q:PAR["%"  Q:PAR=""
 ;
 S ST=$G(^TEMPMH($P,DAT,MRK,PAR,$J(PRC,2,2))) D SUMST
 S SSUM=$G(SSUM)+SUM,SHNH=$G(SHNH)+$G(SUMHN)
 S ^TEMPMH($P,DAT,MRK,PAR,$J(PRC,2,2))=ST
 S ^TEMPMH($P,DAT,MRK,PAR,$J(PRC,2,2),HZM)=""
 Q
 ;
SUMST ;
 S $P(ST,"*",1)=$P(ST,"*",1)+COL
 S $P(ST,"*",2)=$P(ST,"*",2)+SUM
 S $P(ST,"*",3)=PRC
 S $P(ST,"*",4)=$P(ST,"*",4)+$G(SUMHN)
 Q
SUMHN(HZM,NN) ;
 N SUMHN,A,SUM,PAR S SUMHN=0
 S PAR=$P($G(^P1HZ(HZM,NN)),"\",1)
 S SUM=$P($G(^P1HZ(HZM,NN)),"\",7)
 K ^THZ1(%L3MYDVN)
 N I F I=1:1 Q:'$D(^P1HZ(HZM,I))  M ^THZ1(%L3MYDVN,I)=^P1HZ(HZM,I)
 N T,T1,T2,T3,T4 D ^P1HNHC11
 F NN=NN+1:1 Q:'$D(^P1HZ(HZM,NN))  S A=^(NN) Q:$P(A,"\")'["%"  D
 .S SUMHN=$G(SUMHN)-$P(A,"\",7)
 I $G(HNHALL),T,$G(HNHD),PAR?1N.N S SUMHN=SUMHN+(HNHD*(SUM-SUMHN)/T)
 Q SUMHN
SUM3(ST) ;
 N PAR,SUMHN S SUMHN=0
 I $P(ST,"\")'="" S PAR=$P(ST,"\") S (COL,COL0)=$P(ST,"\",3),PRC=0,SUM=0 D PLT Q
 S PAR=$P(ST,"\",4)
 S COL=$G(COL0),PRC=0,SUM=0 D PLT
 Q
 

W1EDPRG
W1EDPRG(PRG) ; [ 16.02.25 04:28 ] [ 15.02.25 15:31 ] [ 14.02.25 13:03 ] 
 N (JB,%ARG,PRG)
 I $L(PRG)<1 Q
 S GL=$$GL
 K @GL
 ;
 W $$OPNDIV,!
  S FL=$$FL(PRG)
  ;
  I '$$EXIST^%L1ZOS(FL) G BG
  O FL:(REWIND:READONLY)
  S I=0
  F  U FL R A Q:$ZEOF  D
  .S I=I+1,@GL@(I)=A
  C FL
  ;
  K ^S222($J)
  M ^S222($J)=@GL
  ;
BG ;
  W "Programm Name : "
  W "<input type=""text"" id=""prog"" size=""10"" "
  W "value="""_$G(%ARG("PRG"))_""" onFocus=""this.select()"" >"
  W $$NBSP^%L1FRM(2)
  W "<button style=""font-size:"_$$^W3FSZ(11)_""" onClick=""Edit()"">"
   W "&nbsp; Edit &nbsp;"
  W "</button>",! 
  W "<p></p>",!
  W "<table>",! 
  W "<tr>"
    W "<td>"
     W "<div dir=""LTR"">"
     W "<textarea id=""editor"" cols=200 rows=40"
      W " style=""font-size:"_$$^W3FSZ(11)_""" " 
     W ">"
      D EDPRG
     W "</textarea>",!
     W "</div>",!
    W "</td>",!
  W "</tr>",!
   ;
  W "</table>",!
  ;
  W "<br>",!
  W "<div id=""msg""></div>",! 
  W "<br>",! 
  ; 
  D DIVBUT(PRG)
  ;
  W "</div>",!
END Q
  ;
  ;
EDPRG ;
 N N,A,B,C,I,J,K,TAG,LTX,LN,MC
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S LN=$G(^(N))
 .W LN,!
 Q
  ;
  ;
VW(TX,PR) ;
 N ST
 S ST="<span style=""font-weight:bold"">"
 D
 .I $G(PR)="H" S TX=$$H2U^%L1FRM(TX) Q
 .I $G(PR)="N" S TX=$J(TX,2,2) Q
 S ST=ST_TX_"</span>"
 Q ST 
 ;
 ;
SPACE(ZN)
 I '$G(ZN) S ZN=5
 Q $$NBSP^%L1FRM(ZN)
 ;
SAVE(ST) ; 
 N (JB,%ARG,ST) 
 S IND=$O(@$$GL@(99999),-1)+1
 ;
 I IND=1 D
 .N ST1,%CMM,%DFR,%DTOLD
 .S ST1=ST
 .S %CMM=$P(ST1," ;",2,90)
 .S %DFR=0 S %DTOLD=$P($P(%CMM,"[ ",2)," ",1)
 .I $$^%L1DC($H,1)=%DTOLD S %DFR=1
 .S %CMM=$P(%CMM," [ ")_" [ "_$ZD($H,"DD.MM.YY 24:60")_" ] [ "_$P(%CMM,"[ ",2+%DFR,3+%DFR) S @$$GL@(1)=$P(ST1," ;")_" ;"_%CMM
 .S ST=$$SPA^%L1FRM($P(ST1,";"))_" ; "_%CMM
 ;
 S @$$GL@(IND)=ST
 Q 1
 ;
 ;
WRITE() 
 N GL S GL=$$GL
 S PRG=$G(@GL) I PRG="" Q "NOTPROGNAME"
 S FL=$$FL(PRG)
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION:REWIND)
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D 
 .S A=$G(^(N))
 .U FL W A,!
 C FL
 D ERGS(PRG)
 Q $ZSY
 ;
 ;
DIVBUT(PRG) ;
 D ^W4BTN("SUBMIT","Submit('"_PRG_"')","green")
 Q
 ;
 ;
OPNDIV(ID) ; 
 N ST
 S ST="<div "
 I $G(ID)'="" S ST=ST_" id="""_ID_""" "
 S ST=ST_" dir=""LTR"" align=""center"" style="""_$$FONTFM^W4CSS1_""" >"
 Q ST
 ;
GL(STAM) ;
 Q $$^W4MAIN("S000")
 ;
DIR() ;
 Q "/home/gtmuser/app/mumps/"
 ;  
FL(PRG) ;
 N FL
 S PRG=$TR(PRG,"%","_")
 S FL=$$DIR_PRG_".m"
 Q FL
 ;
ERGS(%PROG) ;
 K ^UTILITY($J),^TMPS111($J)
 M ^UTILITY($J,1,"[ NEW ]")=@$$GL
 M ^UTILITY($J,2,"[ OLD ]")=^S222($J)
 S ^UTILITY($J,1)="[ NEW ]"
 S ^UTILITY($J,2)="[ OLD ]" D ^%L2RCMP
 ;
 S DIR=$ZGBLDIR
 M ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=^TMPS111($J)
 S ^[DIR]%ERGS(+$H,%PROG)=$$^%L1ZU(0)
 S ^[DIR]%ERGS(+$H,%PROG)=$ZROU
Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1EX
W1EX ; [ 08.02.26 18:53 ] [ 
 N CMD
 S CMD=$ZCMD
 S ^AA("W1EX","CMD")=CMD
 I CMD["CMD=" S CMD=$P(CMD,"CMD=",2,200)
 D ^W1EXM(CMD)
 Q
 
 

W1EX2PAR
W1EX2PAR ; TASHLUM BASHRAI                           [ 27.03.23 15:53 ] [ 26.03.23 18:41 ] [ 04.02.19 17:56 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER"
 D ^%L1TS
 S FL="/home/gtmuser/bmb7.txt"
 O FL:(REWIND:READONLY)
 S DEP10="",GR10="",NGR=$O(^PARSUG(9999999),-1),NDEP=$O(^DEP(99999),-1)
 S NSP=$O(^W4SPK(9999999),-1)
 ;
 S DLM=$C(9)
 ;;K ^PAR,^PARSUG,^DEP
 ;
 F  U FL R A Q:$ZEOF  D
 .U 0 W A,!
 .S PAR=$P(A,DLM,3) Q:'PAR
 .S PAR=$E(PAR,$L(PAR)-7,$L(PAR))
 .S NM=$TR($P(A,DLM,2),$C(13),"")
 .S NM=$$UCASE(NM)
 .S PAR1=$$UCASE($TR($P(A,DLM,1),"-",""))_" "_$$U2L(NM)
 .S PAR1=$TR(PAR1,"="," ")
 .S PAR1=$$SP1^%L1FRM(PAR1)
 .S PAR1=$$SPA^%L1FRM(PAR1)
 .;;S DEP1=$$U2L($P(A,DLM,4))
 .;;I $$NEWDEP(DEP1),$L(DEP1) D
 ..S NDEP=NDEP+1
 ..S ^DEP(NDEP)=DEP1
 ..S DEP10=DEP1
 .S GR1=$$U2L($P(A,DLM,8))
 .S GR1=$TR(GR1,$C(13),"")
 .;
 .;
 .S NGR=$$GR(GR1)
 .I 'NGR D
 ..S NGR=NGR+1
 ..S ^PARSUG(NGR)=GR1
 ..I NDEP S ^PARSUG(NGR,1)=NDEP
 ..S GR10=GR1
 .S MHAL=$P(A,DLM,5)
 .S $P(^MLPAR(PAR,1),"\",10)=MHAL
 .S MH=$P(A,DLM,6)
 .S ^PAR(PAR)=PAR1_"**"_MH
 .S $P(^PAR(PAR),"**",5)=NGR
 .S $P(^PAR(PAR),"**",11)=0 ;;"G"
 .
 .S SPK1=$$U2L($P(A,DLM,7))
 .S SPK1=$TR(SPK1,$C(13),"")
 .S SPK=$$SPK(SPK1)
 .I 'SPK S NSP=NSP+1,^W4SPK(NSP)=SPK1
 C FL
 Q
 ;
U2L(RKV) ;
 Q $$INVH^%L1FRM($TR(RKV,TS1,TS0))
 ;
ER ;
 U 0 W $ZS,!
 C FL
 Q
 ;
NEWDEP(DEP1) ;
 N OK S OK=1
 N N S N="" F  S N=$O(^DEP(N)) Q:N=""  D  Q:'OK
 .I $$SPA^%L1FRM(^(N))=$$SPA^%L1FRM(DEP1) S OK=0
 Q OK
 ;
GR(GR1) ;
 N OK S OK=0
 N N S N="" F  S N=$O(^PARSUG(N)) Q:N=""  D  Q:OK
 .I $$SPA^%L1FRM(^(N))=$$SPA^%L1FRM(GR1) S OK=N
 Q OK
 ;
SPK(SPK1) ;
 N OK S OK=0
 N N S N="" F  S N=$O(^W4SPK(N)) Q:N=""  D  Q:OK
 .I $$SPA^%L1FRM(^(N))=$$SPA^%L1FRM(SPK1) S OK=N
 Q OK
 ;
UCASE(NM) ; 
 N NM1,J S NM1="" 
 F J=1:1:$L(NM) D
 .S NM1=NM1_$S($A(NM,J)<97!($A(NM,J)>122):$E(NM,J),1:$C($A(NM,J)-32))
 Q NM1 
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1EXFL
W1EXFL ; [ 29.12.24 12:05 ] [ 22.03.24 20:38 ] [ 08.03.24 14:17 ] 
 N (JB,%ARG,%REM,WHAT,WHERE)
 R !!,"SEARCH :",WHAT Q:WHAT=""
 R !,"WHERE :",WHERE
 W !!
 ;
 I '$G(JB) S JB=$$^%W1SsID("W1EXFL")
 ;
 S GL="^|"""_$$^W3MAIN_"""|NEWCSR1"
 S GLTMP=$$^W4MAIN("TMP")
 S GLEXFL="^|$$^W3MAIN|W1EXFL(+$H)"
 ;
 K @GLEXFL,@GLTMP
 ;
 S N=1
CYC S N=$O(@GL@(N)) G:N<1 ENDCYC D
 .I N<1 S N="" Q
 .S $ZT="G ER^W1EXFL"
 .S A=$G(^(N,1))
 .S REF=$P(A,"\",2) Q:REF=""  Q:REF'["/w4main.jsp"
 .S PAIL=$P(A,"\",4) Q:'PAIL
 .S IND=$P(A,"\",7) Q:IND=""
 .I $G(WHERE)'="",IND'[("ssh2"_WHERE) Q
 .S REF=$P(REF,"/",1,$L(REF,"/")-1)_"/w1exfl.jsp?FILE="_WHAT
 .
 .S FLOU="/home/www2order/w1exfl"_$$^W4MYDVN
 .C FLOU:(DELETE)
 .S CMD="curl -s -m 25 "_REF_" -o "_FLOU
 .
 .ZSY CMD
 .
 .Q:$ZSY
 .Q:'$$EXIST^%L1ZOS(FLOU)
 .Q:$$SIZE^%L1ZOS(FLOU)<100
 .
 .U 0 W N_" "_IND,!
 .C FLOU
 .
 .O FLOU:(REWIND:READONLY)
 .S OU="",SH=0,END=0
 .F  U FLOU R ST Q:$ZEOF  D  Q:END
 ..I ST["<body" D
 ...F  U FLOU R OU Q:$ZEOF  D  Q:END
 ....I OU["</body>"!(OU["</html>") S END=1 Q
 ....S SH=SH+1
 ....S @GLTMP@(IND,SH)=OU
 ....I OU["No such file or directory" S @GLTMP@(IND)=0 S END=1 Q
 ....I OU[$TR(WHAT,"*","") D
 .....I $G(@GLTMP@(IND))'=0 S @GLTMP@(IND)=1
 .....S END=1
 .C FLOU:(DELETE)
 G CYC
 ;
ENDCYC ;
 S @GLEXFL=WHAT
 S IND="" F  S IND=$O(@GLTMP@(IND)) Q:IND=""  I $G(^(IND))=1 D
 .M @GLEXFL@(IND)=@GLTMP@(IND)
 ;
 K @GLTMP ; ***
 S $ZT="",N="" Q
 ;
ER ;
 ;
 U 0 W N_": "_$ZS,!
 S ^|$$^W3MAIN|W1EXFL(+$H,"ER",N)=$ZS_"\"_$G(IND)
 G CYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1EXM
W1EXM(CMD,ER) ; [ 22.10.25 18:16 ] [ 21.10.25 09:59 ] [ 
 N (CMD,ER)
 S ER=0
 S CMD=$$CNWEB^%L1FRM(CMD)
 S ^AA("W1EXM","CMD")=CMD
 W "<Result>" 
 D
 .I CMD="SS" S %BROWSER="" D ^%L2SS Q
 .X CMD
 W "</Result>"
 Q
 
 
 
 
 
 
 

W1FLU2H
W1FLU2H ; [ 15.03.09 18:26 ] [ 06.01.08 12:04 ] [ 29.12.07 11:07 ]
 S FL=$$WEBL^W3MAIN_"parex.jsp"
 K ^W1FLU2H
 O FL:(READONLY:REWIND)
 S $ZT="G CFL"
 F  U FL R A Q:A["<body"
 F  U FL R A Q:A["<table"
 S FLD=0,TR="",ST="",NST=0
 F  U FL R *B Q:$ZEOF  D
 .I $C(B)="<" D  Q
 ..D:$G(FLD)=2 ST S ST="" U FL
 ..S FLD=0 R *B1,*B2
 ..I $C(B1)="t",$C(B2)="r" D TR S TR="",ITD=0,NST=NST+1 Q
 ..I $C(B1)="t",$C(B2)="d" S ITD=ITD+1,FLD=1 Q
 .I $C(B)=">",FLD=1 S FLD=2
 .I $C(B)=">" S ST="" Q
 .I FLD=2 D
 ..S ST=ST_$C(B)
CFL C FL
 D TR
 Q
ST ;
 S ST=$$U2H(ST)
 S TR=TR_ST_"*"
 Q
U2H(ST)
 N ST1,IND,FL
 S ST1="",IND="",FL=0
 S ST=$$RPL^%L1FRM(ST,"&nbsp;","")
 S ST=$$RPL^%L1FRM(ST,"&quot;","""")
 S ST=$$CLEAR^%L1FRM(ST)
 S ST=$$SP1^%L1FRM(ST)
 N J F J=1:1:$L(ST) D
 .I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 .I FL,$E(ST,J)=";" S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND="" Q
 .I FL S IND=IND_$E(ST,J) Q
 .S ST1=ST1_$E(ST,J)
 Q ST1
TR S ^W1FLU2H($O(^W1FLU2H(999999),-1)+1)=TR
 Q

W1FND
W1FND ; [ 08.03.26 00:23 ] [ 29.10.25 12:31 ] [ 26.10.25 08:43 ] 
 N (JB,%ARG)
 D ^%W1HD("FINDFILES")
 ;
 I $G(%ARG("DOPRM"))'="" G DO
 ;
 W "<div align=""center"">",!
 ;
 W "<p>&nbsp;</p>",!
 ;
 W "<table cellpadding=""10px"">",!
 W "<tr>"
  W "<td>"
    W "DIRECTORY" 
  W "</td>" 
  W "<td>"
    W "<input id=""dir"" type=""text"" size=""30"" >"
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"
  W "<td>"
    W "NAME" 
  W "</td>" 
  W "<td>"
    W "<input id=""name"" type=""text"" size=""30"" >"
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"
  W "<td>"
    W "SIZE MINIMUM" 
  W "</td>" 
  W "<td>"
    W "<input id=""size"" type=""text"" size=""30"" >"
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"
  W "<td>"
    W "HOW OLD" 
  W "</td>" 
  W "<td>"
    W "<input id=""ago"" type=""text"" size=""30"" >"
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"
  W "<td>"
    W "EXEC" 
  W "</td>" 
  W "<td>"
    W "<input id=""exec"" type=""text"" value=""ls -lh"" size=""30"" >"
  W "</td>" 
 W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<p>&nbsp;</p>",!
 ;
 D ^W4BCK
 W $$NBSP^%L1FRM(5)
 D ^W4BTN("DO","Do()")
 W "</div>",! 
 Q
 ;
 ;
DO ;
 W "<div align=""center"">",!
 ;
 S DOPRM=$G(%ARG("DOPRM"))
 I DOPRM="" Q
 S FL="/tmp/l1fnd"_$J
 I $$EXIST^%L1ZOS(FL) ZSY "rm "_FL
 ;
 D PRS^%L1FRM(DOPRM,"DIR~NAME~SIZE~AGO~EXEC","~")
 I DIR="J"!(DIR="j") S DIR=$$WEBL^W3MAIN
 I DIR="M"!(DIR="m") S DIR=$ZDIR
 ; 
 S CMD="find "_DIR
 I NAME'="" S CMD=CMD_" -name """_NAME_""" "
 I SIZE'="" S CMD=CMD_" -size +"_SIZE_" "
 I AGO'="" S CMD=CMD_" -mtime "_AGO_" "
 S CMD=CMD_" -maxdepth 1 -type f"
 I EXEC'="" S CMD=CMD_" -exec "_EXEC_" {} \;"
 S CMD=CMD_" 2>/dev/null"
 S CMD1=CMD_" >> "_FL
 ;
 ZSY CMD1
 W "<br>"_CMD
 W "<p></p>",!
 W "<div dir=""LTR"" align=""left"" style=""width:80%;height:80%;background-color:white;border:2px brown solid;padding:10;overflow:auto"" >",!  
 ;
 O FL:(REWIND:READONLY)
 F  U FL R A Q:$ZEOF  D
 .U $P W A_"<br>",!
 C FL
 ;
 ZSY "rm "_FL
 ;
 W "<div style=""position:absolute;top:94%;left:48%"" >",! 
  D ^W4BCK
 W "</div>",!
 ;
 W "</div>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1GAP
W1GAP ; [ 29.03.26 02:10 ] [ 28.03.26 19:58 ] [ 
 N (JB)
 S $ZGBLDIR="/home/gtmuser/app/mumps/mumps.gld"
 S $ZDIR="/home/gtmuser/app/mumps/"
 ;
 I '$G(JB) S JB=$$^%W1SsID("W1SUM")
 S A=$ZCMD
 S MEDAT=$P(A," ")
 S ADDAT=$P(A," ",2)
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ;
 F DT=DT1:1:DT2 U 0 W $ZD(DT,"DD.MM.YY"),! D ^W4GAPN(1,DT,DT,1)
 Q
 

W1GETERR
W1GETERR ; [ 27.03.26 05:23 ] [ 26.03.26 19:15 ] [ 
 N (JB,%ARG)
 S SM=6
 S OK=0
 F DT=$H-SM:1:+$H D  Q:OK
 .S DAT=$ZD(DT,"YYYYMMYY")
 .S N="" F  S N=$O(^ERR(DAT,N)) Q:N=""  D
 ..S IND=$O(^ERR(DAT,N,"")) Q:IND=""
 ..S A=$G(^ERR(DAT,N,IND)) Q:A=""
 ..I A["Broken pipe" Q
 ..S OK=1
 .
 .S N="" F  S N=$O(^er(DT,N)) Q:N=""  D
 ..S IND=$O(^er(DT,N,"")) Q:IND=""
 ..S A=$G(^er(DT,N,IND)) Q:A=""
 ..I A["%S3GLKR" Q
 ..S OK=1
 ;
 Q:'OK
 ; 
 W !!,$TR($J("",25)," ","-")_" "_$G(^P1PRM("WEB","MSD"))_" "_$G(^P1PRM("MSDN")),!
 F DT=$H-SM:1:+$H D
 .S DAT=$ZD(DT,"YYYYMMYY")
 .S N="" F  S N=$O(^ERR(DAT,N)) Q:N=""  D
 ..S IND=$O(^ERR(DAT,N,"")) Q:IND=""
 ..S A=$G(^ERR(DAT,N,IND)) Q:A=""
 ..I A["Broken pipe" Q
 ..W !?5,$ZD(DT,"DD.MM.YY")_" "_$J(N,4)_" "_$E(A,1,60),!  
 ..W !?20,$E(A,61,120),!  
 .
 .S N="" F  S N=$O(^er(DT,N)) Q:N=""  D
 ..S IND=$O(^er(DT,N,"")) Q:IND=""
 ..S A=$G(^er(DT,N,IND)) Q:A=""
 ..I A["%S3GLKR" Q
 ..W !?5,$ZD(DT,"DD.MM.YY")_$J("",6)_$E(A,1,60),!  
 ..W ?20,$E(A,61,120),!  
 ..S IND=$O(^er(DT,N,IND)) Q:IND=""
 ..S A=$G(^er(DT,N,IND)) Q:A=""
 ..W ?5,$ZD(DT,"DD.MM.YY")_$J("",6)_$E(A,1,60),!  
 ..W ?20,$E(A,61,120),!  
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1GETINF
W1GETINF ; [ 29.12.24 12:05 ] [ 06.09.24 04:43 ] [ 08.03.24 18:56 ] 
 N (JB,%ARG,%REM,WHAT,SSH)
 I $L($G(SSH)) S SSH=$$FUNC^%LCASE(SSH)
 I '$G(JB) S JB=$$^%W1SsID("W1GETINF")
 ;
ZCMD R !!,"WATH :",WHAT Q:WHAT=""
 R !!,"TO <ALL>:",SSH I SSH="^" G ZCMD
 W !!,"RESULTS IN ^W1GETINF(+$H)",!!
 ;
 I $L($G(SSH)) S SSH=$$FUNC^%LCASE(SSH)
 S GL="^|"""_$$^W3MAIN_"""|NEWCSR1"
 S GLGI="^|$$^W3MAIN|W1GETINF(+$H)"
 ;
 S N=1
 S NOM=$O(@GLGI@(99999),-1)+1
 K @GLGI@(NOM)
 S @GLGI@(NOM)=WHAT
 ;
CYC S N=$O(@GL@(N)) G:N<1 ENDCYC D
 .I N<1 S N="" Q
 .S $ZT="G ER^W1GETINF"
 .S A=$G(^(N,1))
 .S REF=$P(A,"\",2) Q:REF=""  Q:REF'["/w4main.jsp"
 .S IND=$P(A,"\",7) Q:IND=""
 .;
 .I $L($G(SSH)),IND'[("ssh2"_SSH) Q
 .S PAIL=$P(A,"\",4) Q:'PAIL
 .S REF=$P(REF,"/",1,$L(REF,"/")-1)_"/w1getinf.jsp"
 .
 .S FLPRM="/home/www2order/w1getinf"_$$^W4MYDVN_".prm"
 .C FLPRM:(DELETE)
 .O FLPRM:(WRITE:NEWVERSION) U FLPRM
 . W "PRM="_WHAT
 .C FLPRM
 .S FLOU="/home/www2order/w1getinf"_$$^W4MYDVN
 .C FLOU:(DELETE)
 .S CMD="curl -s -m 25 -k -d@"_FLPRM_" '"_REF_"' -o "_FLOU
 .;
 .ZSY CMD
 .
 .Q:$ZSY
 .Q:'$$EXIST^%L1ZOS(FLOU)
 .
 .U 0 W N_" "_IND,!
 .C FLOU
 .
 .O FLOU:(REWIND:READONLY)
 .S OU="",SH=0,END=0
 .F  U FLOU R ST Q:$ZEOF  D  Q:END
 ..I ST["<body" D
 ...F  U FLOU R OU Q:$ZEOF  D  Q:END
 ....;
 ....I OU["</body>"!(OU["</html>") S END=1 Q
 ....I OU["<Success>1</Success>" D
 .....S SH=SH+1
 .....S @GLGI@(NOM,IND)=1
 .C FLOU:(DELETE)
 G CYC
ENDCYC ;
 ;
 S $ZT="",N="" Q
 ;
ER ;
 ;
 U 0 W N_": "_$ZS,!
 S ^|$$^W3MAIN|W1GETINF(+$H,"ER",N)=$ZS_"\"_$G(IND)
 G CYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1GLED
 ; [ 06.01.26 11:33 ] [ 
W1GLED ; [ 06.01.26 11:32 ] [ 23.10.25 13:09 ] [ 22.10.25 13:11 ] 
 N (JB,%ARG,%REM)
 W "<div>",!
 W "<br>",!
 W "Global Name : ^"
 W "&nbsp;<input id=""gl"" type=""text"" size=""38"">"
 W $$NBSP^%L1FRM(5)
 W "Delimeter : "
 W "&nbsp;<input id=""dlm"" type=""text"" size=""1"">"
 W $$NBSP^%L1FRM(5)
 W "Max. Cols. : "
 W "&nbsp;<input id=""cols"" type=""text"" size=""2"">"
 ;
 W "&nbsp;<input type=""button"" value=""Edit"" onClick=""Edit()"">"
 W $$NBSP^%L1FRM($$^W4KF(10))
 W "<input type=""button"" id=""Cmd"" style=""color:blue"" value=""Command"" onClick=""Cmd()"">",!
 W $$NBSP^%L1FRM($$^W4KF(5))
 W "<input type=""button"" id=""Save"" style=""color:green;visibility:hidden"" value=""Save"" onClick=""Save()"">",!
 W $$NBSP^%L1FRM($$^W4KF(5))
 W "<input type=""button"" id=""Exit"" style=""color:red"" value=""Exit"" onClick=""Back()"">",!
 ;
 W "<br><br>",!
 W "<iframe id=""ifrgl"" width=""98%"" height=""80%"" ></iframe>",!
 W "<br><br>",!
 W "&nbsp;<input type=""button"" value=""English"" onClick=""Edit('E')"">",!
 W "&nbsp;<input type=""button"" value=""Hebrew"" onClick=""Edit('H')"">",!
 W "</div>",!
END Q
 ;
 ;
SEARCH ;
 W "<div dir="""_$$^%W1DIR_""">"
  W $$^%W1DICT("SEARCH")_$$NBSP^%L1FRM(2)
    W "<input type=""text"" id=""search"" size=""35"" "
    W " onClick='this.select()' " 
    W " />&nbsp;"
    D ^W4BUTTON("SrchDn",">","FindText('search',false,GetId('ifrgl').contentWindow)","width:25px;height:25px;background-color:lightgrey")
    W "&nbsp;" 
    D ^W4BUTTON("SrchUp","<","FindText('search',true,self.frames[0])","width:25px;height:25px;background-color:lightgrey")
  W "</div>",!
 Q
 ;
 ;
SAVE(STAM) ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^W1GLED"
 S VRM=$$^W4MAIN("VRM")
 N I F I=1:1 Q:'$D(@VRM@(I))  D
 .N A S A=$G(^(I)) 
 .I $D(@VRM@(I,"CHN")) D
 ..S IND=$P(A,"=")
 ..S CONT=$P(A,"=",2,200)
 ..S @IND=CONT
 K @VRM
 Q 1
 ;
COMMAND ; 
ER ;
 Q $ZS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1GLED1
W1GLED1 ; [ 06.01.26 10:12 ] [ 22.10.25 13:14 ] [ 30.07.25 13:11 ] 
 N (JB,%ARG,%REM)
 S VRM=$$^W4MAIN("VRM") 
 ;
 I $G(%ARG("CHNLNG"))="" K @VRM D PREP
 ;
 W "<div align=""center"" >",!
 W "<table>",!
 W "<tr>"
   W "<th width=""30%""> Global Name </th><th> Content </th>"
 W "</tr>",!
 ;
 F I=1:1 Q:'$D(@VRM@(I))  D
 .S A=$G(^(I))
 .S IND=$P(A,"=")
 .S CONT=$P(A,"=",2,200)
 .
 .I $G(%ARG("DLM"))="" D
 ..S CONT=$$VW(CONT)
 ..S DIR="LTR" ;;S DIR="RTL"
 ..S INP="<input size=""120"" dir="""_DIR_""" id='cont"_I_"' value='"_CONT_"' onChange='Change("""_I_""")'>"
 .
 .I $G(%ARG("DLM"))'="" D
 ..N DLM S DLM=$G(%ARG("DLM"))
 ..N NUMDLM S NUMDLM=$L(CONT,DLM) I NUMDLM<20 S NUMDLM=20
 ..I $G(%ARG("COLS")) S NUMDLM=%ARG("COLS")
 ..S INP="<table border=""0"" cellpadding=""0"" cellspacing=""0"" ><tr>"
 ..N OU S OU=""
 ..N J F J=1:1:NUMDLM D
 ...N W S W=$P(CONT,DLM,J)
 ...S SZ=$L(W) I SZ<10 S SZ=10
 ...S INP=INP_"<td align=""center""><span style=""font-size:"_$$^W3FSZ(8)_";color:grey"">"_J_"</span><br>"
 ...S INP=INP_"<input style=""text-align:right"" id='cont"_I_"_"_J_"' size="_SZ_" value='"_$$VW(W)_"'"
 ...S INP=INP_" onChange='ChangeTd("""_I_""","""_J_""",""\"_DLM_""")' /></td>"
 ..S INP=INP_"</tr></table>"
 .
 .W "<tr>"
 .  W "<td><input size='40' id='ind"_I_"' value='"_IND_"' onChange='Change("""_I_""")' ></td>"
 .  W "<td>"_INP_"</td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!   
 Q  ;
 ;
PREP ;
 N %PR,%MAC1,%MAC2,%ORD,FLAG,%PR,VRM
 N MAC S MAC=$G(%ARG("GL"))
 I $E(MAC)'="^" S MAC="^"_MAC
 S VRM=$$^W4MAIN("VRM") K @VRM
 S %ORD=1
 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 S %MAC2=$E($R,1,$L($R)-1)_$S($E(MAC,$L(MAC))=")":",",1:"")
 S @VRM@(1)=MAC_"=<<<<<UNDEF>>>>>"
 S @VRM=MAC
 I %PR S @VRM@(1)=MAC_"="_@MAC
 S %MAC1=MAC I $E(%MAC1,$L(%MAC1))=")" S %MAC1=$E(%MAC1,1,$L(%MAC1)-1)_","""")"
 I $E(%MAC1,$L(%MAC1))'=")" S %MAC1=%MAC1_"("""")"
 S %MAC1=$Q(@%MAC1) ;;I %MAC1="" W:%PR=0 *7,!?15,"*** ARRAY ",MAC," HASN'T DESCENDANTS !" H 2 Q
 F I=2:1:100000 Q:%MAC1'[%MAC2  Q:%MAC1=""  S @VRM@(I)=%MAC1_"="_@%MAC1 S %MAC1=$Q(@%MAC1)
 I I=100000 S FLAG=1
 Q
 ;
CHN(PRM) ;
 S VRM=$$^W4MAIN("VRM")
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER"
 N IND,VL1,VL2,DLM
 S DLM="<>" 
 S IND=$P(PRM,DLM,1)
 S VL1=$P(PRM,DLM,2) I VL1="" Q "NOIND"
 S VL2=$P(PRM,DLM,3,200)
 S VL2=$$CNWEB^%L1FRM(VL2)
 S VL2=$$INVH^%L1FRM(VL2)
 S @VRM@(IND)=(VL1_"="_VL2)
 S @VRM@(IND,"CHN")=1
 Q 1
 ;
VW(TX)
 I $G(%ARG("CHNLNG"))="E" Q TX
 Q $$H2U^%L1FRM(TX)
 ;
CHNTD(PRM) ;
 N (JB,%ARG,PRM)
 S VRM=$$^W4MAIN("VRM")
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER"
 S DLM="<>" 
 S IND=$P(PRM,DLM,1)
 S INDST=$P(PRM,DLM,2) I INDST="" Q "NOIND"
 S DLMST=$P(PRM,DLM,3)
 S GLST=$P(PRM,DLM,4)
 S VL=$P(PRM,DLM,5)
 S VL=$$CNWEB^%L1FRM(VL)
 S VL=$$INVH^%L1FRM(VL)
 S ST=$G(@VRM@(IND))
 S STVL=$P(ST,"=",2,200)
 S $P(STVL,DLMST,INDST)=VL
 S @VRM@(IND)=(GLST_"="_STVL)
 S @VRM@(IND,"CHN")=1
 Q 1
ER Q $ZS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1GRAPH
W1GRAPH ; [ 14.01.19 22:26 ] [ 18.08.18 19:39 ] [ 06.05.18 15:42 ] 
 N (JB,%ARG,%REM)
 W "<script src=""./chart/Chart.js""></script>",!
 S WD=96
 I $G(%ARG("PRINT")) S WD=42
 W "<div class=""chart-container"" align=""center"" "
  W "style=""position:absolute;top:1%; left:1%; height:98%; width:"_WD_"% "" "
 W ">",!
  W "<canvas id=""myChart"" "
   W "style=""height:96%;width:96%"" "
  W ">"
  W "</canvas>",!
 W "</div>",!
 ;
 S COLG=$$COLG I COLG<1 S COLG=1
 I COLG=1 D
 .S NG=$G(%ARG("NG"))
 .I NG<1 S NG=1
 ;
 S COLX=$$COLX
 ;
 W "<script>",!
 I '$$PIE W " var ctx = document.getElementById(""myChart"");",!
 I $$PIE W " var ctx = document.getElementById('myChart').getContext('2d');",!
 ;
 W " var arrlab=new Array() ",!
 F I=1:1:COLX D
 .W " arrlab["_I_"]='"_$$LAB(I)_"' ",!
 W !
 D
 .I $$PIE D PREPPIE(COLG) Q
 .I COLG>1 D  Q
 ..F NG=1:1:COLG D PREP(NG,COLX)
 .I COLG'>1 D PREP(NG,COLX) Q
 ;
 W !
 W "var myChart = new Chart(ctx, {",!
 W "   type: '"_$$TYPE_"',",!
 W !
 W "   data: {",!
 I '$$PIE W "       labels : arrlab ,",!
 W "       datasets: [",!
 ;
 D
 .I $$PIE D DEFPIE Q
 .I COLG>1 D  Q
 ..F NG=1:1:COLG D DEF(NG,COLG)
 .I COLG'>1 D DEF(NG,COLG) Q
 ;
 W "   },",! ;; --- end data
 ;
 W !
 ;
 W "   options: {",!
 I '$$PIE D
 .W "       scales: {",!
 .W "           yAxes: [{",!
 .W "               ticks: {",!
 .W "                    beginAtZero:true",!
 .W "                      }",!
 .W "                  }]",!
 .W "               }",!
 ;
 I $$PIE D
 .W "responsive:true",!
 ;
 W " }",!
 W "})",!!
 ;
 W "myChart.update()",!
 W !
 W "</script>",!
 Q
 ;
 ;
TYPE(STAM) ;
 N TYPE S TYPE=$G(%ARG("TYPE"))
 I $G(%ARG("PIE")) Q "pie"
 I TYPE="" S TYPE="bar"
 Q TYPE
 ;
COLG(STAM) ;
 Q $G(@$$GLGR@("COLG"))
 ;
COLX(STAM) ;
 Q $G(@$$GLGR@("COLX"))
 ;
LAB(I)
 Q $G(@$$GLGR@("LAB",I))
 ;
VL(NG,I)
 Q $G(@$$GLGR@("VL",NG,I))
 ;
BGCOLOR(NG)
 Q $G(@$$GLGR@("BGC",NG))
 ;
BORDCOLOR(NG)
 Q $G(@$$GLGR@("BRDC",NG))
 ;
LB(NG)
 Q $G(@$$GLGR@("LB",NG))
 ;
 ;rgba(255,99,132,1)
 ;rgba(54, 162, 235, 1)
 ;rgba(255, 206, 86, 1)
 ;rgba(75, 192, 192, 1)
 ;rgba(153, 102, 255, 1)
 ;rgba(255, 159, 64, 1)
 Q
 ;
GLGR(STAM) ;
 Q $$^W4MAIN("TMPG")
 ;
 ;
TV ;
 N I,NG
 N GLGR S GLGR=$$GLGR
 K @GLGR
 S COLX=30
 S COLG=3
 S @GLGR@("COLX")=COLX
 S @GLGR@("COLG")=COLG
 S %ARG("TYPE")="bar"
 S @GLGR@("TYPE")="bar"
 ;
 F I=1:1:COLX S @GLGR@("LAB",I)=I
 F NG=1:1:COLG D
 .F I=1:1:COLX S @GLGR@("VL",NG,I)=I*10*NG
 ;
 S @$$GLGR@("BGC",1)="rgba(255,99,132,.4)"
 S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 ;
 S @$$GLGR@("BGC",2)="rgba(54, 162, 235, .4)"
 S @$$GLGR@("BRDC",2)="rgba(54, 162, 235, 1)"
 ;
 S @$$GLGR@("BGC",3)="rgba(255, 206, 86, .4)"
 S @$$GLGR@("BRDC",3)="rgba(255, 206, 86, 1)"
 ;
 D W1GRAPH
 Q
 ;
 ;
PREP(NG,COLX) ;
 W " var arrdata"_NG_"=new Array() ",!
 W " var arrcolor"_NG_"=new Array() ",!
 W " var arrbordcolor"_NG_"=new Array() ",!
 W !
 N I F I=1:1:COLX D
 .W " arrdata"_NG_"["_I_"]='"_$$VL(NG,I)_"' ",!
 ; 
 W "arrcolor"_NG_"='"_$$BGCOLOR(NG)_"' ",!
 W "arrbordcolor"_NG_"='"_$$BORDCOLOR(NG)_"'",!
 W !
 Q
 ;
PREPPIE(COLG) ;
 W " var arrdata=new Array() ",!
 W " var arrcolor=new Array() ",!
 W " var arrbordcolor=new Array() ",!
 W " var arrlabels=new Array() ",!
 W !
 N I F I=1:1:COLG D
 .W " arrdata["_I_"]='"_$$VL(I,1)_"' ",!
 .W "arrcolor["_I_"]='"_$$BGCOLOR(I)_"' ",!
 .W "arrbordcolor["_I_"]='"_$$BORDCOLOR(I)_"'",!
 .W "arrlabels["_I_"]='"_$$LB(I)_"'",!
 W !
 Q
 ;
 ;
 ;
DEF(NG,COLG) ;
 W "        {",!  
 N LB S LB=$$H2UG^%L1FRM($G(@$$GLGR@("LB",NG)))
 W "           label : '"_LB_"',",!
 W "           data : arrdata"_NG_",",!
 W "           backgroundColor: arrcolor"_NG_",",!
 W "           borderColor: arrbordcolor"_NG_",",!
 W "           borderWidth: 1",!
 W "        }"
 I NG<COLG W ","
 W !
 I NG'<COLG W "]"
 Q
 ;
DEFPIE ;
 W "        {",!  
 W "           label : 'Dataset 1',",!
 W "           data : arrdata,",!
 W "           backgroundColor: arrcolor",!  ; ,
 ;;W "           borderColor: arrbordcolor,",!
 ;;W "           borderWidth: 1",!
 W "        }"
 W "],",!
 W "       labels : arrlabels ",!
 Q
 ;
PIE(STAM) ; 
 I $G(%ARG("PIE")) Q 1
 I $$TYPE="pie" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1GS
W1GS ; [ 23.04.26 15:47 ] [ 
 N (JB,%ARG,W1GS)
 N A S A=$ZCMD
 ;
 I $L(A," ")>1 D
 .S W1GS("GLOB")=$P(A," ")
 .W W1GS("FILE")=$P(A," ",2)
 ;
 I $G(W1GS("GLOB"))="" W " GLOBAL NOT DEFINED !",! Q
 I $G(W1GS("FILE"))="" W " FILE NOT DEFINED !",! Q
 ;
 I W1GS("GLOB")'["S-" S %L1GS("SV",W1GS("GLOB"))=""
 ;
 I W1GS("GLOB")["S-" D
 .S SET=$P(W1GS("GLOB"),"S-",2)
 .F I=1:1 Q:'$D(^SHP("%GS"_SET,I))  D
 ..I ^(I)?1U.UN S %L1GS("SV",^(I))=""
 ;
 D
 .S %L1GS("TO")=W1GS("FILE")
 .I W1GS("FILE")'["/" S %L1GS("TO")="/home/gtmuser/"_W1GS("FILE")
 ;
 D ^%L1GS
 Q
 
 
 
 
 
 

W1GSBS
W1GSBS ; [ 19.02.25 18:32 ] [ 
 N (JB,%ARG)
 D NOKILL^KILLZ
 S %ZD=""
 F I=1:1:$L(NOKILL,",") D
 .S P=$P(NOKILL,",",I) Q:P=""
 .S %ZG(P)=""
 ;
 D BGW^%L1GS
 Q
 
 

W1HBED
W1HBED ; [ 08.10.25 14:05 ] [ 
 W "<br><br><br>",!
 W " TEXT IN : <input size=""60"" id=""text"">",!
 W " <button onClick="""">DO</button>",!
 ;
 W "<p> TEXT OUT : <input size=""60"" id=""txtou"" readonly=""readonly"" ></p>",!
 Q
 

W1KK
W1KK ; [ 20.08.25 05:49 ] [ 03.12.18 06:59 ] [ 
 S FILE="/home/gtmuser/contacts.csv"
 O FILE:(READONLY:REWIND)
 ;
 K ^LK
 F  U FILE R A Q:$ZEOF  D
 .S A1=A
 .U 0 W A1,!
 .S FNAME=$$HB($P(A1,","))
 .S LNAME=$$HB($P(A,",",2))
 .S NAME=FNAME_" "_LNAME
 .S EMAIL=$$FUNC^%UCASE($P(A,",",3))
 .S TEL=$$TEL($P(A,",",5))
 .S PELE=$$TEL($P(A1,",",6))
 .
 .S KTV=$$HB($P(A1,",",15))
 .S IR=$$HB($P(A1,",",16))
 .I TEL'?4N.N Q
 .S ST="LKH="_NAME_"<>TEL="_TEL_"<>PELE="_PELE_"<>KTV="_KTV_"<>IR="_IR_"<>EMAIL="_EMAIL
 .D PUT2^W4L(TEL,ST)
 C FILE
 Q
 ; 
HB(TX) ; 
 S TX=$$U2D^%L1CNV(TX)
 S TX=$$KV(TX)
 Q $$INVH^%L1FRM(TX)
 ;
TEL(TEL) ;
 S TEL=$TR(TEL,"'+- ","")
 D
 .I $E(TEL,1,3)="972" S TEL="0"_$E(TEL,4,30) Q
 .I $E(TEL)=5 S TEL="0"_TEL
 Q TEL
 ;
KV(TX) ;
 I $E(TX)="""" S TX=$E(TX,2,$L(TX))
 I $E(TX,$L(TX))="""" S TX=$E(TX,1,$L(TX)-1)
 I $E(TX)="'" S TX=$E(TX,2,$L(TX))
 I $E(TX,$L(TX))="'" S TX=$E(TX,1,$L(TX)-1)
 Q TX
 
 
 
 
 

W1KLPAR
W1KLPAR ; [ 23.04.26 14:26 ] [ 
 N (JB,%ARG)
 D SVPAR
 ;
 F I=1:1 Q:'$D(^SHP("%GSPAR",I))  D
 .I ^(I)?1U.UN K @("^"_^(I))
 Q
 ;
 ;
SVPAR ;
 K %L1GS
 F I=1:1 Q:'$D(^SHP("%GSPAR",I))  D
 .I ^(I)?1U.UN S %L1GS("SV",^(I))=""
 ;
 S %L1GS("TO")="/home/gtmuser/SVPAR.OLD"
 D ^%L1GS
 Q
 
 

W1LINCOM
W1LINCOM ; [ 25.10.25 13:46 ] [ 
 N (JB,%ARG)
 W "<div align=""center"">",!
  W "<p>&nbsp;</p>",!
  W "<div dir=""LTR"" align=""left"" style=""width:80%;height:80%;background-color:white;border:2px brown solid;padding:10;overflow:auto"" >",!  
   S WEBL=$$WEBL^W3MAIN
   I $E(WEBL,$L(WEBL))="/" S WEBL=WEBL_"/"
   S FL=WEBL_"w1lincom.txt"
   O FL:(REWIND:READONLY)
    F  U FL R A Q:$ZEOF  D
    .U $P W A_"<br>",!
   C FL
  W "</div>",!
 W "</div>",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1MSG
W1MSG(MSG) ; [ 14.07.26 14:35 ] [ 
 I '$D(TSS) D ^%L1TS
 S MSG=$$SPA^%L1FRM(MSG)
 S MSG=$$SP1^%L1FRM(MSG)
 N PRHB S PRHB=0 N J F J=1:1:$L(MSG) I $A(MSG,J)>127 S PRHB=1 Q
 I 'PRHB Q $$FUNC^%UCASE(MSG)
 S MSG=$$INVH^%L1FRM($TR(MSG,TSS,TS0))
 Q MSG

W1MVDT
W1MVDT(DATO,DATN) ; [ 02.06.38 08:37 ] [ 
 S DTO=$$^%L1DC(DATO,3)
 S DTN=$$^%L1DC(DATN,3)
 S DAT2N=$ZD(DTN,"YYMMDD")
 S DAT2O=$ZD(DTO,"YYMMDD")
 ;
 M ^P1H(DTN)=^P1H(DTO) K ^P1H(DTO)
 S N="" F  S N=$O(^P1HI(N)) Q:N=""  D
 .M ^P1HI(N,DTN)=^P1HI(N,DTO) K ^P1HI(N,DTO)
 .
 .M ^Z(DTN)=^Z(DTO) K ^Z(DTO)
 .M ^Z1(DAT2N)=^Z1(DAT2O) K ^Z1(DATO)
 .M ^TOT(DAT2N)=^TOT(DAT2O) K ^TOT(DAT2O)
 .M ^PLUTOT(DAT2N)=^PLUTOT(DAT2O) K ^PLUTOT(DAT2O)
 ;
 S N1="" F  S N1=$O(^KLIN("DT",N1)) Q:N1=""  D
 .S DT="" M ^KLIN("DT",N1,DTN)=^KLIN("DT",N1,DTO) K ^KLIN("DT",N1,DTO)
 ;
 S N="" F  S N=$O(^DUMP(N)) Q:N=""  D
 .I $$^%L1DC($P(^(N),"|",7),3)=DTO S $P(^DUMP(N),"|",7)=$ZD(DTN,"DD/MM/YYYY")
 ;
 S N="" F  S N=$O(^DUMP1(N)) Q:N=""  I $E(N,1,5)=DTO  D
 .S ^DUMP1(DTN_$E(N,6,30))=^DUMP1(N)
 .K ^DUMP1(N)
 ;
 S N="" F  S N=$O(^P1HL(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL(N,N1)) Q:N1=""  I ^(N1)=DTO S ^(N1)=DTN
 ;
 S N="" F  S N=$O(^P1HL1(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL1(N,N1)) Q:N1=""  I ^(N1)=DTO S ^(N1)=DTN
 ;
 S N="" F  S N=$O(^P1HL2(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL2(N,N1)) Q:N1=""  I ^(N1)=DTO S ^(N1)=DTN
 ;
 S N="" F  S N=$O(^P1HL3(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1HL3(N,N1)) Q:N1=""  I ^(N1)=DTO S ^(N1)=DTN
 ;
 S N="" F  S N=$O(^P1LHB(N)) Q:N=""  D
 .S N1="" F  S N1=$O(^P1LHB(N,N1)) Q:N1=""  I $P(^(N1),"\",7)=DTO S $P(^(N1),"\",7)=DTN
 ;
 S N="" F  S N=$O(^TIPMZ(N)) Q:N=""  D
 .N IND S IND=DTN_"^"_$P(N,"^",2,10)
 .I $P(N,"^")=DTO M ^TIPMZ(IND)=^TIPMZ(N) K ^TIPMZ(N)
 ;
 M ^P1HBI(DTN)=^P1HBI(DTO) K ^P1HBI(DTO)
 S N="" F  S N=$O(^P1HB(N)) Q:N=""  D
 .I $P($G(^(N)),"\",2)=DTO S $P(^(N),"\",2)=DTN
 ;
 M ^P1HB2I(DTN)=^P1HB2I(DTO) K ^P1HB2I(DTO)
 S N="" F  S N=$O(^P1HB2(N)) Q:N=""  D
 .I $P($G(^(N)),"\",2)=DTO S $P(^(N),"\",2)=DTN
 ;
 M ^P1HB5I(DTN)=^P1HB5I(DTO) K ^P1HB5I(DTO)
 M ^P1TMI(DTN)=^P1TMI(DTO) K ^P1TMI(DTO)
 ;
 ;
 S N="" F  S N=$O(^KLF(N)) Q:N=""  D
 .S KPMH=0,KPMZ=0
 .S N1="" F  S N1=$O(^KLF(N,N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(^KLF(N,N1,N2)) Q:N2=""  D
 ...I N1="CB"!(N1="H") D
 ....S A=$G(^(N2))
 ....I $$^%L1DC($P(A,"\",4),4)=DTO S $P(^KLF(N,N1,N2),"\",4)=DAT2N
 ...I N1="KP" D
 ....I $$^%L1DC($E(N2,1,6),4)=DTO D
 .....S ^KLF(N,N1,DAT2N_$E(N2,7,20))=^KLF(N,N1,N2) K ^KLF(N,N1,N2)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1NMEX
W1NMEX ; [ 12.12.18 18:36 ] [ 09.12.18 18:50 ] [ 
 N GL S GL="^NAME1" K @GL
 F I=2:1 Q:'$D(^AAA(I))  D
 .S A=$G(^(I))
 .S OV=$P(A,","),OV=$TR($J(OV,5)," ",0)
 .S NAME=$$INVH^%L1FRM($P(A,",",2))
 .S KV=+$P(A,",",3)
 .S SUGMS=+$P(A,",",4)
 .S TIPS=$P(A,",",5)
 .S TIPS=$S(TIPS="":0,1:1)
 .S KTV=$$INVH^%L1FRM($P(A,",",6))
 .S TZ=$TR($P(A,",",7),"-","")
 .S TEL=$P(A,",",8)
 .S DATS=$$DAT($P(A,",",9))
 .S DATLD=$$DAT($P(A,",",10))
 .
 .S @GL@(OV)=KV_"\"_SUGMS
 .S @GL@(OV,1)=NAME
 .S @GL@(OV,2)=KTV
 .S @GL@(OV,3)=TZ
 .S @GL@(OV,4)=TEL
 .S @GL@(OV,5)=DATS
 .S @GL@(OV,11)=TIPS
 .S @GL@(OV,13)=DATLD
 .S @GL@(OV,21)=1
 Q
 ;
 D ^%L1TS
 S FILE="/home/gtmuser/NAME.csv"
 O FILE:(REWIND:READONLY)
 S I=0
 F  U FILE R A Q:$ZEOF  D
 .S I=I+1
 .S ^AAA(I)=$TR(A,TS1,TS0)
 C FILE
 Q
 ;
DAT(DAT) ;
 S DAT=$TR(DAT,$C(13,10),"")
 S DAT=$TR(DAT,"/",".")
 S DAT=$P(DAT,".",1,2)_"."_$E($P(DAT,".",3),3,4)
 Q DAT
 
 

W1PC
W1PC(UID,OID,SUM,SUME,CNAME,CNC) ; [ 03.09.10 12:01 ] [
 Q
 N (JB,%ARG,%REM,OID,UID,SUM,SUME,CNAME,CNC,WCC)
 D ^%L1TS,^W4MDPPC
 S MKR=1
PC ;
 S MAS(1)=MKR
 S MAS(5)=$S(MKR:" xewn",1:"gewll wzrd")
 S MAS(7)="" I CNC="Y" S MAS(7)="dpnfd lehia"
 S MAS(10)=$$^%L1DC($H,1)_" "_$$T^%L1TIME($P($H,",",2))
 S MAS(15)=$G(@$$^WCG@("RSNAME"))
 S MAS(20)=$G(@$$^WCG@("RSPHONE"))
 S MAS(25)=UID
 S MAS(30)=CNAME
 S MAS(35)=901
 S MAS(40)=OID
 S MAS(50)=$J(SUM,2,2)
 S MAS(55)=$J(SUME,2,2)
 S MAS("EHAD")=""
 S LAB="WCPC"
 D ^W4CB
 I MKR S MKR=0 G PC
 I MKR,$G(WCG("RCOPY")) S MKR=0 G PC
 Q

W1PCBACK
W1PCBACK ; [ 26.04.22 08:40 ] [ 
 Q
 ;
USFIND() ;
 I $$1024^W4WDSCR Q 0 
 I $G(@$$^%W1GLPRM@("REPN"))="W4LEVD" Q 0
 I $G(@$$^%W1GLPRM@("REPN"))="W4LVDT" Q 0
 I $G(@$$^%W1GLPRM@("REPN"))="HZH" Q 0
 Q 1
 
 

W1PCZ
W1PCZ ; [ 06.08.26 09:42 ] [ 05.08.26 20:29 ] [ 19.07.26 16:42 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D GREP
 ;
 S (GLSTART,GLFIN,VARLIST,REPNAME,PREPPROG)=""
 S STAGE=$G(%ARG("STAGE"))
 ;
 S REPN=$G(%ARG("REPN"))
 ;
 I REPN="" D
 .D KILL^%W1PRM("W1PCZREPN")
 .D KILL^%W1PRM("W1PCZSTG")
 .K @$$^%W1GLPRM
 ;
 I REPN'="" D
 .I STAGE="" S STAGE=1
 .D PUT^%W1PRM("W1PCZSTG",STAGE)
 .D DEFGL(REPN) 
 .D PUT^%W1PRM("W1PCZREPN",REPN)
 .
 .I STAGE'=5 D
 ..K @$$^%W1GLPRM("CT")
 ..K @$$^%W1GLPRM("SIK")
 ..K @$$^%W1GLPRM("MIUN")
 ..K @$$^%W1GLPRM("QUERY")
 ..K @$$^%W1GLPRM("FLD0")
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 W "<table>",!
  W "<tr>"
   W "<td>"
     W $$^%W1DICT("REPCODE")_"&nbsp;&nbsp;"
     W "<input id=""repn"" type=""text"" size=""10"" value="""_REPN_""" onKeyUp=""EnglishOnly(event,'repn')"" >"
     W $$NBSP^%L1FRM(3)
     I '$G(%ARG("STAGE")) W "<button id=""sbmrep"" onClick=""SubmitRep()"">"_$$^%W1DICT("SUBMIT")_"</button>",!
     W "<button style=""color:red"" id=""exit"" onClick=""Exit()"">"_$$^%W1DICT("EXIT")_"</button>",!
   W "</td>"
   W "<td width=""10%"">&nbsp;</td>"
   N STYLE S STYLE="display:none"
   I $L($G(REPN)),'$D(@GREP@(REPN)) S STYLE="display:block"
   W "<td id=""tdcopy"" style="""_STYLE_""">"
    W $$^%W1DICT("COPYFROM")_"&nbsp;&nbsp;"
    W "<input id=""copyfrom"" type=""text"" size=""10"">"
    W $$NBSP^%L1FRM(3)
    W "<button id=""sbmrep"" onClick=""CopyRep()"">"_$$^%W1DICT("COPY")_"</button>",!
   W "</td>"
  W "</tr>"
 W "</table>",!
 ;
 I '$G(%ARG("STAGE")) G END
 ;
 W "<table dir=""LTR"">",!
  W "<tr>"
   W "<td width=""18%"">"
    W "REPORT NAME" W $$NBSP^%L1FRM(3)
   W "</td>" 
   W "<td>"
    W "<input id=""repname"" type=""text"" size=""70"" value="""_$$H2U^%L1FRM(REPNAME)_""">"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td width=""18%"">"
    W "GLOBAL START" W $$NBSP^%L1FRM(3)
   W "</td>" 
   W "<td>"
    W "<input id=""glstart"" type=""text"" size=""70"" value="""_GLSTART_""">"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
    W "GLOBAL FINISH" W $$NBSP^%L1FRM(3)
   W "</td>" 
   W "<td>"
    W "<input id=""glfin"" type=""text"" size=""70"" value="""_GLFIN_""">"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
    W "VARIABLE LIST" W $$NBSP^%L1FRM(3)
   W "</td>" 
   W "<td>"
    W "<input id=""varlist"" type=""text"" size=""70"" value="""_VARLIST_""" onchange=""ReView()"" >"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
    W "PROGRAMM FOR PREPARING OF DATA" W $$NBSP^%L1FRM(3)
   W "</td>" 
   W "<td>"
    W "<input id=""prepprog"" type=""text"" size=""54"" value="""_PREPPROG_""" onchange=""PrepProg()"" >"
    W $$NBSP^%L1FRM(3)
    W "<button onclick=""ShowPrepProg()"">Show Programm</button>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<p></p>",!
 D TBOPT
 W "<p></p>",!
 ;
 I STAGE=1 D
 .D TBCODE(REPN) 
 ;
 I STAGE=2 D TBNUM(REPN)
 I STAGE=4 D TBCOM(REPN)
 I STAGE=5 D ^W1PCZQRY(REPN)
 ;
END ;
 W "</div>",!
 Q
 ;
 ;
COPY(PRM) ;
 N FROM,REPN
 S FROM=$P(PRM,"~")
 S REPN=$P(PRM,"~",2)
 D GREP
 I FROM="" Q "REPFROMNOTDEFINED"
 I REPN="" Q "REPNNOTDEFINED"
 I $D(@GREP@(FROM))<10 Q "REPFROMNOTEXIST" 
 M @GREP@(REPN)=@GREP@(FROM)
 Q 1
 ;
 ;
TBOPT ;
 W "<table cellspacing=5 >",!
  W "<tr>" 
   W "<td "_$$TBOPTSTYLE(1)_" onClick=""TbOpt('1')"">",!
    W $$H2U^%L1FRM("micew")
   W "</td>"
   ;
   W "<td "_$$TBOPTSTYLE(2)_" onClick=""TbOpt('2')"">",!
    W $$H2U^%L1FRM("miizenk mipezp")
   W "</td>"
   ;
   W "<td "_$$TBOPTSTYLE(4)_" onClick=""TbOpt('4')"">",!
    W $$H2U^%L1FRM("zecewt")
   W "</td>"
   ;
   W "<td "_$$TBOPTSTYLE(5)_" onClick=""TbOpt('5')"">",!
    W $$H2U^%L1FRM("zezli`y")
   W "</td>"
   ;
   W "<td "_$$TBOPTSTYLE(0)_" onClick=""BackRep()"">",!
    W $$^%W1DICT("BACK")
   W "</td>"
   ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
TBOPTSTYLE(IND)
 N BGCOLOR S BGCOLOR=""
 ;;I IND=1&(STAGE<2)!(IND=STAGE) S BGCOLOR="background-color:white"
 I $G(STAGE)'="",IND=STAGE S BGCOLOR="background-color:white"
 Q "style="""_$S($G(IND)=0:"color:red;",1:"")_"cursor:pointer;border:double 3px brown;"_BGCOLOR_""" "
 ;
 ;
TBCODE(%REPN) ;
 N (JB,%ARG,%REPN,STAGE)
 ;
 D GREP
 ;
 Q:$G(%REPN)=""
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<table id=""TbCode"" width=""100%"" align=""center"">",! 
   W "<tr>"
    W "<th>" 
     W $$H2U^%L1FRM("[lbp`] dcy cew")
    W "</th>" 
    W "<th>"
     W $$H2U^%L1FRM("zixara dcy my")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("dcy jxe`")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("dcy beq")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("yetigl laelb")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("dpyn dcy")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("dpyn dcyl qtn`n zcewt")
    W "</th>"
    ;W "<th>"
    ; W $$H2U^%L1FRM("d zli`y")
    ;W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("hq")
    W "</th>"
   W "</tr>",!
   ;
   S COD=$G(@GREP@(%REPN,"COD"))
   S GLOB2=$G(@GREP@(%REPN,"GLOB2"))
   ;
   F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I D
   .N PRM
   .W "<tr>",!
   .S PRM=$G(@GREP@(%REPN,0,A))
   .W "<td>"
   .  W $$INP(A,I_"_1","8L")
   .W "</td>"
   .W "<td>"_$$INP($$H2U^%L1FRM($P(PRM,";")),I_"_2","16R")_"</td>",!; -- FIELD NAME
   .W "<td>"_$$INP(+$P(PRM,";",2)_$S($P(PRM,";",2)[".":".",1:""),I_"_3","3R","S")_"</td>",!
   .S TYP=$S($P(PRM,";",2)["H":"H",$P(PRM,";",2)["D":"D",$P(PRM,";",2)["N":"N",1:"E")
   .W "<td>"
   . W "<select id=""ind"_I_"_4"">" 
   .  W "<option value=""H"" "_$$SEL("H",TYP)_" >"_$$H2U^%L1FRM("ixar")_"</option>",!
   .  W "<option value=""E"" "_$$SEL("E",TYP)_" >"_$$H2U^%L1FRM("ilbp`")_"</option>",!
   .  W "<option value=""N"" "_$$SEL("N",TYP)_" >"_$$H2U^%L1FRM("ixtqn")_"</option>",!
   .  W "<option value=""D"" "_$$SEL("D",TYP)_" >"_$$H2U^%L1FRM("jix`z")_"</option>",!
   . w "</select>",! 
   .W "</td>",!
   .;;I ","_$P($P(GLOB2,")"),"(",2)_","[(","_A_",") S @GREP@(%REPN,0,A,"SET")=1
   .W "<td>"_$$INP($$GL4($G(@GREP@(%REPN,0,A,"FILE"))),I_"_5","9L")_"</td>",!
   .W "<td>"_$$INP($G(@GREP@(%REPN,0,A,"OUT")),I_"_6","8L")_"</td>",!
   .W "<td>"_$$INP($S($D(^("M2")):^("M2"),1:""),I_"_7","30L")_"</td>",!
   .;;W "<td>"_$$INP($G(^("SH"),1),I_"_8","B")_"</td>",!
   .W "<td>"_$$INP($G(^("SET")),I_"_9","B")_"</td>",!
   .W "</tr>",!
  W "</table>",! 
  W "<p></p>",!
  D ^W4SBMBCK
  W "</div>",!
 Q
 ;
 ;
TBNUM(%REPN) ;
 N (JB,%ARG,%REPN,STAGE)
 ;
 D GREP
 ;
 Q:$G(%REPN)=""
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<table id=""TbNum"" width=""100%"">",! 
   W "<tr>"
    W "<th>" 
     W $$H2U^%L1FRM("zixara my")
    W "</th>" 
    W "<th>"
     W $$H2U^%L1FRM("jxe`")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("dcewp ixg`")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("mekiq oniq")
    W "</th>"
    W "<th>"
     W $$H2U^%L1FRM("n""rn oniq")
    W "</th>"
   W "</tr>",!
   ;
   S COD=$G(@GREP@(%REPN,"COD"))
   S GLOB2=$G(@GREP@(%REPN,"GLOB2"))
   ;
  W "<p></p>",!
  ;
  S COD=@GREP@(%REPN,"COD") K ^MBG($P)
  S COLPR=0
  F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  Q:$E(A)="x"  S COLPR=I
  Q:COLPR'<$L(COD,"*")
  ;
  S JJ=0
  F I=COLPR+1:1:$L(COD,"*") S JJ=JJ+1
  N MAX S MAX=JJ
  ;
  S JJ=0
  F I=COLPR+1:1:$L(COD,"*") S A=$P(COD,"*",I) Q:A=""  D
  .W "<tr>"
  .N PRM
  .S PRM=$G(@GREP@(%REPN,0,A))
  .S JJ=JJ+1
  .W "<td>"
  .W JJ_$$NBSP^%L1FRM(3)
  . D  
  .. W "<input "
  ..  W "style=""background-color:lightgrey;color:green;height:"_$$^W4KF(25)_";width:"_$$^W4KF(30)_";font-size:"_$$^W3FSZ(14)_";text-align:center;vertical-align:center;cursor:pointer"" "
  ..  I JJ>1 D
  ...  W " value=""cp"" "
  ...  W " onClick=""CopyLine("_JJ_")"" "
  .. W "/>",!
  .
  . W $$INP($$H2U^%L1FRM($P(PRM,";")),JJ_"_1","16R")_"</td>"
  . W "<td>"_$$INP(+$P(PRM,";",2),JJ_"_2","2C","S")_"</td>"
  . W "<td>"_$$INP(+$P($P(PRM,";",2),",",2),JJ_"_3","1C","S")_"</td>"
  . W "<td>"_$$INP($P($G(@GREP@(%REPN,"SIK")),"*",JJ),JJ_"_4","B")_"</td>"
  . W "<td>"_$$INP($P($G(@GREP@(%REPN,"MAM")),"*",JJ),JJ_"_5","B")_"</td>"
  .W "</tr>",!
  W "</table>",!
  ; 
  W "<p>&nbsp;</p>",!
  D ^W4SBMBCK
 W "</div>",!
 Q
 ;
 ;
TBCOM(%REPN) ;
 N (JB,%ARG,%REPN)
 I $G(%REPN)="" Q
 D DEFGL(%REPN) S %GLOB2=GLFIN
 ;
 F II=1:1:$L(%GLOB2,",") S GLOB=$P(%GLOB2,",",1,II) Q:GLOB=""  S:GLOB'[")" GLOB=GLOB_")" D
 .W "<p dir=""LTR"">"_GLOB_"<br>",!
 .S VL=$G(@GREP@(%REPN,"US",II))
 .S VL=$$RPL^%L1FRM(VL,"""","&quot;")
 .W "<input type=""text"" id=""ind"_II_""" size=""86"" value="""_VL_""" />"
 .W $$NBSP^%L1FRM(2)
 .W "<button onclick=""ClickCommand('ind"_II_"')"">Show Programm</button>",!
 .W "</p>",!
 .W "<p></p>",! 
 ;
 W "<p>&nbsp;</p>",!
 D ^W4SBMBCK
 Q
 ;
 ;
DEFGL(REPN) ;
 D GREP
 S GLSTART=$$GL4($G(@GREP@(REPN,"GLOB1")))
 S GLFIN=$$GL4($G(@GREP@(REPN,"GLOB2")))
 S VARLIST=$G(@GREP@(REPN,"COD"))
 S REPNAME=$G(@GREP@(REPN))
 S REPNAME=$$CNWEB^%L1FRM(REPNAME)
 S PREPPROG=$G(@GREP@(REPN,"MIUN","PROG"))
 Q
 ;
GL4(GL) ;
 I $G(GL)="" Q ""
 Q $$GL4^%W1PCZ(GL)
 ;
GL2(GL) ;
 I $G(GL)="" Q ""
 Q $$GL2^%W1PCZ(GL)
 ;
GREP ;
 S GREP="^[$$^W3MAIN]W1REP(""H"")"
 S GREPBG="^[$$^W3MAIN]W1REP(""H"","
 Q
 ;
INP(VL,IND,LN,PRSEL) ;
 N ST
 I $G(LN)="B" D  Q ST
 .S ST="<input type=""checkbox"" id=""ind"_IND_""" "_$S(VL:"checked=""checked""",1:"")
 .S ST=ST_" />"
 ;
 I '$G(LN) S LN=8
 N STYLE S STYLE=""
 N ALGN S ALGN=$E(LN,$L(LN))
 S STYLE=$S(ALGN="R":"text-align:right",ALGN="C":"text-align:center",ALGN="L":"text-align:left",1:"")
 I '$G(LN) S LN=5
 S ST="<input type=""text"" "_$S(ALGN="L":"dir=""LTR""",1:"")_" id=""ind"_IND_""" size="""_+LN_""" style="""_STYLE_""" value="""_VL_""" "
 I $G(PRSEL)="S" S ST=ST_" onFocus=""this.select()"" " 
 S ST=ST_" />" 
 Q ST
 ;
 ;
SAVE(PRM) ;
 S DLM1="<>",DLM2="~"
 S %REPN=$P(PRM,DLM1)
 S STAGE=$P(PRM,DLM1,2)
 ;
 I STAGE=1 D SAVE1(PRM)
 I STAGE=2 D SAVE2(PRM)
 I STAGE=4 D SAVE4(PRM)
 Q 1
 ;
 ;
SAVE1(PRM) ; 
  N (JB,%ARG,PRM)
  D GETSVPRM Q:$G(%REPN)=""  Q:$G(PRM)=""
  ;
  F I=1:1:$L(PRM,DLM1) D
  .S ST=$P(PRM,DLM1,I) Q:ST=""
  .S A=$P(ST,DLM2) Q:A=""  K @GREP@(%REPN,0,A)
  .S @GREP@(%REPN,0,A)=$$HB($P(ST,DLM2,2))_";"_$P(ST,DLM2,3)_$S($P(ST,DLM2,4)="H":"H",$P(ST,DLM2,4)="D":"D",$P(ST,DLM2,4)="N":"N",1:"")
  .I $P(ST,DLM2,5)'="" S @GREP@(%REPN,0,A,"FILE")=$$GL2($S($P(ST,"~",5)'["^"&($E($P(ST,"~",5))'="+"):"^",1:"")_$P(ST,"~",5))
  .I $P(ST,DLM2,6)'="" D  S:$P(ST,DLM2,7)'="" @GREP@(%REPN,0,A,"M2")=$P(ST,DLM2,7) S:$P(ST,DLM2,9)'="" @GREP@(%REPN,0,A,"SET")=$P(ST,DLM2,9) Q
  ..S @GREP@(%REPN,0,A,"OUT")=$P(ST,DLM2,6)
  ..S OUT($P(ST,DLM2,6))=""
  .I $P(ST,DLM2,7)'="" S @GREP@(%REPN,0,A,"M2")=$P(ST,DLM2,7)
  .;;I $P(ST,DLM2,8)'="" S @GREP@(%REPN,0,A,"SH")=$P(ST,DLM2,8)
  .S @GREP@(%REPN,0,A,"SH")=1
  .I $P(ST,DLM2,9)'="" S @GREP@(%REPN,0,A,"SET")=$P(ST,DLM2,9)
  ;
  D SETFLD(%REPN,VARLIST)
 Q
 ;
 ;
SAVE2(PRM) ;
  N (JB,%ARG,PRM)
  D GETSVPRM Q:$G(%REPN)=""  Q:$G(PRM)=""
  S DLM3="*"
  ;
  F I=1:1:$L(PRM,DLM1)  D
  .S ST=$P(PRM,DLM1,I) S A="x"_I K @GREP@(%REPN,0,A)
  .S @GREP@(%REPN,0,A)=$$HB($P(ST,DLM2))_";"_$P(ST,DLM2,2)_","_$P(ST,DLM2,3)
  .S $P(@GREP@(%REPN,"SIK"),DLM3,I)=$P(ST,DLM2,4)
  .S $P(@GREP@(%REPN,"MAM"),DLM3,I)=$P(ST,DLM2,5)
  Q
 ;
 ;
SAVE4(PRM) ;
 N (JB,%ARG,PRM)
  D GETSVPRM Q:$G(%REPN)=""  Q:$G(PRM)=""
 ;
 F II=1:1:$L(PRM,DLM1) D
 .S @GREP@(%REPN,"US",II)=$P(PRM,DLM1,II)
 Q
 ;
 ;
SEL(TYP1,TYP2) ;
 I TYP1=TYP2 Q "selected=""selected"" "
 Q "" 
 ;
D(REPN) ; 
 N GREP,GREPBG
 I $G(REPN)="" Q 0
 D GREP 
 Q $D(@GREP@(REPN))
 ;
 ;
SETHD(PRM) ; 
 N (JB,%ARG,PRM)
 S REPN=$$GET^%W1PRM("W1PCZREPN") I REPN="" Q "NOTREPN"
 D GREP
 S GLSTART=$P(PRM,"~")
 S GLFIN=$P(PRM,"~",2) 
 S VARLIST=$P(PRM,"~",3) 
 S PREPPROG=$P(PRM,"~",4) 
 S REPNAME=$$HB($P(PRM,"~",5))
 ;
 S @GREP@(REPN,"GLOB1")=GLSTART 
 S @GREP@(REPN,"GLOB2")=GLFIN 
 S @GREP@(REPN,"COD")=VARLIST 
 S @GREP@(REPN)=$G(REPNAME)
 S @GREP@(REPN,"MIUN","PROG")=PREPPROG
 ;
 S ST=""  
 F I=1:1:$L(VARLIST,"*") S VAR=$P(VARLIST,"*",I) Q:VAR?1"x"1N.N  D
 .I $G(@GREP@(REPN,0,VAR,"OUT"))'="" D
 ..S VL=^("OUT"),OUT(VL)=""
 ;
 F I=1:1:$L(VARLIST,"*") S VAR=$P(VARLIST,"*",I) Q:VAR?1"x"1N.N  D
 .I $L(VAR),'$D(OUT(VAR)) S ST=ST_VAR_"*"
 ;
 D SETFLD(REPN,VARLIST)
 ;
 S %REPN=REPN
 D ^%W1PCIN
 Q 1 
 ;
 ;
SETFLD(%REPN,VARLIST) ;
 N I,COD,FLD
 S COD=VARLIST
 S FLD="" F I=1:1:$L(COD,"*") S A=$P(COD,"*",I) I A'="",'$D(OUT(A)) S FLD=FLD_A_"*"
 ;N XX S XX=$P(VARLIST,"x",2,200)
 ;I XX'="" S FLD=FLD_"x"_XX
 ;E  S FLD=$E(FLD,1,$L(FLD)-1)
 S FLD=$E(FLD,1,$L(FLD)-1)
 S @GREP@(%REPN,"FLD")=FLD
 Q
 ;
 ;
GETSVPRM ; 
 D GREP
 ;
 S DLM1="<>",DLM2="~"
 ;
 S %REPN=$P(PRM,DLM1) Q:%REPN=""
 S GLOB1=$P(PRM,DLM1,3)
 S GLOB2=$P(PRM,DLM1,4)
 S VARLIST=$P(PRM,DLM1,5)
 S REPNAME=$P(PRM,DLM1,6)
 ;
 S @GREP@(%REPN,"GLOB1")=$$GL2(GLOB1)
 S @GREP@(%REPN,"GLOB2")=$$GL2(GLOB2)
 S @GREP@(%REPN,"COD")=VARLIST
 S @GREP@(%REPN)=$$HB(REPNAME)
 ;
 S PRM=$P(PRM,DLM1,7,200)
 ;
 ;;S ^AA("W1PCZ-SVPRM","REPN")=%REPN
 ;;S ^AA("W1PCZ-SVPRM","GLOB1")=GLOB1
 ;;S ^AA("W1PCZ-SVPRM","GLOB2")=GLOB2
 ;;S ^AA("W1PCZ-SVPRM","VARLIST")=VARLIST
 ;;S ^AA("W1PCZ-SVPRM","REPNAME")=REPNAME
 ;;S ^AA("W1PCZ-SVPRM","PRM")=PRM
 Q
 ;
 ;
HB(TX) ; 
 S TX=$$CNWEB^%L1FRM(TX)
 Q $$INVH^%L1FRM(TX) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1PCZQRY
W1PCZQRY(%REPN) ; [ 05.08.26 20:32 ] [ 29.05.26 10:17 ] [ 22.05.26 05:24 ] 
 N (JB,%ARG,%REPN)
 I $G(%REPN)="" Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D GREP
 ;
 S MAC=GREPBG_"%REPN,""QUERY"")"
 W "<select id=""qry"" onChange=""ShowQuery()"" ",!
 W ">",! 
 W "<option value=""0"">"_$$H2U^%L1FRM("ycg g""ec xevil")_"</option>",!
 S N="" F  S N=$O(@MAC@(N)) Q:N=""  D
 .S N1=$$RPL^%L1FRM(N,"""","&quot;")
 .W "<option value="""_N1_""" "
 .I N=$G(%ARG("QUERY")) W " selected=""selected"" "
 .W ">"_$$H2U^%L1FRM(N)_"</option>",!
 W "</select>",!
 W "<p></p>",!
 ;
 S QUERY=$G(%ARG("QUERY"))
 D PUT^%W1PRM("W1PCZ",1)
 D PUT^%W1PRM("W1PCZQRY",QUERY)
 D ^%W1HD("!"_$$REPNAME^%W1PCS)
 D SETPRMQ^%W1PC(QUERY)
 ;
 I $G(%ARG("FLDLIST")) D  G END
 .W "<p></p>",!
 .D QRYNAME^%W1PCS
 .D FLDLIST(%REPN,QUERY)
 ;
 D V0^%W1PC
 ;
END ;
 Q
 ;
 ;
FLDLIST(%REPN,QUERY) ;
 N IJK,COD,NM,FLDS
 S FLDS=$$FIELDS(%REPN)
 D GREP^W1PCZ
 W "<table id=""fldlist"" width=""20%"" >",!
 F IJK=1:1:$L(FLDS,"*") S COD=$P(FLDS,"*",IJK)  I COD'="" D
 .W "<tr>"
 .S NM=$P($G(@GREP@(%REPN,0,COD)),";")
 . W "<td>"_$$H2U^%L1FRM(NM)_"</td>"
 . W "<td><input type=""checkbox"" id=""ind"_IJK_""" "_$$CHECKED(%REPN,QUERY,IJK)_" /></td>"
 .W "</tr>",!
 ;
 N ST S ST=$G(@GREP@(%REPN,"FLD"))
 F IJK1=IJK+1:1:$L(ST,"*") S COD=$P(ST,"*",IJK1)  I COD'="" D
 .W "<tr>"
 .S NM=$P($G(@GREP@(%REPN,0,COD)),";")
 . W "<td>"_$$H2U^%L1FRM(NM)_"</td>"
 . W "<td><input type=""checkbox"" id=""ind"_IJK1_""" "_$$CHECKED(%REPN,QUERY,IJK1)_" /></td>"
 .W "</tr>",!
 ;
 W "</table>",!
 W "</p>&nbsp;</p>"
 D ^W4SBMBCK
 Q
 ;
 ;
CHECKED(%REPN,QUERY,I)
 I $G(QUERY)="" Q " checked=""checked"" " 
 I $G(I)="" Q ""
 N FLDS
 S FLDS=$G(@GREP@(%REPN,"QUERY",QUERY,"FLD0"))
 I $P(FLDS,"*",I)="-" Q ""
 Q " checked=""checked"" " 
 ;
 ;
GREP ;
 D GREP^W1PCZ
 Q
 ;
FIELDS(%REPN) ;
 I $G(%REPN)="" Q ""
 N GREP,FLDS,SIGN
 D GREP
 N ST S ST=$G(@GREP@(%REPN,"FLD"))
 Q $P(ST,"*x")
 ;
SVFLDLST(PRM) ;
 N ST,QRY,REPN S ST=""
 S REPN=$$GETP^%W1PRM("W1PCZREPN") I REPN="" Q "NOTREPN"
 S QRY=$P(PRM,"<>") I $L(QRY)<3 Q "NOTQRY"
 S QRY=$$INVH^%L1FRM(QRY)
 S PRM=$P(PRM,"<>",2)
 ;;S ^AA("W1PCZQRY-SVFLDLST","REPN")=REPN
 ;;S ^AA("W1PCZQRY-SVFLDLST","QRY")=QRY
 ;;S ^AA("W1PCZQRY-SVFLDLST","PRM")=PRM
 D GREP
 S @GREP@(REPN,"QUERY",QRY,"FLD0")=PRM
 Q 1
 ;
 ;
DELQUERY()
 N REPN,QRY
 S REPN=$$GETP^%W1PRM("W1PCZREPN") I REPN="" Q "NOTREPN"
 S QRY=$$GETP^%W1PRM("W1PCZQRY")
 I QRY="" Q "NOTQRY"
 D GREP
 K @GREP@(REPN,"QUERY",QRY)
 K @$$^%W1GLPRM@("QUERY")
 Q 1
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,PRM)
 S REPN=$$GETP^%W1PRM("W1PCZREPN") I REPN="" Q "NOTREPN"
 D GREP
 S QUERY=$P(PRM,"<>") I QUERY="" Q "NOTQRY"
 S QUERY=$$INVH^%L1FRM(QUERY)
 ;
 S FLD0=$G(@GREP@(REPN,"QUERY",QUERY,"FLD0"))
 ;;S ^AA("W1PCZQRY-SAVE","QUERY")=QUERY
 ;;S ^AA("W1PCZQRY-SAVE","FLD0")=FLD0
 ;
 S PRM=$P(PRM,"<>",2)
 S MSORT=$P(PRM,"^")
 S MSIK=$P(PRM,"^",2)
 S MCT=$P(PRM,"^",3)
 ;
 S I=0,J=0,MSORT1=""
 ;;S ^AA("W1PCZQRY-SAVE","MSORT")=MSORT
CYC1 ; 
 S I=I+1,J=J+1
 I I>$L(MSORT,"*") D  G CYC20
 .;;S ^AA("W1PCZQRY-SAVE","MSORT1")=MSORT1
 I $P(FLD0,"*",J)="-" S J=J+1 
 S $P(MSORT1,"*",J)=$P(MSORT,"*",I) 
 G CYC1
 ;
CYC20 ;
 ;;S ^AA("W1PCZQRY-SAVE","MSIK")=MSIK
 S I=0,J=0,MSIK1=""
CYC2 ; 
 S I=I+1,J=J+1
 I I>$L(MSIK,"*") D  G CYC30
 .;;S ^AA("W1PCZQRY-SAVE","MSIK1")=MSIK1
 I $P(FLD0,"*",J)="-" S J=J+1 
 S $P(MSIK1,"*",J)=$P(MSIK,"*",I) 
 ;;S ^AA("W1PCZQRY-SAVE","MSIK")=MSIK
 ;;S ^AA("W1PCZQRY-SAVE","MSIK1")=MSIK1
 G CYC2
 ;
CYC30;
 ;;S ^AA("W1PCZQRY-SAVE","MCT")=MCT
 S I=0,J=0,MCT1=""
CYC3 ; 
 S I=I+1,J=J+1
 I I>$L(MCT,"*") D  G CYCE
 .;;S ^AA("W1PCZQRY-SAVE","MCT1")=MCT1
 I $P(FLD0,"*",J)="-" S J=J+1 
 S $P(MCT1,"*",J)=$P(MCT,"*",I) 
 G CYC3
 ;
CYCE ;
 N SORT,OKSORT S OKSORT=1
 F J=1:1:$L(MSORT1,"*") D  Q:'OKSORT
 .I $P(FLD0,"*",J)="-" Q
 .S SORT=+$P(MSORT1,"*",J)
 .I $G(MS(SORT)),MS(SORT)'=J S OKSORT=0 Q
 .I SORT S MS(SORT)=J
 ;
 I 'OKSORT Q "SAMESORT"
 ;
 S @GREP@(REPN,"QUERY",QUERY,"MIUN")=MSORT1
 S @GREP@(REPN,"QUERY",QUERY,"SIK0")=MSIK1
 S @GREP@(REPN,"QUERY",QUERY,"CT")=MCT1
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1PRN2G
W1PRN2G ; [ 19.02.20 18:23 ] [ 
 M ^PARO=^PAR
 S N="" F  S N=$O(^PAR(N)) Q:N=""  D
 .S $P(^PAR(N),"**",11)="G"
 Q
 

W1RDEX
W1RDEX ; [ 03.12.18 06:59 ] [ 
 D ^%L1TS
 S FILE="/home/gtmuser/W4PAR.SF.csv"
 O FILE:(READONLY:REWIND)
 ;
 K ^PARSF
 F  U FILE R A Q:$ZEOF  D
 .S A1=$TR(A,TS1,TS0)
 .U 0 W A1,!
 .S CD=$P(A1,",",3) Q:'CD
 .F J=1:1:$L(A1,",") D
 ..S A2=$P(A1,",",J)
 ..I J=2!(J=4)!(J=6) S A2=$$INVH^%L1FRM(A2)
 ..S ^PARSF(CD,J)=A2
 C FILE
 
 
 

W1REST
W1REST ; [ 16.11.25 12:23 ] [ 
 S SM=21704
 ;
 S LK="" F  S LK=$O(^KLF1(LK)) Q:LK=""  D
 .S DAT="" F  S DAT=$O(^KLF1(LK,"KP",DAT)) Q:DAT=""  D
 ..S HZ="" F  S HZ=$O(^KLF1(LK,"KP",DAT,"HZ",HZ)) Q:HZ=""  D
 ...M ^KLF(LK,"KP",DAT,"HZ",HZ+SM)=^KLF1(LK,"KP",DAT,"HZ",HZ)
 ;
 S N="" F  S N=$O(^P1HZ1(N)) Q:N=""  M ^P1HZ(N+SM)=^P1HZ1(N)
 ;
 S DT="" F  S DT=$O(^P1H1(DT)) Q:DT=""  D
 .S N="" F  S N=$O(^P1H1(DT,N)) Q:N=""  D
 ..M ^P1H(DT,N+SM)=^P1H1(DT,N)
 ;
 S SHL="" F  S SHL=$O(^P1HL01(SHL)) Q:SHL=""  D
 .S N="" F  S N=$O(^P1HL01(SHL,N)) Q:N=""  D
 ..M ^P1HL(SHL,N+SM)=^P1HL01(SHL,N)
 ;
 S SHL="" F  S SHL=$O(^P1HL011(SHL)) Q:SHL=""  D
 .S N="" F  S N=$O(^P1HL011(SHL,N)) Q:N=""  D
 ..M ^P1HL1(SHL,N+SM)=^P1HL011(SHL,N)
 ;
 S SHL="" F  S SHL=$O(^P1HL021(SHL)) Q:SHL=""  D
 .S N="" F  S N=$O(^P1HL021(SHL,N)) Q:N=""  D
 ..M ^P1HL2(SHL,N+SM)=^P1HL021(SHL,N)
 ;
 ;
TV ;
 ;;S SM=21704
 S SM1=14912
 S N="" F  S N=$O(^P1HB1(N)) Q:N=""  D
 .M ^P1HB(N+SM1)=^P1HB1(N)
 ;
 S DT="" F  S DT=$O(^P1HBI1(DT)) Q:DT=""  D
 .S N="" F  S N=$O(^P1HBI1(DT,N)) Q:N=""  D
 ..M ^P1HBI(DT,N+SM1)=^P1HBI1(DT,N)
 ;
 S SM2=6948
 S N="" F  S N=$O(^P1HB21(N)) Q:N=""  D
 .S ST=^P1HB21(N)
 .S $P(ST,"\")=$P(ST,"\")+SM
 .M ^P1HB2(N+SM2)=ST
 ;
 S DT="" F  S DT=$O(^P1HB2I1(DT)) Q:DT=""  D
 .S N="" F  S N=$O(^P1HB2I1(DT,N)) Q:N=""  D
 ..M ^P1HB2I(DT,N+SM2)=^P1HB2I1(DT,N)
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1RRNET
W1RRNET(PROG,SSH) ; [ 29.12.24 12:05 ] [ 31.01.24 06:43 ] [ 30.01.24 21:11 ] 
 N (JB,%ARG,%REM,PROG,SSH)
 I '$G(JB) S JB=$$^%W1SsID("W1RR")
 ;
 I $L($G(SSH)) S SSH=$$FUNC^%LCASE(SSH)
 D GL
 S GLTMP=$$^W4MAIN("TMP")
 S GLRR="^|$$^W3MAIN|W1RR(+$H)"
 ;
 K @GLRR,@GLTMP
 ;
 S $ZT="G ER^W1RRNET"
 S N=1
 ;
CYC S N=$O(@GL@(N)) G:N<1 ENDCYC D SNDRR(N)
 G CYC
ENDCYC ;
 K @GLTMP
 S $ZT="",N=""
 Q
 ;
 ;
SNDRR(N) ;
 ;
 I N<1 S N="" Q
 D GL
 S A=$G(@GL@(N,1))
 S IND=$P(A,"\",7) Q:IND=""
 ;
 S REF=$P(A,"\",2) Q:REF=""  Q:REF'["/w4main.jsp"
 I $L($G(SSH)),IND'[("ssh2"_SSH) Q
 S PAIL=$P(A,"\",4) Q:'PAIL
 S REF=$P(REF,"/",1,$L(REF,"/")-1)_"/w1rr.jsp?JB="_JB_"&PROG="_PROG
 U 0 W !,N_" "_IND
 S FLOU="/home/www2order/w1rr"
 C FLOU:(DELETE)
 S CMD="curl -s -m 25 """_REF_""" -o "_FLOU
 ;
 ZSY CMD
 ;
 I $ZSY U 0 W " -- $ZSY="_$ZSY,! Q
 I '$$EXIST^%L1ZOS(FLOU) U 0 W " -- FLOU NOT EXIST",! Q
 ;
 C FLOU
 ;
 O FLOU:(REWIND:READONLY)
 S OU="",SH=0,END=0
 ;
 N OK S OK=0
 F  U FLOU R ST Q:$ZEOF  D  Q:END
 .;;U 0 W ST,!
 .I ST["<body" D
 ..F  U FLOU R OU Q:$ZEOF  D  Q:END
 ...I OU["</body>"!(OU["</html>") S END=1 Q
 ...I OU["Restored " S OK=1
 I 'OK S ^|$$^W3MAIN|W1RR(+$H,"NOK",PROG,N)=IND
 ;
 C FLOU:(DELETE)
 Q
 ;
 ;
ER ;
 U 0 W N_": "_$ZS,!
 S ^|$$^W3MAIN|W1RR(+$H,"ER",N)=$ZS_"\"_$G(IND)
 G CYC
 ;
 ;
GL ; 
 S GL="^|"""_$$^W3MAIN_"""|NEWCSR1"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1RSTG
W1RSTG ; [ 05.04.26 21:35 ] [ 28.03.26 16:20 ] [ 
 N (JB)
 S $ZGBLDIR="/home/gtmuser/app/mumps/mumps.gld"
 S $ZDIR="/home/gtmuser/app/mumps/"
 ;
 S A=$ZCMD
 S MEDAT=$P(A," "),ADDAT=$P(A," ",2)
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 I '$G(JB) S JB=$$^%W1SsID("W1RSTG")
 F DT=DT1:1:DT2 D ^W4RSTGSN(JB,DT) W $ZD(DT,"DD.MM.YY"),! H 3
 Q
 
 
 
 
 
 

W1SCR
W1SCR ; [ 03.05.26 11:17 ] [ 14.04.26 13:27 ] [ 26.02.26 10:18 ] 
 N (JB,%ARG,%REM)
 K @$$^W4MAIN("W1SCR")
 D ^%W1ARG
 ;
 S SCR=$G(%ARG("SCR"))
 ;
 I $L(SCR) D
 .D PUT^%W1PRM("SCR",SCR)
 .
 I $G(%ARG("OPT"))="" D
 .I $L(SCR),$D(@$$GL@(SCR)) S %ARG("OPT")=2 Q 
 .S %ARG("OPT")=1
 ;
 S OPT=$G(%ARG("OPT"))
 ;
 W "<style>",!
 W "#TblBut tr button { font-size:inherit }",!
 W "</style>",! 
 ;
 W "<div dir=""LTR"" align=""center"">",!
 W "<style>#TblBut button { font-weight:bold }</style>",!
 W "<table id=""TblBut"">",!
  W "<tr style=""font-size:"_$$^W3FSZ(12)_""">",!
   W "<td><button onClick=""CreateScr()"" "_$$STLBUT(OPT,1)_">Create Screen</button></td>"
   W "<td><button onClick=""EditPrm()"" "_$$STLBUT(OPT,2)_">Edit Parameters</button></td>"
   W "<td><button id=""gnp"" onClick=""EditGPrm()"" "_$$STLBUT(OPT,3)_">Edit General G-Parameters</button></td>"
   D
   .N SHP S SHP=SCR_"s"
   .I '$D(@$$^W4GL("SHP")@(SHP)) D  Q
   ..W "<td><button onClick=""CreatePrintForm()"" "_$$STLBUT(OPT,4)_" >Create Print Form</button></td>"
   .W "<td><button onClick=""EditPrintForm()"" "_$$STLBUT(OPT,4)_" >Edit Print Form</button></td>"
   .W "<td><button onClick=""DelPrintForm()"" "_$$STLBUT(OPT,5)_" >Delete Print Form</button></td>"
  W "</tr>",!
 W "</table>",! 
 ;
 I $L($G(%ARG("SCR"))) D
 .I $G(%ARG("OPT"))=1 D ED(SCR) Q
 .
 .I $G(%ARG("OPT"))=2 D EDPRM(SCR) Q
 .
 .I $G(%ARG("OPT"))=4 D EDSHP(SCR) Q
 ;
 W "</div>",!
 Q
 ;
 ;
ED(SCR) ;
 D PREP(SCR)
 D VRM
 S A=""
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  I N D
 .S X=$G(^(N))
 .S A=A_X_$C(10)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 S %ARG("TXBOX")="scr"
 D CHN^%W1EDIT
 ;
 ;;S A=$$RPL^%L1FRM(A,"&","&amp;")
 ;
 K %ARG("TXBOX")
 ;
 W "<textarea cols=""80"" rows=""24"" style=""line-height:18px"" id=""scr"" name=""TXTSCR"" >",!
  W A,!
 W "</textarea>",!
 W "<p></p>",!
 W "</div>",!
 ;
DIVBTN ;
 D DIVBTN^%W1EDIT
 Q
 ;
 ;
PREP(SCR) ;
 N %PR,%MAC1,%MAC2,%ORD,FLAG,%PR,VRM
 N MAC S MAC=$$GL_"("""_SCR_""")"
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 N I F I=1:1 Q:'$D(@MAC@(I))  D
 .S @VRM@(I)=$$H2U^%L1FRM($G(@MAC@(I)))
 Q
 ;
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
 ;
SCR(SCR)
 S SCR=$$RPL^%L1FRM(SCR,"$28","(")
 S SCR=$$RPL^%L1FRM(SCR,"$29",")")
 S SCR=$$RPL^%L1FRM(SCR,"$22","""")
 S SCR=$$RPL^%L1FRM(SCR,"$2B","+")
 S SCR=$$RPL^%L1FRM(SCR,"0g","")
 Q SCR
 ;
 ;
GETSCR(STAM)
 N A
 S A=$$GETP^%W1PRM("SCR")
 Q A
 ;
 ;
EDPRM(SCR) ;
 N (JB,%ARG,SCR)
 N GL S GL=$$GL
 W "<div dir=""RTL"">",!
  W "<table>",!
  S ST=""
  F I=1:1 Q:'$D(@GL@(SCR,I))  S ST=$G(^(I)) Q:ST["$"  D EDPRM1(ST)
  W "</table>",!
  ;
  I ST["$" D
  .N LN S LN=0
  .F I1=I+1:1 Q:'$D(@GL@(SCR,I1))  S ST=$G(^(I1)) Q:ST["$"  I ST[":" S LN=$L(ST,":")
  .S WD=8*LN I WD>100 S WD=100
  .I LN D
  ..W "<p></p>",! 
  ..W "<table border=""1"" cellspacing=""0"" cellpadding=""0"" "
  ..W " width="""_WD_"%"" "
  ..W ">",!
  ..F I1=I+1:1 Q:'$D(@GL@(SCR,I1))  S ST=$G(^(I1)) Q:ST["$"  D
  ...N J
  ...W "<tr>"
  ... I ST[":" D  Q
  .... D EDPRM2(ST)
  ...
  ... F J=LN-2:-1:1 W "<td>&nbsp;</td>"
  ..W "</tr>",!
  ..
  ..I ST["$" D
  ...W "</table>",!
  ...W "<p></p>",! 
  ..
  ..W "<table>",!
  ..F I2=I1+1:1 Q:'$D(@GL@(SCR,I2))  S ST=$G(^(I2)) D EDPRM1(ST)
  ..W "</table>",!
 W "</div>",! 
 Q
 ;
 ;
EDPRM1(ST) 
 N (JB,ST,SCR)
 I ST'["}" W "<tr><td align=""center"">"_$$H2U^%L1FRM(ST)_"</td></tr>",! Q
 W "<tr><td>" 
  S J=$L(ST,"}")
  W $$H2U^%L1FRM($P(ST,"}",J))
EDPRMC ;
  S PRM=$P($P(ST,"{",J),"}") 
  D BTN(PRM)
  S J=J-1
  W $$H2U^%L1FRM($P($P(ST,"}",J),"{"))
  I J'>1 W "</td></tr>",! Q
 G EDPRMC
 ;
 ;
EDPRM2(ST) ;
 N GL S GL=$$GL
 S @GL@(SCR,"G","STG")=ST
 ;
 N J,K
 S K=0
 F J=LN-2:-1:1 D
 .S K=K+1
 .W "<td align=""center"">" 
 . N SHEM S SHEM=$P(ST,":",J+1)
 . S @GL@(SCR,"G",K,"SHEM")=SHEM
 . W $$H2U^%L1FRM(SHEM)
 .
 .W "</td>"
 W "</tr>",!
  ;
  S K=0
  W "<tr>"
   F J=LN-2:-1:1 D
   .W "<td align=""center"">" 
   . S K=K+1
   . S BGCOLOR="lightyellow"
   . I $G(@$$GL@(SCR,"G","NM",K))'="" S BGCOLOR="yellow"
   . W "<input type=""button"" style=""width:90%;background-color:"_BGCOLOR_""" onclick=""ClickPrmG('"_K_"')"" value="""_K_""" />",!
   .W "</td>"
  W "</tr>",!
 Q
 ;
 ;
BTN(PRM) ;
 I $G(SCR)="" Q
 N LN S LN=$L(PRM)+2
 N NOM S NOM=$TR(PRM," ","") Q:'NOM
 N BGCOLOR S BGCOLOR="lightgrey"
 I $G(@$$GL@(SCR,"P","NM",+NOM))'="" S BGCOLOR="white"
 W "<input type=""button"" style=""width:"_$$^W4KF(20*LN)_"px;background-color:"_BGCOLOR_";color:black"" onclick=""ClickPrm('"_+NOM_"')"" value="""_NOM_""" />",!
 Q
 ;
STLBUT(OPT,I) ;
 I OPT=I Q "style=""background-color:yellow"" "
 Q ""
 ;
GL() ;
 Q $$^W4GL("SCR")
 ;
GLSHP() ;
 Q $$^W4GL("SHP")
 ;
EDSHP(SCR) ;
 N A,N,X,SHP
 S SHP=SCR_"s"
 D PREPSHP(SHP)
 D VRM
 S A=""
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  I N D
 .S X=$G(^(N))
 .S A=A_X_$C(10)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 N GLED S GLED=""
 S %ARG("TXBOX")="shp"
 D CHN^%W1EDIT
 ;
 ;;S A=$$RPL^%L1FRM(A,"&","&amp;")
 ;
 K %ARG("TXBOX")
 ;
 W "<textarea style=""unicose-bidi:bidi-override"" cols=""80"" rows=""24"" style=""line-height:18px"" id=""shp"" name=""TXTSHP"" >",!
  W A,!
 W "</textarea>",!
 W "<p></p>",!
 W "</div>",!
 ;
 D ^W4SBMBCK("SubmitShp()")
 Q
 ;
 ;
PREPSHP(SHP) ;
 N %PR,%MAC1,%MAC2,%ORD,FLAG,%PR,VRM
 N MAC S MAC=$$GLSHP_"("""_SHP_""")"
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 N I F I=1:1 Q:'$D(@MAC@(I))  D
 .S @VRM@(I)=$$H2U^%L1FRM($G(@MAC@(I)))
 Q
 ;
DELSHP()
 N SCR S SCR=$$GETP^%W1PRM("SCR") 
 I SCR="" Q "SCREEN NAME NOT DEFINED !"
 N SHP S SHP=SCR_"s"
 K @$$^W4GL("SHP")@(SHP)
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SCRGNP
W1SCRGNP ; [ 24.02.26 11:19 ] [ 
 N (JB,%ARG,%REM,NOM,SUG)
 S SCR=$$GETP^%W1PRM("SCR")
 ;
 I SCR="" D  Q
 .W "<p style=""align:center;font-size:"_$$^W3FSZ(14)_""">",!
 . W "SCREEN NOT DEFINED !" 
 .W "</p>",!
 ;
 W "<div align=""center"" dir=""LTR"">",!
 W " <p style=""text-align:center;color:green;font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("GENERAL G-PARAMETERS")
 W " </p>"
 W " <p></p>",!
 ;
 W "<table border=""1"" "
  W "cellspacing=""0"" cellpadding=""3"" >"
  ;
  W "<tr>"
  W " <td>"
   W "GLOBAL"
  W " </td>"
   N GLOB S GLOB=$$GLOB
  W " <td>"
   W "<input dir=""LTR"" type=""text"" size=""40"" id=""GLOB"" value="""_GLOB_"""/>"
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W "DELIMETER"
  W " </td>"
  W " <td>"
   W "<input type=""text"" dir=""LTR"" size=""1"" id=""DLM"" value="""_$$DLM_"""/>"
  W " </td>"
  W "</tr>",!
  ;
 W "</table>",!
 ;
 W "<br>",!
 W "<div id=""divbut"">",!
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,70")
   W "</td>"
  W "</tr>",! 
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 Q
 ;
 ;
GLOB(NOM)
 N GLOB S GLOB=$G(@$$GL@(SCR,"G","REF"))
 Q GLOB
 ;
DLM() 
 N DLM S DLM=$G(@$$GL@(SCR,"G","RZD"))
 Q DLM
 ;
GL() ;
 Q $$^W4GL("SCR")
 ;
 ;
SAVE(PRM) ;
 N (JB,PRM)
 S SCR=$$GETP^%W1PRM("SCR") I SCR="" Q "SCREEN NOT DEFINED !"
 ;
 D PRS^%L1FRM(PRM,"GLOB<<>>DLM","<<>>")
 I GLOB="" Q "GLOBAL NAME IS NOT DEFINED !"
 ;
 S @$$GL@(SCR,"G","REF")=GLOB
 S @$$GL@(SCR,"G","RZD")=DLM
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SCRPRM
W1SCRPRM(SUG,NOM) ; [ 04.06.26 09:56 ] [ 12.04.26 09:19 ] [ 09.03.26 03:56 ] 
 N (JB,%ARG,%REM,NOM,SUG)
 S SCR=$$GETP^%W1PRM("SCR")
 ;
 W "<div align=""center"" dir=""LTR"">",!
 I SCR="" D  Q
 .W "<p style=""align:center;font-size:"_$$^W3FSZ(14)_""">",!
 . W "SCREEN NOT DEFINED !" 
 .W "</p>",!
 ;
 I 'NOM D  Q
 .W "<p style=""align:center;font-size:"_$$^W3FSZ(14)_""">",!
 . W "FIELD NUMBER NOT DEFINED !" 
 . D PUT^%W1PRM("SCRFLDNOM",NOM)
 .W "</p>",!
 ;
 W " <p style=""text-align:center;color:green;font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT(SUG_"-PARAMETER NUMBER")_" : "_NOM
 W " </p>"
 W " <p></p>",!
 ;
 W "<style>input { direction:LTR }</style>",!
 ; 
 W "<table border=""1"" "
  W "cellspacing=""0"" cellpadding=""3"" >"
  ;
  I SUG="G" D HEADER
  ;
  W "<tr>"
  W " <td>"
   W "NAME"
  W " </td>"
  N NM S NM=$$NAME(NOM)
  W " <td>"
   W "<input type=""text"" id=""NAME"" value="""_NM_"""/>"
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W "TYPE"
  W " </td>"
  W " <td>"
   D TYPE(NOM)
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W "LENGTH"
  W " </td>"
  W " <td>"
   D LENGTH(NOM)
  W " </td>"
  W "</tr>",!
  ;
 W "<tr>"
 W " <td>"
  W "AFTER DOT"
 W " </td>"
 W " <td>"
  D DR(NOM)
 W " </td>"
 W "</tr>",!
 ;
  W "<tr>"
  W " <td>"
   W "OUTPUT"
  W " </td>"
  W " <td>"
   W " <input type=""checkbox"" id=""OUT"" "_$$CHOUT(NOM)_" />" 
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W "MUST"
  W " </td>"
  W " <td>"
   W " <input type=""checkbox"" id=""MUST"" "_$$CHMUST(NOM)_" />" 
  W " </td>"
  W "</tr>",!
  ;
  ;
  F I=1:1:2 D
  .W "<tr>"
  .W " <td>"
  . W "MUMPS COMMAND "_I
  .W " </td>"
  .W " <td>"
  . D COMMAND(NOM,I)
  .W " </td>"
  .W "</tr>",!
  ;
 W "</table>",!
 ;
 W "<br>",!
 W "<div id=""divbut"">",!
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_SUG_"','"_NOM_"')","color:green",",,,70")
   W "</td>"
  W "</tr>",! 
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 Q
 ;
 ;
HEADER ;
 W "<tr>"
 W " <td>"
  W "HEADER"
 W " </td>"
 W " <td>"
  S SHEM=$G(@$$GL@(SCR,SUG,NOM,"SHEM"))
  W $$H2U^%L1FRM(SHEM)
 W " </td>"
 W "</tr>",!
 Q 
 ;
 ;
NAME(NOM)
 N NM S NM=$G(@$$GL@(SCR,SUG,"NM",NOM))
 Q NM
 ;
TYPE(NOM) 
 N TYP S TYP=$G(@$$GL@(SCR,SUG,NOM,"TYP"))
 N I
 W "<select id=""TYPE"" onchange=""ChangeType()"" >",!
 F I="E","N","H","HH","D","T","B" D
 .W "<option value="""_I_""""
 .I I=TYP W " selected=""selected"" " 
 .W ">" 
 .W I
 .W "</option>",!
 W "</select>",! 
 Q
 ;
LENGTH(NOM) 
 N LN S LN=$G(@$$GL@(SCR,SUG,NOM,"LMAX"))
 N I
 W "<select id=""LN"">",!
 F I=1:1:80 D
 .W "<option value="""_I_""""
 .I I=LN W " selected=""selected"" " 
 .W ">" 
 .W I
 .W "</option>",!
 W "</select>",! 
 Q
 ;
DR(NOM) 
 N DR S DR=+$P($G(@$$GL@(SCR,SUG,NOM,"CRD")),",",5)
 N I
 W "<select id=""DR"" "
 I $G(@$$GL@(SCR,SUG,NOM,"TYP"))'="N" S DR=0 W "disabled=""disabled"" "
 W ">",!
 F I=0:1:3 D
 .W "<option value="""_I_""""
 .I I=DR W " selected=""selected"" " 
 .W ">" 
 .W I
 .W "</option>",!
 W "</select>",! 
 Q
 ;
CHOUT(NOM) 
 I $D(@$$GL@(SCR,SUG,NOM,"OUTPUT")),^("OUTPUT")="" S ^("OUTPUT")=1
 N OUT S OUT=$G(@$$GL@(SCR,SUG,NOM,"OUTPUT"))
 I OUT=1!(OUT="Y") Q "checked=""checked"" "
 Q ""
 ;
CHMUST(NOM) 
 N MUST S MUST=$G(@$$GL@(SCR,SUG,NOM,"MUST"))
 I MUST=1!(MUST="Y") Q "checked=""checked"" "
 Q ""
 ;
COMMAND(NOM,I)
 N CMD
 S CMD=$G(@$$GL@(SCR,SUG,NOM,"MUMPS"_I))
 W "<textarea dir=""LTR"" id=""CMD"_I_""" cols=""50"" rows=""3"" >",!
  W CMD
 W "</textarea>",!
 W "<button onclick=""ShowProgramm('CMD"_I_"')"">Show Programm</button>",!
 Q
 ;
GL() ;
 Q $$^W4GL("SCR")
 ;
 ;
SAVE(PRM) ;
 N (JB,PRM)
 S SCR=$$GETP^%W1PRM("SCR") I SCR="" Q "SCREEN NOT DEFINED !"
 ;
 D PRS^%L1FRM(PRM,"SUG<<>>NOM<<>>NAME<<>>TYP<<>>LN<<>>DR<<>>OUT<<>>MUST<<>>CMD1<<>>CMD2","<<>>")
 I SUG="" Q "PARAMETER KIND IS NOT DEFINED !"
 I NOM="" Q "FIELD NUMBER IS NOT DEFINED !"
 I NAME="" Q "FIELD NAME IS NOT DEFINED !"
 ;
 S @$$GL@(SCR,SUG,"NM",NOM)=NAME
 S @$$GL@(SCR,SUG,"NAME",NAME)=NOM
 S @$$GL@(SCR,SUG,NOM,"TYP")=TYP
 S @$$GL@(SCR,SUG,NOM,"LMAX")=LN
 S @$$GL@(SCR,SUG,NOM,"OUTPUT")=OUT
 I OUT=1!(OUT="Y") S MUST=""
 S @$$GL@(SCR,SUG,NOM,"MUST")=MUST
 S @$$GL@(SCR,SUG,NOM,"MUMPS1")=CMD1
 S @$$GL@(SCR,SUG,NOM,"MUMPS2")=CMD2
 ;
 S $P(@$$GL@(SCR,SUG,NOM,"CRD"),",",3)=TYP
 S $P(@$$GL@(SCR,SUG,NOM,"CRD"),",",4)=LN
 S $P(@$$GL@(SCR,SUG,NOM,"CRD"),",",5)=$G(DR)
 Q 1
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SCRSHP
W1SCRSHP(%SCRN,%COLS) ; SCR --> SHP [ 26.02.26 10:55 ] [ 25.04.13 12:28 ] [ 001/19/00  3:12 PM ]
 N A,%ST,%I,%I1,%SHP,%FLDR,SMB1,SMB2,%ENGLISH
 S %SHP=%SCRN_"s"
 N %GLSCR S %GLSCR=$$^W4GL("SCR")
 N %GLSHP S %GLSHP=$$^W4GL("SHP")
 K @%GLSHP@(%SHP) S %FLDLR=0,%I1=0
 S A=$G(@%GLSCR@(%SCRN))
 S %ENGLISH=(A="E")
 ;
 F %I=1:1 Q:'$D(@%GLSCR@(%SCRN,%I))  D
 .S %ST=@%GLSCR@(%SCRN,%I)
 .I %ST["$" S %FLDLR='%FLDLR S (SMB1,SMB2)="$" D FIG Q
 .I %ST[":" I %FLDLR S SMB1=":" S %JJJ1=0 D:$G(@%GLSCR@(%SCRN,%I+1))[":" WW D:$G(@%GLSCR@(%SCRN,%I+1))'[":" KOT D  D:$G(@%GLSCR@(%SCRN,%I+1))'[":" FP Q
 ..I @%GLSCR@(%SCRN,%I+1)["\" S %I=%I+1 S %ST=^(%I) S SMB1="\" D KOT Q
 .I %ST'["{",%ST'["}",%ST'["[",%ST'["]" D W Q
 .S SMB1="{",SMB2="}" D FIG1
 .S SMB1="[",SMB2="]" D FIG
 .D W
 .Q
 Q
 ;
 ;
W S %I1=%I1+1 S @%GLSHP@(%SHP,%I1)=%ST
 Q
 ;
WW N %STO S %STO=%ST
 S %STK=":"_$P(%ST,":",2,$L(%ST,":")-1)_":"
 S (KAV,%ST)=$J("",$L($P(%STO,":")))_$TR($J("",$L(%STK))," ","-") D W
 S %ST=$TR(%STO,":","|") D W
 Q
 ;
FIG N P1,P2,P3
 F  S P1=$F(%ST,SMB1) S:'P1 P1=1000 S P2=$F(%ST,SMB2) S:'P2 P2=1000 Q:P1+P2=2000  D
 .I P1<P2 S $E(%ST,P1-1,P1+1)="   " Q
 .S $E(%ST,P2-3,P2-1)="   "
 Q
 ;
FIG1 N P1,P2,%SMBN1,%SMBN2
 S P1=0,P2=0
 F  S P1=$F(%ST,SMB1,P1) S:'P1 P1=1000 S P2=$F(%ST,SMB2,P2) S:'P2 P2=1000 Q:P1+P2=2000  D
 .S %SMBN1=$E(%ST,P1,P1+1) S %SMBN2=$TR($E(%ST,P2-3,P2-2)," ",0)
 .I P1<P2 D  Q
 ..I P2=1000,$D(@%GLSCR@(%SCRN,"P",+%SMBN1,"CRD")) S $E(%ST,P1-1)="&" N P10 S P10=$P(@%GLSCR@(%SCRN,"P",+%SMBN1,"CRD"),",",4) S:P1-2+P10>(P1+2) $E(%ST,P1-2+P10)=">" Q
 ..I %SMBN1 S $E(%ST,P1-1)="&",$E(%ST,P2-1)=">" Q
 ..I %SMBN2 S $E(%ST,P2-3,P2-1)="  >",$E(%ST,P1-1,P1+$L(%SMBN2)-1)="&"_%SMBN2 Q
 .I %SMBN2 S $E(%ST,P2-3,P2-1)=">"
 .I %SMBN2 S P3=P2-$P(@%GLSCR@(%SCRN,"P",+%SMBN2,"CRD"),",",4)-1 S $E(%ST,P3,P3+$L(%SMBN2)-1)="&"_%SMBN2
 Q
 ;
KOT ;
 S %ST=$TR(%ST,"\",":")
 S %STO=%ST
 S %STK=":"_$P(%ST,":",2,$L(%ST,":")-1)_":"
 I SMB1=":",$G(@%GLSCR@(%SCRN,%I-1))'[":" S (KAV,%ST)=$J("",$L($P(%STO,":")))_$TR($J("",$L(%STK))," ","-") D W
 I SMB1=":" S %ST=%STO,%KG=$L(%ST,":"),%ST=$TR(%ST,":","|") D W I @%GLSCR@(%SCRN,%I+1)["\" S %ST=$TR(^(%I+1),"\","|") D W
 I SMB1=":" S %ST=KAV D W
 S %STB=$P(%STO,":")_$S(SMB1="\":" ",1:"$")
 S %ST=""
 I '%ENGLISH F %JJJ=$L(%STK,":")-1:-1:2 D CRD
 I %ENGLISH F %JJJ=2:1:$L(%STK,":")-1 D CRD
 I $E(%ST)=":" S %ST=$E(%ST,2,255)
 I $E(%ST,$L(%ST))'=":" S %ST=%ST_":"
 S %ST=%STB_%ST_$S(SMB1="\":2,1:"1")
 D W
 Q
 ;
FP S %ST=""
 F %JJJ=1:1:%COLS-2 D W
 S %ST=$J("",$L($P(%STO,":")))_$J("",$L(%STK)) S $E(%ST,$L(%ST)-1)="$" D W
 S %ST=$G(KAV) D W
 Q
 ;
CRD ;
 S %JJJ1=%JJJ1+1 S CRD=@%GLSCR@(%SCRN,"G",%JJJ1,"CRD"),LMAX=@%GLSCR@(%SCRN,"G",%JJJ1,"LMAX")
 I $P(CRD,",",3)="H"!($P(CRD,",",3)="E") S %ST=$$ST($TR($J("",LMAX)," ","T"),%ST) Q
 I $P(CRD,",",5)>0 S %ST=$$ST($J($TR($J("",$P(CRD,",",4)-$P(CRD,",",5)-1)," ",9)_"."_$TR($J("",$P(CRD,",",5))," ",9),LMAX),%ST) Q
 S %ST=$$ST($J($TR($J("",$P(CRD,",",4))," ",9),LMAX),%ST) Q
 Q
 ;
ST(ST2,ST1) I %ENGLISH Q ST1_":"_ST2
 Q ST2_":"_ST1
 
 
 
 
 
 

W1SETMS
W1SETMS ; [ 27.07.26 10:48 ] [ 
 K ^NAME1
 M ^NAME1=^NAME
 F I=1,2 D
 .S $P(^LEVKVZ(I,1),"\",9)=8
 .S $P(^LEVKVZ(I,1),"\",10)=10
 .S $P(^LEVKVZ(I,1),"\",12)=20
 ;
 S N="" F  S N=$O(^NAME(N)) Q:N=""  D
 .I N?5N,$P($G(^NAME(N)),"\",2)<2 S $P(^NAME(N),"\",2)=2
 Q
 
 
 
 

W1SHELL
W1SHELL ; [ 18.01.26 08:55 ] [ 11.01.26 08:32 ] [ 05.01.24 12:55 ] 
 N (JB,%ARG,%REM)
 S RZ=100
 W "<div dir=""LTR"" align=""center"">",!
  W "<table>",!
   W "<tr>",!
   W " <td width=""20%"" align=""left"">"
    W "Session "_JB_" [ "_$$^W4MYDVN_" ]",!
    W $$NBSP^%L1FRM(3)
     W "<span id=""curtime"" style=""font-size:"_$$^W3FSZ(12)_";color:brown;font-weight:bold"">"_$ZD($H,"24:60")_"</span>"
   W " </td>"
   W "<td>&nbsp;</td>" 
   W "<td>"
    D ^W4BCK
   W "</td>"
   W "</tr>"
  W "</table>",!
  ;
  W "<br>",!
  ;
  S WD=60
  N LENSZ S LENSZ=120
  I $$1024^W4WDSCR S LENSZ=90
  I $$^W4TABLET=2 S LENSZ=40
  ;
  ;;S VL1="mumps -r ^%L3RI 'PROG.R'" 
  ;;S VL2="mumps -r ^%L3GI 'GLOB.G'" 
  ;;S VL3="unzip /home/gtmuser/ZIP -d /home/gtmuser/jsp/"
  ;;S VL4="find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null" 
  ;;S VL5="find . -type f | wc -l" 
  ;
  W "<table width=""98%"">",!
   S K=0
   F I=1:2:RZ D
   .S K=K+1
   .W "<tr>"
   . S NN=I\2+1 
   . W " <td width=""5"">"_NN_"</td>"
   . W "<td width="""_WD_"%""><input style=""color:blue"" id=""cmd"_NN_""" size="""_LENSZ_""" value="""_$G(@("VL"_K))_"""></td>"
   . W "<td width=""5%""><input type=""button"" value=""Do"" onClick=""Cmd('"_NN_"','"_I_"')"" ></td>"
   . W "<td><input type=""button"" value=""Clear"" onClick=""Clear('"_NN_"','"_I_"')"" ></td>"
   .W "</tr>",!
   .W "<tr>"
   .W "<td>&nbsp;</td>"
   . W "<td id=""ou"_NN_""">&nbsp;</td>"
   .W "</tr>",!
  W "</table>",!
 W "</div>",! 
 Q
 ;
CMD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D TMP K @TMP
 S NN=$P(PRM,";")
 S PRM=$P(PRM,";",2,255)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^W1SHELL"
 D FL(NN)
 I $$EXIST^%L1ZOS(FL) ZSY "rm "_FL
 C FL:(DELETE)
 S CMD=$P(PRM," ")
 I CMD="cd"!(CMD="vi")!(CMD="top") Q "COMMAND IS NOT AVAILABLE FROM THIS PROGRAMM !"
 ;
 ZSY PRM_" >> "_FL
 D FL(NN)
 I '$$EXIST^%L1ZOS(FL) Q "&nbsp;"
 O FL:(REWIND:READONLY)
 S OU=""
 F II=1:1:1000 U FL R A Q:$ZEOF  S @TMP@(II)=A
 C FL
 S:OU="" OU="&nbsp;"
 Q "$ZSY="_$ZSY_";"_II
 ;
FL(NN) ;
 S FL="/tmp/w1shell"_JB_"."_NN
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
OU(II)
 N (JB,%ARG,%REM,II)
 D TMP 
 S OU=$$RPL^%L1FRM($G(@TMP@(II)),"<","[OP]")
 S OU=$$RPL^%L1FRM(OU,">","[CL]")
 S O1=""
 F J=1:1:$L(OU) D
 .I $A(OU,J)<32!($A(OU,J)>126) Q
 .S O1=O1_$E(OU,J)
 Q O1
 ;
ER() ;
 Q "ERROR "_$ZS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SRCH
W1SRCH(SRCH,PAR,NM,PR) ; [ 22.06.23 11:03 ] [ 31.08.21 08:23 ] [ 06.03.17 13:57 ] 
 N (JB,%ARG,SRCH,PAR,NM,PR)
 I '$L($G(SRCH)) Q 1
 N SRCOK S SRCOK=0
 I $$ISCODE^%L1FRM(SRCH),PAR=SRCH S SRCOK=1 G ES
 ;
 S NML=""
 I $G(NM)="" D
 .I $G(PR)="ML" S NM=$$MLNAME^W4MLPRT(PAR) Q
 .S NM=$$SHEM^W4P(PAR)
 .S NML=$$SHEML^W4P(PAR)
 ;
 ;;D PUT^%W3DEB("W1SRCH","NM=NM & SRCH=SRCH")
 N OK S OK=$$SRCH(NM,SRCH)
 I 'OK,NML'="" S OK=$$SRCH(NML,SRCH)
 Q OK
 ;
 ;
SRCH(NM,SRCH,PR) ;
 S NM=$TR(NM,"-,;."," ")
 S SRCH=$TR(SRCH,"-,;."," ")
 I SRCH?1"="1N.N S SRCH=$E(SRCH,2,$L(SRCH))
 I $E(SRCH,1,$L(SRCH)-1)?1N.N,$E(SRCH,$L(SRCH))="=" S SRCH=$E(SRCH,1,$L(SRCH)-1)
 ;
 I $$^%W1DIR="RTL",'$G(PR) S NM=$$INVH^%L1FRM(NM) ;;,SRCH=$$INVH^%L1FRM(SRCH)
 I $$^%W1DIR="LTR" S NM=$$FUNC^%UCASE(NM),SRCH=$$FUNC^%UCASE(SRCH)
 N SRCOK
 I $E(NM,1,$L(SRCH))=SRCH S SRCOK=1 G ES
 I (" "_NM_" ")[(" "_SRCH_" ") S SRCOK=1 G ES
 ;
 N J,OK,MF S OK=1
 I SRCH?1N.N S NM=NM_" "
 ;
 F J=1:1:$L(SRCH," ") D  Q:'OK
 .S SRCJ=$P(SRCH," ",J)
 .I SRCH?1N.N S SRCJ=SRCJ_" "
 .N FND,FND1 S FND=$F(" "_NM," "_SRCJ) I FND<1 S OK=0 Q
 .S FND1=FND-$L($P(SRCH," ",J))
 .I $D(MF(FND1)) S FND=$F(" "_NM," "_SRCJ,MF(FND1)) I FND<1 S OK=0 Q
 .S MF(FND1)=FND
 D PUT^%W3DEB("W1SRCH","MF=[MF")
 S SRCOK=OK
ES Q SRCOK
 
 
 
 
 
 
 

W1SUM
W1SUM ; [ 29.03.26 02:13 ] [ 28.03.26 16:46 ] [ 
 N (JB)
 S $ZGBLDIR="/home/gtmuser/app/mumps/mumps.gld"
 S $ZDIR="/home/gtmuser/app/mumps/"
 ;
 I '$G(JB) S JB=$$^%W1SsID("W1SUM")
 S A=$ZCMD
 S MEDAT=$P(A," ")
 S ADDAT=$P(A," ",2)
 ;
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 D SUM^W4HSVDT(MEDT,ADDT,1)
 Q
 
 
 
 
 
 
 

W1SVGL
W1SVGL(ST,ER) ; [ 05.01.26 04:05 ] [ 22.10.25 15:05 ] [ 
 N FILE,TX,I
 ;;S ^AA("W1SVGL-ST")=ST; ***
 S GLOB=$P(ST,"<<>>")
 S GLOB=$$RPL^%L1FRM(GLOB,"0g","")
 S TX=$P(ST,"<<>>",2,2000)
 D
 .I GLOB["(" S GLOB0=$P(GLOB,"(")_"0g"_"("_$P(GLOB,"(",2,20) Q
 .S GLOB0=GLOB_"0g"
 ;
 K @GLOB0
 ;
 S I=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^W1SVGL"
SAVECYC
 S I=I+1
 I I>$L(TX,"$10$") G SAVEND
 S T=$P(TX,"$10$",I)
 S T=$TR(T,$C(13,10,27,8,9),"")
 S T=$$CNWEB^%L1FRM(T)
 S IND=""
 I T="" G SAVECYC
 D
 .I T[")=" S IND=$P(T,")=")_")" Q
 .I T["=" S IND=$P(T,"=")
 ;
 D
 .I IND["(" S IND=$P(IND,"(")_"0g"_"("_$P(IND,"(",2,20) Q
 .S IND=IND_"0g"
 ;
 D
 .I T[")=" S CONT=$P(T,")=",2,200) Q
 .S CONT=$P(T,"=",2,200)
 ;
 I $E(IND)="^",$L(IND)>1 S @IND=CONT
 G SAVECYC
 ; 
SAVEND ;
 S $ZT=""
 D
 .I $E(GLOB)'="^" S GLOB="^"_GLOB
 .I $E(GLOB0)'="^" S GLOB0="^"_GLOB0
 .K @GLOB
 .N GL S GL=$P(GLOB,"(")
 .N N S N=$P(GLOB0,"(")_"("""")"
 .F  S N=$Q(@N) Q:N=""  D
 ..N IND S IND=$P(N,"(",2,200)
 ..S @(GL_"("_IND)=$G(@N) 
 .K @GLOB0
 ;
END Q
 ;
 ;
ER ;
 W $ZS_"~"_$$GETP^%W1PRM("GLOB")_"~"_I_"~IND="_$G(IND)_"~CONT="_$G(CONT)_"~"_$H,!
 S @$$^W4MAIN("W1G")@(+$G(I))=$ZS_"~"_$G(I)_"~IND="_$G(IND)_"~CONT="_$G(CONT)
 G SAVECYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SVJSP
W1SVJSP(ST,ER) ; [ 17.06.26 10:50 ] [ 22.10.25 10:46 ] [ 20.10.25 16:46 ] 
 N (ST,ER)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S PROG=$P(ST,"<<>>")
 S TX=$P(ST,"<<>>",2,2000)
 ;
 S FILE=PROG
 ;;S ^AA("W1SVJSP","FILE")=FILE
 ;
 D RED1(FILE); --> S000($P) - OLD VERSION
 ;
 O FILE:(WRITE:NEWVERSION:REWIND)
 U FILE
 F I=1:1:$L(TX,"$10$") D
 .S T=$P(TX,"$10$",I)
 .S T=$TR(T,$C(13,10,27,8,9),"")
 .S T=$$CNWEB^%L1FRM(T)
 .W T,!
 .S ^S222($J,I)=T
 ;
 C FILE
 ;
 D SVCHN(FILE)
 Q
 ;
 ;
SVCHN(%PR) ;
 ;
 N DIR,%PROG,DIR,%L1DIR
 ;
 S %PROG=%PR
 I %PR["/" S %PROG=$P(%PR,"/",$L(%PR,"/"))
 S %PROG=$P(%PROG,".")_".jsp"
 S %L1DIR=$$DIR^%L1ED(%PR)
 K ^UTILITY($J),^TMPS111($J)
 M ^UTILITY($J,1,"[ NEW ]")=^S222($J)
 M ^UTILITY($J,2,"[ OLD ]")=^S000($P)
 S ^UTILITY($J,1)="[ NEW ]"
 S ^UTILITY($J,2)="[ OLD ]" D ^%L2RCMP
 S DIR=$ZGBLDIR I %L1DIR="/usr/local/mumps/" S DIR="/usr/local/mumps/mumps.gld"
 M ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=^TMPS111($J)
 S ^[DIR]%ERGS(+$H,%PROG)=$$^%L1ZU(0)
 ;K ^S000($P),^S222($J),^TMPS111($J)
 Q
 ;
 ;
RED1(%PR) ;
 K ^S000($P)
 I '$$EXIST^%L1ZOS(%PR) Q
 S $ZT="g RNOOPEN"
 S %L1DIR=$$PATHJSP^%L1WEBJS
 I $L(%L1DIR),%PR'["/" D
 .I $E(%L1DIR,$L(%L1DIR))'="/" S %L1DIR=%L1DIR_"/"
 .S %PR=%L1DIR_%PR
 c %PR
 o %PR:(readonly:record=2048:rewind)
 S $ZT="g REOF"
 N I,X S I=0
 f  u %PR r X S I=I+1,^S000($P,I)=$TR(X,$C(9)," ")
REOF ;
 c %PR Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SVPROG
W1SVPROG(ST,ER) ; [ 17.06.26 10:50 ] [ 29.04.26 14:44 ] [ 22.10.25 11:04 ] 
 N (ST,ER)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S PROG=$P(ST,"<<>>")
 S TX=$P(ST,"<<>>",2,2000)
 ;
 S FILE=PROG
 ;;S ^AA("W1SVPROG","FILE")=FILE
 ;
 D RED1(FILE); --> S000($P) - OLD VERSION
 ;
 O FILE:(WRITE:NEWVERSION:REWIND)
 U FILE
 F I=1:1:$L(TX,"$10$") D
 .S T=$P(TX,"$10$",I)
 .S T=$$RPL^%L1FRM(T,"$26$","&")
 .I I=1 S T=$$CHNDAT(T)
 .S T=$TR(T,$C(13,10,27,8,9),"")
 .S T=$$CNWEB^%L1FRM(T)
 .W T,!
 .S ^S222($J,I)=T
 ;
 C FILE
 ;
 D SVCHN(FILE)
 Q
 ;
 ;
CHNDAT(T) ;
 N NOW S NOW=$ZD($H,"DD.MM.YY 24:60")
 N NEWDAT S NEWDAT="[ "_NOW_" ]"
 N FIRSTOLD S FIRSTOLD=$$SPA^%L1FRM($P($P(T,"[",2),"]"))
 N T1
 I $P(FIRSTOLD," ")=$P(NOW," ") S T1=$P(T,"[")_" "_NEWDAT_$S(T["[":"["_$P(T,"[",3,5),1:"")
 E  S T1=$P(T,"[")_NEWDAT_$S(T["[":"["_$P(T,"[",2,5),1:"")
 Q T1
 ;
 ;
SVCHN(%PR) ;
 ;
 N DIR,%PROG,DIR,%L1DIR
 ;
 S %PROG=%PR
 I %PR["/" S %PROG=$P(%PR,"/",$L(%PR,"/"))
 S %PROG=$P(%PROG,".")
 S %PROG=$TR(%PROG,"_","%")
 S %L1DIR=$$DIR^%L1ED(%PR)
 K ^UTILITY($J),^TMPS111($J)
 M ^UTILITY($J,1,"[ NEW ]")=^S222($J)
 M ^UTILITY($J,2,"[ OLD ]")=^S000($P)
 S ^UTILITY($J,1)="[ NEW ]"
 S ^UTILITY($J,2)="[ OLD ]" D ^%L2RCMP
 S DIR=$ZGBLDIR I %L1DIR="/usr/local/mumps/" S DIR="/usr/local/mumps/mumps.gld"
 M ^[DIR]%ERGS(+$H,%PROG,$P($H,",",2))=^TMPS111($J)
 S ^[DIR]%ERGS(+$H,%PROG)=$$^%L1ZU(0)
 S ^[DIR]%ERGS(+$H,%PROG)=$ZROU
 K ^S000($P),^S222($J),^TMPS111($J)
 Q
 ;
 ;
RED1(%PR) ;
 K ^S000($P)
 I '$$EXIST^%L1ZOS(%PR) Q
 S $ZT="g RNOOPEN"
 S %L1DIR=$$DIR^%L1ED(%PR)
 I $L(%L1DIR),%PR'["/" D
 .I $E(%L1DIR,$L(%L1DIR))'="/" S %L1DIR=%L1DIR_"/"
 .S %PR=%L1DIR_%PR
 c %PR
 o %PR:(readonly:record=2048:rewind)
 S $ZT="g REOF"
 N I,X S I=0
 f  u %PR r X S I=I+1,^S000($P,I)=$TR(X,$C(9)," ")
REOF ;
 c %PR Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SVSCR
W1SVSCR(ST,ER) ; [ 04.06.26 06:33 ] [ 02.02.26 16:20 ] [ 05.01.26 04:05 ] 
 N FILE,TX,I
 ;;S ^AA("W1SVSCR","GBLDIR")=$ZGBLDIR
 ;;S ^AA("W1SVSCR-ST")=ST; ***
 ;;S ^AA("W1SVSCR","MAIN")=$$^W3MAIN
 S SCR=$P(ST,"<<>>")
 S TX=$P(ST,"<<>>",2,2000)
 ;
 I '$G(JB) S JB=$$^%W1SsID("W1SVSCR")
 ;
 S I=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^W1SVSCR"
SAVECYC
 S I=I+1
 I I>$L(TX,"$10$") G SAVEND
 S T=$P(TX,"$10$",I)
 S T=$TR(T,$C(13,10,27,8,9),"")
 S T=$$CNWEB^%L1FRM(T)
 S IND=$$^W4GL("SCR")_"("""_SCR_""","_I_")"
 ;;S ^AA("W1SVSCR","GBLDIR",I)=$ZGBLDIR
 ;;S ^AA("W1SVSCR","IND",I)=IND
 ;;S ^AA("W1SVSCR","JB",I)=JB
 ;;S ^AA("W1SVSCR","UCI",I)=$$^%W1UCI(JB)
 I T="" G SAVECYC
 S CONT=$$INVH^%L1FRM(T)
 S @IND=CONT
 G SAVECYC
 ; 
SAVEND ;
 S %SCRN0=SCR
 D SV^%L1SF(SCR)
END Q
 ;
 ;
ER ;
 W $ZS_"~"_$$GETP^%W1PRM("SCR")_"~"_I_"~IND="_$G(IND)_"~CONT="_$G(CONT)_"~"_$H,!
 S @$$^W4MAIN("W1SCR")@(+$G(I))=$ZS_"~"_$G(I)_"~IND="_$G(IND)_"~CONT="_$G(CONT)
 G SAVECYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1SVSHP
W1SVSHP(ST,ER) ; [ 26.02.26 09:56 ] [ 02.02.26 16:20 ] [ 05.01.26 04:05 ] 
 N FILE,TX,I
 ;;S ^AA("W1SVSHP-ST")=ST; ***
 S SHP=$P(ST,"<<>>")
 S TX=$P(ST,"<<>>",2,2000)
 ;
 S I=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^W1SVSHP"
SAVECYC
 S I=I+1
 I I>$L(TX,"$10$") G SAVEND
 S T=$P(TX,"$10$",I)
 S T=$TR(T,$C(13,10,27,8,9),"")
 S T=$$CNWEB^%L1FRM(T)
 S IND=$$^W4GL("SHP")_"("""_SHP_""","_I_")"
 I T="" G SAVECYC
 S CONT=$$INVH^%L1FRM(T)
 S @IND=CONT
 G SAVECYC
 ; 
SAVEND ;
END Q
 ;
 ;
ER ;
 W $ZS_"~"_SHP_"~"_I_"~IND="_$G(IND)_"~CONT="_$G(CONT)_"~"_$H,!
 S @$$^W4MAIN("W1SHP")@(+$G(I))=$ZS_"~"_$G(I)_"~IND="_$G(IND)_"~CONT="_$G(CONT)
 G SAVECYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1T
W1T ; [ 17.06.26 10:50 ] [ 02.12.25 11:57 ] [ 01.12.25 19:29 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
 D ^%W1HD("!TABLE GENERATOR")
 S GLNM=$G(%ARG("GLNM"))
 W "<p></p>",!
 W "<p>"
  W $$H2U^%L1FRM("MUMPS uaew")_$$NBSP^%L1FRM(2)
   W "<input type=""text"" id=""glob"" size=""8"" value="""_GLNM_""" onKeyUp=""EnglishOnly(event,'glob')"" />"
   W $$NBSP^%L1FRM(2)
   W "<button onClick=""Edit()"" >"_$$^%W1DICT("SHOW")_"</button>",!
   W $$NBSP^%L1FRM(2)
   W "<button onClick=""Back2Ut()"" style=""color:red"" >"_$$^%W1DICT("BACK")_"</button>",!
   W $$NBSP^%L1FRM(5)
   W $$H2U^%L1FRM("dlah my")_$$NBSP^%L1FRM(2)
   W "<input type=""text"" id=""tbname"" size=""50"" value="""_$$CLRKV($$NAME(GLNM))_"""/>"
 W "</p>",!
 
 W "<table>",!
  W "<tr>",!
   W "<td>"_$$H2U^%L1FRM("gztn `hli`y")_$$NBSP^%L1FRM(2)
    W "<input type=""text"" id=""key"" size=""30"" value="""_$$CLRKV($$KEY(GLNM))_"""/>"
   W "</td>"
   ;
   W "<td>"_$$H2U^%L1FRM("gztn jxe`")_$$NBSP^%L1FRM(2)
    W "<input type=""text"" id=""keyln"" size=""2"" onFocus=""this.select()"" value="""_$$KEYLN(GLNM)_"""/>"
   W "</td>"
   ;
   W "<td>"_$$H2U^%L1FRM("beq")_$$NBSP^%L1FRM(2)
    W "<select id=""keysug"">",!
     W "<option "_$$KEYSUG(GLNM,"E")_">E</option>",!
     W "<option "_$$KEYSUG(GLNM,"H")_">H</option>",!
     W "<option "_$$KEYSUG(GLNM,"D")_">D</option>",!
     W "<option "_$$KEYSUG(GLNM,"T")_">T</option>",!
    W "</select>",!
   W "</td>"
 W "</tr>",!
 ;
  W "<tr>",!
   W "<td>"_$$H2U^%L1FRM("oezpl dzli`y")_$$NBSP^%L1FRM(2)
    W "<input type=""text"" id=""data"" size=""30"" value="""_$$CLRKV($$DATA(GLNM))_"""/>"
   W "</td>"
   ;
   W "<td>"_$$H2U^%L1FRM("oezp jxe`")_$$NBSP^%L1FRM(2)
    W "<input type=""text"" id=""dataln"" onFocus=""this.select()"" size=""2"" value="""_$$DATALN(GLNM)_"""/>"
   W "</td>"
   ;
   W "<td>"_$$H2U^%L1FRM("beq")_$$NBSP^%L1FRM(2)
    W "<select id=""datasug"">",!
     W "<option "_$$DATASUG(GLNM,"E")_">E</option>",!
     W "<option "_$$DATASUG(GLNM,"H")_">H</option>",!
     W "<option "_$$DATASUG(GLNM,"D")_">D</option>",!
     W "<option "_$$DATASUG(GLNM,"T")_">T</option>",!
    W "</select>",!
   W "</td>"
 W "</tr>",!
 W "</table>",! 
 ;
 I GLNM'="" D
 .W "<table id=""TbDop"" width=""80%"" >",!
 .W "<tr>"
 . W "<th>"_$$H2U^%L1FRM("sqep oezp my")_"</th>"
 . W "<th>"_$$H2U^%L1FRM("jxe`")_"</th>"
 . W "<th>"_$$H2U^%L1FRM("beq")_"</th>"
 . W "<th>"_$$H2U^%L1FRM("laelb")_"</th>"
 . W "<th>"_$$H2U^%L1FRM("daeg dcy")_"</th>"
 . W "<th>"_$$H2U^%L1FRM("lcgn zxixa")_"</th>"
 .W "</tr>",!
 .
 .S RZD=$G(@$$GL(GLNM)@("RZD")) I RZD="" S RZD="\"
 . F N=1:1:15 D 
 ..N A S A=$G(^(N))
 ..W "<tr>"
 ..N VL S VL=$$H2U^%L1FRM($P(A,RZD,1))
 .. W "<td>"
 ..  W "<input type=""text"" id=""name"_N_""" size=30 value="""_$$CLRKV(VL)_"""/>"
 .. W "</td>",!  
 ..
 .. S VL=$P(A,RZD,2)
 .. W "<td>"
 ..  W "<input type=""text"" id=""ln"_N_""" size=2 onFocus=""this.select()"" value="""_VL_"""/>"
 .. W "</td>",!  
 ..
 .. W "<td>"
 ..  W "<select id=""sug"_N_""">",!
 ..    W "<option "_$$DOPSUG(GLNM,"E",N)_">E</option>",!
 ..    W "<option "_$$DOPSUG(GLNM,"H",N)_">H</option>",!
 ..    W "<option "_$$DOPSUG(GLNM,"D",N)_">D</option>",!
 ..    W "<option "_$$DOPSUG(GLNM,"T",N)_">T</option>",!
 ..  W "</select>",! 
 .. W "</td>",!  
 ..
 .. S VL=$P(A,RZD,4)
 .. W "<td>"
 ..  W "<input type=""text"" dir=""LTR"" id=""glob"_N_""" size=9 value="""_VL_"""/>"
 .. W "</td>",!  
 ..
 .. S VL=$P(A,RZD,5)
 .. W "<td>"
 ..  W "<input type=""checkbox"" id=""must"_N_""" "_$S(VL="Y"!(VL=1):" checked=""checked"" ",1:"")_" />"
 .. W "</td>",!  
 ..
 .. S VL=$P(A,RZD,6)
 .. W "<td>"
 ..  W "<input type=""text"" id=""dflt"_N_""" size=8 value="""_VL_"""/>"
 .. W "</td>",!  
 ..
 ..W "</tr>",!
 .W "</table>",! 
 .
 .W "<p>&nbsp;</p>",!
 .D ^W4SBMBCK
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,%REM,PRM)
 ;;S ^AA("W1T-SAVE","PRM")=PRM
 S PRMDOP=$P(PRM,"<>",2,200)
 S PRM=$P(PRM,"<>")
 S GLNM=$P(PRM,"~") I GLNM="" Q "!GLOBAL NOT DEFINED;glob"
 S TBNM=$$CNWEB^%L1FRM($P(PRM,"~",2)) I TBNM="" Q "TABLE NAME NOT DEFINED;tbname"
 S KEY=$$CNWEB^%L1FRM($P(PRM,"~",3)) I KEY="" Q "KEY NAME NOT DEFINED;key"
 S KEYLN=$P(PRM,"~",4) I 'KEYLN Q "MAX KEY LENGTH NOT DEFINED;keyln"
 S KEYSUG=$P(PRM,"~",5)
 S DATA=$$CNWEB^%L1FRM($P(PRM,"~",6)) I DATA="" Q "NAME OF MAIN FIELD NOT DEFINED;data"
 S DATALN=$P(PRM,"~",7) I DATALN="" Q "MAX LENGTH OF MAIN FIELD NOT DEFINED;dataln"
 S DATASUG=$P(PRM,"~",8)
 S RZD=$P(PRM,"~",9) I RZD="" S RZD="\"
 ;
 N GL S GL=$$GL(GLNM)
 S @GL=$$HB(TBNM)_RZD_$$HB(KEY)_RZD_KEYLN_RZD_$$HB(DATA)_RZD_DATALN_RZD_RZD_KEYSUG_RZD_DATASUG
 S @GL@("RZD")=RZD
 ;
 S ER=""
 F I=1:1:$L(PRMDOP,"<>") D  Q:$L(ER)
 .S DP=$P(PRMDOP,"<>",I)
 .S NM=$$HB($$CNWEB^%L1FRM($P(DP,"~",1)))
 .S DL=$P(DP,"~",2)
 .S SUG=$P(DP,"~",3)
 .S GLOB=$P(DP,"~",4)
 .I (DL!(GLOB'=""))&(NM="") S ER="NAME FIELD NOT DEFINED;name"_I Q
 .I NM'=""&'DL S ER="LENGTH FIELD NOT DEFINED;ln"_I Q
 .I NM="" Q
 .S MUST=$P(DP,"~",5) S MUST=$S(MUST=1!(MUST="Y"):"Y",1:"N")
 .S DFLT=$P(DP,"~",6)
 .S ST=NM_RZD_DL_RZD_SUG_RZD_GLOB_RZD_MUST_RZD_DFLT
 .S @GL@(I)=ST
 ;
 I ER'="" Q ER
 Q 1
 ;
 ;
NAME(GLNM) ;
 I $G(GLNM)="" Q ""
 Q $$H2U^%L1FRM($P($G(@$$GL(GLNM)),"\"))
 ;
KEY(GLNM) ;
 I $G(GLNM)="" Q ""
 Q $$H2U^%L1FRM($P($G(@$$GL(GLNM)),"\",2))
 ;
KEYLN(GLNM) ;
 I $G(GLNM)="" Q ""
 Q $P($G(@$$GL(GLNM)),"\",3)
 ;
DATA(GLNM) ;
 I $G(GLNM)="" Q ""
 Q $$H2U^%L1FRM($P($G(@$$GL(GLNM)),"\",4))
 ;
DATALN(GLNM) ;
 I $G(GLNM)="" Q ""
 Q $P($G(@$$GL(GLNM)),"\",5)
 ;
KEYSUG(GLNM,IND) ;
 I $G(GLNM)="" Q ""
 N VL S VL=$P($G(@$$GL(GLNM)),"\",7)
 I VL=IND Q " selected=""selected"" "
 Q ""
 ;
DATASUG(GLNM,IND) ;
 I $G(GLNM)="" Q ""
 N VL S VL=$P($G(@$$GL(GLNM)),"\",8)
 I VL=IND Q " selected=""selected"" "
 Q ""
 ;
DOPSUG(GLNM,IND,I) ;
 I $G(GLNM)="" Q ""
 N VL S VL=$P($G(@$$GL(GLNM)@(I)),"\",3)
 I VL=IND Q " selected=""selected"" "
 Q ""
 ;
GL(GLNM) ;
 Q $$^W4GL("TABLs")_"("""_GLNM_""")"
 ;
CLRKV(VL)
 Q $$RPL^%L1FRM(VL,"""","&quot;")
 ;
HB(TX) ;
 Q $$INVH^%L1FRM(TX)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1TMPL
 ; [ 20.06.22 17:23 ] [ 
<style>
img {
 width:<m:out expr='$$^W4KF(25)'/>px;
 height:<m:out expr='$$^W4KF(25)'/>px;
}
</style>
 
<m:if expr='$$^W4TABLET=2'>
<tr><td>&nbsp;</td></tr>
</m:if>
 
<m:if expr='$$^W4TABLET=2'>
 <td width="3%">&nbsp;</td>
</m:if>
 
 
<m:if expr='($$^W4TABLET=2)=0'>
</m:if>
 
 

W1TOMST
W1TOMST ; [ 16.01.26 06:44 ] [ 
 N (JB)
 S ^|$$^W3MAIN|W1TOMST=""
 S DT=+$H,SEC=$P($H,",",2)
 J LAB(DT,SEC) ;
 W "<div align=""center"" >",!
  W "<br><br>",!
  W "WAIT 20 SEC ...",!
 W "</div>",!
 Q  ;
 ;
 ;
LAB(DT,SEC) ;
 S $P(^|$$^W3MAIN|W1TOMST,"\")=DT_","_SEC
 ZSY "/home/gtmuser/app/sbin/tomstop.sh"
 S $P(^|$$^W3MAIN|W1TOMST,"\",3)=$ZSY
 H 1
 ZSY "/home/gtmuser/app/sbin/tomstart.sh"
 S $P(^|$$^W3MAIN|W1TOMST,"\",4)=$ZSY
 S $P(^|$$^W3MAIN|W1TOMST,"\",2)=$H
 D ^W4RLD
 Q
 ;
RES() ; 
 N TSTOP,TSTART
 S TSTOP=$P($G(^|$$^W3MAIN|W1TOMST),"\",3)
 S TSTART=$P($G(^|$$^W3MAIN|W1TOMST),"\",4)
 ;
 I TSTOP=0,TSTART=0 Q "SUCCESS"
 Q "NOK"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1TOT
W1TOT ;                                                    [ 18.05.22 17:03 ] [ 01.09.18 18:55 ] [ 09.05.09 18:26 ] 
 N (%ARG,%REM,JB) N $ZT
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
0 K (%L2MN,JB) D ^P1IN
 S J=0 K MM F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" zegece zezli`y "
 K ^W1PCPRM(JB)
 D WMN^%W1WEBMN(.MM,.MM1)
 Q
1 ;
 K (P1TOTI,JB,%ARG) D ^%L1C,^P1IN
 S %SCRN=$S($G(^PL("MATB")):"P1TOTMT",$G(^P1PRM("TOTNA")):"P1TOTNA",1:"P1TOT")
 S %SCVA=1 D A^%L1SC K %SCVA
P1 D CA^%L1SC S TIPPS=$$TIPPS("") D P1^%L1SCSAY("TIPPS")
 S DAT1=$TR($$^%L1DC(P1DZ,1),"/","")
 S %FNAME="DAT1",FRST=1,%FNAME("END")="DAT2" D GETF^%L1SC Q:%BS
 S DAT01=$$^%L1DC(DAT1,3),DAT02=$$^%L1DC(DAT2,3)
 D 100
 U 0 W *7,! S %S="l",%SAY="" X %XMSGN W *13 ;;S %GETIN="l" S %GET=" ? mcew aeyig ze`vez bivdl " D N^%L1GET K %GETIN G:$G(%TO)="END" P1
 K SUMMTB
 S (SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSH,TIP1,HAVT,CASHD)=0
 I %S="l" F DATT=DAT01:1:DAT02 W "." S DAT=$$^%L1DC(DATT,2) D ^P1SUM
 F DATT=DAT01:1:DAT02 S DAT=$$^%L1DC(DATT,2) D 101
 S CASHD=$$^P1SUMV(DAT01,DAT02)
 D 102
 D A^%L1SC
ZP S %GETIN="",%GET="<ESC> z`vl ,4- xeciyl oikdl ,3- xenyl ,2- zegec zqtcnl ,1- dtew zqtcnl qitcdl" D N^%L1GET G:%TO="END" 1
 I %S=1 S P1TOT=$S(DAT02'=DAT01:$$^%L1DC(DAT02,1)_" - "_$$^%L1DC(DAT01,1),1:$$^%L1DC(DAT02,1)) D ^P1PCTOT K P1TOT G 1
 I %S'=2,%S'=3,%S'=4,%S'=97 W *7 G ZP
 K %L1SCPC
 S %L1SCPC(92)=MSDAMSL
 S %L1SCPC(52)=$G(SUMB)
 I %S=3!(%S=4) D
 .N OTB S OTB=%S
 .F  S %GETHB="" S %GET=": dxrd #30" D N^%L1GET S HEARA=%S Q:$L(HEARA)
 .K %GETHB
 .N SUGM S @("SUGM="_%L1SUG)
 .I OTB=4 K %L1SCPC("SND") D  Q:'$G(%L1SCPC("SND"))
ZM ..S %GET=": fkxnl xeciyl oikdl ++13,60,HH,,R#++4,E,I++++++^MRKZ\\\\VP" D ^%L1GET Q:%S=""!(%TO="END")
 ..S %L1SCPC("SND")=%S I %L1SCPC("SND")=$$^%L1MRK S %SAY=" ! jnvrl xcyl mrh oi` " X %XMSGV(1) G ZM
 ..S %L1SCPC("SND","ARX")=$G(^SCR(%SCRN,"NAME"))_"\"_SUGM_"\"_HEARA
 .I OTB=3 K %L1("ARX") S %L1SCPC("ARX")=$G(^SCR(%SCRN,"NAME"))_"\"_SUGM_"\"_HEARA
 .S %L1SCPC("USTR")=54,USTR=3
 I %S=97 D
 .S %L1SCPC("EXCEL")="itqk g""ec"
 .;S %L1SCPC("EXCEL","NOSP1")=""
 .S %L1SCPC("EXCEL","FRM")=""
 .S %L1SCPC("EXCEL","DLM")="|"
 .S %L1SCPC("EXCEL","FF",1)="T,10"
 .S %L1SCPC("EXCEL","FF",2)="T,14"
 .S %L1SCPC("EXCEL","FF",3)="T,10"
 .S %L1SCPC("EXCEL","FF",4)="T,10"
 D ^%L1SCPC S %GET="<DONE>" D N^%L1GET G ZP
 ;
DAT2 ;
 S:DAT2?.P DAT2=DAT1 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) S %SC("ER")=1 Q
 Q
100 K M S M("MZM")="F",M("CHK")="G",M("VIZ")="V2",M("ISR")="V1",M("DNR")="V3",M("AEX")="V4",M("JCB")="V5",M("ALPHA")="V6"
 S M("CHKO")="GO",M("CHKM")="GM"
 S M("ASR")="H",M("HTK")="D",M("TL")="Z",M("HTL")="ZD"
 S M("HMZM")="FD",M("HCHK")="GD",M("HVIZ")="V2D",M("HISR")="V1D"
 S M("HDNR")="V3D"
 S M("HAEX")="V4D"
 S M("HJCB")="V5D"
 S M("HALPHA")="V6D"
 S M("HCHKM")="GDM",M("HCHKO")="GDO"
 S M("HNHS")="MIN",M("DMSHS")="DMSH"
 S M("HNHT")="MINT"
 S M("HNHCIB")="CIBHN"
 S M("HNHS2")="MIN2"
 S M("MIN3")="MIN3"
 S M("BIT")="BIT"
 S M("TIP")="T"
 S N="" F  S N=$O(M(N)) Q:N=""  K @N S @N=0
 Q
 ;----------------------------------------------------------------
101 S GLBL=$S(MRK:"^TOT(DAT,MRK)",1:"^TOT(DAT)")
1011 F EMT="MZM","CHK","CHKM","CHKO","VIZ","ISR","DNR","AEX","JCB","ALPHA","ASR","TL","DMSHS","HNHS","HNHS2","HNHT","HNHCIB","MIN3","BIT","TIP" D
 .S @EMT=$J($G(@EMT)+$G(@GLBL@(M(EMT),1)),2,2)
 .S @EMT@("S")=$J($G(@EMT@("S"))+$G(@GLBL@(M(EMT)_"S",1)),2,2)
 .S @EMT@("L")=$J($G(@EMT@("L"))+$G(@GLBL@(M(EMT)_"L",1)),2,2)
 F EMT="CHK","CHKM","CHKO","VIZ","ISR","DNR","AEX","JCB","ALPHA","ASR","TL" D
 .S @EMT@(1)=$J($G(@EMT@(1))+$G(@GLBL@(M(EMT)_"#",1)),2,2)
 .S @EMT@("S1")=$J($G(@EMT@("S1"))+$G(@GLBL@(M(EMT)_"S1",1)),2,2)
 .S @EMT@("L1")=$J($G(@EMT@("L1"))+$G(@GLBL@(M(EMT)_"L1",1)),2,2)
 F EMT="HMZM","HCHK","HVIZ","HISR","HDNR","HAEX","HJCB","HALPHA","HCHKM","HCHKO","HTL" S @EMT=$J($G(@EMT)+$G(@GLBL@(M(EMT),1)),2,2)
 F EMT="HCHK","HVIZ","HISR","HDNR","HAEX","HJCB","HALPHA","HCHKM","HCHKO","HTL" S @EMT@(1)=$J($G(@EMT@(1))+$G(@GLBL@(M(EMT)_"#",1)),2,2)
 N SHUMDAY S SHUMDAY=0
 F EMT="MZM","CHK","VIZ","ISR","DNR","AEX","ALPHA" D
 .S SHUMDAY=SHUMDAY+$G(@GLBL@(M(EMT),1))
 S SHUMDAY=SHUMDAY-$S('$$^P1TIPMIN:0,1:$G(@GLBL@("T",1)))
 S MAMD=$$MAMD^P1L($$^%L1DC(DAT,4))
 S MAMS=$G(MAMS)+(SHUMDAY*MAMD/(100+MAMD))
 ;
 I $G(^PL("MATB")) S CHKO=$G(CHKO)+$G(CHKM) S CHKM=0
 I $G(^PL("MATB")) S HCHKO=$G(HCHKO)+$G(HCHKM) S HCHKM=0
 ;;S TIPPS=$G(^P1PRM("TIPPS"),"mitih")
 Q
102 ;---------------------------------------------------------------
 S SCA=$J(VIZ+ISR+DNR+AEX+JCB+ALPHA,2,2)
 S SCA(1)=$J(VIZ(1)+ISR(1)+DNR(1)+AEX(1)+JCB(1)+ALPHA(1),2,2)
 ;;I $G(^P1PRM("TIPNO")) S MZM=MZM-TIP
 I '$G(^P1PRM("TOTNA")) S SHUM=$J(MZM+CHKM+CHKO+SCA+ASR-$S('$G(^P1PRM("TIPNT")):0,1:TIP),2,2)
 E  S SHUM=$J(MZM+CHKM+CHKO+SCA-$S('$G(^P1PRM("TIPNT"))!$G(^P1PRM("TIPNO")):0,1:TIP),2,2)
 S HSCA=$J(HVIZ+HISR+HDNR+HAEX+HJCB+HALPHA,2,2)
 S HSCA(1)=$J(HVIZ(1)+HISR(1)+HDNR(1)+HAEX(1)+HJCB(1)+HALPHA(1),2,2)
 S HSHUM=$J(HMZM+HCHKM+HCHKO+HSCA,2,2)
 ;;S MAMS=$J(SHUM*RMAM/(100+RMAM),2,2)
 S VIZS=$J(VIZ+HVIZ,2,2)
 S ISRS=$J(ISR+HISR,2,2)
 S MZMS=$J(MZM+HMZM,2,2)
 S TLS=$J(TL+HTL,2,2)
 S TIPS=$J(TIP,2,2)
 S CAS=$J(SCA+HSCA,2,2)
 S DNRS=$J(DNR+HDNR,2,2)
 S AEXS=$J(AEX+HAEX,2,2)
 S JCBS=$J(JCB+HJCB,2,2)
 S ALPHAS=$J(ALPHA+HALPHA,2,2)
 S CHKS=$J(CHKO+HCHKO,2,2)
 S CHKMS=$J(CHKM+HCHKM,2,2)
 ;;S SHUMS=$J(SHUM+HSHUM-ASR,2,2)
 S SHUMS=$J(SHUM+HSHUM,2,2)
 I '$G(^P1PRM("TOTNA")) S SHUMS=$J(SHUMS-ASR,2,2)
 S ASRS=$J(ASR,2,2)
 I '$D(P1PCTOT) S HNHS=$J(HNHS+HNHS2-$G(HNHT)-$G(HNHCIB),2,2)
 S SMHIRA=$J(SHUM+TL,2,2)
 S SUMP=$J(SHUM+TL+$G(HNHS)+$G(HNHCIB)+$G(HNHT)+$G(MIN3)-$G(DMSHS)-$S('$G(^P1PRM("TIPNT")):TIP,1:0),2,2)
 I $G(^P1PRM("TOTNA")) S SUMP=$J(SUMP+ASR,2,2),SMHIRA=$J(SMHIRA+ASR,2,2)
 S SUMB=$J(SUMP+$G(BIT),2,2) ;;I $G(^P1PRM("TIPNT")) S SUMB=SUMB+TIP
 I $G(^P1PRM("BRTDM")) S SUMB=SUMB+$G(DMSHS)+$G(TIP)
 I $G(^P1PRM("TIPNO")) S (TIP,TIPS,TIP1,TIPPS1)=""
 I $G(^P1PRM("TIPNT")) S TIP1="",TIPPS1=""
 I '$G(^P1PRM("TIPNT")) S TIPPS="",TIPPS1=$$TIPPS("") S:TIP TIP1=TIP S (TIP,TIPS)=0
 S MSDMSL="" I $G(^P1PRM("MSD"))!$G(^P1PRM("MTAW")),MISHL D  S MSDMSL=$$SPR^%L1FRM(MSDMSL)
 .I SUMDLP S MSDMSL=MSDMSL_$J(SUMDLP,8,2)_" : wtlc ehp oeict "
 .S MSDMSL=MSDMSL_$J(SUMMSL,8,2)_" : migelyn ehp oeict "
 .S MSDMSL=MSDMSL_$J(SUMMSD,8,2)_" : dcrqn ehp oeict "
 S MSDAMSL="" I $G(^P1PRM("MSD"))!$G(^P1PRM("MTAW")),MISHL D  S MSDAMSL=$$SPR^%L1FRM(MSDAMSL)
 .I SUMADLP S MSDAMSL=MSDAMSL_$J(SUMADLP,8,2)_" :    wtlc ly dtwd "
 .S MSDAMSL=MSDAMSL_$J(SUMAMSL,8,2)_" :   migelyn ly dtwd "
 .S MSDAMSL=MSDAMSL_$J(SUMAMSD,8,2)_" :   dcrqn ly dtwd "
 S SMSL="" I MISHL S SMSL=SMSH_"  migelyn 'qn"
 I $G(^PL("MATB")) D
 .N N,I,SHAAR
 .S N="",I=0 ;;S MTB01="g""y",MTB1=$J(MZMS-SUMMTB,7,2)_$J("",15)
 .S SMTB=MZMS
 .F  S N=$O(SUMMTB(N)) Q:N=""  D
 ..S I=I+1 S @("MTB0"_I)=$P($G(^P1SUGM(N)),"\",2)
 ..S SHAAR=1 I $G(SUMMTB(N)) S SHAAR=$P(SUMMTB(N),"!",2)/SUMMTB(N)
 ..S @("MTB"_I)=$J(SUMMTB(N)*SHAAR,8,2)_"="_$J(SHAAR,8,4)_"*"_$J(SUMMTB(N),6,1)
 .S I=I+1,@("MTB0"_I)="g""y",@("MTB"_I)=$J(MZMS-$G(SUMMTB),8,2)_$J("",16)
 Q
3 D ^P1S Q
4 D ^P1DP Q
5 D ^P1DL Q
6 D  Q
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C,^P1IN
 .;;D 1^P1DHB
 .D ^P1HBMK
7 D ^P1MLZ Q
8 X %chista S %GET=":jix`z++3,70,HH#"_"  "_$E($TR($$^%L1DC($H,1),"/.",""),3,6)_"++8,D,I" D ^%L1GET Q:%S=""!($G(%TO)="END")
 S (DAT,DATJ)=%L1DAT,DAT1=%L1DAT1
P10 S (SUMA,SUMT,SUMS)=0
 K ^VRMS($J) S DATH=$$^%L1DC(DAT,4)
 I 'DATH S %SAY=" ! d`iby " X %XMSGV(1) G P1
 D P11^P1S
 S MEK="wzrd" S SGIRATJOM="" D DJ^P1S K SGIRATJOM
 Q
9 D INIT^P1KL,M1^P1KL Q
10 ;;S DAT1=$$^%L1DC(P1DZ,1),DAT01=$$^%L1DC(DAT1,2) S %SCRN="P1AVD",(%SCVA,%SCVG)=1 D A^%L1SC K %SCVA,%SCVG S %FNAME="",FRST=1
 ;;D GETF^%L1SC Q:%BS  S DAT01=$$^%L1DC(DAT1,2)
 ;;D ^P1AVD Q
 D ^LEVTYP Q
11 D ^P1DTM Q
12 D  Q
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C,^P1IN
 .D 1^P1DTZ
13 D ^P1DCB Q
14 D ^P1DMVC Q
15 S FIRSTTIME="" D ^P1DL K FIRSTTIME Q
16 D ^P1DMVC1 Q
17 N DATZ ;;X %chista S %GET=":jix`z++3,70,HH#  "_$E($TR($$^%L1DC($H,1),"/.",""),3,6)_"++8,D,I++++ <F8> - Z xtqn itl yetig "
 S DATZ=$$^%L1DC(P1DZ-1,1)
171 X %chista S %GET=": ( F8 - Z xtqn itl yetig ) jix`z++3,70,HH#"_$G(DATZ)_"++8,D,I"
 D ^%L1GET
 I %TO="F8" D  G 171
 .N %S
 .S %GET=": Z xtqn++5,70,HH#++5,E,I" D ^%L1GET Q:%S=""!(%TO="END")
 .N N S N="" F  S N=$O(^Z(N)) Q:N=""  I $D(^Z(N,%S)) S DATZ=$$^%L1DC(N,1) Q
 .I $G(DATZ)="" S %SAY=" ! wted `l "_%S_" xtqn mr Z " X %XMSGV(1)
 I ($G(%TO)="END")!(%S="") L  Q
 S (DAT,DATJ)=%L1DAT,DAT1=%L1DAT1,DH=$$^%L1DC(DAT1,3)
 S %GET=": 2 - zegec zqtcn "_$S($G(^PLUK(%L3MYDVN,"LP"))>2:", 1 - dtew zqtcn ",1:"")_", 0 - jqn ++5,70,HH#0++1,E,I++012" D ^%L1GET G:%S=""!($G(%TO)="END") 17
 I %S=1 D  G 17
 .N %S S %GETIN="3",%GET="4 - Y, 3 - Z ly itqk oeict wx, 2 - Z , 1 - lkd qitcdl" D N^%L1GET Q:%S=""!(%TO="END")
 .S %SAY=" ... dlerta zqtcn " X %XMSGN
 .N Z,PRZ,TXT,TXTOLD I %S>1 S Z=%S
 .D ^PLUINP,MDP^P1PC S SM1=4 Q:'$G(PRINT)  L ^[$$^%L1GLD]pc(PRINT):2 E  S %SAY=" ! xg` seqnn miqitcn " X %XMSGV(1) Q
 .S ZBG=""
 .S N="" F  S N=$O(^Z(DH,N)) Q:N=""  S N1="",TXT=%MDP("B")_" wzrd "_%MDP("N") D S1^P1PCMLZ F  S N1=$O(^Z(DH,N,N1)) Q:N1=""  D
 ..S TXT=^(N1)
 ..I $TR(TXT," ","")["-Z-" S PRZ="" K PRY
 ..I $TR(TXT," ","")["-X-" K PRZ,PRY
 ..I $TR(TXT," ","")["-Y-" K PRZ S PRY=""
 ..;;I $G(Z)=3,$D(PRZ),TXT["zexikn g""ec" S TXTOLD=TXT S TXT=$J("",11)_%MDP("B")_"- Z -"_%MDP("N") S PRZ=3 D S1^P1PCMLZ S TXT=TXTOLD
 ..I $G(Z)=3,$D(PRZ),TXT["zexikn g""ec" S PRZ=3 K ZBG
 ..I $G(Z)=3,$D(PRZ),TXT["ehexa k""dq" K PRZ D S1^P1PCMLZ Q
 ..I $G(Z)=2!($G(Z)=3),'$D(PRZ) Q
 ..I $G(Z)=3,$G(PRZ)'=3,'$D(ZBG) Q
 ..I $G(Z)=4,'$D(PRY) Q
 ..D S1^P1PCMLZ
 .I $D(^Z(DH))>9 D ^P1CUT(PRINT,%MDP("CUT")) L
 ;
 I %S=0!(%S=2) D  G 17 ;---- MASAH, MADP. REHAVA
 .N Z,PRZ,PC I %S=2 S PC="" D ^%L1TS
 .I $D(PC) S %GETIN="3",%GET="3 - Z ly itqk oeict wx, 2 - Z , 1 - lkd qitcdl" D N^%L1GET Q:%S=""!(%TO="END")  I %S>1 S Z=%S
 .N Z,PRZ I %S>1 S Z=%S
 .K ^TMPS111($J) S N="",I=0 S SM=24 I $$ZBIG^W4PRM S SM=0
 .F  S N=$O(^Z(DH,N)) Q:N=""  S I=I+1,^TMPS111($J,I)=$J("",SM)_%CLI_" wzrd"_$C(27,91,48,109) S N1="" F  S N1=$O(^Z(DH,N,N1)) Q:N1=""  D
 ..S TXT=$G(^(N1))
 ..I '$D(PC) D
 ...S TXT=$$RPL^%L1FRM($$RPL^%L1FRM(TXT,$C(27)_"W1",%CLI),$C(27)_"W0",%CCL)
 ...S TXT=$$RPL^%L1FRM(TXT,$C(12),$C(10,10))
 ..I $TR(TXT," ","")["-Z-" S PRZ=""
 ..I $TR(TXT," ","")["-X-" K PRZ
 ..I $G(Z)=3,$D(PRZ),$TR(TXT,TSS,TS0)["zexikn g""ec" S PRZ=3
 ..I $G(Z)=3,$D(PRZ),$TR(TXT,TSS,TS0)["ehexa k""dq" K PRZ S I=I+1,^TMPS111($J,I)=$J("",SM)_TXT Q
 ..I $D(Z),'$D(PRZ) Q
 ..I $G(Z)=3,$G(PRZ)'=3 Q
 ..S I=I+1,^TMPS111($J,I)=$J("",SM)_TXT
 .I $D(PC) K %L1OUT S %L1OUT("PRINTER")=3 D ^%L1OUT Q
 .S %HBRY="",TXT1="<ESC> - z`vl " D ^%S2VIEW K ^TMPS111($J)
 Q
S1 ;
 D S1^P1PCMLZ Q
19 D ^P1DHZHB Q
20 D ^P1DMZPR Q
21 D ^P1JOM Q
22 D ^P1DHB2 Q
23 D ^P2HZGHZM Q
24 D ^P1POISKV Q
25 D ^P1DOTH Q
26 D ^P1Z Q
27 D ^P1PRHZ Q
28 D ^P1MZP Q
29 K PRMKBL D ^P1MSH Q
30 D ^P1MLZT Q
31 D ^P1MSHT Q
32 S PRMKBL=1 D ^P1MSH K PRMKBL Q
33 D ^P1HZCA Q
40 D ^P1TOTSV Q
41 D ^P1DPSV Q
42 D ^%L1REP Q
43 D ^%L1REPS Q
44 D ^P1ZMRK Q
45 S %GETIN=1 S %GET=" 2 - agexl , 1 - jxe`l g""ec qitcdl / bivdl " D N^%L1GET Q:%S=""!(%TO="END")
 I %S=1 D ^L2MHIRA("MHMK") Q
 I %S=2 D ^P1DPMRK Q
46 D ^P1JOMAN("^P1HRZ") Q
47 D ^P1YEAR Q
48 D ^KLMDSV2 Q
49 D ^P1MRKM Q
50 ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
51 K (%L2MN,JB,%ARG)
 D ^%L1C,^P1IN
 S J=0 K MM F I=1:1 S T=$T(MN+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" miiz`eeyd z""ec "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 K %L1SCPC,%L2 S P1TOTI=%I D @MM1(%I) K %L2MN
 S:$G(P1TOTI)&'$G(^P1PRM("EXIT")) %L2MN("IND")=P1TOTI
 G 51
52 D ^P1DCIBML Q
53 D ^P1DOHTIP Q
56 D ^P1DSNIF Q
57 D ^P1DCIB Q
58 N P1HY S P1HY="" D ^P1MLZ Q
 Q
60 ;
 K (%L2MN,JB,%ARG) D ^%L1C,^P1IN
 S J=0 K MM F I=1:1 S T=$T(MNMSH+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" migelyn zegece "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 K %L1SCPC,%L2 S P1TOTMSH=%I D @MM1(%I) K %L2MN S:$G(P1TOTMSH)&'$G(^P1PRM("EXIT")) %L2MN("IND")=P1TOTMSH G 60
 Q
 ;
70 ;
 K (%L2MN,JB,%ARG) D ^%L1C,^P1IN
 S J=0 K MM F I=1:1 S T=$T(MNMSD+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) S J=J+1 S MM(J)=$P(T,";",3),MM1(J)=$P(T,";",4)
 S MM(0)=" dcrqn zegec "
 S MAC="MM" D ^%L2MENU I %I=1 Q
 K %L1SCPC,%L2 S P1TOTMSD=%I D @MM1(%I) K %L2MN S:$G(P1TOTMSD)&'$G(^P1PRM("EXIT")) %L2MN("IND")=P1TOTMSD G 70
 Q
TIPPS(DUMP) I $G(^P1PRM("TIPNO")) Q ""
 N MIN S MIN=$S($G(^P1PRM("TIPNT")):"(-) ",1:"")
 I $L($G(^P1PRM("TIPPS"))) Q MIN_$G(^P1PRM("TIPPS"))
 Q MIN_"mitih"
END K  D ^%L1C
 Q
MENU ;
 ;1; ~ zeillk zeg"ec
 ;1; itqk g"ec;1;
 ;1; mihixt zexikn zeg"ec;W1DP.JSP;
 ;1; miiz`eeyd zexikn zeg"ec;50
 ;0; melyz irvn` itl zexikn z`eeyd;40;
 ;0; mihixt itl zexikn z`eeyd;41;
 ;0; miyceg itl zexikn z`eeyd;47;
 ;'$G(^P1PRM("NODBIT")); milehia zbvd;^P1DHNH("B");
 ;'$G(^P1PRM("NODBIT"));dzxibq ixg` elheay zepnfd zniyx;^P1CTL;
 ;'$G(^P1PRM("NODHNH")); zegpd zbvd;^P1DHNH("H");
 ;1;"0" hixt ly zexikn zbvd;^P1DHNH(0);
 ;1; dlaw/qn zeipeayg g"ec;6;
 ;0; i`xy` zepeayg g"ec;22;
 ;1; dtwdd zegec;9;
 ;1; miekif g"ec;12;
 ;0; zelaw g"ec;13;
 ;1; zery itl zeipeayge zepnfd g"ec;19;
 ;1; reay ini itl iyceg zexikn g"ec;21;
 ;1; mi-Z fekix g"ec;26;
 ;$G(^PLUK)["MLY";FOOD COST g"ec;56;
 ;1; zepnfd itl `"k g"ec;33;
 ;1;zewacn,zepnfd 'qn itl zegewl g"ec;5;
 ;1; rvana mihixt zxikn g"ec;16;
 ;1; rvana ekf `l cery zeipw;14;
 ;MISHL;~ migelyn ;99;
 ;MISHL; zepnfd g"ec;^P1HZHC("HZH");
 ;MISHL;melyz ibeq itl migily g"ec;31;
 ;MISHL;(fekix) migily g"ec;29;
 ;MISHL;(fekix) zepnfd ilawn g"ec;32;
 ;$G(^P1PRM("MM"))!$G(^P1PRM("MMZZ")); zecrqn itl migelyn g"ec;^P1DMM;^P1SUMM
 ;MISHL; gelyn zecerz g"ec;11;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));~ dcrqn ;99;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW")); (dcrqn) zepnfd g"ec;^P1HZHC("HZHM");
 ;$G(^P1PRM("MSD"))&$G(^P1PRM("MLZ"));mihixte zepnfd itl mixvln g"ec;28;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));melyz ibeq itl g"ec;30;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));(fekix) mixvln g"ec;7;
 ;$D(^P1HY)&($G(^P1PRM("MSD"))!$G(^P1PRM("MTAW")));(fekix) miy"ng` g"ec;58;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));'qeaiq' zegewl oecren g"ec;52;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));mitih g"ec;53;
 ;1;~ zepey ;99;
 ;1; micaer zeg"ec;10;
 ;1; `"k yetig;24;
 ;1;zxewia hxq zbvd;23;
 ;1; (wzrd) mei zxibq g"ec;17;
 ;1;zexnyn zeira g"ec;46;
 ;1; z"egec oeikx`;42;
 ;1;zexnyne mifkxn itl zeqpkd fekix;49;
 ;$G(^P1PRM("MRKZ"))="S";xeciyl mipken zeg"ec zbvd;43
 ;$G(^P1PRM("MRKZ"))="M"; ~ mifkxndn zeg"ec fekix
 ;$G(^P1PRM("MRKZ"))="M"; mifkxndn Z-im fekix;44
 ;$G(^P1PRM("MRKZ"))="M"; mifkxndn mihixt zexikn fekix;45
 ;$G(^P1PRM("CIBUS"));'qeaiq' zegewl ly minelyz g"ec;57;
 Q  ;
MN ;
 ;1; d ` i v i;
 ;1; melyz irvn` itl zexikn z`eeyd;40;
 ;1; mihixt itl zexikn z`eeyd;41;
 ;1; miyceg itl zexikn z`eeyd;47;
 ;MISHL; (migelyn) zegewl itl zexikn z`eeyd;48;
 Q  ;
MNMSH ;
 ;1; d ` i v i;
 ;1; zepnfd g"ec;^P1HZHC("HZH");
 ;1;melyz ibeq itl migily g"ec;31;
 ;1;(fekix) migily g"ec;29;
 ;1;(fekix) zepnfd ilawn g"ec;32;
 ;$G(^P1PRM("MM"))!$G(^P1PRM("MMZZ")); zecrqn itl migelyn g"ec;^P1DMM;^P1SUMM
 ;1; gelyn zecerz g"ec;11;
 Q  ;
MNMSD ;
 ;1; d ` i v i;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW")); (dcrqn) zepnfd g"ec;^P1HZHC("HZHM");
 ;$G(^P1PRM("MSD"))&$G(^P1PRM("MLZ"));mihixte zepnfd itl mixvln g"ec;28;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));melyz ibeq itl g"ec;30;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));(fekix) mixvln g"ec;7;
 ;$D(^P1HY)&($G(^P1PRM("MSD"))!$G(^P1PRM("MTAW")));(fekix) miy"ng` g"ec;58;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));'qeaiq' zegewl oecren g"ec;52;
 ;$G(^P1PRM("MSD"))!$G(^P1PRM("MTAW"));mitih g"ec;53;
 Q  ;
99 Q
 
 

W1UPL
W1UPL(ST) ; [ 14.10.25 13:24 ] [ 
 N (ST)
 S FILE=$P(ST,"<<>>")
 S TX=$P(ST,"<<>>",2,2000)
 ;
 O FILE:(WRITE:NEWVERSION:REWIND)
 U FILE
 F I=1:1:$L(TX,"$10$") D
 .S T=$P(TX,"$10$",I)
 .S T=$TR(T,$C(13,10,27,8,9),"")
 .S T=$$CNWEB^%L1FRM(T)
 .W T,!
 C FILE
 Q
 

W1VERDAT
W1VERDAT ; [ 07.08.25 12:01 ] [ 29.12.24 12:05 ] [ 07.01.24 16:31 ] 
 S GL="^|"""_$$^W3MAIN_"""|NEWCSR1"
 K ^|$$^W3MAIN|W1VERDAT(+$H)
 ;
 S $ZT="G ER^W1VERDAT"
 S N=1
CYC S N=$O(@GL@(N)) G:N<1 END D
 .I N<1 S N="" Q
 .S A=$G(^(N,1))
 .S REF=$P(A,"\",2) Q:REF=""  Q:REF'["/w4main.jsp"
 .I $P(A,"\",4)'=1 Q
 .S REF=$P(REF,"/",1,$L(REF,"/")-1)_"/w1flp.jsp"
 .S FLOU="/home/www2order/w4spxflp"
 .;;I $$EXIST^%L1ZOS(FLOU) ZSY "rm "_FLOU
 .C FLOU:(DELETE)
 .S CMD="curl -k -s -m 25 -d'FL=/home/gtmuser/W.R' "_REF_" -o "_FLOU
 .;
 .ZSY CMD
 .I '$$EXIST^%L1ZOS(FLOU) S ^|$$^W3MAIN|W1VERDAT(+$H,"ER",N)="FLOU NOTEXIST" Q
 .I $$SIZE^%L1ZOS(FLOU)<10 S ^|$$^W3MAIN|W1VERDAT(+$H,"ER",N)="FLOU 0" Q
 .I $ZSY S ^|$$^W3MAIN|W1VERDAT(+$H,"ER",N)="ZSY="_$ZSY Q
 .I $ZSY=0 D
 ..U 0 W N,!
 ..O FLOU:(REWIND:READONLY)
 ..S OU="",OK=0
 ..F  U FLOU R ST Q:$ZEOF  D  Q:$L(OU)
 ...I ST["<body" D
 ....R OU I $P(OU,"^",3) D
 .....S $P(@GL@(N,1),"\",3)=$ZD($P(OU,"^",3),"DD.MM.YY") S OK=1
 ..C FLOU:(DELETE)
 ..I 'OK S ^|$$^W3MAIN|W1VERDAT(+$H,"ER",N)="OK=0" Q
 G CYC
END ;
 S $ZT="",N="" Q
 ;
ER ;
 U 0 W N_": "_$ZS,!
 S ^|$$^W3MAIN|W1VERDAT(+$H,"ER",N)=$ZS
 G CYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W1VERS
W1VERS ; [ 27.11.11 09:22 ] [ 26.12.09 20:39 ] [ 25.12.09 06:32 ]
 N (JB,%ARG,%REM)
 S LNG1=$G(%ARG("LNG1"))
 S LNG2=$G(%ARG("LNG2"))
 W "<div dir=""LTR"" align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 S DT="" F  S DT=$O(@VERSION@(DT),-1) Q:DT=""  D
 .W "<span style=""font-size:"_$$^W3FSZ(18)_""">Version Date "_$ZD(DT,"DD.MM,YY")_"</span><br>",!
 .W "<table dir=""LTR"" id=""TblVersion"_DT_""" cellspacing=""1"" width=""90%"" border=""1"">",!
 .S N="" F  S N=$O(@VERSION@(DT,N)) Q:N=""  D
 ..S TXT=$G(^(N))
 ..W " <tr id="""_N_""">",!
 ..W "  <td>",!
 ..W N
 ..W "  </td>",!
 ..I $G(%ARG("EDIT")) D
 ...W "    <input type=""text"" id=""vl2"_N_""" maxlength=""80"" size=""40"" value="""_VL_""" onChange=""Change()""
 ...W " >"
 ..I '$G(%ARG("EDIT")) D
 ...W $$H2U^%L1FRM(TXT)
 .W "  </td>",!
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br/>"
 W "<div id=""divbut"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   I $$EDIT D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
ETB ;
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W1VERS-SAVE","PRM=PRM")
 N IND,TXT,LNG
 S IND=$P(PRM,";") Q:IND=""
 S TXT=$P(PRM,";",2)
 S TXT=$$CNWEB^%L1FRM(TXT)
 I $$^%W1LNG="H" S TXT=$$INVH^%L1FRM(TXT)
 S ^[$$^W3MAIN]W1VERS(DT,LNG,IND)=TXT
 Q

W1ZEROS
W1ZEROS ; [ 23.04.26 14:15 ] [ 
 N (JB,%ARG,%REM)
 S P1NEWYR=""
 D 2^KILLZ
 ;
 S %X=^PL("PATHM")
 S %L1OS("NOVIEW")=""
 K ^TEMPo($P) D O13M^%L1OS
 F I=1:1 Q:'$D(^TEMPo($P,I))  S A=^(I) S NM=$$SPA^%L1FRM($E(A,1,8))_"."_$$SPA^%L1FRM($E(A,11,13)) S B=$$^%L1ZOS(2,^PL("PATHM")_NM)
 K ^TEMPo($P)
 Q

W2BDIKA
W3BDIKA ; [ 04.05.07 18:42 ] [
 W "<input type=""button"" value=""PRESS ME"" onclick='CellSel(""td1"",""","
 S ST=""
 f i=1:1:100 S ST=ST_"option "_i_"~"
 W ST_""") />",!
 Q

W2CMDSET
W2CMDSET ; [ 17.02.26 14:49 ] [ 29.12.24 12:04 ] [ 04.04.24 21:38 ] 
 N (JB,%ARG,%REM)
 I '$G(JB) S JB=$$^%W1SsID("W2CMDSET")
 ;
 D ^%L1C X %chista
 S %SCRN="W2CMDSET"
SC D ^%L1SC
Z S %GET="DO - 1 , REPAIR - 2 ,ESCAPE - <ESC>"
 I %TO="END" G END
 D N^%L1GET
 I %S=2 G SC
 I (MSDR="")!(MSD="")!(CMD="") G SC
 I %S'=1 G Z
 ;
 I '$D(^|$$^W3MAIN|W3MSDR(MSDR,MSD)) D  G SC
 .S %SAY="REST NUMBER "_MSD_" NOT DEFINED IN RESTAURANTS NET "_MSDR
 .X %XMSGV H 3
 ;
 S GL="^|$$^W3MAIN|W2CMDSET"
 S MMSD=MSD 
 ;
 I MSD="*" D
 .S MMSD=""
 .S N="" F  S N=$O(^|$$^W3MAIN|W3MSDR(MSDR,N)) Q:N=""  D
 ..S MMSD=MMSD_N_","
 .S MMSD=$E(MMSD,1,$L(MMSD)-1)
 ;
 F I=1:1:$L(MMSD,",") D
 .S MSD=$P(MMSD,",",I) Q:MSD=""
 .S @GL@(+$H,MSDR,MSD)=CMD
END Q ; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W2ORD
W2ORD ; [ 25.04.07 10:18 ] [ 24.04.07 18:57 ] [ 23.04.07 20:45 ]
 W "<p></p><p></p>",!
 W "<form method=""post"" target=""_self"">",!
 W "<table border=""1"" dir="""_$S($$^%W1LNG="H":"RTL",1:"LTR")_""">",!
 W "<tr>",!
 W "  <td>picture</td><td>"_$$INP("NORD","",10)_"</td>",!
 W "<tr>",!
 W "  <td>"_$$INPD("DATE")_"</td>",!
 W "  <td>"_$$INP("AIRLINE")_"</td>",!
 W "  <td>"_$$INP("FLIGHTNO")_"</td>",!
 W "  <td>"_$$INPT("DEPARRTM")_"</td>",!
 W "</tr>",!
 W "<tr>",!
 W "  <td colspan=""2"">"_$$INP("SURNAME",146)_"</td>",!
 W "  <td>"_$$INP("INITIAL","",8)_"</td>",!
 W "  <td><table>",!
 W "     <tr>",!
 W "        "_$$INP1("MR",18),!
 W "        "_$$INP1("MRS",18),!
 W "     </tr>",!
 W "     <tr>",!
 W "         "_$$INP1("MISS",18),!
 W "         "_$$INP1("MSTR",18),!
 W "     </tr>",!
 W "    </table>",!
 W "  </td>",!
 W "<tr>",!
 W "  <td>"_$$INP("TIMEJOBDET")_"</td><td>"_$$INP("TIMEJOBCOMP")_"</td>",!
 W "  <td>"_$$INP("ONOFFJET")_"</td><td>"_$$INP("STANDNO")_"</td>",!
 W "</tr>",!
 W "<tr>",!
 W "   "_$$INP1("WCHR")_$$INP1("TERMTRANS"),!
 W "</tr>",!
 W "<tr>",!
 W "   "_$$INP1("WCHS")_$$INP1("UNMIN"),!
 W "</tr>",!
 W "<tr>",!
 W "   "_$$INP1("WCHC")_$$INP1("MAAS"),!
 W "</tr>",!
 W "<tr>",!
 W "   <td colspan=""4"" style=""text-align:center""><h3>"_$$^%W1DICT("LANDSIDE")_"</h3></td>",!
 W "</tr>",!
 W "<tr>",!
 W "   <td>"_$$INP("MSCP")_"</td><td>"_$$INP("UNGD","",6)_"</td><td>"_$$INP("HTLBUS")_"</td><td>"_$$INP("BUS","",11)_"</td>",!
 W "</tr>",!
 W "<tr>",!
 W "   <td>"_$$INP("TAXI","",3)_"</td><td>"_$$INP("CARHIRE")_"</td><td>"_$$INP("HEX","",9)_"</td><td>"_$$INP("LTCPBUS")_"</td>",!
 W "</tr>",!
 W "<tr>",!
 W "   <td colspan=""4"">"_$$INP("ONWARDFLIGHT")_"</td>",!
 W "</tr>",!
 W "<tr>",!
 W "   <td colspan=""4"">"_$$INP("COMMENTS",600)_"</td>",!
 W "</tr>",!
 W "<tr>",!
 W "   <td>"_$$INP("STAFFNO","",4)_"</td>",!
 W "   <td colspan=""3""><table width=""100%"">"
 W "      <tr><td width=""50%"">"_$$INP("STAFFNAME",136)_"</td><td>"_$$INP("AUTHOR",136)_"</td></tr>",!
 W "   </table></td>",!
 W "</tr>",!
 W "</table>",!
 W "<p></p>",!
 W "<input type=""submit"" value="""_$$^%W1DICT("SUBMIT")_""" />",!
 W "</form>",!
 Q
 ;
INP(NAME,WIDTH,DOP) ;
 I '$G(WIDTH) S WIDTH=64
 I '$D(DOP) S DOP=1
 Q $$^%W1DICT(NAME)_$$DOP(DOP)_"<input type=""text"" name="""_NAME_""" style=""width:"_WIDTH_"pt"" value="""_$G(@NAME)_"""/>"
 ;
INP1(NAME,WIDTH) ;
 I '$D(WIDTH) S WIDTH=48
 Q "<td>"_$$^%W1DICT(NAME)_"</td><td><input type=""text"" name="""_NAME_""" style=""width:"_WIDTH_"pt"" /></td>"
 ;
INP2(NAME,WIDTH) ;
 I '$D(WIDTH) S WIDTH=48
 Q "<td""15%"">"_$$^%W1DICT(NAME)_"</td><td width=""15%""><input type=""text"" name="""_NAME_""" style=""width:"_WIDTH_"pt"" /></td>"
 ;
INPD(NAME) ;
 N FLD S FLD=$$^%W1DICT(NAME)_"&nbsp;"
 S FLD=FLD_"<input type=""text"" name="""_NAME_"dd"" style=""width:16pt"" />&nbsp;"
 S FLD=FLD_"<input type=""text"" name="""_NAME_"mm"" style=""width:16pt"" />&nbsp;"
 S FLD=FLD_"<input type=""text"" name="""_NAME_"yy"" style=""width:16pt"" />&nbsp;"
 Q FLD
 ;
INPT(NAME) ;
 N FLD S FLD=$$^%W1DICT(NAME)_"&nbsp;"
 S FLD=FLD_"<input type=""text"" name="""_NAME_"hh"" style=""width:16pt"" />&nbsp;"
 S FLD=FLD_"<input type=""text"" name="""_NAME_"mn"" style=""width:16pt"" />&nbsp;"
 Q FLD
 ;
DOP(N) ;
 N J,SP S SP="" F J=1:1:N S SP=SP_"&nbsp;"
 Q SP

W2ORDSV
W2ORDSV ; [ 25.04.07 10:35 ] [
 ;         1    2       3        4        5      6      7   8   9   10
 D STRUCT
 ;
 D ^%W2ARG
 ;
 I 'NORD S NORD=$O(^W2ORD(99999999),-1)+1
 ;          1          2          3            4
 N DT S DT=$$^%L1DC(DATEdd_"."_DATEmm_"."_DATEyy,3)
 N ST S ST=""
 ;
 F J=1:1:$L(STRUCT,"\") D
 .N NM S NM=$P(STRUCT,"\",J) Q:NM'?."%"1U.E
 .S ST=$G(@NM)_"\"
 ;
 S ^W2ORD(NORD)=ST
 ;
 D KILL^%W2ARG
 Q
STRUCT ;
 S STRUCT="DT\AIRLINE\FLIGHTNO\DEPARRTM\SURNAME\INITIAL\MR\MRS\MISS\MSTR\"
 ;                    11          12         13     14
 S STRUCT=STRUCT_"TIMEJOBDET\TIMEJOBCOMP\ONOFFJET\STANDNO\"
 ;                 15    16       17   18    19   20
 S STRUCT=STRUCT_"WCHR\TERMTRANS\WCHS\UNMIN\WCHC\MAAS\"
 ;                 21   22    23   24   25    26    27    28
 S STRUCT=STRUCT_"MSCP\UNGD\HTLBUS\BUS\TAXI\CARHIRE\HEX\LCTPBUS\"
 ;                  29           30        31      32       33
 S STRUCT=STRUCT_"ONWARDFLIGHT\COMMENTS\STAFFNO\STAFFNAME\AUTHOR"
 ;
 Q

W2REST
W2REST ; [ 24.06.26 16:16 ] [ 
 D ^%L1TS
 K ^PARSUG01
 K ^PAR01
 S FILE="/home/gtmuser/lhof.csv"
 O FILE:(REWIND:READONLY)
 S GR0=100
 S PAR0=2000
 F  D  Q:$ZEOF
 .U FILE R A Q:$ZEOF
 .S A=$TR(A,TS1,TS0)
 .S GR1=$$INVH^%L1FRM($P(A,";"))
 .S NM1=$$INVH^%L1FRM($P(A,";",2))
 .S MH=$P(A,";",7) Q:$E(MH)'?1N
 .S PAR=$O(^PAR01(999999),-1)+1
 .I PAR<PAR0 S PAR=PAR0+1
 .I NM1?.P Q
 .I $L(GR1),'$D(M(GR1)) D
 ..S GR=$O(^PARSUG01(99999),-1)+1
 ..I GR<GR0 S GR=GR0+1
 ..S ^PARSUG01(GR)=GR1
 ..S M(GR1)=""
 .I PAR D
 ..S ^PAR01(PAR)=NM1_"**"_MH
 ..S $P(^PAR01(PAR),"**",5)=GR
 C FILE
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3AN2AS0
W3AN2ASK ; [ 05.06.14 18:55 ] [ 05.12.12 15:42 ] [ 02.12.12 11:15 ]
 N (JB,%ARG,%REM)
 ;;D PUT^%W3DEB("W3AN2ASK","ARG=[%ARG")
 I '$G(%ARG("MSD")) D ERR("NOTREST") Q
 S MSD=%ARG("MSD")
 S SNIF=""
 ;
 I $G(%ARG("PSW"))="" D ERR("NOTPASSWORD") Q
 S PSW=%ARG("PSW")
 ;
 ;--------- MSD[":" --> SET MISSADOT ( TO EXAMPLE 4: - SO )
 ;
 I $$MSDR(MSD),PSW'=$$PSW^W3MSDR(+MSD) D ERR("PASSWORDISWRONG") Q
 I $$MSDR(MSD) G BG ; ---- ( DVOETOCHIE - SET MSD )
 ;
 I MSD[";" S SNIF=$P(MSD,";",2),MSD=$P(MSD,";") ;; TOCHKA S ZAP
 ;
 ;
 S UCI=$G(^[$$^W3MAIN]UCI(+MSD))
 I UCI="" D ERR("UCINOTFOUND") Q
 ;
 I $G(^[UCI]W3PRM("PSW"))="" D ERR("PASSWORDNOTDEFINED") Q
 ;
 I PSW'=^[UCI]W3PRM("PSW") D ERR("PASSWORDISWRONG") Q
 ;
BG S FLAG=0
 ;
 D GETMSTR(MSD) ; --> MSTR --> MASSIV ULIC (SF)
 ;
 U 0:(NOECHO:NOWRAP)
 ;
 ;;I MSD=1 S SNIF=2
 ;
 W "<OrdersList>",!
 ;
 S DT0=$H-1
 S DT=DT0 F  S DT=$O(^[$$^W3MAIN]W3LINKD(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(^[$$^W3MAIN]W3LINKD(DT,HZ)) Q:HZ=""  D
 ..S MSDORD=$G(^(HZ)) I $$THISMSD(MSDORD,MSD) D
 ...I $$NOAUTOSEND^W3PRM(HZ),'$D(@$$^W3ORD(HZ)@(HZ,"S")) Q
 ...Q:$P($G(@$$^W3ORD(HZ)@(HZ,"S")),";",2)>1
 ...;;Q:$D(@$$^W3ORD(HZ)@(HZ,"DEMO"))
 ...Q:$D(@$$^W3ORD(HZ)@(HZ,"F"))&'$D(@$$^W3ORD(HZ)@(HZ,"HZRSD")) ;-- BYL FAX
 ...
 ...I SNIF=$G(@$$^W3ORD(HZ)@(HZ,"SNIF")) G MET
 ...I $$CITY^W3HZMST(HZ)["TAKEAWAY",+MSD=1 G MET
 ...I $$CITY^W3HZMST(HZ)["TAKEAWAY",SNIF'=$$STREET^W3HZMST(HZ) Q
 ...I $$CITY^W3HZMST(HZ)["TAKEAWAY",SNIF=$$STREET^W3HZMST(HZ) G MET
 ...
 ...N OKHRZ,A,CD,CDN ;----------- DLYA SF VYBOR KUDA POS-T'
 ...S OKHRZ=0
 ...I (MSD=1) D BDKSTR(HZ,MSD) I SNIF=1,$P($G(@$$^W3ORD(HZ)@(HZ)),"~",31)'="aia` lz" Q
 ...I (MSD=1),SNIF=1,$P($G(@$$^W3ORD(HZ)@(HZ)),"~",31)="aia` lz",OKHRZ Q
 ...I (MSD=1),SNIF=2,$P($G(@$$^W3ORD(HZ)@(HZ)),"~",31)="aia` lz",'OKHRZ Q
 ...I (MSD=1),SNIF'=1,SNIF'=2 Q
 ...
MET ...S @$$^W3ORD(HZ)@(HZ,"S")=$$T^%L1TIME($H)_";1"
 ...S $P(@$$^W3ORD(HZ)@(HZ),"~",35)=$$T^%L1TIME($H)
 ...S $P(@$$^W3ORD(HZ)@(HZ),"~",36)=$H
 ...S @$$^W3ORD(HZ)@(HZ,"CS")=$$CSS(HZ)
 ...
 ...W "<Order>",!
 ...W "<OrderNumber>"_HZ_"</OrderNumber>",!
 ...W "<OrderHeader>"_$G(@$$^W3ORD(HZ)@(HZ))_"</OrderHeader>",!
 ...
 ...W "<OrderContent>",!
 ...S N="" F  S N=$O(@$$^W3ORD(HZ)@(HZ,N)) Q:N=""  D
 ....W N_"||"_$G(^(N)),!
 ....S N1="" F  S N1=$O(@$$^W3ORD(HZ)@(HZ,N,N1)) Q:N1=""  D
 .....S A=$G(^(N1))
 .....S CD=$P(A,"~",2)
 .....I CD,$G(^[UCI]W3TRIT(HZ,CD)) D
 ......S CDN=$G(^(CD)) S $P(A,"~",2)=CDN
 .....W N_"|"_N1_"|"_A,!
 ...W "</OrderContent>",!
 ...W "</Order>",!
 ...
 ...S FLAG=1
 ;
 I 'FLAG D ERR("NOTORD") G ORDEND
 D ERR("OK")
ORDEND W "</OrdersList>",!
 ;
HZ2MSD ;
 W "<Rest2RestOrders>",!
 ;
 S MSDTO="" F  S MSDTO=$O(^[$$^W3MAIN]HZ2MSDA(MSD,MSDTO)) Q:MSDTO=""  D
 .S HZM="" F  S HZM=$O(^[$$^W3MAIN]HZ2MSDA(MSD,MSDTO,HZM)) Q:HZM=""  D
 ..N A S A=$G(^(HZM)) I $$^%L1DC($P(A,"\",5),3)<($H-1) K ^[$$^W3MAIN]HZ2MSDA(MSD,MSDTO,HZM) Q
 ..I $D(^[$$^W3MAIN]HZ2MSDA(MSD,MSDTO,HZM,"SENDED")) Q
 ..W "<SendedOrder>"_HZM_"</SendedOrder>",!
 ..S ^[$$^W3MAIN]HZ2MSDA(MSD,MSDTO,HZM,"SENDED")=$H
 ;
 W "</Rest2RestOrders>",!
 ;
 W "<Rest2MMOrders>",!
 ;
 N DT,TO,HZM,FROMMSD
 S DT=$H-2
 N GL2MM S GL2MM="^[$$^W3MAIN]HZ2MMA"
 F  S DT=$O(@GL2MM@(DT)) Q:DT=""  D
 .S FROMMSD="" F  S FROMMSD=$O(@GL2MM@(DT,FROMMSD)) Q:FROMMSD=""  D
 ..S TO="" F  S TO=$O(@GL2MM@(DT,FROMMSD,TO)) Q:TO=""  D
 ...I '$$THISMSD(TO,MSD) Q
 ...S HZM="" F  S HZM=$O(@GL2MM@(DT,FROMMSD,TO,HZM)) Q:HZM=""  D
 ....I $D(@GL2MM@(DT,FROMMSD,TO,HZM,"SENDED")) Q
 ....W "<SendedOrder>"_HZM_"</SendedOrder>",!
 ....S @GL2MM@(DT,FROMMSD,TO,HZM,"SENDED")=$H
 ;
 W "</Rest2MMOrders>",!
 Q
 ;
 ;
ERR(MSG) W "<Error>"_MSG_"</Error>",!
 Q
 ;
CSS(HZW) Q $$CSS^W3RCVORD(HZW)
 ;
BDKSTR(HZ,MSD) ;
 S OKHRZ=1 Q
 ;
 S OKHRZ=0
 S MSD=+$G(MSD) Q:'MSD
 I '$D(GLORD) S GLORD=$$^W3ORD
 N STR S STR=$$STREET^W3HZMST(HZ,GLORD)
 I STR["micizr z" S OKHRZ=1 Q
 N JB S JB=HZ
 I '$D(MSTR) D GETMSTR(MSD)
 N INVSTR S INVSTR=$$INVH^%L1FRM($$STREET^W3HZMST(HZ,GLORD)) Q:INVSTR=""
 ;
 I $D(MSTR(INVSTR)) S OKHRZ=1
 S ^[$$^W3MAIN]W3AN2ASK(HZ)=OKHRZ_";"_INVSTR
 Q
 ;
THISMSD(MSDORD,MSD) ;
 I MSDORD=MSD&(MSD?1N.N) Q 1
 I $$MSDR(MSD),$D(^[$$^W3MAIN]W3MSDR(+MSD,MSDORD)) Q 1
 Q 0
 ;
GETMSTR(MSD) ;
 S MSD=+$G(MSD) Q:'MSD
 N UCI S UCI=$$TV^%W1UCI(MSD)
 S N="" F  S N=$O(^[UCI]W3AZS("IS","zl `aia",N)) Q:N=""  I $G(^(N))="70-20" D
 .N STR S STR=$$SPA^%L1FRM($P(N,":")) Q:STR=""
 .S MSTR(STR)=""
 Q
 ;
MSDR(MSD) ;
 I MSD?1N.N1":" Q 1
 I MSD?1N.N1"R" Q 1
 Q 0

W3AN2ASK
W3AN2ASK ; [ 12.07.26 16:47 ] [ 17.06.26 11:02 ] [ 30.11.20 12:05 ] 
 N (JB,%ARG,%REM)
 ;;D PUT^%W3DEB("W3AN2ASK","ARG=[%ARG")
 ;;M ^AA("W3AN2ASK","ARG")=%ARG
 I '$G(%ARG("MSD")) D ERR("NOTREST") Q
 S MSD=%ARG("MSD")
 S SNIF=""
 ;
 I $G(%ARG("PSW"))="" D ERR("NOTPASSWORD") Q
 S PSW=%ARG("PSW")
 ;
 ;--------- MSD[":" --> SET MISSADOT ( TO EXAMPLE 4: - SO )
 ;
 I $$MSDR(MSD),PSW'=$$PSW^W3MSDR(+MSD) D ERR("PASSWORDISWRONG") Q
 I $$MSDR(MSD) G BG ; ---- ( DVOETOCHIE - SET MSD )
 ;
 I MSD[";" S SNIF=$P(MSD,";",2),MSD=$P(MSD,";") ;; TOCHKA S ZAP
 ;
 ;
 S UCI=$G(^[$$^W3MAIN]UCI(+MSD))
 I UCI="" D ERR("UCINOTFOUND") Q
 ;
 ;;I $G(^[UCI]W3PRM("PSW"))="" D ERR("PASSWORDNOTDEFINED") Q
 ;
 ;;I PSW'=^[UCI]W3PRM("PSW") D ERR("PASSWORDISWRONG") Q
 ;
BG S FLAG=0
 ;
 D GETMSTR(MSD) ; --> MSTR --> MASSIV ULIC (SF)
 ;
 U 0:(NOECHO:NOWRAP)
 ;
 W "<OrdersList>",!
 ;
 S DT0=$H-2
 S DT=DT0 F  S DT=$O(^[$$^W3MAIN]W3LINKD(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(^[$$^W3MAIN]W3LINKD(DT,HZ)) Q:HZ=""  D
 ..S MSDORD=$G(^(HZ)) I $$THISMSD(MSDORD,MSD) D
 ...I $$NOAUTOSEND^W3PRM(HZ),'$D(@$$^W3ORD(HZ)@(HZ,"S")) Q
 ...Q:$P($G(@$$^W3ORD(HZ)@(HZ,"S")),";",2)>1
 ...Q:$D(@$$^W3ORD(HZ)@(HZ,"F"))&'$D(@$$^W3ORD(HZ)@(HZ,"HZRSD")) ;-- BYL FAX
 ...
 ...;;I SNIF=$G(@$$^W3ORD(HZ)@(HZ,"SNIF")) G MET
 ...;;I $$CITY^W3HZMST(HZ)["TAKEAWAY",SNIF'=$$STREET^W3HZMST(HZ) Q
 ...;;I $$CITY^W3HZMST(HZ)["TAKEAWAY",SNIF=$$STREET^W3HZMST(HZ) G MET
 ...N TRH,SHAA S TRH=$$DAT^W3HZMST(HZ),SHAA=$$SHAA^W3HZMST(HZ)
 ...N DTHZ S DTHZ=$$^%L1DC(TRH,3)
 ...I DT<$H,SHAA<22&(SHAA>5) Q
 ...I DT<$H,DTHZ<$H,SHAA<6 Q
 ...N OKHRZ,A,CD,CDN ;----------- DLYA SF VYBOR KUDA POS-T'
 ...
MET ...S @$$^W3ORD(HZ)@(HZ,"S")=$$T^%L1TIME($H)_";1"
 ...S $P(@$$^W3ORD(HZ)@(HZ),"~",35)=$$T^%L1TIME($H)
 ...S $P(@$$^W3ORD(HZ)@(HZ),"~",36)=$H
 ...S @$$^W3ORD(HZ)@(HZ,"CS")=$$CSS(HZ)
 ...
 ...W "<Order>",!
 ...W "<OrderNumber>"_HZ_"</OrderNumber>",!
 ...W "<OrderHeader>"_$G(@$$^W3ORD(HZ)@(HZ))_"</OrderHeader>",!
 ...
 ...W "<OrderContent>",!
 ...S N="" F  S N=$O(@$$^W3ORD(HZ)@(HZ,N)) Q:N=""  D
 ....W N_"||"_$G(^(N)),!
 ....S N1="" F  S N1=$O(@$$^W3ORD(HZ)@(HZ,N,N1)) Q:N1=""  D
 .....S A=$TR($G(^(N1)),$C(10)," ")
 .....S CD=$P(A,"~",2)
 .....;;I CD,$G(^[UCI]W3TRIT(HZ,CD)) D
 ......S CDN=$G(^(CD)) S $P(A,"~",2)=CDN
 .....W N_"|"_N1_"|"_A,!
 ...W "</OrderContent>",!
 ...W "</Order>",!
 ...
 ...S FLAG=1
 ;
 I 'FLAG D ERR("NOTORD") G ORDEND
 D ERR("OK")
ORDEND W "</OrdersList>",!
 ;
HZ2MSD ;
 W "<Rest2RestOrders>",!
 ;
 S MSDTO="" F  S MSDTO=$O(^[$$^W3MAIN]HZ2MSDA(+MSD,MSDTO)) Q:MSDTO=""  D
 .S HZM="" F  S HZM=$O(^[$$^W3MAIN]HZ2MSDA(+MSD,MSDTO,HZM)) Q:HZM=""  D
 ..N A S A=$G(^(HZM)) I $$^%L1DC($P(A,"\",5),3)<($H-1) K ^[$$^W3MAIN]HZ2MSDA(+MSD,MSDTO,HZM) Q
 ..I $D(^[$$^W3MAIN]HZ2MSDA(+MSD,MSDTO,HZM,"SENDED")) Q
 ..W "<SendedOrder>"_HZM_"</SendedOrder>",!
 ..S ^[$$^W3MAIN]HZ2MSDA(+MSD,MSDTO,HZM,"SENDED")=$H
 ;
 W "</Rest2RestOrders>",!
 ;
 W "<Rest2MMOrders>",!
 ;
 N DT,TO,HZM,FROMMSD
 S DT=$H-2
 N GL2MM S GL2MM="^[$$^W3MAIN]HZ2MMA"
 F  S DT=$O(@GL2MM@(DT)) Q:DT=""  D
 .S FROMMSD="" F  S FROMMSD=$O(@GL2MM@(DT,FROMMSD)) Q:FROMMSD=""  D
 ..S TO="" F  S TO=$O(@GL2MM@(DT,FROMMSD,TO)) Q:TO=""  D
 ...I '$$THISMSD(TO,MSD) Q
 ...S HZM="" F  S HZM=$O(@GL2MM@(DT,FROMMSD,TO,HZM)) Q:HZM=""  D
 ....I $D(@GL2MM@(DT,FROMMSD,TO,HZM,"SENDED")) Q
 ....W "<SendedOrder>"_HZM_"</SendedOrder>",!
 ....S @GL2MM@(DT,FROMMSD,TO,HZM,"SENDED")=$H
 ;
 W "</Rest2MMOrders>",!
 Q
 ;
 ;
ERR(MSG) W "<Error>"_MSG_"</Error>",!
 Q
 ;
CSS(HZW) Q $$CSS^W3RCVORD(HZW)
 ;
BDKSTR(HZ,MSD) ;
 S OKHRZ=1 Q
 ;
THISMSD(MSDORD,MSD) ;
 I MSD[",",(","_MSD_",")[(","_MSDORD_",") Q 1
 I MSDORD=MSD&(MSD?1N.N) Q 1
 I $$DLVWEB^W4DLVCSR,+MSDORD=+MSD Q 0
 I $$MSDR(MSD),$D(^[$$^W3MAIN]W3MSDR(+MSD,MSDORD)) Q 1
 Q 0
 ;
GETMSTR(MSD) ;
 Q
 S MSD=+$G(MSD) Q:'MSD
 N UCI S UCI=$$TV^%W1UCI(MSD)
 S N="" F  S N=$O(^[UCI]W3AZS("IS","zl `aia",N)) Q:N=""  I $G(^(N))="70-20" D
 .N STR S STR=$$SPA^%L1FRM($P(N,":")) Q:STR=""
 .S MSTR(STR)=""
 Q
 ;
MSDR(MSD) ;
 I MSD?1N.N1":" Q 1
 I MSD?1N.N1"R" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANRSTG
W3ANRSTG ; [ 05.07.26 11:56 ] [ 17.06.26 11:02 ] [ 21.06.23 04:51 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;M ^AA("W3ARSTG","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 ;
 F I=1:1:$L(FDB,"^") D
 .S A=$P(FDB,"^",I)
 .S DT=$P(A,"~") Q:DT=""
 .F I1=2:1:$L(A,"~") D
 ..S A1=$P(A,"~",I1)
 ..S SUG=$P(A1,":") Q:SUG=""
 ..S RES=$P(A1,":",2)
 ..S ^|$$^W3MAIN|W4RSTGNET(MSDR,DT,MSD,SUG)=RES
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSCLK
W3ANSCLK ; [ 12.07.26 16:53 ] [ 05.07.26 11:33 ] [ 23.10.23 03:23 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSCLK","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DLM="*"
 ;
 F I=1:1:$L(FDB,"^")-1 D
 .S ST=$P(FDB,"^",I)
 .S DT=$P(ST,DLM) Q:'DT
 .S OV=$P(ST,DLM,2) Q:'OV
 .S K=$O(^[$$^W3MAIN]W4CLKNET(MSDR,DT,MSD,OV,99999),-1)+1
 .S WAS=0
 .N KK S KK="" F  S KK=$O(^[$$^W3MAIN]W4CLKNET(MSDR,DT,MSD,OV,KK)) Q:KK=""  D
 ..I $G(^(KK))=ST S WAS=1
 .I 'WAS S ^[$$^W3MAIN]W4CLKNET(MSDR,DT,MSD,OV,K)=ST
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSFDB
W3ANSFDB ; [ 05.07.26 11:33 ] [ 09.01.13 19:16 ] [ 19.06.12 12:04 ] 
 N (JB,%ARG,%REM)
 ;;M ^[$$^W3MAIN]LEVDB($H)=%ARG
 S FDB=$G(%ARG("FDB"))
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 N I
 F I=1:1:$L(FDB,";") D
 .S ANS=$P(FDB,";",I)
 .S HZW=$P(ANS,":")
 .S HZR=$P(ANS,":",2)
 .I 'HZW!'HZR Q
 .S $P(@$$^W3ORD(HZW)@(HZW,"S"),";",2)=2
 .S ^[$$^W3MAIN]W3ORDSND(HZW)=$H_";OK;;;"_HZR
 .;;D SNDMSH(HZW)
 Q
 ;
SNDMSH(HZW) ;
 N MSHORD,FLMSH,CMD
 S FLMSH="/pos/tmp/tmpmsh"_$R(10000000)
 S MSHORD=$$MSHORD(HZW)
 ;
 I MSHORD D
 .O FLMSH:(NEWVERSION:REWIND) U FLMSH
 .W "url=https://www.mishloha.co.il/rashad/approve_order.php?real_order_id="_MSHORD
 .C FLMSH
 .S CMD="curl -s -k -K "_FLMSH_" -o /tmp/mshou"
 .S ^[$$^W3MAIN]W3CMD($O(^W3CMD(99999999),-1)+1)=CMD
 .ZSY CMD
 .ZSY "rm -f "_FLMSH
 Q
 ;
MSHORD(HZW) ;
 N ASM
 S ASM=$$HZMLAK^W3HZMST(HZW)
 I ASM["/",$P(ASM,"/",2) S ASM=$P(ASM,"/",2)
 I $$MKR^W3HZMST(HZW)=12 Q ASM
 Q ""
 

W3ANSGAP
W3ANSGAP ; [ 05.07.26 11:34 ] [ 29.06.26 11:32 ] [ 09.06.26 16:01 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%W1ARG
 S FDB=$G(%ARG("FDB"))
 ;;S ^AA("W3ANSGAP","FDB")=$E(FDB,1,2000)
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 ;
 S DLM=","
 S MKT="MSDR,MSD,DT,MHIROT,SWEB,SWEBDLV,SDLV,SREST,SMAM,SBIT,ORDQ,WEBQ,DLWEBQ,RESTQ"
 S MKT=MKT_",SMIN,DLVNET,BRUTTO,SDISC,STAW,TAWQ,WEBDLVWQ,WEBTAWQ"
 D PRS^%L1FRM(FDB,MKT,DLM)
 ;;S ^AA("W3ANSGAP","MSDR")=$G(MSDR)
 ;;S ^AA("W3ANSGAP","MSD")=$G(MSD)
 ;
 F J=31:1:$L(FDB,",") D
 .S MKR=$P(FDB,",",J)
 .S M=$P(MKR,"~") Q:'M
 .S MQ(M)=$P(MKR,"~",2)
 .S MS(M)=$P(MKR,"~",3)
 ;
 ;;S ^AA("W3ANSGAP","DT")=$G(DT)
 I MSDR=""!(DT="")!(MSD="") Q
 S H=+$H
 S GL="^|"""_$$^W3MAIN_"""|W4GAPNET"
 S @GL@(MSDR,DT,MSD)=FDB
 S ^|$$^W3MAIN|W4NETSND(MSDR,MSD,H,DT)=$H_"\"_$ZD($H,"DD.MM.YY 24:60")
 S DD="",N="" F  S N=$O(^|$$^W3MAIN|W4NETSND(MSDR,MSD,H,N)) Q:N=""  S DD=DD_N_","
 S ^|$$^W3MAIN|W4NETSND(MSDR,MSD)=$H_"\"_$ZD($H,"DD.MM.YY 24:60")_"\"_$P(DD,",",1,$L(DD,",")-1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSIT
W3ANSIT ; [ 31.12.23 16:15 ] [ 06.02.23 13:50 ] [ 05.01.23 18:05 ] 
 ; -- W4PRTNET - WHAT ITEMS ACT  IN EITHER BRANCH
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSIT","ARG")=%ARG
 I '$G(%ARG("MSD")) D ERR("NOTREST") Q
 S MSD=$P(%ARG("MSD"),",")
 S MSDR=$G(%ARG("MSDR"))
 ; 
 I MSDR="" D
 .N N S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(N)) Q:N=""  I $D(^(N,MSD)) S MSDR=N Q
 ;
 I 'MSDR D ERR("NOTMSDR") Q
 ;
 D INIT^W4PRTNET ; -- 31.12.23
 K @$$^W4MAIN("TMPMA")
 ;
 D WRITEIT(MSDR,MSD)
 Q
 ;
 ;
WRITEIT(MSDR,MSD) ;
 N MSDF,UCI
 S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 I UCI="" D ERR("UCINOTFOUND") Q
 ;
 N N
 S FLAG=0
 ;
 U 0:(NOECHO:NOWRAP)
 ;
 D WRITEFLIT(UCI,MSD) 
 D WRITEFLGR(UCI,MSD) ;
 Q
 ;
 ;
WRITEFLIT(UCI,MSD) ;
 W "<ItemsGlobals>",!
 ;
 S N="" F  S N=$O(^[$$^W3MAIN]SHP("%GSPAR",N)) Q:N=""  D
 .N GL S GL=$$SPA^%L1FRM($G(^(N))) Q:$E(GL)'?1U
 .N GL1 S GL1="ITSRV"_GL
 .N CMD
 .S CMD="K ^|"""_UCI_"""|"_GL1 X CMD
 .S CMD="M ^|"""_UCI_"""|"_GL1_"=^|"""_UCI_"""|"_GL
 .X CMD
 .N GL11 S GL11="^|"""_UCI_"""|"_GL1
 .I '$D(@GL11) Q
 .D WR^W3G2F(GL11) ; --> SEND TO CLIENT
 .S FLAG=1
 ;
 I $G(^|UCI|P1PRM("LKNETSND")) D
 .N GL S GL="LKH"
 .N GL1 S GL1="LKSRV"
 .N CMD
 .S CMD="K ^|"""_UCI_"""|"_GL1 X CMD
 .S CMD="M ^|"""_UCI_"""|"_GL1_"=^|"""_UCI_"""|"_GL
 .X CMD
 .N GL11 S GL11="^|"""_UCI_"""|"_GL1
 .I '$D(@GL11) Q
 .D WR^W3G2F(GL11) ; --> SEND TO CLIENT
 .S FLAG=1
 ;
 I 'FLAG D ERR("NOTGLOBALS") G ITEND
 D
 .N GL1 S GL1="ITNET"
 .N GL11 S GL11="^|"""_UCI_"""|"_GL1
 .K @GL11
 .S CMD="M ^|"""_UCI_"""|"_GL1_"=^|"""_$$^W3MAIN_"""|W4PRTNET("""_MSD_""")"
 .X CMD
 .S @GL11=MSD
 .M ^|UCI|ITNET0(MSD)=@GL11
 .I '$D(@GL11) Q
 .D WR^W3G2F(GL11) ; -- SEND 2 CLIENT
 .S FLAG=2
 ;
 D ERR("OK")
ITEND W "</ItemsGlobals>",!
 Q
 ;
 ;
WRITEFLGR(UCI,MSD) ;
 W "<ItemGroups>",!
 D
 .N GL1 S GL1="GRNET"
 .N CMD S CMD="K ^|"""_UCI_"""|"_GL1 X CMD
 .S CMD="M ^|"""_UCI_"""|"_GL1_"=^|"""_$$^W3MAIN_"""|W4KVZNET("""_MSD_""")"
 .X CMD
 .N GL11 S GL11="^|"""_UCI_"""|"_GL1
 .I '$D(@GL11) Q
 .D WR^W3G2F(GL11) ; -- SEND 2 CLIENT
 .S FLAG=2
 ;
 D ERR("OK")
GREND W "</ItemGroups>",!
 Q
 ;
 ;
ERR(MSG) W "<Error>"_MSG_"</Error>",!
 Q
 ;
SEND(PRM) ; --- SEND 2 NET
 N DIR S DIR=$G(@$$^W4PRM@("IT2NET","DIR"))
 I DIR="" S DIR="/tmp/"
 N UCI,MSD
 S MSD=$G(@$$^W4PRM@("IT2NET","MSD"))
 I MSD="" S MSD=1
 S UCI=$G(^[$$^W3MAIN]UCI(MSD))
 I UCI="" Q "UCINOTFOUND"
 
 S FL=DIR_"w4it4net"
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION) U FL
 D WRITEFLIT(UCI,MSD) ;
 C FL
 ;
 N ADR S ADR=$G(@$$^W4PRM@("IT2NET","ADR"))
 I ADR="" Q "ADDRESSNOTDEFINED"
 N DIR2 S DIR2=$G(@$$^W4PRM@("IT2NET","DIR2"))
 I DIR2="" S DIR2="/tmp/"
 N PSW S PSW=""
 I $G(@$$^W4PRM@("IT2NET","PSW")) S PSW="-P 2222"
 N CMD S CMD="scp "_PSW_" "_FL_" "_ADR_":"_DIR2
 ZSY CMD
 I $ZSY'=0 Q "ERROR $ZSY="_$ZSY
 ZSY "rm "_FL
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSITS
W3ANSITS ; [ 29.09.21 15:22 ] [ 11.07.21 15:27 ] [ 26.05.21 09:45 ] 
 ;
 N (JB,%ARG,%REM)
 M ^AA("W3ANSITS","ARG")=%ARG
 I '$G(%ARG("MSD")) D ERR("NOTREST") Q
 ;
 S MSD=$P(%ARG("MSD"),",")
 S MSDR=$G(%ARG("MSDR"))
 ; 
 I 'MSDR D ERR("NOTMSDR") Q
 ;
 S DIR="/tmp/"
 S FL=DIR_"w4it4web."_MSDR_"-"_MSD
 ;
 I $$EXIST^%L1ZOS(FL) D
 .O FL:(REWIND:READONLY)
 .F  U FL R A Q:$ZEOF  D
 ..U 0 W A,!
 .C FL
 .ZSY "rm "_FL
 Q
 ;
 ;
ERR(PRM) ;
 D ERR^W3ANSIT($G(PRM))
 Q
 
 
 
 
 
 

W3ANSLK
W3ANSLK ; [ 05.07.26 11:53 ] [ 24.11.25 09:46 ] [ 11.08.24 12:36 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSLK","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DZ=$P(FDB,"^") Q:'DZ
 ;
 F I=2:1:$L(FDB,"^") D
 .S A=$P(FDB,"^",I)
 .S LKR=$P(A,"~") Q:LKR=""
 .S LKR1=$P(A,"~",2)
 .S LK=$P(A,"~",3) Q:LK=""
 .S LK1=$P(A,"~",4)
 .S HZ=$P(A,"~",5)
 .S HV=$P(A,"~",6)
 .S MAZM=$P(A,"~",7)
 .S TEL=$P(A,"~",8)
 .S SUGL=$P(A,"~",9)
 .S SUGL1=$P(A,"~",10)
 .
 .I MSDR=""!(DZ="")!(MSD="")!(LKR="")!(LK="")!(HZ="") Q
 .S DTTO=DZ
 .I HV["\" D
 ..S DTTO=$P(HV,"\",2),HV=+HV
 .S ^[$$^W3MAIN]W4LKTN(MSDR,DZ,MSD,LKR,LK,HZ)=HV_"*"_MAZM_"*"_TEL_"*"_SUGL_"*"_SUGL1_"*"_DTTO
 .I $G(LK1)'="" S ^[$$^W3MAIN]W4LK(LK,MSD)=LK1
 .I $G(LKR1)'="" S ^[$$^W3MAIN]W4LK(LKR,MSD)=LKR1
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSLKM
W3ANSLKM ; [ 05.07.26 11:53 ] [ 28.09.25 06:44 ] [ 26.09.25 09:17 ] 
 N (JB,%ARG)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 M ^W3ANSLKM(+$H,$P($H,",",2),"ARG")=%ARG
 ;
 S SH=0,ST=""
 S DLM=$$DLM
 S GL=$$GL
 ;
 S FUNC=$G(%ARG("FUNC"))
 I FUNC="" Q
 S MSDR=$G(%ARG("MSDR")) I MSDR="" Q
 S MSD=$G(%ARG("MSD")) I MSD="" Q
 S FDB=$G(%ARG("FDB")) Q:FDB=""
 S FDB=$$CNWEB^%L1FRM(FDB)
 ;
 I FUNC="SETLKH" D
 .S LK=$$GET(FDB,"CODE",DLM) Q:LK=""
 .;;S ^AA("W3ANSLKM","ST")=ST
 .S ST=$$RPL^%L1FRM(FDB,"%20"," ")
 .S LKH1=$$GET(FDB,"LKMNAME",DLM)
 .;;S ^AA("W3ANSLKM","LKH1")=LKH1
 .Q:LKH1?.P
 .D
 ..I '$D(@GL@(LK)) S @GL@(LK)=ST D GIB(LK) Q
 ..D UPD(ST,DLM,MSDR,MSD)
 .
 .S ST=$G(@GL@(LK))
 .W "<CustomData>"_$$SP(ST)_"</CustomData>",!
 .D PROT("CUSTOMDATA",ST)
 ;
 I FUNC="GETLKH" D  W $$SP(ST),!
 .S ST=""
 .S LK=$$GET(FDB,"CODE",DLM) Q:LK=""
 .S ST=$G(@GL@(LK))
 .W "<CustomData>"_$$SP(ST)_"</CustomData>",!
 .D PROT("CUSTOMDATA",ST)
 ;
 I FUNC="UPD" D UPD(FDB,DLM,MSDR,MSD)
 ;
 I FUNC="SRCH" D SRCH(FDB,DLM,MSDR)
 Q
 ;
 ;
GET(ST,RKV,DLM);
 I $G(DLM)="" S DLM=$$DLM
 N VL
 S ST=DLM_ST_DLM
 S VL=$P($P(ST,DLM_RKV_"=",2),DLM)
 Q VL
 ;
GETL(LK,RKV,DLM)
 I $G(DLM)="" S DLM=$$DLM
 I $G(MSDR)="" S MSDR=$$MSDR
 N GL S GL=$$GL
 N ST S ST=$G(@GL@(LK))
 Q $$GET(ST,RKV,DLM);
 ;
GL() ;
 Q "^|$$^W3MAIN|WLKMNET(MSDR)"
 ;
GL0() ;
 Q "^|$$^W3MAIN|WLKMNET0(MSDR)"
 ;
 ;
UPD(FDB,DLM,MSDR,MSD)
 N (JB,%ARG,FDB,DLM,MSDR,MSD)
 I $G(DLM)="" S DLM=$$DLM
 ;
 S LK=$$GET(FDB,"CODE",DLM) Q:LK=""
 S GL=$$GL
 N STOLD S STOLD=$G(@GL@(LK))
 S FDB=$$DELRKV(FDB,"CODE",DLM)
 ;
 F I=1:1:$L(FDB,DLM) D
 .S COUPL=$P(FDB,DLM,I)
 .S NM=$P(COUPL,"=")
 .S VL=$P(COUPL,"=",2)
 .I NM="LKMNKD" S VL0=VL,VL=+VL
 .S OK=0
 .I NM?1U.E D
 ..F J=1:1:$L(STOLD,DLM) D
 ...S NMOLD=$P($P(STOLD,DLM,J),"=")
 ...I NMOLD=NM D
 ....S STOLD=$P(STOLD,DLM,1,J-1)_DLM_NM_"="_VL_DLM_$P(STOLD,DLM,J+1,$L(STOLD,DLM))
 ....I NM="LKMNKD" D SETLKMNKD(LK,MSD,VL0)
 ....S OK=1
 ..I 'OK S STOLD=STOLD_DLM_NM_"="_VL I NM="LKMNKD" D SETLKMNKD(LK,MSD,VL0)
 ;
 S @GL@(LK)=STOLD D GIB(LK)
 W "<CustomData>"_$$SP(STOLD)_"</CustomData>",!
 D PROT("CUSTOMDATA",STOLD)
 Q
 ;
 ;
SRCH(FDB,DLM,MSDR)
 N (JB,%ARG,FDB,DLM,MSDR)
 I $G(DLM)="" S DLM=$$DLM
 S GL=$$GL
 ;
 F I=1:1:$L(FDB,DLM) D
 .S COUPL=$P(FDB,DLM,I)
 .S NM=$P(COUPL,"=")
 .S NM=$$SPA^%L1FRM(NM)
 .S VL=$P(COUPL,"=",2)
 .S VL=$$SPA^%L1FRM(VL)
 .I NM?1U.E,VL'="" S M(NM)=VL 
 ;
 S ANS=""
 S LK="" F  S LK=$O(@GL@(LK)) Q:LK=""  D
 .S STGL=$G(^(LK)),OK=1
 .F J=1:1:$L(STGL,DLM) D  Q:'OK
 ..S NMGL=$P($P(STGL,DLM,J),"=")
 ..S NMGL=$$SPA^%L1FRM(NMGL)
 ..S VLGL=$P($P(STGL,DLM,J),"=",2)
 ..S VLGL=$$SPA^%L1FRM(VLGL)
 ..I $G(M("LKMNAME"))'="",NMGL="LKMNAME",'$$SRCH^W1SRCH(VLGL,M("LKMNAME"),1) S OK=0 Q
 ..I $G(M("TEL"))'="",NMGL="TEL",M("TEL")'=VLGL,M("PELE")'=VLGL S OK=0 Q
 ..I $G(M("TZ"))'="",NMGL="TZ",M("TZ")'=VLGL S OK=0 Q
 .I OK S ANS=ANS_"CODE="_LK_DLM_STGL_"^"
 ;
 W "<SearchResult>"_$$SP(ANS)_"</SearchResult>",!
 D PROT("SRCHRES",ANS)
 Q
 ;
 ;
DELRKV(STOLD,RKV,DLM) ;
 N (JB,%ARG,STOLD,RKV,DLM)
 ;
 I $G(DLM)="" S DLM=$$DLM
 ;
 F I=1:1:$L(RKV,DLM) D
 .S NM=$P(RKV,DLM,I)
 .S OK=0
 .I NM?1U.E D
 ..F J=1:1:$L(STOLD,DLM) D
 ...S NMOLD=$P($P(STOLD,DLM,J),"=")
 ...I NMOLD=NM D
 ....S STOLD=$P(STOLD,DLM,1,J-1)_DLM_$P(STOLD,DLM,J+1,$L(STOLD,DLM))
 ;
 Q STOLD
 ;
 ;
DELRKVLK(LK,RKV,DLM) ;
 I $G(LK)="" Q ""
 S GL=$$GL
 I $G(DLM)="" S DLM=$$DLM
 N STOLD S STOLD=$G(@GL@(LK))
 I $G(RKV)="" Q STOLD
 S STOLD=$$DELRKV(STOLD,RKV,DLM)
 Q STOLD
 ;
 ;
DELRKVLKS(LK,RKV,DLM) ;
 I $G(LK)="" Q
 I $G(DLM)="" S DLM=$$DLM
 N STOLD S STOLD=$$DELRKVLK(LK,RKV,DLM)
 S @GL@(LK)=STOLD D GIB(LK)
 W "<CustomData>"_$$SP(STOLD)_"</CustomData>",!
 D PROT("CUSTOMDATA",STOLD)
 Q
 ;
SETLKMNKD(LK,MSD,RKV)
 N HZ,BON,H,NKDHZ,NKD
 D PRS^%L1FRM(RKV,"NKD~NKDHZ~BON~HZ~DZ~H","~")
 S @GL@(LK,"LKMNKD",+DZ,+MSD,+HZ)=NKDHZ_"*"_BON_"*"_H
 D GIB(LK)
 Q
 ;
MSDR() ;
 I $G(%ARG("MSDR")) Q %ARG("MSDR")
 Q $$GETP^%W1PRM("MSDR")
 ;
DLM()
 Q "<>"
 ;
GIB(LK) ;
 N GL0 S GL0=$$GL0 
 M @GL0@(LK)=@GL@(LK) 
 Q 
 ;
PROT(TAG,ST) ; 
 I $G(TAG)="" Q
 S ^W3ANSLKM(+$H,$P($H,",",2),TAG)=$E($G(ST),1,3000)
 Q
 ;
SP(ST) ; 
 Q $$RPL^%L1FRM(ST," ","%20") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSMNY
W3ANSMNY ; [ 05.07.26 11:54 ] [ 29.09.21 15:23 ] [ 27.12.20 12:14 ] 
 N (JB,%ARG,%REM)
 S FDB=$G(%ARG("FDB"))
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DZ=$P(FDB,"\") Q:'DZ
 S ^[$$^W3MAIN]W4MNYALL(DZ,MSD)=$P(FDB,"\",2,200)
 Q
 
 
 
 

W3ANSMSL
W3ANSMSL ; [ 05.07.26 11:54 ] [ 22.10.17 18:48 ] [ 04.11.09 12:55 ] 
 N (JB,%ARG,%REM)
 S FDB=$G(%ARG("FDB"))
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 N I
 F I=1:1:$L(FDB,";") D
 .S ANS=$P(FDB,";",I)
 .S HZW=$P(ANS,"-")
 .S HZR=$P(ANS,"-",2)
 .S TIME=$P(ANS,"-",3) I TIME="" S TIME=$$T^%L1TIME($H)
 .S PSLN=$P(ANS,"-",4)
 .I 'HZW!'HZR Q
 .I $D(^[$$^W3MAIN]W3ORD(HZW,"M")) Q
 .S ^[$$^W3MAIN]W3ORD(HZW,"M")=TIME
 .S ^[$$^W3MAIN]W3ORD(HZW,"PSLN")=PSLN
 Q
 
 

W3ANSMZB
W3ANSMZB ; [ 14.08.24 03:50 ] [ 12.08.24 07:11 ] [ 06.08.24 15:33 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSMZB","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S DZ=$P(FDB,"^") Q:'DZ
 ;
 F I=2:1:$L(FDB,"^") D
 .S A=$P(FDB,"^",I)
 .S HZ=$P(A,"~") Q:HZ=""
 .S MZB=$P(A,"~",2)
 .S SHAA=$P(A,"~",3)
 .S MAZMIN=$P(A,"~",4)
 .S TEL=$P(A,"~",5)
 .
 .S ^[$$^W3MAIN]W4MZB(MSDR,DZ,MSD,HZ)=MZB_"*"_SHAA_"*"_MAZMIN_"*"_TEL
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSMZV
W3ANSMZV ; [ 05.07.26 11:56 ] [ 29.09.21 15:21 ] [ 18.02.18 10:14 ] 
 N (JB,%ARG,%REM)
 S FDB=$G(%ARG("FDB"))
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DZ=$P(FDB,"~") Q:'DZ
 ;;S IND=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)
 S ^[$$^W3MAIN]W4MSDMZV(MSD,DZ)=FDB
 Q
 
 
 
 
 
 

W3ANSPAY
W3ANSPAY ; [ 05.07.26 11:54 ] [ 01.08.24 11:49 ] [ 01.02.11 23:21 ] 
 N (JB,%ARG,%REM)
 S FDB=$G(%ARG("FDB"))
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 N I
 F I=1:1:$L(FDB,";") D
 .S PRPAY=1
 .S ANS=$P(FDB,";",I)
 .S HZW=$P(ANS,":")
 .I HZW["!" S HZW=+HZW,PRPAY=0
 .S HZR=$P(ANS,":",2)
 .I 'HZW!'HZR Q
 .I HZR["D",'$D(^[$$^W3MAIN]W3ORD(HZW,"D")) D  Q
 ..S ^[$$^W3MAIN]W3ORD(HZW,"D")=$P(HZR,"-",2)_"~"_$P(HZR,"-",3)
 .I PRPAY S ^[$$^W3MAIN]HZLINKWI(HZW)=HZR_"\"_$H
 Q
 
 

W3ANSPOS
W3ANSPOS ; [ 05.07.26 11:55 ] [ 29.06.26 08:18 ] [ 14.06.26 19:01 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSPOS","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DZ=$P(FDB,"^") Q:'DZ
 ;
 F I=2:1:$L(FDB,"^") D
 .S A=$P(FDB,"^",I)
 .S EMDA=$P(A,"~") S:EMDA="" EMDA="-"
 .S NMB=$P(A,"~",2) S:NMB="" NMB="-"
 .S HZ=$P(A,"~",3) S:HZ="" HZ="-"
 .S DATCB=$P(A,"~",4)
 .S SHAA=$P(A,"~",5)
 .S MKBL1=$P(A,"~",6)
 .S TS=$J($P(A,"~",7),2,2)
 .S MZ=$J($P(A,"~",8),2,2)
 .S AV=$J($P(A,"~",9),2,2)
 .S CA=$J($P(A,"~",10),2,2)
 .S ASR=$J($P(A,"~",11),2,2)
 .S ^[$$^W3MAIN]W4POSNET(MSDR,DZ,MSD,EMDA,HZ)=NMB_"*"_DATCB_"*"_SHAA_"*"_MKBL1_"*"_TS_"*"_MZ_"*"_AV_"*"_CA_"*"_ASR
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSPRP
W3ANSPRP ; [ 05.07.26 11:55 ] [ 01.08.23 12:08 ] [ 31.07.23 15:10 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSPRP","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DZ=$P(FDB,";") Q:'DZ
 S TIM=$P(FDB,";",2) Q:'TIM
 ;
 S ^[$$^W3MAIN]W4DLVPRP(MSDR,DZ,MSD)=TIM
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSSL
W3ANSSL ; [ 23.07.25 12:04 ] [ 29.05.25 08:59 ] [ 23.10.23 03:23 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;M ^AA("W3ANSSL","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S DLM="*"
 ;
 F I=1:1:$L(FDB,"^")-1 D
 .S ST=$P(FDB,"^",I)
 .S DT=$P(ST,DLM) Q:'DT
 .S SL=$P(ST,DLM,2) Q:'SL
 .S HZ=$P(ST,DLM,5) Q:'HZ
 .S ^[$$^W3MAIN]W4SLNET(MSDR,DT,MSD,SL,HZ)=ST
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSTFK
W3ANSTFK ; [ 05.07.26 11:57 ] [ 08.04.24 15:55 ] [ 23.10.23 03:23 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSTFK","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DLM="~"
 S DT=$P(FDB,"~",2) Q:DT=""
 ;
 F I=2:1:$L(FDB,"^") D
 .S ST=$P(FDB,"^",I) Q:ST=""
 .S ^[$$^W3MAIN]W4TFKNET(MSDR,DT,MSD,I)=$TR(ST,"~","*")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSTIM
W3ANSTIM ; [ 05.07.26 11:57 ] [ 09.02.22 09:33 ] [ 03.02.22 11:57 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSTIM","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DZ=$P(FDB,";") Q:'DZ
 ;
 F I=2:1:$L(FDB,";") D
 .S A=$P(FDB,";",I)
 .S IR=$P(A,"~") Q:IR=""
 .S TIM=$P(A,"~",2)
 .S SHZ=$P(A,"~",3)
 .S ^[$$^W3MAIN]W4DLVTIM(MSDR,DZ,MSD,IR)=TIM_"~"_SHZ
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSZ
W3ANSZ ; [ 05.07.26 11:58 ] [ 14.05.23 11:24 ] [ 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSZ","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DT=$P(FDB,"~") Q:'DT
 S ST=$P(FDB,"~",2,200)
 S ^[$$^W3MAIN]W4MNYZ(DT,MSD)=ST
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSZ4W
W3ANSZ4W ; [ 22.09.26 09:23 ] [ 05.07.26 11:57 ] [ 28.05.26 09:20 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSZ4W","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DT=$P(FDB,"~")
 S FDB=$P(FDB,"~",2,200)
 S DLM="*"
 ;
 F I=1:1:$L(FDB,"^")-1 D
 .S ST=$P(FDB,"^",I) Q:ST=""
 .D PRS^%L1FRM(ST,"HZM*SUGT*NOM*OK*SUM*TRID*ER*ER1*HZBIT","*")
 .Q:HZM=""
 .I SUGT="" S SUGT="-"
 .I NOM="" S NOM="-"
 .S ^[$$^W3MAIN]W4NETZ4W(MSDR,DT,MSD,HZM,SUGT,NOM)=OK_"\"_SUM_"\"_TRID_"\"_ER_"\"_ER1_"\"_HZBIT
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ANSZIC
W3ANSZIC ; [ 05.07.26 11:57 ] [ 28.05.26 09:20 ] [ 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 M ^AA("W3ANSZIC","ARG")=%ARG
 ;
 S FDB=$G(%ARG("FDB"))
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S MSD=$P($G(%ARG("MSD")),",") Q:MSD=""
 ;
 I '$L(FDB) Q
 S FDB=$$CNWEB^%L1FRM(FDB)
 S DT=$P(FDB,"~")
 S FDB=$P(FDB,"~",2,200)
 S DLM="*"
 ;
 F I=1:1:$L(FDB,"^")-1 D
 .S ST=$P(FDB,"^",I) Q:ST=""
 .D PRS^%L1FRM(ST,"HZM*SUGT*NOM*OK*SUM*NCA*TRID*ER*ER1*REFID*MNL*NAME*SIBA1*H","*")
 .Q:HZM=""
 .I SUGT="" S SUGT="-"
 .I NOM="" S NOM="-"
 .S ^[$$^W3MAIN]W4NETZIC(MSDR,DT,MSD,HZM,SUGT,NOM)=OK_"\"_SUM_"\"_NCA_"\"_TRID_"\"_ER_"\"_ER1_"\"_REFID_"\"_MNL_"\"_NAME_"\"_SIBA1_"\"_H
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3AS
W3AS ; [ 31.08.23 14:09 ] [ 03.02.18 20:18 ] [ 10.02.14 19:06 ] 
 S ^flag("ASK")=0
 K ^flag("ASK")
 D ^W3ASK
 Q
 
 
 

W3ASK
W3ASK ; [ 14.07.26 09:59 ] [ 07.07.26 04:34 ] [ 25.06.26 15:44 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB) S JB=$$^%W1SsID
 I $$^%L1FLAG("^flag(""ASK"")") Q
 D SETFLAG
 N (JB) D INIT
 S SHASK=0,SHER=0 ;;D ^W3ASKFDN
 ;
ASK S $ZT="ZG "_$ZL_":ER^W3ASK"
 I $G(^STLOOP("PC")) K ^flag("ASK") Q
 I $$^%L1FLAG("^flag(""ASK"")") Q
 D SETFLAG
 ;
 K @GL,@GL1
 S NOMTB=$O(^[$$^W3MAIN]TMPASKA(999999),-1)+1
 ;
 S SHASK=SHASK+1 I '(SHASK#3) H  ; -- NEW LOAD PROGRAMM
 ;
 D READITEMS
 ; 
 D READRSTG 
 ;
 D RESTSTATUS
 ;
 D READASKSND 
 ;
 D DOCMD
 ;
 D ^W3ASKFDN
 ;
 I $$^W3ASKGET<0 S SHER=SHER+1 H 20 G ASK ; --- GET ORDERSLIST --> GL (^TMPASK)
 ;
 S I=0
CYC S I=I+1 ;------ READ ORDERS WAS GETTING FROM SERVER
 I $G(^STLOOP("PC")) K ^flag("ASK") Q
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 I A[("<"_ListOrd) D READORDS G END
 G CYC
 ;
END D KILLTMP
 Q  ;;H 60 G ASK ; *** 03/09/23
 ;
 ;
KILLTMP ;
 K ^[$$^W3MAIN]TMPASK(MYDVN)
 Q
 ;
MYDVN ;
 S MYDVN=$$^%L3MYDVN
 Q
 ;
GET(I,EL,PARENT)
 Q $$GET^W3ASKORD($G(I),$G(EL),$G(PARENT))
 ;
FIND(I,EL,PARENT,PR) ;
 Q $$FIND^W3ASKORD($G(I),$G(EL),$G(PARENT),$G(PR))
 ;
FINDEND(I,EL,PARENT) ;
 Q $$FINDEND^W3ASKORD($G(I),$G(EL),$G(PARENT))
 ;
INIT ;
 D PUT^%W1PRM("ELPOS",1)
 D MYDVN
 D KILLTMP
 D INITTAG
 D GL,GL1
 Q
 ;
INITTAG ;
 S ListOrd="OrdersList"
 S Header="OrderHeader"
 S Order="Order"
 S OrdId="OrderNumber"
 S Content="OrderContent"
 S Error="Error"
 ;
 S Rest2Rest="Rest2RestOrders"
 S RestStatus="RestStatus"
 S DlvSends="DlvSends"
 S Rest2MM="Rest2MMOrders"
 S SendedOrder="SendedOrder"
 S Items4Web="ItemsGlobals"
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPASK(MYDVN)" Q
GL1 S GL1="^[$$^W3MAIN]TMPASK1(MYDVN)" Q
 ;
SENDOK ;
 D ^W3ASKFDB
 Q
 ;
ER ;
 K ^flag("ASK")
 D SVER^%L1X
 ;H 20
 ;G ASK
 ;
SETFLAG ;
 I '$G(^flag("ASK")) S ^flag("ASK")=$J,^flag("ASK","TIME")=$H
 Q
 ;
 ;
READORDS ; 
 S BGLO=I
 S ERR=$$GET(BGLO,Error,ListOrd)
 I ERR'="OK" S I=$$FINDEND(BGLO,ListOrd,"") Q
 ;
 S BGOI=BGLO
CYCORD S BGOI=$$FIND(BGOI,Order,ListOrd)
 I 'BGOI D  S I=$$FINDEND(BGOI,Order,ListOrd) Q
 .D SENDOK
 ;
 S ORDNMB=$$GET(BGOI,OrdId,Order) Q:'ORDNMB
 D ^W3ASKORD(ORDNMB,BGOI)
 ;
ENDORD S BGOI=$$FINDEND(BGOI,Order,ListOrd)
 G CYCORD
 Q
 ;
 ;
REST2REST
 S BGOI=I ;
CYC11 S BGOI=$$FIND(BGOI,SendedOrder,Rest2Rest)
 I 'BGOI S I=$$FINDEND(BGOI,SendedOrder,Rest2Rest) Q
 S A=$G(^(BGOI))
 S ORDNMB=$P($P(A,"<"_SendedOrder_">",2),"</"_SendedOrder_">")
 I ORDNMB,'$$^P1TFN D
 .S $P(^P1HZ2MSD(ORDNMB),"\",3)="OK"
 .N NUM S NUM=$P($G(^P1HZ2MSD(ORDNMB)),"\",2) Q:'NUM
 .I $D(^TXTFAX(NUM)) D
 ..M ^TXTFAXA(NUM)=^TXTFAX(NUM)
 ..K ^TXTFAX(NUM)
 ;
 I ORDNMB,$$^P1TFN,$D(^ZKUCI)>9 D
 .N OK S OK=0 ;
 .S INDZK="" F  S INDZK=$O(^ZKUCI(INDZK)) Q:INDZK=""  D  Q:OK
 ..S UCI=$P(^(INDZK),"\") Q:UCI=""
 ..N DAT S DAT=$P($G(^[UCI]P1HZ2MSD(ORDNMB)),"  ") I $$^%L1DC(DAT,3)'=+$H Q
 ..;
 ..N NUM S NUM=$P($G(^[UCI]P1HZ2MSD(ORDNMB)),"\",2) Q:'NUM
 ..I $D(^[UCI]TXTFAX(NUM)) D
 ...M ^[UCI]TXTFAXA(NUM)=^[UCI]TXTFAX(NUM)
 ...K ^[UCI]TXTFAX(NUM)
 ...S $P(^[UCI]P1HZ2MSD(ORDNMB),"\",3)="OK"
 ...S OK=1
 ;
 G CYC11
 Q
 ; 
 ;
REST2MM ; 
 S BGOI=I ;
CYC12 S BGOI=$$FIND(BGOI,SendedOrder,Rest2MM)
 I 'BGOI S I=$$FINDEND(BGOI,SendedOrder,Rest2MM) Q
 S A=$G(^(BGOI))
 ;
 S ORDNMB=$P($P(A,"<"_SendedOrder_">",2),"</"_SendedOrder_">")
 ;
 I ORDNMB D
 .N IND S IND=($H-3)_"00000"
 .F  S IND=$O(^P1SND2MA(IND)) Q:IND=""  I $G(^(IND))'="OK" D
 ..I $E(IND,11,20)=ORDNMB S ^(IND)="OK"
 G CYC12
 Q
 ;
 ;
ITEMS4WEB(GL) ;
 ;;N NOKILLGL S NOKILLGL=""
 D IT4WEB^W3ASKIT(GL)
 Q
 ;
READITEMS ; 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(@$$^W4PRM@("IT4WEB")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSD")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSDR")) Q
 ;
 S FILEINI=$$INDBI^W3ASKPTH
 S URLI=$$^W3ASKURL_"w3ansits.jsp"
 S PRM="MSD="_$G(@$$^W4PRM@("IT4WEB","MSD"))_"&MSDR="_$G(@$$^W4PRM@("IT4WEB","MSDR"))
 N FDB S FDB=""
 ;
 D SEND^W3ASKFD1(FILEINI,URLI,PRM,FDB) ; --> FILE
 ;
 ;;I $$EXIST^%L1ZOS(FILEINI) C FILEINI:(DELETE)
 ;;O FILEINI:(NEWVERSION:REWIND)
 ;;U FILEINI W "url="_URLI_PRM C FILEINI
 ;
 ;;N FILE S FILE=$$OU^W3ASKPTH
 ;;I $$^%L1ZOS(2,FILE)
 ;;ZSY "curl -s -m 25 -o "_FILE_" -K "_FILEINI
 ;;I $ZSY'=0 S @$$^W4GL("W4ITPROT")@(+$H,"W3ASK-READITEMS",$P($H,",",2))=$ZSY Q
 ;
 I '$$EXIST^%L1ZOS(FILE) D  Q
 .S @$$^W4GL("W4ITPROT")@(+$H,"W3ASK-READITEMS",$P($H,",",2))=$ZSY_"\NOT ANSWER" 
 ;
 D GL^W3ASK
 D READFILE^W3ASKGET(FILE,GL)
 ;
 I $D(@GL)<10 Q
 D ITEMS4WEB(GL)
 K @GL
 Q
 ;
 ; 
READRSTG ; 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(@$$^W4PRM@("IT4WEB")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSD")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSDR")) Q
 ;
 S FILEINI=$$INDBI^W3ASKPTH
 S URLI=$$^W3ASKURL_"w3rstgask.jsp"
 S PRM="MSD="_$G(@$$^W4PRM@("IT4WEB","MSD"))_"&MSDR="_$G(@$$^W4PRM@("IT4WEB","MSDR"))
 ;
 ;;I $$EXIST^%L1ZOS(FILEINI) C FILEINI:(DELETE)
 ;;O FILEINI:(NEWVERSION:REWIND)
 ;;U FILEINI W "url="_URLI_PRM C FILEINI
 ;;
 ;;N FILE S FILE=$$OU^W3ASKPTH
 ;;I $$^%L1ZOS(2,FILE)
 ;;N CMD S CMD="curl -s -m 25 -o "_FILE_" -K "_FILEINI
 ;;ZSY CMD
 ;
 N FDB S FDB=""
 D SEND^W3ASKFD1(FILEINI,URLI,PRM,FDB) ; --> FILE
 ;
 ;;S @$$^W4GL("W4RDRSTG")@(+$H,"W3ASK-READRSTG",$P($H,",",2),"CMD")=CMD
 I '$$EXIST^%L1ZOS(FILE) D
 .S @$$^W4GL("W4RDRSTG")@(+$H,"W3ASK-READRSTG",$P($H,",",2))=$ZSY_"\NOT ANSWER"
 ;
 D GL^W3ASK
 D READFILE^W3ASKGET(FILE,GL)
 N N I '$G(JB) S JB=1
 ;
 ;;M ^AA("W3ASK-READRSTG",GL)=@GL
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D 
 .S A=$G(^(N))
 .I A["<Date>" D 
 ..S DAT=$P(A,"<Date>",2)
 ..S DAT=$P(DAT,"</Date>")
 ..I DAT,DAT'["^" D ^W4RSTGSN(JB,DAT) H 3 D ^W4ZRSTG(JB,DAT,DAT,1) Q
 ..
 ..I DAT,DAT["^" J RSTGSND(JB,DAT)
 Q 
 ;
 ;
RESTSTATUS ; 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(@$$^W4PRM@("IT4WEB")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSD")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSDR")) Q
 ;
 S FILEINI=$$INDBI^W3ASKPTH
 S URLI=$$^W3ASKURL_"w3getstat.jsp"
 ;
 S MYMSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 S MYMSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 I MYMSD="" S MYMSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MYMSDR="" S MYMSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MYMSD=""!(MYMSDR="") Q
 ;
 S PRM="MSD="_MYMSD_"&MSDR="_MYMSDR
 S PRM=PRM_"&FDB="_$$^W4DZ
 ;
 ;;I $$EXIST^%L1ZOS(FILEINI) C FILEINI:(DELETE)
 ;;O FILEINI:(NEWVERSION:REWIND)
 ;;U FILEINI W "url="_URLI_PRM C FILEINI
 ;;
 N FILE S FILE=$$OU^W3ASKPTH
 ;
 ;;I $$^%L1ZOS(2,FILE)
 ;;ZSY "curl -s -m 25 -K "_FILEINI_" -o "_FILE
 ;;I $ZSY'=0 S @$$^W4GL("W4ITPROT")@(+$H,"W3ASK-READITEMS",$P($H,",",2))=$ZSY Q
 ;
 N FDB S FDB=""
 D SEND^W3ASKFD1(FILEINI,URLI,PRM,FDB) ; --> FILE
 ;
 D GL^W3ASK
 D READFILE^W3ASKGET(FILE,GL)
 ;
 S RestStatus="RestStatus"
 N A,A1,DT,TM,N,OKEND
 S DT=$$^W4DZ
 S TM=$ZD($H,"24:60")
 S OKEND=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OKEND
 .S A=$G(^(N))
 .I A[("</"_RestStatus_">") S OKEND=1 Q
 .I A["<RestStatusData>" D
 ..S A1=$P(A,"<RestStatusData>",2)
 ..S A1=$P(A1,"</RestStatusData>")
 ..I $P(A1,"~")'=MYMSD Q
 ..S ^W4MSDSTA(DT,TM)=A1
 ;
 S OKEND=0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OKEND
 .S A=$G(^(N))
 .I A[("</DlvSends>") S OKEND=1 Q
 .I A["<DlvSendsData>" D
 ..S A1=$P(A,"<DlvSendsData>",2)
 ..S A1=$P(A1,"</DlvSendsData>")
 ..I $P(A1,"~")'=MYMSD Q
 ..S ^W4MSLSTA(DT,TM)=A1
 Q 
 ;
 ;
READASKSND ; 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(@$$^W4PRM@("IT4WEB")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSD")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSDR")) Q
 ;
 S FILEINI=$$INDBI^W3ASKPTH
 S URLI=$$^W3ASKURL_"w3netsndask.jsp"
 S PRM="MSD="_$G(@$$^W4PRM@("IT4WEB","MSD"))_"&MSDR="_$G(@$$^W4PRM@("IT4WEB","MSDR"))
 ;
 ;;I $$EXIST^%L1ZOS(FILEINI) C FILEINI:(DELETE)
 ;;O FILEINI:(NEWVERSION:REWIND)
 ;;U FILEINI W "url="_URLI_PRM C FILEINI
 ;
 N FILE S FILE=$$OU^W3ASKPTH
 ;;I $$^%L1ZOS(2,FILE)
 ;;N CMD S CMD="curl -s -m 25 -o "_FILE_" -K "_FILEINI
 ;;ZSY CMD
 ;;Q:$ZSY
 ;
 N FDB S FDB=""
 D SEND^W3ASKFD1(FILEINI,URLI,PRM,FDB) ; --> FILE
 ;
 D GL^W3ASK
 D READFILE^W3ASKGET(FILE,GL)
 N N I '$G(JB) S JB=1
 ;
 ;;M ^AA("W3ASK-NTSND",GL)=@GL
 ;;N NOAMER S NOAMER=0
 ;;I '$G(AMER) S NOAMER=1
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D 
 .S A=$G(^(N))
 .I A["<Date>" D 
 ..S DAT=$P(A,"<Date>",2)
 ..S DAT=$P(DAT,"</Date>")
 ..
 ..I DAT,DAT["^" D
 ...N D1,D2
 ...S D1=$$^%L1DC($P(DAT,"^",1),3)
 ...S D2=$$^%L1DC($P(DAT,"^",2),3)
 ...S AMER=$P(DAT,"^",3)
 ...I D2<D1 S D2=D1
 ...N DT F DT=D1:1:D2 D
 ....D SNDGAP^W4ZACT(DT) H 5 ;D ^W4GAPNET(JB,DT)
 ....;;I $G(AMER) D ^W4GAP(JB,DT)
 Q 
 ;
 ;
DOCMD ; 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(@$$^W4PRM@("IT4WEB")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSD")) Q
 I '$G(@$$^W4PRM@("IT4WEB","MSDR")) Q
 ;
 S FILEINI=$$INDBI^W3ASKPTH
 S URLI=$$^W3ASKURL_"w3docmd.jsp"
 ;
 S MYMSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 S MYMSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 I MYMSD="" S MYMSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MYMSDR="" S MYMSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MYMSD=""!(MYMSDR="") Q
 ;
 S PRM="MSD="_MYMSD_"&MSDR="_MYMSDR
 ;
 ;;I $$EXIST^%L1ZOS(FILEINI) C FILEINI:(DELETE)
 ;;O FILEINI:(NEWVERSION:REWIND)
 ;;U FILEINI W "url="_URLI_PRM C FILEINI
 ;;
 N FILE S FILE=$$OU^W3ASKPTH
 ;;I $$^%L1ZOS(2,FILE)
 ;;ZSY "curl -s -m 25 -K "_FILEINI_" -o "_FILE
 ;
 N FDB S FDB=""
 D SEND^W3ASKFD1(FILEINI,URLI,PRM,FDB) ; --> FILE
 ;
 D GL^W3ASK
 D READFILE^W3ASKGET(FILE,GL)
 ;
 S OKEND=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N))
 .I A["<DoCmd>" D
 ..S A1=$P(A,"<DoCmd>",2)
 ..S A1=$P(A1,"</DoCmd>")
 ..I A1="" Q
 ..S REST=$P(A1,"<>") I REST'=MYMSD Q
 ..S A1=$P(A1,"<>",2,200)
 ..I A1="" Q
 ..S ^W4DOCMD(+$H,$P($H,",",2))=A1
 ..X A1
 Q 
 ;
 ;
RSTGSND(JB,DAT)
 N D1,D2
 S D1=$$^%L1DC($P(DAT,"^",1),3)
 S D2=$$^%L1DC($P(DAT,"^",2),3)
 ;
 I D2<D1 D  Q
 .D ^W4RSTGSN(JB,D1) H 3 D ^W4ZRSTG(JB,D1,D1,1) Q
 ;
 N DT F DT=D1:1:D2 D
 .D ^W4RSTGSN(JB,DT) H 5 D ^W4ZRSTG(JB,DT,DT,1) H 5 Q
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ASKDU0
W3ASKDUP ; duplicate selected W3ASK outbound calls to new PPJ server [ 05.07.26 10:55 ] [ 02.07.26 10:13 ] [ 29.06.26 10:58 ] 
 ;
SEND(FILEIN,URL,PRM,FDB) ;
 N $ZT S $ZT="ZG "_$ZL_":ERR^W3ASKDUP"
 I '+$G(^P1PRM("WEB","DUAL_SEND_NEW")),'$$PAPJ^W4PRM Q
 N SRV,TOKEN
 S SRV=$G(^P1PRM("WEB","SRVADDR_NEW")) Q:SRV=""
 S TOKEN=$G(^P1PRM("WEB","SYNC_TOKEN_NEW")) Q:TOKEN=""
 N EP S EP=$P(URL,"/",$L(URL,"/")) Q:EP=""
 ;;I ",w3ansfdb.jsp?,w3anspay.jsp?,w3ansmsl.jsp?,w3ansstat.jsp?,"'[(","_EP_",") Q
 N URLN S URLN=$$BASE(SRV)_EP
 N FILE2 S FILE2=FILEIN_".new"
 C FILE2:(DELETE)
 O FILE2:(NEWVERSION:REWIND)
 U FILE2
 W "url="_URLN_PRM_"&FDB="_FDB,!
 W "header=""X-ELPOS-SYNC-TOKEN: "_TOKEN_"""",!
 C FILE2
 N CMD S CMD="curl -s -m 35 -k -K "_FILE2
 ZSY CMD
 D LOG(CMD,$ZSY)
 H 1 C FILE2:(DELETE)
 Q
 ;
BASE(SRV) ;
 I $E(SRV,1,4)="http" Q SRV_$S($E(SRV,$L(SRV))="/":"",1:"/")_"mumps-examples/jsp/"
 Q "https://"_SRV_"/mumps-examples/jsp/"
 ;
LOG(CMD,RC) ;
 S @$$^W4GL("W3ASKDUP")@(+$H,$P($H,",",2))=CMD_"~"_RC
 Q
 ;
SET(SRV,TOKEN) ;
 I $G(SRV)'="" S ^P1PRM("WEB","SRVADDR_NEW")=SRV
 I $G(TOKEN)'="" S ^P1PRM("WEB","SYNC_TOKEN_NEW")=TOKEN
 S ^P1PRM("WEB","DUAL_SEND_NEW")=1
 W "DUAL_SEND_NEW=",^P1PRM("WEB","DUAL_SEND_NEW"),!
 W "SRVADDR_NEW=",^P1PRM("WEB","SRVADDR_NEW"),!
 W "SYNC_TOKEN_NEW is set",!
 Q
 ;
OFF ;
 S ^P1PRM("WEB","DUAL_SEND_NEW")=0
 W "DUAL_SEND_NEW=0",!
 Q
 ;
ERR ;
 D LOG("ERR",$ZSTATUS)
 Q
 
 
 
 
 
 

W3ASKDUP
W3ASKDUP ; duplicate selected W3ASK outbound calls to new PPJ server [ 23.07.26 14:21 ] [ 22.07.26 06:53 ] [ 07.07.26 04:20 ] 
 ;
SEND(FILEIN,URL,PRM,FDB) ; -->  FILE-- not now !
 N $ZT S $ZT="ZG "_$ZL_":ERR^W3ASKDUP"
 I $G(^P1PRM("WEB","DUAL_SEND_NEW"))="" Q
 N SRV,TOKEN
 S SRV=$G(^P1PRM("WEB","SRVADDR_NEW")) Q:SRV=""
 S TOKEN=$G(^P1PRM("WEB","SYNC_TOKEN_NEW")) Q:TOKEN=""
 N EP S EP=$P(URL,"/",$L(URL,"/")) Q:EP=""
 N PRM0 S PRM0="" I EP["?" S PRM0=$P(EP,"?",2)
 I EP["?" S EP=$P(EP,"?")
 I $L(PRM0),$L($G(PRM)) S PRM=PRM0_"&"_PRM
 N URLN S URLN=$$BASE(SRV)_EP
 ;
 N FILE2 S FILE2=FILEIN_".new"
 C FILE2:(DELETE)
 O FILE2:(NEWVERSION:REWIND)
 U FILE2
 I $E(PRM)="&" S PRM=$E(PRM,2,2000)
 I $L($G(PRM)) W PRM_"&"
 W "FDB="_FDB,!
 C FILE2
 ;
 S FILE=FILEIN_".ou"
 ;
 N CMD S CMD="curl -m 45 -N  -s -S "
 S CMD=CMD_"-H 'X-ELPOS-SYNC-TOKEN: "_TOKEN_"' "
 S CMD=CMD_" -X POST -d@"_FILE2_" """_URLN_""" -w ""\n%{http_code}"""
 S CMD=CMD_" -o "_FILE ; *** 07.7.26
 ;
 ZSY CMD
 D LOG(CMD,$ZSY)
 H 1 C FILE2:(DELETE)
 Q
 ;
 ;
BASE(SRV) ;
 I $E(SRV,1,4)="http" Q SRV_$S($E(SRV,$L(SRV))="/":"",1:"/")_"mumps-examples/jsp/"
 Q "https://"_SRV_"/mumps-examples/jsp/"
 ;
LOG(CMD,RC) ;
 S @$$^W4GL("W3ASKDUP")@(+$H,$P($H,",",2))=CMD_"~"_RC
 Q
 ;
SET(SRV,TOKEN) ;
 I $G(SRV)'="" S ^P1PRM("WEB","SRVADDR_NEW")=SRV
 I $G(TOKEN)'="" S ^P1PRM("WEB","SYNC_TOKEN_NEW")=TOKEN
 S ^P1PRM("WEB","DUAL_SEND_NEW")=1
 W "DUAL_SEND_NEW=",^P1PRM("WEB","DUAL_SEND_NEW"),!
 W "SRVADDR_NEW=",^P1PRM("WEB","SRVADDR_NEW"),!
 W "SYNC_TOKEN_NEW is set",!
 Q
 ;
OFF ;
 S ^P1PRM("WEB","DUAL_SEND_NEW")=0
 W "DUAL_SEND_NEW=0",!
 Q
 ;
ERR ;
 D LOG("ERR",$ZSTATUS)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ASKE
W3ASKE ; [ 11.08.13 15:23 ] [ 31.10.12 15:08 ] [ 17.10.12 14:15 ]
 N (%ARG,%REM)
 S JB=$$^%W1SsID("W3ASKE")
 I $$^%L1FLAG("^flag(""ASK"")") Q
 D SETFLAG
 N  D INIT
 S SHASK=0,SHER=0 D ^W3ASKFDE
 ;
ASK S $ZT="ZG "_$ZL_":ER^W3ASKE"
 I $G(^STLOOP("PC")) K ^flag("ASK") Q
 I $$^%L1FLAG("^flag(""ASK"")") Q
 D SETFLAG
 ;
 K @GL,@GL1
 S NOMTB=$O(^[$$^W3MAIN]TMPASKA(999999),-1)+1
 ;
 S SHASK=SHASK+1 I '(SHASK#3) H
 D ^W3ASKFDE
 ;
 I $$^W3ASKGET<0 S SHER=SHER+1 H 60 G ASK ; --- GET ORDERSLIST --> GL (^TMPASK)
 ;
 S I=0
CYC S I=I+1 ;------ READ ORDERS WAS GETTING FROM SERVER
 I $G(^STLOOP("PC")) K ^flag("ASK") Q
 I '$D(@GL@(I)) G BG1
 S A=$G(^(I))
 ;
 I A[("<"_ListOrd) D
 .S BGLO=I
 .
 .S ERR=$$GET(BGLO,Error,ListOrd)
 .I ERR'="OK" S I=$$FINDEND(BGLO,ListOrd,"") Q
 .
 .S BGOI=BGLO
CYCORD .S BGOI=$$FIND(BGOI,Order,ListOrd)
 .I 'BGOI D  S I=$$FINDEND(BGOI,Order,ListOrd) Q
 ..D SENDOK
 .
 .S ORDNMB=$$GET(BGOI,OrdId,Order) Q:'ORDNMB
 .D ^W3ASKORD(ORDNMB,BGOI)
 .
ENDORD .S BGOI=$$FINDEND(BGOI,Order,ListOrd)
 .G CYCORD
 ;
 G CYC
 ;
BG1 S I=0
CYC1 S I=I+1 ;------ READ FEEDBACK ABOUT ORDERS REST2REST
 ;
 I '$D(@GL@(I)) G BG2
 S A=$G(^(I))
 ;
 I A[("<"_Rest2Rest) D
 .S BGOI=I ;
CYC11 .S BGOI=$$FIND(BGOI,SendedOrder,Rest2Rest)
 .I 'BGOI S I=$$FINDEND(BGOI,SendedOrder,Rest2Rest) Q
 .S A=$G(^(BGOI))
 .S ORDNMB=$P($P(A,"<"_SendedOrder_">",2),"</"_SendedOrder_">")
 .I ORDNMB D
 ..S $P(^P1HZ2MSD(ORDNMB),"\",3)="OK"
 ..N NUM S NUM=$P($G(^P1HZ2MSD(ORDNMB)),"\",2) Q:'NUM
 ..I $D(^TXTFAX(NUM)) D
 ...M ^TXTFAXA(NUM)=^TXTFAX(NUM)
 ...K ^TXTFAX(NUM)
 .
 .G CYC11
 G CYC1
 ;
BG2 S I=0
CYC2 S I=I+1 ;------ READ FEEDBACK ABOUT ORDERS REST2MM
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 ;
 I A[("<"_Rest2MM) D
 .S BGOI=I ;
CYC12 .S BGOI=$$FIND(BGOI,SendedOrder,Rest2MM)
 .I 'BGOI S I=$$FINDEND(BGOI,SendedOrder,Rest2MM) Q
 .S A=$G(^(BGOI))
 .;
 .S ORDNMB=$P($P(A,"<"_SendedOrder_">",2),"</"_SendedOrder_">")
 .;
 .I ORDNMB D
 ..N IND S IND=($H-3)_"00000"
 ..F  S IND=$O(^P1SND2MA(IND)) Q:IND=""  I $G(^(IND))'="OK" D
 ...I $E(IND,11,20)=ORDNMB S ^(IND)="OK"
 .G CYC12
 G CYC2
 ;
END D KILLTMP
 H 60 G ASK
 ;
 ;
KILLTMP ;
 K ^[$$^W3MAIN]TMPASK(MYDVN)
 Q
 ;
MYDVN ;
 S MYDVN=$$^%L3MYDVN
 Q
 ;
GET(I,EL,PARENT)
 Q $$GET^W3ASKORD($G(I),$G(EL),$G(PARENT))
 ;
FIND(I,EL,PARENT,PR) ;
 Q $$FIND^W3ASKORD($G(I),$G(EL),$G(PARENT),$G(PR))
 ;
FINDEND(I,EL,PARENT) ;
 Q $$FINDEND^W3ASKORD($G(I),$G(EL),$G(PARENT))
 ;
INIT ;
 D MYDVN
 D KILLTMP
 D INITTAG
 D GL,GL1
 Q
 ;
INITTAG ;
 S ListOrd="OrdersList"
 S Header="OrderHeader"
 S Order="Order"
 S OrdId="OrderNumber"
 S Content="OrderContent"
 S Error="Error"
 ;
 S Rest2Rest="Rest2RestOrders"
 S Rest2MM="Rest2MMOrders"
 S SendedOrder="SendedOrder"
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPASK(MYDVN)" Q
GL1 S GL1="^[$$^W3MAIN]TMPASK1(MYDVN)" Q
 ;
SENDOK ;
 D ^W3ASKFDB
 Q
 ;
ER ;
 K ^flag("ASK")
 D SVER^%L1X
 ;H 20
 ;G ASK
 ;
SETFLAG ;
 I '$G(^flag("ASK")) S ^flag("ASK")=$J,^flag("ASK","TIME")=$H
 Q

W3ASKFD1
W3ASKFD1 ; [ 22.07.26 06:59 ] [ 07.07.26 04:24 ] [ 06.07.26 14:55 ] 
 D ^W3ASKFDN Q  ; -- !!!!!!!!!!!!!
 ;
 N (NOMTB)
 S MYDVN=$$^%L3MYDVN
 ;
 S FILEIN=$$INDB^W3ASKPTH
 S FILEINP=$$INDBP^W3ASKPTH
 S FILEINM=$$INDBM^W3ASKPTH
 ;;S FILEINS=$$INDBS^W3ASKPTH
 ;
 S URL=$$^W3ASKURL_"w3ansfdb.jsp?"
 S URLP=$$^W3ASKURL_"w3anspay.jsp?"
 S URLM=$$^W3ASKURL_"w3ansmsl.jsp?"
 ;
 S PRM="MSD="_$G(^P1PRM("WEB","MSD"))_"&PSW="_$G(^P1PRM("WEB","PSW"))
 ;
 S FDB="",FDBP="",FDBM="" D ^P1IN
 S MAX=2000
 ;
 S DT=P1DZ-1
 F  S DT=$O(^P1H(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(^P1H(DT,HZ)) Q:HZ=""  D
 ..S ASM=$$HZMLAK^P3HZMST(HZ) Q:ASM=""
 ..Q:$E(ASM)'="W"
 ..S ASM=$E(ASM,2,20)
 ..I $L(FDB)<MAX S FDB=FDB_ASM_":"_HZ_";"
 ..
 ..N TM S TM=$G(^P1HZ(HZ,"TM"))
 ..I TM,$L(FDBM)<MAX S FDBM=FDBM_ASM_"-"_HZ_"-"_$P(TM,"\",2)_"-"_$$PSLN(TM)_";"
 ..I '$$^P3CLOSE(HZ) Q
 ..
 ..I $L(FDBP)<MAX D
 ...S FDBP=FDBP_ASM_":"_HZ
 ...I $G(^P1DEL(HZ)) D
 ....S FDBP=FDBP_"D-"_$$TIMEDEL(HZ)_"-"_$$NAMEDEL(HZ)
 ...I '$G(^P1DEL(HZ)),'$$TSHL^P3HZMST(HZ),$D(^P1HZ(HZ,"BIT")) D
 ....Q:$G(^P1HZ(HZ,"HR2"))["xar"
 ....S FDBP=FDBP_"D-"_$$TIMEDEL1(HZ)_"-"_$$NAMEDEL1(HZ)
 ...S FDBP=FDBP_";"
 .
 S FDB=$$FDB(FDB)
 ;
 S FDBP=$$FDB(FDBP)
 ;
 S FDBM=$$FDB(FDBM)
 ;
 D SEND(FILEIN,URL,PRM,FDB)
 ;
 D SEND(FILEINP,URLP,PRM,FDBP)
 ;
 D SEND(FILEINM,URLM,PRM,FDBM)
 ;
 Q
 ;
 ;
TIMEDEL(HZ) ;
 Q $P($$DELA(HZ),"*",5)
 ;
NAMEDEL(HZ) ;
 N MNL S MNL=$P($$DELA(HZ),"*")
 I MNL="" Q ""
 I MNL=$G(^P1PRM("WEB","MKBL")) Q "ldpn"
 Q $$SHORT^P1NAME(MNL)
 ;
DELA(HZ) ;
 N HZD S HZD=$G(^P1DEL(HZ)) I HZD="" Q ""
 N NB S NB=$O(^P1HZ(HZD,"BIT","")) I NB="" Q ""
 N A S A=$G(^P1HZ(HZD,"BIT",NB)) I A="" Q ""
 Q A
 ;
TIMEDEL1(HZ) ;
 N NB S NB=$O(^P1HZ(HZ,"BIT","")) I NB="" Q ""
 N A S A=$G(^P1HZ(HZ,"BIT",NB)) I A="" Q ""
 N TIME S TIME=$P(A,"*",5)
 I TIME="" D
 .N DAT,TM,DATCB
 .S DATCB=$$ZMANK^P3HZMST(HZ)
 .S DAT=$P(DATCB,"  "),TM=$P(DATCB,"  ",2)
 .S TIME=$$^%L1DC(DAT,3)_","_($P(TM,":")*3600+($P(TM,":",2)*60)+600)
 Q TIME
 ;
NAMEDEL1(HZ) ;
 N NB S NB=$O(^P1HZ(HZ,"BIT","")) I NB="" Q ""
 N A S A=$G(^P1HZ(HZ,"BIT",NB)) I A="" Q ""
 I $P(A,"*")=$G(^P1PRM("WEB","MKBL")) Q "ldpn"
 Q $$SHORT^P1NAME($P(A,"*"))
 ;
PSLN(TM) ;
 N PSL S PSL=$P(TM,"\") I 'PSL Q ""
 Q $G(@$$^W4GL("P1SL")@(PSL))
 ;
FDB(FDB,MAX) ;
 I '$G(MAX) S MAX=49
 S FDB=$E(FDB,1,$L(FDB)-1)
 N BG S BG=$L(FDB,";")-MAX I BG<1 S BG=1
 S FDB=$P(FDB,";",BG,$L(FDB,";"))
 ;
 S FDB=$$CLWEB^%L1FRM(FDB)
 Q FDB
 ;
SEND(FILEIN,URL,PRM,FDB) ;
 C FILEIN:(DELETE)
 O FILEIN:(NEWVERSION:REWIND)
 U FILEIN
 N PRM0
 S PRM0=$P(URL,"?",2)
 I $L(PRM0),$L($G(PRM)) S PRM=PRM0_"&"_PRM
 I URL["?" S URL=$P(URL,"?")
 W "url="_URL
 I $L($G(PRM)) W "?"_PRM_"&FDB="_FDB
 E  W "?FDB="_FDB
 C FILEIN
 ;
 S FILE=FILEIN_".ou"
 C FILE:(DELETE)
 ;
 N CMD S CMD="curl -s -m 35 -K "_FILEIN
 N SNDNEW S SNDNEW=0
 D
 .I $G(^P1PRM("WEB","DUAL_SEND_NEW"))="" Q
 .N SRV,TOKEN
 .S SRV=$G(^P1PRM("WEB","SRVADDR_NEW")) Q:SRV=""
 .S TOKEN=$G(^P1PRM("WEB","SYNC_TOKEN_NEW")) Q:TOKEN=""
 .S SNDNEW=1
 ;
 I 'SNDNEW S CMD=CMD_" -o "_FILE
 ZSY CMD H 2
 ;
 I $T(SEND^W3ASKDUP)'="" D SEND^W3ASKDUP(FILEIN,URL,PRM,FDB)
 ;
 ;;S @$$^W4GL("W3SNDPR")@(+$H,$P($H,",",2))=CMD
 ;;S @$$^W4GL("W3SNDPR")@(+$H,$P($H,",",2),"ZSY")=$ZSY
 H 1 C FILEIN:(DELETE) ; -- 12/09/24
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ASKFDB
W3ASKFDB ; [ 23.06.23 14:54 ] [ 02.05.13 11:36 ] [ 28.08.09 18:38 ] 
 N (NOMTB)
 S MYDVN=$$^%L3MYDVN
 N FILEIN
 S FILEIN=$$INDB^W3ASKPTH
 ;
 O FILEIN:(NEWVERSION:REWIND)
 S URL=$$^W3ASKURL_"w3ansfdb.jsp?"
 S PRM="MSD="_$G(^P1PRM("WEB","MSD"))_"&PSW="_$G(^P1PRM("WEB","PSW"))
 D GL1^W3ASK
 ;
 S FDB=""
 S HZ="" F  S HZ=$O(@GL1@(HZ)) Q:HZ=""  D
 .N A S A=$G(^(HZ))
 .S FDB=FDB_HZ_":"_A_";"
 S FDB=$E(FDB,1,$L(FDB)-1)
 ;
 U FILEIN W "url="_URL_PRM_"&FDB="_FDB C FILEIN
 ;
 ZSY "curl -s -K "_FILEIN
 ;
 K @GL1
 ;
 Q
 
 

W3ASKFDE
W3ASKFDE ; [ 11.08.13 14:45 ] [ 02.05.13 11:36 ] [ 15.10.12 15:54 ]
 N (JB,%ARG,%REM,NOMTB)
 S MYDVN=$$^%L3MYDVN
 N FILEIN,FILEINP
 S FILEIN=$$INDB^W3ASKPTH
 S FILEINP=$$INDBP^W3ASKPTH
 S FILEINM=$$INDBM^W3ASKPTH
 ;
 C FILEIN:(DELETE)
 O FILEIN:(NEWVERSION:REWIND)
 ;
 S GLPRM="^P1PRM"
 ;
 S URL=$$^W3ASKURL_"w3ansfdb.jsp?"
 S URLP=$$^W3ASKURL_"w3anspay.jsp?"
 S URLM=$$^W3ASKURL_"w3ansmsl.jsp?"
 S PRM="MSD="_$G(@GLPRM@("WEB","MSD"))_"&PSW="_$G(@GLPRM@("WEB","PSW"))
 ;
 S FDB="",FDBP="",FDBM="" D ^W4IN
 S DT=P1DZ-1
 F  S DT=$O(^P1H(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(^P1H(DT,HZ)) Q:HZ=""  D
 ..S ASM=$$HZMLAK^W4HZMST(HZ) Q:ASM=""
 ..Q:$E(ASM)'="W"
 ..S ASM=$E(ASM,2,20)
 ..S FDB=FDB_ASM_":"_HZ_";"
 ..N TM S TM=$G(@$$ORD@(HZ,"TM"))
 ..I TM S FDBM=FDBM_ASM_"-"_HZ_"-"_$P(TM,"\",2)_";"
 ..I '$$^P3CLOSE(HZ) Q
 ..S FDBP=FDBP_ASM_":"_HZ
 ..I $G(^P1DEL(HZ)) D
 ...S FDBP=FDBP_"D-"_$$TIMEDEL(HZ)_"-"_$$NAMEDEL(HZ)
 ..I '$G(^P1DEL(HZ)),'$$TSHL^W4HZMST(HZ),$D(@$$ORD@(HZ,"BIT")) D
 ...Q:$G(@$$ORD@(HZ,"HR2"))["xar"
 ...S FDBP=FDBP_"D-"_$$TIMEDEL1(HZ)_"-"_$$NAMEDEL1(HZ)
 ..S FDBP=FDBP_";"
 .
 S FDB=$E(FDB,1,$L(FDB)-1)
 S FDB=$$CLWEB^%L1FRM(FDB)
 ;
 S FDBP=$E(FDBP,1,$L(FDBP)-1)
 S FDBP=$$CLWEB^%L1FRM(FDBP)
 S FDBM=$E(FDBM,1,$L(FDBM)-1)
 S FDBM=$$CLWEB^%L1FRM(FDBM)
 ;
 U FILEIN W "url="_URL_PRM_"&FDB="_FDB C FILEIN
 ZSY "curl -s -m 15 -K "_FILEIN
 ;
 C FILEINP:(DELETE)
 O FILEINP:(NEWVERSION:REWIND)
 U FILEINP W "url="_URLP_PRM_"&FDB="_FDBP C FILEINP
 ZSY "curl -s -m 15 -K "_FILEINP
 ;
 C FILEINM:(DELETE)
 O FILEINM:(NEWVERSION:REWIND)
 U FILEINM W "url="_URLM_PRM_"&FDB="_FDBM C FILEINM
 ZSY "curl -s -m 15 -K "_FILEINM
 ;
 Q
 ;
 ;
TIMEDEL(HZ) ;
 Q $P($$DELA(HZ),"*",5)
 ;
NAMEDEL(HZ) ;
 N MNL S MNL=$P($$DELA(HZ),"*")
 I MNL="" Q ""
 I MNL=$G(@GLPRM@("WEB","MKBL")) Q "ldpn"
 Q $$SHORT^W4NAME(MNL)
 ;
DELA(HZ) ;
 N HZD S HZD=$G(^P1DEL(HZ)) I HZD="" Q ""
 N NB S NB=$O(@$$ORD@(HZD,"BIT","")) I NB="" Q ""
 N A S A=$G(@$$ORD@(HZD,"BIT",NB)) I A="" Q ""
 Q A
 ;
TIMEDEL1(HZ) ;
 N NB S NB=$O(@$$ORD@(HZ,"BIT","")) I NB="" Q ""
 N A S A=$G(@$$ORD@(HZ,"BIT",NB)) I A="" Q ""
 N TIME S TIME=$P(A,"*",5)
 I TIME="" D
 .N DAT,TM,DATCB
 .S DATCB=$$ZMANK^W4HZMST(HZ)
 .S DAT=$P(DATCB,"  "),TM=$P(DATCB,"  ",2)
 .S TIME=$$^%L1DC(DAT,3)_","_($P(TM,":")*3600+($P(TM,":",2)*60)+600)
 Q TIME
 ;
NAMEDEL1(HZ) ;
 N NB S NB=$O(@$$ORD@(HZ,"BIT","")) I NB="" Q ""
 N A S A=$G(@$$ORD@(HZ,"BIT",NB)) I A="" Q ""
 I $P(A,"*")=$G(@GLPRM@("WEB","MKBL")) Q "ldpn"
 Q $$SHORT^W4NAME($P(A,"*"))
 ;
ORD(STAM) ;
 Q "^P1HZ"

W3ASKFDN
W3ASKFDN ; [ 17.06.26 10:51 ] [ 16.02.26 14:49 ] [ 05.02.26 19:10 ] 
 N (NOMTB,JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB) S JB=$$^%W1SsID
 ;
 S P1DZ=$$^W4DZ
 D ^W4IN
TV ; 
 S MYDVN=$$^W4MYDVN
 D DEFGL
 ;
 S FILEIN=$$INDB^W3ASKPTH
 S FILEINP=$$INDBP^W3ASKPTH
 S FILEINM=$$INDBM^W3ASKPTH
 S FILEINS=$$INDBS^W3ASKPTH
 ;;S FILEINGS=$$INDGS^W3ASKPTH
 ;
 S URL=$$^W3ASKURL_"w3ansfdb.jsp?"
 S URLP=$$^W3ASKURL_"w3anspay.jsp?"
 S URLM=$$^W3ASKURL_"w3ansmsl.jsp?"
 S URLS=$$OU^W3ASKURL_"w3ansstat.jsp?"
 ;;S URLGS=$$OU^W3ASKURL_"w3getstat.jsp?"
 ;
 S PRM="MSD="_$G(@$$^W4PRM@("WEB","MSD"))_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MSDR="" S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 S PRM=PRM_"&MSDR="_MSDR
 ;
 S FDB="",FDBP="",FDBM="",FDBS="",FDBGS=""
 ;
 K MT
 K QNORD,QNORDS,SSUM,SSUMS,SSOAD,SSOADS
 S (QNORD,QNORDS,SSUM,SSUMS,SSOAD,SSOADS)=0,(AVRG,AVRGS,SAVRG)=""
 ;
 S (QNSP,TMSP,QNSP0,QNSP17,TMSP17,QNSP30,TMSP30,QNRD5,TMRD5,SINGLE,SDLV)=0
 S DT=P1DZ-1
 ;
 F  S DT=$O(@P1H@(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(@P1H@(DT,HZ)) Q:HZ=""  D
 ..I DT=P1DZ D FRM(HZ)
 ..
 ..S ASM=$$HZMLAK^W4HZMST(HZ) Q:ASM=""
 ..Q:$E(ASM)'="W"
 ..S ASM=$E(ASM,2,20)
 ..S FDB=FDB_ASM_":"_HZ_";"
 ..N TM S TM=$G(@ORD@(HZ,"TM"))
 ..I TM S FDBM=FDBM_ASM_"-"_HZ_"-"_$P(TM,"\",2)_"-"_$$PSLN^W3ASKFD1(TM)_";"
 ..I '$$^W4CLOSE(HZ) S ASM=ASM_"!"
 ..S FDBP=FDBP_ASM_":"_HZ
 ..
 ..I $G(@P1DEL@(HZ)) D
 ...S FDBP=FDBP_"D-"_$$TIMEDEL(HZ)_"-"_$$NAMEDEL(HZ)
 ..
 ..I '$G(@P1DEL@(HZ)),'$$TSHL^W4HZMST(HZ),$D(@ORD@(HZ,"BIT")) D
 ...Q:$G(@ORD@(HZ,"HR2"))["xar"
 ...S FDBP=FDBP_"D-"_$$TIMEDEL1(HZ)_"-"_$$NAMEDEL1(HZ)
 ..S FDBP=FDBP_";"
 ;
 D ^W4LEVSPR
 ;
 S TMPREP=$$^W4MAIN("TMPREP")
 S N="",I=0,TM=0 F  S N=$O(@TMPREP@("G",N)) Q:N=""  D
 .S A=$G(^(N)),I=I+1
 .S TM=TM+$$MIN($P(A,"\",5))
 ;
 S TIMEPREP=$$TIMEPREP(P1DZ)
 ; 
 S FIRSTHZ=$O(@P1H@(P1DZ,"")),FIRSTTIME=""
 I FIRSTHZ S FIRSTTIME=$P($G(@$$^W4ORD@(FIRSTHZ)),"~",4)
 ;       1       2        3             4                  5
 S FDBS=P1DZ_"~"_$H_"~"_QNORD_"~"_$G(QNORD("D"))_"~"_$G(QNORD("R"))
 ;                 6           7                 8
 S FDBS=FDBS_"~"_SSUM_"~"_$G(SSUM("D"))_"~"_$G(SSUM("R"))
 ;                 9            10                 11             12
 S FDBS=FDBS_"~"_SSOAD_"~"_$G(SSOAD("D"))_"~"_$G(SSOAD("R"))_"~"_AVRG
 ;                 13             14                 15
 S FDBS=FDBS_"~"_QNORDS_"~"_$G(QNORDS("D"))_"~"_$G(QNORDS("R"))
 ;                16           17                  18
 S FDBS=FDBS_"~"_SSUMS_"~"_$G(SSUMS("D"))_"~"_$G(SSUMS("R"))
 ;                 19            20                  21              22
 S FDBS=FDBS_"~"_SSOADS_"~"_$G(SSOADS("D"))_"~"_$G(SSOADS("R"))_"~"_AVRGS
 ;                23       24    25       26
 S FDBS=FDBS_"~"_SAVRG_"~"_I_"~"_TM_"~"_FIRSTTIME
 ;
 I $$PAPJ^W4PRM D
 .K MHZ D ^W4BONTM
 .;                  27              28              29             30
 .S FDBS=FDBS_"~"_$G(MHZ(3))_"~"_$G(MHZ(8))_"~"_$G(MHZ(100))_"~"_$G(MHZA)
 .;                    31               32              33                34
 .S FDBS=FDBS_"~"_$G(MHZM(20))_"~"_$G(MHZM(30))_"~"_$G(MHZM(60))_"~"_$G(MHZM(1000))
 .
 .S HZSG=$P($G(MHZM),"\")
 .S HZOP=$P($G(MHOP),"\",2)
 .S SHL=$P($G(MHZM),"\",3)
 .;                35       36      37
 .S FDBS=FDBS_"~"_HZOP_"~"_HZSG_"~"_SHL
 .
 .S $P(FDBS,"~",40)=TIMEPREP
 .;
 .S $P(FDBS,"~",41)=QNSP
 .S $P(FDBS,"~",42)=TMSP
 .S $P(FDBS,"~",43)=QNSP30
 .S $P(FDBS,"~",44)=TMSP30
 .S $P(FDBS,"~",45)=QNSP17
 .S $P(FDBS,"~",46)=TMSP17
 .S $P(FDBS,"~",47)=QNRD5
 .S $P(FDBS,"~",48)=$G(SINGLE)
 .S $P(FDBS,"~",49)=QNSP0
 .S $P(FDBS,"~",50)=SDLV
 .;
 .N N,J S N="",J=0 F  S N=$O(MT(N)) Q:N=""  D
 ..S J=J+1
 ..S $P(FDBS,"~",55+J)=N_"^"_$G(MT(N,"QR"))_"^"_$G(MT(N,"SR"))_"^"_$G(MT(N,"QD"))_"^"_$G(MT(N,"SD"))
 ;
 S FDBS=FDBS_"~"
 ;
 ;;S FDBGS=P1DZ
 ;
 S FDB=$$FDB(FDB)
 ;
 S FDBP=$$FDB(FDBP)
 ;
 S FDBM=$$FDB(FDBM)
 ;
 ;;S ^AA("W3ASKFDN","FDBS0")=FDBS
 S FDBS=$$FDB(FDBS)
 ;;S ^AA("W3ASKFDN","FDBS")=FDBS
 ;
 D SEND(FILEIN,URL,PRM,FDB)
 ;
 D SEND(FILEINP,URLP,PRM,FDBP)
 ;
 D SEND(FILEINM,URLM,PRM,FDBM)
 ;
 D SEND(FILEINS,URLS,PRM,FDBS)
 ;
 S LAST=$G(^|$$^W3MAIN|W3ASKFDN("LAST"))
 ;
 S ^|$$^W3MAIN|W3ASKFDN("LAST")=$H
 Q
 ;
 ;
TIMEDEL(HZ) ;
 Q $P($$DELA(HZ),"*",5)
 ;
NAMEDEL(HZ) ;
 N MNL S MNL=$P($$DELA(HZ),"*")
 I MNL="" Q ""
 I MNL=$G(@$$^W4PRM@("WEB","MKBL")) Q "ldpn"
 Q $$SHORT^W4NAME(MNL)
 ;
DELA(HZ) ;
 N HZD S HZD=$G(@P1DEL@(HZ)) I HZD="" Q ""
 N NB S NB=$O(@ORD@(HZD,"BIT","")) I NB="" Q ""
 N A S A=$G(@ORD@(HZD,"BIT",NB)) I A="" Q ""
 Q A
 ;
TIMEDEL1(HZ) ;
 N NB S NB=$O(@ORD@(HZ,"BIT","")) I NB="" Q ""
 N A S A=$G(@ORD@(HZ,"BIT",NB)) I A="" Q ""
 N TIME S TIME=$P(A,"*",5)
 I TIME="" D
 .N DAT,TM,DATCB
 .S DATCB=$$ZMANK^W4HZMST(HZ)
 .S DAT=$P(DATCB,"  "),TM=$P(DATCB,"  ",2)
 .S TIME=$$^%L1DC(DAT,3)_","_($P(TM,":")*3600+($P(TM,":",2)*60)+600)
 Q TIME
 ;
NAMEDEL1(HZ) ;
 N NB S NB=$O(@ORD@(HZ,"BIT","")) I NB="" Q ""
 N A S A=$G(@ORD@(HZ,"BIT",NB)) I A="" Q ""
 I $P(A,"*")=$G(@$$^W4PRM@("WEB","MKBL")) Q "ldpn"
 Q $$SHORT^W4NAME($P(A,"*"))
 ;
DEFGL ;
 S ORD=$$^W4ORD
 S P1H=$$^W4REF
 S P1DEL=$$^W4GL("P1DEL")
 Q
 ;
FDB(FDB) ; 
 Q $$FDB^W3ASKFD1(FDB)
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 ;
 ;
FRM(N) ;
 I $$DEL^W4DEL(N) Q
 I $$DELIS^W4PRM,$$^W4HZMH(N) Q
 I $$DELIS^W4PRM,$$^W4PIZUL(N) Q
 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(N)
 N SOAD S SOAD=$$SOAD^W4HZMST(N)
 N HZMSL,HZMSD
 S HZMSL=$$HZM^W4MSL(N)
 S HZMSD='HZMSL
 ;
 N PRTAW S PRTAW=0
 I $$TAKEAWAY^W4HZMST(N) S PRTAW=1
 ;
 N ST S ST=$$TIME^W4TIMDLV(N)
 ;
 S DIF=$P(ST,"*",5)
 N SND S SND=$P(ST,"*")
 N RDTM S RDTM=$P(ST,"*",2)
 N DLVTIM S DLVTIM=$P(ST,"*",4)
 N PCTIME S PCTIME=$P(ST,"*",6)
 ;
 I PCTIME,$G(DT),PCTIME'<DT D
 .N SHAA S SHAA=+$$T^%L1TIME(PCTIME)
 .I PCTIME'>DT,SHAA<$$SHAAZ^W4PRM Q
 .I SHAA<6 S SHAA=SHAA+24
 .;
 .I $$HZM^W4MSL(N) D
 ..S MT(SHAA,"QD")=$G(MT(SHAA,"QD"))+1
 ..S MT(SHAA,"SD")=$G(MT(SHAA,"SD"))+TSHL
 .;
 .I $$HZM^W4MSD(N) D
 ..S MT(SHAA,"QR")=$G(MT(SHAA,"QR"))+1
 ..S MT(SHAA,"SR")=$G(MT(SHAA,"SR"))+TSHL
 ;
 ;
 I SND,'PRTAW D
 .S QNSP=QNSP+1
 .S TMSP=TMSP+DIF
 .I $G(@$$^W4ORD@(N,"SINGLE")) S SINGLE=$G(SINGLE)+1
 .
 .I SND,'DIF S QNSP0=QNSP0+1
 .
 .I SND'>17 D
 ..S QNSP17=QNSP17+1
 ..S TMSP17=TMSP17+SND
 .
 .I DIF,DIF'>30 D
 ..S QNSP30=QNSP30+1
 ..S TMSP30=TMSP30+DIF
 .
 .I RDTM,RDTM'>5 D
 ..S QNRD5=QNRD5+1
 ..S TMRD5=TMRD5+RDTM
 ;
 I '$$^W4CLOSE(N) D
 .S QNORD=QNORD+1
 .
 .I HZMSL S QNORD("D")=$G(QNORD("D"))+1
 .I HZMSD S QNORD("R")=$G(QNORD("R"))+1
 .I HZMSL,PRTAW S QNORD("TAW")=$G(QNORD("TAW"))+1
 .S SSUM=SSUM+TSHL
 .I HZMSL S SSUM("D")=$G(SSUM("D"))+TSHL
 .I HZMSD S SSUM("R")=$G(SSUM("R"))+TSHL
 .I HZMSL,PRTAW S SSUM("TAW")=$G(SSUM("TAW"))+TSHL
 .S SSOAD=SSOAD+SOAD
 .I HZMSL S SSOAD("D")=$G(SSOAD("D"))+SOAD
 .I HZMSD S SSOAD("R")=$G(SSOAD("R"))+SOAD
 .I HZMSL,PRTAW S SSOAD("TAW")=$G(SSOAD("TAW"))+SOAD
 .
 .S SDLV=SDLV+DLVTIM
 ;
 I $$^W4CLOSE(N) D
 .S QNORDS=QNORDS+1
 .S SSUMS=SSUMS+TSHL
 .S SSOADS=SSOADS+SOAD
 .I HZMSL S QNORDS("D")=$G(QNORDS("D"))+1
 .I HZMSD S QNORDS("R")=$G(QNORDS("R"))+1
 .I HZMSL S SSUMS("D")=$G(SSUMS("D"))+TSHL
 .I HZMSD S SSUMS("R")=$G(SSUMS("R"))+TSHL
 .I HZMSL S SSOADS("D")=$G(SSOADS("D"))+SOAD
 .I HZMSD S SSOADS("R")=$G(SSOADS("R"))+SOAD
 ;
 I SSOAD S AVRG=$J(SSUM/SSOAD,3,3)
 I SSOADS S AVRGS=$J(SSUMS/SSOADS,3,3)
 I (SSOAD+SSOADS) S SAVRG=$J((SSUM+SSUMS)/(SSOAD+SSOADS),3,3)
 ;
 Q
 ;
 ;
MIN(SHAA) ;
 Q SHAA*60+$P(SHAA,":",2)
 ;
TIMEPREP(DT) ; 
 N D1,D2,TMS,REST S (D1,D2)=DT
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 S REST=""
 D FRM^W4TMPREP
 N I,STM S I=0,STM=0,TMS=0
 N N S N="" F  S N=$O(@TMP@(DT,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S TM=$P(A,"\",4)
 .I TM>0,TM<50 S I=I+1,STM=STM+TM
 I I>0 S TMS=$J(STM/I,2,2)
 Q I_"^"_STM_"^"_TMS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ASKGET
W3ASKGET(STAM) ; [ 14.01.25 15:54 ] [ 29.12.24 12:06 ] [ 27.05.21 08:48 ] 
 N (NOMTB)
 D ^%L1TS
 D MYDVN
 N FILE S FILE=$$OU^W3ASKPTH
 I $$^%L1ZOS(2,FILE)
 N FILEIN
 S FILEIN=$$IN^W3ASKPTH
 ;
 O FILEIN:(NEWVERSION:REWIND)
 ;;S URL="https://www.2order.org/mumps-examples/jsp/w3ans2ask.jsp?"
 S URL=$$^W3ASKURL_"w3ans2ask.jsp?"
 S PRM="MSD="_$G(^P1PRM("WEB","MSD"))_"&PSW="_$G(^P1PRM("WEB","PSW"))
 U FILEIN W "url="_URL_PRM C FILEIN
 ;
 ZSY "curl -s -m 35 -o "_FILE_" -K "_FILEIN
 ;
 I $ZSY'=0 D  Q -.5
 .D MSG1^P1PC(" ADSL CONNECTION ERROR ! CALL R.S.D. ")
 ;
 I $$^%L1ZOS(10,FILE)=-1 Q -1
 ;
 N A S A=""
 ;;S $ZT="G ER"
 ;
 D GL^W3ASK
 D READFILE(FILE,GL)
 ;
 I $G(NOMTB) M ^[$$^W3MAIN]TMPASKA(NOMTB)=@GL
 ;
 Q 1
 ;
 ; 
READFILE(FILE,GL) ;
 D MYDVN,^%L1TS
 N I K @GL S I=0
 ;
 N BL S BL=1800
 I '$$EXIST^%L1ZOS(FILE) Q
 O FILE:(READONLY:REWIND)
 ;
 U FILE F  R A Q:$ZEOF  D
 .S A1=$E(A,1,BL) Q:A1=""
 .S I=I+1,@GL@(I)=$TR(A1,TSS,TS0)
 .S I1=0 I $L(A)>BL F  D  Q:(BL*(I1+1))>$L(A)
 ..S I1=I1+1,@GL@(I,I1)=$TR($E(A,BL*I1+1,BL*(I1+1)),TSS,TS0)
 ;
 C FILE
 Q
 ;
 ;
MYDVN ; 
 S MYDVN=$$^%L3MYDVN
 Q 
 
 
 
 
 
 
 
 
 
 

W3ASKIT
W3ASKIT(STAM) ; [ 27.07.26 11:43 ] [ 19.05.26 15:51 ] [ 29.12.24 12:04 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(JB) S JB=$$^%W1SsID("ASKIT")
 D ^%L1TS
 S MYDVN=$$^%L3MYDVN
 N FILE S FILE=$$OU^W3ASKPTH
 I $$^%L1ZOS(2,FILE)
 N FILEIN
 S FILEIN=$$IN^W3ASKPTH
 ;
 ;--- FORM-E ZAPROSA
 O FILEIN:(NEWVERSION:REWIND)
 S SRVADR=$$^W3ASKURL
 S URL=SRVADR_"w3ansit.jsp?"
 S PRM="MSDR="_$$MSDR_"&MSD="_$$MSD_"&PSW="_$$PSW
 U FILEIN W "" ;;url="_URL_PRM
 C FILEIN
 ;
 D SEND^W3ASKFD1(FILEIN,URL,PRM,"") ;
 ;
 ;;ZSY "curl -s -m 90 -o "_FILE_" -K "_FILEIN
 ;
 I $ZSY'=0 D  Q "CONNECTERROR<>"_$ZSY
 .S ^W3ASKIT($$IND)=$ZSY
 ;
 Q $$READIT(FILE)
 ;
 ;
READIT(FILE)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 N A,A0,A1,I,I1,N,GLP,GLP1,MAC S A=""
 ;
 N GL S GL=$$^W4MAIN("TMPIT")
 K @GL S I=0
 ;
 N BL S BL=1800
 O FILE:(READONLY:REWIND)
 ;
 ;---- RECEIVE ITEMS INTO TEMPORARY FILE TMPIT
 U FILE F  R A Q:$ZEOF  D
 .S A1=$E(A,1,BL) Q:A1=""
 .S I=I+1,@GL@(I)=$TR(A1,TSS,TS0)
 .S I1=0 I $L(A)>BL F  D  Q:(BL*(I1+1))>$L(A)
 ..S I1=I1+1,@GL@(I,I1)=$TR($E(A,BL*I1+1,BL*(I1+1)),TSS,TS0)
 C FILE
 ;
 D IT4WEB(GL) 
 Q 1 
 ;
 ;
IT4WEB(GL) ;
 ; ---- FORM-E %L1GS("SV") & ZACHISTKA STARYH ITSRV* GLOBALS
 ;
 N N
 S N="" F  S N=$O(^[$$^W3MAIN]SHP("%GSPAR",N)) Q:N=""  D
 .N GLP S GLP=$$SPA^%L1FRM($G(^(N))) S:$E(GLP)="^" GLP=$E(GL,2,20) Q:$E(GLP)'?1U
 .S GLP=$$SPA^%L1FRM(GLP)
 .S %L1GS("SV",GLP)=""
 .K @("ITSRV"_GLP)
 ;
 N GLLK,GLLKNET
 S GLLK="^LKH",GLLKNET="^LKSRV"
 K @GLLKNET
 ;
 ;--- READ FROM SERVER ITSTRV* GLOBALS
 ;
 N A,PR,PR1,IND,CONT,FLBACK
 S PR=0,PR1=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D 
 .S A=$G(^(N))
 .I A["<ItemsGlobals>" S PR=1 Q
 .I A["<ItemGroups>" S PR=2 Q
 .I A["</ItemsGlobals>" S PR=0 Q
 .I A["</ItemGroups>" S PR=0 Q
 .Q:'PR
 .S IND=$P(A,"=")
 .S CONT=$P(A,"=",2,255)
 .I $E(IND,1,2)="^|" D
 ..S IND="^"_$P(IND,"|",3)
 .I $E(IND)'="^" Q
 .S @IND=CONT
 .I PR=1 S PR1=1
 .I PR=2 S PR1=2
 ;
 I 'PR1 Q
 ;
 I PR1=2 D  K ^GRNET ;;  Q  ; -- GROUPS 
 .I $D(^GRNET)>9 D
 ..S CD="" F  S CD=$O(^GRNET(CD)) Q:CD=""  D
 ...N A,ACT
 ...S A=$G(^(CD))
 ...S ACT=$P(A,"\",2)
 ...I ACT=1!(ACT="") S ^W3SUG(CD)=1
 ...I ACT=0 S ^W3SUG(CD)=0
 ;
 I '$D(NOKILLGL) K @GL
 ;
 ; -- SAVE OLD GLOBALS
 ;
 S FLBACK="/home/gtmuser/PARG.OLD"
 O FLBACK:(WRITE:NEWVERSION)
 U FLBACK
  W "%GO Global Output Utility",!
  W "GT.M "_$ZD($H,"DD-MM-YEAR 24:60"),!
  S GLP="" F  S GLP=$O(%L1GS("SV",GLP)) Q:GLP=""  D
  .S GLP1="^"_GLP
  .I $D(@GLP1)=0 Q
  .S MAC=GLP1_"("""")"
  .F  S MAC=$Q(@MAC) Q:MAC=""  Q:MAC'[GLP1  D
  ..W MAC,!
  ..W $G(@MAC),!
  W "",!,"",!
 C FLBACK
 ;
 ; -- ITSRV* GLOBALS --> GLOBALS
 ;
 S GLP="" F  S GLP=$O(%L1GS("SV",GLP)) Q:GLP=""  D
 .Q:GLP="PAR"
 .Q:GLP="PARSUG"
 .Q:GLP="W3PAR"
 .Q:GLP="W3SUG"
 .Q:GLP="PARLKH"
 .Q:GLP="PARSLK"
 .;;I $D(@("^ITSRV"_GLP))<10 Q
 .K @("^"_GLP)
 .X "M ^"_GLP_"=^ITSRV"_GLP
 .K @("^ITSRV"_GLP)
 ;
 S N="" F  S N=$O(^ITSRVPAR(N)) Q:N=""  D
 .S A=$G(^(N))
 .S A0=$G(^PAR(N))
 .I $$PAPJ^W4PRM S ^PAR(N)=A Q  ; -- 28.08.22
 .S ^PAR(N)=$P(A,"**",1,10)_"**"_$P(A0,"**",11)_"**"_$P(A,"**",12,255)
 ;
 K ^ITSRVPAR
 ;
 S N="" F  S N=$O(^ITSRVPARSUG(N)) Q:N=""  D
 .N A1 S A1=$G(^PARSUG(N,1))
 .M ^PARSUG(N)=^ITSRVPARSUG(N)
 .I $$PAPJ^W4PRM Q
 .S $P(^PARSUG(N,1),"\",7)=$P(A1,"\",7)
 ;
 I $D(^ITSRVPARSUG)>9 D
 .S N="" F  S N=$O(^PARSUG(N)) Q:N=""  I '$D(^ITSRVPARSUG(N)) K ^PARSUG(N)
 .K ^ITSRVPARSUG
 ;
 I $D(^ITNET)>9 D
 .M ^MHT0=^MHT
 .K ^W3PAR,^MHT N CD,CDT
 .S CD="" F  S CD=$O(^ITNET(CD)) Q:CD=""  D
 ..N A,A1,MH,ACT
 ..S A=$G(^(CD))
 ..S MH=$P(A,"\"),ACT=$P(A,"\",2)
 ..I ACT=1!(ACT="") S ^W3PAR(CD)=1
 ..I ACT=0 S ^W3PAR(CD)=0
 ..S $P(^PAR(CD),"**",2)=MH
 ;
 S N="" F  S N=$O(^PAR(N)) Q:N=""  S:$P(^(N),"**",11)="" $P(^(N),"**",11)="G" 
 ;
 ;;S N="" F  S N=$O(^P1SETA(N)) Q:N=""  D UPDATE^W3SETIDK(N)
 ;
 S CD="" F  S CD=$O(^ITNET(CD)) Q:CD=""  D
 .S CDT="" F  S CDT=$O(^ITNET(CD,CDT)) Q:CDT=""  D
 ..S A1=$G(^(CDT))
 ..S ^MHT(CD,CDT)=A1
 ;
 K ^ITNET
 ;
 N DP,DP1,DP2 S DP=$G(@$$^W4PRM@("NETLK")) 
 S DP1=$P(DP,":"),DP2=$P(DP,":",2)
 ;
 I DP1,DP2,$D(^LKSRV)>9 D
 .S FLBACK="/home/gtmuser/LKHG.OLD"
 .O FLBACK:(WRITE:NEWVERSION)
 .U FLBACK
 . W "%GO Global Output Utility",!
 . W "GT.M "_$ZD($H,"DD-MM-YEAR 24:60"),!
 . S GLP1="^LKH"
 . I $D(@GLP1)=0 Q
 . S MAC=GLP1_"("""")"
 . F  S MAC=$Q(@MAC) Q:MAC=""  Q:MAC'[GLP1  D
 . .W MAC,!
 . .W $G(@MAC),!
 . W "",!,"",!
 .C FLBACK
 .;
 .N GL S GL="^LKH"
 .N N S N=999 F  S N=$O(^LKSRV(N)) Q:N=""  D
 ..I N'<DP1,N'>DP2 D
 ...N ITRA S ITRA=$$ITRA^W4L(N)
 ...M ^LKH(N)=^LKSRV(N)
 ...S $P(^LKH(N,2),"*",4)=ITRA
 .K ^LKSRV
 ;
 S ^W3ASKIT($$IND)="OK"
 ;
 Q
 ; 
 ; 
IND(STAM) ; 
 Q +$H_$TR($J($P($H,",",2),5)," ",0)
 ;
SRVADR(STAM) ;
 N A S A=$G(^P1PRM("IT4WEB","SRVADR"))
 I A="",$L($G(^P1PRM("WEB","SRVADR"))) S A=^("SRVADR")
 Q A 
 ;
MSDR(STAM) ; 
 N A S A=$G(^P1PRM("IT4WEB","MSDR"))
 I A="",$L($G(^P1PRM("WEB","MSDR"))) S A=^("MSDR")
 Q A 
 ;
MSD(STAM) ; 
 N A S A=$G(^P1PRM("IT4WEB","MSD"))
 I A="",$L($G(^P1PRM("WEB","MSD"))) S A=^("MSD")
 Q A 
 ;
PSW(STAM) ;
 N A S A=$G(^P1PRM("IT4WEB","PSW"))
 I A="",$L($G(^P1PRM("WEB","PSW"))) S A=^("PSW")
 Q A 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ASKITP
W3ASKITP ; [ 28.04.26 01:35 ] [ 27.05.21 07:23 ] [ 26.08.20 13:00 ] 
 N (JB,%ARG,%REM)
 D ^%W1HD("RCVITPROTOCOL")
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<br>"
  D BACK
  W "<br><br>",!
  ;;W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
  ;; W $$^%W1DICT("RCVITPROTOCOL")
  ;;W "</span>"
  ;;W "<br><br>"
  S GL=$$^W4GL("W3ASKIT")
  W "<table width=""20%"" border=""1"" cellspacing=""0"" cellpadding=""5"" >",!
   S N="" F  S N=$O(@GL@(N),-1) Q:N=""  D
   .S RES=$G(^(N))
   .W "<tr>"
   .W " <td>"
   .  W $ZD($E(N,1,5),"DD.MM.YY")
   .  W $$NBSP^%L1FRM(3)
   .  W $$T^%L1TIME(+$E(N,6,10))
   .W " </td>"
   .
   .W " <td align=""center"" style=""font-weight:bold"" >"
   .  W $S(RES:"ERROR "_RES,1:"OK")
   .W " </td>"
  .W "</tr>",!
  ;
  W "</table>",!
  ;
  W "<br>"
  D BACK
  W "<br>"
 W "</div>",!
 Q
 ;
 ;
BACK ;
 D ^W4BCK
 Q
 
 
 
 
 
 
 
 
 

W3ASKORD
W3ASKORD(NMBORD,BGOI) ; [ 17.09.18 06:15 ] [ 15.09.17 13:37 ] [ 14.09.17 12:02 ] 
 N (JB,%ARG,%REM,NMBORD,BGOI)
 ;
 S MYDVN=$$^%L3MYDVN
 D GL,GL1
 S WEBORD="^W3ORD"
 ;
 D INITTAG^W3ASK
 ;
 S FINORD=$$FINDEND(BGOI,Order,ListOrd)
 I 'FINORD S I=$$FINDEND(BGOI,Order,"") S ER="NOTFINORD" G ENDORD
 ;
 S HD=$$GET(BGOI,Header,Order)
 I HD="" S ER="NOTHD" G ENDORD
 ;
 I '$G(NMBORD) S ER="NOTNMBORD" G ENDORD
 ;
 K @WEBORD@(NMBORD)
 S @WEBORD@(NMBORD)=HD
 ;
 S BGOI=$$FIND(BGOI,Content,Order)
 ;
 S FINCONT=$$FINDEND(BGOI,Content,Order)
 I 'FINCONT S ER="NOTFINCONT" G ENDORD
 ;
 F I=BGOI+1:1:FINCONT-1 D
 .S A=$G(@GL@(I)) Q:A=""
 .S IND=$P(A,"|") Q:IND=""
 .S IND1=$P(A,"|",2)
 .I IND1="" S @WEBORD@(NMBORD,IND)=$P(A,"||",2,200) Q
 .S @WEBORD@(NMBORD,IND,IND1)=$P(A,"|",3,200) Q
 ;
 I $D(@WEBORD@(NMBORD,"F")) G ENDORD ; -- WAS FAX
 ;
 S HZM=$$^W3NEWHZN(NMBORD)
 I HZM<0 S ERR=HZM G ENDORD
 ;
 D OKORD(HZM)
 ;
ENDORD S I=FINORD
END Q
 ;
 ;
GET(I,EL,PARENT)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(+IND,EL)
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0 D GL
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0 D GL
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 Q $$SPA^%L1FRM(ZN)
 ;
OKORD(HZM) ;
 S @GL1@(NMBORD)=HZM
 Q
 ;
GL ;
 D GL^W3ASK
 Q
GL1 ;
 D GL1^W3ASK
 Q
 
 
 
 
 
 

W3ASKPTH
W3ASKPTH(STAM) ; [ 23.12.24 12:30 ] [ 31.12.23 16:28 ] [ 03.02.22 09:10 ] 
 ;;Q "/usr/local/mumps/1/tmp/"
 Q $ZDIR_"1/tmp/"
 Q "/pos/tmp/"
 ;
IN(STAM) Q $$^W3ASKPTH_"tmpin"_$G(JB)
OU(STAM) Q $$^W3ASKPTH_"tmpou"_$G(JB)
INDB(STAM) Q $$W3ASKPTH_"tmpfdb"_$G(JB)
INDBP(STAM) Q $$W3ASKPTH_"tmpfdbp"_$G(JB)
INDBM(STAM) Q $$W3ASKPTH_"tmpfdbm"_$G(JB)
INDBS(STAM) Q $$W3ASKPTH_"tmpfdbs"_$G(JB)
INDBT(STAM) Q $$W3ASKPTH_"tmpfdbt"_$G(JB)
INDBI(STAM) Q $$W3ASKPTH_"tmpfdbi"_$G(JB)
INDGS(STAM) Q $$W3ASKPTH_"tmpfdbgs"_$G(JB)
 
 
 
 
 
 
 

W3ASKURL
W3ASKURL(STAM) ; [ 19.05.26 13:42 ] [ 23.06.23 14:48 ] [ 21.03.22 10:47 ] 
 N SRVADR
 S SRVADR=$G(^P1PRM("WEB","SRVADDR"))
 I $L(SRVADR),$TR(SRVADR,".","")'?.N,$E(SRVADR,1,4)'="www.",$E(SRVADR,1,4)'="http" S SRVADR="www."_SRVADR
 I SRVADR["212.179.112.43" Q "http://212.179.112.43/mumps-examples/jsp/"
 Q "https://"_SRVADR_"/mumps-examples/jsp/" ;; new adress 2order.org
 ;
 ;
OU() 
 N SRVOU
 S SRVOU=$G(^P1PRM("WEB","SRVOU"))
 I SRVOU="" Q $$W3ASKURL
 ;
 I $L(SRVOU),$TR(SRVOU,".","")'?.N,$E(SRVOU,1,4)'="www.",$E(SRVOU,1,4)'="http" S SRVOU="www."_SRVOU
 I SRVOU["212.179.112.43" Q "http://212.179.112.43/mumps-examples/jsp/"
 Q "https://"_SRVOU_"/mumps-examples/jsp/" ;; new adress 2order.org
 
 
 
 
 
 

W3AZOR
W3AZOR ; [ 24.09.08 10:13 ] [ 28.04.08 11:11 ] [
 D ^W3TBL1("H","W3AZOR")
 Q

W3AZR
W3AZR ; [ 19.08.26 10:30 ] [ 10.04.22 08:17 ] [ 17.01.21 06:17 ] 
AZOR(COUNTRY,CITY,STREET,HOME) ;
 N (JB,%ARG,%REM,COUNTRY,CITY,STREET,HOME)
 N CITYI,STREETI
 S CITYI=CITY
 S STREETI=STREET
 ;
 I COUNTRY=""!(CITYI="") Q ""
 ;
 I $$^%W1DIR="RTL" D
 .S CITYI=$$INVH^%L1FRM(CITY)
 .S STREETI=$$INVH^%L1FRM(STREET)
 ;
 I $$^%W1DIR="LTR" S STREETI=$$FUNC^%UCASE(STREETI)
 ;
 N AZ,STREETN,MEHOME,ADHOME S AZ=""
 N N S N="" F  S N=$O(@$$^W4GL("W3AZS")@(COUNTRY,CITYI,N)) Q:N=""  D  Q:AZ
 .S AZN=$G(^(N))
 .S STREETN=$$SPA^%L1FRM($P(N,":"))
 .I $$^%W1DIR="LTR" S STREETN=$$FUNC^%UCASE(STREETN)
 .S MEHOME=$$SPA^%L1FRM($P(N,":",2))
 .S ADHOME=$$SPA^%L1FRM($P(N,":",3))
 .I STREETI=STREETN,HOME'<MEHOME,HOME'>ADHOME S AZ=AZN
 Q AZ
 ;
AZOR1(COUNTRY,CITY,STREET,HOME) ;
 N (JB,%ARG,%REM,COUNTRY,CITY,STREET,HOME)
 S AZOR=$$AZOR(COUNTRY,CITY,STREET,HOME)
 I AZOR?.P Q ""
 Q $G(@$$^W4GL("W3AZR")@(COUNTRY,CITY,AZOR))
 ;
EXAZ(PRM) ;
 N CITY S CITY=$P(PRM,"^") I CITY="" Q "NOCITY"
 N STREET S STREET=$P(PRM,"^",2) I STREET="" Q "NOSTREET" 
 N HOME S HOME=$P(PRM,"^",3) I HOME="" Q "NOHOME"
 N I F I="CITY","STREET","HOME" D
 .S @I=$$CNWEB^%L1FRM(@I)
 .S @I=$$INVH^%L1FRM(@I)
 N STRHOME S STRHOME=STREET_"^"_HOME
 N AZ S AZ=$G(@$$^W4GL("W3EXAZ")@(CITY,STRHOME))
 ;;S ^AA("W3AZR-EXAZ","AZ")=AZ
 I AZ,$$ACT^W4PLGN(1,AZ)=0 Q "NOACT"
 Q AZ
 ;
 ;
SETAZ(PRM) ;
 N CITY S CITY=$P(PRM,"^") I CITY="" Q "NOCITY"
 N STREET S STREET=$P(PRM,"^",2) I STREET="" Q "NOSTREET" 
 N HOME S HOME=$P(PRM,"^",3) I HOME="" Q "NOHOME"
 N I F I="CITY","STREET","HOME" D
 .S @I=$$CNWEB^%L1FRM(@I)
 .S @I=$$INVH^%L1FRM(@I)
 ;
 N STRHOME S STRHOME=STREET_"^"_HOME
 N AZ S AZ=$P(PRM,"^",4)
 I AZ[";" S AZ=$P(AZ,";",2,20)
 I 'AZ Q "NOAREA"
 ;
 S @$$^W4GL("W3EXAZ")@(CITY,STRHOME)=AZ
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3AZRIDK
W3AZRIDK ; [ 27.03.26 13:03 ] [ 27.07.22 11:09 ] [ 27.03.22 20:59 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 Q:$G(%ARG("SHOW"))=0
 ;
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 I '$D(%ARG("NIR")) W "A city code is not defined ! " Q
 ;
 I $$MSDR^W4PRM=8005 D PUT^%W1PRM("MSDR",8004) ; *** 27.03.26
 ;
 D W3AZR
 ;
 S NIR=%ARG("NIR")
 S IRI=$$IRI(%ARG("NIR"))
 Q:IRI=""
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" ",!
  I $$^W4TABLET=2 W "style=""overflow-x:auto"" "
 W ">",!
 ;
 I $$POLYGON^W4PRM,$$PLGNNOTEXIST D  Q
 .W "<span style=""font-size:"_$$^W3FSZ(14)_""" >"
 .  W $$^%W1DICT("PAINTDISTRICTFIRST")
 .W "</span>",!
 ;
 W "<br />",!
 ;
 W "<span>"_$$^%W1DICT("DLVDEFAULTTIME")
  W $$NBSP^%L1FRM(3)
  W "<select id=""dflt"">"
   F I=5:5:180 D
   .W "<option "
   . I +I=+$G(@$$^W4PRM@("TIMEHZ")) W " selected=""selected"" "
   .W ">"_I_"</option>",!
  W "</select>",!
 W "</span>",!
 W "<br><br>",!
 ;
 W "<table id=""TblAzr"" dir="""_$$^%W1DIR_""" border=""1"""
  W " cellspacing=""0"" width=""94%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 I '$$POLYGON^W4PRM W "<th width=""7%"">&nbsp;</th>"
 W "<th width=""8%"">"_$$^%W1DICT("DISTRICTCODE")_"</th>"
 W "<th width=""25%"">"_$$^%W1DICT("DISTRICTNAME")_"</th>"
 W "<th width=""12%"">"_$$^%W1DICT("DLVPAY")_"</th>"
 W "<th width=""12%"">"_$$^%W1DICT("DLVTIME")_"</th>"
 W "<th width=""12%"">"_$$^%W1DICT("DELDLVPAY")_"</th>"
 W "<th width=""12%"">"_$$^%W1DICT("PRICEMINIMUM")_"</th>"
 ;
 I $$POLYGON^W4PRM,$$MSDR^W4PRM,'$$MM^W4PRM D
 .W "<th width=""12%"">"_$$^%W1DICT("SNIFIM")_"</th>"
 ;
 W "<th width=""12%"">"_$$^%W1DICT("DISTRICTACTIVE")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@W3AZR@(N)) Q:N=""  I N D
 .W "<tr>" S I=I+1
 .
 .I '$$POLYGON^W4PRM D
 ..W "<td align=""center"">"
 .. W "<span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 .. W " onClick=""InsertRow('"_N_"')""> + </span><br />"
 .. W "<span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
 .. W " onClick=""DeleteRow('"_N_"')"" > - </span></td>"
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">"
 . W "&nbsp;<input id=""name"_N_""" type=""text"" size=""24"" maxlength=""24"""
 . W " value="""_$$NAME(IRI,N)_""" onChange=""OnChange('"_N_"')"""
 . W " onKeyPress=""OnKeyPressNm("_N_")"" />&nbsp;</td>"
 .
 .W "<td align=""center"">"
 . W "<input id=""dlvp"_N_""" type=""text"" size=""6"" maxlength=""6"""
 .  W " value="""_$$DLVPAY(IRI,N)_""" onFocus=""this.select()"""
 .  W " onChange=""OnChange('"_N_"')"" onKeyPress=""OnKeyPressNm("_N_")"""
 . W " />"
 .W "</td>"
 .
 .W "<td align=""center"">&nbsp;"
 . W "<input id=""dlvtm"_N_""" type=""text"" size=""6"" maxlength=""6"""
 .  W " value="""_$$DLVTM(IRI,N)_""" onFocus=""this.select()"""
 .  W " onChange=""OnChange('"_N_"')"" onKeyPress=""OnKeyPressNm("_N_")"""
 . W " />"
 .W "</td>"
 .
 .W "<td align=""center"">&nbsp;"
 . W "<input id=""dlvcnc"_N_""" type=""text"" size=""6"" maxlength=""6"""
 .  W " value="""_$$DLVCNC(IRI,N)_""" onFocus=""this.select()"""
 .  W " onChange=""OnChange('"_N_"')"" onKeyPress=""OnKeyPressNm("_N_")"""
 . W " />"
 .W "</td>"
 .
 .W "<td align=""center"">&nbsp;"
 . W "<input id=""mhmin"_N_""" type=""text"" size=""6"" maxlength=""6"""
 .  W " value="""_$$MHMIN(IRI,N)_""" onFocus=""this.select()"""
 .  W " onChange=""OnChange('"_N_"')"" onKeyPress=""OnKeyPressNm("_N_")"""
 . W " />"
 .W "</td>"
 .
 .I $$POLYGON^W4PRM,$$MSDR^W4PRM,'$$MM^W4PRM D
 ..W "<td align=""center"" width=""20%"">&nbsp;"
 .. W $$SHOWSNIFIM(N)
 ..W "</td>"
 .
 .S CHECKED=1,DIS=0
 .I $$AZRSHOW(IRI,N)=0 S CHECKED=0,DIS=0
 .
 .W "<td align=""center"">"
 . W "<input name=""show"" type=""checkbox"" id=""show"_N_""""
 . I CHECKED W " checked=""checked"""
 . I DIS W " disabled=""disabled"" "
 . W " onClick=""OnChange('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center"">"
 . W "<input name=""chn"" id=""chn"_N_""" type=""checkbox"""
 . W " disabled=""disabled"" />"
 .W "</td>"
 .
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D PUT^%W3DEB("W3AZRIDK-SAVE","PRM=PRM")
 D W3AZR
 N CD,NM,MH,DESC,GR,SHOW
 S NIR=$P(PRM,";",1) I NIR="" Q 0
 S CD=$P(PRM,";",2) I CD="" Q 0
 S IRI=$$IRI(NIR) Q:IRI="" 0
 ;
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) D  Q 1
 .K ^[$$^W3MAIN]TMPDEL(JB,CD)
 .K @W3AZR@(CD)
 ;
 S NM=$$CLEAR^%L1FRM($$CNWEB^%L1FRM($P(PRM,";",3)))
 S DLVP=$$CLEAR^%L1FRM($P(PRM,";",4))
 S DLVTM=$$CLEAR^%L1FRM($P(PRM,";",5))
 S DLVCNC=$$CLEAR^%L1FRM($P(PRM,";",6))
 S MHMIN=$$CLEAR^%L1FRM($P(PRM,";",7))
 S SHOW=+$P(PRM,";",8)
 S SNIFIM=$P(PRM,";",9)
 ;
 S @W3AZR@(CD)=$S($$^%W1DIR="RTL":$$INVH^%L1FRM(NM),1:NM)
 S $P(@W3AZR@(CD,1),"\",1,4)=$J(DLVP,2,2)_"\"_DLVTM_"\"_$J(DLVCNC,2,2)_"\"_SHOW
 S $P(@W3AZR@(CD,1),"\",5)=SNIFIM
 S $P(@W3AZR@(CD,1),"\",6)=MHMIN
 Q 1
 ;
SAVEND(PRM) ;
 D W3AZR
 N NIR,IRI,DO,DFLT
 S PRM=$$CLEAR^%L1FRM(PRM)
 S DFLT=$P(PRM,"~")
 S @$$^W4PRM@("TIMEHZ")=DFLT
 S NIR=$P(PRM,"~",2) Q:NIR=""
 S IRI=$$IRI(NIR) Q:IRI=""
 S DO=$P(PRM,"~",3)
 S @W3AZR=DO
 ;
 K ^[$$^W3MAIN]TMPDEL(JB)
 K ^[$$^W3MAIN]TMPLAST(JB)
 Q
 ;
EXIST(NIR)
 N W3AZR D W3AZR
 N IRI S IRI=$$IRI(NIR) I IRI="" Q 0
 I $D(@W3AZR)>9 Q 1
 Q 0
 ;
D(PRM) ;
 N NIR,CD,COUNTRY,MSD
 D W3AZR
 S NIR=$P(PRM,";") Q:NIR="" 0
 S IRI=$$IRI(NIR)
 S CD=$P(PRM,";",2) Q:CD="" 0
 I '$D(@W3AZR@(CD)) Q 0
 Q 1
 ;
DELROW(PRM) ;
 D W3AZR
 D PUT^%W3DEB("W3AZRIDK-DELROW","JB=JB & PRM=PRM")
 Q:'$G(JB)
 N NIR,CD,IRI
 S NIR=$P(PRM,";") Q:NIR=""
 S CD=$P(PRM,";",2) Q:CD=""
 S IRI=$$IRI(NIR)
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) K ^(CD) Q
 S ^[$$^W3MAIN]TMPDEL(JB,CD)=$G(@W3AZR@(CD))
 Q
 ;
NEWCOD(NIR) ;
 Q:$G(NIR)="" "NOK"
 N IRI,W3AZR
 D W3AZR
 S IRI=$$IRI(NIR)
 Q:IRI="" "NOK"
 N A S A=$O(@W3AZR@(9999999),-1)+1
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
 ;
SELCITY ;
 W "<select id=""cityid"" onChange=""ChangeCity()""",!
 W ">",!
 N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 .Q:'N
 .Q:$TR($G(^(N))," ","")["TAKEAWAY"
 .W "<option value="""_N_""">"_$$H2U^%L1FRM(^(N))_"</option>",!
 W "</select>",!
 Q
 ;
SELMAP ;
 W "<select id=""cityid"" onChange=""ChangeCity()""",!
 W ">",!
 N N S N="" F  S N=$O(@$$^W4GL("W4MAPPRM")@(N)) Q:N=""  D
 .W "<option value="""_N_""">"
 . W $$H2U^%L1FRM(^(N))_" &nbsp;"_$$^%W1DICT("CITY")_" : "_$$H2U^%L1FRM($$CITYMAP(N))
 .W "</option>",!
 W "</select>",!
 Q
 ;
CITYMAP(N) ;
 N A S A=$G(@$$^W4GL("W4MAPPRM")@(N,1))
 Q $P(A,"\")
 ;
IR(NIR) ;
 N IR S IR=$G(@$$^W4GL("P1IR")@(NIR))
 Q IR
 ;
IRI(NIR)
 I $$POLYGON^W4PRM Q +NIR
 Q $$INV($$IR(NIR))
 ;
NM(IRI,CD) ;
 D W3AZR
 Q $G(@W3AZR@(CD))
 ;
NAME(IRI,CD) ;
 D W3AZR
 Q $$H2U^%L1FRM($G(@W3AZR@(CD)))
 ;
DLVPAY(IRI,CD) ;
 D W3AZR
 Q +$P($G(@W3AZR@(CD,1)),"\")
 ;
DLVTM(IRI,CD) ;
 D W3AZR
 Q +$P($G(@W3AZR@(CD,1)),"\",2)
 ;
AZRSHOW(IRI,CD)
 D W3AZR
 Q $P($G(@W3AZR@(CD,1)),"\",4)
 ;
DLVCNC(IRI,CD) ;
 D W3AZR
 Q +$P($G(@W3AZR@(CD,1)),"\",3)
 ;
DLVDMS(IRI,CD) ;
 D W3AZR
 ;
 Q +$P($G(@W3AZR@(CD,1)),"\",1)
 ;
MHMIN(IRI,CD) ;
 D W3AZR
 Q $P($G(@W3AZR@(CD,1)),"\",6)
 ;
SNIF(IRI,CD,J) ;
 D W3AZR
 Q $E($$SNIFIM(+$G(IRI),CD),J)
 ;
SNIFIM(IRI,CD) ;
 I '$$MSDR^W4PRM Q +$$GETP^%W1PRM("MSD")
 D W3AZR
 Q $P($G(@W3AZR@(CD,1)),"\",5)
 ;
W3AZR S W3AZR=$$^W4GL("W3AZR")_"($$COUNTRY,IRI)"
 I $$POLYGON^W4PRM D
 .S W3AZR=$$^W4GL("W4PLGN")_"(IRI,""DESCR"")"
 .Q:'$G(IRI)
 .N N S N="" F  S N=$O(@W3AZR@(N)) Q:N=""  D
 ..I '$D(@$$^W4GL("W4PLGN")@(IRI,N)) D
 ...K @W3AZR@(N)
 Q
 ;
COUNTRY(STAM) ;
 S MSD=$$GET^%W1PRM("MSD") I 'MSD Q "IS"
 Q $$COUNTRY^W3R(MSD)
 ;
INV(TXT) ;
 I $$^%W1DIR="LTR" Q TXT
 Q $$INV^%L1FRM(TXT)
 ;
DISTRICTONLY(IRN) ;
 D W3AZR
 Q +$G(@W3AZR)
 ;
PUTPRM(PRM) ;
 D W3AZR
 N NIR,IRI,DO
 S NIR=$$CLEAR^%L1FRM($P(PRM,";")) Q:NIR=""
 S IRI=$$IRI(NIR) Q:IRI=""
 S DO=$$CLEAR^%L1FRM($P(PRM,";",2))
 D PUT^%W1PRM("NIR",NIR)
 D PUT^%W1PRM("DO",DO)
 Q
 ;
SHOWSNIFIM(N) ; N -- MISP AZOR ( POLYGON )
 N NMAP S NMAP=+$$GETP^%W1PRM("NIR") ;-- MAPA
 I 'NMAP S NMAP=1 ;Q ""; *** 27.03.26
 N ST,QNSN,MRK,MRKLST
 S QNSN=$$MRKQN^W4PLGN(NMAP)
 S MRKLST=$$MRKLST^W4PLGN(NMAP)
 ;
 S ST=""
 N DLM S DLM=","
 N J F J=1:1:QNSN D
 .S MRK=$P(MRKLST,DLM,J)
 .S ST=ST_MRK_" "
 .S ST=ST_"<input type=""checkbox"" id=""snif"_N_"_"_MRK_""" "
 .S ST=ST_$S(DLM_$$SNIFIM(NMAP,N)_DLM[(DLM_MRK_DLM):" checked=""checked""",1:"")  
 .S ST=ST_" onChange=""OnChange('"_N_"')"" "
 .S ST=ST_" />&nbsp;&nbsp;"
 Q ST
 ;
PLGNNOTEXIST(STAM) ;
 N I,J,OK S NOK=1
 F I=1:1:10 D  Q:'NOK
 .F J=1:1:10 D  Q:'NOK
 ..I $D(@$$^W4GL("W4PLGN")@(I,J))>9 S NOK=0
 Q NOK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3AZSIDK
W3AZSIDK ; [ 30.10.17 20:59 ] [ 20.10.17 21:48 ] [ 20.12.10 14:57 ] 
 N (JB,%ARG,SRCH)
 I '$G(JB) W " JB number is not defined ! " Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PUT^%W3DEB("W3AZSIDK","%ARG=[%ARG")
 ;;I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 ;;D PUT^%W1PRM("MSD",%ARG("MSD"))
 ;
 I $L($$MV2STRPRM) D MV2STR($$MV2STRPRM) D KILLSTRPRM
 ;
 I $L($$MV2AZORPRM) D MV2AZOR($$MV2AZORPRM) D KILLAZORPRM
 ;
 I $L($$SAVEPRM) D SAVE($$SAVEPRM) D KILLSAVE
 ;
 S NIR=$$NIR Q:NIR=""
 S AZOR=$$AZOR ;;Q:AZOR=""
 ;
 D PUT^%W3DEB("W3AZSIDK","NIR=NIR & AZOR= AZOR")
 I NIR D PUT^%W1PRM("CITY",NIR)
 I AZOR D PUT^%W1PRM("AZOR",AZOR)
 ;
 N N,I
 D TMPAZS,TMPAZSI
 ;
 W "<div align=""center"" >",!
 W "<span dir="""_$$^%W1DIR_""" style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)
  W ";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("DISTRICTSTREETSTABLE")_"</span>",!
 W "<br /><br />",!
 W "<span dir="""_$$^%W1DIR_""">"
 W "<b>"_$$^%W1DICT("DISTRICT")_"&nbsp;</b>"
 W "<select id=""azor"" dir="""_$$^%W1DIR_""" onChange=""parent.AzorChange('"_JB_"')"">",!
 D GETAZOR
 W "</select>",!
 W "</span>",!
 ;
 I $G(%ARG("SHOW"))=0 W "</div>",! Q
 ;
 W "<br /><br />",!
 ;
 W "<table id=""TblAzs"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"""
  W " width=""100%"" style=""background-color:white;color:black"">",!
  W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
   W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
   W "<th width=""40%"">"_$$^%W1DICT("STREETNAME")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("MEHOME")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("ADHOME")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("SIGN")_"</th>"
  W "</tr>",!
 ;
 N NP S NP="",I=0 F  S NP=$O(@TMPAZS@(NP)) Q:NP=""  D
 .N A S A=$G(^(NP)) Q:A=""
 .W "<tr id=""trazs"_NP_""""
 .I $D(@TMPAZS@(NP,"NEW")) W " style=""background-color:#eaeaea"" "
 .W " >"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$NAME(A))_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""text"" id=""mehome"_NP_""" size=""2"""
 .  W " maxlength=""4"" value="""_$$MEHOME(A)_""""
 .  W " onBlur=""OnBlur('mehome"_NP_"')"" onClick=""this.select()""/>"
 .W "</td>"
 .
 .W "<td align=""center"">"
 . W "<input type=""text"" id=""adhome"_NP_""" size=""2"" maxlength=""4"""
 . W " value="""_$$ADHOME(A)_""" onBlur=""OnBlur('adhome"_NP_"')"""
 . W " onClick=""this.select()"" />"
 .W "</td>",!
 .
 .W "<td align=""center"">"
 . W "<input type=""checkbox"" id=""chazs"_NP_""""
 .  W " onClick=""OnClickTbl('"_NP_"','TblAzs','trazs','chazs')"" />"
 . W "</td>",!
 .W "</td>",!
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
NIR(STAM) ;
 I $G(%ARG("CITY")) Q $G(%ARG("CITY"))
 N NIR S NIR=$$GET^%W1PRM("CITY")
 I NIR=""!(NIR["UNDEF") Q ""
 Q NIR
 ;
FIRSTNIR(STAM) ;
 N W3AZR,OK D W3AZR S OK=0
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("P1IR")@(NN)) Q:NN=""  D  Q:OK
 .N IRI S IRI=$$INV($G(^(NN))) Q:IRI=""
 .I $D(@W3AZR)>9 S OK=NN
 Q NN
 ;
NEW(NIR,AZOR) ;
 D TMPAZS,TMPAZSI
 K @TMPAZS,@TMPAZSI N NP S NP=0
 N IRI S IRI=$$IRI(NIR) Q:IRI=""
 D W3AZS
 D PUT^%W3DEB("W3AZSIDK-NEW","NIR=NIR&AZOR=AZOR&IRI=IRI&W3AZS=W3AZS")
 ;
 N IND S IND="" F  S IND=$O(@W3AZS@(IND)) Q:IND=""  D
 .N A S A=$G(^(IND)) Q:A'=AZOR
 .S NP=NP+1,@TMPAZS@(NP)=IND_":"_A
 .S @TMPAZSI@(IND)=NP
 Q
 ;
AZOR(STAM) ;
 N AZOR
 I $G(%ARG("AZOR")) Q %ARG("AZOR")
 S AZOR=$$GET^%W1PRM("AZOR")
 I AZOR=""!(AZOR["UNDEF") Q ""
 Q AZOR
 ;
SAVE(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 N NIR,OLDAZOR
 S NIR=$P(PRM,";") Q:NIR=""
 S OLDAZOR=$P(PRM,";",2) Q:OLDAZOR=""
 D PUT^%W3DEB("W3AZSIDK-SAVE","OLDAZOR=OLDAZOR & NIR=NIR")
 Q:$G(OLDAZOR)=""
 N IRI S IRI=$$IRI(NIR) Q:IRI=""
 D TMPAZS,W3AZS
 N NP,NAME,MEHOME,ADHOME
 ;
 N N S N="" F  S N=$O(@W3AZS@(N)) Q:N=""  D
 .I $G(^(N))=OLDAZOR K ^(N)
 ;
 S NP="" F  S NP=$O(@TMPAZS@(NP)) Q:NP=""  D
 .N A S A=$G(^(NP))
 .S NAME=$$NAME(A),MEHOME=$$MEHOME(A),ADHOME=$$ADHOME(A)
 .N IND S IND=$$IND(NAME,MEHOME,ADHOME)
 .S @W3AZS@(IND)=OLDAZOR
 Q
 ;
MV2STR(PRM) ;
 D TMPAZS,TMPAZSI
 S PRM=$$CLEAR^%L1FRM(PRM)
 I $E(PRM,$L(PRM))=";" S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W3AZSIDK-MV2STR","PRM=PRM")
 N I,CD F I=1:1:$L(PRM,";") D
 .N NP S NP=$P(PRM,";",I) Q:NP=""
 .K @TMPAZS@(NP) D KILLTMPAZSI(NP)
 D CRTMPAZS
 Q
 ;
MV2AZOR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D TMPAZS,TMPAZSI
 I $E(PRM,$L(PRM))=";" S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W3AZSIDK-MV2AZOR","PRM=PRM")
 N I,STR,NS F I=1:1:$L(PRM,";") D
 .S NS=$P(PRM,";",I)
 .S STR=$G(^[$$^W3MAIN]TMPSTR(JB,NS)) Q:STR=""
 .S MEHOME=1,ADHOME=999
 .S IND=$$IND(STR,MEHOME,ADHOME)
 .S @TMPAZSI@(IND)=""
 ;
 D CRTMPAZS
 Q
 ;
NAME(A) ;
 Q $$INV($$SPA^%L1FRM($P(A,":",1)))
 ;
MEHOME(A) ;
 Q $P(A,":",2)
 ;
ADHOME(A) ;
 Q $P(A,":",3)
 ;
MV2STRPRM(STAM) ;
 Q $G(%ARG("MV2STR"))
 ;
 N MV S MV=$$GET^%W1PRM("MV2STR")
 I MV["UNDEF" S MV=""
 Q MV
 ;
KILLSTRPRM ;
 D KILL^%W1PRM("MV2STR")
 Q
 ;
KILLAZORPRM ;
 D KILL^%W1PRM("MV2AZOR")
 Q
 ;
KILLSAVE ;
 D KILL^%W1PRM("SAVE")
 Q
 ;
MV2AZORPRM(STAM) ;
 Q $G(%ARG("MV2AZOR"))
 ;
 N MV S MV=$$GET^%W1PRM("MV2AZOR")
 I MV["UNDEF" S MV=""
 Q MV
 ;
SAVEPRM(STAM) ;
 Q $G(%ARG("SAVE"))
 ;
 N SV S SV=$$GET^%W1PRM("SAVE")
 I SV["UNDEF" S SV=""
 Q SV
 ;
IND(NAME,MEHOME,ADHOME)
 Q $$INV(NAME)_$J("",25-$L(NAME))_":"_MEHOME_":"_ADHOME
 ;
TMPAZS S TMPAZS="^[$$^W3MAIN]TMPAZS(JB)"
 Q
 ;
TMPAZS0 S TMPAZS0="^[$$^W3MAIN]TMPAZS0(JB)"
 Q
 ;
TMPSV ;
 D TMPAZS0,TMPAZS
 K @TMPAZS0
 M @TMPAZS0=@TMPAZS
 Q
 ;
TMPAZSI S TMPAZSI="^[$$^W3MAIN]TMPAZSI(JB)"
 Q
 ;
KILLTMPAZSI(NP) ;
 D TMPAZSI
 N N S N="" F  S N=$O(@TMPAZSI@(N)) Q:N=""  I ^(N)=NP K ^(N)
 Q
 ;
CRTMPAZS ;
 D TMPAZS,TMPAZSI K @TMPAZS
 N NP S NP=0
 N N S N="" F  S N=$O(@TMPAZSI@(N)) Q:N=""  D
 .S NP=NP+1
 .S @TMPAZS@(NP)=N_":"_$$AZOR
 .I $G(@TMPAZSI@(N))="" S @TMPAZS@(NP,"NEW")=""
 .S @TMPAZSI@(N)=NP
 Q
 ;
 ;
SELCITY ;
 W "<select id=""cityid"" onChange='AzorChange("_+JB_")' >"
 ;
 N W3AZR D W3AZR
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("P1IR")@(NN)) Q:NN=""  D
 .N IRI S IRI=$$INV($G(^(NN))) Q:IRI=""
 .Q:$D(@W3AZR)<10
 .S II=II+1
 .W "<option value="""_NN_""""
 .I NN=$G(%ARG("CITY")) W " selected=""selected"""
 .W " >"_$$H2U^%L1FRM($G(@$$^W4GL("P1IR")@(NN)))_"</option>",!
 ;
 W "</select>",!
 Q
 ;
FIRSTAZOR(STAM) ;
 N NIR S NIR=$$FIRSTNIR
 I NIR="" Q ""
 N IRI S IRI=$$IRI(NIR) I IRI="" Q ""
 N W3AZR D W3AZR^W3AZRIDK
 ;
 N N S N="" F  S N=$O(@W3AZR@(N)) Q:N=""  Q:N'=""  
 Q N
 ;
 ;
GETAZOR ;
 N NIR S NIR=$$NIR
 Q:NIR=""
 D GETLIST(JB_";"_NIR)
 Q
 ;
GETLIST(PRM) ;
 D PUT^%W3DEB("W3AZSIDK-GETLIST","PRM=PRM")
 N I,A S I=0,A=""
 N AZOR S AZOR=$$AZOR
 N JB,NIR S JB=$P(PRM,";"),NIR=$P(PRM,";",2)
 I JB=""!(NIR="") Q ""
 ;
 N AZ S AZ=""
 N IRI S IRI=$$IRI(NIR) Q:IRI=""
 N W3AZR D W3AZR
 ;
 F  S AZ=$O(@W3AZR@(AZ)) Q:AZ=""  D
 .S NM=$$H2U^%L1FRM(^(AZ))
 .S A="<option value="""_AZ_""""
 .I AZOR'="",AZOR=AZ S A=A_" selected=""selected"""
 .I AZOR="",I=1 S A=A_" selected=""selected"""
 .S A=A_">"_NM_"</option>"
 .W A,!
 Q
 ;
NEWAZOR(PRM) ;
 D PUT^%W3DEB("W3AZSIDK-NEWAZOR","PRM=PRM")
 N CITY,AZOR
 S CITY=$P(PRM,";",1),AZOR=$P(PRM,";",2)
 I 'CITY Q
 D PUT^%W1PRM("CITY",CITY)
 I 'AZOR Q
 D PUT^%W1PRM("AZOR",AZOR)
 D NEW(CITY,AZOR)
 Q
 ;
INV(TXT) ;
 I $$^%W1DIR="LTR" Q TXT
 Q $$INV^%L1FRM(TXT)
 ;
KILLGL(PRM) ;
 N TMPAZS,TMPAZSI,TMPSTR
 D TMPAZS K @TMPAZS
 D TMPAZSI K @TMPAZSI
 D TMPSTR^W3AZSSTR K @TMPSTR
 D KILLSTRPRM
 D KILLAZORPRM
 D KILLSAVE
 D KILL^%W1PRM("AZOR")
 D KILL^%W1PRM("CITY")
 Q
 ;
INIT ;
 D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 N NIR S NIR=$$FIRSTNIR
 D PUT^%W1PRM("CITY",NIR)
 N AZOR S AZOR=$$FIRSTAZOR
 ;
 D PUT^%W1PRM("AZOR",AZOR)
 D PUT^%W1PRM("OLDAZOR",AZOR)
 I NIR,AZOR D NEW(NIR,AZOR)
 Q
 ;
SETHOME(PRM) ;
 N ID,VL,NS D TMPAZS
 S ID=$P(PRM,";") Q:ID=""
 S VL=$P(PRM,";",2)
 S NS=$E(ID,7,20) Q:'NS
 I ID["mehome" S $P(@TMPAZS@(NS),":",2)=VL
 I ID["adhome" S $P(@TMPAZS@(NS),":",3)=VL
 Q
 ;
IR(NIR)
 N IR S IR=$G(@$$^W4GL("P1IR")@(NIR))
 Q IR
 ;
IRI(NIR)
 Q $$INV($$IR(NIR))
 ;
W3AZS S W3AZS=$$^W4GL("W3AZS")_"($$COUNTRY,IRI)"
 Q
 ;
COUNTRY(STAM) ;
 S MSD=$$GET^%W1PRM("MSD") I 'MSD Q "IS"
 Q $$COUNTRY^W3R(MSD)
 ;
W3AZR ;
 D W3AZR^W3AZRIDK
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3AZSSTR
W3AZSSTR ; [ 25.02.12 15:06 ] [ 20.12.10 14:05 ] [ 30.10.10 08:00 ]
 N (JB,%ARG,%REM)
 I '$G(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3AZSSTR","%ARG=[%ARG")
 D TMPSTR
 ;
 W "<div align=""center"" >",!
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("STREETSTABLE",$$IR)_"</span>",!
 ;
 W "<table id=""TblStr"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
   W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""33%"">"_$$^%W1DICT("STREETNAME")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 N N,I
 ;
 I $G(%ARG("SHOW"))=0 W "<tr><td colspan=""2"" align=""center""><br>"_$$^%W1DICT("WAIT")_"<br></td></tr></table></div>",! Q
 N IRI S IRI=$$IRI Q:IRI=""
 ;;W "IRI="_IRI,!
 ;
 D STREET2TMP(IRI)
 ;
 N A F NP=1:1 Q:'$D(@TMPSTR@(NP))  D
 .S A=$G(^(NP))
 .W "<tr id=""trstr"_NP_""" >"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM(A)_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""checkbox"" id=""chstr"_NP_""" onClick=""OnClickTbl('"_NP_"','TblStr','trstr','chstr')"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
TMPSTR ;
 S TMPSTR="^[$$^W3MAIN]TMPSTR(JB)"
 Q
 ;
TMPSTR0 ;
 S TMPSTR0="^[$$^W3MAIN]TMPSTR0(JB)"
 Q
 ;
W3AZS ;
 D W3AZS^W3AZSIDK
 Q
 ;
COUNTRY(STAM) ;
 Q $$COUNTRY^W3AZSIDK
 ;
TMPAZS ;
 D TMPAZS^W3AZSIDK
 Q
 ;
TMPAZS0 ;
 D TMPAZS0^W3AZSIDK
 Q
 ;
TMPS ;
 S TMPS="^[$$^W3MAIN]TMPS(JB)"
 Q
 ;
AZOR(STAM) ;
 I $G(%ARG("AZOR")) Q %ARG("AZOR")
 N AZ S AZ=$$GET^%W1PRM("AZOR")
 I AZ["UNDEF" S AZ=""
 Q AZ
 ;
IR(STAM) ;
 N IRN,IR
 S IRN=$G(%ARG("CITY"))
 I IRN="" S IRN=$$GET^%W1PRM("IR")
 I IRN=""!(IRN["UNDEF") Q ""
 S IR=$G(@$$^W4GL("P1IR")@(IRN))
 Q IR
 ;
IRI(STAM) ;
 Q $$INV($$IR)
 ;
INV(TXT) ;
 I $$^%W1DIR="LTR" Q TXT
 Q $$INV^%L1FRM(TXT)
 ;
NOSHOW(IRN,STRI) ;
 N N,I,OK
 I STRI["%" Q 1
 S STRI=$$SPA(STRI)
 ;
 N IND,OK,ISTR,A
 D TMPSTR,TMPAZS,TMPS
 S OK=0
 ;
 I $D(@TMPS@(STRI)) S OK=1
 ;
 Q OK
 ;
MV2STRPRM(STAM) ;
 Q $G(%ARG("MV2STR"))
 ;;Q $$GET^%W1PRM("MV2STRS")
 ;
MV2AZORPRM(STAM) ;
 Q $G(%ARG("MV2AZOR"))
 ;;Q $$GET^%W1PRM("MV2AZORS")
 ;
KILLSTRPRM ;
 ;;D KILL^%W1PRM("MV2STRS")
 Q
 ;
KILLAZORPRM ;
 ;;D KILL^%W1PRM("MV2AZORS")
 Q
 ;
SPA(TXT) ;
 Q $$SPA^%L1FRM(TXT)
 ;
NEWTMP(PRM) ;
 N IR,CDMV
 S IR=$P(PRM,";") Q:IR=""
 S CDMV=$P(PRM,";",2)
 S %ARG("MV2AZOR")=CDMV
 D STREET2TMP($$INV(IR))
 Q
 ;
STREET2TMP(IRI) ;
 N A,N,I,J,OK,IRN,STRI
 D TMPAZS,TMPSTR,TMPS,W3AZS
 S OK=0,IRN=0
 S IR=$$SPA($$INV(IRI))
 S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  I $$SPA($G(^(N)))=IR S IRN=N Q
 I 'IRN Q
 ;
 K @TMPS
 ;
 S N="" F  S N=$O(@W3AZS@(N)) Q:N=""  D
 .S STRI=$$SPA($P(N,":")) Q:STRI=""
 .S @TMPS@(STRI)=""
 ;
 S N="" F  S N=$O(@TMPAZS@(N)) Q:N=""  D
 .S A=$P($G(^(N)),":")
 .S STRI=$$SPA(A) Q:STRI=""
 .S @TMPS@(STRI)=""
 ;
 ;;W "MV2STRPRM="_$$MV2STRPRM
 I $L($$MV2STRPRM) D  D KILLSTRPRM
 .D TMPAZS0
 .N PRM S PRM=$$MV2STRPRM
 .I $E(PRM,$L(PRM))=";" S PRM=$E(PRM,1,$L(PRM)-1)
 .N J,NS,RHVI
 .F J=1:1:$L(PRM,";") D
 ..S NS=$P(PRM,";",J) Q:NS=""
 ..S RHVI=$$SPA($P($G(@TMPAZS0@(NS)),":")) Q:RHVI=""
 ..K @TMPS@(RHVI)
 ;
 I $L($$MV2AZORPRM) D  D KILLAZORPRM
 .N PRM S PRM=$$MV2AZORPRM
 .I $E(PRM,$L(PRM))=";" S PRM=$E(PRM,1,$L(PRM)-1)
 .N J,NS,RHV,RHVI
 .F J=1:1:$L(PRM,";") D
 ..S NS=$P(PRM,";",J) Q:NS=""
 ..S RHV=$$SPA($G(@TMPSTR@(NS))) Q:RHV=""
 ..S RHVI=$$INV(RHV)
 ..S @TMPS@(RHVI)=""
 ;
 S N="",I=0 K @TMPSTR
 F  S N=$O(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM,IRI,N)) Q:N=""  D
 .;;W !,"N="_N
 .I $$NOSHOW(IRN,N) Q
 .S I=I+1,@TMPSTR@(I)=$$INV($$SPA(N))
 .;;W "I="_I,!
 ;
 ;;K @TMPS
 Q
 ;
 ;
NOCHANGE(IRI) ;
 N N,OK
 D TMPSTR0 K @TMPSTR0
 M @TMPSTR0=@TMPSTR
 K @TMPSTR
 D STREET2TMP(IRI)
 S OK=1
 S N="" F  S N=$O(@TMPSTR@(N)) Q:N=""  I '$D(@TMPSTR0(N))!($G(@TMPSTR0(N))'=$G(@TMPSTR(N))) S OK=0 Q
 S N="" F  S N=$O(@TMPSTR0@(N)) Q:N=""  I '$D(@TMPSTR(N))!($G(@TMPSTR0(N))'=$G(@TMPSTR(N))) S OK=0 Q
 K @TMPSTR0
 Q OK

W3BDIKA
W3BDIKA ; [ 04.05.07 18:59 ] [
 W "<input type=""button"" value=""PRESS ME"" onclick='CellSel(""td1"","""
 S ST=""
 f i=1:1:200 S ST=ST_i_$$H2U^%L1FRM(" divte`")_"~"
 W ST_""")' />",!
 Q

W3BDKADD
W3BDKADD(TXT) ; [ 09.01.08 11:47 ] [ 07.01.08 11:36 ] [ 19.07.07 08:32 ] [
 N OK,MAIN,MAX,OK,CODP,CMAIN
 N GL S GL="^[$$^W3MAIN]TMPORD(JB)"
 S OK=1,MAIN="",MAX=0,CMAIN=0
 ;
 I $P(TXT,"~")>0 D
 .N LAST S LAST=$O(@GL@(99999),-1)
 .N I F I=LAST:-1:1 Q:$P(@GL@(I),"~")=0
 .Q:'$D(@GL@(I))
 .I $P(@GL@(I),"~")=0 D
 ..S MAIN=$P(^(I),"~",2)
 ..S CMAIN=$P(^(I),"~",5)
 .Q:MAIN=""
 .S CODP=$P(TXT,"~",2)
 .K ^[$$^W3MAIN]TMPTSF(JB),^[$$^W3MAIN]TMPSET(JB)
 .
 .F I=LAST:-1:1 Q:'$D(@GL@(I))  Q:$P(@GL@(I),"~")=0  D
 ..N CD S CD=$P(@GL@(I),"~",2) Q:CD=""
 ..S ^[$$^W3MAIN]TMPTSF(JB,CD)=$G(^[$$^W3MAIN]TMPTSF(JB,CD))+1 ;$P(@GL@(I),"~",5)
 ..S ^[$$^W3MAIN]TMPSET(JB,$$SET(MAIN,CD))=$G(^[$$^W3MAIN]TMPSET(JB,$$SET(MAIN,CD)))+1 ;$P(@GL@(I),"~",5)
 .Q:'$D(@GL@(I))
 .
 .I $D(@$$^W4GL("P1EZA")@(MAIN)) D  Q
 ..N N S N="" F  S N=$O(@$$^W3GL@("P1EZA")@(MAIN,N)) Q:N=""  D  Q:MAX
 ...S SET=$E(N,2,5) Q:SET=""
 ...I $D(@$$^W4GL("P1SETA")@(SET,CODP)) S MAX=$P($G(@$$^W4GL("P1SETA")@(SET)),"\",2) S:'MAX MAX=1
 ..I $G(^[$$^W3MAIN]TMPSET(JB,$$SET(MAIN,CODP)))'<MAX S OK=0
 .
 .I $D(@$$^W4GL("P1EZT")@(MAIN)) D  Q
 ..S N="" F  S N=$O(@$$^W4GL("P1EZT")@(MAIN,N)) Q:N=""  D  Q:MAX
 ...S SET=$E(N,2,5) Q:SET=""
 ...I $D(@$$^W4GL("P1SETA")@(SET,CODP)) D
 ....N A S A=$G(@$$^W4GL("P1SETA")@(SET))
 ....S MAX=$P(A,"\",2)
 ..I $G(^[$$^W3MAIN]TMPTSF(JB,CODP))'<MAX S OK=0
 ..I $G(^[$$^W3MAIN]TMPSET(JB,$$SET(MAIN,CODP)))'<MAX S OK=0
 ;
 Q OK
 ;
 ;
SET(MAIN,CD) ;
 N OK S OK=0
 I $D(@$$^W4GL("P1EZA")@(MAIN)) D  Q OK
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZA")@(MAIN,N)) Q:N=""  D
 ..N SET S SET=$E(N,2,5) Q:SET=""
 ..I $D(@$$^W4GL("P1SETA")@(SET,CD)) S OK=N
 ;
 I $D(@$$^W4GL("P1EZT")@(MAIN)) D  Q OK
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZT")@(MAIN,N)) Q:N=""  D
 ..N SET S SET=$E(N,2,5) Q:SET=""
 ..I $D(@$$^W4GL("P1SETA")@(SET,CD)) S OK=N
 ;
 Q

W3BDKDTM
W3BDKDTM(STAM) ; [ 20.10.17 17:03 ] [ 05.09.17 16:14 ] [ 04.03.17 08:44 ] 
 I '$D(JB) S JB=+$G(%ARG("JB"))
 Q:$$CLOSE^W3HZMST(JB) 1
 N DAT,SHAA
 S DAT=$$DAT^W3HZMST(JB)
 S SHAA=$$SHAA^W3HZMST(JB)
 Q $$BDKDTTM(JB,DAT,SHAA)
 ;
BDKDTTM(JB,DAT,SHAA) ;
 I $$CLOSE^W3HZMST(JB) Q 1
 I $D(^[$$^W3MAIN]W3ORD(JB)) Q 1
 ;
 N VD S VD=1 I $E(DAT,1,2)<1!($E(DAT,1,2)>31) S VD=-9.1
 I $E(DAT,4,5)<1!($E(DAT,4,5)>12) S VD=-9.2
 I $E(DAT,7,8)'?2N S VD=-9.3
 I $E(DAT,7,8)<$$GG^%L1DC($H) S VD=-9.3
 ;;I $E(DAT,7,8)>$$GG^%L1DC($H),$$MM^%L1DC($H)<11 S VD=-9.3
 I '$$^%L1DC(DAT,3) S VD=-9.4
 I DAT'?2N1"."
 I VD<-1 Q VD
 S VD=$$^W3VLDDT(DAT) I VD<1 Q VD
 S VT=1
 ;;I SHAA>23 S VT=-10.1
 I $P(SHAA,":")'?2N S VT=-10.1
 I $P(SHAA,":",2)>59 S VT=-10.2
 I SHAA'?2N1":"2N S VT=-10.3
 I VT<0 Q VT
 ;
 N VT S VT=$$^W3VLDTM(DAT,SHAA) I VT<1 Q (VT-10)
 Q 1
 ;
 ;
VLD(PRM) ;
 N DAT,SHAA,ADSHAA,RES
 S DAT=$P(PRM,";")
 S SHAA=$P(PRM,";",2)
 S ADSHAA=$P(PRM,";",3)
 S RES=$$BDKDTTM(JB,DAT,SHAA)
 I '$$ADSHAA^W4PRM Q RES
 I RES<1 Q RES
 S RES=$$BDKDTTM(JB,DAT,SHAA)
 Q RES
 
 
 
 
 
 

W3BDKTM
W3BDKTM ; [ 04.03.17 08:33 ] [ 30.03.10 16:00 ] [ 11.11.07 15:27 ] [
 I $$CLOSE^W3HZMST(JB) Q 1
 N DAT,SHAA
 S DAT=$$DAT^W3HZMST(JB)
 S SHAA=$$SHAA^W3HZMST(JB)
 Q $$BDKDTTM(JB,DAT,SHAA)
 ;
BDKDTTM(JB,DAT,SHAA) ;
 I $$CLOSE^W3HZMST(JB) Q 1
 N VD S VD=$$^W3VLDDT(DAT) I VD<1 Q VD
 N VT S VT=$$^W3VLDTM(DAT,SHAA) I VT<1 Q (VT-10)
 Q 1
 ;
VLD(PRM) ;
 N DAT,SHAA,ADSHAA,RES
 S DAT=$P(PRM,";")
 S SHAA=$P(PRM,";",2)
 S ADSHAA=$P(PRM,";",3)
 S RES=$$BDKDTTM(JB,DAT,SHAA)
 I '$$ADSHAA^W4PRM Q RES
 I RES<1 Q RES
 S RES=$$BDKDTTM(JB,DAT,SHAA)
 Q RES

W3BOR
W3BOR ; [ 01.04.22 11:47 ] [ 28.03.22 07:54 ] [ 27.03.22 15:56 ] 
INIT ;
 D KILL^%W1PRM("W4BO") D:(+$$^W4DLVCSR=0) PUT^%W1PRM("DLVCSR","WEB")
 ;
 I $G(%ARG("MSDR")) D
  .D PUT^%W1PRM("MSDR",%ARG("MSDR")) D PUT^%W1PRM("BOR",1)
  .D COUNTRY^W3MSDRG D PUT^%W1PRM("LNG",%W1LNG)
 ;
 I $G(%ARG("MMCC")),$G(%ARG("MSDR")),$G(%ARG("MSD"))=%ARG("MSDR") D
 .D PUT^%W1PRM("MSDR0",%ARG("MSDR"))
 .D PUT^%W1PRM("MSD0",%ARG("MSD"))
 .D PUT^%W1PRM("MMCC",%ARG("MMCC"))
  ;
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I '$G(%ARG("MSD")),$G(%ARG("MSDR")) D
 .N MSD S MSD=0
 .N N S N="" F  S N=$O(^|$$^W3MAIN|W3MSDR(%ARG("MSDR"),N)) Q:N=""  D  Q:MSD
 ..I N,$G(^(N)) S MSD=N
 .I MSD D PUT^%W1PRM("MSD",MSD)
 ;
 I $L($G(%ARG("COLOR"))) D PUT^%W1PRM("COLOR",%ARG("COLOR"))
 ;
 I $$OUTCOMP^W3VHOD D PUT^%W1PRM("OUTCOMP",$$OUTCOMP^W3VHOD)
 ;
 I $G(%ARG("DLVCSR")) D PUT^%W1PRM("DLVCSR",%ARG("DLVCSR"))
 ;
 I $G(%ARG("CALLCENTER"))!($G(%ARG("CALLCENTER"))=0) D
 .D PUT^%W1PRM("CALLCENTER",%ARG("CALLCENTER"))
 .I +$G(%ARG("CALLCENTER"))=.5 D
 ..D PUT^%W1PRM("DLVCSR",2)
 Q
 ;
 ;
CHNREST(MSD) ; 
 D PUT^%W1PRM("MSD",MSD)
 Q 
 ;
SHOWOPT(STAM) ;
 I '$$MMCC^W4PRM Q 1
 I $G(%ARG("MSDR"))'=$$GETP^%W1PRM("MSDR0") Q 1
 I $$CC Q 0
 Q 1
 ;
SHOWMAIN() ;
 I '$$MMCC^W4PRM Q 1
 I $$GETP^%W1PRM("MSDR")'=$$GETP^%W1PRM("MSDR0") Q 0
 Q 1
 ;
CC(STAM)
 I '$$MMCC^W4PRM Q 1
 N MSD S MSD=$G(%ARG("MSD"))
 I MSD="" S MSD=$$GETP^%W1PRM("MSD")
 I MSD="ALL"!(MSD="")!(MSD=$G(%ARG("MSDR"))) Q 1
 Q 0
 ;
MAINCC(STAM) ;
 I $$SHOWMAIN&$$CC Q 1
 Q 0
 
 
 
 

W3C2M
W3C2M ; [ 08.07.19 10:18 ] [ 06.01.08 12:04 ] [ 29.12.07 11:07 ] 
 S FL=$$WEBL^W3MAIN_"cities.htm"
 O FL:(READONLY:REWIND)
 ;;S $ZT="G CFL"
 F  U FL R A Q:A["<body"
 F  U FL R A Q:A["<table"
 S FLD=0,ST="",NST=0
 F  U FL R *B D
 .I $C(B)="<" D  Q
 ..I $L(ST) D ST S ST="" U FL
 ..S FLD=0 R *B1,*B2
 ..I $C(B1)="t",$C(B2)="r" S ITD=0,NST=NST+1 Q
 ..I $C(B1)="t",$C(B2)="d" S ITD=ITD+1,FLD=1 Q
 .I $C(B)=">",FLD=1 S FLD=2
 .I $C(B)=">" S ST="" Q
 .I FLD=2 D
 ..S ST=ST_$C(B)
CFL C FL
 Q
 ;
ST ;
 I ITD=1!(ITD=3) Q
 S ST=$$U2H(ST) Q:ST=""
 I ITD=2 S IR=ST,IR1=$TR($$INVH^%L1FRM(IR),"()",")(") Q
 I ITD=4,$G(IR)'="" N RES S RES=$$SETSTREET(IR,ST)
 Q
 ;
SETSTREET(IR,ST,NOSETCITY)
 I $G(IR)="" Q "CITYNOTDEFINED"
 I $G(ST)="" Q "STREETNOTDEFINED"
 ;
 I $G(IR1)="" S IR1=$TR($$INVH^%L1FRM(IR),"()",")(")
 N COUNTRY S COUNTRY=$$COUNTRY^W3PRM I COUNTRY="" S COUNTRY="IS"
 ;
 I '$G(NOSETCITY)!'$D(^[$$^W3MAIN]P1STREET(COUNTRY,IR)) D
 .S ^[$$^W3MAIN]P1STREET(COUNTRY,IR)=IR1
 ;
 S STREET1=$TR($$INVH^%L1FRM(ST),"()",")(")
 S ^[$$^W3MAIN]P1STREET(COUNTRY,IR,ST)=STREET1
 ;U 0 W "IR="_IR_"  IR1="_IR1_"  STREET="_ST_"  STREET1="_STREET1,! H 1
 S IR=""
 Q 1
 ;
 ;
U2H(ST)
 N ST1,IND,FL
 S ST1="",IND="",FL=0
 S ST=$$RPL^%L1FRM(ST,"&nbsp;","")
 S ST=$$RPL^%L1FRM(ST,"&quot;","""")
 S ST=$$CLEAR^%L1FRM(ST)
 S ST=$$SP1^%L1FRM(ST)
 N J F J=1:1:$L(ST) D
 .I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 .I FL,$E(ST,J)=";" S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND="" Q
 .I FL S IND=IND_$E(ST,J) Q
 .S ST1=ST1_$E(ST,J)
 Q ST1
 
 

W3CHRST
W3CHRST ; [ 18.12.25 17:07 ] [ 21.12.17 17:20 ] [ 12.09.17 13:59 ] 
 N (JB,%ARG,%REM)
 N PAD S PAD=6 I $$^W4TABLET=2 S PAD=8
 S MSDR=$$MSDR^W4PRM Q:'MSDR
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 W "<span class=""hdchoice"">"_$$^%W1DICT("CHOICEBRANCH")_"</span>",!
 W "<br><br>"
 ;
 W "<table border=""1"" width=""40%"" class=""menu"" id=""restlist"" "
  W "cellpadding="""_$$^W4KF(PAD)_"px"" "
  W "cellspacing=""1px"" "
  W " style=""background-color:white"" "
 W ">",!
  S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(MSDR,N)) Q:N=""  D
  .I $$DLVWEB^W4DLVCSR,+N=+MSDR Q
  .S A=$G(^(N))
  .W "  <tr id=""tr"_N_""" onClick=""Click('"_N_"')"" >"
  .N BGCOLOR,COLOR S BGCOLOR="white",COLOR="green"
  .I +N=+$$CUR S BGCOLOR="white",COLOR="red"
  .W "   <td "_$$^%W1ALIGN_" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;background-color:"_BGCOLOR_";color:"_COLOR_";text-align:center;cursor:pointer"" "
  .      W ">"
  .       W $$H2U^%L1FRM($$MSDN^W3R(N))
  .W "   </td>",!
  .W "  </tr>",!
  W " </table>"
 W "<br>"
 ;;D BACK
 W "<br>"
 W "</div>",!
 Q
 ;
 ;
BACK ;
 W " <table dir="""_$$^%W1DIR_""" >",!
 W "  <tr>"
 W "   <td>"
        W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
        I $$^W4TABLET=2 W " padding=""7px"" "
        W $$^W4TOUCH_"=""Back()"" style=""color:red"" "
 W "   </td>"
 W "  </tr>",!
 W " </table>",!
 Q
 ;
CUR(STAM) ;
 I $$GETP^%W1PRM("MRKTO") Q $$GETP^%W1PRM("MRKTO")
 Q $$MSD^W3HZMST(JB)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3CIB
W3CIB ; [ 25.02.12 15:06 ] [ 26.04.11 17:12 ] [ 21.04.11 17:51 ]
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
CYC ;
 ;
 D GL
 K @GL
 S %W1LNG="H"
 ;
 S DAT=$ZD($H,"YYMMDD")
 L +^W3CIB(DAT):2
 S K=0
 S ENDSMB=4
 ;
 S ^LLL($J)=0
 U 0 S ST=""
 ;
 F  R *A:1 Q:A>-1
 ;
 S ST=$C(A)
 F  R *A:1 Q:A=ENDSMB  Q:A=-1  D
 .S ST=ST_$C(A)
 .I $C(A)=">" D  S ST=""
 ..D SETST
 ;
 S ^LLL($J)=.1
 I $L(ST) D SETST
 ;
 S ^LLL($J)=.2
 L -^W3CIB(DAT)
 ;
 S ^LLL($J)=1
 ;
 D ^W3CIBORD
 ;
 S ^LLL($J)=2_";"_$G(RES)_";"_$H
 K @GL
 ;
 S RES=RES_$C(13)
 U $P:(NOWRAP:NOWRAP)
 W RES,!,#
 Q
 ;
DCD(A) ;
 N J,B,CHR
 S B="",J=0
DCDC S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 I CHR'=215 D  G DCDC
 .S B=B_$C(CHR)
 S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 S B=B_$C(CHR-16)
 G DCDC
DCDE ;
 Q B
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPCIB(MYDVN,UR)"
 S MYDVN=$J ;$$^%L3MYDVN
 S UR=1
 Q
SETST ;
 I ST="" Q
 N ST1
 S ST1=ST
 I ST["<" S ST1=$P(ST,"<") D SETST1 S ST1="<"_$P(ST,"<",2,200)
 D SETST1
 Q
SETST1 ;
 I ST1="" Q
 N B,C,LI,J
 S LI=$O(^W3CIB(DAT,999999),-1)+1
 S B=$$DCD(ST1)
 S B=$TR(B,$C(13,10),"")
 S K=K+1,@GL@(K)=B
 S ^W3CIB(DAT,LI)=B
 Q

W3CIBORD
W3CIBORD ; [ 25.02.12 15:23 ] [ 21.04.11 17:31 ] [ 20.04.11 23:48 ]
 ;---- MEMSHAK LE CIBUS
 N (%ARG,%REM,RES) D GL^W3CIB
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S RES="NOK"
 S %W1LNG="H"
 ;
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 ;
 S ORDERINFO="ORDERS_INFO"
 S ORDER="ORDER"
 S RESTINFO="REST_INFO"
 S COMPINFO="COMPANY_INFO"
 S ADDRESS="ADDRESS"
 S DISHES="ORDER"
 S DISHEL="DISH"
 S SUBEL="SDISH"
 S SUBS="SIDE_GROUP"
 ;                    GROUP ORDERS -- ????????????????
 S I=0,BGOIO=0
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 ;;U 0 W A,!
 I A[("<"_ORDERINFO) D
 .S BGSNG=I
 .S REST=$$GET(BGSNG,"ID",RESTINFO) I 'REST S RES="NOREST" Q
 .S MSD=$G(^[$$^W3MAIN]W3CIB2M(REST)) I MSD="" S RES="NOMSD" Q
 .
 .S CITY=$$GET(BGSNG,"CITY",ADDRESS,"H")
 .S STREET=$$GET(BGSNG,"STREET",ADDRESS,"H")
 .S HOME=$$GET(BGSNG,"NUMBER",ADDRESS,"H")
 .S COMP=$$GET(BGSNG,"NAME",COMPINFO,"H") ; ???????
 .S PHONE01=$TR($$GET(BGSNG,"PHONE",COMPINFO)," ","")
 .S BGOI=$$FIND(BGSNG,ORDER,ORDERINFO)
CYCORD .
 .I 'BGOI G CYC
 .I BGOI=99999 S I=BGOIO+1 G CYC
 .S JB=$$^%W1SsID("TCIB")
 .D PUT^%W1PRM("MSD",MSD)
 .K @TMPORD S K=0
 .S PHONE02=$$GET(BGOI,"USER_PHONE",ORDER)
 .S NAME=$$GET(BGOI,"USER_NAME",ORDER,"H")
 .S CODE=$S(PHONE01:PHONE01,PHONE02:PHONE02,1:"1111111")
 .I CODE="" S RES="NOPHONE" Q
 .D PUT^%W1PRM("CODE",CODE)
 .
 .S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 .
 .S ASM=$$GET(BGOI,"ORDER_ID",ORDER)
 .
 .S TOTIME=$$GET(BGOI,"TIME",ORDER)
 .D
 ..S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 ..I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N1":"2N.E D  Q
 ...S DAT=$P(TOTIME," ")
 ...S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ...S SHAA=$P($P(TOTIME," ",2),":",1,2)
 ..I TOTIME?.E2N1":"2N1":"2N.E D
 ...S DAT=$ZD($H,"DD.MM.YY")
 ...S SHAA=$P(TOTIME,":",1,2)
 .
 .I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800 D
 ..S SHAA=$$TM^W3TIME($H,CITY)
 .
 .D PUT^W3HZMST(JB,"NAME",NAME)
 .D PUT^W3HZMST(JB,"NMB",CODE)
 .D PUT^W3HZMST(JB,"CODE",CODE)
 .D PUT^W3HZMST(JB,"PELE",PHONE02)
 .D PUT^W3HZMST(JB,"DAT",DAT)
 .D PUT^W3HZMST(JB,"SHAA",SHAA)
 .D PUT^W3HZMST(JB,"DATCB",ZMANK)
 .D PUT^W3HZMST(JB,"HZMLAK",ASM)
 .
 .D PUT^W3HZMST(JB,"MKR",5) ;
 .
 .S CODTS=5
 .S CIBCARD=$$GET(BGOI,"USER_CARD",ORDER)
 .D PUT^W3HZMST(JB,"CODTS",CODTS)
 .D PUT^W3HZMST(JB,"CIBCARD",$$^W3ENCR(JB_";"_CIBCARD))
 .
 .S COMMENT=""
 .S CMHD=$$GET(BGOI,"COMMENTS",ORDER,"H")
 .S FLAT=""
 .S ENTRANCE="" ;$$GET(BGSNG,"entrance",ORDER,"H") ; ???????????
 .S FLOOR="" ;$$GET(BGSNG,"floor",ORDER,"H") ; ???????????
 .
 .D PUT^W3HZMST(JB,"CITY",CITY)
 .D PUT^W3HZMST(JB,"STREET",STREET)
 .D PUT^W3HZMST(JB,"COMMENT",COMMENT)
 .D PUT^W3HZMST(JB,"HOME",HOME)
 .D PUT^W3HZMST(JB,"FLAT",FLAT)
 .D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 .D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 .D PUT^W3HZMST(JB,"COMP",COMP)
 .D PUT^W3HZMST(JB,"CMHD",ASM_":CIB "_CMHD)
 .
 .S DMSH="" ;$$GET(BGSNG,"delivery_price",ORDER) ???????????
 .S HNH="" ; $$GET(BGSNG,"discount",ORDER) ?????????????
 .S TSHL=$$GET(BGOI,"TOTAL_PRICE",ORDER)
 .
 .D PUT^W3HZMST(JB,"DMSH",DMSH) ;
 .D PUT^W3HZMST(JB,"HNH",HNH)
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 .
 .;;D SENDOK^W3CIB(MSADDR_"/InProcess",MSD) ; ????????????
 .S BGDI=BGOI
CYCD .S BGDI=$$FIND(BGDI,DISHEL,ORDER)
 .I 'BGDI D NEWHZ S BGOIO=BGOI,BGOI=$$FIND(BGOI+1,ORDER,ORDERINFO) G CYCORD
 .;
 .S CD=$$GET(BGDI,"ID",DISHEL)
 .;;U 0 W "CD="_CD,!
 .S NM=$$GET(BGDI,"NAME",DISHEL)
 .I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .;;S CD=$$CONVCD(CD)
 .S PRC="" I CD D
 ..S PRC=$$MH^W3P(CD)
 .S QN=$$GET(BGDI,"MULTIPLY",DISHEL)
 .S CMNT="" ;$$GET(BGDI,"user_food_comments",DISHEL) ; ?????????????
 .S CMNT=$TR(CMNT,"*!","")
 .S CMNT=$$SPA^%L1FRM(CMNT)
 .S CMNT=$$SP1^%L1FRM(CMNT)
 .S MAZMIN="" ;$$GET(BGDI,"AssignedUserName",DISHEL) ; - ?????????
 .I MAZMIN'="" S CMNT=CMNT_"  [ "_MAZMIN_" ]"
 .S K=K+1
 .S @TMPORD@(K)="0~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN_"~~"_$$INVH^%L1FRM(CMNT)
 .
 .S BGSI=BGDI
CYCSUBS .S BGSI=$$FIND(BGSI,SUBEL,DISHEL)
 .I 'BGSI S BGDI=$$FINDEND(BGDI,DISHEL,ORDER) G CYCD
 .;
 .S CDT=$$GET(BGSI,"ID",SUBEL)
 .S NMT=$$GET(BGSI,"NAME",SUBEL)
 .I $$CDTXT S CDT=$$CD(NMT,CDT),NMT=$$DESC(NMT)
 .S PRCT=0 ;;$$GET(BGSI,"extra_price",SUBEL) ; ????????
 .I $G(CD),$G(CDT),$G(@$$^W4GL("MHT")@(CD,CDT)) D
 ..S PRCT=^(CDT)
 .S K=K+1
 .S:'$G(QNT) QNT=1
 .S @TMPORD@(K)="1~"_CDT_"~"_$$INVH^%L1FRM(NMT)_"~"_$J(PRCT,2,2)_"~"_QNT
 .S BGSI=$$FINDEND(BGSI,SUBEL,DISHEL)
 .G CYCSUBS
 ;
 G CYC
END Q
 ;
GET(I,EL,PARENT,PRHB,FORW)
 N IND
 S IND=$$FIND(I,EL,PARENT,"",$G(FORW))
 I 'IND Q ""
 Q $$GETVL(IND,EL,$G(PRHB))
 ;
FIND(I,EL,PARENT,PR,FORW) ;
 N OK,A,J,J1,START S OK=0
 S START=I+1
 ;
 I $G(FORW)="F" D
 .F J1=START:1 Q:'$D(@GL@(J1))  S A=$G(^(J1)) Q:A[("<"_PARENT_">")  Q:A[("<"_PARENT_" ")
 .I $D(@GL@(J1)) S START=J1+1 Q
 .S START="END"
 I START="END" Q 0
 ;
 F J=START:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J ;;+1
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL,PR) ;
 N A,A1,ZN
 S A=$G(@GL@(I))
 S A1=$G(@GL@(I+1))
 I A1["<",A1[">" Q ""
 I A="" Q ""
 S ZN=A1
 I A1[("<"_EL) D
 .S ZN=$P(A,"<"_EL_">",2)
 .S ZN=$P(ZN,"</"_EL_">")
 S ZN=$$REG(ZN)
 S ZN=$$SPA^%L1FRM(ZN)
 I ZN="UNDEFINED" Q ""
 I $G(PR)="H" D
 .S ZN=$$INVH^%L1FRM(ZN)
 Q ZN
 ;
NEWHZ ;
 S HNH=$J($$TOTORD^W3HZMST(JB)-TSHL,2,2)
 D PUT^W3HZMST(JB,"HNH",HNH)
 ;
 D TERM^W3ORDVW
 S RES="OK"
 ;;S ^[$$^W3MAIN]W3CIBORD(ASM,JB)=MSD_";"_$ZD($H,"DD.MM.YY  24:60")
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CD(TXT,CD) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ")
 I TXT?1N.N1"-".E Q $P(TXT,"-")
 I TXT?1N.N1" . ".E Q $P(TXT," . ")
 I TXT?1N.N1".".E Q $P(TXT,".")
 Q "0-"_CD
 ;
DESC(TXT) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ",2,20)
 I TXT?1N.N1"-".E Q $P(TXT,"-",2,20)
 I TXT?1N.N1".".E Q $P(TXT,".",2,20)
 I TXT?1N.N1" . ".E Q $P(TXT," . ",2,20)
 Q TXT
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 S TXT=$TR(TXT,"`","'")
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
CDTXT(STAM) ;
 Q 1
 ;I MSD=1!(MSD=99999) Q 1
 Q 0
 ;
CONVCD(CD) ;
 I CD="" Q 0
 I $P(CD,"=",2) S CD=$P(CD,"=",2) Q CD
 Q "0-"_$P(CD,"=")

W3CLND
W3CLND ; [ 17.02.09 20:46 ] [ 14.11.08 04:16 ] [ 27.10.08 09:34 ]
 N I,DD,DD0,DH,BGC,MEDT S:'$D(JB) JB=0
 S MEDT=+$H
 I $$GET^%W1PRM("FUTDAT") S MEDT=$$GET^%W1PRM("FUTDAT")
 F I=MEDT:1:$H+27 D
 .S ^[$$^W3MAIN]TMPCLN(JB,I-MEDT+1)=I_"~"_$P($$^%L1DC(I,1),".")_"~"_$$^%W1DICT("DAY"_$$^%L1DC(I,8))
VIEW ;
 S BGC="white"
 W "<table border='1' cellspacing='0' dir='LTR' >",!
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPCLN(JB,I))  D
 .S DH=$P($G(^(I)),"~")
 .S DD=$P($G(^(I)),"~",2)
 .S DD0=$P($G(^(I-1)),"~",2)
 .I I>1&(DD<DD0) S BGC="c0d2ec"; "yellow"
 .W "<td bgcolor='"_BGC_"' id='tdid"_I_"' style='padding:2px' >"
 .N HR S HR=0
 .I $$^W3VLDDT(DH)>0 W "<a href='#' onClick='ClickDate("_I_")' >" S HR=1
 .W DD
 .I HR W "</a>"
 .W "</td>",!
 W " </tr>",!
 S BGC="white"
 W " <tr>",!
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPCLN(JB,I))  D
 .S DD=$P($G(^(I)),"~",2)
 .S DD0=$P($G(^(I-1)),"~",2)
 .I I>1&(DD<DD0) S BGC="c0d2ec" ;"yellow"
 .W "<td dir='"_$$^%W1DIR_"' bgcolor='"_BGC_"'>"_$P($G(^[$$^W3MAIN]TMPCLN(JB,I)),"~",3)_"</td>",!
 W " </tr>",!
 W "</table>",!
 Q

W3CLOSEM
W3CLOSEM(MSD) ; [ 02.12.12 13:00 ] [
 I '$G(MSD) Q 0
 I $G(^[$$^W3MAIN]W3CLOSEM(MSD)) Q 1
 Q 0

W3CLSET
W3CLSET ; [ 23.04.12 21:36 ] [ 25.06.08 12:54 ] [
 S MSDR=1 S $ZT="CYC"
 S N=""
CYC F  S N=$O(^W3MSDR(MSDR,N)) Q:N=""  D:$G(^(N))
 .S UCI=$G(^UCI(N)) Q:UCI=""
 .D SETA
 Q
SETA ;
 W !,N," ",UCI,!
 K MS N N,NS,SET
 S N="" F  S N=$O(^[UCI]P1EZA(N)) Q:N=""  D
 .S NS="" F  S NS=$O(^[UCI]P1EZA(N,NS)) Q:NS=""  D
 ..S SET=$E(NS,2,6) Q:SET=""  S MS(SET)=""
 ;
 S N="" F  S N=$O(^[UCI]P1EZT(N)) Q:N=""  D
 .S NS="" F  S NS=$O(^[UCI]P1EZT(N,NS)) Q:NS=""  D
 ..S SET=$E(NS,2,6) Q:SET=""  S MS(SET)=""
 ;
 S SET="" F  S SET=$O(^[UCI]P1SETA(SET)) Q:SET=""  I '$D(MS(SET)) K ^[UCI]P1SETA(SET)
 Q

W3CNTRY
W3CNTRY ; [ 13.05.08 22:28 ] [
LNG(COUNTRY) ;
 Q $P($G(^[$$^W3MAIN]W3CNTRY(COUNTRY)),"\")
MTB(COUNTRY) ;
 Q $P($G(^[$$^W3MAIN]W3CNTRY(COUNTRY)),"\",2)

W3CODE
W3CODE(STAM) ; [ 21.10.18 08:55 ] [ 07.01.08 11:42 ] [ 12.07.07 09:58 ] [
 Q +$G(@$$^W4GL("W3CODE"))
 

W3COLOR
W3COLOR ; [ 09.01.10 16:27 ] [ 23.12.07 20:21 ] [
 W "<table>",!
 W "<tr><td style=""background-color:"_$$BGHD^W3CSS("RW")_">"_$$^%W1DICT("CHOICECOLOR")_"</td></tr>",!

W3COLORG
W3COLORG(SCR,KEY,ID,VL) ; [ 25.09.18 07:19 ] [ 24.09.18 12:42 ] [ 25.04.12 18:44 ] 
 N VL S VL="<NOGET>"
 I $G(SCR)=""!($G(KEY)="")!($G(ID)="") Q VL
 ;
 I SCR["W3COLOR",ID="CL1" Q $G(^[$$^W3MAIN]W3COLOR(KEY))
 ;
 I SCR="W3COLOR" D  ;------ HEADER PARTITION ---------------
 .I ID="FONTFM" S VL=$$FUNC^%LCASE($P($$FONTFM^W3CSS,":",2))
 .I ID="BORD" D
 ..S VL='$$NOBORD^W3CSS(KEY)
 .
 .I ID="BGHDORD" D
 ..S VL=$$BGHDORD^W3CSS(KEY)
 ..D GETBG
 .
 .F I="PSWCOLOR","FORGPSW","FGSC","FGPHONE","BGINP","FRINP","PHONEIMG" I ID=I D
 ..S VL=$$GETVL(I)
 .
 .I ID="WELCOME" S VL=$$WELCOMECOLOR^W3CSS(KEY)
 .I ID="MEMBHERE" S VL=$$CONTRAST^W3CSS(KEY)
 .I ID="PHONEIMG" S VL=$$PHONEIMG^W3CSS(KEY)
 .I ID="BTNWH" S VL=$G(^[$$^W3MAIN]W3COLOR(KEY,"BTNWH"))
 .
 .F I="USRCOLOR","RMBME","SUBMBTN","SIGNBTN","SRCHBTN","LOGO" I ID=I D
 ..S VL=$$GETVL(I)
 ;
 ;
 I SCR="W3COLORG" D  ;-----------------  GROUPS  ----------------------------
 .N I F I="BGGROUP","BGTRGR","FGGROUP","FGPRINT","FGMENU","BCURGR","FGCURGR","HGTRGR","BGSUBHD","FGSUBHD" D
 ..I ID=I S VL=$$GETVL(I)
 ;
 ;
 I SCR="W3COLORI" D  ;---------------  ITEMS  -------------------------------
 .N I F I="BGITEMS","BGGRIT","FGITEMS","FGCD","FGMH","FGDET","BGCHOOS","FGLINE","FGLEV","FONTIT","FONTDET","FONTCD","FONTMH","BCGRIT","FGGRIT","FGPRESS","BGITSHOW","FGHDITS","FONTHITS" D
 ..I ID=I S VL=$$GETVL(I)
 .I ID="CODE" S (VL,CODE)=+$$CODE^W3PRM
 .I ID="ITORDBRD" S VL=$$PRM^W3IMG("ITORDBRD")
 .I ID="FGDETITS" S VL=$$PRM^W3IMG("FGDETITS")
 .I ID="PICTURE" S (VL,PICTURE)=+$$PICTURE^W3PRM
 ;
 ;
 I SCR="W3COLORA" D  ;--------------- ADDITIONS ------------------------------
 .N I F I="BGADD","FGADD","BGADDIT","FGADDIT","ADDBOLD","FGADDTO","FGHDADD","FGMHADD","FGMAXADD","FGTOTADD","FGADDCHS","FGPLUS","FGMIN" D
 ..I ID=I S VL=$$GETVL(I)
 .I ID="CLKAVADD" S VL=$$PRM^W3IMG("CLKAVADD")
 ;
 ;
 I SCR="W3COLORO" D  ;---------------  ORDER  -------------------------------
 .N I F I="BGBDORD","BGTBLORD","BGORDHD","FGORDHD","BGTDORD","FGORDCD","FGORDIT","FGORDMH","FGORDADD","FGORDCMN" D
 ..I ID=I S VL=$$GETVL(I)
 ;
 I SCR="W3COLORB" D  ;--------------  BOTTOM  ------------------------------
 .N I F I="BGORDB","FGBOT","FG2PAY" D
 ..I ID=I S VL=$$GETVL(I)
 .F I="BACK2ENT","FGDLVPAY","FGDISC","TERMORD" D
 ..I ID=I S VL=$$PRM^W3IMG(I)
 ;
 I SCR="W3COLORV" D  ;--------------  NEXT  ------------------------------
 .N I F I="BGNEXT","BGHD","BGBODY","FGBODY","FGHD","FRHD","FGHDUS","FGHDMSD","FRHDFLD","WGHDFLD","FGFLD","WGFLD","BGTB","FRTB","MENUBO" D
 ..I ID=I S VL=$$GETVL(I) I $E(I,1,2)="BG"
 .;
 .N I F I="FGODHD1","FGODHD2","FGITVW","FGADDVW","FGCMNTVW","FGENCR","FGSUGT","FGDLVPAY","FGTOT" D
 ..I ID=I S VL=$$GETVL(I)
 ;
 Q VL
 ;
 ;
GETBG ;
 I VL?1"background-color:".e S VL=$P(VL,":",2,50)
 I VL?1"background-image:".e S VL=$P(VL,":",2,50)
 I VL["url('" S VL=$P($P(VL,"url('",2),"'")
 I VL["url(""" S VL=$P($P(VL,"url(""",2),"""")
 Q
 ;
GETVL(I) ;
 N VL
 S VL=$G(^[$$^W3MAIN]W3COLOR(KEY,I))
 I $E(I,1,2)="BG"!(I="BCURGR") D GETBG
 Q VL
 
 
 
 
 
 
 
 

W3COLORS
W3COLORS(SCR,KEY,ID,VL) ; [ 24.09.18 11:25 ] [ 25.04.12 18:44 ] [ 23.01.12 18:11 ] 
 N (SCR,KEY,ID,VL)
 S OK=0
 I SCR["W3COLOR" N CL S CL=KEY
 ;
 I SCR["W3COLOR",ID="CL1" S ^[$$^W3MAIN]W3COLOR(CL)=VL
 ;
 I SCR="W3COLOR" D
 .F I="FONTFM","PSWCOLOR","FORGPSW","FGSC","FGPHONE","PHONEIMG","BGINP","FRINP","BTNWH" I ID=I D
 ..S:VL[":" VL=$P(VL,":",2)
 ..I VL'["." S VL=$$FUNC^%UCASE(VL)
 ..S ^[$$^W3MAIN]W3COLOR(CL,I)=VL
 .
 .I ID="BORD" S ^[$$^W3MAIN]W3COLOR(CL,"NOBORD")='VL
 .
 .I ID="BGHDORD" D SVBG  S ^[$$^W3MAIN]W3COLOR(CL,"BGHDORD")=VL
 .
 .I ID="WELCOME" S:VL[":" VL=$P(VL,":",2) S ^[$$^W3MAIN]W3COLOR(CL,"WELCOMECOLOR")=VL
 .
 .I ID="MEMBHERE" S:VL[":" VL=$P(VL,":",2) S ^[$$^W3MAIN]W3COLOR(CL,"CONTRAST")=VL
 .
 .F I="USRCOLOR","RMBME","SUBMBTN","SIGNBTN","SRCHBTN","LOGO" I ID=I D
 ..S ^[$$^W3MAIN]W3COLOR(CL,I)=VL
 ;
 ;
 I SCR="W3COLORG" D
 .F I="BGGROUP","BGTRGR","FGGROUP","FGPRINT","FGMENU","BCURGR","FGCURGR","HGTRGR","BGSUBHD","FGSUBHD" D
 ..D SETCOLOR
 ;
 ;
 I SCR="W3COLORI" D  ;----------------------------------------------
 .N I F I="CODE","PICTURE","BGITEMS","BGGRIT","FGITEMS","FGCD","FGMH","FGDET","BGCHOOS","FGLINE","FGLEV","FONTIT","FONTDET","FONTCD","FONTMH","BCGRIT","FGGRIT","FGPRESS","BGITSHOW","FGHDITS","FONTHITS" D
 ..D SETCOLOR
 .I ID="CODE" S @$$^W4GL("W3PRM")@("CODE")=+VL
 .I ID="PICTURE" S @$$^W4GL("W3PRM")@("PICTURE")=+VL
 .I ID["FONT" S ^[$$^W3MAIN]W3COLOR(CL,ID)=+VL_"pt"
 .I ID="ITORDBRD" S ^[$$^W3MAIN]W3COLOR(CL,ID)=+VL
 .I ID="FGDETITS" S ^[$$^W3MAIN]W3COLOR(CL,ID)=VL
 ;
 ;
 I SCR="W3COLORA" D  ;----------------------------------------------
 .N I F I="BGADD","FGADD","BGADDIT","FGADDIT","ADDBOLD","FGADDTO","FGHDADD","FGMHADD","FGMAXADD","FGTOTADD","FGADDCHS","FGPLUS","FGMIN" D
 ..D SETCOLOR
 .I ID="CLKAVADD" S ^[$$^W3MAIN]W3COLOR(CL,ID)=VL
 ;
 ;
 I SCR="W3COLORO" D  ;----------------------------------------------
 .N I F I="BGBDORD","BGTBLORD","BGORDHD","FGORDHD","BGTDORD","FGORDCD","FGORDIT","FGORDMH","FGORDADD","FGORDCMN" D
 ..D SETCOLOR
 ;
 ;
 I SCR="W3COLORB" D  ;----------------------------------------------
 .N I F I="BGORDB","FGBOT","FG2PAY" D
 ..D SETCOLOR
 .F I="BACK2ENT","FGDLVPAY","FGDISC","TERMORD" I ID=I D
 ..S:VL[":" VL=$P(VL,":",2)
 ..S ^[$$^W3MAIN]W3COLOR(CL,I)=VL
 ;
 ;
 I SCR="W3COLORV" D  ;----------------------------------------------
 .F I="BGNEXT","BGBODY","BGHD","FRHD","FGHDUS","FGHDMSD","FRHDFLD","WGHDFLD","FGFLD","WGFLD","BGTB","FRTB","FGITVW","FGADDVW","FGCMNTVW","FGENCR","FGODHD1","FGODHD2","FGSUGT","FGDLVPAY","FGBODY","FGTOT","MENUBO" D
 ..I ID=I D
 ...I $E(I,1,2)="BG",I'="BGHD" D SVBG S ^[$$^W3MAIN]W3COLOR(CL,I)=VL Q
 ...I $E(I,1,2)="FG"!(I'="FR") S:VL[":" VL=$P(VL,":",2) S ^[$$^W3MAIN]W3COLOR(CL,I)=VL Q
 ...S ^[$$^W3MAIN]W3COLOR(CL,I)=VL
 ;
 S OK=1
 Q OK
 ;
 ;
SETCOLOR ;
 I ID=I D
 .S:VL[":" VL=$P(VL,":",2)
 .I $E(I,1,2)="BG",I'="BGHD" D SVBG
 .I I="BCURGR" D SVBG
 .S ^[$$^W3MAIN]W3COLOR(CL,I)=VL
 Q
 ;
GETBG ;
 I VL[":" S VL=$P(VL,":",2)
 I VL["url" S VL=$P($P(VL,"url('",2),"'")
 Q
 ;
SVBG ;
 I VL[":" Q
 I VL["." S VL="background-image:url('"_$$FUNC^%LCASE(VL)_"')" Q
 I VL["-" Q
 I VL["^" Q
 S VL="background-color:"_VL
 Q
 

W3COMP
W3COMP(PRM,CODE) ; [ 18.12.25 17:07 ] [ 17.10.18 12:24 ] [ 06.06.12 16:35 ] 
 N (JB,%ARG,CODE,PRM)
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W3COMP")
 D PUT^%W3DEB("W3COMP","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 D PUT^%W3DEB("W3COMP","MSD=MSD")
 ;
 N GL D GL
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"
  W $$^%W1DICT("MAINCUSTOMER")_"</td></tr>",!
 W "</table>",!
 ;
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 ;
 W "<table width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 ;S TDSPAN=2
 D CODE,NAME,PSW
 W "</tr>",!
 W "</table>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""10"" width=90% border=""0"" dir="""_$$^%W1DIR_""" >",!
 ;
 I '$$OUTCOMP^W3VHOD D
 .W "<tr>",!
 .D GROUP,MAZAV
 .W "</tr>",!
 ;
 W "<tr>",!
 D NMB,FAX
 W "</tr>",!
 ;
 W "<tr>",!
 D EMAIL("EMAIL")
 W "</tr>",!
 ;
 W "<tr>"
 D CONTACTMAN,PELE
 W "</tr>",!
 ;
 W "<tr>"
 D CITY
 D STREET
 W "</tr>",!
 ;
 W "<tr>",!
 D HOME
 D ENTRANCE
 W "</tr>",!
 W "<tr>",!
 D FLOOR
 D MIKUD
 W "</tr>",!
 ;
 W "<tr>",!
 D COMMENT
 W "</tr>",!
 ;
 W "<tr>",!
 D TZ,DMSHNIS
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 W "<br>",!
 ;
 ;
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_"""><tr><td>",!
       D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
  W "</td>",!
  ;
  W "<td>",!
       D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   W "</td></tr></table>",!
 W "</div>",!
 ;W "</form>",!
 Q
 ;
 ;
CODE S TDWIDTH="18%" D TD W "&nbsp;"_$$^%W1DICT("COMPANYCODE")_"<br>"
 ;
 I $$OUTCOMP^W3VHOD D  Q
 .W "<td style=""width:15%"">"
 .W $$OUTCOMP^W3VHOD W "</td>",!
 ;
 D INPC("CODE",100,12)
 W "&nbsp;&nbsp;<img id=""filter"" src=""w3filter.jpg"""
 W " "_$$^W4TOUCH_"=""Find('CODE','CODE!','LKH')"" >",!
 W "</td>",!
 Q
 ;
PSW S TDWIDTH="18%" S TDALIGN=$S($$^%W1DIR="RTL":"left",1:"right") D TD
 W "&nbsp;"_$$ZW_$$^%W1DICT("PASSWORD")_"&nbsp;"
 W "<span>"_$$^%W1DICT("NUMBERONLY")_"</span>&nbsp;"
 W "<td width=""12%"">"
 D INP("PSW",100,12,"LTR")
 Q
 ;
GROUP D TD W "&nbsp;"_$$^%W1DICT("CUSTGROUP")_"</td>"
 W "<td id=""TDGROUP"">&nbsp;"
  W "<select id=""GROUP"" onChange=""ChangeGroup()"">",!
   W $$GROUPSEL($G(CODE)),!
  W "</select>",!
  W "<input type=""button"" value="""_$$^%W1DICT("EDIT")_""" "
  W " style=""color:blue"" "
  W " onClick=""GroupEdit()"" "
  W ">&nbsp;&nbsp;"
  W "<span style=""color:black"" id=""AH"">"_$$^%W1DICT("DISCONT")_" "_$S($G(CODE):$$AH^W4L(CODE)_" %",1:"")_"</span>"
 W "</td>",!
 Q
 ;
GROUPSEL(CODE) ;
 N SELECTED,SEL
 S SEL=""
 N N S N="" F  S N=$O(@$$^W4GL("SUGL")@(N)) Q:N=""  D
 .S SELECTED=""
 .I $G(CODE),$$SUGL^W4L(CODE)=N S SELECTED=" selected=""selected"""
 .S SEL=SEL_"<option value="""_N_""" "_SELECTED_" >"_N_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(N)))_"<option>"
 Q SEL
 ;
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"</td>"
 W "<td>&nbsp;&nbsp;"
 D INP("NMB",100,12,"LTR")
 Q
 ;
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td><td>&nbsp;"
 D INP("PELE",100,12,"LTR")
 Q
 ;
NAME S TDWIDTH="6%" D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td>"
 W "<td width=""20%"">&nbsp;&nbsp;"
 D INP("NAME",180,30,$$^%W1DIR)
 Q
 ;
CONTACTMAN D TD W "&nbsp;"_$$^%W1DICT("CONTACTMAN")_"</td><td>&nbsp;&nbsp;"
 D INP("CONTACTMAN",160,30,$$^%W1DIR)
 Q
 ;
ROLE D TD W "&nbsp;"_$$^%W1DICT("ROLE")_"</td><td>&nbsp;&nbsp;"
 D INP("ROLE",160,30,$$^%W1DIR)
 Q
 ;
STREET D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td>"
 W "<td colspan=""3"">&nbsp;&nbsp;"
 D INP("STREET","95%",30,$$^%W1DIR)
 Q
 ;
HOME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td><td>&nbsp;&nbsp;"
 D INP("HOME",30,3,"LTR")
 Q
 ;
ENTRANCE D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE")_"</td><td>&nbsp;&nbsp;" D INP("ENTRANCE",30,5,$$^%W1DIR)
 Q
 ;
FLOOR D TD W "&nbsp;"_$$^%W1DICT("FLOOR")_"</td>"
 W "<td>&nbsp;&nbsp;"
 D INP("FLOOR",30,3,$$^%W1DIR)
 Q
 ;
CITY D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"</td><td>&nbsp;&nbsp;"
 N RKV S RKV="CITY"
 I $D(@$$^W4GL("P1IR"))>9 D  Q
 .W "<select"
 .W " name="""_RKV_""" id="""_RKV_""""
 .W " tabindex=""4"""
 .W " onChange=""ChangeCity()"" >",!
 .W "<option>&nbsp;</option>",!
 .N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..N IR S IR=$G(^(N))
 ..W "<option value='"_N_"'"
 ..I IR=$$CITY^W4L(CODE,GL) W " selected=""selected"""
 ..W " >"_$$H2U^%L1FRM(IR)_"</option>",!
 .W "</select>",!
 ;
 D INP("CITY",120,20,$$^%W1DIR)
 Q
 ;
 ;
MIKUD D TD W "&nbsp;"_$$^%W1DICT("ZIP")_"</td><td>&nbsp;&nbsp;"
 D INP("MIKUD",80,6,"LTR")
 Q
 ;
TZ D TD W "&nbsp;"_$$ZW_$$^%W1DICT("BUSINESSID")_"</td><td>&nbsp;&nbsp;"
 D INP("TZ",120,10,"LTR")
 Q
 ;
DMSHNIS D TD W "&nbsp;"_$$^%W1DICT("DMSH")_"</td>"
 W "<td>&nbsp;&nbsp;"
 D INP("DMSHNIS",100,8,"LTR")
 Q
 ;
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"</td>"
 W "<td colspan=""3"">&nbsp;&nbsp;"
 D INP("COMMENT","95%",40,$$^%W1DIR)
 Q
 ;
EMAIL(ID) D TD W "&nbsp;"_$$^%W1DICT("EMAIL")_"</td>"
 D GL
 W "<td colspan=""3"">&nbsp;&nbsp;"
 N EMAIL X "S EMAIL=$$"_ID_"^W4L(CODE,GL)"
 I EMAIL["@",EMAIL[".",$F(EMAIL,".")>$F(EMAIL,"@") D
 .W "<a href=""mailto:"_EMAIL_""" >",!
 D INP(ID,"95%",60,"LTR")
 Q
 ;
FAX D TD W "&nbsp;"_$$^%W1DICT("FAX")_"</td>"
 W "<td>&nbsp;&nbsp;"
 D INP("FAX",100,12,"LTR")
 Q
 ;
MAZAV ;
 D TD
 W "&nbsp;"_$$^%W1DICT("CUSTCLOSED")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""MAZAV"" "_$S('$$RKV("MAZAV")&$$D^W4L(CODE,GL):" checked=""checked""",1:"")_" />"
 Q
 ;
ISCR ;
 D TD
 W "&nbsp;"_$$^%W1DICT("ISCR")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ISCR"" "_$S($$RKV("ISCR"):" checked=""checked""",1:"")_" />"
 Q
 ;
ISCH ;
 D TD
 W "&nbsp;"_$$^%W1DICT("ISCH")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ISCH"" "_$S($$RKV("ISCH"):" checked=""checked""",1:"")_" />"
 Q
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .D
 ..I RKV="HOME",$G(HOME) W " value="""_HOME_"""" Q
 ..
 ..I RKV="STREET" D
 ...N VL S VL=$$RKV(RKV)
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 ..
 ..W " value="""_RKVL_""""
 .
 .I RKV="EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
 .
 .W " />",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 I RKV["EMAIL",$G(PRM)="IN",$L($G(EMAIL)) W "</a>",!
 W "</td>",!
 Q
 ;
 ;
INPC(RKV,WD,SIZE) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW S CODE=$TR(CODE,"-","")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onChange=""Find('CODE','CODE','LKH')"" >",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 Q
 ;
RKV(FLD,DIR)
 N A D GL
 I $$P(FLD)'="",$$D^W4L(CODE,GL) Q $$P(FLD)
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
 ;
P(FLD)
 N OK S OK=0 D GL
 I $G(CODE)="" Q ""
 I '$$D^W4L(CODE,GL) Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NMB" Q $$TELB^W4L(CODE,GL)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH^W4L(CODE,GL))
 I FLD="PSW" Q $$PSW^W4L(CODE,GL)
 I FLD="MAZAV" Q $$MAZAV^W4L(CODE,GL)
 I FLD="PELE" Q $$PELE^W4L(CODE,GL)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV^W4L(CODE,GL))
 I FLD="HOME" Q $$BAIT^W4L(CODE,GL)
 I FLD="ENTRANCE" Q $$H2U^%L1FRM($$CNISA^W4L(CODE,GL))
 I FLD="FLOOR" Q $$H2U^%L1FRM($$KOMA^W4L(CODE,GL))
 I FLD="CITY" Q $$H2U^%L1FRM($$IR^W4L(CODE,GL))
 I FLD="COMMENT" Q $$H2U^%L1FRM($$CMNT^W4L(CODE,GL))
 I FLD="EMAIL" Q $$EMAIL^W4L(CODE,GL)
 I FLD="FAX" Q $$FAX^W4L(CODE,GL)
 I FLD="ISCR" Q $$ISCR^W4L(CODE,GL)
 I FLD="ISCH" Q $$ISCH^W4L(CODE,GL)
 I FLD="TZ" Q $$TZ^W4L(CODE,GL)
 I FLD="DMSHNIS" Q $J($$DMSHNIS^W4L(CODE,GL),2,2)
 I FLD="MIKUD" Q $$MIKUD^W4L(CODE,GL)
 I FLD="CONTACTMAN" Q $$H2U^%L1FRM($$CONTACTMAN^W4L(CODE,GL))
 I FLD="CONTACTMAN1" Q $$H2U^%L1FRM($$CONTACTMAN1^W4L(CODE,GL))
 I FLD="ROLE" Q $$H2U^%L1FRM($$ROLE^W4L(CODE,GL))
 I FLD="ROLE1" Q $$H2U^%L1FRM($$ROLE1^W4L(CODE,GL))
 I FLD="PELE1" Q $$PELE1^W4L(CODE,GL)
 I FLD="EMAIL1" Q $$EMAIL1^W4L(CODE,GL)
 Q ""
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D NMB
 D PELE
 D NAME
 W "</tr><tr>",!
 D STREET
 D HOME
 D ENTRANCE
 D FLOOR
 W "</tr>",!
 W "</table>",!
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
 D CITY
 D COMMENT
 D EMAIL("EMAIL")
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ;
 N MC,I
 S MC="CODE~NAME!H~PSW~NMB~PELE~EMAIL~FAX~STREET!H~HOME~ENTRANCE!H"
 S MC=MC_"~FLOOR!H~CITY!H~MIKUD~COMMENT!H~TZ~DMSHNIS~CONTACTMAN!H"
 S MC=MC_"~GROUP~MAZAV"
 ;
 D KILL^%W3DEB("W3COMP")
 D PUT^%W3DEB("W3COMP","PRM=PRM")
 ;
 F I=1:1:$L(MC,"~") D
 .N FLD,RG,VL
 .S FLD=$P(MC,"~",I)
 .S RG=$P(FLD,"!",2),FLD=$P(FLD,"!")
 .S VL=$TR($P(PRM,"~",I),$C(160)_"?","")
 .S VL=$$CLEAR^%L1FRM(VL)
 .S VL=$$CNWEB^%L1FRM(VL)
 .I RG="H"&($$^%W1DIR="RTL") S VL=$$INVH^%L1FRM(VL)
 .N A,A1,J S A=$$SPA^%L1FRM(VL)
 .S A1="" F J=1:1:$L(A) D
 ..N SMB S SMB=$E(A,J)
 ..I $A(SMB)<32!($A(SMB)>122) Q
 ..S A1=A1_SMB
 .S @FLD=A1
 ;
 I CITY?1N.N,$D(@$$^W4GL("P1IR")@(CITY)) S CITY=^(CITY)
 ;
 I $G(CODE)="" Q "CODE!D"
 ;
 S CODE=$TR(CODE," -","")
 ;
 I CODE'?1N.N Q "CODE!D"
 I '$$TEL(NMB,"M") Q "TEL!D"
 I $L(PELE),'$$TEL(PELE) Q "PELE!D"
 I HOME'?1N.E Q "HOME!D"
 I '$L(CITY) Q "CITY!D"
 I '$L(NAME) Q "NAME!D"
 I '$L(STREET) Q "STREET!D"
 ;;I '$L(GROUP) Q "GROUP!D"
 I '$$TEL(FAX) Q "FAX!D"
 I '$$N(TZ)!'$L(TZ) Q "TZ!D"
 I $L(TZ),'$$^W4TZ(TZ) Q "TZ!D"
 ;I '$L($P($P(EMAIL,"@",2),".",2)) Q $$^%W1DICT("EMAIL")
 I $L(EMAIL),'$L($P($P(EMAIL,"@",2),".",2)) Q "EMAIL!D"
 ;
PUT21 N RZD S RZD="*" Q:NAME=""  Q:CODE=""
 N ST S ST="LKH="_NAME_"<>PSW="_$G(PSW)_"<>TELB="_NMB
 S ST=ST_"<>KTV="_STREET_"<>BAIT="_HOME_"<>KOMA="_FLOOR_"<>CNISA="_ENTRANCE
 S ST=ST_"<>IR="_CITY_"<>MIKUD="_$G(MIKUD)_"<>CMNT="_COMMENT
 S ST=ST_"<>EMAIL="_EMAIL_"<>FAX="_FAX
 S ST=ST_"<>TZ="_TZ_"<>DMSHNIS="_DMSHNIS_"<>CONTACTMAN="_CONTACTMAN_"<>PELE="_$G(PELE)_"<>ROLE="_$G(ROLE)
 S ST=ST_"<>GROUP="_$G(GROUP)_"<>MAZAV="_'$G(MAZAV)
 ;
 D PUT^%W3DEB("W3COMP-SAVE","ST=ST")
 ;
 D GL
 I '$D(@GL@(CODE)) D
 .N AH S AH=$$AH^W4L(CODE,GL)
 .I AH S $P(@GL@(CODE,2),"*",7)=AH
 .S DATPTH=$$^%L1DC($H,1) D PUT2^W4L(CODE,"DATPTH="_DATPTH,GL)
 ;
 D PUT2^W4L(CODE,ST,GL)
 ;
 S MSD=$$GET^%W1PRM("MSD")
 I $G(MSD) D ^%S2GLSV(GL_"("""_CODE_""")",$$^W3FGIB(MSD))
 Q 1
 ;
 ;
TEL(TEL,PR)
 I $G(PR)="M"!$L(TEL),$TR(TEL,"-","")'?7N.N Q 0
 Q 1
 ;
N(RKV,PR) ;
 I $G(PR)="M"!$L(RKV),RKV'?1N.N Q 0
 Q 1
 ;
GL S GL=$$^W4GL("W3COMP")
 Q
 
 

W3COND
W3COND ; [ 28.04.08 09:35 ] [
 D ^W3TBL1("H","W3COND")
 Q

W3COUNTR
W3CNTRY ; [ 13.05.08 22:19 ] [
LNG(COUNTRY) ;
 Q $P($G(^[$$^W3MAIN]W3CNTRY(COUNTRY)),"\")
MTB(COUNTRY) ;
 Q $P($G(^[$$^W3MAIN]W3CNTRY(COUNTRY)),"\",2)

W3COUP
W3COUP ; [ 25.02.12 15:07 ] [ 30.10.10 15:00 ] [ 29.10.10 21:56 ]
 N (JB,%ARG,%REM,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 W "<div align=""center"" >",!
 W "<table id=""TblMvc"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""99%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th width=""3%"">&nbsp;</th>"
  W "<th width=""10%"">"_$$^%W1DICT("SALECODE")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("MEDATE")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("ADDATE")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("DISCITEMCODE")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("SALEASK")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("DISCPERCENT")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("DISCMAX")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("MHMIN")_"</th>"
 W "</tr>",!
 N N,I D TMPCOUP
 K @TMPCOUP
 S N="",I=0 F  S N=$O(@$$GLCOUP@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S I=I+1,@TMPCOUP@(I)=N_"\"_A
 ;
 F I=1:1 Q:'$D(@TMPCOUP@(I))  D
 .W "<tr id=""tr"_I_""">"
 .W " <td align=""center"">"
 . W $$OPER(I)
 .W " </td>",!
 .
 .W " <td align=""center"" dir=""LTR"">" W $$TDSALE(I) W " </td>",!
 .
 .W " <td align=""center"" dir=""LTR"">" W $$TDMEDAT(I) W " </td>",!
 .
 .W "<td align=""center"" dir=""LTR"">" W $$TDADDAT(I) W "</td>",!
 .
 .W "<td align=""center"" width=""15%"">" W $$TDCD(I) W "</td>",!
 .
 .W "<td id=""ask"_N_""" align=""center"">"_$$TDASK(I)_"&nbsp;</td>",!
 .
 .W "<td align=""center"">"_$$TDAHHNH(I)_"&nbsp;</td>",!
 .
 .W "<td align=""center"">"_$$TDMAX(I)_"&nbsp;</td>",!
 .
 .W "<td align=""center"">" W $$TDMHMIN(I) W "</td>",!
 .
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N TMPCOUP
 D TMPCOUP
 N NOMST,SALECODE,MEDAT,ADDAT,CD,ASK,AHHNH,MAX,MIN
 S NOMST=$P(PRM,";")
 ;
 I $D(^[$$^W3MAIN]TMPDEL(JB,NOMST)) D  Q 1
 .K ^[$$^W3MAIN]TMPDEL(JB,NOMST)
 .K @TMPCOUP@(NOMST)
 ;
 S SALECODE=$P(PRM,";",2)
 S MEDAT=$P(PRM,";",3)
 S ADDAT=$P(PRM,";",4)
 S CD=$P(PRM,";",5)
 S ASK=$P(PRM,";",6)
 S ASK=$$CNWEB^%L1FRM(ASK)
 S ASK=$$INVH^%L1FRM(ASK)
 S AHHNH=$J($P(PRM,";",7),2,2)
 S MAX=$J($P(PRM,";",8),2,2)
 S MIN=$J($P(PRM,";",9),2,2)
 ;
 I SALECODE="" Q 0
 ;
 S @$$GLCOUP@(SALECODE)=MEDAT_"\"_ADDAT_"\"_CD_"\"_ASK_"\"_AHHNH_"\"_MAX_"\"_MIN
 Q 1
 ;
SAVEND K ^[$$^W3MAIN]TMPLAST(JB)
 K ^[$$^W3MAIN]TMPDEL(JB)
 D TMPCOUP K @TMPCOUP
 Q
 ;
 ;
OPER(N) ;
 Q "<span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" onClick=""InsertRow('"_N_"')""> + </span><br /><span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" onClick=""DelRow('"_N_"')"" > - </span>"
 ;
TDSALE(N) ;
 N TDSALE
 S TDSALE="&nbsp;<input id=""sale"_N_""" type=""text"" size=""5"" maxlength=""6"""
 S TDSALE=TDSALE_" value="""_$$SALE(N)_""" />&nbsp;"
 Q TDSALE
 ;
TDMEDAT(N)
 N DD,MM,YY
 N MEDAT S MEDAT=$$MEDAT(N)
 S DD=$E(MEDAT,1,2)
 S MM=$E(MEDAT,4,5)
 S YY=$E(MEDAT,7,8)
 Q $$STDT^%W1DAT("MEDAT"_N,"",DD,MM,YY)
 ;
TDADDAT(N)
 N DD,MM,YY
 N ADDAT S ADDAT=$$ADDAT(N)
 S DD=$E(ADDAT,1,2)
 S MM=$E(ADDAT,4,5)
 S YY=$E(ADDAT,7,8)
 Q $$STDT^%W1DAT("ADDAT"_N,"",DD,MM,YY)
 ;
TDCD(N) ;
 N TDCD
 S TDCD="&nbsp;<input id=""cd"_N_""" type=""text"" size=""5"" maxlength=""6"""
 S TDCD=TDCD_" onChange=""ChangeCd('"_N_"',this.value)"" "
 S TDCD=TDCD_" value="""_$$CD(N)_""" />&nbsp;"
 S TDCD=TDCD_"<img src=""w3filter.jpg"" onClick=""Find('cd"_N_"')"" />"
 S TDCD=TDCD_"<br><span id=""name"_N_""" style=""font-size:"_$$^W3FSZ(9)_";color:green"">"_$$NAME(N)_"</span>"
 Q TDCD
 ;
NAME(N) ;
 N NM S NM=$$SHEM^W3P($$CD(N))
 I $TR(NM," ","")="" Q "&nbsp;"
 Q "&nbsp;"_$$H2U^%L1FRM(NM)
 ;
TDASK(N) ;
 N TDASK
 S TDASK="&nbsp;<input id=""ask"_N_""" type=""text"" size=""25"" maxlength=""30"""
 S TDASK=TDASK_" value="""_$$H2U^%L1FRM($$ASK(N))_""" />&nbsp;"
 Q TDASK
 ;
TDAHHNH(N) ;
 N VL S VL=$$AHHNH(N)
 S VL=$J(VL,2,2)
 Q "<input type=""text"" id=""ahhnh"_N_""" size=""4"" maxlength=""5"" value="""_VL_""" />"
 ;
TDMAX(N) ;
 Q "<input type=""text"" id=""max"_N_""" size=""4"" maxlength=""5"" value="""_$J($$MAX(N),2,2)_""" />"
 ;
TDMHMIN(N) ;
 Q "<input type=""text"" id=""mhmin"_N_""" size=""4"" maxlength=""5"" value="""_$J($$MHMIN(N),2,2)_""" />"
 ;
DELROW(NOMST) ;
 Q:'$G(JB)
 I $D(^[$$^W3MAIN]TMPDEL(JB,NOMST)) K ^(NOMST) Q
 S ^[$$^W3MAIN]TMPDEL(JB,NOMST)=$G(@TMPCOUP@(NOMST))
 Q
 ;
NEWST(STAM) ;
 N A S A=$O(@TMPCOUP@(9999999),-1)+1
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
 ;
 ;
SALE(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",1)
 ;
MEDAT(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",2)
 ;
ADDAT(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",3)
 ;
CD(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",4)
 ;
ASK(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",5)
 ;
AHHNH(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",6)
 ;
MAX(NOMST) ;
 S A=$$ST(NOMST)
 Q $P(A,"\",7)
 ;
MHMIN(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",8)
 ;
ST(NOMST) N TMPCOUP D TMPCOUP
 Q $G(@TMPCOUP@(NOMST))
 ;
GLCOUP(STAM) ;
 Q $$^W4GL("W3COUP")
 ;
TMPCOUP ;
 S TMPCOUP=$$^W4MAIN("TMPCOUP")
 Q
 ;

W3CPHON0
W3CPHONE ; [ 21.03.10 18:09 ] [ 10.03.10 18:14 ] [ 03.03.10 17:41 ]
 N (PRM,%REM)
 ;
 F K=2:1:$L(PRM,"PSTART=[") D
 .S ORDER=$P(PRM,"PSTART=[",K)
 .S ORDER=$P(ORDER,"V1.START",2)
 .S ORDER=$P(ORDER,"&PEND=V1.END]")
 .Q:ORDER?.P
 .S JB=$$^%W1SsID("W3ORDRCV")
 .D PARSEORD(ORDER)
 Q
 ;
PARSEORD(ORDER) ;
 N A,B,I,COUP K ARG
 F I=1:1:$L(ORDER,"&") D
 .S COUP=$P(ORDER,"&",I)
 .S COUP=$$CNWEB^%L1FRM(COUP)
 .S A=$P(COUP,"=")
 .S B=$P(COUP,"=",2)
 .S:$E(A)="?" A=$E(A,2,22)
 .I $E(A)?1U S ARG(A)=B
 ;
 D PUT^%W3DEB("W3CPHONE-"_(K-1),"ARG=[ARG")
 D ORD
 Q
 ;
ORD ;
 S REST=$G(ARG("RESTID")) Q:REST=""
 S MSD=$G(^[$$^W3MAIN]W3CPM(REST)) Q:MSD=""
 ;;I 'MSD D PUT^%W1PRM("ERR","NOMSD") Q
 D PUT("ORDERID","HZMLAK")
 D PUT("ORDERDATE","DAT")
 D PUT("CLIENTNAME","NAME","H")
 D PUT("CLPHONE","NMB")
 D PUT("CLCELLULAR","PELE")
 D PUT("CLFAX","FAX")
 D PUT("CLEMAIL","EMAIL")
 D PUT("COMPANY","COMP","H")
 D PUT("CITY","CITY","H")
 D PUT("STREET","STREET","H")
 D PUT("HOMENUM","HOME")
 D PUT("FLOOR","FLOOR","H")
 D PUT("FLAT","FLAT","H")
 D PUT("ENTRANCE","ENTRANCE","H")
 D PUT("LCOMMENTS","COMMENT","H")
 D PUT("ORDSUM","TSHL")
 D PUT("DLVFEENIS","DMSH")
 D PUT("DLVPERCDISC","AHUZ")
 D PUT("DLVDISCNIS","HNH")
 ;
 S SH=0
 D ORDITEMS($G(ARG("ORDITEMS")))
 ;
 Q
 ;
PUT(ARGNM,RKV,PR) ;
 N A S A=$G(ARG(ARGNM))
 S VL=A
 I $TR(VL,"-","")?1N.N S VL=$TR(VL,"-","")
 I VL="-1" S VL=""
 ;
 I $G(PR)="H" S VL=$$INVH^%L1FRM(VL)
 ;
 I ARGNM="ORDERID" D
 .S VL=$E(VL,7,14)
 ;
 I ARGNM="ORDERDATE" D  Q
 .D PUT^W3HZMST(JB,"DAT",$E(VL,7,8)_"."_$E(VL,5,6)_"."_$E(VL,3,4))
 .D PUT^W3HZMST(JB,"SHAA",$E(VL,10,11)_":"_$E(VL,12,13))
 ;
 ;
 D PUT^W3HZMST(JB,RKV,VL)
 Q
 ;
 ;
ORDITEMS(A) ;
 S DLM="~"
 S DLM1=" X "
 S DLM3="-"
 S SH=0
 S MAIN=$P(A,"|",$L(A,"|"))
 S NMMAIN=""
 S CDMAIN=""
 I MAIN?.E1"-"1N.N1" ".E D
 .S CDMAIN=$P($P(MAIN,"-",2)," ")
 .S NMMAIN=$P(MAIN,"-"_CDMAIN,2,20)
 I MAIN?." "1N.N." "1"-".E D
 .S CDMAIN=$TR($P(MAIN,"-")," ","")
 .S NMMAIN=$P(MAIN,"-",2,20)
 S NMMAIN=$$INVH^%L1FRM($$SPA^%L1FRM(NMMAIN))
 S CDMAIN=$$SPA^%L1FRM(CDMAIN)
 S SH=SH+1
 S QN=1
 S MH=$J($P($G(ARG("PAYTYPE")),"|",2),2,2)
 S HR=""
 S UR=0
 S @$$^W3TMPORD@(JB,SH)=UR_"~"_CDMAIN_"~"_NMMAIN_"~"_MH_"~"_QN_"~~"_HR
 ;
 S ADD=$P(A,"|",1,$L(A,"|")-1)
 ;
 N I F I=$L(ADD,"~"):-1:1 D
 .S FLD=$P(ADD,"~",I) Q:FLD?." "
 .S HR="",MH=""
 .I FLD[" X " D
 ..S COD=$$SPA^%L1FRM($P($P(FLD," X ",2)," "))
 ..S QN=$$SPA^%L1FRM($P(FLD," X "))
 ..S NM=$P(FLD," ",5,20)
 .I FLD[":" D
 ..S FLD=$P(FLD,":",2)
 ..S COD=$P(FLD," ")
 ..S NM=$P(FLD," ",2,20)
 .I NM[" - " D
 ..S NM=$P(NM," - ")
 .
 .S NM=$$INVH^%L1FRM($$SPA^%L1FRM(NM))
 .
 .S SH=SH+1
 .S UR=1
 .S @$$^W3TMPORD@(JB,SH)=UR_"~"_COD_"~"_NM_"~"_MH_"~"_QN_"~~"_HR
 ;
 D TERM^W3ORDVW
 Q

W3CPHONE
W3CPHONE ; [ 25.02.12 15:07 ] [ 24.10.10 20:58 ] [ 13.08.10 21:20 ]
 Q
 N (JB,%ARG,%REM)
 S REST=$G(%ARG("RESTID")) Q:REST=""
 S MSD=$G(^[$$^W3MAIN]W3CPM(REST)) Q:'MSD
 ;;I 'MSD D PUT^%W1PRM("ERR","NOMSD") Q
 D PUT^%W1PRM("MSD",MSD)
 D PUT("ORDERID","HZMLAK")
 D PUT("ORDERDATE","DAT")
 D PUT("CLIENTNAME","NAME","H")
 D PUT("CLPHONE","NMB")
 D PUT("CLCELLULAR","PELE")
 D PUT("CLFAX","FAX")
 D PUT("CLEMAIL","EMAIL")
 D PUT("COMPANY","COMP","H")
 D PUT("CITY","CITY","H")
 D PUT("STREET","STREET","H")
 D PUT("HOMENUM","HOME")
 D PUT("FLOOR","FLOOR","H")
 D PUT("FLAT","FLAT","H")
 D PUT("ENTRANCE","ENTRANCE","H")
 D PUT("LCOMMENTS","COMMENT","H")
 D PUT("ORDSUM","TSHL")
 D PUT("DLVFEENIS","DMSH")
 D PUT("DLVPERCDISC","AHUZ")
 D PUT("DLVDISCNIS","HNH")
 ;
 D PUT^W3HZMST(JB,"DATCB",$ZD($H,"DD.MM.YY  24:60"))
 D PUT^W3HZMST(JB,"CODTS",6)
 D PUT^W3HZMST(JB,"MKR",55)
 ;
 S SH=0
 D ORDITEMS($G(%ARG("ORDITEMS")))
 ;
 Q
 ;
PUT(ARGNM,RKV,PR) ;
 N A S A=$G(%ARG(ARGNM))
 S VL=A
 I $TR(VL,"-","")?1N.N S VL=$TR(VL,"-","")
 I VL="-1" S VL=""
 ;
 I $G(PR)="H" S VL=$$INVH^%L1FRM(VL)
 ;
 I ARGNM="ORDERID" D
 .S VL=$E(VL,7,14)
 ;
 I ARGNM="CLPHONE" D
 .S VL=$TR(VL,"!-,.","")
 ;
 I ARGNM="ORDERDATE" D  Q
 .N DAT S DAT=$E(VL,7,8)_"."_$E(VL,5,6)_"."_$E(VL,3,4)
 .D PUT^W3HZMST(JB,"DAT",DAT)
 .N SHAA S SHAA=$E(VL,10,11)_":"_$E(VL,12,13)
 .I DAT=$ZD($H,"DD.MM.YY")!'$TR(SHAA,":",""),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800 D
 ..S SHAA=$$TM^W3TIME($H,$G(%ARG("CITY")))
 .D PUT^W3HZMST(JB,"SHAA",SHAA)
 ;
 ;
 D PUT^W3HZMST(JB,RKV,VL)
 Q
 ;
 ;
ORDITEMS(A) ;
 D PUT^%W3DEB("W3CPHONE-ORDITEMS","A=A")
 S SH=0
 S MAIN=$$SPA^%L1FRM($P(A,"|"))
 S NMMAIN=""
 S CDMAIN=""
 S NOCD=0
 ;
 I MAIN?1N.N1"-".E D  G OI1
 .S CDMAIN=$$SPA^%L1FRM($P(MAIN,"-"))
 .S NMMAIN=$$SPA^%L1FRM($P(MAIN,CDMAIN_"-",2,20))
 ;
 I MAIN?.E1"-"1N.E D  G OI1
 .S CDMAIN=$P($P(MAIN,"-",2)," ")
 .S NMMAIN=$$SPA^%L1FRM($P(MAIN,"-"))
 ;
 I MAIN?1N.N1" ".E D  G OI1
 .S CDMAIN=$P(MAIN," ")
 .S NMMAIN=$$SPA^%L1FRM($P(MAIN," ",2,255))
 ;
 ;;I '$$NUM(MAIN) D  S NOCD=1
 .S CDMAIN=$P($P(A,":",2)," ")
 .S NMMAIN=$P($P(A,":",2),"~")
 .S NMMAIN=$P(NMMAIN," ",2,20)
 .S NMMAIN=$P(A,"|")_" "_$$SPA^%L1FRM(NMMAIN)
 ;
 S NOCD=0
 I '$$NUM(MAIN) D
 .N I F I=1:1:$L(A,"~") D
 ..S B=$P(A,"~",I)
 ..I B[":" S B=$P(B,":",2)
 ..I B?1N.N1"." D  S NOCD=2 Q
 ...S CDMAIN=$P(B,".")
 ...S NMMAIN=$P($P(B,".",2),"~")
 ...I NMMAIN["-" S NMMAIN=$P(NMMAIN,"-")
 ...S NMMAIN=$$SPA^%L1FRM(NMMAIN)
 .Q:NOCD
 .S CDMAIN=$P($$SPA^%L1FRM($P(A,":",2))," ")
 .S NMMAIN=$P($P(A,CDMAIN_" ",2),"~")
 .S NMMAIN=$P(A,"|")_" "_$$SPA^%L1FRM(NMMAIN)
 .S NOCD=1
 ;
OI1 S NMMAIN=$$INVH^%L1FRM(NMMAIN)
 S SH=SH+1
 S QN=1
 S MH=$J($P($G(%ARG("PAYTYPE")),"|",2),2,2)
 S HR=""
 I A["drxez:" D
 .S HR=$P($P(A,"drxez:",2),"~")
 .S HR=$$SPA^%L1FRM(HR)
 .S HR=$$INVH^%L1FRM(HR)
 S UR=0
 S @$$^W3TMPORD@(JB,SH)=UR_"~"_CDMAIN_"~"_NMMAIN_"~"_MH_"~"_QN_"~~"_HR
 ;
 S ADD=$P(A,"|",2,200)
 ;
 N I F I=$L(ADD,"~"):-1:1+NOCD D
 .S FLD=$P(ADD,"~",I) Q:FLD?." "
 .S FLD=$$SPA^%L1FRM(FLD)
 .S HR="",MH="",NM="",COD="",QN=""
 .I FLD[" X " D
 ..S COD=$$SPA^%L1FRM($P($P(FLD," X ",2)," "))
 ..S QN=$$SPA^%L1FRM($P(FLD," X "))
 ..S NM=$P(FLD," ",4,20)
 .I FLD[":" D
 ..S FLD=$P(FLD,":",2)
 ..S COD=$P(FLD," ")
 ..S NM=$P(FLD," ",2,20)
 .I NM[" - " D
 ..S NM=$P(NM," - ")
 .
 .S NM=$$INVH^%L1FRM($$SPA^%L1FRM(NM))
 .I COD[".",NOCD=2 Q
 .S SH=SH+1
 .S UR=1
 .I 'QN S QN=1
 .S @$$^W3TMPORD@(JB,SH)=UR_"~"_COD_"~"_NM_"~"_MH_"~"_QN_"~~"_HR
 ;
 D TERM^W3ORDVW
 Q
NUM(ST) ;
 N OK S OK=0
 N J F J=1:1:$L(ST)  I $A(ST,J)>47,$A(ST,J)<58 S OK=1 Q
 Q OK

W3CPN
W3CPN ; [ 24.10.10 20:58 ] [ 11.08.10 17:40 ] [ 02.05.10 18:25 ]
 Q
 N I,A,DAT,OK,FL,PATH
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
CYC ;
 S DAT=$ZD($H,"YEARMMDD")
 ;S DAT=$ZD($H,"DDMMYEAR")
 S PATH="/tmp/"
 S FL=PATH_"kp"_DAT
 I $$^%L1ZOS(10,FL)<0 G WAIT
 O FL:(REWIND:READONLY)
 F I=1:1 U FL R A Q:$ZEOF  D
 .I I>$G(^W3CPN(DAT)) D
 ..S OK=$$RCVORD(A)
 ..S ^W3CPN(DAT,I)=OK_"\"_$ZD($H,"DD.MM.YY  24:60")
 ..S ^W3CPN(DAT)=I
 C FL
WAIT H 20
 G CYC
 ;
RCVORD(ST)
 N (ST)
 S JB=$$^%W1SsID("W3CPN")
 F J=1:1:$L(ST,"&") D
 .S COUP=$P(ST,"&",J) Q:ST'["="
 .S A=$P(COUP,"=") Q:A=""
 .S B=$P(COUP,"=",2)
 .S %ARG(A)=B
 ;
 D PUT^%W3DEB("W3ORDRCV","ARG=[%ARG")
 I $G(%ARG("PSTART"))["V1.START" D ^W3CPHONE
 ;
 Q 1

W3CRSET
W3CRSET ; [ 11.01.21 16:08 ] [ 30.10.08 17:48 ] [ 18.06.08 09:09 ] [
 I $D(@$$^W4GL("MHSET"))<10!($D(@$$^W4GL("QNSET"))<10) D
 .D CRMQSET("P1EZT")
 .D CRMQSET("P1EZA")
 Q
CRMQSET(TREE) ;
 N N,N1,N2,NSET
 S N="" F  S N=$O(@$$^W4GL(TREE)@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@$$^W4GL(TREE)@(N,N1)) Q:N1=""  D
 ..I $E(N1)'="A" Q
 ..S NSET=$E(N1,2,7) Q:NSET=""  ;;Q:SET'=NSET
 ..S N2="" F  S N2=$O(@$$^W4GL("P1SETA")@(NSET,N2)) Q:N2=""  D
 ...I '$D(@$$^W4GL("QNSET")@(NSET,N2)),$D(@$$^W4GL("QNDEF")@(N,N2)) S @$$^W4GL("QNSET")@(NSET,N2)=@$$^W4GL("QNDEF")@(N,N2)
 ...I '$D(@$$^W4GL("MHSET")@(NSET,N2)),$D(@$$^W4GL("MHT")@(N,N2)) S @$$^W4GL("MHSET")@(NSET,N2)=@$$^W4GL("MHT")@(N,N2)
 Q
 

W3CSM
W3CSM ; [ 28.12.25 18:43 ] [ 09.03.25 11:45 ] [ 21.10.24 16:27 ] 
 S FONTFM=$$FONTFM^W3CSS
 S SZSMALL=20
 I $$^W4SIMUL S SZSMALL=16
 S SZSMALL1=SZSMALL+4
 I $$^W4SIMUL S SZSMALL1=SZSMALL
 S SZSMALL2=SZSMALL-4
 I $$^W4SIMUL S SZSMALL2=SZSMALL
 ;
 W "input[type=button] {",!
 W "    "_FONTFM_";",!
 W "height:"_$$KF(80)_";",!
 I $$^W4TABLET=2 W "padding:10px;",!
 W " font-size:"_$$^W3FSZ(SZSMALL2),!
 W "}",!
 W !
 ;
 W "input[type=checkbox] {",!
 W "    display: none;",!
 W "                     }",!
 W !
 ;
 W "input[type=radio] {",!
 W "    display: none;",!
 W "                     }",!
 W !
 ;
 W "input[type=button] {",!
 W "    "_$$RAD($$KF("8")_"px")
 W "                     }",!
 W !
 ;
 W "select {",!
 W "    "_$$RAD($$KF("7")_"px")_";"
 W "   font-size:"_$$^W3FSZ(11+$$1700^W4WDSCR)
 W "                     }",!
 W !
 ;
 W "img {",!
 ;;W "    "_$$RAD($$KF("30")_"px")
  W "    "_$$RAD("7px")
 W "    }",!
 ;
 W " table#TblStr {",!
 W "   font-size:"_$$^W3FSZ(12)_";"
 W "        }",!
 W !
 ;
 W ".hdmsd",!
 W "     {",!
 W "      border:1px solid grey;border-style:groove;",!
 W "       font-size:"_$$^W3FSZ($S($$^W4SIMUL:18,1:24))_";",!
 W "       text-align:center ;",!
 W "       color:black;",!
 W "       -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 W "      -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 W $$GRAD("#0000FF","D6D6FF")
 W "      background: -moz-linear-gradient(19% 75% 90deg,#D6D6FF, #0000FF);",!
 W "       "_$$RAD^W3CSM("1em"),!
 W "     }",!
 W !
 ;
 W "span.smallgrhd {",!
 W "    "_FONTFM,";",!
 W "    color:brown;",!
 W " font-size:"_$$^W3FSZ(SZSMALL1),!
 W "}",!
 W !
 W "span.w6grhd {",!
 W "    "_FONTFM,";",!
 W "    color:black;",!
 W " font-size:"_$$^W3FSZ(18),!
 W "}",!
 W ! ;
 W ".bgradio { ",!
 W "    display: block;",!
 I '$$^W4SIMUL D
 .W "    width: 80px;",!
 .W "     height:80px;",!
 .W $$RAD("40px")
 I $$^W4SIMUL D
 .W "    width: 21px;",!
 .W "     height:21px;",!
 .W $$RAD("10px")
 W $$GRAD("#A1A1A1","#FFFFFF")
 W "     border: 2px solid #e5e5e5;",!
 W "     position: relative;",!
 W "     top: 0px;",!
 W "     left: 0px;",!
 W "       }",!
 W !
 D BGBTN("")
 ;
 W ".bgbtn1 { ",!
  D BGRAD
 W " font-size:"_$$^W3FSZ(SZSMALL2)_";",!
 D PADDING20
 W "         }"
 W !
 W ".lbtxt {",!
 W "          position: relative;",!
 I '$$^W4SIMUL D
 .W "           top: "_$$^W4KF(14)_"px;",!
 .W "           font-weight:bold;",!
 .W "           font-size:32pt;",!
 I $$^W4SIMUL D
 .W "           top: "_$$^W4KF(4)_"px;",!
 .W "           color: #000;",!
 .W "           font-weight:bold;",!
 .W "           font-size:"_$S($$^W4TABLET=2:28,1:12)_"pt;",!
 W "           color: #000;",!
 W "           text-align:center"
 W "         }",!
 ;
 W ".lbrad {",!
 W "          display:block;",!
 I '$$^W4SIMUL D
 .W "    width: 30px;",!
 .W "     height:30px;",!
 .W $$RAD("15px")
 I $$^W4SIMUL D
 .W "    width: 6px;",!
 .W "     height:6px;",!
 .W $$RAD("3px")
 W "          position: relative;",!
 I '$$^W4SIMUL D
 .W "           top: 25px;",!
 .;;W "           left:"_$S($$^%W1DIR="RTL":"-",1:"")_"55px;",!
 I $$^W4SIMUL D
 .W "           top: 7px;",!
 .;;W "           left:"_$S($$^%W1DIR="RTL":"-",1:"")_"13px;",!
 W "           background-color: #000;",!
 W "         }",!
 ;
 W ".smallhdmenu {",!
 W "    "_FONTFM,";",!
 W " color:darkblue;",!
 W " font-size:"_$$^W3FSZ(SZSMALL1),!
 W "}",!
 ;
 W ".smalltblgr {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(SZSMALL1)_";",!
 W " color:black;",!
 W " margin: 0;",!
 W " padding: "_$$KF(30)_"px;",!
 W " line-height: 100%;",!
 W $$RAD("1em"),!
  W $$BOXSHADOW("1px","3px",".4")
 ;W " -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 ;W " -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 W $$BGBDSMALL,!
 W " border: solid 2px #6d6d6d;",!
 W "}",!
 ;
 W ".tbround {",!
 W "      border:solid;",!
 W "      border-style:ridge;",!
 I '$$^W4SIMUL W "      border-width:4px;",!
 I $$^W4SIMUL W "      border-width:2px;",!
 W "      background-color:white;color:black;",!
 W "      font-size:"_$$^W3FSZ_";",!
 W $$RAD^W3CSM("1em")
 W "     } ",!
 ;
 W ".tbmsdround {",!
 W "      border:solid;",!
 W "      border-style:ridge;",!
 I $$^W4SMALL D
 .I '$$^W4SIMUL W "      border-width:4px;",!
 .I $$^W4SIMUL W "      border-width:2px;",!
 W "      background-color:white;"
 W "      color:black;",!
 W "      width:95%";",!
 W "      font-size:"_$$^W3FSZ_";",!
 W $$GRAD("#FFFFFF","#EBEBEB")
 W $$RAD^W3CSM("1em")
 W "     } ",!
 ;
 W ".btnsmall {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W " font-weight:bold",!
 W "}",!
 ;
 W ".grsmall {",!
 W "   background-color:white;",!
 D PADDING20
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".grsmallv {",!
 W "   background-color:white;",!
 D PADDING20
     W $$RAD("1em 1em 0 0")
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".grsmalln {",!
 W "   background-color:white;",!
 W "   padding:"_$$KF(20)_"px;",!
    W $$RAD("0 0 1em 1em")
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".grsmallvn {",!
 W "   background-color:white;",!
 W "   padding:"_$$KF(20)_"px;",!
     W $$RAD("1em")
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".curgrsmall {",!
 ;;D BGRAD
 W "   padding:"_$$KF(20)_"px;",!
 W "     color:red;",!
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".itemsmall {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(18),!
 W "}",!
 ;
 W ".prcsmall {",!
 W "    "_FONTFM,";",!
 W " color:green;",!
 W " font-size:"_$$^W3FSZ(18),!
 W "}",!
 ;
 W ".txtsmall {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(SZSMALL),!
 W "}",!
 ;
 W "tr.smalltot {",!
 W "    "_FONTFM,";",!
 ;W "    background-color:yellow;"
 W "    background-color:"_$$CURCOLOR_";"
 W "    color:black;"
 W " font-size:"_$$^W3FSZ(14),!
 W "}",!
 Q
 ;
RAD(ED)
 I $G(ED)="" S ED="8px"
 I ED?1N.N S ED=ED_"px"
 I $$^W4TABLET=2,$G(ED)["px" S ED=ED*2_"px"
 I $$SMALL S ED=(ED+10)_"px"
 N RAD
 S RAD=" border-radius: "_ED_";"
 ;;S RAD=RAD_" -webkit-border-radius: "_ED_";"
 ;;S RAD=RAD_" -moz-border-radius: "_ED_";"
 Q RAD
 ;
GRAD(STARTCOLOR,FINCOLOR)
 N A
 I $L($G(STARTCOLOR))=6,$E(STARTCOLOR)'="#" S STARTCOLOR="#"_STARTCOLOR
 I $L($G(FINCOLOR))=6,$E(FINCOLOR)'="#" S FINCOLOR="#"_FINCOLOR
 ;;S A="background: linear-gradient(to bottom,"_STARTCOLOR_","_FINCOLOR_");height:100vh;margin:0"
 ;;Q A
 S A="   filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='"_FINCOLOR_"');"
 S A=A_"   background: -webkit-gradient(linear, left top, left bottom, from("_STARTCOLOR_"), to("_FINCOLOR_"));"
 S A=A_"   background: -moz-linear-gradient(top,  "_STARTCOLOR_","_FINCOLOR_");"
 S A=A_"   background-image: -o-linear-gradient("_STARTCOLOR_","_FINCOLOR_");"
 S A=A_"   background-repeat:no-repeat;"
 S A=A_"   background-color:"_FINCOLOR_";"
 Q A
 ;
GRAD1(STARTCOLOR,STOPCOLOR)
 N A
 S A="background: linear-gradient("_STARTCOLOR_","_STOPCOLOR_","_STARTCOLOR_");"
 ;;S A="   filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='"_STOPCOLOR_"');"
 ;;S A=A_"   background: -webkit-gradient(linear, 0 0, 0  100%, from("_STARTCOLOR_"), to("_STARTCOLOR_"), color-stop(0.5, "_STOPCOLOR_"));"
 ;;S A=A_"   background: -moz-linear-gradient("_STARTCOLOR_","_STOPCOLOR_","_STARTCOLOR_");"
 ;;S A=A_"   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='#EBFFFF');"
 ;;S A=A_"   background   padding: 3px 7px;-repeat:no-repeat;"
 ;;S A=A_"   background-color:"_STARTCOLOR_";"
 Q A
 ;
BOXSHADOW(DEEP1,DEEP2,PRM)
 N A
 S A="   -webkit-box-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(0, 0, 0, "_PRM_");"
 S A=A_"   -moz-box-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(0, 0, 0, "_PRM_");"
 S A=A_"   box-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(0, 0, 0, "_PRM_");"
 Q A
 ;
TXTSHADOW(DEEP1,DEEP2,PRM)
 N A
 S A="   text-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(255, 255, 255, "_PRM_");"
 Q A
 ;
BGRAD ;
 W "    "_FONTFM,";",!
 W "   background: #d1d1d1; /* for non-css3 browsers */",!
 W $$GRAD("#ebebeb","#a1a1a1")
 ;W "   filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb', endColorstr='#a1a1a1'); /* for IE */",!
 ;W "   background: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#a1a1a1)); /* for webkit browsers */",!
 ;W "   background: -moz-linear-gradient(top,  #ebebeb,  #a1a1a1); /* for firefox 3.6+ */",!
 W "   color: #444;",!
 W "   border-top: solid 1px #f8f8f8;",!
 W $$BOXSHADOW("1px","1px",".2"),!
 ;W "   -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .2);",!
 ;W "   -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, .2);",!
 ;W "   box-shadow: 0 1px 1px rgba(0, 0, 0, .2);",!
 W $$TXTSHADOW("1px","0",".8"),!
 ;W "   text-shadow: 0 1px 0 rgba(255, 255, 255, .8);",!
 W $$RAD("1em")_";",!
 Q
 ;
BGBDSMALL(PRM) ;
 I $$^W4SIMUL,'$G(PRM) Q $$BG5^W4BGBODY
 ;
 N A
 S A=" background: #8b8b8b;"
 S A=A_"filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#a9a9a9', endColorstr='#7a7a7a');"
 S A=A_"background: -webkit-gradient(linear, left top, left bottom, from(#a9a9a9), to(#7a7a7a));"
 S A=A_"background: -moz-linear-gradient(top,  #a9a9a9,  #7a7a7a);"
 Q A
 ;
CURCOLOR(STAM) ;
 Q "#FFF7C1"
 ;
SHOWV(PRM) ;
 I $$WW^W6 Q "<img src=""w4chkboxc.png"" height=""30"" width=""30px"" >"
 ;
 I '$G(PRM) Q "<span class=""lbtxt"">V</span>"
 Q "<span class=""lbtxt"" style=""font-size:"_$$^W3FSZ(18)_""">*</span>"
 ;
SHOWO(STAM) ;
 I $$WW^W6 Q "<img src=""w4chkboxn.png"" height=""30"" width=""30px"" >"
 Q " "
 ;
PADDING20 ;
 W "   padding:"_$$KF(20)_"px;",!
 Q
 ;
KF(SZ) ;
 I $$SMALL,$$GET^%W1PRM("APPL") Q $J(SZ*.3,0,0)
 I $$^W4TABLET=2 Q 1.2*SZ
 I $$SMALL!($$^W4TABLET=2),'$$^W4SIMUL Q SZ
 Q $J(SZ*.5,0,0)
 ;
BGBTN(SMALL) ;
 I $G(SMALL)="" S SMALL='$$^W4SIMUL
 W ".bgbtn { ",!
 W "    display: block;",!
 ;
 I SMALL D
 .W "    width: 80px;",!
 .W "     height:80px;",!
 .W $$RAD("15px")
 ;
 I 'SMALL D
 .W "    width: 25px;",!
 .W "     height:25px;",!
 .W $$RAD("5px")
 ;
 W $$GRAD("#A1A1A1","#FFFFFF")
 W "     border: 2px solid #e5e5e5;",!
 W "     position: relative;",!
 W "     top: 0px;",!
 W "     left: 0px;",!
 W "       }",!
 W !
 Q
 ;
SMALL(STAM) ;
 Q $$SMALL^W3FSZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3CSM0
W3CSM ; [ 10.07.22 10:28 ] [ 08.07.22 11:32 ] [ 07.07.22 15:55 ] 
 S FONTFM=$$FONTFM^W3CSS
 S SZSMALL=20
 I $$^W4SIMUL S SZSMALL=16
 S SZSMALL1=SZSMALL+4
 I $$^W4SIMUL S SZSMALL1=SZSMALL
 S SZSMALL2=SZSMALL-4
 I $$^W4SIMUL S SZSMALL2=SZSMALL
 ;
 W "input[type=button] {",!
 W "    "_FONTFM_";",!
 W "height:"_$$KF(80)_";",!
 I $$^W4TABLET=2 W "padding:10px;",!
 W " font-size:"_$$^W3FSZ(14),! ; -- WAS SZSMALL2 10/07/22
 W "}",!
 W !
 ;
 W "input[type=checkbox] {",!
 W "    display: none;",!
 W "                     }",!
 W !
 ;
 W "input[type=radio] {",!
 W "    display: none;",!
 W "                     }",!
 W !
 ;
 W "input[type=button] {",!
 W "    "_$$RAD($$KF("8")_"px")
 W "                     }",!
 W !
 ;
 W "select {",!
 W "    "_$$RAD($$KF("7")_"px")
 W "                     }",!
 W !
 ;
 W "img {",!
 ;;W "    "_$$RAD($$KF("30")_"px")
  W "    "_$$RAD("7px")
 W "    }",!
 ;
 W " select {",!
 W "   font-size:"_$$^W3FSZ(11)_";"
 W "        }",!
 W !
 ;
 W " table#TblStr {",!
 W "   font-size:"_$$^W3FSZ(12)_";"
 W "        }",!
 W !
 ;
 W ".hdmsd",!
 W "     {",!
 W "      border:1px solid grey;border-style:groove;",!
 W "       font-size:"_$$^W3FSZ($S($$^W4SIMUL:18,1:24))_";",!
 W "       text-align:center ;",!
 W "       color:black;",!
 W "       -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 W "      -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 W $$GRAD("#0000FF","D6D6FF")
 W "      background: -moz-linear-gradient(19% 75% 90deg,#D6D6FF, #0000FF);",!
 W "       "_$$RAD^W3CSM("1em"),!
 W "     }",!
 W !
 ;
 W "span.smallgrhd {",!
 W "    "_FONTFM,";",!
 W "    color:brown;",!
 W " font-size:"_$$^W3FSZ(SZSMALL1),!
 W "}",!
 W !
 W "span.w6grhd {",!
 W "    "_FONTFM,";",!
 W "    color:black;",!
 W " font-size:"_$$^W3FSZ(18),!
 W "}",!
 W ! ;
 W ".bgradio { ",!
 W "    display: block;",!
 I '$$^W4SIMUL D
 .W "    width: 80px;",!
 .W "     height:80px;",!
 .W $$RAD("40px")
 I $$^W4SIMUL D
 .W "    width: 21px;",!
 .W "     height:21px;",!
 .W $$RAD("10px")
 W $$GRAD("#A1A1A1","#FFFFFF")
 W "     border: 2px solid #e5e5e5;",!
 W "     position: relative;",!
 W "     top: 0px;",!
 W "     left: 0px;",!
 W "       }",!
 W !
 D BGBTN("")
 ;
 W ".bgbtn1 { ",!
  D BGRAD
 W " font-size:"_$$^W3FSZ(SZSMALL2)_";",!
 D PADDING20
 W "         }"
 W !
 W ".lbtxt {",!
 W "          position: relative;",!
 I '$$^W4SIMUL D
 .W "           top: "_$$^W4KF(14)_"px;",!
 .W "           font-weight:bold;",!
 .W "           font-size:32pt;",!
 I $$^W4SIMUL D
 .W "           top: "_$$^W4KF(4)_"px;",!
 .W "           color: #000;",!
 .W "           font-weight:bold;",!
 .W "           font-size:"_$S($$^W4TABLET=2:28,1:12)_"pt;",!
 W "           color: #000;",!
 W "           text-align:center"
 W "         }",!
 ;
 W ".lbrad {",!
 W "          display:block;",!
 I '$$^W4SIMUL D
 .W "    width: 30px;",!
 .W "     height:30px;",!
 .W $$RAD("15px")
 I $$^W4SIMUL D
 .W "    width: 6px;",!
 .W "     height:6px;",!
 .W $$RAD("3px")
 W "          position: relative;",!
 I '$$^W4SIMUL D
 .W "           top: 25px;",!
 .;;W "           left:"_$S($$^%W1DIR="RTL":"-",1:"")_"55px;",!
 I $$^W4SIMUL D
 .W "           top: 7px;",!
 .;;W "           left:"_$S($$^%W1DIR="RTL":"-",1:"")_"13px;",!
 W "           background-color: #000;",!
 W "         }",!
 ;
 W ".smallhdmenu {",!
 W "    "_FONTFM,";",!
 W " color:darkblue;",!
 W " font-size:"_$$^W3FSZ(SZSMALL1),!
 W "}",!
 ;
 W ".smalltblgr {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(SZSMALL1)_";",!
 W " color:black;",!
 W " cellpadding:"_$$KF(20)_";",!
 W " margin: 0;",!
 W " padding: "_$$KF(30)_"px;",!
 W " line-height: 100%;",!
 W $$RAD("1em"),!
  W $$BOXSHADOW("1px","3px",".4")
 ;W " -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 ;W " -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);",!
 W $$BGBDSMALL,!
 W " border: solid 2px #6d6d6d;",!
 W "}",!
 ;
 W ".tbround {",!
 W "      border:solid;",!
 W "      border-style:ridge;",!
 I '$$^W4SIMUL W "      border-width:4px;",!
 I $$^W4SIMUL W "      border-width:2px;",!
 W "      background-color:white;color:black;",!
 W "      font-size:"_$$^W3FSZ_";",!
 W $$RAD^W3CSM("1em")
 W "     } ",!
 ;
 W ".tbmsdround {",!
 W "      border:solid;",!
 W "      border-style:ridge;",!
 I $$^W4SMALL D
 .I '$$^W4SIMUL W "      border-width:4px;",!
 .I $$^W4SIMUL W "      border-width:2px;",!
 W "      background-color:white;"
 W "      color:black;",!
 W "      width:95%";",!
 W "      font-size:"_$$^W3FSZ_";",!
 W $$GRAD("#FFFFFF","#EBEBEB")
 W $$RAD^W3CSM("1em")
 W "     } ",!
 ;
 W ".btnsmall {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W " font-weight:bold",!
 W "}",!
 ;
 W ".grsmall {",!
 W "   background-color:white;",!
 D PADDING20
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".grsmallv {",!
 W "   background-color:white;",!
 D PADDING20
     W $$RAD("1em 1em 0 0")
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".grsmalln {",!
 W "   background-color:white;",!
 W "   padding:"_$$KF(20)_"px;",!
    W $$RAD("0 0 1em 1em")
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".grsmallvn {",!
 W "   background-color:white;",!
 W "   padding:"_$$KF(20)_"px;",!
     W $$RAD("1em")
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".curgrsmall {",!
 ;;D BGRAD
 W "   padding:"_$$KF(20)_"px;",!
 W "     color:red;",!
 W " font-size:"_$$^W3FSZ(SZSMALL)_";",!
 W "}",!
 ;
 W ".itemsmall {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(18),!
 W "}",!
 ;
 W ".prcsmall {",!
 W "    "_FONTFM,";",!
 W " color:green;",!
 W " font-size:"_$$^W3FSZ(18),!
 W "}",!
 ;
 W ".txtsmall {",!
 W "    "_FONTFM,";",!
 W " font-size:"_$$^W3FSZ(SZSMALL),!
 W "}",!
 ;
 W "tr.smalltot {",!
 W "    "_FONTFM,";",!
 ;W "    background-color:yellow;"
 W "    background-color:"_$$CURCOLOR_";"
 W "    color:black;"
 W " font-size:"_$$^W3FSZ(14),!
 W "}",!
 Q
 ;
RAD(ED)
 I $G(ED)="" S ED="8px"
 I ED?1N.N S ED=ED_"px"
 I $$^W4TABLET=2,$G(ED)["px" S ED=ED*2_"px"
 I $$SMALL S ED=(ED+10)_"px"
 N RAD
 S RAD=" border-radius: "_ED_";"
 ;;S RAD=RAD_" -webkit-border-radius: "_ED_";"
 ;;S RAD=RAD_" -moz-border-radius: "_ED_";"
 Q RAD
 ;
GRAD(STARTCOLOR,FINCOLOR)
 N A
 S A="background: linear-gradient("_STARTCOLOR_","_FINCOLOR_");"
 Q A
 ;
 S A="   filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='"_FINCOLOR_"');"
 S A=A_"   background: -webkit-gradient(linear, left top, left bottom, from("_STARTCOLOR_"), to("_FINCOLOR_"));"
 S A=A_"   background: -moz-linear-gradient(top,  "_STARTCOLOR_","_FINCOLOR_");"
 S A=A_"   background-image: -o-linear-gradient("_STARTCOLOR_","_FINCOLOR_");"
 S A=A_"   background-repeat:no-repeat;"
 S A=A_"   background-color:"_FINCOLOR_";"
 Q A
 ;
GRAD1(STARTCOLOR,STOPCOLOR)
 N A
 S A="background: linear-gradient("_STARTCOLOR_","_STOPCOLOR_","_STARTCOLOR_");"
 Q A
 ;
 S A="   filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='"_STOPCOLOR_"');"
 S A=A_"   background: -webkit-gradient(linear, 0 0, 0  100%, from("_STARTCOLOR_"), to("_STARTCOLOR_"), color-stop(0.5, "_STOPCOLOR_"));"
 S A=A_"   background: -moz-linear-gradient("_STARTCOLOR_","_STOPCOLOR_","_STARTCOLOR_");"
 S A=A_"   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='#EBFFFF');"
 S A=A_"   background   padding: 3px 7px;-repeat:no-repeat;"
 S A=A_"   background-color:"_STARTCOLOR_";"
 Q A
 ;
BOXSHADOW(DEEP1,DEEP2,PRM)
 N A
 S A="   -webkit-box-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(0, 0, 0, "_PRM_");"
 S A=A_"   -moz-box-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(0, 0, 0, "_PRM_");"
 S A=A_"   box-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(0, 0, 0, "_PRM_");"
 Q A
 ;
TXTSHADOW(DEEP1,DEEP2,PRM)
 N A
 S A="   text-shadow: 0 "_DEEP1_" "_DEEP2_" rgba(255, 255, 255, "_PRM_");"
 Q A
 ;
BGRAD ;
 W "    "_FONTFM,";",!
 W "   background: #d1d1d1; /* for non-css3 browsers */",!
 W $$GRAD("#ebebeb","#a1a1a1")
 ;W "   filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb', endColorstr='#a1a1a1'); /* for IE */",!
 ;W "   background: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#a1a1a1)); /* for webkit browsers */",!
 ;W "   background: -moz-linear-gradient(top,  #ebebeb,  #a1a1a1); /* for firefox 3.6+ */",!
 W "   color: #444;",!
 W "   border-top: solid 1px #f8f8f8;",!
 W $$BOXSHADOW("1px","1px",".2"),!
 ;W "   -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .2);",!
 ;W "   -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, .2);",!
 ;W "   box-shadow: 0 1px 1px rgba(0, 0, 0, .2);",!
 W $$TXTSHADOW("1px","0",".8"),!
 ;W "   text-shadow: 0 1px 0 rgba(255, 255, 255, .8);",!
 W $$RAD("1em")_";",!
 Q
 ;
BGBDSMALL(PRM) ;
 I $$^W4SIMUL,'$G(PRM) Q $$BG5^W4BGBODY
 ;
 N A
 S A=" background: #8b8b8b;"
 S A=A_"filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#a9a9a9', endColorstr='#7a7a7a');"
 S A=A_"background: -webkit-gradient(linear, left top, left bottom, from(#a9a9a9), to(#7a7a7a));"
 S A=A_"background: -moz-linear-gradient(top,  #a9a9a9,  #7a7a7a);"
 Q A
 ;
CURCOLOR(STAM) ;
 Q "#FFF7C1"
 ;
SHOWV(PRM) ;
 I $$^W6 Q "<img src=""w4chkboxc.png"" height=""30"" width=""30px"" >"
 ;
 I '$G(PRM) Q "<span class=""lbtxt"">V</span>"
 Q "<span class=""lbtxt"" style=""font-size:"_$$^W3FSZ(18)_""">*</span>"
 ;
SHOWO(STAM) ;
 I $$^W6 Q "<img src=""w4chkboxn.png"" height=""30"" width=""30px"" >"
 Q " "
 ;
PADDING20 ;
 W "   padding:"_$$KF(20)_"px;",!
 Q
 ;
KF(SZ) ;
 I $$SMALL,$$GET^%W1PRM("APPL") Q $J(SZ*.3,0,0)
 I $$^W4TABLET=2 Q 1.2*SZ
 I $$SMALL!($$^W4TABLET=2),'$$^W4SIMUL Q SZ
 Q $J(SZ*.5,0,0)
 ;
BGBTN(SMALL) ;
 I $G(SMALL)="" S SMALL='$$^W4SIMUL
 W ".bgbtn { ",!
 W "    display: block;",!
 ;
 I SMALL D
 .W "    width: 80px;",!
 .W "     height:80px;",!
 .W $$RAD("15px")
 ;
 I 'SMALL D
 .W "    width: 25px;",!
 .W "     height:25px;",!
 .W $$RAD("5px")
 ;
 W $$GRAD("#A1A1A1","#FFFFFF")
 W "     border: 2px solid #e5e5e5;",!
 W "     position: relative;",!
 W "     top: 0px;",!
 W "     left: 0px;",!
 W "       }",!
 W !
 Q
 ;
SMALL(STAM) ;
 Q $$SMALL^W3FSZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3CSS
W3CSS ; [ 08.09.26 14:25 ] [ 05.07.26 11:28 ] [ 20.04.26 15:38 ] 
 N (JB,W3CSS,%ARG)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 S PR800=+$$GET^%W1PRM("PR800")
 I 'PR800,$D(%ARG("PR800")) S PR800=%ARG("PR800") D PUT^%W1PRM("PR800",PR800)
 D PUT^%W3DEB("W3CSS","PR800=PR800 & JB=JB")
 I $D(W3CSS("MSD")) S MSD=W3CSS("MSD") K W3CSS("MSD") G BG
 S MSD=$$GET^%W1PRM("MSD")
BG ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 ;;I '$G(MSD) S $ZGBLDIR=$$^W3MAIN
 N CL S CL=$$COLOR
 ;
 N BGHD,BGTB,BGINP
 S BGHD=$$BGHD(CL) ; --- HEADER BACKGROUND
 S BGTB=$$BGTB(CL) ; --- TABLE BACKGROUND
 S BGINP=$$BGINP(CL) ; --- INPUT BACKGROUND
 S FRHD=$$FRHD(CL) ; --- HEADER FORECOLOR ( PAGES 2 ... )
 S FRTB=$$FRHDFLD(CL) ;$$FRTB(CL) ; --- TABLE FORECOLOR ( PAGES 2 ///
 ;
 S FONTFM=$$FONTFM
 ;
 W "<style>",!
 ;
 D ^W4CSS1
 ;
 W ".tdflex { display: flex }",!
 W ".spanflex { flex : 1 }",!
 ;
 W "#dhtmltooltip{",!
 W "  position: absolute;",!
 W "  width: "_$$^W4KF(200)_"px;",!
 W "  border: 1px solid #B30101;",!
 W "  padding: 0px;",!
 W "  background-color: White;",!
 W "  visibility: hidden;",!
 W "  z-index: 100;",!
 W "  font-family: Arial;",!
 W "  font-size: "_$$^W3FSZ(12)_";",!
 W "  text-decoration: none;",!
 W "  color: #000000;",!
 W "  filter: progid:DXImageTransform.Microsoft.Shadow(color=gray,direction=135);",!
 W " }",!
 W !
 W "#dhtmlpointer{",!
 W "  position:absolute;",!
 W "  left: -300px;",!
 W "  z-index: 101;",!
 W "  visibility: hidden;",!
 W " }",!
 W !
 ;
 W !
 W "a:link { text-decoration:none}",!
 W "a:visited {text-decoration:none} /*brown*/",!
 W "a:hover {text-decoration:none} /*purple*/",!
 W "a:active {text-decoration:none} /*blue*/",!
 W !
 ;
 W !
 ;
 W "#itot,#sumch,#summz,#sumca,#nikmas,#tot,#tax,#bftot,#aftot { font-weight: bold }",!
 ;
 W ".invalign {",!
 W " text-align:"_$S($$^%W1LNG="H":"left",1:"right"),!
 W "}",!
 ;
 W ".hdchoice {",!
 W FONTFM,";",!
 W "           font-size:"_$$^W3FSZ(16)_";",!
 W " color:red;",!
 W " }",!
 ;
 W " .tblmenu {",!
  W $$BGBODY($$COLOR)_";"
  W "           color:"_$$FGBODY($$COLOR)_";",!
 ;
 W FONTFM,";",!
 I $$SFC D
 .W "           font-size:"_$$^W3FSZ(12)_";",!
 .W "           font-weight:500;",!
 I '$$SFC D
 .W "           font-size:"_$$^W3FSZ(11+$$1700^W4WDSCR)_";",!
 .W "           font-weight:300;",!
 W "       }",!
 ;
 ;
 W " div {",!
  W FONTFM,";",!
 W "}",!!
 ;
 W "select { border-radius : 5px }",!
 ;
 W " table {",!
  W FONTFM,";",!
  I $$SFC D
  .W "           font-size:"_$$^W3FSZ(12)_";",!
  .W "           font-weight:500;",!
  I '$$SFC D
  .W "           font-size:"_$$^W3FSZ($S($$1700^W4WDSCR:12,1:11))_";",!
  .W "           font-weight:300;",!
 W "       }",!!
 ;
 I $$GET^%W1PRM("BOR") D
 .W "#TblPrt {"
 .W " background-color:white;",!
 .W " color:black;",!
 .W "       }",!
 ;
 W "#TblShowPrt {"
  W $$RAD^W3CSM,!
 W "       }",!
 ;
 ;
 W " table.menu {",!
 W "              color:black;",!
 W FONTFM,";",!
 W "              font-size:"_$$^W3FSZ(18)_";",!
 W "              text-align:left;",!
 W "            }",!
 W !
 ;
 W " table.memberopt {",!
 W "              color:"_$$FG(CL)_";",!
 W "             "_FONTFM,";",!
 W "              font-size:"_$$^W3FSZ(12)_";",!
 I $$^%W1LNG="H" W "              font-weight:600;",!
 W "            }",!
 W !
 ;
 W " div.memberopt {",!
 W "              position:absolute;",!
 W "              top:10px;",!
 I $$^%W1DIR="RTL" D
 .N LEFT S LEFT=$S(PR800:490,1:690)
 .N AWD S AWD=$$GET^%W1PRM("AWD")
 .I AWD>600 S LEFT=AWD-350
 .W "              left:"_LEFT_"px;",!
 I $$^%W1DIR="LTR" W "              left:"_$S(PR800:40,1:60)_"px;",!
 W "              width:300px;",!
 W "              visibility:hidden",!
 W "            }",!
 W !
 ;
 W ".tblmv {",!
 W "  position:absolute;",!
 W "  top:10%;",!
 W "  left:10%;",!
 W "  width:80%;",!
 W "       }",!
 W !
 ;
 W "th { color:"_FRHD_";",!
 D
 .I $G(%ARG("PRINT"))!$G(%ARG("MAIL"))!$G(%ARG("FAX")) D  Q
 ..W "    background-color:white;color:black;",!
 .W "    background-color:"_BGHD_";",!
 I $$SMALL^W3FSZ W " font-size:"_$$^W3FSZ(12),!
 W "}",!
 W !
 ;
 W ".tdth {text-align:center;",! ; -- td in th style
 W "       font-weight:bold}"
 W !
 ;
 W ".tdbd {border :1px solid grey} ",! ; -- td in th style
 ;
 W ".rep td {border :1px dotted grey } ",! ;
 ;
 W " .psw      {padding:"_$$^W4KF(0.3)_"cm;",!
 W "             color:"_$$PSWCOLOR(CL)_";",!
 W "             font-size:"_$$^W3FSZ(16),!  ; was 12 13/04/20
 W "           }",!
 W !!
 W " input { background-color:"_BGINP_";"
 ;;W "         border:1px solid gray",!
 W "         color:"_$$FRINP(CL)_";"
 W "        "_FONTFM,";",!
 I $$^W4TABLET=2 D
 .W "padding:0;",!
 W "             font-size:"_$$^W3FSZ(12-$$1024^W4WDSCR),!
 W "}",!
 ;
 W "input:focus {",!
  W "background-color:lightyellow" 
 W "}",!
 ;
 W ".but {",!
 W "  width:"_$$^W4KF(60)_"px;height:"_$$^W4KF(50)_"px;",!
 W "  "_$$FONTFM^W3CSS_";",!
 W "  font-size:"_$$^W3FSZ(14)_";",!
 W " }",!
 ;
 N IFRBG
 S IFRBG=$$IFRBG^W4BGBODY
 I IFRBG="" S IFRBG="white"
 W !,"iframe body { background-color:"_IFRBG_" }",! ;
 ;
 ;
 D BODY(CL)
 ;
 W ".bodyhd {",! ; bgbody for top header partition
 W "          ",$$BGHDORD(CL)_";",!
 W "          color:"_$$FG(CL)_";",!
 W FONTFM,!
 W "        }",!
 W !
 ;
 W ".bodybgr {",! ; bgbody for categories partition
 D BACKGR("BGGROUP")
 W FONTFM,!
 W "        }",!
 W !
 ;
 W ".bodybgord {",! ; bgbody for order partition
 D BACKGR("BGBDORD")
 W FONTFM,!
 W "        }",!
 W !
 ;
 W ".bodyit {",! ; bgbody for items partition
 W "          ",$$BGITEMS,";",!
 W FONTFM,!
 W "        }",!
 W !
 ;
 W ".bodytsfbg {",! ; bgbody for additions partition
  D
  .I $$^W6 D GRAD("#EFEFEF-#FFFFFF") Q
  .D BACKGR("BGADD")
 W "        }",!
 W !
 ;
 W ".bodybt {",! ; bgbody for bottom header partition
 W "          ",$$BGORDB,!
 W "        }",!
 W !
 ;
 W ".bodynext {",! ; bgbody for next pages
 D
 .I $D(W3CSS("NOBODY")) Q
 .I $G(%ARG("NOBODY")) Q
 .N CL S CL=$$COLOR
 .D BACKGR("BGNEXT")
 W FONTFM_";",!
 W "     }",!
 ;
 W ".bottopay {",! ;
 W "          color:"_$$FG2PAY_";",!
 W FONTFM_";"
 W "          font-size:"_$$^W3FSZ(12)_";"
 W "          font-weight:bold"
 W "        }",!
 W !
 ;
 W ".hklogo {",!
 ;W "      position:absolute;",!
 ;W "      left:33%;",!
 ;W "      top:30px;",!
 W "      font-family:Cooper Black; Arial ;",!
 W "      font-size:22pt;",!
 W "      color:white;",!
 W "     }",!
 ;
 W ".msdname {",!
 W "          color:"_$$FG(CL)_";",!
 W "          font-size:"_$$^W3FSZ(18)_";",!
 W "          text-align:"_$$ALGLOGO^W3MENUHD_";",!
 W "         }",!
 W !
 ;
 W ".phone {",!
 W "          color:"_$$FGPHONE_";",!
 W "          font-size:"_$$^W3FSZ(12)_";",!
 W "          font-weight:bold",!
 W "         }",!
 W !
 ;
 W ".curgr {",! ; --- CURRENT GROUP ( W3HZTSF )
 W "       font-weight:bold",!
 W "       }",!
 W !
 W ".tfrsubhead {",!
 W "       "_$$BGSUBHD(CL)_";",!
 W "       color:"_$$FGSUBHD(CL)_";",!
 W "       font-weight:bold",!
 W "       }",!
 W !
 W ".tfrgroups {",!
 W "       font-weight:bold",!
 W "       }",!
 W !
 ;
 ;
 W " .hdgrit { /* Group items header - W3HZPRTN */",!
 W "           "_$$BGGRIT_";",!
 W "            color:"_$$FGGRIT_";",!
 W FONTFM,";",!
 W "         font-size:"_$$^W3FSZ(14),!
 W "       } ",!
 W !
 ;
 W " .hdpress { ",! ; -- MESSAGE 'PRESS ON ITEM NAME COLOR'
 W "            color:"_$$FGPRESS_";",!
 W FONTFM,";",!
 W "         font-size:"_$$^W3FSZ(12)_";",!
 ;;W "         font-weight:bold;",!
 W " text-align:center;",!
 W "       } ",!
 W !
 ;
 W " .hdaddit { /*Main item header - w3hztsf */",!
 W "            "_$$BGADDIT_";",!
 W "            color:"_$$FGADDIT_";",!
 W FONTFM,";",!
 W "         font-size:"_$$^W3FSZ(14),!
 W "       } ",!
 W !
 ;
 D BGBTN^W3CSM(0)
 ;
 W ".bgitshow {",!
 D BACKGR("BGITSHOW")
 W "          }",!
 W !
 W " .items { /* item color - ITEMSHOW - W3HZPRTN */",!
 W "   color:"_$$FGITEMS_";",!
 W "   font-size:"_$$FONTIT,!
 I $$FONTIT^W3CSS<14 W ";font-weight:bold"
 W "        }",!
 W !
 W " .itemh { /* item price - ITEMSHOW - W3HZPRTN */",!
 W "   color:"_$$FGMH_";",!
 W "   font-size:"_$$FONTMH,!
 I $$FONTIT^W3CSS<14 W ";font-weight:bold"
 W "        }",!
 W !
 W " .desc { /* item description - ITEMSHOW - W3HZPRTN */",!
 W "   color:"_$$FGDET_";",!
 W "   font-size:"_$$FONTDET,!
 W "        }",!
 W !
 W " .hditemshow { /* text of heades in ITEMSHOW */",! ; -
 W "   color:"_$$FGHDITS_";",!
 W "   font-size:"_$$FONTHITS_";",!
 I $$FONTHITS^W3CSS<14 W "font-weight:bold"
 W "        }",!
 W !
 ;
 ;
 W " .hdai { /* buisiness launch header - W3HZTSF */",!
 W FONTFM,";",!
 D
 .N FSZ S FSZ=14 I $$^W6 S FSZ=16
 .W "         font-size:"_$$^W3FSZ(FSZ)_";",!
 W "         font-weight:bold;",!
 W "         color:"_$$FGHDADD,!
 W "       }",!
 D HDAIQN
 ;
 W !
 W ".noselect {",!
 W " -webkit-touch-callout: none; /* iOS Safari */",!
 W " -webkit-user-select: none; /* Safari */",!
 W " -khtml-user-select: none; /* Konqueror HTML */",!
 W " -moz-user-select: none; /* Firefox */",!
 W " -ms-user-select: none; /* Internet Explorer/Edge */",!
 W " user-select: none; /* Non-prefixed version, currently",!
 W " supported by Chrome and Opera */",!
 W "}",!!
 ;
 W !
 W " .tblordhd",! ;--- background for order table header
 W "    {",!
 W "       "_$$BGORDHD_";"
 W "       color:"_$$FGORDHD
 W "    }",!
 W !
 ;
 ;
 D
 .W " .bgtblord",! ;--- background for order table
 .W "    {",!
 .W "       "_$$BGTBLORD_";",!
 .;;W "      position:fixed;" ;;.fixed;",!
 .;;W "      top:"_$$^W4KF(100)_"px;",!
 .W "    }",!
 .W !
 ;
 W ".tdbgord {" ; - ORDER LINE BG
  W $$BGTDORD
 W " }",!
 ;
 W ".tdnomod {" ; - ORDER LINE BG
  D
  .S BGC="white"
  .W "background-color:"_BGC
 W " }",!
 ;
 W !
 W " .forecolor {",! ; --- ITEMS COLOR IN ORDER
 W "               color:"_$$FGORDIT,!
 W " }",!
 W !
 ;
 W !
 W " .forecolorflex {",! ; --- ITEMS COLOR IN ORDER
 W "               color:"_$$FGORDIT_";",!
 W "               flex:1;",!
 W " }",!
 W !
 ;
 W " .bgcur {",!
 ;;W "   border:solid 1px brown;",!
 W $$BGTDORD
 W "}",!
 W !
 ;
 W " .hdordcmn {",!
 W "      color:"_$$FGORDCMN_";",!
 W "      font-weight:bold",!
 W " }",!
 W !
 ;
 W " .hdgr {",!
 W "      color:"_$$FGORDCMN_";",!
 W "      font-weight:bold",!
 W " }",!
 W !
 ;
 ;
 ;
 W " .fgbothd { ",! ; ------ FOREGROUND FOR BOTTOM
 W FONTFM,";",!
 W "             font-weight:bold;",!
 W "             color:"_$$FGBOT_";"
 W "             font-size:"_$$^W3FSZ(12)_" }",!
 W !
 ;
 W " .hd1 { ",!
 W "            color:"_FRHD_";",!
 W "            background-color:"_BGHD_";",!
 W FONTFM,";",!
 W "            font-size:"_$$^W3FSZ(16)_";",!
 W "            text-align:center",!
 W "         } ",!
 W !
 ;
 W " .hdvw { /* page header w3ordvw; w3ordrg */",!
 W "            background-color:"_BGHD_";",!
 W "            color:"_$S($$SFC:"white",1:FRHD)_";",!
 W FONTFM,";",!
 W "            font-size:"_$$^W3FSZ(18)_";",!
 ;;W "            font-weight:bold;",!
 W "            text-align:center;",!
 W "            border:1px solid white",!
 W "         } ",!
 W !
 W " .hdvw1 { /* invers for top buttons - w3ordvw */",!
 W "            background-color:"_FRHD_";",!
 W "            color:"_$S($$SFC:"white",1:BGHD)_";",!
 W FONTFM,";",!
 W "            font-size:"_$$^W3FSZ(18)_";",!
 W "            text-align:center;",!
 W "            width:100%",!
 W !
 W "         } ",!
 W !
 W " table.hdvw td {",!
 W " font-size:"_$$^W3FSZ(16)
 W "}",!
 W !
 W ".vw {  ",!
 W "     /* use in w3ordvw.jsp - table bg*/",!
 W "      "_BGTB,!
 W "     }   ",!
 W !
 W " .vw th ",!
 W "        {background-color:"_BGHD_"; /* table header */",!
 W "         font-weight:500;",!
 W "         color:"_FRHD_";",!
 W FONTFM,";",!
 W "         font-size:"_$$^W3FSZ,!
 W "        }  ",!
 W !
 W ".vw0 {  /* use in w3ordvw.jsp - items color */",!
 W "        color:"_$$FGITVW
 W "     }",!
 W !
 W ".vw1 {  ",!
 W "     /* use in w3ordvw.jsp - adds color */",!
 W "      color:"_$$FGADDVW,!
 W "     }   ",!
 W !
 W " .vwcmnt {",!
 I '$$COLORDARK W "                  background-color:white;",!
 I $$COLORDARK W "                 background-color:",BGINP,";",!
 W "          color:"_$$FGCMNTVW_";",!
 W "          font-weight:bold"
 W "                }   ",!
 W !
 ;
 W " .hdfld",! ;--- background for order table header
 W "    {",!
 W "       color:"_$$FRHDFLD($$COLOR)_";"
 W "       font-weight:"_$S($$WGHDFLD($$COLOR):"bold",1:"normal")
 W "    }",!
 W !
 ;
 W " .hd {",!
 W "    color:"_$$BGCOLOR^W4CSS_";",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(12)_";",!
 W "    text-align:center;",!
 W "    font-weight:600;",!
 W "        }  ",!
 ;
 W " .radiovw",!
 W "  {",!
 W "    "_$$BGBODY(CL)_";",!
 W "    border:0px",!
 W "  }",!
 W !
 ;
 W " .radiorcv",!
 W "  {",!
 W "    "_$$BGBODY(CL)_";",!
 W "    font-size:"_$$^W3FSZ_";",!
 W "    border:0px",!
 W "  }",!
 W !
 ;
 W " .btn {",!
 W "        width:100%;",!
 W FONTFM,";",!
 W "        font-size:"_$$^W3FSZ(13-$$1024^W4WDSCR)_";",!
 W "        text-align:center;",!
 W "        background-color:"_BGHD_";",!
 W "        color:"_$$FRHD(CL),! ; WHITE
 W "      }",!
 W !
 ;
 W " .btnbold {",!
 W "        width:100%;",!
 W FONTFM,";",!
 W "        font-size:"_$$^W3FSZ(13-$$1024^W4WDSCR)_";",!
 W "        text-align:center;",!
 W "        background-color:"_BGHD_";",!
 W "        font-weight:bold;",!
 W "        color:"_$$FRHD(CL),! ; WHITE
 W "      }",!
 W !
 ;
 D BTNRND
 ;
 W " .btnmenu {",!
 W "        width:93%;",!
 W FONTFM,";",!
 W "        font-size:"_$$^W3FSZ(12)_";",!
 W "        text-align:center;"
 ;
 W "        background-color:white;",!
 W "        color:"_$$BGHD(CL)_";",! ; WHITE
 ;
 W "        height:"_$$^W4KF(32)_"px;"
 ;;W "  filter: progid:DXImageTransform.Microsoft.Shadow(color=gray,direction=135);",!
 W "      }",!
 W !
 ;
 W " .btnback {",!
 W "        width:93%;",!
 W FONTFM,";",!
 W "        font-size:"_$$^W3FSZ(12)_";",!
 W "        text-align:center;",!
 ;
 W "        background-color:"_BGHD_";",!
 W "        color:"_$$FRHD(CL)_";",! ; WHITE
 ;
 W "        height:"_$$^W4KF(32)_"px;"
 ;;W "  filter: progid:DXImageTransform.Microsoft.Shadow(color=gray,direction=135);",!
 W "      }",!
 W !
 ;
 ;
 W ".disc {",!
 W "    "_FONTFM,";",!
 W " color:red;",!
 W " text-align:center",!
 W "}",!
 ;
 W ".disccmst {",!
 W "    "_FONTFM,";",!
 W " color:darkblue;",!
 W " font-size:"_$$^W3FSZ(8),!
 W "}",!
 ;
 W ".glist{",!
 W "    "_FONTFM,";",!
 W " text-align:center;"
 W " color:darkblue;",!
 W " font-size:"_$$^W3FSZ(8),!
 W "}",!
 ;
 W ".mana{",!
 W "    "_FONTFM,";",!
 W " text-align:center;"
 W " color:black;",!
 W " font-size:"_$$^W3FSZ(12),!
 W "}",!
 ;
 I $$^W4SMALL D ^W3CSM
 ;
 W "</style>",!
 K W3CSS Q
 ;
BGBODY(CL) ;
 I $$PAPJ^W4PRM,$$GETP^%W1PRM("SHOWRCPT") Q "background-color:black"
 I $G(@$$GLCOLOR@(CL,"BGBODY"))'="" Q ^("BGBODY")
 I CL="SF" Q "background-image:url('w3sfreka.jpg')"
 Q ""
 ;
FGBODY(CL) ;
 I $G(@$$GLCOLOR@(CL,"FGBODY"))'="" Q ^("FGBODY")
 Q "black"
 ;
BGNEXT(CL) ;
 I $G(CL)="" S CL=$$COLOR
 N BGNEXT S BGNEXT=$G(@$$GLCOLOR@(CL,"BGNEXT"))
 I BGNEXT'?.P Q BGNEXT
 Q $$BGBODY(CL)
 ;
NOBORD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"NOBORD"))'="" Q +^("NOBORD")
 Q 0
 ;
PSWCOLOR(CL)
 I $G(@$$GLCOLOR@(CL,"PSWCOLOR"))'="" Q ^("PSWCOLOR")
 I $$COLORDARK Q "white"
 Q "black"
 ;
FORGPSW(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FORGPSW"))'?.P Q ^("FORGPSW")
 I $$SFC Q "red"
 I $$COLORDARK Q "yellow"
 Q "black"
 ;
BGHDORD(CL) ;  w3menuhd (top) - background
 I $G(@$$GLCOLOR@(CL,"BGHDORD"))'?.P Q ^("BGHDORD")
 Q $$BGBODY(CL)
 ;
BGORDB(STAM) ; -- w3menubt (bot) background
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGORDB"))'?.P Q ^("BGORDB")
 Q "background-color:"_$$BGHD(CL)
 ;
 ;
BODY(CL)
 I $D(W3CSS("NOBODY")) Q
 I $G(%ARG("NOBODY")) Q
 ;
 I $G(%ARG("SCR"))["W3COLOR" D  Q
 .W "body {",!
 .W "       background-color:white;",!
 .W "       color:black;",!
 .W "      }",!
 .W !
 ;
 I $$^W4SMALL D  Q
 .W "body {",!
 .W "       background-color:#ebebeb;"
 .W "       color:black;"
 .W "      }",!
 .W !
 ;
 N BODYURL
 I $$SFC D PUT^%W1PRM("BODYURL","w3sfreka.jpg")
 ;;I $$DLVWEB^W4DLVCSR,'$$MMCC^W4PRM D ^W4BGBODY ; --- 24/6/25
 I '$$MMCC^W4PRM D ^W4BGBODY
 I $$^W6 D PUT^%W1PRM("BODYURL",$$W6^W4BGBODY)
 S BODYURL=$$GET^%W1PRM("BODYURL")
 ;;I $$PRSNLSET^%W1WEBMN!$$GETP^%W1PRM("PRSNLMENU"),'$$DELIS^W4PRM S BODYURL=""
 ;
 ;;S ^AA("W3CSS","BODYURL")=BODYURL_"\"_JB
 ;
 I BODYURL'="",BODYURL'["<UNDEF",'$D(W3CSS("NOBODYURL")),'$$GETP^%W1PRM("SHOWRCPT") D  Q
 .W "body {",!
 .I BODYURL'["background",BODYURL'["filter" D
 ..I BODYURL["-"!(BODYURL["^"),BODYURL'["." W $$GRD^W3CSS(BODYURL),! Q
 ..I BODYURL'["." W "background-color:"_BODYURL_";" Q
 ..W "       background-image:url('"_BODYURL_"');",!
 .I BODYURL["background"!(BODYURL["filter") W BODYURL,! 
 .W "      }",!
 .W !
 ;
 D
 .W "body { "_$$BGBODY(CL)_";",!
 .W "  color:"_$$FGBODY(CL)_";",!
 .W FONTFM_";",!
 .;;W "user-select: none;",!
 .W "     }",!
 Q
 ;
 ;
BGCHOOS(STAM) ;-- CHOOSED ITEM COLOR( W3HZPRTN )
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGCHOOS"))'?.P Q ^("BGCHOOS")
 Q "background-color:#f3f3f3"
 ;
SF(STAM) ;
 ;;I $$GET^%W1PRM("MSD")=1!($$GET^%W1PRM("MSD")=99999),$$COLOR="SF" Q 1
 I $$COLOR="SF" Q 1
 Q 0
 ;
BGQNADD(CL) ;-- QN BG ( W3HZTSF )
 Q $$BGINP(CL)
 ;
MENUBO(CL) ; -- BACK OFFICE MENU
  I $G(CL)="" S CL=$$COLOR I CL="" S CL=0
  I $G(@$$GLCOLOR@(CL,"MENUBO"))'?.P Q ^("MENUBO")
  Q $$BGHD(CL)
 ;
BGHD(CL) ; HEADER BACKGROUND COLOR ; -- PAGE 2 ...
  N BGHD
  I $G(%ARG("PRINT")) Q "WHITE"
  I $$GETP^%W1PRM("ELPOS"),$$CLRCSR^W4BGBODY?1U.E Q $$BGHD^W4BGBODY
   ;
  I $G(CL)="" S CL=$$COLOR I CL="" S CL=0
  S BGHD=$G(@$$GLCOLOR@(CL,"BGHD"))
  I BGHD[":" Q $P(BGHD,":",2)
  I BGHD'?.P Q BGHD
  Q "#990000"
  ;
BGTB(CL) ; TABLES BACKGROUND ; PAGE 2 ...
 I $G(@$$GLCOLOR@(CL,"BGTB"))'?.P Q ^("BGTB")
 Q "background-color:#fafad2"
 ;
BGINP(CL) ;
 I $G(@$$GLCOLOR@(CL,"BGINP"))'?.P Q ^("BGINP")
 Q "white"
 ;
FRINP(CL) ;
 I $G(@$$GLCOLOR@(CL,"FRINP"))'?.P Q ^("FRINP")
 Q "black"
 ;
FRHD(CL) ; --- HEADER COLOR ( NEXT PAGES )
 I $G(%ARG("PRINT")) Q "BLACK"
 I $L($G(CL)),$G(@$$GLCOLOR@(CL,"FRHD"))'?.P Q ^("FRHD")
 Q "white"
 ;
FGHDUS(CL) ; --- HEADER COLOR ( NEXT PAGES )
 I $G(@$$GLCOLOR@(CL,"FGHDUS"))'?.P Q ^("FGHDUS")
 Q $$BGHD(CL)
 ;
FGHDMSD(STAM) ; --- HEADER COLOR ( NEXT PAGES )
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGHDMSD"))'?.P Q ^("FGHDMSD")
 Q "black"
 ;
FRHDFLD(CL) ; --- HEADER FIELD COLOR ( PAGE 2 .... )
 I $G(@$$GLCOLOR@(CL,"FRHDFLD"))'?.P Q ^("FRHDFLD")
 Q "black"
 ;
WGHDFLD(CL) ; HEADER FIELD WEIGHT
 I $G(@$$GLCOLOR@(CL,"WGHDFLD"))'?.P Q ^("WGHDFLD")
 Q "bold"
 ;
FGFLD(CL) ; --- FIELD COLOR ( PAGE 2 .... )
 I $G(@$$GLCOLOR@(CL,"FGFLD"))'?.P Q ^("FGFLD")
 Q "black"
 ;
WGFLD(CL) ; FIELD WEIGHT ( ITEM PAGE  2 )
 I $G(@$$GLCOLOR@(CL,"WGFLD"))'?.P Q ^("WGFLD")
 Q "bold"
 ;
FGSUGT(STAM) ; --- HEADER FIELD COLOR ( PAGE 2 .... )
 I $$CALLCENTER Q "BROWN"
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGSUGT"))'?.P Q ^("FGSUGT")
 Q "yellow"
 ;
FGMAKOR(STAM) ; --- HEADER FIELD COLOR ( PAGE 2 .... )
 I $$CALLCENTER Q "BLACK"
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGMAKOR"))'?.P Q ^("FGMAKOR")
 Q "BLACK"
 ;
FGDLVPAY(STAM) ;
 N CL,CLDLV S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGDLVPAY"))'?.P S CLDLV=^("FGDLVPAY") I $$FUNC^%UCASE(CLDLV)'="WHITE",CLDLV'["FFFFFF" Q CLDLV
 Q "blue"
 ;
FGTOT(STAM) ; --- ORDER TOTAL
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGTOT"))'?.P Q ^("FGTOT")
 Q "darkblue"
 ;
FRTB(CL) ; TABLES FORECOLOR ;
 I $G(@$$GLCOLOR@(CL,"FRTB"))'?.P Q ^("FRTB")
 Q "black" ;Q "#7F3D09" ; -- dark brown
 ;
FRACCENT(CL) ;
 Q $$FGFLD(CL)
 ;
 ;
FG(CL) ; HEADER FG
 I $G(@$$GLCOLOR@(CL,"FG"))'?.P Q ^("FG")
 I $$^W4ELPOS Q "yellow"
 ;;I $$DLVWEB^W4DLVCSR Q "yellow"
 Q "black"
 ;
FGODHD1(STAM) ; HEADER HD1 IN ORDDET
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGODHD1"))'?.P Q ^("FGODHD1")
 Q "#d90300"
 ;
FGODHD2(STAM) ; HEADER HD1 IN ORDDET
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGODHD2"))'?.P Q ^("FGODHD2")
 Q "#d90300"
 ;
FGSC(CL) ; SEARCH FOREGROUND
 I $G(@$$GLCOLOR@(CL,"FGSC"))'?.P Q ^("FGSC")
 Q "black"
 ;
FGPHONE(STAM) ; COLOR PHONE NUMBER
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGPHONE"))'?.P Q ^("FGPHONE")
 Q $$FRHD(CL)
 ;
FONTFM(STAM) ;
 Q $$FONTFM^W4CSS1
 ;
FONTFMBOLD(STAM) ;
  I $$GET^%W1PRM("REST") Q "font-family:Narkis Block,Guttman Haim,Aharoni"
  Q $$FONTFM
 ;
COLOR(STAM) ;
 Q $$COLOR^W4GETCLR
 ;
LNFRDEF(CL) ; -- LINKS <a> COLOR
 Q "black"
 ;
LNFROVER(CL) ;
 I CL="DS" Q $$BGHD(CL)
 Q "purple"
 ;
CONTRAST(CL) ;
 I $G(@$$GLCOLOR@(CL,"CONTRAST"))'?.P Q ^("CONTRAST")
 I CL="REST" Q "white"
 I $$COLORDARK Q "yellow"
 I CL="FK" Q "brown"
 Q "red"
 ;
FC(CL) ;-- ITEMS COLOR
 I $G(@$$GLCOLOR@(CL,"FC"))'?.P Q ^("FC")
 Q "#4EA800"
 ;
FGCD(STAM) ;-- ITEMS CODE COLOR
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGCD"))'?.P Q ^("FGCD")
 Q $$BGHD(CL)
 ;
FGITEMS(STAM) ;-- ITEMS COLOR
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGITEMS"))'?.P Q ^("FGITEMS")
 Q $$BGHD(CL)
 ;
FGMH(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGMH"))'?.P Q ^("FGMH")
 Q $$BGHD(CL)
 ;
FGDET(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGDET"))'?.P Q ^("FGDET")
 Q "black"
 ;
FGLINE(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGLINE"))'?.P Q ^("FGLINE")
 Q "gray"
 ;
FGLEV(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGLEV"))'?.P Q ^("FGLEV")
 Q $$BGHD(CL)
 ;
SFC(STAM) ;
 I $$COLOR="SF" Q 1
 Q 0
 ;
BGORDHD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGORDHD"))'?.P Q ^("BGORDHD")
 I CL="JO" Q "background-color:"_$$FRTB(CL)
 Q "background-color:"_$$BGHD(CL)
 ;
FGORDHD(STAM) ;
 N CL S CL=$$COLOR
 I $$^W6 Q "white"
 I $$CALLCENTER Q $$CCOLOR
 I $G(@$$GLCOLOR@(CL,"FGORDHD"))'?.P Q ^("FGORDHD")
 Q $$FG(CL)
 ;
BGTDORD(STAM) ; --- BG ORDER ITEMS
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGTDORD"))'?.P Q ^("BGTDORD")
 Q "background-color:"_$S($$SF!$$COLOR="REST":"white",1:"#eaeaea")
 ;
COLORDARK(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"DARK")) Q 1
 I CL="RW"!(CL="OG")!(CL="DRW")!(CL="REST")!(CL="DS")!(CL="JO")!(CL="VG") Q 1
 Q 0
 ;
WELCOMECOLOR(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"WELCOMECOLOR"))'?.P Q ^("WELCOMECOLOR")
 Q "white"
 ;
CLR(CL) ;
 I $G(@$$GLCOLOR@(CL,"CLR"))'?.P Q ^("CLR")
 Q "white"
 ;
PHONEIMG(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"PHONEIMG"))'?.P Q +^("PHONEIMG")
 I $$COLORDARK Q 0
 Q 1
 ;
FGMENU(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGMENU"))'?.P Q ^("FGMENU")
 N CLR S CLR="brown"
 I CL="OG" S CLR=$$BGHD("OG")
 Q CLR
 ;
FGPRINT(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGPRINT"))'?.P Q ^("FGPRINT")
 Q "black"
 ;
BCURGR(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BCURGR"))'?.P Q ^("BCURGR")
 I CL="OG" Q $$BGHD(CL)
 Q $$BGHD(CL)
 ;
FGCURGR(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGCURGR"))'?.P Q ^("FGCURGR")
 I CL="FK" Q "white"
 I $$^W4ELPOS Q "red"
 Q $$FG(CL)
 ;
BGSUBHD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGSUBHD"))'?.P Q ^("BGSUBHD")
 Q "background-color:"_$$BGHD(CL)
 ;
FGSUBHD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGSUBHD"))'?.P Q ^("FGSUBHD")
 Q $$FRHD(CL)
 ;
BGGROUP(STAM) ;
 I $$^W6 Q "background-color:white"
 N CL,BG S CL=$$COLOR
 N BGGROUP
 S BGGROUP=$G(@$$GLCOLOR@(CL,"BGGROUP"))
 I BGGROUP'?.P Q BGGROUP
 Q "background-color:white"
 ;
FGGROUP(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGGROUP"))'?.P Q ^("FGGROUP")
 Q $$BGHD(CL)
 ;
BGTRGR(STAM) ;
 N CL,BG S CL=$$COLOR
 I $$WW^W6 Q $$GRAD1^W3CSM("lightgrey","white")
 ;
 I $G(@$$GLCOLOR@(CL,"BGTRGR"))'?.P Q ^("BGTRGR")
 Q $$BGGROUP
 ;
 ;
HGTRGR(STAM) ;
 N CL,HG S CL=$$COLOR,HG=""
 I $$^W6 Q 50
 ;
 I $G(@$$GLCOLOR@(CL,"HGTRGR"))'?.P S HG=^("HGTRGR")
 Q HG
 ;
 ;
BGKUPA S BG=$$BG^W4BGBODY
 Q
 ;
BGITEMS(STAM) ;
 N CL S CL=$$COLOR
 N BG S BG=$G(@$$GLCOLOR@(CL,"BGITEMS"))
 N BGCLR S BGCLR=BG I BG?1"background".E S BGCLR=$P(BG,":",2,20)
 I $$W1^W6ARG S BGCLR="E0CFB5^FFFFFF"
 I BGCLR["-"!(BGCLR["^") Q $$GRD(BGCLR) 
 I BG'?.P,BG'["background" S BG="background:"_BG
 I BGCLR["url(" Q "background-size:cover;"_BG
 I BGCLR'?.P Q BG 
 Q "background-color:white"
 ;
BGITSHOW(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGITSHOW"))'?.P Q ^("BGITSHOW")
 Q $$BGITEMS
 ;
FONTCD(STAM) ;
 N CL S CL=$$COLOR
 I $$DLV^W4DLVCSR Q $$^W3FSZ(10)
 I $G(@$$GLCOLOR@(CL,"FONTCD"))'?.P Q ^("FONTCD")
 Q $$^W3FSZ
 ;
FONTMH(STAM) ;
 N CL S CL=$$COLOR
 I $$DLV^W4DLVCSR Q $$^W3FSZ(12)
 I $G(@$$GLCOLOR@(CL,"FONTMH"))'?.P Q ^("FONTMH")
 Q $$^W3FSZ
 ;
FONTIT(STAM) ;
 N CL S CL=$$COLOR
 I $$DLV^W4DLVCSR Q $$^W3FSZ(12)
 I $G(@$$GLCOLOR@(CL,"FONTIT"))'?.P Q ^("FONTIT")
 ;;I $$DLVWEB^W4DLVCSR Q $$^W3FSZ(12)
 Q $$^W3FSZ
 ;
FONTHITS(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FONTHITS"))'?.P Q ^("FONTHITS")
 Q $$^W3FSZ
 ;
FONTDET(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FONTDET"))'?.P Q ^("FONTDET")
 Q $$^W3FSZ(11)
 ;
BGGRIT(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGGRIT"))'?.P Q ^("BGGRIT")
 N BGHD S BGHD=$$BGHD(CL)
 I BGHD["background" Q BGHD
 Q "background-color:"_BGHD
 ;
FGGRIT(STAM) ;
 I $$CALLCENTER Q $$CCOLOR
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGGRIT"))'?.P Q ^("FGGRIT")
 I CL="FK" Q "white"
 Q $$FG(CL)
 ;
FGPRESS(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGPRESS"))'?.P Q ^("FGPRESS")
 Q $$BGHD(CL)
 ;
FGHDITS(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGHDITS"))'?.P Q ^("FGHDITS")
 I $$^W4ELPOS Q "brown"
 Q $$FG(CL)
 ;
BGADD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGADD"))'?.P Q ^("BGADD")
 I $$W1^W6ARG Q "E0CFB5^FFFFFF"
 Q "white"
 ;
FGADD(STAM) ;
 I $$^W4SMALL Q "black"
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGADD"))'?.P Q ^("FGADD")
 I $$DLVMOUSE^W4PRM=1 Q "black"
 Q $$FGITEMS
 ;
FGADDCHS(STAM) ;
 I $$^W4SMALL Q "brown"
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGADDCHS"))'?.P Q ^("FGADDCHS")
 Q "brown"
 ;
FGHDADD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGHDADD"))'?.P Q ^("FGHDADD")
 Q "green"
 ;
FGMHADD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGMHADD"))'?.P Q ^("FGMHADD")
 Q $$FGMH
 ;
FGPLUS(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGPLUS"))'?.P Q ^("FGPLUS")
 Q "green"
 ;
FGMIN(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGMIN"))'?.P Q ^("FGMIN")
 Q "red"
 ;
FGMAXADD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGMAXADD"))'?.P Q ^("FGMAXADD")
 Q "black"
 ;
FGTOTADD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGTOTADD"))'?.P Q ^("FGTOTADD")
 Q "red"
 ;
FGADDIT(STAM) ;
 I $$^W6 Q "white"
 I $$CALLCENTER Q $$CCOLOR
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGADDIT"))'?.P Q ^("FGADDIT")
 Q $$FG(CL)
 ;
BGADDIT(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGADDIT"))'?.P Q ^("BGADDIT")
 Q "background-color:"_$$BGHD(CL)
 ;
FGADDTO(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGADDTO"))'?.P Q ^("FGADDTO")
 Q $$FGADD
 ;
ADDBOLD(STAM) ;
 N CL S CL=$$COLOR
 Q +$G(@$$GLCOLOR@(CL,"ADDBOLD"))
 ;
ADDWEIGHT(STAM) ;
 I $$ADDBOLD Q "bold"
 Q 200
 ;
BGBDORD(STAM) ;
 I $$SMALL^W4SMALL Q $$BG5^W4BGBODY
 ;
 N CL,BG S CL=$$COLOR
 N BG S BG=$G(@$$GLCOLOR@(CL,"BGBDORD"))
 I BG'?.P Q BG
 ;;I $$DLVWEB^W4DLVCSR,'$$SFC^W3CSS D BGKUPA Q BG
 Q $$BGGROUP
 ;
 ;
BGTBLORD(STAM) ; -- KAVIM BE TAVLAT HAZMANA
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGTBLORD"))'?.P Q ^("BGTBLORD")
 Q "background-color:gray"
 ;
FGORDIT(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGORDIT"))'?.P Q ^("FGORDIT")
 Q "black"
 ;
BGORDCUR(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"BGORDCUR"))'?.P Q ^("BGORDCUR")
 Q "background-color:white;"
 ;
FGORDCD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGORDCD"))'?.P Q ^("FGORDCD")
 Q $$FGORDIT
 ;
FGORDMH(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGORDMH"))'?.P Q ^("FGORDMH")
 Q "black"
 ;
FGORDADD(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGORDADD"))'?.P Q ^("FGORDADD")
 Q "green"
 ;
FGORDCMN(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGORDCMN"))'?.P Q ^("FGORDCMN")
 Q "brown"
 ;
FGBOT(STAM) ;
 N CL S CL=$$COLOR
 I $$CALLCENTER Q $$CCOLOR
 I $G(@$$GLCOLOR@(CL,"FGBOT"))'?.P Q ^("FGBOT")
 I $$COLOR^W3CSS="OG" Q $$FC^W3CSS($$COLOR^W3CSS)
 I $$COLORDARK^W3CSS Q "white"
 Q "black"
 ;
FG2PAY(STAM) ;
 N CL S CL=$$COLOR
 I $$CALLCENTER Q $$CCOLOR
 I $G(@$$GLCOLOR@(CL,"FG2PAY"))'?.P Q ^("FG2PAY")
 I $$COLORDARK Q "white"
 Q ""
 ;
FGITVW(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGITVW"))'?.P Q ^("FGITVW")
 Q "black"
 ;
FGADDVW(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGADDVW"))'?.P Q ^("FGADDVW")
 Q "green"
 ;
FGCMNTVW(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGCMNTVW"))'?.P Q ^("FGCMNTVW")
 Q "brown"
 ;
FGENCR(STAM) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"FGENCR"))'?.P Q ^("FGENCR")
 Q "darkblue"
 ;
CLGRAD(COLOR) ;
 I $L($TR(COLOR,"#",""))=13,COLOR'[":",COLOR["-"!(COLOR["^") Q 1
 Q 0
 ;
GRD(BG) ;
 N CL1,CL2
 I BG["^" D  Q $$GRAD1^W3CSM(CL1,CL2)
 .S CL1=$P(BG,"^") I $E(CL1)'="#",$L(CL1)=6 S CL1="#"_CL1
 .S CL2=$P(BG,"^",2) I $E(CL2)'="#",$L(CL2)=6 S CL2="#"_CL2
 ;
 S CL1=$P(BG,"-") I $E(CL1)'="#",$L(CL1)=6 S CL1="#"_CL1
 S CL2=$P(BG,"-",2) I $E(CL2)'="#",$L(CL2)=6 S CL2="#"_CL2
 Q $$GRAD^W3CSM(CL1,CL2)
 ;
 ;
GRAD(BG) ;
 N CL1,CL2
 I BG["^" D  Q
 .S CL1=$P(BG,"^") I $E(CL1)'="#" S CL1="#"_CL1
 .S CL2=$P(BG,"^",2) I $E(CL2)'="#" S CL2="#"_CL2
 .W $$GRAD1^W3CSM(CL1,CL2),!
 ;
 S CL1=$P(BG,"-") I $E(CL1)'="#" S CL1="#"_CL1
 S CL2=$P(BG,"-",2) I $E(CL2)'="#" S CL2="#"_CL2
 W $$GRAD^W3CSM(CL1,CL2),!
 Q
 ;
 ;
USERCODE(STAM) ;
 I $$SFC Q "<img src=""w3sfusr.jpg"" />"
 N IMG S IMG=$$IMG("USRCOLOR") I IMG'="" Q IMG
 Q $$^%W1DICT("USERCODE")_"&nbsp;"
 ;
REMEMBERME(STAM) ;
 I $$SFC Q "<img src=""w3sfrmb.jpg"" />"
 N IMG S IMG=$$IMG("RMBME") I IMG'="" Q IMG
 N COLOR S COLOR=$G(@$$GLCOLOR@($$COLOR,"RMBME"))
 N ST S ST=""
 I $L(COLOR) S ST=ST_"<span style=""color:"_COLOR_";font-size:"_$$^W3FSZ(12)_""">"
 S ST=ST_$$^%W1DICT("REMEMBERME")
 I $L(COLOR) S ST=ST_"</span>"
 Q ST
 ;
 ;
SUBMIT ;
 N OU
 I $$SFC D  W OU Q  ; FOR SF - REGISTATION
 .S OU="<img src=""w3sfreg.jpg"" style=""cursor:pointer"" "
 .S OU=OU_"onClick=""ToProfile('"_+$G(JB)_"',true)"" />"
 ;
 N IMG S IMG=$$IMG("SUBMBTN","SubmClick('"_+$G(JB)_"')") I IMG'="" W IMG Q
 ;
 D ROUNDBUT^%W1JS("rbtsubmit",$$^%W1DICT("SUBMIT"),"SubmClick("_$G(JB)_")",$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11+$$1700^W4WDSCR)_";color:green;width:80px")
 Q
 ;
HDPSW(STAM) ;
 I $$SFC^W3CSS Q "<img src='w3sfpsw.jpg' />"
 N IMG S IMG=$$IMG("PSWCOLOR") I IMG'="" Q IMG
 Q $$^%W1DICT("PASSWORD")_"&nbsp;"
 ;
FORGETPSW ;
 I $$SFC^W3CSS D FORGSFC Q
 ;
 N IMG S IMG=$$IMG("FORGPSW","SendMail('"_+$G(JB)_"')") I IMG'="" W IMG Q
 ;
 W "<a href=""#"" onClick=""SendMail('"_+$G(JB)_"')"" "
 W " style=""font-size:"_$$^W3FSZ(12)
 W ";color:"_$$FORGPSW_""">"
 W "&nbsp;"_$$^%W1DICT("FORGETPSW")_"</a>",!
 Q
 ;
FORGSFC ;
 W "&nbsp;<img src='w3sffrg.jpg' style=""cursor:pointer"" "
 W " onClick=""SendMail('"_+$G(JB)_"')"" />"
 Q
 ;
REGSFC ;
 W "<img src=""w3sfreg.jpg"" style=""cursor:pointer"" "
 W " onClick=""ToProfile('"_+$G(JB)_"',true)"" />"
 Q
 ;
SBMSFC ;
 W "<img src=""w3sfsbm.jpg"" style=""cursor:pointer"" "
 W " onClick=""SubmClick('"_+$G(JB)_"')"" />"
 Q
 ;
REG ;
 I $$SFC^W3CSS D SBMSFC Q
 ;
REGBTN ;
 N IMG S IMG=$$IMG("SIGNBTN","ToProfile('"_+$G(JB)_"',true)") I IMG'="" W IMG Q
 ;
 D ROUNDBUT^%W1JS("rbtreg",$$^%W1DICT("REGISTRY"),"ToProfile("_$G(JB)_",true)",$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11+$$1700^W4WDSCR)_";color:red;width:80px")
 Q
 ;
 ;
REGNEW ;
 I $$SFC^W3CSS D REGSFC Q
 D REGBTN
 Q
 ;
MEMBERPRESSHERE ;
 I $$SFC^W3CSS D  Q
 .W "<img src=""w3sfmmbhere.jpg"" />"
 ;
 N IMG S IMG=$$IMG("MEMBHERE") I IMG'="" W IMG Q
 ;
 W $$^%W1DICT("MEMBERPRESSHERE")
 Q
 ;
LOGO(MSD) ;
 N CL S CL=$$COLOR
 I $G(@$$GLCOLOR@(CL,"LOGO"))'="" Q $$FUNC^%LCASE(^("LOGO"))
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3logo"_$G(MSD)_".bmp")>-1 Q "w3logo"_MSD_".bmp"
 Q ""
 ;
HDSEARCH ;
 N IMG S IMG=$$IMG("FGSC") I IMG'="" D  Q
 .W "<td colspan=""2"">"_IMG_"</td>",!
 ;
 W "<td>"
  W "<span style=""font-size:"_$$^W3FSZ(12)_";"
  W $S($$^%W1LNG="H":"font-weight:bold;",1:"")
  W " color:"_$$FGSC^W3CSS($$COLOR^W3CSS)_""">",!
   D
   .N SRC S SRC="SEARCHNAMEORCODE"
   .W $$^%W1DICT(SRC)
  W "</span>",!
 W "</td>",!
 Q
 ;
 ;
SEARCH ;
 I $$SFC^W3CSS D  Q
 .W "<td valign=""center"" style=""cursor:pointer"">"
 .W " <img src='w3sfsrc.jpg' onClick='ClickSrch()' />"
 .W "</td>"
 ;
 N IMG S IMG=$$IMG("SRCHBTN","ClickSrch()") I IMG'="" D  Q
 .W "<td valign=""center"" "_$$^%W1ALIGN_" >"
 . W IMG
 .W "</td>",!
 ;
 W "<td> "
  I $$DLVWEB^W4DLVCSR D
  .W "<br>",!
  ;
  D ROUNDBUT^%W1JS("rbtsubmhip",$$^%W1DICT("SEARCH"),"ClickSrch()",$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11+$$1700^W4WDSCR)_";color:black")
 W "</td>",!
 Q
 ;
IMG(SRC,PROC) ;
 Q $$^W3IMG(SRC,$G(PROC))
 ;
BACKGR(PRM)
 N BGPRM X "S BGPRM=$$"_PRM
 I $$CLGRAD(BGPRM) D GRAD(BGPRM) Q
 W "          ",BGPRM,";",!
 Q
 ;
HDAIQN ;
 W " .hdaiqnb { /* buisiness launch header W4 - main quantity */",!
 W FONTFM,";",!
 W "         font-size:"_$$^W3FSZ(12)_";",!
 W "         font-weight:600;",!
 W "         color:brown",!
 W "         }",!
 W !
 Q
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT"))!$$GETP^%W1PRM("PRINT") Q 1
 Q 0
 ;
CALLCENTER(STAM) ;
 Q $$CALLCENTER^W4PRM
 ;
CCOLOR(STAM) ;
 Q "YELLOW"
 ;
BTNRND ; 
 N SZ S SZ=40 I $$1024^W4WDSCR S SZ=40
 W ".btnrnd {",!
 W "font-family:Tahoma,Arial;",!
 ;;W "height:"_$$^W4KF(SZ)_"px;",!
 W "font-size:"_$$^W3FSZ(16)_";",!
 W $$RAD^W3CSM(6),!
 W "}",!
 Q
 ;
TBLRND(TBLID,OKR) ;
 W "#"_TBLID_" { ",!
 W "  border-collapse: collapse; ",!
 W "  border-radius: "_OKR_"px; ",!
 W "  } ",!!
 ;
 W "#"_TBLID_" td { ",!
 W "  border: 1px dotted black; ",!
 W "} ",!!
 ;
 W "#"_TBLID_" th:first-child { ",!
 W "  border-top-right-radius: "_OKR_"px; ",!
 W "} ",!!
 ;
 W "#"_TBLID_" th:last-child { ",!
 W " border-top-left-radius: "_OKR_"px; ",!
 W !!
 Q
 ;
TABLEROUND(OKR) ;
 W "table { ",!
 W "  border-collapse: collapse; ",!
 W "  border-radius: "_OKR_"px; ",!
 W "  } ",!!
 ;
 W "table th:first-child { ",!
 W "  border-top-right-radius: "_OKR_"px; ",!
 W "} ",!!
 ;
 W "table th:last-child { ",!
 W " border-top-left-radius: "_OKR_"px; ",!
 W "}",!
 W !!
 Q
 ;
 ;
GLCOLOR() ; 
 Q $$GLCOLOR^W4GETCLR
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3CTY
W3CTY ; [ 23.12.25 05:23 ] [ 30.10.10 08:01 ] [ 22.09.10 13:51 ] 
 N (JB,%ARG)
 D GL D GETCITY
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3CTY","%ARG=[%ARG")
 ;
 W "<div align=""center"" >",!
 ;
 ;;W "W1JB="_$$^%W1JB_" %ARG(MSD)="_$G(%ARG("MSD")),!
 W "<table id=""TblCty"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
  W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
  W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
   W "<th width=""80%"">"_$$^%W1DICT("CITYNAME")_"</th>"
   W "<th >"_$$^%W1DICT("SIGN")_"</th>"
  W "</tr>",!
 ;
 N N,I,A
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N))
 .W "<tr id=""trcty"_N_""" >" S I=I+1
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM(A)_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""checkbox"" id=""chcty"_N_""" onClick=""OnClickTbl('"_N_"','TblCty','trcty','chcty')"" /></td>"
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GL ;
 S GL=$$^W4MAIN("TMPCTY")
 Q
 ;
GETCITY ;
 N I,N,COUNTRY,CTY
 D GL K @GL S I=0
 D TMPNO
 S COUNTRY=$$COUNTRY^W3R(%ARG("MSD")) Q:COUNTRY=""
 S N="" F  S N=$O(^[$$^W3MAIN]P1STREET(COUNTRY,N)) Q:N=""  D
 .S CTY=$$INVH^%L1FRM(N)
 .I $D(@$$^W4MAIN("TMPNO")@(N)) Q
 .Q:CTY["%"
 .S I=I+1
 .S @GL@(I)=CTY
 Q
 ;
TMPNO ;
 N N,NM,NMI K @$$^W4MAIN("TMPNO")
 S N="" F  S N=$O(@$$^W4MAIN("TMPIR")@(N)) Q:N=""  D
 .S NM=$P(^(N),"\") Q:NM=""
 .S NMI=$$INVH^%L1FRM(NM)
 .S @$$^W4MAIN("TMPNO")@(NMI)=""
 Q
 
 
 
 

W3CTYIDK
W3CTYIDK ; [ 23.12.25 06:48 ] [ 22.12.25 18:51 ] [ 25.10.20 14:24 ] 
 N (JB,%ARG)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3CTYIDK","%ARG=[%ARG")
 D GL
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 S SRCH=$$INVH^%L1FRM($G(%ARG("SRCH")))
 ;
 N ABC S ABC=$G(%ARG("ABC"))
 I ABC="" D KILL^%W1PRM("W3CTYABC")
 I ABC?1N D SORT(ABC) D PUT^%W1PRM("W3CTYABC",ABC)
 S ABC=$$ABC
 ;
 D ^W3CTYX
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("CITIESTABLE")_"</span>",!
 ;
 W "<table width=""100%"" border=""0"" >",!
  W "<tr>"
   W "<td width=""30%"" >"
    W "<input type=""text"" size=""10"" id=""SRCH"" value="""_$$H2U^%L1FRM(SRCH)_""" />"
    W $$NBSP^%L1FRM(2)
    W "<input type=""button"" value="""_$$^%W1DICT("SEARCH")_""" onClick=""Search()""/>"
   W "</td>"
   W "<td>&nbsp;</td>" 
   W "<td>"
    W $$^%W1DICT("ABCSORT")_$$NBSP^%L1FRM(2)
    W "<input type=""checkbox"" id=""abc"" "_$S(ABC:"checked=""checked""",1:"")_" onclick=""Sort()"" />"
   W "</td>" 
  W "</tr>",!
 W "</table>",!
 ;
 S NPG=1 D KOT
 S RSIZE=30
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 . S I=I+1
 . I $$PRINT,I>RSIZE D
 . .W "</table>",!
 . .D PGBREAK S NPG=NPG+1
 . .D KOT S I=1
 .
 . N N1 S N1=$$IND(N)
 . W "<tr id=""trir"_N1_""""
 . D
 . .I $L(SRCH)," "_$$SHEM(A)_" "[(" "_SRCH_" ") W " style=""background-color:yellow"" " Q
 . .I $D(@GL@(N,"CUR")) W " style=""background-color:#eaeaea"""
 . W " >"
 .
 .  W "<td id=""cd"_N1_""">&nbsp;"_N1_"&nbsp;</td>"
 .
 .  W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM(A))_"&nbsp;</td>"
 .
 .  W "<td align=""center""><input type=""text"" size=""4"" value="""_$$DMSH(A)_""" onClick=""this.select()"" onKeyUp=""OnKeyUp('"_N1_"',this,2)"" /></td>"
 .
 .  W "<td align=""center""><input type=""text"" size=""2"" value="""_$$TIME(A)_""" onClick=""this.select()"" onKeyUp=""OnKeyUp('"_N1_"',this,3)"" /> </td>"
 .
 .  W "<td align=""center""><input type=""text"" size=""6"" value="""_$$BITDMSH(A)_""" onClick=""this.select()"" onKeyUp=""OnKeyUp('"_N1_"',this,4)"" /> </td>"
 .
 .  W "<td align=""center""><input type=""text"" size=""6"" value="""_$$MHMIN(A)_""" onClick=""this.select()"" onKeyUp=""OnKeyUp('"_N1_"',this,5)"" /> </td>"
 .
 .  I $$DLVWEB^W4DLVCSR!$$POLYGON^W4PRM,$$MSDR^W4PRM D
 .  .N MSDR S MSDR=$$MSDR^W4PRM
 .  .I '$$MM^W4PRM D  
 .  .. W "<td align=""center"">"
 .  ..  W "<select id=""rest"_N1_""" onChange=""OnChangeRest('"_N1_"',this,6)"" >",!
 .  ..   W "<option value=""0"">"_$$^%W1DICT("CHOICEREST")_"</option>",!
 .  ..   N NN S NN="" F  S NN=$O(^[$$^W3MAIN]W3MSDR(MSDR,NN)) Q:NN=""  D
 .  ..   .I NN=MSDR Q
 .  ..   .W "<option value="""_NN_""" "
 .  . .  .I $$REST(A)=NN W " selected=""selected"" "
 .  ..   .W ">"_NN_" "_$$NAME^W3MSD(NN)_"</option>",!
 .  ..  W "</select>",!
 .  .. W "</td>"
 .  .
 .  . W "<td align=""center"">"
 .  .  W "<select id=""map"_N_""" onChange=""OnChangeMap('"_N_"',this,7)"" >",!
 .  .   W "<option value=""0"">"_$$^%W1DICT("CHOICEMAP")_"</option>",!
 .  .   N NN S NN="" F  S NN=$O(@$$^W4GL("W4MAPPRM")@(NN)) Q:NN=""  D
 .  .   .W "<option value="""_NN_""" "
 .  .   .I $$MAP(A)=NN W " selected=""selected"" "
 .  .   .W ">"_$$H2U^%L1FRM($G(^(NN)))_"</option>",!
 .  .  W "</select>",!
 .  . W "</td>"
 .
 .I '$$PRINT D
 .  .I '$$ABC D
 .  ..W "<td align=""center"">"
 .  .. W "<img src=""w3vverx.jpg"" onClick=""Vverx('"_N1_"')"""
 .  .. W "<img src=""w3vniz.jpg"" onClick=""Vniz('"_N1_"')"""
 .  ..W "</td>"
 ..
 .  .W "<td align=""center""><input type=""checkbox"" id=""chir"_N1_""" onClick=""OnClickTbl('"_N1_"','TblIr','trir','chir')"" /></td>"
 . W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GL S GL=$$^W4MAIN("TMPIR")
 Q
 ;
SHEM(A) Q $S($P(A,"\")="":"&nbsp;",1:$P(A,"\"))
DMSH(A) Q $S($P(A,"\",2)="":"&nbsp;",1:$P(A,"\",2))
TIME(A) Q $S($P(A,"\",3)="":"&nbsp;",1:$P(A,"\",3))
BITDMSH(A) Q $S($P(A,"\",4)="":"&nbsp;",1:$P(A,"\",4))
REST(A) Q $P(A,"\",6)
MAP(A) Q $P(A,"\",7)
MHMIN(A) Q $P(A,"\",5)
 ;
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 K @$$^W4GL("P1IR")
 N N S N="" F  S N=$O(@GL@(N))  Q:N=""  D
 .N A S A=$G(^(N))
 .N I S I=$$IND(N)
 .S @$$^W4GL("P1IR")@(I)=$$SPA^%L1FRM($P(A,"\"))
 .N A67 S A67=$P(A,"\",6,7) S:A67'["\" A67=A67_"\"
 .S @$$^W4GL("P1IR")@(I,1)=$P(A,"\",2,4)_"\"_A67_"\"_$P(A,"\",5)
 Q
 ;
 ;
MVCT2IR(PRM) ;
 D GL N LAST,A,I,K,N
 I $$ABC D SORT(0)
 I $E(PRM,$L(PRM))=";" S PRM=$E(PRM,1,$L(PRM)-1)
 F I=1:1:$L(PRM,";") D
 .I '$P(PRM,";",I) Q
 .S LAST=$O(@GL@(99999),-1)+1
 .S @GL@(LAST)=$G(@$$^W4MAIN("TMPCTY")@($P(PRM,";",I)))
 I $$ABC D SORT(1)
 Q 1
 ;
 ;
MVIR2CT(PRM) ;
 D GL
 I $E(PRM,$L(PRM))=";" S PRM=$E(PRM,1,$L(PRM)-1)
 I $$ABC D SORT(0)
 N I,CD F I=$L(PRM,";"):-1:1 D
 .D DEL^%L1GSEQ(GL,$P(PRM,";",I))
 ;
 I $$ABC D SORT(1)
 Q 1
 ;
 ;
IR2TMP ;
 D GL K @GL
 N I S I=0
 S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 .N A,B S A=$G(^(N)),B=$G(^(N,1))
 .S I=I+1
 .N B13 S B13=$P(B,"\",1,3) I B13'["\" S B13=B13_"\\"
 .N B45 S B45=$P(B,"\",4,5) I B45'["\" S B45=B45_"\"
 .S @GL@(I)=A_"\"_B13_"\"_$P(B,"\",6)_"\"_B45
 Q
 ;
 ;
SWAP(NST,DRC) ;
 D GL
 D CLEAR
 N A,A0,NST0
 S A=$G(@GL@(NST))
 S NST0=$O(@GL@(NST),DRC) I NST0="" Q
 S A0=$G(@GL@(NST0))
 S @GL@(NST)=A0
 S @GL@(NST0)=A
 S @GL@(NST0,"CUR")=1
 Q
 ;
CLEAR ;
 D GL N N S N="" F  S N=$O(@GL@(N)) Q:N=""  K ^(N,"CUR")
 Q
 ;
ONKEYUP(PRM) ;
 N NOM,VL
 S SH=$$CLEAR^%L1FRM($$SPA^%L1FRM($P(PRM,";")))
 S NOM=$$CLEAR^%L1FRM($$SPA^%L1FRM($P(PRM,";",2)))
 S VL=$$CLEAR^%L1FRM($$SPA^%L1FRM($P(PRM,";",3)))
 D GL
 I '$$ABC S $P(@GL@(SH),"\",NOM)=$TR(VL,"?","")
 I $$ABC D
 .N N,SH1 S N="" F  S N=$O(@GL@(N)) Q:N=""  I $$IND(N)=SH S SH1=N Q
 .S $P(@GL@(SH1),"\",NOM)=$TR(VL,"?","")
 Q 1
 ;
 ;
MSDTO(IRI) ;
 S IRI=$$CNWEB^%L1FRM(IRI)
 S IR=$$INVH^%L1FRM(IRI)
 S IR=$$CITY^W3SP(IR)
 ;
 N N,A,A1,MSDTO S N="",MSDTO=""
 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:$L(MSDTO)
 .S A=$G(^(N))
 .S A1=$G(^(N,1))
 .I A=IR D
 ..I $P(A1,"\",5) S MSDTO="M"_$P(A1,"\",5) Q 
 ..S MSDTO=$P(A1,"\",4)
 ;
 Q MSDTO
 ;
 ;
PRINT(STAM) ; 
 Q $G(%ARG("PRINT")) 
 ;
 ;
KOT ; 
 I $$PRINT W "<P>"_$$^%W1DICT("PAGE")_" "_NPG_"</P>",!
 W "<table id=""TblIr"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"">",!
 W "<thead class=""hdfix"" >",!
 ;
 W "<tr style=""background-color:"_$$FC^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th width=""5%"">"_$$^%W1DICT("CITYCODE")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("CITYNAME")_"</th>"
  W "<th width=""8%"">"_$$^%W1DICT("DLVPAY")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("DLVTIME")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("DELDLVPAY")_"</th>"
  W "<th width=""13%"">"_$$^%W1DICT("MHMIN")_"</th>"
  ;
  I $$DLVWEB^W4DLVCSR!$$POLYGON^W4PRM,$$MSDR^W4PRM D
  .I $$MSDR^W4PRM,'$$MM^W4PRM W "<th width=""20%"">"_$$^%W1DICT("RESTAURANT")_"</th>"
  .W "<th width=""10%"">"_$$^%W1DICT("MAP")_"</th>"
  ;
  I '$$PRINT D 
  .I '$$ABC W "<th width=""10%"">"_$$^%W1DICT("MOVE")_"</th>"
  .W "<th width=""10%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 W "</thead>",!
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
EXCEL ;
 N FL,FLCSV
 S FL="W3CTY"_$$^W4MYDVN
 S FLCSV=$$DIRWEB^%W1PCEX_FL_".csv"
 W "<a href="""_FLCSV_"""><img src=""w3excel.png"" ></a>",!
 Q
 ;
IND(N) ;
 I $$ABC Q +$E(N,11,14)
 Q +N
 ;
ABC() ;
 Q $$GETP^%W1PRM("W3CTYABC")
 ;
 ;
SORT(ABC) ; 
 N IND,N,A,B,I 
 D GL
 N TMP1 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 ;
 I ABC=0 D  Q
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S IND=+$E(N,11,14)
 ..N IR S IR=$P(A,"\") 
 ..S @TMP1@(IND)=A
 .K @GL M @GL=@TMP1 K @TMP1
 ;
 I ABC=1 D
 .S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..N IR S IR=$P(A,"\") 
 ..S I=I+1
 ..S IND=$$INDABC(IR,I)
 ..S @TMP1@(IND)=A
 .K @GL
 .M @GL=@TMP1 K @TMP1
 Q 
 ;
 ;
INDABC(IR,I) ; 
 N IND
 S IND=$$ENG^%L1FRM($$INVH^%L1FRM(IR),10)
 S IND=IND_$TR($J(I,4)," ",0)
 Q IND
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3CTYX
W3CTYX ; [ 08.07.26 13:21 ] [ 12.11.24 17:50 ] [ 10.10.19 09:57 ] 
 N (JB,%ARG,%REM,%REPN,FMT,TOT,%W1LNG,MSD)
 S:'$D(FMT) FMT=0
 D ^%L1TS
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_"W3CTY"_$$^W4MYDVN
 S FLCSV=FL_".csv"
 N A,B,I,J,RZD
 S RZD=","
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 ;;W "FLCSV="_FLCSV,!
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 U FLCSV
  S LNG=$$^%W1LNG
  S ST=$$RKV($$TV^%W1DICT(LNG,"CITYCODE"))
  S ST=ST_$$RKV($$TV^%W1DICT(LNG,"CITYNAME"))
  S ST=ST_$$RKV($$TV^%W1DICT(LNG,"DLVPAY"))
  S ST=ST_$$RKV($$TV^%W1DICT(LNG,"DLVTIME"))
  S ST=ST_$$RKV($$TV^%W1DICT(LNG,"DELDLVPAY"))
  S ST=ST_$$RKV($$TV^%W1DICT(LNG,"MHMIN"))
  W ST,!
 ;
 D GL^W3CTYIDK
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D  W ST,!
 .  S A=$G(^(N))
 .  S ST=$$RKV(N)
 .  S ST=ST_$$RKV($$SHEM(A))
 .  S ST=ST_$$RKV($$DMSH(A))
 .  S ST=ST_$$RKV($$TIME(A))
 .  S ST=ST_$$RKV($$BITDMSH(A))
 .  S ST=ST_$$RKV($$MHMIN(A))
 ;
 C FLCSV
 ;
 Q
 ;
SHEM(A)
 N OU S OU=$$SHEM^W3CTYIDK(A) 
 I OU="&nbsp;" S OU=""
 Q OU
DMSH(A)
 N OU S OU=$$DMSH^W3CTYIDK(A) 
 I OU="&nbsp;" S OU=""
 Q OU
TIME(A)
 N OU S OU=$$TIME^W3CTYIDK(A) 
 I OU="&nbsp;" S OU=""
 Q OU
BITDMSH(A)
 N OU S OU=$$BITDMSH^W3CTYIDK(A) 
 I OU="&nbsp;" S OU=""
 Q OU
MHMIN(A)
 N OU S OU=$$MHMIN^W3CTYIDK(A) 
 I OU="&nbsp;" S OU=""
 Q OU
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
RKV(VL)
 S VL=$$SPA^%L1FRM(VL)
 I $$ISNUM^%L1FRM(VL) G RKVE
 I VL?2N1"."2N1"."2N!(VL?2N1"."2N1"."4N) S VL=$TR(VL,".","/") G RKVE
 I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N G RKVE
 ;;S VL=$TR($$INVH^%L1FRM(VL),TS0,TS1)
 S VL=$TR(VL,","," ")
 S VL=$$^%W1D2U(VL)
RKVE ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_","
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
 
 
 
 
 
 
 
 
 
 
 

W3CUST
W3CUST ; [ 25.09.08 12:37 ] [ 24.09.08 10:15 ] [ 23.09.08 17:15 ]
 N (JB,%ARG)
 D PUT^%W3DEB("W3CUST","%ARG=[%ARG")
 S LKH=$G(%ARG("LKH"))
 S MSD=$$GET^%W1PRM("MSD")
 I $G(LKH)="" S LKH=$$GET^%W1PRM("LKH")
 S GL="^[$$^W3MAIN]TMPLK(JB)"
 I $G(LKH)="" Q
 ;
 I $L($G(LKH))<2,$G(%ARG("MSDR")) D MSDRSET^W3ORDLKH("LKHN^W3CUST") G VIEW
 ;
 I $L($G(LKH))<2,$G(MSD) D
 .K @GL
 .N N S N="" F  S N=$O(^[$$^W3MAIN]W3LINKR(MSD,N)) Q:N=""  D LKHN(N)
 ;
VIEW ;
 W "<table id=""TblLkh"" width=""100%"" >",!
 S I=0
 N N S N="" F  S N=$O(@GL@(N))  Q:N=""  D
 .Q:'$$SRCH(LKH,N,GL)
 .S I=I+1
 .W "  <tr><td>"_N_"</td><td id=""tdid"_N_""" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" ><a href=""#"" onClick=""ClickCust('"_N_"')"" >"_$$H2U^%L1FRM(@GL@(N))_"</a></td></tr>",!
 W "</table>",!
 Q
SRCH(SRCH,LKH,GL) ;
 I '$L($G(SRCH)) Q 1
 I $G(LKH)="" Q 1
 N LKHN1 S LKHN1=$G(@GL@(LKH))
 N SRCOK S SRCOK=0
 I SRCH?1N.N,LKHN1=SRCH S SRCOK=1 G ES
 I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 N NM
 I $$^%W1DIR="RTL" S NM=$$INVH^%L1FRM(LKHN1)
 I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE(LKHN1)
 D PUT^%W3DEB("W3CUST-"_LKH,"NM=NM & SRCH=SRCH")
 I $E(NM,1,$L(SRCH))=SRCH S SRCOK=1 G ES
 I (" "_NM_" ")[(" "_SRCH_" ") S SRCOK=1 G ES
 N J,OK,MF S OK=1
 F J=1:1:$L(SRCH," ") D  Q:'OK
 .N FND,FND1 S FND=$F(" "_NM," "_$P(SRCH," ",J)) I FND<1 S OK=0 Q
 .S FND1=FND-$L($P(SRCH," ",J))
 .I $D(MF(FND1)) S FND=$F(" "_NM," "_$P(SRCH," ",J),MF(FND1)) I FND<1 S OK=0 Q
 .S MF(FND1)=FND
 D PUT^%W3DEB("W3CUST","MF=[MF")
 S SRCOK=OK
ES D PUT^%W3DEB("W3CUST-"_LKH,"SRCOK=SRCOK")
 Q SRCOK
 ;
LKHN(N) ;
 S LKHN=$$CODE^W3HZMST(N,$$^W3ORD)
 S LKHN=$TR(LKHN,"!-","") Q:LKHN=""
 S LKHN1=$$NAME^W3HZMST(N,$$^W3ORD) Q:LKHN1=""
 S @GL@(LKHN)=LKHN1
 Q

W3DAY
W3DAY(DAT) ; [ 21.03.25 12:59 ] [ 25.04.09 06:53 ] [ 04.12.07 15:10 ] [
 I '$G(DAT) Q ""
 I $D(%W1DAT("NODAY")) Q ""
 N DAY S DAY=$$^%L1DC(DAT,8)
 I DAY<1!(DAY>7) Q " "
 Q $$^%W1DICT("DAY"_DAY)
 

W3DEL
W3DEL(PAR) ; [ 03.06.14 10:25 ] [ 08.05.09 18:22 ] [ 09.04.09 17:28 ]
  N N
  S N="" F  S N=$O(@$$^W4GL("P1SETA")@(N)) Q:N=""  D
  .K @$$^W4GL("P1SETA")@(N,PAR)
  K @$$^W4GL("P1SETAI")@(PAR)
  ;
  S N="" F  S N=$O(@$$^W4GL("P1SETP")@(N)) Q:N=""  D
  .K @$$^W4GL("P1SETP")@(N,PAR)
  K @$$^W4GL("P1SETPI")@(PAR)
  ;
  S N="" F  S N=$O(@$$^W4GL("P1EZI")@(N)) Q:N=""  K @$$^W4GL("P1EZI")@(N,PAR)
  ;
  K @$$^W4GL("P1EZ")@(PAR) ;;,@$$^W4GL("P1EZK")@(PAR)
  ;
  S N="" F  S N=$O(@$$^W4GL("P1EZR")@(N)) Q:N=""  K @$$^W4GL("P1EZR")@(N,PAR)
  ;
  K @$$^W4GL("P1EZRI")@(PAR)
  ;
  S N="" F  S N=$O(@$$^W4GL("P1SETM")@(N)) Q:N=""  K @$$^W4GL("P1SETM")@(N,PAR)
  S N="" F  S N=$O(@$$^W4GL("PARLKH")@(N)) Q:N=""  K @$$^W4GL("PARLKH")@(N,PAR)
  S N="" F  S N=$O(@$$^W4GL("PARSLK")@(N)) Q:N=""  K @$$^W4GL("PARSLK")@(N,PAR)
  S N="" F  S N=$O(@$$^W4GL("PARSHA")@(N)) Q:N=""  K @$$^W4GL("PARSHA")@(N,PAR)
  ;
  K @$$^W4GL("P1EZP")@(PAR)
  ;
  S N="" F  S N=$O(@$$^W4GL("P1SET")@(N)) Q:N=""  K @$$^W4GL("P1SET")@(N,PAR)
  ;
  K @$$^W4GL("P1EZA")@(PAR)
  K @$$^W4GL("P1EZT")@(PAR)
  K @$$^W4GL("P1EZI")@(PAR)
  K @$$^W4GL("P1EZR")@(PAR)
  K @$$^W4GL("P1EZH")@(PAR)
  ;
  K @$$^W4GL("L1TIP")@("MTK",PAR)
  ;
  S @$$^W4GL("PARPROT")@(+$H,$$IND($H))=PAR_"\-\"_$G(MNL)_"\"_$G(@$$^W4GL("PAR")@(PAR))
  S @$$^W4GL("PARPROT1")@(PAR,+$H_$TR($J($P($H,",",2),5)," ",0))=PAR_"\-\"_$G(MNL)_"\"_$G(@$$^W4GL("PAR")@(PAR))
  ;
  N N,N1,I S N="" F  S N=$O(@$$^W4GL("P1TFRA")@(N)) Q:N=""  D
  .S N1="" F  S N1=$O(@$$^W4GL("P1TFRA")@(N,N1)) Q:N1=""  D
  ..S N2="",I=0 F  S N2=$O(@$$^W4GL("P1TFRA")@(N,N1,N2)) Q:N2=""  D
  ...S I=I+1 I $P($G(^(N2)),"\")=PAR D
  ....D DEL^%L1GSEQ($$^W4GL("P1TFRA")_"(N,N1)",I)
  ;
  K @$$^W4GL("P1TFRI")@(PAR)
  ;
  N STRING,FILE S FILE=$$^W4GL("PAR"),RZD="**",STRING=PAR
  D KF^%L1SCSV K @$$^W4GL("PAR")@(PAR)
  ;
  Q
  ;
  ;
IND(H) ;
  N I,TM,HHH S HHH=+H
  S TM=$TR($J($P(H,",",2),5)," ",0)
  F I=1:1 S IND=TM_$TR($J(I,5)," ",0) Q:'$D(^PARPROT(HHH,IND))
  Q IND

W3DLVDET
W3DLVDET ; [ 10.09.18 19:13 ] [ 14.11.17 18:13 ] [ 30.04.14 14:44 ] 
 N MSD,FC,%W1LNG,RT,FGHD
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""height:100%"" >",!
 ;
 D OPTBHD
 S FGHD=$$BGHD^W3CSS($$COLOR^W3CSS) ;FGFLD
 W "<span style=""color:"_FGHD_";font-size:"_$$^W3FSZ(11)_";font-weight:bold"">",!
  W $$^%W1DICT("DELIVERIESTIME")_" : "
 W "</span>",!
 D SGTBHD
 ;
 S MSD=$$GET^%W1PRM("MSD")
 S %W1LNG=$$^%W1LNG
 S FC="black"
 S RT("WD")="50%"
 S RT("FSZ")=11
 D RUNTIME^W3MSD(MSD)
 ;
 ;W "<br >",!
 N MHMIN S MHMIN=$$MSLMHMIN^W4PRM
 I MHMIN D
 .D OPTBHD
 .W "<span style=""color:"_FGHD_";font-size:"_$$^W3FSZ(11)_";font-weight:bold"">",!
 . W $$^%W1DICT("MHMIN")_" : "
 .W "</span>",!
 .W "<span style=""color:red;font-size:"_$$^W3FSZ(11)_";font-weight:bold"">",!
 . W $J(MHMIN,2,2)
 .W "</span>",!
 .D SGTBHD
 .W "<br >",!
 W "<br >",!
 D IR2TMP
 D OPTBHD
 W "<span style=""color:"_FGHD_";font-size:"_$$^W3FSZ(11)_";font-weight:bold"">",!
  W $$^%W1DICT("DELIVERIESAREA")_" : "
 W "</span>",!
 D SGTBHD
 ;
 W "<table id=""TblIr"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black;font-size:"_$$^W3FSZ(11)_""">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th width=""20%"">"_$$^%W1DICT("CITYNAME")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("DISTRICTNAME")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("DLVPAY")_"</th>"
  W "<th width=""25%"">"_$$^%W1DICT("DLVTIME")_"</th>"
  W "<th width=""35%"">"_$$^%W1DICT("DELDLVPAY")_"</th>"
  W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .
 . W "<tr id=""trir"_N_""""
 . W " >" S I=I+1
 .
 .  W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM(A))_"&nbsp;</td>"
 .
 .  W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$AZOR(A))_"&nbsp;</td>"
 .
 .  W "<td align=""center"">"_$$DMSH(A)_"</td>"
 .
 .  W "<td align=""center"">"_$$TIME(A)_"</td>"
 .
 .  W "<td align=""center"">"_$$BITDMSH(A)_"</td>"
 . W "</tr>",!
 W "</table>",!
 W "</div>",!
 K @GL
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPIR($$^%W1JB)"
 Q
 ;
SHEM(A) Q $S($P(A,"\")="":"&nbsp;",1:$P(A,"\"))
AZOR(A) Q $S($P(A,"\",2)="":"",1:$P(A,"\",2))
DMSH(A) Q $S($P(A,"\",3)="":"&nbsp;",1:$P(A,"\",3))
TIME(A) Q $S($P(A,"\",4)="":"&nbsp;",1:$P(A,"\",4))
BITDMSH(A) Q $S($P(A,"\",5)="":"&nbsp;",1:$P(A,"\",5))
 ;
IR2TMP ;
 D GL K @GL
 N I S I=0
 N W3AZR,COUNTRY
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I MSD S COUNTRY=$$COUNTRY^W3R(MSD)
 I $G(COUNTRY)="" S COUNTRY="IS"
 S W3AZR=$$^W4GL("W3AZR")
 S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 .N A,B S A=$G(^(N)),B=$G(^(N,1)) Q:A=""
 .I '$D(@W3AZR@(COUNTRY,A)) D  Q
 ..S I=I+1
 ..S @GL@(I)=A_"\\"_B
 .N N1 S N1="" F  S N1=$O(@W3AZR@(COUNTRY,A,N1)) Q:N1=""  D
 ..S A1=$G(^(N1))
 ..S B=$G(^(N1,1)) I '$P(B,"\",4) Q  ; -- NOSHOW
 ..S I=I+1
 ..S @GL@(I)=A_"\"_A1_"\"_B
 Q
 ;
OPTBHD ;
 W "<table align=""center"" dir="""_$$^%W1DIR_"""><tr><td align=""center"">",!
 Q
SGTBHD ;
 W "</td></tr></table>",!
 Q
 
 

W3DOCMD
W3DOCMD ; [ 17.06.26 10:51 ] [ 17.02.26 16:46 ] [ 14.01.25 15:46 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S FDB=$G(%ARG("FDB"))
 ;;S ^AA("W3DOCMD","FDB")=FDB
 ;;S ^AA("W3DOCMD","MSDR")=$G(%ARG("MSDR"))
 ;;S ^AA("W3DOCMD","MSD")=$G(%ARG("MSD"))
 S MSDR=$G(%ARG("MSDR")) Q:MSDR=""
 S MSD=$G(%ARG("MSD")) Q:MSD=""
 ;
 S H=+$H
 S CMD=$G(^|$$^W3MAIN|W2CMDSET(H,MSDR,MSD)) I CMD="" D  Q
 .W "<DoCmd>"_MSD_"<>"_CMD_"</DoCmd>",!
 ;
 S ^|$$^W3MAIN|W2CMDSETA(H,MSDR,MSD,$P($H,",",2))=$G(^|$$^W3MAIN|W2CMDSET(H,MSDR,MSD))
 K ^|$$^W3MAIN|W2CMDSET(H,MSDR,MSD)
 S ST="<DoCmd>"_MSD_"<>"_CMD_"</DoCmd>"
 ;;S ^AA("W3DOCMD","CMD")=ST
 W ST,!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3DPAR
W3DPAR(MEDAT,ADDAT) ; [ 29.03.26 11:16 ] [ 02.02.25 12:24 ] [ 31.12.24 07:46 ] 
 N (%ARG,JB,%REM,MEDAT,ADDAT,%REPN)
 D ^W4IN
 I $G(%ARG("MSDR")) D CRARRMSD^W3ORDLS(%ARG("MSDR")); *** 29.03.26
 I $G(%ARG("MSDR"))=8005 K %ARG("MSD"); *** 29.03.26
Z ;
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 I $$^W4LKH D ^W3DPARC Q
 ;
 S REF="^[$$^W3MAIN]W3LINKD"
 S PRTN=$$^%W1JB
 ;;S VRM=$$^W4GL("VRM")_"(PRTN)"
 S VRM=$$^W4MAIN("VRM")
 S W3ORD=$$^W3ORD
 K @VRM
 K ^|$$^W3MAIN|VRMLKH(JB)
 K ^|$$^W3MAIN|VRMPAR(JB)
 K ^|$$^W3MAIN|VRMIR(JB)
 ;
 F DT=D1:1:D2  I $D(@REF@(DT)) D
 .S ORD="" F  S ORD=$O(@REF@(DT,ORD)) Q:ORD=""  D
 ..S REST=$G(^(ORD)) I '$$INCL(REST) Q
 ..I $$DELORD(ORD) Q
 ..S A=$G(@W3ORD@(ORD)) Q:A=""
 ..S IR=$$CITY^W3HZMST(ORD,W3ORD) I IR="" S IR=" - "
 ..S ^|$$^W3MAIN|VRMIR(JB,IR)=IR
 ..S LKH=$$CODE^W3HZMST(ORD,W3ORD) I LKH="" S LKH=" - "
 ..S ^|$$^W3MAIN|VRMLKH(JB,LKH)=$$NAME^W3HZMST(ORD,W3ORD)
 ..
 ..S IND="" F  S IND=$O(@W3ORD@(ORD,IND)) Q:IND=""  D
 ...S PAR=$$CDST^W3HZMST(ORD,IND,W3ORD) I PAR["-C" Q
 ...S PAR1=$$NMST^W3HZMST(ORD,IND,W3ORD)
 ...S CAM=$$QNST^W3HZMST(ORD,IND,W3ORD)
 ...I $TR(CAM," ","")?1"+"."+" S CAM=$L(CAM,"+")-1
 ...S MH=$J($$MHST^W3HZMST(ORD,IND,W3ORD),2,2)
 ...S SUM=$J(CAM*MH,2,2)
 ...I PAR D
 ....N VL S VL=$G(@VRM@(DT,REST,IR,LKH,ORD,PAR))
 ....S @VRM@(DT,REST,IR,LKH,ORD,PAR)=($P(VL,"*")+CAM)_"*"_($P(VL,"*",2)+SUM)
 ....S @VRM@(DT,REST,IR,LKH)=$$NAME^W3HZMST(ORD,W3ORD)
 ....S ^|$$^W3MAIN|VRMPAR(JB,PAR)=PAR1
 ....;
 ;
 K %L1PC
 S %REPN("PRTN")=PRTN
 ;
 I $G(%ARG("MSD")) D
 .S %REPN("MEREST")=%ARG("MSD")
 .S %REPN("ADREST")=%ARG("MSD")
 .S %REPN("MEREST","VIEW")=""
 .S %REPN("ADREST","VIEW")=""
 ;
 I '$G(%ARG("MSD")) D
 .S %REPN("MEREST")=0
 .S %REPN("ADREST")=999999
 .S %REPN("MEREST","VIEW")=""
 .S %REPN("ADREST","VIEW")=""
 ;
 S %REPN("METRH")=MEDAT,%REPN("ADTRH")=ADDAT
 S %REPN("METRH","VIEW")=""
 S %REPN("ADTRH","VIEW")=""
 ;
 S %REPN="W3DPAR"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w3dpar.jsp?JB="_JB_"&MSDR="_$G(%ARG("MSDR"))_"&MSD="_$G(%ARG("MSD")))
END Q
 ;
INCL(REST) ;
 I $G(REST)="" Q 0
 N MSD S MSD=$G(%ARG("MSD"))
 ;;I 'MSD S MSD=$$GET^%W1PRM("MSD")
 I MSD,REST=MSD Q 1
 ;;I MSD,REST'=MSD Q 0
 ;;I $G(%ARG("MSDR")),$G(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),REST)) Q 1
 I $G(%ARG("MSDR")),$D(ARRMSD(%ARG("MSDR"),REST)) Q 1
 Q 0
 ;
DAT ; 
 S TRH=$ZD(DT,"DD.MM.YY")
 Q
 ;
REST ;
 I REST<MEREST!(REST>ADREST) S OK=0 Q
 Q
 ;
IR ;
 I MEIR'?.P,MEIR'=0,MEIR'="ALL",IR'=MEIR S OK=0 Q
 Q
 ;
LKH ;
 I LKH<MELKH!(LKH>ADLKH) S OK=0 Q
 Q
LKH1 ;
 S LKH1=$G(^|$$^W3MAIN|VRMLKH(JB,LKH))
 Q
 ;
PAR ;
 I PAR<MEPAR!(PAR>ADPAR) S OK=0 Q
 S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 S x3=$$MH^W3P(PAR)
 Q
 ;
RESTNAME(STAM) ;
 Q $$^%W1PCNMR
 ;
DELORD(ORD) ;
 Q $$DELORD^W3ORDLS(ORD)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3DPARC
W3DPARC ; [ 25.12.11 08:29 ] [ 24.12.11 20:59 ] [ 23.11.11 19:00 ]
 N (%ARG,JB,%REM,%REPN,PRTN)
 D ^W4IN
 D ^%W1ARG
Z ;
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 S REF=$$^W4GL("W4DIRD")
 S PRTN=$$^%W1JB
 S VRM=$$^W4MAIN("VRM")
 S W4DOC=$$^W4GL("W4DOC")
 K @VRM
 ;
 F DT=D1:1:D2  I $D(@REF@(DT)) D
 .S DOC="" F  S DOC=$O(@REF@(DT,DOC)) Q:DOC=""  D
 ..S A=$G(@W4DOC@(DOC)) Q:A=""
 ..S AHMAM=$$AHMAM^W4DOC(DOC)
 ..S LKH=$$LKH^W4DOC(DOC) S:LKH="" LKH=0
 ..S IND="" F  S IND=$O(@W4DOC@(DOC,IND)) Q:IND=""  I IND?1N.N D
 ...S PAR=$$CD(DOC,IND)
 ...S CAM=$$QN(DOC,IND)
 ...S MH=$J($$MH(DOC,IND),2,2)
 ...S DISC=$J($$DISC(DOC,IND),2,2)
 ...S SUM=$J(CAM*MH*(100-DISC)*.01,2,2)
 ...S MAM=SUM*AHMAM*.01
 ...S SUMMAM=$J(SUM+MAM,2,2)
 ...I $L(PAR) D
 ....N VL S VL=$G(@VRM@(LKH,PAR))
 ....S @VRM@(LKH,PAR)=($P(VL,"*")+CAM)_"*"_($P(VL,"*",2)+SUM)_"*"_($P(VL,"*",3)+SUMMAM)
 ....;
 ;
 K %L1PC
 S %REPN("PRTN")=PRTN,%REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN="DPARC"
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
END Q
 ;
CD(DOC,SH) ;
 Q $$CODE^W4DOC(DOC,SH)
 ;
QN(DOC,SH) ;
 Q $$QN1^W4DOC(DOC,SH)
 ;
MH(DOC,SH) ;
 Q $$PRC^W4DOC(DOC,SH)
 ;
DISC(DOC,SH) ;
 Q $$DISC^W4DOC(DOC,SH)
 ;
PRT ;
 S PRT1=$$SHEM^W4P(PRT)
 S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 S x3=$P($G(@GLOB),"*",3)
 S x4=$$MH^W4P(PRT)
 Q
 ;
RESTNAME(STAM) ;
 Q $$^%W1PCNMR

W3ENCR
W3ENCR(PRM) ; [ 30.01.20 16:18 ] [ 19.01.20 10:12 ] [ 14.01.20 04:16 ] 
 N NMB,DAT,SHAA,DT,TM,JB,ORIG
 S JB=$P(PRM,";")
 S ORIG=$P(PRM,";",2)
 I $L(ORIG)=1 Q ORIG
 S NMB=$$NMB^W3HZMST(JB)
 S NMB=$TR(NMB,"!-","")
 S DAT=$$DAT^W3HZMST(JB)
 S SHAA=$$SHAA^W3HZMST(JB)
 S DT=$$^%L1DC(DAT,3)
 S TM=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 S ORIG=ORIG+(NMB*JB)
 S ORIG=ORIG+(DT*TM)
 S ORIG=ORIG+(17101957*JB)
 N J,O S O="" F J=1:1:$L(ORIG) S O=O_$C($A(ORIG,J)+18)
 Q O
 ;
DESCR(HZW,ORIG,GL)
 I $L($G(ORIG))<2 Q $G(ORIG)
 N OU S OU=""
 I ORIG[";" D  Q $E(OU,1,$L(OU)-1)
 .N J F J=1:1:$L(ORIG,";") S OU=OU_$$DESCR1(HZW,$P(ORIG,";",J),$G(GL))_";"
 I ORIG["^" D  Q $E(OU,1,$L(OU)-1)
 .N J F J=1:1:$L(ORIG,"^") S OU=OU_$$DESCR1(HZW,$P(ORIG,"^",J),$G(GL))_";"
 ;
 Q $$DESCR1(HZW,ORIG,$G(GL))
 ;
DESCR1(HZM,ORIG,GL)
 I $L($G(ORIG))<2 Q $G(ORIG)
 N NMB,DAT,SHAA,DT,TM
 I $G(GL)="" S GL="^W3ORD"
 I '$D(@GL@(HZM)),$D(@$$^W3TMPORD@(HZM)) S GL=$$^W3TMPORD_"("_HZM_")"
 S NMB=$$NMB^W3HZMST(HZM,GL)
 S NMB=$TR(NMB,"!-","")
 S DAT=$$DAT^W3HZMST(HZM,GL)
 S SHAA=$$SHAA^W3HZMST(HZM,GL)
 S DT=$$^%L1DC(DAT,3)
 S TM=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 I $L(ORIG)<2 Q ORIG
 I ORIG'["^" Q $$DESCRO(HZM,ORIG,NMB,DT,TM)
 N OUT S OUT=""
 N I F I=1:1:$L(ORIG,"^") D
 .S OUT=OUT_$$DESCRO(HZM,$P(ORIG,"^",I),NMB,DT,TM)_";"
 Q $E(OUT,1,$L(OUT)-1)
 ;
DESCRO(HZM,ORIG,NMB,DT,TM) ;
 N J,O S O="" F J=1:1:$L(ORIG) S O=O_$C($A(ORIG,J)-18)
 S O=O-(17101957*HZM)
 S O=O-(DT*TM)
 S O=O-(NMB*HZM)
 Q O
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ENCR0
W3ENCR(PRM) ; [ 25.11.12 19:46 ] [ 19.09.09 12:28 ] [ 16.04.08 18:27 ] [
 N NMB,DAT,SHAA,DT,TM,JB,ORIG
 S JB=$P(PRM,";")
 S ORIG=$P(PRM,";",2)
 S NMB=$$NMB^W3HZMST(JB)
 S NMB=$TR(NMB,"!-","")
 S DAT=$$DAT^W3HZMST(JB)
 S SHAA=$$SHAA^W3HZMST(JB)
 S DT=$$^%L1DC(DAT,3)
 S TM=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 S ORIG=ORIG+(NMB*JB)
 S ORIG=ORIG+(DT*TM)
 S ORIG=ORIG+(17101957*JB)
 N J,O S O="" F J=1:1:$L(ORIG) S O=O_$C($A(ORIG,J)+18)
 Q O
 ;
DESCR(HZM,ORIG)
 N NMB,DAT,SHAA,DT,TM
 S NMB=$$NMB^W3HZMST(HZM,$$^W3ORD)
 S NMB=$TR(NMB,"!-","")
 S DAT=$$DAT^W3HZMST(HZM,$$^W3ORD)
 S SHAA=$$SHAA^W3HZMST(HZM,$$^W3ORD)
 S DT=$$^%L1DC(DAT,3)
 S TM=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 N J,O S O="" F J=1:1:$L(ORIG) S O=O_$C($A(ORIG,J)-18)
 S O=O-(17101957*HZM)
 S O=O-(DT*TM)
 S O=O-(NMB*HZM)
 Q O

W3ENCR1
W3ENCR(PRM) ; [ 30.01.20 12:13 ] [ 19.01.20 10:12 ] [ 14.01.20 04:16 ] 
 N NMB,DAT,SHAA,DT,TM,JB,ORIG
 S JB=$P(PRM,";")
 S ORIG=$P(PRM,";",2)
 I $L(ORIG)=1 Q ORIG
 S NMB=$$NMB^W3HZMST(JB)
 S NMB=$TR(NMB,"!-","")
 S DAT=$$DAT^W3HZMST(JB)
 S SHAA=$$SHAA^W3HZMST(JB)
 S DT=$$^%L1DC(DAT,3)
 S TM=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 S ORIG=ORIG+(NMB*JB)
 S ORIG=ORIG+(DT*TM)
 S ORIG=ORIG+(17101957*JB)
 N J,O S O="" F J=1:1:$L(ORIG) S O=O_$C($A(ORIG,J)+18)
 Q O
 ;
DESCR(HZW,ORIG,GL)
 I $L($G(ORIG))<2 Q $G(ORIG)
 N OU S OU=""
 I ORIG["^" D  Q $E(OU,1,$L(OU)-1)
 .N J F J=1:1:$L(ORIG,"^") S OU=OU_$$DESCR1(HZW,$P(ORIG,"^",J),$G(GL))_"^"
 I ORIG[";" D  Q $E(OU,1,$L(OU)-1)
 .N J F J=1:1:$L(ORIG,";") S OU=OU_$$DESCR1(HZW,$P(ORIG,";",J),$G(GL))_";"
 ;
 Q $$DESCR1(HZW,ORIG,$G(GL))
 ;
DESCR1(HZW,ORIG,GL)
 I $L($G(ORIG))<2 Q $G(ORIG)
 N NMB,DAT,SHAA,DT,TM
 I $G(GL)="" S GL="^W3ORD"
 I '$D(@GL@(HZM)),$D(@$$^W3TMPORD@(HZM)) S GL=$$^W3TMPORD_"("_HZM_")"
 S NMB=$$NMB^W3HZMST(HZM,GL)
 S NMB=$TR(NMB,"!-","")
 S DAT=$$DAT^W3HZMST(HZM,GL)
 S SHAA=$$SHAA^W3HZMST(HZM,GL)
 S DT=$$^%L1DC(DAT,3)
 S TM=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 I $L(ORIG)<2 Q ORIG
 I ORIG'["^" Q $$DESCRO(HZM,ORIG,NMB,DT,TM)
 N OUT S OUT=""
 N I F I=1:1:$L(ORIG,"^") D
 .S OUT=OUT_$$DESCRO(HZM,$P(ORIG,"^",I),NMB,DT,TM)_";"
 Q $E(OUT,1,$L(OUT)-1)
 ;
DESCRO(HZM,ORIG,NMB,DT,TM) ;
 N J,O S O="" F J=1:1:$L(ORIG) S O=O_$C($A(ORIG,J)-18)
 S O=O-(17101957*HZM)
 S O=O-(DT*TM)
 S O=O-(NMB*HZM)
 Q O
 
 
 
 
 
 
 
 
 
 
 

W3ENTER
W3ENTER ; [ 10.08.26 15:04 ] [ 03.10.24 04:51 ] [ 02.01.22 09:38 ] 
 Q
NEXTPIC(CD) ;
 N NCD,PATH,PATHL,TYPE,PRE,NOPIC,PIC,PICNAME,FLPIC,FLPICL,I
 S NCD=CD
NP ;
 F I=1:1:$R(10)+10 S NCD=$O(@$$^W4GL("PAR")@(NCD))
 D PUT^%W3DEB("W3ENTER-PIC","CD=CD & NCD=NCD")
 ;
 S PIC=$$GETPIC(NCD)
 S FLPICL=$P(PIC,"~")
 I FLPICL=0 Q PIC
 S FLPIC=$P(PIC,"~",2)
 ;
 I FLPICL=1 G NP
 ;
 Q NCD_"~"_FLPIC
 ;
GETPIC(NCD,LOC) ;
 N MSD
 S MSD=$$GET^%W1PRM("MSD")
 I $G(W3GETPIC("MSD")) S MSD=+W3GETPIC("MSD")
 N PATH,PATH0,PATHL,TYPE,PICNAME,FLPIC,FLPICL,NOPIC,FLNOPICL,FLRLOGO,FLRLOGOW
 S PATH=$$WEB^W3MAIN(1)
 ;
 N LOGOR S LOGOR="w3pic"_MSD_".jpg"
 S FLRLOGOW=PATH_LOGOR
 S PATH=PATH_MSD_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S FLRLOGO=PATHL_LOGOR
 S PATHL=PATHL_MSD_"/itp/"
 ;
 N PICTYPE S PICTYPE=$G(@$$^W4PRM@("PICTYPE"))
 S TYPE=$S($L(PICTYPE):PICTYPE,1:"jpg")
 ;
 S:'$D(PRE) PRE="pic"
 ;
 S NOPIC=PRE_"logo."_TYPE
 N RSDPIC S RSDPIC=0
 ;
 I '$$EXIST^%L1ZOS(PATHL_NOPIC) S NOPIC="w3pic.jpg",RSDPIC=1
 ;
 I NCD="" Q "0~"_PATH_NOPIC
 ;
 S NCD=$TR(NCD,"*","")
 S PICNAME=PRE_NCD_"."_TYPE
 S FLPIC=PATH_PICNAME
 S FLPICL=PATHL_PICNAME
 S FLNOPICL=PATHL_NOPIC
 ;
 I RSDPIC S FLNOPICL=$$WEBL^W3MAIN_NOPIC,PATH=$$WEB^W3MAIN
 ;
 ;;I $$^%L1ZOS(10,FLPICL)<0 Q "1~"_PATH_NOPIC
 ;
 I '$$EXIST^%L1ZOS(FLPICL),'$$EXIST^%L1ZOS(FLNOPICL),'$$EXIST^%L1ZOS(FLRLOGO) Q "1"
 ;
 I '$$EXIST^%L1ZOS(FLPICL),'$$EXIST^%L1ZOS(FLNOPICL) Q "1~"_FLRLOGOW
 ;
 I '$$EXIST^%L1ZOS(FLPICL) Q "1~"_PATH_NOPIC
 ;
 D PUT^%W3DEB("W3ENTER-PIC","CD=CD & FLPICL=FLPICL & FLPIC=FLPIC & OLDFLPICL=OLDFLPICL")
 Q FLPICL_"~"_FLPIC
 ;
 ;
SELECT ;
 W "<table bgcolor=""white"" border=""1"" cellspacing=""0"" id=""clrtbl"" style=""visibility:hidden""> ",!
 F I="RW","VG","YB","BL" I I=$$COLOR^W3CSS D  Q
 .D CLRLINE(I)
 F I="RW","VG","YB","BL" D
 .I I=$$COLOR^W3CSS Q
 .D CLRLINE(I)
 W "</table>",!
 Q
CLRLINE(I) ;
 W "<tr><td style="""_$$BGBODY^W3CSS(I)
 W ";color:"_$$FC^W3CSS(I)_""""
 W " onMouseOver=""this.style.cursor='pointer'"""
 W " onClick=""ChangeColor("_JB_",'"_I_"')"""
 W " >"
 W $$^%W1DICT("CHOICECOLORS")_"</td></tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3EZ
W3TREE ; [ 16.06.08 17:31 ] [
 K ^[$$^W3MAIN]TMPEZ($$^%W1JB)
 N N S N="" F  S N=$O(@$$^W4GL("P1EZT")@(N)) Q:N=""  D
 .M ^[$$^W3MAIN]TMPEZ($$^%W1JB,N)=@$$^W4GL("P1EZT")@(N)
 .S $P(^[$$^W3MAIN]TMPEZ($$^%W1JB,N),"\",2)="T"
 S N="" F  S N=$O(@$$^W4GL("P1EZA")@(N)) Q:N=""  D
 .M ^[$$^W3MAIN]TMPEZ($$^%W1JB,N)=@$$^W4GL("P1EZA")@(N)
 .S $P(^[$$^W3MAIN]TMPEZ($$^%W1JB,N),"\",2)="A"
 Q

W3EZKI
W3EZKI(COD) ; [ 21.02.17 15:03 ] [ 09.04.09 17:25 ] [ 24.01.09 17:05 ] 
 Q $D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(COD)))>9
G(COD) ;
 Q $G(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(COD)))
 

W3FAX
W3FAX(HZM) ;                    [ 08.11.07 16:40 ] [ 21.10.07 11:26 ] [ 15.07.07 11:31 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,HZM,MSD,P1HZIMP) D ^%L1C
BG K ^VRM(HZM)
 Q:$P($G(^W3ORD(HZM)),"\",11)<0
 S MSD=$G(^W3ORD(HZM,"MSD")) Q:MSD=""
 ;
 F I=1:1 Q:'$D(^W3ORD(HZM,I))  D
 .M ^VRM(HZM,MSD,I)=^W3ORD(HZM,I)
 S ^VRM(HZM,MSD)=$G(^W3ORD(HZM))
 S N="" F  S N=$O(^TXTFAX(N)) Q:N=""  I $P($G(^(N)),"\",6)=HZM K ^(N)
 K ^TMPS111(HZM)
 S SM=74,PG=0
 I $$^%W1DIR="LTR" S SM=5
 S MSD="" F  S MSD=$O(^VRM(HZM,MSD)) Q:MSD=""  D
 .S SHET=0 Q:'$$FAX(MSD)
BEG .S A=^VRM(HZM,MSD),SHFX=$O(^TMPS111(HZM,99999),-1)+1
 .S (GLBV,GLBV1)="^VRM(HZM,"""_MSD_""")"
 .
 .D KOT
 .
 .S SMSD=0
 .S LINEPC="S TXT="""" D S1"
 .F I=1:1 Q:'$D(^W3ORD(HZM,I))  D
 ..N A S A=$G(^(I))
 ..S CMST=$$GETST("CMST",A),QN=$$GETST("QN",A)
 ..S MH=$$GETST("MH",A),NMST=$$GETST("NMST",A)
 ..S CD=$$GETST("CD",A)
 ..
 ..I $$^%W1DIR="RTL" D
 ...N SM S SM=$S($$GETST("LV",A)=0:78,1:70)
 ...D DLG^%L1FRM(CMST,18)
 ...S CMST1=%CHAST(1,1),CMST2=$G(%CHAST(1,2))
 ...D DLG^%L1FRM(NMST,18)
 ...S NMST1=%CHAST(1,1),NMST2=$G(%CHAST(1,2))
 ...S TXT=$J(CMST1,18)_"  "_$J(QN*MH,7,2)_"  "_$J(QN,5)_"  "_$J(MH,6,2)_"  "_$J(NMST1,18)_"  "_$J(CD,6)
 ...D S1
 ...S TXT=$J(CMST2,18)_"  "_$J("",23)_$J(NMST2,18)
 ...D S1
 ..
 ..I $$^%W1DIR="LTR" D
 ...N SM S SM=$S($$GETST("LV",A)=0:5,1:10)
 ...S TXT=$$ENG^%L1FRM(CD,6)_"  "_$$ENG^%L1FRM($$SPA^%L1FRM($E(NMST,1,18)),18)_"  "_$J(MH,6,2)_"  "_$J(QN,4)_"  "_$J(QN*MH,7,2)_"  "_$$ENG^%L1FRM($$SPA^%L1FRM($E(CMST,1,18)),18)
 ...D S1
 ...S TXT=$J("",8)_$$ENG^%L1FRM($$SPA^%L1FRM($E(NMST,19,36)),18)_$J("",25)_$$ENG^%L1FRM($$SPA^%L1FRM($E(CMST,19,38)),18)
 ...D S1
 .
 .D HEADN
 .
 .S NUM=$$^%L1DC($$GET("DAT"),3)_$TR($J($P($$GET("SHAA"),":")*3600+($P($$GET("SHAA"),":",2)*60),5)," ",0)
 .F I=1:1 Q:'$D(^TXTFAX(NUM_I))
 .S NUM=NUM_I
 .F I=1:1 Q:'$D(^TMPS111(HZM,I))  S ^TMPS111(HZM,I)=$$CLST^%L1FRM(^TMPS111(HZM,I),"","")
 .S MAC1="^TMPS111("_HZM_")",MAC2="^TXTFAX("_NUM_")" D ^%S1GC1
 .S ^TXTFAX(NUM)=$$FAX(MSD)_"\"_$$TEL(MSD)_"\"_$$NAME(MSD)_"\"_$$GET("NMB")_"\"_$$GET("NAME")_"\"_HZM_"\"_SMSD_"\"_$$GET("TSHL")_"\"_$$GET("DMSH")
 .K ^TMPS111(HZM)
 .D SHIDUR(NUM,MSD)
 ;
 K ^VRM(HZM)
 Q
 ;
KOT ;
 I $$^%W1LNG="H" D
 .S ^TMPS111(HZM,SHFX)=$J($$GET("NAME")_" :  gewl",SM)
 .S SHFX=SHFX+1
 .S ^TMPS111(HZM,SHFX)=$J($$GET("CITY")_","_$$GET("STREET")_" :  aegx",SM)
 .S SHFX=SHFX+1
 .S ^TMPS111(HZM,SHFX)=$J($$GET("ENTRANCE")_" : dqipk    "_$$GET("FLOOR")_" : dnew    "_$$GET("FLAT")_" : dxic    "_$$GET("HOME")_" :   'qn",SM)
 .S SHFX=SHFX+1
 .S ^TMPS111(HZM,SHFX)=$J($$GET("PELE")_" : ciip   "_$$GET("NMB")_" :    lh",SM)
 .S SHFX=SHFX+1
 .S ^TMPS111(HZM,SHFX)=""
 .S SHFX=SHFX+1
 .S ^TMPS111(HZM,SHFX)=$J(HZM_" : dpnfd 'qn",SM)
 .S SHFX=SHFX+1
 .S ^TMPS111(HZM,SHFX)=$J($$GET("SHAA")_" : dry  "_$$GET("DAT")_" : jix`zl",SM)
 .S SHFX=SHFX+1
 .S ^TMPS111(HZM,SHFX)=""
 .I $L($G(CMNT)) S ^TMPS111(HZM,$O(^TMPS111(HZM,9999),-1)+1)=$J($$GET("COMMENT")_" : dxrd ",SM)
 .S ^TMPS111(HZM,$O(^TMPS111(HZM,9999),-1)+1)=""
 .S ^TMPS111(HZM,$O(^TMPS111(HZM,9999),-1)+1)=$J("",8)_$TR($J("",70)," ","-")
 .S ^TMPS111(HZM,$O(^TMPS111(HZM,9999),-1)+1)=$J("",8)_":       dxrd       :  mekq  : zenk :  xign  :      hixt my     :  cew :"
 .S ^TMPS111(HZM,$O(^TMPS111(HZM,9999),-1)+1)=$J("",8)_$TR($J("",70)," ","-")
 ;
 I $$^%W1LNG'="H" D
 .N SM,TXT S SM=3
 .S TXT=$$^%W1DICT("CUST")_" : "_$$GET("NAME") D S1
 .S TXT=$$^%W1DICT("ADDR")_" : "_$$GET("STREET")_","_$$GET("CITY") D S1
 .S TXT=$$^%W1DICT("ENTRANCE")_" : "_$$GET("ENTRANCE")_"   "
 .S TXT=TXT_$$^%W1DICT("FLOOR")_" : "_$$GET("FLOOR")_"   "
 .S TXT=TXT_$$GET("FLAT")_" : "_$$GET("FLAT")_"   "
 .S TXT=TXT_$$^%W1DICT("HOME")_" : "_$$GET("HOME") D S1
 .S TXT=$$^%W1DICT("TEL")_" : "_$$GET("NMB")_"   "
 .S TXT=TXT_$$^%W1DICT("PELE")_" : "_$$GET("PELE") D S1
 .S TXT="" D S1
 .S TXT=$$^%W1DICT("ORDER")_" : "_HZM D S1
 .S TXT=$$^%W1DICT("DAT")_" : "_$$GET("DAT")_"   "
 .S TXT=TXT_$$^%W1DICT("SHAA")_" : "_$$GET("SHAA") D S1
 .S TXT=$$^%W1DICT("COMMENT")_" : "_$$GET("COMMENT") D S1
 .S TXT="" D S1
 .S TXT=$TR($J("",75)," ","-") D S1
 .S TXT=":"_$$CENTR^%L1FRM($$^%W1DICT("CODE"),8)_":"
 .S TXT=TXT_$$CENTR^%L1FRM($$^%W1DICT("ITEMNAME"),18)_": "
 .S TXT=TXT_$$CENTR^%L1FRM($$^%W1DICT("PRICE"),8)_":"
 .S TXT=TXT_$$CENTR^%L1FRM($$^%W1DICT("QUANT"),6)_":"
 .S TXT=TXT_$$CENTR^%L1FRM($$^%W1DICT("TOTAL"),9)_":"
 .S TXT=TXT_$J($$^%W1DICT("COMMENT"),18)_": "
 .D S1
 .S TXT=$TR($J("",75)," ","-") D S1
 Q
 ;
HEADN ;
 S TXT="" D S1
 I $$^%W1LNG="H" D
 .N SM S SM=48
 .S TXT=$J("",28)_" : dpnfdl k""dq" D S1
 .S TXT=$J("",28)_" --------------" D S1
 .S TXT="" D S1
 .I $$GET("HNH") S TXT=$J("",21)_$J($$GET("HNH"),7,2)_" : dgpd     " D S1
 .I $$GET("DMSH") S TXT=$J("",21)_$J($$GET("DMSH"),7,2)_" : gelyn inc" D S1
 .S TXT=$J("",21)_$J($$GET("TSHL"),7,2)_" : melyzl   " D S1
 .S TXT="" D S1
 ;
 I $$^%W1LNG'="H" D
 .N ORDTOT S ORDTOT=$$^%W1DICT("ORDERTOT")
 .S TXT=$J("",28)_ORDTOT
 .S TXT=$J("",28)_$TR($J("",$L(ORDTOT))," ","-") D S1
 .I $$GET("HNH") S TXT=$J("",18)_$$ENG^%L1FRM($$^%W1DICT("DISCOUNT",$$AHUZ^W3HZTFR),12)_" : "_$J($$GET("HNH"),7,2) D S1
 .I $$GET("DMSH") S TXT=$J("",18)_$$ENG^%L1FRM($$^%W1DICT("DLVPAY"),12)_" : "_$J($$GET("DMSH"),7,2) D S1
 .S TXT=$J("",18)_$$ENG^%L1FRM($$^%W1DICT("TOTAL"),12)_" : "_$J($$GET("TSHL"),7,2) D S1
 .S TXT="" D S1
 Q
TEL(MSD) ;
 N TEL S TEL=$$TEL^W3MSD(MSD,0)
 Q $S(TEL["&nbsp":"",1:TEL)
FAX(MSD) ;
 N FAX
 S FAX=$$FAX^W3MSD(MSD,0)
 Q $S(FAX["&nbsp":"",1:FAX)
NAME(MSD) ;
 S NAME=$$NAME^W3MSD(MSD,0)
 Q $S(NAME["&nbsp":"",1:NAME)
 ;
SHIDUR(NUM,MSD) ;
 S HZM=$P($G(^TXTFAX(NUM)),"\",6) Q:HZM=""
 N I
 I '$D(TS0) D ^%L1TS
 I $G(^P1PRM("FAX"))!($G(P1HZIMP)="WEB") D
 .N FAXFL S FAXFL=MSD_"_"_NUM_"_"_HZM_".TXT"
 .O FAXFL:(REWIND:NEWVERSION) U FAXFL
 .F I=1:1 Q:'$D(^TXTFAX(NUM,I))  W ?10,$TR(^(I),TS0,TSS),!
 .C FAXFL
 .;;ZSY "prepfax.sh "_$$FAX(MSD)_" "_FAXFL
 .N CMDFAX S CMDFAX="mail -n -s ""Order "_HZM_""" "_$$FAX(MSD)_"@fax.tc < "_FAXFL
 .N JB S JB=HZM
 .D PUT^%W3DEB("W3FAX","CMDFAX=CMDFAX")
 .ZSY CMDFAX
 .M ^TXTFAXA(NUM)=^TXTFAX(NUM) K ^TXTFAX(NUM)
 Q
GET(RKV) ;
 Q @("$$"_RKV_"^W3HZMST("_HZM_",""^W3ORD"")")
GETST(RKV,ST) ;
 I $G(RKV)="" Q ""
 I $G(ST)="" Q ""
 I RKV="LV" Q $P(ST,"~")
 I RKV="CD" Q $P(ST,"~",2)
 I RKV="NMST" Q $P(ST,"~",3)
 I RKV="MH" Q $P(ST,"~",4)
 I RKV="QN" Q $P(ST,"~",5)
 I RKV="CMST" Q $P(ST,"~",7)
 Q ""
S1 ;
 I $$^%W1DIR="RTL" D  Q
 .S ^TMPS111(HZM,$O(^TMPS111(HZM,999999),-1)+1)=$J(TXT,$G(SM))
 .K TXT
 ;
 S ^TMPS111(HZM,$O(^TMPS111(HZM,999999),-1)+1)=$J("",SM)_TXT
 Q

W3FAXHTM
W3FAXHTM(HZ,MSD,TSTORD) ; [ 20.03.25 13:55 ] [ 29.10.18 09:36 ] [ 09.11.15 15:16 ] 
 ;------------------------------------------
 ; TSTORD - FROM ^W3MSGTRM - NOT DEFINED
 ; TSTORD=2  - HAZAAT MAHIR
 ;------------------------------------------
 N (JB,%ARG,%REM,HZ,MSD,TSTORD)
 S W3ORDLS=HZ
 ;
 I $$FAX2MAIL^W3PRM S A=$$SNDMAIL(HZ,MSD) I A=1 Q
 ;
 I $$FAX(MSD)="" G END  ; -- LO MESHADER IM FAX MATHIL MI-! & 'FROM W3TSTORD
 ;
 S @$$^W3ORD(HZ)@(HZ,"DBF")="3\"_$H_"\"_MSD_"\"_$$FAX(MSD)_"\"_$G(TSTORD)
 ;
 I '$D(JB) S JB=$$^%W1SsID("W3ORD")
 S FLFAX=$$WEBL^W3MAIN_MSD_"/fax/FAX"_HZ_"."_MSD
 ;
 N $ZT ;;S $ZT="G END"
 ;
 C FLFAX O FLFAX:(NEWVERSION:WRITE)
 U FLFAX W "<html><body>",!
 N W3FAXHTM S W3FAXHTM=1
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3hdfax"_MSD_".gif")>-1 D
 .W "<div align=""center""><img src="""_$$WEB^W3MAIN_"w3hdfax"_MSD_".gif""><br><br></div>",!
 ;
 S VW=1
 I $P($G(TSTORD),"-",2)=0 S VW=1.5,COMPRVIEW=1
 D ^W3ORDVW(VW)
 W "</body></html>",!
 C FLFAX
 ;
 S FX2="cat "_FLFAX_" | mail -n -s ""order "_HZ_""" "_$$FAX(MSD)_"@fax.tc"
 ;
 D PUT^%W3DEB("W3FAXHTM","FX2=FX2")
 N E1,E2
 ZSY FX2 S E2=$ZSY
 I '$ZSY S $P(@$$^W3ORD(HZ)@(HZ,"DBF"),"\")=4
 D PUT^%W3DEB("W3FAXHTM","E1=E1&E2=E2")
 ;
END Q
 ;
 ;
FAX(MSD) ;
 ;
 N FAX
 I +$G(TSTORD)=2 D  Q FAX  ; -- HAZAAT MAHIR NURIT
 .S FAX=$$FAX^W3HZMST(HZ,$$^W3ORD) Q:FAX
 .N LK S LK=$$CODE^W3HZMST(HZ,$$^W3ORD)
 .S LK=$TR(LK,"!-","")
 .S FAX=$$FAX^W3L(LK,$$^W3ORD)
 ;
 S FAX=$TR($$FAX^W3R(MSD),"-","")
 ;
 I '$$FAXALW(MSD,FAX),'$G(TSTORD) Q ""
 S:$E(FAX)="!" FAX=$E(FAX,2,20)
 Q:$L(FAX)<7 ""
 Q FAX
 ;
 ;
FAXALW(MSD,FAX) ;
 I $E(FAX)="!" Q 0
 Q $$FAXALW^W3R(MSD)
 ;
SNDMAIL(HZ,MSD) ;
 N (JB,%ARG,%REM,HZ,MSD,MSG2HOST)
 S RESTEMAIL=$$EMAIL^W3R(MSD)
 S LINK=$$MAINPAGE()_"w3ordvw.jsp?JB="_HZ_"&W3ORDLS="_HZ_"&RCV=1"
 S DET=1
 S LINK=LINK_"&COMPRVIEW="_'DET
 S ^LL(2)=RESTEMAIL_"\"_LINK_"\"_HZ_"\"_MSD_"\"_DET
 ;
 S FROM=$$EMAIL^W3L($$LKHN^W3HZMST(HZ))
 S SMTP=$$SMTP^W3R(MSD)
 S USER=$$USER^W3R(MSD)
 S SERV=$$MAILSERVER^W3R(MSD)
 I SERV'["@" S SERV=$$EMAIL^W3R(MSD)
 S SERV=$P(SERV,",")
 I $D(MSG2HOST) S FROM=SERV
 ;
 S PSW=$$PSWMAIL^W3R(MSD)
 ;
 S HDMAIL="Order"
 I $D(MSG2HOST) S HDMAIL="New Order"
 S HDMAIL=HDMAIL_"-"_HZ
 ;
 S FILE="/tmp/sndmail"_$G(JB)_".html"
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  W "<html><body>",!
   W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
   N CLICK S CLICK=$$^%W1DICT("CLICKORDER")
   ;;W "From :<a href=""mailto:"_FROM_""" >"_FROM_"</a>",!
   W "<br /><br />",!
   W "<a href="""_LINK_""">"_CLICK_"</a>",!
  W "</body></html>",!
 C FILE
 ;
 S MSG="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" -j """_HDMAIL_"""  -s """_SERV_""" -y """_SERV_""" -r """_RESTEMAIL_""" -b """_FILE_""""
 ZSY MSG
 G EM
 ;
 N FLM S FLM="/tmp/tmpcmd"_JB
 C FLM:(DELETE)
 O FLM:(REWIND:NEWVERSION:WRITE:SYSTEM="rwx":GROUP="rx":WORLD="rx")
 U FLM
  W "#!/bin/bash",!
  W MSG,!
 C FLM
 ZSY "chmod 755 "_FLM
 ZSY FLM
 ;
EM ;
 S ^AL(HZ,"W3FAXHTM","MSG")=MSG_"\"_$ZSY
 I '$ZSY,'$D(MSG2HOST) S @$$^W3ORD(HZ)@(HZ,"EMAIL")=$H Q 1
 I '$ZSY,$D(MSG2HOST) S @$$^W3ORD(HZ)@(HZ,"SND2ME")=$H Q 1
 Q "ERROR : "_$ZSY
 ;
 ;
MAINPAGE(STAM) ;
 Q $$WEB^W3MAIN
 
 

W3FDBBD
W3FDBBD ; [ 12.09.17 13:52 ] [ 14.11.08 15:03 ] [ 13.11.08 15:06 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,MSD,MSDR)
 Q:'$G(MEDAT)
 W "<div align=""center"">",!
 W "<table width=""70%"" border=""1""><tr><td>",!
 W "<table border=""0"" width=""100%"" dir="""_$$^%W1DIR_""" bgcolor=""white"">",!
 ;
 D GL
 K @GLTMP S I=0
 I $G(MSD) D  G ET
 .N N S N="" F  S N=$O(@GL@(MSD,N)) Q:N=""  D FRMTMP(MSD,N)
 .D SHOW
 I $G(MSDR) D
 .N REST S REST="" F  S REST=$O(^[$$^W3MAIN]W3MSDR(MSDR,REST)) Q:REST=""  D
 ..I $$DLVWEB^W4DLVCSR,+MSDR=+REST Q
 ..N N S N="" F  S N=$O(@GL@(REST,N)) Q:N=""  D FRMTMP(REST,N)
 .D SHOW
 ;
ET W "</table></td></tr></table>",!
 W "</div>",!
 K @GLTMP Q
 ;
GL S GL="^[$$^W3MAIN]W3RCN"
 S GLTMP="^[$$^W3MAIN]TMPFDB(JB)"
 Q
FRMTMP(MSD,N)
 N A S A=$G(@GL@(MSD,N))
 N DT S DT=+$P(A,"\",4) Q:'DT
 M @GLTMP@(DT,MSD,N)=@GL@(MSD,N)
 Q
SHOW ;
 F DT=ADDAT:-1:MEDAT D
 .Q:'$D(@GLTMP@(DT))
 .D HEADDT(DT)
 .S HZ=""
 .N REST S REST="" F  S REST=$O(@GLTMP@(DT,REST)) Q:REST=""  D
 ..F  S HZ=$O(@GLTMP@(DT,REST,HZ)) Q:HZ=""  D
 ...S A=$G(^(HZ))
 ...D SHOWFDB(DT,REST,HZ,A)
 Q
HEADDT(DT) ;
 W "<tr><td align=""center"" style=""font-size:"_$$^W3FSZ_";color:red"" >"_$$^%L1DC(DT,1)_"</td></tr>",!
 Q
SHOWFDB(DT,MSD,HZ,A)
 N NAME,PELE,EMAIL
 S NAME=$P(A,"\",1)
 S PELE=$P(A,"\",2)
 S EMAIL=$P(A,"\",3)
 ;
 I $G(%ARG("MSDR")),'$G(%ARG("MSD")) D
 .W "<tr><td style=""text-align:center;color:green;font-weight:bold;font-size:"_$$^W3FSZ(12)_""" >"_$$H2U^%L1FRM($$MSD^W3R(MSD))_"</td>",!
 W "<tr><td><table width=""100%"" border=""0""><tr>",!
  N CLRORD S CLRORD="red"
  I $D(@$$^W3ORD(HZ)@(HZ)) S CLRORD="green;cursor:pointer"
  W "<td style=""color:"_CLRORD_";width:10%;font-size:"_$$^W3FSZ(12)_";font-weight:bold"" "_$$SHOWORD(HZ)_" >"_HZ_"</td><td width=""2%"">&nbsp;</td>",!
  W "<td style=""color:brown;width:7%"">"_$$^%W1DICT("NAME")_" : </td><td style=""color:blue;width:15%"">"_$S(NAME="":"&nbsp;",1:$$H2U^%L1FRM(NAME))_"</td><td>&nbsp;</td>",!
  W "<td style=""color:brown;width:7%"">"_$$^%W1DICT("PELE")_" : </td><td style=""color:blue;width:16%"">"_$S(PELE="":"&nbsp;",1:PELE)_"</td><td>&nbsp;</td>",!
  W "<td style=""color:brown;width:9%"">"_$$^%W1DICT("EMAIL")_" : </td><td style=""color:blue;width:25%"">"_$S(EMAIL="":"&nbsp;",1:EMAIL)_"</td>",!
 W "</tr></table></td></tr>",!
 ;
 ;
 N TXT,TXT1 S TXT=""
 N I F I=1:1 Q:'$D(@GLTMP@(DT,MSD,HZ,I))  D
 .N A S A=$G(^(I)) S TXT1=""
 .N J F J=1:1:$L(A,"_") S TXT1=$$H2U^%L1FRM($P(A,"_",J))_"<BR>"_TXT1
 .S TXT=TXT_TXT1_" "
 ;
 W "<tr style=""color:black""><td>"_TXT_"</td></tr>",!
 W "<tr><td><hr /></td></tr>",!
 Q
SHOWORD(HZ) ;
 I '$D(@$$^W3ORD(HZ)@(HZ)) Q ""
 N PRMHZ S PRMHZ=HZ_"~"_$G(MEDAT)_"~"_$G(ADDAT)
 S A=" onClick=""ShowOrd('"_HZ_"','"_PRMHZ_"')"""
 Q A
 

W3FDBBD1
W3FDBBD ; [ 12.09.17 13:52 ] [ 23.04.12 21:28 ] [ 29.09.08 13:43 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,MSD,MSDR)
 Q:'$G(MEDAT)
 W "<div align=""center"">",!
 W "<table width=""70%"" border=""1""><tr><td>",!
 W "<table border=""0"" width=""100%"" dir="""_$$^%W1DIR_""" bgcolor=""white"">",!
 ;
 D GL
 K @GLTMP S I=0
 I $G(MSD) D  G ET
 .N N S N="" F  S N=$O(@GL@(MSD,N)) Q:N=""  D FRMTMP(MSD,N)
 .D SHOW
 I $G(MSDR) D
 .N REST S REST="" F  S REST=$O(^[$$^W3MAIN]W3MSDR(MSDR,REST)) Q:REST=""  D:$G(^(REST))
 ..I $$DLVWEB^W4DLVCSR,+MSDR=+REST Q
 ..N N S N="" F  S N=$O(@GL@(REST,N)) Q:N=""  D FRMTMP(REST,N)
 .D SHOW
 ;
ET W "</table></td></tr></table>",!
 W "</div>",!
 K @GLTMP Q
 ;
GL S GL="^[$$^W3MAIN]W3RCN"
 S GLTMP="^[$$^W3MAIN]TMPFDB(JB)"
 Q
FRMTMP(MSD,N)
 N A S A=$G(@GL@(MSD,N))
 N DT S DT=+$P(A,"\",4) Q:'DT
 M @GLTMP@(DT,MSD,N)=@GL@(MSD,N)
 Q
SHOW ;
 F DT=MEDAT:1:ADDAT D
 .Q:'$D(@GLTMP@(DT))
 .D HEADDT(DT)
 .S HZ=""
 .N REST S REST="" F  S REST=$O(@GLTMP@(DT,REST)) Q:REST=""  D
 ..F  S HZ=$O(@GLTMP@(DT,REST,HZ)) Q:HZ=""  D
 ...S A=$G(^(HZ))
 ...D SHOWFDB(DT,REST,HZ,A)
 Q
HEADDT(DT) ;
 W "<tr><td align=""center"" style=""font-size:"_$$^W3FSZ_";color:red"" >"_$$^%L1DC(DT,1)_"</td></tr>",!
 Q
SHOWFDB(DT,MSD,HZ,A)
 N NAME,PELE,EMAIL
 S NAME=$P(A,"\",1)
 S PELE=$P(A,"\",2)
 S EMAIL=$P(A,"\",3)
 ;
 I $G(%ARG("MSDR")),'$G(%ARG("MSD")) D
 .W "<tr><td style=""text-align:center;color:green;font-weight:bold;font-size:"_$$^W3FSZ(12)_""" >"_$$H2U^%L1FRM($$MSD^W3R(MSD))_"</td>",!
 W "<tr><td><table width=""100%"" border=""0""><tr>",!
  N CLRORD S CLRORD=$S($D(@$$^W3ORD(HZ)@(HZ)):"green",1:"red")
  W "<td style=""color:"_CLRORD_";width:10%;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"_HZ_"</td><td width=""2%"">&nbsp;</td>",!
  W "<td style=""color:brown;width:7%"">"_$$^%W1DICT("NAME")_" : </td><td style=""color:blue;width:15%"">"_$S(NAME="":"&nbsp;",1:$$H2U^%L1FRM(NAME))_"</td><td>&nbsp;</td>",!
  W "<td style=""color:brown;width:7%"">"_$$^%W1DICT("PELE")_" : </td><td style=""color:blue;width:16%"">"_$S(PELE="":"&nbsp;",1:PELE)_"</td><td>&nbsp;</td>",!
  W "<td style=""color:brown;width:9%"">"_$$^%W1DICT("EMAIL")_" : </td><td style=""color:blue;width:25%"">"_$S(EMAIL="":"&nbsp;",1:EMAIL)_"</td>",!
 W "</tr></table></td></tr>",!
 ;
 ;
 N TXT S TXT=""
 N I F I=1:1 Q:'$D(@GLTMP@(DT,MSD,HZ,I))  D
 .N A S A=$G(^(I))
 .S TXT=TXT_$$RPL^%L1FRM($$H2U^%L1FRM(A),"_","<BR />")_" "
 ;
 W "<tr style=""color:black""><td>"_TXT_"</td></tr>",!
 W "<tr><td><hr /></td></tr>",!
 Q
 

W3FGIB
W3FGIB(MSD) ; [ 22.12.07 20:52 ] [ 21.11.07 09:45 ] [ 20.11.07 21:00 ]
 N PATHGB
 S PATHGB=$$MSM^W3MAIN
 S:$E(PATHGB,$L(PATHGB))'="/" PATHGB=PATHGB_"/"
 S PATHGB=PATHGB_+MSD_"/jour/"
END ;
 N ZD S ZD=$ZDIR
 D PUT^%W3DEB("W3FGIB","PATHGB=PATHGB & ZD=ZD")
 Q PATHGB_"#J"_$ZD($H,"YYMMDD")

W3FNDLK
W3FNDLK ; [ 10.06.23 05:16 ] [ 29.10.18 15:58 ] [ 17.10.18 12:24 ] 
 N (JB,%ARG,%REM)
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W3FNDLK")
 D PUT^%W3DEB("W3FNDLK","%ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;
 D PUT^%W3DEB("W3FNDLK","MSD=MSD")
 ;
 N GL S GL="^[$$^W3MAIN]LKH"
 ;
 W "<div align=""center"">",!
 W "<br>",!
 ;
 W "<span style=""color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  W $$^%W1DICT("INPUTCUSTDETAILSFORSEARCH")
 W "</span>",!
 W "<br><br>",!
 W "<table border=""0"" style=""border:solid;border-style:groove;border-color:#eaeaea;cellpadding:10;background-color:white;color:black"" width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr><td align=""center"" colspan=""4"">" D GROUPS^W4LHB W "</td></tr>",!
 W "<tr>" D NAME,COMP W "</tr>",!
 ;
 W "<tr>",!
  D TELB
  D PELE
 W "</tr>",!
 ;
 W "<tr>",!
  D CITY
  D STREET
 W "</tr>",!
 ;
 W "</tr>"
  D HOME
  D FLAT
 W "</tr>",!
 D PCLINE
 W "</table>",!
 W "</div>",!
 ;
 W "<br>",!
 W "<div align=""center"">",!
 ;
 I '$$DLV^W4DLVCSR D
 .W "<table dir="""_$$^%W1DIR_"""><tr><td>",!
 . D ^W4BUTTON("rbtfind",$$^%W1DICT("FINDCUST"),"FindCust()","color:green")
 .W "</td><td>",!
 . D ^W4BUTTON("rbtback",$$^%W1DICT("BACK"),"Back()","color:red")
 .W "</td></tr></table>",!
 ;
 I $$DLV^W4DLVCSR D
 .W "<table dir="""_$$^%W1DIR_""" align=""center"" border=""0"" width=""20%"" cellpadding=""10"">",!
 .W " <tr style=""height:70px;cursor:pointer"" >",!
 .W "<td>" 
 . D ^W4BUTTON("rbtfind","FINDCUST","FindCust()","background-color:green;color:white;font-size:"_$$^W4KF(24))
 .W "</td>"
 .W "<td>"
 . D ^W4BUTTON("rbtback","BACK","Back()","background-color:red;color:white;font-size:"_$$^W4KF(24))
 .W "</td>"
 .W " </tr>",!
 .W "</table>",!
 ;
 W "</div>",!
 ;
 I $$KBVRT^W4PRM D ^W4KBABC
 Q
 ;
TELB D TD W "&nbsp;"_$$^%W1DICT("TEL")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("TELB",100,12,"LTR")
 Q
 ;
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td>"
 W "<td>&nbsp;" D INP("PELE",100,12,"LTR")
 Q
 ;
NAME D TD W "&nbsp;"_$$^%W1DICT("NAME")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("NAME",160,30,$$^%W1DIR)
 Q
 ;
COMP D TD W "&nbsp;"_$$^%W1DICT("COMPANYNAME")_"</td>"
 W "<td>&nbsp;" D INP("COMP",160,30,$$^%W1DIR)
 Q
 ;
STREET D TD W "&nbsp;"_$$^%W1DICT("STREET")_"</td>"
 W "<td>&nbsp;" D INP("STREET","95%",30,$$^%W1DIR)
 Q
 ;
HOME D TD W "&nbsp;"_$$^%W1DICT("HOME")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("HOME",30,3,"LTR")
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("FLAT")_"</td>"
 W "<td>&nbsp;" D INP("FLAT",30,5,"LTR")
 Q
 ;
CITY D TD W "&nbsp;"_$$^%W1DICT("CITY")_"</td><td>&nbsp;&nbsp;"
 I $D(@$$^W4GL("P1IR"))>9 D  Q
 .N NOTAKEAWAY S NOTAKEAWAY=""
 .N PRM S PRM="IN"
 .N W3FNDLK S W3FNDLK=""
 .D INPCT^W3ORDDET("CITY",120,20,$$^%W1DIR,"")
 ;
 D INP("CITY",120,20,$$^%W1DIR)
 Q
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_$$^W4KF(WD)
 .I $$^%W1DIR="RTL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .I RKV="STREET" D
 ..W " onFocus=""noIfrHide=1"""
 ..I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 D
 ...W " onKeyUp=""FindStreet(this)"""
 .
 .W $$INPBGCOLOR^W3ORDDET
 .
 .W " tabindex="""_$$TABIND^W3ORDDET(RKV)_""" "
 .W " />"
 W "</td>",!
 Q
 ;
PCLINE ;
 W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3FRSTGR
W3FRSTGR(STAM) ; [ 02.12.21 08:49 ] [ 10.08.21 11:52 ] [ 24.02.12 19:06 ] [
 I '$G(%ARG("NOVWHIDE")) Q $O(@$$^W4GL("PARSUG")@(""))
 ;
 N N,N1
 S N="",N1="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D  Q:N1
 .I $$^W4VWGR(N) S N1=N
 Q N1
 
 
 
 
 

W3FSZ
W3FSZ(SZ,MIN) ; [ 11.05.26 09:35 ] [ 02.09.25 19:51 ] [ 23.05.25 08:52 ] 
 I '$D(SZ) S SZ=14
 N SZ0 S SZ0=SZ
 ;
 D
 .I SZ<12,$$GETP^%W1PRM("REST")!$$SFC^W3CSS,'$$^W4TABLET S SZ=SZ+1
 .I SZ<13,$$1700^W4WDSCR S SZ=SZ+1
 .I SZ<12,$$^W4TABLET=1 S SZ=SZ-1
 .I SZ>13,$$^W4TABLET=1 S SZ=SZ-1
 .;
 .I $$^W4TABLET=1 S SZ=SZ+$G(@$$^W4PRM@("DOPSZTAB"))
 .I $$^W4TABLET=2 S SZ=SZ+14+$G(@$$^W4PRM@("DOPSZTEL"))
 .;
 .I $G(%ARG("ZAG")) S SZ=SZ+$G(@$$^W4PRM@("ZAG","DOPFSZ"),6)
 .;
 .I $G(%ARG("MAIL"))!$G(%ARG("FAX")) S SZ=SZ-1
 .I $$MM^W4PRM,$$GETP^%W1PRM("FAXHTM") S SZ=SZ+2
 .;
 .I $D(W3FAXHTM("SNDMAIL")) S SZ=SZ-1
 ;
M N DOP S DOP="" I $$WDSCR<1201,SZ0>13 S DOP=";font-weight:600"
 I $$^%W1LNG="H" Q $S($$WDSCR>1200:SZ_"pt",1:(SZ-1-$G(MIN))_"pt")_DOP
 Q $S($$WDSCR>1200:(SZ-1)_"pt",1:(SZ-2)_"pt")_DOP ; -- ENGLISH
 ; 
WDSCR(STAM) ; 
 N WDSCR
 S WDSCR=$$^W4WDSCR
 I WDSCR Q WDSCR
 Q 1768
 ;
SMALL(STAM) ; 
 Q 0
 Q $$^W4SMALL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3G2F
W3G2F(GL,FL) ; [ 01.10.23 11:46 ] [ 18.12.17 10:01 ] [ 20.11.16 20:08 ] 
 O FL::1 E  Q 0
 I $$EXIST^%L1ZOS(FL) C FL:DELETE
 O FL:(WRITE:NEWVERSION)
 U FL
 D WR(GL) ;ZWR @GL
 C FL
 Q 1
GR(FL,UCI) ;
 I $$^%L1ZOS(10,FL)<0 Q 0
 O FL:(REWIND:READONLY:EXCEPT="G ER")
GR1 F  U FL R A Q:$ZEOF  I $E(A)="^" D
 .;;S ^AA($O(^AA(999999),-1)+1)="FL="_FL_"  A="_A
 .S J=$$FND(A) I 'J Q
 .S A3=$E(A,1,J-1)
 .;;S A2=""""_$TR(A2,"""","'")_""""
 .S A2=$E(A,J+1,1200)
 .I A3["^[",A3["]" S A3=$P(A3,"[")_$P(A3,"]",2,200)
 .I A3["^|" S A3=$P(A3,"|")_$P(A3,"|",3,20)
 .I $L($G(UCI)) S A3="^|"""_UCI_"""|"_$P(A3,"^",2,200)
 .S @A3=A2
EOF C FL
 Q 1
ER U $P
 I $P($ZS,",",3)["EOF" G EOF
 S $ZT=""
 S ^W3G2FER($O(^W3G2FER(9999999),-1)+1)="A3="_$G(A3)_"  A2="_$G(A2)
 D SVER^%L1X
 H 1 G GR1
 Q 0
WR(MAC) ;
 N %PR,%MAC1,%MAC2,%ORD
 S %ORD=1
 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 S %MAC2=$E($R,1,$L($R)-1)_$S($E(MAC,$L(MAC))=")":",",1:"")
 I %PR W MAC_"="_@MAC,!
 S %MAC1=MAC I $E(%MAC1,$L(%MAC1))=")" S %MAC1=$E(%MAC1,1,$L(%MAC1)-1)_","""")"
 I $E(%MAC1,$L(%MAC1))'=")" S %MAC1=%MAC1_"("""")"
 S %MAC1=$Q(@%MAC1) I %MAC1="" Q
 F  Q:%MAC1'[%MAC2  Q:%MAC1=""  W %MAC1_"="_$G(@%MAC1),! S %MAC1=$Q(@%MAC1)
 K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2
 Q
FND(A) ;
 N J,FL
 S J=0,FL=0
FND1 S J=J+1 I J>$L(A) Q 0
 I $E(A,J)="(" S FL=1
 I $E(A,J)=")" S FL=0
 I $E(A,J)="=",'FL Q J
 G FND1
 
 
 
 

W3G2F0
W3G2F(GL,FL) ; [ 18.12.17 10:39 ] [ 20.11.16 20:08 ] [ 27.08.14 18:55 ] 
 O FL::1 E  Q 0
 I $$EXIST^%L1ZOS(FL) C FL:DELETE
 O FL:(WRITE:NEWVERSION)
 U FL
 D WR(GL) ;ZWR @GL
 C FL
 Q 1
GR(FL,UCI) ;
 I $$^%L1ZOS(10,FL)<0 Q 0
 O FL:(REWIND:READONLY:EXCEPT="G ER")
 K ^AA
GR1 F  U FL R A Q:$ZEOF  I $E(A)="^" D
 .;;S ^AA($O(^AA(999999),-1)+1)="FL="_FL_"  A="_A
 .S J=$$FND(A) I 'J Q
 .S A3=$E(A,1,J-1)
 .;;S A2=""""_$TR(A2,"""","'")_""""
 .S A2=$E(A,J+1,1200)
 .I A3["^[",A3["]" S A3=$P(A3,"[")_$P(A3,"]",2,200)
 .I A3["^|" S A3=$P(A3,"|")_$P(A3,"|",3,20)
 .I $L($G(UCI)) S A3="^|"""_UCI_"""|"_$P(A3,"^",2,200)
 .S @A3=A2
EOF C FL
 Q 1
ER U $P
 I $P($ZS,",",3)["EOF" G EOF
 S $ZT=""
 S ^W3G2FER($O(^W3G2FER(9999999),-1)+1)="A3="_$G(A3)_"  A2="_$G(A2)
 D SVER^%L1X
 H 1 G GR1
 Q 0
WR(MAC) ;
 N %PR,%MAC1,%MAC2,%ORD
 S %ORD=1
 S %PR=0,FLAG=0 I ($D(@MAC)#10)'=0 S %PR=1
 S %MAC2=$E($R,1,$L($R)-1)_$S($E(MAC,$L(MAC))=")":",",1:"")
 I %PR W MAC_"="_@MAC,!
 S %MAC1=MAC I $E(%MAC1,$L(%MAC1))=")" S %MAC1=$E(%MAC1,1,$L(%MAC1)-1)_","""")"
 I $E(%MAC1,$L(%MAC1))'=")" S %MAC1=%MAC1_"("""")"
 S %MAC1=$Q(@%MAC1) I %MAC1="" Q
 F  Q:%MAC1'[%MAC2  Q:%MAC1=""  W %MAC1_"="_@%MAC1,! S %MAC1=$Q(@%MAC1)
 K %MAC1,%MAC2,%PR,%ZE,%IND,%IND1,%IND2
 Q
FND(A) ;
 N J,FL
 S J=0,FL=0
FND1 S J=J+1 I J>$L(A) Q 0
 I $E(A,J)="(" S FL=1
 I $E(A,J)=")" S FL=0
 I $E(A,J)="=",'FL Q J
 G FND1
 
 
 

W3GETMZV
W3GETMZV ; [ 14.01.25 15:46 ] [ 13.01.25 14:01 ] [ 08.01.25 10:48 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S FDB=$G(%ARG("FDB"))
 S REST=$P($G(%ARG("MSD")),",") Q:REST=""
 ;;I '$L(FDB) Q
 S MSDR=$G(%ARG("MSDR")) Q:MSDR=""
 S DT=+FDB I 'DT S DT=+$H
 ;
 K MTM,MQMSL
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 .D GET^W4MZVM(MSD,DT)
 .S TM1=$P(TIMEPREP,"^",3)
 .I TM1 S MTM(+TM1,MSD)=""
 .
 .S KF=0 I QNSP S KF=$J(QNSP30/QNSP,3,3)
 .I KF S MKMSL(1-KF,MSD)=KF
 ;
 S II=0,IREST=0,CHAMP="",CHAMP1="",CHAMPTMP=""
 S N="" F  S N=$O(MTM(N)) Q:N=""  D
 .S MSD="" F  S MSD=$O(MTM(N,MSD)) Q:MSD=""  D
 ..S II=II+1
 ..I II=1 S CHAMP=MSD,CHAMP1=$$MSD^W3R(CHAMP),CHAMPTMP=N
 ..I REST=MSD S IREST=II_"~"_N_"~1~"_CHAMP_"~"_CHAMP1_"~"_CHAMPTMP
 ;
 W "<RestStatus>",!
  W "<RestStatusData>"_REST_"~"_IREST_"</RestStatusData>",!
 W "</RestStatus>",!
 ;
 ;
 S II=0,IREST=0,CHAMP="",CHAMP1="",CHAMPKF=""
 S N="" F  S N=$O(MKMSL(N)) Q:N=""  D
 .S MSD="" F  S MSD=$O(MKMSL(N,MSD)) Q:MSD=""  D
 ..S II=II+1
 ..I II=1 S CHAMP=MSD,CHAMP1=$$MSD^W3R(CHAMP),CHAMPKF=$G(MKMSL(N,MSD))
 ..I REST=MSD S IREST=II_"~"_$G(MKMSL(N,MSD))_"~1~"_CHAMP_"~"_CHAMP1_"~"_CHAMPKF
 ;
 W "<DlvSends>",!
  W "<DlvSendsData>"_REST_"~"_IREST_"</DlvSendsData>",!
 W "</DlvSends>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3GL
W3GL(GL,JBB) ; [ 15.10.18 13:59 ] [ 16.04.12 12:55 ] [ 03.07.08 16:48 ] 
 I $G(JBB)="" S JBB=JB
 Q $$^W4GL(GL,$G(JBB))
 ;
 S:$E(GL)="^" GL=$E(GL,2,20)
 I $$^W4GLLIN Q "^"_GL
 I $D(JBB) N JB S JB=JBB
 I '$D(JB) Q "^[$$^W3MAIN]"_GL
 Q "^[$$^%W1UCI("_+JB_")]"_GL
 
 

W3HEAD
W3HEAD ; [ 17.05.09 15:20 ] [ 16.09.08 09:50 ] [
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:$$^W3MENU  Q:$$CLOSEORD(JB)
 N I,T,R,HD,FLD,REG
 S T=$$T^W3HZHD
 S R=$$R^W3HZHD
 S HD=""
 ;
 D
 .S $P(@$$^W3TMPORD@(JB),"~",38)=$$AHUZ
 ;
 F I=1:1:50 S $P(HD,"~",I)="#"
 F I=1:1:$L(T,";") D
 .S FLD=$P(T,";",I) I FLD?.P Q
 .S REG=$$SPA^%L1FRM($P(R,";",I))
 .I $D(@FLD) S $P(HD,"~",I)=$$FLD(FLD,REG)
 ;
 I '$G(CODE) S CODE=$TR($$GET^%W1PRM("NMB"),"!-","")
 S CODE=$P(CODE,"~")
 S $P(HD,"~",27)=$S($G(CODE):CODE,1:$TR($G(NMB),"!-",""))
 S $P(HD,"~",30)=JB
 ;;S $P(HD,"~",31)=$$FLD("CITY","H")
 S CITY=$P(HD,"~",31)
 I CITY'="" D
 .S $P(@$$^W3TMPORD@(JB),"~",9)=$$DMSH(CITY)
 .S $P(@$$^W3TMPORD@(JB),"~",33)=$$MHMIN(CITY)
 .S $P(@$$^W3TMPORD@(JB),"~",37)=$$MHCNC(CITY)
 ;
 S $P(HD,"~",32)=$G(PELE)
 ;;I $P(HD,"~",5)'?2N1"."2N1"."2N D
 .S $P(HD,"~",5)=$P(HD,"~",39)_"."_$P(HD,"~",40)_"."_$P(HD,"~",41)
 I $P(HD,"~",6)'?2N1":"2N D
 .S $P(HD,"~",6)=$P(HD,"~",42)_":"_$P(HD,"~",43)
 F I=1:1:$L(HD,"~") D
 .I $P(HD,"~",I)?.P,$P(HD,"~",I)'="`" Q
 .S $P(@$$^W3TMPORD@(JB),"~",I)=$P(HD,"~",I)
 I $$GET^%W1PRM("MSL") S $P(@$$^W3TMPORD@(JB),"~",51)=2 ; -- MISHLOHIM
 I $$GET^%W1PRM("REST") S $P(@$$^W3TMPORD@(JB),"~",51)=3 ; -- REST
 D PUT^%W3DEB("W3HZTFR-HEAD","HD=HD")
 ;
 Q
 ;
FLD(F,RG) ;
 N ST,ST1,IND S ST=$TR($G(@F),$C(160),"")
 I $E(ST)="?" S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 I RG="H",$$^%W1LNG="H" D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND="" Q
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .S ST1=$$INVH^%L1FRM(ST1)
 Q ST1

W3HZFR
P1HZFR(NMB) ; [ 10.08.08 19:04 ] [ 28.10.04 01:00 ] [ 22.10.04 12:00 ]
 I '$G(NMB) Q 0
 N HZM S HZM=$O(^P1HL(NMB,""),-1)
 I HZM="ycg" Q -1
 I HZM="" Q 0
 I $G(^P1HZ(HZM,"S"))>1 Q 0
 Q HZM

W3HZG10B
W3HZG10B ; [ 18.08.19 17:50 ] [ 11.07.11 19:25 ] [ 10.11.09 10:00 ] 
 D ^%L1C,^%L1TS
ZD X %chista
 S %SAY=" SHOW 10BIS ORDER " X %XMSGV
 S %GET="jix`z++3,70,HH#"_$ZD($H,"DDMMYY")_"++8,D,I" D ^%L1GET Q:%S=""!(%TO="END")
 S DAT=%S
ZH S %GET="qiaph zpnfd 'qn++5,70,HH#++10,E,I" D ^%L1GET I (%TO="END") G ZD
 S HZ10B=%S
 S SUM=""
 I 'HZ10B D  I (%TO="END")!(%S="") G ZH
 .S %GET="mekq++7,70,HH#++8,E,I" D ^%L1GET
 .S SUM=%S
 ;
 S DT=$$^%L1DC(DAT,3)
 S FIRST1=1
 S FIRST2=1
 K ^TMPS111($J) S I=0
 K ^S10($J)
 K ^S11($J)
 K ^S12($J)
 K ^S13($J)
 ;
 I HZ10B D SHOWORD(HZ10B)
 ;
 I 'HZ10B,SUM D
 .S ORDER="" K MORD
 .S N="" F  S N=$O(^TMPBISA(DT,N)) Q:N=""  D
 ..S N1="" F  S N1=$O(^TMPBISA(DT,N,1,N1)) Q:N1=""  D
 ...S ST=$G(^(N1))
 ...I ST[("<OrderID>") S ORDER=$$VL(ST,"OrderID")
 ...I ST["<TotalSum>",+$$VL(ST,"TotalSum")=+SUM,ORDER,'$D(MORD(ORDER)) D SHOWORD(ORDER) S MORD(ORDER)=""
 ;
 S %S2V("PRINT")=""
 S %S2V("NOHB")=1
 D ^%S2VIEW
 G ZD
 ;
SAVEHD ;
 N N2,N3,I,LASTHD,LASTHD2,ENDHD,M
 S LASTHD=0,LASTHD2=0,I=0
 I FIRST1 D  D HD Q
 .K ^S10($J)
 .F N2=N1:-1:0 Q:$G(^TMPBISA(DT,N,1,N2))["<OrderLineElement"
 .Q:'N2
 .S ENDHD=0
 .F N3=N2:1 Q:'$D(^TMPBISA(DT,N,1,N3))  S:^(N3)["</OrderLineElement" ENDHD=1  D  Q:ENDHD
 ..S I=I+1,^S10($J,I)=$G(^TMPBISA(DT,N,1,N3))
 .S LASTHD=I
 ;
 K ^S11($J)
 D
 .F N2=N1:-1:0 Q:$G(^TMPBISA(DT,N,1,N2))["<OrderLineElement"
 .Q:'N2
 .S ENDHD=0
 .F N3=N2:1 Q:'$D(^TMPBISA(DT,N,1,N3))  S:^(N3)["</OrderLineElement" ENDHD=1  D  Q:ENDHD
 ..S I=I+1,^S11($J,I)=$G(^TMPBISA(DT,N,1,N3))
 .S LASTHD2=I
 ;
 N EQ S EQ=1 K M
 F I=1:1 Q:'$D(^S10($J,I))  D
 .I ^S10($J,I)'=$G(^S11($J,I)) S EQ=0,M(I)=""
 F I=1:1 Q:'$D(^S11($J,I))  D
 .I ^S11($J,I)'=$G(^S10($J,I)) S EQ=0,M(I)=""
 ;
 I 'EQ,LASTHD2>20 D
 .K ^S10($J)
 .M ^S10($J)=^S11($J)
 .D HD
 Q
 ;
SAVECONT(BG) ;
 N N2,N3,I,LASTCN,LASTCN2,ENDCN,M
 S LASTCN=0,LASTCN2=0,I=0
 ;;S BG="GetSingleOrderResponseMsg"
 I FIRST2 D  D CN Q
 .K ^S12($J)
 .F N2=N1:-1:0 Q:$G(^TMPBISA(DT,N,2,N2))[("<"_BG)
 .Q:'N2
 .S ENDCN=0
 .F N3=N2:1 Q:'$D(^TMPBISA(DT,N,2,N3))  S:^(N3)[("</"_BG) ENDCN=1  D  Q:ENDCN
 ..S I=I+1,^S12($J,I)=$G(^TMPBISA(DT,N,2,N3))
 .S LASTCN=I
 ;
 K ^S13($J)
 D
 .F N2=N1:-1:0 Q:$G(^TMPBISA(DT,N,2,N2))[BG
 .Q:'N2
 .S ENDCN=0
 .F N3=N2:1 Q:'$D(^TMPBISA(DT,N,2,N3))  S:^(N3)[("</"_BG) ENDCN=1  D  Q:ENDCN
 ..S I=I+1,^S13($J,I)=$G(^TMPBISA(DT,N,2,N3))
 .S LASTCN2=I
 ;
 N EQ S EQ=1 K M
 F I=1:1 Q:'$D(^S12($J,I))  D
 .I ^S12($J,I)'=$G(^S13($J,I)) S EQ=0,M(I)=""
 F I=1:1 Q:'$D(^S13($J,I))  D
 .I ^S13($J,I)'=$G(^S12($J,I)) S EQ=0,M(I)=""
 ;
 I 'EQ,LASTCN2>20 D
 .K ^S12($J)
 .M ^S12($J)=^S13($J)
 .D CN
 Q
HD ;
 N I
 S ^TMPS111($J,$$IND)=""
 S ^TMPS111($J,$$IND)=""
 S ^TMPS111($J,$$IND)=$TR($J("",20)," ","=")_"   ORDER "_ORDER_" HEADER ("_N_")   "_$TR($J("",20)," ","=")
 F I=1:1 Q:'$D(^S10($J,I))  D
 .N IND S IND=$$IND
 .S ^TMPS111($J,IND)=$TR(^S10($J,I),TSS,TS0) D
 .I $D(M(I)) S ^TMPS111($J,IND)="*"_^TMPS111($J,IND)
 Q
CN ;
 N I
 S ^TMPS111($J,$$IND)=$TR($J("",20)," ","-")_"  ORDER "_ORDER_" CONTENT ("_N_")   "_$TR($J("",20)," ","-")
 F I=1:1 Q:'$D(^S12($J,I))  D
 .N IND S IND=$$IND
 .S ^TMPS111($J,IND)=$TR(^S12($J,I),TSS,TS0) D
 .I $D(M(I)) S ^TMPS111($J,IND)="*"_^TMPS111($J,IND)
 Q
IND(STAM) Q $O(^TMPS111($J,999999),-1)+1
 ;
VL(ST,RKV) ;
 Q $TR($P($P(ST,"<"_RKV_">",2),"</")," ","")
 ;
SHOWORD(ORDER) ;
 N N,N1
 S N="" F  S N=$O(^TMPBISA(DT,N)) Q:N=""  D
 .S N1="" F  S N1=$O(^TMPBISA(DT,N,1,N1)) Q:N1=""  D
 ..S ST=$G(^(N1))
 ..I ST[("<PoolID>"_ORDER_"<") D SAVEHD S FIRST1=0 Q
 ..I ST[("<OrderID>"_ORDER_"<") D SAVEHD S FIRST1=0 Q
 .S N1="" F  S N1=$O(^TMPBISA(DT,N,2,N1)) Q:N1=""  D
 ..S ST=$G(^(N1))
 ..I ST[("<PooledOrderID>"_ORDER_"<") D SAVECONT("GetPooledOrderResponseMsg") S FIRST2=0 Q
 ..I ST[("<OrderID>"_ORDER_"<") D SAVECONT("GetSingleOrderResponseMsg") S FIRST2=0 Q
 Q  ;
 

W3HZGLK
W3HZGLK ; [ 08.07.26 13:22 ] [ 03.06.25 11:15 ] [ 08.08.22 13:43 ] 
 N (JB,%ARG,%REM) D ^%L1TS
 D KILL^%W3DEB("W3HZGLK")
 D PUT^%W3DEB("W3HZGLK","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 S MSD=$G(%ARG("MSD"))
 I 'MSD S MSD=$$GET^%W1PRM("MSD")
 I 'MSD,'$G(%ARG("MSDR")) W " Restaurant number is not defined ! " Q
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D BUT
 ;
 D HEADER
 ;
 W "<br>",!
 S PG=1,RL=38
 D KOT
 ;
 S I=0,K=0,LK=""
 ;
 K @$$^W4MAIN("VRM1")
 I $G(%ARG("TZ")) D  D:$L(LK) HZGLK(LK) G BUT
 .N IND S IND=""
 .F  S IND=$O(@$$^W4MAIN("VRM")@(IND)) Q:IND=""  S N=$G(^(IND)) I +$$TZ^W4L(N)=+%ARG("TZ") S LK=N Q
 ;
 S MELKH=$TR($$SPA^%L1FRM($G(%ARG("MELKH"))),"-","")
 S ADLKH=$TR($$SPA^%L1FRM($G(%ARG("ADLKH"))),"-","")
 S SLKH1=$$SRCH($G(%ARG("LKH1")),"H")
 S SIR=$$SRCH($G(%ARG("IR")),"H")
 S SSTREET=$$SRCH($G(%ARG("STREET")),"H")
 S SCOMP=$$SRCH($G(%ARG("COMP")),"H")
 S STEL=$$SRCH($G(%ARG("TEL")),"TEL")
 S SPELE=$$SRCH($G(%ARG("PELE")),"TEL")
 S SCITY=$$SRCH($G(%ARG("CITY")),"H")
 S SHOME=$$SRCH($G(%ARG("HOME")))
 S SFLAT=$$SRCH($G(%ARG("FLAT")))
 ;
 D PUT^%W3DEB("W3HZGLK","SLKH1=SLKH1 & SIR=SIR & STEL=STEL& SCITY=SCITY")
 ;
 S FLEX=$$FLCSV("L")
 ;
 O FLEX:(NEWVERSION:WRITE)
 U FLEX
 S HD="gewl 'qn,gewl my,dxag,t.g,l""`ec,'lh,ciip,qwt,zaezk,xir,dveaw,dgpd %"
 S HD1="" F J=1:1:$L(HD,",") S HD1=HD1_$$^%W1D2U($P(HD,",",J))_","
 S HD1=$E(HD1,1,$L(HD1)-1)
 W HD1,!
 U 0
 ;
 S IND="" F  S IND=$O(@$$^W4MAIN("VRM")@(IND)) Q:IND=""  D
 .S N=$G(^(IND))
 .I MELKH,$TR(N,"-","")<MELKH Q
 .I ADLKH,$TR(N,"-","")>ADLKH Q
 .S LKH1=$$LKH^W3L(N)
 .I $G(%ARG("VALID"))=1,'$$MAZAV^W4L(N) Q
 .I $G(%ARG("VALID"))=2,$$MAZAV^W4L(N) Q
 .I $G(%ARG("CREDONLY")),'$$ISCR^W4L(N) Q
 .S OK=1
 .
 .I SLKH1'?." " D  Q:'OK
 ..I LKH1'[SLKH1 S OK=0
 .I $G(%ARG("SUGL")),$$SUGL^W4L(N)'=%ARG("SUGL") Q
 .
 .S IR=$$IR^W3L(N)
 .;;S IR=$$W4CITY(IR)
 .I SIR'?." " D  Q:'OK
 ..I IR'=SIR S OK=0
 .
 .I $L(STEL) D  Q:'OK
 ..S TELA=$TR($$TELA^W3L(N),"-","")
 ..I TELA=STEL Q
 ..S TELB=$TR($$TELB^W3L(N),"-","")
 ..I TELB=STEL Q
 ..S PELE=$TR($$PELE^W3L(N),"-","")
 ..I PELE'=STEL S OK=0
 .
 .I $L(SPELE) D  Q:'OK
 ..S TELA=$TR($$TELA^W3L(N),"-","")
 ..I TELA=SPELE Q
 ..S TELB=$TR($$TELB^W3L(N),"-","")
 ..I TELB=SPELE Q
 ..S PELE=$TR($$PELE^W3L(N),"-","")
 ..I PELE'=SPELE S OK=0
 .
 .S COMP=$$COMP^W3L(N)
 .I $L(SCOMP) D  Q:'OK
 ..I COMP'=SCOMP S OK=0
 .
 .S CITY=$$IR^W4L(N)
 .I $L(SCITY) D  Q:'OK
 ..I CITY'=SCITY S OK=0
 .
 .S STREET=$$KTV^W3L(N)
 .I $L(SSTREET) D  Q:'OK
 ..I STREET[SSTREET S OK=1 Q
 ..N J F J=1:1:$L(SSTREET," ") D
 ...I STREET'[$P(SSTREET," ",J) S OK=0 Q
 .
 .S HOME=$$BAIT^W3L(N)
 .I $L(SHOME) D  Q:'OK
 ..I HOME'=SHOME S OK=0
 .
 .S FLAT=$$DIRA^W3L(N)
 .I $L(SFLAT) D  Q:'OK
 ..I FLAT'=SFLAT S OK=0
 .
 .U 0
 .D HZGLK(N)
 .
 .U FLEX
 .S A=""""_N_""","_$$EX($$LKH^W4L(N),"H")_","_$$EX($$COMP^W4L(N),"H")_","
 .S A=A_$$TZ^W4L(N)_","_$$EX($$EMAIL^W4L(N))_","_$$EX($$TELB^W4L(N))_","
 .S A=A_$$PELE^W4L(N)_","_$$FAX^W4L(N)_","_$$EX($$KTV2^W4L(N),"H")_","_$$EX($$IR^W4L(N),"H")_","
 .S A=A_$$SUGL^W4L(N)_","_$$AH^W4L(N)
 .W A,!
 .U 0
 ;
 C FLEX
 ;
 W "</table>",!
 W "</div>",!
 W "<br />",!
 W "<br />",!
 D BUT 
 Q
 ;
BUT ;
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 I '$$DLV^W4DLVCSR D
 .W "<table dir="""_$$^%W1DIR_""">",!
 .W "<tr><td>"
 . D ^W4BUTTON("Print",$$^%W1DICT("PRINT"),"Print()","color:green")
 .W "</td>"
 .
 .W "<td>&nbsp;</td>"
 .
 .I $$LPTMDB D
 ..W "<td>"
 .. D ^W4BUTTON("Mdb",$$^%W1DICT("MDBPC"),"Mdb()","color:blue")
 ..W "</td>"
 .
 .W "<td>"
 . D ^W4BUTTON("Back",$$^%W1DICT("BACK"),"Back()","color:red")
 .W "</td>"
 ;
 I $$DLV^W4DLVCSR D   ;-- HIPUS FROM MISHLOHIM
 .W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""10%"" cellpadding=""10"">",!
 .W " <tr style=""height:"_$$^W4KF(60)_"px;background-color:white;cursor:pointer"" >"
 . D BTN^W3ORDDET("Back",$$^%W1DICT("BACK"),"Back()","background-color:red;color:white;font-size:"_$$^W4KF(18))
 ;
 W " </tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 Q
 ;
 ;
HZGLK(N) ;
 S I=I+1
 S K=K+1
 I K>RL D
 .W "</table>",!
 .W "<br>",!
 .D PGBREAK
 .S PG=PG+1
 .W "<span width=""96%"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("PAGE")_" "_PG_"</span>",!
 .D KOT S PG=PG+1
 .S K=0
 ;
 S @$$^W4MAIN("VRM1")@(N)=N
 ;
 W "<tr"
 ;
 D
 .W " onClick=""OpenCust('"_N_"')"" "
 .W " style=""cursor:pointer"
 .I '$$MAZAV^W4L(N) W ";background-color:pink"
 .I +$$MAZAV^W4L(N)=.5 W ";background-color:lightyellow"
 .W """ "
 I $$DLV^W4DLVCSR W " height="""_$$^W4KF(30)_"px"" "
 W ">"
 W " <td style=""background-color:#fafad2"" width=""5%"" "
 W """>"
 W "     "_I
 W " </td>"
 W " <td "
 I N=$$GET^%W1PRM("CURLKH") W "style=""border:2px solid brown"""
 W ">"
 W "     "_N
 W " </td>"
 W " <td>"
 W "   "_$$RKV($$LKH^W3L(N),"H")
 W " </td>"
 ;
 I '$$NOCOLCOMP D
 .W " <td>"
 .W "   "_$$RKV($$COMP^W3L(N),"H")
 .W " </td>"
 ;
 I '$$NOTZ D
 .W " <td>"
 .W "   "_$$RKV($$TZ^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLEMAIL D
 .W " <td dir=""LTR"" align=""center"">"
 .W "   "_$$RKV($$EMAIL^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLTEL1 D
 .W " <td dir=""LTR"" align=""center"">"
 .W "   "_$$RKV($$TELB^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLTEL2 D
 .W " <td dir=""LTR"" align=""center"">"
 .W "   "_$$RKV($$PELE^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLADR D
 .W " <td>"
 .W "   "_$$RKV($$KTV2^W3L(N),"H")
 .W " </td>"
 ;
 I '$$NOCOLCITY D
 .W " <td>"
 .W "   "_$$RKV($$IR^W3L(N),"H")
 .W " </td>"
 ;
 I '$$NOISCR D
 .W " <td dir=""LTR"" align=""center"" width=""10%"">"
 .N ISCR S ISCR=$S($$ISCR^W4L(N):"ok",1:"`l")
 .W "   "_$$RKV(ISCR,"H")
 .W " </td>"
 ;
 I '$$NOGDCR D
 .W " <td dir=""LTR"" align=""right"" width=""10%"">"
 .W "   "_$$RKV($J($$GDCR^W4L(N),2,2))
 .W " </td>"
 ;
 I '$$NOGROUP D
 .W " <td align=""right"" width=""10%"">"
 .W "   "_$$RKV($$SUGL1^W4L(N),"H")
 .W " </td>"
 .W " <td dir=""LTR"" align=""center"" "
 .N AH S AH=$$AH^W4L(N)
 .I AH W " style=""color:green;font-weight:bold"" "
 .W " width=""5%"">"
 .W "   "_$$RKV(+$$AH^W4L(N))
 .W " </td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
RKV(RKV,PR) ;
 I $G(RKV)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(RKV)
 I RKV'<0 Q RKV
 Q "<span style=""color:red"">"_RKV_"</span>"
 ;
EX(RKV,RG) ;
 S RKV=$TR(RKV,","," ")
 I $G(RG)="H" S RKV=$$^%W1D2U(RKV)
 Q RKV
 ;
SRCH(SRCH,PR)
 S SRCH=$$CNWEB^%L1FRM(SRCH) I $L(SRCH) D
 .S SRCH=$$SPA^%L1FRM(SRCH)
 .I $G(PR)="TEL" S SRCH=$TR(SRCH,"-!\/_ ","")
 .I $G(PR)="H" S SRCH=$$INVH^%L1FRM(SRCH)
 Q SRCH
 ;
NOCOLCOMP(STAM) ;
 Q $G(%ARG("NOCOL1"))!$$^W4LKH
 ;
NOTZ(STAM) ;
 Q $G(%ARG("NOCOL2"))
 ;
NOCOLEMAIL(STAM) ;
 Q $G(%ARG("NOCOL3"))
 ;
NOCOLTEL1(STAM) ;
 Q $G(%ARG("NOCOL4"))
 ;
NOCOLTEL2(STAM) ;
 Q $G(%ARG("NOCOL5"))
 ;
NOCOLADR(STAM) ;
 Q $G(%ARG("NOCOL6"))
 ;
NOCOLCITY(STAM) ;
 Q $G(%ARG("NOCOL7"))
 ;
NOISCR(STAM) ;
 Q $G(%ARG("NOCOL8"))
 ;
NOGDCR(STAM) ;
 Q $G(%ARG("NOCOL9"))
 ;
NOGROUP(STAM) ;
 Q $G(%ARG("NOCOL10"))
 ;
 ;
CRVRM(MSDR,MSD) ;
 N (JB,%ARG,MSDR,MSD)
 S MSDR=$G(MSDR)
 S MSD=$G(MSD)
 I 'MSDR,'MSD,$$ONLINE^W4DLVCSR Q
 N I,N
 D KILLVRM
 D GL^W3L S I=0
 ;
 S N=999 F  S N=$O(@GL@(N)) Q:N=""  D
 .I MSD,'$G(MSDR),$D(^[$$^W3MAIN]W3LINKI)>9,'$D(^[$$^W3MAIN]W3LINKI(N,MSD)) Q
 .S OK=1 I MSDR S OK=0 D
 ..N MSD
 ..S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D:$G(^(MSD))  Q:OK
 ...I $D(^[$$^W3MAIN]W3LINKI(N,MSD)) S OK=1
 .Q:'OK
 .S IND=N
 .I $G(%ARG("SORT")) S IND=$$ABC(N)
 .S @$$^W4MAIN("VRM")@(IND)=N
 .S COMP=$$INVH^%L1FRM($$COMP^W3L(N))
 .I COMP'="" S @$$^W4MAIN("VRMCOMP")@(COMP)=""
 .S CITY=$$IR^W3L(N) I CITY'="" D
 ..S CITY=$$W4CITY(CITY)
 ..S @$$^W4MAIN("VRMCITY")@($$INVH^%L1FRM(CITY))=""
 Q
 ;
 ;
SELCOMP ;
 W "<select id=""comp"">",!
 W "<option value="""">"_$$^%W1DICT("ALLCOMPANIES")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4MAIN("VRMCOMP")@(N)) Q:N=""  D
 .W "<option value="""_$$CLWEB^%L1FRM(N)_""">"_$$H2U^%L1FRM($$INVH^%L1FRM(N))_"</option>",!
 W "</select>",!
 Q
SELCITY ;
 W "<select id=""city"">",!
 W "<option value="""">"_$$^%W1DICT("ALLCITIES")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4MAIN("VRMCITY")@(N)) Q:N=""  D
 .W "<option value="""_$$CLWEB^%L1FRM(N)_""">"_$$H2U^%L1FRM($$INVH^%L1FRM(N))_"</option>",!
 W "</select>",!
 Q
 ;
COL ;
 I '$$^W4LKH D
 .W "<tr><td>"_$$^%W1DICT("COMPANYNAME")_"<td><td><input type=""checkbox"" checked=""checked"" id=""col1"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TZ")_"<td><td><input type=""checkbox"" id=""col2"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("EMAIL")_"<td><td><input type=""checkbox"" id=""col3"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TEL1")_"<td><td><input type=""checkbox"" id=""col4"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TEL2")_"<td><td><input type=""checkbox"" id=""col5"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDRESS")_"<td><td><input type=""checkbox"" id=""col6"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("CITY")_"<td><td><input type=""checkbox"" id=""col7"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ISCR")_"<td><td><input type=""checkbox"" id=""col8"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("GDCR")_"<td><td><input type=""checkbox"" id=""col9"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("CUSTGROUP")_"<td><td><input type=""checkbox"" id=""col10"" checked=""checked"" /></td></tr>",!
 Q
 ;
KILLVRM ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMCOMP")
 K @$$^W4MAIN("VRMCITY")
 Q
 ;
INIT ;
 D KILLVRM
 I $G(%ARG("MSDR")) D
 .S %W1LNG=$$LNG^W3MSDR(%ARG("MSDR"))
 .D PUT^%W1PRM("LNG",%W1LNG)
 ;
 D ^W3CSS
 ;
 D CRVRM($G(%ARG("MSDR")),$G(%ARG("MSD")))
 ;
 I '$$ONLINE^W4DLVCSR,'$$DLVWEB^W4DLVCSR D  G EIN
 .D GL^W3L N IND
 .S N=999 F  S N=$O(@GL@(N)) Q:N=""  D
 ..S IND=N
 ..I $G(%ARG("SORT")) S IND=$$ABC(N)
 ..M @$$^W4MAIN("VRM")@(IND)=N
 ;
 I $$DLVWEB^W4DLVCSR D CRDLVWEB G EIN
 ;
 ;;I $$ONLINE^W4DLVCSR D
 ;;D CRVRM($G(%ARG("MSDR")),$G(%ARG("MSD")))
 ;
EIN Q
 ;
 ;
HEADER ;
 W "<div dir="""_$$^%W1DIR_""" style="""_$$FONTFM^W3CSS_""">",!
 ;
 I '$G(%ARG("W4LKHED")) D DIVEXC
 ;
 W "<table width=""90%"">",!
 W " <tr style="""_$$FONTFM^W3CSS_""">"
  W " <td width=""30%"" >"
    W $$^%W1DICT("ABCSORT")_" <input type=""checkbox"" id=""Sort"" "
     I +$G(%ARG("SORT"))=1 W " checked=""checked"" "
     W " onClick=""Sort()"" "
    W ">",!
  W "</td>"
 
  W " <td style=""font-size:"_$$^W3FSZ(16)_";text-align:center"">"
    W $$^%W1DICT("CUSTOMERSLIST")
  W " </td>",!
 
  W " <td width=""30%"">&nbsp;</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 I $G(%ARG("SUGL")) D
 .S SUGL=%ARG("SUGL"),SUGL1=$G(@$$^W4GL("SUGL")@(SUGL))
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("CUSTGROUP")_" "_SUGL_" <b>"_$$H2U^%L1FRM(SUGL1)_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("LKH")) D
 .S LKH=%ARG("LKH"),LKH1=$G(@$$^W4GL("LKH")@(LKH))
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("CUSTOMER")_" "_LKH_" <b>"_$$H2U^%L1FRM(LKH1)_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("CITY"))'="" D
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("CITY")_" : <b>"_$$H2U^%L1FRM($$INVH^%L1FRM(%ARG("CITY")))_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("COMP"))'="" D
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("COMPANY")_" : <b>"_$$H2U^%L1FRM($$INVH^%L1FRM(%ARG("COMP")))_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("VALID"))=1 D
 .W $$^%W1DICT("VALIDCUSTOMERS")
 I $G(%ARG("VALID"))=2 D
 .W $$^%W1DICT("NOVALIDCUSTOMERS")
 ;
 W "<br>",!
 ;
 W "</div>",!
 Q
 ;
 ;
KOT ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black;font-size:"_$$^W3FSZ(10)_""" width=""98%"">",!
 W " <tr id=""trth"" style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
    W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)
 W """ >"
 W "  <th>"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W "  <th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
 W "  <th width=""25%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 I '$$NOCOLCOMP D
 .W " <th width=""20%"">"
 .W "  "_$$^%W1DICT("COMPANYNAME")
 .W " </th>"
 I '$$NOTZ D
 .W " <th>"
 .W "  "_$$^%W1DICT("TZ")
 .W " </th>"
 I '$$NOCOLEMAIL D
 .W " <th>"
 .W "  "_$$^%W1DICT("EMAIL")
 .W " </th>"
 I '$$NOCOLTEL1 D
 .W " <th>"
 .W "  "_$$^%W1DICT("TEL1")
 .W " </th>"
 I '$$NOCOLTEL2 D
 .W " <th>"
 .W "  "_$$^%W1DICT("TEL2")
 .W " </th>"
 I '$$NOCOLADR D
 .W " <th width=""20%"">"
 .W "  "_$$^%W1DICT("ADDRESS")
 .W " </th>"
 I '$$NOCOLCITY D
 .W " <th width=""10%"">"
 .W "  "_$$^%W1DICT("CITY")
 .W " </th>"
 I '$$NOISCR D
 .W " <th>"
 .W "  "_$$^%W1DICT("ISCR")
 .W " </th>"
 I '$$NOGDCR D
 .W " <th>"
 .W "  "_$$^%W1DICT("GDCR")
 .W " </th>"
 I '$$NOGROUP D
 .W " <th>"
 .W "  "_$$^%W1DICT("CUSTGROUP")
 .W " </th>"
 .W " <th>"
 .W "  "_$$^%W1DICT("DISCPERCENT")
 .W " </th>"
 W "</tr>"
 Q
 ;
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
ABC(N) ;
 D GL^W3L
 N NM S NM=$$LKH^W3L(N)
 Q $$^W4ABCIND(N,NM)
 ;
LPTMDB(STAM) ;
 Q $G(@$$^W4PRM@("MDBLK"))
 ;
MDBPC(JB,GL) ;
 I $G(GL)="" S GL=$$^W4MAIN("VRM1")
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N PRINT,IND,N
 S PRINT=$$LPTMDB Q:'$L(PRINT)
 S IND="" F  S IND=$O(@GL@(IND)) Q:IND=""  D
 .S N=$G(^(IND)) I 'N S N=IND
 .I $G(@$$^W4GL("P1EZL")@(N)) Q
 .D MDBBG^W4MDBPC(PRINT)
 . D PCMDB(PRINT,"ceakl")
 . D PCMDB(PRINT,$$LKH^W4L(N))
 . D PCMDB(PRINT,$$KTV2^W4L(N))
 . D PCMDB(PRINT,$$MIKUD^W4L(N)_" "_$$CITY^W4L(N))
 .D CLSNBC^W4MDBPC(PRINT)
 Q
 ;
PCMDB(PRINT,TXT) ;
 D PC^W4MDBPC(PRINT,TXT)
 Q
 ;
DIVEXC ;
 W "<div width=""100%"" id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 N FLCSV,FLTXT,DIR,FL,COD
 S FLCSV=$$FLCSV("W")
  ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
   ;
   W "<td width=""15%"">&nbsp;</td>"
   ;
   W "<td>"
    W " <img id=""imgsrc"" src=""w4find.png"" onClick=""SearchText()"" "
    W " style=""cursor:pointer;width:"_$$^W4KF(25)_"px;height:"_$$^W4KF(25)_"px"" />"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 Q
 ;
 ;
FLCSV(PR) ; 
 N COD,DIR,IND
 S COD="W3HZGLK"
 S DIR=""
 I $G(PR)="L" S DIR=$$DIRL^%W1PCEX
 I $G(PR)="W" S DIR=$$DIRWEB^%W1PCEX
 S IND=COD_$$^W4MYDVN
 S FL=COD_$$^W4MYDVN ;;_"_"_$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 S FLCSV=DIR_FL_".csv"
 Q FLCSV
 ;
CRDLVWEB ;
 I $G(%ARG("MSDR")),'$G(%ARG("MSD")) D  Q
 .N MSD,MSDR,IND,N S MSDR=$G(%ARG("MSDR")) 
 .S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 ..N UCI S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 ..S N=999 F  S N=$O(^[UCI]LKH(N)) Q:N=""  D
 ...S IND=N
 ...I $G(%ARG("SORT")) S IND=$$ABC(N)
 ...S @$$^W4MAIN("VRM")@(IND)=N
 ;
 I $G(%ARG("MSDR")),'$G(%ARG("MSD")) D  Q
 .N MSD,MSDR,IND,N S MSDR=$G(%ARG("MSDR")),MSD=%ARG("MSDR")
 .N UCI S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 .S N=999 F  S N=$O(^[UCI]LKH(N)) Q:N=""  D
 ..S IND=N
 ..I $G(%ARG("SORT")) S IND=$$ABC(N)
 ..S @$$^W4MAIN("VRM")@(IND)=N
 Q
 ;
W4CITY(CITY) ; 
 N OK S OK=0
 N N1 S N1="" F  S N1=$O(@$$^W4GL("W4CITY")@(N1)) Q:N1=""  D  Q:OK
 .I $D(@$$^W4GL("W4CITY")@(N1,CITY)),$G(@$$^W4GL("W4CITY")@(N1))'="" D
 ..S CITY=$G(@$$^W4GL("W4CITY")@(N1)) S OK=1
 ;
 Q CITY 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZGLK0
W3HZGLK ; [ 08.08.22 13:46 ] [ 12.06.22 10:50 ] [ 10.06.22 14:35 ] 
 N (JB,%ARG,%REM) D ^%L1TS
 D KILL^%W3DEB("W3HZGLK")
 D PUT^%W3DEB("W3HZGLK","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 S MSD=$G(%ARG("MSD"))
 I 'MSD S MSD=$$GET^%W1PRM("MSD")
 I 'MSD,'$G(%ARG("MSDR")) W " Restaurant number is not defined ! " Q
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D BUT
 ;
 D HEADER
 ;
 W "<br>",!
 S PG=1,RL=38
 D KOT
 ;
 S I=0,K=0,LK=""
 ;
 K @$$^W4MAIN("VRM1")
 I $G(%ARG("TZ")) D  D:$L(LK) HZGLK(LK) G BUT
 .N IND S IND=""
 .F  S IND=$O(@$$^W4MAIN("VRM")@(IND)) Q:IND=""  S N=$G(^(IND)) I +$$TZ^W4L(N)=+%ARG("TZ") S LK=N Q
 ;
 S MELKH=$TR($$SPA^%L1FRM($G(%ARG("MELKH"))),"-","")
 S ADLKH=$TR($$SPA^%L1FRM($G(%ARG("ADLKH"))),"-","")
 S SLKH1=$$SRCH($G(%ARG("LKH1")),"H")
 S SIR=$$SRCH($G(%ARG("IR")),"H")
 S SSTREET=$$SRCH($G(%ARG("STREET")),"H")
 S SCOMP=$$SRCH($G(%ARG("COMP")),"H")
 S STEL=$$SRCH($G(%ARG("TEL")),"TEL")
 S SPELE=$$SRCH($G(%ARG("PELE")),"TEL")
 S SCITY=$$SRCH($G(%ARG("CITY")),"H")
 S SHOME=$$SRCH($G(%ARG("HOME")))
 S SFLAT=$$SRCH($G(%ARG("FLAT")))
 ;
 D PUT^%W3DEB("W3HZGLK","SLKH1=SLKH1 & SIR=SIR & STEL=STEL& SCITY=SCITY")
 ;
 S FLEX=$$FLCSV("L")
 ;
 O FLEX:(NEWVERSION:WRITE)
 U FLEX
 S HD="gewl 'qn,gewl my,dxag,t.g,l""`ec,'lh,ciip,qwt,zaezk,xir,dveaw,dgpd %"
 S HD1="" F J=1:1:$L(HD,",") S HD1=HD1_$TR($$INVH^%L1FRM($P(HD,",",J)),TS0,TS1)_","
 S HD1=$E(HD1,1,$L(HD1)-1)
 W HD1,!
 U 0
 ;
 S IND="" F  S IND=$O(@$$^W4MAIN("VRM")@(IND)) Q:IND=""  D
 .S N=$G(^(IND))
 .I MELKH,$TR(N,"-","")<MELKH Q
 .I ADLKH,$TR(N,"-","")>ADLKH Q
 .S LKH1=$$LKH^W3L(N)
 .I $G(%ARG("VALID"))=1,'$$MAZAV^W4L(N) Q
 .I $G(%ARG("VALID"))=2,$$MAZAV^W4L(N) Q
 .I $G(%ARG("CREDONLY")),'$$ISCR^W4L(N) Q
 .S OK=1
 .
 .I SLKH1'?." " D  Q:'OK
 ..I LKH1'[SLKH1 S OK=0
 .I $G(%ARG("SUGL")),$$SUGL^W4L(N)'=%ARG("SUGL") Q
 .
 .S IR=$$IR^W3L(N)
 .;;S IR=$$W4CITY(IR)
 .I SIR'?." " D  Q:'OK
 ..I IR'=SIR S OK=0
 .
 .I $L(STEL) D  Q:'OK
 ..S TELA=$TR($$TELA^W3L(N),"-","")
 ..I TELA=STEL Q
 ..S TELB=$TR($$TELB^W3L(N),"-","")
 ..I TELB=STEL Q
 ..S PELE=$TR($$PELE^W3L(N),"-","")
 ..I PELE'=STEL S OK=0
 .
 .I $L(SPELE) D  Q:'OK
 ..S TELA=$TR($$TELA^W3L(N),"-","")
 ..I TELA=SPELE Q
 ..S TELB=$TR($$TELB^W3L(N),"-","")
 ..I TELB=SPELE Q
 ..S PELE=$TR($$PELE^W3L(N),"-","")
 ..I PELE'=SPELE S OK=0
 .
 .S COMP=$$COMP^W3L(N)
 .I $L(SCOMP) D  Q:'OK
 ..I COMP'=SCOMP S OK=0
 .
 .S CITY=$$IR^W4L(N)
 .I $L(SCITY) D  Q:'OK
 ..I CITY'=SCITY S OK=0
 .
 .S STREET=$$KTV^W3L(N)
 .I $L(SSTREET) D  Q:'OK
 ..I STREET'[SSTREET S OK=0
 .
 .S HOME=$$BAIT^W3L(N)
 .I $L(SHOME) D  Q:'OK
 ..I HOME'=SHOME S OK=0
 .
 .S FLAT=$$DIRA^W3L(N)
 .I $L(SFLAT) D  Q:'OK
 ..I FLAT'=SFLAT S OK=0
 .
 .U 0
 .D HZGLK(N)
 .
 .U FLEX
 .S A=""""_N_""","_$$EX($$LKH^W4L(N),"H")_","_$$EX($$COMP^W4L(N),"H")_","
 .S A=A_$$TZ^W4L(N)_","_$$EX($$EMAIL^W4L(N))_","_$$EX($$TELB^W4L(N))_","
 .S A=A_$$PELE^W4L(N)_","_$$FAX^W4L(N)_","_$$EX($$KTV2^W4L(N),"H")_","_$$EX($$IR^W4L(N),"H")_","
 .S A=A_$$SUGL^W4L(N)_","_$$AH^W4L(N)
 .W A,!
 .U 0
 ;
 C FLEX
 ;
 W "</table>",!
 W "</div>",!
 W "<br />",!
 W "<br />",!
 D BUT 
 Q
 ;
BUT ;
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 I '$$DLV^W4DLVCSR D
 .W "<table dir="""_$$^%W1DIR_""">",!
 .W "<tr><td>"
 . D ^W4BUTTON("Print",$$^%W1DICT("PRINT"),"Print()","color:green")
 .W "</td>"
 .
 .W "<td>&nbsp;</td>"
 .
 .I $$LPTMDB D
 ..W "<td>"
 .. D ^W4BUTTON("Mdb",$$^%W1DICT("MDBPC"),"Mdb()","color:blue")
 ..W "</td>"
 .
 .W "<td>"
 . D ^W4BUTTON("Back",$$^%W1DICT("BACK"),"Back()","color:red")
 .W "</td>"
 ;
 I $$DLV^W4DLVCSR D   ;-- HIPUS FROM MISHLOHIM
 .W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""10%"" cellpadding=""10"">",!
 .W " <tr style=""height:"_$$^W4KF(60)_"px;background-color:white;cursor:pointer"" >"
 . D BTN^W3ORDDET("Back",$$^%W1DICT("BACK"),"Back()","background-color:red;color:white;font-size:"_$$^W4KF(18))
 ;
 W " </tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 Q
 ;
 ;
HZGLK(N) ;
 S I=I+1
 S K=K+1
 I K>RL D
 .W "</table>",!
 .W "<br>",!
 .D PGBREAK
 .S PG=PG+1
 .W "<span width=""96%"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("PAGE")_" "_PG_"</span>",!
 .D KOT S PG=PG+1
 .S K=0
 ;
 S @$$^W4MAIN("VRM1")@(N)=N
 ;
 W "<tr"
 ;
 D
 .W " onClick=""OpenCust('"_N_"')"" "
 .W " style=""cursor:pointer"
 .I '$$MAZAV^W4L(N) W ";background-color:pink"
 .I +$$MAZAV^W4L(N)=.5 W ";background-color:lightyellow"
 .W """ "
 I $$DLV^W4DLVCSR W " height="""_$$^W4KF(30)_"px"" "
 W ">"
 W " <td style=""background-color:#fafad2"" width=""5%"" "
 W """>"
 W "     "_I
 W " </td>"
 W " <td "
 I N=$$GET^%W1PRM("CURLKH") W "style=""border:2px solid brown"""
 W ">"
 W "     "_N
 W " </td>"
 W " <td>"
 W "   "_$$RKV($$LKH^W3L(N),"H")
 W " </td>"
 ;
 I '$$NOCOLCOMP D
 .W " <td>"
 .W "   "_$$RKV($$COMP^W3L(N),"H")
 .W " </td>"
 ;
 I '$$NOTZ D
 .W " <td>"
 .W "   "_$$RKV($$TZ^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLEMAIL D
 .W " <td dir=""LTR"" align=""center"">"
 .W "   "_$$RKV($$EMAIL^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLTEL1 D
 .W " <td dir=""LTR"" align=""center"">"
 .W "   "_$$RKV($$TELB^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLTEL2 D
 .W " <td dir=""LTR"" align=""center"">"
 .W "   "_$$RKV($$PELE^W3L(N))
 .W " </td>"
 ;
 I '$$NOCOLADR D
 .W " <td>"
 .W "   "_$$RKV($$KTV2^W3L(N),"H")
 .W " </td>"
 ;
 I '$$NOCOLCITY D
 .W " <td>"
 .W "   "_$$RKV($$IR^W3L(N),"H")
 .W " </td>"
 ;
 I '$$NOISCR D
 .W " <td dir=""LTR"" align=""center"" width=""10%"">"
 .N ISCR S ISCR=$S($$ISCR^W4L(N):"ok",1:"`l")
 .W "   "_$$RKV(ISCR,"H")
 .W " </td>"
 ;
 I '$$NOGDCR D
 .W " <td dir=""LTR"" align=""right"" width=""10%"">"
 .W "   "_$$RKV($J($$GDCR^W4L(N),2,2))
 .W " </td>"
 ;
 I '$$NOGROUP D
 .W " <td align=""right"" width=""10%"">"
 .W "   "_$$RKV($$SUGL1^W4L(N),"H")
 .W " </td>"
 .W " <td dir=""LTR"" align=""center"" "
 .N AH S AH=$$AH^W4L(N)
 .I AH W " style=""color:green;font-weight:bold"" "
 .W " width=""5%"">"
 .W "   "_$$RKV(+$$AH^W4L(N))
 .W " </td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
RKV(RKV,PR) ;
 I $G(RKV)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(RKV)
 I RKV'<0 Q RKV
 Q "<span style=""color:red"">"_RKV_"</span>"
 ;
EX(RKV,RG) ;
 S RKV=$TR(RKV,","," ")
 I $G(RG)="H" S RKV=$TR($$INVH^%L1FRM(RKV),TS0,TS1)
 Q RKV
 ;
SRCH(SRCH,PR)
 S SRCH=$$CNWEB^%L1FRM(SRCH) I $L(SRCH) D
 .S SRCH=$$SPA^%L1FRM(SRCH)
 .I $G(PR)="TEL" S SRCH=$TR(SRCH,"-!\/_ ","")
 .I $G(PR)="H" S SRCH=$$INVH^%L1FRM(SRCH)
 Q SRCH
 ;
NOCOLCOMP(STAM) ;
 Q $G(%ARG("NOCOL1"))!$$^W4LKH
 ;
NOTZ(STAM) ;
 Q $G(%ARG("NOCOL2"))
 ;
NOCOLEMAIL(STAM) ;
 Q $G(%ARG("NOCOL3"))
 ;
NOCOLTEL1(STAM) ;
 Q $G(%ARG("NOCOL4"))
 ;
NOCOLTEL2(STAM) ;
 Q $G(%ARG("NOCOL5"))
 ;
NOCOLADR(STAM) ;
 Q $G(%ARG("NOCOL6"))
 ;
NOCOLCITY(STAM) ;
 Q $G(%ARG("NOCOL7"))
 ;
NOISCR(STAM) ;
 Q $G(%ARG("NOCOL8"))
 ;
NOGDCR(STAM) ;
 Q $G(%ARG("NOCOL9"))
 ;
NOGROUP(STAM) ;
 Q $G(%ARG("NOCOL10"))
 ;
 ;
CRVRM(MSDR,MSD) ;
 N (JB,%ARG,MSDR,MSD)
 S MSDR=$G(MSDR)
 S MSD=$G(MSD)
 I 'MSDR,'MSD,$$ONLINE^W4DLVCSR Q
 N I,N
 D KILLVRM
 D GL^W3L S I=0
 ;
 S N=999 F  S N=$O(@GL@(N)) Q:N=""  D
 .I MSD,'$G(MSDR),$D(^[$$^W3MAIN]W3LINKI)>9,'$D(^[$$^W3MAIN]W3LINKI(N,MSD)) Q
 .S OK=1 I MSDR S OK=0 D
 ..N MSD
 ..S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D:$G(^(MSD))  Q:OK
 ...I $D(^[$$^W3MAIN]W3LINKI(N,MSD)) S OK=1
 .Q:'OK
 .S IND=N
 .I $G(%ARG("SORT")) S IND=$$ABC(N)
 .S @$$^W4MAIN("VRM")@(IND)=N
 .S COMP=$$INVH^%L1FRM($$COMP^W3L(N))
 .I COMP'="" S @$$^W4MAIN("VRMCOMP")@(COMP)=""
 .S CITY=$$IR^W3L(N) I CITY'="" D
 ..S CITY=$$W4CITY(CITY)
 ..S @$$^W4MAIN("VRMCITY")@($$INVH^%L1FRM(CITY))=""
 Q
 ;
 ;
SELCOMP ;
 W "<select id=""comp"">",!
 W "<option value="""">"_$$^%W1DICT("ALLCOMPANIES")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4MAIN("VRMCOMP")@(N)) Q:N=""  D
 .W "<option value="""_$$CLWEB^%L1FRM(N)_""">"_$$H2U^%L1FRM($$INVH^%L1FRM(N))_"</option>",!
 W "</select>",!
 Q
SELCITY ;
 W "<select id=""city"">",!
 W "<option value="""">"_$$^%W1DICT("ALLCITIES")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4MAIN("VRMCITY")@(N)) Q:N=""  D
 .W "<option value="""_$$CLWEB^%L1FRM(N)_""">"_$$H2U^%L1FRM($$INVH^%L1FRM(N))_"</option>",!
 W "</select>",!
 Q
 ;
COL ;
 I '$$^W4LKH D
 .W "<tr><td>"_$$^%W1DICT("COMPANYNAME")_"<td><td><input type=""checkbox"" checked=""checked"" id=""col1"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TZ")_"<td><td><input type=""checkbox"" id=""col2"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("EMAIL")_"<td><td><input type=""checkbox"" id=""col3"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TEL1")_"<td><td><input type=""checkbox"" id=""col4"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TEL2")_"<td><td><input type=""checkbox"" id=""col5"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDRESS")_"<td><td><input type=""checkbox"" id=""col6"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("CITY")_"<td><td><input type=""checkbox"" id=""col7"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ISCR")_"<td><td><input type=""checkbox"" id=""col8"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("GDCR")_"<td><td><input type=""checkbox"" id=""col9"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("CUSTGROUP")_"<td><td><input type=""checkbox"" id=""col10"" checked=""checked"" /></td></tr>",!
 Q
 ;
KILLVRM ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMCOMP")
 K @$$^W4MAIN("VRMCITY")
 Q
 ;
INIT ;
 D KILLVRM
 I $G(%ARG("MSDR")) D
 .S %W1LNG=$$LNG^W3MSDR(%ARG("MSDR"))
 .D PUT^%W1PRM("LNG",%W1LNG)
 ;
 D ^W3CSS
 ;
 D CRVRM($G(%ARG("MSDR")),$G(%ARG("MSD")))
 ;
 I '$$ONLINE^W4DLVCSR,'$$DLVWEB^W4DLVCSR D  G EIN
 .D GL^W3L N IND
 .S N=999 F  S N=$O(@GL@(N)) Q:N=""  D
 ..S IND=N
 ..I $G(%ARG("SORT")) S IND=$$ABC(N)
 ..M @$$^W4MAIN("VRM")@(IND)=N
 ;
 I $$DLVWEB^W4DLVCSR D CRDLVWEB G EIN
 ;
 ;;I $$ONLINE^W4DLVCSR D
 ;;D CRVRM($G(%ARG("MSDR")),$G(%ARG("MSD")))
 ;
EIN Q
 ;
 ;
HEADER ;
 W "<div dir="""_$$^%W1DIR_""" style="""_$$FONTFM^W3CSS_""">",!
 ;
 I '$G(%ARG("W4LKHED")) D DIVEXC
 ;
 W "<table width=""90%"">",!
 W " <tr style="""_$$FONTFM^W3CSS_""">"
  W " <td width=""30%"" >"
    W $$^%W1DICT("ABCSORT")_" <input type=""checkbox"" id=""Sort"" "
     I +$G(%ARG("SORT"))=1 W " checked=""checked"" "
     W " onClick=""Sort()"" "
    W ">",!
  W "</td>"
 
  W " <td style=""font-size:"_$$^W3FSZ(16)_";text-align:center"">"
    W $$^%W1DICT("CUSTOMERSLIST")
  W " </td>",!
 
  W " <td width=""30%"">&nbsp;</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 I $G(%ARG("SUGL")) D
 .S SUGL=%ARG("SUGL"),SUGL1=$G(@$$^W4GL("SUGL")@(SUGL))
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("CUSTGROUP")_" "_SUGL_" <b>"_$$H2U^%L1FRM(SUGL1)_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("LKH")) D
 .S LKH=%ARG("LKH"),LKH1=$G(@$$^W4GL("LKH")@(LKH))
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("CUSTOMER")_" "_LKH_" <b>"_$$H2U^%L1FRM(LKH1)_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("CITY"))'="" D
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("CITY")_" : <b>"_$$H2U^%L1FRM($$INVH^%L1FRM(%ARG("CITY")))_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("COMP"))'="" D
 .W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("COMPANY")_" : <b>"_$$H2U^%L1FRM($$INVH^%L1FRM(%ARG("COMP")))_"<b>"
 .W "</span>",!
 .W "<br>",!
 ;
 I $G(%ARG("VALID"))=1 D
 .W $$^%W1DICT("VALIDCUSTOMERS")
 I $G(%ARG("VALID"))=2 D
 .W $$^%W1DICT("NOVALIDCUSTOMERS")
 ;
 W "<br>",!
 ;
 W "</div>",!
 Q
 ;
 ;
KOT ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black;font-size:"_$$^W3FSZ(10)_""" width=""98%"">",!
 W " <tr id=""trth"" style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
    W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)
 W """ >"
 W "  <th>"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W "  <th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
 W "  <th width=""25%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 I '$$NOCOLCOMP D
 .W " <th width=""20%"">"
 .W "  "_$$^%W1DICT("COMPANYNAME")
 .W " </th>"
 I '$$NOTZ D
 .W " <th>"
 .W "  "_$$^%W1DICT("TZ")
 .W " </th>"
 I '$$NOCOLEMAIL D
 .W " <th>"
 .W "  "_$$^%W1DICT("EMAIL")
 .W " </th>"
 I '$$NOCOLTEL1 D
 .W " <th>"
 .W "  "_$$^%W1DICT("TEL1")
 .W " </th>"
 I '$$NOCOLTEL2 D
 .W " <th>"
 .W "  "_$$^%W1DICT("TEL2")
 .W " </th>"
 I '$$NOCOLADR D
 .W " <th width=""20%"">"
 .W "  "_$$^%W1DICT("ADDRESS")
 .W " </th>"
 I '$$NOCOLCITY D
 .W " <th width=""10%"">"
 .W "  "_$$^%W1DICT("CITY")
 .W " </th>"
 I '$$NOISCR D
 .W " <th>"
 .W "  "_$$^%W1DICT("ISCR")
 .W " </th>"
 I '$$NOGDCR D
 .W " <th>"
 .W "  "_$$^%W1DICT("GDCR")
 .W " </th>"
 I '$$NOGROUP D
 .W " <th>"
 .W "  "_$$^%W1DICT("CUSTGROUP")
 .W " </th>"
 .W " <th>"
 .W "  "_$$^%W1DICT("DISCPERCENT")
 .W " </th>"
 W "</tr>"
 Q
 ;
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
ABC(N) ;
 D GL^W3L
 N NM S NM=$$LKH^W3L(N)
 Q $$^W4ABCIND(N,NM)
 ;
LPTMDB(STAM) ;
 Q $G(@$$^W4PRM@("MDBLK"))
 ;
MDBPC(JB,GL) ;
 I $G(GL)="" S GL=$$^W4MAIN("VRM1")
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N PRINT,IND,N
 S PRINT=$$LPTMDB Q:'$L(PRINT)
 S IND="" F  S IND=$O(@GL@(IND)) Q:IND=""  D
 .S N=$G(^(IND)) I 'N S N=IND
 .I $G(@$$^W4GL("P1EZL")@(N)) Q
 .D MDBBG^W4MDBPC(PRINT)
 . D PCMDB(PRINT,"ceakl")
 . D PCMDB(PRINT,$$LKH^W4L(N))
 . D PCMDB(PRINT,$$KTV2^W4L(N))
 . D PCMDB(PRINT,$$MIKUD^W4L(N)_" "_$$CITY^W4L(N))
 .D CLSNBC^W4MDBPC(PRINT)
 Q
 ;
PCMDB(PRINT,TXT) ;
 D PC^W4MDBPC(PRINT,TXT)
 Q
 ;
DIVEXC ;
 W "<div width=""100%"" id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 N FLCSV,FLTXT,DIR,FL,COD
 S FLCSV=$$FLCSV("W")
  ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 Q
 ;
 ;
FLCSV(PR) ; 
 N COD,DIR,IND
 S COD="W3HZGLK"
 S DIR=""
 I $G(PR)="L" S DIR=$$DIRL^%W1PCEX
 I $G(PR)="W" S DIR=$$DIRWEB^%W1PCEX
 S IND=COD_$$^W4MYDVN
 S FL=COD_$$^W4MYDVN ;;_"_"_$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 S FLCSV=DIR_FL_".csv"
 Q FLCSV
 ;
CRDLVWEB ;
 I $G(%ARG("MSDR")),'$G(%ARG("MSD")) D  Q
 .N MSD,MSDR,IND,N S MSDR=$G(%ARG("MSDR")) 
 .S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 ..N UCI S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 ..S N=999 F  S N=$O(^[UCI]LKH(N)) Q:N=""  D
 ...S IND=N
 ...I $G(%ARG("SORT")) S IND=$$ABC(N)
 ...S @$$^W4MAIN("VRM")@(IND)=N
 ;
 I $G(%ARG("MSDR")),'$G(%ARG("MSD")) D  Q
 .N MSD,MSDR,IND,N S MSDR=$G(%ARG("MSDR")),MSD=%ARG("MSDR")
 .N UCI S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 .S N=999 F  S N=$O(^[UCI]LKH(N)) Q:N=""  D
 ..S IND=N
 ..I $G(%ARG("SORT")) S IND=$$ABC(N)
 ..S @$$^W4MAIN("VRM")@(IND)=N
 Q
 ;
W4CITY(CITY) ; 
 N OK S OK=0
 N N1 S N1="" F  S N1=$O(@$$^W4GL("W4CITY")@(N1)) Q:N1=""  D  Q:OK
 .I $D(@$$^W4GL("W4CITY")@(N1,CITY)),$G(@$$^W4GL("W4CITY")@(N1))'="" D
 ..S CITY=$G(@$$^W4GL("W4CITY")@(N1)) S OK=1
 ;
 Q CITY 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZGLKH
W3HZGLKH ; [ 28.06.22 09:50 ] [ 19.06.22 09:16 ] [ 27.06.19 06:57 ] 
  W "<table dir="_$$^%W1DIR_" padding=""1px"" border=""0"" "
  W " width=""100%"" style=""font-size:"_$$^W3FSZ(12)
  W ";color:black;font-weight:bold;"_$$FONTFM^W3CSS_""" >",!
   W "<tr>"
     W "<td>"_$$^%W1DICT("CUSTGROUP")_"</td>"
     W "<td>" D GROUPS^W4LHB W "</td>"
     ;
     I $$^W4TABLET=2 W "</tr>",!,"<tr>"
     ;
     W "<td>"_$$^%W1DICT("MELKH")_"</td>"
     W "<td>"
      W "<input type=""text"" size=""10"" maxlength=""12"" id=""melkh"" >"
     W "</td>"
     W "<td>"_$$^%W1DICT("ADLKH")_"</td>"
     W "<td>"
      W "<input type=""text"" size=""10"" maxlength=""12"" id=""adlkh"" >"
     W "</td>"
     ;
     I $$^W4TABLET=2 W "</tr>",!,"<tr>"
     ;
     W "<td>"_$$^%W1DICT("CUSTOMNAME")_"</td>"
     ;
     W "<td>"
      W "<input type=""text"" size=""16"" maxlength=""22"" id=""lkhname"" >"
     W "</td>"
     ;
     I '$$^W4LKH,'$G(%ARG("W4LKHED")) D
      .W "<td>"_$$^%W1DICT("COMPANYNAME")_"</td>"
      .W "<td>" D SELCOMP^W3HZGLK W "</td>"
     ;
   W "</tr>",!
   ; 
   I $$^W4TABLET=2 W "<tr><td>&nbsp;</td></tr>",!
   ;
   W "<tr>",!
      W "<td>"_$$^%W1DICT("CITY")_"</td>"
      W "<td>" D SELCITY^W3HZGLK W "</td>"
      W "<td>"_$$^%W1DICT("TEL")_"</td>"
      W "<td><input type=""text"" size=""10"" maxlength=""12"" id=""tel"" >"
      ;
      I '$G(%ARG("W4LKHED")) D
      . I $$^W4TABLET=2 W "</tr>",!,"<tr></tr><td>&nbsp;</td><tr>"
      . W "<td>"_$$^%W1DICT("TZ")_"</td>"
      . W "<td><input type=""text"" size=""10"" maxlength=""9"" id=""tz"" >"
      W "</td>"
   W "</tr>",!
   ;
   W "<tr><td colspan=""12""><hr></td></tr>",!
   W "<tr><td colspan=""6"" align=""center"" >"
    W $$^%W1DICT("VALIDCUSTOMERS")_"&nbsp;"
    W "<input type=""radio"" name=""valid"" "
     W $S(+$G(%ARG("KIND"))=0:" checked=""checked"" ",1:"")
    W ">"
    W $$^%W1DICT("NOVALIDCUSTOMERS")_"&nbsp;"
    W "<input type=""radio"" name=""valid"" "
     W $S($G(%ARG("KIND"))=1:" checked=""checked"" ",1:"")
    W ">"
    W $$^%W1DICT("ALL")_"&nbsp;"
     W "<input type=""radio"" name=""valid"" "
      W $S(+$G(%ARG("KIND"))=2:" checked=""checked"" ",1:"")
     W ">"
   W "</td>",!
   ;
   W "<td colspan=""6"">"
    W $$^%W1DICT("CREDITCUSTOMERSONLY")_"&nbsp;"
     W "<input type=""checkbox"" id=""credonly"" "
      I $$CSR^W4DLVCSR W " checked=""checked"" "
     W ">"
   W "</td>",!
 W "</table>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZHD
W3HZHD ; [ 02.01.24 15:32 ] [ 26.12.23 10:55 ] [ 30.11.23 15:32 ] 
 Q  ;
T(STAM) ;
 I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT1" Q "NMB;NAME;COMP;TELB;PELE;EMAIL"
 I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT2" Q "NMB;CITY;STREET;HOME;FLAT;ENTRANCE;FLOOR;COMMENT;DAT:D;SHAA:T;DMSH"
 Q $$T0
 ;
R(STAM) ;
 I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT1" Q ";H;H;;;"
 I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT2" Q ";H;H;;;H;H;H;;;;"
 Q $$R0
 ;
T0(STAM) ;
 ;    1   2     3   4 5    6       7     8   9       13    14   15     16            24     27      31   32    34      38    39      40      41      42        43        47    48        49      50    51    52      53    54   55 56    57   58   59    60      62      63     64   65     67    68     69    70      71   72    73     74     75   76     77
 Q "NMB;NAME;STREET;;DAT;SHAA:T;COMMENT;HNH;DMSH;;;;FLOOR;FLAT;HOME;ENTRANCE;;;;;;;;SOAD;;;CODE;;;;CITY;PELE;;CMHD;;;;AHUZ;DATIDdd;DATIDmm;DATIDyy;SHAAhrid;SHAAmnid;;;;COMP;CREDCARD;CREDMMYY;CREDTZ;MKR;TNBCOMP;TNBCARD;TNBPAY;;EMAIL;MIKUD;FAX;TELB;HZMLAK;;CREDSUM;ADSHAA:T;TZ;CMNTIN;;CASH;CIBPAY;CPPNMB;POOLED;MYDISC;ASR;CPHPAY;KINDORD;COORD;MKR1;MKRNOM"
 ;
R0(STAM) ;
 Q "   ; H  ;  H   ;; D ;   T  ;   H   ;   ;    ;;;;  H  ;    ;    ;    H   ;;;;;;;;    ;;;    ;;;; H  ;    ;;  H ;;;;    ;       ;       ;       ;        ;        ;;;; H  ;;;;;;;;;     ;     ;   ;    ;   H  ;;;   T    ;  ;      ;;    ;      ;      ;     "
 ;
IND(FLD) ; 
 N J,MK,OK S MK=$$T0,OK=0
 F J=1:1:$L(MK,";") D  Q:OK
 .N MKFLD S MKFLD=$$SPA^%L1FRM($P(MK,";",J))
 .I MKFLD[":" S MKFLD=$P(MKFLD,":")
 .I MKFLD=FLD S OK=J
 Q OK 
 ; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZMENU
W3HZMENU ; [ 21.10.18 08:56 ] [ 17.10.18 12:26 ] [ 16.10.16 12:07 ] 
 ; IN: N - COD KVUZA
 ;     SH + ITEMSHOW - SHOW ITEM PICTURE
 ;     SH - ITEMSHOW - SHOW GROUP AFTER CHOICE
 ;     SH! - ITEMSHOW - SHOW GROUP IF WASN'T CHOICE
 ;     SH=0 - ITEMSHOW -  SHOW GROUP AFTER DELETE LINE IN ORDER
 ;     SH=0 + ITEMSHOW -  SHOW ITEM PICTURE AFTER DELETE LINE IN ORDER
 ; ---------------------------------------------------------
 N (JB,N,%ARG)
 ;
 I '$G(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 S GL="^[$$^W3MAIN]TMPTF($$^%W1JB,TF)"
 S KVZ=$$^W4PARCAT K MTXT
 I $D(@$$^W4GL("P1TFR"))=11,$G(@$$^W4GL("P1TFR")) S KVZ=$$^W4GL("P1TFR") ;--- TAFRIT JOMI
 S MSD=$$GET^%W1PRM("MSD")
 K ^[$$^W3MAIN]TMPTF($$^%W1JB,2),^[$$^W3MAIN]TMPTF($$^%W1JB,3)
 D CRSUG^W3HZTFR
 S LCOD=6 D ^W3SIDKVZ
 S N="" F  S N=$O(^[$$^W3MAIN]TMPTF($$^%W1JB,1,N)) Q:N=""  D SHOWGR(N)
 Q
 .
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
DESC(SH) ;
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 N CD S CD=$P($G(^[$$^W3MAIN]TMPTF($$^%W1JB,2,SH)),"~") I CD="" Q NODESC
 Q $$DESC1(CD)
 ;
DESC1(CD) ;
 N DESC S DESC=""
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 I '$D(@$$^W4GL("L1TIP")@("MTK",CD,1)) Q NODESC
 ;
 N I F I=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",CD,I))  D
 .N A S A=$G(^(I))
 .S DESC=DESC_$$H2U^%L1FRM($$SPA^%L1FRM(A))_" " ;"<br>"
 ;
 Q DESC
 ;
PIC(SH) ;
 N PATH,PATHL ;;S PATH="./"_$$GET^%W1PRM("MSD")_"/itp/"
 S PATH=$$WEB^W3MAIN
 S PATH=PATH_$$GET^%W1PRM("MSD")_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_$$GET^%W1PRM("MSD")_"/itp/"
 N TYPE S TYPE="jpg"
 N PRE S PRE="pic"
 I $E(SH,1,3)="min" S PRE="min"
 N NOPIC S NOPIC=PRE_"logo."_TYPE
 ;
 D PUT^%W3DEB("W3HZMENU-PIC","SH=SH")
 N PIC S PIC=""
 N CD I SH'["log",SH'["min",SH'["pic" S CD=$P($G(^[$$^W3MAIN]TMPTF($$^%W1JB,2,SH)),"~") I CD="" Q PATH_NOPIC
 I SH["log" S CD=SH
 I SH["min" S CD=$P(SH,"min",2)
 I SH["pic" S CD=$P(SH,"pic",2)
 N PICNAME S PICNAME=PRE_CD_"."_TYPE
 N FLPIC S FLPIC=PATH_PICNAME
 N FLPICL S FLPICL=PATHL_PICNAME
 D PUT^%W3DEB("W3HZMENU-PIC","FLPICL=FLPICL & FLPIC=FLPIC")
 I $$^%L1ZOS(10,FLPICL)<0 Q PATH_NOPIC
 ;
 Q FLPIC
 ;
 ;
SHOWGR(N)
 W "<div align=""center"">",!
 W "<a name=""KV"_N_"""></a>",!
 W "<br />",!
 W "<table style=""background-color:white;color:black"" width=""660px"" border=""0"" dir="""_$$^%W1DIR_""" id=""TblPrt"_N_""" >",!
 I $G(N) W "<tr><th class=""hdit"" colspan=""3"" style=""cursor:pointer"" onClick=""ShowGr1('"_N_"')"">"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"</th></tr>"
 I N'=$G(%ARG("KV")) G ESGR
 N NP,NM,MH,IHTML,I
 S I=0
 S NP="" F  S NP=$O(@$$^W4GL("PAR")@(NP)) Q:NP=""  D
 .I $$SUG^W4P(NP)'=N Q
 .W $$NP(NP)
ESGR W "</table>",!
 W "</div>",!
 W "<br />",!
 Q
NP(NP) ;
 N B S B=$G(@$$^W4GL("PAR")@(NP)) Q:B="" ""   N NM,MH,IHTML
 S NM=$P(B,"**"),MH=$P(B,"**",2)
 S MH=$J(MH,2,2)
 ;
 S IHTML="<td width=""80%"">"
 S IHTML=IHTML_$$NPNAME(NP)
 S IHTML=IHTML_$$NPDESC(NP)
 S IHTML=IHTML_"</td><td width=""8%"">"
 S IHTML=IHTML_$$NPMH(NP)
 S IHTTML=IHTML_"</td>"
 I $$PICTURE^W3PRM S IHTML=IHTML_"<td width=""12%"">"_$$NPPIC(NP)_"</td>"
 S IHTML="<tr id=""tr"_NP_""">"_IHTML_"</tr>"
 S IHTML=IHTML_"<tr><td colspan=""3"" height=""3pt"" ><hr></td></tr>"
 Q IHTML
 ;
NPNAME(NP) ;
 N IHTML
 N B S B=$G(@$$^W4GL("PAR")@(NP)) Q:B="" ""
 S NM=$P(B,"**")
 S IHTML="<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""""
 S IHTML=IHTML_" >"_$$H2U^%L1FRM(NM)_"</span><br />"
 Q IHTML
NPDESC(NP) ;
 N IHTML
 S IHTML="<span style=""color:black; font-size:"_$$^W3FSZ(11)_";"">"
 N I,ST,LINE S ST="" F I=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",NP,I))  D
 .S LINE=$G(^(I))
 .I $$^%W1DIR="RTL" S ST=$$SPA^%L1FRM(LINE)_" "_ST Q
 .I $$^%W1DIR="LTR" S ST=ST_$$SPA^%L1FRM(LINE)_" " Q
 S IHTML=IHTML_$$H2U^%L1FRM(ST)
 S IHTML=IHTML_"</span>"
 Q IHTML
NPMH(NP) ;
 N B S B=$G(@$$^W4GL("PAR")@(NP)) Q:B="" ""   N MH
 S MH=$J($P(B,"**",2),2,2)
 N IHTML
 S IHTML="<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"
 S IHTML=IHTML_MH_"</span>"
 Q IHTML
NPPIC(NP) ;
 N PIC,IHTML S PIC=$$GETPIC^W3ENTER(NP)
 S IHTML="<img src="""_$P(PIC,"~",2)_""" width=""100"" height=""67"" onMouseOver=""openPic1('"_NP_"')"" onMouseOut=""closePic1()"" >"
 Q IHTML
GETKV(KV) ;
 N A,B S A=""
 N NP S NP="" F  S NP=$O(@$$^W4GL("PAR")@(NP)) Q:NP=""  D
 .I $$SUG^W4P(NP)'=KV Q
 .I '$$P1HZTF^W4PARUS(NP) Q
 .I $$NOPAR^W4PRTVW(NP)) Q
 .S B=$G(@$$^W4GL("PAR")@(NP)) Q:B=""
 .S A=A_NP_";"
 Q A
 
 
 
 
 

W3HZMH
W3HZMH(JB) ; [ 06.03.10 12:43 ] [ 28.01.10 11:05 ] [ 26.01.10 17:55 ] [
 I '$G(JB) Q 0
 I $$GET^%W1PRM("HZMH")!$$^W3PRCOFR(JB) Q 1
 Q 0

W3HZMST
W3HZMST ; [ 16.06.26 11:57 ] [ 10.06.26 07:29 ] [ 19.03.26 15:00 ] 
NMB(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~")
 ;
NAME(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",2)
 ;
STREET(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $$SPA^%L1FRM($P($G(@GL),"~",3))
 ;
DAT(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",5)
 ;
DATCB(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",4)
 ;
SHAA(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",6)
 ;
ADSHAA(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 I $P($G(@GL),"~",63)?.P,$L($G(@GL@("ADSHAA"))) D
 .S $P(@GL,"~",63)=@GL@("ADSHAA")
 Q $P($P($G(@GL),"~",63),"\")
 ;
COMMENT(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",7)
 ;
TZ(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",64)
 ;
CMNTIN(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",65)
 ;
HRA(JB,GL) ;
 N CMNT S CMNT=$$COMMENT(JB,$G(GL))
 N HRAED S HRAED=$$CMHD(JB,$G(GL))
 N HRA S HRA=""
 D
 .I $L(CMNT),$L(HRAED) S HRA=CMNT_" [ "_HRAED_" ]" Q
 .I '$L(HRAED) S HRA=CMNT Q
 .S HRA=HRAED 
 Q HRA
 ;
HNH(JB,GL) I '$G(JB) Q 0
 D GL(JB)
 Q +$P($G(@GL),"~",8)
 ;
HNH2(JB,GL) I '$G(JB) Q 0
 D GL(JB)
 Q +$P($G(@GL),"~",19)
 ;
SHULA(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",17)
 ;
MKBL(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",18)
 ;
HRA2(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",44)
 ;
AHUZ(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",38)
 ;
COMP(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",47)
 ;
CIBCOMP(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",45)
 ;
CIBCARD(JB,GL) ;
 D GL(JB)
 N CIBC S CIBC=$P($G(@GL),"~",46)
 I CIBC="" Q ""
 Q $$DESCR^W3ENCR(JB,CIBC)
 ;
CIBPAY(JB,GL) ;
 D GL(JB)
 N CIBC S CIBC=$P($G(@GL),"~",68)
 Q CIBC
 ;
CIBTOT(JB,GL) 
 N CIB,TOT S TOT=0
 N CIBPAY S CIBPAY=$$CIBPAY(JB,$G(GL))
 N J F J=1:1:$L(CIBPAY,";") D
 .S TOT=TOT+$P($P(CIBPAY,";",J),":")
 Q TOT
 ;
CIBTIP(JB,GL) ;
 D GL(JB)
 N CIBPAY,TOT S TOT=0
 S CIBPAY=$$CIBPAY(JB,GL)
 N J F J=1:1:$L(CIBPAY,";") D
 .S TOT=TOT+$P($P(CIBPAY,";",J),":",2)
 Q TOT
 ;
CPHPAY(JB,GL) ;
 D GL(JB)
 N CPHC S CPHC=$P($G(@GL),"~",73)
 Q CPHC
 ;
TNBCOMP(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",52)
 ;
TNBCARD(JB,GL) ;
 D GL(JB)
 N TNBC S TNBC=$P($G(@GL),"~",53)
 I TNBC="" Q ""
 Q $$DESCR^W3ENCR(JB,TNBC)
 ;
TNBPAY(JB,GL) ;
 D GL(JB)
 N TNBPAY S TNBPAY=$P($G(@GL),"~",54)
 Q TNBPAY
 ;
TNBTOT(JB,GL) 
 N TNB,TOT S TOT=0
 N TNBPAY S TNBPAY=$$TNBPAY(JB,$G(GL))
 N J F J=1:1:$L(TNBPAY,";") D
 .S TOT=TOT+$P(TNBPAY,";",J)
 Q TOT
 ;
TNBTIP(JB,GL) ;
 D GL(JB)
 N TNBPAY,TOT S TOT=0
 S TNBPAY=$$TNBPAY(JB,GL)
 N J F J=1:1:$L(TNBPAY,";") D
 .S TOT=TOT+$P($P(TNBPAY,";",J),":",2)
 Q TOT
 ;
 ;
CREDCARD(JB,GL) ;
 D GL(JB)
 N CC S CC=$P($G(@GL),"~",48) I CC="" Q ""
 I $L(CC)=1 Q CC
 Q $$DESCR^W3ENCR(JB,CC)
 ;
CREDMMYY(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",49)
 ;
CREDTZ(JB,GL) ;
 D GL(JB)
 N CTZ S CTZ=$P($G(@GL),"~",50)
 I CTZ="" Q ""
 Q $$DESCR^W3ENCR(JB,CTZ)
 ;
CREDCVV2(JB,GL) ;
 D GL(JB)
 N CCVV2 S CCVV2=$P($G(@GL),"~",61)
 I CCVV2="" Q ""
 Q CCVV2
 ;
CREDSUM(JB,GL) ;
 D GL(JB)
 N CCSUM S CCSUM=$P($G(@GL),"~",62)
 Q CCSUM
 ;
CREDTOT(JB,GL) 
 N CREDSUM,TOT S TOT=0
 S CREDSUM=$$CREDSUM(JB,$G(GL))
 N J F J=1:1:$L(CREDSUM,";") D
 .S TOT=TOT+$P($P(CREDSUM,";",J),":")
 Q TOT
 ;
CREDTIP(JB,GL) ;
 D GL(JB)
 N CREDSUM,TOT S TOT=0
 S CREDSUM=$$CREDSUM(JB,$G(GL))
 N J F J=1:1:$L(CREDSUM,";") D
 .S TOT=TOT+$P($P(CREDSUM,";",J),":",2)
 Q TOT
 ;
CASH(JB,GL) ;
 D GL(JB)
 N CASH S CASH=$P($G(@GL),"~",67)
 Q CASH
 ;
CASHTIP(JB,GL) ;
 D GL(JB)
 N CASH S CASH=$P($G(@GL),"~",67)
 Q $P(CASH,":",2)
 ;
POOLED(JB,GL) ;
 D GL(JB)
 N POOLED S POOLED=$P($G(@GL),"~",70)
 Q POOLED
 ;
MYDISC(JB,GL) ;
 D GL(JB)
 N MYDISC S MYDISC=$P($G(@GL),"~",71)
 Q MYDISC
 ;
PICUL(JB,GL) ;
 D GL(JB)
 Q $D(@GL@("PICUL"))
 ;
MKR(JB,GL) ;
 D GL(JB)
 N MKR S MKR=$P($G(@GL),"~",51)
 S MKR=$$MKR^W3MKR(MKR)
 Q MKR
 ;
MKR1(JB,GL) ;
 D GL(JB)
 N MKR S MKR=$P($G(@GL),"~",76)
 S MKR=$$MKR^W3MKR(MKR)
 Q MKR
 ;
KINDORD(JB,GL) ;
 D GL(JB)
 N KINORD S KINORD=$P($G(@GL),"~",74)
 Q KINORD
 ;
COORD(JB,GL) ;
 D GL(JB)
 N COORD S COORD=$P($G(@GL),"~",75)
 Q COORD
 ;
MSD(HZ) ;
 Q $G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 ;
PSL(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",55)
 ;
WEBORD(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $$HZMLAK(JB,GL)?1"W"1N.N
 ;
 ;
DMSH2ZERO(DMSH)
 S DMSH=$G(DMSH)
 I DMSH["^" S DMSH=$P(DMSH,"^",$L(DMSH,"^"))
 Q "0^"_DMSH
 ;
DMSH(JB,GL,SUM) I '$G(JB) Q 0
 N DMSH,TOT S DMSH=""
 N NEW
 I JB["!" S JB=+JB,NEW=1
 D GL(JB)
 N DMSHMSD S DMSHMSD=$$DMSHMSD(JB,GL)
 N HZM S HZM=$$GETP^%W1PRM("HZM") 
 I HZM,$$CLOSE^W4HZMST(HZM) Q DMSHMSD
 I $$CLOSE(JB) Q DMSHMSD
 ;
 I $G(W3FAXHTM)!$D(W3FAXHTM("SNDMAIL")) Q DMSHMSD
 I $$^W4ELPOS,$E($$HZMLAK(JB,GL))="W" Q DMSHMSD
 I GL="W3ORD"!$G(W3ORDLS)!$D(@$$^W3ORD(JB)@(JB)) Q DMSHMSD
 ;
 N DMSAH S DMSAH=$$DMSAH(JB,GL)
 N NMB S NMB=$$NMB(JB,GL)
 I '$D(SUM) S SUM=$$TOTORD(JB,"",$G(GL)) ; -- LIFNEY ANAHA & DMSH
 ;
 I $$TAKEAWAY(JB,GL) D  Q 0
 .D PUT(JB,"DMSH",0)
 .D PUT(JB,"DMSAH",0)
 .I DMSHMSD D PUT(JB,"TSHL",$$TSH(JB,GL)-DMSHMSD,$G(GL))
 ;
 I $$^W4MSD(NMB),DMSAH="" Q DMSHMSD
 I $$^W4MSL(NMB),'$$DLVWEB^W4DLVCSR,DMSHMSD["!" Q DMSHMSD
 ;
 ;;I HZM>0,'SUM,DMSHMSD'["!" Q 0  ; -- 22.10.22 --> COMMENT
 ;
 S TOT=SUM
 N TSH S TSH=$$TSH(JB,GL)
 ;
 S DMSH=DMSHMSD
 ;
 ;;I DMSAH?1N.E D CALCDMSH ; -- 13/06/23
 ;
 I DMSAH D CALCDMSH ; -- 13/06/23
 I $$^W4MSD(NMB) Q DMSH
 ;
 I DMSH["!" Q DMSH
 ;
 N LK S LK=$$NMB(JB,GL)
 I LK,$D(@$$^W4GL("W4DMSPEC")@(LK)) Q $G(^(LK))
 ;
 S DMSH=DMSHMSD
 ;
 I $$^W4MSL(NMB) D
 .N MHCNC S MHCNC=$$MHCNC^W3SP($$CITY(JB))
 .I 'MHCNC,$G(@$$^W4PRM@("TSHLDM")) S MHCNC=$G(@$$^W4PRM@("TSHLDM"))
 .
 .I MHCNC,TOT'<MHCNC,TOT>0,DMSHMSD D  Q
 ..S DMSH=$$DMSH2ZERO(DMSH)
 ..D PUT(JB,"DMSH",DMSH,$G(GL))
 ..D PUT(JB,"TSHL",TSH-DMSHMSD,$G(GL))
 .;
 .I MHCNC,TOT<MHCNC,TOT>0 D  Q
 ..D
 ...I DMSH["^",'DMSAH S DMSH=$P(DMSH,"^",2) Q
 ...I DMSAH?1N.E S DMSH=$J(TOT*DMSAH*.01,2,2)
 ..D PUT(JB,"DMSH",DMSH,$G(GL))
 ..D PUT(JB,"TSHL",TSH-DMSHMSD+DMSH,$G(GL))
 ;
EDMSH Q DMSH
 ;
 ;
DEFMHCNC(CITY) ;
 Q $$MHCNC^W3SP(CITY)
 ;
CALCDMSH ;
 I DMSAH'?1N.E Q
 N DMSHO S DMSHO=DMSHMSD
 S DMSH=$J(TOT*DMSAH*.01,2,2)
 D PUT(JB,"DMSAH",DMSAH)
 D PUT(JB,"DMSH",DMSH)
 D PUT(JB,"TSHL",$J(TSH-DMSHO+DMSH,2,2))
 Q
 ;
DMSHMSD(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",9)
 ;
DMSHCITY(JB,PRM,PR) ;
 N CODE S CODE=$P(PRM,"^")
 N CITY,CITY0,CITY1 S CITY0=$P(PRM,"^",2)
 N STREET,STREET0,STREET1 S STREET0=$P(PRM,"^",3)
 ;
 I $G(PR) D
 .S CITY0=$$CNWEB^%L1FRM(CITY0)
 .S STREET0=$$CNWEB^%L1FRM(STREET0)
 ;
 S CITY0=$TR(CITY0,"-"," ")
 S STREET0=$TR(STREET0,"-"," ")
 ;
 N HOME S HOME=$P(PRM,"^",4)
 N SUM S SUM=$P(PRM,"^",5)
 ;
 D PUT^%W3DEB("W3HZMST-DMSHCITY","CODE=CODE&CITY0=CITY0&STREET0=STREET0&HOME0=HOME&SUM=SUM")
 ;
 S (CITY,CITY1)=CITY0
 S (STREET,STREET1)=STREET0
 ;
 I '$G(PR) D
 .S CITY=$$INVH^%L1FRM(CITY0)
 .S STREET=$$INVH^%L1FRM(STREET0)
 ;
 I $G(PR) D
 .S CITY1=$$INVH^%L1FRM(CITY0)
 .S STREET1=$$INVH^%L1FRM(STREET0)
 ;
 I 'HOME S HOME=1
 S CITY=CITY_":"_STREET_":"_HOME
 D PUT^%W3DEB("W3HZMST-DMSHCITY","CITY=CITY")
 ;
 N DMS S DMS=$$DMS^W3SP(CITY)
 ;
 N MHCNC S MHCNC=$$MHCNC^W3SP(CITY1)
 I MHCNC,SUM'<MHCNC S DMS=0
 I '$G(CODE) Q DMS
 ;
 I $D(@$$^W4GL("P1LKDM")@(CODE)),$$D^W3L(CODE) S DMS=0 G EDMSHCITY
 I $G(@$$^W4GL("P1EZL")@(CODE)) S CODR=^(CODE) I CODR,$D(@$$^W4GL("P1LKDM")@(CODR)),$$D^W3L(CODR) G EDMSHCITY
 ;
EDMSHCITY ;
 Q DMS
 ;
 ;
COMPENSREASON(HZM,GL) ;
 I $G(GL)="" S GL=$$^W3ORD
 I $G(HZM)="" Q ""
 Q $G(@GL@(HZM,"PIZUIM","SIBA"))
 ;
COMPENSUPTO(HZM,GL) ;
 I $G(HZM)="" Q ""
 I $G(GL)="" S GL=$$^W3ORD
 Q $G(@GL@(HZM,"PIZUIM","AD"))
 ;
COMPENSORD(HZM,GL) ;
 I $G(HZM)="" Q ""
 I $G(GL)="" S GL=$$^W3ORD
 Q $G(@GL@(HZM,"PIZUIM","ORD"))
 ;
PIZUIM(HZM,GL) ;
 I $G(HZM)="" Q ""
 I $G(GL)="" S GL=$$^W3ORD
 Q $G(@GL@(HZM,"PIZUIM"))
 ;
COMPENSSOURCE(HZM,GL) ;
 I $G(HZM)="" Q ""
 I $G(GL)="" S GL=$$^W3ORD
 Q $G(@GL@(HZM,"MIMUSHPZM"))
 ;
PUTLKHN(JB,LK,GL)
 S GL=$G(GL)
 N LKO S LKO=$$LKHN(JB,GL)
 D PUT(JB,"LKHN",LK,GL)
 D RESET(JB,GL)
 N AHO S AHO=$$AH^W4L(LKO)
 N AHL S AHL=$$AH^W4L(LK)
 N AHZ S AHZ=$$AHUZ(JB,GL)
 N CHN S CHN=0
 I AHL>AHZ S CHN=1
 I LKO,+AHZ=+AHO S CHN=1
 ;
 I CHN D
 .D PUT^%W1PRM("AHL",AHL)
 .D PUT(JB,"AHUZ",AHL,GL)
 .N TOT S TOT=$$TOTORD(JB)
 .N HNH S HNH=$$HNH^W4HZORD
 .D PUT(JB,"HNH",HNH,GL)
 .N DMSH S DMSH=$$DMSHMSD(JB,GL)
 .D PUT^W4TMPORD("TSHL",$J(TOT-HNH+DMSH,2,2))
 ;
 D SAVE1^W4TMPORD
 Q
 ;
 ;
RESET(JB,GL)
 N MH
 S GL=$G(GL) D GL(JB)
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 N CD0 S CD0=""
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N?1N.N D
 .N UR S UR=$$LVST(JB,N)
 .S CD=$$CDST(JB,N,GL) I UR=0 S CD0=CD
 .S MH=$$MHORD(NMB,CD,UR,CD0)
 .S $P(@GL@(N),"~",4)=MH
 .D SETHNHSHAA(N)
 ;
 N A S A=$$GETSUM(JB,1,GL)
 Q
 ;
MHORD(NMB,COD,UR,CD0) ;
 N PRMHNMB,ZMANK I $G(COD)="" Q ""
 S ZMANK=$$DATCB^W3HZMST(JB)
 I 'ZMANK Q $ZD($H,"DD.MM.YY  24:60")
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 I UR,CD0,$$^W4EZAT(CD0) D
 .I UR>1 S:$G(@$$^W4PRM@("AINOTSF"))!$G(@$$^W4PRM@("AINOTSFMH")) MH=0 Q
 .I CD0 S MH=$$MHT^W4HZTSF(CD0,COD)
 Q MH
 ;
TSH(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",11)
 ;
TSHL(JB,GL) I '$G(JB) Q 0
 D GL(JB)
 I $$^W4ELPOS,$$TSH(JB,$G(GL))="",$$TOTORD(JB,"",GL) S $P(@GL,"~",11)=$$CALC(JB,GL)
 I '$$^W4ELPOS S $P(@GL,"~",11)=$$CALC(JB,GL)
 Q +$$TSH(JB,$G(GL))
 ;;I GL["W3ORD"!$$CLOSE(JB) Q +$$TSH(JB,$G(GL))
 ;;Q $$CALC(JB,GL)
 ;
CALC(JB,GL) ;
 D GL(JB)
 N SUM,SUMD S SUM=$$TOTORD(JB,"",GL),SUMD=$$TOTORD(JB,"D",GL)
 N DMSH S DMSH=$$DMSHMSD(JB,GL) ; $$DMSH(JB,GL,SUM) -- 05/04/17
 S SUM=SUM+DMSH
 N HN S HN=$$HNH^W4HZORD
 I '$$^W4ELPOS S HN=$$HNH(JB,GL)
 S SUM=SUM-HN
 Q SUM
 ;
TOTORD(JB,PR,GL,BG) ;
 Q $$TOTORD^W4GETSUM(JB,$G(PR),$G(GL),$G(BG))
 ;
DISCA(JB,GL)
 D GL(JB)
 N SUMD S SUMD=$$TOTORD(JB,"D",GL)
 Q SUMD*$$AHUZ(JB)*.01
 ;
GETSUM(JB,PRM,GL)
 Q $$^W4GETSUM(JB,$G(PRM),$G(GL))
 ;
 ;
TOTQN(JB,GL,PR) ;
 D GL(JB)
 N I,SUM S SUM=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .I $G(PR)=0,$$LV(A) Q
 .N QN S QN=$$QNMH(A)
 .N CD S CD=$$CD(A) Q:CD=""
 .I $D(@$$^W4GL("W4NOITCN")@(CD)) Q
 .I $$^W4CDSRV(CD) Q
 .I $$MSK^W4P(CD)!$P(QN,".",2) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .S SUM=SUM+QN
 Q SUM
 ;
QNMULTY(QN) ;
 I $G(QN)'["*" Q $$QNPIZZA(QN)
 N QN1,QN2 S QN1=$P(QN,"*"),QN2=$P(QN,"*",2)
 I QN2="" S QN2=1
 N QN3 S QN3=$P(QN,"*",3) I 'QN3 S QN3=1
 I QN1["+" S QN1=$$QNPIZZA(QN1)
 I QN2["+" S QN2=$$QNPIZZA(QN2)
 N SUM S SUM=QN1*QN2*QN3
 I QN1<0!(QN2<0)!(QN3<0),SUM>0 S SUM=-SUM 
 Q SUM
 ;
QNMH(A) ;
 N QN S QN=$P(A,"~",5)
 I QN["*" S QN=$$QNMULTY(QN)
 Q $$QNPIZZA(QN)
 ;
QNPIZZA(QN) ;
 I QN'["+" Q +QN
 N QNMH S QNMH=0
 N END S END=0
 I QN["+" D
 .N J F J=1:1:10 D  Q:END
 ..I $E(QN,J)="+" S QNMH=QNMH+1
 ..I QNMH,$E(QN,J)="|"!($E(QN,J)=":") S END=1
 Q QNMH
 ;
UPDTS(SUM,DMS,GL) ;
 D GL(JB)
 I '$D(@GL) Q
 I $$CLOSE(JB) Q
 S $P(@GL,"~",9)=DMS
 S $P(@GL,"~",11)=SUM
 Q
 ;
FLOOR(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",13)
 ;
FLAT(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $E($P($G(@GL),"~",14),1,5)
 ;
HOME(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",15)
 ;
ENTRANCE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",16)
 ;
KTV(JB,GL) ;
 N KTV S KTV=""
 I '$G(JB) Q ""
 D GL(JB)
 N STREET,HOME,FLAT,CITY,MIKUD,KOMA,CNISA
 S STREET=$$STREET(JB,GL)
 S HOME=$$HOME(JB,GL)
 S FLAT=$$FLAT(JB,GL)
 S KOMA=$$FLOOR(JB,GL)
 S CITY=$$CITY(JB,GL)
 S MIKUD=$$MIKUD(JB,GL)
 N HMFL S HMFL=HOME I FLAT S HMFL=HOME_"/"_FLAT
 I $L(KOMA),KOMA'="ihxt",$G(NOIR)<2 S HMFL=KOMA_" 'w "_HMFL
 N CN S CN=$$ENTRANCE(JB,GL) I $L(CN),$G(NOIR)<2 S HMFL=CN_" 'k "_HMFL
 I CITY="TAKEAWAY",STREET'?1N.N S KTV=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY!")
 I CITY'="TAKEAWAY" D
 .S KTV=$$SPA^%L1FRM(CITY)_" "_$$SPA^%L1FRM(HMFL)_" "_$$SPA^%L1FRM(STREET)
 .I $L(MIKUD) S KTV=MIKUD_" , "_KTV
 Q KTV
 ;
CODTS(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",21)
 ;
DMSAH(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",23)
 ;
CODE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",27)
 ;
LASTU(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",26)
 ;
HZMLAK(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",60)
 ;
MKRNOM(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",77)
 ;
TRID(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",78)
 ;
STAGE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",79)
 ;
TSHSTAGE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",80)
 ;
CITY(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $$SPA^%L1FRM($P($G(@GL),"~",31))
 ;
TAKEAWAY(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 N IR S IR=$TR($$CITY(JB,$G(GL))," .","")
 Q IR="TAKEAWAY"!(IR="TAW")
 ;
SNIF(JB,GL) I '$G(JB) Q ""
 S GL=$G(GL)
 N MSD I GL'["W3ORD(" S MSD=$$GET^%W1PRM("MSD")
 I GL["W3ORD(" S MSD=$G(@GL@("MSD"))
 S CITY=$$CITY(JB,GL)
 I MSD=1!(MSD=99999),$TR(CITY,"-","")["aia` lz" Q 1
 I MSD=1!(MSD=99999) Q 2
 Q 1
 ;
PELE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 N PELE S PELE=$P($G(@GL),"~",32)
 I PELE=$$NMBKSK^W4KIOSKO Q ""
 I PELE="",$E($$TELB(JB,GL),1,2)="05" S PELE=$$TELB(JB,GL)
 Q PELE
 ;
MHMIN(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",33)
 ;
MHCNC(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",37)
 ;
CMHD(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",34)
 ;
DATK(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",29)
 ;
SOAD(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",24)
 ;
LKHN(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",27)
 ;
LKHN1(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 N LKHN S LKHN=$$LKHN(JB,GL)
 N LKHN1 S LKHN1=""
 I $L(LKHN)>3 S LKHN1=$$LKH^W4L(LKHN)
 Q LKHN1
 ;
FAX(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",58)
 ;
EMAIL(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",56)
 ;
MIKUD(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",57)
 ;
TELB(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 N TELB
 S TELB=$P($G(@GL),"~",59)
 Q $TR(TELB,"CMNT","")
 ;
GET(JB,RKV,GL) ;
 I $T(@RKV)="" Q ""
 Q @("$$"_RKV_"(JB,GL)")
 ;
GETST(JB,RKV,IND,GL) ;
 I $T(@RKV)="" Q ""
 Q @("$$"_RKV_"(JB,IND,GL)")
 ;
 ;
LI(JB,GL) ;
 D GL(JB)
 Q $O(@GL@(999999),-1)
 ;
HRP(JB,IND,GL)
 D GL(JB)
 N CMST S CMST=""
 S CMST=$P($G(@GL@(IND)),"~",7)
 Q CMST
 ;
CMST0(JB,IND,GL) ;
 D GL(JB)
 N SH0 S SH0=$$SH0(JB,IND,GL)
 I 'SH0 Q ""
 Q $$CMST(JB,SH0,GL)
 ;
CMST(JB,IND,GL) ;
 D GL(JB)
 N HRP S HRP=$$HRP(JB,IND,GL)
 I $L(HRP) Q HRP
 Q $$CMNST(JB,IND,GL)
 ;
CMNST(JB,IND,GL)
 D GL(JB)
 N NEXT S NEXT=$G(@GL@(IND+1))
 I '$P(NEXT,"~") Q ""
 I $P(NEXT,"~",2)'["-C",$P(NEXT,"~",2)'["-H" Q ""
 Q $P(NEXT,"~",3)
 ;
CMST11(JB,IND,GL)
 D GL(JB)
 N CMST S CMST=$$CMST(JB,IND,GL)
 ;;I CMST["[[",CMST["]]",CMST["1+1",+$$MHST(JB,IND,GL)=0 Q 1
 I CMST["[[",CMST["]]",CMST["+1" Q 1
 Q 0
 ;
QN11(JB,IND,GL) ;
 N QN S QN=1
 D GL(JB)
 N CMST S CMST=$$CMST(JB,IND,GL)
 I CMST["[[",CMST["]]",CMST["+1" D
 .S QN=$TR($P($P(CMST,"[[",2),"+")," ","")
 Q QN
 ;
GLIST(JB,IND,GL) ;
 D GL(JB)
 Q $G(@GL@(IND,"GLIST"))
 ;
MANA(JB,IND,GL) ;
 D GL(JB)
 Q $G(@GL@(IND,"MANA"))
 ;
LVST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",1)
 ;
LV(A)
 Q $P(A,"~")
 ;
CDST(JB,IND,GL) ;
 I $G(JB)=""!($G(IND)="") Q ""
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",2)
 ;
CDSTC(JB,IND,GL) ;
 D GL(JB)
 I $$CDST(JB,IND,GL)["-C" Q 1
 Q 0
 ;
CDSTA(JB,IND,GL) ;
 D GL(JB)
 I $$CDST(JB,IND,GL)?1"A"1N.N Q 1
 Q 0
 ;
CD(A) ;
 Q $P(A,"~",2)
 ;
NM(A) ;
 Q $P(A,"~",3)
 ;
MH(A) ;
 Q $P(A,"~",4)
 ;
CDA(A)
 Q $$CD(A)?1"A"1N.N
 ;
CDC(A) Q $$CD(A)["-C"
 ;
QN(A) ;
 Q $P(A,"~",5)
 ;
QNA(A) ;
 N QN S QN=$$QN(A)
 I QN["*" S QN=$P(QN,"*",2) S:QN="" QN=1
 Q QN
 
PREVSH0(JB,IND,GL,PR)
 D GL(JB) N A
 N II S II=IND+$G(PR)
 F  S II=$O(@GL@(II),-1) Q:II=""  I II S A=$G(^(II)) Q:$$LV(A)=0
 Q II
 ;
PREVSH1(JB,IND,GL,PR)
 D GL(JB)
 N I1,A S I1=IND+$G(PR)
 F  S I1=$O(@GL@(I1),-1) Q:I1=""  I I1 S A=$G(^(I1)) Q:$$LV(A)<2&'$$CDSTC(JB,I1,GL)
 Q I1
 ;
EZAT(JB,IND,GL)
 D GL(JB)
 N OK S OK=0
 I $$LVST(JB,IND,GL)=0 D  Q OK
 .N CD S CD=$$CDST(JB,IND,GL)
 .I $$DD^W4EZA(CD) S OK=1 Q
 .I $$DD^W4EZT(CD) S OK=2 Q
 ;
 I $$LVST(JB,IND,GL)>0 D  Q OK
 .N II S II=$$PREVSH0(JB,IND,GL,1)
 .Q:'II
 .N CD S CD=$$CDST(JB,II,GL)
 .I $$DD^W4EZA(CD) S OK=3 Q
 .I $$DD^W4EZT(CD) S OK=4 Q
 Q OK
 ;
PREZATI(JB,IND,QNDEL,GL) ;
 D GL(JB)
 N A N PREZAT S PREZAT=0,A=""
 D
 .N II S II=$$PREVSH0(JB,IND,GL,1)
 .Q:'II
 .S A=$G(@GL@(II))
 .N ITR S ITR=$$ITRAST(JB,II,GL)
 .S PREZAT=$$PREZAT(A)
 .I PREZAT,$G(QNDEL),ITR>QNDEL S PREZAT=2
 ;
 Q PREZAT
 ;
PREZAT(A) ;
 N PREZAT S PREZAT=0
 N CD S CD=$$CD(A)
 I $$^W4EZAT(CD),'$$^W4AIN,'$$LV(A) S PREZAT=1
 Q PREZAT
 ;
NMST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",3)
 ;
NMP(A) Q $P(A,"~",3)
 ;
MHST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",4)
 ;
MHP(A) ;
 Q $P(A,"~",4)
 ;
QNST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",5)
 ;
QNSTA(JB,IND,GL) ;
 D GL(JB) N QN
 S QN=$$QNST(JB,IND,GL)
 I QN["*" S QN=$P(QN,"*",$L(QN,"*")) S:QN="" QN=1
 Q QN
 ;
QNDIF(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",11)
 ;
QNP(A) ;
 Q $P(A,"~",5)
 ;
AHST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",6)
 ;
AHP(A) Q $P(A,"~",6)
 ;
NOTSFMVC(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",8)
 ;
MVC(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",17)
 ;
MVC2(JB,IND,GL) ;
 D GL(JB)
 Q ($$MVC(JB,IND,GL)="MVC2")
 ;
LMVC(JB,IND,GL) ;
 D GL(JB)
 Q ($$MVC(JB,IND,GL)="LMVC")
 ;
COUP(JB,IND,GL) ;
 D GL(JB)
 Q ($$MVC(JB,IND,GL)["COUP:")
 ;
ITRAST(JB,IND,GL,PR) ;
 D GL(JB) N QN S QN=$$QNST(JB,IND,GL)
 N ITR S ITR=$$QNMH($G(@GL@(IND)))
 ;
 I $$^W4DLVCSR,$$DLVMOUSE^W4PRM D  Q ITR
 .N N1 S N1=IND F  S N1=$O(@GL@("FROM",N1)) Q:N1=""  I N1 D
 ..I $G(@GL@("FROM",N1))=IND S ITR=ITR+$$QNMH($G(@GL@(N1))) 
 ;
 S ITR=ITR-$$MRG(JB,IND,GL)
 ;
 I $G(PR) S ITR=ITR-$$TS(JB,IND,GL)
 Q ITR
 ;
 ;
MRG(JB,IND,GL,PRM) ;
 I $G(PRM)="" S PRM="MRG"
 D GL(JB)
 N A S A=$G(@GL@(IND))
 N QN S QN=1
 N MRG S MRG=$G(@GL@(PRM,IND))
 N LV S LV=$$LV(A)
 ;
 I 'MRG,LV=1 D  ; -- TOSAFOT RAGILOT
 .S QN=$$QNST(JB,IND,GL) I QN'["*" Q
 .S QN=$P(QN,"*",2) S:QN="" QN=1
 .N I S I=IND F  S I=$O(@GL@(I),-1) Q:I=""  I I Q:'$$LVST(JB,I,GL)
 .Q:'I
 .N CD0 S CD0=$$CDST(JB,I,GL) I '$$^W4EZI(CD0) Q
 .S IND=I
 ;
 I LV=2 D
 .N QN2 S QN2=$$QNST(JB,IND,GL)
 .S QN=$$QNSTA(JB,IND,GL)
 .N I S I=IND F  S I=$O(@GL@(I),-1) Q:I=""  I I Q:$$LVST(JB,I,GL)<2&'$$CDSTC(JB,I,GL)
 .Q:'I
 .N A1 S A1=$G(@GL@(I))
 .;
 .I $$LV(A1)=1 D
 ..S IND=I
 ..N QN1 S QN1=$$QNSTA(JB,I,GL)
 ..I QN2'["*",QN1,QN2\QN1*QN1=QN2 S QN=QN2\QN1
 ;
 Q ($G(@GL@(PRM,IND))*QN)
 ;
 ;
TS(JB,IND,GL) ;
 D GL(JB)
 N TS S TS=0
 ;
 N N S N="" F  S N=$O(@GL@("TS",IND,N)) Q:N=""  D
 .N TS1 S TS1=$G(^(N))
 .I N S TS=TS+TS1
 ;
 I TS S @GL@("TS",IND)=TS
 Q TS
 ;
 ;
NEXT1(JB,IND,GL)
 D GL(JB)
 ;;N I F I=IND+1:1 Q:'$D(@GL@(I))  Q:$$LVST(JB,IND,GL)<2&'$$CDSTC(JB,IND,GL)
 N I S I=IND F  S I=$O(@GL@(I)) Q:I=""  I I Q:$$LVST(JB,I,GL)<2&'$$CDSTC(JB,I,GL)
 I I="" Q ""
 Q I
 ;
NEXT0(JB,IND,GL)
 D GL(JB)
 ;;N I F I=IND+1:1 Q:'$D(@GL@(I))  Q:$$LVST(JB,IND,GL)<1&'$$CDSTC(JB,IND,GL)
 N I S I=IND F  S I=$O(@GL@(I)) Q:I=""  I I Q:$$LVST(JB,I,GL)<1&'$$CDSTC(JB,I,GL)
 I I="" Q ""
 Q I
 ;
QNR(JB,IND,GL) ;
 D GL(JB)
 N QN S QN=$$QNST(JB,IND,GL)
 Q $$QNMULTY(QN)
 ;
HNST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",6)
 ;
EX2KITCH(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",6)
 ;
WHODEL(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",2)
 ;
WHODEL1(JB,IND,GL) ;
 D GL(JB)
 N WHO S WHO=$$WHODEL(JB,IND,GL)
 I WHO="" Q ""
 Q $$SHORT^W4NAME(WHO)
 ;
SIBA(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",3)
 ;
SIBA1(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",4)
 ;
TIMEDEL(JB,IND,GL) ;
 D GL(JB)
 N TM S TM=$P($G(@GL@("BIT",IND)),"*",5)
 Q $$T^%L1TIME(TM)
 ;
WHOHNH(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("HNH",IND)),"*",2)
 ;
LL(JB,GL) ;
 D GL(JB)
 Q $G(@GL@("LL"))
 ;
MZMNM(JB,GL) ;
 D GL(JB)
 Q $G(@GL@("MZMNM"))
 ;
FIRE(JB,GL) ;
 D GL(JB)
 Q $G(@GL@("FIRE"))
 ;
BSCARD(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","CARD"))
 ;
BSNAME(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","NAME"))
 ;
BSCLUB(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","CLUB"))
 ;
BSCLUB1(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","CLUB1"))
 ;
BSASM(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","ASM"))
 ;
LKMCARD(JB,GL)
 D GL(JB)
 Q $G(@GL@("LKM","CARD"))
 ;
LKMNAME(JB,GL)
 D GL(JB)
 Q $G(@GL@("LKM","NAME"))
 ;
LKMNKD(JB,GL)
 D GL(JB)
 Q $G(@GL@("LKM","NKD0"))
 ;
LKMBON(JB,GL)
 D GL(JB)
 Q $G(@GL@("LKM","BON"))
 ;
NOMOD(JB,IND,GL) ;
 D GL(JB)
 I $$DELIS^W4PRM Q 0
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0,$$^W4HZMH(+HZM) Q 0
 ;
 Q $P($G(@GL@(IND)),"~",12)["@@"
 ;
WASHZ(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",13)["HZ"
 ;
SETNOMOD(JB,IND,GL,SMB) ;
 D GL(JB)
 S $P(@GL@(IND),"~",12)="@@"_$G(SMB)
 Q
 ;
GETSMB(JB,IND,GL,SMB) ;
 D GL(JB)
 N A S A=$P(@GL@(IND),"~",12)
 I $G(SMB)="" S SMB="@@"
 Q $P(A,SMB,2)
 ;
STGIT(JB,IND,GL)
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",19)
 ;
SH0(JB,I,GL)
 D GL(JB)
 I '$G(I) S I=$O(@GL@(99999),-1)
 N I1 F I1=$$PREVSH0(JB,I,GL,1)
 I 'I1 Q ""
 I $$LVST(JB,I1)=0 Q I1
 Q ""
 ;
LASTI0(JB,GL) ;
 D GL(JB)
 N N S N=$O(@GL@(99999),-1) I N="" Q 0
 I +$P($G(@GL@(N)),"~")=0 Q N
 F  S N=$O(@GL@(N),-1) Q:N=""  Q:$P($G(@GL@(N)),"~")<1
 I N="" Q 0
 Q N
 ;
LAST0(JB,GL) ;
 D GL(JB)
 I '$G(JB) Q ""
 N N0 S N0=$$LASTI0(JB,GL) I 'N0 Q ""
 Q $G(@GL@(N0))
 ;
QNIT0(JB,I,GL,PR)
 I '$G(JB) Q ""
 D GL(JB)
 N I1 S I1=$$SH0(JB,I)
 I I1 Q $$ITRAST(JB,I1,GL,$G(PR))
 Q ""
 ;
QNIT1(JB,I,GL,PR)
 I '$G(JB) Q ""
 D GL(JB)
 N I1 S I1=$$PREVSH1(JB,I,GL,1) I 'I1 Q ""
 I $$LVST(JB,I1,GL)=1 Q $$ITRAST(JB,I1,GL,$G(PR))
 Q ""
 ;
QN1(JB,I,GL)
 I '$G(JB) Q ""
 D GL(JB)
 N I1 S I1=$$PREVSH1(JB,I,GL,1) I 'I1 Q ""
 I $$LVST(JB,I1,GL)=1 Q $$QNR(JB,I1,GL)
 Q ""
 ;
CLOSE(JB) ;
 I '$G(JB) Q 0
 I $$PSL(JB) Q 1
 I $D(@$$^W3ORD(JB)@(JB,"S")) Q 1
 Q 0
 ;
PUT(HZ,NM,VL,GL) ;
 S VL=$$RPL^%L1FRM(VL,$C(226,128,172),"")
 S VL=$$RPL^%L1FRM(VL,$C(226,128,173),"")
 ;
 I $G(GL)="" S GL=$$^W3TMPORD_"("_HZ_")"
 I NM="NMB" S $P(@GL,"~",1)=VL
 I NM="NAME" S $P(@GL,"~",2)=VL
 I NM="STREET" S $P(@GL,"~",3)=VL
 I NM="DATCB" S $P(@GL,"~",4)=VL
 I NM="DAT" S $P(@GL,"~",5)=VL
 I NM="SHAA" S $P(@GL,"~",6)=VL
 I NM="COMMENT" S $P(@GL,"~",7)=VL
 I NM="HNH" S $P(@GL,"~",8)=VL
 I NM="DMSH" S $P(@GL,"~",9)=VL
 I NM="MAM" S $P(@GL,"~",10)=VL
 I NM="TSHL" S $P(@GL,"~",11)=VL
 I NM="SHUL" S $P(@GL,"~",12)=VL
 I NM="FLOOR" S $P(@GL,"~",13)=VL
 I NM="FLAT" S $P(@GL,"~",14)=VL
 I NM="HOME" S $P(@GL,"~",15)=VL
 I NM="ENTRANCE" S $P(@GL,"~",16)=VL
 I NM="SHULA" S $P(@GL,"~",17)=VL
 I NM="MKBL" S $P(@GL,"~",18)=VL
 I NM="HNH2" S $P(@GL,"~",19)=VL
 I NM="HESH" S $P(@GL,"~",20)=VL
 I NM="CODTS" S $P(@GL,"~",21)=VL
 I NM="DMSAH" S $P(@GL,"~",23)=VL
 I NM="SOAD" S $P(@GL,"~",24)=VL D SETSOAD^W4TMPHD(VL)
 I NM="LASTU" S $P(@GL,"~",26)=VL
 I NM="LKHN" S $P(@GL,"~",27)=VL
 I NM="CODE" S $P(@GL,"~",27)=VL
 I NM="DATK" S $P(@GL,"~",29)=VL
 I NM="CITY" S $P(@GL,"~",31)=VL
 I NM="PELE" S $P(@GL,"~",32)=VL
 I NM="MHMIN" S $P(@GL,"~",33)=VL
 I NM="CMHD" S $P(@GL,"~",34)=VL
 I NM="MHCNC" S $P(@GL,"~",37)=VL
 I NM="AHUZ" S $P(@GL,"~",38)=VL
 I NM="HRA2" S $P(@GL,"~",44)=VL
 I NM="CIBCOMP" S $P(@GL,"~",45)=VL
 I NM="CIBCARD" S $P(@GL,"~",46)=VL
 I NM="COMP" S $P(@GL,"~",47)=VL
 I NM="CREDCARD" S $P(@GL,"~",48)=VL
 I NM="CREDMMYY" S $P(@GL,"~",49)=VL
 I NM="CREDTZ" S $P(@GL,"~",50)=VL
 I NM="MKR" S $P(@GL,"~",51)=VL
 I NM="TNBCOMP" S $P(@GL,"~",52)=VL
 I NM="TNBCARD" S $P(@GL,"~",53)=VL
 I NM="TNBPAY" S $P(@GL,"~",54)=VL
 I NM="PSL" S $P(@GL,"~",55)=VL
 I NM="EMAIL" S $P(@GL,"~",56)=VL
 I NM="MIKUD" S $P(@GL,"~",57)=VL
 I NM="FAX" S $P(@GL,"~",58)=VL
 I NM="TELB" S $P(@GL,"~",59)=VL
 I NM="HZMLAK" S $P(@GL,"~",60)=VL
 I NM="CREDCVV2" S $P(@GL,"~",61)=VL
 I NM="CREDSUM" S $P(@GL,"~",62)=VL
 I NM="ADSHAA" S $P(@GL,"~",63)=VL
 I NM="TZ" S $P(@GL,"~",64)=VL
 I NM="CASH" S $P(@GL,"~",67)=VL
 I NM="CIBPAY" S $P(@GL,"~",68)=VL
 I NM="POOLED" S $P(@GL,"~",70)=VL
 I NM="MYDISC" S $P(@GL,"~",71)=VL
 I NM="CPHPAY" S $P(@GL,"~",73)=VL
 I NM="KINDORD" S $P(@GL,"~",74)=VL
 I NM="MKRNOM" S $P(@GL,"~",77)=VL
 ;
 I NM["," D
 .N II F II=1:1:$L(NM,",") D
 ..N NMFLD S NMFLD=$P(NM,",",II) D PUT(HZ,NMFLD,VL,$G(GL))
 ;
 Q
 ;
PAID(JB) ;
 Q $$CASH(JB)+$$CREDTOT(JB)+$$TNBTOT(JB)+$$CIBTOT(JB)
 ;
PAIDNOTIP(JB) ;
 N CASH S CASH=$$CASH(JB)-$$CASHTIP(JB)
 N CREDSUM S CREDSUM=$$CREDTOT(JB)-$$CREDTIP(JB)
 N TNBPAY S TNBPAY=$$TNBTOT(JB)-$$TNBTIP(JB)
 N CIBPAY S CIBPAY=$$CIBTOT(JB)-$$CIBTIP(JB)
 Q CASH+CREDSUM+TNBPAY+CIBPAY
 ;
GL(JB) ;
 I $G(GL)'="",$G(GL)'["(" S GL=GL_"(JB)" Q  ; -- IF NOT TMPORD THEN JB - ORDER NUMBER
 S JB=+JB
 ;
 I $G(GL)="" D
 .S GL=$$^W4TMPORD I '$$DLVWEB^W4DLVCSR Q:$$CSR^W4DLVCSR
 .I '$D(@GL),$D(@$$^W3ORD(JB)@(+JB)) S GL=$$^W3ORD_"(JB)"
 Q
 ;
SETHNHSHAA(SH) ;
 N GORD S GORD="^[$$^W3MAIN]TMPORD(JB)"
 N ST S ST=$G(@GORD@(SH))
 N CDPAR S CDPAR=$$CD(ST) Q:'CDPAR
 I $$MH^W4P(CDPAR)["%",$$AHP(ST) Q
 N NMB S NMB=$$GET^%W1PRM("NMB") Q:'NMB
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 N ZMANK S ZMANK=$$DATCB^W3HZMST(JB)
 N HNHSHAA S HNHSHAA=$$^W4HNHSHA(CDPAR,NMB)
 ;
 I 'HNHSHAA D SETHNHMVC(SH) Q
 ;
 I '$$DISCPRC^W4PRM D
 .S $P(@GORD@(SH),"~",6)=$S(HNHSHAA:$J(HNHSHAA,2,2),1:"")
 .S $P(@GORD@(SH),"~",7)=$S(HNHSHAA:$$TV^%W1DICT($$^%W1LNG,"DISCOUNTPERHOUER"),1:"")
 .S $P(@GORD@(SH),"~",8)=$$NOTSFMVC^W4PRM
 ;
 I $$DISCPRC^W4PRM D
 .N PRMHNMB,MH S PRMHNMB=NMB S MH=$J($$MH^W4P(CDPAR),2,2)
 .S $P(@GORD@(SH),"~",4)=MH
 .S $P(@GORD@(SH),"~",6)=""
 .S $P(@GORD@(SH),"~",7)=$S(HNHSHAA:$$TV^%W1DICT($$^%W1LNG,"DISCOUNTPERHOUER"),1:"")
 .S $P(@GORD@(SH),"~",8)=$$NOTSFMVC^W4PRM
 Q
 ;
COLSH0(JB) ;
 N I,A S I=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N?."-"1N.E D
 .S A=$G(^(N))
 .I $P(A,"~")=0 S I=I+1
 Q I
 ;
SETHNHMVC(SH) ;
 N PAR,MVC,A,DT1,DT2,SET,QNORD,QNMVC,HNHMVC,HNAH,MVCMX,GLMVC,GLSET,GORD,P1DZ
 S P1DZ=$$^W4DZ
 S GLMVC=$$^W4GL("W4MVCAH")
 S GLSET=$$^W4GL("P1SETM")
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 ;
 S PAR=$$CDST(JB,SH) Q:'PAR
 S QNORD=$$QNST(JB,SH)
 ;
 S HNHMVC=0,MVCMX=0
 N A,DT1,DT2,MWSHAA,ADSHAA,MEMIN,ADMIN,MIN
 ;
 S MVC="" F  S MVC=$O(@GLMVC@(MVC)) Q:MVC=""  D
 .S A=$G(^(MVC,1))
 .S DT1=$$GETMVC(MVC,"DT1")
 .S DT2=$$GETMVC(MVC,"DT2")
 .S SHAA1=$$GETMVC(MVC,"SHAA1")
 .S SHAA2=$$GETMVC(MVC,"SHAA2")
 .S MIN1=SHAA1*60+$P(SHAA1,":",2)
 .S MIN2=SHAA2*60+$P(SHAA2,":",2)
 .N MIN S MIN=$ZD($H,"24:60")
 .S MIN=MIN*60+$P(MIN,":",2)
 .I MIN1,'MIN2 S MIN2=24*60
 .I MIN1>MIN2 S MIN2=MIN2+(24*60)
 .;
 .I MIN1!MIN2,MIN<MIN1!(MIN>MIN2) Q
 .;
 .I P1DZ<DT1!(P1DZ>DT2) Q
 .
 .S SET=$$GETMVC(MVC,"SET") Q:'SET
 .I $D(@GLSET@(SET,PAR)) D
 ..S HNAH=$$GETMVC(MVC,"HNAH") Q:'HNAH
 ..I HNAH>HNHMVC S HNHMVC=HNAH,MVCMX=MVC
 ;
 I HNHMVC D
 .S $P(@GORD@(SH),"~",6)=$J(HNHMVC,2,2)
 .N SALENM S SALENM=$G(@$$^W4GL("W4MVCAH")@(MVCMX))
 .S $P(@GORD@(SH),"~",7)=$$TV^%W1DICT($$^%W1LNG,"SALE",SALENM)
 .S $P(@GORD@(SH),"~",8)=$$NOTSFMVC^W4PRM
 Q
 ;
GETMVC(MVC,PRM) ;
 N A S A=$G(@GLMVC@(MVC,1))
 I PRM="SET" Q $P(A,"\",1)
 I PRM="HNAH" Q $P(A,"\",2)
 I PRM="DT1" Q $$^%L1DC($P(A,"\",3),3)
 I PRM="DT2" Q $$^%L1DC($P(A,"\",4),3)
 I PRM="SHAA1" Q $P(A,"\",5)
 I PRM="SHAA2" Q $P(A,"\",6)
 Q ""
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZMST0
W3HZMST ; [ 05.10.17 08:56 ] [ 03.10.17 11:25 ] [ 12.09.17 15:36 ] 
NMB(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~")
 ;
NAME(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",2)
 ;
STREET(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $$SPA^%L1FRM($P($G(@GL),"~",3))
 ;
DAT(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",5)
 ;
DATCB(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",4)
 ;
SHAA(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",6)
 ;
ADSHAA(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 I $P($G(@GL),"~",63)?.P,$L($G(@GL@("ADSHAA"))) D
 .S $P(@GL,"~",63)=@GL@("ADSHAA")
 Q $P($P($G(@GL),"~",63),"\")
 ;
COMMENT(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",7)
 ;
TZ(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",64)
 ;
CMNTIN(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",65)
 ;
HRA(JB,GL) ;
 N CMNT S CMNT=$$COMMENT(JB,$G(GL))
 N HRAED S HRAED=$$CMHD(JB,$G(GL))
 N HRA S HRA=""
 D
 .I $L(CMNT),$L(HRAED) S HRA=CMNT_" [ "_HRAED_" ]" Q
 .I '$L(HRAED) S HRA=CMNT
 Q HRA
 ;
HNH(JB,GL) I '$G(JB) Q 0
 D GL(JB)
 Q +$P($G(@GL),"~",8)
 ;
HNH2(JB,GL) I '$G(JB) Q 0
 D GL(JB)
 Q +$P($G(@GL),"~",19)
 ;
MKBL(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",18)
 ;
HRA2(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",44)
 ;
AHUZ(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",38)
 ;
COMP(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",47)
 ;
CIBCOMP(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",45)
 ;
CIBCARD(JB,GL) ;
 D GL(JB)
 N CIBC S CIBC=$P($G(@GL),"~",46)
 I CIBC="" Q ""
 Q $$DESCR^W3ENCR(JB,CIBC)
 ;
CIBPAY(JB,GL) ;
 D GL(JB)
 N CIBC S CIBC=$P($G(@GL),"~",68)
 Q CIBC
 ;
TNBCOMP(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",52)
 ;
TNBCARD(JB,GL) ;
 D GL(JB)
 N TNBC S TNBC=$P($G(@GL),"~",53)
 I TNBC="" Q ""
 Q $$DESCR^W3ENCR(JB,TNBC)
 ;
TNBPAY(JB,GL) ;
 D GL(JB)
 N TNBPAY S TNBPAY=$P($G(@GL),"~",54)
 Q TNBPAY
 ;
CREDCARD(JB,GL) ;
 D GL(JB)
 N CC S CC=$P($G(@GL),"~",48) I CC="" Q ""
 I $L(CC)=1 Q CC
 Q $$DESCR^W3ENCR(JB,CC)
 ;
CREDMMYY(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",49)
 ;
CREDTZ(JB,GL) ;
 D GL(JB)
 N CTZ S CTZ=$P($G(@GL),"~",50)
 I CTZ="" Q ""
 Q $$DESCR^W3ENCR(JB,CTZ)
 ;
CREDCVV2(JB,GL) ;
 D GL(JB)
 N CCVV2 S CCVV2=$P($G(@GL),"~",61)
 I CCVV2="" Q ""
 Q CCVV2
 ;
CREDSUM(JB,GL) ;
 D GL(JB)
 N CCSUM S CCSUM=$P($G(@GL),"~",62)
 Q CCSUM
 ;
CREDTIP(JB,GL) ;
 D GL(JB)
 Q $P($$CREDSUM(JB,GL),":",2)
 ;
CASH(JB,GL) ;
 D GL(JB)
 N CASH S CASH=$P($G(@GL),"~",67)
 Q CASH
 ;
PICUL(JB,GL) ;
 D GL(JB)
 Q $D(@GL@("PICUL"))
 ;
MKR(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",51)
 ;
MSD(HZ) ;
 Q $G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 ;
PSL(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",55)
 ;
 ;
DMSH(JB,GL,SUM) I '$G(JB) Q 0
 N NEW,DMSH,TOT S NEW=0,DMSH=""
 I JB["!" S JB=+JB,NEW=1
 D GL(JB)
 I '$D(SUM) S SUM=$$TOTORD(JB,"",$G(GL))
 ;
 N DMSAH S DMSAH=$$DMSAH(JB,GL)
 N DMSHMSD S DMSHMSD=$$DMSHMSD(JB,GL)
 ;
 I $G(W3FAXHTM)!$D(W3FAXHTM("SNDMAIL")) Q DMSHMSD
 ;
 N NMB S NMB=$$NMB(JB,GL)
 I $$^W4MSL(NMB),DMSHMSD["!" Q DMSHMSD
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N CLOSEHZM S CLOSEHZM=$$CLOSE^W4HZMST(HZM)
 ;
 I $$TAKEAWAY(JB,GL),'CLOSEHZM D  Q 0
 .D PUT(JB,"DMSH",0)
 .D PUT(JB,"DMSAH",0)
 ;
 I HZM>0,'SUM,$D(@GL@("BIT")) Q 0
 ;
 S TOT=SUM
 N TSH S TSH=$$TSH(JB,GL)
 ;
 S DMSH=DMSHMSD
 I $$^W4MSD(NMB)!$$TAKEAWAY(JB,GL),'CLOSEHZM!'HZM,DMSAH?1N.E D CALCDMSH
 ;
 I $$^W4MSD(NMB) Q DMSH
 ;
 I $$^W4ELPOS,$E($$HZMLAK(JB,GL))="W" Q DMSHMSD
 ;
 I DMSH["!" Q DMSH
 ;
 I $$^W4MSL(NMB),$$DLVWEB^W4DLVCSR!$$DLVWEBN^W4DLVCSR,DMSHMSD'="",'$G(NEW) D  Q DMSH  ;-- MISHLOHIM KUPA
 .I DMSH["!" Q
 .I $$PSL(JB) Q
 .I $$^W4ISORD(HZM),CLOSEHZM Q
 .;
 .I $G(@$$^W4PRM@("TSHLDM")),DMSH,TOT'<$G(@$$^W4PRM@("TSHLDM")) D  Q
 ..S DMSH="0^"_DMSH
 ..D PUT(JB,"DMSH",DMSH,$G(GL))
 ..D PUT(JB,"TSHL",TSH-DMSH,$G(GL))
 .
 .I TOT<$G(@$$^W4PRM@("TSHLDM")),TOT>0 D  Q
 ..D
 ...I DMSH["^",'DMSAH S DMSH=$P(DMSH,"^",2) Q
 ...I DMSAH?1N.E S DMSH=$J(TOT*DMSAH*.01,2,2)
 ..S DMSH=$J(DMSH,2,2)
 ..D PUT(JB,"DMSH",DMSH,$G(GL))
 ..D PUT(JB,"TSHL",TOT+DMSH-$$HNH(JB),$G(GL))
 ;
 N OK S OK=0
 ;
 I 'CLOSEHZM D  Q DMSH
 .N CITY S CITY=$$CITY(JB)
 .N PRM S PRM=$$CODE(JB)_"^"_$$CITY(JB)_"^"_$$STREET(JB)_"^"_$$HOME(JB)_"^"_SUM
 .S DMSH=$$DMSHCITY(JB,PRM)
 .N MHCNC S MHCNC=$$DEFMHCNC(CITY)
 .;
 .I MHCNC,SUM'<MHCNC D  Q
 ..N DMO S DMO=DMSHMSD
 ..N TSH S TSH=$$TSHL(JB)
 ..S TSH=TSH-DMO
 ..S DMSH=0
 ..D UPDTS(TSH,DMSH,$G(GL))
 ;
 N DMS,DMS0 S (DMS0,DMSH)=DMSHMSD
 ;
 I GL="W3ORD"!$G(W3ORDLS)!$D(@$$^W3ORD(JB)@(JB)) Q DMS0
 I $$CLOSE(JB) Q DMS0
 I $D(TOTORD) Q DMS0
 ;
 I 'CLOSEHZM!'HZM,DMSAH?1N.E D CALCDMSH
 ;
 ;;I DMS D UPDTS(TOT+DMS,DMS,GL)
EDMSH Q DMSH
 ;
 ;
DEFMHCNC(CITY) ;
 Q $$MHCNC^W3SP(CITY)
 ;
CALCDMSH ;
 I DMSAH'?1N.E Q
 N DMSHO S DMSHO=DMSHMSD
 S DMSH=$J(TOT*DMSAH*.01,2,2)
 D PUT(JB,"DMSAH",DMSAH)
 D PUT(JB,"DMSH",DMSH)
 D PUT(JB,"TSHL",$J(TSH-DMSHO+DMSH,2,2))
 Q
 ;
DMSHMSD(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",9)
 ;
DMSHCITY(JB,PRM,PR) ;
 N CODE S CODE=$P(PRM,"^")
 N CITY,CITY0,CITY1 S CITY0=$P(PRM,"^",2)
 N STREET,STREET0,STREET1 S STREET0=$P(PRM,"^",3)
 ;
 I $G(PR) D
 .S CITY0=$$CNWEB^%L1FRM(CITY0)
 .S STREET0=$$CNWEB^%L1FRM(STREET0)
 ;
 S CITY0=$TR(CITY0,"-"," ")
 S STREET0=$TR(STREET0,"-"," ")
 ;
 N HOME S HOME=$P(PRM,"^",4)
 N SUM S SUM=$P(PRM,"^",5)
 ;
 D PUT^%W3DEB("W3HZMST-DMSHCITY","CODE=CODE&CITY0=CITY0&STREET0=STREET0&HOME0=HOME&SUM=SUM")
 ;
 S (CITY,CITY1)=CITY0
 S (STREET,STREET1)=STREET0
 ;
 I '$G(PR) D
 .S CITY=$$INVH^%L1FRM(CITY0)
 .S STREET=$$INVH^%L1FRM(STREET0)
 ;
 I $G(PR) D
 .S CITY1=$$INVH^%L1FRM(CITY0)
 .S STREET1=$$INVH^%L1FRM(STREET0)
 ;
 S CITY=CITY_":"_STREET_":"_HOME
 D PUT^%W3DEB("W3HZMST-DMSHCITY","CITY=CITY")
 ;
 S DMS=$$DMS^W3SP(CITY)
 ;
 N MHCNC S MHCNC=$$MHCNC^W3SP(CITY1)
 I MHCNC,SUM'<MHCNC S DMS=0
 I '$G(CODE) Q DMS
 ;
 I $D(^[$$^%W1UCI(JB)]P1LKDM(CODE)),$$D^W3L(CODE) S DMS=0 G EDMSHCITY
 I $G(@$$^W4GL("P1EZL")@(CODE)) S CODR=^(CODE) I CODR,$D(^[$$^%W1UCI(JB)]P1LKDM(CODR)),$$D^W3L(CODR) G EDMSHCITY
 ;
EDMSHCITY ;
 Q DMS
 ;
 ;
PUTLKHN(JB,LK,GL)
 S GL=$G(GL)
 N LKO S LKO=$$LKHN(JB,GL)
 D PUT(JB,"LKHN",LK,GL)
 D RESET(JB,GL)
 N AHO S AHO=$$AH^W4L(LKO)
 N AHL S AHL=$$AH^W4L(LK)
 N AHZ S AHZ=$$AHUZ(JB,GL)
 N CHN S CHN=0
 I AHL>AHZ S CHN=1
 I LKO,+AHZ=+AHO S CHN=1
 ;
 I CHN D
 .D PUT(JB,"AHUZ",AHL,GL)
 .N TOT S TOT=$$TOTORD(JB)
 .N HNH S HNH=$$HNH^W4HZORD
 .D PUT(JB,"HNH",HNH,GL)
 .N DMSH S DMSH=$$DMSHMSD(JB,GL)
 .D PUT^W4TMPORD("TSHL",$J(TOT-HNH+DMSH,2,2))
 ;
 D SAVE1^W4TMPORD
 Q
 ;
 ;
RESET(JB,GL)
 N MH
 S GL=$G(GL) D GL(JB)
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 N CD0 S CD0=""
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N?1N.N D
 .N UR S UR=$$LVST(JB,N)
 .S CD=$$CDST(JB,N,GL) I UR=0 S CD0=CD
 .S MH=$$MHORD(NMB,CD,UR,CD0)
 .S $P(@GL@(N),"~",4)=MH
 .D SETHNHSHAA(N)
 ;
 N A S A=$$GETSUM(JB,1,GL)
 Q
 ;
MHORD(NMB,COD,UR,CD0) ;
 N PRMHNMB,ZMANK I $G(COD)="" Q ""
 S ZMANK=$$DATCB^W3HZMST(JB)
 I 'ZMANK Q $ZD($H,"DD.MM.YY  24:60")
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 I UR,CD0,$$^W4EZAT(CD0) D
 .I UR>1 S:$G(@$$^W4PRM@("AINOTSF"))!$G(@$$^W4PRM@("AINOTSFMH")) MH=0 Q
 .I CD0 S MH=$$MHT^W4HZTSF(CD0,COD)
 Q MH
 ;
TSH(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",11)
 ;
TSHL(JB,GL) I '$G(JB) Q 0
 D GL(JB)
 I $$TSH(JB,$G(GL))="",$$TOTORD(JB,"",GL) S $P(@GL,"~",11)=$$CALC(JB,GL)
 Q +$$TSH(JB,$G(GL))
 ;;I GL["W3ORD"!$$CLOSE(JB) Q +$$TSH(JB,$G(GL))
 ;;Q $$CALC(JB,GL)
 ;
CALC(JB,GL) ;
 D GL(JB)
 N SUM,SUMD S SUM=$$TOTORD(JB,"",GL),SUMD=$$TOTORD(JB,"D",GL)
 N DMSH S DMSH=$$DMSHMSD(JB,GL) ; $$DMSH(JB,GL,SUM) -- 05/04/17
 S SUM=SUM+DMSH
 S SUM=SUM-$$HNH^W4HZORD
 ;;S SUM=SUM-$$HNH2(JB,GL)
 Q SUM
 ;
TOTORD(JB,PR,GL) ;
 Q $$TOTORD^W4GETSUM(JB,$G(PR),$G(GL))
 ;
DISCA(JB,GL)
 D GL(JB)
 N SUMD S SUMD=$$TOTORD(JB,"D",GL)
 Q SUMD*$$AHUZ(JB)*.01
 ;
GETSUM(JB,PRM,GL)
 Q $$^W4GETSUM(JB,$G(PRM),$G(GL))
 ;
 ;
TOTQN(JB,GL,PR) ;
 D GL(JB)
 N I,SUM S SUM=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .I $G(PR)=0,$$LV(A) Q
 .N QN S QN=$$QNMH(A)
 .N CD S CD=$$CD(A)
 .I $$MSK^W4P(CD) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .S SUM=SUM+QN
 Q SUM
 ;
QNMULTY(QN) ;
 I $G(QN)'["*" Q QN
 N QN1,QN2 S QN1=$P(QN,"*"),QN2=$P(QN,"*",2)
 I QN1["+" S QN1=$$QNPIZZA(QN1)
 I QN2["+" S QN2=$$QNPIZZA(QN2)
 I QN1<0,QN2<0 S QN2=-QN2
 Q QN1*QN2
 ;
QNMH(A) ;
 N QN S QN=$P(A,"~",5)
 I QN["*" S QN=$$QNMULTY(QN)
 Q $$QNPIZZA(QN)
 ;
QNPIZZA(QN) ;
 I QN'["+" Q +QN
 N QNMH S QNMH=0
 I QN["+" D
 .N J F J=1:1:10 I $E(QN,J)="+" S QNMH=QNMH+1
 Q QNMH
 ;
UPDTS(SUM,DMS,GL) ;
 D GL(JB)
 I '$D(@GL) Q
 I $$CLOSE(JB) Q
 S $P(@GL,"~",9)=DMS
 S $P(@GL,"~",11)=SUM
 Q
 ;
FLOOR(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",13)
 ;
FLAT(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",14)
 ;
HOME(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",15)
 ;
ENTRANCE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",16)
 ;
KTV(JB,GL) ;
 N KTV
 I '$G(JB) Q ""
 D GL(JB)
 N STREET,HOME,FLAT,CITY,MIKUD
 S STREET=$$STREET(JB,GL)
 S HOME=$$HOME(JB,GL)
 S FLAT=$$FLAT(JB,GL)
 S CITY=$$CITY(JB,GL)
 S MIKUD=$$MIKUD(JB,GL)
 N HMFL S HMFL=HOME I FLAT S HMFL=HOME_"/"_FLAT
 I CITY="TAKEAWAY",STREET?1N.N S KTV=$S($$ONLINE^W4DLVCSR:$$SNIFA^W3SNIF(STREET),1:$$MSDN^W3R(STREET))
 I CITY="TAKEAWAY",STREET'?1N.N S KTV=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY!")
 I CITY'="TAKEAWAY" D
 .S KTV=$$SPA^%L1FRM(CITY)_" "_$$SPA^%L1FRM(HMFL)_" "_$$SPA^%L1FRM(STREET)
 .I $L(MIKUD) S KTV=MIKUD_" , "_KTV
 Q KTV
 ;
CODTS(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",21)
 ;
DMSAH(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",23)
 ;
CODE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",27)
 ;
LASTU(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",26)
 ;
HZMLAK(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",60)
 ;
CITY(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $$SPA^%L1FRM($P($G(@GL),"~",31))
 ;
TAKEAWAY(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $TR($$CITY(JB,$G(GL))," ","")="TAKEAWAY"
 ;
SNIF(JB,GL) I '$G(JB) Q ""
 S GL=$G(GL)
 N MSD I GL'["W3ORD(" S MSD=$$GET^%W1PRM("MSD")
 I GL["W3ORD(" S MSD=$G(@GL@("MSD"))
 S CITY=$$CITY(JB,GL)
 I MSD=1!(MSD=99999),$TR(CITY,"-","")["aia` lz" Q 1
 I MSD=1!(MSD=99999) Q 2
 Q 1
 ;
PELE(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",32)
 ;
MHMIN(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",33)
 ;
MHCNC(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",37)
 ;
CMHD(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",34)
 ;
DATK(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",29)
 ;
SOAD(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",24)
 ;
LKHN(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",27)
 ;
LKHN1(JB,GL) I '$G(JB) Q ""
 D GL(JB)
 N LKHN S LKHN=$P($G(@GL),"~",27)
 N LKHN1 S LKHN1=""
 I $L(LKHN)>3 S LKHN1=$$LKH^W4L(LKHN)
 Q LKHN1
 ;
FAX(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",58)
 ;
EMAIL(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",56)
 ;
MIKUD(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",57)
 ;
TELB(JB,GL)
 I '$G(JB) Q ""
 D GL(JB)
 Q $P($G(@GL),"~",59)
 ;
GET(JB,RKV,GL) ;
 I $T(@RKV)="" Q ""
 Q @("$$"_RKV_"(JB,GL)")
 ;
GETST(JB,RKV,IND,GL) ;
 I $T(@RKV)="" Q ""
 Q @("$$"_RKV_"(JB,IND,GL)")
 ;
 ;
LI(JB,GL) ;
 D GL(JB)
 Q $O(@GL@(999999),-1)
 ;
HRP(JB,IND,GL)
 D GL(JB)
 N CMST S CMST=""
 S CMST=$P($G(@GL@(IND)),"~",7)
 Q CMST
 ;
CMST0(JB,IND,GL) ;
 D GL(JB)
 N SH0 S SH0=$$SH0(JB,IND,GL)
 I 'SH0 Q ""
 Q $$CMST(JB,SH0,GL)
 ;
CMST(JB,IND,GL) ;
 D GL(JB)
 N HRP S HRP=$$HRP(JB,IND,GL)
 I $L(HRP) Q HRP
 Q $$CMNST(JB,IND,GL)
 ;
CMNST(JB,IND,GL)
 D GL(JB)
 N NEXT S NEXT=$G(@GL@(IND+1))
 I '$P(NEXT,"~") Q ""
 I $P(NEXT,"~",2)'["-C",$P(NEXT,"~",2)'["-H" Q ""
 Q $P(NEXT,"~",3)
 ;
CMST11(JB,IND,GL)
 D GL(JB)
 N CMST S CMST=$$CMST(JB,IND,GL)
 ;;I CMST["[[",CMST["]]",CMST["1+1",+$$MHST(JB,IND,GL)=0 Q 1
 I CMST["[[",CMST["]]",CMST["+1" Q 1
 Q 0
 ;
QN11(JB,IND,GL) ;
 N QN S QN=1
 D GL(JB)
 N CMST S CMST=$$CMST(JB,IND,GL)
 I CMST["[[",CMST["]]",CMST["+1" D
 .S QN=$TR($P($P(CMST,"[[",2),"+")," ","")
 Q QN
 ;
GLIST(JB,IND,GL) ;
 D GL(JB)
 Q $G(@GL@(IND,"GLIST"))
 ;
MANA(JB,IND,GL) ;
 D GL(JB)
 Q $G(@GL@(IND,"MANA"))
 ;
LVST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",1)
 ;
LV(A)
 Q $P(A,"~")
 ;
CDST(JB,IND,GL) ;
 I $G(JB)=""!($G(IND)="") Q ""
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",2)
 ;
CDSTC(JB,IND,GL) ;
 D GL(JB)
 I $$CDST(JB,IND,GL)["-C" Q 1
 Q 0
 ;
CDSTA(JB,IND,GL) ;
 D GL(JB)
 I $$CDST(JB,IND,GL)?1"A"1N.N Q 1
 Q 0
 ;
CD(A) ;
 Q $P(A,"~",2)
 ;
NM(A) ;
 Q $P(A,"~",3)
 ;
CDA(A)
 Q $$CD(A)?1"A"1N.N
 ;
CDC(A) Q $$CD(A)["-C"
 ;
QN(A) ;
 Q $P(A,"~",5)
 ;
QNA(A) ;
 N QN S QN=$$QN(A)
 I QN["*" S QN=$P(QN,"*",2)
 Q QN
 ;
EZAT(JB,IND,GL)
 D GL(JB)
 N OK S OK=0
 I $$LVST(JB,IND,GL)=0 D  Q OK
 .N CD S CD=$$CDST(JB,IND,GL)
 .I $$D^W4EZA(CD) S OK=1 Q
 .I $$D^W4EZT(CD) S OK=2 Q
 ;
 I $$LVST(JB,IND,GL)>0 D  Q OK
 .N II F II=IND:-1:0 Q:'$D(@GL@(II))  Q:$$LVST(JB,II,GL)=0
 .Q:'II
 .N CD S CD=$$CDST(JB,II,GL)
 .I $$D^W4EZA(CD) S OK=3 Q
 .I $$D^W4EZT(CD) S OK=4 Q
 Q OK
 ;
PREZATI(JB,IND,QNDEL,GL) ;
 D GL(JB)
 N A N PREZAT S PREZAT=0,A=""
 D
 .N II F II=IND:-1:0 Q:'$D(@GL@(II))  S A=$G(^(II)) Q:$$LV(A)=0
 .Q:'II
 .N ITR S ITR=$$ITRAST(JB,II,GL)
 .S PREZAT=$$PREZAT(A)
 .I PREZAT,$G(QNDEL),ITR>QNDEL S PREZAT=2
 ;
 Q PREZAT
 ;
PREZAT(A) ;
 N PREZAT S PREZAT=0
 N CD S CD=$$CD(A)
 I '$$^W4MULTY,$$^W4EZAT(CD),'$$LV(A) S PREZAT=1
 Q PREZAT
 ;
NMST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",3)
 ;
NMP(A) Q $P(A,"~",3)
 ;
MHST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",4)
 ;
MHP(A) ;
 Q $P(A,"~",4)
 ;
QNST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",5)
 ;
QNSTA(JB,IND,GL) ;
 D GL(JB) N QN
 S QN=$$QNST(JB,IND,GL)
 I QN["*" Q $P(QN,"*",2)
 Q QN
 ;
QNDIF(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",11)
 ;
QNP(A) ;
 Q $P(A,"~",5)
 ;
AHST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",6)
 ;
AHP(A) Q $P(A,"~",6)
 ;
NOTSFMVC(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",8)
 ;
MVC(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",9)
 ;
MVC2(JB,IND,GL) ;
 D GL(JB)
 Q ($$MVC(JB,IND,GL)="MVC2")
 ;
COUP(JB,IND,GL) ;
 D GL(JB)
 Q ($$MVC(JB,IND,GL)["COUP:")
 ;
ITRAST(JB,IND,GL,PR) ;
 D GL(JB) N QN S QN=$$QNST(JB,IND,GL)
 I $$LVST(JB,IND,GL)=2 Q $$QNIT1(JB,IND,GL,$G(PR))*$$QNSTA(JB,IND,GL)
 I $$LVST(JB,IND,GL)=1,QN["*" Q $$QNIT0(JB,IND,GL,$G(PR))*$$QNSTA(JB,IND,GL)
 N ITR
 ;
 S ITR=$$QNMH($G(@GL@(IND)))-$$MRG(JB,IND,GL)
 ;
 I $G(PR) S ITR=ITR-$$TS(JB,IND,GL)
 Q ITR
 ;
MRG(JB,IND,GL) ;
 D GL(JB)
 Q $G(@GL@("MRG",IND))
 ;
TS(JB,IND,GL) ;
 D GL(JB)
 N TS S TS=0
 N N S N="" F  S N=$O(@GL@("TS",IND,N)) Q:N=""  I N S TS=TS+$G(^(N))
 I TS S @GL@("TS",IND)=TS
 Q TS
 ;
NEXT1(JB,IND,GL)
 D GL(JB)
 N I F I=IND+1:1 Q:'$D(@GL@(I))  Q:$$LVST(JB,IND,GL)<2&'$$CDSTC(JB,IND,GL)
 I '$D(@GL@(I)) Q ""
 Q I
 ;
NEXT0(JB,IND,GL)
 D GL(JB)
 N I F I=IND+1:1 Q:'$D(@GL@(I))  Q:$$LVST(JB,IND,GL)<1&'$$CDSTC(JB,IND,GL)
 I '$D(@GL@(I)) Q ""
 Q I
 ;
QNR(JB,IND,GL) ;
 D GL(JB)
 N QN S QN=$$QNST(JB,IND,GL)
 Q $$QNMULTY(QN)
 ;
HNST(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",6)
 ;
EX2KITCH(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",6)
 ;
WHODEL(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",2)
 ;
WHODEL1(JB,IND,GL) ;
 D GL(JB)
 N WHO S WHO=$$WHODEL(JB,IND,GL)
 I WHO="" Q ""
 Q $$SHORT^W4NAME(WHO)
 ;
SIBA(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",3)
 ;
SIBA1(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("BIT",IND)),"*",4)
 ;
TIMEDEL(JB,IND,GL) ;
 D GL(JB)
 N TM S TM=$P($G(@GL@("BIT",IND)),"*",5)
 Q $$T^%L1TIME(TM)
 ;
WHOHNH(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@("HNH",IND)),"*",2)
 ;
LL(JB,GL) ;
 D GL(JB)
 Q $G(@GL@("LL"))
 ;
MZMNM(JB,GL) ;
 D GL(JB)
 Q $G(@GL@("MZMNM"))
 ;
FIRE(JB,GL) ;
 D GL(JB)
 Q $G(@GL@("FIRE"))
 ;
BSCARD(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","CARD"))
 ;
BSNAME(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","NAME"))
 ;
BSCLUB(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","CLUB"))
 ;
BSCLUB1(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","CLUB1"))
 ;
BSASM(JB,GL)
 D GL(JB)
 Q $G(@GL@("BSL","ASM"))
 ;
NOMOD(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",12)["@@"
 ;
WASHZ(JB,IND,GL) ;
 D GL(JB)
 Q $P($G(@GL@(IND)),"~",13)["HZ"
 ;
SETNOMOD(JB,IND,GL,SMB) ;
 D GL(JB)
 S $P(@GL@(IND),"~",12)="@@"_$G(SMB)
 Q
 ;
GETSMB(JB,IND,GL,SMB) ;
 D GL(JB)
 N A S A=$P(@GL@(IND),"~",12)
 Q $P(A,"@@",2)
 ;
SH0(JB,I,GL)
 D GL(JB)
 I '$G(I) S I=$O(@GL@(99999),-1)
 N I1 F I1=I:-1:1 Q:'$$LVST(JB,I1,GL)&'$$CDSTA(JB,I1,GL)
 I $$LVST(JB,I1)=0 Q I1
 Q ""
 ;
LASTI0(JB,GL) ;
 D GL(JB)
 N N S N=$O(@GL@(99999),-1) I N="" Q 0
 I +$P($G(@GL@(N)),"~")=0 Q N
 F  S N=$O(@GL@(N),-1) Q:N=""  Q:$P($G(@GL@(N)),"~")<1
 I N="" Q 0
 Q N
 ;
LAST0(JB,GL) ;
 D GL(JB)
 I '$G(JB) Q ""
 N N0 S N0=$$LASTI0(JB,GL) I 'N0 Q ""
 Q $G(@GL@(N0))
 ;
QNIT0(JB,I,GL,PR)
 I '$G(JB) Q ""
 D GL(JB)
 N I1 S I1=$$SH0(JB,I)
 I I1 Q $$ITRAST(JB,I1,GL,$G(PR))
 Q ""
 ;
QNIT1(JB,I,GL,PR)
 I '$G(JB) Q ""
 D GL(JB)
 N I1 F I1=I:-1:1 Q:$$LVST(JB,I1,GL)<2&'$$CDSTC(JB,I1,GL)
 I $$LVST(JB,I1,GL)=1 Q $$ITRAST(JB,I1,GL,$G(PR))
 Q ""
 ;
QN1(JB,I,GL)
 I '$G(JB) Q ""
 D GL(JB)
 N I1 F I1=I:-1:1 Q:$$LVST(JB,I1,GL)<2&'$$CDSTC(JB,I1,GL)
 I $$LVST(JB,I1,GL)=1 Q $$QNR(JB,I1,GL)
 Q ""
 ;
CLOSE(JB) ;
 I '$G(JB) Q 0
 I $$PSL(JB) Q 1
 I $D(@$$^W3ORD(JB)@(JB,"S")) Q 1
 Q 0
 ;
PUT(HZ,NM,VL,GL) ;
 I $G(GL)="" S GL=$$^W3TMPORD_"("_HZ_")"
 I NM="NMB" S $P(@GL,"~",1)=VL
 I NM="NAME" S $P(@GL,"~",2)=VL
 I NM="STREET" S $P(@GL,"~",3)=VL
 I NM="DATCB" S $P(@GL,"~",4)=VL
 I NM="DAT" S $P(@GL,"~",5)=VL
 I NM="SHAA" S $P(@GL,"~",6)=VL
 I NM="COMMENT" S $P(@GL,"~",7)=VL
 I NM="HNH" S $P(@GL,"~",8)=VL
 I NM="DMSH" S $P(@GL,"~",9)=VL
 I NM="MAM" S $P(@GL,"~",10)=VL
 I NM="TSHL" S $P(@GL,"~",11)=VL
 I NM="SHUL" S $P(@GL,"~",12)=VL
 I NM="FLOOR" S $P(@GL,"~",13)=VL
 I NM="FLAT" S $P(@GL,"~",14)=VL
 I NM="HOME" S $P(@GL,"~",15)=VL
 I NM="ENTRANCE" S $P(@GL,"~",16)=VL
 I NM="SHULA" S $P(@GL,"~",17)=VL
 I NM="MKBL" S $P(@GL,"~",18)=VL
 I NM="HNH2" S $P(@GL,"~",19)=VL
 I NM="HESH" S $P(@GL,"~",20)=VL
 I NM="CODTS" S $P(@GL,"~",21)=VL
 I NM="DMSAH" S $P(@GL,"~",23)=VL
 I NM="SOAD" S $P(@GL,"~",24)=VL D SETSOAD^W4TMPHD(VL)
 I NM="LASTU" S $P(@GL,"~",26)=VL
 I NM="LKHN" S $P(@GL,"~",27)=VL
 I NM="CODE" S $P(@GL,"~",27)=VL
 I NM="DATK" S $P(@GL,"~",29)=VL
 I NM="CITY" S $P(@GL,"~",31)=VL
 I NM="PELE" S $P(@GL,"~",32)=VL
 I NM="MHMIN" S $P(@GL,"~",33)=VL
 I NM="CMHD" S $P(@GL,"~",34)=VL
 I NM="MHCNC" S $P(@GL,"~",37)=VL
 I NM="AHUZ" S $P(@GL,"~",38)=VL
 I NM="HRA2" S $P(@GL,"~",44)=VL
 I NM="CIBCOMP" S $P(@GL,"~",45)=VL
 I NM="CIBCARD" S $P(@GL,"~",46)=VL
 I NM="COMP" S $P(@GL,"~",47)=VL
 I NM="CREDCARD" S $P(@GL,"~",48)=VL
 I NM="CREDMMYY" S $P(@GL,"~",49)=VL
 I NM="CREDTZ" S $P(@GL,"~",50)=VL
 I NM="MKR" S $P(@GL,"~",51)=VL
 I NM="TNBCOMP" S $P(@GL,"~",52)=VL
 I NM="TNBCARD" S $P(@GL,"~",53)=VL
 I NM="TNBPAY" S $P(@GL,"~",54)=VL
 I NM="PSL" S $P(@GL,"~",55)=VL
 I NM="EMAIL" S $P(@GL,"~",56)=VL
 I NM="MIKUD" S $P(@GL,"~",57)=VL
 I NM="FAX" S $P(@GL,"~",58)=VL
 I NM="TELB" S $P(@GL,"~",59)=VL
 I NM="HZMLAK" S $P(@GL,"~",60)=VL
 I NM="CREDCVV2" S $P(@GL,"~",61)=VL
 I NM="CREDSUM" S $P(@GL,"~",62)=VL
 I NM="TZ" S $P(@GL,"~",64)=VL
 I NM="CASH" S $P(@GL,"~",67)=VL
 I NM="CIBPAY" S $P(@GL,"~",68)=VL
 ;
 I NM["," D
 .N II F II=1:1:$L(NM,",") D
 ..N NMFLD S NMFLD=$P(NM,",",II) D PUT(HZ,NMFLD,VL,$G(GL))
 ;
 Q
 ;
PAID(JB) ;
 Q $$CASH(JB)+$$CREDSUM(JB)+$$TNBPAY(JB)+$$CIBPAY(JB)
 ;
GL(JB) ;
 I $G(GL)'="",$G(GL)'["(" S GL=GL_"(JB)" Q
 S JB=+JB
 I $G(GL)="" D
 .S GL=$$^W4TMPORD Q:$$CSR^W4DLVCSR
 .I '$D(@GL),$D(@$$^W3ORD(JB)@(+JB)) S GL=$$^W3ORD_"(JB)"
 Q
 ;
SETHNHSHAA(SH) ;
 N GORD S GORD="^[$$^W3MAIN]TMPORD(JB)"
 N ST S ST=$G(@GORD@(SH))
 N CDPAR S CDPAR=$$CD(ST) Q:'CDPAR
 I $$MH^W4P(CDPAR)["%",$$AHP(ST) Q
 N NMB S NMB=$$GET^%W1PRM("NMB") Q:'NMB
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 N ZMANK S ZMANK=$$DATCB^W3HZMST(JB)
 N HNHSHAA S HNHSHAA=$$^W4HNHSHA(CDPAR,NMB)
 ;
 I 'HNHSHAA D SETHNHMVC(SH) Q
 ;
 I '$$DISCPRC^W4PRM D
 .S $P(@GORD@(SH),"~",6)=$S(HNHSHAA:$J(HNHSHAA,2,2),1:"")
 .S $P(@GORD@(SH),"~",7)=$S(HNHSHAA:$$TV^%W1DICT($$^%W1LNG,"DISCOUNTPERHOUER"),1:"")
 .S $P(@GORD@(SH),"~",8)=$$NOTSFMVC^W4PRM
 ;
 I $$DISCPRC^W4PRM D
 .N PRMHNMB,MH S PRMHNMB=NMB S MH=$J($$MH^W4P(CDPAR),2,2)
 .S $P(@GORD@(SH),"~",4)=MH
 .S $P(@GORD@(SH),"~",6)=""
 .S $P(@GORD@(SH),"~",7)=$S(HNHSHAA:$$TV^%W1DICT($$^%W1LNG,"DISCOUNTPERHOUER"),1:"")
 .S $P(@GORD@(SH),"~",8)=$$NOTSFMVC^W4PRM
 Q
 ;
COLSH0(JB) ;
 N I,A S I=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .I $P(A,"~")=0 S I=I+1
 Q I
 ;
SETHNHMVC(SH) ;
 N PAR,MVC,A,DT1,DT2,SET,QNORD,QNMVC,HNHMVC,HNAH,MVCMX,GLNVC,GLSET,GORD,P1DZ
 S P1DZ=$$^W4DZ
 S GLMVC=$$^W4GL("W4MVCAH")
 S GLSET=$$^W4GL("P1SETM")
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 ;
 S PAR=$$CDST(JB,SH) Q:'PAR
 S QNORD=$$QNST(JB,SH)
 ;
 S HNHMVC=0,MVCMX=0
 S MVC="" F  S MVC=$O(@GLMVC@(MVC)) Q:MVC=""  D
 .S A=$G(^(MVC,1))
 .S DT1=$$GETMVC(MVC,"DT1")
 .S DT2=$$GETMVC(MVC,"DT2")
 .;
 .I P1DZ<DT1!(P1DZ>DT2) Q
 .S SET=$$GETMVC(MVC,"SET") Q:'SET
 .I $D(@GLSET@(SET,PAR)) D
 ..S HNAH=$$GETMVC(MVC,"HNAH") Q:'HNAH
 ..I HNAH>HNHMVC S HNHMVC=HNAH,MVCMX=MVC
 ;
 I HNHMVC D
 .S $P(@GORD@(SH),"~",6)=$J(HNHMVC,2,2)
 .N SALENM S SALENM=$G(@$$^W4GL("W4MVCAH")@(MVCMX))
 .S $P(@GORD@(SH),"~",7)=$$TV^%W1DICT($$^%W1LNG,"SALE",SALENM)
 .S $P(@GORD@(SH),"~",8)=$$NOTSFMVC^W4PRM
 Q
 ;
GETMVC(MVC,PRM) ;
 N A S A=$G(@GLMVC@(MVC,1))
 I PRM="SET" Q $P(A,"\",1)
 I PRM="HNAH" Q $P(A,"\",2)
 I PRM="DT1" Q $$^%L1DC($P(A,"\",3),3)
 I PRM="DT2" Q $$^%L1DC($P(A,"\",4),3)
 Q ""
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZORD
W3HZORD(TXT) ; [ 02.04.26 10:40 ] [ 18.03.26 15:46 ] [ 17.03.26 08:26 ] 
 N (JB,%ARG,TXT,BACK)
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 ;
 K @$$^W4MAIN("TMPPAY")
 ;
 S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 D PUT^%W3DEB("W3HZORD","TXT=TXT & MSD=MSD & BACK=BACK & %ARG=[%ARG")
 ;
 I $$^W4ELPOS,$$LMAM^W4PRM,$$LMAM="" D PUT^%W1PRM("LMAM",1)
 ;
 N W3HZORD S W3HZORD=""
 ;
 K TXT
 ;
 S CUR=0
 ;
 D TMPORD,TMPORD1
 ;
 D TESTCOUP^W3MVC ; -- BDIKAT KUPONIM
 ;
 I $G(@TMPORD@("BACK"))=2 D COPYOLD ; -- ? COPY FROM OLD ORDER
 ;
 I $D(@$$^W4TMPORD)<10,$$^W6,$$GETP^%W1PRM("HZM")>0 D
 .S A=$$^W4GETHZ($$GETP^%W1PRM("HZM"))
 ;
 D PUT^%W1PRM("SHOWORD",1)
 ;
VIEW ;
 N CD0,CD1
 W "<form>",!
 W "<div align=""center"" id=""divord"" "
 ;;W " dir="""_$$^%W1DIR_""""
 W " style=""height:98%;overflow:auto;"
 W """"
 W ">",!
 ;
 I $$^W4SMALL D SMALLBUT W "<br>",!
 ;
 I $$^W4ELPOS,'$$^W6 D
 .I $$LMAM^W4PRM D SHOWPRMAM
 .W "<br>"
 .W "<span dir="""_$$^%W1DIR_""" style=""color:red"">"_$$^%W1DICT("TOMOVELINECLICKCODE")_"</span>"
 ;
 N MKRPZM S MKRPZM=0
 S MKRPZM=$$MAGIAPIZUIM^W4HZORHD
 I MKRPZM D SHOWPIZUIM^W4HZORHD(MKRPZM)
 ;
 W "<table id=""TblOrd"" width=""98%"" border=""0"""
 W " class=""bgtblord"""
 W " cellspacing="""_$S($$^W4SMALL:0,1:1)_""""
   W " dir="""_$$^%W1DIR_""" "
 W ">",!
 ;
 D THKOT
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 ;
 I $$^W4MSD(NMB),'$O(@TMPORD@(99999),-1),'$$^W4SMALL,'$$^W6 D  ; -- TABLE HISTORY
 . W "<tr><td colspan=""8"">"
 .  W "<input type=""button"" "
 .  W "style=""height:"_$$^W4KF(50)_"px;width:100%;text-align:center;color:darkred;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"" "
 .  W "value="""_$$^W4DICTHS(NMB)_""" "
 .  W $$^W4TOUCH_"=""TableHistory()"" >"
 . W "</td></tr>",!
 ;
 S FLA=0,FLED=0,CD0="",ST0="" ;
 ;
 N I F I=1:1 Q:'$D(@TMPORD@(I))  D
 .N A S A=$G(^(I))
 .N CD S CD=$$CD(A)
 .S $P(@TMPORD@(I),"~",10)=I
 .
 .I $$LV(A)=0 D STLV0(A,I) ; --------------------------  ITEMS
 .
 .I $$LV(A) D STLV1(A,I) ; -------------- ADDITIONS ---------
 ;
 I $$^W4SMALL D SMALLTOT
 ;
 W "</table>",!
 W "<br>",!
 ;
 I '$$ONLINE^W4DLVCSR,$$ISPRTBH D
 .W "<span style=""color:red"
 . I $$^W4SMALL W ";font-size:"_$$^W3FSZ
 .W """ dir="""_$$^%W1DIR_""">"
 . W $$^%W1DICT("SIGNEDITEMSNODISCOUNT")
 .W "</span><br>",!
 ;
 I $$^W4SMALL D
 .W "<br>",!
 .D SMALLBUT
 ;
 W "</div>",!
 W "</form>",!
 ;
 D SCRIPTDOWN
 ;
 K BACK,%ARG("BACK")
 Q
 ;----------------------- END BODY ------------------
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
TMPORD1 S TMPORD1="^[$$^W3MAIN]TMPORD1(JB)"
 Q
 ;
BGED(SH) ;
 N LV,CD
 S LV=$$LVST^W3HZMST(JB,SH)
 S CD=$$CDST^W3HZMST(JB,SH)
 I LV=0,CD,$$DELIM^W4P(CD) Q $$^W4DLMSTL
 I LV=0,CD,$$DLM^W4P(CD) Q $$DLM^W4DLMSTL
 I $$MVC2^W3HZMST(JB,SH) Q " style=""background-color:magenta;color:orange"""
 I $$COUP^W3HZMST(JB,SH) Q " style=""background-color:magenta;color:orange"""
 I $$QNST^W3HZMST(JB,SH)<0 Q " style=""background-color:pink"""
 I $$NOMOD^W3HZMST(JB,SH) Q " style=""background-color:white"" "
 I $G(FLED) Q " style=""background-color:yellow;color:black"""
 Q ""
 ;
TDBG(STAM) ;
 N LV,CD,QN
 S LV=$$LVST^W3HZMST(JB,+$G(I))
 S CD=$$CDST^W3HZMST(JB,+$G(I))
 S QN=$$QNST^W3HZMST(JB,+$G(I))
 I LV=0,CD,$$DELIM^W4P(CD) Q $$^W4DLMSTL
 I LV=0,CD,$$DLM^W4P(CD) Q $$DLM^W4DLMSTL
 I QN<0 Q " style=""background-color:pink"" "
 I $$NOMOD^W3HZMST(JB,+$G(I)) Q " class=""tdnomod"" "
 I '$G(FLED) Q " class=""tdbgord"""
 Q ""
 ;
TDBG1(STAM) ;
 I $$NOMOD^W3HZMST(JB,+$G(I)) Q " class=""tdnomod"" "
 I '$G(FLED) Q " class=""tdbgord"""
 Q ""
 ;
STYLEMVC2(I) ;
 I '$G(FLED),$$MVC2^W3HZMST(JB,I)!$$COUP^W3HZMST(JB,I) D  Q
 .W ";background-color:pink"
 ;
 I $G(FLED),$$MVC2^W3HZMST(JB,I) W ";background-color:yellow"
 Q
 ;
 ;
IMGED(I) ;
 D TMPORD
 I $$COUP^W3HZMST(JB,I) Q
 N CD S CD=$P($G(@TMPORD@(I)),"~",2)
 I $$^W4CDSRV(CD) Q
 I $$NOMOD^W3HZMST(JB,I) Q
 I $$QNST^W3HZMST(JB,I)<0 Q
 ;
 N STP,NMB
 S STP=$$^W4CLWTXT($P($G(@TMPORD@(I)),"~",2,25))
 S NMB=$$GETP^%W1PRM("NMB")
 ;
 W " <img src="""_$S($$^W6:"w4edit.jpg",$$SFC^W3CSS!($$COLOR^W3CSS="RW"):"w3edit.jpg",1:"w3editb.jpg")_""" "
 W "alt="""_$$^%W1DICT("EDIT")_""" "
 D
 .I $$^W6 W " width=""40"" height=""40"" " Q
 .I $$^W4SMALL W " width=""35"" height=""35"" "
 W "onClick="""_$$EDITLINE(NMB,I)_""" />"
 Q
 ;
EDITLINE(NMB,I) ;
 Q "EditRowOrd('LV0"_I_"','"_I_"','"_NMB_"')"
 ; 
LV(A) ;
 N LV
 S LV=$$H2U^%L1FRM($P(A,"~",1))
 I LV="" Q "&nbsp;"
 Q LV
 ;
CD(A) ;
 N CD
 S CD=$P(A,"~",2)
 I CD="" Q "&nbsp;"
 Q CD
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
NAM(A) ;
 N NM
 S NM=$$CNWEB^%L1FRM($P(A,"~",3))
 I $$^%W1LNG="E" S NM=$$VWENG^%L1FRM(NM)
 S NM=$$H2U^%L1FRM(NM)
 I NM="" Q "&nbsp;"
 Q NM
 ;
SHOWMH(A)
 I $$^W4CDSRV($$CD(A)) Q "&nbsp;"
 N MH S MH=$$MHL(A)
 I $$PRTBH(A),'$$^W4SMALL S MH=MH_"<span style=""color:red"">*</span>"
 Q MH
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 Q MH
 ;
MHL(A) ;
 N AHMAM,MH S MH=$$MH(A)
 S AHMAM=$$GETP^%W1PRM("AHMAM")
 I $$LMAM S MH=$J(MH*100/(100+AHMAM),2,2)
 Q MH
 ;
PRTBH(A) ;
 N CD S CD=$$CD(A) I CD="" Q 0
 I $$^W4PRTBH(CD) Q 1
 Q 0
 ;
ISPRTBH(STAM)
 N I,A,OK S OK=0
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPORD(JB,I))  D  Q:OK
 .S A=$G(^(I))
 .I $$PRTBH(A) S OK=1
 Q OK
 ;
QN(A) ;
 I $$CDC(A) Q "&nbsp;"
 I $$CDH(A) Q "&nbsp;"
 N QN
 S QN=$P(A,"~",5)
 I QN["*",$P(QN,"*")=1 S QN=$P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
CMNT(A) ;
 N CMNT
 S CMNT=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",7)))
 I CMNT="" Q "&nbsp;"
 Q CMNT
 ;
TIP(T)
 N CT
 S CT=$P(T,"~")
 I CT'["-",$E(CT)="A" Q "A"
 I CT["-" S CT=$P(CT,"-",2) I $E(CT)="C" Q "C"
 Q ""
 ;
QNTD(SH) ;
 Q "QN"_SH
 ;
QNTDI(SH) ;
 Q "QNID"_SH
 ;
NMTDD(SH) ;
 Q "DL"_SH
 ;
NMTDDI(SH) ;
 Q "DLID"_SH
 ;
NOMOD(SH) ;
 N GORD S GORD="^[$$^W3MAIN]TMPORD(JB)"
 S SH=$$FINDSH(SH) I 'SH  Q 0
 Q +$$NOMOD^W3HZMST(JB,SH)
 ;                        
 ;
DELROW(SH) ; ---- BITUL SHURAT PARIT KOLEL TOSAFOT
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W3HZORD","DELROW-SH=SH")
 ;
 N GORD S GORD="^[$$^W3MAIN]TMPORD(JB)"
 S SH=$$FINDSH(SH) Q:SH=""
 I SH=$O(@GORD@(9999),-1) S PRL=1
 I $P($G(@GORD@(SH)),"~")'=0 Q
 ;
 I $$MVC2^W3HZMST(JB,SH) K @GORD@("MVC2")
 D CLRCOUP
 ;
 D DEL^%L1GSEQ(GORD,SH)
 D SET^W4ITEND($$CDST^W3HZMST(JB,SH),-$$QNR^W3HZMST(JB,SH))
 ;
 F  Q:'$D(@GORD@(SH))  Q:$P($G(@GORD@(SH)),"~")=0  D
 .D DEL^%L1GSEQ(GORD,SH)
 .D SET^W4ITEND($$CDST^W3HZMST(JB,SH),-$$QNR^W3HZMST(JB,SH))
 ;
 S A=$G(@GORD@(SH))
 ;
 S A0=$G(@GORD@(SH-1))
 I $$CD(A0)="A",$E(A)="A",SH>1 D DEL^%L1GSEQ(GORD,SH-1) S SH=SH-1
 Q
 ;
 ;
EDITROW(SH) ;
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W3HZORD","EDIT-SH=SH")
 ;
 N GORD S GORD="^[$$^W3MAIN]TMPORD(JB)"
 S SH=$$FINDSH(SH) Q:SH=""
 I SH=$O(@GORD@(9999),-1) S PRL=1
 I $P($G(@GORD@(SH)),"~")'=0 Q
 ;
 N GT S GT="^[$$^W3MAIN]TMPTF($$^%W1JB,3)"
 K @GT
 Q
 ;
 ;
CHANGE(SHCM) ;
 D TMPORD
 N SH,SH1,CM,CMOLD,CM1OLD
 ;
 S SH=$P(SHCM,"~"),CM=$P(SHCM,"~",2)
 S SH=$$FINDSH(SH) Q:SH=""
 D PUT^%W3DEB("W3HZORD","CHANGE-SH=SH & CHANGE-CM=CM")
 ;
 N CMOLD S CMOLD=$$QNR^W3HZMST(JB,SH)
 ;
 S $P(@TMPORD@(SH),"~",5)=CM
 ;
 I $P(@TMPORD@(SH),"~")=0 D
 .N A
 .F SH1=SH+1:1 Q:'$D(@TMPORD@(SH1))  S A=$G(^(SH1)) Q:$P(A,"~")=0  D
 ..I $$CDA(A) Q
 ..N CM1,CM1OLD S CM1OLD=$$QNST^W3HZMST(JB,SH1),CM1=CM1OLD
 ..I CM1OLD["*" S CM1=CM_"*"_$P(CM1OLD,"*",2)
 ..I CM1OLD'["*" S CM1=CM_"*"_CM1OLD
 ..I CM1["*",$P(CM1,"*",2),$P(CM1,"*")=1 S CM1=$P(CM1,"*",2)
 ..S $P(@TMPORD@(SH1),"~",5)=CM1
 Q
 ;
 ;
CHANGEDISC(SHDS) ;
 N TMPORD D TMPORD
 N SH,SH1
 S SH=$P(SHDS,"~") Q:'SH
 Q:'$D(@TMPORD@(SH))
 ;
 S DISC=$P(SHDS,"~",2)
 ;
 S $P(@TMPORD@(SH),"~",6)=DISC
 Q
 ;
 I $P(@TMPORD@(SH),"~")=0 D
 .N A
 .F SH1=SH+1:1 Q:'$D(@TMPORD@(SH1))  S A=$G(^(SH1)) Q:$P(A,"~")=0  D
 ..I $$NOCD(A) Q
 ..S CD=$$CD(A)
 ..I $D(@$$^W4GL("PRTBH")@(CD)) Q
 ..S $P(@TMPORD@(SH1),"~",6)=DISC
 Q
 ;
 ;
LAST0(STAM) ;
 D TMPORD
 N N S N=$O(@TMPORD@(9999),-1) I N="" Q ""
 I $P($G(^(N)),"~")=0 Q ^(N)
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  Q:$P(^(N),"~")=0
 I N="" Q ""
 Q $G(@TMPORD@(N))
 ;
 ;
LASTAI(STAM)
 N TX S TX=$$LAST0 I TX="" Q 0
 N CD S CD=$P(TX,"~",2) I CD="" Q 0
 I $D(@$$^W4GL("P1EZA")@(CD))!$D(@$$^W4GL("P1EZT")@(CD)) Q 1
 Q 0
 ;
 ;
BDIKA(TXT) ;
 Q:'$G(JB) 1
 ;;Q:$$^W3MENU 1
 N LI
 N STPAR S STPAR=$$LAST0^W3HZMST(JB) I STPAR="" Q 1
 S LI=$$LI^W3HZMST(JB) Q:'LI 1
 ;
 N VA
 I $P(TXT,"~")=0 S VA=$$^W3VLDADD(TXT) S:VA="" VA=0 I 'VA Q VA
 Q 1
 ;
 ;
SEDERKV ;
 D TMPORD
 N I,J,N,K S J=0
 N LI S LI=$$LI^W3HZMST(JB) I 'LI Q
 I $$LVST^W3HZMST(JB,LI)=0 Q
 N N0 S N0=$$LASTI0^W3HZMST(JB) Q:'N0
 N GR,GR1
 F I=N0+1:1 Q:'$D(@TMPORD@(I))  D
 .S J=J+1,GR(J)=^(I)
 ;
 S GR($O(GR(999),-1),"LAST")=""
 ;
 Q:$D(^[$$^W3MAIN]TMPTF($$^%W1JB,3))<10
 N PAR S PAR=$$CDST^W3HZMST(JB,N0)
 Q:$G(^[$$^W3MAIN]TMPTF($$^%W1JB,3))'=PAR
 N BGA,STA
 S BGA=0,STA=""
 S N="" F  S N=$O(^[$$^W3MAIN]TMPTF($$^%W1JB,3,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S CDTF=$$CD^W3TMPTF(A)
 .I $E(CDTF)="A" S BGA=N,STA=A Q
 .F J=1:1 Q:'$D(GR(J))  D
 ..N OK S OK=0
 ..I $P(GR(J),"~",2)=CDTF D  Q:OK
 ...M GR1(N)=GR(J) S OK=1
 ...I BGA S GR1(N,"A")=STA S BGA=0,STA=""
 ;
 D PUT^%W3DEB("W3HZORD","GR1=[GR1")
 ;
 F I=N0+1:1 Q:'$D(@TMPORD@(I))  K ^(I)
 S K=0
 ;
 S N="" F  S N=$O(GR1(N)) Q:N=""  D
 .I $D(GR1(N,"A")) S K=K+1,@TMPORD@(N0+K)="1~"_GR1(N,"A")
 .S K=K+1,@TMPORD@(N0+K)=GR1(N)
 .I $D(GR1(N,"LAST")) S CUR=N0+K
 Q
 ;
 ;
STADD(TXT) ;
 I $P(TXT,"~",2),$P(TXT,"~",4),$P(TXT,"~",5) D CLRCOUP
 D TMPORD
 D PUT^%W3DEB("W3HZORD","STADD-TXT=TXT")
 N CD S CD=$P(TXT,"~",2) Q:CD=""
 N OK S OK=0
 ;
 S $P(TXT,"~",3)=$$CNWEB^%L1FRM($P(TXT,"~",3)) ; -- NAME
 ;
 N ST S ST=$P(TXT,"~",1,4)_"~"
 S ST=ST_$S($$TIP(CD)="C":"",$P(TXT,"~",5):$P(TXT,"~",5),1:1)
 I $P(TXT,"~",7)'="" S $P(ST,"~",7)=$P(TXT,"~",7)
 ;
 I $$MVC^W3ST(TXT)="MVC2"!($$MVC^W3ST(TXT)["COUP") D
 .D SETMVC^W3ST("ST",$$MVC^W3ST(TXT))
 ;
 N HRKV S HRKV=$$SPA^%L1FRM($$HRA^W4P(CD))
 I HRKV'?.P S $P(ST,"~",7)=HRKV
 ;
 N HN S HN=$$^W4HNHSHA(CD,$$NMB^W3HZMST(JB))
 I HN S $P(ST,"~",6)=HN
 ;
 I $$PRCVAR^W4P(CD) D PUT^%W1PRM("STPAR",ST) Q
 S @TMPORD@($O(@TMPORD@(99999),-1)+1)=ST
 Q
 ;
 ;
FINDSH(SH) ;
 D TMPORD
 S SH=$E(SH,4,8) I 'SH Q 0
 N N S N=SH
 I $P($G(@TMPORD@(SH)),"~",10)'=SH D
 .S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  Q:$P($G(^(N)),"~",10)=SH
 Q N
 ;
COPY(JB) ;
 D TMPORD
 K @TMPORD@("S")
 N NMB S NMB=$P(@TMPORD,"~",1)
 N LKHN S LKHN=$P(@TMPORD,"~",27)
 I NMB["!" D
 .S $P(@TMPORD,"~",1)=$TR(NMB,"-! ","")
 I LKHN["!" D
 .S LKHN=$TR(LKHN,"!-, ","")
 .S $P(@TMPORD,"~",27)=LKHN
 I $G(CODE)=""!($G(CODE)["!") S CODE=LKHN D PUT^%W1PRM("CODE",CODE)
 S $P(@TMPORD,"~",4)=""
 S $P(@TMPORD,"~",5)=""
 S $P(@TMPORD,"~",6)=""
 S $P(@TMPORD,"~",7)=""
 S $P(@TMPORD,"~",8)=""
 S $P(@TMPORD,"~",9)=""
 S $P(@TMPORD,"~",11)=""
 S $P(@TMPORD,"~",21)=""
 S $P(@TMPORD,"~",35)=""
 S $P(@TMPORD,"~",38)=""
 N I
 S PAR0=""
 F I=1:1 Q:'$D(@TMPORD@(I))  D
 .N UR S UR=$P($G(^(I)),"~",1)
 .N PAR S PAR=$P($G(^(I)),"~",2)
 .S $P(@TMPORD@(I),"~",3)=$$SHEM^W4P(PAR)
 .I UR=0 S $P(@TMPORD@(I),"~",4)=$$MH^W4P(PAR),PAR0=PAR
 .I UR=1,$D(@$$^W4GL("P1EZA")@(PAR0))!$D(@$$^W4GL("P1EZT")@(PAR0))'="",$D(@$$^W4GL("MHT")@(PAR0,PAR)) D  Q
 ..N MH S MH=^(PAR) S $P(@TMPORD@(I),"~",4)=MH
 .I UR=1,$D(@$$^W4GL("P1EZA")@(PAR0))!$D(@$$^W4GL("P1EZT")@(PAR0))'="",'$D(@$$^W4GL("MHT")@(PAR0,PAR)) D  Q
 ..S $P(@TMPORD@(I),"~",4)=0
 .I UR=1,$D(@$$^W4GL("P1EZR")@(PAR0)) D  Q
 ..S $P(@TMPORD@(I),"~",4)=0
 .I UR=1,$D(@$$^W4GL("P1EZI")@(PAR0)) D  Q
 ..S $P(@TMPORD@(I),"~",4)=$$MH^W4P(PAR)
 F I=1:1 Q:'$D(@TMPORD@(I))  D
 .S $P(@TMPORD@(I),"~",4)=$J($P($G(@TMPORD@(I)),"~",4),2,2)
 Q
CLASSTH(STAM) ;
 Q " class=""tblordhd"" style=""font-size:"_$$^W3FSZ(12)_""""
 ;
 ;
CLRCOUP ;
 N I,MVC
 F I=1:1 Q:'$D(@$$^W3TMPORD@(JB,I))  D
 .S MVC=$$MVC^W3HZMST(JB,I)
 .I MVC["COUP" D
 ..D DEL^%L1GSEQ($$^W3TMPORD_"(JB)",I)
 ..K @$$^W3TMPORD@(JB,MVC)
 Q
 ;
W3DEL(STAM) ;
 N BG
 S BG=$$BGTBLORD^W3CSS
 ;
 I $$WW^W6 Q "w4del20.png"
 I $$FUNC^%LCASE(BG)="background-color:black" Q "w3del1.png"
 Q "w3delsmall.png"
 ;
W3COPY(STAM) ;
 N BG
 S BG=$$BGTBLORD^W3CSS
 I $$FUNC^%LCASE(BG)="background-color:black" Q "w3copy1.png"
 Q "w3copy.png"
 ;
DMSH(JB) ;
 N CITY
 I $P($G(@$$^W3TMPORD@(JB)),"~",9)="" D  Q $$DMSH^W3HZTFR(CITY,$$TOTORD^W3HZMST(JB))
 .N CODE S CODE=$$GET^%W1PRM("CODE")
 .S CITY=$$CITY^W3HZMST(JB)
 .I CITY="",CODE,CODE'["!" S CITY=$$IR^W3L(CODE)
 Q $$DMSH^W3HZMST(JB)
 ;
SMALLBUT ;
 W "<table width=""100%"" dir="""_$$^%W1DIR_""">",!
  W "<tr align=""center"" >",!
   W "<td>",!
   W " <input type=""button"" class=""btnsmall"" style=""color:red"" value="""_$$^%W1DICT("BACK2MENU")_""" onClick=""Back2MnP()"" />"
   W "</td>",!
   I $$FULLORD D
   .D TDSP
   .W "<td>",!
   . W " <input type=""button"" class=""btnsmall"" style=""color:green"" value="""_$$^%W1DICT("TERMORD")_""" onClick=""TermOrd()"" />"
   .W "</td>"
   ; 
   I '$$FULLORD D
   .W "<td>",!
   .W " &nbsp;"
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
CDSPACE ;
 I $$CODE D TDSP
 Q
 ;
TOTEND ;
 D TDSP,TDSP
 Q
 ;
FULLORD(STAM) ;
 I $$TOTORD^W3HZMST(JB)>0 Q 1
 Q 0
 ;
BORDER(STAM) ;
 I $$^%W1LNG="H" Q "border-right:1px ridge grey"
 Q "border-left:1px ridge grey"
 ;
COPYOLD ; 
 N I,PRDEL,PAR0 S I=0,PRDEL=0,PAR0=""
 N N S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I N'?1N.N Q
 .N PAR S PAR=$P(A,"~",2) Q:PAR=""
 .I $$LV(A)=0 S PAR0=PAR
 .N SUG S SUG=$$SUG^W4P(PAR)
 .I $$NOPAR^W4PRTVW(PAR) S:$$LV(A)=0 PRDEL=1 Q
 .I SUG,'$$^W4VWGR(SUG),$$LV(A)=0 S:$$LV(A)=0 PRDEL=1 Q
 .I $$LV(A)>0,PRDEL Q
 .S I=I+1
 .M @TMPORD1@(I)=@TMPORD@(N)
 .I $$LV(A)=0 S PRDEL=0,$P(@TMPORD1@(N),"~",4)=$$MH^W3HZPRTN($$GET^%W1PRM("NMB"),PAR) Q
 .I $$LV(A)=1,PAR0 S $P(@TMPORD1@(N),"~",4)=$$MHT^W3HZTSF(PAR0,PAR) Q
 ;
 K @TMPORD M @TMPORD=@TMPORD1 K @TMPORD1
 
 ;N J F J=4:1:12,17,21,23,26,30,33,34,38,45,46,48,49,50 D
 .S $P(@TMPORD,"~",J)=""
 Q
 ;
THKOT ;
 W "<tr " ; ----------------- TABLE HEADER
 W ">",!
  I $$CODE W " <th "_$$CLASSTH_" >"_$$^%W1DICT("ITEMCODE")_"</th>",!
  W " <th "_$$CLASSTH_">"_$$^%W1DICT("ITEMNAME")_"</th>",!
  W " <th "_$$CLASSTH_">"_$$^%W1DICT("PRICE")_"</th>",!
  W " <th "_$$CLASSTH_">"_$$^%W1DICT("QUANT")_"</th>",!
  I $$CSR,'$$W6 D
  .W " <th "_$$CLASSTH_">"_$$^%W1DICT("DISCPERCENT")_"</th>",!
  I $$CSR!$$^W6 D
  .W " <th "_$$CLASSTH_">"_$$^%W1DICT("SUM")_"</th>",!
  ;
  I $$W6EDORD D
  .W " <th "_$$CLASSTH_">"_$$^%W1DICT("UPDATE")_"</th>",! ; ***01/11/23
 W "</tr>",!
 ;
 Q
 ;
 ;
STLV0(A,I) ;
 N CD S CD=$$CD(A),ST0=A
 S FLA=0,FLED=0,CD0=CD,DISC0=0
 I $$SHID=("LV0"_I) S FLED=1
 ;
 W "<tr id=""LV0"_I_""" class=""forecolor"""
  I $$^W6 W "height=""50px"" "
  W $$BGED(I)
 W ">",!
 ;
 I $$CODE D  ; -- CODE
 .W "  <td "_$$TDBG_" style=""width:10%;color:"_$$FGORDCD^W3CSS_""" "
 . I $$SHID="" D
 . . W " onClick=""MoveLine('LV0"_I_"')"" "
 .W "  >"
 .D 
 .. I $$^W4CDSRV(CD)=10!($$^W4CDSRV(CD)=11) W "&nbsp;" Q
 .. W CD
 .. N MSDPRT S MSDPRT=$G(@$$^W4GL("W4MSDPRT")@(CD))
 .. I CD,MSDPRT D
 .. .W "<br><span style=""color:red;font-size:"_$$^W3FSZ(8)_""">"_MSDPRT_"</span>"
 .W "</td>",!
 
 D TDNAME
 ;
 D TDMH
 ;
 D TDQN
 ;
 I $$CSR,'$$W6 D TDDISC
 ;
 I $$CSR!$$^W6 D TDSUM
 ;------------------------ REPAIR IMAGE ------------------------
 ;
 I $$W6EDORD D
 .D TDC
 .D IMGED(I)
 .W "</td>",!
 ;
 W "</tr>",!
 ;
 ; ----------------------- COMMENT -----------------------------
 I $$CMNT(A)'=""&($$CMNT(A)'="&nbsp;") D
 .W "<tr id=""LV1"_I_"C"""_$$BGED(I)_" "_$$TDBG_" >",!
 . I $$CODE D TDSP
 . W "<td class=""hdordcmn"" >"_$$CMNT(A)_"</td>",!
 . D TDSP,TDSP,TDSP
 . I '$$^W6,'$G(%ARG("W6")),$$CSR D TDSP
 .
 .W "</tr>",!
 Q
 ;
 ;
TDNAME ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 W "  <td id=""tdnm"_I_""" " ; ---------------------- NAME -----------------------
   D
   .I $G(CD),$$DELIM^W4P(CD) W $$^W4DLMSTL
   .I $G(CD),$$DLM^W4P(CD) W $$DLM^W4DLMSTL
   .I I=$O(@TMPORD@(99999),-1),'$G(FLED) W " class="""_$S($$NOMOD^W3HZMST(JB,I):"tdnomod",1:"bgcur")_""" "
   .E  W $$TDBG
   .N WD S WD=40 I $$W1^W6ARG S WD=50
   .W " style=""width:"_WD_"%;font-weight:bold"
   .I $D(@TMPORD@(I,"MVL")) D
   ..W ";background-color:lightyellow"
   ..K @TMPORD@(I,"MVL")
   .; 
   .W ";padding-right:3px;padding-left:3px"
   .D STYLEMVC2(I)
   .W """"
 W " >"
    W "<div class=""tdflex"">",! 
    D
    .S IMGSZ=" width=""14px"" height=""14px"" "
    .I $$^W6 S IMGSZ=" width=""35px"" height=""35px"" " Q
    .I $$^W4SMALL!$$W1^W6ARG S IMGSZ=" width=""25px"" height=""25px"" "
    ;
    I '$$^W4CDSRV(CD)!($$^W4CDSRV(CD)=11) D
    .D
    ..I $$ITRAST^W3HZMST(JB,I)>0!($$QNST^W3HZMST(JB,I)<0&('$$NOMOD^W3HZMST(JB,I))) D  Q
    ...W "<img src="""_$$W3DEL_""" "_IMGSZ_" alt=""Del"" "
    ... W "onClick=""AskDel('TblOrd','LV0"_I_"')"" "
    ... W "style=""cursor:pointer"
    ... W """ "
    ...W "/>"
    .. W $$NBSP^%L1FRM(3)
    .
    .I $$^W4CDSRV(CD) Q
    .
    .W "&nbsp;"
    .I '$$^W4SMALL,$$QNST^W3HZMST(JB,I)'<0,'$$^W6 D
    .. W "<img src="""_$$W3COPY_""" "_IMGSZ_" alt=""Copy"" onClick=""CopyItem('TblOrd','LV0"_I_"')"" style=""cursor:pointer"" />"
    ;
    W "<span class=""forecolorflex"" style=""font-size:"_$$^W3FSZ(12)_$S($$^W4SMALL:"",1:";cursor:pointer")
     W $S(FLED:";color:black",$$^W4CDSRV(CD):";color:brown",1:"")_""" "
      I '$$^W4SMALL,'$$NOMOD^W3HZMST(JB,I),$$QNST^W3HZMST(JB,I)>0 D
      .W "onClick="""_$$EDITLINE(NMB,I)_""" " 
    W ">" 
     W " &nbsp;"_$$NAM(A)
    W "</span>"
    ;
    I $$MVC2^W3HZMST(JB,I) D
    .W " <span style=""color:red;font-size:"_$$^W3FSZ(9)_""">"
    . W $$^%W1DICT("SALE!")
    .W "</span>",!
    W "</div>",!
 W "  </td>",!
 Q
 ;
 ;
TDMH ;
 ; --------------------------- PRICE ---------------------
 W "  <td "_$$TDBG_" dir=""LTR"" id=""mh"_I_""" "
 W "   style=""width:14%;text-align:center;color:"_$$FGORDMH^W3CSS
       D STYLEMVC2(I)
 W """>"_$$SHOWMH(A)_"</td>",!
 Q
 ;
 ;
TDQN ;
 ;----------------------------- QUANT ---------------------
 D TDC
 ;
 I '$$^W4CDSRV(CD),$E(CD)'="A" D
 .  N QNA S QNA=$$QN(A)
 .
 .  I $$NOMOD^W3HZMST(JB,I) D  Q
 .  .N ITR S ITR=$$ITRAST^W3HZMST(JB,I)
 .  .W QNA
 .  .I ITR<QNA D
 .  ..W "<span style=""font-size:"_$$^W3FSZ(8)_";color:red"">"
 .  ..W "&nbsp;["_ITR_"]";;_"="_QNA_"-"_(QNA-ITR)
 .  ..W "</span>"
 .
 .  N MAXL S MAXL=4
 .  I $$QNDR^W3PRM S MAXL=6
 .  N KOLMAX S KOLMAX=$$KOLMAX^W4PRM S:'KOLMAX KOLMAX=99
 .
 .  I KOLMAX<100 D  Q
 .  .S:QNA="" QNA=1
 .  .W "<select name="""_$$QNTD(I)_""" id="""_$$QNTDI(I)_""" "
 .  .D
 .  ..I $G(%ARG("AFTMV")) W " style=""visibility:hidden"" " Q
 .  ..I $$^W6 W "style=""font-size:"_$$^W3FSZ(18)_""" "
 .  ..I $$MVC2^W3HZMST(JB,I)!$$COUP^W3HZMST(JB,I) W " readonly=""readonly"" " Q
 .  .W " onChange=""Change('TblOrd','LV0"_I_"',this.value,event,this)"""
 .  .W ">" 
 .  .N JJ
 .  . 
 .  .I QNA'<0 F JJ=1:1:KOLMAX D
 .  .. W "<option value="""_JJ_""" " I JJ=+QNA W " selected=""selected"" "
 .  .. W ">"
 .  ..  W JJ,!
 .  .. W "</option>",!
 .  .
 .  .I QNA<0 F JJ=-1:-1:QNA D
 .  .. W "<option value="""_JJ_""" " I JJ=+QNA W " selected=""selected"" "
 .  .. W ">"
 .  ..  W JJ,!
 .  .. W "</option>",!
 .  .W "</select>",!
 .
 .  W "<input type=""text"" dir=""LTR"" size="""_(MAXL-2)_""" "
 .  W " maxlength="""_MAXL_""" name="""_$$QNTD(I)_""" id="""_$$QNTDI(I)_""""
 .  I '$$^W4SMALL W " style=""text-align:right;"
 .  I $$^W4SMALL W " readonly=""readonly"" style=""width:90%;text-align:right;"
 .  I $G(%ARG("AFTMV")) W ";visibility:hidden"
 .  W """"
 .  W " value="""_$$QN(A)_""" "
 .  I $$MVC2^W3HZMST(JB,I)!$$COUP^W3HZMST(JB,I) W " readonly=""readonly"" />" Q
 .  W " onKeyUp=""Change('TblOrd','LV0"_I_"',this.value,event,this)"""
 .  W " onClick=""Click('"_$$QNTDI(I)_"')"" />"
 W "</td>",!
 Q
 ;
 ;
TDDISC ;
 D TDC ; ------------------ DISC -------------------
 S DISC0=$$AHST^W3HZMST(JB,I)
 D
 .I $$^W4CDSRV(CD)!$$PRTBH(A) W "&nbsp;" Q
 .I $$NOMOD^W3HZMST(JB,I)!($$QN(A)<0) W $J(DISC0,2,2)_"%" Q
 .W "<select id=""discprc"_I_""" "
 .W " onChange=""ChangeDisc('TblOrd','LV0"_I_"',this.value)"" "
 .W ">"
 . N I,AH S I="" F  S I=$O(@$$^W4GL("P1HNH")@(I)) Q:I=""  D
 . .S AH=$G(^(I)) 
 . .W "<option value="""_+AH_""" ",!
 . .  I +AH=+DISC0 W " selected=""selected"" "
 . .W ">"
 . . W AH
 . .W "</option>",!
 .W "</select>",! 
 W "  </td>",!
 Q
 ;
 ;
TDSUM ;
 ; -------------------------- SUM --------------------
 W "  <td "_$$TDBG_" id=""sum"_I_""" align=""center"" "
 W ">"
 D
  .I $$^W4CDSRV(CD) W "&nbsp;" Q
  .N SUM S SUM=$J($$QN(A)*$$MHL(A)*(100-DISC0)*.01,2,2)
  .W SUM 
 W "</td>",!
 Q
 ;
 ;
STLV1(A,I) ;---------------------- ADDITIONS ---------
 I $$CDA(A) S FLA=1 ; - SET
 ;
 I $$LV(A)=1,'$$CDC(A),'$$CDA(A) S CD1=$$CD(A)
 ;
 W "<tr "
  W "style="""
  ;
  I FLED D
  .I $$CDC(A) W "background-color:yellow;color:brown;font-weight:bold" Q
  .W "background-color:yellow;color:green;"
  ;
  I 'FLED D
  .W $$BGTDORD^W3CSS_";color:"_$$FGORDADD^W3CSS
  W """"
  W " id="""_$S($$CDC(A):"CM1",1:"LV"_$$LV(A))_I_""""
 W " >",!
 ;
 I $$CODE D  ; -- CODE
 .W " <td "_$$TDBG_" style=""color:"_$$FGORDCD^W3CSS_""" >"
 . W $S($$NOCD(A):"&nbsp;",1:CD)
 .W "</td>",!
 ;
 D TDNMT
 ;
 D TDMHT
 ;
 D TDQNT
 ;
 N DISC1 S DISC1=0
 ;
 I $$CSR,'$$W6 D
 .S DISC1=$G(DISC0) I $$^W4PRTBH($$CD(A)) S DISC1=0
 .D TDDISCT
 ;
 I $$CSR!$$^W6 D
 .D TDSUMT
 ;
 I $$W6EDORD D
 .W "<td "_$$TDBG_" >&nbsp;</td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
CODE(STAM) ;
 I $$CODE^W3PRM,'$$^W4SMALL Q 1
 Q 0
 ;
TDNMT ;
 ; -------- NAME ----------
 N BG S BG=""
 W "  <td "
      D
       .I $$CDC(A)&'$G(FLED)  S BG=" class='hdordcmn'" Q
       .S BG=$$TDBG
       W BG
       D
       .N BGC S BGC="" D
       ..I $$NOMOD^W3HZMST(JB,I) S BGC="white"
       ..I $$CDC(A)!$$CDA(A),$$QNST^W3HZMST(JB,I-1)<0 S BGC="pink"
       .W " style="""
       .I $L(BGC) W "background-color:"_BGC
       .D 
       ..I $$CDA(A) W ";color:brown;font-weight:bold" Q
       ..I $$LV(A)=2 W ";color:brown" Q
       .W """ "
       W ">"
       W $S(I=CUR:"<span>*</span>",1:"&nbsp;")
       W $$NAM(A)
 W "  </td>",!
 Q
 ;
 ;
TDMHT ;
 ; --------- MH -----------
 W "  <td "_$$TDBG_" align=""center"" id=""mh"_I_""" "
   W " dir=""LTR"" "
   N MH S MH=$$SHOWMH(A)
   I MH W " style=""color:"_$$FGORDMH^W3CSS_""""
 W "  >"
   W $S($$CDH(A)!$$CDC(A)!$$CDH(A):"&nbsp;",1:MH)
 W "</td>",!
 Q
 ;
 ;
TDQNT ;
 ; ---------- QN ------------
 W "<td "_$$TDBG_" dir=""LTR"" align=""center"""
 ;
 I $$CDA(A)!$$CDC(A)!$$CDH(A) W ">&nbsp;</td>" Q
 ;
 I $$LV(A)=1&'$$^W4PIZZA($G(CD0))!($$LV(A)=2&'$$^W4PIZZA($G(CD1))) D  Q
 .N QNT S QNT=$$QN(A)
 .N QN0 S QN0=+$$QN($G(ST0))
 .I QN0,QNT'["*" S QNT=QN0_"*"_(QNT\QN0)
 .W ">",QNT,"</td>"
 .I $$CDA(A) S FLA=1
 ;
 I $$LV(A)=1&$$^W4PIZZA($G(CD0))!($$LV(A)=2&$$^W4PIZZA($G(CD1))) D
 .W ">"
 . N QN S QN=$$QN(A)
 . I QN["*" W +QN_" * " S QN=$P(QN,"*",2)
 . W $$^W4SHOWPZ(QN)
 .W "</td>",!
 Q
 ;
 ;
TDDISCT ;
 W "<td "_$$TDBG_">"
 D 
 . I $$^W4PRTBH($$CD(A)) W $S($$MH(A):"0%",1:"&nbsp;") Q
 . W $S($G(DISC1)&$$MH(A):DISC1_"%",1:"") ; -- DISC
 W "</td>"
 Q
 ;
 ;
TDSUMT ;
 I $$CDA(A)!$$CDC(A)!$$CDH(A) D  Q
 .W "<td "_$$TDBG_" dir=""LTR"" align=""center"""
 .W ">&nbsp;</td>"
 ;
 N QNT S QNT=$$QN(A) I QNT["*" S QNT=QNT*$P(QNT,"*",2) 
 N KFD S KFD=(100-DISC1)*.01
 
 N SUMT S SUMT=QNT*$$MHL(A)*KFD
 
 W "<td "_$$TDBG_" id=""sum"_I_""">"_$J(SUMT,2,2)_"</td>" ; -- SUM
 Q
 ;
 ;
SMALLTOT ;
 W "<tr class=""smalltot"" >",!
  D CDSPACE
  W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td id=""idtotord"">"_$J($$TOTORD^W3HZMST(JB),2,2)_"</td>",!
  D TOTEND
 W "</tr>",!
 
 N AHUZ S AHUZ=$J($$AHUZ^W3HZMST(JB),2,2)
 I AHUZ D
 .W "<tr class=""smalltot"" >",!
 . D CDSPACE
 . W " <td>"_$$^%W1DICT("DISCOUNTNET",AHUZ)_"</td>"
 . W " <td id=""iddiscont"" style=""color:red"">"_$J($$HNH^W3HZMST(JB),2,2)_"</td>",!
 . D TOTEND
 .W "</tr>",!
 
 W "<tr class=""smalltot"" >",!
  D CDSPACE
  W "<td>"_$$^%W1DICT("DLVPAY")_"</td>"
  W "<td id=""iddlvpay"" >"_$J($$DMSH^W3HZMST(JB),2,2)_"</td>",!
  D TOTEND
 W "</tr>",!
 ;
 W "<tr class=""smalltot"" >",!
  D CDSPACE
  W "<td>"_$$^%W1DICT("TOPAY")_"</td>"
  W "<td id=""idsum"" >"_$J($$TSHL^W3HZMST(JB),2,2)_"</td>",!
  D TOTEND
 W "</tr>",!
 Q
 ;
 ;
CSR(STAM) ;
 Q $$GETP^%W1PRM("ELPOS")!$$DLVWEB^W4DLVCSR
 ;
SCRIPTDOWN ;
 W "<script>",!
  I '$D(@TMPORD@("SCRY")) D
  .W " x=100",!
  .W " var tb=document.getElementById(""TblOrd"")",!
  .W " if (tb.rows.length>12)",!
  .W " { self.window.scrollTo(x,10000) }",!
  ; 
  I $D(@TMPORD@("SCRY")) D
  .W " { self.window.scrollTo(10,"_@TMPORD@("SCRY")_") }",!
  .K @TMPORD@("SCRY")
  ;
  W " ShowSum()",!
  W " var frbot=parent.bot",!
  W " if (frbot !== null && frbot !== undefined ) ",!
  W " {",!
  W "  var term=frbot.document.getElementById(""termid"")",!
  W "  if (term !== null && term !== undefined )",!
  W "   {",!
  I $D(@TMPORD@(1)) W " term.style.visibility=""visible""",!
  I '$D(@TMPORD@(1)) W " term.style.visibility=""hidden""",!
  W " }",!
  W "}",!
  ;
 W "</script>",!
 Q
 ;
TDC ;
 W "  <td "_$$TDBG_" align=""center"">"
 Q
 ;
TDSP ;
 W "<td>&nbsp;</td>",!
 Q
 ;
NOCD(A) ; 
 N CD S CD=$$CD(A)
 I $$CDA(A)!$$CDH(A)!$$CDC(A) Q 1
 I $$^W4CDSRV(CD) Q 1
 Q 0
 ;
SHOWPRMAM ;
 W $$^%W1DICT("PRICEINCLUDEDTAX")_"&nbsp;"
 W "<input type=""radio"" name=""prmam"" "
  W " onClick=""OnClickPrMam()"" "
  I '$$LMAM W " checked=""checked"" "
 W ">"
 W $$NBSP^%L1FRM(5)
 W $$^%W1DICT("PRICENOTINCLUDEDTAX")_"&nbsp;"
 W "<input type=""radio"" name=""prmam"" "
  W " onClick=""OnClickPrMam()"" "
  I $$LMAM W " checked=""checked"" "
 W ">"
 ; ---- CLEAR CONTENT FOR HZMH
 N TMPORD S TMPORD=$$^W4TMPORD
 N HD S HD=$G(@TMPORD)
 N A S A=$G(@TMPORD@(1))
 N CD S CD=$P(A,"~",2)
 I CD,CD=$$HZMH^W3PRM D
 .I $P(HD,"~",12)!$P(HD,"~",17) Q
 .W $$NBSP^%L1FRM(5)
 .W "<button onClick=""ClearContent()"">"_$$^%W1DICT("CLEAR")_"</button>",!
 Q
 ;
CLRCONT()
 D TMPORD
 N N S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N'=1 K ^(N)
 D TMPORD1
 N N S N="" F  S N=$O(@TMPORD1@(N)) Q:N=""  I N'=1 K ^(N)
 Q 1
 ;
LMAM(STAM) ;
 Q $$GETP^%W1PRM("LMAM")
 ;
SHID(STAM) ; 
 I $G(%ARG("SHID"))'="" Q %ARG("SHID") 
 I $$GETP^%W1PRM("SHID")'="" Q $$GETP^%W1PRM("SHID")
 Q "" 
 ;
 ; 
W6EDORD() ; 
 Q +$G(@$$^W4PRM@("W6EDORD"))
 ;
W6() ; 
 I $$^W6 Q 1 
 I $G(%ARG("W6")) Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZPAR
W3HZPAR(N) ; [ 11.07.23 12:03 ] [ 17.10.18 12:33 ] [ 16.10.16 12:08 ] 
 ; IN: N - COD KVUZA
 ;     SH + ITEMSHOW - SHOW ITEM PICTURE
 ;     SH - ITEMSHOW - SHOW GROUP AFTER CHOICE
 ;     SH! - ITEMSHOW - SHOW GROUP IF WASN'T CHOICE
 ;     SH=0 - ITEMSHOW -  SHOW GROUP AFTER DELETE LINE IN ORDER
 ;     SH=0 + ITEMSHOW -  SHOW ITEM PICTURE AFTER DELETE LINE IN ORDER
 ; ---------------------------------------------------------
 N (JB,%REM,NMB,N,MLZ,HZM,MLZR,MLZR1,SOAD,LKHN,SRCH,%ARG,ITEMSHOW,SH,SCRY,MENU)
 ;;S GLRY=1
 ;
 I '$G(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 D KILL^%W3DEB("W3HZPAR")
 S MSD=$$GET^%W1PRM("MSD")
 S GLRY=$$GET^%W1PRM("GLRY")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 I $$^W4MSD($G(NMB)),'$$^W3MENU S NMB=$$NMB^W3HZMST(JB)
 D PUT^%W3DEB("W3HZPAR","NMB=NMB & N=N & MSD=MSD & SRCH=SRCH &ITEMSHOW=ITEMSHOW & ARG=[%ARG")
 D PUT^%W1PRM("NMB",$G(NMB))
 D PUT^%W1PRM("CDKV",$G(N))
 D PUT^%W1PRM("SRCH",$G(SRCH))
 ;;I '$G(NMB)!'$G(N) Q
 I '$G(N),'$L($G(SRCH)),$G(ITEMSHOW)="" Q
 ;
 I $E($G(SH))=0 G P
 I $G(SH)&($G(ITEMSHOW)="") G P
 ;
 K ^[$$^W3MAIN]TMPTF($$^%W1JB,2),^[$$^W3MAIN]TMPTF($$^%W1JB,3)
 ;
P D PUT^%W1PRM("SHOWORD",0)
 D INIT^W3HZTFR
 ;
 I $L($G(ITEMSHOW)) G VW
 ;
 I $$^W3MENU D SHOWGR(N) Q
 ;
 I $L($G(SRCH)) D  S TF=2,SRCH="" K N G T
 .I SRCH?1N.N,$D(@$$^W4GL("PAR")@(SRCH)),$$CODE^W3PRM D  Q
 ..N I1 S I1=0 S N2=SRCH D CTF2
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 .I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 .I '$D(@$$^W4PARCAT) D CRSUG^W3HZTFR
 .N KV,PAR,I1,N2 S I1=0
 .S KV="" F  S KV=$O(@$$^W4PARCAT@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@$$^W4PARCAT@(KV,PAR)) Q:PAR=""  D
 ...N NM
 ...I $$^%W1DIR="RTL" S NM=$$INV^%L1FRM($$SHEM^W4P(PAR))
 ...I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE($$SHEM^W4P(PAR))
 ...I $E(NM,1,$L(SRCH))=SRCH D  Q
 ....S N2=PAR D CTF2
 ...I (" "_NM_" ")[(" "_SRCH_" ") D  Q
 ....S N2=PAR D CTF2
 ...N J,OK,MF S OK=1 F J=1:1:$L(SRCH," ") D  Q:'OK
 ....N FND,FND1 S FND=$F(" "_NM," "_$P(SRCH," ",J)) I FND<1 S OK=0 Q
 ....S FND1=FND-$L($P(SRCH," ",J))
 ....I $D(MF(FND1)) S FND=$F(" "_NM," "_$P(SRCH," ",J),MF(FND1)) I FND<1 S OK=0 Q
 ....S MF(FND1)=FND
 ...Q:'OK
 ...S N2=PAR D CTF2
 ;
 S TF=2
 ;
 I $D(@$$^W4GL("P1PARSID"))>9 D  G T
 .N NP,PRT,MMM,I1,N2
 .S NP="",I1=0 F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 .S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 ;
 I $G(@$$^W4PRM@("HFNUM"))=2 D  G T ; --- SIDUR NUMERY
 .N N1,N2,I1 S N1="",I1=0 F  S N1=$O(@KVZ@(N1)) Q:N1=""  D
 ..S N2=N1 I KVZ["P1TFR" S N2=$P($G(^(N1)),"\")
 ..D CTF2
 ;
 D INV(KVZ,$$^W4GL("PAR")) ; ---->  ^[$$^W3MAIN]TMPTF1($$^%W1JB) ; --------- SIDUR A-B
 ;
 N NN,N2,I1 S NN="",I1=0
 F  S NN=$O(^[$$^W3MAIN]TMPTF1($$^%W1JB,NN)) Q:NN=""  S N1=^(NN) D
 .S N2=N1
 .D CTF2
 ;
T D PUT^%W3DEB("W3HZPAR","TMPTF=^[$$^W3MAIN]TMPTF($$^%W1JB)")
 K ^[$$^W3MAIN]TMPTF1($$^%W1JB)
 ;
 S PRDEL=0
 I $E($G(SH))=0 D
 .N OK S OK=0
 .N I F I=1:1 Q:'$D(^[$$^W3MAIN]TMPTF($$^%W1JB,2,I))  D  Q:OK
 ..N TXT S TXT=$G(^(I))
 ..I $P(TXT,"~")=$P(SH,"~",2) S OK=1
 .I OK S SH=I,PRDEL=1
VW ;
 D VIEW
 Q
 ;
CTF2 S I1=I1+1
 S ZMANK=$$ZMANK
 N MH
 S MH=$$MH($G(NMB),N2)
 S ^[$$^W3MAIN]TMPTF($$^%W1JB,2,I1)=N2_"~"_$$HBR^%L1FRM($$SPA^%L1FRM($$SHEM^W4P(N2)),24)_"~"_$J(MH,2,2)
 Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK
 I $L($G(HZM)) S ZMANK=$$ZMANK I ZMANK="" K ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
ZMANK(STAM) ;
 Q $ZD($H,"24:60")
 ;
VIEW ;
 I $L($G(ITEMSHOW)),$D(N),$D(SH) D ITEMSHOW(ITEMSHOW,NMB,N,SH) S ITEMSHOW="" Q
 ;
 I $D(N) D
 .W "<script>",!
 .W "  if (parent.hd !== null && parent.hd !== undefined) parent.hd.ShowSrc('1')",!
 .W "</script>",!
 ;
 W !
 W "<div align=""center"" >",!
 W "<table width="""_$S($$CODE^W3PRM=1:"100%",1:"90%")_""" border=""0"" dir="""_$$^%W1DIR_""" id=""TblPrt"" >",!
 ;
 I $G(N)'="" D
 .W "<tr>"
 .I $$CODE^W3PRM=1 W "<th>&nbsp;</th>"
 .W "<th colspan=3 class=""hdit"">"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"</th>"
 .W "<th>&nbsp;</th>"
 .;;W "<th>&nbsp;</th>"
 .;;W "<th>&nbsp;</th>"
 .W "</tr>",!
 ;
 N I F I=1:1 Q:'$D(^[$$^W3MAIN]TMPTF($$^%W1JB,2,I))  D
 .N VALUE,TXT S TXT=$G(^(I))
 .S VALUE="&nbsp;"
 .W "<tr>",!
 .I $$CODE^W3PRM=1 W "<td>"_$P(TXT,"~")_"</td>",!
 .N TXT1 S TXT1="0~"_$$CLWEB^%L1FRM(TXT)
 .
 .W "<td>"
 .;N TOSHOW S TOSHOW="w3hzprtn.jsp?JB="_JB_"&NMB="_NMB_"&SH="_I_"&CDKV="_N_"&ITEMSHOW="_$P(TXT1,"~",2,20)_""""
 .S TOSHOW="ItemShow("_JB_",'"_NMB_"',"_I_",'"_+$G(N)_"','"_$P(TXT1,"~",2,20)_"')"
 .I '$$^W3MENU!$$TSF($P(TXT,"~")) D
 ..W "<a href=""javascript:Stam()"" id=""atp"_I_""""
 ..W " onClick="""_TOSHOW_""""
 ..W " onMouseOver=""PrtOver('"_I_"')"""
 ..W " onMouseOut=""PrtOut('"_I_"')"""
 ..I $G(SH),I=+SH W "  style=""background-color:brown;color:white"""
 ..I $$TBWAS[("~"_$P(TXT,"~")_"~") W "  style=""color:brown"""
 ..W ">"
 .I $$TSF($P(TXT,"~")),$$PLUS^W3PRM W "+"
 .W $$H2U^%L1FRM($P(TXT,"~",2))
 .I $G(GLRY) W "<br><img src='"_$$PIC(I)_"' width='150px' height='100px' />",!
 .I '$$^W3MENU!$$TSF($P(TXT,"~")) W "</a>"
 .W "</td>",!
 .
 .W "<td><span>"_$P(TXT,"~",3)_"</span></td>",! ; -- MAHIR
 .
 .W "<td",! ;-------- DESCRIPTION
 .W " onMouseOver=""openDesc('"_I_"')"" "
 .I '$$^W3MENU!$$TSF($P(TXT,"~")) D
 ..;;W " onClick=""OrdShow('"_TXT1_"','"_I_"')"""
 ..W " onClick="""_TOSHOW_""""
 .W " onMouseOut=""closeDesc('"_I_"')"" ><img src=""w3shef1.gif"" >"
 .W "</td>",!
 .
 .I $$PICTURE^W3PRM,'$G(GLRY) D
 ..W "<td name=""pic"_$P(TXT,"~")_"""  id=pic"_$P(TXT,"~")_"""",!
 ..W "onMouseOver=""openPic('"_I_"')"" "
 ..I '$$^W3MENU!$$TSF($P(TXT,"~")) D
 ...W " onClick="""_TOSHOW_""""
 ..W " onMouseOut=""closePic('"_I_"')"" >"
 ..W "<img src=""w3eye2.gif"" >"
 ..;;W "<img src="""_$$PIC("min"_$P(TXT,"~"))_""" >",!
 ..W "</td>",!
 .
 .W "</tr>"
 ;
 ;;N J F J=1:1:6 W "<tr><td>&nbsp;</td></tr>",!
 W "</table>",!
 W "<br/>",!
 W "</div>",!
 D SCRY
 Q
 ;
ITEMSHOW(TXT1,NMB,KV,SH) ;
 N CD,NM,MH S CD=$P(TXT1,"~")
 S NM=$$CNWEB^%L1FRM($P(TXT1,"~",2))
 S MH=$P(TXT1,"~",3)
 W "<div align=""center"" >",!
 W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""" id=""ItemShow"" >",!
 W "<tr><td>"
 W "<table width=""100%"" border=""0"" >"
 W "<tr>",!
 W ?5,"<td align='center'><img src='"_$$PIC("pic"_CD)_"' style='border:2px ridge brown' width='250px' height='160px'/> </td></tr>",!
 W "</table></tr></td>",!
 ;
 W "<tr height='30pt'>",!
 N TXT
 S TXT=$$H2U^%L1FRM(NM)_"&nbsp;&nbsp;&nbsp;"_$J(MH,2,2)
 W ?5,"<td style='color:darkbrown;font-size:"_$S($L(NM)<21:$$^W3FSZ(14),1:$$^W3FSZ(12))_";text-align:center' >"_TXT_"</td>",!
 ;
 W "<tr height='65pt'>",!
 W ?5,"<td style=""color:black"" align=""center"" >"
 W "<textarea id=""txtarid"" rows=""3"" cols=""33"" readonly=""readonly"" style=""font-family:arial,helvetica,sans-serif;font-size:"_$$^W3FSZ(11)_""">"
 W $$DESC1(CD)_"</textarea></td></tr>",!
 W "<td>" I $$^%W1LNG="H" W "<br />"
 W "<div align=""center"" >",!
 W "<table dir='"_$$^%W1DIR_"' width='70%' border=0><tr>",!
 W " <td align='"_$S($$^%W1DIR="LTR":"left",1:"right")_"' id='BtnBack' >"
  ;;W "<td align='center' >"
  W "<input type='button' value='"_$$^%W1DICT("BACK2MENU")_"' id=""Back2Menu"""
  W " style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_""""
  W " onClick=""ShowGr("_JB_",'0~"_$$CLWEB^%L1FRM(TXT1)_"','"_SH_"','"_NMB_"','"_KV_"')"""
  W " /></td>",!
  I $G(SH) D
  .W "<td id='BtnChoiceTd' align='"_$S($$^%W1DIR="LTR":"right",1:"left")_"' >"
  .;;W "<td id=""BtnChoice"" align='center' >"
  .W "<input type='button' id='BtnChoice' value='"_$$^%W1DICT("CHOICE")_"'"
  .W " style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_""""
  .W " onClick=""OrdShow("_JB_",'"_NMB_"','0~"_$$CLWEB^%L1FRM(TXT1)_"',"_+$G(SH)_",'"_$G(KV)_"')"
  .W """"
  .W "/></td>",!
  W "</tr></table></div>",!
 W "</td></tr>",!
 W "</table>",!
 Q
 ;
TSF(PAR) ;
 I $D(@$$^W4GL("P1EZI")@(PAR))!$D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR)))!$D(@$$^W4GL("P1EZA")@(PAR))!$D(@$$^W4GL("P1EZT")@(PAR)) Q 1
 Q 0
 ;
DESC(SH) ;
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 N CD S CD=$P($G(^[$$^W3MAIN]TMPTF($$^%W1JB,2,SH)),"~") I CD="" Q NODESC
 Q $$DESC1(CD)
 ;
DESC1(CD) ;
 N DESC S DESC=""
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 I '$D(@$$^W4GL("L1TIP")@("MTK",CD,1)) Q NODESC
 ;
 N I F I=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",CD,I))  D
 .N A S A=$G(^(I))
 .S DESC=DESC_$$H2U^%L1FRM($$SPA^%L1FRM(A))_" " ;"<br>"
 ;
 Q DESC
 ;
PIC(SH) ;
 N PATH,PATHL ;;S PATH="./"_$$GET^%W1PRM("MSD")_"/itp/"
 S PATH=$$WEB^W3MAIN
 S PATH=PATH_$$GET^%W1PRM("MSD")_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_$$GET^%W1PRM("MSD")_"/itp/"
 N TYPE S TYPE="jpg"
 N PRE S PRE="pic"
 I $E(SH,1,3)="min" S PRE="min"
 N NOPIC S NOPIC=PRE_"logo."_TYPE
 ;
 D PUT^%W3DEB("W3HZPAR-PIC","SH=SH")
 N PIC S PIC=""
 N CD I SH'["log",SH'["min",SH'["pic" S CD=$P($G(^[$$^W3MAIN]TMPTF($$^%W1JB,2,SH)),"~") I CD="" Q PATH_NOPIC
 I SH["log" S CD=SH
 I SH["min" S CD=$P(SH,"min",2)
 I SH["pic" S CD=$P(SH,"pic",2)
 N PICNAME S PICNAME=PRE_CD_"."_TYPE
 N FLPIC S FLPIC=PATH_PICNAME
 N FLPICL S FLPICL=PATHL_PICNAME
 D PUT^%W3DEB("W3HZPAR-PIC","FLPICL=FLPICL & FLPIC=FLPIC")
 I $$^%L1ZOS(10,FLPICL)<0 Q PATH_NOPIC
 ;
 Q FLPIC
 ;
 ;
TBWAS(STAM) ;
 N I,ST,TBW
 S TBW="~"
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPORD(JB,I))  D
 .S ST=$G(^(I)) Q:$P(ST,"~")'=0  Q:'$P(ST,"~",2)
 .S TBW=TBW_$P(ST,"~",2)_"~"
 Q TBW
 ;
SHOWGR(N)
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 .I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 ;
 W "<div align=""center"">",!
 W "<table width=""90%"" border=""0"" dir="""_$$^%W1DIR_""" id=""TblPrt"" >",!
 I $G(N) W "<tr><th class=""hdit"">"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"</th></tr>"
 N NP,NM,MH,IHTML,I
 S I=0
 S NP="" F  S NP=$O(@$$^W3GL("PAR")@(NP)) Q:NP=""  D
 .N B S B=$G(^(NP)) Q:B=""  N NM,MH,IHTML
 .I $$SUG^W4P(NP)'=N,'$L($G(SRCH)) Q
 .I '$$P1HZTF^W4PARUS(NP) Q
 .I $$NOPAR^W4PRTVW(NP) Q
 .S NM=$P(B,"**"),MH=$P(B,"**",2) S I=I+1
 .S MH=$J(MH,2,2)
 .I $L($G(SRCH)) Q:'$$SRCH(SRCH,NM)
 .N TOSHOW
 .S TOSHOW="setCookie('SYIS"_JB_"',GetScrollY(self),1);parent.location.replace('w3menu.jsp?JB="_JB_"&MSD="_MSD_"&ITEMSHOW="_(NP_"~"_$$CLWEB^%L1FRM(NM)_"~"_MH)_"&CDKV="_N_"&SH="_I_"')"
 .S IHTML="<td width=""80%"">"
 .S IHTML=IHTML_"<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"""
 .S IHTML=IHTML_" onClick="""_TOSHOW_""""
 .S IHTML=IHTML_" >"_$$H2U^%L1FRM(NM)_"</span><br />"
 .S IHTML=IHTML_"<span style=""color:black; font-size:"_$$^W3FSZ(11)_";"
 .S IHTML=IHTML_"cursor:pointer"" onClick="""_TOSHOW_""">"
 .N I,ST,LINE S ST="" F I=1:1 Q:'$D(@$$^W3GL("L1TIP")@("MTK",NP,I))  D
 ..S LINE=$G(^(I))
 ..S ST=ST_$$SPA^%L1FRM(LINE)_" "
 .S IHTML=IHTML_$$H2U^%L1FRM(ST)
 .S IHTML=IHTML_"</span></td>"
 .S IHTML=IHTML_"<td width=""8%"">"
 .S IHTML=IHTML_"<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ(14)_""">"
 .S IHTML=IHTML_MH_"</span></td>"
 .N PIC S PIC=$$GETPIC^W3ENTER(NP)
 .S IHTML=IHTML_"<td width=""12%""><img src="""_$P(PIC,"~",2)_""" width=""100"" height=""67"" onMouseOver=""openPic1('"_NP_"')"" onMouseOut=""closePic1()"" onClick="""_TOSHOW_""" style=""curdor:pointer""></td>"
 .;;S IHTML=IHTML_"<td width=""10%""><input type=""button"" class=""btn"" value="""_$$^%W1DICT("TOORDER")_"""  onClick=""OrderItem('"_NP_"')"" /></td>"
 .W "<tr "
 .I $$TBWAS[("~"_NP_"~") W " style="""_$$BODYFRAME^W3CSS($$COLOR^W3CSS)_""""
 .W " >"
 .W "<a name=""MA"_NP_""">"_IHTML_"</a></tr>",!
 .W "<tr><td colspan=""3"" height=""3pt"" ><hr></td></tr>",!
 W "</table>",!
 W "</div>",!
 D SCRY
 Q
SCRY ;
 I $G(SCRY) D
 .W "<script>",!
 .W " scrollTo(1,"_SCRY_")",!
 .W "</script>",!
 Q
SRCH(SRCH,NM)
 I $$^%W1DIR="RTL" S NM=$$INV^%L1FRM(NM)
 I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE(NM)
 I $E(NM,1,$L(SRCH))=SRCH Q 1
 I (" "_NM_" ")[(" "_SRCH_" ") Q 1
 N J,OK,MF S OK=1 F J=1:1:$L(SRCH," ") D  Q:'OK
 .N FND,FND1 S FND=$F(" "_NM," "_$P(SRCH," ",J)) I FND<1 S OK=0 Q
 .S FND1=FND-$L($P(SRCH," ",J))
 .I $D(MF(FND1)) S FND=$F(" "_NM," "_$P(SRCH," ",J),MF(FND1)) I FND<1 S OK=0 Q
 .S MF(FND1)=FND
 Q OK
 
 
 

W3HZPRT
W3HZPRT(N) ; [ 11.07.23 12:05 ] [ 25.02.12 15:09 ] [ 08.05.09 18:18 ] 
 ; IN: N - COD KVUZA
 ; ---------------------------------------------------------
 N (JB,%REM,NMB,N,MLZ,HZM,MLZR,MLZR1,SOAD,LKHN,SRCH,%ARG)
 ;
 Q:'$G(JB)
 D KILL^%W3DEB("W3HZPRT")
 S MSD=$$GET^%W1PRM("MSD")
 S GLRY=$$GET^%W1PRM("GLRY")
 I '$$PICTURE^W3PRM S GLRY=0
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 I $$^W4MSD($G(NMB)),'$$^W3MENU S NMB=$$NMB^W3HZMST(JB)
 D PUT^%W3DEB("W3HZPRT","NMB=NMB & CDKV=N & MSD=MSD & SRCH=SRCH & ARG=[%ARG")
 D PUT^%W1PRM("NMB",$G(NMB))
 D PUT^%W1PRM("CDKV",$G(N))
 D PUT^%W1PRM("SRCH",$G(SRCH))
 ;;I '$G(NMB)!'$G(N) Q
 I '$G(N),'$L($G(SRCH)) Q
 ;
 K @$$^W3TMPTF@($$^%W1JB,2),@$$^W3TMPTF@($$^%W1JB,3)
 D PUT^%W1PRM("SHOWORD",0)
 D INIT^W3HZTFR
 ;
 I $L($G(SRCH)) D  S TF=2,SRCH="" K N G T
 .I SRCH?1N.N,$D(^[$$^%W1UCI(JB)]PAR(SRCH)),$$CODE^W3PRM D  Q
 ..N I1 S I1=0 S N2=SRCH D CTF2
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 .I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 .D CRSUG^W3HZTFR
 .N KV,PAR,I1,N2 S I1=0
 .S KV="" F  S KV=$O(@$$^W4PARCAT@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@$$^W4PARCAT@(KV,PAR)) Q:PAR=""  D
 ...N NM
 ...I $$^%W1DIR="RTL" S NM=$$INV^%L1FRM($$SHEM^W4P(PAR))
 ...I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE($$SHEM^W4P(PAR))
 ...I $E(NM,1,$L(SRCH))=SRCH D  Q
 ....S N2=PAR D CTF2
 ...I (" "_NM_" ")[(" "_SRCH_" ") D  Q
 ....S N2=PAR D CTF2
 ...N J,OK,MF S OK=1 F J=1:1:$L(SRCH," ") D  Q:'OK
 ....N FND,FND1 S FND=$F(" "_NM," "_$P(SRCH," ",J)) I FND<1 S OK=0 Q
 ....S FND1=FND-$L($P(SRCH," ",J))
 ....I $D(MF(FND1)) S FND=$F(" "_NM," "_$P(SRCH," ",J),MF(FND1)) I FND<1 S OK=0 Q
 ....S MF(FND1)=FND
 ...Q:'OK
 ...S N2=PAR D CTF2
 ;
 S TF=2
 ;
 I $D(^[$$^%W1UCI(JB)]P1PARSID)>9 D  G T
 .N NP,PRT,MMM,I1,N2
 .S NP="",I1=0 F  S NP=$O(^[$$^%W1UCI(JB)]P1PARSID(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 .S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 ;
 I $G(^[$$^%W1UCI(JB)]P1PRM("HFNUM"))=2 D  G T ; --- SIDUR NUMERY
 .N N1,N2,I1 S N1="",I1=0 F  S N1=$O(@KVZ@(N1)) Q:N1=""  D
 ..S N2=N1 I KVZ["P1TFR" S N2=$P($G(^(N1)),"\")
 ..D CTF2
 ;
 D INV(KVZ,"^[$$^%W1UCI(JB)]PAR") ; ---->  ^TMPTF1($$^%W1JB) ; --------- SIDUR A-B
 ;
 N NN,N2,I1 S NN="",I1=0
 F  S NN=$O(^[$$^W3MAIN]TMPTF1($$^%W1JB,NN)) Q:NN=""  S N1=^(NN) D
 .S N2=N1
 .D CTF2
 ;
T D PUT^%W3DEB("W3HZPRT","TMPTF=^[$$^W3MAIN]TMPTF($$^%W1JB)")
 K ^[$$^W3MAIN]TMPTF1($$^%W1JB)
VW ;
 D VIEW
 Q
 ;
CTF2 S I1=I1+1
 S ZMANK=$$ZMANK
 N MH
 S MH=$$MH($G(NMB),N2)
 S @$$^W3TMPTF@($$^%W1JB,2,I1)=N2_"~"_$$HBR^%L1FRM($$SPA^%L1FRM($$SHEM^W4P(N2)),24)_"~"_$J(MH,2,2)
 Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK
 I $L($G(HZM)) S ZMANK=$$ZMANK I ZMANK="" K ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
ZMANK(STAM) ;
 Q $ZD($H,"24:60")
 ;
VIEW ;
 I $D(N) D
 .W "<script>",!
 .W "  parent.hd.ShowSrc('1')",!
 .W "</script>",!
 W "<script>",!
 W "  parent.tsf.location.replace('w3hztsf.jsp?JB="_JB_"&NMB="_$G(NMB)_"')",!
 W "</script>",!
 W "<div align=""center"" >",!
 W "<table width="""_$S($$CODE^W3PRM:"100%",1:"90%")_""" border=0 dir="""_$$^%W1DIR_""" id=""TblPrt"" >",!
 ;
 I $D(N) D
 .W "<tr>"
 .I $$CODE^W3PRM=1 W "<th>&nbsp;</th>"
 .W "<th colspan=3 class=""hdit"">"_$$H2U^%L1FRM($G(^[$$^%W1UCI(JB)]PARSUG(N)))_"</th>"
 .W "<th>&nbsp;</th>"
 .W "<th>&nbsp;</th>"
 .W "<th>&nbsp;</th>"
 .W "</tr>",!
 ;
 N I F I=1:1 Q:'$D(@$$^W3TMPTF@($$^%W1JB,2,I))  D
 .N VALUE,TXT S TXT=$G(^(I))
 .S VALUE="&nbsp;"
 .W "<tr>",!
 .I $$CODE^W3PRM=1 W "<td>"_$P(TXT,"~")_"</td>",!
 .N TXT1 S TXT1="0~"_$$CLWEB^%L1FRM(TXT)
 .
 .W "<td>"
 .I '$$^W3MENU!$$TSF($P(TXT,"~")) D
 ..W "<span id=""atp"_I_""" style=""cursor:pointer"""
 ..W " onClick=""OrdShow('"_TXT1_"','"_I_"')"""
 ..W " onMouseOver=""PrtOver('"_I_"')"""
 ..W " onMouseOut=""PrtOut('"_I_"')"""
 ..W ">"
 .I $$TSF($P(TXT,"~")),$$PLUS^W3PRM W "+"
 .W $$H2U^%L1FRM($P(TXT,"~",2))
 .I $G(GLRY) W "<br><img src='"_$$PIC(I)_"' width='150px' height='100px' />",!
 .I '$$^W3MENU!$$TSF($P(TXT,"~")) W "</a>"
 .W "</td>",!
 .
 .W "<td><span>"_$P(TXT,"~",3)_"</span></td>",! ; -- MAHIR
 .
 .W "<td",! ;-------- DESCRIPTION
 .W " onMouseOver=""openDesc('"_I_"')"" "
 .I '$$^W3MENU!$$TSF($P(TXT,"~")) D
 ..W " onClick=""OrdShow('"_TXT1_"','"_I_"')"""
 .W " onMouseOut=""closeDesc('"_I_"')"" ><img src=""w3shef1.gif"">"
 .W "</td>",!
 .
 .I $$PICTURE^W3PRM,'$G(GLRY) D
 ..W "<td name=""pic"_$P(TXT,"~")_"""  id=pic"_$P(TXT,"~")_"""",!
 ..W " onMouseOver=""openPic('"_I_"')"" "
 ..I '$$^W3MENU!$$TSF($P(TXT,"~")) D
 ...W " onClick=""OrdShow('"_TXT1_"','"_I_"')"""
 ..W " onMouseOut=""closePic('"_I_"')"" >"
 ..W "<img src=""w3eye2.gif"">"
 ..;;W "<img src="""_$$PIC("min"_$P(TXT,"~"))_""" >",!
 ..W "</td>",!
 .
 .W "</tr>"
 ;
 ;;N J F J=1:1:6 W "<tr><td>&nbsp;</td></tr>",!
 W "</table>",!
 W "<br/>",!
 W "</div>",!
 Q
 ;
TSF(PAR) ;
 I $D(^[$$^%W1UCI(JB)]P1EZI(PAR))!$D(^[$$^%W1UCI(JB)]P1EZKI(+$$SUG^W4P(PAR)))!$D(^[$$^%W1UCI(JB)]P1EZA(PAR))!$D(^[$$^%W1UCI(JB)]P1EZT(PAR))!$D(^[$$^%W1UCI(JB)]P1EZR(PAR)) Q 1
 Q 0
 ;
DESC(SH) ;
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 N CD S CD=$P($G(@$$^W3TMPTF@($$^%W1JB,2,SH)),"~") I CD="" Q NODESC
 Q $$DESC1(CD)
 ;
DESC1(CD) ;
 N DESC S DESC=""
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 I '$D(^[$$^%W1UCI(JB)]L1TIP("MTK",CD,1)) Q NODESC
 ;
 N I F I=1:1 Q:'$D(^[$$^%W1UCI(JB)]L1TIP("MTK",CD,I))  D
 .S DESC=DESC_$$H2U^%L1FRM(^(I))_"<br>"
 ;
 Q DESC
 ;
PIC(SH) ;
 N PATH,PATHL ;;S PATH="./"_$$GET^%W1PRM("MSD")_"/itp/"
 S PATH=$$WEB^W3MAIN
 S PATH=PATH_$$GET^%W1PRM("MSD")_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_$$GET^%W1PRM("MSD")_"/itp/"
 N TYPE S TYPE="jpg"
 N PRE S PRE="pic"
 I $E(SH,1,3)="min" S PRE="min"
 N NOPIC S NOPIC=PRE_"logo."_TYPE
 ;
 D PUT^%W3DEB("W3HZPRT-PIC","SH=SH")
 N PIC S PIC=""
 N CD I SH'["log",SH'["min" S CD=$P($G(@$$^W3TMPTF@($$^%W1JB,2,SH)),"~") I CD="" Q PATH_NOPIC
 I SH["log" S CD=SH
 I SH["min" S CD=$P(SH,"min",2)
 N PICNAME S PICNAME=PRE_CD_"."_TYPE
 N FLPIC S FLPIC=PATH_PICNAME
 N FLPICL S FLPICL=PATHL_PICNAME
 D PUT^%W3DEB("W3HZPRT-PIC","FLPICL=FLPICL & FLPIC=FLPIC")
 I $$^%L1ZOS(10,FLPICL)<0 Q PATH_NOPIC
 ;
 Q FLPIC
 ;
 ;
TBWAS(STAM) ;
 N I,ST,TBW
 S TBW="~"
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPORD(JB,I))  D
 .S ST=$G(^(I)) Q:$P(ST,"~")'=0  Q:'$P(ST,"~",2)
 .S TBW=TBW_$P(ST,"~",2)_"~"
 Q TBW
 

W3HZPRT0
W3HZPRTN(N) ; [ 29.11.08 10:58 ] [ 14.11.08 14:40 ] [ 28.10.08 18:33 ]
 ; IN: N - COD KVUZA
 ;     ITEMSHOW - SHOW ITEM PICTURE
 ; ---------------------------------------------------------
 N (JB,NMB,N,MLZ,HZM,MLZR,MLZR1,SOAD,LKHN,SRCH,%ARG,ITEMSHOW,SCRY,MENU)
 ;;S GLRY=1
 S SH=0 I $G(%ARG("SHID")) S SH=$$FINDSH^W3HZORD(%ARG("SHID"))
 ;
 I '$G(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 D KILL^%W3DEB("W3HZPRTN")
 S MSD=$$GET^%W1PRM("MSD")
 S GLRY=$$GET^%W1PRM("GLRY")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 ;;I $L($G(NMB))<4,'$$^W3MENU S NMB=$$NMB^W3HZMST(JB)
 I $L($G(NMB))<4 S NMB=$$NMB^W3HZMST(JB)
 I $G(SCRH)["<UNDEF" S SRCH=""
 D PUT^%W3DEB("W3HZPRTN","NMB=NMB & N=N &SH=SH & MSD=MSD & SRCH=SRCH &ITEMSHOW=ITEMSHOW & ARG=[%ARG")
 D PUT^%W1PRM("NMB",$G(NMB))
 D PUT^%W1PRM("CDKV",$G(N))
 D PUT^%W1PRM("SRCH",$G(SRCH))
 S PR800=$$GET^%W1PRM("PR800")
 ;;I '$G(NMB)!'$G(N) Q
 I '$G(N),'$L($G(SRCH)),$G(ITEMSHOW)="" Q
 ;
 I $G(ITEMSHOW)="" D
 .K ^[$$^W3MAIN]TMPTF($$^%W1JB,2),^[$$^W3MAIN]TMPTF($$^%W1JB,3)
 ;
P D PUT^%W1PRM("SHOWORD",0)
 D INIT^W3HZTFR
 ;
 I $L($G(ITEMSHOW)) G VW
 ;
 D SHOWGR($G(N)) Q
 ;
VW ;
 D VIEW
 Q
 ;
CTF2 S I1=I1+1
 S ZMANK=$$ZMANK
 N MH
 S MH=$$MH($G(NMB),N2)
 S ^[$$^W3MAIN]TMPTF($$^%W1JB,2,I1)=N2_"~"_$$HBR^%L1FRM($$SPA^%L1FRM($$SHEM^W4P(N2)),24)_"~"_$J(MH,2,2)
 Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK
 I $L($G(HZM)) S ZMANK=$$ZMANK I ZMANK="" K ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
ZMANK(STAM) ;
 Q $ZD($H,"24:60")
 ;
VIEW ;
 I $L($G(ITEMSHOW)),$D(N) D ITEMSHOW(ITEMSHOW,NMB,N,$G(%ARG("SHID"))) S ITEMSHOW=""
 Q
 ;
ITEMSHOW(TXT1,NMB,KV,SHID) ;
 N CD,NM,MH S CD=$P(TXT1,"~")
 S NM=$$CNWEB^%L1FRM($P(TXT1,"~",2))
 S MH=$P(TXT1,"~",3)
 N PR800 S PR800=$$GET^%W1PRM("PR800")
 ;
 D PUT^%W3DEB("W3HZPRTN-ITEMSHOW","TXT1=TXT1 & KV=KV &SHID=SHID & NM=NM & MH=MH &PR800=PR800")
 ;
 W "<div align=""center"" >",!
 W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""" id=""ItemShow"" >",!
 W "<tr><td>"
   W "<table width=""100%"" border=""0"" >"
     W "<tr>",!
       W ?5,"<td align='center'><img src='"_$$PIC("pic"_CD)_"' style='border:2px ridge brown' "_$S('PR800:"width='250px' height='160px'",1:" width='200px' height='120px' ")_"/> </td>",!
     W "</tr>",!
   W "</table>"
 W "</td></tr>",!
 ;
 W "<tr height='30pt'>",!
 N TXT
 S TXT=$$H2U^%L1FRM(NM)_"&nbsp;&nbsp;&nbsp;"_$J(MH,2,2)
 W ?5,"<td style='color:darkbrown;font-size:"_$S($L(NM)<21:$$^W3FSZ(14),1:$$^W3FSZ(12))_";text-align:center' >"_TXT_"</td>",!
 W "</tr>",!
 ;
 W "<tr height='65pt'>",!
 W ?5,"<td style=""color:black"" align=""center"" >"
        W "<textarea id=""txtarid"" rows=""3"" cols=""33"" readonly=""readonly"" style=""background-color:white;font-family:arial,helvetica,sans-serif;font-size:"_$$^W3FSZ(11)_""">"
        W $$DESC1(CD)_"</textarea>"
     W "</td>"
 W "</tr>",!
 ;
 W "<tr>",!
    W "<td align=""center"">" W "<br />"
      D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDBACK"),"parent.tsf.Submit()","color:green",",,,180")
    W "</td>",!
 W "</tr>"
 ;
 I $L($G(SHID)) D
 .W "<tr>",!
 .   W "<td align=""center"">" W "<br />"
 .     D ROUNDBUT^%W1JS("DelRow",$$^%W1DICT("DELETEITEMFROMORDER"),"parent.parent.ord.DelRowOrd('TblOrd','"_SHID_"')","color:black","yl20,20,yellow,180")
 .   W " </td>",!
 .W "</tr>"
 ;
 W "<tr>",!
    W "<td align=""center"">" W "<br />"
      D ROUNDBUT^%W1JS("Back2Menu",$$^%W1DICT("BACK2MENUNOCHOICE"),"Back2Menu("_JB_",'','','"_NMB_"','"_KV_"')","color:red",",,,180")
    W " </td>",!
 W "</tr>"
 ;
 W "</table>",!
 Q
 ;
TSF(PAR) ;
 I $D(^[$$^%W1UCI(JB)]P1EZI(PAR))>9!($D(^[$$^%W1UCI(JB)]P1EZKI(+$$SUG^W4P(PAR)))>9)!($D(^[$$^%W1UCI(JB)]P1EZA(PAR))>9)!($D(^[$$^%W1UCI(JB)]P1EZT(PAR))>9)!($D(^[$$^%W1UCI(JB)]P1EZR(PAR))>9) Q 1
 Q 0
 ;
DESC1(CD) ;
 N DESC S DESC=""
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 I '$D(^[$$^%W1UCI(JB)]L1TIP("MTK",CD,1)) Q NODESC
 ;
 N I F I=1:1 Q:'$D(^[$$^%W1UCI(JB)]L1TIP("MTK",CD,I))  D
 .N A S A=$G(^(I))
 .S DESC=DESC_$$H2U^%L1FRM($$SPA^%L1FRM(A))_" " ;"<br>"
 ;
 Q DESC
 ;
PIC(SH) ;
 N PATH,PATHL ;;S PATH="./"_$$GET^%W1PRM("MSD")_"/itp/"
 S PATH=$$WEB^W3MAIN
 S PATH=PATH_$$GET^%W1PRM("MSD")_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_$$GET^%W1PRM("MSD")_"/itp/"
 N TYPE S TYPE="jpg"
 N PRE S PRE="pic"
 I $E(SH,1,3)="min" S PRE="min"
 N NOPIC S NOPIC=PRE_"logo."_TYPE
 ;
 D PUT^%W3DEB("W3HZPRTN-PIC","SH=SH")
 N PIC S PIC=""
 N CD I SH'["log",SH'["min",SH'["pic" S CD=$P($G(^[$$^W3MAIN]TMPTF($$^%W1JB,2,SH)),"~") I CD="" Q PATH_NOPIC
 I SH["log" S CD=SH
 I SH["min" S CD=$P(SH,"min",2)
 I SH["pic" S CD=$P(SH,"pic",2)
 N PICNAME S PICNAME=PRE_CD_"."_TYPE
 N FLPIC S FLPIC=PATH_PICNAME
 N FLPICL S FLPICL=PATHL_PICNAME
 D PUT^%W3DEB("W3HZPRTN-PIC","FLPICL=FLPICL & FLPIC=FLPIC")
 I $$^%L1ZOS(10,FLPICL)<0 Q PATH_NOPIC
 ;
 Q FLPIC
 ;
 ;
TBWAS(STAM) ;
 N I,ST,TBW
 S TBW="~"
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPORD(JB,I))  D
 .S ST=$G(^(I)) Q:$P(ST,"~")'=0  Q:'$P(ST,"~",2)
 .S TBW=TBW_$P(ST,"~",2)_"~"
 Q TBW
 ;
SHOWGR(N)
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 .I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 ;
 W "<div align=""center"">",!
 W "<table width=""98%"" border=""0"" dir="""_$$^%W1DIR_""" id=""TblPrt"" >",!
 I $G(N) D
 .W "<tr><th class=""hdit"" colspan="""_$S($$PICTURE^W3PRM:"2",1:"1")_""">"_$$H2U^%L1FRM($G(^[$$^%W1UCI(JB)]PARSUG(N)))_"</th>"
 .W "<th dir=""LTR"" ><a href=""http://www.2order.org"" target=""_blank""><img src=""w3comp.jpg"" border=""0""><span style=""color:"_$$BGHD^W3CSS($$COLOR^W3CSS)_""">Lev Online</span></a></th>"
 .W "</tr>",!
 N NP,NM,MH,IHTML,I
 S I=0
 S TF=2
 ;
 I $L($G(SRCH)) D  S TF=2,SRCH="" K N G T
 .I SRCH?1N.N.".".N,$D(^[$$^%W1UCI(JB)]PAR(SRCH)),$$CODE^W3PRM D  Q
 ..N I1 S I1=0 S N2=SRCH D CTF2
 .;;D CRSUG^W3HZTFR
 .N KV,PAR,I1,N2 S I1=0
 .S KV="" F  S KV=$O(^[$$^%W1UCI(JB)]PARCAT($$^%W1JB,KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(^[$$^%W1UCI(JB)]PARCAT($$^%W1JB,KV,PAR)) Q:PAR=""  D
 ...I '$$SRCH(SRCH,$$SHEM^W4P(PAR)) Q
 ...S N2=PAR D CTF2
 ;
 ;
 I $D(^[$$^%W1UCI(JB)]P1PARSID)>9 D  G T
 .N NP,PRT,MMM,I1,N2
 .S NP="",I1=0 F  S NP=$O(^[$$^%W1UCI(JB)]P1PARSID(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(^[$$^%W1UCI(JB)]PARCAT($$^%W1JB,N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 .S N2="" F  S N2=$O(^[$$^%W1UCI(JB)]PARCAT($$^%W1JB,N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 ;
 I $G(^[$$^%W1UCI(JB)]P1PRM("HFNUM"))=2 D  G T ; --- SIDUR NUMERY
 .N N1,N2,I1 S N1="",I1=0 F  S N1=$O(@KVZ@(N1)) Q:N1=""  D
 ..S N2=N1 I KVZ["P1TFR" S N2=$P($G(^(N1)),"\")
 ..D CTF2
 ;
 D INV(KVZ,"^[$$^%W1UCI(JB)]PAR") ; ---->  ^TMPTF1($$^%W1JB) ; ----- SIDUR A-B
 N NN,N2,I1 S NN="",I1=0
 F  S NN=$O(^[$$^W3MAIN]TMPTF1($$^%W1JB,NN)) Q:NN=""  S N1=^(NN) D
 .S N2=N1
 .D CTF2
 ;
 ;
T D PUT^%W3DEB("W3HZPRT","TMPTF=^[$$^W3MAIN]TMPTF($$^%W1JB)")
 K ^[$$^W3MAIN]TMPTF1($$^%W1JB)
 ;
 N I F I=1:1 Q:'$D(@$$^W3TMPTF@($$^%W1JB,2,I))  D
 .N TXT S TXT=$G(^(I)),CD=$P(TXT,"~")
 .D VIEWGRP(CD)
 ;
 W "</table>",!
 W "</div>",!
 D SCRY
 Q
VIEWGRP(NP) ;
 Q:$G(NP)=""
 N B S B=$G(@$$^W4GL("PAR")@(NP)) Q:B=""  N NM,MH,IHTML
 I $G(N),$$SUG^W4P(NP)'=N,'$L($G(SRCH)) Q
 ;;I '$$P1HZTF^W4PARUS(NP) Q
 I $G(@$$^W4GL("W3PAR")@(NP))=0 Q
 I $$GET^%W1PRM("TFR"),$G(@$$^W4GL("W3PAR")@(NP))'[$$GET^%W1PRM("TFR") Q
 S NM=$P(B,"**"),MH=$$MH($G(NMB),NP) ;$P(B,"**",2)
 S MH=$J(MH,2,2)
 ;
 N TOSHOW
 S TOSHOW="setCookie('SYIS"_JB_"',GetScrollY(self),1);parent.location.replace('w3mnp.jsp?JB="_JB_"&MSD="_MSD_"&CODE="_$$GET^%W1PRM("CODE")_"&PR800="_$$GET^%W1PRM("PR800")_"&ITEMSHOW="_(NP_"~"_$$CLWEB^%L1FRM(NM)_"~"_MH)_"&CDKV="_$G(N)_"&SH="_I_"')"
 ;
 I '$$TSF(NP) D
 .S TOSHOW="OrdShow("_JB_",'"_NMB_"','0~"_NP_"~"_$$CLWEB^%L1FRM(NM)_"~"_MH_"',"_+$G(I)_",'"_$G(N)_"')"
 ; --------- NAME
 S IHTML="<td width=""80%"" onClick="""_TOSHOW_""" style=""cursor:pointer"">"
 S IHTML=IHTML_"<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""""
 S IHTML=IHTML_" >"_$$H2U^%L1FRM(NM)_"</span><br />"
 ; --------- DESC
 S IHTML=IHTML_"<span style=""color:black; font-size:"_$$^W3FSZ(11)_""">"
 N II,ST,LINE S ST="" F II=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",NP,II))  D
 .S LINE=$G(^(II))
 .I $$^%W1DIR="RTL" S ST=$$SPA^%L1FRM(LINE)_" "_ST Q
 .I $$^%W1DIR="LTR" S ST=ST_$$SPA^%L1FRM(LINE)_" " Q
 S IHTML=IHTML_$$H2U^%L1FRM(ST)
 S IHTML=IHTML_"</span></td>"
 ; ---------- MH
 S IHTML=IHTML_"<td width="""_$S($$PICTURE^W3PRM:"8%",1:"20%")_""">"
 S IHTML=IHTML_"<span style=""color:"_$$BGHD^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" onClick="""_TOSHOW_""" >"
 S IHTML=IHTML_MH_"</span></td>"
 ; --------- PIC
 I $$PICTURE^W3PRM D
 .N PIC S PIC=$$GETPIC^W3ENTER(NP)
 .S IHTML=IHTML_"<td width=""12%""><img src="""_$P(PIC,"~",2)_""" width=""100"" height=""67"" onMouseOver=""openPic1('"_NP_"')"" onMouseOut=""closePic1()"" onClick="""_TOSHOW_""" style=""cursor:pointer""></td>"
 ;
 W "<tr "
 I $$TBWAS[("~"_NP_"~") W " style="""_$$BODYFRAME^W3CSS($$COLOR^W3CSS)_""""
 W " id=""tr"_NP_""""
 W " >"
 W "<a name=""MA"_NP_""">"_IHTML_"</a></tr>",!
 W "<tr><td colspan=""3"" height=""3pt"" ><hr></td></tr>",!
 Q
SCRY ;
 I $G(SCRY) D
 .W "<script>",!
 .W " scrollTo(1,"_SCRY_")",!
 .W "</script>",!
 Q
SRCH(SRCH,NM)
 I $$^%W1DIR="RTL" S NM=$$INV^%L1FRM(NM)
 I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE(NM)
 I $E(NM,1,$L(SRCH))=SRCH Q 1
 I (" "_NM_" ")[(" "_SRCH_" ") Q 1
 N J,OK,MF S OK=1 F J=1:1:$L(SRCH," ") D  Q:'OK
 .N SRCW S SRCW=$P(SRCH," ",J)
 .I SRCW["qpceeiu" S SRCW="qpc"
 .I SRCW["qpceiu" S SRCW="qpc"
 .N FND,FND1 S FND=$F(" "_NM," "_SRCW) I FND<1 S OK=0 Q
 .S FND1=FND-$L(SRCW)
 .I $D(MF(FND1)) S FND=$F(" "_NM," "_SRCW,MF(FND1)) I FND<1 S OK=0 Q
 .S MF(FND1)=FND
 Q OK

W3HZPRTN
W3HZPRTN(N) ; [ 19.05.26 15:52 ] [ 07.04.26 04:32 ] [ 24.03.26 05:49 ] 
 ; IN: N - COD KVUZA
 ;     SHID - EDIT LINE SHID
 ;     ITEMSHOW - SHOW ITEM PICTURE
 ; ---------------------------------------------------------
 N (JB,NMB,N,MLZ,HZM,MLZR,MLZR1,SOAD,LKHN,SRCH,%ARG,ITEMSHOW,SCRY,MENU)
 I '$G(N) S N=$$GET^%W1PRM("CDKV")
 I 'N S N=$$FIRSTGR^W3HZTFR
 ;
 I $L($G(%ARG("SRCH"))) D PUT^%W1PRM("SRCH",%ARG("SRCH"))
 ;
 I $G(%ARG("SHOW"))=0 Q
 ;
 S SRCH=""
 I $L($G(%ARG("SRCH")))=0,$L($$GETP^%W1PRM("SRCH")) D
 .S SRCH=$$GETP^%W1PRM("SRCH")
 ;
 D KILL^%W1PRM("SRCH")
 ;
 S SH=0 I $G(%ARG("SHID")) S SH=$$FINDSH^W3HZORD(%ARG("SHID"))
 ;
 I '$G(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 ;
 D TMPTF,TMPORD
 D KILL^%W3DEB("W3HZPRTN")
 S MSD=$$GET^%W1PRM("MSD")
 S GLRY=$$GET^%W1PRM("GLRY")
 ;
 I $$^W3CLOSEM(MSD) D  S OK=0 Q
 . W "<script>",!
 . W "MsgA(""DELIVERYNOTWORK"")",!
 . ;;W "Msg(""DELIVERYNOTWORK"","""",""font-size:"_$$^W3FSZ(20)_";background-color:red;color:white"","""","""",72,72)",!
 . W "</script>",!
 ;
 I $$^W4MSD($G(NMB)) S NMB=$$NMB^W3HZMST(JB)
 I $G(SCRH)["<UNDEF" S SRCH=""
 D PUT^%W3DEB("W3HZPRTN","NMB=NMB & N=N &SH=SH & MSD=MSD & SRCH=SRCH &ITEMSHOW=ITEMSHOW & ARG=[%ARG")
 D PUT^%W1PRM("NMB",$G(NMB))
 I $G(N) D PUT^%W1PRM("CDKV",$G(N))
 ;
 ;;D PUT^%W1PRM("SRCH",$G(SRCH)) ; --- 24/01/17
 ;
 S PR800=$$GET^%W1PRM("PR800")
 ;;I '$G(NMB)!'$G(N) Q
 I '$G(N),'$L($G(SRCH)),$G(ITEMSHOW)="" D  Q:'$G(N)
 .N NN,KV S NN="",KV=""
 .F  S NN=$O(@$$^W4MAIN("TMPTF")@(1,NN)) Q:NN=""  S KV=$G(^(NN,"KV")) Q:KV
 .I KV S N=KV
 ;
 I $G(ITEMSHOW)="" D
 .K @TMPTF@(2),@TMPTF@(3)
 ;
P D PUT^%W1PRM("SHOWORD",0)
 D INIT^W3HZTFR
 ;
 I $G(SRCH)=0,$G(ITEMSHOW)="" S ITEMSHOW="0"
 ;
 I $L($G(ITEMSHOW)) D VIEW G END ; ---- PROCESSING CHOICED ITEM
 ;
 D SHOWGR($G(N))
 ;
END Q
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
CTF2 S I1=I1+1
 S ZMANK=$$ZMANK
 N MH D TMPTF
 S MH=$$MH($G(NMB),N2)
 S @TMPTF@(2,I1)=N2_"~"_$$HBR^%L1FRM($$SPA^%L1FRM($$SHEM^W4P(N2)),24)_"~"_$J(MH,2,2)
 Q
 ;
INV(KVZ,GL,KV) ;
 D INV^W3SIDKVZ(KVZ,GL,KV)
 Q
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK
 I $L($G(HZM)) S ZMANK=$$ZMANK I ZMANK="" K ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
ZMANK(STAM) ;
 Q $ZD($H,"24:60")
 ;
 ;
VIEW ;
 I $L($G(ITEMSHOW)),$D(N) D
 .D ITEMSHOW(ITEMSHOW,NMB,N,$G(%ARG("SHID")))
 .S ITEMSHOW="",SRCH=""
 Q
 ;
 ;
ITEMSHOW(TXT1,NMB,KV,SHID) ;
 N CD,NM,MH,TXT
 S CD=$P(TXT1,"~")
 S NM=$$CNWEB^%L1FRM($P(TXT1,"~",2))
 S NM=$$RPL^%L1FRM(NM,"()","")
 S NM=$$RPL^%L1FRM(NM,"[]","")
 S MH=$P(TXT1,"~",3)
 N PR800 S PR800=$$GET^%W1PRM("PR800")
 ;
 D PUT^%W3DEB("W3HZPRTN-ITEMSHOW","TXT1=TXT1 & KV=KV &SHID=SHID & NM=NM & MH=MH &PR800=PR800")
 ;
 ;;W "<div align=""center"" style=""position:absolute;top:0px;width:95%"
 W "<div align=""center"" style=""top:0px;width:95%"
 W """ >",!
 N WDT S WDT=98 I CD=0 S WDT=55
 W "<table width="""_WDT_"%"" border=""0"" dir="""_$$^%W1DIR_""" id=""ItemShow"" >",!
 ;
 I CD'=0 D
 .W "<tr>"
 .W " <td>"
 .  W "<table width=""98%"" border=""0"" dir="""_$$^%W1DIR_""" >"
 .    W "<tr class=""hditemshow"" >",!
 .     S TXT=$$H2U^%L1FRM(NM)_"&nbsp;&nbsp;&nbsp;"
 .     N MH1 S MH1=MH
 .     I $$GETP^%W1PRM("LMAM") D
 .     .S MH1=$J(MH1*100/(100+$$GETP^%W1PRM("AHMAM")),2,2)
 .     S TXT=TXT_$J(MH1,2,2)
 .     W ?5,"<td style=""text-align:center"" "
 .           W "dir='"_$$^%W1DIR_"'"
 .       W " >"_TXT_"</td>",!
 .     ;
 .     W ?5,"<td align=""center"">"
 .     D
 .     .N PIC S PIC=$$PICTURE(CD,"pic")
 .     .I $$SHOWPIC,$L(PIC) W $$IMG(CD,"")
 .     .I '$$SHOWPIC!'$L(PIC) W "&nbsp;"
 .     W "</td>",!
 .     ;
 .    W "</tr>",!
 .  W "</table>"
 .W " </td>",!
 .W "</tr>",!
 .;
 .W "<tr>",!
 .N CLDETITS S CLDETITS=$$PRM^W3IMG("FGDETITS")
 .I CLDETITS?.P S CLDETITS="black"
 .W ?5,"<td class=""desc"" align=""center"" style=""padding:20px;color:"_CLDETITS_""" >"
 .       W $$DESC1(CD)
 .    W "</td>",!
 .W "</tr>",!
 ;
 I CD=0 D
 .W "<tr>",!
 . W "<td align=""center"" >",!
 .  W " <span class=""hditemshow"">"_$$^%W1DICT("ITEMNAME")_"</span><br>",!
 .  W "  <input type=""text"" id=""itemid"" size=""18"" maxlength=""18"""
 .  W "   style=""font-size:"_$$^W3FSZ(11)_""""
 .  W "   value="""_$$ITEMNAME(SHID)_""" "
 .  W "  />"
 . W "</td>",!
 .W "</tr>",!
 .
 .W "<tr>",!
 . W "<td align=""center"" >",!
 .  W " <span class=""hditemshow"">"_$$^%W1DICT("PRICE")_"</span><br>",!
 .  W "  <input type=""text"" id=""priceid"" size=""5"" maxlength=""6"""
 .  W "   style=""font-size:"_$$^W3FSZ(11)_""""
 .  W "   onClick=""this.select()"" "
 .  W "   value="""_$$PRICE(SHID)_""" "
 .  W "  />"
 . W "</td>",!
 .W "</tr>",!
 ;
 I $D(@$$^W4GL("P1EZH")@(CD))>9 D
 .W "<tr><td align=""center"">"
 .W "<select id=""ezh"" style=""font-size:"_$$^W3FSZ(16)_""" >",!
 .W "<option value=""0"">"_$$^%W1DICT("CHOICECMNT")_"</option>",!
 .N N,CMNT S N="" F  S N=$O(@$$^W4GL("P1EZH")@(CD,N)) Q:N=""  D
 ..S CMNT=$G(@$$^W4GL("P1CODH")@(N))
 ..W "<option value="""_N_""">"_$$H2U^%L1FRM(CMNT)_"</option>",!
 .W "</select>",!
 .W "</td></tr>",!
 ;
 W "<tr>",!
  W "<td align=""center"" >",!
   W "<span class=""hditemshow"">"_$$^%W1DICT("COMMENT2KITCHEN")_"</span><br>",!
   W "<textarea id=""cmntid"" cols=""25"" rows=""4"" " 
   W " onClick=""ClickCmnt(this)"" "
   W " style=""font-size:"_$$^W3FSZ(11)_""">"
   W $$COMMENT(SHID)
   W "</textarea>"
  W "</td>",!
 W "</tr>",!
 ;
 W "<tr>",!
   W "<td align=""center"">"
    W "<span class=""hditemshow"">"_$$^%W1DICT("QUANTITY"),"</span><br />",!
    W "<select id=""qnid"""
     I $$MVC2^W3HZMST(JB,+$E(SHID,4,10)) W " disabled=""disabled"" "
    W " >",!
    N MXQN S MXQN=$G(@$$^W4PRM@("KOLMAX"))
    I MXQN<99 S MXQN=99
    ;
    F I=1:1:MXQN D
    .W "<option value="""_I_""""
    .I +I=+$P(TXT1,"~",4) W " selected=""selected"""
    .W " >"_I_"</option>",!
    W "</select>",!
   W "</td>",!
 W "</tr>",!
 W "</table>",! 
 W "</div>",!
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" id=""DivBtn"" >",!
 W "<table width="""_WDT_"%"" border=""0"" dir="""_$$^%W1DIR_""" align=""center"" id=""ItemBtn"" >",!
 W "<tr>",!
    W "<td align=""center"" id=""btn"" >" W "<br />"
      N SUBMIT S SUBMIT="parent.tsf.Submit()"
      I CD=0 S SUBMIT="Submit0()"
      D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDBACK"),SUBMIT,"color:green;font-weight:bold",",,,200")
    W "</td>",!
 W "</tr>"
 ;
 I '$L($G(SHID)),$$SET2ORD^W4PRM D
 .W "<tr>",!
 .   W "<td align=""center"">" W "<br />"
 .     N SUBMIT S SUBMIT="parent.tsf.Submit('1')"
 .     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITITEMSET"),SUBMIT,"color:darkgreen;font-weight:bold",",,,200")
 .   W "</td>",!
 .W "</tr>"
 ;
 I $L($G(SHID)) D  ; -- EDIT
 .W "<tr>",!
 .   W "<td align=""center"">" W "<br />"
 .     D ROUNDBUT^%W1JS("DelRow",$$^%W1DICT("DELETEITEMFROMORDER"),"parent.parent.ord.DelRowOrd('TblOrd','"_SHID_"')","color:black;font-weight:bold","yl20,20,yellow,200")
 .   W " </td>",!
 .W "</tr>"
 ;
 W "<tr>",!
    W "<td align=""center"">" W "<br />"
      D ROUNDBUT^%W1JS("Back2Menu",$$^%W1DICT("BACK2MENUNOCHOICE"),"Back2Menu("_JB_",'','','"_NMB_"','"_KV_"')","color:red;font-weight:bold",",,,200")
    W " </td>",!
 W "</tr>"
 ;
 ;;I $G(@$$^W4PRM@("INPCODE")) D
 .W "<tr>"
 .  W "<td align=""center"">" 
 .   W "<br>"
 .   D ROUNDBUT^%W1JS("virtkbtn",$$^%W1DICT("SHOWVIRTKB"),"VirtKB()","color:blue;font-weight:bold",",,,200")
 .   W "<br><span id=""virtmsg"" style=""color:brown;"_$$FONTFM^W3CSS_"""></span>"
 .  W "</td>"
 . W "</tr>",!
 ;
 ;;I '$G(@$$^W4PRM@("INPCODE")) D PUT^%W1PRM("VIRTKB",1)
 W "<tr><td style=""text-align:center;color:red;font-weight:bold"" >"
  W $$^%W1DICT("TOVIEWVIRTKBPRESSONFIELD")
 W "</td></tr>",!
 ;
 D PUT^%W1PRM("VIRTKB",1)
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
TSF(PAR) ;
 N SUG S SUG=+$$SUG^W4P(PAR)
 I $D(@$$^W4GL("P1EZI")@(PAR))>9!($D(@$$^W4GL("P1EZKI")@(SUG))>9) Q 1
 I $D(@$$^W4GL("P1EZA")@(PAR))>9!($D(@$$^W4GL("P1EZT")@(PAR))>9) Q 1
 I $D(@$$^W4GL("P1EZR")@(PAR))>9 Q 1
 Q 0
 ;
DESC1(CD,NOSHOW,ENG) ;
 N DESC S DESC=""
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 I $G(NOSHOW) S NODESC="&nbsp;"
 ;
 N OK S OK=0
 N I F I=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",CD,I))  D
 .N A S A=$G(^(I)) I A'?.P S OK=1
 .S DESC=DESC_$$SPA^%L1FRM(A)_" "
 ;
 I DESC[" == " D
 .I '$G(ENG) S DESC=$P(DESC," == ") Q
 .S DESC=$P(DESC," ==")
 ; 
 S DESC=$$H2U^%L1FRM(DESC)
 ;
 N HRA S HRA=$$SPA^%L1FRM($$HRA^W4P(CD))
 I $L(HRA) S DESC="["_$$H2U^%L1FRM(HRA)_"] "_DESC
 I 'OK Q NODESC
 Q $$RPL^%L1FRM(DESC,"_","<BR>")
 ;
 ;
PIC(SH) ;
 D TMPTF
 N PATH,PATHL ;;S PATH="./"_$$GET^%W1PRM("MSD")_"/itp/"
 S PATH=$$WEB^W3MAIN
 S PATH=PATH_$$GET^%W1PRM("MSD")_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_$$GET^%W1PRM("MSD")_"/itp/"
 N TYPE S TYPE="jpg"
 N PRE S PRE="pic"
 I $E(SH,1,3)="min" S PRE="min"
 N NOPIC S NOPIC=PRE_"logo."_TYPE
 ;
 D PUT^%W3DEB("W3HZPRTN-PIC","SH=SH")
 N PIC S PIC=""
 N CD I SH'["log",SH'["min",SH'["pic" S CD=$P($G(@TMPTF@(2,SH)),"~") I CD="" Q PATH_NOPIC
 I SH["log" S CD=SH
 I SH["min" S CD=$P(SH,"min",2)
 I SH["pic" S CD=$P(SH,"pic",2)
 N PICNAME S PICNAME=PRE_CD_"."_TYPE
 N FLPIC S FLPIC=PATH_PICNAME
 N FLPICL S FLPICL=PATHL_PICNAME
 D PUT^%W3DEB("W3HZPRTN-PIC","FLPICL=FLPICL & FLPIC=FLPIC")
 ;;I $$^%L1ZOS(10,FLPICL)<0 Q PATH_NOPIC
 I '$$EXIST^%L1ZOS(FLPICL) Q PATH_NOPIC
 ;
 Q FLPIC
 ;
 ;
ITEMNAME(SHID)
 D TMPORD
 I $G(SHID)="" Q "&nbsp;"
 N SH S SH=$$FINDSH^W3HZORD(SHID) Q:'SH "&nbsp;"
 Q $$H2U^%L1FRM($P($G(@TMPORD@(SH)),"~",3))
 ;
PRICE(SHID)
 D TMPORD
 I $G(SHID)="" Q "&nbsp;"
 N SH S SH=$$FINDSH^W3HZORD(SHID) Q:'SH "&nbsp;"
 Q $$H2U^%L1FRM($P($G(@TMPORD@(SH)),"~",4))
 ;
COMMENT(SHID)
 D TMPORD
 I $G(SHID)="" Q "&nbsp;"
 N SH S SH=$$FINDSH^W3HZORD(SHID) Q:'SH "&nbsp;"
 ;;Q $$H2U^%L1FRM($P($G(@TMPORD@(SH)),"~",7))
 Q $$H2U^%L1FRM($$CMST^W3HZMST(JB,SH))
 ;
 ;
TBWAS(STAM) ;
 N I,ST,TBW D TMPORD
 S TBW="~"
 F I=1:1 Q:'$D(@TMPORD@(I))  D
 .S ST=$G(^(I)) Q:$P(ST,"~")'=0  Q:'$P(ST,"~",2)
 .S TBW=TBW_$P(ST,"~",2)_"~"
 Q TBW
 ;
 ;
SHOWGR(N) ;--------- SHOW GROUP OF ITEMS ( N - GROUP CODE )
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 .I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 ;
 W "<div align=""center"" "
 W ">",!
 W "<table width=""98%"" border=""0"" dir="""_$$^%W1DIR_""" id=""TblPrt"" >",!
 ;
 I $G(N) D
 .D KOTGR(N) ; --- IMG
 .
 .I '$D(MSD) S MSD=$$GET^%W1PRM("MSD")
 .
 .I $D(^[$$^W3MAIN]W3SALEMSG(MSD)) D  ; --- MARQUEE
 ..N SPAN S SPAN=4 I $$CODE^W3PRM'=2 S SPAN=SPAN-1
 ..I '$$SHOWPIC S SPAN=SPAN-1
 ..W "<tr><td colspan="""_SPAN_""">" D SALEMSG W "</td></tr>",!
 .
 .I $$SPA^%L1FRM($$CMNT^W3PARSUG(N))'="" D  ; --- COMMENT TO GROUP
 ..N SPAN S SPAN=3 I $$CODE^W3PRM'=2 S SPAN=SPAN-1
 ..I '$$SHOWPIC S SPAN=SPAN-1
 ..W "<tr><td colspan="""_SPAN_""" "
 ..W "style=""color:red;font-size:"_$$^W3FSZ(12)_";"_$$FONTFM^W3CSS
 ..W ";text-align:center;font-weight:bold"
 ..W """ >"
 .. W $$H2U^%L1FRM($$CMNT^W3PARSUG(N))
 ..W "</td></tr>"
 .
 .I $$HKBEEF^W3PRM D
 ..N SPAN S SPAN=4 I $$CODE^W3PRM'=2 S SPAN=SPAN-1
 ..I '$$SHOWPIC S SPAN=SPAN-1
 ..W "<tr><td colspan="""_SPAN_""" "
 ..W "style=""color:red;font-size:"_$$^W3FSZ(12)_";"_$$FONTFM^W3CSS
 ..W """ >"
 .. W $$^%W1DICT("ALLSUMSAPPROXIMATE")
 ..W "</td></tr>"
 .
 .W "<tr>"
 .I $$CODE^W3PRM=2 W "<td></td>"
 .W " <td class=""hdpress"">"_$$^%W1DICT("PRESSONITEMNAME")_"</td>"
 .W " <td></td>",!
 .I '$$SHOWPICGR W "<td></td>"
 .W "</tr>",!
 ;
 N NP,NM,MH,IHTML,I
 S I=0
 S TF=2
 ;
 D SEDERGR
 ;
T D PUT^%W3DEB("W3HZPRT","TMPTF=^[$$^W3MAIN]TMPTF($$^%W1JB)")
 ;
 N I F I=1:1 Q:'$D(@TMPTF@(2,I))  D
 .N TXT S TXT=$G(^(I)),CD=$P(TXT,"~")
 .D VIEWGRP(CD)
 ;
 W "</table>",!
 W "</div>",!
 ;
 N BDKTIME
 S BDKTIME=$$^W3VLDTM($ZD($H,"DDMMYY"),$$T^%L1TIME($P($H,",",2)+1000))
 D PUT^%W3DEB("W3HZPRTN","BDKTIME=BDKTIME")
 ;
 I $$GET^%W1PRM("NEWPAGE") D  ; --- FIRST TIME
 .D PUT^%W1PRM("NEWPAGE",0)
 .
 .I $$^W3HZMH(JB) D  Q  ; -- PRICE OFFER MESSAGE
 ..W "<script>",!
 .. W "Msg(""PRCOFR"","""",""font-size:"_$$^W3FSZ(20)_";background-color:yellow"","""",""200"",72,72)",!
 ..W "</script>",!
 .
 .I BDKTIME=-3 D  ; -- MESSAGE "RESTAURANT CLOSED "
 ..W "<script>",!
 .. W "Msg(""FUTDAT"","""",""font-size:"_$$^W3FSZ(20)_";background-color:red;color:white"","""","""",72,72)",!
 ..W "</script>",!
 ;
 Q  ; --------------- END BODY
 ;
 ;
KOTGR(N) ;
 W "<tr class=""tdth"">",!
 ;
 W " <td class=""hdgrit"" "
   W "colspan="""_$S($$CODE^W3PRM=2&$$SHOWPIC:3,$$CODE^W3PRM=2!$$SHOWPIC:"2",1:"1")
 W " "">"
 ;
 I $$^W3HZMH(JB) D
 .W "<span style=""color:red;width=12%;font-size:"_$$^W3FSZ(14)_";"
 .   W $$FONTFM^W3CSS_""" >"_$$^%W1DICT("PRICEOFFER")
 .W "</span>&nbsp;&nbsp;&nbsp;&nbsp;"
 ;
 W $$H2U^%L1FRM($$SUGN^W3SIDKVZ(N))
 W " </td>",!
 ;
 I $$SHOWPICGR D  ; -- SHOW PIC FOR GROUP
 .W "<td align=""center"" ><img src="""_$$PICTURE(N,"gr")_""" border=""0""></td>"
 ;
 I '$$SHOWPICGR D
 .W "<td dir=""LTR"" align=""left"" >"
 .W " <a href=""https://www.2order.org/mumps-examples/jsp/w3site.jsp?MAIN=1"" target=""_blank"">"
 .W "  <span style=""color:"_$$FGLEV^W3CSS($$COLOR^W3CSS)_""">"
 .       W "Lev Online</span>"
 .W " </a>"
 .W "</td>"
 W "</tr>",!
 Q
 ;
 ;
SEDERGR ; --> ^TMPTF
 N NP,NM,MH,IHTML,I
 S I=0
 S TF=2
 ;
 S SRCH=$$SPA^%L1FRM($G(SRCH))
 I $L($G(SRCH)),SRCH'=0 D  S TF=2,SRCH="" K N G ESDR ; -- SEARCH
 .I $$ISNUM^%L1FRM(SRCH),$D(@$$^W4GL("PAR")@(SRCH)) D  Q
 ..N I1 S I1=0 S N2=SRCH D CTF2
 .N KV,PAR,I1,N2 S I1=0
 .S KV="" F  S KV=$O(@$$^W4PARCAT@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@$$^W4PARCAT@(KV,PAR)) Q:PAR=""  D
 ...I '$$SRCH(SRCH,$$SHEM^W4P(PAR)) Q
 ...S N2=PAR D CTF2
 ;
 ;
 I $D(@$$^W4GL("P1PARSID"))>9 D  G ESDR ;--- LESADER LEFI P1PARSID
 .N NP,PRT,MMM,I1,N2
 .
 .S NP="",I1=0 F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 .
 .S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  D
 ..I '$D(MMM(N2)) D CTF2
 ;
 ;
 I $G(@$$^W4GL("P1PRM")@("HFNUM"))=2 D  G ESDR ; --- SIDUR NUMERY
 .N N1,N2,I1 S N1="",I1=0 F  S N1=$O(@KVZ@(N,N1)) Q:N1=""  D
 ..S N2=N1 I KVZ["P1TFR" S N2=$P($G(^(N1)),"\")
 ..D CTF2
 ;
 D INV(KVZ,$$^W4GL("PAR"),N) ; ---->  ^TMPTF1($$^%W1JB) ; ----- SIDUR A-B
 N NN,N2,I1 S NN="",I1=0
 F  S NN=$O(^[$$^W3MAIN]TMPTF1($$^%W1JB,NN)) Q:NN=""  S N1=^(NN) D
 .S N2=N1
 .D CTF2
 ;
ESDR K @$$^W4MAIN("TMPTF1")
 Q
 ;
 ;
VIEWGRP(NP) ;---- SHOW ITEM (NP) FROM GROUP
 Q:$G(NP)=""
 N A
 I $G(N),$$SUG^W4P(NP)'=N,'$L($G(SRCH)) Q
 ;
 I $$NOPAR^W4PRTVW(NP) Q
 I $$GET^%W1PRM("TFR"),(","_$G(@$$^W4GL("W3PAR")@(NP,"TFR"))_",")'[(","_$$GET^%W1PRM("TFR")_",") Q
 I $D(@$$^W4GL("W3PAR")@(NP,"SHAA")) Q:$$NOSHAA1^W3HZTFR(^("SHAA"))
 I $G(@$$^W4GL("W3PAR")@(NP,"DAYS")),'$E(^("DAYS"),$$^%L1DC($H,8)) Q
 N STR S STR=$$SPA^%L1FRM($$STREET^W3HZMST(JB))
 N MSDPRT S MSDPRT=$G(@$$^W4GL("W4MSDPRT")@(NP))
 I STR,STR?1N.N,MSDPRT,MSDPRT'=STR Q
 ;
 W "<tr "
 I $$TBWAS[("~"_NP_"~") W " style="""_$$BGCHOOS^W3CSS_""""
 W " id=""tr"_NP_""""
 W " >"
 ;;W " <a name=""MA"_NP_""">"_$$IHTML(NP)_"</a>"
 W $$IHTML(NP)
 W "</tr>",!
 ;
 ;----- LINE ---
 W "<tr><td colspan=""3"" height=""3pt"" >"
  W "<hr style=""border-style:dotted;color:"_$$FGLINE^W3CSS_""">"
 W "</td></tr>",!
 Q
 ;
IHTML(NP)
 N B S B=$G(@$$^W4GL("PAR")@(NP)) Q:B="" ""  N NM,MH,IHTML
 S NM=$P(B,"**"),MH=$$MH($G(NMB),NP) ;$P(B,"**",2)
 S MH=$J(MH,2,2)
 ;
 N TOSHOW
 I '$$FAST^W3PRM!$$TSF(NP) D
 .;;S TOSHOW="setCookie('SYIS"_JB_"',GetScrollY(self),1);parent.location.replace('w3mnp.jsp?JB="_JB_"&MSD="_MSD_"&CODE="_$$GET^%W1PRM("CODE")_"&PR800="_$$GET^%W1PRM("PR800")_"&ITEMSHOW="_(NP_"~"_$$CLWEB^%L1FRM(NM)_"~"_MH)_"&CDKV="_$G(N)_"&SH="_I_"')"
 .S TOSHOW="ToItemShow('"_$$GETP^%W1PRM("CODE")_"','"_(NP_"~"_$$CLWEB^%L1FRM(NM)_"~"_MH)_"','"_$G(N)_"','"_I_"')"
 ;
 I $$FAST^W3PRM,'$$TSF(NP) D
 .N TXT1 S TXT1="0~"_NP_"~"_NM_"~"_MH_"~1"
 .S TOSHOW="setCookie('SYIS"_JB_"',GetScrollY(self),1);OrdShow('"_$$CLWEB^%L1FRM(TXT1)_"')"
 ;
 S IHTML=""
 ;
 ; ------ CODE ------
 I $$CODE^W3PRM=2 D
 .S IHTML=IHTML_"<td width=""10%"" onClick="""_TOSHOW_""" style=""cursor:pointer"">"
 .S IHTML=IHTML_" <span style=""color:"_$$FGCD^W3CSS_";font-size:"_$$FONTCD^W3CSS_";"
 .;;I $$FONTCD^W3CSS<14 S IHTML=IHTML_";font-weight:bold"
 .S IHTML=IHTML_""" >"_NP_"</span><br />"
 ;
 N WD S WD=80
 I $$CODE^W3PRM=2 S WD=WD-10
 I $$SHOWPIC S WD=WD-10
 ;
 ; ---- NAME ---
 N NM1 S NM1=NM S NM1=$$RPL^%L1FRM(NM1,"()","") S NM1=$$RPL^%L1FRM(NM1,"[]","")
 S IHTML=IHTML_"<td width="""_WD_"%"" onClick="""_TOSHOW_""" "
 S IHTML=IHTML_" style=""cursor:pointer"">"
 S IHTML=IHTML_"  <span class=""items"""
 S IHTML=IHTML_"  >"_$$H2U^%L1FRM(NM1)_"</span>"
 ;
 ; --------- DESC
 N DESC S DESC=$$DESC1(NP,1)
 ;
 I DESC'="",DESC'="&nbsp;" D
 .S IHTML=IHTML_"<br><span class=""desc"">"
 .S IHTML=IHTML_DESC
 .S IHTML=IHTML_"</span>"
 ;
 S IHTML=IHTML_"</td>"
 ;
 ; ---------- MH
 S IHTML=IHTML_"<td width="""_$S($$SHOWPIC:"6%",1:"20%")_""">"
 S IHTML=IHTML_"<span class=""itemh"" "
 S IHTML=IHTML_" onClick="""_TOSHOW_""" >"
 N MH1 S MH1=MH
 I $$GETP^%W1PRM("LMAM") S MH1=MH*100/(100+$$GETP^%W1PRM("AHMAM"))
 S IHTML=IHTML_$J(MH1,2,2)_"</span></td>"
 ;
 ; --------- PIC
 I $$SHOWPIC D
 .S IHTML=IHTML_"<td width=""20%"">"_$$IMG(NP,TOSHOW)_"</td>"
 ;
 Q IHTML
 ;
 ;
IMG(NP,TOSHOW) ;
 N IMG,PIC
 S PIC=$$PICTURE(NP,"pic")
 I PIC?.P Q "&nbsp;"
 ;
 S IMG=" <img src="""_PIC_""" width=""100"" height=""67"" "
 S IMG=IMG_"  onMouseOver=""openPic1('"_NP_"')"" "
 S IMG=IMG_"  onMouseOut=""closePic1()"" "
 ;
 I $L($G(TOSHOW)) D
 .S IMG=IMG_"onClick="""_TOSHOW_""" "
 .S IMG=IMG_"  style=""cursor:pointer"" "
 ;
 S IMG=IMG_" />"
 Q IMG
 ;
PICTURE(N,PRE)
 Q $P($$GETPIC^W3ENTER(N),"~",2)
 ;
SCRY ;
 I $G(SCRY) D
 .W "<script>",!
 .W " scrollTo(1,"_SCRY_")",!
 .W "</script>",!
 Q
 ;
SRCH(SRCH,NM)
 I $$^%W1DIR="RTL" S NM=$$INV^%L1FRM(NM)
 I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE(NM)
 I $E(NM,1,$L(SRCH))=SRCH Q 1
 I (" "_NM_" ")[(" "_SRCH_" ") Q 1
 N J,OK,MF S OK=1 F J=1:1:$L(SRCH," ") D  Q:'OK
 .N SRCW S SRCW=$P(SRCH," ",J)
 .I SRCW["qpceeiu" S SRCW="qpc"
 .I SRCW["qpceiu" S SRCW="qpc"
 .N FND,FND1 S FND=$F(" "_NM," "_SRCW) I FND<1 S OK=0 Q
 .S FND1=FND-$L(SRCW)
 .I $D(MF(FND1)) S FND=$F(" "_NM," "_SRCW,MF(FND1)) I FND<1 S OK=0 Q
 .S MF(FND1)=FND
 Q OK
 ;
SALEMSG ;
 W "<marquee scrolldelay=""120"" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""background-color:yellow;color:black;font-size:"_$$^W3FSZ(12)_";width:100%;"_$$FONTFM^W3CSS_";font-weight:bold;border:solid 1px brown"" >"
 D SALEMSG1(MSD)
 W "</marquee><br />",!
 Q
SALEMSG1(MSD) ;
 N MSG S MSG="" F  S MSG=$O(^[$$^W3MAIN]W3SALEMSG(MSD,MSG)) Q:MSG=""  D
 .N A S A=$G(^(MSG))
 .N DT S DT=$G(^(MSG,"DT"))
 .I DT?5N,DT<$H Q
 .W $$H2U^%L1FRM(A)_"  ***  "
 Q
 ;
CHKTIME(STAM) ;
 N A
 S A=$$^W3VLDTM($ZD($H,"DDMMYY"),$$T^%L1TIME($P($H,",",2)+1800))
 I A'=1 Q 0
 Q 1
 ;
SHOWPIC(STAM) ;
 I $$^W4DLVCSR=2 Q 0
 I $$PICTURE^W3PRM=1 Q 1
 Q 0
 ;
SHOWPICGR(STAM) ;
 I $$PICTURE^W3PRM=2 Q 1
 Q 0
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZTFR
W3HZTFR ; [ 08.09.26 14:18 ] [ 29.12.25 10:37 ] [ 28.12.25 18:57 ] 
 N (JB,%ARG,MSD,CODE,NMB,PELE,NAME,STREET,CITY,HOME,FLAT,ENTRANCE,FLOOR,COMMENT,DAT,SHAA,TXT)
 I $G(TXT)'="BACK" K TXT
 D KILL^%W3DEB("W3HZTFR")
 S MSD=$$GET^%W1PRM("MSD")
 S:'$D(NMB) NMB=""
 ;
 I $G(CODE) D
 .I $$^W4MSD($G(NMB)) S NMB=$$NMB^W3HZMST(JB)
 .I $$^W4MSD($G(NMB)) S NMB=$$GET^%W1PRM("NMB")
 .I $$^W4MSD($G(NMB)),$G(CODE) S NMB=$TR($P($P(CODE,"!"),"~"),"-","")
 .I $G(NMB),$$^W4MSL(NMB) D PUT^%W1PRM("NMB",NMB)
 ;
 D PUT^%W3DEB("W3HZTFR","JB=JB & MSD=MSD & CODE=CODE & ARG=[%ARG")
 Q:'$G(JB)
 D GLTF
 ;
 S:'$G(DAT) DAT="" S:'$G(SHAA) SHAA=""
 ;
 I $D(@$$^W3TMPORD@(JB,1)),'$$^W6 D
 .W "<script>",!
 .W " var term=parent.parent.bot.document.getElementById(""termid"")",!
 .W " if (term !==null && term !==undefined) {term.style.visibility='visible'}",!
 .W "</script>",!
 ;
 D ^W4IN
 ;
BG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D HEAD
 ;
BGI D CRTMPTF
 I '$$CURGR D PUT^%W1PRM("CDKV",$$FIRSTGR)
 ;
M S SH=1,TF=1,(CWND,CWNDOLD,CWNDOLD(TF))=1,CURTF=TF,FL10=1,(PG,PGOLD(TF))=1
 ;
H D VIEW
 Q
 ;
 ;
VIEW ;
 D LCOD
 ;
 W "<div style=""height:100%"" align=""center"" class=""noselect"" >",!
 ;
 N I F I=1:1 Q:'$D(@GLTF@($$^%W1JB,1,I))
 S COLGR=I-1
 ;
 W "<table border=""0"" dir="""_$$^%W1DIR_""" "
 W " width=""100%"" "
 W " id=""TblTfr"" cellpadding="""_$S(COLGR<15:3,COLGR<20:2,1:1)_""" ",!
 W " cellspacing="""_$$CELLSP(COLGR)_""" ",!
 I $$WW6,$$ENG W " style=""font-size:"_$$^W3FSZ(14)_""" "
 W ">"
 ;
 D TRKOT
 ;
 F I=1:1 Q:'$D(@GLTF@($$^%W1JB,1,I))  D
 .N A,CDKV S A=$G(^(I)) S CDKV=$$CDKV(A)
 .I CDKV,'$$^W4VWGR(CDKV) Q
 .D
 ..I $$ENG S NMKV=$$NBSP^%L1FRM(3)_$$PARSUGL1^W4P(CDKV) Q
 ..S NMKV=$$NMKV(A)
 .N HG S HG=$$HGTRGR^W3CSS
 .I 'HG S HG=$S(COLGR<15:30,COLGR<20:25,1:20)
 .I $G(%ARG("W6")) S HG=50
 .I $$^W6,$$GRPIC S HG=125
 .N BGTR S BGTR=$$BGTRGR^W3CSS
 .
 .W "  <tr id=""trgr"_I_""" style=""height:"_HG_"px"
 .W """"
 .W ">"
 .I $$CDKV^W3PRM W "<td>"_CDKV_"</td>",! ;
 .
 .D
 ..I +$$CURGR=+CDKV,'$$GRPIC D
 ...S BGTR=$$BCURGR^W3CSS
 ..
 ..I '$$PODZAG(NMKV) D TDGRNAME ; -- TD ONLY 
 ..
 ..I $$PODZAG(NMKV) W "<td>"
 ..
 ..I BGTR["url(" W "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
 ..
 ..W "   <span id=""att"_I_""" " ; ----- GROUP NAME
 ..D
 ...I $$PODZAG(NMKV)  W " class=""tfrsubhead""" Q
 ...I '$$PODZAG(NMKV) D  Q
 ....W " style="""
 ....D
 .....I $$GRPIC D
 ......W "background-color:white;font-size:"_$$^W3FSZ(14)_";border:1px grey solid;"
 ......I $$^W6 W $$RAD^W3CSM($$RADGR)
 .....
 .....I $$WW6 W ";font-size:"_$$^W3FSZ($S($$ENG:14,1:12))_$S($$ENG:";font-weight:bold",1:"")
 .....
 .....I +$$CURGR=+CDKV D  Q
 ......D PUT^%W1PRM("CURSH",I)
 ......I $$WW6 D  Q
 .......W ";color:black;font-weight:bold"
 ......W ";color:"_$$FGCURGR^W3CSS_";font-weight:bold"
 .....
 .....W ";color:"_$$FGGROUP^W3CSS($$COLOR^W3CSS)_";font-weight:bold;cursor:pointer"
 ....W """ "
 ..W ">"
 ..  N SP S SP=$$NBSP^%L1FRM(2)
 ..  ;;I $$GRPIC S SP=$$NBSP^%L1FRM(1)
 ..  W SP_$$H2U^%L1FRM(NMKV)_SP
 ..
 ..W "     </span>"
 ..W "  </td>",!
 .
 .W "  </tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
TRKOT ;
 W " <tr class=""tdth"" "
 W " >",!
 I $$CDKV^W3PRM W "   <td></td>"
 S CLR=$$FGMENU^W3CSS
 ;
 W "  <td style=""font-size:"_$$^W3FSZ_";"
  I $$DLVWEB^W4DLVCSR W "backgroubd-color:white;"
  W "color:"_CLR_""">" ;-- SHOW OR PRINT MENU
  W $$^%W1DICT("MENU")_"&nbsp;"
  I '$$WW6 D
  .W "  <span style=""font-size:"_$$^W3FSZ(9)_";color:"_$$FGPRINT^W3CSS
  . W " ;cursor:pointer"" "
  . ; 
  . W " onClick=""ShowPrintMenu()"">"
  .   W $$^%W1DICT("SHOWPRINT")
  .W "  </span>"
 W "  </td>",!
 W " </tr>",!
 Q
 ;
 ;
TDGRNAME ;
 W "  <td id=""tdgr"_I_""""
 N TO S TO="w3hzprtn.jsp?JB="_JB_"&NMB="_NMB_"&CDKV="_CDKV
 I $$^W6 S TO="w5hzprt.jsp?JB="_JB_"&CDKV="_CDKV
 W "   onClick=""TfrClick('"_I_"',this,'"_TO_"')"" "
 ;
 I '$$GRPIC D
 .I $$WW6,+$$CURGR=+CDKV D  Q
 ..N ST5 S ST=$$STLCUR W ST
 .
 .W " style="""_BGTR
 . I BGTR["url(" W ";background-repeat:no-repeat;cursor:pointer"
 . I '$$WW6 W ";border-top:1px dotted black"
 .W """"
 ;
 I $$GRPIC D
 . N GRPIC S GRPIC=$$GETP^%W1PRM("MSD")_"/grp/w4grp"_CDKV_".jpg"
 . W " style=""background-image:url('"_GRPIC_"');background-size:cover;border:ridge 3px grey;cursor:pointer"
 . W ";"_$$RAD^W3CSM($$RADGR)
 . W """ "
 W "  >"
 Q
 ;
 ;
GRNAME ;
 I BGTR["url(" W "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
 ;
 W "   <span id=""att"_I_""" " ; ----- GROUP NAME
 D
 .I $$PODZAG(NMKV)  W " class=""tfrsubhead""" Q
 .I '$$PODZAG(NMKV) D  Q
 ..W " style="""
 ..D
 ...I $$GRPIC D
 ....W "background-color:white;font-size:"_$$^W3FSZ(14)_";border:1px grey solid;"
 ....I $$^W6 W $$RAD^W3CSM($$RADGR)
 ...
 ...I +$$CURGR=+CDKV D  Q
 ....D PUT^%W1PRM("CURSH",I)
 ....I $$WW6 D  Q
 .....W "color:brown;font-weight:bold"
 ....W "color:"_$$FGCURGR^W3CSS_";font-weight:bold"
 ...
 ...W "color:"_$$FGGROUP^W3CSS($$COLOR^W3CSS)_";font-weight:bold;cursor:pointer"
 ..W """ "
 W ">"
   N SP S SP=" "
   I $$GRPIC S SP=$$NBSP^%L1FRM(1)
   W SP_$$H2U^%L1FRM(NMKV)_SP
 W "     </span>"
 W "  </td>",!
 Q
 ;
 ;
CELLSP(COLGR) ;
 I $$WW6 Q 7
 Q $S(COLGR<15:5,COLGR<20:3,1:1)
 ;
PODZAG(NMKV)
 I $E($$SPA^%L1FRM(NMKV),1,2)="--" Q 1
 Q 0
 ;
SIDKVZ ;
 D ^W3SIDKVZ
 Q
 ;
KKVZ(N) K @KVZ@(N)
 Q
 ;
INV(KVZ,GL,KV) ;
 D INV^W3SIDKVZ(KVZ,GL,KV)
 Q
 ;
 ;
INIT ;
 D LCOD
 ;
 S KOT(1)=" zeveaw "
 S KOT(2)=" mihixt "
 S KOT(3)=" mihq "
 S KOT(4)=" dpn hext "
 S KOT(5)=" zetqez "
 ;
 S SH1(1)=1
 S SH1(2)=1
 S SH1(3)=1
 S SH1(4)=1
 ;
 S GL="^[$$^W3MAIN]TMPTF($$^%W1JB,TF)"
 S KVZ=$$^W4PARCAT K MTXT
 I $D(@$$^W4GL("P1TFR"))=11,$G(@$$^W4GL("P1TFR")) S KVZ=$$^W4GL("P1TFR") ;--- TAFRIT JOMI
 Q
 ;
 ;
WW6()
 I $$WW^W6 Q 1
 Q 0
 ;
CRSUG N NCRSUG N N,SUG ;------- ^PAR --> ^PARCAT
 N P1DZ S P1DZ=+$H ;$$^W4DZ
 K @$$^W4PARCAT
 ;
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I $$NOPAR^W4PRTVW(N) Q
 .I $G(W3PRTPC)="DLV",$$NOMSL^W4THUM(N) Q
 .I $G(W3PRTPC)="CSR",$$NOMSD^W4THUM(N) Q
 .I '$$^W6,$G(NMB),$$^W4MSL(NMB),$$NOMSL^W4THUM(N) Q
 .I '$$^W6,$G(NMB),$$^W4MSD(NMB),$$NOMSD^W4THUM(N) Q
 .I $$^W6,$$NOKIOSK^W4THUM(N) Q
 .I $$^W6,$D(@$$^W4GL("W6PAR"))>9,'$D(@$$^W4GL("W6PAR")@(N)) Q
 .D
 ..S SUG=+$$SUG^W4P(N) Q:'SUG
 ..Q:$$NOSUG(SUG,P1DZ)
 ..S @$$^W4PARCAT@(SUG,N)=""
 Q
 ;
 ;
NOSHAA(SUG,DT) ;
 N NOSHAA S NOSHAA=0
 N KV S KV=SUG
 N IDT S IDT=$$^%L1DC(DT,8) I IDT>0,IDT<6 S IDT=12345
 ;
 N SHAA S SHAA=$G(@$$^W4GL("W3SUG")@(KV,IDT,"SHAA"))
 I SHAA'="" S NOSHAA=$$NOSHAA1(SHAA)
 ;
 Q NOSHAA
 ;
 ;
NOSHAA1(A) ;
 N SHAA1,SHAA2
 N NOSHAA S NOSHAA=0
 S SHAA1=$P(A,"-"),SHAA2=$P(A,"-",2)
 ;
 N SEC1,SEC2
 S SEC1=SHAA1*3600+($P(SHAA1,":",2)*60)
 S SEC2=SHAA2*3600+($P(SHAA2,":",2)*60)
 I SEC2<SEC1,SEC2<22000 S SEC2=SEC2+86400
 N NMB,SM S NMB=$$GETP^%W1PRM("NMB")
 S SM=1800
 I $$^W4MSD(NMB) S SM=0
 I $P($H,",",2)+SM<SEC1 S NOSHAA=1
 I $P($H,",",2)+SM>SEC2 S NOSHAA=1
 Q NOSHAA
 ;
 ;
HEAD ;
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:$$^W3MENU
 I '$$DLVWEB^W4DLVCSR Q:$$CLOSEORD(JB)  ;
 I $$GETP^%W1PRM("ELPOS"),$$GETP^%W1PRM("HZM")>0,$$CLOSE^W4HZMST($$GETP^%W1PRM("HZM")) Q
 ; ------------------------ FROM ^W3SETHD
 ;
 N I,T,R,HD,FLD,REG
 S T=$$T^W3HZHD
 S R=$$R^W3HZHD
 S HD=""
 ;
 F I=1:1:80 S $P(HD,"~",I)="#"
 ;
 F I=1:1:$L(T,";") D
 .S FLD=$P(T,";",I) I FLD?.P Q
 .S:FLD[":" FLD=$P(FLD,":")
 .S REG=$$SPA^%L1FRM($P(R,";",I))
 .I $D(@FLD) D
 ..N ZN S ZN=$$FLD(FLD,REG)
 ..N IND S IND=$$IND^W3HZHD(FLD)
 ..S $P(HD,"~",IND)=ZN
 ;
 D PUT^%W3DEB("W3HZTFR-HEAD","CODE=CODE")
 I '$G(CODE) S CODE=$TR($$GET^%W1PRM("NMB"),"!-","")
 S CODE=$P(CODE,"~")
 S $P(HD,"~",27)=$S($G(CODE):CODE,1:$TR($G(NMB),"!-",""))
 ;
 S $P(HD,"~",30)=JB
 ;
 I $L($G(PELE)),$G(PELE)'="-",$G(PELE)'="#" S $P(HD,"~",32)=$G(PELE)
 ;
 I $P(HD,"~",6)'?2N1":"2N D
 .S $P(HD,"~",6)=$P(HD,"~",42)_":"_$P(HD,"~",43)
 ;
 ;;S ^AA("W3HZTFR","HD")=HD
 F I=1:1:$L(HD,"~") D
 .I $P(HD,"~",I)="#" Q
 .;;I $P(HD,"~",I)?1P,$P(HD,"~",I)'="`" Q  ; ---  LEV 22/01/17 -> COMMENT
 .I $P(HD,"~",I)["0-." Q
 .I $P(HD,"~",I)["0-:" Q
 .I I=9,$P($G(@$$^W3TMPORD@(JB)),"~",I)["!" Q  ; -- DMSH VVEDEN RANEE VRUCHNUYU
 .S $P(@$$^W3TMPORD@(JB),"~",I)=$P(HD,"~",I)
 ;
 N CITY,STREET,HOME,DMSH
 S CITY=$P(HD,"~",31)
 S STREET=$P(HD,"~",3)
 S HOME=$P(HD,"~",15)
 ;
 N TOT S TOT=$$TOTORD^W3HZMST(JB)
 S DMSH=$P(HD,"~",9)
 ;;S ^AA("W3HZTFR-HEAD","DMSH")=DMSH
 ;
 I $$ONLINE^W4DLVCSR,CITY'="",$TR(CITY," ","")'="TAKEAWAY" D
 .S CITY=$$INVH^%L1FRM(CITY)_":"_$$INVH^%L1FRM(STREET)_":"_HOME
 .I $$DLVWEB^W4DLVCSR!($$DMSHMSD^W3HZMST(JB)="") D
 ..S DMSH=$$DMSH(CITY)
 ..S $P(@$$^W3TMPORD@(JB),"~",9)=DMSH
 .S $P(@$$^W3TMPORD@(JB),"~",33)=$$MHMIN(CITY)
 .S $P(@$$^W3TMPORD@(JB),"~",37)=$$MHCNC(CITY)
 ;
 N HNH S HNH=$$HNH^W3HZMST(JB)
 D
 .D PUT^%W3DEB("W3HZTFR-HEAD","NOCHNDLV=NOCHNDLV")
 .I $G(NOCHNDLV) Q
 .N HNHAH S HNHAH=$$AHUZ^W3HZMST(JB)
 .;
 .I 'HNH!($J(TOT*HNHAH*.01,1,1)=$J(HNH,1,1)) D
 ..S AH=$S($D(@$$^W4TMPORD)=11:HNHAH,1:$$AHUZ)
 ..D PUT^W3HZMST(JB,"AHUZ",AH)
 ..D PUT^W3HZMST(JB,"HNH",$J(TOT*AH*.01,2,2))
 ;
 D PUT^W3HZMST(JB,"TSHL",$J(TOT-HNH+DMSH,2,2))
 N DMSHMSD S DMSHMSD=$$DMSHMSD^W3HZMST(JB) ;;'["!"
 ;;S ^AA("W3HZTFR-HEAD","DMSHMSD")=DMSHMSD
 I DMSHMSD'["!" D
 .D PUT^W3HZMST(JB,"DMSH",DMSH)
 ;
MKR ;
 ;;I $$GET^%W1PRM("MSL") S $P(@$$^W3TMPORD@(JB),"~",51)=2 ; -- MAKOR - MISHLOHIM
 ;;I $$GET^%W1PRM("REST") S $P(@$$^W3TMPORD@(JB),"~",51)=3 ; -- MAKOR - REST
 ;;S ^AA("HD2")=HD
 ;
 N TMPORD S TMPORD=$G(@$$^W3TMPORD@(JB))
 ;;S ^AA("W3HZTFR-HEAD","TMPORD")=TMPORD
 ;
 I $$GETP^%W1PRM("HZM")>0 D
 .N HZM S HZM=$$GETP^%W1PRM("HZM")
 .N ST S ST=$G(@$$^W4ORD@(HZM))
 .S $P(ST,"\",28)=$$IR^W4HZMST(HZM)
 .D PUT^%W1PRM("ORDHDOLD",ST)
 ;
 D PUT^%W1PRM("ORDHD",TMPORD)
 D PUT^%W3DEB("W3HZTFR-HEAD","HD=HD & TMPORD=TMPORD")
 Q
 ;
 ;
FLD(F,RG) ;
 N ST,ST1,IND S ST=$TR($G(@F),$C(160),"")
 I $E(ST)="?" S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 ;
 I RG="H",$$^%W1LNG="H" D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND="" Q
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .S ST1=$$INVH^%L1FRM(ST1)
 ;
 I ST1="0-.0-.0-" S ST1="-"
 I ST1="0-:0-" S ST1="-"
 I RG="T" S ST1=$$TS^%L1TIME(ST)
 Q ST1
 ;
 ;
DMSH(IR,SUM) ;
 I '$G(JB) Q ""
 D PUT^%W3DEB("W3HZTFR-DMSH","IR=IR & SUM=SUM")
 ;
 N GL S GL=""
 I $$ONLINE^W4DLVCSR S GL=$$^W3ORD
 ;
 N DMSHMSD S DMSHMSD=$$DMSHMSD^W3HZMST(JB,GL)
 I $$CLOSEORD(JB) Q DMSHMSD
 I $$HZMLAK^W3HZMST(JB,GL)?1"W"1N.N Q DMSHMSD
 ;
 N TSH S TSH=$$TSH^W3HZMST(JB,GL)
 N TOT S TOT=$$TOTORD^W3HZMST(JB,"",GL)
 ;
 I $$GET^%W1PRM("TAW")!($G(IR)="")!($G(IR)="TAKEAWAY") D:DMSHMSD  Q 0
 .D PUT^W3HZMST(JB,"DMSH",0)
 .D PUT^W3HZMST(JB,"TSHL",TSH-DMSHMSD)
 ;
 N DMS S DMS=DMSHMSD
 ;
 N MHCNC S MHCNC=$$MHCNC^W3SP(IR)
 I MHCNC>0,TOT'<MHCNC,DMSHMSD D  Q 0
 .D PUT^W3HZMST(JB,"DMSH","0^"_DMSHMSD)
 .D PUT^W3HZMST(JB,"TSHL",TSH-DMSHMSD)
 ;
 I 'DMS,DMS'["!",$$GETP^%W1PRM("AZRPLGN") D  I DMS'="" Q DMS
 .N PRM S PRM=$$GETP^%W1PRM("AZRPLGN")
 .N MAP,AZ S MAP=$P(PRM,";"),AZ=$P(PRM,";",2)
 .I MAP=""!(AZ="") Q
 .S DMS=$$DLVDMS^W3AZRIDK(MAP,AZ)
 .I DMS'="" D PUT^W3HZMST(JB,"DMSH",DMS_"!")
 ;
 I '$D(@$$^W3TMPORD@(JB))!(DMSHMSD="") Q $$DMS^W3SP(IR)
 ;
 Q DMSHMSD
 ;
 ;
DMS1 ;
 I '$D(SUM) S DMS=$$DMSH^W3HZMST(JB_"!") Q
 S DMS=$$DMSH^W3HZMST(JB_"!","^[$$^W3MAIN]TMPORD",SUM) Q
 Q
 ;
DMSH1(PRM) ;
 D PUT^%W3DEB("W3HZTFR-DMSH1","PRM=PRM")
 N SUM,CITY
 S SUM=$P(PRM,"~")
 S CITY=$$CLEAR^%L1FRM($$CNWEB^%L1FRM($P(PRM,"~",2)))
 I $D(@$$^W4GL("P1IR"))<10 D
 .S CITY=$$INVH^%L1FRM($P(CITY,":"))
 Q $$DMSH(CITY,SUM)
 ;
MHCNC(IR) ;
 Q $$MHCNC^W3SP($G(IR))
 ;
MHMIN(IR) ;
 Q $$MHMIN^W3SP($G(IR))
 ;
GETMH(IR) ;
 I $G(IR)="" Q " "
 D PUT^%W3DEB("W3HZTFR-GETMH","IR0=IR")
 S IR=$$CLEAR^%L1FRM($$CNWEB^%L1FRM(IR))
 D PUT^%W3DEB("W3HZTFR-GETMH","IR=IR")
 N TXT S TXT=" "
 I $$MHMIN(IR) S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("PRICEMIN",$$MHMIN(IR)_"<>"_$$MTB^W3MENUBT)_"&nbsp;&nbsp;"
 ;
 I $$MHCNC(IR) D
 .N MHCNC S MHCNC=$$MHCNC(IR)_" "_$$MTB^W3MENUBT
 .S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("PRICECNC",MHCNC)_"&nbsp;&nbsp;"
 ;
 I +$$^%L1DC($$DAT^W3HZMST(JB),3)=+$H!'$$DAT^W3HZMST(JB) D
 .N TM S TM=$$TMARV^W3SP(IR)
 .Q:'TM
 .S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("ARRIVETIME",TM)_"&nbsp;&nbsp;"
 ;
 Q TXT
 ;
 ;
GETMHAZ(IR) ;
 N MHCHC,MHNIN,TM
 I $G(IR)="" Q " "
 D PUT^%W3DEB("W3HZTFR-GETMHAZ","IR0=IR")
 S IR=$$CLEAR^%L1FRM($$CNWEB^%L1FRM(IR))
 D PUT^%W3DEB("W3HZTFR-GETMHAZ","IR=IR")
 N TXT S TXT=" "
 N AZRPLGN S AZRPLGN=$$GETP^%W1PRM("AZRPLGN")
 I 'AZRPLGN Q $$GETMH(IR)
 ;
 N MAP,AZ S MAP=$P(AZRPLGN,";"),AZ=$P(AZRPLGN,";",2)
 ;
 N MTB S MTB=$$MTB^W3MENUBT
 S MHMIN=$$MHMIN^W3SP(IR)
 I MHMIN S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("PRICEMIN",MHMIN_"<>"_MTB)_"&nbsp;&nbsp;"
 ;
 I MHCNC D
 .S MHCNC=MHCNC_" "_MTB
 .S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("PRICECNC",MHCNC)_"&nbsp;&nbsp;"
 ;
 I TM D
 .S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("ARRIVETIME",TM)_"&nbsp;&nbsp;"
 Q TXT
 ;
 ;
AHUZ(STAM) ;
 N AH,AH1,CODL
 I $$CLOSEORD(JB) Q +$$AHUZ^W3HZMST(JB,$$^W3ORD)
 S AH1=0 I $$ONLINE^W4DLVCSR S AH1=$$AHUZ^W3PRM ; --- DOP HNH
 ;
 I $$MKR^W3HZMST(JB)=10 S AH1=0 ; -- TENBIS
 I $$MKR^W3HZMST(JB)=55 S AH1=0 ; -- C/PH
 I $$MKR^W3HZMST(JB)=4 S AH1=0 ; -- S/O
 ;
 D  ; --------- COUPONS
 .N OK,MVC S OK=0,MVC=""
 .N I F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D  Q:OK
 ..S MVC=$$MVC^W3HZMST(JB,I)
 ..I MVC["COUP:" S OK=1
 .I OK S AH1=0
 ;
 I $$^W3PRCOFR(JB) S AH1=0 ; -- HAZAAT MAHIR NURIT
 I $$DLVWEB^W4DLVCSR S AH1=0 ; -- CALL CENTER ???
 ;
 I $G(CODE) S CODL=CODE
 I '$G(CODE),'$D(@$$^W3TMPORD@(JB)) S CODL=$$GET^%W1PRM("CODE")
 I '$G(CODE),$D(@$$^W3TMPORD@(JB)) S CODL=$$CODE^W3HZMST(JB)
 I '$G(CODL) S CODL=$$GET^%W1PRM("CODE")
 I CODL["~" S CODL=$P(CODL,"~")
 ;
 I CODL["!" S CODL=$P(CODL,"!")
 ;
AHTV Q:'$G(CODL) +$G(AH1)
 S AH=$$AH^W3L(CODL)
 I AH="",$D(@$$GLA^W3L@(CODL)) D
 .S AH=$$AH^W3L(CODL,$$GLA^W3L)
 N CODLR S CODLR=$G(@$$^W4GL("P1EZL")@(CODL))
 I 'AH,CODLR S AH=$$AH^W3L(CODLR,$$GLA^W3L)
 ;
 I $$COMP^W3L(CODL)'="",$G(@$$^W4GL("AHCOMP")@($$COMP^W3L(CODL))) S AH=@$$^W4GL("AHCOMP")@($$COMP^W3L(CODL))
 ;
 I $$TAKEAWAY^W3HZMST(JB),$$DLV^W4DLVCSR D
 .S AHTAW=$$TAWMSLH^W4PRM
 .I AHTAW>AH S AH=AHTAW
 ;
 I 'AH,$G(@$$^W4PRM@("HNHAU")) S AH=^("HNHAU")
 ;
 Q ($G(AH1)+AH)
 ;
 ;
CLOSEORD(JB) Q $$CLOSE^W3HZMST(JB)
 ;
BDKDTTM(JB,DAT,SHAA) ;
 Q:'$$CLOSEORD(JB)  Q:$$^W3MENU
 Q:$D(@$$^W4TMPORD)=11
 ;
 S OK=1 D
 .N VD S VD=$$^W3VLDDT(DAT)
 .I VD<1 D  S OK=0 Q
 .. W "<script>",!
 .. N CMSG S CMSG=$S((VD=-6!(VD=-7))&($$^%W1LNG="H"):"SHABAT",VD<-1:"DAYOUT",1:"INVALIDDATE")
 .. W " MsgA("""_CMSG_""","""")",!
 .. W " parent.parent.hd.ddfocus()",!
 .. W "</script>",!
 .
 .N VT S VT=$$^W3VLDTM(DAT,SHAA)
 .I VT<1 D  S OK=0 Q
 .. W "<script>",!
 .. N CMSG S CMSG=$S(VT=0:"TIMEOUT",1:"INVALIDTIME")
 .. W " MsgA("""_CMSG_""","""")",!
 .. W " parent.parent.hd.hrfocus()",!
 .. W "</script>",!
 Q OK
 ;
CRTMPTF ;
 N (JB,%ARG,%REM,TF)
 D INIT
 ;
 I KVZ[$$^W4PARCAT D
 .N P1HZTF S P1HZTF=""
 .D CRSUG
 ;
 I $D(@$$^W4GL("W3TFRM")@(JB))=11,@$$^W4GL("W3TFRM")@(JB) D
 .S KVZ=$$^W4GL("W3TFRM")_"(JB)" ;-- MISSADOT
 ;
 N N S N="" F  S N=$O(@KVZ@(N)) Q:N=""  I $D(@KVZ@(N))<10 D KKVZ(N)
 ;
 ;--------------- SIDUR KVUZOT
 D SIDKVZ K SH0L
 Q
 ;
 ;
CURGR(STAM) ;
 N KV
 S KV=$$GET^%W1PRM("CDKV")
 I $$^W6ARG,KV<1 Q ""
 Q KV
 ;
FIRSTGR(STAM) D GLTF I '$D(@GLTF@($$^%W1JB,1,1)) Q " "
 D LCOD
 N N,OK S N="",OK=0,CDKV=" "
 F  S N=$O(@GLTF@($$^%W1JB,1,N)) Q:N=""  D  Q:OK
 .N A S A=$G(^(N))
 .S CDKV=$$CDKV(A)
 .S NMKV=$$SPA^%L1FRM($E(A,1,$L(A)-LCOD+1))
 .Q:$$PODZAG(NMKV)
 .I $$^W6ARG,CDKV<1 Q
 .S OK=1
 Q CDKV
 ;
CDKV(A) ;
 N CDKV,LCOD D LCOD
 S CDKV=$TR($E(A,$L(A)-LCOD+1,$L(A))," ","")
 Q CDKV
 ;
GLTF ;
 S GLTF="^[$$^W3MAIN]TMPTF"
 Q
 ;
LCOD ;
 S LCOD=5 I $G(@$$^W4PRM@("SCANER")) S LCOD=8
 Q
 ;
NOSUG(KV,DT) ;
 I $G(KV)="" Q 0
 I '$$^W4VWGR(KV) Q 1
 N W3SUG S W3SUG=$G(@$$^W4GL("W3SUG")@(KV))
 I $G(W3PRTPC)="DLV",W3SUG=0!(W3SUG=2) Q 1
 I $G(W3PRTPC)="CSR",W3SUG=0!(W3SUG=3) Q 1
 I $D(W3PRTPC) Q 0
 I $$GETP^%W1PRM("W4BO") Q 0
 ;
 I $G(NMB),$$^W4MSL(NMB),W3SUG=0!(W3SUG=2) Q 1
 I $G(NMB),$$^W4MSD(NMB),W3SUG=0!(W3SUG=3) Q 1
 ;
 I '$D(DT) S DT=+$H
 ;
 I $$GET^%W1PRM("TFR"),(","_$G(@$$^W4GL("W3SUG")@(KV,"TFR"))_",")'[(","_$$GET^%W1PRM("TFR")_",") Q 1
 ;
 I $$NOSHAA(KV,DT) Q 1
 N DAYS S DAYS=$G(@$$^W4GL("W3SUG")@(KV,"DAYS"))
 I DAYS'="",'$E(DAYS),$$^%L1DC(DT,8) Q 1
 N NOPOS S NOPOS=$P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",8) I NOPOS?.P Q 0
 I ("^"_NOPOS_"^")[("^"_$$^W4MYDVN_"^") Q 1
 Q 0
 ;
 ;
DOP(MIN) ;
 Q $TR($J(MIN,2)," ",0)
 ;
BURSA(CODE) ;
 S CODE=$TR(CODE,"-!&,.","")
 I $G(CODE)="" Q 0
 I $D(@$$^W4GL("P1EZLI")@(77000,CODE)) Q 1
 I $D(@$$^W4GL("P1EZLI")@(77000,"03"_CODE)) Q 1
 I $D(@$$^W4GL("P1EZLI")@("030377000",CODE)) Q 1
 I $D(@$$^W4GL("P1EZLI")@("030377000","03"_CODE)) Q 1
 I $$LKH^W3L(CODE)["-dqxea" Q 1
 I $$COMP^W3L(CODE)["dqxea" Q 1
 Q 0
 ;
BUTGR(I,CUR) ;
 N GLTF D GLTF
 N A S A=$G(@GLTF@($$^%W1JB,1,I))
 S CDKV=$$CDKV(A)
 S NMKV=$$NMKV(A)
 I NMKV?.P Q "&nbsp;"
 N WH S WH=$G(@$$GLPRM^W4BGBODY@($$CLRCSR^W4BGBODY,"BTNWH"))
 N DOP S DOP=""
 N COLOR
 S COLOR=$S(CUR:$$FGCURGR^W3CSS,1:$$FGGROUP^W3CSS($$COLOR^W3CSS))
 Q $$ROUNDTB^%W1JS("att"_I,$$H2U^%L1FRM(NMKV),"",$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_";color:"_COLOR_";width:100%",DOP)
 ;
BUT(PRM)
 N I,CUR
 S I=$P(PRM,";")
 S CUR=$P(PRM,";",2)
 Q $$BUTGR(I,CUR)
 ;
NMKV(A) ;
 D LCOD
 Q $$SPA^%L1FRM($E(A,1,$L(A)-LCOD+1))
 ;
 ;
CLEARCOLOR(COLOR) ;
 N PIC
 I COLOR["url(" D  Q PIC
 .S PIC=$P($P(COLOR,"url(",2),")")
 .S PIC=$E(PIC,2,$L(PIC)-1)
 ;
 I COLOR[":" Q $P(COLOR,":",2)
 ;
 Q COLOR
 ;
 ; 
STLCUR(STAM) ;
 Q " style=""background-image:url('w4hez1.png');background-repeat:no-repeat;cursor:pointer;color:brown;font-weight:bold;padding:10px;"" "
 ;
GRPIC(STAM) ; 
 Q $$GRPIC^W3PRM 
 ;
RADGR(STAM) ; 
 Q 7 
 ;
ENG() 
 Q $$^%W1LNG="E" 
 ;
FNTSZ() ;
 ;;I '$$^W6 Q "" 
 I $$ENG Q "font-size:"_$$^W3FSZ(14)
 Q "font-size:"_$$^W3FSZ(12)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZTFR0
W3HZTFR ; [ 21.05.08 12:26 ] [ 20.05.08 21:46 ] [ 19.04.08 19:04 ]
 N (JB,%ARG,MSD,CODE,NMB,PELE,NAME,STREET,CITY,HOME,FLAT,ENTRANCE,FLOOR,COMMENT,DAT,SHAA,TXT)
 I $G(TXT)'="BACK" K TXT
 D KILL^%W3DEB("W3HZTFR")
 S MSD=$$GET^%W1PRM("MSD")
 S:'$D(NMB) NMB=""
 I $G(CODE) D
 .I $L($G(NMB))<4!'NMB S NMB=$$NMB^W3HZMST(JB)
 .I $L($G(NMB))<4!'$G(NMB) S NMB=$$GET^%W1PRM("NMB")
 .I $L($G(NMB))<4!'NMB,$G(CODE) S NMB=$TR($P($P(CODE,"!"),"~"),"-","")
 .I $G(NMB),$L(NMB)>3 D PUT^%W1PRM("NMB",NMB)
 ;
 D PUT^%W3DEB("W3HZTFR","JB=JB & MSD=MSD & CODE=CODE & ARG=[%ARG")
 Q:'$G(JB)
 S GLTF="^[$$^W3MAIN]TMPTF"
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 ;
 S:'$G(DAT) DAT="" S:'$G(SHAA) SHAA=""
 ;
 I $D(@$$^W3TMPORD@(JB,1)) D
 .W "<script>",!
 .W " var term=parent.bot.document.getElementById(""termid"")",!
 .W " if (term !==null && term !==undefined) {term.style.visibility='visible'}",!
 .W "</script>",!
 ;
 D ^P1IN
 ;
BG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D HEAD
BGI D CRTMPTF
 ;
M S SH=1,TF=1,(CWND,CWNDOLD,CWNDOLD(TF))=1,CURTF=TF,FL10=1,(PG,PGOLD(TF))=1
 ;
H D VIEW
 Q
 ;
VIEW ;
 ;;
 ;;I $G(NMB),'$L($G(CITY)) Q
 W "<div align=""right"">",!
 W "<table dir="""_$$^%W1DIR_""" id=""TblTfr"" >",!
 W "  <tr>"
 I $$CDKV^W3PRM W "   <th></th>"
 W "<th style=""font-size:"_$$^W3FSZ_";color:brown"">"_$$^%W1DICT("MENU")_"</th></tr>",!
 ;
 N I F I=1:1 Q:'$D(@GLTF@($$^%W1JB,1,I))  D
 .N A,CDKV S A=$G(^(I)),CDKV=$TR($E(A,$L(A)-LCOD+1,$L(A))," ","")
 .S NMKV=$E(A,1,$L(A)-LCOD+1)
 .W "  <tr>"
 .I $$CDKV^W3PRM W "<td>"_CDKV_"</td>",!
 .D
 ..I $$FAST^W3PRM,'$$^W3MENU D  Q
 ...W "    <td><a href='w3hzprt.jsp?JB="_JB_"&NMB="_NMB_"&CDKV="_CDKV_"'"
 ...W " target=""prt"" id=""A"_I_""" onClick=""TfrClick('"_I_"')"""
 ...W " onMouseOver=""TfrOver('"_I_"')"" onMouseOut=""TfrOut('"_I_"')"" >"
 ...W "<span id=""att"_I_""">"_$$H2U^%L1FRM(NMKV)_"</span></a></td>",!
 ..
 ..W "    <td><a href='w3hzprtn.jsp?JB="_JB_"&NMB="_NMB_"&CDKV="_CDKV_"'"
 ..W " target=""prt"" id=""A"_I_""" onClick=""TfrClick('"_I_"')"""
 ..W " onMouseOver=""TfrOver('"_I_"')"" onMouseOut=""TfrOut('"_I_"')"""
 ..W ">"
 ..W " <span id=""att"_I_""""
 ..I +$$CURGR=+CDKV W " style=""background-color:brown;color:white"""
 ..W ">"_$$H2U^%L1FRM(NMKV)_"</span></a></td>",!
 .
 .W "  </tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
SIDKVZ ;
 D ^W3SIDKVZ
 Q
KKVZ K @KVZ Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
INIT ;
 S LCOD=5 I $G(^[$$^%W1UCI(JB)]P1PRM("SCANER")) S LCOD=8
 ;
 S KOT(1)=" zeveaw "
 S KOT(2)=" mihixt "
 S KOT(3)=" mihq "
 S KOT(4)=" dpn hext "
 S KOT(5)=" zetqez "
 ;
 S SH1(1)=1
 S SH1(2)=1
 S SH1(3)=1
 S SH1(4)=1
 ;
 S GL="^[$$^W3MAIN]TMPTF($$^%W1JB,TF)"
 S KVZ="^[$$^%W1UCI(JB)]PARCAT($$^%W1JB,N)" K MTXT
 I $D(^[$$^%W1UCI(JB)]P1TFR)=11,$G(^[$$^%W1UCI(JB)]P1TFR) S KVZ="^[$$^%W1UCI(JB)]P1TFR(N)" ;--- TAFRIT JOMI
 Q
 ;
CRSUG N NCRSUG N N,SUG
 K ^[$$^%W1UCI(JB)]PARCAT($$^%W1JB)
 S N="" F  S N=$O(^[$$^%W1UCI(JB)]PAR(N)) Q:N=""  D
 .W "PAR="_N,!
 .I $G(^[$$^%W1UCI(JB)]W3PAR(N))=0 Q
 .I $$P1HZTF^P1PARUS(N,$G(NMB)) D
 ..W "PAROK",!
 ..S SUG=+$$SUG^W4P(N) Q:SUG=""  W "SUG="_SUG,! Q:'$D(@$$^W4GL("PARSUG")@(SUG))
 ..W " OK ",!
 ..I $G(^[$$^%W1UCI(JB)]W3SUG(SUG))=0,'$D(W3HZTSF) Q
 ..S ^[$$^%W1UCI(JB)]PARCAT($$^%W1JB,SUG,N)=""
 Q
 ;
HEAD ;
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:$$^W3MENU  Q:$$CLOSEORD(JB)
 N I,T,R,HD,FLD,REG
 S T=$$T^W3HZHD
 S R=$$R^W3HZHD
 S HD=""
 ;
 D
 .S $P(@$$^W3TMPORD@(JB),"~",38)=$$AHUZ
 ;
 F I=1:1:50 S $P(HD,"~",I)="#"
 F I=1:1:$L(T,";") D
 .S FLD=$P(T,";",I) I FLD?.P Q
 .S REG=$$SPA^%L1FRM($P(R,";",I))
 .I $D(@FLD) S $P(HD,"~",I)=$$FLD(FLD,REG)
 ;
 I '$G(CODE) S CODE=$TR($$GET^%W1PRM("NMB"),"!-","")
 S CODE=$P(CODE,"~")
 S $P(HD,"~",27)=$S($G(CODE):CODE,1:$TR($G(NMB),"!-",""))
 S $P(HD,"~",30)=JB
 ;;S $P(HD,"~",31)=$$FLD("CITY","H")
 S CITY=$P(HD,"~",31)
 I CITY'="" D
 .S $P(@$$^W3TMPORD@(JB),"~",9)=$$DMSH(CITY)
 .S $P(@$$^W3TMPORD@(JB),"~",33)=$$MHMIN(CITY)
 .S $P(@$$^W3TMPORD@(JB),"~",37)=$$MHCNC(CITY)
 ;
 S $P(HD,"~",32)=$G(PELE)
 ;;I $P(HD,"~",5)'?2N1"."2N1"."2N D
 .S $P(HD,"~",5)=$P(HD,"~",39)_"."_$P(HD,"~",40)_"."_$P(HD,"~",41)
 I $P(HD,"~",6)'?2N1":"2N D
 .S $P(HD,"~",6)=$P(HD,"~",42)_":"_$P(HD,"~",43)
 F I=1:1:$L(HD,"~") D
 .I $P(HD,"~",I)?.P,$P(HD,"~",I)'="`" Q
 .S $P(@$$^W3TMPORD@(JB),"~",I)=$P(HD,"~",I)
 D PUT^%W3DEB("W3HZTFR-HEAD","HD=HD")
 ;
 Q
 ;
FLD(F,RG) ;
 N ST,ST1,IND S ST=$TR($G(@F),$C(160),"")
 I $E(ST)="?" S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 I RG="H",$$^%W1LNG="H" D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND="" Q
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .S ST1=$$INVH^%L1FRM(ST1)
 Q ST1
 ;
DMSH(IR,SUM) ;
 I $G(IR)="" Q 0
 I '$D(JB) Q 0
 N DMS
 D PUT^%W3DEB("W3HZTFR-DMSH","IR=IR & SUM=SUM")
 I $$CLOSEORD(JB) Q $$DMSH^W3HZMST(JB,"^[$$^%W1UCI(JB)]W3ORD")
 ;
 I '$D(@$$^W3TMPORD@(JB)) Q $$DMS^W3SP(IR)
 I $TR(IR,"-"," ")'=$TR($$CITY^W3HZMST(JB),"-"," ") D  Q DMS
 .;;S $P(@$$^W3TMPORD@(JB),"~",31)=IR
 .D DMS1
 I $$DMSH^W3HZMST(JB)'="" D DMS1 Q DMS
 Q $$DMS^W3SP(IR)
 ;
DMS1 ;
 I '$D(SUM) S DMS=$$DMSH^W3HZMST(JB) Q
 S DMS=$$DMSH^W3HZMST(JB,"^[$$^W3MAIN]TMPORD",SUM) Q
 Q
DMSH1(PRM) ;
 N SUM,CITY
 S SUM=$P(PRM,"~")
 S CITY=$P(PRM,"~",2)
 I $D(@$$^W4GL("P1IR"))<10 S CITY=$$INVH^%L1FRM(CITY)
 Q $$DMSH(CITY,SUM)
 ;
MHCNC(IR) ;
 I $G(IR)="" Q 0
 Q $$MHCNC^W3SP(IR)
 ;
MHMIN(IR) ;
 I $G(IR)="" Q 0
 Q $$MHMIN^W3SP(IR)
 ;
GETMH(IR) ;
 I $G(IR)="" Q " "
 S IR=$$CNWEB^%L1FRM(IR)
 N TXT S TXT=" "
 I $$MHMIN(IR) S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("PRICEMIN",$$MHMIN(IR))_"&nbsp;&nbsp;"
 I $$MHCNC(IR) S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("PRICECNC",$$MHCNC(IR))_"&nbsp;&nbsp;"
 I +$$^%L1DC($$DAT^W3HZMST(JB),3)=+$H!'$$DAT^W3HZMST(JB) D
 .N TM S TM=$$THZ^W3TIME(IR)+10,DK=$G(^[$$^W3MAIN]W1DICT("MINUT",$$^%W1LNG))
 .I TM>60 S TM=TM\60_":"_(TM#60),DK=""
 .S TXT=TXT_"&nbsp;&nbsp;"_$$^%W1DICT("ARRIVETIME",TM_";"_DK)_"&nbsp;&nbsp;"
 Q TXT
 ;
AHUZ(STAM) ;
 N AH,AH1,CODL
 I $$CLOSEORD(JB) Q +$$AHUZ^W3HZMST(JB,"^[$$^%W1UCI(JB)]W3ORD")
 ;
 S AH1=$$AHUZ^W3PRM
 I $G(CODE) S CODL=CODE
 I '$G(CODE),'$D(@$$^W3TMPORD@(JB)) S CODL=$$GET^%W1PRM("CODE")
 I '$G(CODE),$D(@$$^W3TMPORD@(JB)) S CODL=$$CODE^W3HZMST(JB)
 I '$G(CODL) S CODL=$$GET^%W1PRM("CODE")
 I CODL["~" S CODL=$P(CODL,"~")
 ;
 I CODL["!" S CODL=$P(CODL,"!")
AHTV Q:'$G(CODL) +$G(AH1)
 S AH=$$AH^W3L(CODL)
 I AH="",$D(@$$^W4GL("LKHA")@(CODL)) D
 .S AH=$$AH^W3L(CODL,$$^W4GL("LKHA"))
 N CODLR S CODLR=$G(@$$^W4GL("^P1EZL")@(CODL))
 I 'AH,CODLR S AH=$$AH^W3L(CODLR,$$^W4GL("LKHA"))
 Q ($G(AH1)+AH)
 ;
CLOSEORD(JB) Q $$CLOSE^W3HZMST(JB)
 ;
BDKDTTM(JB,DAT,SHAA) ;
 Q:'$$CLOSEORD(JB)  Q:$$^W3MENU
 S OK=1 D
 .N VD S VD=$$^W3VLDDT(DAT)
 .I VD<1 D  S OK=0 Q
 .. W "<script>",!
 .. N CMSG S CMSG=$S((VD=-6!(VD=-7))&($$^%W1LNG="H"):"SHABAT",VD<-1:"DAYOUT",1:"INVALIDDATE")
 .. W " MsgA("""_CMSG_""","""")",!
 .. W " parent.hd.ddfocus()",!
 .. W "</script>",!
 .
 .N VT S VT=$$^W3VLDTM(DAT,SHAA)
 .I VT<1 D  S OK=0 Q
 .. W "<script>",!
 .. N CMSG S CMSG=$S(VT=0:"TIMEOUT",1:"INVALIDTIME")
 .. W " MsgA("""_CMSG_""","""")",!
 .. W " parent.hd.hrfocus()",!
 .. W "</script>",!
 Q OK
 ;
CURGR(STAM) ;
 S KV=$$GET^%W1PRM("CDKV")
 Q KV
 ;
 N TX,CD,KV S TX=$$LAST0^W3HZORD
 S CD=$P(TX,"~",2) I CD="" Q ""
 S KV=$$SUG^W4P(CD)
 Q KV
 ;
CRTMPTF ;
 D INIT
 W "KVZ="_KVZ,!
 I KVZ["^[$$^%W1UCI(JB)]PARCAT" D
 .N P1HZTF S P1HZTF=""
 .D CRSUG
 ;
 N N S N="" F  S N=$O(@KVZ) Q:N=""  I $D(@KVZ)<10 D KKVZ
 ;
 ;--------------- SIDUR KVUZOT
 D SIDKVZ K SH0L
 Q

W3HZTSF
W3HZTSF(STPAR) ; [ 08.09.26 16:46 ] [ 07.09.26 14:34 ] [ 17.06.26 11:04 ] 
 N (JB,NMB,STPAR,FOCUS,%ARG)
 Q:'$G(JB)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$^W6 D NOSELECT^%W1JS
 S SHEDIT=0
 S SHID=$G(%ARG("SHID"))
 I $L(SHID) D PUT^%W1PRM("SHID",SHID)
 ;
 D UR
 ;
 I SHID'="" S SHEDIT=$$FINDSH^W3HZORD(SHID)
 ;
 N PRA,EQA,CDA S PRA=0,EQA=0,BOX=0,CDA="",PIZZA=0
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;
 I $$^W4MSD($G(NMB)),'$$^W3MENU S NMB=$$NMB^W3HZMST(JB)
 S NMB=$G(NMB)
 S PRMHNMB=NMB
 D KILL^%W3DEB("W3HZTSF")
 D PUT^%W3DEB("W3HZTSF","JB=JB & STPAR=STPAR & MSD=MSD &NMB=NMB & SHEDIT=SHEDIT")
 ;
 Q:$G(STPAR)=""
 ;
 N I,N2,MH
 N W3HZTSF S W3HZTSF="" D INIT^W3HZTFR
 ;
 S PRT=$P(STPAR,"~",2)
 ;
 ;;S ^AA("W3HZTSF","PRT")=PRT
 Q:PRT=""
 ;
 I $$ISNUM^%L1FRM(PRT) D
 .S PRT=$$SPA^%L1FRM(PRT)
 .I $P(STPAR,"~",3)="" S $P(STPAR,"~",3)=$$SHEM^W3P(PRT)
 .I $P(STPAR,"~",4)="" S $P(STPAR,"~",4)=$$MH^W3P(PRT)
 .D PUT^%W1PRM("STPAR",STPAR)
 ;
 S KOT(3)=$$SHEM^W4P(PRT)_"~"_PRT
CR ;
 I $G(%ARG("FIRST")) D CRTMP(PRT,$$^W3TMPTF)
 ;
 I $G(SHEDIT)!($$LVTXT=1),$G(%ARG("FIRST")) D
 .D SETQN(SHEDIT)
 ;
 I '$G(SHEDIT) D SETFIRST(PRT)
 ;
 K RPL,%ARG("RPL")
 ;
 D VIEW
 W "</div>",!
 Q
 ;
 ;
LVTXT()
 Q $P($G(%ARG("TXT")),"~")
 ;
CDTXT()
 Q $P($G(%ARG("TXT")),"~",2)
 ;
 ;
CRTMP(PRT,GL) ;
 N I,MH,N2,KOT S I=0
 I $G(PRT)="" Q
 D UR
 ;
 K @GL@($$^%W1JB,UR)
 S @GL@($$^%W1JB,UR)=PRT
 ;
 I '$$CSR,$$ISSETPIZZA(PRT) D SET(PRT,1,GL),SBORKA Q  ; -- PIZZA FROM AI
 ;
 I $D(@$$^W4GL("P1EZH")@(PRT)),'$$LVTXT D
 .S @GL@($$^%W1JB,UR,.5)="A~"_$$TV^%W1DICT($$^%W1LNG,"COMMENTS")_"~~1"
 .N IH S N2="" F IH=1:1 S N2=$O(@$$^W4GL("P1EZH")@(PRT,N2)) Q:N2=""  D
 ..S @GL@($$^%W1JB,UR,.5,IH)="H"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 ;
 ;
 I $D(@$$^W4GL("P1EZT")@(PRT))>9 D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZT")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..S I=+$G(@$$^W4GL("P1EZT")@(PRT,N2))
 ..N NMSET S NMSET=$$NMSET(N2)
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_NMSET_"~"_$$MHT(PRT,N2)_"~"_$$QN^W3SETA(N2)
 ..D SET(N2,I,GL)
 .D SBORKA
 ;
 I $D(@$$^W4GL("P1EZA")@(PRT))>9 D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZA")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..S I=+$G(@$$^W4GL("P1EZA")@(PRT,N2))
 ..N NMSET S NMSET=$$NMSET(N2)
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_NMSET_"~"_$$MHT(PRT,N2)_"~"_$$QN^W3SETA(N2)
 ..D SET(N2,I,GL)
 .D SBORKA
 ;
 ;;S ^AA("W3HZTSF-CRTMP","PRT")=PRT
 ;;S ^AA("W3HZTSF-CRTMP","UR")=UR
 ;;S ^AA("W3HZTSF-CRTMP","GL")=GL
 ;
 I $D(@$$^W4GL("P1EZI")@(PRT))>9 D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S $P(@GL@($$^%W1JB,UR,I),"~",4)=$P($G(@$$^W4GL("P1EZI")@(PRT)),"\") ;; -- WAS =+ 29/03/22
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZI")@(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S MH=+$$MH($G(NMB),N2,PRT)
 ..;
 ..S I=$G(@$$^W4GL("P1EZI")@(PRT,N2)) I I S I=I+1
 ..I 'I S I=$O(@GL@($$^%W1JB,UR,9999),-1)+1
 ..I $D(@GL@($$^%W1JB,UR,I)) S I=$O(@GL@($$^%W1JB,UR,9999),-1)+1
 ..
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$NAMEIT(N2)_"~"_$J(MH,2,2)_"~"_$G(@$$^W4GL("QNDEF")@(PRT,N2))
 ..D HR21(N2)
 ;
 I $$P1EZKI(PRT) D  Q
 .S I=I+1
 .N SUG S SUG=+$$SUG^W4P(PRT)
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZKI")@(SUG,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S I=$G(@$$^W4GL("P1EZKI")@(SUG,N2)) I I S I=I+1
 ..I 'I!$D(@GL@($$^%W1JB,UR,I)) S I=$O(@GL@($$^%W1JB,UR,9999),-1)+1
 ..S MH=+$$MH(+$G(NMB),N2,"G"_SUG)
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$NAMEIT(N2)_"~"_$J(MH,2,2)
 ..D HR21(N2)
 ;
 Q
 ;
 ;
RZD(DIV) ;
 I $G(DIV)=4 Q ":"
 Q "|"
 ;
NMSET(NS)
 I $$ENG Q $P($G(@$$^W4GL("P1SETA")@(NS)),"\",4)
 Q $$HBR^%L1FRM($$NM^W3SETA(NS),20)
 ;
NAMEIT(PRT)
 I $$ENG Q $$NAMENG^W3PRTPC(PRT)
 ;;Q $$HBR^%L1FRM($$SHEM^W4P(PRT),20)
 Q $$SHEM^W4P(PRT)
 ;
 ;
SET(N2,I,GL) ;
 N SET S SET=$E(N2,2,6)
 ;
 N N3,I1 S N3="",I1=0 F  S N3=$O(@$$^W4GL("P1SETA")@(SET,N3)) Q:N3=""  D
 .Q:$$NOHZG(N3)
 .N I1 S I1=$G(@$$^W4GL("P1SETA")@(SET,N3))
 .S @GL@($$^%W1JB,UR,I,I1)=N3_"~"_$$NAMEIT(N3)_"~"_$$MHT(PRT,N3)
 .D HR2(N3)
 .I $G(SHEDIT) D ADD(N3)
 Q
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
 ;
SETQN(SHED)
 N GORD,A,CODT,MQN,LV,CD,QN
 D TMPTF3
 D GORD
 ;
 I $$LVTXT=1 D SETQN4(%ARG("TXT")) Q  ; -- !!!
 ;
 N SH,MIN F SH=SHED+1:1 Q:'$D(@GORD@(SH))  S A=$G(^(SH)) Q:$P(A,"~")=0  D
 .S LV=$P(A,"~",1)
 .S CD=$P(A,"~",2)
 .S QN=$P(A,"~",5)
 .
 .I LV=1,CD'["-C" S CODT=CD
 .I LV=2,CD,CD'["-C",$L($G(CODT)) S CD=CODT_"-T"_CD 
 .
 .I QN["*" S QN=$P(QN,"*",2)
 .
 .I CD["-C",'QN S QN=1
 .I CD["-T",'QN S QN=1
 .
 .S QNP=QN ;;N QNP S QNP=$$QNP^W4PIZZA(QN)
 .
 .S MQN(CD)=QN
 ;
 ;;M ^AA("W3HZTSF","MQN")=MQN
 ;
 N I,CDT S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I D
 .S CDT=$$CDI(I)
 .I $D(MQN(CDT)) S @TMPTF3@(I,"QN")=MQN(CDT)
 ;
 K MQN
 Q
 ;
 ;
SETQN4(TXT)
 N A,MQN,LV,CD,QN
 N CDPAR S CDPAR=$P(TXT,"~",2)
 N TF3INF S TF3IND=$G(%ARG("TF3IND"))
 N TMPTF3 S TMPTF3=$$BG^W4MAIN("TMPTF")_"3)"
 N TMPTF4 S TMPTF4=$$BG^W4MAIN("TMPTF")_"4)"
 N CDT
 ;
 ;;S ^AA("W3HZTSF-SETQN4","TXT")=TXT
 ;;S ^AA("W3HZTSF-SETQN4","TMPTF3")=TMPTF3
 ;;S ^AA("W3HZTSF-SETQN4","TMPTF4")=TMPTF4
 ;;S ^AA("W3HZTSF-SETQN4","CDPAR")=CDPAR
 ;;M ^AA("W3HZTSF-SETQN4","TMPTF4")=@TMPTF4
 ;
 N SH,MIN,CDT1 S SH=TF3IND
 F  S SH=$O(@TMPTF3@(SH)) Q:SH=""  S A=$G(^(SH)) S CDT=$P(A,"~") Q:CDT'[(CDPAR_"-")  D
 .I CDT["-C" Q
 .I CDT'["-T" Q
 .S CDT1=$P(CDT,"-T",2) Q:CDT1=""
 .S QN=$G(@TMPTF3@(SH,"QN")) Q:QN=""
 .I QN["*" S QN=$P(QN,"*",2)
 .
 .N QNP S QNP=QN S QNP=$$QNP^W4PIZZA(QN)  ; ***
 .
 .I $L($G(PRT)) D  ; ***
 ..N DIV S DIV=$$^W4PIZZA(PRT) Q:'DIV
 ..N J,QNP1 S QNP1="" F J=1:1:DIV S $E(QNP1,J)=$S($E(QNP,J)="+":"+",1:"-")
 ..S QNP=QNP1
 .
 .S MQN(CDT1)=QNP
 ;
 ;;M ^AA("W3HZTSF","MQN4")=MQN
 ;
 N I,CDT S I="" F  S I=$O(@TMPTF4@(I)) Q:'I  I I D
 .S STT=$G(^(I))
 .S CDT=$P(STT,"~") Q:CDT=""
 .I $D(MQN(CDT)) S @TMPTF4@(I,"QN")=MQN(CDT)
 ;
 K MQN
 Q
 ; 
 ;
SETFIRST(PRT)
 I $G(PRT)="" Q
 N GORD,A,MQN,CD,QN
 D TMPTF3
 N MQN,N
 ;
 N NM S NM=$$SHEM^W4P(PRT)
 N PRPZ S PRPZ=0
 I NM["()" S PRPZ=2
 I NM["[]" S PRPZ=4
 ;
 S N="" F  S N=$O(@$$^W4GL("QNDEF")@(PRT,N)) Q:N=""  D
 .I $G(^(N)) D
 ..S MQN(N)=^(N)
 ..I PRPZ S MQN(N)=$TR($J("",PRPZ)," ","+")
 ;
 N I,CDT S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I D
 .S CDT=$$CDI(I)
 .I $D(MQN(CDT)) S @TMPTF3@(I,"QN")=MQN(CDT)
 ;
 Q
 ;
 ;
SETST(PRM) ;
 ;;S ^AA("W3HZTSF-SETST","PRM")=PRM
 N SHID
 N SHID S SHID=$P(PRM,"^")
 N ST S ST=$$CNWEB^%L1FRM($P(PRM,"^",2))
 N QN S QN=$P(PRM,"^",3)
 D PUT^%W1PRM("STPAR",ST)
 D SETPARST(QN)
 ;;I SHID'[";" S SHID=SHID_";"_$P(PRM,"^",2)
 Q $$SETGR(SHID)
 ;
SETPARST(PRM) ;
 N ST,CMNT,QN
 S ST=$$GETP^%W1PRM("STPAR")
 ;;S ^AA("W3HZTSF-SETPARST","ST")=ST
 I ST=""!(ST["<UNDEF") Q
 S CMNT=$$CLEAR^%L1FRM($$CNWEB^%L1FRM($P(PRM,";",2)))
 I $$^W6 S CMNT=$$GETP^%W1PRM("CMNTW6") D KILL^%W1PRM("CMNTW6")
 I $$^%W1DIR="RTL",$L(CMNT) S CMNT=$$INVH^%L1FRM(CMNT)
 N HRA,CD S CD=$P(ST,"~",2),HRA=""
 I $L(CD) S HRA=$$SPA^%L1FRM($$HRA^W4P(CD))
 I CMNT="",$L(HRA) S CMNT=HRA
 S QN=$P(PRM,";",1) S:'QN QN=1
 S $P(ST,"~",5)=QN
 N HN S HN=$$^W4HNHSHA(CD,$$NMB^W3HZMST(JB))
 I HN S $P(ST,"~",6)=HN
 S CMNT=$TR(CMNT,"~\","-/")
 ;;S CMNT=$TR(CMNT,"_",$C(10))
 S CMNT=$TR(CMNT,"_"," ")
 S $P(ST,"~",7)=$TR(CMNT,"?","")
 D PUT^%W1PRM("STPAR",ST)
 Q
 ;
NOHZG(N2) ;
 I $$NL^W4PRTVW(N2) Q 1
 I '$D(@$$^W4GL("PAR")@(N2)) Q 1
 I $$NOPAR^W4PRTVW(N2) Q 1
 Q 0
 ;
 ;
MHT(PRT,SUB)
 N MHT
 I $$DELIS^W4PRM Q $$MH^W4P(SUB)  ; -- 29/01/25
 S MHT=$G(@$$^W4GL("MHT")@(PRT,SUB))
 I MHT="" D
 .N NMG S NMG=""
 .I $$DD^W4EZA(PRT) S NMG="P1EZA"
 .I $$DD^W4EZT(PRT) S NMG="P1EZT"
 .I NMG'="" D
 ..N SET S SET="" F  S SET=$O(@$$^W4GL(NMG)@(SET)) Q:SET=""  D
 ...N NSET S NSET=$E(SET,2,10) Q:NSET=""
 ...I $D(@$$^W4GL("P1SETA")@(NSET,SUB)) D
 ....S MHT=$G(@$$^W4GL("MHSET")@(NSET,SUB))
 Q MHT
 ;
 ;
HR2(CODT,PRM)
 I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N I2 S I2=0
 .N IH,N2 S N2="" F  S N2=$O(@$$^W4GL("P1EZH")@(CODT,N2)) Q:N2=""  D
 ..S I2=I2+1
 ..S @GL@($$^%W1JB,UR,I,I1,I2)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 ;
 Q
 ;
 ;
HR21(CODT,PRM)
 I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N IH,N2,I1 S N2="",I1=0
 .F  S N2=$O(@$$^W4GL("P1EZH")@(PRT,N2)) Q:N2=""  D
 ..S I1=I1+1
 ..S @GL@($$^%W1JB,UR,I,I1)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 Q
 ;
 ;
ADD(CODT)
 I $D(@$$^W4GL("P1EZI")@(CODT)) D  Q
 .N I2 S I2=$O(@GL@($$^%W1JB,UR,I,I1,999),-1)
 .N IH,N2 S N2="" F  S N2=$O(@$$^W4GL("P1EZI")@(CODT,N2)) Q:N2=""  D
 ..S I2=I2+1
 ..S @GL@($$^%W1JB,UR,I,I1,I2)=CODT_"-T"_N2_"~"_$$HBR^%L1FRM($$NAMEIT(N2),20)_"~~~"
 Q
 ;
 ;
LI(STAM) Q $O(@GL@($$^%W1JB,UR,99999),-1)
 ;
 ;
SBORKA ;
 N I S I=0
 N GL0 S GL0=GL_"0" ; -- GL = ^TMPTF
 ;
 K @GL0@($$^%W1JB)
 M @GL0@($$^%W1JB,UR)=@GL@($$^%W1JB,UR)
 K @GL@($$^%W1JB,UR)
 ;
 N N,N1,N2
 ;
 S N="" F  S N=$O(@GL0@($$^%W1JB,UR,N)) Q:N=""  D
 .S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N))
 .S N1="" F  S N1=$O(@GL0@($$^%W1JB,UR,N,N1)) Q:N1=""  D
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N,N1))
 ..S N2="" F  S N2=$O(@GL0@($$^%W1JB,UR,N,N1,N2)) Q:N2=""  D
 ...S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N,N1,N2))
 ;
 I $D(@GL0@($$^%W1JB,UR))#2 S @GL@($$^%W1JB,UR)=@GL0@($$^%W1JB,UR)
 ;
 K @GL0@($$^%W1JB)
 Q
 ;
 ;
VIEW ;
 D TMPTF3
 ;
 K MTOT,MQ,NEWGR
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""height:98%;width:98%"
 I $$PRM^W3IMG("CLKAVADD")'?.P D
 .N CLRBRD S CLRBRD=$$PRM^W3IMG("CLKAVADD")
 .I CLRBRD?.P S CLRBRD="grey"
 .I $$^%W1DIR="RTL" W ";border-right:1px solid "_CLRBRD Q
 .W ";border-left:1px ridge grey;" Q
 W """"
 W ">",!
 ;
 I $$CSRMOUSE^W4PRM,$$LVTXT D BUT
 ;
 S PIZZA=0 S PIZZA=$$^W4PIZZA(+$G(PRT))
 ;
 I $$^W4SMALL D
 .N W5EDIT
 .S W5EDIT("QN")=$P(STPAR,"~",5)
 .S W5EDIT("CMNT")=$P(STPAR,"~",7)
 .D STR^W5HZPRT(PRT)
 ;
 ;;I PIZZA,'$$^W4DLVNPR(JB) D VWPIZZA(PRT) Q
 I PIZZA D VWPIZZA(PRT) Q; -- 18/03/26
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""99%"" id=""TblAdd"" "
 I $$^W4SMALL W " cellspacing=""20"" "
 D
 .N CLR S CLR=$$FGADD^W3CSS
 .I $$^W4SMALL S CLR="black"
 .W "style=""color:"_CLR
 ;
 W """ border=""0"">",!
 ;
 ;
 D KOT
 ;
 N PRCMT,BGA S BGA=0,PRCMT=0 S SELPAR=0
 ;;S ^AA("W3HZTSF","PRA")=PRA
 ;
 I $$^W4TSF(PRT) S PRA=$$MAX^W4TSF(PRT)
 ;
 N I S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I D
 .N VALUE,TXT,TXT1,HRF S TXT=$G(@TMPTF3@(I)) S HRF=0
 .I $$CMT(TXT) Q
 .I $$TSF(TXT) Q
 .S TXT1=$G(@TMPTF3@(I+1)) S HRF=0
 .S VALUE="&nbsp;"
 .;
 .N CDT S CDT=$P($P(TXT,"~"),"-")
 .
 .I '$$GRA(TXT) D  D:$$W6 TRRZD Q  ;
 ..W "<tr id=""trad"_I_""" style=""font-weight:"_$$ADDWEIGHT^W3CSS
 ..I $$^W4SMALL W ";font-size:"_$$^W3FSZ(14)
 ..W """>",!
 ..
 ..D TDNM(I)
 ..
 ..D TDMH
 ..
 ..D TDQN
 ..W "</tr>",!
 .
 .I $$GRA(TXT) D TRGRHD(I,TXT) ; --- START OF GROUP - HEADER
 ;
 D SUBMGR(1)
 ;
 W "</table>",!
 W "<br><br>",!
 W "</div>",!
 ;
 I $D(SCRY) D  K SCRY
 .W "<script>",!
 .W " self.window.scrollTo(100,"_(SCRY*10)_");",!
 .W "</script>",!
 ;
 I $D(MTOT) D  K MTOT
 .D PUT^%W3DEB("W3HZTSF","MTOT=[MTOT")
 .W "<script>",!
 .N N S N="" F  S N=$O(MTOT(N)) Q:N=""  D
 ..W "  SetTot("_N_");",!
 ..W "  ReadOnly('"_MTOT(N)_"');",!
 .W "</script>",!
 ;
 Q
 ;
 ;
TMPTF3 S TMPTF3="^[$$^W3MAIN]TMPTF($$^%W1JB,UR)"
 Q
 ;
 ;
TDNM(I) ;
 W "<td id='idad"_I_"'" ; ------- TD NAIM-YA --------------------
 W " style=""font-size:"_$$^W3FSZ(14)
 I $$1024^W4WDSCR W ";font-weight:bold"
 W """"
 ;
 I $$^W4SMALL W " width=""40%"" "
 ;
 I $G(CDT),'$$USCHK&'$$^W4PIZZA(PRT) D  ; --------------------- SETS
 .N CLR S CLR=$$GETCOLOR("FGADDNM")
 .W " style=""cursor:pointer;color:"_CLR_""" "
 . W " onClick=""qnClickNm("_+BGA_","_+I_",'"_PRA_"','"_EQA_"')""" ;; -- WAS +PRA 29/03/22
 ;
 W ">" ; ------ TD
 
 I '$$^W4SMALL,$G(CDT),$G(@$$^W4GL("L1TIP")@("MTK",CDT,1))'?.P D
 .W " <img src=""w3inf.png"" alt="""" style=""cursor:pointer"" onMouseOver=""OpenDescr('"_CDT_"')"" onMouseOut=""CloseDescr()"" >"
 ;
 I $G(CDT),$$USCHK,'$$^W4PIZZA(PRT) D
 .W "<label id=""lbnm"_I_""" for=""QNADD"_I_""" "
 .W "style=""cursor:pointer"
 .D
 ..I $$1024^W4WDSCR W ";font-weight:bold"
 ..I $$ORDERED(I) W ";color:"_$$GETCOLOR("FGADDNMCH") Q
 ..W ";color:"_$$GETCOLOR("FGADDNM") Q
 .W """>"
 ;
 D
 .N NMT S NMT=$$NM^W3TMPTF(TXT)
 .I $$ENG S NMT=$$VWENG^%L1FRM(NMT)
 .W $$H2U^%L1FRM(NMT) ; --- NAME
 ; 
 I $G(CDT),$$USCHK,'$$^W4PIZZA(PRT) D
 .W "</label>"
 ;
 I $$CMT(TXT1) D  ; --- HEAROT
 .S PRCMT=1
 .W "<br><select id=""sel"_I_""" onChange=""selChange("_I_")"""
 .;;I 'SELPAR W " disabled=""disabled"""
 .I '$$ORDERED(I) W " disabled=""disabled"""
 .W ">",!
 .N I1,CHC S CHC=0
 .;
 .N TXC S TXC=$$TV^%W1DICT($$^%W1LNG,"WITHOUTCOMMENTS")
 .W "<option id=""opt0"" value=""0"">"_$$H2U^%L1FRM(TXC)_"</option>",!
 .S I1=I F  S I1=$O(@TMPTF3@(I1)) Q:'I1  I I1 S TXC=$G(@TMPTF3@(I1)) Q:'$$CMT(TXC)  D
 ..W "<option id=""opt"_I1_""" value="""_TXC_""""
 ..I $$ORDERED(I1) W " selected=""selected""" S CHC=1
 ..W ">",$$H2U^%L1FRM($$NM^W3TMPTF(TXC)),"</option>",!
 .W "</select>",!
 .
 .W "<div id=""tsf"_I_""">",!
 . S I1=I1-1 F  S I1=$O(@TMPTF3@(I1)) Q:'I1  I I1 S TXTT=$G(@TMPTF3@(I1)) Q:'$$TSF(TXTT)  I $G(@TMPTF3@(I1,"QN"))>0 D TSFVW(TXTT,CDT,I)
 .W "</div>",! 
 ;
 I $$TSF(TXT1) D  ; --- TOSAFOT
 .W "<div id=""tsf"_I_""">",!
 . S I1=I F  S I1=$O(@TMPTF3@(I1)) Q:'I1  I I1 S TXTT=$G(@TMPTF3@(I1)) Q:'$$TSF(TXTT)  I $G(@TMPTF3@(I1,"QN"))>0 D TSFVW(TXTT,CDT,I)
 .W "</div>",!
 ;
 W "</td>",!
 Q
 ;
 ;
TDMH ;
 W "<td style=""color:"_$$FGMHADD^W3CSS_""" "
 I $$^W4SMALL!$$W6 W " width=""12%"" "
 W ">"_$$MHVIEW(TXT)_"</td>",! ; --- MAHIR
 Q
 ;
 ;
TDQN ;
 I $$USCHK D TDQNCHK ; --- QUANTITY RADIO & CHKBOX
 ;
 I '$$USCHK D TDQNINP ; --- QUANTITY INPUT BOX -----
 Q
 ;
 ;
USCHK(STAM) ;
 I $$W6 Q 1
 I $G(I),$$MAXGR(I)["." Q 1
 I +$G(PRA)=1,$G(BOX)'>1 Q 1  ; WAS PRA=1
 Q 0
 ;
 ;
TDQNCHK ;
 W "<td align=""center"" >"
 N CHKBOX,CHECKED S CHKBOX=0
 ;
 I EQA=1 W "<input type=""radio"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 I EQA'=1 W "<input type=""checkbox"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 ;
 S SELPAR=0 
 ;
 I $$ORDERED(I) D
 .W " checked=""checked""" S SELPAR=1 D SIGNFIRST(I)
 ;
 I $$DFLTADD1^W4PRM D
 .I $$NEWGR(BGA),$$NOQNDEF(BGA,PRT),I=(BGA+1),'$G(SHEDIT),EQA=1 D
 ..W " checked=""checked"" " S SELPAR=1 I $$SETTMPTF(I_";"_1)
 .I $$NEWGR(BGA),'$$NOQNDEF(BGA,PRT),$$QNDEF(I,PRT),'$G(SHEDIT) D
 ..W " checked=""checked"" " S SELPAR=1 I $$SETTMPTF(I_";"_1)
 ;
 I EQA=1 W " onClick=""radClick("_BGA_","_I_",'!')"" "
 I EQA'=1 W " onClick=""radClick("_BGA_","_I_",'"_PRA_"','"_EQA_"')"" ";;  -- WAS +PRA 29/03/22
 ;
 I $$^W4SMALL!$$W6 W " style=""display:none"" "
 W " />"
 ;
 I $$^W4SMALL!$$W6 D
 .W "<label for=""QNADD"_I_""" id=""lb"_I_""" "
 .W " style=""cursor:pointer"" "
 .
 .D 
 ..I $$^W4SMALL D  Q
 ...I +EQA'=1 W "class=""bgbtn"" "
 ...I +EQA=1 W "class=""bgradio"" "
 ...W ">"
 ...I SELPAR D
 ....W $$SHOWV^W3CSM(EQA)
 ...I 'SELPAR D
 ....W $$SHOWO^W3CSM
 ..
 ..I $$W6 D  Q
 ...W ">"
 ...N RZ S RZ=30
 ...I 'SELPAR W "<img src=""w4chkboxn.png"" alt="""" height="""_RZ_""" width="""_RZ_""">"
 ...I SELPAR W "<img src=""w4chkboxc.png"" alt="""" height="""_RZ_""" width="""_RZ_""" >"
 .
 .W "</label>",!
 ;
 W "</td>",!
 Q
 ;
 ;
TDQNINP ;
 W "<td align=""center"">"
 N HRFA S HRFA=0
 D  ; +
 .W "<span "
 .W " onClick=""qnClickNm("_+BGA_","_+I_",'"_PRA_"','"_EQA_"')""" ;; -- WAS +PRA
 .N FSZ S FSZ=11 I $$SMALL^W4SMALL S FSZ=16
 .I $$W6 S FSZ=26
 .W " style=""cursor:pointer;font-size:"_$$^W3FSZ(FSZ)
 .W ";color:"_$$FGPLUS^W3CSS_";font-weight:bold"">"
 .W "+"
 .W "&nbsp;"
 .W "</span>"
 
 W "<input type=""text"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
  I '$$^W4SMALL D
 .  W " style=""background-color:"_$$BGQNADD^W3CSS($$COLOR^W4GETCLR)
 .  I '$$W6 W ";width:22px;"
 .  I $$W6 W ";width:30px;font-weight:bold;font-size:"_$$^W3FSZ(16)
 .  W """ onKeyUp=""OnKeyUp("_I_","_BGA_",'"_PRA_"','"_EQA_"')""" ;; -- WAS +PRA
 .  W " onClick=""QntClick(this,"_I_","_BGA_",'"_PRA_"','"_EQA_"')""" ;; -- WAS +PRA
 I $$^W4SMALL D
 . W " readonly=""readonly"" "
 . W " onClick=""qnClickNm("_+BGA_","_+I_",'"_PRA_"','"_EQA_"')""" ;; -- WAS +PRA
 . W " style=""font-size:"_$$^W3FSZ(14)
 . W """ "
 W " size=""2"" maxlength=""2"" "
   D VL(I,PRA,BGA,PRT)
 W " />"
 
 D  ; -
 .W "<span "
 .W " onClick=""qnMin("_+I_","_BGA_",'"_PRA_"','"_EQA_"')""" ;; -- WAS +PRA
 .N FSZ S FSZ=16 I $$SMALL^W4SMALL S FSZ=22
 .I $$W6 S FSZ=40
 .W " style=""cursor:pointer;font-size:"_$$^W3FSZ(FSZ)
 .W ";color:"_$$FGMIN^W3CSS_";font-weight:bold"">"
 .W "&nbsp;-</span>" S HRFA=0
 
 W "</td>",! ; ----------- END QUANTITY INPUT BOX --------------
 Q  ;
 ;
 ;
TRGRHD(I,TXT) ;
 N BGAO
 I $G(BGA) D SUBMGR(0)
 S BGAO=$G(BGA)
 N PRA0 S PRA0=$$PR^W3TMPTF($G(@TMPTF3@(I)))
 S PRA=PRA0 ;;  WAS +PRA0 -- 29/03/22
 ;
 S BGA=I,EQA=$$EQ^W3TMPTF($G(@TMPTF3@(I))),SELPAR=0
 ;
 S BOX=$$BOX^W3TMPTF($G(@TMPTF3@(I))) ; -- QN
 ;
 I '$$CSR D
 .W "<tr><td><a name=""B"_BGA_"""></a></td></tr>",!
 .
 .W "<tr id=""trai"_I_""" name=""trai"" >",!
 .W " <td id='idai"_I_"' abbr='"_PRA0_"' class='hdai' colspan=3>" ;--- GROUP HEADER
 .I BGAO W "<a name=""G"_$G(BGAO)_""" id=""G"_$G(BGAO)_""">"
 .W:I>2 "<br>" W $$H2U^%L1FRM($$NM^W3TMPTF(TXT))_" &nbsp;"
 .
 .N TX S TX=""
 .
 .I $G(PRA),EQA=1 D
 ..I PRA>1 S TX=$$^W3MSG("QNEXACTLY~"_PRA) Q
 ..S TX=""
 .
 .I $G(PRA),EQA=2 D
 ..S TX=$$^W3MSG("QNMIN~"_PRA)
 .
 .I $G(PRA),'EQA D
 ..I PRA S TX=$$^W3MSG("QNMAX~"_PRA) Q
 ..S TX=""
 .
 .W "<span style=""color:"_$$FGMAXADD^W3CSS_";font-size:"_$$^W3FSZ(9)_""">"_TX_"</span>",!
 .I $G(PIZZA) D
 ..W "<br>"
 ..S TX=$S($$^W4PIZZA(PRT)=4:$$^%W1DICT("PIZZAPRICE24"),$$^W4PIZZA(PRT)=2:$$^%W1DICT("PIZZAPRICE22"),1:"")
 ..W "<span style=""color:"_$$FGMAXADD^W3CSS_";font-size:"_$$^W3FSZ(9)_""">"_TX_"</span>",!
 .W "</td>",!
 .W "</tr>",!
 Q
 ;
 ;
SUBMGR(PRZ) ;
 W "<tr id=""trend"_BGA_""">",!
 W "<td>&nbsp;</td></tr>",!
 ;
 ;;S ^AA("W3HZTSF-SUBMGR","PRZ")=PRZ
 ;;S ^AA("W3HZTSF-SUBMGR","LVTXT")=$$LVTXT
 ;
 I $G(PRA)>1,'$G(PIZZA) D
 .W "<tr id=""trtot"_BGA_""">",!
 .W "<td style=""font-size:"_$$^W3FSZ_";color:"_$$FGTOTADD^W3CSS_""" >"
 .W $$^%W1DICT("ITEMSTOT")_"</td><td>&nbsp;</td>"
 .W "<td><input type=""text"" style=""width:"_$$KF^W3CSM(90)_"px;font-size:"_$$^W3FSZ_";color:red"""
 . W " name=""totgr"_BGA_""" id=""totgrid"_BGA_""" />"
 .S MTOT(BGA)="totgrid"_BGA
 .W "</td></tr>",!
 W !
 D
 .I $$CSRMOUSE^W4PRM,$$LVTXT W "<tr>" D TRBUT1 W "</tr>",! Q
 .I $G(PRZ),'$$CSR D TRBUT ; -- LAST BUTTON
 Q
 ;
 ;
TRRZD ;
 W "<tr>"
  W "<td colspan=""4"">"
   W "<hr style=""border:dotted 1px grey"">",!
  W "</td>"
 W "</tr>",!
 Q
 ;
 ;
TRBUT ;
 W "<tr id=""trbut"_BGA_""">"
 ;
 I '$$^W4SMALL,'$$^W6 D TRBUT1
 ;
 I $$^W4SMALL D
 .W "<td>",!
 .W " <input type=""button"" id=""Back"" "
 .W "  class=""btnsmall"" style=""color:red"" "
 .
 .I '$G(SHEDIT) D
 ..W "  onClick=""Back2Menu()"" "
 ..W "  value="""_$$^%W1DICT("BACK2MENU")_""" "
 .
 .I $G(SHEDIT) D
 ..W "  onClick=""ShowSmallOrd()"" "
 ..W "  value="""_$$^%W1DICT("CANCELCHANGES")_""" "
 .W " />",!
 .W "</td>",!
 .W "<td colspan=""2"">",!
 .W " <input type=""button"" id=""Submit"" "
 .W "  class=""btnsmall"" style=""color:green"" "
 .I '$G(SHEDIT) W "  value="""_$$^%W1DICT("ORDERIT")_""" "
 .I $G(SHEDIT) W "  value="""_$$^%W1DICT("SUBMITCHANGES")_""" "
 .W "onClick=""Submit()"" />",!
 .W "</td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
TRBUT1 ;
 W " <td align=""center"">",!
 D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDBACK"),"Submit()","color:green;font-weight:bold",",,,160px")
 W "</td>"
 W " <td align=""center"">",!
 D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red;font-weight:bold",",,,100px")
 W "</td>"
 Q
 ;
 ;
VWPIZZA(PRT) ;
 N BGA,PRA S BGA=1,PRA=$$MAX^W4TSF(PRT)
 N VRM S VRM=$$^W4MAIN("VRMADD") K @VRM
 N RZ S RZ=10
 I $$W6 S RZ=22
 I $$ONECOL S RZ=99
 ;
 I $$IMBLI(PRT) D
 .N NV,TX,A,NM,K
 .S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I D
 ..S A=$G(^(I))
 ..S NM=$P(A,"~",2) 
 ..S NV=$S($$BLI(NM):2,1:1)
 ..I $$ONECOL S NV=1
 ..S @VRM@(NV,I)=$G(@TMPTF3@(I))
 ;
 I '$$IMBLI(PRT) D
 .N NV,TX,A,NM,K
 .S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I D
 ..S NV=$S(I'>RZ:1,1:2)
 ..I $$ONECOL S NV=1
 ..S @VRM@(NV,I)=$G(@TMPTF3@(I))
 ;
 W "<table id=""TblAdd"" width=""99%"" dir="""_$$^%W1DIR_""" >",!
  D KOT
  ;
  N WD S WD=50 I $$ONECOL S WD=100
  W "<tr>"
   W "<td width="""_WD_"%"">"
    D TBLPIZZA(1)
   W "</td>",!
   I '$$ONECOL D
   .W "<td>"
   . D TBLPIZZA(2)
   .W "</td>"
  W "</tr>",!
 ;
 W "</table>",!
 ;
 I $$CSRMOUSE^W4PRM,$$LVTXT D BUT
 Q
 ;
 ;
TSFVW(TXTT,CDT,I) ;
 W "<br><span style=""cursor:pointer;color:green;font-size:"_$$^W3FSZ(11)_""" "
 W $$^W4TOUCH_"=ShowTsf('"_CDT_"','"_I_"')"
 W ">",$$H2U^%L1FRM($$NM^W3TMPTF(TXTT))
 W "</span>",!
 Q
 ;
ONECOL(STAM)
 I $G(%ARG("OPWIN"))="PZ" Q 1
 I $$W6 Q 1
 Q 0
 ;
 ;
TBLPIZZA(IND) ;
 N HG S HG=$$^W4KF(600)
 I $$W6 S HG="98%"
 N WD S WD=45
 ;;S ^AA("TBLPIZZA","IND")=IND
 ;;S ^AA("TBLPIZZA","PRT")=$G(PRT)
 I $$ONECOL S WD=98
 S TOP=50 ;; I $$W6 S TOP=50
 I $$LVTXT=1 S TOP=100
 ;
 I '$$ONECOL W "<div style=""position:absolute;top:"_TOP_";height:"_HG_"px;width:"_WD_"%;overflow:auto"">"
 W "<table id=""TblAdd"_IND_""" width=""99%"" dir="""_$$^%W1DIR_""" >",!
 ;
 F  S I=$O(@VRM@(IND,I)) Q:'I  I I D
 .N TXT S TXT=$G(@VRM@(IND,I))
 .N CDT S CDT=$P($P(TXT,"~"),"-")
 .I $$GRA(TXT)!$$CMT(TXT) Q
 .
 .W "<tr "
 .I $$^W4TABLET=2 W "height="""_$$^W4KF(40)_""" "
 .W " >" D  W "</tr>",!
 ..S COLOR="color:"_$$GETCOLOR("FGADDNM")
 ..I $$QNPZ(I) S COLOR="color:"_$$GETCOLOR("FGADDNMCH")
 ..W " <td id='idad"_I_"' style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;"_COLOR
 .. I $$^W4TABLET=2 W ";width:35%"
 ..W """ " ; ------- TD NAIM-YA --------------------
 ..W ">"
 .. W $$H2U^%L1FRM($$NM^W3TMPTF(TXT)) ; --- NAME
 ..W " </td>" 
 ..
 ..W "<td style=""color:"_$$FGMHADD^W3CSS_""" "
 ..I $$^W4SMALL W " width=""12%"" "
 ..I $$^W4TABLET=2 W " width=""25%"" "
 ..W ">"_$$MHVIEW(TXT)_"</td>",! ; --- MAHIR
 ..
 ..D SHOWPIZZA(I,BGA,PRA,$$^W4PIZZA(PRT))
 ;
 I $$^W4TABLET=1 F JJ=1:1:5 D
 .W "<tr><td>&nbsp;</td></tr>",!
 ;
 W "</table>",! 
 I '$$ONECOL W "</div>",!
 Q
 ;
 ;
IMBLI(PRT)
 Q $$IMBLI^W3PTSIDK(PRT)
 ;
BLI(NM) ;
 I $E(NM,$L(NM)-3,$L(NM))=" ila" Q 1  
 Q 0
 ;
 ;
VL(I,PRA,BGA,PRT)
 D TMPTF3
 I '$D(@TMPTF3@(I)) Q
 N CD S CD=$$CD^W3TMPTF(@TMPTF3@(I))
 ;
 I $$NEWGR(BGA) S NEWGR(BGA)=""
 N QNDEF S QNDEF=$$QNDEF(I,PRT)
 ;
 I $D(PRT),$D(NEWGR(BGA)),CD,QNDEF,$G(PRA)>1 D  Q
 .I $$SETTMPTF(I_";"_QNDEF)
 .W " value="""_QNDEF_""""
 ;
 I $$ORDERED(I) D
 .N VL S VL=$$QN(I)
 .D
 ..W " value="""_VL_""""
 ..S MQ("QNADD"_I)=VL
 ..S MQ("QNADD"_I,"PRA")=PRA ;; -- WAS +PRA
 Q
 ;
QNDEF(I,PRT) ;
 I '$G(PRT) Q ""
 N CD S CD=$$CD^W3TMPTF($G(@TMPTF3@(I))) I 'CD Q ""
 N A S A=$$^W4QNDEF(PRT,CD)
 I A Q +A
 Q ""
 ;
MH(NMB,COD,MAIN) ;
 Q $$MH^W4HZTSF(NMB,COD,$G(MAIN))
 ;
 N PRMHNMB,ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
MHVIEW(TXT) ;
 ;;S ^AA("W3HZTSF",TXT)=""
 N MH S MH=$$MH^W3TMPTF(TXT)
 I $$GETP^%W1PRM("LMAM") S MH=$J(MH*100/(100+$$GETP^%W1PRM("AHMAM")),2,2)
 I '$$W6,MH,$G(PRT),$$SHEM^W4P(PRT)["()" S MH=$J(MH*2,2,2)_" ("_MH_")"
 I 'MH,$$NOMHTSF^W3PRM S MH="&nbsp;"
 Q MH
 ;
ORDERED(I1)
 N A
 S A=$G(@$$^W3TMPTF@($$^%W1JB,UR,I1,"QN"))
 I A Q 1
 I A["+" Q 1
 Q 0
 ;
NOOD(I1)
 I $$TOTGR(I1)'<$$MAXGR(I1) Q 1
 Q 0
 ;
PIZZA(PRT) ;
 I '$D(^W1DICT("PIZZA",$$^%W1LNG)) Q 0
 N SHEM S SHEM=$$SHEM^W4P(PRT)
 I SHEM["()"!(SHEM["[]") Q 1
 I $$SUG1^W4P(PRT)[^W1DICT("PIZZA",$$^%W1LNG) Q 1
 Q 0
 ;
SETPIZZA(PRM) ;
 ;;S ^AA("W3HZTSF-SETPIZZA","PRM")=PRM
 N PRZ,PRUR,LN,NOM,ST,DIV,ST
 S PRZ=$P(PRM,";",2)
 S DIV=$P(PRM,";",3)
 S PRUR=$P(PRM,";",4)
 ; 
 S PRM=$P(PRM,";")
 S LN=+$P(PRM,"pizza",2)
 S NOM=+$P(PRM,"img",2)
 ;
 N TMPTF3 D TMPTF3
 D UR
 ;
 S ST=$G(@TMPTF3@(LN,"QN"))
 I ST[$$RZD(DIV) S ST=$P(ST,$$RZD(DIV),2)
 ;
 I NOM'>DIV S $E(ST,NOM)=$S(PRZ="c":"-",1:"+")
 ;
 I NOM>DIV,PRZ="" S ST=$TR($J("",DIV)," ","+")
 I NOM>DIV,PRZ="c" S ST=$TR($J("",DIV)," ","-")
 ;
 S ST=ST_$J("",DIV-$L(ST))
 S ST=$TR(ST," ","-")
 ;;S ^AA("W3HZTSF-SETPIZZA","LN")=LN
 ;;S ^AA("W3HZTSF-SETPIZZA","STQN")=ST
 ;;S ^AA("W3HZTSF-SETPIZZA","TMPTF3")=TMPTF3
 ;;S ^AA("W3HZTSF-SETPIZZA","UR")=UR
 N J,K S K=0 F J=1:1:$L(ST) I $E(ST,J)="+" S K=K+1
 S ST=K_$$RZD(DIV)_ST
 S @TMPTF3@(LN,"QN")=ST
 Q $$QNPIZZA(ST)
 ;
 ;
QNPIZZA(QN) ;
 N QNPIZZA S QNPIZZA=0
 N J F J=1:1:4 I $E(QN,J)="+" S QNPIZZA=QNPIZZA+1
 Q QNPIZZA
 ;
QNPZ(LN) ;
 N UR S UR=3
 I '$G(LN) Q 0
 D TMPTF3
 N QN S QN=$G(@TMPTF3@(LN,"QN"))
 N QN1 S QN1=0
 N J F J=1:1:$L(QN) I $E(QN,J)="+" S QN1=QN1+1
 Q QN1
 ;
PIZZATOOMUCH(PRM) ;
 N BG S BG=$P(PRM,";")
 N MAX S MAX=$P(PRM,";",2) I 'MAX Q 0
 N IDTD S IDTD=$P(PRM,";",3)
 N LN S LN=+$P(IDTD,"pizza",2)
 I $$TOTGR(LN)>MAX Q 1
 I '$$QN3(LN),$$TOTGR(LN)'<MAX Q 1
 Q 0
 ;
P1EZI(COD)
 I $D(@$$^W4GL("P1EZI")@(COD))>9 Q 1
 Q 0
 ;
P1EZKI(COD) ;
 Q $$^W3EZKI(COD)
 ;
 ;
P1EZKIG(COD) ;
 Q $$G^W3EZKI(COD)
 ;
 ;
SETTMPTF(PRM) ;
 N I,MAX,VL,ONE,BG,END,CD,UR
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S UR=$P(PRM,";",3)
 S PRUR=0 I UR S PRUR=UR
 ;
 D TMPTF3
 ;
 S CD=$$CDI(I)
 S MAX=$$MAXGR(I)
 S TOT=$$TOTGR(I)
 S BG=$$GETBG(I)
 S END=$$GETEND(I)
 ;;W "CD="_CD_" BG="_BG_" END="_END_"  I="_I_" MAX="_MAX_" TOT="_TOT,! ;
 ;
 I 'VL D  Q 1
 .K @TMPTF3@(I,"QN")
 .N I2 S I2=I
 .F  S I2=$O(@TMPTF3@(I2)) Q:I2=""  Q:$$CDI(I2)'["-T"&($$CDI(I2)'["-C")  D
 ..K @TMPTF3@(I2,"QN")
 ;
 I CD["-C" D  Q 1; -- ???
 .S @TMPTF3@(I,"QN")=VL ; -- 12.03.26
 .N I1 F I1=I-1:-1:1 Q:$$CDI(I1)'["-C"
 .N I2 F I2=I1+1:1 Q:$$CDI(I2)'["-C"  D
 ..I I2'=I K @TMPTF3@(I2,"QN")
 ;
 I MAX["1!"!(MAX["1=") D  Q 1
 .N N S N=BG-1 F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:N>END  D
 ..I N=I,VL S @TMPTF3@(N,"QN")=1 D SIGNFIRST(N) Q
 ..I $$CDI(N)["-C" Q
 ..I N=I&'VL!(N'=I&VL) D
 ...S @TMPTF3@(N,"QN")=0
 ...D CLRCMT(N)
 ;
 ;
 I MAX,MAX'["^",MAX'[">",TOT+VL-$P(TOT,";",2)>MAX Q -1
 ;
 S @TMPTF3@(I,"QN")=VL
 ;
 ;;I 'VL D CLRCMT(I)
 I VL D SIGNFIRST(I)
 Q 1
 ;
CDI(I) ;
 D UR
 D TMPTF3
 Q $P($G(@TMPTF3@(I)),"~")
 ;
CDCI(I)
 N CD S CD=$$CDI(I)
 I CD["-C" Q 1
 Q 0
 ;
CDHI(I)
 N CD S CD=$$CDI(I)
 I CD["-H" Q 1
 Q 0
 ;
CDAI(I)
 N CD S CD=$$CDI(I)
 I $E(CD)="A" Q 1
 Q 0
 ;
CLRCMT(N) ;
 D UR
 N N1 S N1=$O(@TMPTF3@(N)) Q:'N1
 N CD S CD=$$CDI(N)
 I $$CDI(N1)[(CD_"-C") D
 .K @TMPTF3@(N1,"QN")
 .F  S N1=$O(@TMPTF3@(N1)) Q:N1=""  Q:$$CDI(N1)'["-C"  K @TMPTF3@(N1,"QN")
 .F  S N1=$O(@TMPTF3@(N1)) Q:N1=""  Q:$$CDI(N1)'["-T"  K @TMPTF3@(N1,"QN")
 Q
 ;
SIGNFIRST(N)
 D UR
 N N1 S N1=$O(@TMPTF3@(N)) Q:'N1
 N CD S CD=$$CDI(N)
 I $$CDI(N1)[(CD_"-C") D
 .N NEWC S NEWC=1
 .N IC,N2 S N2=N F IC=1:1 S N2=$O(@TMPTF3@(N2)) Q:N2=""  Q:$$CDI(N2)'["-C"  D
 ..I $G(@TMPTF3@(N2,"QN")) S NEWC=0
 .;;I NEWC S @TMPTF3@(N1,"QN")=1; ***
 Q
 ;
GETBG(I)
 N UR D UR
 N BG S BG=1
 D TMPTF3
 N N S N=I I $G(@TMPTF3@(N))?1"A"1N.E Q (N+1)
 F  S N=$O(@TMPTF3@(N),-1) Q:N=""  I $G(^(N))?1"A"1N.E Q
 I N S BG=N+1
 Q BG
 ;
GETEND(I)
 N UR D UR
 N END,NO
 N N S N=I
 D TMPTF3
 I $G(@TMPTF3@(N))?1"A"1N.E S N=N+1
 F  S:N NO=N S N=$O(@TMPTF3@(N)) Q:N=""  I $G(^(N))?1"A"1N.E Q
 S END=NO
 Q END
 ;
TOTGR(I)
 N UR D UR
 N BG,END
 D TMPTF3
 S BG=$$GETBG(I)
 S END=$$GETEND(I)
 N N,TOT S N=BG-1,TOT=0
 ;;W "BG="+BG+" END="_END,!
 F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:N>END  I N?."-"1N.E D
 .N CD S CD=$$CDI(N) Q:CD["-"
 .S TOT=TOT+$$QN3(N)
 Q TOT_";"_$$QN3(I)
 ;
MAXGR(I)
 D UR
 N BG S BG=$$GETBG(I)
 D TMPTF3
 I $G(BG)<1 Q 9999
 Q $P($G(@TMPTF3@(BG-1)),"~",4)
 ;
STADD0(PRM)
 N SHED,TXT
 S SHED=$P(PRM,";")
 S TXT=$P(PRM,";",2,20)
 N NM,CMNT
 S NM=$P(TXT,"~",3)
 S CMNT=$P(TXT,"~",7)
 S NM=$$CNWEB^%L1FRM(NM)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 S NM=$$INVH^%L1FRM(NM)
 S CMNT=$$INVH^%L1FRM(CMNT)
 S $P(TXT,"~",3)=NM
 S $P(TXT,"~",7)=CMNT
 D PUT^%W1PRM("STPAR",TXT)
 Q $$SETGR(SHED)
 ;
 ;
SETGR(PRM); --- AFTER SUBMIT
 ;;S ^AA("W3HZTSF-SETGR","PRM")=PRM
 I PRM?1"LV0".E G SETGR1
 ;
 N TXT S TXT=$P(PRM,";")
 N LVTXT S LVTXT=$P(TXT,"~",1)
 ;
 S PRM=$P(PRM,";",2,200)
 I LVTXT G SETGR4
 ;
SETGR1 N LISTIT S LISTIT=$P(PRM,";",2)
 S PRM=$P(PRM,";")
 ;;S ^AA("W3HZTSF-SETGR","PRM1")=PRM
 ;
 N GORD D GORD,UR ; -- !!!
 ;
 N I,LI
 S LI=$O(@GORD@(9999),-1)
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 ;
 I $$EDIT(PRM) D  I LI<1 Q -1  ; -- EDIT
 .S LI=$$FINDSH^W3HZORD(PRM)
 ;
 ;;S ^AA("W3HZTSF-SETGR","STPAR")=STPAR
 I STPAR'?1"0~"1N.E Q -2
 ;
 N CDPAR S CDPAR=$P(STPAR,"~",2)
 I CDPAR="" Q -2.5
 S CM0=$P(STPAR,"~",5)
 I 'CM0 S CM0=1
 ;
 D TMPTF3
 ;
 N OK S OK=0
 S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I D  Q:OK
 .I $$ORDERED(I) S OK=1
 ;
 I 'OK,$D(@$$^W4GL("P1EZA")@(CDPAR))>9 Q -3; --- LO NIVHERU TOSAFOT
 I 'OK,$D(@$$^W4GL("P1EZT")@(CDPAR))>9,'$$NOADD^W3PRM Q -3
 ;
 ;;S ^AA("W3HZTSF-SETGR","LISTIT")=LISTIT
 I LISTIT G GRADD
 ;
 ;;S ^AA("W3HZTSF-SETGR","EDIT")=$$EDIT(PRM)
 ;;S ^AA("W3HZTSF-SETGR","LI")=LI
 ;
 I $$EDIT(PRM) D  ;-- EDIT
 .D DELROW^W3HZORD(PRM)
 .N ST S ST=STPAR S $P(STPAR,"~",5)=CM0
 .D ADD^%L1GSEQ(GORD,LI,ST,1)
 .
 ;
 D
 .N CMNT S CMNT=$P(STPAR,"~",7)
 .
 .I CMNT'["[",$$GET^%W1PRM("CHECKER") D
 ..N LK S LK=$$GET^%W1PRM("CODE") Q:LK=""
 ..S CMNT=CMNT_"["_$$H2U^%L1FRM($$SHORT^W3L(LK))_"]"
 .
 .I '$L(PRM) D
 ..S @GORD@(LI+1)=$P(STPAR,"~",1,4)_"~"_CM0_"~"_$P(STPAR,"~",6)_"~"_CMNT_"~"_$P(STPAR,"~",8,9)
 ;
 ;;M ^AA("W3HZTSF-SETGR","TMPORD")=@GORD
GRADD ;
 N CDPAR S CDPAR=$$SPA^%L1FRM($P(STPAR,"~",2))
 N MXHINAM S MXHINAM=$$ADDSFREE^W4HZTSF(CDPAR)
 ;
 N I,STT,QN,K,LV S K=0
 S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I S STT=$G(^(I)) D
 .S QN=$G(^(I,"QN")) I '$$ORDERED(I) Q
 .
 .I QN["+" D
 ..S:QN["|" QN=$P(QN,"|",2)
 ..S:QN[":" QN=$P(QN,":",2)
 ..N CM,I S CM=0 F I=1:1:$L(QN) I $E(QN,I)="+" S CM=CM+1
 ..S QN=CM_"|"_QN
 .
 .S LV=1 I $G(LISTIT) S LV=0
 .S K=K+1
 .I K'>$G(MXHINAM) S $P(STT,"~",3)=0
 .
 .N CDT S CDT=$P(STT,"~") 
 .
 .I CDT["-T" D
 ..S LV=2
 ..S $P(STT,"~")=$P(CDT,"-T",2)
 .
 .N ST S ST=LV_"~"_STT
 .S $P(ST,"~",5)=$S(CM0>1:CM0_"*"_QN,1:QN)
 .
 .;;I $G(PRM)="" D  Q
 .I '$$EDIT(PRM) D  Q
 ..S @GORD@($O(@GORD@(99999),-1)+1)=ST
 .
 .D ADD^%L1GSEQ(GORD,LI+K,ST,1)
 Q 1
 ;
 ;
SETGR4 ; 
 N CDPAR S CDPAR=$P(TXT,"~",2)
 N TF3INF S TF3IND=$P(TXT,"~",3)
 N LISTIT S LISTIT=$P(PRM,";",2)
 S PRM=$P(PRM,";")
 ;
 ;;S ^AA("W3HZTSF-SETGR4","LISTIT")=LISTIT
 ;;S ^AA("W3HZTSF-SETGR4","PRM")=PRM
 ;
 I CDPAR="" Q -2.5
 ;
 N TMPTF3,TMPTF4
 S TMPTF3=$$BG^W4MAIN("TMPTF")_"3)"
 S TMPTF4=$$BG^W4MAIN("TMPTF")_"4)"
 ;
 ;;S ^AA("W3HZTSF-SETGR4","TMPTF3")=TMPTF3
 ;;S ^AA("W3HZTSF-SETGR4","TMPTF4")=TMPTF4
 ;;S ^AA("W3HZTSF-SETGR4","CDPAR")=CDPAR
 ;;S ^AA("W3HZTSF-SETGR4","LISTIT")=LISTIT
 ;;S ^AA("W3HZTSF-SETGR4","PRM2")=PRM
 ;;M ^AA("W3HZTSF-SETGR4","TMPTF4")=@TMPTF4
 ;
 ;
 I LISTIT G GRADD4
 ;
 ;;S ^AA("W3HZTSF-SETGR4","EDIT")=$$EDIT(PRM)
 ;
GRADD4 ;
 N MXHINAM S MXHINAM=$$ADDSFREE^W4HZTSF(CDPAR)
 ;
 N I,LI,STT S I=TF3IND,LI=I
 ;
 F  S I=$O(@TMPTF3@(I)) Q:'I  S STT=$G(^(I)) D
 .N CDT S CDT=$P(STT,"~")
 .I CDT[(CDPAR_"-T") K @TMPTF3@(I)
 ;
 S I=TF3IND
 F  S I=$O(@TMPTF3@(I)) Q:'I  S STT=$G(^(I)) Q:$P(STT,"~")'[(CDPAR_"-C")  S LI=LI+1
 ;
 ;;S ^AA("W3HZTSF-SETGR4","LI0")=LI
 ;
 N QN,K,LV S K=0
 ;
 S I="" F  S I=$O(@TMPTF4@(I)) Q:'I  I I S STT=$G(^(I)) D
 .S CDT=$P(STT,"~")
 .S QN=$G(^(I,"QN")) I QN=""!(QN=0) Q
 .
 .I QN["+" D
 ..S:QN["|" QN=$P(QN,"|",2)
 ..S:QN[":" QN=$P(QN,":",2)
 ..N CM,I S CM=0 F I=1:1:$L(QN) I $E(QN,I)="+" S CM=CM+1
 ..S QN=CM_$S($L(QN)<3:"|",1:":")_QN
 .
 .S K=K+1
 .I K'>$G(MXHINAM) S $P(STT,"~",3)=0
 .N ST S ST=STT
 .S $P(ST,"~")=CDPAR_"-T"_CDT
 .
 .S LI=LI+1
 .D ADD^%L1GSEQ(TMPTF3,LI,ST,1)
 .S @TMPTF3@(LI,"QN")=QN
 ;
 Q 1
 ;
 ;
EDIT(PRM) ;
 I $E($G(PRM),1,3)="LV0" Q 1
 Q 0
 ;
NEWGR(BGA) ;
 N II,OK S OK=1
 D TMPTF3
 F II=BGA+1:1 Q:'$D(@TMPTF3@(II))  Q:$$GRA($G(@TMPTF3@(II)))  D  Q:'OK
 .I $$ORDERED(II) S OK=0 Q
 Q OK
 ;
NOQNDEF(BGA,PRT)
 N II,OK S OK=1
 I '$D(PRT) Q 1
 S II=BGA
 F  S II=$O(@$$^W3TMPTF@($$^%W1JB,UR,II)) Q:II=""  Q:$$GRA($G(@$$^W3TMPTF@($$^%W1JB,UR,II)))  D  Q:'OK
 .N CD S CD=$P($G(@$$^W3TMPTF@($$^%W1JB,UR,II)),"~") Q:CD=""
 .I $G(@$$^W4GL("QNDEF")@(PRT,CD)) S OK=0
 Q OK
 ;
GRA(TXT) I $E(TXT)="A" Q 1
 Q 0
 ;
CMT(TXT) I $P(TXT,"~")["-C" Q 1
 Q 0
 ;
CMTY(TXT,I) I '$$CMT(TXT) Q 0
 N NN S NN=I-1
 F  S NN=$O(@$$^W3TMPTF@($$^%W1JB,UR,I),-1) Q:NN=""  Q:'$$CMT(@$$^W3TMPTF@($$^%W1JB,UR,I))
 I NN="" Q 0
 I '$D(@$$^W3TMPTF@($$^%W1JB,UR,I,1)) Q 0
 Q 1
 ;
ADDS(CD) ;
 I $G(CD)="" Q 0
 I $$P1EZI(CD)!$$P1EZKI(CD) Q 1
 Q 0
 ;
TSF(TXT) I $P(TXT,"~")["-T" Q 1
 Q 0
 ;
TMPTFI(I) Q "^[$$^W3MAIN]TMPTF($$^%W1JB,UR,"_I_")"
 ;
QN3(I) ;
 N QN3 S QN3=$$QN(I)
 I $$CDCI(I)!$$CDHI(I)!$$CDAI(I) Q 0
 I QN3 Q QN3
 N K,J S K=0
 I QN3["+" Q 1
 Q 0
 ;
QN(I) ;
 N UR D UR
 N TMPTF3
 D TMPTF3
 Q $G(@TMPTF3@(I,"QN"))
 ;
CSR(STAM) ;
 I $G(%ARG("CSR")) Q 1
 I $$PAPJ^W4PRM Q 1
 I $$GETP^%W1PRM("ELPOS")=1,'$$^W4DLVNPR(JB),$$^W4DLVCSR'=2 Q 1
 Q 0
 ;
CLRQN(QN) ;
 S QN=$Q(QN)
 I QN[":" Q $P(QN,":",2)
 Q QN
 ;
ISSETPIZZA(STPAR) ;
 Q $$^W4SETPIZ(STPAR)
 ;
 ;
SHOWPIZZA(I,BGA,PRA,DIV)
 N PRT,UR,QNPIZZA
 D UR
 ;
 S QNPIZZA=$$QN(I)
 I QNPIZZA["|" S QNPIZZA=$P(QNPIZZA,"|",2)
 I QNPIZZA[":" S QNPIZZA=$P(QNPIZZA,":",2)
 ;
 S SELPAR=0
 ;
 W "<td "
  I $$^W4TABLET=2 W "width=""20%"" "
 W ">"
 W " <table dir=""LTR"">",!
 W "  <tr id=""pizza"_I_""">",!
 ;
 N CHC,J F J=1:1:DIV I $E(QNPIZZA,J)="+" S CHC(J)="c",SELPAR=1
 ;
 I DIV=4,$D(CHC(1)),$D(CHC(2)),$D(CHC(3)),$D(CHC(4)) S CHC(5)="c"
 I DIV=2,$D(CHC(1)),$D(CHC(2)) S CHC(3)="c"
 ;
 N SMB
 F J=1:1:DIV+1 D
 . N TDID S TDID="pizza"_I_"img"_J
 . W "  <td id="""_TDID_""" "
 . I DIV=4 W "style=""width:38px"" "
 . W ">"
 .  W $$PIZZAIMG(TDID_";"_J_";"_$G(CHC(J))_";"_DIV_";"_$G(BGA)_";"_$G(PRA))
 .  W "&nbsp;"
 .W "  </td>"
 W "  </tr>",!
 ;
 W " </table>"
 W "</td>",!
 Q
 ;
 ;
PIZZAIMG(PRM);
 N DIV,J,PRZ,SMB,ST,DIV,BGA,PRA
 ;
 S TDID=$P(PRM,";")
 S J=$P(PRM,";",2)
 S PRZ=$P(PRM,";",3)
 S DIV=$P(PRM,";",4)
 S BGA=$P(PRM,";",5)
 S PRA=$P(PRM,";",6)
 ;
 N IMGPIZZA S IMGPIZZA="w3pizza" I $$CSR S IMGPIZZA="w4pizza"
 N IMGSIZE S IMGSIZE=""
 S IMGSIZE="height=""25"" width=""20"" "
 I $$CSR D
 .I DIV=2 S IMGSIZE="height=""40"" width=""40"" " Q
 ;
 S SMB=$S(DIV=4:J,1:"h"_J)
 ;
 S ST=" <img src="""_IMGPIZZA_SMB_PRZ_".png"" "_IMGSIZE_" alt="""" "
 S ST=ST_" style=""cursor:pointer"" "
 S ST=ST_" onClick=""ClickPizza('"_TDID_"',"_J_",'"_PRZ_"',"_+$G(BGA)_","_+$G(PRA)_",'"_DIV_"')"" />"
 S ST=ST_$$NBSP^%L1FRM(5)
 Q ST
 ;
UR ;
 I $G(PRUR),$$CSRMOUSE^W4PRM S UR=PRUR Q 
 S UR=3
 I $$CSR S SHID=$$GETP^%W1PRM("SHID"),UR=$$UR^W4MENU
 I UR<3 S UR=3
 I $$CSRMOUSE^W4PRM,$$LVTXT=1 S UR=4
 Q
 ;
ENG(STAM) ;
 Q $$ENG^W4P
 ;
 ;
KOT ; 
 N NMPRT S NMPRT=$$SHEM^W4P(PRT)
 S NMPRT=$$RPL^%L1FRM(NMPRT,"()","")
 S NMPRT=$$RPL^%L1FRM(NMPRT,"[]","")
 I $$ENG S NMPRT=$$VWENG^%L1FRM(NMPRT)
 ;
 N COLSPAN S COLSPAN=3
 I $G(PIZZA),'$$ONECOL S COLSPAN=6
 W "<tr class=""tdth"">",!
  W " <td style='font-size:"_$$^W3FSZ(16)_";color:black;text-align:center' colspan='"_COLSPAN_"'>"
        W $$RPL^%L1FRM($$^%W1DICT("ADDITIONSTO")," ","&nbsp;")_" "
        I '$$CSR W "<span class=""hdaddit"" >"
        I $$CSR W "<span style=""color:green;font-size:"_$$^W3FSZ(16)_""" >"
        W "&nbsp;"_$$H2U^%L1FRM(NMPRT)_"&nbsp;"
        W "</span>"
  W "</td>",!
 W "</tr>",!
 ;
 I $$^W4TSF(PRT) D
 .S PRA=$$MAX^W4TSF(PRT)
 .S TX=""
 .I $G(PRA),EQA=1 D
 ..I PRA>1 S TX=$$^W3MSG("QNEXACTLY~"_PRA) Q
 ..S TX=""
 .
 .I $G(PRA),EQA=2 D
 ..S TX=$$^W3MSG("QNMIN~"_PRA)
 .
 .I $G(PRA),'EQA D
 ..S TX=$$^W3MSG("QNMAX~"_PRA)
 .
 .I $L(TX) D
 ..W "<tr>"
 .. W "<td colspan=""3"" style=""color:black;text-align:center"">"
 ..  W TX
 .. W "</td>"
 ..W "</tr>",!
 Q
 ;
 ;
W6() ;
 I $$^W6 Q 1 
 I $G(%ARG("W6")) Q 1 
 Q 0 
 ;
BUT ;
 W "<p></p>",!
 W "<table><tr>",! 
  D TRBUT1
 W "</tr></table>",! 
 Q
 ;
COLOR() ;  
 Q $$COLOR^W4GETCLR 
 ;
GETCOLOR(PRM) ; 
 Q $$^W4GETCLR($G(PRM))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3HZTSF0
W3HZTSF(STPAR) ; [ 15.06.14 11:40 ] [ 14.06.14 19:09 ] [ 13.06.14 16:37 ]
 N (JB,NMB,STPAR,FOCUS,%ARG)
 Q:'$G(JB)
 S SHEDIT=0
 S SHID=$G(%ARG("SHID"))
 S UR=3
 I $$CSR S SHID=$$GETP^%W1PRM("SHID"),UR=$$UR^W4MENUBT
 ;
 I SHID'="" S SHEDIT=$$FINDSH^W3HZORD(SHID)
 ;
 N PRA,EQA,CDA S PRA=0,EQA=0,BOX=0,CDA="",PIZZA=0
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;
 I $L($G(NMB))<4,'$$^W3MENU S NMB=$$NMB^W3HZMST(JB)
 D KILL^%W3DEB("W3HZTSF")
 D PUT^%W3DEB("W3HZTSF","JB=JB & STPAR=STPAR & MSD=MSD &NMB=NMB & SHEDIT=SHEDIT")
 Q:$G(STPAR)=""
 ;
 N I,N2,MH
 N W3HZTSF S W3HZTSF="" D INIT^W3HZTFR
 ;
 S PRT=$P(STPAR,"~",2)
 I $$CSR,$$ISSETPIZZA(STPAR) S PRT=$P(STPAR,";") S PIZZA=1 G CR ; -- PIZZA FROM AI
 ;
 D PUT^%W3DEB("W3HZTSF","PRT=PRT")
 Q:PRT=""
 ;
 I PRT?1N.N.".".N D
 .I $P(STPAR,"~",3)="" S $P(STPAR,"~",3)=$$SHEM^W3P(PRT)
 .I $P(STPAR,"~",4)="" S $P(STPAR,"~",4)=$$MH^W3P(PRT)
 .D PUT^%W1PRM("STPAR",STPAR)
 ;
 S KOT(3)=$$SHEM^W4P(PRT)_"~"_PRT
CR ;
 D CRTMP(PRT,$$^W3TMPTF)
 ;
 I $G(SHEDIT) D SETQN(SHEDIT)
 K RPL,%ARG("RPL")
 D VIEW
 Q
 ;
 ;
CRTMP(PRT,GL) ;
 N I,MH,N2,KOT S I=0
 I $G(PRT)="" Q
 ;
 K @GL@($$^%W1JB,UR)
 S @GL@($$^%W1JB,UR)=PRT
 ;
 I $$ISSETPIZZA(PRT) D SET(PRT,1,GL),SBORKA Q  ; -- PIZZA FROM AI
 ;
 I $D(@$$^W4GL("P1EZH")@(PRT)) D  ;;Q
 .S @GL@($$^%W1JB,UR,.5)="A~"_$$TV^%W1DICT($$^%W1LNG,"COMMENTS")_"~~1"
 .N IH S N2="" F IH=1:1 S N2=$O(@$$^W4GL("P1EZH")@(PRT,N2)) Q:N2=""  D
 ..S @GL@($$^%W1JB,UR,.5,IH)="H"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 ;
 ;
 I $D(@$$^W4GL("P1EZT")@(PRT)) D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZT")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..S I=$G(@$$^W4GL("P1EZT")@(PRT,N2))
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$NM^W3SETA(N2),20)_"~"_$$MHT(PRT,N2)_"~"_$$QN^W3SETA(N2)
 ..D SET(N2,I,GL)
 .D SBORKA
 ;
 I $D(@$$^W4GL("P1EZA")@(PRT)) D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZA")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..S I=$G(@$$^W4GL("P1EZA")@(PRT,N2))
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$NM^W3SETA(N2),20)_"~"_$$MHT(PRT,N2)_"~"_$$QN^W3SETA(N2)
 ..D SET(N2,I,GL)
 .D SBORKA
 ;
 I $D(@$$^W4GL("P1EZR")@(PRT)) D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZR")@(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S MH=0 K PRMHNMB
 ..S I=I+1
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),20)_"~"_$J(MH,2,2)_"~~R"
 ..N IH,N3,I1 S N3="",I1=0
 ..F  S N3=$O(@$$^W4GL("P1SBR")@(N3)) Q:N3=""  D
 ...S I1=I1+1
 ...S @GL@($$^%W1JB,UR,I,I1)=N2_"-C"_N3_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1SBR")@(N3)),20)_"~~~"
 .D SBORKA
 ;
 I $D(@$$^W4GL("P1EZI")@(PRT)) D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZI")@(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S MH=+$$MH($G(NMB),N2)
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),20)_"~"_$J(MH,2,2)
 ..D HR21(N2)
 ;
 I $$P1EZKI(PRT) D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PRT),N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S MH=+$$MH(+$G(NMB),N2)
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),20)_"~"_$J(MH,2,2)
 ..D HR21(N2)
 ;
 Q
 ;
 ;
SET(N2,I,GL) ;
 N SET S SET=$E(N2,2,6)
 N N3,I1 S N3="",I1=0 F  S N3=$O(@$$^W4GL("P1SETA")@(SET,N3)) Q:N3=""  D
 .Q:$$NOHZG(N3)
 .N I1 S I1=$G(@$$^W4GL("P1SETA")@(SET,N3))
 .S @GL@($$^%W1JB,UR,I,I1)=N3_"~"_$$SHEM^W4P(N3)_"~"_$$MHT(PRT,N3)
 .D HR2(N3)
 Q
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
SETQN(SHED)
 N GORD,A,MQN,CD,QN
 D TMPTF3
 D GORD
 N SH F SH=SHED+1:1 Q:'$D(@GORD@(SH))  S A=$G(^(SH)) Q:$P(A,"~")=0  D
 .S CD=$P(A,"~",2)
 .S QN=$P(A,"~",5)
 .I QN["*" S QN=$P(QN,"*",2)
 .I CD["-C",'QN S QN=1
 .S MQN(CD)=$S(QN[":":$P(QN,":",2),1:QN)
 ;
 N I,CDT F I=1:1 Q:'$D(@TMPTF3@(I))  D
 .S CDT=$$CDI(I)
 .I $D(MQN(CDT)) S @TMPTF3@(I,"QN")=MQN(CDT)
 K MQN
 Q
 ;
SETPARST(PRM) ;
 N ST,CMNT,QN
 S ST=$$GET^%W1PRM("STPAR")
 I ST=""!(ST["<UNDEF") Q
 S CMNT=$$CLEAR^%L1FRM($$CNWEB^%L1FRM($P(PRM,";",2)))
 I $$^%W1DIR="RTL",$L(CMNT) S CMNT=$$INVH^%L1FRM(CMNT)
 S QN=$P(PRM,";",1) S:'QN QN=1
 S $P(ST,"~",5)=QN
 S CMNT=$TR(CMNT,"~\","-/")
 S $P(ST,"~",7)=$TR(CMNT,"?","")
 D PUT^%W1PRM("STPAR",ST)
 Q
 ;
NOHZG(N2) ;
 I $D(^[$$^%W1UCI(JB)]PRTNO(N2)) Q 1
 I '$D(^[$$^%W1UCI(JB)]PAR(N2)) Q 1
 I $G(@$$^W4GL("W3PAR")@(N2))=0 Q 1
 Q 0
 ;
 ;
MHT(PRT,SUB)
 Q $J($G(@$$^W4GL("MHT")@(PRT,SUB)),2,2)
 ;
 ;
HR2(CODT,PRM)
 I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N I2 S I2=0
 .N IH,N2 S N2="" F  S N2=$O(@$$^W4GL("P1EZH")@(CODT,N2)) Q:N2=""  D
 ..S I2=I2+1
 ..S @GL@($$^%W1JB,UR,I,I1,I2)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 ;
 ;;I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N IH,N2 S N2="" F  S N2=$O(@$$^W4GL("P1EZH")@(CODT,N2)) Q:N2=""  D
 ..S I1=I1+1
 ..S @GL@($$^%W1JB,UR,I,I1)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 Q
 ;
HR21(CODT,PRM)
 I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N IH,N2,I1 S N2="",I1=0
 .F  S N2=$O(@$$^W4GL("P1EZH")@(PRT,N2)) Q:N2=""  D
 ..S I1=I1+1
 ..S @GL@($$^%W1JB,UR,I,I1)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 ;;I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N IH,N2 S N2=""
 .F  S N2=$O(@$$^W4GL("P1EZH")@(PRT,N2)) Q:N2=""  D
 ..S I=I+1
 ..S @GL@($$^%W1JB,UR,I)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 Q
 ;
LI(STAM) Q $O(@GL@($$^%W1JB,UR,99999),-1)
 ;
 ;
SBORKA ;
 N I S I=0
 N GL0 S GL0=GL_"0" ; -- GL = ^TMPTF
 K @GL0@($$^%W1JB)
 M @GL0@($$^%W1JB,UR)=@GL@($$^%W1JB,UR)
 K @GL@($$^%W1JB,UR)
 N N,N1,N2
 ;
 S N="" F  S N=$O(@GL0@($$^%W1JB,UR,N)) Q:N=""  D
 .S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N))
 .S N1="" F  S N1=$O(@GL0@($$^%W1JB,UR,N,N1)) Q:N1=""  D
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N,N1))
 ..S N2="" F  S N2=$O(@GL0@($$^%W1JB,UR,N,N1,N2)) Q:N2=""  D
 ...S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N,N1,N2))
 I $D(@GL0@($$^%W1JB,UR))#2 S @GL@($$^%W1JB,UR)=@GL0@($$^%W1JB,UR)
 K @GL0@($$^%W1JB)
 Q
 ;
 ;
VIEW ;
 D TMPTF3
 ;
 K MTOT,MQ,NEWGR
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""height:98%"
 I $$PRM^W3IMG("CLKAVADD")'?.P D
 .N CLRBRD S CLRBRD=$$PRM^W3IMG("CLKAVADD")
 .I CLRBRD?.P S CLRBRD="grey"
 .I $$^%W1DIR="RTL" W ";border-right:1px solid "_CLRBRD Q
 .W ";border-left:1px ridge grey;" Q
 W """"
 W ">",!
 ;
 I $$^W4SMALL D
 .N W5EDIT
 .S W5EDIT("QN")=$P(STPAR,"~",5)
 .S W5EDIT("CMNT")=$P(STPAR,"~",7)
 .D STR^W5HZPRT(PRT)
 .W "<br>",!
 ;
 I $D(@TMPTF3)<10 D:$$^W4SMALL  W "</div>" Q
 .N BGA S BGA=1
 .W "<table>",!
 .D SUBMGR(1)
 .W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""95%"" id=""TblAdd"" name=""TblAdd"" "
 I $$^W4SMALL W " cellspacing=""20"" "
 D
 .N CLR S CLR=$$FGADD^W3CSS
 .I $$^W4SMALL S CLR="black"
 .W "style=""color:"_CLR
 W """ border=""0"">",!
 ;
 W "<tr class=""tdth"">",!
  W " <td style='font-size:"_$$^W3FSZ_";color:"_$$FGADDTO^W3CSS_"' colspan='3'>"
        W $$RPL^%L1FRM($$^%W1DICT("ADDITIONSTO")," ","&nbsp;")
        I '$$CSR W "<span class=""hdaddit"" >"
        I $$CSR W "<span style=""color:green;font-size:"_$$^W3FSZ(16)_""" >"
        W "&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(PRT))_"&nbsp;"
        W "</span>"
  W "</td>",!
 W "</tr>",!
 ;
 N PRCMT,BGA S BGA=0,PRCMT=0 S SELPAR=0
 ;
 N I F I=1:1 Q:'$D(@TMPTF3@(I))  D
 .N VALUE,TXT,HRF S TXT=$G(@TMPTF3@(I)) S HRF=0
 .S VALUE="&nbsp;"
 .;
 .N CDT S CDT=$P($P(TXT,"~"),"-")
 .
 .I '$$GRA(TXT) D  W "</tr>",! Q  ;
 ..I '$$CMT(TXT) W "<tr id=""trad"_I_""" style=""font-weight:"_$$ADDWEIGHT^W3CSS
 ..I $$CMT(TXT) W "<tr id=""trcm"_I ; S HEAROT
 ..W """>",!
 ..
 ..W "<td id='idad"_I_"'" ; ------- TD NAIM-YA --------------------
 ..I $$CSR W " style=""font-weight:bold"" "
 ..
 ..I $$^W4SMALL W " width=""55%"" "
 ..;
 ..I $$CMT(TXT) D  Q  ; --- HEAROT
 ...S PRCMT=1
 ...W "><select id=""sel"_I_""" onChange=""selChange("_I_")"""
 ...I 'SELPAR W " disabled=""disabled"""
 ...W ">",!
 ...N I1,CHC S CHC=0
 ...F I1=I:1 Q:'$D(@TMPTF3@(I1))  S TXT=$G(@TMPTF3@(I1)) Q:'$$CMT(TXT)  D
 ....W "<option id=""opt"_I1_""" value="""_TXT_""""
 ....I $$ORDERED(I1) W " selected=""selected""" S CHC=1
 ....W ">",$$H2U^%L1FRM($$NM^W3TMPTF(TXT)),"</option>",!
 ...W "</select>",!
 ...W "</td>"
 ...S I=I1-1
 ..;
 ..I $G(CDT),$G(PRA)>1&(EQA!BOX)&'$$^W3PIZZA(PRT,CDT) D  ; --------------------- SETS
 ...N CLR S CLR=$$FGADD^W3CSS I $$^W4SMALL S CLR="black"
 ...W " style=""cursor:pointer;color:"_CLR_""" "
 ... W " onClick=""qnClickNm("_+BGA_","_+I_","_+PRA_")"""
 ..
 ..W ">" ; ------ TD
 ..
 ..I '$$^W4SMALL,$G(CDT),$G(@$$^W4GL("L1TIP")@("MTK",CDT,1))'?.P D
 ...W " <img src=""w3inf.png"" style=""cursor:pointer"" onMouseOver=""OpenDescr('"_CDT_"')"" onMouseOut=""CloseDescr()"" >"
 ..
 ..I $G(CDT),+$G(PRA)=1&(EQA&BGA)!('EQA&'BOX),'PIZZA D
 ...W "<label id=""lbnm"_I_""" for=""QNADD"_I_""" style=""cursor:pointer"
 ...I $$^W4SMALL D
 ....I $$ORDERED(I) W ";color:brown" Q
 ....W ";color:black" Q
 ...W """>"
 ..
 ..W $$H2U^%L1FRM($$NM^W3TMPTF(TXT)) ; --- NAME
 ..
 ..I $G(CDT),+$G(PRA)=1&(EQA&BGA)!('EQA&'BOX),'PIZZA D
 ...W "</label>"
 ..;
 ..W "</td>",!
 ..Q:'$G(CDT)
 ..;-------------------------------- KONEC NAIM-YA ------------------
 ..
 ..W "<td style=""color:"_$$FGMHADD^W3CSS_""" "
 ..I $$^W4SMALL W " width=""16%"" "
 ..W ">"_$$MHVIEW(TXT)_"</td>",! ; --- MAHIR
 ..
 ..;------------------------ QUANTUTY --------------------------------
 ..;
 ..I $$^W3PIZZA(PRT,CDT)!PIZZA D  Q  ; --- CHOICE PIZZA ADDONS
 ...S SELPAR=0
 ...W "<td>"
 ...W " <table dir=""LTR"">",!
 ...W "  <tr id=""pizza"_I_""">",!
 ...N QNPIZZA S QNPIZZA=$$QN(I)
 ...N CHC N J F J=1:1:4 I $E(QNPIZZA,J)="+" S CHC(J)="c",SELPAR=1
 ...I $D(CHC(1)),$D(CHC(2)),$D(CHC(3)),$D(CHC(4)) S CHC(5)="c"
 ...F J=1:1:5 D
 ....N TDID S TDID="pizza"_I_"img"_J
 ....W "  <td id="""_TDID_""">"
 ....  N IMGPIZZA S IMGPIZZA="w3pizza" I $$CSR S IMGPIZZA="w4pizza"
 ....  W " <img src="""_IMGPIZZA_J_$G(CHC(J))_".jpg"" "
 ....  W " onClick=""ClickPizza('"_TDID_"',"_J_",'"_$G(CHC(J))_"',"_+BGA_","_+PRA_")"" />"
 ....W "  </td>",!
 ...W "  </tr>",!
 ...W " </table>",!
 ...W "</td>",!
 ..
 ..
 ..I +$G(PRA)=1&EQA&BGA!('EQA&'BOX) D  ; --- QUANTITY RADIO
 ...W "<td align=""center"" >"
 ...N CHKBOX,CHECKED S CHKBOX=0
 ...I EQA W "<input type=""radio"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 ...I 'EQA,'BOX W "<input type=""checkbox"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 ...S SELPAR=0 I $$ORDERED(I) D
 ....W " checked=""checked""" S SELPAR=1 D SIGNFIRST(I)
 ...I $$NEWGR(BGA),$$NOQNDEF(BGA,PRT),I=(BGA+1),'$G(SHEDIT),EQA D
 ....W " checked=""checked"" " S SELPAR=1 I $$SETTMPTF(I_";"_1)
 ...I $$NEWGR(BGA),'$$NOQNDEF(BGA,PRT),$$QNDEF(I,PRT),'$G(SHEDIT) D
 ....W " checked=""checked"" " S SELPAR=1 I $$SETTMPTF(I_";"_1)
 ...I EQA W " onClick=""radClick("_BGA_","_I_",'!')"""
 ...I 'EQA,'BOX W " onClick=""radClick("_BGA_","_I_",'"_+PRA_"')"""
 ...W " />"
 ...I $$^W4SMALL D
 ....W "<label for=""QNADD"_I_""" id=""lb"_I_""" "
 ....I +EQA'=1 W "class=""bgbtn"" "
 ....I +EQA=1 W "class=""bgradio"" "
 ....W " style=""cursor:pointer"">"
 ....I SELPAR D
 .....W $$SHOWV^W3CSM(EQA)
 ....I 'SELPAR D
 .....W $$SHOWO^W3CSM
 ....W "</label>",!
 ...W "</td>",!
 ..
 ..
 ..I $G(PRA)>1&(EQA!$G(BOX)) D  ; --- QUANTITY INPUT BOX -----------------
 ...W "<td align=""center"">"
 ...N HRFA S HRFA=0
 ...D  ; +
 ....W "<span "
 ....W " onClick=""qnClickNm("_+BGA_","_+I_","_+PRA_")"""
 ....N FSZ S FSZ=11 I $$SMALL^W4SMALL S FSZ=16
 ....W " style=""cursor:pointer;font-size:"_$$^W3FSZ(FSZ)
 ....W ";color:"_$$FGPLUS^W3CSS_";font-weight:bold"">"
 ....W "+"
 ....W "&nbsp;"
 ....W "</span>"
 ...
 ...W "<input type=""text"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 ... I '$$^W4SMALL D
 ....  W " style=""width:22px;background-color:"_$$BGQNADD^W3CSS($$COLOR^W3CSS)
 ....  W """ onKeyUp=""OnKeyUp("_I_","_BGA_","_+PRA_")"""
 ....  W " onClick=""QntClick(this,"_I_","_BGA_","_+PRA_")"""
 ... I $$^W4SMALL D
 .... W " readonly=""readonly"" "
 .... W " style=""font-size:"_$$^W3FSZ(14)
 .... I $$^W4SIMUL W ";width:22px"
 .... W """ "
 .... W " size=""1"" maxlength=""2"" "
 ...  D VL(I,PRA,BGA,PRT)
 ...W " />"
 ...
 ...D  ; -
 ....W "<span "
 ....W " onClick=""qnMin("_+I_","_BGA_","_+PRA_")"""
 ....N FSZ S FSZ=16 I $$SMALL^W4SMALL S FSZ=22
 ....W " style=""cursor:pointer;font-size:"_$$^W3FSZ(FSZ)
 ....W ";color:"_$$FGMIN^W3CSS_";font-weight:bold"">"
 ....W "&nbsp;-</span>" S HRFA=0
 ...
 ...W "</td>",! ; ----------- END QUANTITY INPUT BOX --------------
 .
 .
 .I $$GRA(TXT) D  ; --- START OF GROUP - HEADER
 ..N BGAO
 ..I $G(BGA) D SUBMGR(0)
 ..S BGAO=$G(BGA)
 ..N PRA0 S PRA0=$$PR^W3TMPTF($G(@TMPTF3@(I)))
 ..S PRA=+PRA0
 ..S BGA=I,EQA=$$EQ^W3TMPTF($G(@TMPTF3@(I))),SELPAR=0
 ..S BOX=$$BOX^W3TMPTF($G(@TMPTF3@(I)))
 ..S PIZZA=0 I $P(TXT,"~",2)["()" S PIZZA=1
 ..I '$$CSR D
 ...W "<a name=""B"_BGA_"""></a>",!
 ...W "<tr id=""trai"_I_""" name=""trai"" >",!
 ...W "<td id='idai"_I_"' abbr='"_PRA0_"' class='hdai' colspan=3>" ;--- GROUP HEADER
 ...
 ...I BGAO W "<a name=""G"_$G(BGAO)_""" id=""G"_$G(BGAO)_""">"
 ...W:I>2 "<br>" W $$H2U^%L1FRM($$NM^W3TMPTF(TXT))
 ...
 ...N TX S TX=""
 ...
 ...I $G(PRA),EQA D
 ....I PRA>1 S TX=$$^W3MSG("QNEXACTLY~"_PRA) Q
 ....S TX="" ;$$^W3MSG("QNEXACTLY1~"_PRA) Q
 ...
 ...I $G(PRA),'EQA D
 ....I PRA>1 S TX=$$^W3MSG("QNMAX~"_PRA) Q
 ....S TX="" ;$$^W3MSG("QNMAX~"_PRA) Q
 ...
 ...W "<span style=""color:"_$$FGMAXADD^W3CSS_";font-size:"_$$^W3FSZ(9)_""">"_TX_"</span>",!
 ...W "</td>",!
 ..W "</tr>",!
 ;
 D SUBMGR(1)
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $D(SCRY) D  K SCRY
 .W "<script>",!
 .W " self.window.scrollTo(100,"_(SCRY*10)_");",!
 .W "</script>",!
 ;
 I $D(MTOT) D  K MTOT
 .D PUT^%W3DEB("W3HZTSF","MTOT=[MTOT")
 .W "<script>",!
 .N N S N="" F  S N=$O(MTOT(N)) Q:N=""  D
 ..W "  SetTot("_N_");",!
 ..W "  ReadOnly('"_MTOT(N)_"');",!
 .W "</script>",!
 ;
 Q
 ;
TMPTF3 S TMPTF3="^[$$^W3MAIN]TMPTF($$^%W1JB,UR)"
 Q
 ;
SUBMGR(PRZ) ;
 W "<tr id=""trend"_BGA_""">",!
 W "<td>&nbsp;</td></tr>",!
 ;
 I $G(PRA)>1 D
 .W "<tr id=""trtot"_BGA_""">",!
 .W "<td style=""font-size:"_$$^W3FSZ_";color:"_$$FGTOTADD^W3CSS_""" ><span>"
 .W $$^%W1DICT("ITEMSTOT")_"</td><td>&nbsp;</span></td>"
 .W "<td><input type=""text"" style=""width:"_$$KF^W3CSM(90)_";font-size:"_$$^W3FSZ_";color:red"""
 . W " name=""totgr"_BGA_""" id=""totgrid"_BGA_""" />"
 .S MTOT(BGA)="totgrid"_BGA
 .W "</td></tr>",!
 W !
 I $G(PRZ),'$$CSR D TRBUT ; -- LAST BUTTON
 Q
 ;
TRBUT ;
 W "<tr id=""trbut"_BGA_""">"
 ;
 I '$$^W4SMALL D
 .W " <td colspan=""2""><br />",!
 .D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDBACK"),"Submit()","color:green",",,,160")
 .W "</td>"
 ;
 I $$^W4SMALL D
 .W "<td>",!
 .W " <input type=""button"" id=""Back"" "
 .W "  class=""btnsmall"" style=""color:red"" "
 .I '$G(SHEDIT) D
 ..W "  onClick=""Back2Menu()"" "
 ..W "  value="""_$$^%W1DICT("BACK2MENU")_""" "
 .I $G(SHEDIT) D
 ..W "  onClick=""ShowSmallOrd()"" "
 ..W "  value="""_$$^%W1DICT("CANCELCHANGES")_""" "
 .W " />",!
 .W "</td>",!
 .W "<td colspan=""2"">",!
 .W " <input type=""button"" id=""Submit"" "
 .W "  class=""btnsmall"" style=""color:green"" "
 .I '$G(SHEDIT) W "  value="""_$$^%W1DICT("ORDERIT")_""" "
 .I $G(SHEDIT) W "  value="""_$$^%W1DICT("SUBMITCHANGES")_""" "
 .W "onClick=""Submit()"" />",!
 .W "</td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
VL(I,PRA,BGA,PRT)
 D TMPTF3
 I '$D(@TMPTF3@(I)) Q
 N CD S CD=$$CD^W3TMPTF(@TMPTF3@(I))
 ;
 I $$NEWGR(BGA) S NEWGR(BGA)=""
 N QNDEF S QNDEF=$$QNDEF(I,PRT)
 I $D(PRT),$D(NEWGR(BGA)),CD,QNDEF,$G(PRA)>1 D  Q
 .I $$SETTMPTF(I_";"_QNDEF)
 .W " value="""_QNDEF_""""
 ;
 I $$ORDERED(I) D
 .N VL S VL=$$QN(I)
 .D
 ..W " value="""_VL_""""
 ..S MQ("QNADD"_I)=VL
 ..S MQ("QNADD"_I,"PRA")=+PRA
 Q
 ;
QNDEF(I,PRT) ;
 I '$G(PRT) Q ""
 N CD S CD=$$CD^W3TMPTF($G(@TMPTF3@(I))) I 'CD Q ""
 Q $G(@$$^W4GL("QNDEF")@(PRT,CD))
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
MHVIEW(TXT) ;
 N MH S MH=$$MH^W3TMPTF(TXT)
 I 'MH,$$NOMHTSF^W3PRM S MH="&nbsp;"
 Q MH
 ;
ORDERED(I1)
 N A
 S A=$G(@$$^W3TMPTF@($$^%W1JB,UR,I1,"QN"))
 I A Q 1
 I A["+" Q 1
 Q 0
 ;
NOOD(I1)
 I $$TOTGR(I1)'<$$MAXGR(I1) Q 1
 Q 0
 ;
PIZZA(PRT) ;
 I '$D(^W1DICT("PIZZA",$$^%W1LNG)) Q 0
 I $$SUG1^W4P(PRT)[^W1DICT("PIZZA",$$^%W1LNG) Q 1
 Q 0
 ;
SETPIZZA(PRM) ;
 N PRZ,LN,COL,ST
 S PRZ=$P(PRM,";",2)
 S PRM=$P(PRM,";")
 S LN=+$P(PRM,"pizza",2)
 S COL=+$P(PRM,"img",2)
 N TMPTF3 D TMPTF3
 I '$G(UR) S UR=$S($$CSR:$$UR^W4MENUBT,1:3)
 S ST=$G(@TMPTF3@(LN,"QN"))
 S $E(ST,COL)=$S(PRZ="c":"-",1:"+")
 I COL=5,PRZ="" S ST="++++"
 I COL=5,PRZ="c" S ST="----"
 S @TMPTF3@(LN,"QN")=ST
 Q $$QNPIZZA(ST)
 ;
QNPIZZA(QN) ;
 N QNPIZZA S QNPIZZA=0
 N J F J=1:1:4 I $E(QN,J)="+" S QNPIZZA=QNPIZZA+1
 Q QNPIZZA
 ;
PIZZATOOMUCH(PRM) ;
 N BG S BG=$P(PRM,";")
 N MAX S MAX=$P(PRM,";",2) I 'MAX Q 0
 N IDTD S IDTD=$P(PRM,";",3)
 N LN S LN=+$P(IDTD,"pizza",2)
 I $$TOTGR(LN)>MAX Q 1
 I '$$QN3(LN),$$TOTGR(LN)'<MAX Q 1
 Q 0
 ;
P1EZKI(COD) ;
 Q $$^W3EZKI(COD)
 ;
 ;
P1EZKIG(COD) ;
 Q $$G^W3EZKI(COD)
 ;
 ;
SETTMPTF(PRM) ;
 N I,MAX,VL,ONE,BG,END,CD
 D TMPTF3
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S CD=$$CDI(I)
 S MAX=$$MAXGR(I)
 S TOT=$$TOTGR(I)
 S BG=$$GETBG(I)
 S END=$$GETEND(I)
 ;;W "BG="_BG_" END="_END_"  I="_I_" MAX="_MAX_" TOT="_TOT,!
 ;
 I CD["-C" D  Q 1
 .N BGC,ENDC
 .S @TMPTF3@(I,"QN")=1
 .N I1 F I1=I-1:-1:1 Q:$$CDI(I1)'["-C"
 .N I2 F I2=I1+1:1 Q:$$CDI(I2)'["-C"  D
 ..I I2'=I S @TMPTF3@(I2,"QN")=0
 ;
 I MAX="1!" D  Q 1
 .N N S N=BG-1 F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:N>END  D
 ..I N=I,VL S @TMPTF3@(N,"QN")=1 D SIGNFIRST(N) Q
 ..I $$CDI(N)["-C" Q
 ..S @TMPTF3@(N,"QN")=0
 ..D CLRCMT(N)
 ;
 ;
 I MAX,TOT+VL-$P(TOT,";",2)>MAX Q -1
 ;
 S @TMPTF3@(I,"QN")=VL
 ;
 I 'VL D CLRCMT(I)
 I VL D SIGNFIRST(I)
 Q 1
 ;
CDI(I) ;
 D TMPTF3
 Q $P($G(@TMPTF3@(I)),"~")
 ;
CDCI(I)
 N CD S CD=$$CDI(I)
 I CD["-C" Q 1
 Q 0
 ;
CDHI(I)
 N CD S CD=$$CDI(I)
 I CD["-H" Q 1
 Q 0
 ;
CDAI(I)
 N CD S CD=$$CDI(I)
 I $E(CD)="A" Q 1
 Q 0
 ;
CLRCMT(N) ;
 N N1 S N1=$O(@TMPTF3@(N)) Q:'N1
 N CD S CD=$$CDI(N)
 I $$CDI(N1)[(CD_"-C") D
 .K @TMPTF3@(N1,"QN")
 .F  S N1=$O(@TMPTF3@(N1)) Q:N1=""  Q:$$CDI(N1)'["-C"  K @TMPTF3@(N1,"QN")
 Q
SIGNFIRST(N)
 N N1 S N1=$O(@TMPTF3@(N)) Q:'N1
 N CD S CD=$$CDI(N)
 I $$CDI(N1)[(CD_"-C") D
 .N NEWC S NEWC=1
 .N IC,N2 S N2=N F IC=1:1 S N2=$O(@TMPTF3@(N2)) Q:N2=""  Q:$$CDI(N2)'["-C"  D
 ..I $G(@TMPTF3@(N2,"QN")) S NEWC=0
 .I NEWC S @TMPTF3@(N1,"QN")=1
 Q
GETBG(I)
 N BG S BG=1
 D TMPTF3
 N N S N=I I $G(@TMPTF3@(N))?1"A"1N.E Q (N+1)
 F  S N=$O(@TMPTF3@(N),-1) Q:N=""  I $G(^(N))?1"A"1N.E Q
 I N S BG=N+1
 Q BG
 ;
GETEND(I)
 N END,NO
 N N S N=I
 D TMPTF3
 I $G(@TMPTF3@(N))?1"A"1N.E S N=N+1
 F  S:N NO=N S N=$O(@TMPTF3@(N)) Q:N=""  I $G(^(N))?1"A"1N.E Q
 S END=NO
 Q END
 ;
TOTGR(I)
 N BG,END
 D TMPTF3
 S BG=$$GETBG(I)
 S END=$$GETEND(I)
 N N,TOT S N=BG-1,TOT=0
 ;;W "BG="+BG+" END="_END,!
 F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:N>END  I N D
 .S TOT=TOT+$$QN3(N)
 Q TOT_";"_$$QN3(I)
 ;
MAXGR(I)
 N BG S BG=$$GETBG(I)
 D TMPTF3
 I $G(BG)<1 Q 9999
 Q $P($G(@TMPTF3@(BG-1)),"~",4)
 ;
STADD0(PRM)
 N SHED,TXT
 S SHED=$P(PRM,";")
 S TXT=$P(PRM,";",2,20)
 N NM,CMNT
 S NM=$P(TXT,"~",3)
 S CMNT=$P(TXT,"~",7)
 S NM=$$CNWEB^%L1FRM(NM)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 S NM=$$INVH^%L1FRM(NM)
 S CMNT=$$INVH^%L1FRM(CMNT)
 S $P(TXT,"~",3)=NM
 S $P(TXT,"~",7)=CMNT
 D PUT^%W1PRM("STPAR",TXT)
 Q $$SETGR(SHED)
 ;
SETGR(PRM); --- AFTER SUBMIT
 N GORD D GORD
 N I,LI
 S LI=$O(@GORD@(9999),-1)
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 ;
 I $$EDIT(PRM) D  I LI<1 Q -1  ; -- EDIT
 .S LI=$$FINDSH^W3HZORD(PRM)
 .;;S STPAR=@GORD@(LI)
 ;
 I STPAR'?1"0~"1N.E Q -2
 ;
 N CDPAR S CDPAR=$P(STPAR,"~",2)
 I CDPAR="" Q -2.5
 S CM0=$P(STPAR,"~",5)
 I 'CM0 S CM0=1
 D TMPTF3
 ;
 N OK S OK=0
 F I=1:1 Q:'$D(@TMPTF3@(I))  D  Q:OK
 .I $$ORDERED(I) S OK=1
 ;
 I 'OK,$D(@$$^W4GL("P1EZT")@(CDPAR))>9!($D(@$$^W4GL("P1EZA")@(CDPAR))>9),'$$NOADD^W3PRM Q -3
 ;
 I $$EDIT(PRM) D  ;-- EDIT
 .D DELROW^W3HZORD(PRM)
 .N ST S ST=STPAR S $P(STPAR,"~",5)=CM0
 .D ADD^%L1GSEQ(GORD,LI,ST,1)
 .
 ;
 D
 .N CMNT S CMNT=$P(STPAR,"~",7)
 .I CMNT'["[",$$GET^%W1PRM("CHECKER") D
 ..N LK S LK=$$GET^%W1PRM("CODE") Q:LK=""
 ..S CMNT=CMNT_"["_$$H2U^%L1FRM($$SHORT^W3L(LK))_"]"
 .I '$L(PRM) D
 ..S @GORD@(LI+1)=$P(STPAR,"~",1,4)_"~"_CM0_"~"_$P(STPAR,"~",6)_"~"_CMNT_"~"_$P(STPAR,"~",8,9)
 ;
 N I,STT,QN,K S K=0
 F I=1:1 Q:'$D(@TMPTF3@(I))  S STT=$G(^(I)) D
 .S QN=$G(^(I,"QN")) I '$$ORDERED(I) Q
 .N ST S ST="1~"_STT_"~"_$S(CM0>1:CM0_"*"_QN,1:QN)
 .S K=K+1
 .I $G(PRM)="" D  Q
 ..S @GORD@($O(@GORD@(99999),-1)+1)=ST
 .D ADD^%L1GSEQ(GORD,LI+K,ST,1)
 Q 1
 ;
EDIT(PRM) ;
 I $E($G(PRM),1,3)="LV0" Q 1
 Q 0
 ;
NEWGR(BGA) ;
 N II,OK S OK=1
 D TMPTF3
 F II=BGA+1:1 Q:'$D(@TMPTF3@(II))  Q:$$GRA($G(@TMPTF3@(II)))  D  Q:'OK
 .I $$ORDERED(II) S OK=0 Q
 Q OK
 ;
NOQNDEF(BGA,PRT)
 N II,OK S OK=1
 I '$D(PRT) Q 1
 F II=BGA+1:1 Q:'$D(@$$^W3TMPTF@($$^%W1JB,UR,II))  Q:$$GRA($G(@$$^W3TMPTF@($$^%W1JB,UR,II)))  D  Q:'OK
 .N CD S CD=$P($G(@$$^W3TMPTF@($$^%W1JB,UR,II)),"~") Q:CD=""
 .I $G(@$$^W4GL("QNDEF")@(PRT,CD)) S OK=0
 Q OK
 ;
GRA(TXT) I $E(TXT)="A" Q 1
 Q 0
 ;
CMT(TXT) I $P(TXT,"~")["-C" Q 1
 Q 0
 ;
CMTY(TXT,I) I '$$CMT(TXT) Q 0
 N NN S NN=I-1
 F  S NN=$O(@$$^W3TMPTF@($$^%W1JB,UR,I),-1) Q:NN=""  Q:'$$CMT(@$$^W3TMPTF@($$^%W1JB,UR,I))
 I NN="" Q 0
 I '$D(@$$^W3TMPTF@($$^%W1JB,UR,I,1)) Q 0
 Q 1
 ;
TMPTFI(I) Q "^[$$^W3MAIN]TMPTF($$^%W1JB,UR,"_I_")"
 ;
QN3(I) ;
 N QN3 S QN3=$$QN(I)
 I $$CDCI(I)!$$CDHI(I)!$$CDAI(I) Q 0
 I QN3 Q QN3
 N K,J S K=0
 I QN3["+" D  Q K
 .F J=1:1:$L(QN3) I $E(QN3,J)="+" S K=K+1
 Q 0
 ;
QN(I) ;
 N TMPTF3
 D TMPTF3
 Q $G(@TMPTF3@(I,"QN"))
 ;
CSR(STAM) ;
 I $G(%ARG("CSR")) Q 1
 I $$GETP^%W1PRM("ELPOS") Q 1
 Q 0
 ;
CLRQN(QN) ;
 S QN=$Q(QN)
 I QN[":" Q $P(QN,":",2)
 Q QN
 ;
ISSETPIZZA(STPAR) ;
 Q $$^W4SETPIZ(STPAR)

W3HZTSF1
W3HZTSF(STPAR) ; [ 19.06.23 12:23 ] [ 15.03.18 14:42 ] [ 14.03.18 11:55 ] 
 N (JB,NMB,STPAR,FOCUS,%ARG)
 Q:'$G(JB)
 S SHEDIT=0
 S SHID=$G(%ARG("SHID"))
 I $L(SHID) D PUT^%W1PRM("SHID",SHID)
 ;
 D UR
 ;
 I SHID'="" S SHEDIT=$$FINDSH^W3HZORD(SHID)
 ;
 N PRA,EQA,CDA S PRA=0,EQA=0,BOX=0,CDA="",PIZZA=0
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;
 I $L($G(NMB))<4,'$$^W3MENU S NMB=$$NMB^W3HZMST(JB)
 S PRMHNMB=NMB
 D KILL^%W3DEB("W3HZTSF")
 D PUT^%W3DEB("W3HZTSF","JB=JB & STPAR=STPAR & MSD=MSD &NMB=NMB & SHEDIT=SHEDIT")
 Q:$G(STPAR)=""
 ;
 N I,N2,MH
 N W3HZTSF S W3HZTSF="" D INIT^W3HZTFR
 ;
 S PRT=$P(STPAR,"~",2)
 ;
 D PUT^%W3DEB("W3HZTSF","PRT=PRT")
 Q:PRT=""
 ;
 I PRT?1N.N.".".N D
 .I $P(STPAR,"~",3)="" S $P(STPAR,"~",3)=$$SHEM^W3P(PRT)
 .I $P(STPAR,"~",4)="" S $P(STPAR,"~",4)=$$MH^W3P(PRT)
 .D PUT^%W1PRM("STPAR",STPAR)
 ;
 S KOT(3)=$$SHEM^W4P(PRT)_"~"_PRT
CR ;
 D CRTMP(PRT,$$^W3TMPTF)
 ;
 I $G(SHEDIT) D SETQN(SHEDIT)
 K RPL,%ARG("RPL")
 D VIEW
 Q
 ;
 ;
CRTMP(PRT,GL) ;
 N I,MH,N2,KOT S I=0
 I $G(PRT)="" Q
 ;
 K @GL@($$^%W1JB,UR)
 S @GL@($$^%W1JB,UR)=PRT
 ;
 I '$$CSR,$$ISSETPIZZA(PRT) D SET(PRT,1,GL),SBORKA Q  ; -- PIZZA FROM AI
 ;
 I $D(@$$^W4GL("P1EZH")@(PRT)) D  ;;Q
 .S @GL@($$^%W1JB,UR,.5)="A~"_$$TV^%W1DICT($$^%W1LNG,"COMMENTS")_"~~1"
 .N IH S N2="" F IH=1:1 S N2=$O(@$$^W4GL("P1EZH")@(PRT,N2)) Q:N2=""  D
 ..S @GL@($$^%W1JB,UR,.5,IH)="H"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 ;
 ;
 I $D(@$$^W4GL("P1EZT")@(PRT))>9 D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZT")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..S I=+$G(@$$^W4GL("P1EZT")@(PRT,N2))
 ..N NMSET S NMSET=$$NMSET(N2)
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_NMSET_"~"_$$MHT(PRT,N2)_"~"_$$QN^W3SETA(N2)
 ..D SET(N2,I,GL)
 .D SBORKA
 ;
 I $D(@$$^W4GL("P1EZA")@(PRT))>9 D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZA")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..S I=+$G(@$$^W4GL("P1EZA")@(PRT,N2))
 ..N NMSET S NMSET=$$NMSET(N2)
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_NMSET_"~"_$$MHT(PRT,N2)_"~"_$$QN^W3SETA(N2)
 ..D SET(N2,I,GL)
 .D SBORKA
 ;
 I $D(@$$^W4GL("P1EZR")@(PRT)) D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZR")@(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S MH=0 K PRMHNMB
 ..S I=I+1
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$NAMEIT(N2)_"~"_$J(MH,2,2)_"~~R"
 ..N IH,N3,I1 S N3="",I1=0
 ..F  S N3=$O(@$$^W4GL("P1SBR")@(N3)) Q:N3=""  D
 ...S I1=I1+1
 ...S @GL@($$^%W1JB,UR,I,I1)=N2_"-C"_N3_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1SBR")@(N3)),20)_"~~~"
 .D SBORKA
 ;
 I $D(@$$^W4GL("P1EZI")@(PRT))>9 D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S $P(@GL@($$^%W1JB,UR,I),"~",4)=+$G(@$$^W4GL("P1EZI")@(PRT))
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZI")@(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S MH=+$$MH($G(NMB),N2,PRT)
 ..S I=$G(@$$^W4GL("P1EZI")@(PRT,N2)) I I S I=I+1
 ..I 'I!$D(@GL@($$^%W1JB,UR,I)) S I=$O(@GL@($$^%W1JB,UR,9999),-1)+1
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$NAMEIT(N2)_"~"_$J(MH,2,2)
 ..D HR21(N2)
 ;
 I $$P1EZKI(PRT) D  Q
 .S I=I+1
 .N SUG S SUG=+$$SUG^W4P(PRT)
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZKI")@(SUG,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S I=$G(@$$^W4GL("P1EZKI")@(SUG,N2)) I I S I=I+1
 ..I 'I!$D(@GL@($$^%W1JB,UR,I)) S I=$O(@GL@($$^%W1JB,UR,9999),-1)+1
 ..S MH=+$$MH(+$G(NMB),N2)
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$NAMEIT(N2)_"~"_$J(MH,2,2)
 ..D HR21(N2)
 ;
 Q
 ;
 ;
NMSET(NS)
 I $$ENG Q $P($G(@$$^W4GL("P1SETA")@(NS)),"\",4)
 Q $$HBR^%L1FRM($$NM^W3SETA(NS),20)
 ;
NAMEIT(PRT)
 I $$ENG Q $$NAMENG^W3PRTPC(PRT)
 Q $$HBR^%L1FRM($$SHEM^W4P(PRT),20)
 ;
SET(N2,I,GL) ;
 N SET S SET=$E(N2,2,6)
 N N3,I1 S N3="",I1=0 F  S N3=$O(@$$^W4GL("P1SETA")@(SET,N3)) Q:N3=""  D
 .Q:$$NOHZG(N3)
 .N I1 S I1=$G(@$$^W4GL("P1SETA")@(SET,N3))
 .S @GL@($$^%W1JB,UR,I,I1)=N3_"~"_$$NAMEIT(N3)_"~"_$$MHT(PRT,N3)
 .D HR2(N3)
 Q
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
SETQN(SHED)
 N GORD,A,MQN,CD,QN
 D TMPTF3
 D GORD
 N SH F SH=SHED+1:1 Q:'$D(@GORD@(SH))  S A=$G(^(SH)) Q:$P(A,"~")=0  D
 .S CD=$P(A,"~",2)
 .S QN=$P(A,"~",5)
 .I QN["*" S QN=$P(QN,"*",2)
 .I CD["-C",'QN S QN=1
 .N QNP S QNP=$$QNP^W4PIZZA(QN)
 .I $L($G(PRT)) D
 ..N DIV S DIV=$$^W4PIZZA(PRT) Q:'DIV
 ..N J,QNP1 S QNP1="" F J=1:1:DIV S $E(QNP1,J)=$S($E(QNP,J)="+":"+",1:"-")
 ..S QNP=QNP1
 .S MQN(CD)=QNP
 ;
 N I,CDT S I="" F  S I=$O(@TMPTF3@(I)) Q:'I   D
 .S CDT=$$CDI(I)
 .I $D(MQN(CDT)) S @TMPTF3@(I,"QN")=MQN(CDT)
 K MQN
 Q
 ;
SETPARST(PRM) ;
 N ST,CMNT,QN
 S ST=$$GET^%W1PRM("STPAR")
 I ST=""!(ST["<UNDEF") Q
 S CMNT=$$CLEAR^%L1FRM($$CNWEB^%L1FRM($P(PRM,";",2)))
 I $$^%W1DIR="RTL",$L(CMNT) S CMNT=$$INVH^%L1FRM(CMNT)
 S QN=$P(PRM,";",1) S:'QN QN=1
 S $P(ST,"~",5)=QN
 S CMNT=$TR(CMNT,"~\","-/")
 S $P(ST,"~",7)=$TR(CMNT,"?","")
 D PUT^%W1PRM("STPAR",ST)
 Q
 ;
NOHZG(N2) ;
 I $D(^[$$^%W1UCI(JB)]PRTNO(N2)) Q 1
 I '$D(^[$$^%W1UCI(JB)]PAR(N2)) Q 1
 I $$NOPAR^W4PRTVW(N2) Q 1
 Q 0
 ;
 ;
MHT(PRT,SUB)
 Q $J($G(@$$^W4GL("MHT")@(PRT,SUB)),2,2)
 ;
 ;
HR2(CODT,PRM)
 I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N I2 S I2=0
 .N IH,N2 S N2="" F  S N2=$O(@$$^W4GL("P1EZH")@(CODT,N2)) Q:N2=""  D
 ..S I2=I2+1
 ..S @GL@($$^%W1JB,UR,I,I1,I2)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 ;
 ;;I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N IH,N2 S N2="" F  S N2=$O(@$$^W4GL("P1EZH")@(CODT,N2)) Q:N2=""  D
 ..S I1=I1+1
 ..S @GL@($$^%W1JB,UR,I,I1)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 Q
 ;
HR21(CODT,PRM)
 I $D(@$$^W4GL("P1EZH")@(CODT)) D  Q
 .N IH,N2,I1 S N2="",I1=0
 .F  S N2=$O(@$$^W4GL("P1EZH")@(PRT,N2)) Q:N2=""  D
 ..S I1=I1+1
 ..S @GL@($$^%W1JB,UR,I,I1)=CODT_"-C"_N2_"~"_$$HBR^%L1FRM($G(@$$^W4GL("P1CODH")@(N2)),20)_"~~~"
 Q
 ;
LI(STAM) Q $O(@GL@($$^%W1JB,UR,99999),-1)
 ;
 ;
SBORKA ;
 N I S I=0
 N GL0 S GL0=GL_"0" ; -- GL = ^TMPTF
 K @GL0@($$^%W1JB)
 M @GL0@($$^%W1JB,UR)=@GL@($$^%W1JB,UR)
 K @GL@($$^%W1JB,UR)
 N N,N1,N2
 ;
 S N="" F  S N=$O(@GL0@($$^%W1JB,UR,N)) Q:N=""  D
 .S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N))
 .S N1="" F  S N1=$O(@GL0@($$^%W1JB,UR,N,N1)) Q:N1=""  D
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N,N1))
 ..S N2="" F  S N2=$O(@GL0@($$^%W1JB,UR,N,N1,N2)) Q:N2=""  D
 ...S I=I+1,@GL@($$^%W1JB,UR,I)=$G(@GL0@($$^%W1JB,UR,N,N1,N2))
 I $D(@GL0@($$^%W1JB,UR))#2 S @GL@($$^%W1JB,UR)=@GL0@($$^%W1JB,UR)
 K @GL0@($$^%W1JB)
 Q
 ;
 ;
VIEW ;
 D TMPTF3
 ;
 K MTOT,MQ,NEWGR
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""height:98%"
 I $$PRM^W3IMG("CLKAVADD")'?.P D
 .N CLRBRD S CLRBRD=$$PRM^W3IMG("CLKAVADD")
 .I CLRBRD?.P S CLRBRD="grey"
 .I $$^%W1DIR="RTL" W ";border-right:1px solid "_CLRBRD Q
 .W ";border-left:1px ridge grey;" Q
 W """"
 W ">",!
 ;
 S PIZZA=0 S PIZZA=$$^W4PIZZA(+$G(PRT))
 ;
 I $$^W4SMALL D
 .N W5EDIT
 .S W5EDIT("QN")=$P(STPAR,"~",5)
 .S W5EDIT("CMNT")=$P(STPAR,"~",7)
 .D STR^W5HZPRT(PRT)
 .W "<br>",!
 ;
 I $D(@TMPTF3)<10 D:$$^W4SMALL  W "</div>" Q
 .N BGA S BGA=1
 .W "<table>",!
 .D SUBMGR(1)
 .W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""95%"" id=""TblAdd"" name=""TblAdd"" "
 I $$^W4SMALL W " cellspacing=""20"" "
 D
 .N CLR S CLR=$$FGADD^W3CSS
 .I $$^W4SMALL S CLR="black"
 .W "style=""color:"_CLR
 ;
 W """ border=""0"">",!
 ;
 N NMPRT S NMPRT=$$SHEM^W4P(PRT)
 S NMPRT=$$RPL^%L1FRM(NMPRT,"()","")
 S NMPRT=$$RPL^%L1FRM(NMPRT,"[]","")
 W "<tr class=""tdth"">",!
  W " <td style='font-size:"_$$^W3FSZ_";color:"_$$FGADDTO^W3CSS_"' colspan='3'>"
        W $$RPL^%L1FRM($$^%W1DICT("ADDITIONSTO")," ","&nbsp;")_" "
        I '$$CSR W "<span class=""hdaddit"" >"
        I $$CSR W "<span style=""color:green;font-size:"_$$^W3FSZ(16)_""" >"
        W "&nbsp;"_$$H2U^%L1FRM(NMPRT)_"&nbsp;"
        W "</span>"
  W "</td>",!
 W "</tr>",!
 ;
 I $$^W4TSF(PRT) D
 .S PRA=$$MAX^W4TSF(PRT)
 .S TX=""
 .I $G(PRA),EQA D
 ..I PRA>1 S TX=$$^W3MSG("QNEXACTLY~"_PRA) Q
 ..S TX="" ;$$^W3MSG("QNEXACTLY1~"_PRA) Q
 .
 .I $G(PRA),'EQA D
 ..S TX=$$^W3MSG("QNMAX~"_PRA)
 .
 .I $L(TX) W "<tr><td colspan=""4"" style=""color:black;text-align:center"">"_TX_"</td></tr>",!
 ;
 N PRCMT,BGA S BGA=0,PRCMT=0 S SELPAR=0
 ;
 N I S I="" F  S I=$O(@TMPTF3@(I)) Q:I=""  I I D
 .N VALUE,TXT,HRF S TXT=$G(@TMPTF3@(I)) S HRF=0
 .S VALUE="&nbsp;"
 .;
 .N CDT S CDT=$P($P(TXT,"~"),"-")
 .
 .I '$$GRA(TXT) D  W "</tr>",! Q  ;
 ..I '$$CMT(TXT) W "<tr id=""trad"_I_""" style=""font-weight:"_$$ADDWEIGHT^W3CSS
 ..I $$CMT(TXT) W "<tr id=""trcm"_I ; S HEAROT
 ..W """>",!
 ..
 ..W "<td id='idad"_I_"'" ; ------- TD NAIM-YA --------------------
 ..I $$CSR W " style=""font-weight:bold"" "
 ..
 ..I $$^W4SMALL W " width=""55%"" "
 ..;
 ..I $$CMT(TXT) D  Q  ; --- HEAROT
 ...S PRCMT=1
 ...W "><select id=""sel"_I_""" onChange=""selChange("_I_")"""
 ...I 'SELPAR W " disabled=""disabled"""
 ...W ">",!
 ...N I1,CHC S CHC=0
 ...S I1=I-1 F  S I1=$O(@TMPTF3@(I1)) Q:'I1  I I1 S TXT=$G(@TMPTF3@(I1)) Q:'$$CMT(TXT)  D
 ....W "<option id=""opt"_I1_""" value="""_TXT_""""
 ....I $$ORDERED(I1) W " selected=""selected""" S CHC=1
 ....W ">",$$H2U^%L1FRM($$NM^W3TMPTF(TXT)),"</option>",!
 ...W "</select>",!
 ...W "</td>"
 ...S I=I1-1
 ..;
 ..I $G(CDT),'$$USCHK&'$$^W4PIZZA(PRT) D  ; --------------------- SETS
 ...N CLR S CLR=$$FGADD^W3CSS I $$^W4SMALL S CLR="black"
 ...W " style=""cursor:pointer;color:"_CLR_""" "
 ... W " onClick=""qnClickNm("_+BGA_","_+I_","_+PRA_")"""
 ..
 ..W ">" ; ------ TD
 ..
 ..I '$$^W4SMALL,$G(CDT),$G(@$$^W4GL("L1TIP")@("MTK",CDT,1))'?.P D
 ...W " <img src=""w3inf.png"" style=""cursor:pointer"" onMouseOver=""OpenDescr('"_CDT_"')"" onMouseOut=""CloseDescr()"" >"
 ..
 ..I $G(CDT),$$USCHK,'$$^W4PIZZA(PRT) D
 ...W "<label id=""lbnm"_I_""" for=""QNADD"_I_""" style=""cursor:pointer"
 ....I $$ORDERED(I) W ";color:black" Q
 ....W ";color:brown" Q
 ...W """>"
 ..
 ..W $$H2U^%L1FRM($$NM^W3TMPTF(TXT)) ; --- NAME
 ..
 ..I $G(CDT),$$USCHK,'$$^W4PIZZA(PRT) D
 ...W "</label>"
 ..;
 ..W "</td>",!
 ..Q:'$G(CDT)
 ..;-------------------------------- KONEC NAIM-YA ------------------
 ..
 ..W "<td style=""color:"_$$FGMHADD^W3CSS_""" "
 ..I $$^W4SMALL W " width=""16%"" "
 ..W ">"_$$MHVIEW(TXT)_"</td>",! ; --- MAHIR
 ..
 ..;------------------------ QUANTUTY --------------------------------
 ..;
 ..I $$^W4PIZZA(PRT) D SHOWPIZZA(I,BGA,PRA,$$^W4PIZZA(PRT)) Q  ; --- CHOICE PIZZA ADDONS
 ..
 ..I $$USCHK D  ; --- QUANTITY RADIO
 ...W "<td align=""center"" >"
 ...N CHKBOX,CHECKED S CHKBOX=0
 ...I EQA W "<input type=""radio"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 ...I 'EQA W "<input type=""checkbox"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 ...S SELPAR=0 I $$ORDERED(I) D
 ....W " checked=""checked""" S SELPAR=1 D SIGNFIRST(I)
 ...I $$NEWGR(BGA),$$NOQNDEF(BGA,PRT),I=(BGA+1),'$G(SHEDIT),EQA D
 ....W " checked=""checked"" " S SELPAR=1 I $$SETTMPTF(I_";"_1)
 ...I $$NEWGR(BGA),'$$NOQNDEF(BGA,PRT),$$QNDEF(I,PRT),'$G(SHEDIT) D
 ....W " checked=""checked"" " S SELPAR=1 I $$SETTMPTF(I_";"_1)
 ...I EQA W " onClick=""radClick("_BGA_","_I_",'!')"""
 ...I 'EQA W " onClick=""radClick("_BGA_","_I_",'"_+PRA_"')"""
 ...W " />"
 ...I $$^W4SMALL D
 ....W "<label for=""QNADD"_I_""" id=""lb"_I_""" "
 ....I +EQA'=1 W "class=""bgbtn"" "
 ....I +EQA=1 W "class=""bgradio"" "
 ....W " style=""cursor:pointer"">"
 ....I SELPAR D
 .....W $$SHOWV^W3CSM(EQA)
 ....I 'SELPAR D
 .....W $$SHOWO^W3CSM
 ....W "</label>",!
 ...W "</td>",!
 ..
 ..
 ..I '$$USCHK D  ; --- QUANTITY INPUT BOX -----
 ...W "<td align=""center"">"
 ...N HRFA S HRFA=0
 ...D  ; +
 ....W "<span "
 ....W " onClick=""qnClickNm("_+BGA_","_+I_","_+PRA_")"""
 ....N FSZ S FSZ=11 I $$SMALL^W4SMALL S FSZ=16
 ....W " style=""cursor:pointer;font-size:"_$$^W3FSZ(FSZ)
 ....W ";color:"_$$FGPLUS^W3CSS_";font-weight:bold"">"
 ....W "+"
 ....W "&nbsp;"
 ....W "</span>"
 ...
 ...W "<input type=""text"" name=""QNADD"_BGA_""" id=""QNADD"_I_""""
 ... I '$$^W4SMALL D
 ....  W " style=""width:22px;background-color:"_$$BGQNADD^W3CSS($$COLOR^W3CSS)
 ....  W """ onKeyUp=""OnKeyUp("_I_","_BGA_","_+PRA_")"""
 ....  W " onClick=""QntClick(this,"_I_","_BGA_","_+PRA_")"""
 ... I $$^W4SMALL D
 .... W " readonly=""readonly"" "
 .... W " style=""font-size:"_$$^W3FSZ(14)
 .... I $$^W4SIMUL W ";width:22px"
 .... W """ "
 .... W " size=""1"" maxlength=""2"" "
 ...  D VL(I,PRA,BGA,PRT)
 ...W " />"
 ...
 ...D  ; -
 ....W "<span "
 ....W " onClick=""qnMin("_+I_","_BGA_","_+PRA_")"""
 ....N FSZ S FSZ=16 I $$SMALL^W4SMALL S FSZ=22
 ....W " style=""cursor:pointer;font-size:"_$$^W3FSZ(FSZ)
 ....W ";color:"_$$FGMIN^W3CSS_";font-weight:bold"">"
 ....W "&nbsp;-</span>" S HRFA=0
 ...
 ...W "</td>",! ; ----------- END QUANTITY INPUT BOX --------------
 .
 .
 .I $$GRA(TXT) D  ; --- START OF GROUP - HEADER
 ..N BGAO
 ..I $G(BGA) D SUBMGR(0)
 ..S BGAO=$G(BGA)
 ..N PRA0 S PRA0=$$PR^W3TMPTF($G(@TMPTF3@(I)))
 ..S PRA=+PRA0
 ..S BGA=I,EQA=$$EQ^W3TMPTF($G(@TMPTF3@(I))),SELPAR=0
 ..S BOX=$$BOX^W3TMPTF($G(@TMPTF3@(I))) ; -- QN
 ..
 ..I '$$CSR D
 ...W "<a name=""B"_BGA_"""></a>",!
 ...W "<tr id=""trai"_I_""" name=""trai"" >",!
 ...W "<td id='idai"_I_"' abbr='"_PRA0_"' class='hdai' colspan=3>" ;--- GROUP HEADER
 ...
 ...I BGAO W "<a name=""G"_$G(BGAO)_""" id=""G"_$G(BGAO)_""">"
 ...W:I>2 "<br>" W $$H2U^%L1FRM($$NM^W3TMPTF(TXT))
 ...
 ...N TX S TX=""
 ...
 ...I $G(PRA),EQA D
 ....I PRA>1 S TX=$$^W3MSG("QNEXACTLY~"_PRA) Q
 ....S TX="" ;$$^W3MSG("QNEXACTLY1~"_PRA) Q
 ...
 ...I $G(PRA),'EQA D
 ....I PRA S TX=$$^W3MSG("QNMAX~"_PRA) Q
 ....S TX="" ;$$^W3MSG("QNMAX~"_PRA) Q
 ...
 ...W "<span style=""color:"_$$FGMAXADD^W3CSS_";font-size:"_$$^W3FSZ(9)_""">"_TX_"</span>",!
 ...I $G(PIZZA) D
 ....W "<br>"
 ....S TX=$S($$^W4PIZZA(PRT)=4:$$^%W1DICT("PIZZAPRICE24"),$$^W4PIZZA(PRT)=2:$$^%W1DICT("PIZZAPRICE22"),1:"")
 ....W "<span style=""color:"_$$FGMAXADD^W3CSS_";font-size:"_$$^W3FSZ(9)_""">"_TX_"</span>",!
 ...W "</td>",!
 ..W "</tr>",!
 ;
 D SUBMGR(1)
 ;
 W "</table>",!
 W "<br><br>",!
 W "</div>",!
 ;
 I $D(SCRY) D  K SCRY
 .W "<script>",!
 .W " self.window.scrollTo(100,"_(SCRY*10)_");",!
 .W "</script>",!
 ;
 I $D(MTOT) D  K MTOT
 .D PUT^%W3DEB("W3HZTSF","MTOT=[MTOT")
 .W "<script>",!
 .N N S N="" F  S N=$O(MTOT(N)) Q:N=""  D
 ..W "  SetTot("_N_");",!
 ..W "  ReadOnly('"_MTOT(N)_"');",!
 .W "</script>",!
 ;
 Q
 ;
 ;
TMPTF3 S TMPTF3="^[$$^W3MAIN]TMPTF($$^%W1JB,UR)"
 Q
 ;
USCHK(STAM) ;
 ;;I +$G(PRA)=1&EQA&BGA!('EQA&'BOX) Q 1
 ;I +$G(PRA)=1&EQA&BGA Q 1
 I +$G(PRA)=1,$G(BOX)'>1 Q 1
 Q 0
 ;
SUBMGR(PRZ) ;
 W "<tr id=""trend"_BGA_""">",!
 W "<td>&nbsp;</td></tr>",!
 ;
 I $G(PRA)>1,'$G(PIZZA) D
 .W "<tr id=""trtot"_BGA_""">",!
 .W "<td style=""font-size:"_$$^W3FSZ_";color:"_$$FGTOTADD^W3CSS_""" ><span>"
 .W $$^%W1DICT("ITEMSTOT")_"</td><td>&nbsp;</span></td>"
 .W "<td><input type=""text"" style=""width:"_$$KF^W3CSM(90)_";font-size:"_$$^W3FSZ_";color:red"""
 . W " name=""totgr"_BGA_""" id=""totgrid"_BGA_""" />"
 .S MTOT(BGA)="totgrid"_BGA
 .W "</td></tr>",!
 W !
 I $G(PRZ),'$$CSR D TRBUT ; -- LAST BUTTON
 Q
 ;
 ;
TRBUT ;
 W "<tr id=""trbut"_BGA_""">"
 ;
 I '$$^W4SMALL D
 .W " <td colspan=""2""><br />",!
 .D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDBACK"),"Submit()","color:green",",,,160")
 .W "</td>"
 ;
 I $$^W4SMALL D
 .W "<td>",!
 .W " <input type=""button"" id=""Back"" "
 .W "  class=""btnsmall"" style=""color:red"" "
 .I '$G(SHEDIT) D
 ..W "  onClick=""Back2Menu()"" "
 ..W "  value="""_$$^%W1DICT("BACK2MENU")_""" "
 .I $G(SHEDIT) D
 ..W "  onClick=""ShowSmallOrd()"" "
 ..W "  value="""_$$^%W1DICT("CANCELCHANGES")_""" "
 .W " />",!
 .W "</td>",!
 .W "<td colspan=""2"">",!
 .W " <input type=""button"" id=""Submit"" "
 .W "  class=""btnsmall"" style=""color:green"" "
 .I '$G(SHEDIT) W "  value="""_$$^%W1DICT("ORDERIT")_""" "
 .I $G(SHEDIT) W "  value="""_$$^%W1DICT("SUBMITCHANGES")_""" "
 .W "onClick=""Submit()"" />",!
 .W "</td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
VL(I,PRA,BGA,PRT)
 D TMPTF3
 I '$D(@TMPTF3@(I)) Q
 N CD S CD=$$CD^W3TMPTF(@TMPTF3@(I))
 ;
 I $$NEWGR(BGA) S NEWGR(BGA)=""
 N QNDEF S QNDEF=$$QNDEF(I,PRT)
 I $D(PRT),$D(NEWGR(BGA)),CD,QNDEF,$G(PRA)>1 D  Q
 .I $$SETTMPTF(I_";"_QNDEF)
 .W " value="""_QNDEF_""""
 ;
 I $$ORDERED(I) D
 .N VL S VL=$$QN(I)
 .D
 ..W " value="""_VL_""""
 ..S MQ("QNADD"_I)=VL
 ..S MQ("QNADD"_I,"PRA")=+PRA
 Q
 ;
QNDEF(I,PRT) ;
 I '$G(PRT) Q ""
 N CD S CD=$$CD^W3TMPTF($G(@TMPTF3@(I))) I 'CD Q ""
 N A S A=$G(@$$^W4GL("QNDEF")@(PRT,CD))
 I A Q +A
 Q ""
 ;
MH(NMB,COD,MAIN) ;
 Q $$MH^W4HZTSF(NMB,COD,$G(MAIN))
 ;
 N PRMHNMB,ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
MHVIEW(TXT) ;
 N MH S MH=$$MH^W3TMPTF(TXT)
 I $$GETP^%W1PRM("LMAM") S MH=$J(MH*100/(100+$$GETP^%W1PRM("AHMAM")),2,2)
 I 'MH,$$NOMHTSF^W3PRM S MH="&nbsp;"
 Q MH
 ;
ORDERED(I1)
 N A
 S A=$G(@$$^W3TMPTF@($$^%W1JB,UR,I1,"QN"))
 I A Q 1
 I A["+" Q 1
 Q 0
 ;
NOOD(I1)
 I $$TOTGR(I1)'<$$MAXGR(I1) Q 1
 Q 0
 ;
PIZZA(PRT) ;
 I '$D(^W1DICT("PIZZA",$$^%W1LNG)) Q 0
 I $$SUG1^W4P(PRT)[^W1DICT("PIZZA",$$^%W1LNG) Q 1
 Q 0
 ;
SETPIZZA(PRM) ;
 N PRZ,LN,NOM,ST,DIV,ST
 S PRZ=$P(PRM,";",2)
 S DIV=$P(PRM,";",3)
 S PRM=$P(PRM,";")
 S LN=+$P(PRM,"pizza",2)
 S NOM=+$P(PRM,"img",2)
 ;
 N TMPTF3 D TMPTF3
 D UR
 ;
 S ST=$G(@TMPTF3@(LN,"QN"))
 ;
 I NOM'>DIV S $E(ST,NOM)=$S(PRZ="c":"-",1:"+")
 ;
 I NOM>DIV,PRZ="" S ST=$TR($J("",DIV)," ","+")
 I NOM>DIV,PRZ="c" S ST=$TR($J("",DIV)," ","-")
 ;
 S ST=ST_$J("",DIV-$L(ST))
 S ST=$TR(ST," ","-")
 S @TMPTF3@(LN,"QN")=ST
 Q $$QNPIZZA(ST)
 ;
 ;
QNPIZZA(QN) ;
 N QNPIZZA S QNPIZZA=0
 N J F J=1:1:4 I $E(QN,J)="+" S QNPIZZA=QNPIZZA+1
 Q QNPIZZA
 ;
PIZZATOOMUCH(PRM) ;
 N BG S BG=$P(PRM,";")
 N MAX S MAX=$P(PRM,";",2) I 'MAX Q 0
 N IDTD S IDTD=$P(PRM,";",3)
 N LN S LN=+$P(IDTD,"pizza",2)
 I $$TOTGR(LN)>MAX Q 1
 I '$$QN3(LN),$$TOTGR(LN)'<MAX Q 1
 Q 0
 ;
P1EZKI(COD) ;
 Q $$^W3EZKI(COD)
 ;
 ;
P1EZKIG(COD) ;
 Q $$G^W3EZKI(COD)
 ;
 ;
SETTMPTF(PRM) ;
 N I,MAX,VL,ONE,BG,END,CD
 D TMPTF3
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S CD=$$CDI(I)
 S MAX=$$MAXGR(I)
 S TOT=$$TOTGR(I)
 S BG=$$GETBG(I)
 S END=$$GETEND(I)
 ;;W "BG="_BG_" END="_END_"  I="_I_" MAX="_MAX_" TOT="_TOT,!
 ;
 I CD["-C" D  Q 1
 .N BGC,ENDC
 .S @TMPTF3@(I,"QN")=1
 .N I1 F I1=I-1:-1:1 Q:$$CDI(I1)'["-C"
 .N I2 F I2=I1+1:1 Q:$$CDI(I2)'["-C"  D
 ..I I2'=I S @TMPTF3@(I2,"QN")=0
 ;
 I MAX["1!"!(MAX["1=") D  Q 1
 .N N S N=BG-1 F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:N>END  D
 ..I N=I,VL S @TMPTF3@(N,"QN")=1 D SIGNFIRST(N) Q
 ..I $$CDI(N)["-C" Q
 ..S @TMPTF3@(N,"QN")=0
 ..D CLRCMT(N)
 ;
 ;
 I MAX,TOT+VL-$P(TOT,";",2)>MAX Q -1
 ;
 S @TMPTF3@(I,"QN")=VL
 ;
 I 'VL D CLRCMT(I)
 I VL D SIGNFIRST(I)
 Q 1
 ;
CDI(I) ;
 D UR
 D TMPTF3
 Q $P($G(@TMPTF3@(I)),"~")
 ;
CDCI(I)
 N CD S CD=$$CDI(I)
 I CD["-C" Q 1
 Q 0
 ;
CDHI(I)
 N CD S CD=$$CDI(I)
 I CD["-H" Q 1
 Q 0
 ;
CDAI(I)
 N CD S CD=$$CDI(I)
 I $E(CD)="A" Q 1
 Q 0
 ;
CLRCMT(N) ;
 D UR
 N N1 S N1=$O(@TMPTF3@(N)) Q:'N1
 N CD S CD=$$CDI(N)
 I $$CDI(N1)[(CD_"-C") D
 .K @TMPTF3@(N1,"QN")
 .F  S N1=$O(@TMPTF3@(N1)) Q:N1=""  Q:$$CDI(N1)'["-C"  K @TMPTF3@(N1,"QN")
 Q
 ;
SIGNFIRST(N)
 D UR
 N N1 S N1=$O(@TMPTF3@(N)) Q:'N1
 N CD S CD=$$CDI(N)
 I $$CDI(N1)[(CD_"-C") D
 .N NEWC S NEWC=1
 .N IC,N2 S N2=N F IC=1:1 S N2=$O(@TMPTF3@(N2)) Q:N2=""  Q:$$CDI(N2)'["-C"  D
 ..I $G(@TMPTF3@(N2,"QN")) S NEWC=0
 .I NEWC S @TMPTF3@(N1,"QN")=1
 Q
 ;
GETBG(I)
 N UR D UR
 N BG S BG=1
 D TMPTF3
 N N S N=I I $G(@TMPTF3@(N))?1"A"1N.E Q (N+1)
 F  S N=$O(@TMPTF3@(N),-1) Q:N=""  I $G(^(N))?1"A"1N.E Q
 I N S BG=N+1
 Q BG
 ;
GETEND(I)
 N UR D UR
 N END,NO
 N N S N=I
 D TMPTF3
 I $G(@TMPTF3@(N))?1"A"1N.E S N=N+1
 F  S:N NO=N S N=$O(@TMPTF3@(N)) Q:N=""  I $G(^(N))?1"A"1N.E Q
 S END=NO
 Q END
 ;
TOTGR(I)
 N UR D UR
 N BG,END
 D TMPTF3
 S BG=$$GETBG(I)
 S END=$$GETEND(I)
 N N,TOT S N=BG-1,TOT=0
 ;;W "BG="+BG+" END="_END,!
 F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:N>END  I N D
 .S TOT=TOT+$$QN3(N)
 Q TOT_";"_$$QN3(I)
 ;
MAXGR(I)
 D UR
 N BG S BG=$$GETBG(I)
 D TMPTF3
 I $G(BG)<1 Q 9999
 Q $P($G(@TMPTF3@(BG-1)),"~",4)
 ;
STADD0(PRM)
 N SHED,TXT
 S SHED=$P(PRM,";")
 S TXT=$P(PRM,";",2,20)
 N NM,CMNT
 S NM=$P(TXT,"~",3)
 S CMNT=$P(TXT,"~",7)
 S NM=$$CNWEB^%L1FRM(NM)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 S NM=$$INVH^%L1FRM(NM)
 S CMNT=$$INVH^%L1FRM(CMNT)
 S $P(TXT,"~",3)=NM
 S $P(TXT,"~",7)=CMNT
 D PUT^%W1PRM("STPAR",TXT)
 Q $$SETGR(SHED)
 ;
 ;
SETGR(PRM); --- AFTER SUBMIT
 N GORD D GORD,UR
 N I,LI
 S LI=$O(@GORD@(9999),-1)
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 ;
 I $$EDIT(PRM) D  I LI<1 Q -1  ; -- EDIT
 .S LI=$$FINDSH^W3HZORD(PRM)
 .;;S STPAR=@GORD@(LI)
 ;
 I STPAR'?1"0~"1N.E Q -2
 ;
 N CDPAR S CDPAR=$P(STPAR,"~",2)
 I CDPAR="" Q -2.5
 S CM0=$P(STPAR,"~",5)
 I 'CM0 S CM0=1
 D TMPTF3
 ;
 N OK S OK=0
 S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  D:I  Q:OK
 .I $$ORDERED(I) S OK=1
 ;
 I 'OK,$D(@$$^W4GL("P1EZT")@(CDPAR))>9!($D(@$$^W4GL("P1EZA")@(CDPAR))>9),'$$NOADD^W3PRM Q -3
 ;
 I $$EDIT(PRM) D  ;-- EDIT
 .D DELROW^W3HZORD(PRM)
 .N ST S ST=STPAR S $P(STPAR,"~",5)=CM0
 .D ADD^%L1GSEQ(GORD,LI,ST,1)
 .
 ;
 D
 .N CMNT S CMNT=$P(STPAR,"~",7)
 .I CMNT'["[",$$GET^%W1PRM("CHECKER") D
 ..N LK S LK=$$GET^%W1PRM("CODE") Q:LK=""
 ..S CMNT=CMNT_"["_$$H2U^%L1FRM($$SHORT^W3L(LK))_"]"
 .I '$L(PRM) D
 ..S @GORD@(LI+1)=$P(STPAR,"~",1,4)_"~"_CM0_"~"_$P(STPAR,"~",6)_"~"_CMNT_"~"_$P(STPAR,"~",8,9)
 ;
 N I,STT,QN,K S K=0
 S I="" F  S I=$O(@TMPTF3@(I)) Q:'I  I I S STT=$G(^(I)) D
 .S QN=$G(^(I,"QN")) I '$$ORDERED(I) Q
 .N ST S ST="1~"_STT_"~"_$S(CM0>1:CM0_"*"_QN,1:QN)
 .S K=K+1
 .I $G(PRM)="" D  Q
 ..S @GORD@($O(@GORD@(99999),-1)+1)=ST
 .D ADD^%L1GSEQ(GORD,LI+K,ST,1)
 Q 1
 ;
EDIT(PRM) ;
 I $E($G(PRM),1,3)="LV0" Q 1
 Q 0
 ;
NEWGR(BGA) ;
 N II,OK S OK=1
 D TMPTF3
 S II=BGA F II=$O(@TMPTF3@(II)) Q:II=""  I II Q:$$GRA($G(@TMPTF3@(II)))  D  Q:'OK
 .I $$ORDERED(II) S OK=0 Q
 Q OK
 ;
NOQNDEF(BGA,PRT)
 N II,OK S OK=1
 I '$D(PRT) Q 1
 F II=BGA+1:1 Q:'$D(@$$^W3TMPTF@($$^%W1JB,UR,II))  Q:$$GRA($G(@$$^W3TMPTF@($$^%W1JB,UR,II)))  D  Q:'OK
 .N CD S CD=$P($G(@$$^W3TMPTF@($$^%W1JB,UR,II)),"~") Q:CD=""
 .I $G(@$$^W4GL("QNDEF")@(PRT,CD)) S OK=0
 Q OK
 ;
GRA(TXT) I $E(TXT)="A" Q 1
 Q 0
 ;
CMT(TXT) I $P(TXT,"~")["-C" Q 1
 Q 0
 ;
CMTY(TXT,I) I '$$CMT(TXT) Q 0
 N NN S NN=I-1
 F  S NN=$O(@$$^W3TMPTF@($$^%W1JB,UR,I),-1) Q:NN=""  Q:'$$CMT(@$$^W3TMPTF@($$^%W1JB,UR,I))
 I NN="" Q 0
 I '$D(@$$^W3TMPTF@($$^%W1JB,UR,I,1)) Q 0
 Q 1
 ;
TMPTFI(I) Q "^[$$^W3MAIN]TMPTF($$^%W1JB,UR,"_I_")"
 ;
QN3(I) ;
 N QN3 S QN3=$$QN(I)
 I $$CDCI(I)!$$CDHI(I)!$$CDAI(I) Q 0
 I QN3 Q QN3
 N K,J S K=0
 I QN3["+" Q 1  ;D  Q K
 .F J=1:1:$L(QN3) I $E(QN3,J)="+" S K=K+1
 Q 0
 ;
QN(I) ;
 N UR D UR
 N TMPTF3
 D TMPTF3
 Q $G(@TMPTF3@(I,"QN"))
 ;
CSR(STAM) ;
 I $G(%ARG("CSR")) Q 1
 I $$GETP^%W1PRM("ELPOS")=1,'$$^W4DLVNPR(JB),$$^W4DLVCSR'=2 Q 1
 Q 0
 ;
CLRQN(QN) ;
 S QN=$Q(QN)
 I QN[":" Q $P(QN,":",2)
 Q QN
 ;
ISSETPIZZA(STPAR) ;
 Q $$^W4SETPIZ(STPAR)
 ;
 ;
SHOWPIZZA(I,BGA,PRA,DIV)
 N PRT,UR,QNPIZZA
 D UR
 ;
 S QNPIZZA=$$QN(I)
 ;
 S SELPAR=0
 ;
 W "<td>"
 W " <table dir=""LTR"">",!
 W "  <tr id=""pizza"_I_""">",!
 ;
 N CHC,J F J=1:1:DIV I $E(QNPIZZA,J)="+" S CHC(J)="c",SELPAR=1
 ;
 I DIV=4,$D(CHC(1)),$D(CHC(2)),$D(CHC(3)),$D(CHC(4)) S CHC(5)="c"
 I DIV=2,$D(CHC(1)),$D(CHC(2)) S CHC(3)="c"
 ;
 N SMB
 F J=1:1:DIV+1 D
 . N TDID S TDID="pizza"_I_"img"_J
 . W "  <td id="""_TDID_""">"
 .  W $$PIZZAIMG(TDID_";"_J_";"_$G(CHC(J))_";"_DIV_";"_$G(BGA)_";"_$G(PRA))
 .W "&nbsp;"
 .W "  </td>"
 W "  </tr>",!
 W " </table>"
 W "</td>",!
 Q
 ;
PIZZAIMG(PRM);
 N DIV,J,PRZ,SMB,ST,DIV,BGA,PRA
 ;
 S TDID=$P(PRM,";")
 S J=$P(PRM,";",2)
 S PRZ=$P(PRM,";",3)
 S DIV=$P(PRM,";",4)
 S BGA=$P(PRM,";",5)
 S PRA=$P(PRM,";",6)
 ;
 N IMGPIZZA S IMGPIZZA="w3pizza" I $$CSR S IMGPIZZA="w4pizza"
 N IMGSIZE S IMGSIZE=""
 S IMGSIZE="height=""25px"" width=""20px"" "
 I $$CSR S IMGSIZE="height=""65px"" width=""60px"" "
 S SMB=$S(DIV=4:J,1:"h"_J)
 ;
 S ST=" <img src="""_IMGPIZZA_SMB_PRZ_".jpg"" "_IMGSIZE
 S ST=ST_" style=""cursor:pointer"" "
 S ST=ST_" onClick=""ClickPizza('"_TDID_"',"_J_",'"_PRZ_"',"_+$G(BGA)_","_+$G(PRA)_",'"_DIV_"')"" />"
 Q ST
 ;
UR ;
 S UR=3
 I $$CSR S SHID=$$GETP^%W1PRM("SHID"),UR=$$UR^W4MENU
 I UR<3 S UR=3
 Q
 ;
ENG(STAM) ;
 Q $$ENG^W4P
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3IMG
W3IMG(SRC,PROC) ; [ 19.01.12 04:59 ] [
 N OU,IMG S OU=""
 S IMG=$$PRM(SRC)
 I IMG'?.P,IMG["." D
 .S IMG=$$FUNC^%LCASE(IMG)
 .S OU="<img src="""_IMG_""" "
 .I $G(PROC)'="" D
 ..S OU=OU_" onClick="""_PROC_""" style=""cursor:pointer"" "
 .S OU=OU_" />"
 Q OU
 ;
PRM(SRC) ;
 N CL S CL=$$COLOR
 Q $G(^[$$^W3MAIN]W3COLOR(CL,SRC))
 ;
COLOR(STAM) ;
 I $G(%ARG("COLOR"))'="" Q %ARG("COLOR")
 N COLOR S COLOR=$$GET^%W1PRM("COLOR") I COLOR'["UNDEF",COLOR'="" Q COLOR
 Q $$COLOR^W3PRM

W3IR
W3IR ; [ 30.09.08 14:45 ] [
 Q

W3IR2UCI
W3IR2UCI ; [ 14.09.08 13:49 ] [
 S N="" S $ZT="G CYC"
CYC F  S N=$O(^W3MSDR(1,N)) Q:N=""  D
 .S UCI=$G(^UCI(N)) Q:UCI=""
 .W !,N
 .M ^[UCI]P1IR=^P1IRR
 Q

W3ITCLR
W3ITCLR ; [ 21.07.12 11:27 ] [ 31.07.11 06:55 ] [ 30.07.11 11:07 ]
 N (JB,%ARG,%REM)
 S STEPC=13056 ;51
 ;
 S BT(1)="000000"
 S BT(2)="A0A0A0"
 S BT(3)="D32F14"
 S BT(4)="FF0000"
 S BT(5)="0000FF"
 S BT(6)="FF00FF"
 ;
 S BL(1)="DDFFDD"
 S BL(2)="E5E5E5"
 S BL(3)="FFD8D8"
 S BL(4)="FFF6D6"
 S BL(5)="D1FFFF"
 S BL(6)="FFE8FB"
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W " <tr>",!
 W "  <td>",!
 W "  </td>",!
 W "  <td id=""preview"" style=""border:solid 1px;font-weight:bold"
 I $L($G(%ARG("BG"))) W ";background-color:"_%ARG("BG")
 I $L($G(%ARG("FG"))) W ";color:"_%ARG("FG")
 W """>&nbsp;",!
 W "PREVIEW&nbsp;"
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>",!
    D SUBMIT
 W "  </td>",!
 W "  <td>",!
    D CANCEL
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 W "<br>",!
 ;
 W "<table>"
 W " <tr>"
 W "  <td>"
   D TBLCLR("BG")
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>",!
   D TBLCLR("FG")
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 ;
 Q
 ;
 ;
TBLCLR(PRM) ;
 N LJ,LI,KOT
 S LJ=7,LI=$O(BT(99),-1)
 I PRM="BG" S KOT=$$^%W1DICT("BACKGROUNDCOLOR")
 I PRM="FG" S KOT=$$^%W1DICT("FOREGROUNDCOLOR")
 ;
 W "<table border=""1"" cellpadding=""0"" cellspacing=""0"" dir=""LTR"">",!
 W "<caption>"_KOT_"</cabtion>",!
  F I=1:1:LI D
  .W "<tr>"
  .S B=BT(I)
  .F J=1:1:LJ D
  ..S BH=$E(B,$L(B)-5,$L(B))
  ..W "<td id=""id"_BH_""" style=""background-color:#"_BH_";cursor:pointer"""
  ..;;I BH=$G(%ARG("CUR")) W ";border:ridge"
  ..W """"
  ..W " onClick=""ChoiceColor('"_BH_"','"_PRM_"')"" "
  ..W ">&nbsp;&nbsp;&nbsp;&nbsp;</td>",!
  ..S B=$S(J<(LJ-1):$$FUNC^%DH($$HD(B)+STEPC),1:BL(I))
  ..I I=LI,J=(LJ-1) S B="FFFFFF"
  ..I I=LI,J=(LJ-2) S B="FFE8FB"
  .W "</tr>",!
 W "</table>",!
 Q
 ;
HD(N) Q $$FUNC^%HD(N)
 ;
SUBMIT ;
  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green")
 Q
 ;
CANCEL ;
  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red")
 Q

W3ITREP
W3ITREP ; [ 05.07.26 11:52 ] [ 29.01.25 06:36 ] [ 04.04.22 17:23 ] 
 S FDB=$G(%ARG("FDB")) Q:FDB=""
 S MSDR=$G(%ARG("MSDR")) Q:MSDR=""
 S DT=$G(%ARG("DT")) Q:DT=""
 S MSD=$G(%ARG("MSD")) Q:MSD=""
 ;
 S FDB=$$CNWEB^%L1FRM(FDB)
 ;
 F I=1:1:$L(FDB,"|")-1 D
 .S ST=$P(FDB,"|",I)
 .S CD=$P(ST,"*") Q:CD=""
 .S QN=$P(ST,"*",2)
 .S SUM=$P(ST,"*",3)
 .S ^|$$^W3MAIN|W4ITREP(MSDR,DT,MSD,CD)=QN_"*"_SUM
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3KAKA1
W3KAKA1 ; [ 21.02.23 13:57 ] [ 
 S FLIN="/tmp/PK1"
 S FLOU="/tmp/PK1OU"
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 W "{",!
 W """terminal"": ""0882577012"",",!
 W """user"": ""damkatest"",",!
 W """password"": ""Y7sOiTur"",",!
 W """ActionType"": ""J4"",",!
 W """Currency"": ""1"",",!
 W """Total"": ""30000"",",!
 W """CancelURL"": ""https://www.2order.org/mumps-examples/jsp/w3pay.jsp?JB=380867383&ORD=380867383&CODE=086881815&FIRST=1"",",!
 W """ErrorURL"": ""https://www.2order.org/mumps-examples/jsp/w3pay.jsp?JB=380867383&ORD=380867383&CODE=086881815&FIRST=1"",",!
 W """GoodURL"": ""https://www.2order.org/mumps-examples/jsp/w3pay.jsp?JB=380867383&ORD=380867383&CODE=086881815&FIRST=1"",",!
 W """PlaceholderCaptions"": ""False"",",!
 W """ShowBrandLogo"": ""False"",",!
 W """TakeIshurPopUp"": ""False"",",!
 W """SupportedCards"": {",!
  W """Amex"": ""True"",",!
  W """Diners"": ""True"",",!
  W " ""Isra"": ""True"",",!
  W " ""Master"": ""True"",",!
  W """Visa"": ""True""",!
 W "}",!
 W "}",!
 C FLIN
 S URL="https://gateway20.pelecard.biz/PaymentGW/init"
 S CMD="curl -X POST """_URL_""" -H ""Content-Type:application/json"" -d@"_FLIN_" > "_FLOU
 S IND=$O(^PKCMD(999999),-1)+1
 S ^PKCMD(IND)=CMD
 ZSY CMD
 W "CMD="_CMD,!
 W !
 W "ZSY="_$ZSY,!
 W !
 O FLOU:(REWIND:READONLY)
 U FLOU R A U 0 W A,!
 C FLOU
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3KASHER
W3KASHER ; [ 28.04.08 10:38 ] [
 D ^W3TBL1("H","W3KASHER")
 Q

W3KASHRU
W3KASHER ; [ 28.04.08 10:56 ] [
 D ^W3TBL("H","W3KASHER")
 Q

W3KKIND
W3KKIND ; [ 28.04.08 09:30 ] [
 D ^W3TBL("H","W3KKIND")
 Q

W3KLORD
W3KLORD ; [ 09.01.13 19:20 ] [ 24.09.08 10:17 ] [ 07.01.08 12:40 ]
 N
 S N="" F  S N=$O(@$$^W3ORD(N)@(N)) Q:N=""  D
 .S A=$G(^[$$^W3MAIN]W3LINK(N)) I A'="" D
 ..S MSD=$P(A,"~"),CODE=$P(A,"~",2)
 ..I CODE,MSD K ^[$$^W3MAIN]W3LINKI(CODE,MSD,N),^[$$^W3MAIN]W3LINKR(MSD,N)
 .K ^[$$^W3MAIN]W3LINK(N)
 .K @$$^W3ORD(N)@(N)

W3KVPHR
W3KVPHR ; [ 01.04.25 12:02 ] [ 02.08.23 15:40 ] [ 10.08.21 11:54 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 W "<div align=""center"" >",!
 W $$^W4DVTBFX("94%")
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_$S($G(%ARG("NOPICTURES")):"95%",1:"100%")_""" >",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 ;
 W "<th width=""30px"">"_$$^%W1DICT("GROUPCODE")_"</th>"
 W "<th width=""140px"">"_$$^%W1DICT("GROUPNAME")_"</th>"
 ;
 I '$$DAY!($$DAY>0&($$DAY<6)) D
 .W "<th width=""330px"">"_$$^%W1DICT("WEEKDAYS1")_"</th>"
 .W "<th width=""160px"">"_$$^%W1DICT("MESHAA")_"</th>"
 .W "<th width=""160px"">"_$$^%W1DICT("ADSHAA")_"</th>"
 ;
 I '$$DAY!($$DAY=6) D
 .W "<th width=""50px"">"_$$^%W1DICT("WEEKDAY6")_"</th>"
 .W "<th width=""160px"">"_$$^%W1DICT("MESHAA")_"</th>"
 .W "<th width=""160px"">"_$$^%W1DICT("ADSHAA")_"</th>"
 ;
 I '$$DAY!($$DAY=7) D
 .W "<th width=""50px"">"_$$^%W1DICT("WEEKDAY7")_"</th>"
 .W "<th width=""160px"">"_$$^%W1DICT("MESHAA")_"</th>"
 .W "<th width=""160px"">"_$$^%W1DICT("ADSHAA")_"</th>"
 ;
 ;;W "<th width=""60px"">"_$$^%W1DICT("ITEMSHOW")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 N N,I
 S GL=$$^W4GL("PARSUG")
 N GLOBT S GLOBT=GL
 S GLOBT=$$CRGLOBT^W4SPIDK(GL)
 ;
 S N0="",I=0 F  S N0=$O(@GLOBT@(N0)) Q:N0=""  D
 .S N=N0
 .I $G(%ARG("SORT"))=2!($G(%ARG("SORT"))=3) S N=$G(@GLOBT@(N0)) Q:N=""
 .I '$$^W4VWGR(N) Q
 .
 .I $G(%ARG("SHAA"))'="",$$NOSHAA(N,$$DAY,%ARG("SHAA"),$G(%ARG("TIMEITEMS"))) Q
 .
 .W "<tr id=""tr"_N_""" "
 .W " style=""background-color:"_$S($$LIM(N):"lightyellow",1:"white")_""" "
 .W " >" 
 . S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@GL@(N)))_"&nbsp;</td>"
 .
 .I '$$DAY!($$DAY>0&($$DAY<6)) D
 ..W "<td align=""center"">"
 ..N DAYS S DAYS="12345" I $$DAY S DAYS=$$DAY
 ..D
 ...N J,VL,A
 ...I '$$DAY F J=1:1:5 D SHOWDAY(J,N,1)
 ...I $$DAY D SHOWDAY($$DAY,N,1)
 ..W "</td>"
 ..
 ..W "<td dir=""LTR"" align=""center"">"
 .. D SHAA(N,DAYS,1)
 ..W "</td>"
 ..W "<td dir=""LTR"" align=""center"">"
 .. D SHAA(N,DAYS,2)
 ..W "</td>"
 .
 .I '$$DAY!($$DAY=6) D
 ..W "<td align=""center"">"
 ..D
 ...N J,VL,A
 ...D SHOWDAY(6,N)
 ..W "</td>"
 ..
 ..W "<td dir=""LTR"" align=""center"">"
 .. D SHAA(N,6,1)
 ..W "</td>"
 ..
 ..W "<td dir=""LTR"" align=""center"">"
 .. D SHAA(N,6,2)
 ..W "</td>"
 .
 .I '$$DAY!($$DAY=7) D
 ..W "<td align=""center"">"
 ..D
 ...N J,VL,A
 ...D SHOWDAY(7,N)
 ..W "</td>"
 ..
 ..W "<td dir=""LTR"" align=""center"">"
 .. D SHAA(N,7,1)
 ..W "</td>"
 ..
 ..W "<td dir=""LTR"" align=""center"">"
 .. D SHAA(N,7,2)
 ..W "</td>"
 .
 .;D
 ..N CHECKED,DIS
 ..S CHECKED=1,DIS=0
 ..I '$$^W4VWGR(N) S CHECKED=0,DIS=0
 ..W "<td align=""center"">"
 ..W "<input name=""show"" type=""checkbox"" id=""show"_N_""""
 ..I CHECKED W " checked=""checked"""
 ..I DIS W " disabled=""disabled"" "
 ..W " onClick=""OnChange('"_N_"')"" />"
 ..W "</td>"
 .
 .W "<td align=""center"">"
 . W "<input name=""chn"" id=""chn"_N_""" type=""checkbox"" "
 . W "disabled=""disabled"" />"
 .W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRMT")
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W3KVPHR-SAVE","PRM=PRM")
 N CD,SHOW
 ;;W PRM,!
 S PRM=$$CLEAR^%L1FRM(PRM)
 ;
 S CD=$P(PRM,"~")
 ;
 N DAYS S DAYS=$J($P(PRM,"~",2),5)_$P(PRM,"~",4)_$P(PRM,"~",6)
 N DAYV S DAYV=$G(@$$^W4GL("W3SUG")@(CD,"DAYS"))
 I DAYV="" S DAYV=1111111
 N J F J=1:1:$L(DAYS) I $E(DAYS,J)?1N S $E(DAYV,J)=$E(DAYS,J)
 S @$$^W4GL("W3SUG")@(CD,"DAYS")=DAYV
 ;
 N SHAA1 S SHAA1=$P(PRM,"~",3)
 I SHAA1'?.P D
 .S @$$^W4GL("W3SUG")@(CD,"12345","SHAA")=SHAA1
 .I +$P(SHAA1,"-")=0,+$P(SHAA1,":",2)=0,$P(SHAA1,"-",2)="23;59" D
 ..K @$$^W4GL("W3SUG")@(CD,"12345","SHAA")
 ;
 N SHAA6 S SHAA6=$P(PRM,"~",5)
 I SHAA6'?.P D
 .S @$$^W4GL("W3SUG")@(CD,6,"SHAA")=SHAA6
 .I +$P(SHAA6,"-")=0,+$P(SHAA6,":",2)=0,$P(SHAA6,"-",2)="23;59" D
 ..K @$$^W4GL("W3SUG")@(CD,6,"SHAA")
 ;
 N SHAA7 S SHAA7=$P(PRM,"~",7)
 I SHAA7'?.P D
 .S @$$^W4GL("W3SUG")@(CD,7,"SHAA")=SHAA7
 .I +$P(SHAA7,"-")=0,+$P(SHAA7,":",2)=0,$P(SHAA7,"-",2)="23;59" D
 ..K @$$^W4GL("W3SUG")@(CD,7,"SHAA")
 ;
 I DAYS=$$ALLDAYS K @$$^W4GL("W3SUG")@(CD,"DAYS")
 ;
 K @$$^W4GL("W3SUG")@(CD,"SHAA")
 Q 1
 ;
 ;
SAVEND ;
 Q
 ;
 ;
SHAA(KVP,DAY,PRM) ;
 N VL S VL=""
 ;
 N IDAY S IDAY=$$INDDAY(DAY)
 ;
 I $G(KVP)'="" D
 .S VL=$G(@$$^W4GL("W3SUG")@(KVP,IDAY,"SHAA"))
 .I VL="",$D(@$$^W4GL("W3SUG")@(KVP,"SHAA")) D
 ..S VL=$G(@$$^W4GL("W3SUG")@(KVP,"SHAA"))
 .S VL=$P(VL,"-",PRM)
 .W "<select id=""d"_IDAY_"p"_PRM_"i"_KVP_"hr"" onChange=""OnChange('"_N_"')"" >"
 ;
 I $G(KVP)="" D
 .I $$^%W1DIR="LTR" D
 ..I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 ..I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 .W "<select id=""hr"_PRM_""" onChange=""ChangeTime()"" >"
 ;
 N SEL
 I VL="",PRM=2 S VL="23:59"
 ;
 N I F I=0:1:23 D
 .S SEL="" I VL'="",I=+VL S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 ;
 W "</select>",!
 ;
 W "<b>:</b>",!
 ;
 I $G(KVP) W "<select id=""d"_IDAY_"p"_PRM_"i"_KVP_"mn"" onChange=""OnChange('"_N_"')"" >"
 ;
 I $G(KVP)="" D
 .W "<select id=""mn"_PRM_""" onChange=""ChangeTime()"" >"
 ;
 N I F I=0,30,59 D
 .S SEL="" I VL'="",I=+$P(VL,":",2) S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 I $G(KVP)="",$$^%W1DIR="RTL" D
 .I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 .I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 Q
 ;
 ;
SELDAY ;
 W "<b>"_$$^%W1DICT("SHOWDAYS")_"</b>&nbsp;&nbsp;",!
 W "<select id=""days"" onChange=""ChangeTime()"">",!
 W " <option value=""0"">"_$$^%W1DICT("ALLDAYS")_"</option>",!
 N I
 F I=1:1:7 D
 .W "<option value="""_I_""">"_$$^%W1DICT("DAY"_I)_"</option>",!
 W "</select>",!
 Q
 ;
SELDAYITEMS ;
 W "<select id=""dayitems"" >",!
 W " <option value=""0"">"_$$^%W1DICT("ALLITEMS")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("DAYITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("NODAYITEMS")_"</option>",!
 W "</select>",!
 Q
 ;
DAYS(KVP) ;
 N A
 S A=$G(@$$^W4GL("W3SUG")@(KVP,"DAYS"))
 I A="" S A=$$ALLDAYS
 Q A
 ;
SELTIMEITEMS ;
 W "<select id=""timeitems"" onChange=""ShowDay()"" >",!
 W " <option value=""0"">"_$$^%W1DICT("CHOICESHOWOPTION")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("ALLTIMEITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("LIMTIMEITEMS")_"</option>",!
 W "</select>",!
 Q
 ;
NOSHAA(KVP,DAY,SHAA,OPT)
 I $G(KVP)="" Q 0
 N ME,AD,MESHAA,ADSHAA,MEKVPSHAA,ADKVPSHAA,MEPS,ADPS
 S MESHAA=$P(SHAA,"-")
 S ADSHAA=$P(SHAA,"-",2)
 S ME=MESHAA*60+$P(MESHAA,":",2)
 S AD=ADSHAA*60+$P(ADSHAA,":",2)
 N INDD S INDD=$$INDDAY(DAY)
 S KVPSHAA=$G(@$$^W4GL("W3SUG")@(KVP,INDD,"SHAA"))
 S MEKVPSHAA=$P(KVPSHAA,"-")
 S ADKVPSHAA=$P(KVPSHAA,"-",2)
 I ADKVPSHAA="" S ADKVPSHAA="23:59"
 S MEPS=MEKVPSHAA*60+$P(MEKVPSHAA,":",2)
 S ADPS=ADKVPSHAA*60+$P(ADKVPSHAA,":",2)
 I MEPS>AD!(ADPS<ME) Q 1
 I OPT=2,+MEPS=0,ADPS>1438,$$FULLDAYS(KVP) Q 1
 Q 0
 ;
FULLDAYS(SUG)
 N DAYS S DAYS=$G(@$$^W4GL("W3SUG")@(SUG,"DAYS"))
 I DAYS=""!(DAYS=$$ALLDAYS) Q 1
 Q 0
 ;
ALLDAYS(STAM) ;
 Q "1111111"
 ;
LIM(SUG) ;
 I $D(@$$^W4GL("W3SUG")@(SUG))<10 Q 0
 N SHAA1,SHAA6,SHAA7
 S SHAA1=$G(@$$^W4GL("W3SUG")@(SUG,"12345","SHAA"))
 S SHAA6=$G(@$$^W4GL("W3SUG")@(SUG,"6","SHAA"))
 S SHAA7=$G(@$$^W4GL("W3SUG")@(SUG,"7","SHAA"))
 N DAYS S DAYS=$G(@$$^W4GL("W3SUG")@(SUG,"DAYS"))
 I DAYS'="",DAYS'=1111111 Q 1
 I SHAA1!$P(SHAA1,":",2) Q 1
 I SHAA6!$P(SHAA6,":",2) Q 1
 I SHAA7!$P(SHAA7,":",2) Q 1
 I $P(SHAA1,"-",2)'="23:59",$P(SHAA1,"-",2)'="" Q 1
 I $P(SHAA6,"-",2)'="23:59",$P(SHAA6,"-",2)'="" Q 1
 I $P(SHAA7,"-",2)'="23:59",$P(SHAA7,"-",2)'="" Q 1
 Q 0
 ;
DAY(STAM) ;
 Q $G(%ARG("DAY"))
 ;
SHOWDAY(J,N,PR) ;
 N A,VL
 S A=$$DAYS(N)
 I $G(PR) W "&nbsp;"_$$^%W1DICT("DAY"_J) ;,"&nbsp;"
 S VL="" I $E(A,J) S VL=" checked=""checked"""
 N ID S ID=J
 W "<input type=""checkbox"" id=""day"_ID_"i"_N_""" "_VL
 W " onClick=""OnChange('"_N_"')"">"
 Q
 ;
INDDAY(DAY) ;
 S DAY=$G(DAY)
 I DAY>0,DAY<6 Q "12345"
 Q +DAY
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3KVPHR0
W3KVPHR ; [ 14.03.16 17:15 ] [ 12.07.14 15:58 ] [ 17.06.10 09:37 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 W "<div align=""center"" >",!
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_$S($G(%ARG("NOPICTURES")):"95%",1:"100%")_""" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 ;
 W "<th width=""70px"">"_$$^%W1DICT("GROUPCODE")_"</th>"
 W "<th width=""240px"">"_$$^%W1DICT("GROUPNAME")_"</th>"
 W "<th width=""280px"">"_$$^%W1DICT("WEEKDAYS")_"</th>"
 W "<th width=""110px"">"_$$^%W1DICT("MESHAA")_"</th>"
 W "<th width=""110px"">"_$$^%W1DICT("ADSHAA")_"</th>"
 W "<th width=""60px"">"_$$^%W1DICT("ITEMSHOW")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 .I $G(@$$^W4GL("W3SUG")@(N))=0 Q
 .I $G(%ARG("DAY")),'$E($$DAYS(N),%ARG("DAY")) Q
 .I $G(%ARG("SHAA"))'="",$$NOSHAA(N,%ARG("SHAA"),$G(%ARG("TIMEITEMS"))) Q
 .
 .W "<tr id=""tr"_N_""" style=""background-color:"_$S($$LIM(N):"lightyellow",1:"white")_""" >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"&nbsp;</td>"
 .
 .W "<td align=""center"">"
 .D
 ..N J,VL,A
 ..I '$G(%ARG("DAY")) F J=1:1:7 D SHOWDAY(J,N)
 ..I $G(%ARG("DAY")) D SHOWDAY(%ARG("DAY"),N)
 .W "</td>"
 .W "<td dir=""LTR"" align=""center"">"
 .D SHAA(N,1)
 .W "</td>"
 .W "<td dir=""LTR"" align=""center"">"
 .D SHAA(N,2)
 .W "</td>"
 .N CHECKED,DIS
 .S CHECKED=1,DIS=0
 .I $G(@$$^W4GL("W3SUG")@(N))=0 S CHECKED=0,DIS=0
 .W "<td align=""center""><input name=""show"" type=""checkbox"" id=""show"_N_""""
 .I CHECKED W " checked=""checked"""
 .I DIS W " disabled=""disabled"" "
 .W " onClick=""OnChange('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center""><input name=""chn"" id=""chn"_N_""" type=""checkbox"" disabled=""disabled"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SHOWDAY(J,N) ;
 N A,VL
 S A=$$DAYS(N)
 W "&nbsp;"_$$^%W1DICT("DAY"_J) ;,"&nbsp;"
 S VL="" I $E(A,J) S VL=" checked=""checked"""
 W "<input type=""checkbox"" id=""day"_J_"i"_N_""" "_VL_" onClick=""OnChange('"_N_"')"">"
 Q
 ;
SAVE(PRM) ;
 N CD,SHOW
 ;;W PRM,!
 S PRM=$$CLEAR^%L1FRM(PRM)
 S CD=$P(PRM,"~")
 S SHOW=$P(PRM,"~",2)
 N D S D=$P(PRM,"~",3)
 N DAYS S DAYS=$G(@$$^W4GL("W3SUG")@(CD,"DAYS"))
 I DAYS="" S DAYS=$$ALLDAYS
 N J F J=1:1:7 I $P(D,",",J)'="" S $E(DAYS,J)=$P(D,",",J)
 N SHAA S SHAA=$P(PRM,"~",4)
 ;
 S @$$^W4GL("W3SUG")@(CD)=+SHOW
 S @$$^W4GL("W3SUG")@(CD,"SHAA")=SHAA
 I +$P(SHAA,"-")=0,+$P(SHAA,":",2)=0,$P(SHAA,"-",2)="23;59" D
 .K @$$^W4GL("W3SUG")@(CD,"SHAA")
 I DAYS=$$ALLDAYS K @$$^W4GL("W3SUG")@(CD,"DAYS")
 E  S @$$^W4GL("W3SUG")@(CD,"DAYS")=DAYS
 I $G(@$$^W4GL("W3SUG")@(CD))=1,$D(^(CD))=1 K ^(CD)
 Q 1
 ;
SAVEND ;
 Q
 ;
SHAA(KVP,PRM) ;
 N VL S VL="" I $G(KVP)'="" D
 .S VL=$G(@$$^W4GL("W3SUG")@(KVP,"SHAA"))
 .S VL=$P(VL,"-",PRM)
 .W "<select id=""p"_PRM_"i"_KVP_"hr"" onChange=""OnChange('"_N_"')"" >"
 I $G(KVP)="" D
 .I $$^%W1DIR="LTR" D
 ..I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 ..I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 .W "<select id=""hr"_PRM_""" onChange=""ChangeTime()"" >"
 N SEL
 I VL="",PRM=2 S VL="23:59"
 N I F I=0:1:23 D
 .S SEL="" I VL'="",I=+VL S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 W "<b>:</b>",!
 I $G(KVP) W "<select id=""p"_PRM_"i"_KVP_"mn"" onChange=""OnChange('"_N_"')"" >"
 I $G(KVP)="" D
 .W "<select id=""mn"_PRM_""" onChange=""ChangeTime()"" >"
 N I F I=0,30,59 D
 .S SEL="" I VL'="",I=+$P(VL,":",2) S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 I $G(KVP)="",$$^%W1DIR="RTL" D
 .I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 .I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 Q
 ;
SELDAY ;
 W "<b>"_$$^%W1DICT("SHOWDAYS")_"</b>&nbsp;&nbsp;",!
 W "<select id=""days"" onChange=""ChangeTime()"">",!
 W " <option value=""0"">"_$$^%W1DICT("ALLDAYS")_"</option>",!
 N I
 F I=1:1:7 D
 .W "<option value="""_I_""">"_$$^%W1DICT("DAY"_I)_"</option>",!
 W "</select>",!
 Q
SELDAYITEMS ;
 W "<select id=""dayitems"" >",!
 W " <option value=""0"">"_$$^%W1DICT("ALLITEMS")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("DAYITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("NODAYITEMS")_"</option>",!
 W "</select>",!
 Q
DAYS(KVP) ;
 N A
 S A=$G(@$$^W4GL("W3SUG")@(KVP,"DAYS"))
 I A="" S A=$$ALLDAYS
 Q A
SELTIMEITEMS ;
 W "<select id=""timeitems"" onChange=""ShowDay()"" >",!
 W " <option value=""0"">"_$$^%W1DICT("CHOICESHOWOPTION")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("ALLTIMEITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("LIMTIMEITEMS")_"</option>",!
 W "</select>",!
 Q
NOSHAA(KVP,SHAA,OPT)
 I $G(KVP)="" Q 0
 N ME,AD,MESHAA,ADSHAA,MEKVPSHAA,ADKVPSHAA,MEPS,ADPS
 S MESHAA=$P(SHAA,"-")
 S ADSHAA=$P(SHAA,"-",2)
 S ME=MESHAA*60+$P(MESHAA,":",2)
 S AD=ADSHAA*60+$P(ADSHAA,":",2)
 S KVPSHAA=$G(@$$^W4GL("W3SUG")@(KVP,"SHAA"))
 S MEKVPSHAA=$P(KVPSHAA,"-")
 S ADKVPSHAA=$P(KVPSHAA,"-",2)
 I ADKVPSHAA="" S ADKVPSHAA="23:59"
 S MEPS=MEKVPSHAA*60+$P(MEKVPSHAA,":",2)
 S ADPS=ADKVPSHAA*60+$P(ADKVPSHAA,":",2)
 I MEPS>AD!(ADPS<ME) Q 1
 I OPT=2,+MEPS=0,ADPS>1438,$$FULLDAYS(KVP) Q 1
 Q 0
 ;
FULLDAYS(SUG)
 N DAYS S DAYS=$G(@$$^W4GL("W3SUG")@(SUG,"DAYS"))
 I DAYS=""!(DAYS=$$ALLDAYS) Q 1
 Q 0
 ;
ALLDAYS(STAM) ;
 Q "1111111"
 ;
LIM(SUG) ;
 I $D(@$$^W4GL("W3SUG")@(SUG))<10 Q 0
 N SHAA S SHAA=$G(@$$^W4GL("W3SUG")@(SUG,"SHAA"))
 N DAYS S DAYS=$G(@$$^W4GL("W3SUG")@(SUG,"DAYS"))
 I SHAA="",DAYS=""!(DAYS=1111111) Q 0
 I +SHAA=0,'$P(SHAA,":",2),$P(SHAA,"-",2)="23:59",DAYS=""!(DAYS=1111111) Q 0
 Q 1
 

W3KVPIDK
W3KVPIDK ; [ 05.08.23 11:50 ] [ 19.06.23 12:24 ] [ 07.11.22 11:03 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3KVPIDK","%ARG=[%ARG")
 D GL
 I '$$MSD W " Restaurant number is not defined ! " Q
 ;
 I $D(%ARG("CDKV")) D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 ;
 W "<div align=""center"" >",!
 ;
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"
  D
  .I $$MSDPRT W $$^%W1DICT("SPECIALITEMSFORREST") Q
  .I $$KVZRKZ W $$^%W1DICT("ITEMS4GRC") Q
  .W $$^%W1DICT("GROUPITEMSTABLE")
 W "</span>",!
 ; 
 W "<table id=""TblKvp"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th >"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th >"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th >"_$$^%W1DICT("PRICE")_"</th>"
 I $$MSDPRT W "<th>"_$$^%W1DICT("GROUP")_"</th>"
 W "<th >"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 N N,I
 ;
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .N SUG S SUG=$$SUG^W3KVPRT(N)
 .I $$KVZRKZ,$G(%ARG("CDKV")),A'=$G(%ARG("CDKV")) Q
 .I $$MSDPRT,$$MSDPRTN'=A Q
 .I '$$MSDPRT,'$$KVZRKZ,$G(%ARG("CDKV")),%ARG("CDKV")'=SUG Q
 .D ITGR(N)
 ;
 W "</div>",!
 Q
 ;
 ;
ITGR(N) ;
 W "<tr "
  W $$STYLE^W4PRTVW(N)
 W "id=""trkvp"_N_""" >" S I=I+1
 
 W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 
 W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 
 W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_" </td>"
 I $$MSDPRT W "<td align=""center"">"_$$H2U^%L1FRM($$SUG1^W4P(N))_" </td>"
 ;
 N ID,PROC
 S ID="chkvp"_N
 S PROC="OnClickTbl('"_N_"','TblKvp','trkvp','chkvp')"
 D ^W4TDCHBX(ID,PROC)
 ;
 W "</tr>",!
 Q
 ;
 ;
GL S GL="^[$$^W3MAIN]TMPPAR($$^%W1JB)"
 Q
 ;
FIRSTGR(STAM) ;
 I $$MSDPRT Q "ALL"
 I $$KVZRKZ Q $O(@$$^W4GL("W4GRC")@(""))
 Q $$^W3FRSTGR
 ;
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 D
 .I $$MSDPRT D  Q
 ..K @$$^W4GL("W4MSDPRT")
 ..M @$$^W4GL("W4MSDPRT")=@GL
 .
 .I $$KVZRKZ D  Q
 ..K @$$^W4GL("W4KVZRKZ")
 ..M @$$^W4GL("W4KVZRKZ")=@GL
 .
 .M @$$^W4GL("PAR")=@GL
 .;
 ;
 Q
 ;
 ;
MVPR2KV(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N KV S KV=$P(PRM,";")
 S PRM=$P(PRM,";",2,$L(PRM,";"))
 N OK S OK=0
 I KV="" Q 0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .D
 ..I $$MSDPRT!$$KVZRKZ S @GL@(CD)=KV,OK=1 Q
 ..
 ..Q:'$D(@GL@(CD))
 ..S $P(@GL@(CD),"**",5)=KV,OK=1
 Q OK
 ;
 ;
MVKV2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GL@(CD))
 .I $$MSDPRT!$$KVZRKZ K @GL@(CD) S OK=1 Q
 .S $P(@GL@(CD),"**",5)="",OK=1
 Q OK
 ;
 ;
GROUP ;
 K W4ABC
 W "<select "
 ;
 I FIRSTGR="KVP" D
 .W " id=""grkvp"""
 .W " onChange=""AskSave();ShowKvp(this.value);ShowPrt()"""
 .W " >",!
 .I $$KVZRKZ S W4ABC("GL")="W4GRC"
 ;
 I FIRSTGR="ALL" D
 .W " id=""grkvp"" ",!
 .W " onChange=""AskSave(true);ShowKvp(this.value)"
 .I $$MSDPRT W ";ShowPrt(this.value)"
 .W """ "
 .W " >"
 .I $$^W4MUCHIT Q
 .W "<option value=""ALL"" selected=""selected"" >"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 ;
 I FIRSTGR="KVPRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt(this.value)"""
 .W " >"
 .I '$$KVZRKZ W "<option value=""NO"" "_$S($$MSDPRT:"",1:"selected=""selected"" ")_" >"_$$^%W1DICT("NOGROUP")_"</option>",!
 .I '$$^W4MUCHIT W "<option value=""ALL"" "_$S($$MSDPRT:" selected=""selected"" ",1:"")_">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .D
 ..I $$MSDPRT!$$KVZRKZ D PUT^%W1PRM("KV","ALL") Q
 ..D PUT^%W1PRM("KV","NO")
 ;
 D ^W4ABCKVZ
 ;
 N N,II S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .S II=II+1
 .W "<option value="""_NN_""""
 .I $G(FIRSTGR)="KVP",NN=$$CURGR D
 ..W " selected=""selected"""
 .N W3SHOWKV S W3SHOWKV("GL")=$G(W4ABC("GL"))
 .W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
 ;
PAR2TMP ;
 D GL K @GL
 D
 .I $$MSDPRT M @GL=@$$^W4GL("W4MSDPRT") Q
 .I $$KVZRKZ M @GL=@$$^W4GL("W4KVZRKZ") Q
 .M @GL=@$$^W4GL("PAR")
 Q
 ;
 ;
MSDPRT(STAM) ;
 I $G(%ARG("MSDPRT")) Q $G(%ARG("MSDPRT"))
 I $$GETP^%W1PRM("MSDPRT") Q $$GETP^%W1PRM("MSDPRT")
 Q 0
 ;
MSDPRTN(STAM)
 Q +$P($$MSDPRT,";",2)
 ;
KVZRKZ(STAM) ;
 I $G(%ARG("KVZRKZ")) Q $G(%ARG("KVZRKZ"))
 I $$GETP^%W1PRM("KVZRKZ") Q $$GETP^%W1PRM("KVZRKZ")
 Q 0
 ;
SELMSD ;
 N ST
 S ST=""
 N MSDR S MSDR=+$$MSDR^W4PRM
 S ST=ST_"<select id=""rest"" "
 S ST=ST_" onChange=""SetRest(this)"" "
 S ST=ST_">"
 S ST=ST_"<option value=""0"" "_$$SELECTED(0)_">"_$$^%W1DICT("CHOICEREST")_"</option>"
 N N S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(MSDR,N)) Q:N=""  D
 .I $$DLVWEB^W4DLVCSR,+MSDR=+N Q
 .S ST=ST_"<option value="""_N_""" "
 .S ST=ST_$$SELECTED(N)
 .S ST=ST_">"_$$NAME^W3MSD(N)_"</option>"
 S ST=ST_"</select>"
 W ST,! 
 Q 
 ;
 ;
SELECTED(REST) ;
 I +REST=$$MSDPRTN Q " selected=""selected"" "
 Q ""
 ;
MSD(STAM) ;
 I $G(%ARG("MSD")) Q %ARG("MSD")
 I $$GETP^%W1PRM("MSD") Q $$GETP^%W1PRM("MSD")
 Q 0
 ;
CURGR(STAM) ; 
 I $G(%ARG("CDKV")) Q %ARG("CDKV")
 Q $$^W3FRSTGR
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3KVPMV
W3KVPMV ; [ 14.11.17 16:47 ] [ 28.01.08 20:36 ] [
 Q
 ;
MV2KVP(STAM) ;
 N CURPRTCD,CDKV
 S CURPRTCD=$$GET^%W1PRM("CURPRTCD")
 S CDKV=$$GET^%W1PRM("CDKV") I 'CDKV Q -1
 I 'CURPRTCD Q 0
 D PUT^W4P(CURPRTCD,"SUG",CDKV)
 Q 1
 ;
BDKV(STAM)
 N CURPRTCD,CDKV
 S CDKV=$$GET^%W1PRM("CDKV") I 'CDKV Q -1
 S CURPRTCD=$$GET^%W1PRM("CURPRTCD")
 I 'CURPRTCD Q 1
 I $$SUG^W4P(CURPRTCD) Q 1
 I $$SUG^W4P(CURPRTCD)=CDKV Q 1
 Q 0
 ;
MV2PRT(STAM) ;
 N CURKVPCD
 S CURKVPCD=$$GET^%W1PRM("CURKVPCD")
 I 'CURKVPCD Q 0
 D PUT^W4P(CURKVPCD,"SUG","")
 Q 1
 

W3KVPRT
W3KVPRT ; [ 05.08.23 11:52 ] [ 03.08.23 16:10 ] [ 23.11.22 12:58 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 I $G(%ARG("NEWSET")) Q
 I $G(%ARG("SET"))=0 Q
 I $G(%ARG("SHOW"))=0 Q
 D PUT^%W3DEB("W3KVPRT","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 ;
 D GLPRT
 ;
 W "<div align=""center"" >",!
 D CHECKALL("")
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  I $G(%ARG("SET"))!$G(%ARG("PRTBH")) S WDCD=8
  ;
  W "<th>"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th>"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("PRICE")_"</th>"
  I '$G(%ARG("PRTBH")) W "<th>"_$$^%W1DICT("ITEMSGROUP")_"</th>"
  W "<th>"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 I '$L($G(SRCH)),$$MSG^W4MUCHIT($G(%ARG("KV"))) Q
 ;
 N N,I,VIB
 S N="",I=0 F  S N=$O(@GLPRT@(N)) Q:N=""  D
 .N SUG S SUG=$$SUG(N)
 .S VIB=1
 .D
 ..;;I '$$MSDPRT,'$$KVZRKZ,SUG,$D(@$$^W4GL("PARSUG")@(SUG))=0 S VIB=0 Q
 ..I '$$MSDPRT,'$$KVZRKZ,$G(%ARG("CDKV")),%ARG("CDKV")=SUG S VIB=0 Q
 ..I $G(%ARG("SET"))!$G(%ARG("MEAT")),$D(^[$$^W3MAIN]TMPSET($$^%W1JB,N)) S VIB=0 Q
 ..;
 ..I $G(%ARG("PRTBH")),$D(^[$$^W3MAIN]TMPPAR($$^%W1JB,N)) S VIB=0 Q
 ..I $$MSDPRT!$$KVZRKZ,$D(^[$$^W3MAIN]TMPPAR($$^%W1JB,N)) S VIB=0 Q
 ..I SUG,$G(%ARG("KV")),%ARG("KV")'=SUG S VIB=0 Q
 ..I '$$KVZRKZ,$G(%ARG("KV"))="NO",SUG S VIB=0 Q
 ..I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) S VIB=0 Q
 .
 .Q:'VIB 
 .
 .W "<tr id=""trprt"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"" "
 . W ">&nbsp;"_$J($$MH^W4P(N),2,2)_"&nbsp;"
 .W "</td>"
 .
 .I '$G(%ARG("PRTBH")) D
 ..W "<td align=""center"">&nbsp;"_$$SUG1(N)_"&nbsp;</td>"
 .
 .N ID,PROC
 .S ID="chprt"_N
 .S PROC="OnClickTbl('"_N_"','TblPrt','trprt','chprt')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GLPRT ;
 I $D(%ARG("SET"))!$G(%ARG("MEAT")) S GLPRT=$$^W4GL("PAR") Q
 I $D(%ARG("PRTBH")) S GLPRT=$$^W4GL("PAR") Q
 I $$MSDPRT!$$KVZRKZ S GLPRT=$$^W4GL("PAR") Q
 S GLPRT="^[$$^W3MAIN]TMPPAR($$^%W1JB)"
 Q
 ;
SUG(PAR) N GLPRT D GLPRT
 ;;I $$KVZRKZ Q $G(@$$^W4GL("W4KVZRKZ")@(PAR))
 Q $P($G(@GLPRT@(PAR)),"**",5)
 ;
SUG1(PAR) ;
 N SUG S SUG=$$SUG(PAR)
 I 'SUG Q $$^%W1DICT("NOGROUP")
 ;;I $$KVZRKZ Q $$H2U^%L1FRM($G(@$$^W4GL("W4GRC")@(SUG)))
 Q $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(SUG)))
 ;
 ;
CHECKALL(NM,TBID,CHKID) ;
 I $G(NM)="" S NM="ITEMSTABLE"
 I $G(TBID)="" S TBID="TblPrt"
 I $G(CHKID)="" S CHKID="chprt"
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""98%"" >",!
 W " <tr>"
  W "<td width=""80%"">"
   W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"
    W $$^%W1DICT(NM)
   W "</span>",!
  W "</td>",!
  W "<td>"
   W $$^%W1DICT("SIGNALL")_"&nbsp;"
   W "<input type=""checkbox"" id=""chktbl"" onClick=""ClickChkTbl(this,'"_TBID_"','"_CHKID_"')"" />",!
  W "</td>",!
 W " </tr>",!
 W "</table>",!
 Q
 ;
MSDPRT(STAM) ; 
 Q $$MSDPRT^W3KVPIDK 
 ;
KVZRKZ() ; 
 Q $$KVZRKZ^W3KVPIDK 
 ;
SIGNPRT(N) ; 
 W $$^W4TOUCH_"=""OnClickTbl('"_N_"','TblPrt','trprt','chprt')"" "
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3KVSD
W3KVSD ; [ 10.08.21 11:59 ] [ 30.10.10 08:03 ] [ 28.03.08 20:17 ] 
 N (JB,%ARG)
 I $G(JB)="" W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 W "<div align=""center"" >",!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""50%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""14%"">"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W "<th width=""14%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""54%"">"_$$^%W1DICT("GROUPNAME")_"</th>"
 W "<th width=""18%"">"_$$^%W1DICT("MOVE")_"</th>"
 W "</tr>",!
 N N,NN,I
 D GL
 ;
 K @GL
 M @GL=@$$^W4GL("P1KVZSID")
 ;
 S NN="",I=0 F  S NN=$O(@GL@(NN)) Q:NN=""  D
 .S N=$G(^(NN)) Q:N=""
 .I '$$^W4VWGR(N) Q
 .W "<tr id=""tr"_N_""""
 .I $D(@GL@(NN,"CUR")) W " style=""background-color:#eaeaea"""
 .W " >" S I=I+1
 .
 .W "<td align=""center"" style=""font-size:"_$$^W3FSZ(12)_";color:white;background-color:gray"" >&nbsp;"_I_"&nbsp;</td>"
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"&nbsp;</td>"
 .
 .W "<td align=""center""><img src=""w3vverx.jpg"" style=""cursor:pointer"" onClick=""Vverx("_I_")""/>",!
 .W "<img src=""w3vniz.jpg"" style=""cursor:pointer"" style=""cursor:pointer"" onClick=""Vniz("_I_")"" />",!
 .W "</td>",!
 .W "</tr>",!
 W "</div>",!
 Q
 ;
SAVEND(PRM) ;
 D GL
 N CD
 K @$$^W4GL("P1KVZSID0")
 M @$$^W4GL("P1KVZSID0")=@$$^W4GL("P1KVZSID")
 M @$$^W4GL("P1KVZSID")=@GL
 Q
GL S GL="^[$$^W3MAIN]TMP(JB)"
 Q
 

W3KVSDK
W3KVSDK ; [ 05.08.23 06:48 ] [ 10.08.21 11:59 ] [ 11.07.14 16:27 ] 
 N (JB,%ARG)
 I $G(JB)="" W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 D NOSELECT^%W1JS
 W "<div align=""center"" >",!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""70%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""10%"">"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""48%"">"_$$^%W1DICT("GROUPNAME")_"</th>"
 W "<th width=""14%"">"_$$^%W1DICT("MOVE")_"</th>"
 W "<th width=""18%"">"_$$^%W1DICT("NEWORDINUMBER")_"</th>"
 W "</tr>",!
 N N,NN,I
 D GL
 ;
 I '$G(%ARG("SWAP")) D
 .N I S I=$O(@$$^W4GL("P1KVZSID")@(99999),-1)
 .N N S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 ..I '$$^W4VWGR(N) Q
 ..I '$$SRCSID(N) S I=I+1,@$$^W4GL("P1KVZSID")@(I)=N
 .K @GL
 .S NN="",I=0 F  S NN=$O(@$$^W4GL("P1KVZSID")@(NN)) Q:NN=""  D
 ..S N=$G(^(NN)) Q:N=""
 ..I '$$^W4VWGR(N) Q
 ..I '$D(@$$^W4GL("PARSUG")@(N)) Q
 ..S I=I+1 M @GL@(I)=@$$^W4GL("P1KVZSID")@(NN)
 ;
 S NN="",I=0 F  S NN=$O(@GL@(NN)) Q:NN=""  D
 .S N=$G(^(NN)) Q:N=""
 .W "<tr id=""tr"_N_""""
 .I $D(@GL@(NN,"CUR")) W " style=""background-color:#eaeaea"""
 .W " >" S I=I+1
 .
 .W "<td align=""center"" style=""font-size:"_$$^W3FSZ(12)_";color:white;background-color:gray"" >&nbsp;"_I_"&nbsp;</td>"
 .
 .W "<td id=""cd"_N_""" "
 . W " onmousedown=""MouseDown(this,'"_I_"',event)"" "
 . W " onmouseover=""this.style.cursor='pointer'"" "
 . ;;W " onmouseout=""this.style.backgroundColor='white'"" "
 .W ">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"&nbsp;</td>"
 .
 .D TDVRXNIZ(N)
 .
 .W "<td id=""newnmb"_N_""" >",!
 .W "<input type=""button"" value="""_$$^%W1DICT("NEWORDINUMBER")_""" onClick=""NewOrdiNumber('"_N_"')"" />",!
 .W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
TDVRXNIZ(N)
 W "<td align=""center"">"
 W " <table width=""100%""><tr>"
  W " <td align=""center"" style=""cursor:pointer"" onClick=""Vverx('"_N_"')"">",!
  W "  <img src=""w3vverx.jpg"">",!
  W " </td>",!
  W " <td align=""center"" style=""cursor:pointer"" onClick=""Vniz('"_N_"')"">",!
  W "  <img src=""w3vniz.jpg"">"
  W " </td>"
 W " </tr></table>",!
 W "</td>" 
 Q
 ;
SAVEND(PRM) ;
 N CD D GL D CLEAR
 K @$$^W4GL("P1KVZSID0")
 M @$$^W4GL("P1KVZSID0")=@$$^W4GL("P1KVZSID")
 K @$$^W4GL("P1KVZSID")
 M @$$^W4GL("P1KVZSID")=@GL
 K @GL
 Q
GL S GL="^[$$^W3MAIN]TMP(JB)"
 Q
SWAP(CD,DRC) ;
 D GL N NAT,NST0 S NST=""
 D CLEAR
 S NST=$$GETPN(CD)
 Q:'NST
 N A,A0,NST0
 S A=$G(@GL@(NST))
 S NST0=$O(@GL@(NST),DRC) I NST0="" Q
 S A0=$G(@GL@(NST0))
 S @GL@(NST)=A0
 S @GL@(NST0)=A
 S @GL@(NST0,"CUR")=1
 Q
SWAPN(PRM) ;
 D CLEAR
 N NMB,CD
 S NMB=+PRM,CD=$P(PRM,";",2)
 G:'NMB SWPNE G:'CD SWPNE
 N NST S NST=$$GETPN(CD) G:'NST SWPNE
 Q $$SWAPN1(NMB,NST,1)
 ;
SWAPN1(NMB,NST,PR) ;
 D GL
 N VLO S VLO=$G(@GL@(NST))
 D DEL^%L1GSEQ(GL,NST)
 I NST+1<NMB,'$G(PR) S NMB=NMB-1
 N N,I,OK S N="",I=0,OK=0
 D ADD^%L1GSEQ(GL,NMB,VLO,OK)
 S @GL@(NMB,"CUR")=1
 Q 1
 ;
SWPNE Q 0
 ;
GETPN(CD) ;
 D GL N N,NP S NP=""
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I $G(^(N))=CD S NP=N Q
 Q NP
CLEAR ;
 D GL N N S N="" F  S N=$O(@GL@(N)) Q:N=""  K ^(N,"CUR")
 Q
SRCSID(CDGR) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1KVZSID")@(N)) Q:N=""  I $G(^(N))=CDGR S OK=N Q
 Q OK
 
 
 
 
 
 
 
 

W3KVSDK0
W3KVSDK ; [ 14.02.08 10:00 ] [ 12.02.08 22:55 ] [ 11.02.08 22:26 ]
 N (JB,%ARG)
 I $G(JB)="" W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 W "<div align=""center"" >",!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white"" width=""50%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""14%"">"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W "<th width=""14%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""54%"">"_$$^%W1DICT("GROUPNAME")_"</th>"
 W "<th width=""18%"">"_$$^%W1DICT("MOVE")_"</th>"
 W "</tr>",!
 N N,NN,I
 D GL
 ;
 I '$G(%ARG("SWAP")) D
 .K @GL
 .M @GL=@$$^W4GL("P1KVZSID")
 ;
 S NN="",I=0 F  S NN=$O(@GL@(NN)) Q:NN=""  D
 .S N=$G(^(NN)) Q:N=""
 .I $G(@$$^W4GL("W3SUG"))=0 Q
 .W "<tr id=""tr"_N_""""
 .I $D(@GL@(NN,"CUR")) W " style=""background-color:#eaeaea"""
 .W " >" S I=I+1
 .
 .W "<td align=""center"" style=""font-size:12pt;color:white;background-color:gray"" >&nbsp;"_I_"&nbsp;</td>"
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"&nbsp;</td>"
 .
 .W "<td align=""center""><table><tr><td><img src=""w3vverx.jpg"" style=""cursor:pointer"" onClick=""Vverx('"_N_"')""/></td>",!
 .W "<tr><td><img src=""w3vniz.jpg"" style=""cursor:pointer"" style=""cursor:pointer"" onClick=""Vniz('"_N_"')"" /></td></tr></table>",!
 .W "</td>",!
 .W "</tr>",!
 W "</div>",!
 Q
 ;
SAVEND(PRM) ;
 N CD
 K @$$^W4GL("P1KVZSID0")
 M @$$^W4GL("P1KVZSID0")=@$$^W4GL("P1KVZSID")
 M @$$^W4GL("P1KVZSID")=@GL
 Q
GL S GL="^[$$^W3MAIN]TMP(JB)"
 Q
SWAP(CD,DRC) ;
 D GL S NST=""
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  K @GL@(N,"CUR") I @GL@(N)=CD S NST=N Q
 Q:'NST
 N A,A0,NST0
 S A=$G(@GL@(NST))
 S NST0=$O(@GL@(NST),DRC) I NST0="" Q
 S A0=$G(@GL@(NST0))
 S @GL@(NST)=A0
 S @GL@(NST0)=A
 S @GL@(NST0,"CUR")=1
 Q

W3KVZIDK
W3KVZIDK ; [ 10.08.21 12:00 ] [ 12.06.12 15:20 ] [ 29.10.08 14:14 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 W "<div align=""center"" >",!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""70%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""10%"">&nbsp;</th>"
 W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("GROUPNAME")_"</th>"
 W "<th width=""30%"">"_$$^%W1DICT("COMMENT")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("ITEMSHOW")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 N N,I
 S N="",I=0 F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 .W "<tr>" S I=I+1
 .
 .W "<td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 .W " onClick=""InsertRow('"_N_"')""> + </span><br /><span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" onClick=""DeleteRow('"_N_"')"" > - </span></td>"
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;<input id=""name"_N_""" type=""text"" size=""24"" maxlength=""24"" value="""_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_""" onChange=""OnChange('"_N_"')"" onKeyPress=""OnKeyPressNm("_N_")"" />&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;<input id=""cmnt"_N_""" type=""text"" size=""24"" maxlength=""24"" value="""_$$H2U^%L1FRM($$CMNT^W3PARSUG(N))_""" onChange=""OnChange('"_N_"')"" onKeyPress=""OnKeyPressNm("_N_")"" />&nbsp;</td>"
 .
 .S CHECKED=1,DIS=0
 .I '$$^W4VWGR(N) S CHECKED=0,DIS=0
 .W "<td align=""center""><input name=""show"" type=""checkbox"" id=""show"_N_""""
 .I CHECKED W " checked=""checked"""
 .I DIS W " disabled=""disabled"" "
 .W " onClick=""OnChange('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center""><input name=""chn"" id=""chn"_N_""" type=""checkbox"" disabled=""disabled"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 S CD=$P(PRM,"~")
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) D  Q 1
 .K @$$^W4GL("W3SUG")@(CD)
 .K ^[$$^W3MAIN]TMPDEL(JB,CD)
 .K @$$^W4GL("PARSUG")@(CD)
 ;
 S NM=$$CNWEB^%L1FRM($P(PRM,"~",2))
 S CMNT=$$CNWEB^%L1FRM($P(PRM,"~",3))
 S SHOW=$P(PRM,"~",4)
 ;
 S @$$^W4GL("PARSUG")@(CD)=$S($$^%W1DIR="RTL":$$INVH^%L1FRM(NM),1:NM)
 D PUT^W3PARSUG(CD,"CMNT",$S($$^%W1DIR="RTL":$$INVH^%L1FRM(CMNT),1:CMNT))
 ;
 I SHOW=0 S @$$^W4GL("W3SUG")@(CD)=0
 I SHOW'=0 K @$$^W4GL("W3SUG")@(CD)
 Q 1
 ;
SAVEND ;
 K ^[$$^W3MAIN]TMPDEL(JB)
 K ^[$$^W3MAIN]TMPLAST(JB)
 Q
 ;
DELROW(CD) ;
 Q:'$G(JB)
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) K ^(CD) Q
 S ^[$$^W3MAIN]TMPDEL(JB,CD)=$G(@$$^W4GL("PARSUG")@(CD))
 Q
NEWCOD(STAM) ;
 N A S A=$O(@$$^W4GL("PARSUG")@(9999999),-1)+1
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
 

W3L
W3L ; [ 11.07.23 12:12 ] [ 02.08.21 13:24 ] [ 09.02.21 11:05 ] 
SHIVUK(LKH) Q 0
LKH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH),"*")
 ;
PRATI(LKH,GL)
 N NAME S NAME=$$SPA^%L1FRM($$LKH(LKH,$G(GL)))
 I $$^%W1DIR="RTL" Q $P(NAME," ",$L(NAME," "))
 Q $P(NAME," ")
 ;
SHORT(LKH,GL)
 S GL=$G(GL)
 N NAME S NAME=$$SPA^%L1FRM($$LKH(LKH,GL))
 N LAST S LAST=$P(NAME," ",$S($$^%W1DIR="RTL":1,1:$L(NAME," ")))
 Q $S($$^%W1DIR="RTL":$E(LAST,$L(LAST)),1:$E(LAST))_" "_$$PRATI(LKH,GL)
 ;
D(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH))
D1(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,1))
D2(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,2))
 ;
KTV(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,1),"*",5))
 ;
KTV1(LKH,GL) D GL N KTV S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV G KTV11
 I $$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_" "_KTV
KTV11 ;
 I $L($$IR(LKH,GL)) S KTV=$$IR(LKH,GL)_","_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTV2(LKH,GL) D GL N KTV S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV Q KTV
 I $$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_" "_KTV Q KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTVM(LKH,GL) ;
 N KTV D GL
 I $G(LKH)="" Q ""
 I '($$D1(LKH,GL)#2) Q ""
 S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV G KTVM1
 I $$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_" "_KTV
KTVM1 I $$KOMA(LKH,GL) S KTV=$$KOMA(LKH,GL)_" dnew "_KTV
 I $L($$IR(LKH,GL)) S KTV=$$IR(LKH,GL)_","_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTVMM(LKH,GL) ;
 N KTV D GL S KTV=$$KTVM(LKH,GL) Q:KTV?.P $$MIKUD(LKH,GL)
 I $$MIKUD(LKH,GL) S KTV=$$MIKUD(LKH,GL)_" "_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
ITRA(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",4)
 ;
GDCR(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",3)'>0 Q 9999999
 Q +$P(@GL@(LKH,2),"*",3)
 ;
ISCR(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q $S($G(@$$^W4GL("P1PRM")@("ISCRY")):1,1:0)
 I $P(@GL@(LKH,2),"*",2)="k"!($P(@GL@(LKH,2),"*",2)=1) Q 1
 Q 0
 ;
ISCH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",1)="l"!($P(@GL@(LKH,2),"*",1)=0) Q 0
 Q 1
 ;
SHOTEF(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",14)
 ;
EMAIL(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $$^W4MSD(LKH) Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",22))
 ;
COMP(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $$^W4MSD(LKH) Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",23))
 ;
BAR(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $L(LKH)>3 Q 0
 D GL
 N SUGL1 S SUGL1=$$SUGL1(LKH,GL)
 Q (SUGL1["xa"!(SUGL1["BAR"))
 ;
MAM(LKH,DT,GL) ;
 I $$NOMAM(LKH,GL) Q 0
 G MAM1
MAMD(DT) ;
MAM1 I '$G(DT) Q @$$^W4GL("P1PRM")@("MAM")
 I DT<$$^%L1DC("15.06.02",3) Q 17
 I DT<$$^%L1DC("01.03.04",3) Q 18
 I DT<$$^%L1DC("01.09.05",3) Q 17
 I DT<$$^%L1DC("01.07.06",3) Q 16.5
 G MAM21
MAM2(DT) ;
MAM21 I $D(@$$^W4GL("P1MAM")@(DT)) Q @$$^W4GL("P1MAM")@(DT)
 I $O(@$$^W4GL("P1MAM")@(DT))'="" Q $G(@$$^W4GL("P1MAM")@($O(@$$^W4GL("P1MAM")@(DT))))
 Q @$$^W4GL("P1PRM")@("MAM")
 ;
NOMAM(LKH,GL) ;
 I '$G(@$$^W4GL("P1PRM")@("MAM")) Q 1
 I $G(LKH)="" Q ""
 I $$^W4MSD(LKH) Q 0
 D GL
 Q $$IR(LKH,GL)["zli`"
 ;
ASM(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q ($P(@GL@(LKH,2),"*",12)="k")
 ;
MAZAV(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",18)="d" Q 0.5
 Q $P(@GL@(LKH,2),"*",18)'="q"
 ;
PELE(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",19))
 ;
MZM(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q ($P(@GL@(LKH,2),"*",15)="k")
 ;
 ;
DATPTH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",13)
 ;
HESB(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,1),"*",1)
 ;
HNH(LKH,GL) Q:$G(LKH)="" ""  D GL Q:$$SUGL(LKH,GL)="" ""
 N LKHR S LKHR=$$LKHR(LKH)
 I 'LKHR Q $$HN(LKH,GL)
 I $G(@$$^W4GL("P1PRM")@("LKHR"))!'$$HN(LKH,GL) Q $$HN(LKHR,GL)
 Q $$HN(LKH,GL)
HN(LKH,GL) Q $TR($G(@$$^W4GL("SUGL")@(+$$SUGL(LKH,GL),1))," ","")
 ;
TZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",2))
 ;
BAIT(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",3))
 ;
DIRA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",6))
 ;
KOMA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",4))
 ;
TELB(LKH,GL) Q:$G(LKH)="" ""
 Q $$TELB^W4L(LKH,$G(GL))
 ;
 D GL
 Q $$SPA^%L1FRM($S($P($G(@GL@(LKH,1)),"*",7):$P($G(@GL@(LKH,1)),"*",7),1:$$PELE(LKH,GL)))
 ;
TELA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",8))
 ;
IHZM(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",8)="k"
 ;
FAX(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",15))
 ;
MODEM(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",19))
 ;
CNISA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",9)
 ;
CMNT(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",10))
 ;
AGREE(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,3)),"*",4)
 ;
IR(LKH,GL) Q:$G(LKH)="" ""  N IR
 D GL
 S IR=$P($G(@GL@(LKH,1)),"*",13)
 S:IR="" IR=$G(@$$^W4GL("P1PRM")@("IR"))
 Q $$SPA^%L1FRM(IR)
 ;
MIKUD(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",14))
 ;
JOMH(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",17)
 ;
JOMHBZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",20)
 ;
JOMNS(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",21)
 ;
MIKZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",18)
 ;
MIKZ1(LKH,GL) D GL I $$MIKZ(LKH,GL) Q $G(^MIKZ($$MIKZ(LKH)))
 Q ""
 ;
AH(LKH,GL) Q:$G(LKH)="" ""
 D GL
 D PUT^%W3DEB("AH^P1L","LKH=LKH & GL=GL")
 I $L(LKH)>3,$$SUGL(LKH,GL)?1N.N Q $$HNH(LKH,GL)
 N LKHR
 S LKHR=$$LKHR(LKH)
 I $L(LKH)>3,LKHR Q $P($G(@GL@(LKHR,2)),"*",7)
 Q $P($G(@GL@(LKH,2)),"*",7)
 ;
MHKV(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",11)
 Q ""
 ;
TLUSH(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I $P($G(@GL@(LKH,2)),"*",17) Q $P($G(@GL@(LKH,2)),"*",17)
 I $G(@$$^W4GL("P1EZL")@(LKH)) Q $P($G(@GL@(@$$^W4GL("P1EZL")@(LKH),2)),"*",17)
 Q ""
 ;
TRHMDL(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",16)
 Q ""
 ;
SUGL(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",5))
 ;
SUGL1(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I LKH>999 Q:$$SUGL(LKH,GL)="" ""  Q $G(@$$^W4GL("SUGL")@(+$$SUGL(LKH,GL)))
 Q:$$SUGL(LKH,GL)="" ""
 Q $G(@$$^W4GL("SUGS")@(+$$SUGL(LKH,GL)))
 ;
SUGS(LKH,GL) D GL Q +$$SUGL(LKH,GL)
 ;
SUGOTH(LKH,GL) I $G(LKH)="" Q 0
 I $L(LKH)>3 Q 0
 D GL
 N SUGL1 S SUGL1=$$SUGL1(LKH,GL)
 Q $$^P1OTH(SUGL1)
 ;
INTERES(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,3)),"*",2)
 ;
HAGAA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,3)),"*",1)
 ;
LKHR(LKH) Q:$G(LKH)="" ""
 Q $$SPA^%L1FRM($G(@$$^W4GL("P1EZL")@(LKH)))
 ;
LKHR1(LKH,GL) Q:$G(LKH)="" ""
 D GL
 N LKHR S LKHR=$$LKHR(LKH) I LKHR="" Q ""
 Q $$LKH(LKHR,GL)
 ;
PSW(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",3))
 ;
PUT(LKH,RKV,PRZ,GL) ;
 D GL
 S RKV=$TR(RKV,"*\","X/")
PUT1 D GL I PRZ="LKH" D  Q
 .N FILE,STRING
 .S FILE="^[$$^W3MAIN]LKH",STRING=LKH D KF^%L1SCSV
 .S @GL@(LKH)=RKV S FILE="^[$$^W3MAIN]LKH",STRING=LKH D SF^%L1SCSV
 I PRZ="KTV" S $P(@GL@(LKH,1),"*",5)=RKV D SF("^[$$^W3MAIN]LKH",LKH,RKV,1) Q
 I PRZ="TELB" S $P(@GL@(LKH,1),"*",7)=RKV D LKHT(RKV,LKH) Q
 I PRZ="TELA" S $P(@GL@(LKH,1),"*",8)=RKV D LKHT(RKV,LKH) Q
 I PRZ="KOMA" S $P(@GL@(LKH,1),"*",4)=RKV Q
 I PRZ="DIRA" S $P(@GL@(LKH,1),"*",6)=RKV Q
 I PRZ="BAIT" S $P(@GL@(LKH,1),"*",3)=RKV D SF("^[$$^W3MAIN]LKH",LKH,$$INV^%L1FRM(RKV),1) Q
 I PRZ="CNISA" S $P(@GL@(LKH,1),"*",9)=RKV Q
 I PRZ="CMNT" S $P(@GL@(LKH,1),"*",10)=RKV Q
 I PRZ="IR" S $P(@GL@(LKH,1),"*",13)=RKV Q
 I PRZ="MIKUD" S $P(@GL@(LKH,1),"*",14)=RKV Q
 I PRZ="FAX" S $P(@GL@(LKH,1),"*",15)=RKV D LKHT(RKV,LKH) Q
 I PRZ="DATPTH" S $P(@GL@(LKH,2),"*",13)=RKV Q
 I PRZ="TRHMDL" S $P(@GL@(LKH,2),"*",16)=RKV Q
 I PRZ="ISCR" S $P(@GL@(LKH,2),"*",2)=RKV Q
 I PRZ="ISCH" S $P(@GL@(LKH,2),"*",1)=RKV Q
 I PRZ="GDCR" S $P(@GL@(LKH,2),"*",3)=RKV Q
 I PRZ="PELE" S $P(@GL@(LKH,2),"*",19)=RKV D LKHT(RKV,LKH) Q
 I PRZ="JOMH" S $P(@GL@(LKH,1),"*",17)=RKV Q
 I PRZ="JOMHBZ" S $P(@GL@(LKH,2),"*",20)=RKV Q
 I PRZ="JOMNS" S $P(@GL@(LKH,2),"*",21)=RKV Q
 I PRZ="PSW" S $P(@GL@(LKH,3),"*",3)=RKV Q
 I PRZ="EMAIL" S $P(@GL@(LKH,2),"*",22)=$$FUNC^%UCASE(RKV) Q
 I PRZ="COMP" S $P(@GL@(LKH,2),"*",23)=RKV Q
 I PRZ="AGREE" D  Q
 .I $G(RKV)="k"!($G(RKV)="Y")!($G(RKV)="y") S RKV=1
 .S $P(@GL@(LKH,3),"*",4)=+RKV
 Q
PUT2(LKH,PRZ,GL) ;
 I PRZ["=" N PRZ1,PRZ2,I S PRZ1=PRZ F I=1:1:$L(PRZ1,"<>") D
 .S PRZ2=$P(PRZ1,"<>",I),PRZ=$P(PRZ2,"="),RKV=$P(PRZ2,"=",2) I PRZ'?.P D PUT1
 Q
SF(FILE,STRING,SSS,NRFR) ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  S FILEi
 N IN,IN1,I,JJ
 Q:STRING=""
 Q:'$D(@(FILE_"(STRING)"))  I SSS'="" D
 .D KF(FILE,STRING,SSS,NRFR)
 .F I=1:1:$L(SSS," ") S IN=$P(SSS," ",I) I IN'="" D
 ..S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 ..S @(FILE_"i"_NRFR_"(IN1,STRING)")=""
 Q
KF(FILE,STRING,RFRS,NRFR) ;
 ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  K FILEi
 N IN,IN1,I,JJ Q:STRING=""
 F I=1:1:$L(RFRS," ") S IN=$P(RFRS," ",I) I IN'="" D
 .S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 .Q:IN1=""  K @(FILE_"i"_NRFR_"(IN1,STRING)")
 ;K STRINGOLD
 Q
LKHT(TEL,LKH) ;
 Q:$G(TEL)=""
 S @$$^W4GL("KLLKTH")@(TEL,LKH)=""
 Q
 ;
GLA(STAM) ;
 Q $$^W4GL("LKHA")
 ;
GLL(STAM) ;
 N GL
 D GL
 Q GL
 ;
GL ;
 I $G(GL)'="" Q
 I $$ONLINE^W4DLVCSR S GL="^[$$^W3MAIN]LKH" Q
 S GL=$$^W4GL("LKH")
 Q
CHECKCODE(LKH) ;
 I $$D(LKH) Q 1
 I $$D("03"_LKH) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 

W3LINKR
W3LINKR ; [ 25.09.08 11:21 ] [ 24.09.08 21:16 ] [
 N N,A,MSD,T
 S N="" F  S N=$O(^[$$^W3MAIN]W3LINK(N)) Q:N=""  D
 .S A=$G(^(N))
 .S MSD=$$MSD(A) Q:'MSD
 .S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 .I $$^%L1ZOS(10,UCI)<0 W !,UCI_" NOT FOUND !!!",! Q
 .S BD=$P(UCI,".")_".dat"
 .I $$^%L1ZOS(10,BD)<0 W !,BD_" NOT FOUND !!!",! Q
 .Q:'$D(^[UCI]W3ORD(N))
 .M ^[$$^W3MAIN]W3ORD(N)=^[UCI]W3ORD(N)
 .M ^[UCI]W3ORDOLD(N)=^[UCI]W3ORD(N)
 .K ^[UCI]W3ORD(N)
 .S ^[$$^W3MAIN]W3LINKR(MSD,N)=""
 .D LINKD(N,MSD)
 .I '$D(^[$$^W3MAIN]W3ORD(N,"S")),'$D(^[$$^W3MAIN]W3ORD(N,"D")) D
 ..S ^[$$^W3MAIN]W3LINKO(N)=^[$$^W3MAIN]W3LINK(N)
 Q
MSD(A) ;
 Q $P(A,"~",1)
 ;
LINKD(HZ,MSD) ;
 N DT
 S DT=$$^%L1DC($P(@$$^W3ORD(HZ)@(HZ),"~",5),3)
 Q:'DT  S ^[$$^W3MAIN]W3LINKD(DT,HZ)=MSD
 Q
TVD ;
 S N="" F  S N=$O(^[$$^W3MAIN]W3LINK(N)) Q:N=""  D
 .S A=$G(^(N))
 .S MSD=$$MSD(A) Q:'MSD
 .S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 .I $$^%L1ZOS(10,UCI)<0 W !,UCI_" NOT FOUND !!!",! Q
 .S BD=$P(UCI,".")_".dat"
 .I $$^%L1ZOS(10,BD)<0 W !,BD_" NOT FOUND !!!",! Q
 .D LINKD(N,MSD)
 .S ^[$$^W3MAIN]W3LINKR(MSD,N)=""
 Q

W3LKHA
W3LKHA ; [ 29.12.21 12:31 ] [ 06.03.08 14:23 ] [ 31.01.08 11:39 ] 
 I $ZG["/mumps.gld" W "IT'S MUMPS",! Q
 N I,N,GL S GL="^LKHA"
 F I=1:1:999 K @GL@(I)
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .;;I $D(^[$$^W3MAIN]LKH(N)) K @GL@(N)
 .S TELB=$TR($$TELB^W3L(N,GL),"-","")
 .S TELA=$TR($$TELA^W3L(N,GL),"-","")
 .S PELE=$TR($$PELE^W3L(N,GL),"-","")
 .I $L(TELB)>6 S ^LKHAT(TELB)=N
 .I $L(TELA)>6 S ^LKHAT(TELA)=N
 .I $L(PELE)>6 S ^LKHAT(PELE)=N
 Q
 

W3LKHATF
W3LKHATF ; [ 06.03.08 14:36 ] [ 31.01.08 11:39 ] [ 07.01.08 12:41 ]
 N I,N,GL S GL="^LKHA"
 F I=1:1:999 K @GL@(I)
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S TELB=$TR($$TELB^W3L(N,GL),"-","")
 .S TELA=$TR($$TELA^W3L(N,GL),"-","")
 .S PELE=$TR($$PELE^W3L(N,GL),"-","")
 .I $L(TELB)>6 S ^LKHAT(TELB)=N
 .I $L(TELA)>6 S ^LKHAT(TELA)=N
 .I $L(PELE)>6 S ^LKHAT(PELE)=N
 .I $$IR^W3L(N,GL)["`""z" S $P(@GL@(N,1),"*",13)="aia` lz"
 .I $$IR^W3L(N,GL)["b""x" S $P(@GL@(N,1),"*",13)="ob znx"
 .I $$IR^W3L(N,GL)["mizrab" S $P(@GL@(N,1),"*",13)="mizrab"
 .I $$IR^W3L(N,GL)["dilvxd" S $P(@GL@(N,1),"*",13)="dilvxd"
 .I $$IR^W3L(N,GL)["eti" S $P(@GL@(N,1),"*",13)="eti"
 .I $$IR^W3L(N,GL)["wxa ipa" S $P(@GL@(N,1),"*",13)="wxa ipa"
 Q

W3LKHSRV
W3LKHSRV ; [ 25.02.20 05:05 ] [ 05.09.19 15:50 ] [ 24.03.19 18:46 ] 
 N (JB,%ARG)
 D KILL^%W3DEB("W3LKHSRV")
 D PUT^%W3DEB("W3LKHSRV","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 S SRCH=$$CNWEB^%L1FRM($G(%ARG("SRCH")))
 S SRCH=$$SPA^%L1FRM(SRCH)
 S SRCH=$$INVH^%L1FRM(SRCH)
 D PUT^%W3DEB("W3LKHSRV","SRCH=SRCH")
 ;
 W "<div align=""center"" >",!
 W "<table id=""TblLkh"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""90%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""6%"">"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("CREDITPERMISSION")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("DELIVERYFREE")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("HBMAIL")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 N N,NN,I
 D GL,GLL,LKH
 ;
 N I S I=0
 K @GLL
 ;
 ;;I $$NOSRCH,'$$CHKDLVFR,'$$CHKCREDIT G ET
 ;
 I $TR(SRCH,"-","")?1N.N D STR($TR(SRCH,"-","")) G ET
 ;
 S NN="999",I=0 F  S NN=$O(@LKH@(NN)) Q:NN=""  D STR(NN)
 ;
ET W "</table>",!
 I 'I,$$CHKDLVFR!$$CHKCREDIT D
 .W "<script>"
 .W " MsgA('NODATA!')"
 .W "</script>",!
 W "</div>",!
 Q
 ;
STR(NLK) ;
 I $$CHKDLVFR,'$$DLVFREE(NLK) Q
 I $$CHKCREDIT,'$$ISCR^W3L(NLK) Q
 I $$HBMAIL,'$$IFHBMAIL^W4L(NLK) Q
 ;
 I $$NOSRCH,'$$DLVFREE(NLK),'$$ISCR^W3L(NLK),'$$IFHBMAIL^W4L(NLK) Q
 I $TR(SRCH,"-","")'?1N.N,'$$SRCH^W3HZPRTN($$INV^%L1FRM(SRCH),$$LKH^W3L(NLK)) Q
 I $TR(SRCH,"-","")?1N.N,'$$D^W3L(NLK) Q
STR1 W "<tr id=""tr"_NLK_""""
 W " >" S I=I+1
 ;
 I $$ISCR^W4L(NLK) S $P(@GL@(NLK),";")=1
 I $$DLVFREE(NLK) S $P(@GL@(NLK),";",2)=1
 I $$IFHBMAIL(NLK) S $P(@GL@(NLK),";",3)=1
 ;
 W "<td align=""center"" style=""font-size:"_$$^W3FSZ(12)_";color:white;background-color:gray"" >&nbsp;"_I_"&nbsp;</td>"
 ;
 W "<td id=""cd"_NLK_""">&nbsp;"_NLK_"&nbsp;</td>"
 ;
 W "<td align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""">&nbsp;"_$$H2U^%L1FRM($$LKH^W3L(NLK))_"&nbsp;</td>"
 ;
 W "<td align=""center"">"
  W "<input id=""cred"_NLK_""" type=""checkbox"" "_$S($$ISCR^W3L(NLK):"checked=""checked""",1:"")_" onClick=""ClickCredPerm('"_NLK_"')""/></td>",!
 W "<td align=""center""><input id=""dlv"_NLK_""" type=""checkbox"" "_$S($$DLVFREE(NLK):" checked=""checked""",1:"")_" onClick=""ClickDlvFree('"_NLK_"')""/></td>",!
 W "<td align=""center""><input id=""hbmail"_NLK_""" type=""checkbox"" "_$S($$IFHBMAIL(NLK):" checked=""checked""",1:"")_" onClick=""ClickHbMail('"_NLK_"')""/></td>",!
 W "<td align=""center""><input id=""cng"_NLK_""" type=""checkbox"" disabled=""disabled"" ></td>",!
 W "</tr>",!
 Q
 ;
SAVEND ;
 N N,A,GL S N="" D GL
 F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N)) Q:A=""
 .I '$G(@GL@(N,"CHN")) Q
 .D PUT^W4L(N,$P(A,";"),"ISCR")
 .D PUT^W4L(N,$P(A,";",3),"IFHBMAIL")
 .I $P(A,";",2) S @$$^W4GL("P1LKDM")@(N)=$P(A,";",2) Q
 .I '$P(A,";",2) K @$$^W4GL("P1LKDM")@(N)
 K @GL
 Q
 ;
GL S GL="^[$$^W3MAIN]TMP(JB)"
 Q
GLL S GLL="^[$$^W3MAIN]TMPLKH(JB)"
 Q
LKH N GL D GL^W3L S LKH=GL
 Q
 ;
SETDLVFREE(PRM) ;
 N LKH,VL,GL D GL
 S LKH=$P(PRM,";"),VL=$P(PRM,";",2)
 ;;N ISCR S ISCR=$P($G(@GL@(LKH)),";")
 ;;I ISCR="" S ISCR=$$ISCR^W3L(LKH)
 S $P(@GL@(LKH),";",2)=VL
 S @GL@(LKH,"CHN")=1
 Q
 ;
SETCREDIT(PRM) ;
 N LKH,VL,GL D GL
 S LKH=$P(PRM,";"),VL=$P(PRM,";",2)
 ;;N NODLV S NODLV=$P($G(@GL@(LKH)),";",2)
 ;;I NODLV="" S NODLV='$$DLVFREE(LKH)
 S $P(@GL@(LKH),";",1)=VL
 S @GL@(LKH,"CHN")=1
 Q
 ;
SETHBMAIL(PRM) ;
 N LKH,VL,GL D GL
 S LKH=$P(PRM,";"),VL=$P(PRM,";",2)
 ;;N ISCR S ISCR=$P($G(@GL@(LKH)),";")
 ;;I ISCR="" S ISCR=$$ISCR^W3L(LKH)
 S $P(@GL@(LKH),";",3)=VL
 S @GL@(LKH,"CHN")=1
 Q
 ;
DLVFREE(NLK) ;
 I $D(@$$^W4GL("P1LKDM")@(NLK)) Q 1
 Q 0
IFHBMAIL(NLK) ;
 I $$IFHBMAIL^W4L(NLK) Q 1
 Q 0
CHKDLVFR(STAM) ;
 I $G(%ARG("DLVFREE")) Q 1
 Q 0
CHKCREDIT(STAM) ;
 I $G(%ARG("CREDIT")) Q 1
 Q 0
HBMAIL(STAM) ;
 I $G(%ARG("HBMAIL")) Q 1
 Q 0
NOSRCH(STAM) ;
 I $G(SRCH)?.P,$G(SRCH)'?1"`" Q 1
 Q 0
 ;
TOPHD(STAM) ; 
 I $$1024^W4WDSCR Q 40
 Q 28 
 
 
 
 
 
 
 

W3LKLIST
W3LKLIST ; [ 11.11.10 17:22 ] [
 Q

W3LKPRT
W3LKPRT ; [ 05.08.23 13:00 ] [ 02.12.21 12:25 ] [ 17.01.18 15:38 ] 
 N (JB,%ARG,SRCH)
 D GL
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3LKPRT","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 ;
 W "<div align=""center"" >",!
 ;;W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("ITEMSTABLE")_"</span>",!
 D CHECKALL^W3KVPRT("")
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""13%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""13%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 I '$L($G(SRCH)),$$MSG^W4MUCHIT($G(%ARG("KV"))) Q
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .I $D(@$$^W4MAIN("TMPPAR")@(N)) Q
 .;;W "N="_N_" 1  SUG="_SUG_"  %ARG(LKH)="_%ARG("LKH"),!
 .S SUG=$$SUG^W4P(N)
 .I $G(%ARG("KV")),%ARG("KV")'=SUG Q
 .;;W "N="_N_" 4",!
 .I $G(%ARG("KV"))="NO",SUG Q
 .;;W "N="_N_" 5",!
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .;;W "N="_N_" 6",!
 .
 .W "<tr id=""trprt"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$J($$MH^W4P(N),2,2)_"&nbsp;</td>"
 .
 .N ID,PROC S ID="chprt"_N
 .S PROC="OnClickTbl('"_N_"','TblPrt','trprt','chprt')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GL ;
 S GL=$$^W4GL("PAR")
 Q
SUG(PAR) D GL
 Q $P(@GL@(PAR),"**",5)
 ;
SUG1(PAR) D GL
 N SUG S SUG=$$SUG(PAR)
 I 'SUG Q $$^%W1DICT("NOGROUP")
 Q $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(SUG)))
 
 
 
 
 
 
 
 
 
 

W3MAIN
W3MAIN(STAM) ; [ 03.07.26 03:06 ] [ 23.06.26 12:40 ] [ 03.10.24 04:50 ] 
 Q $$MSM_"mumps.gld"
 ;
WEBL(STAM) ;
 N MAIN S MAIN=$$^W3MAIN
 N WEBL S WEBL=^[MAIN]W3MAIN("WEBL")
 I $E(WEBL,$L(WEBL))'="/" S WEBL=WEBL_"/"
 Q WEBL
 ;
WEB(STAM) ;Q "http://www.2order.org/mumps-examples/jsp/"
 I $G(STAM)'=1 Q "./"  ; -- 13/08/24
 N MAIN S MAIN=$$^W3MAIN
 N WEB S WEB=^[MAIN]W3MAIN("WEB")
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 Q WEB
 ;
MSM(STAM) ;
 I $P($ZDIR,"/",1,3)="/opt/appsrv" Q "/opt/appsrv/envs/corp/app/mumps/"
 Q $P($ZDIR,"/",1,3)_"/app/mumps/"
 
 
 
 
 
 
 
 

W3MAIN0
W3MAIN(STAM) ; [ 22.12.07 20:17 ] [ 28.11.07 20:51 ] [ 26.11.07 13:02 ]
 Q "/usr/local/mumps/mumps.gld"
WEBL(STAM) Q "/var/lib/tomcat5.5/webapps/mumps-examples/jsp/"
WEB(STAM) Q "http://192.168.1.182:8180/mumps-examples/jsp/"

W3MEMBER
W3MEMBER ; [ 10.06.14 15:20 ] [ 12.06.12 10:44 ] [ 14.12.11 16:29 ]
 N (JB,%ARG)
 S MSD=$$GET^%W1PRM("MSD") I MSD="" Q
 D VIEW
 Q
 ;
CHECKPSW(PRM) ;
 N JB,USER,PSW
 S JB=$P(PRM,";")
 D KILL^%W3DEB("W3MEMBER")
 D PUT^%W3DEB("W3MEMBER","PRM=PRM")
 S USER=$P(PRM,";",2)
 S PSW=$P(PRM,";",3)
 N A S A=$$TEST^W3ORDLK(USER_"~"_PSW)
 I A D PUT^%W1PRM("CODE",USER)
 Q +A
 ;
 ;
VIEW ;
 N WD S WD="100%"
 W "<tr>",!
 W "<td>&nbsp;</td><td align=""center"">",!
  W "<table dir='"_$$^%W1DIR_"' border='0' cellpadding='5' width='100%'>",!
  W " <tr>",! ;---------------- NEW ORDER ----------
  W "  <td width=""90%"" align=""center""><input type='button' name='neword' id='newordid'"
        W " class='btnmenu' style='width:"_WD_"'"
        W " value='"_$$^%W1DICT("NEWORD")_"'"
        W " onClick=""NewOrdMemb('"_$G(JB)_"')"" />",!
  W "  </td>",!
  W " </tr>",!
  ;
  D OPT
  ;
  W " <tr>",!
  W "  <td align=""center"">",!
     W "<input type='button' name='back' id='backid'"
     ;;W " style='width:70%;font-size:14pt;color:red'"
     W " class='btnback' style='width:"_WD_"'"
     W " value='"_$$^%W1DICT("BACK")_"' "
     W " onClick=""Back2Enter('"_$G(MSD)_"')"" />"
  W "  </td>",!
  W " </tr>",!
  W "</table>",!
 W "</td>",! ;------------------- END BUTTON COLUMNS
 ;
 W "<td width=""20%"" >&nbsp;</td>",!
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td colspan=""2"" style='font-size:"_$$^W3FSZ(18)_"'>"
 I '$$DEMO^W3PRM(MSD) W $$LEVREF
 W $$^%W1DICT("LEVMAIN")
 I '$$DEMO^W3PRM(MSD) W "</a>"
 W "</td></tr>",!
 W "<tr><td colspan=""2"" style='font-size:"_$$^W3FSZ(18)_"'>",!
 I '$$DEMO^W3PRM(MSD) W $$LEVREF
 W " WWW.2ORDER.ORG"
 I '$$DEMO^W3PRM(MSD) W "</a>"
 W "</td></tr>",!
 W "</table>",!
 W "</div>",!
 Q
LEVREF(STAM) ;
 Q "<a href=""http://www.2order.org"" target=""_blank""> "
 ;
OPT ;
  S:'$D(WD) WD="100%"
  W " <tr>",! ;------------------- COPY OLD ORDER ------------
  W " <td align=""center"">",!
     W "<input type='button' name='oldord' id='oldordid'"
     W " class='btnmenu' style='width:"_WD_"'"
     W " value=' "_$$^%W1DICT("OLDORDCOPY")_" ' "
     W " onClick=""ListOrd('"_$G(JB)_"')"" />"
  W "  </td>",!
  W " </tr>",!
  W !
  W " <tr>",! ;------------------- ORDER STATUS ----------
  W " <td align=""center"">",!
     W "<input type='button' name='ordstat' id='ordstatid'"
     W " class='btnmenu' style='width:"_WD_"'"
     W " value=' "_$$^%W1DICT("ORDERLIST")_" ' "
     W " onClick=""ListOrdRep('"_$G(JB)_"')"" />"
  W "  </td>",!
  W " </tr>",!
  W !
  W " <tr>",! ;-------------------EDIT PROFILE -------------
  W " <td align=""center"">",!
     W "<input type='button' name='prof' id='profid'"
     W " class='btnmenu' style='width:"_WD_"'"
     W " value='"_$$^%W1DICT("EDITPROFILE")_"' "
     W " onClick=""ToProfile('"_JB_"')"" />"
  W "  </td>",!
  W " </tr>",!
  Q
 ;
SEL ;
  W " <tr>",!
     W " <td id=""hello"" colspan=""2"""
     W "align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""padding:0px;font-size:"_$$^W3FSZ(12)
     I $$SFC^W3CSS W ";color:red"
     I $$COLORDARK^W3CSS W ";color:white"
     W """>",!
     W " </td>",!
  W "</tr>",!
  ;
  I '$$OUTCOMP^W3VHOD D
  .W "<tr>",!
  .   W "<td dir="""_$$^%W1DIR_""" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""padding:0px;font-size:"_$$^W3FSZ(11)_""">",!
  .    W "<select id=""selopt"" style=""font-size:"_$$^W3FSZ(10)_""" onChange=""SelClick('"_JB_"')"" >",!
  .     W " <option >"_$$^%W1DICT("OPTIONSFORYOU")_"</option>",!
  .     W " <option value=""copy"" >"_$$^%W1DICT("OLDORDCOPY")_"</option>",!
  .     W " <option value=""list"" >"_$$^%W1DICT("ORDERLIST")_"</option>",!
  .     W " <option value=""unit"" >"_$$^%W1DICT("UNITORDER")_"</option>",!
  .     W " <option value=""profile"" >"_$$^%W1DICT("EDITPROFILE")_"</option>",!
  .    W "</select>",!
  .   W "</td>",!
  .   ;
  .   W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
  .   ;;I $$SFC^W3CSS D
  .   .W "<img src=""w3sfdo.jpg"" onClick=""SelClick('"_$G(JB)_"')"" />",!
  .   ;;I '$$SFC^W3CSS D
  .   .D ROUNDBUT^%W1JS("rbtsubmit",$$^%W1DICT("GO"),"SelClick("_$G(JB)_")",$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_";color:green;width:100%")
  .   W "</td>"
  .W " </tr>",!
  Q
CODE(LKH) ;
 S LKH=$TR(LKH,"!-","")
 I LKH="" Q 0
 D PUT^%W1PRM("CODE",LKH)
 N LKH1 S LKH1="0"
 S LKH1=$$LKH^W3L(LKH)
 Q $$^%W1DICT("HELLO")_" "_$$H2U^%L1FRM(LKH1)

W3MENU
W3MENU(STAM) ; [ 30.03.22 06:51 ] [ 29.03.22 19:13 ] [ 10.10.17 18:34 ] 
 I $G(MENU) Q 1
 I $G(%ARG("MENU")) Q 1
 I $G(NMB)="00000" Q 1
 I $G(%ARG("NMB"))="00000" Q 1
 I $$GET^%W1PRM("NMB")="00000" Q 1
 Q 0
 ;
INJB ;
 S:$G(%ARG("NEW")) %ARG("NEWPAGE")=1 D ^%W1ARG S JBOLD=$G(JB)
 K:$G(%ARG("NEWPAGE")) JB,%ARG("JB")
 I $G(JB),+$$DLVWEB^W4DLVCSR=0,$D(@$$^W3ORD(JB)@(JB)) K JB,%ARG("JB")
 Q
 ;
 ;
INIT ;
 I $G(%ARG("EDIT")) D INITEDIT Q
INIT1 ;
 D:$G(MSD) PUT^%W1PRM("MSD",MSD)
 I '$$DLVWEB^W4DLVCSR D PUT^%W1PRM("NMB","00000")
 D:$D(%ARG("PR800")) PUT^%W1PRM("PR800",%ARG("PR800"))
 ;
 I $G(%ARG("NEWPAGE")) D
 .D PUT^%W1PRM("NEWPAGE",1)
 .D PUT^%W1PRM("MSL",$G(%ARG("MSL")))
 .D PUT^%W1PRM("TAW",+$G(%ARG("TAW")))
 ;
 D:$D(%ARG("TFR")) PUT^%W1PRM("TFR",$G(%ARG("TFR")))
 S:$G(%ARG("COLOR"))="REST" %ARG("REST")=1
 D:$G(%ARG("REST"))?1N PUT^%W1PRM("REST",%ARG("REST"))
 D:$D(%ARG("HZMH")) PUT^%W1PRM("HZMH",$G(%ARG("HZMH")))
 ;
 D CRTMPTF^W3HZTFR
 ;
 I $L($G(%ARG("COLOR"))) D PUT^%W1PRM("COLOR",%ARG("COLOR"))
 ;
 I $L($G(%ARG("COUP"))) D PUT^%W1PRM("COUP",%ARG("COUP")) ; - MIVCA COUPONIM
 ;
 D:(+$$^W4DLVCSR=0)!$G(W3MENU) PUT^%W1PRM("DLVCSR","WEB")
 I $G(%ARG("DLVCSR")) D PUT^%W1PRM("DLVCSR",%ARG("DLVCSR"))
 ;
 I $G(%ARG("CODE")),$$DLVWEB^W4DLVCSR D PUT^%W1PRM("NMB",+$G(%ARG("CODE")))
 ;
 S:$D(CDKV)=0 CDKV=$G(@$$^W3TMPTF@($$^%W1JB,1,1,"KV"))
 I 'CDKV S CDKV=$$FIRSTGR^W3HZTFR
 D PUT^%W1PRM("CDKV",CDKV)
 ;
 I $G(%ARG("MSL")) D PUT^%W1PRM("COLOR","OG")
 ;
 I $G(%ARG("MSD"))=1&(+$G(%ARG("MSL"))=0)&($$COLOR^W3CSS="") D
 .D PUT^%W1PRM("COLOR","SF")
 ;
 S ITEMSHOW=$$CLWEB^%L1FRM($G(ITEMSHOW))
 D KILL^%W3DEB("W3MENU")
 D PUT^%W3DEB("W3MENU","JB=JB & MSD=MSD & ITEMSHOW=ITEMSHOW & ARG=[%ARG")
 ;
 I $G(@$$^W4TMPORD@("MVC2"))=1 K ^("MVC2")
 ;
 N MVC S MVC="" F  S MVC=$O(@$$^W4GL("W3COUP")@(MVC)) Q:MVC=""  D
 .I $G(@$$^W4TMPORD@(MVC))=1 K ^(MVC)
 Q
 ;
 ;
INITEDIT ;
 N ORD S ORD=$G(%ARG("EDIT")) I 'ORD G INIT1
 I '$D(@$$^W3ORD@(ORD)) G INIT1
 I $$CLOSE^W3HZMST(ORD) G INIT1
 ;
 S MSD=$$MSD^W3HZMST(ORD)
 S %ARG("MSD")=MSD
 S CODE=$$CODE^W3HZMST(ORD)
 I CODE="" S CODE=$$NMB^W3HZMST(ORD)
 S %ARG("CODE")=CODE
 S %ARG("LKH")=CODE
 D PUT^%W1PRM("JB0",JB)
 S JB=ORD
 S %ARG("JB")=JB
 D PUT^%W1PRM("HZM",ORD)
 K @$$^W3TMPORD(JB)
 M @$$^W3TMPORD@(JB)=@$$^W3ORD@(ORD)
 Q
 ;
SETMRK ; 
 I $$DLVWEB^W4DLVCSR D
 .I $$MMCC^W4PRM D PUT^W3HZMST(JB,"MKR",98)
 .N AZRPLGN S AZRPLGN=$$GETP^%W1PRM("AZRPLGN")
 .;
 .N MAP,AZ S MAP=$P(AZRPLGN,";"),AZ=$P(AZRPLGN,";",2)
 .I 'MAP!'AZ Q
 .I '$$GETP^%W1PRM("MRKTO") D PUTMRK(MAP,AZ)
 ..N SNIFIM S SNIFIM=$$SNIFIM^W3AZRIDK(MAP,AZ)
 ..I SNIFIM,SNIFIM?1N.N D PUT^%W1PRM("MRKTO",SNIFIM)
 Q
 ;
PUTMRK(MAP,AZ) ; 
 N SNIFIM S SNIFIM=$$SNIFIM^W3AZRIDK(MAP,AZ)
 I SNIFIM,SNIFIM?1N.N D PUT^%W1PRM("MRKTO",SNIFIM)
 Q
 
 
 
 
 
 

W3MENUBT
W3MENUBT ; [ 10.04.22 09:10 ] [ 03.04.22 12:30 ] [ 01.04.22 12:04 ] 
 N (JB,%ARG)
 I '$D(JB) S JB=$G(%ARG("JB"))
 S PR800=$$GET^%W1PRM("PR800")
 N LEFT S LEFT=0
 I $$^%W1DIR="RTL" S LEFT=870
 W "<div style=""position:absolute;top:0;left:0;width:100%;height:100%"
 I $$SFC^W3CSS W ";align:left"
 W """ >",!
 ;
 W "<table id=""TblBot"" width=""100%"" height=""100%"" dir="""_$$^%W1DIR_""" cellspacing=""0"" cellpadding=""0"" >",!
 W "<tr class=""fgbothd"""
 W " >",!
 ;
 W "<!-- ------------------------- I ( BACK HOME ) ------------------------- -->",!
 ;
 I $G(%ARG("SOPT"))="POP3" D  S WD=60 G TOT
 .W "<td valign=""center"" "
 .W " >"
 . D ^W4BUTTON("back","&nbsp;"_$$^%W1DICT("BACK")_"&nbsp;","Back()","background-color:red;color:white;font-weight:bold")
 .W "</td>",!
 ;
 W "<td valign=""center"" "
  D
  .N WD S WD="15%"
  .I $$DLVWEB^W4DLVCSR S WD="30%"
  .W " width="""_WD_""" "
 W " >"
  D BACK2ENTER
 W "</td>",!
 ;
 I $$DLVWEB^W4DLVCSR,$$USPRT D
 .W "<td valign=""center"" >"
 . D ^W4BUTTON("misc","&nbsp;"_$$^%W1DICT("MISC")_"&nbsp;","Misc()","background-color:orange;color:black;font-weight:bold;visibility:hidden")
 .W "</td>"
 ;
 W "<!-- --------------------------- II ------------------------------- -->",!
 S WD=45
 I $$DLVWEB^W4DLVCSR S WD=35
TOT ;
 W "<td valign=""center"""
  W " width="""_WD_"%"""
 W ">&nbsp;</td>",!
 ;
 W "<td valign=""center"""
 W ">"
  ;
  S TOTORD=$$TOTORD^W3HZMST(JB)
  D DLVTOT
 W "</td>"
 ;
 ;
 W "<!-- ---------------------- III  -------------------- -->",!
 ;
 W "<td width=""5%"">&nbsp;</td>",!
 ;
 W "<td id=""tddmsh"" >"
  D DLVPAY
 W "</td>"
 ;
 W "<td "
  W " width=""17%"" align=""center"" "
 W ">"
  D DISC
 W "</td>",!
 ;
 ;
 I $$COLOR^W3CSS="OG" D  ; ----------------- MSL - PEREHOD ------------
 .W " <td align=""left"" ><img src='w3perex1.jpg' /></td>",!
 ;
 ;
 W "<!-- ------------------ IV  ----------------- -->",!
 W "<td width=""33%"" align=""left"""
   I $$COLOR^W3CSS="OG" W " style=""background-color:#ff7c11"""
 W " >",!;
  W " <table dir="""_$$^%W1DIR_""""
   W " cellscpacing=""0"""
   W " cellpadding=""0"""
   W " width=""100%"" height=""100%"""
   W ">",!
   ;
   W "<tr>"
    W " <td align=""center"" class=""bottopay"" "
    W " >"
     D TOPAY
    W "</td>",!
    ;
    W "<td>&nbsp;</td>"
    ;
    W "<td align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
    W " >"
      D
      .I $G(%ARG("SOPT"))="POP3" W "&nbsp;" Q
      .D TERMORD
    W " </td>",!
    ;
    W "<td>"
    W "&nbsp;"
    W "</td>",!
   W "</tr>",!
  W "</table>"
 W "</td>",!
 ;
ENDBT ;
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
MTB(STAM) ;
 S MSD=$$GETP^%W1PRM("MSD") I 'MSD Q " "
 N N,OK S N="",OK=0
 F  S N=$O(^[$$^W3MAIN]W3MSDR(N)) Q:N=""  D  Q:OK
 .I $G(^(N,MSD)) S OK=N
 I 'OK Q " "
 Q $$MTB^W3MSDR(OK)
 ;
AHUZ(STAM) ;
 I $$ONLINE^W4DLVCSR!($$AHUZ^W3HZMST(JB)="") Q $$AHUZ^W3HZTFR
 Q $$AHUZ^W3HZMST(JB)
 ;
 ;
BACK2ENTER ;
 N MSD S MSD=+$$GET^%W1PRM("MSD")
 N IMG S IMG=$$^W3IMG("BACK2ENT","Back2Enter('"_MSD_"')") I IMG'="" W IMG Q
 ;
 I $$DLVWEB^W4DLVCSR D
 .W $$NBSP^%L1FRM(3)
 .D ROUNDBUT^%W1JS("cncex","&nbsp;"_$$^%W1DICT("EXIT")_"&nbsp;","Exit()","color:red;font-weight:bold")
 .W $$NBSP^%L1FRM(5)
 ;
 D ROUNDBUT^%W1JS("cncid","&nbsp;"_$$^%W1DICT("BACK2ENTER")_"&nbsp;","Back2Enter("_MSD_")","color:brown;font-weight:bold")
 Q
 ;
 ;
DLVTOT
 W $$^%W1DICT("TOTALINORDER")_"<br />"
 W "<input type=""text"" name=""totord"" id=""idtotord"" "
 W " value="""_$J(TOTORD,2,2)_""" ",!
 W "size=7 class=""botinp"" />",!
 Q
 ;
DLVPAY ;
  D
  .N IMG S IMG=$$^W3IMG("FGDLVPAY") I IMG'="" W IMG_" <br>" Q
  .
  .N FGC S FGC="" ;;S FGC=$$PRM^W3IMG("FGDLVPAY")
  .I FGC'="" W "<span style=""color:"_FGC_""">"
  .W $$^%W1DICT("DLVPAY")_"<br />"
  .I FGC'="" W "</span>"
  ;
  W " <input type=""text"" name=""dmsh"" id=""iddmsh"" size=7 "
  W " class=""botinp"" style=""color:darkblue"" "
  W " value="""_$S(TOTORD:$$DMSH^W3HZMST(JB),1:"")_""" />",!
 Q
 ;
 ;
DISC ;
 N HNH S HNH=$$HNH^W3HZMST(JB)
 N AH S AH=$$AHUZ
 I AH!HNH D
 .D
 ..N IMG S IMG=$$^W3IMG("FGDISC") I IMG'="" W IMG_" <br>" Q
 ..
 ..N FGC S FGC=$$PRM^W3IMG("FGDISC")
 ..I FGC'="" W "<span style=""color:"_FGC_""">"
 ..N DSC S DSC="DISCOUNTNET"
 ..I $$DLVWEB^W4DLVCSR D
 ...S DSC="DISCOUNT"
 ...N TOT S TOT=$$TSHL^W3HZMST(JB)-$$DMSH^W3HZMST(JB)+HNH 
 ...I HNH,$J(TOT*AH*.01,1,1)'=$J(HNH,1,1) S DSC="DISCONT"
 ..W $$^%W1DICT(DSC,AH)_"<br />"
 ..I FGC'="" W "</span>"
 .
 .W "<input type=""text"" name=""discont"" id=""iddiscont"" "
 .W "size=7 class=""botinp"" style=""color:red""/>",!
 Q
 ;
 ;
TOPAY ;
 I $$SFC^W3CSS D  G TOPAYIN
 .W "<img src=""w3sftot.jpg"" /><br />"
 ;
 N IMG S IMG=$$^W3IMG("FG2PAY") I IMG'="" W IMG_" <br>" G TOPAYIN
 ;
 N FGC S FGC=$$PRM^W3IMG("FG2PAY")
 I FGC'="" W "<span style=""color:"_FGC_""">"
 W $$^%W1DICT("TOPAYMENT")_"<br />"
 I FGC'="" W "</span>"
 ;
TOPAYIN W "<input type=""text"" name=""sum"" id=""idsum"" "
 W "size=7 class=""botinp"" />",!
 Q
 ;
 ;
TERMORD ;
 I $$SFC^W3CSS D  Q
 .W "<img id=""termid"" src=""w3sfend.jpg"""
 .W " style=""position:absolute;left:0;top:0;height:60px;cursor:pointer"""
 .W " onClick=""TermOrd('"_+$G(JB)_"')"""
 .W " />",!
 ;
 N IMG S IMG=$$^W3IMG("TERMORD","TermOrd('"_+$G(JB)_"')") I IMG'="" W IMG Q
 ;
 W "<br />",!
 D ROUNDBUT^%W1JS("termid","&nbsp;"_$$^%W1DICT("TERMORD")_"&nbsp;","TermOrd("_+$G(JB)_")","color:green;font-weight:bold","yl24,24")
 Q
 ;
USPRT(STAM) ; 
 I $$GETP^%W1PRM("STPAR")="" Q 1 
 Q 0 
 ;
TERMORDDLVWEB(STAM) ;
 N MRKTO S MRKTO=$$GETP^%W1PRM("MRKTO")
 I MRKTO'["!" D
 .S MRKTO=$$MSDPRT^W3ORDVW(JB,$$^W3TMPORD)
 .I MRKTO D PUT^%W1PRM("MRKTO",MRKTO_"!")
 ;
 D SETMKR
 Q 1
 ;
SETMKR ;
 N MKR S MKR=99
 I $$MMCC^W4PRM S MKR=98
 D PUT^W3HZMST(JB,"MKR",MKR)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MENUHD
W3MENUHD ; [ 11.12.11 07:46 ] [ 25.11.10 19:53 ] [ 13.09.09 10:17 ]
CHECKCHECKER(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 I '$$D^W3L(PRM) Q "ERRORCODE"
 I PRM=$$GET^%W1PRM("CODE") Q "CHECKERCODE=MY"
 ;
 D PUT^%W1PRM("CHECKER",PRM)
 Q 1
 ;
CHECKERNAME(STAM) ;
 N CHECKER S CHECKER=$$GET^%W1PRM("CHECKER")
 I 'CHECKER Q "ERROR"
 Q $$LKH^W3L(CHECKER)
 ;
CHECKHZ(PRM) ;
 N TMPORD,UNIT,CODE,N,N1,H,SUBCODE,SUBHZ,IND
 N HZ
 S HZ=$P(PRM,";")
 S CODE=$P(PRM,";",2)
 D PUT^%W1PRM("CODE",CODE)
 I HZ=""!(CODE="") Q 0
 ;
 S H=+$H
 S TMPORD=$$^W3TMPORD
 S UNIT="^[$$^W3MAIN]W3UNIT"
 ;
 I $D(@UNIT@(CODE,H)) Q 2
 ;
 ;;I $D(@TMPORD@(HZ)) S ^(HZ)=""
 Q 1
 ;
UNIT2TMP(JB)
 N HZ S HZ=JB
 N H S H=+$H
 N TMPORD S TMPORD=$$^W3TMPORD
 N UNIT S UNIT="^[$$^W3MAIN]W3UNIT"
 S CODE=$$GET^%W1PRM("CODE") Q:CODE=""
 K @TMPORD@(HZ) N K S K=0
 S SUBCODE="" F  S SUBCODE=$O(@UNIT@(CODE,H,SUBCODE)) Q:SUBCODE=""  D
 .S SUBHZ="" F  S SUBHZ=$O(@UNIT@(CODE,H,SUBCODE,SUBHZ)) Q:SUBHZ=""  D
 ..S IND="" F  S IND=$O(@UNIT@(CODE,H,SUBCODE,SUBHZ,IND)) Q:IND=""  D
 ...S K=K+1 M @TMPORD@(HZ,K)=@UNIT@(CODE,H,SUBCODE,SUBHZ,IND)
 ;
 M ^[$$^W3MAIN]W3UNITA(CODE,H)=@UNIT@(CODE,H)
 K @UNIT@(CODE,H)
 Q
 ;
SCAN ;
 N CODE S CODE=$$GET^%W1PRM("CODE") Q:CODE=""
 N NAME S NAME=$$SHORT^W3L(CODE) Q:NAME=""
 N TMPORD S TMPORD=$$^W3TMPORD
 N I F I=1:1 Q:'$D(@TMPORD@(JB,I))  D
 .I $$LVST^W3HZMST(JB,I)=0 D
 ..S CMST=$$CMST^W3HZMST(JB,I)
 ..I CMST'["[" S CMST="["_$$H2U^%L1FRM(NAME)_"]"_CMST
 ..S $P(@TMPORD@(JB,I),"~",7)=CMST
 Q
 ;
ALGLOGO(STAM) ;
 I $G(%ARG("USER"))="MEMBER" Q "center"
 I $$^%W1DIR="RTL" Q "right"
 Q "left"
 ;
NOCODE(STAM) ;
 N CODE
 S CODE=$$GET^%W1PRM("CODE")
 I 'CODE,$$MUSTREGISTRY^W3PRM Q 1
 Q 0

W3MENUVW
W3SDMENU ; [ 08.01.08 20:22 ] [
 N N
 W "<div align=""center"" id=""my_menu"" class=""sdmenu"" />",!
 S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 .W " <div>",!
 .N A S A=$G(^(N))
 .W " <span>"_$$H2U^%L1FRM(A)_"<span>",!
 .S NP="" F  S NP=$O(@$$^W4GL("PAR")@(NP)) Q:NP=""  D
 ..N B S B=^(NP) N NM.MH
 ..S NM=$P(B,"**"),MH=$P(B,"**",2)
 ..S MH=$J(MH,2,2)
 ..W $$H2U^%L1FRM(NM)," ",MH
 .W " </div>",!
 W "<div>",!
 Q

W3MHPRT
W3MHPRT ; [ 05.08.23 18:04 ] [ 02.12.21 12:26 ] [ 10.07.19 13:18 ] 
 N (JB,%ARG,SRCH)
 D GL
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3MHPRT","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 ;
 W "<div align=""center"" >",!
 ;;W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("ITEMSTABLE")_"</span>",!
 D CHECKALL^W3KVPRT("")
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""13%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""13%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 I '$L($G(SRCH)),$$MSG^W4MUCHIT($G(%ARG("KV"))) Q
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .I $D(@$$^W4MAIN("TMPPAR")@(N)) Q
 .S SUG=$$SUG^W4P(N)
 .I $G(%ARG("KV")),%ARG("KV")'=SUG Q
 .;;W "N="_N_" 4",!
 .I $G(%ARG("KV"))="NO",SUG Q
 .;;W "N="_N_" 5",!
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .;;W "N="_N_" 6",!
 .W "<tr id=""trprt"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$J($$MH^W4P(N),2,2)_"&nbsp;</td>"
 .
 .N ID,PROC S ID="chprt"_N
 .S PROC="OnClickTbl('"_N_"','TblPrt','trprt','chprt')"
 .D ^W4TDCHBX(ID,PROC)
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GL ;
 S GL=$$^W4GL("PAR")
 Q
SUG(PAR) D GL
 Q $P(@GL@(PAR),"**",5)
 ;
SUG1(PAR) D GL
 N SUG S SUG=$$SUG(PAR)
 I 'SUG Q $$^%W1DICT("NOGROUP")
 Q $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(SUG)))
 
 
 
 
 
 
 
 

W3MHPSHA
W3MHPSHA ; [ 18.12.25 17:08 ] [ 12.11.24 17:53 ] [ 14.02.24 05:56 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3MHPSHA","%ARG=[%ARG")
 D GL
 ;
 S MHP=$G(%ARG("MHP")) Q:'MHP
 I $D(%ARG("MHP")) D PUT^%W1PRM("MHP",%ARG("MHP"))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$CAPTION(MHP)_"</span>",!
 ;
 W $$^W4DVTBFX("94%"),!
 W "<table dir="""_$$^%W1DIR_""" id=""TblMhP"" border=""1"" "
  W "cellspacing=""0"" width=""100%"" "
  W "style=""background-color:white;color:black"" "
 W ">",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""20%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("NORMALPRICE")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("PRICELISTPRICE")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .W "<tr id=""trmhp"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_" </td>"
 .S BGR="white"
 .N MHR S MHR=$G(@GL@(N)) I MHR="" S MHR=$$^%W1DICT("NORMAL"),BGR="yellow"
 .I MHR S MHR=$J(MHR,2,2)
 .
 .W "<td align=""center""><input type=""text"" style=""background-color:"_BGR_""" id=""mhr"_N_""" size=""6"" maxlength=""7"" value="""_MHR_""" onClick=""this.select()"" onKeyUp=""parent.PriceListPrice('"_N_"',this.value)""></td>"
 .
 .N ID,PROC S ID="chmhp"_N
 .S PROC="OnClickTbl('"_N_"','TblMhP','trmhp','chmhp')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
GL S GL=$$^W4MAIN("TMPPAR")
 Q
 ;
SAVE(NEWMHP) ;
 Q:'$G(PRM)
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 N OLDMHP S OLDMHP=$$GET^%W1PRM("MHP")
 ;
 N MEYOM,ADYOM,MESHAA,ADSHAA,MHPNAME,REST,DLV
 ;
 S MEYOM=$P(NEWMHP,";",2)
 S ADYOM=$P(NEWMHP,";",3)
 S MESHAA=$P(NEWMHP,";",4)
 S ADSHAA=$P(NEWMHP,";",5)
 S MHPNAME=$$CNWEB^%L1FRM($P(NEWMHP,";",6))
 S MHPNAME=$$INVH^%L1FRM(MHPNAME)
 S REST=$P(NEWMHP,";",7)
 S DLV=$P(NEWMHP,";",8)
 S NEWMHP=+NEWMHP
 ;
 D PUT^%W3DEB("W3MHPSHA-SAVE","OLDMHP=OLDMHP & NEWMHP=NEWMHP & GL = GL")
 I OLDMHP D
 .K @$$GLMHP@(OLDMHP)
 .N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..I $$ISNUM^%L1FRM(^(N)) D
 ...S @$$GLMHP@(OLDMHP,N)=@GL@(N)
 .S @$$GLMHP@(OLDMHP)=$$DOP(MESHAA)_"\"_$$DOP(ADSHAA)_"\"_MEYOM_"\"_ADYOM_"\"_MHPNAME
 .I REST&'DLV S $P(@$$GLMHP@(OLDMHP),"\",7)=1
 .I 'REST&DLV S $P(@$$GLMHP@(OLDMHP),"\",7)=2
 ;
 K @GL
 I $G(NEWMHP) D PAR2TMP(NEWMHP)
 Q
 ;
DEL(MHP) ;
 Q:'$G(MHP)
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 D PUT^%W3DEB("W3MHPSHA-DEL","MHP=MHP & GL = GL")
 Q:'$G(MHP)
 I MHP D
 .K @$$GLMHP@(MHP)
 K @GL
 Q
 ;
MVPR2MHP(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 D PUT^%W3DEB("W3MHPSHA-MVPR2MHP","PRM=PRM & GL=GL")
 S PRM=$E(PRM,1,$L(PRM)-1)
 S PRM=$P(PRM,";",2,$L(PRM,";"))
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:$D(@GL@(CD))
 .S @GL@(CD)=""
 .S OK=1
 Q OK
 ;
MVMHP2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 D PUT^%W3DEB("W3MHPSHA-MVMHP2PR","PRM=PRM & GL=GL")
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GL@(CD))
 .K @GL@(CD)
 .S OK=1
 Q OK
 ;
 ;
GROUP ;
 W "<select ",!
 W " id=""grprt"""
 W " onChange=""ShowPrt()""",!
 W ">",!
 I '$$^W4MUCHIT D
 .W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 ;
 D ^W4ABCKVZ
 N NN,II,N S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .;;I $G(@$$^W4GL("W3SUG")@(NN))=0 Q
 .S II=II+1
 .W "<option value="""_NN_""""
 .I NN=$$^W3FRSTGR W " selected=""selected"""
 .W " >"_$$^W3SHOWKV(NN)_"</option>",!
 W "</select>",!
 Q
 ;
 ;
MHP(MHP) ;
 W "<table width=""100%"" border=""0"" cellpadding=""0"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "<tr>"
    W "  <td width=""20%""> "_$$^%W1DICT("PRICELISTNUMBER")_"</td>",!
    W "  <td width=""25%"">"
    W "   <input type=""text"" id=""mhp""  maxlength=""5"" size=""3"""
    W "    value="""_$G(MHP)_""" onClick=""this.select()"" onChange=""ChangeMhp()"" />"
    W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" "
    W " "_$$^W4TOUCH_"=""ChangeMhp()"" />",!
    W "  </td>",!
    W "  <td "_$$^%W1ALIGN_" ><input type=""text"" id=""mhp1"" size=""24"" value="""_$$H2U^%L1FRM($$MHPNAME($G(MHP)))_""" onChange=""SetChn()"" >",!
    W "  </td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
HZGMHP(NN) ;
 S II=II+1
 W "<option value="""_NN_""""
 I II=1 W " selected=""selected"""
 W " >"_NN_"&nbsp;"_$J($$H2U^%L1FRM($$MHPNAME(NN)),20)_"</option>",!
 Q
 ;
PAR2TMP(MHP) ;
 Q:'$G(MHP)
 D GL K @GL
 M @GL=@$$GLMHP@(MHP)
 Q
 ;
SETMH(PRM) ;
 D PUT^%W3DEB("W3MHPSHA-SETMH","PRM=PRM")
 N CODP,MH
 S CODP=$P(PRM,";")
 S MH=$P(PRM,";",2)
 I CODP=""!(MH="") Q
 D GL
 S @GL@(CODP)=MH
 Q
 ;
GLMHP(STAM) ;
 Q $$^W4GL("PARSHA")
 ;
FIRSTGR(STAM) ;
 Q $O(@$$GLMHP@(""))
 ;
CAPTION(MHP) ;
 S MHP=$G(MHP)
 Q $$^%W1DICT("ITEMSPERHOUERSPRICELIST",$$MHPNAME(MHP))
 ;
MHPNAME(MHP)
 I $G(MHP)="" Q ""
 Q $P($G(@$$GLMHP@(MHP)),"\",5)
 ;
MEYOM(MHP)
 I $G(MHP)="" Q ""
 Q $P($G(@$$GLMHP@(MHP)),"\",3)
 ;
ADYOM(MHP)
 I $G(MHP)="" Q ""
 Q $P($G(@$$GLMHP@(MHP)),"\",4)
 ;
MESHAA(MHP)
 I $G(MHP)="" Q ""
 Q $P($G(@$$GLMHP@(MHP)),"\",1)
 ;
ADSHAA(MHP)
 I $G(MHP)="" Q ""
 Q $P($G(@$$GLMHP@(MHP)),"\",2)
 ;
SELDAY(PR,DAY) ;
 N ST S ST=""
 I $G(PR)="FROM" W $$^%W1DICT("FROMDAY")_" "
 I $G(PR)="TO" W $$^%W1DICT("TO_DAY")_" "
 S ST="<select id=""day"_PR_""" onChange=""SetChn()"" >"
 N I
 F I=1:1:7 D
 .S ST=ST_"<option value="""_I_""""
 .I $G(DAY),I=DAY S ST=ST_" selected=""selected"""
 .I '$G(DAY),I=1 S ST=ST_" selected=""selected"""
 .S ST=ST_" >"_$$^%W1DICT("DAY"_I)_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
SELSHAA(PR,VL) ;
 I $G(PR)="FROM" W $$^%W1DICT("MESHAA")_" "
 I $G(PR)="TO" W $$^%W1DICT("ADSHAA")_" "
 ;
 N SEL,ST S ST=""
 S ST="<select id=""hr"_PR_""" onChange=""SetChn()"" >"
 N I,J F I=0:1:23 D
 .F J=0,30,59 D
 ..I PR="FROM",J=59 Q
 ..I PR="TO",J=0 Q
 ..S SEL="" I $G(VL)'="",I=+VL,J=+$P(VL,":",2) D
 ...S SEL=" selected=""selected"" "
 ..S ST=ST_"<option value="""_I_":"_J_""" "_SEL_" >"
 ..S ST=ST_$TR($J(I,2)," ",0)_":"_$TR($J(J,2)," ",0)
 ..S ST=ST_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
DOP(SHAA) ;
 Q $TR($J($P(SHAA,":"),2)," ",0)_":"_$TR($J($P(SHAA,":",2),2)," ",0)
 ;
RANGE(MHP,PRM) ;
 I '$G(MHP) Q 0
 N A S A=$P($G(@$$GLMHP@(MHP)),"\",7)
 I 'A Q 1
 I A=1&(PRM="REST") Q 1
 I A=2&(PRM="DLV") Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 

W3MKR
W3MKR(MKR) ; [ 01.12.20 15:31 ] [ 07.05.20 15:05 ] [ 09.03.20 11:27 ] 
 I $G(MKR)="" Q ""
 S MKR1=$$MKR1(MKR)
 Q $$H2U^%L1FRM(MKR1)
 ;
MKR(MKR) ;
 I '$$SF^W4PRM Q MKR
 I $G(MKR)="" S MKR=99
 I $L(MKR),",2,5,8,10,12,15,18,21,30,31,55,90,99,"[(","_MKR_",") Q MKR
 Q 21
 ;
MKR1(MKR) ; 
 N MKR1
 I $G(MKR)="" Q ""
 S MKR=$$MKR(MKR)
 N MKR1 S MKR1=$G(^[$$^W3MAIN]W3MKR(MKR))
 I MKR1="" Q ""
 Q MKR1
 
 

W3MKR1
W3MKR1(MKR) ;  [ 17.01.23 14:21 ] [ 15.01.23 14:19 ] [ 
 I $$MKRDLV^W4PRM'=2 Q $$^W3MKR(MKR)
 ;
 N MKR1
 I $G(MKR)="" Q ""
 N MKR1 S MKR1=$G(@$$^W4GL("W3MKR1")@(MKR))
 I MKR1="" Q ""
 Q MKR1
 
 
 
 
 
 
 

W3MSD
W3MSD(GR) ; [ 19.05.26 15:52 ] [ 29.03.22 18:56 ] [ 17.03.22 14:03 ] 
 N STARG
 Q:$G(%ARG("SHOW"))=0
 ;
 N OKSALE S OKSALE=0
 ;
 D
 .Q:'$G(GR)
 .N MSD S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(GR,MSD))  Q:MSD=""  D:$G(^(MSD))  Q:OKSALE
 ..I $D(^[$$^W3MAIN]W3SALEMSG(MSD)) S OKSALE=1
 ;
 I $$CALLCENTER=1 D HDCC
 ;
 I OKSALE,'$$^W4SMALL D MRQ
 ;
 I $D(^[$$^W3MAIN]TMPPRM(JB,"MARG")) D  K ^[$$^W3MAIN]TMPPRM(JB,"MARG") ; -- HIPUS MITKADEM
 .M %ARG=^("MARG")
 ;
 D INIT
 W "<br>",!
 ;
 S FC=$$FC(+$G(GR))
 W "<div align=""center"">",!
 ;
 I $$CALLCENTER=1 D BACKBUT W "<br><br>",!
 ;
 I $$^W4SMALL D SMALLBUT ;---------  BUTTONS
 ;
 I $$COLOR^W3MSDR(+$G(GR))'="OG",'$$^W4SMALL,'$$CALLCENTER D
 .S UPIMG="w3verx1.png"
 .W "<img style=""position:relative;top:5px"" src="""_UPIMG_""" width="""_(WD-2)_""" />",!
 ;
 S FSZ=$$^W3FSZ(11)
 I $$^W4SMALL S FSZ=$$^W3FSZ($S($$^W4SIMUL:12,1:16))
 ;
 I '$$^W4SMALL D HDTBLMSD ; --- TABLE HEADER
 ;
 D SEDER ; ------ ^W3MSD --> ^TMP
 ;
 S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D SHOWREST($G(^(N)))
 ;
 I '$$^W4SMALL W "</table>",!
 W "<br>",!
 ;
 I $$CALLCENTER=1 D BACKBUT W "<br>",!
 W "</div>",!
 ;
 K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
 ;
TOMSD(MSD) ;
 N MSD1 S MSD1=MSD
 I $$^W4SMALL!($$CALLCENTER>.9) Q "ToSmallMenu('"_MSD1_"','"_$$COLOR(+$G(GR))_"')"
 ;
 I $G(GR) D
 .N SHLUHA S SHLUHA=$$SHLUHA^W3MSDR(+GR,MSD) Q:'SHLUHA
 .S MSD1=MSD_":"_SHLUHA
 ;
 Q "ToMenu('"_MSD1_"','"_$$COLOR(+$G(GR))_"')"
 ;
 ;
SHOWREST(MSD) ;
 Q:'$G(MSD)
 D GL Q:'$D(@GL@(MSD))
 I '$$USL(MSD) Q
 N %W1LNG
 I $G(GR) S %W1LNG=$$DEFLNG(GR)
 I '$G(GR) S %W1LNG=$$LNG^W3R(MSD)
 I $G(%W1LNG)="" S %W1LNG="H"
 ;
 I '$$^W4SMALL D
 .W "<tr style=""background-color:"
 . W $S($G(NS)#2:"white",1:$$BGTBBD(+$G(GR)))
 . W """>",!
 ;
 I $$^W4SMALL D
 .W "<a name=""L"_MSD_"""></a>"
 .W "<table id=""TbMsd"_MSD_""" class=""tbmsdround"" dir="""_$$^%W1DIR_""" "
 .W " style=""width:96%"">",!
 .
 .W " <tr><td></td><td></td></tr>",!
 .W " <tr class=""trmsd"">"
 .W "  <td>&nbsp;</td>",!
 .W "  <td width=""30%"" valign=""center"" "
 .     W $$CLICKMSD(MSD)_" class=""tdmsd1"" "
 .W "  >"
 . W "  <img src="""_$$PICTURE(MSD)_""" "
 . W "   style=""width:"_$$KF^W3CSM(300)_";height:"_$$KF^W3CSM(240)
 . W "   ;border-width:1px;border-style:solid;"
 . ;;W $$RAD^W3CSM("1em")
 . W """"
 . W "  />",!
 .W "  </td>",!
  ;
 W "<td "_$$CLICKMSD(MSD)_" class=""tdmsd2"">"
 ;
 N FSZ S FSZ=$$^W3FSZ($S($G(PR800)=1:12,1:14))
 I $$^W4SMALL,'$$^W4SIMUL S FSZ=$$^W3FSZ(24)
 I $$^W4SMALL,$$^W4SIMUL S FSZ=$$^W3FSZ(14)
 ;
 W " <b style=""font-size:"_FSZ_";color:"_FC_""" >"
    W "&nbsp;&nbsp;"_$$NAME(MSD)_"</b>&nbsp;&nbsp;<br>"
 W " <b style=""color:black"">&nbsp;&nbsp;"_$$ADDR(MSD)_"&nbsp;&nbsp;</b>"
 W "<br>",!
 ;
 W "  <b style=""color:black"">"
  W "&nbsp;&nbsp;"_$$^%W1DICT("TEL")_" : "_$$TEL(MSD)_"&nbsp;&nbsp;"
 I $$FAX^W3R(MSD) D
 .W "<br/>&nbsp;&nbsp;"_$$^%W1DICT("FAX")_" : "_$$FAX^W3R(MSD)
 W "  </b>"
 W "</td>",!
 ;
 I $$^W4SMALL D  Q
 .W "</tr>",!
 .W "<tr><td></td><td></td></tr>",!
 .W "</table><br>",!
 ;
 W "<td>",!
  D RUNTIME(MSD)
 W "</td>",!
 ;
 I $$CALLCENTER!$$MM^W4PRM W "</tr>",! Q
 ;
 I $$^W4SMALL D  Q
 .W "</tr>",!
 .W "<tr><td></td><td></td></tr>",!
 .W "</table><br>",!
 ;
 W "<td style=""color:black"">&nbsp;&nbsp;"_$$KKIND(MSD)_"<br />"
 W "<b style=""color:"_FC_""">&nbsp;&nbsp;"_$$KASHER(MSD)_"</b>"
 W "</td>",!
 ;
 W "<td><a href="""_$$SITE(MSD,GR)_""" target=""_blank"">"
  W "<img src="""_$$PICTURE(MSD)_""" "
  W " style=""width:100;height:60;border-width:1px"" alt=""about us"" />"
 W "</a></td>",!
 ;
 I $$^W3UCI(MSD)'="" D
 .W "<td align=""center"">"
 .W "<a href=""#"" onClick="""_$$TOMSD(MSD)_""" >"
 .W " <img src=""w3order.gif"" style=""width:50;height:60;border-width:1px"" "
 .W "  alt=""order on-line""/>"
 .W "</a></td>",!
 ;
 I $$^W3UCI(MSD)="" D
 .W "<td align=""center"">"
 . W "<img src=""w3order.gif"" style=""width:50;height:60;border-width:1px"" "
 . W " alt=""order on-line""/>"
 .W "</td>",!
 ;
 W "</tr>",!
 Q
 ;
SHOWSMALL(MSD)
 Q
 ;
USL(MSD) ;
 ;;W !,MSD," "
 I '$$USLRKV("MSDN","MSD") Q 0
 I '$$USLRKV("REGION","AZOR") Q 0
 I '$$USLRKV("CITY","IR") Q 0
 I '$$USLRKV("STREET","STREET") Q 0
 I '$$USLRKV("KKIND","KKIND",1) Q 0
 I '$$USLRKV("KASHER","KASHER") Q 0
 I $G(%ARG("PRICE"))'?.P,$G(%ARG("PRICE"))'="ALL",$G(%ARG("PRICE"))'=$$PRICE^W3R(MSD) Q 0
 N OK S OK=1
 I $L($G(%ARG("COND"))) D
 .N AC,UCOND S AC=%ARG("COND")
 .N I F I=1:1:$L(AC,";")-1 D  Q:'OK
 ..S UCOND=$$INVH^%L1FRM($P(AC,";",I))
 ..IF (";"_$$COND^W3R(MSD)_";")'[(";"_UCOND_";") S OK=0
 I 'OK Q 0
 Q 1
 ;
USLRKV(RKV,LB,SOD)
 S ARG=$$SPA^%L1FRM($G(%ARG(RKV)))
 I '$G(SOD),ARG'?.P,ARG'="ALL",@("$$INVH^%L1FRM(ARG)'=$$"_LB_"^W3R(MSD)") Q 0
 I $G(SOD),ARG'?.P,ARG'="ALL",@("$$"_LB_"^W3R(MSD)'[$$INVH^%L1FRM(ARG)") Q 0
 Q 1
 ;
NAME(MSD) ;
 I $G(MSD)="" Q ""
 N NAME S NAME=$$MSD^W3R(MSD)
 Q $$H2U^%L1FRM(NAME)
 ;
ADDR(MSD,WEB) ;
 I '$D(WEB) S WEB=1
 I $G(MSD)="" Q "&nbsp;"
 N STREET S STREET=$$STREET^W3R(MSD) I STREET="" Q "&nbsp;"
 N HOME S HOME=$$BAIT^W3R(MSD)
 N IR S IR=$$IR^W3R(MSD)
 N ADDR
 S ADDR=STREET_" "_HOME I $L(IR) S ADDR=ADDR_" "_IR
 I $$^%W1LNG="H" S ADDR=IR_" , "_HOME_" "_STREET
 Q $$H2U^%L1FRM(ADDR)
 ;
RUNTIME(MSD) ;
 N I,M,A,A1
 S I0=1
 I '$D(RT("WD")) S RT("WD")="95%"
RT S @("DP"_I0_"=$$DP"_I0_"^W3R(MSD)")
 F I=I0+1:1:8 Q:I=8  S @("A=$$DP"_I_"^W3R(MSD)") S @("A1=DP"_I0) Q:A'=A1
 I I>(I0+1) S M(I0)=$$^%W1DICT("DAY"_I0,"",%W1LNG)_" - "_$$^%W1DICT("DAY"_(I-1),"",$$^%W1LNG)
 I I=(I0+1) S M(I0)=$$^%W1DICT("DAY"_I0,"",%W1LNG)
 S M(I0,"DP")=@("DP"_I0)
 I I<8 S I0=I G RT
 N N S N="" F I=1:1  S N=$O(M(N)) Q:N=""  I $G(M(N,"DP"))="" K M(N)
 ;
 W "<div align=""center"">",!
 W " <table width="""_RT("WD")_""" dir="""_$$DIR_""" border=0 "
  I $D(RT("FSZ")) D
  .W "style=""font-size:"_$$^W3FSZ(RT("FSZ"))_""""
  I '$D(RT("FSZ")) D
  .I '$D(W3MSDDSC) D
  ..I +$$GET^%W1PRM("PR800")=1 W "style=""font-size:10pt"""
  ..I +$$GET^%W1PRM("PR800")=0 W "style=""font-size:11pt"""
  .I $D(W3MSDDSC) W "style=""font-size:"_$$^W3FSZ(12)_""""
  W " >",!
 ;
  I %W1LNG="H" F I=1:1:7 I $D(M(I)) D SHOWDP
  I %W1LNG'="H" F I=2:1:7,1 I $D(M(I)) D SHOWDP
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SHOWDP W "<tr>"
 N DP
 W "<td style=""width:"_$S($G(%W1LNG)="H":"25%",1:"35%")_";color:#267f00;font-weight:bold"">"_M(I)_"</td>"
 S DP=$$RPL^%L1FRM($TR(M(I,"DP")," ",""),"-"," - ")
 I $P(DP," -")["SHBT1" D
 .S DP=$$^%W1DICT("SHABAT1")_" - "_$P($P(DP," - ",2),":",1,2)
 I $P(DP," -")["SHBT2" D
 .S DP=$$^%W1DICT("SHABAT2")_" - "_$P($P(DP," - ",2),":",1,2)
 I $P(DP," - ",2)["LAST" D
 .S DP=$P($P(DP," -"),":",1,2)_" - "_$$^%W1DICT("LASTCLIENT")
 I DP["24HR" D
 .S DP=$$^%W1DICT("24HR")
 ;
 S DP=$P($P(DP," - "),":",1,2)_" - "_$P($P(DP," - ",2),":",1,2)
 I DP="00:00 - 00:00" S DP=$$^%W1DICT("CLOSED")
 W "<td style=""color:black"">"_DP_"</td></tr>",!
 Q
 ;
 ;
TEL(MSD) ;
 I $G(MSD)="" Q ""
 Q $$TEL^W3R(MSD)
 ;
PICTURE(MSD) ;
 I $G(MSD)="" Q ""
 Q $$PIC^W3R(MSD)
 ;
SITE(MSD,MSDR)
 I $G(MSD)="" Q ""
 N SITE S SITE=$$SITE^W3R(MSD)
 S SITE=$$FUNC^%LCASE(SITE)
 I SITE?.P S SITE="w3msddsc.jsp?MSD="_MSD_"&MSDR="_MSDR Q SITE
 I SITE'["http",SITE'["www." S SITE="https://www."_SITE Q SITE
 I SITE'["http" S SITE="https://"_SITE Q SITE
 S SITE="w3msddsc.jsp?MSD="_MSD_"&MSDR="_MSDR Q SITE
 ;
KKIND(MSD) ;
 N KK S KK=$$KKIND^W3R(MSD)
 I KK="" Q "&nbsp;"
 S KK=$$RPL^%L1FRM(KK,";",", ")
 Q $$H2U^%L1FRM(KK)
 ;
KASHER(MSD) ;
 N KS S KS=$$KASHER^W3R(MSD)
 I KS="" Q "&nbsp;"
 Q $$H2U^%L1FRM(KS)
 ;
DIR(STAM) ;
 I %W1LNG="H" Q "RTL"
 Q "LTR"
 ;
GL S GL="^[$$^W3MAIN]W3MSD"
 Q
 ;
 ;
SELNAME(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 ;
 D SEDER
 ;
 W "<select id=""nmid"" "_$$FONTSIZE^W3MSDRG_" >",!
 W "<option value=""ALL"" "_$S('$G(%MSD("MSD")):"selected=""selected""",1:"")_" >"_$$^%W1DICT("ALL")_"</option>",!
 S N="" F  S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D
 .N REST S REST=$G(^(N))
 .D SELNAME1(N)
 W "</select>",!
 K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
CRTMP(MSD) ;
 I $$^W4MM,$$^W3UCI(MSD)="" Q
 N INV,NM
 S NM=$G(^[$$^W3MAIN]W3MSD(MSD))
 S INV=$$INV^%L1FRM(NM) Q:INV=""
 S ^[$$^W3MAIN]TMP(JB,INV)=MSD
 Q
 ;
SELNAME1(INVMSD) ;
 Q:$G(INVMSD)=""
 N VL S VL=$$H2U^%L1FRM($$INV^%L1FRM(INVMSD))
 W "<option value="""_VL_""""
 I $G(%ARG("MSD")),$G(REST),REST=%ARG("MSD") W " selected=""selected"""
 W """>"
 W VL
 W "</option>",!
 Q
 ;
SETCOND(TO) ;
 N STARG S STARG=$P(TO,"&",2,255)
 D PUT^%W1PRM("STARG",STARG)
 Q
 ;
SEDER ;
 K ^[$$^W3MAIN]TMP(JB)
 N N,NS I $G(GR) D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSDR(GR,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I '$$^W4SMALL,A D CRTMP(N)
 ..I $$^W4SMALL,A,$P(A,"\",2)'=0 D CRTMP(N)
 ;
 I '$G(GR) D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSD(N)) Q:N=""  D CRTMP(N)
 Q
 ;
 ;
DEFLNG(GR) ;
 Q $$LNG^W3MSDR(GR)
 ;
BGHD(GR) ;
 ;;I GR=1 Q "background-color:#eb6a83"
 I $$MM^W4PRM Q "background-color:#E0CFB5"
 ;
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "background-color:#d27e7e"
 I COLOR="OG" Q "background-color:#ff7c11"
 I COLOR="BL" Q "background-color:#7474bb"
 Q "background-color:#d27e7e"
 ;
 ;
BGBODY(GR) ;
 ;;I GR=1 Q "background-color:#de012d"
 I $$MM^W4PRM Q "background-color:#E0CFB5"
 I $$^W4SMALL Q "background-image:url(w3restbg3.jpg)"  ;Q "background:#ebebeb"
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "background-image:url(w3bgred.png)"
 ;;I COLOR="OG" Q "background-color:#eaeaea"
 I COLOR="OG" Q $$GRAD^W3CSM("#E0CFB5","#FFFFFF")
 I COLOR="BL" Q "background-image:url(w3bgblue.png)"
 Q "background-image:url(w3bgred.png)"
 ;
BGTH(STAM) ;
 N A D  Q A
 .S A="-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);"
 .S A=A_"-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);"
 .S A=A_"background: #8b8b8b;"
 .S A=A_"filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#a9a9a9', endColorstr='#7a7a7a');"
 .S A=A_"background: -webkit-gradient(linear, left top, left bottom, from(#a9a9a9), to(#7a7a7a));"
 .S A=A_"background: -moz-linear-gradient(top,  #a9a9a9,  #7a7a7a);"
 .S A=A_"background: -o-linear-gradient( #a9a9a9,  #7a7a7a);"
 .S A=A_"border: solid 1px #6d6d6d;"
 .S A=A_"-moz-border-radius-topleft: 15px;"
 .S A=A_"border-top-left-radius: 15px;"
 .S A=A_"-moz-border-radius-topright: 15px;"
 .S A=A_"border-top-right-radius: 15px;"
 ;
BGTBHD(GR) ;
 I $$CALLCENTER=1 Q "background-color:brown;color:white"
 I $$^W4SMALL Q "background-color:#ebebeb"
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "background-color:#fecccc"
 I COLOR="OG" Q "background-color:#ff7c11;color:white"
 I COLOR="BL" Q "background-color:#aaaad6"  ;#7474bb"
 Q "background-color:#fecccc"
 ;
BGTBBD(GR) ;
 ;;I GR=1 Q "#f9d5dc"
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "#feecec"
 I COLOR="OG" Q "#ffde96"
 I COLOR="BL" Q "eaeaf2"  ;Q "#aaaad6"
 Q "#feecec"
 ;
FC(GR) ;
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "#d90300"
 I COLOR="DRW" Q "#990000"
 I COLOR="REST" Q "#991A1D"
 I COLOR="OG" Q "#ff7c11"
 I COLOR="BL" Q "#060686"
 Q "#d90300"
 ;
COLOR(GR) ;
 Q $$COLOR^W3MSDR(GR)
 ;
COUNTRY(GR) ;
 Q $$COUNTRY^W3MSDR(GR)
 ;
FAX(MSD,PRM) ;
 Q $$FAX^W3R(MSD)
 ;
MSDR(MSD) ;
 N OK S OK=0
 N MSDR S MSDR=0
 F  S MSDR=$O(^[$$^W3MAIN]W3MSDR(MSDR))  Q:MSDR=""  I $G(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) S OK=1 Q
 Q MSDR
 ;
SRCHBUT ;
 W "  <td>"
 W "   <input type=""button"" class=""btnsmall"""
 W "    value="""_$$^%W1DICT("SEARCH")_""" "
 W "    onClick=""ShowSearchPage()"" /> "
 W "  </td>",!
 W "  <td width=""10%"">&nbsp;</td>",!
 W "  <td>"
 W "   <input type=""button"" class=""btnsmall"" "
 W "    value="""_$$^%W1DICT("CLOSE")_""" "
 W "    style=""color:red"" "
 W "    onClick=""Close()"" /> "
 W "  </td>",!
 Q
 ;
CLICKMSD(MSD) ;
 I $$CALLCENTER^W4PRM'=1,$$^W3UCI(MSD)="" Q ""
 Q "style=""cursor:pointer"" onClick="""_$$TOMSD(MSD)_""""
 ;
BACKBUT ;
 W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
 W " onClick=""Back()"" "
 W " style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""" "
 W " />"
 Q
 ;
CALLCENTER(STAM) ;
 Q $$CALLCENTER^W5MSD
 ;
HDCC ;
  N MKBL S MKBL=$$MKBL
  W "<table class=""hdvw"" style=""font-size:"_$$^W3FSZ(16)_""" "
  W " width=""100%"" border=""1"" rules=""rows"" "
  W " dir="""_$$^%W1DIR_""" "
  W ">",!
  W "<tr>",!
  W " <td width=""30%"" style=""color:yellow;font-size:"_$$^W3FSZ(12)_";font-weight:bold"" >"
   W $$^%W1DICT("RECEIVER")_" : "_$$H2U^%L1FRM($$^W4NAME(MKBL))
  W " </td>"
  W " <td dir="""_$$^%W1DIR_""" >"
   W $$^%W1DICT("CALLCENTER")
  W " </td>"
  W " <td width=""20%"">&nbsp;</td>"
  W " <td width=""10%"" id=""curtime"" "
  W "  style=""color:yellow;font-size:"_$$^W3FSZ(12)_";font-weight:bold"" >"
   W "&nbsp;"
  W " </td>"
  W "</tr> ",!
  W "</table>",!
 Q
 ;
MKBL(STAM) ;
 I $G(%ARG("MKBL")) Q %ARG("MKBL")
 Q $$GETP^%W1PRM("MLZR")
 ;
MRQ ;
 W "<span dir="""_$$^%W1DIR_""">"
 W " <marquee scrolldelay=""120"" "
 W "  direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" "
 W "  style=""background-color:yellow;color:black;font-size:"_$$^W3FSZ(12)
 W "   ;width:100%;"_$$FONTFM^W3CSS_";font-weight:bold;border:solid 1px brown"
 W "  "" />"
 ;
 N MSD S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(GR,MSD))  Q:MSD=""  I $G(^(MSD)) D
 .I $D(^[$$^W3MAIN]W3SALEMSG(MSD)) D
 ..W "  ***  "_$$H2U^%L1FRM($$MSD^W3R(MSD))_" : "
 ..D SALEMSG1^W3HZPRTN(MSD) Q
 ..N MSG S MSG="" F  S MSG=$O(^[$$^W3MAIN]W3SALEMSG(MSD,MSG)) Q:MSG=""  D
 ...N A S A=$G(^(MSG))
 ...W $$H2U^%L1FRM(A)_" * "
 W "</marquee></span><br />",!
 Q  ;
 ;
INIT ;
 D PUT^%W3DEB("W3MSD","GR=GR & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 S WD=$S(PR800=1:650,1:760)
 I $$^W4SMALL S WD="90%"
 N %W1LNG
 S %W1LNG=$$DEFLNG(GR)
 Q
 ;
SMALLBUT ;
 I $G(%ARG("SRCH")) D
 .W "<br />",!
 .W "<table dir="""_$$^%W1DIR_""">",!
 .W " <tr>",!
 .;
 .W "  <td>"
 .W "   <input type=""button"" class=""btnsmall"" "
 .W "    value="""_$$^%W1DICT("SHOWALLREST")_""" "
 .W "    onClick=""ShowAllRest()"" /> "
 .W "  </td>",!
 .W "  <td width=""10%"">&nbsp;</td>",!
 .D SRCHBUT
 .W " </tr>",!
 .W "</table>",!
 ;
 I +$G(%ARG("SRCH"))=0 D
 .W "<br />",!
 .W "<table dir="""_$$^%W1DIR_""" >",!
 .W " <tr>",!
 . D SRCHBUT
 .W " </tr>",!
 .W "</table>",!
 W "<br>",!
 Q
 ;
HDTBLMSD ;
 W "<table width="""_WD_""" style="""_$$FONTFM^W3CSS_";font-size:"_FSZ_""" "
 W " id=""TblMsd"" "
 W " cellpadding=""0"" cellspacing=""0"" border=1 dir="""_$$^%W1DIR_""">",!
 W " <tr valign=""top"" style="""_$$BGTBHD(+$G(GR))_""">",!
 W "  <th "
 W "   width=""35%"" valign=""top"" "
 W "  >"_$$^%W1DICT("CHOICEREST")
 W "  </th>"
 W "  <th width=""30%"">"_$$^%W1DICT("WORKTIME")_"</th>"
 I $$CALLCENTER!$$MM^W4PRM W "</tr>" Q
 W "  <th width=""20%"">"_$$^%W1DICT("KITCHENKIND")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("ABOUTUS")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("MENU")_"</th>"
 W " </tr>",!
 Q
 ;
IN ; 
 I '$G(JB) S JB=$$^%W1SsID("W3MSD")
 D ^%W1ARG D KILL^%W1PRM("CURREST")
 D:$G(%ARG("CALLCENTER"))'="" PUT^%W1PRM("CALLCENTER",%ARG("CALLCENTER"))
 D KILL^%W1PRM("MMCC")
 ;
 I +$G(%ARG("CALLCENTER"))=.5 D PUT^%W1PRM("MMCC",1)
 ;
 I $G(%ARG("MKBL")) D
 .D PUT^%W1PRM("MLZR",%ARG("MKBL"))
 .D PUT^%W1PRM("MKBL",%ARG("MKBL"))
 ;
 I $D(%ARG("COND")) D
 .K ^[$$^W3MAIN]TMPPRM(JB,"MARG") M ^[$$^W3MAIN]TMPPRM(JB,"MARG")=%ARG
 ;
 I $G(%ARG("MSDR")) D PUT^%W1PRM("MSDR",%ARG("MSDR"))
 I $$CCWEBR^W4PRM D KILL^%W1PRM("DLVCSR")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSD0
W3MSD(GR) ; [ 07.06.11 13:01 ] [ 04.06.11 15:41 ] [ 03.06.11 20:47 ]
 N STARG
 Q:$G(%ARG("SHOW"))=0
 N OKSALE S OKSALE=0
 ;
 D
 .Q:'$G(GR)
 .N MSD S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(GR,MSD))  Q:MSD=""  D  Q:OKSALE
 ..I $D(^[$$^W3MAIN]W3SALEMSG(MSD)) S OKSALE=1
 ;
 I OKSALE,'$$^W4SMALL D
 .W "<span dir="""_$$^%W1DIR_"""><marquee scrolldelay=""120"" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""background-color:yellow;color:black;font-size:"_$$^W3FSZ(12)_";width:100%;"_$$FONTFM^W3CSS_";font-weight:bold;border:solid 1px brown"" >"
 .N MSD S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(GR,MSD))  Q:MSD=""  D
 ..I $D(^[$$^W3MAIN]W3SALEMSG(MSD)) D
 ...W "  ***  "_$$H2U^%L1FRM($$MSD^W3R(MSD))_" : "
 ...D SALEMSG1^W3HZPRTN(MSD) Q
 ...N MSG S MSG="" F  S MSG=$O(^[$$^W3MAIN]W3SALEMSG(MSD,MSG)) Q:MSG=""  D
 ....N A S A=$G(^(MSG))
 ....W $$H2U^%L1FRM(A)_" * "
 .W "</marquee></span><br />",!
 ;
 I $D(^[$$^W3MAIN]TMPPRM(JB,"MARG")) D  K ^[$$^W3MAIN]TMPPRM(JB,"MARG") ; -- HIPUS MITKADEM
 .M %ARG=^("MARG")
 ;
 D PUT^%W3DEB("W3MSD","GR=GR & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 S WD=$S(PR800=1:650,1:760)
 I $$^W4SMALL S WD="90%"
 N %W1LNG
 S %W1LNG=$$DEFLNG(GR)
 W "<br>",!
 ;
 S FC=$$FC(+$G(GR))
 W "<div align=""center"">",!
 ;
 I $$^W4SMALL D  ;---------  BUTTONS
 .I $G(%ARG("SRCH")) D
 ..W "<br />",!
 ..W "<table dir="""_$$^%W1DIR_""">",!
 ..W " <tr>",!
 ..;
 ..W "  <td>"
 ..W "   <input type=""button"" class=""btnsmall"" "
 ..W "    value="""_$$^%W1DICT("SHOWALLREST")_""" "
 ..W "    onClick=""ShowAllRest()"" /> "
 ..W "  </td>",!
 ..W "  <td width=""10%"">&nbsp;</td>",!
 ..D SRCHBUT
 ..W " </tr>",!
 ..W "</table>",!
 .
 .I +$G(%ARG("SRCH"))=0 D
 ..W "<br />",!
 ..W "<table dir="""_$$^%W1DIR_""">",!
 ..W " <tr>",!
 .. D SRCHBUT
 ..W " </tr>",!
 ..W "</table>",!
 .W "<br>",!
 ;
 I $$COLOR^W3MSDR(+$G(GR))'="OG",'$$^W4SMALL D
 .S UPIMG="w3verx1.png"
 .W "<img style=""position:relative;top:5px"" src="""_UPIMG_""" width="""_(WD-2)_""" />",!
 ;
 S FSZ=$$^W3FSZ(11)
 I $$^W4SMALL S FSZ=$$^W3FSZ($S($$^W4SIMUL:12,1:16))
 ;
 ;
 W "<table width="""_WD_""" style="""_$$FONTFM^W3CSS_";font-size:"_FSZ_""" "
 W " id=""TblMsd"" "
 W " cellpadding=""2"" cellspacing=""1"" border=0 dir="""_$$^%W1DIR_""">",!
 W "<tr valign=""top"" style="""_$$BGTBHD(+$G(GR))_""">",!
 W " <th "
 I '$$^W4SMALL W "width=""35%"" valign=""top"" "
 I $$^W4SMALL D
 .W " colspan=""2"" style="""_$$BGTH_";padding:5px"" "
 ;;W ">"_$$^%W1DICT("RSTRNNAME")
 W ">"_$$^%W1DICT("CHOICEREST")
 W "</th>"
 ;
 I '$$^W4SMALL D
 .W " <th width=""30%"">"_$$^%W1DICT("WORKTIME")_"</th>"
 .W " <th width=""20%"">"_$$^%W1DICT("KITCHENKIND")_"</th>"
 .W " <th width=""10%"">"_$$^%W1DICT("ABOUTUS")_"</th>"
 .W " <th width=""10%"">"_$$^%W1DICT("MENU")_"</th>"
 W "</tr>",!
 ;
 D SEDER
 ;
 S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D SHOWREST($G(^(N)))
 W "</table>",!
 W "</div>",!
 ;
 K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
TOMSD(MSD) ;
 N MSD1 S MSD1=MSD
 I $$^W4SMALL Q "ToSmallMenu('"_MSD1_"','"_$$COLOR(+$G(GR))_"')"
 ;
 I $G(GR) D
 .N SHLUHA S SHLUHA=$$SHLUHA^W3MSDR(+GR,MSD) Q:'SHLUHA
 .S MSD1=MSD_":"_SHLUHA
 Q "ToMenu('"_MSD1_"','"_$$COLOR(+$G(GR))_"')"
 ;
SHOWREST(MSD) ;
 Q:'$G(MSD)
 D GL Q:'$D(@GL@(MSD))
 I '$$USL(MSD) Q
 N %W1LNG
 I $G(GR) S %W1LNG=$$DEFLNG(GR)
 I '$G(GR) S %W1LNG=$$LNG^W3R(MSD)
 I $G(%W1LNG)="" S %W1LNG="H"
 ;
 W "<tr style=""background-color:"
  I '$$^W4SMALL D
  .W $S($G(NS)#2:"white",1:$$BGTBBD(+$G(GR)))
  I $$^W4SMALL D
  .W $S($G(NS)#2:"white",1:"lightgrey")
  W """>",!
  I $$^W4SMALL D
  .W "<td width=""30%"" valign=""center"" "_$$CLICKMSD_" class=""tdmsd1"">"
  . W "<img src="""_$$PICTURE(MSD)_""" style=""width:100%;height:"_$$KF^W3CSM(240)_";border-width:1px"" />",!
  .W "</td>",!
  ;
  I $D(^[$$^W3MAIN]UCI(MSD)) D
  .W "<td "_$$CLICKMSD_" class=""tdmsd2"">"
  I '$D(^[$$^W3MAIN]UCI(MSD)) W "<td class=""tdmsd2"" >"
  ;
  N FSZ S FSZ=$$^W3FSZ($S($G(PR800)=1:12,1:14))
  I $$^W4SMALL,'$$^W4SIMUL S FSZ=$$^W3FSZ(24)
  I $$^W4SMALL,$$^W4SIMUL S FSZ=$$^W3FSZ(14)
  ;
  W "<b style=""font-size:"_FSZ_";color:"_FC_""" >&nbsp;&nbsp;"_$$NAME(MSD)_"</b>&nbsp;&nbsp;<br>"
  W "<b style=""color:black"">&nbsp;&nbsp;"_$$ADDR(MSD)_"&nbsp;&nbsp;</b><br>"
  W "<b style=""color:black"">&nbsp;&nbsp;"_$$^%W1DICT("TEL")_" : "_$$TEL(MSD)_"&nbsp;&nbsp;"
  I $$FAX^W3R(MSD) W "<br/>&nbsp;&nbsp;"_$$^%W1DICT("FAX")_" : "_$$FAX^W3R(MSD)
 W "</b>"
 W "</td>",!
 Q:$$^W4SMALL
 ;
 W "<td>",!
 D RUNTIME(MSD)
 W "</td>",!
 ;
 W "<td style=""color:black"">&nbsp;&nbsp;"_$$KKIND(MSD)_"<br />"
 W "<b style=""color:"_FC_""">&nbsp;&nbsp;"_$$KASHER(MSD)_"</b>"
 W "</td>",!
 ;
 W "<td><a href="""_$$SITE(MSD,GR)_""" target=""_blank""><img src="""_$$PICTURE(MSD)_""" style=""width:100;height:60;border-width:1px"" alt=""about us"" /></a></td>",!
 ;
 I $D(^[$$^W3MAIN]UCI(MSD)) W "<td align=""center""><a href=""#"" onClick="""_$$TOMSD(MSD)_""" ><img src=""w3order.gif"" style=""width:50;height:60;border-width:1px"" alt=""order on-line""/></a></td>",!
 ;
 I '$D(^[$$^W3MAIN]UCI(MSD)) W "<td align=""center""><img src=""w3order.gif"" style=""width:50;height:60;border-width:1px"" alt=""order on-line""/></td>",!
 Q
 ;
USL(MSD) ;
 ;;W !,MSD," "
 I '$$USLRKV("MSDN","MSD") Q 0
 I '$$USLRKV("REGION","AZOR") Q 0
 I '$$USLRKV("CITY","IR") Q 0
 I '$$USLRKV("STREET","STREET") Q 0
 I '$$USLRKV("KKIND","KKIND",1) Q 0
 I '$$USLRKV("KASHER","KASHER") Q 0
 I $G(%ARG("PRICE"))'?.P,$G(%ARG("PRICE"))'="ALL",$G(%ARG("PRICE"))'=$$PRICE^W3R(MSD) Q 0
 N OK S OK=1
 I $L($G(%ARG("COND"))) D
 .N AC,UCOND S AC=%ARG("COND")
 .N I F I=1:1:$L(AC,";")-1 D  Q:'OK
 ..S UCOND=$$INVH^%L1FRM($P(AC,";",I))
 ..IF (";"_$$COND^W3R(MSD)_";")'[(";"_UCOND_";") S OK=0
 I 'OK Q 0
 Q 1
USLRKV(RKV,LB,SOD)
 S ARG=$$SPA^%L1FRM($G(%ARG(RKV)))
 I '$G(SOD),ARG'?.P,ARG'="ALL",@("$$INVH^%L1FRM(ARG)'=$$"_LB_"^W3R(MSD)") Q 0
 I $G(SOD),ARG'?.P,ARG'="ALL",@("$$"_LB_"^W3R(MSD)'[$$INVH^%L1FRM(ARG)") Q 0
 Q 1
NAME(MSD) ;
 I $G(MSD)="" Q ""
 N NAME S NAME=$$MSD^W3R(MSD)
 Q $$H2U^%L1FRM(NAME)
 ;
ADDR(MSD,WEB) ;
 I '$D(WEB) S WEB=1
 I $G(MSD)="" Q "&nbsp;"
 N STREET S STREET=$$STREET^W3R(MSD) I STREET="" Q "&nbsp;"
 N HOME S HOME=$$BAIT^W3R(MSD)
 N IR S IR=$$IR^W3R(MSD)
 N ADDR
 S ADDR=STREET_" "_HOME I $L(IR) S ADDR=ADDR_" "_IR
 I $$^%W1LNG="H" S ADDR=IR_" , "_HOME_" "_STREET
 Q $$H2U^%L1FRM(ADDR)
 ;
RUNTIME(MSD) ;
 N I,M,A,A1
 S I0=1
 I '$D(RT("WD")) S RT("WD")="95%"
RT S @("DP"_I0_"=$$DP"_I0_"^W3R(MSD)")
 F I=I0+1:1:8 Q:I=8  S @("A=$$DP"_I_"^W3R(MSD)") S @("A1=DP"_I0) Q:A'=A1
 I I>(I0+1) S M(I0)=$$^%W1DICT("DAY"_I0,"",%W1LNG)_" - "_$$^%W1DICT("DAY"_(I-1),"",$$^%W1LNG)
 I I=(I0+1) S M(I0)=$$^%W1DICT("DAY"_I0,"",%W1LNG)
 S M(I0,"DP")=@("DP"_I0)
 I I<8 S I0=I G RT
 N N S N="" F I=1:1  S N=$O(M(N)) Q:N=""  I $G(M(N,"DP"))="" K M(N)
 ;
 W "<div align=""center"">",!
 W " <table width="""_RT("WD")_""" dir="""_$$DIR_""" border=0 "
  I $D(RT("FSZ")) D
  .W "style=""font-size:"_$$^W3FSZ(RT("FSZ"))_""""
  I '$D(RT("FSZ")) D
  .I '$D(W3MSDDSC) D
  ..I +$$GET^%W1PRM("PR800")=1 W "style=""font-size:10pt"""
  ..I +$$GET^%W1PRM("PR800")=0 W "style=""font-size:11pt"""
  .I $D(W3MSDDSC) W "style=""font-size:"_$$^W3FSZ(12)_""""
  W " >",!
 ;
  I %W1LNG="H" F I=1:1:7 I $D(M(I)) D SHOWDP
  I %W1LNG'="H" F I=2:1:7,1 I $D(M(I)) D SHOWDP
 W "</table>",!
 W "</div>",!
 Q
 ;
SHOWDP W "<tr>"
 N DP
 W "<td style=""width:"_$S($G(%W1LNG)="H":"25%",1:"35%")_";color:#267f00;font-weight:bold"">"_M(I)_"</td>"
 S DP=$$RPL^%L1FRM($TR(M(I,"DP")," ",""),"-"," - ")
 I $P(DP," -")["SHBT1" D
 .S DP=$$^%W1DICT("SHABAT1")_" - "_$P($P(DP," - ",2),":",1,2)
 I $P(DP," -")["SHBT2" D
 .S DP=$$^%W1DICT("SHABAT2")_" - "_$P($P(DP," - ",2),":",1,2)
 I $P(DP," - ",2)["LAST" D
 .S DP=$P($P(DP," -"),":",1,2)_" - "_$$^%W1DICT("LASTCLIENT")
 I DP["24HR" D
 .S DP=$$^%W1DICT("24HR")
 ;
 S DP=$P($P(DP," - "),":",1,2)_" - "_$P($P(DP," - ",2),":",1,2)
 I DP="00:00 - 00:00" S DP=$$^%W1DICT("CLOSED")
 W "<td style=""color:black"">"_DP_"</td></tr>",!
 Q
 ;
 ;
TEL(MSD) ;
 I $G(MSD)="" Q ""
 Q $$TEL^W3R(MSD)
 ;
PICTURE(MSD) ;
 I $G(MSD)="" Q ""
 Q $$PIC^W3R(MSD)
 ;
SITE(MSD,MSDR)
 I $G(MSD)="" Q ""
 N SITE S SITE=$$SITE^W3R(MSD)
 S SITE=$$FUNC^%LCASE(SITE)
 I SITE?.P S SITE="w3msddsc.jsp?MSD="_MSD_"&MSDR="_MSDR Q SITE
 I SITE'["http://",SITE'["www." S SITE="http://www."_SITE Q SITE
 I SITE'["http://" S SITE="http://"_SITE Q SITE
 S SITE="w3msddsc.jsp?MSD="_MSD_"&MSDR="_MSDR Q SITE
 ;
KKIND(MSD) ;
 N KK S KK=$$KKIND^W3R(MSD)
 I KK="" Q "&nbsp;"
 S KK=$$RPL^%L1FRM(KK,";",", ")
 Q $$H2U^%L1FRM(KK)
 ;
KASHER(MSD) ;
 N KS S KS=$$KASHER^W3R(MSD)
 I KS="" Q "&nbsp;"
 Q $$H2U^%L1FRM(KS)
 ;
DIR(STAM) ;
 I %W1LNG="H" Q "RTL"
 Q "LTR"
 ;
GL S GL="^[$$^W3MAIN]W3MSD"
 Q
SELNAME(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 ;
 D SEDER
 ;
 W "<select id=""nmid"" "_$$FONTSIZE^W3MSDRG_" >",!
 W "<option value=""ALL"" "_$S('$G(%MSD("MSD")):"selected=""selected""",1:"")_" >"_$$^%W1DICT("ALL")_"</option>",!
 S N="" F  S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D
 .N REST S REST=$G(^(N))
 .D SELNAME1(N)
 W "</select>",!
 K ^[$$^W3MAIN]TMP(JB)
 Q
CRTMP(MSD) ;
 N INV,NM
 S NM=$G(^[$$^W3MAIN]W3MSD(MSD))
 S INV=$$INV^%L1FRM(NM) Q:INV=""
 S ^[$$^W3MAIN]TMP(JB,INV)=MSD
 Q
SELNAME1(INVMSD) ;
 Q:$G(INVMSD)=""
 N VL S VL=$$H2U^%L1FRM($$INV^%L1FRM(INVMSD))
 W "<option value="""_VL_""""
 I $G(%ARG("MSD")),$G(REST),REST=%ARG("MSD") W " selected=""selected"""
 W """>"
 W VL
 W "</option>",!
 Q
SETCOND(TO) ;
 N STARG S STARG=$P(TO,"&",2,255)
 D PUT^%W1PRM("STARG",STARG)
 Q
SEDER ;
 K ^[$$^W3MAIN]TMP(JB)
 N N,NS I $G(GR) D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSDR(GR,N)) Q:N=""  I $P($G(^(N)),"\")'=0 D CRTMP(N)
 I '$G(GR) D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSD(N)) Q:N=""  D CRTMP(N)
 Q
DEFLNG(GR) ;
 Q $$LNG^W3MSDR(GR)
 ;
BGHD(GR) ;
 ;;I GR=1 Q "background-color:#eb6a83"
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "background-color:#d27e7e"
 I COLOR="OG" Q "background-color:#ff7c11"
 I COLOR="BL" Q "background-color:#7474bb"
 Q "background-color:#d27e7e"
 ;
BGBODY(GR) ;
 ;;I GR=1 Q "background-color:#de012d"
 I $$^W4SMALL Q "background-image:url(w3restbg3.jpg)"  ;Q "background:#ebebeb"
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "background-image:url(w3bgred.png)"
 I COLOR="OG" Q "background-color:#eaeaea"
 I COLOR="BL" Q "background-image:url(w3bgblue.png)"
 Q "background-image:url(w3bgred.png)"
 ;
BGTH(STAM) ;
 N A D  Q A
 .S A="-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);"
 .S A=A_"-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);"
 .S A=A_"background: #8b8b8b;"
 .S A=A_"filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#a9a9a9', endColorstr='#7a7a7a');"
 .S A=A_"background: -webkit-gradient(linear, left top, left bottom, from(#a9a9a9), to(#7a7a7a));"
 .S A=A_"background: -moz-linear-gradient(top,  #a9a9a9,  #7a7a7a);"
 .S A=A_"background: -o-linear-gradient( #a9a9a9,  #7a7a7a);"
 .S A=A_"border: solid 1px #6d6d6d;"
 .S A=A_"-moz-border-radius-topleft: 15px;"
 .S A=A_"border-top-left-radius: 15px;"
 .S A=A_"-moz-border-radius-topright: 15px;"
 .S A=A_"border-top-right-radius: 15px;"
 ;
BGTBHD(GR) ;
 I $$^W4SMALL Q "background-color:#ebebeb"
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "background-color:#fecccc"
 I COLOR="OG" Q "background-color:#ff7c11;color:white"
 I COLOR="BL" Q "background-color:#aaaad6"  ;#7474bb"
 Q "background-color:#fecccc"
 ;
BGTBBD(GR) ;
 ;;I GR=1 Q "#f9d5dc"
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "#feecec"
 I COLOR="OG" Q "#ffde96"
 I COLOR="BL" Q "eaeaf2"  ;Q "#aaaad6"
 Q "#feecec"
 ;
FC(GR) ;
 N COLOR S COLOR=$$COLOR(GR)
 I COLOR="RW" Q "#d90300"
 I COLOR="DRW" Q "#990000"
 I COLOR="REST" Q "#991A1D"
 I COLOR="OG" Q "#ff7c11"
 I COLOR="BL" Q "#060686"
 Q "#d90300"
 ;
COLOR(GR) ;
 Q $$COLOR^W3MSDR(GR)
 ;
COUNTRY(GR) ;
 Q $$COUNTRY^W3MSDR(GR)
 ;
FAX(MSD,PRM) ;
 Q $$FAX^W3R(MSD)
 ;
MSDR(MSD) ;
 N OK S OK=0
 N MSDR S MSDR=0
 F  S MSDR=$O(^[$$^W3MAIN]W3MSDR(MSDR))  Q:MSDR=""  I $D(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) S OK=1 Q
 Q MSDR
 ;
SRCHBUT ;
 W "  <td>"
 W "   <input type=""button"" class=""btnsmall"""
 W "    value="""_$$^%W1DICT("SEARCH")_""" "
 W "    onClick=""ShowSearchPage()"" /> "
 W "  </td>",!
 W "  <td width=""10%"">&nbsp;</td>",!
 W "  <td>"
 W "   <input type=""button"" class=""btnsmall"" "
 W "    value="""_$$^%W1DICT("CLOSE")_""" "
 W "    style=""color:red"" "
 W "    onClick=""Close()"" /> "
 W "  </td>",!
 Q
 ;
CLICKMSD(STAM) ;
 Q "style=""cursor:pointer"" onClick="""_$$TOMSD(MSD)_""""

W3MSDDS0
W3MSDDSC(MSD,MSDR) ; [ 14.05.08 15:45 ] [ 13.05.08 22:36 ] [ 12.05.08 22:05 ]
 N STARG
 ;
 D PUT^%W3DEB("W3MSDDSC","MSD=MSD & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 S WD=$S(PR800=1:650,1:760)
 S %W1LNG=$$LNG^W3MSDR(MSDR)
 S COLOR=$$COLOR^W3MSDR(MSDR)
 ;
 W "<br /><br />",!
 W "<div align=""center"" style=""width:760px;background-color:white"">",!
 W "<br />",!
 W "<span style=""font-size:"_$$^W3FSZ(30)_";color:"_$$FC(COLOR)_"""><i>"_$$H2U^%L1FRM($$MSD^W3R(MSD))_"</i></span>"
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr><td>",!
 W "<b style=""color:black;"_$$FONTFM^W3CSS_";font-size"_$$^W3FSZ(12)_""">&nbsp;&nbsp;"_$$ADDR(MSD)_"&nbsp;&nbsp;"
 W $$^%W1DICT("TEL")_" : "_$$TEL(MSD)
 I $$FAX^W3R(MSD) W "&nbsp;&nbsp;"_$$^%W1DICT("FAX")_" : "_$$FAX^W3R(MSD)
 W "</b>"
 W "</td></tr>",!
 W "<tr><td align=""center"">"
 W "<br />",!
 W "<img src="""_$$PICTURE(MSD)_""" style=""width:400;height:200;border-width:1px"" /></td>",!
 W "</td></tr>",!
 W "</table>",!
 W "<br>",!
 ;
 W "<table width=""650px"" style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""" cellpadding=""2"" cellspacing=""0"" border=0 dir="""_$$^%W1DIR_""">",!
 D SHOWREST(MSD)
 W "</table>,",!
 W "</div>",!
 W "<br /><br />",!
 ;;W "</form>",!
 ;;K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
TOMSD(MSD) ;
 Q "ToMenu('"_MSD_"')"
 ;
SHOWREST(MSD) ;
 D GL Q:'$D(@GL@(MSD))
 S:'$D(%W1LNG) %W1LNG="H"
 W !
 D HEAD("ABOUTUS")
 W "<tr><td style=""font-size:"_$$^W3FSZ(14)_""">",!
 W $$H2U^%L1FRM($$DESCR^W3R(MSD))
 W "</td></tr>",!
 D HEAD("WORKTIME")
 W "<tr><td>",!
 D RUNTIME(MSD)
 W "</td></tr>",!
 D HEAD("KITCHENKIND")
 W "<tr>"
 W "<td style=""color:black""><b>&nbsp;"_$$KKIND(MSD)_"</b><br />"
 W "<b style=""color:"_$$FC(COLOR)_""">&nbsp;"_$$KASHER(MSD)_"</b>"
 W "</td></tr>",!
 D HEAD("CONDITIONS")
 N GL S GL="^[$$^W3MAIN]W3COND"
 W "<tr><td>",!
 W "<table width=""40%"">"
 N N S N="",I=-1 F  S N=$O(@GL@(N)) Q:N=""  D
 .N A S A=$$SPA^%L1FRM($G(@GL@(N,%W1LNG))),I=I+1
 .I $$COND^W3R(MSD)[A D
 ..W "<tr height=""20px"" style=""width:30%""><td><b>"_$$H2U^%L1FRM(A)_"</b></td>",!
 ..W "<td><img src="""_$$FUNC^%LCASE($G(@GL@(N)))_""">"
 ..W "</td></tr>",!
 W "</table></td></tr>",!
 W !
 Q
 ;
ADDR(MSD,WEB) ;
 I '$D(WEB) S WEB=1
 I $G(MSD)="" Q "&nbsp;"
 N STREET S STREET=$$STREET^W3R(MSD) I STREET="" Q "&nbsp;"
 N HOME S HOME=$$BAIT^W3R(MSD)
 N IR S IR=$$IR^W3R(MSD)
 N ADDR ;;S ADDR=STREET_" "_HOME I $L(IR) S ADDR=ADDR_" , "_IR
 S ADDR=HOME_" "_STREET I $L(IR) S ADDR=IR_" , "_ADDR
 Q $$H2U^%L1FRM(ADDR)
 ;
RUNTIME(MSD) ;
 N I,M,A,A1
 S I0=1
RT S @("DP"_I0_"=$$DP"_I0_"^W3R(MSD)")
 F I=I0+1:1:8 Q:I=8  S @("A=$$DP"_I_"^W3R(MSD)") S @("A1=DP"_I0) Q:A'=A1
 I I>(I0+1) S M(I0)=$$^%W1DICT("DAY"_I0,%W1LNG)_" - "_$$^%W1DICT("DAY"_(I-1),%W1LNG)
 I I=(I0+1) S M(I0)=$$^%W1DICT("DAY"_I0,%W1LNG)
 S M(I0,"DP")=@("DP"_I0)
 I I<8 S I0=I G RT
 N N S N="" F I=1:1  S N=$O(M(N)) Q:N=""  I $G(M(N,"DP"))="" K M(N)
 ;
 W ?5,"<div align=""center"">",!
 W ?5,"<table width=""100%"" dir="""_$$DIR_""" border=0 "
 I +$$GET^%W1PRM("PR800")=1 W "style=""font-size:10pt"""
 W " >",!
 I %W1LNG="H" F I=1:1:7 I $D(M(I)) D SHOWDP
 I %W1LNG'="H" F I=2:1:7,1 I $D(M(I)) D SHOWDP
 W ?5,"</table>",!
 W ?5,"</div>",!
 Q
SHOWDP W "<tr><td style=""width:"_$S($G(%W1LNG)="H":"25%",1:"30%")_";color:#267f00;font-weight:bold"">&nbsp;"_M(I)_"</td>"
 W "<td style=""color:black;font-weight:bold"">"_$$RPL^%L1FRM($TR(M(I,"DP")," ",""),"-"," - ")_"</td></tr>",!
 Q
 ;
 ;
TEL(MSD) ;
 I $G(MSD)="" Q ""
 Q $$TEL^W3R(MSD)
 ;
PICTURE(MSD) ;
 N PATH,PATHL,TYPE,NOPIC
 S PATH=$$WEB^W3MAIN
 S PATHL=$$WEBL^W3MAIN
 S TYPE="jpg"
 ;
 S NOPIC="w3pic."_TYPE
 ;
 S PICNAME="w3pic"_MSD_"."_TYPE
 S FLPIC=PATH_PICNAME
 S FLPICL=PATHL_PICNAME
 I $$^%L1ZOS(10,FLPICL)<0 Q PATH_NOPIC
 Q FLPIC
 ;
SITE(MSD)
 I $G(MSD)="" Q ""
 N SITE S SITE=$$SITE^W3R(MSD)
 S SITE=$$FUNC^%LCASE(SITE)
 I SITE'["http://",SITE'["www." S SITE="http://www."_SITE Q SITE
 I SITE'["http://" S SITE="http://"_SITE Q SITE
 Q "&nbsp;"
 ;
KKIND(MSD) ;
 N KK S KK=$$KKIND^W3R(MSD)
 I KK="" Q "&nbsp;"
 S KK=$$RPL^%L1FRM(KK,";"," ,")
 Q $$H2U^%L1FRM(KK)
 ;
KASHER(MSD) ;
 N KS S KS=$$KASHER^W3R(MSD)
 I KS="" Q "&nbsp;"
 Q $$H2U^%L1FRM(KS)
 ;
DIR(STAM) ;
 I %W1LNG="H" Q "RTL"
 Q "LTR"
 ;
GL S GL="^[$$^W3MAIN]W3MSD"
 Q
HEAD(KOT) ;
 W "<tr><td><br /><span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";color:"_$$FC(COLOR)_""">"_$$^%W1DICT(KOT)_" : </span></td><tr>"
 Q
 ;
FC(COLOR) ;
 I COLOR="RW" Q "#d90300"
 I COLOR="BL" Q "#060686"
 Q "#d90300"

W3MSDDSC
W3MSDDSC(MSD,MSDR) ; [ 19.05.26 15:53 ] [ 30.10.10 08:05 ] [ 25.07.10 11:01 ] 
 S MSD=$G(MSD),MSDR=$G(MSDR)
 N STARG
 ;
 D PUT^%W3DEB("W3MSDDSC","MSD=MSD & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 S WD=$S(PR800=1:650,1:760)
 N COUNTRY,%W1LNG
 I $G(MSDR) D
 .S %W1LNG=$$LNG^W3MSDR(MSDR)
 .S COUNTRY=$$COUNTRY^W3MSDR(MSDR)
 .S COLOR=$$COLOR^W3MSDR(MSDR)
 .I %W1LNG="" S %W1LNG="H"
 .I COUNTRY="" S COUNTRY="IS"
 .I COLOR="" S COLOR="RW"
 I '$G(MSDR) D
 .S %W1LNG=$$LNG^W3R(MSD)
 .S COUNTRY=$$COUNTRY^W3R(MSD)
 .S COLOR="RW"
 .I %W1LNG="" S %W1LNG="H"
 .I COUNTRY="" S COUNTRY="IS"
 ;
 W "<br /><br />",!
 W "<div align=""center"" style=""width:760px;background-color:white;color:black"">",!
 W "<br />",!
 W "<span style=""font-size:"_$$^W3FSZ(30)_";color:"_$$FC(COLOR)_"""><i>"_$$H2U^%L1FRM($$MSD^W3R(MSD))_"</i></span>",!
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr><td>",!
 W "<span style=""color:black;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ_""">&nbsp;&nbsp;"_$$ADDR(MSD)_"&nbsp;&nbsp;"
 W $$^%W1DICT("TEL")_" : "_$$TEL(MSD)
 I $$FAX^W3R(MSD) W "&nbsp;&nbsp;"_$$^%W1DICT("FAX")_" : "_$$FAX^W3R(MSD)
 W "</span>"
 W "</td></tr>",!
 W "<tr><td align=""center"">"
 W "<br />",!
 W "<img src="""_$$PICTURE(MSD)_""" style=""width:400;height:200;border-width:1px"" />",!
 W "</td></tr>",!
 W "</table>",!
 W "<br>",!
 ;
 W "<table width=""650px"" style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""" cellpadding=""2"" cellspacing=""0"" border=0 dir="""_$$^%W1DIR_""">",!
 D SHOWREST(MSD)
 W "</table>,",!
 W "</div>",!
 W "<br /><br />",!
 ;;W "</form>",!
 ;;K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
TOMSD(MSD) ;
 Q "ToMenu('"_MSD_"')"
 ;
SHOWTXT(TXT)
 S TXT=$$H2U^%L1FRM(TXT)
 W $$RPL^%L1FRM(TXT,"_","<br>"),!
 Q
SHOWREST(MSD) ;
 Q:'$G(MSD)
 D GL Q:'$D(@GL@(MSD))
 S:'$D(%W1LNG) %W1LNG="H"
 W !
 D HEAD("ABOUTUS")
 W "<tr><td style=""font-size:"_$$^W3FSZ(14)_""">",!
 D SHOWTXT($$DESCR^W3R(MSD))
 W "</td></tr>",!
 D HEAD("MSG&SALES")
 W "<tr><td style=""font-size:"_$$^W3FSZ(14)_""">",!
 D SHOWTXT($$MSG^W3R(MSD))
 W "</td></tr>",!
 D HEAD("WORKTIME")
 W "<tr><td>",!
 N W3MSDDSC S W3MSDDSC=""
 D RUNTIME(MSD)
 W "</td></tr>",!
 D HEAD("KITCHENKIND")
 W "<tr>"
 W "<td style=""color:black"">&nbsp;"_$$KKIND(MSD)_"<br />"
 W "<b style=""color:"_$$FC(COLOR)_""">&nbsp;"_$$KASHER(MSD)_"</b>"
 W "</td></tr>",!
 D HEAD("AVERAGEPRICE")
 W "<tr>"
 W "<td>"_$$PRICE^W3R(MSD)_" "_$$H2U^%L1FRM($$MTB^W3CNTRY(COUNTRY))_"</td>"
 W "</tr>",!
 D HEAD("CONDITIONS")
 N GL S GL="^[$$^W3MAIN]W3COND"
 W "<tr><td>",!
 W "<table width=""40%"">"
 N N S N="",I=-1 F  S N=$O(@GL@(N)) Q:N=""  D
 .N A S A=$$SPA^%L1FRM($G(@GL@(N,%W1LNG))),I=I+1
 .I $$COND^W3R(MSD)[A D
 ..W "<tr height=""20px"" style=""width:30%;font-size:"_$$^W3FSZ_"""><td>"_$$H2U^%L1FRM(A)_"</td>",!
 ..W "<td><img src="""_$$FUNC^%LCASE($G(@GL@(N)))_""">"
 ..W "</td></tr>",!
 W "</table></td></tr>",!
 W !
 Q
 ;
ADDR(MSD,WEB) ;
 Q $$ADDR^W3MSD(MSD)
 ;
RUNTIME(MSD) ;
 D RUNTIME^W3MSD(MSD)
 Q
 ;
TEL(MSD) ;
 I $G(MSD)="" Q ""
 Q $$TEL^W3R(MSD)
 ;
PICTURE(MSD) ;
 Q $$PIC^W3R(MSD)
 ;
SITE(MSD)
 I $G(MSD)="" Q ""
 N SITE S SITE=$$SITE^W3R(MSD)
 S SITE=$$FUNC^%LCASE(SITE)
 I SITE'["http",SITE'["www." S SITE="https://www."_SITE Q SITE
 I SITE'["http" S SITE="https://"_SITE Q SITE
 Q "&nbsp;"
 ;
KKIND(MSD) ;
 N KK S KK=$$KKIND^W3R(MSD)
 I KK="" Q "&nbsp;"
 S KK=$$RPL^%L1FRM(KK,";"," ,")
 Q $$H2U^%L1FRM(KK)
 ;
KASHER(MSD) ;
 N KS S KS=$$KASHER^W3R(MSD)
 I KS="" Q "&nbsp;"
 Q $$H2U^%L1FRM(KS)
 ;
DIR(STAM) ;
 I %W1LNG="H" Q "RTL"
 Q "LTR"
 ;
GL S GL="^[$$^W3MAIN]W3MSD"
 Q
HEAD(KOT) ;
 W "<tr><td><br /><span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";color:"_$$FC(COLOR)_""">"_$$^%W1DICT(KOT)_" : </span></td><tr>"
 Q
 ;
FC(COLOR) ;
 I COLOR="RW" Q "#d90300"
 I COLOR="DRW" Q "#990000"
 I COLOR="REST" Q "#991A1D"
 I COLOR="BL" Q "#060686"
 Q "#d90300"
 

W3MSDG
W3MSDG(MSD) ; [ 25.04.23 14:40 ] [ 02.10.18 07:21 ] [ 21.02.10 12:58 ] 
 I $G(MSD)="" Q ""
 N A S A=$$NAME
 I $L(A) Q $$H2U^%L1FRM(A)_$S($$DEMO^W3PRM(MSD):" DEMO",1:"")
 I $G(MSD) Q $G(^[$$^W3MAIN]W3MSD(MSD))_$S($$DEMO^W3PRM(MSD):" DEMO",1:"")
 Q $G(^[$$^W3MAIN]W3MSDRI(MSD))
 ;
1(MSD) ;
 I $G(MSD)="" Q ""
 Q $G(^[$$^W3MAIN]W3MSD(MSD,1))
 ;
1234(MSD) ;
 Q $P($$1(MSD),"~",4)
 ;
5(MSD) ;
 Q $P($$1(MSD),"~",5)
 ;
6(MSD) ;
 Q $P($$1(MSD),"~",6)
 ;
7(MSD) ;
 Q $P($$1(MSD),"~",7)
 ;
NAME(STAM)
 N NM S NM=$G(@$$^W4PL@("ESEK",1.5))
 S NM=$$SPA^%L1FRM(NM)
 I NM'?.P Q NM
 Q $G(@$$^W4PL@("ESEK",1))
 

W3MSDLST
W3MSDLST ; [ 04.02.20 17:13 ] [ 06.01.20 11:09 ] [ 11.12.18 14:49 ] 
 N (JB,%ARG,%REM) 
 S GL="^[$$^W3MAIN]W3MSD"
 S GLR="^[$$^W3MAIN]W3MSDR"
 D ^%W1ARG
 S MSDR=+$G(%ARG("MSDR"))
 S MSDR1=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\")
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<table width=""96%"">",!
 W " <tr>" 
  W "<td width=""30%"">&nbsp;</td>"
  W "  <td style=""font-size:"_$$^W3FSZ(16)_";text-align:center"" >"
   W $$^%W1DICT("RSTRNLIST",MSDR1)
  W " </td>"
  W "<td width=""30%"">"
   W $$^%W1DICT("ABCSORT")_" "
   W "<input type=""checkbox"" id=""abcsort"" " 
    I $G(%ARG("ABC")) W " checked=""checked"" "
    W "onClick=""Sort()"" "
   W " />"
  W "</td>"
 W " </tr>",!
 W "</table>",!
 W "<br><br>",!
 ;
 W "<table id=""TblMsd"" border=""1"" cellpadding=""3"" cellspacing=""0"" >",!
 D KOT
 I $G(MSDR) D
 .I $G(%ARG("ABC")) D  Q
 ..N TMPABC S TMPABC=$$TMPABC^W4ABCKVZ K @TMPABC
 ..S N1="" F  S N1=$O(@GLR@(MSDR,N1)) Q:N1=""  D
 ...S NM=$$MSD^W3R(N1)
 ...D SETABC^W4ABCKVZ(NM,N1)
 ..N N S N="" F  S N=$O(@TMPABC@(N)) Q:N=""  D
 ...S N1=$G(^(N))
 ...D TRMSD(N1)
 .
 .S N1="" F  S N1=$O(@GLR@(MSDR,N1)) Q:N1=""  D
 ..D TRMSD(N1)
 W "</table>",!
 ;
 I '$$PRINT D
 .W "<br><br>",!
 . D ^W4BTN("PRINT","Print()","blue","",14)
 . W $$NBSP^%L1FRM(10)
 . D ^W4BTN("SUBMIT","Submit()","green","",14)
 . W $$NBSP^%L1FRM(10)
 . D ^W4BTN("BACK","Back()","red","",14)
 ;
 W "</div>",!
 Q
 ;
 ;
KOT ;
 W "<tr id=""trth"" "
  I $$PRINT W " style=""backghound-color:light-grey;color:black"" "
 W ">"
  W "<th>"_$$^%W1DICT("RESTNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("RESTNAME")_"</th>"
  W "<th>"_$$^%W1DICT("TEL")_"</th>"
  W "<th>"_$$^%W1DICT("PELE")_"</th>"
  W "<th>"_$$^%W1DICT("FAX")_"</th>"
  W "<th>"_$$^%W1DICT("FAXCOPY")_"</th>"
  W "<th>"_$$^%W1DICT("EMAIL")_"</th>"
  W "<th>"_$$^%W1DICT("WHERESEND")_"</th>"
  W "<th>"_$$^%W1DICT("DEBET")_"</th>"
  W "<th>"_$$^%W1DICT("FAXKIND")_"</th>"
  W "<th>"_$$^%W1DICT("AMALA")_"</th>"
  W "<th>"_$$^%W1DICT("AMALACA")_"</th>"
 W "</tr>",!
 Q
 ;
TRMSD(MSD) ;
 W "<tr style=""text-align:center"" >"
  W "<td id=""msd"_MSD_""" style=""cursor:pointer"
   I MSD=$$GETP^%W1PRM("CURMSD") W ";border:brown 2px solid"
   W """ "
   W "onClick=""ShowRest('"_MSD_"')"" >"
   W MSD
  W "</td>"
  ;
  W "<td>"
   W $$H2U^%L1FRM($$MSD^W3R(MSD))
  W "</td>"
  ;
  W "<td>"
   D  
   .I $$VIEW W " "_$$TEL^W3R(MSD)_" " Q
   .W "<input type=""text"" id=""tel"_MSD_""" size=""18"" value="""_$$TEL^W3R(MSD)_""" >"
  W "</td>"
  ;
  W "<td>"
   D
   .I $$VIEW W " "_$$PELE^W3R(MSD)_" " Q
   .W "<input type=""text"" id=""pele"_MSD_""" size=""10"" value="""_$$PELE^W3R(MSD)_""" >"
  W "</td>"
  ;
  W "<td>"
   D
   .I $$VIEW W " "_$$FAX^W3R(MSD)_" " Q
   .W "<input type=""text"" id=""fax"_MSD_""" size=""10"" value="""_$$FAX^W3R(MSD)_""" >"
  W "</td>"
  ;
  W "<td>"
   D
   .I $$VIEW W $$FAXCOPY^W3R(MSD) Q 
   .W "<select id=""faxcopy"_MSD_""" >",!
   .N I F I=0:1:2 D
   ..W "<option value="""_I_""" "_$$SELOPT(MSD,I,"FAXCOPY")_" >"_I_"</option>",!
   .W "</select>",!
  W "</td>"
  ;
  W "<td>"
   D
   .I $$VIEW W " "_$$EMAIL^W3R(MSD)_" " Q
   .W "<input type=""text"" id=""mail"_MSD_""" size=""30"" value="""_$$EMAIL^W3R(MSD)_""" >"
  W "</td>"
  ;
  W "<td>"
   D WHERESEND
  W "</td>"
  ;
  W "<td>"
   W "<input type=""checkbox"" id=""zic"_MSD_""" "_$S($$ZIC^W3R(MSD):"checked=""checked""",1:"")_" >"
  W "</td>"
  ;
  W "<td>"
   D FAXKIND
  W "</td>"
  ;
  W "<td>"
   D
   .I $$VIEW W $$AMALA^W3R(MSD) Q
   .;;W "<select id=""amala"_MSD_""" >",!
   .;;N I F I=0:1:30 D
   ..;;W "<option value="""_I_""" "_$$SELOPT(MSD,I,"AMALA")_" >"_I_"</option>",!
   .;;W "</select>",!
   .W "<input type=""text"" id=""amala"_MSD_""" size=""6"" maxlength=""6"" value="""_$$AMALA^W3R(MSD)_""" />",!
  W "</td>"
  ;
  W "<td>"
   D
   .I $$VIEW W $$AMALACA^W3R(MSD) Q
   .W "<select id=""amalaca"_MSD_""" >",!
   .N I F I=0:.25:5 D
   ..W "<option value="""_I_""" "_$$SELOPT(MSD,I,"AMALACA")_" >"_$J(I,2,2)_"</option>",!
   .W "</select>",!
  W "</td>"
  ;
 W "</tr>",!
 Q
 ;
 ; 
SELOPT(CODE,I,RKV) ;
 N VL S VL=$$RKV^W3MSDRG(RKV)
 I VL=I Q " selected=""selected"" "
 Q ""
 ;
WHERESEND ; 
  N SNDTO S SNDTO=+$$SND2MAIL^W3R(MSD)
  N M S M(0)=$$^%W1DICT("FAX")
  S M(1)=$$^%W1DICT("EMAIL")
  S M(2)=$$^%W1DICT("FAXANDMAIL")
  I $$VIEW W M(SNDTO) Q
  ;
  W "<select id=""sndto"_MSD_""" >",!
   W "<option value=""0"" "_$S(SNDTO=0:"selected=""selected"" ",1:"")_" >"_M(0)_"</option>",!
   W "<option value=""1"" "_$S(SNDTO=1:"selected=""selected"" ",1:"")_" >"_M(1)_"</option>",!
   W "<option value=""2"" "_$S(SNDTO=2:"selected=""selected"" ",1:"")_" >"_M(2)_"</option>",!
  W "</select>",!
 Q
 ;
FAXKIND ; 
  N M ;;S M(0)=$$^%W1DICT("NOVIDU")
  S M(1)=$$^%W1DICT("FAXAUTO")
  S M(2)=$$^%W1DICT("FAXYAD")
  I $$VIEW W M($$FAXKIND^W3R(MSD)) Q
  ;
  W "<select id=""faxkind"_MSD_""" >",!
   ;W "<option value=""0"" "_$$SELOPT(MSD,0,"FAXKIND")_" >"_M(0)_"</option>",!
   W "<option value=""1"" "_$$SELOPT(MSD,1,"FAXKIND")_" >"_M(1)_"</option>",!
   W "<option value=""2"" "_$$SELOPT(MSD,2,"FAXKIND")_" >"_M(2)_"</option>",!
  W "</select>",!
 Q
 ;
 ;
SBM(PRM) ;
 N MKT,RKV,MSD,PRZ
 S MKT="MSD~TEL~PELE~FAX~FAXCOPY~EMAIL~SNDTO~ZIC~FAXKIND~AMALA~AMALACA"
 S MSD=$P(PRM,"~")
 I MSD="" Q "NOREST"
 N J F J=2:1:$L(MKT,"~") D
 .S RKV=$P(PRM,"~",J)
 .S PRZ=$P(MKT,"~",J) Q:PRZ=""
 .D PUT^W3R(MSD,RKV,PRZ)
 Q 1
 ;
VIEW(STAM) ;
 I $$PRINT Q 1
 Q 0
 ;
PRINT(STAM) ;
 Q +$G(%ARG("PRINT"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSDR
W3MSDR ; [ 26.02.23 16:32 ] [ 27.03.22 10:49 ] [ 25.08.19 13:44 ] 
COLOR(MSDR) ;
 I '$G(MSDR) Q "DRW"
 N CLR S CLR=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\",3)
 I CLR="" Q "DRW"
 Q CLR
 ;
COUNTRY(MSDR) ;
 I '$G(MSDR) Q "IS"
 N CNT S CNT=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\",2)
 I CNT="" Q "IS"
 Q CNT
 ;
NAME(MSDR) ;
 I '$G(MSDR) Q ""
 Q $P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\")
 ;
NAMEU(MSDR) ;
 I '$G(MSDR) Q ""
 Q $$H2U^%L1FRM($$NAME(MSDR))
 ;
LNG(MSDR) ;
 I '$G(MSDR) Q "H"
 N CNT S CNT=$$COUNTRY(MSDR)
 I CNT="" Q "H"
 N LNG S LNG=$P($G(^[$$^W3MAIN]W3CNTRY(CNT)),"\")
 I LNG="" Q "H"
 Q LNG
 ;
MTB(MSDR) ;
 I '$G(MSDR) Q "g""y"
 N CNT S CNT=$$COUNTRY(MSDR)
 I CNT="" Q "g""y"
 N MTB S MTB=$P($G(^[$$^W3MAIN]W3CNTRY(CNT)),"\",2)
 I MTB="" Q "g""y"
 Q MTB
 ;
PSW(MSDR) ;
 I '$G(MSDR) Q ""
 N PSW S PSW=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\",4)
 I PSW="" Q ""
 Q PSW
 ;
EMAIL(MSDR) ;
 I '$G(MSDR) Q ""
 N EMAIL S EMAIL=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\",5)
 I EMAIL="" Q ""
 Q EMAIL
 ;
MKR(MSDR) ;
 I '$G(MSDR) Q ""
 N MKR S MKR=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\",6)
 S MKR=$$MKR^W3MKR(MKR) ; *** -- 25/08/19 LEV
 Q MKR
 ;
STAT(MSDR,MSD) ;
 I '$G(MSDR) Q 1
 I '$G(MSD) Q 0
 N STAT S STAT=+$P($G(^[$$^W3MAIN]W3MSDR(MSDR,MSD)),"\")
 I STAT Q STAT
 N N
 S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(N)) Q:N=""  D  Q:STAT
 .I $D(^[$$^W3MAIN]W3MSDR(N,MSD)) S STAT=2
 ;
 Q STAT
 ;
 ;
SHLUHA(MSDR,MSD) ;
 I '$G(MSDR) Q ""
 I '$G(MSD) Q ""
 N SHLUHA S SHLUHA=$P($G(^[$$^W3MAIN]W3MSDR(MSDR,MSD)),"\",2)
 Q SHLUHA
 ;
OUTCA(MSDR) ;
 I '$G(MSDR) Q 0
 Q $P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\",7)
 

W3MSDRG
W3MSDRG(PRM,CODE) ; [ 07.08.25 12:22 ] [ 06.08.25 13:56 ] [ 04.02.20 10:20 ] 
 ;
 ;;W "<form onsubmit=""return ValidateRG()"" action=""w3ordlk.jsp"" >",!
 N (JB,%ARG,CODE,%W1LNG,COUNTRY,PRM)
 D COUNTRY
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W3MSDRG")
 D PUT^%W3DEB("W3MSDRG","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N GL S GL="^[$$^W3MAIN]W3MSD"
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 ;
 ;;I $G(%ARG("MSDR")),$G(CODE)="ALL" D
 .S CODE=$O(@$$^W4GL("W3MSDR")@(%ARG("MSDR"),""),-1)+1
 I $G(%ARG("MSDR")),$G(CODE)="ALL" S CODE=""
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""90%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("RESTREGISTRY")_"</td></tr>",!
 W "</table>",!
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 W "<table width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 D CODE
 ;;I '$$^W4MM D PSW
 W "</tr>",!
 W "</table>",!
 ;
 D OPTABLE
 W "<tr>" D NAME,ENGLISHNAME W "</tr>",!
 ;
 W "<tr>",!
 D NMB
 D PELE
 W "</tr>",!
 ;
 W "<tr>",!
 D EMAIL
 D FAX
 W "</tr>",!
 ;
 W "<tr>",!
 D SITE
 D FAXALW
 W "</tr>"
 ;
 I $$MM^W4PRM D
 .W "<tr>",!
 . D ZIC
 . D FAXCOPY
 .W "</tr>",!
 .;
 .W "<tr>",!
 . D AMALA
 . D AMALACA
 .W "</tr>",!
 ;
 W "<tr>",!
  D CITY
  I $$POLYGON D MAP
  I '$$POLYGON W "<td>&nbsp;</td>"
 W "</tr>",!
 ;
 W "<tr>",!
 D STREET
 D HOME
 W "</tr>",!
 ;
 W "<tr>",!
 D DESCRIPTION
 I $$POLYGON D
 .D COORD
 W "</tr>",!
 ;
 W "<tr>"
 I '$$MM^W4PRM D MESSAGE
 ;;I $$MM^W4PRM D MAKOR
 D FAXKIND
 W "</tr>",!
 ;
 W "<tr>",!
 D MAHIR
 D KASHER
 W "</tr>",!
 ;
 W "<tr>",!
  D MINIMUM
  D HACHANA
 W "</tr>",!
 ;
 W "</table>",!
 ;
 D DIVBTN
 ;
 W "<br><span style=""font-size:"_$$^W3FSZ(14)_";color:blue"" >"_$$^%W1DICT("WORKTIME")_"</span>",!
 D SELDAY
 ;
 I $$CALLCENTER^W4PRM!$$MM^W4PRM G EDIV
 ;
 W "<br><br><br><span style=""font-size:"_$$^W3FSZ(14)_";color:blue"" >"_$$^%W1DICT("KKIND&COND")_"</span>",!
 D OPTABLE
 W "<tr><th>"_$$^%W1DICT("KITCHENKIND")_"</th><th>"_$$^%W1DICT("CONDITIONS")_"</th></tr>",!
 W "<tr>",!
 D KKIND
 D COND
 W "</tr>",!
 W "</table>",!
EDIV;
 W "</div>",!
 W "<br>",!
 ;
 D DIVBTN
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 Q
 ;
 ;
OPTABLE ;
 W "<table border=""0"" "_$S($D(OPID):"id="""_OPID_"""",1:"")_" style=""border:solid;border-style:groove;border-color:#eaeaea;cellpadding:10"" width=90% border=0 dir="""_$$^%W1DIR_""" onClick=""ifrHide('MUST')"" >",!
 K OPID
 Q
OPINTBL ;
 W "<table "_$S($D(OPID):"id="""_OPID_"""",1:"")_" border=""0"" "
 W "style=""border:solid;border-width:1px;border-color:blue"" "
 W "cellpadding=""0"" cellspacing=""0"" align=""center"" "
 W "width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 K OPID Q
 ;
CODE D TD W "&nbsp;"_$$ZW_$$^%W1DICT("RESTCODE")
 W "</td>",!
 W "<td>"
 W "<div style=""display:inline-flex;align-items:center"">"
 D INPC("CODE",100,12,"LTR")
 W "</div>",! 
 W "</td>",!
 ;
 W "<td>&nbsp;</td>"
 ;
 W "<td>" 
 W "&nbsp;"_$$^%W1DICT("CODEUSA")
 W $$NBSP^%L1FRM(5)
 D INP("CODUSA",150,18,"LTR")
 W "</td>",!
 Q
 ;
 ;
PSW W ! S TDWIDTH="15%" S TDALIGN=$S($$^%W1DIR="RTL":"right",1:"left") D TD
 W "&nbsp;"_$$ZW_$$^%W1DICT("PASSWORD")_"<br>"
 W "<span>"_$$^%W1DICT("NUMBERONLY")_"</span><br>"_$$^%W1DICT("RETYPEPSW")_"</td><td>"
 D INP("PSW",60,12,"LTR")
 Q
 ;
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"</td><td>&nbsp;&nbsp;"
 D INP("NMB","95%",36,"LTR")
 Q
 ;
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td><td>&nbsp;"
 D INP("PELE",150,18,"LTR")
 Q
 ;
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("RESTNAME")_"</td>"
 N WD S WD=200 I $$SMALL S WD=600
 W "<td>&nbsp;&nbsp;" D INP("NAME",WD,30,$$^%W1DIR)
 Q
 ;
ENGLISHNAME D TD W "&nbsp;"_$$^%W1DICT("ENGLISHNAME")_"</td>"
 N WD S WD=180 I $$SMALL S WD=600
 W "<td>&nbsp;" D INP("ENGLISHNAME",WD,30,$$^%W1DIR)
 Q
 ;
MAP ;
 D TD W "&nbsp;&nbsp;"_$$^%W1DICT("MAP")_"</td>"
 W "<td>&nbsp;&nbsp;"
 W "<select id=""MAP"" "_$$FONTSIZE_" >",!
 W "<option selected=""selected"" value=""0"">"_$$^%W1DICT("CHOICEMAP")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4GL("W4MAPPRM")@(N)) Q:N=""  D
 .N A S A=$$H2U^%L1FRM($$SPA^%L1FRM($G(^(N))))
 .W "<option value="""_N_""""
 .I $G(CODE),$$MAP^W3R(CODE)=N W " selected=""selected"""
 .W ">"_N_" "_A_"</option>",!
 W "</select>",!
 W "</td>",!
 Q
 ;
COORD ;
 D TD W "&nbsp;&nbsp;"_$$^%W1DICT("COORD")_"</td>"
 W "<td>&nbsp;&nbsp;"
  W "<input type=""text"" id=""COORD"" size=""40"" readonly=""readonly"" "
   W " value="""_$$COORD^W3R($G(CODE))_""""
  W " />"
 W "</td>",!
 Q
 ;
AZOR D TD W "&nbsp;&nbsp;"_$$^%W1DICT("REGION")_"</td>"
 W "<td>&nbsp;&nbsp;"
 W "<select id=""AZOR"" "_$$FONTSIZE_" >",!
 I $G(PRZ)="SRC" W "<option selected=""selected"" value=""ALL"">"_$$^%W1DICT("ALLREGIONS")_"</option>",!
 N N S N="" F  S N=$O(^[$$^W3MAIN]W3AZOR($$DEFAZOR,N)) Q:N=""  D
 .N A S A=$$H2U^%L1FRM($$SPA^%L1FRM($G(^(N))))
 .W "<option value="""_A_""""
 .I $G(CODE),$$H2U^%L1FRM($$AZOR^W3R(CODE))=A W " selected=""selected"""
 .W ">"_A_"</option>",!
 W "</select>",!
 W "</td>",!
 Q
 ;
STREET D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td>"
 N WD S WD=200 I $$SMALL S WD=600
 W "<td>&nbsp;&nbsp;" D INP("STREET",WD,30,$$^%W1DIR)
 Q
 ;
HOME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NUMBER")_"</td>",!
 N WD S WD=50 I $$SMALL S WD=150
 W "<td>&nbsp;&nbsp;" D INP("HOME",50,5,"LTR")
 Q
 ;
CITY D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"</td>"
 N NOTAKEAWAY,W3MSDRG
 S NOTAKEAWAY="",W3MSDRG=""
 ;;W "<td>&nbsp;&nbsp;"
 ;; D INPCT^W3ORDDET("CITY",120,20,$$^%W1DIR,"T")
 ;;W "</td>",!
 ;;Q
 ;
 S TDALIGN="right"
 D TD
 I +$G(%ARG("PR800"))'=1 W "&nbsp;"
 N NOTAKEAWAY,W3MSDRG
 S NOTAKEAWAY="",W3MSDRG=""
 ;
 N WD S WD=180 I $$SMALL S WD=600
 D INPCT("CITY",WD,30,$$^%W1DIR)
 Q
 ;
DESCRIPTION D TD W "&nbsp;"_$$^%W1DICT("DESCRIPTION")_"</td>"
 W "<td>&nbsp;&nbsp;"
 W "<textarea id=""descrid"" rows=""5"" cols=""50"" style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""">"
 N TXT S TXT=$$H2U^%L1FRM($$DESCR^W3R(CODE))
 W TXT
 W "</textarea>",!
 Q
 ;
MESSAGE D TD W "&nbsp;"_$$^%W1DICT("MSG&SALES")_"</td>"
 W "<td >&nbsp;&nbsp;" ;;D INP("DESCR","95%",200,$$^%W1DIR)
 W "<textarea id=""msgid"" rows=""5"" cols=""50"" style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""">"
 N TXT S TXT=$$H2U^%L1FRM($$MSG^W3R(CODE))
 W TXT
 W "</textarea>",!
 Q
 ;
EMAIL D TD W "&nbsp;"_$$ZW_$$^%W1DICT("EMAIL")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("EMAIL","95%",60,"LTR")
 Q
 ;
SITE D TD W "&nbsp;"_$$^%W1DICT("SITE")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("SITE","95%",60,"LTR")
 Q
 ;
FAX D TD W "&nbsp;"_$$^%W1DICT("FAX")_"</td>"
 N WD S WD=150 I $$SMALL S WD=450
 W "<td>&nbsp;" D INP("FAX",150,16,"LTR")
 Q
 ;
FAXALW ;
 I $$MM^W4PRM D  Q
 .D TD W "&nbsp;"_$$^%W1DICT("SND2MAIL")_"</td>"
 .W "<td>&nbsp;"
 . W "<select id=""FAXALW"" >",!
 .  W "<option value=""0"" " 
 .   I '$$SND2MAIL^W3R(CODE) W " selected=""selected"" "
 .  W ">"
 .   W $$^%W1DICT("FAX")
 .  W "</option>",!
 .  W "<option value=""1"" " 
 .   I $$SND2MAIL^W3R(CODE)=1 W " selected=""selected"" "
 .  W ">"
 .   W $$^%W1DICT("EMAIL")
 .  W "</option>",!
 .  W "<option value=""2"" " 
 .   I $$SND2MAIL^W3R(CODE)=2 W " selected=""selected"" "
 .  W ">"
 .   W $$^%W1DICT("FAXANDMAIL")
 .  W "</option>",!
 . W "</select>",!
 .W "</td>"
 ;
 D TD W "&nbsp;"_$$^%W1DICT("WHENSENDFAX")_"</td>"
 N WD S WD=150 I $$SMALL S WD=450
 W "<td>&nbsp;"
  W "<select id=""FAXALW"" >",!
    W "<option value=""0"" "_$S($$FAXALW^W3R(CODE):"",1:" selected=""selected"" ")_" >"_$$^%W1DICT("IFERRORONLY")_"</option>"
    W "<option value=""1"" "_$S($$FAXALW^W3R(CODE):" selected=""selected"" ",1:"")_">"_$$^%W1DICT("ALWAYS")_"</option>"
  W "</select>",!
 W "</td>"
 Q
 ;
KKIND ;
 I $G(PRZ)'="SRC" D
 .W "<td valign=""top"" align=""center"">",!
 .S OPID="TblKitch" D OPINTBL
 ;
 I $G(PRZ)="SRC" D
 .W "<td align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
 . W $$^%W1DICT("KITCHENKIND")
 .W "</td>"
 .W "<td>&nbsp;"
 .W " <select id=""TXKITCH"" "_$$FONTSIZE_" >",!
 ;
 D SELKIND
 ;
 I $G(PRZ)'="SRC" W "</td></tr></table></td>",!
 ;
 I $G(PRZ)="SRC" W "</select></td>",!
 Q
 ;
SELKIND ;
 I $G(PRZ)="SRC" W "<option selected=""selected"" value=""ALL"" >"_$$^%W1DICT("ALLKITCHENKINDS")_"</option>",!
 N N,I S N="",I=0 F  S N=$O(^[$$^W3MAIN]W3KKIND($$LNG,N)) Q:N=""  D
 .N A S A=$$SPA^%L1FRM($G(^(N))) S I=I+1
 .I $G(PRZ)'="SRC" D
 ..W "<tr><td><label for=""CHKITCH"_I_""" id=""TXKITCH"_I_""">"_$$H2U^%L1FRM(A)_"</label></td>",!
 ..W "<td><input type=""checkbox"" id=""CHKITCH"_I_""""
 ..I $G(CODE),A'="",$$KKIND^W3R(CODE)[A W " checked=""checked"""
 ..W " ></td></tr>",!
 .I $G(PRZ)="SRC" D
 ..S A=$$H2U^%L1FRM(A)
 ..W "<option value="""_A_""">"_A_"</option>",!
 Q
 ;
COND W "<td valign=""top"" align=""center"">",!
 S OPID="TblCond" D OPINTBL
 D SELCOND
 W "</table>",!
 W "</td>",!
 Q
 ;
SELCOND ;
 N N S N="",I=-1 F  S N=$O(^[$$^W3MAIN]W3COND(N)) Q:N=""  D
 .Q:'$D(^[$$^W3MAIN]W3COND(N,$$LNG))
 .N A S A=$$SPA^%L1FRM($G(^[$$^W3MAIN]W3COND(N,$$LNG))),I=I+1
 .W "<tr height=""20px""><td><label for=""CHCOND"_I_""" id=""TXCOND"_I_""">"_$$H2U^%L1FRM(A)_"</label></td>",!
 .W "<td><input type=""checkbox"" id=""CHCOND"_I_""""
 .I $G(CODE),$$COND^W3R(CODE)[A W " checked=""checked"""
 .W " ><td></tr>",!
 Q
 ;
KASHER Q:$$LNG'="H"
 D TD W "&nbsp;"_$$^%W1DICT("KINDOFKASHER")_"</td><td>"
 W "&nbsp;&nbsp;"
 W "<select id=""KASHER"" "_$$FONTSIZE_" >",!
 I $G(PRZ)="SRC" W "<option selected=""selected"" value=""ALL"">"_$$^%W1DICT("ALLKINDSOFKASHRUT")_"</option>",!
 N N S N="" F  S N=$O(^[$$^W3MAIN]W3KASHER($$LNG,N)) Q:N=""  D
 .N A S A=$$H2U^%L1FRM($G(^(N)))
 .W "<option value="""_A_""""
 .I $G(CODE),$$H2U^%L1FRM($$KASHER^W3R(CODE))=A W " selected=""selected"""
 .W " >"_A_"</option>",!
 W "</select>",!
 W "</td>",!
 Q
 ;
MAHIR ;
 D TD W "&nbsp;"_$$^%W1DICT("AVERAGEPRICE")_"</td>"
 W "<td>" I $G(%ARG("PR800"))'=1 W "&nbsp;&nbsp;"
 W "<select id=""PRICE"" "_$$FONTSIZE_" >",!
 D COUNTRY
 I $G(PRZ)="SRC" W "<option value=""ALL"">"_$$^%W1DICT("ALLPRICES")_"</option>",!
 N N S N="" F  S N=$O(^[$$^W3MAIN]W3PRICE(COUNTRY,N)) Q:N=""  D
 .N A S A=$$SPA^%L1FRM($G(^(N)))
 .W "<option value="""_A_""""
 .I $G(CODE),$$PRICE^W3R(CODE)=A W " selected=""selected"""
 .W " >"_A_"</option>",!
 W "</select>",!
 W "</td>",!
 Q
 ;
MINIMUM ;
 D TD W "&nbsp;"_$$^%W1DICT("MHMIN")_"</td>"
 W "<td>&nbsp;&nbsp;"
 D INP("MHMIN",70,5,"LTR")
 Q
 ;
GOOGLE ;
 D TD W "&nbsp;"_$$^%W1DICT("GOOGLECODE")_"</td>"
 W "<td>&nbsp;&nbsp;"
 D INP("GOOGLE",160,15,"LTR")
 Q
 ;
HACHANA D TD W "&nbsp;"_$S($$MM^W4PRM:$$ZW,1:"")_$$^%W1DICT("HACHANA")_"</td>",!
 N WD S WD=50 I $$SMALL S WD=150
 W "<td>&nbsp;&nbsp;" D INP("HACHANA",50,5,"LTR")
 Q
 ;
ND(NOM) ;
 W "<td style=""color:"_$S(NOM=7!(NOM=1&($$LNG'="H")):"red",1:"blue")_";font-size:"_$$^W3FSZ(12)_""" >" W $$^%W1DICT("DAY"_NOM) W "</td>"
 W "<td>"
 K %W1DAT
 S %W1DAT("TDTM")="",%W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 D
 I NOM=7 S %W1DAT("SHBT")=""
 D TIMENEW^%W1DAT("DAY"_NOM_"F",$$RKV("DAY"_NOM_"F"),$$^%W1DICT("FROM"))
 K %W1DAT("SHBT")
 W "</td>"
 W "<td>"
 S %W1DAT("TDTM")="",%W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 ;;S %W1DAT("UNTIL")=""
 D TIMENEW^%W1DAT("DAY"_NOM_"U",$$RKV("DAY"_NOM_"U"),$$^%W1DICT("UNTIL"))
 W "</td>"
 Q
 ;
 ;
ZW(STAM) I '$D(NOZW) Q "<span style=""color:red"">*</span>"
 Q " "
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
  I $$^W4SMALL W "font-size:"_$$FSZ_";"
  I $D(TDCOLOR) W "color:"_TDCOLOR
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR,TDCOLOR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN",DIR'="D" D
 .D COUNTRY
 .W "<input type="""_$S(RKV="PSW":"password",1:"text")_""" size="""_$J(0.9*SIZE,0,0)_""" maxlength="""_SIZE_""""
 .I '$$^W4SMALL W " onFocus=""TestCode()"" "
 .I RKV'="PSW" W " style=""width:"_WD_"px"
 .I RKV="PSW" W " style=""width:120px"
 .I $$^%W1DIR="RTL",RKV'="EMAIL",RKV'="SITE" W ";text-align:right"
 .I $$^W4SMALL W ";font-size:"_$$FSZ
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .I RKV'="PSW" D
 ..I DIR="LTR"&(RKV'="EMAIL")&(RKV'="SITE") W " onClick=""this.select()"" "
 ..
 ..I RKV="STREET" D
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET(COUNTRY))>9 W " onKeyUp=""FindStreet(this)"""
 ..
 ..I RKV="NAME" D
 ...I '$$^W4SMALL W "onChange=""TestName(this)"""
 ..
 ..W " value="""_RKVL_""""
 .
 .I RKV="PSW" D
 ..W " value="""_RKVL_""""
 ..W " onKeyUp=""NumberOnly(event,'PSW')"""
 ..W " onClick=""this.select()"""
 ..W " /><br /><br />",!
 ..
 ..W "<input type=""password"" maxlength="""_SIZE_""""
 ..W " style=""width:120"
 ..I $$^%W1DIR="RTL" W ";text-align:right"
 ..W """"
 ..W " value="""_RKVL_""""
 ..W " dir="""_DIR_""" name=""PSW"" id=""PSW1"""
 ..W " onKeyUp=""NumberOnly(event,'PSW1')"""
 ..W " onClick=""this.select()"""
 .
 .I RKV="EMAIL"!(RKV="ENGLISHNAME") D
 ..W " onKeyUp=""EnglishOnly(event,'"_RKV_"')"""
 .
 .W " />",!
 ;
 I $G(PRM)="IN",DIR="D" D
 .I '$G(CODE) D ^%W1DAT("YOMH","-","") Q
 .D ^%W1DAT("YOMH",$$RKV(RKV),"") Q
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 W "</td>",!
 Q
 ;
 ;
INPC(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW S CODE=$TR(CODE,"-","")
 .I 'CODE,$G(%ARG("MSD")) S CODE=%ARG("MSD")
 .W "<input type=""text"" maxlength="""_SIZE_""" "
 .
 .W "style=""width:"_WD_"px;text-align:right"" "
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event,'"_$G(%ARG("MSDR"))_"')"" ",!
 .W " onFocus=""this.select();noIfrHide=0;ifrHide('MUST')"" "
 .I RKV="CODE" W " onChange=""FindRest('CODE','"_$G(%ARG("MSDR"))_"')"" ",!
 .W " />"
 .I $G(%ARG("MSDR"))!$$CALLCENTER^W4PRM D
 ..W "&nbsp;&nbsp;<img id=""filter"" src=""w3filter.jpg"" height="""_$$^W4KF(22)_"px"" width="""_$$^W4KF(22)_"px"" "
 ..W " "_$$^W4TOUCH_"=""FindRest('CODE','"_$G(%ARG("MSDR"))_"')"" >",!
 ..Q
 ..
 ..W "<br /><br />"
 ..W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_"px"""
 ..W " dir="""_$$^%W1DIR_""" name=""SEARCH"" id=""SEARCH"""
 ..W " onKeyUp=""FindRest(this,'"_$G(%ARG("MSDR"))_"')"""
 ..;;W " onFocus=""noIfrHide=1;FindRest(this,'"_$G(%ARG("MSDR"))_"')"""
 ..W " />"
 ..W "<br />",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 W "</td>",!
 Q
 ;
 ;
SELDAY ;
 S OPID="TblDay" D OPTABLE
 W "<tr>",!
 ;
 I $$LNG="H" D
 .D ND(1),ND(4)
 .W "</tr>",!,"<tr>"
 .D ND(2),ND(5)
 .W "</tr>",!,"<tr>"
 .D ND(3),ND(6)
 ;
 I $$LNG'="H" D
 .D ND(2),ND(5)
 .W "</tr>",!,"<tr>"
 .D ND(3),ND(6)
 .W "</tr>",!,"<tr>"
 .D ND(4),ND(7)
 ;
 W "</tr>",!,"<tr>"
 W "<td>&nbsp;</td>"
 W "<td>&nbsp;</td>"
 W "<td>&nbsp;</td>"
 D ND($S($$LNG="H":7,1:1))
 W "</tr>",!
 ;
 W "<tr>",!
  W "<td colspan=""7"">"
   W "<table dir="""_$$^%W1DIR_""" align=""center"">"
    W "<tr>"
    I $$LNG="H" D
    .W "<td>"_$$^%W1DICT("COPYFROM")_"</td>"
    .N J F J=1:1:7 W "<td style=""color:blue"">" W $$^%W1DICT("DAY"_J) W "</td>",!
    .W "<td>"_$$^%W1DICT("COPYTO")_"</td>"
    .N J F J=1:1:7 W "<td style=""color:blue"">" W $$^%W1DICT("DAY"_J) W "</td>",!
    I $$LNG'="H" D
    .W "<td>"_$$^%W1DICT("COPYFROM")_"</td>"
    .N J F J=2:1:7,1 W "<td>" W $$^%W1DICT("DAY"_J) W "</td>",!
    .W "<td>"_$$^%W1DICT("COPYTO")_"</td>"
    .N J F J=2:1:7,1 W "<td>" W $$^%W1DICT("DAY"_J) W "</td>",!
    W "</tr>",!
    W "<tr>"
    I $$LNG="H" D
    .W "<td>&nbsp;</td>"
    .N J F J=1:1:7 W "<td><input type=""radio"" name=""fromhd"" id=""fromnd"_J_"""></td>",!
    .W "<td>&nbsp;</td>"
    .N J F J=1:1:7 W "<td><input type=""checkbox"" name=""tond"" id=""tond"_J_"""></td>",!
    I $$LNG'="H" D
    .W "<td>&nbsp;</td>"
    .N J F J=2:1:7,1 W "<td><input type=""radio"" name=""fromhd"" id=""fromnd"_J_"""></td>",!
    .W "<td>&nbsp;</td>"
    .N J F J=2:1:7,1 W "<td><input type=""checkbox"" name=""tond"" id=""tond"_J_"""></td>",!
    W "<td><input type=""button"" value="""_$$^%W1DICT("COPY")_""" onClick=""CopyND()""> </td>",!
    W "</tr>",!
   W "</table>",!
  W "</td>",!
 W "</tr>",!
 W "</table>",!
 Q
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D^W3R(CODE) Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I $G(PRNEW)=1 Q ""
 I '$$D^W3R(CODE),$G(PRNEW)'=2 Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="CODUSA" Q $$CODUSA^W3R(CODE)
 I FLD="NMB" Q $$TEL^W3R(CODE)
 I FLD="NAME" Q $$H2U^%L1FRM($$MSD^W3R(CODE))
 I FLD="ENGLISHNAME" Q $$H2U^%L1FRM($$ENGLISHNAME^W3R(CODE))
 I FLD="PSW" Q $$PSW^W3R(CODE)
 I FLD="PELE" Q $$PELE^W3R(CODE)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV^W3R(CODE))
 I FLD="AZOR" Q $$H2U^%L1FRM($$AZOR^W3R(CODE))
 I FLD="HOME" Q $$BAIT^W3R(CODE)
 I FLD="CITY" Q $$H2U^%L1FRM($$IR^W3R(CODE))
 I FLD="DESCR" Q $$H2U^%L1FRM($$DESCR^W3R(CODE))
 I FLD="EMAIL" Q $$EMAIL^W3R(CODE)
 I FLD="SITE" Q $$SITE^W3R(CODE)
 I FLD="FAX" Q $$FAX^W3R(CODE)
 I FLD="ZIC" Q $$ZIC^W3R(CODE)
 I FLD="FAXCOPY" Q $$FAXCOPY^W3R(CODE)
 I FLD="HACHANA" Q $$HACHANA^W3R(CODE)
 I FLD="AMALA" Q $$AMALA^W3R(CODE)
 I FLD="AMALACA" Q $$AMALACA^W3R(CODE)
 I FLD="VIDUHZ" Q $$VIDUHZ^W3R(CODE)
 I FLD="FAXKIND" Q $$FAXKIND^W3R(CODE)
 I FLD="MAKOR" Q $$MAKOR^W3R(CODE)
 ;
 I FLD="KASHER" Q $$KASHER^W3R(CODE)
 ;
 I FLD="PRICE" Q $$PRICE^W3R(CODE)
 ;
 I FLD="MHMIN" Q $$MHMIN1^W3SP
 ;
 I FLD="GOOGLE" Q $$GOOGLE^W3R(CODE)
 ;
 I FLD="KKIND" Q $$KKIND^W3R(CODE)
 ;
 I FLD="COND" Q $$COND^W3R(CODE)
 ;
 I FLD="DAY1F" Q $$DAY1F^W3R(CODE)
 I FLD="DAY2F" Q $$DAY2F^W3R(CODE)
 I FLD="DAY3F" Q $$DAY3F^W3R(CODE)
 I FLD="DAY4F" Q $$DAY4F^W3R(CODE)
 I FLD="DAY5F" Q $$DAY5F^W3R(CODE)
 I FLD="DAY6F" Q $$DAY6F^W3R(CODE)
 I FLD="DAY7F" Q $$DAY7F^W3R(CODE)
 I FLD="DAY1U" Q $$DAY1U^W3R(CODE)
 I FLD="DAY2U" Q $$DAY2U^W3R(CODE)
 I FLD="DAY3U" Q $$DAY3U^W3R(CODE)
 I FLD="DAY4U" Q $$DAY4U^W3R(CODE)
 I FLD="DAY5U" Q $$DAY5U^W3R(CODE)
 I FLD="DAY6U" Q $$DAY6U^W3R(CODE)
 I FLD="DAY7U" Q $$DAY7U^W3R(CODE)
 Q ""
 ;
 ;
INPCT(RKV,WD,SIZE,DIR) ;
 N SEL S SEL=""
 D COUNTRY
 ;
 D PUT^%W3DEB("W3MSDRG","INPCT-RKV=RKV& INPCT-WD=WD& INPCT-SIZE=SIZE& INPCT-DIR=DIR")
 ;
 D
 .S GLIR="^[$$^W3MAIN]P1IR" ;; WAS P1IRC(COUNTRY)"
 .I $D(@GLIR)>9 D
 ..W "<select"
 ..W " name="""_RKV_""" id="""_RKV_""""
 ..W " tabindex=""4"""
 ..W $$FONTSIZE
 ..W " onChange=""ChangeCity()"" >",!
 ..I $G(PRZ)="SRC" W "<option selected=""selected"" value=""ALL"">"_$$^%W1DICT("ALLCITIES")_"</option>",!
 ..;;W "<option>&nbsp;</option>",!
 ..N N S N="" F  S N=$O(@GLIR@(N)) Q:N=""  D
 ...N IR S IR=$G(^(N))
 ...N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$H2U^%L1FRM(IR)
 ...W "<option value='"_IRI_"'"
 ...I $G(CODE),$TR($$IR^W3R(CODE),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"""
 ...W " >"_IRI_"</option>",!
 ..W "</select>",!
 .
 .I '$D(@GLIR) D
 ..W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_"px;"
 ..W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 ..W " dir="""_$$^%W1DIR_""""
 ..W " name="""_RKV_""" id="""_RKV_""" value="""_$$RKV(RKV)_""""
 ..W " tabindex=""4"""
 ..W " onChange=""ChangeCity()""",!
 .;;W "&nbsp;"
 ;
 W "&nbsp;</td>",!
 Q
 ;
LNG(STAM) ;
 S:'$D(%W1LNG) %W1LNG="H"
 N COUNTRY D COUNTRY
 Q %W1LNG
 ;
COUNTRY ;
 I $L($G(%ARG("MSDR"))) D  Q
 .S MSDR=$G(%ARG("MSDR")) Q:MSDR=""
 .S COUNTRY=$$COUNTRY^W3MSDR(MSDR)
 .I COUNTRY="" S COUNTRY="IS"
 .S %W1LNG=$$LNG^W3MSDR(MSDR)
 .I %W1LNG="" S %W1LNG=$S($D(%ARG("LNG")):%ARG("LNG"),1:"H")
 ;
 I $L($G(%ARG("COUNTRY"))) D  Q
 .S COUNTRY=%ARG("COUNTRY")
 .I COUNTRY="" S COUNTRY="IS"
 .S %W1LNG=$$LNG^W3CNTRY(COUNTRY)
 .I %W1LNG="" S %W1LNG=$S($D(%ARG("LNG")):%ARG("LNG"),1:"H")
 ;
 S:'$D(COUNTRY) COUNTRY="IS",%W1LNG="H" Q:'$G(CODE)
 S COUNTRY=$$COUNTRY^W3R(CODE)
 S %W1LNG=$$LNG^W3R(CODE)
 Q
 ;
DEFAZOR(STAM) ;
 N LNG S LNG=$$LNG I LNG="H" Q LNG
 I $G(%ARG("MSDR")) Q %ARG("MSDR")
 I '$G(CODE) Q 0
 N N,OK S OK=0 S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(N)) Q:N=""  D  Q:OK
 .I $D(^(N,CODE)) S OK=N
 Q OK
 ;
TESTNAME(PRM) ;
 N MSDR,CODE,NAME
 S MSDR=$P(PRM,";")
 S CODE=$P(PRM,";",2)
 S NAME=$P(PRM,";",3,24)
 S NAME=$$INVH^%L1FRM(NAME)
 D PUT^%W3DEB("W3MSDRG-TESTNAME","MSDR=MSDR & NAME= NAME")
 N ER S ER=0 I '$G(MSDR) Q 0
 N N S N="" F  S N=$O(@$$^W4GL("W3MSDR")@(MSDR,N)) Q:N=""  D
 .I N'=CODE,$$MSD^W3R(N)=$$SPA^%L1FRM(NAME) S ER=N
 Q ER
 ;
UCI(CODE) ;
 N MSD S MSD=CODE
 I '$G(CODE),$G(%ARG("MSD")) S MSD=%ARG("MSD")
 I 'MSD S MSD=$$GET^%W1PRM("MSD")
 I '$D(^[$$^W3MAIN]UCI(MSD)) Q 0
 Q 1
 ;
FONTSIZE(STAM) ;
 I '$$^W4SMALL Q ""
 Q " style=""font-size:"_$$^W3FSZ(16)_""" "
 ;
FSZ(STAM) ;
 I $$^W4SMALL Q $$^W3FSZ(24)
 Q $$^W3FSZ(12)
 ;
SMALL(STAM) ;
 I $$^W4SMALL,'$$^W4SIMUL Q 1
 Q 0
 ;
POLYGON(STAM) ; 
 I $$MM^W4PRM Q +$G(^[$$^W3MAIN]P1PRM("POLYGON"))
 Q $$POLYGON^W4PRM 
 ;
ZIC ; 
 D TD W "&nbsp;"_$$^%W1DICT("SENDZIC")_"</td>"
 W "<td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ZIC"" "
  W $S($$RKV("ZIC"):"checked=""checked"" ",1:"")
  W " >"
 W "</td>"
 Q 
 ; 
FAXCOPY ; 
 D TD W "&nbsp;"_$$^%W1DICT("FAXCOPY")_"</td>"
 W "<td>&nbsp;&nbsp;"
  W "<select id=""FAXCOPY"" >",!
  D
  .N I F I=0:1:2 D
  ..W "<option value="""_I_""" "_$$SELOPT(I,"FAXCOPY")_" >"_I_"</option>",!
  W "</select>",!
 W "</td>"
 Q 
 ; 
SELOPT(I,RKV) ;
 N VL S VL=$$RKV(RKV)
 I VL=I Q " selected=""selected"" "
 Q ""
 ;
AMALA ; 
 D TD W "&nbsp;"_$$^%W1DICT("AMALA")_"</td>"
 W "<td>&nbsp;&nbsp;"
  W "<input id=""AMALA"" size=""6"" maxlength=""7"" value="""_$$RKV("AMALA")_""" onFocus=""this.select()"" />",!
  ;;D
  .W "<select id=""AMALA"" >",!
  .D
  ..N I F I=0:1:40 D
  ...W "<option value="""_I_""" "_$$SELOPT(I,"AMALA")_" >"_I_"</option>",!
  .W "</select>",!
 W "</td>"
 Q 
 ; 
AMALACA ; 
 D TD W "&nbsp;"_$$^%W1DICT("AMALACA")_"</td>"
 W "<td>&nbsp;&nbsp;"
  W "<select id=""AMALACA"" >",!
  D
  .N I F I=0:.25:5 D
  ..W "<option value="""_I_""" "_$$SELOPT(I,"AMALACA")_" >"_$J(I,2,2)_"</option>",!
  W "</select>",!
 W "</td>"
 Q 
 ; 
FAXKIND ; 
 D TD W "&nbsp;"_$$^%W1DICT("FAXKIND")_"</td>"
 W "<td>&nbsp;&nbsp;"
  W "<select id=""FAXKIND"" >",!
  D
  .;;W "<option value=""0"" "_$$SELOPT(0,"VIDUHZ")_" >"_$$^%W1DICT("NOVIDU")_"</option>",!
  .W "<option value=""1"" "_$$SELOPT(1,"FAXKIND")_" >"_$$^%W1DICT("FAXAUTO")_"</option>",!
  .W "<option value=""2"" "_$$SELOPT(2,"FAXKIND")_" >"_$$^%W1DICT("FAXYAD")_"</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
MAKOR ; 
 D TD W "&nbsp;"_$$^%W1DICT("ORDERSMAKOR")_"</td>"
 W "<td>&nbsp;&nbsp;"
  W "<select id=""MAKOR"" >",!
  D
  .W "<option value=""0"" "_$$SELOPT(0,"MAKOR")_" >INTERNET</option>",!
  .W "<option value=""1"" "_$$SELOPT(1,"MAKOR")_" >CALL-CENTER</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
DIVBTN ; 
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<table><tr><td>",!
 D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('0')","color:green","wh,22")
 W "</td><td>",!
 D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back('"_PRNEW_"')","color:red","wh,22")
 W "</td></tr></table>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSDSET
W3MSDSET(PRM) ; [ 17.06.26 10:52 ] [ 06.08.25 13:41 ] [ 01.08.21 14:30 ] 
 N MC,I,%W1LNG,MSDR
 D LNG
 S MC="CODE~PSW~NAME!H~ENGLISHNAME~NMB~PELE~EMAIL~FAX~SITE"
 S MC=MC_"~MAP~COORD~CITY!H~STREET!H~HOME"
 S MC=MC_"~KASHER!H~PRICE"
 S MC=MC_"~MHMIN~GOOGLE~FAXALW~HACHANA"
 S MC=MC_"~ZIC~FAXCOPY~AMALA~AMALACA~FAXKIND~MAKOR~CODUSA"
 ;
 ;;S ^AA("WMSDSET","PRM")=PRM
 ;
 D SETFLD(MC,PRM)
 ;
 Q:$G(CODE)=""
 ;
 S MSDR="" I CODE[";" S MSDR=$P(CODE,";",2),CODE=$P(CODE,";")
 ;
 S CODE=$TR(CODE," -","")
 ;
PUT21 N RZD S RZD="~" Q:NAME=""  Q:CODE=""
 N ST S ST="MSD="_NAME_"<>ENGLISHNAME="_ENGLISHNAME
 S ST=ST_"<>TEL="_NMB_"<>PELE="_$G(PELE)
 S ST=ST_"<>EMAIL="_EMAIL_"<>FAX="_FAX
 S ST=ST_"<>SITE="_SITE_"<>MAP="_MAP_"<>COORD="_COORD
 S ST=ST_"<>IR="_CITY_"<>STREET="_STREET_"<>MIKUD="_$G(MIKUD)
 S ST=ST_"<>BAIT="_HOME
 S ST=ST_"<>KASHER="_KASHER_"<>PRICE="_$G(PRICE)
 S ST=ST_"<>MHMIN="_MHMIN_"<>GOOGLE="_$G(GOOGLE)
 S ST=ST_"<>PSW="_$G(PSW)
 S ST=ST_"<>FAXALW="_$G(FAXALW)
 S ST=ST_"<>HACHANA="_$G(HACHANA)
 S ST=ST_"<>ZIC="_$G(ZIC)
 S ST=ST_"<>FAXCOPY="_$G(FAXCOPY)
 S ST=ST_"<>AMALA="_$G(AMALA)
 S ST=ST_"<>AMALACA="_$G(AMALACA)
 S ST=ST_"<>FAXKIND="_$G(FAXKIND)
 S ST=ST_"<>MAKOR="_$G(MAKOR)
 S ST=ST_"<>CODUSA="_$G(CODUSA)
 ;
 I '$$D^W3R(CODE) D
 .S DATPTH=$$^%L1DC($H,1) D PUT2^W3R(CODE,"DATPTH="_DATPTH)
 ;
 D PUT^%W3DEB("W3MSDRG","ST=ST")
 ;
 D PUT2^W3R(CODE,ST)
 ;
 M ^[$$^W3MAIN]W3MSDGIB(CODE)=^[$$^W3MAIN]W3MSD(CODE)
 I MSDR,'$D(^[$$^W3MAIN]W3MSDR(MSDR,CODE)) D
 .S $P(^[$$^W3MAIN]W3MSDR(MSDR,CODE),"\")=1
 ;
 I $$SNDY^W4PRM D
 .D ^WQREST(CODE)
 Q
 ;
 ;
TVDAY(PRM) ;
 N %W1LNG D LNG
 ;;S ^AA("W3MSDSET-TVDAY","PRM")=PRM
 D PUT^%W3DEB("W3MSDSET-TVDAY","PRM=PRM")
 I $G(PRM)="" Q 0
 N CODE,PSW,NOK
 S CODE=$P(PRM,"~") I 'CODE Q 0
 N ST S ST=""
 N I,ST S ST=""
 F I=1:1:7 D
 .N DF,DU
 .S DF="DAY"_I_"F"
 .S DU="DAY"_I_"U"
 .S @DF=$P($P(PRM,"~",I+1),"-")
 .S @DU=$P($P(PRM,"~",I+1),"-",2)
 .S ST=ST_DF_"="_@DF_"<>"
 .S ST=ST_DU_"="_@DU_"<>"
 ;
 D PUT2^W3R(CODE,$E(ST,1,$L(ST)-2))
 Q 1
 ;
TVKK(PRM) ;
 N %W1LNG D LNG
 D PUT^%W3DEB("W3MSDSET-TVKK","PRM=PRM")
 I $G(PRM)="" Q 0
 N CODE,PSW,NOK
 S CODE=$P(PRM,";") I 'CODE Q 0
 N ST S ST=""
 N I F I=2:1:$L(PRM,";") D
 .S FLD=$P(PRM,";",I) S FLD=$$INVH^%L1FRM(FLD)
 .S ST=ST_FLD_";"
 S ^[$$^W3MAIN]W3MSD(CODE,2)=$P(ST,";",1,$L(ST,";")-1)
 Q 1
 ;
TVCOND(PRM) ;
 N %W1LNG D LNG
 D PUT^%W3DEB("W3MSDSET-TVCOND","PRM=PRM")
 I $G(PRM)="" Q 0
 N CODE,PSW,NOK
 S CODE=$P(PRM,";") I 'CODE Q 0
 N ST S ST=""
 N I F I=2:1:$L(PRM,";") D
 .S FLD=$P(PRM,";",I) S FLD=$$INVH^%L1FRM(FLD)
 .S ST=ST_FLD_";"
 S ^[$$^W3MAIN]W3MSD(CODE,3)=$P(ST,";",1,$L(ST,";")-1)
 Q 1
 ;
DESCR(PRM) ;
 N %W1LNG D LNG
 D PUT^%W3DEB("W3MSDSET-DESCR","PRM=PRM")
 I $G(PRM)="" Q 0
 N CODE,PSW,NOK
 S CODE=$P(PRM,";") I 'CODE Q 0
 N ST S ST=$P(PRM,";",2,200)
 S ^[$$^W3MAIN]W3MSD(CODE,4)=$$INVH^%L1FRM(ST)
 Q 1
 ;
MSG(PRM) ;
 N %W1LNG D LNG
 D PUT^%W3DEB("W3MSDSET-MSG","PRM=PRM")
 I $G(PRM)="" Q 0
 N CODE,PSW,NOK
 S CODE=$P(PRM,";") I 'CODE Q 0
 N ST S ST=$P(PRM,";",2,200)
 S ^[$$^W3MAIN]W3MSD(CODE,5)=$$INVH^%L1FRM(ST)
 Q 1
 ;
SETFLD(MC,PRM)
 F I=1:1:$L(MC,"~") D
 .N FLD,RG,VL
 .S FLD=$$CLEAR^%L1FRM($P(MC,"~",I))
 .S RG=$P(FLD,"!",2),FLD=$P(FLD,"!")
 .S VL=$TR($P(PRM,"~",I),$C(160)_"?","")
 .I RG="H"&($$^%W1DIR="RTL") S VL=$$INVH^%L1FRM(VL)
 .N A,A1,J S A=$$SPA^%L1FRM(VL)
 .S A1="" F J=1:1:$L(A) D
 ..N SMB S SMB=$E(A,J)
 ..I $A(SMB)<32!($A(SMB)>122) Q
 ..S A1=A1_SMB
 .S @FLD=A1
 Q
LNG ;
 N LNG S LNG=$$GET^%W1PRM("LNG")
 I LNG'["UNDEF" S %W1LNG=LNG
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSDSP
W3MSDSP ; [ 26.06.07 08:28 ] [ 14.06.07 18:51 ] [
 S GLOB="W3MSD"
 D I^%L1TABL
 Q

W3MSG
W3MSG(PRM) ; [ 29.09.26 15:32 ] [ 24.06.26 12:59 ] [ 17.06.26 10:52 ] 
 D PUT^%W3DEB("W3MSG","PRM=PRM")
 ;;S ^AA("W3MSG","PRM")=PRM
 N LNG,%W1LNG S LNG=$$GET^%W1PRM("LNG") I LNG'["UNDEF" S %W1LNG=LNG
 N FLD,P,P1 S FLD=$P(PRM,"~")
 S FLD=$E(FLD,1,225)
 S P=$P(PRM,"~",2)
 I $G(FLD)="" Q "***"
 ;
 I $E(FLD)="!" Q $E(FLD,2,255)
 ;
 I '$D(^[$$^W3MAIN]W1DICT(FLD)) Q "*** "_FLD
 ;
 S P1=""
 N DLM S DLM=";"
 I P["<>" S DLM="<>"
 ;
 N I F I=1:1:$L(P,DLM) D
 .N PR S PR=$P(P,DLM,I)
 .I PR["!D",$L(PR)>2 S PR=$G(^[$$^W3MAIN]W1DICT($P(PR,"!D"),$$^%W1LNG))
 .S P1=P1_PR_"<>"
 ;
 S P1=$E(P1,1,$L(P1)-2)
 ;
 ;;S ^AA("W3MSG","FLD")=FLD
 ;;S ^AA("W3MSG","P1")=P1
 Q $$^%W1DICT(FLD,P1)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSGIDK
W3MSGIDK ; [ 29.12.21 07:06 ] [ 26.04.09 09:55 ] [ 25.04.09 19:59 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 W "<div align=""center"" >",!
 W "<table id=""TblMsg"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""90%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""7%"">&nbsp;</th>"
 W "<th width=""78%"">"_$$^%W1DICT("MESSAGETEXT")_"</th>"
 W "<th width=""15%"">"_$$^%W1DICT("SHOWUNTILDATE")_"</th>"
 W "</tr>",!
 N N,I D MSD,MSG
 S I=0
 I $D(@MSG)<10 D
 .W "<tr>" S I=I+1
 .
 .W "<td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 .W " onClick=""InsertRow('"_I_"')""> + </span><br /><span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" onClick=""DeleteRow('"_I_"')"" > - </span></td>"
 .
 .W "<td align=""center"">&nbsp;<input type=""text"" size=""80"" maxlength=""80"" value="""" onChange=""OnChangeMsg(this.value,'"_I_"')"" onKeyPress=""OnKeyPressNm('"_I_"',event)"" />&nbsp;</td>"
 .
 .S %W1DAT("CHANGE")="ChangeDat(this)"
 .W "<td align=""center"" dir=""LTR"" onClick=""SetCur('"_I_"')"" />"_$$STDT^%W1DAT("","","","","","")_"</td>"
 .
 .W "</tr>",!
 ;
 D TMPMSG K @TMPMSG
 S N="" F  S N=$O(@MSG@(N)) Q:N=""  D
 .W "<tr>" S I=I+1 S @TMPMSG@(I)=$G(@MSG@(N)) I $G(@MSG@(N,"DT"))?5N D
 ..S @TMPMSG@(I,"DT")=$TR($$^%L1DC(@MSG@(N,"DT"),1),"./","")
 .
 .W "<td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 .W " onClick=""InsertRow('"_I_"')""> + </span><br /><span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" onClick=""DeleteRow('"_I_"')"" > - </span></td>"
 .
 .W "<td align=""center"">&nbsp;<input type=""text"" size=""80"" maxlength=""80"" value="""_$$H2U^%L1FRM($G(@TMPMSG@(I)))_""" onChange=""OnChangeMsg(this.value,'"_I_"')"" onKeyPress=""OnKeyPressNm('"_I_"',event)"" />&nbsp;</td>"
 .
 .N DAT S DAT=$G(@TMPMSG@(I,"DT")) S:'DAT DAT=""
 .S %W1DAT("CHANGE")="ChangeDat(this)"
 .W "<td align=""center"" dir=""LTR"" onClick=""SetCur('"_I_"')"" />"_$$STDT^%W1DAT("","",$e(DAT,1,2),$E(DAT,3,4),$E(DAT,5,6))_"</td>"
 .
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE ;
 N CD,NM,MSD,MSG D MSD,MSG
 ;
 K @MSG D TMPMSG
 N N S N="",I=0
 F  S N=$O(@TMPMSG@(N)) Q:N=""  I N?1N.N D
 .N A S A=$G(^(N))
 .I $D(@TMPMSG@(N,"DEL")) K @MSG@(N) Q
 .I A?.P Q
 .S I=I+1
 .S @MSG@(I)=A
 .N DAT S DAT=$G(@TMPMSG@(N,"DT"))
 .I DAT?6N,$E(DAT,1,2)<32&($E(DAT,1,2)>0)&($E(DAT,3,4)>0)&($E(DAT,3,4)<13)&($E(DAT,5,6)<21)&($E(DAT,5,6)>0) S @MSG@(I,"DT")=$$^%L1DC(DAT,3)
 ;
 K @TMPMSG
 Q
 ;
DELROW(CD) ;
 Q:'$G(JB)
 N MSD,MSG D MSD,MSG
 N TMPMSG D TMPMSG
 I $D(@TMPMSG@(CD,"DEL")) K ^("DEL") Q
 S @TMPMSG@(CD,"DEL")=""
 Q
 ;
MSG S MSG="^[$$^W3MAIN]W3SALEMSG(MSD)"
 Q
 ;
MSD S MSD=$G(%ARG("MSD"))
 I MSD="" S MSD=$$GET^%W1PRM("MSD")
 Q
 ;
TMPMSG S TMPMSG="^[$$^W3MAIN]TMPMSG(JB)"
 Q
 ;
SETMSG(PRM) ;
 S CD=$P(PRM,";")
 S VL=$P(PRM,";",2)
 Q:CD=""
 N TMPMSG D TMPMSG
 S @TMPMSG@(CD)=$$INVH^%L1FRM($$CNWEB^%L1FRM(VL))
 D SETCUR(CD)
 Q
 ;
SETDATE(DMY,VL) ;
 N TMPMSG D TMPMSG
 S CD=$G(@TMPMSG@("CUR"))
 Q:CD=""
 I DMY="DD" S @TMPMSG@(CD,"DT")=VL_$$DT(CD,3,4)_$$DT(CD,5,6)
 I DMY="MM" S @TMPMSG@(CD,"DT")=$$DT(CD,1,2)_VL_$$DT(CD,5,6)
 I DMY="YY" S @TMPMSG@(CD,"DT")=$$DT(CD,1,2)_$$DT(CD,3,4)_VL
 Q
 ;
DT(CD,I1,I2) ;
 N A
 S A=$E($G(@TMPMSG@(CD,"DT")),I1,I2)
 Q $TR($J(A,2)," ",0)
 ;
SETCUR(CD) ;
 N TMPMSG D TMPMSG
 S @TMPMSG@("CUR")=CD
 Q
 ;
NEWLINE(SH) ;
 N TMPMSG D TMPMSG
 S LAST=$O(@TMPMSG@(99999),-1)
 I SH>LAST D  Q
 .S @TMPMSG@(LAST+1)=""
 ;
 D ADD^%L1GSEQ(TMPMSG,SH,"",1)
 Q
 

W3MSGTER
W3MSGTERM ; [ 23.09.08 17:17 ] [ 09.01.08 11:28 ] [ 19.08.07 09:22 ] [
 W $$^%W1DICT("THANKYOU"),!
 W "<br><br>",!
 W $$^%W1DICT("YOURORDERNUMBER"),ORD,!
 W $$^%W1DICT("PHONENUMBER"),$$NMB^W3HZMST(ORD,$$^W3ORD),!
 W "<br>",!
 W $$^%W1DICT("SAVEYOURDETAILS"),!
 W

W3MSGTR0
W3MSGTRM ; [ 27.05.11 17:52 ] [ 03.07.10 04:48 ] [ 01.07.10 16:08 ]
 N (JB,CODE,%ARG) S ORD=JB
 I $D(@$$^W3ORD(JB)@(JB)) Q
 I '$G(CODE) S CODE=$$GET^%W1PRM("CODE")
 S MSD=$$GET^%W1PRM("MSD")
 I MSD="" Q
 I $$^W3UCI(MSD)="" Q
 ;;S $ZGBLDIR=$$^W3UCI(MSD)
 D HDMSD^W3ORDVW(MSD)
 D ^%L1WEBHD($$^W3MSDG(MSD),"T")
 ;
 D TERM^W3ORDVW
 ;
 W "<br><br>",!
 W "<table align=""center"" dir="""_$$^%W1DIR_""" id=""msgid"" cellpadding=""30"" border=""1"">",!
 W " <tr><td style=""background-color:white;text-align:center"">",!
 W " <p style=""color: red;font-size:"_$$^W3FSZ(24)_""">",$$^%W1DICT("THANKS"),!
 W " <br></p>",!
 w " <p>",!
 W " <span style=""font-size:"_$$^W3FSZ(20)_""">",$$^%W1DICT("YOURORDERNUMBER"),"</span>&nbsp;&nbsp;<span style=""color:brown;font-size:"_$$^W3FSZ(18)_""">",ORD,"</span><br>",!
 W " <br>",!
 W " <table dir="""_$$^%W1DIR_""" width=""100%""><tr>",!
 W " <tr>",!
 W "  <td style=""text-align:center""><span>",$$^%W1DICT("TOTAL"),"&nbsp;",$$^%W1DICT("NIS"),"&nbsp;<a style=""font-size:"_$$^W3FSZ_";color:brown"">",$J($$TSHL^W3HZMST(ORD,$$^W3ORD),2,2),"</a></span></td>",!
  N VT,CODTS S VT=""
  S CODTS=$$CODTS^W3HZMST(ORD,$$^W3ORD)
  S VT=$$^W3SHOWTS(CODTS)
  ;
  W " <td style=""text-align:center""><span>",$$^%W1DICT("KINDOFPAYMENT"),"&nbsp;<a style=""color:brown;font-size:"_$$^W3FSZ_""">",VT,"</a></span></td>",!
 W " </tr>",!
 W " <tr>",!
 W "  <td>&nbsp;</td>"
 W " </tr>",!
 W "<tr>",!
 W "  <td style=""text-align:center""><span>",$$^%W1DICT("PHONE"),"</span>&nbsp;<a style=""font-size:"_$$^W3FSZ_";color:brown;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""" dir=""LTR"">",$$NMB^W3HZMST(ORD,$$^W3ORD),"</a></td>",!
 W "  <td style=""text-align:center""><span>",$$^%W1DICT("PELE"),"</span>&nbsp;<span style=""font-size:"_$$^W3FSZ_";color:brown;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""" dir=""LTR"">",$$PELE^W3HZMST(ORD,$$^W3ORD),"</span></td>",!
 W " </tr>"
 W "</table>",!
 ;
 ;;I '$$SFC^W3CSS D
 .W " <br></p>",!
 .W " <br><p><span>",!
 W $$^%W1DICT("BEAVAILABLE"),!
 W "</span><br></p>",!
 W "<p style=""color:red"">"
 W $$^%W1DICT("SAVEYOURDETAILS"),!
 W "</p>",!
 W "</td></tr><table>",!
 W "</div>",!
 W "<br/><br/>",!
 ;
 W "<div align=""center"">",!
 W "<table><tr><td align=""center"">",!
 D ROUNDBUT^%W1JS("msgprint",$$^%W1DICT("PRINTMSG"),"Print()","color:green","wh,22")
 W "</td>",!
 ;
 W "<td>" D ROUNDBUT^%W1JS("feedback",$$^%W1DICT("WHATYOURMIND"),"FeedBack()","color:brown","wh,22")
 W "</td>",!
 I CODE["!" D
 .W "<td>" D ROUNDBUT^%W1JS("msgreg",$$^%W1DICT("REGISTRY"),"SaveProfile()","color:blue","wh,22") W "</td>"
 ;
 W "<td>"
 D ROUNDBUT^%W1JS("msgclose",$$^%W1DICT("CLOSE"),"Finish('"_CODE_"')","color:red","wh,22")
 W "</td>"
 W "</tr></table>",!
 W "</div>",!
 ;
 I $D(@$$^W3ORD(JB)@(JB)) S $P(@$$^W3ORD(JB)@(JB),"~",4)=$ZD($H,"DD.MM.YY  24:60")
 ;
 D ^W3FAXHTM(JB,MSD) ; D ^W3FAX
 ;
END K ^[$$^W3MAIN]TMPORD(JB),^[$$^W3MAIN]TMPTF($$^%W1JB) ;;,^[$$^W3MAIN]TMPPRM(JB)
 K @$$^W4PARCAT
 Q

W3MSGTRM
W3MSGTRM ; [ 06.10.18 13:14 ] [ 16.09.17 08:08 ] [ 03.09.17 10:30 ] 
 N (JB,CODE,%ARG) S ORD=JB
 ;
 I '$G(CODE) S CODE=$$GET^%W1PRM("CODE")
 S MSD=$$GET^%W1PRM("MSD")
 ;;W "MSD="_MSD,! ; ***
 I MSD="" Q
 S UCI=$$^W3UCI(MSD)
 ;;W "UCI="_UCI,! ; ***
 I UCI="" Q
 ;
 D HDMSD^W3ORDVW(MSD)
 D ^%L1WEBHD($$^W3MSDG(MSD),"T")
 ;
 I '$D(@$$^W3ORD(JB)@(JB)) D
 .D TERM^W3ORDVW
 ;
 ;;W "NEW="_$G(@$$^W3ORD(JB)@(JB,"NEW")),! ; ***
 ;
 I $D(@$$^W3ORD(JB)@(JB)),'$D(@$$^W3ORD(JB)@(JB,"NEW")) Q
 K @$$^W3ORD(JB)@(JB,"NEW")
 K @$$^W3TMPORD@(JB)
 ;
 N VT,CODTS S VT=""
 S CODTS=$$CODTS^W3HZMST(ORD,$$^W3ORD)
 S VT=$$^W3SHOWTS(CODTS)
 ;
 W "<br><br>",!
 W "<table width=""30%"" align=""center"" dir="""_$$^%W1DIR_""" id=""msgid"" cellpadding=""30"" border=""1"" style=""background-color:white"">",!
 W " <tr>"
 W "  <td align=""center"">",!
 I '$$CALLCENTER D
 .W "   <p style=""color: red;font-size:"_$$^W3FSZ(24)_""">",$$^%W1DICT("THANKS"),"</p>",!
 W "   <p>",!
 W "   <span style=""font-size:"_$$^W3FSZ(20)_""">"
        W $$^%W1DICT("YOURORDERNUMBER")
 W "   </span>&nbsp;&nbsp;"
 W "   <span style=""color:brown;font-size:"_$$^W3FSZ(18)_""">"
         W ORD
 W "   </span><br>",!
 W "   <br>",!
 ;
  W "   <table border=""0"" dir="""_$$^%W1DIR_""" width=""100%""><tr>",!
  W "    <tr>",!
  W "     <td>"
   N UE S UE=$$H2U^%L1FRM($$MTB^W3CNTRY($$COUNTRY^W3R(MSD)))
   W "     <span>",$$^%W1DICT("TOTAL"),"&nbsp;",UE
   W "      &nbsp;"
            W $$RKV($J($$TSHL^W3HZMST(ORD,$$^W3ORD),2,2))
   W "     </span>"
  W "     </td>",!
  ;
  W "     <td style=""text-align:center"">"
    W "     <span>",$$^%W1DICT("KINDOFPAYMENT"),"&nbsp;"
              W $$RKV(VT)
    W "     </span>"
  W "     </td>",!
  W "    </tr>",!
  ;
  W "    <tr>",!
  W "     <td>&nbsp;</td>"
  W "    </tr>",!
  ;
  W "<tr><td colspan=""2"">"
   W $$^%W1DICT("CUSTOMER")_$$NBSP^%L1FRM(4)_$$RKV($$H2U^%L1FRM($$NAME^W3HZMST(ORD,$$^W3ORD)))
  W "</tr>",!
  W "<tr><td>&nbsp;</td></tr>",!
  ;
  W "<tr><td colspan=""2"">"
   W $$^%W1DICT("ADDRESS")_" "_$$RKV($$H2U^%L1FRM($$KTV^W3HZMST(ORD,$$^W3ORD)))
  W "</tr>",!
  ;
  W "<tr><td>&nbsp;</td></tr>",!
  ;
  W "    <tr>",!
  W "      <td>"
   W "       <span>",$$^%W1DICT("PHONE"),"</span>"_$$NBSP^%L1FRM(3)
   W $$RKV($$NMB^W3HZMST(ORD,$$^W3ORD))
   W "         </a>"
  W "      </td>",!
  W "      <td style=""text-align:center"">"
   W "       <span>",$$^%W1DICT("PELE"),"</span>&nbsp;"
              W $$RKV($$PELE^W3HZMST(ORD,$$^W3ORD))
   W "       </span>"
  W "     </td>",!
  W "    </tr>"
  ;
  W "</table>",!
  ;
 I '$$CALLCENTER D
 .W "<br><span style=""color:darkgreen"">"
 . W $$^%W1DICT("BEAVAILABLE"),!
 .W "<br></span></p>",!
 .W "<p style=""color:red"">"
 . W $$^%W1DICT("SAVEYOURDETAILS"),!
 .W "</p>",!
 ;
 W "</td></tr></table>",!
 ;
 I $$CALLCENTER D
 .W "<br><br>",!
 .W "<span style=""color:green;font-size:"_$$^W3FSZ_""" >"
 .  N MRK,MRKN S MRKN="",MRK=$$MSD^W3HZMST(ORD)
 .  I MRK S MRKN=$$MSDN^W3R(MRK)
 .  W $$^%W1DICT("ORDERSENDED2BRANCH",MRK_"<>"_MRKN)
 .W "</span>",!
 W "</div>",!
 W "<br/><br/>",!
 ;
 ;
 W "<div align=""center"">",!
 W " <table><tr>"
  I '$$CALLCENTER D
  .W "<td align=""center"">",!
  . D ROUNDBUT^%W1JS("msgprint",$$^%W1DICT("PRINTMSG"),"Print()","color:green","wh,22")
  .W " </td>",!
  .;
  .W "  <td>" D ROUNDBUT^%W1JS("feedback",$$^%W1DICT("WHATYOURMIND"),"FeedBack()","color:brown","wh,22")
  .W "  </td>",!
  .I CODE["!" D
  ..W " <td>" D ROUNDBUT^%W1JS("msgreg",$$^%W1DICT("REGISTRY"),"SaveProfile()","color:blue","wh,22") W "</td>"
 ;
 W " <td>"
  D ROUNDBUT^%W1JS("msgclose",$$^%W1DICT("CLOSE"),"Finish('"_CODE_"')","color:red","wh,22")
 W " </td>"
 W "</tr></table>",!
 W "</div>",!
 ;
 I $D(@$$^W3ORD(JB)@(JB)) S $P(@$$^W3ORD(JB)@(JB),"~",4)=$ZD($H,"DD.MM.YY  24:60")
 ;
 D ^W3FAXHTM(JB,MSD) ;
 ;
END K ^[$$^W3MAIN]TMPORD(JB),^[$$^W3MAIN]TMPTF($$^%W1JB) ;;,^[$$^W3MAIN]TMPPRM(JB)
 K @$$^W4PARCAT
 Q
 ;
CALLCENTER(STAM) ;
 Q $$DLVWEB^W4DLVCSR
 ;
RKV(TX) ;
 Q "<a style=""font-size:"_$$^W3FSZ_";color:brown"">"_TX_"</a>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSH
W3MSH ; [ 25.02.12 15:10 ] [ 22.05.11 18:23 ] [ 26.04.11 17:12 ]
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
CYC ;
 ;
 D GL
 K @GL
 S %W1LNG="H"
 ;
 S DAT=$ZD($H,"YYMMDD")
 L +^W3MSH(DAT):2
 S K=0
 S ENDSMB=4
 ;
 U 0 S ST=""
 F  R *A Q:A=ENDSMB  D
 .S ST=ST_$C(A)
 .I $C(A)=">" D  S ST=""
 ..D SETST
 ;
 I $L(ST) D SETST
 ;
 L -^W3MSH(DAT)
 ;
 D ^W3MSHORD
 ;
 K @GL
 ;
 S RES=RES_$C(13)
 U $P:(NOWRAP:NOECHO)
 W RES,!,#
 Q
 ;
DCD(A) ;
 N J,B,CHR
 S B="",J=0
DCDC S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 I CHR'=215 D  G DCDC
 .S B=B_$C(CHR)
 S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 S B=B_$C(CHR-16)
 G DCDC
DCDE ;
 Q B
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPMSH(MYDVN,UR)"
 S MYDVN=$J ;$$^%L3MYDVN
 S UR=1
 Q
SETST ;
 I ST="" Q
 N ST1
 S ST1=ST
 I ST["<" S ST1=$P(ST,"<") D SETST1 S ST1="<"_$P(ST,"<",2,200)
 D SETST1
 Q
SETST1 ;
 I ST1="" Q
 N B,C,LI,J
 S LI=$O(^W3MSH(DAT,999999),-1)+1
 S B=$$DCD(ST1)
 S B=$TR(B,$C(13,10),"")
 S K=K+1,@GL@(K)=B
 S ^W3MSH(DAT,LI)=B
 Q

W3MSH0
W3MSH ; [ 01.03.11 01:40 ] [ 27.02.11 13:18 ] [ 26.02.11 23:59 ]
 N (%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
CYC ;
 ;
 D GL
 K @GL
 S %W1LNG="H"
 ;
 S DAT=$ZD($H,"YYMMDD")
 L +^W3MSH(DAT):2
 S K=0
 S ENDSMB=4
 S port=0,delim=$C(10)
 S timeout=3
 S dev="server$"_$j
 Open dev:(ZLISTEN=port_":TCP":DELIMITER=$c(10,58,13,10,58,27,95):ATTACH="server"):timeout:"SOCKET"
 U dev
 S ^DIMA($J,0)=$KEY
 Write /LISTEN(1)
 ;;set %ZNSock="",%ZNFrom=""
 WRITE /WAIT(timeout)
 I $KEY]"" S ^DIMA($J,2)=$KEY
 S ^DIMA="OK"
 S ^DIMA("KEY")=$KEY
 ;;S %ZNSock=$p($KEY,"|",2)
 S A=""
 ;;U dev:(SOCKET=%ZNSock)
 R *A:3
 S ^DIMA("A")=A
 W "OK",A,!
 C dev
 Q
 I $C(A)=">" D  S ST=""
 D SETST
 ;
 I $L(ST) D SETST
 ;
 L -^W3MSH(DAT)
 ;
 D ^W3MSHORD
 ;
 K @GL
 ;
 W RES
 Q
 ;
DCD(A) ;
 Q $TR(A,TS1,TSS)
 ;
 N J,B,CHR
 S B="",J=0
DCDC S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 I CHR'=215 D  G DCDC
 .S B=B_$C(CHR)
 S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 S B=B_$C(CHR-16)
 G DCDC
DCDE ;
 Q B
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPMSH(MYDVN,UR)"
 S MYDVN=$J ;$$^%L3MYDVN
 S UR=1
 Q
SETST ;
 I ST="" Q
 N ST1
 S ST1=ST
 I ST["<" S ST1=$P(ST,"<") D SETST1 S ST1="<"_$P(ST,"<",2,200)
 D SETST1
 Q
SETST1 ;
 I ST1="" Q
 N B,C,LI,J
 S LI=$O(^W3MSH(DAT,999999),-1)+1
 ;S ^W3MSH(DAT,LI)=$E(ST1,1,800)
 ;S LI=LI+1
 ;S C=""
 ;F J=1:1:$L(ST1) S C=C_$A(ST1,J)_" "
 ;S ^W3MSH(DAT,LI)=$E(C,1,800)
 S B=$$DCD(ST1)
 S K=K+1,@GL@(K)=B
 S ^W3MSH(DAT,LI)=B
 Q

W3MSHOR0
W3MSHORD ; [ 25.12.19 14:08 ] [ 11.11.19 06:41 ] [ 10.11.19 16:21 ] 
 ;---- MEMSHAK LE MISHLOHA
 N (%ARG,%REM,RES) D GL^W3MSH
 S RES="NOK"
 S %W1LNG="H"
 ;
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 ;
 S ORDER="mishloha_order_online"
 S DISHES="order_details"
 S DISHEL="order_item"
 S CHOICES="options"
 S SUBEL="extra"
 S SUBS="extras"
 ;                    GROUP ORDERS -- ????????????????
 S I=0
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 ;;U 0 W A,!
 I A[("<"_ORDER) D
 .S BGSNG=I
 .S JB=$$^%W1SsID("TMSH")
 .K @TMPORD
 .S BGOI=BGSNG
CYCORD .
 .S K=0
 .S REST=$$GET(BGOI,"rest_id",ORDER) I 'REST S RES="NOREST" Q
 .S MSD=$G(^[$$^W3MAIN]W3MSH2M(REST)) Q:MSD=""
 .D PUT^%W1PRM("MSD",MSD)
 .S CITY=$$GET(BGOI,"city",ORDER,"H")
 .S FIRSTNAME=$$GET(BGOI,"first_name",ORDER,"H")
 .S LASTNAME=$$GET(BGOI,"last_name",ORDER,"H")
 .S NAME=FIRSTNAME_" "_LASTNAME
 .S PHONE01=$TR($$GET(BGOI,"phone",ORDER)," ","")
 .I PHONE01="" S RES="NOPHONE"
 .S PHONE02="" ;$$GET(BGOI,"Phone02",ORDER) ; ?????????????
 .
 .S CODE=PHONE01
 .D PUT^%W1PRM("CODE",CODE)
 .
 .S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 .
 .S ASM=$$GET(BGOI,"order_number",ORDER)
 .S ASMU=$$GET(BGOI,"unique_id",ORDER)
 .S CANCEL=$$GET(BGOI,"is_cancel",ORDER)
 .I CANCEL="true" D  G CYC  
 ..D DELORD(ASM,ASMU,REST)
 .S MSHPAY=$$GET(BGOI,"payment_id",ORDER,"H")
 .
 .S SOADIM=$$GET(BGSNG,"num_of_diners",ORDER)
 .
 .S TOTIME=$$GET(BGSNG,"order_date",ORDER)
 .I TOTIME=0 S TOTIME=$ZD($H,"DD/MM/YEAR 24:60")
 .D
 ..S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 ..I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N.E D  Q
 ...S DAT=$P(TOTIME," ")
 ...S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ...S SHAA=$P($P(TOTIME," ",2),":",1,2)
 ..I TOTIME?.E2N1":"2N.E D
 ...S DAT=$ZD($H,"DD.MM.YY")
 ...S SHAA=$P(TOTIME,":",1,2)
 .
 .I SHAA="" S SHAA=$$SHAA($P($H,",",2)\60+60)
 .
 .I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800!(SHAA>21) D
 ..N SHAA0 S SHAA0=SHAA
 ..N DLVT S DLVT=$$GET(BGSNG,"estimate_delivery_time",ORDER)
 ..S DLVT=$TR(DLVT," ","")
 ..I DLVT["-" S DLVT=$P(DLVT,"-",2)
 ..N DKT S DKT=SHAA*60+$P(SHAA,":",2)+DLVT
 ..S SHAA=((DKT\60)#24)_":"_$$DOP(DKT#60)
 ..;;S SHAA=$$TM^W3TIME($H,CITY)
 ..I SHAA<SHAA0 S DAT=$ZD($H+1,"DD.MM.YY")
 .
 .D PUT^W3HZMST(JB,"NAME",NAME)
 .D PUT^W3HZMST(JB,"NMB",CODE)
 .D PUT^W3HZMST(JB,"CODE",CODE)
 .D PUT^W3HZMST(JB,"PELE",PHONE02)
 .D PUT^W3HZMST(JB,"DAT",DAT)
 .D PUT^W3HZMST(JB,"SHAA",SHAA)
 .D PUT^W3HZMST(JB,"DATCB",ZMANK)
 .D PUT^W3HZMST(JB,"HZMLAK",ASM_"/"_ASMU)
 .
 .D PUT^W3HZMST(JB,"SOAD",SOADIM)
 .
 .D PUT^W3HZMST(JB,"MKR",12) ;
 .
 .S CODTS=1
 .S CRCARD="",CRMM="",CRYY=""
 .;
 .I MSHPAY=3!(MSHPAY=5) D
 ..S CODTS=3
 ..S CRID=$$GET(BGOI,"cc_id",ORDER)
 ..I CRID'[";" D PUT^W3HZMST(JB,"CREDTZ",$$^W3ENCR(JB_";"_CRID))
 ..I CRID[";" D
 ...N J,CRID1 S CRID1="" F J=1:1:$L(CRID,";") D
 ....S CRID1=CRID1_$$^W3ENCR(JB_";"_$P(CRID,";",J))_"^"
 ...D PUT^W3HZMST(JB,"CREDTZ",$E(CRID1,1,$L(CRID1)-1))
 ..S CRCARD=$$GET(BGOI,"cc_number",ORDER)
 ..S CRCARD=$TR(CRCARD,"ABCDE",12345)
 ..I CRCARD'[";" D PUT^W3HZMST(JB,"CREDCARD",$$^W3ENCR(JB_";"_CRCARD))
 ..I CRCARD[";" D
 ...N J,CRCARD1 S CRCARD1="" F J=1:1:$L(CRCARD,";") D
 ....S CRCARD1=CRCARD1_$$^W3ENCR(JB_";"_$P(CRCARD,";",J))_"^"
 ...D PUT^W3HZMST(JB,"CREDCARD",$E(CRCARD1,1,$L(CRCARD1)-1))
 ..S CRMM=$$GET(BGOI,"cc_month",ORDER)
 ..S CRYY=$$GET(BGOI,"cc_year",ORDER)
 ..I CRYY'[";" D
 ...S CRYY=$E(CRYY,3,4)
 ...D PUT^W3HZMST(JB,"CREDMMYY",CRMM_"/"_CRYY)
 ..I CRYY[";" D
 ...N J,CRYY1 S CRYY1=""
 ...F J=1:1:$L(CRMM,";") D
 ....S CRYY1=CRYY1_$P(CRMM,";",J)_"/"_$E($P(CRYY,";",J),3,4)_";"
 ...D PUT^W3HZMST(JB,"CREDMMYY",$E(CRYY1,1,$L(CRYY1)-1))
 ..S CRCVV2=$$GET(BGOI,"cc_cvv",ORDER)
 ..D PUT^W3HZMST(JB,"CREDCVV2",CRCVV2)
 ..S CRSUM=$$GET(BGOI,"cc_sum",ORDER)
 ..D PUT^W3HZMST(JB,"CREDSUM",CRSUM)
 .
 .I MSHPAY=11 S CODTS=13 ; -- MSH C-A
 .
 .D PUT^W3HZMST(JB,"CODTS",CODTS)
 .
 .S STREET=$$GET(BGOI,"street",ORDER,"H")
 .S HOME=$$GET(BGOI,"street_number",ORDER,"HH")
 .S COMMENT=$$GET(BGOI,"address_comments",ORDER,"H")
 .S CMHD=$$GET(BGOI,"order_comment",ORDER,"H") ; ???????????
 .S FLAT=$$GET(BGOI,"apartment",ORDER,"HH")
 .S COMP="" ;;S COMP=$$GET(BGOI,"CompanyName",ORDER) ; ???????
 .S ENTRANCE=$$GET(BGOI,"entrance",ORDER,"H")
 .S FLOOR=$$GET(BGOI,"floor",ORDER,"H")
 .
 .D PUT^W3HZMST(JB,"CITY",CITY)
 .D PUT^W3HZMST(JB,"STREET",STREET)
 .D PUT^W3HZMST(JB,"COMMENT",COMMENT)
 .D PUT^W3HZMST(JB,"HOME",HOME)
 .D PUT^W3HZMST(JB,"FLAT",FLAT)
 .D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 .D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 .D PUT^W3HZMST(JB,"COMP",COMP)
 .D PUT^W3HZMST(JB,"CMHD",ASM_":MSH "_CMHD)
 .
 .S DMSH=$$GET(BGOI,"delivery_price",ORDER)
 .S HNH=$$GET(BGOI,"discount",ORDER)
 .S TSHL=$$GET(BGOI,"total_order",ORDER)
 .
 .D PUT^W3HZMST(JB,"DMSH",DMSH) ; ?????????? DIAPASON ???
 .D PUT^W3HZMST(JB,"HNH",HNH)
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 .
 .;;D SENDOK^W3MSH(MSADDR_"/InProcess",MSD) ; ????????????
 .
 .S BGDI=BGOI
CYCD .S BGDI=$$FIND(BGDI,DISHEL,ORDER)
 .I 'BGDI D NEWHZ G CYC
 .;
 .S CD=$$GET(BGDI,"food_id",DISHEL)
 .;;U 0 W "CD="_CD,!
 .D
 ..S NM=$$GET(BGDI,"food_title",DISHEL)
 ..I NM?1N.N1"-".E S NM=$P(NM,"-")_"-"_$$INVH^%L1FRM($P(NM,"-",2,200)) Q
 ..I NM?1N.N1".".E S NM=$P(NM,".")_"."_$$INVH^%L1FRM($P(NM,".",2,200)) Q
 ..S NM=$$INVH^%L1FRM(NM)
 .;;I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S CD=$$CONVCD(CD)
 .S PRC=$$GET(BGDI,"food_price",DISHEL)
 .S QN=1 ;;$$GET(BGDI,"food_qn",DISHEL) ; ?????????
 .S CMNT=$$GET(BGDI,"user_food_comments",DISHEL)
 .S CMNT=$TR(CMNT,"*!","")
 .S CMNT=$$SPA^%L1FRM(CMNT)
 .S CMNT=$$SP1^%L1FRM(CMNT)
 .S MAZMIN="" ;$$GET(BGDI,"AssignedUserName",DISHEL) ; - ?????????
 .I MAZMIN'="" S CMNT=CMNT_"  [ "_MAZMIN_" ]"
 .S K=K+1
 .S @TMPORD@(K)="0~"_CD_"~"_NM_"~"_$J(PRC,2,2)_"~"_QN_"~~"_$$INVH^%L1FRM(CMNT)
 .
 .S BGSI=BGDI
CYCSUBS .S BGSI=$$FIND(BGSI,SUBEL,DISHEL)
 .I 'BGSI S BGDI=$$FINDEND(BGDI,DISHEL,ORDER) G CYCD
 .;
 .S CD=$$GET(BGSI,"extra_id",SUBEL)
 .;;U 0 W "CDEX="_CD,!
 .S NM=$$GET(BGSI,"extra_title",SUBEL)
 .;;I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S CD=$$CONVCD(CD)
 .S PRC=$$GET(BGSI,"extra_price",SUBEL)
 .S QN=1
 .S K=K+1
 .N LVL S LVL=$$LVL(MSD,CD)
 .S @TMPORD@(K)=LVL_"~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN
 .S BGSI=$$FINDEND(BGSI,SUBEL,DISHEL)
 .G CYCSUBS
 ;
 G CYC
END Q
 ;
GET(I,EL,PARENT,PRHB)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(IND+1,EL,$G(PRHB))
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J ;;+1
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL,PR) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 I A["<![CDATA[" S A=$P($P(A,"<![CDATA[",2),"]]")
 S ZN=A
 I A[("<"_EL) D
 .S ZN=$P(A,"<"_EL_">",2)
 .S ZN=$P(ZN,"</"_EL_">")
 ;
 S ZN=$P(ZN,"</")
 ;
 S ZN=$$REG(ZN)
 S ZN=$$SPA^%L1FRM(ZN)
 I ZN="UNDEFINED" Q ""
 I $G(PR)="H" D
 .S ZN=$$INVH^%L1FRM(ZN)
 I $G(PR)="HH",ZN'?.E1N.N.E D
 .S ZN=$$INVH^%L1FRM(ZN)
 Q ZN
 ;
NEWHZ ;
 S MEMSHAK=""
 D TERM^W3ORDVW
 S RES="OK"
 ;;S ^[$$^W3MAIN]W3MSHORD(ASM,JB)=MSD_";"_$ZD($H,"DD.MM.YY  24:60")
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CD(TXT,CD) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ")
 I TXT?1N.N1".".E Q $P(TXT,".")
 Q "0-"_CD
 ;
DESC(TXT) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ",2,20)
 I TXT?1N.N1".".E Q $P(TXT,".",2,20)
 Q TXT
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 S TXT=$TR(TXT,"`","'")
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
CDTXT(STAM) ;
 Q 1
 ;I MSD=1!(MSD=99999) Q 1
 Q 0
 ;
CONVCD(CD) ;
 I CD="" Q 0
 I $P(CD,"=",2),$P(CD,"=",2)>0 S CD=$P(CD,"=",2) Q CD
 Q "0-"_$P(CD,"=")
 ;
LVL(MSD,CD) ;
 I MSD=8001!(MSD=8002)!(MSD=8003),CD>20699,CD<20751 Q 2
 Q 1
 ;
DOP(VL)
 Q $TR($J(VL,2)," ",0)
 ;
SHAA(MIN) ;
 S MIN=MIN#(24*60)
 Q $TR($J(MIN\60,2)," ",0)_":"_$TR($J(MIN#60,2)," ",0)
 ;
DELORD(ASM,ASMU,REST) 
 I '$G(ASMU) Q
 N HZ S HZ=$G(^[$$^W3MAIN]W3LINKU(ASMU)) Q:'HZ
 D DELORD1(HZ)
 Q
 ;
DELORD1(HZ) ;
 S RES="OK"
 N GL S GL="^[$$^W3MAIN]W3ORD"
 N TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 K @TMPORD
 N A S A=$G(@GL@(HZ))
 S $P(A,"~",4)=$ZD($H,"DD.MM.YY  24:60")
 S @TMPORD=A
 N J F J=8:1:12,17,19,54,62,67,68 S $P(@TMPORD,"~",J)=-$P(A,"~",J)
 N N S N="",I=0 F  S N=$O(@GL@(HZ,N)) Q:N=""  I N D
 .S I=I+1
 .S @TMPORD@(I)=$G(@GL@(HZ,N))
 .S $P(@TMPORD@(I),"~",5)=-$P(@TMPORD@(I),"~",5)
 D TERM^W3ORDVW
 K @TMPORD
DELORDE Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSHORD
W3MSHORD ; [ 29.06.22 21:17 ] [ 21.01.21 09:43 ] [ 16.12.20 14:12 ] 
 ;---- MEMSHAK LE MISHLOHA
 N (%ARG,%REM,RES) D GL^W3MSH
 S RES="NOK"
 S %W1LNG="H"
 ;
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 ;
 S ORDER="mishloha_order_online"
 S DISHES="order_details"
 S DISHEL="order_item"
 S CHOICES="options"
 S SUBEL="extra"
 S SUBS="extras"
 ;                    GROUP ORDERS -- ????????????????
 S I=0
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 ;;U 0 W A,!
 I A[("<"_ORDER) D
 .S BGSNG=I
 .S JB=$$^%W1SsID("TMSH")
 .K @TMPORD
 .S BGOI=BGSNG
CYCORD .
 .S K=0
 .S REST=$$GET(BGOI,"rest_id",ORDER) I 'REST S RES="NOREST" Q
 .;
 .S MSD=$G(^[$$^W3MAIN]W3MSH2M(REST)) Q:MSD=""
 .S CALLC=$P(MSD,",",2),MSD=+MSD
 .D PUT^%W1PRM("MSD",MSD)
 .S CITY=$$GET(BGOI,"city",ORDER,"H")
 .S FIRSTNAME=$$GET(BGOI,"first_name",ORDER,"H")
 .S LASTNAME=$$GET(BGOI,"last_name",ORDER,"H")
 .S NAME=FIRSTNAME_" "_LASTNAME
 .S PHONE01=$TR($$GET(BGOI,"phone",ORDER)," ","")
 .I PHONE01="" S RES="NOPHONE"
 .S PHONE02="" ;$$GET(BGOI,"Phone02",ORDER) ; ?????????????
 .
 .S CODE=PHONE01
 .D PUT^%W1PRM("CODE",CODE)
 .
 .S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 .
 .S MYDISC=$$GET(BGOI,"oth_quiky",ORDER)
 .S MYDISC=(MYDISC="true"!(MYDISC="TRUE"))
 .
 .S ASM=$$GET(BGOI,"order_number",ORDER)
 .S ASMU=$$GET(BGOI,"unique_id",ORDER)
 .S CANCEL=$$GET(BGOI,"is_cancel",ORDER)
 .I CANCEL="true"!(CANCEL="TRUE") D  G CYC  
 ..D DELORD(ASM,ASMU,REST)
 .
 .S MSHPAY=$$GET(BGOI,"payment_id",ORDER)
 .
 .S SOADIM=$$GET(BGSNG,"num_of_diners",ORDER)
 .
 .S TOTIME=$$GET(BGSNG,"order_date",ORDER)
 .I TOTIME=0 S TOTIME=$ZD($H,"DD/MM/YEAR 24:60")
 .D
 ..S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 ..I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N.E D  Q
 ...S DAT=$P(TOTIME," ")
 ...S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ...S SHAA=$P($P(TOTIME," ",2),":",1,2)
 ..I TOTIME?.E2N1":"2N.E D
 ...S DAT=$ZD($H,"DD.MM.YY")
 ...S SHAA=$P(TOTIME,":",1,2)
 .
 .I SHAA="" S SHAA=$$SHAA($P($H,",",2)\60+60)
 .
 .I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800!(SHAA>21) D
 ..N SHAA0 S SHAA0=SHAA
 ..N DLVT S DLVT=$$GET(BGSNG,"estimate_delivery_time",ORDER)
 ..S DLVT=$TR(DLVT," ","")
 ..I DLVT["-" S DLVT=$P(DLVT,"-",2)
 ..N DKT S DKT=SHAA*60+$P(SHAA,":",2)+DLVT
 ..S SHAA=((DKT\60)#24)_":"_$$DOP(DKT#60)
 ..;;S SHAA=$$TM^W3TIME($H,CITY)
 ..I SHAA<SHAA0 S DAT=$ZD($H+1,"DD.MM.YY")
 .
 .D PUT^W3HZMST(JB,"NAME",NAME)
 .D PUT^W3HZMST(JB,"NMB",CODE)
 .D PUT^W3HZMST(JB,"CODE",CODE)
 .D PUT^W3HZMST(JB,"PELE",PHONE02)
 .D PUT^W3HZMST(JB,"DAT",DAT)
 .D PUT^W3HZMST(JB,"SHAA",SHAA)
 .D PUT^W3HZMST(JB,"DATCB",ZMANK)
 .D PUT^W3HZMST(JB,"HZMLAK",ASM_"/"_ASMU_"/"_CALLC)
 .
 .D PUT^W3HZMST(JB,"SOAD",SOADIM)
 .
 .D PUT^W3HZMST(JB,"MKR",12) ;
 .
 .S CODTS=1
 .S CRCARD="",CRMM="",CRYY=""
 .;
 .D
 ..I MSHPAY'[";" D MSHPAY(MSHPAY) Q
 ..
 ..I ";"_MSHPAY_";"'[";3;",";"_MSHPAY_";"'[";5;" D  Q
 ...S CODTS=MSHPAY
 ...D CRCARD(BGOI,ORDER)
 ...D CRSUM(BGOI,ORDER)
 ..
 ..K MP
 ..F J=1:1:$L(MSHPAY,";") D  Q
 ...N VT S VT=$P(MSHPAY,";",J) I VT D MSHPAY(+VT) S MP(+VT)=J
 .
 .D PUT^W3HZMST(JB,"CODTS",CODTS)
 .
 .S STREET=$$GET(BGOI,"street",ORDER,"H")
 .S HOME=$$GET(BGOI,"street_number",ORDER,"HH")
 .S COMMENT=$$GET(BGOI,"address_comments",ORDER,"H")
 .S CMHD=$$GET(BGOI,"order_comment",ORDER,"H") ; ???????????
 .S FLAT=$$GET(BGOI,"apartment",ORDER,"HH")
 .S COMP="" ;;S COMP=$$GET(BGOI,"CompanyName",ORDER) ; ???????
 .S ENTRANCE=$$GET(BGOI,"entrance",ORDER,"H")
 .S FLOOR=$$GET(BGOI,"floor",ORDER,"H")
 .
 .D PUT^W3HZMST(JB,"CITY",CITY)
 .D PUT^W3HZMST(JB,"STREET",STREET)
 .D PUT^W3HZMST(JB,"COMMENT",COMMENT)
 .D PUT^W3HZMST(JB,"HOME",HOME)
 .D PUT^W3HZMST(JB,"FLAT",FLAT)
 .D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 .D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 .D PUT^W3HZMST(JB,"COMP",COMP)
 .D PUT^W3HZMST(JB,"CMHD",$G(ASMU)_":MSH "_CMHD)
 .
 .S DMSH=$$GET(BGOI,"delivery_price",ORDER)
 .S HNH=$$GET(BGOI,"discount",ORDER)
 .S TSHL=$$GET(BGOI,"total_order",ORDER)
 .I TSHL<0,HNH>0 S HNH=-HNH ; *** LEV 22/01/20
 .I TSHL<0,DMSH>0 S DMSH=-DMSH ; *** LEV 22/01/20
 .D PUT^W3HZMST(JB,"DMSH",DMSH) ; ?????????? DIAPASON ???
 .D PUT^W3HZMST(JB,"HNH",HNH)
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 .
 .D PUT^W3HZMST(JB,"MYDISC",MYDISC)
 .;;D SENDOK^W3MSH(MSADDR_"/InProcess",MSD) ; ????????????
 .
 .S BGDI=BGOI
CYCD .S BGDI=$$FIND(BGDI,DISHEL,ORDER)
 .I 'BGDI D NEWHZ G CYC
 .;
 .S CD=$$GET(BGDI,"food_id",DISHEL)
 .;;U 0 W "CD="_CD,!
 .D
 ..S NM=$$GET(BGDI,"food_title",DISHEL)
 ..I NM?1N.N1"-".E S NM=$P(NM,"-")_"-"_$$INVH^%L1FRM($P(NM,"-",2,200)) Q
 ..I NM?1N.N1".".E S NM=$P(NM,".")_"."_$$INVH^%L1FRM($P(NM,".",2,200)) Q
 ..S NM=$$INVH^%L1FRM(NM)
 .;;I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S CD=$$CONVCD(CD)
 .S PRC=$$GET(BGDI,"food_price",DISHEL)
 .S QN=1 ;;$$GET(BGDI,"food_qn",DISHEL) ; ?????????
 .S CMNT=$$GET(BGDI,"user_food_comments",DISHEL)
 .S CMNT=$TR(CMNT,"*!","")
 .S CMNT=$$SPA^%L1FRM(CMNT)
 .S CMNT=$$SP1^%L1FRM(CMNT)
 .S MAZMIN="" ;$$GET(BGDI,"AssignedUserName",DISHEL) ; - ?????????
 .I MAZMIN'="" S CMNT=CMNT_"  [ "_MAZMIN_" ]"
 .S K=K+1
 .S @TMPORD@(K)="0~"_CD_"~"_NM_"~"_$J(PRC,2,2)_"~"_QN_"~~"_$$INVH^%L1FRM(CMNT)
 .
 .S BGSI=BGDI
CYCSUBS .S BGSI=$$FIND(BGSI,SUBEL,DISHEL)
 .I 'BGSI S BGDI=$$FINDEND(BGDI,DISHEL,ORDER) G CYCD
 .;
 .S CD=$$GET(BGSI,"extra_id",SUBEL)
 .;;U 0 W "CDEX="_CD,!
 .S NM=$$GET(BGSI,"extra_title",SUBEL)
 .;;I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S CD=$$CONVCD(CD)
 .S PRC=$$GET(BGSI,"extra_price",SUBEL)
 .S QN=1
 .S QNPZ=$$GET(BGSI,"pizza_part",SUBEL)
 .I QNPZ["+" D
 ..S QN=0 N J F J=1:1:$L(QNPZ) I $E(QNPZ,J)="+" S QN=QN+1
 ..S QN=QN_"|"_QNPZ
 ..I QN>1 S PRC=$J(PRC/QN,2,2)
 .
 .S K=K+1
 .N LVL S LVL=$$LVL(MSD,CD)
 .S @TMPORD@(K)=LVL_"~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN
 .S BGSI=$$FINDEND(BGSI,SUBEL,DISHEL)
 .G CYCSUBS
 ;
 G CYC
END Q
 ;
GET(I,EL,PARENT,PRHB)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(IND+1,EL,$G(PRHB))
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J ;;+1
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL,PR) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 I A["<![CDATA[" S A=$P($P(A,"<![CDATA[",2),"]]")
 S ZN=A
 I A[("<"_EL) D
 .S ZN=$P(A,"<"_EL_">",2)
 .S ZN=$P(ZN,"</"_EL_">")
 ;
 S ZN=$P(ZN,"</")
 ;
 S ZN=$$REG(ZN)
 S ZN=$$SPA^%L1FRM(ZN)
 I ZN="UNDEFINED" Q ""
 I $G(PR)="H" D
 .S ZN=$$INVH^%L1FRM(ZN)
 I $G(PR)="HH",ZN'?.E1N.N.E D
 .S ZN=$$INVH^%L1FRM(ZN)
 Q ZN
 ;
NEWHZ ;
 S MEMSHAK=""
 D TERM^W3ORDVW
 S RES="OK"
 ;;S ^[$$^W3MAIN]W3MSHORD(ASM,JB)=MSD_";"_$ZD($H,"DD.MM.YY  24:60")
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CD(TXT,CD) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ")
 I TXT?1N.N1".".E Q $P(TXT,".")
 Q "0-"_CD
 ;
DESC(TXT) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ",2,20)
 I TXT?1N.N1".".E Q $P(TXT,".",2,20)
 Q TXT
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 S TXT=$TR(TXT,"`","'")
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
CDTXT(STAM) ;
 Q 1
 ;I MSD=1!(MSD=99999) Q 1
 Q 0
 ;
CONVCD(CD) ;
 I CD="" Q 0
 I $P(CD,"=",2),$P(CD,"=",2)>0 S CD=$P(CD,"=",2) Q CD
 Q "0-"_$P(CD,"=")
 ;
LVL(MSD,CD) ;
 I MSD=8001!(MSD=8002)!(MSD=8003),CD>20699,CD<20751 Q 2
 Q 1
 ;
DOP(VL)
 Q $TR($J(VL,2)," ",0)
 ;
SHAA(MIN) ;
 S MIN=MIN#(24*60)
 Q $TR($J(MIN\60,2)," ",0)_":"_$TR($J(MIN#60,2)," ",0)
 ;
DELORD(ASM,ASMU,REST) 
 I $D(^[$$^W3MAIN]MSHDEL(ASMU)) Q
 I '$G(ASMU) Q
 N HZ S HZ=$G(^[$$^W3MAIN]W3LINKU(ASMU)) Q:'HZ
 D DELORD1(HZ)
 S ^[$$^W3MAIN]MSHDEL(ASMU)=JB_"\"_HZ_"\"_$H
 Q
 ;
DELORD1(HZ) ;
 S RES="OK"
 N GL S GL="^[$$^W3MAIN]W3ORD"
 N TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 K @TMPORD
 N A S A=$G(@GL@(HZ))
 S $P(A,"~",4)=$ZD($H,"DD.MM.YY  24:60")
 S @TMPORD=A
 N J F J=8:1:12,17,19,67,68 S $P(@TMPORD,"~",J)=-$P(A,"~",J)
 ;
 N DT S DT=$$^%L1DC($P(@TMPORD,"~",5),3)
 N TIME S TIME=$P(@TMPORD,"~",6)*3600
 I DT<($H-1)!(DT=($H-1)&($P($H,",",2)>(5*3600))) D
 .S $P(@TMPORD,"~",5)=$ZD(+$H,"DD.MM.YY")
 .S $P(@TMPORD,"~",6)="10:00"
 ;
 D MULTMIN(A,54) ; -- TB
 D MULTMIN(A,62) ; -- CA
 ;
 S $P(@TMPORD,"~",7)="IT'S CANCELATION OF ORDER "_HZ
 S $P(@TMPORD,"~",60)=-HZ
 S $P(@TMPORD,"~",71)=$G(MYDISC)
 ;
 N N S N="",I=0 F  S N=$O(@GL@(HZ,N)) Q:N=""  I $E(N)?1N D
 .S I=I+1
 .S @TMPORD@(I)=$G(@GL@(HZ,N))
 .S $P(@TMPORD@(I),"~",5)=-$P(@TMPORD@(I),"~",5)
 ;
 D TERM^W3ORDVW
 K @TMPORD
DELORDE Q
 ;
 ;
CRCARD(BGOI,ORDER) ; 
 N CRCARD S CRCARD=$$GET(BGOI,"cc_number",ORDER)
 N CRTYPE S CRTYPE=$$GET(BGOI,"card_type",ORDER)
 ;
 I CRTYPE'="",CRCARD="" D
 .N J F J=1:1:$L(CRTYPE,";") S CRCARD=CRCARD_1_";"
 .S CRCARD=$E(CRCARD,1,$L(CRCARD)-1)
 ;
 S CRCARD=$TR(CRCARD,"ABCDE",12345)
 I CRCARD'[";" D PUT^W3HZMST(JB,"CREDCARD",$$^W3ENCR(JB_";"_CRCARD))
 I CRCARD[";" D
 .N J,CRCARD1 S CRCARD1="" F J=1:1:$L(CRCARD,";") D
 ..S CRCARD1=CRCARD1_$$^W3ENCR(JB_";"_$P(CRCARD,";",J))_"^"
 .D PUT^W3HZMST(JB,"CREDCARD",$E(CRCARD1,1,$L(CRCARD1)-1))
 Q
 ;
 ;
CRSUM(BGOI,ORDER) ;
 S CRSUM=$$GET(BGOI,"cc_sum",ORDER)
 D PUT^W3HZMST(JB,"CREDSUM",CRSUM)
 Q
 ;
PUTCRSUM(CRSUM,J) ;
 N SUM S SUM=$P($P(CRSUM,"[",J),"]")
 D PUT^W3HZMST(JB,"CREDSUM",SUM)
 Q
 ;
MULTMIN(A,NOM) ;
 N VLO,J S VLO=$P(A,"~",NOM)
 N VLN S VLN="" F J=1:1:$L(VLO,";") S VLN=VLN_-$P(VLO,";",J)_";"
 I $E(VLN,$L(VLN))=";" S VLN=$E(VLN,1,$L(VLN)-1)
 S $P(@TMPORD,"~",NOM)=VLN
 Q 
 ;
MSHPAY(MSHPAY) ; 
 I MSHPAY=4 D  Q
 .S CODTS=4
 .D CRSUM(BGOI,ORDER)
 .D PUT^W3HZMST(JB,"SHULA",CRSUM)
 ;
 I MSHPAY=3!(MSHPAY=5) D
 .S CODTS=3
 .S CRID=$$GET(BGOI,"cc_id",ORDER)
 .I CRID'[";" D PUT^W3HZMST(JB,"CREDTZ",$$^W3ENCR(JB_";"_CRID))
 .
 .I CRID[";" D
 ..N J,CRID1 S CRID1="" F J=1:1:$L(CRID,";") D
 ...S CRID1=CRID1_$$^W3ENCR(JB_";"_$P(CRID,";",J))_"^"
 ..D PUT^W3HZMST(JB,"CREDTZ",$E(CRID1,1,$L(CRID1)-1))
 .
 .D CRCARD(BGOI,ORDER)
 .S CRMM=$$GET(BGOI,"cc_month",ORDER)
 .S CRYY=$$GET(BGOI,"cc_year",ORDER)
 .
 .I CRYY'[";" D
 ..S CRYY=$E(CRYY,3,4)
 ..D PUT^W3HZMST(JB,"CREDMMYY",CRMM_"/"_CRYY)
 .
 .I CRYY[";" D
 ..N J,CRYY1 S CRYY1=""
 ..F J=1:1:$L(CRMM,";") D
 ...S CRYY1=CRYY1_$P(CRMM,";",J)_"/"_$E($P(CRYY,";",J),3,4)_";"
 ..D PUT^W3HZMST(JB,"CREDMMYY",$E(CRYY1,1,$L(CRYY1)-1))
 .S CRCVV2=$$GET(BGOI,"cc_cvv",ORDER)
 .D PUT^W3HZMST(JB,"CREDCVV2",CRCVV2)
 .D CRSUM(BGOI,ORDER)
 ;
 I MSHPAY=11 S CODTS=13 D
 .D CRSUM(BGOI,ORDER)
 ;
 I MSHPAY=12 S CODTS=12 D  ; -- MSH C-A
 .D CRCARD(BGOI,ORDER)
 .D CRSUM(BGOI,ORDER)
 ;
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSL
W3MSL ; [ 12.08.11 14:06 ] [ 22.05.11 18:23 ] [ 26.04.11 17:12 ]
 N (%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
CYC ;
 ;
 D GL
 K @GL
 S %W1LNG="H"
 ;
 S DAT=$ZD($H,"YYMMDD")
 L +^W3MSL(DAT):2
 S K=0
 S ENDSMB=4
 ;
 U 0 S ST=""
 F  R *A Q:A=ENDSMB  D
 .S ST=ST_$C(A)
 .I $C(A)=">" D  S ST=""
 ..D SETST
 ;
 I $L(ST) D SETST
 ;
 L -^W3MSL(DAT)
 ;
 D ^W3MSLORD
 ;
 K @GL
 ;
 S RES=RES_$C(13)
 U $P:(NOWRAP:NOECHO)
 W RES,!,#
 Q
 ;
DCD(A) ;
 N J,B,CHR
 S B="",J=0
DCDC S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 I CHR'=215 D  G DCDC
 .S B=B_$C(CHR)
 S J=J+1 I J>$L(A) G DCDE
 S CHR=$A(A,J)
 S B=B_$C(CHR-16)
 G DCDC
DCDE ;
 Q B
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPMSL(MYDVN,UR)"
 S MYDVN=$J ;$$^%L3MYDVN
 S UR=1
 Q
SETST ;
 I ST="" Q
 N ST1
 S ST1=ST
 I ST["<" S ST1=$P(ST,"<") D SETST1 S ST1="<"_$P(ST,"<",2,200)
 D SETST1
 Q
SETST1 ;
 I ST1="" Q
 N B,C,LI,J
 S LI=$O(^W3MSL(DAT,999999),-1)+1
 S B=$$DCD(ST1)
 S B=$TR(B,$C(13,10),"")
 S K=K+1,@GL@(K)=B
 S ^W3MSL(DAT,LI)=B
 Q

W3MSLORD
W3MSLORD ; [ 04.07.23 16:34 ] [ 01.02.18 13:41 ] [ 08.11.16 10:14 ] 
 ;---- MEMSHAK LE MISHLOHA
 N (%ARG,RES) D GL^W3MSL
 S RES="NOK::"
 S %W1LNG="H"
 ;
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 ;
 S ORDER="mishlohim_order_online"
 S DISHES="order_details"
 S DISHEL="order_item"
 S CHOICES="options"
 S SUBEL="extra"
 S SUBS="extras"
 ;                    GROUP ORDERS -- ????????????????
 S I=0
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 ;;U 0 W A,!
 I A[("<"_ORDER) D
 .S BGSNG=I
 .S JB=$$^%W1SsID("TMSL")
 .K @TMPORD
 .S BGOI=BGSNG
CYCORD .
 .S K=0
 .S ASM=$$GET(BGOI,"order_number",ORDER)
 .S REST=$$GET(BGOI,"rest_id",ORDER) I 'REST S RES="NOREST::"_ASM Q
 .S MSD=$G(^[$$^W3MAIN]W3MSL2M(REST)) Q:MSD=""
 .D PUT^%W1PRM("MSD",MSD)
 .S CITY=$$GET(BGOI,"city",ORDER,"H")
 .S FIRSTNAME=$$GET(BGOI,"first_name",ORDER,"H")
 .S LASTNAME=$$GET(BGOI,"last_name",ORDER,"H")
 .S NAME=FIRSTNAME_" "_LASTNAME
 .S PHONE01=$TR($$GET(BGOI,"phone",ORDER)," ","")
 .I PHONE01="" S RES="NOPHONE::"_ASM
 .S PHONE02="" ;$$GET(BGOI,"Phone02",ORDER) ; ?????????????
 .
 .S CODE=PHONE01
 .D PUT^%W1PRM("CODE",CODE)
 .
 .S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 .
 .S MSLPAY=$$GET(BGOI,"payment_id",ORDER,"H")
 .
 .N CRTIME,DLVTIME,TAWTIME,SHAA0
 .S CRTIME=$$GET(BGSNG,"order_date",ORDER)
 .S SHAA0=$TR($P($P(CRTIME," ",2),":",1,2)," ","")
 .S DLVTIME=$$GET(BGSNG,"estimate_delivery_time",ORDER)
 .S TAWTIME=$$GET(BGSNG,"take_away_time",ORDER)
 .S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 .D
 ..I TAWTIME D  Q
 ...S DAT=$P(TAWTIME," ")
 ...S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ...S SHAA=$TR($P($P(TAWTIME," ",2),":",1,2)," ","")
 ...S CITY="TAKEAWAY"
 ..
 ..I CRTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N.E D  Q
 ...S DAT=$P(CRTIME," ")
 ...S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ...S SHAA=$TR($P($P(CRTIME," ",2),":",1,2)," ","")
 ...I $L(SHAA),DLVTIME S SHAA=$$SHAA($$MIN(SHAA)+DLVTIME) Q
 ...S SHAA=$$SHAA($P($H,",",2)\60+$S(DLVTIME:DLVTIME,1:60))
 ..
 ..I CRTIME?.E2N1":"2N.E D
 ...S DAT=$ZD($H,"DD.MM.YY")
 ...S SHAA=$P(CRTIME,":",1,2)
 ...I DLVTIME,SHAA S SHAA=$$SHAA($$MIN(SHAA)+DLVTIME) Q
 ...S SHAA=$$SHAA($P($H,",",2)\60+$S(DLVTIME:DLVTIME,1:60))
 ..
 .
 .I SHAA="" S SHAA=$$SHAA($P($H,",",2)\60+60)
 .I SHAA<SHAA0 S DAT=$$^%L1DC($$^%L1DC(DAT,3)+1,1)
 .
 .D PUT^W3HZMST(JB,"NAME",NAME)
 .D PUT^W3HZMST(JB,"NMB",CODE)
 .D PUT^W3HZMST(JB,"CODE",CODE)
 .D PUT^W3HZMST(JB,"PELE",PHONE02)
 .D PUT^W3HZMST(JB,"DAT",DAT)
 .D PUT^W3HZMST(JB,"SHAA",SHAA)
 .D PUT^W3HZMST(JB,"DATCB",ZMANK)
 .D PUT^W3HZMST(JB,"HZMLAK",ASM)
 .
 .D PUT^W3HZMST(JB,"MKR",2) ;
 .
 .S CODTS=1
 .S CRCARD="",CRMM="",CRYY=""
 .;
 .I MSLPAY=3 D
 ..S CODTS=3
 ..S CRID=$$GET(BGOI,"cc_id",ORDER)
 ..D PUT^W3HZMST(JB,"CREDTZ",$$^W3ENCR(JB_";"_CRID))
 ..S CRCARD=$$GET(BGOI,"cc_number",ORDER)
 ..S CRCARD=$TR(CRCARD,"ABCDE",12345)
 ..D PUT^W3HZMST(JB,"CREDCARD",$$^W3ENCR(JB_";"_CRCARD))
 ..S CRMM=$$GET(BGOI,"cc_month",ORDER)
 ..S CRYY=$$GET(BGOI,"cc_year",ORDER)
 ..S CRYY=$E(CRYY,3,4)
 ..D PUT^W3HZMST(JB,"CREDMMYY",CRMM_"/"_CRYY)
 ..S CRCVV2=$$GET(BGOI,"cc_cvv",ORDER)
 ..D PUT^W3HZMST(JB,"CREDCVV2",CRCVV2)
 ..
 .D PUT^W3HZMST(JB,"CODTS",CODTS)
 .
 .S STREET=$$GET(BGOI,"street",ORDER,"H")
 .S HOME=$$GET(BGOI,"street_number",ORDER,"HH")
 .S COMMENT=$$GET(BGOI,"address_comments",ORDER,"H")
 .S CMHD=$$GET(BGOI,"order_comment",ORDER,"H") ; ???????????
 .S FLAT=$$GET(BGOI,"apartment",ORDER,"HH")
 .S COMP="" ;;S COMP=$$GET(BGOI,"CompanyName",ORDER) ; ???????
 .S ENTRANCE=$$GET(BGOI,"entrance",ORDER,"H")
 .S FLOOR=$$GET(BGOI,"floor",ORDER,"H")
 .
 .D PUT^W3HZMST(JB,"CITY",CITY)
 .D PUT^W3HZMST(JB,"STREET",STREET)
 .D PUT^W3HZMST(JB,"COMMENT",COMMENT)
 .D PUT^W3HZMST(JB,"HOME",HOME)
 .D PUT^W3HZMST(JB,"FLAT",FLAT)
 .D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 .D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 .D PUT^W3HZMST(JB,"COMP",COMP)
 .D PUT^W3HZMST(JB,"CMHD",ASM_":REST "_CMHD)
 .
 .S DMSH=$$GET(BGOI,"delivery_price",ORDER)
 .S HNH=$$GET(BGOI,"discount",ORDER)
 .S TSHL=$$GET(BGOI,"total_order",ORDER)
 .
 .D PUT^W3HZMST(JB,"DMSH",DMSH) ; ?????????? DIAPASON ???
 .D PUT^W3HZMST(JB,"HNH",HNH)
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 .
 .;;D SENDOK^W3MSL(MSADDR_"/InProcess",MSD) ; ????????????
 .
 .S BGDI=BGOI
CYCD .S BGDI=$$FIND(BGDI,DISHEL,ORDER)
 .I 'BGDI D NEWHZ G CYC
 .;
 .S CD=$$GET(BGDI,"food_id",DISHEL)
 .;;U 0 W "CD="_CD,!
 .D
 ..S NM=$$GET(BGDI,"food_title",DISHEL)
 ..I NM?1N.N1"-".E S NM=$P(NM,"-")_"-"_$$INVH^%L1FRM($P(NM,"-",2,200)) Q
 ..I NM?1N.N1".".E S NM=$P(NM,".")_"."_$$INVH^%L1FRM($P(NM,".",2,200)) Q
 ..S NM=$$INVH^%L1FRM(NM)
 .;;I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S CD=$$CONVCD(CD)
 .S PRC=$$GET(BGDI,"food_price",DISHEL)
 .S QN=1 ;;$$GET(BGDI,"food_qn",DISHEL) ; ?????????
 .S CMNT=$$GET(BGDI,"user_food_comments",DISHEL)
 .S CMNT=$TR(CMNT,"*!","")
 .S CMNT=$$SPA^%L1FRM(CMNT)
 .S CMNT=$$SP1^%L1FRM(CMNT)
 .S MAZMIN="" ;$$GET(BGDI,"AssignedUserName",DISHEL) ; - ?????????
 .I MAZMIN'="" S CMNT=CMNT_"  [ "_MAZMIN_" ]"
 .S K=K+1
 .S @TMPORD@(K)="0~"_CD_"~"_NM_"~"_$J(PRC,2,2)_"~"_QN_"~~"_$$INVH^%L1FRM(CMNT)
 .
 .S BGSI=BGDI
CYCSUBS .S BGSI=$$FIND(BGSI,SUBEL,DISHEL)
 .I 'BGSI S BGDI=$$FINDEND(BGDI,DISHEL,ORDER) G CYCD
 .;
 .S CD=$$GET(BGSI,"extra_id",SUBEL)
 .;;U 0 W "CDEX="_CD,!
 .S NM=$$GET(BGSI,"extra_title",SUBEL)
 .;;I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S CD=$$CONVCD(CD)
 .S PRC=$$GET(BGSI,"extra_price",SUBEL)
 .S QN=1
 .S K=K+1
 .S @TMPORD@(K)="1~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN
 .S BGSI=$$FINDEND(BGSI,SUBEL,DISHEL)
 .G CYCSUBS
 ;
 G CYC
END Q
 ;
GET(I,EL,PARENT,PRHB)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(IND+1,EL,$G(PRHB))
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J ;;+1
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL,PR) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 I A["<![CDATA[" S A=$P($P(A,"<![CDATA[",2),"]]")
 S ZN=A
 I A[("<"_EL) D
 .S ZN=$P(A,"<"_EL_">",2)
 .S ZN=$P(ZN,"</"_EL_">")
 ;
 S ZN=$P(ZN,"</")
 ;
 S ZN=$$REG(ZN)
 S ZN=$$SPA^%L1FRM(ZN)
 I ZN="UNDEFINED" Q ""
 I $G(PR)="H" D
 .S ZN=$$INVH^%L1FRM(ZN)
 I $G(PR)="HH",ZN'?.E1N.N.E D
 .S ZN=$$INVH^%L1FRM(ZN)
 Q ZN
 ;
NEWHZ ;
 S MEMSHAK=""
 D TERM^W3ORDVW
 S RES="OK:"_JB_":"_$G(ASM)
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CD(TXT,CD) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ")
 I TXT?1N.N1".".E Q $P(TXT,".")
 Q "0-"_CD
 ;
DESC(TXT) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ",2,20)
 I TXT?1N.N1".".E Q $P(TXT,".",2,20)
 Q TXT
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 S TXT=$TR(TXT,"`","'")
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
CDTXT(STAM) ;
 Q 1
 ;I MSD=1!(MSD=99999) Q 1
 Q 0
 ;
CONVCD(CD) ;
 I CD="" Q 0
 I $P(CD,"=",2) S CD=$P(CD,"=",2) Q CD
 Q "0-"_$P(CD,"=")
 ;
SHAA(MIN) ;
 S MIN=MIN#(24*60)
 Q $TR($J(MIN\60,2)," ",0)_":"_$TR($J(MIN#60,2)," ",0)
 ;
MIN(SHAA) ;
 S SHAA=$$SPA^%L1FRM(SHAA)
 Q SHAA*60+$P(SHAA,":",2)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MSLPIC
W3MSLPIC(JB) ; [ 11.10.11 16:27 ] [ 21.06.10 10:26 ] [ 20.06.10 23:11 ]
 N (JB,%ARG,%REM)
 ;
 D TMP K @TMP S SH=0,SHSY=0
 ;
 S W3MSLPIC=""
 S MSD=$$GET^%W1PRM("MSD") Q:'MSD
 D TRNPIC^W3TRM
 ;
 D PUT^%W1PRM("ENDSENDING",1)
 Q
 ;
 ;
W(TXT,COLOR,DIR) ;
 I '$D(DIR) S DIR=$$^%W1DIR
 N A
 S A="<div dir="""_DIR_""" style=""text-align:center;"_$$FONTFM^W3CSS
 I $L($G(COLOR)) S A=A_";color:"_COLOR
 S A=A_""">"
 S A=A_"<h2" N PRM S PRM=""
 S A=A_">"
  I $E(TXT,1,2)="<>" S A=A_$E(TXT,3,$L(TXT))
  E  D
  .I TXT[";" S PRM=$P(TXT,";",2,20)
  .S A=A_$$^%W1DICT($P(TXT,";"),PRM)
 S A=A_"</h2>"
 S A=A_"</div>"
 D TMP S SH=SH+1,@TMP@(SH)=A
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
SPACE(COUNT) ;
 D TMP
 N I F I=1:1:COUNT S SH=SH+1,@TMP@(SH)="<br>"
 Q
 ;
ZSY(CMD) ;
 ZSY CMD
 D W("<E>"_CMD_"  $ZSY="_$ZSY_"<E>","black")
 S SHSY=SHSY+1
 Q

W3MSORD
W3TBORD(UR,MSD,TBADDR) ; [ 05.02.26 12:48 ] [ 05.11.10 19:03 ] [ 16.03.10 11:19 ] 
 N (UR,MSD,TBADDR)
 D MYDVN^W3TB
 S GL="^[$$^W3MAIN]TMPBIS(MYDVN,UR)"
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 S SING="GetSingleOrderResponseMsg"
 S ORDER="Order"
 S DISHES="Dishes"
 S DISHEL="DishElement"
 S CHOICEL="ChoiceElement"
 S SUBEL="SubElement"
 S SUBS="Subs"
 ;
 S I=0
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 I A[("<"_SING) D
 .S BGSNG=I
 .S SUCCESS=$$GET(BGSNG,"Success",SING)
 .I SUCCESS="eurt" S SUCCESS="true"
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" S I=$$FINDEND(BGSNG,SING,"") Q
 .S JB=$$^%W1SsID("TBIS")
 .D PUT^%W1PRM("MSD",MSD)
 .S BGOI=BGSNG
CYCORD .S BGOI=$$FIND(BGOI,ORDER,SING)
 .I 'BGOI S I=$$FINDEND(BGSNG,SING,"") Q
 .S K=0
 .S ADDR=$$GET(BGOI,"AddressLine",ORDER)
 .;;S CITY=$$SPA^%L1FRM($P(ADDR,",",$L(ADDR,",")))
 .S CITY=$$SPA^%L1FRM($P($P(ADDR,",",2),"."))
 .S NAME=$$GET(BGOI,"Name",ORDER)
 .S PHONE01=$$GET(BGOI,"Phone01",ORDER)
 .S PHONE02=$$GET(BGOI,"Phone02",ORDER)
 .S CODE=$S(PHONE01:PHONE01,1:PHONE02)
 .I CODE="",MSD=1!(MSD=99999) S CODE="101010"
 .D PUT^%W1PRM("CODE",CODE)
 .S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 .S ASM=$$GET(BGOI,"OrderID",ORDER)
 .S TNBPAY=$$GET(BGOI,"TenBisPayment",ORDER)
 .
 .S TOTIME=$$GET(BGSNG,"DesiredDeliveryTime",SING)
 .D
 ..S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 ..I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N1":"2N.E D  Q
 ...S DAT=$P(TOTIME," ")
 ...S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ...S SHAA=$P($P(TOTIME," ",2),":",1,2)
 ..I TOTIME?.E2N1":"2N1":"2N.E D
 ...S DAT=$ZD($H,"DD.MM.YY")
 ...S SHAA=$P(TOTIME,":",1,2)
 .I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800 D
 ..S SHAA=$$TM^W3TIME($H,CITY)
 .
 .D PUT^W3HZMST(JB,"NAME",$$INVH^%L1FRM(NAME))
 .D PUT^W3HZMST(JB,"NMB",CODE)
 .D PUT^W3HZMST(JB,"CODE",CODE)
 .D PUT^W3HZMST(JB,"PELE",PHONE02)
 .D PUT^W3HZMST(JB,"DAT",DAT)
 .D PUT^W3HZMST(JB,"SHAA",SHAA)
 .D PUT^W3HZMST(JB,"DATCB",ZMANK)
 .D PUT^W3HZMST(JB,"HZMLAK",ASM)
 .D PUT^W3HZMST(JB,"MKR",10)
 .D PUT^W3HZMST(JB,"CODTS",7)
 .D PUT^W3HZMST(JB,"TNBPAY",$G(TNBPAY))
 .
 .;S ADDR=$$GET(BGOI,"AddressLine",ORDER)
 .;S CITY=$P(ADDR,",",$L(ADDR,","))
 .S ADDR=$$SPA^%L1FRM($P(ADDR,",",1,$L(ADDR,",")-1))
 .S HOME=$P(ADDR," ",$L(ADDR," ")) I 'HOME S HOME=""
 .I HOME S ADDR=$P(ADDR," ",1,$L(ADDR," ")-1)
 .S STREET=ADDR
 .S COMMENT=$$GET(BGOI,"AddressRemarks",ORDER)
 .S CMHD=$$GET(BGOI,"OrderRemarks",ORDER)
 .S FLAT=$$GET(BGOI,"ApartamentNumber",ORDER)
 .S COMP=$$GET(BGOI,"CompanyName",ORDER)
 .S ENTRANCE=$$GET(BGOI,"Entrance",ORDER)
 .S FLOOR=$$GET(BGOI,"Floor",ORDER)
 .
 .D PUT^W3HZMST(JB,"CITY",$$INVH^%L1FRM(CITY))
 .D PUT^W3HZMST(JB,"STREET",$$INVH^%L1FRM(STREET))
 .D PUT^W3HZMST(JB,"COMMENT",$$INVH^%L1FRM(COMMENT))
 .D PUT^W3HZMST(JB,"HOME",HOME)
 .D PUT^W3HZMST(JB,"FLAT",FLAT)
 .D PUT^W3HZMST(JB,"FLOOR",$$INVH^%L1FRM(FLOOR))
 .D PUT^W3HZMST(JB,"ENTRANCE",$$INVH^%L1FRM(ENTRANCE))
 .D PUT^W3HZMST(JB,"COMP",$$INVH^%L1FRM(COMP))
 .D PUT^W3HZMST(JB,"CMHD",ASM_":10B "_$$INVH^%L1FRM(CMHD))
 .
 .D SENDOK^W3TB(TBADDR_"/InProcess",MSD)
 .
 .S BGDI=BGOI
CYCD .S BGDI=$$FIND(BGDI,DISHEL,ORDER)
 .I 'BGDI S BGOI=$$FINDEND(BGOI,ORDER,SING) D NEWHZ G CYCORD
 .
 .S CD=$$GET(BGDI,"DishID",DISHEL)
 .S NM=$$GET(BGDI,"DishName",DISHEL)
 .I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S PRC=$$GET(BGDI,"DishPrice",DISHEL)
 .S QN=$$GET(BGDI,"NumOfDishes",DISHEL)
 .S CMNT=$$GET(BGDI,"Remarks",DISHEL)
 .S CMNT=$TR(CMNT,"*!","")
 .S CMNT=$$SPA^%L1FRM(CMNT)
 .S SMNT=$$SP1^%L1FRM(CMNT)
 .S MAZMIN=$$GET(BGDI,"AssignedUserName",DISHEL)
 .I MAZMIN'="" S CMNT=CMNT_"  [ "_MAZMIN_" ]"
 .S K=K+1
 .S @TMPORD@(K)="0~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN_"~~"_$$INVH^%L1FRM(CMNT)
 .S BGCHI=BGDI
CYCCH .S BGCHI=$$FIND(BGCHI,CHOICEL,DISHEL)
 .I 'BGCHI S BGDI=$$FINDEND(BGDI,DISHEL,ORDER) G CYCD
 .
 .S BGCHID=$$FIND(BGCHI,"ChoiceID",DISHEL)
 .I 'BGCHID S BGCHI=$$FINDEND(BGCHI,CHOICEL,DISHEL) G CYCCH
 .
 .S CHID=$$GETVL(BGCHID,"ChoiceID")
 .S DESC=$$GETVL(BGCHI+1,"Desc")
 .I CHID,DESC'="" D
 ..S K=K+1
 ..I $$CDTXT S CHID=$$CD(DESC,CHID),DESC=$$DESC(DESC)
 ..S @TMPORD@(K)="0~"_CHID_"~"_$$INVH^%L1FRM(DESC)_"~~~~"
 .S BGSI=BGCHI
CYCSUBS .S BGSI=$$FIND(BGSI,SUBEL,CHOICEL)
 .I 'BGSI S BGCHI=$$FINDEND(BGCHI,CHOICEL,DISHEL) G CYCCH
 .S CD=$$GET(BGSI,"SubID",SUBEL)
 .S NM=$$GET(BGSI,"Desc",SUBEL)
 .I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .S PRC=$$GET(BGSI,"Price",SUBEL)
 .S QN=1
 .S K=K+1
 .S @TMPORD@(K)="1~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN
 .S BGSI=$$FINDEND(BGSI,SUBEL,CHOICEL)
 .G CYCSUBS
 ;
 G CYC
END Q
 ;
GET(I,EL,PARENT)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(+IND,EL)
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 S ZN=$$REG(ZN)
 Q $$SPA^%L1FRM(ZN)
 ;
NEWHZ ;
 D TERM^W3ORDVW
 ;;S ^[$$^W3MAIN]W3TBORD(ASM,JB)=MSD_";"_$ZD($H,"DD.MM.YY  24:60")
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CD(TXT,CD) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ")
 I TXT?1N.N1".".E Q $P(TXT,".")
 Q "0-"_CD
 ;
DESC(TXT) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ",2,20)
 I TXT?1N.N1".".E Q $P(TXT,".",2,20)
 Q TXT
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 ;
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,"`","'")
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
CDTXT(STAM) ;
 Q 1
 ;I MSD=1!(MSD=99999) Q 1
 Q 0
 

W3MSPRT
W3MSPRT ; [ 05.08.23 18:15 ] [ 02.12.21 12:31 ] [ 10.07.19 13:19 ] 
 N (JB,%ARG,SRCH)
 D GL
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3MSPRT","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 ;
 W $$^W4DVTBFX("94%"),!
 W "<div align=""center"" >",!
 ;;W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("ITEMSTABLE")_"</span>",!
 D CHECKALL^W3KVPRT("")
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""13%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""13%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 I '$L($G(SRCH)),$G(%ARG("KV")),$$MSG^W4MUCHIT(%ARG("KV")) Q
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .I $D(@$$^W4MAIN("TMPPAR")@(N)) Q
 .S SUG=$$SUG^W4P(N)
 .I $G(%ARG("KV")),%ARG("KV")'=SUG Q
 .I $G(%ARG("KV"))="NO",SUG Q
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .W "<tr id=""trprt"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$J($$MH^W4P(N),2,2)_"&nbsp;</td>"
 .
 .N ID,PROC S ID="chprt"_N
 .S PROC="OnClickTbl('"_N_"','TblPrt','trprt','chprt')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GL ;
 S GL=$$^W4GL("PAR")
 Q
SUG(PAR) D GL
 Q $P(@GL@(PAR),"**",5)
 ;
SUG1(PAR) D GL
 N SUG S SUG=$$SUG(PAR)
 I 'SUG Q $$^%W1DICT("NOGROUP")
 Q $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(SUG)))
 
 
 
 
 
 

W3MVC
W3MVC ; [ 08.09.25 05:14 ] [ 20.11.24 03:14 ] [ 19.11.24 12:58 ] 
 ;
ADDMVC2ITEMS(PRM) ;
 I $G(@$$^W4GL("W3MVC")@(2))=1 Q $$ADDMVC2($G(PRM))
 ;
 N I,N,A,ST,LAST,OK,NMMVC S OK=0
 F I=1:1:$L(PRM,";")-1 D
 .S N=$P(PRM,";",I) Q:'N 
 .S A=$G(@$$^W4GL("W3MVC")@(2,N))
 .S ST=$$STMTN(A) Q:ST=""
 .I '$$^W6 S $P(ST,"~",7-1)=$$TV^%W1DICT($$^%W1LNG,"SALEPERSUM")
 .S $P(ST,"~",17-1)="MVC2"
 .S LAST=$O(@$$^W4TMPORD@(99999),-1)+1
 .S @$$^W4TMPORD@(LAST)="0~"_ST,OK=1
 ;
 S @$$^W4TMPORD@("MVC2")=$H
 Q OK
 ;
 ;
ADDMVC2(PRM) ; --- HOSAFA PARIT EHAD OTOMATIT
 N (PRM,JB,%ARG,%REM)
 S TOTORD=$$TOTORD^W4GETSUM(JB)
 S RES=$$MVC2(TOTORD)
 I RES="<PUSTO>" Q 0
 S RES="0~"_RES
 D SETMVC^W3ST("RES","MVC2")
 S LAST=$O(@$$^W4TMPORD@(99999),-1)+1
 S @$$^W4TMPORD@(LAST)=RES
 I '$D(@$$^W4TMPORD@("MVC2")) S ^("MVC2")=$H
 Q 1
 ;
 ;
MVC2(PRM) ;
 N (PRM,JB,%ARG,%REM)
 D GL
 S OK=0,MVC=2,VL="<PUSTO>"
 S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0,$$CLOSE^W4HZMST(HZM) Q VL
 ;
 S SUMORD=$P(PRM,";")
 ;
 S DT=$S($$^W4ELPOS:$$^W4DZ,1:+$H)
 S NMB=$$GETP^%W1PRM("NMB")
 ;
 ;;I $D(@$$^W4TMPORD@("MVC2")) Q VL  ; -- ?
 I $$GETP^%W1PRM("WASMVC2") Q VL
 ;
 S N="" F  S N=$O(@GL@(MVC,N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)),SUMMVC=$$GET2("SUMMVC",A)
 .S DAT1=$$GET2("DAT1",A),DT1=$$^%L1DC(DAT1,3)
 .S DAT2=$$GET2("DAT2",A),DT2=$$^%L1DC(DAT2,3)
 .S THUM=$$GET2("THUM",A)
 .I $G(NMB),$$^W4MSL(NMB),THUM=1 Q
 .I $G(NMB),$$^W4MSD(NMB),THUM=2 Q
 .I $G(DT),DT1>DT Q
 .I $G(DT),DT2<DT Q
 .I SUMORD<SUMMVC Q
 .S VL=$$STMTN(A)
 .S OK=1
 ;
 I VL="<PUSTO>" D CLRMVC2
 D TESTMVC2
 I $$WASMVC2 Q "<PUSTO>"
 Q VL
 ;
 ;
GL ;
 S GL=$$^W4GL("W3MVC")
 Q
 ;
GET2(RKVZ,STR) ;
 N STR2,J,VL
 S STR2="DAT1\DAT2\SUMMVC\CDMTN\NMMTN\MHMTN\KAMMTN\THUM\ISHUR"
 S VL=""
 F J=1:1:$L(STR,"\")  S RKV=$P(STR2,"\",J) I RKV=RKVZ S VL=$P(STR,"\",J) S OK=1 Q
 I RKVZ="NMMTN" D
 .N CD S CD=$$GET2("CDMTN",STR) Q:CD=""
 .S VL=$$SHEM^W3P(CD)
 Q VL
 ;
WASMVC2(STAM) ;
 Q $D(@$$^W4TMPORD@("MVC2"))
 ;
CLRMVC2 ;
 N I F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .I $$MVC2^W3HZMST(JB,I) D DELROW^W3HZORD("LV0"_I)
 K @$$^W4TMPORD@("MVC2")
 Q
 ;
TESTMVC2 ;
 N OK S OK=0
 N I F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D  Q:OK
 .I $$MVC2^W3HZMST(JB,I) S OK=I
 I OK,'$D(@$$^W4TMPORD@("MVC2")) S ^("MVC2")=$H
 Q
 ;
TESTCOUP ;
 N OK,MVC S OK=0,MVC=""
 N I F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D  Q:OK
 .S MVC=$$MVC^W3HZMST(JB,I)
 .I MVC["COUP:" S OK=1
 I 'OK D
 .N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N["COUP:" K ^(N)
 ;
 I OK,'$D(@$$^W4TMPORD@(MVC)) S ^(MVC)=$H
 Q
 ;
 ;
COUP(STAM) ;
 N (JB,%ARG,%REM)
 ;
 S LKH=$$CODE^W3HZMST(JB)
 I LKH?.P S LKH=$$GET^%W1PRM("CODE")
 S LKH=$TR(LKH,"~!$-.","")
 ;I 'LKH Q 0
 ;
 S OK=0
 S MVC="" F  S MVC=$O(@$$^W4GL("W3COUP")@(MVC)) Q:MVC=""  D  Q:OK
 .I '$D(@$$^W4GL("W3COUP")@(MVC)) Q
 .I MVC'=$$GET^%W1PRM("COUP") Q
 .I $G(LKH),$D(@$$^W4GL("W3COUP")@(MVC,LKH)) Q
 .I $D(@$$^W4TMPORD@("COUP:"_MVC)) Q
 .S DAT1=$$GETDAT1(MVC)
 .S DAT2=$$GETDAT2(MVC)
 .S DT1=$$^%L1DC(DAT1,3)
 .S DT2=$$^%L1DC(DAT2,3)
 .I DT1,$H<DT1 Q
 .I DT2,$H>DT2 Q
 .S OK=1
 ;
 I 'OK Q 0
 Q OK_";COUP:"_MVC
 ;
 ;
ADDCOUP(PRM)
 N MVC,CDMVC
 D PUT^%W3DEB("W3MVC-ADDCOUP","PRM=PRM")
 S MVC=$P(PRM,";")
 I MVC["COUP:" S MVC=$P(MVC,":",2)
 ;
 I MVC="" Q "0;NOTSALE"
 ;
 S CDMVC=$$CNWEB^%L1FRM($P(PRM,";",2))
 ;
 I MVC="SHOPS",$$INVH^%L1FRM(CDMVC)'="qtey" Q "0;SALECODEISWRONG"
 ;
 N LKH S LKH=$$GET^%W1PRM("CODE")
 I 'LKH!(LKH["!") Q "0;ENTERASMEMBERFORSALE"
 ;
 N T,AHN,MIN,MAX,HN,CD,NM,TXT
 S T=$$TOTORD^W3HZMST(JB)
 ;
 S AHN=$$GETAHN(MVC)
 S MAX=$$GETMAX(MVC)
 S MIN=$$GETMIN(MVC)
 I T<MIN Q "0;PRICEMIN;"_MIN
 S CD=$$GETCD(MVC)
 I 'CD Q "0;NOTSALEITEMCODE"
 S NM=$$SHEM^W3P(CD)
 I NM="" Q "0;NOTSALEITEMNAME"
 I 'AHN Q "0;NOTSALEDISCOUNT"
 ;
 S HN=T*AHN*.01
 I HN>MAX S HN=MAX
 N TXT S TXT="0~"_CD_"~"_NM_"~"_(-$J(HN,2,2))_"~1~"_(-$J(HN,2,2))
 S $P(TXT,"~",17)="COUP:"_MVC
 D STADD^W3HZORD(TXT)
 S @$$^W4TMPORD@("COUP:"_MVC)=$H
 Q 1
 ;
GLCOUP(MVC) ;
 I $G(MVC)="" Q ""
 I MVC["COUP:" S MVC=$P(MVC,":",2)
 Q $G(@$$^W4GL("W3COUP")@(MVC))
 ;
GETDAT1(MVC) ;
 N A S A=$$GLCOUP(MVC) I A="" Q ""
 I MVC="SHOPS" Q $P(A,"\")
 Q ""
 ;
GETDAT2(MVC) ;
 N A S A=$$GLCOUP(MVC) I A="" Q ""
 Q $P(A,"\",2)
 ;
GETCD(MVC) ;
 N A S A=$$GLCOUP(MVC) I A="" Q ""
 Q $P(A,"\",3)
 ;
GETHD(MVC) ;
 N A S A=$$GLCOUP(MVC) I A="" Q ""
 Q $P(A,"\",4)
 ;
GETAHN(MVC) ;
 N A S A=$$GLCOUP(MVC) I A="" Q ""
 Q $P(A,"\",5)
 ;
GETMAX(MVC) ;
 N A S A=$$GLCOUP(MVC) I A="" Q ""
 Q $P(A,"\",6)
 ;
GETMIN(MVC) ;
 N A S A=$$GLCOUP(MVC) I A="" Q ""
 Q $P(A,"\",7)
 ;
SETHZMVC2(ST,VL) ;
 S $P(ST,"~",17)=VL 
 Q
 ;
GETHZMVC2(ST) ;
 Q $P(ST,"~",17)
 ;
 ;
STMTN(A) ; 
 N ST 
 S ST=$$GET2("CDMTN",A)_"~"_$$CLWEB^%L1FRM($$GET2("NMMTN",A))
 N MHMTN S MHMTN=$$GET2("MHMTN",A)
 N KAMMTN S KAMMTN=$$GET2("KAMMTN",A)
 I KAMMTN,MHMTN'["%" S MHMTN=$J(MHMTN/KAMMTN,5,5)
 ;
 I MHMTN["%" D
 .S MHMTN=$$TOTORD^W4GETSUM(JB)*MHMTN*.01
 .I MHMTN>0 S MHMTN=-MHMTN
 .S MHMTN=$J(MHMTN,2,2)
 .S KAMMTN=1
 ;
 S ST=ST_"~"_MHMTN_"~"_KAMMTN
 Q ST 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MVC0
W3MVC ; [ 24.09.10 18:26 ] [
 ;
MVC2(PRM) ;
 N (PRM,JB,%ARG,%REM)
 S SUMORD=$P(PRM,";")
 S LKH=$P(PRM,";",2)
 S DT=+$H
 S HR=$$T^%L1TIME($H)
 D GL S OK=0,MVC=2,VL="<PUSTO>"
 S N="" F  S N=$O(@GL@(MVC,N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)),SUMMVC=$$GET2("SUMMVC",A)
 .S DAT1=$$GET2("DAT1",A),DT1=$$^%L1DC(DAT1,3)
 .S DAT2=$$GET2("DAT2",A),DT2=$$^%L1DC(DAT2,3)
 .S MEYOM=$$GET2("MEYOM",A)
 .S ADYOM=$$GET2("ADYOM",A)
 .S MESHAA=$$GET2("MESHAA",A)
 .S ADSHAA=$$GET2("ADSHAA",A)
 .I $G(DT),DT1>DT Q
 .I $G(DT),DT2<DT Q
 .S YOM=""
 .I $G(DT) S YOM=$$^%L1DC(DT,8)
 .I YOM,MEYOM,YOM<MEYOM Q
 .I YOM,ADYOM,YOM>ADYOM Q
 .I $G(HR)<MESHAA Q
 .I ADSHAA,$G(HR)'<ADSHAA Q
 .S SUGLKH=$$GET2("SUGLKH",A)
 .I $G(LKH),SUGLKH,SUGLKH'=$$SUGL^W3L(LKH) Q
 .I SUMORD<SUMMVC Q
 .S VL=$$GET2("CDMTN",A)_"~"_$$GET2("NMMTN",A)_"~"_$$GET2("MHMTN",A)_"~"_$$GET2("KAMMTN",A)
 Q VL
 ;
GL ;
 S GL=$$^W4GL("P1MVC")
 Q
 ;
GET2(RKVZ,STR) ;
 N STR2,J,VL
 S STR2="DAT1\DAT2\SUMMVC\CDMTN\NMMTN\MHMTN\KAMMTN\MEYOM\ADYOM\MESHAA\ADSHAA\SUGLKH"
 S VL=""
 F J=1:1:$L(STR,"\")  S RKV=$P(STR2,"\",J) I RKV=RKVZ S VL=$P(STR,"\",J) S OK=1 Q
 Q VL

W3MVCHZG
W3MVCHZG ; [ 30.10.10 08:06 ] [ 28.03.08 20:25 ] [ 24.03.08 06:12 ]
 N (JB,%ARG)
 ;;W "JB="_$G(JB),!
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W3MVCHZG","JB=JB & MSD=MSD & %ARG=[%ARG")
 W "<div align=""center"">",!
 W "<br /><br />",!
 W "<table id=""TblMvc"" border=""0"" width=""80%"" dir="""_$$^%W1DIR_""" style=""background-color:white;color:black"">"
 S GL=$$^W4GL("W3MVC")
 S LI=$O(@GL@(1,99999),-1)
 S PR=0
 S N="" F  S N=$O(@GL@(1,N)) Q:N=""  D
 .N A S A=$G(^(N)) Q:A=""
 .Q:$D(^(N,"NOSHOW"))
 .S MEDAT=$$MEDAT(A)
 .S ADDAT=$$ADDAT(A)
 .S MEDT=$$^%L1DC(MEDAT,3)
 .S ADDT=$$^%L1DC(ADDAT,3)
 .I $H<MEDT!($H>ADDT) Q
 .D SHOWMVC(N,A) S PR=1
 ;;W "<tr><td>&nbsp;</td></tr>",!
 W "</table>",!
 W "</div>",!
 Q
SHOWMVC(N,MVC1) ;
 S QN=$$QN(MVC1)
 S NM=$$H2U^%L1FRM($$NM(MVC1))
 S MH=$J($$MH(MVC1),2,2)
 I $G(PR) W "<tr height=""5px""><td colspan=""6""><hr></td></tr>",!
 W "<tr>",!
 W " <td style=""font-size:"_$$^W3FSZ(24)_";color:red;text-align:center"" width=""10%"">"_QN_"</td>",!
 W " <td style=""font-size:"_$$^W3FSZ(20))";color:blue"" width=""42%"">"_NM_"</td>",!
 W " <td style=""font-size:"_$$^W3FSZ(24)_";color:red"" width=""10%"">"_MH_"</td>",!
 W " <td width=""33px""><img src=""w3nis.jpg""></td>",!
 W " <td style=""font-size:"_$$^W3FSZ(24)_";color:red;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""" width=""8%"" >"_$$^%W1DICT("ONLY")_"</td>",!
 W " <td width=""132px"" dir=""LTR"" valign=""center"" ><img src="""_$$GETPIC(N)_""" width=""130px"" height=""80px"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""" />&nbsp;</td>",!
 W "</tr>",!
 Q
QN(TX) Q $P(TX,"~")
 ;
NM(TX) Q $P(TX,"~",2)
 ;
MH(TX) Q $P(TX,"~",3)
 ;
MEDAT(TX) Q $P(TX,"~",4)
 ;
ADDAT(TX) Q $P(TX,"~",5)
 ;
GETPIC(N) S PRE="mvc"
 S MSD=$$GET^%W1PRM("MSD")
 N PIC S PIC=$P($$GETPIC^W3ENTER(N),"~",2)
 Q PIC

W3MVCIDK
W3MVCIDK ; [ 29.10.08 14:54 ] [ 28.03.08 20:27 ] [ 23.03.08 21:54 ]
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 W "<div align=""center"" >",!
 W "<table id=""TblMvc"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""90%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""4%"">&nbsp;</th>"
 W "<th width=""6%"">"_$$^%W1DICT("SALECODE")_"</th>"
 W "<th width=""6%"">"_$$^%W1DICT("QUANT")_"</th>"
 W "<th width=""30%"">"_$$^%W1DICT("SALENAME")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""100px"">"_$$^%W1DICT("PICTURE")_"</th>"
 W "<th width=""12%"">"_$$^%W1DICT("FROMDATE")_"</th>"
 W "<th width=""12%"">"_$$^%W1DICT("UNTILDATE")_"</th>"
 W "<th>"_$$^%W1DICT("ITEMSHOW")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 N N,I
 S N="",I=0 F  S N=$O(@$$^W4GL("W3MVC")@(1,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .W "<tr>" S I=I+1
 .
 .W "<td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" onClick=""InsertRow('"_N_"')""> + </span><br /><span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" onClick=""DeleteRow('"_N_"')"" > - </span></td>"
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td><input type=""text"" id=""qn"_N_""" size=""2"" maxlength=""2"" onChange=""OnChange('"_N_"')"" value="""_$$QN(N)_"""/></td>"
 .
 .W "<td align=""center"">&nbsp;<input id=""name"_N_""" type=""text"" size=""24"" maxlength=""24"" value="""_$$H2U^%L1FRM($$NAME(N))_""" onChange=""OnChange('"_N_"')"" />&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""text"" id=""mh"_N_""" size=""7"" maxlength=""7"" value="""_$J($$MH(N),2,2)_""" onChange=""OnChange('"_N_"')"" /></td>"
 .
 .W "<td onClick=""Upload('"_N_"',event)"" ><img src="""_$$PIC(N)_""" width=""100"" height=""67"" /></td>"
 .
 .W "<td align=""center"" dir=""LTR"">" S %W1DAT("CHANGE")="OnChange("_N_")" D ^%W1DAT("MEDAT"_N,$$MEDAT(N),"") W "</td>",!
 .
 .W "<td align=""center"" dir=""LTR"">" S %W1DAT("CHANGE")="OnChange("_N_")" D ^%W1DAT("ADDAT"_N,$$ADDAT(N),"") W "</td>",!
 .
 .N CHECKED,DIS
 .S CHECKED=1,DIS=0
 .I $D(@$$^W4GL("W3MVC")@(1,N,"NOSHOW")) S CHECKED=0,DIS=0
 .W "<td align=""center""><input name=""show"" type=""checkbox"" id=""show"_N_""""
 .I CHECKED W " checked=""checked"""
 .I DIS W " disabled=""disabled"" "
 .W " onClick=""OnChange('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center""><input name=""chn"" id=""chn"_N_""" type=""checkbox"" disabled=""disabled"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 S CD=$P(PRM,"~")
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) D  Q 1
 .K ^[$$^W3MAIN]TMPDEL(JB,CD)
 .K @$$^W4GL("W3MVC")@(1,CD)
 ;
 S QN=$P(PRM,"~",2)
 S NM=$$CNWEB^%L1FRM($P(PRM,"~",3))
 S MH=$J($P(PRM,"~",4),2,2)
 S MEDAT=$P(PRM,"~",5)
 S ADDAT=$P(PRM,"~",6)
 S SHOW=$P(PRM,"~",7)
 S $P(@$$^W4GL("W3MVC")@(1,CD),"~")=QN
 S $P(@$$^W4GL("W3MVC")@(1,CD),"~",2)=$S($$^%W1DIR="RTL":$$INVH^%L1RM(NM),1:NM)
 S $P(@$$^W4GL("W3MVC")@(1,CD),"~",3)=$J(MH,2,2)
 S $P(@$$^W4GL("W3MVC")@(1,CD),"~",4)=MEDAT
 S $P(@$$^W4GL("W3MVC")@(1,CD),"~",5)=ADDAT
 I 'SHOW S @$$^W4GL("W3MVC")@(1,CD,"NOSHOW")=""
 I SHOW K @$$^W4GL("W3MVC")@(1,CD,"NOSHOW")
 Q 1
 ;
SAVEND K ^[$$^W3MAIN]TMPLAST(JB)
 K ^[$$^W3MAIN]TMPDEL(JB)
 Q
 ;
DELROW(CD) ;
 Q:'$G(JB)
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) K ^(CD) Q
 S ^[$$^W3MAIN]TMPDEL(JB,CD)=$G(@$$^W4GL("W3MVC")@(1,CD))
 Q
NEWCOD(STAM) ;
 N A S A=$O(@$$^W4GL("W3MVC")@(1,9999999),-1)+1
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
NAME(CD) ;
 N A S A=$$ST(CD)
 Q $P(A,"~",2)
QN(CD) ;
 N A S A=$$ST(CD)
 Q $P(A,"~",1)
MH(CD) ;
 N A S A=$$ST(CD)
 Q $P(A,"~",3)
MEDAT(CD) ;
 N A S A=$$ST(CD)
 Q $P(A,"~",4)
ADDAT(CD) ;
 N A S A=$$ST(CD)
 Q $P(A,"~",5)
ST(CD) Q $G(@$$^W4GL("W3MVC")@(1,CD))
 ;
PIC(CD) N A,A1
 S A=$$WEB^W3MAIN_$$GET^%W1PRM("MSD")_"/itp/mvc"_CD_".jpg"
 S A1=$$WEBL^W3MAIN_$$GET^%W1PRM("MSD")_"/itp/mvc"_CD_".jpg"
 I $$^%L1ZOS(10,A1)<0 S A=$$WEB^W3MAIN_$$GET^%W1PRM("MSD")_"/itp/mvclogo.jpg"
 Q A

W3MVCS
W3MVCS ; [ 03.09.25 09:17 ] [ 02.09.25 07:52 ] [ 10.08.25 12:43 ] 
 N (JB,%ARG,SRCH)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB) W " JB number is not defined ! " Q
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;;D CHOICE
 ;
 W "<table id=""TblMvc"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th width=""3%"">&nbsp;</th>"
  W "<th width=""14%"">"_$$^%W1DICT("MEDATE")_"</th>"
  W "<th width=""14%"">"_$$^%W1DICT("ADDATE")_"</th>"
  I '$$LKM W "<th width=""10%"">"_$$^%W1DICT("ORDERSUM")_"</th>"
  I $$LKM W "<th width=""10%"">"_$$^%W1DICT("SALETOT")_"</th>"
  W "<th width=""11%"">"_$$^%W1DICT("PRIZECODE")_"</th>"
  W "<th width=""23%"">"_$$^%W1DICT("PRIZENAME")_"</th>"
  W "<th width=""6%"">"_$$^%W1DICT("QUANT")_"</th>"
  W "<th width=""7%"">"_$$^%W1DICT("COST")_"</th>"
  W "<th width=""7%"">"_$$^%W1DICT("SALEPRICE")_"</th>"
  W "<th width=""7%"">"_$$^%W1DICT("SALERANGE")_"</th>"
  W "<th width=""7%"">"_$$^%W1DICT("CHOICEAUTO")_"</th>"
 W "</tr>",!
 N N,I
 ;
 S N="",I=0 F  S N=$O(@$$GLMVCS@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .W "<tr id=""tr"_N_""">" S I=I+1
 .W " <td align=""center"">"
 . W $$OPER(N)
 .W " </td>",!
 .
 .W " <td align=""center"" dir=""LTR"">"
 . W $$TDMEDAT(N)
 .W " </td>",!
 .
 .W "<td align=""center"" dir=""LTR"">" W $$TDADDAT(N) W "</td>",!
 .
 .W "<td align=""center"">" W $$TDSUM(N) W "</td>",!
 .
 .W "<td align=""center"" width=""15%"">" W $$TDCD(N) W "</td>",!
 .
 .W "<td id=""name"_N_""" align=""center"">"_$$NAME1(N)_"&nbsp;</td>",!
 .
 .W "<td align=""center"">"_$$TDQN(N)_"</td>",!
 .
 .W "<td id=""cost"_N_""" align=""center"">"_$$COST(N)_"&nbsp;</td>",!
 .
 .W "<td align=""center"">" W $$TDMH(N) W "</td>",!
 .
 .W "<td align=""center"">" W $$TDTHUM(N) W "</td>",!
 .
 .W "<td align=""center"">" W $$TDISHUR(N) W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W3MVCS-SAVE","PRM=PRM")
 N NOMST,NM,MH,DESC,GR,SHOW
 S NOMST=$P(PRM,";")
 ;
 I $D(^[$$^W3MAIN]TMPDEL(JB,NOMST)) D  Q 1
 .K ^[$$^W3MAIN]TMPDEL(JB,NOMST)
 .K @$$GLMVCS@(NOMST)
 ;
 S MEDAT=$P(PRM,";",2)
 S ADDAT=$P(PRM,";",3)
 S SUM=$P(PRM,";",4)
 S CD=$P(PRM,";",5)
 S QN=$P(PRM,";",6)
 ;;S MH=$J($P(PRM,";",7),2,2)
 S MH=$P(PRM,";",7)
 S THUM=$P(PRM,";",8)
 S ISHUR=$P(PRM,";",9)
 ;
 S @$$GLMVCS@(NOMST)=MEDAT_"\"_ADDAT_"\"_SUM_"\"_CD_"\\"_MH_"\"_QN_"\"_THUM_"\"_ISHUR
 Q 1
 ;
SAVEND K ^[$$^W3MAIN]TMPLAST(JB)
 K ^[$$^W3MAIN]TMPDEL(JB)
 Q
 ;
 ;
OPER(N) ;
 Q "<span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" onClick=""InsertRow('"_N_"')""> + </span><br /><span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" onClick=""DeleteRow('"_N_"')"" > - </span>"
 ;
TDMEDAT(N)
 N DD,MM,YY
 N MEDAT S MEDAT=$$MEDAT(N)
 S DD=$E(MEDAT,1,2)
 S MM=$E(MEDAT,4,5)
 S YY=$E(MEDAT,7,8)
 S %ARG("OLDDAT")=1
 Q $$STDT^%W1DAT("MEDAT"_N,"",DD,MM,YY)
 ;
TDADDAT(N)
 N DD,MM,YY
 N ADDAT S ADDAT=$$ADDAT(N)
 S DD=$E(ADDAT,1,2)
 S MM=$E(ADDAT,4,5)
 S YY=$E(ADDAT,7,8)
 I $$1024^W4WDSCR S %W1DAT("NOEQ")=1
 S %ARG("OLDDAT")=1
 Q $$STDT^%W1DAT("ADDAT"_N,"",DD,MM,YY)
 ;
TDSUM(N) ;
 Q "&nbsp;<input id=""sum"_N_""" type=""text"" size=""6"" maxlength=""6"" value="""_$$SUM(N)_""" "_$$ONFOCUS_" />&nbsp;"
 ;
TDCD(N) ;
 N TDCD
 S TDCD="<div style=""display:inline-flex;align-items:center"">"
 S TDCD=TDCD_"&nbsp;<input id=""cd"_N_""" type=""text"" size=""8"" maxlength=""8"""
 S TDCD=TDCD_" onChange=""ChangeCd('"_N_"',this.value)"" "
 S TDCD=TDCD_" value="""_$$CD(N)_""" />&nbsp;"
 S TDCD=TDCD_"<img src=""w3filter.jpg"" style=""width:20px;height:20px"" onClick=""Find('cd"_N_"')"" />"
 S TDCD=TDCD_"</div>"
 Q TDCD
 ;
TDQN(N) ;
 N VL S VL=$$QN(N)
 I VL?.P S VL=1
 N ST S ST="<input type=""text"" id=""qn"_N_""" size=""2"" maxlength=""2"" "
 S ST=ST_" value="""_VL_""" onKeyUp=""OnQnKeyUp('"_N_"')"" "_$$ONFOCUS_" />"
 Q ST
 ;
TDMH(N) ;
 Q "<input type=""text"" id=""mh"_N_""" size=""4"" maxlength=""7"" value="""_$$MH(N)_""" "_$$ONFOCUS_" />"
 ;
TDTHUM(N) ;
 N ST
 S ST="<select id=""thum"_N_""" >"
 S ST=ST_"<option value=""0"" "_$$SELTH(N,0)_">"_$$^%W1DICT("RESTANDDLV")_"</option>"
 S ST=ST_"<option value=""1"" "_$$SELTH(N,1)_">"_$$^%W1DICT("RESTAURANT")_"</option>"
 S ST=ST_"<option value=""2"" "_$$SELTH(N,2)_">"_$$^%W1DICT("DELIVERY")_"</option>"
 S ST=ST_"<option value=""3"" "_$$SELTH(N,3)_">"_$$^%W1DICT("KIOSK")_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
TDISHUR(N) ;
 N ST S ST="<input type=""checkbox"" id=""ishur"_N_""" "
 I $$ISHUR(N) S ST=ST_"checked=""checked"" "
 S ST=ST_">"
 Q ST
 ;
DELROW(NOMST) ;
 Q:'$G(JB)
 I $D(^[$$^W3MAIN]TMPDEL(JB,NOMST)) K ^(NOMST) Q
 S ^[$$^W3MAIN]TMPDEL(JB,NOMST)=$G(@$$GLMVCS@(NOMST))
 Q
 ;
NEWST(STAM) ;
 N A S A=$O(@$$GLMVCS@(9999999),-1)+1
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
 ;
 ;
MEDAT(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",1)
 ;
ADDAT(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",2)
 ;
SUM(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $J($P(A,"\",3),2,2)
 ;
CD(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",4)
 ;
NAME(NOMST) ;
 N CD
 S CD=$$CD(NOMST) I CD="" Q ""
 Q $$SHEM^W3P(CD)
 ;
NAME1(NOMST)
 N NM S NM=$$NAME(NOMST)
 I $TR(NM," ","")="" Q "&nbsp;"
 Q "&nbsp;"_$$H2U^%L1FRM(NM)
 ;
QN(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",7)
 ;
COST(NOMST) ;
 N CD
 S CD=$$CD(NOMST) I CD="" Q ""
 N MH S MH=$$MH^W3P(CD)
 N QN S QN=$$QN(NOMST)
 Q $J(MH,2,2)_"*"_QN_"="_$J(MH*QN,2,2)
 ;
MH(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",6)
 ;
THUM(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",8)
 ;
ISHUR(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",9)
 ;
ST(NOMST) Q $G(@$$GLMVCS@(NOMST))
 ;
GLMVCS(STAM) ;
 I $$LKM Q $$^W4GL("WLMVC")
 Q $$^W4GL("W3MVC")_"(2)"
 ;
ONFOCUS(STAM) ;
 Q " onFocus=""this.select()"" "
 ;
SELTH(N,OPT)
 Q $S($$THUM(N)=OPT:"selected=""selected"" ",1:"")
 ;
CHOICE ; 
 W $$^%W1DICT("CHOICEONEITEMONLY")
 W "<input type=""radio"" name=""choice"">"
 W $$^%W1DICT("CHOICECOUPLEITEMS")
 W "<input type=""radio"" name=""choice"">"
 W "<br><br>",!
 Q
 ;
COST1(PRM) ;
 N NOMST S NOMST=$P(PRM,";")
 N QN S QN=$P(PRM,";",2)
 N CD
 S CD=$$CD(NOMST) I CD="" Q ""
 N MH S MH=$$MH^W3P(CD)
 Q $J(MH,2,2)_"*"_QN_"="_$J(MH*QN,2,2)
 ;
LKM() ; 
 Q $$GET^%W1PRM("LKM")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3MVCSAH
W3MVCSAH ; [ 19.11.24 10:04 ] [ 18.11.24 03:39 ] [ 31.10.23 08:17 ] 
 N (JB,%ARG,SRCH)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB) W " JB number is not defined ! " Q
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;;D CHOICE
 ;
 W "<table id=""TblMvc"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th width=""3%"">&nbsp;</th>"
  W "<th width=""14%"">"_$$^%W1DICT("MEDATE")_"</th>"
  W "<th width=""14%"">"_$$^%W1DICT("ADDATE")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("ORDERSUM")_"</th>"
  W "<th width=""7%"">"_$$^%W1DICT("DISCPERCENT")_"</th>"
  W "<th width=""7%"">"_$$^%W1DICT("SALERANGE")_"</th>"
 W "</tr>",!
 N N,I
 ;
 S N="",I=0 F  S N=$O(@$$GLMVCS@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .W "<tr id=""tr"_N_""">" S I=I+1
 .W " <td align=""center"">"
 . W $$OPER(N)
 .W " </td>",!
 .
 .W " <td align=""center"" dir=""LTR"">"
 . W $$TDMEDAT(N)
 .W " </td>",!
 .
 .W "<td align=""center"" dir=""LTR"">" W $$TDADDAT(N) W "</td>",!
 .
 .W "<td align=""center"">" W $$TDSUM(N) W "</td>",!
 .
 .W "<td align=""center"">" W $$TDAH(N) W "</td>",!
 .
 .W "<td align=""center"">" W $$TDTHUM(N) W "</td>",!
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W3MVCSAH-SAVE","PRM=PRM")
 N NOMST,NM,MH,DESC,GR,SHOW
 S NOMST=$P(PRM,";")
 ;
 I $D(^[$$^W3MAIN]TMPDEL(JB,NOMST)) D  Q 1
 .K ^[$$^W3MAIN]TMPDEL(JB,NOMST)
 .K @$$GLMVCS@(NOMST)
 ;
 S MEDAT=$P(PRM,";",2)
 S ADDAT=$P(PRM,";",3)
 S SUM=$P(PRM,";",4)
 S AH=$J($P(PRM,";",5),2,2)
 S THUM=$P(PRM,";",6)
 ;
 S @$$GLMVCS@(NOMST)=MEDAT_"\"_ADDAT_"\"_SUM_"\"_AH_"\"_THUM
 Q 1
 ;
SAVEND K ^[$$^W3MAIN]TMPLAST(JB)
 K ^[$$^W3MAIN]TMPDEL(JB)
 Q
 ;
 ;
OPER(N) ;
 Q "<span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" onClick=""InsertRow('"_N_"')""> + </span><br /><span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" onClick=""DeleteRow('"_N_"')"" > - </span>"
 ;
TDMEDAT(N)
 N DD,MM,YY
 N MEDAT S MEDAT=$$MEDAT(N)
 S DD=$E(MEDAT,1,2)
 S MM=$E(MEDAT,4,5)
 S YY=$E(MEDAT,7,8)
 S %ARG("OLDDAT")=1
 Q $$STDT^%W1DAT("MEDAT"_N,"",DD,MM,YY)
 ;
TDADDAT(N)
 N DD,MM,YY
 N ADDAT S ADDAT=$$ADDAT(N)
 S DD=$E(ADDAT,1,2)
 S MM=$E(ADDAT,4,5)
 S YY=$E(ADDAT,7,8)
 S %ARG("OLDDAT")=1
 Q $$STDT^%W1DAT("ADDAT"_N,"",DD,MM,YY)
 ;
TDSUM(N) ;
 Q "&nbsp;<input id=""sum"_N_""" type=""text"" size=""6"" maxlength=""6"" value="""_$$SUM(N)_""" "_$$ONFOCUS_" />&nbsp;"
 ;
TDAH(N) ;
 Q "<input type=""text"" id=""ah"_N_""" size=""5"" maxlength=""5"" value="""_$J($$AH(N),2,2)_""" "_$$ONFOCUS_" />"
 ;
TDTHUM(N) ;
 N ST
 S ST="<select id=""thum"_N_""" >"
 S ST=ST_"<option value=""0"" "_$$SELTH(N,0)_">"_$$^%W1DICT("RESTANDDLV")_"</option>"
 S ST=ST_"<option value=""1"" "_$$SELTH(N,1)_">"_$$^%W1DICT("RESTAURANT")_"</option>"
 S ST=ST_"<option value=""2"" "_$$SELTH(N,2)_">"_$$^%W1DICT("DELIVERY")_"</option>"
 S ST=ST_"<option value=""3"" "_$$SELTH(N,3)_">"_$$^%W1DICT("KIOSK")_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
DELROW(NOMST) ;
 Q:'$G(JB)
 I $D(^[$$^W3MAIN]TMPDEL(JB,NOMST)) K ^(NOMST) Q
 S ^[$$^W3MAIN]TMPDEL(JB,NOMST)=$G(@$$GLMVCS@(NOMST))
 Q
 ;
NEWST(STAM) ;
 N A S A=$O(@$$GLMVCS@(9999999),-1)+1
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
 ;
 ;
MEDAT(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",1)
 ;
ADDAT(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",2)
 ;
SUM(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $J($P(A,"\",3),2,2)
 ;
AH(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",4)
 ;
THUM(NOMST) ;
 N A S A=$$ST(NOMST)
 Q $P(A,"\",5)
 ;
ST(NOMST) Q $G(@$$GLMVCS@(NOMST))
 ;
GLMVCS(STAM) ;
 Q $$^W4GL("W3MVCSAH")
 ;
ONFOCUS(STAM) ;
 Q " onFocus=""this.select()"" "
 ;
SELTH(N,OPT)
 Q $S($$THUM(N)=OPT:"selected=""selected"" ",1:"")
 ;
CHOICE ; 
 W $$^%W1DICT("CHOICEONEITEMONLY")
 W "<input type=""radio"" name=""choice"">"
 W $$^%W1DICT("CHOICECOUPLEITEMS")
 W "<input type=""radio"" name=""choice"">"
 W "<br><br>",!
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3NEWHZ
W3NEWHZ(HZW) ; [ 30.06.25 12:16 ] [ 11.07.23 12:13 ] [ 06.12.17 15:53 ] 
 ; -- PARAMETERS : ^P1PRM("WEB","MKBL") (99)
 ;                 ^P1PRM("WEB","MSD") (1)
 ;                 ^P1PRM("WEB","10BIS") (101010)
 ;                 ^P1PRM("WEB","CPHON") (55000)
 ;
 N (HZW) N $ZT
 S $ZT="ZG "_$ZL_":ER^W3NEWHZ"
 ;I 1/0
 I '$D(^W3ORD(HZW)) Q -1
 I $D(^W3ORD(HZW))'=11 Q -2
 ;
 I $G(^W3ORD(HZW,"HZRSD")) D  Q HZ
 .S HZ=$G(^("HZRSD"))
 .N ASM S ASM=$P(^W3ORD(HZW),"~",30)
 .I $L(ASM) S ASM="W"_HZW_":"_ASM
 .E  S ASM="W"_HZW
 .S $P(^P1HZ(HZ,"WEB"),";")=HZW
 .D SETEND(HZW,HZ)
 ;
 D ^P1IN
 S HZM="ycg",ER=0
 S %SCRN="P1HZ"
 ;;I '$D(^W3ORD(HZW,"CS")) Q -3
 ;;I $D(^W3ORD(HZW,"CS")),'$$CS(^("CS")) Q -4
 I HZW<1 Q "00000"
 ;
 D HZLINKW ; --- BDIKA EIZE HAZMANOT SHULMU
 ;
 N WB S WB=$$^%L3MYDVN ;"HZW"_HZW
 K ^THZ(WB,HZM),^THZ1(WB)
 N A,B,C,I S A=^W3ORD(HZW)
 ;
 I $L($P(A,"~")) D
 .N LK S LK=$$SPA^%L1FRM($P(A,"~"))
 .I '$$SF,$L(LK)>3,$D(^LKH(LK)),$$MAZAV^P1L(LK) S $P(A,"~")=LK Q
 .S LK=$TR(LK,"-\*","")
 .I '$$SF,$L(LK)>3,$D(^LKH(LK)),$$MAZAV^P1L(LK) S $P(A,"~")=LK Q
 .I $$SF,$L(LK)=7,$D(^LKH("03"_LK)),$$MAZAV^P1L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $$SF,$L($P(A,"~"))=7,$P(A,"~",31)="aia` lz" S $P(A,"~")="03"_$P(A,"~") Q
 .I $$SF,$L(LK)>3,$D(^LKH(LK)),$$MAZAV^P1L(LK) S $P(A,"~")=LK Q
 .N PELE S PELE=$P(A,"~",32)
 .I $L(PELE)>3,'$D(^LKH(LK)),$D(^LKH(PELE)),$$MAZAV^P1L(PELE),'$$STAMTEL(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .S PELE=$TR(PELE,"-","")
 .I $L(PELE)>3,'$D(^LKH(LK)),$D(^LKH(PELE)),$$MAZAV^P1L(PELE),'$$STAMTEL(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .I $L(LK)=7,$D(^LKH("03"_LK)),$$MAZAV^P1L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $L(LK)=7,$D(^LKH("03-"_LK)),$$MAZAV^P1L("03-"_LK) S $P(A,"~")="03-"_LK Q
 .I $L(LK)>7,$D(^LKH($E(LK,3,13))),$$MAZAV^P1L($E(LK,3,13)) S $P(A,"~")=$E(LK,3,13) Q
 .I $L(LK)>7,$D(^LKH($E(LK,4,13))),$$MAZAV^P1L($E(LK,4,13)) S $P(A,"~")=$E(LK,4,13) Q
 .N CODE S CODE=$P(A,"~",27)
 .I $L(CODE)>3,'$D(^LKH(LK)),$D(^LKH(CODE)),$$MAZAV^P1L(CODE),'$$STAMTEL(CODE) S $P(A,"~")=CODE Q
 .S CODE=$TR(CODE,"-!","")
 .I $L(CODE)>3,'$D(^LKH(LK)),$D(^LKH(CODE)),$$MAZAV^P1L(CODE),'$$STAMTEL(CODE) S $P(A,"~")=CODE Q
 .I $$^W4MSD(LK) S LK=1111111
 .S $P(A,"~")=LK
 ;
 I $G(^P1PRM("WEB","DEFIS")) D
 .N LK S LK=$P(A,"~")
 .I $E(LK)="0",LK'["-" D
 ..I $E(LK,2)=5 S $P(A,"~")=$E(LK,1,3)_"-"_$E(LK,4,12) Q
 ..S $P(A,"~")=$E(LK,1,2)_"-"_$E(LK,3,12) Q
 ;
 I $P(A,"~",3)?1N.N S $P(A,"~",3)=$$SNIFA^W3SNIF($P(A,"~",3))
 S $P(A,"~",3)=$$SPA^%L1FRM($P(A,"~",3))
 ;
 I $P(A,"~",3)?.P D
 .S $P(A,"~",3)="TAKEAWAY"
 .N DM,TS S DM=$P(A,"~",9) Q:'DM
 .S TS=$P(A,"~",11)
 .S $P(A,"~",9)=0
 .S $P(A,"~",11)=$J(TS-DM,2,2)
 .S $P(^W3ORD(HZW),"~",9)=0
 .S $P(^W3ORD(HZW),"~",11)=$J(TS-DM,2,2)
 ;
 I $P(A,"~",4)?.P S $P(A,"~",4)=$ZD($H,"DD.MM.YY  24:60")
 I $P(A,"~",6)'?2N1":"2N.E S $P(A,"~",6)=$P(A,"~",42)_":"_$P(A,"~",43)
 S $P(A,"~",30)="W"_HZW
 I '$P(A,"~",18) D
 .S $P(A,"~",18)=$TR($J($G(^P1PRM("WEB","MKBL"),99),5)," ",0)
 .I $$HZMH2(HZW),$G(^P1PRM("MKBLHZ")) S $P(A,"~",18)=$TR($J($G(^P1PRM("MKBLHZ")),5)," ",0)
 I $P(A,"~",21)=5 S $P(A,"~",21)=8 ;  -- CIBUS
 I $P(A,"~",21)="T" S $P(A,"~",21)=5 ;  --TLUSH
 I $P(A,"~",21)=6 S $P(A,"~",21)=4,$P(A,"~",27)=$G(^P1PRM("WEB","CPHON"),55000) ; 55000 ; -- COUPONPHONE
 I $P(A,"~",21)=7 S $P(A,"~",21)=4,$P(A,"~",27)=$G(^P1PRM("WEB","10BIS"),101010) ;101010 ; -- TENBIS
 I $P(A,"~",21)=11 S $P(A,"~",21)=4,$P(A,"~",27)=$G(^P1PRM("WEB","CLRX"),3017) ; -- CELLARIX
 ;
 I $P(A,"~",51)=8 D
 .S $P(A,"~",21)=4,$P(A,"~",27)=$G(^P1PRM("WEB","CIBUS"),191919)
 .S ^THZ(WB,HZM,"CIBINT")=1
 ;
 I $P(A,"~",51)=4!($P(A,"~",51)=1) D  ; SEF OH OR TAFN
 .S $P(A,"~",21)=4
 .S $P(A,"~",27)=$G(^P1PRM("WEB","FOOD"))
 .S ^THZ(WB,HZM,"FOODPAY")=$P(A,"~",11)
 ;
 I $L($P(A,"~",56)) D  ; EMAIL
 .S ^THZ(WB,HZM,"EMAIL")=$P(A,"~",56)
 I $L($P(A,"~",57)) D  ; MIKUD
 .S ^THZ(WB,HZM,"MIKUD")=$P(A,"~",57)
 I $L($P(A,"~",58)) D  ; FAX
 .S ^THZ(WB,HZM,"FAX")=$P(A,"~",58)
 I $L($P(A,"~",59)) D  ; TELB
 .S ^THZ(WB,HZM,"TELB")=$P(A,"~",59)
 ;
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 D
 .I $P(A,"~",27)="" S $P(A,"~",27)=$P(A,"~",1) Q
 .I $P(A,"~",27)=$G(^P1PRM("WEB","FOOD")) Q
 .I $P(A,"~",27)=$G(^P1PRM("WEB","CPHON")) Q
 .I $P(A,"~",27)=$G(^P1PRM("WEB","10BIS")) Q
 .I $L($P(A,"~",27))<4 S $P(A,"~",27)=$P(A,"~",1) Q
 .I '$D(^LKH($P(A,"~",27))),$D(^LKH($P(A,"~",1))) S $P(A,"~",27)=$P(A,"~",1) Q
 ;
 S TSHL=$P(A,"~",11)
 S AHHN=$P(A,"~",38)
 S DM=$P(A,"~",9)
 S TOTORD=0
 D
 .N I
 .F I=1:1 Q:'$D(^W3ORD(HZW,I))  D
 ..N A S A=$G(^(I))
 ..S TOTORD=TOTORD+($P(A,"~",4)*$P(A,"~",5))
 ;
 I $P(A,"~",8)="",AHHN D
 .S HN=$J(TOTORD*AHHN*.01,2,2)_"="_AHHN_"%"
 .S $P(A,"~",8)=HN
 .S TSHL=TOTORD+DM-HN
 ;
 D ^P1IGUL
 S $P(A,"~",11)=TSHL
 I $G(HNH2) S $P(A,"~",8)=$J($P(A,"~",8)+HNH2,2,2)
 S MAZMIN=""
 ;
 I $L($P(A,"~",47)) D
 .S MAZMIN=$TR($P(A,"~",2),"\","/")
 .S $P(A,"~",2)=$TR($P(A,"~",47),"\","/")
 ;
 S A=$TR(A,"\","/")
 S ^THZ(WB,HZM)=$TR($P(A,"~",1,30),"~","\")
 ;;I $P(A,"~",35)?2N1":"2N S $P(^THZ(WB,HZM),"\",6)=$P(A,"~",35) ; - ZMAN MEUSHAR
 S B=""
 S $P(B,"\\",6)=$TR($P(A,"~",34),"\","/") ; HRA
 S IR=$TR($P(A,"~",31),"\","/") ; IR
 I +$G(^P1PRM("WEB","MSD"))=1,IR["gezit dilvxd" S IR="dilvxd"
 S MSDTO=""
 ;
 I $G(^P1PRM("MM")) D
 .I $G(^W3ORD(HZW,"MSDTO")) S MSDTO=^("MSDTO")
 .E  S MSDTO=$G(^W3ORD(HZW,"MSD"))-$G(^P1PRM("WEB","RESTSHIFT"))
 .S $P(B,"\\",3)=MSDTO
 ;
 S $P(B,"\\",4)=$$SPA^%L1FRM(IR)
 S $P(B,"\\",5)=MAZMIN
 S $P(B,"\\",7)=$TR($P(A,"~",32),"\","") ; PELE
 S ^THZ(WB,HZM,"HR2")=B
 ;
 S CIBCARD=""
 I $L($P(A,"~",46)) D
 .S CIBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",46))
 .S ^THZ(WB,HZM,"CIBCARD")=$TR(CIBCARD,"\","")
 ;
 S TNBCARD=""
 I $L($P(A,"~",53)) D
 .S TNBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",53))
 .S ^THZ(WB,HZM,"TNBCARD")=$TR(TNBCARD,"\","")
 ;
 S TNBPAY=$P(A,"~",54)
 ;
 I $L($P(A,"~",48)) D
 .N CVV,SUM S CVV=$P(A,"~",61),SUM=$P(A,"~",62)
 .I 'CVV S CVV=""
 .;;I 'SUM S SUM=$P(A,"~",11)
 .S ^THZ(WB,HZM,"CREDCARD")=$$DESCR^W3ENCR(HZW,$P(A,"~",48))_"~"_$P(A,"~",49)_"~"_$$DESCR^W3ENCR(HZW,$P(A,"~",50))_"~"_CVV_"~"_SUM
 .S $P(^THZ(WB,HZM),"\",21)=3
 ;
 S I=0 S (CD,CDT,CDTO,NM)=""
 ;
 I $G(^P1PRM("MM")) D
 .S I=1
 .S ^THZ1(WB,I)=":"_MSDTO_"\\"_$G(^P1MSD(MSDTO))_"\\\\\\@@!"
 ;
 S N="" F  S N=$O(^W3ORD(HZW,N)) Q:N=""  D
 .S C=$G(^(N))
 .
 .I $P(C,"~")=0 D  Q
 ..S I=I+1 K CDT
 ..S CD=$P(C,"~",2),NM=$TR($$SPA^%L1FRM($P(C,"~",3)),"\","/")
 ..Q:CD=""
 ..I CD,$G(^P1PRM("W3CDNM")),$D(^PAR(CD)) S NM=$$SHEM^P1P(CD)
 ..S MH=$P(C,"~",4),CM=$TR($P(C,"~",5),"\","/")
 ..S CMNT=$TR($P(C,"~",7),"\","/")
 ..S TSF=0,SUM=MH*CM
 ..S N1=N F  S N1=$O(^W3ORD(HZW,N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...S D=$G(^(N1)) Q:D=""
 ...N CMT S CMT=$P(D,"~",5)
 ...I CMT["*" S CMT=$P(CMT,"*",2)
 ...S TSF=TSF+($P(D,"~",4)*CM*CMT)
 ..N ATTN S ATTN="" I $D(^PRTNO(CD)) S ATTN="[! lerp]"
 ..E  I $D(^PRTEND(P1DZ,CD)),$G(^PRTEND(P1DZ,CD))<CM S ATTN="[!xnbp]"
 ..S ^THZ1(WB,I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(SUM+TSF)_"\"_CMNT_ATTN_"\"
 .
 .I $P(C,"~")=1 D  Q
 ..N NMT,CMNT
 ..S CDT=$P(C,"~",2),NMT=$$SPA^%L1FRM($P(C,"~",3)) Q:CDT=""  S CDTO=CDT
 ..I $E(CDT)="A" Q
 ..I $E(CDT)="H" D  Q
 ...S CMNT=$P(^THZ1(WB,I),"\",8)
 ...S $P(^THZ1(WB,I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..I CDT["-C",CDT?1N.E D  Q
 ...I $P($G(^W3ORD(HZW,N-1)),"~")=0 D  Q
 ....S CMNT=$P(^THZ1(WB,I),"\",8)
 ....S $P(^THZ1(WB,I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ...
 ...I CDT,$G(^P1PRM("W3CDNM")),$D(^PAR(CDT)) S NMT=$$SHEM^P1P(CDT)
 ...S CMNT=$P($G(^THZ1(WB,I,$P(CDT,"-C"))),"\",4)
 ...S $P(^THZ1(WB,I,$P(CDT,"-C")),"\",4)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..
 ..S MHT=$P(C,"~",4),CMT=$P(C,"~",5)
 ..I CMT["+" N CPZ S CPZ=$$CMTPZ(CMT) D  Q
 ...S ^THZ1(WB,I,CDT)=NMT_"\"_MHT_"\"_$P(CPZ,";")_($P(CPZ,";",2)*MHT)
 ..
 ..I CMT["*" S CMT=$P(CMT,"*")*$P(CMT,"*",2)
 ..N CMTO S CMTO=$P($G(^THZ1(WB,I,CDT)),"\",3)
 ..S ^THZ1(WB,I,CDT)=NMT_"\"_MHT_"\"_(CMT+CMTO)_"\\"
 ..;
 ..I $G(^P1PRM("TSFNEW")) D
 ...N SH2 S SH2=$O(^THZ1(WB,I,CDT,9999),-1)+1
 ...S ^THZ1(WB,I,CDT,SH2)=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 .
 .I $P(C,"~")=2,$L($G(CDT)) D SET2(C,I,CDT)
 ;
 I $D(^P1PRM("WEB","PAR")) D CRFL
 ;
 ;;I $G(^P1PRM("HZMH")),^P1PRM("HZMH")'=$G(^P1PRM("WEB","PAR")) D
 .I '$D(^THZ(WB,HZM,"CREDCARD")) Q
 .N WB S WB=$$^%L3MYDVN
 .N CD S CD=$G(^P1PRM("HZMH")) Q:CD=""
 .N LAST S LAST=$O(^THZ1(WB,9999),-1)+1
 .N ST S ST=CD_"\\"_$$SHEM^P1P(CD)_"\0\1\0\0\"_$$HRA^P1P(CD)
 .S ^THZ1(WB,LAST)=ST
 ;
 S %L1SCREF("N")=1
 S %L1SCREF("S")=^THZ(WB,HZM)
 D GET^%L1SCREF
 S %L1SCREF("N")=4
 S %L1SCREF("S")=^THZ(WB,HZM,"HR2")
 D GET^%L1SCREF
 ;
 S P1HZIMP="WEB" N %L3MYDVN S %L3MYDVN=WB
 ;
 I $G(CIBCARD) S ^THZ(WB,HZM,"CIBCARD")=$G(CIBCARD)
 I $G(TNBCARD) S ^THZ(WB,HZM,"TNBCARD")=$G(TNBCARD)
 I $G(^[$$^%L1GLD]W3ORD(HZW,"SHUL")) S ^THZ(WB,HZM,"SHUL")=^[$$^%L1GLD]W3ORD(HZW,"SHUL")
 ;
 I $G(TNBPAY) D
 .S ^THZ(WB,HZM,"TNBPAY")=$G(TNBPAY)
 .I TNBPAY+$P(TNBPAY,":",2)<TSHL S $P(^THZ(WB,HZM),"\",21)=1
 ;
 I $G(^P1PRM("WEB","10BIS")) D
 .I '$G(TNBPAY),$P($G(A),"~",27)=$G(^P1PRM("WEB","10BIS")) D
 ..S $P(^THZ(WB,HZM),"\",21)=1
 ;
 I $$^P1TFN D TOZK
 ;
 L +^P1HZ:2
 D PUT^P1HZ
 L -^P1HZ
 ;
 S HZM=HZMS
 I 'HZM D TOMAIN S ER=-6 Q ER
 I $$^P1HZMH(HZM) S $P(^P1HZ(HZM,"WEB"),";")=HZW
 ;
 S (GLBV,GLBV1)="^P1HZ(HZM)"
 ;
 I '$D(^THZ(WB,"NOPC")) D ^P3HZM(HZM) ; -- PRINT ORDER
 ;
 I $$^P1HZMH(HZM) G END
 ;
 ;;I $L($G(^P1HZ(HZM,"CIBCARD"))) S ^P3TSAUTO(HZM)=""
 ;;I $G(^P1HZ(HZM,"TNBPAY")) S ^P3TSAUTO(HZM)=""
 ;;I $G(^P1HZ(HZM,"FOODPAY")) S ^P3TSAUTO(HZM)=""
 ;;I $$CODTS^P3HZMST(HZM)=5!$G(^P1HZ(HZM,"SHUL")) S ^P3TSAUTO(HZM)="" ; -- TLUSH
END ;
 D TOMAIN
 D SETEND(HZW,HZM)
 Q HZM
 ;
CS(CS) ;
 I $$CSS(HZW)'=CS Q 0
 Q 1
CSH(A) N J F J=1:1:$L(A) S I=I+1,CSH=CSH+($A(A,J)*I)
 Q
CSS(HZW) N I,II S I=0,CSH=0
 F II=1:1:$L(^W3ORD(HZW))  D CSH(^(HZW))
 N N,N1
 S N="" F  S N=$O(^W3ORD(HZW,N)) Q:N=""  I N'="CS" D CSH($G(^(N))) D
 .S N1="" F  S N1=$O(^W3ORD(HZW,N,N1)) Q:N1=""  D CSH($G(^(N1)))
 Q CSH
 ;
CMTPZ(CMT) ;
 N CMPZ,CMPZ1 S CMPZ="",CMPZ1=0
 N J F J=1:1:4 D
 .I $E(CMT,J)="+" S CMPZ=CMPZ_"+\",CMPZ1=CMPZ1+1 Q
 .S CMPZ=CMPZ_"\"
 Q CMPZ_";"_CMPZ1
 ;
ER N $ZT S $ZT="" D SVER^%L1X
 Q -99
 ;
HZLINKW ;
 ; - CREATE FILES FOR SENDING TO SERVER
 ; --- ^HZLINKW - ORDER LIST WAS SENDED FROM SERVER
 ; --- ^HZLINKWI - ORDER LIST WAS SENDED FROM SERVER & NOT PAID
 ;
 D ^P1IN
 N DT S DT=P1DZ-2
 N N
 F  S DT=$O(^P1H(DT)) Q:DT=""  D
 .S N="" F  S N=$O(^P1H(DT,N)) Q:N=""  D
 ..I $D(^HZLINKW(N)),$G(^(N))'["\*" D  ; -- WAS SENDED FROM SERVER & NOT PAID
 ...N HW S HW=$P($G(^(N)),"\") Q:HW=""
 ...N TSHL,SHULAM
 ...N A S A=$G(^P1HZ(N)) Q:A=""
 ...S TSHL=$$TSHL^P3HZMST(N)
 ...S SHULAM=$$SHUL^P3HZMST(N)+$$SHULA^P3HZMST(N) Q:'SHULAM&(TSHL>.5)
 ...S $P(^HZLINKW(N),"\",3)=TSHL
 ...S $P(^HZLINKW(N),"\",4)=SHULAM
 ...S ^HZLINKWI(HW)=N_"\"_$H_"\"_TSHL_"\"_SHULAM
 ;
 Q
SF(STAM) ;
 I +$G(^P1PRM("WEB","MSD"))=1 Q 1
 Q 0
HZMH2(HZW)
 I '$G(^P1PRM("HZMH2")) Q 0
 N OK S OK=0
 N I F I=1:1 Q:'$D(^W3ORD(HZW,I))  D
 .I $P($G(^(I)),"~",2)=^P1PRM("HZMH2") S OK=2
 N I F I=1:1 Q:'$D(^W3ORDA(HZW,I))  D
 .I $P($G(^(I)),"~",2)=^P1PRM("HZMH2") S OK=2
 Q OK
 ;
NMB2PELE ;
 S $P(A,"~",32)=$P(A,"~")
 Q
 ;
CRFL ;
 N WB S WB=$$^%L3MYDVN
 N CD S CD=$G(^P1PRM("WEB","PAR")) Q:CD=""
 N LAST S LAST=$O(^THZ1(WB,9999),-1)+1
 N ST S ST=CD_"\\"_$$SHEM^P1P(CD)_"\0\1\0\0\"_$$HRA^P1P(CD)
 ;W ST,!
 S ^THZ1(WB,LAST)=ST
 Q
 ;
SETEND(HZW,HZ)
 M ^W3ORDA(HZW)=^W3ORD(HZW)
 K ^W3ORD(HZW)
 S ^HZLINK(HZ)=HZW_"\\\"_$ZD($H,"DD/MM/YEAR 24:60")
 S ^HZLINKW(HZ)=HZW_"\"_$H
 S ^HZLINKI(HZW)=HZ_"\"_$H
 ;
 I $$SMS2BAAL^W4PRM,'$D(@$$^W4ORD@(HZ,"SMS2BAAL")) D
 .N TELBAAL S TELBAAL=$$SMS2BAAL^W4PRM
 .N RES S RES=$$MMSMS^W4SMSSND(HZ,TELBAAL)
 .S @$$^W4ORD@(HZ,"SMS2BAAL")=$H_"\"_TELBAAL
 ;
 Q
 ;
TOZK ;
 Q:'$$^P1TFN  Q:'$G(MSDTO)
 N NUCI,UCI
 S NUCI=$G(^[$$^%L1GLD]MSDZK(MSDTO)) I 'NUCI Q
 S UCI=$$^P1ZKUCI(NUCI) I UCI="" Q
 ;;D SIGN2ZK^P1TFN
 S $ZGBLDIR=UCI
 K ^THZ(WB)
 M ^THZ(WB)=^[$$^%L1GLD]THZ(WB) K ^[$$^%L1GLD]THZ(WB)
 K ^THZ1(WB)
 M ^THZ1(WB)=^[$$^%L1GLD]THZ1(WB) K ^[$$^%L1GLD]THZ1(WB)
 S MIR1=$$NAME^P1TFN
 S P1MMMPRM=2
 D ^P1IN
 Q
 ;
TOMAIN ;
 Q
 Q:'$$^P1TFN
 S UCI=$$^P1ZKUCI(0)
 S $ZGBLDIR=UCI
 Q
 ;
SET2(C,I0,CDT) ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 Q:CDT2=""  S CDTO2=CDT2
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-")
 N THZ1 S THZ1="^THZ1(WB)"
 ;
 I CDT2["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=$O(@THZ1@(I0,CDT,99999),-1) Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 I CDT2,$G(^P1PRM("W3CDNM")),$D(^PAR(CDT2)) S NMT2=$$SHEM^P1P(CDT2)
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 I QNT2["*" S QNT2=$P(QNT2,"*")*$P(QNT2,"*",2)
 I 'QNT2 S QNT2=1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 S @THZ1@(I0,CDT,SH2)=STT2
 Q
 ;
STAMTEL(TEL) ; 
 S TEL=$TR(TEL,"-","")
 I TEL?1"0"."0"!(TEL?1"1"."1") Q 1
 I TEL?.P Q 1
 Q 0 
 
 
 
 
 

W3NEWHZ0
W3NEWHZN(HZW) ; [ 30.10.24 19:48 ] [ 27.10.24 07:46 ] [ 21.10.24 14:18 ] 
 ; -- PARAMETERS : @$$^W4PRM@("WEB","MKBL") (99)
 ;                 @$$^W4PRM@("WEB","MSD") (1)
 ;                 @$$^W4PRM@("WEB","10BIS") (101010)
 ;                 @$$^W4PRM@("WEB","CPHON") (55000)
 ;
 N (HZW) N $ZT
 S JB=$$^%W1SsID("W3NEWHZN")
 S $ZT="ZG "_$ZL_":ER^W3NEWHZN"
 S W3ORD=$$^W4GL("W3ORD")_"(HZW)"
 ;
 S MAINMSD=$G(^[$$^W3MAIN]P1PRM("MAINMSD"))
 I MAINMSD D PUT^%W1PRM("MSD",MAINMSD,HZW) ; -------------- ZMANI !!!!!
 ; 
 I '$D(@W3ORD) Q -1
 I $D(@W3ORD)'=11 Q -2
 L @W3ORD:4 ; --- WAS 2 -- 07/06/22
 ;
 I $D(@$$^W4GL("W3ORDA")@(HZW)) L  Q -3
 ;
 I $P($G(@W3ORD),"~",30)["EMAIL:" Q -4  ; --- HUKAM BE KUPA LE MAIL
 ;
 I $G(@W3ORD@("HZRSD")) D  L  Q HZ
 .S HZ=$G(^("HZRSD"))
 .N ASM S ASM=$P($G(@W3ORD),"~",30)
 .I $L(ASM) S ASM="W"_HZW_":"_ASM
 .E  S ASM="W"_HZW
 .S $P(@$$^W4ORD@(HZ,"WEB"),";")=HZW
 .D SETEND(HZW,HZ)
 ;
 I '$G(@$$^W4PRM@("WEB","10BIS")),$G(@$$^W4PRM@("10BIS")) D
 .S @$$^W4PRM@("WEB","10BIS")=@$$^W4PRM@("10BIS")
 ;
 D ^W4IN
 S HZM="ycg",ER=0
 S %SCRN="P1HZ"
 I HZW<1 L  Q "00000"
 ;
 D HZLINKW ; --- BDIKA EIZE HAZMANOT SHULMU
 D CHKSTRUCT
 ;
 N WB S WB=$$^W4MYDVN ;"HZW"_HZW
 D THZ^W4NEWHZ(JB)
 D PUT^%W1PRM("THZ",THZ)
 D PUT^%W1PRM("THZ1",THZ1)
 K @THZ,@THZ1
 ;
 N A,B,C,I S A=$G(@W3ORD)
 ;
 D CORLK
 ;
 I $P(A,"~",6)'?2N1":"2N.E,$P(A,"~",42)?1N.E,$P(A,"~",43)?1N.E D
 .S $P(A,"~",6)=$P(A,"~",42)_":"_$P(A,"~",43)
 ;
 I $P(A,"~",6)'?2N1":"2N.E,$P(A,"~",6)[":" D
 .N TM S TM=$P(A,"~",6)
 .S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J($P(TM,":",2),2)," ",0)
 .S $P(A,"~",6)=TM
 ;
 D
 .N DATCB S DATCB=$P(A,"~",4)
 .S DATCB=$P(DATCB," ")
 .S DTCB=$$^%L1DC(DATCB,3)
 .N TRH S TRH=$P(A,"~",5)
 .N TRHD S TRHD=$$^%L1DC(TRH,3)
 .N TM S TM=$P(A,"~",6)
 .I TRHD=DTCB,TM<$$SHAAZ^W4PRM D 
 ..I TM="00:00" D
 ...S TM=$$T^%L1TIME($P($H,",",2)+40*60)
 ...I $E(TM,1,2)>23 S $E(TM,1,2)="00"
 ..S TRH=$$^%L1DC(TRHD+1,1)
 ..S $P(A,"~",5)=TRH
 ;
 S $P(A,"~",30)="W"_HZW
 ;
 D ^W4CRLK(HZW,$$^W4GL("W3ORD")) ; -- CREATE CUSTOMER IF NOT EXIST
 ;
 N MKR S MKR=$$MKR^W3MKR($P(A,"~",51))
 S @THZ@("MKRDLV")=MKR
 ;
 D  ; I MKR=10 D  ; -- TENBIS
 .N DAT S DAT=$P(A,"~",5)
 .N SHAA S SHAA=$P(A,"~",6)
 .N CITY S CITY=$P(A,"~",31)
 .N TVAH S TVAH=$G(@$$^W4PRM@("TIMEHZ"))
 .I $P(A,"~",3)="TAKEAWAY"!(CITY="TAKEAWAY")!(CITY="TAW")!(CITY="") D
 ..S TVAH=$$THZTAW^W3TIME
 .S TVAH=TVAH*60
 .
 .I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<TVAH D
 ..N SHAA0 S SHAA0=SHAA
 ..S SHAA=$$TM^W3TIME($H,CITY,1)
 ..I SHAA<SHAA0,SHAA<6 S DAT=$ZD($H+1,"DD.MM.YY")
 ..S $P(A,"~",5)=DAT
 ..S $P(A,"~",6)=SHAA
 ;
 I '$P(A,"~",18) D
 .S $P(A,"~",18)=$TR($J($G(@$$^W4PRM@("WEB","MKBL"),99),5)," ",0)
 .I $$SF^W4PRM,'MKR S $P(A,"~",18)="00099"
 .I $$HZMH2(HZW),$G(@$$^W4PRM@("MKBLHZ")) S $P(A,"~",18)=$TR($J($G(@$$^W4PRM@("MKBLHZ")),5)," ",0)
 ;
 S CODTS=$P(A,"~",21)
 ;
 I CODTS=5 S $P(A,"~",21)=8 ;  -- CIBUS
 ;
 I $$SF^W4PRM,CODTS=1,$$ISCR^W4L($P(A,"~",1)) S $P(A,"~",21)=4 ; -- 25/12/17 LEFI BAKASHA SHEL ASHER
 I CODTS="T" S $P(A,"~",21)=5 ;  --TLUSH
 ;
 I CODTS=6,$G(@$$^W4PRM@("WEB","CPHON")) D
 .S $P(A,"~",21)=4,$P(A,"~",27)=@$$^W4PRM@("WEB","CPHON")
 ;
 S TNBPAY=$P(A,"~",54)
 I CODTS=7,$G(@$$^W4PRM@("WEB","10BIS")) D
 .S $P(A,"~",21)=4,$P(A,"~",27)=@$$^W4PRM@("WEB","10BIS")
 .I 'TNBPAY,MKR=31!(MKR=30)!(MKR=98) S TNBPAY=$P(A,"~",11) ; -- PAIDIT
 ;
 I $G(TNBPAY) D
 .S @THZ@("TNBPAY")=$G(TNBPAY)
 ;
 I CODTS=11,$G(@$$^W4PRM@("WEB","CLRX")) D
 .S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","CLRX")) ; -- CELLARIX
 ;
 S TNBPAY=$P(A,"~",54)
 ;
 I CODTS=14,$G(@$$^W4PRM@("WEB","BUYME")) D
 .S $P(A,"~",27)=@$$^W4PRM@("WEB","BUYME")
 .S BUYMEPAY=$P(A,"~",17)
 .I 'BUYMEPAY S BUYMEPAY=$P(A,"~",11)
 .S @THZ@("BUYMESUM")=BUYMEPAY
 ;
 I MKR=8 D  ; -- CIBUS
 .S $P(A,"~",21)=8,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","CIBUS"))
 .S @THZ@("CIBINT")=1
 ;
 I $P(A,"~",68) D 
 .S @THZ@("CIBSUM")=$P(A,"~",68)
 ;
 I $P(A,"~",75) D  ; -- COORD
 .S @THZ@("COORD")=$TR($P(A,"~",75),";",",")
 ;
 I MKR=4!(MKR=1) D  ; SEF OH OR TAFN
 .S $P(A,"~",21)=4
 .D
 ..N LK,LKN S LK=$P(A,"~",27)
 ..I MKR=1 D  S $P(A,"~",27)=LKN Q
 ...I LK=6132120,$G(@$$^W4PRM@("WEB","CPHON")) S LKN=^("CPHON") Q
 ...I LK=1700701011,$G(@$$^W4PRM@("WEB","10BIS")) S LKN=^("10BIS") Q
 ...I LK=1700701130,$G(@$$^W4PRM@("WEB","CIBUS")) S LKN=^("CIBUS") Q
 ...S LKN=$G(@$$^W4PRM@("WEB","FOOD"))
 ..
 ..S $P(A,"~",27)=$G(@$$^W4PRM@("WEB","FOOD"))
 .
 .S @THZ@("FOODPAY")=$P(A,"~",11)
 ;
 I CODTS=12 D
 .I $G(@$$^W4PRM@("WEB","PAIDIT")) D
 ..S $P(A,"~",27)=$G(@$$^W4PRM@("WEB","PAIDIT"))
 .S $P(A,"~",21)=3
 .S $P(A,"~",51)=12
 ;
 I CODTS=13 D  ; -- MISHLOHA C-A
 .S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","MSH"))
 .S $P(A,"~",51)=12
 .N CRSUM S CRSUM=$$CRSUM(A)
 .I 'CRSUM,CRSUM'[";" S CRSUM=$P(A,"~",11)
 .S @THZ@("MSHPAY")=CRSUM
 ;
 S CODTSM=CODTS
 I CODTS[";" S CODTSM=";"_CODTS_";"
 ;
 I CODTS[";",CODTSM[";11;"!(CODTSM[";12;")!(CODTSM[";13;") D  ; -- MISHLOHA C-A
 .;;S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","MSH"))
 .S $P(A,"~",51)=12
 .N CRSUM S CRSUM=$$CRSUM(A)
 .I 'CRSUM,CRSUM'[";" S CRSUM=$P(A,"~",11)
 .S @THZ@("MSHPAYM")=CODTS_"~"_$P(A,"~",48)_"~"_CRSUM
 ;
 I $G(@$$^W4PRM@("WEB","CPHON")),$P(A,"~",27)=@$$^W4PRM@("WEB","CPHON") D
 .I $P(A,"~")'=$$NMBKSK^W4KIOSKO S @THZ@("MKRDLV")=55
 .S @THZ@("CPHPAY")=$S($P(A,"~",73):$P(A,"~",73),1:$P(A,"~",11))
 ;
 I $G(@$$^W4PRM@("WEB","PAIDIT")),$P(A,"~",27)=$G(@$$^W4PRM@("WEB","PAIDIT")) D
 .S @THZ@("MKRDLV")=30
 ;
 I $G(@$$^W4PRM@("WEB","WOLT")),$P(A,"~",27)=$G(@$$^W4PRM@("WEB","WOLT")) D
 .S @THZ@("MKRDLV")=18
 ;
 I $G(@THZ@("MKRDLV"))=18 S @THZ@("ASR")=$P(A,"~",11)
 ;
 I MKR D SHINUYSHAA
 ;
 I $L($P(A,"~",56)) D  ; EMAIL
 .S @THZ@("EMAIL")=$P(A,"~",56)
 I $L($P(A,"~",57)) D  ; MIKUD
 .S @THZ@("MIKUD")=$P(A,"~",57)
 I $L($P(A,"~",58)) D  ; FAX
 .S @THZ@("FAX")=$P(A,"~",58)
 I $L($P(A,"~",59)) D  ; TELB
 .S @THZ@("TELB")=$P(A,"~",59)
 I $L($P(A,"~",60)) D  ; EMAIL
 .N HZMLAK S HZMLAK=$P(A,"~",60)
 .S @THZ@("HZMLAK")=HZMLAK
 ;
 I $L($G(@W3ORD@("MKBN"))) D
 .S @THZ@("MKBN")=$G(@W3ORD@("MKBN"))
 ;
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 I $P(A,"~",27)="" S $P(A,"~",27)=$P(A,"~",1)
 S AHHN=$P(A,"~",38)
 ;
 I $P(A,"~",3)["TAKEAWAY" S $P(A,"~",9)=""
 ;
 S DM=$P(A,"~",9)
 S HN=$P(A,"~",8)
 S TOTORD=$$TOTORD^W3HZMST(JB,"",W3ORD)
 ;
 I HN="",AHHN D
 .S HN=$J(TOTORD*AHHN*.01,2,2)_"="_AHHN_"%"
 .S $P(A,"~",8)=HN
 ;
 N TSHL0 S TSHL0=$P(A,"~",11)
 S TSHL=TOTORD+DM-HN
 ;
 I TSHL-TSHL0 D
 .N HN1 S HN1=TSHL-TSHL0
 .I HN1<1,HN1>-1 D
 ..S $P(A,"~",19)=$J($P(A,"~",19)+HN1,2,2)
 .E  S $P(A,"~",8)=$J($P(A,"~",8)+HN1,2,2)
 ;
 ;;D ^W4IGUL ; --- 10.06.20
 ;;
 ;;S $P(A,"~",11)=TSHL
 ;
 I $G(HNH2) S $P(A,"~",8)=$J($P(A,"~",8)+HNH2,2,2)
 S MAZMIN=""
 ;
 I $L($P(A,"~",47)) D
 .S MAZMIN=$TR($P(A,"~",2),"\","/")
 .S $P(A,"~",2)=$TR($P(A,"~",47),"\","/")
 ;
 I MKR=66,$P(A,"~",21)=3,$G(@$$^W4PRM@("WEB","HAAT")) D  ; -- HAAT
 .S $P(A,"~",48)=""
 .S $P(A,"~",21)=4
 .S $P(A,"~",27)=$G(@$$^W4PRM@("WEB","HAAT"))
 .S @THZ@("ASR")=$P(A,"~",11)
 .S @THZ@("MKRDLV")=MKR
 ;
 S A=$TR(A,"\","/")
 S @THZ=$TR($P(A,"~",1,30),"~","\")
 ;
 I $P(A,"~",8) D
 .N HN S HN=$P(A,"~",8)
 .S @THZ@("CB","HNH1",1)=HN_"*"_$H_"*INTERNET*"_$$^W4MYDVN_"*INTERNET"
 ;
 ;;I $P(A,"~",35)?2N1":"2N S $P(@THZ@(HZM),"\",6)=$P(A,"~",35) ; - ZMAN MEUSHAR
 S B=""
 S $P(B,"\\",6)=$TR($P(A,"~",34),"\","/") ; HRA
 S IR=$TR($P(A,"~",31),"\","/") ; IR
 S MSDTO=""
 ;
 I $$MM^W4PRM D
 .I $G(@W3ORD@("MSDTO")) S MSDTO=^("MSDTO")
 .E  S MSDTO=$G(@W3ORD@("MSD"))-$G(@$$^W4PRM@("WEB","RESTSHIFT"))
 .S $P(B,"\\",3)=MSDTO
 ;
 S $P(B,"\\",4)=IR
 S $P(B,"\\",5)=MAZMIN
 S $P(B,"\\",7)=$TR($P(A,"~",32),"\","") ; PELE
 S @THZ@("HR2")=B
 ;
 I $L($P(A,"~",17)) D
 .S @THZ@("ASR")=$P(A,"~",17)
 ;
 I $P(A,"~",21)=4,'$P(A,"~",17) D  ; -- 26/03/24
 .N OST S OST=$P(A,"~",11)-$P(A,"~",12) Q:OST'>0
 .S @THZ@("ASR")=OST
 ;
 I $P(A,"~",70) D
 .S @THZ@("POOLED")=$P(A,"~",70)
 ;
 I $P(A,"~",71) D  ;OTH_QUIKY
 .S @THZ@("MYDISC")=$P(A,"~",71)
 ;
 S CIBCARD=""
 I $L($P(A,"~",46)) D
 .S CIBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",46))
 .S @THZ@("CIBCARD")=$TR(CIBCARD,"\","")
 ;
 S TNBCARD=""
 I $L($P(A,"~",53)) D
 .S TNBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",53))
 .S @THZ@("TNBCARD")=$TR(TNBCARD,"\","")
 ;
 I $L($$CRCARD(A)) D
 .N CVV,SUM S CVV=$$CRCVV(A),SUM=$$CRSUM(A)
 .I 'CVV S CVV=""
 .;;I 'SUM S SUM=$P(A,"~",11)
 .S @THZ@("CREDCARD")=$$DESCR^W3ENCR(HZW,$$CRCARD(A))_"~"_$$CRMMYY(A)_"~"_$$DESCR^W3ENCR(HZW,$$CRTZ(A))_"~"_CVV_"~"_SUM
 .S $P(@THZ,"\",21)=3
 ;
 S I=0 S (CD,CDT,CDTO,NM)=""
 ;
 N HRA S HRA=$$HRA^W3HZMST(JB,W3ORD)
 N CODHRA S CODHRA=$$CODHRA^W4PRM
 I $$SF^W4PRM,CODHRA,$L(HRA)>2 D
 .S I=I+1
 .S @THZ1(I)=CODHRA_"\\"_$$SHEM^W4P(CODHRA)_"\\\\\"_HRA_"\@@!"
 ;
 N HNPA S HNPA=0
 D SETHDADDS
 ;;D CHKCDADDS
 S PRA=0
 ;
 D OBR(HZW)
 ;
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S C=$G(^(N))
 .
 .I $P(C,"~")=0 D  Q
 ..I HNPA D SETHNP
 ..S PRA=0
 ..S I=I+1 K CDT
 ..S CD=$P(C,"~",2),NM=$$CLR($P(C,"~",3))
 ..S CD=$TR(CD,$C(9),"")
 ..S CD=$$SPA^%L1FRM(CD) ; --- 16.11.23
 ..Q:CD=""
 ..I $G(MSDTO),$$MM^W4PRM,CD'[">" S CD=MSDTO_">"_CD
 ..S MH=$P(C,"~",4),CM=$TR($P(C,"~",5),"\","/")
 ..S CMNT=$TR($P(C,"~",7),"\","/")
 ..;;I CMNT["[[" S CMNT=$$CLRDLM^%L1FRM(CMNT,"[[","]]")
 ..S TSF=0,SUM=MH*CM
 ..S N1=N F  S N1=$O(@W3ORD@(N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...S D=$G(^(N1)) Q:D=""
 ...N CMT S CMT=$$QNMH^W3HZMST(D)
 ...I CMT["*" S CMT=$P(CMT,"*",2)
 ...;;S TSF=TSF+($P(D,"~",4)*CM*CMT)
 ...S TSF=TSF+($P(D,"~",4)*CMT)
 ..N ATTN S ATTN="" I $$NL^W4PRTVW(CD) S ATTN="[! lerp]"
 ..E  I $G(@$$^W4GL("PRTEND")@(P1DZ,CD))?1N.N,$G(@$$^W4GL("PRTEND")@(P1DZ,CD))<CM S ATTN="[!xnbp]"
 ..S @THZ1@(I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(SUM+TSF)_"\"_CMNT_ATTN_"\"
 ..S HNPA=$P(C,"~",6)_"\"_(SUM+TSF)
 .
 .
 .I $P(C,"~")=1 D  Q
 ..S CDT=$P(C,"~",2),NMT=$$CLR($P(C,"~",3)) Q:CDT=""  S CDTO=CDT
 ..S CDT=$TR(CDT,$C(9),"")
 ..S CDT=$$SPA^%L1FRM(CDT) ; --- 16.11.23
 ..
 ..I $E(CDT)="A" D  Q
 ...N NS,ENDA S NS=$E(CDT,2,20),ENDA=0
 ...S @THZ@("SETA",NS)=NMT
 ...S PRA="1^"_NS_"^"_NMT
 ..
 ..I $E(CDT)="H" D  Q
 ...S CMNT=$P($G(@THZ1@(I)),"\",8)
 ...S $P(@THZ1@(I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..
 ..I $G(MSDTO),$$MM^W4PRM,CDT'[">" S CDT=MSDTO_">"_CDT
 ..
 ..S MHT=$P(C,"~",4),CMT=$P(C,"~",5)
 ..N CM0 S CM0=$P($G(@THZ1@(I)),"\",5)
 ..I $$^W4MULTY,CM0,(CMT\CM0*CM0)'=CMT S CMT=CMT*CM0 
 ..
 ..I CDT["-C",CDT?1N.E D  Q
 ...I $P($G(@$$^W4GL("W3ORD")@(HZW,N-1)),"~")=0 D  Q
 ....S CMNT=$P(@THZ1@(I),"\",8)
 ....S $P(@THZ1@(I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ...S CMNT=$P($G(@THZ1@(I,$P(CDT,"-C"))),"\",4)
 ...S $P(@THZ1@(I,$P(CDT,"-C")),"\",4)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..I CMT["+" N CPZ S CPZ=$$CMTPZ(CMT) D  Q
 ...S @THZ1@(I,CDT)=NMT_"\"_MHT_"\"_CPZ
 ...S $P(@THZ1@(I,CDT),"\",7)=CPZ*MHT
 ..
 ..I CMT["*" S CMT=$P(CMT,"*")*$P(CMT,"*",2)
 ..N CMTO S CMTO=$P($G(@THZ1@(I,CDT)),"\",3)
 ..S @THZ1@(I,CDT)=NMT_"\"_MHT_"\"_(CMT+CMTO)_"\\"
 ..S $P(@THZ1@(I,CDT),"\",7)=N ; --- 10/10/18 LEV
 ..I PRA S $P(@THZ1@(I,CDT),"\",18)=$P(PRA,"^",2,20) ;;S PRA=0 ; *** 21/11/23
 ..;
 ..D
 ...N PAR S PAR=$P($G(@THZ1@(I)),"\") Q:'PAR  Q:'$$EZAT(PAR,CDT,I,N)&'$G(PRA)
 ...N LI S LI=$O(@THZ1@(I,CDT,9999),-1)+1
 ...S @THZ1@(I,CDT,LI)=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 ...N K,SK S K="",SK=0 F  S K=$O(@THZ1@(I,CDT,K)) Q:K=""  D
 ....I $P(^(K),"\")=CDT S SK=SK+CMT
 ...I SK S $P(@THZ1@(I,CDT),"\",3)=SK
 .
 .I $P(C,"~")=2 I $L($G(CDT)) D SET2(C,I,CDT)
 ;
 D SETHNP
 ;
 I $D(@$$^W4PRM@("WEB","PAR")) D CRFL
 ;
 S %L1SCREF("N")=1
 S %L1SCREF("S")=$G(@THZ)
 D GET^W4SCREF
 S %L1SCREF("N")=4
 S %L1SCREF("S")=$G(@THZ@("HR2"))
 D GET^W4SCREF
 ;
 S P1HZIMP="WEB" N %L3MYDVN S %L3MYDVN=WB
 ;
 I $G(CIBCARD) S @THZ@("CIBCARD")=$G(CIBCARD)
 I $G(TNBCARD) S @THZ@("TNBCARD")=$G(TNBCARD)
 I $G(@W3ORD@("SHUL")) S @THZ@("SHUL")=@W3ORD@("SHUL")
 ;
 I $G(@$$^W4PRM@("WEB","10BIS")) D
 .I '$G(TNBPAY),$P($G(A),"~",27)=$G(@$$^W4PRM@("WEB","10BIS")) D
 ..S $P(@THZ,"\",21)=1
 ;
 L +@$$^W4GL("W3ORDA")@(HZW):2
 I $D(@$$^W4GL("W3ORDA")@(HZW)) K @THZ,@THZ1 L  Q -3
 L -@$$^W4GL("W3ORDA")@(HZW)
 ;
 S %ARG("W3NEWHZN")=1
 ;
 D
 .N NOPRINT S NOPRINT=2
 .S HZM=$$ZAP^W4NEWHZ(HZW,HZM)
 ;
 I HZM>0,$$NEWINET^W4PRM D SETNEWINET(HZM)
 ;
 K @$$^W3TMPORD@(HZW)
 K @THZ,@THZ1
 I HZM<0 L  Q HZM
 ;
 D PUT^%W1PRM("BGJ",HZM)
 ;
 I '$$^W4HZMH(HZM) D ^W4TSAUTO(HZM) D
 .I $D(@$$^W4ORD@(HZM,"PCAFTPAY")) Q
 .I '$$^W4HZAFTP(HZM) Q
 .I $$GETP^%W1PRM("BGJ")'=HZM Q
 .D ^W4HZM(HZM,HZW)
 ;
 D KILL^%W1PRM("BGJ")
 ;
 I $$^W4HZMH(HZM) S $P(@$$^W4ORD@(HZM,"WEB"),";")=HZW
 ;
 D SETEND(HZW,HZM)
 ;
END ;
 ;;D SETEND(HZW,HZM)
 L  Q HZM
 ;
 ;
CS(CS) ;
 I $$CSS(HZW)'=CS Q 0
 Q 1
 ;
CSH(A) N J F J=1:1:$L(A) S I=I+1,CSH=CSH+($A(A,J)*I)
 Q
 ;
CSS(HZW) N I,II S I=0,CSH=0
 F II=1:1:$L(@$$^W4GL("W3ORD")@(HZW))  D CSH(^(HZW))
 N N,N1
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I N'="CS" D CSH($G(^(N))) D
 .S N1="" F  S N1=$O(@W3ORD@(N,N1)) Q:N1=""  D CSH($G(^(N1)))
 Q CSH
 ;
EZAT(PAR,CDT,I,N) ;
 I $$^W4EZAT(PAR) Q 1
 I $D(@THZ1@(I,CDT))>9 Q 1
 N OK S OK=0
 N A,N1 S N1=N F  S N1=$O(@W3ORD@(N1)) Q:N1=""  I N1 D  Q:OK
 .S A=$G(^(N1)) Q:$P(A,"~")=0
 .I $P(A,"~")=2 S OK=1
 Q OK
 ;
CLR(TX) ;
 S TX=$TR($$SPA^%L1FRM(TX),"\","/")
 S TX=$TR(TX,$C(9)," ")
 S TX=$$RPL^%L1FRM(TX,$C(63,179),$C(39))
 S TX=$$RPL^%L1FRM(TX,$C(63,98,215),"g""y")
 Q TX
 ;
CMTPZ(CMT) ;
 N CMPZ,CMPZ1 S CMPZ="",CMPZ1=0
 I CMT Q CMT
 I 'CMT,CMT["+" D  Q CMT 
 .I $L(CMT)<3 S CMT=$L(CMT,"+")-1_"|"_CMT Q
 .I $L(CMT)<5 S CMT=$L(CMT,"+")-1_":"_CMT Q
 ;
 N J F J=1:1:4 D
 .I $E(CMT,J)="+" S CMPZ=CMPZ_"+\",CMPZ1=CMPZ1+1 Q
 .S CMPZ=CMPZ_"\"
 Q CMPZ_";"_CMPZ1
 ;
ER N $ZT S $ZT="" D SVER^%L1X
 Q -99
 ;
HZLINKW ;
 ; - CREATE FILES FOR SENDING TO SERVER
 ; --- ^HZLINKW - ORDER LIST WAS SENDED FROM SERVER
 ; --- ^HZLINKWI - ORDER LIST WAS SENDED FROM SERVER & NOT PAID
 ;
 D DEFHZLINK
 ;
 D ^W4IN
 N DT S DT=P1DZ-2
 N N
 F  S DT=$O(@$$^W4REF@(DT)) Q:DT=""  D
 .S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 ..I $D(^HZLINKW(N)),$G(^(N))'["\*" D  ; -- WAS SENDED FROM SERVER & NOT PAID
 ...N HW S HW=$P($G(^(N)),"\") Q:HW=""
 ...N TSHL,SHULAM
 ...N A S A=$G(@$$^W4ORD@(N)) Q:A=""
 ...S TSHL=$$TSHL^W4HZMST(N)
 ...S SHULAM=$$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N) Q:'SHULAM&(TSHL>.5)
 ...S $P(@HZLINKW@(N),"\",3)=TSHL
 ...S $P(@HZLINKW@(N),"\",4)=SHULAM
 ...S @HZLINKWI@(HW)=N_"\"_$H_"\"_TSHL_"\"_SHULAM
 ;
 I $D(@HZLINKWI) D
 .N WEBMSD S WEBMSD=+$G(@$$^W4PRM@("WEB","MSD")) Q:'WEBMSD
 .S ^[$$^%L1GLD]P1WEB(WEBMSD,"HZLINKWI","FL")="HZLINKWI"
 .S ^[$$^%L1GLD]P1WEB(WEBMSD,"HZLINKWI","GLOB")="^HZLINKWI"
 Q
 ;
SF(STAM) ;
 I $$SF^W4PRM Q 1
 Q 0
 ;
HZMH2(HZW)
 I '$G(@$$^W4PRM@("HZMH2")) Q 0
 N OK S OK=0
 N I F I=1:1 Q:'$D(@W3ORD@(I))  D
 .I $P($G(^(I)),"~",2)=@$$^W4PRM@("HZMH2") S OK=2
 N I F I=1:1 Q:'$D(@$$^W4GL("W3ORDA")@(HZW,I))  D
 .I $P($G(^(I)),"~",2)=@$$^W4PRM@("HZMH2") S OK=2
 Q OK
 ;
NMB2PELE ;
 S $P(A,"~",32)=$P(A,"~")
 Q
 ;
CRFL ;
 N WB S WB=$$^%L3MYDVN
 N CD S CD=$G(@$$^W4PRM@("WEB","PAR")) Q:CD=""
 N LAST S LAST=$O(@THZ1@(9999),-1)+1
 N ST S ST=CD_"\\"_$$SHEM^W4P(CD)_"\0\1\0\0\"_$$HRA^W4P(CD)
 ;W ST,!
 S @THZ1@(LAST)=ST
 Q
 ;
 ;
SETEND(HZW,HZ)
 D DEFHZLINK
 ;
 M @$$^W4GL("W3ORDA")@(HZW)=@$$^W4GL("W3ORD")@(HZW)
 K @$$^W4GL("W3ORD")@(HZW)
 ;
 S @HZLINK@(HZ)=HZW_"\\\"_$ZD($H,"DD/MM/YEAR 24:60")
 S @HZLINKW@(HZ)=HZW_"\"_$H
 S @HZLINKI@(HZW)=HZ_"\"_$H
 ;
 N TELBAAL S TELBAAL=$$SMS2BAAL^W4PRM
 I TELBAAL,'$D(@$$^W4ORD@(HZ,"SMS2BAAL")) D
 .N RES S RES=$$MMSMS^W4SMSSND(HZ,TELBAAL)
 .I RES="OK" S @$$^W4ORD@(HZ,"SMS2BAAL")=$H_"\"_TELBAAL
 ;
 I $$MM^W4PRM D
 .I $G(MSDTO),$$ARMFAX^W3R(MSDTO) Q
 .I $$TSHL^W4HZMST(HZ)<0 Q
 .D SEND^W4FAXHTM(HZ)
 .N II,FC Q:'$G(MSDTO)
 .I $$SNDY^W4PRM D CR^WQDLV(HZ)
 .S FC=$$FAXCOPY^W3R(MSDTO) Q:'FC
 .F II=1:1:FC D
 ..D SENDTRY^W4FAXHTM(HZ,0)
 ..I $$ER^W4FAXHTM(HZ) D SENDTRY^W4FAXHTM(HZ,0) ; -- ERROR
 ..I $$ER^W4FAXHTM(HZ) D SENDTRY^W4FAXHTM(HZ,0) ; -- ERROR
 Q
 ;
 ;
SET2(C,I0,CDT) ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 S CDT2=$TR(CDT2,$C(9),"")
 S CDT2=$$SPA^%L1FRM(CDT2) ; --- 16.11.23
 Q:CDT2=""  S CDTO2=CDT2
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-")
 S CDT=$TR(CDT,$C(9),"")
 S CDT=$$SPA^%L1FRM(CDT)
 ;
 I $G(MSDTO),$$MM^W4PRM,CDT2'[">" S CDT2=MSDTO_">"_CDT2
 I $G(MSDTO),$$MM^W4PRM,CDT'[">" S CDT=MSDTO_">"_CDT
 ;
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 ;
 I SH2=1 D
 .S STT2=CDT_"\"_$G(NMT)_"\"_$G(CMT)_"\\\\"_$G(MHT)
 .S @THZ1@(I0,CDT,SH2)=STT2
 .S SH2=SH2+1
 ;
 N THZ1 S THZ1=$$^W4THZ1
 ;
 I CDT2["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=SH2 Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 I QNT2["*" S QNT2=$P(QNT2,"*")*$P(QNT2,"*",2)
 I 'QNT2 S QNT2=1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 S @THZ1@(I0,CDT,SH2)=STT2
 Q
 ;
CORLK ;
 I $L($P(A,"~")) D
 .N LK S LK=$$NUM^%L1FRM($P(A,"~"))
 .I $L(LK)<4!($$SPA^%L1FRM($TR(LK,"-",""))?1"0"."0") S LK=1111111111
 .I '$$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .I '$$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .I $$SF,$L(LK)=7,$$D^W4L("03"_LK),$$MAZAV^W4L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $$SF,$L($P(A,"~"))=7,$P(A,"~",31)="aia` lz" S $P(A,"~")="03"_$P(A,"~") Q
 .I $$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .N PELE S PELE=$P(A,"~",32)
 .I $L(PELE)>3,'$$D^W4L(LK),$$D^W4L(PELE),$$MAZAV^W4L(PELE),'$$STAMTEL(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .S PELE=$TR(PELE,"-","")
 .I $L(PELE)>3,'$$D^W4L(LK),$$D^W4L(PELE),$$MAZAV^W4L(PELE),'$$STAMTEL(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .I $L(LK)=7,$$D^W4L("03"_LK),$$MAZAV^W4L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $L(LK)=7,$$D^W4L("03-"_LK),$$MAZAV^W4L("03-"_LK) S $P(A,"~")="03-"_LK Q
 .I $L(LK)>7,$$D^W4L($E(LK,3,13)),$$MAZAV^W4L($E(LK,3,13)) S $P(A,"~")=$E(LK,3,13) Q
 .I $L(LK)>7,$$D^W4L($E(LK,4,13)),$$MAZAV^W4L($E(LK,4,13)) S $P(A,"~")=$E(LK,4,13) Q
 .N CODE S CODE=$P(A,"~",27)
 .I $L(CODE)>3,'$$D^W4L(LK),$$D^W4L(CODE),$$MAZAV^W4L(CODE),'$$STAMTEL(CODE) S $P(A,"~")=CODE Q
 .S CODE=$TR(CODE,"-!","")
 .I $L(CODE)>3,'$$D^W4L(LK),$$D^W4L(CODE),$$MAZAV^W4L(CODE),'$$STAMTEL(CODE) S $P(A,"~")=CODE Q
 .S $P(A,"~")=LK
 ;
 I $G(@$$^W4PRM@("WEB","DEFIS")) D
 .N LK S LK=$P(A,"~")
 .I $E(LK)="0",LK'["-" D
 ..I $E(LK,2)=5 S $P(A,"~")=$E(LK,1,3)_"-"_$E(LK,4,12) Q
 ..S $P(A,"~")=$E(LK,1,2)_"-"_$E(LK,3,12) Q
 Q
 ;
DEFHZLINK ;
 S HZLINK=$$^W4GL("HZLINK")
 S HZLINKI=$$^W4GL("HZLINKI")
 S HZLINKW=$$^W4GL("HZLINKW")
 S HZLINKWI=$$^W4GL("HZLINKWI")
 Q
 ;
SHINUYSHAA ; 
 N SHINUY S SHINUY=$G(@$$^W4PRM@("SHINUYSHAA",MKR)) 
 I SHINUY D  ; -- SO NET 
 .N SHAA S SHAA=$P(A,"~",6) 
 .N MIN S MIN=SHAA*60+$P(SHAA,":",2) 
 .S MIN=MIN-SHINUY I MIN<0 D 
 ..S MIN=MIN+(24*60) 
 ..N DAT S DAT=$$^%L1DC($$^%L1DC($P(A,"~",5),3)-1,1) 
 ..S $P(A,"~",5)=DAT 
 .S SHAA=$TR($J(MIN\60,2)," ",0)_":"_$TR($J(MIN#60,2)," ",0) 
 .S $P(A,"~",6)=SHAA 
 Q 
 ;
STAMTEL(TEL) ; 
 S TEL=$TR(TEL,"-","") 
 I TEL?1"0"."0"!(TEL?1"1"."1") Q 1 
 I TEL?.P Q 1 
 Q 0 
 ;
SETHNP ;
 S HNPA=$G(HNPA)
 N SUM S SUM=$P(HNPA,"\",2),HNPA=+HNPA Q:'SUM  Q:'HNPA
 S I=I+1 Q:I<2
 N HNP S HNP=$J(-SUM*HNPA*.01,2,2)
 S @THZ1@(I)=-HNPA_"%\\hixtl dgpd\"_HNP_"\1\\"_HNP
 Q
 ;
CRCARD(A) N CA S CA=$P(A,"~",48)
 S CA=$$RPL^%L1FRM(CA,"visa",2)
 Q CA
 ;
CRMMYY(A) Q $P(A,"~",49)
CRTZ(A) Q $P(A,"~",50)
CRCVV(A) Q $P(A,"~",61)
CRSUM(A) Q $P(A,"~",62)
 ;
SETHDADDS ;
 N N,N1,C,ENDA,LV1,NS,NMS
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S C=$G(^(N))
 .I $P(C,"~")=0 Q
 .I $P(C,"~")=1 D
 ..N CDT S CDT=$P(C,"~",2)
 ..S CDT=$TR(CDT,$C(9),"") Q:'CDT
 ..I CDT?1"A"1N.N D
 ...S NS=$E(CDT,2,20)
 ...S NMS=$P(C,"~",3)
 ...S ENDA=0
 ...S N1=N F  S N1=$O(@W3ORD@(N1)) Q:N1=""  Q:ENDA  D  S N=N1
 ....S C=$G(^(N1))
 ....N LVN S LVN=$P(C,"~")
 ....I LVN=0 S ENDA=1 Q
 ....N CDTN S CDTN=$P(C,"~",2) I $E(CDTN)="A" S ENDA=1 Q
 ....I LVN>1 Q
 ....S $P(@W3ORD@(N1),"~",7)=$$GETI^W4DEFMN(NS)_" "_$P(@W3ORD@(N1),"~",7)
 Q
 ;
CHKCDADDS ;
 N N,C,ADDS
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S C=$G(^(N))
 .I $P(C,"~")=0 K ADDS Q
 .I $P(C,"~")=1 D
 ..N CDT S CDT=$P(C,"~",2) Q:CDT=""  Q:CDT["-"  Q:'CDT
 ..S CDT=$TR(CDT,$C(9),"") Q:'CDT
 ..N MHT S MHT=$P(C,"~",4)
 ..I CDT,$D(ADDS(CDT)),+MHT'=+ADDS(CDT) D  Q
 ...N J F J=1:1 Q:'$D(ADDS("0-"_CDT_"-"_J))
 ...S CDT="0-"_CDT_"-"_J
 ...S $P(@W3ORD@(N),"~",2)=CDT
 ..I CDT,'$D(ADDS(CDT)) S ADDS(CDT)=$P(C,"~",4) Q
 Q
 ;
SETNEWINET(HZM) ; 
 S FL=$$WEBL^W3MAIN_"newinetord"
 O FL:(REWIND:NEWVERSION:WRITE)
 U FL W HZM,!
 C FL
 Q
 ;
OBR(HZW) ; 
 N W3ORD0 S W3ORD0=$$^W4GL("W3ORD0")_"(HZW)"
 N W3ORD1 S W3ORD1=$$^W4GL("W3ORD1")_"(HZW)"
 K @W3ORD1
 K @W3ORD0 M @W3ORD0=@W3ORD
 N N,A,PRMVC S PRMVC=0
 ;
 S @W3ORD1=$$CLRSMB(@W3ORD)
 ;
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S A=$G(@W3ORD@(N))
 .S A=$$CLRSMB(A) 
 .N LV S LV=$P(A,"~")
 .N CD S CD=$P(A,"~",2)
 .I $$PAPJ^W4PRM,LV=0 S PRMVC=0
 .I $$PAPJ^W4PRM,LV=0,CD=3053 S PRMVC=1
 .I $$PAPJ^W4PRM,LV=1,PRMVC,CD["A",PRMVC=1 Q
 .S @W3ORD1@(N)=A
 .I $$PAPJ^W4PRM,LV=1,PRMVC,CD'="",PRMVC=1 D
 ..N SUG S SUG=$$SUG^W4P(CD)
 ..I SUG=1!(SUG=2)!(SUG=5)!(SUG=12)!(SUG=13)!(SUG=24)!(SUG=44) Q
 ..S $P(@W3ORD1@(N),"~")=2 
 ;
 K @W3ORD M @W3ORD=@W3ORD1
 Q 
 ;
 ; 
CLRSMB(A) ; 
 N B,J,K,SMB
 S B="",K=0
 F J=1:1:$L(A) S SMB=$A(A,J) I SMB>31,SMB<127,SMB'=63 S B=B_$C(SMB)
 Q B 
 ;
 ;
CHKSTRUCT  ;
 N MST
 N N,A,A0,K S A0="",K=0
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .I $E($P(A0,"~",2))="A",$P(A,"~")=2 K MST(K) 
 .S K=K+1,MST(K)=A
 .S A0=A
 ; 
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I N K ^(N)
 S K="" F  S K=$O(MST(K)) Q:K=""  S @W3ORD@(K)=MST(K)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3NEWHZE
W3NEWHZE(HZW) ; [ 10.07.19 13:12 ] [ 11.08.13 11:18 ] [ 10.08.13 15:33 ] 
 ; -- PARAMETERS : ^P1PRM("WEB","MKBL") (99)
 ;                 ^P1PRM("WEB","MSD") (1)
 ;                 ^P1PRM("WEB","10BIS") (101010)
 ;                 ^P1PRM("WEB","CPHON") (55000)
 ;
 N (HZW) N $ZT
 S $ZT="ZG "_$ZL_":ER^W3NEWHZE"
 ;I 1/0
 S JB=+HZW
 S W3ORD="^[$$^W3MAIN]W3ORD"
 I '$D(@W3ORD@(HZW)) Q -1
 I $D(@W3ORD@(HZW))'=11 Q -2
 ;
 D HZLINKGL
 ;
 I $G(@W3ORD@(HZW,"HZRSD")) D  Q HZ
 .S HZ=$G(^("HZRSD"))
 .N ASM S ASM=$P(@$$^W4GL("W3ORD")@(HZW),"~",30)
 .I $L(ASM) S ASM="W"_HZW_":"_ASM
 .E  S ASM="W"_HZW
 .S $P(@$$^W4ORD@(HZ,"WEB"),";")=HZW
 .D SETEND(HZW,HZ)
 ;
 D ^W4IN
 S HZM="ycg",ER=0
 S %SCRN="P1HZ"
 I HZW<1 Q "00000"
 ;
 D HZLINKW ; --- BDIKA EIZE HAZMANOT SHULMU
 ;
 N WB S WB="JB"_HZW
 S THZ=$$^W4THZ
 S THZ1=$$^W4THZ1
 ;
 K @THZ,@THZ1
 N A,B,C,I S A=@W3ORD@(HZW)
 ;
 I $L($P(A,"~")) D
 .N LK S LK=$$SPA^%L1FRM($P(A,"~"))
 .I '$$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .S LK=$TR(LK,"-\*","")
 .I $G(@$$^W4PRM@("WEB","DEFIS")) D
 ..N LK S LK=$P(A,"~") Q:$L(LK)<9
 ..I $E(LK)="0",LK'["-" D
 ...I $E(LK,2)=5 S $P(A,"~")=$E(LK,1,3)_"-"_$E(LK,4,12) Q
 ...S LK=$E(LK,1,2)_"-"_$E(LK,3,12) Q
 .I '$$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .I $$SF,$L(LK)=7,$$D^W4L("03"_LK),$$MAZAV^W4L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $$SF,$L($P(A,"~"))=7,$P(A,"~",31)="aia` lz" S $P(A,"~")="03"_$P(A,"~") Q
 .I $$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .N PELE S PELE=$P(A,"~",32)
 .I $L(PELE)>3,'$$D^W4L(LK),$$D^W4L(PELE),$$MAZAV^W4L(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .S PELE=$TR(PELE,"-","")
 .I $L(PELE)>3,'$$D^W4L(LK),$$D^W4L(PELE),$$MAZAV^W4L(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .I $L(LK)=7,$$D^W4L("03"_LK),$$MAZAV^W4L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $L(LK)=7,$$D^W4L("03-"_LK),$$MAZAV^W4L("03-"_LK) S $P(A,"~")="03-"_LK Q
 .I $L(LK)>7,$$D^W4L($E(LK,3,13)),$$MAZAV^W4L($E(LK,3,13)) S $P(A,"~")=$E(LK,3,13) Q
 .I $L(LK)>7,$$D^W4L($E(LK,4,13)),$$MAZAV^W4L($E(LK,4,13)) S $P(A,"~")=$E(LK,4,13) Q
 .N CODE S CODE=$P(A,"~",27)
 .I $L(CODE)>3,'$$D^W4L(LK),$$D^W4L(CODE),$$MAZAV^W4L(CODE) S $P(A,"~")=CODE Q
 .S CODE=$TR(CODE,"-!","")
 .I $L(CODE)>3,'$$D^W4L(LK),$$D^W4L(CODE),$$MAZAV^W4L(CODE) S $P(A,"~")=CODE Q
 .I $L(LK)<4 S LK=1111111
 .S $P(A,"~")=LK
 ;
 I $P(A,"~",3)?1N.N S $P(A,"~",3)=$$SNIFA^W3SNIF($P(A,"~",3))
 I $P(A,"~",3)?.P S $P(A,"~",3)="TAKEAWAY"
 I $P(A,"~",6)'?2N1":"2N S $P(A,"~",6)=$P(A,"~",42)_":"_$P(A,"~",43)
 S $P(A,"~",30)="W"_HZW
 I '$P(A,"~",18) D
 .S $P(A,"~",18)=$TR($J($G(@$$^W4PRM@("WEB","MKBL"),99),5)," ",0)
 .I $$HZMH2(HZW),$G(@$$^W4PRM@("MKBLHZ")) S $P(A,"~",18)=$TR($J($G(@$$^W4PRM@("MKBLHZ")),5)," ",0)
 I $P(A,"~",21)=5 S $P(A,"~",21)=8 ;  -- CIBUS
 I $P(A,"~",21)="T" S $P(A,"~",21)=5 ;  --TLUSH
 I $P(A,"~",21)=6 S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","CPHON"),55000) ; 55000 ; -- COUPONPHONE
 I $P(A,"~",21)=7 S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","10BIS"),101010) ;101010 ; -- TENBIS
 ;
 I $P(A,"~",51)=4!($P(A,"~",51)=1) D  ; SEF-OH OR TAFN
 .S $P(A,"~",21)=4
 .S $P(A,"~",27)=$G(@$$^W4PRM@("WEB","FOOD"))
 .S @THZ@("FOODPAY")=$P(A,"~",11)
 ;
 I $L($P(A,"~",56)) D  ; EMAIL
 .S @THZ@("EMAIL")=$P(A,"~",56)
 I $L($P(A,"~",57)) D  ; MIKUD
 .S @THZ@("MIKUD")=$P(A,"~",57)
 I $L($P(A,"~",58)) D  ; FAX
 .S @THZ@("FAX")=$P(A,"~",58)
 I $L($P(A,"~",59)) D  ; TELB
 .S @THZ@("TELB")=$P(A,"~",59)
 ;
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 I $P(A,"~",27)="" S $P(A,"~",27)=$P(A,"~",1)
 ;
 S TSHL=$P(A,"~",11)
 S AHHN=$P(A,"~",38)
 S DM=$P(A,"~",9)
 S TOTORD=0
 D
 .N I
 .F I=1:1 Q:'$D(@W3ORD@(HZW,I))  D
 ..N A S A=$G(^(I))
 ..S TOTORD=TOTORD+($P(A,"~",4)*$P(A,"~",5))
 ;
 I $P(A,"~",8)="",AHHN D
 .S HN=$J(TOTORD*AHHN*.01,2,2)_"="_AHHN_"%"
 .S $P(A,"~",8)=HN
 .S TSHL=TOTORD+DM-HN
 ;
 D ^W4IGUL
 S $P(A,"~",11)=TSHL
 I $G(HNH2) S $P(A,"~",8)=$J($P(A,"~",8)+HNH2,2,2)
 S MAZMIN=""
 ;
 I $L($P(A,"~",47)) D
 .S MAZMIN=$TR($P(A,"~",2),"\","/")
 .S $P(A,"~",2)=$TR($P(A,"~",47),"\","/")
 ;
 S A=$TR(A,"\","/")
 S @THZ=$TR($P(A,"~",1,30),"~","\")
 ;;I $P(A,"~",35)?2N1":"2N S $P(@THZ,"\",6)=$P(A,"~",35) ; - ZMAN MEUSHAR
 S B=""
 S $P(B,"\\",6)=$TR($P(A,"~",34),"\","/") ; HRA
 S IR=$TR($P(A,"~",31),"\","/") ; IR
 I +$G(@$$^W4PRM@("WEB","MSD"))=1,IR["gezit dilvxd" S IR="dilvxd"
 S MSDTO=""
 ;
 I $G(@$$^W4PRM@("MM")) D
 .I $G(@W3ORD@(HZW,"MSDTO")) S MSDTO=^("MSDTO")
 .E  S MSDTO=$G(@W3ORD@(HZW,"MSD"))-$G(@$$^W4PRM@("WEB","RESTSHIFT"))
 .S $P(B,"\\",3)=MSDTO
 ;
 S $P(B,"\\",4)=IR
 S $P(B,"\\",5)=MAZMIN
 S $P(B,"\\",7)=$TR($P(A,"~",32),"\","") ; PELE
 S @THZ@("HR2")=B
 ;
 S CIBCARD=""
 I $L($P(A,"~",46)) D
 .S CIBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",46))
 .S @THZ@("CIBCARD")=$TR(CIBCARD,"\","")
 ;
 S TNBCARD=""
 I $L($P(A,"~",53)) D
 .S TNBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",53))
 .S @THZ@("TNBCARD")=$TR(TNBCARD,"\","")
 ;
 S TNBPAY=$P(A,"~",54)
 ;
 I $L($P(A,"~",48)) D
 .N CVV,SUM S CVV=$P(A,"~",61),SUM=$P(A,"~",62)
 .I 'CVV S CVV=""
 .;;I 'SUM S SUM=$P(A,"~",11)
 .S @THZ@("CREDCARD")=$$DESCR^W3ENCR(HZW,$P(A,"~",48))_"~"_$P(A,"~",49)_"~"_$$DESCR^W3ENCR(HZW,$P(A,"~",50))_"~"_CVV_"~"_SUM
 .S $P(@THZ,"\",21)=3
 ;
 S I=0 S (CD,CDT,CDTO,NM)=""
 ;
 I $G(@$$^W4PRM@("MM")) D
 .S I=1
 .S @THZ1@(I)=":"_MSDTO_"\\"_$G(@$$^W4GL("P1MSD")@(MSDTO))_"\\\\\\@@!"
 ;
 S N="" F  S N=$O(@W3ORD@(HZW,N)) Q:N=""  D
 .S C=$G(^(N))
 .
 .I $P(C,"~")=0 D  Q
 ..S I=I+1 K CDT
 ..S CD=$P(C,"~",2),NM=$TR($$SPA^%L1FRM($P(C,"~",3)),"\","/")
 ..Q:CD=""
 ..S MH=$P(C,"~",4),CM=$TR($P(C,"~",5),"\","/")
 ..S CMNT=$TR($P(C,"~",7),"\","/")
 ..S TSF=0,SUM=MH*CM
 ..
 ..S N1=N F  S N1=$O(@W3ORD@(HZW,N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...S D=$G(^(N1)) Q:D=""
 ...N CMT S CMT=$P(D,"~",5)
 ...I CMT["*" S CMT=$P(CMT,"*",2)
 ...S TSF=TSF+($P(D,"~",4)*CM*CMT)
 ..
 ..N ATTN S ATTN="" ;;I $D(@$$^W4GL("PRTNO")@(CD)) S ATTN="[! lerp]"
 ..E  I $D(@$$^W4GL("PRTEND")@(P1DZ,CD)),$G(@$$^W4GL("PRTEND")@(P1DZ,CD))<CM S ATTN="[!xnbp]"
 ..
 ..S @THZ1@(I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(SUM+TSF)_"\"_CMNT_ATTN_"\"
 .
 .
 .I $P(C,"~")=1 D  Q
 ..N NMT,CMNT
 ..S CDT=$P(C,"~",2),NMT=$$SPA^%L1FRM($P(C,"~",3)) Q:CDT=""  S CDTO=CDT
 ..I $E(CDT)="A" Q
 ..I $E(CDT)="H" D  Q
 ...S CMNT=$P(@THZ1@(I),"\",8)
 ...S $P(@THZ1@(I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..I CDT["-C",CDT?1N.E D  Q
 ...I $P($G(@W3ORD@(HZW,N-1)),"~")=0 D  Q
 ....S CMNT=$P(@THZ1@(I),"\",8)
 ....S $P(@THZ1@(I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ...S CMNT=$P($G(@THZ1@(I,$P(CDT,"-C"))),"\",4)
 ...S $P(@THZ1@(I,$P(CDT,"-C")),"\",4)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..
 ..S MHT=$P(C,"~",4),CMT=$P(C,"~",5)
 ..I CMT["+" N CPZ S CPZ=$$CMTPZ(CMT) D  Q
 ...S @THZ1@(I,CDT)=NMT_"\"_MHT_"\"_$P(CPZ,";")_($P(CPZ,";",2)*MHT)
 ..
 ..I CMT["*" S CMT=$P(CMT,"*")*$P(CMT,"*",2)
 ..N CMTO S CMTO=$P($G(@THZ1@(I,CDT)),"\",3)
 ..S @THZ1@(I,CDT)=NMT_"\"_MHT_"\"_(CMT+CMTO)_"\\"
 ..;
 ..I $G(@$$^W4PRM@("TSFNEW")) D
 ...N SH2 S SH2=$O(@THZ1@(I,CDT,9999),-1)+1
 ...S @THZ1@(I,CDT,SH2)=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 .
 .I $P(C,"~")=2,$L($G(CDT)) D SET2(C,I,CDT)
 ;
 I $D(@$$^W4PRM@("WEB","PAR")) D CRFL
 ;
 I $G(@$$^W4PRM@("HZMH")),@$$^W4PRM@("HZMH")'=$G(@$$^W4PRM@("WEB","PAR")) D
 .I '$D(@THZ@("CREDCARD")) Q
 .N CD S CD=$G(@$$^W4PRM@("HZMH")) Q:CD=""
 .N LAST S LAST=$O(@THZ1@(9999),-1)+1
 .N ST S ST=CD_"\\"_$$SHEM^W4P(CD)_"\0\1\0\0\"_$$HRA^W4P(CD)
 .S @THZ1@(LAST)=ST
 ;
 S %L1SCREF("N")=1
 S %L1SCREF("S")=$G(@THZ)
 D GET^W4SCREF
 ;
 S %L1SCREF("N")=4
 S %L1SCREF("S")=$G(@THZ@("HR2"))
 D GET^W4SCREF
 ;
 ;;S P1HZIMP="WEB" N %L3MYDVN S %L3MYDVN=WB
 ;
 I $G(CIBCARD) S @THZ@("CIBCARD")=$G(CIBCARD)
 I $G(TNBCARD) S @THZ@("TNBCARD")=$G(TNBCARD)
 ;
 I $G(@W3ORD@(HZW,"SHUL")) S @THZ@("SHUL")=^[$$^W3MAIN]W3ORD(HZW,"SHUL")
 ;
 I $G(TNBPAY) D
 .S @THZ@("TNBPAY")=$G(TNBPAY)
 .I TNBPAY+$P(TNBPAY,":",2)<TSHL S $P(@THZ,"\",21)=1
 ;
 I $G(@$$^W4PRM@("WEB","10BIS")) D
 .I '$G(TNBPAY),$P($G(A),"~",27)=$G(@$$^W4PRM@("WEB","10BIS")) D
 ..S $P(@THZ,"\",21)=1
 ;
 L +@$$^W4ORD:2
 S HZM=$$^W4PUTHZ(HZW,HZM)
 L -@$$^W4ORD
 ;
 S HZM=HZMS
 I 'HZM S ER=-6 Q ER
 I $$^W4HZMH(HZM) S $P(@$$^W4ORD@(HZM,"WEB"),";")=HZW
 ;
 S (GLBV,GLBV1)=$$^W4ORD_"(HZM)"
 ;
 I '$D(@THZ@("NOPC")) D ^W4HZMPC ; -- PRINT ORDER
 ;
 I $$^W4HZMH(HZM) G END
 ;
 ;;I $L($G(^P1HZ(HZM,"CIBCARD"))) S ^P3TSAUTO(HZM)=""
 ;;I $G(^P1HZ(HZM,"TNBPAY")) S ^P3TSAUTO(HZM)=""
 ;;I $G(^P1HZ(HZM,"FOODPAY")) S ^P3TSAUTO(HZM)=""
 ;;I $$CODTS^P3HZMST(HZM)=5!$G(^P1HZ(HZM,"SHUL")) S ^P3TSAUTO(HZM)="" ; -- TLUSH
END ;
 D SETEND(HZW,HZM)
 Q HZM
 ;
 ;
CS(CS) ;
 I $$CSS(HZW)'=CS Q 0
 Q 1
CSH(A) N J F J=1:1:$L(A) S I=I+1,CSH=CSH+($A(A,J)*I)
 Q
CSS(HZW) N I,II S I=0,CSH=0
 F II=1:1:$L(@W3ORD@(HZW))  D CSH(^(HZW))
 N N,N1
 S N="" F  S N=$O(@W3ORD@(HZW,N)) Q:N=""  I N'="CS" D CSH($G(^(N))) D
 .S N1="" F  S N1=$O(@W3ORD@(HZW,N,N1)) Q:N1=""  D CSH($G(^(N1)))
 Q CSH
 ;
CMTPZ(CMT) ;
 N CMPZ,CMPZ1 S CMPZ="",CMPZ1=0
 N J F J=1:1:4 D
 .I $E(CMT,J)="+" S CMPZ=CMPZ_"+\",CMPZ1=CMPZ1+1 Q
 .S CMPZ=CMPZ_"\"
 Q CMPZ_";"_CMPZ1
 ;
ER N $ZT S $ZT="" D SVER^%L1X
 Q -99
 ;
HZLINKW ;--------- DORABOTAT
 ; - CREATE FILES FOR SENDING TO SERVER
 ; --- ^HZLINKW - ORDER LIST WAS SENDED FROM SERVER
 ; --- ^HZLINKWI - ORDER LIST WAS SENDED FROM SERVER & NOT PAID
 ;
 D ^W4IN
 N DT S DT=P1DZ-2
 N N
 F  S DT=$O(@$$^W4GL("P1H")@(DT)) Q:DT=""  D
 .S N="" F  S N=$O(@$$^W4GL("P1H")@(DT,N)) Q:N=""  D
 ..I $D(@HZLINKW@(N)),$G(^(N))'["\*" D  ; -- WAS SENDED FROM SERVER & NOT PAID
 ...N HW S HW=$P($G(^(N)),"\") Q:HW=""
 ...N TSHL,SHULAM
 ...N A S A=$G(@$$^W4ORD@(N)) Q:A=""
 ...S TSHL=$$TSHL^W4HZMST(N)
 ...S SHULAM=$$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N) Q:'SHULAM&(TSHL>.5)
 ...S $P(@HZLINKW@(N),"\",3)=TSHL
 ...S $P(@HZLINKW@(N),"\",4)=SHULAM
 ...S @HZLINKWI@(HW)=N_"\"_$H_"\"_TSHL_"\"_SHULAM
 ;
 I $D(@HZLINKWI) D
 .N WEBMSD S WEBMSD=+$G(@$$^W4PRM@("WEB","MSD")) Q:'WEBMSD
 .S ^[$$^W3MAIN]P1WEB(WEBMSD,"HZLINKWI","FL")="HZLINKWI"
 .S ^[$$^W3MAIN]P1WEB(WEBMSD,"HZLINKWI","GLOB")="^HZLINKWI"
 Q
 ;
HZLINKGL ;
 S HZLINK=$$^W4GL("HZLINK")
 S HZLINKI=$$^W4GL("HZLINKI")
 S HZLINKW=$$^W4GL("HZLINKW")
 S HZLINKWI=$$^W4GL("HZLINKWI")
 Q
 ;
SF(STAM) ;
 I +$G(@$$^W4PRM@("WEB","MSD"))=1 Q 1
 Q 0
 ;
HZMH2(HZW)
 I '$G(@$$^W4PRM@("HZMH2")) Q 0
 N OK S OK=0
 N I F I=1:1 Q:'$D(@W3ORD@(HZW,I))  D
 .I $P($G(^(I)),"~",2)=@$$^W4PRM@("HZMH2") S OK=2
 N I F I=1:1 Q:'$D(^[$$^W3MAIN]W3ORDA(HZW,I))  D
 .I $P($G(^(I)),"~",2)=@$$^W4PRM@("HZMH2") S OK=2
 Q OK
 ;
NMB2PELE ;
 S $P(A,"~",32)=$P(A,"~")
 Q
 ;
CRFL ;
 N CD S CD=$G(@$$^W4PRM@("WEB","PAR")) Q:CD=""
 N LAST S LAST=$O(@THZ1@(9999),-1)+1
 N ST S ST=CD_"\\"_$$SHEM^W4P(CD)_"\0\1\0\0\"_$$HRA^W4P(CD)
 ;W ST,!
 S @THZ1@(LAST)=ST
 Q
 ;
SETEND(HZW,HZ)
 M ^W3ORDA(HZW)=@W3ORD@(HZW)
 K @W3ORD@(HZW)
 S @HZLINK@(HZ)=HZW_"\\\"_$ZD($H,"DD/MM/YEAR 24:60")
 S @HZLINKW@(HZ)=HZW_"\"_$H
 S @HZLINKI@(HZW)=HZ_"\"_$H
 Q
 ;
SET2(C,I0,CDT) ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 Q:CDT2=""  S CDTO2=CDT2
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-")
 ;
 I CDT2["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=$O(@THZ1@(I0,CDT,99999),-1) Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 I QNT2["*" S QNT2=$P(QNT2,"*")*$P(QNT2,"*",2)
 I 'QNT2 S QNT2=1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 S @THZ1@(I0,CDT,SH2)=STT2
 Q
 

W3NEWHZN
W3NEWHZN(HZW) ; [ 23.09.26 11:18 ] [ 14.09.26 17:26 ] [ 31.08.26 11:11 ] 
 ; -- PARAMETERS : @$$^W4PRM@("WEB","MKBL") (99)
 ;                 @$$^W4PRM@("WEB","MSD") (1)
 ;                 @$$^W4PRM@("WEB","10BIS") (101010)
 ;                 @$$^W4PRM@("WEB","CPHON") (55000)
 ;
 N (HZW) N $ZT
 S JB=$$^%W1SsID("W3NEWHZN")
 S $ZT="ZG "_$ZL_":ER^W3NEWHZN"
 S W3ORD=$$^W4GL("W3ORD")_"(HZW)"
 ;
 S MAINMSD=$G(^[$$^W3MAIN]P1PRM("MAINMSD"))
 I MAINMSD D PUT^%W1PRM("MSD",MAINMSD,HZW) ; -------------- ZMANI !!!!!
 ; 
 I '$D(@W3ORD) Q -1
 I $D(@W3ORD)'=11 Q -2
 ;
 L @W3ORD:4 ; --- WAS 2 -- 07/06/22
 ;
 I $D(@$$^W4GL("W3ORDA")@(HZW)) L  Q -3
 ;
 I $P($G(@W3ORD),"~",30)["EMAIL:" Q -4  ; --- HUKAM BE KUPA LE MAIL
 ;
 I $G(@$$^W4PRM@("INTLOCK")) D
 .N LOCK S LOCK=$G(^|$$^W3MAIN|TMPLOCK)
 .F I=1:1:10 Q:'$G(^|$$^W3MAIN|TMPLOCK)  Q:$G(^|$$^W3MAIN|TMPLOCK)=$J  H 1
 .S ^|$$^W3MAIN|TMPLOCK=$J
 ;
 ;
 I $G(@W3ORD@("HZRSD")) D  D EX Q HZ
 .S HZ=$G(^("HZRSD"))
 .N ASM S ASM=$P($G(@W3ORD),"~",30)
 .I $L(ASM) S ASM="W"_HZW_":"_ASM
 .E  S ASM="W"_HZW
 .S $P(@$$^W4ORD@(HZ,"WEB"),";")=HZW
 .D SETEND(HZW,HZ)
 ;
 I '$G(@$$^W4PRM@("WEB","10BIS")),$G(@$$^W4PRM@("10BIS")) D
 .S @$$^W4PRM@("WEB","10BIS")=@$$^W4PRM@("10BIS")
 ;
 I '$G(@$$^W4PRM@("WEB","CIBUS")),$G(@$$^W4PRM@("CIBUS")) D
 .S @$$^W4PRM@("WEB","CIBUS")=@$$^W4PRM@("CIBUS")
 ;
 D ^W4IN
 S HZM="ycg",ER=0
 S %SCRN="P1HZ"
 I HZW<1 D EX Q "00000"
 ;
 D HZLINKW ; --- BDIKA EIZE HAZMANOT SHULMU
 D CHKSTRUCT
 ;
 N WB S WB=$$^W4MYDVN ;"HZW"_HZW
 D THZ^W4NEWHZ(JB)
 D PUT^%W1PRM("THZ",THZ)
 D PUT^%W1PRM("THZ1",THZ1)
 K @THZ,@THZ1
 ;
 N A,B,C,I S A=$G(@W3ORD)
 ;
 D CORLK
 ;
 I $P(A,"~",6)'?2N1":"2N.E,$P(A,"~",42)?1N.E,$P(A,"~",43)?1N.E D
 .S $P(A,"~",6)=$P(A,"~",42)_":"_$P(A,"~",43)
 ;
 I $P(A,"~",6)'?2N1":"2N.E,$P(A,"~",6)[":" D
 .N TM S TM=$P(A,"~",6)
 .S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J($P(TM,":",2),2)," ",0)
 .S $P(A,"~",6)=TM
 ;
 D
 .N DATCB S DATCB=$P(A,"~",4)
 .N SHAACB S SHAACB=$P(DATCB,"  ",2)
 .N SECCB S SECCB=SHAACB*3600+($P(SHAACB,":",2)*60)
 .S DATCB=$P(DATCB," ")
 .S DTCB=$$^%L1DC(DATCB,3)
 .N TRH S TRH=$P(A,"~",5)
 .N TRHD S TRHD=$$^%L1DC(TRH,3)
 .N TM S TM=$P(A,"~",6)
 .
 .I TRHD=DTCB,SHAACB>10,TM<$$SHAAZ^W4PRM D
 ..I TM="00:00" D  Q
 ...N PLUS S PLUS=40
 ...N TAW S TAW=$$TAKEAWAY^W3HZMST(HZW)
 ...I $G(@$$^W4PRM@("ZAZA")) S PLUS=$S(TAW:30,1:45)
 ...;;S SECCB=$P($H,",",2)
 ...S TM=$$T^%L1TIME(SECCB+(PLUS*60))
 ...S $P(A,"~",6)=TM
 ...I TM="24:00" Q
 ...I $E(TM,1,2)>23 D
 ....S $E(TM,1,2)="00"
 ....S TRH=$$^%L1DC(TRHD+1,1)
 ....S $P(A,"~",5)=TRH
 ....S $P(A,"~",6)=TM
 ..
 ..S TRH=$$^%L1DC(TRHD+1,1)
 ..S $P(A,"~",5)=TRH
 ;
 S $P(A,"~",30)="W"_HZW
 ;
 D ^W4CRLK(HZW,$$^W4GL("W3ORD")) ; -- CREATE CUSTOMER IF NOT EXIST
 ;
 N MKR S MKR=$$MKR^W3MKR($P(A,"~",51))
 S @THZ@("MKRDLV")=MKR
 ;
 D  ; I MKR=10 D  ; -- TENBIS
 .N DATCB S DATCB=$P(A,"~",4)
 .N SHAACB S SHAACB=$P(DATCB,"  ",2)
 .S DATCB=$P(DATCB," ")
 .N DAT S DAT=$P(A,"~",5)
 .N SHAA S SHAA=$P(A,"~",6)
 .N CITY S CITY=$P(A,"~",31)
 .N TVAH S TVAH=$G(@$$^W4PRM@("TIMEHZ"))
 .I $P(A,"~",3)="TAKEAWAY"!(CITY="TAKEAWAY")!(CITY="TAW")!(CITY="") D
 ..S TVAH=$$THZTAW^W3TIME
 .S TVAH=TVAH*60
 .
 .I DAT=DATCB,DAT=$ZD($H,"DD.MM.YY"),SHAACB>10,SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<TVAH D
 ..N SHAA0 S SHAA0=SHAA
 ..S SHAA=$$TM^W3TIME($H,CITY,1)
 ..I SHAA<SHAA0,SHAA<6 S DAT=$ZD($H+1,"DD.MM.YY")
 ..S $P(A,"~",5)=DAT
 ..S $P(A,"~",6)=SHAA
 ;
 I '$P(A,"~",18) D
 .S $P(A,"~",18)=$TR($J($G(@$$^W4PRM@("WEB","MKBL"),99),5)," ",0)
 .I $$SF^W4PRM,'MKR S $P(A,"~",18)="00099"
 .I $$HZMH2(HZW),$G(@$$^W4PRM@("MKBLHZ")) S $P(A,"~",18)=$TR($J($G(@$$^W4PRM@("MKBLHZ")),5)," ",0)
 ;
 S CODTS=$P(A,"~",21)
 ;
 I CODTS=5 S $P(A,"~",21)=8 ;  -- CIBUS
 ;
 I CODTS=15,$P(A,"~",17),'$P(A,"~",12) D
 .S $P(A,"~",12)=$P(A,"~",17)
 .S $P(A,"~",17)=""
 ;
 I CODTS="T" S $P(A,"~",21)=5 ;  --TLUSH
 ;
 I CODTS=6,$G(@$$^W4PRM@("WEB","CPHON")) D
 .S $P(A,"~",21)=4,$P(A,"~",27)=@$$^W4PRM@("WEB","CPHON")
 ;
 S TNBPAY=$P(A,"~",54)
 ;
 S CODTS=$TR(CODTS,5,8)
 I +CODTS=7,CODTS'["7;7" D
 .N TBIS S TBIS=$G(@$$^W4PRM@("WEB","10BIS"))
 .I TBIS="" S TBIS=$G(@$$^W4PRM@("10BIS"))
 .Q:'TBIS
 .S $P(A,"~",27)=TBIS
 .I 'TNBPAY,MKR=31!(MKR=30)!(MKR=98) S TNBPAY=$P(A,"~",11) ; -- PAIDIT
 .
 .I $P(CODTS,";",2),TNBPAY,TNBPAY<$P(A,"~",11) D
 ..S $P(A,"~",21)=$P(CODTS,";",2,20)
 .
 .I '$P(CODTS,";",2),TNBPAY,TNBPAY<$P(A,"~",11) D
 ..S $P(A,"~",21)=1
 .
 .N TBCARD S TBCARD=$P(A,"~",53)
 .
 .I TNBPAY,'TBCARD,CODTS'["7;5",CODTS'["7;8" D  ; -- 09/09/25 --> COMMENT
 ..S $P(A,"~",17)=TNBPAY
 ..S $P(A,"~",54)=""
 ..S TNBPAY=0
 .
 .S CODTS=$P(A,"~",21)
 ;
 I $G(TNBPAY) D
 .S @THZ@("TNBPAY")=$G(TNBPAY)
 ;
 I CODTS=11,$G(@$$^W4PRM@("WEB","CLRX")) D
 .S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","CLRX")) ; -- CELLARIX
 ;
 S TNBPAY=$P(A,"~",54)
 ;
 I +CODTS=14,$G(@$$^W4PRM@("WEB","BUYME")) D
 .S $P(A,"~",27)=@$$^W4PRM@("WEB","BUYME")
 .S BUYMEPAY=$P(A,"~",17)
 .I 'BUYMEPAY S BUYMEPAY=$P(A,"~",11)
 .S @THZ@("BUYMESUM")=BUYMEPAY
 ;
 I MKR=8 D  ; -- CIBUS
 .N CIB S CIB=$G(@$$^W4PRM@("WEB","CIBUS"))
 .I CIB="" S CIB=$G(@$$^W4PRM@("CIBUS"))
 .Q:'CIB
 .S $P(A,"~",21)=8,$P(A,"~",27)=CIB
 .S @THZ@("CIBINT")=1
 ;
 I $P(A,"~",68) D 
 .S @THZ@("CIBSUM")=$P(A,"~",68)
 ;
 I $P(A,"~",75) D  ; -- COORD
 .S @THZ@("COORD")=$TR($P(A,"~",75),";",",")
 ;
 I MKR=4!(MKR=1) D  ; SEF OH OR TAFN
 .S $P(A,"~",21)=4
 .D
 ..N LK,LKN S LK=$P(A,"~",27)
 ..I MKR=1 D  S $P(A,"~",27)=LKN Q
 ...I LK=6132120,$G(@$$^W4PRM@("WEB","CPHON")) S LKN=^("CPHON") Q
 ...I LK=1700701011,$G(@$$^W4PRM@("WEB","10BIS")) S LKN=^("10BIS") Q
 ...I LK=1700701130,$G(@$$^W4PRM@("WEB","CIBUS")) S LKN=^("CIBUS") Q
 ...S LKN=$G(@$$^W4PRM@("WEB","FOOD"))
 ..
 ..S $P(A,"~",27)=$G(@$$^W4PRM@("WEB","FOOD"))
 .
 .S @THZ@("FOODPAY")=$P(A,"~",11)
 ;
 I CODTS=12 D
 .I $G(@$$^W4PRM@("WEB","PAIDIT")) D
 ..S $P(A,"~",27)=$G(@$$^W4PRM@("WEB","PAIDIT"))
 .S $P(A,"~",21)=3
 .S $P(A,"~",51)=12
 ;
 I CODTS=13 D  ; -- MISHLOHA C-A
 .S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","MSH"))
 .S $P(A,"~",51)=12
 .N CRSUM S CRSUM=$$CRSUM(A)
 .I 'CRSUM,CRSUM'[";" S CRSUM=$P(A,"~",11)
 .S @THZ@("MSHPAY")=CRSUM
 ;
 S CODTSM=CODTS
 I CODTS[";" S CODTSM=";"_CODTS_";"
 ;
 I CODTS[";",CODTSM[";11;"!(CODTSM[";12;")!(CODTSM[";13;") D  ; -- MISHLOHA C-A
 .;;S $P(A,"~",21)=4,$P(A,"~",27)=$G(@$$^W4PRM@("WEB","MSH"))
 .S $P(A,"~",51)=12
 .N CRSUM S CRSUM=$$CRSUM(A)
 .I 'CRSUM,CRSUM'[";" S CRSUM=$P(A,"~",11)
 .S @THZ@("MSHPAYM")=CODTS_"~"_$P(A,"~",48)_"~"_CRSUM
 ;
 I $G(@$$^W4PRM@("WEB","CPHON")),$P(A,"~",27)=@$$^W4PRM@("WEB","CPHON") D
 .;;I $P(A,"~")'=$$NMBKSK^W4KIOSKO S @THZ@("MKRDLV")=55
 .S @THZ@("CPHPAY")=$S($P(A,"~",73):$P(A,"~",73),1:$P(A,"~",11))
 ;
 I $G(@$$^W4PRM@("WEB","WOLT")),$P(A,"~",27)=$G(@$$^W4PRM@("WEB","WOLT")) D
 .S @THZ@("MKRDLV")=18
 ;
 I $G(@THZ@("MKRDLV"))=18 S @THZ@("ASR")=$P(A,"~",11)
 ;
 I MKR D SHINUYSHAA
 ;
 I $L($P(A,"~",56)) D  ; EMAIL
 .S @THZ@("EMAIL")=$P(A,"~",56)
 I $L($P(A,"~",57)) D  ; MIKUD
 .S @THZ@("MIKUD")=$P(A,"~",57)
 I $L($P(A,"~",58)) D  ; FAX
 .S @THZ@("FAX")=$P(A,"~",58)
 I $L($P(A,"~",59)) D  ; TELB
 .S @THZ@("TELB")=$P(A,"~",59)
 ;
 I $L($P(A,"~",60)) D  ; EMAIL
 .N HZMLAK S HZMLAK=$P(A,"~",60)
 .S @THZ@("HZMLAK")=HZMLAK
 ;
 I $L($G(@W3ORD@("MKBN"))) D
 .S @THZ@("MKBN")=$G(@W3ORD@("MKBN"))
 ;
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 I $P(A,"~",27)="" S $P(A,"~",27)=$P(A,"~",1)
 S AHHN=$P(A,"~",38)
 ;
 I $P(A,"~",3)["TAKEAWAY" S $P(A,"~",9)=""
 ;
 S DM=$P(A,"~",9)
 S HN=$P(A,"~",8)
 S TOTORD=$$TOTORD^W3HZMST(JB,"",W3ORD)
 ;
 I HN="",AHHN D
 .S HN=$J(TOTORD*AHHN*.01,2,2)_"="_AHHN_"%"
 .S $P(A,"~",8)=HN
 ;
 N TSHL0 S TSHL0=$P(A,"~",11)
 S TSHL=TOTORD+DM-HN
 ;
 I TSHL-TSHL0 D
 .N HN1 S HN1=TSHL-TSHL0
 .I HN1<1,HN1>-1 D
 ..S $P(A,"~",19)=$J($P(A,"~",19)+HN1,2,2)
 .E  S $P(A,"~",8)=$J($P(A,"~",8)+HN1,2,2)
 ;
 ;;D ^W4IGUL ; --- 10.06.20
 ;;
 ;;S $P(A,"~",11)=TSHL
 ;
 I $G(HNH2) S $P(A,"~",8)=$J($P(A,"~",8)+HNH2,2,2)
 S MAZMIN=""
 ;
 I $L($P(A,"~",47)) D
 .S MAZMIN=$TR($P(A,"~",2),"\","/")
 .S $P(A,"~",2)=$TR($P(A,"~",47),"\","/")
 ;
 I MKR=66,+$P(A,"~",21)=3,$G(@$$^W4PRM@("WEB","HAAT")) D  ; -- HAAT
 .S $P(A,"~",48)=""
 .S $P(A,"~",21)=4
 .S $P(A,"~",27)=$G(@$$^W4PRM@("WEB","HAAT"))
 .S @THZ@("ASR")=$S($P(A,"~",62):$P(A,"~",62),1:$P(A,"~",11))
 .S $P(A,"~",17)=@THZ@("ASR")
 .S @THZ@("MKRDLV")=MKR
 .K @THZ@("CREDCARD")
 ;
 S A=$TR(A,"\","/")
 S @THZ=$TR($P(A,"~",1,30),"~","\")
 ;
 S @THZ@("TRIDCA")=$$TRIDCR(A)
 S @THZ@("TRIDMZ")=$$TRIDMZ(A)
 I $$STAGE^W4PRM,$$STAGE^W4PRM S @THZ@("STAGE")=$$STAGE(A)
 ;
 I $$STAGE(A)=1 D
 .N PAR,PAR1 S PAR=$$HZMH^W4PRM,PAR1="" Q:'PAR
 .S @THZ1@(1)=PAR_"\"_$$SHEM^W4P(PAR)
 .S @THZ@("TSHSTAGE")=$P(A,"~",11)
 ;
 I $P(A,"~",8) D
 .N HN S HN=$P(A,"~",8)
 .S @THZ@("CB","HNH1",1)=HN_"*"_$H_"*INTERNET*"_$$^W4MYDVN_"*INTERNET"
 ;
 ;;I $P(A,"~",35)?2N1":"2N S $P(@THZ@(HZM),"\",6)=$P(A,"~",35) ; - ZMAN MEUSHAR
 S B=""
 S $P(B,"\\",6)=$TR($P(A,"~",34),"\","/") ; HRA
 S IR=$TR($P(A,"~",31),"\","/") ; IR
 S MSDTO=""
 ;
 I $$MM^W4PRM D
 .I $G(@W3ORD@("MSDTO")) S MSDTO=^("MSDTO")
 .E  S MSDTO=$G(@W3ORD@("MSD"))-$G(@$$^W4PRM@("WEB","RESTSHIFT"))
 .S $P(B,"\\",3)=MSDTO
 ;
 S $P(B,"\\",4)=IR
 S $P(B,"\\",5)=MAZMIN
 S $P(B,"\\",7)=$TR($P(A,"~",32),"\","") ; PELE
 S @THZ@("HR2")=B
 ;
 I $L($P(A,"~",17)) D
 .S @THZ@("ASR")=$P(A,"~",17)
 ;
 I $P(A,"~",21)=4,'$P(A,"~",17) D  ; -- 26/03/24
 .N OST S OST=$P(A,"~",11)-$P(A,"~",12) Q:OST'>0
 .S @THZ@("ASR")=OST
 ;
 I $P(A,"~",70) D
 .S @THZ@("POOLED")=$P(A,"~",70)
 ;
 I $P(A,"~",71) D  ;OTH_QUIKY
 .S @THZ@("MYDISC")=$P(A,"~",71)
 ;
 S CIBCARD=""
 I $L($P(A,"~",46)) D
 .S CIBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",46))
 .S @THZ@("CIBCARD")=$TR(CIBCARD,"\","")
 ;
 S TNBCARD=""
 I $L($P(A,"~",53)) D
 .S TNBCARD=$$DESCR^W3ENCR(HZW,$P(A,"~",53))
 .S @THZ@("TNBCARD")=$TR(TNBCARD,"\","")
 ;
 I $L($$CRCARD(A)) D
 .N CVV,SUM,TRID S CVV=$$CRCVV(A),SUM=$$CRSUM(A)
 .S TRID=$$TRIDCR(A)
 .I 'CVV S CVV=""
 .S @THZ@("CREDCARD")=$$DESCR^W3ENCR(HZW,$$CRCARD(A))_"~"_$$CRMMYY(A)_"~"_$$DESCR^W3ENCR(HZW,$$CRTZ(A))_"~"_CVV_"~"_SUM_"~"_TRID
 .S $P(@THZ,"\",21)=3
 ;
 S I=+$O(@THZ1@(99999),-1)
 S (CD,CDT,CDTO,NM)=""
 ;
 N HRA S HRA=$$HRA^W3HZMST(JB,W3ORD)
 N CODHRA S CODHRA=$$CODHRA^W4PRM
 I $$SF^W4PRM,CODHRA,$L(HRA)>2 D
 .S I=I+1
 .S @THZ1(I)=CODHRA_"\\"_$$SHEM^W4P(CODHRA)_"\\\\\"_HRA_"\@@!"
 ;
 N HNPA S HNPA=0
 D SETHDADDS
 ;;D CHKCDADDS
 S PRA=0
 ;
 D OBR(HZW)
 ;
 I $$PAPJ^W4PRM,MKR=10 D BDKUR
 S PR14=0
 ;
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S C=$G(^(N))
 .
 .I $P(C,"~")=0 D  Q
 ..I HNPA D SETHNP
 ..S PRA=0
 ..S I=I+1 K CDT
 ..S CD=$P(C,"~",2),NM=$$CLR($P(C,"~",3))
 ..S CD=$TR(CD,$C(9),"")
 ..S CD=$$SPA^%L1FRM(CD) ; --- 16.11.23
 ..Q:CD=""
 ..
 ..I $$PAPJ^W4PRM D
 ...N NM1 S NM1=$$SHEM^W4P(CD)
 ...I NM1["14""",NM1["()" S PR14=1
 ..
 ..I $G(MSDTO),$$MM^W4PRM,CD'[">" S CD=MSDTO_">"_CD
 ..S MH=$P(C,"~",4),CM=$TR($P(C,"~",5),"\","/")
 ..S CMNT=$TR($P(C,"~",7),"\","/")
 ..;;I CMNT["[[" S CMNT=$$CLRDLM^%L1FRM(CMNT,"[[","]]")
 ..S TSF=0,SUM=MH*CM
 ..S N1=N F  S N1=$O(@W3ORD@(N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...S D=$G(^(N1)) Q:D=""
 ...N CMT S CMT=$$QNMH^W3HZMST(D)
 ...I CMT["*" S CMT=$P(CMT,"*",2)
 ...;;S TSF=TSF+($P(D,"~",4)*CM*CMT)
 ...S TSF=TSF+($P(D,"~",4)*CMT)
 ..N ATTN S ATTN="" I $$NL^W4PRTVW(CD) S ATTN="[! lerp]"
 ..E  I $G(@$$^W4GL("PRTEND")@(P1DZ,CD))?1N.N,$G(@$$^W4GL("PRTEND")@(P1DZ,CD))<CM S ATTN="[!xnbp]"
 ..S @THZ1@(I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(SUM+TSF)_"\"_CMNT_ATTN_"\"
 ..S HNPA=$P(C,"~",6)_"\"_(SUM+TSF)
 ..
 ..I $$STAGE($G(@W3ORD)) S $P(@THZ1@(I),"\",19)=$J(CM,3,3)
 .
 .
 .I $P(C,"~")=1 D  Q
 ..S CDT=$P(C,"~",2),NMT=$$CLR($P(C,"~",3)) Q:CDT=""  S CDTO=CDT
 ..S CDT=$TR(CDT,$C(9),"")
 ..S CDT=$$SPA^%L1FRM(CDT) ; --- 16.11.23
 ..
 ..I $E(CDT)="A" D  Q
 ...N NS,ENDA S NS=$E(CDT,2,20),ENDA=0
 ...S @THZ@("SETA",NS)=NMT
 ...S PRA="1^"_NS_"^"_NMT
 ..
 ..I $E(CDT)="H" D  Q
 ...S CMNT=$P($G(@THZ1@(I)),"\",8)
 ...S $P(@THZ1@(I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..
 ..I $$PAPJ^W4PRM D
 ...N NM1 S NM1=$$SHEM^W4P(CDT)
 ...I NM1["14""",NM1["()" S PR14=1
 ..
 ..I $G(MSDTO),$$MM^W4PRM,CDT'[">" S CDT=MSDTO_">"_CDT
 ..
 ..S MHT=$P(C,"~",4),CMT=$P(C,"~",5)
 ..N DOP S DOP=$P(CMT,"|",2)
 ..N CM0 S CM0=$P($G(@THZ1@(I)),"\",5)
 ..;;I $$^W4MULTY,CM0,(CMT\CM0*CM0)'=CMT S CMT=CMT*CM0 
 ..N DOP S DOP=$P(CMT,"|",2)
 ..I CM0,(CMT\CM0*CM0)'=+CMT,CMT'["*" S CMT=CMT*CM0 
 ..I DOP'="",$P(CMT,"|",2)="" S $P(CMT,"|",2)=DOP 
 ..
 ..I CDT["-C",CDT?1N.E D  Q
 ...I $P($G(@$$^W4GL("W3ORD")@(HZW,N-1)),"~")=0 D  Q
 ....S CMNT=$P(@THZ1@(I),"\",8)
 ....S $P(@THZ1@(I),"\",8)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ...S CMNT=$P($G(@THZ1@(I,$P(CDT,"-C"))),"\",4)
 ...S $P(@THZ1@(I,$P(CDT,"-C")),"\",4)=$S(CMNT="":NMT,1:CMNT_";"_NMT)
 ..
 ..I CMT["+" N CPZ S CPZ=$$CMTPZ(CMT) D  Q
 ...S @THZ1@(I,CDT)=NMT_"\"_MHT_"\"_CPZ
 ...;;S $P(@THZ1@(I,CDT),"\",7)=CPZ*MHT
 ..
 ..I CMT["*" S CMT=$P(CMT,"*")*$P(CMT,"*",2)
 ..N CMTO S CMTO=$P($G(@THZ1@(I,CDT)),"\",3)
 ..S @THZ1@(I,CDT)=NMT_"\"_MHT_"\"_(CMT+CMTO)_"\\"
 ..S $P(@THZ1@(I,CDT),"\",7)=N ; --- 10/10/18 LEV
 ..I PRA S $P(@THZ1@(I,CDT),"\",18)=$P(PRA,"^",2,20) ;;S PRA=0 ; *** 21/11/23
 ..;
 ..D
 ...N PAR S PAR=$P($G(@THZ1@(I)),"\") Q:'PAR  Q:'$$EZAT(PAR,CDT,I,N)&'$G(PRA)
 ...N LI S LI=$O(@THZ1@(I,CDT,9999),-1)+1
 ...S @THZ1@(I,CDT,LI)=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 ...N K,SK S K="",SK=0 F  S K=$O(@THZ1@(I,CDT,K)) Q:K=""  D
 ....I $P(^(K),"\")=CDT S SK=SK+CMT
 ...I SK S $P(@THZ1@(I,CDT),"\",3)=SK
 .
 .I $P(C,"~")=2 I $L($G(CDT)) D SET2(C,I,CDT)
 ;
 I $G(PR14),$H<67775 D
 .N SH S SH=$O(@THZ1@(99999),-1)+1
 .N CD S CD=2508
 .N NM S NM=$$SHEM^W4P(CD)
 .S @THZ1@(SH)=CD_"\\"_NM_"\0\1\\0\"
 ;
 D SETHNP
 ;
 I $D(@$$^W4PRM@("WEB","PAR")) D CRFL
 ;
 S %L1SCREF("N")=1
 S %L1SCREF("S")=$G(@THZ)
 D GET^W4SCREF
 S %L1SCREF("N")=4
 S %L1SCREF("S")=$G(@THZ@("HR2"))
 D GET^W4SCREF
 ;
 S P1HZIMP="WEB" N %L3MYDVN S %L3MYDVN=WB
 ;
 I $G(CIBCARD) S @THZ@("CIBCARD")=$G(CIBCARD)
 I $G(TNBCARD) S @THZ@("TNBCARD")=$G(TNBCARD)
 I $G(@W3ORD@("SHUL")) S @THZ@("SHUL")=@W3ORD@("SHUL")
 ;
 L +@$$^W4GL("W3ORDA")@(HZW):2
 I $D(@$$^W4GL("W3ORDA")@(HZW)) K @THZ,@THZ1 D EX Q -3
 L -@$$^W4GL("W3ORDA")@(HZW)
 ;
 S %ARG("W3NEWHZN")=1
 ;
 D
 .N NOPRINT S NOPRINT=2
 .S HZM=$$ZAP^W4NEWHZ(HZW,HZM)
 ;
 I HZM>0,$$NEWINET^W4PRM D SETNEWINET(HZM)
 ;
 K @$$^W3TMPORD@(HZW)
 K @THZ,@THZ1
 I HZM<0 D EX Q HZM
 ;
 D PUT^%W1PRM("BGJ",HZM)
 ;
 I $$STAGE^W4PRM,$$STAGE^W4HZMST(HZM)=1 D
 .D ^W4HZM(HZM,HZW)
 ;
 I '$$^W4HZMH(HZM) D ^W4TSAUTO(HZM) D
 .I $D(@$$^W4ORD@(HZM,"PCAFTPAY")) Q
 .I '$$^W4HZAFTP(HZM) Q
 .I $$GETP^%W1PRM("BGJ")'=HZM Q
 .D ^W4HZM(HZM,HZW)
 ;
 D KILL^%W1PRM("BGJ")
 ;
 I $$^W4HZMH(HZM) S $P(@$$^W4ORD@(HZM,"WEB"),";")=HZW
 ;
 D SETEND(HZW,HZM)
 ;
END ;
 ;;D SETEND(HZW,HZM)
 D EX Q HZM
 ;
 ;
EX ;
 L  ;
 I $G(^|$$^W3MAIN|TMPLOCK)=$J S ^|$$^W3MAIN|TMPLOCK=0
 Q
 ;
CS(CS) ;
 I $$CSS(HZW)'=CS Q 0
 Q 1
 ;
CSH(A) N J F J=1:1:$L(A) S I=I+1,CSH=CSH+($A(A,J)*I)
 Q
 ;
CSS(HZW) N I,II S I=0,CSH=0
 F II=1:1:$L(@$$^W4GL("W3ORD")@(HZW))  D CSH(^(HZW))
 N N,N1
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I N'="CS" D CSH($G(^(N))) D
 .S N1="" F  S N1=$O(@W3ORD@(N,N1)) Q:N1=""  D CSH($G(^(N1)))
 Q CSH
 ;
EZAT(PAR,CDT,I,N) ;
 I $$^W4EZAT(PAR) Q 1
 I $D(@THZ1@(I,CDT))>9 Q 1
 N OK S OK=0
 N A,N1 S N1=N F  S N1=$O(@W3ORD@(N1)) Q:N1=""  I N1 D  Q:OK
 .S A=$G(^(N1)) Q:$P(A,"~")=0
 .I $P(A,"~")=2 S OK=1
 Q OK
 ;
CLR(TX) ;
 S TX=$TR($$SPA^%L1FRM(TX),"\","/")
 S TX=$TR(TX,$C(9)," ")
 S TX=$$RPL^%L1FRM(TX,$C(63,179),$C(39))
 S TX=$$RPL^%L1FRM(TX,$C(63,98,215),"g""y")
 Q TX
 ;
CMTPZ(CMT) ;
 N CMPZ,CMPZ1 S CMPZ="",CMPZ1=0
 I CMT Q CMT
 I 'CMT,CMT["+" D  Q CMT 
 .I $L(CMT)<3 S CMT=$L(CMT,"+")-1_"|"_CMT Q
 .I $L(CMT)<5 S CMT=$L(CMT,"+")-1_":"_CMT Q
 ;
 N J F J=1:1:4 D
 .I $E(CMT,J)="+" S CMPZ=CMPZ_"+\",CMPZ1=CMPZ1+1 Q
 .S CMPZ=CMPZ_"\"
 Q CMPZ_";"_CMPZ1
 ;
ER N $ZT S $ZT="" D SVER^%L1X
 Q -99
 ;
HZLINKW ;
 ; - CREATE FILES FOR SENDING TO SERVER
 ; --- ^HZLINKW - ORDER LIST WAS SENDED FROM SERVER
 ; --- ^HZLINKWI - ORDER LIST WAS SENDED FROM SERVER & NOT PAID
 ;
 D DEFHZLINK
 ;
 D ^W4IN
 N DT S DT=P1DZ-2
 N N
 F  S DT=$O(@$$^W4REF@(DT)) Q:DT=""  D
 .S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 ..I $D(^HZLINKW(N)),$G(^(N))'["\*" D  ; -- WAS SENDED FROM SERVER & NOT PAID
 ...N HW S HW=$P($G(^(N)),"\") Q:HW=""
 ...N TSHL,SHULAM
 ...N A S A=$G(@$$^W4ORD@(N)) Q:A=""
 ...S TSHL=$$TSHL^W4HZMST(N)
 ...S SHULAM=$$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N) Q:'SHULAM&(TSHL>.5)
 ...S $P(@HZLINKW@(N),"\",3)=TSHL
 ...S $P(@HZLINKW@(N),"\",4)=SHULAM
 ...S @HZLINKWI@(HW)=N_"\"_$H_"\"_TSHL_"\"_SHULAM
 ;
 Q
 ;
SF(STAM) ;
 I $$SF^W4PRM Q 1
 Q 0
 ;
HZMH2(HZW)
 I '$G(@$$^W4PRM@("HZMH2")) Q 0
 N OK S OK=0
 N I F I=1:1 Q:'$D(@W3ORD@(I))  D
 .I $P($G(^(I)),"~",2)=@$$^W4PRM@("HZMH2") S OK=2
 N I F I=1:1 Q:'$D(@$$^W4GL("W3ORDA")@(HZW,I))  D
 .I $P($G(^(I)),"~",2)=@$$^W4PRM@("HZMH2") S OK=2
 Q OK
 ;
NMB2PELE ;
 S $P(A,"~",32)=$P(A,"~")
 Q
 ;
CRFL ;
 N WB S WB=$$^%L3MYDVN
 N CD S CD=$G(@$$^W4PRM@("WEB","PAR")) Q:CD=""
 N LAST S LAST=$O(@THZ1@(9999),-1)+1
 N ST S ST=CD_"\\"_$$SHEM^W4P(CD)_"\0\1\0\0\"_$$HRA^W4P(CD)
 ;W ST,!
 S @THZ1@(LAST)=ST
 Q
 ;
 ;
SETEND(HZW,HZ)
 D DEFHZLINK
 ;
 M @$$^W4GL("W3ORDA")@(HZW)=@$$^W4GL("W3ORD")@(HZW)
 K @$$^W4GL("W3ORD")@(HZW)
 ;
 S @HZLINK@(HZ)=HZW_"\\\"_$ZD($H,"DD/MM/YEAR 24:60")
 S @HZLINKW@(HZ)=HZW_"\"_$H
 S @HZLINKI@(HZW)=HZ_"\"_$H
 ;
 N TELBAAL S TELBAAL=$$SMS2BAAL^W4PRM
 I TELBAAL,'$D(@$$^W4ORD@(HZ,"SMS2BAAL")) D
 .N RES S RES=$$MMSMS^W4SMSSND(HZ,TELBAAL)
 .I RES="OK" S @$$^W4ORD@(HZ,"SMS2BAAL")=$H_"\"_TELBAAL
 ;
 I $$MM^W4PRM D
 .I $G(MSDTO),$$ARMFAX^W3R(MSDTO) Q
 .I $$TSHL^W4HZMST(HZ)<0 Q
 .D SEND^W4FAXHTM(HZ)
 .N II,FC Q:'$G(MSDTO)
 .I $$SNDY^W4PRM=1 D CR^WQDLV(HZ)
 .S FC=$$FAXCOPY^W3R(MSDTO) Q:'FC
 .F II=1:1:FC D
 ..D SENDTRY^W4FAXHTM(HZ,0)
 ..I $$ER^W4FAXHTM(HZ) D SENDTRY^W4FAXHTM(HZ,0) ; -- ERROR
 ..I $$ER^W4FAXHTM(HZ) D SENDTRY^W4FAXHTM(HZ,0) ; -- ERROR
 ;
 I $$ZAHI^W4PRM,$G(MKR)=21 D ZAHIRESP(A)
 Q
 ;
 ;
SET2(C,I0,CDT) ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 S CDT2=$TR(CDT2,$C(9),"")
 S CDT2=$$SPA^%L1FRM(CDT2) ; --- 16.11.23
 Q:CDT2=""  S CDTO2=CDT2
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-")
 S CDT=$TR(CDT,$C(9),"")
 S CDT=$$SPA^%L1FRM(CDT)
 ;
 I $G(MSDTO),$$MM^W4PRM,CDT2'[">" S CDT2=MSDTO_">"_CDT2
 I $G(MSDTO),$$MM^W4PRM,CDT'[">" S CDT=MSDTO_">"_CDT
 ;
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 ;
 I SH2=1 D
 .S STT2=CDT_"\"_$G(NMT)_"\"_$G(CMT)_"\\\\"_$G(MHT)
 .S @THZ1@(I0,CDT,SH2)=STT2
 .S SH2=SH2+1
 ;
 N THZ1 S THZ1=$$^W4THZ1
 ;
 I CDT2["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=SH2 Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 I QNT2["*" S QNT2=$P(QNT2,"*")*$P(QNT2,"*",2)
 I 'QNT2 S QNT2=1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 S @THZ1@(I0,CDT,SH2)=STT2
 Q
 ;
CORLK ;
 I $L($P(A,"~")) D
 .N LK S LK=$$NUM^%L1FRM($P(A,"~"))
 .I $L(LK)<4!($$SPA^%L1FRM($TR(LK,"-",""))?1"0"."0") S LK=1111111111
 .I '$$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .I '$$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .I $$SF,$L(LK)=7,$$D^W4L("03"_LK),$$MAZAV^W4L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $$SF,$L($P(A,"~"))=7,$P(A,"~",31)="aia` lz" S $P(A,"~")="03"_$P(A,"~") Q
 .I $$SF,$L(LK)>3,$$D^W4L(LK),$$MAZAV^W4L(LK) S $P(A,"~")=LK Q
 .N PELE S PELE=$P(A,"~",32)
 .I $L(PELE)>3,'$$D^W4L(LK),$$D^W4L(PELE),$$MAZAV^W4L(PELE),'$$STAMTEL(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .S PELE=$TR(PELE,"-","")
 .I $L(PELE)>3,'$$D^W4L(LK),$$D^W4L(PELE),$$MAZAV^W4L(PELE),'$$STAMTEL(PELE) D NMB2PELE S $P(A,"~")=PELE Q
 .I $L(LK)=7,$$D^W4L("03"_LK),$$MAZAV^W4L("03"_LK) S $P(A,"~")="03"_LK Q
 .I $L(LK)=7,$$D^W4L("03-"_LK),$$MAZAV^W4L("03-"_LK) S $P(A,"~")="03-"_LK Q
 .I $L(LK)>7,$$D^W4L($E(LK,3,13)),$$MAZAV^W4L($E(LK,3,13)) S $P(A,"~")=$E(LK,3,13) Q
 .I $L(LK)>7,$$D^W4L($E(LK,4,13)),$$MAZAV^W4L($E(LK,4,13)) S $P(A,"~")=$E(LK,4,13) Q
 .N CODE S CODE=$P(A,"~",27)
 .I $L(CODE)>3,'$$D^W4L(LK),$$D^W4L(CODE),$$MAZAV^W4L(CODE),'$$STAMTEL(CODE) S $P(A,"~")=CODE Q
 .S CODE=$TR(CODE,"-!","")
 .I $L(CODE)>3,'$$D^W4L(LK),$$D^W4L(CODE),$$MAZAV^W4L(CODE),'$$STAMTEL(CODE) S $P(A,"~")=CODE Q
 .S $P(A,"~")=LK
 ;
 I $G(@$$^W4PRM@("WEB","DEFIS")) D
 .N LK S LK=$P(A,"~")
 .I $E(LK)="0",LK'["-" D
 ..I $E(LK,2)=5 S $P(A,"~")=$E(LK,1,3)_"-"_$E(LK,4,12) Q
 ..S $P(A,"~")=$E(LK,1,2)_"-"_$E(LK,3,12) Q
 Q
 ;
DEFHZLINK ;
 S HZLINK=$$^W4GL("HZLINK")
 S HZLINKI=$$^W4GL("HZLINKI")
 S HZLINKW=$$^W4GL("HZLINKW")
 S HZLINKWI=$$^W4GL("HZLINKWI")
 Q
 ;
SHINUYSHAA ; 
 N SHINUY S SHINUY=$G(@$$^W4PRM@("SHINUYSHAA",MKR)) 
 I SHINUY D  ; -- SO NET 
 .N SHAA S SHAA=$P(A,"~",6) 
 .N MIN S MIN=SHAA*60+$P(SHAA,":",2) 
 .S MIN=MIN-SHINUY I MIN<0 D 
 ..S MIN=MIN+(24*60) 
 ..N DAT S DAT=$$^%L1DC($$^%L1DC($P(A,"~",5),3)-1,1) 
 ..S $P(A,"~",5)=DAT 
 .S SHAA=$TR($J(MIN\60,2)," ",0)_":"_$TR($J(MIN#60,2)," ",0) 
 .S $P(A,"~",6)=SHAA 
 Q 
 ;
STAMTEL(TEL) ; 
 S TEL=$TR(TEL,"-","") 
 I TEL?1"0"."0"!(TEL?1"1"."1") Q 1 
 I TEL?.P Q 1 
 Q 0 
 ;
SETHNP ;
 S HNPA=$G(HNPA)
 N SUM S SUM=$P(HNPA,"\",2),HNPA=+HNPA Q:'SUM  Q:'HNPA
 S I=I+1 Q:I<2
 N HNP S HNP=$J(-SUM*HNPA*.01,2,2)
 S @THZ1@(I)=-HNPA_"%\\hixtl dgpd\"_HNP_"\1\\"_HNP
 Q
 ;
CRCARD(A) N CA S CA=$P(A,"~",48)
 S CA=$$RPL^%L1FRM(CA,"visa",2)
 Q CA
 ;
CRMMYY(A) Q $P(A,"~",49)
CRTZ(A) Q $P(A,"~",50)
CRCVV(A) Q $P(A,"~",61)
CRSUM(A) Q $P(A,"~",62)
 ;
TRIDCR(A) ;
 I '$$TRID^W4PRM,'$$STAGE^W4PRM Q ""
 N A1,A2 S A1=$P(A,"~",78)
 N SUGT S SUGT=$P(A,"~",21)
 N A2 S A2=""
 N J F J=1:1:$L(SUGT,";") D
 .I $P(SUGT,";",J)=3 S A2=A2_$P(A1,";",J)_";"
 Q $P(A2,";",1,$L(A2,";")-1)
 ;
TRIDMZ(A) ;
 I '$$TRID^W4PRM,'$$STAGE^W4PRM Q ""
 N A1,A2 S A1=$P(A,"~",78)
 N SUGT S SUGT=$P(A,"~",21)
 N A2 S A2=""
 N J F J=1:1:$L(SUGT,";") D
 .I $P(SUGT,";",J)=1 S A2=A2_$P(A1,";",J)_";"
 Q $P(A2,";",1,$L(A2,";")-1)
 ;
STAGE(A) Q $P(A,"~",79)
 ;
SETHDADDS ;
 N N,N1,C,ENDA,LV1,NS,NMS
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S C=$G(^(N))
 .I $P(C,"~")=0 Q
 .I $P(C,"~")=1 D
 ..N CDT S CDT=$P(C,"~",2)
 ..S CDT=$TR(CDT,$C(9),"") Q:'CDT
 ..I CDT?1"A"1N.N D
 ...S NS=$E(CDT,2,20)
 ...S NMS=$P(C,"~",3)
 ...S ENDA=0
 ...S N1=N F  S N1=$O(@W3ORD@(N1)) Q:N1=""  Q:ENDA  D  S N=N1
 ....S C=$G(^(N1))
 ....N LVN S LVN=$P(C,"~")
 ....I LVN=0 S ENDA=1 Q
 ....N CDTN S CDTN=$P(C,"~",2) I $E(CDTN)="A" S ENDA=1 Q
 ....I LVN>1 Q
 ....S $P(@W3ORD@(N1),"~",7)=$$GETI^W4DEFMN(NS)_" "_$P(@W3ORD@(N1),"~",7)
 Q
 ;
CHKCDADDS ;
 N N,C,ADDS
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S C=$G(^(N))
 .I $P(C,"~")=0 K ADDS Q
 .I $P(C,"~")=1 D
 ..N CDT S CDT=$P(C,"~",2) Q:CDT=""  Q:CDT["-"  Q:'CDT
 ..S CDT=$TR(CDT,$C(9),"") Q:'CDT
 ..N MHT S MHT=$P(C,"~",4)
 ..I CDT,$D(ADDS(CDT)),+MHT'=+ADDS(CDT) D  Q
 ...N J F J=1:1 Q:'$D(ADDS("0-"_CDT_"-"_J))
 ...S CDT="0-"_CDT_"-"_J
 ...S $P(@W3ORD@(N),"~",2)=CDT
 ..I CDT,'$D(ADDS(CDT)) S ADDS(CDT)=$P(C,"~",4) Q
 Q
 ;
SETNEWINET(HZM) ; 
 S FL=$$WEBL^W3MAIN_"newinetord"
 O FL:(REWIND:NEWVERSION:WRITE)
 U FL W HZM,!
 C FL
 Q
 ;
OBR(HZW) ; 
 N W3ORD0 S W3ORD0=$$^W4GL("W3ORD0")_"(HZW)"
 N W3ORD1 S W3ORD1=$$^W4GL("W3ORD1")_"(HZW)"
 K @W3ORD1
 K @W3ORD0 M @W3ORD0=@W3ORD
 N N,A,PRMVC S PRMVC=0
 ;
 S @W3ORD1=$$CLRSMB(@W3ORD)
 ;
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S A=$G(@W3ORD@(N))
 .S A=$$CLRSMB(A) 
 .N LV S LV=$P(A,"~")
 .N CD S CD=$P(A,"~",2)
 .I $$PAPJ^W4PRM,LV=0 S PRMVC=0
 .I $$PAPJ^W4PRM,LV=0,CD=3053 S PRMVC=1
 .I $$PAPJ^W4PRM,LV=1,PRMVC,CD["A",PRMVC=1 Q
 .S @W3ORD1@(N)=A
 .I $$PAPJ^W4PRM,LV=1,PRMVC,CD'="",PRMVC=1 D
 ..N SUG S SUG=$$SUG^W4P(CD)
 ..I SUG=1!(SUG=2)!(SUG=5)!(SUG=12)!(SUG=13)!(SUG=24)!(SUG=44) Q
 ..S $P(@W3ORD1@(N),"~")=2 
 ;
 K @W3ORD M @W3ORD=@W3ORD1
 Q 
 ;
 ; 
CLRSMB(A) ; 
 N B,J,K,SMB
 S B="",K=0
 F J=1:1:$L(A) S SMB=$A(A,J) I SMB>31,SMB<127,SMB'=63 S B=B_$C(SMB)
 Q B 
 ;
 ;
CHKSTRUCT  ;
 N MST
 N N,A,A0,K S A0="",K=0
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .I $E($P(A0,"~",2))="A",$P(A,"~")=2 K MST(K) 
 .S K=K+1,MST(K)=A
 .S A0=A
 ; 
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I N K ^(N)
 S K="" F  S K=$O(MST(K)) Q:K=""  S @W3ORD@(K)=MST(K)
 Q
 ;
 ;
CLRCD(ST) ;
 S CD=$P(ST,"~",2)
 S CD=$TR(CD,$C(9),"")
 S CD=$$SPA^%L1FRM(CD)
 Q CD
 ;
BDKUR ; 
 N N,N1,C,D,E,CD,CDT,CDT2,END
 S N="" F  S N=$O(@W3ORD@(N)) Q:N=""  I $E(N)?1N D
 .S C=$G(^(N))
 .I $P(C,"~")=0,$P(C,"~",2)=3746 D
 ..K CDT
 ..S CD=$$CLRCD(C)
 ..S CD=$TR(CD,$C(9),"") Q:CD=""
 ..S END=0 
 ..S N1=N F  S N1=$O(@W3ORD@(N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D  Q:END
 ...S D=$G(^(N1)) Q:D=""
 ...I $P(D,"~")=1 D
 ....S CDT=$$CLRCD(D)
 ....Q:CDT=""  Q:CDT'?1N.N
 ....N END,BG S END=0,BG=0
 ....I $$PIZZA(CDT) D
 .....S N2=N1 F  S N2=$O(@W3ORD@(N2)) Q:N1=""  I N2 Q:$P($G(^(N2)),"~")=0  D  Q:END
 ......S E=$G(^(N2))
 ......S CDT2=$$CLRCD(E) Q:CDT2=""  Q:CDT2'?1N.N
 ......I BG,'$$SUGTSF(CDT2) S END=1 Q
 ......I $$SUGTSF(CDT2) D
 .......S $P(@W3ORD@(N2),"~")=2,BG=1
 .......N NM2 S NM2=$P(E,"~",3)
 .......N CDP S CDP=$P($G(@W3ORD@(N2-1)),"~",2)
 .......I CDP?1"A"1N.E K @W3ORD@(N2-1)
 .......N QNT S QNT=$P(@W3ORD@(N2),"~",5)
 .......I NM2["oini ivg",QNT'["+" D
 ........S QNT=QNT_"|-+"
 .......I NM2["l`ny ivg",QNT'["+" D
 ........S QNT=QNT_"|+-"
 .......I QNT'["+" S QNT=$S(QNT#2:QNT*2,1:QNT)_"|++"
 .......S $P(@W3ORD@(N2),"~",5)=QNT
 Q
 ;
PIZZA(CD) ;
 N NM S NM=$$SHEM^W4P(CD) ;
 I NM["()"!(NM["[]") Q 1 
 Q 0
 ;
SUGTSF(CDT) ;
 N SUG S SUG=$$SUG^W4P(CDT) 
 I SUG=7!(SUG=9)!(SUG=10)!(SUG=11)!(SUG=14) Q 1
 Q 0
 ;
ZAHIRESP(A) ;
 N URL,FLTO,RESP,Timeout,Type,Token 
 ;
 I $$ZAHI^W4PRM=1!($$ZAHI^W4PRM=3) D
 .S URL="https://tzahib.click-eat.co.il/damka/order-confirmed"
 .S Token="yajglbBabQvcGsYEDNxjnMSqfI2Q7zV4UC9uyxt6fz7NcUPo97mt2gLyu8BdSLp2"
 ;
 I $$ZAHI^W4PRM=2 D
 .S URL="https://tzahik.co.il/damka/order-confirmed"
 .S Token="u4nJhfMmujuFrupSYvCBEhngLriA6Pt19uEU68TGNADXPq28qXKClsUbM14IiEfA"
 ;
 S Timeout=45
 S Type="application/json"
 N ORD S ORD=$P($P(A,"~",60),"^")
 S FLTO="/tmp/tmpresp_"_+$H_"_"_$P($H,",",2)_"_"_$$^W4MYDVN_"_"_HZW_"_"_$G(HZ)
 C FLTO:(DELETE)
 O FLTO:(REWIND:NEWVERSION:WRITE)
 U FLTO
 W "{",!
 W """status"": ""ok"",",!
 W """order_number"": """_ORD_""",",!
 W """order_status"": ""ORDER_CONFIRMED"",",!
 W """status_id"": 4,",!
 W """already_confirmed"": false",!
 W "}",!
 ;;C FLTO:(DELETE) ; ***
 C FLTO 
 S RES=$$^W1CURL(URL,FLTO,.RESP,Timeout,Type,Token)
Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3NTSNAS
W3NTSNAS ; [ 17.06.26 11:03 ] [ 05.05.25 09:10 ] [ 13.11.23 06:41 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;M ^AA("W3NTSNAS","ARG")=%ARG
 I '$G(%ARG("MSD")) D ERR("NOTREST") Q
 ;
 S MSD=$P(%ARG("MSD"),",")
 S MSDR=$G(%ARG("MSDR"))
 ; 
 I 'MSDR D ERR("NOTMSDR") Q
 ;
 S DIR="/tmp/"
 S FL=DIR_"w4netsnd"_MSDR_"-"_MSD
 ;
 I $$EXIST^%L1ZOS(FL) D
 .O FL:(REWIND:READONLY)
 .F  U FL R A Q:$ZEOF  D
 ..U 0 W A,!
 .C FL
 .ZSY "rm "_FL
 Q
 ;
 ;
ERR(PRM) ;
 D ERR^W3ANSIT($G(PRM))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ONLINE
W3ONLINE(MSD) ; [ 24.04.14 19:50 ] [ 08.06.08 13:35 ] [ 03.06.08 10:41 ] [
 I '$G(MSD) Q 0
 I '$D(^[$$^W3MAIN]UCI(MSD)) Q 0
 N DIR S DIR=$G(^[$$^W3MAIN]UCI(MSD)) I DIR="" Q 0
 I $$^%L1ZOS(10,DIR)<0 Q 0
 I $G(%ARG("MSDR"))=1 Q 1
 Q +$$ONLINE^W3PRM(MSD)
 ;
 I $G(MSD)=1 Q 1
 I $G(MSD)=4 Q 1
 I $G(MSD)=99999 Q 1
 I '$$ONLINE^W3PRM(MSD) Q 0
 Q +$$ONLINE^W3PRM(MSD)

W3ORD
W3ORD(JBB) ; [ 24.09.08 10:53 ] [ 23.09.08 17:31 ] [
 ;;Q $$^W4GL("W3ORD",$G(JBB,+$G(JB)))
 Q "^[$$^W3MAIN]W3ORD"

W3ORDA
W3ORDA ; [ 28.07.25 10:30 ] [ 27.07.25 10:55 ] [ 26.07.25 05:01 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 I '$G(HZM),'$G(ORD) Q
 I $G(HZM),'$$WEBORD^W4HZMST(HZM) D 
 ;
 I $G(HZM),'$G(ORD) D 
 .S ORD=$$HZMLAK^W4HZMST(HZM)
 .I $E(ORD)="W" S ORD=$E(ORD,2,20)
 ;
 I '$G(ORD) Q
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<p style=""font-size:"_$$^W3FSZ(16)_";color:brown"" >"
  I $G(HZM) W $$^%W1DICT("ORDER")_" "_HZM_"<br><br>"
  W $$^%W1DICT("WEBORDNUMBER")_" "_ORD_"<br><br>"
 W "</p>",!
 ;
 D OPTB
 ;
 D TR("NMB","CUSTCODE",1)
 D TR("NAME","CUSTOMNAME",2)
 D TR("STREET","STREET",3)
 D TR("DATCB","RECEIVED",4)
 D TR("DAT","TODATE",5)
 D TR("SHAA","TOTIME",6)
 D TR("ADSHAA","ADSHAA",63)
 D TR("COMMENT","COMMENT",7)
 D TR("HNH","DISCOUNT",8)
 D TR("DMSH","DLVCHARGE",9)
 D TR("TSH","TOPAY",11)
 D TR("SHUL","PAID",12)
 D TR("FLOOR","FLOOR",13)
 D TR("FLAT","FLAT",14)
 D TR("HOME","HOME",15)
 ;
 D TR("ENTRANCE","ENTRANCE",16)
 D TR("SHULA","CREDIT",17)
 D TR("MKBL","RECEIVER",18)
 D TR("HNH2","HNH2",19)
 D TR("CODTS","KINDOFPAYMENT",21)
 D TR("DMSAH","DMSAH",23)
 D TR("SOAD","CUSTOMERSNUMBER",24)
 D TR("LASTUPDATE","LASTUPDATE",26)
 D TR("CUST","CREDITCUSTCODE",27)
 D TR("DATK","CSRDATE",29)
 D TR("CITY","CITY",31)
 D TR("PELE","PELE",32)
 ;;D TR("MHMIN",33)
 D TR("CMHD","COMMENT2ADR",34)
 ;;D TR("MHCNC",37)
 D TR("AHUZ","DISCOUNTPERCENT",38)
 ;;D TR("HRA2","COMMENT2",44)
 D TR("CIBCOMP","CIBUSCOMP",45)
 D TR("CIBCARD","CIBUSCARD",46)
 D TR("COMP","COMPANY",47)
 D TR("CREDCARD","CREDITCARD",48)
 D TR("CREDMMYY","CREDMMYY",49)
 D TR("CREDTZ","CREDITID",50)
 D TR("MKR","ORDERSOURCE",51)
 D TR("TNBCOMP","TNBCOMP",52)
 D TR("TNBCARD","TNBCARD",53)
 D TR("TNBPAY","TNBPAY",54)
 D TR("PSL","COURIER",55)
 D TR("EMAIL","EMAIL",56)
 D TR("MIKUD","ZIP",57)
 D TR("FAX","FAX",58)
 D TR("TELB","TEL",59)
 D TR("HZMLAK","CUSTOMERORDER",60)
 D TR("CREDCVV2","CVV",61)
 D TR("CREDSUM","CREDSUM",62)
 D TR("TZ","TZ",64)
 ;;D TR("CMNTIN",65)
 D TR("CASH","CASH",67)
 D TR("CIBPAY","CIBUSPAY",68)
 ;;D TR("POOLED","POOLED",70)
 ;;D TR("MYDIC",71)
 D TR("CPHPAY","CPHPAY",73)
 D TR("KINDORD","KINDOFORDER",75)
 D TR("MKR1","MKR1",76)
 D TR("MKRNOM","MKRNOM",77)
 W "</table>",!
 ;
 N PRTR S PRTR=0
 S PC=1
 S GL=$$GL
 K @$$^W3TMPORD
 M @$$^W3TMPORD@(ORD)=@$$GL@(ORD)
 W "<p></p>",!
 ;
 I '$G(%ARG("PNIM")) D
 .W "<p "_$$INV^%W1ALIGN_">"
 . W "<button onClick=""ClickPnim()"" >"_$$^%W1DICT("SHOWINSIDE")_"</button>"
 .W "</p>" 
 .
 .D BDORD^W3ORDVW(ORD)
 .W "</table>",!
 ;
 I $G(%ARG("PNIM")) D
 .W "<p "_$$INV^%W1ALIGN_">"
 . W "<button onClick=""ClickPnim()"" >"_$$^%W1DICT("SHOW2USER")_"</button>"
 .W "</p>" 
 .D BDORD(ORD)
 ;
 K @$$^W3TMPORD@(ORD)
 ;
 W "<p></p>",!
 D ^W4BCK
 Q
 ;
 ;
OPTB ;
 W "<table cellspacing=""0"" cellpadding=""3"" >",!
 Q
 ;
GL()
 Q $$^W4GL("W3ORDA")
 ;
TR(COD,NAME,NFLD)
 N A S A=$G(@$$GL@(ORD))
 W "<tr>"
  W "<td>"
   W NFLD
  W "</td>"
  W "<td>"
   W COD
  W "</td>"
  W "<td>"
   W $$^%W1DICT(NAME)
  W "</td>"
  W "<td style=""color:brown;font-weight:bold"">"
   ;;S CMD="S RKV=$$"_COD_"^W3HZMST("_ORD_")"
   S RKV=$P(A,"~",NFLD)
   ;
   ;;X CMD
   W $$H2U^%L1FRM(RKV)
   I COD="MKR" W $$H2U^%L1FRM($$MKR1^W3HZMST(ORD)) 
  W "</td>"
 W "</tr>",!
 Q
 ;
 ;
BDORD(ORD) ;
 N I,A 
 W "<table cellspacing=""0"" cellpadding=""3"" >",!
  W "<tr style=""font-size:"_$$^W3FSZ(9)_""" align=""center"" >"
   F I=" ",1:1:20 W "<td>"_I_"</td>"
  W "</tr>",!
  ;
  N N S N="" F  S N=$O(@$$GL@(ORD,N)) Q:N=""  I N D
  .S A=$G(^(N))
  .W "<tr>"
  . W "<td style=""font-size:"_$$^W3FSZ(9)_""">"_N_"</td>"
  . F I=1:1:20 D
  .. W "<td>"_$$H2U^%L1FRM($P(A,"~",I))_"</td>"
  .W "</tr>",!
  W "</table>",! 
  ;
  W "<p>&nbsp;</p>",!
  ;
  D OPTB
  S N="" F  S N=$O(@$$GL@(ORD,N)) Q:N=""  I 'N D
  .S A=$G(^(N))
  .W "<tr><td>"_N_"</td><td>"_$$H2U^%L1FRM(A)_"</td></tr>",!
  W "</table>",!
  Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDDE0
W3ORDDET(PRM,CODE) ;     [ 03.05.26 11:11 ][ 11.02.26 09:35 ] [ 22.12.25 12:12 ] 
 N (JB,%ARG,%REM,PRM,CODE,LKH)
 ;
 S A="<&lt;&nbsp;&gt;>"
 S A1="dwica mzq"
 S A2="&02    >"
 D INIT
 ;
 Q:'$G(MSD)  Q:'$G(JB)
 ;
 I $G(%ARG("PWRLNKID"))'="" D
 .D ^W4BGBODY
 .S ^PWRLNKPR(+$H,$P($H,",",2),+$G(CODE))=$G(PRM)
 .M ^PWRLNKPR(+$H,$P($H,",",2),+$G(CODE),"ARG")=%ARG
 .D PUT^%W1PRM("PWRLNKID",$G(%ARG("PWRLNKID")))
 .D PUT^W3HZMST(JB,"MKBL",$G(%ARG("MKBL")))
 .D PUT^W3HZMST(JB,"SOAD",$G(%ARG("SOAD")))
 .N NAME S NAME=$$SPA^%L1FRM($G(%ARG("MAZMIN"))),MAZMIN=NAME
 .N COMP S COMP=$$SPA^%L1FRM($G(%ARG("COMP")))
 .;;I $L(COMP) S NAME=COMP
 .D PUT^W3HZMST(JB,"NAME",$$INVH^%L1FRM(NAME))
 .D PUT^W3HZMST(JB,"KINDORD",$G(%ARG("KINDORD")))
 .D PUT^W3HZMST(JB,"MKR",$G(%ARG("MKR")))
 .D PUT^W3HZMST(JB,"DAT",$G(%ARG("DAT")))
 .D PUT^W3HZMST(JB,"SHAA",$G(%ARG("SHAA")))
 .D PUT^W3HZMST(JB,"ADSHAA",$G(%ARG("ADSHAA")))
 .D PUT^W3HZMST(JB,"COMMENT",$$INVH^%L1FRM($G(%ARG("COMMENT"))))
 .D PUT^W3HZMST(JB,"CMHD",$$INVH^%L1FRM($G(%ARG("CMHD"))))
 .;
 .I $G(CODE)="" S CODE=$$ARG("CODE")
 .I CODE D  ; -- 12/12/23
 ..S MAZMIN=$$INVH^%L1FRM($G(%ARG("MAZMIN")))
 ..S NAME=MAZMIN
 ..S PELE=$$GETPWR(CODE,"PELE") D PUT^W3HZMST(JB,"PELE",PELE)
 ..S CITY=$$GETPWR(CODE,"CITY","H") D PUT^W3HZMST(JB,"CITY",CITY)
 ..S STREET=$$GETPWR(CODE,"STREET","H") D PUT^W3HZMST(JB,"STREET",STREET)
 ..S HOME=$$GETPWR(CODE,"HOME") D PUT^W3HZMST(JB,"HOME",HOME)
 ..S FLAT=$$GETPWR(CODE,"FLAT") D PUT^W3HZMST(JB,"FLAT",FLAT)
 ..S FLOOR=$$GETPWR(CODE,"FLOOR","H") D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 ..S ENTRANCE=$$GETPWR(CODE,"ENTRANCE","H") D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 ..S FAX=$$GETPWR(CODE,"FAX") D PUT^W3HZMST(JB,"FAX",FAX)
 ..S EMAIL=$$GETPWR(CODE,"EMAIL") D PUT^W3HZMST(JB,"EMAIL",EMAIL)
 ..S MIKUD=$$GETPWR(CODE,"MIKUD") D PUT^W3HZMST(JB,"MIKUD",MIKUD)
 .
 .D SETLKH ; -- PARAMETRIM MIBAHUZ
 ;
 I $$NOMOD(JB),$G(PRM)="IN" S PRM="VW"
 ;;W "PRM="_PRM,!
 ;
 ;---------------------------- FILL ^TMPORD ----
 ;
 I $$ONLINE,'$D(^[$$^W3MAIN]TMPORD(JB)),$D(@$$^W3ORD(JB)@(JB)) D
 .M ^[$$^W3MAIN]TMPORD(JB)=@$$^W3ORD(JB)@(JB)
 ;
 D CODENMB
 ;
 D GL ; -- TMPORD
 ;
 N HOMEPRM S HOMEPRM=""
 I CODE["~" S HOMEPRM=$P(CODE,"~",2),CODE=$P(CODE,"~")
 ;
 I $$ONLINE,CODE["!",'$$NOMOD(JB) D  ; ---- NEW CUST
 .S NMB=$$SPA^%L1FRM($P(CODE,"!")),CODE=""
 .S ^[$$^W3MAIN]TMPORD(JB,"NOCODE")=""
 .I NMB["~" S NMB=$P(NMB,"~")
 .D FILL(NMB) ; ---------------- FROM ^LKHA
 .I '$$NMB^W3HZMST(JB) D
 ..S $P(^[$$^W3MAIN]TMPORD(JB),"~",1)=$TR(NMB,"-","")
 ;
 I $$ONLINE,$G(CODE)="",$$LKH^W3L(NMB)="" S CODE=$G(NMB)
 ;
 D KILL^%W3DEB("W3ORDDET")
 D PUT^%W3DEB("W3ORDDET","ARG=[%ARG & CODE=CODE & JB=JB &MSD=MSD &NMB=NMB")
 ;
 D PUT^%W1PRM("NMB",NMB)
 ;
 I $L($G(CODE))>3,$$D^W3L(CODE),$$NMB^W3HZMST(JB)?.P,'$$NOMOD(JB) D  G FORM
 .D FILLHD(CODE)
 ;
 I $$ONLINE,$$MUSTREGISTRY^W3PRM,$G(CODE),$$D^W3L(CODE) D
 .D SETLK2ORD(CODE) ; ---- ^W3L --> ^TMPORD IF MUSTREGISTRY
 ;
 ;
FORM ;
 ;------------------------------ PRM="INP" -----------
 ;
 W "<div align=""center"" >",!
 ;
 I $$ONLINE!$$CCWEBR^W4PRM D  ; --- CUSTOMER CODE
 .W "<span style=""color:"_$$FGODHD1^W3CSS_";font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">"
 . W $$^%W1DICT("FILLORDERDETAILS")
 .W "</span>",!
 .W "<br />",!
 ;
 D PADDING
 I $$DLVCSR!$$TELEPHONE!$$CCWEBR^W4PRM D KOTDLV ; --- CUSTOMER CODE
 ;
 I $$^W4TABLET=2 G TBLPHONE
 ;
 D OPTABLE W ">",!
 D
  .I $$DLVCSR!'$$^W4ELPOS,$$^W4TABLET'=1,'$$KBVRT!'$$1024^W4WDSCR D
  ..W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
  . 
  .W "<tr>"
  . S WIDTH="12%"
  . D TDNAME
  . D TDCOMP
  .W "</tr>",!
  .
  .W "<tr>"
  .  D TDTEL
  .I '$$SHORTDET^W4PRM D
  .  .N WFAX S WFAX=$$^%W1DICT("FAX")
  .  .D TD W "&nbsp;"_WFAX D TDE
  .  .W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  .  .W "<td style=""padding-right:0px"">"
  .  .D INP("FAX",120,14,"LTR")
  .  .D TDE
  . D TDPELE
  . I '$$SHORTDET^W4PRM W "</tr></table></td>"
  .W "</tr>",!
  .
  .I $$GETP^%W1PRM("TAW") G CMNT
  .
  .W "<tr>",!
  . D TDCITY
  . D TDSTREET
  .W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDHOME
  . D TDFLAT
  .W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDENTRANCE
  . D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
  . W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  . W "<td style=""padding-right:0"">" D INP("FLOOR",50,6,$$^%W1DIR) D TDE
  . D TDMIKUD
  . W "</tr></table></td>"
  .W "</tr>",!
  .
CMNT .W "<tr>",!
  .   D TDCMNT
  . W "</tr>",!
  .
  .W "<tr>",!
  .   D TDCMNTIN
  . W "</tr>",!
  .
  .I $$ELPOS,$$MSLSD^W4PRM D
  ..W "<tr>"
  .. D TDGUEST
  .. D TDTZ
  ..W "</tr>",!
  .
  .
  .I $$NOFUTDAT^W3PRM,'$$NOMOD(JB) D
  ..D DAT ; --- LO MAZIG
  ..N A S A=$$FILLTM(TODAT)
  .
  .I '$$NOFUTDAT^W3PRM D
  ..W "<tr>"
  .. D TDDAT
  .. I '$$ADSHAA^W4PRM D TDSHAA
  ..
  .. I $$ADSHAA^W4PRM D
  ... S %W1DAT("W3ORDHD")=""
  ... D TD W $$^%W1DICT("TOTIME") D TDE
  ... W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  ... D SHAA("SHAATD","SHAA")
  ... D TD W $$^%W1DICT("ADSHAA") D TDE
  ... D TD D ADSHAA D TDE
  ... W "</tr></table></td>"
  ..W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDHRA
  .W "</tr>",!
  .
  .I $$DLVCSR D
  ..
  ..I '$$KBVRT W "<tr><td colspan=""4""><hr></td></tr>",!
  ..
  ..W "<tr>"
  .. D TDHZMLAK
  .. D TDISHURIM
  ..W "</tr>",!
  ..
  ..W "<tr>",!
  .. D TDEMAIL
  .. I $$MKRDLV^W4PRM D TDRSRCH
  ..W "</tr>",!
  ..
  ..I $G(CODE),'$$KBVRT D
  ...D CRNEWMAIL^W4EMAIL(CODE_";EMAIL",3,1)
  ..
  ..;;I '$$^W4TABLET,'$$KBVRT,'$$1024^W4WDSCR W "<tr><td>&nbsp;</td></tr>",!
  ; 
  ;;I '$$ELPOS,'$$KBVRT,'$$1024^W4WDSCR W "<tr><td>&nbsp;</td></tr>",!
 ;;W "<tr><td>"_$S($$1024^W4WDSCR:"",1:"&nbsp;")_"</td></tr>",!
 W "</table>" ;
 ;
 ;
 D ORDTOT ; --- TOTORD, DISCOUNT, DMSH
 ;
 D DIVBUT
 ;
 W "</div>",!
 ;
 I $$KBVRT D ^W4KBABC
 Q
 ;
 ;
ORDTOT ;
 N ORDTOT S ORDTOT=$$^W4GETSUM(JB)
 N TOT S TOT=$P(ORDTOT,";")
 N HNH S HNH=$P(ORDTOT,";",2)
 N DMSH S DMSH=$P(ORDTOT,";",3)
 N TSHL S TSHL=$P(ORDTOT,";",5)
 I '$$KBVRT D
 .W "<table cellpadding=""0"" cellspacing=""0"" dir="""_$$^%W1DIR_""" ><tr>"
 . I $G(CODE),$G(@$$^W4GL("P1LKDM")@(CODE)) D
 .. W "<tr><td style=""font-weight:bold;color:red;text-align:center"" >"
 .. W $$^%W1DICT("CUSTOMDLVFREE")_" ! "
 .. W "</td><tr>",!
 . W "<td id=""mhmincnc"" name=""mhmincnc""></td>"
 .W "</tr></table>",!
 ;
 D OPTABLE W " >"
 ;
 W "<tr>",!
 W "<td>"_$$^%W1DICT("TOTORD")_"&nbsp;" ;_"<br />"
 W "<input type=""text"" name=""totord"" id=""idtotord"" "
  W $$ONKEYPRESS(0)
  W " onFocus=""ifrHide('MUST','ifr')"" "
  W " value="""_$J(TOT,2,2)_""" "
 W "size=6 class=""botinp"" /></td>",!
 ;
 I '$$DLVWEB^W4DLVCSR D
 .N AHUZ S AHUZ=+$$AHUZ^W4MENUBT I AHUZ S AHUZ=AHUZ_"%"
 .I 'AHUZ S AHUZ=""
 .N HNA S HNA=TOT*AHUZ*.01
 .I AHUZ,HNH-HNA>1!(HNH-HNA<-1) S AHUZ=""
 .W "<td>"_$$^%W1DICT("DISC",AHUZ)_"&nbsp;"
 .W "<input type=""text"" name=""discont"" id=""HNH"" size=7 "
 . W " value="""_$J(HNH,2,2)_""" "
 . W " class=""botinp"" style=""color:red""/>",!
 .W "</td>",!
 ;
 ;
 I $$DLVWEB^W4DLVCSR(JB) D
 .W "<td width=""15%"">"_$$^%W1DICT("DISCOUNT")_"&nbsp;"
 .W "<input type=""text"" name=""discontperc"" id=""AHUZ"" size=1"
 . W " maxlength=""2"" class=""botinp"" value="""_$$AHUZ^W3MENUBT_""" "
 . W " style=""color:darkred"" onKeyUp=""DiscPerc(this)"" "
 . W " onMouseDown=""ShowPsw('H')"" readonly=""readonly"" "
 .W "/>",!
 .
 .W "</td><td width=""10%"">"
 .
 .W " <input type=""text"" name=""discont"" id=""iddiscont"" size=6 "
 . W " class=""botinp"" style=""color:red"" "
 .W " />",!
 .W "</td>",!
 ;
 W "<td>"_$$^%W1DICT("DLVPAY")_"&nbsp;" ;_"<br />"
 W " <input type=""text"" name=""dms"" id=""DMSH"" size=5 class=""botinp"" "
   D
   .I '$$ORDINPROGRESS,$G(CODE),DMSH'["!",$$CITY^W3HZMST(JB)?.P!($$STREET^W3HZMST(JB)?.P) D
   ..I $D(@$$^W4GL("W4DMSPEC")@(CODE)) S DMSH=^(CODE) Q
   ..N CITY,STREET,HOME
   ..S CITY=$$CITY^W4L(CODE)
   ..S STREET=$$KTV^W4L(CODE)
   ..S HOME=$$BAIT^W4L(CODE)
   ..I CITY="" S CITY=$G(@$$^W4GL("P1IR")@(1))
   ..S DMSH=$$DMSHCITY^W3HZMST(JB,CODE_"^"_CITY_"^"_STREET_"^"_HOME)
   .
   .W " value="""_$J(DMSH,2,2)_$S(DMSH["!":"!",1:"")_""" "
  W "/>",!
 W "</td>",!
 ;
 W "<td>"_$$^%W1DICT("TOPAYMENT")_"&nbsp;" ;_"<br />"
  W " <input type=""text"" name=""sum"" id=""idsum"" size=6 "
  W " value="""_$J(TSHL,2,2)_""" class=""botinp"" />",!
 W "</td>",!
 ;
 I $G(CODE),$$^W4DLVCSR,$$ISCR^W4L(CODE) D
 .W "<td>"_$$^%W1DICT("ITRA")_"&nbsp;" ;_"<br />"
 .  W " <input type=""text"" name=""itra"" id=""iditra"" size=6 class=""botinp"" ",!
 .  W " readonly=""readonly"" "
 .  W " value="""_$J($$ITRA^W4L(CODE),2,2)_""" "
 . W "/>",!
 .W "</td>",!
 ;
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FILLHD(CODE) ;
 S $P(@GL@(JB),"~",1)=$S($$ONLINE:$$TELB^W3L(CODE),1:NMB)
 I '$$PWRLNK S $P(@GL@(JB),"~",2)=$$LKH^W3L(CODE)
 I $$NAME2COMP(CODE),'$$ORDINPROGRESS,'$$PWRLNK S $P(@GL@(JB),"~",2)=""
 N KTV S KTV=$$KTV^W3L(CODE)
 I KTV?1N.N S KTV=""
 S $P(@GL@(JB),"~",3)=KTV
 I $P($G(@GL@(JB)),"~",7)?.P S $P(@GL@(JB),"~",7)=$TR($$CMNT^W3L(CODE),"~\","-/")
 S $P(@GL@(JB),"~",13)=$$KOMA^W3L(CODE)
 S $P(@GL@(JB),"~",15)=$$BAIT^W3L(CODE)
 I '$$PWRLNK D
 .S $P(@GL@(JB),"~",14)=$$DIRA^W3L(CODE)
 .S $P(@GL@(JB),"~",16)=$$CNISA^W3L(CODE)
 S $P(@GL@(JB),"~",27)=$TR(CODE,"-$","")
 N IR S IR=$$IR^W3L(CODE)
 I IR["TAKEAWAY" S IR=""
 S $P(@GL@(JB),"~",31)=IR
 S $P(@GL@(JB),"~",32)=$$PELE^W3L(CODE)
 N COMP S COMP=$$COMP(CODE)
 S $P(@GL@(JB),"~",47)=COMP
 D PUT^%W1PRM("NMB",CODE)
 Q
 ;
TDNAME ;
 W "<td width="""_WIDTH_""" >"
 K WIDTH W "&nbsp;"_$$ZW_$$^%W1DICT("MAZMINNAME") D TDE
 D TD D INP("NAME","300px",55,$$^%W1DIR,"T") D TDE
 Q
 ;
TDCOMP ;
 D TD W $S($$MUSTCOMP^W3PRM:$$ZW,1:" ")_$$^%W1DICT("COMPANYNAME") D TDE
 D TD D INP("COMP","100%",45,$$^%W1DIR,"T") D TDE
 Q
 ;
TDTEL ;
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL") D TDE
 D
 .;;I $L($$TELB^W3HZMST(JB))<7 S TEL="NMB" ; -- 16/12/24
 .;;E  S TEL="TELB"; -- 16/12/24
 .S TEL="TELB"
 .D TD D INP(TEL,"120px",14,"LTR") D TDE
 Q
 ;
TDPELE ;
 S WIDTH=$S($$^%W1LNG="H":"12%",1:"16%")
 D TD W $$^%W1DICT("MOBIL") D TDE
 D TD D INP("PELE","120px",14,"LTR") D TDE
 Q
 ;
TDCITY ; 
 I $$POLYGON^W4PRM Q
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY") D TDE
 D TD D INPCT("CITY","180px",20,$$^%W1DIR,"T") D TDE
 Q
 ;
TDSTREET ;
 W "<td id=""hdstreet"" >"
  I '$$POLYGON^W4PRM W $$ZW_$$^%W1DICT("STREET")
  I $$POLYGON^W4PRM W $$ZW_$$^%W1DICT("ADDRESS")
 D TDE
 W "<td id=""tdstreet"">" D INP("STREET","70%",40,$$^%W1DIR,"T")
  I $$POLYGON^W4PRM W $$CHKTAW($$TAW)
 D TDE
 Q
 ;
TDHOME ;
 D TD W "&nbsp;"_$S($$NOMUSTHOME^W3PRM:"",1:$$ZW)_$$^%W1DICT("HOME") D TDE
 D TD D INP("HOME","50px",5,"LTR") D TDE
 Q
 ;
TDFLAT ;
 D TD W $$^%W1DICT("FLAT") D TDE
 D TD D INP("FLAT","50px",5,"LTR") D TDE
 Q
 ;
 ;
TDENTRANCE ;
 D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE") D TDE
 D TD D INP("ENTRANCE","50px",5,$$^%W1DIR) D TDE
 Q
 ;
TDFLOOR ;
 D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
 D TD D INP("FLOOR","50px",5,$$^%W1DIR) D TDE
 Q
 ;
TDMIKUD ;
 I $$SHORTDET^W4PRM D TDSP,TDSP Q
 D TD W $$NBSP^%L1FRM(5)_$$^%W1DICT("ZIP") D TDE
 D TD D INP("MIKUD","90px",9,$$^%W1DIR) D TDE
 Q
 ;
TDGUEST ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 D TD W "&nbsp;"_$$^%W1DICT("GUESTSQN") D TDE
 D TD
 I $$NOMOD(JB) D  D TDE Q 
 .I HZM,$$CLOSE^W4HZMST(HZM) D SHOWVL($$SOAD^W4HZMST(HZM)) Q 
 .D SHOWVL($$SOAD^W3HZMST(HZM))
 ;
 W "<select id=""SOAD"" ",!
  W " tabindex="""_$$TABIND("SOAD")_""""
 W ">",!
 D
 . N MAX S MAX=$$MAXMSLSD^W4PRM S:MAX<1 MAX=10
 . N K F K=1:1:MAX D
 .. W "<option value="""_K_""" "
 .. I K=$$SOAD^W3HZMST(JB) W "selected=""selected"" "
 .. W ">"_K_"</option>",!
 W "</select>",!
 D TDE
 Q 
 ;
TDTZ ;
 D TD W "&nbsp;"_$$^%W1DICT("BUSINESSID") D TDE
 D TD
 D
 .I $G(CODE),$$NOMOD(JB) D SHOWVL($$TZ^W4L(CODE)) Q 
 .
 .W "<input type=""text"" id=""TZ"" maxlength=""9"" size=""9"" "
 .I $G(CODE) W " value="""_$G(%ARG("TZ"),$$TZ^W4L(CODE))_""" "
 .W " tabindex="""_$$TABIND("TZ")_""""
 .W $$ONKEYPRESS
 .W "/>"
 D TDE
 Q
 ;
TDCMNT ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ADR") D TDE
 S SPAN=3 D TD D INP("COMMENT","77%",100,$$^%W1DIR,"T") D TDE
 Q
 ;
TDCMNTIN ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENTIN") D TDE
 ;;D INP("CMNTIN","77%",100,$$^%W1DIR,"T") D TDE
 W "<td colspan=""3"" style=""color:red;font-weight:bold"" >"
  I $G(CODE) W $$H2U^%L1FRM($$CMNTIN^W4L(CODE))
 D TDE
 Q
 ;
TDHRA ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ORD") D TDE
 S SPAN=3 D TD D INP("CMHD","77%",100,$$^%W1DIR,"T") D TDE
 Q
 ;
TDDAT ;
 D TD W "&nbsp;"_$$^%W1DICT("TODATE") D TDE
 S %W1DAT("TD")=""
 S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 S %W1DAT("W3ORDHD")=""
 W "<td><table><tr>" D DAT W "</tr></table></td>",!
 Q
 ;
TDSHAA ;
 S %W1DAT("W3ORDHD")=""
 D TD W $$^%W1DICT("TOTIME") D TDE
 D SHAA("SHAATD","SHAA")
 Q
 ;
SHAA(ID,LBL) ;
 W "<td id="""_ID_""" "_$$STYLE^%W1DIR("LTR")
 W " align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""">"
  D
  .I '$$NOMOD(JB) W $$FILLTM(TODAT),! Q
  .N VL X "S VL=$$"_LBL_"^W3HZMST(JB)"
  .I $$NOMOD(JB) D SHOWVL(VL)
 W "</td>",!
 Q
 ;
ADSHAA ;
 N ADSHAAHZ S ADSHAAHZ=$$ADSHAA^W3HZMST(JB)
 I $$NOMOD(JB) D SHOWVL(ADSHAAHZ) Q
 ;
 I $$^%W1HB D
 .D ADSHAAMN
 .W " : "
 .D ADSHAAHR
 ;
 I '$$^%W1HB D
 .D ADSHAAHR
 .W " : "
 .D ADSHAAMN
 Q
 ;
ADSHAAHR ;
 W "<select style=""background-color:yellow"" "
 W " name=""ADSHAAhr"" id=""ADSHAAhrid"" "
 W " tabindex="""_$$TABIND("ADSHAAhrid")_""""
 W $$ONKEYPRESS
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 . I I=+ADSHAAHZ W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 Q
 ;
ADSHAAMN ;
 W "<select style=""background-color:yellow"" "
 W " tabindex="""_$$TABIND("ADSHAAmnid")_""""
 W " name=""ADSHAAmn"" id=""ADSHAAmnid"" "
 W $$ONKEYPRESS
 W " >"
 ;
 F I=0:5:55 D
 .W "<option value="""_I_""""
 .I +I=+$P(ADSHAAHZ,":",2) W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 Q
 ;
TDHZMLAK ;
 D TD W $$ZWEZD("HZMLAK")_$$^%W1DICT("HZMLK") D TDE
 I $$NOMOD(JB) D SHOWVL($$HZMLAK^W3HZMST(JB)) Q
 ;
  W "<td colspan=""2"" >"
  D
  . W "<input type=""text"" "
  .  W "size=""12"" maxlength=""22"" "
  .  W " name=""HZMLAK"" id=""HZMLAK"""
  .  W " tabindex="""_$$TABIND("HZMLAK")_""""
  .  W $$ONKEYPRESS
  .  W $$INPBGCOLOR
  .  W " value="""_$$H2U^%L1FRM($$HZMLAK^W3HZMST(JB))_""""
  .  W " />"
  ;
  I $$PWRLNK^W4PRM D
  .W $$NBSP^%L1FRM($S($$1024^W4WDSCR:5,1:11))
  .W $$^%W1DICT("MKRNOM") W $$NBSP^%L1FRM(2)
  .W "<input type=""text"" "
  .W "size=""12"" maxlength=""22"" "
  .W " name=""MKRNOM"" id=""MKRNOM"""
  .W " tabindex=""13"" "
  .W $$ONKEYPRESS
  .W $$INPBGCOLOR
  .N MKRNOM S MKRNOM=$$MKRNOM^W3HZMST(JB)
  .I $G(%ARG("MKRNOM")) S MKRNOM=%ARG("MKRNOM")
  .W " value="""_$$H2U^%L1FRM(MKRNOM)_""""
  .W " />"
  D TDE
 Q
 ;
TDISHURIM ;
 I $L($G(CODE))<4 Q
 ;
 W "<td colspan=""3"" >" 
  W $$^%W1DICT("ASM")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ASM^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("ISCR")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ISCR^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("ISCH")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ISCH^W4L(CODE):"YES",1:"NO")))
  I $$1024^W4WDSCR W "<BR>"
  I '$$1024^W4WDSCR W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("HBNOW")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$HBNOW^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("DELIVERYFREE")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($D(@$$^W4GL("P1LKDM")@(CODE)):"YES",1:"NO")))
 W "</td>"
 Q
 ;
BOLD(TXT) ;
 Q "<span style=""font-weight:bold"">"_TXT_"</span>"
 ;
TDFAX ;
 D TD W "&nbsp;"_$$^%W1DICT("FAX") D TDE
 D TD D INP("FAX",120,14,"LTR") D TDE
 Q
 ;
TDEMAIL ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N SPAN
 D TD W "&nbsp;"_$$^%W1DICT("EMAIL") D TDE
 ;
 I $$NOMOD(JB) D TD D  D TDE Q
 .I HZM>0,$$CLOSE^W4HZMST(HZM) D SHOWVL($$EMAIL^W4HZMST(HZM)) Q
 .D SHOWVL($$EMAIL^W3HZMST(JB)) Q
 ;
 I $G(CODE)="" D  Q
 .D TD S SPAN=3 D INP("EMAIL","77%",50,$$^%W1DIR,"T") D TDE
 ;
 I $G(CODE),'$$D^W4L(CODE)!($$EMAIL^W4L(CODE)="") D  Q
 .S SPAN=2 D TD D  D TDE
 ..D INP("EMAIL",400,50,$$^%W1DIR,"T")
 ;
 W "<td id=""selmail"" colspan=""2"">"
  W "<table>"
   W "<tr>"
    W "<td>"
     W $$SELMAIL^W4EMAIL(CODE,"EMAIL")
    W "</td>"
  ;
  I '$$^W4CLOSE(HZM),'$$NOMOD(JB) D
  .W "<td>"
  . D ADDMAILBUT^W4EMAIL(CODE)
  .W "</td>"
  .W "<td>"
  . D DELMAILBUT^W4EMAIL(CODE,"EMAIL")
  .W "</td>"
  .W "<td>"
  . D OPENMAIL^W4EMAIL
  .W "</td>"
  ;
   W "</tr>"
  W "</table>",! 
 W "</td>"
 Q
 ;
TDRSRCH ;
 I $$KBVRT Q
 N HZM S HZM=+$$GETP^%W1PRM("HZM") 
 W "<td >"
  W "<table width=""100%"" dir="""_$$^%W1DIR_""">",!
   W "<tr> "
    I $$DELIS^W4PRM D
    .W "<td width=""40%"">"
    . ;;W $$^%W1DICT("KIND")_"&nbsp;"
    . W "<select id=""KINDORD"" onChange=""ChangeFld()"">",!
    .  W "<option value=""C"" >"_$$^%W1DICT("CHOICEORDERKIND")_"</option>",!
    .  W "<option value=""0"" "_$$SELKO(0)_" >"_$$^%W1DICT("BUSINESS")_"</option>",!
    .  W "<option value=""1"" "_$$SELKO(1)_" >"_$$^%W1DICT("PRIVATE")_"</option>",!
    . W "</select>",!
    .W "</td>"
    ;
    I $G(CODE) D
    .W "<td>"
    .N LASTMKR S LASTMKR=$$LASTMKR(CODE)
    .
    . I $$MKRDLV^W4PRM=2 D
    .. W "<select id=""MKR1"" onChange=""ChangeFld()"" >",!
    ..  W "<option value=""C"" >"_$$^%W1DICT("CHOICEMKRDLV")_"</option>",!
    ..  N N S N="" F  S N=$O(@$$GLMKR@(N)) Q:N=""  D
    ..  .N A S A=$G(^(N))
    ..  .W "<option value="""_N_""" "
    ..  . N MKR1 S MKR1=$$MKR1^W3HZMST(JB)
    ..  . I 'MKR1,$G(%ARG("MKR1")) S MKR1=%ARG("MKR1")
    ..  . I 'MKR1,HZM>0 D
    ..  . .S MKR1=$G(@$$^W4ORD@(HZM,"MKRDLV"))
    ..  . .I MKR1>0 S @$$^W4ORD@(HZM,"MKRDLV1")=MKR1
    ..  . I MKR1=N W " selected=""selected"" "
    ...
    ..  .W ">"_$$H2U^%L1FRM(A)_"</option>",!
    .. W "</select>",!
    .
    .W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</td>",!
 Q
 ;
SELKO(VL) ;
 I $$KINDORD^W3HZMST(JB)=VL Q " selected=""selected"" "
 I $G(CODE),$$PRIVATE^W4L(CODE)=VL,'$$PWRLNK Q " selected=""selected"" "
 Q ""
 ;
TDZIP ;
 D TD W "&nbsp;"_$$^%W1DICT("ZIP") D TDE
 D TD D INP("MIKUD",60,6,"LTR") D TDE
 Q
 ;
 ;
DIVBUT ;
 W "<div align=""center"">",!
 ;
 I $$DLVCSR D DLVBUT
 ;
 I '$$DLVCSR D
 .W "<table width=""30%"" dir="""_$$^%W1DIR_""" border=0>",!
 .W " <tr>"
 .W "  <td align=""center"">",!
 .;
 .I $$ONLINE^W4DLVCSR D
 ..D ^W4BUTTON("rbtsubm",$$^%W1DICT("SUBMIT"),"TerminateOrd("_$G(JB)_")",$$BTNPRM(70,"green"))
 .
 .I $$DLVWEB^W4DLVCSR!$$CCWEBR^W4PRM D
 ..D ^W4BUTTON("rbtsubm",$$^%W1DICT("SUBMIT"),"ToOrder()",$$BTNPRM(100,"green"))
 .W "  </td>"
 .
 .
 .I $$DLVWEB^W4DLVCSR!$$CCWEBR^W4PRM,'$$ORDINPROGRESS D
 ..I '$G(CODE),$$^W4MSD($G(LKH)) D
 ... W "<td>"
 ... D ^W4BUTTON("rbtmyord",$$^%W1DICT("SHOWORDERS"),"OrdersList()",$$BTNPRM(100,"brown"))
 ...W "</td>"
 ..
 ..N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 ..D SETMKBL
 ..
 ..I $G(CODE) D
 ...W "<td>"
 ... D ^W4BUTTON("lastorders",$$^%W1DICT("CUSTLASTORDERS"),"CustLastOrders('"_CODE_"')",$$BTNPRM(100,"BLACK","lightblue"))
 ...W "</td>",!
 ..
 ..W "<td>"
 .. D ^W4BUTTON("rbtcustcard",$$^%W1DICT("FULLCUSTCARD"),"CustCard()",$$BTNPRM(100,"blue"))
 ..W "</td>"
 ..
 ..I $G(CODE)&$$POLYGON^W4PRM,'$$^W4TABLET D
 ...W "<td>"
 ... D ^W4BUTTON("rbtshowmap",$$^%W1DICT("SHOWMAPLOCATION"),"ShowMapLocation()",$$BTNPRM(100,"brown"))
 ...W "</td>"
 ..
 ..I '$$NOMOD(JB) D
 ...W "<td>" 
 ... D ^W4BUTTON("rbtclr",$$^%W1DICT("CLEAR"),"ClearOrder()",$$BTNPRM(100,"black"))
 ...W "</td>"
 .
 .N FS S FS=12
 .W "  <td align=""center"" >",!
 . D ^W4BUTTON("rbtback",$$^%W1DICT("BACK"),"Back2Menu()",$$BTNPRM(100,"red"))
 .W "  </td>"
 .;
 .I $$MUSTREGISTRY^W3PRM D
 ..W "  <td align=""center"" >",!
 .. D ^W4BUTTON("rbtupdate",$$^%W1DICT("UPDATEPROFILE"),"UpdateProfile()","color:blue;font-size:"_$$^W3FSZ(FS))
 ..W "  </td>"
 .;
 .W " </tr>",!
 .
 .I $G(CODE) D
 ..N MKRPZM S MKRPZM=$$MAGIAPIZUIM^W4HZORHD Q:'MKRPZM
 ..W "<tr><td colspan=15>"
 .. D ^W4BUTTON("rbtoizuim",$$^%W1DICT("MAGIAPIZUIM"),"ShowPizuim('"_MKRPZM_"')","color:red;font-size:"_$$^W3FSZ(18)_";width:100%")
 ..W "</td></tr>",!
 .W "</table>",!
 ;---------------------------- END BUTTONS ---
 W "</div>",!
 Q
 ;
 ;
INIT ;
 ;;M ^AA("W3ORDDET","ARG")=%ARG ; ***
 ;;S ^AA("W3ORDDET","MMCC")=$$MMCC^W4PRM
 ;;S ^AA("W3ORDDET","TELEPHONE")=$$TELEPHONE^W4PRM
 ;;S ^AA("W3ORDDET","JB")=JB
 ;
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I $G(%ARG("DLVCSR")) D PUT^%W1PRM("DLVCSR",%ARG("DLVCSR"))
 ;
 I $$TELEPHONE^W4PRM D
 .D PUT^%W1PRM("DLVCSR",2)
 .D SETMKBL
 .I $G(%ARG("MSDR0")) D PUT^%W1PRM("MSDR0",%ARG("MSDR0")),PUT^%W1PRM("MSD0",%ARG("MSDR0"))
 ;
 I $G(%ARG("MMCC")) D
 .D PUT^%W1PRM("MMCC",%ARG("MMCC"))
 .I $G(%ARG("MSD")) D PUT^%W1PRM("MSDR",%ARG("MSD"))
 ;
 S MSD=$$GETP^%W1PRM("MSD"),CODE=$G(CODE)
 I '$G(MSD),'$$TELEPHONE^W4PRM S MSD=1
 ;
 I $G(%ARG("FIRST"))=1 D
 .K ^[$$^W3MAIN]TMPORDC(JB)
 .D KILL^%W1PRM("ORDDET")
 .D KILL^%W1PRM("CURREST")
 .I $$GETP^%W1PRM("COPYORD")<0,$D(^[$$^W3MAIN]TMPCOPY(JB))#2 D
 ..S @$$^W4TMPORD=^[$$^W3MAIN]TMPCOPY(JB)
 .D KILL^%W1PRM("CUSTLASTORDS")
 .D KILL^%W1PRM("MIMUSHPZM")
 .D KILL^%W1PRM("COORD")
 .D KILL^%W1PRM("MRKTO")
 .D KILL^%W1PRM("AZRPLGN")
 .D KILL^%W1PRM("SBMORD")
 .D KILL^%W1PRM("PWRLNKID")
 ;
 I '$G(%ARG("FIRST")),'$$ORDINPROGRESS D
 .I $G(^[$$^W3MAIN]TMPORDC(JB))'="" D
 ..N TMPORDC S TMPORDC=^(JB)
 ..Q:$P(TMPORDC,"~")'=CODE
 ..S @$$^W4TMPORD=TMPORDC
 ..;;S ^AA("W3ORDDET-TMPORDC")=1
 .K ^[$$^W3MAIN]TMPORDC(JB)
 .D KILL^%W1PRM("CUSTLASTORDS")
 ;
 D KILL^%W1PRM("SRCH")
 D KILL^%W1PRM("STPAR")
 D KILL^%W1PRM("STPAR0")
 D KILL^%W1PRM("SAVEORD")
 D KILL^%W1PRM("SHID")
 D KILL^%W1PRM("MVLN")
 ;
 I $G(%ARG("CALLCENTER"))="",$G(%ARG("DLVCSR"))=2 S %ARG("CALLCENTER")=.5 ; -- 3/4/22
 ;
 I $G(%ARG("CALLCENTER"))!($G(%ARG("CALLCENTER"))=0) D
 .D PUT^%W1PRM("CALLCENTER",%ARG("CALLCENTER"))
 ;
 I $$CALLCENTER^W4PRM&($G(%ARG("FIRST"))=1) D
 .I '$G(%ARG("CODE")) S CODE=""
 .I $$CALLCENTER^W4PRM<2 D INIT^W4HZGMLZ
 ;
 I $$CALLCENTER D
 .D ^W4BGBODY
 ;
 I $$DLVWEB^W4DLVCSR,$G(%ARG("EDIT")) D
 .D INIT^W3MENU
 .S LKH=CODE
 ;
 I $G(%ARG("MSDFROM")) D
 .D PUT^%W1PRM("MSDFROM",%ARG("MSDFROM"))
 .
 .I '$$^W4MM D
 ..S:'$G(%ARG("MSDTO")) %ARG("MSDTO")=1
 ..D PUT^%W1PRM("MSD",%ARG("MSDTO"))
 ..S MSD=%ARG("MSDTO")
 .
 .D SETMKBL
 .D KILL^%W1PRM("MSDFROMSAVED")
 ;
 D PUT^%W3DEB("W3ORDDET","PRM=PRM & CODE=CODE & MSD=MSD")
 ;
 I $$POLYGON^W4PRM D
 .N NMAP S NMAP=$G(%ARG("NMAP")) S:'NMAP NMAP=1
 .I NMAP?1N.E D PUT^%W1PRM("NMAP",NMAP)
 ;
 S PRMENU=1
 S W3ORDDET=""
 ;
 I $$MUSTREGISTRY^W3PRM S %ARG("SHOW")=1
 Q
 ;
 ;
PWRLNK()
 I $G(%ARG("PWRLNKID"))'="" Q 1
 I $$GETP^%W1PRM("PWRLNKID")'="" Q 1
 Q 0
 ;
CODENMB ; --> CODE,NMB
 I CODE["$" S CODE=$TR(CODE,"$","")
 S CODE=$$SPA^%L1FRM(CODE)
 I $L($G(CODE))>3 D PUT^%W1PRM("CODE",CODE)
 I $L($G(CODE))<4 S CODE=$$GETP^%W1PRM("CODE") I CODE["UNDEF" S CODE=""
 ;
 I $L($G(CODE))>3 D PUT^W3HZMST(JB,"CODE",CODE)
 ;
 S NMB="" I $$NMB^W3HZMST(JB) S NMB=$$NMB^W3HZMST(JB)
 ;
 I 'NMB S NMB=$P(CODE,"~")
 ;;W "CODE="_CODE_"  NMB="_NMB,!
 Q
 ;
 ;
KOTDLV ;
 S KOT=$$^%W1DICT("DELIVERYDETAILS")
 N MSDKOT S MSDKOT=MSD
 I $G(%ARG("MSDFROM")),$$TELEPHONE S MSDKOT=%ARG("MSDFROM")
 S KOT=" [ "_$$H2U^%L1FRM($$MYNAME^W4KOTHSB)_" ] "_KOT
 ;
 I $$ORDER D
 .S KOT=KOT_"&nbsp;&nbsp<span style=""font-size:"_$$^W3FSZ(14)_""">"
 .S KOT=KOT_$$^%W1DICT("ORDER")_" "_$$ORDER_"</span>"
 ;
 S KOT=$$KOTTIME^W4HZGMLZ(KOT)
 S KOT("WDT")=$$WDTBL
 I '$$^W4TABLET,'$$ORDINPROGRESS,'$$KBVRT D KOT^W4SHEET(.KOT)
 ;
 W "<a id=""callid""></a>",!
 W "<table align=""center"" width="""_$$WDTBL_"%"" border=""0"" "_PADDING_" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <td style=""color:darkblue;font-weight:bold"" >&nbsp;&nbsp;"_$$^W4KOTMLZ_"</td>",!
 W "   <td width="""_$S($$1024^W4WDSCR:15,1:10)_"%"" >&nbsp;&nbsp;"_$$^%W1DICT("CODEORTEL")_"</td>",!
 ;
 W "   <td>"
  I $G(LKH)="",$$NMB^W3HZMST(JB),'$G(%ARG("FIRST")) S LKH=$$NMB^W3HZMST(JB)
 ;
  I '$$NOMOD(JB),'$$ORDEREXIST D
  .W "<div style=""display:flex"">",!
  .W "   <input type=""text"" id=""NMB"" name=""NMB"" maxlength=""14"" size=""14"" "
  .W "   tabindex=""0"" "
  .W "   value="""_$G(LKH)_""" onClick=""this.select()"" "
  .W $$INPBGCOLOR
  .W $$ONKEYPRESS
  .W " oninput=""ChangeCd()"" onChange=""TestCust('NMB');FindCust('NMB','NMB','LKH','1')"" >",!
  .I $$^W4TABLET W $$NBSP^%L1FRM(7)
  .W "     &nbsp;<img id=""filter"" src=""w3filter.jpg"" "
  .N SZ S SZ=20 I $$^W4TABLET S SZ=25
  .W " style=""height:"_$$^W4KF(SZ)_"px;width:"_$$^W4KF(SZ)_"px"" "
  .W " onClick=""NoChangeCd();TestCust('NMB');FindCust1('NMB','NMB','LKH','1')"" >",!
   ; 
  I $$NOMOD(JB)!$$ORDEREXIST D SHOWVL($$RKV("NMB"))
  W "</div>",! 
 W "   </td>",!
 ;
 I $$^W4DLVCSR=1 D
 .W "<td width=""15%"" >"
 . D
 . .N HZM S HZM=$$GETP^%W1PRM("HZM")
 . .I $$NOMOD(JB)!$$ORDINPROGRESS D  Q
 . . .I HZM>0 D SHOWVL($$^%W1DICT("ORDER")_" "_HZM) Q
 . . .W "&nbsp;"
 . .D ^W4BUTTON("lastcust",$$^%W1DICT("SHOWLASTCUST"),"ShowLastCust()","color:green;font-size:"_$$^W3FSZ(12))
 .W "</td>"
 ;
 W "</tr></table>",!
 Q
 ;
 ;
ORDER(STAM)
 Q +$$GETP^%W1PRM("HZM")
 ;
 ;
ORDEREXIST(STAM) ;
 I $$TELEPHONE Q $D(@$$^W4TMPORD)=11
 ;
 N HZM S HZM=$$ORDER
 I $D(@$$^W4ORD@(HZM))'=11 Q 0
 I '$$^W4MSL($$NMB^W4HZMST(HZM)) Q 0
 I $$GETP^%W1PRM("COPYORD")<0 Q 0
 Q 1
 ;
BTN(ID,VL,FUNC,STYLE,DOP)
 W "<td align=""center"" id="""_$G(ID)_""" onClick="""_$G(FUNC)_""" "
 W " style="""_$G(STYLE)_""">"
  W VL
 W "</td>",!
 Q
 ;
BTNPRM(WD,CLR,BGCLR)
 N PRM,FSZ
 S FSZ=$$^W3FSZ($S($$1024^W4WDSCR:$S($$^%W1HB:11,1:10),1:12)) ; 14
 I $$^W4TABLET=1,$G(@$$^W4PRM@("TABLET","FSZBTN")) S FSZ=^("FSZBTN")
 S:$G(BGCLR)="" BGCLR="white"
 I $D(W4MSDLST) S FSZ=$$^W3FSZ(12)
 S PRM="width:"_WD_"%;color:"_CLR_";font-size:"_FSZ_";font-weight:bold"
 S PRM=PRM_$S($G(BGCLR)="":"",1:";background-color:"_BGCLR)
 I $D(W4MSDLST) S PRM=PRM_";border:1px solid brown"
 S PRM=PRM_";cursor:pointer"
 Q PRM
 ;
GETDAT(STAM) ;
 N TODAT,DAT S TODAT=+$H
 N A S A=$$^W3TIME($H,$$CITY^W3HZMST(JB))
 I $D(W3TIME("ND")) S TODAT=TODAT+1
 N TOTIME S TOTIME=$$GETTIME
 S DAT=$$DAT^W3HZMST(JB)
 I DAT S TODAT=$$^%L1DC(DAT,3)
 ;;I TODAT=$$^W4DZ,TOTIME<(5*3600),$$GETP^%W1PRM("HZM")'>0 S TODAT=TODAT+1 ; -- 15/11/23 - TO COMMENT
 Q TODAT
 ;
 ;
GETTIME(STAM) ;
 N TOTIME,SHAA,TODAT S TOTIME=$H
 ;
 S TOTIME=$P($$^W3TIME($H,$$CITY^W3HZMST(JB)),",",2) ;;+300
 ;
 I '$$NOMOD(JB),$G(@$$^W4PRM@("DLVIMD")),$$SHAA^W3HZMST(JB)="" D
 .S TOTIME=$P($H,",",2)+300 K W3TIME("ND")
 ;
 I $$NOMOD(JB) D
 .S SHAA=$$SHAA^W3HZMST(JB)
 .I SHAA'?.P,SHAA'=0,SHAA'="&nbsp;" D
 ..S TOTIME=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 ;
 Q TOTIME
 ;
 ;
CHECKDAT(DT) ;
 I $D(W3TIME("ND")) Q 1
 I $G(FUTDAT),$$^%L1DC(DT,8)=6,$G(MSD)=1,$$DLVWEB^W4DLVCSR!$$ONLINE^W4DLVCSR Q 0
 ;;W $$^W3VLDDT($$^%L1DC(DT,1)),!
 Q ($$^W3VLDDT($$^%L1DC(DT,1))>0)
 ;
 ;
DAT ;
 N TXTDAT S TXTDAT="",TODAT=""
 I $$DAT^W3HZMST(JB) S TODAT=$$^%L1DC($$DAT^W3HZMST(JB),3)
 D KILL^%W1PRM("FUTDAT")
 ;
 ;;I $$NOMOD(JB)!($D(@$$^W4ORD@(+$$GETP^%W1PRM("HZM"),"CB","ASR"))>9) D  Q  ; -- 25/6/25 --> COMMENT
 I $$NOMOD(JB) D  Q  ; -- 25/6/25
 .D SHOWVL($$DAT^W3HZMST(JB))
 ;
 S FUTDAT=0
 ;
 I '$$NOMOD(JB),'TODAT D  ;
 .S TODAT=$$GETDAT
 .;;S ^AA("W3ORDDET","TODAT0")=TODAT
 .N TOTIME S TOTIME=$$GETTIME
 .;;S ^AA("W3ORDDET","TOTIME0")=TOTIME
 .;;M ^AA("W3ORDDET","W3TIME")=W3TIME
 .I $D(W3TIME("ND")) S TODAT=$H+1 K W3TIME("ND")
 .I $P(TOTIME,":")'?2N1":"2N!(TOTIME="00:00") S TOTIME=$P($H,",",2)
 .N P6 S P6=$$SHAA^W3HZMST(JB)
 .;;S ^AA("W3ORDDET","TOTIME")=TOTIME
 .;;S ^AA("W3ORDDET","P6")=P6
 .
 .I '$$CHECKDAT(TODAT) D
 ..N DT F DT=TODAT+1:1:TODAT+200 Q:$$CHECKDAT(DT)
 ..S TODAT=DT,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .;
 .I $$NMB^W3HZMST(JB) D PUT^W3HZMST(JB,"DAT",$$^%L1DC(TODAT,1))
 ;
 I $$NOFUTDAT^W3PRM Q
 ;
 S %W1DAT("CLND")="2;60"
 ;
 I $$DLVCSR D
 .S %W1DAT("CLND")="2;360"
 .S %W1DAT("KEYPRESS")=""
 .S %W1DAT("TABIND")=$$TABIND("DAT")
 ;
 I $$ONLINE S %W1DAT("CLND")="2;60"
 ;
 D ^%W1DAT("DAT",TODAT,TXTDAT)
 Q
 ;
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 I $D(SIZE) W " style=""font-size:"_SIZE_""""
 I $D(DIR) W " dir="""_DIR_""""
 W " >",!
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
TDE W "</td>",!
 Q
 ;
DATCB W "<td width=""16%"">"_$$^%W1DICT("RECEIVED")_" : "_$$RPL^%L1FRM($$DATCB^W3HZMST(JB,$G(GL,$$^W3ORD))," ","&nbsp;")_"</td>",!
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 I '$$NOMOD(JB) W $$INPUT(RKV,$G(WD),$G(SIZE),$G(DIR),$G(PRTX)) Q
 ;
 D SHOWVL($$RKV(RKV))
 Q
 ;
 ;
QUOT(SETINP) ;
 N QUOT S QUOT="'"
 I $G(SETINP)  S QUOT="\'"
 Q QUOT
 ;
 ;
INPUT(RKV,WD,SIZE,DIR,PRTX,SETINP) ;
 N ST,QUOT S QUOT=$$QUOT($G(SETINP))
 S ST="<input type=""text"" maxlength="""_SIZE_""""
 S ST=ST_" style=""width:"_$$^W4KF(WD)_$S(DIR="LTR":";text-align:"_$S($G(PRTX)="T":"left",1:"center"),1:"")_""""
 S ST=ST_" dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 S ST=ST_" onMouseDown=""NoChangeCd()"""
 S ST=ST_" onKeyDown=""NoChangeCd()"""
 N PRM S PRM="" 
 I RKV="STREET" S PRM="STREET"
 S ST=ST_$$INPBGCOLOR(PRM)
 S ST=ST_$$ONKEYPRESS
 ;
 I '$$ELPOS,'$$DLVWEB^W4DLVCSR,$G(CODE),RKV'="STREET" D
 .I '$$POLYGON^W4PRM S ST=ST_" onChange=""CallTfr("_QUOT_CODE_QUOT_")"" "
 ;
 I RKV'="STREET" D
 .S ST=ST_" onClick=""noIfrHide=0;HideStreet("_QUOT_RKV_QUOT_")"
 .I RKV="HOME"!(RKV="FLAT")!(RKV="FLOOR") S ST=ST_";this.select()"
 .S ST=ST_""""
 .;
 .I RKV="HOME" S ST=ST_" onChange=""CheckHome()"""
 .;
 .I RKV="EMAIL" S ST=ST_" onKeyUp=""EnglishOnly(event,"_QUOT_"EMAIL"_QUOT_")"""
 .;
 .N VL S VL=$$RKV(RKV)
 .;;I RKV="COMMENT" S ^AA("W3ORDDET","COMMENT")=VL
 .; 
 .I RKV="NAME",$L($G(CODE)),$$CLOSED^W4L(CODE) D
 ..S VL=VL_" - "_$$^%W1DICT("CUSTCLOSED")
 .;
 .S ST=ST_" value="""_VL_""" "
 .S ST=ST_" tabindex="""_$$TABIND(RKV)_""""
 ;
 ;
 I RKV="STREET" D
 .N VL,VL1 S VL=$$RKV(RKV)
 .
 .I $$POLYGON^W4PRM,$L($G(CODE)) D
 ..N CITY S CITY=$$RKV("CITY")
 ..;;S ^AA("W3ORDDET","STREET")=VL
 ..;;S ^AA("W3ORDDET","CITY")=CITY
 ..S CITY=$$RPL^%L1FRM(CITY,"&nbsp;","")
 ..I CITY'?.P S VL=VL_", "_CITY
 .
 .I $D(SETINP) S VL1=$$RPL^%L1FRM(VL,"'","\'")
 .S VL1=$$RPL^%L1FRM(VL,"""",QUOT_QUOT)
 .I VL'?1N.N S ST=ST_" value="""_VL1_""" " S VL1=0
 .
 .I VL?1N.N S ST=ST_" value="""_VL_"""" S VL1=+VL
 .
 .S ST=ST_" tabindex="""_$$TABIND(RKV)_""""
 .
 .S ST=ST_" onChange=""ChangeStreet()"""
 .
 .I '$$POLYGON^W4PRM D
 ..N CITY S CITY=$$CITY^W3HZMST(JB,$G(GL))
 ..I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 S ST=ST_" oninput=""FindStreet(this)"""
 ;
 S ST=ST_" />"
 ;
 Q ST
 ;
 ;
INPBGCOLOR(SEL) ;
 N ST,QUOT S QUOT=$$QUOT($G(SETINP))
 N FOC S FOC="this.style.backgroundColor="_QUOT_"lightyellow"_QUOT
 I $G(SEL)="STREET",$$POLYGON^W4PRM S FOC=FOC_";this.select()"
 S FOC=FOC_";ifrHide("_QUOT_"MUST"_QUOT_","_QUOT_"ifr"_QUOT_")"
 S ST=" onFocus="""_FOC_""" "
 S ST=ST_" onBlur=""this.style.backgroundColor="_QUOT_$$BGINP^W3CSS($$COLOR^W3CSS)_QUOT_""""
 Q ST
 ;
SPANSTYLE(RKV) ;
 N ST
 S ST="<span"
 I $G(RKV)'="" S ST=ST_" id='"_RKV_"' name='"_RKV_"'"
 I $D(W3ORDHD("SPANSTYLE")) S ST=ST_" style="""_W3ORDHD("SPANSTYLE")_""""
 E  I $D(SPANSTYLE) S ST=ST_" style="""_SPANSTYLE_""""
 I $D(DIR) S ST=ST_" dir="""_DIR_""""
 S ST=ST_">" K DIR,SPANSTYLE
 Q ST
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 N SEL S SEL=""
 ;
 D PUT^%W3DEB("W3ORDDET","INPCT-RKV=RKV& INPCT-WD=WD& INPCT-SIZE=SIZE& INPCT-DIR=DIR& INPCT-PRRG=PRRG")
 ;
 I '$$NOMOD(JB) D
 .I $$CITIESTABLE=1 D SELCITY(RKV)
 .
 .I $$CITIESTABLE'=1 D
 ..W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_$$^W4KF(WD)_";"
 ..W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 ..W " dir="""_$$^%W1DIR_""""
 ..N VL S VL=$$RPL^%L1FRM($$RKV(RKV),"""","''")
 ..W " name="""_RKV_""" id="""_RKV_""" value="""_VL_""""
 ..W " tabindex="""_$$TABIND("CITY")_""""
 ..W " onInput=""GetId('taw').checked=false"" "
 ..W " onChange=""ChangeCity();"_$$LOADBT_""" "
 ..I $$CITIESTABLE'=2 W $$ONKEYPRESS
 ..I $$CITIESTABLE=2 D
 ...I '$$^W4TABLET W " OnKeyPress=""KeyPressCity(event,this)"" "
 ...I $$^W4TABLET W " OnKeyPress=""KeyPressCity(event,this,'',10)"" "
 ...W " onClick=""this.select()"" "
 ..W " onFocus=""clearMenu()"" >",!
 .;
 .I $$TAKEAWAY,'$$^W4SMALL,'$D(W3MSDRG) W $$CHKTAW($$TAW)
 .;
 .I $$TAKEAWAY,$$^W4SMALL,'$D(NOTAKEAWAY),'$D(MSDRG) D
 ..W "<br><br><input type=""button"" id=""taw"" value="""_$$HDTAW_""""
 ..W " style=""color:grey"
 ..I $$^W4SIMUL W ";font-size:"_$$^W3FSZ(12)
 ..W """"
 ..W " onClick=""TakeAway()"" >"
 ;
 I $$NOMOD(JB) D SHOWVL($$RKV("CITY"))
 ;
 Q
 ;
 ;
SHOWVL(VL) I $G(VL)="" S VL="&nbsp;"
 W "<font style=""font-weight:bold"">"_VL_"</font>",!
 Q
 ;
RKV(RKV)
 I $G(RKV)="" Q "&nbsp;"
 N VL S VL=""
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 ;
 ;;I RKV="CMNTIN" Q $S($G(CODE)="":"",1:$$H2U^%L1FRM($$CMNTIN^W4L(CODE)))
 ;
 I RKV="TELB" D  Q VL
 .I $L($$TELB^W3HZMST(JB))>6 S VL=$$TELB^W3HZMST(JB) Q
 .I $G(CODE),$$TELEPHONE^W4PRM,$$TELB^W3L(CODE) S VL=$$TELB^W3L(CODE) Q
 .I $G(CODE),$$DLVCSR,$$TELB^W4L(CODE) S VL=$$TELB^W4L(CODE) Q
 .I $G(CODE) S VL=CODE
 ;
 I RKV="TELB" S RKV="NMB"
 ;
 S @("VL=$$"_RKV_"^W3HZMST("_JB_","""_GL_""")")
 ;
 D PUT^%W3DEB("W3ORDDET-RKV","RKV=RKV & VL=VL & CODE=CODE")
 ;
 I RKV="HOME",$G(HOMEPRM) S HOME=HOMEPRM
 I RKV="CITY",VL="TAKEAWAY",'$$POLYGON^W4PRM S VL=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY","")
 I RKV="CITY",VL="TAKEAWAY",$$POLYGON^W4PRM,'$$ORDINPROGRESS S VL=""
 ;
 I VL=""!(VL="-"),$G(CODE),$$DLVCSR,'$$NOMOD(JB),'$$ORDINPROGRESS,'$G(%ARG("MULTYADR")) D
 .I $$GETP^%W1PRM("DLVCSR")=2
 .S VL=$$GETVL(CODE,RKV)
 ;
 I VL'="" Q $$H2U^%L1FRM(VL)
 Q "&nbsp;"
 ;
 ;
GETVL(CODE,RKV) ;
 N VL S VL=""
 I RKV="NAME",'$$NAME2COMP(CODE) S VL=$$LKH^W4L(CODE)
 I RKV="NAME",$$NAME2COMP(CODE) S VL=$$NAME^W3HZMST(JB)
 ;
 I RKV="COMP" D
 .S VL=$$COMP(CODE)
 ;
 I RKV="NMB" S VL=$$TELB^W4L(CODE)
 I RKV="PELE" S VL=$$PELE^W4L(CODE)
 I RKV="CITY" S VL=$$CITY^W4L(CODE)
 I RKV="STREET" S VL=$$KTV^W4L(CODE)
 I RKV="HOME" S VL=$$BAIT^W4L(CODE)
 N HM S HM=($$HOME^W3HZMST(JB)="")
 I RKV="FLAT",'HM S VL=$$DIRA^W4L(CODE)
 I RKV="ENTRANCE",'HM S VL=$$CNISA^W4L(CODE)
 I RKV="FLOOR",'HM S VL=$$KOMA^W4L(CODE)
 I RKV="COMMENT" S VL=$$CMNT^W4L(CODE)
 I RKV="FAX" S VL=$$FAX^W4L(CODE)
 I RKV="EMAIL" S VL=$$EMAIL^W4L(CODE)
 I RKV="MIKUD" S VL=$$MIKUD^W4L(CODE)
 Q VL
 ;
 ;
P(I)
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 I $P($G(@GL@(JB)),"~",I)'="" Q $$H2U^%L1FRM($TR($P(@GL@(JB),"~",I),"?",""))
 Q ""
 ;
GETSNIF(STAM) ;
 Q $$GETSNIF^W3SNIF
 ;
ET W "</table>",!
 I '$G(W3FAXHTM) W "</div>",!
 Q
 ;
FILL(NMB) ;
 I $G(JB),'$G(CODE),$L($G(NMB))>3,$$NMB^W3HZMST(JB)=""!($$NAME^W3HZMST(JB)="") D
 .N EXIST S EXIST=0
 .I $$D^W3L(NMB) D EXIST
 .N NMB1 S NMB1=$TR(NMB,"-","") Q:NMB1=""
 .I EXIST D HOMEPRM(NMB1) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .
 .N GL,GLTMP S GL=$$GLA^W3L
 .
 .I '$$D^W3L(NMB1,GL),$G(@$$^W4GL("LKHAT")@(NMB1)) D
 ..S NMB1=@$$^W4GL("LKHAT")@(NMB1)
 ..I NMB1 D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 .
 .I '$$D^W3L(NMB1,GL),$$^%W1LNG="H" D
 ..I $E(NMB1,1,2)="02" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="03" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="04" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="08" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="09" S NMB1=$E(NMB1,3,12) Q
 .
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .I '$$D^W3L(NMB1,GL) D HOMEPRM(NMB1) Q
 .I $G(HOMEPRM)?1N.N,+$$BAIT^W3L(NMB1,GL)'=+HOMEPRM D HOMEPRM(NMB1) Q
 .
 .D SETLK2ORD(NMB1,GL)
 Q
 ;
 ;
SETLK2ORD(NMB1,GL)
 S GL=$G(GL)
 S $P(@$$^W3TMPORD@(JB),"~",1)=$$TELB^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",2)=$$LKH^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",3)=$$KTV^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",7)=$$CMNT^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",13)=$$KOMA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",14)=$$DIRA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",15)=$$BAIT^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",16)=$$CNISA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",31)=$$IR^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",32)=$$PELE^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",47)=$$COMP(NMB1,GL)
 Q
 ;
EXIST ;
 W "<script>",!
 W " MsgA(""PHONEOFMEMBER"")",!
 W "</script>",!
 S EXIST=1 Q
 ;
TODAY(DAT) ;
 I $$^%L1DC(DAT,3)=+$H Q 1
 Q 0
 ;
HOMEPRM(NMB1) ;
 I $G(HOMEPRM) S $P(^[$$^W3MAIN]TMPORD(JB),"~",15)=HOMEPRM
 I $$GETP^%W1PRM("CODE")="",$G(NMB1) D
 .D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 Q
 ;
OPTABLE ;
 D PADDING
OPTABLE1 ;
 W "<table border=""0"" "_PADDING
 W " style=""width:"_$$WDTBL_"%;border:solid;border-color:gray;border-width:1px;"
  W " margin:"_$$^W4KF(12)_"px;background-color:white;color:black"
  W ";"_$$GRAD^W3CSM("#EFEFEF","#FFFFFF")
 W """ dir="""_$$^%W1DIR_""""
 I $G(PRM)="IN" W " onClick=""HideStreet('table')"""
 I $G(W3FAXHTM) W " style=""font-size:"_$$^W3FSZ_";"""
 Q
 ;
PADDING ;
 S PADDING="" I $$DLVCSR S PADDING=" class=""compr"""
 Q
RWSTYLE ;
 Q
 ;
NEWORD(JB) ;
 I $D(@$$^W3ORD(JB)@(JB)) Q 0
 I '$D(^[$$^W3MAIN]TMPORD(JB)) Q 1
 I $D(^[$$^W3MAIN]TMPORD(JB))>9 Q 0
 N NEO S NEO=1
 ;;N I F I=1:1:$L(^(JB)) I $P(^[$$^W3MAIN]TMPORD(JB),"~") S NEO=0 Q
 I $P(^(JB),"~",1,3)'?.P S NEO=0
 Q NEO
 ;
SUBMIT ;
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q " "
 Q "<span style=""color:red"">*</span>"
 ;
ADDRESS ;
 S:'$D(GL) GL=""
 N KTV
 S KTV=$$H2U^%L1FRM($$KTV^W3HZMST(JB,GL))
 W "<td align='"_$S($$^%W1DIR="RTL":"right",1:"left")_"'"
 I $D(WIDTH) W "width="""_WIDTH_""""
 W "' >&nbsp;&nbsp;"_$$^%W1DICT("ADDR")_" : <span>"_KTV_"</span></td>",!
 K WIDTH Q
 ;
 ;
FILLTM(TODAT) ;
 N TOTIME,SHAA
 S TOTIME=$$GETTIME ; -- 5N
 ;;W "TOTIME0="_TOTIME,!; ***
 D PUT^%W3DEB("W3ORDDET-FILLTM","TOTIME0=TOTIME")
 ;
 I TODAT'?5N S TODAT=$$^%L1DC(TODAT,3)
 I '$G(MSD) S MSD=$$GETP^%W1PRM("MSD")
 I $$DLVWEB^W4DLVCSR,$$GETP^%W1PRM("MRKTO") S MSD=$$GETP^%W1PRM("MRKTO")
 D PUT^%W3DEB("W3ORDDET-FILLTM","TODAT=TODAT")
 ;
 N CHKTIME S CHKTIME=$$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))
 D PUT^%W3DEB("W3ORDDET-FILLTM","CHKTIME=CHKTIME")
 ;
 ;;W "1: MSD="_MSD_"  CHKTIME="_CHKTIME_"  TOTIME="_TOTIME,! ; ***
 I $G(TODAT),$G(MSD),CHKTIME=-2 D  ; VR < NIJ DIAP
 .S TOTIME=$$DP1^W3VLDTM(MSD,$ZD(TODAT,"DD.MM.YY"))
 ;
 N TOSHAA S TOSHAA=$$SHAA^W3HZMST(JB)
 ;
 I '$$NOMOD(JB),$$NMB^W3HZMST(JB),$$SHAA^W3HZMST(JB)=""!($$SHAA^W3HZMST(JB)="00:00") D
 .D PUT^W3HZMST(JB,"SHAA",$$T^%L1TIME(TOTIME))
 ;
 D PUT^%W3DEB("W3ORDDET-FILLTM","TOTIME=TOTIME")
 ;
 I $$NOFUTDAT^W3PRM Q $$T^%L1TIME(TOTIME)
 ;
 N FROMHR,FROMMIN
 S (FROMHR,FROMMIN)=0
 ;
 N SHAAHZ S SHAAHZ=$$SHAA^W3HZMST(JB)
 ;;W "SHAAHZ="_SHAAHZ,!; ***
 I SHAAHZ'?.P,SHAAHZ'="00:00",SHAAHZ'="" D
 .S TOTIME=$$SHAA^W3HZMST(JB)
 ;
 ;;W "TOTIME1="_TOTIME,! ; ***
 I TOTIME[":" D
 .;;W "LV5",! ; ***
 .S FROMHR=$TR($P(TOTIME,":")," ",""),FROMMIN=$P(TOTIME,":",2)
 ;
 I TOTIME?1N.N D
 .;;W "LV6",! ; ***
 .S FROMHR=$P($$T^%L1TIME(TOTIME),":"),FROMMIN=$P($$T^%L1TIME(TOTIME),":",2)
 ;
 ;;W "2: TOTIME2="_TOTIME_"  FROMHR="_FROMHR_"  FROMMIN="_FROMMIN,! ; ***
 ;
 D PUT^%W3DEB("W3ORDDET","TODAT=TODAT & TOTIME=TOTIME & FROMHR=FROMHR & FROMMIN=FROMMIN")
 ;
 ; --------------------------- SELECT HOUERS
 S TDTM="<select style=""background-color:yellow"" "
 S TDTM=TDTM_" name=""SHAAhr"" id=""SHAAhrid"" "
 S TDTM=TDTM_" tabindex="""_$$TABIND("SHAAhrid")_""""
 S TDTM=TDTM_$$ONKEYPRESS
 S TDTM=TDTM_" onChange=""OnChangeHouer('"_$G(CODE)_"')"" >"
 ;
 N MESHAA,ADSHAA
 S MESHAA=$$DP1^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 S ADSHAA=$$DP2^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 ;;W "ADSHAA0="_ADSHAA,! ; ***
 S MEMIN=0
 ;
 ;;W "TOSHAA="_TOSHAA,! ; ***
 I +TODAT=+$H,$$T^%L1TIME($H)>MESHAA S MESHAA=+$$T^%L1TIME($H)
 ;
 I TODAT=($H+1),TOSHAA=""!(TOSHAA=":") D
 .I $$NDTNTM^W4PRM,'$$NOCHNTM D  Q
 ..S FROMHR=-1
 ..S TDTM=TDTM_"<option value="""_FROMHR_""" selected=""selected""></option>"
 .S TOSHAA=MESHAA ;
 ;
 I TODAT-$H>1,TOSHAA=""!(TOSHAA=":") D
 .S FROMHR=-1
 .S TDTM=TDTM_"<option value="""_FROMHR_""" selected=""selected""></option>"
 ;
 N I F I=MESHAA:1:ADSHAA D
 .I $$^W4LIMHR(TODAT,I) Q
 .N I1 S I1=I I I1>23 S I1=I1-24
 .S TDTM=TDTM_"<option value="""_I1_""""
 .I FROMHR<MESHAA&(FROMHR>5),+I=+MESHAA S TDTM=TDTM_" selected=""selected"" "
 .E  I +I1=+FROMHR!(+I1=0&(FROMHR=24))!(I1=24&(+FROMHR=0)) D
 ..S TDTM=TDTM_" selected=""selected"" "
 .S TDTM=TDTM_" >"_$TR($J(I1,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select> : "
 ;
 ;------------------------------------- SELECT MINUTES --------------------
 N OST S OST=(FROMMIN#5)
 S FROMMIN=(FROMMIN\5+$S(OST>2:1,1:0))*5
 ;
 S TDTM=TDTM_"<select style=""background-color:yellow"" "
 S TDTM=TDTM_" tabindex="""_$$TABIND("SHAAmnid")_""""
 S TDTM=TDTM_" name=""SHAAmn"" id=""SHAAmnid"" "
 S TDTM=TDTM_$$ONKEYPRESS
 I '$$ELPOS S TDTM=TDTM_" onChange=""CallTfr('"_$G(CODE)_"')"" >"
 I $$ELPOS D
 .S TDTM=TDTM_" onChange=""OnChangeHouer('"_$G(CODE)_"')"" >"
 ;
 I TODAT-$H>1,'$$P(6),'$$NOCHNTM D
 .S FROMMIN=0
 .S TDTM=TDTM_"<option value=""-1"" selected=""selected""></option>"
 ;
 N STEP S STEP=1
 I $G(@$$^W4PRM@("STEPMNT")) S STEP=^("STEPMNT")
 ;
 F I=0:STEP:59 D
 .S TDTM=TDTM_"<option value="""_I_""""
 .I +I=+FROMMIN S TDTM=TDTM_" selected=""selected"""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select>"
 Q TDTM
 ;
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
MUSTSTREET(CITYI) ;
 I $$^W3HZMH(JB) Q 0
 I $$MUSTSTREET^W3PRM Q 1
 I $G(CITYI)="" Q 0
 S CITYI=$$CLR(CITYI)
 I $G(CITYI)="" Q 0
 I $G(@$$^W4GL("W3AZR")@($$COUNTRY^W3AZRIDK,CITYI)) Q 1
 Q 0
 ;
CHKHOME(PRM) ;
 N CITYI S CITYI=$$CLR($P(PRM,":")) I CITYI="" Q 0
 N STREETI S STREETI=$$CLR($P(PRM,":",2))
 N HOME S HOME=$$CLR($P(PRM,":",3))
 N COUNTRY S COUNTRY=$$COUNTRY^W3AZRIDK I COUNTRY="" S COUNTRY="IS"
 N GL S GL=$$^W4GL("W3AZS")_"(COUNTRY,CITYI)"
 N IND S IND=""
 N OK S OK=1
 ;
 F  S IND=$O(@GL@(IND)) Q:IND=""  D  Q:'OK
 .N A S A=IND
 .N STR S STR=$$SPA^%L1FRM($P(A,":"))
 .N MEHOME S MEHOME=$$SPA^%L1FRM($P(A,":",2))
 .N ADHOME S ADHOME=$$SPA^%L1FRM($P(A,":",3))
 .I STREETI=STR,HOME<MEHOME!(HOME>ADHOME) D
 ..S OK="0:"_MEHOME_":"_ADHOME
 ;
 Q OK
 ;
 ;
CLR(TXT) ;
 Q $$SPA^%L1FRM($$CLEAR^%L1FRM($$CNWEB^%L1FRM(TXT)))
 ;
DLVCSR(STAM) ;
 I $G(%ARG("DLVCSR")) Q (%ARG("DLVCSR")=1)
 N HZM S HZM=$$GETP^%W1PRM("HZM") I $$HZM^W4MSL(HZM),$$^W4ELPOS Q 1
 Q ($$GETP^%W1PRM("DLVCSR")=1)
 ;
ONLINE(STAM) ;
 I $$GETP^%W1PRM("DLVCSR")="WEB" Q 1
 Q 0
 ;
NOMOD(JB) ;
 I $G(PRM)="VW" Q 1
 Q $$NOMOD1(JB)
 ;
NOMOD1(JB)
 I $G(%ARG("EDIT")) Q 0
 I $G(%ARG("SHOW")) Q 1
 I $$DLVCSR,$$PSL^W3HZMST(JB) Q 1
 I '$$DLVCSR,$$CLOSE^W3HZMST(JB) Q 1
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0,$$CLOSE^W4HZMST(HZM) Q 1
 I HZM>0,$$WASZ^W4ORDVFN(HZM) Q 1
 I HZM>0,$$DONE^W4ORDVFN(HZM) Q 1
 Q 0
 ;
 ;
SORTCITY ;
 N IR,IRI,TMPIR,A
 S TMPIR=$$^W4MAIN("TMPIR")
 K @TMPIR
 N N,I S N=.9 F I=1:1 S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""
 N SORT S SORT=$$SORTCITY^W3PRM
 I SORT=""!(I>30) S SORT=1
 I 'SORT D  Q
 .N N S N=.1 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..S A=$G(^(N)) Q:A=""
 ..S @TMPIR@(N)=A
 ;
 N N S N=.1 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 .S IR=$G(^(N)) Q:IR=""  Q:IR
 .S IRI=$$INVH^%L1FRM(IR)
 .S @TMPIR@(IRI)=IR
 Q
 ;
 ;
NEWMIN(PRM) ;
 D PUT^%W3DEB("W3ORDDET-NEWMIN","PRM=PRM")
 N TODAT,HR
 S TODAT=$P(PRM,";")
 S HR=$P(PRM,";",2)
 S MSD=$$GETP^%W1PRM("MSD") I 'MSD Q "<PUSTO>"
 N DP2 S DP2=$$DP2^W3VLDTM(MSD,TODAT)
 D PUT^%W3DEB("W3ORDDET-NEWMIN","DP2=DP2")
 N LASTMIN,MEMIN
 S LASTMIN=55
 I +HR=+DP2 D
 .S LASTMIN=$P(DP2,":",2)
 ;
 N I,TDTM S TDTM="",MEMIN=0
 ;
 F I=0:1:LASTMIN D
 .S TDTM=TDTM_"<option value="""_I_""""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 Q TDTM
 ;
NEWDAT(PRM) ;
 D PUT^%W3DEB("W3ORDDET-NEWDAT","PRM=PRM")
 N TODAT,HR,DT
 S TODAT=$P(PRM,";")
 S HR=$P(PRM,";",2)
 S DT=$$^%L1DC(TODAT,3)
 I DT=$$^W4DZ,HR!$P(HR,":",2)!(HR?2N1":"2N),HR<$$T^%L1TIME($H) S TODAT=$ZD(DT+1,"DD.MM.YY")
 Q TODAT
 ;
TAKEAWAY(STAM) ;
 I '$$NOTAKEAWAY^W3PRM Q 1
 Q 0
 ;
HDTAW(STAM) ;
 Q $S($$ONLINE^W4DLVCSR:$$^%W1DICT("TAKEAWAY"),1:$$^%W1DICT("TAKEAWAY!"))
 ;
 ;
TAWMSG ;
 W "<tr><td colspan=""4"" "
 W "style=""background-color:white;color:red;text-align:center;font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("TAKEYOURHKORDER")
 W "</td></tr>",!
 Q
 ;
TABIND(RKV) ;
 N TI S TI=0
 D
 .I RKV="NAME" S TI=1 Q
 .I RKV="COMP" S TI=2 Q
 .I RKV="TELB" S TI=3 Q
 .I RKV="FAX" S TI=4 Q
 .I RKV="PELE" S TI=5 Q
 .I RKV="CITY" S TI=6 Q
 .;;I RKV="taw" S TI=7 Q
 .I RKV="STREET" S TI=8 Q
 .I RKV="HOME" S TI=9 Q
 .I RKV="FLAT" S TI=10 Q
 .I RKV="ENTRANCE" S TI=11 Q
 .I RKV="FLOOR" S TI=12 Q
 .I RKV="MIKUD" S TI=13 Q
 .I RKV="COMMENT" S TI=14 Q
 .I RKV="SOAD" S TI=15 Q
 .I RKV="TZ" S TI=16 Q
 .I RKV="DAT" S TI=17 Q
 .I RKV="SHAAhrid" S TI=18 Q
 .I RKV="SHAAmnid" S TI=19 Q
 .I RKV="ADSHAAhrid" S TI=20 Q
 .I RKV="ADSHAAmnid" S TI=21 Q
 .I RKV="CMHD" S TI=22 Q
 .I RKV="HZMLAK" S TI=23 Q
 .I RKV="EMAIL" S TI=24 Q
 ;
 Q TI
 ;
ZWEZD(RKV) ;
 Q " "
 ;
SHORT(STAM) ;
 I $G(@$$^W4PRM@("DLVSHORT")) Q 1
 Q 0
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q
 ;
ONKEYPRESS(STAM) ;
 N ST S ST=" onKeyPress=""OnKeyPress(event,this)"" "
 ;;I $G(STAM)'=0 S ST=ST_"onFocus=""OnFocus(this)"" "
 Q ST
 ;
SETFLAG(CUST) ;
 S A=$$BUSY^W4KLFL(CUST)
 I A Q "BUSY;"_A
 D SET^W4KLFL(CUST)
 Q 1
 ;
MSDFROM(STAM) ;
 I $G(%ARG("MSDFROM")) Q 1
 I $$GETP^%W1PRM("MSDFROM") Q 1
 Q 0
 ;
KILLCC ;
 D KILL^%W1PRM("MSDFROM")
 I $$CALLCENTER^W4PRM=1 D KILL^%W1PRM("MSD")
 I $$MMCC^W4PRM!$G(%ARG("MMCC")) D IN^W4HZGMLZ
 D KILL^%W1PRM("MSDFROMSAVED")
 N NMB S NMB=$$GETP^%W1PRM("NMB") I NMB D ^W4KLFL(NMB)
 Q
 ;
ORDINPROGRESS(STAM)
 I $D(@$$^W4TMPORD)=1,$D(^[$$^W3MAIN]TMPCOPY(JB))=11 Q 1
 I $D(@$$^W4TMPORD)<11 Q 0
 Q 1
 ;
 ;
OPTBLBUT ;
 S CPAD=10 I $$^W4TABLET=1,$G(@$$^W4PRM@("TABLET","PAD2")) S CPAD=^("PAD2")
 S FSZ=14 I $$1024^W4WDSCR S FSZ=12
 W "<table id=""TblBut"" class=""tblbut"" dir="""_$$^%W1DIR_""" border=""0"" width="""_$$WDTBL_"%"" cellpadding="""_CPAD_""" "
 W " style=""font-size:"_$$^W3FSZ(FSZ)_""" "
 W ">",!
 Q
 ;
 ;
DLVBUT ;
 N CPAD,FSZ
 ;
 D OPTBLBUT
 W " <tr style=""cursor:pointer"" >"
 ;
 I '$$NODLVORD^W4PRM D
 .I $$NOMOD(JB) Q
 .I '$$ORDINPROGRESS S BTNM="NEWORD"
 .I $$ORDINPROGRESS S BTNM="SUBMIT"
 .I '$$VVMSK^W4PRM D BTN("rbtsubm",$$^%W1DICT(BTNM),"ToOrder()",$$BTNPRM(15,"white","green"))
 .I $$HZMHPRM,'$$ORDINPROGRESS,'$$MM^W4PRM D
 ..D BTN("rbthzmh",$$^%W1DICT("HZMH"),"ToPriceOffer()",$$BTNPRM(10,"darkgreen","lightgreen"))
 ;
 I $$NODLVORD^W4PRM,$$HZMHPRM D
 .I $$NOMOD(JB) Q
 .I '$$ORDINPROGRESS S BTNM="ORDERIT"
 .I $$ORDINPROGRESS S BTNM="SUBMIT"
 .D BTN("rbthzmh",$$^%W1DICT(BTNM),"ToPriceOffer()",$$BTNPRM(10,"darkgreen","lightgreen"))
 
 I '$$ORDINPROGRESS D
 .I '$$NOMOD(JB) D
 ..D BTN("rbtclr",$$^%W1DICT("CLEAR"),"ClearOrder()",$$BTNPRM(10,"black"))
 .
 .I '$$^W4TABLET D BTN("rbtcustfnd",$$^%W1DICT("FINDCUST"),"FindCustAdv()",$$BTNPRM(10,"blue"))
 .;
 D BTN("rbtcustcard",$$^%W1DICT("FULLCUSTCARD"),"CustCard()",$$BTNPRM(10,"blue"))
 ;
 I '$$ORDINPROGRESS,'$$DLVWEB^W4DLVCSR,'$$^W4TABLET,'$$KBVRT D
 .D BTN("rbtcustsys",$$^%W1DICT("CUSTOMERSSYSTEM"),"CustSyst()",$$BTNPRM(10,"blue"))
 ;
 I $$^W4TABLET=2 D
 .D BTNSEND 
 .W "</tr></table>",!
 .D OPTBLBUT
 ;
 I '$$ORDINPROGRESS,'$$DLVWEB^W4DLVCSR,$$^W4DLVCSR'=2 D BTNSRV
 ;
 I $$CORR^W4PRM,'$$DLVWEB^W4DLVCSR(JB),$G(%ARG("LKH")) D
 .D BTN("corr",$$^%W1DICT("CORRESPONDENCE"),"Correspondence()",$$BTNPRM(10,"black","orange"))
 ;
 I '$$DLVWEB^W4DLVCSR,'$$NOMOD(JB) D
 .D BTN("rbtmisc",$$^%W1DICT("MISC"),"Misc()",$$BTNPRM(10,"black","orange"))
 ;
 ;
 I $$DLVWEB^W4DLVCSR,'$$ORDINPROGRESS D
 .D BTN("rbtmyord",$$^%W1DICT("SHOWORDERS"),"OrdersList()",$$BTNPRM(10,"brown"))
 ;
 N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 D SETMKBL
 ;
 ;
 I $$CORR^W4PRM D
 .D BTN("rbtcomm",$$^%W1DICT("REMINDER"),"CallTo()",$$BTNPRM(14,"lightgreen","darkgreen"))
 ;
 I '$$MM^W4PRM,'$$ORDINPROGRESS,$G(MKBL),$$GET1^W4LEVPR(MKBL,"MTIP"),$$^W4DLVCSR=1,'$$MSDFROM D
 .N MYDVN S MYDVN=$$^W4MYDVN
 .I '$$MSDT^W4PRM Q
 .D BTN("rbtmsd",$$^%W1DICT("TOREST"),"ToRest('"_MKBL_"')",$$BTNPRM(10,"black","orange"))
 ;
 D BTNBACK
 ;
 W " </tr>",!
 W "</table>",!
 Q
 ;
 ;
BTNSRV ;
 I $G(CODE),$D(@$$^W4GL("W4LINKI")@(CODE)) D
 .D BTN("lastorders",$$^%W1DICT("CUSTLASTORDERS"),"CustLastOrders('"_CODE_"')",$$BTNPRM(10,"BLACK","lightblue"))
 ;
 D BTN("rbtfind",$$^%W1DICT("FINDORDER"),"FindOrder()",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtmyord",$$^%W1DICT("MYORDERS"),"MyOrders('1')",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtdayord",$$^%W1DICT("DAYORDERS"),"MyOrders('0')",$$BTNPRM(10,"black","lightblue"))
 ;
 I '$$NOFUTDAT^W3PRM D
 .D BTN("rbtmrord",$$^%W1DICT("TOMORROWORDERS"),"TomorrowOrders()",$$BTNPRM(10,"black","lightblue"))
 ;
 I $$LKWEEK^W4PRM D
 .D BTN("rbttaw",$$^%W1DICT("WEEKORDERS"),"WeekOrders()",$$BTNPRM(15,"black","lightblue"))
 ;
 I '$$^W4TABLET D BTN("rbtcourl",$$^%W1DICT("COURIERSLOCATION"),"CouriersLocation()",$$BTNPRM(10,"black","lightblue"))
 ;
 I $$^W4TABLET'=2 D BTNSEND
 ;
 I $$^W4MM,'$$AUTOFAX^W4PRM D
 .D BTN("rbtmv",$$^%W1DICT("MOVEORDER2REST"),"OrdersList()",$$BTNPRM(12,"blue"))
 ;
 I $$SNDDLVKTC^W4PRM D
 .D BTN("rbttaw",$$^%W1DICT("SENDORDERS2KITCHEN"),"SendOrders2Kitchen()",$$BTNPRM(15,"black","lightgreen"))
 .
 Q
 ;
 ;
BTNSEND ;
 D
 .D BTN("rbtsend",$$^%W1DICT("SENDORDERS"),"SendOrders()",$$BTNPRM(12,"black","yellow"))
 ;
 D BTN("rbttaw",$$^%W1DICT("TAKEAWAYORDERS"),"TakeAwayOrders()",$$BTNPRM(12,"black","yellow"))
 Q
 ;
 ;
BTNBACK ;
 D BTN("rbtback",$$^%W1DICT("BACK"),"Back2Menu()",$$BTNPRM(10,"white","red"))
 Q
 ;
ELPOS(STAM) ;
 Q $$GETP^%W1PRM("ELPOS")
 ;
TELEPHONE(STAM) ;
 I +$G(%ARG("CALLCENTER"))=.5 Q 1
 I $$DLVWEB^W4DLVCSR Q 1
 I $$TELEPHONE^W4PRM Q 1
 Q 0
 ;
CALLCENTER(STAM) ;
 I $G(%ARG("CALLCENTER")) Q %ARG("CALLCENTER")
 I $$GETP^%W1PRM("CALLCENTER") Q $$GETP^%W1PRM("CALLCENTER")
 Q $$CALLCENTER^W4PRM
 ;
 ;
SELCITY(RKV) ;
 N IRSEL S IRSEL=$$CITY^W3HZMST(JB)
 I IRSEL?.P,$G(NMB) S IRSEL=$$IR^W3L(NMB)
 I IRSEL?.P,'$D(FNDDLV) S IRSEL=$$CITYDEF^W3PRM
 S IRSEL=$$SPA^%L1FRM($TR(IRSEL,"-"," "))
 ;
 W "<select"
 W " name="""_RKV_""" id="""_RKV_""""
 W " tabindex="""_$$TABIND("CITY")_""""
 W " onChange=""SetCity(this.value);ChangeCity();"_$$LOADBT_""" "
 W " >",!
 ;
 W " <option>&nbsp;</option>",!
 ;
 I $$TAKEAWAY D
 .W " <option value='TAKEAWAY'"
 .   I $$TAW W " selected=""selected"""
 .W " >"_$$HDTAW_"</option>",!
 ;
 D SORTCITY
 N GLIR S GLIR=$$^W4MAIN("TMPIR")
 I $$CITYDEF^W3PRM'="" S @GLIR@(.7)=$$CITYDEF^W3PRM
 ;
 N N S N=.5 F  S N=$O(@GLIR@(N)) Q:N=""  D
 .N IR S IR=$G(^(N))
 .S IR=$$SPA^%L1FRM($TR(IR,"-"," "))
 .N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$H2U^%L1FRM(IR)
 .W "<option value='"_IRI_"'"
 .D
 ..I $$TAKEAWAY,$$TAW Q
 ..I $$ONLINE D
 ...I '$G(PRRG),$TR($$CITY^W3HZMST(JB,$S($G(PRRG)="R":$$^W3ORD,1:"^[$$^W3MAIN]TMPORD")),"-"," ")=$TR(IR,"-"," ") W " selected=""selected""" Q
 ...I '$D(W3MSDRG) I $G(PRRG),$TR($$IR^W3L(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"" " Q
 ...I $D(W3MSDRG) I $G(PRRG),$TR($$IR^W3R(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"" " Q
 ..;;S ^AA("IRSEL")=IRSEL
 ..I $$DLVCSR!$$TELEPHONE^W4PRM!$$MM^W4PRM D
 ...N IROK S IROK=0
 ...D
 ....I $L(IRSEL),IRSEL=IR S IROK=1 Q
 ....I $TR(IRSEL,"-"," ")=$TR(IR,"-"," ") S IROK=1 Q
 ....I $TR(IRSEL,"-"," ")["aia` lz",$TR(IR,"-"," ")["aia` lz",IRSEL'["oetv",IRSEL'["mexc",IR'["oetv",IR'["mexc" S IROK=1 Q
 ....I IRSEL="`""z",$TR(IR,"-"," ")["aia` lz" S IROK=1 Q
 ....I IRSEL="v""ly`x",$TR(IR,"-"," ")["oeivl oey`x" S IROK=1 Q
 ...I IROK W " selected=""selected""" 
 .
 .W " >"_IRI_"</option>",!
 ;
 W "</select>",!
 Q
 ;
 ;
LOADBT()
 I $$POLYGON^W4PRM Q "LoadBt('1')"
 Q ""
 ;
TAW(STAM) ;
 I $$TAKEAWAY^W3HZMST(JB) Q 1
 Q 0
 ;
NAME2COMP(CODE) ;
 I $$PWRLNK Q 0
 Q $$COMP^W3PRM
 ;
CUSTHIST(LK) ; 
 N A
 S A="<table dir="""_$$^%W1DIR_""" id=""tblhist""><tr>"
 S A=A_"<td>"_$$^%W1DICT("SHOWHISTORYFROMDATE")_"</td>"
 S A=A_"<td>"_$$^W4SELDAT($$^W4DZ,365,0,"dathist")_"</td>"
 S A=A_"<td>"_$$CUSTHISTSBM_"</td>"
 S A=A_"<td>"_$$CUSTHISTBACK_"</td>"
 S A=A_"</tr></table>"
 Q A
 ;
CUSTHISTSBM(STAM) ;
 N A,TXT,ONCLICK,STYLE,DOP,ID 
 S ID="custhistsbm"
 S TXT=$$^%W1DICT("SUBMIT")
 S ONCLICK="CustHistSbm()"
 S STYLE="color:green"
 S DOP=""
 S A=$$ROUNDTB^%W1JS(ID,$G(TXT),$G(ONCLICK),$G(STYLE),$G(DOP)) ;
 Q A
 ;
CUSTHISTBACK(STAM) ;
 N A,TXT,ONCLICK,STYLE,DOP,ID 
 S ID="custhistbck"
 S TXT=$$^%W1DICT("BACK")
 S ONCLICK="CustHistBack()"
 S STYLE="color:red"
 S DOP=""
 S A=$$ROUNDTB^%W1JS(ID,$G(TXT),$G(ONCLICK),$G(STYLE),$G(DOP)) ;
 Q A
 ;
COMP(CODE,GL) ;
 I $$PWRLNK Q $$ARG("COMP","H")
 I $$NAME2COMP(CODE) Q $$LKH^W4L(CODE,$G(GL))
 Q $$COMP^W4L(CODE)
 ;
HZMHPRM(STAM) ;
 Q $$HZMH^W3PRM
 ;
SHIFTSHAA(TOTIME) ;
 I TOTIME[":" S TOTIME=TOTIME*3600+($P(TOTIME,":",2)*60)
 S TOTIME=TOTIME+($$PLUSTIME^W4PRM*60)
 Q $$T^%L1TIME(TOTIME)
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 ;
CITIESTABLE(STAM) ; 
 N N,I
 S N="" F I=1:1 S N=$O(@$$GLCITY@(N)) Q:N=""
 I $D(@$$GLCITY)>9,I<100 Q 1
 I $D(@$$GLCITY)>9,I>99 Q 2
 Q 0
 ;
TBLCITY ;
 N GL,A,I,N S GL=$$GLCITY,I=0
 W "<br>"
 ;
 W "<table id=""tblcity"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td style=""color:red;cursor:pointer"" onClick=""CloseCity()"" >"
   W $$^%W1DICT("CLOSE")
  W "</td></tr>",!
  ;
  S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S A=$G(^(N))
  .S I=I+1
  .W "<tr id=""ctr"_I_""" style=""cursor:pointer"" >"
  . W "<td id=""ct"_I_""" onClick=""ClickTblCity('"_I_"')"" >"
  .  W $$H2U^%L1FRM(A)
  . W "</td>",!
  .W "</tr>",!
 W "</table>",!
 Q
 ;
WDTBL(STAM) ;
 Q 94 
 ;
CHKTAW(TAW) ; 
 N ST
 S ST="&nbsp;&nbsp;"_$$HDTAW
 S ST=ST_"<input type=""checkbox"" id=""taw"" "
 S ST=ST_" tabindex="""_$$TABIND("taw")_""""
 I $G(TAW) S ST=ST_" checked=""checked"" "
 S ST=ST_$$ONKEYPRESS
 S ST=ST_"onClick=""ClickTaw()"" "
 S ST=ST_">"
 Q ST
 ;
SETADR(IND) ; 
 ;;S ^AA("W3ORDDET-SETADR","IND")=IND
 S IND=$$CNWEB^%L1FRM(IND)
 D PRS^%L1FRM(IND,"CITY~STREET~HOME~FLAT~FLOOR~ENTRANCE~MIKUD","~")
 I $G(HOME) S CITY=$TR(CITY,"1234567890","")
 D PUT^W3HZMST(JB,"CITY",CITY)
 ;;S STREET=$$INVH^%L1FRM(STREET)
 ;;S FLOOR=$$INVH^%L1FRM(FLOOR)
 I $G(HOME) S STREET=$TR(STREET,"1234567890","")
 D PUT^W3HZMST(JB,"STREET",STREET)
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 D PUT^W3HZMST(JB,"MIKUD",MIKUD)
 Q 1
 ;
SETMKBL ; 
 N MYDVN S MYDVN=$$^W4MYDVN
 I $G(%ARG("MKBL")) S MKBL=%ARG("MKBL")
 I '$G(MKBL) S MKBL=$$GETP^%W1PRM("MKBL")
 I '$G(MKBL) S MKBL=$G(^[$$^W3MAIN]TMPMKBL(MYDVN))
 I $G(MKBL) D
 .D PUT^%W1PRM("MLZR",MKBL)
 .S ^[$$^W3MAIN]TMPMKBL(MYDVN)=MKBL
 Q 
 ;
NEWCUST(LKH) ; 
 I $G(LKH)="" Q 0
 N MSD S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q 0
 Q '$$FIRSTORD(LKH)
 ;
FIRSTORD(LKH) ;
 I $G(LKH)="" Q ""
 N MSD S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q ""
 Q $O(@$$^W4GL("W4LINKI")@(LKH,MSD,""))
 ;
LASTMKR(LKH) ; 
 I $G(LKH)="" Q "C"
 N MKR S MKR="C"
 I '$G(MSD) S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q "C"
 N N S N="" F  S N=$O(@$$^W4GL("W4LINKI")@(LKH,MSD,N),-1) Q:N=""  D  Q:MKR
 .S MKR=$$MKRDLV1^W4HZMST(N)
 Q MKR
 ;
LASTMKR1(LKH) ; 
 Q $$H2U^%L1FRM($$^W3MKR1($$LASTMKR(LKH)))
 ;
BDNOCH(STAM) ; 
 I $$HUZ Q 1
 I $$GETP^%W1PRM("HZM") Q 1
 I '$G(@$$^W4PRM@("BDNOCH"))!$D(@$$^W4TMPORD@(1)) Q 1 
 N MLZ S MLZ=$$GETP^%W1PRM("MLZR")
 I MLZ,$G(@$$^W4GL("FILE")@(MLZ,"CIO"))'="I" Q 0
 Q 1
 ;
NOCHNTM() ; 
 Q $$NOCHNTM^W4PRM 
 ;
 ;
TBLPHONE ; 
 N PADDING
 D OPTABLE
 ;
 I '$$KBVRT W "<tr><td>&nbsp;</td></tr>",!
 ;
 N WIDTH
 S WIDTH="30%"
 W "<tr>"
   D TDNAME
 W "</tr>",!
 ;
 W "<tr>"
  D TDCOMP
 W "</tr>",!
 ;
 W "<tr>"
  D TDTEL
 W "</tr>" 
 ;
 W "<tr>"
  D TDPELE
 W "</tr>" 
 ;
 I $$GETP^%W1PRM("TAW") G PHONECMNT
 ;
 W "<tr>",!
  D TDCITY
 W "</tr>",!
 ;
 W "<tr>"
  D TDSTREET
 W "</tr>",!
 ;
 
 W "<tr>"
  D TDHOME
 W "</tr>",!
 ;
 W "<tr>"
  D TDFLAT
 W "</tr>",!
 ;
 W "<tr>"
  D TDENTRANCE
 W "</tr>",!
 ;
 W "<tr>" 
  D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
  W "<td >" D INP("FLOOR",50,6,$$^%W1DIR) D TDE
 W "</tr>",!
 ;
PHONECMNT W "<tr>",!
   D TDCMNT
  W "</tr>",!
  ;
  W "<tr>",!
     D TDCMNTIN
   W "</tr>",!
  ;
  I $$ELPOS,$$MSLSD^W4PRM D
  .W "<tr>"
  . D TDGUEST
  . D TDTZ
  .W "</tr>",!
  ;
  I $$NOFUTDAT^W3PRM,'$$NOMOD(JB) D
  .D DAT ; --- LO MAZIG
  .N A S A=$$FILLTM(TODAT)
  ;
  I '$$NOFUTDAT^W3PRM D
  .W "<tr>"
  . D TDDAT
  .W "</tr>",!
  ;
  W "<tr>" 
   D TDSHAA
  W "</tr>",!
  ;
  I $$ADSHAA^W4PRM D
  . W "<tr>"
  .  D TD W $$^%W1DICT("ADSHAA") D TDE
  .  D TD D ADSHAA D TDE
  . W "</tr>",! 
  ;
  W "<tr>"
   D TDHRA
  W "</tr>",!
  ;
  I $$DLVCSR D
  .W "<tr><td colspan=""2""><hr></td></tr>",!
  .
  .W "<tr>"
  . D TDHZMLAK
  .W "</tr>",! 
  .
  .W "<tr>"
  . D TDISHURIM
  .W "</tr>",!
  .
  .W "<tr>",!
  . D TDEMAIL
  .W "</tr>",!
 ;
 I '$$KBVRT W "<tr><td>&nbsp;</td></tr>",!
 W "</table>",! 
 ; 
 D ORDTOT 
 D DIVBUT 
 Q 
 ;
GLMKR() ;
 I $$MKRDLV^W4PRM=2 Q $$^W4GL("W3MKR1")
 Q $$^W4GL("W3MKR")
 ;
SETLKH ;
 D PUT^%W1PRM("ELPOS",1)
 N COMP S COMP=$$GETPWR("COMP","H")
 N NMB S NMB=$$ARG("NMB")
 I 'NMB,$G(CODE) S NMB=CODE
 I 'NMB,$G(%ARG("LKH")) S NMB=$G(%ARG("LKH"))
 N NAME S NAME=$G(MAZMIN)
 I $G(@$$^W4GL("W3PRM")@("COMP")),COMP'?.P S NAME=COMP
 I 'NMB Q
 I NAME="" Q
 I $G(@$$^W4GL("W3PRM")@("COMP")),COMP?.P,NMB,$$LKH^W4L(NMB)'?.P Q
 ; 
 S PRM="TELB="_NMB_"<>LKH="_NAME_"<>COMP="_COMP_"<>IR="_$$GETPWR(NMB,"CITY","H")_"<>"
 S PRM=PRM_"BAIT="_$$GETPWR(NMB,"HOME")_"<>FLAT="_$$GETPWR(NMB,"FLAT")_"<>KTV="_$$GETPWR(NMB,"STREET","H")_"<>"
 S PRM=PRM_"KOMA="_$$GETPWR(NMB,"FLOOR","H")_"<>EMAIL="_$$GETPWR(NMB,"EMAIL")_"<>"
 S PRM=PRM_"TZ="_$$GETPWR(NMB,"TZ")
 ;;S ^AA("W3ORDDET-SETLKH","PRM")=PRM
 D PUT2^W4L(NMB,PRM)
 Q
 ;
GETPWR(LK,RKV,HB)
 N VL S VL=$$ARG(RKV,$G(HB))
 I VL="" S VL=$$GETVL(LK,RKV)
 Q VL
 ;
ARG(RKV,HB) ;
 S RKV=$G(%ARG(RKV))
 I $G(HB)="H" S RKV=$$HB(RKV)
 Q $$SPA^%L1FRM(RKV)
 ;
HUZ() ;
 Q $$^W4HUZ
 ;
HB(TX) ; 
 Q $$HB^W3SETHD(TX)
 ;
KBVRT() ; 
 Q $$KBVRT^W4PRM
 ;
DIFTIME(PRM) ; 
 I '$$PAPJ^W4PRM,'$G(@$$^W4PRM@("BDMINTIM")) Q 1
 N DAT,SHAA,DATCB,SHAACB
 S DAT=$P(PRM,";") 
 S SHAA=$P(PRM,";",2) 
 ;;S ^AA("W3ORDDET-DIFTIME","DAT")=DAT
 ;;S ^AA("W3ORDDET-DIFTIME","SHAA")=SHAA
 N MIN S MIN=$G(@$$^W4PRM@("TIMEHZ"))
 I $$TAKEAWAY^W3HZMST(JB) Q 1  ;S MIN=MIN-$G(@$$^W4PRM@("TIMETM"))
 S DATCB=$$DATCB^W3HZMST(JB)
 I 'DATCB S DATCB=$ZD($H,"DD.MM.YY  24:60")
 S SHAACB=$P(DATCB,"  ",2) 
 S DATCB=$P(DATCB,"  ") 
 I $$DIF^%L1TIME(DAT_" "_SHAA,DATCB_" "_SHAACB)<(MIN-2) Q "MIN" 
 Q 1
 ;
GGLSTRT() ; 
 Q $G(@$$^W4PRM@("GGLSTRT"))&($$GETP^%W1PRM("HZM")<1) 
 ;
SETPROTTM(PRM) ; 
 N (JB,PRM)
 S HZ=$P(PRM,"~")
 S DATOLD=$P(PRM,"~",2) 
 S DATNEW=$P(PRM,"~",3) 
 S TIMOLD=$P(PRM,"~",4)
 S TIMNEW=$P(PRM,"~",5)
 S WHO=$$INVH^%L1FRM($P(PRM,"~",6))
 D SETPROT^W4CHNTIM(HZ,DATOLD,TIMOLD,DATNEW,TIMNEW,WHO)
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDDE1
W3ORDDET(PRM,CODE) ; [ 10.10.25 22:06 ] [ 24.10.21 16:35 ] [ 14.10.21 11:36 ] 
 N (JB,%ARG,%REM,PRM,CODE,LKH)
 ;
 D INIT
 ;
 Q:'$G(MSD)  Q:'$G(JB)
 ;
 I $$NOMOD(JB),$G(PRM)="IN" S PRM="VW"
 ;;W "PRM="_PRM,!
 ;
 ;---------------------------- FILL ^TMPORD ----
 ;
 I $$ONLINE,'$D(^[$$^W3MAIN]TMPORD(JB)),$D(@$$^W3ORD(JB)@(JB)) D
 .M ^[$$^W3MAIN]TMPORD(JB)=@$$^W3ORD(JB)@(JB)
 ;
 D CODENMB
 ;
 D GL ; -- TMPORD
 ;
 N HOMEPRM S HOMEPRM=""
 I CODE["~" S HOMEPRM=$P(CODE,"~",2),CODE=$P(CODE,"~")
 ;
 I $$ONLINE,CODE["!",'$$NOMOD(JB) D  ; ---- NEW CUST
 .S NMB=$$SPA^%L1FRM($P(CODE,"!")),CODE=""
 .S ^[$$^W3MAIN]TMPORD(JB,"NOCODE")=""
 .I NMB["~" S NMB=$P(NMB,"~")
 .D FILL(NMB) ; ---------------- FROM ^LKHA
 .I '$$NMB^W3HZMST(JB) D
 ..S $P(^[$$^W3MAIN]TMPORD(JB),"~",1)=$TR(NMB,"-","")
 ;
 I $$ONLINE,$G(CODE)="",$$LKH^W3L(NMB)="" S CODE=$G(NMB)
 ;
 D KILL^%W3DEB("W3ORDDET")
 D PUT^%W3DEB("W3ORDDET","ARG=[%ARG & CODE=CODE & JB=JB &MSD=MSD &NMB=NMB")
 ;
 D PUT^%W1PRM("NMB",NMB)
 ;
 I $L($G(CODE))>3,$$D^W3L(CODE),$$NMB^W3HZMST(JB)?.P,'$$NOMOD(JB) D  G FORM
 .D FILLHD(CODE)
 ;
 I $$ONLINE,$$MUSTREGISTRY^W3PRM,$G(CODE),$$D^W3L(CODE) D
 .D SETLK2ORD(CODE) ; ---- ^W3L --> ^TMPORD IF MUSTREGISTRY
 ;
 ;
FORM ;
 ;------------------------------ PRM="INP" -----------
 ;
 W "<div align=""center"" >",!
 ;
 I $$ONLINE D  ; --- CUSTOMER CODE
 .W "<span style=""color:"_$$FGODHD1^W3CSS_";font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">"
 . W $$^%W1DICT("FILLORDERDETAILS")
 .W "</span>",!
 .W "<br />",!
 ;
 D PADDING
 ;
 I $$DLVCSR!$$TELEPHONE D KOTDLV ; --- CUSTOMER CODE
 ;
 D OPTABLE W ">",!
 D
  .I $$DLVCSR!'$$^W4ELPOS,$$^W4TABLET'=1 D
  ..W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
  . 
  .W "<tr>"
  . S WIDTH="12%"
  . D TDNAME
  . D TDCOMP
  .W "</tr>",!
  .
  .W "<tr>"
  .  D TDTEL
  .I '$$SHORTDET^W4PRM D
  .  .N WFAX S WFAX=$$^%W1DICT("FAX")
  .  .D TD W "&nbsp;"_WFAX D TDE
  .  .W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  .  .W "<td style=""padding-right:0px"">"
  .  .D INP("FAX",120,14,"LTR")
  .  .D TDE
  . D TDPELE
  . I '$$SHORTDET^W4PRM W "</tr></table></td>"
  .W "</tr>",!
  .
  .I $$GETP^%W1PRM("TAW") G CMNT
  .
  .W "<tr>",!
  . D TDCITY
  . D TDSTREET
  .W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDHOME
  . D TDFLAT
  .W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDENTRANCE
  . D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
  . W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  . W "<td style=""padding-right:0"">" D INP("FLOOR",50,6,$$^%W1DIR) D TDE
  . D TDMIKUD
  . W "</tr></table></td>"
  .W "</tr>",!
  .
CMNT .W "<tr>",!
  .   D TDCMNT
  . W "</tr>",!
  .
  .W "<tr>",!
  .   D TDCMNTIN
  . W "</tr>",!
  .
  .I $$ELPOS,$$MSLSD^W4PRM D
  ..W "<tr>"
  .. D TDGUEST
  .. D TDTZ
  ..W "</tr>",!
  .
  .
  .I $$NOFUTDAT^W3PRM,'$$NOMOD(JB) D
  ..D DAT ; --- LO MAZIG
  ..N A S A=$$FILLTM(TODAT)
  .
  .I '$$NOFUTDAT^W3PRM D
  ..W "<tr>"
  .. D TDDAT
  .. I '$$ADSHAA^W4PRM D TDSHAA
  ..
  .. I $$ADSHAA^W4PRM D
  ... S %W1DAT("W3ORDHD")=""
  ... D TD W $$^%W1DICT("TOTIME") D TDE
  ... W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  ... D SHAA("SHAATD","SHAA")
  ... D TD W $$^%W1DICT("ADSHAA") D TDE
  ... D TD D ADSHAA D TDE
  ... W "</tr></table></td>"
  ..W "</tr>",!
  .
  .
  .I $$DLVCSR D
  ..W "<tr>"
  .. D TDHRA
  ..W "</tr>",!
  ..
  ..W "<tr><td colspan=""4""><hr></td></tr>",!
  ..
  ..W "<tr>"
  .. D TDHZMLAK
  .. D TDISHURIM
  ..W "</tr>",!
  ..
  ..W "<tr>",!
  .. D TDEMAIL
  .. I $$MKRDLV^W4PRM D TDRSRCH
  ..W "</tr>",!
  ..
  ..I $G(CODE) D
  ...D CRNEWMAIL^W4EMAIL(CODE_";EMAIL",3,1)
  ..
  ..I $L($G(CODE))<4,'$$^W4TABLET W "<tr><td>&nbsp;</td></tr>",!
  ; 
  I '$$ELPOS W "<tr><td>&nbsp;</td></tr>",!
 W "</table>" ;
 ;
 ;
 D ORDTOT ; --- TOTORD, DISCOUNT, DMSH
 ;
 D DIVBUT
 ;
 W "<br><br>",!
 ;
 W "</div>",!
 Q
 ;
 ;
ORDTOT ;
 N ORDTOT S ORDTOT=$$^W4GETSUM(JB)
 N TOT S TOT=$P(ORDTOT,";")
 N HNH S HNH=$P(ORDTOT,";",2)
 N DMSH S DMSH=$P(ORDTOT,";",3)
 N TSHL S TSHL=$P(ORDTOT,";",5)
 D
 .W "<table cellpadding=""0"" cellspacing=""0"" dir="""_$$^%W1DIR_""" ><tr>"
 . I $G(CODE),$G(@$$^W4GL("P1LKDM")@(CODE)) D
 .. W "<tr><td style=""font-weight:bold;color:red;text-align:center"" >"
 .. W $$^%W1DICT("CUSTOMDLVFREE")_" ! "
 .. W "</td><tr>",!
 . W "<td id=""mhmincnc"" name=""mhmincnc""></td>"
 .W "</tr></table>",!
 ;
 D OPTABLE W " >"
 ;
 W "<tr>",!
 W "<td>"_$$^%W1DICT("TOTORD")_"&nbsp;" ;_"<br />"
 W "<input type=""text"" name=""totord"" id=""idtotord"" "
  W $$ONKEYPRESS
  W " onFocus=""ifrHide('MUST','ifr')"" "
  W " value="""_$J(TOT,2,2)_""" "
 W "size=6 class=""botinp"" /></td>",!
 ;
 I '$$DLVWEB^W4DLVCSR D
 .N AHUZ S AHUZ=+$$AHUZ^W4MENUBT I AHUZ S AHUZ=AHUZ_"%"
 .I 'AHUZ S AHUZ=""
 .N HNA S HNA=TOT*AHUZ*.01
 .I AHUZ,HNH-HNA>1!(HNH-HNA<-1) S AHUZ=""
 .W "<td>"_$$^%W1DICT("DISC",AHUZ)_"&nbsp;"
 .W "<input type=""text"" name=""discont"" id=""HNH"" size=7 "
 . W " value="""_$J(HNH,2,2)_""" "
 . W " class=""botinp"" style=""color:red""/>",!
 .W "</td>",!
 ;
 ;
 I $$DLVWEB^W4DLVCSR(JB) D
 .W "<td width=""15%"">"_$$^%W1DICT("DISCOUNT")_"&nbsp;"
 .W "<input type=""text"" name=""discontperc"" id=""AHUZ"" size=1"
 . W " maxlength=""2"" class=""botinp"" value="""_$$AHUZ^W3MENUBT_""" "
 . W " style=""color:darkred"" onKeyUp=""DiscPerc(this)"" "
 . W " onMouseDown=""ShowPsw('H')"" readonly=""readonly"" "
 .W "/>",!
 .
 .W "</td><td width=""10%"">"
 .
 .W " <input type=""text"" name=""discont"" id=""iddiscont"" size=6 "
 . W " class=""botinp"" style=""color:red"" "
 .W " />",!
 .W "</td>",!
 ;
 W "<td>"_$$^%W1DICT("DLVPAY")_"&nbsp;" ;_"<br />"
 W " <input type=""text"" name=""dms"" id=""DMSH"" size=5 class=""botinp"" "
   D
   .I '$$ORDINPROGRESS,$G(CODE),DMSH'["!",$$CITY^W3HZMST(JB)?.P!($$STREET^W3HZMST(JB)?.P) D
   ..I $D(@$$^W4GL("W4DMSPEC")@(CODE)) S DMSH=^(CODE) Q
   ..N CITY,STREET,HOME
   ..S CITY=$$CITY^W4L(CODE)
   ..S STREET=$$KTV^W4L(CODE)
   ..S HOME=$$BAIT^W4L(CODE)
   ..I CITY="" S CITY=$G(@$$^W4GL("P1IR")@(1))
   ..S DMSH=$$DMSHCITY^W3HZMST(JB,CODE_"^"_CITY_"^"_STREET_"^"_HOME)
   .
   .W " value="""_$J(DMSH,2,2)_""" "
  W "/>",!
 W "</td>",!
 ;
 W "<td>"_$$^%W1DICT("TOPAYMENT")_"&nbsp;" ;_"<br />"
  W " <input type=""text"" name=""sum"" id=""idsum"" size=6 "
  W " value="""_$J(TSHL,2,2)_""" class=""botinp"" />",!
 W "</td>",!
 ;
 I $G(CODE),$$^W4DLVCSR,$$ISCR^W4L(CODE) D
 .W "<td>"_$$^%W1DICT("ITRA")_"&nbsp;" ;_"<br />"
 .  W " <input type=""text"" name=""itra"" id=""iditra"" size=6 class=""botinp"" ",!
 .  W " readonly=""readonly"" "
 .  W " value="""_$J($$ITRA^W4L(CODE),2,2)_""" "
 . W "/>",!
 .W "</td>",!
 ;
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FILLHD(CODE) ;
 S $P(@GL@(JB),"~",1)=$S($$ONLINE:$$TELB^W3L(CODE),1:NMB)
 S $P(@GL@(JB),"~",2)=$$LKH^W3L(CODE)
 I $$NAME2COMP(CODE),'$$ORDINPROGRESS S $P(@GL@(JB),"~",2)=""
 N KTV S KTV=$$KTV^W3L(CODE)
 I KTV?1N.N S KTV=""
 S $P(@GL@(JB),"~",3)=KTV
 S $P(@GL@(JB),"~",7)=$TR($$CMNT^W3L(CODE),"~\","-/")
 S $P(@GL@(JB),"~",13)=$$KOMA^W3L(CODE)
 S $P(@GL@(JB),"~",14)=$$DIRA^W3L(CODE)
 S $P(@GL@(JB),"~",15)=$$BAIT^W3L(CODE)
 S $P(@GL@(JB),"~",16)=$$CNISA^W3L(CODE)
 S $P(@GL@(JB),"~",27)=$TR(CODE,"-$","")
 N IR S IR=$$IR^W3L(CODE)
 I IR["TAKEAWAY" S IR=""
 S $P(@GL@(JB),"~",31)=IR
 S $P(@GL@(JB),"~",32)=$$PELE^W3L(CODE)
 N COMP S COMP=$$COMP(CODE)
 S $P(@GL@(JB),"~",47)=COMP
 D PUT^%W1PRM("NMB",CODE)
 Q
 ;
TDNAME ;
 W "<td width="""_WIDTH_""" >"
 K WIDTH W "&nbsp;"_$$ZW_$$^%W1DICT("MAZMINNAME") D TDE
 D TD D INP("NAME",300,55,$$^%W1DIR,"T") D TDE
 Q
 ;
TDCOMP ;
 D TD W $S($$MUSTCOMP^W3PRM:$$ZW,1:" ")_$$^%W1DICT("COMPANYNAME") D TDE
 D TD D INP("COMP","100%",45,$$^%W1DIR,"T") D TDE
 Q
 ;
TDTEL ;
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL") D TDE
 D
 .N TEL S TEL="NMB"
 .I $$DLVCSR!$$CALLCENTER S TEL="TELB"
 .D TD D INP(TEL,120,14,"LTR") D TDE
 Q
 ;
TDPELE ;
 S WIDTH=$S($$^%W1LNG="H":"12%",1:"16%")
 D TD W $$^%W1DICT("MOBIL") D TDE
 D TD D INP("PELE",120,14,"LTR") D TDE
 Q
 ;
TDCITY ; 
 I $$POLYGON^W4PRM Q
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY") D TDE
 D TD D INPCT("CITY",180,20,$$^%W1DIR,"T") D TDE
 Q
 ;
TDSTREET ;
 W "<td id=""hdstreet"" >"
  I '$$POLYGON^W4PRM W $$ZW_$$^%W1DICT("STREET")
  I $$POLYGON^W4PRM W $$ZW_$$^%W1DICT("ADDRESS")
 D TDE
 W "<td id=""tdstreet"">" D INP("STREET","70%",40,$$^%W1DIR,"T")
  I $$POLYGON^W4PRM W $$CHKTAW($$TAW)
 D TDE
 Q
 ;
TDHOME ;
 D TD W "&nbsp;"_$S($$NOMUSTHOME^W3PRM:"",1:$$ZW)_$$^%W1DICT("HOME") D TDE
 D TD D INP("HOME",50,5,"LTR") D TDE
 Q
 ;
TDFLAT ;
 D TD W $$^%W1DICT("FLAT") D TDE
 D TD D INP("FLAT",50,5,"LTR") D TDE
 Q
 ;
 ;
TDENTRANCE ;
 D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE") D TDE
 D TD D INP("ENTRANCE",50,5,$$^%W1DIR) D TDE
 Q
 ;
TDFLOOR ;
 D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
 D TD D INP("FLOOR",50,5,$$^%W1DIR) D TDE
 Q
 ;
TDMIKUD ;
 I $$SHORTDET^W4PRM D TDSP,TDSP Q
 D TD W $$NBSP^%L1FRM(5)_$$^%W1DICT("ZIP") D TDE
 D TD D INP("MIKUD",90,9,$$^%W1DIR) D TDE
 Q
 ;
TDGUEST ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 D TD W "&nbsp;"_$$^%W1DICT("GUESTSQN") D TDE
 D TD
 I $$NOMOD(JB) D  D TDE Q 
 .I HZM,$$CLOSE^W4HZMST(HZM) D SHOWVL($$SOAD^W4HZMST(HZM)) Q 
 .D SHOWVL($$SOAD^W3HZMST(HZM))
 ;
 W "<select id=""SOAD"" ",!
  W " tabindex="""_$$TABIND("SOAD")_""""
 W ">",!
 D
 . N MAX S MAX=$$MAXMSLSD^W4PRM S:MAX<1 MAX=10
 . N K F K=1:1:MAX D
 .. W "<option value="""_K_""" "
 .. I K=$$SOAD^W3HZMST(JB) W "selected=""selected"" "
 .. W ">"_K_"</option>",!
 W "</select>",!
 D TDE
 Q 
 ;
TDTZ ;
 D TD W "&nbsp;"_$$^%W1DICT("BUSINESSID") D TDE
 D TD
 D
 .I $G(CODE),$$NOMOD(JB) D SHOWVL($$TZ^W4L(CODE)) Q 
 .
 .W "<input type=""text"" id=""TZ"" maxlength=""9"" size=""9"" "
 .I $G(CODE) W " value="""_$$TZ^W4L(CODE)_""" "
 .W " tabindex="""_$$TABIND("TZ")_""""
 .W $$ONKEYPRESS
 .W "/>"
 D TDE
 Q
 ;
TDCMNT ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ADR") D TDE
 S SPAN=3 D TD D INP("COMMENT","77%",100,$$^%W1DIR,"T") D TDE
 Q
 ;
TDCMNTIN ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENTIN") D TDE
 ;;D INP("CMNTIN","77%",100,$$^%W1DIR,"T") D TDE
 W "<td colspan=""3"" style=""color:red;font-weight:bold"" >"
  I $G(CODE) W $$H2U^%L1FRM($$CMNTIN^W4L(CODE))
 D TDE
 Q
 ;
TDHRA ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ORD") D TDE
 S SPAN=3 D TD D INP("CMHD","77%",100,$$^%W1DIR,"T") D TDE
 Q
 ;
TDDAT ;
 D TD W "&nbsp;"_$$^%W1DICT("TODATE") D TDE
 S %W1DAT("TD")=""
 S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 S %W1DAT("W3ORDHD")=""
 W "<td><table><tr>" D DAT W "</tr></table></td>",!
 Q
 ;
TDSHAA ;
 S %W1DAT("W3ORDHD")=""
 D TD W $$^%W1DICT("TOTIME") D TDE
 D SHAA("SHAATD","SHAA")
 Q
 ;
SHAA(ID,LBL) ;
 W "<td id="""_ID_""" "_$$STYLE^%W1DIR("LTR")
 W " align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""">"
  D
  .I '$$NOMOD(JB) W $$FILLTM(TODAT),! Q
  .N VL X "S VL=$$"_LBL_"^W3HZMST(JB)"
  .I $$NOMOD(JB) D SHOWVL(VL)
 W "</td>",!
 Q
 ;
ADSHAA ;
 N ADSHAAHZ S ADSHAAHZ=$$ADSHAA^W3HZMST(JB)
 I $$NOMOD(JB) D SHOWVL(ADSHAAHZ) Q
 ;
 I $$^%W1HB D
 .D ADSHAAMN
 .W " : "
 .D ADSHAAHR
 ;
 I '$$^%W1HB D
 .D ADSHAAHR
 .W " : "
 .D ADSHAAMN
 Q
 ;
ADSHAAHR ;
 W "<select style=""background-color:yellow"" "
 W " name=""ADSHAAhr"" id=""ADSHAAhrid"" "
 W " tabindex="""_$$TABIND("ADSHAAhrid")_""""
 W $$ONKEYPRESS
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 . I I=+ADSHAAHZ W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 Q
 ;
ADSHAAMN ;
 W "<select style=""background-color:yellow"" "
 W " tabindex="""_$$TABIND("ADSHAAmnid")_""""
 W " name=""ADSHAAmn"" id=""ADSHAAmnid"" "
 W $$ONKEYPRESS
 W " >"
 ;
 F I=0:5:55 D
 .W "<option value="""_I_""""
 .I +I=+$P(ADSHAAHZ,":",2) W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 Q
 ;
TDHZMLAK ;
 D TD W $$ZWEZD("HZMLAK")_$$^%W1DICT("HZMLK") D TDE
 D TD
  D
  .I $$NOMOD(JB) D SHOWVL($$HZMLAK^W3HZMST(JB)) Q
  .
  .W "<input type=""text"" "
  .W "size=""18"" maxlength=""22"" "
  .W " name=""HZMLAK"" id=""HZMLAK"""
  .W " tabindex="""_$$TABIND("HZMLAK")_""""
  .W $$ONKEYPRESS
  .W $$INPBGCOLOR
  .W " value="""_$$H2U^%L1FRM($$HZMLAK^W3HZMST(JB))_""""
  .W " />"
  D TDE
 Q
 ;
TDISHURIM ;
 I $L($G(CODE))<4 Q
 ;
 W "<td colspan=""3"" >" 
  W $$^%W1DICT("ASM")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ASM^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("ISCR")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ISCR^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("ISCH")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ISCH^W4L(CODE):"YES",1:"NO")))
  I $$1024^W4WDSCR W "<BR>"
  I '$$1024^W4WDSCR W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("HBNOW")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$HBNOW^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("DELIVERYFREE")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($D(@$$^W4GL("P1LKDM")@(CODE)):"YES",1:"NO")))
 W "</td>"
 Q
 ;
BOLD(TXT) ;
 Q "<span style=""font-weight:bold"">"_TXT_"</span>"
 ;
TDFAX ;
 D TD W "&nbsp;"_$$^%W1DICT("FAX") D TDE
 D TD D INP("FAX",120,14,"LTR") D TDE
 Q
 ;
TDEMAIL ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N SPAN
 D TD W "&nbsp;"_$$^%W1DICT("EMAIL") D TDE
 ;
 I $$NOMOD(JB) D TD D  D TDE Q
 .I HZM>0,$$CLOSE^W4HZMST(HZM) D SHOWVL($$EMAIL^W4HZMST(HZM)) Q
 .D SHOWVL($$EMAIL^W3HZMST(JB)) Q
 ;
 I $G(CODE)="" D  Q
 .D TD S SPAN=3 D INP("EMAIL","77%",50,$$^%W1DIR,"T") D TDE
 ;
 I $G(CODE),'$$D^W4L(CODE)!($$EMAIL^W4L(CODE)="") D  Q
 .S SPAN=2 D TD D  D TDE
 ..D INP("EMAIL",400,50,$$^%W1DIR,"T")
 ;
 W "<td id=""selmail"" colspan=""2"">"
  W "<table>"
   W "<tr>"
    W "<td>"
     W $$SELMAIL^W4EMAIL(CODE,"EMAIL")
    W "</td>"
  ;
  I '$$^W4CLOSE(HZM),'$$NOMOD(JB) D
  .W "<td>"
  . D ADDMAILBUT^W4EMAIL(CODE)
  .W "</td>"
  .W "<td>"
  . D DELMAILBUT^W4EMAIL(CODE,"EMAIL")
  .W "</td>"
  .W "<td>"
  . D OPENMAIL^W4EMAIL
  .W "</td>"
  ;
   W "</tr>"
  W "</table>",! 
 W "</td>"
 Q
 ;
TDRSRCH ;
 W "<td >"
  W "<table width=""100%"" dir="""_$$^%W1DIR_""">",!
   W "<tr> "
    W "<td width=""40%"">"
     W $$^%W1DICT("KIND")_"&nbsp;"
     W "<select id=""KINDORD"" onChange=""ChangeFld()"">",!
      W "<option value=""C"" >"_$$^%W1DICT("CHOICEORDERKIND")_"</option>",!
      W "<option value=""0"" "_$$SELKO(0)_" >"_$$^%W1DICT("BUSINESS")_"</option>",!
      W "<option value=""1"" "_$$SELKO(1)_" >"_$$^%W1DICT("PRIVATE")_"</option>",!
     W "</select>",!
    W "</td>"
    ;
    I $G(CODE) D
    .;
    .W "<td>"
    .N LASTMKR S LASTMKR=$$LASTMKR(CODE)
    .I 'LASTMKR D
    ..  W "<select id=""MKR"" onChange=""ChangeFld()"" >",!
    ..  W "<option value=""C"" >"_$$^%W1DICT("CHOICEMKRDLV")_"</option>",!
    ..  N N S N="" F  S N=$O(@$$^W4GL("W3MKR")@(N)) Q:N=""  D
    ..  .N A S A=$G(^(N))
    ..  .W "<option value="""_N_""" "
    ..  . I $$MKR^W3HZMST(JB)=N W " selected=""selected"" "
    ..  .W ">"_$$H2U^%L1FRM(A)_"</option>",!
    ..  W "</select>",!
    .I LASTMKR D
    ..W $$^%W1DICT("MAKOR")_" : "
    ..W "<span style=""font-weight:bold"">"_$$LASTMKR1(CODE)_"</span>"
    .W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</td>",!
 Q
 ;
SELKO(VL) ;
 I $$KINDORD^W3HZMST(JB)=VL Q " selected=""selected"" "
 I $G(CODE),$$PRIVATE^W4L(CODE)=VL Q " selected=""selected"" "
 Q ""
 ;
TDZIP ;
 D TD W "&nbsp;"_$$^%W1DICT("ZIP") D TDE
 D TD D INP("MIKUD",60,6,"LTR") D TDE
 Q
 ;
DIVBUT ;
 W "<div align=""center"">",!
 ;
 I $$DLVCSR D
 .D DLVBUT
 ;
 I '$$DLVCSR D
 .W "<table width=""30%"" dir="""_$$^%W1DIR_""" border=0>",!
 .W " <tr>"
 .W "  <td align=""center"">",!
 .;
 .I $$ONLINE^W4DLVCSR D
 ..D ^W4BUTTON("rbtsubm",$$^%W1DICT("SUBMIT"),"TerminateOrd("_$G(JB)_")",$$BTNPRM(70,"green"))
 .
 .I $$DLVWEB^W4DLVCSR D
 ..D ^W4BUTTON("rbtsubm",$$^%W1DICT("SUBMIT"),"ToOrder()",$$BTNPRM(100,"green"))
 .W "  </td>"
 .
 .
 .I $$DLVWEB^W4DLVCSR,'$$ORDINPROGRESS D
 ..I '$G(CODE),$L($G(LKH))<4 D
 ... W "<td>"
 ... D ^W4BUTTON("rbtmyord",$$^%W1DICT("SHOWORDERS"),"OrdersList()",$$BTNPRM(100,"brown"))
 ...W "</td>"
 ..
 ..N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 ..D SETMKBL
 ..
 ..I $G(CODE) D
 ...W "<td>"
 ... D ^W4BUTTON("lastorders",$$^%W1DICT("CUSTLASTORDERS"),"CustLastOrders('"_CODE_"')",$$BTNPRM(100,"BLACK","lightblue"))
 ...W "</td>",!
 ..
 ..W "<td>"
 .. D ^W4BUTTON("rbtcustcard",$$^%W1DICT("FULLCUSTCARD"),"CustCard()",$$BTNPRM(100,"blue"))
 ..W "</td>"
 ..
 ..I $G(CODE)&$$POLYGON^W4PRM D
 ...W "<td>"
 ... D ^W4BUTTON("rbtshowmap",$$^%W1DICT("SHOWMAPLOCATION"),"ShowMapLocation()",$$BTNPRM(100,"brown"))
 ...W "</td>"
 ..
 ..I '$$NOMOD(JB) D
 ...W "<td>" 
 ... D ^W4BUTTON("rbtclr",$$^%W1DICT("CLEAR"),"ClearOrder()",$$BTNPRM(100,"black"))
 ...W "</td>"
 .
 .N FS S FS=12
 .W "  <td align=""center"" >",!
 . D ^W4BUTTON("rbtback",$$^%W1DICT("BACK"),"Back2Menu()",$$BTNPRM($S($$ELPOS:100,1:70),"red"))
 .W "  </td>"
 .;
 .I $$MUSTREGISTRY^W3PRM D
 ..W "  <td align=""center"" >",!
 .. D ^W4BUTTON("rbtupdate",$$^%W1DICT("UPDATEPROFILE"),"UpdateProfile()","color:blue;font-size:"_$$^W3FSZ(FS))
 ..W "  </td>"
 .;
 .W " </tr>",!
 .
 .I $G(CODE) D
 ..N MKRPZM S MKRPZM=$$MAGIAPIZUIM^W4HZORHD Q:'MKRPZM
 ..W "<tr><td colspan=15>"
 .. D ^W4BUTTON("rbtoizuim",$$^%W1DICT("MAGIAPIZUIM"),"ShowPizuim('"_MKRPZM_"')","color:red;font-size:"_$$^W3FSZ(18)_";width:100%")
 ..W "</td></tr>",!
 .W "</table>",!
 ;---------------------------- END BUTTONS ---
 W "</div>",!
 Q
 ;
 ;
INIT ;
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I $G(%ARG("DLVCSR")) D PUT^%W1PRM("DLVCSR",%ARG("DLVCSR"))
 ;
 I $$TELEPHONE^W4PRM D
 .D PUT^%W1PRM("DLVCSR",2)
 ;
 S MSD=$$GETP^%W1PRM("MSD"),CODE=$G(CODE)
 ;;I $$TELEPHONE^W4PRM,'MSD S MSD=$O(^[$$^W3MAIN]W3MSDR(""))
 I '$G(MSD),'$$TELEPHONE^W4PRM S MSD=1
 ;
 I $G(%ARG("FIRST"))=1 D
 .K ^[$$^W3MAIN]TMPORDC(JB)
 .D KILL^%W1PRM("ORDDET")
 .D KILL^%W1PRM("CURREST")
 .I $$GETP^%W1PRM("COPYORD")<0,$D(^[$$^W3MAIN]TMPCOPY(JB))#2 D
 ..S @$$^W4TMPORD=^[$$^W3MAIN]TMPCOPY(JB)
 .D KILL^%W1PRM("CUSTLASTORDS")
 .D KILL^%W1PRM("MIMUSHPZM")
 .D KILL^%W1PRM("MRKTO")
 .D KILL^%W1PRM("AZRPLGN")
 .D KILL^%W1PRM("SBMORD")
 ;
 ;;I '$G(%ARG("FIRST")),'$$ORDINPROGRESS D
 .I $D(^[$$^W3MAIN]TMPORDB(JB))=1 D
 ..N TMPORDB S TMPORDB=^(JB)
 ..Q:$P(TMPORDB,"~")'=CODE
 ..S @$$^W4TMPORD=TMPORDB
 ..;;S ^AA("W3ORDDET-TMPORDB")=1
 .K ^[$$^W3MAIN]TMPORDB(JB)
 .D KILL^%W1PRM("CUSTLASTORDS")
 ;
 I '$G(%ARG("FIRST")),'$$ORDINPROGRESS D
 .I $G(^[$$^W3MAIN]TMPORDC(JB))'="" D
 ..N TMPORDC S TMPORDC=^(JB)
 ..Q:$P(TMPORDC,"~")'=CODE
 ..S @$$^W4TMPORD=TMPORDC
 ..;;S ^AA("W3ORDDET-TMPORDC")=1
 .K ^[$$^W3MAIN]TMPORDC(JB)
 .D KILL^%W1PRM("CUSTLASTORDS")
 ;
 D KILL^%W1PRM("SRCH")
 D KILL^%W1PRM("STPAR")
 D KILL^%W1PRM("STPAR0")
 D KILL^%W1PRM("SAVEORD")
 D KILL^%W1PRM("SHID")
 D KILL^%W1PRM("MVLN")
 ;
 I $G(%ARG("CALLCENTER"))!($G(%ARG("CALLCENTER"))=0) D
 .D PUT^%W1PRM("CALLCENTER",%ARG("CALLCENTER"))
 ;
 I $$CALLCENTER^W4PRM&($G(%ARG("FIRST"))=1) D
 .I '$G(%ARG("CODE")) S CODE=""
 .I $$CALLCENTER^W4PRM<2 D INIT^W4HZGMLZ
 ;
 I $$CALLCENTER D
 .D ^W4BGBODY
 ;
 I $$DLVWEB^W4DLVCSR,$G(%ARG("EDIT")) D
 .D INIT^W3MENU
 .S LKH=CODE
 ;
 I $G(%ARG("MSDFROM")) D
 .D PUT^%W1PRM("MSDFROM",%ARG("MSDFROM"))
 .
 .I '$$^W4MM D
 ..S:'$G(%ARG("MSDTO")) %ARG("MSDTO")=1
 ..D PUT^%W1PRM("MSD",%ARG("MSDTO"))
 ..S MSD=%ARG("MSDTO")
 .
 .D SETMKBL
 .D KILL^%W1PRM("MSDFROMSAVED")
 ;
 D PUT^%W3DEB("W3ORDDET","PRM=PRM & CODE=CODE & MSD=MSD")
 ;
 I $$POLYGON^W4PRM D
 .N NMAP S NMAP=$G(%ARG("NMAP")) S:'NMAP NMAP=1
 .I NMAP?1N.E D PUT^%W1PRM("NMAP",NMAP)
 ;
 S PRMENU=1
 S W3ORDDET=""
 ;
 I $$MUSTREGISTRY^W3PRM S %ARG("SHOW")=1
 Q
 ;
 ;
CODENMB ; --> CODE,NMB
 I CODE["$" S CODE=$TR(CODE,"$","")
 S CODE=$$SPA^%L1FRM(CODE)
 I $L($G(CODE))>3 D PUT^%W1PRM("CODE",CODE)
 I $L($G(CODE))<4 S CODE=$$GETP^%W1PRM("CODE") I CODE["UNDEF" S CODE=""
 ;
 I $L($G(CODE))>3 D PUT^W3HZMST(JB,"CODE",CODE)
 ;
 S NMB="" I $$NMB^W3HZMST(JB) S NMB=$$NMB^W3HZMST(JB)
 ;
 I 'NMB S NMB=$P(CODE,"~")
 ;;W "CODE="_CODE_"  NMB="_NMB,!
 Q
 ;
 ;
KOTDLV ;
 S KOT=$$^%W1DICT("DELIVERYDETAILS")
 N MSDKOT S MSDKOT=MSD
 I $G(%ARG("MSDFROM")),$$TELEPHONE S MSDKOT=%ARG("MSDFROM")
 S KOT=" [ "_$$H2U^%L1FRM($$MYNAME^W4KOTHSB)_" ] "_KOT
 ;
 I $$ORDER D
 .S KOT=KOT_"&nbsp;&nbsp<span style=""font-size:"_$$^W3FSZ(14)_""">"
 .S KOT=KOT_$$^%W1DICT("ORDER")_" "_$$ORDER_"</span>"
 ;
 S KOT=$$KOTTIME^W4HZGMLZ(KOT)
 I '$$^W4TABLET,'$$ORDINPROGRESS D KOT^W4SHEET(.KOT)
 ;
 W "<a id=""callid""></a>",!
 W "<table width="""_$$WDTBL_"%"" border=""0"" "_PADDING_" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <td style=""color:darkblue;font-weight:bold"" >&nbsp;&nbsp;"_$$^W4KOTMLZ_"</td>",!
 W "   <td width=""10%"" >&nbsp;&nbsp;"_$$^%W1DICT("CODEORTEL")_"</td>",!
 ;
 W "   <td>"
  I '$$NOMOD(JB),'$$ORDEREXIST D
  .W "   <input type=""text"" id=""NMB"" name=""NMB"" maxlength=""14"" size=""14"" "
  .W "   tabindex=""1"" "
  .W "   value="""_$G(LKH)_""" onClick=""this.select()"" "
  .W $$INPBGCOLOR
  .W $$ONKEYPRESS
  .W " onKeyUp=""ChangeCd()"" onChange=""TestCust('NMB');FindCust('NMB','NMB','LKH','1')"" >",!
  .I $$^W4TABLET W $$NBSP^%L1FRM(7)
  .W "     &nbsp;<img id=""filter"" src=""w3filter.jpg"" "
  .N SZ S SZ=20 I $$^W4TABLET S SZ=25
  .W " style=""height:"_$$^W4KF(SZ)_"px;width:"_$$^W4KF(SZ)_"px"" "
  .W " onClick=""NoChangeCd();TestCust('NMB');FindCust1('NMB','NMB','LKH','1')"" >",!
   ; 
  I $$NOMOD(JB)!$$ORDEREXIST D SHOWVL($$RKV("NMB"))
 W "   </td>",!
 ;
 I $$^W4DLVCSR=1 D
 .W "<td width=""15%"" >"
 . D
 . .N HZM S HZM=$$GETP^%W1PRM("HZM")
 . .I $$NOMOD(JB)!$$ORDINPROGRESS D  Q
 . . .I HZM>0 D SHOWVL($$^%W1DICT("ORDER")_" "_HZM) Q
 . . .W "&nbsp;"
 . .D ^W4BUTTON("lastcust",$$^%W1DICT("SHOWLASTCUST"),"ShowLastCust()","color:green;font-size:"_$$^W3FSZ(12))
 .W "</td>"
 ;
 W "</tr></table>",!
 Q
 ;
 ;
ORDER(STAM)
 Q +$$GETP^%W1PRM("HZM")
 ;
 ;
ORDEREXIST(STAM) ;
 I $$TELEPHONE Q $D(@$$^W4TMPORD)=11
 ;
 N HZM S HZM=$$ORDER
 I $D(@$$^W4ORD@(HZM))'=11 Q 0
 I '$$^W4MSL($$NMB^W4HZMST(HZM)) Q 0
 I $$GETP^%W1PRM("COPYORD")<0 Q 0
 Q 1
 ;
BTN(ID,VL,FUNC,STYLE,DOP)
 W "<td align=""center"" id="""_$G(ID)_""" onClick="""_$G(FUNC)_""" "
 W " style="""_$G(STYLE)_""">"
  W VL
 W "</td>",!
 Q
 ;
BTNPRM(WD,CLR,BGCLR)
 N PRM,FSZ
 S FSZ=$$^W3FSZ($S($$1024^W4WDSCR:$S($$^%W1HB:11,1:10),1:12)) ; 14
 I $$^W4TABLET=1,$G(@$$^W4PRM@("TABLET","FSZBTN")) S FSZ=^("FSZBTN")
 S:$G(BGCLR)="" BGCLR="white"
 I $D(W4MSDLST) S FSZ=$$^W3FSZ(12)
 S PRM="width:"_WD_"%;color:"_CLR_";font-size:"_FSZ_";font-weight:bold"
 S PRM=PRM_$S($G(BGCLR)="":"",1:";background-color:"_BGCLR)
 I $D(W4MSDLST) S PRM=PRM_";border:1px solid brown"
 S PRM=PRM_";cursor:pointer"
 Q PRM
 ;
GETDAT(STAM) ;
 N TODAT,DAT S TODAT=+$H
 N A S A=$$^W3TIME($H,$$CITY^W3HZMST(JB))
 I $D(W3TIME("ND")) S TODAT=TODAT+1
 N TOTIME S TOTIME=$$GETTIME
 S DAT=$$DAT^W3HZMST(JB)
 I DAT S TODAT=$$^%L1DC(DAT,3)
 I TODAT=$$^W4DZ,TOTIME<(5*3600),$$GETP^%W1PRM("HZM")'>0 S TODAT=TODAT+1
 Q TODAT
 ;
 ;
GETTIME(STAM) ;
 N TOTIME,SHAA,TODAT S TOTIME=$H
 ;
 S TOTIME=$P($$^W3TIME($H,$$CITY^W3HZMST(JB)),",",2) ;;+300
 ;
 I '$$NOMOD(JB),$G(@$$^W4PRM@("DLVIMD")),$$SHAA^W3HZMST(JB)="" D
 .S TOTIME=$P($H,",",2)+300 K W3TIME("ND")
 ;
 I $$NOMOD(JB) D
 .S SHAA=$$SHAA^W3HZMST(JB)
 .I SHAA'?.P,SHAA'=0,SHAA'="&nbsp;" D
 ..S TOTIME=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 ;
 Q TOTIME
 ;
 ;
CHECKDAT(DT) ;
 I $G(FUTDAT),$$^%L1DC(DT,8)=6,$G(MSD)=1,$$DLVWEB^W4DLVCSR!$$ONLINE^W4DLVCSR Q 0
 ;;W $$^W3VLDDT($$^%L1DC(DT,1)),!
 Q ($$^W3VLDDT($$^%L1DC(DT,1))>0)
 ;
 ;
DAT ;
 N TXTDAT S TXTDAT="",TODAT=""
 I $$DAT^W3HZMST(JB) S TODAT=$$^%L1DC($$DAT^W3HZMST(JB),3)
 D KILL^%W1PRM("FUTDAT")
 ;
 I $$NOMOD(JB)!($D(@$$^W4ORD@(+$$GETP^%W1PRM("HZM"),"CB","ASR"))>9) D  Q
 .D SHOWVL($$DAT^W3HZMST(JB))
 ;
 S FUTDAT=0
 ;
 I '$$NOMOD(JB),'TODAT D ; ***
 .S TODAT=$$GETDAT
 .;;S ^AA("W3ORDDET","TODAT0")=TODAT
 .N TOTIME S TOTIME=$$GETTIME
 .;;S ^AA("W3ORDDET","TOTIME0")=TOTIME
 .;;M ^AA("W3ORDDET","W3TIME")=W3TIME
 .I $D(W3TIME("ND")) S TODAT=$H+1 K W3TIME("ND")
 .I $P(TOTIME,":")'?2N1":"2N!(TOTIME="00:00") S TOTIME=$P($H,",",2)
 .N P6 S P6=$$SHAA^W3HZMST(JB)
 .;;S ^AA("W3ORDDET","TOTIME")=TOTIME
 .;;S ^AA("W3ORDDET","P6")=P6
 .
 .;;I 'P6 I $$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))=-3 D
 ..S TODAT=$$^W4DZ+1,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .
 .I '$$CHECKDAT(TODAT) D
 ..N DT F DT=TODAT+1:1:TODAT+200 Q:$$CHECKDAT(DT)
 ..S TODAT=DT,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .;
 .I $$NMB^W3HZMST(JB) D PUT^W3HZMST(JB,"DAT",$$^%L1DC(TODAT,1))
 ;
 I $$NOFUTDAT^W3PRM Q
 ;
 S %W1DAT("CLND")="2;60"
 ;
 I $$DLVCSR D
 .S %W1DAT("CLND")="2;270"
 .S %W1DAT("KEYPRESS")=""
 .S %W1DAT("TABIND")=$$TABIND("DAT")
 ;
 I $$ONLINE S %W1DAT("CLND")="2;60"
 ;
 D ^%W1DAT("DAT",TODAT,TXTDAT)
 Q
 ;
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 I $D(SIZE) W " style=""font-size:"_SIZE_""""
 I $D(DIR) W " dir="""_DIR_""""
 W " >",!
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
TDE W "</td>",!
 Q
 ;
DATCB W "<td width=""16%"">"_$$^%W1DICT("RECEIVED")_" : "_$$RPL^%L1FRM($$DATCB^W3HZMST(JB,$G(GL,$$^W3ORD))," ","&nbsp;")_"</td>",!
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 I '$$NOMOD(JB) W $$INPUT(RKV,$G(WD),$G(SIZE),$G(DIR),$G(PRTX)) Q
 ;
 D SHOWVL($$RKV(RKV))
 Q
 ;
 ;
QUOT(SETINP) ;
 N QUOT S QUOT="'"
 I $G(SETINP)  S QUOT="\'"
 Q QUOT
 ;
 ;
INPUT(RKV,WD,SIZE,DIR,PRTX,SETINP) ;
 N ST,QUOT S QUOT=$$QUOT($G(SETINP))
 S ST="<input type=""text"" maxlength="""_SIZE_""""
 S ST=ST_" style=""width:"_$$^W4KF(WD)_$S(DIR="LTR":";text-align:"_$S($G(PRTX)="T":"left",1:"center"),1:"")_""""
 S ST=ST_" dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 S ST=ST_" onMouseDown=""NoChangeCd()"""
 S ST=ST_" onKeyDown=""NoChangeCd()"""
 N PRM S PRM="" 
 I RKV="STREET" S PRM="STREET"
 S ST=ST_$$INPBGCOLOR(PRM)
 S ST=ST_$$ONKEYPRESS
 ;
 I '$$ELPOS,'$$DLVWEB^W4DLVCSR,$G(CODE),RKV'="STREET" D
 .I '$$POLYGON^W4PRM S ST=ST_" onChange=""CallTfr("_QUOT_CODE_QUOT_")"" "
 ;
 I RKV'="STREET" D
 .S ST=ST_" onClick=""noIfrHide=0;HideStreet("_QUOT_RKV_QUOT_")"
 .I RKV="HOME"!(RKV="FLAT")!(RKV="FLOOR") S ST=ST_";this.select()"
 .S ST=ST_""""
 .;
 .I RKV="HOME" S ST=ST_" onChange=""CheckHome()"""
 .;
 .I RKV="EMAIL" S ST=ST_" onKeyUp=""EnglishOnly(event,"_QUOT_"EMAIL"_QUOT_")"""
 .;
 .N VL S VL=$$RKV(RKV)
 .; 
 .I RKV="NAME",$L($G(CODE)),$$CLOSED^W4L(CODE) D
 ..S VL=VL_" - "_$$^%W1DICT("CUSTCLOSED")
 .;
 .S ST=ST_" value="""_VL_""" "
 .S ST=ST_" tabindex="""_$$TABIND(RKV)_""""
 ;
 ;
 I RKV="STREET" D
 .N VL,VL1 S VL=$$RKV(RKV)
 .
 .I $$POLYGON^W4PRM,$L($G(CODE)) D
 ..N CITY S CITY=$$RKV("CITY")
 ..;;S ^AA("W3ORDDET","STREET")=VL
 ..;;S ^AA("W3ORDDET","CITY")=CITY
 ..S CITY=$$RPL^%L1FRM(CITY,"&nbsp;","")
 ..I CITY'?.P S VL=VL_", "_CITY
 .
 .I $D(SETINP) S VL1=$$RPL^%L1FRM(VL,"'","\'")
 .S VL1=$$RPL^%L1FRM(VL,"""",QUOT_QUOT)
 .I VL'?1N.N S ST=ST_" value="""_VL1_""" " S VL1=0
 .
 .I VL?1N.N S ST=ST_" value="""_VL_"""" S VL1=+VL
 .
 .S ST=ST_" tabindex="""_$$TABIND(RKV)_""""
 .
 .S ST=ST_" onChange=""ChangeStreet()"""
 .
 .I '$$POLYGON^W4PRM D
 ..;;N FOC S FOC="ClickStreet("_QUOT_VL1_QUOT_")" ; -- focus in INPBGCOLOR
 ..;;I $$^W4SMALL S FOC="this.select();"_FOC
 ..;;S ST=ST_" onFocus="""_FOC_""""
 ..N CITY S CITY=$$CITY^W3HZMST(JB,$G(GL))
 ..I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 S ST=ST_" onKeyUp=""FindStreet(this)"""
 .
 .;;I $$POLYGON^W4PRM D  ; -- FOCUS IN inpbgcolor
 ..N FOC S FOC="this.select();"
 ..S ST=ST_" onFocus="""_FOC_""""
 ;
 S ST=ST_" />"
 ;
 Q ST
 ;
 ;
INPBGCOLOR(SEL) ;
 N ST,QUOT S QUOT=$$QUOT($G(SETINP))
 N FOC S FOC="this.style.backgroundColor="_QUOT_"lightyellow"_QUOT
 I $G(SEL)="STREET",$$POLYGON^W4PRM S FOC=FOC_";this.select()"
 S FOC=FOC_";ifrHide("_QUOT_"MUST"_QUOT_","_QUOT_"ifr"_QUOT_")"" "
 S ST=" onFocus="""_FOC_""" "
 S ST=ST_" onBlur=""this.style.backgroundColor="_QUOT_$$BGINP^W3CSS($$COLOR^W3CSS)_QUOT_""""
 Q ST
 ;
SPANSTYLE(RKV) ;
 N ST
 S ST="<span"
 I $G(RKV)'="" S ST=ST_" id='"_RKV_"' name='"_RKV_"'"
 I $D(W3ORDHD("SPANSTYLE")) S ST=ST_" style="""_W3ORDHD("SPANSTYLE")_""""
 E  I $D(SPANSTYLE) S ST=ST_" style="""_SPANSTYLE_""""
 I $D(DIR) S ST=ST_" dir="""_DIR_""""
 S ST=ST_">" K DIR,SPANSTYLE
 Q ST
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 N SEL S SEL=""
 ;
 D PUT^%W3DEB("W3ORDDET","INPCT-RKV=RKV& INPCT-WD=WD& INPCT-SIZE=SIZE& INPCT-DIR=DIR& INPCT-PRRG=PRRG")
 ;
 I '$$NOMOD(JB) D
 .I $$CITIESTABLE D SELCITY(RKV)
 .
 .I '$$CITIESTABLE D
 ..W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_$$^W4KF(WD)_";"
 ..W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 ..W " dir="""_$$^%W1DIR_""""
 ..N VL S VL=$$RPL^%L1FRM($$RKV(RKV),"""","''")
 ..W " name="""_RKV_""" id="""_RKV_""" value="""_VL_""""
 ..W " tabindex="""_$$TABIND("CITY")_""""
 ..W " onChange=""ChangeCity()"" "
 ..W $$ONKEYPRESS
 ..;;I '$$CITYINPUT^W4PRM W $$ONKEYPRESS
 ..;;I $$CITYINPUT^W4PRM,$$CITIESTABLE D
 ...I '$$^W4TABLET W " OnKeyPress=""KeyPressCity(event,this)"" "
 ...I $$^W4TABLET W " OnKeyPress=""KeyPressCity(event,this,'',10)"" "
 ...W " onClick=""this.select()"" "
 ..W " onFocus=""clearMenu()"" >",!
 .;;W "&nbsp;"
 .;
 .I $$TAKEAWAY,'$$^W4SMALL,'$D(W3MSDRG) W $$CHKTAW($$TAW)
 .;
 .I $$TAKEAWAY,$$^W4SMALL,'$D(NOTAKEAWAY),'$D(MSDRG) D
 ..W "<br><br><input type=""button"" id=""taw"" value="""_$$HDTAW_""""
 ..W " style=""color:grey"
 ..I $$^W4SIMUL W ";font-size:"_$$^W3FSZ(12)
 ..W """"
 ..W " onClick=""TakeAway()"" >"
 ;
 I $$NOMOD(JB) D SHOWVL($$RKV("CITY"))
 ;
 Q
 ;
 ;
SHOWVL(VL) I $G(VL)="" S VL="&nbsp;"
 W "<font style=""font-weight:bold"">"_VL_"</font>",!
 Q
 ;
RKV(RKV)
 I $G(RKV)="" Q "&nbsp;"
 N VL S VL=""
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 ;
 ;;I RKV="CMNTIN" Q $S($G(CODE)="":"",1:$$H2U^%L1FRM($$CMNTIN^W4L(CODE)))
 ;
 I RKV="TELB" D  Q VL
 .I $L($$TELB^W3HZMST(JB))>6 S VL=$$TELB^W3HZMST(JB) Q
 .I $G(CODE),$$TELEPHONE^W4PRM,$$TELB^W3L(CODE) S VL=$$TELB^W3L(CODE) Q
 .I $G(CODE),$$DLVCSR,$$TELB^W4L(CODE) S VL=$$TELB^W4L(CODE) Q
 .I $G(CODE) S VL=CODE
 ;
 I RKV="TELB" S RKV="NMB"
 ;
 S @("VL=$$"_RKV_"^W3HZMST("_JB_","""_GL_""")")
 ;
 D PUT^%W3DEB("W3ORDDET-RKV","RKV=RKV & VL=VL & CODE=CODE")
 ;
 I RKV="HOME",$G(HOMEPRM) S HOME=HOMEPRM
 I RKV="CITY",VL="TAKEAWAY",'$$POLYGON^W4PRM S VL=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY","")
 I RKV="CITY",VL="TAKEAWAY",$$POLYGON^W4PRM,'$$ORDINPROGRESS S VL=""
 ;
 I VL=""!(VL="-"),$G(CODE),$$DLVCSR,'$$NOMOD(JB),'$$ORDINPROGRESS,'$G(%ARG("MULTYADR")) D
 .I $$GETP^%W1PRM("DLVCSR")=2
 .I RKV="NAME",'$$NAME2COMP(CODE) S VL=$$LKH^W4L(CODE)
 .I RKV="NAME",$$NAME2COMP(CODE) S VL=$$NAME^W3HZMST(JB)
 .;
 .I RKV="COMP" D
 ..S VL=$$COMP(CODE)
 .
 .I RKV="NMB" S VL=$$TELB^W4L(CODE)
 .I RKV="PELE" S VL=$$PELE^W4L(CODE)
 .I RKV="CITY" S VL=$$CITY^W4L(CODE)
 .I RKV="STREET" S VL=$$KTV^W4L(CODE)
 .I RKV="HOME" S VL=$$BAIT^W4L(CODE)
 .N HM S HM=($$HOME^W3HZMST(JB)="")
 .I RKV="FLAT",'HM S VL=$$DIRA^W4L(CODE)
 .I RKV="ENTRANCE",'HM S VL=$$CNISA^W4L(CODE)
 .I RKV="FLOOR",'HM S VL=$$KOMA^W4L(CODE)
 .I RKV="COMMENT" S VL=$$CMNT^W4L(CODE)
 .I RKV="FAX" S VL=$$FAX^W4L(CODE)
 .I RKV="EMAIL" S VL=$$EMAIL^W4L(CODE)
 .I RKV="MIKUD" S VL=$$MIKUD^W4L(CODE)
 ;
 I VL'="" Q $$H2U^%L1FRM(VL)
 Q "&nbsp;"
 ;
P(I)
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 I $P($G(@GL@(JB)),"~",I)'="" Q $$H2U^%L1FRM($TR($P(@GL@(JB),"~",I),"?",""))
 Q ""
 ;
GETSNIF(STAM) ;
 Q $$GETSNIF^W3SNIF
 ;
ET W "</table>",!
 I '$G(W3FAXHTM) W "</div>",!
 Q
 ;
FILL(NMB) ;
 I $G(JB),'$G(CODE),$L($G(NMB))>3,$$NMB^W3HZMST(JB)=""!($$NAME^W3HZMST(JB)="") D
 .N EXIST S EXIST=0
 .I $$D^W3L(NMB) D EXIST
 .N NMB1 S NMB1=$TR(NMB,"-","") Q:NMB1=""
 .I EXIST D HOMEPRM(NMB1) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .
 .N GL,GLTMP S GL=$$GLA^W3L
 .
 .I '$$D^W3L(NMB1,GL),$G(@$$^W4GL("LKHAT")@(NMB1)) D
 ..S NMB1=@$$^W4GL("LKHAT")@(NMB1)
 ..I NMB1 D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 .
 .I '$$D^W3L(NMB1,GL),$$^%W1LNG="H" D
 ..I $E(NMB1,1,2)="02" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="03" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="04" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="08" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="09" S NMB1=$E(NMB1,3,12) Q
 .
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .I '$$D^W3L(NMB1,GL) D HOMEPRM(NMB1) Q
 .I $G(HOMEPRM)?1N.N,+$$BAIT^W3L(NMB1,GL)'=+HOMEPRM D HOMEPRM(NMB1) Q
 .
 .D SETLK2ORD(NMB1,GL)
 Q
 ;
 ;
SETLK2ORD(NMB1,GL)
 S GL=$G(GL)
 S $P(@$$^W3TMPORD@(JB),"~",1)=$$TELB^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",2)=$$LKH^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",3)=$$KTV^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",7)=$$CMNT^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",13)=$$KOMA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",14)=$$DIRA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",15)=$$BAIT^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",16)=$$CNISA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",31)=$$IR^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",32)=$$PELE^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",47)=$$COMP(NMB1,GL)
 Q
 ;
EXIST ;
 W "<script>",!
 W " MsgA(""PHONEOFMEMBER"")",!
 W "</script>",!
 S EXIST=1 Q
 ;
TODAY(DAT) ;
 I $$^%L1DC(DAT,3)=+$H Q 1
 Q 0
 ;
HOMEPRM(NMB1) ;
 I $G(HOMEPRM) S $P(^[$$^W3MAIN]TMPORD(JB),"~",15)=HOMEPRM
 I $$GETP^%W1PRM("CODE")="",$G(NMB1) D
 .D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 Q
 ;
OPTABLE ;
 D PADDING
 W "<table border=""0"" "_PADDING
 W " style=""width:"_$$WDTBL_"%;border:solid;border-color:gray;border-width:1px;"
  W " margin:"_$$^W4KF(12)_"px;background-color:white;color:black"
  W ";"_$$GRAD^W3CSM("#EFEFEF","#FFFFFF")
 W """ dir="""_$$^%W1DIR_""""
 I $G(PRM)="IN" W " onClick=""HideStreet('table')"""
 I $G(W3FAXHTM) W " style=""font-size:"_$$^W3FSZ_";"""
 Q
 ;
PADDING ;
 S PADDING="" I $$DLVCSR S PADDING=" class=""compr"""
 Q
RWSTYLE ;
 Q
 ;
NEWORD(JB) ;
 I $D(@$$^W3ORD(JB)@(JB)) Q 0
 I '$D(^[$$^W3MAIN]TMPORD(JB)) Q 1
 I $D(^[$$^W3MAIN]TMPORD(JB))>9 Q 0
 N NEO S NEO=1
 ;;N I F I=1:1:$L(^(JB)) I $P(^[$$^W3MAIN]TMPORD(JB),"~") S NEO=0 Q
 I $P(^(JB),"~",1,3)'?.P S NEO=0
 Q NEO
 ;
SUBMIT ;
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q " "
 Q "<span style=""color:red"">*</span>"
 ;
ADDRESS ;
 S:'$D(GL) GL=""
 N KTV
 S KTV=$$H2U^%L1FRM($$KTV^W3HZMST(JB,GL))
 W "<td align='"_$S($$^%W1DIR="RTL":"right",1:"left")_"'"
 I $D(WIDTH) W "width="""_WIDTH_""""
 W "' >&nbsp;&nbsp;"_$$^%W1DICT("ADDR")_" : <span>"_KTV_"</span></td>",!
 K WIDTH Q
 ;
 ;
FILLTM(TODAT) ;
 N TOTIME,SHAA
 S TOTIME=$$GETTIME ; -- 5N
 ;;W "TOTIME0="_TOTIME,!
 D PUT^%W3DEB("W3ORDDET-FILLTM","TOTIME0=TOTIME")
 ;
 I TODAT'?5N S TODAT=$$^%L1DC(TODAT,3)
 I '$G(MSD) S MSD=$$GETP^%W1PRM("MSD")
 I $$DLVWEB^W4DLVCSR,$$GETP^%W1PRM("MRKTO") S MSD=$$GETP^%W1PRM("MRKTO")
 D PUT^%W3DEB("W3ORDDET-FILLTM","TODAT=TODAT")
 ;
 N CHKTIME S CHKTIME=$$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))
 D PUT^%W3DEB("W3ORDDET-FILLTM","CHKTIME=CHKTIME")
 ;
 ;;W "1: MSD="_MSD_"  CHKTIME="_CHKTIME_"  TOTIME="_TOTIME,! ; ***
 I $G(TODAT),$G(MSD),CHKTIME=-2 D  ; VR < NIJ DIAP
 .S TOTIME=$$DP1^W3VLDTM(MSD,$ZD(TODAT,"DD.MM.YY"))
 ;
 N TOSHAA S TOSHAA=$$SHAA^W3HZMST(JB)
 ;
 I '$$NOMOD(JB),$$NMB^W3HZMST(JB),'$$SYS^W4DLVCSR!($$SHAA^W3HZMST(JB)="") D
 .D PUT^W3HZMST(JB,"SHAA",$$T^%L1TIME(TOTIME))
 ;
 D PUT^%W3DEB("W3ORDDET-FILLTM","TOTIME=TOTIME")
 ;
 I $$NOFUTDAT^W3PRM Q $$T^%L1TIME(TOTIME)
 ;
 N FROMHR,FROMMIN
 S (FROMHR,FROMMIN)=0
 ;
 N SHAAHZ S SHAAHZ=$$SHAA^W3HZMST(JB)
 ;;W "SHAAHZ="_SHAAHZ,!
 I $$SYS^W4DLVCSR,SHAAHZ'?.P,SHAAHZ'="00:00" D
 .S TOTIME=$$SHAA^W3HZMST(JB)
 ;
 ;;W "TOTIME1="_TOTIME,! ; ***
 I TOTIME[":" D
 .;;W "LV5",! ; ***
 .S FROMHR=$TR($P(TOTIME,":")," ",""),FROMMIN=$P(TOTIME,":",2)
 ;
 I TOTIME?1N.N D
 .;;W "LV6",! ; ***
 .S FROMHR=$P($$T^%L1TIME(TOTIME),":"),FROMMIN=$P($$T^%L1TIME(TOTIME),":",2)
 ;
 ;;W "2: TOTIME2="_TOTIME_"  FROMHR="_FROMHR_"  FROMMIN="_FROMMIN,! ; ***
 ;
 D PUT^%W3DEB("W3ORDDET","TODAT=TODAT & TOTIME=TOTIME & FROMHR=FROMHR & FROMMIN=FROMMIN")
 ;
 ; --------------------------- SELECT HOUERS
 S TDTM="<select style=""background-color:yellow"" "
 S TDTM=TDTM_" name=""SHAAhr"" id=""SHAAhrid"" "
 S TDTM=TDTM_" tabindex="""_$$TABIND("SHAAhrid")_""""
 S TDTM=TDTM_$$ONKEYPRESS
 S TDTM=TDTM_" onChange=""OnChangeHouer('"_$G(CODE)_"')"" >"
 ;
 N MESHAA,ADSHAA
 S MESHAA=$$DP1^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 S ADSHAA=$$DP2^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 ;;W "ADSHAA0="_ADSHAA,! ; ***
 S MEMIN=0
 ;
 ;;W "TOSHAA="_TOSHAA,! ; ***
 I +TODAT=+$H,$$T^%L1TIME($H)>MESHAA S MESHAA=+$$T^%L1TIME($H)
 ;
 I TODAT=($H+1),TOSHAA=""!(TOSHAA=":") D
 .I $$NDTNTM^W4PRM D  Q
 ..S FROMHR=-1
 ..S TDTM=TDTM_"<option value="""_FROMHR_""" selected=""selected""></option>"
 .S TOSHAA=MESHAA ;
 ;
 I TODAT-$H>1,TOSHAA=""!(TOSHAA=":") D
 .;;W "TODAT2",! ; ***
 .S FROMHR=-1
 .S TDTM=TDTM_"<option value="""_FROMHR_""" selected=""selected""></option>"
 ;
 ;;I $$DLVWEB^W4DLVCSR!$$ONLINE^W4DLVCSR,'$P(ADSHAA,":",2) S ADSHAA=ADSHAA-1
 ;
 ;;W "3: MSD="_MSD_"  TODAT="_TODAT_"  MESHAA="_MESHAA_"  ADSHAA="_ADSHAA_"  FROMHR="_FROMHR_"  FROMMIN="_FROMMIN,! ; ***
 N I F I=MESHAA:1:ADSHAA D
 .I $$^W4LIMHR(TODAT,I) Q
 .N I1 S I1=I I I1>23 S I1=I1-24
 .S TDTM=TDTM_"<option value="""_I1_""""
 .I FROMHR<MESHAA&(FROMHR>5),+I=+MESHAA S TDTM=TDTM_" selected=""selected"" "
 .E  I +I1=+FROMHR!(+I1=0&(FROMHR=24))!(I1=24&(+FROMHR=0)) D
 ..S TDTM=TDTM_" selected=""selected"" "
 .S TDTM=TDTM_" >"_$TR($J(I1,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select> : "
 ;
 ;------------------------------------- SELECT MINUTES --------------------
 N OST S OST=(FROMMIN#5)
 S FROMMIN=(FROMMIN\5+$S(OST>2:1,1:0))*5
 ;
 S TDTM=TDTM_"<select style=""background-color:yellow"" "
 S TDTM=TDTM_" tabindex="""_$$TABIND("SHAAmnid")_""""
 S TDTM=TDTM_" name=""SHAAmn"" id=""SHAAmnid"" "
 S TDTM=TDTM_$$ONKEYPRESS
 I '$$ELPOS S TDTM=TDTM_" onChange=""CallTfr('"_$G(CODE)_"')"" >"
 I $$ELPOS D
 .S TDTM=TDTM_" onChange=""OnChangeHouer('"_$G(CODE)_"')"" >"
 ;
 I TODAT-$H>1,'$$P(6) D
 .S FROMMIN=0
 .S TDTM=TDTM_"<option value=""-1"" selected=""selected""></option>"
 ;
 N STEP S STEP=1
 I $G(@$$^W4PRM@("STEPMNT")) S STEP=^("STEPMNT")
 ;
 F I=0:STEP:59 D
 .S TDTM=TDTM_"<option value="""_I_""""
 .I +I=+FROMMIN S TDTM=TDTM_" selected=""selected"""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select>"
 Q TDTM
 ;
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
MUSTSTREET(CITYI) ;
 I $$^W3HZMH(JB) Q 0
 I $$MUSTSTREET^W3PRM Q 1
 I $G(CITYI)="" Q 0
 S CITYI=$$CLR(CITYI)
 I $G(CITYI)="" Q 0
 I $G(@$$^W4GL("W3AZR")@($$COUNTRY^W3AZRIDK,CITYI)) Q 1
 Q 0
 ;
CHKHOME(PRM) ;
 N CITYI S CITYI=$$CLR($P(PRM,":")) I CITYI="" Q 0
 N STREETI S STREETI=$$CLR($P(PRM,":",2))
 N HOME S HOME=$$CLR($P(PRM,":",3))
 N COUNTRY S COUNTRY=$$COUNTRY^W3AZRIDK I COUNTRY="" S COUNTRY="IS"
 N GL S GL=$$^W4GL("W3AZS")_"(COUNTRY,CITYI)"
 N IND S IND=""
 N OK S OK=1
 ;
 F  S IND=$O(@GL@(IND)) Q:IND=""  D  Q:'OK
 .N A S A=IND
 .N STR S STR=$$SPA^%L1FRM($P(A,":"))
 .N MEHOME S MEHOME=$$SPA^%L1FRM($P(A,":",2))
 .N ADHOME S ADHOME=$$SPA^%L1FRM($P(A,":",3))
 .I STREETI=STR,HOME<MEHOME!(HOME>ADHOME) D
 ..S OK="0:"_MEHOME_":"_ADHOME
 ;
 Q OK
 ;
 ;
CLR(TXT) ;
 Q $$SPA^%L1FRM($$CLEAR^%L1FRM($$CNWEB^%L1FRM(TXT)))
 ;
DLVCSR(STAM) ;
 I $G(%ARG("DLVCSR")) Q (%ARG("DLVCSR")=1)
 N HZM S HZM=$$GETP^%W1PRM("HZM") I $$HZM^W4MSL(HZM),$$^W4ELPOS Q 1
 Q ($$GETP^%W1PRM("DLVCSR")=1)
 ;
ONLINE(STAM) ;
 I $$GETP^%W1PRM("DLVCSR")="WEB" Q 1
 Q 0
 ;
NOMOD(JB) ;
 I $G(PRM)="VW" Q 1
 Q $$NOMOD1(JB)
 ;
NOMOD1(JB)
 I $G(%ARG("SHOW")) Q 1
 I $$DLVCSR,$$PSL^W3HZMST(JB) Q 1
 I '$$DLVCSR,$$CLOSE^W3HZMST(JB) Q 1
 Q 0
 ;
SORTCITY ;
 N IR,IRI,TMPIR,A
 S TMPIR=$$^W4MAIN("TMPIR")
 K @TMPIR
 I '$$SORTCITY^W3PRM D  Q
 .N N S N=.1 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..S A=$G(^(N)) Q:A=""
 ..S @TMPIR@(N)=A
 ;
 N N S N=.1 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 .S IR=$G(^(N)) Q:IR=""  Q:IR
 .S IRI=$$INVH^%L1FRM(IR)
 .S @TMPIR@(IRI)=IR
 .I $$SFC^W3CSS D
 ..S @TMPIR@(1)="aia` lz"
 ..S @TMPIR@(2)="dilvxd"
 ..K @TMPIR@(630)
 Q
 ;
 ;
NEWMIN(PRM) ;
 D PUT^%W3DEB("W3ORDDET-NEWMIN","PRM=PRM")
 N TODAT,HR
 S TODAT=$P(PRM,";")
 S HR=$P(PRM,";",2)
 S MSD=$$GETP^%W1PRM("MSD") I 'MSD Q "<PUSTO>"
 N DP2 S DP2=$$DP2^W3VLDTM(MSD,TODAT)
 D PUT^%W3DEB("W3ORDDET-NEWMIN","DP2=DP2")
 N LASTMIN,MEMIN
 S LASTMIN=55
 I +HR=+DP2 D
 .S LASTMIN=$P(DP2,":",2)
 ;
 N I,TDTM S TDTM="",MEMIN=0
 ;
 F I=0:1:LASTMIN D
 .S TDTM=TDTM_"<option value="""_I_""""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 Q TDTM
 ;
NEWDAT(PRM) ;
 D PUT^%W3DEB("W3ORDDET-NEWDAT","PRM=PRM")
 N TODAT,HR,DT
 S TODAT=$P(PRM,";")
 S HR=$P(PRM,";",2)
 S DT=$$^%L1DC(TODAT,3)
 I DT=$$^W4DZ,HR!$P(HR,":",2)!(HR?2N1":"2N),HR<$$T^%L1TIME($H) S TODAT=$ZD(DT+1,"DD.MM.YY")
 Q TODAT
 ;
TAKEAWAY(STAM) ;
 I '$$NOTAKEAWAY^W3PRM Q 1
 Q 0
 ;
HDTAW(STAM) ;
 Q $S($$ONLINE^W4DLVCSR:$$^%W1DICT("TAKEAWAY"),1:$$^%W1DICT("TAKEAWAY!"))
 ;
 ;
TAWMSG ;
 W "<tr><td colspan=""4"" "
 W "style=""background-color:white;color:red;text-align:center;font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("TAKEYOURHKORDER")
 W "</td></tr>",!
 Q
 ;
TABIND(RKV) ;
 N TI S TI=0
 D
 .I RKV="NAME" S TI=1 Q
 .I RKV="COMP" S TI=2 Q
 .I RKV="TELB" S TI=3 Q
 .I RKV="FAX" S TI=4 Q
 .I RKV="PELE" S TI=5 Q
 .I RKV="CITY" S TI=6 Q
 .;;I RKV="taw" S TI=7 Q
 .I RKV="STREET" S TI=8 Q
 .I RKV="HOME" S TI=9 Q
 .I RKV="FLAT" S TI=10 Q
 .I RKV="ENTRANCE" S TI=11 Q
 .I RKV="FLOOR" S TI=12 Q
 .I RKV="MIKUD" S TI=13 Q
 .I RKV="COMMENT" S TI=14 Q
 .I RKV="SOAD" S TI=15 Q
 .I RKV="TZ" S TI=16 Q
 .I RKV="DAT" S TI=17 Q
 .I RKV="SHAAhrid" S TI=18 Q
 .I RKV="SHAAmnid" S TI=19 Q
 .I RKV="ADSHAAhrid" S TI=20 Q
 .I RKV="ADSHAAmnid" S TI=21 Q
 .I RKV="CMHD" S TI=22 Q
 .I RKV="HZMLAK" S TI=23 Q
 .I RKV="EMAIL" S TI=24 Q
 ;
 Q TI
 ;
ZWEZD(RKV) ;
 Q " "
 ;
SHORT(STAM) ;
 I $G(@$$^W4PRM@("DLVSHORT")) Q 1
 Q 0
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q
 ;
ONKEYPRESS(STAM) ;
 Q " onKeyPress=""OnKeyPress(event,this)"" onFocus=""OnFocus(this)"" "
 ;
SETFLAG(CUST) ;
 S A=$$BUSY^W4KLFL(CUST)
 I A Q "BUSY;"_A
 D SET^W4KLFL(CUST)
 Q 1
 ;
MSDFROM(STAM) ;
 I $G(%ARG("MSDFROM")) Q 1
 I $$GETP^%W1PRM("MSDFROM") Q 1
 Q 0
 ;
KILLCC ;
 D KILL^%W1PRM("MSDFROM")
 I $$CALLCENTER^W4PRM=1 D KILL^%W1PRM("MSD")
 ;;D KILL^%W1PRM("MLZR")
 D KILL^%W1PRM("MSDFROMSAVED")
 N NMB S NMB=$$GETP^%W1PRM("NMB") I NMB D ^W4KLFL(NMB)
 Q
 ;
ORDINPROGRESS(STAM)
 I $D(@$$^W4TMPORD)=1,$D(^[$$^W3MAIN]TMPCOPY(JB))=11 Q 1
 I $D(@$$^W4TMPORD)<11 Q 0
 Q 1
 ;
 ;
DLVBUT ;
 N CPAD S CPAD=10 I $$^W4TABLET=1,$G(@$$^W4PRM@("TABLET","PAD2")) S CPAD=^("PAD2")
 N FSZ S FSZ=14 I $$1024^W4WDSCR S FSZ=12
 W "<table id=""TblBut"" class=""tblbut"" dir="""_$$^%W1DIR_""" border=""0"" width="""_$$WDTBL_"%"" cellpadding="""_CPAD_""" "
 W " style=""font-size:"_FSZ_""" "
 W ">",!
 W " <tr style=""cursor:pointer"" >"
 ;
 I '$$NODLVORD^W4PRM D
 .I $$NOMOD(JB) Q
 .I '$$ORDINPROGRESS S BTNM="NEWORD"
 .I $$ORDINPROGRESS S BTNM="SUBMIT"
 .I '$$VVMSK^W4PRM D BTN("rbtsubm",$$^%W1DICT(BTNM),"ToOrder()",$$BTNPRM(15,"white","green"))
 .I $$HZMHPRM,'$$ORDINPROGRESS,'$$MM^W4PRM D
 ..D BTN("rbthzmh",$$^%W1DICT("HZMH"),"ToPriceOffer()",$$BTNPRM(10,"darkgreen","lightgreen"))
 ;
 I $$NODLVORD^W4PRM,$$HZMHPRM D
 .I $$NOMOD(JB) Q
 .I '$$ORDINPROGRESS S BTNM="ORDERIT"
 .I $$ORDINPROGRESS S BTNM="SUBMIT"
 .D BTN("rbthzmh",$$^%W1DICT(BTNM),"ToPriceOffer()",$$BTNPRM(10,"darkgreen","lightgreen"))
 
 I '$$ORDINPROGRESS D
 .I '$$NOMOD(JB) D
 ..D BTN("rbtclr",$$^%W1DICT("CLEAR"),"ClearOrder()",$$BTNPRM(10,"black"))
 .
 .D BTN("rbtcustfnd",$$^%W1DICT("FINDCUST"),"FindCustAdv()",$$BTNPRM(10,"blue"))
 .;
 D BTN("rbtcustcard",$$^%W1DICT("FULLCUSTCARD"),"CustCard()",$$BTNPRM(10,"blue"))
 .;
 I '$$ORDINPROGRESS,'$$DLVWEB^W4DLVCSR D
 .D BTN("rbtcustsys",$$^%W1DICT("CUSTOMERSSYSTEM"),"CustSyst()",$$BTNPRM(10,"blue"))
 .;
 .I $$^W4DLVCSR'=2 D
 ..D BTNSRV
 ;
 I $$CORR^W4PRM,'$$DLVWEB^W4DLVCSR(JB),$G(%ARG("LKH")) D
 .D BTN("corr",$$^%W1DICT("CORRESPONDENCE"),"Correspondence()",$$BTNPRM(10,"black","orange"))
 ;
 I '$$DLVWEB^W4DLVCSR,'$$NOMOD(JB) D
 .D BTN("rbtmisc",$$^%W1DICT("MISC"),"Misc()",$$BTNPRM(10,"black","orange"))
 ;
 ;
 I $$DLVWEB^W4DLVCSR,'$$ORDINPROGRESS D
 .D BTN("rbtmyord",$$^%W1DICT("SHOWORDERS"),"OrdersList()",$$BTNPRM(10,"brown"))
 ;
 N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 D SETMKBL
 ;
 ;
 I $$CORR^W4PRM D
 .D BTN("rbtcomm",$$^%W1DICT("CALLTO"),"CallTo()",$$BTNPRM(14,"lightgreen","darkgreen"))
 ;
 I '$$MM^W4PRM,'$$ORDINPROGRESS,$G(MKBL),$$GET1^W4LEVPR(MKBL,"MTIP"),$$^W4DLVCSR=1,'$$MSDFROM D
 .N MYDVN S MYDVN=$$^W4MYDVN
 .I '$$MSDT^W4PRM Q
 .D BTN("rbtmsd",$$^%W1DICT("TOREST"),"ToRest('"_MKBL_"')",$$BTNPRM(10,"black","orange"))
 ;
 D BTNBACK
 ;
 W " </tr>",!
 W "</table>",!
 Q
 ;
 ;
BTNSRV ;
 I $G(CODE),$D(@$$^W4GL("W4LINKI")@(CODE)) D
 .D BTN("lastorders",$$^%W1DICT("CUSTLASTORDERS"),"CustLastOrders('"_CODE_"')",$$BTNPRM(10,"BLACK","lightblue"))
 ;
 D BTN("rbtfind",$$^%W1DICT("FINDORDER"),"FindOrder()",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtmyord",$$^%W1DICT("MYORDERS"),"MyOrders('1')",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtdayord",$$^%W1DICT("DAYORDERS"),"MyOrders('0')",$$BTNPRM(10,"black","lightblue"))
 ;
 I '$$NOFUTDAT^W3PRM D
 .D BTN("rbtmrord",$$^%W1DICT("TOMORROWORDERS"),"TomorrowOrders()",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtmrord",$$^%W1DICT("COURIERSLOCATION"),"CouriersLocation()",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtsend",$$^%W1DICT("SENDORDERS"),"SendOrders()",$$BTNPRM(12,"black","yellow"))
 ;
 D BTN("rbttaw",$$^%W1DICT("TAKEAWAYORDERS"),"TakeAwayOrders()",$$BTNPRM(12,"black","yellow"))
 ;
 I $$^W4MM,'$$AUTOFAX^W4PRM D
 .D BTN("rbtmv",$$^%W1DICT("MOVEORDER2REST"),"OrdersList()",$$BTNPRM(12,"blue"))
 ;
 I $$SNDDLVKTC^W4PRM D
 .D BTN("rbttaw",$$^%W1DICT("SENDORDERS2KITCHEN"),"SendOrders2Kitchen()",$$BTNPRM(15,"black","lightgreen"))
 Q
 ;
 ;
BTNBACK ;
 D BTN("rbtback",$$^%W1DICT("BACK"),"Back2Menu()",$$BTNPRM(10,"white","red"))
 Q
 ;
ELPOS(STAM) ;
 Q $$GETP^%W1PRM("ELPOS")
 ;
TELEPHONE(STAM) ;
 I +$G(%ARG("CALLCENTER"))=.5 Q 1
 I $$DLVWEB^W4DLVCSR Q 1
 I $$TELEPHONE^W4PRM Q 1
 Q 0
 ;
CALLCENTER(STAM) ;
 I $G(%ARG("CALLCENTER")) Q %ARG("CALLCENTER")
 I $$GETP^%W1PRM("CALLCENTER") Q $$GETP^%W1PRM("CALLCENTER")
 Q $$CALLCENTER^W4PRM
 ;
 ;
SELCITY(RKV) ;
 N IRSEL S IRSEL=$$CITY^W3HZMST(JB)
 I IRSEL?.P,$G(NMB) S IRSEL=$$IR^W3L(NMB)
 I IRSEL?.P S IRSEL=$$CITYDEF^W3PRM
 S IRSEL=$$SPA^%L1FRM($TR(IRSEL,"-"," "))
 ;
 W "<select"
 W " name="""_RKV_""" id="""_RKV_""""
 W " tabindex="""_$$TABIND("CITY")_""""
 W " onChange=""SetCity(this.value);ChangeCity()"" "
 W " >",!
 ;
 W " <option>&nbsp;</option>",!
 ;
 I $$TAKEAWAY D
 .W " <option value='TAKEAWAY'"
 .   I $$TAW W " selected=""selected"""
 .W " >"_$$HDTAW_"</option>",!
 ;
 D SORTCITY
 N GLIR S GLIR=$$^W4MAIN("TMPIR")
 ;
 N N S N=.5 F  S N=$O(@GLIR@(N)) Q:N=""  D
 .N IR S IR=$G(^(N))
 .S IR=$$SPA^%L1FRM($TR(IR,"-"," "))
 .N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$H2U^%L1FRM(IR)
 .W "<option value='"_IRI_"'"
 .D
 ..I $$TAKEAWAY,$$TAW Q
 ..I $$ONLINE D
 ...I '$G(PRRG),$TR($$CITY^W3HZMST(JB,$S($G(PRRG)="R":$$^W3ORD,1:"^[$$^W3MAIN]TMPORD")),"-"," ")=$TR(IR,"-"," ") W " selected=""selected""" Q
 ...I '$D(W3MSDRG) I $G(PRRG),$TR($$IR^W3L(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"" " Q
 ...I $D(W3MSDRG) I $G(PRRG),$TR($$IR^W3R(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"" " Q
 ..;;S ^AA("IRSEL")=IRSEL
 ..I $$DLVCSR!$$TELEPHONE^W4PRM!$$MM^W4PRM D
 ...N IROK S IROK=0
 ...D
 ....I $L(IRSEL),IRSEL=IR S IROK=1 Q
 ....I $TR(IRSEL,"-"," ")=$TR(IR,"-"," ") S IROK=1 Q
 ....I $TR(IRSEL,"-"," ")["aia` lz",$TR(IR,"-"," ")["aia` lz",IRSEL'["oetv",IRSEL'["mexc",IR'["oetv",IR'["mexc" S IROK=1 Q
 ....I IRSEL="`""z",$TR(IR,"-"," ")["aia` lz" S IROK=1 Q
 ....I IRSEL="v""ly`x",$TR(IR,"-"," ")["oeivl oey`x" S IROK=1 Q
 ...I IROK W " selected=""selected""" 
 .
 .W " >"_IRI_"</option>",!
 ;
 W "</select>",!
 Q
 ;
 ;
TAW(STAM) ;
 I $$TAKEAWAY^W3HZMST(JB)!$$TAWDLV^W4PRM Q 1
 Q 0
 ;
NAME2COMP(CODE) ;
 Q $$COMP^W3PRM
 ;
CUSTHIST(LK) ; 
 N A
 S A="<table dir="""_$$^%W1DIR_""" id=""tblhist""><tr>"
 S A=A_"<td>"_$$^%W1DICT("SHOWHISTORYFROMDATE")_"</td>"
 S A=A_"<td>"_$$^W4SELDAT($$^W4DZ,365,0,"dathist")_"</td>"
 S A=A_"<td>"_$$CUSTHISTSBM_"</td>"
 S A=A_"<td>"_$$CUSTHISTBACK_"</td>"
 S A=A_"</tr></table>"
 Q A
 ;
CUSTHISTSBM(STAM) ;
 N A,TXT,ONCLICK,STYLE,DOP,ID 
 S ID="custhistsbm"
 S TXT=$$^%W1DICT("SUBMIT")
 S ONCLICK="CustHistSbm()"
 S STYLE="color:green"
 S DOP=""
 S A=$$ROUNDTB^%W1JS(ID,$G(TXT),$G(ONCLICK),$G(STYLE),$G(DOP)) ;
 Q A
 ;
CUSTHISTBACK(STAM) ;
 N A,TXT,ONCLICK,STYLE,DOP,ID 
 S ID="custhistbck"
 S TXT=$$^%W1DICT("BACK")
 S ONCLICK="CustHistBack()"
 S STYLE="color:red"
 S DOP=""
 S A=$$ROUNDTB^%W1JS(ID,$G(TXT),$G(ONCLICK),$G(STYLE),$G(DOP)) ;
 Q A
 ;
COMP(CODE,GL) ;
 I $$NAME2COMP(CODE) Q $$LKH^W4L(CODE,$G(GL))
 Q $$COMP^W4L(CODE)
 ;
HZMHPRM(STAM) ;
 Q $$HZMH^W3PRM
 ;
SHIFTSHAA(TOTIME) ;
 I TOTIME[":" S TOTIME=TOTIME*3600+($P(TOTIME,":",2)*60)
 S TOTIME=TOTIME+($$PLUSTIME^W4PRM*60)
 Q $$T^%L1TIME(TOTIME)
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 ;
CITIESTABLE(STAM) ; 
 I $D(@$$GLCITY)>9 Q 1
 Q 0
 ;
TBLCITY ;
 N GL,A,I,N S GL=$$GLCITY,I=0
 W "<br>"
 ;
 W "<table id=""tblcity"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td style=""color:red;cursor:pointer"" onClick=""CloseCity()"" >"
   W $$^%W1DICT("CLOSE")
  W "</td></tr>",!
  ;
  S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S A=$G(^(N))
  .S I=I+1
  .W "<tr id=""ctr"_I_""" style=""cursor:pointer"" >"
  . W "<td id=""ct"_I_""" onClick=""ClickTblCity('"_I_"')"" >"
  .  W $$H2U^%L1FRM(A)
  . W "</td>",!
  .W "</tr>",!
 W "</table>",!
 Q
 ;
WDTBL(STAM) ;
 Q 94 
 ;
CHKTAW(TAW) ; 
 N ST
 S ST="&nbsp;&nbsp;"_$$HDTAW
 S ST=ST_"<input type=""checkbox"" id=""taw"" "
 S ST=ST_" tabindex="""_$$TABIND("taw")_""""
 I $G(TAW) S ST=ST_" checked=""checked"" "
 S ST=ST_$$ONKEYPRESS
 S ST=ST_"onClick=""ClickTaw()"" "
 S ST=ST_">"
 Q ST
 ;
SETADR(IND) ; 
 ;;S ^AA("W3ORDDET-SETADR","IND")=IND
 S IND=$$CNWEB^%L1FRM(IND)
 D PRS^%L1FRM(IND,"CITY~STREET~HOME~FLAT~FLOOR~ENTRANCE~MIKUD","~")
 D PUT^W3HZMST(JB,"CITY",CITY)
 ;;S STREET=$$INVH^%L1FRM(STREET)
 ;;S FLOOR=$$INVH^%L1FRM(FLOOR)
 D PUT^W3HZMST(JB,"STREET",STREET)
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 D PUT^W3HZMST(JB,"MIKUD",MIKUD)
 Q 1
 ;
SETMKBL ; 
 N MYDVN S MYDVN=$$^W4MYDVN
 I $G(%ARG("MKBL")) S MKBL=%ARG("MKBL")
 I '$G(MKBL) S MKBL=$$GETP^%W1PRM("MKBL")
 I '$G(MKBL) S MKBL=$G(^[$$^W3MAIN]TMPMKBL(MYDVN))
 I $G(MKBL) D
 .D PUT^%W1PRM("MLZR",MKBL)
 .S ^[$$^W3MAIN]TMPMKBL(MYDVN)=MKBL
 Q 
 ;
NEWCUST(LKH) ; 
 I $G(LKH)="" Q 0
 N MSD S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q 0
 Q '$$FIRSTORD(LKH)
 ;
FIRSTORD(LKH) ;
 I $G(LKH)="" Q ""
 N MSD S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q ""
 Q $O(@$$^W4GL("W4LINKI")@(LKH,MSD,""))
 ;
LASTMKR(LKH) ; 
 I $G(LKH)="" Q "C"
 N MKR S MKR="C"
 I '$G(MSD) S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q "C"
 N N S N="" F  S N=$O(@$$^W4GL("W4LINKI")@(LKH,MSD,N),-1) Q:N=""  D  Q:MKR
 .S MKR=$$MKRDLV^W4HZMST(N)
 Q MKR
 ;
LASTMKR1(LKH) ; 
 Q $$^W3MKR($$LASTMKR(LKH))
 ;
TEST ;
  W "‘š� 

W3ORDDET
W3ORDDET(PRM,CODE) ; [ 23.09.26 16:56 ] [ 08.07.26 13:58 ] [ 06.07.26 12:58 ] 
 N (JB,%ARG,%REM,PRM,CODE,LKH)
 ;
 D INIT
 ;
 Q:'$G(MSD)  Q:'$G(JB)
 ;
 I $G(%ARG("PWRLNKID"))'="" D
 .D ^W4BGBODY
 .S ^PWRLNKPR(+$H,$P($H,",",2),+$G(CODE))=$G(PRM)
 .M ^PWRLNKPR(+$H,$P($H,",",2),+$G(CODE),"ARG")=%ARG
 .D PUT^%W1PRM("PWRLNKID",$G(%ARG("PWRLNKID")))
 .D PUT^W3HZMST(JB,"MKBL",$G(%ARG("MKBL")))
 .D PUT^W3HZMST(JB,"SOAD",$G(%ARG("SOAD")))
 .N NAME S NAME=$$SPA^%L1FRM($G(%ARG("MAZMIN"))),MAZMIN=NAME
 .N COMP S COMP=$$SPA^%L1FRM($G(%ARG("COMP")))
 .;;I $L(COMP) S NAME=COMP
 .D PUT^W3HZMST(JB,"NAME",$$INVH^%L1FRM(NAME))
 .D PUT^W3HZMST(JB,"KINDORD",$G(%ARG("KINDORD")))
 .D PUT^W3HZMST(JB,"MKR",$G(%ARG("MKR")))
 .D PUT^W3HZMST(JB,"DAT",$G(%ARG("DAT")))
 .D PUT^W3HZMST(JB,"SHAA",$G(%ARG("SHAA")))
 .D PUT^W3HZMST(JB,"ADSHAA",$G(%ARG("ADSHAA")))
 .D PUT^W3HZMST(JB,"COMMENT",$$INVH^%L1FRM($G(%ARG("COMMENT"))))
 .D PUT^W3HZMST(JB,"CMHD",$$INVH^%L1FRM($G(%ARG("CMHD"))))
 .;
 .I $G(CODE)="" S CODE=$$ARG("CODE")
 .I CODE D  ; -- 12/12/23
 ..S MAZMIN=$$INVH^%L1FRM($G(%ARG("MAZMIN")))
 ..S NAME=MAZMIN
 ..S PELE=$$GETPWR(CODE,"PELE") D PUT^W3HZMST(JB,"PELE",PELE)
 ..S CITY=$$GETPWR(CODE,"CITY","H") D PUT^W3HZMST(JB,"CITY",CITY)
 ..S STREET=$$GETPWR(CODE,"STREET","H") D PUT^W3HZMST(JB,"STREET",STREET)
 ..S HOME=$$GETPWR(CODE,"HOME") D PUT^W3HZMST(JB,"HOME",HOME)
 ..S FLAT=$$GETPWR(CODE,"FLAT") D PUT^W3HZMST(JB,"FLAT",FLAT)
 ..S FLOOR=$$GETPWR(CODE,"FLOOR","H") D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 ..S ENTRANCE=$$GETPWR(CODE,"ENTRANCE","H") D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 ..S FAX=$$GETPWR(CODE,"FAX") D PUT^W3HZMST(JB,"FAX",FAX)
 ..S EMAIL=$$GETPWR(CODE,"EMAIL") D PUT^W3HZMST(JB,"EMAIL",EMAIL)
 ..S MIKUD=$$GETPWR(CODE,"MIKUD") D PUT^W3HZMST(JB,"MIKUD",MIKUD)
 .
 .D SETLKH ; -- PARAMETRIM MIBAHUZ
 ;
 I $$NOMOD(JB),$G(PRM)="IN" S PRM="VW"
 ;;W "PRM="_PRM,!
 ;
 ;---------------------------- FILL ^TMPORD ----
 ;
 I $$ONLINE,'$D(^[$$^W3MAIN]TMPORD(JB)),$D(@$$^W3ORD(JB)@(JB)) D
 .M ^[$$^W3MAIN]TMPORD(JB)=@$$^W3ORD(JB)@(JB)
 ;
 D CODENMB
 ;
 D GL ; -- TMPORD
 ;
 N HOMEPRM S HOMEPRM=""
 I CODE["~" S HOMEPRM=$P(CODE,"~",2),CODE=$P(CODE,"~")
 ;
 I $$ONLINE,CODE["!",'$$NOMOD(JB) D  ; ---- NEW CUST
 .S NMB=$$SPA^%L1FRM($P(CODE,"!")),CODE=""
 .S ^[$$^W3MAIN]TMPORD(JB,"NOCODE")=""
 .I NMB["~" S NMB=$P(NMB,"~")
 .D FILL(NMB) ; ---------------- FROM ^LKHA
 .I '$$NMB^W3HZMST(JB) D
 ..S $P(^[$$^W3MAIN]TMPORD(JB),"~",1)=$TR(NMB,"-","")
 ;
 I $$ONLINE,$G(CODE)="",$$LKH^W3L(NMB)="" S CODE=$G(NMB)
 ;
 D KILL^%W3DEB("W3ORDDET")
 D PUT^%W3DEB("W3ORDDET","ARG=[%ARG & CODE=CODE & JB=JB &MSD=MSD &NMB=NMB")
 ;
 D PUT^%W1PRM("NMB",NMB)
 ;
 I $L($G(CODE))>3,$$D^W3L(CODE),$$NMB^W3HZMST(JB)?.P,'$$NOMOD(JB) D  G FORM
 .D FILLHD(CODE)
 ;
 I $$ONLINE,$$MUSTREGISTRY^W3PRM,$G(CODE),$$D^W3L(CODE) D
 .D SETLK2ORD(CODE) ; ---- ^W3L --> ^TMPORD IF MUSTREGISTRY
 ;
 ;
FORM ;
 ;------------------------------ PRM="INP" -----------
 ;
 W "<div align=""center"" >",!
 ;
 I $$ONLINE!$$CCWEBR^W4PRM D  ; --- CUSTOMER CODE
 .W "<span style=""color:"_$$FGODHD1^W3CSS_";font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">"
 . W $$^%W1DICT("FILLORDERDETAILS")
 .W "</span>",!
 .W "<br />",!
 ;
 D PADDING
 I $$DLVCSR!$$TELEPHONE!$$CCWEBR^W4PRM D KOTDLV ; --- CUSTOMER CODE
 ;
 I $$^W4TABLET=2 G TBLPHONE
 ;
 D OPTABLE W ">",!
 D
  .I $$DLVCSR!'$$^W4ELPOS,$$^W4TABLET'=1,'$$KBVRT!'$$1024^W4WDSCR D
  ..W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
  . 
  .W "<tr>"
  . S WIDTH="12%"
  . D TDNAME
  . D TDCOMP
  .W "</tr>",!
  .
  .W "<tr>"
  .  D TDTEL
  .I '$$SHORTDET^W4PRM D
  .  .N WFAX S WFAX=$$^%W1DICT("FAX")
  .  .D TD W "&nbsp;"_WFAX D TDE
  .  .W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  .  .W "<td style=""padding-right:0px"">"
  .  .D INP("FAX",120,14,"LTR")
  .  .D TDE
  . D TDPELE
  . I '$$SHORTDET^W4PRM W "</tr></table></td>"
  .W "</tr>",!
  .
  .I $$GETP^%W1PRM("TAW") G CMNT
  .
  .W "<tr>",!
  . D TDCITY
  . D TDSTREET
  .W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDHOME
  . D TDFLAT
  .W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDENTRANCE
  . D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
  . W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  . W "<td style=""padding-right:0"">" D INP("FLOOR",50,6,$$^%W1DIR) D TDE
  . D TDMIKUD
  . W "</tr></table></td>"
  .W "</tr>",!
  .
CMNT .W "<tr>",!
  .   D TDCMNT
  . W "</tr>",!
  .
  .W "<tr>",!
  .   D TDCMNTIN
  . W "</tr>",!
  .
  .I $$ELPOS,$$MSLSD^W4PRM D
  ..W "<tr>"
  .. D TDGUEST
  .. D TDTZ
  ..W "</tr>",!
  .
  .
  .I $$NOFUTDAT^W3PRM,'$$NOMOD(JB) D
  ..D DAT ; --- LO MAZIG
  ..N A S A=$$FILLTM(TODAT)
  .
  .I '$$NOFUTDAT^W3PRM D
  ..W "<tr>"
  .. D TDDAT
  .. I '$$ADSHAA^W4PRM D TDSHAA
  ..
  .. I $$ADSHAA^W4PRM D
  ... S %W1DAT("W3ORDHD")=""
  ... D TD W $$^%W1DICT("TOTIME") D TDE
  ... W "<td><table cellspacing=""0"" cellpadding=""0""><tr>"
  ... D SHAA("SHAATD","SHAA")
  ... D TD W $$^%W1DICT("ADSHAA") D TDE
  ... D TD D ADSHAA D TDE
  ... W "</tr></table></td>"
  ..W "</tr>",!
  .
  .
  .W "<tr>"
  . D TDHRA
  .W "</tr>",!
  .
  .I $$DLVCSR D
  ..
  ..I '$$KBVRT W "<tr><td colspan=""4""><hr></td></tr>",!
  ..
  ..W "<tr>"
  .. D TDHZMLAK
  .. D TDISHURIM
  ..W "</tr>",!
  ..
  ..W "<tr>",!
  .. D TDEMAIL
  .. I $$MKRDLV^W4PRM D TDRSRCH
  ..W "</tr>",!
  ..
  ..I $G(CODE),'$$KBVRT D
  ...D CRNEWMAIL^W4EMAIL(CODE_";EMAIL",3,1)
  ..
  ..;;I '$$^W4TABLET,'$$KBVRT,'$$1024^W4WDSCR W "<tr><td>&nbsp;</td></tr>",!
  ; 
  ;;I '$$ELPOS,'$$KBVRT,'$$1024^W4WDSCR W "<tr><td>&nbsp;</td></tr>",!
 ;;W "<tr><td>"_$S($$1024^W4WDSCR:"",1:"&nbsp;")_"</td></tr>",!
 W "</table>" ;
 ;
 ;
 D ORDTOT ; --- TOTORD, DISCOUNT, DMSH
 ;
 D DIVBUT
 ;
 W "</div>",!
 ;
 I $$KBVRT D ^W4KBABC
 Q
 ;
 ;
ORDTOT ;
 N ORDTOT S ORDTOT=$$^W4GETSUM(JB)
 N TOT S TOT=$P(ORDTOT,";")
 N HNH S HNH=$P(ORDTOT,";",2)
 N DMSH S DMSH=$P(ORDTOT,";",3)
 N TSHL S TSHL=$P(ORDTOT,";",5)
 I '$$KBVRT D
 .W "<table cellpadding=""0"" cellspacing=""0"" dir="""_$$^%W1DIR_""" ><tr>"
 . I $G(CODE),$G(@$$^W4GL("P1LKDM")@(CODE)) D
 .. W "<tr><td style=""font-weight:bold;color:red;text-align:center"" >"
 .. W $$^%W1DICT("CUSTOMDLVFREE")_" ! "
 .. W "</td><tr>",!
 . W "<td id=""mhmincnc"" name=""mhmincnc""></td>"
 .W "</tr></table>",!
 ;
 D OPTABLE W " >"
 ;
 W "<tr>",!
 W "<td>"_$$^%W1DICT("TOTORD")_"&nbsp;" ;_"<br />"
 W "<input type=""text"" name=""totord"" id=""idtotord"" "
  W $$ONKEYPRESS(0)
  W " onFocus=""ifrHide('MUST','ifr')"" "
  W " value="""_$J(TOT,2,2)_""" "
 W "size=6 class=""botinp"" /></td>",!
 ;
 I '$$DLVWEB^W4DLVCSR D
 .N AHUZ S AHUZ=+$$AHUZ^W4MENUBT I AHUZ S AHUZ=AHUZ_"%"
 .I 'AHUZ S AHUZ=""
 .N HNA S HNA=TOT*AHUZ*.01
 .I AHUZ,HNH-HNA>1!(HNH-HNA<-1) S AHUZ=""
 .W "<td>"_$$^%W1DICT("DISC",AHUZ)_"&nbsp;"
 .W "<input type=""text"" name=""discont"" id=""HNH"" size=7 "
 . W " value="""_$J(HNH,2,2)_""" "
 . W " class=""botinp"" style=""color:red""/>",!
 .W "</td>",!
 ;
 ;
 I $$DLVWEB^W4DLVCSR(JB) D
 .W "<td width=""15%"">"_$$^%W1DICT("DISCOUNT")_"&nbsp;"
 .W "<input type=""text"" name=""discontperc"" id=""AHUZ"" size=1"
 . W " maxlength=""2"" class=""botinp"" value="""_$$AHUZ^W3MENUBT_""" "
 . W " style=""color:darkred"" onKeyUp=""DiscPerc(this)"" "
 . W " onMouseDown=""ShowPsw('H')"" readonly=""readonly"" "
 .W "/>",!
 .
 .W "</td><td width=""10%"">"
 .
 .W " <input type=""text"" name=""discont"" id=""iddiscont"" size=6 "
 . W " class=""botinp"" style=""color:red"" "
 .W " />",!
 .W "</td>",!
 ;
 W "<td>"_$$^%W1DICT("DLVPAY")_"&nbsp;" ;_"<br />"
 W " <input type=""text"" name=""dms"" id=""DMSH"" size=5 class=""botinp"" "
   D
   .I '$$ORDINPROGRESS,$G(CODE),DMSH'["!",$$CITY^W3HZMST(JB)?.P!($$STREET^W3HZMST(JB)?.P) D
   ..I $D(@$$^W4GL("W4DMSPEC")@(CODE)) S DMSH=^(CODE) Q
   ..N CITY,STREET,HOME
   ..S CITY=$$CITY^W4L(CODE)
   ..S STREET=$$KTV^W4L(CODE)
   ..S HOME=$$BAIT^W4L(CODE)
   ..I CITY="" S CITY=$G(@$$^W4GL("P1IR")@(1))
   ..S DMSH=$$DMSHCITY^W3HZMST(JB,CODE_"^"_CITY_"^"_STREET_"^"_HOME)
   .
   .W " value="""_$J(DMSH,2,2)_$S(DMSH["!":"!",1:"")_""" "
  W "/>",!
 W "</td>",!
 ;
 W "<td>"_$$^%W1DICT("TOPAYMENT")_"&nbsp;" ;_"<br />"
  W " <input type=""text"" name=""sum"" id=""idsum"" size=6 "
  W " value="""_$J(TSHL,2,2)_""" class=""botinp"" />",!
 W "</td>",!
 ;
 I $G(CODE),$$^W4DLVCSR,$$ISCR^W4L(CODE) D
 .W "<td>"_$$^%W1DICT("ITRA")_"&nbsp;" ;_"<br />"
 .  W " <input type=""text"" name=""itra"" id=""iditra"" size=6 class=""botinp"" ",!
 .  W " readonly=""readonly"" "
 .  W " value="""_$J($$ITRA^W4L(CODE),2,2)_""" "
 . W "/>",!
 .W "</td>",!
 ;
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FILLHD(CODE) ;
 S $P(@GL@(JB),"~",1)=$S($$ONLINE:$$TELB^W3L(CODE),1:NMB)
 I '$$PWRLNK S $P(@GL@(JB),"~",2)=$$LKH^W3L(CODE)
 I $$NAME2COMP(CODE),'$$ORDINPROGRESS,'$$PWRLNK S $P(@GL@(JB),"~",2)=""
 N KTV S KTV=$$KTV^W3L(CODE)
 I KTV?1N.N S KTV=""
 S $P(@GL@(JB),"~",3)=KTV
 I $P($G(@GL@(JB)),"~",7)?.P S $P(@GL@(JB),"~",7)=$TR($$CMNT^W3L(CODE),"~\","-/")
 S $P(@GL@(JB),"~",13)=$$KOMA^W3L(CODE)
 S $P(@GL@(JB),"~",15)=$$BAIT^W3L(CODE)
 I '$$PWRLNK D
 .S $P(@GL@(JB),"~",14)=$$DIRA^W3L(CODE)
 .S $P(@GL@(JB),"~",16)=$$CNISA^W3L(CODE)
 S $P(@GL@(JB),"~",27)=$TR(CODE,"-$","")
 N IR S IR=$$IR^W3L(CODE)
 I IR["TAKEAWAY" S IR=""
 S $P(@GL@(JB),"~",31)=IR
 S $P(@GL@(JB),"~",32)=$$PELE^W3L(CODE)
 N COMP S COMP=$$COMP(CODE)
 S $P(@GL@(JB),"~",47)=COMP
 D PUT^%W1PRM("NMB",CODE)
 Q
 ;
TDNAME ;
 W "<td width="""_WIDTH_""" >"
 K WIDTH W "&nbsp;"_$$ZW_$$^%W1DICT("MAZMINNAME") D TDE
 D TD D INP("NAME","300px",55,$$^%W1DIR,"T") D TDE
 Q
 ;
TDCOMP ;
 D TD W $S($$MUSTCOMP^W3PRM:$$ZW,1:" ")_$$^%W1DICT("COMPANYNAME") D TDE
 D TD D INP("COMP","100%",45,$$^%W1DIR,"T") D TDE
 Q
 ;
TDTEL ;
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL") D TDE
 D
 .;;I $L($$TELB^W3HZMST(JB))<7 S TEL="NMB" ; -- 16/12/24
 .;;E  S TEL="TELB"; -- 16/12/24
 .S TEL="TELB"
 .D TD D INP(TEL,"120px",14,"LTR") D TDE
 Q
 ;
TDPELE ;
 S WIDTH=$S($$^%W1LNG="H":"12%",1:"16%")
 D TD W $$^%W1DICT("MOBIL") D TDE
 D TD D INP("PELE","120px",14,"LTR") D TDE
 Q
 ;
TDCITY ; 
 I $$POLYGON^W4PRM Q
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY") D TDE
 D TD D INPCT("CITY","180px",20,$$^%W1DIR,"T") D TDE
 Q
 ;
TDSTREET ;
 W "<td id=""hdstreet"" >"
  I '$$POLYGON^W4PRM W $$ZW_$$^%W1DICT("STREET")
  I $$POLYGON^W4PRM W $$ZW_$$^%W1DICT("ADDRESS")
 D TDE
 W "<td id=""tdstreet"">" D INP("STREET","70%",40,$$^%W1DIR,"T")
  I $$POLYGON^W4PRM W $$CHKTAW($$TAW)
 D TDE
 Q
 ;
TDHOME ;
 D TD W "&nbsp;"_$S($$NOMUSTHOME^W3PRM:"",1:$$ZW)_$$^%W1DICT("HOME") D TDE
 D TD D INP("HOME","50px",5,"LTR") D TDE
 Q
 ;
TDFLAT ;
 D TD W $$^%W1DICT("FLAT") D TDE
 D TD D INP("FLAT","50px",5,"LTR") D TDE
 Q
 ;
 ;
TDENTRANCE ;
 D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE") D TDE
 D TD D INP("ENTRANCE","50px",5,$$^%W1DIR) D TDE
 Q
 ;
TDFLOOR ;
 D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
 D TD D INP("FLOOR","50px",5,$$^%W1DIR) D TDE
 Q
 ;
TDMIKUD ;
 I $$SHORTDET^W4PRM D TDSP,TDSP Q
 D TD W $$NBSP^%L1FRM(5)_$$^%W1DICT("ZIP") D TDE
 D TD D INP("MIKUD","90px",9,$$^%W1DIR) D TDE
 Q
 ;
TDGUEST ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 D TD W "&nbsp;"_$$^%W1DICT("GUESTSQN") D TDE
 D TD
 I $$NOMOD(JB) D  D TDE Q 
 .I HZM,$$CLOSE^W4HZMST(HZM) D SHOWVL($$SOAD^W4HZMST(HZM)) Q 
 .D SHOWVL($$SOAD^W3HZMST(HZM))
 ;
 W "<select id=""SOAD"" ",!
  W " tabindex="""_$$TABIND("SOAD")_""""
 W ">",!
 D
 . N MAX S MAX=$$MAXMSLSD^W4PRM S:MAX<1 MAX=10
 . N K F K=1:1:MAX D
 .. W "<option value="""_K_""" "
 .. I K=$$SOAD^W3HZMST(JB) W "selected=""selected"" "
 .. W ">"_K_"</option>",!
 W "</select>",!
 D TDE
 Q 
 ;
TDTZ ;
 D TD W "&nbsp;"_$$^%W1DICT("BUSINESSID") D TDE
 D TD
 D
 .I $G(CODE),$$NOMOD(JB) D SHOWVL($$TZ^W4L(CODE)) Q 
 .
 .W "<input type=""text"" id=""TZ"" maxlength=""9"" size=""9"" "
 .I $G(CODE) W " value="""_$G(%ARG("TZ"),$$TZ^W4L(CODE))_""" "
 .W " tabindex="""_$$TABIND("TZ")_""""
 .W $$ONKEYPRESS
 .W "/>"
 D TDE
 Q
 ;
TDCMNT ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ADR") D TDE
 S SPAN=3 D TD D INP("COMMENT","89%",120,$$^%W1DIR,"T") D TDE
 Q
 ;
TDCMNTIN ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENTIN") D TDE
 ;;D INP("CMNTIN","77%",100,$$^%W1DIR,"T") D TDE
 W "<td colspan=""3"" style=""color:red;font-weight:bold"" >"
  I $G(CODE) W $$H2U^%L1FRM($$CMNTIN^W4L(CODE))
 D TDE
 Q
 ;
TDHRA ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ORD") D TDE
 S SPAN=3 D TD D INP("CMHD","89%",120,$$^%W1DIR,"T") D TDE
 Q
 ;
TDDAT ;
 D TD W "&nbsp;"_$$^%W1DICT("TODATE") D TDE
 S %W1DAT("TD")=""
 S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 S %W1DAT("W3ORDHD")=""
 W "<td><table><tr>" D DAT W "</tr></table></td>",!
 Q
 ;
TDSHAA ;
 S %W1DAT("W3ORDHD")=""
 D TD W $$^%W1DICT("TOTIME") D TDE
 D SHAA("SHAATD","SHAA")
 Q
 ;
SHAA(ID,LBL) ;
 W "<td id="""_ID_""" "_$$STYLE^%W1DIR("LTR")
 W " align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""">"
  D
  .I '$$NOMOD(JB) W $$FILLTM(TODAT),! Q
  .N VL X "S VL=$$"_LBL_"^W3HZMST(JB)"
  .I $$NOMOD(JB) D SHOWVL(VL)
 W "</td>",!
 Q
 ;
ADSHAA ;
 N ADSHAAHZ S ADSHAAHZ=$$ADSHAA^W3HZMST(JB)
 I $$NOMOD(JB) D SHOWVL(ADSHAAHZ) Q
 ;
 I $$^%W1HB D
 .D ADSHAAMN
 .W " : "
 .D ADSHAAHR
 ;
 I '$$^%W1HB D
 .D ADSHAAHR
 .W " : "
 .D ADSHAAMN
 Q
 ;
ADSHAAHR ;
 W "<select style=""background-color:yellow"" "
 W " name=""ADSHAAhr"" id=""ADSHAAhrid"" "
 W " tabindex="""_$$TABIND("ADSHAAhrid")_""""
 W $$ONKEYPRESS
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 . I I=+ADSHAAHZ W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 Q
 ;
ADSHAAMN ;
 W "<select style=""background-color:yellow"" "
 W " tabindex="""_$$TABIND("ADSHAAmnid")_""""
 W " name=""ADSHAAmn"" id=""ADSHAAmnid"" "
 W $$ONKEYPRESS
 W " >"
 ;
 F I=0:5:55 D
 .W "<option value="""_I_""""
 .I +I=+$P(ADSHAAHZ,":",2) W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 Q
 ;
TDHZMLAK ;
 D TD W $$ZWEZD("HZMLAK")_$$^%W1DICT("HZMLK") D TDE
 I $$NOMOD(JB) D SHOWVL($$HZMLAK^W3HZMST(JB)) Q
 ;
  W "<td colspan=""2"" >"
  D
  . W "<input type=""text"" "
  .  W "size=""12"" maxlength=""22"" "
  .  W " name=""HZMLAK"" id=""HZMLAK"""
  .  W " tabindex="""_$$TABIND("HZMLAK")_""""
  .  W $$ONKEYPRESS
  .  W $$INPBGCOLOR
  .  W " value="""_$$H2U^%L1FRM($$HZMLAK^W3HZMST(JB))_""""
  .  W " />"
  ;
  I $$PWRLNK^W4PRM D
  .W $$NBSP^%L1FRM($S($$1024^W4WDSCR:5,1:11))
  .W $$^%W1DICT("MKRNOM") W $$NBSP^%L1FRM(2)
  .W "<input type=""text"" "
  .W "size=""12"" maxlength=""22"" "
  .W " name=""MKRNOM"" id=""MKRNOM"""
  .W " tabindex=""13"" "
  .W $$ONKEYPRESS
  .W $$INPBGCOLOR
  .N MKRNOM S MKRNOM=$$MKRNOM^W3HZMST(JB)
  .I $G(%ARG("MKRNOM")) S MKRNOM=%ARG("MKRNOM")
  .W " value="""_$$H2U^%L1FRM(MKRNOM)_""""
  .W " />"
  D TDE
 Q
 ;
TDISHURIM ;
 I $L($G(CODE))<4 Q
 ;
 W "<td colspan=""3"" >" 
  W $$^%W1DICT("ASM")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ASM^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("ISCR")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ISCR^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("ISCH")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$ISCH^W4L(CODE):"YES",1:"NO")))
  I $$1024^W4WDSCR W "<BR>"
  I '$$1024^W4WDSCR W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("HBNOW")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($$HBNOW^W4L(CODE):"YES",1:"NO")))
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("DELIVERYFREE")_" : &nbsp;"_$$BOLD($$^%W1DICT($S($D(@$$^W4GL("P1LKDM")@(CODE)):"YES",1:"NO")))
 W "</td>"
 Q
 ;
BOLD(TXT) ;
 Q "<span style=""font-weight:bold"">"_TXT_"</span>"
 ;
TDFAX ;
 D TD W "&nbsp;"_$$^%W1DICT("FAX") D TDE
 D TD D INP("FAX",120,14,"LTR") D TDE
 Q
 ;
TDEMAIL ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N SPAN
 D TD W "&nbsp;"_$$^%W1DICT("EMAIL") D TDE
 ;
 I $$NOMOD(JB) D TD D  D TDE Q
 .I HZM>0,$$CLOSE^W4HZMST(HZM) D SHOWVL($$EMAIL^W4HZMST(HZM)) Q
 .D SHOWVL($$EMAIL^W3HZMST(JB)) Q
 ;
 I $G(CODE)="" D  Q
 .D TD S SPAN=3 D INP("EMAIL","77%",70,$$^%W1DIR,"T") D TDE
 ;
 I $G(CODE),'$$D^W4L(CODE)!($$EMAIL^W4L(CODE)="") D  Q
 .S SPAN=2 D TD D  D TDE
 ..D INP("EMAIL",400,50,$$^%W1DIR,"T")
 ;
 W "<td id=""selmail"" colspan=""2"">"
  W "<table>"
   W "<tr>"
    W "<td>"
     W $$SELMAIL^W4EMAIL(CODE,"EMAIL")
    W "</td>"
  ;
  I '$$^W4CLOSE(HZM),'$$NOMOD(JB) D
  .W "<td>"
  . D ADDMAILBUT^W4EMAIL(CODE)
  .W "</td>"
  .W "<td>"
  . D DELMAILBUT^W4EMAIL(CODE,"EMAIL")
  .W "</td>"
  .W "<td>"
  . D OPENMAIL^W4EMAIL
  .W "</td>"
  ;
   W "</tr>"
  W "</table>",! 
 W "</td>"
 Q
 ;
TDRSRCH ;
 I $$KBVRT Q
 N HZM S HZM=+$$GETP^%W1PRM("HZM") 
 W "<td >"
  W "<table width=""100%"" dir="""_$$^%W1DIR_""">",!
   W "<tr> "
    I $$DELIS^W4PRM D
    .W "<td width=""40%"">"
    . ;;W $$^%W1DICT("KIND")_"&nbsp;"
    . W "<select id=""KINDORD"" onChange=""ChangeFld()"">",!
    .  W "<option value=""C"" >"_$$^%W1DICT("CHOICEORDERKIND")_"</option>",!
    .  W "<option value=""0"" "_$$SELKO(0)_" >"_$$^%W1DICT("BUSINESS")_"</option>",!
    .  W "<option value=""1"" "_$$SELKO(1)_" >"_$$^%W1DICT("PRIVATE")_"</option>",!
    . W "</select>",!
    .W "</td>"
    ;
    I $G(CODE) D
    .W "<td>"
    .N LASTMKR S LASTMKR=$$LASTMKR(CODE)
    .
    . I $$MKRDLV^W4PRM=2 D
    .. W "<select id=""MKR1"" onChange=""ChangeFld()"" >",!
    ..  W "<option value=""C"" >"_$$^%W1DICT("CHOICEMKRDLV")_"</option>",!
    ..  N N S N="" F  S N=$O(@$$GLMKR@(N)) Q:N=""  D
    ..  .N A S A=$G(^(N))
    ..  .W "<option value="""_N_""" "
    ..  . N MKR1 S MKR1=$$MKR1^W3HZMST(JB)
    ..  . I 'MKR1,$G(%ARG("MKR1")) S MKR1=%ARG("MKR1")
    ..  . I 'MKR1,HZM>0 D
    ..  . .S MKR1=$G(@$$^W4ORD@(HZM,"MKRDLV"))
    ..  . .I MKR1>0 S @$$^W4ORD@(HZM,"MKRDLV1")=MKR1
    ..  . I MKR1=N W " selected=""selected"" "
    ...
    ..  .W ">"_$$H2U^%L1FRM(A)_"</option>",!
    .. W "</select>",!
    .
    .W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</td>",!
 Q
 ;
SELKO(VL) ;
 I $$KINDORD^W3HZMST(JB)=VL Q " selected=""selected"" "
 I $G(CODE),$$PRIVATE^W4L(CODE)=VL,'$$PWRLNK Q " selected=""selected"" "
 Q ""
 ;
TDZIP ;
 D TD W "&nbsp;"_$$^%W1DICT("ZIP") D TDE
 D TD D INP("MIKUD",60,6,"LTR") D TDE
 Q
 ;
 ;
DIVBUT ;
 W "<div align=""center"">",!
 ;
 I $$DLVCSR D DLVBUT
 ;
 I '$$DLVCSR D
 .W "<table width=""30%"" dir="""_$$^%W1DIR_""" border=0>",!
 .W " <tr>"
 .W "  <td align=""center"">",!
 .;
 .I $$ONLINE^W4DLVCSR D
 ..D ^W4BUTTON("rbtsubm",$$^%W1DICT("SUBMIT"),"TerminateOrd("_$G(JB)_")",$$BTNPRM(70,"green"))
 .
 .I $$DLVWEB^W4DLVCSR!$$CCWEBR^W4PRM D
 ..D ^W4BUTTON("rbtsubm",$$^%W1DICT("SUBMIT"),"ToOrder()",$$BTNPRM(100,"green"))
 .W "  </td>"
 .
 .
 .I $$DLVWEB^W4DLVCSR!$$CCWEBR^W4PRM,'$$ORDINPROGRESS D
 ..I '$G(CODE),$$^W4MSD($G(LKH)) D
 ... W "<td>"
 ... D ^W4BUTTON("rbtmyord",$$^%W1DICT("SHOWORDERS"),"OrdersList()",$$BTNPRM(100,"brown"))
 ...W "</td>"
 ..
 ..N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 ..D SETMKBL
 ..
 ..I $G(CODE) D
 ...W "<td>"
 ... D ^W4BUTTON("lastorders",$$^%W1DICT("CUSTLASTORDERS"),"CustLastOrders('"_CODE_"')",$$BTNPRM(100,"BLACK","lightblue"))
 ...W "</td>",!
 ..
 ..W "<td>"
 .. D ^W4BUTTON("rbtcustcard",$$^%W1DICT("FULLCUSTCARD"),"CustCard()",$$BTNPRM(100,"blue"))
 ..W "</td>"
 ..
 ..I $G(CODE)&$$POLYGON^W4PRM,'$$^W4TABLET D
 ...W "<td>"
 ... D ^W4BUTTON("rbtshowmap",$$^%W1DICT("SHOWMAPLOCATION"),"ShowMapLocation()",$$BTNPRM(100,"brown"))
 ...W "</td>"
 ..
 ..I '$$NOMOD(JB) D
 ...W "<td>" 
 ... D ^W4BUTTON("rbtclr",$$^%W1DICT("CLEAR"),"ClearOrder()",$$BTNPRM(100,"black"))
 ...W "</td>"
 .
 .N FS S FS=12
 .W "  <td align=""center"" >",!
 . D ^W4BUTTON("rbtback",$$^%W1DICT("BACK"),"Back2Menu()",$$BTNPRM(100,"red"))
 .W "  </td>"
 .;
 .I $$MUSTREGISTRY^W3PRM D
 ..W "  <td align=""center"" >",!
 .. D ^W4BUTTON("rbtupdate",$$^%W1DICT("UPDATEPROFILE"),"UpdateProfile()","color:blue;font-size:"_$$^W3FSZ(FS))
 ..W "  </td>"
 .;
 .W " </tr>",!
 .
 .I $G(CODE) D
 ..N MKRPZM S MKRPZM=$$MAGIAPIZUIM^W4HZORHD Q:'MKRPZM
 ..W "<tr><td colspan=15>"
 .. D ^W4BUTTON("rbtoizuim",$$^%W1DICT("MAGIAPIZUIM"),"ShowPizuim('"_MKRPZM_"')","color:red;font-size:"_$$^W3FSZ(18)_";width:100%")
 ..W "</td></tr>",!
 .W "</table>",!
 ;---------------------------- END BUTTONS ---
 W "</div>",!
 Q
 ;
 ;
INIT ;
 ;;M ^AA("W3ORDDET","ARG")=%ARG ; ***
 ;;S ^AA("W3ORDDET","MMCC")=$$MMCC^W4PRM
 ;;S ^AA("W3ORDDET","TELEPHONE")=$$TELEPHONE^W4PRM
 ;;S ^AA("W3ORDDET","JB")=JB
 ;
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I $G(%ARG("DLVCSR")) D PUT^%W1PRM("DLVCSR",%ARG("DLVCSR"))
 ;
 I $$TELEPHONE^W4PRM D
 .D PUT^%W1PRM("DLVCSR",2)
 .D SETMKBL
 .I $G(%ARG("MSDR0")) D PUT^%W1PRM("MSDR0",%ARG("MSDR0")),PUT^%W1PRM("MSD0",%ARG("MSDR0"))
 ;
 I $G(%ARG("MMCC")) D
 .D PUT^%W1PRM("MMCC",%ARG("MMCC"))
 .I $G(%ARG("MSD")) D PUT^%W1PRM("MSDR",%ARG("MSD"))
 ;
 S MSD=$$GETP^%W1PRM("MSD"),CODE=$G(CODE)
 I '$G(MSD),'$$TELEPHONE^W4PRM S MSD=1
 ;
 I $G(%ARG("FIRST"))=1 D
 .K ^[$$^W3MAIN]TMPORDC(JB)
 .D KILL^%W1PRM("ORDDET")
 .D KILL^%W1PRM("CURREST")
 .I $$GETP^%W1PRM("COPYORD")<0,$D(^[$$^W3MAIN]TMPCOPY(JB))#2 D
 ..S @$$^W4TMPORD=^[$$^W3MAIN]TMPCOPY(JB)
 .D KILL^%W1PRM("CUSTLASTORDS")
 .D KILL^%W1PRM("MIMUSHPZM")
 .D KILL^%W1PRM("COORD")
 .D KILL^%W1PRM("MRKTO")
 .D KILL^%W1PRM("AZRPLGN")
 .D KILL^%W1PRM("SBMORD")
 .D KILL^%W1PRM("PWRLNKID")
 ;
 I '$G(%ARG("FIRST")),'$$ORDINPROGRESS D
 .I $G(^[$$^W3MAIN]TMPORDC(JB))'="" D
 ..N TMPORDC S TMPORDC=^(JB)
 ..Q:$P(TMPORDC,"~")'=CODE
 ..S @$$^W4TMPORD=TMPORDC
 ..;;S ^AA("W3ORDDET-TMPORDC")=1
 .K ^[$$^W3MAIN]TMPORDC(JB)
 .D KILL^%W1PRM("CUSTLASTORDS")
 ;
 D KILL^%W1PRM("SRCH")
 D KILL^%W1PRM("STPAR")
 D KILL^%W1PRM("STPAR0")
 D KILL^%W1PRM("SAVEORD")
 D KILL^%W1PRM("SHID")
 D KILL^%W1PRM("MVLN")
 ;
 I $G(%ARG("CALLCENTER"))="",$G(%ARG("DLVCSR"))=2 S %ARG("CALLCENTER")=.5 ; -- 3/4/22
 ;
 I $G(%ARG("CALLCENTER"))!($G(%ARG("CALLCENTER"))=0) D
 .D PUT^%W1PRM("CALLCENTER",%ARG("CALLCENTER"))
 ;
 I $$CALLCENTER^W4PRM&($G(%ARG("FIRST"))=1) D
 .I '$G(%ARG("CODE")) S CODE=""
 .I $$CALLCENTER^W4PRM<2 D INIT^W4HZGMLZ
 ;
 I $$CALLCENTER D
 .D ^W4BGBODY
 ;
 I $$DLVWEB^W4DLVCSR,$G(%ARG("EDIT")) D
 .D INIT^W3MENU
 .S LKH=CODE
 ;
 I $G(%ARG("MSDFROM")) D
 .D PUT^%W1PRM("MSDFROM",%ARG("MSDFROM"))
 .
 .I '$$^W4MM D
 ..S:'$G(%ARG("MSDTO")) %ARG("MSDTO")=1
 ..D PUT^%W1PRM("MSD",%ARG("MSDTO"))
 ..S MSD=%ARG("MSDTO")
 .
 .D SETMKBL
 .D KILL^%W1PRM("MSDFROMSAVED")
 ;
 D PUT^%W3DEB("W3ORDDET","PRM=PRM & CODE=CODE & MSD=MSD")
 ;
 I $$POLYGON^W4PRM D
 .N NMAP S NMAP=$G(%ARG("NMAP")) S:'NMAP NMAP=1
 .I NMAP?1N.E D PUT^%W1PRM("NMAP",NMAP)
 ;
 S PRMENU=1
 S W3ORDDET=""
 ;
 I $$MUSTREGISTRY^W3PRM S %ARG("SHOW")=1
 Q
 ;
 ;
PWRLNK()
 I $G(%ARG("PWRLNKID"))'="" Q 1
 I $$GETP^%W1PRM("PWRLNKID")'="" Q 1
 Q 0
 ;
CODENMB ; --> CODE,NMB
 I CODE["$" S CODE=$TR(CODE,"$","")
 S CODE=$$SPA^%L1FRM(CODE)
 I $L($G(CODE))>3 D PUT^%W1PRM("CODE",CODE)
 I $L($G(CODE))<4 S CODE=$$GETP^%W1PRM("CODE") I CODE["UNDEF" S CODE=""
 ;
 I $L($G(CODE))>3 D PUT^W3HZMST(JB,"CODE",CODE)
 ;
 S NMB="" I $$NMB^W3HZMST(JB) S NMB=$$NMB^W3HZMST(JB)
 ;
 I 'NMB S NMB=$P(CODE,"~")
 ;;W "CODE="_CODE_"  NMB="_NMB,!
 Q
 ;
 ;
KOTDLV ;
 S KOT=$$^%W1DICT("DELIVERYDETAILS")
 N MSDKOT S MSDKOT=MSD
 I $G(%ARG("MSDFROM")),$$TELEPHONE S MSDKOT=%ARG("MSDFROM")
 S KOT=" [ "_$$H2U^%L1FRM($$MYNAME^W4KOTHSB)_" ] "_KOT
 ;
 I $$ORDER D
 .S KOT=KOT_"&nbsp;&nbsp<span style=""font-size:"_$$^W3FSZ(14)_""">"
 .S KOT=KOT_$$^%W1DICT("ORDER")_" "_$$ORDER_"</span>"
 ;
 S KOT=$$KOTTIME^W4HZGMLZ(KOT)
 S KOT("WDT")=$$WDTBL
 I '$$^W4TABLET,'$$ORDINPROGRESS,'$$KBVRT D KOT^W4SHEET(.KOT)
 ;
 W "<a id=""callid""></a>",!
 W "<table align=""center"" width="""_$$WDTBL_"%"" border=""0"" "_PADDING_" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <td style=""color:darkblue;font-weight:bold"" >&nbsp;&nbsp;"_$$^W4KOTMLZ_"</td>",!
 W "   <td width="""_$S($$1024^W4WDSCR:15,1:10)_"%"" >&nbsp;&nbsp;"_$$^%W1DICT("CODEORTEL")_"</td>",!
 ;
 W "   <td>"
  I $G(LKH)="",$$NMB^W3HZMST(JB),'$G(%ARG("FIRST")) S LKH=$$NMB^W3HZMST(JB)
 ;
  I '$$NOMOD(JB),'$$ORDEREXIST D
  .W "<div style=""display:flex"">",!
  .W "   <input type=""text"" id=""NMB"" name=""NMB"" maxlength=""14"" size=""14"" "
  .W "   tabindex=""0"" "
  .W "   value="""_$G(LKH)_""" onClick=""this.select()"" "
  .W $$INPBGCOLOR
  .W $$ONKEYPRESS
  .W " oninput=""ChangeCd()"" onChange=""TestCust('NMB');FindCust('NMB','NMB','LKH','1')"" >",!
  .I $$^W4TABLET W $$NBSP^%L1FRM(7)
  .W "     &nbsp;<img id=""filter"" src=""w3filter.jpg"" "
  .N SZ S SZ=20 I $$^W4TABLET S SZ=25
  .W " style=""height:"_$$^W4KF(SZ)_"px;width:"_$$^W4KF(SZ)_"px"" "
  .W " onClick=""NoChangeCd();TestCust('NMB');FindCust1('NMB','NMB','LKH','1')"" >",!
   ; 
  I $$NOMOD(JB)!$$ORDEREXIST D SHOWVL($$RKV("NMB"))
  W "</div>",! 
 W "   </td>",!
 ;
 I $$^W4DLVCSR=1 D
 .W "<td width=""15%"" >"
 . D
 . .N HZM S HZM=$$GETP^%W1PRM("HZM")
 . .I $$NOMOD(JB)!$$ORDINPROGRESS D  Q
 . . .I HZM>0 D SHOWVL($$^%W1DICT("ORDER")_" "_HZM) Q
 . . .W "&nbsp;"
 . .D ^W4BUTTON("lastcust",$$^%W1DICT("SHOWLASTCUST"),"ShowLastCust()","color:green;font-size:"_$$^W3FSZ(12))
 .W "</td>"
 ;
 W "</tr></table>",!
 Q
 ;
 ;
ORDER(STAM)
 Q +$$GETP^%W1PRM("HZM")
 ;
 ;
ORDEREXIST(STAM) ;
 I $$TELEPHONE Q $D(@$$^W4TMPORD)=11
 ;
 N HZM S HZM=$$ORDER
 I $D(@$$^W4ORD@(HZM))'=11 Q 0
 I '$$^W4MSL($$NMB^W4HZMST(HZM)) Q 0
 I $$GETP^%W1PRM("COPYORD")<0 Q 0
 Q 1
 ;
BTN(ID,VL,FUNC,STYLE,DOP)
 W "<td align=""center"" id="""_$G(ID)_""" onClick="""_$G(FUNC)_""" "
 W " style="""_$G(STYLE)_""">"
  W VL
 W "</td>",!
 Q
 ;
BTNPRM(WD,CLR,BGCLR)
 N PRM,FSZ
 S FSZ=$$^W3FSZ($S($$1024^W4WDSCR:$S($$^%W1HB:11,1:10),1:12)) ; 14
 I $$^W4TABLET=1,$G(@$$^W4PRM@("TABLET","FSZBTN")) S FSZ=^("FSZBTN")
 S:$G(BGCLR)="" BGCLR="white"
 I $D(W4MSDLST) S FSZ=$$^W3FSZ(12)
 S PRM="width:"_WD_"%;color:"_CLR_";font-size:"_FSZ_";font-weight:bold"
 S PRM=PRM_$S($G(BGCLR)="":"",1:";background-color:"_BGCLR)
 I $D(W4MSDLST) S PRM=PRM_";border:1px solid brown"
 S PRM=PRM_";cursor:pointer"
 Q PRM
 ;
GETDAT(STAM) ;
 N TODAT,DAT S TODAT=+$H
 N A S A=$$^W3TIME($H,$$CITY^W3HZMST(JB))
 I $D(W3TIME("ND")) S TODAT=TODAT+1
 N TOTIME S TOTIME=$$GETTIME
 S DAT=$$DAT^W3HZMST(JB)
 I DAT S TODAT=$$^%L1DC(DAT,3)
 ;;I TODAT=$$^W4DZ,TOTIME<(5*3600),$$GETP^%W1PRM("HZM")'>0 S TODAT=TODAT+1 ; -- 15/11/23 - TO COMMENT
 Q TODAT
 ;
 ;
GETTIME(STAM) ;
 N TOTIME,SHAA,TODAT S TOTIME=$H
 ;
 S TOTIME=$P($$^W3TIME($H,$$CITY^W3HZMST(JB)),",",2) ;;+300
 ;
 I '$$NOMOD(JB),$G(@$$^W4PRM@("DLVIMD")),$$SHAA^W3HZMST(JB)="" D
 .S TOTIME=$P($H,",",2)+300 K W3TIME("ND")
 ;
 I $$NOMOD(JB) D
 .S SHAA=$$SHAA^W3HZMST(JB)
 .I SHAA'?.P,SHAA'=0,SHAA'="&nbsp;" D
 ..S TOTIME=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 ;
 Q TOTIME
 ;
 ;
CHECKDAT(DT) ;
 I $D(W3TIME("ND")) Q 1
 I $G(FUTDAT),$$^%L1DC(DT,8)=6,$G(MSD)=1,$$DLVWEB^W4DLVCSR!$$ONLINE^W4DLVCSR Q 0
 ;;W $$^W3VLDDT($$^%L1DC(DT,1)),!
 Q ($$^W3VLDDT($$^%L1DC(DT,1))>0)
 ;
 ;
DAT ;
 N TXTDAT S TXTDAT="",TODAT=""
 I $$DAT^W3HZMST(JB) S TODAT=$$^%L1DC($$DAT^W3HZMST(JB),3)
 D KILL^%W1PRM("FUTDAT")
 ;
 ;;I $$NOMOD(JB)!($D(@$$^W4ORD@(+$$GETP^%W1PRM("HZM"),"CB","ASR"))>9) D  Q  ; -- 25/6/25 --> COMMENT
 I $$NOMOD(JB) D  Q  ; -- 25/6/25
 .D SHOWVL($$DAT^W3HZMST(JB))
 ;
 S FUTDAT=0
 ;
 I '$$NOMOD(JB),'TODAT D  ;
 .S TODAT=$$GETDAT
 .;;S ^AA("W3ORDDET","TODAT0")=TODAT
 .N TOTIME S TOTIME=$$GETTIME
 .;;S ^AA("W3ORDDET","TOTIME0")=TOTIME
 .;;M ^AA("W3ORDDET","W3TIME")=W3TIME
 .I $D(W3TIME("ND")) S TODAT=$H+1 K W3TIME("ND")
 .I $P(TOTIME,":")'?2N1":"2N!(TOTIME="00:00") S TOTIME=$P($H,",",2)
 .N P6 S P6=$$SHAA^W3HZMST(JB)
 .;;S ^AA("W3ORDDET","TOTIME")=TOTIME
 .;;S ^AA("W3ORDDET","P6")=P6
 .
 .I '$$CHECKDAT(TODAT) D
 ..N DT F DT=TODAT+1:1:TODAT+200 Q:$$CHECKDAT(DT)
 ..S TODAT=DT,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .;
 .I $$NMB^W3HZMST(JB) D PUT^W3HZMST(JB,"DAT",$$^%L1DC(TODAT,1))
 ;
 I $$NOFUTDAT^W3PRM Q
 ;
 S %W1DAT("CLND")="2;60"
 ;
 I $$DLVCSR D
 .S %W1DAT("CLND")="2;360"
 .S %W1DAT("KEYPRESS")=""
 .S %W1DAT("TABIND")=$$TABIND("DAT")
 ;
 I $$ONLINE S %W1DAT("CLND")="2;60"
 ;
 D ^%W1DAT("DAT",TODAT,TXTDAT)
 Q
 ;
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 I $D(SIZE) W " style=""font-size:"_SIZE_""""
 I $D(DIR) W " dir="""_DIR_""""
 W " >",!
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
TDE W "</td>",!
 Q
 ;
DATCB W "<td width=""16%"">"_$$^%W1DICT("RECEIVED")_" : "_$$RPL^%L1FRM($$DATCB^W3HZMST(JB,$G(GL,$$^W3ORD))," ","&nbsp;")_"</td>",!
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 I '$$NOMOD(JB) W $$INPUT(RKV,$G(WD),$G(SIZE),$G(DIR),$G(PRTX)) Q
 ;
 D SHOWVL($$RKV(RKV))
 Q
 ;
 ;
QUOT(SETINP) ;
 N QUOT S QUOT="'"
 I $G(SETINP)  S QUOT="\'"
 Q QUOT
 ;
 ;
INPUT(RKV,WD,SIZE,DIR,PRTX,SETINP) ;
 N ST,QUOT S QUOT=$$QUOT($G(SETINP))
 S ST="<input type=""text"" "
 I RKV'["COMMENT",$E(RKV,1,2)'="CM" S ST=ST_"maxlength="""_SIZE_""""
 S ST=ST_" style=""width:"_$$^W4KF(WD)_$S(DIR="LTR":";text-align:"_$S($G(PRTX)="T":"left",1:"center"),1:"")_""""
 S ST=ST_" dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 S ST=ST_" onMouseDown=""NoChangeCd()"""
 S ST=ST_" onKeyDown=""NoChangeCd()"""
 N PRM S PRM="" 
 I RKV="STREET" S PRM="STREET"
 S ST=ST_$$INPBGCOLOR(PRM)
 S ST=ST_$$ONKEYPRESS
 ;
 I '$$ELPOS,'$$DLVWEB^W4DLVCSR,$G(CODE),RKV'="STREET" D
 .I '$$POLYGON^W4PRM S ST=ST_" onChange=""CallTfr("_QUOT_CODE_QUOT_")"" "
 ;
 I RKV'="STREET" D
 .S ST=ST_" onClick=""noIfrHide=0;HideStreet("_QUOT_RKV_QUOT_")"
 .I RKV="HOME"!(RKV="FLAT")!(RKV="FLOOR") S ST=ST_";this.select()"
 .S ST=ST_""""
 .;
 .I RKV="HOME" S ST=ST_" onChange=""CheckHome()"""
 .;
 .I RKV="EMAIL" S ST=ST_" onKeyUp=""EnglishOnly(event,"_QUOT_"EMAIL"_QUOT_")"""
 .;
 .N VL S VL=$$RKV(RKV)
 .;;I RKV="COMMENT" S ^AA("W3ORDDET","COMMENT")=VL
 .; 
 .I RKV="NAME",$L($G(CODE)),$$CLOSED^W4L(CODE) D
 ..S VL=VL_" - "_$$^%W1DICT("CUSTCLOSED")
 .;
 .S ST=ST_" value="""_VL_""" "
 .S ST=ST_" tabindex="""_$$TABIND(RKV)_""""
 ;
 ;
 I RKV="STREET" D
 .N VL,VL1 S VL=$$RKV(RKV)
 .
 .I $$POLYGON^W4PRM,$L($G(CODE)) D
 ..N CITY S CITY=$$RKV("CITY")
 ..;;S ^AA("W3ORDDET","STREET")=VL
 ..;;S ^AA("W3ORDDET","CITY")=CITY
 ..S CITY=$$RPL^%L1FRM(CITY,"&nbsp;","")
 ..I CITY'?.P S VL=VL_", "_CITY
 .
 .I $D(SETINP) S VL1=$$RPL^%L1FRM(VL,"'","\'")
 .S VL1=$$RPL^%L1FRM(VL,"""",QUOT_QUOT)
 .I VL'?1N.N S ST=ST_" value="""_VL1_""" " S VL1=0
 .
 .I VL?1N.N S ST=ST_" value="""_VL_"""" S VL1=+VL
 .
 .S ST=ST_" tabindex="""_$$TABIND(RKV)_""""
 .
 .S ST=ST_" onChange=""ChangeStreet()"""
 .
 .I '$$POLYGON^W4PRM D
 ..N CITY S CITY=$$CITY^W3HZMST(JB,$G(GL))
 ..I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 S ST=ST_" oninput=""FindStreet(this)"""
 ;
 S ST=ST_" />"
 ;
 Q ST
 ;
 ;
INPBGCOLOR(SEL) ;
 N ST,QUOT S QUOT=$$QUOT($G(SETINP))
 N FOC S FOC="this.style.backgroundColor="_QUOT_"lightyellow"_QUOT
 I $G(SEL)="STREET",$$POLYGON^W4PRM S FOC=FOC_";this.select()"
 S FOC=FOC_";ifrHide("_QUOT_"MUST"_QUOT_","_QUOT_"ifr"_QUOT_")"
 S ST=" onFocus="""_FOC_""" "
 S ST=ST_" onBlur=""this.style.backgroundColor="_QUOT_$$BGINP^W3CSS($$COLOR^W3CSS)_QUOT_""""
 Q ST
 ;
SPANSTYLE(RKV) ;
 N ST
 S ST="<span"
 I $G(RKV)'="" S ST=ST_" id='"_RKV_"' name='"_RKV_"'"
 I $D(W3ORDHD("SPANSTYLE")) S ST=ST_" style="""_W3ORDHD("SPANSTYLE")_""""
 E  I $D(SPANSTYLE) S ST=ST_" style="""_SPANSTYLE_""""
 I $D(DIR) S ST=ST_" dir="""_DIR_""""
 S ST=ST_">" K DIR,SPANSTYLE
 Q ST
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 N SEL S SEL=""
 ;
 D PUT^%W3DEB("W3ORDDET","INPCT-RKV=RKV& INPCT-WD=WD& INPCT-SIZE=SIZE& INPCT-DIR=DIR& INPCT-PRRG=PRRG")
 ;
 I '$$NOMOD(JB) D
 .I $$CITIESTABLE=1 D SELCITY(RKV)
 .
 .I $$CITIESTABLE'=1 D
 ..W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_$$^W4KF(WD)_";"
 ..W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 ..W " dir="""_$$^%W1DIR_""""
 ..N VL S VL=$$RPL^%L1FRM($$RKV(RKV),"""","''")
 ..W " name="""_RKV_""" id="""_RKV_""" value="""_VL_""""
 ..W " tabindex="""_$$TABIND("CITY")_""""
 ..W " onInput=""GetId('taw').checked=false"" "
 ..W " onChange=""ChangeCity();"_$$LOADBT_""" "
 ..I $$CITIESTABLE'=2 W $$ONKEYPRESS
 ..I $$CITIESTABLE=2 D
 ...I '$$^W4TABLET W " OnKeyPress=""KeyPressCity(event,this)"" "
 ...I $$^W4TABLET W " OnKeyPress=""KeyPressCity(event,this,'',10)"" "
 ...W " onClick=""this.select()"" "
 ..W " onFocus=""clearMenu()"" >",!
 .;
 .I $$TAKEAWAY,'$$^W4SMALL,'$D(W3MSDRG) W $$CHKTAW($$TAW)
 .;
 .I $$TAKEAWAY,$$^W4SMALL,'$D(NOTAKEAWAY),'$D(MSDRG) D
 ..W "<br><br><input type=""button"" id=""taw"" value="""_$$HDTAW_""""
 ..W " style=""color:grey"
 ..I $$^W4SIMUL W ";font-size:"_$$^W3FSZ(12)
 ..W """"
 ..W " onClick=""TakeAway()"" >"
 ;
 I $$NOMOD(JB) D SHOWVL($$RKV("CITY"))
 ;
 Q
 ;
 ;
SHOWVL(VL) I $G(VL)="" S VL="&nbsp;"
 W "<font style=""font-weight:bold"">"_VL_"</font>",!
 Q
 ;
RKV(RKV)
 I $G(RKV)="" Q "&nbsp;"
 N VL S VL=""
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 ;
 ;;I RKV="CMNTIN" Q $S($G(CODE)="":"",1:$$H2U^%L1FRM($$CMNTIN^W4L(CODE)))
 ;
 I RKV="TELB" D  Q VL
 .I $L($$TELB^W3HZMST(JB))>6 S VL=$$TELB^W3HZMST(JB) Q
 .I $G(CODE),$$TELEPHONE^W4PRM,$$TELB^W3L(CODE) S VL=$$TELB^W3L(CODE) Q
 .I $G(CODE),$$DLVCSR,$$TELB^W4L(CODE) S VL=$$TELB^W4L(CODE) Q
 .I $G(CODE) S VL=CODE
 ;
 I RKV="TELB" S RKV="NMB"
 ;
 S @("VL=$$"_RKV_"^W3HZMST("_JB_","""_GL_""")")
 ;
 D PUT^%W3DEB("W3ORDDET-RKV","RKV=RKV & VL=VL & CODE=CODE")
 ;
 I RKV="HOME",$G(HOMEPRM) S HOME=HOMEPRM
 I RKV="CITY",VL="TAKEAWAY",'$$POLYGON^W4PRM S VL=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY","")
 I RKV="CITY",VL="TAKEAWAY",$$POLYGON^W4PRM,'$$ORDINPROGRESS S VL=""
 ;
 I VL=""!(VL="-"),$G(CODE),$$DLVCSR,'$$NOMOD(JB),'$$ORDINPROGRESS,'$G(%ARG("MULTYADR")) D
 .I $$GETP^%W1PRM("DLVCSR")=2
 .S VL=$$GETVL(CODE,RKV)
 ;
 I VL'="" Q $$H2U^%L1FRM(VL)
 Q "&nbsp;"
 ;
 ;
GETVL(CODE,RKV) ;
 N VL S VL=""
 I RKV="NAME",'$$NAME2COMP(CODE) S VL=$$LKH^W4L(CODE)
 I RKV="NAME",$$NAME2COMP(CODE) S VL=$$NAME^W3HZMST(JB)
 ;
 I RKV="COMP" D
 .S VL=$$COMP(CODE)
 ;
 I RKV="NMB" S VL=$$TELB^W4L(CODE)
 I RKV="PELE" S VL=$$PELE^W4L(CODE)
 I RKV="CITY" S VL=$$CITY^W4L(CODE)
 I RKV="STREET" S VL=$$KTV^W4L(CODE)
 I RKV="HOME" S VL=$$BAIT^W4L(CODE)
 N HM S HM=($$HOME^W3HZMST(JB)="")
 I RKV="FLAT",'HM S VL=$$DIRA^W4L(CODE)
 I RKV="ENTRANCE",'HM S VL=$$CNISA^W4L(CODE)
 I RKV="FLOOR",'HM S VL=$$KOMA^W4L(CODE)
 I RKV="COMMENT" S VL=$$CMNT^W4L(CODE)
 I RKV="FAX" S VL=$$FAX^W4L(CODE)
 I RKV="EMAIL" S VL=$$EMAIL^W4L(CODE)
 I RKV="MIKUD" S VL=$$MIKUD^W4L(CODE)
 Q VL
 ;
 ;
P(I)
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 I $P($G(@GL@(JB)),"~",I)'="" Q $$H2U^%L1FRM($TR($P(@GL@(JB),"~",I),"?",""))
 Q ""
 ;
GETSNIF(STAM) ;
 Q $$GETSNIF^W3SNIF
 ;
ET W "</table>",!
 I '$G(W3FAXHTM) W "</div>",!
 Q
 ;
FILL(NMB) ;
 I $G(JB),'$G(CODE),$L($G(NMB))>3,$$NMB^W3HZMST(JB)=""!($$NAME^W3HZMST(JB)="") D
 .N EXIST S EXIST=0
 .I $$D^W3L(NMB) D EXIST
 .N NMB1 S NMB1=$TR(NMB,"-","") Q:NMB1=""
 .I EXIST D HOMEPRM(NMB1) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .
 .N GL,GLTMP S GL=$$GLA^W3L
 .
 .I '$$D^W3L(NMB1,GL),$G(@$$^W4GL("LKHAT")@(NMB1)) D
 ..S NMB1=@$$^W4GL("LKHAT")@(NMB1)
 ..I NMB1 D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 .
 .I '$$D^W3L(NMB1,GL),$$^%W1LNG="H" D
 ..I $E(NMB1,1,2)="02" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="03" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="04" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="08" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="09" S NMB1=$E(NMB1,3,12) Q
 .
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .I '$$D^W3L(NMB1,GL) D HOMEPRM(NMB1) Q
 .I $G(HOMEPRM)?1N.N,+$$BAIT^W3L(NMB1,GL)'=+HOMEPRM D HOMEPRM(NMB1) Q
 .
 .D SETLK2ORD(NMB1,GL)
 Q
 ;
 ;
SETLK2ORD(NMB1,GL)
 S GL=$G(GL)
 S $P(@$$^W3TMPORD@(JB),"~",1)=$$TELB^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",2)=$$LKH^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",3)=$$KTV^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",7)=$$CMNT^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",13)=$$KOMA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",14)=$$DIRA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",15)=$$BAIT^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",16)=$$CNISA^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",31)=$$IR^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",32)=$$PELE^W3L(NMB1,GL)
 S $P(@$$^W3TMPORD@(JB),"~",47)=$$COMP(NMB1,GL)
 Q
 ;
EXIST ;
 W "<script>",!
 W " MsgA(""PHONEOFMEMBER"")",!
 W "</script>",!
 S EXIST=1 Q
 ;
TODAY(DAT) ;
 I $$^%L1DC(DAT,3)=+$H Q 1
 Q 0
 ;
HOMEPRM(NMB1) ;
 I $G(HOMEPRM) S $P(^[$$^W3MAIN]TMPORD(JB),"~",15)=HOMEPRM
 I $$GETP^%W1PRM("CODE")="",$G(NMB1) D
 .D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 Q
 ;
OPTABLE ;
 D PADDING
OPTABLE1 ;
 W "<table border=""0"" "_PADDING
 W " style=""width:"_$$WDTBL_"%;border:solid;border-color:gray;border-width:1px;"
  W " margin:"_$$^W4KF(12)_"px;background-color:white;color:black"
  W ";"_$$GRAD^W3CSM("#EFEFEF","#FFFFFF")
 W """ dir="""_$$^%W1DIR_""""
 I $G(PRM)="IN" W " onClick=""HideStreet('table')"""
 I $G(W3FAXHTM) W " style=""font-size:"_$$^W3FSZ_";"""
 Q
 ;
PADDING ;
 S PADDING="" I $$DLVCSR S PADDING=" class=""compr"""
 Q
RWSTYLE ;
 Q
 ;
NEWORD(JB) ;
 I $D(@$$^W3ORD(JB)@(JB)) Q 0
 I '$D(^[$$^W3MAIN]TMPORD(JB)) Q 1
 I $D(^[$$^W3MAIN]TMPORD(JB))>9 Q 0
 N NEO S NEO=1
 ;;N I F I=1:1:$L(^(JB)) I $P(^[$$^W3MAIN]TMPORD(JB),"~") S NEO=0 Q
 I $P(^(JB),"~",1,3)'?.P S NEO=0
 Q NEO
 ;
SUBMIT ;
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q " "
 Q "<span style=""color:red"">*</span>"
 ;
ADDRESS ;
 S:'$D(GL) GL=""
 N KTV
 S KTV=$$H2U^%L1FRM($$KTV^W3HZMST(JB,GL))
 W "<td align='"_$S($$^%W1DIR="RTL":"right",1:"left")_"'"
 I $D(WIDTH) W "width="""_WIDTH_""""
 W "' >&nbsp;&nbsp;"_$$^%W1DICT("ADDR")_" : <span>"_KTV_"</span></td>",!
 K WIDTH Q
 ;
 ;
FILLTM(TODAT) ;
 N TOTIME,SHAA
 S TOTIME=$$GETTIME ; -- 5N
 ;;W "TOTIME0="_TOTIME,!; ***
 D PUT^%W3DEB("W3ORDDET-FILLTM","TOTIME0=TOTIME")
 ;
 I TODAT'?5N S TODAT=$$^%L1DC(TODAT,3)
 I '$G(MSD) S MSD=$$GETP^%W1PRM("MSD")
 I $$DLVWEB^W4DLVCSR,$$GETP^%W1PRM("MRKTO") S MSD=$$GETP^%W1PRM("MRKTO")
 D PUT^%W3DEB("W3ORDDET-FILLTM","TODAT=TODAT")
 ;
 N CHKTIME S CHKTIME=$$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))
 D PUT^%W3DEB("W3ORDDET-FILLTM","CHKTIME=CHKTIME")
 ;
 ;;W "1: MSD="_MSD_"  CHKTIME="_CHKTIME_"  TOTIME="_TOTIME,! ; ***
 I $G(TODAT),$G(MSD),CHKTIME=-2 D  ; VR < NIJ DIAP
 .S TOTIME=$$DP1^W3VLDTM(MSD,$ZD(TODAT,"DD.MM.YY"))
 ;
 N TOSHAA S TOSHAA=$$SHAA^W3HZMST(JB)
 ;
 I '$$NOMOD(JB),$$NMB^W3HZMST(JB),$$SHAA^W3HZMST(JB)=""!($$SHAA^W3HZMST(JB)="00:00") D
 .D PUT^W3HZMST(JB,"SHAA",$$T^%L1TIME(TOTIME))
 ;
 D PUT^%W3DEB("W3ORDDET-FILLTM","TOTIME=TOTIME")
 ;
 I $$NOFUTDAT^W3PRM Q $$T^%L1TIME(TOTIME)
 ;
 N FROMHR,FROMMIN
 S (FROMHR,FROMMIN)=0
 ;
 N SHAAHZ S SHAAHZ=$$SHAA^W3HZMST(JB)
 ;;W "SHAAHZ="_SHAAHZ,!; ***
 I SHAAHZ'?.P,SHAAHZ'="00:00",SHAAHZ'="" D
 .S TOTIME=$$SHAA^W3HZMST(JB)
 ;
 ;;W "TOTIME1="_TOTIME,! ; ***
 I TOTIME[":" D
 .;;W "LV5",! ; ***
 .S FROMHR=$TR($P(TOTIME,":")," ",""),FROMMIN=$P(TOTIME,":",2)
 ;
 I TOTIME?1N.N D
 .;;W "LV6",! ; ***
 .S FROMHR=$P($$T^%L1TIME(TOTIME),":"),FROMMIN=$P($$T^%L1TIME(TOTIME),":",2)
 ;
 ;;W "2: TOTIME2="_TOTIME_"  FROMHR="_FROMHR_"  FROMMIN="_FROMMIN,! ; ***
 ;
 D PUT^%W3DEB("W3ORDDET","TODAT=TODAT & TOTIME=TOTIME & FROMHR=FROMHR & FROMMIN=FROMMIN")
 ;
 ; --------------------------- SELECT HOUERS
 S TDTM="<select style=""background-color:yellow"" "
 S TDTM=TDTM_" name=""SHAAhr"" id=""SHAAhrid"" "
 S TDTM=TDTM_" tabindex="""_$$TABIND("SHAAhrid")_""""
 S TDTM=TDTM_$$ONKEYPRESS
 S TDTM=TDTM_" onChange=""OnChangeHouer('"_$G(CODE)_"')"" >"
 ;
 N MESHAA,ADSHAA
 S MESHAA=$$DP1^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 S ADSHAA=$$DP2^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 ;;W "ADSHAA0="_ADSHAA,! ; ***
 S MEMIN=0
 ;
 ;;W "TOSHAA="_TOSHAA,! ; ***
 I +TODAT=+$H,$$T^%L1TIME($H)>MESHAA S MESHAA=+$$T^%L1TIME($H)
 ;
 I TODAT=($H+1),TOSHAA=""!(TOSHAA=":") D
 .I $$NDTNTM^W4PRM,'$$NOCHNTM D  Q
 ..S FROMHR=-1
 ..S TDTM=TDTM_"<option value="""_FROMHR_""" selected=""selected""></option>"
 .S TOSHAA=MESHAA ;
 ;
 I TODAT-$H>1,TOSHAA=""!(TOSHAA=":") D
 .S FROMHR=-1
 .S TDTM=TDTM_"<option value="""_FROMHR_""" selected=""selected""></option>"
 ;
 N I F I=MESHAA:1:ADSHAA D
 .I $$^W4LIMHR(TODAT,I) Q
 .N I1 S I1=I I I1>23 S I1=I1-24
 .S TDTM=TDTM_"<option value="""_I1_""""
 .;;W "FROMHR="_FROMHR_"  MESHAA="_MESHAA,! ; ***
 .I FROMHR<MESHAA&(FROMHR>5),+I=+MESHAA S TDTM=TDTM_" selected=""selected"" "
 .E  I +I1=+FROMHR!(+I1=0&(FROMHR=24))!(I1=24&(+FROMHR=0)) D
 ..S TDTM=TDTM_" selected=""selected"" "
 .S TDTM=TDTM_" >"_$TR($J(I1,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select> : "
 ;
 ;------------------------------------- SELECT MINUTES --------------------
 N OST S OST=(FROMMIN#5)
 S FROMMIN=(FROMMIN\5+$S(OST>2:1,1:0))*5
 ;
 S TDTM=TDTM_"<select style=""background-color:yellow"" "
 S TDTM=TDTM_" tabindex="""_$$TABIND("SHAAmnid")_""""
 S TDTM=TDTM_" name=""SHAAmn"" id=""SHAAmnid"" "
 S TDTM=TDTM_$$ONKEYPRESS
 I '$$ELPOS S TDTM=TDTM_" onChange=""CallTfr('"_$G(CODE)_"')"" >"
 I $$ELPOS D
 .S TDTM=TDTM_" onChange=""OnChangeHouer('"_$G(CODE)_"')"" >"
 ;
 I TODAT-$H>1,'$$P(6),'$$NOCHNTM D
 .S FROMMIN=0
 .S TDTM=TDTM_"<option value=""-1"" selected=""selected""></option>"
 ;
 N STEP S STEP=1
 I $G(@$$^W4PRM@("STEPMNT")) S STEP=^("STEPMNT")
 ;
 F I=0:STEP:59 D
 .S TDTM=TDTM_"<option value="""_I_""""
 .I +I=+FROMMIN S TDTM=TDTM_" selected=""selected"""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select>"
 ;
 S ^AA("W3ORDDET","TDTM")=TDTM
 Q TDTM
 ;
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
MUSTSTREET(CITYI) ;
 I $$^W3HZMH(JB) Q 0
 I $$MUSTSTREET^W3PRM Q 1
 I $G(CITYI)="" Q 0
 S CITYI=$$CLR(CITYI)
 I $G(CITYI)="" Q 0
 I $G(@$$^W4GL("W3AZR")@($$COUNTRY^W3AZRIDK,CITYI)) Q 1
 Q 0
 ;
CHKHOME(PRM) ;
 N CITYI S CITYI=$$CLR($P(PRM,":")) I CITYI="" Q 0
 N STREETI S STREETI=$$CLR($P(PRM,":",2))
 N HOME S HOME=$$CLR($P(PRM,":",3))
 N COUNTRY S COUNTRY=$$COUNTRY^W3AZRIDK I COUNTRY="" S COUNTRY="IS"
 N GL S GL=$$^W4GL("W3AZS")_"(COUNTRY,CITYI)"
 N IND S IND=""
 N OK S OK=1
 ;
 F  S IND=$O(@GL@(IND)) Q:IND=""  D  Q:'OK
 .N A S A=IND
 .N STR S STR=$$SPA^%L1FRM($P(A,":"))
 .N MEHOME S MEHOME=$$SPA^%L1FRM($P(A,":",2))
 .N ADHOME S ADHOME=$$SPA^%L1FRM($P(A,":",3))
 .I STREETI=STR,HOME<MEHOME!(HOME>ADHOME) D
 ..S OK="0:"_MEHOME_":"_ADHOME
 ;
 Q OK
 ;
 ;
CLR(TXT) ;
 Q $$SPA^%L1FRM($$CLEAR^%L1FRM($$CNWEB^%L1FRM(TXT)))
 ;
DLVCSR(STAM) ;
 I $G(%ARG("DLVCSR")) Q (%ARG("DLVCSR")=1)
 N HZM S HZM=$$GETP^%W1PRM("HZM") I $$HZM^W4MSL(HZM),$$^W4ELPOS Q 1
 Q ($$GETP^%W1PRM("DLVCSR")=1)
 ;
ONLINE(STAM) ;
 I $$GETP^%W1PRM("DLVCSR")="WEB" Q 1
 Q 0
 ;
NOMOD(JB) ;
 I $G(PRM)="VW" Q 1
 Q $$NOMOD1(JB)
 ;
NOMOD1(JB)
 I $G(%ARG("EDIT")) Q 0
 I $G(%ARG("SHOW")) Q 1
 I $$DLVCSR,$$PSL^W3HZMST(JB) Q 1
 I '$$DLVCSR,$$CLOSE^W3HZMST(JB) Q 1
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0,$$CLOSE^W4HZMST(HZM) Q 1
 I HZM>0,$$WASZ^W4ORDVFN(HZM) Q 1
 I HZM>0,$$DONE^W4ORDVFN(HZM) Q 1
 Q 0
 ;
 ;
SORTCITY ;
 N IR,IRI,TMPIR,A
 S TMPIR=$$^W4MAIN("TMPIR")
 K @TMPIR
 N N,I S N=.9 F I=1:1 S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""
 N SORT S SORT=$$SORTCITY^W3PRM
 I SORT=""!(I>30) S SORT=1
 I 'SORT D  Q
 .N N S N=.1 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..S A=$G(^(N)) Q:A=""
 ..S @TMPIR@(N)=A
 ;
 N N S N=.1 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 .S IR=$G(^(N)) Q:IR=""  Q:IR
 .S IRI=$$INVH^%L1FRM(IR)
 .S @TMPIR@(IRI)=IR
 Q
 ;
 ;
NEWMIN(PRM) ;
 D PUT^%W3DEB("W3ORDDET-NEWMIN","PRM=PRM")
 N TODAT,HR
 S TODAT=$P(PRM,";")
 S HR=$P(PRM,";",2)
 S MSD=$$GETP^%W1PRM("MSD") I 'MSD Q "<PUSTO>"
 N DP2 S DP2=$$DP2^W3VLDTM(MSD,TODAT)
 D PUT^%W3DEB("W3ORDDET-NEWMIN","DP2=DP2")
 N LASTMIN,MEMIN
 S LASTMIN=55
 I +HR=+DP2 D
 .S LASTMIN=$P(DP2,":",2)
 ;
 N I,TDTM S TDTM="",MEMIN=0
 ;
 F I=0:1:LASTMIN D
 .S TDTM=TDTM_"<option value="""_I_""""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 Q TDTM
 ;
NEWDAT(PRM) ;
 D PUT^%W3DEB("W3ORDDET-NEWDAT","PRM=PRM")
 N TODAT,HR,DT
 S TODAT=$P(PRM,";")
 S HR=$P(PRM,";",2)
 S DT=$$^%L1DC(TODAT,3)
 I DT=$$^W4DZ,HR!$P(HR,":",2)!(HR?2N1":"2N),HR<$$T^%L1TIME($H) S TODAT=$ZD(DT+1,"DD.MM.YY")
 Q TODAT
 ;
TAKEAWAY(STAM) ;
 I '$$NOTAKEAWAY^W3PRM Q 1
 Q 0
 ;
HDTAW(STAM) ;
 Q $S($$ONLINE^W4DLVCSR:$$^%W1DICT("TAKEAWAY"),1:$$^%W1DICT("TAKEAWAY!"))
 ;
 ;
TAWMSG ;
 W "<tr><td colspan=""4"" "
 W "style=""background-color:white;color:red;text-align:center;font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("TAKEYOURHKORDER")
 W "</td></tr>",!
 Q
 ;
TABIND(RKV) ;
 N TI S TI=0
 D
 .I RKV="NAME" S TI=1 Q
 .I RKV="COMP" S TI=2 Q
 .I RKV="TELB" S TI=3 Q
 .I RKV="FAX" S TI=4 Q
 .I RKV="PELE" S TI=5 Q
 .I RKV="CITY" S TI=6 Q
 .;;I RKV="taw" S TI=7 Q
 .I RKV="STREET" S TI=8 Q
 .I RKV="HOME" S TI=9 Q
 .I RKV="FLAT" S TI=10 Q
 .I RKV="ENTRANCE" S TI=11 Q
 .I RKV="FLOOR" S TI=12 Q
 .I RKV="MIKUD" S TI=13 Q
 .I RKV="COMMENT" S TI=14 Q
 .I RKV="SOAD" S TI=15 Q
 .I RKV="TZ" S TI=16 Q
 .I RKV="DAT" S TI=17 Q
 .I RKV="SHAAhrid" S TI=18 Q
 .I RKV="SHAAmnid" S TI=19 Q
 .I RKV="ADSHAAhrid" S TI=20 Q
 .I RKV="ADSHAAmnid" S TI=21 Q
 .I RKV="CMHD" S TI=22 Q
 .I RKV="HZMLAK" S TI=23 Q
 .I RKV="EMAIL" S TI=24 Q
 ;
 Q TI
 ;
ZWEZD(RKV) ;
 Q " "
 ;
SHORT(STAM) ;
 I $G(@$$^W4PRM@("DLVSHORT")) Q 1
 Q 0
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q
 ;
ONKEYPRESS(STAM) ;
 N ST S ST=" onKeyPress=""OnKeyPress(event,this)"" "
 ;;I $G(STAM)'=0 S ST=ST_"onFocus=""OnFocus(this)"" "
 Q ST
 ;
SETFLAG(CUST) ;
 S A=$$BUSY^W4KLFL(CUST)
 I A Q "BUSY;"_A
 D SET^W4KLFL(CUST)
 Q 1
 ;
MSDFROM(STAM) ;
 I $G(%ARG("MSDFROM")) Q 1
 I $$GETP^%W1PRM("MSDFROM") Q 1
 Q 0
 ;
KILLCC ;
 D KILL^%W1PRM("MSDFROM")
 I $$CALLCENTER^W4PRM=1 D KILL^%W1PRM("MSD")
 I $$MMCC^W4PRM!$G(%ARG("MMCC")) D IN^W4HZGMLZ
 D KILL^%W1PRM("MSDFROMSAVED")
 N NMB S NMB=$$GETP^%W1PRM("NMB") I NMB D ^W4KLFL(NMB)
 Q
 ;
ORDINPROGRESS(STAM)
 I $D(@$$^W4TMPORD)=1,$D(^[$$^W3MAIN]TMPCOPY(JB))=11 Q 1
 I $D(@$$^W4TMPORD)<11 Q 0
 Q 1
 ;
 ;
OPTBLBUT ;
 S CPAD=10 I $$^W4TABLET=1,$G(@$$^W4PRM@("TABLET","PAD2")) S CPAD=^("PAD2")
 S FSZ=14 I $$1024^W4WDSCR S FSZ=12
 W "<table id=""TblBut"" class=""tblbut"" dir="""_$$^%W1DIR_""" border=""0"" width="""_$$WDTBL_"%"" cellpadding="""_CPAD_""" "
 W " style=""font-size:"_$$^W3FSZ(FSZ)_""" "
 W ">",!
 Q
 ;
 ;
DLVBUT ;
 N CPAD,FSZ
 ;
 D OPTBLBUT
 W " <tr style=""cursor:pointer"" >"
 ;
 I '$$NODLVORD^W4PRM D
 .I $$NOMOD(JB) Q
 .I '$$ORDINPROGRESS S BTNM="NEWORD"
 .I $$ORDINPROGRESS S BTNM="SUBMIT"
 .I '$$VVMSK^W4PRM D BTN("rbtsubm",$$^%W1DICT(BTNM),"ToOrder()",$$BTNPRM(15,"white","green"))
 .I $$HZMHPRM,'$$ORDINPROGRESS,'$$MM^W4PRM D
 ..D BTN("rbthzmh",$$^%W1DICT("HZMH"),"ToPriceOffer()",$$BTNPRM(10,"darkgreen","lightgreen"))
 ;
 I $$NODLVORD^W4PRM,$$HZMHPRM D
 .I $$NOMOD(JB) Q
 .I '$$ORDINPROGRESS S BTNM="ORDERIT"
 .I $$ORDINPROGRESS S BTNM="SUBMIT"
 .D BTN("rbthzmh",$$^%W1DICT(BTNM),"ToPriceOffer()",$$BTNPRM(10,"darkgreen","lightgreen"))
 
 I '$$ORDINPROGRESS D
 .I '$$NOMOD(JB) D
 ..D BTN("rbtclr",$$^%W1DICT("CLEAR"),"ClearOrder()",$$BTNPRM(10,"black"))
 .
 .;;I '$$^W4TABLET D BTN("rbtcustfnd",$$^%W1DICT("FINDCUST"),"FindCustAdv()",$$BTNPRM(10,"blue"))
 .D BTN("rbtcustfnd",$$^%W1DICT("FINDCUST"),"FindCustAdv()",$$BTNPRM(10,"blue"))
 .;
 D BTN("rbtcustcard",$$^%W1DICT("FULLCUSTCARD"),"CustCard()",$$BTNPRM(10,"blue"))
 ;
 I '$$ORDINPROGRESS,'$$DLVWEB^W4DLVCSR,'$$^W4TABLET,'$$KBVRT D
 .D BTN("rbtcustsys",$$^%W1DICT("CUSTOMERSSYSTEM"),"CustSyst()",$$BTNPRM(10,"blue"))
 ;
 I $$^W4TABLET=2 D
 .D BTNSEND 
 .W "</tr></table>",!
 .D OPTBLBUT
 ;
 I '$$ORDINPROGRESS,'$$DLVWEB^W4DLVCSR,$$^W4DLVCSR'=2 D BTNSRV
 ;
 I $$CORR^W4PRM,'$$DLVWEB^W4DLVCSR(JB),$G(%ARG("LKH")) D
 .D BTN("corr",$$^%W1DICT("CORRESPONDENCE"),"Correspondence()",$$BTNPRM(10,"black","orange"))
 ;
 I '$$DLVWEB^W4DLVCSR,'$$NOMOD(JB) D
 .D BTN("rbtmisc",$$^%W1DICT("MISC"),"Misc()",$$BTNPRM(10,"black","orange"))
 ;
 ;
 I $$DLVWEB^W4DLVCSR,'$$ORDINPROGRESS D
 .D BTN("rbtmyord",$$^%W1DICT("SHOWORDERS"),"OrdersList()",$$BTNPRM(10,"brown"))
 ;
 N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 D SETMKBL
 ;
 ;
 I $$CORR^W4PRM D
 .D BTN("rbtcomm",$$^%W1DICT("REMINDER"),"CallTo()",$$BTNPRM(14,"lightgreen","darkgreen"))
 ;
 I '$$MM^W4PRM,'$$ORDINPROGRESS,$G(MKBL),$$GET1^W4LEVPR(MKBL,"MTIP"),$$^W4DLVCSR=1,'$$MSDFROM D
 .N MYDVN S MYDVN=$$^W4MYDVN
 .I '$$MSDT^W4PRM Q
 .D BTN("rbtmsd",$$^%W1DICT("TOREST"),"ToRest('"_MKBL_"')",$$BTNPRM(10,"black","orange"))
 ;
 D BTNBACK
 ;
 W " </tr>",!
 W "</table>",!
 Q
 ;
 ;
BTNSRV ;
 I $G(CODE),$D(@$$^W4GL("W4LINKI")@(CODE)) D
 .D BTN("lastorders",$$^%W1DICT("CUSTLASTORDERS"),"CustLastOrders('"_CODE_"')",$$BTNPRM(10,"BLACK","lightblue"))
 ;
 D BTN("rbtfind",$$^%W1DICT("FINDORDER"),"FindOrder()",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtmyord",$$^%W1DICT("MYORDERS"),"MyOrders('1')",$$BTNPRM(10,"black","lightblue"))
 ;
 D BTN("rbtdayord",$$^%W1DICT("DAYORDERS"),"MyOrders('0')",$$BTNPRM(10,"black","lightblue"))
 ;
 I '$$NOFUTDAT^W3PRM D
 .D BTN("rbtmrord",$$^%W1DICT("TOMORROWORDERS"),"TomorrowOrders()",$$BTNPRM(10,"black","lightblue"))
 ;
 I $$LKWEEK^W4PRM D
 .D BTN("rbttaw",$$^%W1DICT("WEEKORDERS"),"WeekOrders()",$$BTNPRM(15,"black","lightblue"))
 ;
 I '$$^W4TABLET D BTN("rbtcourl",$$^%W1DICT("COURIERSLOCATION"),"CouriersLocation()",$$BTNPRM(10,"black","lightblue"))
 ;
 I $$^W4TABLET'=2 D BTNSEND
 ;
 I $$^W4MM,'$$AUTOFAX^W4PRM D
 .D BTN("rbtmv",$$^%W1DICT("MOVEORDER2REST"),"OrdersList()",$$BTNPRM(12,"blue"))
 ;
 I $$SNDDLVKTC^W4PRM D
 .D BTN("rbttaw",$$^%W1DICT("SENDORDERS2KITCHEN"),"SendOrders2Kitchen()",$$BTNPRM(15,"black","lightgreen"))
 .
 Q
 ;
 ;
BTNSEND ;
 D
 .D BTN("rbtsend",$$^%W1DICT("SENDORDERS"),"SendOrders()",$$BTNPRM(12,"black","yellow"))
 ;
 D BTN("rbttaw",$$^%W1DICT("TAKEAWAYORDERS"),"TakeAwayOrders()",$$BTNPRM(12,"black","yellow"))
 Q
 ;
 ;
BTNBACK ;
 D BTN("rbtback",$$^%W1DICT("BACK"),"Back2Menu()",$$BTNPRM(10,"white","red"))
 Q
 ;
ELPOS(STAM) ;
 Q $$GETP^%W1PRM("ELPOS")
 ;
TELEPHONE(STAM) ;
 I +$G(%ARG("CALLCENTER"))=.5 Q 1
 I $$DLVWEB^W4DLVCSR Q 1
 I $$TELEPHONE^W4PRM Q 1
 Q 0
 ;
CALLCENTER(STAM) ;
 I $G(%ARG("CALLCENTER")) Q %ARG("CALLCENTER")
 I $$GETP^%W1PRM("CALLCENTER") Q $$GETP^%W1PRM("CALLCENTER")
 Q $$CALLCENTER^W4PRM
 ;
 ;
SELCITY(RKV) ;
 N IRSEL S IRSEL=$$CITY^W3HZMST(JB)
 I IRSEL?.P,$G(NMB) S IRSEL=$$IR^W3L(NMB)
 I IRSEL?.P,'$D(FNDDLV) S IRSEL=$$CITYDEF^W3PRM
 S IRSEL=$$SPA^%L1FRM($TR(IRSEL,"-"," "))
 ;
 W "<select"
 W " name="""_RKV_""" id="""_RKV_""""
 W " tabindex="""_$$TABIND("CITY")_""""
 W " onChange=""SetCity(this.value);ChangeCity();"_$$LOADBT_""" "
 W " >",!
 ;
 W " <option>&nbsp;</option>",!
 ;
 I $$TAKEAWAY D
 .W " <option value='TAKEAWAY'"
 .   I $$TAW W " selected=""selected"""
 .W " >"_$$HDTAW_"</option>",!
 ;
 D SORTCITY
 N GLIR S GLIR=$$^W4MAIN("TMPIR")
 I $$CITYDEF^W3PRM'="" S @GLIR@(.7)=$$CITYDEF^W3PRM
 ;
 N N S N=.5 F  S N=$O(@GLIR@(N)) Q:N=""  D
 .N IR S IR=$G(^(N))
 .S IR=$$SPA^%L1FRM($TR(IR,"-"," "))
 .N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$H2U^%L1FRM(IR)
 .W "<option value='"_IRI_"'"
 .D
 ..I $$TAKEAWAY,$$TAW Q
 ..I $$ONLINE D
 ...I '$G(PRRG),$TR($$CITY^W3HZMST(JB,$S($G(PRRG)="R":$$^W3ORD,1:"^[$$^W3MAIN]TMPORD")),"-"," ")=$TR(IR,"-"," ") W " selected=""selected""" Q
 ...I '$D(W3MSDRG) I $G(PRRG),$TR($$IR^W3L(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"" " Q
 ...I $D(W3MSDRG) I $G(PRRG),$TR($$IR^W3R(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"" " Q
 ..;;S ^AA("IRSEL")=IRSEL
 ..I $$DLVCSR!$$TELEPHONE^W4PRM!$$MM^W4PRM D
 ...N IROK S IROK=0
 ...D
 ....I $L(IRSEL),IRSEL=IR S IROK=1 Q
 ....I $TR(IRSEL,"-"," ")=$TR(IR,"-"," ") S IROK=1 Q
 ....I $TR(IRSEL,"-"," ")["aia` lz",$TR(IR,"-"," ")["aia` lz",IRSEL'["oetv",IRSEL'["mexc",IR'["oetv",IR'["mexc" S IROK=1 Q
 ....I IRSEL="`""z",$TR(IR,"-"," ")["aia` lz" S IROK=1 Q
 ....I IRSEL="v""ly`x",$TR(IR,"-"," ")["oeivl oey`x" S IROK=1 Q
 ...I IROK W " selected=""selected""" 
 .
 .W " >"_IRI_"</option>",!
 ;
 W "</select>",!
 Q
 ;
 ;
LOADBT()
 I $$POLYGON^W4PRM Q "LoadBt('1')"
 Q ""
 ;
TAW(STAM) ;
 I $$TAKEAWAY^W3HZMST(JB) Q 1
 Q 0
 ;
NAME2COMP(CODE) ;
 I $$PWRLNK Q 0
 Q $$COMP^W3PRM
 ;
CUSTHIST(LK) ; 
 N A
 S A="<table dir="""_$$^%W1DIR_""" id=""tblhist""><tr>"
 S A=A_"<td>"_$$^%W1DICT("SHOWHISTORYFROMDATE")_"</td>"
 S A=A_"<td>"_$$^W4SELDAT($$^W4DZ,365,0,"dathist")_"</td>"
 S A=A_"<td>"_$$CUSTHISTSBM_"</td>"
 S A=A_"<td>"_$$CUSTHISTBACK_"</td>"
 S A=A_"</tr></table>"
 Q A
 ;
CUSTHISTSBM(STAM) ;
 N A,TXT,ONCLICK,STYLE,DOP,ID 
 S ID="custhistsbm"
 S TXT=$$^%W1DICT("SUBMIT")
 S ONCLICK="CustHistSbm()"
 S STYLE="color:green"
 S DOP=""
 S A=$$ROUNDTB^%W1JS(ID,$G(TXT),$G(ONCLICK),$G(STYLE),$G(DOP)) ;
 Q A
 ;
CUSTHISTBACK(STAM) ;
 N A,TXT,ONCLICK,STYLE,DOP,ID 
 S ID="custhistbck"
 S TXT=$$^%W1DICT("BACK")
 S ONCLICK="CustHistBack()"
 S STYLE="color:red"
 S DOP=""
 S A=$$ROUNDTB^%W1JS(ID,$G(TXT),$G(ONCLICK),$G(STYLE),$G(DOP)) ;
 Q A
 ;
COMP(CODE,GL) ;
 I $$PWRLNK Q $$ARG("COMP","H")
 I $$NAME2COMP(CODE) Q $$LKH^W4L(CODE,$G(GL))
 Q $$COMP^W4L(CODE)
 ;
HZMHPRM(STAM) ;
 Q $$HZMH^W3PRM
 ;
SHIFTSHAA(TOTIME) ;
 I TOTIME[":" S TOTIME=TOTIME*3600+($P(TOTIME,":",2)*60)
 S TOTIME=TOTIME+($$PLUSTIME^W4PRM*60)
 Q $$T^%L1TIME(TOTIME)
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 ;
CITIESTABLE(STAM) ; 
 N N,I
 S N="" F I=1:1 S N=$O(@$$GLCITY@(N)) Q:N=""
 I $D(@$$GLCITY)>9,I<100 Q 1
 I $D(@$$GLCITY)>9,I>99 Q 2
 Q 0
 ;
TBLCITY ;
 N GL,A,I,N S GL=$$GLCITY,I=0
 W "<br>"
 ;
 W "<table id=""tblcity"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td style=""color:red;cursor:pointer"" onClick=""CloseCity()"" >"
   W $$^%W1DICT("CLOSE")
  W "</td></tr>",!
  ;
  S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S A=$G(^(N))
  .S I=I+1
  .W "<tr id=""ctr"_I_""" style=""cursor:pointer"" >"
  . W "<td id=""ct"_I_""" onClick=""ClickTblCity('"_I_"')"" >"
  .  W $$H2U^%L1FRM(A)
  . W "</td>",!
  .W "</tr>",!
 W "</table>",!
 Q
 ;
WDTBL(STAM) ;
 Q 94 
 ;
CHKTAW(TAW) ; 
 N ST
 S ST="&nbsp;&nbsp;"_$$HDTAW
 S ST=ST_"<input type=""checkbox"" id=""taw"" "
 S ST=ST_" tabindex="""_$$TABIND("taw")_""""
 I $G(TAW) S ST=ST_" checked=""checked"" "
 S ST=ST_$$ONKEYPRESS
 S ST=ST_"onClick=""ClickTaw()"" "
 S ST=ST_">"
 Q ST
 ;
SETADR(IND) ; 
 ;;S ^AA("W3ORDDET-SETADR","IND")=IND
 S IND=$$CNWEB^%L1FRM(IND)
 D PRS^%L1FRM(IND,"CITY~STREET~HOME~FLAT~FLOOR~ENTRANCE~MIKUD","~")
 I $G(HOME) S CITY=$TR(CITY,"1234567890","")
 D PUT^W3HZMST(JB,"CITY",CITY)
 ;;S STREET=$$INVH^%L1FRM(STREET)
 ;;S FLOOR=$$INVH^%L1FRM(FLOOR)
 I $G(HOME) S STREET=$TR(STREET,"1234567890","")
 D PUT^W3HZMST(JB,"STREET",STREET)
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 D PUT^W3HZMST(JB,"MIKUD",MIKUD)
 Q 1
 ;
SETMKBL ; 
 N MYDVN S MYDVN=$$^W4MYDVN
 I $G(%ARG("MKBL")) S MKBL=%ARG("MKBL")
 I '$G(MKBL) S MKBL=$$GETP^%W1PRM("MKBL")
 I '$G(MKBL) S MKBL=$G(^[$$^W3MAIN]TMPMKBL(MYDVN))
 I $G(MKBL) D
 .D PUT^%W1PRM("MLZR",MKBL)
 .S ^[$$^W3MAIN]TMPMKBL(MYDVN)=MKBL
 Q 
 ;
NEWCUST(LKH) ; 
 I $G(LKH)="" Q 0
 N MSD S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q 0
 Q '$$FIRSTORD(LKH)
 ;
FIRSTORD(LKH) ;
 I $G(LKH)="" Q ""
 N MSD S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q ""
 Q $O(@$$^W4GL("W4LINKI")@(LKH,MSD,""))
 ;
LASTMKR(LKH) ; 
 I $G(LKH)="" Q "C"
 N MKR S MKR="C"
 I '$G(MSD) S MSD=+$$GETP^%W1PRM("MSD") I 'MSD Q "C"
 N N S N="" F  S N=$O(@$$^W4GL("W4LINKI")@(LKH,MSD,N),-1) Q:N=""  D  Q:MKR
 .S MKR=$$MKRDLV1^W4HZMST(N)
 Q MKR
 ;
LASTMKR1(LKH) ; 
 Q $$H2U^%L1FRM($$^W3MKR1($$LASTMKR(LKH)))
 ;
BDNOCH(STAM) ; 
 I $$HUZ Q 1
 I $$GETP^%W1PRM("HZM") Q 1
 I '$G(@$$^W4PRM@("BDNOCH"))!$D(@$$^W4TMPORD@(1)) Q 1 
 N MLZ S MLZ=$$GETP^%W1PRM("MLZR")
 I MLZ,$G(@$$^W4GL("FILE")@(MLZ,"CIO"))'="I" Q 0
 Q 1
 ;
NOCHNTM() ; 
 Q $$NOCHNTM^W4PRM 
 ;
 ;
TBLPHONE ; 
 N PADDING
 D OPTABLE
 ;
 I '$$KBVRT W "<tr><td>&nbsp;</td></tr>",!
 ;
 N WIDTH
 S WIDTH="30%"
 W "<tr>"
   D TDNAME
 W "</tr>",!
 ;
 W "<tr>"
  D TDCOMP
 W "</tr>",!
 ;
 W "<tr>"
  D TDTEL
 W "</tr>" 
 ;
 W "<tr>"
  D TDPELE
 W "</tr>" 
 ;
 I $$GETP^%W1PRM("TAW") G PHONECMNT
 ;
 W "<tr>",!
  D TDCITY
 W "</tr>",!
 ;
 W "<tr>"
  D TDSTREET
 W "</tr>",!
 ;
 
 W "<tr>"
  D TDHOME
 W "</tr>",!
 ;
 W "<tr>"
  D TDFLAT
 W "</tr>",!
 ;
 W "<tr>"
  D TDENTRANCE
 W "</tr>",!
 ;
 W "<tr>" 
  D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
  W "<td >" D INP("FLOOR",50,6,$$^%W1DIR) D TDE
 W "</tr>",!
 ;
PHONECMNT W "<tr>",!
   D TDCMNT
  W "</tr>",!
  ;
  W "<tr>",!
     D TDCMNTIN
   W "</tr>",!
  ;
  I $$ELPOS,$$MSLSD^W4PRM D
  .W "<tr>"
  . D TDGUEST
  . D TDTZ
  .W "</tr>",!
  ;
  I $$NOFUTDAT^W3PRM,'$$NOMOD(JB) D
  .D DAT ; --- LO MAZIG
  .N A S A=$$FILLTM(TODAT)
  ;
  I '$$NOFUTDAT^W3PRM D
  .W "<tr>"
  . D TDDAT
  .W "</tr>",!
  ;
  W "<tr>" 
   D TDSHAA
  W "</tr>",!
  ;
  I $$ADSHAA^W4PRM D
  . W "<tr>"
  .  D TD W $$^%W1DICT("ADSHAA") D TDE
  .  D TD D ADSHAA D TDE
  . W "</tr>",! 
  ;
  W "<tr>"
   D TDHRA
  W "</tr>",!
  ;
  I $$DLVCSR D
  .W "<tr><td colspan=""2""><hr></td></tr>",!
  .
  .W "<tr>"
  . D TDHZMLAK
  .W "</tr>",! 
  .
  .W "<tr>"
  . D TDISHURIM
  .W "</tr>",!
  .
  .W "<tr>",!
  . D TDEMAIL
  .W "</tr>",!
 ;
 I '$$KBVRT W "<tr><td>&nbsp;</td></tr>",!
 W "</table>",! 
 ; 
 D ORDTOT 
 D DIVBUT 
 Q 
 ;
GLMKR() ;
 I $$MKRDLV^W4PRM=2 Q $$^W4GL("W3MKR1")
 Q $$^W4GL("W3MKR")
 ;
SETLKH ;
 D PUT^%W1PRM("ELPOS",1)
 N COMP S COMP=$$GETPWR("COMP","H")
 N NMB S NMB=$$ARG("NMB")
 I 'NMB,$G(CODE) S NMB=CODE
 I 'NMB,$G(%ARG("LKH")) S NMB=$G(%ARG("LKH"))
 N NAME S NAME=$G(MAZMIN)
 I $G(@$$^W4GL("W3PRM")@("COMP")),COMP'?.P S NAME=COMP
 I 'NMB Q
 I NAME="" Q
 I $G(@$$^W4GL("W3PRM")@("COMP")),COMP?.P,NMB,$$LKH^W4L(NMB)'?.P Q
 ; 
 S PRM="TELB="_NMB_"<>LKH="_NAME_"<>COMP="_COMP_"<>IR="_$$GETPWR(NMB,"CITY","H")_"<>"
 S PRM=PRM_"BAIT="_$$GETPWR(NMB,"HOME")_"<>FLAT="_$$GETPWR(NMB,"FLAT")_"<>KTV="_$$GETPWR(NMB,"STREET","H")_"<>"
 S PRM=PRM_"KOMA="_$$GETPWR(NMB,"FLOOR","H")_"<>EMAIL="_$$GETPWR(NMB,"EMAIL")_"<>"
 S PRM=PRM_"TZ="_$$GETPWR(NMB,"TZ")
 ;;S ^AA("W3ORDDET-SETLKH","PRM")=PRM
 D PUT2^W4L(NMB,PRM)
 Q
 ;
GETPWR(LK,RKV,HB)
 N VL S VL=$$ARG(RKV,$G(HB))
 I VL="" S VL=$$GETVL(LK,RKV)
 Q VL
 ;
ARG(RKV,HB) ;
 S RKV=$G(%ARG(RKV))
 I $G(HB)="H" S RKV=$$HB(RKV)
 Q $$SPA^%L1FRM(RKV)
 ;
HUZ() ;
 Q $$^W4HUZ
 ;
HB(TX) ; 
 Q $$HB^W3SETHD(TX)
 ;
KBVRT() ; 
 Q $$KBVRT^W4PRM
 ;
DIFTIME(PRM) ; 
 I '$$PAPJ^W4PRM,'$G(@$$^W4PRM@("BDMINTIM")) Q 1
 N DAT,SHAA,DATCB,SHAACB
 S DAT=$P(PRM,";") 
 S SHAA=$P(PRM,";",2) 
 ;;S ^AA("W3ORDDET-DIFTIME","DAT")=DAT
 ;;S ^AA("W3ORDDET-DIFTIME","SHAA")=SHAA
 N MIN S MIN=$G(@$$^W4PRM@("TIMEHZ"))
 I $$TAKEAWAY^W3HZMST(JB) Q 1  ;S MIN=MIN-$G(@$$^W4PRM@("TIMETM"))
 S DATCB=$$DATCB^W3HZMST(JB)
 I 'DATCB S DATCB=$ZD($H,"DD.MM.YY  24:60")
 S SHAACB=$P(DATCB,"  ",2) 
 S DATCB=$P(DATCB,"  ") 
 I $$DIF^%L1TIME(DAT_" "_SHAA,DATCB_" "_SHAACB)<(MIN-2) Q "MIN" 
 Q 1
 ;
GGLSTRT() ; 
 Q $G(@$$^W4PRM@("GGLSTRT"))&($$GETP^%W1PRM("HZM")<1) 
 ;
SETPROTTM(PRM) ; 
 N (JB,PRM)
 S HZ=$P(PRM,"~")
 S DATOLD=$P(PRM,"~",2) 
 S DATNEW=$P(PRM,"~",3) 
 S TIMOLD=$P(PRM,"~",4)
 S TIMNEW=$P(PRM,"~",5)
 S WHO=$$INVH^%L1FRM($P(PRM,"~",6))
 D SETPROT^W4CHNTIM(HZ,DATOLD,TIMOLD,DATNEW,TIMNEW,WHO)
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDGIB
W3ORDGIB(JBB) ; [ 27.01.10 17:49 ] [ 24.09.08 10:53 ] [ 23.09.08 17:31 ] [
 ;;Q $$^W4GL("W3ORD",$G(JBB,+$G(JB)))
 Q "^[$$^W3MAIN]W3ORDGIB"

W3ORDHD
W3ORDHD(PRM,CODE) ; [ 26.09.24 13:11 ] [ 18.01.24 17:42 ] [ 05.01.24 14:42 ] 
 N FUTDAT,TODAT,TOTIME,PRMENU
 N MSD S MSD=$$GET^%W1PRM("MSD")
 Q:'$G(MSD)  Q:'$G(JB)
 S PRMENU=0
 I CODE["$" S CODE=$TR(CODE,"$",""),PRMENU=1
 S CODE=$$SPA^%L1FRM(CODE)
 I $L($G(CODE))>3 D PUT^%W1PRM("CODE",CODE)
 I $L($G(CODE))<4 S CODE=$$GET^%W1PRM("CODE")
 ;
 I '$D(^[$$^W3MAIN]TMPORD(JB)),$D(@$$^W3ORD(JB)@(JB)) M ^[$$^W3MAIN]TMPORD(JB)=@$$^W3ORD(JB)@(JB)
 ;
 N NMB I 'PRMENU S NMB=$$NMB^W3HZMST(JB)
 I PRMENU S NMB=$P(CODE,"~")
 N HOMEPRM S HOMEPRM="" I CODE["~" S HOMEPRM=$P(CODE,"~",2),CODE=$P(CODE,"~")
 ;
 I CODE["!" D
 .S NMB=$$SPA^%L1FRM($P(CODE,"!")),CODE=""
 .D FILL(NMB)
 .I '$P($G(^[$$^W3MAIN]TMPORD(JB)),"~",1) S $P(^[$$^W3MAIN]TMPORD(JB),"~",1)=$TR(NMB,"-","")
 .S ^[$$^W3MAIN]TMPORD(JB,"NOCODE")=""
 ;
 I $G(CODE)="",$$LKH^W3L(NMB)="" S CODE=$G(NMB)
 ;
 D KILL^%W3DEB("W3ORDHD")
 D PUT^%W3DEB("W3ORDHD","ARG=[%ARG & CODE=CODE & JB=JB &MSD=MSD &NMB=NMB")
 ;
 D PUT^%W1PRM("NMB",NMB)
 ;
 N GL S GL="^[$$^W3MAIN]TMPORD"
 ;
 I $G(JB),$G(CODE),$D(^LKH(CODE)),$$NEWORD(JB)!PRMENU D
 .S $P(@GL@(JB),"~",1)=$$TELB^W3L(CODE)
 .S $P(@GL@(JB),"~",2)=$$LKH^W3L(CODE)
 .S $P(@GL@(JB),"~",3)=$$KTV^W3L(CODE)
 .S $P(@GL@(JB),"~",7)=$$CMNT^W3L(CODE)
 .S $P(@GL@(JB),"~",13)=$$KOMA^W3L(CODE)
 .S $P(@GL@(JB),"~",14)=$$DIRA^W3L(CODE)
 .S $P(@GL@(JB),"~",15)=$$BAIT^W3L(CODE)
 .S $P(@GL@(JB),"~",16)=$$CNISA^W3L(CODE)
 .S $P(@GL@(JB),"~",27)=$TR(CODE,"-$","")
 .S $P(@GL@(JB),"~",31)=$$IR^W3L(CODE)
 .S $P(@GL@(JB),"~",32)=$$PELE^W3L(CODE)
 ;
 ;
 W "<form id=""FormHD"" name=""FormHD"">",!
 ;
 ;------------------------------ PRM="INP" -----------
 ;
 D OPTABLE W ">",!
 ;
 I $$^%W1LNG="H" D  ; ---------------- HEBREW -----
 .W "<tr>"
  .N WIDTH,ALIGN
  .S WIDTH="16%" D TEL
  .S WIDTH="15%" D PELE
  .S WIDTH="21%" D NAME
  .S WIDTH="16%",ALIGN="center" D CITY
  .S ALIGN=$S($$^%W1DIR="RTL":"left",1:"right") S WIDTH="30%" D STREET
 .W "</tr>",!
 .W "</table>",!
 .W !
 .
 .D OPTABLE W " >",!
 .W "<tr>",!
 .;
 .D HOME
 .D FLAT
 .D ENTRANCE
 .D FLOOR
 .D COMMENT
 .S %W1DAT("W3ORDHD")=""
 .S WIDTH="16%" D DAT
 .S %W1DAT("W3ORDHD")=""
 .D SHAA
 ;
 ;
 I $$^%W1LNG'="H" D  ;-------------- INPUT LOAZIT --------------
 .W "<tr>"
 .W "<td width=""45%""><table width=""100%"" "
   .N SPAN,%W1DAT
   .D RWSTYLE
   .W "><tr>",!
   .D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"&nbsp;" D TDE
   .D TD D INP("NMB",100,14,"LTR") D TDE
   .D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"&nbsp;&nbsp;" D TDE
   .D TD D INP("PELE",100,14,"LTR") D TDE
   .W "</tr>"
   .
   .W "<tr>"
   .D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET") D TDE
   .S SPAN=2 D TD D INP("STREET","100%",40,$$^%W1DIR,"T") D TDE
   .W "<td align=""right"">"_$$^%W1DICT("HOME") D TDE
   .W "</tr>",!
   .
   .W "<tr>",!
   .D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"&nbsp;&nbsp;" D TDE
   .S SPAN=2 D TD D INP("COMMENT","100%",40,$$^%W1DIR,"T") D TDE
   .W "<td align=""right"">",$$^%W1DICT("TODATE") D TDE
   .W "</tr>",!
   .
   .W "</table></td>"
   .
   .W "<td width=""28%""><table width=""100%"" "
   .D RWSTYLE
   .W "><tr>"
   .W "<td align=""right"">&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"&nbsp;" D TDE
   .S SPAN=2,WIDTH="55%" D TD D INP("NAME","100%",30,$$^%W1DIR,"T") D TDE
   .W "</tr><tr>",!
   .
   .W "<td>&nbsp;" W:$$^%W1LNG="R" "&nbsp;&nbsp;&nbsp;&nbsp;" D INP("HOME",30,3,"LTR") D TDE
   .W "<td align=""right"">" W $$^%W1DICT("FLAT") D TDE
   .D TD W:$$^%W1LNG="R" "&nbsp;&nbsp;" D INP("FLAT",40,5,"LTR") D TDE
   .W "</tr>"
   .
   .W "<tr>" S %W1DAT("TD")="",%W1DAT("W3ORDHD")="" D DAT ; -- V ^%W1DAT <TD>TEXT</TD><TD>DATE</TD>
   .S %W1DAT("W3ORDHD")=""
   .D SHAA W "</tr></table></td>",!
   .
   .W "<td><table width=""100%""" D RWSTYLE
   .W "> <tr>",!
   .W "   <td width=""35%"" align=""right"">&nbsp;"_$$ZW_$$^%W1DICT("CITY") D TDE
   .S SPAN=3,ALIGN="right" D TD D INPCT("CITY",120,$$^%W1DIR,"T")
   .W "   </tr><tr>",!
   .w "  <td width=""35%"" align=""right""> &nbsp;"_$$^%W1DICT("ENTRANCE") D TDE
   .D TD D INP("ENTRANCE",30,5,$$^%W1DIR) D TDE
   .W "  <td width=""27%"" align=""right"">&nbsp;"_$$^%W1DICT("FLOOR") D TDE
   .W "  <td width=""15%"" align=""right"">" D INP("FLOOR",30,3,$$^%W1DIR) D TDE
   .W " </tr>"
   .W "<tr><td>&nbsp;</td></tr>"
   .W "</table></td>"
 ;
 W "</tr>",!
 W "</table>",!
 W "</form>",!
 ;
 I $G(FUTDAT),$G(PRM)'="VW" D
 .W "<script>",!
 .W "Msg(""FUTDAT"","""")",!
 .W "</script>",!
 Q
 ;
CODE D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CUSTCODE")_"&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;&nbsp;"
 N CODE S CODE=$$RKV("CODE")
 I CODE=""!(CODE="&nbsp;") S CODE=$$^%W1DICT("GUEST")
 W ":&nbsp;"_$$SPANSTYLE("")_CODE_"</span>" D TDE
 Q
 ;
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"&nbsp;"
 I $$^W4DLVCSR!$$DLVWEB^W4DLVCSR D  Q
 .D INP("TELB",100,$S($$^%W1LNG="H":11,1:14),"LTR") D TDE
 N WD S WD=100
 D INP("NMB",WD,$S($$^%W1LNG="H":11,1:14),"LTR") D TDE
 Q
 ;
TEL D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"&nbsp;"
 N GL S GL=$$^W3ORD
 N TEL S TEL="TELB" I $L($$TELB^W3HZMST(JB))<7 S TEL="NMB"
 D INP(TEL,100,$S($$^%W1LNG="H":11,1:14),"LTR") D TDE
 Q
 ;
PELE D TD W "&nbsp;&nbsp;"_$$^%W1DICT("MOBIL")_"&nbsp;&nbsp;"
 N WD S WD="80"
 D INP("PELE",WD,$S($$^%W1LNG="H":12,1:14),"LTR") D TDE
 Q
 ;
EMAIL ;
 N CODE S CODE=$$RKV("CODE")
 Q:CODE=""
 N EMAIL S EMAIL=$$FUNC^%LCASE($$EMAIL^W3L(CODE))
 W "<td>"_$$SPANSTYLE("")_"<a href=""mailto:"_EMAIL_""">"_EMAIL_"</a></span></td>",!
 Q
 ;
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;&nbsp;&nbsp;"
 N WD S WD=160
 D INP("NAME",WD,30,$$^%W1DIR,"T") D TDE
 Q
 ;
COMPANY N SPAN S SPAN=2 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("COMPANYNAME")_"&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;&nbsp;&nbsp;"
 N WD S WD=160
 D INP("COMP",WD,30,$$^%W1DIR,"T") D TDE
 Q
 ;
STREET W "<td "
 W "id=""tdstreet"" dir="""_$$^%W1DIR_""""
 I $D(WIDTH) W " width="""_WIDTH_"""" K WIDTH
 I $G(PRM)="VW" W " align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 I $G(PRM)="IN" W " align="""_$S($$^%W1DIR="LTR":"right",1:"left")_""""
 W " style="""
 I $D(W3ORDHD("TDSTYLE")) D
 .W W3ORDHD("TDSTYLE")_";"
 W """"
 W ">"
 I $G(PRM)="VW",$$^%W1LNG'="H" W "&nbsp;"
 D STREET1
 D TDE
 Q
STREET1 ;
 W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")
 I $G(W3FAXHTM) W "&nbsp;&nbsp;"
 I '$G(W3FAXHTM) W "&nbsp;&nbsp;&nbsp;&nbsp;"
 N WD S WD=210
 D INP("STREET",WD,30,$$^%W1DIR,"T")
 Q
 ;
HOME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"&nbsp;&nbsp;"
 I $G(W3FAXHTM) W "&nbsp;"
 I $$^%W1LNG="R",$G(PRM)="IN" W "&nbsp;"
 N WD S WD=30
 D INP("HOME",WD,3,"LTR") D TDE
 Q
 ;
FLAT D TD W "&nbsp;&nbsp;"_$$^%W1DICT("FLAT")_"&nbsp;&nbsp;"
 I $$^%W1LNG="R" W "&nbsp;"
 N WD S WD=40
 D INP("FLAT",WD,5,"LTR") D TDE
 Q
 ;
ENTRANCE S:$$^%W1LNG="R"&($G(PRM)="IN") ALIGN="right"
 D TD
 W "&nbsp;&nbsp;"_$$^%W1DICT("ENTRANCE")
 I '$G(W3FAXHTM) W "&nbsp;&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;"
 N WD S WD=30
 D INP("ENTRANCE",WD,5,$$^%W1DIR) I '$G(W3FAXHTM) D TDE
 Q
 ;
FLOOR I '$G(W3FAXHTM) S:$$^%W1LNG="R"&($G(PRM)="IN") ALIGN="right" D TD
 I $G(W3FAXHTM) W "&nbsp;&nbsp;&nbsp;&nbsp;"
 I $G(PRM)="IN" W "&nbsp;&nbsp;"_$$ZW_$$^%W1DICT("FLOOR")_"&nbsp;&nbsp;"
 I $G(PRM)="VW" W "&nbsp;"_$$^%W1DICT("FLOOR")_"&nbsp;"
 N WD S WD=30
 D INP("FLOOR",WD,3,$$^%W1DIR) D TDE
 Q
 ;
CITY S:$$^%W1LNG="R"&($G(PRM)="IN") ALIGN="right"
 N WIDTH D TD
 W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"&nbsp;&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="E" W "&nbsp;"
 N WD S WD=$S($$^%W1LNG="H":100,1:150)
 D INPCT("CITY",WD,14,$$^%W1DIR,"T")
 Q
 ;
COMMENTZG ;
 W "&nbsp;&nbsp;"_$$^%W1DICT("COMMENT")_"&nbsp;&nbsp;"
 Q
COMMENT N WIDTH
 D TD
 I $$RKV("COMMENT")="&nbsp;"!($$RKV("COMMENT")=""),$G(PRM)="VW" D  D TDE Q
 .W "&nbsp;" Q
 D COMMENTZG
 N WD S WD=245
 I $$^W4SMALL S WD="80%"
 D INP("COMMENT",WD,40,$$^%W1DIR,"T") D TDE
 Q
 ;
GETDAT(STAM) ;
 N TODAT,DAT S TODAT=+$H
 N A S A=$$^W3TIME($H,$$CITY^W3HZMST(JB)) I $D(W3TIME("ND")) S TODAT=TODAT+1
 S DAT=$$P(5)
 I DAT S TODAT=$$^%L1DC(DAT,3)
 Q TODAT
 ;
GETTIME(STAM) ;
 N TOTIME,SHAA S TOTIME=$H
 S TOTIME=$P($$^W3TIME($H,$$CITY^W3HZMST(JB)),",",2)
 S SHAA=$$P(6)
 I SHAA'?.P,SHAA'=0,SHAA'="&nbsp;" S TOTIME=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 Q TOTIME
 ;
CHECKDAT(DT) ;
 I $G(FUTDAT),$$^%L1DC(DT,8)=6,$G(MSD)=1 Q 0
 Q ($$^W3VLDDT($$^%L1DC(DT,1))>0)
 ;
DAT ;
 N TXTDAT S TXTDAT=""
 ;
 D KILL^%W1PRM("FUTDAT")
 ;
 I '$D(%W1DAT("TD")) D  ;--- NE INOSTR VVOD
 .I $D(%W1DAT("ALIGN")) N ALIGN S ALIGN=%W1DAT("ALIGN")
 .D TD
 .I '$G(W3FAXHTM) W "&nbsp;"
 .I $G(W3FAXHTM),$$^%W1LNG="E" W "&nbsp;&nbsp;"
 .I '$D(%W1DAT("ALIGN")) S %W1DAT("ALIGN")="center"
 .S TXTDAT=$$^%W1DICT("TODATE")
 ;
 S FUTDAT=0
 ;
 I $G(PRM)="IN" D
 .S TODAT=$$GETDAT
 .S TOTIME=$$GETTIME
 .I '$$P(5),'$$P(6) I $$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))=-3 S TODAT=TODAT+1,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .I '$$CHECKDAT(TODAT) D
 ..N DT F DT=TODAT+1:1 Q:$$CHECKDAT(DT)
 ..S TODAT=DT,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .S %W1DAT("CLND")=1
 .S $P(@GL@(JB),"~",5)=$$^%L1DC(TODAT,1)
 .D ^%W1DAT("DAT",TODAT,TXTDAT)
 ;
 I $G(PRM)="VW" D
 .I '$D(W3FAXHTM) D
 ..I '$D(%W1DAT("TXT")) S TXTDAT=$$^%W1DICT("TODT") Q
 ..S TXTDAT=%W1DAT("TXT")
 .W TXTDAT I '$$^W4SMALL W $S($G(W3FAXHTM)&($$^%W1LNG="H"):"",1:"&nbsp;")
 .N DAY S DAY=$$^%W1DICT("DAY"_$$^%L1DC($$P(5),8))
 .I $$^%W1LNG="H" S DAY=$P(DAY,";")_";"
 .W "&nbsp;:&nbsp;"_$$SPANSTYLE("")_$$P(5)_"&nbsp;"_DAY
 .W $S($G(W3FAXHTM)&($$^%W1LNG="H"):"&nbsp;",1:"")_"</span>"
 ;
 W "</td>" D VOSC
 K %W1DAT
 Q
 ;
SHAA ;
 I $G(PRM)="IN" D
 .I '$D(%W1DAT("TDTM")) D  ; -- NE INOSTR VV
 ..W "<td dir=""LTR"" id=""SHAATD"" >",!
 .W $$FILLTM(TODAT),!
 ;
 I $G(PRM)="VW" D
 .N ALIGN S ALIGN=$S($$^%W1DIR="RTL":"right",1:"left")   
 .I '$D(%W1DAT("TDTM")) S DIR="LTR" D TD
 .I $G(W3FAXHTM),$$^%W1LNG="E" W "&nbsp;&nbsp;"
 .I $D(W3FAXHTM) W $$^%W1DICT("TOTIME")_"&nbsp; :"
 .
 .W $$SPANSTYLE("")_"&nbsp;"_$$P(6)_"&nbsp;</span>"
 .
 .I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;"
 I '$D(%W1DAT("TDTM")) W "</td>" D VOSC
 Q
 ;
SOADIM ;
 I $G(PRM)="VW" D
 .W "<td width=""15%"">"
 .N SOAD S SOAD=$$SOAD^W3HZMST(JB) I 'SOAD W "&nbsp;" Q
 .W $$^%W1DICT("SOADIM")_" : "
 .W "<span style=""font-size:"_$$^W3FSZ(14)_";color:brown"" >"
 . W SOAD
 .W "</span>",!
 .W "</td>",!
 Q
 ;
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 W " style="""
 I $D(SIZE) W "font-size:"_SIZE_";"
 I $D(W3ORDHD("TDSTYLE")) D
 .W W3ORDHD("TDSTYLE")_";"
 W """"
 I $D(DIR) W " dir="""_DIR_""""
 W " >" D VOSC
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
 ;
DATCB W "<td "
 I $G(COLSPAN) W "colspan="""_COLSPAN_""" " K COLSPAN
 I '$G(WIDTH) S WIDTH="18%"
 W " style="""
 I $D(W3ORDHD("TDSTYLE")) D
 .W W3ORDHD("TDSTYLE")_";"
 W """"
 W " width="""_WIDTH_""">"
 W "&nbsp;&nbsp;"_$$^%W1DICT("RECEIVED")_" : "
 W "<span "
 W " style="""
 I $D(W3ORDHD("SPANSTYLE")) W W3ORDHD("SPANSTYLE")
 W """"
 W ">"
 I $$NOFUTDAT^W3PRM D
 .I '$D(@$$^W3ORD(JB)@(JB)) D PUT^W3HZMST(JB,"DATCB",$ZD($H,"DD.MM.YY  24:60"))
 ;
 W $$RPL^%L1FRM($$DATCB^W3HZMST(JB,$G(GL,$$^W3ORD))," ","&nbsp;")
 W "</span>"
 W "</td>",!
 K WIDTH Q
 ;
TDE W "</td>" D VOSC
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 I $G(PRM)="IN" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD_$S(DIR="LTR":";text-align:"_$S($G(PRTX)="T":"left",1:"right"),1:"")_""""
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .W " onKeyPress=""OnKeyPress(event)"""
 .W " onChange=""CallTfr('"_CODE_"')"""
 .I RKV'="STREET" D
 ..W " onFocus=""noIfrHide=0;ifrHide('"_RKV_"')"""
 ..W " value="""_$$RKV(RKV)_""""
 ..W " tabindex="""_$S(RKV="NMB":1,RKV="PELE":2,RKV="NAME":3,RKV="HOME":6,RKV="FLAT":7,RKV="ENTRANCE":8,RKV="FLOOR":9,RKV="COMMENT":10,1:11)_""""
 .I RKV="STREET" D
 ..N VL S VL=$$RKV(RKV)
 ..I VL'?1N.N W " value="""_$$RPL^%L1FRM(VL,"""","''")_""""
 ..I VL?1N.N W " value="""_$$H2U^%L1FRM($$SNIFA^W3SNIF(VL))_""""
 ..W " tabindex=""5"""
 ..W " onFocus=""noIfrHide=1"""
 ..N CITY S CITY=$$CITY^W3HZMST(JB,$G(GL))
 ..I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 .W " />"
 ;
 I $G(PRM)="VW" D
 .W ": "_$$SPANSTYLE(RKV)
 .I RKV'="STREET" W "&nbsp;"_$$RKV(RKV)_"</span>"
 .I RKV="STREET" D
 ..N VL S VL=$$RKV(RKV)
 ..I VL'?1N.N W "&nbsp;"_VL
 ..I VL?1N.N W "&nbsp;"_$$H2U^%L1FRM($$SNIFA^W3SNIF(VL))
 ..W "</span>" D VOSC
 Q
 ;
 ;
SPANSTYLE(RKV) ;
 N ST
 S ST="<span"
 I $G(RKV)'="" S ST=ST_" id='"_RKV_"'"
 I $D(W3ORDHD("SPANSTYLE")) S ST=ST_" style="""_W3ORDHD("SPANSTYLE")_""""
 E  I $D(SPANSTYLE) S ST=ST_" style="""_SPANSTYLE_""""
 I $D(DIR) S ST=ST_" dir="""_DIR_""""
 S ST=ST_">" K DIR,SPANSTYLE
 Q ST
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 N SEL S SEL=""
 ;
 D PUT^%W3DEB("W3ORDHD","INPCT-RKV=RKV& INPCT-WD=WD& INPCT-SIZE=SIZE& INPCT-DIR=DIR& INPCT-PRRG=PRRG")
 ;
 I $G(PRM)="IN" D
 .I $D(@$$^W4GL("P1IR"))>9 D
 ..W "<select"
 ..W " name="""_RKV_""" id="""_RKV_""""
 ..W " tabindex=""4"""
 ..W " onChange=""ChangeCity()"" >",!
 ..W "<option>&nbsp;</option>",!
 ..W "<option value='TAKEAWAY'"
 ..I $$CITY^W3HZMST(JB)="TAKEAWAY" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("TAKEAWAY")_"</option>",!
 ..N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ...N IR S IR=$G(^(N))
 ...N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$INVH^%L1FRM(IR)
 ...W "<option value='"_IRI_"'"
 ...I '$G(PRRG),$TR($$CITY^W3HZMST(JB,$S($G(PRRG)="R":$$^W3ORD,1:"^[$$^W3MAIN]TMPORD")),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"""
 ...I $G(PRRG),$TR($$IR^W3L(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"""
 ...W " >"_$$H2U^%L1FRM(IR)_"</option>",!
 ..W "</select>",!
 .
 .I '$D(@$$^W4GL("P1IR")) D
 ..W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";"
 ..W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 ..W " dir="""_$$^%W1DIR_""""
 ..W " name="""_RKV_""" id="""_RKV_""" value="""_$$RKV(RKV)_""""
 ..W " tabindex=""4"""
 ..W " onChange=""ChangeCity()""",!
 ..W " onKeyPress=""OnKeyPress(event)"""
 ..W " onFocus=""clearMenu()"" >",!
 .;;W "&nbsp;"
 ;
 I $G(PRM)="VW" D
 .W " :"_$$SPANSTYLE(RKV),"&nbsp;"
 .N MSD S MSD=$G(@$$^W3ORD(JB)@(JB,"MSD"))
 .I 'MSD S MSD=$$GET^%W1PRM("MSD")
 .
 .W $$RKV(RKV)
 .W "</span>"
 ;
 W "&nbsp;</td>" D VOSC
 Q
 ;
 ;
RKV(RKV)
 I $G(RKV)="" Q "&nbsp;"
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 D PUT^%W3DEB("W3ORDHD","RKV=RKV &GL=GL")
 ;
 ;;I RKV="TELB",$G(CODE) S VL=$$TELB^W3L(CODE) Q VL
 ;;I RKV="TELB",'$G(CODE) S RKV="NMB"
 ;
 N VL S @("VL=$$"_RKV_"^W3HZMST("_JB_","""_GL_""")")
 ;
 I RKV="HOME",$G(HOMEPRM) S HOME=HOMEPRM
 I RKV="CITY",VL="TAKEAWAY" S VL=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY","")
 I $$^%W1LNG="H",RKV="COMP",VL?.E1U.E D
 .N J F J=1:1:$L(VL) I $A(VL,J)>95,$A(VL,J)<123 D
 ..S VL=$$FUNC^%UCASE($$INVH^%L1FRM(VL))
 I VL'="" Q $$H2U^%L1FRM(VL)
 Q "&nbsp;"
 ;
RKVI(RKV)
 I $G(RKV)="" Q "&nbsp;"
 N VL ;;S @("VL=$$INV^%L1FRM($$"_RKV_"^W3HZMST("_JB_"))")
 S @("VL=$$"_RKV_"^W3HZMST("_JB_")")
 I VL'="" Q $$H2U^%L1FRM(VL)
 Q "&nbsp;"
 ;
P(I)
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 I $P($G(@GL@(JB)),"~",I)'="" Q $$H2U^%L1FRM($TR($P(@GL@(JB),"~",I),"?",""))
 Q ""
 ;
GETSNIF(STAM) ;
 Q $$GETSNIF^W3SNIF
 ;
VW ;
 N PRM S PRM="VW"
 I $D(W3ORDLS) S GL=$$^W3ORD
 I '$G(W3FAXHTM) W "<div align=""center"" >",!
 D OPTABLE
 I $D(W3ORDLS("JB")),'$G(W3FAXHTM) D MOUSEOVER^W3ORDLS
 W " >",!
 ;
 I $$^%W1LNG="H",'$G(W3FAXHTM) D  ;-------- VIEW HEBREW
 .W "<tr>",!
 .D CODE
 .D TEL
 .D PELE
 .N WIDTH S WIDTH="22%" D NAME
 .W "</tr>",!
 .W "</table>",!
 .
 .D OPTABLE
 .I $D(W3ORDLS("JB")),'$G(W3FAXHTM) D MOUSEOVER^W3ORDLS
 .W ">" K WIDTH
 .
 .W "<tr>"
 .I $D(W3ORDLS("JB")) K SPAN S:$$MKR^W3HZMST(JB,GL) SPAN=1 D COMPANY
 .D ADDRESS
 .
 .I $D(W3ORDLS("JB")) D  ; -- NEW ORDER ?
 ..I $$SHOW=2 G TOTIME
 ..W "</tr>",!
 ..
 ..W "</tr>" 
 ..;;W "<td>&nbsp;&nbsp;"_$$^%W1DICT("COMMENT")_" "_$$NBSP^%L1FRM(2)_": </td>"
 ..S WIDTH="25%" D DATCB
 ..W "<td colspan=""5"">"
 ..N CMHD S CMHD=$$CMHD^W3HZMST(JB,GL)
 ..I $L(CMHD) D
 ...W "<span style=""color:darkblue;font-size:"_$$^W3FSZ(11)_"""><b>"
 ... W $$H2U^%L1FRM(CMHD)
 ...W "</b></span>&nbsp;"
 ..
 ..I $$CODTS^W3HZMST(JB,GL)=3,$L($$CREDCARD^W3HZMST(JB,GL))<6 D
 ...I $$MKR^W3HZMST(JB,GL)=3 D  Q  ; REST
 ....W "<span style=""color:red;font-size:"_$$^W3FSZ(11)_""">"
 .... W $$^%W1DICT("PAID")
 ....W "</span>",!
 ...W "<span style=""color:red;font-size:"_$$^W3FSZ(11)_""">"_$$^%W1DICT("ASKUSER4CC")_"</span>",!
 ..
 ..I $$CODTS^W3HZMST(JB,GL)=9 D
 ...W "<span style=""color:red;font-size:"_$$^W3FSZ(11)_""">"
 ... W $$^%W1DICT("PICUL")
 ...W "</span>",!
 ..
 ..W "</td>"
TOTIME ..W "</tr>",!
 ..
 ..W "<tr>"
 ..
 ..D MKR
 ..
 ..W "<td style=""color:green;width:20%"">"_$$NAMEMSD(JB)_"</td>"
 ..
 ..I '$$NOFUTDAT^W3PRM D
 ...N W3ORDHD
 ...N SPANSTYLE S SPANSTYLE="font-size:"_$$^W3FSZ(14)
 ...S WIDTH="15%",SIZE="14pt" D DAT
 ...N SPANSTYLE S SPANSTYLE="font-size:"_$$^W3FSZ(14)
 ...S WIDTH="15%",SIZE="14pt" D SHAA
 ...D SOADIM
 .
 .; --------------------------------------------------
 .I '$D(W3ORDLS("JB")) D  ; VIEW ORDER ( W3ORDVW ) 
 ..I '$$TAW D
 ...S WIDTH="7%" D ENTRANCE
 ...S WIDTH="6%" D FLOOR
 ..
 ..S WIDTH="14%",SIZE="14pt" D DATCB
 ..
 ..I '$$NOFUTDAT^W3PRM D
 ...S WIDTH="10%",SIZE="14pt" D DAT S SIZE="14pt",WIDTH="5%" D SHAA
 ..
 ..D MKR
 ..W "</tr>",!
 ..W "</table>",!!
 ..D OPTABLE
 ..W ">",!
 ..W "<tr>",!
 ..S SPAN=3 D COMMENT
 ..S WIDTH="41%"
 ..D COMPANY
 .W "</tr>",!
 . ;; ------------- ZMAN HASPAKA -----------------
 .I '$D(^|$$^W3MAIN|W3ORD(JB)) D
 ..W "<tr style=""color:red;font-weight:bold"">"
 .. N TMS S TMS="&nbsp;"
 .. N IR S IR=$$CITY^W3HZMST(JB)
 .. N TMSPK S TMSPK=$$TMARV^W3SP(IR)
 .. I TMSPK S TMS=$$^%W1DICT("ARRIVETIME",TMSPK)
 .. W "<td colspan=""8"" align=""center"">"_TMS_"</td>"
 ..W "</tr>",! 
 ;
 ;
 I $G(W3FAXHTM) D  G ET ;-------------------- FAX -------------
 .N SPANSTYLE
 .I $$GET^%W1PRM("TAW") D PUT^W3HZMST(JB,"CITY","TAKEAWAY",GL)
 .
 .W "<tr>"
 .S WIDTH="50%" D CODE
 .S WIDTH="50%" D NAME
 .D TRE
 .
 .W "<tr>"
 .D TEL
 .D PELE
 .D TRE
 .
 .W "<tr>"
 .D STREET
 .I '$$TAW D HOME
 .I $$TAW W "<td>&nbsp;</td>"
 .D TRE
 .
 .W "<tr>"
 .I '$$TAW D FLAT,ENTRANCE,FLOOR
 .I $$TAW W "<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>"
 .D TRE
 .
 .W "<tr>"
 .D CITY
 .D COMPANY
 .D TRE
 .
 .W "<tr>"
 .S SPAN=2 D COMMENT
 .D TRE
 .
 .N SPANSTYLE S SPANSTYLE="font-size:20pt"
 .S SIZE="14pt"
 .S ALIGN=$S($$^%W1LNG="H":"right",1:"left")
 .
 .I '$$NOFUTDAT^W3PRM D
 ..W "<tr>"
 ..S SIZE="18pt"
 ..D DAT
 ..S SPANSTYLE="font-size:18pt"
 ..S ALIGN=$S($$^%W1LNG="H":"right",1:"left")
 ..S WIDTH="12%",SIZE="18pt" D SHAA
 ..D TRE
 .
 .W "<tr><td style=""font-size:9pt"">&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("RECEIVED")_"&nbsp; : "_$ZD($H,"24:60  DD.MM.YY")_"</td>"
 .I '$$NOFUTDAT^W3PRM D
 ..D PUT^W3HZMST(JB,"DATCB",$ZD($J,"DD.MM.YY  24:60"))
 .D MKR
 .D TRE
 ;
 ;
 I $$^%W1LNG'="H" D  ;---------------VIEW NO HEBREW ------------
 .N WIDTH,SPAN
 .W "<tr>",!
 .W "<td colspan=""4""><table width=""100%"" " D RWSTYLE W " >",!
 .S WIDTH="22%" D CODE
 .S WIDTH="25%" D TEL
 .S WIDTH="27%" D PELE
 .D NAME
 .W "</table></td></tr>",!
 .W "</tr>",!
 .I '$$TAW D
 ..W "<tr>",!
 ..N WIDTH S WIDTH="25%" D STREET
 ..S WIDTH="15%" D HOME
 ..S WIDTH="20%" D FLAT
 ..D EMAIL
 ..W "</tr>",!
 ..
 .W "<tr>",!
 .I '$$TAW D
 ..D ENTRANCE
 ..D FLOOR
 ..D CITY
 .I '$D(W3ORDLS) D
 ..S WIDTH="14%",SIZE="14pt" D DAT
 ..S WIDTH="10%",SIZE="14pt" D SHAA
 ..I $$TAW W "<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>",!
 .W "</tr>",!
 .
 .I $$TAW D TAWMSG^W3ORDDET
 .
 .W "<tr>",!
 .S SPAN=2 D COMMENT
 .I $D(W3ORDLS) D
 ..S WIDTH="14%",SIZE="14pt" D DAT
 ..S WIDTH="7%",SIZE="14pt" D SHAA
 .W "</tr>",!
 ;
ET W "</table>" D VOSC
 I '$G(W3FAXHTM) W "</div>",!
 Q
 ;;MOUSEOVER ;
 W " onMouseOver=""ChangeCursor(this)"" onClick=""ShowOrd('"_W3ORDLS("JB")_"','"_W3ORDLS_"')""",!
 Q
 ;
FILL(NMB) ;
 I $G(JB),'$G(CODE),$L($G(NMB))>3,'($D(@GL@(JB))#2)!$G(PRMENU) D
 .N EXIST S EXIST=0
 .I $$D^W3L(NMB) D EXIST
 .N NMB1 S NMB1=$TR(NMB,"-","") Q:NMB1=""
 .I EXIST D HOMEPRM(NMB1) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .N GL,GLTMP S GL=$$GLA^W3L
 .I '$$D^W3L(NMB1,GL),$G(@$$^W4GL("LKHAT")@(NMB1)) D
 ..S NMB1=@$$^W4GL("LKHAT")@(NMB1)
 ..I NMB1 D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 .I '$$D^W3L(NMB1,GL),$$^%W1LNG="H" D
 ..I $E(NMB1,1,2)="02" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="03" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="04" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="08" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="09" S NMB1=$E(NMB1,3,12) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .I '$$D^W3L(NMB1,GL) D HOMEPRM(NMB1) Q
 .I $G(HOMEPRM)?1N.N,+$$BAIT^W3L(NMB1,GL)'=+HOMEPRM D HOMEPRM(NMB1) Q
 .S $P(@$$^W3TMPORD@(JB),"~",1)=$$TELB^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",2)=$$LKH^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",3)=$$KTV^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",7)=$$CMNT^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",13)=$$KOMA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",14)=$$DIRA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",15)=$$BAIT^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",16)=$$CNISA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",31)=$$IR^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",32)=$$PELE^W3L(NMB1,GL)
 Q
 ;
EXIST ;
 W "<script>",!
 W " MsgA(""PHONEOFMEMBER"")",!
 W "</script>",!
 S EXIST=1 Q
TODAY(DAT) ;
 I $$^%L1DC(DAT,3)=+$H Q 1
 Q 0
HOMEPRM(NMB1) ;
 I $G(HOMEPRM) S $P(^[$$^W3MAIN]TMPORD(JB),"~",15)=HOMEPRM Q
 Q
OPTABLE ;
 W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""""
 D RWSTYLE
 I $G(PRM)="IN" W " onClick=""ifrHide('Table')"""
 I $G(W3FAXHTM) W " style=""font-size:"_$$^W3FSZ_";"""
 Q
RWSTYLE ;
 W " class=""hdfld"" "
 Q
NEWORD(JB) ;
 I $D(@$$^W3ORD(JB)@(JB)) Q 0
 I '$D(^[$$^W3MAIN]TMPORD(JB)) Q 1
 I $D(^[$$^W3MAIN]TMPORD(JB))>9 Q 0
 N NEO S NEO=1
 N I F I=1:1:$L(^(JB)) I $P(^[$$^W3MAIN]TMPORD(JB),"~") S NEO=0 Q
 Q NEO
 ;
SUBMIT ;
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q $S($$^%W1LNG="H":" ",1:"")
 Q "*"
 ;
ADDRESS ;
 S:'$D(GL) GL=""
 N KTV
 S KTV=$$H2U^%L1FRM($$KTV^W3HZMST(JB,GL))
 I $$TAW S KTV=$$^%W1DICT("TAKEAWAY")
 W "<td align='"_$S($$^%W1DIR="RTL":"right",1:"left")_"'"
 I $D(WIDTH) W " width='"_WIDTH_"'"
 ;;I $$SHOW=2 W " colspan='4'"
 W " colspan='5'"
 W " style="""
 I $$SHOW'=2,$D(W3ORDHD("TDSTYLE")) W W3ORDHD("TDSTYLE")
 I $$SHOW=2 W "font-size:"_$$^W3FSZ(14)_";color:darkblue;font-weight:bold"
 W """"
 W " >&nbsp;&nbsp;"_$$^%W1DICT("ADDRESS")_" : "
 W "<span "
 W " style="""
 I $D(W3ORDHD("SPANSTYLE")) W W3ORDHD("SPANSTYLE")
 W """"
 W ">"_KTV_"</span></td>",!
 K WIDTH Q
 ;
FILLTM(TODAT) ;
 N TOTIME,SHAA S TOTIME=$$GETTIME
 I TODAT["." S TODAT=$$^%L1DC(TODAT,3)
 I '$G(MSD) S MSD=$$GET^%W1PRM("MSD")
 I $G(TODAT),$G(MSD),$$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))=-2 S TOTIME=$$DP1^W3VLDTM(MSD,$ZD(TODAT,"DD.MM.YY"))
 I $$P(6)=""!($$P(6)="&nbsp;"),$G(TODAT),TODAT'=+$H S TOTIME=":00"
 N TXTTOTIME S TXTTOTIME=$$^%W1DICT("TOTIME")
 S $P(@GL@(JB),"~",6)=$$T^%L1TIME(TOTIME)
 N FROMHR,FROMMIN
 S (FROMHR,FROMMIN)=0
 I TOTIME[":" S FROMHR=$TR($P(TOTIME,":")," ",""),FROMMIN=$P(TOTIME,":",2)
 I TOTIME?1N.N S FROMHR=$P($$T^%L1TIME(TOTIME),":"),FROMMIN=$P($$T^%L1TIME(TOTIME),":",2)
 D PUT^%W3DEB("W3ORDHD","TODAT=TODAT & TOTIME=TOTIME & FROMHR=FROMHR & FROMMIN=FROMMIN")
 ;
 S TDTM="<select style=""background-color:yellow"" name=""SHAAhr"" id=""SHAAhrid"" onChange=""CallTfr('"_$G(CODE)_"')"" >"
 N MESHAA,ADSHAA
 S MESHAA=$$DP1^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 S ADSHAA=$$DP2^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 S MEMIN=0
 ;
 I +TODAT=+$H,$$T^%L1TIME($H)>MESHAA S MESHAA=+$$T^%L1TIME($H)
 ;
 I $G(MSD)=1!($G(MSD)=99999) D  ; --- SF
 .I TODAT>$H,$$^%L1DC(TODAT,8)'=6 S ADSHAA=24
 .I TODAT=($H+1)!$$GET^%W1PRM("FUTDAT") S MESHAA=9
 .I TODAT=+$H,MESHAA<9 S MESHAA=9
 ;
 N I F I=MESHAA:1:ADSHAA-1 D
 .S TDTM=TDTM_"<option value="""_I_""""
 .I +I=+FROMHR S TDTM=TDTM_" selected=""selected"""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select> : "
 ;D TIME^%W1DAT("SHAA",TOTIME,TXTTOTIME)
 N OST S OST=(FROMMIN#5)
 S FROMMIN=(FROMMIN\5+$S(OST>2:1,1:0))*5
 S TDTM=TDTM_"<select style=""background-color:yellow"" name=""SHAAmn"" id=""SHAAmnid"" onChange=""CallTfr('"_$G(CODE)_"')"" >"
 F I=MEMIN:5:55 D
 .S TDTM=TDTM_"<option value="""_I_""""
 .I +I=+FROMMIN S TDTM=TDTM_" selected=""selected"""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 S TDTM=TDTM_"</select>"
 Q TDTM
 ;
TVMENU ;
 W "<table width=""100%"" border=""0"" bgcolor=""white"">",!
 W " <tr>",!
 S PRMENU=1,PRM="IN"
 S %W1DAT("W3ORDHD")=""
 S ALIGN=$S($$^%W1DIR="RTL":"left",1:"right")
 S WIDTH="30%" D DAT
 W "</tr>",!
 W "<tr>",!
 S ALIGN=$S($$^%W1DIR="RTL":"left",1:"right")
 D CITY
 W "</tr></table>",!
 Q
 ;
MKR ;
 ;;I $$^W3HZMH(JB) Q
 N MKR S MKR=$$MKR^W3HZMST(JB,GL) Q:'MKR
 W "<td style=""color:"_$$FGMAKOR^W3CSS_""" id=""makor"">"
  W "&nbsp;&nbsp;"_$$^%W1DICT("MAKOR")_" <span style=""color:brown""> "_$$^W3MKR(MKR)
  N MKBL S MKBL=$$MKBL^W3HZMST(JB)
  ;;I $$SHOWMKBL^W4PRM,MKBL,MKBL?5N D
  I MKBL,MKBL?5N D
  .W "<span style=""color:brown""> "_$$H2U^%L1FRM($$^W4NAME(MKBL))_"</span>"
 W "</td>",!
 Q
 ;
NAMEMSD(HZ) ;
 I '$G(HZ) Q ""
 N RST,RSTN
 S RSTN=$G(@$$^W3ORD(HZ)@(HZ,"MSDN"))
 I RSTN'?.P Q $$H2U^%L1FRM(RSTN)
 S RST=$G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 I RST="" Q ""
 Q $$NAME^W3MSD(RST)
 ;
TAW(STAM) ;
 I $$CITY^W3HZMST(JB,$G(GL))="TAKEAWAY" Q 1
 I $$GET^%W1PRM("TAW") Q 1
 Q 0
 ;
TRE ;
 W "<tr>" D VOSC
 Q
VOSC ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 Q
SHOW(STAM) ;
 Q $$SHOW^W3ORDLS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDHD0
W3ORDHD(PRM,CODE) ; [ 09.11.15 15:36 ] [ 08.11.15 11:20 ] [ 05.11.15 18:35 ]
 ;;I $G(NMB)="" K ^[$$^W3MAIN]TMPORD(JB)
 N FUTDAT,TODAT,TOTIME,PRMENU
 N MSD S MSD=$$GET^%W1PRM("MSD")
 Q:'$G(MSD)  Q:'$G(JB)
 S PRMENU=0
 I CODE["$" S CODE=$TR(CODE,"$",""),PRMENU=1
 S CODE=$$SPA^%L1FRM(CODE)
 I $L($G(CODE))>3 D PUT^%W1PRM("CODE",CODE)
 I $L($G(CODE))<4 S CODE=$$GET^%W1PRM("CODE")
 ;
 I '$D(^[$$^W3MAIN]TMPORD(JB)),$D(@$$^W3ORD(JB)@(JB)) M ^[$$^W3MAIN]TMPORD(JB)=@$$^W3ORD(JB)@(JB)
 ;
 N NMB I 'PRMENU S NMB=$$NMB^W3HZMST(JB)
 I PRMENU S NMB=$P(CODE,"~")
 N HOMEPRM S HOMEPRM="" I CODE["~" S HOMEPRM=$P(CODE,"~",2),CODE=$P(CODE,"~")
 ;
 I CODE["!" D
 .S NMB=$$SPA^%L1FRM($P(CODE,"!")),CODE=""
 .D FILL(NMB)
 .I '$P($G(^[$$^W3MAIN]TMPORD(JB)),"~",1) S $P(^[$$^W3MAIN]TMPORD(JB),"~",1)=$TR(NMB,"-","")
 .S ^[$$^W3MAIN]TMPORD(JB,"NOCODE")=""
 ;
 I $G(CODE)="",$$LKH^W3L(NMB)="" S CODE=$G(NMB)
 ;
 D KILL^%W3DEB("W3ORDHD")
 D PUT^%W3DEB("W3ORDHD","ARG=[%ARG & CODE=CODE & JB=JB &MSD=MSD &NMB=NMB")
 ;
 D PUT^%W1PRM("NMB",NMB)
 ;
 N GL S GL="^[$$^W3MAIN]TMPORD"
 ;;S $ZGBLDIR=$$^W3UCI(MSD)
 ;
 I $G(JB),$G(CODE),$D(^LKH(CODE)),$$NEWORD(JB)!PRMENU D
 .S $P(@GL@(JB),"~",1)=$$TELB^W3L(CODE)
 .S $P(@GL@(JB),"~",2)=$$LKH^W3L(CODE)
 .S $P(@GL@(JB),"~",3)=$$KTV^W3L(CODE)
 .S $P(@GL@(JB),"~",7)=$$CMNT^W3L(CODE)
 .S $P(@GL@(JB),"~",13)=$$KOMA^W3L(CODE)
 .S $P(@GL@(JB),"~",14)=$$DIRA^W3L(CODE)
 .S $P(@GL@(JB),"~",15)=$$BAIT^W3L(CODE)
 .S $P(@GL@(JB),"~",16)=$$CNISA^W3L(CODE)
 .S $P(@GL@(JB),"~",27)=$TR(CODE,"-$","")
 .S $P(@GL@(JB),"~",31)=$$IR^W3L(CODE)
 .S $P(@GL@(JB),"~",32)=$$PELE^W3L(CODE)
 ;
 ;
 W "<form id=""FormHD"" name=""FormHD"">",!
 ;
 ;------------------------------ PRM="INP" -----------
 ;
 D OPTABLE W ">",!
 ;
 I $$^%W1LNG="H" D  ; ---------------- HEBREW -----
 .W "<tr>"
  .N WIDTH,ALIGN
  .S WIDTH="16%" D NMB
  .S WIDTH="15%" D PELE
  .S WIDTH="21%" D NAME
  .S WIDTH="16%",ALIGN="center" D CITY
  .S ALIGN=$S($$^%W1DIR="RTL":"left",1:"right") S WIDTH="30%" D STREET
 .W "</tr>",!
 .W "</table>",!
 .W !
 .
 .D OPTABLE W " >",!
 .W "<tr>",!
 .;
 .D HOME
 .D FLAT
 .D ENTRANCE
 .D FLOOR
 .D COMMENT
 .S %W1DAT("W3ORDHD")=""
 .S WIDTH="16%" D DAT
 .S %W1DAT("W3ORDHD")=""
 .D SHAA
 ;
 ;
 I $$^%W1LNG'="H" D  ;-------------- INPUT LOAZIT --------------
 .W "<tr>"
 .W "<td width=""45%""><table width=""100%"" "
   .N SPAN,%W1DAT
   .D RWSTYLE
   .W "><tr>",!
   .D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"&nbsp;" D TDE
   .D TD D INP("NMB",100,14,"LTR") D TDE
   .D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"&nbsp;&nbsp;" D TDE
   .D TD D INP("PELE",100,14,"LTR") D TDE
   .W "</tr>"
   .
   .W "<tr>"
   .D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET") D TDE
   .S SPAN=2 D TD D INP("STREET","100%",40,$$^%W1DIR,"T") D TDE
   .W "<td align=""right"">"_$$^%W1DICT("HOME") D TDE
   .W "</tr>",!
   .
   .W "<tr>",!
   .D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"&nbsp;&nbsp;" D TDE
   .S SPAN=2 D TD D INP("COMMENT","100%",40,$$^%W1DIR,"T") D TDE
   .W "<td align=""right"">",$$^%W1DICT("TODATE") D TDE
   .W "</tr>",!
   .
   .W "</table></td>"
   .
   .W "<td width=""28%""><table width=""100%"" "
   .D RWSTYLE
   .W "><tr>"
   .W "<td align=""right"">&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"&nbsp;" D TDE
   .S SPAN=2,WIDTH="55%" D TD D INP("NAME","100%",30,$$^%W1DIR,"T") D TDE
   .W "</tr><tr>",!
   .
   .W "<td>&nbsp;" W:$$^%W1LNG="R" "&nbsp;&nbsp;&nbsp;&nbsp;" D INP("HOME",30,3,"LTR") D TDE
   .W "<td align=""right"">" W $$^%W1DICT("FLAT") D TDE
   .D TD W:$$^%W1LNG="R" "&nbsp;&nbsp;" D INP("FLAT",40,5,"LTR") D TDE
   .W "</tr>"
   .
   .W "<tr>" S %W1DAT("TD")="",%W1DAT("W3ORDHD")="" D DAT ; -- V ^%W1DAT <TD>TEXT</TD><TD>DATE</TD>
   .;;S %W1DAT("TDTM")="",%W1DAT("W3ORDHD")=""
   .S %W1DAT("W3ORDHD")=""
   .D SHAA W "</tr></table></td>",!
   .
   .
   .W "<td><table width=""100%""" D RWSTYLE
   .W "> <tr>",!
   .W "   <td width=""35%"" align=""right"">&nbsp;"_$$ZW_$$^%W1DICT("CITY") D TDE
   .S SPAN=3,ALIGN="right" D TD D INPCT("CITY",120,$$^%W1DIR,"T")
   .W "   </tr><tr>",!
   .w "  <td width=""35%"" align=""right""> &nbsp;"_$$^%W1DICT("ENTRANCE") D TDE
   .D TD D INP("ENTRANCE",30,5,$$^%W1DIR) D TDE
   .W "  <td width=""27%"" align=""right"">&nbsp;"_$$^%W1DICT("FLOOR") D TDE
   .W "  <td width=""15%"" align=""right"">" D INP("FLOOR",30,3,$$^%W1DIR) D TDE
   .W " </tr>"
   .W "<tr><td>&nbsp;</td></tr>"
   .W "</table></td>"
 ;
 W "</tr>",!
 W "</table>",!
 W "</form>",!
 ;
 I $G(FUTDAT),$G(PRM)'="VW" D
 .W "<script>",!
 .W "Msg(""FUTDAT"","""")",!
 .W "</script>",!
 Q
 ;
CODE I $G(W3FAXHTM) S WIDTH="15%"
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CUSTCODE")_"&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="H" D TDE S WIDTH="35%" D TD
 N CODE S CODE=$$RKV("CODE")
 I CODE=""!(CODE="&nbsp;") S CODE=$$^%W1DICT("GUEST")
 W ":&nbsp;"_$$SPANSTYLE("")_CODE_"</span>" D TDE
 Q
 ;
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"&nbsp;"
 I $$^W4DLVCSR!$G(W3FAXHTM) D  Q
 .D INP("TELB",100,$S($$^%W1LNG="H":11,1:14),"LTR") D TDE,TD
 N WD S WD=100
 D INP("NMB",WD,$S($$^%W1LNG="H":11,1:14),"LTR") D TDE
 Q
 ;
PELE D TD W "&nbsp;&nbsp;"_$$^%W1DICT("MOBIL")_"&nbsp;&nbsp;"
 I $G(W3FAXHTM) D TDE,TD
 N WD S WD=100
 D INP("PELE",WD,$S($$^%W1LNG="H":12,1:14),"LTR") D TDE
 Q
 ;
EMAIL ;
 N CODE S CODE=$$RKV("CODE")
 Q:CODE=""
 N EMAIL S EMAIL=$$FUNC^%LCASE($$EMAIL^W3L(CODE))
 W "<td>"_$$SPANSTYLE("")_"<a href=""mailto:"_EMAIL_""">"_EMAIL_"</a></span></td>",!
 Q
 ;
NAME ;
 I $G(W3FAXHTM) S WITH="15%"
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="H" D TDE S WIDTH="35%" D TD
 N WD S WD=160
 D INP("NAME",WD,30,$$^%W1DIR,"T") D TDE
 Q
 ;
COMPANY N SPAN S SPAN=2 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("COMPANYNAME")_"&nbsp;"
 I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;&nbsp;&nbsp;"
 N WD S WD=160
 D INP("COMP",WD,30,$$^%W1DIR,"T") D TDE
 Q
 ;
STREET W "<td "
 W "id=""tdstreet"" dir="""_$$^%W1DIR_""""
 I $D(WIDTH) W " width="""_WIDTH_"""" K WIDTH
 I $G(PRM)="VW" W " align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 I $G(PRM)="IN" W " align="""_$S($$^%W1DIR="LTR":"right",1:"left")_""""
 W " style="""
 I $D(W3ORDHD("TDSTYLE")) D
 .W W3ORDHD("TDSTYLE")_";"
 W """"
 W ">"
 I $G(PRM)="VW",$$^%W1LNG'="H" W "&nbsp;"
 D STREET1
 D TDE
 Q
STREET1 ;
 W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")
 I $G(W3FAXHTM) D TDE,TD
 I '$G(W3FAXHTM) W "&nbsp;&nbsp;&nbsp;&nbsp;"
 N WD S WD=210
 D INP("STREET",WD,30,$$^%W1DIR,"T")
 Q
 ;
HOME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"&nbsp;&nbsp;"
 I $G(W3FAXHTM) D TDE,TD
 I $$^%W1LNG="R",$G(PRM)="IN" W "&nbsp;"
 N WD S WD=30
 D INP("HOME",WD,3,"LTR") D TDE
 Q
 ;
FLAT D TD W "&nbsp;&nbsp;"_$$^%W1DICT("FLAT")_"&nbsp;&nbsp;"
 I $$^%W1LNG="R" W "&nbsp;"
 I $G(W3FAXHTM) D TDE,TD
 N WD S WD=40
 D INP("FLAT",WD,5,"LTR") D TDE
 Q
 ;
ENTRANCE S:$$^%W1LNG="R"&($G(PRM)="IN") ALIGN="right"
 D TD
 W "&nbsp;&nbsp;"_$$^%W1DICT("ENTRANCE")
 I '$G(W3FAXHTM) D TDE,TD
 I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;"
 N WD S WD=30
 D INP("ENTRANCE",WD,5,$$^%W1DIR) I '$G(W3FAXHTM) D TDE
 Q
 ;
FLOOR I '$G(W3FAXHTM) S:$$^%W1LNG="R"&($G(PRM)="IN") ALIGN="right" D TD
 I $G(W3FAXHTM) W "&nbsp;&nbsp;&nbsp;&nbsp;"
 I $G(PRM)="IN" W "&nbsp;&nbsp;"_$$ZW_$$^%W1DICT("FLOOR")_"&nbsp;&nbsp;"
 I $G(PRM)="VW" W "&nbsp;"_$$^%W1DICT("FLOOR")_"&nbsp;"
 N WD S WD=30
 D INP("FLOOR",WD,3,$$^%W1DIR) D TDE
 Q
 ;
CITY S:$$^%W1LNG="R"&($G(PRM)="IN") ALIGN="right"
 N WIDTH D TD
 W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"&nbsp;&nbsp;"
 I $G(W3FAXHTM) D TDE,TD
 N WD S WD=$S($$^%W1LNG="H":100,1:150)
 D INPCT("CITY",WD,14,$$^%W1DIR,"T")
 Q
 ;
COMMENTZG ;
 W "&nbsp;&nbsp;"_$$^%W1DICT("COMMENT")_"&nbsp;&nbsp;"
 Q
 ;
COMMENT N WIDTH
 D TD
 I $$RKV("COMMENT")="&nbsp;"!($$RKV("COMMENT")=""),$G(PRM)="VW" D  D TDE Q
 .W "&nbsp;" Q
 D COMMENTZG
 N WD S WD=245
 I $$^W4SMALL S WD="80%"
 D INP("COMMENT",WD,40,$$^%W1DIR,"T") D TDE
 Q
 ;
GETDAT(STAM) ;
 N TODAT,DAT S TODAT=+$H
 N A S A=$$^W3TIME($H,$$CITY^W3HZMST(JB)) I $D(W3TIME("ND")) S TODAT=TODAT+1
 S DAT=$$P(5)
 I DAT S TODAT=$$^%L1DC(DAT,3)
 Q TODAT
 ;
GETTIME(STAM) ;
 N TOTIME,SHAA S TOTIME=$H
 S TOTIME=$P($$^W3TIME($H,$$CITY^W3HZMST(JB)),",",2)
 S SHAA=$$P(6)
 I SHAA'?.P,SHAA'=0,SHAA'="&nbsp;" S TOTIME=$P(SHAA,":")*3600+($P(SHAA,":",2)*60)
 Q TOTIME
 ;
CHECKDAT(DT) ;
 I $G(FUTDAT),$$^%L1DC(DT,8)=6,$G(MSD)=1 Q 0
 Q ($$^W3VLDDT($$^%L1DC(DT,1))>0)
 ;
DAT ;
 N TXTDAT S TXTDAT=""
 ;
 D KILL^%W1PRM("FUTDAT")
 ;
 I '$D(%W1DAT("TD")) D  ;--- NE INOSTR VVOD
 .S DIR="LTR"
 .I $D(%W1DAT("ALIGN")) N ALIGN S ALIGN=%W1DAT("ALIGN")
 .D TD
 .I '$G(W3FAXHTM) W "&nbsp;"
 .I $G(W3FAXHTM),$$^%W1LNG="E" W "&nbsp;&nbsp;"
 .I '$D(%W1DAT("ALIGN")) S %W1DAT("ALIGN")="center"
 .S TXTDAT=$$^%W1DICT("TODATE")
 ;
 S FUTDAT=0
 ;
 I $G(PRM)="IN" D
 .S TODAT=$$GETDAT
 .S TOTIME=$$GETTIME
 .I '$$P(5),'$$P(6) I $$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))=-3 S TODAT=TODAT+1,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .I '$$CHECKDAT(TODAT) D
 ..N DT F DT=TODAT+1:1 Q:$$CHECKDAT(DT)
 ..S TODAT=DT,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .S %W1DAT("CLND")=1
 .S $P(@GL@(JB),"~",5)=$$^%L1DC(TODAT,1)
 .D ^%W1DAT("DAT",TODAT,TXTDAT)
 ;
 I $G(PRM)="VW" D
 .I '$D(W3FAXHTM) D
 ..I '$D(%W1DAT("TXT")) S TXTDAT=$$^%W1DICT("TODT") Q
 ..S TXTDAT=%W1DAT("TXT")
 .W TXTDAT I '$$^W4SMALL W $S($G(W3FAXHTM)&($$^%W1LNG="H"):"",1:"&nbsp;")
 .N DAY S DAY=$$^%W1DICT("DAY"_$$^%L1DC($$P(5),8))
 .I $$^%W1LNG="H" S DAY=$P(DAY,";")_";"
 .W "&nbsp;:&nbsp;"_$$SPANSTYLE("")_$$P(5)_"&nbsp;"_DAY
 .W $S($G(W3FAXHTM)&($$^%W1LNG="H"):"&nbsp;",1:"")_"</span>"
 W "</td>" D VOSC
 K %W1DAT
 Q
 ;
SHAA ;
 I $G(PRM)="IN" D
 .I '$D(%W1DAT("TDTM")) D  ; -- NE INOSTR VV
 ..W "<td dir=""LTR"" id=""SHAATD"" >",!
 .W $$FILLTM(TODAT),!
 ;
 I $G(PRM)="VW" D
 .I '$D(%W1DAT("TDTM")) S DIR="LTR" D TD
 .I $G(W3FAXHTM),$$^%W1LNG="E" W "&nbsp;&nbsp;"
 .I $D(W3FAXHTM) W $$^%W1DICT("TOTIME")_"&nbsp; :"
 .W $$SPANSTYLE("")_"&nbsp;"_$$P(6)_"&nbsp;</span>"
 .I $G(W3FAXHTM),$$^%W1LNG="H" W "&nbsp;"
 I '$D(%W1DAT("TDTM")) W "</td>" D VOSC
 Q
 ;
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 W " style="""
 I $D(SIZE) W "font-size:"_SIZE_";"
 I $D(W3ORDHD("TDSTYLE")) D
 .W W3ORDHD("TDSTYLE")_";"
 W """"
 I $D(DIR) W " dir="""_DIR_""""
 W " >" D VOSC
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
 ;
DATCB W "<td "
 I '$G(WIDTH) S WIDTH="16%"
 W " style="""
 I $D(W3ORDHD("TDSTYLE")) D
 .W W3ORDHD("TDSTYLE")_";"
 W """"
 W " width="""_WIDTH_""">"
 W "&nbsp;&nbsp;"_$$^%W1DICT("RECEIVED")_" : "
 W "<span "
 W " style="""
 I $D(W3ORDHD("SPANSTYLE")) W W3ORDHD("SPANSTYLE")
 W """"
 W ">"
 I $$NOFUTDAT^W3PRM D
 .I '$D(@$$^W3ORD(JB)@(JB)) D PUT^W3HZMST(JB,"DATCB",$ZD($H,"DD.MM.YY  24:60"))
 ;
 W $$RPL^%L1FRM($$DATCB^W3HZMST(JB,$G(GL,$$^W3ORD))," ","&nbsp;")
 W "</span>"
 W "</td>",!
 K WIDTH Q
 ;
TDE W "</td>" D VOSC
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 I $G(PRM)="IN" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD_$S(DIR="LTR":";text-align:"_$S($G(PRTX)="T":"left",1:"right"),1:"")_""""
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .W " onKeyPress=""OnKeyPress(event)"""
 .W " onChange=""CallTfr('"_CODE_"')"""
 .I RKV'="STREET" D
 ..W " onFocus=""noIfrHide=0;ifrHide('"_RKV_"')"""
 ..W " value="""_$$RKV(RKV)_""""
 ..W " tabindex="""_$S(RKV="NMB":1,RKV="PELE":2,RKV="NAME":3,RKV="HOME":6,RKV="FLAT":7,RKV="ENTRANCE":8,RKV="FLOOR":9,RKV="COMMENT":10,1:11)_""""
 .I RKV="STREET" D
 ..N VL S VL=$$RKV(RKV)
 ..I VL'?1N.N W " value="""_$$RPL^%L1FRM(VL,"""","''")_""""
 ..I VL?1N.N W " value="""_$$H2U^%L1FRM($$SNIFA^W3SNIF(VL))_""""
 ..W " tabindex=""5"""
 ..W " onFocus=""noIfrHide=1"""
 ..N CITY S CITY=$$CITY^W3HZMST(JB,$G(GL))
 ..I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 .W " />"
 ;
 I $G(PRM)="VW" D
 .W ": "_$$SPANSTYLE(RKV)
 .I RKV'="STREET" W "&nbsp;"_$$RKV(RKV)_"</span>"
 .I RKV="STREET" D
 ..N VL S VL=$$RKV(RKV)
 ..I VL'?1N.N W "&nbsp;"_VL
 ..I VL?1N.N W "&nbsp;"_$$H2U^%L1FRM($$SNIFA^W3SNIF(VL))
 ..W "</span>" D VOSC
 Q
 ;
 ;
SPANSTYLE(RKV) ;
 N ST
 S ST="<span"
 I $G(RKV)'="" S ST=ST_" id='"_RKV_"'"
 I $D(W3ORDHD("SPANSTYLE")) S ST=ST_" style="""_W3ORDHD("SPANSTYLE")_""""
 E  I $D(SPANSTYLE) S ST=ST_" style="""_SPANSTYLE_""""
 I $D(DIR) S ST=ST_" dir="""_DIR_""""
 S ST=ST_">" K DIR,SPANSTYLE
 Q ST
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 N SEL S SEL=""
 ;
 D PUT^%W3DEB("W3ORDHD","INPCT-RKV=RKV& INPCT-WD=WD& INPCT-SIZE=SIZE& INPCT-DIR=DIR& INPCT-PRRG=PRRG")
 ;
 I $G(PRM)="IN" D
 .I $D(^[$$^%W1UCI(JB)]P1IR)>9 D
 ..W "<select"
 ..W " name="""_RKV_""" id="""_RKV_""""
 ..W " tabindex=""4"""
 ..W " onChange=""ChangeCity()"" >",!
 ..W "<option>&nbsp;</option>",!
 ..W "<option value='TAKEAWAY'"
 ..I $$CITY^W3HZMST(JB)="TAKEAWAY" W " selected=""selected"""
 ..W ">"_$$^%W1DICT("TAKEAWAY")_"</option>",!
 ..N N S N="" F  S N=$O(^[$$^%W1UCI(JB)]P1IR(N)) Q:N=""  D
 ...N IR S IR=$G(^(N))
 ...N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$INVH^%L1FRM(IR)
 ...W "<option value='"_IRI_"'"
 ...I '$G(PRRG),$TR($$CITY^W3HZMST(JB,$S($G(PRRG)="R":$$^W3ORD,1:"^[$$^W3MAIN]TMPORD")),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"""
 ...I $G(PRRG),$TR($$IR^W3L(PRRG),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"""
 ...W " >"_$$H2U^%L1FRM(IR)_"</option>",!
 ..W "</select>",!
 .
 .I '$D(^[$$^%W1UCI(JB)]P1IR) D
 ..W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";"
 ..W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 ..W " dir="""_$$^%W1DIR_""""
 ..W " name="""_RKV_""" id="""_RKV_""" value="""_$$RKV(RKV)_""""
 ..W " tabindex=""4"""
 ..W " onChange=""ChangeCity()""",!
 ..W " onKeyPress=""OnKeyPress(event)"""
 ..W " onFocus=""clearMenu()"" >",!
 .;;W "&nbsp;"
 ;
 I $G(PRM)="VW" D
 .W " :"_$$SPANSTYLE(RKV),"&nbsp;"
 .N MSD S MSD=$G(@$$^W3ORD(JB)@(JB,"MSD"))
 .I 'MSD S MSD=$$GET^%W1PRM("MSD")
 .
 .I MSD,$$COUNTRY^W3R(MSD)="HK" D  W "</span>" Q
 ..N COUNTRY,IR,STREET,BAIT,AZOR1
 ..S COUNTRY=$$COUNTRY^W3R(MSD)
 ..S IR=$$CITY^W3HZMST(JB)
 ..S STREET=$$STREET^W3HZMST(JB)
 ..S BAIT=$$HOME^W3HZMST(JB)
 ..S AZOR1=$$AZOR1^W3AZR(COUNTRY,IR,STREET,BAIT)
 ..W $$H2U^%L1FRM(AZOR1)
 .
 .W $$RKV(RKV)
 .W "</span>"
 ;
 W "&nbsp;</td>" D VOSC
 Q
 ;
 ;
RKV(RKV)
 I $G(RKV)="" Q "&nbsp;"
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 D PUT^%W3DEB("W3ORDHD","RKV=RKV &GL=GL")
 ;
 I RKV="TELB",$G(CODE) S VL=$$TELB^W3L(CODE) Q VL
 I RKV="TELB",'$G(CODE) S RKV="NMB"
 ;
 N VL S @("VL=$$"_RKV_"^W3HZMST("_JB_","""_GL_""")")
 ;
 I RKV="HOME",$G(HOMEPRM) S HOME=HOMEPRM
 I RKV="CITY",VL="TAKEAWAY" S VL=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY","")
 I $$^%W1LNG="H",RKV="COMP",VL?.E1U.E D
 .N J F J=1:1:$L(VL) I $A(VL,J)>95,$A(VL,J)<123 D
 ..S VL=$$FUNC^%UCASE($$INVH^%L1FRM(VL))
 I VL'="" Q $$H2U^%L1FRM(VL)
 Q "&nbsp;"
 ;
RKVI(RKV)
 I $G(RKV)="" Q "&nbsp;"
 N VL ;;S @("VL=$$INV^%L1FRM($$"_RKV_"^W3HZMST("_JB_"))")
 S @("VL=$$"_RKV_"^W3HZMST("_JB_")")
 I VL'="" Q $$H2U^%L1FRM(VL)
 Q "&nbsp;"
 ;
P(I)
 I '$D(GL) S GL="^[$$^W3MAIN]TMPORD"
 I $P($G(@GL@(JB)),"~",I)'="" Q $$H2U^%L1FRM($TR($P(@GL@(JB),"~",I),"?",""))
 Q ""
 ;
GETSNIF(STAM) ;
 Q $$GETSNIF^W3SNIF
 ;
VW ;
 N PRM S PRM="VW"
 I '$G(W3FAXHTM) W "<div align=""center"" >",!
 D OPTABLE
 I $D(W3ORDLS("JB")),'$G(W3FAXHTM) D MOUSEOVER^W3ORDLS
 W " >",!
 ;
 I $$^%W1LNG="H",'$G(W3FAXHTM) D  ;-------- VIEW HEBREW
 .W "<tr>",!
 .D CODE
 .D NMB
 .D PELE
 .D NAME
 .W "</tr>",!
 .W "</table>",!
 .
 .D OPTABLE
 .
 .I $D(W3ORDLS("JB")),'$G(W3FAXHTM) D MOUSEOVER^W3ORDLS
 .W ">" K WIDTH
 .W "<tr>"
 .I $D(W3ORDLS("JB")) K SPAN S:$$MKR^W3HZMST(JB,GL) SPAN=1 D COMPANY
 .D ADDRESS
 .
 .I $D(W3ORDLS("JB")) D
 ..W "<td colspan=""2"">"
 ..N CMHD S CMHD=$$CMHD^W3HZMST(JB,GL)
 ..I $L(CMHD) D
 ...W "<span style=""color:darkblue;font-weight:bold;font-size:"_$$^W3FSZ(11)_""">"
 ... W $$H2U^%L1FRM(CMHD)
 ...W "</span>&nbsp;"
 ..
 ..I $$CODTS^W3HZMST(JB,GL)=3,$L($$CREDCARD^W3HZMST(JB,GL))<6 D
 ...I $$MKR^W3HZMST(JB,GL)=3 D  Q  ; REST
 ....W "<span style=""color:red;font-size:"_$$^W3FSZ(11)_""">"
 .... W $$^%W1DICT("PAID")
 ....W "</span>",!
 ...W "<span style=""color:red;font-size:"_$$^W3FSZ(11)_""">"_$$^%W1DICT("ASKUSER4CC")_"</span>",!
 ..
 ..I $$CODTS^W3HZMST(JB,GL)=9 D
 ...W "<span style=""color:red;font-size:"_$$^W3FSZ(11)_""">"
 ... W $$^%W1DICT("PICUL")
 ...W "</span>",!
 ..
 ..W "</td>"
 ..W "</tr><tr>",!
 ..
 ..S WIDTH="26%" D DATCB
 ..D MKR
 ..W "<td style=""color:green;width:15%"">"_$$NAMEMSD(JB)_"</td>"
 ..D SOAD
 ..I '$$NOFUTDAT^W3PRM D
 ...S WIDTH="22%",SIZE="14pt" D DAT
 ...S WIDTH="20%",SIZE="14pt" D SHAA
 .
 .I '$D(W3ORDLS("JB")) D  ; ORDER ( W3ORDVW )
 ..I '$$TAW D
 ...S WIDTH="10%" D ENTRANCE
 ...S WIDTH="8%" D FLOOR
 ..I '$$NOFUTDAT^W3PRM D
 ...S WIDTH="17%",SIZE="14pt" D DAT S SIZE="14pt",WIDTH="6%" D SHAA
 ..I $$NOFUTDAT^W3PRM D
 ...S WIDTH="21%",SIZE="14pt" D DATCB
 ..D MKR
 ..W "</tr>",!
 ..W "</table>",!!
 ..
 ..D OPTABLE
 ..W ">",!
 ..W "<tr>",!
 ..S SPAN=3 D COMMENT
 ..S WIDTH="35%"
 ..D COMPANY
 ..D SOAD
 .W "</tr>",!
 ;
 ;
 I $G(W3FAXHTM) D  G ET ;-------------------- FAX -------------
 .N SPANSTYLE
 .I $$GET^%W1PRM("TAW") D PUT^W3HZMST(JB,"CITY","TAKEAWAY",GL)
 .
 .W "<tr>"
 .D CODE
 .D NAME
 .D TRE
 .
 .W "<tr>"
 .D NMB
 .D PELE
 .D TRE
 .
 .W "<tr>"
 .D STREET
 .I '$$TAW D HOME
 .I $$TAW W "<td>&nbsp;</td>"
 .D TRE
 .
 .W "<tr>"
 .I '$$TAW D FLAT,ENTRANCE,FLOOR
 .I $$TAW W "<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>"
 .D TRE
 .
 .W "<tr>"
 .D CITY
 .D COMPANY
 .D TRE
 .
 .W "<tr>"
 .S SPAN=2 D COMMENT
 .D SOAD
 .D TRE
 .
 .N SPANSTYLE S SPANSTYLE="font-size:20pt"
 .S SIZE="14pt"
 .S ALIGN=$S($$^%W1LNG="H":"right",1:"left")
 .
 .I '$$NOFUTDAT^W3PRM D
 ..W "<tr>"
 ..S SIZE="18pt"
 ..D DAT
 ..S SPANSTYLE="font-size:18pt"
 ..S ALIGN=$S($$^%W1LNG="H":"right",1:"left")
 ..S WIDTH="12%",SIZE="18pt" D SHAA
 ..D TRE
 .
 .W "<tr><td style=""font-size:9pt"">&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("RECEIVED")_"&nbsp; : "_$ZD($H,"24:60  DD.MM.YY")_"</td>"
 .I '$$NOFUTDAT^W3PRM D
 ..D PUT^W3HZMST(JB,"DATCB",$ZD($J,"DD.MM.YY  24:60"))
 .D MKR
 .D TRE
 ;
 ;
 I $$^%W1LNG'="H" D  ;---------------VIEW NO HEBREW ------------
 .N WIDTH,SPAN
 .W "<tr>",!
 .W "<td colspan=""4""><table width=""100%"" " D RWSTYLE W " >",!
 .S WIDTH="22%" D CODE
 .S WIDTH="25%" D NMB
 .S WIDTH="27%" D PELE
 .D NAME
 .W "</table></td></tr>",!
 .W "</tr>",!
 .I '$$TAW D
 ..W "<tr>",!
 ..N WIDTH S WIDTH="25%" D STREET
 ..S WIDTH="15%" D HOME
 ..S WIDTH="20%" D FLAT
 ..D EMAIL
 ..W "</tr>",!
 ..
 .W "<tr>",!
 .I '$$TAW D
 ..D ENTRANCE
 ..D FLOOR
 ..D CITY
 .I '$D(W3ORDLS) D
 ..S WIDTH="14%",SIZE="14pt" D DAT
 ..S WIDTH="10%",SIZE="14pt" D SHAA
 ..I $$TAW W "<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>",!
 .W "</tr>",!
 .
 .I $$TAW D TAWMSG^W3ORDDET
 .
 .W "<tr>",!
 .S SPAN=2 D COMMENT
 .I $D(W3ORDLS) D
 ..S WIDTH="14%",SIZE="14pt" D DAT
 ..S WIDTH="7%",SIZE="14pt" D SHAA
 .W "</tr>",!
 ;
ET W "</table>" D VOSC
 I '$G(W3FAXHTM) W "</div>",!
 Q
 ;;MOUSEOVER ;
 W " onMouseOver=""ChangeCursor(this)"" onClick=""ShowOrd('"_W3ORDLS("JB")_"','"_W3ORDLS_"')""",!
 Q
 ;
FILL(NMB) ;
 I $G(JB),'$G(CODE),$L($G(NMB))>3,'($D(@GL@(JB))#2)!$G(PRMENU) D
 .N EXIST S EXIST=0
 .I $$D^W3L(NMB) D EXIST
 .N NMB1 S NMB1=$TR(NMB,"-","") Q:NMB1=""
 .I EXIST D HOMEPRM(NMB1) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .N GL,GLTMP S GL=$$GLA^W3L
 .I '$$D^W3L(NMB1,GL),$G(^[$$^%W1UCI(JB)]LKHAT(NMB1)) D
 ..S NMB1=^[$$^%W1UCI(JB)]LKHAT(NMB1)
 ..I NMB1 D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 .I '$$D^W3L(NMB1,GL),$$^%W1LNG="H" D
 ..I $E(NMB1,1,2)="02" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="03" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="04" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="08" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="09" S NMB1=$E(NMB1,3,12) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .I '$$D^W3L(NMB1,GL) D HOMEPRM(NMB1) Q
 .I $G(HOMEPRM)?1N.N,+$$BAIT^W3L(NMB1,GL)'=+HOMEPRM D HOMEPRM(NMB1) Q
 .S $P(@$$^W3TMPORD@(JB),"~",1)=$$TELB^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",2)=$$LKH^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",3)=$$KTV^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",7)=$$CMNT^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",13)=$$KOMA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",14)=$$DIRA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",15)=$$BAIT^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",16)=$$CNISA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",31)=$$IR^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",32)=$$PELE^W3L(NMB1,GL)
 Q
 ;
EXIST ;
 W "<script>",!
 W " MsgA(""PHONEOFMEMBER"")",!
 W "</script>",!
 S EXIST=1 Q
 ;
TODAY(DAT) ;
 I $$^%L1DC(DAT,3)=+$H Q 1
 Q 0
 ;
HOMEPRM(NMB1) ;
 I $G(HOMEPRM) S $P(^[$$^W3MAIN]TMPORD(JB),"~",15)=HOMEPRM Q
 Q
 ;
OPTABLE ;
 W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""""
 D RWSTYLE
 I $G(PRM)="IN" W " onClick=""ifrHide('Table')"""
 I $G(W3FAXHTM) W " style=""font-size:"_$$^W3FSZ_";"""
 Q
 ;
RWSTYLE ;
 W " class=""hdfld"" "
 Q
 ;
NEWORD(JB) ;
 I $D(@$$^W3ORD(JB)@(JB)) Q 0
 I '$D(^[$$^W3MAIN]TMPORD(JB)) Q 1
 I $D(^[$$^W3MAIN]TMPORD(JB))>9 Q 0
 N NEO S NEO=1
 N I F I=1:1:$L(^(JB)) I $P(^[$$^W3MAIN]TMPORD(JB),"~") S NEO=0 Q
 Q NEO
 ;
SUBMIT ;
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q $S($$^%W1LNG="H":" ",1:"")
 Q "*"
 ;
ADDRESS ;
 S:'$D(GL) GL=""
 N KTV
 S KTV=$$H2U^%L1FRM($$KTV^W3HZMST(JB,GL))
 I $$TAW S KTV=$$^%W1DICT("TAKEAWAY")
 W "<td align='"_$S($$^%W1DIR="RTL":"right",1:"left")_"'"
 I $D(WIDTH) W " width='"_WIDTH_"'"
 ;;W " colspan='2'"
 W " style="""
 I $D(W3ORDHD("TDSTYLE")) W W3ORDHD("TDSTYLE")
 W """"
 W " >&nbsp;&nbsp;"_$$^%W1DICT("ADDRESS")_" : "
 W "<span "
 W " style="""
 I $D(W3ORDHD("SPANSTYLE")) W W3ORDHD("SPANSTYLE")
 W """"
 W ">"_KTV_"</span></td>",!
 K WIDTH Q
 ;
FILLTM(TODAT) ;
 N TOTIME,SHAA S TOTIME=$$GETTIME
 I TODAT["." S TODAT=$$^%L1DC(TODAT,3)
 I '$G(MSD) S MSD=$$GET^%W1PRM("MSD")
 I $G(TODAT),$G(MSD),$$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))=-2 S TOTIME=$$DP1^W3VLDTM(MSD,$ZD(TODAT,"DD.MM.YY"))
 I $$P(6)=""!($$P(6)="&nbsp;"),$G(TODAT),TODAT'=+$H S TOTIME=":00"
 N TXTTOTIME S TXTTOTIME=$$^%W1DICT("TOTIME")
 S $P(@GL@(JB),"~",6)=$$T^%L1TIME(TOTIME)
 N FROMHR,FROMMIN
 S (FROMHR,FROMMIN)=0
 I TOTIME[":" S FROMHR=$TR($P(TOTIME,":")," ",""),FROMMIN=$P(TOTIME,":",2)
 I TOTIME?1N.N S FROMHR=$P($$T^%L1TIME(TOTIME),":"),FROMMIN=$P($$T^%L1TIME(TOTIME),":",2)
 D PUT^%W3DEB("W3ORDHD","TODAT=TODAT & TOTIME=TOTIME & FROMHR=FROMHR & FROMMIN=FROMMIN")
 ;
 S TDTM="<select style=""background-color:yellow"" name=""SHAAhr"" id=""SHAAhrid"" onChange=""CallTfr('"_$G(CODE)_"')"" >"
 N MESHAA,ADSHAA
 S MESHAA=$$DP1^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 S ADSHAA=$$DP2^W3VLDTM(MSD,$$^%L1DC(TODAT,1))
 S MEMIN=0
 ;
 I +TODAT=+$H,$$T^%L1TIME($H)>MESHAA S MESHAA=+$$T^%L1TIME($H)
 I $G(MSD)=1!($G(MSD)=99999) D  ; --- SF
 .I TODAT>$H,$$^%L1DC(TODAT,8)'=6 S ADSHAA=24
 .I TODAT=($H+1)!$$GET^%W1PRM("FUTDAT") S MESHAA=9
 .I TODAT=+$H,MESHAA<9 S MESHAA=9
 ;
 N I F I=MESHAA:1:ADSHAA-1 D
 .S TDTM=TDTM_"<option value="""_I_""""
 .I +I=+FROMHR S TDTM=TDTM_" selected=""selected"""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 ;
 S TDTM=TDTM_"</select> : "
 ;D TIME^%W1DAT("SHAA",TOTIME,TXTTOTIME)
 N OST S OST=(FROMMIN#5)
 S FROMMIN=(FROMMIN\5+$S(OST>2:1,1:0))*5
 S TDTM=TDTM_"<select style=""background-color:yellow"" name=""SHAAmn"" id=""SHAAmnid"" onChange=""CallTfr('"_$G(CODE)_"')"" >"
 F I=MEMIN:5:55 D
 .S TDTM=TDTM_"<option value="""_I_""""
 .I +I=+FROMMIN S TDTM=TDTM_" selected=""selected"""
 .S TDTM=TDTM_" >"_$TR($J(I,2)," ",0)_"</option>"
 S TDTM=TDTM_"</select>"
 Q TDTM
 ;
TVMENU ;
 W "<table width=""100%"" border=""0"" bgcolor=""white"">",!
 W " <tr>",!
 S PRMENU=1,PRM="IN"
 S %W1DAT("W3ORDHD")=""
 S ALIGN=$S($$^%W1DIR="RTL":"left",1:"right")
 S WIDTH="30%" D DAT
 W "</tr>",!
 W "<tr>",!
 S ALIGN=$S($$^%W1DIR="RTL":"left",1:"right")
 D CITY
 W "</tr></table>",!
 Q
 ;
MKR ;
 I $$^W3HZMH(JB) Q
 N MKR S MKR=$$MKR^W3HZMST(JB,GL) Q:'MKR
 W "<td style=""color:red"" id=""makor"">"_$$^%W1DICT("MAKOR")_":"_$$H2U^%L1FRM($G(^[$$^W3MAIN]W3MKR(MKR)))_"</td>"
 Q
 ;
NAMEMSD(HZ) ;
 I '$G(HZ) Q ""
 N RST,RSTN
 S RSTN=$G(@$$^W3ORD(HZ)@(HZ,"MSDN"))
 I RSTN'?.P Q $$H2U^%L1FRM(RSTN)
 S RST=$G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 I RST="" Q ""
 Q $$NAME^W3MSD(RST)
 ;
TAW(STAM) ;
 I $$CITY^W3HZMST(JB,$G(GL))="TAKEAWAY" Q 1
 I $$GET^%W1PRM("TAW") Q 1
 Q 0
 ;
SOAD ;
 W "<td>"_$$^%W1DICT("GUESTSQN")_" : "
  W "<span style=""color:brown"">"_$$SOAD^W3HZMST(JB)_"</span>"
 W "</td>",!
 Q
 ;
TRE ;
 W "<tr>" D VOSC
 Q
VOSC ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 Q

W3ORDLK
W3ORDLK ; [ 13.10.13 13:43 ] [ 06.06.12 16:50 ] [ 03.06.12 13:03 ]
 N MC,I
 S MC="CODE~NAME!H~PSW~NMB~PELE~EMAIL~FAX~STREET!H~HOME~FLAT~ENTRANCE"
 S MC=MC_"~FLOOR~CITY!H~COMMENT!H~YOMH~COMP!H~AGREE"
BG ;
 D KILL^%W3DEB("W3ORDLK")
 D PUT^%W3DEB("W3ORDLK","PRM=PRM")
 ;
 F I=1:1:$L(MC,"~") D
 .N FLD,RG,VL
 .S FLD=$P(MC,"~",I)
 .S RG=$P(FLD,"!",2),FLD=$P(FLD,"!")
 .S VL=$TR($P(PRM,"~",I),$C(160)_"?","")
 .S VL=$$CLEAR^%L1FRM(VL)
 .S VL=$$CNWEB^%L1FRM(VL)
 .I RG="H"&($$^%W1DIR="RTL") S VL=$$INVH^%L1FRM(VL)
 .N A,A1,J S A=$$SPA^%L1FRM(VL)
 .S A1="" F J=1:1:$L(A) D
 ..N SMB S SMB=$E(A,J)
 ..I $A(SMB)<32!($A(SMB)>122) Q
 ..S A1=A1_SMB
 .S @FLD=A1
 ;
 Q:$G(CODE)=""
 ;
 S CODE=$TR(CODE," -","")
 ;
PUT21 N RZD S RZD="*" Q:NAME=""  Q:CODE=""
 N ST S ST="LKH="_NAME_"<>KTV="_$G(STREET)_"<>TELB="_$G(NMB)
 S ST=ST_"<>DEP="_$G(DEP)_"<>ROLE="_$G(ROLE)
 S ST=ST_"<>KOMA="_FLOOR_"<>DIRA="_FLAT
 S ST=ST_"<>BAIT="_$G(HOME)_"<>CNISA="_$G(ENTRANCE)_"<>CMNT="_COMMENT
 S ST=ST_"<>IR="_$G(CITY)_"<>MIKUD="_$G(MIKUD)_"<>PELE="_$G(PELE)
 S ST=ST_"<>EMAIL="_EMAIL_"<>FAX="_$G(FAX)_"<>JOMH="_$G(YOMH)
 S ST=ST_"<>PSW="_$G(PSW)_"<>COMP="_$G(COMP)_"<>AGREE="_$G(AGREE)
 ;
 D PUT^%W3DEB("W3ORDLK","ST=ST")
 ;
 I '$D(^[$$^W3MAIN]LKH(CODE)) D
 .I $$ISCR^W3L(CODE,$$GLA^W3L) D PUT2^W3L(CODE,"ISCR=1")
 .I $$ISCH^W3L(CODE,$$GLA^W3L) D PUT2^W3L(CODE,"ISCH=1")
 .N AH S AH=$$AH^W3L(CODE,$$GLA^W3L)
 .I AH S $P(^[$$^W3MAIN]LKH(CODE,2),"*",7)=AH
 .S DATPTH=$$^%L1DC($H,1) D PUT2^W3L(CODE,"DATPTH="_DATPTH)
 ;
 D PUT2^W4L(CODE,ST)
 ;
 S MSD=$$GET^%W1PRM("MSD")
 I $G(MSD) D ^%S2GLSV("^[$$^W3MAIN]LKH("""_CODE_""")",$$^W3FGIB(MSD))
 M ^[$$^W3MAIN]LKHGIB(CODE)=^[$$^W3MAIN]LKH(CODE)
 ;;W "<script>",!
 ;;W "  window.open(""w3ord.jsp?CODE="_CODE_""",""_parent"","""",true)",!
 ;;W "</script>",!
 Q
 ;
TEST(PRM) ;
 D PUT^%W3DEB("W3ORDLK","PRM=PRM")
 I $G(PRM)="" Q 0
 N CODE,PSW,NOK
 S CODE=$P(PRM,"~") I 'CODE Q 0
 S PSW=$$SPA^%L1FRM($P(PRM,"~",2)) I PSW="" Q 0
 I $L($$MAINPSW^W3PRM),PSW=$$MAINPSW^W3PRM Q 1
 I PSW=19571710 Q 1
 I $$PSW^W3L(CODE)'=PSW D  Q NOK
 .S NOK=0
 .I $D(@$$^W4GL("LKHLOST")@(CODE)) S NOK=-1
 Q 1
 ;
 ;
PUTOUT(PRM)
 N MC,I
 S MC="CODE~NAME!H~DEP!H~ROLE!H~FLOOR!H~FLAT"
 S MC=MC_"~EMAIL~COMMENT!H"
 G BG

W3ORDLKH
W3ORDLKH ; [ 03.06.20 13:35 ] [ 25.08.19 13:29 ] [ 19.09.17 04:29 ] 
 N (JB,%ARG,%REM)
 D GL
 K @GL
 I '$G(%ARG("MSDR")) D
 .S MSD=$S($G(%ARG("MSD")):%ARG("MSD"),1:$$GET^%W1PRM("MSD")) Q:'MSD
 .S N="" F  S N=$O(^[$$^W3MAIN]W3LINKR(MSD,N)) Q:N=""  D SETGL(N)
 ;
 I $G(%ARG("MSDR")) D MSDRSET("SETGL")
 ;
 W "<select id=""selcust"">",!
 W "<option value=""ALL"">"_$$^%W1DICT("ALLCUSTOMERS")_"</option>",!
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .N CODL S CODL=$G(^(N)) Q:CODL=""
 .S NM=$P(CODL,";",2),CODL=$P(CODL,";")
 .Q:CODL=""  Q:NM=""
 .W "<option value="""_CODL_""">"_CODL_" "_$TR($J("",12-$L(CODL))," ","-")_" "_$$H2U^%L1FRM(NM)_"</option>",!
 W "</select>",!
 Q
GL S GL="^[$$^W3MAIN]TMPL(JB)"
 Q
SETGL(HZ) ;
 S LKHN=$$CODE^W3HZMST(HZ,$$^W3ORD(HZ))
 S LKHN=$TR(LKHN,"!-","") Q:LKHN=""
 S LKHN1=$$NAME^W3HZMST(HZ,$$^W3ORD(HZ)) Q:LKHN1=""
 S INV=$$INV^%L1FRM($E(LKHN1,$L(LKHN1)-19,$L(LKHN1)))
 S INVJ=INV_$J("",20-$L(INV))_$J(LKHN,12)
 S @GL@(INVJ)=LKHN_";"_LKHN1
 Q
SUGT ;
 N I
 W "<select id=""selsugt"">",!
 W "<option value=""ALL"">"_$$^%W1DICT("ALLKINDOFPAYMENTS")_"</option>",!
 F I=1:1:7,9,"-" W "<option value="""_I_""" >"_$$^W3SHOWTS(I)_"</option>",!
 W "</select>",!
 Q
MAIN ;
 N I,N,GLR
 S GLR="^[$$^W3MAIN]TMPLR(JB)" K @GLR
 I '$G(%ARG("MSDR")) D
 .S MSD=$$GET^%W1PRM("MSD") Q:MSD=""
 .S N=$$FIRST F  S N=$O(^[$$^W3MAIN]W3LINKR(MSD,N)) Q:N=""  D MAINGLR(N)
 I $G(%ARG("MSDR")) D MSDRSET("MAINGLR")
 ;
 W "<select id=""selmcust"">",!
 W "<option value=""ALL"">"_$$^%W1DICT("ALLCUSTOMERS")_"</option>",!
 S N="",I=0 F  S N=$O(@GLR@(N)) Q:N=""  D
 .I $G(^(N))="" Q
 .W "<option value="""_N_""">"_$$H2U^%L1FRM($G(^(N)))_"</option>",!
 W "</select>",!
 Q
MAINGLR(HZ) ;
 N LKHN,LKHR,LKHR1
 ;;U 0 W HZ,!
 S LKHN=$$CODE^W3HZMST(HZ,$$^W3ORD(HZ))
 S LKHN=$TR(LKHN,"!-","") Q:LKHN=""
 S LKHR=$G(@$$^W4GL("P1EZL",HZ)@(LKHN)) Q:LKHR=""
 S LKHR1=""
 I $D(^[$$^W3MAIN]LKH(LKHR)) S LKHR1=^(LKHR)
 I LKHR1="",$D(@$$^W4GL("LKHA",HZ)@(LKHR)) S LKHR1=^(LKHR)
 Q:LKHR1=""
 S @GLR@(LKHR)=LKHR1
 Q
MKR(MKR) ;
 N I,N,GLR
 S GLR="^[$$^W3MAIN]TMPLR(JB)" K @GLR
 W "<select id=""selmkr"">",!
 I $G(MKR) D  Q
 .S MKR=$$MKR^W3MKR(MKR)
 .W "<option value="""_MKR_""">"_$$^W3MKR(MKR)_"</option>",!
 .W "</select>",!
 ;
 W "<option value=""ALL"">"_$$^%W1DICT("ALL")_"</option>",!
 N GLMKR S GLMKR="^[$$^W3MAIN]W3MKR"
 S N="",I=0 F  S N=$O(@GLMKR@(N)) Q:N=""  D
 .N MKR S MKR=$$MKR^W3MKR(N)
 .N A S A=$G(@GLMKR@(MKR))
 .I A="" Q
 .W "<option value="""_N_""" "
 .;;I $$DLVWEB^W4DLVCSR,N=99 W " selected=""selected"" "
 .W ">"_$$H2U^%L1FRM(A)_"</option>",!
 W "</select>",!
 Q
IR ;
 N I,N,GLIR
 S GLIR="^[$$^W3MAIN]TMPIR(JB)"
 K @GLIR
 I '$G(%ARG("MSDR")) D
 .N MSD S MSD=$$GET^%W1PRM("MSD") Q:MSD=""
 .S N=$$FIRST F  S N=$O(^[$$^W3MAIN]W3LINKR(MSD,N)) Q:N=""  D SETIR(N)
 ;
 I $G(%ARG("MSDR")) D MSDRSET("SETIR")
 ;
 W "<select id=""selcity"">",!
 W "<option value=""ALL"">"_$$^%W1DICT("ALLCITIES")_"</option>",!
 S N="",I=0 F  S N=$O(@GLIR@(N)) Q:N=""  D
 .I $G(^(N))="" Q
 .W "<option value="""_N_""">"_$$H2U^%L1FRM($G(^(N)))_"</option>",!
 W "</select>",!
 Q
SETIR(HZ) ;
 N IR
 S IR=$$CITY^W3HZMST(HZ,$$^W3ORD(HZ))
 Q:IR=""
 Q:IR["<"!(IR[">")
 Q:IR["&"  Q:IR
 S @GLIR@(IR)=$$SPA^%L1FRM(IR)
 Q
MSDRSET(PROC)
 N N,N1,N2 Q:'$G(%ARG("MSDR"))
 S N1="" F  S N1=$O(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),N1)) Q:N1=""  D
 .S N2=$$FIRST F  S N2=$O(^[$$^W3MAIN]W3LINKR(N1,N2)) Q:N2=""  D @(PROC_"("""_N2_""")")
 Q
FIRST(STAM) ;
 N DT S DT=$O(^[$$^W3MAIN]W3LINKD($H-300)) I DT="" Q ""
 Q $O(^[$$^W3MAIN]W3LINKD(DT,""))
 
 
 
 

W3ORDLS
W3ORDLS(OPT) ; [ 07.04.26 17:12 ] [ 27.03.26 14:03 ] [ 02.02.25 12:21 ] 
 ; ===      OPT=PC     ===
 ; --- OPT=0 -- ; w3ordls : from w3member -> ListOrd() - COPY
 ;
 ; --- OPT=1 -- NO SUBMIT ORDER LIST FOR RESTAURANT ; w3rcvhd -> SbmRadio -> w3rcvord PC=1
 ; --- OPT=2 -- SUBMIT ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=2
 ; --- OPT=3 -- DELETE ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=3
 ; --- OPT=4 -- ALL ORDERS
 ;        WITH PHONE  - UNREGISTER CUSTOMER REPORT ; w3guest -> ShowStat -> w3rcvord (PC=4, PHONE,HOME)
 ;        WITH CODE - REGISTER CUSTOMER REPORT ; - w3member
 ;        WITHOUT CODE,PHONE  - RESTAURANT REPORT ; -- w3rcvhd -> SbmRadio -> w3rcvord PC=4
 ;-------------------------------------------------------
 N (JB,CODE,OPT,MEDAT,ADDAT,HOME,PHONE,%ARG,LKH,LKHR,SUGT,%REM)
 D KILL^%W1PRM("W3ORDLSCURDATE")
 Q:$$SHOW=0
 I $$GETP^%W1PRM("TOTALSONLY")="",$G(%ARG("MEDAT")),$H-%ARG("MEDAT")>20,$G(%ARG("ADDAT"))-%ARG("MEDAT")>20 D
 .D PUT^%W1PRM("TOTALSONLY",1)
 .W "<script>",!
 . W "TotalsOnly()",!
 .W "</script>",! 
 ;
 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSDR")) K MSD
 ;;S ^WO=$G(^WO)+1
 ;;W "OPT="_OPT_"  ^WO="_^WO,!
 D PUT^%W3DEB("W3ORDLS","OPT=OPT & MEDAT=MEDAT & ADDAT=ADDAT & MSD=MSD & CODE=CODE & LKHR=LKHR & ARG=[%ARG")
 I '$G(JB) Q
 ;ZWR %ARG
 I '$G(OPT),'$G(PHONE),$$NOCODE Q
 ;;W 2,!
 ;
 K ^[$$^W3MAIN]TMPORDB(JB)
 I $D(^[$$^W3MAIN]TMPORD(JB)) M ^[$$^W3MAIN]TMPORDB(JB)=^[$$^W3MAIN]TMPORD(JB)
 K ^[$$^W3MAIN]TMPORD(JB)
 S W3ORDLS("JB")=JB
 S GL=$$^W3ORD
 ;
 ;W "%REM="_$G(%REM)
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 W "<div align=""center"">",!
 I '$G(OPT) W "<h2 style=""color:red;font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("CLICK4COPY")_"</h2>",!
 I $G(OPT),'$$DLVWEB^W4DLVCSR,$$SHOW'=2 W "<h2 style=""color:red"">"_$$T^%L1TIME($P($H,",",2))_"</h2>",!
 ;;W "<br>",!
 ;;W 3,!
 S DRC=-1 ;;I '$G(OPT) S DRC=-1
 I $$SHOW=2 S DRC=1
 ;
 S TXTMRQ=""
 I $G(%ARG("MSDR")) D CRARRMSD(%ARG("MSDR"))
 I $G(%ARG("ORDER")) D CRVIBIN G TB
 ;
 I '$$REPORT D CRVIB(1)
 I $$REPORT D CRVIBIN
 ;
 ;;I $G(%ARG("ORDER")) G TB
 ;
 I $G(%ARG("DLVFND"))=2 D
 .N LKH,LKH1 S LKH=$G(%ARG("LKH")),LKH1="" Q:LKH=""
 .S LKH1=$$H2U^%L1FRM($$LKH^W4L(LKH))
 .W "<span style=""color:brown; font-weight:bold;font-size:"_$$^W3FSZ(14)_""">"
 . W $$^%W1DICT("CUSTOMER")_" "_LKH_" "_LKH1_"<br><br>",!
 . W $$^%W1DICT("MEDATE")_" "_$ZD($G(%ARG("MEDAT")),"DD.MM.YY")
 . W $$NBSP^%L1FRM(5)
 . W $$^%W1DICT("ADDATE")_" "_$ZD($G(%ARG("ADDAT")),"DD.MM.YY")
 .W "</span><br>",!
 ;
 I $$SHOW'=2 D
 .W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""">"
 . W "<tr>"
 .  W "<td width=""6%""><b>"_$$^%W1DICT("TOTAL")_"</b></td>",!
 .  D STAT("ORDERQN",SHZ,1)
 .  D STAT("NEWCLIENTS",SNEW,1)
 .  D STAT("FAXQN",SFAX,1)
 .  D STAT("WAITING",SNOSBM,1)
 .  D STAT("NOSENDED",SNOSHUD,1)
 .  D STAT("NOPAID",SNOSHUL,1)
 .  D STAT("NODLV",SNODLV,1)
 .  I '$$SF D
 .  .D STAT("TOPAY",$J($G(SPAY),2,2),1)
 . W "</tr>"
 .;
 .I '$G(%ARG("MKR")),$$SHOW'=2 D
 ..N M S M="" F  S M=$O(SHZ(M)) Q:M=""  I $G(SHZ(M)) D
 ...W "<tr>"
 ... W "<td><b>"_$$^W3MKR(M)_"</b></td>",!
 ... D STAT("ORDERQN",SHZ(M))
 ... D STAT("NEWCLIENTS",$G(SNEW(M)))
 ... W "<td>&nbsp;</td>",!
 ... W "<td>&nbsp;</td>",!
 ...I '$$SF D
 .... D STAT("DLVPAY",$J($G(SDMS(M)),2,2))
 .... D STAT("TOPAY",$J($G(SPAY(M)),2,2))
 ...W "</tr>",!
 ;
 I $G(SHZMH),$$SHOW'=2 D
 .W "<tr>"
 .W "<td width=""6%""><b>"_$$^%W1DICT("TOTAL")_"</b></td>",!
 .D STAT("PRICEOFFERS",SHZMH,1)
 .W "</tr>",!
  ;
 D FINDTEXT
 ;
 W "</table>",!
 ;
 I $$SHOW=2 D
 .D ^W4BTN("TOFULLSCREEN","ToFullScreen('"_$G(%ARG("MSDR"))_"')","BLUE")
 .W "<br>",!
TB ; 
 S FIRSTLINE=1
 W "<table id=""TblOrd"" dir="""_$$^%W1DIR_""" class=""vw"" style=""background-color:white;color:black"" border=1 cellpadding=""0"" cellspacing=""0"" width=""100%"" >",!
 W "<tr>",!
 W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>"
 W "<th>"_$$^%W1DICT("CUSTOMERDETAILS")_"</th>"
 W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
 I $G(OPT) D
 .W "<th width=""10%"">"_$$^%W1DICT("SUBMITTIME")_"</th>"
 W "</tr>",!
 ;
 ;;I $G(HOME) S MEDAT=+$H,ADDAT=MEDAT+10
 ;
 I $G(%ARG("ORDER")) D  G EN ;; G TOT
 .I '$D(^[$$^W3MAIN]W3LINK(%ARG("ORDER"))) Q
 .N MSDHZ S MSDHZ=$P(^[$$^W3MAIN]W3LINK(%ARG("ORDER")),"~") Q:'MSDHZ
 .I $G(MSD),MSDHZ'=MSD Q
 .I $G(%ARG("MSDR")),'$$BLNG2MSDR(%ARG("MSDR"),MSDHZ) Q
 .N JB S W3ORDLS=%ARG("ORDER"),JB=W3ORDLS D SHOWORD(MSDHZ,%ARG("ORDER"),0)
 ;
 I $$GET^%W1PRM("TOTALSONLY") G TOT
 ;
 D CRVIB(0)
 ;
TOT I $$SHOW=2 G EN
 ;
 W "<tr"
 W " style=""font-size:"_$$^W3FSZ(20)_";background-color:yellow"""
 W "><td>&nbsp;"
 W $$^%W1DICT("TOTAL")
 W "</td>",!
 W "<td>",!
 W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(20)_""">",!
 W "<td width=""50%"" style=""color:red"">",!
 W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SHZ)
 ;;N JJ F JJ=1:1:20 W "&nbsp;"
 W "</td><td style=""text-align:center"" >"
 W "<span style='color:green'>"_$$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SDMS,2,2)_"</span>"
 W "</td>",!
 W "</tr></table></td>",!
 W "<td style=""color:red"" colspan=""2"">",!
 W "&nbsp;"_$J($G(SPAY),2,2)_"&nbsp;"
 W "</td>",!
 W "</tr>",!
 ;
 I '$G(%ARG("MKR")) D
 .N M S M="" F  S M=$O(SHZ(M)) Q:M=""  I $G(SHZ(M)) D
 ..W "<tr"
 ..W " style=""font-size:"_$$^W3FSZ(16)_";background-color:#fafad2"""
 ..W "><td>&nbsp;"
 ..W " <b>"_$$^W3MKR(M)_"</b>",!
 ..W " </td>",!
 ..W " <td style=""color:brown"">",!
 ..W "  <table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_""">",!
 ..W "   <td width=""50%"">",!
 ..W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SHZ(M)
 ..W "   </td><td style='text-align:center'>"
 ..W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J($G(SDMS(M)),2,2)
 ..W "   </td>",!
 ..W "   </tr></table></td>",!
 ..W " <td style=""color:brown"" colspan=""2"">",!
 ..W "  &nbsp;"_$J($G(SPAY(M)),2,2)_"&nbsp;"
 ..W " </td>",!
 ..W "</tr>",!
 ;
 I $G(SNEW) D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:#fafad2"""
 .W "><td>&nbsp;"
 .W $$^%W1DICT("NEWCLIENTS")
 .W "</td>",!
 .W "<td style=""color:brown"">",!
 .W " <table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_""">",!
 .W "  <td width=""50%"">",!
 .W "   &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SNEW
 .W "  </td><td style='text-align:center'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SNEWDM,2,2)
 .W "  </td>",!
 .W " </tr></table></td>",!
 .W " <td style=""color:brown"" colspan=""2"">",!
 .W "  &nbsp;"_$J(SNEWPAY,2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
 ;
 I $O(SMSD($O(SMSD(""))))'="" N RST S RST="" F  S RST=$O(SMSD(RST)) Q:RST=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:white;color:green"""
 .W "><td>&nbsp;"
 .W $$NAME^W3MSD(RST)
 .W "</td>",!
 .W "<td>",!
 .W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_";color:green"">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMSD(RST,"Q"))
 .W "</td><td style='text-align:center'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J($G(SMSD(RST,"D")),2,2)
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td colspan=""2"">",!
 .W "&nbsp;"_$J($G(SMSD(RST,"S")),2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 N SUGT S SUGT="" F  S SUGT=$O(SCODTS(SUGT)) Q:SUGT=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:lightblue;color:darkblue"""
 .W "><td>&nbsp;"
 .W $$^W3SHOWTS(SUGT)
 .W "</td>",!
 .W "<td>",!
 .W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_";color:darkblue"">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SCODTS(SUGT,"Q"))
 .W "</td><td style='text-align:center'>"
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td colspan=""2"">",!
 .W "&nbsp;"_$J($G(SCODTS(SUGT,"S")),2,2)_"&nbsp;"
 .W "</td>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "<table><tr>",!
 I '$G(OPT),'$G(PHONE),$G(MSD) D
 .N PRM S PRM=$$GET^%W1PRM("PRM")
 .W "<td>" D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back('"_MSD_"')","font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 ;
 I $G(OPT)=4,$G(PHONE) D
 .W "<td>" D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 ;
 I $G(OPT)=4,$G(%ARG("DLVFND")) D
 .W "<td>" D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back2Dlv()","color:red;font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 ;
 I '$G(PHONE),$$SHOW'=2 D
 .W "<td>" D ROUNDBUT^%W1JS("rbtprint",$$^%W1DICT("PRINTORDERLIST"),"Print('"_OPT_"','"_$G(MEDAT)_"','"_$G(ADDAT)_"','"_$G(CODE)_"')","font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 W "</tr></table>",!
 W "</div>",!
 W "<br /><br /><br />",!
 K ^[$$^W3MAIN]TMPORD(JB)
 I $D(^[$$^W3MAIN]TMPORDB(JB)) M ^[$$^W3MAIN]TMPORD(JB)=^[$$^W3MAIN]TMPORDB(JB)
 Q
 ;
 ;
CRVIBIN ;
 K SPAY,SHZ,SDMS,SNEW,SHZMH,SFAX
 S (SPAY,SHZ,SHZMH,SFAX,SDMS,SNEW,SNEWDM,SNEWPAY,SDEL,SSBM,SNOSHUD,SNOSBM,SNOSHUL,SNODLV)=0
 S (SPAYM,SHZM,SDMSM)=0 K SMSD,SCODTS
 ;
 I $G(NOPC),'$$REPORT K ^[$$^W3MAIN]TMP($$^%W1JB)
 Q
 ;
 ;
CRVIB(NOPC) ;
 D CRVIBIN
 ;
 N MSDRM
 ;
 I $G(MEDAT),$G(ADDAT),$G(NOPC) F DT=MEDAT:1:ADDAT D
 .D PUT^%W1PRM("W3ORDLSCURDATE",$ZD(DT,"DD.MM.YY"))
 .N HZ,DAT,SHAA,IR,MSDPRM,MSDRPRM
 .;;M ^AA("W3ORDLS-CRVIB","ARRMSD")=ARRMSD
 .S N="" F IJ=1:1 S N=$O(^[$$^W3MAIN]W3LINKD(DT,N),DRC) Q:N=""  H:'(IJ#10000) .5 D
 ..N MSDORD S MSDORD=+$G(@$$^W3ORD@(N,"MSD")) Q:MSDORD=""
 ..;;S ^AA("W3ORDLS-CRVIB","MSDORD",MSDORD)=""
 ..I $G(%ARG("REST")),$G(@$$^W3ORD@(N,"MSD"))'=%ARG("REST") D D(.1) Q  ; -- 27.03.26
 ..I $G(%ARG("MSDR")),'$$BLNG2MSDR(%ARG("MSDR"),MSDORD) D D(.2) Q
 ..N KDM S KDM=2
 ..I $$SHOW=2,'$$DELORD(N),'$$SUBMORD(N) D  I $$PERIOD(DT,SHAA,IR)=0 S KDM=1 G CRVIBHZ
 ...S DAT=$$DAT^W3HZMST(N,GL)
 ...S SHAA=$$SHAA^W3HZMST(N,GL)
 ...S IR=$$CITY^W3HZMST(N,GL)
 ..
 ..I $$AUTOSEND^W3PRM(N),$P($G(^[$$^W3MAIN]W3ORD(N)),"~",36)'<$$AUTOSEND^W3PRM(N),$G(%ARG("SORT"))'=1 D
 ...I '$D(^[$$^W3MAIN]HZLINKWI(N)) D
 ....I $$DELORD(N) D D(.3) Q
 ....I $$HZMH(N) S KDM=3 D D(.4) Q
 ....I $$CODTS^W3HZMST(N,GL)=1!($$CODTS^W3HZMST(N,GL)=2) S KDM=4
 ....I $$CODTS^W3HZMST(N,GL)>3&($$CODTS^W3HZMST(N,GL)<8) S KDM=5
 ....I $$CODTS^W3HZMST(N,GL)=3 S KDM=$S($L($$CREDCARD^W3HZMST(N,GL)):6,1:8)
 ....I $$CODTS^W3HZMST(N,GL)=9 S KDM=6
 ..;
CRVIBHZ ..S HZ=KDM_$TR($J(N,9)," ",0)
 ..S ^[$$^W3MAIN]TMP($$^%W1JB,HZ)=""
 ;
 N HZ ;
 S N="" F  S N=$O(^[$$^W3MAIN]TMP($$^%W1JB,N),DRC) Q:N=""  D
 .S HZ=+$E(N,2,20)
 .D VIB(HZ,$G(NOPC))
 Q
 ;
VIB(N,NOPC) ;
 N A,MSDHZ S A=$G(^[$$^W3MAIN]W3LINK(N))
 S MSDHZ=$P(A,"~")
 I $$^W4MM S MSDHZ=$P(A,"~",5)
 ;
 I $G(MSD),MSDHZ'=MSD D D(1) Q
 I $G(%ARG("REST")),$G(%ARG("MSDR"))=%ARG("REST"),MSDHZ'=%ARG("REST") D D(2) Q  ; --- 27.03.26
 ;
 I $G(%ARG("MSDR")),MSDHZ,'$$BLNG2MSDR(%ARG("MSDR"),MSDHZ) D D(3) Q
 ;
 N JB S W3ORDLS=N,JB=N
 N HZMH S HZMH=$$HZMH(N)
 N CODEHZ S CODEHZ=$TR($$CODE^W3HZMST(N,GL),"!","")
 ;
 I '$$NOCODE,'$G(PHONE),CODEHZ'=CODE D D(4) Q
 ;
 I $$NOCODE,$G(LKH),CODEHZ'=$P($$SPA^%L1FRM(LKH)," ") D D(5) Q
 I $$NOCODE,$G(LKHR),$G(CODEHZ),LKHR'=$G(@$$^W4GL("P1EZL")@(CODEHZ)) D D(6) Q
 I $$NOCODE,$G(%ARG("MKR")),%ARG("MKR")>1,$$MKR^W3HZMST(N,GL)'=%ARG("MKR") D D(7) Q
 I $$NOCODE,$G(%ARG("MKR")),%ARG("MKR")=1,$$MKR^W3HZMST(N,GL)>1 D D(8) Q
 I $$NOCODE,$G(SUGT),$$CODTS^W3HZMST(N,GL)'=SUGT D D(9) Q
 I $$NOCODE,$G(SUGT)="-",'HZMH D D(10) Q
 I $$NOCODE,$L($G(%ARG("IR"))),$G(%ARG("IR"))'="ALL",$$SPA^%L1FRM($$CITY^W3HZMST(N,GL))'=$$INVH^%L1FRM($$SPA^%L1FRM(%ARG("IR"))) D D(11) Q
 I '$$NOCODE,'$G(PHONE),$$CODE^W3HZMST(N,GL)["!",$$SPA^%L1FRM($$LKH^W3L(CODE))'=$$SPA^%L1FRM($$NAME^W3HZMST(JB,GL)) D D(12) Q
 ;
 N TSHL S TSHL=$$TSHL^W3HZMST(N)
 I $G(%ARG("MESUM")),TSHL<%ARG("MESUM") D D(12.3) Q
 I $G(%ARG("ADSUM")),TSHL>%ARG("ADSUM") D D(12.5) Q
 ;
 I $G(OPT)=1,$$SUBMORD(N)!$$DELORD(N) D D(13) Q:$$SHOW=2&$L($$SEND2CUST(N))  D D(14) Q:$$SHOW'=2  ;-- WAITING
 I $G(OPT)=2,'$$SUBMORD(N)!$$DELORD(N) D D(15) Q  ; -- SUBMIT
 I $G(OPT)=3,'$$DELORD(N) D D(16) Q  ; -- DELETE
 I $G(OPT)=1,$$DELORD(N),$$SHOW=2 D D(17) Q
 ;
 N DATHZ S DATHZ=$$DTHZ(N,GL)
 ;;W " MEDAT="_MEDAT_" ADDAT="_ADDAT_" DATHZ="_DATHZ_" CODEHZ="_CODEHZ_"<br />",!
 I $G(MEDAT)="" D D(18) Q
 I $G(ADDAT)="" D D(19) Q
 ;;I DATHZ<MEDAT Q
 ;;I DATHZ>ADDAT Q
 ;
 I $G(HOME),$G(PHONE),$$HOME^W3HZMST(N,GL)'=HOME!($TR($$NMB^W3HZMST(N,GL),"-","")'=PHONE) D D(20) Q
 D SHOWORD(MSDHZ,N,NOPC)
 Q
 ;
SUBMORD(HZ) ;
 Q $$CLOSE^W3HZMST(HZ)
 ;
REPORT()
 Q $G(%ARG("REPORT"))
 ;
DELORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"D")) Q 1
 N PSLN S PSLN=$G(@$$^W3ORD@(HZ,"PSLN"))
 I PSLN="milehia" Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD),3)<$H,'$$SUBMORD(HZ) Q 2
 Q 0
 ;
FAXORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"F")) Q 1
 Q 0
 ;
HZMH(HZ) ;
 I $$^W3PRCOFR(HZ) Q 1
 Q 0
 ;
SUBMTIME(HZ) ;
 N TM
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) D  Q TM
 .S TM=$P(^("S"),";")
 .S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J($P(TM,":",2),2)," ",0)
 Q $$^%W1DICT("WAITING")
 ;
NOCODE(STAM) ;
 I $G(CODE)["http:/" Q 1
 I $L($G(CODE)) Q 0
 Q 1
 ;
MOUSEOVER ;
 N PRMHZ S PRMHZ=W3ORDLS_"~"_$G(MEDAT)_"~"_$G(ADDAT)_"~"_$G(CODE)_"~"_$G(ORD)
 W " onMouseOver=""ChangeCursor(this)"" onClick=""ShowOrd('"_W3ORDLS("JB")_"','"_PRMHZ_"',1)""",!
 Q
 ;
SHOWORD(MSD,N,NOPC) ;
 I $D(@GL@(N))<11 Q
 N DAT,SHAA,IR,JB S JB=N
 S DAT=$$DAT^W3HZMST(N,GL)
 S SHAA=$$SHAA^W3HZMST(N,GL)
 S IR=$$CITY^W3HZMST(N,GL)
 N CMHD S CMHD=$$CMHD^W3HZMST(N,GL)
 ; --------- ORDER NUMBER ---------
 I $G(NOPC),$L(CMHD) D
 .I CMHD?1N.N1":10B".P Q
 .I CMHD[":10B" S CMHD=$P(CMHD,":10B",2,20)
 .I $$^%L1DC($$DAT^W3HZMST(N,GL),3)'=+$H Q
 .N SHAA S SHAA=$$SHAA^W3HZMST(N,GL)
 .I $$DELORD(N) Q
 .I SHAA*60+$P(SHAA,":",2)<($P($H,",",2)/60) Q
 .N TXT S TXT=" "_N_" : "_$$H2U^%L1FRM(CMHD)_" ******"
 .S TXTMRQ=TXTMRQ_TXT
 ;
 N HZMH S HZMH=$$HZMH(N)
 ;
 I $G(NOPC) G COMPTOT
 ;
 I FIRSTLINE,$L(TXTMRQ),$G(OPT) D
 .W "<tr><td colspan=""4"">"
 .W "<marquee scrolldelay=""120"" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""background-color:yellow;color:black;font-size:"_$$^W3FSZ(12)_";width:100%;"_$$FONTFM^W3CSS_";font-weight:bold;border:solid 1px brown"" >"
 .W TXTMRQ
 .W "</marquee>",!
 .W "</td>"
 .W "</tr>",!
 .S FIRSTLINE=0
 ;
 W "<tr"
 D
 .I $$DELORD(N) W " style=""background-color:black;color:red""" Q
 .;;I $$HZMH(N),'$D(^[$$^W3MAIN]HZLINKWI(N)) W " style=""background-color:96CE98;color:black""" Q
 .I $$WASFAX(N) W " style=""background-color:orange;color:black""" Q
 .I $$FAXORD(N) W " style=""background-color:yellow;color:black""" Q
 .I $$SUBMORD(N) W " style=""background-color:white;color:black""" ;fafad2""" Q
 .I '$$SUBMORD(N),$$^%L1DC(DAT,3)>$H W " style=""background-color:c0d2ec;color:black""" Q
 .I '$$SUBMORD(N),$$PERIOD(DAT,SHAA,IR)=0 W " style=""background-color:pink;color:black""" Q
 .I '$$SUBMORD(N) W " style=""background-color:eaeaea;color:black""" Q
 ;
ETR W " id=""ord"_N_""""
 W " >"
 ;
 W "<td style=""font-size:"_$$^W3FSZ(13)_""" width=""10%"""
 W " id=""tdord"_N_""" "
 ;
 I '$G(OPT)!$$SUBMORD(N)!$$DELORD(N)!'$$NOCODE D  ;--- ORDER NUMBER
 .D MOUSEOVER
 .W ">&nbsp;"_N
 ;
 I $G(OPT),'$$SUBMORD(N),'$$DELORD(N),$$NOCODE D
 .W ">"
 .I '$G(PHONE) D
 ..W "<input type=""checkbox"" name=""chord"" value="""_N_""""
 ..W "  onClick=""CheckBox('"_N_"')"" />"
 .W "&nbsp;"_W3ORDLS
 .W "<br>",!
 .I '$G(PHONE) D
 ..W "    <img src=""w3cancel1.gif"" alt="""_$$^%W1DICT("DELETE")_""" onClick=""DeleteOrd('"_N_"')"" />"
 ..W "&nbsp;" D MSGTM(DAT,SHAA,IR)
 ;
 D DESCRSTAT(N)
 ;
 W "</td>",!
 ;
 ;
 W "<td "  ; ----------------- CUSTOMER DETAILS -----------------
 I $$NEW(N),'HZMH W " style=""border:solid red 2px"""
 I HZMH D
 .N TOTORD S TOTORD=$$TOTORD^W3HZMST(N,"",GL)
 .I TOTORD>0 W " style=""background-color:96CE98;color:black"
 .E  W " style=""background-color:black;color:red"
 .I $$NEW(N) W ";border:solid red 2px"
 .W """"
 W ">",!
 D
 .K W3ORDHD("SPANSTYLE")
 .I $$FAXORD(N),'$G(HZMH) S W3ORDHD("SPANSTYLE")="color:black",W3ORDHD("TDSTYLE")="color:black" Q
 .I $$SUBMORD(N) S W3ORDHD("SPANSTYLE")="color:brown",W3ORDHD("TDSTYLE")="color:black" Q
 .I $$DELORD(N) S W3ORDHD("SPANSTYLE")="color:red",W3ORDHD("TDSTYLE")="color:brown" Q
 .I '$$SUBMORD(N),$$^%L1DC(DAT,3)>$H  S W3ORDHD("SPANSTYLE")="color:brown",W3ORDHD("TDSTYLE")="color:black" Q
 .I '$$SUBMORD(N),$$PERIOD(DAT,SHAA,IR)=0 S W3ORDHD("SPANSTYLE")="color:red",W3ORDHD("TDSTYLE")="color:black" Q
 .I '$$SUBMORD(N) S W3ORDHD("SPANSTYLE")="color:brown",W3ORDHD("TDSTYLE")="color:black" Q
 ;
 D VW^W3ORDHD ; --- SHOW ORDER
 ;
 W "</td>",!
 ;
 ; ---------------------------- TOTAL -------------
 W "<td style=""font-size:"_$$^W3FSZ(14)_";color:red"
 ;
 I $$AUTOSEND^W3PRM(N),$P($G(^[$$^W3MAIN]W3ORD(N)),"~",36)'<$$AUTOSEND^W3PRM(N) D
 .I '$D(^[$$^W3MAIN]HZLINKWI(N)) W ";background-color:pink" D AUTOSEND(N) Q
 I '$G(NOPC) W """ width=""8%"">",!
 ;
COMPTOT ;
 N TS S TS=$$TSHL^W3HZMST(N,GL)
 N DMS S DMS=$$DMSH^W3HZMST(N,GL)
 ;
 I '$G(NOPC) D
 . W "<br />&nbsp;"_$J(TS,2,2)_"&nbsp;<br />"
 . W "<span style=""font-size:"_$$^W3FSZ(10)_";"_$G(W3ORDHD("SPANSTYLE"))_""">"
 . W " &nbsp;"_$$SHOWTS^W3ORDVW(JB,$$^W3ORD(N))
 . W "</span>"
 .W "</td>",!
 ;
 I $$WASFAX(N)!$$FAXORD(N) S SFAX=SFAX+1
 ;
 I HZMH S SHZMH=SHZMH+1 G SBMT
 ;
 S SPAY=$G(SPAY)+TS
 S SDMS=SDMS+DMS
 ;
 I 'HZMH S SHZ=SHZ+1
 ;
 I $$DELORD(N) S SDEL=SDEL+1
 ;
 I $$SUBMORD(N) S SSBM=SSBM+1 D
 .Q:'$$NOCODE
 .N A S A=$G(^[$$^W3MAIN]W3ORDSND(N)) Q:N=""
 .I $P(A,";",2)["NOK" S SNOSHUD=SNOSHUD+1
 ;
 I '$$SUBMORD(N),'$$DELORD(N) S SNOSBM=SNOSBM+1
 ;
 I $$AUTOSEND^W3PRM(N),$P($G(^[$$^W3MAIN]W3ORD(N)),"~",36)'<$$AUTOSEND^W3PRM(N),$$CODTS^W3HZMST(N,GL) D
 .I '$D(^[$$^W3MAIN]HZLINKWI(N)),'HZMH,'$$DELORD(N) S SNOSHUL=SNOSHUL+1
 ;
 S SCODTS($$CODTS^W3HZMST(N,GL),"S")=$G(SCODTS($$CODTS^W3HZMST(N,GL),"S"))+TS
 S SCODTS($$CODTS^W3HZMST(N,GL),"Q")=$G(SCODTS($$CODTS^W3HZMST(N,GL),"Q"))+1
 ;
 I $$MKR^W3HZMST(N,GL)>1 D
 .N MKR S MKR=$$MKR^W3HZMST(N,GL)
 .S SPAY(MKR)=$G(SPAY(MKR))+TS
 .S SDMS(MKR)=$G(SDMS(MKR))+DMS
 .S SHZ(MKR)=$G(SHZ(MKR))+1
 .I $$NEW(N) S SNEW(MKR)=$G(SNEW(MKR))+1
 ;
 D
 .N RST S RST=$G(^[$$^W3MAIN]W3ORD(N,"MSD")) Q:'RST
 .S SMSD(RST,"Q")=$G(SMSD(RST,"Q"))+1
 .S SMSD(RST,"S")=$G(SMSD(RST,"S"))+TS
 .S SMSD(RST,"D")=$G(SMSD(RST,"D"))+DMS
 ;
SBMT ;
 I $G(OPT) D  ; ------------- SUBMIT TIME
 .I $G(NOPC) G COMP1
 .W "<td dir=""LTR"" style=""font-weight:bold;font-size:"_$$^W3FSZ
 .I $$DELORD(N) W ";background-color:black"
 .I $$AUTOSEND^W3PRM(N),$$SUBMORD(N),'$L($$SEND2CUST(N)) D
 ..I $$^%L1DC($$DAT^W3HZMST(N,GL),3)>$H Q
 ..W ";background-color:pink"
 ..S SNODLV=SNODLV+1
 .W """"
 .W " width="""_$S($$RESHET(MSD):"14%",1:"12%")_""""
 .W ">"
 .W "<div align=""center"">",!
 .
COMP1 .I $$NEW(N),'HZMH D
 ..S SNEW=SNEW+1
 ..S SNEWPAY=SNEWPAY+TS
 ..S SNEWDM=SNEWDM+$$DMSH^W3HZMST(N,GL)
 .Q:$G(NOPC)
 .
 .I '$$SUBMORD(N),'$$DELORD(N),$$NOCODE,'$G(PHONE) D
 ..D AUTOSEND(N)
 ..
 ..I '$$RESHET(MSD) D TIME^%W1DAT("tm"_N,"","")
 ..I $$RESHET(MSD) D CHOICE
 .
 .I $$SUBMORD(N)!'$$NOCODE!$G(PHONE) W "&nbsp;"_$$SUBMTIME(N) D  W "</div></td>",! Q
 ..I $$SUBMORD(N)&$$NOCODE D
 ...N A S A=$G(^[$$^W3MAIN]W3ORDSND(N)) Q:N=""
 ...W "<br />"
 ...
 ...I $P(A,";",2)="OK" D  Q
 ....N ORDCSR S ORDCSR=$P(A,";",5)
 ....I ORDCSR D
 .....W "<span id=""ordcsr"_ORDCSR_""" "
 .....N MSDORD S MSDORD=$G(@$$^W3ORD@(N,"MSD"))
 .....N TO S TO=""
 .....I MSDORD D
 ......S TO=$$SITE^W3R(MSDORD)
 ......I $L(TO) D
 .......I $E(TO,$L(TO))'="/" S TO=TO_"/"
 .......S TO=TO_"w4ordvw.jsp?JB="_$$^%W1SsID("W4ORDVW")_"&ORD="_ORDCSR_"&FIRST=1&REM="_$G(%REM)
 .......W " onClick=""ClickOrdCSR('"_TO_"')"" "
 .....W " style=""color:green"
 .....I $L(TO)>5 D
 ......W ";cursor:pointer"
 .....W """ >"_ORDCSR_"</span>"
 ...
 ...I $P(A,";",2)["NOK" W "<span style=""color:red"">"_$$^%W1DICT("NOSENDED")_"</span>" Q
 ..
 ..N S2C S S2C=$$SEND2CUST(N) I $L(S2C) D
 ...W "<br /><span style=""color:darkred;font-size:"_$$^W3FSZ(10)_""">"
 ... W $$^%W1DICT("SEND2CUST")_" "_S2C_"</span>"
 ... N PSLN S PSLN=$G(@$$^W3ORD@(N,"PSLN"))
 ... I PSLN'=""  D
 .... W "<br /><span style=""color:darkblue;font-size:"_$$^W3FSZ(10)_""">"
 .... W $$H2U^%L1FRM(PSLN)_"</span>"
 .
 .I $$DELORD(N) D  Q
 ..W "&nbsp;"
 ..D
 ...I $$DELORD(N)=2 W $$^%W1DICT("DATEOVER") Q
 ...W $$^%W1DICT("ORDERDELETEBY",$P($G(@$$^W3ORD(N)@(N,"D")),"~",2))
 ..W "</div></td>",!
 .
 .I $$NOCODE,'$G(PHONE) D
 ..I $$AUTOSND(N) Q
 ..W "<br><span dir="""_$$^%W1DIR_""" style=""color:red"">",$S($$NEW(N):$$^%W1DICT("NEWCUST"),1:"")_"</span><br>",!
 ..D SUBMIT
 ..I $$RESHET(MSD) W "&nbsp;&nbsp;" D TIME^%W1DAT("tm"_N,"","")
 .W "</div>",!
 .W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
CHOICE ;
 W "<select id=""snifid"_N_""">",!
 W "<option value=""-1"">"_$$^%W1DICT("CHOICEBRANCH")_"</option>",!
 N I,SN S SN="" F I=1:1 S SN=$O(@$$^W4GL("W3SNIF")@(SN)) Q:SN=""  D
 .W "<option value="""_I_""">"_$$H2U^%L1FRM($$SNIF^W3SNIF(SN))_"</option>",!
 W "</select>",!
 Q
SUBMIT ;
 W "<input type=""button"""
 W " style=""width:"_$S($$RESHET(MSD):"40%",1:"60%")_"; background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS(MSD))
 W "; color:"_$$FRHD^W3CSS($$COLOR^W3CSS(MSD))_""""
 W " value="""_$$^%W1DICT("SUBMIT")_""" onClick=""SubmitOrd('"_N_"','"_W3ORDLS("JB")_"')"" />"
 Q
RESHET(MSD)
 I '$G(MSD) S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD)=1 Q 1
 Q 0
NEW(HZ) ;
 I $G(HZ)="" Q 0
 N LKH S LKH=$$CODE^W3HZMST(HZ,$$^W3ORD(HZ))
 I $G(LKH)="" S LKH=$$NMB^W3HZMST(HZ,$$^W3ORD(HZ))
 I $G(LKH)="" Q 0
 N MSD S MSD=$G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 I $G(MSD)="" Q 0
 I $O(^[$$^W3MAIN]W3LINKI(LKH,MSD,HZ),-1)="" Q 1
 Q 0
 ;
MSGTM(DAT,SHAA,IR) ;
 N PER S PER=$$PERIOD(DAT,SHAA,IR)
 I PER=0 W $$^%W1DICT("NOW!")
 I PER=1 W $$^%W1DICT("TODAY")
 I PER=-1 Q
 I PER=2 W $$^%W1DICT("FUTURE")
 Q
PERIOD(DAT,SHAA,IR)
 N TVAH
 S TVAH=$$THZ^W3TIME(IR)
 I 'TVAH S TVAH=60
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)<TVAH Q 0
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)>TVAH Q 1
 I $$^%L1DC(DAT,3)<+$H Q -1
 I $$^%L1DC(DAT,3)>+$H Q 2
 Q ""
MIN(SHAA) ;
 Q $P(SHAA,":")*60+$P(SHAA,":",2)
 ;
SELNAME(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 ;
 D SEDER(GR)
 N NXT S NXT=$O(^[$$^W3MAIN]TMP(JB,""))
 I NXT="" Q
 N PR1 S PR1=0
 S NXT=$O(^[$$^W3MAIN]TMP(JB,NXT))
 I NXT="" S PR1=1
 ;
 N DLVWEB S DLVWEB=+$$DLVWEB^W4DLVCSR
 ;
 W "<select id=""nmid"""
 I $D(W3BOR) W " onChange=""ChangeRest()"""
 W ">",!
 I 'PR1 D
 .W "<option value=""ALL"""
 .I '$G(%ARG("MSD")) W " selected=""selected"""
 .W ">"_$$^%W1DICT("ALL")_"</option>",!
 ;
 N N S N="" F  S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I DLVWEB,'$$MMCC^W4PRM,A=$$MSDR^W4PRM Q
 .D SELNAME1(N,A)
 W "</select>",!
 K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
SELNAME1(INVMSD,MSD) ;
 Q:$G(INVMSD)=""
 N VL S VL=$$H2U^%L1FRM($$INV^%L1FRM(INVMSD))
 W "<option value="""_MSD_""""
 I $G(%ARG("MSD")),MSD=%ARG("MSD") W " selected=""selected"""
 W ">"
 W MSD_" "_VL
 W "</option>",!
 Q
SEDER(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 N N,N1,NS D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSDR(GR,N)) Q:N=""  I $G(^(N)) D CRTMP(N) D
 ..S N1="" F  S N1=$O(^[$$^W3MAIN]W3MSDR(N,N1)) Q:N1=""  I $G(^(N1)) D CRTMP(N1)
 Q
CRTMP(MSD) ;
 N INV,NM
 S NM=$G(^[$$^W3MAIN]W3MSD(MSD))
 S INV=$$INV^%L1FRM(NM) Q:INV=""
 S ^[$$^W3MAIN]TMP(JB,INV)=MSD
 Q
STAT(KOT,VL,PR)
 I 'VL W "<td width=""7%"">&nbsp;</td>" Q
 W "<td style="""_$$FONTFM^W3CSS_";width:16%;color:"_$S($G(PR):"black",1:"gray")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W $$^%W1DICT(KOT)_" : "
 W "&nbsp;<span style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W VL_"</span></td>"
 Q
 ;
AUTOSEND(N) ;
 I $$AUTOSEND^W3PRM(N) D  Q
 .I $D(^[$$^W3MAIN]SND4ORD(N)) Q
 .N PRM S PRM=N_"~"_$$SHAA^W3HZMST(N,GL)_"~"_W3ORDLS("JB")
 .N SNIF S SNIF=1
 .I $G(MSD)=1 D
 ..I $$CITY^W3HZMST(N,GL)["aia` lz" S SNIF=1 Q
 ..S SNIF=2
 .S PRM=PRM_"~"_SNIF
 .S ^[$$^W3MAIN]SND4ORD(N)=PRM
 Q
SF(STAM) ;
 I ($G(%ARG("MSDR"))=10)!($G(%ARG("MSD"))=1)!($G(MSD)=1) Q 1
 Q 0
SEND2CUST(HZ) ;
 Q $G(@$$^W3ORD(HZ)@(HZ,"M"))
 ;
WASFAX(HZ) ;
 I '$G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) Q 0
 N HZRSD S HZRSD=^("HZRSD")
 N MSD S MSD=+$G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 N SNIF S SNIF=+$G(@$$^W3ORD(HZ)@(HZ,"SNIF"))
 I $D(^[$$^W3MAIN]HZ2WEBA(MSD,SNIF_"-"_HZRSD,"WEB")) S HZRSD=SNIF_"-"_HZRSD
 N WEB S WEB=$G(^[$$^W3MAIN]HZ2WEBA(MSD,HZRSD,"WEB"))
 I WEB="" Q 0
 I $P(WEB,";",2)["F-" Q 1
 Q 0
 ;
DESCRSTAT(HZM) ;
 W "<br>",!
 W "<span style=""font-size:"_$$^W3FSZ(9)
 W ";color:"_$S($$DELORD(HZM):"red",1:"darkblue")_""">&nbsp;",!
 I $$DELORD(HZM) W $$^%W1DICT("ORDERDELETED") G DSEND
 I $$WASFAX(HZM),$$HZMH(HZM) W $$^%W1DICT("PRICELISTFAXED") G DSEND
 I $$WASFAX(HZM),'$$HZMH(HZM) W $$^%W1DICT("ORDERFAXED") G DSEND
 I $$HZMH(HZM) W $$^%W1DICT("PRICELIST") G DSEND
 I $$FAXORD(HZM) W $$^%W1DICT("FAXREMINDER") G DSEND
 I $$SUBMORD(HZM) D  G DSEND
 .;;I $$AUTOSEND^W3PRM(N) W $$^%W1DICT("ORDERSENDED2RSD")
 .W $$^%W1DICT("ORDERCONFIRMED")
 I '$$SUBMORD(HZM),$$^%L1DC(DAT,3)>$H W $$^%W1DICT("FUTUREORDER") G DSEND
 I '$$SUBMORD(HZM),$$PERIOD(DAT,SHAA,IR)=0 W $$^%W1DICT("URGENT") G DSEND
 I '$$SUBMORD(HZM) W $$^%W1DICT("ORDERINWAITING") G DSEND
DSEND ;
 W "</span>",!
 ;
 I $$PIZUIM(HZM) D
 .W "<br>",!
 .W "<span style=""color:red;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("PIZUIM!")
 .W "</span>"
 Q
 ;
AUTOSND(N) ;
 I $$AUTOSEND^W3PRM(N),'$$^W4MM Q 1
 I $$AUTOFAX^W4PRM Q 1
 Q 0
 ;
SHOW(STAM) ;
 I $G(%ARG("SHOW"))'="" Q %ARG("SHOW")
 Q $$GETP^%W1PRM("SHOW")
 ;
PIZUIM(HZM) ; 
 Q $L($G(@$$^W3ORD@(HZM,"PIZUIM"))) 
 ;
DTHZ(ORD,GL) ;
 N DTHZ S DTHZ=$$^%L1DC($$DAT^W3HZMST(ORD,GL),3)
 N SHAA S SHAA=$$SHAA^W3HZMST(ORD,GL)
 I '$$NIGHT^W4PRM,SHAA<5 S DTHZ=DTHZ-1
 Q DTHZ
 ;
D(ER) ; 
 S ^D(+$G(N))=ER
 Q 
 ;
BELONG2MSDR(MSDR,MSDHZ) ; 
 I '$G(MSDR) Q 1
 N GLMSDR S GLMSDR="^[$$^W3MAIN]W3MSDR"
 I $D(@GLMSDR@(MSDR,MSDHZ)) Q 1
 ;
 N OK S OK=0
 N N,N1 S N="" F  S N=$O(@GLMSDR@(N)) Q:N=""  D  Q:OK
 .I $D(@GLMSDR@(N,MSDHZ)),$D(@GLMSDR@(MSDR,N)) S OK=1  
 Q OK
 ;
BLNG2MSDR(MSDR,MSDHZ) ; 
 I '$G(MSDR) Q 1
 I $D(ARRMSD(MSDR,MSDHZ)) Q 1
 Q 0
 ;
 N GLMSDR S GLMSDR="^[$$^W3MAIN]W3MSDR"
 I $D(@GLMSDR@(MSDR,MSDHZ)) Q 1
 Q 0
 ;
 ;
CRARRMSD(MSDR) ; 
 K ARRMSD
 N GLMSDR S GLMSDR="^[$$^W3MAIN]W3MSDR"
 N N1,N2
 ;
 S N1="" F  S N1=$O(@GLMSDR@(MSDR,N1)) Q:N1=""  D
 .S ARRMSD(MSDR,N1)="" 
 ; 
 N N0,N2 S N0="" F  S N0=$O(@GLMSDR@(N0)) Q:N0=""  I $D(@GLMSDR@(MSDR,N0)),N0'=MSDR D
 .N N2 S N2="" F  S N2=$O(@GLMSDR@(N0,N2)) Q:N2=""  D 
 ..S ARRMSD(MSDR,N2)=""
 Q
 ;
 ;
FINDTEXT ;
  W "<tr>",!  
  W "<td colspan=""4"">"_$$^%W1DICT("SEARCH")_$$NBSP^%L1FRM(2)
     W "<input type=""text"" id=""search"" size=""35"" "
     W " onClick='this.select()' " 
     W " />&nbsp;"
     D ^W4BUTTON("SrchDn",">","FindText('search',false)","width:25px;height:25px;background-color:lightgrey")
     W "&nbsp;" 
     D ^W4BUTTON("SrchUp","<","FindText('search',true)","width:25px;height:25px;background-color:lightgrey")
    W "</td>",!
  W "<tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDLS0
W3ORDLS(OPT) ; [ 09.08.16 20:25 ] [ 25.07.16 13:41 ] [ 24.07.16 15:14 ] 
 ; ===      OPT=PC     ===
 ; --- OPT=0 -- ; w3ordls : from w3member -> ListOrd() - COPY
 ;
 ; --- OPT=1 -- NO SUBMIT ORDER LIST FOR RESTAURANT ; w3rcvhd -> SbmRadio -> w3rcvord PC=1
 ; --- OPT=2 -- SUBMIT ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=2
 ; --- OPT=3 -- DELETE ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=3
 ; --- OPT=4 -- ALL ORDERS
 ;        WITH PHONE  - UNREGISTER CUSTOMER REPORT ; w3guest -> ShowStat -> w3rcvord (PC=4, PHONE,HOME)
 ;        WITH CODE - REGISTER CUSTOMER REPORT ; - w3member
 ;        WITHOUT CODE,PHONE  - RESTAURANT REPORT ; -- w3rcvhd -> SbmRadio -> w3rcvord PC=4
 ;-------------------------------------------------------
 N (JB,CODE,OPT,MEDAT,ADDAT,HOME,PHONE,%ARG,LKH,LKHR,SUGT,%REM)
 D KILL^%W3DEB("W3ORDLS")
 Q:$$SHOW=0
 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSDR")) K MSD
 ;;S ^WO=$G(^WO)+1
 ;;W "OPT="_OPT_"  ^WO="_^WO,!
 D PUT^%W3DEB("W3ORDLS","OPT=OPT & MEDAT=MEDAT & ADDAT=ADDAT & MSD=MSD & CODE=CODE & LKHR=LKHR & ARG=[%ARG")
 I '$G(JB) Q
 ;ZWR %ARG
 I '$G(OPT),'$G(PHONE),$$NOCODE Q
 ;;W 2,!
 ;
 K ^[$$^W3MAIN]TMPORDB(JB)
 I $D(^[$$^W3MAIN]TMPORD(JB)) M ^[$$^W3MAIN]TMPORDB(JB)=^[$$^W3MAIN]TMPORD(JB)
 K ^[$$^W3MAIN]TMPORD(JB)
 S W3ORDLS("JB")=JB
 S GL=$$^W3ORD
 ;;I '$G(OPT) W "<br><br>",!
 ;W "%REM="_$G(%REM)
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 W "<div align=""center"">",!
 I '$G(OPT) W "<h2 style=""color:red;font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("CLICK4COPY")_"</h2>",!
 I $G(OPT),'$$DLVWEB^W4DLVCSR,$$SHOW'=2 W "<h2 style=""color:red"">"_$$T^%L1TIME($P($H,",",2))_"</h2>",!
 ;;W "<br>",!
 ;;W 3,!
 S DRC=-1 ;;I '$G(OPT) S DRC=-1
 I $$SHOW=2 S DRC=1
 ;
 S TXTMRQ=""
 D CRVIB(1)
 ;
 I $$SHOW'=2 D
 .W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""">"
 . W "<tr>"
 .  W "<td width=""6%""><b>"_$$^%W1DICT("TOTAL")_"</b></td>",!
 .  D STAT("ORDERQN",SHZ,1)
 .  D STAT("NEWCLIENTS",SNEW,1)
 .  D STAT("FAXQN",SFAX,1)
 .  D STAT("WAITING",SNOSBM,1)
 .  D STAT("NOSENDED",SNOSHUD,1)
 .  D STAT("NOPAYED",SNOSHUL,1)
 .  D STAT("NODLV",SNODLV,1)
 .  I '$$SF D
 .  .D STAT("TOPAY",$J($G(SPAY),2,2),1)
 . W "</tr>"
 .;
 .I '$G(%ARG("MKR")),$$SHOW'=2 D
 ..N M S M="" F  S M=$O(SHZ(M)) Q:M=""  I $G(SHZ(M)) D
 ...W "<tr>"
 ... W "<td><b>"_$$H2U^%L1FRM($G(^[$$^W3MAIN]W3MKR(M)))_"</b></td>",!
 ... D STAT("ORDERQN",SHZ(M))
 ... D STAT("NEWCLIENTS",$G(SNEW(M)))
 ... W "<td>&nbsp;</td>",!
 ... W "<td>&nbsp;</td>",!
 ...I '$$SF D
 .... D STAT("DLVPAY",$J($G(SDMS(M)),2,2))
 .... D STAT("TOPAY",$J($G(SPAY(M)),2,2))
 ...W "</tr>",!
 ;
 I $G(SHZMH),$$SHOW'=2 D
 .W "<tr>"
 .W "<td width=""6%""><b>"_$$^%W1DICT("TOTAL")_"</b></td>",!
 .D STAT("PRICEOFFERS",SHZMH,1)
 .W "</tr>"
 .
 W "</table>",!
 ;;K SPAY,SDMS,SHZ,SNEW
 ;
 S FIRSTLINE=1
 W "<table id=""TblOrd"" dir="""_$$^%W1DIR_""" class=""vw"" style=""background-color:white;color:black"" border=1 cellpadding=""0"" cellspacing=""0"" width=""100%"" >",!
 W "<tr>",!
 W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>"
 W "<th>"_$$^%W1DICT("CUSTOMERDETAILS")_"</th>"
 W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
 I $G(OPT) D
 .W "<th width=""10%"">"_$$^%W1DICT("SUBMITTIME")_"</th>"
 W "</tr>",!
 ;
 ;;I $G(HOME) S MEDAT=+$H,ADDAT=MEDAT+10
 ;
 I $G(%ARG("ORDER")) D  G TOT
 .I '$D(^[$$^W3MAIN]W3LINK(%ARG("ORDER"))) Q
 .N MSDHZ S MSDHZ=$P(^[$$^W3MAIN]W3LINK(%ARG("ORDER")),"~") Q:'MSDHZ
 .I $G(MSD),MSDHZ'=MSD Q
 .I $G(%ARG("MSDR")),'$D(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
 .N JB S W3ORDLS=%ARG("ORDER"),JB=W3ORDLS D SHOWORD(MSDHZ,%ARG("ORDER"),0)
 ;
 I $$GET^%W1PRM("TOTALSONLY") G TOT
 ;
 D CRVIB(0)
 ;
TOT I $$SHOW=2 G EN
 W "<tr"
 W " style=""font-size:"_$$^W3FSZ(20)_";background-color:yellow"""
 W "><td>&nbsp;"
 W $$^%W1DICT("TOTAL")
 W "</td>",!
 W "<td>",!
 W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(20)_""">",!
 W "<td width=""50%"" style=""color:red"">",!
 W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SHZ)
 ;;N JJ F JJ=1:1:20 W "&nbsp;"
 W "</td><td style=""text-align:center"" >"
 W "<span style='color:green'>"_$$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SDMS,2,2)_"</span>"
 W "</td>",!
 W "</tr></table></td>",!
 W "<td style=""color:red"" colspan=""2"">",!
 W "&nbsp;"_$J($G(SPAY),2,2)_"&nbsp;"
 W "</td>",!
 W "</tr>",!
 ;
 I '$G(%ARG("MKR")) D
 .N M S M="" F  S M=$O(SHZ(M)) Q:M=""  I $G(SHZ(M)) D
 ..W "<tr"
 ..W " style=""font-size:"_$$^W3FSZ(16)_";background-color:#fafad2"""
 ..W "><td>&nbsp;"
 ..W " <b>"_$$H2U^%L1FRM($G(^[$$^W3MAIN]W3MKR(M)))_"</b>",!
 ..W " </td>",!
 ..W " <td style=""color:brown"">",!
 ..W "  <table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_""">",!
 ..W "   <td width=""50%"">",!
 ..W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SHZ(M)
 ..W "   </td><td style='text-align:center'>"
 ..W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J($G(SDMS(M)),2,2)
 ..W "   </td>",!
 ..W "   </tr></table></td>",!
 ..W " <td style=""color:brown"" colspan=""2"">",!
 ..W "  &nbsp;"_$J($G(SPAY(M)),2,2)_"&nbsp;"
 ..W " </td>",!
 ..W "</tr>",!
 ;
 I $G(SNEW) D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:#fafad2"""
 .W "><td>&nbsp;"
 .W $$^%W1DICT("NEWCLIENTS")
 .W "</td>",!
 .W "<td style=""color:brown"">",!
 .W " <table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_""">",!
 .W "  <td width=""50%"">",!
 .W "   &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SNEW
 .W "  </td><td style='text-align:center'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SNEWDM,2,2)
 .W "  </td>",!
 .W " </tr></table></td>",!
 .W " <td style=""color:brown"" colspan=""2"">",!
 .W "  &nbsp;"_$J(SNEWPAY,2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
 ;
 I $O(SMSD($O(SMSD(""))))'="" N RST S RST="" F  S RST=$O(SMSD(RST)) Q:RST=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:white;color:green"""
 .W "><td>&nbsp;"
 .W $$NAME^W3MSD(RST)
 .W "</td>",!
 .W "<td>",!
 .W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_";color:green"">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMSD(RST,"Q"))
 .W "</td><td style='text-align:center'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J($G(SMSD(RST,"D")),2,2)
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td colspan=""2"">",!
 .W "&nbsp;"_$J($G(SMSD(RST,"S")),2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 N SUGT S SUGT="" F  S SUGT=$O(SCODTS(SUGT)) Q:SUGT=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:lightblue;color:darkblue"""
 .W "><td>&nbsp;"
 .W $$^W3SHOWTS(SUGT)
 .W "</td>",!
 .W "<td>",!
 .W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_";color:darkblue"">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SCODTS(SUGT,"Q"))
 .W "</td><td style='text-align:center'>"
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td colspan=""2"">",!
 .W "&nbsp;"_$J($G(SCODTS(SUGT,"S")),2,2)_"&nbsp;"
 .W "</td>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "<table><tr>",!
 I '$G(OPT),'$G(PHONE),$G(MSD) D
 .N PRM S PRM=$$GET^%W1PRM("PRM")
 .W "<td>" D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back('"_MSD_"')","font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 ;
 I $G(OPT)=4,$G(PHONE) D
 .W "<td>" D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 ;
 I $G(OPT)=4,$G(%ARG("DLVFND")) D
 .W "<td>" D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back2Dlv()","color:red;font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 ;
 I '$G(PHONE),$$SHOW'=2 D
 .W "<td>" D ROUNDBUT^%W1JS("rbtprint",$$^%W1DICT("PRINTORDERLIST"),"Print('"_OPT_"','"_$G(MEDAT)_"','"_$G(ADDAT)_"','"_$G(CODE)_"')","font-size:"_$$^W3FSZ(16),"wh29,29") W "</td>",!
 W "</tr></table>",!
 W "</div>",!
 W "<br /><br /><br />",!
 K ^[$$^W3MAIN]TMPORD(JB)
 I $D(^[$$^W3MAIN]TMPORDB(JB)) M ^[$$^W3MAIN]TMPORD(JB)=^[$$^W3MAIN]TMPORDB(JB)
 Q
 ;
CRVIB(NOPC) ;
 ;
 K SPAY,SHZ,SDMS,SNEW,SHZMH,SFAX
 S (SPAY,SHZ,SHZMH,SFAX,SDMS,SNEW,SNEWDM,SNEWPAY,SDEL,SSBM,SNOSHUD,SNOSBM,SNOSHUL,SNODLV)=0
 S (SPAYM,SHZM,SDMSM)=0 K SMSD,SCODTS
 ;
 K ^[$$^W3MAIN]TMP($$^%W1JB)
 ;
 I $G(MEDAT),$G(ADDAT) F DT=MEDAT:1:ADDAT D
 .N HZ,DAT,SHAA,IR
 .S N="" F  S N=$O(^[$$^W3MAIN]W3LINKD(DT,N),DRC) Q:N=""  D
 ..N KDM S KDM=2
 ..I $$SHOW=2,'$$DELORD(N),'$$SUBMORD(N) D  I $$PERIOD(DT,SHAA,IR)=0 S KDM=1 G CRVIBHZ
 ...S DAT=$$DAT^W3HZMST(N,GL)
 ...S SHAA=$$SHAA^W3HZMST(N,GL)
 ...S IR=$$CITY^W3HZMST(N,GL)
 ..
 ..I $$AUTOSEND^W3PRM(N),$P($G(^[$$^W3MAIN]W3ORD(N)),"~",36)'<$$AUTOSEND^W3PRM(N),$G(%ARG("SORT"))'=1 D
 ...I '$D(^[$$^W3MAIN]HZLINKWI(N)) D
 ....I $$DELORD(N) Q
 ....I $$HZMH(N) S KDM=3 Q
 ....I $$CODTS^W3HZMST(N,GL)=1!($$CODTS^W3HZMST(N,GL)=2) S KDM=4
 ....I $$CODTS^W3HZMST(N,GL)>3&($$CODTS^W3HZMST(N,GL)<8) S KDM=5
 ....I $$CODTS^W3HZMST(N,GL)=3 S KDM=$S($L($$CREDCARD^W3HZMST(N,GL)):6,1:8)
 ....I $$CODTS^W3HZMST(N,GL)=9 S KDM=6
 ..;
CRVIBHZ ..S HZ=KDM_$TR($J(N,9)," ",0)
 ..S ^[$$^W3MAIN]TMP($$^%W1JB,HZ)=""
 ;
 N HZ ;
 S N="" F  S N=$O(^[$$^W3MAIN]TMP($$^%W1JB,N),DRC) Q:N=""  D
 .S HZ=+$E(N,2,20)
 .D VIB(HZ,$G(NOPC))
 Q
 ;
VIB(N,NOPC) ;
 N A,MSDHZ S A=$G(^[$$^W3MAIN]W3LINK(N))
 S MSDHZ=$P(A,"~")
 I $$^W4MM S MSDHZ=$P(A,"~",5)
 ;
 I $G(MSD),MSDHZ'=MSD Q
 I $G(%ARG("REST")),MSDHZ'=%ARG("REST") Q
 ;
 I $G(%ARG("MSDR")),MSDHZ,'$D(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
 ;
 N JB S W3ORDLS=N,JB=N
 N HZMH S HZMH=$$HZMH(N)
 N CODEHZ S CODEHZ=$TR($$CODE^W3HZMST(N,GL),"!","")
 ;
 I '$$NOCODE,'$G(PHONE),CODEHZ'=CODE Q
 ;
 I $$NOCODE,$G(LKH),CODEHZ'=$P($$SPA^%L1FRM(LKH)," ") Q
 I $$NOCODE,$G(LKHR),$G(CODEHZ),LKHR'=$G(@$$^W4GL("P1EZL")@(CODEHZ)) Q
 I $$NOCODE,$G(%ARG("MKR")),%ARG("MKR")>1,$$MKR^W3HZMST(N,GL)'=%ARG("MKR") Q
 I $$NOCODE,$G(%ARG("MKR")),%ARG("MKR")=1,$$MKR^W3HZMST(N,GL)>1 Q
 I $$NOCODE,$G(SUGT),$$CODTS^W3HZMST(N,GL)'=SUGT Q
 I $$NOCODE,$G(SUGT)="-",'HZMH Q
 I $$NOCODE,$L($G(%ARG("IR"))),$G(%ARG("IR"))'="ALL",$$SPA^%L1FRM($$CITY^W3HZMST(N,GL))'=$$INVH^%L1FRM($$SPA^%L1FRM(%ARG("IR"))) Q
 I '$$NOCODE,'$G(PHONE),$$CODE^W3HZMST(N,GL)["!",$$SPA^%L1FRM($$LKH^W3L(CODE))'=$$SPA^%L1FRM($$NAME^W3HZMST(JB,GL)) Q
 ;
 I $G(OPT)=1,$$SUBMORD(N)!$$DELORD(N) Q:$$SHOW=2&$L($$SEND2CUST(N))  Q:$$SHOW'=2  ;-- WAITING
 I $G(OPT)=2,'$$SUBMORD(N)!$$DELORD(N) Q  ; -- SUBMIT
 I $G(OPT)=3,'$$DELORD(N) Q  ; -- DELETE
 N DATHZ S DATHZ=$$^%L1DC($$DAT^W3HZMST(N,GL),3)
 ;;W " MEDAT="_MEDAT_" ADDAT="_ADDAT_" DATHZ="_DATHZ_" CODEHZ="_CODEHZ_"<br />",!
 I $G(MEDAT)="" Q
 I $G(ADDAT)="" Q
 I DATHZ<MEDAT Q
 I DATHZ>ADDAT Q
 ;
 I $G(HOME),$G(PHONE),$$HOME^W3HZMST(N,GL)'=HOME!($TR($$NMB^W3HZMST(N,GL),"-","")'=PHONE) Q
 D SHOWORD(MSDHZ,N,NOPC)
 Q
 ;
SUBMORD(HZ) ;
 Q $$CLOSE^W3HZMST(HZ)
 ;
DELORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"D")) Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD),3)<$H,'$$SUBMORD(HZ) Q 2
 Q 0
 ;
FAXORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"F")) Q 1
 Q 0
 ;
HZMH(HZ) ;
 I $$^W3PRCOFR(HZ) Q 1
 Q 0
 ;
SUBMTIME(HZ) ;
 N TM
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) D  Q TM
 .S TM=$P(^("S"),";")
 .S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J($P(TM,":",2),2)," ",0)
 Q $$^%W1DICT("WAITING")
 ;
NOCODE(STAM) ;
 I $G(CODE)["http:/" Q 1
 I $L($G(CODE)) Q 0
 Q 1
 ;
MOUSEOVER ;
 N PRMHZ S PRMHZ=W3ORDLS_"~"_$G(MEDAT)_"~"_$G(ADDAT)_"~"_$G(CODE)_"~"_$G(ORD)
 W " onMouseOver=""ChangeCursor(this)"" onClick=""ShowOrd('"_W3ORDLS("JB")_"','"_PRMHZ_"',1)""",!
 Q
 ;
SHOWORD(MSD,N,NOPC) ;
 I $D(@GL@(N))<11 Q
 N DAT,SHAA,IR,JB S JB=N
 S DAT=$$DAT^W3HZMST(N,GL)
 S SHAA=$$SHAA^W3HZMST(N,GL)
 S IR=$$CITY^W3HZMST(N,GL)
 N CMHD S CMHD=$$CMHD^W3HZMST(N,GL)
 ;
 ; --------- ORDER NUMBER ---------
 I $G(NOPC),$L(CMHD) D
 .I CMHD?1N.N1":10B".P Q
 .I CMHD[":10B" S CMHD=$P(CMHD,":10B",2,20)
 .I $$^%L1DC($$DAT^W3HZMST(N,GL),3)'=+$H Q
 .N SHAA S SHAA=$$SHAA^W3HZMST(N,GL)
 .I $$DELORD(N) Q
 .I SHAA*60+$P(SHAA,":",2)<($P($H,",",2)/60) Q
 .N TXT S TXT=" "_N_" : "_$$H2U^%L1FRM(CMHD)_" ******"
 .S TXTMRQ=TXTMRQ_TXT
 ;
 N HZMH S HZMH=$$HZMH(N)
 ;
 I $G(NOPC) G COMPTOT
 ;
 I FIRSTLINE,$L(TXTMRQ),$G(OPT) D
 .W "<tr><td colspan=""4"">"
 .W "<marquee scrolldelay=""120"" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""background-color:yellow;color:black;font-size:"_$$^W3FSZ(12)_";width:100%;"_$$FONTFM^W3CSS_";font-weight:bold;border:solid 1px brown"" >"
 .W TXTMRQ
 .W "</marquee>",!
 .W "</td>"
 .W "</tr>",!
 .S FIRSTLINE=0
 ;
 W "<tr"
 D
 .I $$DELORD(N) W " style=""background-color:black;color:red""" Q
 .;;I $$HZMH(N),'$D(^[$$^W3MAIN]HZLINKWI(N)) W " style=""background-color:96CE98;color:black""" Q
 .I $$WASFAX(N) W " style=""background-color:orange;color:black""" Q
 .I $$FAXORD(N) W " style=""background-color:yellow;color:black""" Q
 .I $$SUBMORD(N) W " style=""background-color:white;color:black""" ;fafad2""" Q
 .I '$$SUBMORD(N),$$^%L1DC(DAT,3)>$H W " style=""background-color:c0d2ec;color:black""" Q
 .I '$$SUBMORD(N),$$PERIOD(DAT,SHAA,IR)=0 W " style=""background-color:pink;color:black""" Q
 .I '$$SUBMORD(N) W " style=""background-color:eaeaea;color:black""" Q
 ;
ETR W " id=""ord"_N_""""
 W " >"
 ;
 W "<td style=""font-size:"_$$^W3FSZ(14)_""" width=""10%"""
 ;
 I '$G(OPT)!$$SUBMORD(N)!$$DELORD(N)!'$$NOCODE D  ;--- ORDER NUMBER
 .D MOUSEOVER
 .W ">&nbsp;"_N
 ;
 I $G(OPT),'$$SUBMORD(N),'$$DELORD(N),$$NOCODE D
 .W ">"
 .I '$G(PHONE) D
 ..W "<input type=""checkbox"" name=""chord"" value="""_N_""""
 ..W "  onClick=""CheckBox('"_N_"')"" />"
 .W "&nbsp;"_W3ORDLS
 .W "<br>",!
 .I '$G(PHONE) D
 ..W "    <img src=""w3cancel1.gif"" alt="""_$$^%W1DICT("DELETE")_""" onClick=""DeleteOrd('"_N_"')"" />"
 ..W "&nbsp;" D MSGTM(DAT,SHAA,IR)
 ;
 D DESCRSTAT(N)
 ;
 W "</td>",!
 ;
 ;
 W "<td "  ; ----------------- CUSTOMER DETAILS -----------------
 I $$NEW(N),'HZMH W " style=""border:solid red 2px"""
 I HZMH D
 .N TOTORD S TOTORD=$$TOTORD^W3HZMST(N,"",GL)
 .I TOTORD>0 W " style=""background-color:96CE98;color:black"
 .E  W " style=""background-color:black;color:red"
 .I $$NEW(N) W ";border:solid red 2px"
 .W """"
 W ">",!
 D
 .K W3ORDHD("SPANSTYLE")
 .I $$FAXORD(N),'$G(HZMH) S W3ORDHD("SPANSTYLE")="color:black",W3ORDHD("TDSTYLE")="color:black" Q
 .I $$SUBMORD(N) S W3ORDHD("SPANSTYLE")="color:brown",W3ORDHD("TDSTYLE")="color:black" Q
 .I $$DELORD(N) S W3ORDHD("SPANSTYLE")="color:red",W3ORDHD("TDSTYLE")="color:brown" Q
 .I '$$SUBMORD(N),$$^%L1DC(DAT,3)>$H  S W3ORDHD("SPANSTYLE")="color:brown",W3ORDHD("TDSTYLE")="color:black" Q
 .I '$$SUBMORD(N),$$PERIOD(DAT,SHAA,IR)=0 S W3ORDHD("SPANSTYLE")="color:red",W3ORDHD("TDSTYLE")="color:black" Q
 .I '$$SUBMORD(N) S W3ORDHD("SPANSTYLE")="color:brown",W3ORDHD("TDSTYLE")="color:black" Q
 D VW^W3ORDHD ; --- SHOW ORDER
 W "</td>",!
 ;
 ; ---------------------------- TOTAL -------------
 W "<td style=""font-size:"_$$^W3FSZ(14)_";color:red"
 ;
 I $$AUTOSEND^W3PRM(N),$P($G(^[$$^W3MAIN]W3ORD(N)),"~",36)'<$$AUTOSEND^W3PRM(N) D
 .I '$D(^[$$^W3MAIN]HZLINKWI(N)) W ";background-color:pink" D AUTOSEND(N) Q
 I '$G(NOPC) W """ width=""8%"">",!
 ;
COMPTOT ;
 N TS S TS=$$TSHL^W3HZMST(N,GL)
 N DMS S DMS=$$DMSH^W3HZMST(N,GL)
 ;
 I '$G(NOPC) D
 . W "<br />&nbsp;"_$J(TS,2,2)_"&nbsp;<br />"
 . W "<span style=""font-size:"_$$^W3FSZ(10)_";"_$G(W3ORDHD("SPANSTYLE"))_""">"
 . W " &nbsp;"_$$SHOWTS^W3ORDVW(JB,$$^W3ORD(N))
 . W "</span>"
 .W "</td>",!
 ;
 I $$WASFAX(N)!$$FAXORD(N) S SFAX=SFAX+1
 ;
 I HZMH S SHZMH=SHZMH+1 G SBMT
 ;
 S SPAY=$G(SPAY)+TS
 S SDMS=SDMS+DMS
 ;
 I 'HZMH S SHZ=SHZ+1
 ;
 I $$DELORD(N) S SDEL=SDEL+1
 ;
 I $$SUBMORD(N) S SSBM=SSBM+1 D
 .Q:'$$NOCODE
 .N A S A=$G(^[$$^W3MAIN]W3ORDSND(N)) Q:N=""
 .I $P(A,";",2)["NOK" S SNOSHUD=SNOSHUD+1
 ;
 I '$$SUBMORD(N),'$$DELORD(N) S SNOSBM=SNOSBM+1
 ;
 I $$AUTOSEND^W3PRM(N),$P($G(^[$$^W3MAIN]W3ORD(N)),"~",36)'<$$AUTOSEND^W3PRM(N),$$CODTS^W3HZMST(N,GL) D
 .I '$D(^[$$^W3MAIN]HZLINKWI(N)),'HZMH,'$$DELORD(N) S SNOSHUL=SNOSHUL+1
 ;
 S SCODTS($$CODTS^W3HZMST(N,GL),"S")=$G(SCODTS($$CODTS^W3HZMST(N,GL),"S"))+TS
 S SCODTS($$CODTS^W3HZMST(N,GL),"Q")=$G(SCODTS($$CODTS^W3HZMST(N,GL),"Q"))+1
 ;
 I $$MKR^W3HZMST(N,GL)>1 D
 .N MKR S MKR=$$MKR^W3HZMST(N,GL)
 .S SPAY(MKR)=$G(SPAY(MKR))+TS
 .S SDMS(MKR)=$G(SDMS(MKR))+DMS
 .S SHZ(MKR)=$G(SHZ(MKR))+1
 .I $$NEW(N) S SNEW(MKR)=$G(SNEW(MKR))+1
 ;
 D
 .N RST S RST=$G(^[$$^W3MAIN]W3ORD(N,"MSD")) Q:'RST
 .S SMSD(RST,"Q")=$G(SMSD(RST,"Q"))+1
 .S SMSD(RST,"S")=$G(SMSD(RST,"S"))+TS
 .S SMSD(RST,"D")=$G(SMSD(RST,"D"))+DMS
 ;
SBMT ;
 I $G(OPT) D  ; ------------- SUBMIT TIME
 .I $G(NOPC) G COMP1
 .W "<td dir=""LTR"" style=""font-weight:bold;font-size:"_$$^W3FSZ
 .I $$DELORD(N) W ";background-color:black"
 .I $$AUTOSEND^W3PRM(N),$$SUBMORD(N),'$L($$SEND2CUST(N)) D
 ..I $$^%L1DC($$DAT^W3HZMST(N,GL),3)>$H Q
 ..W ";background-color:pink"
 ..S SNODLV=SNODLV+1
 .W """"
 .W " width="""_$S($$RESHET(MSD):"14%",1:"12%")_""""
 .W ">"
 .W "<div align=""center"">",!
 .
COMP1 .I $$NEW(N),'HZMH D
 ..S SNEW=SNEW+1
 ..S SNEWPAY=SNEWPAY+TS
 ..S SNEWDM=SNEWDM+$$DMSH^W3HZMST(N,GL)
 .Q:$G(NOPC)
 .I '$$SUBMORD(N),'$$DELORD(N),$$NOCODE,'$G(PHONE) D
 ..D AUTOSEND(N)
 ..
 ..I '$$RESHET(MSD) D TIME^%W1DAT("tm"_N,"","")
 ..I $$RESHET(MSD) D CHOICE
 .
 .I $$SUBMORD(N)!'$$NOCODE!$G(PHONE) W "&nbsp;"_$$SUBMTIME(N) D  W "</div></td>",! Q
 ..I $$SUBMORD(N)&$$NOCODE D
 ...N A S A=$G(^[$$^W3MAIN]W3ORDSND(N)) Q:N=""
 ...W "<br />"
 ...I $P(A,";",2)="OK" W "<span style=""color:green"">"_$P(A,";",5)_"</span>" Q
 ...I $P(A,";",2)["NOK" W "<span style=""color:red"">"_$$^%W1DICT("NOSENDED")_"</span>" Q
 ..N S2C S S2C=$$SEND2CUST(N) I $L(S2C) D
 ...W "<br /><span style=""color:darkred;font-size:"_$$^W3FSZ(10)_""">"_$$^%W1DICT("SEND2CUST")_" "_S2C_"</span>"
 .
 .I $$DELORD(N) D  Q
 ..W "&nbsp;"
 ..D
 ...I $$DELORD(N)=2 W $$^%W1DICT("DATEOVER") Q
 ...W $$^%W1DICT("ORDERDELETEBY",$P($G(@$$^W3ORD(N)@(N,"D")),"~",2))
 ..W "</div></td>",!
 .
 .I $$NOCODE,'$G(PHONE) D
 ..I $$AUTOSND(N) Q
 ..W "<br><span dir="""_$$^%W1DIR_""" style=""color:red"">",$S($$NEW(N):$$^%W1DICT("NEWCUST"),1:"")_"</span><br>",!
 ..D SUBMIT
 ..I $$RESHET(MSD) W "&nbsp;&nbsp;" D TIME^%W1DAT("tm"_N,"","")
 .W "</div>",!
 .W "</td>",!
 W "</tr>",!
 Q
 ;
CHOICE ;
 W "<select id=""snifid"_N_""">",!
 W "<option value=""-1"">"_$$^%W1DICT("CHOICEBRANCH")_"</option>",!
 N I,SN S SN="" F I=1:1 S SN=$O(@$$^W4GL("W3SNIF")@(SN)) Q:SN=""  D
 .W "<option value="""_I_""">"_$$H2U^%L1FRM($$SNIF^W3SNIF(SN))_"</option>",!
 W "</select>",!
 Q
SUBMIT ;
 W "<input type=""button"""
 W " style=""width:"_$S($$RESHET(MSD):"40%",1:"60%")_"; background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS(MSD))
 W "; color:"_$$FRHD^W3CSS($$COLOR^W3CSS(MSD))_""""
 W " value="""_$$^%W1DICT("SUBMIT")_""" onClick=""SubmitOrd('"_N_"','"_W3ORDLS("JB")_"')"" />"
 Q
RESHET(MSD)
 I '$G(MSD) S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD)=1 Q 1
 Q 0
NEW(HZ) ;
 I $G(HZ)="" Q 0
 N LKH S LKH=$$CODE^W3HZMST(HZ,$$^W3ORD(HZ))
 I $G(LKH)="" S LKH=$$NMB^W3HZMST(HZ,$$^W3ORD(HZ))
 I $G(LKH)="" Q 0
 N MSD S MSD=$G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 I $G(MSD)="" Q 0
 I $O(^[$$^W3MAIN]W3LINKI(LKH,MSD,HZ),-1)="" Q 1
 Q 0
 ;
MSGTM(DAT,SHAA,IR) ;
 N PER S PER=$$PERIOD(DAT,SHAA,IR)
 I PER=0 W $$^%W1DICT("NOW!")
 I PER=1 W $$^%W1DICT("TODAY")
 I PER=-1 Q
 I PER=2 W $$^%W1DICT("FUTURE")
 Q
PERIOD(DAT,SHAA,IR)
 N TVAH
 S TVAH=$$THZ^W3TIME(IR)
 I 'TVAH S TVAH=60
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)<TVAH,'$$NOURGENT Q 0
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)>TVAH!$$NOURGENT Q 1
 I $$^%L1DC(DAT,3)<+$H Q -1
 I $$^%L1DC(DAT,3)>+$H Q 2
 Q ""
MIN(SHAA) ;
 Q $P(SHAA,":")*60+$P(SHAA,":",2)
 ;
SELNAME(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 ;
 D SEDER(GR)
 N NXT S NXT=$O(^[$$^W3MAIN]TMP(JB,""))
 I NXT="" Q
 N PR1 S PR1=0
 S NXT=$O(^[$$^W3MAIN]TMP(JB,NXT))
 I NXT="" S PR1=1
 ;
 W "<select id=""nmid"""
 I $D(W3BOR) W " onChange=""ChangeRest()"""
 W ">",!
 I 'PR1 D
 .W "<option value=""ALL"""
 .I '$G(%ARG("MSD")) W " selected=""selected"""
 .W ">"_$$^%W1DICT("ALL")_"</option>",!
 N N S N="" F  S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D
 .D SELNAME1(N,^(N))
 W "</select>",!
 K ^[$$^W3MAIN]TMP(JB)
 Q
SELNAME1(INVMSD,MSD) ;
 Q:$G(INVMSD)=""
 N VL S VL=$$H2U^%L1FRM($$INV^%L1FRM(INVMSD))
 W "<option value="""_MSD_""""
 I $G(%ARG("MSD")),MSD=%ARG("MSD") W " selected=""selected"""
 W ">"
 W MSD_" "_VL
 W "</option>",!
 Q
SEDER(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 N N,NS D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSDR(GR,N)) Q:N=""  I $G(^(N)) D CRTMP(N)
 Q
CRTMP(MSD) ;
 N INV,NM
 S NM=$G(^[$$^W3MAIN]W3MSD(MSD))
 S INV=$$INV^%L1FRM(NM) Q:INV=""
 S ^[$$^W3MAIN]TMP(JB,INV)=MSD
 Q
STAT(KOT,VL,PR)
 I 'VL W "<td width=""7%"">&nbsp;</td>" Q
 W "<td style="""_$$FONTFM^W3CSS_";width:16%;color:"_$S($G(PR):"black",1:"gray")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W $$^%W1DICT(KOT)_" : "
 W "&nbsp;<span style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W VL_"</span></td>"
 Q
 ;
AUTOSEND(N) ;
 I $$AUTOSEND^W3PRM(N) D  Q
 .I $D(^[$$^W3MAIN]SND4ORD(N)) Q
 .N PRM S PRM=N_"~"_$$SHAA^W3HZMST(N,GL)_"~"_W3ORDLS("JB")
 .N SNIF S SNIF=1
 .I $G(MSD)=1 D
 ..I $$CITY^W3HZMST(N,GL)["aia` lz" S SNIF=1 Q
 ..S SNIF=2
 .S PRM=PRM_"~"_SNIF
 .S ^[$$^W3MAIN]SND4ORD(N)=PRM
 Q
SF(STAM) ;
 I ($G(%ARG("MSDR"))=10)!($G(%ARG("MSD"))=1)!($G(MSD)=1) Q 1
 Q 0
SEND2CUST(HZ) ;
 Q $G(@$$^W3ORD(HZ)@(HZ,"M"))
 ;
WASFAX(HZ) ;
 I '$G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) Q 0
 N HZRSD S HZRSD=^("HZRSD")
 N MSD S MSD=+$G(@$$^W3ORD(HZ)@(HZ,"MSD"))
 N SNIF S SNIF=+$G(@$$^W3ORD(HZ)@(HZ,"SNIF"))
 I $D(^[$$^W3MAIN]HZ2WEBA(MSD,SNIF_"-"_HZRSD,"WEB")) S HZRSD=SNIF_"-"_HZRSD
 N WEB S WEB=$G(^[$$^W3MAIN]HZ2WEBA(MSD,HZRSD,"WEB"))
 I WEB="" Q 0
 I $P(WEB,";",2)["F-" Q 1
 Q 0
 ;
DESCRSTAT(HZM) ;
 W "<br>",!
 W "<span style=""font-size:"_$$^W3FSZ(9)
 W ";color:"_$S($$DELORD(HZM):"red",1:"darkblue")_""">&nbsp;",!
 I $$DELORD(HZM) W $$^%W1DICT("ORDERDELETED") G DSEND
 I $$WASFAX(HZM),$$HZMH(HZM) W $$^%W1DICT("PRICELISTFAXED") G DSEND
 I $$WASFAX(HZM),'$$HZMH(HZM) W $$^%W1DICT("ORDERFAXED") G DSEND
 I $$HZMH(HZM) W $$^%W1DICT("PRICELIST") G DSEND
 I $$FAXORD(HZM) W $$^%W1DICT("FAXREMINDER") G DSEND
 I $$SUBMORD(HZM) D  G DSEND
 .I $$AUTOSEND^W3PRM(N) W $$^%W1DICT("ORDERSENDED2RSD")
 .W $$^%W1DICT("ORDERCONFIRMED")
 I '$$SUBMORD(HZM),$$^%L1DC(DAT,3)>$H W $$^%W1DICT("FUTUREORDER") G DSEND
 I '$$SUBMORD(HZM),$$PERIOD(DAT,SHAA,IR)=0 W $$^%W1DICT("URGENT") G DSEND
 I '$$SUBMORD(HZM) W $$^%W1DICT("ORDERINWAITING") G DSEND
DSEND ;
 W "</span>",!
 Q
 ;
AUTOSND(N) ;
 I $$AUTOSEND^W3PRM(N),'$$^W4MM Q 1
 I $$AUTOFAX^W4PRM Q 1
 Q 0
 ;
SHOW(STAM) ;
 I $G(%ARG("SHOW"))'="" Q %ARG("SHOW")
 Q $$GETP^%W1PRM("SHOW")
 ;
NOURGENT(STAM) ; 
 Q $$NOURGENT^W3PRM 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDLSP
W3ORDLSP(OPT) ; [ 22.08.09 11:35 ] [ 24.09.08 10:18 ] [ 28.03.08 20:35 ]
 ; --- OPT=0 -- ORDER LIST FOR CUSTOMER
 ; --- OPT=1 -- NO SUBMIT ORDER LIST FOR RESTAURANT
 ; --- OPT=2 -- SUBMIT ORDER LIST FOR RESTAURANT
 ; --- OPT=3 -- FULL ORDER LIST FOR RESTAURANT
 ;-------------------------------------------------------
 N (JB,CODE,OPT,MEDAT,ADDAT)
 D KILL^%W3DEB("W3ORDLS")
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W3ORDLS","OPT=OPT & JB=JB & MSD=MSD & CODE=CODE & ARG=[%ARG")
 I 'MSD!'$G(JB) Q
 I '$G(OPT),$$NOCODE^W3ORDLS Q
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 K ^[$$^W3MAIN]TMPORD(JB)
 S W3ORDLS("JB")=JB
 S GL=$$^W3ORD
 S (SPAY,SHZ)=0
 W "<div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" >",!
 W "<tr>",!
 W "<td width=""70%"" style=""font-size:"_$$^W3FSZ(22)_";text-align:center"">"_$$H2U^%L1FRM($$^W3MSDG(MSD))_"</td>"
 W "<td style=""font-size:"_$$^W3FSZ(16)_""">" W $S(OPT=1:$$^%W1DICT("SBMNO"),OPT=2:$$^%W1DICT("SBM"),1:$$^%W1DICT("SBMALL")) W "</td>",!
 W "</tr>",!
 I $G(CODE) D
 .W "<tr>",!
 .W "<td width=""90%"" style=""font-size:"_$$^W3FSZ(22)_";text-align:center"">"_$$H2U^%L1FRM($$LKH^W3L(CODE))_"</td>"
 .W "</tr>",!
 W "</table>",!
 W "<table dir="""_$$^%W1DIR_""" width=""100%"">",!
 I $G(MEDAT),$G(ADDAT) D
 .W "<tr>",!
 .W "    <td>" S %W1DAT("ALIGN")="center" D ^%W1DAT("MEDAT",$$^%L1DC(MEDAT,1),$$^%W1DICT("FROMDATE")) W "</td>",!
 .W "    <td>" S %W1DAT("ALIGN")="center" D ^%W1DAT("ADDAT",$$^%L1DC(ADDAT,1),$$^%W1DICT("UNTILDATE")) W " </td>",!
 .W "</tr>",!
 W "</table>",!
 W !
 W "<table dir="""_$$^%W1DIR_""" class=""vw"" border=1 width=""100%"" >",!
 W "<tr>",!
 W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>"
 W "<th>"_$$^%W1DICT("CUSTOMERDETAILS")_"</th>"
 W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
 ;
 I $G(OPT)>1 D
 .W "<th>"_$$^%W1DICT("SUBMITTIME")_"</th>"
 W "</tr>",!
 ;
 S N="" F  S N=$O(^[$$^W3MAIN]W3LINKR(MSD,N)) Q:N=""  D
 .I '$$NOCODE^W3ORDLS,$$CODE^W3HZMST(N,GL)'=CODE Q
 .N JB S W3ORDLS=N,JB=N
 .I $G(OPT)=1,$$SUBMORD(N) Q
 .I $G(OPT)=2,'$$SUBMORD(N) Q
 .I $G(MEDAT),$$^%L1DC($$DAT^W3HZMST(N,$$^W3ORD(N)),3)<MEDAT Q
 .I $G(ADDAT),$$^%L1DC($$DAT^W3HZMST(N,$$^W3ORD(N)),3)>ADDAT Q
 .; --------- ORDER NUMBER ---------
 .W "<tr"
 .I $$SUBMORD(N) W " style=""background-color:white""" ;fafad2"""
 .W "><td style=""font-size:"_$$^W3FSZ(16)_""""
 .D
 ..W ">&nbsp;"_N
 .W "</td>",!
 .
 .W "<td>",! ; ----------------- CUSTOMER DETAILS --
 .D DETAILS
 .W "</td>",!
 .; ---------------------------- TOTAL -------------
 .W "<td style=""font-size:"_$S('$G(OPT):$$^W3FSZ(16),1:$$^W3FSZ(14))_"pt;font-color:red"">",!
 .N TS S TS=$$TSHL^W3HZMST(JB,GL)
 .W "&nbsp;"_$J(TS,2,2)_"&nbsp;"
 .S SPAY=SPAY+TS
 .S SHZ=SHZ+1
 .W "</td>",!
 .
 .I $G(OPT)>1 D
 ..W "<td dir=""LTR"" style=""weight:bold;font-size:"_$$^W3FSZ_""">"
 ..W "<div align=""center"">",!
 ..W "&nbsp;"_$$SUBMTIME(N)_"</div></td>",! Q
 .W "</tr>",!
 W "<tr"
 W " style=""font-size:"_$$^W3FSZ(20)_";background-color:yellow"""
 W "><td>&nbsp;"
 W $$^%W1DICT("TOTAL")
 W "</td>",!
 W "<td style=""font-color:red"">",!
 W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SHZ
 W "</td>",!
 W "<td style=""font-color:red"" colspan=""2"">",!
 W "&nbsp;"_$J(SPAY,2,2)_"&nbsp;"
 W "</td>",!
 ;;I $G(OPT) D
 .W "<td>&nbsp;</td>",!
 ;
 W "</table>",!
 ;;W "<br>",!
 ;;W "<input type=""button"" id=""printid"" value="""_$$^%W1DICT("PRINT")_""" onClick=""Print()"" >",!
 W "</div>",!
 Q
SUBMORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) Q 1
 Q 0
SUBMTIME(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) Q $P(^("S"),";")
 Q ""
DETAILS ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=""100%"" dir="""_$$^%W1DIR_""""
 W " >",!
 W "<tr>",!
 ;;W "<td width=""74%"">",!
 ;;W "<table width=""100%"">",!
 ;;W "<tr>",!
 D CODE^W3ORDHD
 D NMB^W3ORDHD
 D PELE^W3ORDHD
 ;;W "</tr>",!
 ;;W "</table>",!
 ;;W "</td>",!
 W "<td><div align=""center"">" W $$RKV^W3ORDHD("NAME") W "</div></td>",!
 W "</tr></table>",!
 W "<table width=""100%"" dir="""_$$^%W1DIR_""""
 W " ><tr>",!
 W "<td>" W $$RKV^W3ORDHD("STREET")
 W "&nbsp;"
 W $$RKV^W3ORDHD("HOME")
 W "&nbsp;" W $$^%W1DICT("FLAT"),"&nbsp;"
 W $$RKV^W3ORDHD("FLAT")
 W "&nbsp;&nbsp;"
 W $$RKV^W3ORDHD("CITY")
 W "</td>",!
 W "<td dir=""LTR"" align=""center"" >"
 W $$^%W1DICT("ORDERTO")," : "
 W "&nbsp;<span style=""font-size:"_$$^W3FSZ_""">"_$$P^W3ORDHD(5)_"</span>"
 W "&nbsp;&nbsp;<span style=""font-size:"_$$^W3FSZ_""">"_$$P^W3ORDHD(6)_"</span>"
 W "</td>",!
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q

W3ORDRCV
W3ORDRCV ; [ 31.12.17 08:13 ] [ 02.05.10 18:25 ] [ 15.04.10 21:30 ] 
 N I,A,B,COUP
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S JB=$$^%W1SsID("W3ORDRCV")
 ;
 D PUT^%W3DEB("W3ORDRCV","ARG=[%ARG")
 I $G(%ARG("PSTART"))["V1.START" D ^W3CPHONE Q
 ;
 Q
 

W3ORDRG
W3ORDRG(PRM,CODE) ; [ 17.10.18 12:40 ] [ 02.12.14 12:01 ] [ 13.10.13 13:47 ] 
 ;
 I $$OUTCOMP^W3VHOD D ^W3RGOU(PRM,CODE) Q
 ;
 ;;W "<form onsubmit=""return ValidateRG()"" action=""w3ordlk.jsp"" >",!
 N (JB,%ARG,CODE,PRM)
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W3ORDRG")
 D PUT^%W3DEB("W3ORDRG","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 D PUT^%W3DEB("W3ORDRG","MSD=MSD")
 ;
 N GL D GL^W3L
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 I $$ONLINE^W4DLVCSR D
 .I $G(CODE)["!" S CODE=$P(CODE,"!"),PRNEW=2,GL=$$GLA^W3L
 .E  I CODE'="",'$$D^W3L(CODE) S GL=$$GLA^W3L,PRNEW=2
 ;
 W "<div>",!
 ;
 W "<div align=""center"" >",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 I 'CODE W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("NEWREGISTRY")_"</td></tr>",!
 I CODE W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("UPDATEPROFILE")_"</td></tr>",!
 W "</table>",!
 W "<span style='color:red'><strong>"_$$^%W1DICT("FLDMUSTASTR")_"</strong></span>",!
 W "<br>",!
 W "<table width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 D CODE
 D PSW
 W "</tr>",!
 W "</table>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea;cellpadding:10;background-color:white;color:black"" width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D NAME,COMP W "</tr>",!
 W "<tr>",!
 D NMB
 D PELE
 W "</tr><tr>",!
 D EMAIL
 D FAX
 W "</tr><tr>",!
 D CITY
 D STREET
 W "</tr>",!
 W "<tr>",!
 D HOME
 D FLAT
 W "</tr>",!
 W "<tr>",!
 D ENTRANCE
 D FLOOR
 W "</tr>",!
 W "<tr>",!
 D COMMENT,YOMH
 W "</tr>",!
 W "<tr>",!
 D AGREE
 W "</tr>",!
 W "<tr>",!
 D ISCR,ISCH
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 W "<br>",!
 W "<div align=""center"">",!
 ;
 ;W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" style=""color:green"" onClick=""Submit('"_PRNEW_"','"_MSD_"')"" />",!
 W "<table><tr><td>",!
 D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 ;W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" style=""color:red"" onClick=""Back('"_PRNEW_"','"_MSD_"')"" />",!
 W "</td><td>",!
 D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back('"_PRNEW_"','"_MSD_"')","color:red","wh,22")
 W "</td></tr></table>",!
 W "</div>",!
 ;
 W "</div>",! ; -- KLALI
 Q
 ;
CODE N TDALIGN S TDALIGN=$S($$^%W1DIR="RTL":"right",1:"left")
 S TDWIDTH="15%"
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("USERCODE")_"<br><span style=""font-size:"_$$^W3FSZ(8)_""">"_$$^%W1DICT("TELRECOMMEND")_"</span></td>"
 W "<td>" D INPC("CODE",100,12,"LTR")
 Q
PSW S TDWIDTH="15%" S TDALIGN=$S($$^%W1DIR="RTL":"right",1:"left") D TD
 W "&nbsp;"_$$ZW_$$^%W1DICT("PASSWORD")_"<br/>"
 W "<span>"_$$^%W1DICT("NUMBERONLY")_"</span><br>"_$$^%W1DICT("RETYPEPSW")_"</td><td>"
 D INP("PSW",60,12,"LTR")
 Q
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"</td><td>&nbsp;&nbsp;" D INP("NMB",130,18,"LTR")
 Q
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td><td>&nbsp;" D INP("PELE",130,18,"LTR")
 Q
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td><td>&nbsp;&nbsp;" D INP("NAME",160,30,$$^%W1DIR)
 Q
COMP D TD W "&nbsp;"_$$^%W1DICT("COMPANYNAME")_"</td><td>&nbsp;" D INP("COMP",160,30,$$^%W1DIR)
 Q
STREET D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td><td>&nbsp;" D INP("STREET","95%",30,$$^%W1DIR)
 Q
HOME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td><td>&nbsp;&nbsp;" D INP("HOME",40,4,"LTR")
 Q
FLAT D TD W "&nbsp;"_$$^%W1DICT("FLAT")_"</td><td>&nbsp;" D INP("FLAT",40,5,"LTR")
 Q
ENTRANCE D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE")_"</td><td>&nbsp;&nbsp;" D INP("ENTRANCE",40,5,$$^%W1DIR)
 Q
FLOOR D TD W "&nbsp;"_$$ZW_$$^%W1DICT("FLOOR")_"</td><td>&nbsp;" D INP("FLOOR",30,3,$$^%W1DIR)
 Q
CITY D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"</td><td>&nbsp;&nbsp;"
 I $D(@$$^W4GL("P1IR"))>9 D  Q
 .N NOTAKEAWAY S NOTAKEAWAY=""
 .D INPCT^W3ORDDET("CITY",130,20,$$^%W1DIR,CODE_$S(PRNEW=1:"R",1:""))
 D INP("CITY",130,20,$$^%W1DIR)
 Q
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"</td><td>&nbsp;&nbsp;" D INP("COMMENT",300,40,$$^%W1DIR)
 Q
AGREE S TDSPAN=4
 D TD
 W "&nbsp;"_$$^%W1DICT("AGREERCVINF")_"&nbsp;&nbsp;"
 N AGREE S AGREE="" I $$AGREE^W3L(CODE) S AGREE=" checked=""checked"" "
 W "<input type=""checkbox"" id=""AGREE"" name=""AGREE"" "_AGREE
 I $G(PRM)'="IN" W " disable=""disable"" "
 W """></td>"
 Q
EMAIL D TD W "&nbsp;"_$$ZW_$$^%W1DICT("EMAIL")_"</td><td>&nbsp;&nbsp;" D INP("EMAIL","95%",60,"LTR")
 Q
FAX D TD W "&nbsp;"_$$^%W1DICT("FAX")_"</td><td>&nbsp;" D INP("FAX",130,18,"LTR")
 Q
YOMH D TD
 W "&nbsp;"_$$^%W1DICT("BIRTHDAY")_"</td>"
 W "<td dir=""LTR"""
 I $$^%W1DIR="RTL" W " align=""right"""
 W " >"
 S %W1DAT("NODAY")=""
 S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 D INP("YOMH",8,8,"D")
 Q
ISCR ;
 D TD I '$$RKV("ISCR") W "&nbsp;</td><td>&nbsp;</td>" Q
 W "&nbsp;"_$$^%W1DICT("ISCR")_"</td><td>&nbsp;&nbsp;"
 N MZV S MZV=$S($$RKV("ISCR"):$$^%W1DICT("YES"),1:$$^%W1DICT("NO"))
 ;;W "<span style=""color:white;background-color:red"">&nbsp;"_MZV_"&nbsp;</span>",!
 W "<span class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;"_MZV_"&nbsp;</span>",!
 Q
ISCH ;
 D TD I '$$RKV("ISCH") W "&nbsp;</td><td>&nbsp;</td>" Q
 W "&nbsp;"_$$^%W1DICT("ISCH")_"</td><td>&nbsp;&nbsp;"
 N MZV S MZV=$S($$RKV("ISCH"):$$^%W1DICT("YES"),1:$$^%W1DICT("NO"))
 ;W "<span style=""color:white;background-color:red"">&nbsp;"_MZV_"&nbsp;</span>",!
 W "<span class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;"_MZV_"&nbsp;</span>",!
 Q
ZW(STAM) Q "<span style=""color:red"">*</span>"
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align=""left"" "
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type="""_$S(RKV="PSW":"password",1:"text")_""" maxlength="""_SIZE_""""
 .I RKV'="PSW" W " style=""width:"_WD
 .I RKV="PSW" W " style=""width:120"
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .I RKV'="PSW"!'$L(RKVL) D
 ..I RKV="HOME",$G(HOME) W " value="""_HOME_"""" Q
 ..
 ..I RKV="STREET" D
 ...N VL S VL=$$RKV(RKV)
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 ..
 ..;;S RKVL=$$CLHTML^%L1FRM(RKVL)
 ..W " value="""_RKVL_""""
 .
 .I RKV="PSW" D
 ..W " value="""_$$PSW^W3L(CODE)_""""
 ..W " onKeyUp=""NumberOnly(event,'PSW')"""
 ..W " onClick=""this.select()"""
 ..W " /><br /><br />",!
 ..
 ..W "<input type=""password"" maxlength="""_SIZE_""""
 ..W " style=""width:120"
 ..I $$^%W1DIR="RTL" W ";text-align:right"
 ..W """"
 ..W " value="""_RKVL_""""
 ..W " dir="""_DIR_""" name=""PSW"" id=""PSW1"""
 ..W " onKeyUp=""NumberOnly(event,'PSW1')"""
 ..W " onClick=""this.select()"""
 .
 .I RKV="EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
 .
 .W " />",!
 ;
 I $G(PRM)="IN",DIR="D" D
 .I '$G(CODE) D ^%W1DAT("YOMH","-","") Q
 .D ^%W1DAT("YOMH",$$RKV(RKV),"") Q
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 W "</td>",!
 Q
INPC(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW S CODE=$TR(CODE,"-","")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_""""
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onBlur=""TestCust('CODE');CheckCode(this)"""
 .W " />"
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 W "</td>",!
 Q
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D^W3L(CODE) Q $$P(FLD)
 ;
 I $G(JB),$D(@$$^W3ORD(JB)@(JB))#2,PRNEW D  I $G(A)'="" Q A
 .S A=$$GET^W3HZMST(JB,FLD,$$^W3ORD)
 .I $$GET^W3HZMST(JB,"CITY",$$^W3ORD)="TAKEAWAY",FLD="STREET"!(FLD="HOME")!(FLD="FLAT")!(FLD="FLOOR")!(FLD="ENTRANCE") S A=""
 .I A="" S A="&nbsp;" Q
 .S A=$$H2U^%L1FRM(A) Q
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I $G(PRNEW)=1 Q ""
 I '$$D^W3L(CODE),$G(PRNEW)'=2 Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NMB" Q $$TELB^W3L(CODE,GL)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH^W3L(CODE,GL))
 I FLD="PSW" Q $$PSW^W3L(CODE,GL)
 I FLD="PELE" Q $$PELE^W3L(CODE,GL)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV^W3L(CODE,GL))
 I FLD="HOME" Q $$BAIT^W3L(CODE,GL)
 I FLD="FLAT" Q $$DIRA^W3L(CODE,GL)
 I FLD="ENTRANCE" Q $$H2U^%L1FRM($$CNISA^W3L(CODE,GL))
 I FLD="FLOOR" Q $$H2U^%L1FRM($$KOMA^W3L(CODE,GL))
 I FLD="CITY" Q $$H2U^%L1FRM($$IR^W3L(CODE,GL))
 I FLD="COMMENT" Q $$H2U^%L1FRM($$CMNT^W3L(CODE,GL))
 I FLD="EMAIL" Q $$EMAIL^W3L(CODE,GL)
 I FLD="FAX" Q $$FAX^W3L(CODE,GL)
 I FLD="YOMH" Q $$JOMH^W3L(CODE,GL)
 I FLD="ISCR" Q $$ISCR^W3L(CODE,GL)
 I FLD="ISCH" Q $$ISCH^W3L(CODE,GL)
 I FLD="COMP" Q $$H2U^%L1FRM($$COMP^W3L(CODE,GL))
 I FLD="AGREE" Q $$AGREE^W3L(CODE,GL)
 Q ""
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D NMB
 D PELE
 D NAME
 W "</tr><tr>",!
 D STREET
 D HOME
 D FLAT
 D ENTRANCE
 D FLOOR
 W "</tr>",!
 W "</table>",!
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
 D CITY
 D COMMENT,YOMH
 D EMAIL
 W "</tr>",!
 W "</table>",!
 w "</div>",!
 Q
 

W3ORDTO
W3ORDTO ; [ 16.09.17 11:41 ] [ 
 N (JB,%ARG)
 S GLTO="^[$$^W3MAIN]W3ORDTO"
 S GLORD="^[$$^W3MAIN]W3ORD"
 S GLOLD="^[$$^W3MAIN]W3ORDOLD"
 ;
 S N="" F  S N=$O(@GLTO@(N)) Q:N=""  D
 .K @GLOLD@(N)
 .M @GLOLD@(N)=@GLORD@(N)
 .S @GLOLD@(N,"ARX")=$H
 .K @GLORD@(N)
 .M @GLORD@(N)=@GLTO@(N)
 .K @GLTO@(N)
 Q
 

W3ORDVW
W3ORDVW(PC) ; [ 17.06.26 10:52 ] [ 04.05.26 13:50 ] [ 18.01.26 18:30 ] 
 ; PC = 1 - SHOW FROM CUSTOMER ORDER
 ; PC = 1.5 - SHOW FROM CUSTOMER ORDER (COMPRESS VIEW)
 ; PC = 2 - SHOW FROM CUSTOMER LIST ORDER ( FOR COPY ORDERS )
 ; PC = 3 - SHOW FROM RECEIVE LIST ORDER
 ;             CODE - REGISTRY CUSTOMER,
 ;             WITHOUT CODE - RESTAURANT
 ;             CODE="http://..." NEW CUSTOMER
 ;----------------------------------------------------------------------------
 N (%ARG,JB,PC,W3ORDLS,W3FAXHTM,%REM,COMPRVIEW,COMPRDEL)
 ;
 ;;S ^AA("W3ORDVW","PC")=PC
 K @$$^W3TMPORD@(JB,"BACK")
 S JB0=JB
 ;
 D INIT
 ;
 I $G(W3ORDLS) N JB S JB=+W3ORDLS
 ;
 ;;W "W3ORDLS="_W3ORDLS_"  JB="_JB_" MD="_MSD,!
 ;
 D W("<div align=""center"" >")
 ;
 I PC=1!(PC=1.5),'$$CLOSE^W3HZMST(JB),'$G(W3ORDLS),'$G(W3FAXHTM),'$$MKR^W3HZMST(JB) D
 .I $$^W3HZMH(JB),$$ONLINE^W4DLVCSR Q
 .I $$ONLINE^W4DLVCSR S $P(@$$^W3TMPORD@(JB),"~",38)=$$AHUZ^W3HZTFR
 .
 .N IND S IND=$$CITY^W3HZMST(JB)_":"_$$STREET^W3HZMST(JB)_":"_$$HOME^W3HZMST(JB)
 .S $P(@$$^W3TMPORD@(JB),"~",8)=$J($$AHUZ^W3HZMST(JB)*$$TOTORD("D")*.01,2,2)
 .S $P(@$$^W3TMPORD@(JB),"~",11)=$$TSHL^W3HZMST(JB)
 .S $P(@$$^W3TMPORD@(JB),"~",9)=$$DMSH^W3HZMST(JB)
 ;
 D HDMSD(MSD)
 ;
 I '$G(W3FAXHTM) D
 .N STYLEHD S STYLEHD=""
 .I $$COLOR^W3CSS="RW" S STYLEHD=" style=""background-color:white;color:#cc0000"" "
 .
 .D W("<table id=""TblHeadVw"" name=""TblHeadVw"" class=""hdvw"" "_STYLEHD_" width="""_$S(PC:"100%",1:"70%")_""" border=""0"">")
 .N ORDERHD
 .S ORDERHD=$$^%W1DICT("ORDER")_" "_$$NOM
 .I '$D(@$$^W3ORD(+$$HZ)@(+$$HZ)) D
 ..I '$$^W3HZMH(+$$HZ) S ORDERHD=$$^%W1DICT("ORDERINPROCESS") Q
 ..S ORDERHD=$$^%W1DICT("PRICEOFFER")
 .D W("<tr><td dir="""_$$^%W1DIR_""" id=""orderhd"">"_ORDERHD_"</td></tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 I $G(W3FAXHTM) D
 .N HZ S HZ=$$NOM
 .I $G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) S HZ=^("HZRSD")
 .D W("<br><span style=""font-size:"_$$^W3FSZ(24)_""">"_$$^%W1DICT("ORDER")_" "_HZ_"</span>")
 ;
 W !
 ;
 D
 .N W3ORDHD
 .S W3ORDHD("SPANSTYLE")="color:"_$$FGFLD^W3CSS($$COLOR^W3CSS)_";font-weight:"_$$WGFLD^W3CSS($$COLOR^W3CSS)
 .D VW^W3ORDHD
 ;
 D W("<br>")
 ;
 S HZMH=$$^W3HZMH(+$$HZ)
 ;
 I PC<2!$$OUTCA^W3PRM D
 .I '$G(W3FAXHTM) D W("<div align=""center"">")
 .D W("<table name=""TblVw"" dir="""_$$^%W1DIR_""" width=""100%"" border=""0"" style=""font-weight:"_$S($$WGFLD^W3CSS($$COLOR^W3CSS):"bold",1:"normal")_""">")
 .D W(" <tr>")
 .
 .I '$G(W3FAXHTM) D
   ..D W("  <td>"_$$SP_$$^%W1DICT($S($$NOREST^W3PRM:"COMMENTS2ORDNOREST",1:"COMMENT2ORDER"))_": <input type=""text"" value="""_$$H2U^%L1FRM($$CMHD^W3HZMST(+$$HZ))_"""")
   ..D W(" id=""CMHD"" name=""CMHD"" class=""vwcmnt"" size=""56"" onBlur=""SetHr()"">")
   ..D W("  </td>")
 .
 .I $G(W3FAXHTM) D
   ..I $L($$CMHD^W3HZMST(+$$HZ))=0 Q
   ..D W("  <td style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("COMMENT")_": "_$$H2U^%L1FRM($$CMHD^W3HZMST(+$$HZ)))
   ..D W(" </td></tr><tr>")
 .
 .I $G(HZMH),'$G(W3FAXHTM) D  Q
 ..D W("   <td>")
 ..D W("    "_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S(PC=1.5:"checked=""checked""",1:"")_" />")
 ..D W("   </td>")
 ..D W(" </tr>")
 ..D W("</table>")
 .
 .I $G(W3FAXHTM)!($G(%ARG("RCV"))=9) D
 ..N STS S STS="<td style=""font-size:"_$$^W3FSZ(20)_""">"
 ..S STS=STS_$$^%W1DICT("KINDOFPAYMENT")_" : "_$$SHOWTS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=3 D W(STS_"</td></tr>") S STS="<tr><td>"_$$CREDDETAILS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=5 S STS=STS_$$CIBDETAILS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=7 S STS=STS_$$TNBDETAILS($$HZ)
 ..S STS=STS_"</td>"
 ..D W(STS)
 .
 .I $G(HZMH) D  Q
 ..D W("</tr>")
 ..D W("</table>")
 .
 .I $G(W3FAXHTM) D
 ..D W("</tr>")
 ..D W("</table>")
 .
 .I '$G(W3FAXHTM) D PAYM
 .D W("<br>")
 ;
 I PC=2!(PC=3) D
 .D W("<table name=""TblVw"" dir="""_$$^%W1DIR_""" width=""100%"" border=0>")
 .D W(" <tr>")
 .I $L($$CMHD^W3HZMST(JB))=0 D W("<td>&nbsp;</td>")
 .I $L($$CMHD^W3HZMST(JB)) D W("<td style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("COMMENT")_": <span>"_$$H2U^%L1FRM($$CMHD^W3HZMST(JB))_"</span></td>")
 .N STS S STS="<td style=""font-size:"_$$^W3FSZ(16)_""">"
 .I $$OUTCA^W3PRM Q
 .I '$G(HZMH) S STS=STS_$$^%W1DICT("KINDOFPAYMENT")_" : <span>"_$$SHOWTS(JB)_"</span>"
 .I $G(HZMH) S STS=STS_" <span>"_$$SHOWTS(JB)_"</span>"
 .I $$CODTS^W3HZMST(JB)=3,MSD=10060 S STS=STS_$$CREDDETAILS($$HZ)
 .I $$CODTS^W3HZMST(JB)=5 S STS=STS_$$CIBDETAILS($$HZ)
 .I $$CODTS^W3HZMST(JB)=7 S STS=STS_$$TNBDETAILS($$HZ)
 .
 .S STS=STS_"</td></tr></table>"
 .D W(STS)
 ;
 ;
 I $$HKBEEF^W3PRM D
 .D W("<table width="""_$S(PC:"100%",1:"70%")_""" border=""0"" dir="""_$$^%W1DIR_""" >")
 .D W(" <tr><td style=""text-align:center;color:white;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">"_$$^%W1DICT("NOTCHARGEDNOW")_"</td></tr>")
 .D W("</table>")
 ;
 ;----------------------- BASIC TABLE -------------------------
 D W("<br />")
 ;
 N PRTR S PRTR=0
 ;;S PC=1 ; --- 09/11/25; --> COMMENT
 D BDORD(JB)
 ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 I PRTR D TDHR
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W(" <td>&nbsp;</td>")
 N AHUZ S AHUZ=$$AHUZ^W3HZTFR
 I $G(W3ORDLS)!$$DLVWEB S AHUZ=$$AHUZ^W3HZMST(JB)
 ;
 D W(" <td><span style='font-size:"_$$^W3FSZ_";color:"_$$FGDLVPAY^W3CSS_"'>&nbsp;"_$$^%W1DICT("DLVPAY")_"</span></td>")
 ;
 D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 I $$DLVWEB D W("<td>&nbsp;</td>")
 D W("<td align=""center""><span style=""color:"_$$FGDLVPAY^W3CSS_""">"_$J($$DMSHMSD^W3HZMST(JB),2,2)_"</span></td>")
  D LASTTD
 D W("</tr>")
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W(" <td>&nbsp;</td>")
 ;
 N DISCAH S DISCAH=$J($$TOTORD("D")*AHUZ*.01,2,2)
 N HNH S HNH=$$HNH^W3HZMST(JB)
 ;
 ;;I AHUZ,'$G(W3ORDLS)!'$$HNH^W3HZMST(JB) D
 I AHUZ,$J(HNH,1,1)=$J(DISCAH,1,1) D
 .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISCOUNT",+AHUZ)_"</span></td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .I $$DLVWEB D W(" <td>&nbsp;</td>")
 .D W("<td style=""color:red;text-align:center"" dir=""LTR"">"_$J(-DISCAH,4,2)_"</td>")
 ;
 ;;I 'AHUZ!$G(W3ORDLS),$$HNH^W3HZMST(JB) D
 I HNH,$J(HNH,1,1)'=$J(DISCAH,1,1) D
 .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISC")_"</span></td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .I $$DLVWEB D W(" <td>&nbsp;</td>")
 .D W("<td style=""color:red;text-align:center"" dir=""LTR"">"_$J($$HNH^W3HZMST(JB),2,2)_"</td>")
 ;
 I 'AHUZ,'$$HNH^W3HZMST(JB) D
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .I $$DLVWEB D W(" <td>&nbsp;</td>")
 ;
 D LASTTD
 D W("</tr>")
 ;
 I PRTR D TDHR
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W("<td>&nbsp;</td>")
 ;
 I PC<2,'$G(W3FAXHTM) D BUTTONSPC1("hdvw") ; -- FROM ORDER
 ;
 I PC=2 D BUTTONSPC2("hdvw") ; --- CUSTOMER LIST ORDER FOR COPY - From w3ordls.jsp
 ;
 I PC=3 D BUTTONSPC3("hdvw") ; -- RECEIVE LIST ORDER OR STATISTIC CUSTOMER LIST ORDER
 ;
 I $G(W3FAXHTM) D
 .D W("<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>")
 ;
 I $$DLVWEB D W("<td>&nbsp;</td>")
 ;
 D W("<td style=""font-size:"_$$^W3FSZ_";text-align:center;color:"_$$FGTOT^W3CSS_";font-weight:bold"">"_$$TOT_"</td>")
 ;
 D LASTTD
 D W("</tr>")
 D W("</table>")
 ;;D W("</div>")
 D W("<br>")
 ;
 I $$W4PRM("PIZUIM"),$D(@$$^W3ORD@($$NOM)) D
 .N NOM S NOM=$$NOM
 .N PZM S PZM=$$PIZUIM(NOM)
 .D W("<button class=""hdvw1"" dir="""_$$^%W1DIR_""" ")
 .I PZM D W(" style=""color:red;font-weight:bold"" ")
 .D W(" onClick=""Pizuim('"_NOM_"')"">")
 .D 
 . .I 'PZM D W($$^%W1DICT("SIGNCOMPENSATION")) Q
 . .D W($$^%W1DICT("PIZUIM!")) Q
 .D W("</button>")
 ;
 N COLST S COLST=$O(@$$^W3TMPORD@(JB,9999),-1)
 F I=1:1:5-(COLST>1) D W("<br>")
 ;
 I PC=1.5,'$$DLVWEB D
 .W "<script>",!
 .I '$$^W3HZMH(+$$HZ) W "Msg(""PAYANDSUBMIT"","""",""font-size:"_$$^W3FSZ(18)_";background-color:yellow;color:black;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""")",!
 .I $$^W3HZMH(+$$HZ) W "Msg(""PRICEOFFERSUBMIT"","""",""font-size:"_$$^W3FSZ(18)_";background-color:yellow;color:black;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""")",!
 .W "</script>",!
 ;
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3reklama"_MSD_".jpg")>-1 D
 .W "<div align=""center"">",!
 . W "<img src="""_$$WEB^W3MAIN_"w3reklama"_MSD_".jpg"" >",!
 .W "</div>",!
 ;
 I $G(JB0),$G(JB),+$G(JB0)'=+$G(JB) D
 .K ^[$$^W3MAIN]TMPORD(JB0)
 .M ^[$$^W3MAIN]TMPORD(JB0)=^[$$^W3MAIN]TMPORD(JB)
 .K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
 ;
INIT ;
 I $G(%ARG("RCV"))=9 S W3FAXHTM=1,PC=1 ; ***
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W3ORDVW")
 ;
 D ^%W1ARG
 ;
 I '$G(W3ORDLS) S MSD=$$GET^%W1PRM("MSD")
 ;
 D PUT^%W3DEB("W3ORDVW","PC=PC & W3ORDLS=W3ORDLS & ARG=[%ARG")
 ;
 S CODE=$$GET^%W1PRM("CODE")
 I CODE["!" S CODE=$P(CODE,"!")
 I 'CODE S CODE=""
 ;
 I $G(W3ORDLS) N JB S JB=+W3ORDLS D  D PUT^%W1PRM("ORD",+W3ORDLS)
 .S MSD=$G(@$$^W3ORD(+W3ORDLS)@(+W3ORDLS,"MSD"))
 ;
 D PUT^%W3DEB("W3ORDVW","MSD=MSD")
 I 'MSD Q
 D GL
 S (MEDAT,ADDAT,ORD)=""
 ;
 I $G(W3ORDLS) D
 .S MEDAT=$P(W3ORDLS,"~",2)
 .S ADDAT=$P(W3ORDLS,"~",3)
 .S CODE=$P(W3ORDLS,"~",4)
 .S ORD=$P(W3ORDLS,"~",5)
 .S W3ORDLS=+W3ORDLS
 .K @$$^W3TMPORD@(JB)
 .M @$$^W3TMPORD@(JB)=@$$^W3ORD(W3ORDLS)@(W3ORDLS)
 .S @$$^W3TMPORD@(JB,"BACK")=2
 ;
 D PUT^%W3DEB("W3ORDVW","CODE=CODE")
 Q
 ;
 ;
DLVWEB(STAM) ;
 Q $$DLVWEB^W4DLVCSR
 ;
 ;
PAYM ;
 W "<a name=""PAY""></a>",!
 D W("  <td width="""_$S($$PICUL^W3PRM!$$DLVWEB:49,1:40)_"%"" id=""paymcomment"" name=""paymcomment"" colspan=5 style=""font-size:"_$$^W3FSZ(12)_";text-align:center;color:"_$$FGSUGT^W3CSS_""">"_$$^%W1DICT("CHOICEPAYMENT"))
 D W(" <br><span style=""color:"_$$FGENCR^W3CSS_";font-size:"_$$^W3FSZ(11)_";"_$$FONTFM^W3CSS_""">"_$$^%W1DICT("ALLPAYDATAENCRYPTED")_"</span>")
 D W("  </td>")
 ;
 I +$$OUTCA^W3PRM=0 D
 .D W("  <td id=""piculid"" width=""8%"" align=""center"" style=""font-size:"_$$^W3FSZ(11)_""">")
 .D W(" <input type=""button"" value="""_$$^%W1DICT("PICUL")_""" class=""btn"" style=""font-size:"_$$^W3FSZ(14)_""" id=""picul"" onClick=""Pay('"_JB_"','"_$$GETP^%W1PRM("CODE")_"')""/>")
 .D W("  </td>")
 D W("</tr>")
 ;
 D W("<tr>")
 D W("   <td>")
 ;;D W("    "_$$SP_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S(PC=1.5:"checked=""checked""",1:"")_" />")
 D W("    "_$$SP_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S($G(COMPRVIEW):"checked=""checked""",1:"")_" />")
 D W("   </td>")
 ;
 I $$PICUL(JB),+$$OUTCA^W3PRM=0 G EPAYM
 ;
 I $$NOCRCARD=1 D W("   <td width=""10%"">&nbsp;</td>")
 D W("   <td width=""10%"" name=""tdcash"" id=""cashid"">")
 I $$NOCASH D W(" <p style=""visibility:hidden"">")
 D W("     "_$$^%W1DICT("CASH")_"<input type=""radio"" class=""radiovw"" id=""cash"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=1:" checked=""checked""",1:"")_" onClick=""SubmPay()""/>")
 I $$NOCASH D W(" </p>")
 D W("   </td>")
 ;
 D W("   <td width="""_$S($$NOCHECK:"1%",1:"10%")_""" id=""checkid"">&nbsp;")
 I $$NOCHECK D W(" <p style=""visibility:hidden"">")
 D W("     "_$$^%W1DICT("CHECK")_"<input type=""radio"" class=""radiovw"" id=""check"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=2:" checked=""checked""",1:"")_" onClick=""SubmPay()""")
 D W("  />")
 I $$NOCHECK D W(" </p>")
 D W("   </td>")
 ;
 I +$$OUTCA^W3PRM=0 D 
 .D W("   <td id=""crcardid"" width="""_$S($$NOCRCARD=1:"1%",1:"15%")_""">")
 .I $$NOCRCARD'=1 D W(" "_$$^%W1DICT("CRCARD")_"<input type=""radio"" class=""radiovw"" id=""crcard"" name=""payment"" "_$S($$CODTS^W3HZMST(JB)=3&'$$GET^%W1PRM("REST"):" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .D W("   </td>")
 ;
 I $$OUTCA^W3PRM D
 .D W("  <td id=""payments"" align=""center"" style=""font-size:"_$$^W3FSZ(11)_""">")
 . ;;D W($$^%W1DICT("PAYMENTS")_" <input type=""radio"" class=""radiovw"" id=""picul"" name=""payment"" onClick=""Pay('"_JB_"','"_$$GETP^%W1PRM("CODE")_"')""/>")
 . N PAYM S PAYM="PAYMENTS"
 . I $D(@$$^W3ORD@(JB)) S PAYM="SHOWPAYMENTS"
 . D W("<button style=""font-size:"_$$^W3FSZ_""" onClick=""Pay('"_JB_"','"_$$GETP^%W1PRM("CODE")_"')"">"_$$^%W1DICT(PAYM)_" </button>")
 .D W("  </td>")
 ; 
 I $$CIBUS D
 .D W("   <td align=""center"" id=""cibusid"" >")
 .D W("<img src=""w3sfsodexo.jpg"" width=""60px"" /><input type=""radio"" class=""radiovw"" id=""cibus"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=5:" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .D W("   </td>")
 ;
 I $$TENBIS D
 .D W("   <td align=""center"" id=""tenbisid"" >")
 .D W($$^%W1DICT("TENBIS")_" <input type=""radio"" class=""radiovw"" id=""tenbis"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=7:" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .D W("   </td>")
 ;
 I '$$NOASR^W3PRM D
 .D W("   <td width=""12%"" style=""text-align:center"" id=""creditid"">")
 .I $$ISCR^W3L(CODE)!$$ISCR^W3L(CODE,$$GLA^W3L),'$$MKRZAR D
 ..D W("     "_$$^%W1DICT("CREDIT")_"<input type=""radio"" class=""radiovw"" id=""credit"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=4:" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .I '$$ISCR^W3L(CODE),'$$ISCR^W3L(CODE,$$GLA^W3L),'$$MKRZAR D W("&nbsp;")
 .D W("</td>")
 ;
EPAYM ;
 D W("</tr>")
 D W("</table>")
 D W("</div>")
 ;
 I $$CIBUS D
 .D W("<div id=""divcib"" style=""position:absolute;left:5px;visibility:hidden"">")
 .D W("<table dir=""RTL"" align=""left""><tr>")
 .D W("<td>"_$$^%W1DICT("COMPANYNUMBER")_" : <input type=""text"" id=""cibcompany"" size=""5"" maxlength=""5"" />&nbsp;</td><td>&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : <input type=""text"" id=""cibcard"" /> </td>")
 .D W("</tr></table>")
 .D W("</div>")
 
 I $$TENBIS D
 .D W("<div id=""divtnb"" style=""position:absolute;left:5px;visibility:hidden"">")
 .D W("<table dir=""RTL"" align=""left""><tr>")
 .;;D W("<td>"_$$^%W1DICT("COMPANYNUMBER")_" : <input type=""text"" id=""tnbcompany"" size=""5"" maxlength=""5"" />&nbsp;</td><td>&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : <input type=""text"" id=""tnbcard"" /> </td>")
 .D W("<td>&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : <input type=""text"" id=""tnbcard"" /> </td>")
 .D W("</tr></table>")
 .D W("</div>")
 ;
 D W("<div id=""divca"" style=""left:"_$S($$^%W1DIR="RTL":"5px",1:"40%")_";visibility:hidden"">")
 D W("<table dir="""_$$^%W1DIR_""" ><tr>")
 D W(" <td>"_$$^%W1DICT("CREDITCARDNUMBER")_" : <input type=""text"" id=""caid"" size=""19"" maxlength=""19"" />&nbsp;</td>")
 D W(" <td>&nbsp;"_$$^%W1DICT("UNTILMMYY")_" : ")
 D SELMMYY D W("</td>")
 D W(" <td>&nbsp;CVV : <input type=""text"" id=""cacvv"" size=""2"" maxlength=""4"" />&nbsp;</td>")
 D W(" <td>&nbsp;"_$$^%W1DICT("IDNUMBER")_" : <input type=""text"" id=""catz"" size=""9"" maxlength=""9"" />&nbsp;</td>")
 D W("</tr></table>")
 D W("</div>")
 Q
 ;
 ;
BUTTONSPC1(CLASS) ;
 D W("<td>&nbsp;</td>")
 D W("<td width=""10%"">")
 D W(" <input type=""button"" name=""update"" id=""updid"" class="""_CLASS_""" value="""_$$^%W1DICT("BACK")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Back2Ord("_JB0_",'TblOrdVw')"" />")
 D W("</td>")
 D W("<td width=""10%"">")
 I '$$PICUL(JB)!$D(@$$^W3ORD(+$$HZ)@(+$$HZ)) D
 .D W(" <input type=""button"" name=""subm"" id=""submid"" class="""_CLASS_"""")
 . D W(" value="""_$$^%W1DICT("SUBMIT")_""" style=""width:100%;font-size:"_$$^W3FSZ_"""")
 . D W($$CLICKPC1_" />")
 D W("</td>")
 Q
 ;
CLICKPC1(STAM) ;
 N GL D GL
 Q " onClick=""SaveOrd("_JB0_",'TblOrdVw','"_$S($D(@GL@(JB,"NOCODE")):"",1:$G(CODE))_"')"""
 ;
BUTTONSPC2(CLASS) ;
 D W("<td>&nbsp;</td><td><input type=""button"" name=""copy"" id=""cpid"" class="""_CLASS_""" value="""_$$^%W1DICT("COPY2ORD")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Copy2Ord("_JB0_",'TblOrdVw')"" /></td>")
 D W("<td>")
 I $G(ADDAT) D
 .D W("<input type=""button"" name=""back"" id=""backid"" class="""_CLASS_""" value="""_$$^%W1DICT("BACK")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" "_$$CLICKPC2_" />")
 D W("</td>")
 Q
 ;
CLICKPC2(STAM) ;
 Q " onClick=""Back2OrdList('"_$G(JB0)_"','"_$G(CODE)_"','"_PC_"')"""
 ;
 ;
BUTTONSPC3(CLASS) ;
 I '$$^W3HZMH($$HZ) D
 .I $$DLVWEB,$G(%ARG("DLVFND"))=2 D  Q
 ..D W("<td><input type=""button"" name=""copy"" id=""copyid"" ")
 ..D W("class="""_CLASS_""" value="""_$$^%W1DICT("COPY2NEWORDER")_""" ")
 ..D W("style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Copy('"_JB_"')"" ")
 ..D W("/></td>")
 .D W("<td>&nbsp;</td>")
 ;
 I $$^W3HZMH($$HZ) D
 .N ST S ST="<td "_$$INV^%W1ALIGN_" >"
 .
 .I $$DLVWEB D
 ..S ST=ST_"<input name=""print"" id=""sendid"" class="""_CLASS_""""
 ..S ST=ST_" value="""_$$^%W1DICT("MOVE")_""""
 ..S ST=ST_" style=""cursor:pointer;width:40%;font-size:"_$$^W3FSZ_""""
 ..S ST=ST_" onClick=""SendPrcOfr('"_$$HZ_"')"" />"
 .
 .S ST=ST_"</td>"
 .D W(ST)
 ;
 ;
 D W("<td "_$$ALIGN_">")
  D W(" <input type=""button"" name=""print"" id=""printid"" class="""_CLASS_""" value="""_$$^%W1DICT("PRINT")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Print()"" onBeforePrint=""BeforePrint()"" />")
 D W("</td>")
 ;
 I '$G(ADDAT) D W("<td>&nbsp;</td>") Q
 ;
 D W("<td "_$$ALIGN_" >")
 D W(" <input type=""button"" name=""back"" id=""backid"" class="""_CLASS_"""")
 D W("  value="""_$$^%W1DICT("BACK")_"""")
 D W("  style=""width:100%;font-size:"_$$^W3FSZ_";""")
 D W($$CLICKPC3_" />")
 D W("</td>")
 Q
 ;
 ;
CLICKPC3(STAM) ;
 Q " onClick=""Back2OrdList('"_$G(JB0)_"','"_$G(CODE)_"','"_(PC_"~"_$G(MEDAT)_"~"_$G(ADDAT))_"~"_$G(ORD)_"')"" "
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(W3ORDLS) N JB S JB=+W3ORDLS
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CD(A) ;
 N NM
 S NM=$P(A,"~",2)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 Q MH
 ;
QN(A) ;
 N QN
 S QN=$P(A,"~",5)
 I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNR(A) ;
 Q $$QNMH^W3HZMST(A)
 ;
QNPIZZA(A) ;
 Q $$QNMH^W3HZMST(A)
 ;
 N QN S QN=$$QN(A) I QN'["+" Q "&nbsp;"
 N ST S ST=""
 N J F J=1:1:4 D
 .S ST=ST_$S($E(QN,J)="+":$E(QN,J),1:"<span style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;-</span>")_"&nbsp;"
 Q ST
 ;
SUM(A) Q $J($$QNR(A)*$$MH(A),2,2)
 ;
TOT(STAM) ;
 N AHUZ
 ;;N AHUZ S AHUZ=$$AHUZ^W3HZTFR
 ;;I $G(W3ORDLS) S AHUZ=$$AHUZ^W3HZMST(JB)
 S AHUZ=$$AHUZ^W3HZMST(JB)
 N TOT S TOT=$$TOTORD
 N TOTD S TOTD=$$TOTORD("D")
 S DMS=$$DMSHMSD^W3HZMST(JB)
 N HN S HN=$$HNH^W3HZMST(JB)
 ;;I AHUZ,'$G(W3ORDLS) S HN=TOTD*AHUZ*.01
 S TOT=TOT+DMS-HN
 Q $J(TOT,2,2)
 ;
TOTORD(PRM) ;
 Q $$TOTORD^W3HZMST(JB,$G(PRM))
 ;
FIRSTNAME(STAM) ;
 N NM,FN S NM=$$SPA^%L1FRM($$NAME^W3HZMST(JB))
 I $$^%W1DIR="RTL" S FN=$$CLWEB^%L1FRM($P(NM," ",2))
 I $$^%W1DIR="LTR" S FN=$$CLWEB^%L1FRM($P(NM," "))
 I FN="" S FN="NONAME"
 Q FN
 ;
LASTNAME(STAM) ;
 N NM,FN S NM=$$SPA^%L1FRM($$NAME^W3HZMST(JB))
 I $$^%W1DIR="RTL" S FN=$$CLWEB^%L1FRM($P(NM," ",1))
 I $$^%W1DIR="LTR" S FN=$$CLWEB^%L1FRM($P(NM," ",2))
 I FN="" S FN="NONAME"
 Q FN
 ;
NMTD(SH) ;
 Q "QN"_SH
NMTDI(SH) ;
 Q "QNID"_SH
 ;
SHOWTS(HZ,GL) ;
 I '$D(GL) D GL
 N JB S JB=HZ
 N MKBN S MKBN=$G(@$$^W3ORD(HZ)@(HZ,"MKBN"))
 ;;I $$^W3HZMH(HZ) Q $$^%W1DICT("HZMH")_" "_$G(@$$^W3ORD(HZ)@(HZ,"HZRSD"))_" "_$$^%W1DICT("FROM")_" "_$$H2U^%L1FRM($P(MKBN,";"))
 ;
 N CODTS S CODTS=$$CODTS^W3HZMST(HZ,GL)
 ;
 Q $$^W3SHOWTS(CODTS)
 ;
DLVTERM(STAM) ; -- SAVE PHONE ORDER
 N DLV
 S DLV=$$^%W1SsID("DLVWEB")
 D SETMKR^W3MENUBT
 S MKBL=$$GETP^%W1PRM("MLZR")
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I 'MKBL,$G(^[$$^W3MAIN]TMPMKBL(MYDVN)) S MKBL=^(MYDVN)
 ;
 I MKBL D
 .D PUT^W3HZMST(JB,"MKBL",MKBL)
 ;
 N GL D GL
 I '$D(@GL@(JB,"HZRSD")) S @GL@(JB,"HZRSD")=""
 D TERM
 Q DLV
 ;
 ;
TERM ;
 N (JB,JB0,%ARG,%REM,DLV,MEMSHAK,OK)
 N ORD S ORD=JB
 I $G(DLV) S ORD=$P(DLV,";")
 D PUT^%W1PRM("ORD",ORD)
 ;
 D PUT(JB,ORD) I OK'=1 Q
 ;
 D CODE
 ;
 I $L($TR(CODE,"-! ","")),'$$D^W3L($TR(CODE,"!- ","")) D
 .N CODA S CODA=$TR(CODE,"!- ","") Q:'CODA
 .N GLKHA S GLKHA=$$GLA^W3L
 .S @$$GLA^W3L@(CODA)=$$NAME^W3HZMST(JB,GL)
 .D PUT^W3L(CODA,$$STREET^W3HZMST(JB,GL),"KTV",GLKHA)
 .D PUT^W3L(CODA,$$FLOOR^W3HZMST(JB,GL),"KOMA",GLKHA)
 .D PUT^W3L(CODA,$$FLAT^W3HZMST(JB,GL),"DIRA",GLKHA)
 .D PUT^W3L(CODA,$$HOME^W3HZMST(JB,GL),"BAIT",GLKHA)
 .D PUT^W3L(CODA,$$ENTRANCE^W3HZMST(JB,GL),"CNISA",GLKHA)
 .D PUT^W3L(CODA,$$CITY^W3HZMST(JB,GL),"IR",GLKHA)
 .D PUT^W3L(CODA,$$PELE^W3HZMST(JB,GL),"PELE",GLKHA)
 .D PUT^W3L(CODA,$$NMB^W3HZMST(JB,GL),"TELB",GLKHA)
 .D PUT^W3L(CODA,$$COMMENT^W3HZMST(JB,GL),"CMNT",GLKHA)
 ;
 S OK=1
ENDT Q
 ;
 ;
CODE ;
 D GL
 S CODE=$$CODE^W3HZMST(JB,GL)
 I CODE="" S CODE=$$GET^%W1PRM("CODE")
 S CODE=$TR(CODE,"-","")
 ;
 I CODE="" D
 .S NMB=$$NMB^W3HZMST(JB,GL) Q:NMB=""
 .I $$LKH^W3L(NMB)'="" Q
 .S CODE=$TR(NMB,"-","")
 Q
 ;
 ;
PUT(JB,ORD) ;
 N (JB,JB0,%ARG,%REM,ORD,DLV,MEMSHAK,OK)
 D GL S OK=0
 I '$D(@GL@(JB)) S OK="NORD" Q
 I $D(@GL@(JB))'=11 S OK="NOFULLORD" Q
 ;
 S A=$G(@GL@(JB))
 S MSD=$G(@GL@(JB,"MSD"))
 S DBL=$$DOUBLE(JB,A,+$H,MSD)
 I DBL D  S OK="DOUBLE" Q
 .M ^|$$^W3MAIN|TMPDBL(JB)=@GL@(JB)
 .S ^|$$^W3MAIN|TMPDBL(JB,"DOUBLE")=DBL
 .K @GL@(JB)
 ;
 K @$$^W3ORD(ORD)@(ORD)
 M @$$^W3ORD(ORD)@(ORD)=@GL@(JB) ; --- ^TMPORD --> ^W3ORD
 S @$$^W3ORD(ORD)@(ORD,"NEW")=$H
 ;
 ;;S ^AA("MSD0",ORD)=MSD
 ;
 S MSDFROM=""
 S HZMKR=""
 I $G(%ARG("HZMKR")) S HZMKR=%ARG("HZMKR")
 ;
 I $$^W4MM D
 .S MSDFROM=$$GETP^%W1PRM("MSD")
 .S @$$^W3ORD(ORD)@(ORD,"MSDFROM")=MSDFROM
 ;
 I 'MSD S MSD=$$GETP^%W1PRM("MSD")
 ;;S ^AA("MSD1",ORD)=MSD
 ;
 ;;S ^AA("MRKTO",ORD)=$$GETP^%W1PRM("MRKTO")
 ;
 I $$DLVWEB,'$D(@$$^W3ORD@(ORD,"MSDTO")) D
 .I $$GETP^%W1PRM("MRKTO") S MSD=$$GETP^%W1PRM("MRKTO")
 .I MSD'["!" D
 ..N MSDPRT S MSDPRT=$$MSDPRT(ORD,$$^W3ORD)
 ..I MSDPRT S MSD=MSDPRT
 .I MSD["!" S MSD=+MSD
 .D KILL^%W1PRM("MRKTO")
 ;
 ;;S ^AA("MSD3",ORD)=MSD
 ;
 D SETMSD(ORD,MSD)
 ;
 I $P($G(DLV),";",5) D
 .S @$$^W3ORD(ORD)@(ORD,"SNIF")=$P($G(DLV),";",5)
 ;
 N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 ;
 I $$DLVWEB,MKBL D
 .S @$$^W3ORD(ORD)@(ORD,"MKBL")=MKBL
 .S @$$^W3ORD(ORD)@(ORD,"MKBN")=$$^W4NAME(MKBL)
 ;
 I $$DLVWEB D
 .S @$$^W3ORD(ORD)@(ORD,"DLVWEB")=1
 .S $P(@$$^W3ORD(ORD)@(ORD),"~",51)=98
 ;
 D CODE
 ;
 D
 .N N S N="" F  S N=$O(@$$^W3ORD(JB)@(JB,N)) Q:N=""  D
 ..I N["COUP:",CODE D
 ...S MVC=$P(N,":",2) Q:MVC=""
 ...S @$$^W4GL("W3COUP")@(MVC,CODE)=$H
 ;
 I $G(DLV)="" S $P(@$$^W3ORD(ORD)@(ORD),"~",11)=$$TOT
 ;
 I $G(MSD),$$DEMO^W3PRM(MSD) S @$$^W3ORD(ORD)@(ORD,"DEMO")=$H
 ;
 N HZMHPAR S HZMHPAR=$$HZMH^W3PRM
 ;
 I $$^W3HZMH(JB),'$$^W3PRCOFR(JB),HZMHPAR D
 .N IND S IND=$O(@$$^W3ORD(ORD)@(ORD,99999),-1)+1
 .S @$$^W3ORD(ORD)@(ORD,IND)="0~"_HZMHPAR_"~"_$$SHEM^W3P(HZMHPAR)_"~~1"
 ;
 I $P($G(DLV),";",4) S @$$^W3ORD(ORD)@(ORD,"HZRSD")=$P(DLV,";",4)
 ;
 I ORD>0,'$$CLOSE^W3HZMST(ORD) D
 .N SOURCEORD S SOURCEORD=$G(@$$^W3ORD@(ORD,"MIMUSHPZM"))
 .I SOURCEORD D
 ..S @$$^W3ORD@(SOURCEORD,"PIZUIM","ORD")=ORD
 ..N IND S IND=$$INDPZM^W3PIZUIM(SOURCEORD) Q:IND=""
 ..S $P(@$$^W4GL("W3PIZUIM")@(IND,SOURCEORD),"\",3)=ORD
 ;
 D ^%S2GLSV($$^W3ORD_"("_ORD_")",$$^W3FGIB(0))
 ;
 M @$$^W3ORDGIB@(ORD)=@$$^W3ORD(ORD)@(ORD)
 ;
 D SETLINK
 ;
 ;;I '$$^W4MM,$$SNDLATE^W3PRM(MSD)?1N.E,$P($H,",",2)\3600'<$$SNDLATE^W3PRM(MSD) D  ; *** LEV 15/01/25 --> COMMENT
 .N MSG2HOST S MSG2HOST=""
 .N OK S OK=$$SNDMAIL^W3FAXHTM(ORD,MSD) S:OK=1 OK="OK"
 ;
 I $L($G(DLV)) D SNDDLV(MSD,ORD,DLV) G ENDT
 ;
 I $D(MEMSHAK),'$$AUTOSEND^W3PRM(ORD) D  G ENDT
 .D ^W3FAXHTM(ORD,MSD)
 .I $P($G(@$$^W3ORD(ORD)@(ORD)),"\")=4 S OK=1
 ;
 S OK=1
 Q
 ;
 ;
SETMSD(ORD,MSD)
 S @$$^W3ORD(ORD)@(ORD,"MSD")=MSD
 S @$$^W3ORD(ORD)@(ORD,"MSDN")=$$MSDN^W3R(MSD)
 Q
 ;
SETLINK ;
 N DT,DTR S DT=$$DTHZ^W3ORDLS(JB,GL)
 S DTR=$$^%L1DC($P($$DATCB^W3HZMST(JB,GL),"  "),3)
 ;
 N ASM,ASMU S ASM=$$HZMLAK^W3HZMST(JB,GL),ASMU=""
 I ASM["/" S ASMU=$P(ASM,"/",2)
 I ASMU D
 .S ^[$$^W3MAIN]W3LINKU(ASMU)=ORD
 ; 
 S ASM=$$SPA^%L1FRM(ASM)
 I $L(ASM) S ^[$$^W3MAIN]W3HZMLAK(+$G(MSD),ASM)=ORD_"\"_$H
 ;
 S ^[$$^W3MAIN]W3LINK(ORD)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_$G(HZMKR)
 S ^[$$^W3MAIN]W3LINKO(ORD)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_$G(HZMKR)
 S ^[$$^W3MAIN]W3LINKD(DT,ORD)=MSD
 ;
 I $G(MSDFROM) D
 .S ^[$$^W3MAIN]W3LINKD(DT,ORD)=MSD_"~"_MSDFROM_"~"_$G(HZMKR)
 ;
 I $G(HZMKR),$D(@$$^W4GL("W4LINK")@(HZMKR)) D
 .S $P(^(HZMKR),"~",6)=ORD
 .S @$$^W4GL("W4LINKO")@(HZMKR)=$G(@$$^W4GL("W4LINK")@(HZMKR))
 .I $D(@$$^W4GL("W4LINKD")@(DT,HZMKR)) D
 ..S $P(@$$^W4GL("W4LINKD")@(DT,HZMKR),"~",3)=ORD
 ;
 I DTR S ^[$$^W3MAIN]W3LINKDR(DTR,ORD)=MSD D
 .I $G(MSDFROM) D
 ..S ^[$$^W3MAIN]W3LINKDR(DTR,ORD)=MSD_"~"_MSDFROM_"~"_$G(HZMKR)
 ;
 I $L(CODE),$L(MSD) D
 .S ^[$$^W3MAIN]W3LINKI(CODE,MSD,ORD)=$H
 .S ^[$$^W3MAIN]W3LINKR(MSD,ORD)=$H
 ;
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINK("_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKD("_DT_","_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKI("""_CODE_""","_MSD_","_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKR("""_MSD_""","_ORD_")",$$^W3FGIB(0))
 Q
 ;
 ;
DELLINK(ORD) ;
 N GL S GL="^[$$^W3MAIN]W3ORD"
 N DT,DTR S DT=$$^%L1DC($$DAT^W3HZMST(ORD,GL),3)
 S DTR=$$^%L1DC($P($$DATCB^W3HZMST(ORD,GL),"  "),3)
 N CODE S CODE=$$NMB^W3HZMST(ORD,GL) 
 N MSD S MSD=$$MSD^W3HZMST(ORD,GL)
 ;
 K ^[$$^W3MAIN]W3LINK(ORD)
 K ^[$$^W3MAIN]W3LINKO(ORD)
 K ^[$$^W3MAIN]W3LINKD(DT,ORD)
 ;
 ;
 I DTR K ^[$$^W3MAIN]W3LINKDR(DTR,ORD)
 ;
 I $L(CODE),$L(MSD) D
 .K ^[$$^W3MAIN]W3LINKI(CODE,MSD,ORD)
 .K ^[$$^W3MAIN]W3LINKR(MSD,ORD)
 ;
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINK("_ORD_")",$$^W3FGIB(0),"K")
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKD("_DT_","_ORD_")",$$^W3FGIB(0),"K")
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKI("""_CODE_""","_MSD_","_ORD_")",$$^W3FGIB(0),"K")
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKR("""_MSD_""","_ORD_")",$$^W3FGIB(0),"K")
 Q
 ;
 ;
ZPRN ;
 N TXT
 S TXT=$$^%W1DICT("PRINT")_" ?"
 I $$^%W1LNG="E" W TXT Q
 I $$^%W1LNG="H" D  Q
 .S TXT=$$INV^%L1FRM(TXT)
 .W $$^%W1TXTJS(TXT)
 Q
 ;
SAVECMNT(CMNT) ;
 N JB S JB=$P(CMNT,"~"),CMNT=$P(CMNT,"~",2,300)
 D PUT^%W3DEB("W3ORDVW-SAVECMNT","CMNT=CMNT")
 N I F I=1:1:$L(CMNT,"~") D
 .N J,K S K=0 F J=1:1 Q:'$D(^[$$^W3MAIN]TMPORD(JB,J))  I $D(^[$$^W3MAIN]TMPORD(JB,J,"CM")) S K=K+1 D
 ..I K=I D
 ...I $$^%W1DIR="RTL" S $P(^[$$^W3MAIN]TMPORD(JB,J),"~",7)=$$INVH^%L1FRM($P(CMNT,"~",I)) Q
 ...S $P(^[$$^W3MAIN]TMPORD(JB,J),"~",7)=$P(CMNT,"~",I)
 Q
 ;
TDHR ;
 D W("<tr>")
 N J F J=1:1:CC D W("<td><hr></td>")
 D W("</tr>")
 Q
 ;
CMTD ;
 D W("   <td id=""cmtd"_I_""" class=""hdgr"" style=""font-size:"_$$^W3FSZ_";text-align:center"" >&nbsp;")
    I PC<2,'$G(W3FAXHTM) D
       .D W("<input type=""text"" value="""_$$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))_"""")
       .D W(" id=""CM"_I_""" name=""CM"_I_""" class=""vwcmnt"" size=""32"" maxlength=""36"" >&nbsp;")
       .S ^[$$^W3MAIN]TMPORD(JB,I,"CM")=""
    I PC>1.9!$G(W3FAXHTM) D
       .W $$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))
 D W("   </td>")
 Q
 ;
HDMSD(MSD) ;
 ;;S $ZGBLDIR=$$^W3UCI(MSD)
 N PRLOGO S PRLOGO=0
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3hdfax"_MSD_".gif")>-1 S PRLOGO=1
 I $$SFC^W3CSS,'$G(W3FAXHTM) D ^W3SFHD W "<br ><br ><br ><br >" Q
 I $G(W3FAXHTM),PRLOGO Q  ; LOGO SHEL FAX
 ;
 I $$MMCC^W4PRM,$$GETP^%W1PRM("MRKTO") S MSD=$$GETP^%W1PRM("MRKTO")
 ;
 D W("<table width=""100%"" id=""TblHeadMsd"" name=""TblHeadMsd"" cellspacing=""0"" style=""font-size:"_$$^W3FSZ_";color:"_$$FGHDMSD^W3CSS_""" dir="""_$$^%W1DIR_""">")
 D W("<tr>")
   D W("<td width=""5%"">&nbsp;</td>")
   D W("<td style=""font-size:"_$$^W3FSZ(18)_""">"_$$NAME^W3MSD(MSD)_"</td>")
   D W("<td>&nbsp;</td>")
   I $G(W3FAXHTM) D W("</tr><tr><td>&nbsp;</td>")
   I $L($$ADDR^W3MSD(MSD)) D W("<td style=""text-align:center"" dir="""_$$^%W1DIR_""">"_$$ADDR^W3MSD(MSD)_"</td>")
   I $G(W3FAXHTM) D W("<td width=""20%"">&nbsp;</td>")
   ;
   I '$G(W3FAXHTM) D
   .D W("<td>&nbsp;</td>")
   .D W("<td>"_$$^%W1DICT("TEL")_" "_$$TEL(MSD)_"</td>")
   .D W("<td width=""5%"">&nbsp;</td>")
   .I '$D(PC) D W("<td width=""10%"">&nbsp;</td>") Q
   .I PC<2 D BUTTONSPC1("hdvw1")
   .I PC=2 D BUTTONSPC2("hdvw1")
   .I PC=3 D BUTTONSPC3("hdvw1")
 D W("</tr>")
 D W("</table>")
 Q
 ;
TEL(MSD) ;
 N TEL,MSL
 S MSL=$$GET^%W1PRM("MSL")
 S TEL="<span dir=""LTR"" style=""color:"_$$FGHDMSD^W3CSS()_""" >"_$$TEL^W3MSD(MSD)_"</span>"
 I MSL S TEL="</td><td>057-5000-500</td><td>"_$$^%W1DICT("SHLUHA")_"</td><td>"_MSL
 Q TEL
 ;
SETPAYM(PARM) ;
 N SUGT,HR
 D PUT^%W3DEB("W3ORDVW","PARM=PARM")
 S SUGT=$P(PARM,"~")
 S HR=$P(PARM,"~",2)
 D PUTCODTS(SUGT)
 Q
 ;
PUTCODTS(SUGT) ;
 I $$CLOSE^W3HZMST(JB) Q
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",21)=SUGT
 Q
 ;
SETCIBUS(PRMCIB) ;
 N CIBCOMP,CIBCARD
 D PUT^%W3DEB("W3ORDVW","PRMCIB=PRMCIB")
 S CIBCOMP=$P(PRM,";")
 S CIBCARD=$P(PRM,";",2)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",45)=CIBCOMP
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",46)=CIBCARD
 Q
 ;
SETTENBIS(PRMTNB) ;
 N TNBCOMP,TNBCARD
 D PUT^%W3DEB("W3ORDVW","PRMTNB=PRMTNB")
 S TNBCOMP=$P(PRM,";")
 S TNBCARD=$P(PRM,";",2)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",52)=TNBCOMP
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",53)=TNBCARD
 Q
 ;
SETCREDIT(PRMCRED) ;
 N CREDCARD
 D PUT^%W3DEB("W3ORDVW","PRMCRED=PRMCRED")
 S CREDCARD=$P(PRM,";",1)
 S CREDMM=$P(PRM,";",2)
 S CREDYY=$P(PRM,";",3)
 S CREDTZ=$P(PRM,";",4)
 S CREDCVV=$P(PRM,";",5)
 I $L(CREDMM)=1 S CREDMM="0"_CREDMM
 I $L(CREDYY)=4 S CREDYY=$E(CREDYY,3,4)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",48)=CREDCARD
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",49)=CREDMM_"/"_CREDYY
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",50)=CREDTZ
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",61)=CREDCVV
 Q
 ;
W(TXT)
 W TXT I '$D(W3FAXHTM("SNDMAIL")) W !
 Q:'$G(W3FAXHTM)
 N IND S IND=$O(^[$$^W3MAIN]TMPFAX(JB,99999),-1)+1
 S ^[$$^W3MAIN]TMPFAX(JB,IND)=$E(TXT,1,800)
 Q
 ;
CIBUS(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("CIBUS")) Q 1
 Q 0
 ;
CIBDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("COMPANYNUMBER")_" : "_$$CIBCOMP^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : "_$$CIBCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
COUPONPHONE(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("COUPONPHONE")) Q 1
 Q 0
 ;
TENBIS(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("10BIS")) Q 1
 Q 0
 ;
TNBDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("COMPANYNUMBER")_" : "_$$TNBCOMP^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : "_$$TNBCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
CREDDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$CREDCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("UNTILMMYY")_" : "_$$CREDMMYY^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("IDNUMBER")_" : "_$$CREDTZ^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;CVV2 : "_$$CREDCVV2^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
PCHZ(HZ) ;
 I '$G(HZ) Q 1
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) Q 1
 I $D(@$$^W3ORD(HZ)@(HZ,"D")) Q 1
 I $D(@$$^W3ORD(HZ)@(HZ,"PC",REM)) Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD(HZ)),3)<$H Q 1
 Q 0
 ;
GETSOUND(HZ) ;
 I '$G(HZ) Q 1
 N JB S JB=HZ
 I $D(@$$^W3ORD(HZ)@(HZ,"SOUND",$$REM)) Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD(HZ)),3)<$H Q 1
 Q 0
 ;
SETPC(HZ) ;
 I '$G(HZ) Q
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 S @$$^W3ORD(HZ)@(HZ,"PC",REM)=""
 Q
 ;
SETSOUND(HZ) ;
 I '$G(HZ) Q 0
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 S @$$^W3ORD(HZ)@(HZ,"SOUND",REM)=""
 Q 1
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
SELMMYY ;
 N I,YY
 D W("<select id=""mmid"" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(">")
 F I=1:1:12 D W("<option value="""_$TR($J(I,2)," ",0)_""">"_$TR($J(I,2)," ",0)_"</option>")
 D W("</select>&nbsp;")
 S YY=$ZD($H,"YY")
 D W("<select id=""yyid"" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(" >")
 F I=1:1:10 D
 .D W("<option value="""_(2000+YY+I-1)_""""_$S(I=2:" selected=""selected""",1:"")_" >"_(2000+YY+I-1)_"</option>")
 D W("</select>")
 Q
 ;
NOM(STAM) ;
 I $G(W3ORDLS("NOM")) Q W3ORDLS("NOM")
 Q $$HZ
 ;
HZ(STAM) ;
 N HZ S HZ=$S($G(W3ORDLS):W3ORDLS,1:JB)
 ;;I $G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) Q ^("HZRSD")
 Q +HZ
 ;
MKRZAR(STAM) ;
 I $$MKR^W3HZMST(JB)=2 Q 1
 Q 0
 ;
NOCASH(STAM) ;
 I $$OUTCA^W3PRM Q 1
 I $$GET^%W1PRM("REST")!$$NOCASH^W3PRM Q 1
 Q 0
 ;
NOCHECK(STAM) ;
 I '$$ISCH^W3L(CODE)!$$NOCHECK^W3PRM Q 1
 Q 0
 ;
NOCRCARD(STAM) ;
 Q 0  ; -- 12/04/22
 Q +$$NOCRCARD^W3PRM
 ;
PIC(CD) ;
 S W3GETPIC("MSD")=MSD
 D W("<td align=""center""><img src="""_$$PICTURE^W3HZPRTN(CD,"pic")_""" width=""100"" height=""67"" onMouseOver=""openPic1('"_CD_"','"_MSD_"')"" onMouseOut=""closePic1()"" ></td>")
 Q
 ;
LASTTD ;
 I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D W("<td>&nbsp;</td>")
 I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D W("<td>&nbsp;</td>")
 Q
 ;
SNDDLV(MSD,ORD,DLV) ;
 ;
 I $G(DLV)[";" D
 .N SND,FAX,EMAIL,LINK,DET
 .S SND=$P($P(DLV,";",2),"-")
 .S DET=$P($P(DLV,";",2),"-",2)
 .S OK=0
 .I SND="F" D  Q
 ..S FAX=$P(DLV,";",3) Q:'FAX
 ..I $$SNDFAX^W3SNDHMH(FAX_";;"_DET) D ^W3REGFAX(ORD) S OK=1
 .
 .I SND="E" D  Q
 ..S ^LL(1)=DLV
 ..S EMAIL=$P(DLV,";",3) Q:'$L(EMAIL)
 ..S LINK=$P($$WEB^W3MAIN,"//",2,20)_"w3ordvw.jsp?MSD="_MSD_"&W3ORDLS="_ORD_"&RCV=1"
 ..D PUT^%W1PRM("ORD",ORD)
 ..N MENU,KASHRUT,ISHUR,TXT
 ..S MENU=$P(DLV,";",7)
 ..S KASHRUT=$P(DLV,";",8)
 ..S ISHUR=$P(DLV,";",9)
 ..S TXT=$P(DLV,";",10,200)
 ..;
 ..I $$SNDMAIL^W3SNDHMH(EMAIL_";"_LINK_";"_DET_";"_MENU_";"_KASHRUT_";"_ISHUR_";"_TXT) D
 ...S @$$^W3ORD(ORD)@(ORD,"EMAIL")=$H,OK=1
 Q
 ;
 ;
SP(STAM) ;
 I $$^%W1LNG'="H" Q "&nbsp;&nbsp;"
 Q ""
 ;
CHKMMYY(PRM) ;
 N MM,YY,DAT,J
 S MM=$E(PRM,1,2)
 S YY=$E(PRM,5,6)
 F J=31:-1:28 S DT=$$^%L1DC(J_MM_YY,3) Q:DT
 I DT<$H Q 0
 Q 1
 ;
MSDPRT(ORD,GL) ;
 N A,N,CD,MSDPRT S N="",MSDPRT=""
 F  S N=$O(@GL@(ORD,N)) Q:N=""  I N D  Q:MSDPRT
 .S A=$G(^(N))
 .S CD=$P(A,"~",2) Q:'CD
 .I $G(@$$^W4GL("W4MSDPRT")@(CD)) S MSDPRT=^(CD)
 Q MSDPRT
 ;
PICUL(ORD) 
 I $G(ORD)="" Q 0
 I $D(@$$^W3TMPORD@(ORD,"PICUL")) Q 1
 Q 0 
 ;
COPY(ORDFROM) ;
 D ^W4TMPOP("HIST")
 Q 1
 ;
PIZUIM(ORD) ;
 Q $L($G(@$$^W3ORD@(ORD,"PIZUIM")))
 ;
CHOICEREST(STAM); 
 I '$$DLVWEB^W4DLVCSR Q 0
 N MSDR S MSDR=$$MSDR^W4PRM I 'MSDR Q 0
 N MSDF S MSDF=$O(^|$$^W3MAIN|W3MSDR(MSDR,"")) I 'MSDF Q 0 
 I MSDF=MSDR,$O(^|$$^W3MAIN|W3MSDR(MSDR,MSDF))="" D  Q 0
 .D PUT^%W1PRM("MRKTO",MSDF)
 I +$$GETP^%W1PRM("MRKTO")=0&(+$$MSD^W3HZMST(JB)=0) Q 1
 I $$W4PRM("CHCREST") Q 1
 Q 0
 ;
CHKCA(PRM) ; 
 N (JB,JB0,%ARG,%REM,PRM) ;
 ;;S ^AA("W3ORDVW-CHKCA","PRM")=PRM
 S VIZ=$P(PRM,";") 
 S ASHCVV2=$P(PRM,";",2) 
 S ASHTZ=$P(PRM,";",3) 
 S MMYYYY=$P(PRM,";",4)
 S PAY=$P(PRM,";",5)*100
 I $L(MMYYYY)=6 S YYMM=$E(MMYYYY,5,6)_$E(MMYYYY,1,2) 
 E  S YYMM=$E(MMYYYY,3,4)_$E(MMYYYY,1,2) 
 S (SUGIS,SUGMTB,SUGAS,SUGMRB)=1
 S SUGBC=51 
 S KOHAV=0 
 S AUTHNO=""
 S KUP=901 
 S (P1,PN,PC,PF,PG,PH)=0
 S %ARG("J5")=1
 D ^W4STRIN
 ;
 S A=$$INOUT^W4PAYCA(STRIN)
 ;
 S STA=$P(A,"~",2)
 I STA'="000" D
 .N MSG S MSG=$G(^[$$^W3MAIN]KOD(+STA))
 .S STA=STA_"~"_MSG
 ;
 Q STA
 ;
 ; 
W4PRM(PRM) ; 
 I $G(JB0) N JB S JB=JB0
 N OU X "S OU=$$"_PRM_"^W4PRM"
 Q OU 
 ;
 ;
DOUBLE(JB,A,DT,MSD) ; 
 N OK S OK=0
 N B,N
 ;
 ;;I $G(MSD),$D(^|$$^W3MAIN|W3MSDR(10222,MSD)) Q 0  ; -- LO LIVDOK FOR PAPA
 ;; --- 22.03.24 --> COMMENT
 ;
 S A=$P(A,"~",1,31)
 S $P(A,"~",4)=""
 N SHAAA S SHAAA=$P(A,"~",6)
 S $P(A,"~",6)=""
 ;
 N HZMLAK S HZMLAK=$$SPA^%L1FRM($$HZMLAK^W3HZMST(JB))
 ;  
 S N="" F  S N=$O(^[$$^W3MAIN]W3LINKD(DT,N)) Q:N=""  D  Q:OK
 .Q:N=JB
 .S B=$G(^|$$^W3MAIN|W3ORD(N))
 .S B=$P(B,"~",1,31)
 .S $P(B,"~",4)=""
 .N SHAAB S SHAAB=$P(B,"~",6)
 .S $P(B,"~",6)=""
 .
 .N J F J=8,9,11,12,17,19 D
 ..S $P(A,"~",J)=$J($P(A,"~",J),2,2)
 ..S $P(B,"~",J)=$J($P(B,"~",J),2,2)
 .
 .I $G(MSD),$G(^|$$^W3MAIN|W3ORD(N,"MSD")),MSD'=^("MSD") S OK=0 Q
 .I A=B,$$BDKSUM(JB,"TMPORD")=$$BDKSUM(N,"W3ORD"),$$DIF^%L1TIME(SHAAA,SHAAB)<30 D
 ..N HL S HL=$G(^|$$^W3MAIN|W3HZMLAK(+$G(MSD),HZMLAK))
 ..I $L(HZMLAK),HL,+HL'=JB D  Q
 ...N TIME S TIME=$P(HL,"\",2) Q:'TIME
 ...I $$DIF^%L1TIME($H,TIME)<30 S OK=N
 ..;;I '$L(HZMLAK) S OK=N Q  ; -- 22/03/24 --> COMENT
 ;
 Q OK 
 ;
 ;
BDKSUM(N,GL) 
 S GL="^|"""_$$^W3MAIN_"""|"_GL
 N BDKSUM S BDKSUM=0
 N I S I="" F  S I=$O(@GL@(N,I)) Q:I=""  I I D
 .N A S A=$G(^(I))
 .S BDKSUM=BDKSUM+($P(A,"~",2)*$P(A,"~",5))
 Q BDKSUM 
 ;
 ; 
BDORD(JB) ;
 D
 .N TBL,RULES S RULES="cols"
 .I $D(W3FAXHTM("SNDMAIL")) S RULES="rows"
 .S TBL="<table width="""_$S(PC:"100%",1:"70%")_""" cellspacing=""0"" "
 .S TBL=TBL_"class=""vw"" border=""1"" rules="""_RULES_""" "
 .S TBL=TBL_" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >"
 .D W("<table width="""_$S(PC:"100%",1:"70%")_""" cellspacing=""0"" class=""vw"" border=""1"" rules=""cols"" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >")
 ;
 D W(" <tr class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">")
 S CC=0
 I $$CODE^W3PRM S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:"_$S($$CMNT^W3PRM:"30%",1:"50%")_""">"_$$^%W1DICT("ITEMNAME")_"</th>")
 S CC=CC+1 D W("  <th style=""width:14%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:14%"">"_$$^%W1DICT("QUANT")_"</th>")
 I $$DLVWEB D
 .S CC=CC+1
 .D W("  <th style=""width:6%"">"_$$^%W1DICT("DISCPERCENT")_"</th>")
 S CC=CC+1 D W("  <th width=""14%"">"_$$^%W1DICT("SUM")_"</th>")
 ;
 I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D
 .S CC=CC+1
 .D W("  <th style=""width:30%"">"_$$^%W1DICT($S($$NOREST^W3PRM:"COMMENT",1:"COMMENT2KITCHEN"))_"</th>")
 ;
 I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D
 .S CC=CC+1
 .D W("  <th style=""width:30%"">"_$$^%W1DICT("PICTURE")_"</th>")
 ;
 D W(" </tr>")
 D TDHR
 ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 ;
 N SKIPDEL,QN,QNR S PR0=1,CD0=""
 N I F I=1:1 Q:'$D(@$$^W3TMPORD@(JB,I))  D
 .N A S A=$G(^(I))
 .I $P(A,"~")=0 D  S PR0=1 ; ---------------------- PRITIM
 ..S QNR=$P(A,"~",5),SKIPDEL=0 
 ..S DISCP=$P(A,"~",6)
 ..I $G(COMPRDEL),QNR'>0 S SKIPDEL=1 Q
 ..S QN=QNR I $G(COMPRDEL) S QN=$$ITRAST^W3HZMST(JB,I)
 ..I PRTR D TDHR
 ..S PRTR=1
 ..
 ..S CD0=$$CD(A)
 ..I CD0=$$HZMH^W3PRM!(CD0=$$HZMH2^W3PRM) D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" style=""background-color:96ce98;color:black"" >")
 ..I CD0'=$$HZMH^W3PRM,CD0'=$$HZMH2^W3PRM D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" class=""vw0"">")
 ..
 ..I $$CODE^W3PRM D W("  <td>&nbsp;"_$$CD(A)_"</td>")
 ..N NAM
 ..S NAM=$$NAM(A)
 ..D W("   <td style='font-size:"_$$^W3FSZ_"'>&nbsp;"_NAM_"</td>")
 ..
 ..N MH S MH=$$MH(A)
 ..D W("   <td align=""center"">&nbsp;"_MH_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_QN_"</td>")
 ..
 ..I $$DLVWEB D
 ...D W("   <td align=""center"" style=""color;red"">&nbsp;"_$S($G(DISCP):$J(DISCP,2,2)_"%",1:"")_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_$J(QN*MH*(100-DISCP)*.01,2,2)_"</td>")
 ..
 ..I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D CMTD
 ..I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D PIC($$CD(A))
 ..
 ..D W("</tr>")
 .
 .I $P(A,"~")=1!($P(A,"~")=2) D  ; --------------------------- TOSAFOT
 ..I $$CDA(A) Q  ; !$$CDC(A)!$$CDH(A) Q
 ..I $G(SKIPDEL) Q
 ..I PC=1.5,'$G(W3FAXHTM)!$D(W3FAXHTM("COMPRESS")),'$$^W3HZMH($$HZ)!$D(W3FAXHTM("COMPRESS")) D  S PR0=0 Q  ; -- COMPRESS ADDONS
 ...Q:'PR0
 ...N MHADD,MHADD1,A1 S (MHADD,MHADD1)=0
 ...N I1 F I1=I:1 Q:'$D(@$$^W3TMPORD@(JB,I1))  S A1=$G(^(I1)) Q:'$P(A1,"~")  D
 ....N QNT S QNT=$$QNR^W3HZMST(JB,I1)
 ....I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I1)
 ....N SUMT,SUMT1 S (SUMT,SUMT1)=$P(A1,"~",4)*QNT
 ....I DISCP S SUMT1=SUMT1*(100-DISCP)*.01
 ....S MHADD=MHADD+SUMT
 ....S MHADD1=MHADD1+SUMT1
 ...
 ...D W("  <tr class=""vw1"" id=""ADD"_I_""" name=""ADD"_I_""" >")
 ...I $$CODE^W3PRM D W("    <td>&nbsp;</td>")
 ...
 ...D W("   <td>"_$$^%W1DICT("ADDITIONS")_"</td>")
 ...
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ...
 ...D W("   <td>&nbsp;</td>")
 ...I $$DLVWEB D W("   <td>&nbsp;</td>")
 ...
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD1,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ..
 ..; ----------------------------- FULL VIEW ----------
 ..I '$$MH(A),$$^W3HZMH($$HZ),$G(COMPRVIEW) Q
 ..;
 ..I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I) I QNT'>0 Q
 ..
 ..D W("  <tr class=""vw1"" id=""LV1"_I_""" name=""LV1"_I_""" >")
 ..I $$CODE^W3PRM D W("    <td>&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..
 ..D W("   <td")
 .. I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N ST S ST="   <td dir=""LTR"" style=""text-align:center"
 ..N MH S MH=$$MH(A)
 ..I MH S ST=ST_";color:black"
 ..S ST=ST_""""
 ..S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:MH)_"</td>"
 ..D W(ST)
 ..
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..N QNT S QNT=$S($$CDC(A)!$$CDH(A):"&nbsp;",$$QN(A)["+":$$QNPIZZA(A),1:$$QN(A))
 ..I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I) I QNT'>0 Q
 ..S ST=ST_QNT
 ..S ST=ST_"</td>"
 ..D W(ST)
 ..I $$DLVWEB D W("<td>&nbsp;</td>")
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..N SUM S SUM=MH*QNT I $G(DISCP) S SUM=SUM*(100-DISCP)*.01
 ..S SUM=$J(SUM,2,2)
 ..N ST1 S ST1=SUM
 ..I SUM S ST1="<span color=""black"">"_SUM_"</span>"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ST1)_"</td>"
 ..D W(ST)
 ..D
 ...I $$^W3HZMH($$HZ) D  Q
 ....I $$PICTURE^W3PRM D W("   <td>&nbsp;</td>")
 ...I $$CMNT^W3PRM=2,'$$CDC(A) D CMTD Q
 ...I $$CMNT^W3PRM,$$CDC(A)!($$CMNT^W3PRM=1) D
 ....D W("   <td id=""cmtd"_I_""">&nbsp;</td>")
 ..D W("  </tr>")
 .
 .I $P(A,"~")>1,$G(SKIPDEL) Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDVW0
W3ORDVW(PC) ; [ 10.10.25 10:39 ] [ 26.07.25 04:29 ] [ 23.07.25 11:42 ] 
 ; PC = 1 - SHOW FROM CUSTOMER ORDER
 ; PC = 1.5 - SHOW FROM CUSTOMER ORDER (COMPRESS VIEW)
 ; PC = 2 - SHOW FROM CUSTOMER LIST ORDER ( FOR COPY ORDERS )
 ; PC = 3 - SHOW FROM RECEIVE LIST ORDER
 ;             CODE - REGISTRY CUSTOMER,
 ;             WITHOUT CODE - RESTAURANT
 ;             CODE="http://..." NEW CUSTOMER
 ;----------------------------------------------------------------------------
 N (%ARG,JB,PC,W3ORDLS,W3FAXHTM,%REM,COMPRVIEW,COMPRDEL)
 ;
 K @$$^W3TMPORD@(JB,"BACK")
 S JB0=JB
 ;
 D INIT
 ;
 I $G(W3ORDLS) N JB S JB=+W3ORDLS
 ;
 ;;W "W3ORDLS="_W3ORDLS_"  JB="_JB_" MD="_MSD,!
 ;
 D W("<div align=""center"" >")
 ;
 I PC=1!(PC=1.5),'$$CLOSE^W3HZMST(JB),'$G(W3ORDLS),'$G(W3FAXHTM),'$$MKR^W3HZMST(JB) D
 .I $$^W3HZMH(JB),$$ONLINE^W4DLVCSR Q
 .I $$ONLINE^W4DLVCSR S $P(@$$^W3TMPORD@(JB),"~",38)=$$AHUZ^W3HZTFR
 .
 .N IND S IND=$$CITY^W3HZMST(JB)_":"_$$STREET^W3HZMST(JB)_":"_$$HOME^W3HZMST(JB)
 .S $P(@$$^W3TMPORD@(JB),"~",8)=$J($$AHUZ^W3HZMST(JB)*$$TOTORD("D")*.01,2,2)
 .S $P(@$$^W3TMPORD@(JB),"~",11)=$$TSHL^W3HZMST(JB)
 .S $P(@$$^W3TMPORD@(JB),"~",9)=$$DMSH^W3HZMST(JB)
 ;
 D HDMSD(MSD)
 ;
 I '$G(W3FAXHTM) D
 .N STYLEHD S STYLEHD=""
 .I $$COLOR^W3CSS="RW" S STYLEHD=" style=""background-color:white;color:#cc0000"" "
 .
 .D W("<table id=""TblHeadVw"" name=""TblHeadVw"" class=""hdvw"" "_STYLEHD_" width="""_$S(PC:"100%",1:"70%")_""" border=""0"">")
 .N ORDERHD
 .S ORDERHD=$$^%W1DICT("ORDER")_" "_$$NOM
 .I '$D(@$$^W3ORD(+$$HZ)@(+$$HZ)) D
 ..I '$$^W3HZMH(+$$HZ) S ORDERHD=$$^%W1DICT("ORDERINPROCESS") Q
 ..S ORDERHD=$$^%W1DICT("PRICEOFFER")
 .D W("<tr><td dir="""_$$^%W1DIR_""" id=""orderhd"">"_ORDERHD_"</td></tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 I $G(W3FAXHTM) D
 .N HZ S HZ=$$NOM
 .I $G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) S HZ=^("HZRSD")
 .D W("<br><span style=""font-size:"_$$^W3FSZ(24)_""">"_$$^%W1DICT("ORDER")_" "_HZ_"</span>")
 ;
 W !
 ;
 D
 .N W3ORDHD
 .S W3ORDHD("SPANSTYLE")="color:"_$$FGFLD^W3CSS($$COLOR^W3CSS)_";font-weight:"_$$WGFLD^W3CSS($$COLOR^W3CSS)
 .D VW^W3ORDHD
 ;
 D W("<br>")
 ;
 S HZMH=$$^W3HZMH(+$$HZ)
 ;
 I PC<2!$$OUTCA^W3PRM D
 .I '$G(W3FAXHTM) D W("<div align=""center"">")
 .D W("<table name=""TblVw"" dir="""_$$^%W1DIR_""" width=""100%"" border=""0"" style=""font-weight:"_$S($$WGFLD^W3CSS($$COLOR^W3CSS):"bold",1:"normal")_""">")
 .D W(" <tr>")
 .
 .I '$G(W3FAXHTM) D
   ..D W("  <td>"_$$SP_$$^%W1DICT($S($$NOREST^W3PRM:"COMMENTS2ORDNOREST",1:"COMMENT2ORDER"))_": <input type=""text"" value="""_$$H2U^%L1FRM($$CMHD^W3HZMST(+$$HZ))_"""")
   ..D W(" id=""CMHD"" name=""CMHD"" class=""vwcmnt"" size=""56"" onBlur=""SetHr()"">")
   ..D W("  </td>")
 .
 .I $G(W3FAXHTM) D
   ..I $L($$CMHD^W3HZMST(+$$HZ))=0 Q
   ..D W("  <td style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("COMMENT")_": "_$$H2U^%L1FRM($$CMHD^W3HZMST(+$$HZ)))
   ..D W(" </td></tr><tr>")
 .
 .I $G(HZMH),'$G(W3FAXHTM) D  Q
 ..D W("   <td>")
 ..D W("    "_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S(PC=1.5:"checked=""checked""",1:"")_" />")
 ..D W("   </td>")
 ..D W(" </tr>")
 ..D W("</table>")
 .
 .I $G(W3FAXHTM)!($G(%ARG("RCV"))=9) D
 ..N STS S STS="<td style=""font-size:"_$$^W3FSZ(20)_""">"
 ..S STS=STS_$$^%W1DICT("KINDOFPAYMENT")_" : "_$$SHOWTS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=3 D W(STS_"</td></tr>") S STS="<tr><td>"_$$CREDDETAILS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=5 S STS=STS_$$CIBDETAILS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=7 S STS=STS_$$TNBDETAILS($$HZ)
 ..S STS=STS_"</td>"
 ..D W(STS)
 .
 .I $G(HZMH) D  Q
 ..D W("</tr>")
 ..D W("</table>")
 .
 .I $G(W3FAXHTM) D
 ..D W("</tr>")
 ..D W("</table>")
 .
 .I '$G(W3FAXHTM) D PAYM
 .D W("<br>")
 ;
 I PC=2!(PC=3) D
 .D W("<table name=""TblVw"" dir="""_$$^%W1DIR_""" width=""100%"" border=0>")
 .D W(" <tr>")
 .I $L($$CMHD^W3HZMST(JB))=0 D W("<td>&nbsp;</td>")
 .I $L($$CMHD^W3HZMST(JB)) D W("<td style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("COMMENT")_": <span>"_$$H2U^%L1FRM($$CMHD^W3HZMST(JB))_"</span></td>")
 .N STS S STS="<td style=""font-size:"_$$^W3FSZ(16)_""">"
 .I $$OUTCA^W3PRM Q
 .I '$G(HZMH) S STS=STS_$$^%W1DICT("KINDOFPAYMENT")_" : <span>"_$$SHOWTS(JB)_"</span>"
 .I $G(HZMH) S STS=STS_" <span>"_$$SHOWTS(JB)_"</span>"
 .I $$CODTS^W3HZMST(JB)=3,MSD=10060 S STS=STS_$$CREDDETAILS($$HZ)
 .I $$CODTS^W3HZMST(JB)=5 S STS=STS_$$CIBDETAILS($$HZ)
 .I $$CODTS^W3HZMST(JB)=7 S STS=STS_$$TNBDETAILS($$HZ)
 .
 .S STS=STS_"</td></tr></table>"
 .D W(STS)
 ;
 ;
 I $$HKBEEF^W3PRM D
 .D W("<table width="""_$S(PC:"100%",1:"70%")_""" border=""0"" dir="""_$$^%W1DIR_""" >")
 .D W(" <tr><td style=""text-align:center;color:white;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">"_$$^%W1DICT("NOTCHARGEDNOW")_"</td></tr>")
 .D W("</table>")
 ;
 ;----------------------- BASIC TABLE -------------------------
 D W("<br />")
 ;
 N PRTR S PRTR=0
 S PC=1
 D BDORD(JB)
 ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 I PRTR D TDHR
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W(" <td>&nbsp;</td>")
 N AHUZ S AHUZ=$$AHUZ^W3HZTFR
 I $G(W3ORDLS)!$$DLVWEB S AHUZ=$$AHUZ^W3HZMST(JB)
 ;
 D W(" <td><span style='font-size:"_$$^W3FSZ_";color:"_$$FGDLVPAY^W3CSS_"'>&nbsp;"_$$^%W1DICT("DLVPAY")_"</span></td>")
 ;
 D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 I $$DLVWEB D W("<td>&nbsp;</td>")
 D W("<td align=""center""><span style=""color:"_$$FGDLVPAY^W3CSS_""">"_$J($$DMSHMSD^W3HZMST(JB),2,2)_"</span></td>")
  D LASTTD
 D W("</tr>")
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W(" <td>&nbsp;</td>")
 ;
 N DISCAH S DISCAH=$J($$TOTORD("D")*AHUZ*.01,2,2)
 N HNH S HNH=$$HNH^W3HZMST(JB)
 ;
 ;;I AHUZ,'$G(W3ORDLS)!'$$HNH^W3HZMST(JB) D
 I AHUZ,$J(HNH,1,1)=$J(DISCAH,1,1) D
 .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISCOUNT",+AHUZ)_"</span></td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .I $$DLVWEB D W(" <td>&nbsp;</td>")
 .D W("<td style=""color:red;text-align:center"" dir=""LTR"">"_$J(-DISCAH,4,2)_"</td>")
 ;
 ;;I 'AHUZ!$G(W3ORDLS),$$HNH^W3HZMST(JB) D
 I HNH,$J(HNH,1,1)'=$J(DISCAH,1,1) D
 .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISC")_"</span></td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .I $$DLVWEB D W(" <td>&nbsp;</td>")
 .D W("<td style=""color:red;text-align:center"" dir=""LTR"">"_$J($$HNH^W3HZMST(JB),2,2)_"</td>")
 ;
 I 'AHUZ,'$$HNH^W3HZMST(JB) D
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .I $$DLVWEB D W(" <td>&nbsp;</td>")
 ;
 D LASTTD
 D W("</tr>")
 ;
 I PRTR D TDHR
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W("<td>&nbsp;</td>")
 ;
 I PC<2,'$G(W3FAXHTM) D BUTTONSPC1("hdvw") ; -- FROM ORDER
 ;
 I PC=2 D BUTTONSPC2("hdvw") ; --- CUSTOMER LIST ORDER FOR COPY - From w3ordls.jsp
 ;
 I PC=3 D BUTTONSPC3("hdvw") ; -- RECEIVE LIST ORDER OR STATISTIC CUSTOMER LIST ORDER
 ;
 I $G(W3FAXHTM) D
 .D W("<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>")
 ;
 I $$DLVWEB D W("<td>&nbsp;</td>")
 ;
 D W("<td style=""font-size:"_$$^W3FSZ_";text-align:center;color:"_$$FGTOT^W3CSS_";font-weight:bold"">"_$$TOT_"</td>")
 ;
 D LASTTD
 D W("</tr>")
 D W("</table>")
 ;;D W("</div>")
 D W("<br>")
 ;
 I $$W4PRM("PIZUIM"),$D(@$$^W3ORD@($$NOM)) D
 .N NOM S NOM=$$NOM
 .N PZM S PZM=$$PIZUIM(NOM)
 .D W("<button class=""hdvw1"" dir="""_$$^%W1DIR_""" ")
 .I PZM D W(" style=""color:red;font-weight:bold"" ")
 .D W(" onClick=""Pizuim('"_NOM_"')"">")
 .D 
 . .I 'PZM D W($$^%W1DICT("SIGNCOMPENSATION")) Q
 . .D W($$^%W1DICT("PIZUIM!")) Q
 .D W("</button>")
 ;
 N COLST S COLST=$O(@$$^W3TMPORD@(JB,9999),-1)
 F I=1:1:5-(COLST>1) D W("<br>")
 ;
 I PC=1.5,'$$DLVWEB D
 .W "<script>",!
 .I '$$^W3HZMH(+$$HZ) W "Msg(""PAYANDSUBMIT"","""",""font-size:"_$$^W3FSZ(18)_";background-color:yellow;color:black;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""")",!
 .I $$^W3HZMH(+$$HZ) W "Msg(""PRICEOFFERSUBMIT"","""",""font-size:"_$$^W3FSZ(18)_";background-color:yellow;color:black;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""")",!
 .W "</script>",!
 ;
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3reklama"_MSD_".jpg")>-1 D
 .W "<div align=""center"">",!
 . W "<img src="""_$$WEB^W3MAIN_"w3reklama"_MSD_".jpg"" >",!
 .W "</div>",!
 ;
 I $G(JB0),$G(JB),+$G(JB0)'=+$G(JB) D
 .K ^[$$^W3MAIN]TMPORD(JB0)
 .M ^[$$^W3MAIN]TMPORD(JB0)=^[$$^W3MAIN]TMPORD(JB)
 .K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
 ;
INIT ;
 I $G(%ARG("RCV"))=9 S W3FAXHTM=1,PC=1 ; ***
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W3ORDVW")
 ;
 D ^%W1ARG
 ;
 I '$G(W3ORDLS) S MSD=$$GET^%W1PRM("MSD")
 ;
 D PUT^%W3DEB("W3ORDVW","PC=PC & W3ORDLS=W3ORDLS & ARG=[%ARG")
 ;
 S CODE=$$GET^%W1PRM("CODE")
 I CODE["!" S CODE=$P(CODE,"!")
 I 'CODE S CODE=""
 ;
 I $G(W3ORDLS) N JB S JB=+W3ORDLS D  D PUT^%W1PRM("ORD",+W3ORDLS)
 .S MSD=$G(@$$^W3ORD(+W3ORDLS)@(+W3ORDLS,"MSD"))
 ;
 D PUT^%W3DEB("W3ORDVW","MSD=MSD")
 I 'MSD Q
 D GL
 S (MEDAT,ADDAT,ORD)=""
 ;
 I $G(W3ORDLS) D
 .S MEDAT=$P(W3ORDLS,"~",2)
 .S ADDAT=$P(W3ORDLS,"~",3)
 .S CODE=$P(W3ORDLS,"~",4)
 .S ORD=$P(W3ORDLS,"~",5)
 .S W3ORDLS=+W3ORDLS
 .K @$$^W3TMPORD@(JB)
 .M @$$^W3TMPORD@(JB)=@$$^W3ORD(W3ORDLS)@(W3ORDLS)
 .S @$$^W3TMPORD@(JB,"BACK")=2
 ;
 D PUT^%W3DEB("W3ORDVW","CODE=CODE")
 Q
 ;
 ;
DLVWEB(STAM) ;
 Q $$DLVWEB^W4DLVCSR
 ;
 ;
PAYM ;
 W "<a name=""PAY""></a>",!
 D W("  <td width="""_$S($$PICUL^W3PRM!$$DLVWEB:49,1:40)_"%"" id=""paymcomment"" name=""paymcomment"" colspan=5 style=""font-size:"_$$^W3FSZ(12)_";text-align:center;color:"_$$FGSUGT^W3CSS_""">"_$$^%W1DICT("CHOICEPAYMENT"))
 D W(" <br><span style=""color:"_$$FGENCR^W3CSS_";font-size:"_$$^W3FSZ(11)_";"_$$FONTFM^W3CSS_""">"_$$^%W1DICT("ALLPAYDATAENCRYPTED")_"</span>")
 D W("  </td>")
 ;
 I +$$OUTCA^W3PRM=0 D
 .D W("  <td id=""piculid"" width=""8%"" align=""center"" style=""font-size:"_$$^W3FSZ(11)_""">")
 .D W(" <input type=""button"" value="""_$$^%W1DICT("PICUL")_""" class=""btn"" style=""font-size:"_$$^W3FSZ(14)_""" id=""picul"" onClick=""Pay('"_JB_"','"_$$GETP^%W1PRM("CODE")_"')""/>")
 .D W("  </td>")
 D W("</tr>")
 ;
 D W("<tr>")
 D W("   <td>")
 ;;D W("    "_$$SP_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S(PC=1.5:"checked=""checked""",1:"")_" />")
 D W("    "_$$SP_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S($G(COMPRVIEW):"checked=""checked""",1:"")_" />")
 D W("   </td>")
 ;
 I $$PICUL(JB),+$$OUTCA^W3PRM=0 G EPAYM
 ;
 I $$NOCRCARD=1 D W("   <td width=""10%"">&nbsp;</td>")
 D W("   <td width=""10%"" name=""tdcash"" id=""cashid"">")
 I $$NOCASH D W(" <p style=""visibility:hidden"">")
 D W("     "_$$^%W1DICT("CASH")_"<input type=""radio"" class=""radiovw"" id=""cash"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=1:" checked=""checked""",1:"")_" onClick=""SubmPay()""/>")
 I $$NOCASH D W(" </p>")
 D W("   </td>")
 ;
 D W("   <td width="""_$S($$NOCHECK:"1%",1:"10%")_""" id=""checkid"">&nbsp;")
 I $$NOCHECK D W(" <p style=""visibility:hidden"">")
 D W("     "_$$^%W1DICT("CHECK")_"<input type=""radio"" class=""radiovw"" id=""check"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=2:" checked=""checked""",1:"")_" onClick=""SubmPay()""")
 D W("  />")
 I $$NOCHECK D W(" </p>")
 D W("   </td>")
 ;
 I +$$OUTCA^W3PRM=0 D 
 .D W("   <td id=""crcardid"" width="""_$S($$NOCRCARD=1:"1%",1:"15%")_""">")
 .I $$NOCRCARD'=1 D W(" "_$$^%W1DICT("CRCARD")_"<input type=""radio"" class=""radiovw"" id=""crcard"" name=""payment"" "_$S($$CODTS^W3HZMST(JB)=3&'$$GET^%W1PRM("REST"):" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .D W("   </td>")
 ;
 I $$OUTCA^W3PRM D
 .D W("  <td id=""payments"" align=""center"" style=""font-size:"_$$^W3FSZ(11)_""">")
 . ;;D W($$^%W1DICT("PAYMENTS")_" <input type=""radio"" class=""radiovw"" id=""picul"" name=""payment"" onClick=""Pay('"_JB_"','"_$$GETP^%W1PRM("CODE")_"')""/>")
 . N PAYM S PAYM="PAYMENTS"
 . I $D(@$$^W3ORD@(JB)) S PAYM="SHOWPAYMENTS"
 . D W("<button style=""font-size:"_$$^W3FSZ_""" onClick=""Pay('"_JB_"','"_$$GETP^%W1PRM("CODE")_"')"">"_$$^%W1DICT(PAYM)_" </button>")
 .D W("  </td>")
 ; 
 I $$CIBUS D
 .D W("   <td align=""center"" id=""cibusid"" >")
 .D W("<img src=""w3sfsodexo.jpg"" width=""60px"" /><input type=""radio"" class=""radiovw"" id=""cibus"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=5:" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .D W("   </td>")
 ;
 I $$TENBIS D
 .D W("   <td align=""center"" id=""tenbisid"" >")
 .D W($$^%W1DICT("TENBIS")_" <input type=""radio"" class=""radiovw"" id=""tenbis"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=7:" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .D W("   </td>")
 ;
 I '$$NOASR^W3PRM D
 .D W("   <td width=""12%"" style=""text-align:center"" id=""creditid"">")
 .I $$ISCR^W3L(CODE)!$$ISCR^W3L(CODE,$$GLA^W3L),'$$MKRZAR D
 ..D W("     "_$$^%W1DICT("CREDIT")_"<input type=""radio"" class=""radiovw"" id=""credit"" name=""payment"""_$S($$CODTS^W3HZMST(JB)=4:" checked=""checked""",1:"")_" onClick=""SubmPay()"" />")
 .I '$$ISCR^W3L(CODE),'$$ISCR^W3L(CODE,$$GLA^W3L),'$$MKRZAR D W("&nbsp;")
 .D W("</td>")
 ;
EPAYM ;
 D W("</tr>")
 D W("</table>")
 D W("</div>")
 ;
 I $$CIBUS D
 .D W("<div id=""divcib"" style=""position:absolute;left:5px;visibility:hidden"">")
 .D W("<table dir=""RTL"" align=""left""><tr>")
 .D W("<td>"_$$^%W1DICT("COMPANYNUMBER")_" : <input type=""text"" id=""cibcompany"" size=""5"" maxlength=""5"" />&nbsp;</td><td>&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : <input type=""text"" id=""cibcard"" /> </td>")
 .D W("</tr></table>")
 .D W("</div>")
 
 I $$TENBIS D
 .D W("<div id=""divtnb"" style=""position:absolute;left:5px;visibility:hidden"">")
 .D W("<table dir=""RTL"" align=""left""><tr>")
 .;;D W("<td>"_$$^%W1DICT("COMPANYNUMBER")_" : <input type=""text"" id=""tnbcompany"" size=""5"" maxlength=""5"" />&nbsp;</td><td>&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : <input type=""text"" id=""tnbcard"" /> </td>")
 .D W("<td>&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : <input type=""text"" id=""tnbcard"" /> </td>")
 .D W("</tr></table>")
 .D W("</div>")
 ;
 D W("<div id=""divca"" style=""left:"_$S($$^%W1DIR="RTL":"5px",1:"40%")_";visibility:hidden"">")
 D W("<table dir="""_$$^%W1DIR_""" ><tr>")
 D W(" <td>"_$$^%W1DICT("CREDITCARDNUMBER")_" : <input type=""text"" id=""caid"" size=""19"" maxlength=""19"" />&nbsp;</td>")
 D W(" <td>&nbsp;"_$$^%W1DICT("UNTILMMYY")_" : ")
 D SELMMYY D W("</td>")
 D W(" <td>&nbsp;CVV : <input type=""text"" id=""cacvv"" size=""2"" maxlength=""4"" />&nbsp;</td>")
 D W(" <td>&nbsp;"_$$^%W1DICT("IDNUMBER")_" : <input type=""text"" id=""catz"" size=""9"" maxlength=""9"" />&nbsp;</td>")
 D W("</tr></table>")
 D W("</div>")
 Q
 ;
 ;
BUTTONSPC1(CLASS) ;
 D W("<td>&nbsp;</td>")
 D W("<td width=""10%"">")
 D W(" <input type=""button"" name=""update"" id=""updid"" class="""_CLASS_""" value="""_$$^%W1DICT("BACK")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Back2Ord("_JB0_",'TblOrdVw')"" />")
 D W("</td>")
 D W("<td width=""10%"">")
 I '$$PICUL(JB)!$D(@$$^W3ORD(+$$HZ)@(+$$HZ)) D
 .D W(" <input type=""button"" name=""subm"" id=""submid"" class="""_CLASS_"""")
 . D W(" value="""_$$^%W1DICT("SUBMIT")_""" style=""width:100%;font-size:"_$$^W3FSZ_"""")
 . D W($$CLICKPC1_" />")
 D W("</td>")
 Q
 ;
CLICKPC1(STAM) ;
 N GL D GL
 Q " onClick=""SaveOrd("_JB0_",'TblOrdVw','"_$S($D(@GL@(JB,"NOCODE")):"",1:$G(CODE))_"')"""
 ;
BUTTONSPC2(CLASS) ;
 D W("<td>&nbsp;</td><td><input type=""button"" name=""copy"" id=""cpid"" class="""_CLASS_""" value="""_$$^%W1DICT("COPY2ORD")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Copy2Ord("_JB0_",'TblOrdVw')"" /></td>")
 D W("<td>")
 I $G(ADDAT) D
 .D W("<input type=""button"" name=""back"" id=""backid"" class="""_CLASS_""" value="""_$$^%W1DICT("BACK")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" "_$$CLICKPC2_" />")
 D W("</td>")
 Q
 ;
CLICKPC2(STAM) ;
 Q " onClick=""Back2OrdList('"_$G(JB0)_"','"_$G(CODE)_"','"_PC_"')"""
 ;
 ;
BUTTONSPC3(CLASS) ;
 I '$$^W3HZMH($$HZ) D
 .I $$DLVWEB,$G(%ARG("DLVFND"))=2 D  Q
 ..D W("<td><input type=""button"" name=""copy"" id=""copyid"" ")
 ..D W("class="""_CLASS_""" value="""_$$^%W1DICT("COPY2NEWORDER")_""" ")
 ..D W("style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Copy('"_JB_"')"" ")
 ..D W("/></td>")
 .D W("<td>&nbsp;</td>")
 ;
 I $$^W3HZMH($$HZ) D
 .N ST S ST="<td "_$$INV^%W1ALIGN_" >"
 .
 .I $$DLVWEB D
 ..S ST=ST_"<input name=""print"" id=""sendid"" class="""_CLASS_""""
 ..S ST=ST_" value="""_$$^%W1DICT("MOVE")_""""
 ..S ST=ST_" style=""cursor:pointer;width:40%;font-size:"_$$^W3FSZ_""""
 ..S ST=ST_" onClick=""SendPrcOfr('"_$$HZ_"')"" />"
 .
 .S ST=ST_"</td>"
 .D W(ST)
 ;
 ;
 D W("<td "_$$ALIGN_">")
  D W(" <input type=""button"" name=""print"" id=""printid"" class="""_CLASS_""" value="""_$$^%W1DICT("PRINT")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Print()"" onBeforePrint=""BeforePrint()"" />")
 D W("</td>")
 ;
 I '$G(ADDAT) D W("<td>&nbsp;</td>") Q
 ;
 D W("<td "_$$ALIGN_" >")
 D W(" <input type=""button"" name=""back"" id=""backid"" class="""_CLASS_"""")
 D W("  value="""_$$^%W1DICT("BACK")_"""")
 D W("  style=""width:100%;font-size:"_$$^W3FSZ_";""")
 D W($$CLICKPC3_" />")
 D W("</td>")
 Q
 ;
 ;
CLICKPC3(STAM) ;
 Q " onClick=""Back2OrdList('"_$G(JB0)_"','"_$G(CODE)_"','"_(PC_"~"_$G(MEDAT)_"~"_$G(ADDAT))_"~"_$G(ORD)_"')"" "
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(W3ORDLS) N JB S JB=+W3ORDLS
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CD(A) ;
 N NM
 S NM=$P(A,"~",2)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 Q MH
 ;
QN(A) ;
 N QN
 S QN=$P(A,"~",5)
 I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNR(A) ;
 Q $$QNMH^W3HZMST(A)
 ;
QNPIZZA(A) ;
 Q $$QNMH^W3HZMST(A)
 ;
 N QN S QN=$$QN(A) I QN'["+" Q "&nbsp;"
 N ST S ST=""
 N J F J=1:1:4 D
 .S ST=ST_$S($E(QN,J)="+":$E(QN,J),1:"<span style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;-</span>")_"&nbsp;"
 Q ST
 ;
SUM(A) Q $J($$QNR(A)*$$MH(A),2,2)
 ;
TOT(STAM) ;
 N AHUZ
 ;;N AHUZ S AHUZ=$$AHUZ^W3HZTFR
 ;;I $G(W3ORDLS) S AHUZ=$$AHUZ^W3HZMST(JB)
 S AHUZ=$$AHUZ^W3HZMST(JB)
 N TOT S TOT=$$TOTORD
 N TOTD S TOTD=$$TOTORD("D")
 S DMS=$$DMSHMSD^W3HZMST(JB)
 N HN S HN=$$HNH^W3HZMST(JB)
 ;;I AHUZ,'$G(W3ORDLS) S HN=TOTD*AHUZ*.01
 S TOT=TOT+DMS-HN
 Q $J(TOT,2,2)
 ;
TOTORD(PRM) ;
 Q $$TOTORD^W3HZMST(JB,$G(PRM))
 ;
FIRSTNAME(STAM) ;
 N NM,FN S NM=$$SPA^%L1FRM($$NAME^W3HZMST(JB))
 I $$^%W1DIR="RTL" S FN=$$CLWEB^%L1FRM($P(NM," ",2))
 I $$^%W1DIR="LTR" S FN=$$CLWEB^%L1FRM($P(NM," "))
 I FN="" S FN="NONAME"
 Q FN
 ;
LASTNAME(STAM) ;
 N NM,FN S NM=$$SPA^%L1FRM($$NAME^W3HZMST(JB))
 I $$^%W1DIR="RTL" S FN=$$CLWEB^%L1FRM($P(NM," ",1))
 I $$^%W1DIR="LTR" S FN=$$CLWEB^%L1FRM($P(NM," ",2))
 I FN="" S FN="NONAME"
 Q FN
 ;
NMTD(SH) ;
 Q "QN"_SH
NMTDI(SH) ;
 Q "QNID"_SH
 ;
SHOWTS(HZ,GL) ;
 I '$D(GL) D GL
 N JB S JB=HZ
 N MKBN S MKBN=$G(@$$^W3ORD(HZ)@(HZ,"MKBN"))
 ;;I $$^W3HZMH(HZ) Q $$^%W1DICT("HZMH")_" "_$G(@$$^W3ORD(HZ)@(HZ,"HZRSD"))_" "_$$^%W1DICT("FROM")_" "_$$H2U^%L1FRM($P(MKBN,";"))
 ;
 N CODTS S CODTS=$$CODTS^W3HZMST(HZ,GL)
 ;
 Q $$^W3SHOWTS(CODTS)
 ;
DLVTERM(STAM) ; -- SAVE PHONE ORDER
 N DLV
 S DLV=$$^%W1SsID("DLVWEB")
 D SETMKR^W3MENUBT
 S MKBL=$$GETP^%W1PRM("MLZR")
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I 'MKBL,$G(^[$$^W3MAIN]TMPMKBL(MYDVN)) S MKBL=^(MYDVN)
 ;
 I MKBL D
 .D PUT^W3HZMST(JB,"MKBL",MKBL)
 ;
 N GL D GL
 I '$D(@GL@(JB,"HZRSD")) S @GL@(JB,"HZRSD")=""
 D TERM
 Q DLV
 ;
 ;
TERM ;
 N (JB,JB0,%ARG,%REM,DLV,MEMSHAK,OK)
 N ORD S ORD=JB
 I $G(DLV) S ORD=$P(DLV,";")
 D PUT^%W1PRM("ORD",ORD)
 ;
 D PUT(JB,ORD) I OK'=1 Q
 ;
 D CODE
 ;
 I $L($TR(CODE,"-! ","")),'$$D^W3L($TR(CODE,"!- ","")) D
 .N CODA S CODA=$TR(CODE,"!- ","") Q:'CODA
 .N GLKHA S GLKHA=$$GLA^W3L
 .S @$$GLA^W3L@(CODA)=$$NAME^W3HZMST(JB,GL)
 .D PUT^W3L(CODA,$$STREET^W3HZMST(JB,GL),"KTV",GLKHA)
 .D PUT^W3L(CODA,$$FLOOR^W3HZMST(JB,GL),"KOMA",GLKHA)
 .D PUT^W3L(CODA,$$FLAT^W3HZMST(JB,GL),"DIRA",GLKHA)
 .D PUT^W3L(CODA,$$HOME^W3HZMST(JB,GL),"BAIT",GLKHA)
 .D PUT^W3L(CODA,$$ENTRANCE^W3HZMST(JB,GL),"CNISA",GLKHA)
 .D PUT^W3L(CODA,$$CITY^W3HZMST(JB,GL),"IR",GLKHA)
 .D PUT^W3L(CODA,$$PELE^W3HZMST(JB,GL),"PELE",GLKHA)
 .D PUT^W3L(CODA,$$NMB^W3HZMST(JB,GL),"TELB",GLKHA)
 .D PUT^W3L(CODA,$$COMMENT^W3HZMST(JB,GL),"CMNT",GLKHA)
 ;
 S OK=1
ENDT Q
 ;
 ;
CODE ;
 D GL
 S CODE=$$CODE^W3HZMST(JB,GL)
 I CODE="" S CODE=$$GET^%W1PRM("CODE")
 S CODE=$TR(CODE,"-","")
 ;
 I CODE="" D
 .S NMB=$$NMB^W3HZMST(JB,GL) Q:NMB=""
 .I $$LKH^W3L(NMB)'="" Q
 .S CODE=$TR(NMB,"-","")
 Q
 ;
 ;
PUT(JB,ORD) ;
 N (JB,JB0,%ARG,%REM,ORD,DLV,MEMSHAK,OK)
 D GL S OK=0
 I '$D(@GL@(JB)) S OK="NORD" Q
 I $D(@GL@(JB))'=11 S OK="NOFULLORD" Q
 ;
 S A=$G(@GL@(JB))
 S MSD=$G(@GL@(JB,"MSD"))
 S DBL=$$DOUBLE(JB,A,+$H,MSD)
 I DBL D  S OK="DOUBLE" Q
 .M ^|$$^W3MAIN|TMPDBL(JB)=@GL@(JB)
 .S ^|$$^W3MAIN|TMPDBL(JB,"DOUBLE")=DBL
 .K @GL@(JB)
 ;
 K @$$^W3ORD(ORD)@(ORD)
 M @$$^W3ORD(ORD)@(ORD)=@GL@(JB) ; --- ^TMPORD --> ^W3ORD
 S @$$^W3ORD(ORD)@(ORD,"NEW")=$H
 ;
 ;;S ^AA("MSD0",ORD)=MSD
 ;
 S MSDFROM=""
 S HZMKR=""
 I $G(%ARG("HZMKR")) S HZMKR=%ARG("HZMKR")
 ;
 I $$^W4MM D
 .S MSDFROM=$$GETP^%W1PRM("MSD")
 .S @$$^W3ORD(ORD)@(ORD,"MSDFROM")=MSDFROM
 ;
 I 'MSD S MSD=$$GETP^%W1PRM("MSD")
 ;;S ^AA("MSD1",ORD)=MSD
 ;
 ;;S ^AA("MRKTO",ORD)=$$GETP^%W1PRM("MRKTO")
 ;
 I $$DLVWEB,'$D(@$$^W3ORD@(ORD,"MSDTO")) D
 .I $$GETP^%W1PRM("MRKTO") S MSD=$$GETP^%W1PRM("MRKTO")
 .I MSD'["!" D
 ..N MSDPRT S MSDPRT=$$MSDPRT(ORD,$$^W3ORD)
 ..I MSDPRT S MSD=MSDPRT
 .I MSD["!" S MSD=+MSD
 .D KILL^%W1PRM("MRKTO")
 ;
 ;;S ^AA("MSD3",ORD)=MSD
 ;
 D SETMSD(ORD,MSD)
 ;
 I $P($G(DLV),";",5) D
 .S @$$^W3ORD(ORD)@(ORD,"SNIF")=$P($G(DLV),";",5)
 ;
 N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 ;
 I $$DLVWEB,MKBL D
 .S @$$^W3ORD(ORD)@(ORD,"MKBL")=MKBL
 .S @$$^W3ORD(ORD)@(ORD,"MKBN")=$$^W4NAME(MKBL)
 ;
 I $$DLVWEB D
 .S @$$^W3ORD(ORD)@(ORD,"DLVWEB")=1
 .S $P(@$$^W3ORD(ORD)@(ORD),"~",51)=98
 ;
 D CODE
 ;
 D
 .N N S N="" F  S N=$O(@$$^W3ORD(JB)@(JB,N)) Q:N=""  D
 ..I N["COUP:",CODE D
 ...S MVC=$P(N,":",2) Q:MVC=""
 ...S @$$^W4GL("W3COUP")@(MVC,CODE)=$H
 ;
 I $G(DLV)="" S $P(@$$^W3ORD(ORD)@(ORD),"~",11)=$$TOT
 ;
 I $G(MSD),$$DEMO^W3PRM(MSD) S @$$^W3ORD(ORD)@(ORD,"DEMO")=$H
 ;
 N HZMHPAR S HZMHPAR=$$HZMH^W3PRM
 ;
 I $$^W3HZMH(JB),'$$^W3PRCOFR(JB),HZMHPAR D
 .N IND S IND=$O(@$$^W3ORD(ORD)@(ORD,99999),-1)+1
 .S @$$^W3ORD(ORD)@(ORD,IND)="0~"_HZMHPAR_"~"_$$SHEM^W3P(HZMHPAR)_"~~1"
 ;
 I $P($G(DLV),";",4) S @$$^W3ORD(ORD)@(ORD,"HZRSD")=$P(DLV,";",4)
 ;
 I ORD>0,'$$CLOSE^W3HZMST(ORD) D
 .N SOURCEORD S SOURCEORD=$G(@$$^W3ORD@(ORD,"MIMUSHPZM"))
 .I SOURCEORD D
 ..S @$$^W3ORD@(SOURCEORD,"PIZUIM","ORD")=ORD
 ..N IND S IND=$$INDPZM^W3PIZUIM(SOURCEORD) Q:IND=""
 ..S $P(@$$^W4GL("W3PIZUIM")@(IND,SOURCEORD),"\",3)=ORD
 ;
 D ^%S2GLSV($$^W3ORD_"("_ORD_")",$$^W3FGIB(MSD))
 ;
 M @$$^W3ORDGIB@(ORD)=@$$^W3ORD(ORD)@(ORD)
 ;
 D SETLINK
 ;
 ;;I '$$^W4MM,$$SNDLATE^W3PRM(MSD)?1N.E,$P($H,",",2)\3600'<$$SNDLATE^W3PRM(MSD) D  ; *** LEV 15/01/25 --> COMMENT
 .N MSG2HOST S MSG2HOST=""
 .N OK S OK=$$SNDMAIL^W3FAXHTM(ORD,MSD) S:OK=1 OK="OK"
 ;
 I $L($G(DLV)) D SNDDLV(MSD,ORD,DLV) G ENDT
 ;
 I $D(MEMSHAK),'$$AUTOSEND^W3PRM(ORD) D  G ENDT
 .D ^W3FAXHTM(ORD,MSD)
 .I $P($G(@$$^W3ORD(ORD)@(ORD)),"\")=4 S OK=1
 ;
 S OK=1
 Q
 ;
 ;
SETMSD(ORD,MSD)
 S @$$^W3ORD(ORD)@(ORD,"MSD")=MSD
 S @$$^W3ORD(ORD)@(ORD,"MSDN")=$$MSDN^W3R(MSD)
 Q
 ;
SETLINK ;
 N DT,DTR S DT=$$DTHZ^W3ORDLS(JB,GL)
 S DTR=$$^%L1DC($P($$DATCB^W3HZMST(JB,GL),"  "),3)
 ;
 N ASM,ASMU S ASM=$$HZMLAK^W3HZMST(JB,GL),ASMU=""
 I ASM["/" S ASMU=$P(ASM,"/",2)
 I ASMU D
 .S ^[$$^W3MAIN]W3LINKU(ASMU)=ORD
 ; 
 S ASM=$$SPA^%L1FRM(ASM)
 I $L(ASM) S ^[$$^W3MAIN]W3HZMLAK(+$G(MSD),ASM)=ORD
 ;
 S ^[$$^W3MAIN]W3LINK(ORD)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_$G(HZMKR)
 S ^[$$^W3MAIN]W3LINKO(ORD)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_$G(HZMKR)
 S ^[$$^W3MAIN]W3LINKD(DT,ORD)=MSD
 ;
 I $G(MSDFROM) D
 .S ^[$$^W3MAIN]W3LINKD(DT,ORD)=MSD_"~"_MSDFROM_"~"_$G(HZMKR)
 ;
 I $G(HZMKR),$D(@$$^W4GL("W4LINK")@(HZMKR)) D
 .S $P(^(HZMKR),"~",6)=ORD
 .S @$$^W4GL("W4LINKO")@(HZMKR)=$G(@$$^W4GL("W4LINK")@(HZMKR))
 .I $D(@$$^W4GL("W4LINKD")@(DT,HZMKR)) D
 ..S $P(@$$^W4GL("W4LINKD")@(DT,HZMKR),"~",3)=ORD
 ;
 I DTR S ^[$$^W3MAIN]W3LINKDR(DTR,ORD)=MSD D
 .I $G(MSDFROM) D
 ..S ^[$$^W3MAIN]W3LINKDR(DTR,ORD)=MSD_"~"_MSDFROM_"~"_$G(HZMKR)
 ;
 I $L(CODE),$L(MSD) D
 .S ^[$$^W3MAIN]W3LINKI(CODE,MSD,ORD)=$H
 .S ^[$$^W3MAIN]W3LINKR(MSD,ORD)=$H
 ;
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINK("_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKD("_DT_","_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKI("""_CODE_""","_MSD_","_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKR("""_MSD_""","_ORD_")",$$^W3FGIB(0))
 Q
 ;
 ;
DELLINK(ORD) ;
 N GL S GL="^[$$^W3MAIN]W3ORD"
 N DT,DTR S DT=$$^%L1DC($$DAT^W3HZMST(ORD,GL),3)
 S DTR=$$^%L1DC($P($$DATCB^W3HZMST(ORD,GL),"  "),3)
 N CODE S CODE=$$NMB^W3HZMST(ORD,GL) 
 N MSD S MSD=$$MSD^W3HZMST(ORD,GL)
 ;
 K ^[$$^W3MAIN]W3LINK(ORD)
 K ^[$$^W3MAIN]W3LINKO(ORD)
 K ^[$$^W3MAIN]W3LINKD(DT,ORD)
 ;
 ;
 I DTR K ^[$$^W3MAIN]W3LINKDR(DTR,ORD)
 ;
 I $L(CODE),$L(MSD) D
 .K ^[$$^W3MAIN]W3LINKI(CODE,MSD,ORD)
 .K ^[$$^W3MAIN]W3LINKR(MSD,ORD)
 ;
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINK("_ORD_")",$$^W3FGIB(0),"K")
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKD("_DT_","_ORD_")",$$^W3FGIB(0),"K")
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKI("""_CODE_""","_MSD_","_ORD_")",$$^W3FGIB(0),"K")
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKR("""_MSD_""","_ORD_")",$$^W3FGIB(0),"K")
 Q
 ;
 ;
ZPRN ;
 N TXT
 S TXT=$$^%W1DICT("PRINT")_" ?"
 I $$^%W1LNG="E" W TXT Q
 I $$^%W1LNG="H" D  Q
 .S TXT=$$INV^%L1FRM(TXT)
 .W $$^%W1TXTJS(TXT)
 Q
 ;
SAVECMNT(CMNT) ;
 N JB S JB=$P(CMNT,"~"),CMNT=$P(CMNT,"~",2,300)
 D PUT^%W3DEB("W3ORDVW-SAVECMNT","CMNT=CMNT")
 N I F I=1:1:$L(CMNT,"~") D
 .N J,K S K=0 F J=1:1 Q:'$D(^[$$^W3MAIN]TMPORD(JB,J))  I $D(^[$$^W3MAIN]TMPORD(JB,J,"CM")) S K=K+1 D
 ..I K=I D
 ...I $$^%W1DIR="RTL" S $P(^[$$^W3MAIN]TMPORD(JB,J),"~",7)=$$INVH^%L1FRM($P(CMNT,"~",I)) Q
 ...S $P(^[$$^W3MAIN]TMPORD(JB,J),"~",7)=$P(CMNT,"~",I)
 Q
 ;
TDHR ;
 D W("<tr>")
 N J F J=1:1:CC D W("<td><hr></td>")
 D W("</tr>")
 Q
 ;
CMTD ;
 D W("   <td id=""cmtd"_I_""" class=""hdgr"" style=""font-size:"_$$^W3FSZ_";text-align:center"" >&nbsp;")
    I PC<2,'$G(W3FAXHTM) D
       .D W("<input type=""text"" value="""_$$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))_"""")
       .D W(" id=""CM"_I_""" name=""CM"_I_""" class=""vwcmnt"" size=""32"" maxlength=""36"" >&nbsp;")
       .S ^[$$^W3MAIN]TMPORD(JB,I,"CM")=""
    I PC>1.9!$G(W3FAXHTM) D
       .W $$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))
 D W("   </td>")
 Q
 ;
HDMSD(MSD) ;
 ;;S $ZGBLDIR=$$^W3UCI(MSD)
 N PRLOGO S PRLOGO=0
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3hdfax"_MSD_".gif")>-1 S PRLOGO=1
 I $$SFC^W3CSS,'$G(W3FAXHTM) D ^W3SFHD W "<br ><br ><br ><br >" Q
 I $G(W3FAXHTM),PRLOGO Q  ; LOGO SHEL FAX
 ;
 I $$MMCC^W4PRM,$$GETP^%W1PRM("MRKTO") S MSD=$$GETP^%W1PRM("MRKTO")
 ;
 D W("<table width=""100%"" id=""TblHeadMsd"" name=""TblHeadMsd"" cellspacing=""0"" style=""font-size:"_$$^W3FSZ_";color:"_$$FGHDMSD^W3CSS_""" dir="""_$$^%W1DIR_""">")
 D W("<tr>")
   D W("<td width=""5%"">&nbsp;</td>")
   D W("<td style=""font-size:"_$$^W3FSZ(18)_""">"_$$NAME^W3MSD(MSD)_"</td>")
   D W("<td>&nbsp;</td>")
   I $G(W3FAXHTM) D W("</tr><tr><td>&nbsp;</td>")
   I $L($$ADDR^W3MSD(MSD)) D W("<td style=""text-align:center"" dir="""_$$^%W1DIR_""">"_$$ADDR^W3MSD(MSD)_"</td>")
   I $G(W3FAXHTM) D W("<td width=""20%"">&nbsp;</td>")
   ;
   I '$G(W3FAXHTM) D
   .D W("<td>&nbsp;</td>")
   .D W("<td>"_$$^%W1DICT("TEL")_" "_$$TEL(MSD)_"</td>")
   .D W("<td width=""5%"">&nbsp;</td>")
   .I '$D(PC) D W("<td width=""10%"">&nbsp;</td>") Q
   .I PC<2 D BUTTONSPC1("hdvw1")
   .I PC=2 D BUTTONSPC2("hdvw1")
   .I PC=3 D BUTTONSPC3("hdvw1")
 D W("</tr>")
 D W("</table>")
 Q
 ;
TEL(MSD) ;
 N TEL,MSL
 S MSL=$$GET^%W1PRM("MSL")
 S TEL="<span dir=""LTR"" style=""color:"_$$FGHDMSD^W3CSS()_""" >"_$$TEL^W3MSD(MSD)_"</span>"
 I MSL S TEL="</td><td>057-5000-500</td><td>"_$$^%W1DICT("SHLUHA")_"</td><td>"_MSL
 Q TEL
 ;
SETPAYM(PARM) ;
 N SUGT,HR
 D PUT^%W3DEB("W3ORDVW","PARM=PARM")
 S SUGT=$P(PARM,"~")
 S HR=$P(PARM,"~",2)
 D PUTCODTS(SUGT)
 Q
 ;
PUTCODTS(SUGT) ;
 I $$CLOSE^W3HZMST(JB) Q
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",21)=SUGT
 Q
 ;
SETCIBUS(PRMCIB) ;
 N CIBCOMP,CIBCARD
 D PUT^%W3DEB("W3ORDVW","PRMCIB=PRMCIB")
 S CIBCOMP=$P(PRM,";")
 S CIBCARD=$P(PRM,";",2)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",45)=CIBCOMP
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",46)=CIBCARD
 Q
 ;
SETTENBIS(PRMTNB) ;
 N TNBCOMP,TNBCARD
 D PUT^%W3DEB("W3ORDVW","PRMTNB=PRMTNB")
 S TNBCOMP=$P(PRM,";")
 S TNBCARD=$P(PRM,";",2)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",52)=TNBCOMP
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",53)=TNBCARD
 Q
 ;
SETCREDIT(PRMCRED) ;
 N CREDCARD
 D PUT^%W3DEB("W3ORDVW","PRMCRED=PRMCRED")
 S CREDCARD=$P(PRM,";",1)
 S CREDMM=$P(PRM,";",2)
 S CREDYY=$P(PRM,";",3)
 S CREDTZ=$P(PRM,";",4)
 S CREDCVV=$P(PRM,";",5)
 I $L(CREDMM)=1 S CREDMM="0"_CREDMM
 I $L(CREDYY)=4 S CREDYY=$E(CREDYY,3,4)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",48)=CREDCARD
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",49)=CREDMM_"/"_CREDYY
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",50)=CREDTZ
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",61)=CREDCVV
 Q
 ;
W(TXT)
 W TXT I '$D(W3FAXHTM("SNDMAIL")) W !
 Q:'$G(W3FAXHTM)
 N IND S IND=$O(^[$$^W3MAIN]TMPFAX(JB,99999),-1)+1
 S ^[$$^W3MAIN]TMPFAX(JB,IND)=$E(TXT,1,800)
 Q
 ;
CIBUS(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("CIBUS")) Q 1
 Q 0
 ;
CIBDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("COMPANYNUMBER")_" : "_$$CIBCOMP^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : "_$$CIBCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
COUPONPHONE(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("COUPONPHONE")) Q 1
 Q 0
 ;
TENBIS(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("10BIS")) Q 1
 Q 0
 ;
TNBDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("COMPANYNUMBER")_" : "_$$TNBCOMP^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : "_$$TNBCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
CREDDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$CREDCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("UNTILMMYY")_" : "_$$CREDMMYY^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("IDNUMBER")_" : "_$$CREDTZ^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;CVV2 : "_$$CREDCVV2^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
PCHZ(HZ) ;
 I '$G(HZ) Q 1
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) Q 1
 I $D(@$$^W3ORD(HZ)@(HZ,"D")) Q 1
 I $D(@$$^W3ORD(HZ)@(HZ,"PC",REM)) Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD(HZ)),3)<$H Q 1
 Q 0
 ;
GETSOUND(HZ) ;
 I '$G(HZ) Q 1
 N JB S JB=HZ
 I $D(@$$^W3ORD(HZ)@(HZ,"SOUND",$$REM)) Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD(HZ)),3)<$H Q 1
 Q 0
 ;
SETPC(HZ) ;
 I '$G(HZ) Q
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 S @$$^W3ORD(HZ)@(HZ,"PC",REM)=""
 Q
 ;
SETSOUND(HZ) ;
 I '$G(HZ) Q 0
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 S @$$^W3ORD(HZ)@(HZ,"SOUND",REM)=""
 Q 1
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
SELMMYY ;
 N I,YY
 D W("<select id=""mmid"" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(">")
 F I=1:1:12 D W("<option value="""_$TR($J(I,2)," ",0)_""">"_$TR($J(I,2)," ",0)_"</option>")
 D W("</select>&nbsp;")
 S YY=$ZD($H,"YY")
 D W("<select id=""yyid"" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(" >")
 F I=1:1:10 D
 .D W("<option value="""_(2000+YY+I-1)_""""_$S(I=2:" selected=""selected""",1:"")_" >"_(2000+YY+I-1)_"</option>")
 D W("</select>")
 Q
 ;
NOM(STAM) ;
 I $G(W3ORDLS("NOM")) Q W3ORDLS("NOM")
 Q $$HZ
 ;
HZ(STAM) ;
 N HZ S HZ=$S($G(W3ORDLS):W3ORDLS,1:JB)
 ;;I $G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) Q ^("HZRSD")
 Q +HZ
 ;
MKRZAR(STAM) ;
 I $$MKR^W3HZMST(JB)=2 Q 1
 Q 0
 ;
NOCASH(STAM) ;
 I $$OUTCA^W3PRM Q 1
 I $$GET^%W1PRM("REST")!$$NOCASH^W3PRM Q 1
 Q 0
 ;
NOCHECK(STAM) ;
 I '$$ISCH^W3L(CODE)!$$NOCHECK^W3PRM Q 1
 Q 0
 ;
NOCRCARD(STAM) ;
 Q 0  ; -- 12/04/22
 Q +$$NOCRCARD^W3PRM
 ;
PIC(CD) ;
 S W3GETPIC("MSD")=MSD
 D W("<td align=""center""><img src="""_$$PICTURE^W3HZPRTN(CD,"pic")_""" width=""100"" height=""67"" onMouseOver=""openPic1('"_CD_"','"_MSD_"')"" onMouseOut=""closePic1()"" ></td>")
 Q
 ;
LASTTD ;
 I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D W("<td>&nbsp;</td>")
 I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D W("<td>&nbsp;</td>")
 Q
 ;
SNDDLV(MSD,ORD,DLV) ;
 ;
 I $G(DLV)[";" D
 .N SND,FAX,EMAIL,LINK,DET
 .S SND=$P($P(DLV,";",2),"-")
 .S DET=$P($P(DLV,";",2),"-",2)
 .S OK=0
 .I SND="F" D  Q
 ..S FAX=$P(DLV,";",3) Q:'FAX
 ..I $$SNDFAX^W3SNDHMH(FAX_";;"_DET) D ^W3REGFAX(ORD) S OK=1
 .
 .I SND="E" D  Q
 ..S ^LL(1)=DLV
 ..S EMAIL=$P(DLV,";",3) Q:'$L(EMAIL)
 ..S LINK=$P($$WEB^W3MAIN,"//",2,20)_"w3ordvw.jsp?MSD="_MSD_"&W3ORDLS="_ORD_"&RCV=1"
 ..D PUT^%W1PRM("ORD",ORD)
 ..N MENU,KASHRUT,ISHUR,TXT
 ..S MENU=$P(DLV,";",7)
 ..S KASHRUT=$P(DLV,";",8)
 ..S ISHUR=$P(DLV,";",9)
 ..S TXT=$P(DLV,";",10,200)
 ..;
 ..I $$SNDMAIL^W3SNDHMH(EMAIL_";"_LINK_";"_DET_";"_MENU_";"_KASHRUT_";"_ISHUR_";"_TXT) D
 ...S @$$^W3ORD(ORD)@(ORD,"EMAIL")=$H,OK=1
 Q
 ;
 ;
SP(STAM) ;
 I $$^%W1LNG'="H" Q "&nbsp;&nbsp;"
 Q ""
 ;
CHKMMYY(PRM) ;
 N MM,YY,DAT,J
 S MM=$E(PRM,1,2)
 S YY=$E(PRM,5,6)
 F J=31:-1:28 S DT=$$^%L1DC(J_MM_YY,3) Q:DT
 I DT<$H Q 0
 Q 1
 ;
MSDPRT(ORD,GL) ;
 N A,N,CD,MSDPRT S N="",MSDPRT=""
 F  S N=$O(@GL@(ORD,N)) Q:N=""  I N D  Q:MSDPRT
 .S A=$G(^(N))
 .S CD=$P(A,"~",2) Q:'CD
 .I $G(@$$^W4GL("W4MSDPRT")@(CD)) S MSDPRT=^(CD)
 Q MSDPRT
 ;
PICUL(ORD) 
 I $G(ORD)="" Q 0
 I $D(@$$^W3TMPORD@(ORD,"PICUL")) Q 1
 Q 0 
 ;
COPY(ORDFROM) ;
 D ^W4TMPOP("HIST")
 Q 1
 ;
PIZUIM(ORD) ;
 Q $L($G(@$$^W3ORD@(ORD,"PIZUIM")))
 ;
CHOICEREST(STAM); 
 I '$$DLVWEB^W4DLVCSR Q 0
 N MSDR S MSDR=$$MSDR^W4PRM I 'MSDR Q 0
 N MSDF S MSDF=$O(^|$$^W3MAIN|W3MSDR(MSDR,"")) I 'MSDF Q 0 
 I MSDF=MSDR,$O(^|$$^W3MAIN|W3MSDR(MSDR,MSDF))="" D  Q 0
 .D PUT^%W1PRM("MRKTO",MSDF)
 I +$$GETP^%W1PRM("MRKTO")=0&(+$$MSD^W3HZMST(JB)=0) Q 1
 I $$W4PRM("CHCREST") Q 1
 Q 0
 ;
CHKCA(PRM) ; 
 N (JB,JB0,%ARG,%REM,PRM) ;
 ;;S ^AA("W3ORDVW-CHKCA","PRM")=PRM
 S VIZ=$P(PRM,";") 
 S ASHCVV2=$P(PRM,";",2) 
 S ASHTZ=$P(PRM,";",3) 
 S MMYYYY=$P(PRM,";",4)
 S PAY=$P(PRM,";",5)*100
 I $L(MMYYYY)=6 S YYMM=$E(MMYYYY,5,6)_$E(MMYYYY,1,2) 
 E  S YYMM=$E(MMYYYY,3,4)_$E(MMYYYY,1,2) 
 S (SUGIS,SUGMTB,SUGAS,SUGMRB)=1
 S SUGBC=51 
 S KOHAV=0 
 S AUTHNO=""
 S KUP=901 
 S (P1,PN,PC,PF,PG,PH)=0
 S %ARG("J5")=1
 D ^W4STRIN
 ;
 S A=$$INOUT^W4PAYCA(STRIN)
 ;
 S STA=$P(A,"~",2)
 I STA'="000" D
 .N MSG S MSG=$G(^[$$^W3MAIN]KOD(+STA))
 .S STA=STA_"~"_MSG
 ;
 Q STA
 ;
 ; 
W4PRM(PRM) ; 
 I $G(JB0) N JB S JB=JB0
 N OU X "S OU=$$"_PRM_"^W4PRM"
 Q OU 
 ;
 ;
DOUBLE(JB,A,DT,MSD) ; 
 N OK S OK=0
 N B,N
 ;
 ;;I $G(MSD),$D(^|$$^W3MAIN|W3MSDR(10222,MSD)) Q 0  ; -- LO LIVDOK FOR PAPA
 ;; --- 22.03.24 --> COMMENT
 ;
 S A=$P(A,"~",1,31)
 S $P(A,"~",4)=""
 N SHAAA S SHAAA=$P(A,"~",6)
 S $P(A,"~",6)=""
 ;
 N HZMLAK S HZMLAK=$$SPA^%L1FRM($$HZMLAK^W3HZMST(JB))
 ;  
 S N="" F  S N=$O(^[$$^W3MAIN]W3LINKD(DT,N)) Q:N=""  D  Q:OK
 .Q:N=JB
 .S B=$G(^|$$^W3MAIN|W3ORD(N))
 .S B=$P(B,"~",1,31)
 .S $P(B,"~",4)=""
 .N SHAAB S SHAAB=$P(B,"~",6)
 .S $P(B,"~",6)=""
 .
 .N J F J=8,9,11,12,17,19 D
 ..S $P(A,"~",J)=$J($P(A,"~",J),2,2)
 ..S $P(B,"~",J)=$J($P(B,"~",J),2,2)
 .
 .I $G(MSD),$G(^|$$^W3MAIN|W3ORD(N,"MSD")),MSD'=^("MSD") S OK=0 Q
 .I A=B,$$BDKSUM(JB,"TMPORD")=$$BDKSUM(N,"W3ORD"),$$DIF^%L1TIME(SHAAA,SHAAB)<30 D
 ..I $L(HZMLAK),$G(^|$$^W3MAIN|W3HZMLAK(+$G(MSD),HZMLAK)),^(HZMLAK)'=JB S OK=N Q
 ..;;I '$L(HZMLAK) S OK=N Q  ; -- 22/03/24 --> COMENT
 ;
 Q OK 
 ;
 ;
BDKSUM(N,GL) 
 S GL="^|"""_$$^W3MAIN_"""|"_GL
 N BDKSUM S BDKSUM=0
 N I S I="" F  S I=$O(@GL@(N,I)) Q:I=""  I I D
 .N A S A=$G(^(I))
 .S BDKSUM=BDKSUM+($P(A,"~",2)*$P(A,"~",5))
 Q BDKSUM 
 ;
 ; 
BDORD(JB) ;
 D
 .N TBL,RULES S RULES="cols"
 .I $D(W3FAXHTM("SNDMAIL")) S RULES="rows"
 .S TBL="<table width="""_$S(PC:"100%",1:"70%")_""" cellspacing=""0"" "
 .S TBL=TBL_"class=""vw"" border=""1"" rules="""_RULES_""" "
 .S TBL=TBL_" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >"
 .D W("<table width="""_$S(PC:"100%",1:"70%")_""" cellspacing=""0"" class=""vw"" border=""1"" rules=""cols"" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >")
 ;
 D W(" <tr class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">")
 S CC=0
 I $$CODE^W3PRM S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:"_$S($$CMNT^W3PRM:"30%",1:"50%")_""">"_$$^%W1DICT("ITEMNAME")_"</th>")
 S CC=CC+1 D W("  <th style=""width:14%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:14%"">"_$$^%W1DICT("QUANT")_"</th>")
 I $$DLVWEB D
 .S CC=CC+1
 .D W("  <th style=""width:6%"">"_$$^%W1DICT("DISCPERCENT")_"</th>")
 S CC=CC+1 D W("  <th width=""14%"">"_$$^%W1DICT("SUM")_"</th>")
 ;
 I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D
 .S CC=CC+1
 .D W("  <th style=""width:30%"">"_$$^%W1DICT($S($$NOREST^W3PRM:"COMMENT",1:"COMMENT2KITCHEN"))_"</th>")
 ;
 I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D
 .S CC=CC+1
 .D W("  <th style=""width:30%"">"_$$^%W1DICT("PICTURE")_"</th>")
 ;
 D W(" </tr>")
 D TDHR
 ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 ;
 N SKIPDEL,QN,QNR S PR0=1,CD0=""
 N I F I=1:1 Q:'$D(@$$^W3TMPORD@(JB,I))  D
 .N A S A=$G(^(I))
 .I $P(A,"~")=0 D  S PR0=1 ; ---------------------- PRITIM
 ..S QNR=$P(A,"~",5),SKIPDEL=0 
 ..S DISCP=$P(A,"~",6)
 ..I $G(COMPRDEL),QNR'>0 S SKIPDEL=1 Q
 ..S QN=QNR I $G(COMPRDEL) S QN=$$ITRAST^W3HZMST(JB,I)
 ..I PRTR D TDHR
 ..S PRTR=1
 ..
 ..S CD0=$$CD(A)
 ..I CD0=$$HZMH^W3PRM!(CD0=$$HZMH2^W3PRM) D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" style=""background-color:96ce98;color:black"" >")
 ..I CD0'=$$HZMH^W3PRM,CD0'=$$HZMH2^W3PRM D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" class=""vw0"">")
 ..
 ..I $$CODE^W3PRM D W("  <td>&nbsp;"_$$CD(A)_"</td>")
 ..N NAM
 ..S NAM=$$NAM(A)
 ..D W("   <td style='font-size:"_$$^W3FSZ_"'>&nbsp;"_NAM_"</td>")
 ..
 ..N MH S MH=$$MH(A)
 ..D W("   <td align=""center"">&nbsp;"_MH_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_QN_"</td>")
 ..
 ..I $$DLVWEB D
 ...D W("   <td align=""center"" style=""color;red"">&nbsp;"_$S($G(DISCP):$J(DISCP,2,2)_"%",1:"")_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_$J(QN*MH*(100-DISCP)*.01,2,2)_"</td>")
 ..
 ..I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D CMTD
 ..I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D PIC($$CD(A))
 ..
 ..D W("</tr>")
 .
 .I $P(A,"~")=1!($P(A,"~")=2) D  ; --------------------------- TOSAFOT
 ..I $$CDA(A) Q  ; !$$CDC(A)!$$CDH(A) Q
 ..I $G(SKIPDEL) Q
 ..I PC=1.5,'$G(W3FAXHTM)!$D(W3FAXHTM("COMPRESS")),'$$^W3HZMH($$HZ)!$D(W3FAXHTM("COMPRESS")) D  S PR0=0 Q  ; -- COMPRESS ADDONS
 ...Q:'PR0
 ...N MHADD,MHADD1,A1 S (MHADD,MHADD1)=0
 ...N I1 F I1=I:1 Q:'$D(@$$^W3TMPORD@(JB,I1))  S A1=$G(^(I1)) Q:'$P(A1,"~")  D
 ....N QNT S QNT=$$QNR^W3HZMST(JB,I1)
 ....I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I1)
 ....N SUMT,SUMT1 S (SUMT,SUMT1)=$P(A1,"~",4)*QNT
 ....I DISCP S SUMT1=SUMT1*(100-DISCP)*.01
 ....S MHADD=MHADD+SUMT
 ....S MHADD1=MHADD1+SUMT1
 ...
 ...D W("  <tr class=""vw1"" id=""ADD"_I_""" name=""ADD"_I_""" >")
 ...I $$CODE^W3PRM D W("    <td>&nbsp;</td>")
 ...
 ...D W("   <td>"_$$^%W1DICT("ADDITIONS")_"</td>")
 ...
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ...
 ...D W("   <td>&nbsp;</td>")
 ...I $$DLVWEB D W("   <td>&nbsp;</td>")
 ...
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD1,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ..
 ..; ----------------------------- FULL VIEW ----------
 ..I '$$MH(A),$$^W3HZMH($$HZ),$G(COMPRVIEW) Q
 ..;
 ..I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I) I QNT'>0 Q
 ..
 ..D W("  <tr class=""vw1"" id=""LV1"_I_""" name=""LV1"_I_""" >")
 ..I $$CODE^W3PRM D W("    <td>&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..
 ..D W("   <td")
 .. I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N ST S ST="   <td dir=""LTR"" style=""text-align:center"
 ..N MH S MH=$$MH(A)
 ..I MH S ST=ST_";color:black"
 ..S ST=ST_""""
 ..S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:MH)_"</td>"
 ..D W(ST)
 ..
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..N QNT S QNT=$S($$CDC(A)!$$CDH(A):"&nbsp;",$$QN(A)["+":$$QNPIZZA(A),1:$$QN(A))
 ..I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I) I QNT'>0 Q
 ..S ST=ST_QNT
 ..S ST=ST_"</td>"
 ..D W(ST)
 ..I $$DLVWEB D W("<td>&nbsp;</td>")
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..N SUM S SUM=MH*QNT I $G(DISCP) S SUM=SUM*(100-DISCP)*.01
 ..S SUM=$J(SUM,2,2)
 ..N ST1 S ST1=SUM
 ..I SUM S ST1="<span color=""black"">"_SUM_"</span>"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ST1)_"</td>"
 ..D W(ST)
 ..D
 ...I $$^W3HZMH($$HZ) D  Q
 ....I $$PICTURE^W3PRM D W("   <td>&nbsp;</td>")
 ...I $$CMNT^W3PRM=2,'$$CDC(A) D CMTD Q
 ...I $$CMNT^W3PRM,$$CDC(A)!($$CMNT^W3PRM=1) D
 ....D W("   <td id=""cmtd"_I_""">&nbsp;</td>")
 ..D W("  </tr>")
 .
 .I $P(A,"~")>1,$G(SKIPDEL) Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ORDVW1
W3ORDVW(PC) ; [ 04.09.17 17:12 ] [ 03.09.17 10:02 ] [ 30.08.17 13:39 ] 
 ; PC = 1 - SHOW FROM CUSTOMER ORDER
 ; PC = 1.5 - SHOW FROM CUSTOMER ORDER (COMPRESS VIEW)
 ; PC = 2 - SHOW FROM CUSTOMER LIST ORDER ( FOR COPY ORDERS )
 ; PC = 3 - SHOW FROM RECEIVE LIST ORDER
 ;             CODE - REGISTRY CUSTOMER,
 ;             WITHOUT CODE - RESTAURANT
 ;             CODE="http://..." NEW CUSTOMER
 ;----------------------------------------------------------------------------
 N (%ARG,JB,PC,W3ORDLS,W3FAXHTM,%REM,COMPRVIEW,COMPRDEL)
 ;
 K @$$^W3TMPORD@(JB,"BACK")
 S JB0=JB
 ;
 D INIT
 ;
 I $G(W3ORDLS) N JB S JB=+W3ORDLS
 ;
 ;;W "W3ORDLS="_W3ORDLS_"  JB="_JB_" MD="_MSD,!
 ;
 D W("<div align=""center"" >")
 ;
 I PC=1!(PC=1.5),'$$CLOSE^W3HZMST(JB),'$G(W3ORDLS),'$G(W3FAXHTM),'$$MKR^W3HZMST(JB) D
 .I $$^W3HZMH(JB),$$ONLINE^W4DLVCSR Q
 .I $$ONLINE^W4DLVCSR S $P(@$$^W3TMPORD@(JB),"~",38)=$$AHUZ^W3HZTFR
 .
 .N IND S IND=$$CITY^W3HZMST(JB)_":"_$$STREET^W3HZMST(JB)_":"_$$HOME^W3HZMST(JB)
 .S $P(@$$^W3TMPORD@(JB),"~",8)=$J($$AHUZ^W3HZMST(JB)*$$TOTORD("D")*.01,2,2)
 .S $P(@$$^W3TMPORD@(JB),"~",11)=$$TSHL^W3HZMST(JB)
 .S $P(@$$^W3TMPORD@(JB),"~",9)=$$DMSH^W3HZMST(JB)
 .Q
 .S $P(@$$^W3TMPORD@(JB),"~",9)=$$DMSH^W3HZTFR(IND)
 ;
 D HDMSD(MSD)
 ;
 I '$G(W3FAXHTM) D
 .N STYLEHD S STYLEHD=""
 .I $$COLOR^W3CSS="RW" S STYLEHD=" style=""background-color:white;color:#cc0000"" "
 .
 .D W("<table id=""TblHeadVw"" name=""TblHeadVw"" class=""hdvw"" "_STYLEHD_" width="""_$S(PC:"100%",1:"70%")_""" border=""0"">")
 .N ORDERHD
 .S ORDERHD=$$^%W1DICT("ORDER")_" "_$$NOM
 .I '$D(@$$^W3ORD(+$$HZ)@(+$$HZ)) D
 ..I '$$^W3HZMH(+$$HZ) S ORDERHD=$$^%W1DICT("ORDERINPROCESS") Q
 ..S ORDERHD=$$^%W1DICT("PRICEOFFER")
 .D W("<tr><td dir="""_$$^%W1DIR_""" id=""orderhd"">"_ORDERHD_"</td></tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 I $G(W3FAXHTM) D
 .N HZ S HZ=$$NOM
 .I $G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) S HZ=^("HZRSD")
 .D W("<br><span style=""font-size:"_$$^W3FSZ(24)_""">"_$$^%W1DICT("ORDER")_" "_HZ_"</span>")
 ;
 W !
 ;
 D
 .N W3ORDHD
 .S W3ORDHD("SPANSTYLE")="color:"_$$FGFLD^W3CSS($$COLOR^W3CSS)_";font-weight:"_$$WGFLD^W3CSS($$COLOR^W3CSS)
 .D VW^W3ORDHD
 ;
 D W("<br>")
 ;
 S HZMH=$$^W3HZMH(+$$HZ)
 ;
 I PC<2 D
 .I '$G(W3FAXHTM) D W("<div align=""center"">")
 .D W("<table name=""TblVw"" dir="""_$$^%W1DIR_""" width=""100%"" border=""0"" style=""font-weight:"_$S($$WGFLD^W3CSS($$COLOR^W3CSS):"bold",1:"normal")_""">")
 .D W(" <tr>")
 .
 .I '$G(W3FAXHTM) D
   ..D W("  <td>"_$$SP_$$^%W1DICT($S($$NOREST^W3PRM:"COMMENTS2ORDNOREST",1:"COMMENT2ORDER"))_": <input type=""text"" value="""_$$H2U^%L1FRM($$CMHD^W3HZMST(+$$HZ))_"""")
   ..D W(" id=""CMHD"" name=""CMHD"" class=""vwcmnt"" size=""56"" onBlur=""SetHr()"">")
   ..D W("  </td>")
 .
 .I $G(W3FAXHTM) D
   ..I $L($$CMHD^W3HZMST(+$$HZ))=0 Q
   ..D W("  <td style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("COMMENT")_": "_$$H2U^%L1FRM($$CMHD^W3HZMST(+$$HZ)))
   ..D W(" </td></tr><tr>")
 .
 .I $G(HZMH),'$G(W3FAXHTM) D  Q
 ..D W("   <td>")
 ..D W("    "_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S(PC=1.5:"checked=""checked""",1:"")_" />")
 ..D W("   </td>")
 ..D W(" </tr>")
 ..D W("</table>")
 .
 .I $G(W3FAXHTM)!($G(%ARG("RCV"))=9) D
 ..N STS S STS="<td style=""font-size:"_$$^W3FSZ(20)_""">"
 ..S STS=STS_$$^%W1DICT("KINDOFPAYMENT")_" : "_$$SHOWTS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=3 D W(STS_"</td></tr>") S STS="<tr><td>"_$$CREDDETAILS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=5 S STS=STS_$$CIBDETAILS($$HZ)
 ..I $$CODTS^W3HZMST(JB)=7 S STS=STS_$$TNBDETAILS($$HZ)
 ..S STS=STS_"</td>"
 ..D W(STS)
 .
 .I $G(HZMH) D  Q
 ..D W("</tr>")
 ..D W("</table>")
 .
 .I '$G(W3FAXHTM) D
 ..D W("<tr>")
 ..D W("   <td>")
 ..D W("    "_$$SP_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;<input type=""checkbox"" name=""comprview"" onClick=""ComprView("_JB0_",this)"" "_$S(PC=1.5:"checked=""checked""",1:"")_" />")
 ..D W("   </td>")
 ..
 ..D W("   <td>")
 ..D W("    "_$$SP_"<input type=""button"" value="""_$$^%W1DICT("PAY")_""" onClick=""Pay('"_JB_"')"" class=""btn"" ")
 ..D W("   </td>")
 ..
 .
 .D W("</tr>")
 .D W("</table>")
 .
 I PC=2!(PC=3) D
 .D W("<table name=""TblVw"" dir="""_$$^%W1DIR_""" width=""100%"" border=0>")
 .D W(" <tr>")
 .I $L($$CMHD^W3HZMST(JB))=0 D W("<td>&nbsp;</td>")
 .I $L($$CMHD^W3HZMST(JB)) D W("<td style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("COMMENT")_": <span>"_$$H2U^%L1FRM($$CMHD^W3HZMST(JB))_"</span></td>")
 .N STS S STS="<td style=""font-size:"_$$^W3FSZ(16)_""">"
 .I '$G(HZMH) S STS=STS_$$^%W1DICT("KINDOFPAYMENT")_" : <span>"_$$SHOWTS(JB)_"</span>"
 .I $G(HZMH) S STS=STS_" <span>"_$$SHOWTS(JB)_"</span>"
 .I $$CODTS^W3HZMST(JB)=3,MSD=10060 S STS=STS_$$CREDDETAILS($$HZ)
 .I $$CODTS^W3HZMST(JB)=5 S STS=STS_$$CIBDETAILS($$HZ)
 .I $$CODTS^W3HZMST(JB)=7 S STS=STS_$$TNBDETAILS($$HZ)
 .
 .S STS=STS_"</td></tr></table>"
 .D W(STS)
 ;
 ;
 I $$HKBEEF^W3PRM D
 .D W("<table width="""_$S(PC:"100%",1:"70%")_""" border=""0"" dir="""_$$^%W1DIR_""" >")
 .D W(" <tr><td style=""text-align:center;color:white;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">"_$$^%W1DICT("NOTCHARGEDNOW")_"</td></tr>")
 .D W("</table>")
 ;
 ;----------------------- BASIC TABLE -------------------------
 D W("<br />")
 ;
 D
 .N TBL,RULES S RULES="cols"
 .I $D(W3FAXHTM("SNDMAIL")) S RULES="rows"
 .S TBL="<table width="""_$S(PC:"100%",1:"70%")_""" cellspacing=""0"" "
 .S TBL=TBL_"class=""vw"" border=""1"" rules="""_RULES_""" "
 .S TBL=TBL_" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >"
 .D W("<table width="""_$S(PC:"100%",1:"70%")_""" cellspacing=""0"" class=""vw"" border=""1"" rules=""cols"" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >")
 ;
 D W(" <tr class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">")
 S CC=0
 I $$CODE^W3PRM S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:"_$S($$CMNT^W3PRM:"30%",1:"50%")_""">"_$$^%W1DICT("ITEMNAME")_"</th>")
 S CC=CC+1 D W("  <th style=""width:16%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:16%"">"_$$^%W1DICT("QUANT")_"</th>")
 S CC=CC+1 D W("  <th>"_$$^%W1DICT("SUM")_"</th>")
 ;
 I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D
 .S CC=CC+1
 .D W("  <th style=""width:30%"">"_$$^%W1DICT($S($$NOREST^W3PRM:"COMMENT",1:"COMMENT2KITCHEN"))_"</th>")
 ;
 I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D
 .S CC=CC+1
 .D W("  <th style=""width:30%"">"_$$^%W1DICT("PICTURE")_"</th>")
 ;
 D W(" </tr>")
 D TDHR
 ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 ;
 N PRTR,SKIPDEL,QN,QNR S PRTR=0,PR0=1,CD0=""
 N I F I=1:1 Q:'$D(@$$^W3TMPORD@(JB,I))  D
 .N A S A=$G(^(I))
 .I $P(A,"~")=0 D  S PR0=1 ; ---------------------- PRITIM
 ..S QNR=$P(A,"~",5),SKIPDEL=0 
 ..I $G(COMPRDEL),QNR'>0 S SKIPDEL=1 Q
 ..S QN=QNR I $G(COMPRDEL) S QN=$$ITRAST^W3HZMST(JB,I)
 ..I PRTR D TDHR
 ..S PRTR=1
 ..
 ..S CD0=$$CD(A)
 ..I CD0=$$HZMH^W3PRM!(CD0=$$HZMH2^W3PRM) D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" style=""background-color:96ce98;color:black"" >")
 ..I CD0'=$$HZMH^W3PRM,CD0'=$$HZMH2^W3PRM D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" class=""vw0"">")
 ..
 ..I $$CODE^W3PRM D W("  <td>&nbsp;"_$$CD(A)_"</td>")
 ..N NAM
 ..S NAM=$$NAM(A)
 ..D W("   <td style='font-size:"_$$^W3FSZ_"'>&nbsp;"_NAM_"</td>")
 ..
 ..N MH S MH=$$MH(A)
 ..D W("   <td align=""center"">&nbsp;"_MH_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_QN_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_$J(QN*MH,2,2)_"</td>")
 ..
 ..I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D CMTD
 ..I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D PIC($$CD(A))
 ..
 ..D W("</tr>")
 .
 .I $P(A,"~")=1 D  ; --------------------------- TOSAFOT
 ..I $$CDA(A) Q  ; !$$CDC(A)!$$CDH(A) Q
 ..I $G(SKIPDEL) Q
 ..;;I (PC=1.5&'$G(W3FAXHTM)!$$^W3HZMH($$HZ)) D  S PR0=0 Q  ; -- COMPRESS ADDONS
 ..I PC=1.5,'$G(W3FAXHTM)!$D(W3FAXHTM("COMPRESS")),'$$^W3HZMH($$HZ)!$D(W3FAXHTM("COMPRESS")) D  S PR0=0 Q  ; -- COMPRESS ADDONS
 ...Q:'PR0
 ...N MHADD,A1 S MHADD=0
 ...N I1 F I1=I:1 Q:'$D(@$$^W3TMPORD@(JB,I1))  S A1=$G(^(I1)) Q:'$P(A1,"~")  D
 ....N QNT S QNT=$$QNR^W3HZMST(JB,I1)
 ....I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I1)
 ....S MHADD=MHADD+($P(A1,"~",4)*QNT)
 ...;;Q:'MHADD
 ...D W("  <tr class=""vw1"" id=""ADD"_I_""" name=""ADD"_I_""" >")
 ...I $$CODE^W3PRM D W("    <td>&nbsp;</td>")
 ...D W("   <td>"_$$^%W1DICT("ADDITIONS")_"</td>")
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ...D W("   <td>&nbsp;</td>")
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ..
 ..; ----------------------------- FULL VIEW ----------
 ..I '$$MH(A),$$^W3HZMH($$HZ),$G(COMPRVIEW) Q
 ..I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I) I QNT'>0 Q
 ..
 ..D W("  <tr class=""vw1"" id=""LV1"_I_""" name=""LV1"_I_""" >")
 ..I $$CODE^W3PRM D W("    <td>&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..
 ..D W("   <td")
 .. I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N ST S ST="   <td dir=""LTR"" style=""text-align:center"
 ..N MH S MH=$$MH(A)
 ..I MH S ST=ST_";color:black"
 ..S ST=ST_""""
 ..S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:MH)_"</td>"
 ..D W(ST)
 ..
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..N QNT S QNT=$S($$CDC(A)!$$CDH(A):"&nbsp;",$$QN(A)["+":$$QNPIZZA(A),1:$$QN(A))
 ..I $G(COMPRDEL) S QNT=$$ITRAST^W3HZMST(JB,I) I QNT'>0 Q
 ..S ST=ST_QNT
 ..S ST=ST_"</td>"
 ..D W(ST)
 ..
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..N SUM S SUM=$J(MH*QNT,2,2)
 ..N ST1 S ST1=SUM
 ..I SUM S ST1="<span color=""black"">"_SUM_"</span>"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ST1)_"</td>"
 ..D W(ST)
 ..D
 ...I $$^W3HZMH($$HZ) D  Q
 ....I $$PICTURE^W3PRM D W("   <td>&nbsp;</td>")
 ...I $$CMNT^W3PRM=2,'$$CDC(A) D CMTD Q
 ...I $$CMNT^W3PRM,$$CDC(A)!($$CMNT^W3PRM=1) D
 ....D W("   <td id=""cmtd"_I_""">&nbsp;</td>")
 ..D W("  </tr>")
 .
 .I $P(A,"~")>1,$G(SKIPDEL) Q
 ;
 I '$D(W3FAXHTM("SNDMAIL")) W !
 I PRTR D TDHR
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W(" <td>&nbsp;</td>")
 N AHUZ S AHUZ=$$AHUZ^W3HZTFR
 I $G(W3ORDLS)!$$DLVWEB^W4DLVCSR S AHUZ=$$AHUZ^W3HZMST(JB)
 ;
 D W(" <td><span style='font-size:"_$$^W3FSZ_";color:"_$$FGDLVPAY^W3CSS_"'>&nbsp;"_$$^%W1DICT("DLVPAY")_"</span></td>")
 ;
 D W(" <td>&nbsp;</td><td>&nbsp;</td><td align=""center""><span style=""color:"_$$FGDLVPAY^W3CSS_""">"_$J($$DMSHMSD^W3HZMST(JB),2,2)_"</span></td>")
  D LASTTD
 D W("</tr>")
 ;
 D W("<tr>")
 I $$CODE^W3PRM D W(" <td>&nbsp;</td>")
 ;
 I AHUZ,'$G(W3ORDLS)!'$$HNH^W3HZMST(JB) D
 .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISCOUNT",+AHUZ)_"</span></td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td><td style=""color:red;text-align:center"" dir=""LTR"">"_$J(-$$TOTORD("D")*AHUZ*.01,4,2)_"</td>")
 ;
 I 'AHUZ!$G(W3ORDLS),$$HNH^W3HZMST(JB) D
 .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISC")_"</span></td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td><td style=""color:red;text-align:center"" dir=""LTR"">"_$J($$HNH^W3HZMST(JB),2,2)_"</td>")
 ;
 I 'AHUZ,'$$HNH^W3HZMST(JB) D
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 .D W(" <td>&nbsp;</td><td>&nbsp;</td>")
 ;
 D LASTTD
 D W("</tr>")
 ;
 I PRTR D TDHR
 D W("<tr>")
 I $$CODE^W3PRM D W("<td>&nbsp;</td>")
 ;
 I PC<2,'$G(W3FAXHTM) D BUTTONSPC1("hdvw") ; -- FROM ORDER
 ;
 I PC=2 D BUTTONSPC2("hdvw") ; --- CUSTOMER LIST ORDER FOR COPY - From w3ordls.jsp
 ;
 I PC=3 D BUTTONSPC3("hdvw") ; -- RECEIVE LIST ORDER OR STATISTIC CUSTOMER LIST ORDER
 ;
 I $G(W3FAXHTM) D W("<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>")
 ;
 D W("<td style=""font-size:"_$$^W3FSZ_";text-align:center;color:"_$$FGTOT^W3CSS_";font-weight:bold"">"_$$TOT_"</td>")
 ;
 D LASTTD
 D W("</tr>")
 D W("</table>")
 ;;D W("</div>")
 D W("<br>")
 ;
 N COLST S COLST=$O(@$$^W3TMPORD@(JB,9999),-1)
 F I=1:1:5-(COLST>1) D W("<br>")
 ;
 I PC=1.5,'$$DLVWEB^W4DLVCSR D
 .W "<script>",!
 .I '$$^W3HZMH(+$$HZ) W "Msg(""PAYANDSUBMIT"","""",""font-size:"_$$^W3FSZ(18)_";background-color:yellow;color:black;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""")",!
 .I $$^W3HZMH(+$$HZ) W "Msg(""PRICEOFFERSUBMIT"","""",""font-size:"_$$^W3FSZ(18)_";background-color:yellow;color:black;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""")",!
 .W "</script>",!
 ;
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3reklama"_MSD_".jpg")>-1 D
 .W "<div align=""center"">",!
 . W "<img src="""_$$WEB^W3MAIN_"w3reklama"_MSD_".jpg"" >",!
 .W "</div>",!
 ;
 I $G(JB0),$G(JB),+$G(JB0)'=+$G(JB) D
 .K ^[$$^W3MAIN]TMPORD(JB0)
 .M ^[$$^W3MAIN]TMPORD(JB0)=^[$$^W3MAIN]TMPORD(JB)
 .K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
 ;
INIT ;
 I $G(%ARG("RCV"))=9 S W3FAXHTM=1,PC=1
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W3ORDVW")
 ;
 D ^%W1ARG
 ;
 I '$G(W3ORDLS) S MSD=$$GET^%W1PRM("MSD")
 ;
 D PUT^%W3DEB("W3ORDVW","PC=PC & W3ORDLS=W3ORDLS & ARG=[%ARG")
 ;
 S CODE=$$GET^%W1PRM("CODE")
 I CODE["!" S CODE=$P(CODE,"!")
 I 'CODE S CODE=""
 ;
 I $G(W3ORDLS) N JB S JB=+W3ORDLS D  D PUT^%W1PRM("ORD",+W3ORDLS)
 .S MSD=$G(@$$^W3ORD(+W3ORDLS)@(+W3ORDLS,"MSD"))
 ;
 D PUT^%W3DEB("W3ORDVW","MSD=MSD")
 I 'MSD Q
 D GL
 S (MEDAT,ADDAT,ORD)=""
 ;
 I $G(W3ORDLS) D
 .S MEDAT=$P(W3ORDLS,"~",2)
 .S ADDAT=$P(W3ORDLS,"~",3)
 .S CODE=$P(W3ORDLS,"~",4)
 .S ORD=$P(W3ORDLS,"~",5)
 .S W3ORDLS=+W3ORDLS
 .K @$$^W3TMPORD@(JB)
 .M @$$^W3TMPORD@(JB)=@$$^W3ORD(W3ORDLS)@(W3ORDLS)
 .S @$$^W3TMPORD@(JB,"BACK")=2
 ;
 D PUT^%W3DEB("W3ORDVW","CODE=CODE")
 Q
 ;
 ;
BUTTONSPC1(CLASS) ;
 D W("<td>&nbsp;</td>")
 D W("<td width=""10%"">")
 D W(" <input type=""button"" name=""update"" id=""updid"" class="""_CLASS_""" value="""_$$^%W1DICT("BACK")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Back2Ord("_JB0_",'TblOrdVw')"" />")
 D W("</td>")
 D W("<td width=""10%"">")
 D W(" <input type=""button"" name=""subm"" id=""submid"" class="""_CLASS_"""")
  D W(" value="""_$$^%W1DICT("SUBMIT")_""" style=""width:100%;font-size:"_$$^W3FSZ_"""")
  D W($$CLICKPC1_" />")
 D W("</td>")
 Q
CLICKPC1(STAM) ;
 N GL D GL
 Q " onClick=""SaveOrd("_JB0_",'TblOrdVw','"_$S($D(@GL@(JB,"NOCODE")):"",1:$G(CODE))_"')"""
 ;
BUTTONSPC2(CLASS) ;
 D W("<td>&nbsp;</td><td><input type=""button"" name=""copy"" id=""cpid"" class="""_CLASS_""" value="""_$$^%W1DICT("COPY2ORD")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Copy2Ord("_JB0_",'TblOrdVw')"" /></td>")
 D W("<td>")
 I $G(ADDAT) D
 .D W("<input type=""button"" name=""back"" id=""backid"" class="""_CLASS_""" value="""_$$^%W1DICT("BACK2ORDLIST")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" "_$$CLICKPC2_" />")
 D W("</td>")
 Q
 ;
CLICKPC2(STAM) ;
 Q " onClick=""Back2OrdList('"_$G(JB0)_"','"_$G(CODE)_"','"_PC_"')"""
 ;
 ;
BUTTONSPC3(CLASS) ;
 I '$$^W3HZMH($$HZ) D
 .I $$DLVWEB^W4DLVCSR,'$$CLOSE^W3HZMST($$HZ) D  Q
 ..D W("<td "_$$ALIGN_">")
 ..D W(" <input type=""button"" name=""edit"" id=""editid"" class="""_CLASS_""" value="""_$$^%W1DICT("EDIT")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Edit('"_$$HZ_"')"" />")
 ..D W("</td>")
 .;
 .D W("<td>&nbsp;</td>")
 ;
 I $$^W3HZMH($$HZ) D
 .N ST S ST="<td "_$$INV^%W1ALIGN_" >"
 .
 .I $$DLVWEB^W4DLVCSR D
 ..S ST=ST_"<input name=""print"" id=""sendid"" class="""_CLASS_""""
 ..S ST=ST_" value="""_$$^%W1DICT("MOVE")_""""
 ..S ST=ST_" style=""cursor:pointer;width:40%;font-size:"_$$^W3FSZ_""""
 ..S ST=ST_" onClick=""SendPrcOfr('"_$$HZ_"')"" />"
 .
 .S ST=ST_"</td>"
 .D W(ST)
 ;
 ;
 D W("<td "_$$ALIGN_">")
 D W(" <input type=""button"" name=""print"" id=""printid"" class="""_CLASS_""" value="""_$$^%W1DICT("PRINT")_""" style=""width:100%;font-size:"_$$^W3FSZ_""" onClick=""Print()"" onBeforePrint=""BeforePrint()"" />")
 D W("</td>")
 ;
 I '$G(ADDAT) D W("<td>&nbsp;</td>") Q
 ;
 D W("<td "_$$ALIGN_" >")
 D W(" <input type=""button"" name=""back"" id=""backid"" class="""_CLASS_"""")
 D W("  value="""_$$^%W1DICT("BACK2ORDLIST")_"""")
 D W("  style=""width:100%;font-size:"_$$^W3FSZ_";""")
 D W($$CLICKPC3_" />")
 D W("</td>")
 Q
 ;
CLICKPC3(STAM) ;
 Q " onClick=""Back2OrdList('"_$G(JB0)_"','"_$G(CODE)_"','"_(PC_"~"_$G(MEDAT)_"~"_$G(ADDAT))_"~"_$G(ORD)_"')"" "
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(W3ORDLS) N JB S JB=+W3ORDLS
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CD(A) ;
 N NM
 S NM=$P(A,"~",2)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 Q MH
 ;
QN(A) ;
 N QN
 S QN=$P(A,"~",5)
 I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNR(A) ;
 Q $$QNMH^W3HZMST(A)
 ;
QNPIZZA(A) ;
 Q $$QNMH^W3HZMST(A)
 ;
 N QN S QN=$$QN(A) I QN'["+" Q "&nbsp;"
 N ST S ST=""
 N J F J=1:1:4 D
 .S ST=ST_$S($E(QN,J)="+":$E(QN,J),1:"<span style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;-</span>")_"&nbsp;"
 Q ST
 ;
SUM(A) Q $J($$QNR(A)*$$MH(A),2,2)
 ;
TOT(STAM) ;
 N AHUZ
 ;;N AHUZ S AHUZ=$$AHUZ^W3HZTFR
 ;;I $G(W3ORDLS) S AHUZ=$$AHUZ^W3HZMST(JB)
 S AHUZ=$$AHUZ^W3HZMST(JB)
 N TOT S TOT=$$TOTORD
 N TOTD S TOTD=$$TOTORD("D")
 S DMS=$$DMSHMSD^W3HZMST(JB)
 N HN S HN=$$HNH^W3HZMST(JB)
 I AHUZ,'$G(W3ORDLS) S HN=TOTD*AHUZ*.01
 S TOT=TOT+DMS-HN
 Q $J(TOT,1,1)
 ;
TOTORD(PRM) ;
 Q $$TOTORD^W3HZMST(JB,$G(PRM))
 ;
 N GL D GL
 N TOT S TOT=0
 N A,I F I=1:1 Q:'$D(@$$^W3TMPORD@(JB,I))  S A=$G(^(I)) D
 .S TOT=TOT+($$MHST^W3HZMST(JB,I,GL)*$$QNR^W3HZMST(JB,I,GL))
 Q TOT
 ;
FIRSTNAME(STAM) ;
 N NM,FN S NM=$$SPA^%L1FRM($$NAME^W3HZMST(JB))
 I $$^%W1DIR="RTL" S FN=$$CLWEB^%L1FRM($P(NM," ",2))
 I $$^%W1DIR="LTR" S FN=$$CLWEB^%L1FRM($P(NM," "))
 I FN="" S FN="NONAME"
 Q FN
 ;
LASTNAME(STAM) ;
 N NM,FN S NM=$$SPA^%L1FRM($$NAME^W3HZMST(JB))
 I $$^%W1DIR="RTL" S FN=$$CLWEB^%L1FRM($P(NM," ",1))
 I $$^%W1DIR="LTR" S FN=$$CLWEB^%L1FRM($P(NM," ",2))
 I FN="" S FN="NONAME"
 Q FN
 ;
NMTD(SH) ;
 Q "QN"_SH
NMTDI(SH) ;
 Q "QNID"_SH
 ;
SHOWTS(HZ,GL) ;
 I '$D(GL) D GL
 N JB S JB=HZ
 N MKBN S MKBN=$G(@$$^W3ORD(HZ)@(HZ,"MKBN"))
 ;;I $$^W3HZMH(HZ) Q $$^%W1DICT("HZMH")_" "_$G(@$$^W3ORD(HZ)@(HZ,"HZRSD"))_" "_$$^%W1DICT("FROM")_" "_$$H2U^%L1FRM($P(MKBN,";"))
 ;
 N CODTS S CODTS=$$CODTS^W3HZMST(HZ,GL)
 ;
 Q $$^W3SHOWTS(CODTS)
 ;
DLVTERM(STAM) ; -- SAVE PHONE ORDER
 N DLV
 S DLV=$$^%W1SsID("DLVWEB")
 D PUT^W3HZMST(JB,"MKR",99)
 I $$GET^%W1PRM("MLZR") D
 .D PUT^W3HZMST(JB,"MKBL",$$GET^%W1PRM("MLZR"))
 N GL D GL
 I '$D(@GL@(JB,"HZRSD")) S @GL@(JB,"HZRSD")=""
 D TERM
 Q DLV
 ;
 ;
TERM ;
 N (JB,%ARG,%REM,DLV,MEMSHAK,OK)
 N ORD S ORD=JB
 I $G(DLV) S ORD=$P(DLV,";")
 D PUT^%W1PRM("ORD",ORD)
 ;
 D PUT(JB,ORD) I OK'=1 Q
 ;
 D CODE
 ;
 I $L($TR(CODE,"-! ","")),'$$D^W3L($TR(CODE,"!- ","")) D
 .N CODA S CODA=$TR(CODE,"!- ","") Q:'CODA
 .N GLKHA S GLKHA=$$GLA^W3L
 .S @$$GLA^W3L@(CODA)=$$NAME^W3HZMST(JB,GL)
 .D PUT^W3L(CODA,$$STREET^W3HZMST(JB,GL),"KTV",GLKHA)
 .D PUT^W3L(CODA,$$FLOOR^W3HZMST(JB,GL),"KOMA",GLKHA)
 .D PUT^W3L(CODA,$$FLAT^W3HZMST(JB,GL),"DIRA",GLKHA)
 .D PUT^W3L(CODA,$$HOME^W3HZMST(JB,GL),"BAIT",GLKHA)
 .D PUT^W3L(CODA,$$ENTRANCE^W3HZMST(JB,GL),"CNISA",GLKHA)
 .D PUT^W3L(CODA,$$CITY^W3HZMST(JB,GL),"IR",GLKHA)
 .D PUT^W3L(CODA,$$PELE^W3HZMST(JB,GL),"PELE",GLKHA)
 .D PUT^W3L(CODA,$$NMB^W3HZMST(JB,GL),"TELB",GLKHA)
 .D PUT^W3L(CODA,$$COMMENT^W3HZMST(JB,GL),"CMNT",GLKHA)
 ;
 S OK=1
ENDT Q
 ;
 ;
CODE ;
 D GL
 S CODE=$$CODE^W3HZMST(JB,GL)
 I CODE="" S CODE=$$GET^%W1PRM("CODE")
 S CODE=$TR(CODE,"-","")
 ;
 I CODE="" D
 .S NMB=$$NMB^W3HZMST(JB,GL) Q:NMB=""
 .I $$LKH^W3L(NMB)'="" Q
 .S CODE=$TR(NMB,"-","")
 Q
 ;
 ;
PUT(JB,ORD) ;
 N (JB,%ARG,%REM,ORD,DLV,MEMSHAK,OK)
 D GL S OK=0
 I '$D(@GL@(JB)) S OK="NORD" Q
 I $D(@GL@(JB))'=11 S OK="NOFULLORD" Q
 K @$$^W3ORD(ORD)@(ORD)
 M @$$^W3ORD(ORD)@(ORD)=@GL@(JB) ; --- ^TMPORD --> ^W3ORD
 ;
 S MSD=$G(@GL@(JB,"MSD"))
 ;
 S MSDFROM=""
 S HZMKR=""
 I $G(%ARG("HZMKR")) S HZMKR=%ARG("HZMKR")
 ;
 I $$^W4MM D
 .S MSDFROM=$$GETP^%W1PRM("MSD")
 .S @$$^W3ORD(ORD)@(ORD,"MSDFROM")=MSDFROM
 ;
 I 'MSD S MSD=$$GETP^%W1PRM("MSD")
 ;
 I $$DLVWEB^W4DLVCSR,$$GETP^%W1PRM("MRKTO") D
 .S MSD=$$GETP^%W1PRM("MRKTO")
 .N MSDPRT S MSDPRT=$$MSDPRT(ORD)
 .I MSDPRT S MSD=MSDPRT
 .D KILL^%W1PRM("MRKTO")
 ;
 D SETMSD(ORD,MSD)
 ;
 I $P($G(DLV),";",5) D
 .S @$$^W3ORD(ORD)@(ORD,"SNIF")=$P($G(DLV),";",5)
 ;
 N MKBL S MKBL=$$GETP^%W1PRM("MLZR")
 ;
 I $$DLVWEB^W4DLVCSR,MKBL D
 .S @$$^W3ORD(ORD)@(ORD,"MKBL")=MKBL
 .S @$$^W3ORD(ORD)@(ORD,"MKBN")=$$^W4NAME(MKBL)
 ;
 D CODE
 ;
 D
 .N N S N="" F  S N=$O(@$$^W3ORD(JB)@(JB,N)) Q:N=""  D
 ..I N["COUP:",CODE D
 ...S MVC=$P(N,":",2) Q:MVC=""
 ...S @$$^W4GL("W3COUP")@(MVC,CODE)=$H
 ;
 I $G(DLV)="" S $P(@$$^W3ORD(ORD)@(ORD),"~",11)=$$TOT
 ;
 I $G(MSD),$$DEMO^W3PRM(MSD) S @$$^W3ORD(ORD)@(ORD,"DEMO")=$H
 ;
 N HZMHPAR S HZMHPAR=$$HZMH^W3PRM
 ;
 I $$^W3HZMH(JB),'$$^W3PRCOFR(JB),HZMHPAR D
 .N IND S IND=$O(@$$^W3ORD(ORD)@(ORD,99999),-1)+1
 .S @$$^W3ORD(ORD)@(ORD,IND)="0~"_HZMHPAR_"~"_$$SHEM^W3P(HZMHPAR)_"~~1"
 ;
 I $P($G(DLV),";",4) S @$$^W3ORD(ORD)@(ORD,"HZRSD")=$P(DLV,";",4)
 ;
 D ^%S2GLSV($$^W3ORD_"("_ORD_")",$$^W3FGIB(MSD))
 ;
 M @$$^W3ORDGIB@(ORD)=@$$^W3ORD(ORD)@(ORD)
 ;
 D SETLINK
 ;
 I '$$^W4MM,$$SNDLATE^W3PRM(MSD)?1N.E,$P($H,",",2)\3600'<$$SNDLATE^W3PRM(MSD) D
 .N MSG2HOST S MSG2HOST=""
 .N OK S OK=$$SNDMAIL^W3FAXHTM(ORD,MSD) S:OK=1 OK="OK"
 ;
 I $L($G(DLV)) D SNDDLV(MSD,ORD,DLV) G ENDT
 ;
 I $D(MEMSHAK),'$$AUTOSEND^W3PRM(ORD) D  G ENDT
 .D ^W3FAXHTM(ORD,MSD)
 .I $P($G(@$$^W3ORD(ORD)@(ORD)),"\")=4 S OK=1
 ;
 S OK=1
 Q
 ;
 ;
SETMSD(ORD,MSD)
 S @$$^W3ORD(ORD)@(ORD,"MSD")=MSD
 S @$$^W3ORD(ORD)@(ORD,"MSDN")=$$MSDN^W3R(MSD)
 Q
 ;
SETLINK ;
 N DT,DTR S DT=$$^%L1DC($$DAT^W3HZMST(JB,GL),3)
 S DTR=$$^%L1DC($P($$DATCB^W3HZMST(JB,GL),"  "),3)
 ;
 S ^[$$^W3MAIN]W3LINK(ORD)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_$G(HZMKR)
 S ^[$$^W3MAIN]W3LINKO(ORD)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_$G(HZMKR)
 S ^[$$^W3MAIN]W3LINKD(DT,ORD)=MSD
 ;
 I $G(MSDFROM) D
 .S ^[$$^W3MAIN]W3LINKD(DT,ORD)=MSD_"~"_MSDFROM_"~"_$G(HZMKR)
 ;
 I $G(HZMKR),$D(@$$^W4GL("W4LINK")@(HZMKR)) D
 .S $P(^(HZMKR),"~",6)=ORD
 .S @$$^W4GL("W4LINKO")@(HZMKR)=$G(@$$^W4GL("W4LINK")@(HZMKR))
 .I $D(@$$^W4GL("W4LINKD")@(DT,HZMKR)) D
 ..S $P(@$$^W4GL("W4LINKD")@(DT,HZMKR),"~",3)=ORD
 ;
 I DTR S ^[$$^W3MAIN]W3LINKDR(DTR,ORD)=MSD D
 .I $G(MSDFROM) D
 ..S ^[$$^W3MAIN]W3LINKDR(DTR,ORD)=MSD_"~"_MSDFROM_"~"_$G(HZMKR)
 ;
 I $L(CODE),$L(MSD) D
 .S ^[$$^W3MAIN]W3LINKI(CODE,MSD,ORD)=$H
 .S ^[$$^W3MAIN]W3LINKR(MSD,ORD)=$H
 ;
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINK("_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKI("""_CODE_""","_MSD_","_ORD_")",$$^W3FGIB(0))
 D ^%S2GLSV("^["""_$$^W3MAIN_"""]W3LINKR("""_MSD_""","_ORD_")",$$^W3FGIB(0))
 Q
 ;
 ;
ZPRN ;
 N TXT
 S TXT=$$^%W1DICT("PRINT")_" ?"
 I $$^%W1LNG="E" W TXT Q
 I $$^%W1LNG="H" D  Q
 .S TXT=$$INV^%L1FRM(TXT)
 .W $$^%W1TXTJS(TXT)
 Q
 ;
SAVECMNT(CMNT) ;
 N JB S JB=$P(CMNT,"~"),CMNT=$P(CMNT,"~",2,300)
 D PUT^%W3DEB("W3ORDVW-SAVECMNT","CMNT=CMNT")
 N I F I=1:1:$L(CMNT,"~") D
 .N J,K S K=0 F J=1:1 Q:'$D(^[$$^W3MAIN]TMPORD(JB,J))  I $D(^[$$^W3MAIN]TMPORD(JB,J,"CM")) S K=K+1 D
 ..I K=I D
 ...I $$^%W1DIR="RTL" S $P(^[$$^W3MAIN]TMPORD(JB,J),"~",7)=$$INVH^%L1FRM($P(CMNT,"~",I)) Q
 ...S $P(^[$$^W3MAIN]TMPORD(JB,J),"~",7)=$P(CMNT,"~",I)
 Q
 ;
TDHR ;
 D W("<tr>")
 N J F J=1:1:CC D W("<td><hr></td>")
 D W("</tr>")
 Q
 ;
CMTD ;
 D W("   <td id=""cmtd"_I_""" class=""hdgr"" style=""font-size:"_$$^W3FSZ_";text-align:center"" >&nbsp;")
    I PC<2,'$G(W3FAXHTM) D
       .D W("<input type=""text"" value="""_$$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))_"""")
       .D W(" id=""CM"_I_""" name=""CM"_I_""" class=""vwcmnt"" size=""32"" maxlength=""36"" >&nbsp;")
       .S ^[$$^W3MAIN]TMPORD(JB,I,"CM")=""
    I PC>1.9!$G(W3FAXHTM) D
       .W $$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))
 D W("   </td>")
 Q
 ;
HDMSD(MSD) ;
 ;;S $ZGBLDIR=$$^W3UCI(MSD)
 N PRLOGO S PRLOGO=0
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3hdfax"_MSD_".gif")>-1 S PRLOGO=1
 I $$SFC^W3CSS,'$G(W3FAXHTM) D ^W3SFHD W "<br ><br ><br ><br >" Q
 I $G(W3FAXHTM),PRLOGO Q  ; LOGO SHEL FAX
 ;
 D W("<table width=""100%"" id=""TblHeadMsd"" name=""TblHeadMsd"" cellspacing=""0"" style=""font-size:"_$$^W3FSZ_";color:"_$$FGHDMSD^W3CSS_""" dir="""_$$^%W1DIR_""">")
 D W("<tr>")
   D W("<td width=""5%"">&nbsp;</td>")
   D W("<td style=""font-size:"_$$^W3FSZ(18)_""">"_$$NAME^W3MSD(MSD)_"</td>")
   D W("<td>&nbsp;</td>")
   I $G(W3FAXHTM) D W("</tr><tr><td>&nbsp;</td>")
   I $L($$ADDR^W3MSD(MSD)) D W("<td style=""text-align:center"" dir="""_$$^%W1DIR_""">"_$$ADDR^W3MSD(MSD)_"</td>")
   I $G(W3FAXHTM) D W("<td width=""20%"">&nbsp;</td>")
   I '$G(W3FAXHTM) D
   .D W("<td>&nbsp;</td>")
   .D W("<td>"_$$^%W1DICT("TEL")_" "_$$TEL(MSD)_"</td>")
   .D W("<td width=""5%"">&nbsp;</td>")
   .I '$D(PC) D W("<td width=""10%"">&nbsp;</td>") Q
   .I PC<2 D BUTTONSPC1("hdvw1")
   .I PC=2 D BUTTONSPC2("hdvw1")
   .I PC=3 D BUTTONSPC3("hdvw1")
 D W("</tr>")
 D W("</table>")
 Q
 ;
TEL(MSD) ;
 N TEL,MSL
 S MSL=$$GET^%W1PRM("MSL")
 S TEL="<span dir=""LTR"" style=""color:"_$$FGHDMSD^W3CSS()_""" >"_$$TEL^W3MSD(MSD)_"</span>"
 I MSL S TEL="</td><td>057-5000-500</td><td>"_$$^%W1DICT("SHLUHA")_"</td><td>"_MSL
 Q TEL
 ;
SETPAYM(PARM) ;
 N SUGT,HR
 D PUT^%W3DEB("W3ORDVW","PARM=PARM")
 S SUGT=$P(PARM,"~")
 S HR=$P(PARM,"~",2)
 D PUTCODTS(SUGT)
 Q
 ;
PUTCODTS(SUGT) ;
 I $$CLOSE^W3HZMST(JB) Q
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",21)=SUGT
 Q
 ;
SETCIBUS(PRMCIB) ;
 N CIBCOMP,CIBCARD
 D PUT^%W3DEB("W3ORDVW","PRMCIB=PRMCIB")
 S CIBCOMP=$P(PRM,";")
 S CIBCARD=$P(PRM,";",2)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",45)=CIBCOMP
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",46)=CIBCARD
 Q
 ;
SETTENBIS(PRMTNB) ;
 N TNBCOMP,TNBCARD
 D PUT^%W3DEB("W3ORDVW","PRMTNB=PRMTNB")
 S TNBCOMP=$P(PRM,";")
 S TNBCARD=$P(PRM,";",2)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",52)=TNBCOMP
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",53)=TNBCARD
 Q
 ;
SETCREDIT(PRMCRED) ;
 N CREDCARD
 D PUT^%W3DEB("W3ORDVW","PRMCRED=PRMCRED")
 S CREDCARD=$P(PRM,";",1)
 S CREDMM=$P(PRM,";",2)
 S CREDYY=$P(PRM,";",3)
 S CREDTZ=$P(PRM,";",4)
 S CREDCVV=$P(PRM,";",5)
 I $L(CREDMM)=1 S CREDMM="0"_CREDMM
 I $L(CREDYY)=4 S CREDYY=$E(CREDYY,3,4)
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",48)=CREDCARD
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",49)=CREDMM_"/"_CREDYY
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",50)=CREDTZ
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",61)=CREDCVV
 Q
 ;
W(TXT)
 W TXT I '$D(W3FAXHTM("SNDMAIL")) W !
 Q:'$G(W3FAXHTM)
 N IND S IND=$O(^[$$^W3MAIN]TMPFAX(JB,99999),-1)+1
 S ^[$$^W3MAIN]TMPFAX(JB,IND)=$E(TXT,1,800)
 Q
 ;
CIBUS(STAM) ;
 I $$MKRZAR Q 0
 I $$^W4DLVCSR>1 Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("CIBUS")) Q 1
 Q 0
CIBDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("COMPANYNUMBER")_" : "_$$CIBCOMP^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : "_$$CIBCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
COUPONPHONE(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("COUPONPHONE")) Q 1
 Q 0
 ;
TENBIS(STAM) ;
 I $$MKRZAR Q 0
 I $$^%W1LNG="H"&$G(@$$^W4GL("P1PRM")@("TENBIS")) Q 1
 Q 0
 ;
TNBDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("COMPANYNUMBER")_" : "_$$TNBCOMP^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : "_$$TNBCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
CREDDETAILS(HZ) ;
 N GL D GL
 N JB S JB=HZ
 I $G(W3ORDLS) S GL=$$^W3ORD
 N ST S ST="&nbsp;&nbsp;&nbsp;&nbsp;"_$$CREDCARD^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("UNTILMMYY")_" : "_$$CREDMMYY^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("IDNUMBER")_" : "_$$CREDTZ^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 S ST=ST_"&nbsp;&nbsp;&nbsp;&nbsp;CVV2 : "_$$CREDCVV2^W3HZMST(HZ,GL)_"&nbsp;&nbsp;&nbsp;"
 Q ST
 ;
PCHZ(HZ) ;
 I '$G(HZ) Q 1
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) Q 1
 I $D(@$$^W3ORD(HZ)@(HZ,"D")) Q 1
 I $D(@$$^W3ORD(HZ)@(HZ,"PC",REM)) Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD(HZ)),3)<$H Q 1
 Q 0
 ;
GETSOUND(HZ) ;
 I '$G(HZ) Q 1
 N JB S JB=HZ
 I $D(@$$^W3ORD(HZ)@(HZ,"SOUND",$$REM)) Q 1
 I $$^%L1DC($$DAT^W3HZMST(HZ,$$^W3ORD(HZ)),3)<$H Q 1
 Q 0
 ;
SETPC(HZ) ;
 I '$G(HZ) Q
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 S @$$^W3ORD(HZ)@(HZ,"PC",REM)=""
 Q
 ;
SETSOUND(HZ) ;
 I '$G(HZ) Q 0
 I HZ[";" S REM=$P(HZ,";",2),HZ=+HZ
 I $G(REM)="" S REM="UNKNOWN"
 N JB S JB=HZ
 S @$$^W3ORD(HZ)@(HZ,"SOUND",REM)=""
 Q 1
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
SELMMYY ;
 N I,YY
 D W("<select id=""mmid"" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(">")
 F I=1:1:12 D W("<option value="""_$TR($J(I,2)," ",0)_""">"_$TR($J(I,2)," ",0)_"</option>")
 D W("</select>&nbsp;")
 S YY=$ZD($H,"YY")
 D W("<select id=""yyid"" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(" >")
 F I=1:1:10 D
 .D W("<option value="""_(2000+YY+I-1)_""""_$S(I=2:" selected=""selected""",1:"")_" >"_(2000+YY+I-1)_"</option>")
 D W("</select>")
 Q
 ;
NOM(STAM) ;
 I $G(W3ORDLS("NOM")) Q W3ORDLS("NOM")
 Q $$HZ
 ;
HZ(STAM) ;
 N HZ S HZ=$S($G(W3ORDLS):W3ORDLS,1:JB)
 ;;I $G(@$$^W3ORD(HZ)@(HZ,"HZRSD")) Q ^("HZRSD")
 Q +HZ
 ;
MKRZAR(STAM) ;
 I $$MKR^W3HZMST(JB)=2 Q 1
 Q 0
 ;
NOCASH(STAM) ;
 I $$GET^%W1PRM("REST")!$$NOCASH^W3PRM Q 1
 Q 0
 ;
NOCHECK(STAM) ;
 I '$$ISCH^W3L(CODE)!$$NOCHECK^W3PRM Q 1
 Q 0
 ;
NOCRCARD(STAM) ;
 Q +$$NOCRCARD^W3PRM
 ;
PIC(CD) ;
 S W3GETPIC("MSD")=MSD
 D W("<td align=""center""><img src="""_$$PICTURE^W3HZPRTN(CD,"pic")_""" width=""100"" height=""67"" onMouseOver=""openPic1('"_CD_"','"_MSD_"')"" onMouseOut=""closePic1()"" ></td>")
 Q
 ;
LASTTD ;
 I '$$^W3HZMH($$HZ),$$CMNT^W3PRM D W("<td>&nbsp;</td>")
 I $$^W3HZMH($$HZ),$$PICTURE^W3PRM D W("<td>&nbsp;</td>")
 Q
 ;
SNDDLV(MSD,ORD,DLV) ;
 ;
 I $G(DLV)[";" D
 .N SND,FAX,EMAIL,LINK,DET
 .S SND=$P($P(DLV,";",2),"-")
 .S DET=$P($P(DLV,";",2),"-",2)
 .S OK=0
 .I SND="F" D  Q
 ..S FAX=$P(DLV,";",3) Q:'FAX
 ..I $$SNDFAX^W3SNDHMH(FAX_";;"_DET) D ^W3REGFAX(ORD) S OK=1
 .
 .I SND="E" D  Q
 ..S ^LL(1)=DLV
 ..S EMAIL=$P(DLV,";",3) Q:'$L(EMAIL)
 ..S LINK=$P($$WEB^W3MAIN,"//",2,20)_"w3ordvw.jsp?MSD="_MSD_"&W3ORDLS="_ORD_"&RCV=1"
 ..D PUT^%W1PRM("ORD",ORD)
 ..N MENU,KASHRUT,ISHUR,TXT
 ..S MENU=$P(DLV,";",7)
 ..S KASHRUT=$P(DLV,";",8)
 ..S ISHUR=$P(DLV,";",9)
 ..S TXT=$P(DLV,";",10,200)
 ..;
 ..I $$SNDMAIL^W3SNDHMH(EMAIL_";"_LINK_";"_DET_";"_MENU_";"_KASHRUT_";"_ISHUR_";"_TXT) D
 ...S @$$^W3ORD(ORD)@(ORD,"EMAIL")=$H,OK=1
 Q
 ;
 ;
SP(STAM) ;
 I $$^%W1LNG'="H" Q "&nbsp;&nbsp;"
 Q ""
 ;
CHKMMYY(PRM) ;
 N MM,YY,DAT,J
 S MM=$E(PRM,1,2)
 S YY=$E(PRM,5,6)
 F J=31:-1:28 S DT=$$^%L1DC(J_MM_YY,3) Q:DT
 I DT<$H Q 0
 Q 1
 ;
MSDPRT(ORD) ;
 N A,N,CD,MSDPRT S N="",MSDPRT=""
 F  S N=$O(@$$^W3ORD@(ORD,N)) Q:N=""  I N D  Q:MSDPRT
 .S A=$G(^(N))
 .S CD=$P(A,"~",2) Q:'CD
 .I $G(@$$^W4GL("W4MSDPRT")@(CD)) S MSDPRT=^(CD)
 Q MSDPRT
 
 
 
 
 
 
 
 
 
 
 
 

W3P
P1P ; PARAMETRIM PARIT                [ 21.10.18 09:13 ] [ 17.10.18 12:49 ] [ 10.10.16 11:42 ] 
PAR ;
 Q:'$D(PAR)
 I $E(PAR,1,2)="A-",$P(PAR,"-",3) S PAR=$P(PAR,"-",3) Q  ;-- AI , PAR+KV.TSF.
 I $E(PAR,1,2)="A-",$P(PAR,"-",3)="",$P(PAR,"-",2) S PAR=$P(PAR,"-",2) Q  ;-- AI , PAR+KV.TSF.
 I PAR?1N.N1"-"1N.N S PAR=$P(PAR,"-") ;-- RAV BRERA
 Q
SHEM(PAR) ;
 N T I PAR="" S T="?????" G ES
 I PAR?1"S"1N!(PAR?1"q"1N) S T=$E(PAR,2)_" rvanl hq " G ES
 D PAR
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**")
 ;I T["^" S T=$P(T,"^",2,25)
ES Q T
 ;
SHEML(PAR) ;----- LOASIT --
 N T I PAR="" S T="" G ESL
 I PAR?1"S"1N!(PAR?1"q"1N) S T="SET "_$E(PAR,2) G ES
 D PAR
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",14)
 I T?.P Q $$SHEM(PAR)
ESL Q T
 ;
MH(PAR) ;
 N CODE S CODE=$TR($$GET^%W1PRM("CODE"),"!-","")
 I $G(CODE),$L(CODE)>3 N NMB S NMB=CODE
 N T,HN,MH,OK S OK=0 I PAR="" S T="?????" G EM
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",2)
 ;
 I $G(NMB),$L(NMB)>3 D MHLKH(NMB,1) I OK D EM00 G EM
 ;
 I $L($G(NMB))<4,$L($G(LKHN))>3 D MHLKH(LKHN,0) I OK D EM00 G EM
 ;
 I '$$^W4TCHLL,$G(NMB),$L(NMB)<4,$$TAW^W4DLPK(NMB),$D(@$$^W4GL("PARTA")@(PAR)) S T=@$$^W4GL("PAR") D EM00 G EM
 I $$^W4TCHLL,$G(NMB),$L(NMB)<4,$G(LLTAW),$D(@$$^W4GL("PARTA")@(PAR)) S T=@$$^W4GL("PARTA")@(PAR) D EM00 G EM
 ;
 I $D(@$$^W4GL("PARSHA")),$D(ZMANK) D  D EM00 I OK!(+MH'=-.1) G EM
 .N N,MES,ADS,ZM,TM,DAY,MEJ,ADJ,MET,ADT,A,D
 .S ZM=ZMANK S:ZMANK["  " ZM=$P(ZMANK,"  ",2)
 .I ZM["PM" S ZM=ZM+12_":"_$P(ZM,":",2)
 .S ZM=ZM*60+$P(ZM,":",2) D ^W4IN
 .S DAY=$$^%L1DC(P1DZ,8)
 .S N="",MH=-.1 F  S N=$O(@$$^W4GL("PARSHA")@(N)) Q:N=""  S A=$G(^(N))  I $D(@$$^W4GL("PARSHA")@(N,PAR)) D  I +MH'=-.1 S T=MH Q
 ..D PRS^%L1FRM(A,"MET\ADT\MEJ\ADJ","\")
 ..I DAY<MEJ!(DAY>ADJ) Q
 ..S MES=MET*60+$P(MET,":",2),ADS=ADT*60+$P(ADT,":",2)
 ..I ADS<MES S ADS=ADS+(24*60)
 ..I ZM<(6*60) S ZM=ZM+(24*60)
 ..I ZM'<MES,ZM'>ADS S MH=$G(@$$^W4GL("PARSHA")@(N,PAR))
 ;
 I $L($G(NMB))<4 D EM00 I OK G EM
EM0 I $G(@$$^W4PRM@("MHSHAA")),$G(NMB),$D(HZM),$D(ZMANK) D HNHSTV^W4HNHSHA I $G(HN) S T=$J(T*(100-HN)*.01,2,2)
EM Q T
EM00 S OK=0 I $G(PRMHNMB),$$AH^W3L(PRMHNMB),$L(NMB)<4 S T=$J(T*(100-$$AH^W3L(PRMHNMB))*.01,2,2) S OK=1
 Q
 ;
MHLKH(NMB,PR) ;
 I $G(@$$^W4GL("P1EZL")@(NMB)),$D(@$$^W4GL("PARLKH")@(@$$^W4GL("P1EZL")@(NMB),PAR)) S T=^(PAR),OK=1 G EMHL
 I $D(@$$^W4GL("PARLKH")@(NMB,PAR)) S T=^(PAR),OK=1 G EMHL
 S OK=0 I $G(PRMHNMB),$$AH^W3L(PRMHNMB),$L(NMB)<4 S T=$J(T*(100-$$AH^W3L(PRMHNMB))*.01,2,2) S OK=1
 N SUGL S SUGL=$$SUGL^W4L(NMB) I SUGL?.P G MHLKH1
 I $D(@$$^W4GL("PARSLK")@(SUGL,PAR)) S T=^(PAR),OK=1 G EMHL
MHLKH1 I $L(NMB)>3,$G(PR),$D(@$$^W4GL("PARMS")@(PAR)) S T=$G(^(PAR))
EMHL ;
 Q
 ;
MHD(PAR) ;
 N T I PAR="" S T="?????" G EMD
 S T=$P($G(@$$^W4GL("PAR")@(PAR,"R")),"**")
EMD Q T
 ;
MSK(PAR) ;
 N T I PAR="" S T="?????" G EMS
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",3)
EMS Q T
 ;
AHUZ(PAR) ;
 N T I PAR="" S T="?????" G EA
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",7)
EA Q T
 ;
SPK(PAR) ;
 N T I PAR="" S T="?????" G ESP
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",8)
ESP Q T
 ;
SUG(PAR) ;
 N T I PAR="" S T="?????" G ESU
 D PAR
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",5)
 I T="" S T=0
ESU Q T
 ;
SUG1(PAR) ;
 N SUG,SUG1 S SUG1=""
 S SUG=$$SUG(PAR)
 I 'SUG Q ""
 I $G(PAR)="" Q SUG1
 S SUG1=$G(@$$^W4GL("PARSUG")@(SUG))
 Q SUG1
 ;
PRINT(PAR) ;
 N T I PAR="" S T="?????" G ESPR
 D PAR
 S T=$$SPA^%L1FRM($P($G(@$$^W4GL("PAR")@(PAR)),"**",11))
ESPR Q T
 ;
PRINT1(PAR) ;
 N T,PRINT S T="" S PRINT=$$PRINTPC(PAR)
 I PRINT Q $P($G(@$$^W4PRM@("MDP",+PRINT)),"\",4)
EP1 Q 0
 ;
PRINTP(PAR) ;
 N PRINT
 D PAR
 N T S T="" S PRINT=$$PRINTPC(PAR)
 I PRINT Q $$PORT(+PRINT)
EPP Q 0
 ;
PRINTPC(PAR) ;
 N MDP S MDP=$$PRINT(PAR)
 I MDP[":",MDP[";" D
 .N MP,US,I,OK S OK=0
 .F I=1:1:$L(MDP,";") D  Q:OK
 ..S MP=$P(MDP,";",I),US=$P($P(MDP,";",I),":",2)
 ..I (","_US_",")[(","_$$^%L3MYDVN_",")!(US="") S MDP=MP,OK=1 Q
 Q MDP
 ;
PORT(PRINT) I $G(PRINT)="" Q ""
 Q $P($G(@$$^W4PRM@("MDP",PRINT)),"\",3)
 ;
CEVA(PAR) ;
 N T I PAR="" S T="?????" G ESC
 D PAR
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",12)
ESC Q T
 ;
HRA(PAR) ;
 N T I PAR="" S T="?????" G ESH
 S T=$P($G(@$$^W4GL("PAR")@(PAR)),"**",13)
ESH Q T
 ;
NOPIZA(PAR) ;
 N SUG S SUG=$G(@$$^W4GL("PARSUG")@($$SUG(PAR)))
 Q $S(SUG["dvit":0,1:1)
 ;
DEP(PAR) ;
 Q $G(@$$^W4GL("PARSUG")@($$SUG(PAR),1))
 ;
DEP1(PAR) I $L($$DEP(PAR)) Q $G(^DEP($$DEP(PAR)))
 Q ""
 ;
DESC(PAR) ;
 N DESC S DESC=""
 N NODESC S NODESC=""
 I '$D(@$$^W4GL("L1TIP")@("MTK",PAR,1)) Q NODESC
 ;
 N I F I=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",PAR,I))  D
 .N A S A=$G(^(I)) Q:A=""
 .S DESC=DESC_$$H2U^%L1FRM($$SPA^%L1FRM(A))_" " ;"<br>"
 Q DESC
 ;
PIC(PAR) ;
 N PATH S PATH=$$GETPIC^W3ENTER(PAR)
 Q $P(PATH,"~",2)
 ;
UCI(STAM) ;
 I $G(JB) Q $$^%W1UCI(JB)
 Q $ZG
 
 
 

W3P1IR
W3P1IR ; [ 06.01.08 12:16 ] [ 29.12.07 11:49 ] [ 09.12.07 06:52 ]
 M ^P1IRO=^P1IR
 K ^P1IR0,^P1IR1
 M ^P1IR0(1)=^P1IR(1)
 M ^P1IR0(2)=^P1IR(2)
 S N="" F I=1:1  S N=$O(^P1IR(N)) Q:N=""  D
 .I I>2 M ^P1IR1($$INV^%L1FRM(^P1IR(N)))=^P1IR(N)
 ;
 K ^P1IR
 M ^P1IR(1)=^P1IR0(1)
 M ^P1IR(2)=^P1IR0(2)
 S N="" F I=1:1 S N=$O(^P1IR1(N)) Q:N=""  D
 .M ^P1IR(I+2)=^P1IR1(N)
 ;
IRSTR ;
 S GL="^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM)"
 S IR="" F  S IR=$O(@GL@(IR)) Q:IR=""  D
 .S IR1=^(IR)
 .S N="" F  S N=$O(^P1IR(N)) Q:N=""  D
 ..S IR2=^(N)
 ..I $TR(IR2,"i- ","")=$TR(IR1,"i- ","") D
 ...W "IR2:"_IR2_" = IR1:"_IR1,!
 ...S ^P1IR(N)=IR1
 Q

W3PARLKH
W3PARLKH ; [ 20.05.26 18:42 ] [ 18.05.26 11:50 ] [ 17.05.26 11:50 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3PARLKH","%ARG=[%ARG")
 D GL
 ;
 S LKH=$G(%ARG("LKH")) Q:'LKH
 I $D(%ARG("LKH")) D PUT^%W1PRM("LKH",%ARG("LKH"))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D EX
 ;
 W "<table id=""caption"" width=""90%"" >",!
  W "<tr>",!
   W "<td style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_";width:80%"" >"
     W $$CAPTION(LKH)
   W "</td>",!
   W "<td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;"
    W "<input type=""checkbox"" id=""lmam"" onClick=""ClickLMam()"" "_$S($G(%ARG("LMAM")):"checked=""checked"" ",1:"")_" />"
   W "</td>"
  W "</tr>"
 W "</table>",!
 ;
 W $$^W4DVTBFX("90%")
 W "<table dir="""_$$^%W1DIR_""" id=""TblLkP"" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"">",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""20%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("NORMALPRICE")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("CUSTOMERPRICE")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .W "<tr id=""trlkp"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .N MH S MH=$$MH^W4P(N)
 .I $$LMAM,$$AHMAM S MH=MH*100/(100+$$AHMAM)
 .W "<td align=""center"">"_$J(MH,2,2)_" </td>"
 .S BGR="white"
 .N MHLK S MHLK=$G(@GL@(N)) I MHLK="" S MHLK=$$^%W1DICT("NORMAL"),BGR="yellow"
 .I MHLK S MHLK=$J(MHLK,2,2)
 .I $$LMAM,$$AHMAM,MHLK S MHLK=$J(MHLK*100/(100+$$AHMAM),2,2) S @GL@(N)=MHLK
 .
 .W "<td align=""center""><input style=""background-color:"_BGR_""" type=""text"" id=""mhlkh"_N_""" size=""6"" maxlength=""7"" value="""_MHLK_""" onClick=""this.select()"" onKeyUp=""parent.CustomerPrice('"_N_"',this.value)""></td>"
 .
 .N ID,PROC S ID="chlkp"_N
 .S PROC="OnClickTbl('"_N_"','TblLkP','trlkp','chlkp')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</div>",!
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPPAR($$^%W1JB)"
 Q
 ;
SAVE(NEWLKH) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 N OLDLKH S OLDLKH=$$GET^%W1PRM("LKH")
 ;
 D PUT^%W3DEB("W3PARLKH-SAVE","OLDLKH=OLDLKH & NEWLKH=NEWLKH & GL = GL")
 I OLDLKH D
 .K @$$^W4GL($$GLOBNAME)@(OLDLKH)
 .N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..N VL S VL=$$SPA^%L1FRM($G(^(N)))
 ..S VL=$TR(VL,",",".")
 ..S VL=$$SPA^%L1FRM(VL)
 ..I $$LMAM S VL=$J(VL*(100+$$AHMAM)*.01,2,2)
 ..I $$ISNUM^%L1FRM(VL) D
 ...S @$$^W4GL($$GLOBNAME)@(OLDLKH,N)=+VL
 K @GL
 I $G(NEWLKH) D PAR2TMP(NEWLKH)
 Q
 ;
PLUSMAM ;
 D GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N VL S VL=$$SPA^%L1FRM($G(^(N)))
 .S VL=$TR(VL,",",".")
 .S VL=$$SPA^%L1FRM(VL)
 .S VL=$J(VL*(100+$$AHMAM)*.01,2,2)
 .S @GL@(N)=VL
 Q
 ;
DEL(LKH) ;
 Q:'$G(LKH)
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 D PUT^%W3DEB("W3PARLKH-DEL","LKH=LKH & GL = GL")
 Q:'$G(LKH)
 I LKH D
 .K @$$^W4GL($$GLOBNAME)@(LKH)
 K @GL
 Q
 ;
MVPR2LK(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 D PUT^%W3DEB("W3PARLKH-MVPR2LK","PRM=PRM & GL=GL")
 S PRM=$E(PRM,1,$L(PRM)-1)
 S PRM=$P(PRM,";",2,$L(PRM,";"))
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:$D(@GL@(CD))
 .S @GL@(CD)=""
 .S OK=1
 Q OK
 ;
MVLK2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 D PUT^%W3DEB("W3PARLKH-MVLK2PR","PRM=PRM & GL=GL")
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GL@(CD))
 .K @GL@(CD)
 .S OK=1
 Q OK
 ;
GROUP ;
 I FIRSTGR="LKH",'$$SMALL,'$$SLK,'$G(%ARG("MHONLY")) D CUSTOMINPUT Q
 ;
 W "<select "
 ;
 I FIRSTGR="KVPRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt()"" >",!
 .I '$$^W4MUCHIT D
 ..W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .
 .D ^W4ABCKVZ
 .N NN,II,N S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 ..S NN=$G(^(N)) Q:NN=""
 ..S II=II+1
 ..W "<option value="""_NN_""""
 ..I NN=$$^W3FRSTGR W " selected=""selected"""
 ..W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 ;
 I FIRSTGR="LKH" D
 .W " id=""lkh"""
 .W " onChange=""AskSave();ShowLkP(this.value);ShowPrt()"""
 .W " >",!
 .D GLLK
 .
 .I '$$SLK D
 ..I $G(%ARG("MHONLY"))!$$SMALL D
 ...N NN,II S NN=$S($G(%ARG("MHONLY")):"",1:999),II=0
 ...N GL S GL="LKH" I $G(%ARG("MHONLY")) S GL="PARLKH"
 ...D SHOWLKH(GL,NN)
 ..
 .
 .I $$SLK D
 ..I '$G(%ARG("MHONLY")) D
 ...N NN,II S II=0
 ...D SHOWSLK("SUGL")
 ..
 ..I $G(%ARG("MHONLY")) D
 ...N NN,II S II=0
 ...D SHOWSLK("PARSLK")
 ;
 ;
 W "</select>",!
 Q
 ;
HZGLKH(NN,NN1) ;
 S II=II+1
 I '$D(NN1) S NN1=NN
 W "<option value="""_NN_""""
 I II=1 W " selected=""selected"""
 W " >"_NN1_"&nbsp;"_$J($$H2U^%L1FRM($$LKH^W4L(NN)),20)_"</option>",!
 Q
 ;
HZGSLK(NN,NN1) ;
 I '$D(NN1) S NN1=NN
 S II=II+1
 W "<option value="""_NN_""""
 I II=1 W " selected=""selected"""
 W " >"_NN1_"&nbsp;"_$J($$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(NN))),20)_"</option>",!
 Q
 ;
PAR2TMP(LKH) ;
 Q:'$G(LKH)
 D GL K @GL
 M @GL=@$$^W4GL($$GLOBNAME)@(LKH)
 I $$LMAM D
 .N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..N MHLK S MHLK=$J($G(^(N))*100/(100+$$AHMAM),2,2)
 ..S @GL@(N)=MHLK
 Q
 ;
FIRSTGR(STAM) ;
 N N,GLLK
 D GLLK
 I '$$SLK S N=999 F  S N=$O(@GLLK@(N)) Q:N=""  I $$MAZAV^W4L(N) Q
 I $$SLK S N=$O(@$$^W4GL("SUGL")@(""))
 Q N
 ;
SETMH(PRM) ;
 D PUT^%W3DEB("W3PARLKH-SETMH","PRM=PRM")
 N CODP,MH
 S CODP=$P(PRM,";")
 S MH=$P(PRM,";",2)
 I CODP=""!(MH="") Q
 D GL
 S @GL@(CODP)=MH
 Q
 ;
SLK(STAM) ;
 I $$GET^%W1PRM("SLK") Q 1
 Q 0
 ;
CUSTOMINPUT ;
 N GLLK D GLLK
 S:'$D(LKH) LKH=$O(@GLLK@(999))
 W "<table width=""100%"" border=""0"" cellpadding=""0"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr valign=""top"">"
     W "  <td width=""15%""> "_$$^%W1DICT("CUSTOMNUMBER")_"</td>",!
     W "  <td width=""30%""><input type=""text"" id=""lkh""  maxlength=""11"" size=""8"" value="""_LKH_""" onClick=""this.select()"" onKeyUp=""ChangeCd()"" onChange=""AskSave();Find('lkh','lkh','LKH','600px','120px')"" >",!
      W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick=""Find('lkh','lkh','LKH','600px','120px')"" >",!
     W "  </td>",!
     W "  <td width=""8%"" >"_$$^%W1DICT("NAME")_"</td>",!
     W "  <td "_$$^%W1ALIGN_" ><input type=""text"" id=""lkh1"" readonly=""readonly"" size=""24"" value="""_$$H2U^%L1FRM($$LKH^W4L(LKH))_""">",!
     W "  </td>",!
  W "</tr>",!
  W "<tr>"
  W " <td colspan=""4"">"
   W $$^%W1DICT("SHOWCUSTOMERSWITHPRICESLISTONLY")
   W "&nbsp;<input type=""checkbox"" id=""mhonly"""
   W $S($G(%ARG("MHONLY")):"checked=""checked""",1:"")
   W " onChange=""PageReload()"""
  W " </td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
SMALL(STAM) ;
 N N,I S N=999,I=0
 N GLLK D GLLK
 F I=1:1 S N=$O(@GLLK@(N)) Q:N=""
 I I>20 Q 0
 Q 1
 ;
GLOBNAME(STAM) ;
 I $$SLK Q "PARSLK"
 Q "PARLKH"
 ;
CAPTION(LKH) ;
 S LKH=$G(LKH)
 I LKH="" S PRM=";"
 I LKH'="",$$SLK S PRM=LKH_"<>"_$G(@$$^W4GL("SUGL")@(LKH))
 I LKH'="",'$$SLK S PRM=LKH_"<>"_$$LKH^W4L(LKH)
 ;
 I '$$SLK Q $$^%W1DICT("CUSTOMERPRICESLIST",PRM)
 Q $$^%W1DICT("CUSTOMERSGROUPITEMSPRICESLIST",PRM)
 ;
GLLK N GL D GL^W3L S GLLK=GL
 Q
 ;
SHOWLKH(GLNAME,BG) ;
 S BG=$G(BG)
 N NN,II S NN=BG,II=0
 ;
 I $G(%ARG("ABC")) D  Q
 .N GLVRM S GLVRM=$$^W4MAIN("VRM")
 .K @GLVRM
 .F  S NN=$O(@$$^W4GL(GLNAME)@(NN)) Q:NN=""  D
 ..N NM
 .. S NM=$$LKH^W4L(NN) Q:NM=""
 ..N IND S IND=$$^W4ABCIND(NN,NM) Q:IND=""
 ..S @GLVRM@(IND)=NN
 .F  S NN=$O(@GLVRM@(NN)) Q:NN=""  D
 ..N LK S LK=$G(^(NN))
 ..D HZGLKH(LK,"")
 .K @GLVRM
 ;
 F  S NN=$O(@$$^W4GL(GLNAME)@(NN)) Q:NN=""  D HZGLKH(NN)
 Q
 ;
 ;
SHOWSLK(GLNAME) ;
 N NN,II S NN="",II=0
 ;
 I $G(%ARG("ABC")) D  Q
 .N GLVRM S GLVRM=$$^W4MAIN("VRM")
 .K @GLVRM
 .F  S NN=$O(@$$^W4GL(GLNAME)@(NN)) Q:NN=""  D
 ..N NM
 ..S NM=$G(@$$^W4GL("SUGL")@(NN)) Q:NM=""
 ..N IND S IND=$$^W4ABCIND(NN,NM) Q:IND=""
 ..S @GLVRM@(IND)=NN
 .F  S NN=$O(@GLVRM@(NN)) Q:NN=""  D
 ..N LK S LK=$G(^(NN))
 ..D HZGSLK(LK,"")
 .K @GLVRM
 ;
 F  S NN=$O(@$$^W4GL(GLNAME)@(NN)) Q:NN=""  D HZGSLK(NN)
 Q
 ;
 ;
EX ; 
 N N,I,GLEX,MH,MHLK,ST
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 S GLEX=$$^%W1GLPRM K @GLEX
 ;
 S ST="ewll xign*libx xign*hixt my*cew"
 S ST=$$INVD^%L1FRM(ST,"*")
 S @GLEX@("GLOUT",1)=ST
 S N="",I=1 F  S N=$O(@GL@(N)) Q:N=""  D
 .N MH S MH=$J($$MH^W4P(N),2,2)
 .S ST=N_"*"_$$SHEM^W4P(N)_"*"_MH
 .N MHLK S MHLK=$G(@GL@(N)) S:MHLK="" MHLK=MH
 .S ST=ST_"*"_$J(MHLK,2,2)
 .S I=I+1,@GLEX@("GLOUT",I)=ST
 ;
 D DIVEXC^%W1PC1("W3PARLKH","%W1PCEX")
 Q 
 ;
LMAM() 
 Q $$GETP^%W1PRM("LMAM")
 ; 
AHMAM() ; 
 Q $G(@$$^W4PRM@("MAM")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PARMSL
W3PARMSL ; [ 24.02.25 12:26 ] [ 12.11.24 17:55 ] [ 05.08.23 18:20 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3PARMSL","%ARG=[%ARG")
 D GL
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W $$^W4DVTBFX("98%"),!
 W "<table dir="""_$$^%W1DIR_""" id=""TblMsP"" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"">",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""20%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 I '$$DEP,'$$THN D
 .W "<th width=""20%"">"_$$^%W1DICT("NORMALPRICE")_"</th>"
 .W "<th width=""20%"">"_$$^%W1DICT("CUSTOMERPRICE")_"</th>"
 I $$DEP!$$THN D
 .W "<th width=""20%"">"_$$^%W1DICT("NORMALDEP")_"</th>"
 .W "<th width=""20%"">"_$$^%W1DICT("NEWDEP")_"</th>"
 ;
 W "<th width=""20%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 W "</thead>",! 
 ;
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .W "<tr id=""trmsp"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .N OLDVL S OLDVL=$S($$DEP!$$THN:$$H2U^%L1FRM($$DEP1^W4P(N,1)),1:$J($$MH^W4P(N),2,2))
 .W "<td align=""center"">"_OLDVL_"</td>"
 .N NEWVL
 .D
 ..S NEWVL=$G(@GL@(N))
 ..I NEWVL="" D  S BGR="yellow" Q
 ...I $$DEP!$$THN S NEWVL="NORM" Q
 ...S NEWVL=$$^%W1DICT("NORMAL")
 ..S BGR="white"
 ..I NEWVL,'$$DEP,'$$THN S NEWVL=$J(NEWVL,2,2)
 .
 .W "<td align=""center"">"
 .I '$$DEP,'$$THN D
 .. W "<input type=""text"" style=""background-color:"_BGR_""" "
 .. W "id=""newvl"_N_""" size=""6"" maxlength=""7"" value="""_NEWVL_""" "
 .. W "onClick=""this.select()"" "
 .. W "onKeyUp=""parent.CustomerPrice('"_N_"',this.value)"">"
 .I $$DEP!$$THN D
 .. W "<select id=""newvl"_N_""" "
 .. W " onChange=""parent.NewDep('"_N_"',this.value)"" "
 .. W ">"
 .. W "<option value=""NORM"" "
 .. I NEWVL="NORM" W " selected=""selected"" "
 .. W " >"_$$^%W1DICT("NORMAL")_"</option>",!
 .. N NN S NN="" F  S NN=$O(@$$^W4GL("DEP")@(NN)) Q:NN=""  D
 ... W "<option value="""_NN_""" "
 ... I NN=NEWVL W " selected=""selected"" "
 ... W ">"_NN_" "_$$H2U^%L1FRM($G(^(NN)))_"</option>",!
 .. W "</select>",!
 .W "</td>",!
 .
 .N ID,PROC S ID="chmsp"_N 
 .S PROC="OnClickTbl('"_N_"','TblMsP','trmsp','chmsp')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPPAR($$^%W1JB)"
 Q
 ;
 ;
SAVE ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 ;
 D PUT^%W3DEB("W3PARMSL-SAVE","GL = GL")
 ;
 K @$$^W4GL($$GLOBNAME)
 ;
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N VL S VL=$$SPA^%L1FRM($G(^(N)))
 .S VL=$TR(VL,",",".")
 .I $$ISNUM^%L1FRM(VL) D
 ..S @$$^W4GL($$GLOBNAME)@(N)=+$$SPA^%L1FRM(VL)
 ;
 Q
 ;
 ;
MVPR2MS(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 D PUT^%W3DEB("W3PARMSL-MVPR2MS","PRM=PRM & GL=GL")
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:$D(@GL@(CD))
 .S @GL@(CD)=""
 .S OK=1
 Q OK
 ;
MVMS2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 D PUT^%W3DEB("W3PARMSL-MVMS2PR","PRM=PRM & GL=GL")
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GL@(CD))
 .K @GL@(CD)
 .S OK=1
 Q OK
 ;
 ;
GROUP ;
 W "<select "
 ;
 I FIRSTGR="KVPRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt()"" >",!
 .
 .I '$$^W4MUCHIT D
 ..W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .D ^W4ABCKVZ
 .N NN,II,N S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 ..S NN=$G(^(N))
 ..S II=II+1
 ..W "<option value="""_NN_""""
 ..I NN=$$^W3FRSTGR W " selected=""selected"""
 ..W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
 ;
PAR2TMP ;
 D GL K @GL
 M @GL=@$$^W4GL($$GLOBNAME)
 Q
 ;
SETVL(PRM) ;
 D PUT^%W3DEB("W3PARMSL-SETVL","PRM=PRM")
 N CODP,VL
 S CODP=$P(PRM,";")
 S VL=$P(PRM,";",2)
 I CODP=""!(VL="") Q
 D GL
 S @GL@(CODP)=VL
 Q
 ;
GLOBNAME(STAM) ;
 I $$TAW Q "PARTA"
 I $$DEP Q "PARDEP"
 I $$THN Q "W4PRTDEP"
 Q "PARMS"
 ;
DLV(STAM) ;
 I $G(%ARG("TBL"))="DLV" Q 1
 I $$GETP^%W1PRM("TBL")="DLV" Q 1
 Q 0
 ;
TAW(STAM) ;
 I $G(%ARG("TBL"))="TAW" Q 1
 I $$GETP^%W1PRM("TBL")="TAW" Q 1
 Q 0
 ;
DEP(STAM) ;
 I $G(%ARG("TBL"))="DEP" Q 1
 I $$GETP^%W1PRM("TBL")="DEP" Q 1
 Q 0
 ;
THN(STAM) ;
 I $G(%ARG("TBL"))="THN" Q 1
 I $$GETP^%W1PRM("TBL")="THN" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PARSUG
W3PARSUG ; [ 12.06.12 14:52 ] [
CMNT(SUG) ;
 Q $G(@$$^W4GL("PARSUG")@(SUG,"CMNT"))
 ;
PUT(SUG,RKV,VL) ;
 I RKV="CMNT" S @$$^W4GL("PARSUG")@(SUG,"CMNT")=VL
 Q
 ;

W3PAY
W3PAY(ORD) ; [ 29.12.24 12:07 ] [ 12.05.23 06:44 ] [ 01.03.23 13:42 ] 
 N (JB,%ARG,ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S DLM=$$DLM
 ;
 I $G(ORD)="" S ORD=JB
 ;
 I $$PLC^W3PRM D
 .N TMPCA D TMPCA
 .N IND,SUM,CA S IND=$$INDCA Q:'IND
 .I $L($G(%ARG("PelecardTransactionId"))) S @TMPCA@("CA",IND,"PLCID")=%ARG("PelecardTransactionId")
 .I $L($G(%ARG("ConfirmationKey"))) S @TMPCA@("CA",IND,"PLCKEY")=%ARG("ConfirmationKey")
 .I $G(%ARG("PelecardStatusCode"))="000" D
 ..S SUM=$G(%ARG("SUM"))*.01
 ..S @TMPCA@("CA",IND,"PAID")=+SUM
 ;
 I $$NAJAX^W3PRM D
 .N TMPCA D TMPCA
 .N IND,SUM,CA S IND=$$INDCA Q:'IND
 .I $G(%ARG("replyCode"))="000" D
 ..S SUM=$G(%ARG("trans_amount")) Q:'SUM
 ..S @TMPCA@("CA",IND,"PAID")=SUM
 ;
 D W("<br>")
  S ORDSUM=$J($P($$^W4GETSUM(JB,1),";",5),2,2)
  S PAID=$$PAIDNOTIP^W3HZMST(JB)
  I $$OUTCA^W3PRM,'$D(@$$^W3ORD@(ORD)) S PAID=$$PAIDTMP
  ;
  S ITRA=ORDSUM-PAID
  D W($$SPAN("BROWN",18)_$$^%W1DICT("TOPAY")_" : "_ORDSUM_"</span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("PAID")_" <input id=""paid"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(PAID,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ITRA")_" <input id=""itra"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(ITRA,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  D W($$NBSP^%L1FRM(3)) 
  D W($$^%W1DICT("MOVEITRA2FIELD"))
  W $$NBSP^%L1FRM(10)
  W "<img src=""w3calc.jpg"" alt=""Calculator"" "
  W " onClick=""BOCalc('25','60')"" "
  W " style=""cursor:pointer"" />"
  ;
 D W("<br>")
 ;
 D W("<div id=""divcash""><br>")
  D W($$SPAN_$$^%W1DICT("CASH")_"</span>&nbsp;")
  D W("<input type=""text"" id=""cash"" "_$$READONLY_" size=""7"" maxlength=""9"" onClick=""this.select()"" onkeyup=""OnKeyUp(this,event)"" value="""_$$GETCASH()_""">")
 D W("</div>")
 ;
 D W("<br><br>")
 S TOP=$$^W4KF(120),HG=$$^W4KF(120)
 D
 .D W("<div id=""divca"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_$$^W4KF(HG)_"px;left:5%;width:90%;overflow:auto"">")
 . D W($$SPAN_$$^%W1DICT("TYPECCPAYMENT")_"</span>") 
 .D W("<table id=""tblca"">")
 .D W("<tr>")
 .D W(" <th>"_$$^%W1DICT("NORD")_"</th>")
 .I '$$OUTCA^W3PRM D
 ..D W(" <th>"_$$^%W1DICT("CREDITCARDNUMBER")_"</th>")
 ..D W(" <th>"_$$^%W1DICT("UNTILMMYY")_"</th>")
 ..D W(" <th> CVV </th>")
 ..D W(" <th>"_$$^%W1DICT("IDNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("SUM")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TIP")_"</th>")
 .
 .I $$OUTCA^W3PRM D
 ..D W(" <th>"_$$^%W1DICT("PAID")_"</th>")
 ..D W(" <th>"_$$^%W1DICT("PAY")_"</th>")
 ..D W(" <th>"_$$^%W1DICT("STATUS")_"</th>")
 .
 .D W("</tr>")
 .
 .N I F I=1:1:15 D
 ..D W("<tr>")
 .. D W("<td style=""background-color:light-grey"">"_I_"</td>")
 .. I '$$OUTCA^W3PRM D
 ... D W("<td><input type=""text"" "_$$READONLY_" id=""caid"_I_""" size=""19"" maxlength=""19"" value="""_$$GETCAID(I)_"""></td>")
 ... D W("<td>") D SELMMYY(I) D W("</td>")
 ... D W("<td><input type=""text"" "_$$READONLY_" id=""cacvv"_I_""" size=""3"" maxlength=""3"" value="""_$P($$CREDCVV2^W3HZMST(ORD),DLM,I)_"""></td>")
 ... D W("<td><input type=""text"" "_$$READONLY_" id=""catz"_I_""" size=""9"" maxlength=""9"" value="""_$P($$CREDTZ^W3HZMST(ORD),DLM,I)_"""></td>")
 ..
 .. S SUM=$P($$CREDSUM^W3HZMST(ORD),DLM,I)
 .. S TIP=0
 .. I SUM[":" S TIP=$P(SUM,":",2),SUM=+SUM
 ..
 .. I '$D(@$$^W3ORD@(ORD)),$$OUTCA^W3PRM D
 ... S SUM=$$GETCA2PAY(I)
 ... S TIP=$$GETCATIP(I)
 ..
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""casum"_I_""" size=""7"" maxlength=""9"" value="""_SUM_""" onClick=""this.select()"" onkeyup=""OnKeyUp(this,event,'caid"_I_"')"" ></td>")
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""catip"_I_""" size=""7"" maxlength=""9"" value="""_TIP_""" onClick=""this.select()"" onkeyup=""OnKeyUp(this,event,'caid"_I_"','1')""></td>")
 ..
 .. I $$OUTCA^W3PRM D
 ... N PAID S PAID=$$GETCAPAID(I)
 ... D W("<td><input type=""text"" id=""capaid"_I_""" readonly=""readonly"" size=""7"" maxlength=""9"" value="""_PAID_""" ></td>")
 ...
 ...D
 ....I $D(@$$^W3ORD@(ORD)) D  Q
 ..... D W("<td>&nbsp;</td>")
 .... I 'PAID D  Q
 ..... D W("<td><input type=""button"" id=""btnpaid"_I_""" value="""_$$^%W1DICT("PAY")_""" onClick=""PayOutCA('"_I_"')""></td>")
 .... I PAID D  Q
 ..... I $$PLC^W3PRM D W("<td>&nbsp;</td>") Q 
 ..... D W("<td><input type=""button"" style=""color:red"" id=""btncnc"_I_""" value="""_$$^%W1DICT("CANCEL")_""" onClick=""CancelOutCA('"_$$REFNUM(I)_"',"_SUM_")""></td>")
 ...
 ... N ST,STAT,STAT0,STAT1 S STAT=$$GETCASTAT(I)
 ... S STAT0=$P(STAT,"~"),STAT1=$$H2U^%L1FRM($P(STAT,"~",2))
 ... I STAT0="000" S ST="<span style=""color:green;font-weight:bold;text-align:center"">OK</span>"
 ... E  S ST="<span style=""color:red;font-weight:bold"">"_STAT0_" "_STAT1_"</span>"
 ... D W("<td id=""stat"_I_""">"_ST_"</td>")
 ..D W("</tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 D W("<br><br>")
 S TOP=TOP+HG+$$^W4KF(50)
 S HG=$$^W4KF(120)
 D  ;
 .D W("<div id=""divtnb"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_HG_"px;left:20%;width:60%;overflow:auto"">")
 .D W($$SPAN_$$^%W1DICT("TYPETNBPAYMENT")_"</span>") 
 .D W("<table id=""tbltnb"" >")
 .D W("<tr>")
 .D W(" <th>"_$$^%W1DICT("NORD")_"</th>")
 .;;D W(" <th>"_$$^%W1DICT("COMPANYNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("CARDNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("SUM")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TIP")_"</th>")
 .D W("</tr>")
 .
 .N I F I=1:1:10 D
 ..D W("<tr>")
 .. D W("<td style=""background-color:light:grey"">"_I_"</td>")
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""tnbcard"_I_""" size=""15"" maxlength=""30"" value="""_$$GETTNBCARD(I)_"""></td>")
 .. S SUM=$$GETTNBPAY(I)
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""tnbsum"_I_""" size=""7"" maxlength=""9"" value="""_$J($P(SUM,":"),2,2)_""" onClick=""this.select()"" onkeyup=""OnKeyUp(this,event,'tnbcard"_I_"')""></td>")
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""tnbtip"_I_""" size=""7"" maxlength=""9"" value="""_$J($P(SUM,":",2),2,2)_""" onClick=""this.select()"" onkeyup=""OnKeyUp(this,event,'tnbcard"_I_"','1')""></td>")
 ..D W("</tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 D W("<br><br>")
 ;
 S TOP=TOP+HG+$$^W4KF(50)
 S HG=$$^W4KF(120)
 D  ;
 .D W("<div id=""divcib"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_HG_"px;left:20%;width:60%;overflow:auto"">")
 .D W($$SPAN_$$^%W1DICT("TYPECIBPAYMENT")_"</span>") 
 .D W("<table id=""tblcib"" >")
 .D W("<tr>")
 .D W(" <th>"_$$^%W1DICT("NORD")_"</th>")
 .D W(" <th>"_$$^%W1DICT("CARDNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("SUM")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TIP")_"</th>")
 .D W("</tr>")
 .
 .N I F I=1:1:10 D
 ..D W("<tr>")
 .. D W("<td style=""background-color:light:grey"">"_I_"</td>")
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""cibcard"_I_""" size=""15"" maxlength=""30"" value="""_$$GETCIBCARD(I)_""">")
 .. S SUM=$$GETCIBPAY(I)
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""cibsum"_I_""" size=""7"" maxlength=""9"" value="""_$J($P(SUM,":"),2,2)_""" onClick=""this.select()"" onkeyup=""OnKeyUp(this,event,'cibcard"_I_"')""></td>")
 .. D W("<td><input type=""text"" "_$$READONLY_" id=""cibtip"_I_""" size=""7"" maxlength=""9"" value="""_$J($P(SUM,":",2),2,2)_""" onClick=""this.select()"" onkeyup=""OnKeyUp(this,event,'cibcard"_I_"','1')""></td>")
 ..D W("</tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 D W("<br>")
 
 S TOP=TOP+HG+$$^W4KF(30)
 D W("<div id=""divbut"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_HG_"px;left:35%;width:30%"">")
 I '$D(@$$^W3ORD@(ORD)) D ^W4SBMBCK
 I $D(@$$^W3ORD@(ORD)) D ^W4BCK
 D W("</div>")
 Q
 ;
 ;
W(TXT)
 W TXT
 Q
 ;
CA(STAM) ;
 I $$MKRZAR Q 0
 I CODTS=3 Q 1
 Q 0
 ;
 ;
CIBUS(STAM) ;
 I $$MKRZAR Q 0
 I CODTS=5 Q 1
 Q 0
 ;
TENBIS(STAM) ;
 I $$MKRZAR Q 0
 I CODTS=7 Q 1
 Q 0
 ;
SELMMYY(I) ;
 S DLM=$$DLM
 D W("<select id=""mmid"_I_""" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(">")
 N K F K=1:1:12 D
 .N VL S VL=$E($P($$CREDMMYY^W3HZMST(ORD),DLM,I),1,2)
 .D W("<option value="""_$TR($J(K,2)," ",0)_""" "_$S(K=+VL:"selected=""selected"" ",1:"")_">"_$TR($J(K,2)," ",0)_"</option>")
 D W("</select>&nbsp;")
 ;
 N YY S YY=$ZD($H,"YY")
 D W("<select id=""yyid"_I_""" ")
 I $D(W5ORDVW) W " disabled=""disabled"" "
 D W(" >")
 F K=1:1:10 D
 .N VL S VL=$E($P($$CREDMMYY^W3HZMST(ORD),DLM,I),3,4)
 .D W("<option value="""_(2000+YY+K-1)_""""_$S(+VL=(YY+K-1):" selected=""selected""",1:"")_" >"_(2000+YY+K-1)_"</option>")
 D W("</select>")
 Q
 ;
MKRZAR(STAM) ;
 Q $$MKRZAR^W3ORDVW
 ;
SPAN(COLOR,FSZ) ;
 I $G(COLOR)="" S COLOR="green"
 I $G(FSZ)="" S FSZ=14
 Q "<span style=""color:"_COLOR_";font-size:"_$$^W3FSZ(FSZ)_""">"
 ;
 ;
SETCA(PRM) ;
 N (JB,%ARG,PRM)
 ;
 I $$OUTCA^W3PRM D  Q 1
 .N TMPCA D TMPCA
 .S (CREDCARD,CREDSUM)=""
 .N N S N="" F  S N=$O(@TMPCA@("CA",N)) Q:N=""  D
 ..S CREDCARD=CREDCARD_$G(@TMPCA@("CA",N,"CAID"))_"^"
 ..S CREDSUM=CREDSUM_$G(@TMPCA@("CA",N,"PAID"))_":"_$G(@TMPCA@("CA",N,"TIP"))_";"
 .
 .S CREDCARD=$E(CREDCARD,1,$L(CREDCARD)-1)
 .D PUT^W3HZMST(JB,"CREDCARD",CREDCARD)
 .S CREDSUM=$E(CREDSUM,1,$L(CREDSUM)-1)
 .D PUT^W3HZMST(JB,"CREDSUM",CREDSUM)
 ;
 S CA=$P(PRM,"~")
 S MM=$P(PRM,"~",2)
 S YY=$P(PRM,"~",3)
 S CVV=$P(PRM,"~",4)
 S TZ=$P(PRM,"~",5)
 S SUM=$P(PRM,"~",6)
 ;
 S DLM=$$DLM
 S CAENCR=""
 F J=1:1:$L(CA,DLM) S CAENCR=CAENCR_$$^W3ENCR(JB_";"_$P(CA,DLM,J))_"^"
 D PUT^W3HZMST(JB,"CREDCARD",$E(CAENCR,1,$L(CAENCR)-1))
 D PUT^W3HZMST(JB,"CREDCVV2",CVV)
 ;
 S TZENCR=""
 F J=1:1:$L(TZ,DLM) S TZENCR=TZENCR_$$^W3ENCR(JB_";"_$P(TZ,DLM,J))_"^"
 D PUT^W3HZMST(JB,"CREDTZ",$E(TZENCR,1,$L(TZENCR)-1))
 D PUT^W3HZMST(JB,"CREDSUM",SUM)
 ;
 S MMYY=""
 F I=1:1:$L(YY,DLM) D
 .N YY1 S YY1=$P(YY,DLM,I) I $L(YY1)=4 S YY1=$E(YY1,3,4)
 .I $L(YY1)<2 S YY1="0"_YY1
 .S MMYY=MMYY_$TR($J($P(MM,DLM,I),2)," ",0)_YY1_DLM
 S MMYY=$E(MMYY,1,$L(MMYY)-1)
 D PUT^W3HZMST(JB,"CREDMMYY",MMYY)
 Q 1
 ;
 ;
SETCASH(CASH)
 D PUT^W3HZMST(JB,"CASH",CASH)
 Q 1
 ; 
SETTNB(PRM) ;
 N (JB,%ARG,PRM)
 S DLM=$$DLM
 S CARD=$P(PRM,"~")
 S SUM=$P(PRM,"~",2)
 S CARDENCR=""
 F J=1:1:$L(CARD,DLM) S CARDENCR=CARDENCR_$$^W3ENCR(JB_";"_$P(CARD,DLM,J))_"^"
 D PUT^W3HZMST(JB,"TNBCARD",$E(CARDENCR,1,$L(CARDENCR)-1))
 D PUT^W3HZMST(JB,"TNBPAY",SUM)
 Q 1
 ;
SETCIB(PRM) ;
 N (JB,%ARG,PRM)
 S DLM=$$DLM
 S CARD=$P(PRM,"~")
 S SUM=$P(PRM,"~",2)
 S CARDENCR=""
 F J=1:1:$L(CARD,DLM) S CARDENCR=CARDENCR_$$^W3ENCR(JB_";"_$P(CARD,DLM,J))_"^"
 D PUT^W3HZMST(JB,"CIBCARD",$E(CARDENCR,1,$L(CARDENCR)-1))
 D PUT^W3HZMST(JB,"CIBPAY",SUM)
 Q 1
 ;
DLM(STAM) ;
 Q ";"
 ;
CAOUT() ;
 N VC S VC=$G(%ARG("paymentDisplay"))
 I $E(VC)="I" Q 1
 I $E(VC)="V" Q 2
 I $E(VC)="D" Q 3
 I $E(VC)="A" Q 4
 I $E(VC)="J" Q 5
 I $E(VC)="L" Q 6
 Q ""
 ;
GETCASH() ;
 N TMPCA D TMPCA
 I '$$OUTCA^W3PRM!$D(@$$^W3ORD@(ORD)) Q $$CASH^W3HZMST(ORD)
 I $$OUTCA^W3PRM Q $G(@TMPCA@("CASH"))
 Q ""
 ;
GETCAID(I)
 I '$$OUTCA^W3PRM Q $P($$CREDCARD^W3HZMST(ORD),$$DLM,I)
 Q ""
 ;
 ;
GETCA2PAY(I) ;
 N SUM
 I $D(@$$^W3ORD@(ORD))!'$$OUTCA^W3PRM D  Q SUM
 .S SUM=$P($$CREDSUM^W3HZMST(ORD),$$DLM,I)
 .I SUM S SUM=$J(SUM,2,2)
 ;
 N SUM,TMPCA S SUM=0
 D TMPCA
 S SUM=$G(@TMPCA@("CA",I,"2PAY"))
 Q SUM
 ;
 ;
GETCATIP(I) ;
 N SUM
 I $D(@$$^W3ORD@(ORD))!'$$OUTCA^W3PRM D  Q SUM
 .S SUM=$P($P($$CREDSUM^W3HZMST(ORD),$$DLM,I),":",2)
 .I SUM S SUM=$J(SUM,2,2)
 ;
 N SUM,TMPCA S SUM=0
 D TMPCA
 S SUM=$G(@TMPCA@("CA",I,"TIP"))
 Q SUM
 ;
 ;
GETCAPAID(I) ;
 N SUM,TMPCA S SUM=0
 N IND S IND=$$INDCA
 D TMPCA
 ;
 I $D(@$$^W3ORD@(ORD))!'$$OUTCA^W3PRM D  Q SUM
 .S SUM=$P($$CREDSUM^W3HZMST(ORD),$$DLM,I)
 .I SUM S SUM=$J(SUM,2,2)
 ;
 D
 .I IND,I=IND&($G(%ARG("replyCode"))="000") D  Q
 ..S SUM=$G(%ARG("trans_amount"))
 ..S @TMPCA@("CA",IND,"PAID")=SUM
 .
 .S SUM=$G(@TMPCA@("CA",I,"PAID"))
 ;
 Q SUM
 ;
 ; 
GETCASTAT(I) ; 
 N STAT,STAT1,TMPCA
 N SUM S SUM=0
 N IND S IND=$$INDCA
 D TMPCA
 ;
 I $D(@$$^W3ORD@(ORD)) Q "000 OK"
 I '$$OUTCA^W3PRM Q ""
 ;
 D
 .I IND,I=IND D  Q
 ..I $$NAJAX^W3PRM D
 ...S STAT=$G(%ARG("replyCode"))
 ...S STAT1=$G(%ARG("replyDesc"))
 ..
 ..I $$PLC^W3PRM D
 ...S STAT=$G(%ARG("PelecardStatusCode"))
 ...S STAT1=$$STAT1(STAT)
 ..
 ..S @$$^W4MAIN("TMPCA")@("CA",I,"STAT")=STAT
 ..S @$$^W4MAIN("TMPCA")@("CA",I,"STAT1")=STAT1
 .
 .S STAT=$G(@TMPCA@("CA",I,"STAT"))
 .S STAT1=$G(@TMPCA@("CA",I,"STAT1"))
 ;
 Q STAT_"~"_STAT1
 ;
 ;
STAT1(STAT)
 N STAT1 S STAT1=""
 I '$G(STAT) Q ""
 I $$PLC^W3PRM S STAT1=$G(^|$$^W3MAIN|W3PLCER(STAT))
 Q STAT1
 ;
GETTNBCARD(I) ;
 I '$$OUTCA^W3PRM!$D(@$$^W3ORD@(ORD)) Q $P($$TNBCARD^W3HZMST(ORD),$$DLM,I)
 ;
 N TMPCA D TMPCA
 Q $P($P($G(@TMPCA@("TNB")),";",I),"^")
 ;
 ;
GETCIBCARD(I) ;
 I '$$OUTCA^W3PRM!$D(@$$^W3ORD@(ORD)) Q $P($$CIBCARD^W3HZMST(ORD),$$DLM,I)
 ;
 N TMPCA D TMPCA
 Q $P($P($G(@TMPCA@("CIB")),";",I),"^")
 ;
 ;
GETTNBPAY(I) ;
 I '$$OUTCA^W3PRM!$D(@$$^W3ORD@(ORD)) Q $P($$TNBPAY^W3HZMST(ORD),$$DLM,I)
 N TMPCA D TMPCA
 Q $P($P($G(@TMPCA@("TNB")),";",I),"^",2)
 ;
 ;
GETCIBPAY(I) ;
 I '$$OUTCA^W3PRM!$D(@$$^W3ORD@(ORD)) Q $P($$CIBPAY^W3HZMST(ORD),$$DLM,I)
 N TMPCA D TMPCA
 Q $P($P($G(@TMPCA@("CIB")),";",I),"^",2)
 ;
 ;
NOMCAOUT(PRM) ;
 N TMPCA D TMPCA
 I $E(PRM,1,5)="w3pay" S PRM=$$^W4PRMSRV(PRM)
 N IND,SUM,TIP
 N PRM1 S PRM1=$P(PRM,"~")
 S IND=$P(PRM1,";")
 S SUM=$P(PRM1,";",2)
 S TIP=$P(PRM1,";",3)
 ;
 N PRM2 S PRM2=$P(PRM,"~",2)
 N CASH S CASH=PRM2
 S @TMPCA@("CASH")=CASH
 ;
 N PRM3 S PRM3=$P(PRM,"~",3)
 N TNB S TNB=PRM3
 S @TMPCA@("TNB")=TNB
 ;
 N PRM4 S PRM4=$P(PRM,"~",4)
 N CIB S CIB=PRM4
 S @TMPCA@("CIB")=CIB
 ;
 K @TMPCA@("CA",IND)
 ;
 S @TMPCA@("CA",IND,"TIP")=TIP
 
 I 'IND Q "WRONGINDEX"
 I 'SUM Q "WRONGSUM"
 ;
 D PUT^%W1PRM("INDCAOUT",IND)
 N TMPCA D TMPCA
 S @TMPCA@("CASH")=CASH
 S @TMPCA@("CA",IND,"2PAY")=SUM
 S @TMPCA@("CA",IND,"TIP")=TIP
 N ID S ID=JB_"_"_$TR($H,",","")_"_"_IND
 S @TMPCA@("CA",IND,"ID")=ID
 ; 
 Q ID
 ;
 ;
INIT ; 
 N TMPCA D TMPCA
 K @TMPCA 
 D KILL^%W1PRM("INDCAOUT")
 Q 
 ;
TMPCA ; 
 S TMPCA=$$^W4MAIN("TMPCA") 
 Q 
 ;
PAIDTMP()
 N TMPCA D TMPCA
 N SUM S SUM=0
 S SUM=SUM+$G(@TMPCA@("CASH"))
 N TNB S TNB=$G(@TMPCA@("TNB"))
 N J F J=1:1:$L(TNB,";") D
 .N SUM1 S SUM1=$P($P(TNB,";",J),"^",2)
 .S SUM=SUM+SUM1-$P(SUM1,":",2)
 N CIB S CIB=$G(@TMPCA@("CIB"))
 N J F J=1:1:$L(CIB,";") D
 .N SUM1 S SUM1=$P($P(CIB,";",J),"^",2)
 .S SUM=SUM+SUM1-$P(SUM1,":",2)
 ;
 S SUM=SUM+$$PAIDCA
 Q SUM
 ;
 ;
PAIDCA() ; 
 N TMPCA,SUM D TMPCA
 S SUM=0
 N I S I="" F  S I=$O(@TMPCA@("CA",I)) Q:I=""  I I D
 .S SUM=SUM+$G(^(I,"PAID"))-$G(^("TIP"))
 Q SUM 
 ;
INDCA() 
 I $G(%ARG("IND")) Q %ARG("IND")
 Q +$$GETP^%W1PRM("INDCAOUT") 
 ;
READONLY() ; 
 I $D(@$$^W3ORD@(ORD)) Q "readonly=""readonly"" "
 Q ""  
 ;
REFNUM(I) ;
 N TMPCA D TMPCA
 Q $G(@TMPCA@("CA",I,"ID"))
 ;
GETURLPLC(PRM) ; 
 N (JB,%ARG,%REM,PRM)
 N MSDR S MSDR=$$GETP^%W1PRM("MSDR")
 I 'MSDR Q "NOMSDR" 
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 I 'MSD Q "NOREST" 
 ;
 S TERM=$$PLCTERM(MSDR,MSD) I TERM'?1N.N Q "NOOUTTERM"
 S USR=$$PLCUSR(MSDR,MSD) I USR?.P Q "NOOUTUSR"
 S PSW=$$PLCPSW(MSDR,MSD) I PSW?.P Q "NOOUTPSW"
 ;
 D TMPCA
 ;
 S ID=$$NOMCAOUT(PRM)
 I ID="WRONGINDEX" Q "NOPLCIND"
 I ID="WRONGSUM" Q "NOPLCSUM"
 ;
 S IND=$$GETP^%W1PRM("INDCAOUT") I 'IND Q "NOOUTIND"
 S SUM=$G(@TMPCA@("CA",IND,"2PAY")) I 'SUM Q "NOOUTSUM"
 ;
 S SUM=$P(SUM*100,".")
 ;
 S FL="/tmp/PLC"_JB_"_"_IND
 O FL:(REWIND:NEWVERSION)
 U FL 
 W "{",!
  W $$RKV("terminal",TERM),!
  W $$RKV("user",USR),!
  W $$RKV("password",PSW),!
  W $$RKV("ActionType","J4"),!
  W $$RKV("Currency",1),!
  W $$RKV("Total",SUM),!
  W $$RKV("CancelURL","https://www.2order.org/mumps-examples/jsp/w3pay.jsp?JB="_JB_"&ORD="_JB_"&IND="_IND_"&CANCEL=1"),!
  W $$RKV("ErrorURL","https://www.2order.org/mumps-examples/jsp/w3pay.jsp?JB="_JB_"&ORD="_JB_"&IND="_IND),!
  W $$RKV("GoodURL","https://www.2order.org/mumps-examples/jsp/w3pay.jsp?JB="_JB_"&ORD="_JB_"&IND="_IND_"&SUM="_SUM),!
  W $$RKV("PlaceholderCaptions","False"),!
  W $$RKV("ShowBrandLogo","False"),!
  ;;W $$RKV("FeedbackOnTop","True"),!
  W $$RKV("TakeIshurPopUp","False"),!
  W """SupportedCards"": {",!
   W $$RKV("Amex","True"),!
   W $$RKV("Diners","True"),!
   W $$RKV("Isra","True"),!
   W $$RKV("Master","True"),!
   W """Visa"" : ""True"" ",!
  W "}",!
 W "}",!
 C FL
 ;
 S FLOU="/tmp/PLCOU"_JB_"_"_IND
 S URL="https://gateway20.pelecard.biz/PaymentGW/init"
 S CMD="curl -s -m 35 -H ""content-type:application/json"" -d@"_FL_" '"_URL_"' -o "_FLOU
 ZSY CMD
 ;
 N H S H=+$H
 N SH S SH=$O(^|$$^W3MAIN|W3PLCPR(H,99999),-1)+1
 S ^|$$^W3MAIN|W3PLCPR(H,SH,"CMD")=CMD
 S ^|$$^W3MAIN|W3PLCPR(H,SH,"ZSY")=$ZSY
 ;
 I '$$EXIST^%L1ZOS(FLOU) Q "NOPLCFLOU"
 ;
 O FLOU:(REWIND:READONLY)
 S ST=""
 U FLOU
  R ST
 C FLOU
 ;
 S ERR=$$GETVL(ST,"ErrCode")
 I ERR>0 Q "ERROR "_ERR
 ;
 S CAURL=$$GETVL(ST,"URL")
 S CAID=$P($P(ST,"transactionId=",2),",")
 I $E(CAID,$L(CAID))="""" S CAID=$P(CAID,"""")
 S CAKEY=$$GETVL(ST,"ConfirmationKey")
 ;
 S @TMPCA@("CA",IND,"ST")=$E(ST,1,800)
 S @TMPCA@("CA",IND,"URL")=CAURL
 S @TMPCA@("CA",IND,"CAID")=CAID
 S @TMPCA@("CA",IND,"KEY")=CAKEY
 Q CAURL 
 ;
 ;
GETVL(ST,NM)
 N ST1 S ST1=$P(ST,""""_NM_""":",2)
 S ST1=$P(ST1,",") 
 I $E(ST1)="""" S ST1=$P(ST1,"""",2)
 Q ST1
 ;
PLCTERM(MSDR,MSD) ; 
 Q $P($G(^|$$^W3MAIN|W3PLCPRM(MSDR,MSD)),"\")
 ; 
PLCUSR(MSDR,MSD) ; 
 Q $P($G(^|$$^W3MAIN|W3PLCPRM(MSDR,MSD)),"\",2)
 ; 
PLCPSW(MSDR,MSD) ; 
 Q $P($G(^|$$^W3MAIN|W3PLCPRM(MSDR,MSD)),"\",3)
 ; 
RKV(NM,VL) ; 
 Q """"_NM_""": """_VL_""" ," 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PHRCMN
W3PHRCMN ; [ 05.08.23 07:10 ] [ 03.08.23 05:49 ] [ 12.07.16 08:02 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 S SRCH=$$CNWEB^%L1FRM($G(SRCH))
 D PUT^%W3DEB("W3PHRCMN","%ARG=[%ARG & SRCH=SRCH")
 D GL
 W "<div align=""center"" >",!
 ;;W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("COMMENTSTABLE")_"</span>",!
 D CHECKALL^W3KVPRT("COMMENTSTABLE","TblCmn","chcmn")
 W "<table id=""TblCmn"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""8%"">"_$$^%W1DICT("CMNTCODE")_"</th>"
 W "<th >"_$$^%W1DICT("CMNTNAME")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 N N,I
 N MAIN S MAIN=$$MAIN
 I '$D(@GL) D
 .L +@GL:1
 .D GETTMP^W3PHRIDK(MAIN)
 .L -@GL
 ;
 D PUT^%W3DEB("W3PHRCMN","MAIN=MAIN")
 ;
 S N="",I=0 F  S N=$O(@$$^W4GL("P1CODH")@(N)) Q:N=""  D
 .N NM S NM=$G(^(N))
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N,NM) Q
 .N OK S OK=1
 .I MAIN D
 ..N N1 S N1="" F  S N1=$O(@GL@(MAIN,N1)) Q:N1=""  D:N=$G(^(N1))  Q:'OK
 ...N PRM S PRM=$G(%ARG("CDMV2CM")) S OK=0 Q:PRM=""
 ...N J F J=2:1:$L(PRM,";") S CD=$P(PRM,";",J) D
 ....I CD,CD=N S OK=1
 .Q:'OK
 .S OK=1
 .I $D(%ARG("CDMV2HR")) D
 ..N PRM S PRM=%ARG("CDMV2HR")
 ..N J F J=1:1:$L(PRM,";") S CD=$P(PRM,";",J) D
 ...I CD,CD=N S OK=0
 .Q:'OK
 .W "<tr id=""trcmn"_N_""" >" S I=I+1
 .W "<td id=""cd"_N_""" width=""5%"">&nbsp;"_N_"&nbsp;</td>"
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@$$^W4GL("P1CODH")@(N)))_"&nbsp;</td>"
 .N ID,PROC
 .S ID="chcmn"_N
 .S PROC="OnClickTbl('"_N_"','TblCmn','trcmn','chcmn')"
 .D ^W4TDCHBX(ID,PROC)
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
GL ;
 S GL="^[$$^W3MAIN]TMPCMN(JB)"
 Q
MAIN(STAM) ;
 I $G(%ARG("MAIN"))'="" Q %ARG("MAIN")
 Q $$GET^%W1PRM("MAIN")
 
 
 
 
 
 
 
 

W3PHRIDK
W3PHRIDK ; [ 05.08.23 07:17 ] [ 03.08.23 05:54 ] [ 02.08.23 15:51 ] 
 N (JB,%ARG,SRCH)
 I '$G(JB) W " JB number is not defined ! " Q
 S SRCH=$$CNWEB^%L1FRM($G(SRCH))
 D PUT^%W3DEB("W3PHRIDK","%ARG=[%ARG")
 ;
 D GLCMN,GLEZH
 ;
 I $$GET^%W1PRM("MAINCHN") S %ARG("MAIN")=""
 ;
 I $D(%ARG("MAIN")) D PUT^%W1PRM("MAIN",%ARG("MAIN"))
 ;
 I $D(%ARG("CDMV2HR")) D MVCM2HR(%ARG("CDMV2HR"))
 I $D(%ARG("CDMV2CM")) D MVHR2CM(%ARG("CDMV2CM"))
 I $G(%ARG("SAVE")) D SAVE(%ARG("SAVE"))
 ;
 W "<div align=""center"" >",!
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$CAPTION_"</span>",!
 ;;W "<br /><br />",!
 ;
 S MAIN=$$MAIN
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" >"
 W " <tr>"
 W "  <td>"
 W "   <select id=""main"" dir="""_$$^%W1DIR_""" onChange=""parent.MainChange('"_JB_"')"">",!
        D GETOPT
 W "   </select>",!
 W "  </td>"
 ;
 I $$^W4TABLET=2 W "</tr><tr>",!
 ;
 W "  <td "
 I $$^W4TABLET=2 W " align=""center"" "
 W ">"
 W " "_$$^%W1DICT("SHOWCHOICE")
 S MAIN=$$MAIN
 S CHECKED=""
 I $G(MAIN),$$MUST(MAIN) S CHECKED="checked=""checked"" "
 W "   <input id=""must"" type=""checkbox"" "_CHECKED_" />"
 W "  </td>"
 W " </tr>"
 W "</table>",! 
 ;
 Q:'MAIN
 ;
 W "<br /><br />",!
 ;
 W $$^W4DVTBFX("80%")
 W "<table id=""TblPhr"" dir="""_$$^%W1DIR_""" border=""1"" "
  W " onmousedown='return false'",!
  W " onclick='return true'",!
  W " cellspacing=""0"" width=""100%"" "
  W " style=""background-color:white;color:black"" "
 W ">",!
 W "<thead class=""hdfix"">",!
  W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
  W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W "  >"
 W "  <th width=""15%"">"_$$^%W1DICT("CMNTCODE")_"</th>"
 W "  <th width=""40%"">"_$$^%W1DICT("CMNTNAME")_"</th>"
 W "  <th width=""15%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "  <th width=""15%"">"_$$^%W1DICT("MOVE")_"</th>"
 W " </tr>",!
 W "</thead>",!
 ;
 N N,I
 D GL
 I $G(%ARG("NEW")) D GETTMP(MAIN)
 ;
 I $G(%ARG("SWAP")) D
 .S PRM=$P(%ARG("SWAP"),";",1,2)
 .S DRC=$P(%ARG("SWAP"),";",3)
 .D SWAP(PRM,DRC) ;
 ;
 N NP S NP="",I=0 F  S NP=$O(@GL@(MAIN,NP)) Q:NP=""  D
 .N N S N=$G(^(NP)) Q:N=""
 .W "<tr id=""trphr"_N_""""
 .I $D(@GL@(MAIN,NP,"CUR")) W " style=""background-color:#eaeaea"""
 .W " >" S I=I+1
 .
 .W "<td id=""cd"_N_""" "
 . W " onmousedown=""MouseDown(this,'"_I_"',event)"" "
 . W " onmouseover=""this.style.cursor='pointer';this.style.backgroundcolor='yellow'"" "
 . W " onmouseout=""this.style.backgroundColor='white'"" "
 . W ">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM(@GLCMN@(N))_"&nbsp;</td>"
 .
 .N ID,PROC
 .S ID="chphr"_N
 .S PROC="OnClickTbl('"_N_"','TblPhr','trphr','chphr')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .D ^W4VRXNIZ(N) 
 .W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 W "</div>",!
 D PUT^%W1PRM("MAINCHN",0)
 Q
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
MAIN(STAM) ;
 I $G(%ARG("MAIN"))'="" Q %ARG("MAIN")
 Q $$GET^%W1PRM("MAIN")
 ;
SAVE(OLDMAIN) ;
 D PUT^%W3DEB("W3PHRIDK-SAVE","OLDMAIN=OLDMAIN")
 N NOMUST S NOMUST=$P(OLDMAIN,";",2)
 S OLDMAIN=$P(OLDMAIN,";")
 D PUT^%W3DEB("W3PHRIDK-SAVE","OLDMAIN=OLDMAIN")
 Q:$G(OLDMAIN)=""
 D GL,GLEZH
 N A S A=$G(@GLEZH@(OLDMAIN))
 ;
 K @GLEZH@(OLDMAIN)
 ;
 N NP S NP="" F  S NP=$O(@GL@(OLDMAIN,NP)) Q:NP=""  D
 .S CD=$G(^(NP)) Q:CD=""
 .S @GLEZH@(OLDMAIN,CD)=NP
 ;
 I $D(@GLEZH@(OLDMAIN))>9!(NOMUST="NO") S @GLEZH@(OLDMAIN)=NOMUST ; WAS A
 K @GL@(OLDMAIN)
 S ^[$$^W3MAIN]TMPSV($$^%W1JB)=1
 Q
 ;
 ;
DEL(OLDMAIN) ;
 D PUT^%W3DEB("W3PHRIDK-DEL","OLDMAIN=OLDMAIN")
 Q:$G(OLDMAIN)=""
 D GL,GLEZH
 K @GLEZH@(OLDMAIN)
 K @GL@(OLDMAIN)
 Q
 ;
MVCM2HR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL,GLCMN
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W3PHRIDK-MVCM2HR","PRM=PRM")
 N MAIN S MAIN=$P(PRM,";") Q:MAIN=""
 N I,CD F I=2:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GLCMN@(CD))
 .N LI S LI=$O(@GL@(MAIN,""),-1)+1
 .S @GL@(MAIN,LI)=CD,OK=1
 Q
 ;
MVHR2CM(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 N GL,GLCMN D GL,GLCMN
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W3PHRIDK-MVHR2CM","PRM=PRM")
 N MAIN S MAIN=$P(PRM,";") Q:MAIN=""
 N I,CD F I=2:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GLCMN@(CD))
 .N N S N="" F  S N=$O(@GL@(MAIN,N)) Q:N=""  I ^(N)=CD K ^(N)
 .S OK=1
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPCMN(JB)"
 Q
 ;
GLOBORIG(STAM) ;
 N GLOBORIG
 S GLOBORIG=$$^W4GL("PAR")
 I $$GRADD S GLOBORIG=$$^W4GL("PARSUG")
 Q GLOBORIG
 ;
GROUP ;
 W "<select "
 ;
 I FIRSTGR="PHR" D
 .W " id=""grphr"""
 .W " onChange=""NewView("_JB_")"""
 .W " >",!
 .I $$^W4MUCHIT Q
 .W "<option value=""ALL"" selected=""selected"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .D PUT^%W1PRM("CDKV","ALL")
 ;
 D ^W4ABCKVZ
 N N,NN,II S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .S II=II+1
 .W "<option value="""_NN_""""
 .I NN=$$^W3FRSTGR W " selected=""selected"" "
 .W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
GETOPT ;
 I '$$GRADD D
 .N CDKV S CDKV=$S($G(%ARG("CDKV")):%ARG("CDKV"),1:$$GET^%W1PRM("CDKV")) Q:CDKV=""
 .D GETLIST(JB_";"_CDKV)
 ;
 I $$GRADD D GETLIST(JB)
 Q
 ;
GETLIST(PRM) ;
 D PUT^%W3DEB("W3PHRIDK-GETLIST","PRM=PRM")
 N I,A S I=0,A=""
 N MAIN S MAIN=$G(%ARG("MAIN"))
 N JB,CDKV S JB=$P(PRM,";"),CDKV=$P(PRM,";",2)
 I JB="" Q
 I MAIN,'$$GRADD S CDKV=$$SUG^W4P(MAIN)
 N GLB S GLB=$$GLOBORIG
 I $$GRADD D
 .D ^W4ABCKVZ
 .S GLB=$$TMPABC^W4ABCKVZ
 ;
 N PRT,PRT0 S PRT0="" F  S PRT0=$O(@GLB@(PRT0)) Q:PRT0=""  D
 .S PRT=PRT0
 .I $$GRADD S PRT=$G(@GLB@(PRT0))
 .I $$NOSHOW(PRT) Q
 .S NM=$$NAME(PRT)
 .S I=I+1 I I=1,MAIN="" D PUT^%W1PRM("MAIN",PRT)
 .S A="<option value="""_PRT_""""
 .I MAIN'="",MAIN=PRT S A=A_" selected=""selected"""
 .I MAIN="",I=1 S A=A_" selected=""selected""" S MAIN=PRT
 .N NM1 S NM1=$S($$GRADD:$$^W3SHOWKV(PRT),1:PRT_" "_$$H2U^%L1FRM(NM))
 .S A=A_">"_NM1_"</option>"
 .W A,!
 ;
 I MAIN D PUT^%W1PRM("MAIN",MAIN) S %ARG("MAIN")=MAIN
 Q
 ;
PUTCDKV(PRM) ;
 N JB,CDKV S JB=$P(PRM,";"),CDKV=$P(PRM,";",2)
 I JB=""!(CDKV="") Q
 D PUT^%W1PRM("CDKV",CDKV)
 Q
 ;
SWAP(PRM,DRC) ;
 N MAIN,CD
 S MAIN=$P(PRM,";")
 S CD=$P(PRM,";",2)
 I MAIN=""!(CD="") Q
 D GL N NAT,NST0 S NST=""
 D CLEAR
 S NST=$$GETPN(MAIN,CD)
 D PUT^%W3DEB("W3PHRIDK-SWAP","MAIN=MAIN & CD=CD& NST=NST")
 Q:'NST
 N A,A0,NST0
 S A=$G(@GL@(MAIN,NST))
 S NST0=$O(@GL@(MAIN,NST),DRC) I NST0="" Q
 S A0=$G(@GL@(MAIN,NST0))
 S @GL@(MAIN,NST)=A0
 S @GL@(MAIN,NST0)=A
 S @GL@(MAIN,NST0,"CUR")=1
 Q
 ;
SWAPN(PRM) ;
 N (JB,%ARG,PRM)
 ;
 S MAIN=$$GETP^%W1PRM("MAIN") I 'MAIN G SWPNE
 D GL S NST=""
 D CLEAR
 S NST=+PRM,NST0=$P(PRM,";",2)
 S PR=0 I NST0>NST S PR=1
 ;
 G:'NST SWPNE G:'NST0 SWPNE
 S A0=$G(@GL@(MAIN,NST0)) G:A0="" SWPNE
 S OK=1
 N GLM S GLM=$E(GL,1,$L(GL)-1)_","""_MAIN_""")"
 ;
 D ADD^%L1GSEQ(GLM,NST+'PR,A0,OK)
 D DEL^%L1GSEQ(GLM,NST0+PR)
 S @GLM@(NST,"CUR")=1
 Q 1
 ;
SWPNE Q 0
 ;
GETPN(MAIN,CD) ;
 D GL N N,NP S NP=""
 S N="" F  S N=$O(@GL@(MAIN,N)) Q:N=""  I $G(^(N))=CD S NP=N Q
 Q NP
 ;
CLEAR ;
 D GL N N S N="" F  S N=$O(@GL@(MAIN,N)) Q:N=""  K ^(N,"CUR")
 Q
 ;
GLCMN S GLCMN=$$^W4GL("P1CODH")
 Q
 ;
GLEZH S GLEZH=$$^W4GL("P1EZH")
 I $$GRADD S GLEZH=$$^W4GL("P1EZHK")
 Q
 ;
CAPTION(STAM) ;
 I '$$GRADD Q $$^%W1DICT("ITEMCOMMENTSTABLE")
 Q $$^%W1DICT("ITEMSGROUPCOMMENTSTABLE")
 ;
GRADD(STAM) ;
 Q +$$GET^%W1PRM("GRADD")
 ;
 ;
GETTMP(MAIN) ;
 N N,NP Q:$G(MAIN)=""
 D GL,GLEZH,GLCMN
 K ^[$$^W3MAIN]TMPSV($$^%W1JB) ;-- PRIZN IZM-YA
 ;
 K @GL@(MAIN) S NP=0
 S N="" F  S N=$O(@GLEZH@(MAIN,N)) Q:N=""  D
 .I '$D(@GLCMN@(N)) Q
 .S NP=@GLEZH@(MAIN,N)
 .I 'NP S NP=$O(@GL@(MAIN,""),-1)+1
 .I $D(@GL@(MAIN,NP)) S NP=$O(@GL@(MAIN,""),-1)+1
 .S @GL@(MAIN,NP)=N
 Q
 ;
NOSHOW(PRT) ;
 I $L($G(SRCH)) S CDKV="" ; -- 05/12/21
 I '$$GRADD,$G(CDKV),$$SUG^W4P(PRT)'=CDKV Q 1
 ;I '$$GRADD,$G(@$$^W4GL("W3PAR")@(PRT))=0 Q 1
 ;I $$GRADD,$G(@$$^W4GL("W3SUG")@(PRT))=0 Q 1
 I $G(%ARG("COMMENTSONLY")),$D(@GLEZH@(PRT))<10 Q 1
 N NM
 S NM=$$NAME(PRT)
 I $G(SRCH)'="",'$$^W1SRCH(SRCH,PRT,NM) Q 1
 Q 0
 ;
NAME(PRT) ;
 I '$$GRADD Q $$SHEM^W4P(PRT)
 Q $G(@$$^W4GL("PARSUG")@(PRT))
 ;
FIRSTMAIN(STAM) ;
 N GLEZH D GLEZH
 Q $O(@GLEZH@(""))
 ;
MUST(CD) ;
 I $G(CD)="" Q 0
 I '$$GRADD Q $$MUST^W4EZH(CD)
 Q $$MUSTGR^W4EZH(CD)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PIZUIM
W3PIZUIM(HZM) ; [ 16.09.20 08:57 ] [ 06.01.18 12:20 ] [ 24.10.17 22:12 ] 
 N (JB,%ARG,HZM)
 Q:HZM<1
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W3CSS_""">",!
  W "<br>"
  W "<p style=""font-size:"_$$^W3FSZ(14)_""" >" 
   W $$^%W1DICT("MAKORPIZUIM")_" : "_$$^%W1DICT("ORDER")_" "_$$VW(HZM)
   W "&nbsp;&nbsp;"
   D
   .I $$^W4DLVCSR=1 S DAT=$$GET(HZM,"DATK") Q
   .S DAT=$P($$DATCB^W3HZMST(HZM,"^[$$^W3MAIN]W3ORD"),"  ")
   ;
   W $$^%W1DICT("FROM")_" "_DAT
  W "</p>",!
  ;
  W "<p style=""font-size:"_$$^W3FSZ(12)_""" >" 
   N NMB S NMB=$$GET(HZM,"NMB")
   W $$^%W1DICT("CUSTOMER")_" "_$$VW(NMB)
   W $$SPACE
   W $$VW($$LKH^W4L(NMB),"H")
   W "<br><br>",!
   W $$^%W1DICT("MAZMIN")_" "_$$VW($$GET(HZM,"MZMNM"),"H")
   W $$SPACE
   W $$^%W1DICT("PELE")_" "_$$VW($$GET(HZM,"PELE"))
  W "</p>",!
  ;
  W "<table cellpadding=""10"" >",!
   W "<tr>"
    W "<td>"_$$^%W1DICT("COMPENSREASON")_"</td>"
    W "<td>"
     W "<input type=""text"" id=""siba"" size=""55"" "
     W " value="""_$$H2U^%L1FRM($$GET(HZM,"COMPENSREASON"))_""" " ; -- !!! NOT YET
     I $$NOMOD(HZM) D CLOSE
     W ">"
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>"_$$^%W1DICT("COMPENSCONTENT")_"</td>"
    W "<td>"
     W "<textarea id=""pizuim"" cols=""50"" rows=""5"" "
      I $$NOMOD(HZM) D CLOSE
     W ">"
     W $$H2U^%L1FRM($TR($$GET(HZM,"PIZUIM"),"_",$C(10))) ; --- !!! NOT YET
     W "</textarea>",!
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
   D
    .I $$NOMOD D  Q
    ..W "<td>"_$$^%W1DICT("ACTIVEUPTO")_"</td>"
    ..W "<td>"_$$VW($$GET(HZM,"COMPENSUPTO"))_"</td>" ; --- !!! NOT YET
    .N DATCB S DATCB=$P($$GET(HZM,"DATCB")," ")
    .S SM=$H-$$^%L1DC(DATCB,3) 
    .S %W1DAT("CLND")="2;180;"_SM
    .S AD=$$GET(HZM,"COMPENSUPTO")
    .I 'AD S AD=$ZD($H+30,"DD.MM.YY")
    .D ^%W1DAT("dat",AD,$$^%W1DICT("ACTIVEUPTO"))
    ;
   W "</tr>",!
   ;
  W "</table>",!
  ;
  W "<br><br>",!
  ; 
  I $$MIMUSH D  G END
  .I '$$GETP^%W1PRM("MIMUSHPZM") D
  ..N SOURCEORD S SOURCEORD=HZM
  ..D ^W4BTN("MIMUSHPIZUIM","MimushPizuim('"_SOURCEORD_"')","green")
  ..W $$SPACE 
  .
  .I $$WASMIMUSH D
  ..N ORD S ORD=$$GETP^%W1PRM("HZM") I $$CLOSE^W3HZMST(ORD) Q
  ..N SOURCEORD S SOURCEORD=HZM
  ..D ^W4BTN("DELMIMUSHPIZUIM","DelMimushPizuim('"_SOURCEORD_"')","brown")
  ..W $$SPACE 
  .D ^W4BCK
  ;
  I '$$CLOSECOMP(HZM) D
  .I '$G(%ARG("NOSUBMIT")) D
  ..D ^W4SBMBCK("Submit('"_HZM_"')")
  .I $G(%ARG("NOSUBMIT")) D ^W4BCK
END  Q
  ;
  ;
CLOSECOMP(HZM) ;
 Q $$GET(HZM,"COMPENSORD")
 ;
MIMUSH(STAM) ;
 Q +$G(%ARG("MIMUSH"))
 ;
CLOSE ;
 W " disabled=""disabled"" "
 Q
 ;
VW(TX,PR) ;
 N ST
 S ST="<span style=""font-weight:bold"">"
 D
 .I $G(PR)="H" S TX=$$H2U^%L1FRM(TX) Q
 .I $G(PR)="N" S TX=$J(TX,2,2) Q
 S ST=ST_TX_"</span>"
 Q ST 
 ;
SPACE(ZN)
 I '$G(ZN) S ZN=5
 Q $$NBSP^%L1FRM(ZN)
 ;
SAVE(PRM) ; 
 N (JB,%ARG,PRM) 
 S ORD=$P(PRM,"~") I ORD<1 Q 0
 S PIZUIM=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(PRM,"~",2)))
 S SIBA=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(PRM,"~",3)))
 S DAT=$P(PRM,"~",4) 
 S @$$^W3ORD@(ORD,"PIZUIM")=PIZUIM
 S @$$^W3ORD@(ORD,"PIZUIM","SIBA")=SIBA
 S @$$^W3ORD@(ORD,"PIZUIM","AD")=DAT
 S IND=$$INDPZM(ORD)
 S @$$^W4GL("W3PIZUIM")@(IND,ORD)=$H_"\"_DAT
 Q 1
 ;
INDPZM(ORD) ; 
 N NMB,PELE,MAZMIN
 S NMB=$$GET(ORD,"NMB")
 S PELE=$$GET(ORD,"PELE")
 I PELE?.P S PELE=NMB
 S MAZMIN=$$GET(ORD,"MZMNM")
 I MAZMIN="" S MAZMIN=$$GET(ORD,"NAME")
 S NMB=$TR(NMB,"- ","")
 S PELE=$TR(PELE,"- ","")
 S MAZMIN=$$SPA^%L1FRM(MAZMIN)
 Q $$ENG^%L1FRM(NMB,10)_$$ENG^%L1FRM(PELE,10)_MAZMIN
 ;
 ;
SETMIMUSH(ORD) ;-- ORD - SOURCE ORDER
 N TMPORD S TMPORD=$$^W4TMPORD
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 N CD S CD=$$PIZUIM^W4PRM I CD="" Q "NOCOMPENSCODE"
 N PIZUIM S PIZUIM=$$GET(ORD,"PIZUIM")
 I PIZUIM="" Q "NOCONTCOMPENS"
 N NEW S NEW=LAST+1
 S @TMPORD@(NEW)="0~"_CD_"~"_$$TV^%W1DICT($$^%W1LNG,"ADDCOMPENSATION",ORD)_"~0~1~"
 S @TMPORD@(NEW+1)="1~"_CD_"-C~"_$TR(PIZUIM,"_",$C(10))
 S @TMPORD@("MIMUSHPZM")=ORD
 D PUT^%W1PRM("MIMUSHPZM",ORD)
 Q 1 
 ;
 ;
DELMIMUSH(ORD) ; -- ORD - SOURCE ORDER , HZM - CURRENT
 N TMPORD S TMPORD=$$^W4TMPORD
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 N CD S CD=$$PIZUIM^W4PRM I CD="" Q "NOCOMPENSCODE"
 ;
 N I F I=1:1 Q:'$D(@TMPORD@(I))  D
 .I $$LVST^W3HZMST(JB,I)=0,$$CDST^W3HZMST(JB,I)=CD D
 ..D DEL^%L1GSEQ(TMPORD,I)
 ..I $$LVST^W3HZMST(JB,I) D DEL^%L1GSEQ(TMPORD,I)
 ;
 K @TMPORD@("MIMUSHPZM")
 D KILL^%W1PRM("MIMUSHPZM")
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") ; --- HZM - CURRENT ORDER
 I HZM'<1,'$$CLOSE^W3HZMST(HZM) D
 .N IND S IND=$$INDPZM(ORD) Q:IND=""
 .S $P(@$$^W4GL("W3PIZUIM")@(IND,ORD),"\",3)=""
 .K @$$^W3ORD@(HZM,"MIMUSHPZM")
 .K @$$^W3ORD@(ORD,"PIZUIM","ORD")
 Q 1 
 ;
 ;
NOMOD(STAM) ; 
 I $$MIMUSH Q 1
 I $$CLOSECOMP(HZM) Q 1
 Q 0
 ;
WASMIMUSH(STAM) ; 
 I $$GETP^%W1PRM("MIMUSHPZM") Q 1
 I $D(@$$^W4TMPORD@("MIMUSHPZM")) Q 1
 Q 0
 ;
GET(ORD,FUNC) ; 
 N GL,VL S GL=$$^W3ORD
 X "S VL=$$"_FUNC_"^W3HZMST("_+ORD_","""_GL_""")"
 Q VL 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PIZZA
W3PIZZA(CDP,CDT) ; [ 06.01.22 15:28 ] [ 27.03.09 19:34 ] [
 N OK S OK=0
 I '$G(CDP) Q 0
 ;
 I '$$^W4EZAT(CDP) Q $$PIZZA(CDP)
 ;
 I '$G(CDT) Q 0
 N SET,SETNAME,NSET
 ;
 N GL
 I $$DD^W4EZT(CDP) S GL="P1EZT"
 I $$DD^W4EZA(CDP) S GL="P1EZA"
 ;
 S SET="" F  S SET=$O(@$$^W4GL(GL)@(CDP,SET)) Q:SET=""  D  Q:OK
 .S NSET=$E(SET,2,20)
 .I $D(@$$^W4GL("P1SETA")@(NSET,CDT)) D
 ..S SETNAME=$G(@$$^W4GL("P1SETA")@(NSET))
 ..I SETNAME["()" S OK=1
 ;
 Q OK
 ;
 ;
PIZZA(CD) ;
 I $$SUG1^W4P(CD)["()" Q 1
 Q 0
 
 

W3PRCOFR
W3PRCOFR(HZ,GL) ; [ 26.01.17 12:00 ] [ 24.01.17 10:09 ] [ 31.08.13 17:05 ] 
 N JB,OK S JB=HZ
 N I,A,CD S OK=0
 I $G(GL)="T" S GL=$$^W3TMPORD G CYC
 I $G(GL)="" S GL=$$^W3ORD
 I '$D(@GL@(HZ)),$D(@$$^W3TMPORD@(HZ)) S GL=$$^W3TMPORD
CYC ;
 F I=1:1 Q:'$D(@GL@(HZ,I))  D  Q:OK
 .S A=$G(^(I)) Q:A=""
 .S CD=$P(A,"~",2) Q:CD=""
 .I CD=$$HZMH2^W3PRM S OK=2 Q
 .I CD=$$HZMH^W3PRM S OK=1
 Q OK
 ;
HZMH(JB) ;
 I $G(%ARG("HZMH")) Q 1
 Q $$W3PRCOFR(JB,"T")
 ;
INIT(JB) ;
 N CD S CD=$$HZMH^W3PRM Q:'CD
 S @$$^W3TMPORD@(JB,1)="0~"_CD_"~"_$$SHEM^W3P(CD)_"~0~1"
 Q
 ;

W3PRICE
W3PRICE ; [ 28.04.08 10:50 ] [
 D ^W3TBL1("NIS","W3PRICE")
 Q

W3PRM
W3PRM() ; [ 24.06.25 12:42 ] [ 19.06.25 11:32 ] [ 01.02.24 09:55 ] 
 Q $$^W4GL("W3PRM")
 ;
CODE(MSD) ;
 N A S A=$G(@$$W3PRM@("CODE"))
 I $$^W4ELPOS S A=2
 Q A
 ;
NOADD(MSD) ;
 Q +$G(@$$W3PRM@("NOADD"))
 ;
LKHCSR(MSD) ;
 Q +$G(@$$W3PRM@("LKHCSR"))
 ;
BUTTONGR(MSD) ;
 Q +$G(@$$W3PRM@("BUTTONGR"))
 ;
ONLINE(MSD) ;
 Q +$G(@$$W3PRM@("ONLINE"))
 ;
CMNT(MSD)
 Q +$G(@$$W3PRM@("CMNT"),1)
 ;
CDKV(MSD)
 Q +$G(@$$W3PRM@("CDKV"))
 ;
GRPIC(MSD) ;
 Q +$G(@$$W3PRM@("GRPIC"))
 ;
PICTURE(MSD) ;
 Q +$G(@$$W3PRM@("PICTURE"))
 ;
PICUL(MSD) ;
 Q +$G(@$$W3PRM@("PICUL"))
 ;
NOCHECK(MSD) ;
 I '$G(@$$W3PRM@("CHECK")) Q 1
 I $G(@$$W3PRM@("NOCHECK")) Q 1
 Q 0
 ;
NOCASH(MSD) ;
 Q +$G(@$$W3PRM@("NOCASH"))
 ;
NOCRCARD(MSD) ;
 Q +$G(@$$W3PRM@("NOCRCARD"))
 ;
NOASR(MSD) ;
 Q +$G(@$$W3PRM@("NOASR"))
 ;
NOREST(MSD) ;
 Q +$G(@$$W3PRM@("NOREST"))
 ;
HKBEEF(MSD) ;
 Q ($$GET^%W1PRM("MSD")=4000)
 ;
COLOR(MSD) ;
 I $L($G(%ARG("COLOR"))) Q %ARG("COLOR")
 I $G(%ARG("MSDR")) Q $$COLOR^W3MSDR(%ARG("MSDR"))
 I $$GET^%W1PRM("MSDR") Q $$COLOR^W3MSDR($$GET^%W1PRM("MSDR"))
 ;
 I $G(@$$W3PRM@("COLOR",JB))'?.P Q ^(JB)
 I $G(@$$W3PRM@("COLOR"))'?.P Q ^("COLOR")
 Q "DRW"
 ;
 ;
CHNCLR(PRM)
 N JB,CLR
 S JB=$P(PRM,";"),CLR=$P(PRM,";",2)
 I '$G(JB)!(CLR="") Q
 S @$$W3PRM@("COLOR",JB)=CLR
 Q
 ;
MAINWEB(MSD) ;
 I '$D(@$$W3PRM@("MAINWEB")) Q "w3site.jsp"
 Q $G(@$$W3PRM@("MAINWEB"))
 ;
PSW(MSD) ;
 Q $G(@$$W3PRM@("PSW"))
 ;
PSWADM(MSD) ;
 Q 1976
 ;
ADDR(MSD) ;
 Q $G(@$$W3PRM@("ADDR"))
 ;
PLUS(MSD) ;
 Q +$G(@$$W3PRM@("PLUS"))
 ;
AHUZ(MSD) ;
 Q $G(@$$W3PRM@("AHUZHN"))
 ;
DEMO(MSD) ;
 I '$G(MSD) S MSD=$$GET^%W1PRM("MSD")
 I 'MSD Q ""
 Q +$G(^[$$^W3MAIN]W3MSD(MSD,"DEMO"))&($$GET^%W1PRM("ADMIN")'=6812270)
 ;
COMP(MSD) ;
 Q +$G(@$$W3PRM@("COMP"))
 ;
MUSTCOMP(MSD) ;
 Q +$G(@$$W3PRM@("MUSTCOMP"))
 ;
MUSTFLOOR(MSD) ;
 Q +$G(@$$W3PRM@("MUSTFLOOR"))
 ;
MUSTSTREET(MSD) ;
 Q +$G(@$$W3PRM@("MUSTSTREET"))
 ;
MUSTREGISTRY(MSD) ;
 Q +$G(@$$W3PRM@("MUSTREGISTRY"))
 ;
MUSTCVV(MSD) ;
 Q +$G(@$$W3PRM@("MUSTCVV"))
 ;
QNDR(MSD) ;
 Q +$G(@$$W3PRM@("QNDR"))
 ;
NOFUTDAT(MSD) ;
 Q +$G(@$$W3PRM@("NOFUTDAT"))
 ;
FAX2MAIL(MSD) ;
 Q +$G(@$$W3PRM@("FAX2MAIL"))
 ;
STAYORTAKE(MSD) ;
 Q +$G(@$$W3PRM@("STAYORTAKE"))
 ;
ROWLOG1(MSD) Q $G(@$$W3PRM@("ROWLOG1"),12)
 ;
FAST(MSD) ;
 I $G(JB),$G(@$$W3PRM@("NOFAST")) Q 0
 I $$DLVWEB^W4DLVCSR Q 1
 Q 1
 ;
NOMHTSF(MSD) ;
 Q +$G(@$$W3PRM@("NOMHTSF"))
 ;
COUNTRY(MSD) ;
 Q $G(@$$W3PRM@("COUNTRY"),"IS")
 ;
KDM(MSD)
 N KDM S KDM=""
 I $$COUNTRY="IS" D
 .S KDM=$G(@$$W3PRM@("KDM"))
 Q KDM
 ;
TFN(MSD) ;
 Q +$G(@$$W3PRM@("TFN"))
 ;
PAYDET(MSD) ;
 Q +$G(@$$W3PRM@("PAYDET"))
 ;
MM(MSD) ;
 I $L($G(^[$$^W3MAIN]UCI(MSD)))=0 Q 0
 Q +$G(@$$W3PRM@("MM"))
 ;
SEND(NSNIF) ;
 I '$G(NSNIF) S NSNIF=1
 I '$D(@$$W3PRM@("SEND",NSNIF)),$G(@$$W3PRM@("SEND")) Q @$$W3PRM@("SEND")
 Q $G(@$$W3PRM@("SEND",NSNIF))
 ;
NOTAKEAWAY(MSD) ;
 Q $G(@$$W3PRM@("NOTAKEAWAY"))
 ;
TAKEAWAY(MSD) ;
 Q '$$NOTAKEAWAY($G(MSD))
 ;;Q $G(@$$W3PRM@("TAKEAWAY"))
 ;
AUTOPRINT(MSD) ;
 Q $G(@$$W3PRM@("AUTOPRINT",$G(%REM,"UNKNOWN")))
 ;
AUTOPR(MSD) ;
 Q $G(@$$W3PRM@("AUTOPRINT"))
 ;
AUTOSEND(JB) ;
 Q +$G(@$$W3PRM@("AUTOSEND"))
 ;
NOAUTOSEND(JB) ;
 Q +$G(@$$W3PRM@("NOAUTOSEND"))
 ;
SNDLATE(MSD) ;
 Q $G(@$$W3PRM@("SNDLATE"))
 ;
MHQALL(MSD)
 Q $G(@$$W3PRM@("MHQALL"))
 ;
BOTDELAY(MSD)
 Q $G(@$$W3PRM@("BOTDELAY"))
 ;
TRANZILA(MSD)
 I '$G(JB) Q 0
 Q +$G(@$$W3PRM@("TRANZILA"))
 ;
NOISSUETIME(MSD)
 Q +$G(@$$W3PRM@("NOISSUETIME"))
 ;
MAXITNAME(MSD)
 Q +$G(@$$W3PRM@("MAXITNAME"),24)
 ;
DIRNAME(MSD)
 I '$G(JB) Q "RTL"
 Q $G(@$$W3PRM@("DIRNAME"),$$^%W1DIR)
 ;
OUTCOMP(MSD) ;
 Q +$G(@$$W3PRM@("OUTCOMP"))
 ;
SERNUM(MSD)
 Q $G(@$$W3PRM@("SERNUM"))
 ;
NEWMLY(MSD)
 Q $G(@$$W3PRM@("NEWMLY"))
 ;
PRMAM(MSD)
 I '$G(JB) Q 0
 I $G(@$$W3PRM@("PRMAM")) Q 1
 I $G(@$$W3PRM@("PRMAM"))=0 Q 0
 I $$^W4LKHCSR Q 1
 Q 0
 ;
HZMH(MSD) ; -- KOD PARIT LE HAZAAT MAHIR
 N CDHZMH S CDHZMH=$G(@$$W3PRM@("HZMH"))
 I CDHZMH="",$G(@$$^W4PRM@("HZMH")) S CDHZMH=^("HZMH")
 Q CDHZMH
 ;
HZMH2(MSD) ; -- KOD PARIT LE HAZAAT MAHIR
 Q $G(@$$W3PRM@("HZMH2"))
 ;
CITYDEF(MSD) ; -- IR BRERAT MIHDAL
 Q $G(@$$W3PRM@("CITYDEF"))
 ;
LNG(MSD) ;
 I $G(MSD)="" S MSD=1
 Q $G(@$$W3PRM@("LNG"))
 ;
MAINPSW(MSD) ; -- PASSWORD MASTER
 Q $G(@$$W3PRM@("MAINPSW"))
 ;
SORTCITY(MSD) ; -- A-B CITY SORTING
 Q $G(@$$W3PRM@("SORTCITY"))
 ;
FAXALW(MSD)
 N MSD S MSD=$$GET^%W1PRM("MSD")
 Q $$FAXALW^W3R(MSD)
 ;
LOGO(MSD) ;
 I $G(MSD)="" S MSD=$$GET^%W1PRM("MSD")
 Q $G(@$$W3PRM@("LOGO"))
 ;
UCI(JB,MSD) ;
 N UCI
 I $$MM^W4PRM Q $$^W3MAIN
 I $G(MSD) S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI'="" UCI  Q $$^W3MAIN
 Q $$^%W1UCI(+$G(JB))
 ;
ONEGLPAR(MSD) ;
 Q $G(@$$W3PRM@("ONEGLPAR"))
 ;
SUPER(MSD) ;
 N A
 I $$MNCUR^W4PRM Q 2
 S A=$G(@$$W3PRM@("SUPER"))
 I A Q 1
 Q 0
 ;
NOCD8(MSD) ;
 Q $G(@$$W3PRM@("NOCD8"))
 ;
MHAL(MSD) ;
 Q $G(@$$W3PRM@("MHAL"))
 ;
AUTOMANOT(MSD) ;
 Q $G(@$$W3PRM@("AUTOMANOT"))
 ;
NOMUSTHOME(MSD) ;
 Q $G(@$$W3PRM@("NOMUSTHOME"))
 ;
ERUA(STAM) ;
 Q +$G(@$$W3PRM@("ERUA"))
 ;
NOURGENT(STAM) ;
 Q +$G(@$$W3PRM@("NOURGENT"))
 ;
VIEWONLY(MSD) ;
 Q +$G(@$$W3PRM@("VIEWONLY"))
 ;
OUTCA() ;
 N MSDR S MSDR=$$GETP^%W1PRM("MSDR")
 I 'MSDR Q 0
 Q $$OUTCA^W3MSDR(MSDR)
 ;
PLC() ; 
 Q $$OUTCA=1 
 ; 
NAJAX() 
 Q $$OUTCA=2 
 ;
CHNITRA() 
 Q $G(@$$W3PRM@("CHNITRA"))
 ;  
NOVWMHAL(MSD) ;
 Q +$G(@$$W3PRM@("NOVWMHAL"))
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRMDP
W3PRMDP ; [ 05.08.23 06:41 ] [ 03.08.23 05:15 ] [ 02.08.23 15:18 ] 
 N (JB,%ARG)
 S JB=+$G(JB)
 I $G(%ARG("GRMDP")) D PUT^%W1PRM("GRMDP",%ARG("GRMDP"))
 S SRCH=$G(%ARG("SRCH"))
 I $$GRMDP S SRCH="",%ARG("CDKV")=""
 D KILL^%W3DEB("W3PMDP")
 D PUT^%W3DEB("W3PRMDP","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 I '$$GRMDP,'$D(%ARG("CDKV")) W " Group number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 S GL=$$GL
 I GL["PARSUG" D
 .D SORTSUG^W4SPIDK("parent.rep")
 .W "<br><br>"
 ;
 W $$^%W1DICT("PRINTERCONDITIONSIGNES1"),"<br><BR>",!
 W $$^%W1DICT("PRINTERCONDITIONSIGNES2"),"<br>",!
 W $$^%W1DICT("PRINTERCONDITIONSIGNES3"),"<br>",!
 W "<br>"
 ;
 D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 W $$^W4DVTBFX("77%"),!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""80%"">",!
 ;
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 S NMCD=$S($$GRMDP:"GROUPCODE",1:"ITEMCODE")
 S NMNM=$S($$GRMDP:"GROUPNAME",1:"ITEMNAME")
 ;
 W "<th width=""10%"">"_$$^%W1DICT(NMCD)_"</th>"
 W "<th width=""50%"">"_$$^%W1DICT(NMNM)_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("PRINTERS")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 N N,NN,I
 D GLP
 ;
 N GLOBT S GLOBT=GL
 I GL["PARSUG" S GLOBT=$$CRGLOBT^W4SPIDK(GL)
 ;
 N I S I=0
 K @GLP
 ;
 S N0="" F  S N0=$O(@GLOBT@(N0)) Q:N0=""  D
 .S N=N0
 .I $G(%ARG("SORT"))=2!($G(%ARG("SORT"))=3) S N=$G(@GLOBT@(N0))
 .I $G(%ARG("CDKV")),$$SUG^W4P(N)'=%ARG("CDKV") Q
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .
 .W "<tr "
 . I '$$GRMDP W $$STYLE^W4PRTVW(N)
 . W ">" S I=I+1
 . W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 . W "<td align=""center"">&nbsp;"_$$NAME(N)_"&nbsp;</td>"
 . S MDPS=$$PRINT(N)
 . I MDPS?1N.N S MDPS=MDPS_" "_$$H2U^%L1FRM($G(@$$^W4GL("W4MDP")@(MDPS)))
 . W "<td align=""center"" >"
 . W "<input type=""text"" size=""20"" id=""prn"_N_""" "
 . W " onChange=""SetMdp(this)"" dir=""LTR"" align=""center"" "
 . W " value="""_MDPS_""" />",!
 .   W "&nbsp;<img id=""filter"_N_""" src=""w3filter.jpg"" "
 .   W " onClick=""Find('prn"_N_"','W4MDP')"" >",!
 . W "</td>",!
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMT")
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
SAVEND(PRM) ;
 D GLP
 S PRM=$G(PRM)
 N KV,GRMDP
 S KV=$P(PRM,";")
 S GRMDP=$P(PRM,";",2,20)
 N A,N S N="" F  S N=$O(@GLP@(N)) Q:N=""  D
 .S A=$G(^(N))
 .I '$$GRMDP D  Q
 ..S @$$^W4GL("PAR")@(N)=A Q
 .D PUTGRMDP(N,$$SPA^%L1FRM($P(A,"**",11)))
 ;
 I '$$GRMDP,$G(KV) D PUTGRMDP(KV,GRMDP)
 K @GLP
 Q
 ;
GLP S GLP="^[$$^W3MAIN]TMPPAR(JB)"
 Q
 ;
 ;
GROUP ;
 W "<select "
 ;
 W " id=""grkvp"""
 W " onChange=""AskSave();ShowKvp(this.value);HdRefresh()"""
 W " >",!
 I '$$^W4MUCHIT D
 .W "<option value=""ALL"" >"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 ;
 D
 .D ^W4ABCKVZ
 .N N,II S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 ..S NN=$G(^(N)) Q:NN=""
 ..D OPT(NN)
 ;
 W "</select>",!
 Q
 ;
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
SETMDP(PRM) ;
 D PUT^%W3DEB("W3PRMDP-SETMDP","PRM=PRM")
 N CD,GLP,VL
 D GLP
 S @GLP=0
 S CD=$P(PRM,"~")
 S CD=$P(CD,"prn",2) I 'CD Q 0
 S VL=$P(PRM,"~",2)
 S VL=$$SPA^%L1FRM(VL)
 S VL=$P(VL," ") I VL="" Q "<PUSTO>"
 ;
 I '$$GRMDP S @GLP@(CD)=$G(@$$^W4GL("PAR")@(CD))
 ;
 S $P(@GLP@(CD),"**",11)=$$SPA^%L1FRM($$FUNC^%UCASE(VL))
 S @GLP=0
 N NMDP S NMDP=$G(@$$^W4GL("W4MDP")@(VL))
 Q VL ;_" "_$$H2U^%L1FRM(NMDP)
 ;
 ;
OPTNAME(N) ;
 I $$GRMDP Q "GROUPPRINTERSTABLE"
 Q "ITEMSPRINTERSTABLE"
 ;
GRMDP(STAM) ;
 I $G(%ARG("GRMDP")) Q 1
 I $$GETP^%W1PRM("GRMDP") Q 1
 Q 0
 ;
GL(STAM) ;
 I $$GRMDP Q $$^W4GL("PARSUG")
 Q $$^W4GL("PAR")
 ;
NAME(N) ;
 I $$GRMDP Q $$^W3SHOWKV(N)  ;;$$H2U^%L1FRM($G(@$$GL@(N)))
 Q $$H2U^%L1FRM($$SHEM^W4P(N))
 ;
PRINT(N) ;
 I $$SUPER^W3PRM Q 0
 I $$GRMDP Q $$GRPRINT(N)
 Q $$PRINT^W4P(N)
 ;
GRPRINT(GR) ;
 I $G(GR)="" Q ""
 Q $P($G(@$$^W4GL("PARSUG")@(GR,1)),"\",7)
 ;
PRINTG(PAR) ;
 I $G(PAR)="" Q ""
 N SUG S SUG=$$SUG^W4P(PAR)
 I SUG="" Q ""
 Q $$GRPRINT(SUG)
 ;
PRINTIG(PAR) ;
 I $G(PAR)="" Q ""
 N PRINT S PRINT=$$PRINT^W4P(PAR)
 I PRINT="G" Q $$PRINTG(PAR)
 Q PRINT
 ;
PUTGRMDP(GR,VL) ;
 Q:$G(GR)=""
 S $P(@$$^W4GL("PARSUG")@(GR,1),"\",7)=VL
 Q
 ;
OPT(NN) ; 
 S II=II+1
 W "<option value="""_NN_""""
 D
 .I $G(%ARG("CDKV")),NN=%ARG("CDKV") W " selected=""selected""" Q
 .I '$G(%ARG("CDKV")),NN=$$FIRSTGR W " selected=""selected"""
 ;;W " >"_$S('$G(%ARG("ABCKV")):NN_" ",1:"")_$$^W3SHOWKV(NN)_"</option>",!
 W " >"_$$^W3SHOWKV(NN)_"</option>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRSDK
W3PRSDK ; [ 05.08.23 06:49 ] [ 02.12.21 08:26 ] [ 30.11.19 08:47 ] 
 N (JB,%ARG)
 I $G(%ARG("NOSHOW")) Q
 ;
 D NOSELECT^%W1JS
 ;
 D KILL^%W3DEB("W3PRSDK")
 D PUT^%W3DEB("W3PRSDK","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 I '$D(%ARG("CDKV")) W " Group number is not defined ! " Q
 I '$G(%ARG("CDKV")) Q
 D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 W "<div align=""center"" >",!
 ;
 D ROUNDBUT^%W1JS("abcsort",$$^%W1DICT("ABCSORT"),"ABCSort()","color:green","wh,22")
 W "<br><br>",!
 ;
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""70%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""10%"">"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""50%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""15%"">"_$$^%W1DICT("MOVE")_"</th>"
 W "<th width=""15%"">"_$$^%W1DICT("NEWORDINUMBER")_"</th>"
 W "</tr>",!
 N N,NN,I
 D GLOB,GL,GLP
 ;
 I $G(%ARG("FIRST")) D
 .N I S I=0
 .K @GLP
 .
 .I '$$ADD D
 ..S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 ...I $$NOPAR^W4PRTVW(N) Q
 ...I $$SUG^W4P(N)=%ARG("CDKV") D
 ....S @GLP@(N)=$P($G(@$$^W4GL("PAR")@(N)),"**")
 .;
 .I $$ADD D
 ..I $G(%ARG("CDKV")) M @GLP=@$$^W4GL("P1EZKI")@(%ARG("CDKV"))
 .;
 .S I=$O(@GLOB@(%ARG("CDKV"),99999),-1)
 .;
 .N N S N="" F  S N=$O(@GLP@(N)) Q:N=""  D
 ..I $$NOPAR^W4PRTVW(N) Q
 ..I '$$SRCSID(N) S I=I+1,@GLOB@(%ARG("CDKV"),I)=N
 ;
 I '$G(%ARG("SWAP")),$G(%ARG("FIRST")) D
 .K @GL S I=0 K MMM
 .;
 .N NN S NN="" F  S NN=$O(@GLOB@(%ARG("CDKV"),NN)) Q:NN=""  D
 ..S N=$G(^(NN)) Q:N=""
 ..I '$$ADD,$$SUG^W4P(N)'=%ARG("CDKV") Q
 ..I $$NOPAR^W4PRTVW(N) Q
 ..I '$D(@$$^W4GL("PAR")@(N)) Q
 ..I $D(MMM(N)) Q
 ..S I=I+1,MMM(N)=""
 ..M @GL@(I)=@GLOB@(%ARG("CDKV"),NN)
 ;
 S NN="",I=0 F  S NN=$O(@GL@(NN)) Q:NN=""  D
 .S N=$G(^(NN)) Q:N=""
 .W "<tr id=""tr"_N_""""
 .I $D(@GL@(NN,"CUR")) W " style=""background-color:#eaeaea"""
 .W " >" S I=I+1
 .
 .W "<td align=""center"" style=""font-size:"_$$^W3FSZ(12)_";color:white;background-color:gray"" >&nbsp;"_I_"&nbsp;</td>"
 .
 .W "<td id=""cd"_N_""" "
 . W " onmousedown=""MouseDown(this,'"_I_"',event)"" "
 . W " onmouseover=""this.style.cursor='pointer'"" "
 . ;;W " onmouseout=""this.style.backgroundColor='white'"" "
 .W ">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .D TDVRXNIZ^W3KVSDK(N)
 .
 .W "<td id=""newnmb"_N_""" >",!
 .W "<input type=""button"" value="""_$$^%W1DICT("NEWORDINUMBER")_""" onClick=""NewOrdiNumber('"_N_"')"" />",!
 .W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVEND(PRM) ;
 N CD,GL,GLOB D GL,GLOB D CLEAR
 S KV=$$GET^%W1PRM("CDKV")
 Q:'$G(KV)
 K @GLOB@(KV)
 M @GLOB@(KV)=@GL
 K @GL
 Q
ADD(STAM) ;
 Q +$$GETP^%W1PRM("ADDORDERING")
 ;
GLOB ;
 I $$ADD S GLOB=$$^W4GL("W4ADDSID") Q
 S GLOB=$$^W4GL("P1PARSID") Q
 Q
 ;
GL S GL="^[$$^W3MAIN]TMP(JB)"
 Q
 ;
GLP S GLP="^[$$^W3MAIN]TMPPAR(JB)"
 Q
 ;
SWAP(CD,DRC) ;
 N GL D GL N NST,NST0 S NST=""
 D CLEAR
 S NST=$$GETPN(CD)
 Q:'NST
 N A,A0,NST0
 S A=$G(@GL@(NST))
 S NST0=$O(@GL@(NST),DRC) I NST0="" Q
 S A0=$G(@GL@(NST0))
 S @GL@(NST)=A0
 S @GL@(NST0)=A
 S @GL@(NST0,"CUR")=1
 Q
 ;
SWAPN(PRM) ;
 D GL S NST=""
 D CLEAR
 N NEWST,CD
 S NEWST=+PRM,CD=$P(PRM,";",2)
 G:'NEWST SWPNE G:'CD SWPNE
 N NST S NST=$$GETPN(CD) G:'NST SWPNE
 Q $$SWAPN1(NEWST,NST,1) ;
 ;
SWAPN1(NEWST,NST,PR) ;
 D GL
 N VLO S VLO=$G(@GL@(NST))
 D DEL^%L1GSEQ(GL,NST)
 N N,I,OK S N="",I=0,OK=0
 I NST+1<NEWST,'$G(PR) S NEWST=NEWST-1
 D ADD^%L1GSEQ(GL,NEWST,VLO,OK)
 S @GL@(NEWST,"CUR")=1
 Q 1
 ;
SWPNE Q 0
 ;
GETPN(CD) ;
 D GL N N,NP S NP=""
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I $G(^(N))=CD S NP=N Q
 Q NP
CLEAR ;
 D GL N N S N="" F  S N=$O(@GL@(N)) Q:N=""  K ^(N,"CUR")
 Q
SRCSID(CD) ;
 N OK,GLOB S OK=0 D GLOB
 N N S N="" F  S N=$O(@GLOB@(%ARG("CDKV"),N)) Q:N=""  I $G(^(N))=CD S OK=N Q
 Q OK
 ;
ABCSORT ;
 N TMP1 S TMP1="^[$$^W3MAIN]TMP1" K @TMP1
 D GL
 N N,NP,NM,J
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S NP=$G(^(N)) Q:'NP
 .S NM=$$SPA^%L1FRM($$SHEM^W4P(NP))
 .S NM=$$INV^%L1FRM(NM)
 .S NM=$E(NM,1,10)
 .S NM=NM_$J("",10-$L(NM))
 .F J=1:1 Q:'$D(@TMP1@(NM_J))
 .S @TMP1@(NM_J)=NP
 ;
 K @GL N K,IND
 S N="",K=0 F  S N=$O(@TMP1@(N)) Q:N=""  D
 .S IND=$G(^(N)) Q:N=""
 .S K=K+1,@GL@(K)=IND
 K @TMP1
 Q
 ;
HD(STAM) ; 
 I $$ADD Q "ADDSORDERING" 
 Q "ITEMSORDERING" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRTBH
W3PRTBH ; [ 23.02.25 14:47 ] [ 09.01.24 14:32 ] [ 05.08.23 18:33 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3PRTBH","%ARG=[%ARG")
 D GL
 ;
 W "<div align=""center"" >",!
 ;
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"
  W $$KOT
 W "</span>",!
 ;
 W $$^W4DVTBFX("94%")
 W "<table id=""TblPrtBH"" dir="""_$$^%W1DIR_""" border=""1"" "
 W " cellspacing=""0"" width=""100%"" "
 W " style=""background-color:white;color:black"" "
 W ">",!
 ;
 W "<thead class=""hdfix"">",!
  W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
  W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
  W " <th width=""20%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W " <th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  I '$$VARPRICE D
  .W " <th width=""20%"">"_$$^%W1DICT("PRICE")_"</th>"
  W " <th width=""20%"">"_$$^%W1DICT("SIGN")_"</th>"
  W "</tr>",!
 W "</thead>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .W "<tr id=""trpbh"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .I '$$VARPRICE D
 ..W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_" </td>"
 .
 .N ID,PROC S ID="chprtbh"_N
 .S PROC="OnClickTbl('"_N_"','TblPrtBH','trpbh','chprtbh')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
 ;
GL S GL=$$^W4MAIN("TMPPAR")
 S GLOB=$$^W4GL("PRTBH")
 I $$GETP^%W1PRM("GLOB")'="" S GLOB=$$^W4GL($$GETP^%W1PRM("GLOB"))
 Q
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 L +@GLOB:1
 K @GLOB
 M @GLOB=@GL
 L -@GLOB
 Q
 ;
MVPR2BH(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .S @GL@(CD)=""
 .S OK=1
 Q OK
 ;
MVBH2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .K @GL@(CD)
 .S OK=1
 Q OK
 ;
GROUP ;
 W "<select "
 ;
 I FIRSTGR="KVPRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt(this.value)"""
 .W " >"
 .I $$^W4MUCHIT Q
 .W "<option value=""ALL"" >"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 ;
 D ^W4ABCKVZ
 N NN,II,N S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .W "<option value="""_NN_""""
 .S II=II+1 I NN=$$^W3FRSTGR W " selected=""selected"" "
 .W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
PAR2TMP ;
 D GL
 L +@GL:1
 K @GL
 M @GL=@GLOB
 L -@GL
 Q
 ;
PROTECT(STAM) ;
 I $G(%ARG("PROTECT")) Q 1
 I $$GETP^%W1PRM("PROTECT") Q 1
 Q 0
 ;
INIT ;
 D KILL^%W1PRM("GLOB")
 I $G(%ARG("GLOB"))'="" D PUT^%W1PRM("GLOB",GLOB)
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 S MSD=$$GETP^%W1PRM("MSD") D ^W3CSS
 D PAR2TMP
 Q
 ;
KOT(STAM) ;
 D GL
 I GLOB["PRTMB" Q $$^%W1DICT("PROTECTIONITEMS")
 I GLOB["W4NOMAM" Q $$^%W1DICT("ITEMSWITHOUTTAXES")
 I GLOB["W4ORDEND" Q $$^%W1DICT("ENDORDITEMSLIST")
 I GLOB["W4ORDENR" Q $$^%W1DICT("ENDORDRESTITEMSLIST")
 I GLOB["W6PAR" Q $$^%W1DICT("KIOSKITEMSLIST")
 I GLOB["W4NOITCN" Q $$^%W1DICT("NOITCOUNTLIST")
 I GLOB["W4NODPIT" Q $$^%W1DICT("NOSHOWDEPITLIST")
 I GLOB["W4ITACS" Q $$^%W1DICT("ACCESSORIESTABLE")
 I GLOB["W4IT1USE" Q $$^%W1DICT("ONEUSETABLE")
 I $$VARPRICE Q $$^%W1DICT("ITEMSWITHVARIABLEPRICE")
 Q $$^%W1DICT("ITEMSWITHOUTDISCOUNTTABLE")
 ;
VARPRICE(STAM) ;
 D GL
 I GLOB["P1BLRD" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRTBH0
W3PRTBH ; [ 14.01.18 19:43 ] [ 25.12.15 14:20 ] [ 11.06.15 10:30 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3PRTBH","%ARG=[%ARG")
 D GL
 ;
 W "<div align=""center"" >",!
 ;
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"
  W $$KOT
 W "</span>",!
 ;
 W "<table id=""TblPrtBH"" dir="""_$$^%W1DIR_""" border=""1"" "
 W " cellspacing=""0"" width=""100%"" "
 W " style=""background-color:white;color:black"" "
 W ">",!
 ;
  W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
  W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
  W " <th width=""20%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W " <th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  I '$$VARPRICE D
  .W " <th width=""20%"">"_$$^%W1DICT("PRICE")_"</th>"
  W " <th width=""20%"">"_$$^%W1DICT("SIGN")_"</th>"
  W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .W "<tr id=""trpbh"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .I '$$VARPRICE D
 ..W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_" </td>"
 .
 .W "<td align=""center""><input type=""checkbox"" id=""chprtbh"_N_""" onClick=""OnClickTbl('"_N_"','TblPrtBH','trpbh','chpbh')"" /></td>"
 .W "</tr>",!
 W "</div>",!
 Q
 ;
 ;
GL S GL=$$^W4MAIN("TMPPAR")
 S GLOB=$$^W4GL("PRTBH")
 I $$GETP^%W1PRM("GLOB")'="" S GLOB=$$^W4GL($$GETP^%W1PRM("GLOB"))
 Q
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 L +@GLOB:1
 K @GLOB
 M @GLOB=@GL
 L -@GLOB
 Q
 ;
MVPR2BH(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .S @GL@(CD)=""
 .S OK=1
 Q OK
 ;
MVBH2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .K @GL@(CD)
 .S OK=1
 Q OK
 ;
GROUP ;
 W "<select "
 ;
 I FIRSTGR="KVPRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt(this.value)"""
 .W " >"
 .;;W "<option value=""NO"" selected=""selected"">"_$$^%W1DICT("NOGROUP")_"</option>",!
 .W "<option value=""ALL"" >"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 ;
 ;;N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D
 D ^W4ABCKVZ
 N NN,II,N S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .;;I $G(@$$^W4GL("W3SUG")@(NN))=0 Q
 .W "<option value="""_NN_""""
 .S II=II+1 I NN=$$^W3FRSTGR W " selected=""selected"" "
 .W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
PAR2TMP ;
 D GL
 L +@GL:1
 K @GL
 M @GL=@GLOB
 L -@GL
 Q
 ;
PROTECT(STAM) ;
 I $G(%ARG("PROTECT")) Q 1
 I $$GETP^%W1PRM("PROTECT") Q 1
 Q 0
 ;
INIT ;
 D KILL^%W1PRM("GLOB")
 I $G(%ARG("GLOB"))'="" D PUT^%W1PRM("GLOB",GLOB)
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 S MSD=$$GETP^%W1PRM("MSD") D ^W3CSS
 D PAR2TMP
 Q
 ;
KOT(STAM) ;
 D GL
 I GLOB["PRTMB" Q $$^%W1DICT("PROTECTIONITEMS")
 I GLOB["W4NOMAM" Q $$^%W1DICT("ITEMSWITHOUTTAXES")
 I $$VARPRICE Q $$^%W1DICT("ITEMSWITHVARIABLEPRICE")
 Q $$^%W1DICT("ITEMSWITHOUTDISCOUNTTABLE")
 ;
VARPRICE(STAM) ;
 D GL
 I GLOB["P1BLRD" Q 1
 Q 0
 

W3PRTEX
W3PRTEX ; [ 08.07.26 13:23 ] [ 12.11.24 18:32 ] [ 06.10.20 16:57 ] 
 N (JB,%ARG,%REM,%REPN,FMT,TOT,%W1LNG,MSD)
 S:'$D(FMT) FMT=0
 D ^%L1TS
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_"W4PAR"_$$^W4MYDVN
 S FLCSV=FL_".csv"
 N A,B,I,J,RZD
 S RZD=","
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 ;;W "FLCSV="_FLCSV,!
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 U FLCSV
 S ENG=$$ENG^W4P
 I 'ENG W $$RKV("dveaw cew")_$$RKV("dveaw my")_$$RKV("hixt cew")_$$RKV("hixt my")_$$RKV("xign")_$$RKV("akxd"),!
 I ENG W $$RKV("GROUP CODE")_$$RKV("GROUP NAME")_$$RKV("ITEM CODE")_$$RKV("ITEM NAME")_$$RKV("PRICE")_$$RKV("CONTENT"),!
 ;
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I $G(%ARG("DLV")),$$NOSHOW^W3TRM(N) Q
 .W $$RKV($$SUG^W4P(N))_$$RKV($$SUGP(N))_$$RKV(N)_$$RKV($$NAME(N))_$$RKV($J($$MH^W4P(N),2,2))_$$RKV($$DESC^W4P(N,1,1)),!
 ;
 C FLCSV
 ;
 ;;ZSY "unix2dos "_FLCSV ; 31/01/17
 ;;ZSY "zip -j "_FL_" "_FLCSV
 Q
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
RKV(VL)
 S VL=$$SPA^%L1FRM(VL)
 I $$ISNUM^%L1FRM(VL) G RKVE
 I VL?2N1"."2N1"."2N!(VL?2N1"."2N1"."4N) S VL=$TR(VL,".","/") G RKVE
 I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N G RKVE
 S VL=$$^%W1D2U(VL)
 S VL=$TR(VL,","," ")
RKVE ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_","
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
SUGP(PRT) ;
 N KV S KV=$$SUG^W4P(PRT)
 I ENG Q $$SUGP^W3PRTPC(KV)
 Q $$RKV($$SUG1^W4P(N))
 ;
NAME(PRT) ;
 Q $$NAME^W3PRTPC(PRT,0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRTHR
W3PRTHR ; [ 01.04.25 11:54 ] [ 02.08.23 15:43 ] [ 26.06.22 09:49 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 W "<div align=""center"" >",!
 D
 .I $$1024^W4WDSCR S WDTB=$S($G(%ARG("NOPICTURES")):"95",1:"100") Q
 .S WDTB=$S($G(%ARG("NOPICTURES")):"60",1:"70") Q
 W $$^W4DVTBFX("94%")
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_WDTB_"%"" >",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 ;
 W "<th width=""70px"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width="""_$S($$1024^W4WDSCR:170,1:200)_"px"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""70px"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width="""_$S($$1024^W4WDSCR:260,1:300)_"px"">"_$$^%W1DICT("WEEKDAYS")_"</th>"
 W "<th width=""150px"">"_$$^%W1DICT("MESHAA")_"</th>"
 W "<th width=""150px"">"_$$^%W1DICT("ADSHAA")_"</th>"
 W "<th width=""50px"">"_$$^%W1DICT("ITEMSHOW")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 W "</thead>",! 
 ;
 I $$EDITMENU="" W "</table></div>" Q
 ;
 N N,I
 S N="",I=0 F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I $$NOPAR^W4PRTVW(N) Q
 .N SUG S SUG=$$SUG^W4P(N)
 .I $G(%ARG("CDKV")),%ARG("CDKV")'=SUG Q
 .I $G(%ARG("CDKV"))="NO",SUG'?.P,SUG'="NO",SUG'="ALL" Q
 .I $L($G(SRCH)),'$$SRCH(SRCH,N) Q
 .N OK S OK=1
 .I $G(%ARG("DAY")),'$E($$DAYS(N),%ARG("DAY")) Q
 .I $G(%ARG("SHAA"))'="",$$NOSHAA(N,%ARG("SHAA"),$G(%ARG("TIMEITEMS"))) Q
 .W "<tr id=""tr"_N_""" "
 . W "style=""background-color:"_$S($$LIM(N):"lightyellow",$$SHOW^W4PRTVW(N)=0:"pink",1:"white")_""" >"
 . S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_"</td>"
 .
 .W "<td align=""center"">"
 .D
 ..N J,VL,A
 ..I '$G(%ARG("DAY")) F J=1:1:7 D SHOWDAY(J,N)
 ..I $G(%ARG("DAY")) D SHOWDAY(%ARG("DAY"),N)
 .W "</td>"
 .
 .W "<td dir=""LTR"" align=""center"">"
 .D SHAA(N,1)
 .W "</td>"
 .W "<td dir=""LTR"" align=""center"">"
 .D SHAA(N,2)
 .W "</td>"
 .
 .N CHECKED,DIS
 .S CHECKED=1,DIS=0
 .I $$NL(N)=1 S CHECKED=0,DIS=1
 .I $$NL(N),$$NL(N)<1 S CHECKED=0,DIS=0
 .I $$NOPAR^W4PRTVW(N) S CHECKED=0,DIS=0
 .I $G(@$$TFRNOM@(N))=0 S CHECKED=0,DIS=0
 .W "<td align=""center""><input name=""show"" type=""checkbox"" id=""show"_N_""""
 .I CHECKED W " checked=""checked"""
 .I DIS W " disabled=""disabled"" "
 .W " onClick=""OnChange('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center""><input name=""chn"" id=""chn"_N_""" type=""checkbox"" disabled=""disabled"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
SHOWDAY(J,N) ;
 N A,VL
 S A=$$DAYS(N)
 W "&nbsp;"_$$^%W1DICT("DAY"_J) ;,"&nbsp;"
 S VL="" I $E(A,J) S VL=" checked=""checked"""
 W "<input type=""checkbox"" id=""day"_J_"i"_N_""" "_VL_" onClick=""OnChange('"_N_"')"">"
 Q
 ;
NL(N) ;
 Q $$NL^W4PRTVW(N)
 ;
GROUP ;
 W "<select "
 I '$D(GRSEL)!$D(GRSEL("CDKV")) W " id=""arrgrid"" onChange=""ChangeGroup(this)"""
 I $D(GRSEL),'$D(GRSEL("CDKV")),$D(N) W " id=""gr"_N_""" onChange=""OnChange('"_N_"')"""
 W " >"
 I '$D(GRSELPAR),'$$^W4MUCHIT D
 .W "<option value=""ALL"" >"_$$^%W1DICT("ALLGROUPS")_"</option>"
 W "<option value=""NO"" >"_$$^%W1DICT("NOGROUP")_"</option>"
 ;
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D
 .S II=II+1
 .W "<option value="""_NN_""""
 .I '$D(GRSEL),$D(FIRSTGR),II=1 W " selected=""selected"""
 .I $G(GRSEL),NN=GRSEL W " selected=""selected"""
 .W " >"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(NN)))_"</option>"
 W "</select>"
 Q
 ;
SRCH(SRCH,PAR) ;
 Q $$^W1SRCH(SRCH,PAR)
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
SAVE(PRM) ;
 N CD,SHOW
 ;;W PRM,!
 S PRM=$$CLEAR^%L1FRM(PRM)
 S CD=$P(PRM,"~")
 S SHOW=$P(PRM,"~",2)
 N D S D=$P(PRM,"~",3)
 ;
 N DAYS S DAYS=$G(@$$TFRNOM@(CD,"DAYS"))
 I DAYS="" S DAYS=$$ALLDAYS
 N J F J=1:1:7 I $P(D,",",J)'="" S $E(DAYS,J)=$P(D,",",J)
 ;
 N SHAA S SHAA=$P(PRM,"~",4)
 ;
 S @$$TFRNOM@(CD)=+SHOW
 ;;I SHOW,$$EDITMENU=$$ACTMENU K @$$^W4GL("PRTNO")@(CD) ; -- 26/09/21
 ;
 S @$$TFRNOM@(CD,"SHAA")=SHAA
 I +$P(SHAA,"-")=0,+$P(SHAA,":",2)=0,$P(SHAA,"-",2)="23:59" D
 .K @$$TFRNOM@(CD,"SHAA")
 ;
 I DAYS=$$ALLDAYS K ^("DAYS")
 E  S @$$TFRNOM@(CD,"DAYS")=DAYS
 ;
 I $G(@$$TFRNOM@(CD))=1,$D(^(CD))=1 K ^(CD)
 ;
 Q 1
 ;
 ;
SAVEND ;
 Q; ------- !!!!!!!
 ;
 ;
SHAA(PAR,PRM) ;
 N VL S VL="" I $G(PAR)'="" D
 .S VL=$G(@$$TFRNOM@(PAR,"SHAA"))
 .S VL=$P(VL,"-",PRM)
 .W "<select id=""p"_PRM_"i"_PAR_"hr"" onChange=""OnChange('"_PAR_"')"" >"
 ;
 I $G(PAR)="" D
 .I $$^%W1DIR="LTR" D
 ..I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 ..I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 .W "<select id=""hr"_PRM_""" onChange=""ChangeTime()"" >"
 ;
 N SEL
 I VL="",PRM=2 S VL="23:59"
 ;
 N I F I=0:1:23 D
 .S SEL="" I VL'="",I=+VL S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 W "<b>:</b>",!
 ;
 I $L($G(PAR)) W "<select id=""p"_PRM_"i"_PAR_"mn"" onChange=""OnChange('"_PAR_"')"" >"
 I $G(PAR)="" D
 .W "<select id=""mn"_PRM_""" onChange=""ChangeTime()"" >"
 ;
 N I F I=0,30,59 D
 .S SEL="" I VL'="",I=+$P(VL,":",2) S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 I $G(PAR)="",$$^%W1DIR="RTL" D
 .I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 .I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 Q
 ;
 ;
SELDAY ;
 W "<select id=""days"" onChange=""ChangeTime()"">",!
 W " <option value=""0"">"_$$^%W1DICT("ALLDAYS")_"</option>",!
 N I
 F I=1:1:7 D
 .W "<option value="""_I_""">"_$$^%W1DICT("DAY"_I)_"</option>",!
 W "</select>",!
 Q
 ;
SELDAYITEMS ;
 W "<select id=""dayitems"" >",!
 W " <option value=""0"">"_$$^%W1DICT("ALLITEMS")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("DAYITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("NODAYITEMS")_"</option>",!
 W "</select>",!
 Q
 ;
DAYS(PAR) ;
 N A
 S A=$G(@$$TFRNOM@(PAR,"DAYS"))
 I A="" S A=$$ALLDAYS
 Q A
 ;
SELTIMEITEMS ;
 W "<select id=""timeitems"" onChange=""ShowDay()"" style=""border:3px green solid"" >",!
 W " <option value=""0"">"_$$^%W1DICT("CHOICESHOWOPTION")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("ALLTIMEITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("LIMTIMEITEMS")_"</option>",!
 W "</select>",!
 Q
 ;
NOSHAA(PAR,SHAA,OPT)
 I $G(PAR)="" Q 0
 N ME,AD,MESHAA,ADSHAA,MEPARSHAA,ADPARSHAA,MEPS,ADPS
 S MESHAA=$P(SHAA,"-")
 S ADSHAA=$P(SHAA,"-",2)
 S ME=MESHAA*60+$P(MESHAA,":",2)
 S AD=ADSHAA*60+$P(ADSHAA,":",2)
 S PARSHAA=$G(@$$TFRNOM@(PAR,"SHAA"))
 S MEPARSHAA=$P(PARSHAA,"-")
 S ADPARSHAA=$P(PARSHAA,"-",2)
 I ADPARSHAA="" S ADPARSHAA="23:59"
 S MEPS=MEPARSHAA*60+$P(MEPARSHAA,":",2)
 S ADPS=ADPARSHAA*60+$P(ADPARSHAA,":",2)
 I MEPS>AD!(ADPS<ME) Q 1
 I OPT=2,+MEPS=0,ADPS>1438,$$FULLDAYS(PAR) Q 1
 Q 0
 ;
FULLDAYS(PAR)
 N DAYS S DAYS=$G(@$$TFRNOM@(PAR,"DAYS"))
 I DAYS=""!(DAYS=$$ALLDAYS) Q 1
 Q 0
 ;
ALLDAYS(STAM) ;
 Q "1111111"
 ;
LIM(PAR) ;
 I $G(PAR)="" Q 0
 I $D(@$$TFRNOM@(PAR))<10 Q 0
 N SHAA S SHAA=$G(@$$TFRNOM@(PAR,"SHAA"))
 N DAYS S DAYS=$G(@$$TFRNOM@(PAR,"DAYS"))
 I SHAA="",DAYS=""!(DAYS=1111111) Q 0
 I +SHAA=0,'$P(SHAA,":",2),$P(SHAA,"-",2)="23:59",DAYS=""!(DAYS=1111111) Q 0
 Q 1
 ;
TFRG(STAM) ;
 Q $$^W4GL("W3PARM")
 ;
 ;
SELMENU(PRM) ;
 N TFRG S TFRG=$$TFRG
 ;
 N ID S ID="menu"
 I PRM="ACT" S ID="actmenu"
 W "<select id="""_ID_""" "
  W " onChange=""ChangeMenu('"_PRM_"')"" "
 W ">",!
 ;
 W "<option value="""">" 
  W $$^%W1DICT("CHOICEMENU")
 W "</option>",!
 ;
 N A,N S N="" F  S N=$O(@TFRG@(N)) Q:N=""  D
 .S A=$G(^(N))
 .W "<option value="""_N_""" "
 . I PRM="EDIT",N=$$EDITMENU W " selected=""selected"" "
 .W ">"_$$H2U^%L1FRM(A)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
TFRNOM(STAM) ;
 Q $$^W4GL("W3PARM")_"("_$$EDITMENU_")"
 ;
EDITMENU(STAM) ;
 N NOM
 S NOM=$$GETP^%W1PRM("EDITMENU")
 ;;S:NOM<1 NOM=1
 Q NOM
 ;
ACTMENU(STAM) ;
 N NOM
 S NOM=$$GETP^%W1PRM("ACTMENU")
 S:NOM<1 NOM=1
 Q NOM
 ;
 ;
INIT ;
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 D KILL^%W1PRM("EDITMENU")
 ;
 N TFRG S TFRG=$$TFRG
 Q
 ;
 ;
NEWMENU(NM) ;
 N NEW S NEW=$O(@$$TFRG@(999999),-1)+1
 N N S N="" F  S N=$O(@$$^W4GL("W3PAR")@(N)) Q:N=""  D
 .S @$$TFRG@(NEW,N)=$G(@$$^W4GL("W3PAR")@(N))
 ;
 S @$$TFRG@(NEW)=$$INVH^%L1FRM($$CNWEB^%L1FRM(NM))
 D PUT^%W1PRM("EDITMENU",NEW)
 Q 1
 ;
 ;
CHNMENU(NM) ;
 S @$$TFRG@($$EDITMENU)=$$INVH^%L1FRM($$CNWEB^%L1FRM(NM))
 Q 1
 ;
DELMENU(NOM) ;
 K @$$TFRG@(NOM)
 D KILL^%W1PRM("EDITMENU")
 Q 1
 ;
SHOWDAYSMENU ; 
  D ^W4BUTTON("nenutime","SHOWMENUPERDAYS","ShowMenuPerDays()","background-color:lightgrey;color:darkblue")
  Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRTHR0
W3PRTHR ; [ 23.09.21 14:09 ] [ 10.07.19 13:20 ] [ 05.06.17 15:49 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 W "<div align=""center"" >",!
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_$S($G(%ARG("NOPICTURES")):"95%",1:"100%")_""" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 ;
 W "<th width=""70px"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""200px"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""70px"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""260px"">"_$$^%W1DICT("WEEKDAYS")_"</th>"
 W "<th width=""110px"">"_$$^%W1DICT("MESHAA")_"</th>"
 W "<th width=""110px"">"_$$^%W1DICT("ADSHAA")_"</th>"
 W "<th width=""60px"">"_$$^%W1DICT("ITEMSHOW")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .N SUG S SUG=$$SUG^W4P(N)
 .I SUG,$G(@$$^W4GL("PARSUG")@(N))=0 Q
 .I $G(%ARG("CDKV")),%ARG("CDKV")'=SUG Q
 .I $G(%ARG("CDKV"))="NO",SUG'?.P,SUG'="NO",SUG'="ALL" Q
 .I $L($G(SRCH)),'$$SRCH(SRCH,N) Q
 .N OK S OK=1
 .Q:'OK
 .I $G(%ARG("DAY")),'$E($$DAYS(N),%ARG("DAY")) Q
 .I $G(%ARG("SHAA"))'="",$$NOSHAA(N,%ARG("SHAA"),$G(%ARG("TIMEITEMS"))) Q
 .W "<tr id=""tr"_N_""" "
 . W "style=""background-color:"_$S($$LIM(N):"lightyellow",$$SHOW^W4PRTVW(N)=0:"pink",1:"white")_""" >"
 . S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_"</td>"
 .
 .W "<td align=""center"">"
 .D
 ..N J,VL,A
 ..I '$G(%ARG("DAY")) F J=1:1:7 D SHOWDAY(J,N)
 ..I $G(%ARG("DAY")) D SHOWDAY(%ARG("DAY"),N)
 .W "</td>"
 .
 .W "<td dir=""LTR"" align=""center"">"
 .D SHAA(N,1)
 .W "</td>"
 .W "<td dir=""LTR"" align=""center"">"
 .D SHAA(N,2)
 .W "</td>"
 .
 .N CHECKED,DIS
 .S CHECKED=1,DIS=0
 .I $$NL(N)=1 S CHECKED=0,DIS=1
 .I $$NL(N),$$NL(N)<1 S CHECKED=0,DIS=0
 .I $$NOPAR^W4PRTVW(N) S CHECKED=0,DIS=0
 .I $G(@$$TFRNOM@(N))=0 S CHECKED=0,DIS=0
 .W "<td align=""center""><input name=""show"" type=""checkbox"" id=""show"_N_""""
 .I CHECKED W " checked=""checked"""
 .I DIS W " disabled=""disabled"" "
 .W " onClick=""OnChange('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center""><input name=""chn"" id=""chn"_N_""" type=""checkbox"" disabled=""disabled"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SHOWDAY(J,N) ;
 N A,VL
 S A=$$DAYS(N)
 W "&nbsp;"_$$^%W1DICT("DAY"_J) ;,"&nbsp;"
 S VL="" I $E(A,J) S VL=" checked=""checked"""
 W "<input type=""checkbox"" id=""day"_J_"i"_N_""" "_VL_" onClick=""OnChange('"_N_"')"">"
 Q
 ;
NL(N) ;
 Q $$NL^W4PRTVW(N)
 ;
GROUP ;
 W "<select "
 I '$D(GRSEL)!$D(GRSEL("CDKV")) W " id=""arrgrid"" onChange=""ChangeGroup(this)"""
 I $D(GRSEL),'$D(GRSEL("CDKV")),$D(N) W " id=""gr"_N_""" onChange=""OnChange('"_N_"')"""
 W " >"
 I '$D(GRSELPAR) W "<option value=""ALL"" >"_$$^%W1DICT("ALLGROUPS")_"</option>"
 W "<option value=""NO"" >"_$$^%W1DICT("NOGROUP")_"</option>"
 ;
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D
 .;;I $G(@$$^W4GL("W3SUG")@(NN))=0 Q
 .S II=II+1
 .W "<option value="""_NN_""""
 .I '$D(GRSEL),$D(FIRSTGR),II=1 W " selected=""selected"""
 .I $G(GRSEL),NN=GRSEL W " selected=""selected"""
 .W " >"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(NN)))_"</option>"
 W "</select>"
 Q
 ;
SRCH(SRCH,PAR) ;
 Q $$^W1SRCH(SRCH,PAR)
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
SAVE(PRM) ;
 N CD,SHOW
 ;;W PRM,!
 S PRM=$$CLEAR^%L1FRM(PRM)
 S CD=$P(PRM,"~")
 S SHOW=$P(PRM,"~",2)
 N D S D=$P(PRM,"~",3)
 ;
 N DAYS S DAYS=$G(@$$TFRNOM@(CD,"DAYS"))
 I DAYS="" S DAYS=$$ALLDAYS
 N J F J=1:1:7 I $P(D,",",J)'="" S $E(DAYS,J)=$P(D,",",J)
 ;
 N SHAA S SHAA=$P(PRM,"~",4)
 ;
 S @$$TFRNOM@(CD)=+SHOW
 I SHOW,$$EDITMENU=$$ACTMENU K @$$^W4GL("PRTNO")@(CD)
 ;
 S @$$TFRNOM@(CD,"SHAA")=SHAA
 I +$P(SHAA,"-")=0,+$P(SHAA,":",2)=0,$P(SHAA,"-",2)="23:59" D
 .K @$$TFRNOM@(CD,"SHAA")
 ;
 I DAYS=$$ALLDAYS K ^("DAYS")
 E  S @$$TFRNOM@(CD,"DAYS")=DAYS
 ;
 I $G(@$$TFRNOM@(CD))=1,$D(^(CD))=1 K ^(CD)
 ;
 Q 1
 ;
 ;
SAVEND ;
 I $$EDITMENU=$$ACTMENU D
 .N W3PAR S W3PAR=$$^W4GL("W3PAR")
 .L +@W3PAR:1
 .N N S N="" F  S N=$O(@W3PAR@(N)) Q:N=""  K ^(N,"SHAA"),^("DAYS")
 .M @W3PAR=@$$TFRNOM
 .L -@W3PAR
 ;
 S @$$TFRG=$$ACTMENU
 ;
 Q
 ;
 ;
SHAA(PAR,PRM) ;
 N VL S VL="" I $G(PAR)'="" D
 .S VL=$G(@$$TFRNOM@(PAR,"SHAA"))
 .S VL=$P(VL,"-",PRM)
 .W "<select id=""p"_PRM_"i"_PAR_"hr"" onChange=""OnChange('"_PAR_"')"" >"
 ;
 I $G(PAR)="" D
 .I $$^%W1DIR="LTR" D
 ..I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 ..I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 .W "<select id=""hr"_PRM_""" onChange=""ChangeTime()"" >"
 ;
 N SEL
 I VL="",PRM=2 S VL="23:59"
 ;
 N I F I=0:1:23 D
 .S SEL="" I VL'="",I=+VL S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 W "<b>:</b>",!
 ;
 I $L($G(PAR)) W "<select id=""p"_PRM_"i"_PAR_"mn"" onChange=""OnChange('"_PAR_"')"" >"
 I $G(PAR)="" D
 .W "<select id=""mn"_PRM_""" onChange=""ChangeTime()"" >"
 ;
 N I F I=0,30,59 D
 .S SEL="" I VL'="",I=+$P(VL,":",2) S SEL=" selected=""selected"" "
 .W "<option value="""_I_""" "_SEL_" >"
 .W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 I $G(PAR)="",$$^%W1DIR="RTL" D
 .I PRM=1 W "<b>"_$$^%W1DICT("MESHAA")_"</b>",!
 .I PRM=2 W "<b>"_$$^%W1DICT("ADSHAA")_"</b>",!
 Q
 ;
 ;
SELDAY ;
 W "<select id=""days"" onChange=""ChangeTime()"">",!
 W " <option value=""0"">"_$$^%W1DICT("ALLDAYS")_"</option>",!
 N I
 F I=1:1:7 D
 .W "<option value="""_I_""">"_$$^%W1DICT("DAY"_I)_"</option>",!
 W "</select>",!
 Q
 ;
SELDAYITEMS ;
 W "<select id=""dayitems"" >",!
 W " <option value=""0"">"_$$^%W1DICT("ALLITEMS")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("DAYITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("NODAYITEMS")_"</option>",!
 W "</select>",!
 Q
 ;
DAYS(PAR) ;
 N A
 S A=$G(@$$TFRNOM@(PAR,"DAYS"))
 I A="" S A=$$ALLDAYS
 Q A
 ;
SELTIMEITEMS ;
 W "<select id=""timeitems"" onChange=""ShowDay()"" >",!
 W " <option value=""0"">"_$$^%W1DICT("CHOICESHOWOPTION")_"</option>",!
 W " <option value=""1"">"_$$^%W1DICT("ALLTIMEITEMS")_"</option>",!
 W " <option value=""2"">"_$$^%W1DICT("LIMTIMEITEMS")_"</option>",!
 W "</select>",!
 Q
 ;
NOSHAA(PAR,SHAA,OPT)
 I $G(PAR)="" Q 0
 N ME,AD,MESHAA,ADSHAA,MEPARSHAA,ADPARSHAA,MEPS,ADPS
 S MESHAA=$P(SHAA,"-")
 S ADSHAA=$P(SHAA,"-",2)
 S ME=MESHAA*60+$P(MESHAA,":",2)
 S AD=ADSHAA*60+$P(ADSHAA,":",2)
 S PARSHAA=$G(@$$TFRNOM@(PAR,"SHAA"))
 S MEPARSHAA=$P(PARSHAA,"-")
 S ADPARSHAA=$P(PARSHAA,"-",2)
 I ADPARSHAA="" S ADPARSHAA="23:59"
 S MEPS=MEPARSHAA*60+$P(MEPARSHAA,":",2)
 S ADPS=ADPARSHAA*60+$P(ADPARSHAA,":",2)
 I MEPS>AD!(ADPS<ME) Q 1
 I OPT=2,+MEPS=0,ADPS>1438,$$FULLDAYS(PAR) Q 1
 Q 0
 ;
FULLDAYS(PAR)
 N DAYS S DAYS=$G(@$$TFRNOM@(PAR,"DAYS"))
 I DAYS=""!(DAYS=$$ALLDAYS) Q 1
 Q 0
 ;
ALLDAYS(STAM) ;
 Q "1111111"
 ;
LIM(PAR) ;
 I $D(@$$TFRNOM@(PAR))<10 Q 0
 N SHAA S SHAA=$G(@$$TFRNOM@(PAR,"SHAA"))
 N DAYS S DAYS=$G(@$$TFRNOM@(PAR,"DAYS"))
 I SHAA="",DAYS=""!(DAYS=1111111) Q 0
 I +SHAA=0,'$P(SHAA,":",2),$P(SHAA,"-",2)="23:59",DAYS=""!(DAYS=1111111) Q 0
 Q 1
 ;
TFRG(STAM) ;
 Q $$^W4GL("W3PARM")
 ;
 ;
SELMENU(PRM) ;
 N TFRG S TFRG=$$TFRG
 ;
 N ID S ID="menu"
 I PRM="ACT" S ID="actmenu"
 W "<select id="""_ID_""" "
  W " onChange=""ChangeMenu('"_PRM_"')"" "
 W ">",!
 ;
 N A,N S N="" F  S N=$O(@TFRG@(N)) Q:N=""  D
 .S A=$G(^(N))
 .W "<option value="""_N_""" "
 . I PRM="ACT",N=$$ACTMENU W " selected=""selected"" "
 . I PRM="EDIT",N=$$EDITMENU W " selected=""selected"" "
 .W ">"_$$H2U^%L1FRM(A)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
TFRNOM(STAM) ;
 Q $$^W4GL("W3PARM")_"("_$$EDITMENU_")"
 ;
EDITMENU(STAM) ;
 N NOM
 S NOM=$$GETP^%W1PRM("EDITMENU")
 S:NOM<1 NOM=1
 Q NOM
 ;
ACTMENU(STAM) ;
 N NOM
 S NOM=$$GETP^%W1PRM("ACTMENU")
 S:NOM<1 NOM=1
 Q NOM
 ;
INIT ;
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 ;
 N TFRG S TFRG=$$TFRG
 ;
 I $G(@TFRG) D
 .N NOM S NOM=@TFRG
 .K @TFRG@(NOM)
 .M @TFRG@(NOM)=@$$^W4GL("W3PAR")
 .S @TFRG=NOM
 .
 I $D(@TFRG)<10,$D(@$$^W4GL("W3PAR")) D
 .M @TFRG@(1)=@$$^W4GL("W3PAR")
 .S @TFRG@(1)=$$TV^%W1DICT($$^%W1LNG,"DAYMENU")
 .S @TFRG=1
 ;
 N ACTMENU
 S ACTMENU=$G(@$$TFRG)
 I ACTMENU<1 S ACTMENU=1
 D PUT^%W1PRM("EDITMENU",ACTMENU)
 D PUT^%W1PRM("ACTMENU",ACTMENU)
 Q
 ;
 ;
NEWMENU(NM) ;
 N NEW S NEW=$O(@$$TFRG@(999999),-1)+1
 N N S N="" F  S N=$O(@$$^W4GL("W3PAR")@(N)) Q:N=""  D
 .S @$$TFRG@(NEW,N)=$G(@$$^W4GL("W3PAR")@(N))
 ;
 S @$$TFRG@(NEW)=$$INVH^%L1FRM($$CNWEB^%L1FRM(NM))
 D PUT^%W1PRM("EDITMENU",NEW)
 Q 1
 ;
 ;
CHNMENU(NM) ;
 S @$$TFRG@($$EDITMENU)=$$INVH^%L1FRM($$CNWEB^%L1FRM(NM))
 Q 1
 ;
DELMENU(NOM) ;
 K @$$TFRG@(NOM)
 S @$$TFRG=$$ACTMENU
 D PUT^%W1PRM("EDITMENU",$$ACTMENU)
 Q 1
 
 
 
 
 

W3PRTHRD
W3PRTHRD ; [ 26.09.21 12:42 ] [ 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(14)_";color:brown"" >",!
   W $$^%W1DICT("SHOWMENUPERDAYS")
  W "</span>",!
  W "<br><br>",!
 ;
  W "<table>",!
  D GL
  F I=1:1:7 D
  .W "<tr>"
  .  W "<td>"_$$^%W1DICT("DAY"_I)_"</td>"
  .  W "<td>" D SELMENU(I) W "</td>"
  .W "</tr>",!
  W "</table>",!
  ;
  W "<br><br>",!
  D ^W4SBMBCK
 W "</div>",!
 Q
 ;
SELMENU(I) ;
 N N,GLM,A,C,GL S GLM=$$^W4GL("W3PARM") 
 D GL
 W "<select id=""menu"_I_""">",!
  W "<option value=""0"" "
   I '$G(@GL@(I)) W "selected=""selected"" "
  W ">"_$$^%W1DICT("CHOICEMENU")_"</option>",!
  ;
  S N="" F  S N=$O(@GLM@(N)) Q:N=""  D
  .S A=$G(^(N)) Q:A=""
  .W "<option value="""_N_""" "
  . I N=$G(@GL@(I)) W "selected=""selected"" "
  .W ">"
 .  S C=$$H2U^%L1FRM(A)
 .  W C
  .W "</option>",! 
 W "</select>",! 
 Q
 ;
 ;
SAVE(PRM) ;
 N (JB,PRM)
 D GL K @GL
 F J=1:1:7 D
 .S C=$P(PRM,"~",J)
 .S @GL@(J)=C
 Q 1
 ;
GL ;
 S GL=$$^W4GL("W3PRTHRD")
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W3PRTHRV
W3PRTHRV ; [ 29.03.17 05:50 ] [ 16.03.15 11:20 ] [ 15.03.15 11:15 ] [
 N (JB,%ARG,%REM)
 W "<div dir="""_$$^%W1DIR_""" >",!
 W "<br><br>"
 I $G(%ARG("PRM"))="NEW" D  G END
 .W "&nbsp;&nbsp;<span style=""font-weight:bold"">"
 . W $$^%W1DICT("NEWMENUNAME")
 .W "</span>",!
 .W "&nbsp;&nbsp;"
 .W "<input id=""newmenu"" type=""text"" size=""16"">",!
 .W "&nbsp;&nbsp;"
 .D SBM^W4DIVBUT("")
 .W "&nbsp;&nbsp;"
 .D BACK^W4DIVBUT("")
 ;
 I $G(%ARG("PRM"))="CHN" D  G END
 .W "&nbsp;&nbsp;<span style=""font-weight:bold"">"
 . W $$^%W1DICT("CHANGEMENUNAME")
 .W "</span>",!
 .W "&nbsp;&nbsp;"
 .N VL S VL=$G(@$$TFRG^W3PRTHR@($$EDITMENU^W3PRTHR))
 .W "<input id=""chnmenu"" type=""text"" size=""16"" value="""_$$H2U^%L1FRM(VL)_""">",!
 .W "&nbsp;&nbsp;"
 .D SBM^W4DIVBUT("")
 .W "&nbsp;&nbsp;"
 .D BACK^W4DIVBUT("")
 ;
 W "</div>",!
END Q
 
 

W3PRTIDK
W3PRTIDK ; [ 23.03.26 19:20 ] [ 08.02.26 14:54 ] [ 31.12.25 15:11 ] 
 N (JB,%ARG,SRCH)
 I $G(%ARG("NOSHOW")) Q
 I '$D(JB) W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 ;
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 D CRTMPPAR
 D CREX
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""100%"">",!
  W "<tr>"
  ;
  I '$$CSR D
  .W "<td>" 
  .S CHECKDESC=""
  .I $$NOSHOWDESC S CHECKDESC=" checked=""checked"" "
  .W $$^%W1DICT("SHOWITEMSDESCSHORT")_"&nbsp;"
  .W "<input id=""showdescshort"" type=""checkbox"" "_CHECKDESC_" OnChange=""ShowPrt()"" />"
  .W "</td>"
  ;
 W "<td>"
  W $$^%W1DICT("FASTADDITEMS"),$$NBSP^%L1FRM(2)
  W "<input type=""checkbox"" id=""fastadd"" />"
 W "</td>"
 ;
 W "<td>"
  W "<input type=""button"" value="""_$$^%W1DICT("CREATEORUPDATESET")_""" onClick=""CreateSet()"" />"
 W "</td>"
 ;
 W "<td width=""40%"" align=""center"">"
  W "<select id=""showprt"" onChange=""ReView()"">",!
   W "<option value=""1"" "_$S($$SHOWPRT=1:" selected=""selected""",1:"")_">"_$$^%W1DICT("SHOWALLITEMS")_"</option>",!
   W "<option value=""2"" "_$S($$SHOWPRT=2:" selected=""selected""",1:"")_">"_$$^%W1DICT("SHOWOPENITEMSONLY")_"</option>",!
   W "<option value=""3"" "_$S($$SHOWPRT=3:" selected=""selected""",1:"")_">"_$$^%W1DICT("SHOWCLOSEDITEMSONLY")_"</option>",!
  W "</select>",!
 W "</td>"
 ; 
 W "<td align=""center"">"
  D SHOWORD
 W "</td>"
 W "</tr>",!
 W "</table>",!
 W "<br>",!
 ;
 W $$^W4DVTBFX("80%"),!
 ;
 W "<div id=""wrap"" style=""overflow-x:auto"" dir="""_$$^%W1DIR_""">",!
 
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" "
 W "cellspacing=""0"" width=""98%"" style=""font-size:"_$$^W3FSZ(10)_""" >",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 ;
 W "<th width=""15px"">&nbsp;</th>"
 W "<th width=""80px"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""25px"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""80px"">"_$$^%W1DICT("ITEMDESC")_"</th>"
 ;
 I '$$NOPIC D
 .W "<th width=""80px"">"_$$^%W1DICT("PICTURE")_"</th>"
 ;
 I $$CSR D
 .W "<th width=""70px"">"_$$^%W1DICT("COLOR")_"</th>"
 .W "<th width=""35px"">"_$$^%W1DICT("WEIGHT")_"</th>"
 ;
 I '$$CSR D
 .W "<th width=""120px"">"_$$^%W1DICT("GROUP")_"</th>"
 I $$CSR D
 .W "<th width=""100px"">"_$$^%W1DICT("GROUP")_" / "_$$^%W1DICT("PRINTER")_"</th>"
 W "<th width=""25px"">"_$$^%W1DICT("SHOW")_"</th>"
 W "<th width=""25px"">"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 S K="",I=0 F  S K=$O(@$$^W4MAIN("TMPPAR")@(K)) Q:K=""  D
 .S N=$G(^(K)) Q:N=""
 .I $$SHOWPRT=2,'$$SHOW(N) Q
 .I $$SHOWPRT=3,$$SHOW(N) Q
 .S I=I+1
 ;
 I $G(%ARG("CDKV")),'$$^W4VWGR(%ARG("CDKV")),I>$$MAXGR^W4MUCHIT D  Q
 .W "<tr><td colspan=""10"" style=""text-align:center;font-size:"_$$^W3FSZ(18)_";color:red"">"
 . W $$^%W1DICT("TOOMUCHITEMSINGROUP")
 .W "</td></tr></table></div>",!
 ;
 S K="",I=0 F  S K=$O(@$$^W4MAIN("TMPPAR")@(K)) Q:K=""  D
 .S N=$G(^(K)) Q:N=""
 .W "<tr id=""tr"_N_""" "
 . I '$$SHOW(N) W " style=""background-color:pink"" "
 .W ">" S I=I+1
 .I $$SHOWPRT=2,'$$SHOW(N) W "</tr>",! Q
 .I $$SHOWPRT=3,$$SHOW(N) W "</tr>",! Q
 .
 .W "<td align=""center"" "
 . I $$CSR'=2,$D(@$$^W4GL("PLUTOTI")@(N)) D
 .. W " onClick=""InsertRow('"_N_"')"" "
 .W ">"
 .
 .I $$PRTNET D  G TDNAME
 ..W "&nbsp;</td>"
 ..W "<td>"_$$NBSP^%L1FRM(5)_N_"</td>"
 .
 . W "<span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
 .  I $$CSR'=2,'$D(@$$^W4GL("PLUTOTI")@(N)) D
 ..  W " onClick=""InsertRow('"_N_"')"" "
 . W ">"
 . W " + "
 . W "</span><br />"
 .
 . I '$D(@$$^W4GL("PLUTOTI")@(N)) D
 .. W "<span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
 .. W " onClick=""DeleteRow('"_N_"')"" > - </span>"
 .W "</td>",!
 .
 .W "<td id=""cd"_N_""" "
 .I $$ONEGLPAR^W3PRM D
 .. W " onClick=""ClickPar(this,'"_N_"')"" "
 .. W " style=""cursor:pointer"" "
 .W ">&nbsp;"_N_"&nbsp;"
 .I $$NEWMLY^W3PRM D
 ..D EZM(N)
 .W "</td>",!
 .
TDNAME .W "<td align=""center"">"
 . W $$ITEMNAME(N)
 .W "</td>",!
 .
 .W "<td align=""center"">"
 . W $$INPMH(N)
 . I $$NEWMLY^W3PRM D
 .. W "<br><span id=""foodcost"_N_""" style=""font-size:"_$$^W3FSZ(9)_";color:blue"" >&nbsp;"
 .. I $D(@$$GLEZM^W4EZM@($$^W4PK(N,1)))>9 D
 ...  W $$^%W1DICT("FOODCOST")_" "_$$FOODCOST^W4EZMIDK($$^W4PK(N,1))
 .. W "</span>"
 .W "</td>"
 .
TDDESC .W "<td align=""center"">"
 . N WD S WD=30
 . I $$NOSHOWDESC S WD=16
 . D DESC(N,WD)
 .W "</td>"
 .
 .I '$$NOPIC D
 ..W "<td onClick=""OnChange('"_N_"');Upload('"_N_"',event)"" ><img src="""_$$PIC^W4P(N)
 ..I $D(^[$$^W3MAIN]TMPIMG(JB,N)) W "?stat="_$R(1000)
 ..W """"
 ..W " width=""100"" height=""67"" /></td>"
 .
 .I $$CSR D
 ..W "<td><div id=""itclr"_N_""" onClick=""OnChange('"_N_"');ItemColor(event,'"_N_"')"" "
 ..W " style=""text-align:center;background-color:"_$$BGIT(N,1)_";color:"_$$FGIT(N,1)_";font-weight:bold;width:100%;height:100%;cursor:pointer"""
 ..W ">PREVIEW</div>"
 ..W "</td>"
 ..
 ..W "<td align=""center"">"
 .. W "<input name=""weight"" type=""checkbox"" id=""weight"_N_""" "
 .. I $$MSK^W4P(N) W " checked=""checked"""
 .. W " onClick=""OnChange('"_N_"')"" />"
 ..W "</td>"
 .
 .W "<td align=""center"">" N GRSEL,GRSELPAR
 . S GRSEL=$$SUG^W4P(N),GRSELPAR=""
 . D GROUP
 . I GRSEL,$D(@$$^W4GL("W4TATSUG")@(GRSEL))>9 D
 .. W $$SUBGR(N_";"_GRSEL) 
 . I $$CSR,'$$SUPER^W3PRM W $$PRINTER(N)
 .W "</td>",!
 .
 .N SHOW S SHOW=$$SHOW(N)
 .N CHECKED,DIS S CHECKED=$P(SHOW,";"),DIS=$P(SHOW,";",2)
 .W "<td align=""center"">"
 .W "<input name=""show"" type=""checkbox"" id=""show"_N_""""
 .I CHECKED W " checked=""checked"""
 .I DIS W " disabled=""disabled"" "
 .W " onClick=""OnChangeShow('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center""><input name=""chn"" id=""chn"_N_""" type=""checkbox"" disabled=""disabled"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",! ;; -- wrap
 W "</div>",!
 W "</div>",!
 ;;S ^AA("W3PRTIDK-FIN")=$H
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
INPMH(N) ;
 N MHIT S MHIT=$P($G(@$$^W4GL("PAR")@(N)),"**",2) I MHIT'["%" S MHIT=$J(MHIT,2,2)
 N MHLMAM S MHLMAM=""
 I '$G(%ARG("LMAM")),$$LMAM^W4PRM S MHLMAM=$J(MHIT*100/(100+$$MAM^W4PRM),2,2)
 I $G(%ARG("LMAM")) D
 .S MHIT=$J(MHIT*100/(100+$$MAM^W4PRM),2,2)
 N ST
 I $$PRTNET S ST=MHIT Q ST
 ;
 S ST=" <input type=""text"" id=""mh"_N_""" size=""7"" maxlength=""14"" "
 S ST=ST_" style=""font-size:"_$$^W3FSZ(10)_" """
 S ST=ST_" value="""_$G(MHIT)_""" onKeyUp=""OnChange('"_N_"')"" "
 S ST=ST_" onChange=""OnChange('"_N_"')"" onFocus=""this.select()"" />"
 I MHLMAM'="" S ST=ST_"<br><span style=""color:grey"">"_MHLMAM_"</span>"
 Q ST
 ;
 ;
GROUP ;
 I $$PRTNET,$G(N) D  Q
 .W "<span style=""font-weight:bold"">"_$$H2U^%L1FRM($$SUG1^W4P(N))_"</span>"
 ;
 W "<select "
 I '$D(GRSEL)!$D(GRSEL("CDKV")) D
 .W " id=""arrgrid"" "
 .W " onChange="""_$S($G(N):"OnChange('"_N_"');",1:"")_"ChangeGroup(this)"""
 ;
 I $D(GRSEL),'$D(GRSEL("CDKV")),$D(N) D
 .W " id=""gr"_N_""" onChange=""OnChangeGr('"_N_"')"""
 W " >"
 I '$$^W4MUCHIT D
 .W "<option value=""ALL"" "
 .I $G(%ARG("CDKV"))="ALL" W " selected=""selected"" "
 .W ">"_$$^%W1DICT("ALLGROUPS")_"</option>"
 ;
 I '$$SUPER^W3PRM D
 .W "<option value=""NO"" "
 .I $G(%ARG("CDKV"))="NO" W " selected=""selected"" "
 .W ">"_$$^%W1DICT("NOGROUP")_"</option>"
 ;
 N PRM
 S PRM=$S($G(%ARG("ABCKV")):"A",1:"N")
 D ^W4SHOWKV(PRM,"VWKV^W3PRTIDK("""_PRM_""")")
 W "</select>"
 ;
 Q
 ;
 ;
VWKV(PRM) ;
 ;;I $$SUPER^W3PRM,'$$^W4VWGR(NN) Q  ; -- 02/12/21 --> COMMENT
 S II=II+1
 W "<option value="""_NN_""""
 I '$D(GRSEL),$D(FIRSTGR),II=1 W " selected=""selected"""
 I $G(GRSEL),NN=GRSEL W " selected=""selected"""
 W " >"_$S(PRM="N":NN_" ",1:"")_$$^W3SHOWKV(NN)_"</option>"
 Q
 ;
SUBGR(PRM) ;
 N PAR,GR
 S PAR=$P(PRM,";")
 S GR=$P(PRM,";",2)
 Q:$G(GR)="" ""
 Q:$G(PAR)="" ""
 ;
 N ST S ST="<br><select id=""subgr"_PAR_""" onChange=""OnChange('"_PAR_"')"" > "
 ;
 S ST=ST_"<option value=""0"" >"_$$^%W1DICT("CHOICESUBGR")_"</option>"
 N NN S NN="" F  S NN=$O(@$$^W4GL("W4TATSUG")@(GR,NN)) Q:NN=""  D
 .N A S A=$G(^(NN))
 .S ST=ST_"<option value="""_NN_""" "
 .I NN=$$TATSUG^W4P(PAR) S ST=ST_" selected=""selected"" "
 .S ST=ST_">"_$$H2U^%L1FRM(A)_"</option>"
 S ST=ST_"</select>"
 ;
 Q ST
 ;
 ;
SELSORT ;
 W "<select id=""sort"" onChange=""ChangeSort()"" >"
  W "<option value=""0"" "_$$OPTSORT(0)_" >"_$$^%W1DICT("SORTPERITEMCODE")_"</option>",!
  W "<option value=""1"" "_$$OPTSORT(1)_" >"_$$^%W1DICT("SORTPERITEMORDERING")_"</option>",!
  W "<option value=""2"" "_$$OPTSORT(2)_" >"_$$^%W1DICT("SORTPERABC")_"</option>",!
 W "</select>",!
 Q
 ;
OPTSORT(SORT)
 I $G(%ARG("SORT"))=SORT Q " selected=""selected"" "
 Q ""
 ;
SRCH(SRCH,PAR) ;
 Q $$^W1SRCH(SRCH,PAR)
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
EXIST(GR,PAR)
 N PARSID S PARSID=$$^W4GL("P1PARSID")
 N EX,N S EX=0
 S N="" F  S N=$O(@PARSID@(GR,N)) Q:N=""  D  Q:EX
 .I $G(^(N))=PAR S EX=1
 Q EX
 ;
SAVE(PRM) ;
 N CD,NM,NML,MH,DESC,GR,SHOW,CLR,WEIGHT,CHN,PRINTER,EZM
 D PUT^%W3DEB("W3PRTIDK-SAVE","PRM=PRM")
 ;;W PRM,!
 S PRM=$$CLEAR^%L1FRM(PRM)
 S CD=$P(PRM,"~") I CD=0 Q 0
 I 'CD,'$$^W4LKH Q 0
 S CD=$$FUNC^%UCASE(CD)
 ;
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) D  Q 1
 .K @$$^W4GL("W3PAR")@(CD)
 .K @$$^W4GL("L1TIP")@("MTK",CD)
 .K ^[$$^W3MAIN]TMPDEL(JB,CD)
 .D ^W3DEL(CD)
 .K @$$^W4GL("PAR")@(CD)
 ;
 S NML=""
 S NM=$$CNWEB^%L1FRM($P(PRM,"~",2))
 I NM["^^" S NML=$P(NM,"^^",2),NM=$P(NM,"^^")
 S NM=$TR(NM,"\*","/X")
 S MH=$P(PRM,"~",3)
 ;;D SVPRE^P1PARI(CD,MH)
 S DESC=$$CNWEB^%L1FRM($P(PRM,"~",4))
 S GR=$P(PRM,"~",5)
 S SUBGR=$P(PRM,"~",6)
 S CLR=$P(PRM,"~",7)
 S WEIGHT=$P(PRM,"~",8)
 S SHOW=$P(PRM,"~",9)
 S PRINTER=$P(PRM,"~",11)
 S EZM=$P(PRM,"~",12)
 ;
 S NM=$S($$^%W1DIR="RTL":$$INVH^%L1FRM(NM),1:NM)
 ;
 ;;I '$$ONEGLPAR^W4MLPRT D
 D
 .S $P(@$$^W4GL("PAR")@(CD),"**")=NM
 .S $P(@$$^W4GL("PAR")@(CD),"**",2)=$S(MH["%":MH,1:$J(MH,2,2))
 ;
 S $P(@$$^W4GL("PAR")@(CD),"**",3)=WEIGHT
 S $P(@$$^W4GL("PAR")@(CD),"**",5)=GR
 S $P(@$$^W4GL("PAR")@(CD),"**",15)=SUBGR
 ;;D SVPOST^P1PARI(CD)
 ;
 S $P(@$$^W4GL("PAR")@(CD),"**",11)=$$SPA^%L1FRM($$FUNC^%UCASE(PRINTER))
 S $P(@$$^W4GL("PAR")@(CD),"**",12)=$$SPA^%L1FRM(CLR)
 S $P(@$$^W4GL("PAR")@(CD),"**",14)=$$SPA^%L1FRM($$FUNC^%UCASE(NML))
 ;
 S @$$^W4GL("W3PAR")@(CD)=+SHOW
 I SHOW K @$$^W4GL("PRTNO")@(CD)
 ;
 I $$ONEGLPAR^W4MLPRT D ^W4SETNMH(CD,NM,MH)
 I EZM D ^W4EZM11(CD,NM,MH)
 ;
 I DESC["==",DESC'[" == ",DESC'?.P S DESC=$$RPL^%L1FRM(DESC,"=="," == ")
 I DESC'[" == " D
 .S DESC=$S($$^%W1DIR="RTL":$$INVH^%L1FRM(DESC),1:DESC)
 I DESC[" == " D
 .S DESC=$P(DESC," == ")_" == "_$$INVH^%L1FRM($P(DESC," == ",2))
 ;
 I $G(GR),$G(CD) D
 .N PARSID S PARSID=$$^W4GL("P1PARSID")
 .I '$$EXIST(GR,CD) D
 ..S @PARSID@(GR,$O(@PARSID@(GR,99999),-1)+1)=CD
 ;
 K @$$^W4GL("L1TIP")@("MTK",CD)
 S @$$^W4GL("L1TIP")@("MTK",CD)=NM
 S @$$^W4GL("L1TIP")@("MTK",CD,1)=DESC
 ;
 S CHN=$P(PRM,"~",10)
 I CHN D
 .N MSD S MSD=$$GET^%W1PRM("MSD")
 .I $$MSL(MSD) D
 ..D PUT^%W1PRM("MSD",MSD)
 ..I $$TRNPICP^W3TRM(MSD,CD)
 Q 1
 ;
 ;
SAVEND(MSD) K ^[$$^W3MAIN]TMPLAST(JB)
 N GLPAR S GLPAR=$$^W4GL("PAR")
 N GR,SUBGR,A
 ;
 N N S N="" F  S N=$O(@GLPAR@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S GR=$P(A,"**",5)
 .S SUBGR=$P(A,"**",15)
 .I GR="" S $P(@GLPAR@(N),"**",15)="" Q
 .I GR,SUBGR,'$D(@$$^W4GL("W4TATSUG")@(GR,SUBGR)) S $P(@GLPAR@(N),"**",15)=""
 .
 .I $$DELIS^W4PRM,GR=2,$D(@$$^W4GL("MHT")@(N)) D  ;-- PRITIM MEYUHADIM
 ..N N2
 ..S N2="" F  S N2=$O(@$$^W4GL("MHT")@(N,N2)) Q:N2=""  I N2 D
 ...S @$$^W4GL("MHT")@(N,N2)=$P(@GLPAR@(N2),"**",2)
 ...S @$$^W4GL("MHSET")@(N,N2)=@$$^W4GL("MHT")@(N,N2)
 ;
 K ^[$$^W3MAIN]TMPDEL(JB)
 Q:'$G(MSD)
 D PUT^%W3DEB("W3PRTIDK-SAVEND","MSD=MSD")
 ;
 I $$MSL(MSD) D
 .D PUT^%W1PRM("MSD",MSD)
 .J SEND^W3TRM(JB)
 ;
 I $G(@$$^W4PRM@("BOLET")) D
 .D ^W4PARMSK
 Q
 ;
MSL(MSD) ;
 I '$G(@$$^W4PRM@("IT2WEB")) Q 0
 Q $$GETREST^W3TRM(MSD)
 ;
DELROW(CD) ;
 Q:'$G(JB)
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) K ^(CD) Q
 S ^[$$^W3MAIN]TMPDEL(JB,CD)=$G(@$$^W4GL("PAR")@(CD))
 Q
 ;
 ;
NEWCOD(KV) ;
 N I,A S A=""
 I $$^W4MM,$G(KV) D  Q A
 .N NEWCD
 .F I=1:1:9999 D  Q:$L(A)
 ..S NEWCD=$P(KV,"-")_"-"_$TR($J(I,4)," ",0)
 ..I '$D(@$$^W4GL("PAR")@(NEWCD)) D
 ...N OK S OK=1
 ...N K
 ...F K=1:1:9999 I $G(@$$^W4MAIN("TMPPAR")@(K))=NEWCD S OK=0 Q
 ...I OK S A=NEWCD
 ;
 N LCD S LCD=$O(@$$^W4GL("PAR")@(99999999),-1)
 N A S A=$$^W4CDSUPR(LCD+1)
 I $G(KV) D
 .N N S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 ..I $$SUG^W3P(N)=KV S LCD=N
 ;
 I LCD D
 .I '$D(@$$^W4GL("PAR")@($$^W4CDSUPR(LCD+1))) S A=$$^W4CDSUPR(LCD+1) Q
 .N J F J=1:1 Q:'$D(@$$^W4GL("PAR")@($$^W4CDSUPR(LCD+J)))
 .S A=$$^W4CDSUPR(LCD+J)
 ;
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 .S A=$$^W4CDSUPR(A)
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
 ;
 ;
UPLEND ;
 N UE,I S UE=0
 F I=1:1:30 S UE=$$GET^%W1PRM("UE") Q:UE  H 1
 Q
 ;
CRTMPPAR ;
 N N,I,K,KV
 S KV=$G(%ARG("CDKV"))
 S K=0
 N TMPPRT S TMPPRT=$$^W4MAIN("TMPPRT")
 ;
 K @TMPPRT
 M @TMPPRT=@$$^W4GL("PAR")
 ;
 K @$$^W4MAIN("TMPPAR")
 ;
 I $G(%ARG("SORT"))=2!$$SUPER^W3PRM D  G ENDPRT
 .N W4ABC S W4ABC("GL")="TMPPRT"
 .D ^W4ABCKVZ
 .S N="",I=0 F  S N=$O(@$$^W4MAIN("TMPABC")@(N)) Q:N=""  D
 ..N CD S CD=$G(^(N)) Q:CD=""
 ..D SETTMPPAR(CD)
 ;
 I '$G(%ARG("SORT"))!($D(@$$^W4GL("P1PARSID"))<9)!'KV D  Q
 .S N="",I=0 F  S N=$O(@TMPPRT@(N)) Q:N=""  D SETTMPPAR(N)
 ;
 D
 .N NP,MMM,K
 .S NP="",K=0 F  S NP=$O(@$$^W4GL("P1PARSID")@(KV,NP)) Q:NP=""  D
 ..S PAR=$G(^(NP)) Q:PAR=""
 ..D SETTMPPAR(PAR)
 ..S MMM(PAR)=""
 .S N="",I=0 F  S N=$O(@TMPPRT@(N)) Q:N=""  I '$D(MMM(N)) D SETTMPPAR(N)
 ;
ENDPRT K @TMPPRT
 Q
 ;
 ;
SETTMPPAR(PAR) ;
 N SUG S SUG=$$SUG^W4P(PAR)
 I KV,KV'=SUG,'$L($G(SRCH)) Q
 I KV="NO",SUG'?.P,SUG'="NO",SUG'="ALL" Q
 I $L($G(SRCH)),'$$SRCH(SRCH,PAR) Q
 S K=K+1
 S @$$^W4MAIN("TMPPAR")@(K)=PAR
 Q
 ;
BGIT(N,DFLT) ;
 Q $$BGIT^W4P(N,DFLT)
 ;
FGIT(N,DFLT) ;
 Q $$FGIT^W4P(N,$G(DFLT))
 ;
NOPIC(STAM) ;
 Q $G(%ARG("NOPICTURES"))
 ;
CSR(STAM) ;
 Q $G(%ARG("CSR"))
 ;
NOSHOWDESC(STAM) ;
 I $$CSR Q 1
 Q +$G(%ARG("NOSHOWDESC"))
 ;
ITEMNAME(PAR) ;
 N ST,SZNM,SZNM1 S SZNM=50 I $$1024^W4WDSCR S SZNM=30
 S ST="<table dir="""_$$^%W1DIR_""" align=""center"">"
 ;
 I $$PRTNET D  Q ST
 .S ST=ST_"<tr><td style=""font-weight:bold"">"_$$H2U^%L1FRM($$SHEM^W4P(PAR))_"</td></tr>"
 .
 .I $$SHEML^W4PRM!'$$NOPCLOAZ^W4PRM!$$HSBENG^W4PRM D
 ..S ST=ST_"<tr><td>"
 .. S ST=ST_$$^%W1DICT("ENGLISHNAME")
 ..S ST=ST_"</td></tr>"
 ..S ST=ST_"<tr><td>"
 .. S ST=ST_$$H2U^%L1FRM($$SHEML^W4P(PAR))
 ..S ST=ST_"</td></tr>"
 .S ST=ST_"</table>"
 ;
 S SZNM1=SZNM I $$^W4MYDVN=1 S SZNM1=SZNM-5
 S ST=ST_"<tr><td><input id=""name"_PAR_""" type=""text"" size="""_SZNM1_""" "
 S ST=ST_" maxlength="""_SZNM_""" "
 S ST=ST_" style=""font-weight:bold"" "
 S ST=ST_" value="""_$$H2U^%L1FRM($$SHEM^W4P(PAR))_""" "
 S ST=ST_" onChange=""OnChange('"_PAR_"')"" onKeyUp=""OnChange('"_PAR_"')"" />"
 I $$TELEPHONE^W4PRM,$G(@$$^W4GL("W4MSDPRT")@(PAR)) D
 .N MSDPRT S MSDPRT=^(PAR) Q:'MSDPRT
 .S ST=ST_"<br><span style=""color:red"">"_MSDPRT_" "_$$H2U^%L1FRM($$MSD^W3R(MSDPRT))_"</span>"
 S ST=ST_"</td></tr>"
 ;
 I $$SHEML^W4PRM!'$$NOPCLOAZ^W4PRM!$$HSBENG^W4PRM D
  .S ST=ST_"<tr><td >"
  . S ST=ST_$$^%W1DICT("ENGLISHNAME")
  .S ST=ST_"</td></tr>"
  .
  .S ST=ST_"<tr><td>"
  .S ST=ST_" <input id=""engname"_PAR_""" type=""text"" dir=""LTR"" "
  .S ST=ST_"  size="""_SZNM_""" maxlength="""_SZNM_""" "
  .S ST=ST_"  value="""_$$H2U^%L1FRM($$SHEML^W4P(PAR))_""" "
  .S ST=ST_"  onChange=""OnChange('"_PAR_"')"" "
  .S ST=ST_" onKeyUp=""OnChange('"_PAR_"')"" />"
  .S ST=ST_"</td></tr>"
 ;
 I '$$SUPER^W3PRM S ST=ST_"<tr><td>"_$$^W4PARLNK(PAR)_"</td></tr>"
 D
 .N SUG S SUG=$$SUG^W4P(PAR) Q:'SUG
 .N GL S GL=$$^W4GL("P1EZKI")
 .I $D(@GL@(SUG))>9 D
 ..S ST=ST_"<tr><td><button "_$$^W4TOUCH_"=""ClickGrAdd('"_SUG_"')"">"_$$^%W1DICT("ADDS2GROUP",SUG)_"</button></td></tr>"
 S ST=ST_"</table>"
 Q ST
 ;
 ;
DESC(N,WD) ;
 I $$DESCENG^W4PRM D  Q
 .W "<textarea id=""desc"_N_""" rows=""2"" cols="""_WD_""" "
 .W "style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""" "
 .W "onChange=""OnChange('"_N_"')"" onKeyUp=""OnChange('"_N_"')"" >"
 .W $$DESC^W4P(N,"H")_"</textarea>"
 .W "<br>"_$$^%W1DICT("ENGLISH")_"<br>"
 .W "<textarea id=""desceng"_N_""" rows=""2"" cols="""_WD_""" "
 .W "style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""" "
 .W "onChange=""OnChange('"_N_"')"" onKeyUp=""OnChange('"_N_"')"" >"
 .W $$DESC^W4P(N,"E")_"</textarea>"
 ;
 W "<textarea id=""desc"_N_""" rows=""3"" cols="""_WD_""" "
 W "style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""" "
 W "onChange=""OnChange('"_N_"')"" onKeyUp=""OnChange('"_N_"')"" >"
 W $$DESC^W4P(N,"A")_"</textarea>"
 Q
 ;
 ;
PRINTER(PAR) ;
 N PRINT S PRINT=$$PRINT^W4P(PAR)
 S:PRINT=""&'$D(@$$^W4GL("PAR")@(PAR)) PRINT="G"
 ;
 N ST S ST="<br>"_$$^%W1DICT("PRINTER")
 I PAR,PRINT="G" D
 .N PRINTG S PRINTG=$$PRINTG^W3PRMDP(PAR) Q:PRINTG=""
 .S ST=ST_" <span dir=""LTR"" style=""color:grey""> [ "_PRINTG_" ]</span>"
 S ST=ST_"<br><input type=""text"" size=""25"" dir=""LTR"" "
 S ST=ST_"id=""printer"_PAR_""" "
 S ST=ST_" onChange=""OnChange('"_PAR_"')"" "
 S ST=ST_" onMouseOver=""ShowPrinters(this,event)"" "
 S ST=ST_" onMouseOut=""ClosePrinters()"" "
 S ST=ST_"value="""_PRINT_""" />"
 Q ST
 ;
 ;
CHKCD(PRM) ;
 N CD S CD=$P(PRM,";")
 N CDFROM S CDFROM=$P(PRM,";",2)
 N D S D=$D(@$$^W4GL("PAR")@(CD))
 I D Q D
 ;
 I CD>$G(^[$$^W3MAIN]TMPLAST(JB)) S ^(JB)=CD
 ;
 I $G(CDFROM) D COPY(CDFROM,CD)
 ;
 Q 0
 ;
 ;
COPY(CDFROM,CD) ;
 I $G(CDFROM)=""!($G(CD)="") Q
 I '$D(@$$^W4GL("PAR")@(CDFROM)) Q
 I $D(@$$^W4GL("PAR")@(CD)) Q
 ;
 M @$$^W4GL("PAR")@(CD)=@$$^W4GL("PAR")@(CDFROM)
 ;
 D COPYLINK(CDFROM,CD)
 ;
 I $D(@$$^W4GL("L1TIP")@("MTK",CDFROM)) D
 .M @$$^W4GL("L1TIP")@("MTK",CD)=@$$^W4GL("L1TIP")@("MTK",CDFROM)
 ;
 S ^[$$^W3MAIN]TMPLAST(JB,"COPY",CD)=CDFROM
 Q
 ;
 ;
COPYLINK(CDFROM,CD) ;
 I $G(CDFROM)=""!($G(CD)="") Q
 ;
 I '$D(@$$^W4GL("P1EZA")@(CD)),$D(@$$^W4GL("P1EZA")@(CDFROM)) D
 .M @$$^W4GL("P1EZA")@(CD)=@$$^W4GL("P1EZA")@(CDFROM)
 ;
 I '$D(@$$^W4GL("P1EZT")@(CD)),$D(@$$^W4GL("P1EZT")@(CDFROM)) D
 .M @$$^W4GL("P1EZT")@(CD)=@$$^W4GL("P1EZT")@(CDFROM)
 I '$D(@$$^W4GL("P1EZR")@(CD)),$D(@$$^W4GL("P1EZR")@(CDFROM)) D
 .M @$$^W4GL("P1EZR")@(CD)=@$$^W4GL("P1EZR")@(CDFROM)
 ;
 I '$D(@$$^W4GL("P1EZI")@(CD)),$D(@$$^W4GL("P1EZI")@(CDFROM)) D
 .M @$$^W4GL("P1EZI")@(CD)=@$$^W4GL("P1EZI")@(CDFROM)
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZI")@(CD,N)) Q:N=""  D
 ..S @$$^W4GL("P1EZ")@(N,CD)=$G(@$$^W4GL("P1EZ")@(N,CDFROM))
 ;
 I '$D(@$$^W4GL("P1EZ")@(CD)),$D(@$$^W4GL("P1EZ")@(CDFROM)) D
 .M @$$^W4GL("P1EZ")@(CD)=@$$^W4GL("P1EZ")@(CDFROM)
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZ")@(CD,N)) Q:N=""  D
 ..S @$$^W4GL("P1EZI")@(N,CD)=$G(@$$^W4GL("P1EZI")@(N,CDFROM))
 ;
 I '$D(@$$^W4GL("P1EZH")@(CD)),$D(@$$^W4GL("P1EZH")@(CDFROM)) D
 .M @$$^W4GL("P1EZH")@(CD)=@$$^W4GL("P1EZH")@(CDFROM)
 ;
 Q
 ;
 ;
KILLCOPY ;
 N CD S CD="" F  S CD=$O(^[$$^W3MAIN]TMPLAST(JB,"COPY",CD)) Q:CD=""  D
 .D ^W3DEL(CD)
 ;
 K ^[$$^W3MAIN]TMPLAST(JB,"COPY")
 Q
 ;
SHOW(N) ;
 Q $$^W4PRTVW(N)
 ;
SVGRMDP(PRM) ;
 N GRMDP,KV
 S KV=$P(PRM,";")
 S GRMDP=$P(PRM,";",2,10)
 I KV D PUTGRMDP^W3PRMDP(KV,GRMDP)
 Q 1
 ;
SHOWPRT(STAM) ;
 I $G(%ARG("SHOWPRT"))="" Q 2
 Q $G(%ARG("SHOWPRT"))
 ;
EZM(N)  ;
 N EZM S EZM=$$GLEZM^W4EZM
 I '$D(@EZM@("K"_N)),'$$ONEGLPAR^W3PRM D  Q
 .W "<br>"
 .W "<span style=""color:blue;font-size:"_$$^W3FSZ(9)_""">"
 .W $$^%W1DICT("TREE11")_"</span>&nbsp;"
 .W "<input type=""checkbox"" id=""ezm"_N_""" "
 .W " onChange=""OnChange('"_N_"')"" onClick=""Tree11('"_N_"')"" />"
 .W "<br>",!
 .W "<div id=""divtree"_N_""">"
 .D ^W4BUTTON("newtree"_N,$$^%W1DICT("CREATEITTREE"),"CreateTree('"_N_"')","color:blue")
 .W "</div>",!
 ;
 W "<div id=""divtree"_N_""" >"
  W "<br>&nbsp;",!
  D ^W4BUTTON("showtree"_N,$$^%W1DICT($S($$ONEGLPAR^W3PRM:"SHOWITEMCARD",1:"SHOWITTREE")),"ShowTree('"_N_"')","color:blue")
 W "</div>",!
 Q  
 ;
SIDPRT ; 
 D ^W4BUTTON("sidprt",$$^%W1DICT("CHANGEITEMSORDER"),"OpenItemsOrderTable('"_$G(%ARG("CDKV"))_"')","background-color:#eaeaea")
 Q
 ;
SHOWORD ; 
 W $$^%W1DICT("ORDERNUMBER")_" " 
 W "<input type=""text"" id=""ord"" size=""6"" /> "
 W "<input type=""button"" value="""_$$^%W1DICT("SHOW")_""" onClick=""ShowOrd()""/>"
 Q
 ;
PRTNET(STAM) ; 
 I $$PRTNET^W4PRM Q 1
 Q 0 
 ;
 ;
CREX ; 
 N K,I,N,SUG,SUG1
 N TMPEX S TMPEX=$$^W4MAIN("TMPPAREX") K @TMPEX
 ;
 S K="",I=0 F  S K=$O(@$$^W4MAIN("TMPPAR")@(K)) Q:K=""  D
 .S N=$G(^(K)) Q:N=""
 .I $$SHOWPRT=2,'$$SHOW(N) Q
 .I $$SHOWPRT=3,$$SHOW(N) Q
 .S SUG=+$$SUG^W4P(N)
 .S SUG1=$$SUG1^W4P(N)
 .S I=I+1
 .S @TMPEX@(SUG,N)=SUG_"*"_$$RKV(SUG1)_"*"_N_"*"_$$RKV($$SHEM^W4P(N))_"*"_$$MH^W4P(N)_"*"_$$MSK^W4P(N)
 ;
 N TMPOUT S TMPOUT=$$^%W1GLPRM K @TMPOUT
 N A,A1 S A="liwy*xign*hixt my*hixt cew*dveaw my*dveaw 'qn",A1=""
 N J F J=$L(A,"*"):-1:1 S A1=A1_$P(A,"*",J)_"*"
 S @TMPOUT@("GLOUT",1)=$E(A1,1,$L(A1)-1)
 ;
 S I=1
 S SUG="" F  S SUG=$O(@TMPEX@(SUG)) Q:SUG=""  D
 .S N="" F  S N=$O(@TMPEX@(SUG,N)) Q:N=""  D
 ..S I=I+1
 ..S @TMPOUT@("GLOUT",I)=$G(@TMPEX@(SUG,N))
 ;
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 D DIVEXC^%W1PC1("W3PRT","%W1PCEX")
 Q
 ;
RKV(VL) ; 
 S VL=$TR(VL,","," ") 
 Q VL 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRTPC
W3PRTPC ; [ 02.12.21 10:37 ] [ 10.08.21 12:02 ] [ 01.04.21 08:19 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 S MSD=%ARG("MSD")
 D PUT^%W1PRM("MSD",MSD)
 I $$ENG S %W1LNG="E"
 ;
 S W3PRTPC=""
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 ;
 S KVZ=$$^W4PARCAT
 ;
 S LCOD=5
 D ^W3SIDKVZ
 I $$CSR D ^W4MDPPC
 ;
 S RSIZE=10,PG=0,I=0
 I $$SF(MSD) S RSIZE=7
 D TMPTF
 ;
 I '$$SF(MSD),$G(%ARG("CDKV"))="" S %ARG("CDKV")=$O(@TMPTF@(1,""))
 I $$SF(MSD),$G(%ARG("CDKV"))="" S %ARG("CDKV")="MGS"
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$SNDMAIL G BODY
 ;
 D ^W3PRTPCX
 ;
 W "<div id=""divbut"" "_$$INV^%W1ALIGN_" >"
 W "<br />" D VOSC
 W "<table dir="""_$$^%W1DIR_""" width=""98%"" border=""0"" cellspacing=""0"">" D VOSC
  W "<tr>"
   W "<td width=""12%"">",!
    D EXCEL
   W "</td>",!
   W "<td width=""20%"" "_$$^%W1ALIGN_"  >"
   W " <b>" W $$^%W1DICT("GROUP") W "</b>&nbsp;" D VOSC
    N GRSEL S:$L($G(%ARG("CDKV"))) GRSEL=%ARG("CDKV") D GROUP
   W "</td>" D VOSC
   ;
   W "<td width=""12%"""_$$^%W1ALIGN_" >"
    W $$^%W1DICT("DLVONLY")
    W "<input type=""checkbox"" id=""dlv"" "_$S($G(%ARG("DLV")):" checked=""checked""",1:"")_" onClick=""ShowPrt()"" >"
   W "</td>" D VOSC
   ;
   W "<td width=""12%"""_$$^%W1ALIGN_" >"
    W $$^%W1DICT("OPENVIEW")
    W "<input type=""checkbox"" id=""add"" "_$S($G(%ARG("ADD")):" checked=""checked""",1:"")_" onClick=""ShowPrt()"" >"
   W "</td>" D VOSC
   ;
   I $$SHEML^W4PRM!'$$NOPCLOAZ^W4PRM!$$HSBENG^W4PRM D
   .W "<td>"
   .  W $$^%W1DICT("HEBREW")_" "
   .  W "<input type=""radio"" name=""lng"" "_$S('$G(%ARG("ENG")):" checked=""checked"" ",1:"")_" onClick=""Lng('0')"" />"
   .W "</td>"
   .W "<td>"
   .  W $$^%W1DICT("ENGLISH")_" "
   .  W "<input type=""radio"" name=""lng"" "_$S($G(%ARG("ENG")):" checked=""checked"" ",1:"")_" onClick=""Lng('1')"" />"
   .W "</td>"
   ;
   W "<td>"
    D ^W4BUTTON("Print","PRINT","Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   I $$^W4ELPOS D
   .W " <td>"
   . D ^W4BUTTON("CSRPrint","CSRPRINT","CSRPrint()","color:green",",,,180")
   .W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ^W4BUTTON("Back","BACK","Back()","color:red",",,,100")
   W " </td>"
  W "</tr>" D VOSC
 W "</table>",!
 W "</div>" D VOSC
 W "<br />" D VOSC
 ;
BODY ;
 I $$SF(MSD),'$$ENG D
 .W "<div align=""center"">",!
 .W " <img src="""_$$WEB^W3MAIN_"w3sfprt.png"" height=""200"" width=""500"" style=""border:darkred solid 2px"" >" D VOSC
 .W "</div>",!
 ;
 S MAGASHIM=0
 ;
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .;W 1
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .;W 2
 .I KV,'$$^W4VWGR(KV) Q
 .;W 3
 .N NMKV S NMKV=$$SUGP(KV)
 .I $$PODZAG(NMKV),$$SF(MSD) S MAGASHIM=1 Q
 .I $G(%ARG("CDKV")),KV'=$G(%ARG("CDKV")) Q
 .I $G(%ARG("CDKV"))="MGS",'MAGASHIM Q
 .I $G(%ARG("CDKV"))="MSL",MAGASHIM Q
 .;W 4
 .I I>0,'$$CSR D CLOSETBL
 .I I>3,'$$CSR D PGBREAK
 .D KOT(KV)
 .D PARSID(KV)
 .S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..N PRT S PRT=$G(^(PRTNP))
 ..;W 5
 ..I $G(@$$^W4GL("PAR")@(PRT))=0 Q
 ..I $G(%ARG("DLV")),$$NOSHOW^W3TRM(PRT) Q
 ..;W 6
 ..S I=I+1 I I>RSIZE,'$$CSR D PEREH
 ..D STR(PRT)
 ..D
 ...I $$ADD D STRADD(PRT)
 ...W "<tr><td colspan=""4""><hr></td></tr>" D VOSC
 ;
 W "</table>",!
 I $$CSR D ^W4CUT(PRINT,$G(%MDP("CUT")))
 ;
 W "</div>",!
 K @$$^W4MAIN("TMPTF")
 Q
 ;
 ;
STR(PRT) ;
 I $$CSR D
 .N TXT
 .S TXT=$J($$MH^W4P(PRT),7,2)_" "_$$HBR^%L1FRM($$NAME(PRT,0),20)_" "_$J(PRT,8)
 .D S1^W4PCST
 ;
 W "<tr style=""font-size:"_$$^W3FSZ(14)_""">"
 W " <td id=""cd"_PRT_""">&nbsp;"_PRT_"&nbsp;</td>"
 W " <td align=""center"">"_$$NAME(PRT,1)_"<br />"
  W " <span class=""desc"" style=""color:grey;font-size:"_$$^W3FSZ(11)_";font-weight:100"">"_$$DESC(PRT)_"</span>"
 W "</td>"
 W " <td align=""center"">"_$J($$MH^W4P(PRT),2,2)_"</td>"
 ;
 I '$$NOPIC D
 .W " <td align=""center""><img src="""_$$PIC^W4P(PRT)_""""
 . W "  style=""width:90px;height:60px;border:solid 2px white"" />"
 .W " </td>" D VOSC
 ;
 I $$NEWMLY^W3PRM D
 .N FC S FC=$$FOODCOST^W4EZMIDK($$^W4PK(PRT,1))
 .I 'FC S FC="&nbsp;"
 .W " <td align=""center"">"_FC_"</td>"
 W "</tr>" D VOSC
 Q
 ;
 ;
PEREH ;
 D CLOSETBL
 D PGBREAK
 D KOT(KV,1)
 S RSIZE=10
 Q
 ;
CLOSETBL ;
 W "</table>",!
 Q
 ;
KOT(KV,PRH) ;
 I $$CSR D  Q
 .S TXT="" D S1^W4PCST
 .S TXT=$G(%MDP("B"))_$$SUGP(KV)_$G(%MDP("N"))
 .D S1^W4PCST
 .S TXT="" D S1^W4PCST
 ;
 W "<br>" S PG=PG+1,I=1
 W "<table width=""94%"" dir="""_$$^%W1DIR_""">" D VOSC
  W "<tr>" D VOSC
   W "<td "
    W " style=""text-align:center;width:90%;color:darkred;font-size:"_$$^W3FSZ(18)
    W """>"
     W $$SUGP(KV)
     I $G(PRH) D
      .W "&nbsp;&nbsp;"
      .W "<span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"
      . W " ( "_$$^%W1DICT("CONTINUE")_" ) "
      .W "</span>" D VOSC
    W "</td>" D VOSC
    W "<td>"
     W $$^%W1DICT("PAGE")_" "_PG
    W "</td>"
  W "</tr>" D VOSC
 W "</table>",!
 ;
 S BORD=0 ;1
 I $$SNDMAIL S BORD=0
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border="""_BORD_""" cellspacing=""0"" width=""90%"">" D VOSC
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:white;font-size:"_$$^W3FSZ(12)_";font-weight:bold"
 W """ >"
  S WDNM=78
  I '$$NOPIC S WDNM=WDNM-14
  I $$NEWMLY^W3PRM S WDNM=WDNM-12
  ;
  W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th width="""_WDNM_"%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("PRICE")_"</th>"
  I '$$NOPIC D
  .W "<th width=""14%"">"_$$^%W1DICT("PICTURE")_"</th>"
  I $$NEWMLY^W3PRM D
  .W "<th width=""12%"">"_$$^%W1DICT("FOODCOST")_"</th>"
 W "</tr>" D VOSC
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">" D VOSC
 Q
 ;
PARSID(N) ;
 N NP,PRT,MMM,I1,N2
 S I1=0  D TMPTF K @TMPTF@(2)
 ;
 I $D(@$$^W4GL("P1PARSID")@(N))>9 D
 .S NP="" F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 Q
 ;
CTF2 S I1=I1+1
 S @TMPTF@(2,I1)=N2
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
SF(MSD) I MSD=1!(MSD=99999),'$$GETP^%W1PRM("ELPOS"),'$$GETP^%W1PRM("W4BO") Q 1
 Q 0
 ;
GROUP ;
 N II S II=0
 W "<select "
  W " id=""arrgrid"" onChange=""ShowPrt()"""
 W " >"
 W "<option value=""-1"">"_$$^%W1DICT("CHOICEOPTION")_"</option>"
 ;
 I '$$^W4MUCHIT D
 .W $$OPTION("ALL",$G(GRSEL))_$$^%W1DICT("ALLGROUPS")_"</option>"
 ;
 I $$SF(MSD) D
 .W $$OPTION("MGS",$G(GRSEL))_$$^%W1DICT("MAGASHIM")_"</option>"
 .W $$OPTION("MSL",$G(GRSEL))_$$^%W1DICT("DELIVERY")_"</option>"
 ;
 N KVNP
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .I $G(@$$^W4GL("PARSUG")@(KV))="" Q
 .I KV,'$$^W4VWGR(KV) Q
 .S II=II+1
 .W "<option value="""_KV_""""
 .I $G(GRSEL),KV=GRSEL W " selected=""selected"""
 .W " >"_$$SUGP(KV)_"</option>"
 W "</select>"
 Q
 ;
PODZAG(NMKV)
 Q $$PODZAG^W3HZTFR(NMKV)
 ;
OPTION(VL,KV) ;
 Q "<option value="""_VL_""" "_$S(VL=KV&$L(KV):"selected=""selected""",1:"")_" >"
 ;
ADD(STAM) ;
 Q $G(%ARG("ADD"))
 ;
STRADD(PRT) ;
 N UR S UR=3
 D CRTMP^W3HZTSF(PRT,$$^W3TMPTF) ; ---> TMPTF(3)
 ;
 N N,A
 S N="" F  S N=$O(@$$^W4MAIN("TMPTF")@(3,N)) Q:N=""  D
 .S A=$G(^(N))
 .I $P(A,"~")["-C" Q
 .S I=I+.33 I I>RSIZE,'$$CSR D PEREH
 .
 .I $E(A)="A" D  Q
 ..W "<tr style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;color:brown"">"
 .. W "<td>&nbsp;</td>" D VOSC
 .. N TXT S TXT=$$SPA^%L1FRM($P(A,"~",2)) ; -- TXT - SET NAME
 .. I '$$ENG S TXT=$$H2U^%L1FRM(TXT)
 .. I $$ENG S TXT=$$HL(TXT)
 .. W "<td>"_TXT_"</td>" D VOSC
 .. W "<td>&nbsp;</td>" D VOSC
 ..W "</tr>" D VOSC
 .
 .I $E(A)'="A" D  Q
 ..W "<tr style=""font-size:"_$$^W3FSZ(11)_";color:green"">"
 ..W " <td>&nbsp;"_$P(A,"~")_"&nbsp;</td>"
 ..N TXT S TXT=$$SPA^%L1FRM($P(A,"~",2)) ; -- ITEMNAME
 ..I '$$ENG S TXT=$$H2U^%L1FRM(TXT)
 ..I $$ENG S TXT=$$HL(TXT)
 ..W " <td align=""center"">"_TXT_"</td>"
 ..W " <td align=""center"">"_$J($P(A,"~",3),2,2)_"</td>" D VOSC
 ..W "</tr>" D VOSC
 Q
 ;
VOSC ;
 I '$$SNDMAIL W !
 Q
 ;
SNDMAIL(STAM) ;
 I $G(%ARG("SNDMAIL")) Q 1
 Q 0
 ;
NOPIC(STAM) ;
 I $G(%ARG("NOPICTURES")) Q 1
 Q 0
 ;
NAME(PRT,PR)
 I $$ENG Q $$NAMENG(PRT)
 I $G(PR) Q $$H2U^%L1FRM($$SHEM^W4P(PRT))
 Q $$SHEM^W4P(PRT)
 ;
NAMENG(PRT) ;
 N NM
 S NM=$$SHEML^W4P(PRT)
 I $E(NM)="=" N %W1LNG S NM=$$H2U^%L1FRM($E(NM,2,20)) Q NM
 S NM=$$HL(NM)
 Q NM
 ;
SUGP(KV) ;
 N KV1
 I $$ENG D  Q KV1
 .S KV1=$G(@$$^W4GL("PARSUG")@(KV,"ENG"))
 .I KV1="" N %W1LNG S KV1=$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV))) Q
 .S KV1=$$HL(KV1)
 ;
 I $$CSR Q $$HBR^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)),19)
 Q $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)))
 ;
 ;
DESC(PRT) ;
 I $$ENG Q $$HL($$DESC^W4P(PRT,"E"))
 Q $$H2U^%L1FRM($$DESC^W4P(PRT))
 ;
ENG(STAM) ;
 Q $$ENG^W4P
 ;
HL(NM) ;
 I $G(NM)="" Q " "
 S NM=$$SPA^%L1FRM(NM)
 S NM=$$FUNC^%UCASE($E(NM))_$$FUNC^%LCASE($E(NM,2,300))
 Q NM
 ;
CSR(STAM) ;
 Q $G(%ARG("CSRPRINT"))
 ;
MSDPAR(CD) ; 
 N (JB,%ARG,%REM,CD)
 I '$$NOMSD^W4THUM(CD) Q 1
 S SUG=$$SUG^W4P(CD)
 I $G(@$$^W4GL("W3SUG")@(SUG))=2 Q 1
 Q 0 
 ;
EXCEL ; 
 S FL="W4PAR"_$$^W4MYDVN
 S FLCSV=$$DIRWEB^%W1PCEX_FL_".csv"
 W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PRTPCX
W3PRTPCX ; [ 08.07.26 13:24 ] [ 23.03.26 19:18 ] [ 12.11.24 18:33 ] 
 N (JB,%ARG,%REM,%REPN,FMT,TOT,%W1LNG,MSD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S:'$D(FMT) FMT=0
 D ^%L1TS
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_"W4PAR"_$$^W4MYDVN
 S FLCSV=FL_".csv"
 N A,B,I,J,RZD
 S RZD=","
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 ;;W "FLCSV="_FLCSV,!
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 U FLCSV
 S ENG=$$ENG^W4P
 I 'ENG W $$RKV("dveaw cew")_$$RKV("dveaw my")_$$RKV("hixt cew")_$$RKV("hixt my")_$$RKV("xign")_$$RKV("liwy"),! ;$$RKV("akxd"),!
 I ENG W $$RKV("GROUP CODE")_$$RKV("GROUP NAME")_$$RKV("ITEM CODE")_$$RKV("ITEM NAME")_$$RKV("PRICE")_$$RKV("WEIGHT"),! ;;$$RKV("CONTENT"),!
 ;
 D CRSUG^W3HZTFR
 ;
 S LCOD=8,KVZ=$$^W4PARCAT
 D ^W3SIDKVZ
 S TMPTF=$$^W4MAIN("TMPTF")
 ;
 S N0="" F  S N0=$O(@TMPTF@(1,N0)) Q:N0=""  D
 .N KV S KV=$G(@TMPTF@(1,N0,"KV"))
 .I $G(%ARG("CDKV")),+KV'=+%ARG("CDKV") Q
 .D PARSID^W3PRTPC(KV)
 .S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..S N=$G(^(PRTNP)) Q:N=""
 ..I $G(%ARG("DLV")),$$NOSHOW^W3TRM(N) Q
 ..W $$RKV($$SUG^W4P(N))_$$RKV($$SUGP(N))_$$RKV(N)_$$RKV($$NAME(N))_$$RKV($J($$MH^W4P(N),2,2))_$$RKV($$MSK^W4P(N)),! ;;$$RKV($$DESC^W4P(N,1,1)),!
 ..Q:'$G(%ARG("ADD"))
 ..N UR S UR=3
 ..D CRTMP^W3HZTSF(N,$$^W3TMPTF) ; ---> TMPTF(3)
 ..N N1 S N1="" F  S N1=$O(@$$^W4MAIN("TMPTF")@(3,N1)) Q:N1=""  D
 ...N A S A=$G(^(N1))
 ...N CDT S CDT=$P(A,"~") Q:'CDT
 ...S NMT=$$NAME(CDT) 
 ...W ",,"_$$RKV(CDT)_$$RKV(NMT)_$$RKV($J($P(A,"~",3),2,2)),!
 ;
 C FLCSV
 ;
 Q
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
RKV(VL)
 S VL=$$SPA^%L1FRM(VL)
 I $$ISNUM(VL) G RKVE
 I VL?2N1"."2N1"."2N!(VL?2N1"."2N1"."4N) S VL=$TR(VL,".","/") G RKVE
 I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N G RKVE
 S VL=$TR(VL,","," ")
 S VL=$$^%W1D2U(VL)
RKVE ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_","
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
SUGP(PRT) ;
 N KV S KV=$$SUG^W4P(PRT)
 I ENG Q $$SUGP^W3PRTPC(KV)
 Q $$SUG1^W4P(N)
 ;
NAME(PRT) ;
 Q $$NAME^W3PRTPC(PRT,0)
 ;
ISNUM(%VL) ; 
 S %VL=$$SPA^%L1FRM(%VL)
 I %VL?."-"1N.N.".".N Q 1
 I %VL?."-."1N.N Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PTSIDK
W3PTSIDK ; [ 09.03.26 09:30 ] [ 31.12.25 15:39 ] [ 24.12.24 16:30 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3PTSIDK","%ARG=[%ARG")
 ;
 S MAIN=$$MAIN
 ;
 I $D(%ARG("CDMV2AD")) D MVPR2AD(%ARG("CDMV2AD"))
 I $D(%ARG("CDMV2PR")) D MVAD2PR(%ARG("CDMV2PR"))
 I $G(%ARG("SAVE")) D SAVE(%ARG("SAVE"))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D KOT
 ;
 W $$^W4DVTBFX($S($$1024^W4WDSCR:65,1:80)_"%"),!
 W "<table id=""TblPts"" dir="""_$$^%W1DIR_""" border=""1"" "
  W "cellspacing=""0"" width=""100%"" "
  W "style=""background-color:white;color:black"" "
  W " onmousedown='return false'",!
  W " onclick='return true'",!
 W " >",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th width=""12%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("NORMALPRICE")_"</th>"
  I '$$EZD D
  .W "<th width=""12%"">"_$$^%W1DICT("ADDITIONPRICE")_"</th>"
  .I '$$GRADD W "<th width=""12%"">"_$$^%W1DICT("QNDEF")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 N N,I
 D GL
 ;
 I '$$GRADD,'$$EZD,$G(%ARG("COPYFROM")) D ADD2TMP(%ARG("COPYFROM"),MAIN) G VW
 I $G(%ARG("NEW")) D ADD2TMP(MAIN) Q:$G(%ARG("NOSHOW"))
 ;
 I $G(%ARG("SWAP")) D
 .S PRM=$P(%ARG("SWAP"),";",1,2)
 .S DRC=$P(%ARG("SWAP"),";",3)
 .D SWAP(PRM,DRC) ;
 ;
VW ;
 D SHOWCONT(MAIN)
 ;
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
SHOWCONT(MAIN) ;
 I $G(MAIN)="" Q
 N NP S NP="",I=0 F  S NP=$O(@GL@(MAIN,NP)) Q:NP=""  D
 .N N S N=$P($G(^(NP)),";") Q:N=""
 .W "<tr id=""trpts"_N_""""
 .I $D(@GL@(MAIN,NP,"CUR")) W " style=""background-color:#eaeaea"""
 .I '$D(@GL@(MAIN,NP,"CUR")),$$SHOW^W4PRTVW(N)=0 W " style=""background-color:pink"""
 .W " >" S I=I+1
 .
 .W "<td id=""cd"_N_""" "
 . W " onmousedown=""MouseDown(this,'"_I_"',event)"" "
 . W " onmouseover=""this.style.cursor='pointer';this.style.backgroundcolor='yellow'"" "
 . W " onmouseout=""this.style.backgroundColor='white'"" "
 .W ">&nbsp;"_N_"&nbsp;"
 .W "</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_" </td>"
 .I '$$EZD D
 ..W "<td align=""center"">"
 .. W "<input type=""text"" size=""6"" maxlength=""7"" "
 .. ;;S MHT=$P($G(@GL@(MAIN,NP)),";",2)
 .. S MHT=$$MHT(MAIN,N)
 .. I MHT="" S MHT=$$MH^W4P(N)
 .. W " id=""mht"_N_""" onKeyUp=""OnChangePrc(this,'"_MAIN_"','"_NP_"','"_N_"')"" "
 .. W " value="""_$J(MHT,2,2)_""" "
 .. W " onClick=""this.select()"" "
 .. W " />"
 ..W "</td>",!
 ..
 ..I '$$GRADD D
 ...W "<td align=""center"">"
 ... W "<input type=""text"" size=""3"" maxlength=""3"" "
 ... N QNDEF S QNDEF=$G(@$$^W4GL("QNDEF")@(MAIN,N))
 ... W " id=""qn"_N_""" onKeyUp=""OnChangeQn(this,'"_MAIN_"','"_NP_"','"_N_"')"" "
 ... W " value="""_QNDEF_""" "
 ... W " onClick=""this.select()"" "
 ... W " />"
 ...W "</td>",!
 .
 .N ID,PROC
 .S ID="chpts"_N
 .S PROC="OnClickTbl('"_N_"','TblPts','trpts','chpts')"
 .D ^W4TDCHBX(ID,PROC)
 .W "</tr>",!
 Q
 ;
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
MAIN(STAM) ;
 N MAIN
 I $G(%ARG("MAIN"))'="" Q %ARG("MAIN")
 S MAIN=$$GETP^%W1PRM("MAIN")
 I MAIN Q MAIN
 S MAIN=$O(@$$^W4GL($$GLOBNAME)@(""))
 D PUT^%W1PRM("MAIN",MAIN)
 Q MAIN
 ;
CHNPRC(PRM) ;
 N GL D GL
 N CDMAIN,NP,CDT,MHT,QNDEF
 S MHT=$P(PRM,";")
 S CDMAIN=$P(PRM,";",2)
 S NP=$P(PRM,";",3)
 S CDT=$P(PRM,";",4)
 S QNDEF=$P(PRM,";",5)
 I $L(CDMAIN),NP,CDT D
 .S $P(@GL@(CDMAIN,NP),";")=CDT
 .S $P(@GL@(CDMAIN,NP),";",2)=MHT
 Q 1
 ;
CHNQN(PRM) ;
 N GL D GL
 N CDMAIN,NP,CDT,MHT,QNDEF
 S QNDEF=$P(PRM,";")
 S CDMAIN=$P(PRM,";",2)
 S NP=$P(PRM,";",3)
 S CDT=$P(PRM,";",4)
 I $L(CDMAIN),NP,CDT D
 .S $P(@GL@(CDMAIN,NP),";")=CDT
 .S $P(@GL@(CDMAIN,NP),";",3)=QNDEF
 Q 1
 ;
SAVE(OLDMAIN) ;
 N (JB,%ARG,OLDMAIN)
 S MUSTADD=1
 S IMBLI=0
 S ADDSFREE=0
 S MAXADD=1
 ;
 ;;S ^AA("W3PTSIDK","OLDMAIN")=OLDMAIN
 ;;S ^AA("W3PTSIDK","GLOLDMAIN")=$G(@$$^W4GL($$GLOBNAME)@(OLDMAIN))
 ;
 I OLDMAIN[";" D
 .S MAXADD=$P(OLDMAIN,";",2)
 .S MUSTADD=$P(OLDMAIN,";",3)
 .S IMBLI=$P(OLDMAIN,";",4)
 .S ADDSFREE=$P(OLDMAIN,";",5)
 .S OLDMAIN=$P(OLDMAIN,";",1)
 ;
 ;;S ^AA("W3PTSIDK","MAXADD")=MAXADD
 ;
 D PUT^%W3DEB("W3PTSIDK-SAVE","OLDMAIN=OLDMAIN")
 Q:$G(OLDMAIN)=""
 ;
 D GL
 N A S A=$G(@$$^W4GL($$GLOBNAME)@(OLDMAIN))
 ;
 D DELMAIN(OLDMAIN) 
 ;
 N NP,CD,MHT
 S NP="" F  S NP=$O(@GL@(OLDMAIN,NP)) Q:NP=""  D
 .N A S A=$G(^(NP))
 .S CD=$P(A,";") Q:CD=""
 .S MHT=$P(A,";",2)
 .S QNDEF=$P(A,";",3)
 .
 .I $$EZD D  Q
 ..S @$$^W4GL($$GLOBNAME)@(OLDMAIN,CD)=""
 ..S @$$^W4GL($$GLOBNAMEI)@(CD)=OLDMAIN
 .
 .S @$$^W4GL($$GLOBNAME)@(OLDMAIN,CD)=NP
 .S @$$^W4GL($$GLOBNAMEI)@(CD,OLDMAIN)=$J(MHT,2,2)
 .I $$GRADD S @$$^W4GL("MHTG")@(OLDMAIN,CD)=$J(MHT,2,2)
 .I '$$GRADD D
 ..S @$$^W4GL("MHT")@(OLDMAIN,CD)=$J(MHT,2,2)
 ..S @$$^W4GL("QNDEF")@(OLDMAIN,CD)=QNDEF
 ;
 I $$EZD G ESAVE
 ;
 ;;S @$$^W4GL($$GLOBNAME)@(OLDMAIN)=$S($D(@GL@(OLDMAIN))#2:@GL@(OLDMAIN),1:A)
 ;
 S $P(@$$^W4GL($$GLOBNAME)@(OLDMAIN),"\")=MAXADD
 S $P(@$$^W4GL($$GLOBNAME)@(OLDMAIN),"\",2)=$S(MUSTADD=0:"-",1:"")
 S $P(@$$^W4GL($$GLOBNAME)@(OLDMAIN),"\",3)=IMBLI
 S $P(@$$^W4GL($$GLOBNAME)@(OLDMAIN),"\",4)=ADDSFREE
 ;
ESAVE S ^[$$^W3MAIN]TMPSV($$^%W1JB)=1
 Q
 ;
 ;
DEL(OLDMAIN) ;
 D PUT^%W3DEB("W3PTSIDK-DEL","OLDMAIN=OLDMAIN")
 Q:$G(OLDMAIN)=""
 D DELMAIN(OLDMAIN)
 D GL K @GL
 Q
 ;
DELMAIN(OLDMAIN) ;
 I $G(OLDMAIN)="" Q
 K @$$^W4GL($$GLOBNAME)@(OLDMAIN)
 I '$$EZD,'$$GRADD K @$$^W4GL("QNDEF")@(OLDMAIN)
 ;
 D
 .N N S N=""
 .I $$EZD D  Q
 ..F  S N=$O(@$$^W4GL($$GLOBNAMEI)@(N)) Q:N=""  I $G(^(N))=OLDMAIN K ^(N)
 .F  S N=$O(@$$^W4GL($$GLOBNAMEI)@(N)) Q:N=""  K ^(N,OLDMAIN)
 Q
 ;
 ;
MVPR2AD(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W3PTSIDK-MVPR2AD","PRM=PRM")
 N MAIN S MAIN=$P(PRM,";") Q:MAIN=""
 N I,CD F I=2:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@$$^W4GL("PAR")@(CD))
 .N LI S LI=$O(@GL@(MAIN,""),-1)+1
 .S @GL@(MAIN,LI)=CD_";"_$J($$MH^W4P(CD),2,2),OK=1
 Q
 ;
MVAD2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W3PTSIDK-MVAD2PR","PRM=PRM")
 N MAIN S MAIN=$P(PRM,";") Q:MAIN=""
 N I,CD F I=2:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@$$^W4GL("PAR")@(CD))
 .N N S N="" F  S N=$O(@GL@(MAIN,N)) Q:N=""  I $P($G(^(N)),";")=CD K ^(N)
 .S OK=1
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPADD(JB)"
 Q
 ;
GROUP ;
 W "<select "
 ;
 I FIRSTGR="PTS" D
 .W " id=""grpts"""
 .W " onChange=""NewView("_JB_")"""
 .W " >",!
 .I $$^W4MUCHIT Q
 .W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .D PUT^%W1PRM("CDKV","ALL")
 ;
 I FIRSTGR="PRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt("_JB_",'')"""
 .W " >",!
 .I $$^W4MUCHIT Q
 .W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 ;
 D ^W4ABCKVZ
 N N,NN,II S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .S II=II+1
 .W "<option value="""_NN_""""
 .;;I $G(%ARG("KV"))="",FIRSTGR="PRT",NN=$$^W3FRSTGR W " selected=""selected"""
 .I NN=$$^W3FRSTGR W " selected=""selected"""
 .W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
OPT ;
 W "<option value="""_NN_""""
 I NN=$$^W3FRSTGR W " selected=""selected"""
 W " >"_$$^W3SHOWKV(NN)_"</option>",!
 Q
 ;
GETOPT ;
 I '$$GRADD D
 .N CDKV S CDKV=$S($G(%ARG("CDKV")):%ARG("CDKV"),1:$$GET^%W1PRM("CDKV")) Q:CDKV=""
 .D GETLIST(JB_";"_CDKV)
 ;
 I $$GRADD D GETLIST(JB)
 Q
 ;
 ;
GETLIST(PRM) ;
 D PUT^%W3DEB("W3PTSIDK-GETLIST","PRM=PRM")
 N I,A S I=0,A=""
 N MAIN S MAIN=$G(%ARG("MAIN"))
 N MAINCHN S MAINCHN=$$GET^%W1PRM("MAINCHN")
 I MAINCHN S MAIN="" D PUT^%W1PRM("MAINCHN",0)
 N JB,CDKV S JB=$P(PRM,";"),CDKV=$P(PRM,";",2)
 I MAIN,'$$GRADD S CDKV=$$SUG^W4P(MAIN)
 I JB="" Q
 ;
 N GLB S GLB=$$^W4GL($$GLOBORIG)
 ;
 I GLB["PARSUG" D
 .D ^W4ABCKVZ
 .S GLB=$$TMPABC^W4ABCKVZ
 ;
 ;
 I $L(SRCH) S CDKV="" ; -- 05/12/21
 N PRT,PRT0 S PRT0="" F  S PRT0=$O(@GLB@(PRT0)) Q:PRT0=""  D
 .S PRT=PRT0
 .I $$GLOBORIG["PARSUG" S PRT=$G(@GLB@(PRT0))
 .;;I CDKV,$$SUG^W4P(PRT)'=CDKV,'$G(%ARG("ADDSONLY")),$G(SRCH)="" Q  ; -- 22/10/24
 .I CDKV,$$SUG^W4P(PRT)'=CDKV,$G(SRCH)="" Q
 .I $$NOSHOW(PRT) Q
 .I $G(%ARG("ADDSONLY")),$D(@$$^W4GL($$GLOBNAME)@(PRT))<10 Q  ; -- 22/10/24
 .I '$$GRADD,'$$EZD,$$^W4EZAT(PRT) Q
 .S NM=$$NM(PRT)
 .I $G(SRCH)'="",'$$^W1SRCH(SRCH,PRT,NM) Q
 .S I=I+1 I I=1,MAIN="" D PUT^%W1PRM("MAIN",PRT)
 .S A="<option value="""_PRT_""""
 .I MAIN'="",MAIN=PRT S A=A_" selected=""selected"""
 .I MAIN="",I=1 S A=A_" selected=""selected""" S MAIN=PRT
 .N NM1 S NM1=$S($$GLOBORIG["PARSUG":$$^W3SHOWKV(PRT),1:PRT_" "_$$H2U^%L1FRM(NM))
 .S A=A_">"_NM1_"</option>"
 .W A,!
 ;
 I MAIN D PUT^%W1PRM("MAIN",MAIN) S %ARG("MAIN")=MAIN
 Q
 ;
PUTCDKV(PRM) ;
 N JB,CDKV S JB=$P(PRM,";"),CDKV=$P(PRM,";",2)
 I JB=""!(CDKV="") Q
 D PUT^%W1PRM("CDKV",CDKV)
 Q
 ;
SWAP(PRM,DRC) ;
 N MAIN,CD
 S MAIN=$P(PRM,";")
 S CD=$P(PRM,";",2)
 I MAIN=""!(CD="") Q
 D GL N NAT,NST0 S NST=""
 D CLEAR
 S NST=$$GETPN(MAIN,CD)
 D PUT^%W3DEB("W3PTSIDK-SWAP","MAIN=MAIN & CD=CD& NST=NST")
 Q:'NST
 N A,A0,NST0
 S A=$G(@GL@(MAIN,NST))
 S NST0=$O(@GL@(MAIN,NST),DRC) I NST0="" Q
 S A0=$G(@GL@(MAIN,NST0))
 S @GL@(MAIN,NST)=A0
 S @GL@(MAIN,NST0)=A
 S @GL@(MAIN,NST0,"CUR")=1
 Q
 ;
SWAPN(PRM) ;
 N (JB,%ARG,PRM)
 ;
 S MAIN=$$GETP^%W1PRM("MAIN") I 'MAIN G SWPNE
 D GL S NST=""
 D CLEAR
 S NST=+PRM,NST0=$P(PRM,";",2)
 S PR=0 I NST0>NST S PR=1
 ;
 G:'NST SWPNE G:'NST0 SWPNE
 S A0=$G(@GL@(MAIN,NST0)) G:A0="" SWPNE
 S OK=1
 N GLM S GLM=$E(GL,1,$L(GL)-1)_","""_MAIN_""")"
 ;
 D ADD^%L1GSEQ(GLM,NST+'PR,A0,OK)
 D DEL^%L1GSEQ(GLM,NST0+PR)
 S @GLM@(NST,"CUR")=1
 Q 1
 ;
SWPNE Q 0
 ;
GETPN(MAIN,CD) ;
 D GL N N,NP S NP=""
 S N="" F  S N=$O(@GL@(MAIN,N)) Q:N=""  I $G(^(N))=CD S NP=N Q
 Q NP
 ;
CLEAR ;
 D GL N K
 K @$$^W4MAIN("VRM") S K=0
 N N S N="" F  S N=$O(@GL@(MAIN,N)) Q:N=""  K ^(N,"CUR") D
 .S K=K+1 M @$$^W4MAIN("VRM")@(K)=@GL@(MAIN,N)
 K @GL@(MAIN)
 M @GL@(MAIN)=@$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM")
 Q
 ;
GRADD(STAM) ;
 Q +$$GET^%W1PRM("GRADD")
 ;
MHT(MAIN,N) ;
 I $G(N)="" Q ""
 N MHT
 S MHT=$$MH^W4P(N)
 I '$$GRADD,$L($G(MAIN)),$G(@$$^W4GL("MHT")@(MAIN,N))'="" S MHT=$G(^(N))
 I $$GRADD,$L($G(MAIN)),$G(@$$^W4GL("MHTG")@(MAIN,N))'="" S MHT=$G(^(N))
 Q $J(MHT,2,2)
 ;
ADD2TMP(MAIN,TO) ;
 I $G(MAIN)="" Q
 I $G(TO)="" S TO=MAIN
 K ^[$$^W3MAIN]TMPSV($$^%W1JB)
 N GL D GL
 K @GL@(TO)
 N N,NP,MHT S NP=0
 ;
 N GLOBNAME S GLOBNAME=$$GLOBNAME
 S MAX=$G(@$$^W4GL(GLOBNAME)@(MAIN))
 ;
 I TO'=MAIN K @$$^W4GL("MHT")@(TO)
 ;
 S N="" F  S N=$O(@$$^W4GL(GLOBNAME)@(MAIN,N)) Q:N=""  D
 .I '$D(@$$^W4GL("PAR")@(N)) Q
 .I $$NOPAR^W4PRTVW(N) Q
 .S NP=@$$^W4GL(GLOBNAME)@(MAIN,N)
 .I 'NP S NP=$O(@GL@(MAIN,""),-1)+1
 .I $D(@GL@(TO,NP)) S NP=$O(@GL@(TO,""),-1)+1
 .S MHT=$$MHT(MAIN,N)
 .S @GL@(TO,NP)=N_";"_MHT
 .I TO'=MAIN S @$$^W4GL("MHT")@(TO,N)=MHT ; ***
 ;
 S @GL@(TO)=MAX
 Q
 ;
 ;
GLOBNAME(STAM) ;
 I $$EZD Q "W4EZDI"
 I $$GRADD Q "P1EZKI"
 Q "P1EZI"
 ;
GLOBNAMEI(STAM) ;
 I $$EZD Q "W4EZD"
 I $$GRADD Q "P1EZK"
 Q "P1EZ"
 ;
GLOBORIG(STAM) ;
 I $$GRADD Q "PARSUG"
 Q "PAR"
 ;
NOSHOW(PRT) ;
 I $$GLOBORIG="PAR",$G(@$$^W4GL("W3PAR")@(PRT))=0 Q 1
 I $$GLOBORIG="PARSUG",$G(@$$^W4GL("W3SUG")@(PRT))=0 Q 1
 Q 0
 ;
NM(PRT) ;
 N NM I $G(PRT)="" Q ""
 S NM=$$SHEM^W4P(PRT)
 I $$GLOBORIG="PARSUG" S NM=$G(@$$^W4GL("PARSUG")@(PRT))
 Q NM
 ;
CAPTION(STAM) ;
 I $$EZD Q $$^%W1DICT("ITEMSREPORTTREE")
 I $$GRADD Q $$^%W1DICT("ITEMSGROUPADDSTABLE")
 Q $$^%W1DICT("ITEMADDSTABLE")
 ;
SEARCHCAPTION(STAM) ;
 I $$GRADD Q $$^%W1DICT("SEARCHITEMSGROUP")
 Q $$^%W1DICT("SEARCHITEM")
 ;
FIRSTMAIN ;
 N A S A=$O(@$$^W4GL($$GLOBNAME)@(""))
 D PUT^%W1PRM("MAIN",A)
 Q
 ;
MAXADD(MAIN) ;
 N MAX I $G(MAIN)="" Q 99
 D GL
 S MAX=$S($D(@GL@(MAIN))#2:$P(@GL@(MAIN),"\"),1:$P($G(@$$^W4GL($$GLOBNAME)@(MAIN)),"\"))
 ;;S MAX=$TR(MAX,"!^<> ","")_$TR(MAX,"1234567890","")
 I 'MAX S MAX=99
 Q MAX
 ;
ADDSFREE(MAIN) ;
 I $G(MAIN)="" Q ""
 D GL
 S AF=$S($D(@GL@(MAIN))#2:$P(@GL@(MAIN),"\",4),1:$P($G(@$$^W4GL($$GLOBNAME)@(MAIN)),"\",4))
 Q AF
 ;
CHNMAXADD(PRM) ;
 N MAIN S MAIN=$P(PRM,";") Q:MAIN=""
 N MAX S MAX=+$P(PRM,";",2)
 D GL
 S $P(@GL@(MAIN),"\")=MAX
 Q
 ;
MUSTADD(PAR) ;
 I $G(PAR)="" Q 0
 I $P($G(@$$^W4GL($$GLOBNAME)@(PAR)),"\",2)="-" Q 0
 Q 1
 ;
IMBLI(PAR) ;
 I $G(PAR)="" Q 0
 Q +$P($G(@$$^W4GL($$GLOBNAME)@(PAR)),"\",3)
 ;
SELFROM ;
 W $$^%W1DICT("CHOICEITEM2COPY")
 W "&nbsp;"
 W "<select id=""from"" onChange=""ChangeFrom()"">",!
 W "<option value="""" >"_$$^%W1DICT("CHOICEDATA")_"</option>"
 N PRT S PRT="" F  S PRT=$O(@$$^W4GL("PAR")@(PRT)) Q:PRT=""  D
 .I PRT=$G(MAIN) Q
 .I $D(@$$^W4GL("P1EZI")@(PRT))<10 Q
 .S NM=$$NM(PRT)
 .S A="<option value="""_PRT_""""
 .S A=A_">"_PRT_" "_$$H2U^%L1FRM(NM)_"</option>"
 .W A,!
 W "</select>",!
 W "&nbsp;"
 W "<input type=""button"" style=""color:grey"" disabled=""disabled"" id=""showfrom"" onClick=""ShowFrom()"" value="""_$$^%W1DICT("SHOW")_""" />",!
 W "<input type=""button"" style=""color:grey"" disabled=""disabled"" id=""copyfrom"" onClick=""CopyFrom()"" value="""_$$^%W1DICT("COPY")_""" />",!
 Q
 ;
KOT ; 
 W "<table width=""100%"" >"
 W " <tr>"
 W "  <td colspan=""4"" "_$S($$^W4TABLET=2:$$^%W1ALIGN,1:"align=""center"" ")_">"
 W "   <span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$CAPTION_"</span>",!
 W "  </td>"
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td>"
 W "   <select id=""main"" dir="""_$$^%W1DIR_""" onChange=""parent.MainChange('"_JB_"')"" "
  I $G(%ARG("GRMAIN")) W " disabled=""disabled"" "
 W ">",!
  D GETOPT
 W "   </select>",!
 W "  </td>"
 I $$EZD W "</tr></table>" Q
 ;
 I $$^W4TABLET=2!$$1024^W4WDSCR W "</tr><tr>"
 ;
 W "  <td>"
 W "   <span>"_$$^%W1DICT("MAXADD")_"</span>&nbsp;"
 W "    <input type=""text"" dir=""LTR"" id=""maxadd"" value="""_$$MAXADD(MAIN)_""" onBlur=""ChangeMaxAdd()"" onFocus=""this.select()"" size=""3"" maxlength=""3"" >",!
 W "  <td>"
 W " </tr>",!
 ;
 W " <tr>"
  W "<td colspan=""3"">",!
   W "<table width=""100%"">",!
    W "<tr>"
     I $$^W4ELPOS D
     .W "<td>"_$$^%W1DICT("MUSTADD")_" "
     . W "<input type=""checkbox"" id=""mustadd"" "
     .  I $$MUSTADD(MAIN) W " checked=""checked"" "
     . W ">",!
     .W "</td>",!
     D 
     .N WD S WD=25 I $$1024^W4WDSCR S WD=28
     .W "<td width="""_WD_"%"">"
     I $$^W4PIZZA(MAIN) D
     .W $$^%W1DICT("IMBLI")_" "
     .W "  <input type=""checkbox"" id=""imbli"" "
     . I $$IMBLI(MAIN) W " checked=""checked"" "
     .W ">",!
     W "&nbsp;</td>"
     ;
     I $$^W4TABLET=2 W "</tr><tr>"
     ;
     W "<td>"
     W $$^%W1DICT("NUMBERADDSFREE")_" "
     W "<input type=""text"" id=""addsfree"" value="""_$$ADDSFREE(MAIN)_""" onFocus=""this.select()"" size=""2"" maxlength=""2"" >",!
    W "</td>"
   W "</tr></table></td>",!
 W "</tr>",!
 
 I '$$GRADD D
 .W "<tr><td colspan=""2"">" D SELFROM W "</td></tr>",!
 W " </tr>",!
 W "</table>",!
 ;
 ;;W "<br />",!
 ;
 I MAIN="" W "</div>" Q
 ;
 I $$^W4EZAT(MAIN),'$$GRADD D  W "</div>",! Q
 .W "<script>",!
 .W "MsgA(""ITSLUNCH"")",!
 .W "</script>",!
 ;
 I $$^W4TABLET'=2 D 
 .W "<span style=""color:red"">"
 . W $$^%W1DICT("TOMOVEITEMCLICKIT")
 .W "</span>",!
 Q
 ;
EZD(STAM) ; 
 Q +$$GETP^%W1PRM("EZD")
 ;
SHOWADDSONLY(STAM) ;
 Q $$^%W1DICT("SHOWITEMSADDSONLY")
 ;;Q $$^%W1DICT("SHOWEXISTTREEONLY")
 
INIT ; 
 D ^%W1ARG,^W3CSS
 I $G(%ARG("EZD")) D PUT^%W1PRM("EZD",+$G(%ARG("EZD"))) Q 
 D PUT^%W1PRM("GRADD",+$G(%ARG("GRADD")))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3PTSPRT
W3PTSPRT ; [ 05.08.23 06:57 ] [ 14.07.16 12:33 ] [ 12.07.16 07:30 ] 
 N (JB,%ARG,SRCH)
 Q:$G(%ARG("NOSHOW"))
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3PTSPRT","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 D GL
 W "<div align=""center"" >",!
 D CHECKALL^W3KVPRT("")
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""13%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("ITEMSGROUP")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 N N,I
 N MAIN S MAIN=$$MAIN
 D PUT^%W3DEB("W3PTSPRT","MAIN=MAIN")
 ;
 S N="",I=0 F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .N SUG S SUG=$$SUG^W4P(N)
 .I SUG,$G(@$$^W4GL("PARSUG")@(N))=0 Q
 .I $G(%ARG("KV")),%ARG("KV")'=SUG Q
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .I MAIN,N=MAIN Q
 .N OK S OK=1
 .
 .I MAIN D
 ..N N1 S N1="" F  S N1=$O(@GL@(MAIN,N1)) Q:N1=""  D:N=$P($G(^(N1)),";")  Q:'OK
 ...N PRM S PRM=$G(%ARG("CDMV2PR")) S OK=0 Q:PRM=""
 ...N J F J=2:1:$L(PRM,";") S CD=$P(PRM,";",J) D
 ....I CD,CD=N S OK=1
 .
 .Q:'OK
 .S OK=1
 .I $D(%ARG("CDMV2AD")) D
 ..N PRM S PRM=%ARG("CDMV2AD")
 ..N J F J=1:1:$L(PRM,";") S CD=$P(PRM,";",J) D
 ...I CD,CD=N S OK=0
 .Q:'OK
 .W "<tr id=""trprt"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$J($$MH^W4P(N),2,2)_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SUG1^W4P(N))_"&nbsp;</td>"
 .
 .N ID,PROC
 .S ID="chprt"_N
 .S PROC="OnClickTbl('"_N_"','TblPrt','trprt','chprt')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
GL ;
 S GL="^[$$^W3MAIN]TMPADD(JB)"
 Q
MAIN(STAM) ;
 I $G(%ARG("MAIN"))'="" Q %ARG("MAIN")
 Q $$GET^%W1PRM("MAIN")
 
 
 

W3PWRLNK
W3PWRLNK(PRM) ; [ 01.03.23 22:41 ] [ 
 N (JB,PRM)
 ;;S ^AA("W3PWRLNK")=PRM
 S ST0=$P(PRM,"%3F",2,200)
 S ST0=$$RPL^%L1FRM(ST0,"%26amp%3B","%26")
 ;
 S ST1=$P(PRM,"%3F")_"%3F"
 S ST1=$$RPL^%L1FRM(ST1,"w3pwrlnk.jsp","w3orddet.jsp")
 F I=1:1:$L(ST0,"%26") D
 .S WORD=$P(ST0,"%26",I)
 .I WORD'["%25D7",WORD'["PWRLNKID" S WORD=$$FUNC^%UCASE(WORD)
 .S ST1=ST1_WORD_"%26"
 Q $E(ST1,1,$L(ST1)-3)
 

W3R
W3R ; PARAMETRIM LAKOHOT (PIZZERIA)                       [ 06.08.25 14:10 ] [ 08.04.24 16:36 ] [ 02.10.23 07:01 ] 
UCI(MSD) ;
 I $$MM^W4PRM Q $$^W3MAIN
 I $G(MSD)="" Q $$^W3MAIN
 Q $$TV^%W1UCI(MSD)
 ;
SHIVUK(LKH) Q 0
MSD(MSD,GL) ;
 I $G(MSD)="" Q ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD)),"~"))
 ;
MSDU(MSD)
 I $G(MSD)="" Q ""
 Q $$H2U^%L1FRM($$MSD(MSD))
 ;
D(MSD) I $G(MSD)="" Q 0
 N GL D GL
 Q $D(@GL@(MSD))
 ;
D1(MSD,GL) I $G(MSD)="" Q 0
 N GL D GL
 Q $D(@GL@(MSD,1))
 ;
D2(MSD,GL) I $G(MSD)="" Q 0
 N GL D GL
 Q $D(@GL@(MSD,2))
 ;
MSDN(MSD,GL) ;
 I $$^W4ELPOS,'$$MSDR^W4PRM,$G(MSD)<2 Q $$NAME^W3MSDG(MSD)
 I $G(MSD)="" Q ""
 N GL D GL
 Q $P($G(@GL@(MSD)),"~")
 ;
STREET(MSD)
 Q $$KTV(MSD)
 ;
KTV(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(MSD,1),"~",1))
 ;
KTV1(MSD) N GL D GL N KTV S KTV=$$KTV(MSD)
 I $$BAIT(MSD) S KTV=$$BAIT(MSD)_" "_KTV
KTV11 ;
 I $L($$IR(MSD)) S KTV=$$IR(MSD)_","_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
EMAIL(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(MSD,1),"~",8))
 ;
SMTP(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $G(^[$$UCI(MSD)]W3PRM("SMTP"))
 ;
USER(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $G(^[$$UCI(MSD)]W3PRM("USER"))
 ;
PSWMAIL(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $G(^[$$UCI(MSD)]W3PRM("PSWMAIL"))
 ;
MAILSERVER(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $G(^[$$UCI(MSD)]W3PRM("MAILSERVER"))
 ;
LOGO(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $G(^[$$UCI(MSD)]W3PRM("LOGO"))
 ;
HDMAIL(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $G(^[$$UCI(MSD)]W3PRM("HDMAIL"))
 ;
SITE(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 N SITE S SITE=$$SPA^%L1FRM($P(@GL@(MSD,1),"~",10))
 ;;N HTTP S HTTP=$P(SITE,"//")
 ;;S SITE="https://"_$P(SITE,"//",2,20)
 Q SITE
 ;
PRICE(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(MSD,1),"~",11))
 ;
GOOGLE(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(MSD,1),"~",15))
 ;
MHMIN(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $J($G(^[$$UCI(MSD)]P1PRM("MSLMHMIN")),2,2)
 ;;Q $$SPA^%L1FRM($P(@GL@(MSD,1),"~",16))
 ;
ENGLISHNAME(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",13))
 ;
MAZAV(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 I $P($G(@GL@(MSD,1)),"~",14)="d" Q 0.5
 Q $P($G(@GL@(MSD,1)),"~",14)'="q"
 ;
MAP(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 N MAP S MAP=$$SPA^%L1FRM($P(@GL@(MSD,1),"~",17))
 I 'MAP S MAP=1
 Q MAP
 ;
COORD(MSD) ;
 I $$^W4ELPOS,'$$MSDR^W4PRM Q $TR($$CENTER^W4MAPPRM(1),";",",")
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(MSD,1),"~",18))
 ;
PELE(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(MSD,1),"~",19))
 ;
DATPTH(MSD) ;
 I $G(MSD)="" Q ""
 N GL D GL
 I '($$D1(MSD)#2) Q ""
 Q $P(@GL@(MSD,1),"~",20)
 ;
BAIT(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",21))
 ;
TEL(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",2))
 ;
TELMSD(MSD)
 Q:$G(MSD)="" ""
 N GL D GL
 N TEL1 S TEL1=$$TEL(MSD)
 N TEL2 S TEL2=$$PELE(MSD)
 I TEL1=""&(TEL2="") Q ""
 I TEL1="" Q TEL2
 I TEL2="" Q TEL1
 Q TEL1_"/"_TEL2
 ;
FAX(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",3))
 ;
FAXMSD(MSD) ;
 N GK D GL
 N BR S BR=" <BR> " 
 N ST S ST=$$FAX(MSD)
 S ST=ST_BR_$$EMAIL(MSD)
 N SND S SND=$$SND2MAIL(MSD)
 I SND=0 S ST=ST_BR_$$^%W1DICT("FAX")
 I SND=1 S ST=ST_BR_$$^%W1DICT("EMAIL")
 I SND=2 S ST=ST_BR_$$^%W1DICT("FAXANDMAIL")
 Q ST
 ;
MODEM(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",22))
 ;
DESCR(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($G(@GL@(MSD,4)))
 ;
MSG(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($G(@GL@(MSD,5)))
 ;
IR(MSD) Q:$G(MSD)="" ""  N IR
 N GL D GL
 S IR=$P($G(@GL@(MSD,1)),"~",24)
 Q $$SPA^%L1FRM(IR)
 ;
MIKUD(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",25))
 ;
AZOR(MSD) Q:$G(MSD)="" ""  N AZOR,KTV,BAIT
 N GL D GL
 S AZOR=$P($G(@GL@(MSD,1)),"~",26)
 Q $$SPA^%L1FRM(AZOR)
 ;
KKIND(MSD) Q:$G(MSD)="" ""
 N GL D GL
 I '($$D2(MSD)#2) Q ""
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~")
 ;
COND(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",2)
 ;
HACHANA(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",3)
 ;
ZIC(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",4)
 ;
FAXCOPY(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",5)
 ;
AMALA(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",6)
 ;
AMALACA(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",7)
 ;
FAXKIND(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",8)
 ;
MAKOR(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,2)))
 Q $P(ST,"~",9)
 ;
CODUSA(MSD) Q:$G(MSD)="" ""
 N GL D GL
 N ST S ST=$$SPA^%L1FRM($G(@GL@(MSD,1)))
 Q $P(ST,"~",23)
 ;
ARMFAX(MSD) Q:$G(MSD)="" ""
 Q $$FAXKIND(MSD)-1
 ;
KKIND1(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q:'$$KKIND(MSD) ""  Q $G(@$$^W4GL("KKIND")@(+$$KKIND(MSD)))
 ;
COUNTRY(MSD) Q:$G(MSD)="" ""
 N COUNTRY,OK D
 .N N S OK="" S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(N)) Q:N=""  D  Q:OK
 ..I $D(^[$$^W3MAIN]W3MSDR(N,MSD)) S COUNTRY=$$COUNTRY^W3MSDR(N) S OK=COUNTRY
 I '$L(OK) Q "IS"
 Q OK
 ;
LNG(MSD) Q:$G(MSD)="" ""
 S CNT=$$COUNTRY(MSD)
 I CNT="" Q $G(%W1LNG,"H")
 N LNG S LNG=$$LNG^W3CNTRY(CNT)
 Q $S(LNG="":"H",1:LNG)
 ;
PSW(MSD) Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",12))
 ;
KASHER(MSD)
 Q:$G(MSD)="" ""
 N GL D GL
 Q $$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",27))
 ;
FAXALW(MSD)
 Q:$G(MSD)="" ""
 N GL D GL
 Q +$G(@GL@(MSD,6))
 ;
SND2MAIL(MSD) ;
 I '$$MM^W4PRM Q 0
 Q $$FAXALW(MSD)
 ;
PIC(MSD) ;
 N PATH,PATHL,TYPE,NOPIC
 S PATH=$$WEB^W3MAIN
 S PATHL=$$WEBL^W3MAIN
 S TYPE="jpg"
 ;
 S NOPIC="w3pic."_TYPE
 ;
 S PICNAME="w3pic"_MSD_"."_TYPE
 S FLPIC=PATH_PICNAME
 S FLPICL=PATHL_PICNAME
 I $$^%L1ZOS(10,FLPICL)<0 Q PATH_NOPIC
 Q FLPIC
 ;
DP(MSD,N) Q:$G(MSD)="" ""
 N GL D GL
 N OU S OU=$$SPA^%L1FRM($P($G(@GL@(MSD,1)),"~",N))
 I OU="00:00-00:00" Q ""
 Q OU
DPF(MSD,N) N A S @("A=$$DP"_N_"("_MSD_")")
 Q $$SPA^%L1FRM($P(A,"-"))
DPU(MSD,N) N A S @("A=$$DP"_N_"("_MSD_")")
 Q $$SPA^%L1FRM($P(A,"-",2))
 ;
DP1(MSD) Q $$DP(MSD,4)
DP2(MSD) Q $$DP(MSD,28)
DP3(MSD) Q $$DP(MSD,29)
DP4(MSD) Q $$DP(MSD,30)
DP5(MSD) Q $$DP(MSD,5)
DP6(MSD) Q $$DP(MSD,6)
DP7(MSD) Q $$DP(MSD,7)
 ;
DAY1F(MSD) Q $$DPF(MSD,1)
DAY1U(MSD) Q $$DPU(MSD,1)
DAY2F(MSD) Q $$DPF(MSD,2)
DAY2U(MSD) Q $$DPU(MSD,2)
DAY3F(MSD) Q $$DPF(MSD,3)
DAY3U(MSD) Q $$DPU(MSD,3)
DAY4F(MSD) Q $$DPF(MSD,4)
DAY4U(MSD) Q $$DPU(MSD,4)
DAY5F(MSD) Q $$DPF(MSD,5)
DAY5U(MSD) Q $$DPU(MSD,5)
DAY6F(MSD) Q $$DPF(MSD,6)
DAY6U(MSD) Q $$DPU(MSD,6)
DAY7F(MSD) Q $$DPF(MSD,7)
DAY7U(MSD) Q $$DPU(MSD,7)
 ;
 ;
PUT(MSD,RKV,PRZ) ;
 N GL D GL
 S RKV=$TR(RKV,"*\~","X/-")
 S RKV=$$SPA^%L1FRM(RKV)
 ;
PUT1 N GL D GL I PRZ="MSD" D  Q
 .N FILE,STRING
 .S FILE="^[$$^W3MAIN]W3MSD",STRING=MSD D KF^%L1SCSV
 .S @GL@(MSD)=RKV S FILE="^[$$^W3MAIN]W3MSD",STRING=MSD
 ;
 I PRZ="STREET" S $P(@GL@(MSD,1),"~",1)=RKV Q
 I PRZ="TEL" S $P(@GL@(MSD,1),"~",2)=RKV Q
 I PRZ="FAX" S $P(@GL@(MSD,1),"~",3)=RKV Q
 I PRZ="EMAIL" S $P(@GL@(MSD,1),"~",8)=$$BIG(RKV) Q
 I PRZ="SITE" S $P(@GL@(MSD,1),"~",10)=RKV Q
 I PRZ="PRICE" S $P(@GL@(MSD,1),"~",11)=RKV Q
 I PRZ="PSW" S $P(@GL@(MSD,1),"~",12)=RKV Q
 I PRZ="ENGLISHNAME" S $P(@GL@(MSD,1),"~",13)=$$BIG(RKV) Q
 I PRZ="GOOGLE" S $P(@GL@(MSD,1),"~",15)=RKV Q
 ;;I PRZ="MHMIN" S $P(@GL@(MSD,1),"~",16)=$J(RKV,2,2) Q
 I PRZ="MAP" S $P(@GL@(MSD,1),"~",17)=RKV Q
 I PRZ="COORD",RKV S $P(@GL@(MSD,1),"~",18)=RKV Q
 I PRZ="MHMIN" S @$$^W4PRM@("MSLMHMIN")=$J(RKV,2,2) Q
 I PRZ="PELE" S $P(@GL@(MSD,1),"~",19)=RKV Q
 I PRZ="DATPTH" S $P(@GL@(MSD,1),"~",20)=RKV Q
 I PRZ="BAIT" S $P(@GL@(MSD,1),"~",21)=RKV Q
 I PRZ="IR" S $P(@GL@(MSD,1),"~",24)=RKV Q
 I PRZ="AZOR" S $P(@GL@(MSD,1),"~",26)=RKV Q
 I PRZ="KASHER" S $P(@GL@(MSD,1),"~",27)=RKV Q
 I PRZ="SNDTO" S @GL@(MSD,6)=RKV Q
 ;
 I PRZ="DAY1F" D SETDAY(RKV,4,1)
 I PRZ="DAY1U" D SETDAY(RKV,4,2)
 I PRZ="DAY2F" D SETDAY(RKV,28,1)
 I PRZ="DAY2U" D SETDAY(RKV,28,2)
 I PRZ="DAY3F" D SETDAY(RKV,29,1)
 I PRZ="DAY3U" D SETDAY(RKV,29,2)
 I PRZ="DAY4F" D SETDAY(RKV,30,1)
 I PRZ="DAY4U" D SETDAY(RKV,30,2)
 I PRZ="DAY5F" D SETDAY(RKV,5,1)
 I PRZ="DAY5U" D SETDAY(RKV,5,2)
 I PRZ="DAY6F" D SETDAY(RKV,6,1)
 I PRZ="DAY6U" D SETDAY(RKV,6,2)
 I PRZ="DAY7F" D SETDAY(RKV,7,1)
 I PRZ="DAY7U" D SETDAY(RKV,7,2)
 ;
 I PRZ="KKIND" S $P(@GL@(MSD,2),"~",1)=RKV Q
 I PRZ="COND" S $P(@GL@(MSD,2),"~",2)=RKV Q
 I PRZ="HACHANA" S $P(@GL@(MSD,2),"~",3)=RKV Q
 I PRZ="ZIC" S $P(@GL@(MSD,2),"~",4)=RKV Q
 I PRZ="FAXCOPY" S $P(@GL@(MSD,2),"~",5)=RKV Q
 I PRZ="AMALA" S $P(@GL@(MSD,2),"~",6)=RKV Q
 I PRZ="AMALACA" S $P(@GL@(MSD,2),"~",7)=RKV Q
 I PRZ="FAXKIND" S $P(@GL@(MSD,2),"~",8)=RKV Q
 I PRZ="MAKOR" S $P(@GL@(MSD,2),"~",9)=RKV Q
 I PRZ="CODUSA" S $P(@GL@(MSD,1),"~",23)=RKV Q
 ;
 I PRZ="DESCR" S @GL@(MSD,4)=RKV Q
 I PRZ="FAXALW" S @GL@(MSD,6)=RKV Q
 Q
 ;
 ;
SETDAY(RKV,NOM,FU) ;
 N GL D GL
 N A S A=$P($G(@GL@(MSD,1)),"~",NOM)
 S $P(A,"-",FU)=RKV
 S $P(@GL@(MSD,1),"~",NOM)=A
 Q
 ;
PUT2(MSD,PRZ) ;
 N GL D GL
 I PRZ["=" N PRZ1,PRZ2,I S PRZ1=PRZ F I=1:1:$L(PRZ1,"<>") D
 .S PRZ2=$P(PRZ1,"<>",I),PRZ=$P(PRZ2,"="),RKV=$P(PRZ2,"=",2) I PRZ'?.P D PUT1
 Q
 ;
GL ;
 I $G(GL)="" S GL="^[$$^W3MAIN]W3MSD"
 Q
 ;
BIG(RKV) ;
 I $$^%W1LNG="H" Q $$FUNC^%UCASE(RKV)
 Q RKV
 ;
MRKLST(MSDR) ;
 N SNIF S SNIF="0^"_$$^%W1DICT("CHOICEBRANCH")_"~"
 I $G(MSDR)="" Q ""
 N N S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(MSDR,N)) Q:N=""  I N D
 .I $D(NOMAIN),N=MSDR,'$$ONESNIF^W4PLGN(MSDR) Q
 .N NM S NM=$$MSDN(N)
 .S SNIF=SNIF_N_"^"_$$H2U^%L1FRM(NM)_"~"
 Q $E(SNIF,1,$L(SNIF)-1)
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3RCN
W3RCN ; [ 19.01.12 09:46 ] [ 16.12.11 10:34 ] [ 02.12.11 09:17 ]
 N (JB,CODE,%ARG) S ORD=JB
 S MSD=$$GET^%W1PRM("MSD")
 I MSD="" Q
 I $$^W3UCI(MSD)="" Q
 ;;S $ZGBLDIR=$$^W3UCI(MSD)
 D HDMSD^W3ORDVW(MSD)
 D ^%L1WEBHD($$^W3MSDG(MSD),"T")
 ;
 ;;W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" style=""color:"_$$FGODHD1^W3CSS_";font-size:"_$$^W3FSZ(18)_""" cellpadding=""30"" border=""0"">",!
 W "<tr><td style=""text-align:center"">",!
 W $$^%W1DICT("WRITEFEEDBACK")
 W "</td></tr></table>"
 Q
 ;
SV(PRM) N NM,PELE,EMAIL
 S MSD=$$GET^%W1PRM("MSD") I 'MSD Q -1
 S PRM=$$CNWEB^%L1FRM(PRM)
 S NM=$$INVH^%L1FRM($P(PRM,";"))
 S PELE=$P(PRM,";",2)
 S EMAILFROM=$P(PRM,";",3)
 S DESC=$$SPA^%L1FRM($P(PRM,";",4,100))
 I $L(DESC)<5 Q -2
 S DESC=$$INVH^%L1FRM(DESC)
 D DLG^%L1FRM(DESC,40)
 K ^[$$^W3MAIN]W3RCN(MSD,JB)
 S ^[$$^W3MAIN]W3RCN(MSD,JB)=NM_"\"_PELE_"\"_$$FUNC^%UCASE(EMAILFROM)_"\"_$H
 I $$^%W1DIR'="RTL" S ^[$$^W3MAIN]W3RCN(MSD,JB,1)=DESC
 I $$^%W1DIR="RTL" D
 .S ^[$$^W3MAIN]W3RCN(MSD,JB,1)=""
 .N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 ..S ^[$$^W3MAIN]W3RCN(MSD,JB,I)=%CHAST(1,I)
TV ;S MSDR=$$MSDR(MSD)
 S DESC=$$RPL^%L1FRM(DESC,"_","<BR>")
 D
 .N EMAILTO S EMAILTO=$$EMAIL^W3R(MSD) Q:EMAILTO=""
 .N FROM S FROM=$$H2U^%L1FRM(NM)_" "_PELE_" "_EMAILFROM
 .S OK=$$^W3SNDMSG(EMAILTO,FROM,FROM_"<br><br>"_$$H2U^%L1FRM(DESC))
 Q 1
 ;
NAME(STAM) ;
 I $D(@$$^W3ORD(JB)@(JB)) Q $$NAME^W3HZMST(JB,$$^W3ORD)
 Q $$NAME^W3HZMST(JB)
 ;
PELE(STAM) ;
 I $D(@$$^W3ORD(JB)@(JB)) Q $$PELE^W3HZMST(JB,$$^W3ORD)
 Q $$PELE^W3HZMST(JB)
 ;
EMAIL(STAM) ;
 Q $$EMAIL^W3L($$GET^%W1PRM("CODE"))
 ;
MSDR(MSD) ;
 N N,OK S N="",OK=0
 F  S N=$O(^[$$^W3MAIN]W3MSDR(N)) Q:N=""  D  Q:OK
 .I $D(^(N,MSD)) S OK=N
 I 'OK Q " "
 Q OK

W3RCVFDB
W3RCVFDB ; [ 27.09.08 21:06 ] [
 N (JB,%ARG,%REM)

W3RCVORD
W3RCVORD ; [ 09.11.15 15:45 ] [ 07.11.15 12:24 ] [ 10.01.14 14:56 ]
SUBMIT(PRM) ;
 D PUT^%W3DEB("W3RCVORD-SUBMIT","PRM=PRM")
 N HZ,TIME,JB,NSNIF
 S HZ=$P(PRM,"~")
 S TIME=$P(PRM,"~",2)
 S JB=$P(PRM,"~",3)
 S NSNIF=$P(PRM,"~",4)
 I $D(@$$^W3ORD(HZ)@(HZ,"S")) Q
 D KILL^%W3DEB("W3RCVORD")
 D PUT^%W3DEB("W3RCVORD","PRM=PRM & JB=JB")
 S @$$^W3ORD(HZ)@(HZ,"S")=TIME
 ;;S $P(@$$^W3ORD(HZ)@(HZ),"~",35)=TIME ; *** 07/10/10
 K ^[$$^W3MAIN]W3LINKO(HZ) ; *** 07/10/10
 ;
 ;;I '$$AUTOSEND^W3PRM,$$^W4MM D
 I $$^W4MM,'$$AUTOFAX^W4PRM D
 .N MSD S MSD=$G(@$$^W3ORD(HZ)@(HZ,"MSD")) Q:MSD=""
 .D SNDFAX^W3TSTORD(MSD,HZ)
 Q
 ;
DELETE(PRM) ;
 N HZ,WHO
 D PUT^%W3DEB("W3RCVORD","PRM=PRM")
 S HZ=$P(PRM,"~")
 S WHO=$P(PRM,"~",2)
 I $$^%W1LNG="H" S WHO=$$INV^%L1FRM(WHO)
 S @$$^W3ORD(HZ)@(HZ,"D")=$H_"~"_WHO
 K ^[$$^W3MAIN]W3LINKO(HZ)
 Q
SND(HZ,NSNIF) ;
 I '$G(NSNIF) S NSNIF=1
 N JB S JB=HZ
 S $P(@$$^W3ORD(HZ)@(HZ),"~",36)=$H
 S @$$^W3ORD(HZ)@(HZ,"CS")=$$CSS(HZ)
 D SHD(HZ)
 Q
SHD(HZ) ;
 I HZ Q:'$$SEND^W3PRM(NSNIF)
 I $G(^[$$^W3MAIN]W3PRM("NOSEND")) Q
 N JB0 S JB0=JB
 N SHD,JB S JB=HZ K %L2MODEM S OKSHD=-100
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I 'HZ S MSD=1
 ;
 S %L2MODEM("GLOB")=$$^W3ORD(+HZ)_"("_+HZ_")"
 S %L2MODEM("FL")="/pos/orders/W3ORD_"_MSD_"."_HZ
 S %L2MODEM("ADDR")=$$SEND^W3PRM(NSNIF)
 I 'HZ D
 .N JB S JB=JB0
 .S %L2MODEM("ADDR")=$$SEND^W3PRM(1)
 S %L2MODEM("NODISP")=1
 S %L2MODEM("WEB")=1
 ;
 N SHD S SHD=0
 S ^DDD=1
 D ^%L2MODEM
 S ^DDD=2
 ;
 S ^[$$^W3MAIN]W3ORDSND(HZ)=$H_";"_$S($D(%L2MODEM("ER")):"NOK",1:"OK")_";"_$G(%L2MODEM("FL"))_";"_$G(%L2MODEM("ADDR"))_";"_$G(%L2MODEM("ER"))
 D SNDMSH^W3ANSFDB(HZ)
 ;
 S IND=$O(^[$$^W3MAIN]W3ORDSND(HZ,"ER",""),-1)+1
 ;
 I 'HZ,$D(%L2MODEM("ER")) S ^[$$^W3MAIN]W3ORDSND(HZ,"ER",IND)=$H_";NOK;"_$G(%L2MODEM("FL"))_";"_$G(%L2MODEM("ADDR"))_";"_$G(%L2MODEM("ER"))
 S ^DDD=3
 I $D(%L2MODEM("ER")) Q
 ;
 N I F I=1:1:12 D  S OKSHD=$$PRIEM(FLP) Q:OKSHD>-100  H 1
 .S FLP=$G(@$$^W4PL@("SND","DIRCV"))_"W3ORDB_"_MSD_"."_HZ
 S ^DDD=4
 ;
 S ^[$$^W3MAIN]W3ORDSND(HZ)=$H_";"_$S(OKSHD<0:"NOK1",1:"OK")_";"_$G(%L2MODEM("FL"))_";"_$G(%L2MODEM("ADDR"))_";"_OKSHD
 I 'HZ,OKSHD<0 S ^[$$^W3MAIN]W3ORDSND(HZ,"ER",IND)=$H_";NOK1;"_$G(%L2MODEM("FL"))_";"_$G(%L2MODEM("ADDR"))_";"_OKSHD
 S ^DDD=5
 Q
 ;
CSS(HZW) N I,CSH S I=0,CSH=0
 N JB S JB=HZW
 N II F II=1:1:$L(@$$^W3ORD(HZW)@(HZW))  D CSH(^(HZW))
 N N,N1
 S N="" F  S N=$O(@$$^W3ORD(HZW)@(HZW,N)) Q:N=""  I N'="CS" D CSH($G(^(N))) D
 .S N1="" F  S N1=$O(@$$^W3ORD(HZW)@(HZW,N,N1)) Q:N=""  Q:N1=""  D CSH($G(^(N1)))
 Q CSH
CSH(A) N J F J=1:1:$L(A) S I=I+1,CSH=CSH+($A(A,J)*I)
 Q
PRIEM(FL)
 S $ZT="ZG "_$ZL_":ER"
 N OKP S OKP=-100
 I '$D(@$$^W4GL("PL")@("SND","DIRCV")) S @$$^W4GL("PL")@("SND","DIRCV")="/home/gtmjsp/upload/"
 N FLP S FLP=FL I FL'["/" S FLP=$G(@$$^W4GL("PL")@("SND","DIRCV"))_FL
 I $$^%L1ZOS(10,FLP)>0 H 1 D
 .O FLP:(REWIND:READONLY) U FLP R OKP C FLP
 Q OKP
ER D SVER^%L1X
 Q -100

W3RCVRM
W3RCVRM(MSDM) ; [ 25.09.18 11:42 ] [ 01.10.17 13:33 ] [ 20.12.16 12:50 ] 
 N (JB,%ARG,MSDM)
 S DZ=+$H
 ;D ^%W1ARG
 D ^W4BGBODY
 N MSDRM
 D MSDRM
 S COLX=$G(%ARG("COLX"))
 S:'$G(COLX) COLX=2
 S TOP0=60
 S WD0=1880
 S HG=$$HG(COLX)
 S WD=$$WD(COLX)
 ;
 D WEBMSG
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 S MSDR="" F I=1:1 S MSDR=$O(@MSDRM@(MSDM,MSDR)) Q:MSDR=""  D
 .S COLORMSG(MSDR)=$G(@MSDRM@(MSDM,MSDR,"COLOR"))
 .D COORD(I)
 .W "<span style=""position:absolute;left:"_(LEFT+(WD\3)-30)_";top:"_(TOP-TOP0+28)_";font-size:"_$$^W3FSZ(18)_";width:250px;color:red"">"
 . S NM=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\")
 . W $$H2U^%L1FRM(NM),!
 .W "</span>",!
 .
 S MSDR="" F I=1:1 S MSDR=$O(@MSDRM@(MSDM,MSDR)) Q:MSDR=""  D
 .D COORD(I)
 .W "<iframe name=""cwindow"" id=""msg"_MSDR_""" class=""ifr"" ",!
 .W " style='background-color:white;width:"_WD_"px;left:"_LEFT_";height:28px;top:"_(TOP-TOP0)_";visibility:visible'",!
 .W " src='w3webmsg.jsp?JB="_JB_"&MSDM="_MSDM_"&MSDR="_MSDR_"'"
 .W ">",!
 .
 .W "</iframe>",!
 ;
 S MSDR="" F I=1:1 S MSDR=$O(@MSDRM@(MSDM,MSDR)) Q:MSDR=""  D
 .D COORD(I)
 .W "<iframe name=""cwindow"" id=""ifr"_MSDR_""" class=""ifr"" ",!
 .W " style='width:"_WD_"px;left:"_LEFT_";height:"_HG_"px;top:"_TOP_";visibility:visible'",!
 .W " src='w3rcvord.jsp?JB="_JB_"&PC=1&MSDR="_MSDR_"&MEDAT="_DZ_"&ADDAT="_(DZ+30)_"&SHOW=2&NOPSW=1&FIRST=1&SORT=1&TMOUT=30000'"
 .W ">",!
 .
 .W "</iframe>",!
 W "</div>",!
 Q
 ;
MSDRM ;
 S MSDRM="^[$$^W3MAIN]W3MSDRM"
 Q
 ;
HG(COLX) ;
 I COLX=3 Q 1000
 Q 480
 ;
WD(COLX) ;
 Q WD0\COLX-20
 ;
LEFT(I) ;
 N LEFT
 N I1 S I1=I#COLX I 'I1 S I1=COLX
 S LEFT=WD*(I1-1)+(5*(I1-1))
 Q WD0-LEFT-WD-20
 ;
TOP(I) ;
 N I1 S I1=(I-1)\COLX
 Q TOP0*(I1+1)+(HG*I1)
 ;
COORD(I) ;
 S LEFT=$$LEFT(I)
 S TOP=$$TOP(I)
 Q
 ;
MSG(MSDM,MSDR) ;
 N MSD,H,H1,MSG,COLORMSG
 Q:$G(MSDM)=""
 Q:$G(MSDR)=""
 ;
 W "<div dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_" background-color=""lightyellow"">",!
 D MSDRM,WEBMSG
 S COLORMSG(MSDR)=$G(@MSDRM@(MSDM,MSDR,"COLOR"))
 ;;W "<marquee direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >",!
 S MSD="" F  S MSD=$O(@WEBMSG@(MSD)) Q:MSD=""  D
 . I '$D(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q
 . S H=$O(@WEBMSG@(MSD,99999),-1) Q:H=""  D
 .. I H=($H-1),$P($H,",",2)>20000 Q
 .. S H1=$O(@WEBMSG@(MSD,H,99999),-1) Q:H1=""  D
 ... ;;I H1<($P($H,",",2)-3600) W " " Q
 ... S MSG=$G(^(H1)) Q:MSG=""
 ... W "<span style="";font-size:"_$$^W3FSZ(14)_";width:100%;color:"_COLORMSG(MSDR)_""">"
 ...  W $$^%W1DICT("FROM")_$$H2U^%L1FRM($G(@WEBMSG@(MSD,H,H1,"WHO")))
 ...  W " "_$ZD(H_","_H1,"24:60")_" : "_$$^%W1DICT(MSG)
 ... W "</span>",!
 ;;W "</marquee>",!
 W "</div>",!
 Q
 ;
WEBMSG ;
 S WEBMSG="^[$$^W3MAIN]WEBMSG"
 Q
 
 
 
 

W3RCVRM0
W3RCVRM(MSDM) ; [ 24.07.16 07:16 ] [ 23.07.16 16:19 ] [ 20.07.16 18:50 ]
 N (JB,%ARG,MSDM)
 S DZ=+$H
 N MSDR
 D MSDRM
 ;
 S HG=1000
 S TOP=90
 S WD=630
 ;
 S WEBMSG="^[$$^W3MAIN]WEBMSG"
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 S MSDR="" F I=1:1 S MSDR=$O(@MSDRM@(MSDM,MSDR)) Q:MSDR=""  D
 .S COLORMSG(MSDR)=$G(@MSDRM@(MSDM,MSDR,"COLOR"))
 .S LEFT=WD*(I-1)+(5*(I-1))
 .W "<span style=""position:absolute;left:"_(LEFT+190)_";top:"_(TOP-90)_";font-size:"_$$^W3FSZ(18)_";width:250px;color:red"">"
 . S NM=$P($G(^[$$^W3MAIN]W3MSDR(MSDR)),"\")
 . W $$H2U^%L1FRM(NM),!
 .W "</span>",!
 .
 .W "<div id=""msg"_MSDR_""" "
 .W " style=""position:absolute;left:"_LEFT_";top:"_(TOP-60)_";font-size:"_$$^W3FSZ(12)_";width:"_WD_";height:30;color:black"" "
 .W ">"
 . W "<marquee id=""mrq"_MSDR_""" >",!
 . S MSD="" F  S MSD=$O(@WEBMSG@(MSD)) Q:MSD=""  D
 .. I '$D(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q
 .. S H=$H-1 F  S H=$O(@WEBMSG@(MSD,H)) Q:H=""  D
 ... I H=($H-1),$P($H,",",2)>20000 Q
 ... S H1="" F  S H1=$O(@WEBMSG@(MSD,H,H1)) Q:H1=""  D
 .... I H1<($P($H,",",2)-3600) Q
 .... S MSG=$G(^(H1)) Q:MSG=""
 .... W "<span style="";font-size:"_$$^W3FSZ(12)_";width:"_WD_";color:"_COLORMSG(MSDR)_""">"
 ....  W $$^%W1DICT("FROM")_"-"_$$H2U^%L1FRM($G(@WEBMSG@(MSD,H,H1,"WHO")))
 ....  W " "_$ZD(H_","_H1,"24:60")_" : "_$$^%W1DICT(MSG)
 ....  W "<span style=""color:black""> *** </span>"
 .... W "</span>",!
 . W "</marquee>",!
 .W "</div>",!
 ;
 S MSDR="" F I=1:1 S MSDR=$O(@MSDRM@(MSDM,MSDR)) Q:MSDR=""  D
 .S LEFT=WD*(I-1)+(5*(I-1))
 .W "<iframe name=""cwindow"" id=""ifr"_MSDR_""" class=""ifr"" ",!
 .W " style='width:"_WD_"px;left:"_LEFT_";height:"_HG_"px;top:"_TOP_";visibility:visible'",!
 .W " src='w3rcvord.jsp?JB="_JB_"&PC=1&MSDR="_MSDR_"&MEDAT="_DZ_"&ADDAT="_(DZ+30)_"&SHOW=2&NOPSW=1&FIRST=1'",!
 .W ">",!
 .
 .W "</iframe>",!
 W "</div>",!
 Q
 ;
MSDRM ;
 S MSDRM="^[$$^W3MAIN]W3MSDRM"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3RCVRSD
W3RCVRSD ; [ 27.07.26 17:42 ] [ 12.05.26 17:47 ] [ 24.12.20 13:01 ] 
 N FLIN,MSD,UCI,OKP,OKL,OKF
 S $ZT="ZG "_$ZL_":ER^W3RCVRSD"
 ;
CYC I $G(^[$$^W3MAIN]STLOOP("W3RCVRSD")) H
 ;
 G HW
 ;
HW ;
 S OKF=0
 D RCV("HZ2MSD","HZ2MSD") ; --- HAZMANOT LE MISSADOT AHEROT
 D RCV("HZ2WEB","HZ2WEB") ; --- HAZAOT MAHIR
 D RCV("HZ2MM","HZ2MM") ; --- MI MSD -> RAV MISSADOT
 D RCV("MRK2WEB","MRK2WEB")
 D RCV("HZLINKWI","HZLNK")
 D RCV("PARSEND","P")
 D RCV("LKHSEND","L")
 D RCV("P1IRSND","I")
 D RCV("p1sendw","S")
 ;;D RCV("P1TA2HRZ","T2H")
 D RCV("ZP","ZAPA")
 D RCV("ZPB","ZAPAB")
 D RCV("WEBMSG","WEBMSG")
 D RCV("W4MNYPR","W4MNYPR")
 I +$$T^%L1TIME($H)=6,'$D(^|$$^W3MAIN|W4GIBNET(+$H,1)) D ^W4GIBNET
 ;;I $$T^%L1TIME($H)>22,'$D(^|$$^W3MAIN|W4GIBNET(+$H,2)) D ^W4GIBNET
 ;
END S ^[$$^W3MAIN]W3RCVRSD=$ZD($H,"DD.MM.YY  24:60")_"\"_$J
 N H2 S H2=$P($H,",",2)
 I H2>10800,H2<11000 D
 .K ^|$$^W3MAIN|TMP
 .N I S I="" F  S I=$O(^CacheTempJSP(I)) Q:I=""  I $E(I,1,5)<($H-1) K ^(I)
 H 2 G CYC
 ;
ER D SVER^%L1X
 H
 ;
PRIEM(FL,UCI,PRKILL)
 N OKP S OKP=0
 N FLP,FLE,FLA S FLP=FL
 N NAME S NAME=$ZPARSE(FLP,"NAME")
 S FL=$P(NAME,"_") I FL="" S OKP=0 G EP
 N DIR S DIR=$ZPARSE(FLP,"DIR")
 ;
 S FLE=DIR_FL_"E"_"_"_$P(NAME,"_",2,22)
 S FLA=DIR_FL_"A"_"_"_$P(NAME,"_",2,22)
 ;
 ZSY "rm -f "_FLE
 ZSY "rm -f "_FLA
 ;
 I FLP'[".END",$$^%L1ZOS(10,FLP)>0,$$^%L1ZOS(10,FLP_".END")<0 D
 .N II F II=1:1:5 Q:$$^%L1ZOS(10,FLP_".END")>-1  H 1
 D  G EP
 .I $G(PRKILL),FL'["/",FL'["." K @("^["""_UCI_"""]"_FL)
 .F JJJ=1:1:5 X "I $$GR^W3G2F(FLP,UCI) S OKP=1" Q:OKP  H 1
 .;
 .I OKP ZSY "mv "_FLP_" "_FLA
 .I 'OKP ZSY "mv "_FLP_" "_FLE
 ;
 ;;I FLP[".END",$$^%L1ZOS(10,FLP)>0,$$^%L1ZOS(10,$P(FLP,".END"))<0 D
 .S OKP=0 ZSY "mv "_FLP_" "_FLE
 ;
EP Q OKP
 ;
 ;
ERR(CDER,IND,FL) S ^[$$^W3MAIN]W3RCVER(+$H,$P($H,",",2))=$G(CDER)_"\"_IND_"\"_FL
 Q
CLRMSD(MSD)
 I MSD["-" S MSD=$P(MSD,"-")
 Q MSD
 ;
 ;
RCV(NMFL,IND) ;
 N FLIN,MSD
 N DIRCV S DIRCV=$G(^[$$^W3MAIN]PL("SND","DIRCV"))
 I $E(DIRCV,$L(DIRCV))'="/" S DIRCV=DIRCV_"/"
 ;
 S FLIN=DIRCV_NMFL_"_*"
 S FLIN=$ZSEARCH(FLIN) I FLIN'[NMFL_"_" G RCVE
 S MSD=$P($P(FLIN,"_",2),".")
 S MSD=$$CLRMSD(MSD) I MSD="" D ERR(-1,IND,FLIN) G RCVE
 ;
 S UCI=$G(^[$$^W3MAIN]UCI(MSD))
 I NMFL="HZLINKWI"!(NMFL="HZ2MSD")!(NMFL="HZ2WEB")!(NMFL="HZ2MM")!(NMFL["WEBMSG") S UCI=$$^W3MAIN
 ;
 I NMFL="p1sendw" D
 .I $P($H,",",2)>(5*3600),$P($H,",",2)<(6*3600),'$D(^[$$^W3MAIN]NEWDAY(+$H,MSD)) D
 ..N N S N="" F  S N=$O(^[UCI]PRTNO(N)) Q:N=""  D
 ...I $G(^(N))=0 K ^[UCI]PRTNO(N)
 ..S ^[$$^W3MAIN]NEWDAY(+$H,MSD)=$H
 S OKP=$$PRIEM(FLIN,UCI)
 ;
 I 'OKP D ERR(-2,IND,FLIN) G RCVE
 ;
 I NMFL="HZ2MSD" D
 .N HZM S HZM=$P($P($P(FLIN,"_",2),"."),"-",2) Q:'HZM
 .N MSDTO S MSDTO=$P($P($P(FLIN,"_",2),"."),"-",3) Q:'MSDTO
 .D ^W3TR2HZ(MSD,MSDTO,HZM)
 ;
 I NMFL="HZ2WEB" D
 .N HZM S HZM=$P($P($P(FLIN,"_",2),"."),"-",2) Q:'HZM
 .D ^W3TR2WEB(MSD,HZM)
 ;
 I NMFL="HZ2MM" D
 .N DT S DT=$P($P($P(FLIN,"_",2),"."),"-",2) Q:'DT
 .N TO S TO=$P($P($P(FLIN,"_",2),"."),"-",3) Q:'TO
 .N HZM S HZM=$P($P($P(FLIN,"_",2),"."),"-",4) Q:'HZM
 .D ^W3TR2MM(DT,MSD,TO,HZM)
 ;
 I NMFL="PARSEND" D ^W3TR2P(UCI) S OKF=1
 ;
 I NMFL="LKHSEND" D ^W3TR2L(UCI) S OKF=OKF+2
 ;
 I NMFL="P1IRSND" D  S OKF=OKF+4
 .K ^[UCI]P1IR
 .M ^[UCI]P1IR=^[UCI]P1IRSND(9000)
 .K ^[UCI]P1IRSND(9000)
 ;
 I NMFL="p1sendw" D ^W3TR2S(UCI) S OKF=OKF+8
 ;
 I NMFL="p1sendw" D
 .I MSD=1,OKF S %ARG("TRG")=OKF D ^W3TRM(MSD) ; --- SF -> SITE
 .;
 I NMFL="ZAPAB" D
 .N DT S DT=$P($P($P(FLIN,"_",2),"."),"-",2) Q:'DT
 .D ^W3ZAPA(MSD,DT)
 ;
RCVE Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3REGFAX
W3REGFAX(HZ) ; [ 22.03.11 10:21 ] [
 S @$$^W3ORD(HZ)@(HZ,"F")=$H
 S @$$^W3ORD(HZ)@(HZ,"F",$H)=""
 Q

W3REST
W3REST ; [ 06.08.25 12:47 ] [ 31.08.17 07:21 ] [ 05.11.15 11:33 ] 
 N (JB,MSDR,FIND,%ARG)
 ;;I $G(MSDR)="" Q
 S %W1LNG=$$GET^%W1PRM("LNG")
 S GL="^[$$^W3MAIN]W3MSD"
 K ^[$$^W3MAIN]TMPST(JB)
 ;
 S FIND=$$INVH^%L1FRM($$SPA^%L1FRM($$CLEAR^%L1FRM(FIND)))
 D PUT^%W3DEB("W3REST","MSDR=MSDR & FIND=FIND & %ARG=[%ARG")
 ;
 N RS,OK S OK=0,RS="" F  S RS=$O(@GL@(RS)) Q:RS=""  D
 .S ST=$G(^(RS)) Q:ST=""
 .I $L($G(MSDR)),'$G(^[$$^W3MAIN]W3MSDR(MSDR,RS)) Q
 .I $L(FIND),ST'[FIND Q
 .D ADDTBL(RS,ST)
 ;
VIEW ;
 W "<table id=""TblStr"" width=""100%"" >",!
 N RS S RS="" F  S RS=$O(^[$$^W3MAIN]TMPST(JB,RS)) Q:RS=""  D
 .N A S A=$G(^(RS))
 .W "  <tr><td id=""tdid"_RS_""" "_$$^%W1ALIGN_""" dir="""_$$^%W1DIR_""">"
 . W "<a href=""#"" onClick=""ClickRest("_RS_")"" >"
 .  N CD S CD=$P(A," ")
 .  W CD_" "_$$NBSP^%L1FRM(2)
 .  W $$H2U^%L1FRM($P(A," ",2,200))
 . W "</a>"
 . N CDUSA S CDUSA=$$CODUSA^W3R(RS)
 . I CDUSA W " <span style=""color:grey;font-size:"_$$^W3FSZ(9)_"""> [ "_CDUSA_" ] <span>"
 .W "</td></tr>",!
 W "</table>",!
 Q
 ;
ADDTBL(RS,ST) ;
 S ^[$$^W3MAIN]TMPST(JB,RS)=$J(RS,5)_" "_@GL@(RS)
 Q
 
 
 
 
 
 
 
 
 

W3RGOU
W3RGOU(PRM,CODE) ; [ 13.10.13 13:49 ] [ 06.06.12 16:42 ] [ 03.06.12 14:21 ]
 ;
 N (JB,%ARG,CODE,PRM)
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W3ORDRG")
 D PUT^%W3DEB("W3ORDRG","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 D PUT^%W3DEB("W3ORDRG","MSD=MSD")
 ;
 N GL D GL^W3L
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 I $$ONLINE^W4DLVCSR D
 .I $G(CODE)["!" S CODE=$P(CODE,"!"),PRNEW=2,GL=$$GLA^W3L
 .E  I CODE'="",'$$D^W3L(CODE) S GL=$$GLA^W3L,PRNEW=2
 ;
 W "<div style=""height:100%"" >",!
 ;
 W "<div align=""center"" >",!
 ;
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 I 'CODE W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("NEWREGISTRY")_"</td></tr>",!
 I CODE W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("UPDATEPROFILE")_"</td></tr>",!
 W "</table>",!
 ;
 W "<span style='color:red'><strong>"_$$^%W1DICT("FLDMUSTASTR")_"</strong></span>",!
 W "<br>",!
 ;
 W "<table width=""50%"" border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 D CODE,NAME
 W "</tr>",!
 W "</table>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea;cellpadding:10;background-color:white;color:black"" width=""50%"" border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>",!
 D DEP
 W "</tr>",!
 ;
 W "<tr>",!
 D ROLE
 W "</tr>",!
 ;
 W "<tr>"
 D FLOOR
 W "</tr>",!
 ;
 W "<tr>",!
 D FLAT
 W "</tr>",!
 ;
 W "<tr>",!
 D EMAIL
 W "</tr>",!
 ;
 W "<tr>",!
 D COMMENT
 W "</tr>",!
 ;
 W "<tr>",!
 D ISCR,ISCH
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 W "<br>",!
 W "<div align=""center"">",!
 ;
 ;W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" style=""color:green"" onClick=""Submit('"_PRNEW_"','"_MSD_"')"" />",!
 W "<table><tr><td>",!
 D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"SubmOut('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 W "</td><td>",!
 D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back('"_PRNEW_"','"_MSD_"')","color:red","wh,22")
 W "</td></tr></table>",!
 W "</div>",!
 ;
 W "</div>",! ; -- KLALI
 Q
 ;
CODE N TDALIGN S TDALIGN=$S($$^%W1DIR="RTL":"right",1:"left")
 S TDWIDTH="15%"
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("MOBIL")_"</td>"
 W "<td>" D INPC("CODE",100,12,"LTR")
 Q
 ;
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("NAME",180,30,$$^%W1DIR)
 Q
 ;
DEP D TD W "&nbsp;"_$$^%W1DICT("DEPARTMENT")_"</td><td>&nbsp;&nbsp;"
 D INP("DEP",180,30,$$^%W1DIR)
 Q
 ;
ROLE D TD W "&nbsp;"_$$^%W1DICT("ROLE")_"</td><td>&nbsp;&nbsp;"
 D INP("ROLE",180,30,$$^%W1DIR)
 Q
 ;
FLOOR D TD W "&nbsp;"_$$^%W1DICT("FLOOR")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("FLOOR",30,3,$$^%W1DIR)
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("ROOM")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("ROOM",40,5,"LTR")
 Q
 ;
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("COMMENT","95%",60,$$^%W1DIR)
 Q
 ;
EMAIL D TD W "&nbsp;"_$$ZW_$$^%W1DICT("EMAIL")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("EMAIL","95%",60,"LTR")
 Q
 ;
ISCR ;
 D TD I '$$RKV("ISCR") W "&nbsp;</td><td>&nbsp;</td>" Q
 W "&nbsp;"_$$^%W1DICT("ISCR")_"</td><td>&nbsp;&nbsp;"
 N MZV S MZV=$S($$RKV("ISCR"):$$^%W1DICT("YES"),1:$$^%W1DICT("NO"))
 ;;W "<span style=""color:white;background-color:red"">&nbsp;"_MZV_"&nbsp;</span>",!
 W "<span class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;"_MZV_"&nbsp;</span>",!
 Q
 ;
ISCH ;
 D TD I '$$RKV("ISCH") W "&nbsp;</td><td>&nbsp;</td>" Q
 W "&nbsp;"_$$^%W1DICT("ISCH")_"</td><td>&nbsp;&nbsp;"
 N MZV S MZV=$S($$RKV("ISCH"):$$^%W1DICT("YES"),1:$$^%W1DICT("NO"))
 ;W "<span style=""color:white;background-color:red"">&nbsp;"_MZV_"&nbsp;</span>",!
 W "<span class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;"_MZV_"&nbsp;</span>",!
 Q
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align=""left"" "
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type="""_$S(RKV="PSW":"password",1:"text")_""" maxlength="""_SIZE_""""
 .I RKV'="PSW" W " style=""width:"_WD
 .I RKV="PSW" W " style=""width:120"
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .I RKV="EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
 .
 .W " value="""_RKVL_""" "
 .W " />",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 W "</td>",!
 Q
 ;
 ;
INPC(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW S CODE=$TR(CODE,"-","")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_""""
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onBlur=""TestCust('CODE');CheckCode(this)"""
 .W " />"
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 W "</td>",!
 Q
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D^W3L(CODE) Q $$P(FLD)
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I $G(PRNEW)=1 Q ""
 I '$$D^W3L(CODE),$G(PRNEW)'=2 Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH^W3L(CODE,GL))
 I FLD="PELE" Q $$PELE^W3L(CODE,GL)
 I FLD="DEP" Q $$H2U^%L1FRM($$DEP^W4L(CODE,GL))
 I FLD="ROLE" Q $$H2U^%L1FRM($$ROLE^W4L(CODE,GL))
 I FLD="FLAT"!(FLD="ROOM") Q $$DIRA^W3L(CODE,GL)
 I FLD="ENTRANCE" Q $$H2U^%L1FRM($$CNISA^W3L(CODE,GL))
 I FLD="FLOOR" Q $$H2U^%L1FRM($$KOMA^W3L(CODE,GL))
 I FLD="COMMENT" Q $$H2U^%L1FRM($$CMNT^W3L(CODE,GL))
 I FLD="EMAIL" Q $$EMAIL^W3L(CODE,GL)
 I FLD="ISCR" Q $$ISCR^W3L(CODE,GL)
 I FLD="ISCH" Q $$ISCH^W3L(CODE,GL)
 Q ""
 ;
NMB D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td><td>&nbsp;"
 D INP("CODE",130,18,"LTR")
 Q
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 ;
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
  D NMB
  D NAME
 W "</tr><tr>",!
  D FLAT
  D FLOOR
 W "</tr>",!
 W "</table>",!
 ;
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
  D EMAIL
  D COMMENT
 W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q

W3RSTGAS
W3RSTGAS ; [ 13.11.23 06:41 ] [ 12.11.23 17:31 ] [ 24.07.23 06:39 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;M ^AA("W3RSTGAS","ARG")=%ARG
 I '$G(%ARG("MSD")) D ERR("NOTREST") Q
 ;
 S MSD=$P(%ARG("MSD"),",")
 S MSDR=$G(%ARG("MSDR"))
 ; 
 I 'MSDR D ERR("NOTMSDR") Q
 ;
 S DIR="/tmp/"
 S FL=DIR_"w4rstgnt"_MSDR_"-"_MSD
 ;
 ;;S ^AA("W3RSTGAS","FL")=FL
 ;;S ^AA("W3RSTGAS","FLEX")=$$EXIST^%L1ZOS(FL)
 ;
 I $$EXIST^%L1ZOS(FL) D
 .O FL:(REWIND:READONLY)
 .F  U FL R A Q:$ZEOF  D
 ..;;S ^AA("W3RSTGAS","A")=A
 ..U 0 W A,!
 .C FL
 .ZSY "rm "_FL
 Q
 ;
 ;
ERR(PRM) ;
 D ERR^W3ANSIT($G(PRM))
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W3SALE
W3SALE(PRM) ; [ 28.09.25 21:06 ] [ 19.11.24 13:27 ] [ 31.10.23 08:37 ] 
 N (PRM,JB,%ARG,%REM)
 D DEFNOMVC
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D PUT^%W3DEB("W3SALE","PRM=PRM")
 ;
 I PRM["COUP" D COUP(PRM) Q
 D PUT^%W1PRM("MVC",2)
 ;
 ;
 N SIGNIT
 S SIGNIT="SIGNSALEITEM"
 I $$NOMVC S SIGNIT="W6SIGNITEMS"
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"_$$^%W1DICT(SIGNIT)_"</span>",!
 W "<br><br>",!
 W " <table id=""TbMvc"" width=""90%"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""7"">",!
 W "  <tr class=""tblordhd"">"
 W "   <th width=""40%"">"_$$^%W1DICT("NAME")_"</th>",!
 I $$^W6 D
 .W "    <th>"_$$^%W1DICT("PICTURE")_"</th>"
 ;
 W "   <th>"_$$^%W1DICT("QUANT")_"</th>",!
 ;
 I '$$NOMVC D
 .W "   <th>"_$$^%W1DICT("NORMALPRICE")_"</th>",!
 .W "   <th>"_$$^%W1DICT("SALEPRICE")_"</th>",!
 .W "   <th>"_$$^%W1DICT("DIFFERENCE")_"</th>",!
 ;
 I $$NOMVC D
 .W "   <th>"_$$^%W1DICT("PRICE")_"</th>",!
 ;
 W "   <th>"_$$^%W1DICT("SIGN")_"</th>",!
 W "  </tr>",!
 ;
 I $G(%ARG("MTN")) D MTN G ETB
 ;
 S GL=$$^W4GL("W3MVC")
 S NMB=$$GETP^%W1PRM("NMB")
 ;
 I NMB D
 .S I=0
 .S N="" F  S N=$O(@GL@(2,N)) Q:N=""  I N D VIB(N,2)
 ;
 D PUT^%W1PRM("WASMVC2",1)
 ;
ETB W " </table>",!
 W "<br>",!
 D ^W4SBMBCK("AddMvc2()")
 W "</div>",!
 ;
 D CLEARNOMVC
 Q
 ;
 ;
COUP(PRM) ;
 D PUT^%W3DEB("W3MVC-COUP","PRM=PRM")
 N MVC
 S MVC=PRM
 W "<table border=""0"" dir="""_$$^%W1DIR_""" align=""center"" >"
  W "<tr><td colspan=""2"" style=""color:red;font-size:"_$$^W3FSZ(14)_""">"_$$H2U^%L1FRM($$GETHD^W3MVC(MVC))_"<td><tr>",!
  W "<tr>"
   W "<td colspan=""2"" align=""center"">"
   W " <input type=""text"" id=""salecode"" maxlength=""7"" size=""7"""
   W " onKeyPress=""if (event.keyCode==13) {SubmCoup('"_MVC_"')}"" "
   W "  style=""font-size:"_$$^W3FSZ(14)_""">"
   W "<td>",!
  W "</tr>",!
  W "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>",!
  W "<tr><td align=""left"" width=""50%"">"
   D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"SubmCoup('"_MVC_"')","color:green","wh,22")
  W "</td>",!
  W "<td>&nbsp;</td>"
  W "<td align=""right"">"
   D ROUNDBUT^%W1JS("backid",$$^%W1DICT("SKIP"),"Back('"_MVC_"')","color:red","wh,22")
  W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
MTN ;
 N CD,NM,PRC,QN,TXT
 S CD=$P(PRM,"~")
 S NM=$$CNWEB^%L1FRM($P(PRM,"~",2))
 S PRC=$J($P(PRM,"~",3),2,2)
 S QN=$P(PRM,"~",4)
 S TXT="0~"_CD_"~"_$P(PRM,"~",2)_"~"_PRC_"~"_QN
 D SETMVC^W3ST("TXT","MVC2")
 W "  <tr>"
 W "   <td id=""nm"_CD_""">"_$$H2U^%L1FRM(NM)_"</td>"
 ;
 I $$^W6 D TDPIC(CD)
 ;
 W "   <td id=""qn"_CD_""" align=""center"">"_QN_"</td>"
 N SUMN S SUMN=$$MH^W3P(CD)*QN
 N SUMM S SUMM=PRC*QN
 I '$$NOMVC D
 .W "   <td id=""cost"_CD_""">"_$J(SUMN,2,2)_"</td>"
 .W "   <td id=""prc"_CD_""" style=""color:green;text-align:center"">"_$J(SUMM,2,2)_"</td>"
 .W "   <td id=""dif"_CD_""" style=""color:red;text-align:center"">"_$J(SUMM-SUMN,2,2)_"</td>"
 ;
 I $$NOMVC D
 .W "   <td id=""prc"_CD_""" style=""color:green;text-align:center"">"_$J(SUMM,2,2)_"</td>"
 ;
 W "   <td align=""center""><input type=""radio"" name=""rad"_CD_""" >"
 W "   </td>"
 W "  </tr>",!
 Q
 ;
 ;
GET(RKVZ,STR,MVC) ;
 I $G(MVC)=2 Q $$GET2^W3MVC($G(RKVZ),$G(STR))
 Q ""
 ;
 ;
VIB(N,MVC,CHKMVC)
 I MVC=2 S A=$G(@GL@(2,N))
 N DT1,DT2,DZ,THUM,TOT,CD,QN,MH,PRC,NM,CHK
 S DT1=$$^%L1DC($$GET("DAT1",A,MVC),3)
 S DT2=$$^%L1DC($$GET("DAT2",A,MVC),3)
 S DZ=$$^W4DZ
 I DZ<DT1!(DZ>DT2) Q
 S THUM=$$GET("THUM",A,MVC)
 I $$^W4MSL(NMB),THUM=1!(THUM=3) Q
 I $$^W4MSD(NMB),THUM=2 Q
 I '$$^W6,THUM=3 Q
 ;
 S CHK=$$GET("ISHUR",A,MVC)
 ;
 S TOT=$$TOTORD^W4GETSUM(JB)
 I MVC=2 S SUMMVC=$$GET("SUMMVC",A,MVC) I TOT<SUMMVC Q
 ;
 S CD=$$GET("CDMTN",A,MVC)
 S QN=$$GET("KAMMTN",A,MVC)
 S MH=$J($$MH^W4P(CD)*QN,2,2)
 S PRC=$P(A,"\",6)
 I PRC<MH,$G(CHKMVC) D PUT^%W1PRM("W3SALENOMVC",0) Q
 S NM=$$SHEM^W4P(CD)
 Q:$G(CHKMVC)
 ;
 D TRMTN(N,CD,QN,MH,PRC,NM,CHK)
 Q
 ;
 ;
TRMTN(N,CD,QN,MH,PRC,NM,CHK)
 W "<tr id=""tr"_N_""" >" 
  W "<td style=""padding-right:10px"">"_$$H2U^%L1FRM(NM)_"</td>"
  I $$^W6 D TDPIC(CD)
  W "<td>"_QN_"</td>"
  I '$$NOMVC W "<td>"_MH_"</td>"
  W "<td id=""mhmvc"_N_""">"_PRC_"</td>"
  ;
  I '$$NOMVC D 
  .W "<td dir=""LTR"" style=""text-align:right;color:red"">"
  . W $J(PRC-MH,2,2)
  .W "</td>"
  ;
  W "<td align=""center"" >"
   D ^W4LBLCHK("lbl"_N,"sign"_N,$G(CHK))
  W "</td>" 
 W "</tr>",!
 Q
 ;
 ;
TDPIC(CD) ;
 N HG,WD S HG="55px",WD="60px"
 N PIC S PIC=$P($$GETPIC^W3ENTER(CD),"~",2)
 W "<td align=""center"" "
  W "   >" 
   W "  <img src="""_PIC_""" width="""_WD_""" height="""_HG_""" " ; -- WAS 100%
   W "  style=""border:2px solid grey;cursor:pointer"" "
   W "  />"
 W "</td>",!
 Q
 ;
 ;
NOMVC() ;
 Q +$$GETP^%W1PRM("W3SALENOMVC")
 ;
 I $$^W6 Q 1
 Q $G(%ARG("NOMVC")) 
 ;
 ;
CLEARNOMVC ; 
 D KILL^%W1PRM("W3SALENOMVC") 
 Q 
 ;
DEFNOMVC ; 
 N N,NMB
 S NMB=$$GETP^%W1PRM("NMB")
 D PUT^%W1PRM("W3SALENOMVC",1)
 N GL S GL=$$^W4GL("W3MVC")
 S N="" F  S N=$O(@GL@(2,N)) Q:N=""  I N D VIB(N,2,1)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SDMENU
W3SDMENU(MSD) ; [ 10.08.21 12:02 ] [ 16.10.16 12:15 ] [ 30.10.10 08:09 ] 
 N N
 D PUT^%W1PRM("MSD",MSD)
 W "<div align=""center"">",!
 W "<table width=""80%"" dir="""_$$^%W1DIR_""" style=""background-color:white;color:black"" >",!
 S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 .N A S A=$G(^(N)) Q:A=""  I '$$^W4VWGR(N) Q
 .W "<tr><a name=""A"_N_""">"
 .W " <td colspan=""3"" align=""center"""
 .W " style=""background-image:url('w3sdmnbg1.png');color:white;font-size:"_$$^W3FSZ(16)_""""
 .W " onMouseOver=""this.style.cursor='pointer'"""
 .W " onClick=""ShowGr('"_N_"',"_(1-$G(^[$$^W3MAIN]TMPFL(JB,N)))_")"" >"
 .W $$H2U^%L1FRM(A)_"</td></a></tr>",!
 .I +$G(%ARG("GROUP"))=N D
 ..S ^[$$^W3MAIN]TMPFL(JB,N)=1-$G(^[$$^W3MAIN]TMPFL(JB,N))
 ..Q:'^[$$^W3MAIN]TMPFL(JB,N)
 ..D SHOWGR(N)
 W "</table>",!
 Q
SHOWGR(N)
 N NP S NP="" F  S NP=$O(@$$^W4GL("PAR")@(NP)) Q:NP=""  D
 .N B S B=$G(^(NP)) Q:B=""  N NM,MH,IHTML
 .I $$SUG^W4P(NP)'=N Q
 .I $$NOPAR^W4PRTVW(NP) Q
 .S NM=$P(B,"**"),MH=$P(B,"**",2)
 .S MH=$J(MH,2,2)
 .S IHTML="<td width=""80%"">"
 .S IHTML=IHTML_"<span style=""color:#d90300;font-size:"_$$%W3FSZ_""">"
 .S IHTML=IHTML_"&nbsp;&nbsp;"_$$H2U^%L1FRM(NM)_"<br />"
 .S IHTML=IHTML_"<span style=""color:black; font-size:"_$$^W3FSZ(11)_""">&nbsp;&nbsp;"
 .N I,ST,LINE S ST="" F I=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",NP,I))  D
 ..S LINE=$G(^(I))
 ..S ST=ST_$$SPA^%L1FRM(LINE)_" "
 .S IHTML=IHTML_$$H2U^%L1FRM(ST)
 .S IHTML=IHTML_"</span></td>"
 .S IHTML=IHTML_"<td width=""8%"">"_MH_"</td>"
 .N PIC S PIC=$$GETPIC^W3ENTER(NP)
 .S IHTML=IHTML_"<td width=""12%""><img src="""_$P(PIC,"~",2)_""" width=""100"" height=""67""></td>"
 .W "<tr>"_IHTML_"</tr>",!
 .W "<tr><td colspan=""3"" height=""3pt"" ><hr></td></tr>",!
 Q
 
 

W3SET
W3SET ; [ 05.08.23 12:30 ] [ 04.09.18 08:15 ] [ 21.06.18 15:14 ] 
 N (JB,%ARG)
 I '$D(JB) W " JB number is not defined ! " Q
 S SRCH="" I $D(%ARG("SRCH")) S SRCH=$$CNWEB^%L1FRM(%ARG("SRCH"))
 S SRCH=$$SPA^%L1FRM(SRCH)
 ;;W "%ARG(SRCH)="_$G(%ARG("SRCH"))_"  SRCH="_SRCH
 D PUT^%W3DEB("W3SET","%ARG=[%ARG & SRCH=SRCH")
 D ^W3CRSET
 W "<div align=""center"" >",!
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("SETSTABLE")_"</span>",!
 W "<table id=""TblSet"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""15%"">"_$$^%W1DICT("SETCODE")_"</th>"
 W "<th width=""55%"">"_$$^%W1DICT("SETNAME")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("SHOWSET")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 N N,I
 S N="",I=0 F  S N=$O(@$$^W4GL("P1SETA")@(N)) Q:N=""  D
 .I $G(%ARG("PARENT")),$D(^[$$^W3MAIN]TMPEZ($$^%W1JB,%ARG("PARENT"),"A"_N)) Q
 .I SRCH?1N.N,N'=SRCH Q
 .I SRCH'?1N.N,$L($G(SRCH)),'$$SRCH(SRCH,N) Q
 .W "<tr id=""trset"_N_""" >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$NMSET(N))_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""button"" value="""_$S($$CUR(N):$$^%W1DICT("CLOSESET"),1:$$^%W1DICT("SHOWSET"))_""" onClick=""ShowSet('"_N_"',"_(1-$$CUR(N))_")""/></td>"
 .
 .N ID,PROC S ID="chset"_N
 .S PROC="OnClickTbl('"_N_"','TblSet','trset','chset')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 .
 .I $$CUR(N) D DET(N)
 W "</table>",!
 W "</div>",!
 Q
 ;
NMSET(NN) ;
 I $E(NN)="A" S NN=$E(NN,2,10)
 Q $P($G(@$$^W4GL("P1SETA")@(NN)),"\")
QNMAX(NN) ;
 I $E(NN)="A" S NN=$E(NN,2,10)
 I NN="" Q ""
 Q $P($G(@$$^W4GL("P1SETA")@(NN)),"\",2)
 ;
QNMAXN(NN) ;
 N A S A=$$QNMAX(NN)
 Q $$QNMAXNA(A)
 ;
QNMAXNA(A) ;
 Q $TR(A,"!=^<> ","")
 ;
EQ(NN) N QNMAX S QNMAX=$$QNMAX(NN)
 Q $$EQA(QNMAX)
 ;
EQA(QNMAX)
 Q $S(QNMAX["!"!(QNMAX["="):1,QNMAX["^"!(QNMAX[">"):2,1:"")
 ;
SRCH(SRCH,SET) ;
 I '$L($G(SRCH)) Q 1
 N SRCOK S SRCOK=0
 I SRCH?1N.N,SET=SRCH S SRCOK=1 G ES
 I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 N NM
 I $$^%W1DIR="RTL" S NM=$$INVH^%L1FRM($$NMSET(SET))
 I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE($$NMSET(SET))
 D PUT^%W3DEB("W3SET-SRCH","NM=NM & SRCH=SRCH")
 I $E(NM,1,$L(SRCH))=SRCH S SRCOK=1 G ES
 I (" "_NM_" ")[(" "_SRCH_" ") S SRCOK=1 G ES
 N J,OK,MF S OK=1
 F J=1:1:$L(SRCH," ") D  Q:'OK
 .N FND,FND1 S FND=$F(" "_NM," "_$P(SRCH," ",J)) I FND<1 S OK=0 Q
 .S FND1=FND-$L($P(SRCH," ",J))
 .I $D(MF(FND1)) S FND=$F(" "_NM," "_$P(SRCH," ",J),MF(FND1)) I FND<1 S OK=0 Q
 .S MF(FND1)=FND
 I SRCH=SET S OK=1
 S SRCOK=OK
ES Q SRCOK
 ;
GETCODES(SET) ;
 N N,CD S CD=""
 S N="" F  S N=$O(@$$^W4GL("P1SETA")@(SET,N)) Q:N=""  D
 .S CD=CD_N_";"
 S CD=$P(CD,";",1,$L(CD,";")-1)
 S:CD="" CD=" "
 Q CD
 ;
GETST(CD) ;
 N ST I $G(CD)="" Q " "
 S ST=CD_";"_$$H2U^%L1FRM($$SHEM^W4P(CD))_";"_$G(@$$^W4GL("QNSET")@(CD))_";"_$G(@$$^W4GL("MHSET")@(CD))
 S:ST="" ST=" "
 Q ST
DET(SET) ;
 D DET^W3TREIDK(SET)
 Q
 N N
 W "<tr><td>&nbsp;</td>",!
      W "<td><table border=""1"" style=""color:green"">",!
      S CD="" F  S CD=$O(@$$^W4GL("P1SETA")@(SET,CD)) Q:CD=""  D
        .W "<tr>",!
        .W "<td>"_CD_"</td><td>"_$$H2U^%L1FRM($$SHEM^W4P(CD))_"</td>",!
        .W "<td dir=""LTR"">"_$$QNSET(CD)_"</td>"
        .W "<td dir=""LTR"">"_$$MHSET(CD)_"</td>"
        .W "</tr>",!
      W "</table></td>",!
 W "</tr>",!
 Q
CUR(SET) ;
 I '$G(%ARG("CUR")) Q 0
 I $G(%ARG("CUR"))=SET Q 1
 Q 0
QNSET(CD) ;
 S QN=$G(@$$^W4GL("QNSET")@(CD))
 I QN="" Q "&nbsp;"
 Q QN
MHSET(CD) ;
 S MH=$G(@$$^W4GL("MHSET")@(CD))
 I MH="" Q "&nbsp;"
 Q $J(MH,2,2)
 
 
 
 
 
 
 

W3SETA
W3SETA ; [ 22.01.16 16:44 ] [ 01.01.16 04:42 ] [ 02.09.10 11:42 ] 
 Q
NM(SET) ;
 I $G(SET)="" Q ""
 I '$L(SET) Q ""
 I $$SETHD(SET)="" Q ""
 Q $$SPA^%L1FRM($P($$SETHD(SET),"\"))
 ;
QN(SET) ;
 I $G(SET)="" Q ""
 I '$L(SET) Q ""
 I $$SETHD(SET)="" Q ""
 Q $$SPA^%L1FRM($P($$SETHD(SET),"\",2))
 ;
SET(SET) ;
 I $E(SET)="A" S SET=$E(SET,2,20)
 Q SET
 ;
SETHD(SET) ;
 S SET=$$SET(SET) I SET="" Q ""
 Q $G(@$$^W4GL("P1SETA")@(SET))
 ;
D(SET) ;
 S SET=$$SET(SET) I SET="" Q 0
 I $D(@$$^W4GL("P1SETA")@(SET))=11 Q 1
 Q 0
 

W3SETHD
W3SETHD(PRM) ; [ 17.06.26 10:52 ] [ 01.02.26 11:47 ] [ 29.12.24 12:19 ] 
 N (JB,%ARG,%REM,PRM)
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 N I,VIR,SVLK S SVLK=0
 ;;S ^AA("W3SETHD","PRM0")=PRM
 I PRM["<>" S SVLK=$P(PRM,"<>",2),PRM=$P(PRM,"<>")
 ;
 N T S T=$$T^W3HZHD
 ;
 F I=1:1:$L(PRM,"~") D
 .N VIRL,VIRR,TYPE S TYPE=""
 .S VIRL=$$SPA^%L1FRM($P(T,";",I)) Q:VIRL?.P
 .I VIRL[":" S TYPE=$P(VIRL,":",2),VIRL=$P(VIRL,":")
 .S VIRR=$P(PRM,"~",I)
 .I TYPE="T" S VIRR=$$TS^%L1TIME(VIRR)
 .I VIRR="" S @VIRL="" Q
 .S VIRR=$$RPL^%L1FRM(VIRR,"""","%22")
 .S VIRR=$$RPL^%L1FRM(VIRR,"''","%22")
 .S @(VIRL_"="""_VIRR_"""")
 .S @VIRL=$$CLEAR(@VIRL)
 .D DATTM(VIRL)
 ;
 I $G(EMAIL)'="" D
 .S EMAIL=$TR(EMAIL,"'","")
 .S EMAIL=$TR(EMAIL,"""","")
 ;
 I $G(CITY)'="" D
 .;;S ^AA("W3SETHD","CITY0")=CITY
 .S CITY=$$CITY(CITY)
 .I $G(HOME),'$G(@$$^W4PRM@("KTVNUM")) S CITY=$TR(CITY,"01234567890","")
 ;;S ^AA("W3SETHD","CITY")=CITY
 ;
 I $G(STREET)'="",$G(HOME) D
 .I $G(@$$^W4PRM@("KTVNUM")) Q
 .S STREET=$TR(STREET,"01234567890","")
 ;
 I $$GETP^%W1PRM("HZM")'>0,SHAA<5,$$^%L1DC(DAT,3)=$$^W4DZ,$P($H,",",2)>(9*3600) D
 .S DAT=$$^%L1DC($$^%L1DC(DAT,3)+1,1)
 ;
 S AHUZ=$$AHUZ^W4MENUBT
 ;
 D PUT^%W3DEB("W3SETHD","NMB=NMB&NAME=NAME&DAT=DAT&SHAA=SHAA&CITY=CITY&PELE=PELE&STREET=STREET&COMMENT=COMMENT&ENTRANCE=ENTRANCE&COMP=COMP&FLAT=FLAT&FLOOR=FLOOR&FAX=FAX&EMAIL=EMAIL&MIKUD=MIKUD&TELB=TELB")
 ;
 S MSD=$$GET^%W1PRM("MSD")
 ;
 S NMB1="",CODE=$G(CODE)
 S COMMENT=$$CLRDLM^%L1FRM(COMMENT,"{","}")
 ;
 I $$^W4DLVCSR,'$$TELEPHONE^W4PRM D  ; -- KUPA ( LO ONLINE )
 .Q:'$G(NMB)  Q:NMB=$$LKKLALI^W4PRM
 .N NMB1 S NMB1=$$PROCNMB(NMB)
 .;;Q:$$DC^W4L(NMB1) ; *** 14/04/23
 .I '$D(NAME) S NAME=$$INVH($$NAME^W3HZMST(JB))
 .D CRLK(NMB,JB)
 ;
 I NMB1 S CODE=NMB1
 D PUT^%W1PRM("NMB",CODE) ; *** 22/11/15 *** LEV
 ;
 N NOCHNDLV
 I $$^W4DLVCSR,$D(@$$^W4TMPORD)=11 S NOCHNDLV=1
 ;
 N CITYI S CITYI=$$INVH^%L1FRM($G(CITY))
 ;
 ;;S ^AA("W3SETHD","DMSH")=DMSH
 D
 .N CITY S CITY=$G(CITYI)
 .D HEAD^W3HZTFR ;!!!  -----------------------> ^TMPORD, AHUZ
 ;
 K NOCHNDLV
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 ;
 I $$^W4DLVCSR,$$^W4ISORD(HZM) D
 .N A,RES S A=$$^W4NEWHZ(JB,HZM,1)
 .;;I HZM>0,$$TEAV^W4PRM D SETTV(HZM) ; -- 26.05.25
 ;
 I $$^W4DLVCSR,'$$TELEPHONE^W4PRM D SAVE^W4TMPORD
 I $G(CODE)="",$$GETP^%W1PRM("CODE") S CODE=$$GETP^%W1PRM("CODE")
 ;
 I SVLK,$G(CODE),'$$^W4DLVCSR!$$TELEPHONE^W4PRM D  ; -- ONLINE OR CALLCENTER
 .N STR S STR=""
 .;
 .I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT1" D  Q
 ..I $G(NAME)'?.P S STR=STR_"LKH="_$$HB($G(NAME))
 ..I $G(NMB)'?.P S STR=STR_"<>TELB="_NMB
 ..I $G(PELE)'="" S STR=STR_"<>PELE="_$G(PELE)
 ..S STR=STR_"<>COMP="_$$HB($G(COMP))
 ..S STR=STR_"<>EMAIL="_$$HB($G(EMAIL))
 ..D PUT^%W3DEB("W3SETHD-SVLK","STR=STR")
 ..D PUT2^W3L(CODE,STR)
 .
 .I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT2" D  Q
 ..I $G(STREET)'?.P S STR=STR_"<>KTV="_$$HB($G(STREET))
 ..S STR=STR_"<>DIRA="_$G(FLAT)
 ..S STR=STR_"<>KOMA="_$$HB($G(FLOOR))
 ..S STR=STR_"<>BAIT="_$G(HOME)
 ..S STR=STR_"<>CNISA="_$G(ENTRANCE)
 ..S STR=STR_"<>IR="_CITY
 .S ^AA("W3SETHD","CITY")=CITY
 .S ^AA("W3SETHD","CITYHB")=$$HB(CITY)
 .I $G(NAME)'?.P S STR=STR_"LKH="_$$HB($G(NAME))
 .I $G(STREET)'?.P S STR=STR_"<>KTV="_$$HB($G(STREET))
 .I $G(NMB)'?.P S STR=STR_"<>TELB="_$S($G(TELB):TELB,1:NMB)
 .I $G(FLAT)'="-" S STR=STR_"<>DIRA="_$G(FLAT)
 .I $G(FLOOR)'="-" S STR=STR_"<>KOMA="_$$HB($G(FLOOR))
 .I $G(HOME)'="-" S STR=STR_"<>BAIT="_$G(HOME)
 .I $G(ENTRANCE)'="-" S STR=STR_"<>CNISA="_$G(ENTRANCE)
 .I $G(COMMENT)'="-" S STR=STR_"<>CMNT="_$$HB($G(COMMENT))
 .I $G(CITY)'?.P S STR=STR_"<>IR="_CITY ;; $$HB($G(CITY)) ; -- 07/07/2024
 .I $G(PELE)'="-" S STR=STR_"<>PELE="_$G(PELE)
 .I $G(COMP)'="-" S STR=STR_"<>COMP="_$$HB($G(COMP))
 .;;I $G(TZ)'="-" S STR=STR_"<>TZ="_$$INVH($G(TZ))
 .D PUT^%W3DEB("W3SETHD-SVLK","STR=STR")
 .D PUT2^W3L(CODE,STR)
 Q
 ;
 ;
DATTM(VIRL) ;
 N VIRL1 S VIRL1=VIRL
 I VIRL?1U.U1"IDdd"!(VIRL?1U.U1"IDmm")!(VIRL?1U.U1"IDyy")!(VIRL?1U.U1"mnid")!(VIRL?1U.U1"hrid") S VIRL1=$E(VIRL,1,$L(VIRL)-4)
 I VIRL?1U.U1"IDdd" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),1,2)
 .S $E(@VIRL1,1,2)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,3)="."
 I VIRL?1U.U1"IDmm" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),4,5)
 .S $E(@VIRL1,4,5)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,6)="."
 I VIRL?1U.U1"IDyy" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),7,8)
 .S $E(@VIRL1,7,8)=$TR($J(@VIRL,2)," ",0)
 I VIRL?1U.U1"mnid" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),4,5)
 .S $E(@VIRL1,4,5)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,3)=":"
 I VIRL?1U.U1"hrid" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),1,2)
 .S $E(@VIRL1,1,2)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,3)=":"
 ;
 I $G(@VIRL1)?1"0-.".E S @VIRL1="-"
 I $G(@VIRL1)?1"0-:".E S @VIRL1="-"
 Q
 ;
CLEAR(V) ;
 N V0,J S V0=""
 S V=$$CLEAR^%L1FRM($$CNWEB^%L1FRM(V))
 F J=1:1:$L(V)  I $A(V,J)>31,$A(V,J)<127 S V0=V0_$E(V,J)
 S V0=$TR(V0,"?#$^*=~\","")
 S V0=$$SPA^%L1FRM(V0)
 ;;S V0=$E(V0,J,255)
 Q V0
 ;
PROCNMB(LK) ;
 S LK=$$SPA^%L1FRM(LK)
 I $L(LK)>3,$$D^W4L(LK) Q LK
 S LK=$TR(LK,"-\*!","")
 I $L(LK)>3,$$D^W4L(LK) Q LK
 I $L(LK)=7,$$D^W4L("03"_LK) Q "03"_LK
 I $L(LK)=7,$$D^W4L("03-"_LK) Q "03-"_LK
 I $L(LK)=7,$$D^W4L("04"_LK) Q "04"_LK
 I $L(LK)=7,$$D^W4L("04-"_LK) Q "04-"_LK
 I $L(LK)=7,$$D^W4L("08"_LK) Q "08"_LK
 I $L(LK)=7,$$D^W4L("08-"_LK) Q "08-"_LK
 I $L(LK)=7,$$D^W4L("09"_LK) Q "09"_LK
 I $L(LK)=7,$$D^W4L("09-"_LK) Q "09-"_LK
 I $L(LK)>7,$$D^W4L($E(LK,3,13)) Q $E(LK,3,13)
 I $L(LK)>7,$$D^W4L($E(LK,4,13)) Q $E(LK,4,13)
 Q ""
 ;
INVH(RKV) ;
 Q $$INVH^%L1FRM(RKV)
 ;
DLV(STAM) ;
 I $$^W4DLVCSR!$$TELEPHONE^W4PRM Q 1
 Q 0
 ;
HB(TX) ; 
 S TX=$$SPA^%L1FRM(TX) 
 S TX=$$CNWEB^%L1FRM(TX) 
 S TX=$$INVH(TX) 
 Q TX 
 ;
CITY(CITY) ; 
 N CITY1 S CITY1=$$HB($G(CITY))
 Q $$CITY^W3SP(CITY1)
 ;
 ;
CRLK(NMB,JB,GLORD) ;
 S GLORD=$G(GLORD)
 S NMB1=$$PROCNMB(NMB)
 I NMB1="" S NMB1=$TR(NMB,"-\*!","")
 ;
 I $G(TELB)="" S TELB=NMB
 N NM S NM=NAME
 N HNH S HNH=$$HNH^W3HZMST(JB,GLORD)
 N HNHAH S HNHAH=$$AHUZ^W3HZMST(JB,GLORD)
 N TOT S TOT=$$TOTORD^W3HZMST(JB,GLORD)
 I $$COMP^W3PRM,$G(COMP)'="" S NM=COMP
 I NM="",$L($G(MAZMIN)) S NM=MAZMIN ; -- 16/01/24
 ;
 Q:'$L($G(NM))
 ;
 N GL D GL^W3L
 N SV S SV=1
 N SHEM0,CITY0,KTV0,BAIT0
 S SHEM0=$$LKH^W4L(NMB1)
 S CITY0=$$CITY^W4L(NMB1)
 S KTV0=$$KTV^W4L(NMB1)
 S BAIT0=$$BAIT^W4L(NMB1)
 ;
 I $D(@GL@(NMB1)),'$G(SVLK) D  Q:'SV
 .I $L(SHEM0)>1&($L(CITY0)>2)&$L(KTV0)&$L(BAIT0) S SV=0
 ;
 I $D(@GL@(NMB1)),'$L($G(STREET)) D  Q
 .I NMB1=$$NMBKSK^W4KIOSKO Q
 .I $L($G(PELE)) D PUT^W4L(NMB1,PELE,"PELE")
 .I $L($G(COMP)) D PUT^W4L(NMB1,$$HB(COMP),"COMP")
 
 N PRM S PRM="LKH="_$$HB(NM)_"<>"
 ;
 I CITY="" S CITY="TAKEAWAY"
 ;
 I CITY'="TAKEAWAY" S PRM=PRM_"KTV="_$$HB($G(STREET))_"<>"
 S PRM=PRM_"TELB="_TELB
 ;
 I CITY'="TAKEAWAY" D
 .S PRM=PRM_"<>DIRA="_$G(FLAT)_"<>KOMA="_$$HB($G(FLOOR))_"<>"
 .S PRM=PRM_"BAIT="_$G(HOME)_"<>CNISA="_$$HB($G(ENTRANCE))_"<>"
 .S PRM=PRM_"IR="_CITY_"<>"
 .S PRM=PRM_"<>MIKUD="_$G(MIKUD)
 
 S PRM=PRM_"<>CMNT="_$$HB($G(COMMENT))_"<>"
 S PRM=PRM_"PELE="_$G(PELE)_"<>COMP="_$$HB($G(COMP))_"<>"
 S PRM=PRM_"FAX="_$G(FAX)
 I $L($G(EMAIL)) S PRM=PRM_"<>EMAIL="_$G(EMAIL)
 S PRM=PRM_"<>TZ="_$G(TZ)
 S PRM=PRM_"<>PRIVATE="_$G(KINDORD)
 ;;S ^AA("W3SETHD","PRM")=PRM
 ;
 D PUT2^W4L(NMB1,PRM)
 Q
 ;
SETTV(HZM) ;
 N TIME S TIME=$G(@$$^W4GL("W4TVH2O")@(HZM,"TIME"))
 I TIME'="" Q  ; -- 19.02.24
 ;;N SEC S SEC=$$DIF^%L1TIME($H,TIME,1) ; -- 19.02.24
 ;;I TIME,SEC<10 Q  ; -- 19.02.24
 ;;S ^AA("W3SETHD-SETTV",HZM,$H)=TIME
 I $$ITRA^W4HZMST(HZM)>.5 Q
 S RES=$$^W4TVORD(HZM)
 Q
 ;
SETDA(HZM) ;
 N TIME S TIME=$G(@$$^W4GL("W4DAH2O")@(HZM,"TIME"))
 I TIME'="" Q  ; -- 19.02.24
 ;;N SEC S SEC=$$DIF^%L1TIME($H,TIME,1) ; -- 19.02.24
 ;;I TIME,SEC<10 Q  ; -- 19.02.24
 ;;S ^AA("W3SETHD-SETDA",HZM,$H)=TIME
 S RES=$$^W4DAORD(HZM)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SETHD0
W3SETHD(PRM) ; [ 05.04.23 13:58 ] [ 24.01.23 12:54 ] [ 11.07.22 13:01 ] 
 N (JB,%ARG,%REM,PRM)
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 N I,VIR,SVLK S SVLK=0
 D PUT^%W3DEB("W3SETHD","PRM=PRM")
 I PRM["<>" S SVLK=$P(PRM,"<>",2),PRM=$P(PRM,"<>")
 ;
 N T S T=$$T^W3HZHD
 ;
 F I=1:1:$L(PRM,"~") D
 .N VIRL,VIRR,TYPE S TYPE=""
 .S VIRL=$$SPA^%L1FRM($P(T,";",I)) Q:VIRL?.P
 .I VIRL[":" S TYPE=$P(VIRL,":",2),VIRL=$P(VIRL,":")
 .S VIRR=$P(PRM,"~",I)
 .I TYPE="T" S VIRR=$$TS^%L1TIME(VIRR)
 .I VIRR="" S @VIRL="" Q
 .S VIRR=$$RPL^%L1FRM(VIRR,"""","%22")
 .S VIRR=$$RPL^%L1FRM(VIRR,"''","%22")
 .S @(VIRL_"="""_VIRR_"""")
 .S @VIRL=$$CLEAR(@VIRL)
 .D DATTM(VIRL)
 ;
 I $G(EMAIL)'="" D
 .S EMAIL=$TR(EMAIL,"'","")
 .S EMAIL=$TR(EMAIL,"""","")
 ;
 I $G(CITY)'="" D
 .;;S ^AA("W3SETHD","CITY0")=CITY
 .S CITY=$$CITY(CITY)
 ;;S ^AA("W3SETHD","CITY")=CITY
 ;
 I $$GETP^%W1PRM("HZM")'>0,SHAA<5,$$^%L1DC(DAT,3)=$$^W4DZ,$P($H,",",2)>(9*3600) D
 .S DAT=$$^%L1DC($$^%L1DC(DAT,3)+1,1)
 ;
 S AHUZ=$$AHUZ^W4MENUBT
 ;
 D PUT^%W3DEB("W3SETHD","NMB=NMB&NAME=NAME&DAT=DAT&SHAA=SHAA&CITY=CITY&PELE=PELE&STREET=STREET&COMMENT=COMMENT&ENTRANCE=ENTRANCE&COMP=COMP&FLAT=FLAT&FLOOR=FLOOR&FAX=FAX&EMAIL=EMAIL&MIKUD=MIKUD&TELB=TELB")
 ;
 S MSD=$$GET^%W1PRM("MSD")
 ;
 S NMB1="",CODE=$G(CODE)
 S COMMENT=$$CLRDLM^%L1FRM(COMMENT,"{","}")
 ;
 I $$^W4DLVCSR,'$$TELEPHONE^W4PRM D  ; -- KUPA ( LO ONLINE )
 .Q:'$G(NMB)  Q:NMB=$$LKKLALI^W4PRM
 .D CRLK(NMB,JB)
 ;
 I NMB1 S CODE=NMB1
 D PUT^%W1PRM("NMB",CODE) ; *** 22/11/15 *** LEV
 ;
 N NOCHNDLV
 I $$^W4DLVCSR,$D(@$$^W4TMPORD)=11 S NOCHNDLV=1
 ;
 N CITYI S CITYI=$$INVH^%L1FRM($G(CITY))
 ;
 D
 .N CITY S CITY=$G(CITYI)
 .D HEAD^W3HZTFR ;!!!  -----------------------> ^TMPORD, AHUZ
 ;
 K NOCHNDLV
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 ;
 I $$^W4DLVCSR,$$^W4ISORD(HZM) D
 .N A S A=$$^W4NEWHZ(JB,HZM,1)
 ;
 I $$^W4DLVCSR,'$$TELEPHONE^W4PRM D SAVE^W4TMPORD
 I $G(CODE)="",$$GETP^%W1PRM("CODE") S CODE=$$GETP^%W1PRM("CODE")
 ;
 I SVLK,$G(CODE),'$$^W4DLVCSR!$$TELEPHONE^W4PRM D  ; -- ONLINE OR CALLCENTER
 .N STR S STR=""
 .;
 .I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT1" D  Q
 ..I $G(NAME)'?.P S STR=STR_"LKH="_$$HB($G(NAME))
 ..I $G(NMB)'?.P S STR=STR_"<>TELB="_NMB
 ..I $G(PELE)'="" S STR=STR_"<>PELE="_$G(PELE)
 ..S STR=STR_"<>COMP="_$$HB($G(COMP))
 ..S STR=STR_"<>EMAIL="_$$HB($G(EMAIL))
 ..D PUT^%W3DEB("W3SETHD-SVLK","STR=STR")
 ..D PUT2^W3L(CODE,STR)
 .
 .I $$GETP^%W1PRM("W5ORDDT")="W5ORDDT2" D  Q
 ..I $G(STREET)'?.P S STR=STR_"<>KTV="_$$HB($G(STREET))
 ..S STR=STR_"<>DIRA="_$G(FLAT)
 ..S STR=STR_"<>KOMA="_$$HB($G(FLOOR))
 ..S STR=STR_"<>BAIT="_$G(HOME)
 ..S STR=STR_"<>CNISA="_$G(ENTRANCE)
 ..S STR=STR_"<>IR="_CITY
 .
 .I $G(NAME)'?.P S STR=STR_"LKH="_$$HB($G(NAME))
 .I $G(STREET)'?.P S STR=STR_"<>KTV="_$$HB($G(STREET))
 .I $G(NMB)'?.P S STR=STR_"<>TELB="_$S($G(TELB):TELB,1:NMB)
 .I $G(FLAT)'="-" S STR=STR_"<>DIRA="_$G(FLAT)
 .I $G(FLOOR)'="-" S STR=STR_"<>KOMA="_$$HB($G(FLOOR))
 .I $G(HOME)'="-" S STR=STR_"<>BAIT="_$G(HOME)
 .I $G(ENTRANCE)'="-" S STR=STR_"<>CNISA="_$G(ENTRANCE)
 .I $G(COMMENT)'="-" S STR=STR_"<>CMNT="_$$HB($G(COMMENT))
 .I $G(CITY)'?.P S STR=STR_"<>IR="_$G(CITY)
 .I $G(PELE)'="-" S STR=STR_"<>PELE="_$G(PELE)
 .I $G(COMP)'="-" S STR=STR_"<>COMP="_$$HB($G(COMP))
 .;;I $G(TZ)'="-" S STR=STR_"<>TZ="_$$INVH($G(TZ))
 .D PUT^%W3DEB("W3SETHD-SVLK","STR=STR")
 .D PUT2^W3L(CODE,STR)
 Q
 ;
 ;
DATTM(VIRL) ;
 N VIRL1 S VIRL1=VIRL
 I VIRL?1U.U1"IDdd"!(VIRL?1U.U1"IDmm")!(VIRL?1U.U1"IDyy")!(VIRL?1U.U1"mnid")!(VIRL?1U.U1"hrid") S VIRL1=$E(VIRL,1,$L(VIRL)-4)
 I VIRL?1U.U1"IDdd" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),1,2)
 .S $E(@VIRL1,1,2)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,3)="."
 I VIRL?1U.U1"IDmm" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),4,5)
 .S $E(@VIRL1,4,5)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,6)="."
 I VIRL?1U.U1"IDyy" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),7,8)
 .S $E(@VIRL1,7,8)=$TR($J(@VIRL,2)," ",0)
 I VIRL?1U.U1"mnid" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),4,5)
 .S $E(@VIRL1,4,5)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,3)=":"
 I VIRL?1U.U1"hrid" D  Q
 .I $G(@VIRL)="-" S @VIRL=$E($G(@VIRL1),1,2)
 .S $E(@VIRL1,1,2)=$TR($J(@VIRL,2)," ",0)
 .S $E(@VIRL1,3)=":"
 ;
 I $G(@VIRL1)?1"0-.".E S @VIRL1="-"
 I $G(@VIRL1)?1"0-:".E S @VIRL1="-"
 Q
 ;
CLEAR(V) ;
 N V0,J S V0=""
 S V=$$CLEAR^%L1FRM($$CNWEB^%L1FRM(V))
 F J=1:1:$L(V)  I $A(V,J)>31,$A(V,J)<127 S V0=V0_$E(V,J)
 S V0=$TR(V0,"?#$^*=~\","")
 S V0=$$SPA^%L1FRM(V0)
 ;;S V0=$E(V0,J,255)
 Q V0
 ;
PROCNMB(LK) ;
 S LK=$$SPA^%L1FRM(LK)
 I $L(LK)>3,$$D^W4L(LK) Q LK
 S LK=$TR(LK,"-\*!","")
 I $L(LK)>3,$$D^W4L(LK) Q LK
 I $L(LK)=7,$$D^W4L("03"_LK) Q "03"_LK
 I $L(LK)=7,$$D^W4L("03-"_LK) Q "03-"_LK
 I $L(LK)=7,$$D^W4L("04"_LK) Q "04"_LK
 I $L(LK)=7,$$D^W4L("04-"_LK) Q "04-"_LK
 I $L(LK)=7,$$D^W4L("08"_LK) Q "08"_LK
 I $L(LK)=7,$$D^W4L("08-"_LK) Q "08-"_LK
 I $L(LK)=7,$$D^W4L("09"_LK) Q "09"_LK
 I $L(LK)=7,$$D^W4L("09-"_LK) Q "09-"_LK
 I $L(LK)>7,$$D^W4L($E(LK,3,13)) Q $E(LK,3,13)
 I $L(LK)>7,$$D^W4L($E(LK,4,13)) Q $E(LK,4,13)
 Q ""
 ;
INVH(RKV) ;
 Q $$INVH^%L1FRM(RKV)
 ;
DLV(STAM) ;
 I $$^W4DLVCSR!$$TELEPHONE^W4PRM Q 1
 Q 0
 ;
HB(TX) ; 
 S TX=$$SPA^%L1FRM(TX) 
 S TX=$$CNWEB^%L1FRM(TX) 
 S TX=$$INVH(TX) 
 Q TX 
 ;
CITY(CITY) ; 
 N CITY1 S CITY1=$$HB($G(CITY))
 Q $$CITY^W3SP(CITY1)
 ;
 ;
CRLK(NMB,JB,GLORD) ;
 S GLORD=$G(GLORD)
 S NMB1=$$PROCNMB(NMB)
 I NMB1="" S NMB1=$TR(NMB,"-\*!","")
 ;
 S NAME=$$NAME^W3HZMST(JB,GLORD)
 ; 
 I $G(TELB)="" S TELB=NMB
 N NM S NM=NAME
 N HNH S HNH=$$HNH^W3HZMST(JB,GLORD)
 N HNHAH S HNHAH=$$AHUZ^W3HZMST(JB,GLORD)
 N TOT S TOT=$$TOTORD^W3HZMST(JB,GLORD)
 I $$COMP^W3PRM,$G(COMP)'="" S NM=COMP
 ;
 Q:'$L($G(NM))
 ;
 N GL D GL^W3L
 N SV S SV=1
 N SHEM0,CITY0,KTV0,BAIT0
 S SHEM0=$$LKH^W4L(NMB1)
 S CITY0=$$CITY^W4L(NMB1)
 S KTV0=$$KTV^W4L(NMB1)
 S BAIT0=$$BAIT^W4L(NMB1)
 ;
 I $D(@GL@(NMB1)),'$G(SVLK) D  Q:'SV
 .I $L(SHEM0)>1&($L(CITY0)>2)&$L(KTV0)&$L(BAIT0) S SV=0
 ;
 I $D(@GL@(NMB1)),'$L($G(STREET)) D  Q
 .I $L($G(PELE)) D PUT^W4L(NMB1,PELE,"PELE")
 .I $L($G(COMP)) D PUT^W4L(NMB1,$$HB(COMP),"COMP")
 
 N PRM S PRM="LKH="_$$HB(NM)_"<>"
 I CITY="" S CITY="TAKEAWAY"
 I CITY'="TAKEAWAY" S PRM=PRM_"KTV="_$$HB($G(STREET))_"<>"
 S PRM=PRM_"TELB="_TELB
 ;
 I CITY'="TAKEAWAY" D
 .S PRM=PRM_"<>DIRA="_$G(FLAT)_"<>KOMA="_$$HB($G(FLOOR))_"<>"
 .S PRM=PRM_"BAIT="_$G(HOME)_"<>CNISA="_$$HB($G(ENTRANCE))_"<>"
 .S PRM=PRM_"IR="_CITY_"<>"
 .S PRM=PRM_"<>MIKUD="_$G(MIKUD)
 
 S PRM=PRM_"<>CMNT="_$$HB($G(COMMENT))_"<>"
 S PRM=PRM_"CMNTIN="_$$HB($G(CMNTIN))_"<>"
 S PRM=PRM_"PELE="_$G(PELE)_"<>COMP="_$$HB($G(COMP))_"<>"
 S PRM=PRM_"FAX="_$G(FAX)
 I $L($G(EMAIL)) S PRM=PRM_"<>EMAIL="_$G(EMAIL)
 S PRM=PRM_"<>TZ="_$G(TZ)
 S PRM=PRM_"<>PRIVATE="_$G(KINDORD)
 ;;S ^AA("W3SETHD","PRM")=PRM
 ;
 D PUT2^W4L(NMB1,PRM)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SETIDK
W3SETIDK ; [ 05.08.23 06:05 ] [ 04.08.23 16:00 ] [ 03.08.23 16:20 ] 
 ; --- %ARG("SETKIND")=1 - SET PRITIM TO B/L ; =2 - TO REPORT
 ; --- %ARG("SETKIND")=3 - SET PRITIM TO SALE
 N (JB,%ARG,SRCH)
 ;;W !,"W3SETIDK: SET="_$G(%ARG("SET"))_"  MSD="_$G(%ARG("MSD")),!
 I '$G(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3SETIDK","%ARG=[%ARG")
 I '$G(%ARG("SET")) Q
 I $G(%ARG("NEWSET")) Q
 ;;I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 ;
 ;;D NOSELECT^%W1JS
 ;
 D GL
 S SETKIND=$$SETKIND
 ;
 D PUT^%W1PRM("SET",%ARG("SET"))
 I $G(%ARG("SETKIND")) D PUT^%W1PRM("SETKIND",%ARG("SETKIND"))
 ;
 S SET=%ARG("SET")
 ;
 I $G(%ARG("FIRST")) D
 .D
 ..K @GL
 ..M @GL=@$$GLSET@(SET)
 ..I $G(%ARG("COPYSET")),$D(@GL)<10 D  Q
 ...N HD S HD=$G(@GL) K @GL
 ...M @GL=@$$GLSET@(%ARG("COPYSET"))
 ...I HD'="" S $P(@GL,"\")=$P(HD,"\")
 .
 .I $$SETKIND=1 D ^W3CRSET
 ;
 W "<div align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""">",!
 W " <tr style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_";text-align:center"" >"
  W " <td "
  I SETKIND=1 W "colspan=""3"" "
  W ">"
  I SETKIND=1 D
  .W $$^%W1DICT("SETITEMSTABLE")
  I SETKIND=2 D
  .W $$^%W1DICT("SETREPORTTABLE")
  I SETKIND=3 D
  .W $$^%W1DICT("SETITEMSTOSALE")
  W "</td>"
 W "</tr>",!
 ;
 W " <tr>"
 W "  <td "
  I SETKIND=1 W "colspan=""3"" "
 W "  >"_$$^%W1DICT("SETNAME")_"&nbsp;"
 W "   <input type=""text"" id=""nmset"" style=""text-align:center"" "
 W "    size=""20"" value="""_$$SETNAME_""" onChange=""CngNmSet(this.value)"" "
 W "   />"
 W "  </td>",!
 ;
 I SETKIND=1 D
 .W "  <td>"_$$^%W1DICT("SETMAX")_"</td>"
 .W "  <td dir=""LTR"" >"
 .W "   <input type=""text"" id=""qnmax"" style=""text-align:center"" size=""2"" onClick=""this.select()"" onKeyUp=""CngQnMax(this.value)"" value="""_$$QNMAX_""" />"
 .W "  </td>",!
 ;
 W " </tr>",!
 ;
 I SETKIND=1 D
 .D GETTMPAI
 .I $D(@TMPAI)>9 D
 ..W " <tr>"
 ..W "  <td colspan=""4"" >"
 ..W $$^%W1DICT("SETINUSE")_" : "
 ..W "    <select>",!
 ..D
 ...N AI,NMAI
 ...S AI="" F  S AI=$O(@TMPAI@(AI)) Q:AI=""  D
 ....S NMAI=$$SHEM^W4P(AI)
 ....W "<option>"_AI_" "_$$H2U^%L1FRM(NMAI)_"</option>",!
 ..W "    </select>",!
 ..W "  </td>"
 ..W "</tr>",!
 .
 .D CRGL1
 .I $D(@$$^W4MAIN("TMPSET1"))<10 D
 ..W "<tr>"
 ..W "  <td colspan=""4"">"
 .. W $$^%W1DICT("COPYFROM") W "&nbsp;"
 .. W "<select id=""copyfrom"" >",!
 .. W "<option value="""" selected=""selected"" >--- "_$$^%W1DICT("CHOICESET")_" ---</option>",!
 .. N NS,A S NS="" F  S NS=$O(@$$^W4GL("P1SETA")@(NS)) Q:NS=""  I $D(^(NS))>9 D
 ... S A=$G(^(NS))
 ... W "<option value="""_NS_""">"_NS_" "_$$H2U^%L1FRM($P(A,"\"))_"</option>",!
 .. W "</select>",!
 .. W "&nbsp;"
 .. W "<input type=""button"" value="""_$$^%W1DICT("SHOW")_""" "
 .. W " style=""color:blue"" onClick=""ShowSet()"" />"
 .. W " &nbsp;"
 .. W "<input type=""button"" value="""_$$^%W1DICT("DOCOPYTO")_""" "
 .. W " style=""color:green"" onClick=""CopySet()"" />"
 ..W "  </td>"
 .W " </tr>"
 ;
 W "</table>",!
 ;
 ;
 W $$^W4DVTBFX($S($$1024^W4WDSCR:80,1:90)_"%"),!
 W "<table id=""TblSet"" dir="""_$$^%W1DIR_""" border=""1"" "
  W " onmousedown='return false'",!
  W " onclick='return true'",!
  W " cellspacing=""0"" width=""100%"" "
  W " style=""background-color:white;color:black"">",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""7%"">#</th>"
 W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""26%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 I SETKIND=1 D
 .W "<th width=""10%"">"_$$^%W1DICT("ADDPRICE")_"</th>"
 .W "<th width=""10%"">"_$$^%W1DICT("QNDEF")_"</th>"
 I SETKIND=2!(SETKIND=3) D
 .W "<th width=""10%"">"_$$^%W1DICT("PRICE")_"</th>"
 ;
 W "<th width=""4%"">"_$$^%W1DICT("DELETE")_"</th>"
 ;
 I SETKIND=1 D
 .W "<th width=""16%"">&nbsp;</th>"
 W "</tr>",!
 W "</thead>",! 
 ;
 N N,I
 D CRGL1
 ;
 S NP="",I=0 F  S NP=$O(@GL1@(NP)) Q:NP=""  D
 .S N=$G(^(NP)) Q:N=""
 .S I=I+1
 .W "<tr id=""trset"_N_""" "
 . W $$STYLE^W4PRTVW(N)
 .W ">"
 .W "<td style=""background-color:lightyellow;font-size:"_$$^W3FSZ(9)_""">"
 . W " <img src=""w4printer.jpg"" onClick=""ShowPrint('"_N_"')"" />"
 .W " "_I_"</td>"
 .W "<td id=""cd"_N_""" "
 .I $$SETKIND=1 D
 ..W " onmousedown=""MouseDown(this,'"_I_"',event)"" "
 ..W " onmouseover=""this.style.cursor='pointer';this.style.backgroundcolor='yellow'"" "
 ..W " onmouseout=""this.style.backgroundColor='white'"" "
 .W ">&nbsp;"_N_"&nbsp;</td>",!
 .
 .W " <td align=""center"">&nbsp;"
 . W " <span id=""name"_N_""">"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</span>"
 .W " &nbsp;</td>",!
 .
 .W "<td align=""center"" dir=""LTR"">"
 . I $$SETKIND=1 D
 ..N SZ S SZ=4 ;;I $$1024^W4WDSCR S SZ=3
 .. W " <input type=""text"" id=""mhset"_N_""" size="""_SZ_""" "
 .. W "value="""_$J($$MHSET(SET,N),2,2)_""" dir=""LTR"" "
 .. W "style=""text-align:center"" onClick=""this.select()"" "
 .. W "onKeyUp=""parent.SetChn()"" />"
 . I $$SETKIND=2!($$SETKIND=3) D
 .. W $J($$MH^W4P(N),2,2)
 .W "</td>",!
 .
 .I SETKIND=1 D
 ..W "<td align=""center"" dir=""LTR"" >"
 ..W " <input type=""text"" id=""qnset"_N_""" size=""2"" value="""_$$QNSET(SET,N)_""" dir=""LTR"" style=""text-align:center""  onClick=""this.select()"" onKeyUp=""parent.TestQn(this)"" />"
 ..W "</td>",!
 .
 .N ID S ID="chset"_N
 .N PROC S PROC="OnClickTbl('"_N_"','TblSet','trset','chset')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .I SETKIND=1 D
 ..W "<td align=""center"" id=""newnmb"_N_""">"
 ..N SZ S SZ=2 ;;I $$1024^W4WDSCR S SZ=1
 .. W "<input type=""text"" size="""_SZ_""" id=""newnp"_N_""" value="""" onClick=""this.select()"" />"
 .. W " " 
 .. W "<input type=""button"" value=""#"" onClick=""NewNp('"_N_"','"_I_"')"" />"
 ..W "</td>",!
 .
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
 ;
GL S GL="^[$$^W3MAIN]TMPSET($$^%W1JB)"
 Q
GL1 S GL1="^[$$^W3MAIN]TMPSET1($$^%W1JB)"
 Q
GL2 S GL2="^[$$^W3MAIN]TMPSET2($$^%W1JB)"
 Q
 ;
FIRSTGR(STAM) ;
 N N
 S N=$O(@$$GLSET@(""))
 Q N
 ;
 ;
SAVE(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 N SET S SET=$$GET^%W1PRM("SET") I '$G(SET) Q 0
 S SETKIND=$$SETKIND
 D PUT^%W3DEB("W3SETIDK-SAVE","PRM=PRM & SET=SET & SETKIND=SETKIND")
 ;
 I SETKIND=1 D
 .S ST=PRM
 .S CD=$$SPA^%L1FRM($P(ST,";"))
 .S MH=+$P(ST,";",3)
 .S QN=$$SPA^%L1FRM($P(ST,";",4))
 .D SETMH(SET,CD,MH)
 .D SETQN(SET,CD,QN)
 ;
 Q 1
 ;
 ;
SAVEND(PRM) ;
 D PUT^%W3DEB("W3SETIDK-SAVEND","PRM=PRM")
 S PRM=$$CLEAR^%L1FRM(PRM)
 N SETNAME,MAX,SETKIND
 S SETNAME=$$CNWEB^%L1FRM($P(PRM,";"))
 S MAX=$P(PRM,";",2)
 N SET D GL,GL1
 S SET=$$GET^%W1PRM("SET") I '$G(SET) Q 0
 S SETKIND=$$SETKIND
 ;
 N GLSET S GLSET=$$GLSET
 I $D(@GL)<10 Q 0
 K @GLSET@(SET) M @GLSET@(SET)=@GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S @(GLSET_"I")@(N,SET)=""
 K @GL,@GL1
 ;
 S @$$GLSET@(SET)=$$INVH^%L1FRM(SETNAME)
 ;
 I SETKIND=1 S $P(@$$GLSET@(SET),"\",2)=MAX
 I $D(@$$GLSET@(SET))<10 K @$$GLSET@(SET)
 ;
 I SETKIND=1 D UPDATE(SET)
 Q 1
 ;
 ;
SETMH(SET,CD,MH) S @$$^W4GL("MHSET")@(SET,CD)=$J(MH,2,2)
 Q
 ;
SETQN(SET,CD,QN) S @$$^W4GL("QNSET")@(SET,CD)=QN
 Q
 ;
UPDATE(SET) ;
 D UPD(SET,"P1EZA")
 D UPD(SET,"P1EZT")
 Q
 ;
MVPR2KV(PRM) ;
 D PUT^%W3DEB("W3SETIDK-MVPR2KV","PRM=PRM")
 N SETKIND S SETKIND=$$SETKIND
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL D CRGL1
 S PRM=$E(PRM,1,$L(PRM)-1)
 N SET S SET=$P(PRM,";")
 N QNMAX S QNMAX=$P(PRM,";",2)
 S PRM=$P(PRM,";",3,$L(PRM,";"))
 ;;W "SET="_SET_"  PRM="_PRM,!
 N OK,NP S OK=0
 I SET="" Q "0:NOSET"
 I PRM="" Q "0:NOPRM"
 ;
 S NP=$O(@GL1@(99999999),-1)
 I SETKIND=1 D
 .S $P(@GL,"\",2)=QNMAX
 ;
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@$$^W4GL("PAR")@(CD))
 .S NP=NP+1,OK=1
CHKEX .I $$EXIST(NP,CD) S NP=NP+1 G CHKEX
 .S @GL@(CD)=NP
 .I SETKIND=1 S @GL1@(NP)=CD
 Q OK
 ;
 ;
EXIST(NP,CD)
 N OK S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .I $G(^(N))=NP,N'=CD S OK=1
 Q OK
 ;
MVKV2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL D CRGL1
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .N NP S NP=+$G(@GL@(CD))
 .K @GL@(CD) S OK=1
 D CRGL1
 Q OK
 ;
GROUP ;
 W "<select "
 ;
 I FIRSTGR="KVPRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt(this.value)"""
 .W " >",!
 .I '$$^W4MUCHIT D
 ..W "<option value=""ALL"" selected=""selected"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 ..D PUT^%W1PRM("KV","NO")
 ;
 D ^W4ABCKVZ
 N N,II,NN S N="",II=0 F  S N=$O(@$$TMPABC^W4ABCKVZ@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .;;I $G(@$$^W4GL("W3SUG")@(NN))=0 Q
 .S II=II+1
 .W "<option value="""_NN_""""
 .W " >"_$$^W3SHOWKV(NN)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
 ;
SET ;
 N NEWSET S NEWSET=$$GETP^%W1PRM("NEWSET")
 W "<select id=""grset"" onChange=""AskSave();ShowPage(1)"" >",!
 N NN,II S NN="",II=0 F  S NN=$O(@$$GLSET@(NN)) Q:NN=""  D
 .S II=II+1
 .W "<option value="""_NN_""""
 .D
 ..I $G(%ARG("SET")),NN=%ARG("SET") W " selected=""selected""" Q
 ..I $G(FIRSTSET),II=1,'NEWSET W " selected=""selected""" Q
 ..I NEWSET,NN=NEWSET W " selected=""selected"""
 .W " >"_NN_" "_$$H2U^%L1FRM($$NMSET(NN))_"</option>",!
 W "</select>",!
 Q
 ;
 ;
NMSET(NN) Q $P($G(@$$GLSET@(NN)),"\")
 ;
SETNMSET(VL) D GL S $P(@GL,"\")=$$INVH^%L1FRM(VL) Q 1
 ;
QNMAX(STAM) D GL Q $P($G(@GL),"\",2)
 ;
SETQNMAX(VL) D GL S $P(@GL,"\",2)=VL Q 1
 ;
SETNAME(STAM) D GL Q $$H2U^%L1FRM($P($G(@GL),"\"))
 ;
MHSET(SET,PAR) ;
 N A S A=""
 I $$SETKIND=1 D
 .S A=$G(@$$^W4GL("MHSET")@(SET,PAR))
 .I 'A,$G(@$$^W4PRM@("MH2SET")) S A=$J($$MH^W4P(PAR),2,2)
 I $$SETKIND=2!($$SETKIND=3) S A=$J($$MH^W4P(PAR),2,2)
 I A="" Q "&nbsp;"
 Q A
 ;
QNSET(SET,PAR) ;
 N A S A=$G(@$$^W4GL("QNSET")@(SET,PAR))
 I A=0 Q "&nbsp;"
 Q A
 ;
SWAP(CD,DRC) ;
 D CRGL1
 S NST=$$GETPN(CD)
 S NST0=$O(@GL1@(NST),DRC) Q:'NST0
 S CD0=$G(@GL1@(NST0))
 S @GL1@(NST0)=CD
 S @GL1@(NST)=CD0
 S @GL@(CD0)=NST
 S @GL@(CD0,"CUR")=1
 S @GL@(CD)=NST0
 S @GL1@(NST0,"CUR")=1
 Q
 ;
SWAPN(PRM) ;
 N (JB,%ARG,PRM)
 D CRGL1 S NST=""
 D CLEAR
 S NST=+PRM,NST0=$P(PRM,";",2)
 S PR=0 I NST0>NST S PR=1
 G:'NST SWPNE G:'NST0 SWPNE
 S CD0=$G(@GL1@(NST0)) G:'CD0 SWPNE
 S OK=1
 D ADD^%L1GSEQ(GL1,NST+'PR,CD0,OK)
 D DEL^%L1GSEQ(GL1,NST0+PR)
 S @GL1@(NST,"CUR")=1
 S HD=$G(@GL)
 K @GL N CD
 S N="" F  S N=$O(@GL1@(N)) Q:N=""  D
 .S CD=$G(^(N)) Q:'CD
 .S @GL@(CD)=N
 ;
 S @GL@(CD0,"CUR")=1
 S @GL=HD
 Q 1
 ;
SWPNE Q 0
 ;
GETPN(CD) ;
 D GL
 Q +$G(@GL@(CD))
 ;
CLEAR ;
 D GL1 N N S N="" F  S N=$O(@GL1@(N)) Q:N=""  K ^(N,"CUR")
 Q
 ;
CRGL1 ;
 D GL,GL1,GL2 K @GL1,@GL2
 N N,NP,I S I=1,NP=0
 ;
 I $$SETKIND=2!($$SETKIND=3) D  Q
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S NP=NP+1,@GL1@(NP)=N
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S NP=+$G(^(N))
CC .I $D(@GL2@(NP)) S NP=NP+1 G CC
 .S @GL2@(NP)=N
 ;
 S I=0
 S N="" F  S N=$O(@GL2@(N)) Q:N=""  D
 .N CD S CD=$G(^(N)) Q:CD=""
 .S I=I+1,@GL1@(I)=CD S @GL@(CD)=I
 ;
 K @GL2
 Q
 ;
 ;
UPD(SET,TREE) ;
 N N,N1,N2,NSET
 S N="" F  S N=$O(@$$^W4GL(TREE)@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@$$^W4GL(TREE)@(N,N1)) Q:N1=""  D
 ..I $E(N1)'="A" Q
 ..S NSET=$E(N1,2,7) Q:NSET=""  Q:SET'=NSET
 ..S N2="" F  S N2=$O(@$$^W4GL("P1SETA")@(SET,N2)) Q:N2=""  D
 ...I $D(@$$^W4GL("MHSET")@(SET,N2)) S @$$^W4GL("MHT")@(N,N2)=@$$^W4GL("MHSET")@(SET,N2)
 ...I $D(@$$^W4GL("QNSET")@(SET,N2)) S @$$^W4GL("QNDEF")@(N,N2)=@$$^W4GL("QNSET")@(SET,N2)
 Q
 ;
NEWSET(PRM) ;
 N CD,NM
 S CD=$P(PRM,";")
 S NM=$$INVH^%L1FRM($P(PRM,";",2))
 I 'CD Q -1
 I '$L(NM) Q -2
 I $D(@$$GLSET@(CD)) Q -3
 S @$$GLSET@(CD)=NM
 D PUT^%W1PRM("NEWSET",CD)
 Q 1
 ;
DELSET(PRM) ;
 N CD,NM
 S CD=$P(PRM,";")
 I 'CD Q -1
 K @$$GLSET@(CD)
 Q 1
 ;
GETTMPAI ;
 S TMPAI=$$^W4MAIN("TMPAI") K @TMPAI
 N N S N="" F  S N=$O(@$$^W4GL("P1EZA")@(N)) Q:N=""  I $D(@$$^W4GL("P1EZA")@(N,"A"_SET)) S @TMPAI@(N)=""
 S N="" F  S N=$O(@$$^W4GL("P1EZT")@(N)) Q:N=""  I $D(@$$^W4GL("P1EZT")@(N,"A"_SET)) S @TMPAI@(N)=""
 Q
 ;
GLSET(STAM) ;
 N SETKIND
 S SETKIND=$$SETKIND
 I SETKIND=1 Q $$^W4GL("P1SETA")
 I SETKIND=3 Q $$^W4GL("P1SETM")
 Q $$^W4GL("P1SET")
 ;
SETKIND(STAM) ;
 I $G(%ARG("SETKIND")) Q %ARG("SETKIND")
 I $$GET^%W1PRM("SETKIND") Q $$GET^%W1PRM("SETKIND")
 Q 1
 ;
INIT ;-- IF FIRST
 K MSD D ^%W1ARG
 D CLR
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 Q
 ;
CLR ;
 D KILL^%W1PRM("SET")
 D GL,GL1,GL2
 K @GL,@GL1,@GL2
 D KILL^%W1PRM("NEWSET")
 Q
 ;
CONFLICT(CD,SET) ;
 I $$SETKIND'=1 Q 0
 N N,SETA,NSET,PRT,RES S N="",RES=""
 N P1EZA S P1EZA=$$^W4GL("P1EZA")
 N P1EZT S P1EZT=$$^W4GL("P1EZT")
 ;
 S RES=$$CONFL(P1EZA,CD,SET)
 S RES1=$$CONFL(P1EZT,CD,SET)
 S RES=RES_RES1
 I $E(RES,$L(RES))="~" S RES=$E(RES,1,$L(RES)-1)
 Q RES
 ;
CONFL(P1EZA,CD,SET) ;
 N N,SETA,NSET,RES S N="",RES=CD_"|"
 F  S N=$O(@P1EZA@(N)) Q:N=""  I $D(@P1EZA@(N,"A"_SET)) D
 .S SETA="" F  S SETA=$O(@P1EZA@(N,SETA)) Q:SETA=""  D
 ..S NSET=$E(SETA,2,20) Q:NSET=""
 ..I $D(@$$^W4GL("P1SETA")@(NSET,CD)),NSET'=SET S RES=RES_N_";"_NSET_"~"
 I RES'[";" S RES=""
 I $L(RES)>1 S RES=$E(RES,1,$L(RES)-1)
 Q RES
 ;
WD1() ; 
 I $$^W4TABLET=2 Q "51%" 
 Q "53%"
 ; 
WD2() 
 I $$^W4TABLET=2 Q "9%" 
 Q "7%"
 ; 
WD3()  
 Q "40%" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SETVW
W3SETVW(SET) ; [ 08.10.14 14:53 ] [
 ; --- %ARG("SETKIND")=1 - SET PRITIM TO B/L ; =2 - TO REPORT
 ; --- %ARG("SETKIND")=3 - SET PRITIM TO SALE
 N (JB,%ARG,SET)
 I '$G(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W3SETIDK","%ARG=[%ARG")
 ;
 D GL
 S SETKIND=$$SETKIND
 ;
 D PUT^%W1PRM("SET",SET)
 I $G(%ARG("SETKIND")) D PUT^%W1PRM("SETKIND",%ARG("SETKIND"))
 ;
 K @GL
 M @GL=@$$GLSET@(SET)
 ;
 W "<div align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"">",!
 W " <tr style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_";text-align:center"" >"
  W " <td colspan=""3"">"
  I SETKIND=1 D
  .W $$^%W1DICT("SETITEMSTABLE")
  I SETKIND=2 D
  .W $$^%W1DICT("SETREPORTTABLE")
  I SETKIND=3 D
  .W $$^%W1DICT("SETITEMSTOSALE")
  ;
  W "&nbsp;&nbsp;&nbsp;"
  W "<input type=""button"" value="""_$$^%W1DICT("CLOSE")_""" "
  W " style=""color:red"" onClick=""Close()"" >"
  W "</td>",!
 W "</tr>",!
 ;
 W " <tr>"
 W "  <td>"_$$^%W1DICT("SETNAME")_"&nbsp;:"
  W "  <span style=""font-weight:bold""> "_$$SETNAME_"</span>"
 W "  </td>"
 ;
 I SETKIND=1 D
 .W "  <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("SETMAX")_"</td>"
 .W "  <td dir=""LTR"" style=""font-weight:bold;width:10%"" >"
 .W $$QNMAX
 .W "  </td>",!
 ;
 W " </tr>",!
 ;
 W "</table>",!
 ;
 ;
 W "<table id=""TblSet"" dir="""_$$^%W1DIR_""" border=""1"" "
  W " cellspacing=""0"" width=""100%"" "
  W " style=""background-color:white;color:black"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""12%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 I SETKIND=1 D
 .W "<th width=""12%"">"_$$^%W1DICT("ADDPRICE")_"</th>"
 .W "<th width=""12%"">"_$$^%W1DICT("QNDEF")_"</th>"
 I SETKIND=2!(SETKIND=3) D
 .W "<th width=""12%"">"_$$^%W1DICT("PRICE")_"</th>"
 ;
 W "</tr>",!
 ;
 N N,I
 D CRGL1
 ;
 S NP="",I=0 F  S NP=$O(@GL1@(NP)) Q:NP=""  D
 .S N=$G(^(NP)) Q:N=""
 .S I=I+1
 .W "<tr id=""trset"_N_""" "
 .W ">"
 .
 .W "<td id=""cd"_N_""" "
 .W ">&nbsp;"_N_"&nbsp;</td>",!
 .
 .W " <td align=""center"">&nbsp;"
 . W " <span id=""name"_N_""">"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</span>"
 .W " &nbsp;</td>",!
 .
 .W "<td align=""center"" dir=""LTR"">"
 . I $$SETKIND=1 D
 .. W $J($$MHSET(SET,N),2,2)
 . I $$SETKIND=2!($$SETKIND=3) D
 .. W $J($$MH^W4P(N),2,2)
 .W "</td>",!
 .
 .I SETKIND=1 D
 ..W "<td align=""center"" dir=""LTR"" >"
 ..W $$QNSET(SET,N)
 ..W "</td>",!
 .
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GL S GL="^[$$^W3MAIN]TMPVW($$^%W1JB)"
 Q
GL1 S GL1="^[$$^W3MAIN]TMPVW1($$^%W1JB)"
 Q
GL2 S GL2="^[$$^W3MAIN]TMPVW2($$^%W1JB)"
 Q
 ;
NMSET(NN) Q $P($G(@$$GLSET@(NN)),"\")
 ;
QNMAX(STAM) D GL Q $P($G(@GL),"\",2)
 ;
SETNAME(STAM) D GL Q $$H2U^%L1FRM($P($G(@GL),"\"))
 ;
MHSET(SET,PAR) ;
 N A S A=""
 I $$SETKIND=1 S A=$G(@$$^W4GL("MHSET")@(SET,PAR))
 I $$SETKIND=2!($$SETKIND=3) S A=$J($$MH^W4P(PAR),2,2)
 I A="" Q "&nbsp;"
 Q A
 ;
QNSET(SET,PAR) ;
 N A S A=$G(@$$^W4GL("QNSET")@(SET,PAR))
 I 'A Q "&nbsp;"
 Q A
 ;
 ;
CRGL1 ;
 D GL,GL1,GL2
 K @GL1,@GL2
 N N,NP,I S I=1,NP=0
 ;
 I $$SETKIND=2!($$SETKIND=3) D  Q
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S NP=NP+1,@GL1@(NP)=N
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S NP=+$G(^(N))
CC .I $D(@GL2@(NP)) S NP=NP+1 G CC
 .S @GL2@(NP)=N
 ;
 S I=0
 S N="" F  S N=$O(@GL2@(N)) Q:N=""  D
 .N CD S CD=$G(^(N)) Q:N=""
 .S I=I+1,@GL1@(I)=CD S @GL@(CD)=I
 ;
 K @GL2
 Q
 ;
 ;
GETTMPAI ;
 S TMPAI=$$^W4MAIN("TMPAI") K @TMPAI
 N N S N="" F  S N=$O(@$$^W4GL("P1EZA")@(N)) Q:N=""  I $D(@$$^W4GL("P1EZA")@(N,"A"_SET)) S @TMPAI@(N)=""
 S N="" F  S N=$O(@$$^W4GL("P1EZT")@(N)) Q:N=""  I $D(@$$^W4GL("P1EZT")@(N,"A"_SET)) S @TMPAI@(N)=""
 Q
 ;
GLSET(STAM) ;
 N SETKIND
 S SETKIND=$$SETKIND
 I SETKIND=1 Q $$^W4GL("P1SETA")
 I SETKIND=3 Q $$^W4GL("P1SETM")
 Q $$^W4GL("P1SET")
 ;
SETKIND(STAM) ;
 I $G(%ARG("SETKIND")) Q %ARG("SETKIND")
 I $$GET^%W1PRM("SETKIND") Q $$GET^%W1PRM("SETKIND")
 Q 1
 ;
INIT ;-- IF FIRST
 K MSD D ^%W1ARG
 D CLR
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 Q
 ;
CLR ;
 D KILL^%W1PRM("SET")
 D GL,GL1,GL2
 K @GL,@GL1,@GL2
 D KILL^%W1PRM("NEWSET")
 Q
 ;

W3SFHD
W3SFHD ; [ 02.12.14 12:14 ] [ 07.12.10 20:44 ] [ 19.11.10 11:11 ]
 W "<div align=""center"" style=""position:absolute;top:0px;left:20px;width:95%;height:85px"">",!
 W "<table dir=""RTL"" width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"" >",!
 W "<tr>",!
 N WEB S WEB=$$WEB^W3MAIN
 I WEB[".2order.org" S WEB="https://"_$P(WEB,"//",2,20)
 W " <td width=""45%""><img src="""_WEB_"w3sfaddr.jpg"" ></td>",!
 W " <td width=""38%""><img src="""_WEB_"w3sflogo.jpg"" ></td>",!
 W " <td><img src="""_WEB_"w3sftel.jpg"" ></td>",!
 W "<tr>",!
 W "</table>",!
 W "</div>",!
 Q

W3SFLOGO
W3SFLOGO ; [ 12.09.09 18:10 ] [
 W "<table dir="""_$$^%W1DIR_""">",!
 W " <tr>"
 W "  <td>"
 W "   <img src=""w3sflog1.jpg"">"
 W "  </td>"
 W "  <td>"
 W "   <img src=""w3sflog2.jpg"">"
 W "  </td>"
 W "  <td>"
 W "   <img src=""w3sflog3.jpg"">"
 W "  </td>"
 W " </tr>",!
 W "</table>",!

W3SHM
W3SHM(NMB) ; [ 11.02.12 04:33 ] [ 10.02.12 21:13 ] [ 04.02.12 18:10 ]
 S NMB=$G(NMB)
 N IND S IND="W3SHM"_NMB
 W "<table>",!
 W "<tr><td>",!
 N I F I=1:1 Q:'$D(^[$$^W3MAIN]SHP(IND,I))  D
 .N A S A=$$H2U^%L1FRM(^[$$^W3MAIN]SHP(IND,I))
 .S A=$$RPL^%L1FRM(A,"<N>","&nbsp;")
 .S A=$$RPL^%L1FRM(A,"<>","&bull;")
 .S A=$$RPL^%L1FRM(A,"<S1>","<span>")
 .S A=$$RPL^%L1FRM(A,"<S2>","</span>")
 .I A["LEV1957@GMAIL.COM" S A=$$FUNC^%LCASE(A)
 .W A,"<br>",!
 W "</tr>",!
 W "</table>",!
 Q

W3SHOWFR
W3SHOWDR(PAR) ; [ 23.01.14 18:32 ] [
 N (JB,%ARG,%REM,PAR)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" "
 W " style=""position:absolute;top:0px;left:0px;width:100%;height:100%;background-color:lightyellow"" "
 W ">",!
 W "<br>",!
 W "<span style=""color:green;font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""">"
  W PAR_" "_$$H2U^%L1FRM($$SHEM^W4P(PAR))
 W "</span>",!
 W "<br><br>",!
 ;
 W "<table width=""80%"">",!
 S N="" F  S N=$O(@$$^W4GL("P1EZI")@(PAR,N)) Q:N=""  D
 .W "<tr>"
 . W "<td>"_N_"</td>"
 . W "<td>"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
 . W "<td>"_$J($$MH^W4P(PAR),2,2)_"</td>"
 .W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 W "<input type=""button"" value="""_$$^%W1DICT("CLOSE")_""" "
 W " onClick=""Back()"" style=""color:red"" />",!
 W "</div>",!
 Q

W3SHOWHN
W3SHOWHN ; [ 22.03.26 01:34 ] [ 12.02.17 13:21 ] [ 
 N (JB,%ARG)
 S TSHL=$$TSHL^W3HZMST(JB)
 S HNH=$$HNH^W3HZMST(JB)
 S HNHAH=$$AHUZ^W3HZMST(JB)
 S WD=60
 ;
 W "<div dir="""_$$^%W1DIR_""" style="""_$$FONTFM^W3CSS_""" width=""100%"" align=""center"">",!
 S STYLE="font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS
 S TX=$$^%W1DICT("SHNH",$J(HNH,2,2))
 D ^W4SPAN($$^%W1DIR,STYLE,TX)
 ;
 I $$HNH2^W3HZMST(JB) D
 .N HNH2 S HNH2=$$HNH2^W3HZMST(JB)
 .W "<br><br>"
 .S STYLE="font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS
 .S TX=$$^%W1DICT("HNH2",$J(HNH2,2,2))
 .D ^W4SPAN($$^%W1DIR,STYLE,TX)
 ;
 I HNHAH D
 .W "<br /><br />"
 .W "<table dir="""_$$^%W1DIR_""" width="""_WD_"%"" border=""1"" "
 . W "cellspacing=""0"" style=""text-align:center"" "
 .W ">",!
 .W "<caption style=""font-size:"_$$^W3FSZ_""">"
 . W $$^%W1DICT("INCLUDEPERCENTDISC")
 .W "</caption>"
 .
 .W "<tr class=""sheetgroups"">",!
 . W "<td>"_$$^%W1DICT("BEFOREDISC")_"</td>"
 . W "<td>"_$$^%W1DICT("DISCPERCENT")_"</td>"
 . W "<td>"_$$^%W1DICT("HOWMUCHDISC")_"</td>"
 .
 .I $G(@$$^W4TMPORD@("HNH"))'?.P D
 . W "<td>"_$$^%W1DICT("WHOSUBMNM")_"</td>"
 . W "<td>"_$$^%W1DICT("CAUSEDISC")_"</td>"
 .W "</tr>",!
 .
 .W "<tr>",!
 . N TOTHN S TOTHN=$$TOTHN
 . W "<td>"_$J(TOTHN,2,2)_"</td>",!
 . W "<td>"_HNHAH_"</td>",!
 . W "<td>"_$J(TOTHN*HNHAH*.01,2,2)_"</td>",!
 . S WHO1="",SIBA1=""
 .
 . I $G(@$$^W4TMPORD@("HNH"))'?.P D
 . .N A,WHO,SIBA1 S A=$G(^("HNH"))
 . .S WHO=$P(A,"*",2)
 . .S SIBA1=$P(A,"*",4)
 . .I SIBA1?1N.N S SIBA1=$G(@$$^W4GL("P1SHNH")@(SIBA1))
 . .S WHO1=$$H2U^%L1FRM($$^W4NAME(WHO))
 .W "<td>"_$$H2U^%L1FRM(WHO1)_"</td>"
 .W "<td>"_$$H2U^%L1FRM(SIBA1)_"</td>"
 .W "</tr>",!
 .W "</table>",!
 ;
 S SLKHNH=$J($$SLKHNH,2,2)
 ;
 I SLKHNH D
 .W "<br />",!
 .W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"
 . W $$^%W1DICT("SLKHNH",$J(SLKHNH,2,2))
 .W "</span>",!
 .
 .W "<br />",!
 .W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(11)_";"_$$FONTFM^W3CSS_""" >"
 . W $$^%W1DICT("SLKHNHDETAILS")
 .W "</span>",!
 ;
 W "<br /><br />",!
 S SHNH1=$J($$SHNH1,2,2)
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"
  W $$^%W1DICT("SHNH1",SHNH1)_"<span>",!
 W "</span>",!
 
 W "</div>",!
 Q
 ;
TOTHN(STAM) ; 
 Q $$TOTORD^W4GETSUM(JB,"D")
 ;
SLKHNH(STAM) ;
 N SHNH,LKHNH S SHNH=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@("CB","ASR",N)) Q:N=""  D
 .S A=$G(^(N))
 .S LKHNH=$P(A,"*",3)
 .S SHNH=SHNH+LKHNH
 Q SHNH
 ;
SHNH1(STAM) ;
 N SHNH1,HNH1 S SHNH1=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@("CB","HNH1",N)) Q:N=""  D
 .S HNH1=+$G(^(N))
 .S SHNH1=SHNH1+HNH1
 Q SHNH1
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SHOWKV
W3SHOWKV(NN) ; [ 07.11.22 07:25 ] [ 10.08.21 12:03 ] [ 26.06.18 14:26 ] 
 N (JB,%ARG,NN,W4ABC)
 N NMGL S NMGL=$G(W4ABC("GL"))
 I NMGL="" S NMGL="PARSUG"
 I NMGL="" Q ""
 I NMGL'="PARSUG" Q $$H2U^%L1FRM($G(@$$^W4GL(NMGL)@(NN)))
 ;
 N SKOB1,SKOB2
 S (SKOB1,SKOB2)=" "
 I '$$^W4VWGR(NN) S SKOB1="[ ",SKOB2=" ]"
 Q SKOB1_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(NN)))_SKOB2
 
 
 
 
 
 
 

W3SHOWTS
W3SHOWTS(CODTS,PRTS) ; [ 16.09.25 11:47 ] [ 11.10.20 19:07 ] [ 16.01.20 14:12 ] 
 I CODTS=1 Q $$^%W1DICT("CASH")
 I CODTS=2 Q $$^%W1DICT("CHECK")
 I CODTS=3,$D(W3SHOWTS("CA")) Q $$^%W1DICT("CA")
 I CODTS=3 Q $$^%W1DICT("CRCARD")
 I CODTS=4,$G(PRTS) Q $$^%W1DICT("BANKMOVING")
 I CODTS=4 Q $$^%W1DICT("CREDIT")
 I CODTS=5 Q $$^%W1DICT("CIBUS")
 I CODTS=6 Q $$^%W1DICT("COUPONPHONE")
 I CODTS=7 Q $$^%W1DICT("TENBIS")
 I CODTS=9 Q $$^%W1DICT("PICUL")
 I CODTS=13 Q $$^%W1DICT("MSHCA")
 I CODTS="-" Q $$^%W1DICT("HZMH")
 Q ""
 ;
 ;
V(VD) ; 
 Q $$^W4VT(VD)
 

W3SIDKV0
W3SIDKVZ ; [ 17.03.12 07:09 ] [ 03.08.10 20:51 ] [ 17.06.10 09:58 ]
 ; INPUT:
 ;  KVZ
 ;  LCOD
 ; ---------------------- SIDUR LEFI KVUZOT ---------
 N N,N1,I S I=0
 K @$$^W4MAIN("TMPTF")
 ;
 I $D(@$$^W4GL("P1KVZSID"))>9 D  G END
 .N NP,KV,MMM S NP="",I=0 F  S NP=$O(@$$^W4GL("P1KVZSID")@(NP)) Q:NP=""  D
 ..S KV=$G(^(NP)) Q:KV=""
 ..N N S N=KV
 ..D SETTMPF(KV)
 ..S MMM(KV)=""
 .
 .S N="" F  S N=$O(@KVZ) Q:N=""  I '$D(MMM(N)) D
 ..D SETTMPF(N)
 ;
 I $G(@$$^W4PRM@("HFNUM")) D  G END ; SEDER NUMERI
 .S N="" F  S N=$O(@KVZ) Q:N=""  D SETTMPF(N)
 ;
 I KVZ["^[$$^W3MAIN]PARCAT" D  G ES ; -- MIUN A-B
 .D INV("^[$$^W3MAIN]PARCAT($$^%W1JB)",$$^W4GL("PARSUG"))
 ;
 D INV($P(KVZ,"("),$$^W4GL("PARSUG")) G ES
 ;
ES S N="" F  S N=$O(@$$^W4MAIN("TMPTF1")@(N)) Q:N=""  S N1=$G(^(N)) I N1 D
 .D SETTMPF(N1)
 ;
 K @$$^W4MAIN("TMPTF1")
END Q
 ;
 ;
INV(KVZ,GL) ; --- SIDUR A-B
 K @$$^W4MAIN("TMPTF1")
 N N1,N2,IND S N1="" F  S N1=$O(@KVZ@(N1)) Q:N1=""  D
 .S N2=N1
 .I KVZ["P1TFR",GL=$$^W4GL("PAR") S N2=$P($G(^(N1)),"\")
 .N OK S OK=0
 .I $L(N2),'$G(@$$^W4GL("P1PRM")@("TSF")),GL=$$^W4GL("PAR") D  Q:OK
 ..I $D(@$$^W4GL("P1EZTI")@(N2))!$D(@$$^W4GL("P1EZAI")@(N2))!$D(@$$^W4GL("P1EZ")@(N2))!$D(@$$^W4GL("P1EZK")@(N2))!$D(@$$^W4GL("P1EZRI")@(N2))!$D(@$$^W4GL("P1SETAI")@(N2)),'$$MH^W4P(N2) S OK=1 Q
 .I $L(N2),GL=$$^W4GL("PAR"),$D(@$$^W4GL("PRTNO")@(N2)) Q
 .N NM S NM=$P($G(@GL@(N2)),"**"),NM=$E(NM,$L(NM)-9,255)
 .S IND=$$INV^%L1FRM($TR(NM," ",""))
 .S IND=IND_$J("",10-$L(IND))_N2
 .S @$$^W4MAIN("TMPTF1")@(IND)=N2
 Q
 ;
SUGNAME(KV) ;
 Q $$HBR^%L1FRM($$SUGN(KV),20)
 ;
SUGN(KV) ;
 N SUGN S SUGN=$G(@$$^W4GL("PARSUG")@(KV))
 I SUGN["()" S SUGN=$$RPL^%L1FRM(SUGN,"()","") ; -- PIZZA
 Q SUGN
 ;
SETTMPF(KV) ;
 I $D(@KVZ)<10,'$$PODZAG^W3HZTFR($$SUGNAME(KV)) Q
 I $$NOSUG^W3HZTFR(KV) Q
 I $$SUGNAME(KV)?." " Q
 S I=I+1,@$$^W4MAIN("TMPTF")@(1,I)=$$SUGNAME(KV)_" "_$J(KV,LCOD)
 S @$$^W4MAIN("TMPTF")@(1,I,"KV")=KV
 Q

W3SIDKVZ
W3SIDKVZ ; [ 11.08.25 11:34 ] [ 26.07.23 17:18 ] [ 19.01.21 14:47 ] 
 ; INPUT:
 ;  KVZ
 ;  LCOD
 ; ---------------------- SIDUR LEFI KVUZOT ---------
 N N,N1,I S I=0
 K @$$^W4MAIN("TMPTF")
 ;
 D  G END
 .N NP,KV,MMM S NP="",I=0 F  S NP=$O(@$$^W4GL("P1KVZSID")@(NP)) Q:NP=""  D
 ..S KV=$G(^(NP)) Q:KV=""
 ..I '$D(@KVZ@(KV)) Q
 ..I '$D(W3PRTPC),'$$GETP^%W1PRM("W4BO"),$$FASTGR^W4HD,'$$FULLHD^W4HD,$D(@$$^W4GL("W4FASTGR")@(KV)) Q
 ..N N S N=KV
 ..D SETTMPF(KV)
 ..S MMM(KV)=""
 .;
 .S N="" F  S N=$O(@KVZ@(N)) Q:N=""  I '$D(MMM(N)) D
 ..D SETTMPF(N)
END Q
 ;
 ;
SUGNAME(KV) ;
 Q $$HBR^%L1FRM($$SUGN(KV),20)
 ;
SUGN(KV) ;
 N SUGN S SUGN=$G(@$$^W4GL("PARSUG")@(KV))
 I $$TMPENG^%W1LNG D
 .N SUGN0 S SUGN0=SUGN
 .S SUGN=$P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",9)
 .I SUGN="" S SUGN=SUGN0
 I SUGN["()" S SUGN=$$RPL^%L1FRM(SUGN,"()","") ; -- PIZZA
 Q SUGN
 ;
SETTMPF(KV) ;
 I $E(KV,1,2)="<>" D  Q
 .I $D(W3PRTPC) Q
 .I $$GETP^%W1PRM("W4BO") Q
 .S I=I+1
 .N CD S CD=$$FINDFAST($E(KV,3,10)) Q:'CD
 .S @$$^W4MAIN("TMPTF")@(1,I)=$$SHEM^W4P(CD)_" "_$J(CD,6)
 .S @$$^W4MAIN("TMPTF")@(1,I,"KV")=KV
 ;
 I $$CATOLD^W4PRM,$D(@KVZ@(KV))<10,'$$PODZAG^W3HZTFR($$SUGNAME(KV)) Q
 I $$NOSUG^W3HZTFR(KV) Q
 I $$SUGNAME(KV)?." " Q
 S I=I+1,@$$^W4MAIN("TMPTF")@(1,I)=$$SUGNAME(KV)_" "_$J(KV,LCOD)
 S @$$^W4MAIN("TMPTF")@(1,I,"KV")=KV
 Q
 ;
 ;
INV(KVZ,GL,KV) ; --- SIDUR A-B
 K @$$^W4MAIN("TMPTF1")
 N N1,N2,IND S N1="" F  S N1=$O(@KVZ@(KV,N1)) Q:N1=""  D
 .S N2=N1
 .I KVZ["P1TFR",GL=$$^W4GL("PAR") S N2=$P($G(^(N1)),"\")
 .N OK S OK=0
 .I $L(N2),'$G(@$$^W4GL("P1PRM")@("TSF")),GL=$$^W4GL("PAR") D  Q:OK
 ..I $D(@$$^W4GL("P1EZTI")@(N2))!$D(@$$^W4GL("P1EZAI")@(N2))!$D(@$$^W4GL("P1EZ")@(N2))!$D(@$$^W4GL("P1EZK")@(N2))!$D(@$$^W4GL("P1EZRI")@(N2))!$D(@$$^W4GL("P1SETAI")@(N2)),'$$MH^W4P(N2) S OK=1 Q
 .I $L(N2),GL=$$^W4GL("PAR"),$$NL^W4PRTVW(N2) Q
 .N NM S NM=$P($G(@GL@(N2)),"**"),NM=$E(NM,$L(NM)-9,255)
 .S IND=$$INV^%L1FRM($TR(NM," ",""))
 .S IND=IND_$J("",10-$L(IND))_N2
 .S @$$^W4MAIN("TMPTF1")@(IND)=N2
 Q
 ;
FINDFAST(NIT) ; 
 I $G(NIT)>10000 S NIT=NIT-10000
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("W4ITFAST")@(N)) Q:N=""  D  Q:OK
 .I $G(^(N))=NIT S OK=N
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SITE
W3SITE ; [ 03.02.12 14:26 ] [ 29.01.12 07:17 ] [ 11.04.09 18:36 ]
 N BGH,NMB S BGH="CC0000"
 S PR800=$$GET^%W1PRM("PR800")
 ;;S $ZGBLDIR=$$^W3MAIN
 D KILL^%W3DEB("W3SITE")
 W "<div align='center'>",!
 S LNG=$G(%W1LNG) I LNG="H" S LNG=""
 D CHAPTER("1"_LNG,"ABOUTUS","w3sint.jpg")
 W "<br><br>",!
 D CHAPTER("2"_LNG,"ABOUTPRODUCT","w3sdisk.jpg")
 W "<br><br>",!
 D CHAPTER("3"_LNG,"DEMO","w3skb.jpg")
 W "<br><br>",!
 I $G(%W1LNG)'="E" D
 .D CHAPTER("4"_LNG,"FAQ","w3slsn.jpg")
 .W "<br><br>",!
 D CHAPTER("5"_LNG,"CONTACTUS","w3scnt.jpg")
 W "<br><br>",!
 W "</div>",!
 Q
CHAPTER(NMB,HEADER,PIC) ;
 N BGCV S BGCV=$P($$BGBODY^W3CSS($$COLOR^W3CSS),":",2)
 W "<a name='C"_+NMB_"'></a>",!
 W "<table width='98%' style='background-color:white;color:"_BGH_";font-size:"_$$^W3FSZ_";border:2px solid #cc0000' dir='"_$$^%W1DIR_"' border=0 cellpadding=10>",!
 W "<tr>",!
 W "<td colspan=2 style='background-color:"_BGH_";color:white;font-size:"_$$^W3FSZ(18)_"' >",$$^%W1DICT(HEADER),"</td>",!
 W "</tr>",!
 W !
 W "<tr><td style='color:black' width=""60%"">",!
 D PUT^%W3DEB("W3SITE","NMB=NMB")
 N I F I=1:1 Q:'$D(^[$$^W3MAIN]SHP("SITE"_NMB,I))  D
 .N A S A=$$H2U^%L1FRM(^[$$^W3MAIN]SHP("SITE"_NMB,I))
 .S A=$$RPL^%L1FRM(A,"<N>","&nbsp;")
 .S A=$$RPL^%L1FRM(A,"<S1>","<span>")
 .S A=$$RPL^%L1FRM(A,"<S2>","</span>")
 .I A["LEV1957@GMAIL.COM" S A=$$FUNC^%LCASE(A)
 .W A,"<br>",!
 I HEADER="DEMO" D
 .W "<br><br>",!
 .W "<input type=""button"" style=""font-size:"_$$^W3FSZ(16)_";background-color:"_BGH_";color:white"" value=""&nbsp;&nbsp;"_$$^%W1DICT("DEMO")_"&nbsp;&nbsp;"" onClick=""ToDemo()""/>"
 ;
 W "</td>",!
 W "<td align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
 I HEADER="DEMO" W "<a href=""#C"_NMB_""" onClick=""ToDemo()"">"
 S WD=400,HG=600
 I PR800 S WD=300,HG=450
 W "<img src='"_PIC_"' width='"_WD_"' height='"_HG_"' />",!
 I HEADER="DEMO" W "</a>"
 W "</td></tr>",!
 W "</table>",!
 Q

W3SNDHM0
W3SNDHMH ; [ 13.11.16 10:11 ] [ 13.03.15 13:09 ] [ 24.02.15 09:59 ]
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"_$$^%W1DICT("CHOICEKINDOFSENDING")_"</span>",!
 W "<br><br>",!
 ;
 W " <table width=""70%"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" dir="""_$$^%W1DIR_""" border=""0"" cellspacing=""0"">",!
 W "  <tr>"
 W "   <td ><input type=""radio"" id=""sndfax"" name=""sndkind"" checked=""checked"" onClick=""ClickRadio()"" />"_$$^%W1DICT("FAX")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""text"" id=""fax"" size=""10"" maxlength=""12"" value="""_$$FAX^W3HZMST(JB)_"""/></td>",!
 W "  </tr>",!
 W "  <tr><td></td></tr>",!
 W "  <tr>"
 W "   <td><input type=""radio"" id=""sndmail"" name=""sndkind"" onClick=""ClickRadio()"" />"_$$^%W1DICT("EMAIL")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""text"" id=""email"" size=""50"" maxlength=""50"" onKeyUp=""EnglishOnly()"" value="""_$$EMAIL^W3HZMST(JB)_"""/></td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""checkbox"" id=""adds"" />&nbsp;"_$$^%W1DICT("WITHADDS")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""checkbox"" id=""sndmenu"" />&nbsp;"_$$^%W1DICT("SENDMENU")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""checkbox"" id=""sndkashrut"" />&nbsp;"_$$^%W1DICT("SENDKASHRUT")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td>"
  W $$^%W1DICT("COMMENTS"),"<br>",!
  W "<textarea rows=""3"" cols=""60"" id=""mailtext"" ></textarea>"
 W "   </td>"
 W "  </tr>",!
 W "  <tr>"
 W "  <tr><td>&nbsp;</td></tr>",!
 W "   <td style=""color:red""><input type=""radio"" id=""back"" name=""sndkind"" onClick=""ClickRadio()""/>"_$$^%W1DICT("NOSEND")_"</td>",!
 W "  </tr>",!
 ;
 W " </table>",!
 W "<br>",!
 W " <table width=""70%"" border=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td colspan=""2"" style=""text-align:center"">"
   D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
  W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SNDFAX(FAX) ;
 N MSD,HZ,DET S DET=0
 I FAX[";" S DET=$P(FAX,";",3),FAX=$P(FAX,";")
 S FAX=$TR(FAX,"- ","")
 S HZ=$$GET^%W1PRM("ORD") I 'HZ Q "NOTORDERNUMBER"
 I $L(FAX)<7!(FAX'?1N.N) Q "FAXNUMBERISWRONG"
 ;
 D PUT^W3HZMST(HZ,"FAX",FAX,$$^W3ORD)
 S MSD=$$MSD^W3HZMST(HZ) I 'MSD Q "RESTNOTEXIST"
 S @$$^W3ORD(HZ)@(HZ,"DBF")="2\"_$H
 D ^W3FAXHTM(HZ,MSD,"2-"_DET)
 D ^W3REGFAX(HZ)
 S ^[$$^W3MAIN]W3TSTORD(HZ)=MSD_"\"_$H_"\F"
 Q 1
 ;
SNDMAIL(PRM) ;
 N HZ,MSD,ZSY,ISHUR
 S HZ=$$GET^%W1PRM("ORD") I 'HZ Q "NOTORDERNUMBER"
 S MSD=$$MSD^W3HZMST(HZ) I 'MSD Q "RESTNOTEXIST"
 S ISHUR=$P(PRM,";",6)
 N TOT S TOT=$$TOTORD^W3HZMST(HZ,"",$$^W3ORD)
 ;
 I '$$^W3PRCOFR(HZ),TOT>0 S ISHUR=1
 I $$^W3PRCOFR(HZ),TOT'>0 S ISHUR=0
 ;
 S ZSY=$$SNDM(MSD,HZ,PRM,ISHUR)
 I 'ZSY S:ISHUR'?1N @$$^W3ORD(HZ)@(HZ,"EMAIL")=$H Q 1
 Q "ERROR : "_ZSY
 ;
 ;
SNDM(MSD,HZ,PRM,ISHUR) ;
 D PUT^%W3DEB("W3SNDHMH-SNDM","MSD=MSD&HZ=HZ&PRM=PRM")
 N SNIF,HZRSD,MKBL,MKBN
 S SNIF="" I $G(HZ) S SNIF=$G(@$$^W3ORD(HZ)@(HZ,"SNIF"))
 I MSD=1 S SNIF=$S(SNIF=1:1000,1:1001)
 S (HZRSD,MKBL,MKBN)=""
 I $G(HZ) D
 .S HZRSD=$G(@$$^W3ORD(HZ)@(HZ,"HZRSD"))
 .S MKBL=$P($G(@$$^W3ORD(HZ)@(HZ)),"~",18)
 .S MKBN=$G(@$$^W3ORD(HZ)@(HZ,"MKBN"))
 .S MKBN=$P(MKBN,";",2)
 ;
 N MSG,EMAIL,LINK,FROM,SMTP,USER,PSW,FILE,LOGO,DET
 N SNDMENU,KASHRUT,TXT,HDMAIL
 ;
 S EMAIL=$P(PRM,";")
 S EMAIL=$$CNWEB^%L1FRM(EMAIL)
 S LINK=$P(PRM,";",2)
 S LINK=$$CNWEB^%L1FRM(LINK)
 S DET=$P(PRM,";",3)
 S SNDMENU=$P(PRM,";",4)
 S KASHRUT=$P(PRM,";",5)
 S TXT=$$CNWEB^%L1FRM($P(PRM,";",7))
 S LINK=LINK_"&COMPRVIEW="_'DET
 S ^AL(JB,"PRM")=EMAIL_"\"_LINK_"\"_HZ_"\"_MSD_"\"_DET_"\"_ISHUR_"\"_SNDMENU_"\"_KASHRUT
 I $G(ISHUR)'?1N D
 .D PUT^W3HZMST(HZ,"EMAIL",EMAIL,$$^W3ORD)
 S FROM=$P($$EMAIL^W3R(MSD),",")
 S SMTP=$$SMTP^W3R(MSD) ;"out.bezeqint.net"
 S USER=$$USER^W3R(MSD) ;"sfactory@5666666.co.il"
 S PSW=$$PSWMAIL^W3R(MSD) ;"s5858585"
 ;;S LOGO=$$LOGO^W3R(MSD) ;"w3sflogo.jpg"
 S LOGO="w3sfsite.jpg"
 S HDMAIL=$$HDMAIL^W3R(MSD) ;"w3sflogo.jpg"
 I HDMAIL="" S HDMAIL="Bid" I MSD=1 S HDMAIL="Hazaat mahir online"
 D ^%L1TS
 ;;S HDMAIL=HDMAIL_"-"_HZ_" ( "_HZRSD_" ) "_MKBN
 S HDMAIL=HDMAIL_" "_HZRSD_" "_MKBN
 S KASHRUTFILE="http://www.sandwich-factory.co.il/images/kosher.pdf"
 ;
 S FILE="/tmp/sndmail"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  I MSD=1 D SFHEAD
  I MSD'=1 D HEAD
 C FILE
 ;
 I SNDMENU D MENUFILE
 ;
 S MSG="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" -j """_HDMAIL_"""  -s """_FROM_""" -y """_FROM_""" -r """_EMAIL_""" -b """_FILE_""""
 ;
 I SNDMENU D
 .S MSG=MSG_" -a """_MENUFILE_""""
 ;
 S ^AL(JB,"MSG")=$E(MSG,1,800)
 zsy MSG
 S ^AL(JB,"ZSY")=$ZSY
 Q $ZSY
 ;
 ;
ORDCONTENT(ORD) ;
 N (%ARG,%REM,ORD,TSTORD,DET,JB)
 S W3FAXHTM=1,W3FAXHTM("SNDMAIL")=""
 S W3ORDLS=ORD
 S VW=1
 I $P($G(TSTORD),"-",2)=0!'$G(DET) S VW=1.5,COMPRVIEW=1,W3FAXHTM("COMPRESS")=""
 D ^W3ORDVW(VW)
 Q
 ;
 ;
MENUFILE ;
 S MENUFILE="/tmp/sndmenu"_$G(JB)_".html"
 I $G(ISHUR)?1N Q
 O MENUFILE:(NEWVERSION:REWIND:WRITE) U MENUFILE
  W "<html><body style="""_$$FONTFM^W3CSS_""" >"
   N %ARG
   S %ARG("MSD")=MSD
   S %ARG("CDKV")="ALL"
   S %ARG("SNDMAIL")=1
   D ^W3PRTPC
  W "</html></body>",!
 C MENUFILE
 Q
 ;
CMNT(TXT) ;
 N ST
 S ST="<br><span style=""color:red;font-size:14pt"">"
 S ST=ST_$$H2U^%L1FRM(TXT)_"</span>"
 Q ST
 ;
SFSITE(IMG) ;
 N WEB S WEB=$$WEB^W3MAIN
  W " <a href=""http://www.5666666.co.il"">"
   W " <img src="""_WEB_IMG_""" "_IMGSIZE_" alt=""Sandwich factory site"" />"
  W " </a>",!
 Q
 ;
SFTBL ;
 W "<table align=""center"" width=""55%"" >",!
 Q
 ;
SFHEAD ;
  W "<html><body>"
   W "<div align=""center"" dir="""_$$^%W1DIR_""">"
   N CLICK S CLICK=$$^%W1DICT("CLICKTHEBID")
   I ISHUR S CLICK=$$^%W1DICT("CLICKCONFIRM")
   ;
   N IMGSIZE S IMGSIZE=" width=""150px"" height=""50px"" "
   ;
   N WEB S WEB=$$WEB^W3MAIN
   ;
   D SFTBL
    W "<tr>"
     ;
     W "<td colspan=""3"" >",! ; 3
      W "<img src="""_WEB_"w3sfpress.jpg"" alt=""To view offer price throuth browser press here"" />"
     W "</td>",!
     ;
     D SFHDHMH
    W "</tr>",!
    ;
    W "<tr>"
     D SFHDMENU
     ;
     D SFHDKASHRUT
     ;
     D SFHDCATERING
   W "</tr>",!
   ;
   W "<tr>",!
    D SFHDORD
    ;
    D SFHDSITE
   ;
    D SFHDMAIL
   W "</tr>",!
   ;
   W "<tr>"
    W "<td colspan=""6"" align=""center"" >" ; 6
     W "<img src="""_WEB_"w3sfview.jpg"" alt=""To view offer price scroll down"" />"
    w "</td>"
   w "</tr>",!
   ;
   W "</table>",!
   ;
   S TXT=$$INVH^%L1FRM(TXT)
   S TXT=$TR(TXT,"_",$C(10))
   S TXT=$TR(TXT,$C(9),$C(10))
   ;
   I ISHUR=1 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dxye` mkly dpnfd ")
   ..W $$CMNT("! ixehwt 'uieecpqn dax dcez")
   ;
   I ISHUR=0 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dlhea dpnfd ")
   ..;;W $$CMNT(TXT_" : daiqn")
   ;
   I ISHUR'?1N D
   .W $$CMNT(TXT)
   ;
   D ORDCONTENT(HZ)
   ;
   W "</div>",!
  W "</html></body>",!
 Q
 ;
SFHDHMH ;
  W "<td>",!
  W "<a href=""http://"_LINK_""">"
   W "<img src="""_WEB_"w3sfprice.jpg"" alt=""Offer price"" "_IMGSIZE_" />"
  W "</a>",!
  W "</td>",!
  Q
 ;
SFHDMENU ;
  W "<td>",!
   W "<a href=""http://www.2order.org/mumps-examples/jsp/w3prtpc.jsp?MSD="_MSD_""">"
    W "<img src="""_WEB_"w3sfmenu.jpg"" alt=""Menu"" "_IMGSIZE_" />"
   W "</a>",!
  W "</td>",!
 Q  ;
 ;
SFHDKASHRUT ;
 W "<td>",!
  W " <a href="""_KASHRUTFILE_""">"
   W "<img src="""_WEB_"w3sfkashrut.jpg"" alt=""Kashrut document"" "_IMGSIZE_" />"
  W " </a>",!
 W "<td>",!
 Q  ;
 ;
SFHDCATERING ;
 W "<td>",!
  W "<a href=""http://www.Sf-catering.co.il"">"
   W "<img src="""_WEB_"w3sfcatering.jpg"" alt=""Catering"" "_IMGSIZE_" />"
  W "</a>",!
 W "</td>",!
 Q  ;
  ;
SFHDORD ;
 W "<td>",!
  W "<a href="""_WEB_"w3menu.jsp?MSD="_MSD_"&NEWPAGE=1"">"
   W "<img src="""_WEB_"w3sford.jpg"" alt=""Online order"" "_IMGSIZE_" />"
  W "</a>",!
 W "</td>",!
 Q
 ;
SFHDSITE ;
 W "<td>",!
 I WEB[".2order.org" S WEB="https://"_$P(WEB,"//",2,20)
 D SFSITE("w3sfsite.jpg")
 W "</td>",!
 Q
 ;
SFHDMAIL ;
 W "<td>",!
   W "<a href=""mailto:SFACTORY@5666666.CO.IL"">"
    W "<img src="""_WEB_"w3sfmail.jpg"" alt=""E-Mail"" "_IMGSIZE_" />"
   W "</a>",!
 W "</td>",!
 Q
 ;
HEAD ;
  W "<html><body>"
   W "<div align=""center"" dir="""_$$^%W1DIR_""">"
   N CLICK S CLICK=$$^%W1DICT("CLICKTHEBID")
   I ISHUR S CLICK=$$^%W1DICT("CLICKCONFIRM")
   W "<a href=""http://"_LINK_""">"_CLICK_"</a>",!
   W "<br>"
   W "<a href="""_$$WEB^W3MAIN_"w3menu.jsp?MSD="_MSD_"&NEWPAGE=1"">"_$$^%W1DICT("CLICKTOORDERONLINE")_"</a>",!
   ;I KASHRUT D
   W "<br>"
   W "<a href="""_KASHRUTFILE_""">"_$$^%W1DICT("SHOWKASHRUTFILE")_"</a>"
   W "<br>",!
   W "<a href=""http://www.2order.org/mumps-examples/jsp/w3prtpc.jsp?MSD="_MSD_""">"_$$^%W1DICT("SHOWWEBMENU")_"</a>"
   W "<br>",!
   W "<a href=""http://www.5666666.co.il"">"_$$^%W1DICT("SHOWWEBSITE")_"</a>"
   W "<br>",!
   I $$^W3PRCOFR(HZ) D
   .W "<a href=""http://www.Sf-catering.co.il"">"_$$H2U^%L1FRM("o`k ugl bpixhiiw zwlgn zbvnl")_"</a>"
   W "<br>",!
   ;
   I $L(LOGO) D
   .N WEB S WEB=$$WEB^W3MAIN
   .I WEB[".2order.org" S WEB="https://"_$P(WEB,"//",2,20)
   .W "<br><img src="""_WEB_LOGO_""" >",!
   ;
   ;
   S TXT=$$INVH^%L1FRM(TXT)
   S TXT=$TR(TXT,"_",$C(10))
   S TXT=$TR(TXT,$C(9),$C(10))
   ;
   I ISHUR=1 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dxye` mkly dpnfd ")
   ..W $$CMNT("! ixehwt 'uieecpqn dax dcez")
   ;
   I ISHUR=0 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dlhea dpnfd ")
   ..;;W $$CMNT(TXT_" : daiqn")
   ;
   I ISHUR'?1N D
   .W $$CMNT(TXT)
   ;
   D ORDCONTENT(HZ)
   W "</div>",!
  W "</html></body>",!
  Q
 

W3SNDHMH
W3SNDHMH ; [ 19.05.26 15:54 ] [ 20.03.25 13:57 ] [ 13.08.19 09:33 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"_$$^%W1DICT("CHOICEKINDOFSENDING")_"</span>",!
 W "<br><br>",!
 ;
 W " <table width=""70%"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" dir="""_$$^%W1DIR_""" border=""0"" cellspacing=""0"">",!
 W "  <tr>"
 W "   <td ><input type=""radio"" id=""sndfax"" name=""sndkind"" checked=""checked"" onClick=""ClickRadio()"" />"_$$^%W1DICT("FAX")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""text"" id=""fax"" size=""10"" maxlength=""12"" value="""_$$FAX^W3HZMST(JB)_"""/></td>",!
 W "  </tr>",!
 W "  <tr><td></td></tr>",!
 W "  <tr>"
 W "   <td><input type=""radio"" id=""sndmail"" name=""sndkind"" onClick=""ClickRadio()"" />"_$$^%W1DICT("EMAIL")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""text"" id=""email"" size=""50"" maxlength=""50"" onKeyUp=""EnglishOnly()"" value="""_$$EMAIL^W3HZMST(JB)_"""/></td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""checkbox"" id=""adds"" />&nbsp;"_$$^%W1DICT("WITHADDS")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""checkbox"" id=""sndmenu"" />&nbsp;"_$$^%W1DICT("SENDMENU")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""checkbox"" id=""sndkashrut"" />&nbsp;"_$$^%W1DICT("SENDKASHRUT")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td>"
  W $$^%W1DICT("COMMENTS"),"<br>",!
  W "<textarea rows=""3"" cols=""60"" id=""mailtext"" ></textarea>"
 W "   </td>"
 W "  </tr>",!
 W "  <tr>"
 W "  <tr><td>&nbsp;</td></tr>",!
 W "   <td style=""color:red""><input type=""radio"" id=""back"" name=""sndkind"" onClick=""ClickRadio()""/>"_$$^%W1DICT("NOSEND")_"</td>",!
 W "  </tr>",!
 ;
 W " </table>",!
 W "<br>",!
 W " <table width=""70%"" border=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td colspan=""2"" style=""text-align:center"">"
   D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
  W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SNDFAX(FAX) ;
 N MSD,HZ,DET S DET=0
 I FAX[";" S DET=$P(FAX,";",3),FAX=$P(FAX,";")
 S FAX=$TR(FAX,"- ","")
 S HZ=$$GET^%W1PRM("ORD") I 'HZ Q "NOTORDERNUMBER"
 I $L(FAX)<7!(FAX'?1N.N) Q "FAXNUMBERISWRONG"
 ;
 D PUT^W3HZMST(HZ,"FAX",FAX,$$^W3ORD)
 S MSD=$$MSD^W3HZMST(HZ) I 'MSD Q "RESTNOTEXIST"
 S @$$^W3ORD(HZ)@(HZ,"DBF")="2\"_$H
 D ^W3FAXHTM(HZ,MSD,"2-"_DET)
 D ^W3REGFAX(HZ)
 S ^[$$^W3MAIN]W3TSTORD(HZ)=MSD_"\"_$H_"\F"
 Q 1
 ;
SNDMAIL(PRM) ;
 N HZ,MSD,ZSY,ISHUR
 S HZ=$$GET^%W1PRM("ORD") I 'HZ Q "NOTORDERNUMBER"
 S MSD=$$MSD^W3HZMST(HZ) I 'MSD Q "RESTNOTEXIST"
 S ISHUR=$P(PRM,";",6)
 N TOT S TOT=$$TOTORD^W3HZMST(HZ,"",$$^W3ORD)
 ;
 I '$$^W3PRCOFR(HZ),TOT>0 S ISHUR=1
 I $$^W3PRCOFR(HZ),TOT'>0 S ISHUR=0
 ;
 S ZSY=$$SNDM(MSD,HZ,PRM,ISHUR)
 I 'ZSY S:ISHUR'?1N @$$^W3ORD(HZ)@(HZ,"EMAIL")=$H Q 1
 Q "ERROR : "_ZSY
 ;
 ;
SNDM(MSD,HZ,PRM,ISHUR) ;
 D PUT^%W3DEB("W3SNDHMH-SNDM","MSD=MSD&HZ=HZ&PRM=PRM")
 N SNIF,HZRSD,MKBL,MKBN
 S SNIF="" I $G(HZ) S SNIF=$G(@$$^W3ORD(HZ)@(HZ,"SNIF"))
 I MSD=1 S SNIF=$S(SNIF=1:1000,1:1001)
 S (HZRSD,MKBL,MKBN)=""
 I $G(HZ) D
 .S HZRSD=$G(@$$^W3ORD(HZ)@(HZ,"HZRSD"))
 .S MKBL=$P($G(@$$^W3ORD(HZ)@(HZ)),"~",18)
 .S MKBN=$G(@$$^W3ORD(HZ)@(HZ,"MKBN"))
 .S MKBN=$P(MKBN,";",2)
 ;
 N MSG,EMAIL,LINK,FROM,SMTP,USER,PSW,FILE,LOGO,DET
 N SNDMENU,KASHRUT,TXT,HDMAIL
 ;
 S EMAIL=$P(PRM,";")
 S EMAIL=$$CNWEB^%L1FRM(EMAIL)
 S LINK=$P(PRM,";",2)
 S LINK=$$CNWEB^%L1FRM(LINK)
 S DET=$P(PRM,";",3)
 S SNDMENU=$P(PRM,";",4)
 S KASHRUT=$P(PRM,";",5)
 S TXT=$$CNWEB^%L1FRM($P(PRM,";",7))
 S LINK=LINK_"&COMPRVIEW="_'DET
 S ^AL(JB,"PRM")=EMAIL_"\"_LINK_"\"_HZ_"\"_MSD_"\"_DET_"\"_ISHUR_"\"_SNDMENU_"\"_KASHRUT
 I $G(ISHUR)'?1N D
 .D PUT^W3HZMST(HZ,"EMAIL",EMAIL,$$^W3ORD)
 S FROM=$P($$EMAIL^W3R(MSD),",")
 S SMTP=$$SMTP^W3R(MSD) ;"out.bezeqint.net"
 S USER=$$USER^W3R(MSD) ;"sfactory@5666666.co.il"
 S PSW=$$PSWMAIL^W3R(MSD) ;"s5858585"
 ;;S LOGO=$$LOGO^W3R(MSD) ;"w3sflogo.jpg"
 S LOGO="w3sfsite.jpg"
 S HDMAIL=$$HDMAIL^W3R(MSD) ;"w3sflogo.jpg"
 I HDMAIL="" S HDMAIL="Bid" I MSD=1 S HDMAIL="Hazaat mahir online"
 I $$SF^W4PRM S HDMAIL="Order"
 D ^%L1TS
 ;;S HDMAIL=HDMAIL_"-"_HZ_" ( "_HZRSD_" ) "_MKBN
 S HDMAIL=HDMAIL_" "_HZRSD_" "_MKBN
 S KASHRUTFILE="http://www.sandwich-factory.co.il/images/kosher.pdf"
 ;
 S FILE="/tmp/sndmail"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  D HEAD
  ;;I MSD=1 D SFHEAD
  ;;I MSD'=1 D HEAD
 C FILE
 ;
 I SNDMENU D MENUFILE
 ;
 S MSG="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" -j """_HDMAIL_"""  -s """_FROM_""" -y """_FROM_""" -r """_EMAIL_""" -b """_FILE_""""
 ;
 I SNDMENU D
 .S MSG=MSG_" -a """_MENUFILE_""""
 ;
 S ^AL(JB,"MSG")=$E(MSG,1,800)
 zsy MSG
 S ^AL(JB,"ZSY")=$ZSY
 Q $ZSY
 ;
 ;
ORDCONTENT(ORD) ;
 N (%ARG,%REM,ORD,TSTORD,DET,JB)
 S W3FAXHTM=1,W3FAXHTM("SNDMAIL")=""
 S W3ORDLS=ORD
 S VW=1
 I $P($G(TSTORD),"-",2)=0!'$G(DET) S VW=1.5,COMPRVIEW=1,W3FAXHTM("COMPRESS")=""
 D ^W3ORDVW(VW)
 Q
 ;
 ;
MENUFILE ;
 S MENUFILE="/tmp/sndmenu"_$G(JB)_".html"
 I $G(ISHUR)?1N Q
 O MENUFILE:(NEWVERSION:REWIND:WRITE) U MENUFILE
  W "<html><body style="""_$$FONTFM^W3CSS_""" >"
   N %ARG
   S %ARG("MSD")=MSD
   S %ARG("CDKV")="ALL"
   S %ARG("SNDMAIL")=1
   D ^W3PRTPC
  W "</body></html>",!
 C MENUFILE
 Q
 ;
CMNT(TXT) ;
 N ST
 S ST="<br><span style=""color:red;font-size:14pt"">"
 S ST=ST_$$H2U^%L1FRM(TXT)_"</span>"
 Q ST
 ;
SFSITE(IMG) ;
 N WEB S WEB=$$WEB^W3MAIN
  W " <a href=""http://www.5666666.co.il"">"
   W " <img src="""_WEB_IMG_""" "_IMGSIZE_" alt=""Sandwich factory site"" />"
  W " </a>",!
 Q
 ;
SFTBL ;
 W "<table align=""center"" width=""55%"" >",!
 Q
 ;
SFHEAD ;
  W "<html><body>"
   W "<div align=""center"" dir="""_$$^%W1DIR_""">"
   N CLICK S CLICK=$$^%W1DICT("CLICKTHEBID")
   I ISHUR S CLICK=$$^%W1DICT("CLICKCONFIRM")
   ;
   N IMGSIZE S IMGSIZE=" width=""240px"" height=""60px"" "
   ;
   N WEB S WEB=$$WEB^W3MAIN
   ;
   D SFTBL
    W "<tr>"
     ;
     W "<td colspan=""3"" >",! ; 3
      W "<img src="""_WEB_"w3press.png"" alt=""To view offer price throuth browser press here"" />"
     W "</td>",!
     ;
     D SFHDHMH
     ;
     ;;D SFHDSITE
     ;
     ;;D SFHDMAIL
   W "</tr>",!
   ;
   W "<tr>"
    W "<td colspan=""6"" align=""center"" >" ; 6
     W "<img src="""_WEB_"w3sfview.jpg"" alt=""To view offer price scroll down"" />"
    w "</td>"
   w "</tr>",!
   ;
   W "</table>",!
   ;
   S TXT=$$INVH^%L1FRM(TXT)
   S TXT=$TR(TXT,"_",$C(10))
   S TXT=$TR(TXT,$C(9),$C(10))
   ;
   I ISHUR=1 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dxye` mkly dpnfd ")
   ..W $$CMNT("! ixehwt 'uieecpqn dax dcez")
   ;
   I ISHUR=0 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dlhea dpnfd ")
   ;
   I ISHUR'?1N D
   .W $$CMNT(TXT)
   ;
   D ORDCONTENT(HZ)
   ;
   W "</div>",!
  W "</body></html>",!
 Q
 ;
 ;
SFHDHMH ;
  W "<td>",!
  W "<a href=""http://"_LINK_""">"
   W "<img src="""_WEB_"w3sfprice.jpg"" alt=""Offer price"" "_IMGSIZE_" />"
  W "</a>",!
  W "</td>",!
  Q
 ;
SFHDMENU ;
  W "<td>",!
   W "<a href=""https://www.2order.org/mumps-examples/jsp/w3prtpc.jsp?MSD="_MSD_""">"
    W "<img src="""_WEB_"w3sfmenu.jpg"" alt=""Menu"" "_IMGSIZE_" />"
   W "</a>",!
  W "</td>",!
 Q  ;
 ;
SFHDKASHRUT ;
 W "<td>",!
  W " <a href="""_KASHRUTFILE_""">"
   W "<img src="""_WEB_"w3sfkashrut.jpg"" alt=""Kashrut document"" "_IMGSIZE_" />"
  W " </a>",!
 W "<td>",!
 Q  ;
 ;
SFHDCATERING ;
 W "<td>",!
  W "<a href=""http://www.Sf-catering.co.il"">"
   W "<img src="""_WEB_"w3sfcatering.jpg"" alt=""Catering"" "_IMGSIZE_" />"
  W "</a>",!
 W "</td>",!
 Q  ;
  ;
SFHDORD ;
 W "<td>",!
  W "<a href="""_WEB_"w3menu.jsp?MSD="_MSD_"&NEWPAGE=1"">"
   W "<img src="""_WEB_"w3sford.jpg"" alt=""Online order"" "_IMGSIZE_" />"
  W "</a>",!
 W "</td>",!
 Q
 ;
SFHDSITE ;
 W "<td>",!
 I WEB[".2order.org" S WEB="https://"_$P(WEB,"//",2,20)
 D SFSITE("w3sfsite.jpg")
 W "</td>",!
 Q
 ;
SFHDMAIL ;
 W "<td>",!
   W "<a href=""mailto:SFACTORY@5666666.CO.IL"">"
    W "<img src="""_WEB_"w3sfmail.jpg"" alt=""E-Mail"" "_IMGSIZE_" />"
   W "</a>",!
 W "</td>",!
 Q
 ;
 ;
HEAD ;
  W "<html><body>"
   W "<div align=""center"" dir="""_$$^%W1DIR_""">"
   N CLICK S CLICK=$$^%W1DICT("CLICKTHEBID")
   I ISHUR S CLICK=$$^%W1DICT("CLICKCONFIRM")
   W "<a href=""https://"_LINK_""">"_CLICK_"</a>",!
   W "<br>"
   W "<a href="""_$$WEB^W3MAIN_"w3menu.jsp?MSD="_MSD_"&NEWPAGE=1"">"_$$^%W1DICT("CLICKTOORDERONLINE")_"</a>",!
   ;I KASHRUT D
   W "<br>"
   W "<a href="""_KASHRUTFILE_""">"_$$^%W1DICT("SHOWKASHRUTFILE")_"</a>"
   W "<br>",!
   W "<a href=""https://www.2order.org/mumps-examples/jsp/w3prtpc.jsp?MSD="_MSD_""">"_$$^%W1DICT("SHOWWEBMENU")_"</a>"
   W "<br>",!
   W "<a href=""https://www.5666666.co.il"">"_$$^%W1DICT("SHOWWEBSITE")_"</a>"
   W "<br>",!
   I $$^W3PRCOFR(HZ) D
   .W "<a href=""https://www.Sf-catering.co.il"">"_$$H2U^%L1FRM("o`k ugl bpixhiiw zwlgn zbvnl")_"</a>"
   W "<br>",!
   ;
   I $L(LOGO) D
   .N WEB S WEB=$$WEB^W3MAIN
   .I WEB[".2order.org" S WEB="https://"_$P(WEB,"//",2,20)
   .W "<br><img src="""_WEB_LOGO_""" >",!
   ;
   S TXT=$$INVH^%L1FRM(TXT)
   S TXT=$TR(TXT,"_",$C(10))
   S TXT=$TR(TXT,$C(9),$C(10))
   ;
   I ISHUR=1 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dxye` mkly dpnfd ")
   ..W $$CMNT("! ixehwt 'uieecpqn dax dcez")
   ;
   I ISHUR=0 D
   .I $$^%W1LNG="H" D
   ..W $$CMNT("! dlhea dpnfd ")
   ..;;W $$CMNT(TXT_" : daiqn")
   ;
   I ISHUR'?1N D
   .W $$CMNT(TXT)
   ;
   D ORDCONTENT(HZ)
   W "</div>",!
  W "</body></html>",!
  Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SNDMSG
W3SNDMSG(EMAIL,FROM,MSGBODY,HD) ; [ 10.08.26 17:38 ] [ 20.03.25 13:57 ] [ 09.04.24 17:20 ] 
 ;;S MSG="echo ""<html><body>"_FROM_"<br>"_$$RPL^%L1FRM($$H2U^%L1FRM(MSGBODY),"_","<br>")_"</body></html>"" | mail -n -a ""content-type: text/html"" -s ""You have new customer message from Back office"" "_$$FUNC^%LCASE(EMAIL)
 ;;zsy MSG
 ;;Q $ZSY
 ;
 I $G(HD)="" S HD="Customer-Message"
 ;
 N MSD,MSG,LINK,SMTP,USER,FILE
 ;
 S MSD=$$GET^%W1PRM("MSD") I 'MSD Q "RESTNOTEXIST"
 I $G(FROM)="" S FROM=$$EMAIL^W3R(MSD)
 S SMTP=$$SMTP^W3R(MSD)
 S USER=$$USER^W3R(MSD)
 S PSW=$$PSWMAIL^W3R(MSD)
 ;
 Q $$MSG(MSGBODY,HD,EMAIL,FROM,SMTP,USER,PSW) ;
 ;
 ;
MSG(MSGBODY,HD,EMAIL,FROM,SMTP,USER,PSW) ;
 N FILE
 D FILE(MSGBODY)
 S HD=$$RPL^%L1FRM(HD,"'","\'")
 S MSG="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" -j """_HD_"""  -s """_FROM_""" -y """_FROM_""" -r """_EMAIL_""" -b """_FILE_""""
 S ^AL(JB,"MSG")=$E(MSG,1,800)
 zsy MSG
 S ^AL(JB,"MSG","ZSY")=$ZSY
 Q $ZSY
 ;
FILE(MSGBODY) ;
 S FILE="/tmp/sndmail"_$G(JB)
 ;;I $E(MSGBODY)="<" S FILE=$E(MSGBODY,2,200)
 ;
 C FILE:(DELETE)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  W "<html><body dir="""_$$^%W1DIR_""">",!
   W MSGBODY
  W "</body></html>",!
 C FILE
 ;
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3SNDORD
W3SNDORD ; [ 31.08.08 09:17 ] [ 12.05.08 21:27 ] [ 28.03.08 20:47 ]
 ;-------------------------------------------------------
 N (JB,MEDAT,ADDAT,MSD,%ARG,OKPSW)
 D KILL^%W3DEB("W3SNDORD")
 S MSDR=$G(%ARG("MSDR"))
 S MSD=$G(%ARG("MSD"))
 D PUT^%W3DEB("W3SNDORD","MEDAT=MEDAT & ADDAT=ADDAT & MSD=MSD & OKPSW=OKPSW & ARG=[%ARG")
 I '$G(OKPSW) Q
 S W3ORDLS("JB")=JB
 ;;W "MSD="_MSD_" MSDR="_MSDR
 D GL
 S (SHZ,SHZNOK)=0
 W "<div align=""center"">",!
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" class=""vw"" border=1 cellspacing=""0"" width=""100%"" >",!
 W "<tr>",!
 W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>"
 W "<th>"_$$^%W1DICT("DATE")_"</th>"
 W "<th>"_$$^%W1DICT("TIME")_"</th>"
 W "<th>"_$$^%W1DICT("RESULT")_"</th>"
 W "<th>"_$$^%W1DICT("FILENAME")_"</th>"
 W "<th>"_$$^%W1DICT("RESTAURANT")_"</th>"
 W "<th>"_$$^%W1DICT("SENDTO")_"</th>"
 W "<th>"_$$^%W1DICT("CREATEDORDER")_"</th>"
 W "<th>"_$$^%W1DICT("KINDOFERROR")_"</th>"
 ;
 S DRC=1
 I $G(%ARG("ORDER")) D  G TOT
 .I '$D(@$$^W4GL("W3ORDSND")@(%ARG("ORDER"))) Q
 .N JB S W3ORDLS=%ARG("ORDER"),JB=W3ORDLS D SHOWORD(%ARG("ORDER"))
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N JB S W3ORDLS=N,JB=N
 .I $G(MEDAT),$$DT(N)<MEDAT Q
 .I $G(ADDAT),$$DT(N)>ADDAT Q
 .I $$RS,$G(MSD),$$RS'=MSD Q
 .I $$RS,$G(MSDR),'$D(^[$$^W3MAIN]W3MSDR(MSDR,$$RS)) Q
 .D SHOWORD(N)
 ;
TOT W "<tr"
 W " style=""font-size:"_$$^W3FSZ(16)_";background-color:yellow;color:black"""
 W "><td>&nbsp;"
 W $$^%W1DICT("TOTAL")
 W "</td>",!
 W "<td>&nbsp;</td><td>&nbsp;<td/>"
 W "<td>",!
 W $$^%W1DICT("ORDERQN")_"</td><td>"_SHZ
 W "</td>",!
 W "<td style=""color:red"">"_$$^%W1DICT("ORDERNOK")_"</td>"
 W "<td style=""color:red"">",!
 W "&nbsp;"_SHZNOK_"&nbsp;"
 W "</td>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "<input type=""button"" value="""_$$^%W1DICT("PRINTORDERLIST")_""" onClick=""Print('"_$G(MEDAT)_"','"_$G(ADDAT)_"','"_$G(MSD)_"')"" style=""font-size:"_$$^W3FSZ(16)_""" />",!
 W "</div>",!
 W "<br /><br /><br />",!
 Q
 ;
SHOWORD(N) ;
 S SHZ=SHZ+1
 W "<tr"
 I $$RESCD(N)["NOK" W " style=""background-color:pink""" S SHZNOK=SHZNOK+1
 W ">",!
 W "<td style=""text-align:center;cursor:pointer"" onClick=""ShowOrd("_W3ORDLS("JB")_","_N_",1)"">&nbsp;"_N_"</td>"
 W "<td align=""center"">"_$$DAT(N)_"</td>"
 W "<td align=""center"">"_$$TIM(N)_"</td>"
 W "<td align=""center"">"_$$RES(N)_"</td>"
 W "<td>&nbsp;"_$$FN(N)_"</td>"
 W "<td align=""center"">&nbsp;"_$$REST(N)_"</td>"
 W "<td align=""center"">&nbsp;"_$$SENDTO(N)_"</td>"
 W "<td style=""text-align:center;color:green;font-size:"_$$^W3FSZ(16)_""">&nbsp;"_$$REMORD(N)_"</td>"
 W "<td dir=""LTR"" align=""center"">&nbsp;"_$$ERROR(N)_"</td>"
 W "</tr>",!
 Q
MIN(SHAA) ;
 Q $P(SHAA,":")*60+$P(SHAA,":",2)
 ;
DT(N)
 S GLN=$$GLN(N) I GLN="" Q ""
 Q $P($P($G(@GL@(N)),";"),",")
 ;
TIM(N)
 S GLN=$$GLN(N) I GLN="" Q "&nbsp;"
 Q $$T^%L1TIME($P($P($G(@GL@(N)),";"),",",2))
 ;
DAT(N) N DT
 S DT=$$DT(N) I DT="" Q "&nbsp;"
 Q $$^%L1DC($$DT(N),1)
 ;
RESCD(N)
 N GLN,RES S GLN=$$GLN(N) I GLN="" Q ""
 Q $P(GLN,";",2)
RES(N) ;
 S RES=$$RESCD(N)
 I RES="" Q "&nbsp;"
 I RES="OK" Q "<span style=""color:green;font-size:"_$$^W3FSZ(16)_""">+</span>"
 I RES="NOK" Q "<span style=""color:red;font-size:"_$$^W3FSZ(20)_""">-</span>"
 I RES="NOK1" Q "<span style=""color:blue;font-size:"_$$^W3FSZ(20)_""">-</span>"
 Q "&nbsp;"
 ;
FN(N) S GLN=$$GLN(N) I GLN="" Q "&nbsp;"
 N FN S FN=$P(GLN,";",3)
 I FN="" Q "&nbsp;"
 Q FN
 ;
SENDTO(N) S GLN=$$GLN(N) I GLN="" Q "&nbsp;"
 N SND S SND=$P(GLN,";",4)
 I SND="" Q "&nbsp;"
 Q SND
 ;
REST(N) N RS,RS1 S RS=$$RS(N)
 S RS1="" I RS S RS1=$G(^[$$^W3MAIN]W3MSD(RS))
 I RS1="" Q "&nbsp;"
 Q $$H2U^%L1FRM(RS1)
 ;
RS(N) Q $P($P($P(GLN,";",3),"_",2),".")
 ;
REMORD(N) S GLN=$$GLN(N) I GLN="" Q "&nbsp;"
 I $$RESCD(N)="OK" Q $P(GLN,";",5)
 Q "&nbsp;"
 ;
ERROR(N) N GLN,ER S GLN=$$GLN(N) I GLN="" Q "&nbsp;"
 S ER=""
 I $$RESCD(N)="OK" Q "&nbsp;"
 S ER=$P(GLN,";",5) I ER="" Q "&nbsp;"
 IF ER<0 S ER=$G(^[$$^W3MAIN]W3SNDERR(ER))
 Q ER
 ;
GL ;
 S GL="^[$$^W3MAIN]W3ORDSND"
 Q
GLN(N)
 D GL N GLN S GLN=$G(@GL@(N))
 Q GLN
 ;
SELREST ;
 N I,N,GLMSD
 S GLMSD="^[$$^W3MAIN]W3MSD"
 ;
 W "<select id=""selrest"">",!
 W "<option value=""ALL"">"_$$^%W1DICT("ALLRESTAURANTS")_"</option>",!
 S N="",I=0 F  S N=$O(@GLMSD@(N)) Q:N=""  D
 .I $G(^(N))="" Q
 .W "<option value="""_N_""">"_$$H2U^%L1FRM($G(^(N)))_"</option>",!
 W "</select>",!
 Q
SELRESTR ;
 N I,N,GLMSDR
 S GLMSDR="^[$$^W3MAIN]W3MSDRI"
 ;
 W "<select id=""selrest"">",!
 W "<option value=""ALL"">"_$$^%W1DICT("ALLRESTAURANTS")_"</option>",!
 S N="",I=0 F  S N=$O(@GLMSDR@(N)) Q:N=""  D
 .I $G(^(N))="" Q
 .W "<option value="""_N_""">"_$$H2U^%L1FRM($G(^(N)))_"</option>",!
 W "</select>",!
 Q

W3SNDPSW
W3SNDPSW(USER) ; [ 01.10.07 14:04 ] [
 N (USER)
 S JB=$P($G(USER),"~",2) I 'JB Q "-3"
 D PUT^%W3DEB("W3SNDPSW","USER=USER")
 S USER=$P(USER,"~")
 S MSD=$$GET^%W1PRM("MSD")
 I 'MSD Q "-1"
 I '$$D^W3L(USER) Q "-2"
 S MSGBODY="""Your password is:"_$C(10)_$$PSW^W3L(USER)_""""
 S MSG="echo "_MSGBODY_" | mail -n -s ""Your password"" "_$$FUNC^%LCASE($$EMAIL^W3L(USER))
 zsy MSG
 Q 1

W3SNIF
W3SNIF ; [ 09.04.12 20:43 ] [ 01.07.08 08:50 ] [
SNIF(NSNIF) Q $G(@$$^W4GL("W3SNIF")@(NSNIF))
ADDR(NSNIF) Q $G(@$$^W4GL("W3SNIF")@(NSNIF,"ADDR"))
SNIFA(NSNIF) I $$^%W1DIR="LTR" Q $$SNIF(NSNIF)_", "_$$ADDR(NSNIF)
 Q $$ADDR(NSNIF)_" ,"_$$SNIF(NSNIF)
 ;
GETSNIF(STAM) ;
 N SNIF S SNIF=""
 N N S N="" F  S N=$O(@$$^W4GL("W3SNIF")@(N)) Q:N=""  D
 .S SNIF=SNIF_N_"^"_$$H2U^%L1FRM($$SNIFA(N))_"~"
 Q $E(SNIF,1,$L(SNIF)-1)

W3SO
W3SO ; [ 29.04.15 09:35 ] [ 02.08.13 13:14 ] [ 25.06.13 03:40 ]
 ;;--------------------------------------------------------------
 ;; ^W3SO("fresh-kitchen")=spice|fresh-kitchen@rsd.co.il|GSsfHqN
 ;; ^W3SOR2M("fresh-kitchen")=10040
 ;;--------------------------------------------------------------
 N (%ARG,%REM)
 N $ZT S $ZT="G SVER^%L1X"
 S RESTID=""
BG S RESTID=$O(^[$$^W3MAIN]W3SO(RESTID)) I RESTID="" H  ;10 G BG
 ;S RESTID="""_RESTID_"""
 D ^W3SORD(RESTID)
 I $D(^[$$^W3MAIN]SOGP($H-7)) K ^[$$^W3MAIN]SOGP($H-7)
 H .1 G BG
 Q

W3SO1
W3SO ; [ 04.07.13 04:42 ] [ 11.05.13 19:26 ] [ 18.02.13 13:15 ]
 ;;--------------------------------------------------------------
 ;; ^W3SO("fresh-kitchen")=spice|fresh-kitchen@rsd.co.il|GSsfHqN
 ;; ^W3SOR2M("fresh-kitchen")=10040
 ;;--------------------------------------------------------------
 N (%ARG,%REM)
 N $ZT S $ZT="G SVER^%L1X"
 S RESTID=""
BG S RESTID=$O(^[$$^W3MAIN]W3SO(RESTID)) I RESTID="" H  ;10 G BG
 ;S RESTID="""_RESTID_"""
 D ^W3SORD(RESTID)
 H 10 K ^[$$^W3MAIN]SOGP($H-5) G BG
 Q

W3SOCON
W3SOCON(FUNC,POST); [ 16.08.10 11:23 ] [  ; [ 29.04.15 09:45 ] [ 25.02.14 15:35 ] [ 06.01.13 12:24 ]
 N (JB,%ARG,%REM,FUNC,POST,SOER,SOER1)
 S COUNTER=$O(^[$$^W3MAIN]SOGP(+$H,"CON",""),-1)+1
 S PROT="^[$$^W3MAIN]SOGP(+$H,""CON"",COUNTER)"
 S SOER=0,SOER1=""
 S HEADER="""Content-Type:application/json"""
 S URL="https://api.openrest.com/v1.1"
 ;
 ;
 S FLOUT=$$FLOUT^W3SOPRM
 C FLOUT:(DELETE) ; *** LEV 26/12
 S CMD="/usr/bin/curl -k -m 10 -s -X POST -H "_HEADER_" -d@"_POST_" "_URL_" -o "_FLOUT
 ;
 D GL S H=+$H
 ;
 D PROT("CMD",CMD)
 D PROT("FLOUT",FLOUT)
 ;
 ZSY CMD ;;SUCCESS OF THIS COMMAND SHOUL BE CHECKED BEFORE CMD1
 D PROT("ZSY",$ZSY)
 I $ZSY S SOER=-$ZSY,SOER1="zxeywza d`iby" G END
 ;
 F JJ=1:1:20  Q:$$^%L1ZOS(10,FLOUT)'<0  H 1
 ;
 I $$^%L1ZOS(10,FLOUT)<0 S SOER=-.2,SOER1="dlawzd `l daeyz" D  G END
 .D PROT("SOER",SOER)
 ;
 K @GL
 ;
 C FLOUT
 I '$$^%L1JSON(FLOUT,GL) S SOER=-.9,SOER1="mipezp zlawa d`iby"
 ;
 D PROTGT
 ;
END Q
 ;
 ;
PROT(NM,VL) ;
 Q:'$G(SODEB)
 S @PROT@(FUNC,POST,NM)=VL
 Q
 ;
PROTGT ;
 ;;M @PROT@("SOGT")=@GL
 Q
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPSO($J)"
 Q

W3SOER
W3SOER(PROG,SOER,SOER1,REST) ; [ 21.11.12 18:59 ] [
 S ^[$$^W3MAIN]W3SOER($H,PROG,SOER)=SOER1_"\"_$J_"\"_$G(REST)_"\"_$ZD($H,"DD.MM.YY  24:60")
 Q

W3SOFUNC
W3SOFUNC ; [ 26.02.14 14:01 ] [ 19.07.13 09:43 ] [ 20.06.13 15:48 ]
 ;
GETMENU(RESTID) ;
 D HEADER
 S STRIN="{""type"":""get_organization_full"", ""organizationId"":"""_RESTID_""",""fields"":[""menu""]}"
 D FOOTER(STRIN,FLIN)
 D ^W3SOCON("GETMENU",FLIN)
 Q
 ;
GETORDS(RESTID)
 D HEADER
 I RESTID=0 S RESTID=$$GRSTL^W3SOFUNC,AUTH="spice|general@rsd.co.il|H9zb4f3"
 E  S AUTH=$$AUTH(RESTID)
 S STRIN="{""type"":""query_orders"",""accessToken"":"""_AUTH_""", ""restaurantIds"":["""_RESTID_"""], ""status"":""new"", ""restaurantView"":true}"
 D FOOTER(STRIN,FLIN)
 D ^W3SOCON("GETORDS",FLIN)
 Q
 ;
CHORDSTA(RESTID,ORD,STAT,ERDESC) ;
 N AUTH,STRIN
 D HEADER
 S AUTH=$$AUTH(RESTID)
 ;;S STRIN="{""type"":""set_order_status"", ""accessToken"":"""_AUTH_""", ""orderId"":"""_ORD_""", ""status"":"""_STAT_"""}"
 S STRIN="{""type"":""set_order_status"", ""accessToken"":"""_AUTH_""", ""orderId"":"""_ORD_""", ""status"":"""_STAT_""",""comment"":"""_ERDESC_"""}"
 D FOOTER(STRIN,FLIN)
 D ^W3SOCON("CHORDSTA",FLIN)
 Q
 ;
HEADER ; --> FLIN,BID,FS : O FLIN U FLIN
 ;
 S BID=$$RESTID^W3SOPRM
 ;
 ;
 S FS="&" ;- FIELD SEPARATOR
 ;
 S FLIN=$$FLIN^W3SOPRM
 C FLIN:DELETE
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 Q
 ;
 ;
GRSTL(STAM) ;
 S REST="",RESTL=""
 F  S REST=$O(^W3SO(REST)) Q:REST=""  D
 .S RESTL=RESTL_""""_REST_""""_","
 Q $E(RESTL,2,$L(RESTL)-2)
 ;
FOOTER(STRIN,FLIN) ;
 W STRIN,!
 C FLIN
 ;;U 0 W STRIN,! H 4
 Q
 ;
 ;
AUTH(RESTID) ;
 Q $G(^[$$^W3MAIN]W3SO(RESTID))

W3SOMEN0
W3SOMENU(RESTID) ; [ 27.10.14 13:37 ] [ 23.01.14 19:51 ] [ 11.02.13 13:41 ]
 N (JB,%ARG,%REM,M,RESTID,SOER)
 D ^%L1TS
 D GETMENU^W3SOFUNC(RESTID)
 D GL^W3SOCON
 I $G(SOER) W $G(SOER1),! D ^W3SOER(RESTID,"W3SOMENU",SOER,SOER1) G END
 S GL0=GL
 S GLTMP="^[$$^W3MAIN]TMPMENU($J)"
 K @GLTMP
 S (IT4,IT5,IT6,IT7)=0
 F  S GL0=$Q(@GL0) Q:GL0=""  D
 .;W GL0,"=",$G(@GL0),!
 .S UR=$L(GL0,",")
 .S GL00=$P(GL0,",",1,$L(GL0,",")-1)_")"
 .S PTR=$P($G(@GL00),",") S:PTR="" PTR=" "
 .S A=$G(@GL0)
 .
 .I UR=4 S IT4=0,IDIT="" I A["items" S IT4=1
 .I UR=5 S IT5=0,IDIT="" I A["items" S IT5=1
 .I UR=6,A["id" S IT6=0 I IT4,IT5 D
 ..S:A["=" A=$P(A,"=",2,20)
 ..S ITID=$$GET(A,"id") Q:ITID=""
 ..S IT6=1
 .I UR=7,A["title",A["he_IL" S IT7=0 I IT4,IT5,IT6,ITID D
 ..;
 ..S ITNM=$$GET(A,"he_IL") Q:ITNM=""
 ..S @GLTMP@(ITID)=ITNM
 .I UR=7,A["externalIds" I A["il.co.rsd",IT4,IT5,IT6,ITID D
 ..S ITEXT=$$GET(A,"externalIds=il.co.rsd")
 ..I ITEXT?.P S ITEXT=$$GET(A,"il.co.rsd")
 ..S @GLTMP@(ITID,"EXT")=ITEXT
 ;
END K @GL Q
 ;
 ;
GETRKV(PTR,A) ;
 N T S T=""
 I A["=" S T=$$CLRQ($P(A,"=")),A=$P(A,"=",2,40)
 N J F J=1:1:$L(A,",") D
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S IND=$$CLRQ(IND)
 .S PTR=$$CLRQ(PTR)
 .S:PTR="" PTR=" " Q:IND=""
 .S CONT=$P(COUPLE,":",2)
 .S CONT=$$FUNC^%UCASE(CONT)
 .S CONT=$$CLRQ(CONT)
 .I T'="" S IND=T_"="_IND
 .I $D(HD(PTR,IND)) D
 ..N J1 F J1=1:1 Q:'$D(HD(PTR,$P(IND,"-")_"-"_J1))
 ..S IND=$P(IND,"-")_"-"_J1
 .S HD(PTR,IND)=CONT
 Q
 ;
GET(A,RKV) ;
 Q $$GET^W3SORD(A,RKV)
 ;
CLRQ(TXT) ;
 Q $$CLRQ^W3SORD(TXT)
 ;
W2L(TXT) ;
 Q $$W2L^W3SORD(TXT)
 ;
 ;
ZAP ;
 ;
 D SENDOK
 Q
 ;
SENDOK ;
 Q

W3SOMENU
W3SOMENU(RESTID) ; [ 29.04.15 09:40 ] [ 27.10.14 13:39 ] [ 23.01.14 19:51 ]
 N (JB,%ARG,%REM,M,RESTID,SOER)
 D ^%L1TS
 D GETMENU^W3SOFUNC(RESTID)
 D GL^W3SOCON
 I $G(SOER) W $G(SOER1),! D ^W3SOER(RESTID,"W3SOMENU",SOER,SOER1) G END
 S GL0=GL
 S GLTMP="^[$$^W3MAIN]TMPMENU($J)"
 K @GLTMP
 S (IT4,IT5,IT6,IT7)=0
 ;
 F  S GL0=$Q(@GL0) Q:GL0=""  D
 .;W GL0,"=",$G(@GL0),!
 .S UR=$L(GL0,",")
 .S GL00=$P(GL0,",",1,$L(GL0,",")-1)_")"
 .S PTR=$P($G(@GL00),",") S:PTR="" PTR=" "
 .S A=$G(@GL0)
 .
 .I UR=4 S IT4=0,IDIT="" I A["items" S IT4=1
 .I UR=5 S IT5=0,IDIT="" I A["items" S IT5=1
 .I UR=6,A["id" S IT6=0 I IT4,IT5 D
 ..S:A["=" A=$P(A,"=",2,20)
 ..S ITID=$$GET(A,"id") Q:ITID=""
 ..S IT6=1
 .I UR=7,A["title",A["he_IL" S IT7=0 I IT4,IT5,IT6,ITID D
 ..;
 ..S ITNM=$$GET(A,"he_IL") Q:ITNM=""
 ..S @GLTMP@(ITID)=ITNM
 .I UR=7,A["externalIds" I A["il.co.rsd",IT4,IT5,IT6,ITID D
 ..S ITEXT=$$GET(A,"externalIds=il.co.rsd")
 ..I ITEXT?.P S ITEXT=$$GET(A,"il.co.rsd")
 ..S @GLTMP@(ITID,"EXT")=ITEXT
 ;
END K @GL Q
 ;
 ;
GETRKV(PTR,A) ;
 N T S T=""
 I A["=" S T=$$CLRQ($P(A,"=")),A=$P(A,"=",2,40)
 N J F J=1:1:$L(A,",") D
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S IND=$$CLRQ(IND)
 .S PTR=$$CLRQ(PTR)
 .S:PTR="" PTR=" " Q:IND=""
 .S CONT=$P(COUPLE,":",2)
 .S CONT=$$FUNC^%UCASE(CONT)
 .S CONT=$$CLRQ(CONT)
 .I T'="" S IND=T_"="_IND
 .I $D(HD(PTR,IND)) D
 ..N J1 F J1=1:1 Q:'$D(HD(PTR,$P(IND,"-")_"-"_J1))
 ..S IND=$P(IND,"-")_"-"_J1
 .S HD(PTR,IND)=CONT
 Q
 ;
GET(A,RKV) ;
 Q $$GET^W3SORD(A,RKV)
 ;
CLRQ(TXT) ;
 Q $$CLRQ^W3SORD(TXT)
 ;
W2L(TXT) ;
 Q $$W2L^W3SORD(TXT)
 ;
 ;
ZAP ;
 ;
 D SENDOK
 Q
 ;
SENDOK ;
 Q
 ;
UPD(RESTID) ;
 N GLTMP,COUNT
 S GLTMP="^[$$^W3MAIN]TMPMENU($J)"
 K @GLTMP
 D ^W3SOMENU(RESTID)
 S COUNT=$O(^[$$^W3MAIN]W3SOM(RESTID,+$H,999999),-1)+1
 M ^[$$^W3MAIN]W3SOM(RESTID,+$H,COUNT)=@GLTMP
 Q

W3SOPRM
SOPRM ; [ 11.10.12 13:19 ] [ 10.10.12 14:47 ] [
FLIN()
 Q "/tmp/soin"_$$^%L3MYDVN
 ;
FLOUT()
 Q "/tmp/soout"_$$^%L3MYDVN
 ;
RESTID()
 Q "demo20"
 ;
VENDID()
 Q 25

W3SORD
W3SORD(RESTID) ; [ 10.11.15 14:48 ] [ 29.04.15 09:49 ] [ 10.02.15 18:46 ]
 N (%ARG,%REM,M,RESTID)
 D ^%L1TS
 ;
 S GLMENU="^[$$^W3MAIN]TMPMENU($J)"
 D GETMENU(RESTID)
 I $D(@GLMENU)<10 Q
 ;
 D GL^W3SOCON
 K @GL
 D GETORDS^W3SOFUNC(RESTID)
 ;
 S GLTMP="^[$$^W3MAIN]TMPSORD($J)"
 S GLHD="^[$$^W3MAIN]TMPSOHD($J)"
 I $G(SOER) G END  ; D SENDOK(RESTID,9999999,"","ERROR "_SOER) G END
 ;
 S GL0=GL,PTR=" ",IDORD="",I=0
 ;
 K @GLTMP,@GLHD,PTRID
 ;
 S URORD="",ENDORD=0
 F  S GL0=$Q(@GL0) Q:GL0=""  Q:$P($P(GL0,","),"(",2)'=$J  D  Q:ENDORD
 .S UR=$L(GL0,",")
 .I URORD,UR'>URORD S IDORD=""
 .F U=UR+1:1:11 K PTRID(U)
 .S GL00=$P(GL0,",",1,$L(GL0,",")-1)_")"
 .S PTR=$P($G(@GL00),",") S:PTR="" PTR=" "
 .S A=$G(@GL0)
 .I A["=" S PTRID(UR)=$P(A,"=")
 .
 .I UR=3 S IDORD="" D GETHDORD(A) I IDORD S URORD=3 D KILL
 .I 'IDORD,UR=5 D GETHDORD(A) S URORD=5 D KILL
 .I UR>5,'IDORD D KILL Q
 .
 .I IDORD,UR=(URORD+1)!(UR=(URORD+2))!(UR=(URORD+3)),'$$ITEM(A) D GETRKV(IDORD,A,UR) S PTR=$P(A,",")
 .
 .I UR=(URORD+2)!(UR=(URORD+5))!(UR=(URORD+8)),$$ITEM(A) D  Q
 ..N MAIN S MAIN=0 I UR=(URORD+2) S MAIN=1 K MAINQN
 ..I A["=" S A=$P(A,"=",2,200)
 ..S CD=$$GET(A,"itemId") Q:CD=""
 ..S CDR=$S($G(@GLMENU@(CD,"EXT")):^("EXT"),1:"0-"_CD)
 ..S NAME=$TR($G(@GLMENU@(CD)),"()","")
 ..S NAME=$TR(NAME,"\~*","/-X")
 ..S PRC=$$GET(A,"price")
 ..S CMNT=$$GET(A,"comment")
 ..S QN=$$GET(A,"count") I 'QN S QN=$S(MAIN:1,$G(MAINQN):MAINQN,1:1)
 ..I MAIN S MAINQN=QN
 ..S ST=$S(MAIN:"0",1:1)_"~"_CDR_"~"_NAME_"~"_$J(PRC*.01,2,2)_"~"_QN
 ..S $P(ST,"~",7)=CMNT
 ..;;W "GL0:",GL0_" = "_$G(@GL0),!
 ..;;W "I="_I_"  ST="_ST,!!
 ..I IDORD S I=I+1,@GLTMP@(IDORD,I)=ST
 .
 D ZAP
 ;
 I $D(@GL@(1,1,1))>9 D
 .N GLA S GLA="^[$$^W3MAIN]W3SOA(+$H,"
 .N COUNT S COUNT=$O(^[$$^W3MAIN]W3SOA(+$H,99999),-1)+1
 .S GLA=GLA_COUNT_")"
 .M @GLA=@GL
 .S @GLA=$H
 .M ^[$$^W3MAIN]W3SOM(RESTID,+$H,COUNT)=@GLMENU
 ;
END K @GL,@GLTMP,@GLMENU,@GLHD ; *** 11/09
 Q
 ;
 ;
GETRKV(PTR,A,UR) ;
 N T S T=""
 I A["=" S T=$$CLRQ($P(A,"=")),A=$P(A,"=",2,40)
 I T="",$G(PTRID(UR))'="" S T=$$CLRQ(PTRID(UR))
 S A=$$CLRZPT(A)
 N J F J=1:1:$L(A,",") D
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S IND=$$CLRQ(IND)
 .S PTR=$$CLRQ(PTR)
 .S:PTR="" PTR=" " Q:IND=""
 .S CONT=$P(COUPLE,":",2)
 .S CONT=$$FUNC^%UCASE(CONT)
 .S CONT=$$CLRQ(CONT)
 .I T'="" S IND=T_"="_IND
 .I $D(@GLHD@(PTR,IND)) D
 ..N J1 F J1=1:1 Q:'$D(@GLHD@(PTR,$P(IND,"-")_"-"_J1))
 ..S IND=$P(IND,"-")_"-"_J1
 .S @GLHD@(PTR,IND)=CONT
 Q
 ;
GET(A,RKV) ;
 N COUPLE,IND,CONT,OK,BG S OK=0
 S A=$$CLRZPT(A)
 N J,J1 F J=1:1:$L(A,",") D  Q:OK
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S BG=$F(A,IND)
 .S IND=$$CLRQ(IND)
 .Q:IND=""
 .I IND=RKV S OK=1 S CONT=$P(COUPLE,":",2)
 .E  I $P(IND,"=",2)=RKV S OK=1 S CONT=$P(COUPLE,":",2)
 I OK Q $$CLRQ($$FUNC^%UCASE(CONT))
 Q ""
 ;
ITEM(A) ;
 I $TR($P($P(A,","),":"),"""","")["itemId" Q 1
 Q 0
 ;
CLRQ(TXT) ;
 S:$E(TXT)="""" TXT=$TR(TXT,"""","")
 I TXT[$C(215) S TXT=$$W2L(TXT)
 S TXT=$TR(TXT,"\~*","/-X")
 Q TXT
 ;
W2L(TXT) ;
 N OU S OU=""
 N J S J=0
W2LC ;
 S J=J+1 I J>$L(TXT) G W2LCE
 I $A(TXT,J)=215 D  G W2LC
 .N SMB S SMB=$A(TXT,J+1)
 .D
 ..I SMB>186 S SMB=SMB-155 Q
 ..I SMB=153 S SMB=105 Q  ;39 Q
 ..I SMB>79 S SMB=SMB-48
 .S OU=OU_$C(SMB) S J=J+1
 ;
 S OU=OU_$E(TXT,J) G W2LC
W2LCE
 S OU=$$RPL^%L1FRM(OU,$C(194,128,153),"i")
 Q $$^%W1H2U(OU)
 ;
 ;
ZAP ;
 N ORD,I,JB
 S ORD="" F  S ORD=$O(@GLHD@(ORD)) Q:ORD=""  D
 .S JB=$$^%W1SsID("TMPSO")
 .K ^[$$^W3MAIN]TMPORD(JB) S I=0
 .N N S N="" F  S N=$O(@GLTMP@(ORD,N)) Q:N=""  D
 ..S I=I+1 M ^[$$^W3MAIN]TMPORD(JB,I)=@GLTMP@(ORD,N)
 .K @GLTMP@(ORD)
 .D ZAPHD(ORD) K @GLHD@(ORD)
 .;;W "ORD:"_ORD_" OK="_OK,!
 Q
 ;
ZAPHD(ORD) ;
 N (JB,%ARG,ORD,GLHD,OK,RESTID) S OK=0
 S REST=$G(@GLHD@(ORD,"id-rest")) Q:REST=""
 S REST=$$FUNC^%LCASE(REST)
 ;
 Q:REST'=RESTID
 S MSD=$G(^[$$^W3MAIN]W3SOR2M(REST)) Q:MSD=""
 S ^[$$^W3MAIN]TMPORD(JB,"MSD")=MSD
 S CITY=$G(@GLHD@(ORD,"address=city"))
 S DLVMETHOD=$G(@GLHD@(ORD,"delivery=type"))
 S NAME=$G(@GLHD@(ORD,"contact=lastName"))_" "_$G(@GLHD@(ORD,"contact=firstName"))
 S PHONE01=$G(@GLHD@(ORD,"contact=phone"))
 S PHONE01=$$RPL^%L1FRM(PHONE01,"+972",0)
 S PHONE02=""
 S CODE=$S(PHONE01:PHONE01,1:1111111)
 D PUT^%W1PRM("CODE",CODE)
 S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 S ASM=ORD
 ;
 S DMSH=$G(@GLHD@(ORD,"delivery=charge"))*.01
 S HNH=-$G(@GLHD@(ORD,"charges=amount"))*.01
 S AHUZ="" ;;-$G(@GLHD@(ORD,"charges=amountRule"))*.01
 S TOTIME=$G(@GLHD@(ORD,"delivery=time"))
 I TOTIME?10N.N S TOTIME=$$SPA^%L1FRM($$EPOH2T^%L1DC(TOTIME))
 S TIMERCV=$G(@GLHD@(ORD,"log=timestamp"))
 I TIMERCV?10N.N S TIMERCV=$$SPA^%L1FRM($$EPOH2T^%L1DC(TIMERCV))
 ;
 D
 .S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 .I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N.E D  Q
 ..S DAT=$P(TOTIME," ")
 ..S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ..S SHAA=$P($P(TOTIME," ",2),":",1,2)
 .I TOTIME?.E2N1":"2N.E D
 ..S DAT=$ZD($H,"DD.MM.YY")
 ..S SHAA=$P(TOTIME,":",1,2)
 ..I TIMERCV?.E1N1":"2N.E S SHAA=SHAA_":-"_TIMERCV
 ;
 I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800,DLVMETHOD'="TAKEOUT" D
 .S SHAA=$$TM^W3TIME($H,CITY)_":!"_SHAA
 ;
 N SHAA0 S SHAA0=$S(SHAA["-":$P(SHAA,"-",2),1:SHAA)
 I DAT=$ZD($H,"DD.MM.YY"),$H>82000,SHAA0<3 S DAT=$ZD($H+1,"DD.MM.YY")
 ;
 S TOPAY=0
 S TOPAY=$G(@GLHD@(ORD,"id-price"))
 ;
 I TOPAY D
 .D PUT^W3HZMST(JB,"TSHL",$G(TOPAY))
 ;
 D PUT^W3HZMST(JB,"NAME",NAME)
 D PUT^W3HZMST(JB,"NMB",CODE)
 D PUT^W3HZMST(JB,"CODE",CODE)
 D PUT^W3HZMST(JB,"PELE",PHONE01)
 D PUT^W3HZMST(JB,"DAT",DAT)
 D PUT^W3HZMST(JB,"SHAA",SHAA)
 D PUT^W3HZMST(JB,"DATCB",ZMANK)
 D PUT^W3HZMST(JB,"HZMLAK",ASM)
 D PUT^W3HZMST(JB,"MKR","15") ; SOI
 D PUT^W3HZMST(JB,"DMSH",$G(DMSH))
 D PUT^W3HZMST(JB,"HNH",$G(HNH))
 D PUT^W3HZMST(JB,"AHUZ",$G(AHUZ))
 ;
 S HOME=$G(@GLHD@(ORD,"address=number"))
 S STREET=$G(@GLHD@(ORD,"address=street"))
 I DLVMETHOD="TAKEOUT" S STREET="TAKEAWAY"
 S COMMENT=$G(@GLHD@(ORD,"address=comment"))
 S CMHD=$G(@GLHD@(ORD,"id-comment"))
 S FLAT=$G(@GLHD@(ORD,"address=apt"))
 S COMP=""
 S ENTRANCE=$G(@GLHD@(ORD,"address=entrance"))
 S FLOOR=$G(@GLHD@(ORD,"address=floor"))
 ;
 D PUT^W3HZMST(JB,"CITY",CITY)
 D PUT^W3HZMST(JB,"STREET",STREET)
 D PUT^W3HZMST(JB,"COMMENT",COMMENT)
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 D PUT^W3HZMST(JB,"COMP",COMP)
 D PUT^W3HZMST(JB,"CMHD",ASM_":SO "_CMHD)
 ;
 S CASH=0
 S PYTYPE(0)=$G(@GLHD@(ORD,"payments=type"))
 S AMOUNT(0)=$G(@GLHD@(ORD,"payments=amount"))*.01
 I PYTYPE(0)="CASH",AMOUNT(0) S CASH=1
 S CARD(CASH)=$G(@GLHD@(ORD,"card=number"))
 I CASH,CARD(CASH) S PYTYPE(CASH)="CREDIT"
 S CVV(CASH)=$G(@GLHD@(ORD,"card=csc"))
 S MM(CASH)=$G(@GLHD@(ORD,"card=expireMonth"))
 S YY(CASH)=$G(@GLHD@(ORD,"card=expireYear"))
 S TZ(CASH)=$G(@GLHD@(ORD,"card=holderId"))
 ;
 S EJ=0,CLRX=0
 ;
 I PYTYPE(0)["CELLARIX",AMOUNT(0) S CLRX=1
 ;
 F J=1:1:10 D  Q:EJ
 .S PYTYPE(J+CASH)=$G(@GLHD@(ORD,"payments=type-"_J))
 .I PYTYPE(J+CASH)="CASH" S CASH=1
 .I $G(PYTYPE(J+CASH))="" D  S EJ=1 K PYTYPE(J+CASH) Q
 ..S AMOUNT(J)=$G(@GLHD@(ORD,"payments=amount-"_J))*.01
 .S CARD(J+CASH)=$G(@GLHD@(ORD,"card=number-"_J))
 .S CVV(J+CASH)=$G(@GLHD@(ORD,"card=csc-"_J))
 .S AMOUNT(J)=$G(@GLHD@(ORD,"payments=amount-"_J))*.01
 .S MM(J+CASH)=$G(@GLHD@(ORD,"card=expireMonth-"_J))
 .S YY(J+CASH)=$G(@GLHD@(ORD,"card=expireYear-"_J))
 .S TZ(J+CASH)=$G(@GLHD@(ORD,"card=holderId-"_J))
 ;
 S CI=0,CREDCARD="",CREDSUM="",CREDMMYY="",CREDTZ="",CREDCVV=""
 F J=0:1 Q:'$D(PYTYPE(J))  D
 .I PYTYPE(J)="CREDIT"!(PYTYPE(J)["IL.CO.BITSOFGOLD") D
 ..S CI=CI+1
 ..S CREDCARD=CREDCARD_$$^W3ENCR(JB_";"_$G(CARD(J)))_"^"
 ..S CREDSUM=CREDSUM_$G(AMOUNT(J))_";"
 ..S CREDMMYY=CREDMMYY_$TR($J($G(MM(J)),2)," ",0)_$E($G(YY(J)),3,4)_";"
 ..S CREDTZ=CREDTZ_$$^W3ENCR(JB_";"_$G(TZ(J)))_"^"
 ..S CREDCVV=CREDCVV_$G(CVV(J))_";"
 ;
 I CREDSUM D
 .D PUT^W3HZMST(JB,"CREDCARD",$E(CREDCARD,1,$L(CREDCARD)-1))
 .D PUT^W3HZMST(JB,"CREDSUM",$E(CREDSUM,1,$L(CREDSUM)-1))
 .D PUT^W3HZMST(JB,"CREDMMYY",$E(CREDMMYY,1,$L(CREDMMYY)-1))
 .D PUT^W3HZMST(JB,"CREDTZ",$E(CREDTZ,1,$L(CREDTZ)-1))
 .D PUT^W3HZMST(JB,"CREDCVV2",$E(CREDCVV,1,$L(CREDCVV)-1))
 ;
 N CODTS S CODTS=$S(CASH:1,CLRX:11,1:3)
 D PUT^W3HZMST(JB,"CODTS",CODTS)
 ;
 ;
 I $D(^[$$^W3MAIN]W3SO(RESTID,ORD)) K ^[$$^W3MAIN]TMPORD(JB) D  G EZ
 .D SENDOK(RESTID,ORD,"","DOUBLE ORDER")
 ;
 D NEWHZ
 S ^[$$^W3MAIN]W3SO(RESTID,ORD)=$H
 I $G(OK)=1 D SENDOK(RESTID,ORD,"accepted","")
 I $G(OK)'=1 D SENDOK(RESTID,ORD,"",OK)
EZ Q
 ;
SENDOK(RESTID,ORD,STAT,CMNT) ;
 D CHORDSTA^W3SOFUNC(RESTID,ORD,"accepted",$G(CMNT))
 Q
 ;
NEWHZ ;
 D TERM^W3ORDVW ; -- OK=1
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CLRZPT(A) ;
 N J,QU
 S A=$$CLRKV(A)
 S J=0,QU=0
CLRZPTC
 S J=J+1 I J>$L(A) G CLRZPTE
 I $E(A,J)="""" S QU='QU G CLRZPTC
 I $E(A,J)=",",QU S $E(A,J)=" " G CLRZPTC
 I $E(A,J)=":",QU S $E(A,J)="-" G CLRZPTC
 G CLRZPTC
CLRZPTE Q A
 ;
CLRKV(A) ;
 N J
 F J=1:1:$L(A) D
 .I $E(A,J)="""",$E(A,J-1)="\" S $E(A,J-1)="'" S $E(A,J)="'"
 Q A
 ;
TOMENU ;
 N LASTIND S (LASTD,LASTIND)=""
LAST S LASTD=$O(^[$$^W3MAIN]W3SOM(RESTID,LASTD),-1) Q:LASTD=""
 S LASTIND=$O(^[$$^W3MAIN]W3SOM(RESTID,LASTD,LASTIND),-1) Q:LASTIND=""
 I $D(^[$$^W3MAIN]W3SOM(RESTID,LASTD,LASTIND))<10 G LAST
 M @GLMENU=^[$$^W3MAIN]W3SOM(RESTID,LASTD,LASTIND)
 I $D(@GLMENU)>9,LASTD<$H D
 .M ^[$$^W3MAIN]W3SOM(RESTID,+$H,1)=@GLMENU
 Q
 ;
GETHDORD(A) ;
 I A["=" S A=$P(A,"=",2,200)
 S IDORD=$$GET(A,"id") Q:IDORD=""
 S @GLHD@(IDORD,"id-comment")=$$GET(A,"comment")
 S @GLHD@(IDORD,"id-status")=$$GET(A,"status")
 S @GLHD@(IDORD,"id-price")=$$GET(A,"price")
 S @GLHD@(IDORD,"id-rest")=$$GET(A,"restaurantId")
 Q
 ;
KILL ;
 Q
 K @GLTMP,@GLHD
 Q
 ;
GETMENU(RESTID) ;
 S GLMENU="^[$$^W3MAIN]TMPMENU($J)"
 K @GLMENU
 ;
 S ^W3SOMSH(RESTID)=$G(^W3SOMSH(RESTID))+1
 ;;I ^W3SOMSH(RESTID)#100 D TOMENU
 ;
 I $D(^[$$^W3MAIN]W3SOM(RESTID,+$H))>9,^W3SOMSH(RESTID)#10 D
 .N COUNT
 .S COUNT=$O(^[$$^W3MAIN]W3SOM(RESTID,+$H,999999),-1) Q:'COUNT
 .K @GLMENU
 .M @GLMENU=^[$$^W3MAIN]W3SOM(RESTID,+$H,COUNT)
 ;
 N OK,I S I=0
 N N S N="" F  S N=$O(@GLMENU@(N)) Q:N=""  D
 .I $G(^(N))?.P S I=I+1
 I I>3 K @GLMENU
 ;
 I '(^W3SOMSH(RESTID)#40)!($D(@GLMENU)<10)!'$D(^[$$^W3MAIN]W3SOM(RESTID,+$H)) D
 .D ^W3SOMENU(RESTID)
 ;
 I $D(@GLMENU)<10 D TOMENU
 Q

W3SORD0
W3SORD(RESTID) ; [ 17.12.14 20:04 ] [ 20.06.14 12:08 ] [ 27.02.14 13:31 ]
 N (%ARG,%REM,M,RESTID)
 D ^%L1TS
 ;
 S GLMENU="^[$$^W3MAIN]TMPMENU($J)"
 D GETMENU(RESTID)
 I $D(@GLMENU)<10 Q
 ;
 D GL^W3SOCON
 K @GL
 D GETORDS^W3SOFUNC(RESTID)
 ;
 S GLTMP="^[$$^W3MAIN]TMPSORD($J)"
 S GLHD="^[$$^W3MAIN]TMPSOHD($J)"
 I $G(SOER) G END  ; D SENDOK(RESTID,9999999,"","ERROR "_SOER) G END
 ;
 S GL0=GL,PTR=" ",IDORD="",I=0
 ;
 K @GLTMP,@GLHD,PTRID
 ;
 S URORD="",ENDORD=0
 F  S GL0=$Q(@GL0) Q:GL0=""  Q:$P($P(GL0,","),"(",2)'=$J  D  Q:ENDORD
 .S UR=$L(GL0,",")
 .I URORD,UR'>URORD S IDORD=""
 .F U=UR+1:1:11 K PTRID(U)
 .S GL00=$P(GL0,",",1,$L(GL0,",")-1)_")"
 .S PTR=$P($G(@GL00),",") S:PTR="" PTR=" "
 .S A=$G(@GL0)
 .I A["=" S PTRID(UR)=$P(A,"=")
 .
 .I UR=3 S IDORD="" D GETHDORD(A) I IDORD S URORD=3 D KILL
 .I 'IDORD,UR=5 D GETHDORD(A) S URORD=5 D KILL
 .I UR>5,'IDORD D KILL Q
 .
 .I IDORD,UR=(URORD+1)!(UR=(URORD+2))!(UR=(URORD+3)),'$$ITEM(A) D GETRKV(IDORD,A,UR) S PTR=$P(A,",")
 .
 .I UR=(URORD+2)!(UR=(URORD+5))!(UR=(URORD+8)),$$ITEM(A) D  Q
 ..N MAIN S MAIN=0 I UR=(URORD+2) S MAIN=1 K MAINQN
 ..I A["=" S A=$P(A,"=",2,200)
 ..S CD=$$GET(A,"itemId") Q:CD=""
 ..S CDR=$S($G(@GLMENU@(CD,"EXT")):^("EXT"),1:"0-"_CD)
 ..S NAME=$TR($G(@GLMENU@(CD)),"()","")
 ..S NAME=$TR(NAME,"\~*","/-X")
 ..S PRC=$$GET(A,"price")
 ..S CMNT=$$GET(A,"comment")
 ..S QN=$$GET(A,"count") I 'QN S QN=$S(MAIN:1,$G(MAINQN):MAINQN,1:1)
 ..I MAIN S MAINQN=QN
 ..S ST=$S(MAIN:"0",1:1)_"~"_CDR_"~"_NAME_"~"_$J(PRC*.01,2,2)_"~"_QN
 ..S $P(ST,"~",7)=CMNT
 ..;;W "GL0:",GL0_" = "_$G(@GL0),!
 ..;;W "I="_I_"  ST="_ST,!!
 ..I IDORD S I=I+1,@GLTMP@(IDORD,I)=ST
 .
 D ZAP
 ;
 I $D(@GL@(1,1,1))>9 D
 .N GLA S GLA="^[$$^W3MAIN]W3SOA(+$H,"
 .N COUNT S COUNT=$O(^[$$^W3MAIN]W3SOA(+$H,99999),-1)+1
 .S GLA=GLA_COUNT_")"
 .M @GLA=@GL
 .S @GLA=$H
 .M ^[$$^W3MAIN]W3SOM(RESTID,+$H,COUNT)=@GLMENU
 ;
END K @GL,@GLTMP,@GLMENU,@GLHD ; *** 11/09
 Q
 ;
 ;
GETRKV(PTR,A,UR) ;
 N T S T=""
 I A["=" S T=$$CLRQ($P(A,"=")),A=$P(A,"=",2,40)
 I T="",$G(PTRID(UR))'="" S T=$$CLRQ(PTRID(UR))
 S A=$$CLRZPT(A)
 N J F J=1:1:$L(A,",") D
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S IND=$$CLRQ(IND)
 .S PTR=$$CLRQ(PTR)
 .S:PTR="" PTR=" " Q:IND=""
 .S CONT=$P(COUPLE,":",2)
 .S CONT=$$FUNC^%UCASE(CONT)
 .S CONT=$$CLRQ(CONT)
 .I T'="" S IND=T_"="_IND
 .I $D(@GLHD@(PTR,IND)) D
 ..N J1 F J1=1:1 Q:'$D(@GLHD@(PTR,$P(IND,"-")_"-"_J1))
 ..S IND=$P(IND,"-")_"-"_J1
 .S @GLHD@(PTR,IND)=CONT
 Q
 ;
GET(A,RKV) ;
 N COUPLE,IND,CONT,OK,BG S OK=0
 S A=$$CLRZPT(A)
 N J,J1 F J=1:1:$L(A,",") D  Q:OK
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S BG=$F(A,IND)
 .S IND=$$CLRQ(IND)
 .Q:IND=""
 .I IND=RKV S OK=1 S CONT=$P(COUPLE,":",2)
 .E  I $P(IND,"=",2)=RKV S OK=1 S CONT=$P(COUPLE,":",2)
 I OK Q $$CLRQ($$FUNC^%UCASE(CONT))
 Q ""
 ;
ITEM(A) ;
 I $TR($P($P(A,","),":"),"""","")["itemId" Q 1
 Q 0
 ;
CLRQ(TXT) ;
 S:$E(TXT)="""" TXT=$TR(TXT,"""","")
 I TXT[$C(215) S TXT=$$W2L(TXT)
 S TXT=$TR(TXT,"\~*","/-X")
 Q TXT
 ;
W2L(TXT) ;
 N OU S OU=""
 N J S J=0
W2LC ;
 S J=J+1 I J>$L(TXT) G W2LCE
 I $A(TXT,J)=215 S OU=OU_$C($A(TXT,J+1)-48),J=J+1 G W2LC
 S OU=OU_$E(TXT,J) G W2LC
W2LCE
 Q $$^%W1H2U(OU)
 ;
 ;
ZAP ;
 N ORD,I,JB
 S ORD="" F  S ORD=$O(@GLHD@(ORD)) Q:ORD=""  D
 .S JB=$$^%W1SsID("TMPSO")
 .K ^[$$^W3MAIN]TMPORD(JB) S I=0
 .N N S N="" F  S N=$O(@GLTMP@(ORD,N)) Q:N=""  D
 ..S I=I+1 M ^[$$^W3MAIN]TMPORD(JB,I)=@GLTMP@(ORD,N)
 .K @GLTMP@(ORD)
 .D ZAPHD(ORD) K @GLHD@(ORD)
 .;;W "ORD:"_ORD_" OK="_OK,!
 Q
 ;
ZAPHD(ORD) ;
 N (JB,%ARG,ORD,GLHD,OK,RESTID) S OK=0
 S REST=$G(@GLHD@(ORD,"id-rest")) Q:REST=""
 S REST=$$FUNC^%LCASE(REST)
 ;
 Q:REST'=RESTID
 S MSD=^[$$^W3MAIN]W3SOR2M(REST) Q:MSD=""
 S ^[$$^W3MAIN]TMPORD(JB,"MSD")=MSD
 S CITY=$G(@GLHD@(ORD,"address=city"))
 S DLVMETHOD=$G(@GLHD@(ORD,"delivery=type"))
 S NAME=$G(@GLHD@(ORD,"contact=lastName"))_" "_$G(@GLHD@(ORD,"contact=firstName"))
 S PHONE01=$G(@GLHD@(ORD,"contact=phone"))
 S PHONE01=$$RPL^%L1FRM(PHONE01,"+972",0)
 S PHONE02=""
 S CODE=$S(PHONE01:PHONE01,1:1111111)
 D PUT^%W1PRM("CODE",CODE)
 S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 S ASM=ORD
 ;
 S DMSH=$G(@GLHD@(ORD,"delivery=charge"))*.01
 S HNH=-$G(@GLHD@(ORD,"charges=amount"))*.01
 S AHUZ="" ;;-$G(@GLHD@(ORD,"charges=amountRule"))*.01
 S TOTIME=$G(@GLHD@(ORD,"delivery=time"))
 I TOTIME?10N.N S TOTIME=$$SPA^%L1FRM($$EPOH2T^%L1DC(TOTIME))
 S TIMERCV=$G(@GLHD@(ORD,"log=timestamp"))
 I TIMERCV?10N.N S TIMERCV=$$SPA^%L1FRM($$EPOH2T^%L1DC(TIMERCV))
 ;
 D
 .S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 .I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N.E D  Q
 ..S DAT=$P(TOTIME," ")
 ..S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ..S SHAA=$P($P(TOTIME," ",2),":",1,2)
 .I TOTIME?.E2N1":"2N.E D
 ..S DAT=$ZD($H,"DD.MM.YY")
 ..S SHAA=$P(TOTIME,":",1,2)
 ..I TIMERCV?.E1N1":"2N.E S SHAA=SHAA_":-"_TIMERCV
 ;
 I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800,DLVMETHOD'="TAKEOUT" D
 .S SHAA=$$TM^W3TIME($H,CITY)_":!"_SHAA
 ;
 N SHAA0 S SHAA0=$S(SHAA["-":$P(SHAA,"-",2),1:SHAA)
 I DAT=$ZD($H,"DD.MM.YY"),$H>82000,SHAA0<3 S DAT=$ZD($H+1,"DD.MM.YY")
 ;
 S TOPAY=0
 S TOPAY=$G(@GLHD@(ORD,"id-price"))
 ;
 I TOPAY D
 .D PUT^W3HZMST(JB,"TSHL",$G(TOPAY))
 ;
 D PUT^W3HZMST(JB,"NAME",NAME)
 D PUT^W3HZMST(JB,"NMB",CODE)
 D PUT^W3HZMST(JB,"CODE",CODE)
 D PUT^W3HZMST(JB,"PELE",PHONE01)
 D PUT^W3HZMST(JB,"DAT",DAT)
 D PUT^W3HZMST(JB,"SHAA",SHAA)
 D PUT^W3HZMST(JB,"DATCB",ZMANK)
 D PUT^W3HZMST(JB,"HZMLAK",ASM)
 D PUT^W3HZMST(JB,"MKR","15") ; SOI
 D PUT^W3HZMST(JB,"DMSH",$G(DMSH))
 D PUT^W3HZMST(JB,"HNH",$G(HNH))
 D PUT^W3HZMST(JB,"AHUZ",$G(AHUZ))
 ;
 S HOME=$G(@GLHD@(ORD,"address=number"))
 S STREET=$G(@GLHD@(ORD,"address=street"))
 I DLVMETHOD="TAKEOUT" S STREET="TAKEAWAY"
 S COMMENT=$G(@GLHD@(ORD,"address=comment"))
 S CMHD=$G(@GLHD@(ORD,"id-comment"))
 S FLAT=$G(@GLHD@(ORD,"address=apt"))
 S COMP=""
 S ENTRANCE=$G(@GLHD@(ORD,"address=entrance"))
 S FLOOR=$G(@GLHD@(ORD,"address=floor"))
 ;
 D PUT^W3HZMST(JB,"CITY",CITY)
 D PUT^W3HZMST(JB,"STREET",STREET)
 D PUT^W3HZMST(JB,"COMMENT",COMMENT)
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 D PUT^W3HZMST(JB,"COMP",COMP)
 D PUT^W3HZMST(JB,"CMHD",ASM_":SO "_CMHD)
 ;
 S CASH=0
 S PYTYPE(0)=$G(@GLHD@(ORD,"payments=type"))
 S AMOUNT(0)=$G(@GLHD@(ORD,"payments=amount"))*.01
 I PYTYPE(0)="CASH",AMOUNT(0) S CASH=1
 S CARD(CASH)=$G(@GLHD@(ORD,"card=number"))
 I CASH,CARD(CASH) S PYTYPE(CASH)="CREDIT"
 S CVV(CASH)=$G(@GLHD@(ORD,"card=csc"))
 S MM(CASH)=$G(@GLHD@(ORD,"card=expireMonth"))
 S YY(CASH)=$G(@GLHD@(ORD,"card=expireYear"))
 S TZ(CASH)=$G(@GLHD@(ORD,"card=holderId"))
 ;
 S EJ=0,CLRX=0
 ;
 I PYTYPE(0)["CELLARIX",AMOUNT(0) S CLRX=1
 ;
 F J=1:1:10 D  Q:EJ
 .S PYTYPE(J+CASH)=$G(@GLHD@(ORD,"payments=type-"_J))
 .I PYTYPE(J+CASH)="CASH" S CASH=1
 .I $G(PYTYPE(J+CASH))="" D  S EJ=1 K PYTYPE(J+CASH) Q
 ..S AMOUNT(J)=$G(@GLHD@(ORD,"payments=amount-"_J))*.01
 .S CARD(J+CASH)=$G(@GLHD@(ORD,"card=number-"_J))
 .S CVV(J+CASH)=$G(@GLHD@(ORD,"card=csc-"_J))
 .S AMOUNT(J)=$G(@GLHD@(ORD,"payments=amount-"_J))*.01
 .S MM(J+CASH)=$G(@GLHD@(ORD,"card=expireMonth-"_J))
 .S YY(J+CASH)=$G(@GLHD@(ORD,"card=expireYear-"_J))
 .S TZ(J+CASH)=$G(@GLHD@(ORD,"card=holderId-"_J))
 ;
 S CI=0,CREDCARD="",CREDSUM="",CREDMMYY="",CREDTZ="",CREDCVV=""
 F J=0:1 Q:'$D(PYTYPE(J))  D
 .I PYTYPE(J)="CREDIT"!(PYTYPE(J)["IL.CO.BITSOFGOLD") D
 ..S CI=CI+1
 ..S CREDCARD=CREDCARD_$$^W3ENCR(JB_";"_$G(CARD(J)))_"^"
 ..S CREDSUM=CREDSUM_$G(AMOUNT(J))_";"
 ..S CREDMMYY=CREDMMYY_$TR($J($G(MM(J)),2)," ",0)_$E($G(YY(J)),3,4)_";"
 ..S CREDTZ=CREDTZ_$$^W3ENCR(JB_";"_$G(TZ(J)))_"^"
 ..S CREDCVV=CREDCVV_$G(CVV(J))_";"
 ;
 I CREDSUM D
 .D PUT^W3HZMST(JB,"CREDCARD",$E(CREDCARD,1,$L(CREDCARD)-1))
 .D PUT^W3HZMST(JB,"CREDSUM",$E(CREDSUM,1,$L(CREDSUM)-1))
 .D PUT^W3HZMST(JB,"CREDMMYY",$E(CREDMMYY,1,$L(CREDMMYY)-1))
 .D PUT^W3HZMST(JB,"CREDTZ",$E(CREDTZ,1,$L(CREDTZ)-1))
 .D PUT^W3HZMST(JB,"CREDCVV2",$E(CREDCVV,1,$L(CREDCVV)-1))
 ;
 N CODTS S CODTS=$S(CASH:1,CLRX:11,1:3)
 D PUT^W3HZMST(JB,"CODTS",CODTS)
 ;
 ;
 I $D(^[$$^W3MAIN]W3SO(RESTID,ORD)) K ^[$$^W3MAIN]TMPORD(JB) D  G EZ
 .D SENDOK(RESTID,ORD,"","DOUBLE ORDER")
 ;
 D NEWHZ
 S ^[$$^W3MAIN]W3SO(RESTID,ORD)=$H
 I $G(OK)=1 D SENDOK(RESTID,ORD,"accepted","")
 I $G(OK)'=1 D SENDOK(RESTID,ORD,"",OK)
EZ Q
 ;
SENDOK(RESTID,ORD,STAT,CMNT) ;
 D CHORDSTA^W3SOFUNC(RESTID,ORD,"accepted",$G(CMNT))
 Q
 ;
NEWHZ ;
 D TERM^W3ORDVW ; -- OK=1
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CLRZPT(A) ;
 N J,QU
 S A=$$CLRKV(A)
 S J=0,QU=0
CLRZPTC
 S J=J+1 I J>$L(A) G CLRZPTE
 I $E(A,J)="""" S QU='QU G CLRZPTC
 I $E(A,J)=",",QU S $E(A,J)=" " G CLRZPTC
 I $E(A,J)=":",QU S $E(A,J)="-" G CLRZPTC
 G CLRZPTC
CLRZPTE Q A
 ;
CLRKV(A) ;
 N J
 F J=1:1:$L(A) D
 .I $E(A,J)="""",$E(A,J-1)="\" S $E(A,J-1)="'" S $E(A,J)="'"
 Q A
 ;
TOMENU ;
 N LASTIND S (LASTD,LASTIND)=""
LAST S LASTD=$O(^[$$^W3MAIN]W3SOM(RESTID,LASTD),-1) Q:LASTD=""
 S LASTIND=$O(^[$$^W3MAIN]W3SOM(RESTID,LASTD,LASTIND),-1) Q:LASTIND=""
 I $D(^[$$^W3MAIN]W3SOM(RESTID,LASTD,LASTIND))<10 G LAST
 M @GLMENU=^[$$^W3MAIN]W3SOM(RESTID,LASTD,LASTIND)
 I $D(@GLMENU)>9,LASTD<$H D
 .M ^[$$^W3MAIN]W3SOM(RESTID,+$H,1)=@GLMENU
 Q
 ;
GETHDORD(A) ;
 I A["=" S A=$P(A,"=",2,200)
 S IDORD=$$GET(A,"id") Q:IDORD=""
 S @GLHD@(IDORD,"id-comment")=$$GET(A,"comment")
 S @GLHD@(IDORD,"id-status")=$$GET(A,"status")
 S @GLHD@(IDORD,"id-price")=$$GET(A,"price")
 S @GLHD@(IDORD,"id-rest")=$$GET(A,"restaurantId")
 Q
 ;
KILL ;
 Q
 K @GLTMP,@GLHD
 Q
 ;
GETMENU(RESTID) ;
 S GLMENU="^[$$^W3MAIN]TMPMENU($J)"
 K @GLMENU
 ;
 S ^W3SOMSH(RESTID)=$G(^W3SOMSH(RESTID))+1
 ;;I ^W3SOMSH(RESTID)#100 D TOMENU
 ;
 I $D(^[$$^W3MAIN]W3SOM(RESTID,+$H))>9,^W3SOMSH(RESTID)#10 D
 .N COUNT
 .S COUNT=$O(^[$$^W3MAIN]W3SOM(RESTID,+$H,999999),-1) Q:'COUNT
 .K @GLMENU
 .M @GLMENU=^[$$^W3MAIN]W3SOM(RESTID,+$H,COUNT)
 ;
 N OK,I S I=0
 N N S N="" F  S N=$O(@GLMENU@(N)) Q:N=""  D
 .I $G(^(N))?.P S I=I+1
 I I>3 K @GLMENU
 ;
 I '(^W3SOMSH(RESTID)#10)!($D(@GLMENU)<10)!'$D(^[$$^W3MAIN]W3SOM(RESTID,+$H)) D
 .D ^W3SOMENU(RESTID)
 ;
 I $D(@GLMENU)<10 D TOMENU
 Q

W3SORD1
W3SORD(RESTID) ; [ 04.07.13 04:43 ] [ 18.06.13 17:56 ] [ 22.04.13 22:38 ]
 N (%ARG,%REM,M,RESTID)
 D ^%L1TS
 ;
 I RESTID'=0 D GETMENU(RESTID)
 ;
 D GETORDS^W3SOFUNC(RESTID)
 ;
 D GL^W3SOCON
 D GLMENU
 S GLTMP="^[$$^W3MAIN]TMPSORD($J)"
 S GLHD="^[$$^W3MAIN]TMPSOHD($J)"
 I $G(SOER) W $G(SOER1),! G END
 ;
 S GL0=GL,PTR=" ",IDORD="",I=0
 ;
 K @GLTMP,@GLHD,PTRID
 F  S GL0=$Q(@GL0) Q:GL0=""  D
 .;W GL0,"=",$G(@GL0),!
 .S UR=$L(GL0,",")
 .F U=UR+1:1:11 K PTRID(U)
 .S GL00=$P(GL0,",",1,$L(GL0,",")-1)_")"
 .S PTR=$P($G(@GL00),",") S:PTR="" PTR=" "
 .S A=$G(@GL0)
 .I A["=" S PTRID(UR)=$P(A,"=")
 .
 .I UR=5 D
 ..I A["=" S A=$P(A,"=",2,200)
 ..S IDORD=$$GET(A,"id") Q:IDORD=""
 ..S @GLHD@(IDORD,"id-comment")=$$GET(A,"comment")
 ..S @GLHD@(IDORD,"id-status")=$$GET(A,"status")
 ..S @GLHD@(IDORD,"id-price")=$$GET(A,"price")
 ..S @GLHD@(IDORD,"id-rest")=$$GET(A,"restaurantId")
 .
 .I UR=6!(UR=7)!(UR=8),'$$ITEM(A) D GETRKV(IDORD,A,UR) S PTR=$P(A,",")
 .
 .I UR=7!(UR=10),$$ITEM(A) D  Q
 ..N MAIN S MAIN=0 I UR=7 S MAIN=1 K MAINQN
 ..I A["=" S A=$P(A,"=",2,200)
 ..S CD=$$GET(A,"itemId") Q:CD=""
 ..S CDR=$S($G(@GLMENU@(CD,"EXT")):^("EXT"),1:"0-"_CD)
 ..S NAME=$TR($G(@GLMENU@(CD)),"()","")
 ..S NAME=$TR(NAME,"\~*","/-X")
 ..S PRC=$$GET(A,"price")
 ..S CMNT=$$GET(A,"comment")
 ..S QN=$$GET(A,"count") I 'QN S QN=$S(MAIN:1,$G(MAINQN):MAINQN,1:1)
 ..I MAIN S MAINQN=QN
 ..S ST=$S(MAIN:"0",1:1)_"~"_CDR_"~"_NAME_"~"_$J(PRC*.01,2,2)_"~"_QN
 ..S $P(ST,"~",7)=CMNT
 ..I IDORD S I=I+1,@GLTMP@(IDORD,I)=ST
 .
 D ZAP
 ;
 I $D(@GL@(1,1,1))>9 D
 .N GLA S GLA="^[$$^W3MAIN]W3SOA(+$H,"
 .N COUNT S COUNT=$O(^[$$^W3MAIN]W3SOA(+$H,99999),-1)+1
 .S GLA=GLA_COUNT_")"
 .M @GLA=@GL
 .M ^[$$^W3MAIN]W3SOM(RESTID,+$H,COUNT)=@GLMENU
 ;
END K @GL,@GLTMP,@GLMENU,@GLHD
 Q
 ;
 ;
GETRKV(PTR,A,UR) ;
 N T S T=""
 I A["=" S T=$$CLRQ($P(A,"=")),A=$P(A,"=",2,40)
 I T="",$G(PTRID(UR))'="" S T=$$CLRQ(PTRID(UR))
 S A=$$CLRZPT(A)
 N J F J=1:1:$L(A,",") D
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S IND=$$CLRQ(IND)
 .S PTR=$$CLRQ(PTR)
 .S:PTR="" PTR=" " Q:IND=""
 .S CONT=$P(COUPLE,":",2)
 .S CONT=$$FUNC^%UCASE(CONT)
 .S CONT=$$CLRQ(CONT)
 .I T'="" S IND=T_"="_IND
 .I $D(@GLHD@(PTR,IND)) D
 ..N J1 F J1=1:1 Q:'$D(@GLHD@(PTR,$P(IND,"-")_"-"_J1))
 ..S IND=$P(IND,"-")_"-"_J1
 .S @GLHD@(PTR,IND)=CONT
 Q
 ;
GET(A,RKV) ;
 N COUPLE,IND,CONT,OK,BG S OK=0
 S A=$$CLRZPT(A)
 N J,J1 F J=1:1:$L(A,",") D  Q:OK
 .S COUPLE=$P(A,",",J) Q:COUPLE=""  Q:COUPLE'[":"
 .S IND=$P(COUPLE,":") Q:IND=""
 .S BG=$F(A,IND)
 .S IND=$$CLRQ(IND)
 .Q:IND=""
 .I IND=RKV S OK=1 S CONT=$P(COUPLE,":",2)
 I OK Q $$CLRQ($$FUNC^%UCASE(CONT))
 Q ""
 ;
ITEM(A) ;
 I $TR($P($P(A,","),":"),"""","")["itemId" Q 1
 Q 0
 ;
CLRQ(TXT) ;
 S:$E(TXT)="""" TXT=$TR(TXT,"""","")
 I TXT[$C(215) S TXT=$$W2L(TXT)
 S TXT=$TR(TXT,"\~*","/-X")
 Q TXT
 ;
W2L(TXT) ;
 N OU S OU=""
 N J S J=0
W2LC ;
 S J=J+1 I J>$L(TXT) G W2LCE
 I $A(TXT,J)=215 S OU=OU_$C($A(TXT,J+1)-48),J=J+1 G W2LC
 S OU=OU_$E(TXT,J) G W2LC
W2LCE
 Q $$^%W1H2U(OU)
 ;
 ;
ZAP ;
 N ORD,I,JB
 S ORD="" F  S ORD=$O(@GLHD@(ORD)) Q:ORD=""  D
 .S JB=$$^%W1SsID("TMPSO")
 .K ^[$$^W3MAIN]TMPORD(JB) S I=0
 .N N S N="" F  S N=$O(@GLTMP@(ORD,N)) Q:N=""  D
 ..S I=I+1 M ^[$$^W3MAIN]TMPORD(JB,I)=@GLTMP@(ORD,N)
 .K @GLTMP@(ORD)
 .D ZAPHD(ORD) K @GLHD@(ORD)
 .W "ORD:"_ORD_" OK="_OK,!
 Q
 ;
ZAPHD(ORD) ;
 N (JB,%ARG,ORD,GLHD,OK,RESTID) S OK=0
 S REST=$G(@GLHD@(ORD,"id-rest")) Q:REST=""
 S REST=$$FUNC^%LCASE(REST)
 ;
 I RESTID'=0 Q:REST'=RESTID
 I RESTID=0 D GETMENU(REST)
 ;
 S MSD=^[$$^W3MAIN]W3SOR2M(REST) Q:MSD=""
 S ^[$$^W3MAIN]TMPORD(JB,"MSD")=MSD
 S CITY=$G(@GLHD@(ORD,"address=city"))
 S DLVMETHOD=$G(@GLHD@(ORD,"delivery=type"))
 S NAME=$G(@GLHD@(ORD,"contact=lastName"))_" "_$G(@GLHD@(ORD,"contact=firstName"))
 S PHONE01=$G(@GLHD@(ORD,"contact=phone"))
 S PHONE01=$$RPL^%L1FRM(PHONE01,"+972",0)
 S PHONE02=""
 S CODE=$S(PHONE01:PHONE01,1:1111111)
 D PUT^%W1PRM("CODE",CODE)
 S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 S ASM=ORD
 ;
 S DMSH=$G(@GLHD@(ORD,"delivery=charge"))*.01
 S HNH=-$G(@GLHD@(ORD,"charges=amount"))*.01
 S AHUZ="" ;;-$G(@GLHD@(ORD,"charges=amountRule"))*.01
 S TOTIME=""
 D
 .S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 .I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N1":"2N.E D  Q
 ..S DAT=$P(TOTIME," ")
 ..S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ..S SHAA=$P($P(TOTIME," ",2),":",1,2)
 .I TOTIME?.E2N1":"2N1":"2N.E D
 ..S DAT=$ZD($H,"DD.MM.YY")
 ..S SHAA=$P(TOTIME,":",1,2)
 ;
 I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800,DLVMETHOD'="TAKEOUT" D
 .S SHAA=$$TM^W3TIME($H,CITY)
 ;
 S TOPAY=0
 S TOPAY=$G(@GLHD@(ORD,"id-price"))
 ;
 I TOPAY D
 .D PUT^W3HZMST(JB,"TSHL",$G(TOPAY))
 ;
 D PUT^W3HZMST(JB,"NAME",NAME)
 D PUT^W3HZMST(JB,"NMB",CODE)
 D PUT^W3HZMST(JB,"CODE",CODE)
 D PUT^W3HZMST(JB,"PELE",PHONE01)
 D PUT^W3HZMST(JB,"DAT",DAT)
 D PUT^W3HZMST(JB,"SHAA",SHAA)
 D PUT^W3HZMST(JB,"DATCB",ZMANK)
 D PUT^W3HZMST(JB,"HZMLAK",ASM)
 D PUT^W3HZMST(JB,"MKR","15") ; SOI
 D PUT^W3HZMST(JB,"DMSH",$G(DMSH))
 D PUT^W3HZMST(JB,"HNH",$G(HNH))
 D PUT^W3HZMST(JB,"AHUZ",$G(AHUZ))
 ;
 S HOME=$G(@GLHD@(ORD,"address=number"))
 S STREET=$G(@GLHD@(ORD,"address=street"))
 I DLVMETHOD="TAKEOUT" S STREET="TAKEAWAY"
 S COMMENT=$G(@GLHD@(ORD,"address=comment"))
 S CMHD=$G(@GLHD@(ORD,"id-comment"))
 S FLAT=$G(@GLHD@(ORD,"address=apt"))
 S COMP=""
 S ENTRANCE=$G(@GLHD@(ORD,"address=entrance"))
 S FLOOR=$G(@GLHD@(ORD,"address=floor"))
 ;
 D PUT^W3HZMST(JB,"CITY",CITY)
 D PUT^W3HZMST(JB,"STREET",STREET)
 D PUT^W3HZMST(JB,"COMMENT",COMMENT)
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",FLOOR)
 D PUT^W3HZMST(JB,"ENTRANCE",ENTRANCE)
 D PUT^W3HZMST(JB,"COMP",COMP)
 D PUT^W3HZMST(JB,"CMHD",ASM_":SO "_CMHD)
 ;
 S PYTYPE(0)=$G(@GLHD@(ORD,"payments=type"))
 S AMOUNT(0)=$G(@GLHD@(ORD,"payments=amount"))*.01
 S CARD(0)=$G(@GLHD@(ORD,"card=number"))
 S CVV(0)=$G(@GLHD@(ORD,"card=csc"))
 S MM(0)=$G(@GLHD@(ORD,"card=expireMonth"))
 S YY(0)=$G(@GLHD@(ORD,"card=expireYear"))
 S TZ(0)=$G(@GLHD@(ORD,"card=holderId"))
 ;
 S EJ=0,CASH=0
 I PYTYPE(0)="CASH",AMOUNT(0) S CASH=1
 F J=1:1:10 D  Q:EJ
 .S PYTYPE(J)=$G(@GLHD@(ORD,"payments=type-"_J))
 .I PYTYPE(J)="CASH" S CASH=1
 .I PYTYPE(J)="" S EJ=1 K PYTYPE(J) Q
 .S CARD(J)=$G(@GLHD@(ORD,"card=number-"_J))
 .S CVV(J)=$G(@GLHD@(ORD,"card=csc-"_J))
 .S AMOUNT(J)=$G(@GLHD@(ORD,"payments=amount-"_J))*.01
 .S MM(J)=$G(@GLHD@(ORD,"card=expireMonth-"_J))
 .S YY(J)=$G(@GLHD@(ORD,"card=expireYear-"_J))
 .S TZ(J)=$G(@GLHD@(ORD,"card=holderId-"_J))
 ;
 S CI=0,CREDCARD="",CREDSUM="",CREDMMYY="",CREDTZ="",CREDCVV=""
 F J=0:1 Q:'$D(PYTYPE(J))  D
 .I PYTYPE(J)="CREDIT" D
 ..S CI=CI+1
 ..S CREDCARD=CREDCARD_$$^W3ENCR(JB_";"_$G(CARD(J)))_"^"
 ..S CREDSUM=CREDSUM_$G(AMOUNT(J))_";"
 ..S CREDMMYY=CREDMMYY_$TR($J($G(MM(J)),2)," ",0)_$E($G(YY(J)),3,4)_";"
 ..S CREDTZ=CREDTZ_$$^W3ENCR(JB_";"_$G(TZ(J)))_"^"
 ..S CREDCVV=CREDCVV_$G(CVV(J))_";"
 ;
 I CREDSUM D
 .D PUT^W3HZMST(JB,"CREDCARD",$E(CREDCARD,1,$L(CREDCARD)-1))
 .D PUT^W3HZMST(JB,"CREDSUM",$E(CREDSUM,1,$L(CREDSUM)-1))
 .D PUT^W3HZMST(JB,"CREDMMYY",$E(CREDMMYY,1,$L(CREDMMYY)-1))
 .D PUT^W3HZMST(JB,"CREDTZ",$E(CREDTZ,1,$L(CREDTZ)-1))
 .D PUT^W3HZMST(JB,"CREDCVV2",$E(CREDCVV,1,$L(CREDCVV)-1))
 ;
 N CODTS S CODTS=$S(CASH:1,1:3)
 D PUT^W3HZMST(JB,"CODTS",CODTS)
 ;
 ;
 I $D(^[$$^W3MAIN]W3SO(REST,ORD)) K ^[$$^W3MAIN]TMPORD(JB) G EZ
 ;
 D NEWHZ
 S ^[$$^W3MAIN]W3SO(REST,ORD)=$H
 I $G(OK)=1 D SENDOK(REST,ORD)
EZ Q
 ;
SENDOK(REST,ORD) ;
 D CHORDSTA^W3SOFUNC(REST,ORD,"accepted")
 Q
 ;
NEWHZ ;
 D TERM^W3ORDVW ; -- OK=1
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CLRZPT(A) ;
 N J,QU
 S A=$$CLRKV(A)
 S J=0,QU=0
CLRZPTC
 S J=J+1 I J>$L(A) G CLRZPTE
 I $E(A,J)="""" S QU='QU G CLRZPTC
 I $E(A,J)=",",QU S $E(A,J)=" " G CLRZPTC
 I $E(A,J)=":",QU S $E(A,J)="-" G CLRZPTC
 G CLRZPTC
CLRZPTE Q A
 ;
CLRKV(A) ;
 N J
 F J=1:1:$L(A) D
 .I $E(A,J)="""",$E(A,J-1)="\" S $E(A,J-1)="'" S $E(A,J)="'"
 Q A
 ;
GETMENU(REST) ;
 D ^W3SOMENU(REST)
 D GLMENU
 ;
 I $D(@GLMENU)<10 D
 .N LASTD,LASTIND S (LASTD,LASTIND)=""
LAST .S LASTD=$O(^[$$^W3MAIN]W3SOM(REST,LASTD),-1) Q:LASTD=""
 .S LASTIND=$O(^[$$^W3MAIN]W3SOM(REST,LASTD,LASTIND),-1) Q:LASTIND=""
 .I $D(^[$$^W3MAIN]W3SOM(REST,LASTD,LASTIND))<10 G LAST
 .M @GLMENU=^[$$^W3MAIN]W3SOM(REST,LASTD,LASTIND)
 ;
 Q
 ;
GLMENU ;
 S GLMENU="^[$$^W3MAIN]TMPMENU($J)"
 Q

W3SP
W3SP ; [ 24.04.22 16:43 ] [ 12.04.22 17:52 ] [ 29.10.18 15:50 ] 
 Q
 ;
DMS(IRI) ;
 I $$GET^%W1PRM("TAW") Q 0
 I $G(IRI)=""!'$D(@$$^W4GL("P1IR")) Q $J($$DSHL^W4PRM,2,2)
 Q $J($$FIND(IRI,1),2,2)
 ;
ZMSHD(IRI) ;
 I $G(IRI)="" Q ""
 Q +$$FIND(IRI,2)
 ;
MHMIN(IRI) ;
 S IRI=$G(IRI)
 I $TR(IRI," .","")="TAKEAWAY"!($TR(IRI," .","")="TAW")!(IRI["zgwl") Q $$MHMIN1
 ;
 N MHMIN S MHMIN=""
 I $$POLYGON^W4PRM,$$GETP^%W1PRM("AZRPLGN") D  I MHMIN'="" Q MHMIN
 .N PRM S PRM=$$GETP^%W1PRM("AZRPLGN")
 .N MAP,AZ S MAP=$P(PRM,";"),AZ=$P(PRM,";",2)
 .I MAP=""!(AZ="") Q
 .S MHMIN=$$MHMIN^W3AZRIDK(MAP,AZ)
 ;
 I $G(IRI)=""!'$D(@$$^W4GL("P1IR")) Q $$MHMIN1
 N NR ;;S NR=4 I $$DLVWEB^W4DLVCSR S NR=6
 S NR=6
 N MHMIN S MHMIN=$J($$FIND(IRI,NR),2,2)
 I 'MHMIN Q $$MHMIN1
 I MHMIN>1000 S MHMIN=""
 Q MHMIN
 ;
 ;
MHMIN1(STAM) ;
 ;;N MSD S MSD=$$GET^%W1PRM("MSD") I 'MSD Q 0
 ;;N CODE S CODE=$$GET^%W1PRM("CODE")
 Q $J($G(@$$^W4PRM@("MSLMHMIN")),2,2)
 ;
 ;
MHCNC(IRI) ;
 N MHCNC S MHCNC=""
 I $$POLYGON^W4PRM,$$GETP^%W1PRM("AZRPLGN") D  I MHCNC Q MHCNC
 .N PRM S PRM=$$GETP^%W1PRM("AZRPLGN")
 .N MAP,AZ S MAP=$P(PRM,";"),AZ=$P(PRM,";",2)
 .I MAP=""!(AZ="") Q
 .S MHCNC=$$DLVCNC^W3AZRIDK(MAP,AZ)
 ;
 I $G(IRI)=""!'$D(@$$^W4GL("P1IR")) Q $J($G(@$$^W4PRM@("TSHLDM")),2,2)
 N MHCNC S MHCNC=$J($$FIND(IRI,3),2,2)
 I 'MHCNC S MHCNC=$J($G(@$$^W4PRM@("TSHLDM")),2,2)
 I MHCNC>1000 S MHCNC=""
 Q MHCNC
 ;
 ;
TMARV(IRI) ;
 N TMARV
 I $$POLYGON^W4PRM,$$GETP^%W1PRM("AZRPLGN") S TMARV=$$TMARVPLGN I TMARV Q TMARV
 Q $$THZ^W3TIME($G(IRI))
 ;
TMARVPLGN(STAM) ;
 N PRM S PRM=$$GETP^%W1PRM("AZRPLGN")
 N MAP,AZ S MAP=$P(PRM,";"),AZ=$P(PRM,";",2)
 I MAP=""!(AZ="") Q
 N TMARV S TMARV=$$DLVTM^W3AZRIDK(MAP,AZ)
 Q TMARV
 ;
FIND(IRI,IND)
 N (JB,%ARG,IRI,IND)
 S OK=0
 S IRI=$$CLEAR^%L1FRM($$CNWEB^%L1FRM(IRI))
 N STREETI S STREETI=$$SPA^%L1FRM($P(IRI,":",2))
 N HOME S HOME=$P(IRI,":",3)
 S IRI=$$SPA^%L1FRM($P(IRI,":"))
 N IR S IR=$$INV(IRI)
 N STREET S STREET=$$INV(STREETI)
 ;
 S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:OK
 .N IR1 S IR1=$TR($G(^(N)),"-"," ")
 .I IR1=$TR(IR,"-"," ")!(IR1=$TR($$INV(IR),"-"," ")) S OK=1 Q
 I 'OK Q ""
 ;
 N FND S FND=""
 N CNTRY S CNTRY=$$COUNTRY
 ;
 I $L(STREETI),$L(IRI),$D(@$$^W4GL("W3AZR")@(CNTRY,IRI))>9 D  I $L(FND) Q FND
 .N STR
 .N INDEX S INDEX=""
 .F  S INDEX=$O(@$$^W4GL("W3AZS")@(CNTRY,IRI,INDEX)) Q:INDEX=""  D  Q:$L(FND)
 ..N AZ S AZ=$G(^(INDEX)) Q:'AZ
 ..S STR=$$SPA^%L1FRM($P(INDEX,":"))
 ..S MEHOME=$P(INDEX,":",2)
 ..S ADHOME=$P(INDEX,":",3)
 ..I STREETI=STR,HOME'<MEHOME,HOME'>ADHOME D
 ...Q:'$D(@$$^W4GL("W3AZR")@(CNTRY,IRI,AZ))
 ...N A S A=$G(@$$^W4GL("W3AZR")@(CNTRY,IRI,AZ,1))
 ...S FND=$P(A,"\",IND)
 ;
 S FND=$G(@$$^W4GL("P1IR")@(N,1))
 ;
 Q $P(FND,"\",IND)
 ;
 ;
INV(TXT) ;
 I $$^%W1DIR="LTR" Q TXT
 Q $$INV^%L1FRM(TXT)
 ;
COUNTRY(STAM) ;
 N MSD S MSD=$$GET^%W1PRM("MSD") I 'MSD Q "IS"
 Q $$COUNTRY^W3R(MSD)
 ;
EXSTREET(PRM) ; 
 N CITY,STREET
 S CITY=$P(PRM,";")
 S STREET=$P(PRM,";",2)
 I CITY="" Q 0 
 I STREET="" Q 0
 S CITY=$$CNWEB^%L1FRM(CITY)
 S STREET=$$CNWEB^%L1FRM(STREET)
 I CITY="" Q 0 
 I STREET="" Q 0
 S CNTRY=$$COUNTRY
 I CNTRY="" Q 0
 Q $D(^[$$^W3MAIN]P1STREET(CNTRY,CITY,STREET))
 ;
CITY(CITY)
 S CITY=$$SPA^%L1FRM(CITY)
 I $$^%W1LNG="H" S CITY=$TR(CITY,"-"," ")
 I CITY="eti aia` lz" S CITY="aia` lz"
 I CITY="aia`lz" S CITY="aia` lz"
 I CITY="`""z" S CITY="aia` lz"
 I CITY="b""x" S CITY="ob znx"
 I CITY="z""t" S CITY="deewz gzt"
 I CITY="v""ly`x" S CITY="oeivl oey`x"
 Q CITY
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3ST
W3ST ; [ 07.08.18 16:59 ] [ 
 Q
MVC(ST) ;
 Q $P(ST,"~",17)
 ;
SETMVC(%ST,VL) ;
 S $P(@%ST,"~",17)=VL
 Q
 

W3STREE0
W3STREET ; [ 13.09.17 19:01 ] [ 08.08.17 10:17 ] [ 16.03.12 14:23 ] 
 N (JB,CITY,FIND,%ARG,%W1LNG)
 I $G(CITY)=""!($G(FIND)="") Q
 ;;S %W1LNG=$$GET^%W1PRM("LNG")
 S COUNTRY=$$COUNTRY^W3AZRIDK
 S MUSTAZR=0
 S GL="^[$$^W3MAIN]P1STREET(COUNTRY)"
 I $G(@$$^W4GL("W3AZR")@(COUNTRY,CITY)) D
 .S MUSTAZR=1
 .S GL=$$^W4GL("W3AZS")_"(COUNTRY)"
 ;
 K ^[$$^W3MAIN]TMPST(JB)
 ;;D KILL^%W3DEB("W3HZORD")
 ;
 S CITY=$$SPA^%L1FRM($$CLEAR^%L1FRM(CITY))
 S FIND=$$SPA^%L1FRM($$CLEAR^%L1FRM(FIND))
 ;
 S ENG=0
 I $$ENG^W4FIND(FIND)!($$^%W1DIR="LTR") S FIND=$$FUNC^%UCASE(FIND),ENG=1
 ;
 D PUT^%W3DEB("W3STREET","CITY=CITY & FIND=FIND & %ARG=[%ARG")
 ;
 N CT,OK,CTE,CITYE
 S OK=0,CT="" F  S CT=$O(@GL@(CT)) Q:CT=""  D  Q:OK
 .S CTE=CT I ENG S CTE=$$FUNC^%UCASE(CT)
 .S CITYE=CITY I ENG S CITYE=$$FUNC^%UCASE(CITY)
 .I $TR(CITYE,"-"," ")=$TR(CTE,"-"," ") S OK=1 Q
 ;
 I 'OK Q
 ;
 N CITY S CITY=CT
 I $G(CITY)=""!($G(FIND)="") Q
 D PUT^%W3DEB("W3STREET","CT=CT")
 ;
 I $D(@GL@(CITY))<10 Q
 ;
 I MUSTAZR D  G VIEW ; -- HIPUS LEFI AZORIM
 .S ST=FIND_$J("",25-$L(FIND))
 .I ENG S ST=""
 .F  S ST=$O(@GL@(CITY,ST)) Q:ST=""  S STE=ST S:ENG STE=$$FUNC^%UCASE(ST) Q:(STE'[FIND)&'ENG  D
 ..I STE'[FIND Q
 ..D ADDTBL(A)
 ;
 K ^[$$^W3MAIN]TMPS(JB)
 N FND F J=1:1:$L(FIND," ") S FND=$P(FIND," ",J) D
 .S ST=FND
 .I $D(@GL@(CITY,ST)) D
 ..S A=$G(^(ST))
 ..S INVA=$$INVH^%L1FRM(A)
 ..S ^[$$^W3MAIN]TMPS(JB,INVA)=""
 .
 .I ENG S ST=""
 .
 .F  S ST=$O(@GL@(CITY,ST)) Q:ST=""  S STE=ST S:ENG STE=$$FUNC^%UCASE(ST) Q:(STE'[FND)&'ENG  D
 ..I STE'[FND Q
 ..S A=$G(^(ST))
 ..S INVA=$$INVH^%L1FRM(A)
 ..S ^[$$^W3MAIN]TMPS(JB,INVA)=""
 ;
 D
 .S IND=0
 .N N S N="" F  S N=$O(^[$$^W3MAIN]TMPS(JB,N)) Q:N=""  D
 ..N A,INVA
 ..S INVA=N,A=$$INVH^%L1FRM(INVA)
 ..S OK=1
 ..I ENG S INVA=$$FUNC^%UCASE(INVA)
 ..F I=1:1:$L(FIND," ") D  Q:'OK
 ...S FND=$P(FIND," ",I)
 ...I (" "_INVA)'[(" "_FND) S OK=0
 ..Q:'OK
 ..S IND=IND+1,^[$$^W3MAIN]TMPST(JB,IND)=A
VIEW ;
 W "<table id=""TblStr"" "
  I $$^W4SMALL W " border=""0"" cellspacing=""0"" cellpadding=""5"" "
  I $$DLV^W4DLVCSR W " cellpadding="""_$$^W4KF(5)_""" "
 W "width=""100%"" >",!
 ;
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPST(JB,I))  D
 .W "  <tr>"
 .W "   <td id=""tdid"_I_""" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
 .W "     <a href=""#"" onMouseDown=""ClickStreet("_I_")"" >"
 .          W $$H2U^%L1FRM($G(^[$$^W3MAIN]TMPST(JB,I)))
 .W "     </a>",!
 .I $$^W4SMALL W "<br/><hr>",!
 .W "   </td>"
 .W "  </tr>",!
 W "</table>",!
 Q
ADDTBL(ST) ;
 N IND,STREET
 I ST[":" S ST=$P(ST,":")
 S ST=$$SPA^%L1FRM(ST)
 I MUSTAZR S STREET=$$INVH^%L1FRM(ST)
 I 'MUSTAZR S STREET=ST
 S IND=$O(^[$$^W3MAIN]TMPST(JB,99999),-1)+1
 S ^[$$^W3MAIN]TMPST(JB,IND)=STREET
 Q
 
 
 
 

W3STREET
W3STREET ; [ 16.08.21 11:15 ] [ 27.06.21 11:27 ] [ 13.09.17 19:36 ] 
 N (JB,CITY,FIND,%ARG,%W1LNG)
 I $G(CITY)=""!($G(FIND)="") Q
 I $G(COUNTRY)="" S COUNTRY=$$COUNTRY^W3PRM I COUNTRY="" S COUNTRY="IS"
 S FIND=$$CNWEB^%L1FRM(FIND)
 ;;S %W1LNG=$$GET^%W1PRM("LNG")
 S MUSTAZR=0
 I $G(CITY)?1N.N S CITY=$$INV^%L1FRM($G(@$$^W4GL("P1IR")@(CITY)))
 I $G(CITY)="" Q
 D GL
 I $G(@$$^W4GL("W3AZR")@(COUNTRY,CITY)) D
 .S MUSTAZR=1
 .S GL=$$^W4GL("W3AZS")_"(COUNTRY)"
 ;
 K ^[$$^W3MAIN]TMPST(JB)
 ;
 S CITY=$$SPA^%L1FRM($$CLEAR^%L1FRM(CITY))
 S FIND=$$SPA^%L1FRM($$CLEAR^%L1FRM(FIND))
 ;
 S ENG=0
 I $$ENG^W4FIND(FIND)!($$^%W1DIR="LTR") S FIND=$$FUNC^%UCASE(FIND),ENG=1
 ;
 D PUT^%W3DEB("W3STREET","CITY=CITY & FIND=FIND & %ARG=[%ARG")
 ;
 N CT,OK,CTE,CITYE
 S OK=0,CT="" F  S CT=$O(@GL@(CT)) Q:CT=""  D  Q:OK
 .S CTE=CT I ENG S CTE=$$FUNC^%UCASE(CT)
 .S CITYE=CITY I ENG S CITYE=$$FUNC^%UCASE(CITY)
 .I $TR(CITYE,"-"," ")=$TR(CTE,"-"," ") S OK=1 Q
 ;
 I 'OK Q
 ;
 N CITY S CITY=CT
 I $G(CITY)=""!($G(FIND)="") Q
 D PUT^%W3DEB("W3STREET","CT=CT")
 ;
 I $D(@GL@(CITY))<10 Q
 ;
 I MUSTAZR D  G VIEW ; -- HIPUS LEFI AZORIM
 .S ST=FIND_$J("",25-$L(FIND))
 .I ENG S ST=""
 .F  S ST=$O(@GL@(CITY,ST)) Q:ST=""  S STE=ST S:ENG STE=$$FUNC^%UCASE(ST) Q:(STE'[FIND)&'ENG  D
 ..I STE'[FIND Q
 ..D ADDTBL(A)
 ;
 D FIND(CITY,FIND)
 ;
VIEW ;
 W "<table id=""TblStr"" "
  I $$^W4SMALL W " border=""0"" cellspacing=""0"" cellpadding=""5"" "
  I $$DLV^W4DLVCSR W " cellpadding="""_$$^W4KF(5)_""" "
 W "width=""100%"" >",!
 ;
 F I=1:1 Q:'$D(^[$$^W3MAIN]TMPST(JB,I))  D
 .W "  <tr>"
 .W "   <td id=""tdid"_I_""" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
 .W "     <a href=""#"" onMouseDown=""ClickStreet("_I_")"" >"
 .          W $$H2U^%L1FRM($G(^[$$^W3MAIN]TMPST(JB,I)))
 .W "     </a>",!
 .I $$^W4SMALL W "<br/><hr>",!
 .W "   </td>"
 .W "  </tr>",!
 W "</table>",!
 Q
 ;
ADDTBL(ST) ;
 N IND,STREET
 I ST[":" S ST=$P(ST,":")
 S ST=$$SPA^%L1FRM(ST)
 I MUSTAZR S STREET=$$INVH^%L1FRM(ST)
 I 'MUSTAZR S STREET=ST
 S IND=$O(^[$$^W3MAIN]TMPST(JB,99999),-1)+1
 S ^[$$^W3MAIN]TMPST(JB,IND)=STREET
 Q
 ;
 ;
FIND(CITY,FIND) ;
 N ST,STE,IND,A,J,ER
 D GL
 S ST="",IND=0
 F  S ST=$O(@GL@(CITY,ST)) Q:ST=""  S STE=ST S:ENG STE=$$FUNC^%UCASE(ST) D
 .S A=$G(^(ST))
 .S ER=0
 .F J=1:1:$L(FIND," ") S FND=$P(FIND," ",J) D  Q:ER
 ..I (" "_STE)'[(" "_FND) S ER=1 Q
 .Q:ER
 .S IND=IND+1
 .S ^[$$^W3MAIN]TMPST(JB,IND)=A
 Q
 ;
GL ;
 S COUNTRY=$$COUNTRY^W3AZRIDK
 S GL="^[$$^W3MAIN]P1STREET(COUNTRY)"
 Q
 
 
 
 
 
 
 

W3SUBMIT
W3SUBMIT ; [ 02.12.07 20:35 ] [ 13.11.07 07:15 ] [ 11.11.07 08:26 ]
 N (JB,%ARG)
 S MSD=$$GET^%W1PRM("MSD") I MSD="" D BACK2PSW("NORESTN") Q
 I '$D(%ARG("PRM")) D BACK2PSW("NOARG") Q
 S PRM=%ARG("PRM")
 S USER=$P(PRM,"~")
 S PSW=$P(PRM,"~",2)
 S PSW=$$DESCR(PSW)
 S PRM=USER_"~"_PSW
 I '$$TEST^W3ORDLK(PRM) D BACK2PSW("USERPSWINVALID") Q
 D PUT^%W1PRM("CODE",USER)
 D PUT^%W1PRM("PRM",%ARG("PRM"))
 D VIEW
 Q
 ;
BACK2PSW(MSG) ;
 W "<script>",!
 W " window.location.replace('w3psw.jsp?MSD="_MSD_"&MSG="_MSG_"&FULLWIN="_$G(%ARG("FULLWIN"))_"')",!
 W "</script>",!
 Q
DESCR(PSW) ;
 N A,J S A=""
 F J=1:1:$L(PSW) D
 .;;S A=A_$C($A(PSW,J)-J-16)
 .S A=A_$C(170-$A(PSW,J))
 Q A
 ;
VIEW ;
 W "<div align=""center"" >",!
 D HDMSD^W3ORDVW(MSD)
 N WD S WD=$S($$^%W1LNG="H":"57%",1:"70%")
 W "<table class=""hdvw"" width=""100%"" border=""1"" dir="""_$$^%W1DIR_""">",!
 W "<tr><td dir="""_$$^%W1DIR_""">"_$$^%W1DICT("HI")_", "_$$H2U^%L1FRM($$LKH^W3L(USER))_" </td></tr>",!
 W "</table>",!
 W !
 W "<br><br><br>",!
 W "<table width=""90%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>",!
 W "<td align=""center"">",!
  W "<table dir='"_$$^%W1DIR_"' border='0' cellpadding='5'>",!
  W "<caption style='color:red; font-size:20pt; weight:900'>"_$$^%W1DICT("WHATTODO")_"</caption>",!
  W " <tr>",!
  W "  <td width=""40%"" align=""center""><input type='button' name='neword' id='newordid'"
        W " class='btnmenu' style='width:"_WD_"'"
        W " value='"_$$^%W1DICT("NEWORD")_"'"
        W " onClick=""NewOrd('"_$G(JB)_"','"_USER_"')"" />",!
  W "  </td>",!
  W " </tr>",!
  W " <tr>",!
  W "  <td align=""center"">",!
     W "<input type='button' name='oldord' id='oldordid'"
     W " class='btnmenu' style='width:"_WD_"'"
     W " value=' "_$$^%W1DICT("OLDORDCOPY")_" ' "
     W " onClick=""ListOrd('"_$G(JB)_"','"_USER_"')"" />"
  W "  </td>",!
  W " </tr>",!
  W !
  W " <tr>",!
  W "  <td align=""center"">",!
     W "<input type='button' name='ordstat' id='ordstatid'"
     W " class='btnmenu' style='width:"_WD_"'"
     W " value=' "_$$^%W1DICT("ORDERLIST")_" ' "
     W " onClick=""ListOrdRep('"_$G(JB)_"','"_USER_"')"" />"
  W "  </td>",!
  W " </tr>",!
  W !
  W " <tr>",!
  W "  <td align=""center"">",!
     W "<input type='button' name='prof' id='profid'"
     W " class='btnmenu' style='width:"_WD_"'"
     W " value='"_$$^%W1DICT("EDITPROFILE")_"' "
     W " onClick=""ToProfile('"_USER_"','"_JB_"')"" />"
  W "  </td>",!
  W " </tr>",!
  W " <tr>",!
  W "  <td align=""center"">",!
     W "<input type='button' name='back' id='backid'"
     ;;W " style='width:70%;font-size:14pt;color:red'"
     W " class='btnmenu' style='width:"_WD_"'"
     W " value='"_$$^%W1DICT("BACK2MAIN")_"' "
     W " onClick=""Back2Main()"" />"
  W "  </td>",!
  W " </tr>",!
  W "</table>",!
 W "</td>",!
 W "<td width=""20%"" >&nbsp;</td>",!
 W "<td width=""30%"" rowspan=""5""><a href=""#"" onClick=""NewOrd('"_$G(JB)_"','"_USER_"')"" ><img src="""_$$PIC^W3HZPRT("log2")_""" /></a></td>",!
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td style='font-size:18pt'>"_$$^%W1DICT("LEVMAIN")_"</td></tr>",!
 W "<tr><td style='font-size:18pt'>WWW.2ORDER.ORG</td></tr>",!
 W "</table>",!
 W "</div>",!
 Q

W3SVZ
W3SVZ ; [ 17.09.18 06:15 ] [ 26.05.16 12:15 ] [ 27.11.12 13:29 ] 
 H 1 Q
BG
 I $$^%L1FLAG("^flag(""SVZ"")") G END
 I '$G(^flag("SVZ")) S ^flag("SVZ")=$J
 S FILE="w3svz"
 ZSY "rm -f "_FILE
 ZSY "ps -fC mumps > "_FILE
 N $ZT S $ZT="G CLOSE"
 O FILE:(REWIND:READONLY)
 F  U FILE R A Q:$ZEOF  D
 .I A["W3AS" D
 ..S A=$$SP1^%L1FRM(A)
 ..S NOM=$P(A," ",2)
 ..S TIME=$P(A," ",5)
 ..S MNT=TIME*60+$P(TIME,":",2)
 ..I $P($H,",",2)\60-MNT>4!($P($H,",",2)\60-MNT<-4) D
 ...ZSY "kill -9 "_NOM S ^W3SVZ("KILL",$ZD($H,"DD.MM.YY  24.60"))=""
CLOSE C FILE
 H 120 G BG
END Q
 
 

W3TB
W3TB ; [ 05.02.26 12:48 ] [ 06.01.22 07:49 ] [ 04.01.22 15:39 ] 
 N  D INIT
 S $ZT="ZG "_$ZL_":ER^W3TB"
 I $$^%L1FLAG("^flag(""TB"")") Q
 D SETFLAG("TB")
 ;
 K ^[$$^W3MAIN]W3TBM
 S REST="",SHR=0 F  S REST=$O(^[$$^W3MAIN]W3TBR2M(REST)) Q:REST=""  D
 .S MSD=$G(^(REST)) Q:MSD=""
 .I $D(^[$$^W3MAIN]W3TBM(MSD)) Q
 .S SHR=SHR+1
 .S ^[$$^W3MAIN]W3TBM(MSD)=""
 ;
 S MYMSD=""
ASK S $ZT="ZG "_$ZL_":ER^W3TB"
 S MYMSD=$O(^[$$^W3MAIN]W3TBM(MYMSD))
 D ^W3TBGET(1,"GetPendingOrders",VEND,MYMSD)
 ;
 S LISTORD="GetPendingOrdersResponseMsg"
 S NUMPORD="NumOfPendingOrders"
 S ORDER="OrderLineElement"
 S POOLID="PoolID"
 S ORDID="OrderID"
 S RESID="ResID"
 S ORDSTAT="OrderStatus"
 S ORDTYPE="OrderType"
 S SUCCESS="Success"
 ;
 S GL="^[$$^W3MAIN]TMPBIS(MYDVN,1)"
 ;
 S I=0
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 I A[("<"_LISTORD) D
 .S BGLO=I
 .S SUCCESS=$$GET(BGLO,"Success",LISTORD)
 .I SUCCESS="eurt" S SUCCESS="true"
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" S I=$$FINDEND(BGLO,LISTORD,"") Q
 .S BGOI=BGLO
CYCORD .S BGOI=$$FIND(BGOI,ORDER,LISTORD)
 .I 'BGOI S I=$$FINDEND(BGOI,ORDER,LISTORD) Q
 .
 .S STATUS=$$GET(BGOI,ORDSTAT,ORDER)
 .;
 .I $$FUNC^%UCASE(STATUS)'="PENDING" G ENDORD
 .;;I STATUS'="InProcess" G ENDORD
 .
 .S REST=$$GET(BGOI,RESID,ORDER)
 .S MSD=$G(^[$$^W3MAIN]W3TBR2M(REST))
 .I MSD="" D PROT(NOMTB,"RESTWRONG:"_REST,BGOI) G ENDORD
 .I MSD'=MYMSD Q
 .S ORDTP=$$GET(BGOI,ORDTYPE,ORDER)
 .;
 .I $$FUNC^%UCASE(ORDTP)="STANDARD" D  I 'ORDNMB G ENDORD
 ..S ORDNMB=$$GET(BGOI,ORDID,ORDER) Q:'ORDNMB
 ..N IND S IND=VEND_"/"_REST_"/"_ORDTP_"/"_ORDNMB
 ..I $D(^[$$^W3MAIN]W3TBORD(IND)) Q
 ..D ^W3TBGET(2,"GetSingleOrder",VEND_"/"_ORDNMB,MYMSD)
 ..D ^W3TBORD(2,MSD,IND)
 ..
 .I $$FUNC^%UCASE(ORDTP)="POOLED" D  I 'ORDNMB G ENDORD
 ..S ORDNMB=$$GET(BGOI,POOLID,ORDER) Q:'ORDNMB
 ..N IND S IND=VEND_"/"_REST_"/"_ORDTP_"/"_ORDNMB
 ..I $D(^[$$^W3MAIN]W3TBORD(IND)) Q
 ..D ^W3TBGET(2,"GetPoolOrder",VEND_"/"_ORDNMB,MYMSD)
 ..D ^W3TBORD(2,MSD,IND)
 .
ENDORD .S BGOI=$$FINDEND(BGOI,ORDER,LISTORD)
 .G CYCORD
 ;
 G CYC
 ;
END D KILLTMP
 I $G(MYMSD) G ASK ; -- 04/01/22
 ;
 I '$G(SHR) S SHR=2
 ;;H 120/SHR
 H 10
 K ^[$$^W3MAIN]TMPBISA($H-30) G ASK
 ;
 ;
KILLTMP ;
 K ^[$$^W3MAIN]TMPBIS(MYDVN)
 Q
 ;
MYDVN ;
 S MYDVN=$$^%L3MYDVN
 Q
 ;
GET(I,EL,PARENT)
 Q $$GET^W3TBORD($G(I),$G(EL),$G(PARENT))
 ;
FIND(I,EL,PARENT,PR) ;
 Q $$FIND^W3TBORD($G(I),$G(EL),$G(PARENT),$G(PR))
 ;
FINDEND(I,EL,PARENT) ;
 Q $$FINDEND^W3TBORD($G(I),$G(EL),$G(PARENT))
 ;
PROT(NOMTB,CODER,NOMST) ;
 N GLPROT
 S GLPROT="^[$$^W3MAIN]W3TBPROT"
 S @GLPROT@(NOMTB,$O(@GLPROT@(NOMTB,9999),-1)+1)=$ZD($H,"DD.MM.YY  24:60")_"\"_CODER_"\"_NOMST
 S ERORD=1
 Q
 ;
SENDOK(PRM,MSD) ;
 D ^W3TBGET(2,"ChangeOrderStatus",PRM,MSD)
 N IND S IND=$P(PRM,"/",1,4)
 S ^[$$^W3MAIN]W3TBORD(IND)=$H_";"_$G(MSD)
 Q
 ;
INIT ;
 D MYDVN
 S VEND="toorder"
 D KILLTMP
 Q
 ;
ER ;
 D SVER^%L1X
 H
 ;G ASK
 ;
SETFLAG(IND) ;
 Q:$G(IND)=""
 I '$G(^flag(IND)) S ^flag(IND)=$J,^flag(IND,"TIME")=$H
 Q
 
 
 
 
 

W3TB0
W3TB ; [ 06.09.09 22:34 ] [ 17.08.09 11:53 ] [ 13.08.09 09:36 ]
 N  D INIT
 ;
ASK S $ZT="ZG "_$ZL_":ER^W3TB"
 D ^W3TBGET(1,"GetPendingOrders",VEND)
 ;
 S LISTORD="GetPendingOrdersResponseMsg"
 S NUMPORD="NumOfPendingOrders"
 S ORDER="OrderLineElement"
 S POOLID="PoolID"
 S ORDID="OrderID"
 S RESID="ResID"
 S ORDSTAT="OrderStatus"
 S ORDTYPE="OrderType"
 S SUCCESS="Success"
 ;
 S GL="^[$$^W3MAIN]TMPBIS(MYDVN,1)"
 ;
 S I=0
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 I A[("<"_LISTORD) D
 .S BGLO=I
 .S SUCCESS=$$GET(BGLO,"Success",LISTORD)
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" S I=$$FINDEND(BGLO,LISTORD,"") Q
 .S BGOI=BGLO
CYCORD .S BGOI=$$FIND(BGOI,ORDER,LISTORD)
 .I 'BGOI S I=$$FINDEND(BGOI,ORDER,LISTORD) Q
 .
 .S STATUS=$$GET(BGOI,ORDSTAT,ORDER)
 .;
 .I $$FUNC^%UCASE(STATUS)'="PENDING" G ENDORD
 .;;I STATUS'="InProcess" G ENDORD
 .
 .S REST=$$GET(BGOI,RESID,ORDER)
 .S MSD=$G(^[$$^W3MAIN]W3TBR2M(REST))
 .I MSD="" D PROT(NOMTB,"RESTWRONG:"_REST,BGOI) G ENDORD
 .S ORDTP=$$GET(BGOI,ORDTYPE,ORDER)
 .;
 .I $$FUNC^%UCASE(ORDTP)="STANDARD" D  I 'ORDNMB G ENDORD
 ..S ORDNMB=$$GET(BGOI,ORDID,ORDER) Q:'ORDNMB
 ..N IND S IND=VEND_"/"_REST_"/"_ORDTP_"/"_ORDNMB
 ..I $D(^[$$^W3MAIN]W3TBORD(IND)) Q
 ..D ^W3TBGET(2,"GetSingleOrder",VEND_"/"_ORDNMB)
 ..D ^W3TBORD(2,MSD,IND)
 ..;;D SENDOK(VEND_"/"_REST_"/"_ORDTP_"/"_ORDNMB_"/InProcess")
 ..
 .I $$FUNC^%UCASE(ORDTP)="POOLED" D  I 'ORDNMB G ENDORD
 ..S ORDNMB=$$GET(BGOI,POOLID,ORDER) Q:'ORDNMB
 ..N IND S IND=VEND_"/"_REST_"/"_ORDTP_"/"_ORDNMB
 ..I $D(^[$$^W3MAIN]W3TBORD(IND)) Q
 ..D ^W3TBGET(2,"GetPoolOrder",VEND_"/"_ORDNMB)
 ..D ^W3TBORD(2,MSD,IND)
 ..;;D SENDOK(VEND_"/"_REST_"/"_ORDTP_"/"_ORDNMB_"/InProcess")
 .
ENDORD .S BGOI=$$FINDEND(BGOI,ORDER,LISTORD)
 .G CYCORD
 ;
 G CYC
 ;
END D KILLTMP
 H 120 G ASK
 ;
KILLTMP ;
 K ^[$$^W3MAIN]TMPBIS(MYDVN)
 Q
 ;
MYDVN ;
 S MYDVN=$$^%L3MYDVN
 Q
 ;
GET(I,EL,PARENT)
 Q $$GET^W3TBORD($G(I),$G(EL),$G(PARENT))
 ;
FIND(I,EL,PARENT,PR) ;
 Q $$FIND^W3TBORD($G(I),$G(EL),$G(PARENT),$G(PR))
 ;
FINDEND(I,EL,PARENT) ;
 Q $$FINDEND^W3TBORD($G(I),$G(EL),$G(PARENT))
 ;
PROT(NOMTB,CODER,NOMST) ;
 N GLPROT
 S GLPROT="^[$$^W3MAIN]W3TBPROT"
 S @GLPROT@(NOMTB,$O(@GLPROT@(NOMTB,9999),-1)+1)=$ZD($H,"DD.MM.YY  24:60")_"\"_CODER_"\"_NOMST
 S ERORD=1
 Q
 ;
SENDOK(PRM) ;
 D ^W3TBGET(2,"ChangeOrderStatus",PRM)
 N IND S IND=$P(PRM,"/",1,4)
 S ^[$$^W3MAIN]W3TBORD(IND)=$H_";"_$G(MSD)
 Q
 ;
INIT ;
 D MYDVN
 S VEND="toorder"
 D KILLTMP
 Q
 ;
ER ;
 D SVER^%L1X
 H
 ;G ASK

W3TBGET
W3TBGET(UR,FUNC,PARAMS,MYMSD) ; [ 18.12.18 06:37 ] [ 20.09.13 14:53 ] [ 14.08.13 15:50 ] 
 N (UR,FUNC,PARAMS,NOMTB,MYMSD)
 ;
 S NOMTB=$O(^[$$^W3MAIN]TMPBISA(+$H,999999),-1)+1
 ;
 S PARAMS=$G(PARAMS)
 S HEADER="""Content-Type:Application/xml"""
 ;;S POST="@/pos/10bis"
 S POST="@"_^[$$^W3MAIN]W3MAIN("WEBL")_MYMSD_"/10bis/10bis"
 D ^%L1TS
 ;;S URL="https://www.10bis.co.il/services/testservice.svc/testxml/"
 S URL="https://www.10bis.co.il/services/resservice.svc/xml/"
 ;;S CMD="curl -m 15 -N  -s -H "_HEADER_" -d "_POST_" "_URL_FUNC_"/"_PARAMS
 ;;S CMD="curl -s -H "_HEADER_" -d "_POST_" "_URL_FUNC_"/"_PARAMS
 ;;S CMD=CMD_"|xml862.sh"
 S CMD="/pos/sbin/tbtst.sh "_MYMSD_" "_FUNC_"/"_PARAMS
 S CON="TBIS"
 D MYDVN^W3TB
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 K ^[$$^W3MAIN]TMPBISA($H-40)
 U CON S I=0
 I FUNC'="ChangeOrderStatus" D
 .S GL="^[$$^W3MAIN]TMPBIS(MYDVN,UR)"
 .K @GL
 .;;F  R A Q:$ZEOF  S I=I+1,@GL@(I)=$TR(A,TSS,TS0)
 .F  R A Q:$ZEOF  S I=I+1,@GL@(I)=A
 .I $G(NOMTB) M ^[$$^W3MAIN]TMPBISA(+$H,NOMTB)=^[$$^W3MAIN]TMPBIS(MYDVN) D COMP(+$H,NOMTB,UR)
 C CON
 Q
 ;
COMP(H,NOMTB,UR) ;
 Q:'$G(NOMTB)
 N GL,NOMPREV,I
 S GL="^[$$^W3MAIN]TMPBISA(H)"
 S NOMPREV=$O(@GL@(NOMTB),-1)
 I 'NOMPREV Q
 N OK S OK=1
 F I=1:1 Q:'$D(@GL@(NOMTB,UR,I))  D  Q:'OK
 .I $G(@GL@(NOMTB,UR,I))'=$G(@GL@(NOMPREV,UR,I)) D
 ..I $G(^(I))["<ResponseTime" Q
 ..S OK=0
 Q:'OK
 ;;U 0 W "K "_NOMTB_","_UR,!
 S ^W3TBKL(H,NOMTB,UR)=$H
 K @GL@(NOMTB,UR)
 Q
 

W3TBGET0
W3TBGET(UR,FUNC,PARAMS,MYMSD) ; [ 17.01.23 18:38 ] [ 14.08.13 12:37 ] [ 26.11.12 16:49 ] 
 N (UR,FUNC,PARAMS,NOMTB,MYMSD)
 ;
 S NOMTB=$O(^[$$^W3MAIN]TMPBISA(+$H,999999),-1)+1
 ;
 S PARAMS=$G(PARAMS)
 S HEADER="""Content-Type:Application/xml"""
 ;;S POST="@/pos/10bis"
 S POST="@"_^[$$^W3MAIN]W3MAIN("WEBL")_MYMSD_"/10bis/10bis"
 D ^%L1TS
 ;;S URL="https://www.10bis.co.il/services/testservice.svc/testxml/"
 S URL="https://www.10bis.co.il/services/resservice.svc/xml/"
 ;;S CMD="curl -m 15 -N  -s -H "_HEADER_" -d "_POST_" "_URL_FUNC_"/"_PARAMS
 S CMD="curl -s -H "_HEADER_" -d "_POST_" "_URL_FUNC_"/"_PARAMS
 S CMD=CMD_" | xmllint --format --encode cp862 - "
 S ^DIMA=CMD
 S CON="TBIS"
 D MYDVN^W3TB
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 K ^[$$^W3MAIN]TMPBISA($H-40)
 U CON S I=0
 I FUNC'="ChangeOrderStatus" D
 .S GL="^[$$^W3MAIN]TMPBIS(MYDVN,UR)"
 .K @GL
 .;;F  R A Q:$ZEOF  S I=I+1,@GL@(I)=$TR(A,TSS,TS0)
 .F  R A Q:$ZEOF  S I=I+1,@GL@(I)=A
 .I $G(NOMTB) M ^[$$^W3MAIN]TMPBISA(+$H,NOMTB)=^[$$^W3MAIN]TMPBIS(MYDVN) D COMP(+$H,NOMTB,UR)
 C CON
 Q
 ;
COMP(H,NOMTB,UR) ;
 Q:'$G(NOMTB)
 N GL,NOMPREV,I
 S GL="^[$$^W3MAIN]TMPBISA(H)"
 S NOMPREV=$O(@GL@(NOMTB),-1)
 I 'NOMPREV Q
 N OK S OK=1
 F I=1:1 Q:'$D(@GL@(NOMTB,UR,I))  D  Q:'OK
 .I $G(@GL@(NOMTB,UR,I))'=$G(@GL@(NOMPREV,UR,I)) D
 ..I $G(^(I))["<ResponseTime" Q
 ..S OK=0
 Q:'OK
 ;;U 0 W "K "_NOMTB_","_UR,!
 S ^W3TBKL(H,NOMTB,UR)=$H
 K @GL@(NOMTB,UR)
 Q
 

W3TBL
W3TBL(LNG,SCR) ; [ 28.04.08 09:29 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,LNG,SCR) D ^%L1C
 S GL="^"_SCR
 D GET
 S %SCRN=SCR
SC D ^%L1SC
 D IS3^%L1GET
 I %S=1 G SC
 I %S=0 G END
 D SAVE
END K ^TEMP(%L3MYDVN) Q
 ;
GET ;
 K ^TEMP(%L3MYDVN)
 S N="",I=0 F  S N=$O(@GL@(LNG,N)) Q:N=""  D
 .S I=I+1,^TEMP(%L3MYDVN,I)=@GL@(LNG,N)
 Q
SAVE ;
 K @GL
 F I=1:1 Q:'$D(^TEMP(%L3MYDVN,I))  D
 .S A=$G(^(I)) Q:A=""
 .S IND=$$INV^%L1FRM(A)
 .S @GL@(LNG,IND)=A
 Q

W3TBL1
W3TBL1(LNG,SCR) ; [ 29.12.21 07:12 ] [ 28.04.08 10:53 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,LNG,SCR) D ^%L1C
 S GL="^"_SCR
 D GET
 S %SCRN=SCR
SC S %SC("MOVE")="" D ^%L1SC
 D IS3^%L1GET
 I %S=1 G SC
 I %S=0 G END
 D SAVE
END K ^TEMP(%L3MYDVN) Q
 ;
GET ;
 K ^TEMP(%L3MYDVN)
 S N="",I=0 F  S N=$O(@GL@(LNG,N)) Q:N=""  D
 .S I=I+1,^TEMP(%L3MYDVN,I)=$G(@GL@(LNG,N))
 Q
 ;
SAVE ;
 K @GL
 F I=1:1 Q:'$D(^TEMP(%L3MYDVN,I))  D
 .S A=$G(^(I)) Q:A=""
 .S @GL@(LNG,I)=A
 Q
 

W3TBORD
W3TBORD(UR,MSD,TBADDR) ; [ 05.02.26 12:49 ] [ 25.04.21 12:25 ] [ 07.03.21 19:09 ] 
 N (UR,MSD,TBADDR)
 D MYDVN^W3TB
 S GL="^[$$^W3MAIN]TMPBIS(MYDVN,UR)"
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 S SING="GetSingleOrderResponseMsg"
 S POOL="GetPooledOrderResponseMsg"
 S ORDER="Order"
 S DISHES="Dishes"
 S DISHEL="DishElement"
 S CHOICEL="ChoiceElement"
 S SUBEL="SubElement"
 S SUBS="Subs"
 S DLVADDR="DeliveryAddress"
 ;
 S BGPOOL=0,OK=1
 S ORDTP=$P(TBADDR,"/",3)
 S ORDTP=$$FUNC^%UCASE(ORDTP)
 S I=0,K=0 K QNMAIN
 ;
 S (TNBPAY,COUPONHNHR,COUPONHNHS,HNH,DMSH)=0
 ;
 I $$SINGLE S ENDST="" G CYC
 ;
 I '$$POOLED G END
 ;
 ;---- POOLED --
 S JB=$$^%W1SsID("TBIS")
 D PUT^%W1PRM("MSD",MSD)
 ;
 S ENDST=POOL
 ;
CYC S I=I+1
 I '$D(@GL@(I)) G:$$POOLED&$$OK ENDORD G END
 S A=$G(^(I))
 I 'BGPOOL,$$POOLED,A'[("<"_POOL) G CYC
 ;
 I A[("<"_POOL) S BGPOOL=I,OK=1 D:$$POOLED  G:'OK END G CYC
 .S SUCCESS=$$GET(BGPOOL,"Success",POOL)
 .I SUCCESS="eurt" S SUCCESS="true"
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" S I=$$FINDEND(BGPOOL,POOL,""),OK=0 Q
 ;
 I A[("</"_POOL) D  S BGPOOL=0 G:$$POOLED&$$OK ENDORD G CYC
 .D FRMHD(BGPOOL,POOL)
 ;
 I $$SINGLE,BGPOOL G CYC
 ;
 I A'[("<"_SING),$$POOLED,BGPOOL G CYC
 I A'[("<"_SING),$$SINGLE G CYC
 ;
 D
 .S BGSNG=I
 .S SUCCESS=$$GET(BGSNG,"Success",SING)
 .I SUCCESS="eurt" S SUCCESS="true"
 .;
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" S I=$$FINDEND(BGSNG,SING,ENDST) Q
 .
 .I $$SINGLE D
 ..S JB=$$^%W1SsID("TBIS")
 ..D PUT^%W1PRM("MSD",MSD)
 .
 .S BGOI=BGSNG
CYCORD .S BGOI=$$FIND(BGOI,ORDER,SING)
 .I 'BGOI S I=$$FINDEND(BGSNG,SING,ENDST) Q
 .I $$SINGLE S K=0
 .S NAME=$$GET(BGOI,"Name",SING)
 .I $$SINGLE D FRMHD(BGOI,SING)
 .I $$POOLED D FRMHDPS(BGOI,SING)
 .;
 .S BGDI=BGOI
CYCD .S BGDI=$$FIND(BGDI,DISHEL,ORDER)
 .;
 .I 'BGDI S BGOI=$$FINDEND(BGOI,ORDER,SING) D:$$SINGLE NEWHZ G CYCORD
 .S CD=$$GET(BGDI,"DishID",DISHEL)
 .N CDC S CDC=$$GET(BGDI,"CatalogId",DISHEL) ; --- NEW 22/04/19
 .S NM=$$GET(BGDI,"DishName",DISHEL)
 .I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .I '$$CD(NM,CD),CDC S CD=CDC ; -- NEW 22/04/19
 .S PRC=$$GET(BGDI,"DishPrice",DISHEL)
 .S QN=$$GET(BGDI,"NumOfDishes",DISHEL)
 .S CMNT=$$GET(BGDI,"Remarks",DISHEL)
 .S CMNT=$TR(CMNT,"*!","")
 .S CMNT=$$SPA^%L1FRM(CMNT)
 .S SMNT=$$SP1^%L1FRM(CMNT)
 .S MAZMIN=$$GET(BGDI,"AssignedUserName",DISHEL)
 .N TELMZM1,TELMZM2
 .S TELMZM1=$$GET(BGDI,"Phone01",DISHEL)
 .S TELMZM2=$$GET(BGDI,"Phone02",DISHEL)
 .I MAZMIN="",NAME'="",$$POOLED S MAZMIN=NAME
 .I MAZMIN'="",$$POOLED D  ; -- 25.02.21 -- $$POOLED
 ..N CMNMZM S CMNMZM=MAZMIN 
 ..I TELMZM1 S CMNMZM=CMNMZM_" "_TEL1
 ..I TELMZM2 S CMNMZM=CMNMZM_" "_TEL2
 ..S CMNT=CMNT_"  [ "_CMNMZM_" ]"
 .S K=K+1
 .S @TMPORD@(K)="0~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN_"~~"_$$INVH^%L1FRM(CMNT)
 .S QNMAIN=QN
 .S BGCHI=BGDI
CYCCH .S BGCHI=$$FIND(BGCHI,CHOICEL,DISHEL)
 .I 'BGCHI S BGDI=$$FINDEND(BGDI,DISHEL,ORDER) G CYCD
 .
 .S BGCHID=$$FIND(BGCHI,"ChoiceID",DISHEL)
 .I 'BGCHID S BGCHI=$$FINDEND(BGCHI,CHOICEL,DISHEL) G CYCCH
 .
 .S CHID=$$GETVL(BGCHID,"ChoiceID")
 .S DESC=$$GETVL(BGCHI+1,"Desc")
 .I CHID,DESC'="" D
 ..S K=K+1
 ..I $$CDTXT S CHID=$$CD(DESC,CHID),DESC=$$DESC(DESC)
 ..S @TMPORD@(K)="0~"_CHID_"~"_$$INVH^%L1FRM(DESC)_"~~~~"
 .S BGSI=BGCHI
CYCSUBS .S BGSI=$$FIND(BGSI,SUBEL,CHOICEL)
 .I 'BGSI S BGCHI=$$FINDEND(BGCHI,CHOICEL,DISHEL) G CYCCH
 .S CD=$$GET(BGSI,"SubID",SUBEL)
 .S NM=$$GET(BGSI,"Desc",SUBEL)
 .I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .N CDC S CDC=$$GET(BGSI,"CatalogId",SUBEL) ; --- NEW 22/04/19
 .I '$$CD(NM,CD),CDC S CD=CDC ; -- NEW 22/04/19
 .S PRC=$$GET(BGSI,"Price",SUBEL)
 .S QN=1 I $G(QNMAIN) S QN=QNMAIN
 .S K=K+1
 .S @TMPORD@(K)="1~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN
 .S BGSI=$$FINDEND(BGSI,SUBEL,CHOICEL)
 .G CYCSUBS
 ;
 G CYC
 ;
ENDORD D NEWHZ S OK=0
 ;
END Q
 ;
GET(I,EL,PARENT)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(+IND,EL)
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J,PRSNG S OK=0,PRSNG=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I $L($G(SING)) D
 ..I A[("<"_SING) S PRSNG=1
 ..I A[("</"_SING) S PRSNG=0
 .;;I $L($G(POOL)),PARENT=POOL,PRSNG Q  ; *** LEV 02/11/14
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 S ZN=$P(A,"<"_EL_">",2)
 ;
 I A'[("</"_EL_">") D
 .N EZ,A1 S EZ=0
 .N I1 F I1=I:1:I+10 D
 ..S A1=$$SPA^%L1FRM($G(@GL@(I1)))
 ..I $E(A1)["<" Q
 ..S ZN=ZN_A1
 ;
 S ZN=$P(ZN,"</"_EL_">")
 S ZN=$$REG(ZN)
 Q $$SPA^%L1FRM(ZN)
 ;
NEWHZ ;
 D TERM^W3ORDVW
 ;;S ^[$$^W3MAIN]W3TBORD(ASM,JB)=MSD_";"_$ZD($H,"DD.MM.YY  24:60")
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CD(TXT,CD) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ")
 I TXT?1N.N1".".E Q $P(TXT,".")
 Q "0-"_CD
 ;
DESC(TXT) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ",2,20)
 I TXT?1N.N1".".E Q $P(TXT,".",2,20)
 Q TXT
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$TR(TXT,$C(13,10),"  ")
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 ;
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,"`","'")
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
CDTXT(STAM) ;
 Q 1
 ;I MSD=1!(MSD=99999) Q 1
 Q 0
 ;
POOLED(STAM) I $G(ORDTP)="POOLED" Q 1
 Q 0
 ;
SINGLE(STAM) I $G(ORDTP)="STANDARD" Q 1
 Q 0
 ;
OK(STAM) ;
 I OK&($D(@TMPORD)=11) Q 1
 Q 0
 ;
FRMHDPS(BGOI,PARENT) ;
 N COUPONHNH,COUPONPAYER
 S TNBPAY=TNBPAY+$$GET(BGOI,"TenBisPayment",PARENT)
 S DMSH=$$GET(BGOI,"DeliveryPrice",PARENT)
 S HNH=HNH-$$GET(BGOI,"DeliveryDiscount",PARENT)
 S COUPONPAYER=$$GET(BGOI,"DiscountCouponBenefitPayer",PARENT)
 S COUPONHNH=-$$GET(BGOI,"DiscountCouponDiscount",PARENT)
 S COUPONHNHS=COUPONHNHS+COUPONHNH
 I COUPONHNH,$$RESTPAYER(COUPONPAYER) D
 .S COUPONHNHR=COUPONHNHR+COUPONHNH
 Q
 ;
FRMHD(BGOI,PARENT) ;
 N ADDR,CITY,DLVMETHOD,PHONE01,PHONE02,ZMANK,ASM,DMSH
 N COUPONPAYER,TOTIME
 S ADDR=$$GET(BGOI,"AddressLine",PARENT)
 S CITY=$$SPA^%L1FRM($P($P(ADDR,",",2),"."))
 S DLVMETHOD=$$GET(BGOI,"DeliveryMethod",PARENT)
 S NAME=$$GET(BGOI,"Name",PARENT)
 S PHONE01=$$GET(BGOI,"Phone01",PARENT)
 S PHONE02=$$GET(BGOI,"Phone02",PARENT)
 S CODE=$S(PHONE01:PHONE01,1:PHONE02)
 I CODE="",MSD=1!(MSD=99999) S CODE="101010"
 D PUT^%W1PRM("CODE",CODE)
 S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 S ASM=$$GET(BGOI,"OrderID",PARENT)
 ;
 I $$POOLED S ASM=$$GET(BGOI,"PooledOrderID",PARENT)
 ;
 I $$SINGLE D
 .S TNBPAY=$$GET(BGOI,"TenBisPayment",PARENT)
 .S DMSH=$$GET(BGOI,"DeliveryPrice",PARENT)
 .S HNH=-$$GET(BGOI,"DeliveryDiscount",PARENT)
 .S COUPONHD=$$GET(BGOI,"DiscountCouponCaptionForRes",PARENT)
 .S COUPONPAYER=$$GET(BGOI,"DiscountCouponBenefitPayer",PARENT)
 .S COUPONHNH=-$$GET(BGOI,"DiscountCouponDiscount",PARENT)
 .S COUPONHNHR=0
 .I COUPONHNH,$$RESTPAYER(COUPONPAYER) D
 ..S HNH=HNH+COUPONHNH,COUPONHNHR=COUPONHNH,COUPONHNH=0
 ..S TNBPAY=$J(TNBPAY,1,1)_":"_COUPONHNH_":"_COUPONHNHR
 ;
 S TOTIME=$$GET(BGSNG,"DesiredDeliveryTime",PARENT)
 ;;S TOFUTURE=$$GET(BGSNG,"DesiredDeliveryTime",PARENT)
 S TOFUTURE=$$GET(BGSNG,"FormatedTimeTitleStr",PARENT)
 I TOFUTURE?.E2N1"/".E S TOTIME=TOFUTURE
 ;;S ^AA("W3TBORD",+ASM)=TOTIME
 D
 .S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 .I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N.E D  Q
 ..S DAT=$P(TOTIME," ")
 ..S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ..S SHAA=$P($P(TOTIME," ",2),":",1,2)
 .I TOTIME?.E2N1":"2N1":"2N.E D
 ..S DAT=$ZD($H,"DD.MM.YY")
 ..S SHAA=$P(TOTIME,":",1,2)
 ;
 ;;I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800!(SHAA>21),DLVMETHOD'="Pickup" D
 .N SHAA0 S SHAA0=SHAA
 .S SHAA=$$TM^W3TIME($H,CITY)
 .I SHAA<SHAA0,SHAA<6 S DAT=$ZD($H+1,"DD.MM.YY")
 ;
 S TOPAY=0
 I $$SINGLE D
 .S TOPAY=$$GET(BGOI,"TotalPriceToCharge",PARENT)
 .I COUPONHNH,'$$RESTPAYER(COUPONPAYER) D  ; *** LEV 15/01/16 ; WAS $$RESTPAYER
 ..S TOPAY=TOPAY+COUPONHNH,TNBPAY=TOPAY
 ;
 I $$POOLED D
 .S TOPAY=$$GET(BGOI,"TotalSum",PARENT)
 .S TOPAY=TOPAY+(COUPONHNHS-COUPONHNHR)
 .S HNH=HNH+COUPONHNHR
 .S TNBPAY=$J(TNBPAY,1,1)_":"_(COUPONHNHS-COUPONHNHR)_":"_COUPONHNHR
 ;
 I TOPAY D
 .D PUT^W3HZMST(JB,"TSHL",$G(TOPAY))
 ;
 D PUT^W3HZMST(JB,"NAME",$$INVH^%L1FRM(NAME))
 D PUT^W3HZMST(JB,"NMB",CODE)
 D PUT^W3HZMST(JB,"CODE",CODE)
 D PUT^W3HZMST(JB,"PELE",PHONE02)
 D PUT^W3HZMST(JB,"DAT",DAT)
 I SHAA="" S SHAA=$ZD($H,"24:60")
 D PUT^W3HZMST(JB,"SHAA",SHAA)
 D PUT^W3HZMST(JB,"DATCB",ZMANK)
 D PUT^W3HZMST(JB,"HZMLAK",ASM)
 D PUT^W3HZMST(JB,"MKR",10)
 D PUT^W3HZMST(JB,"CODTS",7)
 D PUT^W3HZMST(JB,"TNBPAY",$G(TNBPAY))
 D PUT^W3HZMST(JB,"DMSH",$G(DMSH))
 D PUT^W3HZMST(JB,"HNH",$G(HNH))
 D PUT^W3HZMST(JB,"POOLED",$$POOLED)
 ;
 S ADDR=$$SPA^%L1FRM($P(ADDR,",",1,$L(ADDR,",")-1))
 S HOME=$P(ADDR," ",$L(ADDR," ")) I 'HOME S HOME=""
 I HOME S ADDR=$P(ADDR," ",1,$L(ADDR," ")-1)
 S STREET=ADDR
 I DLVMETHOD="Pickup" S STREET="TAKEAWAY",CITY="TAKEAWAY"
 S COMMENT=$$GET(BGOI,"AddressRemarks",PARENT)
 S CMHD=$$GET(BGOI,"OrderRemarks",PARENT)
 S FLAT=$$GET(BGOI,"ApartementNumber",PARENT)
 S COMP=$$GET(BGOI,"CompanyName",PARENT)
 S ENTRANCE=$$GET(BGOI,"Entrance",PARENT)
 S FLOOR=$$GET(BGOI,"Floor",PARENT)
 ;
 D PUT^W3HZMST(JB,"CITY",$$INVH^%L1FRM(CITY))
 D PUT^W3HZMST(JB,"STREET",$$INVH^%L1FRM(STREET))
 D PUT^W3HZMST(JB,"COMMENT",$$INVH^%L1FRM(COMMENT))
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",$$INVH^%L1FRM(FLOOR))
 D PUT^W3HZMST(JB,"ENTRANCE",$$INVH^%L1FRM(ENTRANCE))
 D PUT^W3HZMST(JB,"COMP",$$INVH^%L1FRM(COMP))
 D PUT^W3HZMST(JB,"CMHD",ASM_":10B "_$$INVH^%L1FRM(CMHD))
 ;
 D SENDOK^W3TB(TBADDR_"/InProcess",MSD)
 Q
 ;
RESTPAYER(COUPONPAYER) ;
 I $E($$FUNC^%UCASE(COUPONPAYER),1,4)="REST" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TBORD0
W3TBORD(UR,MSD,TBADDR) ; [ 10.01.22 12:53 ] [ 25.04.21 12:25 ] [ 07.03.21 19:09 ] 
 N (UR,MSD,TBADDR)
 D MYDVN^W3TB
 S GL="^[$$^W3MAIN]TMPBIS(MYDVN,UR)"
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 S SING="GetSingleOrderResponseMsg"
 S POOL="GetPooledOrderResponseMsg"
 S ORDER="Order"
 S DISHES="Dishes"
 S DISHEL="DishElement"
 S CHOICEL="ChoiceElement"
 S SUBEL="SubElement"
 S SUBS="Subs"
 S DLVADDR="DeliveryAddress"
 ;
 S BGPOOL=0,OK=1
 S ORDTP=$P(TBADDR,"/",3)
 S ORDTP=$$FUNC^%UCASE(ORDTP)
 S I=0,K=0 K QNMAIN
 ;
 S (TNBPAY,COUPONHNHR,COUPONHNHS,HNH,DMSH)=0
 ;
 I $$SINGLE S ENDST="" G CYC
 ;
 I '$$POOLED G END
 ;
 ;---- POOLED --
 S JB=$$^%W1SsID("TBIS")
 D PUT^%W1PRM("MSD",MSD)
 ;
 S ENDST=POOL
 ;
CYC S I=I+1
 I '$D(@GL@(I)) G:$$POOLED&$$OK ENDORD G END
 S A=$G(^(I))
 I 'BGPOOL,$$POOLED,A'[("<"_POOL) G CYC
 ;
 I A[("<"_POOL) S BGPOOL=I,OK=1 D:$$POOLED  G:'OK END G CYC
 .S SUCCESS=$$GET(BGPOOL,"Success",POOL)
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" S I=$$FINDEND(BGPOOL,POOL,""),OK=0 Q
 ;
 I A[("</"_POOL) D  S BGPOOL=0 G:$$POOLED&$$OK ENDORD G CYC
 .D FRMHD(BGPOOL,POOL)
 ;
 I $$SINGLE,BGPOOL G CYC
 ;
 I A'[("<"_SING),$$POOLED,BGPOOL G CYC
 I A'[("<"_SING),$$SINGLE G CYC
 ;
 D
 .S BGSNG=I
 .S SUCCESS=$$GET(BGSNG,"Success",SING)
 .;
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" S I=$$FINDEND(BGSNG,SING,ENDST) Q
 .
 .I $$SINGLE D
 ..S JB=$$^%W1SsID("TBIS")
 ..D PUT^%W1PRM("MSD",MSD)
 .
 .S BGOI=BGSNG
CYCORD .S BGOI=$$FIND(BGOI,ORDER,SING)
 .I 'BGOI S I=$$FINDEND(BGSNG,SING,ENDST) Q
 .I $$SINGLE S K=0
 .S NAME=$$GET(BGOI,"Name",SING)
 .I $$SINGLE D FRMHD(BGOI,SING)
 .I $$POOLED D FRMHDPS(BGOI,SING)
 .;
 .S BGDI=BGOI
CYCD .S BGDI=$$FIND(BGDI,DISHEL,ORDER)
 .;
 .I 'BGDI S BGOI=$$FINDEND(BGOI,ORDER,SING) D:$$SINGLE NEWHZ G CYCORD
 .S CD=$$GET(BGDI,"DishID",DISHEL)
 .N CDC S CDC=$$GET(BGDI,"CatalogId",DISHEL) ; --- NEW 22/04/19
 .S NM=$$GET(BGDI,"DishName",DISHEL)
 .I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .I '$$CD(NM,CD),CDC S CD=CDC ; -- NEW 22/04/19
 .S PRC=$$GET(BGDI,"DishPrice",DISHEL)
 .S QN=$$GET(BGDI,"NumOfDishes",DISHEL)
 .S CMNT=$$GET(BGDI,"Remarks",DISHEL)
 .S CMNT=$TR(CMNT,"*!","")
 .S CMNT=$$SPA^%L1FRM(CMNT)
 .S SMNT=$$SP1^%L1FRM(CMNT)
 .S MAZMIN=$$GET(BGDI,"AssignedUserName",DISHEL)
 .N TELMZM1,TELMZM2
 .S TELMZM1=$$GET(BGDI,"Phone01",DISHEL)
 .S TELMZM2=$$GET(BGDI,"Phone02",DISHEL)
 .I MAZMIN="",NAME'="",$$POOLED S MAZMIN=NAME
 .I MAZMIN'="",$$POOLED D  ; -- 25.02.21 -- $$POOLED
 ..N CMNMZM S CMNMZM=MAZMIN 
 ..I TELMZM1 S CMNMZM=CMNMZM_" "_TEL1
 ..I TELMZM2 S CMNMZM=CMNMZM_" "_TEL2
 ..S CMNT=CMNT_"  [ "_CMNMZM_" ]"
 .S K=K+1
 .S @TMPORD@(K)="0~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN_"~~"_$$INVH^%L1FRM(CMNT)
 .S QNMAIN=QN
 .S BGCHI=BGDI
CYCCH .S BGCHI=$$FIND(BGCHI,CHOICEL,DISHEL)
 .I 'BGCHI S BGDI=$$FINDEND(BGDI,DISHEL,ORDER) G CYCD
 .
 .S BGCHID=$$FIND(BGCHI,"ChoiceID",DISHEL)
 .I 'BGCHID S BGCHI=$$FINDEND(BGCHI,CHOICEL,DISHEL) G CYCCH
 .
 .S CHID=$$GETVL(BGCHID,"ChoiceID")
 .S DESC=$$GETVL(BGCHI+1,"Desc")
 .I CHID,DESC'="" D
 ..S K=K+1
 ..I $$CDTXT S CHID=$$CD(DESC,CHID),DESC=$$DESC(DESC)
 ..S @TMPORD@(K)="0~"_CHID_"~"_$$INVH^%L1FRM(DESC)_"~~~~"
 .S BGSI=BGCHI
CYCSUBS .S BGSI=$$FIND(BGSI,SUBEL,CHOICEL)
 .I 'BGSI S BGCHI=$$FINDEND(BGCHI,CHOICEL,DISHEL) G CYCCH
 .S CD=$$GET(BGSI,"SubID",SUBEL)
 .S NM=$$GET(BGSI,"Desc",SUBEL)
 .I $$CDTXT S CD=$$CD(NM,CD),NM=$$DESC(NM)
 .N CDC S CDC=$$GET(BGSI,"CatalogId",SUBEL) ; --- NEW 22/04/19
 .I '$$CD(NM,CD),CDC S CD=CDC ; -- NEW 22/04/19
 .S PRC=$$GET(BGSI,"Price",SUBEL)
 .S QN=1 I $G(QNMAIN) S QN=QNMAIN
 .S K=K+1
 .S @TMPORD@(K)="1~"_CD_"~"_$$INVH^%L1FRM(NM)_"~"_$J(PRC,2,2)_"~"_QN
 .S BGSI=$$FINDEND(BGSI,SUBEL,CHOICEL)
 .G CYCSUBS
 ;
 G CYC
 ;
ENDORD D NEWHZ S OK=0
 ;
END Q
 ;
GET(I,EL,PARENT)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(+IND,EL)
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J,PRSNG S OK=0,PRSNG=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I $L($G(SING)) D
 ..I A[("<"_SING) S PRSNG=1
 ..I A[("</"_SING) S PRSNG=0
 .;;I $L($G(POOL)),PARENT=POOL,PRSNG Q  ; *** LEV 02/11/14
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 S ZN=$P(A,"<"_EL_">",2)
 ;
 I A'[("</"_EL_">") D
 .N EZ,A1 S EZ=0
 .N I1 F I1=I:1:I+10 D
 ..S A1=$$SPA^%L1FRM($G(@GL@(I1)))
 ..I $E(A1)["<" Q
 ..S ZN=ZN_A1
 ;
 S ZN=$P(ZN,"</"_EL_">")
 S ZN=$$REG(ZN)
 Q $$SPA^%L1FRM(ZN)
 ;
NEWHZ ;
 D TERM^W3ORDVW
 ;;S ^[$$^W3MAIN]W3TBORD(ASM,JB)=MSD_";"_$ZD($H,"DD.MM.YY  24:60")
 K ^[$$^W3MAIN]TMPORD(JB)
 Q
 ;
CD(TXT,CD) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ")
 I TXT?1N.N1".".E Q $P(TXT,".")
 Q "0-"_CD
 ;
DESC(TXT) ;
 I TXT?1N.N1" - ".E Q $P(TXT," - ",2,20)
 I TXT?1N.N1".".E Q $P(TXT,".",2,20)
 Q TXT
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$TR(TXT,$C(13,10),"  ")
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 ;
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,"`","'")
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
CDTXT(STAM) ;
 Q 1
 ;I MSD=1!(MSD=99999) Q 1
 Q 0
 ;
POOLED(STAM) I $G(ORDTP)="POOLED" Q 1
 Q 0
 ;
SINGLE(STAM) I $G(ORDTP)="STANDARD" Q 1
 Q 0
 ;
OK(STAM) ;
 I OK&($D(@TMPORD)=11) Q 1
 Q 0
 ;
FRMHDPS(BGOI,PARENT) ;
 N COUPONHNH,COUPONPAYER
 S TNBPAY=TNBPAY+$$GET(BGOI,"TenBisPayment",PARENT)
 S DMSH=$$GET(BGOI,"DeliveryPrice",PARENT)
 S HNH=HNH-$$GET(BGOI,"DeliveryDiscount",PARENT)
 S COUPONPAYER=$$GET(BGOI,"DiscountCouponBenefitPayer",PARENT)
 S COUPONHNH=-$$GET(BGOI,"DiscountCouponDiscount",PARENT)
 S COUPONHNHS=COUPONHNHS+COUPONHNH
 I COUPONHNH,$$RESTPAYER(COUPONPAYER) D
 .S COUPONHNHR=COUPONHNHR+COUPONHNH
 Q
 ;
FRMHD(BGOI,PARENT) ;
 N ADDR,CITY,DLVMETHOD,PHONE01,PHONE02,ZMANK,ASM,DMSH
 N COUPONPAYER,TOTIME
 S ADDR=$$GET(BGOI,"AddressLine",PARENT)
 S CITY=$$SPA^%L1FRM($P($P(ADDR,",",2),"."))
 S DLVMETHOD=$$GET(BGOI,"DeliveryMethod",PARENT)
 S NAME=$$GET(BGOI,"Name",PARENT)
 S PHONE01=$$GET(BGOI,"Phone01",PARENT)
 S PHONE02=$$GET(BGOI,"Phone02",PARENT)
 S CODE=$S(PHONE01:PHONE01,1:PHONE02)
 I CODE="",MSD=1!(MSD=99999) S CODE="101010"
 D PUT^%W1PRM("CODE",CODE)
 S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 S ASM=$$GET(BGOI,"OrderID",PARENT)
 ;
 I $$POOLED S ASM=$$GET(BGOI,"PooledOrderID",PARENT)
 ;
 I $$SINGLE D
 .S TNBPAY=$$GET(BGOI,"TenBisPayment",PARENT)
 .S DMSH=$$GET(BGOI,"DeliveryPrice",PARENT)
 .S HNH=-$$GET(BGOI,"DeliveryDiscount",PARENT)
 .S COUPONHD=$$GET(BGOI,"DiscountCouponCaptionForRes",PARENT)
 .S COUPONPAYER=$$GET(BGOI,"DiscountCouponBenefitPayer",PARENT)
 .S COUPONHNH=-$$GET(BGOI,"DiscountCouponDiscount",PARENT)
 .S COUPONHNHR=0
 .I COUPONHNH,$$RESTPAYER(COUPONPAYER) D
 ..S HNH=HNH+COUPONHNH,COUPONHNHR=COUPONHNH,COUPONHNH=0
 ..S TNBPAY=$J(TNBPAY,1,1)_":"_COUPONHNH_":"_COUPONHNHR
 ;
 S TOTIME=$$GET(BGSNG,"DesiredDeliveryTime",PARENT)
 ;;S TOFUTURE=$$GET(BGSNG,"DesiredDeliveryTime",PARENT)
 S TOFUTURE=$$GET(BGSNG,"FormatedTimeTitleStr",PARENT)
 I TOFUTURE?.E2N1"/".E S TOTIME=TOFUTURE
 ;;S ^AA("W3TBORD",+ASM)=TOTIME
 D
 .S DAT=$ZD($H,"DD.MM.YY"),SHAA=""
 .I TOTIME?.E2N1"/"2N1"/"4N1" "2N1":"2N.E D  Q
 ..S DAT=$P(TOTIME," ")
 ..S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 ..S SHAA=$P($P(TOTIME," ",2),":",1,2)
 .I TOTIME?.E2N1":"2N1":"2N.E D
 ..S DAT=$ZD($H,"DD.MM.YY")
 ..S SHAA=$P(TOTIME,":",1,2)
 ;
 ;;I DAT=$ZD($H,"DD.MM.YY"),SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)<1800!(SHAA>21),DLVMETHOD'="Pickup" D
 .N SHAA0 S SHAA0=SHAA
 .S SHAA=$$TM^W3TIME($H,CITY)
 .I SHAA<SHAA0,SHAA<6 S DAT=$ZD($H+1,"DD.MM.YY")
 ;
 S TOPAY=0
 I $$SINGLE D
 .S TOPAY=$$GET(BGOI,"TotalPriceToCharge",PARENT)
 .I COUPONHNH,'$$RESTPAYER(COUPONPAYER) D  ; *** LEV 15/01/16 ; WAS $$RESTPAYER
 ..S TOPAY=TOPAY+COUPONHNH,TNBPAY=TOPAY
 ;
 I $$POOLED D
 .S TOPAY=$$GET(BGOI,"TotalSum",PARENT)
 .S TOPAY=TOPAY+(COUPONHNHS-COUPONHNHR)
 .S HNH=HNH+COUPONHNHR
 .S TNBPAY=$J(TNBPAY,1,1)_":"_(COUPONHNHS-COUPONHNHR)_":"_COUPONHNHR
 ;
 I TOPAY D
 .D PUT^W3HZMST(JB,"TSHL",$G(TOPAY))
 ;
 D PUT^W3HZMST(JB,"NAME",$$INVH^%L1FRM(NAME))
 D PUT^W3HZMST(JB,"NMB",CODE)
 D PUT^W3HZMST(JB,"CODE",CODE)
 D PUT^W3HZMST(JB,"PELE",PHONE02)
 D PUT^W3HZMST(JB,"DAT",DAT)
 I SHAA="" S SHAA=$ZD($H,"24:60")
 D PUT^W3HZMST(JB,"SHAA",SHAA)
 D PUT^W3HZMST(JB,"DATCB",ZMANK)
 D PUT^W3HZMST(JB,"HZMLAK",ASM)
 D PUT^W3HZMST(JB,"MKR",10)
 D PUT^W3HZMST(JB,"CODTS",7)
 D PUT^W3HZMST(JB,"TNBPAY",$G(TNBPAY))
 D PUT^W3HZMST(JB,"DMSH",$G(DMSH))
 D PUT^W3HZMST(JB,"HNH",$G(HNH))
 D PUT^W3HZMST(JB,"POOLED",$$POOLED)
 ;
 S ADDR=$$SPA^%L1FRM($P(ADDR,",",1,$L(ADDR,",")-1))
 S HOME=$P(ADDR," ",$L(ADDR," ")) I 'HOME S HOME=""
 I HOME S ADDR=$P(ADDR," ",1,$L(ADDR," ")-1)
 S STREET=ADDR
 I DLVMETHOD="Pickup" S STREET="TAKEAWAY",CITY="TAKEAWAY"
 S COMMENT=$$GET(BGOI,"AddressRemarks",PARENT)
 S CMHD=$$GET(BGOI,"OrderRemarks",PARENT)
 S FLAT=$$GET(BGOI,"ApartementNumber",PARENT)
 S COMP=$$GET(BGOI,"CompanyName",PARENT)
 S ENTRANCE=$$GET(BGOI,"Entrance",PARENT)
 S FLOOR=$$GET(BGOI,"Floor",PARENT)
 ;
 D PUT^W3HZMST(JB,"CITY",$$INVH^%L1FRM(CITY))
 D PUT^W3HZMST(JB,"STREET",$$INVH^%L1FRM(STREET))
 D PUT^W3HZMST(JB,"COMMENT",$$INVH^%L1FRM(COMMENT))
 D PUT^W3HZMST(JB,"HOME",HOME)
 D PUT^W3HZMST(JB,"FLAT",FLAT)
 D PUT^W3HZMST(JB,"FLOOR",$$INVH^%L1FRM(FLOOR))
 D PUT^W3HZMST(JB,"ENTRANCE",$$INVH^%L1FRM(ENTRANCE))
 D PUT^W3HZMST(JB,"COMP",$$INVH^%L1FRM(COMP))
 D PUT^W3HZMST(JB,"CMHD",ASM_":10B "_$$INVH^%L1FRM(CMHD))
 ;
 D SENDOK^W3TB(TBADDR_"/InProcess",MSD)
 Q
 ;
RESTPAYER(COUPONPAYER) ;
 I $E($$FUNC^%UCASE(COUPONPAYER),1,4)="REST" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TF2PAR
W3TF2PAR(MSD) ; [ 29.12.21 12:31 ] [ 06.07.10 11:34 ] [ 17.06.10 11:20 ] 
 I $ZG["/maf" W "IT'S MAFINS",! Q
 I $ZG["/mumps.gld" W "IT'S MUMPS",! Q
BG N SUG,NP
 K ^PAR1,^PARSUG1
 S SUG="" F  S SUG=$O(^P1TFRA(MSD,SUG)) Q:SUG=""  D
 .D SETPARSUG(SUG)
 K ^PARSUG M ^PARSUG=^PARSUG1 K ^PARSUG1
 ;
 S SUG="" F  S SUG=$O(^P1TFRA(MSD,SUG)) Q:SUG=""  D
 .S NP="" F  S NP=$O(^P1TFRA(MSD,SUG,NP)) Q:NP=""  D
 ..S PAR=$G(^(NP)) Q:PAR=""
 ..Q:'$D(^PARSUG(SUG))
 ..Q:'$D(^PAR(PAR))
 ..D SETPAR(PAR)
 ..
 ..I $D(^P1EZI(PAR))>9 D
 ...S TSF="" F  S TSF=$O(^P1EZI(PAR,TSF)) Q:TSF=""  D
 ....I $D(^PAR(TSF)) D SETPAR(TSF)
 ..
 ..I $D(^P1EZR(PAR))>9 D
 ...S TSF="" F  S TSF=$O(^P1EZR(PAR,TSF)) Q:TSF=""  D
 ....I $D(^PAR(TSF)) D SETPAR(TSF)
 ..
 ..I $D(^P1EZA(PAR))=11 D
 ...S SET="" F  S SET=$O(^P1EZA(PAR,SET)) Q:SET=""  D
 ....S NSET=$E(SET,2,10) Q:'NSET
 ....S TSF="" F  S TSF=$O(^P1SETA(NSET,TSF)) Q:TSF=""  D
 .....I $D(^PAR(TSF)) D SETPAR(TSF)
 ..
 ..I $D(^P1EZT(PAR))=11 D
 ...S SET="" F  S SET=$O(^P1EZT(PAR,SET)) Q:SET=""  D
 ....W !,"SET="_SET_"  PAR="_PAR,!
 ....S NSET=$E(SET,2,10) Q:'NSET
 ....S TSF="" F  S TSF=$O(^P1SETA(NSET,TSF)) Q:TSF=""  D
 .....I $D(^PAR(TSF)) D SETPAR(TSF)
 ;
 K ^PAR M ^PAR=^PAR1 K ^PAR1
 S N="" F  S N=$O(^P1EZI(N)) Q:N=""  D
 .I '$D(^PAR(N)) D
 ..S N1="" F  S N1=$O(^P1EZ(N1)) Q:N1=""  K ^P1EZ(N1,N)
 ..K ^P1EZI(N)
 ;
 S N="" F  S N=$O(^P1EZA(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZA(N)
 S N="" F  S N=$O(^P1EZT(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZT(N)
 S N="" F  S N=$O(^P1EZR(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZR(N)
 S N="" F  S N=$O(^P1EZH(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZH(N)
 ;
 I '$D(^P1PARSID) D
 .M ^P1PARSID=^P1TFRA(MSD)
 ;
 S N="" F  S N=$O(^PAR(N)) Q:N=""  D
 .S SUG=$$SUG^W4P(N) Q:'SUG
 .I '$D(^PARSUG(SUG)) Q
 .S NP=$O(^P1PARSID(SUG,999999),-1)
 .I '$$SRCPAR(SUG,N) S NP=NP+1,^P1PARSID(SUG,NP)=N
 ;
 M ^PARSUG=^PARSUG1
 S I=$O(^P1KVZSID(99999),-1)
 S N="" F  S N=$O(^PARSUG(N)) Q:N=""  D
 .I '$$SRCSUG(N) S I=I+1,^P1KVZSID(I)=N
 ;
 M ^P1TFRA(MSD+4000)=^P1TFRA(MSD)
 D SETA
 Q
SRCSUG(SUG) ;
 N OK S OK=0
 N N S N="" F  S N=$O(^P1KVZSID(N)) Q:N=""  I $G(^(N))=SUG S OK=N Q
 Q OK
SRCPAR(SUG,PAR) ;
 N OK S OK=0
 N N S N="" F  S N=$O(^P1PARSID(SUG,N)) Q:N=""  I $G(^(N))=PAR S OK=N Q
 Q OK
SETPAR(PAR) ;
 ;;B:PAR["35."
 N NM,CD
 S NM=$P(^PAR(PAR),"**")
 I NM?1N.N Q
 S CD=$$SPA^%L1FRM($P(NM,"-",$L(NM,"-")))
 I CD?1N.N D
 .S NM=$P(NM,"-",1,$L(NM,"-")-1)
 .S NM=$TR(NM,"{}","()")
 .S ^PAR1(PAR)=NM_"**"_$P(^PAR(PAR),"**",2,30)
 .S ^PAR1(PAR,"CD")=CD
 N SUG S SUG=$$SUG^W4P(PAR)
 D SETPARSUG(SUG)
 I CD'?1N.N M ^PAR1(PAR)=^PAR(PAR)
 Q
SETPARSUG(SUG) ;
 Q:'SUG  Q:'$D(^PARSUG(SUG))
 M ^PARSUG1(SUG)=^PARSUG(SUG)
 N A S A=^PARSUG1(SUG)
 S A=$$SPA^%L1FRM(A)
 S A=$$RPL^%L1FRM(A,^[$$^W3MAIN]W3MSD(4000+MSD),"")
 S A=$$SPA^%L1FRM(A)
 I $E(A,$L(A))="-" S A=$E(A,1,$L(A)-1)
 I $E(A)="-" S A=$E(A,2,$L(A))
 S ^PARSUG1(SUG)=A
 Q
SETA ;
 K MS N N,NS,SET
 S N="" F  S N=$O(^P1EZA(N)) Q:N=""  D
 .S NS="" F  S NS=$O(^P1EZA(N,NS)) Q:NS=""  D
 ..S SET=$E(NS,2,6) Q:SET=""  S MS(SET)=""
 S N="" F  S N=$O(^P1EZT(N)) Q:N=""  D
 .S NS="" F  S NS=$O(^P1EZT(N,NS)) Q:NS=""  D
 ..S SET=$E(NS,2,6) Q:SET=""  S MS(SET)=""
 ;
 S SET="" F  S SET=$O(^P1SETA(SET)) Q:SET=""  I '$D(MS(SET)) K ^P1SETA(SET)
 Q
 

W3TFR2PA
W3TF2PAR(MSD) ; [ 26.02.08 20:43 ] [
 K ^PAR1,^PARSUG1
 S SUG="" F  S SUG=$O(^P1TFRM(MSD,SUG)) Q:SUG=""  D
 .S PAR="" F  S PAR=$O(^P1TFRM(MSD,SUG,PAR)) Q:PAR=""  D
 ..Q:'$D(^PARSUG(SUG))
 ..Q:'$D(^PAR(PAR))
 ..M ^PAR1(PAR)=^PAR(PAR)
 ..M ^PARSUG1(SUG)=^PARSUG(SUG)

W3TFTMP
W3TF2PAR(MSD) ; [ 29.12.21 12:31 ] [ 24.05.15 14:23 ] [ 17.06.10 11:20 ] 
 I $ZG["/maf" W "IT'S MAFINS",! Q
BG N SUG,NP
 K ^PAR1,^PARSUG1
 S SUG="" F  S SUG=$O(^P1TFRA(MSD,SUG)) Q:SUG=""  D
 .D SETPARSUG(SUG)
 K ^PARSUG M ^PARSUG=^PARSUG1 K ^PARSUG1
 ;
 S SUG="" F  S SUG=$O(^P1TFRA(MSD,SUG)) Q:SUG=""  D
 .S NP="" F  S NP=$O(^P1TFRA(MSD,SUG,NP)) Q:NP=""  D
 ..S PAR=$G(^(NP)) Q:PAR=""
 ..Q:'$D(^PARSUG(SUG))
 ..Q:'$D(^PAR(PAR))
 ..D SETPAR(PAR)
 ..
 ..I $D(^P1EZI(PAR))>9 D
 ...S TSF="" F  S TSF=$O(^P1EZI(PAR,TSF)) Q:TSF=""  D
 ....I $D(^PAR(TSF)) D SETPAR(TSF)
 ..
 ..I $D(^P1EZR(PAR))>9 D
 ...S TSF="" F  S TSF=$O(^P1EZR(PAR,TSF)) Q:TSF=""  D
 ....I $D(^PAR(TSF)) D SETPAR(TSF)
 ..
 ..I $D(^P1EZA(PAR))=11 D
 ...S SET="" F  S SET=$O(^P1EZA(PAR,SET)) Q:SET=""  D
 ....S NSET=$E(SET,2,10) Q:'NSET
 ....S TSF="" F  S TSF=$O(^P1SETA(NSET,TSF)) Q:TSF=""  D
 .....I $D(^PAR(TSF)) D SETPAR(TSF)
 ..
 ..I $D(^P1EZT(PAR))=11 D
 ...S SET="" F  S SET=$O(^P1EZT(PAR,SET)) Q:SET=""  D
 ....W !,"SET="_SET_"  PAR="_PAR,!
 ....S NSET=$E(SET,2,10) Q:'NSET
 ....S TSF="" F  S TSF=$O(^P1SETA(NSET,TSF)) Q:TSF=""  D
 .....I $D(^PAR(TSF)) D SETPAR(TSF)
 ;
 K ^PAR M ^PAR=^PAR1 K ^PAR1
 S N="" F  S N=$O(^P1EZI(N)) Q:N=""  D
 .I '$D(^PAR(N)) D
 ..S N1="" F  S N1=$O(^P1EZ(N1)) Q:N1=""  K ^P1EZ(N1,N)
 ..K ^P1EZI(N)
 ;
 S N="" F  S N=$O(^P1EZA(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZA(N)
 S N="" F  S N=$O(^P1EZT(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZT(N)
 S N="" F  S N=$O(^P1EZR(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZR(N)
 S N="" F  S N=$O(^P1EZH(N)) Q:N=""  D
 .I '$D(^PAR(N)) K ^P1EZH(N)
 ;
 I '$D(^P1PARSID) D
 .M ^P1PARSID=^P1TFRA(MSD)
 ;
 S N="" F  S N=$O(^PAR(N)) Q:N=""  D
 .S SUG=$$SUG^W4P(N) Q:'SUG
 .I '$D(^PARSUG(SUG)) Q
 .S NP=$O(^P1PARSID(SUG,999999),-1)
 .I '$$SRCPAR(SUG,N) S NP=NP+1,^P1PARSID(SUG,NP)=N
 ;
 M ^PARSUG=^PARSUG1
 S I=$O(^P1KVZSID(99999),-1)
 S N="" F  S N=$O(^PARSUG(N)) Q:N=""  D
 .I '$$SRCSUG(N) S I=I+1,^P1KVZSID(I)=N
 ;
 M ^P1TFRA(MSD)=^P1TFRA(MSD)
 D SETA
 Q
SRCSUG(SUG) ;
 N OK S OK=0
 N N S N="" F  S N=$O(^P1KVZSID(N)) Q:N=""  I $G(^(N))=SUG S OK=N Q
 Q OK
SRCPAR(SUG,PAR) ;
 N OK S OK=0
 N N S N="" F  S N=$O(^P1PARSID(SUG,N)) Q:N=""  I $G(^(N))=PAR S OK=N Q
 Q OK
 ;
SETPAR(PAR) ;
 N NM,CD
 S NM=$P(^PAR(PAR),"**")
 I NM?1N.N Q
 S CD=$$SPA^%L1FRM($P(NM,"-",$L(NM,"-")))
 I CD?1N.N D
 .S NM=$P(NM,"-",1,$L(NM,"-")-1)
 .S NM=$TR(NM,"{}","()")
 .S ^PAR1(PAR)=NM_"**"_$P(^PAR(PAR),"**",2,30)
 .S ^PAR1(PAR,"CD")=CD
 N SUG S SUG=$$SUG^W4P(PAR)
 D SETPARSUG(SUG)
 I CD'?1N.N M ^PAR1(PAR)=^PAR(PAR)
 Q
SETPARSUG(SUG) ;
 Q:'SUG  Q:'$D(^PARSUG(SUG))
 M ^PARSUG1(SUG)=^PARSUG(SUG)
 N A S A=^PARSUG1(SUG)
 S A=$$SPA^%L1FRM(A)
 S A=$$RPL^%L1FRM(A,^[$$^W3MAIN]W3MSD(MSD),"")
 S A=$$SPA^%L1FRM(A)
 I $E(A,$L(A))="-" S A=$E(A,1,$L(A)-1)
 I $E(A)="-" S A=$E(A,2,$L(A))
 S ^PARSUG1(SUG)=A
 Q
SETA ;
 K MS N N,NS,SET
 S N="" F  S N=$O(^P1EZA(N)) Q:N=""  D
 .S NS="" F  S NS=$O(^P1EZA(N,NS)) Q:NS=""  D
 ..S SET=$E(NS,2,6) Q:SET=""  S MS(SET)=""
 S N="" F  S N=$O(^P1EZT(N)) Q:N=""  D
 .S NS="" F  S NS=$O(^P1EZT(N,NS)) Q:NS=""  D
 ..S SET=$E(NS,2,6) Q:SET=""  S MS(SET)=""
 ;
 S SET="" F  S SET=$O(^P1SETA(SET)) Q:SET=""  I '$D(MS(SET)) K ^P1SETA(SET)
 Q
 

W3TIME
W3TIME(H,IR) ; [ 08.05.25 15:57 ] [ 25.03.25 12:05 ] [ 26.09.24 16:19 ] 
 S IR=$$CNWEB^%L1FRM(IR)
 N TM,DT,HR,ND,THZ K W3TIME S ND=0
 S DT=$P(H,",")
 S THZ=$$THZ(IR)
 ;
 I $$^%L1DC(+H,8)=7,$G(@$$^W4PRM@("SHBTIME")) S THZ=THZ+^("SHBTIME")
 S HR=$P(H,",",2)+(THZ*60)
 I HR>(60*60*24) S HR=HR-(60*60*24),W3TIME("ND")=1
 I $D(W3TIME("ND")) S DT=DT+1
 S TM=DT_","_HR
 Q TM
 ;
THZ(IR) ;
 S IR=$G(IR)
 I $L($P(IR,",",2)) S IR=$P(IR,",",2) 
 I $L($P(IR,":")) S IR=$P(IR,":")
 ;;S ^AA("W3TIME-THZ","IR")=IR
 I ($TR(IR," ","")["TAKEAWAY")!($TR(IR,". ","")["TAW")!$$TAWDLV^W4PRM Q $$THZTAW
 ;
 N THZ S THZ=0
 I $L($G(IR)) D
 .I $$POLYGON^W4PRM,$$GETP^%W1PRM("AZRPLGN") S THZ=$$TMARVPLGN^W3SP Q
 .S THZ=$$ZMSHD^W3SP(IR)
 ;
 I 'THZ S THZ=$G(@$$^W4PRM@("TIMEHZ"))
 I 'THZ S THZ=40
 I $D(@$$^W4GL("W3TMZONE")) S THZ=THZ+@$$^W4GL("W3TMZONE")
 Q THZ
 ;
 ;
TM(H,IR,PR) ;
 N TM S TM=$$W3TIME(H,IR)
 S TM=$$T^%L1TIME(TM)
 N DOP
 N HR,MN S HR=$P(TM,":")
 S MN=$P(TM,":",2)
 ;
 I $$ADSHAA^W4PRM D
 .N TMAD S TMAD=HR*60+MN+$$PLUSTIME^W4PRM
 .S TMAD=$$DOP^%L1FRM(TMAD\60)_":"_$$DOP^%L1FRM(TMAD#60)
 .S TM=TM_":"_TMAD
 Q TM
 ;
THZTAW(STAM) ;
 N THZ
 S THZ=+$G(@$$^W4PRM@("TAWTIME"))
 I 'THZ S THZ=+$G(@$$^W4PRM@("DLYPRN"))
 I 'THZ S THZ=30
 Q THZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TMPORD
W3TMPORD(STAM) ; [ 07.01.08 21:02 ] [
 Q "^[$$^W3MAIN]TMPORD"
 ;
D(JB) Q $D(@$$W3TMPORD@(JB))

W3TMPTF
W3TMPTF(STAM) ; [ 22.06.18 12:31 ] [ 03.05.17 13:03 ] [ 19.12.10 15:59 ] 
 Q "^[$$^W3MAIN]TMPTF"
 ;
CD(A) ;
 Q $P(A,"~")
 ;
NM(A) ;
 Q $P(A,"~",2)
 ;
MH(A) ;
 Q $P(A,"~",3)
 ;
PR(A) ;
 Q $P(A,"~",4)
 ;
EQ(A) ;
 N PR S PR=$$PR(A)
 I PR["="!(PR["!") Q 1
 I PR[">"!(PR["^") Q 2
 Q 0
 ;
BOX(A) ;
 N PR S PR=$$PR(A)
 I PR["-" Q 1
 Q 0
 ;
KILL(UR)
 K @$$W3TMPTF@($$^%W1JB,+$G(UR))
 Q
 
 

W3TR2HZ
W3TR2HZ(MSDFROM,MSDTO,HZM) ; [ 27.11.12 11:30 ] [ 09.05.12 19:56 ] [ 12.03.12 09:32 ]
 N (MSDFROM,MSDTO,HZM)
 S JB=$$^%W1SsID("W3TR2HZ")
 ;
 S %ARG("GLORD")="^[$$^W3MAIN]HZ2MSD(MSDFROM,MSDTO,HZM)"
 S %ARG("MSDFROM")=MSDFROM
 S %ARG("MSDTO")=MSDTO
 ;
 ;;I $D(^[$$^W3MAIN]HZ2MSDA(MSDFROM,MSDTO,HZM,"SENDED")) G END
 I $D(^[$$^W3MAIN]HZ2MSDA(MSDFROM,MSDTO,HZM)) G END
 ;
 S MKR=$$MKR^W3MSDR(+MSDFROM) I 'MKR G END
 ;
 I '$$^W4GETHZ(HZM) G ER
 ;
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",51)=MKR
 D PUT^%W1PRM("MSD",MSDTO)
 ;
 S OK=0
 D TERM^W3ORDVW
 ;
 I OK D
 .M ^[$$^W3MAIN]HZ2MSDA(MSDFROM,MSDTO,HZM)=^[$$^W3MAIN]HZ2MSD(MSDFROM,MSDTO,HZM)
 .K ^[$$^W3MAIN]HZ2MSD(MSDFROM,MSDTO,HZM)
 ;
END Q
 ;
ER ;
 M ^[$$^W3MAIN]HZ2MSDE(MSDFROM,MSDTO,HZM)=^[$$^W3MAIN]HZ2MSD(MSDFROM,MSDTO,HZM)
 K ^[$$^W3MAIN]HZ2MSD(MSDFROM,MSDTO)
 G END

W3TR2L
W3TR2L(UCI) ;                  [ 02.12.10 10:40 ] [ 12.08.10 16:01 ] [ 27.04.10 15:00 ]
 N MRK,LKH
 ;
 S MRK="" F  S MRK=$O(^[UCI]LKHSEND(MRK)) Q:MRK=""  D
 .S LKH="" F  S LKH=$O(^[UCI]LKHSEND(MRK,LKH)) Q:LKH=""  D
 ..N A S A=$G(^(LKH,2))
 ..
 ..M ^[UCI]LKHA(LKH)=^[UCI]LKHSEND(MRK,LKH)
 ..
 ..I $D(^[$$^W3MAIN]LKH(LKH)) D  Q
 ...N B S B=$G(^(LKH,2))
 ...D SETMEMB(LKH,LKH,A,B)
 ..
 ..I $D(^[$$^W3MAIN]LKH("03"_LKH)) D  Q
 ...N B S B=$G(^("03"_LKH,2))
 ...D SETMEMB("03"_LKH,LKH,A,B)
 ..
 ..I $E(LKH,3,12),$D(^[$$^W3MAIN]LKH($E(LKH,3,12))) D  Q
 ...N B S B=$G(^($E(LKH,3,12),2))
 ...D SETMEMB($E(LKH,3,12),LKH,A,B)
 ..
 ..I UCI["/maf/",$D(^[UCI]P1EZLI(77000,LKH)) D  ; --- BURSA
 ...D BURSA(LKH,UCI)
 .
 .K ^[UCI]LKHSENDA(+$H_$P($H,",",2),MRK)
 .M ^[UCI]LKHSENDA(+$H_$P($H,",",2),MRK)=^[UCI]LKHSEND(MRK)
 .K ^[UCI]LKHSEND(MRK)
 ;
END Q
 ;
BURSA(N,MAF) ;
 I $D(^[$$^W3MAIN]LKH(N)) Q
 I $D(^[MAF]LKHA(N)) D SET(N,N) Q
 I $D(^[MAF]LKHA($E(N,3,12))) D SET(N,$E(N,3,12)) Q
 I $D(^[MAF]LKHA("03"_N)) D SET(N,"03"_N) Q
 Q
 ;
SET(N,N1) ;
 Q:'$D(^[MAF]LKHA(N1))
 M ^[$$^W3MAIN]LKH(N)=^[MAF]LKHA(N1)
 K ^[$$^W3MAIN]LKH(N,"A")
 S $P(^[$$^W3MAIN]LKH(N,3),"*",3)=1234
 S $P(^[$$^W3MAIN]LKH(N,2),"*",23)="dqxea"
 Q
 ;
SETMEMB(LKH1,LKH2,A,B) ;
 S $P(^[$$^W3MAIN]LKH(LKH1,1),"*",5)=$P($G(^[UCI]LKHSEND(MRK,LKH2,1)),"*",5)
 S $P(^[$$^W3MAIN]LKH(LKH1,1),"*",13)=$P($G(^[UCI]LKHSEND(MRK,LKH2,1)),"*",13)
 S ^[$$^W3MAIN]LKH(LKH1,2)=$P(A,"*",1,18)_"*"_$P(B,"*",19)_"*"_$P(A,"*",20,21)_"*"_$P(B,"*",22,30)
 Q

W3TR2MM
W3TR2MM(DT,MSDFROM,TO,HZM) ; [ 22.08.12 12:50 ] [ 21.08.12 10:51 ] [ 20.08.12 17:25 ]
 N (DT,MSDFROM,TO,HZM)
 S JB=$$^%W1SsID("W3TR2MM")
 ;
 S %ARG("GLORD")="^[$$^W3MAIN]HZ2MM("""_DT_""","""_MSDFROM_""","""_TO_""","""_HZM_""")"
 S %ARG("MSDFROM")=MSDFROM
 S %ARG("TO")=TO
 ;
 I $D(^[$$^W3MAIN]HZ2MMA(DT,MSDFROM,TO,HZM,"SENDED")) G END
 ;
 I '$$^W4GETHZ(HZM) G ER
 ;
 S MKR=""
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",51)=MKR
 D PUT^%W1PRM("MSD",TO)
 ;
 S ^[$$^W3MAIN]TMPORD(JB,"MSDTO")=$G(^[$$^W3MAIN]HZ2MM(DT,MSDFROM,TO,HZM,"MSDTO"))
 S ^[$$^W3MAIN]TMPORD(JB,"SHUL")=$G(^[$$^W3MAIN]HZ2MM(DT,MSDFROM,TO,HZM,"SHUL"))
 S OK=0
 D TERM^W3ORDVW
 ;
 I OK D
 .M ^[$$^W3MAIN]HZ2MMA(DT,MSDFROM,TO,HZM)=^[$$^W3MAIN]HZ2MM(DT,MSDFROM,TO,HZM)
 .K ^[$$^W3MAIN]HZ2MM(DT,MSDFROM,TO,HZM)
 ;
END Q
 ;
ER ;
 M ^[$$^W3MAIN]HZ2MME(DT,MSDFROM,TO,HZM)=^[$$^W3MAIN]HZ2MM(DT,MSDFROM,TO,HZM)
 K ^[$$^W3MAIN]HZ2MM(DT,MSDFROM,TO)
 G END

W3TR2P
W3TR2P(UCI) ;                  [ 18.08.16 09:16 ] [ 22.01.16 15:02 ] [ 29.06.11 11:24 ]
 N MRK,MAINPRT,GLP,PRT,N
 ;
 S MRK="" F  S MRK=$O(^[UCI]PARSEND(MRK)) Q:MRK=""  D
 .I $G(^(MRK))="ALL" D
 ..S IND=+$H_$TR($J($P($H,",",2),5)," ",0)
 ..S FL="PAROLD"_IND
 ..I $$EXIST^%L1ZOS(FL) C FL:DELETE
 ..O FL:(WRITE:NEWVERSION)
 ..U FL
 ..N N S N="" F  S N=$O(^[UCI]SHP("%GSPAR",N)) Q:N=""  D
 ...S GL=$G(^(N)) S:$E(GL)'="^" GL="^"_GL
 ...D WR^%L1G2F(GL) ;ZWR @GL
 ..C FL
 ..K ^[UCI]PAROLD(MRK,IND)
 ..M ^[UCI]PAROLD(MRK,IND)=^[UCI]PAR
 ..K ^[UCI]PAR
 ..N N S N="" F  S N=$O(^[UCI]PRTNO(N)) Q:N=""  D
 ...S ^[UCI]W3PAR(N)=1
 ..K ^[UCI]PRTNO,^[UCI]PRTNNO
 ..S N="" F  S N=$O(^[UCI]SHP("%GSPAR",N)) Q:N=""  D
 ...S A=$G(^(N)) I A["P1EZ"!(A["P1SET")!($E(A,1,3)="MHT") K @("^"_A)
 .
 .S MAINPRT="" F  S MAINPRT=$O(^[UCI]PARSEND(MRK,MAINPRT)) Q:MAINPRT=""  D
 ..N OKK S OKK=0
 ..S GLP="" F  S GLP=$O(^[UCI]PARSEND(MRK,MAINPRT,GLP)) Q:GLP=""  D
 ...I GLP'="PRTNO",GLP'="PRTNNO" S OKK=1
 ..I OKK D
 ...K ^[UCI]P1EZA(MAINPRT),^[UCI]P1EZT(MAINPRT)
 ...K ^[UCI]P1EZR(MAINPRT),^[UCI]P1EZI(MAINPRT)
 ..
 ..S GLP="" F  S GLP=$O(^[UCI]PARSEND(MRK,MAINPRT,GLP)) Q:GLP=""  D
 ...N GLO S GLO="^["""_UCI_"""]"_GLP
 ...
 ...I $D(^[UCI]P1PRM("PARSEND",GLP)) D
 ....K @GLO S @GLO=^[UCI]PARSEND(MRK,MAINPRT,GLP)
 ...
 ...S PRT="" F  S PRT=$O(^[UCI]PARSEND(MRK,MAINPRT,GLP,PRT)) Q:PRT=""  D
 ....K @GLO@(PRT)
 ....;;I GLP="P1EZA" K ^[UCI]P1EZT(PRT),^[UCI]P1EZR(PRT),^[UCI]P1EZI(PRT)
 ....;;I GLP="P1EZT" K ^[UCI]P1EZA(PRT),^[UCI]P1EZR(PRT),^[UCI]P1EZI(PRT)
 ....I GLP="L1TIP" M ^[UCI]L1TIP("MTK",PRT)=^[UCI]PARSEND(MRK,MAINPRT,GLP,PRT) Q
 ....
 ....M @GLO@(PRT)=^[UCI]PARSEND(MRK,MAINPRT,GLP,PRT)
 ..
 .I $G(^[UCI]PARSEND(MRK))="ALL" D
 ..S N="" F  S N=$O(^[UCI]PRTNO(N)) Q:N=""  D
 ...;K ^[UCI]PAR(N)
 ...S ^[UCI]W3PAR(N)=0
 .
 .M ^[UCI]PARSENDA(+$H_$P($H,",",2),MRK)=^[UCI]PARSEND(MRK)
 .K ^[UCI]PARSEND(MRK)
 ;
 S N="" F  S N=$O(^[UCI]PRTNNO(N)) Q:N=""  K ^[UCI]PRTNO(N) S ^[UCI]W3PAR(N)=1
 M ^[UCI]PRTNNOO(+$H)=^[UCI]PRTNNO
 K ^[UCI]PRTNNO
 ;
END Q
 
 
 

W3TR2P0
W3TR2P(UCI) ;                  [ 18.08.16 09:01 ] [ 22.01.16 15:02 ] [ 29.06.11 11:24 ] 
 N MRK,MAINPRT,GLP,PRT,N
 ;
 S MRK="" F  S MRK=$O(^[UCI]PARSEND(MRK)) Q:MRK=""  D
 .I $G(^(MRK))="ALL" D
 ..S IND=+$H_$TR($J($P($H,",",2),5)," ",0)
 ..K ^[UCI]PAROLD(MRK,IND)
 ..M ^[UCI]PAROLD(MRK,IND)=^[UCI]PAR
 ..K ^[UCI]PAR
 .
 .S MAINPRT="" F  S MAINPRT=$O(^[UCI]PARSEND(MRK,MAINPRT)) Q:MAINPRT=""  D
 ..N OKK S OKK=0
 ..S GLP="" F  S GLP=$O(^[UCI]PARSEND(MRK,MAINPRT,GLP)) Q:GLP=""  D
 ...I GLP'="PRTNO",GLP'="PRTNNO" S OKK=1
 ..I OKK D
 ...K ^[UCI]P1EZA(MAINPRT),^[UCI]P1EZT(MAINPRT)
 ...K ^[UCI]P1EZR(MAINPRT),^[UCI]P1EZI(MAINPRT)
 ..
 ..S GLP="" F  S GLP=$O(^[UCI]PARSEND(MRK,MAINPRT,GLP)) Q:GLP=""  D
 ...N GLO S GLO="^["""_UCI_"""]"_GLP
 ...
 ...I $D(^[UCI]P1PRM("PARSEND",GLP)) D
 ....K @GLO S @GLO=^[UCI]PARSEND(MRK,MAINPRT,GLP)
 ...
 ...S PRT="" F  S PRT=$O(^[UCI]PARSEND(MRK,MAINPRT,GLP,PRT)) Q:PRT=""  D
 ....K @GLO@(PRT)
 ....;;I GLP="P1EZA" K ^[UCI]P1EZT(PRT),^[UCI]P1EZR(PRT),^[UCI]P1EZI(PRT)
 ....;;I GLP="P1EZT" K ^[UCI]P1EZA(PRT),^[UCI]P1EZR(PRT),^[UCI]P1EZI(PRT)
 ....I GLP="L1TIP" M ^[UCI]L1TIP("MTK",PRT)=^[UCI]PARSEND(MRK,MAINPRT,GLP,PRT) Q
 ....
 ....M @GLO@(PRT)=^[UCI]PARSEND(MRK,MAINPRT,GLP,PRT)
 ..
 .I $G(^[UCI]PARSEND(MRK))="ALL" D
 ..S N="" F  S N=$O(^[UCI]PRTNO(N)) Q:N=""  K ^[UCI]PAR(N)
 .
 .M ^[UCI]PARSENDA(+$H_$P($H,",",2),MRK)=^[UCI]PARSEND(MRK)
 .K ^[UCI]PARSEND(MRK)
 ;
 S N="" F  S N=$O(^[UCI]PRTNNO(N)) Q:N=""  K ^[UCI]PRTNO(N) S ^[UCI]W3PAR(N)=1
 M ^[UCI]PRTNNOO(+$H)=^[UCI]PRTNNO
 K ^[UCI]PRTNNO
 ;
END Q
 
 
 
 
 
 

W3TR2S
W3TR2S(UCI) ;                  [ 25.03.11 19:34 ] [ 20.03.11 20:44 ] [ 30.01.11 19:20 ]
 N MRK,GL,GLO
 ;
 S MRK="" F  S MRK=$O(^[UCI]p1sendw(MRK)) Q:MRK=""  D
 .S GL="" F  S GL=$O(^[UCI]p1sendw(MRK,GL)) Q:GL=""  D
 ..S GLO="^["""_UCI_"""]"_GL
 ..D
 ...I GL="P1AZR" D AZR(MRK) Q
 ...I GL="P1AZS" D AZS(MRK) Q
 ...K @GLO
 ...M @GLO=^[UCI]p1sendw(MRK,GL)
 ..
 ..K ^[UCI]p1sendwa(+$H_$P($H,",",2),MRK,GL)
 ..M ^[UCI]p1sendwa(+$H_$P($H,",",2),MRK,GL)=^[UCI]p1sendw(MRK,GL)
 ..K ^[UCI]p1sendw(MRK,GL)
 ;
END Q
 ;
AZR(MRK) ;
 K ^[UCI]W3AZR("IS")
 M ^[UCI]W3AZR("IS")=^[UCI]p1sendw(MRK,"P1AZR")
 Q
 ;
AZS(MRK) ;
 K ^[UCI]W3AZS("IS")
 M ^[UCI]W3AZS("IS")=^[UCI]p1sendw(MRK,"P1AZS")
 Q
 ;

W3TR2WEB
W3TR2WEB(MSD,HZM) ; [ 29.12.21 07:13 ] [ 29.10.17 09:02 ] [ 24.10.17 09:57 ] 
 N (MRK,MSD,HZM)
 S JB=$$^%W1SsID("W3TR2WEB")
 ;
 S %ARG("GLORD")="^[$$^W3MAIN]HZ2WEB("""_MSD_""","""_HZM_""")"
 ;
 S SNIF=+$G(^[$$^W3MAIN]HZ2WEB(MSD,HZM,"SNIF"))
 ;
 K ^[$$^W3MAIN]HZ2WEB0(MSD,HZM)
 M ^[$$^W3MAIN]HZ2WEB0(MSD,HZM)=^[$$^W3MAIN]HZ2WEB(MSD,HZM)
 ;
 S %ARG("MSD")=MSD
 ;
 S OLDDLV=$G(^[$$^W3MAIN]HZ2WEBA(MSD,SNIF_"-"_HZM,"WEB"))
 S OLDORD=$P(OLDDLV,";")
 ;
 S %ARG("DLVCSR")="WEB"
 ;
 I '$$^W4GETHZ(HZM) G ER  ; ^HZ2WEB(MSD,HZM) --> ^TMPORD(JB)
 ;
 I $D(@%ARG("GLORD")@("MKBN"))#2 D
 .S @$$^W3TMPORD@(JB,"MKBN")=@%ARG("GLORD")@("MKBN")
 ;
 I $D(@%ARG("GLORD")@("PSLN"))#2 D
 .S @$$^W3TMPORD@(JB,"PSLN")=@%ARG("GLORD")@("PSLN")
 ;
 K DLV
 S ST=$G(@%ARG("GLORD"))
 S DLV=$G(@%ARG("GLORD")@("WEB"))
 ;
 S HZW=+$P(DLV,";")
 ;
 I HZW,$D(@$$^W3ORD@(HZW)) D
 .N HD,HD0 S HD=$G(@$$^W3TMPORD@(JB))
 .S HD0=$G(@$$^W3ORD@(HZW))
 .N J F J=1:1:$L(HD0,"~") D
 ..I $P(HD,"~",J)="",$P(HD0,"~",J)'="" S $P(HD,"~",J)=$P(HD0,"~",J)
 .S @$$^W3TMPORD@(JB)=HD
 .
 .I $D(@%ARG("GLORD")@("MSDTO")) Q
 .
 .N N S N="" F  S N=$O(@$$^W3ORD@(HZW,N)) Q:N=""  I N'?1N.E D
 ..I '$D(@$$^W3TMPORD@(JB,N)) M @$$^W3TMPORD@(JB,N)=@$$^W3ORD@(HZW,N)
 ;
 D PUT^%W3DEB("W3TR2WEB","DLV0=DLV")
 ;
 I $D(@%ARG("GLORD")@("DBF"))#2 D
 .S @$$^W3TMPORD@(JB,"DBF")=@%ARG("GLORD")@("DBF")
 ;
 M @$$^W3TMPORD@(JB,"F")=@%ARG("GLORD")@("F")
 ;
 S $P(DLV,";",4)=HZM
 S $P(DLV,";",5)=$G(@%ARG("GLORD")@("SNIF"))
 ;
 I $D(@%ARG("GLORD")@("MSDTO")) D  ; -- PERENOS IZ SNIFA V SNIF
 .S MSD=$G(^("MSDTO"))
 .S @$$^W3TMPORD@(JB,"MSDFROM")=$G(@$$^W3TMPORD@(JB,"MSD"))
 .K @$$^W3TMPORD@(JB,"MSD")
 .K @$$^W3TMPORD@(JB,"WEB")
 .K @$$^W3TMPORD@(JB,"S")
 .K @$$^W3TMPORD@(JB,"D")
 .S OLDORD=""
 .S $P(DLV,";",1)=""
 .S $P(DLV,";",4)=""
 ;
 D PUT^%W1PRM("MSD",MSD)
 I 'DLV S $P(DLV,";")=$S(OLDORD:OLDORD,1:JB)
 ;
 S $P(@$$^W3TMPORD@(JB),"~",34)="" ; -- HEARA
 S $P(@$$^W3TMPORD@(JB),"~",27)=$P(@$$^W3TMPORD@(JB),"~",1)
 ;
 S $P(DLV,";",10,200)=$$INVH^%L1FRM($P(DLV,";",10,200))
 D PUT^%W3DEB("W3TR2WEB","DLV=DLV")
 ;
 S ^[$$^W3MAIN]HZ2WEB(MSD,HZM,"WEB")=DLV
 ;
 D TERM^W3ORDVW
 ;
 ;;I '$$ISHUR(DLV) D TERM^W3ORDVW
 ;;I $$ISHUR(DLV) D:OLDORD SNDISHUR(MSD,DLV) G END
 ;
 M ^[$$^W3MAIN]HZ2WEBA(MSD,SNIF_"-"_HZM)=^[$$^W3MAIN]HZ2WEB(MSD,HZM)
 K ^[$$^W3MAIN]HZ2WEB(MSD,HZM)
 ;
END Q
 ;
 ;
ER ;
 S SNIF=+$G(^[$$^W3MAIN]HZ2WEB(MSD,HZM,"SNIF"))
 M ^[$$^W3MAIN]HZ2WEBE(MSD,SNIF_"-"_HZM)=^[$$^W3MAIN]HZ2WEB(MSD,HZM)
 K ^[$$^W3MAIN]HZ2WEB(MSD)
 G END
 ;
PRCOFR(GL)
 N I,A,CD
 N UCI S UCI=^[$$^W3MAIN]UCI(MSD)
 S OK=0
 F I=1:1 Q:'$D(@GL@(I))  D  Q:OK
 .S A=$G(^(I)) Q:A=""
 .S CD=$P(A,"\") Q:CD=""
 .I CD=$G(^[UCI]W3PRM("HZMH2")) S OK=2 Q
 .I CD=$G(^[UCI]W3PRM("HZMH")) S OK=1 Q
 Q OK
 ;
ISHUR(DLV) ;
 I $P(DLV,";",9)?1N Q 1
 Q 0
 ;
SNDISHUR(MSD,DLV) ;
 D PUT^%W3DEB("W3TR2WEB-SNDISHUR","MSD=MSD&DLV=DLV")
 N SND,FAX,EMAIL,LINK,DET,ORD,HZRSD,ISHUR
 S ORD=$P(DLV,";") Q:'ORD
 S SND=$P($P(DLV,";",2),"-")
 S DET=$P($P(DLV,";",2),"-",2)
 S EMAIL=$P(DLV,";",3) Q:'$L(EMAIL)
 S HZRSD=$P(DLV,";",4)
 S ISHUR=$P(DLV,";",9)
 S LINK=$P($$WEB^W3MAIN,"//",2,20)_"w3ordvw.jsp?MSD="_MSD_"&W3ORDLS="_ORD_"&RCV=1"
 I $$SNDM^W3SNDHMH(MSD,ORD,EMAIL_";"_LINK_";"_DET,ISHUR)
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W3TREE
W3TREE ; [ 21.06.13 14:07 ] [ 01.11.08 14:25 ] [ 28.06.08 12:59 ]
 N SUGA S SUGA=$$SUGA
 K ^[$$^W3MAIN]TMPEZ($$^%W1JB)
 ;
 I SUGA="A" D
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZA")@(N)) Q:N=""  I $D(^(N))>9 D
 ..M ^[$$^W3MAIN]TMPEZ($$^%W1JB,N)=@$$^W4GL("P1EZA")@(N)
 ..S $P(^[$$^W3MAIN]TMPEZ($$^%W1JB,N),"\",2)="A"
 ;
 I SUGA="T" D
 .S N="" F  S N=$O(@$$^W4GL("P1EZT")@(N)) Q:N=""  I $D(^(N))>9 D
 ..I $D(@$$^W4GL("P1EZA")@(N))>9 Q
 ..M ^[$$^W3MAIN]TMPEZ($$^%W1JB,N)=@$$^W4GL("P1EZT")@(N)
 ..S $P(^[$$^W3MAIN]TMPEZ($$^%W1JB,N),"\",2)="T"
 Q
 ;
SUGA(STAM) ;
 Q $$GETP^%W1PRM("SUGA")
 ;
TABLENAME(STAM)
 I $$SUGA^W3TREE="A" Q $$^%W1DICT("TREETABLE")
 Q $$^%W1DICT("ITEMADDGROUPTABLE")

W3TREIDK
W3TREIDK ; [ 12.11.24 18:35 ] [ 05.08.23 12:36 ] [ 29.05.22 13:54 ] 
 N (JB,%ARG,SRCH)
 ;;W !,"W3TREIDK: PARENT="_$G(%ARG("PARENT"))_"  MSD="_$G(%ARG("MSD")),!
 D PUT^%W1PRM("SAVED",0)
 D TMPEZ
 I '$G(JB) W " JB number is not defined ! " Q
 N MSG S MSG=""
 N SRC S SRC=$$SPA^%L1FRM(%ARG("SEARCHTREE"))
 ;
 I '$G(%ARG("PARENT")),$$ISNUM^%L1FRM(SRC) D  Q:$L(MSG)
 .I $$SHEM^W4P(SRC)="" S MSG="LUNCHNUMBERISWRONG!"
 .I $$^W4TSF(SRC),'$$^W4EZAT(SRC) S MSG="ITSITEMADDONS!"
 .I $G(%ARG("EZT")),$$DD^W4EZA(SRC) S MSG="ITSLUNCH!"
 .I '$G(%ARG("EZT")),$$DD^W4EZT(SRC) S MSG="ITSITEMGROUPADDONS!"
 .
 .I MSG'="" D  Q
 ..W "<script>",!
 ..W " MsgA('"_MSG_"')",!
 ..W "</script>",!
 .
 .S %ARG("PARENT")=SRC
 ;
 D PUT^%W3DEB("W3TREIDK","%ARG=[%ARG")
 I '$G(%ARG("PARENT")) Q
 ;
 S MSD=%ARG("MSD")
 I 'MSD S MSD=$$GETP^%W1PRM("MSD")
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 ;
 D PUT^%W1PRM("PARENT",%ARG("PARENT"))
 S PARENT=%ARG("PARENT")
 ;
 I $G(%ARG("FIRST")) K @$$^W4MAIN("TMPMHQ"),@$$^W4MAIN("TMPEZ") D ^W3TREE
 ;
 W "<div align=""center"" >",!
 ;;W "<span dir="""_$$^%W1DIR_""" style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$TABLENAME^W3TREE_"</span>"
 W "<span dir="""_$$^%W1DIR_""" style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$PARENT_" "_$$H2U^%L1FRM($$SHEM^W4P($$PARENT))_"</span>"
 W "<table id=""TblTree"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""12%"">"_$$^%W1DICT("SETCODE")_"</th>"
 W "<th width=""65%"">"_$$^%W1DICT("SETNAME")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("DELETE")_"</th>"
 W "<th width=""13%"">&nbsp;</th>"
 W "</tr>",!
 ;
 N N,I
 D CRGL1(PARENT)
 ;
 S NP="",I=0 F  S NP=$O(@GL1@(NP)) Q:NP=""  D
 .S N=$G(^(NP)) ; -- N - "A"+SET NUMBER
 .
 .W "<tr id=""trtre"_N_""" >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>",!
 .N CS,COLSET,EXCT S COLSET="",EXCT=0
 .S CS=$$COLSET(N) I CS["!" S EXCT=1,CS=+CS
 .I +CS=1 S COLSET=$$^%W1DICT("ONEITEMONLY")
 .I CS>1 S COLSET=$$^%W1DICT($S(EXCT:"ITEMSEXACTLY",1:"UNTILITEMS"),CS)
 .W "<td align=""center"">&nbsp;<span id=""name"_N_""">"
 . W $$H2U^%L1FRM($$NMSET(N))_"&nbsp;</span>"
 . W "<span style=""color:black;font-size:"_$$^W3FSZ(8)_""">"_COLSET_"</span>"
 .W "</td>",!
 .
 .N ID,PROC
 .S ID="chtre"_N
 .S PROC="OnClickTbl('"_N_"','TblTree','trtre','chtre')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .D ^W4VRXNIZ(N)
 .W "</tr>",!
 .I $G(%ARG("CONTENT")) D DET(N)
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $D(GL1),$D(@GL1) K @GL1
 I $D(GL2),$D(@GL2) K @GL2
 I $D(GLS),$D(@GLS) K @GLS
 Q
 ;
GL S GL="^[$$^W3MAIN]TMPTREE($$^%W1JB)"
 Q
GL1 S GL1="^[$$^W3MAIN]TMPTREE1($$^%W1JB)"
 Q
GL2 S GL2="^[$$^W3MAIN]TMPTREE2($$^%W1JB)"
 Q
 ;
 ;
DET(NSET) ;
 Q:$G(NSET)=""
 S PRTREE=0 I $E(NSET)="A" S PRTREE=1,NSET=$$NOMSET(NSET)
 W "<tr><td>&nbsp;</td>"
 W "<td colspan=""2"">"
 W "<table id=""Tbls"_NSET_""" dir="""_$$^%W1DIR_""" border=""1"" rules=""cols"" style=""color:green;width:100%;border:none"" cellspacing=""0"" >",!
 W "<tr style=""background-color:eaeaea""><th>"_$$^%W1DICT("ITEMCODE")_"</th>"
 W " <th>"_$$^%W1DICT("ITEMNAME")_"</th>"
 W " <th>"_$$^%W1DICT("QNDEF")_"</th>"
 W " <th>"_$$^%W1DICT("ADDPRICE")_"</th>"
 W " <th>"_$$^%W1DICT("COMPSUBADD")_"</th>"
 W "</tr>",!
 ;
 D CRGLS(NSET)
 N PAR,II,NP S NP="",II=0 F  S NP=$O(@GLS@(NP)) Q:NP=""  D
 .S II=II+1,PAR=$G(^(NP)) Q:PAR=""
 .W "<tr"
 .D
 ..I '$$^W4PRTVW(PAR) W " style=""background-color:pink"" " Q
 ..I 'PRTREE W " style=""background-color:"_$S(II#2:"white",1:"eaeaea")_"""" Q
 .W ">"
 .W "<td>"_PAR_"</td>"
 .W "<td>"_$$ITEMNAME(PAR)_"</td>"
 .
 .I PRTREE D
 ..I $G(%ARG("FIRST"))!'$D(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"QN",PAR))!'$D(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"MH",PAR)) D
 ...D SETMHQ(PARENT,PAR,"QN",$$QNDEF(PARENT,NSET,PAR))
 ...D SETMHQ(PARENT,PAR,"MH",$$MHT(PARENT,NSET,PAR))
 ..
 ..W "<td align=""center"">"
 .. W "<input type=""text"" align=""center"" dir=""LTR"" size=""2"" id=""qn"_PAR_""" name=""set"_NSET_""" value="""_$$TMPMHQ(PARENT,PAR,"QN")_""" style=""text-align:center"" onClick=""this.select()"" onKeyUp=""ChnQn('"_PARENT_"','"_PAR_"')"" />"
 ..W "</td>",!
 ..W "<td align=""center"" >"
 .. W "<input type=""text"" align=""center"" dir=""LTR"" size=""2"" id=""mh"_PAR_""" value="""_$J($$TMPMHQ(PARENT,PAR,"MH"),2,2)_"""  style=""text-align:center"" onClick=""this.select()"" onKeyUp=""ChnMh('"_PARENT_"','"_PAR_"')"" />"
 ..W "</td>",!
 ..W "<td align=""center"" >"
 .. W "<input type=""checkbox"" align=""center"" "
 .. W " id=""comp"_PAR_""" "
 .. W $S($$TMPMHQ(PARENT,PAR,"MH")'["NO":"checked=""checked"" ",1:"")
 .. W " style=""text-align:center"" "
 .. W " onClick=""ChnMh('"_PARENT_"','"_PAR_"')"" />"
 ..W "</td>",!
 .
 .I 'PRTREE D
 ..W "<td align=""center"">"_$$QNSET(NSET,PAR)_"</td>"
 ..W "<td align=""center"">"_$$MHSET(NSET,PAR)_"</td>"
 .W "</tr>",!
 ;
 W "</td></tr></table>",!
 W "<td>&nbsp;</td>",!
 Q
 ;
ITEMNAME(PAR) ;
 N NM S NM=$$SHEM^W4P(PAR)
 ;;I NM="" Q "&nbsp;"
 Q $$H2U^%L1FRM(NM)
 ;
MHT(PARENT,NSET,PAR)
 N MHT S MHT=$G(@$$^W4GL("MHT")@(PARENT,PAR))
 I MHT="",$D(@$$^W4GL("P1EZT")@(PARENT,"A"_NSET))<10,$D(@$$^W4GL("P1EZA")@(PARENT,"A"_NSET))<10 S MHT=$$MHSET(NSET,PAR)
 ;;I MHT="" Q "&nbsp;"
 Q MHT
 ;
QNDEF(PARENT,NSET,PAR)
 N QNDEF ;;S QNDEF=$G(@$$^W4GL("QNDEF")@(PARENT,PAR))
 ;;I QNDEF="" S QNDEF=$$QNSET(NSET,PAR)
 S QNDEF=$$QNSET(NSET,PAR)
 I $$PRINT^W4P(PAR)[">>",QNDEF'[">" S QNDEF=QNDEF_">"
 ;;I QNDEF="" Q "&nbsp;"
 Q QNDEF
 ;
QNSET(SET,CD) ;
 S QN=$G(@$$^W4GL("QNSET")@(SET,CD))
 ;;I QN="" Q "&nbsp;"
 Q QN
 ;
MHSET(SET,CD) ;
 S SET=$$NOMSET(SET)
 S MH=$G(@$$^W4GL("MHSET")@(SET,CD))
 ;;I MH="" Q "&nbsp;"
 Q $J(MH,2,2)
 ;
FIRSTREE(STAM) ;
 D TMPEZ
 N N S N=$O(@TMPEZ@(""))
 Q N
 ;
 ;
SAVE(PRM) ;
 D GETPARENT,TMPEZ
 D PUT^%W3DEB("W3TREIDK-SAVE","PARENT=PARENT")
 I '$G(PARENT) Q 0
 ;;I $D(@TMPEZ@(PARENT))<10 Q 0
 ;
 K @$$^W4GL("QNDEF")@(PARENT)
 K @$$^W4GL("MHT")@(PARENT)
 ;
 I $D(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT))>9 D
 .N I,CD,QN,MH
 .N N S N="" F  S N=$O(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"QN",N)) Q:N=""  D
 ..N QN S QN=$G(^(N)) ;;I 'QN,QN'[">" Q
 ..S @$$^W4GL("QNDEF")@(PARENT,N)=QN
 ..N SET S SET=$$^W4SET(PARENT,N) I $E(SET)="A" S SET=$E(SET,2,20)
 ..I SET S @$$^W4GL("QNSET")@(SET,N)=QN
 .S N="" F  S N=$O(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"MH",N)) Q:N=""  D
 ..N MH S MH=$G(^(N)) Q:MH=""
 ..S @$$^W4GL("MHT")@(PARENT,N)=MH
 .
 N HD S HD=$G(@TMPEZ@(PARENT))
 ;
 I $$SUGA^W3TREE="T" D  Q 1
 .K @$$^W4GL("P1EZT")@(PARENT)
 .M @$$^W4GL("P1EZT")@(PARENT)=@TMPEZ@(PARENT)
 .S @$$^W4GL("P1EZT")@(PARENT)=+$G(@$$^W4GL("P1EZT")@(PARENT))
 .I $D(@$$^W4GL("P1EZT")@(PARENT))<10 K @$$^W4GL("P1EZT")@(PARENT)
 ;
 D
 .K @$$^W4GL("P1EZA")@(PARENT)
 .M @$$^W4GL("P1EZA")@(PARENT)=@TMPEZ@(PARENT)
 .S $P(@TMPEZ@(PARENT),"\",2)="A"
 .I '$P($G(@TMPEZ@(PARENT)),"\") S $P(@TMPEZ@(PARENT),"\",1)=1
 .I '$P($G(@$$^W4GL("P1EZA")@(PARENT)),"\") S $P(@$$^W4GL("P1EZA")@(PARENT),"\")=1
 .I $D(@$$^W4GL("P1EZA")@(PARENT))<10 K @$$^W4GL("P1EZA")@(PARENT)
 ;
 K @TMPEZ@(PARENT)
 K ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT)
 D PUT^%W1PRM("SAVED",1)
 Q 1
 ;
 ;
DEL(STAM) ;
 D GETPARENT,TMPEZ
 D PUT^%W3DEB("W3TREIDK-DEL","PARENT=PARENT")
 I '$G(PARENT) Q 0
 ;
 K @$$^W4GL("QNDEF")@(PARENT)
 K @$$^W4GL("MHT")@(PARENT)
 K @TMPEZ@(PARENT)
 K ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT)
 ;
 K @$$^W4GL("P1EZT")@(PARENT)
 K @$$^W4GL("P1EZA")@(PARENT)
 Q 1
 ;
MV2TREE(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 N PARENT D GETPARENT
 I '$G(PARENT) Q 0
 D TMPEZ D CRGL1(PARENT)
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK,NP S OK=0
 I PRM="" Q 0
 S NP=$O(@GL1@(99999999),-1)
 ;
 K ^[$$^W3MAIN]TMPRT($$^%W1JB)
 N SET,NSET S SET="" F  S SET=$O(@TMPEZ@(PARENT,SET)) Q:SET=""  D
 .S NSET=$$NOMSET(SET)
 .N PRT S PRT="" F  S PRT=$O(@$$^W4GL("P1SETA")@(NSET,PRT)) Q:PRT=""  D
 ..S ^[$$^W3MAIN]TMPRT($$^%W1JB,PRT)=NSET
 ;
 N I,ER S ER=0
 F I=1:1:$L(PRM,";") D  Q:ER
 .S SET=$P(PRM,";",I) Q:SET=""
 .S NSET=$$NOMSET(SET)
 .N PRT S PRT="" F  S PRT=$O(@$$^W4GL("P1SETA")@(NSET,PRT)) Q:PRT=""  D  Q:ER
 ..I $D(^[$$^W3MAIN]TMPRT($$^%W1JB,PRT)),$G(^(PRT))'=NSET D
 ...S ER=PRT_";"_$G(^(PRT))
 I ER Q ER
 ;
 N I,SET F I=1:1:$L(PRM,";") D
 .S SET=$P(PRM,";",I) Q:SET=""
 .S NP=NP+1,OK=1
 .S:$E(SET)'="A" SET="A"_SET
 .S $P(@TMPEZ@(PARENT,SET),">")=NP
 .S @GL1@(NP)=SET
 .D CLEARMHQ(PARENT,SET)
 Q OK
 ;
MV2SET(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D TMPEZ,GETPARENT Q:'PARENT 0
 D CRGL1(PARENT)
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,SET F I=1:1:$L(PRM,";") D
 .S SET=$P(PRM,";",I) Q:SET=""
 .N NP S NP=+$G(@TMPEZ@(PARENT,SET))
 .K @TMPEZ@(PARENT,SET) S OK=1
 .D CLEARMHQ(PARENT,SET)
 ;
 D CRGL1(PARENT)
 Q OK
 ;
CLEARMHQ(PARENT,SET) ;
 S SET=$$NOMSET(SET)
 N PRT S PRT="" F  S PRT=$O(@$$^W4GL("P1SETA")@(SET,PRT)) Q:PRT=""  D
 .D KILLMHQ(PARENT,PRT)
 Q
KILLMHQ(PARENT,CD) ;
 K ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"QN",CD)
 K ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"MH",CD)
 K @$$^W4GL("QNDEF")@(PARENT,CD)
 K @$$^W4GL("MHT")@(PARENT,CD)
 Q
TREE ;
 N GLOB,TREEONLY
 S GLOB="^[$$^W3MAIN]TMPEZ($$^%W1JB)"
 S TREEONLY=1 I '$G(%ARG("TREEONLY")) S TREEONLY=0,GLOB=$$^W4GL("PAR")
 ;;W !,"GLOB="_GLOB,!
 W $$^%W1DICT("MEAL")_" : "
 W !,"<select id=""parent"" onChange=""AskSave();ShowTree(1);ShowSet()"" >",!
 N NN,II S NN="",II=0 F  S NN=$O(@GLOB@(NN)) Q:NN=""  D
 .N OK S OK=1 I 'TREEONLY D  Q:'OK
 ..I $D(^[$$^W3MAIN]TMPEZ($$^%W1JB,NN)) Q
 ..;;I $D(@$$^W4GL("P1EZ")@(NN)) S OK=0 Q
 ..I $D(@$$^W4GL("P1EZI")@(NN)) S OK=0 Q
 ..I $$SUGA^W3TREE="T",$D(@$$^W4GL("P1EZA")@(NN)) S OK=0 Q
 ..I $$SUGA^W3TREE="A",$D(@$$^W4GL("P1EZT")@(NN)) S OK=0 Q
 .
 .N SRCH S SRCH=$G(%ARG("SEARCHTREE"))
 .I SRCH?1N.N,NN=SRCH G TREEOPT
 .I SRCH?1N.N," "_$$NMTREE(NN)_" "'[(" "_SRCH_" "),NN'=SRCH Q
 .I SRCH'?.P,$$NMTREE(NN)'[$$INVH^%L1FRM(SRCH),NN'=SRCH Q
 .S II=II+1
TREEOPT .W "<option value="""_NN_""""
 .I $$PARENT,NN=$$PARENT W " selected=""selected"""
 .I '$$PARENT,$G(FIRSTREE),II=1 W " selected=""selected"""
 .W " >"_$$RPL^%L1FRM($J(NN,6)," ","&nbsp;")_" "_$$H2U^%L1FRM($$NMTREE(NN))_"</option>",!
 W "</select>",!
 Q
 ;
NMTREE(NN) ;
 Q $P($G(@$$^W4GL("PAR")@(NN)),"**")
 ;
NMSET(CD) D TMPEZ
 N CDN S CDN=$E(CD,2,5)
 Q $P($G(@$$^W4GL("P1SETA")@(CDN)),"\")
 ;
COLSET(CD) D TMPEZ
 N CDN S CDN=$E(CD,2,5)
 Q $P($G(@$$^W4GL("P1SETA")@(CDN)),"\",2)
 ;
 ;
SWAP(CD,DRC) ;
 D GETPARENT,TMPEZ D CRGL1(PARENT)
 S NST=$$GETPN(CD)
 S NST0=$O(@GL1@(NST),DRC) Q:'NST0
 S CD0=$G(@GL1@(NST0))
 S @GL1@(NST0)=CD
 S @GL1@(NST)=CD0
 S $P(@TMPEZ@(PARENT,CD0),">")=NST
 S @TMPEZ@(PARENT,CD0,"CUR")=1
 S $P(@TMPEZ@(PARENT,CD),">")=NST0
 N MH,QN
 ;
 S QN=$G(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"QN",CD))
 S MH=$G(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"MH",CD))
 S ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"QN",CD)=$G(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"QN",CD0))
 S ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"MH",CD)=$G(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"MH",CD0))
 S ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"QN",CD0)=QN
 S ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,"MH",CD0)=MH
 S @GL1@(NST0,"CUR")=1
 Q
 ;
GETPN(CD) ;
 D TMPEZ,GETPARENT
 Q +$G(@TMPEZ@(PARENT,CD))
 ;
CLEAR ;
 D GL1 N N S N="" F  S N=$O(@GL1@(N)) Q:N=""  K ^(N,"CUR")
 Q
 ;
CRGL1(PARENT) ; --- SIDUR SETIM BETOH TREE
 D GETPARENT,TMPEZ,GL1,GL2 K @GL1,@GL2
 N SET,NP,I S I=1
 ;
 S SET="" F  S SET=$O(@TMPEZ@(PARENT,SET)) Q:SET=""  D
 .S NP=+$G(^(SET)) ; -- MISP SIDURI
 .I $D(@GL2@(NP)) S NP=1000+I,I=I+1
 .S @GL2@(NP)=SET
 ;
 S I=0
 S NP="" F  S NP=$O(@GL2@(NP)) Q:NP=""  D
 .N SET S SET=$G(^(NP)) Q:SET=""
 .S I=I+1,@GL1@(I)=SET S $P(@TMPEZ@(PARENT,SET),">")=I
 ;
 K @GL2
 Q
 ;
 ;
TMPEZ S TMPEZ="^[$$^W3MAIN]TMPEZ($$^%W1JB)" ; -- COPY ^P1EZT OR ^P1EZA
 Q
 ;
GETPARENT S PARENT=$$GETP^%W1PRM("PARENT") ; --- MAIN ITEM
 Q
 ;
CRGLS(SET) ; -- > P1SETA - > GLS ; ---  SIDUR PRITIM BETOH SET
 N GL,GL2
 S GL=$$^W4GL("P1SETA")
 S GLS="^[$$^W3MAIN]TMPSET($$^%W1JB)"
 S GL2="^[$$^W3MAIN]TMPSET2($$^%W1JB)"
 K @GLS,@GL2
 N N,NP,I,PRT S I=1
 S PRT="" F  S PRT=$O(@GL@(SET,PRT)) Q:PRT=""  D
 .S NP=+$G(^(PRT))
 .I $D(@GL2@(NP)) S NP=1000+I,I=I+1
 .S @GL2@(NP)=PRT
 S I=0
 S NP="" F  S NP=$O(@GL2@(NP)) Q:NP=""  D
 .N PRT S PRT=$G(^(NP)) Q:PRT=""
 .S I=I+1,@GLS@(I)=PRT
 .S @GL@(SET,PRT)=I
 K @GL2
 Q
 ;
SETMHQ(PARENT,PAR,IND,VL) ;
 I $G(NRZ)="" S NRZ=1
 S VL=$$SPA^%L1FRM(VL)
 S VL=$$RPL^%L1FRM(VL,"&nbsp;","")
 S VL=$TR(VL,"~","")
 S ^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,IND,PAR)=VL
 Q
 ;
TMPMHQ(PARENT,PAR,IND) ;
 I $G(PARENT)="" Q ""
 I $G(PAR)="" Q ""
 I $G(IND)="" Q ""
 Q $G(^[$$^W3MAIN]TMPMHQ($$^%W1JB,PARENT,IND,PAR))
 ;
GETQN(PRM) ;
 N PARENT,PAR,VL
 S PARENT=$P(PRM,";")
 S PAR=$P(PRM,";",2)
 Q $$TMPMHQ(PARENT,PAR,"QN") ;
 ;
SETQN(PRM) ;
 N PARENT,PAR,VL
 S PARENT=$P(PRM,";")
 S PAR=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 D SETMHQ(PARENT,PAR,"QN",VL)
 Q
 ;
SETMH(PRM) ;
 N PARENT,PAR,VL,COMP
 S PARENT=$P(PRM,";")
 S PAR=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 S COMP=$P(PRM,";",4)
 S COMP=$S(COMP:"",1:"NO")
 S VL=VL_";"_COMP
 D SETMHQ(PARENT,PAR,"MH",VL)
 Q
 ;
NOMSET(SET) ;
 I $E(SET)="A" S SET=$E(SET,2,10)
 Q SET
 ;
PARENT(STAM) ;
 I $G(%ARG("PARENT")) Q %ARG("PARENT")
 Q $$GETP^%W1PRM("PARENT")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TRG
W3TRG(MSD) ; [ 12.02.18 09:24 ] [ 04.12.17 23:01 ] [ 21.06.17 17:19 ] 
 N (JB,%ARG,MSD)
 S TRG=$G(%ARG("TRG"))
 S VRM=$$VRM^W3TRM
 K @VRM@("TRL")
 K @VRM@("TRG")
 D ^%L1TS
 ;
 S UCI=$$UCI(MSD)
 ;
 S N=999 F  S N=$O(@$$GLMSD("LKH")@(N)) Q:N=""  D WST(N)
 ;
 N GLSUGL S GLSUGL=$$GLMSD("SUGL")
 S N="" F  S N=$O(@GLSUGL@(N)) Q:N=""  D
 .S ST="GRP_CUST,"_N_","_$$HB($G(@GLSUGL@(N)))_","_$G(@GLSUGL@(N,1))
 .S ST=ST_"***" D W("TRL",2)
 ;
 ;;Q:$G(TRG)<4
 ;
 S GLIR=$$GLMSD("P1IR")
 ;
 S N="" F  S N=$O(@GLIR@(N)) Q:N=""  D
 .N A S A=$G(@GLIR@(N,1))
 .D PRS^%L1FRM(A,"DMSH\DLVTIME\SUMCNCDM","\")
 .S ST="CITY_PRM,"_N_","_$$HB($G(@GLIR@(N)))_","_DMSH_","_DLVTIME_","_SUMCNCDM
 .S ST=ST_"***" D W("TRG",1)
 .
 N W3AZR S W3AZR=$$GLMSD("W3AZR")_"(""IS"")"
 S IRI="" F  S IRI=$O(@W3AZR@(IRI)) Q:IRI=""  D
 .S AZ="" F  S AZ=$O(@W3AZR@(IRI,AZ)) Q:AZ=""  D
 ..S CDIR=$$CDIR(IRI) Q:'CDIR
 ..S AZ1=$G(^(AZ))
 ..S A=$G(^(AZ,1))
 ..S DM=$P(A,"\")
 ..S TIME=$P(A,"\",2)
 ..S CNC=$P(A,"\",3)
 ..S OPEN=$P(A,"\",4)
 ..S ST="NBR_CT_PRM,"_CDIR_","_AZ_","_$$HB(AZ1)_","_DM_","_TIME_","_CNC
 ..S ST=ST_"***" D W("TRG",2)
 ;
 N W3AZS S W3AZS=$$GLMSD("W3AZS")_"(""IS"")"
 S CDIR="" F  S CDIR=$O(@GLIR@(CDIR)) Q:CDIR=""  D
 .S IR=$G(^(CDIR))
 .S IRI=$$INVH^%L1FRM(IR) Q:IRI=""
 .S N="" F  S N=$O(@W3AZS@(IRI,N)) Q:N=""  D
 ..S STREETI=$$SPA^%L1FRM($P(N,":"))
 ..S STREET=$$INVH^%L1FRM(STREETI)
 ..S MEBAIT=$$SPA^%L1FRM($P(N,":",2))
 ..S ADBAIT=$$SPA^%L1FRM($P(N,":",3))
 ..S ST="NBR_STREET,"_CDIR_","_$$HB(STREET)_","_MEBAIT_","_ADBAIT
 ..S ST=ST_"***" D W("TRG",3)
 Q
 ;
 ;
W(IND0,IND) ;
 S SH=$O(@VRM@(IND0,IND,9999999),-1)+1
 S SH=SH+1,@VRM@(IND0,IND,SH)=ST
 Q
 ;
HB(TXT) Q $TR($$INVHBW^%L1FRM($TR(TXT,",","")),TS0,TS1)
 ;
CDIR(IRI) ;
 N IR,CD S IR=$$INVH^%L1FRM(IRI),CD=""
 S N="" F  S N=$O(@GLIR@(N)) Q:N=""  D  Q:CD
 .I IR=$G(^(N)) S CD=N
 Q CD
 ;
W4MAIN(GLB) ;
 Q "^[$$^W3MAIN]"_GLB_"($J)"
 ;
GLMSD(GLREF) Q "^["""_$$UCI(MSD)_"""]"_GLREF
 ;
UCI(MSD) ;
 Q $G(^[$$^W3MAIN]UCI(MSD))
 ;
WST(N) ; 
 N ST
 I '$$MAZAV^W4L(N) Q
 S ST="CUST_DETS,"_N_","_$$HB($$LKH^W4L(N))_","_$$HB($$LKH^W4L(N))_","_$$TELB^W4L(N)
 S ST=ST_","_$$PELE^W4L(N)_","_$$HB($$IR^W4L(N))_","_$$HB($$KTV^W4L(N))_","_$$HB($$BAIT^W4L(N))
 S ST=ST_","_$$HB($$CNISA^W4L(N))_","_$$HB($$KOMA^W4L(N))_","_$$DIRA^W4L(N)
 N LKDM S LKDM=$S($D(@$$GLMSD("P1LKDM")@(N)):1,1:0)
 N LKHR S LKHR=$G(@$$GLMSD("P1EZL")@(N))
 I LKHR S LKDM=$S($D(@$$GLMSD("P1LKDM")@(LKHR)):1,1:0)
 S ST=ST_","_$$SUGL^W4L(N)_","_+$$ISCR^W4L(N)_","_LKDM
 S ST=ST_","_$$EMAIL^W4L(N)
 S ST=ST_"***"
 D W("TRL",1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TRG0
W3TRG(MSD) ; [ 12.02.18 09:47 ] [ 04.12.17 23:01 ] [ 21.06.17 17:19 ] 
 N (JB,%ARG,MSD)
 S TRG=$G(%ARG("TRG"))
 K @$$W4MAIN("VRM")@("TRL")
 K @$$W4MAIN("VRM")@("TRG")
 D ^%L1TS
 ;
 S UCI=$$UCI(MSD)
 ;
 S N=999 F  S N=$O(@$$GLMSD("LKH")@(N)) Q:N=""  D WST(N)
 ;
 N GLSUGL S GLSUGL=$$GLMSD("SUGL")
 S N="" F  S N=$O(@GLSUGL@(N)) Q:N=""  D
 .S ST="GRP_CUST,"_N_","_$$HB($G(@GLSUGL@(N)))_","_$G(@GLSUGL@(N,1))
 .S ST=ST_"***" D W("TRL",2)
 ;
 ;;Q:$G(TRG)<4
 ;
 S GLIR=$$GLMSD("P1IR")
 ;
 S N="" F  S N=$O(@GLIR@(N)) Q:N=""  D
 .N A S A=$G(@GLIR@(N,1))
 .D PRS^%L1FRM(A,"DMSH\DLVTIME\SUMCNCDM","\")
 .S ST="CITY_PRM,"_N_","_$$HB($G(@GLIR@(N)))_","_DMSH_","_DLVTIME_","_SUMCNCDM
 .S ST=ST_"***" D W("TRG",1)
 .
 N W3AZR S W3AZR=$$GLMSD("W3AZR")_"(""IS"")"
 S IRI="" F  S IRI=$O(@W3AZR@(IRI)) Q:IRI=""  D
 .S AZ="" F  S AZ=$O(@W3AZR@(IRI,AZ)) Q:AZ=""  D
 ..S CDIR=$$CDIR(IRI) Q:'CDIR
 ..S AZ1=$G(^(AZ))
 ..S A=$G(^(AZ,1))
 ..S DM=$P(A,"\")
 ..S TIME=$P(A,"\",2)
 ..S CNC=$P(A,"\",3)
 ..S OPEN=$P(A,"\",4)
 ..S ST="NBR_CT_PRM,"_CDIR_","_AZ_","_$$HB(AZ1)_","_DM_","_TIME_","_CNC
 ..S ST=ST_"***" D W("TRG",2)
 ;
 N W3AZS S W3AZS=$$GLMSD("W3AZS")_"(""IS"")"
 S CDIR="" F  S CDIR=$O(@GLIR@(CDIR)) Q:CDIR=""  D
 .S IR=$G(^(CDIR))
 .S IRI=$$INVH^%L1FRM(IR) Q:IRI=""
 .S N="" F  S N=$O(@W3AZS@(IRI,N)) Q:N=""  D
 ..S STREETI=$$SPA^%L1FRM($P(N,":"))
 ..S STREET=$$INVH^%L1FRM(STREETI)
 ..S MEBAIT=$$SPA^%L1FRM($P(N,":",2))
 ..S ADBAIT=$$SPA^%L1FRM($P(N,":",3))
 ..S ST="NBR_STREET,"_CDIR_","_$$HB(STREET)_","_MEBAIT_","_ADBAIT
 ..S ST=ST_"***" D W("TRG",3)
 Q
 ;
 ;
W(IND0,IND) ;
 S SH=$O(@$$W4MAIN("VRM")@(IND0,IND,9999999),-1)+1
 S SH=SH+1,@$$W4MAIN("VRM")@(IND0,IND,SH)=ST
 Q
 ;
HB(TXT) Q $TR($$INVHBW^%L1FRM($TR(TXT,",","")),TS0,TS1)
 ;
CDIR(IRI) ;
 N IR,CD S IR=$$INVH^%L1FRM(IRI),CD=""
 S N="" F  S N=$O(@GLIR@(N)) Q:N=""  D  Q:CD
 .I IR=$G(^(N)) S CD=N
 Q CD
 ;
W4MAIN(GLB) ;
 Q "^[$$^W3MAIN]"_GLB_"($J)"
 ;
GLMSD(GLREF) Q "^["""_$$UCI(MSD)_"""]"_GLREF
 ;
UCI(MSD) ;
 Q $G(^[$$^W3MAIN]UCI(MSD))
 ;
WST(N) ; 
 N ST
 I '$$MAZAV^W4L(N) Q
 S ST="CUST_DETS,"_N_","_$$HB($$LKH^W4L(N))_","_$$HB($$LKH^W4L(N))_","_$$TELB^W4L(N)
 S ST=ST_","_$$PELE^W4L(N)_","_$$HB($$IR^W4L(N))_","_$$HB($$KTV^W4L(N))_","_$$HB($$BAIT^W4L(N))
 S ST=ST_","_$$HB($$CNISA^W4L(N))_","_$$HB($$KOMA^W4L(N))_","_$$DIRA^W4L(N)
 N LKDM S LKDM=$S($D(@$$GLMSD("P1LKDM")@(N)):1,1:0)
 N LKHR S LKHR=$G(@$$GLMSD("P1EZL")@(N))
 I LKHR S LKDM=$S($D(@$$GLMSD("P1LKDM")@(LKHR)):1,1:0)
 S ST=ST_","_$$SUGL^W4L(N)_","_+$$ISCR^W4L(N)_","_LKDM
 S ST=ST_","_$$EMAIL^W4L(N)
 S ST=ST_"***"
 D W("TRL",1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TRITDK
W3TRITDK ; [ 30.10.10 08:11 ] [ 20.10.10 13:13 ] [ 27.09.10 10:48 ]
 N (JB,%ARG)
 D KILL^%W3DEB("W3TRITDK")
 D PUT^%W3DEB("W3TRITDK","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 I '$D(%ARG("CDKV")) W " Group number is not defined ! " Q
 I '$G(%ARG("CDKV")) Q
 ;
 D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 ;
 W "<div align=""center"" >",!
  W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""70%"">",!
   W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
    W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
   W " >"
    W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
    W "<th width=""50%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
    W "<th width=""15%"">"_$$^%W1DICT("CUSTOMITEMCODE")_"</th>"
   W "</tr>",!
   ;
   N N,NN,I
   D GL
   ;
   N I S I=0
   K @GL
   S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
   .I $$SUG^W3P(N)=%ARG("CDKV") D
   ..S @GL@(N)=N
   ;
   S NN="",I=0 F  S NN=$O(@GL@(NN)) Q:NN=""  D
   .S N=$G(^(NN)) Q:N=""
   .W "<tr id=""tr"_N_""""
   .W " >" S I=I+1
   .
   . W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
   .
   . W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W3P(N))_"&nbsp;</td>"
   .
   . W "<td>",!
   . W "<input type=""text"" id=""custit"_N_""" value="""_$$VL(N)_""" maxlength=""8"" size=""8"" />",!
   .W "</td>",!
   .
   .W "</tr>",!
  ;
  W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM)
 N CD
 D PUT^%W3DEB("W3TRIDK-SAVE","PRM=PRM")
 S CD=$P(PRM,";")
 S CDC=$P(PRM,";",2)
 I CDC="" K @$$^W4GL("W3TRIT")@(CD) Q
 S @$$^W4GL("W3TRIT")@(CD)=CDC
 Q
 ;
SAVEND(PRM) ;
 N CD D GL
 K @GL
 Q
 ;
GL S GL=$$^W4MAIN("TMP")
 Q
 ;
VL(PAR) ;
 Q $G(@$$^W4GL("W3TRIT")@(PAR))

W3TRM
W3TRM(TOMRK,MSD,MEDAT,ADDAT,MEPAR,ADPAR) ;  [ 19.05.26 15:55 ] [ 12.11.24 18:37 ] [ 12.05.23 06:45 ] 
  N (MSD,MEDAT,ADDAT,MEPAR,ADPAR,%SCKPORT,JB,%ARG,%REM,TOMRK)
  N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
  I $$^%L1FLAG($$^W4flag_"(""TRM"")") Q
  I '$G(^[$$^W3MAIN]flag("TRM")) S ^[$$^W3MAIN]flag("TRM")=$J,^[$$^W3MAIN]flag("TRM","TIME")=$H
  S SF2=0
  S TOMRK=+$G(TOMRK)
  ;;I $$SF^W4PRM S %ARG("TRG")=1
  S %ARG("TRG")=1
  I TOMRK=2,$$SF^W4PRM S SF2=1
  I '$G(MSD) S MSD=1
  ;
  D ^%L1TS
  S DATA=""
  S TRG=$G(%ARG("TRG"))
  I '$G(JB) S JB=$$^%W1SsID("W3TRM")
  ;;N $ZT S $ZT="G SVER^%L1X"
  ;
  S MAXL=4000
  ;
  S MEDAT=$G(MEDAT),ADDAT=$G(ADDAT)
  S MEPAR=$G(MEPAR),ADPAR=$G(ADPAR)
  S D1=$$^%L1DC(MEDAT,3)
  S D2=$$^%L1DC(ADDAT,3)
  ;
  I MEDAT="",ADDAT="",MEPAR="",ADPAR="" S GL=$$GLMSD("PAR") G EXP
  ;
  S GL=$$MAIN("TEMP")
  K @GL
  ;
  S I=0
  S N=D1-1 F  S N=$O(@$$GLMSD("PARPROT")@(N)) Q:N=""  Q:N>D2  D
  .S N1="" F  S N1=$O(@$$GLMSD("PARPROT")@(N,N1)) Q:N1=""  D
  ..S A=^(N1)
  ..S PAR=$P(A,"\") I MEPAR,PAR<MEPAR Q
  ..I ADPAR,PAR>ADPAR Q
  ..I $$NOSHOW1(PAR) Q
  ..I $P(A,"\",2)="=" Q
  ..I $P(A,"\",2)="-" S B=$P(A,"\",4)
  ..S I=I+1 I $P(A,"\",2)=">" S @$$MAIN("TEMP")@(PAR)=""
  ;
 ;
EXP ;
 N PATHP,FN,N,N1,PAR,PATHP,SET,ST,VP
 S KOLMAX=$G(@$$^W4PRM@("KOLMAX"))
 ;
 K @$$MAIN("MMM")
 K @$$VRM,@$$MAIN("KVUZA")
 ;
 S SH=0
 N UR0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S UR0=1
 .I $$NOSHOW1(N) Q
 .S SHOW='$$NOSHOW(N)
 .S ST="ITEM_DETS,"_N_","_$$HB($$SHEM(N))_","_SHOW_","_$J($$MH(N),2,2)
 .
 .S VP=$$VP(N)
 .
 .S VP1=$P(@$$GLMSD("PAR")@(N),"**",5) ; SUG
 .S ST=ST_","_VP_","_KOLMAX_","_$$SHEML(N)_"***" D W
 .
 .I VP1>0,$D(@$$GLMSD("PARSUG")@(VP1)) D
 ..I $$NOSHOWGR(VP1) Q
 ..S SHK=$ZP(@$$MAIN("KVUZA")@(VP1,""))+1
 ..S @$$MAIN("KVUZA")@(VP1,SHK,N)=""
 .
 .S UR0=0
 .I VP=1 S ST0="ITEM_ADDONS,"_N,ST="" D  ; -- PARIT - TOSAFOT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZI")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW1(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 .
 .I 'VP,VP1,$D(@$$GLMSD("P1EZKI")@(VP1)) D
 ..S ST0="ITEM_ADDONS,"_N,ST="" D  ; -- PARIT - TOSAFOT
 ...S N1="" F  S N1=$O(@$$GLMSD("P1EZKI")@(VP1,N1)) Q:N1=""  D
 ....I $$NOSHOW1(N1) Q
 ....D BDKL
 ....S ST=ST_","_N1
 ...D WST
 .
 .K @$$MAIN("VRMEZT")
 .
 .I VP=2 S ST0="ITEM_AI,"_N,ST="" D  ; -- PARIT - KVUZAT TOSAFOT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZT")@(N,N1)) Q:N1=""  D
 ...S NP=+$G(^(N1))
 ...S @$$MAIN("VRMEZT")@(N,NP)=N1
 ..S NP="" F  S NP=$O(@$$MAIN("VRMEZT")@(N,NP)) Q:NP=""  D
 ...S N1=$G(^(NP)) Q:N1=""
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 .K @$$MAIN("VRMEZT")
 .
 .K @$$MAIN("VRMEZA")
 .I VP=3 S ST0="ITEM_AI,"_N,ST="" D  ; -- ARUHA ISKIT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZA")@(N,N1)) Q:N1=""  D
 ...S NP=+$G(^(N1))
 ...S @$$MAIN("VRMEZA")@(N,NP)=N1
 ..S NP="" F  S NP=$O(@$$MAIN("VRMEZA")@(N,NP)) Q:NP=""  D
 ...S N1=$G(^(NP)) Q:N1=""
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 .K @$$MAIN("VRMEZA")
 .
 .I VP=4 S ST0="ITEM_ADDONS,"_N,ST="" D  ; -- RAV BRERA
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZR")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW1(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZR")@(N,N1)) Q:N1=""  D
 ...S N2="" F  S N2=$O(@$$GLMSD("P1SBR")@(N2)) Q:N2=""  I $$ISNUM^%L1FRM(N2) D
 ....Q:$G(@$$GLMSD("P1SBR")@(N2))?.P  Q:$D(@$$MAIN("MMM")@(N1,N2))
 ....S ST="ITEM_REMARKS,"_N1_","_N2_","_$$HB(@$$GLMSD("P1SBR")@(N2))
 ....S ST=ST_"***" D W
 ....S @$$MAIN("MMM")@(N1,N2)=N
 .
 .I $D(@$$GLMSD("P1EZH")@(N)),'$D(@$$GLMSD("P1EZRI")@(N)) D
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZH")@(N,N1)) Q:N1=""  D
 ...Q:'$D(@$$GLMSD("P1CODH")@(N1))
 ...S ST="ITEM_REMARKS,"_N
 ...S ST=ST_","_N1_","_$$HB($G(@$$GLMSD("P1CODH")@(N1)))
 ...S ST=$E(ST,1,509)_"***" D W
 .
 .I $D(@$$GLMSD("QNDEF")@(N))>9 D
 ..S ST0="ITEM_QNDEF,"_N,ST="" D  ; -- ADD QN DFLT
 ...S N1="" F  S N1=$O(@$$GLMSD("QNDEF")@(N,N1)) Q:N1=""  D
 ....S QN=+$G(^(N1)) Q:'QN  ;Q:QN'?1N.N
 ....I $$NOSHOW1(N1) Q
 ....D BDKL
 ....S ST=ST_","_N1_"-"_QN
 ...D WST
 .
 ;
 S UR0=1
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$NOSHOW1(N) Q
 .S ST="ITEM_DESC,"_N
 .N DESC,DESC0 S (DESC,DESC0)=""
 .N N1 S N1="" F  S N1=$O(@$$GLMSD("L1TIP")@("MTK",N,N1)) Q:N1=""  D
 ..S DESC0=$$DESC(N,N1)_" "_DESC0
 .I DESC0[" == " S DESC0=$P(DESC0," == ",2) Q:DESC0=""
 .S DESC0=$$SPA^%L1FRM(DESC0)
 .S DESC=$$CLRDLM^%L1FRM(DESC0,"[[","]]")
 .N PRM S PRM=$P($P(DESC0,"[[",2),"]]")
 .S ST=ST_",1,"_$$HB(DESC)_"***"
 .D W
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$NOSHOW1(N) Q
 .S ST="ITEM_DESC_ENG,"_N
 .N DESC,DESC0 S (DESC,DESC0)=""
 .N N1 S N1="" F  S N1=$O(@$$GLMSD("L1TIP")@("MTK",N,N1)) Q:N1=""  D
 ..S DESC0=$$DESC(N,N1)_" "_DESC0
 .S DESC0=$$SPA^%L1FRM(DESC0) Q:DESC0'[" == "
 .I DESC0[" == " S DESC0=$P(DESC0," == ",1) Q:DESC0=""
 .S DESC=$$CLRDLM^%L1FRM(DESC0,"[[","]]")
 .N PRM S PRM=$P($P(DESC0,"[[",2),"]]")
 .S ST=ST_",1,"_$$HL^W3PRTPC(DESC)_"***"
 .D W
 ;----------------- ADDONS PRICES -------
 N ST0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$NOSHOW1(N) Q
 .S ST0="ITEM_ADDONS_PRC,"_N
 .
 .S VP=$$VP(N)
 .
 .S UR0=0
 .
 .I VP=1 D  Q  ; -- PARIT - TOSAFOT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZI")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW1(N1) Q
 ...S ST=ST0_","_N1_","_$J($$MH(N1),2,2)_"***" D W
 .
 .K @$$MAIN("VRMSETA")
 .I VP=2 D  Q  ; -- PARIT - KVUZAT TOSAFOT ; N1 - SETIM
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZT")@(N,N1)) Q:N1=""  D
 ...I $$ISNUM^%L1FRM(N1) S ST=ST0_","_N1_","_$J($$MH(N1),2,2)_"***" D W Q
 ...S NSET=$E(N1,2,9) Q:NSET=""
 ...K @$$MAIN("VRMSETA")
 ...S N2="" F  S N2=$O(@$$GLMSD("P1SETA")@(NSET,N2)) Q:N2=""  D
 ....S NP=$G(^(N2)) Q:'NP
 ....S @$$MAIN("VRMSETA")@(NSET,NP)=N2
 ...S NP="" F  S NP=$O(@$$MAIN("VRMSETA")@(NSET,NP)) Q:NP=""  D
 ....S N2=$G(^(NP)) Q:'N2
 ....I $$NOSHOW1(N2) Q
 ....S ST=ST0_","_N2_","_$J($G(@$$GLMSD("MHT")@(N,N2)),2,2)_"***" D W
 .
 .K @$$MAIN("VRMSETA")
 .S UR0=0
 .I VP=3 D  Q  ; -- ARUHA ISKIT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZA")@(N,N1)) Q:N1=""  D
 ...I $$ISNUM^%L1FRM(N1) S ST=ST0_","_N1_","_$J($$MH(N1),2,2)_"***" D W Q
 ...S NSET=$E(N1,2,9) Q:NSET=""
 ...K @$$MAIN("VRMSETA")
 ...S N2="" F  S N2=$O(@$$GLMSD("P1SETA")@(NSET,N2)) Q:N2=""  D
 ....S NP=$G(^(N2)) Q:'NP
 ....S @$$MAIN("VRMSETA")@(NSET,NP)=N2
 ...S NP="" F  S NP=$O(@$$MAIN("VRMSETA")@(NSET,NP)) Q:NP=""  D
 ....S N2=$G(^(NP)) Q:'N2
 ....I $$NOSHOW1(N2) Q
 ....S ST=ST0_","_N2_","_$J($G(@$$GLMSD("MHT")@(N,N2)),2,2)_"***" D W
 .
 .K @$$MAIN("VRMSETA")
 .I VP=4 D  Q  ; -- RAV BRERA
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZR")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW1(N1) Q
 ...S ST=ST0_","_N1_",0.00,***" D W
 ;
 ;
 I $D(@$$GLMSD("P1CODH")) S N=99999999 D
 .S N1="" F  S N1=$O(@$$GLMSD("P1CODH")@(N1)) Q:N1=""  D
 ..S ST="ITEM_REMARKS,"_N
 ..S ST=ST_","_N1_","_$$HB($G(@$$GLMSD("P1CODH")@(N1)))
 ..S ST=$E(ST,1,509)_"***" D W
 ;
 S UR0=0
 I $D(@$$GLMSD("P1SETA")) D
 .S SET="" F  S SET=$O(@$$GLMSD("P1SETA")@(SET)) Q:SET=""  I $$ISNUM^%L1FRM(SET) D
 ..S SHEM=$P($G(@$$GLMSD("P1SETA")@(SET)),"\") I SHEM?.P S SHEM=SET_" hq"
 ..S KAM=+$P($G(@$$GLMSD("P1SETA")@(SET)),"\",2) I KAM<1 S KAM=1
 ..S ST="ITEM_SETS,A"_SET_","_KAM
 ..K @$$MAIN("VRMSETA")
 ..S N1="" F  S N1=$O(@$$GLMSD("P1SETA")@(SET,N1)) Q:N1=""  D
 ...N NP S NP=$G(^(N1)) Q:'NP
 ...S @$$MAIN("VRMSETA")@(SET,NP)=N1
 ..S NP="" F  S NP=$O(@$$MAIN("VRMSETA")@(SET,NP)) Q:NP=""  D
 ...S N1=$G(^(NP)) Q:'N1
 ...I $$NOSHOW1(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..S ST=ST_"***" D W
 ..
 ..S ST="ITEM_DETS,A"_SET_","_$$HB(SHEM)_",1, , ,"_$P($G(@$$GLMSD("P1SETA")@(SET)),"\",2)
 ..S ST=ST_"***" D W
 ;
 I $D(@$$GLMSD("P1SETM")) D  ;-- SET PRITIM LE MIVCA
 .S SET="" F  S SET=$O(@$$GLMSD("P1SETM")@(SET)) Q:SET=""  I $$ISNUM^%L1FRM(SET) D
 ..S ST="ITEM_SETS,S"_SET_","_KOLMAX
 ..S N1="" F  S N1=$O(@$$GLMSD("P1SETM")@(SET,N1)) Q:N1=""  D
 ...I $$NOSHOW1(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..S ST=ST_"***" D W
 ..S SHEM=$P($G(@$$GLMSD("P1SETM")@(SET)),"\") I SHEM?.P S SHEM=SET_" rvan hq"
 ..S ST="ITEM_DETS,S"_SET_","_$$HB(SHEM)_",1, , , "
 ..S ST=ST_"***" D W
 ;
 I $D(@$$GLMSD("P1MVC")@(1))=11 D
 .S N="" F  S N=$O(@$$GLMSD("P1MVC")@(1,N)) Q:N=""  D
 ..S ST="SALE_DETS_1"
 ..N A S A=$G(^(N)) Q:$P(A,"\",14)=1
 ..S MEJOM=$P(A,"\",8),ADJOM=$P(A,"\",9)
 ..S MESHAA=$P(A,"\",9),ADSHAA=$P(A,"\",11) D MEAD
 ..S ST=ST_",1,"_$$^%L1MRK_","_$P(A,"\",7)_","_MEJOM_","_ADJOM
 ..S ST=ST_","_MESHAA_","_ADSHAA_","_$P(A,"\",1)_","_$P(A,"\",3)_","_$P(A,"\",4)_","_$P(A,"\",17)_","_$P(A,"\",6)
 ..S ST=ST_","_$TR($P(@$$GLMSD("P1MVC")@(1),"\"),"/.","")_","_$TR($P(@$$GLMSD("P1MVC")@(1),"\",2),"/.","")
 ..S ST=ST_",1_"_N_","_$P(@$$GLMSD("P1MVC")@(1),"\",12)_"***" D W
 ;
 I $D(@$$GLMSD("P1MVC")@(2))=11 D
 .S N="" F  S N=$O(@$$GLMSD("P1MVC")@(2,N)) Q:N=""  D
 ..S ST="SALE_DETS_2"
 ..N A S A=$G(^(N)) Q:$P(A,"\",12)=1
 ..S MEJOM=$P(A,"\",6),ADJOM=$P(A,"\",7)
 ..S MESHAA=$P(A,"\",8),ADSHAA=$P(A,"\",9) D MEAD
 ..S ST=ST_",1,"_$$^%L1MRK_","_$P(A,"\",5)_","_MEJOM_","_ADJOM_","_MESHAA_","_ADSHAA
 ..S ST=ST_","_$P(A,"\")_","_$P(A,"\",2)_","_$P(A,"\",15)_","_$P(A,"\",4)
 ..S ST=ST_",KOLMAX,"_$TR($P(@$$GLMSD("P1MVC")@(2),"\"),"/.","")_","_$TR($P(@$$GLMSD("P1MVC")@(2),"\",2),"/.","")
 ..S ST=ST_",2_"_N_","_$P(@$$GLMSD("P1MVC")@(2),"\",10)_"***" D W
 ;
 I $D(@$$GLMSD("P1MVC")@(3))=11 D
 .S N="" F  S N=$O(@$$GLMSD("P1MVC")@(3,N)) Q:N=""  D
 ..S ST="SALE_DETS_3"
 ..N A S A=$G(^(N)) Q:$P(A,"\",14)=1
 ..S MEJOM=$P(A,"\",8),ADJOM=$P(A,"\",9)
 ..S MESHAA=$P(A,"\",10),ADSHAA=$P(A,"\",11) D MEAD
 ..S ST=ST_",1,"_$$^%L1MRK_","_$P(A,"\",7)_","_MEJOM_","_ADJOM
 ..S ST=ST_","_MESHAA_","_ADSHAA_","_$P(A,"\",1)_","_$P(A,"\",3)_","_$P(A,"\",4)_","_$P(A,"\",17)_","_$P(A,"\",6)
 ..S ST=ST_","_$TR($P(@$$GLMSD("P1MVC")@(3),"\"),"/.","")_","_$TR($P(@$$GLMSD("P1MVC")@(3),"\",2),"/.","")
 ..S ST=ST_",3_"_N_","_$P(@$$GLMSD("P1MVC")@(3),"\",12)_"***" D W
 ;
 ;
 I $D(@$$GLMSD("W3PARM")@(1))>9 D
 .N N S N="" F  S N=$O(@$$GLMSD("W3PARM")@(1,N)) Q:N=""  I $D(^(N,"SHAA")) D
 ..N A,ST,MEJOM,ADJOM,MESHAA,ADSHAA
 ..S A=$G(^("SHAA"))
 ..S ST="ITEM_HOURS"
 ..S MEJOM=1,ADJOM=7
 ..S MESHAA=$P(A,"-",1)
 ..S ADSHAA=$P(A,"-",2)
 ..S ST=ST_",1,"_MEJOM_","_ADJOM_","_N
 ..S ST=ST_","_MESHAA_","_ADSHAA
 ..S ST=ST_"***" D W
 ;
 K @$$MAIN("MMMK")
 K @$$MAIN("MMMP")
 ;
 I $D(@$$GLMSD("P1KVZSID")) D
 .N NKV,PAR
 .S NKV="" F  S NKV=$O(@$$GLMSD("P1KVZSID")@(NKV)) Q:NKV=""  D
 ..S KV=$G(^(NKV)) Q:KV=""
 ..I $$NOSHOWGR(KV) Q
 ..N KV1 S KV1=$G(@$$GLMSD("PARSUG")@(KV))
 ..I KV1="" Q
 ..I $D(@$$MAIN("KVUZA")@(KV))<10 Q
 ..S ST="ITEM_KVUZA,"_KV_","_$$HB(KV1)
 ..S @$$MAIN("MMMK")@(KV)=""
 ..D SIDPRT(KV)
 ..S ST=ST_"***" D W
 ;
 ; ---------- IF NOT ^P1KVZSID --------------------------------
 I $D(@$$MAIN("KVUZA")) S N1="" D
 .F  S N1=$O(@$$MAIN("KVUZA")@(N1)) Q:N1=""  D
 ..I $D(@$$MAIN("MMMK")@(N1)) Q
 ..I $$NOSHOWGR(N1) Q
 ..S ST="ITEM_KVUZA,"_N1_","_$$HB(@$$GLMSD("PARSUG")@(N1))
 ..D SIDPRT(N1)
 ..S ST=ST_"***" D W
 ..Q
 ..
 ..S ST="ITEM_KVUZA,"_N1_","_$$HB(@$$GLMSD("PARSUG")@(N1)) D
 ...S N3="" F  S N3=$O(@$$MAIN("KVUZA")@(N1,N3)) Q:N3=""  D
 ....S N2="" F  S N2=$O(@$$MAIN("KVUZA")@(N1,N3,N2)) Q:N2=""  D BDKL S ST=ST_","_N2
 ...S ST=ST_"***" D W
 ;
NL ;
 I $D(@$$GLMSD("PARNL")) D
 .S N1="" F  S N1=$O(@$$GLMSD("PARNL")@(N1)) Q:N1=""  D
 ..S A=^(N1),MESHAA=$P(A,"\"),ADSHAA=$P(A,"\",2)
 ..S MEJOM=$P(A,"\",3),ADJOM=$P(A,"\",4)
 ..S ST="ITEM_HLOCK,"_N1_","_MESHAA_","_ADSHAA_","_MEJOM_","_ADJOM,STKOT=ST
 ..S N2="" F  S N2=$O(@$$GLMSD("PARNL")@(N1,N2)) Q:N2=""  D
 ...D BDKL
 ...S ST=ST_","_N2
 ..S ST=ST_"***" D W
 ;
 I $D(@$$GLMSD("P1KVZSID")) S STKOT="POZ_KVUZA," D
 .S N1="",N2=""
 .F  S N1=$O(@$$GLMSD("P1KVZSID")@(N1)) Q:N1=""  S N2=$G(@$$GLMSD("P1KVZSID")@(N1)) I $G(N2) D
 ..I $$NOSHOWGR(N2) Q
 ..S ST=STKOT_N1_","_N2_","_"***" D W
 ;
 D
 .N A,N,GL,ST S GL=$$GLMSD("W4MSGSIT") Q:$D(@GL)<10
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S A=$G(^(N)) Q:'$P(A,"\",6)
 ..N TX S TX=$P(A,"\")
 ..S TX=$$RPL^%L1FRM(TX,"%60","`")
 ..S A=$$HB(TX)_"\"_$P(A,"\",2,255)
 ..S A=$TR(A,"\",",")
 ..I $E(A,$L(A))="," S A=$E(A,1,$L(A)-1)
 ..S ST="MSG_SITE,"_N_","_A_"***" D W
 ;
 I TRG D ^W3TRG(MSD)
 ;
 D TRN
 ;
END K @$$MAIN("VRM")
 K @$$MAIN("MMM"),@$$MAIN("MMMP"),@$$MAIN("MMMK")
 K @$$MAIN("KVUZA")
 Q
 ;
 ;
SIDPRT(KV) ;
 N UR0 S UR0=1
 N NP S NP="" F  S NP=$O(@$$GLMSD("P1PARSID")@(KV,NP)) Q:NP=""  D
 .N PAR S PAR=$G(^(NP))
 .N SUG S SUG=$P($G(@$$GLMSD("PAR")@(PAR)),"**",5)
 .Q:SUG'=KV  Q:$$NOSHOW1(PAR)
 .D BDKL
 .S ST=ST_","_PAR
 .I $D(@$$MAIN("MMMP")@(PAR)) Q
 .S @$$MAIN("MMMP")@(PAR)=""
 Q:$D(@$$GLMSD("P1PARSID")@(KV))
 ;
 S N3="" F  S N3=$O(@$$MAIN("KVUZA")@(KV,N3)) Q:N3=""  D
 .S PAR="" F  S PAR=$O(@$$MAIN("KVUZA")@(KV,N3,PAR)) Q:PAR=""  D
 ..I $D(@$$MAIN("MMMP")@(PAR)) Q
 ..Q:$$NOSHOW1(PAR)
 ..D BDKL S ST=ST_","_PAR
 ;
 Q
 ;
TRN ; -------------- SHIDUR LE MISHLOHIM ---------
 N ITEM,WVW,RZD,N,N1,ST,DIR,I,J
 K @$$TRM@("ER")
 S TID=""
 ;
 S DIR=$$DIR(MSD)
 ;
 S MREST=$$GETREST(MSD)
 I MREST?.P S MREST=MSD
 ;
 S IND1=$G(%ARG("IND1")) I 'IND1 S IND1=+$H
 S IND2=$G(%ARG("IND2")) I 'IND2 S IND2=$P($H,",",2)
 ;
 I $G(@$$TRM@("DEB")) D
 .M @$$TRM@(IND1,IND2,"VRM",TOMRK)=@$$VRM
 ;
 I 'TRG D
 .N J F J=1:1:$L(MREST,",")  S REST=$P(MREST,",",J)  I REST D
 ..D TRN2R(REST,"IT","TR",0,TOMRK)
 ;
 I TRG D
 .D TRN2R(MSD,"IT","TR",1,TOMRK)
 .D TRN2R(MSD,"LKH","TRL",1,TOMRK)
 .D TRN2R(MSD,"GEO","TRG",1,TOMRK)
 Q
 ;
 ;
TRN2R(REST,PRFX,IND,TRG,TOMRK)
 N A,J,FN,SH,WVW,N,N1,ST,CMD,CON
 S FN=$$FN(PRFX_"_"_REST)
 ;
 C FN:DELETE
 O FN:(WRITE:NEWVERSION) S SH=0
 ;
 I $G(TRG) U FN W "data="
 ;
 S WVW="W1" D ^%L1TS
 ;
 S N="" F  S N=$O(@$$VRM@(IND,N)) Q:N=""  D
 .S ST="" ;
 .S N1="" F  S N1=$O(@$$VRM@(IND,N,N1)) Q:N1=""  D
 ..N A S A=$G(^(N1))
 ..I A[">>>" D
 ...;
 ...I $E(A,$L(A)-2,$L(A))=">>>" S A=$E(A,1,$L(A)-3)
 ...I A[">>>" S A=$P(A,">>>",2)
 ..S ST=ST_A
 ..I $E(ST,$L(ST)-2,$L(ST))'="***" Q
 ..D @WVW S ST=""
 ;
 S ST="END_FILE***" D @WVW
 C FN
 ;
 ;;K @$$VRM
 ;
 I 'TOMRK S HTTP="https://www.mishlohim.co.il/rashad/UpdateMenu.aspx"
 I TOMRK S HTTP=$G(@$$MRK("W4MRK")@(TOMRK,"MAIN"))
 ;
 I $G(TRG) D  G CMDMENU
 .N DOP
 .I $L($G(PRFX)) S DOP=$G(@$$MRK@(TOMRK,PRFX))
 .I $E(HTTP,$L(HTTP))'="/" S HTTP=HTTP_"/"
 .S HTTP=HTTP_DOP
 .S CMD="curl -s -k """_HTTP_""" --data-urlencode data@"_FN
 ;
 S CMD="curl -s """_HTTP_""" -F "_PRFX_"_"_REST_".DAT=@"_FN
 S CMD=CMD_" | xmllint --format --encode cp862 - "
 ;
CMDMENU S:$G(PRFX)="" PRFX=" "
 S IND1=$G(%ARG("IND1"),+$H)
 S IND2=$G(%ARG("IND2"),$P($H,",",2))
 ;
 S @$$TRM@(IND1,IND2,"CMDMENU",TOMRK,PRFX)=$G(CMD)
 ;
 S @$$TRM@(IND1,IND2,"RES","MENU",TOMRK,PRFX)="IN PROGRESS"
 S CON="MSL"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 ;
 I $ZSY D  G ETRN2R
 .S @$$TRM@(IND1,IND2,"RES","MENU",TOMRK,PRFX)="ER\"_$ZSY_"\"_$H
 ;
 S OK=$$READ(CON)
 S @$$TRM@(IND1,IND2,"RES","MENU",TOMRK,PRFX)="OK\"_OK_"\"_$H
 ;
ETRN2R C CON
 ;
 Q
 ;
 ;
GLMSD(GLREF) Q "^["""_$$UCI(MSD)_"""]"_GLREF
 ;
FN(FN) Q $$DIR(MSD)_FN_".dat"
 ;
SHEM(CD) Q $P($G(@$$GLMSD("PAR")@(CD)),"**")
 ;
SHEML(CD) Q $P($G(@$$GLMSD("PAR")@(CD)),"**",14)
 ;
MH(CD) Q $P($G(@$$GLMSD("PAR")@(CD)),"**",2)
 ;
DESC(CD,NOM) ;
 Q $TR($G(@$$GLMSD("L1TIP")@("MTK",CD,NOM)),",",";")
 ;
DESCHB(CD,NOM)
 N ST S ST=$$DESC(CD,NOM)
 S ST=$P(ST," == ",2)
 Q ST
 ;
DESCENG(CD,NOM)
 N ST S ST=$$DESC(CD,NOM)
 S ST=$P(ST," == ",1)
 Q ST
 ;
VP(N) ;
 N VP S VP=0
 I $D(@$$GLMSD("P1EZA")@(N)) S VP=3
 E  I $D(@$$GLMSD("P1EZT")@(N)) S VP=2
 E  I $D(@$$GLMSD("P1EZI")@(N)) S VP=1
 E  I $D(@$$GLMSD("P1EZR")@(N)) S VP=4
 Q VP
 ;
W1 U FN W ST,!
 Q
W N FLD,IND
 S FLD=$P(ST,",")
 S IND=$S(FLD="ITEM_DETS":1,FLD="ITEM_BRANCH":2,FLD="ITEM_ADDONS":3,FLD="ITEM_AI":4,FLD="ITEM_SETS":5,FLD="ITEM_REMARKS":6,FLD["SALE":7,FLD="ITEM_KVUZA":8,FLD="ITEM_HLOCK":9,FLD="POZ_KVUZA":10,1:11)
 S SH=SH+1,@$$VRM@("TR",IND,SH)=ST
 Q
W2 ;
 X %SCKPORT("USE") W ST,!
 Q
W3 ;
 X %SCKPORT("USE") W ST
 Q
WST
 I $G(ST)="" Q
 S ST=ST0_ST_"***" D W
 Q
 ;
MEAD ;
 I 'MEJOM,'ADJOM S MEJOM=1,ADJOM=7
 I MEJOM,'ADJOM S ADJOM=MEJOM
 S:'MEJOM MEJOM=1 S:'ADJOM ADJOM=7
 S:'MESHAA MESHAA="0000"
 S:'ADSHAA ADSHAA=2359
 S MESHAA=$TR(MESHAA,":",""),ADSHAA=$TR(ADSHAA,":","")
 S MESHAA=$TR($J(MESHAA,2)," ",0)
 S ADSHAA=$TR($J(ADSHAA,2)," ",0)
 I $L(MESHAA)=2 S MESHAA=MESHAA_"00"
 I $L(ADSHAA)=2 S ADSHAA=ADSHAA_"00"
 I ADSHAA=2400 S ADSHAA=2359
 Q
 ;
HB(TXT) ;;Q $TR($$INVHBW^%L1FRM($TR(TXT,",","")),TS0,TS1)
 Q $TR($$^%W1H2U($TR(TXT,","," ")),TS0,TS1)
 ;
NOSHOW(PAR) ;
 N SUG,ST S ST=$G(@$$GLMSD("PAR")@(PAR))
 S SUG=$P(ST,"**",5)
 I SUG,$$NOSHOWGR(SUG) Q 1
 I $G(TOMRK),$G(@$$GLMSD("W4PRTSND")@(PAR,TOMRK))=0 Q 1
 Q $$NOSHOW1(PAR)
 ;
NOSHOW1(PAR) ;
 I $P($G(@$$GLMSD("W3PAR")@(PAR)),"\")=0 Q 1
 I $$NOMSL^W4THUM(PAR) Q 1
 Q 0
 ;
NOSHOWGR(GR) ;
 I '$G(GR) Q 1
 I $G(@$$GLMSD("W3SUG")@(GR))=0 Q 1
 I $G(@$$GLMSD("W3SUG")@(GR))=2 Q 1
 I $G(TOMRK),$G(@$$GLMSD("W4KVZSND")@(GR,TOMRK))=0 Q 1
 Q 0
 ;
UCI(MSD) ;
 Q $G(^[$$^W3MAIN]UCI(MSD))
 ;
DIR(MSD) ;
 Q $ZPARSE($$UCI(MSD),"DIR")
 ;
GETREST(MSD) ;
 N MREST,N
 S MREST=""
 S N="" F  S N=$O(^[$$^W3MAIN]W3MSL2M(N)) Q:N=""  D
 .I $G(^(N))=MSD S MREST=MREST_N_","
 Q $E(MREST,1,$L(MREST)-1)
 ;
GETVL(A,EL) ;
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 Q $$SPA^%L1FRM(ZN)
 ;
READ(CON)
 D ^%L1TS
 N I,OK S OK=0
 U CON S I=0
 D
 .N TMP,A
 .S TMP=$$MAIN("TMPMSL")
 .N NOM S NOM=$O(@TMP@(999999),-1)+1
 .N C R *C:20 Q:C<0
 .S C=$C(C)
 .F  R A Q:$ZEOF  D  Q:OK
 ..I $L(C) S A=C_A S C=""
 ..S I=I+1,@TMP@(NOM,I)=$TR($E(A,1,1400),TSS,TS0)
 ..I A["<div>" D
 ...R A I $$SPA^%L1FRM(A)="OK" S OK=1
 ..I A["upload_ok" S OK=1
 Q OK
 ;
TRNPIC ;
 N N,GL,UR0 S UR0=1
 S GL=$$GLMSD("PAR")
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I $$TRNPICP(MSD,N)
 Q
 ;
TRNPICP(MSD,N)
 N FLPIC,LPIC,CMD,CON,OK,J,OK
 I $$NOSHOW1(N) Q 1
 S MREST=$$GETREST(MSD) I MREST="" Q 0
 S FLPIC=$$PICL^W4P(N) I FLPIC="" Q 1
 S LPIC=$P(FLPIC,"/",$L(FLPIC,"/")) I LPIC="" Q 1
 I LPIC'["pic" Q 1
 ;
 S OK=1
 F J=1:1:$L(MREST,",") S REST=$P(MREST,",",J) I REST S OK=$$TRNPIC2R(REST)
 Q OK
 ;
TRNPIC2R(REST)
 N CMD,CON,J
 S CMD="curl -s -T """_FLPIC_""" "
 S CMD=CMD_"""https://www.mishlohim.co.il/Rashad/PutImage.ashx?"
 S CMD=CMD_"businessID="_REST
 S CMD=CMD_"&fileName="_LPIC_""""
 ;
 S @$$TRM@("CMDPIC",LPIC)=CMD
 ;
 S CON="MSLPIC"
 ;
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 ;
 I $ZSY D  C CON Q 0
 .S @$$TRM@("ER","PIC",LPIC)=$ZSY_"\"_$H
 ;
 S OK=$$READ(CON) C CON
 ;
 S @$$TRM@("CMDPIC",LPIC,"OK")=OK
 ;
 I $D(W3MSLPIC) D
 .N SH
 .D TMP^W3MSLPIC
 .S SH=$O(@TMP@(999999),-1)+1
 .S @TMP@(SH)=LPIC_" - "_$S(OK:"OK",1:"NOK")
 Q 1
 ;
VRM(STAM) ;
 Q "^[$$^W3MAIN]VRM($J)"
 ;
MAIN(GLB) ;
 Q "^[$$^W3MAIN]"_GLB_"($J)"
 ;
W4MAIN(GLB) ;
 Q "^[$$^W3MAIN]"_GLB_"($J)"
 ;
BDKL ;
 I $L(ST)>MAXL D  S ST=">>>"
 .S ST=ST0_ST_">>>" D W
 Q
 ;
NOFILTER(STAM) ;
 I $G(TRG) Q 1
 Q 0
 ;
SEND(JB) ; 
 N MSD S MSD=$$GETP^%W1PRM("MSD") Q:MSD=""
 ;
 I $D(@$$MRK)<10 D  Q
 .D ^W3TRM("",MSD)
 .K ^[$$^W3MAIN]flag("TRM")
 ;
 S %ARG("IND1")=+$H
 S %ARG("IND2")=$P($H,",",2)
 ;
 N MRK S MRK="" F  S MRK=$O(@$$MRK@(MRK)) Q:MRK=""  D
 .D ^W3TRM(MRK,MSD)
 ;
 K ^[$$^W3MAIN]flag("TRM")
 Q
 ;
TRM(STAM) ; 
 Q $$^W4GL("W3TRM") 
 ;
MRK(STAM) ; 
 Q $$GLMSD("W4MRK") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TRM0
W3TRM(TOMRK,MSD,MEDAT,ADDAT,MEPAR,ADPAR) ;  [ 12.02.18 09:47 ] [ 11.02.18 18:04 ] [ 10.02.18 17:45 ] 
  N (MSD,MEDAT,ADDAT,MEPAR,ADPAR,%SCKPORT,JB,%ARG,%REM,TOMRK)
  I $$^%L1FLAG($$^W4flag_"(""TRM"")") Q
  I '$G(^[$$^W3MAIN]flag("TRM")) S ^[$$^W3MAIN]flag("TRM")=$J,^[$$^W3MAIN]flag("TRM","TIME")=$H
  S SF2=0
  S TOMRK=+$G(TOMRK)
  I $$SF^W4PRM S %ARG("TRG")=1
  I TOMRK=2,$$SF^W4PRM S SF2=1
  I '$G(MSD) S MSD=1
  ;
  D ^%L1TS
  S DATA=""
  S TRG=$G(%ARG("TRG"))
  I '$G(JB) S JB=$$^%W1SsID("W3TRM")
  ;;N $ZT S $ZT="G SVER^%L1X"
  ;
  S MAXL=4000
  ;
  S MEDAT=$G(MEDAT),ADDAT=$G(ADDAT)
  S MEPAR=$G(MEPAR),ADPAR=$G(ADPAR)
  S D1=$$^%L1DC(MEDAT,3)
  S D2=$$^%L1DC(ADDAT,3)
  ;
  I MEDAT="",ADDAT="",MEPAR="",ADPAR="" S GL=$$GLMSD("PAR") G EXP
  ;
  S GL=$$W4MAIN("TEMP")
  K @GL
  ;
  S I=0
  S N=D1-1 F  S N=$O(@$$GLMSD("PARPROT")@(N)) Q:N=""  Q:N>D2  D
  .S N1="" F  S N1=$O(@$$GLMSD("PARPROT")@(N,N1)) Q:N1=""  D
  ..S A=^(N1)
  ..S PAR=$P(A,"\") I MEPAR,PAR<MEPAR Q
  ..I ADPAR,PAR>ADPAR Q
  ..I $$NOSHOW(PAR) Q
  ..I $P(A,"\",2)="=" Q
  ..I $P(A,"\",2)="-" S B=$P(A,"\",4)
  ..S I=I+1 I $P(A,"\",2)=">" S @$$W4MAIN("TEMP")@(PAR)=""
  ;
 ;
EXP ;
 N PATHP,FN,N,N1,PAR,PATHP,SET,ST,VP
 S KOLMAX=$G(@$$^W4PRM@("KOLMAX"))
 ;
 K @$$W4MAIN("MMM")
 K @$$W4MAIN("VRM"),@$$W4MAIN("KVUZA")
 ;
 S SH=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$NOSHOW(N) Q
 .S SHOW=1 I $$NOFILTER S SHOW='$$NOSHOW1(N)
 .S ST="ITEM_DETS,"_N_","_$$HB($$SHEM(N))_","_SHOW_","_$J($$MH(N),2,2)
 .
 .S VP=$$VP(N)
 .
 .S VP1=$P(@$$GLMSD("PAR")@(N),"**",5) ; SUG
 .S ST=ST_","_VP_","_KOLMAX_"***" D W
 .
 .I VP1>0,$D(@$$GLMSD("PARSUG")@(VP1)) D
 ..I $$NOSHOWGR(VP1) Q
 ..S SHK=$ZP(@$$W4MAIN("KVUZA")@(VP1,""))+1
 ..S @$$W4MAIN("KVUZA")@(VP1,SHK,N)=""
 .
 .I VP=1 S ST0="ITEM_ADDONS,"_N,ST="" D  ; -- PARIT - TOSAFOT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZI")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 .
 .I 'VP,VP1,$D(@$$GLMSD("P1EZKI")@(VP1)) D
 ..S ST0="ITEM_ADDONS,"_N,ST="" D  ; -- PARIT - TOSAFOT
 ...S N1="" F  S N1=$O(@$$GLMSD("P1EZKI")@(VP1,N1)) Q:N1=""  D
 ....I $$NOSHOW(N1) Q
 ....D BDKL
 ....S ST=ST_","_N1
 ...D WST
 .
 .K @$$^W4MAIN("VRMEZT")
 .
 .I VP=2 S ST0="ITEM_AI,"_N,ST="" D  ; -- PARIT - KVUZAT TOSAFOT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZT")@(N,N1)) Q:N1=""  D
 ...S NP=+$G(^(N1))
 ...S @$$^W4MAIN("VRMEZT")@(N,NP)=N1
 ..S NP="" F  S NP=$O(@$$^W4MAIN("VRMEZT")@(N,NP)) Q:NP=""  D
 ...S N1=$G(^(NP)) Q:N1=""
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 .K @$$^W4MAIN("VRMEZT")
 .
 .K @$$^W4MAIN("VRMEZA")
 .I VP=3 S ST0="ITEM_AI,"_N,ST="" D  ; -- ARUHA ISKIT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZA")@(N,N1)) Q:N1=""  D
 ...S NP=+$G(^(N1))
 ...S @$$^W4MAIN("VRMEZA")@(N,NP)=N1
 ..S NP="" F  S NP=$O(@$$^W4MAIN("VRMEZA")@(N,NP)) Q:NP=""  D
 ...S N1=$G(^(NP)) Q:N1=""
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 .K @$$^W4MAIN("VRMEZA")
 .
 .I VP=4 S ST0="ITEM_ADDONS,"_N,ST="" D  ; -- RAV BRERA
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZR")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..D WST
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZR")@(N,N1)) Q:N1=""  D
 ...S N2="" F  S N2=$O(@$$GLMSD("P1SBR")@(N2)) Q:N2=""  I N2?1N.N.".".N D
 ....Q:$G(@$$GLMSD("P1SBR")@(N2))?.P  Q:$D(@$$W4MAIN("MMM")@(N1,N2))
 ....S ST="ITEM_REMARKS,"_N1_","_N2_","_$$HB(@$$GLMSD("P1SBR")@(N2))
 ....S ST=ST_"***" D W
 ....S @$$W4MAIN("MMM")@(N1,N2)=N
 .
 .I $D(@$$GLMSD("P1EZH")@(N)),'$D(@$$GLMSD("P1EZRI")@(N)) D
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZH")@(N,N1)) Q:N1=""  D
 ...Q:'$D(@$$GLMSD("P1CODH")@(N1))
 ...S ST="ITEM_REMARKS,"_N
 ...S ST=ST_","_N1_","_$$HB($G(@$$GLMSD("P1CODH")@(N1)))
 ...S ST=$E(ST,1,509)_"***" D W
 .
 .I $D(@$$GLMSD("QNDEF")@(N))>9 D
 ..S ST0="ITEM_QNDEF,"_N,ST="" D  ; -- ADD QN DFLT
 ...S N1="" F  S N1=$O(@$$GLMSD("QNDEF")@(N,N1)) Q:N1=""  D
 ....S QN=+$G(^(N1)) Q:'QN  ;Q:QN'?1N.N
 ....I $$NOSHOW(N1) Q
 ....D BDKL
 ....S ST=ST_","_N1_"-"_QN
 ...D WST
 .
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$NOSHOW(N) Q
 .N N1 S N1="" F  S N1=$O(@$$GLMSD("L1TIP")@("MTK",N,N1)) Q:N1=""  D
 ..S ST="ITEM_DESC,"_N
 ..N A S A=$G(^(N1)) Q:A?.P
 ..S ST=ST_","_N1_","_$$HB($$DESC(N,N1))_"***"
 ..D W
 ;
 ;----------------- ADDONS PRICES -------
 N ST0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$NOSHOW(N) Q
 .S ST0="ITEM_ADDONS_PRC,"_N
 .
 .S VP=$$VP(N)
 .
 .I VP=1 D  Q  ; -- PARIT - TOSAFOT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZI")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW(N1) Q
 ...S ST=ST0_","_N1_","_$J($$MH(N1),2,2)_"***" D W
 .
 .K @$$^W4MAIN("VRMSETA")
 .I VP=2 D  Q  ; -- PARIT - KVUZAT TOSAFOT ; N1 - SETIM
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZT")@(N,N1)) Q:N1=""  D
 ...I N1?1N.N.".".N S ST=ST0_","_N1_","_$J($$MH(N1),2,2)_"***" D W Q
 ...S NSET=$E(N1,2,9) Q:NSET=""
 ...K @$$^W4MAIN("VRMSETA")
 ...S N2="" F  S N2=$O(@$$GLMSD("P1SETA")@(NSET,N2)) Q:N2=""  D
 ....S NP=$G(^(N2)) Q:'NP
 ....S @$$^W4MAIN("VRMSETA")@(NSET,NP)=N2
 ...S NP="" F  S NP=$O(@$$^W4MAIN("VRMSETA")@(NSET,NP)) Q:NP=""  D
 ....S N2=$G(^(NP)) Q:'N2
 ....I $$NOSHOW(N2) Q
 ....S ST=ST0_","_N2_","_$J($G(@$$GLMSD("MHT")@(N,N2)),2,2)_"***" D W
 .
 .K @$$^W4MAIN("VRMSETA")
 .I VP=3 D  Q  ; -- ARUHA ISKIT
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZA")@(N,N1)) Q:N1=""  D
 ...I N1?1N.N.".".N S ST=ST0_","_N1_","_$J($$MH(N1),2,2)_"***" D W Q
 ...S NSET=$E(N1,2,9) Q:NSET=""
 ...K @$$^W4MAIN("VRMSETA")
 ...S N2="" F  S N2=$O(@$$GLMSD("P1SETA")@(NSET,N2)) Q:N2=""  D
 ....S NP=$G(^(N2)) Q:'NP
 ....S @$$^W4MAIN("VRMSETA")@(NSET,NP)=N2
 ...S NP="" F  S NP=$O(@$$^W4MAIN("VRMSETA")@(NSET,NP)) Q:NP=""  D
 ....S N2=$G(^(NP)) Q:'N2
 ....I $$NOSHOW(N2) Q
 ....S ST=ST0_","_N2_","_$J($G(@$$GLMSD("MHT")@(N,N2)),2,2)_"***" D W
 .
 .K @$$^W4MAIN("VRMSETA")
 .I VP=4 D  Q  ; -- RAV BRERA
 ..S N1="" F  S N1=$O(@$$GLMSD("P1EZR")@(N,N1)) Q:N1=""  D
 ...I $$NOSHOW(N1) Q
 ...S ST=ST0_","_N1_",0.00,***" D W
 ;
 ;
 I $D(@$$GLMSD("P1CODH")) S N=99999999 D
 .S N1="" F  S N1=$O(@$$GLMSD("P1CODH")@(N1)) Q:N1=""  D
 ..S ST="ITEM_REMARKS,"_N
 ..S ST=ST_","_N1_","_$$HB($G(@$$GLMSD("P1CODH")@(N1)))
 ..S ST=$E(ST,1,509)_"***" D W
 ;
 I $D(@$$GLMSD("P1SETA")) D
 .S SET="" F  S SET=$O(@$$GLMSD("P1SETA")@(SET)) Q:SET=""  I SET?1N.N.".".N D
 ..S SHEM=$P($G(@$$GLMSD("P1SETA")@(SET)),"\") I SHEM?.P S SHEM=SET_" hq"
 ..S KAM=+$P($G(@$$GLMSD("P1SETA")@(SET)),"\",2) I KAM<1 S KAM=1
 ..S ST="ITEM_SETS,A"_SET_","_KAM
 ..K @$$^W4MAIN("VRMSETA")
 ..S N1="" F  S N1=$O(@$$GLMSD("P1SETA")@(SET,N1)) Q:N1=""  D
 ...N NP S NP=$G(^(N1)) Q:'NP
 ...S @$$^W4MAIN("VRMSETA")@(SET,NP)=N1
 ..S NP="" F  S NP=$O(@$$^W4MAIN("VRMSETA")@(SET,NP)) Q:NP=""  D
 ...S N1=$G(^(NP)) Q:'N1
 ...I $$NOSHOW(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..S ST=ST_"***" D W
 ..
 ..S ST="ITEM_DETS,A"_SET_","_$$HB(SHEM)_",1, , ,"_$P($G(@$$GLMSD("P1SETA")@(SET)),"\",2)
 ..S ST=ST_"***" D W
 ;
 I $D(@$$GLMSD("P1SETM")) D  ;-- SET PRITIM LE MIVCA
 .S SET="" F  S SET=$O(@$$GLMSD("P1SETM")@(SET)) Q:SET=""  I SET?1N.N.".".N D
 ..S ST="ITEM_SETS,S"_SET_","_KOLMAX
 ..S N1="" F  S N1=$O(@$$GLMSD("P1SETM")@(SET,N1)) Q:N1=""  D
 ...I $$NOSHOW(N1) Q
 ...D BDKL
 ...S ST=ST_","_N1
 ..S ST=ST_"***" D W
 ..S SHEM=$P($G(@$$GLMSD("P1SETM")@(SET)),"\") I SHEM?.P S SHEM=SET_" rvan hq"
 ..S ST="ITEM_DETS,S"_SET_","_$$HB(SHEM)_",1, , , "
 ..S ST=ST_"***" D W
 ;
 I $D(@$$GLMSD("P1MVC")@(1))=11 D
 .S N="" F  S N=$O(@$$GLMSD("P1MVC")@(1,N)) Q:N=""  D
 ..S ST="SALE_DETS_1"
 ..N A S A=$G(^(N)) Q:$P(A,"\",14)=1
 ..S MEJOM=$P(A,"\",8),ADJOM=$P(A,"\",9)
 ..S MESHAA=$P(A,"\",9),ADSHAA=$P(A,"\",11) D MEAD
 ..S ST=ST_",1,"_$$^%L1MRK_","_$P(A,"\",7)_","_MEJOM_","_ADJOM
 ..S ST=ST_","_MESHAA_","_ADSHAA_","_$P(A,"\",1)_","_$P(A,"\",3)_","_$P(A,"\",4)_","_$P(A,"\",17)_","_$P(A,"\",6)
 ..S ST=ST_","_$TR($P(@$$GLMSD("P1MVC")@(1),"\"),"/.","")_","_$TR($P(@$$GLMSD("P1MVC")@(1),"\",2),"/.","")
 ..S ST=ST_",1_"_N_","_$P(@$$GLMSD("P1MVC")@(1),"\",12)_"***" D W
 ;
 I $D(@$$GLMSD("P1MVC")@(2))=11 D
 .S N="" F  S N=$O(@$$GLMSD("P1MVC")@(2,N)) Q:N=""  D
 ..S ST="SALE_DETS_2"
 ..N A S A=$G(^(N)) Q:$P(A,"\",12)=1
 ..S MEJOM=$P(A,"\",6),ADJOM=$P(A,"\",7)
 ..S MESHAA=$P(A,"\",8),ADSHAA=$P(A,"\",9) D MEAD
 ..S ST=ST_",1,"_$$^%L1MRK_","_$P(A,"\",5)_","_MEJOM_","_ADJOM_","_MESHAA_","_ADSHAA
 ..S ST=ST_","_$P(A,"\")_","_$P(A,"\",2)_","_$P(A,"\",15)_","_$P(A,"\",4)
 ..S ST=ST_",KOLMAX,"_$TR($P(@$$GLMSD("P1MVC")@(2),"\"),"/.","")_","_$TR($P(@$$GLMSD("P1MVC")@(2),"\",2),"/.","")
 ..S ST=ST_",2_"_N_","_$P(@$$GLMSD("P1MVC")@(2),"\",10)_"***" D W
 ;
 I $D(@$$GLMSD("P1MVC")@(3))=11 D
 .S N="" F  S N=$O(@$$GLMSD("P1MVC")@(3,N)) Q:N=""  D
 ..S ST="SALE_DETS_3"
 ..N A S A=$G(^(N)) Q:$P(A,"\",14)=1
 ..S MEJOM=$P(A,"\",8),ADJOM=$P(A,"\",9)
 ..S MESHAA=$P(A,"\",10),ADSHAA=$P(A,"\",11) D MEAD
 ..S ST=ST_",1,"_$$^%L1MRK_","_$P(A,"\",7)_","_MEJOM_","_ADJOM
 ..S ST=ST_","_MESHAA_","_ADSHAA_","_$P(A,"\",1)_","_$P(A,"\",3)_","_$P(A,"\",4)_","_$P(A,"\",17)_","_$P(A,"\",6)
 ..S ST=ST_","_$TR($P(@$$GLMSD("P1MVC")@(3),"\"),"/.","")_","_$TR($P(@$$GLMSD("P1MVC")@(3),"\",2),"/.","")
 ..S ST=ST_",3_"_N_","_$P(@$$GLMSD("P1MVC")@(3),"\",12)_"***" D W
 ;
 ;
 K @$$W4MAIN("MMMK")
 K @$$W4MAIN("MMMP")
 I $D(@$$GLMSD("P1KVZSID")) D
 .N NKV,PAR
 .S NKV="" F  S NKV=$O(@$$GLMSD("P1KVZSID")@(NKV)) Q:NKV=""  D
 ..S KV=$G(^(NKV)) Q:KV=""
 ..I $$NOSHOWGR(KV) Q
 ..N KV1 S KV1=$G(@$$GLMSD("PARSUG")@(KV))
 ..I KV1="" Q
 ..I $D(@$$W4MAIN("KVUZA")@(KV))<10 Q
 ..S ST="ITEM_KVUZA,"_KV_","_$$HB(KV1)
 ..S @$$^W4MAIN("MMMP")@(KV)=""
 ..D SIDPRT(KV)
 ..S ST=ST_"***" D W
 ;
 ; ---------- IF NOT ^P1KVZSID --------------------------------
 I $D(@$$W4MAIN("KVUZA")) S N1="" D
 .F  S N1=$O(@$$W4MAIN("KVUZA")@(N1)) Q:N1=""  D
 ..I $D(@$$^W4MAIN("MMMP")@(N1)) Q
 ..I $$NOSHOWGR(N1) Q
 ..S ST="ITEM_KVUZA,"_N1_","_$$HB(@$$GLMSD("PARSUG")@(N1))
 ..D SIDPRT(N1)
 ..S ST=ST_"***" D W
 ..Q
 ..
 ..S ST="ITEM_KVUZA,"_N1_","_$$HB(@$$GLMSD("PARSUG")@(N1)) D
 ...S N3="" F  S N3=$O(@$$W4MAIN("KVUZA")@(N1,N3)) Q:N3=""  D
 ....S N2="" F  S N2=$O(@$$W4MAIN("KVUZA")@(N1,N3,N2)) Q:N2=""  D BDKL S ST=ST_","_N2
 ...S ST=ST_"***" D W
 ;
NL ;
 I $D(@$$GLMSD("PARNL")) D
 .S N1="" F  S N1=$O(@$$GLMSD("PARNL")@(N1)) Q:N1=""  D
 ..S A=^(N1),MESHAA=$P(A,"\"),ADSHAA=$P(A,"\",2)
 ..S MEJOM=$P(A,"\",3),ADJOM=$P(A,"\",4)
 ..S ST="ITEM_HLOCK,"_N1_","_MESHAA_","_ADSHAA_","_MEJOM_","_ADJOM,STKOT=ST
 ..S N2="" F  S N2=$O(@$$GLMSD("PARNL")@(N1,N2)) Q:N2=""  D
 ...D BDKL
 ...S ST=ST_","_N2
 ..S ST=ST_"***" D W
 ;
 I $D(@$$GLMSD("P1KVZSID")) S STKOT="POZ_KVUZA," D
 .S N1="",N2=""
 .F  S N1=$O(@$$GLMSD("P1KVZSID")@(N1)) Q:N1=""  S N2=@$$GLMSD("P1KVZSID")@(N1) I $G(N2) D
 ..I $$NOSHOWGR(N2) Q
 ..S ST=STKOT_N1_","_N2_","_"***" D W
 ;
 I TRG D ^W3TRG(MSD)
 ;
 D TRN
 ;
END K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("MMM"),@$$^W4MAIN("MMMP"),@$$^W4MAIN("MMMK")
 K @$$^W4MAIN("KVUZA")
 Q
 ;
 ;
SIDPRT(KV) ;
 N NP S NP="" F  S NP=$O(@$$GLMSD("P1PARSID")@(KV,NP)) Q:NP=""  D
 .N PAR S PAR=$G(^(NP))
 .N SUG S SUG=$P(@$$GLMSD("PAR")@(PAR),"**",5)
 .Q:SUG'=KV  Q:$$NOSHOW(PAR)
 .D BDKL
 .S ST=ST_","_PAR
 .I $D(@$$W4MAIN("MMMP")@(PAR)) Q
 .S @$$W4MAIN("MMMP")@(PAR)=""
 Q:$D(@$$GLMSD("P1PARSID")@(KV))
 ;
 S N3="" F  S N3=$O(@$$W4MAIN("KVUZA")@(KV,N3)) Q:N3=""  D
 .S PAR="" F  S PAR=$O(@$$W4MAIN("KVUZA")@(KV,N3,PAR)) Q:PAR=""  D
 ..I $D(@$$W4MAIN("MMMP")@(PAR)) Q
 ..Q:$$NOSHOW(PAR)
 ..D BDKL S ST=ST_","_PAR
 ;
 Q
 ;
TRN ; -------------- SHIDUR LE MISHLOHIM ---------
 N ITEM,WVW,RZD,N,N1,ST,DIR,I,J
 K @$$TRM@("ER")
 S TID=""
 ;
 S DIR=$$DIR(MSD)
 ;
 S MREST=$$GETREST(MSD)
 I MREST?.P S MREST=MSD
 ;
 S IND1=$G(%ARG("IND1")) I 'IND1 S IND1=+$H
 S IND2=$G(%ARG("IND2")) I 'IND2 S IND2=$P($H,",",2)
 ;
 I $G(@$$TRM@("DEB")) D
 .M @$$TRM@(IND1,IND2,"VRM",TOMRK)=@$$^W4MAIN("VRM")
 ;
 I 'TRG D
 .N J F J=1:1:$L(MREST,",")  S REST=$P(MREST,",",J)  I REST D
 ..D TRN2R(REST,"IT","TR",0,TOMRK)
 ;
 I TRG D
 .D TRN2R(MSD,"IT","TR",1,TOMRK)
 .D TRN2R(MSD,"LKH","TRL",1,TOMRK)
 .D TRN2R(MSD,"GEO","TRG",1,TOMRK)
 Q
 ;
 ;
TRN2R(REST,PRFX,IND,TRG,TOMRK)
 N A,J,FN,SH,WVW,N,N1,ST,CMD,CON
 S FN=$$FN(PRFX_"_"_REST)
 ;
 C FN:DELETE
 O FN:(WRITE:NEWVERSION) S SH=0
 ;
 I $G(TRG) U FN W "data="
 ;
 S WVW="W1" D ^%L1TS
 ;
 S N="" F  S N=$O(@$$W4MAIN("VRM")@(IND,N)) Q:N=""  D
 .S ST="" ;
 .S N1="" F  S N1=$O(@$$W4MAIN("VRM")@(IND,N,N1)) Q:N1=""  D
 ..N A S A=$G(^(N1))
 ..I A[">>>" D
 ...;
 ...I $E(A,$L(A)-2,$L(A))=">>>" S A=$E(A,1,$L(A)-3)
 ...I A[">>>" S A=$P(A,">>>",2)
 ..S ST=ST_A
 ..I $E(ST,$L(ST)-2,$L(ST))'="***" Q
 ..D @WVW S ST=""
 ;
 S ST="END_FILE***" D @WVW
 C FN
 ;
 ;;K @$$W4MAIN("VRM")
 ;
 I 'TOMRK S HTTP="http://www.mishlohim.co.il/rashad/UpdateMenu.aspx"
 I TOMRK S HTTP=$G(@$$MRK("W4MRK")@(TOMRK,"MAIN"))
 ;
 I $G(TRG) D  G CMDMENU
 .N DOP
 .I $L($G(PRFX)) S DOP=$G(@$$MRK@(TOMRK,PRFX))
 .I $E(HTTP,$L(HTTP))'="/" S HTTP=HTTP_"/"
 .S HTTP=HTTP_DOP
 .S CMD="curl -k """_HTTP_""" --data-urlencode data@"_FN
 ;
 S CMD="curl """_HTTP_""" -F "_PRFX_"_"_REST_".DAT=@"_FN
 S CMD=CMD_" | xmllint --format --encode cp862 - "
 ;
CMDMENU S:$G(PRFX)="" PRFX=" "
 S IND1=$G(%ARG("IND1"),+$H)
 S IND2=$G(%ARG("IND2"),$P($H,",",2))
 ;
 S @$$TRM@(IND1,IND2,"CMDMENU",TOMRK,PRFX)=$G(CMD)
 ;
 S @$$TRM@(IND1,IND2,"RES","MENU",TOMRK,PRFX)="IN PROGRESS"
 S CON="MSL"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 ;
 I $ZSY D  G ETRN2R
 .S @$$TRM@(IND1,IND2,"RES","MENU",TOMRK,PRFX)="ER\"_$ZSY_"\"_$H
 ;
 S OK=$$READ(CON)
 S @$$TRM@(IND1,IND2,"RES","MENU",TOMRK,PRFX)="OK\"_OK_"\"_$H
 ;
ETRN2R C CON
 ;
 Q
 ;
 ;
GLMSD(GLREF) Q "^["""_$$UCI(MSD)_"""]"_GLREF
 ;
FN(FN) Q $$DIR(MSD)_FN_".dat"
 ;
SHEM(CD) Q $P($G(@$$GLMSD("PAR")@(CD)),"**")
 ;
MH(CD) Q $P($G(@$$GLMSD("PAR")@(CD)),"**",2)
 ;
DESC(CD,NOM) ;
 Q $TR($G(@$$GLMSD("L1TIP")@("MTK",CD,NOM)),","," ")
 ;
VP(N) ;
 N VP S VP=0
 I $D(@$$GLMSD("P1EZA")@(N)) S VP=3
 E  I $D(@$$GLMSD("P1EZT")@(N)) S VP=2
 E  I $D(@$$GLMSD("P1EZI")@(N)) S VP=1
 E  I $D(@$$GLMSD("P1EZR")@(N)) S VP=4
 Q VP
 ;
W1 U FN W ST,!
 Q
W N FLD,IND
 S FLD=$P(ST,",")
 S IND=$S(FLD="ITEM_DETS":1,FLD="ITEM_BRANCH":2,FLD="ITEM_ADDONS":3,FLD="ITEM_AI":4,FLD="ITEM_SETS":5,FLD="ITEM_REMARKS":6,FLD["SALE":7,FLD="ITEM_KVUZA":8,FLD="ITEM_HLOCK":9,FLD="POZ_KVUZA":10,1:11)
 S SH=SH+1,@$$W4MAIN("VRM")@("TR",IND,SH)=ST
 Q
W2 ;
 X %SCKPORT("USE") W ST,!
 Q
W3 ;
 X %SCKPORT("USE") W ST
 Q
WST
 I $G(ST)="" Q
 S ST=ST0_ST_"***" D W
 Q
 ;
MEAD ;
 I 'MEJOM,'ADJOM S MEJOM=1,ADJOM=7
 I MEJOM,'ADJOM S ADJOM=MEJOM
 S:'MEJOM MEJOM=1 S:'ADJOM ADJOM=7
 S:'MESHAA MESHAA="0000"
 S:'ADSHAA ADSHAA=2359
 S MESHAA=$TR(MESHAA,":",""),ADSHAA=$TR(ADSHAA,":","")
 S MESHAA=$TR($J(MESHAA,2)," ",0)
 S ADSHAA=$TR($J(ADSHAA,2)," ",0)
 I $L(MESHAA)=2 S MESHAA=MESHAA_"00"
 I $L(ADSHAA)=2 S ADSHAA=ADSHAA_"00"
 I ADSHAA=2400 S ADSHAA=2359
 Q
 ;
HB(TXT) ;;Q $TR($$INVHBW^%L1FRM($TR(TXT,",","")),TS0,TS1)
 Q $TR($$^%W1H2U($TR(TXT,","," ")),TS0,TS1)
 ;
NOSHOW(PAR) ;
 N SUG,ST S ST=$G(@$$GLMSD("PAR")@(PAR))
 S SUG=$P(ST,"**",5)
 I SUG,$$NOSHOWGR(SUG) Q 1
 I $G(TOMRK),$G(@$$GLMSD("W4PRTSND")@(PAR,TOMRK))=0 Q 1
 I $$NOFILTER Q 0
 Q $$NOSHOW1(PAR)
 ;
NOSHOW1(PAR) ;
 I $D(@$$GLMSD("PRTNO")@(PAR)) Q 1
 I $P($G(@$$GLMSD("W3PAR")@(PAR)),"\")=0 Q 1
 N DIAPSHA S DIAPSHA=$G(@$$GLMSD("W3PAR")@(PAR,"SHAA"))
 ;
 I DIAPSHA'="",DIAPSHA'["0-23" Q 1  ;;,$$NOSHAA1^W3HZTFR(^("SHAA")) Q 1
 N DAYS S DAYS=$G(@$$GLMSD("W3PAR")@(PAR,"DAYS"))
 I DAYS'="",DAYS'["11111" Q 1  ;;,'$E(^("DAYS"),$$^%L1DC($H,8)) Q 1
 Q 0
 ;
NOSHOWGR(GR) ;
 I $G(@$$GLMSD("W3SUG")@(GR))=0 Q 1
 I $G(@$$GLMSD("W3SUG")@(GR))=2 Q 1
 Q 0
 ;
UCI(MSD) ;
 Q $G(^[$$^W3MAIN]UCI(MSD))
 ;
DIR(MSD) ;
 Q $ZPARSE($$UCI(MSD),"DIR")
 ;
GETREST(MSD) ;
 N MREST,N
 S MREST=""
 S N="" F  S N=$O(^[$$^W3MAIN]W3MSL2M(N)) Q:N=""  D
 .I $G(^(N))=MSD S MREST=MREST_N_","
 Q $E(MREST,1,$L(MREST)-1)
 ;
GETVL(A,EL) ;
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 Q $$SPA^%L1FRM(ZN)
 ;
READ(CON)
 D ^%L1TS
 N I,OK S OK=0
 U CON S I=0
 D
 .N TMP,A
 .S TMP=$$W4MAIN("TMPMSL")
 .N NOM S NOM=$O(@TMP@(999999),-1)+1
 .N C R *C:20 Q:C<0
 .S C=$C(C)
 .F  R A Q:$ZEOF  D  Q:OK
 ..I $L(C) S A=C_A S C=""
 ..S I=I+1,@TMP@(NOM,I)=$TR($E(A,1,1400),TSS,TS0)
 ..I A["<div>" D
 ...R A I $$SPA^%L1FRM(A)="OK" S OK=1
 ..I A["upload_ok" S OK=1
 Q OK
 ;
TRNPIC ;
 N N,GL
 S GL=$$GLMSD("PAR")
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I $$TRNPICP(MSD,N)
 Q
 ;
TRNPICP(MSD,N)
 N FLPIC,LPIC,CMD,CON,OK,J,OK
 I $$NOSHOW(N) Q 1
 S MREST=$$GETREST(MSD) I MREST="" Q 0
 S FLPIC=$$PICL^W4P(N) I FLPIC="" Q 1
 S LPIC=$P(FLPIC,"/",$L(FLPIC,"/")) I LPIC="" Q 1
 I LPIC'["pic" Q 1
 ;
 S OK=1
 F J=1:1:$L(MREST,",") S REST=$P(MREST,",",J) I REST S OK=$$TRNPIC2R(REST)
 Q OK
 ;
TRNPIC2R(REST)
 N CMD,CON,J
 S CMD="curl -T """_FLPIC_""" "
 S CMD=CMD_"""http://www.mishlohim.co.il/Rashad/PutImage.ashx?"
 S CMD=CMD_"businessID="_REST
 S CMD=CMD_"&fileName="_LPIC_""""
 ;
 S @$$TRM@("CMDPIC",LPIC)=CMD
 ;
 S CON="MSLPIC"
 ;
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 ;
 I $ZSY D  C CON Q 0
 .S @$$TRM@("ER","PIC",LPIC)=$ZSY_"\"_$H
 ;
 S OK=$$READ(CON) C CON
 ;
 S @$$TRM@("CMDPIC",LPIC,"OK")=OK
 ;
 I $D(W3MSLPIC) D
 .N SH
 .D TMP^W3MSLPIC
 .S SH=$O(@TMP@(999999),-1)+1
 .S @TMP@(SH)=LPIC_" - "_$S(OK:"OK",1:"NOK")
 Q 1
 ;
W4MAIN(GLB) ;
 Q "^[$$^W3MAIN]"_GLB_"($J)"
 ;
BDKL ;
 I $L(ST)>MAXL D  S ST=">>>"
 .S ST=ST0_ST_">>>" D W
 Q
 ;
NOFILTER(STAM) ;
 I $G(TRG) Q 1
 Q 0
 ;
SEND(JB) ; 
 N MSD S MSD=$$GETP^%W1PRM("MSD") Q:MSD=""
 ;
 I $D(@$$MRK)<10 D  Q
 .D ^W3TRM("",MSD)
 ;
 S %ARG("IND1")=+$H
 S %ARG("IND2")=$P($H,",",2)
 ;
 N MRK S MRK="" F  S MRK=$O(@$$MRK@(MRK)) Q:MRK=""  D
 .D ^W3TRM(MRK,MSD)
 ;
 K ^[$$^W3MAIN]flag("TRM")
 Q
 ;
TRM(STAM) ; 
 Q $$^W4GL("W3TRM") 
 ;
MRK(STAM) ; 
 Q $$GLMSD("W4MRK") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TRMPR
W3TRMPR ; [ 11.02.18 17:15 ] [ 
 N (JB,%ARG,%REM)
 S TMP=$$^W4MAIN("TMP") K @TMP
 S GLTRM=$$TRM^W3TRM
 S I=0
 S H1="" F  S H1=$O(@GLTRM@(H1),-1) Q:H1=""  D
 .S H2="" F  S H2=$O(@GLTRM@(H1,H2),-1) Q:H2=""  D
 ..I I>1 S I=I+1,@TMP@(I)="-------------"
 ..S M="" F  S M=$O(@GLTRM@(H1,H2,"RES","MENU",M)) Q:M=""  D
 ...S I=I+1
 ...S @TMP@(I)=$ZD(H1_","_H2,"DD.MM.YY 24:60")_"\"_$$MRK(M)
 ...
 ...S PRFX="" F  S PRFX=$O(@GLTRM@(H1,H2,"RES","MENU",M,PRFX)) Q:PRFX=""  D
 ....S IND=$$IND(PRFX)
 ....S A=$G(^(PRFX))
 ....S $P(@TMP@(I),"\",IND)=$P(A,"\")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  D ^W4BUTTON("close","CLOSE","Close()","height:"_$$^W4KF(35)_"px;width:"_$$^W4KF(90)_"px;color:red;font-size:"_$$^W3FSZ(12))
  W "<br><br>"
  W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
    W $$^%W1DICT("SENDINGDATALIST")
  W "</span>",!
  
  W "<table style=""width:70%"" cellpadding=0 cellspacing=0 border=""1"">"
  W " <tr>" 
   W "<th>"_$$^%W1DICT("STARTSENDINGTIME")_"</th>"
   W "<th>"_$$^%W1DICT("SITE")_"</th>"
   W "<th>"_$$^%W1DICT("ITEMSFILESENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("CLIENTSFILESENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("CITIESFILESENDINGSTATUS")_"</th>"
  W " </tr>",!
  ;
  S TOP=0,DATTOP=""
  F I=1:1 Q:'$D(@TMP@(I))  D
  .S A=$G(^(I))
  .I I=1 S TOP=1,DATTOP=$P(A,"\")
  .I I>1,$P(A,"\")'=DATTOP S TOP=0 
  .W "<tr align=""center"" "
  . I TOP W " style=""background-color:lightyellow"" "
  .W ">"
  . W "<td>"
  .  W $P(A,"\")
  . W "</td>"
  .
  . W "<td>"
  .  W $$H2U^%L1FRM($P(A,"\",2))
  . W "</td>"
  .
  . W "<td>"
  .  W $P(A,"\",3)
  . W "</td>"
  .
  . W "<td>"
  .  W $P(A,"\",4)
  . W "</td>"
  .
  . W "<td>"
  .  W $P(A,"\",5)
  . W "</td>"
  .W "</tr>",!
  W "</table>",!
  W "</div>",!
  Q
  ;
MRK(MRK) ;
 Q $G(@$$^W4GL("W4MRK")@(MRK))
 ;
NM(PRFX) ; 
 I PRFX="IT" Q "mihixt uaew"
 I PRFX="GEO" Q "mixr uaew"
 I PRFX="LKH" Q "zegewl uaew"
 Q ""
 ;
IND(PRFX) ; 
 I PRFX="IT" Q 3
 I PRFX="LKH" Q 4 
 I PRFX="GEO" Q 5 
 Q 2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3TSTOR0
W3TSTORD ; [ 30.06.14 20:01 ] [ 27.02.14 19:48 ] [ 25.02.14 15:46 ]
 S $ZT="ZG "_$ZL_":ER^W3TSTORD"
 N N,A,MSD,T
CYC ;
 I $G(^[$$^W3MAIN]STLOOP("W3TSTORD")) H
 ;
 N DT S DT=$H-5
 F  S DT=$O(^[$$^W3MAIN]W3LINKD(DT)) Q:DT=""  D
 .S N="" F  S N=$O(^[$$^W3MAIN]W3LINKD(DT,N)) Q:N=""  D
 ..S A=$G(^[$$^W3MAIN]W3LINKO(N))
 ..S MSD=$$MSD(A) Q:'MSD
 ..S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 ..Q:$D(@$$^W3ORD(N)@(N,"D"))
 ..Q:$D(@$$^W3ORD(N)@(N,"F"))
 ..Q:$G(@$$^W3ORD(N)@(N,"DBF"))>3
 ..Q:$D(@$$^W3ORD(N)@(N,"EMAIL"))
 ..Q:$D(@$$^W3ORD(N)@(N,"PC"))&$$AUTOPR^W3PRM(MSD)
 ..I '$$PRCOFR(N) Q:$P($G(@$$^W3ORD(N)@(N,"S")),";",2)=2
 ..I '$$AUTOSEND^W3PRM(N),'$$AUTOPR^W3PRM(MSD),$D(@$$^W3ORD(N)@(N,"S")) Q
 ..S DTTO=$$^%L1DC($P($G(@$$^W3ORD(N)@(N)),"~",5),3)
 ..I DTTO'=+$H,'$$PRCOFR(N) Q
 ..S T=$$SENDTIME(A)
 ..S DIF=$P($H,",",2)-T
 ..I DIF<0 S DIF=DIF+86400
 ..;;I DIF>900!($H>$P(A,"~",3))!$$PRCOFR(N),$TR($$FAX^W3R(MSD),"!-","") D
 ..I DIF>900,$TR($$FAX^W3R(MSD),"!-","") D
 ...S @$$^W3ORD(N)@(N,"DBF")="1\"_$H
 ...S TSTORD=$S($$PRCOFR(N):2,1:"")
 ...D SNDFAX(MSD,N)
 S ^[$$^W3MAIN]W3TSTORD=$ZD($H,"DD.MM.YY  24:60")_"\"_$J
 H 300 G CYC
 ;
ER D SVER^%L1X
 H
 ;
MSD(A) ;
 Q $P(A,"~",1)
 ;
SENDTIME(A) ;
 Q $P($P(A,"~",3),",",2)
 ;
SNDFAX(MSD,HZ) ;
 N (MSD,HZ,TSTORD)
 S FAX=$$FAX^W3R(MSD)
 I '$$PRCOFR(HZ) D ^W3FAXHTM(HZ,MSD,1)
 I $$PRCOFR(HZ) D  D ^W3FAXHTM(HZ,MSD,2)
 .S @$$^W3ORD(HZ)@(HZ,"DBF")="2\"_$H
 S ^[$$^W3MAIN]W3TSTORD(HZ)=MSD_"\"_$H_"\F\"_$ZSY
 I '$ZSY D ^W3REGFAX(HZ)
 Q
 ;
PRCOFR(HZ) ;
 I $$^W3PRCOFR(HZ)&(MSD=1) Q 1
 Q 0
 ;
END Q

W3TSTORD
W3TSTORD ; [ 24.07.17 17:14 ] [ 13.09.14 17:56 ] [ 30.06.14 17:02 ] 
 S $ZT="ZG "_$ZL_":ER^W3TSTORD"
 N N,A,MSD,T
CYC ;
 I $G(^[$$^W3MAIN]STLOOP("W3TSTORD")) H
 ;
 N DT S DT=$H-5
 F  S DT=$O(^[$$^W3MAIN]W3LINKD(DT)) Q:DT=""  D
 .S N="" F  S N=$O(^[$$^W3MAIN]W3LINKD(DT,N)) Q:N=""  D
 ..S A=$G(^[$$^W3MAIN]W3LINKO(N))
 ..S MSD=$$MSD(A) Q:'MSD
 ..S UCI=$G(^[$$^W3MAIN]UCI(MSD)) Q:UCI=""
 ..Q:$D(@$$^W3ORD(N)@(N,"D"))
 ..Q:$D(@$$^W3ORD(N)@(N,"F"))
 ..Q:$G(@$$^W3ORD(N)@(N,"DBF"))>3
 ..Q:$D(@$$^W3ORD(N)@(N,"EMAIL"))
 ..Q:$D(@$$^W3ORD(N)@(N,"PC"))&$$AUTOPR^W3PRM(MSD)
 ..I '$$PRCOFR(N) Q:$P($G(@$$^W3ORD(N)@(N,"S")),";",2)=2
 ..I '$$AUTOSEND^W3PRM(N),'$$AUTOPR^W3PRM(MSD),$D(@$$^W3ORD(N)@(N,"S")) Q
 ..S DTTO=$$^%L1DC($P($G(@$$^W3ORD(N)@(N)),"~",5),3)
 ..I DTTO'=+$H,'$$PRCOFR(N) Q
 ..S T=$$SENDTIME(A)
 ..S DIF=$P($H,",",2)-T
 ..I DIF<0 S DIF=DIF+86400
 ..N FAXTIM S FAXTIM=900
 ..I $G(^[$$^W3MAIN]W3FAXTIM(MSD)) S FAXTIM=$G(^(MSD))
 ..I DIF>FAXTIM,$TR($$FAX^W3R(MSD),"!-","") D
 ...S @$$^W3ORD(N)@(N,"DBF")="1\"_$H
 ...S TSTORD=$S($$PRCOFR(N):2,1:1) ; -- WAS "" 24/07/17
 ...D SNDFAX(MSD,N)
 S ^[$$^W3MAIN]W3TSTORD=$ZD($H,"DD.MM.YY  24:60")_"\"_$J
 H 300 G CYC
 ;
ER D SVER^%L1X
 H
 ;
MSD(A) ;
 Q $P(A,"~",1)
 ;
SENDTIME(A) ;
 Q $P($P(A,"~",3),",",2)
 ;
SNDFAX(MSD,HZ) ;
 N (MSD,HZ,TSTORD)
 S FAX=$$FAX^W3R(MSD)
 I '$$PRCOFR(HZ) D ^W3FAXHTM(HZ,MSD,1)
 I $$PRCOFR(HZ) D  D ^W3FAXHTM(HZ,MSD,2)
 .S @$$^W3ORD(HZ)@(HZ,"DBF")="2\"_$H
 S ^[$$^W3MAIN]W3TSTORD(HZ)=MSD_"\"_$H_"\F\"_$ZSY
 I '$ZSY D ^W3REGFAX(HZ)
 Q
 ;
PRCOFR(HZ) ;
 I $$^W3PRCOFR(HZ)&(MSD=1) Q 1
 Q 0
 ;
END Q
 

W3TZ
TZ(TZ) ; CHECK NUMBER TZ ; SHEER ; 07/07/93 [ 05.09.08 13:56 ] [ 07/07/93 10:36 AM ]
  ; INPUT -- TZ,  OUTPUT -- S=1 IF TZ ORIGINAL, S=0 IF TZ -- FALSE
  N S,I,S2 S S=0
  F I=1:2:8 S S=S+$E(TZ,I)
  F I=2:2:8 S S2=$E(TZ,I)*2,S=S+$E(S2)+$E(S2,2)
  S S=S+$E(TZ,9)#10=0
  Q S

W3UCI
W3UCI(MSD) ; [ 08.06.11 08:53 ] [ 19.08.07 12:26 ] [ 26.06.07 08:29 ]
 I $G(MSD)="" Q ""
 I $$WEB^W3MAIN["195." S MSD=1
 N MAINDIR S MAINDIR=$$^W3MAIN
 Q $G(^[MAINDIR]UCI(MSD))

W3UPLPIC
W3UPLPIC(PRM) ; [ 12.02.20 13:12 ] [ 01.10.17 12:56 ] [ 10.07.13 10:58 ] 
 N OK,FL,CD,MSD,PRE,TO
 S ^BB=PRM_" JB="_$G(JB)
 S OK=$P(PRM,";",1) I OK'="true" Q "NOTOK"
 S FL=$P(PRM,";",2)
 ;;I FL'[".jpg"&(FL'[".jpeg")&(FL'[".gif")&(FL'[".png")&(FL'[".bmp") Q "FILETYPEISWRONG"
 S CD=$P(PRM,";",3)
 S MSD=$P(PRM,";",4)
 S PRE=$P(PRM,";",5)
 I PRE="" S PRE="pic"
 I CD="" S CD=$P(FL,".")
 I PRE="crul" S CD=$$FUNC^%LCASE(CD)
 S TO=PRE_CD_".jpg"
 N A S A="sudo -u gtmuser /bin/mv /home/gtmuser/img/"""_FL_""" "_$$PATH(MSD)_TO
 I $G(^W3MAIN("WEB"))[".2order.org" D
 .S A="/bin/mv /home/gtmuser/img/"""_FL_""" "_$$PATH(MSD)_TO
 D PUT^%W3DEB("W3UPLPIC","A=A")
 ZSY A
 I '$ZSY D
 .S ^[$$^W3MAIN]TMPIMG(JB,CD)=1
 .D PUT^%W1PRM("UPLPICFILE",TO)
 ;
 D PUT^%W1PRM("CRULSHCN",1)
 ;;S ^BB(1)=A
 ;;S ^BB("ZSY")=$ZSY
 ;
 Q $ZSY
 ;
PATH(MSD) ;
 I '$G(MSD) S MSD=1
 Q $$WEBL^W3MAIN_MSD_"/itp/"
PATHWEB(MSD) ;
 I '$G(MSD) S MSD=1
 Q $$WEB^W3MAIN_MSD_"/itp/"
 
 

W3UTERM
W3UTERM ; [ 18.06.09 21:14 ] [ 17.06.09 21:15 ] [ 08.05.09 18:21 ]
 N (JB,CODE,%ARG,%REM) S ORD=JB
 I $D(@$$^W3ORD(JB)@(JB)) Q
 I '$G(CODE) S CODE=$$GET^%W1PRM("CODE")
 S MSD=$$GET^%W1PRM("MSD")
 I MSD="" Q
 I $$^W3UCI(MSD)="" Q
 ;;S $ZGBLDIR=$$^W3UCI(MSD)
 D SAVE
 D HDMSD^W3ORDVW(MSD)
 D ^%L1WEBHD($$^W3MSDG(MSD),"T")
 ;
 W "<br><br>",!
 W "<table align=""center"" dir="""_$$^%W1DIR_""" id=""msgid"" cellpadding=""30"" border=""1"">",!
 W "<tr><td style=""background-color:white;text-align:center"">",!
 W "<p style=""color:"_$$FC^W3CSS($$COLOR^W3CSS(MSD))_";font-size:"_$$^W3FSZ(24)_""">",$$^%W1DICT("THANKS"),!
 W "<br></p>",!
 W "<p style=""font-size:"_$$^W3FSZ(12)_";text-align:center"">",!
 W $$^%W1DICT("UTERM")
 W "<br>",!
 W $$^%W1DICT("UTERM1")
 W "<b>&nbsp;&nbsp;",$$H2U^%L1FRM($$CHECKERNAME^W3MENUHD),"</b>"
 W "</td></tr><table>",!
 W "</div>",!
 W "<br/><br/>",!
 W "<div align=""center"">",!
 ;
 W "<table><tr><td align=""center"">",!
 D ROUNDBUT^%W1JS("msgclose",$$^%W1DICT("CLOSE"),"Finish('"_CODE_"')","color:red","wh,22")
 W "</td>"
 W "</tr></table>",!
 W "</div>",!
END K ^[$$^W3MAIN]TMPORD(JB),^[$$^W3MAIN]TMPTF($$^%W1JB)
 K @$$^W4PARCAT
 D KILL^%W1PRM("CHECKER")
 D KILL^%W1PRM("CODE")
 Q
 ;
SAVE ;
 N CHECKER,CODE
 S CHECKER=$$GET^%W1PRM("CHECKER") Q:'CHECKER
 S CODE=$$GET^%W1PRM("CODE") Q:'CODE
 N IND S IND=$O(^[$$^W3MAIN]W3UNIT(CHECKER,+$H,CODE,9999),-1)+1
 M ^[$$^W3MAIN]W3UNIT(CHECKER,+$H,CODE,IND)=^[$$^W3MAIN]TMPORD(JB)
 S ^[$$^W3MAIN]W3UNIT(CHECKER,+$H,CODE,IND)=JB_"\"_$H_"\"_$G(%REM)
 Q

W3VHOD
W3VHOD ; [ 21.06.12 10:07 ] [ 20.06.12 21:46 ] [ 12.06.12 10:29 ]
INIT ;
 D ^%W1ARG,^W3CSS
 D PUT^%W1PRM("OUTCOMP",$$OUTCOMP^W3VHOD)
 D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",$G(%ARG("MSD")))
 Q
 ;
PSW(COMP)
 I $G(COMP)="" Q ""
 Q $$PSW^W4L(COMP,$$^W4GL("W3COMP"))
 ;
CHKPSW(PRM)
 S USR=$TR($P(PRM,";"),"-$!","")
 S PSW=$P(PRM,";",2)
 S COMP=$P(PRM,";",3)
 ;;I $$D^W3L(USR)'=11 Q 0
 I $$PSW(COMP)'=PSW Q 0
 Q 1
 ;
PUT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 S CODE=$P(PRM,";")
 S CODE=$TR(CODE,"-~!","")
 D PUT^%W1PRM("CODE",CODE)
 ;S COMP=$$OUTCOMP
 S NAME=$P(PRM,";",2)
 S TIME=$P(PRM,";",3)
 S COMP=$P(PRM,";",4)
 ; 1   2     3      5    6    7       9       13    14   15     16               27      31   32        38    39      40     41      42        43        47            56    57   58  59    60
 ;NMB;NAME;STREET;;DAT;SHAA;COMMENT;;DMSH;;;;FLOOR;FLAT;HOME;ENTRANCE;;;;;;;;;;;CODE;;;;CITY;PELE;;;;;;AHUZ;DATIDdd;DATIDmm;DATIDyy;SHAAhrid;SHAAmnid;;;;COMP;;;;;;;;;EMAIL;MIKUD;FAX;TELB;HZMLAK
 S NAME=$$SPA^%L1FRM($$CNWEB^%L1FRM(NAME))
 I $L(NAME) D
 .S NAME=$$INVH^%L1FRM(NAME)
 .D PUT^W3L(CODE,NAME,"LKH")
 .I $$D^W3L(CODE)<11 D
 ..N GL D GL^W3L
 ..S @GL@(CODE,1)="*"
 ..S @GL@(CODE,2)="*"
 ..S @GL@(CODE,3)="*"
 ..S @GL@(CODE,4)="*"
 ;
 N ST S ST=$G(@$$^W4TMPORD)
 S GLC=$$^W4GL("W3COMP")
 S $P(ST,"~")=CODE
 S $P(ST,"~",2)=$$LKH^W3L(CODE)
 S $P(ST,"~",3)=$$KTV^W4L(COMP,GLC)
 N DAT S DAT=$ZD($H,"DD.MM.YY")
 S $P(ST,"~",5)=DAT
 S $P(ST,"~",6)=TIME
 S $P(ST,"~",7)=$$CMNT^W3L(CODE)
 S $P(ST,"~",9)=$$DMSHNIS^W4L(COMP,GLC)
 S FLOOR=$$KOMA^W3L(CODE) ; -- DOP-T
 I FLOOR="" S FLOOR=$$KOMA^W4L(COMP,GLC)
 S $P(ST,"~",13)=FLOOR
 S $P(ST,"~",14)=$$DIRA^W3L(CODE) ; -- DOP-T
 S $P(ST,"~",15)=$$BAIT^W4L(COMP,GLC)
 S $P(ST,"~",16)=$$CNISA^W4L(COMP,GLC)
 S $P(ST,"~",27)=CODE
 S $P(ST,"~",31)=$$IR^W4L(COMP,GLC)
 S $P(ST,"~",32)=CODE
 S $P(ST,"~",38)=$$HNH^W4L(COMP,GLC)
 F J=39:1:41 S $P(ST,"~",J)=$P(DAT,".",J-38)
 S $P(ST,"~",42)=+TIME
 S $P(ST,"~",43)=$P(TIME,":",2)
 S $P(ST,"~",47)=$$LKH^W4L(COMP,GLC)
 S $P(ST,"~",56)=$$EMAIL^W3L(CODE)
 S $P(ST,"~",57)=$$MIKUD^W4L(COMP,GLC)
 N FAX S FAX=$$FAX^W3L(CODE)
 I FAX=""!($L(FAX)<7) S FAX=$$FAX^W4L(COMP,GLC)
 S $P(ST,"~",58)=FAX
 S $P(ST,"~",59)=$$TEL^W4L(COMP,GLC)
 ;
 S @$$^W4TMPORD=ST
 Q
 ;
OUTCOMP(STAM)  ;
 I $$OUTCOMP^W3PRM Q $$OUTCOMP^W3PRM
 I $G(%ARG("OUTCOMP")) Q %ARG("OUTCOMP")
 I $$GETP^%W1PRM("OUTCOMP") Q $$GETP^%W1PRM("OUTCOMP")
 Q 0
 ;
CODE(STAM)  ;
 I $G(%ARG("CODE")) Q %ARG("CODE")
 I $$GETP^%W1PRM("CODE") Q $$GETP^%W1PRM("CODE")
 Q 0
 ;
SELSHAA ;
 W "<select id=""shaa"" >",!
 N I,SHAA S SHAA=$G(@$$^W4GL("W3PRM")@("OUTCOMPSHAA"))
 F I=1:1:$L(SHAA,";") D
 .W "  <option value="""_$P(SHAA,";",I)_""">"_$P(SHAA,";",I)_"</option>",!
 W " </select>",!
 Q

W3VLDADD
W3VLDADD(TXT) ; [ 06.01.22 15:29 ] [ 17.10.18 12:55 ] [ 07.01.08 17:02 ] 
 N LI,BG,PRT,PRA,BGA,SUMA,ER,CD,TST,TST1
 S LI=$$LI^W3HZMST(JB)
 I 'LI Q 1
 S TST=1
 I $$LVST^W3HZMST(JB,LI)=0 D
 .N CD S CD=$$CDST^W3HZMST(JB,LI)
 .I $$DD^W4EZA(CD)!$$DD^W4EZT(CD),$P(TXT,"~")=0 S TST=0
 ;
 S TST1=1 I 'TST S TST1=0
 I $$LVST^W3HZMST(JB,LI)=0,TST Q 1
 ;
 S BG=$$LASTI0^W3HZMST(JB)
 N STPAR S STPAR=$$LAST0^W3HZMST(JB) Q:STPAR="" 1
 S PRT=$P(STPAR,"~",2)
 ;
 D CRTMP^W3HZTSF(PRT,"^[$$^W3MAIN]VRMJB")
 ;
 S (PRA,BGA,SUMA,EQA)=0
 ;
 N GL S GL="^[$$^W3MAIN]VRMJB($$^%W1JB,3)"
 F I=1:1 Q:'$D(@GL@(I))  D  Q:'TST
 .N A S A=$G(@GL@(I))
 .S CD=$$CD^W3TMPTF(A)
 .I $E(CD)="A" D  Q
 ..I PRA,EQA,+SUMA'=+PRA S TST="0~"_BGA_"~"_SUMA_"~"_PRA_"~"_EQA
 ..S PRA=$$PR^W3TMPTF(A),BGA=I,SUMA=0,EQA=$$EQ^W3TMPTF(A)
 .
 .I PRA S SUMA=SUMA+$$VALADD^W3HZTSF(CD)
 ;
 D PUT^%W3DEB("W3VLDADD","TST=TST")
 I PRA,EQA,+SUMA'=+PRA S TST="0~"_BGA_"~"_SUMA_"~"_PRA_"~"_EQA
 I PRA,'EQA,SUMA>PRA S TST="0~"_BGA_"~"_SUMA_"~"_PRA_"~"_EQA
 I TST,'TST1 S TST=0
 I TST="" S TST=0
 D PUT^%W3DEB("W3VLDADD","TST=TST")
 Q TST
 
 

W3VLDDT
W3VLDDT(DAT) ; [ 18.03.13 12:17 ] [ 12.11.10 13:00 ] [ 28.09.08 06:59 ]
 N MSD S MSD=$$GET^%W1PRM("MSD") I '$G(MSD) Q 1
 N DTN,DTNDP,DT1234,DT5,DT6,DT7,I
TV S DTN=$$^%L1DC(DAT,8)
 S ER=0
 F I=1:1:7 D
 .S @("DT"_I_"=$$DP"_I_"^W3R(MSD)")
 .I @("DT"_I)="",DTN=I S ER=-I
 .I @("DT"_I)="00:00:00-00:00:00",DTN=I S ER=-I
 .I @("DT"_I)="00:00-00:00",DTN=I S ER=-I
 I ER<0 Q ER
 I $$^%L1DC(DAT,3)<$H Q -8
 S @("DTNDP=$$DP"_DTN_"^W3R(MSD)")
 N DP2 S DP2=$P(DTNDP,"-",2)
 I $$^%L1DC(DAT,3)=+$H,$P($H,",",2)>(DP2*3600+$P(DP2,":",2)*60) Q -8
 N CNT S CNT=$$COUNTRY^W3R(MSD)
 I $L(CNT),$D(^[$$^W3MAIN]HAG(CNT,$$^%L1DC(DAT,3))) Q -9
 I $D(@$$^W4GL("HAG")@($$^%L1DC(DAT,3))) Q -9
 Q 1

W3VLDHD
W3VLDHD ; [ 09.01.25 10:56 ] [ 18.05.24 14:39 ] [ 26.12.23 12:31 ] 
 ;
 D ^%W1JS
 D TBLSEL^%W1JS
 ;
 W "</script>",!
 W "<script>",!
 W "function ValidateHD()",!
 W "{ var a; ",!
 F I="NMB","PELE","NAME","STREET","CITY","HOME","FLOOR","ENTRANCE","COMP","COMMENT" D
 .I I="CITY" W " var CITY=ClrCity();",! Q
 .I I="STREET" W " var STREET=ClrStreet();",! Q
 .W " var "_I_"=ClearFld('"_I_"');",!
 W !
 I $$^%W1LNG="H" D
 .I '$$^W4DLVCSR,'$$CALLCENTER D
 ..;;W " if (BDIKA('NMB','PHONE',7,'TEL-M')===false) {return false;}",! ; 18/05/23 --> COMMENT
 .W " if (BDIKA('PELE','PELE',10,'TEL')===false) {return false;}",!
 W " if (BDIKA('NAME','NAME',2,'TX-M')===false) {return false;}",!
 W " if (CITY !== 'TAKEAWAY' && CITY !== 'TAW') ",!
 W "  {",!
 W "    if (BDIKA('STREET','STREET',2,'-M')===false) {return false;}",!
 W "    if (BDIKA('HOME','HOME','1-4','NA"_$S($$NOMUSTHOME^W3PRM:"",1:"-M")_"')===false) {return false;}",!
 W "    if (BDIKA('FLAT','FLAT','1-4','N')===false) {return false;}",!
 I $$MUSTFLOOR^W3PRM D
 .W "    if (BDIKA('FLOOR','FLOOR','1-6','-M')===false) {return false;}",!
 I '$$POLYGON^W4PRM D
 .W "    if (BDIKA('CITY','CITY',2,'TX-M')===false) {return false;}",!
 I $$MUSTCOMP^W3PRM D
 .W "    if (BDIKA('COMP','COMPANYNAME',2,'TX-M')===false) {return false;}",!
 I $G(%ARG("PWRLNK")) D
 .W "    if (BDIKA('MKRNOM','MKRNOM',2,'-M')===false) {return false;}",!
 W "  }",!
 W !
 W "return true",!
 W "}",!
 W !
 Q
SUBMIT ;
 W "<input type=""submit"" style=""width:"_$S($$^%W1LNG="H":"100%",1:"87%")_""" value="""_$$^%W1DICT("SUBMIT")_""" id=""ACN"" style=""color:green"" />",!
 Q
 ;
CALLCENTER(STAM) ;
 I $G(%ARG("CALLCENTER")) Q %ARG("CALLCENTER")
 Q +$$GETP^%W1PRM("CALLCENTER")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3VLDMSD
W3VLDMSD ; [ 12.02.25 14:04 ] [ 23.06.08 15:06 ] [ 28.04.08 19:35 ] 
 ;
 D ^%W1JS
 D TBLSEL^%W1JS
 ;
 W "</script>",!
 W "<script>",!
 W "function ValidateHD()",!
 W "{ var a; ",!
 F I="NMB","PELE","NAME","STREET","CITY","HOME" D
 .W " var "_I_"=ClearFld('"_I_"');",!
 W !
 W " if (BDIKA('NMB','PHONE',7,'TEL-M')===false) {return false;}",!
 W " if (BDIKA('PELE','PELE',10,'TEL')===false) {return false;}",!
 W " if (BDIKA('NAME','NAME',2,'TX-M')===false) {return false;}",!
 W " if (CITY !== 'TAKEAWAY') ",!
 W "  {",!
 ;;W "    if (BDIKA('STREET','STREET',2,'-M')===false) {return false;}",! ; -- 12/02/25
 W "    if (BDIKA('HOME','HOME','1-5','NA-M')===false) {return false;}",!
 W "    if (BDIKA('CITY','CITY',2,'TX-M')===false) {return false;}",!
 W "  }",!
 W !
 W "return true",!
 W "}",!
 W !
 Q
 

W3VLDRG
W3VLDRG ; [ 08.01.14 22:32 ] [ 29.05.11 20:16 ] [ 16.12.07 22:33 ]
 W "function ValidateRG()",!
 W "{ var a;",!
 W " var fld;",!
 W " var fl;",!
 F I="CODE","PSW","EMAIL" D
 .W " var "_I_"=ClearFld('"_I_"');",!
 ;
 I '$$^W4SMALL F I="FAX" D
 .W " var "_I_"=ClearFld('"_I_"');",!
 ;
 W " if (PSW.indexOf(""~"")>-1) { PSW=Parse(PSW,""~"",2,2) ;}",!
 ;;W " alert ('PSW2='+PSW)",!
 W !
 W " if (BDIKA('CODE','USERCODE','4-11','N-M')===false) {return false;}",!
 ;;W " alert('W3VLDRG-1')",!
 W " if (BDIKA('PSW','PASSWORD','4-10','-M')===false) {return false;}",!
 ;;W " alert('W3VLDRG-2')",!
 W " if (BDIKA('EMAIL','EMAIL','7','EM-M')===false) {return false;}",!
 ;;W " alert('W3VLDRG-3')",!
 I '$$^W4SMALL W " if (BDIKA('FAX','FAX','7','TEL')===false) {return false;}",!
 ;;W " alert('W3VLDRG-4')",!
 W !
 W " if (ValidateHD() === false) { return false; }",!
 ;;W " alert('W3VLDRG-5')",!
 W !
 W "return true;",!
 W "}",!
 Q
SUBMIT ;
 W "<input type=""submit"" value="""_$$^%W1DICT("SUBMIT")_""" style=""color:green"" />",!
 Q

W3VLDRGM
W3VLDRGM ; [ 05.11.15 11:44 ] [ 08.01.14 22:44 ] [ 04.05.08 18:29 ]
 W "function ValidateRG()",!
 W "{ var a;",!
 W " var fld;",!
 W " var fl;",!
 F I="CODE","PSW","EMAIL","FAX" D
 .W " var "_I_"=ClearFld('"_I_"');",!
 ;;W " alert ('PSW1='+PSW)",!
 W " if (PSW.indexOf(""~"")>-1) { PSW=Parse(PSW,""~"",2,2) ;}",!
 ;;W " alert ('PSW2='+PSW)",!
 W !
 W " if (BDIKA('CODE','USERCODE','1-11','N-M')===false) {return false;}",!
 ;;W " if (BDIKA('PSW','PASSWORD','4-10','-M')===false) {return false;}",!
 W " if (BDIKA('EMAIL','EMAIL','7','EM-M')===false) {return false;}",!
 ;;W " alert('W3VLDRGM-3')",!
 W " if (BDIKA('FAX','FAX','7','TEL')===false) {return false;}",!
 ;;W " alert('W3VLDRGM-4')",!
 W !
 W " if (ValidateHD() === false) { return false; }",!
 W !
 W "return true;",!
 W "}",!
 Q
SUBMIT ;
 W "<input type=""submit"" value="""_$$^%W1DICT("SUBMIT")_""" style=""color:green"" />",!
 Q

W3VLDTM
W3VLDTM(DAT,SHAA) ; [ 21.06.20 11:36 ] [ 16.06.20 14:32 ] [ 17.10.18 12:55 ] 
 N MSD S MSD=$$GET^%W1PRM("MSD") I '$G(MSD) Q 1
 G TV
 ;
TV0(DAT,SHAA) ;
TV N HRN,DTN,DIAP,DP1,DP2
 S HRN=SHAA
 S DP1=$$DP1(MSD,DAT)
 S DP2=$$DP2(MSD,DAT)
 I HRN<6,DP2<DP1 S HRN=HRN+24
 I DP2<DP1 S DP2=DP2+24
 ;
 I $$MIN(HRN)'<$$MIN(DP2),+$$^%L1DC(DAT,3)=+$H Q -3 ; ??
 ;;I +$$^%L1DC(DAT,3)=+$H,MSD=1!(MSD=99999),$$^%L1DC($H,8)=6 Q -3
 I +$$^%L1DC(DAT,3)=+$H,$D(@$$^W4GL("HAG")@(+$H)) Q -3
 ;
 I $$MIN(HRN)<$$MIN(DP1) Q -2 ; < BEG
 I $$^%L1DC(DAT,3)<$H Q -4
 ;
 N RES S RES=1 I +$$^%L1DC(DAT,3)=+$H D  Q RES
 .I $$MIN(HRN)<$$MIN($$T^%L1TIME($H)) S RES=-1 Q
 .I '$G(JB) Q
 .I '$D(^[$$^W3MAIN]TMPORD(JB)) Q
 .S CITY=$$CITY^W3HZMST(JB) Q:CITY=""  Q:$TR(CITY," ","")="TAKEAWAY"
 .I $D(@$$^W4GL("P1IR")) D
 ..N OK,N S OK=0
 ..S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  Q:OK  D
 ...I ^(N)=CITY S OK=1
 ..Q:'OK
 .S TM=$$^W3TIME($H,CITY)
 .;;I HRN*3600+($P(HRN,":",2)*60)+300<$P(TM,",",2) S RES=-1
 Q 1
 ;
DIAP(MSD,DAT) ;
 N DTN,DIAP
 S DTN=$$^%L1DC(DAT,8),DIAP=""
 I DTN=1 S DIAP=$P($$1^W3MSDG(MSD),"~",4)
 I DTN=2 S DIAP=$P($$1^W3MSDG(MSD),"~",28)
 I DTN=3 S DIAP=$P($$1^W3MSDG(MSD),"~",29)
 I DTN=4 S DIAP=$P($$1^W3MSDG(MSD),"~",30)
 I DTN=5 S DIAP=$P($$1^W3MSDG(MSD),"~",5)
 I DTN=6 S DIAP=$P($$1^W3MSDG(MSD),"~",6)
 I DTN=7 S DIAP=$P($$1^W3MSDG(MSD),"~",7)
 S DIAP=$TR(DIAP," ","")
 Q DIAP
 ;
DP1(MSD,DAT)
 N DP1
 S DP1=$P($$DIAP(MSD,DAT),"-",1)
 I +DP1=24 S DP1="00:00"
 Q DP1
 ;
DP2(MSD,DAT)
 N DP2
 S DP2=$P($$DIAP(MSD,DAT),"-",2)
 I +$$DIAP(MSD,DAT)=24 Q "24:00"
 I +DP2=24 Q "24:00"
 ;
 I '$D(@$$^W3ORD(JB)@(JB)),$D(@$$^W3TMPORD@(JB)),$$GET^%W1PRM("MSD")=1,$$DLVWEB^W4DLVCSR!$$ONLINE^W4DLVCSR D
 .N OKHRZ S OKHRZ=0
 .N GLORD S GLORD=$$^W3TMPORD
 .;;D BDKSTR^W3AN2ASK(JB)
 .I $TR($$CITY^W3HZMST(JB),"-"," ")'="aia` lz"!$G(OKHRZ) Q
 .S DP2=DP2*60+$P(DP2,":",2) ;;-120
 .S DP2=$$MIN2HR^%L1FRM(DP2)
 Q DP2
 ;
MIN(TIME) ;
 Q TIME*60+$P(TIME,":",2)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W3VW10B
W3VW10B ; [ 01.07.10 11:34 ] [ 10.11.09 10:00 ] [ 09.11.09 20:49 ] [
 S DT=$$^%L1DC(DAT,3)
 S FIRST1=1
 S FIRST2=1
 K @$$^W4MAIN("TMPS111") S I=0
 K @$$^W4MAIN("S10")
 K @$$^W4MAIN("S11")
 K @$$^W4MAIN("S12")
 K @$$^W4MAIN("S13")
 ;
 D TMPBISA
 ;
 I HZ10B D SHOWORD(HZ10B)
 ;
 I 'HZ10B,SUM D
 .S ORDER="" K MORD
 .S N="" F  S N=$O(@TMPBISA@(DT,N)) Q:N=""  D
 ..S N1="" F  S N1=$O(@TMPBISA@(DT,N,1,N1)) Q:N1=""  D
 ...S ST=$G(^(N1))
 ...I ST[("<OrderID>") S ORDER=$$VL(ST,"OrderID")
 ...I ST["<TotalSum>",+$$VL(ST,"TotalSum")=+SUM,ORDER,'$D(MORD(ORDER)) D SHOWORD(ORDER) S MORD(ORDER)=""
 ;
 Q
 ;
SAVEHD ;
 N N2,N3,I,LASTHD,LASTHD2,ENDHD,M
 S LASTHD=0,LASTHD2=0,I=0
 D TMPBISA
 ;
 I FIRST1 D  D HD Q
 .K ^S10($J)
 .F N2=N1:-1:0 Q:$G(@TMPBISA@(DT,N,1,N2))["<OrderLineElement"
 .Q:'N2
 .S ENDHD=0
 .F N3=N2:1 Q:'$D(@TMPBISA@(DT,N,1,N3))  S:^(N3)["</OrderLineElement" ENDHD=1  D  Q:ENDHD
 ..S I=I+1,^S10($J,I)=$G(@TMPBISA@(DT,N,1,N3))
 .S LASTHD=I
 ;
 K ^S11($J)
 D
 .F N2=N1:-1:0 Q:$G(@TMPBISA@(DT,N,1,N2))["<OrderLineElement"
 .Q:'N2
 .S ENDHD=0
 .F N3=N2:1 Q:'$D(@TMPBISA@(DT,N,1,N3))  S:^(N3)["</OrderLineElement" ENDHD=1  D  Q:ENDHD
 ..S I=I+1,^S11($J,I)=$G(@TMPBISA@(DT,N,1,N3))
 .S LASTHD2=I
 ;
 N EQ S EQ=1 K M
 F I=1:1 Q:'$D(^S10($J,I))  D
 .I ^S10($J,I)'=$G(^S11($J,I)) S EQ=0,M(I)=""
 F I=1:1 Q:'$D(^S11($J,I))  D
 .I ^S11($J,I)'=$G(^S10($J,I)) S EQ=0,M(I)=""
 ;
 I 'EQ,LASTHD2>20 D
 .K ^S10($J)
 .M ^S10($J)=^S11($J)
 .D HD
 Q
 ;
SAVECONT ;
 N N2,N3,I,LASTCN,LASTCN2,ENDCN,M
 S LASTCN=0,LASTCN2=0,I=0
 S BG="GetSingleOrderResponseMsg"
 D TMPBISA
 I FIRST2 D  D CN Q
 .K ^S12($J)
 .F N2=N1:-1:0 Q:$G(@TMPBISA@(DT,N,2,N2))[("<"_BG)
 .Q:'N2
 .S ENDCN=0
 .F N3=N2:1 Q:'$D(@TMPBISA@(DT,N,2,N3))  S:^(N3)[("</"_BG) ENDCN=1  D  Q:ENDCN
 ..S I=I+1,^S12($J,I)=$G(@TMPBISA@(DT,N,2,N3))
 .S LASTCN=I
 ;
 K ^S13($J)
 D
 .F N2=N1:-1:0 Q:$G(@TMPBISA@(DT,N,2,N2))[BG
 .Q:'N2
 .S ENDCN=0
 .F N3=N2:1 Q:'$D(@TMPBISA@(DT,N,2,N3))  S:^(N3)[("</"_BG) ENDCN=1  D  Q:ENDCN
 ..S I=I+1,^S13($J,I)=$G(@TMPBISA@(DT,N,2,N3))
 .S LASTCN2=I
 ;
 N EQ S EQ=1 K M
 F I=1:1 Q:'$D(^S12($J,I))  D
 .I ^S12($J,I)'=$G(^S13($J,I)) S EQ=0,M(I)=""
 F I=1:1 Q:'$D(^S13($J,I))  D
 .I ^S13($J,I)'=$G(^S12($J,I)) S EQ=0,M(I)=""
 ;
 I 'EQ,LASTCN2>20 D
 .K ^S12($J)
 .M ^S12($J)=^S13($J)
 .D CN
 Q
HD ;
 N I
 S ^TMPS111($J,$$IND)=""
 S ^TMPS111($J,$$IND)=""
 S ^TMPS111($J,$$IND)=$TR($J("",20)," ","=")_"   ORDER "_ORDER_" HEADER ("_N_")   "_$TR($J("",20)," ","=")
 F I=1:1 Q:'$D(^S10($J,I))  D
 .N IND S IND=$$IND
 .S ^TMPS111($J,IND)=$TR(^S10($J,I),TSS,TS0) D
 .I $D(M(I)) S ^TMPS111($J,IND)="*"_^TMPS111($J,IND)
 Q
CN ;
 N I
 S ^TMPS111($J,$$IND)=$TR($J("",20)," ","-")_"  ORDER "_ORDER_" CONTENT ("_N_")   "_$TR($J("",20)," ","-")
 F I=1:1 Q:'$D(^S12($J,I))  D
 .N IND S IND=$$IND
 .S ^TMPS111($J,IND)=$TR(^S12($J,I),TSS,TS0) D
 .I $D(M(I)) S ^TMPS111($J,IND)="*"_^TMPS111($J,IND)
 Q
IND(STAM) Q $O(^TMPS111($J,999999),-1)+1
 ;
VL(ST,RKV) ;
 Q $TR($P($P(ST,"<"_RKV_">",2),"</")," ","")
 ;
SHOWORD(ORDER) ;
 N N,N1
 S N="" F  S N=$O(@TMPBISA@(DT,N)) Q:N=""  D
 .S N1="" F  S N1=$O(@TMPBISA@(DT,N,1,N1)) Q:N1=""  D
 ..S ST=$G(^(N1))
 ..I ST[("<OrderID>"_ORDER_"<") D SAVEHD S FIRST1=0 Q
 .S N1="" F  S N1=$O(@TMPBISA@(DT,N,2,N1)) Q:N1=""  D
 ..S ST=$G(^(N1))
 ..I ST[("<OrderID>"_ORDER_"<") D SAVECONT S FIRST2=0 Q
 Q  ;
 ;
TMPBISA ;
 S TMPBISA="^[$$^W3MAIN]TMPBISA"
 Q

W3ZAPAR
W3ZAPAR(PRM) ; [ 30.05.16 13:13 ] [ 18.03.16 18:32 ] [ 12.05.14 16:05 ] 
 N (JB,%ARG,%REM,PRM)
 N DAT,DT,IND,NP,A
 S DAT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S DT=$$^%L1DC(DAT,3)
 N Z D Z
 I DT=""!(IND="") Q
 ;
 I $D(@ZP@(DT,IND))<10 D  Q
 .W "<script>",!
 .W " MsgA(""NODATA!"")",!
 .W "</script>",!
 ;
 N ZPR S ZPR=$G(@Z@(DT,IND))
 I ZPR["B" D  Q
 .S %SCRN="W4TOT"
 .I ZPR["L" S %SCRN="W4TOTLKH"
 .M @$$^W4MAIN("TMPREP")=@Z@(DT,IND)
 .D KOTZ^W4DMANY($ZD(DT,"DD.MM.YY"),IND)
 .D ^%W1FREP(%SCRN)
 ;
 S PRZ=0,PRZM=0,PRY=0
 W "<table dir="""_$$^%W1DIR_""">",!
 S NP="" F  S NP=$O(@Z@(DT,IND,NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .N ALG S ALG=$$^%W1ALIGN
 .I A["- Z -" S PRZ=1,PRZM=1,PRY=0
 .I A[" g""ec",A'["zexikn",A'["mei zxibq",A'="zelaw",A'="dxibn" S PRZM=0
 .I A["- Y -" S PRY=1
 .I (A["- X -") S PRY=0
 .I A["- Y -"!(A["- X -") S PRZ=0
 .I A["- Z -"!(A["- Y -")!(A["- X -") S ALG=" align=""center"" "
 .I $G(%ARG("OPT"))="ZONLY",'PRZ Q
 .I $G(%ARG("OPT"))="ZMANY",'PRZ!'PRZM Q
 .I $G(%ARG("OPT"))="YONLY",'PRY Q
 .S STYLE=" style="""
 .I A["- X -"!(A["- Y -")!(A["- Z -")!(A["g""ec") S STYLE=STYLE_"font-weight:bold"
 .S STYLE=STYLE_""""
 .W "<tr><td "_ALG_" "_STYLE_" >"_$$H2U^%L1FRM(A)_"</td></tr>",!
 W "</table>",!
 ;
 Q
 ;
SELOPT ;
 W "<select id=""selopt"" dir="""_$$^%W1DIR_""">",!
 W " <option value=""ALL"">"_$$^%W1DICT("SHOWALLREPORTS")_"</option>",!
 W " <option value=""ZONLY"">"_$$^%W1DICT("SHOWZONLY")_"</option>",!
 W " <option value=""ZMANY"">"_$$^%W1DICT("SHOWZMANY")_"</option>",!
 W " <option value=""YONLY"">"_$$^%W1DICT("SHOWYONLY")_"</option>",!
 W "</select>",!
 Q
 ;
SELDAT ;
 N Z,DT,IND D Z
 W "<select id=""DAT"" dir="""_$$^%W1DIR_""">",!
 S DT="" F  S DT=$O(@Z@(DT),-1) Q:DT=""  D
 .S IND="" F  S IND=$O(@Z@(DT,IND),-1) Q:IND=""  D
 ..S A=$ZD(DT,"DD.MM.YY")_"&nbsp;&nbsp;&nbsp;"_$$H2U^%L1FRM($$^%L1DC(DT,9))_"'&nbsp;&nbsp;&nbsp;"_IND
 ..W " <option value="""_DT_";"_IND_""" "
 ..I $G(%ARG("IND"))=IND W " selected=""selected"" "
 ..W ">" W A
 ..W " </option>",!
 W "</select>",!
 Q
 ;
Z ;
 S Z=$$^W4GL("Z")
 Q
 ;
PRINT(PRM) ;
 D ^W4MDPPC
 N DAT,DT,IND,OPT,NP,A
 S DAT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S OPT=$P(PRM,";",3)
 S DT=$$^%L1DC(DAT,3)
 N Z D Z
 I DT=""!(IND="") Q
 ;
 S TXT=$G(%MDP("B"))_"!!! wzrd "_$G(%MDP("N")) D S1^W4PCST
 S TXT=$ZD($H,"DD/MM/YY  24:60")_" : dqtcd onf" D S1^W4PCST
 S TXT="" D S1^W4PCST
 ;
 D PRINTZ(DT,IND,OPT)
PRINTE Q
 ;
PRINTZ(DT,IND,OPT)
 ;N NP,TXT
 ;S NP="" F  S NP=$O(@Z@(DT,IND,NP)) Q:NP=""  D
 ;.S TXT=$G(^(NP))
 ;.D S1^W4PCST
 S PRZ=0,PRZM=0,PRY=0
 S NP="" F  S NP=$O(@Z@(DT,IND,NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .I A["- Z -" S PRZ=1,PRZM=1
 .I A[" g""ec",A'["zexikn",A'["mei zxibq",A'="zelaw",A'="dxibn" S PRZM=0
 .I A["- Y -"!(A["- X -") S PRZ=0
 .I A["- Z -"!(A["- X -") S PRY=0
 .I OPT="ZONLY",'PRZ Q
 .I OPT="ZMANY",'PRZ!'PRZM Q
 .I OPT="YONLY",'PRY Q
 .S TXT=A D S1^W4PCST
 Q
 ;
PRINTCSR(STAM) ;
 N DAT,DT,IND,Z,PRM
 S PRM=$G(%ARG("DAT"))
 S DAT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S DT=$$^%L1DC(DAT,3)
 I 'DT!'IND Q 0
 D Z
 I $G(@Z@(DT,IND))["B" Q 0
 I $$^W4LKH,'$$DOCCSR^W4LKHCSR Q 0
 Q 1
 
 
 
 
 

W4ABC
W4ABC(TXT) ; [ 07.04.26 04:34 ] [ 23.03.26 15:16 ] [ 22.03.26 01:52 ] 
 N (JB,%ARG,%REM,TXT)
 D PUT^%W3DEB("W4ABC","%ARG=[%ARG & TXT=TXT")
 D DEF
 ;
 ;;I $$CSRMOUSE^W4PRM,'$$INPCODE^W4PRM D PUT^%W1PRM("VIRTKB",1)
 I $$CSRMOUSE^W4PRM D PUT^%W1PRM("VIRTKB",1)
 ;
 S VL=$$CNWEB^%L1FRM($G(%ARG("VL")))
 I $$NOCAPS S %ARG("CAPS")=1 D PUT^%W1PRM("ABCCAPS",1)
 I $G(%ARG("CAPS")),$$GETP^%W1PRM("ABCCAPS") S VL=VL_" "
 I VL["[CL]" D
 .S VL=$$RPL^%L1FRM(VL,"[CL]","")
 .S VL=$$INVH^%L1FRM(VL)
 ;
 I VL="",$G(%ARG("SHID"))["LV0",$P(TXT,"~")=0 D
 .N STID,TXT1 S STID=%ARG("SHID")
 .S TXT1=$$TXTNEXT^W4HZORD(STID)
 .I $P(TXT1,"~",2)["-C" S VL=$P(TXT1,"~",3,3)
 ;
 I '$G(%ARG("CAPS")),$G(%ARG("TXT"))?1N1"~"1N.E,$G(%ARG("SHID"))["LV",VL'="" D
 .I $E(VL)'=";" D
 ..I $$HB S VL=" ; "_VL Q
 ..S VL=VL_" ; "
 ;
 S VL=$$H2U^%L1FRM(VL)
 ;
 S TXT=$$CNWEB^%L1FRM(TXT)
 S HD=$P(TXT,"~",3)
 I $E(HD)="<" S HD=$$^%W1DICT($E(HD,2,50))
 ;
 I HD="",$P(TXT,"~",2) D
 .N PAR S PAR=$P(TXT,"~",2)
 .S HD=$$SHEM^W4P(PAR)
 ;
 I HD="" S HD=$$^%W1DICT("COMMENT")
 ;
 D KB(MAXL,VL)
 Q
 ;
 ;
KB(MAXL,VL) ;
 D PUT^%W3DEB("W4ABC","MAXL=MAXL & VL = VL")
 D NOSELECT^%W1JS
 N SZ S SZ="36"
 I $G(%ARG("SZ")) S SZ=$G(%ARG("SZ"))
 N FSZ S FSZ=12+($$1700^W4WDSCR*6)
 I $G(%ARG("FSZ")) S FSZ=$G(%ARG("FSZ"))
 W "<div align=""center"" id=""kbid"" dir="""_$$^%W1DIR_""">",!
 ;
 I $G(%ARG("TAW")) D TAWBUT
 ;
 W "<table dir="""_$$^%W1DIR_""" width="""_(75+($$1700^W4WDSCR*12))_"%"">",!
  W "<tr><td align=""center"" class=""rkvhd"" >"_$$H2U^%L1FRM($G(HD))_"</td></tr>"
  W "<tr>"
   W "<td>"
    W "<input type=""text"" class=""rkv"" id=""rkvid"""
      W " dir="""_$$^%W1DIR_""""
      W " size="""_SZ_""" maxlength="""_MAXL_""""
      W " value="""_$G(VL)_""""
      W " onKeyUp=""KeyLetter(event)"" "
      W " onclick=""ClickRkv(this)"" "
      I $$^W4TBTABC D
      .W " readonly=""readonly"" "
      W " style=""font-size:"_$$^W3FSZ(FSZ)
      W """"
      W " />"
   W "</td>"
  W "</tr>",!
  ;
  I $$^W4TABLET'=1 W "<tr><td>&nbsp;</td></tr>",!
  ;
  N SZ S SZ=50 I $$^W4TABLET=2 S SZ=60
  W "<tr "_$$HEIGHT(HGTR)_" >"
   W "<td align=""center"">"
   ; 
   W "<table dir="""_$$^%W1DIR_""" cellspacing=""0"" width=""100%"" height=""100%"" ><tr>"
   D
    .W "<td>"
    . W "<input type=""button"" class=""rkvhd"" style=""color:green;"_$$STLBUT_""" value="""_$$^%W1DICT("SUBMIT")_""" "_$$^W4TOUCH_"=""Sbm()"" >"
    .W "</td>"
   ;
    W "<td align=""center"">"
     W "<input type=""button"" width=""100%"" class=""rkvhd"" style=""color:red;"_$$STLBUT_"""  value="""_$$^%W1DICT("ERASETXT")_""" "_$$^W4TOUCH_"=""EraseTxt()"" >"
    W "</td>"
   ; 
    I '$G(%ARG("NOBACK")) D
    .W "<td>&nbsp;</td>",!
    .W "<td align=""center"">"
    . W "<input type=""button"" class=""rkvhd"" style=""color:red;"_$$STLBUT_""" value="""_$$^%W1DICT("BACK")_""" "_$$^W4TOUCH_"=""Cnc()"" >"
    .W "</td>"
    ;
    W "</tr></table>"
   W "</td>"
  W "</tr>",!
  ;
  ;;W "<tr><td>&nbsp;</td></tr>",!
  ;
  D KBABC
  ;
  W "</table>",!
  W "</div>",!
  Q
  ;
  ;
KBABC ;
  N CELLSPC S CELLSPC=$S($$1024^W4WDSCR:3,1:7)
  I $G(%ARG("CELLSPC")) S CELLSPC=$G(%ARG("CELLSPC"))
  I $$^W4SMALL!($$^W4TABLET=1&'$G(@$$^W4PRM@("TABLETABC")))!($$^W4TABLET=2) Q
  I $$W1^W6ARG,'$G(%ARG("ABC")) D  Q
  .W "<tr>"
  . W "<td style=""text-align:center;color:red;font-weight:bold"" >"
  .  W $$^%W1DICT("TOVIEWVIRTKBPRESSONFIELD")
  . W "</td>"
  .W "</tr>",! 
  ;
  W "<tr >"
   W "<td align=""center"">"
    W "<table border=""0"" dir="""_$$^%W1DIR_""" ",!
     W " width=""100%"" "
     ;;W " cellpadding="""_$$^W4KF(CELLSPC)_""" "
     W " cellspacing="""_$$^W4KF(CELLSPC)_""" "
    W ">",!
     S K=0,W4ABC=""
     ;
     F I=1:1:4 D
     .W "<tr "_$$HEIGHT(HGTR)_" >",!
     .F J=1:1:10 D
     ..S K=K+1
     ..
     ..I I=4 D  S J=10 Q
     ...I '$$HB D
     ....I $$NOCAPS D 
     .....S SPAN=8 D DIGIT^W4KB(" ")
     .....S SPAN=1 D DIGIT^W4KB("C","","red","ClearDisplay()")
     ....I '$$NOCAPS D 
     .....S SPAN=3 D DIGIT^W4KB("CapsLock",1,"darkblue","CapsLock()")
     .....K SPAN S J=J+2
     .....S SPAN=6 D DIGIT^W4KB(" ")
     ....K SPAN S J=10 D DEL
     ...
     ...I $$HB D
     ....I LNG="E" D  Q
     .....D DEL
     .....I '$$NOCAPS D 
     ......S SPAN=2 D DIGIT^W4KB("Hebrew",1,"green","ToHebrew()")
     ......S SPAN=5 D DIGIT(" ") K SPAN
     .....I $$NOCAPS D 
     ......S SPAN=7 D DIGIT(" ") K SPAN
     .....D DIGIT("!")
     .....D DIGIT("'") S J=10
     ....; --- LNG="H"
     ....D DEL
     ....S SPAN=1 D DIGIT^W4KB("C","","red","ClearDisplay()")
     ....I '$$NOCAPS D 
     .....S SPAN=2 D DIGIT^W4KB("English",1,"green","ToEnglish()")
     .....S SPAN=4 D DIGIT(" ") K SPAN
     ....I $$NOCAPS D 
     .....S SPAN=6 D DIGIT(" ") K SPAN
     ....D DIGIT("!")
     ....D DIGIT("'") S J=10
     ..
     ..D LETTER(K,MAXL)
     .W "</tr>",!
    ;
     K SPAN
     I '$G(%ARG("NODIGIT")) D
     .W "<tr "_$$HEIGHT(HGTR)_" >"
     .I $$HB F J=9:-1:0 D
     ..D DIGIT(J)
     .I '$$HB F J=0:1:9 D
     ..D DIGIT(J)
     .W "</tr>",!
     .;
     .W "<tr "_$$HEIGHT(HGTR)_" >"
     .;;D DEL
     .;
     .D DIGIT("."),DIGIT(","),DIGIT("-"),DIGIT("/")
     .D DIGIT("("),DIGIT(")"),DIGIT("*"),DIGIT("%")
     .D DIGIT(":"),DIGIT(";")
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
 Q
 ;
 ;
LETTER(K,MAXL) ;
 W "<td class=""digit"" "
 D STYLE
 I '$D(ABC(K)) W ">&nbsp;</td>" Q
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';ClickLetter('"_ABC(K)_"',"_+$G(MAXL)_")"""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 W "&nbsp;&nbsp;&#"_ABC(K)_";&nbsp;&nbsp;"
 W "</td>"
 Q
 ;
DIGIT(K) ;
 N W4ABC S W4ABC=""
 D DIGIT^W4KB(K)
 Q
 ;
STYLE(COLOR) ;
 S COLOR=$G(COLOR)
 W "style=""" 
 D
 .N FSZ S FSZ=$S($$^W4SMALL:+$$^W3FSZ,$$^W4TABLET:22,1:20)
 .I $$1024^W4WDSCR S FSZ=FSZ-2
 .I $$GETP^%W1PRM("ABCLNG")="E" S FSZ=FSZ-2
 .I COLOR'="" W "color:"_$G(COLOR)_";"
 .W "font-size:"_FSZ_"pt"
 W """"
 Q
 ;
SBM(CMNT) ; -- CMNT = CMNT^SHID^LV^PRT
 D PUT^%W3DEB("W4ABC-SBM","CMNT=CMNT")
 N OK S OK=0
 N SHID S SHID=$P(CMNT,"^",2)
 I SHID="SRCH" Q 9
 ;
 N LV S LV=$P(CMNT,"^",3)
 N PRT S PRT=$P(CMNT,"^",4)
 S CMNT=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(CMNT,"^")))
 ;
 I SHID="CMHD" D  Q "CMHD"
 .D PUT^W3HZMST(JB,"CMHD",CMNT)
 ;
 N TMPORD D TMPORD^W4HZORD
 N LI
 I SHID["LV",$$SPA^%L1FRM(CMNT)="" S CMNT="[]"
 ;
 I $$GET^%W1PRM("SMALLHD"),SHID["LV0" D  Q "SMALLHD"
 .N LI S LI=+$P(SHID,"LV0",2)
 .N STLI S STLI=$G(@TMPORD@(LI)) Q:$P(STLI,"~")'=0
 .Q:'$L(CMNT)
 .N PRT S PRT=$P(STLI,"~",2)
 .I $D(@TMPORD@(LI+1)) D
 ..D ADD^%L1GSEQ(TMPORD,LI+1,"",1)
 .S @TMPORD@(LI+1)="1~"_PRT_"-C0~"_CMNT
 ;
 Q $$SETCMNT^W4CMNT("CMNT",CMNT,0,SHID,LV,PRT) ;
 ;
 ;
INIT D ^W4CSS
 I $G(%ARG("FIRST")) D KILL,CHKENG
 Q
KILL ;
 D KILL^%W1PRM("ABC")
 D KILL^%W1PRM("W4ABC")
 D KILL^%W1PRM("ABCLNG")
 D KILL^%W1PRM("ABCCAPS")
 Q
 ;
DEF ;
 K ABC
 S HGTR=40
 I $G(%ARG("HGTR")) S HGTR=%ARG("HGTR")
 S LNG=$$GETP^%W1PRM("ABCLNG")
 I LNG="" S LNG=$$^%W1LNG
 S CAPS=0
 I $$GET^%W1PRM("ABCCAPS") S CAPS=1
 I $$^%W1LNG="H",LNG="E" S CAPS=1
 ;
 I $G(@$$^W4PRM@("ABC")) D
 .I LNG="E",'CAPS D
 ..F I=97:1:122 S ABC(I-96)=I
 .I LNG="E",CAPS D
 ..F I=65:1:90 S ABC(I-64)=I
 .I LNG="H" D
 ..F I=1488:1:1514 S ABC(I-1487)=I
 .I LNG="R" D
 ..F I=1135:1:1166 S ABC(I-1134)=I
 ;
 I '$G(@$$^W4PRM@("ABC")) D
 .N I
 .I '$$HB D  Q
 ..I 'CAPS D 
 ...N ST S ST="qwertyuiop"
 ...S ST=ST_"asdfghjkl "
 ...S ST=ST_"zxcvbnm   "
 ...F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 ..I CAPS D 
 ...N ST S ST="QWERTYUIOP"
 ...S ST=ST_"ASDFGHJKL "
 ...S ST=ST_"ZXCVBNM  "
 ...F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 ..
 .I LNG="E",'CAPS D
 ..N ST S ST="poiuytrewq"
 ..S ST=ST_" lkjhgfdsa"
 ..S ST=ST_"   mnbvcxz"
 ..F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 .I LNG="E",CAPS D
 ..N ST S ST="POIUYTREWQ"
 ..S ST=ST_" LKJHGFDSA"
 ..S ST=ST_"   MNBVCXZ"
 ..F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 .I LNG="H" D
 ..S ST="tmoeh`xw  "
 ..S ST=ST_"sjlgirkbcy"
 ..S ST=ST_"uzvnpdaqf "
 ..F I=1:1:$L(ST) S ABC(I)=$S($E(ST,I)=" ":32,1:1392+$A(ST,I))
 ;
 S MAXLETTERS=$O(ABC(999),-1)
 S MAXL=36
 I $G(%ARG("MAXL")) S MAXL=%ARG("MAXL")
 Q
 ;
 ;
TAWBUT ;
 I $$^W4AIN Q
 N NMB S NMB=$$GETP^%W1PRM("NMB") Q:NMB=""
 I $$TAW^W4DLPK(NMB) Q
 N UR S UR=$P(TXT,"~") I UR Q
 N CD S CD=$P(TXT,"~",2) Q:CD=""
 I '$G(@$$^W4GL("PARTA")@(CD)) Q
 N STID S STID=$G(%ARG("SHID"))
 N NST S NST=+$P(STID,"LV0",2)
 N TAWCMNT,FLAG S TAWCMNT=$$^%W1DICT("TAWCMNT"),FLAG=1
 I $$CMST^W3HZMST(JB,NST)[$$TAWCMNT D
 .S TAWCMNT=$$^%W1DICT("NOTAWCMNT"),FLAG=0
 W "<input type=""button"" id=""tawbut"" value="""_TAWCMNT_"""  "
 W " "_$$^W4TOUCH_"=""TakeAway('"_STID_"','"_FLAG_"')"" "
 W "style=""color:green;font-size:"_$$^W3FSZ(16)_""" "
 W ">",!
 Q
 ;
TAWSET(PRM) ;
 N STID,ACT,NST
 D PUT^%W3DEB("W4ABC-TAWSET","PRM=PRM")
 S STID=$P(PRM,";") I STID'["LV0" Q
 S ACT=$P(PRM,";",2)
 S NST=+$P(STID,"LV0",2) Q:'NST
 N NMB S NMB=$$NMB^W3HZMST(JB)
 ;
 N LKHN,ZMANK S LKHN=$$LKHN^W3HZMST(JB)
 S ZMANK=$$DATCB^W3HZMST(JB)
 N PRMHNMB S PRMHNMB=NMB
 ;
 N CD S CD=$$CDST^W3HZMST(JB,NST)
 N LV S LV=$$LVST^W3HZMST(JB,NST)
 ;
 I ACT,$G(@$$^W4GL("PARTA")@(CD)) D  Q
 .N TAWABC S TAWABC=1
 .S $P(@$$^W4TMPORD@(NST),"~",4)=$$MH^W4P(CD)
 .S $P(@$$^W4TMPORD@(NST),"~",7)=$$TAWCMNT
 .
 .I '$$^W4EZAT(CD)!LV D
 ..N K F K=NST+1:1 Q:'$D(@$$^W4TMPORD(K))  Q:'$$LVST^W3HZMST(JB,K)  D
 ...N CDT S CDT=$$CDST^W3HZMST(JB,K) Q:'$$ISNUM^%L1FRM(CDT)
 ...S $P(@$$^W4TMPORD@(K),"~",4)=$$MH^W4P(CDT)
 ;
 I 'ACT D  Q
 .S $P(@$$^W4TMPORD@(NST),"~",4)=$$MH^W4P(CD)
 .S $P(@$$^W4TMPORD@(NST),"~",7)=""
 .I '$$^W4EZAT(CD)!LV D
 ..N K F K=NST+1:1 Q:'$D(@$$^W4TMPORD(K))  Q:'$$LVST^W3HZMST(JB,K)  D
 ...N CDT S CDT=$$CDST^W3HZMST(JB,K) Q:'$$ISNUM^%L1FRM(CDT)
 ...S $P(@$$^W4TMPORD@(K),"~",4)=$$MH^W4P(CDT)
 Q
 ;
 ;
TAWCMNT(STAM) ;
 I $G(@$$^W4PRM@("SHEML")) Q "[ TAKE AWAY ]"
 Q "["_$$TV^%W1DICT($$^%W1LNG,"TAWCMNT")_"]"
 ;
CHKENG ;
 I $$ABCENG^W4PRM D ^W4SETENG
 Q
CHECKER(TXT) ; 
 N (JB,%ARG,TXT)
 S HZM=$$GETP^%W1PRM("HZM") Q:'HZM
 S LAST=$O(@$$^W4ORD@(HZM,99999),-1)+1 
 S CD=$$CHECKERCD^W4PRM Q:'CD
 S NM=$$SHEM^W4P(CD)
 S @$$^W4ORD@(HZM,LAST)=CD_"\\"_NM_"\\1\\\"_TXT
 D ^W4HZM(HZM,JB)
 Q  
 ;
HB(STAM) ; 
 I $$^%W1LNG="H" Q 1 
 Q 0 
 ;
DEL ; 
  W "<td class=""digit"" "
  D STYLE("RED")
  W " "_$$^W4TOUCH_"=""DelLetter()"""
  W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
  W " onMouseDown=""this.style.backgroundColor='gray'"""
  W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';DelDigit()"""
  W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
  W " >Del</td>"
 Q
 ;
STLBUT(STAM) ; 
 Q "width:100%;height:100%;border:2px ridge lightgrey"
 ;
HEIGHT(HGTR) ; 
 I '$G(HGTR) S HGTR=40
 I $$^W4TABLET=1 S HGTR=HGTR-5
 Q "height="""_$$^W4KF(HGTR)_""" " 
 ;
NOCAPS() ; 
 Q $G(%ARG("NOCAPS")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ABCHNH
W4ABCHNH ; [ 01.04.25 15:22 ] [ 22.03.21 08:53 ] [ 10.08.17 17:54 ] 
 N (JB,%ARG,%REM)
 D DEF^W4ABC
 ;
 S HD=$$^%W1DICT("COMMENT")
 S VL=""
 D KB(MAXL,VL)
 Q
 ;
KB(MAXL,VL) ;
 D NOSELECT^%W1JS
 W "<div align=""center"" id=""kbid"" >",!
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
  W "<tr><td align=""center"" class=""rkvhd"" >"_$G(HD)_"</td></tr>"
  W "<tr>"
   W "<td align=""center"">"
    W "<input type=""text"" class=""rkv"" id=""rkvid"""
      W " dir="""_$$^%W1DIR_""""
      W " size=""36"" maxlength="""_MAXL_""""
      W " value="""_$G(VL)_""""
      W " onKeyPress=""OnKeyPress(event)"" "
      W " style=""font-size:"_$$^W3FSZ(14)
      W """"
      W " />"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr><td>&nbsp;</td></tr>",!
  ;
  W "<tr>"
   W "<td align=""center"">"
   W "<table dir="""_$$^%W1DIR_""" width=""100%""><tr>"
    W "<td>"
     W "<input type=""button"" class=""rkvhd"" style=""color:green;width:100%;height:100%"" value="""_$$^%W1DICT("SUBMIT")_""" "_$$^W4TOUCH_"=""Sbm()"" >"
    W "</td>"
    W "<td>&nbsp;</td>"
    W "<td align=""center"">"
     W "<input type=""button"" class=""rkvhd"" style=""color:red;width:100%;height:100%"" value="""_$$^%W1DICT("BACK")_""" "_$$^W4TOUCH_"=""Cnc()"" >"
    W "</td>"
    W "<td>&nbsp;</td>"
    W "<td align=""center"">"
     ;;W "<input type=""button"" width=""100%"" class=""rkvhd"" style=""color:red;width:100%;height:100%"" value="""_$$^%W1DICT("ERASETXT")_""" "_$$^W4TOUCH_"=""Sbm('NO')"" >"
     W "<input type=""button"" width=""100%"" class=""rkvhd"" style=""color:red;width:100%;height:100%"" value="""_$$^%W1DICT("ERASETXT")_""" "_$$^W4TOUCH_"=""EraseTxt()"" >"
    W "</td>"
    W "</tr></table>"
   W "</td>"
  W "</tr>",!
  ; 
  I $$^W4SMALL!($$^W4TABLET=2!($$^W4TABLET=1&'$G(@$$^W4PRM@("TABLETABC")))) G EKB
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""0"" dir="""_$$^%W1DIR_""" cellpadding="""_$$^W4KF(3)_""" width=""100%"" >",!
     S K=0
     F I=1:1:4 D
     .W "<tr "_$$HEIGHT_" >",!
     .F J=1:1:10 D
     ..S K=K+1
     ..I K<36 D LETTER(K)
     ..;;I K=36 D DIGIT("'")
     ..;;I K=37 D DIGIT("""")
     ..I K=36 S SPAN=5 D DIGIT(" ") K SPAN
     .W "</tr>",!
     ;;D DIGIT(".") D DIGIT(0)
     ;
     W "<tr "_$$HEIGHT_""">"
     S K=0
     F J=1:1:10 D
     .D DIGIT(K)
     .S K=K+1
     ;
     W "</tr>",!
     W "<tr "_$$HEIGHT_" >"
     W "<td class=""digit"" "_$$^W4TOUCH_"=""DelLetter()"""
     W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
     W " onMouseDown=""this.style.backgroundColor='gray'"""
     W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';DelDigit()"""
     W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
     W " style=""color:red"""
     W " >Del</td>"
     D DIGIT("."),DIGIT(","),DIGIT("-"),DIGIT("/")
     D DIGIT("("),DIGIT(")"),DIGIT("*"),DIGIT("%")
     D DIGIT(":")
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
 ;
  ;
EKB ;
 W "</table>",!
 W "</div>",!
 Q
 ;
LETTER(K) ;
 W "<td class=""digit"""
 I '$D(ABC(K)) W ">&nbsp;</td>" Q
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';ClickLetter('"_ABC(K)_"')"""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 W "&nbsp;&nbsp;&#"_ABC(K)_";&nbsp;&nbsp;"
 W "</td>"
 Q
 ;
DIGIT(K) ;
 D DIGIT^W4KB(K)
 Q
 ;
SBM(CMNT) ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 N OK S OK=0
 S CMNT=$$INVH^%L1FRM($$CLEAR^%L1FRM(CMNT))
 D SETCMHN^W4CMNHNH(HZM,CMNT)
 Q 1
 ;
NOCMNT(CMNT)
 I CMNT="NO"!(CMNT="") Q 1
 Q 0
 ;
HEIGHT(STAM) ; 
 Q " height="""_$$^W4KF(40)_""" " 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ABCIND
W4ABCIND(N,NM) ; [ 10.03.17 18:59 ] [ 28.02.17 07:25 ] [ 
 S NM=$$SPA^%L1FRM(NM)
 S NM=$$HBR^%L1FRM(NM,10)
 S NM=$$INV^%L1FRM(NM)
 Q NM_$TR($J(N,12)," ",0)
 
 

W4ABCKVZ
W4ABCKVZ ; [ 02.12.21 08:53 ] [ 18.05.21 14:39 ] [ 22.10.20 14:41 ] 
 N A,IND,N,J,TMPABC
 N GL S GL=$G(W4ABC("GL"))
 I GL="" S GL="PARSUG"
 S TMPABC=$$TMPABC
 N GLOB S GLOB=$$^W4GL(GL)
 I $E(GL,1,3)="TMP" S GLOB=$$^W4MAIN(GL)
 K @TMPABC
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  S A=$G(^(N)) D
 .I GL="PARSUG",'$$^W4VWGR(N),$D(W4ABC("NOHIDE"))!$G(%ARG("NOVWHIDE")) Q
 .D SETABC(A,N) 
 Q
 ;
TMPABC(STAM) ;
 Q $$^W4MAIN("TMPABC")
 ;
SETABC(A,N) ;
 N J,IND
 S A=$P(A,"**")
 S A=$TR(A,"0123456789-/.*,""';$&!() ","")
 S A=$$SPA^%L1FRM(A)
 S A=$$HBR^%L1FRM(A,10)
 S IND=$$INV^%L1FRM(A)
 F J=1:1 Q:'$D(@TMPABC@(IND_J))
 S IND=IND_J
 S @TMPABC@(IND)=N
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ABCN
W4ABCN(TXT) ; [ 16.04.26 11:29 ] [ 06.03.26 07:56 ] [ 05.03.26 14:10 ] 
 N (JB,%ARG,%REM,TXT)
 D PUT^%W3DEB("W4ABCN","%ARG=[%ARG & TXT=TXT")
 D ^%W1ARG
 S TYPKB=$G(TYPKB)
 I TYPKB="E" D ^W4SETENG
 D DEF
 ;
 S VL=$$CNWEB^%L1FRM($G(%ARG("VL")))
 I VL["[CL]" D
 .S VL=$$RPL^%L1FRM(VL,"[CL]","")
 .S VL=$$INVH^%L1FRM(VL)
 ;
 S VL=$$H2U^%L1FRM(VL)
 ;
 S TXT=$$CNWEB^%L1FRM(TXT)
 ;
 D KB(MAXL,VL)
 Q
 ;
 ;
KB(MAXL,VL) ;
 D PUT^%W3DEB("W4ABC","MAXL=MAXL & VL = VL")
 D NOSELECT^%W1JS
 N SZ S SZ="18"
 W "<div align=""center"" id=""kbid"" >",!
  ;
 W "<table dir="""_$$^%W1DIR_""" >",!
  ;
  I $G(TYPKB)'="N" D
  .D KBABC
  ;
  I $G(TYPKB)="N" D KBNUM
  ;
  W "</table>",!
  W "</div>",!
  Q
  ;
  ;
KBABC ;
  Q:$$^W4SMALL
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" dir="""_$$^%W1DIR_""" >",!
     S K=0,W4ABC=""
     F I=1:1:3 D
     .W "<tr>",!
     .F J=1:1:10 D
     ..S K=K+1
     ..I I=1,J=9 D CLOSE(2) Q
     ..I I=1,J=10 Q
     ..D LETTER(K,MAXL,SZF)
     .W "</tr>",!
     ;
     D BOTLINE($G(TYPKB))
    W "</table>",!
   W "</td>"
  W "</tr>",!
 Q
 ;
KBNUM ;
  Q:$$^W4SMALL
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" dir=""LTR"" >",!
     W "<tr>",!
     F J=1:1:10 D
     .S K=J#10
     .D DIGIT(K)
     W "</tr>",!
     ;
     W "<tr>"
      F K="?","@","$","%","/","&","*","(",")","-" D
      .D DIGIT(K)
     W "</tr>",!
     ;
     W "<tr>"
      F K=".",",",";",":","[","]","'","!","+","=" D
      .D DIGIT(K)
     W "</tr>",!
     ;
     W "<tr style=""background:lightblue;height:"_HG_"px"">"
      D DIGIT^W4KB($$H2U^%L1FRM("ba`"),1,"green","ToHebrew()",SZF)
      D
      .N SPAN S SPAN=2
      .D DIGIT^W4KB("ABC",1,"green","ToEnglish('1')",SZF)
      
      I $$^%W1LNG'="H" D
      .D DIGIT^W4KB("abc",1,"green","ToEnglish('0')",SZF)
      .D SPACE(1)
      ;
      D
      .N SPAN S SPAN=1
      .I $$NOUPDN S SPAN=SPAN+2
      .D CLOSE(SPAN)
      ;
 S SPAN=3
      D DIGIT^W4KB(" ",1,"","ClickLetter('32')")
      D DEL
      I '$$NOUPDN D
      .D UP
      .D DOWN
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  ;
 Q
 ;
 ;
LETTER(K,MAXL,FSZ) ;
 I '$G(FSZ) S FSZ=22 I $$1024^W4WDSCR S FSZ=16
 W "<td class=""digit"" "
 I $$^W4SMALL W "style=""font-size:"_$$^W3FSZ_""" "
 I '$$^W4SMALL W "style=""font-size:"_$$^W3FSZ(FSZ)_""" "
 I '$D(ABC(K)) W ">&nbsp;</td>" Q
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';ClickLetter('"_ABC(K)_"',"_+$G(MAXL)_")"""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 W "&nbsp;&nbsp;&#"_ABC(K)_";&nbsp;&nbsp;"
 W "</td>"
 Q
 ;
DIGIT(K) ;
 N W4ABC S W4ABC=""
 D DIGIT^W4KB(K,"","","",SZF)
 Q
 ;
DEL ;
  W "<td class=""digit"" "
   W "style=""font-size:"_$$^W4KF(22)_"pt;color:red"" "
  W " "_$$^W4TOUCH_"=""DelLetter()"""
  W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
  W " onMouseDown=""this.style.backgroundColor='gray'"""
  W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';DelDigit()"""
  W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
  W " style=""color:red"""
  W " >Del</td>"
 Q
 ;
UP ;
 D DIGIT^W4KB("Up",1,"","ABCNUp('"_$G(%ARG("K"))_"','"_$G(%ARG("SCRN"))_"')")
 Q
 ;
DOWN ;
 D DIGIT^W4KB("Down",1,"","ABCNDown('"_$G(%ARG("K"))_"','"_$G(%ARG("SCRN"))_"')")
 Q
 ;
CLR ;
 D DIGIT^W4KB("C",1,"red","ClearDisplay()")
 Q
 ;
SPACE(SPAN) ;
 I '$G(SPAN) S SPAN=2
 D DIGIT(" ")
 Q
 ;
CLOSE(SPAN) ;
 D DIGIT^W4KB($$^%W1DICT("CLOSE"),1,"red","Close()",SZF)
 Q
 ;
REG ;
 N SPAN
 I LNG'="E" D  Q
 .;;D DIGIT^W4KB("abc",1,"green","ToEnglish('0')",SZF) ; *** 01.11.22
 .;;N SPAN S SPAN=2; *** 01.11.22
 .D DIGIT^W4KB("ABC",1,"green","ToEnglish('1')",SZF)
 ;
 I $$^%W1LNG="H" D
 .D DIGIT^W4KB($$H2U^%L1FRM("ba`"),1,"green","ToHebrew()",SZF)
 ; 
 I $$^%W1LNG'="H" D
 .I '$$GETP^%W1PRM("ABCCAPS") D
 ..N SPAN S SPAN=2
 ..D DIGIT^W4KB("ABC",1,"green","ToEnglish('1')",SZF)
 .I $$GETP^%W1PRM("ABCCAPS") D DIGIT^W4KB("abc",1,"green","ToEnglish('0')",SZF)
 Q
 ;
INIT ;
 I $G(%ARG("FIRST")) D KILL
 D CHKENG^W4ABC
 Q
KILL ;
 D KILL^%W1PRM("ABCN")
 D KILL^%W1PRM("ABCLNG")
 D KILL^%W1PRM("ABCCAPS")
 D KILL^%W1PRM("ABCSEL")
 D KILL^%W1PRM("TYPKB")
 Q
 ;
DEF ;
 K ABC
 S LNG=$$GETP^%W1PRM("ABCLNG")
 I LNG="" S LNG=$$^%W1LNG
 S SZF=26
 I $$1024^W4WDSCR S SZF=$S(LNG="E":18,1:20)
 S HG=52
 I $$1024^W4WDSCR S HG=40
 S CAPS=0
 I $$GETP^%W1PRM("ABCCAPS") S CAPS=1
 ;;I $$^%W1LNG="H",LNG="E" S CAPS=1
 ;
 I $G(@$$^W4PRM@("ABC")) D
 .I LNG="E",'CAPS D
 ..F I=97:1:122 S ABC(I-96)=I
 .I LNG="E",CAPS D
 ..F I=65:1:90 S ABC(I-64)=I
 .I LNG="H" D
 ..F I=1488:1:1514 S ABC(I-1487)=I
 .I LNG="R" D
 ..F I=1135:1:1166 S ABC(I-1134)=I
 ;
 I '$G(@$$^W4PRM@("ABC")) D
 .N I
 .I LNG="E",'CAPS D
 ..N ST S ST="poiuytrewq"
 ..S ST=ST_" lkjhgfdsa"
 ..S ST=ST_"   mnbvcxz"
 ..F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 .
 .I LNG="E",CAPS D
 ..N ST S ST="POIUYTREWQ"
 ..S ST=ST_" LKJHGFDSA"
 ..S ST=ST_"   MNBVCXZ"
 ..F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 .
 .I LNG="H" D
 ..S ST="tmoeh`xw  "
 ..S ST=ST_"sjlgirkbcy"
 ..S ST=ST_"uzvnpdaqf "
 ..F I=1:1:$L(ST) S ABC(I)=$S($E(ST,I)=" ":32,1:1392+$A(ST,I))
 ;
 S MAXLETTERS=$O(ABC(999),-1)
 S MAXL=36
 I $G(%ARG("MAXL")) S MAXL=%ARG("MAXL")
 Q
 ;
BOTLINE(TYPKB) ;
 W "<tr dir=""RTL"" style=""background-color:lightblue;height:"_HG_"px"" >"
  I '$$NOUPDN D
  .D UP
  .D DOWN
  D DEL
  D CLR
  N SPAN I $$^%W1LNG'="H" S SPAN=1+$$GETP^%W1PRM("ABCCAPS")
  I $$^%W1LNG="H" S SPAN=3
  I $$NOUPDN S SPAN=SPAN+2
  D DIGIT^W4KB(" ",1,"","ClickLetter('32')")
  D SWITCH
  D REG
 W "</tr>",!
 Q
 ;
SWITCH ;
 N SPAN
 S SPAN=2
 D DIGIT^W4KB("123;:!",1,"green","ToNumbers()",SZF)
 Q
 ;
NOUPDN() ; 
 Q ($G(%ARG("K"))="-")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ACKCR
W4ACKCR ; [ 31.03.17 18:01 ] [ 
 S %ARG("HEAD")="GDCR",%ARG("MAXL")=5
 D ^W4KB
 Q
 ;
 ;
ACK(PRM) ;
 N ORD,TEMP,GDCR,GBNOW,LK,RES
 S ORD=$P(PRM,";")
 S TEMP=$P(PRM,";",2)
 S RES=1
 ;
 I TEMP D  Q RES
 .S HBNOW=2
 .S LK=$$NMB^W4HZMST(ORD) I '$$^W4MSL(LK) S RES="CUSTOMERNUMBERISWRONG"
 .I $$D^W4L(LK)'=11 S RES="CUSTOMERNOTEXIST"
 .N ITRA S ITRA=$$ITRA^W4HZMST(ORD)
 .S GDCR=$$ITRA^W4L(LK)+ITRA+10
 .I GDCR<ITRA S GDCR=ITRA+10
 .S RES=$$ACKCRLK^W4ORDVFN(LK,GDCR,HBNOW)
 ;
 N PRM S PRM=ORD_";"_GDCR_";1"
 Q $$ACKCR^W4ORDVFN(PRM)
 
 
 

W4ACNT
W4ACNT ; [ 31.03.13 08:21 ] [ 08.01.12 09:34 ] [ 22.12.10 20:22 ]
 N (JB,%ARG,%REM)
 N BN,SN,T,HS,I
 K @$$^W4MAIN("TMP")
 S STRING=$G(%ARG("STRING")) Q:STRING=""
 S CODDOC="CB"
 I $$HMK^W4LHB S CODDOC="HMK"
 D ACNT
 I '$D(@ACNT) D CRACNT(STRING)
 ;
 S I=0
 S BN="" F  S BN=$O(@ACNT@(BN)) Q:BN=""  D
 .S SN="" F  S SN=$O(@ACNT@(BN,SN)) Q:SN=""  D
 ..S T="" F  S T=$O(@ACNT@(BN,SN,T)) Q:T=""  D
 ...S HS="" F  S HS=$O(@ACNT@(BN,SN,T,HS)) Q:HS=""  D
 ....S I=I+1
 ....S @$$^W4MAIN("TMP")@(I)=$TR($J(BN,2)," ",0)_";"_$TR($J(SN,3)," ",0)_";"_T_";"_HS
 ;
 W "<table width=""100%"" cellspacing=""0"" border=""1"" dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 W " <th>"_$$^%W1DICT("BANK")_"</th>"
 W " <th>"_$$^%W1DICT("SNIF")_"</th>"
 W " <th>"_$$^%W1DICT("TZ")_"</th>"
 W " <th>"_$$^%W1DICT("ACCOUNT")_"</th>"
 W "</tr>"
 F I=1:1 Q:'$D(@$$^W4MAIN("TMP")@(I))  D
 .N A S A=$G(^(I))
 .W " <tr style=""cursor:pointer"" onClick=""Click('"_I_"')"" >",!
 .F J=1:1:$L(A,";") D
 ..W "<td>"_$P(A,";",J)_"</td>"
 .W "</tr>",!
 W "</table>",!
 Q
CHOICE(NST) ;
 Q $G(@$$^W4MAIN("TMP")@(NST))
 ;
CRACNT(STRING) ;
 N N,I,BANK,SNIF,TZ,HESBON
 S N="" F  S N=$O(@$$^W4GL("KLF")@(STRING,"CB",N)) Q:N=""  D CRACNTN(STRING,N,"CB")
 S N="" F  S N=$O(@$$^W4GL("KLF")@(STRING,"HMK",N)) Q:N=""  D CRACNTN(STRING,N,"HMK")
 Q
 ;
CRACNTN(STRING,NUMBER,CODDOC) ;
 D ACNT
 N I,BANK,SNIF,TZ,HESBON
 I CODDOC="CB" D
 .F I=1:1 Q:'$D(@$$^W4GL("KLF")@(STRING,"CB",NUMBER,I))  D CRACNTN1
 I CODDOC="HMK" D
 .F I=1:1 Q:'$D(@$$^W4GL("KLF")@(STRING,"HMK",NUMBER,"CB",I))  D CRACNTN1
 Q
 ;
CRACNTN1 ;
 S A=$G(^(I)) Q:A=""
 D G^W4SCV("KLINC",A)
 I BANK=11,SNIF=111 Q
 I BANK,SNIF,HESBON S @ACNT@(+BANK,+SNIF,+TZ,+HESBON)=""
 Q
 ;
ACNT ;
 S ACNT=$$^W4GL("KLCH")_"(STRING)"
 Q

W4ADDCHN
W4ADDCHN ; [ 31.12.17 08:13 ] [ 11.04.17 09:16 ] [ 10.03.14 08:10 ] 
 N (JB,%ARG,%REM)
 D CLEAR^W4SCASK
 D PUT^%W1PRM("VP","ADDCHN")
 S %ARG("VZ")="ASK"
 S %ARG("FIRST")=1
 D ^W4SCASK
 Q
 ;
 ;
ADD(CDCMNT) ;
 D PUT^%W3DEB("W4ADDCHN-ADD","CDCMNT=CDCMNT")
 N OK S OK=0
 N SHID S SHID=$P(CDCMNT,";",2)
 N LV S LV=$P(CDCMNT,";",3)
 N PRT S PRT=$P(CDCMNT,";",4)
 S CDCMNT=$P(CDCMNT,";")
 Q:CDCMNT=""
 ;
 S TXT=$G(@$$^W4GL("P1CODH")@(CDCMNT))
 N TXTO S TXTO=$$TXTO(SHID,PRT) ;
 ;
 I $L(TXTO) D
 .S TXT=TXT_" ; "_TXTO
 ;
 N OKI S OKI=""
 D  I OKI Q 3  ;-- ADD COMMENTS TO ADDONS ( NO EDIT MODE )
 .N UR S UR=$$UR
 .
 .I SHID="",UR=3!(UR=5) D
 ..N TMPTFUR D TMPTFUR^W4HZTSF(UR)
 ..S OKI=$$FINDTMPPRT^W4CMNT(+UR,PRT)
 ..I OKI D
 ...N STO S STO=$G(@TMPTFUR@(OKI,"CMNT"))
 ...N CDO S CDO=$P(STO,"~")
 ...S @TMPTFUR@(OKI,"CMNT")=$P(CDO,"-")_"-C0~"_TXT
 .
 .D RESTUR^W4SCASK
 ;
 N RES S RES=$$SETCMNT^W4CMNT("CMNT",TXT,0,SHID,LV,PRT)
 D RESTUR^W4SCASK
 Q RES
 ;
 ;
TXTO(SHID,PRT) ;
 N TXTO S TXTO=""
 N UR S UR=$$UR
 I UR=2!(UR=4)!($G(SHID)["LV") S TXTO=$P($$TXTNEXT^W4HZORD(SHID),"~",3)
 I UR=3!(UR=5),$G(SHID)'["LV" D
 .N TMPTFUR D TMPTFUR^W4HZTSF(UR)
 .N OKI S OKI=$$FINDTMPPRT^W4CMNT(+UR,PRT)
 .I OKI,$D(@TMPTFUR@(OKI,"CMNT")) S TXTO=$P($G(^("CMNT")),"~",2)
 Q TXTO
 ;
UR(STAM) ;
 N UR S UR=+$$UR^W4MENU
 I 'UR D
 .N UROLD D TMPS^W4MENU
 .S UROLD=$G(@TMPS@("UROLD")) Q:'UROLD
 .S UR=+UROLD
 Q UR
 
 
 
 

W4ADDHNH
W4ADDHNH(HZM,VL,SIBA) ; [ 12.12.21 18:56 ] [ 09.12.20 08:12 ] [ 28.09.16 14:31 ] 
 N NOM
 I $$CLOSE^W4HZMST(HZM)>1 Q
 N GLORD D GLORD^W4HZMST
 N HNHO S HNHO=$$HNH^W4HZMST(HZM)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 S VL=$J(VL,2,2)
 S NOM=$O(@GLORD@("CB","HNH1",9999),-1)+1
 N WHO S WHO=$$LASTMLZ^W4HZMST(HZM)
 ;;S ^AA("W4ADDHNH","MNL")=$$GETP^%W1PRM("MNL")
 I $$PSWDRG^W4PRM,$$GETP^%W1PRM("MNL") S WHO=$$GETP^%W1PRM("MNL")
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 I PORTDISP D
 .N TX1,TX2
 .S TX1=$J(VL,2,2)_" :   dgpd"
 .S TX2=$J($$ITRA^W4HZMST(HZM)-VL,2,2)_" : melyzl"
 .D ^W4TX2DSP(PORTDISP,TX1,TX2)
 ;
 S @GLORD@("CB","HNH1",NOM)=VL_"*"_$H_"*"_WHO_"*"_$$^W4MYDVN_"*"_$G(SIBA)
 ;
 D PUT^W4HZMST(HZM,"HNH",HNHO+VL)
 D PUT^W4HZMST(HZM,"TSHL",TSHL-VL)
 ;
 I $$D^W3TMPORD(JB)=11 D
 .D PUT^W3HZMST(JB,"HNH",HNHO+VL)
 .D PUT^W3HZMST(JB,"TSHL",TSHL-VL)
 .S @$$^W4TMPORD@("CB","HNH1",NOM)=VL_"*"_$H_"*"_WHO_"*"_$$^W4MYDVN_"*"_$G(SIBA)
 ;
 I $$MYCHECK^W4PRM D
 .D SYNCORD^WMCHFUNC(HZM,JB)
 Q
 
 
 
 
 
 
 
 
 

W4ADDPAR
W4ADDPAR(HZM,CD,QN,MH,TSF,CMNT) ; [ 29.09.15 15:37 ] [ 28.09.15 13:03 ] [
 I $$CLOSE^W4HZMST(HZM) Q
 I $G(CD)="" S CD=0
 N L S L=$O(@$$^W4ORD@(HZM,9999),-1)+1
 N SUM S SUM=$J($G(QN)*$G(MH)+$G(TSF),2,2)
 S @$$^W4ORD@(HZM,L)=CD_"\\"_$$SHEM^W4P(CD)_"\"_$G(MH)_"\"_$G(QN)_"\"_$G(TSF)_"\"_SUM_"\"_$G(CMNT)
 S $P(^(L),"\",10)="@@!"
 D ^W4CALC(HZM)
 Q

W4ADDPAY
W4ADDPAY ; [ 07.03.15 12:34 ] [ 20.05.14 10:36 ] [ 05.12.13 08:43 ]
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 I $G(%ARG("DAT")) D PUT^%W1PRM("DAT",%ARG("DAT"))
 S DAT=$$GETP^%W1PRM("DAT")
 S DONAME=$$GETP^%W1PRM("DONAME")
 I 'DAT W " A DATE NOT DEFINED !" Q
 ;
 I $G(%ARG("FIRST")) D INIT
 ;
 W "<span style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"
  W $$^%W1DICT("ADDPAYMENTS",DAT)
 W "</span>",!
 W "<br><br>",!
 ;
 W " <table id=""Tbl"" >",!
 W "  <tr>",!
  W "  <th>"_$$^%W1DICT("DATE")_"</th>",!
  I '$$MKDM W "  <th>"_$$^%W1DICT("ABSENCECAUSES")_"</th>",!
  I $$MKDM W "  <th>"_$$^%W1DICT("ADDPAYMENTKINDS")_"</th>",!
  W "  <th>"_$$^%W1DICT("TOPAY")_"</th>",!
  W "  <th>"_$$^%W1DICT("COMMENT")_"</th>",!
 W "  </tr>",!
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 F DT=DT1:1:DT2 D
 .W "<tr id="""_DT_""">",!
 .
 . W "<td id=""date"_DT_""" >"
 .  W $$^%L1DC(DT,1)
 . W "</td>"
 .
 . S AVAD=$$AVAD(OVED,DT)
 . W "<td>"
 . D
 . . N VL
 . . I AVAD'="" D  Q
 . . . W $$RED($$^%W1DICT("WORKERWORKED",$$AVAD(OVED,DT)))
 . .
 . . S VL=$$CAUSE(OVED,$G(DT))
 . .
 . . I ARGCS'="",VL=ARGCS!(VL="") D  Q
 . . .W $$H2U^%L1FRM($G(@$$GLOB@(ARGCS)))
 . . .W "<input type=""text"" id=""cause"_DT_""" size=""2"" "
 . . .W " value="""_ARGCS_""" "
 . . .W " style=""visibility:hidden"" />"
 . .
 . . D SELCAUSE(OVED,DT)
 . W "</td>"
 .
 . W "<td>"
 .  D
 .  .I AVAD'="" W "&nbsp;" Q
 .  .W "<input type=""text"" id=""tshl"_DT_""" size=""7"" maxlength=""8"" "
 .  .W " value="""_$J($$TSHL(OVED,DT),2,2)_""" />"
 . W "</td>"
 .
 . W "<td>"
 .  D
 .  .I AVAD'="" W "&nbsp;" Q
 .  .W "<input type=""text"" id=""cmnt"_DT_""" size=""30"" maxlength=""50"" "
 .  .W " value="""_$$H2U^%L1FRM($$CMNT(OVED,DT))_""" />"
 . W "</td>"
 .W "</tr>",!
 ;
 W " </table>",!
 W "<br><br>",!
 D DIVBUT
 W "</div>",!
 Q
 ;
SELCAUSE(OVED,DT) ;
 I $G(DT)="" G SELC1
 S VL=$$CAUSE(OVED,$G(DT))
 S ARGCS=$G(%ARG("CAUSE"))
 I ARGCS'="",VL=ARGCS!(VL="") W $$H2U^%L1FRM($G(@$$GLOB@(ARGCS))) Q
SELC1 ;
 N N,ID
 S ID="cause"
 I $G(DT) S ID=ID_DT
 W "<select id="""_ID_""">",!
  I '$$MKDM W "<option value=""0"">"_$$^%W1DICT("CHOICECAUSE")_"</option>",!
  I $$MKDM W "<option value=""0"">"_$$^%W1DICT("CHOICEPAYMENT")_"</option>",!
  S N="" F  S N=$O(@$$GLOB@(N)) Q:N=""  D
  .W "<option value="""_N_""" "
  . I $G(VL)'="",N=VL W " selected=""selected"" "
  . W " >"
  . W $$H2U^%L1FRM(^(N))
  .W "</option>",!
 W "</select>",!
 Q
 ;
 ;
CAUSE(OVED,DT) ;
 D FL
 N DAT S DAT=$ZD(DT,"YYMMDD")
 N N,OK S N="",OK=""
 F  S N=$O(@$$GLOB@(N)) Q:N=""  I $D(@FILE@(OVED,DAT,N)) S OK=N Q
 Q OK
 ;
TSHL(OVED,DT) ;
 D FL
 N VL S VL=$$CAUSE(OVED,DT) I VL="" Q ""
 N DAT S DAT=$ZD(DT,"YYMMDD")
 Q $G(@FILE@(OVED,DAT,VL,"TSHL"))
 ;
CMNT(OVED,DT) ;
 D FL
 N VL S VL=$$CAUSE(OVED,DT) I VL="" Q ""
 N DAT S DAT=$ZD(DT,"YYMMDD")
 Q $G(@FILE@(OVED,DAT,VL,"TXT"))
 ;
AVAD(COD,DT)
 N AVAD
 S AVAD=$P($$^W4LEVTIM(COD,$ZD(DT,"YYMMDD")),"\")
 Q AVAD
 ;
DIVBUT ;
  W "<table>",!
   W "<tr>",!
   W "  <td>"
    D ROUNDBUT^%W1JS("repair",$$^%W1DICT("SUBMIT"),"Save()","color:green","wh,22")
   W "  </td>"
   W "<td>&nbsp;</td>"
   W "  <td>"
    D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   W "  </td>",!
  W "</tr>",!
  W "</table>",!
 Q
 ;
RED(RKV) ;
 Q "<span style=""color:red;"_$$FONTFM^W3CSS_""">"_RKV_"</span>"
 ;
FL ;
 S FILE=$$^W4GL("FILE")
 Q
 ;
INIT ;
 N DT,DT1,DT2,DAT D FL
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 K @$$^W4MAIN("TMPABS")
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .M @$$^W4MAIN("TMPABS")@(DAT)=@FILE@(OVED,DAT)
 Q
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D FL
 S OVED=$$GETP^%W1PRM("OVED") Q:OVED=""
 S DONAME=$$DONAME
 ;
 F I=1:1:$L(PRM,";") D
 .S GR=$P(PRM,";",I)
 .S DT=$P(GR,"~")
 .S DAT=$ZD(DT,"YYMMDD")
 .S CAUSE=$P(GR,"~",2) Q:CAUSE=""
 .S TSHL=$P(GR,"~",3)
 .S CMNT=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(GR,"~",4)))
 .S CAUSEOLD=$$CAUSE(OVED,DT)
 .S TSHLOLD=$$TSHL(OVED,DT)
 .S CMNTOLD=$$CMNT(OVED,DT)
 .
 .I $L(CAUSEOLD),CAUSE'=CAUSEOLD!(+TSHL'=+TSHLOLD)!(CMNTOLD'=CMNT) D
 ..D PROT(OVED,DAT,"DEL",CAUSEOLD)
 ..K @FILE@(OVED,DAT,CAUSEOLD)
 .
 .S @FILE@(OVED,DAT,CAUSE)=1
 .S @FILE@(OVED,DAT,CAUSE,"MVC")=DONAME_"\"_$H
 .S @FILE@(OVED,DAT,CAUSE,"TSHL")=TSHL
 .S @FILE@(OVED,DAT,CAUSE,"TXT")=CMNT
 .D PROT(OVED,DAT,"SET",CAUSE)
 Q  ;
 ;
 ;
PROT(OVED,DAT,ACT,CAUSE) ;
 D FL
 S @$$^W4GL("FILEPROT")@(DAT,OVED,ACT,CAUSE)=$H_"\"_$$DONAME
 M @$$^W4GL("FILEPROT")@(DAT,OVED,ACT,CAUSE)=@FILE@(OVED,DAT,CAUSE)
 Q
 ;
DONAME(STAM) ;
 Q $$GETP^%W1PRM("DONAME")
 ;
GLOB(STAM) ;
 I $$MKDM Q $$^W4GL("W4MKDM")
 Q $$^W4GL("W4ABS")
 ;
MKDM(STAM) ;
 Q $$MKDM^W4RPRABS

W4ADDWND
W4ADDWND(STAM) ; [ 23.11.17 19:57 ] [ 
 I $$GRITVW^W4PRM,$$UR^W4MENU>2,'$$^W4AIN Q 1
 I $$GRITVW^W4PRM,$$UR^W4MENU>4,$$^W4AIN Q 1
 Q 0

W4ADM
W4ADM(MLZ) ; [ 27.10.15 12:28 ] [ 11.10.15 05:44 ] [ 12.09.08 01:16 ]
  I @$$^W4PRM@("PSW")="",+MLZ=999!(+MLZ=99999) Q 1
  I +MLZ=+@$$^W4PRM@("PSW")!(+MLZ=+(@$$^W4GL("PSW")+10)) Q 1
  Q 0

W4ADRLST
W4ADRLST ; [ 27.12.23 11:49 ] [ 10.06.20 12:03 ] [ 09.06.20 13:47 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 ;
 D GL^W4L
 W "<div dir="""_$$^%W1DIR_""">",!
 D CLOSE
 I $G(LK)="" G END
 ;
 W "<br><br>",!
 W "<table cellpadding=""8"" width=""60%"" style=""cursor:pointer"" >",!
 ;
 S N="" F  S N=$O(@GL@(LK,"A",N)) Q:N=""  D
 .S IND=$TR(N,"\","~")
 .W "<tr "_$$^W4TOUCH_"=""Choice('"_$$CLWEB^%L1FRM(IND)_"')"" >",!
 . W "<td "_$$STYLETD_" >"
 .  W $$KTVM(N)
 . W "</td>"
 . W "<td "_$$STYLETD_" >"
 .  W $$H2U^%L1FRM($$CITY(N))
 . W "</td>"
 .W "</tr>",!   
 W "</table>",!
 W "<br><br>",!
 D CLOSE
END ;
 W "</div>",!
 Q
 ;
KTVM(A) ;
 N (JB,A)
 S DLM="\"
 S STREET=$P(A,DLM,2)
 S KTV=$$H2U^%L1FRM(STREET)
 S HOME=$P(A,DLM,3)
 S FLAT=$P(A,DLM,4)
 I $L(HOME) S KTV=KTV_" "_HOME
 I FLAT S KTV=KTV_"/"_FLAT
 S KOMA=$P(A,"\",5) I KOMA'="" S KTV=KTV_" "_$$H2U^%L1FRM(KOMA_" dnew")
 S CNISA=$P(A,"\",6) I CNISA'="" S KTV=KTV_" "_$$H2U^%L1FRM(CNISA_" dqipk")
 Q KTV
 ;
CITY(A) ;
 Q $P(A,"\")
 ;
CLOSE ;
 D ^W4BTN("CLOSE","Close()","red","",12)
 Q
 ;
STYLETD(STAM) ; 
 Q " style=""border-bottom-style:dotted;border-color:lightblue"" "
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ADVPAY
W4ADVPAY ; [ 12.01.15 17:21 ] [ 24.10.11 13:26 ] [ 23.10.11 17:53 ]
CUST ;
 N LKH
 K %SC("ER")
 S LKH=VL
 I LKH'?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FINDCUST"
 ;
 I '$$DC^W4L(LKH) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTOMERNOTEXIST"
 ;
 I '$$ISCR^W4L(LKH) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTNOTCREDIT"
 ;
 I '$$MAZAV^W4L(LKH) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTCLOSED"
 Q
 ;
INIT ;
 D CLEAR^W4SCASK
 D PUT^%W1PRM("VP","ADVPAY")
 D CREATE^W4ASK("ADVPAY","PAY")
 Q

W4AHP
W4AHP(ST) ; [ 10.11.08 18:16 ] [ 22.11.06 19:55 ] [ 10.03.05 13:40 ] [
 N PAR S PAR=$P(ST,"\")
 I $E(PAR)="-",PAR["%" Q 1
 Q 0
AH(ST) ;
 N PAR S PAR=$P(ST,"\")
 I $E(PAR)="-",PAR["%" Q +$E(PAR,2,25)
 Q 0

W4AIDF
W4AIDF(PRM) ; [ 22.06.18 06:34 ] [ 11.01.17 05:20 ] [ 22.11.16 11:59 ] 
 N (JB,%ARG,PRM)
 S QN0=$P(PRM,";") S:'QN0 QN0=1
 S PAR0=$P(PRM,";",2) Q:PAR0=""
 N LAST,TMPORD,I S TMPORD=$$^W4TMPORD
 ;
 S SHEM=$$SHEM^W4P(PAR0)
 S NMB=$$NMB^W3HZMST(JB)
 S MH0=$$MH^W4P(PAR0)
 S STPAR0="0~"_PAR0_"~"_SHEM_"~"_MH0_"~"_QN0
 ;
 N GLQNDF S GLQNDF=$$^W4GL("QNDEF")
 S P1SETA=$$^W4GL("P1SETA")
 S LAST=$O(@TMPORD@(999999),-1)
 S I=LAST+1
 ;
 S @TMPORD@(I)=STPAR0
 ;
 N REF S REF=$$REF^W4EZAT(PAR0)
 ;
 N MVRM,N,NP,NS
 N SET S SET="" F  S SET=$O(@REF@(SET)) Q:SET=""  D
 .S NS=$E(SET,2,10) Q:'NS
 .S N="" F  S N=$O(@P1SETA@(NS,N)) Q:N=""  D
 ..S NP=$G(^(N))
 ..S QNDEF=$G(@GLQNDF@(PAR0,N)) Q:'QNDEF
 ..S MVRM(NS,NP)=N_";"_QNDEF
 .
 .S NP="" F  S NP=$O(MVRM(NS,NP)) Q:NP=""  D
 ..I '$D(MSET(NS)) D
 ...S I=I+1
 ...S NMSET=$P($G(@P1SETA@(NS)),"\")
 ...S @TMPORD@(I)="1~"_SET_"~"_NMSET_"~"
 ...S MSET(NS)=""
 ..S I=I+1
 ..S N=$P($G(MVRM(NS,NP)),";") Q:'N
 ..S QNDEF=$P($G(MVRM(NS,NP)),";",2)
 ..S MHT=$G(@$$^W4GL("MHT")@(PAR0,N))
 ..S @TMPORD@(I)="1~"_N_"~"_$$SHEM^W4P(N)_"~"_$J(MHT,2,2)
 ..S @TMPORD@(I)=@TMPORD@(I)_"~"_(QN0_"*"_QNDEF)
 ;
 D KILL^%W1PRM("STPAR0")
 Q (LAST+1)
 
 
 
 
 
 
 
 
 
 
 
 
 

W4AIMAX
W4AIMAX(QN) ; [ 18.07.12 17:07 ] [ 25.06.12 10:26 ] [ 21.05.12 19:32 ]
 N (JB,%ARG,%REM,QN)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<span style=""color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold;"_$$FONTFM^W3CSS_""">"
  W $$^%W1DICT("REDUCESETQN")
 W "</span>",!
 W "<br><br>",!
 D AINMAIN^W4HZORD(QN)
 ;
 W " <table width=""90%"" style=""font-weight:bold"">",!
 ;
 W "  <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
     W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ(12)_""""
 W "  >"
 W "   <th width=""60%"">"_$$^%W1DICT("SETNAME")_"</th>"
 W "   <th width=""20%"">"_$$^%W1DICT("SETMX")_"</th>"
 W "   <th width=""20%"">"_$$^%W1DICT("QNREAL")_"</th>"
 W " </tr>",!
 ;
 I $$MXOVR(QN) D
 .S NSET="" F  S NSET=$O(M(NSET)) Q:NSET=""  D
 ..I $G(MX(NSET)),M(NSET)>MX(NSET) D
 ...W "<tr style=""font-size:"_$$^W3FSZ(12)_""">"
 ... W "<td>"_$$H2U^%L1FRM($G(M(NSET,"NM")))_"</td>"
 ... W "<td style=""color:green;text-align:center"">"_$G(MX(NSET))_"</td>"
 ... W "<td style=""color:red;text-align:center"">"_$G(M(NSET))_"</td>"
 ...W "</tr>",!
 ;
 W " </table>",!
 ;
 W "<br>"
 W "<input type=""button"" class=""btn"" value="""_$$^%W1DICT("CLOSE")_""" "_$$^W4TOUCH_"=""CloseMax()"" />",!
 W "</div>",!
 Q
 ;
 ;
MXOVR(QNMAIN) ;
 N (JB,%ARG,%REM,QNMAIN,M,MX) ;
 S NSET="",NMSET="" I $G(QNMAIN)<0 Q 0
 K M,MX
 S CDMAIN=$P($$GETP^%W1PRM("STPAR0"),"~",2)
 S N="" F  S N=$O(@$$^W4GL("P1SETA")@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S MAX=$P(A,"\",2) I 'MAX S MAX=999
 .S MX(N)=MAX*QNMAIN
 ;
 F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .S A=$G(^(I))
 .I $$NSET(A) S NSET=$$NSET(A),NMSET=$P(A,"~",3) Q
 .Q:'NSET
 .I $$QNR^W3HZMST(JB,I)<0 Q
 .I $P(A,"~")=0 S M(NSET)=$G(M(NSET))+$$ITRAST^W3HZMST(JB,I)
 .S M(NSET,"NM")=NMSET
 ;
 S MXOVR=0
 S NSET="" F  S NSET=$O(M(NSET)) Q:NSET=""  D  Q:MXOVR
 .I $G(MX(NSET)),$G(M(NSET))>MX(NSET) S MXOVR=1
 ;
 Q MXOVR
 ;
 ;
NSET(A) ;
 N SET
 S SET=$P(A,"~",2)
 I SET'?1"A"1N.N Q ""
 Q $E(SET,2,6)
 ;
QN(A) ;
 N QN S QN=$P(A,"~",5)
 I QN["*" S QN=QN*$P(QN,"*",2)
 Q QN

W4AIN
W4AIN(STAM) ; [ 02.05.14 15:06 ] [ 10.04.14 10:19 ] [ 09.04.14 16:35 ]
 N STPAR0 S STPAR0=$$GETP^%W1PRM("STPAR0")
 I STPAR0="" D
 .N FIRSTST S FIRSTST=$G(@$$^W4TMPORD@(1))
 .I $E(FIRSTST,1,3)="0~A" S STPAR0=$$RESTSTPAR0
 .I $$ISST0(STPAR0) D
 ..D PUT^%W1PRM("STPAR0",STPAR0)
 ..D PUT^%W1PRM("STPAR00",STPAR0)
 ;
 I STPAR0="" S STPAR0=$$GETP^%W1PRM("STPAR00") D
 .I $$ISST0(STPAR0) D PUT^%W1PRM("STPAR0",STPAR0)
 ;
 I $$ISST0(STPAR0) Q 1
 Q 0
 ;
ISST0(STPAR0) ;
 I STPAR0?1"0~"1N.E Q 1
 Q 0
 ;
RESTSTPAR0(STAM) ;
 N FIRSTST,N,A S FIRSTST=""
 S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N S A=$G(^(N)) I $P(A,"~")=0,$P(A,"~",15)["^" S FIRSTST=A Q
 S STPAR0=$TR($P(FIRSTST,"~",15),"^","~")
 Q STPAR0

W4ANLZ
W4ANLZ ; [ 05.08.26 15:47 ] [ 03.03.26 02:39 ] [ 08.11.25 09:09 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 I $G(MEDAT)="" Q
 I $G(ADDAT)="" Q
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ;
 D SCOMP^W4TOT(DT1,DT2)
 D M(0)
 ; 
 D SCOMP^W4TOT(DT1-7,DT2-7)
 D M(1)
 ;
 D SCOMP^W4TOT(DT1-(4*7),DT2-(4*7))
 D M(4)
 ;
 D SCOMP^W4TOT(DT1-(52*7),DT2-(52*7))
 D M(52)
 ;
 W "<div id=""anlz"" dir="""_$$^%W1DIR_""" align=""center"" "
   W " style=""position:absolute;display:none;top:10%;left:10%;width:80%;height:80%;background-color:white;border:2px solid brown;overflow-y:auto"" "
 W ">"
  W "<p></p>",!
  S W4BCK("PROC")="CloseAnlz()"
  D ^W4BCK 
  W "<p></p>",!
  W "<table cellpadding=""5px"" align=""center"" cellspacing=""3px"" >",! 
   W "<tr>"
    W "<th>"
     W $$^%W1DICT("DATA")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("THISDATE")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("BEFOREWEEK")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("CMPRZPERCENT")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("BEFORE4WEEK")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("CMPRZPERCENT")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("BEFORE52WEEK")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("CMPRZPERCENT")
    W "</th>"
   W "</tr>",!
   ; 
   F J="SALETOT","RESTSALE","DLVSALE","TOTALORDQN","RESTORDERSNUMBER","DLVORDERSNUMBER","SSOAD","TOTAVMSD" D
   .W "<tr>" 
   . W "<td>"
   .  W $$^%W1DICT(J)
   . W "</td>"
   .
   . W "<td>"
   .  S RKV=$G(M(0,J))
   .  I J="SALETOT"!(J="RESTSALE")!(J="DLVSALE")!(J="TOTAVMSD") S RKV=$S(RKV="":"",1:$J(RKV,1,1))
   .  W RKV
   . W "</td>"
   .
   . F I=1,4,52 D 
   .. W "<td>"
   ..  S RKV=$G(M(I,J))
   ..  I J="SALETOT"!(J="RESTSALE")!(J="DLVSALE")!(J="TOTAVMSD") S RKV=$S(RKV="":"",1:$J(RKV,1,1))
   ..  W RKV
   .. W "</td>"
   ..
   .. W "<td>"
   ..  S AH=""
   ..  I $G(M(I,J)),$G(M(0,J)) D
   ...  S AH=$J($G(M(0,J))/M(I,J)*100-100,1,1)_"%" S:AH>0 AH=AH_"+"
   ..  W "<span style=""font-weight:bold;color:"_$S(AH<0:"red",1:"green")_""">"_AH_"</span>"
   .. W "</td>"
   .W "</tr>",!  
  ;
  W "</table>",!
  W "</div>",!
 Q
 ;
 ;
M(IND) 
 S M(IND,"SALETOT")=SREST+SDLV
 S M(IND,"RESTSALE")=SREST
 S M(IND,"DLVSALE")=SDLV
 S M(IND,"TOTALORDQN")=ORDQ
 S M(IND,"DLVORDERSNUMBER")=DLVQ
 S M(IND,"RESTORDERSNUMBER")=RESTQ
 S M(IND,"SSOAD")=SSOAD
 S M(IND,"TOTAVMSD")=$S('SSOAD:"",1:$J(SREST/SSOAD,1,1))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ASHMGR
W4ASHMGR ; [ 31.07.16 15:19 ] [ 31.01.14 14:14 ] [ 22.09.13 19:48 ] 
GET ;
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4ASHPRM-GET","JB=JB & MSD=MSD")
 ;
 S NAME=$$H2U^%L1FRM($G(@$$^W4PL@("ESEK",1)))
 S MURSH=$G(@$$^W4PL@("ESEK",4))
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4ASHMGR-SAVE","PARAM=PARAM & JB=JB & MSD=MSD")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=$$CNWEB^%L1FRM(B)
 ;
 S @$$^W4PL@("ESEK",1)=$$INVH^%L1FRM($G(NAME))
 S @$$^W4PL@("ESEK",4)=$G(MURSH)
 ;
 Q 1
 ;
FIRST(VD) ;
 N KLIN
 S KLIN=$$^W4KLIN
 N FIRST S FIRST=$O(@KLIN@(VD,""))
 I FIRST="" Q ""
 I $G(@KLIN@(VD,FIRST))'="IN" Q ""
 Q (FIRST+1)
 ;
EXIST(VD) ;
 N KLIN
 S KLIN=$$^W4KLIN
 I $D(@KLIN@(VD))<10 Q 0
 N FIRST S FIRST=$O(@KLIN@(VD,""))
 N SEC S SEC=$O(@KLIN@(VD,FIRST))
 I SEC Q 1
 I $G(@KLIN@(VD,FIRST))'="IN" Q 1
 Q 0
 ;
NOMOD(STAM) ;
 Q "<>DISABLE"
 
 
 

W4ASHRAM
W4ASHRAM(STAM) ; [ 25.09.18 11:42 ] [ 11.08.16 05:59 ] [ 10.08.16 17:46 ] 
 Q $$GETP^%W1PRM("ASHRAM")
 ;
INIT ;
 D ^W3CSS D PUT^%W1PRM("ASHRAM",1)
 D ^W4BGBODY
 D ^W4CSS
 D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 D KILL^%W1PRM("IFRURSH")
 D KILL^%W1PRM("ELPOS")
 S @$$^W4PRM@("SHVA1")=0
 I +$G(MSD)=0 S MSD=+$$GETP^%W1PRM("MSD")
 D KILL^W4TMPPAY
 D PUT^%W1PRM("HZM",-JB)
 K @$$^W4ORD@(-JB)
 D ^W4JOB
 Q
 ;
DOCCSR(STAM) ;
 Q $G(@$$^W4GL("W3PRM")@("DOCCSR"))
 
 
 
 
 
 
 
 

W4ASK
W4ASK(STAM) ; [ 22.01.25 11:25 ] [ 09.06.18 19:39 ] [ 20.08.16 15:32 ] 
 N GL D GL
 Q GL
 ;
KILL ;
 N GL D GL
 K @GL
 Q
 ;
NM(VP,VZ,NP) ;
 N GL D GL
 Q $P($G(@GL@(VP,VZ,NP)),";",1)
 ;
DL(VP,VZ,NP) ;
 N GL D GL
 N GLST S GLST=$G(@GL@(VP,VZ,NP))
 N DL S DL=$P(GLST,";",2)
 I $E(DL)="$" S @("DL="_DL)
 Q DL
 ;
DFLT(VP,VZ,NP) ;
 I '$G(NP) Q ""
 N GL,RES D GL
 N A S A=$P($G(@GL@(VP,VZ,NP)),";",3)
 I $E(A,1,2)="$$" X "S RES="_A Q RES
 I A?.P!(A?1N.N) Q A
 Q @A
 ;
OU(VP,VZ,NP) ;
 N GL D GL
 N A S A=$G(@GL@(VP,VZ,NP))
 I $P(A,";",4)="O" Q 1
 I $P(A,";",6)="" Q 0
 I $P(A,";",6)=0 Q 1
 I $P(A,";",6)?1N.N Q '$P(A,";",6)
 N W4ASKOU
 X "S W4ASKOU="_$P(A,";",6)
 Q 'W4ASKOU
 ;
GLOB(VP,VZ,NP) ;
 N GL D GL
 Q $P($G(@GL@(VP,VZ,NP)),";",7)
 ;
US(VP,VZ,NP,IND) ;
 N GLB
 S @("GLB="_$$GLOB(VP,VZ,NP))
 I GLB="" Q 1
 N VL S VL=$G(@GLB@(IND))
 D GL
 N OK S OK=1
 N USIND S USIND=$P($G(@GL@(VP,VZ,NP)),";",8) I USIND'?.P S OK=0 I @USIND S OK=1
 I 'OK Q 0
 N USVL S USVL=$P($G(@GL@(VP,VZ,NP)),";",9) I USVL'?.P S OK=0 I @USVL S OK=1
 Q OK
 ;
MENU(VP,VZ,NP) ;
 N GL D GL
 N A S A=$G(@GL@(VP,VZ,NP))
 I $E($P(A,";",4))="<" Q 1
 Q 0
 ;
MENURL(VP,VZ,NP) ;
 N GL D GL
 N A S A=$G(@GL@(VP,VZ,NP))
 I $E($P(A,";",4),2,5) Q $E($P(A,";",4),2,5)
 Q 100
 ;
PROG(VP,VZ,NP) ;
 N GL D GL
 Q $P($G(@GL@(VP,VZ,NP)),";",5)
 ;
FIRST(VP,VZ) ;
 N GL D GL
 N N S N="" F  S N=$O(@GL@(VP,VZ,N)) Q:N=""  S A=$G(^(N)) I '$$OU(VP,VZ,N) Q
 Q N
 ;
NEXT(VP,VZ,NP) ;
 N GL D GL
 N N S N=NP F  S N=$O(@GL@(VP,VZ,N)) Q:N=""  S A=$G(^(N)) I '$$OU(VP,VZ,N) Q
 Q N
 ;
PREV(VP,VZ,NP) ;
 N GL D GL
 N N S N=NP F  S N=$O(@GL@(VP,VZ,N),-1) Q:N=""  S A=$G(^(N)) I '$$OU(VP,VZ,N) Q
 Q N
 ;
CMD(VP,VZ,NP) ;
 N GL D GL
 Q $P($G(@GL@(VP,VZ,NP)),";",5)
 ;
GETID(VP,VZ,NP,NS) ;
 Q $$NM(VP,VZ,NP)_NS
 ;
GL S GL=$$^W4MAIN("TMPZ")
 Q
 ;
CREATE(VP,VZ,N) ;
 N GL,A,N1 D GL
 K @$$^W4MAIN("TMPZ")@(VP,VZ)
 D PUT^%W1PRM("NP",1)
 ;
 I $G(N)'="" D  Q
 .S N1="" F  S N1=$O(^[$$^W3MAIN]W4ASK(VP,VZ,N,N1)) Q:N1=""  D
 ..S A=$G(^(N1))
 ..S @$$^W4MAIN("TMPZ")@(VP,VZ,N1)=A
 ;
 S N="" F  S N=$O(^[$$^W3MAIN]W4ASK(VP,VZ,N)) Q:N=""  D
 .S A=$G(^(N))
 .S @$$^W4MAIN("TMPZ")@(VP,VZ,N)=A
 ;
 Q
 ;
 ;
WHERE(VT,VZ,NP) ;
 N GL D GL
 Q $P($G(@GL@(VT,VZ,NP)),";",3)
 ;
DELANS(STAM) ;
 N PRM S PRM=$$GETP^%W1PRM("DELITM") I PRM="" Q 1
 N NS S NS=$P(PRM,";",2) I 'NS Q 1
 N ST S ST=$G(@$$^W4TMPORD@(NS)) I ST="" Q 1
 N CD S CD=$$CDST^W3HZMST(JB,NS) I CD="" Q 1
 N UR S UR=$$LVST^W3HZMST(JB,NS) I UR Q 1
 N UR1 S UR1=$$LVST^W3HZMST(JB,NS+1) I 'UR1 Q 1
 I $D(@$$^W4GL("P1EZI")@(CD))<10 Q 1
 Q "<->"
 
 
 
 
 

W4ASKM
W4ASKM(JB) ; [ 18.12.08 08:44 ] [
 I $G(@$$^W4PL@("TRDDP"))=2 Q 1
 Q 0

W4ASKPRC
W4ASKPRC(STAM) ; [ 20.08.10 20:12 ] [
 Q +$G(@$$^W4PRM@("ASKPRC"))

W4ASKTLM
W4ASKTLM(PRM) ; [ 03.12.20 12:44 ] [ 05.07.18 15:53 ] [ 18.10.16 16:58 ] 
 N (JB,%ARG,%REM,PRM)
 S TOP=""
 S ODEF=$J($$SUM(PRM)-$$ITRA(PRM),2,2)
 S KOT=$$^%W1DICT("COUPONCHANGE",ODEF)
 N NG S NG=1
 I '$$GCOUPIT^W4PRM D
 .S MGROUP(NG)=$$^%W1DICT("MOVECHANGE2TIP")
 .S MGROUP(NG,"TO")="MoveChange2Tip('"_PRM_"')"
 .S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVECHANGE2ADDPRICE")
 S MGROUP(NG,"TO")="MoveChange2AddPrice('"_PRM_"')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVECHANGE2TLODEF")
 S MGROUP(NG,"TO")="MoveChange2TlOdef('"_PRM_"')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("BACK")
 S MGROUP(NG,"TO")="Back()"
 ;
 D ^W4SHEET(KOT,"","","","40%")
 Q
 ;
 ;
MOVECHANGE2TIP(PRM) ;
 N HZM
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "NOTORDER"
 S TIPAS=$$SUM(PRM)-$$ITRA(PRM)
 I TIPAS'>0 Q "SUMNOTENOUGH2TIP"
 D PAIDTLMN^W4PAYKB($$LK(PRM),$$NOMCB(PRM),HZM,$$SUM(PRM),"",$$SUM(PRM)-$$ITRA(PRM))
 Q 1
 ;
MOVECHANGE2ADDPRICE(PRM) ;
 N HZM
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "NOTORDER"
 D PAIDTLMN^W4PAYKB($$LK(PRM),$$NOMCB(PRM),HZM,$$SUM(PRM),$$ITRA(PRM)-$$SUM(PRM),"")
 Q 1
 ;
MOVECHANGE2TLODEF(PRM) ;
 N (JB,%ARG,%REM,PRM)
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "NOTORDER"
 ;
 I $$GCOUPIT^W4PRM Q $$MOVETLMIT2TLODEF(HZM,PRM) ;
 ;
 N LK,NOMCB
 S LK=$$LK(PRM)
 S NOMCB=$$NOMCB(PRM)
 ;
 D PAIDTLMN^W4PAYKB(LK,NOMCB,HZM,$$ITRA(PRM),"","")
 ;
 N LASTTLMN S LASTTLMN=$O(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",9999),-1)+1
 S MAS(1)="(scer) dpzn yelz"
 S MAS(3)=+NOMCB_"-"_LASTTLMN
 S MAS(5)=$ZD($H,"DD.MM.YY  24:60")
 S MAS(10)=$G(@$$GLCB^W4CBGET(LK,NOMCB)@("FOR"))
 S SUM=$J($$SUM(PRM)-$$ITRA(PRM),2,2)
 S MAS(15)=SUM
 S MAS("EHAD")=1
 S MAS("HD")=1
 S MAS("CUT")=1
 S LAB="TLMTN"
 D ^W4CB
 S @$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",LASTTLMN)=SUM_"\"_$$^W4DZ_"\"_$H
 Q 1
 ;
 ;
MOVETLMIT2TLODEF(HZM,PRM) ;
 N MAS
 D PUT^%W3DEB("MOVETLMIT2TLODEF","HZM=HZM&PRM=PRM")
 N LK
 S LK=$$LK(PRM)
 N NOMTL S NOMTL=$$NOMCB(PRM) I 'NOMTL Q 0
 N HZMKR S HZMKR=$$HZM^W4TLMTN(NOMTL)
 ;
 D PAIDTLMIT^W4PAYKB(LK,NOMTL,HZM,$$ITRA(PRM),$$HZM^W4TLMTN(NOMTL))
 ;
 N LASTTLMN S LASTTLMN=$$LAST^W4TLMTN+1
 D SETTLMTN1^W4SNDCLS(HZM,LASTTLMN,$$SUM(PRM)-$$ITRA(PRM),$$PAYERNAME^W4TLMTN(NOMTL),$$PAYERTEL^W4TLMTN(NOMTL),$$RCP^W4TLMTN(NOMTL),NOMTL)
 ;
 S MAS(1)="(scer) dpzn yelz"
 S MAS(3)=LASTTLMN
 S MAS(5)=$ZD($H,"DD.MM.YY  24:60")
 S MAS(10)=$$RCP^W4TLMTN(NOMTL)
 S SUM=$J($$SUM(PRM)-$$ITRA(PRM),2,2)
 S MAS(15)=SUM
 S MAS("EHAD")=1
 S MAS("HD")=1
 S MAS("CUT")=1
 S LAB="TLMTN"
 D ^W4CB
 ;
 Q 1
 ;
ITRA(PRM) ;
 Q $P(PRM,"*",2)
 ;
SUM(PRM) ;
 Q $P(PRM,"*",3)
 ;
LK(PRM) ;
 N LK S LK=$TR($P(PRM,"*",4),"-","")
 I LK="" S LK=0
 Q LK
 ;
NOMCB(PRM) ;
 Q $P(PRM,"*",5)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ASR
W4ASR ; TASHLUM BASHRAI                           [ 31.08.26 07:31 ] [ 20.07.26 15:58 ] [ 13.05.25 11:09 ] 
 N (JB,%ARG,%REM,HZM,W4T1,SGIRATJOM,CUSN,LKAH,LKHN,LKHNH,BLIPR,ASR,TIP,TIPAS,HRA,HZMLK,P1TNOPR,TLUSH,KMTL,CIBVT,CIBCARD,CIBCID,CIBUID,CIBUIC,CIBORD,TSFMH,P3T,PRBIT,TBCARD,TBRECID) D ^W4INP
 Q:'$D(ASR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN S DAT=$$^%L1DC(P1DZ,2)
 ;
 I $$HZM^W4MSL(HZM),$G(@$$^W4PRM@("ASRTRH")) D
 .N DT S DT=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 .I $$SHAA^W4HZMST(HZM)<$$SHAAZ^W4PRM S DT=DT-1
 .S DAT=$ZD(DT,"YYMMDD")
 ;
 S KUP=901
 ;
 S %L1SCREF("N")=1,%SCRN=HZSCR,%L1SCREF("S")=$G(@$$^W4ORD@(HZM)) D ^W4SCREF
 ;
 I '$D(TIP) S TIP=$$TIP^W4HZMST(HZM)
 S TIP=TIP+$G(TIPAS)
 ;
 S SHULA=$$SAS^W4HZMST(HZM)
 I $$^W4CLOSE(HZM),'$G(SHULA),'$G(ASR) Q
 ;
 I '$D(PRBIT),$$CLOSECRED^W4HZMST(HZM) G PRINT
 ;
 I '$D(PRBIT),$$FULLPAYM,ASR'<0 G PRINT
 ;
 Q:ASR>-.01&(ASR<.01)&('LKHNH)
 ;
 ; ---- WRITE TO CLIENT REPORT
 S:$L(CUSN) LKHN=CUSN Q:LKHN=""
 ;
 ;;I $D(W4T1) S ^AA("W4ASR-W4T1")=""
 I $$HZM^W4MSL(HZM),$$TMMSL^W4PRM,$$NOTM^W4PRM,'$$^W4CLOSE(HZM),$D(W4T1) S P1TNOPR=""
 ;
 I '$$^W4REMOTE D
 .N HZM1 S HZM1=+$$HZM^W4ORD(HZM)
 .S @$$^W4GL("P1HL1")@(LKHN,HZM1)=$$^%L1DC(DAT,4)
 .S @$$^W4GL("P1HL2")@(LKHN,HZM1)=$$^%L1DC(DAT,4)
 .S @$$^W4GL("P1HL2I")@(HZM1,LKHN)=""
 .S @$$^W4GL("P1HL1I")@(HZM1,LKHN)=""
 ;
 I $$^W4REMOTE D
 .N TRH,SHAA,HZMLAK
 .S TRH=$$TRH^W4HZMST(HZM)
 .S SHAA=$$SHAA^W4HZMST(HZM)
 .I TRH="" D
 ..S TRH=$P($$ZMANK^W4HZMST(HZM),"  ")
 ..S SHAA=$P($$ZMANK^W4HZMST(HZM),"  ",2)
 .S HZMLAK=$$HZMLAK^W4HZMST(HZM)
 .N IND S IND=$O(@$$^W4ORD@(HZM,"CB","ASR",99999),-1)+1
 .N HZM1 S HZM1=$$^%L1MRK_"-"_+$$HZM^W4ORD(HZM)_"-"_IND
 .I $G(HZMLK) S HZMLAK=HZMLK
 .N ST S ST=$$^%L1DC(DAT,4)_"*"_ASR_"*"_TRH_"*"_SHAA_"*"_HZMLAK_"*"_$$NAME^W4HZMST(HZM)
 .S @$$^W4GL("P1HL30")@(LKHN,HZM1)=ST
 .S @$$^W4GL("P1HL1")@(LKHN,HZM1)=@$$^W4GL("P1HL30")@(LKHN,HZM1)
 .S @$$^W4GL("P1HL1I")@(HZM1,LKHN)=""
 .D SHD(LKHN)
 ;
 S RZN=TSHL-SHUL-SHULA-ASR
 I TSHL>0,RZN>0,RZN<.5 D
 .S ASR=ASR+RZN
 ;
 S CUSN="" D  Q:CUSN=""
 .N (JB,%ARG,%REM,HZSCR,CUSN,DAT,HZM,LKHN,NMB,ASR) D ^W4IN
 .S SUM=ASR N ASR
 .S CODDOC="HZ",DATE=DAT,COD="0H",CUSN="" N DAT
 .D
 ..I '$G(@$$^W4GL("P1EZL")@(LKHN)) S CUSN=LKHN Q
 ..S CUSN=$G(@$$^W4GL("P1EZL")@(LKHN))
 .
 .Q:CUSN=""
 .S NUMBER=HZM D ^W4KLINIT S ER=0 D ^W4KLUP I ER S CUSN="" Q
 .I CUSN'=LKHN D
 ..N GL S GL=$$^W4GL("LKH")
 ..I '$D(@GL@(LKHN)) Q
 ..S $P(@GL@(LKHN,2),"*",4)=$P($G(@GL@(LKHN,2)),"*",4)+SUM
 .Q
 ;
 D
 .S:HNH["%" HNH=$P(HNH,"=",2)
 .S HNH=HNH+LKHNH
 .S TSHL=TSHL-LKHNH
 .D PUT^W4SCREF($$^W4ORD_"(HZM)",HZSCR,1,"HNH")
 .D PUT^W4SCREF($$^W4ORD_"(HZM)",HZSCR,1,"TSHL")
 .I $$D^W3TMPORD(JB)=11 D
 ..D PUT^W3HZMST(JB,"HNH",HNH)
 ..D PUT^W3HZMST(JB,"TSHL",TSHL)
 ;
 ;
 S SHULA=$G(SHULA)+ASR
 N SHUL,TSHL
 S SHUL=$$SHUL^W4HZMST(HZM)
 S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 S IND=$$NEWIND^W4HZMST(HZM,"ASR")
 S (LKHR,LKHR1,LKHN1)=""
 ;
 I $$^W4ISCDLK(LKHN) D
 .S LKHN1=$$LKH^W4L(LKHN)
 .S LKHR=$G(@$$^W4GL("P1EZL")@(LKHN))
 .I LKHR S LKHR1=$$LKH^W4L(LKHR)
 ;
 N ASRI
 ;       1         2        3        4          5           6            7              8            9           12           13            14             15             16            17              18             19           20
 ;
 S ASRI=LKHN_"*"_LKAH_"*"_LKHNH_"*"_ASR_"*"_$G(HRA)_"*"_$G(LKHR)_"*"_$G(HZMLK)_"*"_$G(TLUSH)_"*"_$G(KMTL)_"***"_LKHN1_"*"_$G(LKHR1)_"*"_$G(CIBVT)_"*"_$G(CIBCARD)_"*"_$G(CIBCID)_"*"_$G(CIBUID)_"*"_$G(CIBUIC)_"*"_$G(TSFMH)
 S $P(ASRI,"*",21)=$G(TBCARD)
 S $P(ASRI,"*",22)=$G(TBRECID)
 S $P(ASRI,"*",27)=$G(CIBORD)
 ;
 D SETIND^W4HZMST(HZM,"ASR",IND,ASRI)
 D SETPOS^W4HZMST(HZM,"ASR",IND)
 ;
 I $$GDAY^W4L(CUSN) D
 .S @$$^W4GL("W4ITRAYOM")@(CUSN,$$^W4DZ)=$G(@$$^W4GL("W4ITRAYOM")@(CUSN,$$^W4DZ))+ASR
 ;
 I $G(TIPAS),'$$^W4CLOSE(HZM) D
 .S $P(@$$^W4ORD@(HZM,"CB","ASR",IND),"*",20)=TIPAS
 .S TIP=$$STIP^W4HZMST(HZM)
 .D PUT^W4HZMST(HZM,"TIP",TIP)
 ;
 D PUT^W4SCREF($$^W4ORD_"(HZM)",HZSCR,1,"SHULA")
 ;
 I $$FULLPAYM D CUSNAME(HZM)
 ;
 Q:$G(P1TNOPR)=3
 ;
 ;
PRINT I '$$FULLPAYM Q
 ;
 S TMASR=$$TMASR^W4PRM ;  06/02/17 -- WAS TMASR=0
 I TMASR!($$NOTM^W4PRM&$$HZM^W4MSL(HZM)),'$$TMMSL^W4PRM K P1TNOPR,BLIPR
 ;
 S GLBV=$$^W4ORD_"(HZM)",SM=1
 ;
CLOSE ;
 N W4ASR S W4ASR=""
 D ^W4T(HZM,1) ; -- LEV 06/06/18
 ;
 I $$SHUL^W4HZMST(HZM) D
 .N MAKOR S MAKOR=0
 .I '$$NCAB^W4HZMST(HZM) S MAKOR=1
 .I MAKOR D ^W4PCHB(HZM,MAKOR) ; --- PECH HMK & H-A
 ;
 I '$$SHUL^W4HZMST(HZM) D ^W4PCHB2(HZM)
 ;
 D MVDT^W4T1(HZM) ; -- 04/05/22
 ;
END I HZM>0 M @$$^W4GL("P1HZ0")@(HZM)=@$$^W4ORD@(HZM)
 Q
 ;
 ;
SHD(LKHN) ;
 N IND S IND=$O(@$$^W4GL("P1HL3A")@(9999999),-1)+1
 S %L2MODEM("GLOB")=$$^W4GL("P1HL30")_"("""_LKHN_""")"
 S %L2MODEM("FL")="P1HL3_"_IND_"."_$$^%L1MRK
 S %L2MODEM("MRKTO")=1000
 S %L2MODEM("ADDR")=$G(@$$^W4GL("MRKZ")@(%L2MODEM("MRKTO"),"ADDR"))
 D ^%L2MODEM
 I '$D(%L2MODEM("ER")) D
 .M @$$^W4GL("P1HL3A")@(IND,LKHN)=@$$^W4GL("P1HL30")@(LKHN)
 .K @$$^W4GL("P1HL30")@(LKHN)
 .D ^%S2GLSV($$^W4GL("P1HL30")_"("""_LKHN_""")",$$^W4FGIB,"K")
 Q
 ;
FULLPAYM(STAM) ;
 I TSHL+TIP-SHUL-SHULA<.01&(TSHL>0)!(TSHL+TIP-SHUL-SHULA>-.01&(TSHL<0)) Q 1
 Q 0
 ;
CUSNAME(HZM) 
 I '$D(@$$^W4ORD@(HZM,"TOCUSNAME")),$O(@$$^W4ORD@(HZM,"CB","ASR",1))="" D
 .N LKHNM,NMB S LKHNM=""
 .S NMB=$$NMB^W4HZMST(HZM)
 .D
 ..I $$^W4MSL(NMB) S LKHNM=$$NAME^W4HZMST(HZM) Q
 ..N LKHN S LKHN=$P($G(@$$^W4ORD@(HZM,"CB","ASR",1)),"*") Q:'LKHN
 ..S LKHNM=$$LKH^W4L(LKHN)
 .I LKHNM'="" S @$$^W4ORD@(HZM,"TOCUSNAME")=LKHNM
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4AUTHCD
W4AUTHCD(COD) ; [ 15.05.19 16:00 ] [ 
 I +COD=3!(COD=902) Q 1
 Q 0

W4AUTOUT
W4AUTOUT ; [ 27.05.25 12:23 ] [ 22.05.25 14:12 ] [ 11.05.25 04:11 ] 
 S DT=+$H
 N (JB,%ARG,%REM,OV,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S MAXD=$$MAXD
 S MAXW=$$MAXW
 ;
 S DT=$$^%L1DC(DT,3)
 S FILE=$$FILE
 ;
 S OV="" F  S OV=$O(@FILE@(OV)) Q:OV=""  D
 .I OV'?5N Q
 .I $G(@FILE@(OV,"CIO"))'="I" Q
 .S COMPUT=""
 .S DAT=$ZD($$^W4DZ,"YYMMDD")
 .N BGSHB S BGSHB=$$GET2^W4LEVKVZ(OV,"SHB1")
 .N ND S ND=$$^%L1DC(DT,8)
 .D TV^W4LEVTYP(OV,DAT,DAT) ;-- KLO MINUT SEGODNYA
 .S DIF0=$G(SUM)\60 ; -- V CHASAX
 .S LAST=$O(@FILE@(OV,999999),-1) Q:'LAST  Q:LAST'?6N
 .S DTL=$$^%L1DC(LAST,4)
 .I DTL<(DT-1) Q  ; -- POSL V[J;,SL POZAVHERA
 .S TIML=$O(@FILE@(OV,LAST,99999),-1) Q:TIML'?1N.N
 .
 .I $G(@FILE@(OV,LAST,TIML))'="I" Q
 .
 .I '$$MNL(OV),$$PRM("RESTSTDY"),ND=6,BGSHB,$$T^%L1TIME($P($H,",",2))'<BGSHB,$$COLSHB(OV,DT+1)'<($$PRM("RESTSTDY")+1) D OUT(OV,"RESTSTDY") Q
 .
 .S IN=DTL_","_TIML
 .S DIF=$$DIF^%L1TIME($H,IN) I DIF<0 S DIF=0
 .
 .I '$$MNL(OV),$$PRM("MAXHRDAY"),(DIF0+DIF)>(MAXD*60) D OUT(OV,"MAXHRDAY") Q
 .S MINWEEK=$$MINWEEK(OV,+$H)
 .I '$$MNL(OV),$$PRM("MAXHRWK"),MINWEEK+(DIF0+DIF)>(MAXW*60) D OUT(OV,"MAXHRWEEK") Q
 .S HR=$$T^%L1TIME($P($H,",",2))
 .N GIL S GIL=$$GIL(OV)
 .I $$PRM("AGENIGHT"),GIL<$$BGR,HR>$$HR1!(HR<$$HR2),$$NOVAC D OUT(OV,"AGENIGHT") Q
 .I $$PRM("AGENIGHT"),GIL<$$BGR,HR'<$$HR3,HR<$$HR2,'$$NOVAC D OUT(OV,"AGENIGHT") Q
 .I $$PRM("AGESTDY"),GIL<$$BGR,ND=6,BGSHB,$$T^%L1TIME($H)'<BGSHB D OUT(OV,"AGESTDY") Q
 Q
 ;
 ;
OUT(OV,ER) ;
 N (JB,%ARG,%REM,OV,ER)
 ;
 S OK=1
 D
 .S FILE=$$FILE
 .I $G(@FILE@(OV,"CIO"))="O" S OK=0 Q
 .S LAST=$O(@FILE@(OV,999999),-1) I LAST?6N D
 ..S DTL=$$^%L1DC(LAST,4)
 ..I DTL,DTL<($H-1) S OK=0 Q
 ..S TIML=$O(@FILE@(OV,LAST,99999),-1) I TIML?1N.N D
 ...I $G(@FILE@(OV,LAST,TIML))="O" S OK=0
 Q:'OK
 ;
 S SGOVD=2
 S RES=$$SETTM^W4CLKVW(OV,"O",1) 
 N DZ S DZ=$$^W4DZ
 I RES S @$$GLAU@(DZ,OV,"EROU")=RES
 S @$$GLAU@(DZ,OV)=$G(ER)_"\"_$ZD($H,"DD.MM.YY 24:60")
 Q
 ;
MNL(OV) ;
 S OV=$$DOP^W4NAME(OV)
 N ISMNL S ISMNL=$$MNL^W4SETSUG(OV)
 I $$PAPJ^W4PRM S ISMNL=ISMNL&($G(@$$^W4GL("W4PSWDRG")@(OV))>2)
 Q ISMNL
 ;
MINWEEK(OV,DT) ;
 N (JB,%ARG,OV,DT)
 S OV=$$DOP^W4NAME(OV)
 N HR S HR=0
 S DW=$$^%L1DC(DT,8)
 S D1=DT-DW+1
 S DAT1=$ZD(D1,"YYMMDD")
 S DAT2=$ZD(DT-1,"YYMMDD")
 S COMPUT=""
 ;
 D TV^W4LEVTYP(OV,DAT1,DAT2)
 Q $G(SUM)\60
 ;
 ;
FILE() ;
 Q $$^W4GL("FILE")
 ;
 ;
NOENTER(OV) ;
 N (JB,%ARG,%REM,OV)
 S OV=$$DOP^W4NAME(OV)
 ;
 S GIL=$$GIL(OV)
 I GIL<16 Q "1;AGE16"
 ;
 S DT=+$H
 ;;I $D(@$$GLAU@(DT,OV))#2 Q "1;"_$P(@$$GLAU@(DT,OV),"\") ; *** 11/05/25
 ;
 S ND=$$^%L1DC(DT,8)
 I $$PRM("AGESTDY"),GIL<$$BGR,ND=7,$$GET2^W4LEVKVZ(OV,"SHB2") Q "1;AGESTDY"
 N BGSHB S BGSHB=$$GET2^W4LEVKVZ(OV,"SHB1")
 I $$PRM("AGESTDY"),GIL<$$BGR,ND=6,BGSHB,$$T^%L1TIME($P($H,",",2))'<BGSHB Q "1;AGESTDY"
 N SHAASHB3 S SHAASHB3=$$GET2^W4LEVKVZ(OV,"SHB3")
 I $$PRM("AGESTDY"),GIL<$$BGR,ND=7,SHAASHB3,$$T^%L1TIME($H)<SHAASHB3 Q "1;AGESTDY"
 ;
 S HR=+$$T^%L1TIME($H)
 I $$PRM("AGENIGHT"),GIL<$$BGR,HR>$$HR1!(HR<$$HR2),$$NOVAC Q "1;AGENIGHT"
 I $$PRM("AGENIGHT"),GIL<$$BGR,'$$NOVAC,HR,HR<$$HR2 Q "1;AGENIGHT"
 ;
 I $$MNL(OV) Q 0
 ;
 S MINWEEK=$$MINWEEK(OV,DT)
 ;
 I '$$MNL(OV),$$PRM("MAXHRWK"),MINWEEK>($$MAXW*60) Q "1;MAXHRWEEK"
 ;
 S FILE=$$FILE
 ;
 I ND>5 D  ;;I 'OK Q "1;REST36"
 .N D,D1,DT1,DT2,DIF,OK1,TIM,VL
 .S OK=0,OK1=0
 .S D1=DT-ND+1
 .S DT1=D1_",0"
 .
 .F D=D1:1:DT S N=$ZD(D,"YYMMDD") D:$D(@FILE@(OV,N))  Q:OK  ; -- WAS DT-1
 ..S OK1=1
 ..S TIM="" F  S TIM=$O(@FILE@(OV,N,TIM)) Q:TIM=""  D:TIM  Q:OK
 ...S VL=$G(@FILE@(OV,N,TIM)) I VL="O" S DT1=D_","_TIM Q
 ...I VL="I" D
 .... S DT2=D_","_TIM
 .... S DIF=$$DIF^%L1TIME(DT2,DT1)
 .... I DIF'<($$HRREST*60) S OK=1
 .I 'OK1 S OK=1
 ;
 N SS S SS=0
 I $$^%L1DC(DT,8)=7 S SS=$$COLSHB(OV,DT) ; --> SS
 ;
 I '$$MNL(OV),$$PRM("RESTSTDY"),SS'<($$PRM("RESTSTDY")+1) Q "1;RESTSTDY"
 Q 0
 ;
 ;
COLSHB(OV,DT) ; 
 N SS,MS S SS=0
 N SHAASHB1 S SHAASHB1=$$GET2^W4LEVKVZ(OV,"SHB1")
 N SHAASHB3 S SHAASHB3=$$GET2^W4LEVKVZ(OV,"SHB3")
 I 'SHAASHB1 Q 0
 ;
 F DDD=DT-28:7:DT-7 D
 .N DAT S DAT=$ZD(DDD,"YYMMDD") Q:'$D(@FILE@(OV,DAT))
 .K MS(OV,DAT)
 .N N1 S N1="" F  S N1=$O(@FILE@(OV,DAT,N1)) Q:N1=""  I N1?1N.N D
 ..N VL S VL=$G(^(N1))
 ..
 ..I VL="I",'$D(MS(OV,DAT)) D
 ...I 'SHAASHB3 S SS=SS+1 Q
 ...I $$MIN($$T^%L1TIME(N1))>$$MIN(SHAASHB3) Q
 ...S MS(OV,DAT)=""
 ...S SS=SS+1
 ..
 ..I VL="O",'$D(MS(OV,DAT)) D
 ...I 'SHAASHB3,'$D(MS(OV,DAT)) S SS=SS+1 Q
 ...I $$MIN($$T^%L1TIME(N1))>$$MIN(SHAASHB3) Q
 ...S MS(OV,DAT)=""
 ...S SS=SS+1
 ..
 ..I '$D(MS(OV,DAT)) S SS=0
 Q SS
 ;
 ;
GIL(OV) ;
 N JOMH S JOMH=$$GET1^W4LEVPR(OV,"JOMH")
 I 'JOMH S GIL=$$BGR
 N D S D=$$^%L1DC(JOMH,3)
 N DAYS S DAYS=$H-D
 S GIL=$P(DAYS/365.25,".")
 Q GIL
 ;
NOVAC() ;
 N D,YY S D=$$^%L1DC($H,3)
 S YY=$ZD(D,"YY")
 I D'<$$^%L1DC("0107"_YY,3),D'>$$^%L1DC("3108"_YY,3) Q 0
 Q 1
 ;
BGR() ;
 Q 18
 ;
HRREST() ;
 Q $G(@$$^W4PRM@("AUTOUT","HRREST"),36)
 ;
HR1() ;
 Q 22
 ;
HR2() ;
 Q 6
 ;
HR3() ;
 Q 1
 ;
MAXD() ;
 Q $G(@$$^W4PRM@("AUTOUT","DAY"),10)
 ;
MAXW() ;
 Q $G(@$$^W4PRM@("AUTOUT","WEEK"),42)
 ;
GLAU() ;
 Q $$^W4GL("W4AUOU")
 ;
MIN(TM) ; 
 Q TM*60+$P(TM,":",2) 
 ;
PRM(PRM) ; 
 I PRM="RESTSTDY" Q $S($G(@$$^W4PRM@("AUTOUT",PRM))<3:3,1:^(PRM))
 I $G(@$$^W4PRM@("AUTOUT",PRM))=0 Q 0 
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4AVAR
W4AVAR(HZM,N) ; [ 06.07.12 14:05 ] [
 N SIBA
 S SIBA=$P($G(@$$^W4ORD@(HZM,"BIT",N)),"*",4)
 I SIBA["ogleyl xared" Q 1
 Q 0

W4BACKN
W4BACKN ; [ 06.06.10 13:03 ] [ 05.06.10 20:49 ] [
 N (JB,%ARG,%REM)
 ;
 I $G(@$$^W4PRM@("NOGIB")) Q
 ;
 ;;S %MSG=" ... oznd `p` ... mipezp qiqa ly ieaib rvazn ",%MSG("DLY")=10 D ALL^P1PC
 ;;N %ZG S %ZG("^FILE")=1,%ZD="#FILE"
 ;;D TV^%L1GS
 ;
 D W("TABLESSAVINGINPROCESS")
 D SVSHP("#KLS","%GSKLS")
 D SVSHP("#KLZ","%GSKLZ")
 ;
 I $ZGBLDIR["/mumps.gld" D
 .D CP("mumps","DEFAULT")
 ;
ML ;
 S ZGBLDIRO=$ZGBLDIR
 S ZDIRO=$ZDIR
 ;
 S PATH=$$PATHGB^W4FGIB
 ;
 ;;I $G(^PLUK)["MLY" D
 .S $ZGBLDIR=PATH_"/mly/mly.gld"
 .S $ZDIR=PATH_"/mly"
 .D CP(PATH_"/mly/mly","MLY")
 .S $ZGBLDIR=ZGBLDIRO
 .S $ZDIR=ZDIRO
 ;
 S @$$^W4GL("P1BACKUP")@(+$H)=$H
 D W("SAVINGFINISHED")
 ;;S %MSG=" zkxrn mr cearl ozip . miizqd ieaib",%MSG("DLY")=2 D ALL^P1PC
 Q
 ;
CP(DB,REG) ;
 W "<br><br>",!
 D W("DBCOPY;<E>"_DB_"<E>")
 ;
 N DBB S DBB=$$PATHGB^W4FGIB
 D
 .I DBB="" S DBB=DB Q
 .I $E(DBB,$L(DBB))="/" S DBB=$E(DBB,1,$L(DBB)-1)
 .S DBB=DBB_"/"_$S(DB["/":$P(DB,"/",$L(DB,"/")),1:DB)
 ;
 ZSY "rm -f %l1cp."_$G(JB)
 ;
 N DIST S DIST=$ZTRNLNM("gtm_dist") ; -- SYSTEM DIRECTORY
 N TXT S TXT=DIST_"/mupip INTEG -fu -reg "_REG_" 2> %l1cp."_$G(JB)
 ;
 ZSY "export gtmgbldir="_$zgbldir_";"_TXT
 ;
 I $ZSY D  Q
 .W "<br><br>",!
 .;;W "<h2 style=""color:red"">DB_" - DATABASE ERRORS FOUND - BACKUP CANCELLED !!!</h2>",!
 .D W("BACKUPCANCELLED","red")
 ;
 I $$^%L1ZOS(10,DBB_"b.dat")'<0 D
 .ZSY "rm "_DBB_"bo.dat"
 .ZSY "mv "_DBB_"b.dat "_DBB_"bo.dat"
 ;
 I $$^%L1ZOS(10,DBB_"b1.dat")'<0 D
 .ZSY "rm "_DBB_"bo1.dat"
 .ZSY "mv "_DBB_"b1.dat "_DBB_"bo1.dat"
 ;
 S TXT=DIST_"/mupip BACKUP "_REG_" "_DBB_"b.dat"
 ZSY "export gtmgbldir="_$zgbldir_";"_TXT
 Q
 ;
SVSHP(%ZD,CD) ;
 N %GN K %ZG
 N N S N="" F  S N=$O(@$$^W4SHP@(CD,N)) Q:N=""  D
 .S %GN=$G(^(N)) Q:%GN=""
 .S:$E(%GN)="^" %GN=$E(%GN,2,20)
 .S %GN=$$^W4GL(%GN)
 .S %ZG(%GN)=""
 ;
 D TV^%W1GS
 Q
 ;
W(TXT,COLOR) ;
 W "<script>",!
 W "document.write('"_TXT_"')",!
 W "</script>",!
 Q

W4BACKUP
W4BACKUP(JB) ; [ 01.11.25 12:48 ] [ 26.03.24 12:05 ] [ 03.01.24 06:22 ] 
 ;;!!!!!!!!!!!! --------- OLD VERSION - NOT IN USE  ----------- !!!!!!!!!!!!
 N (JB,%ARG,%REM)
 ;
 I $G(@$$^W4PRM@("NOGIB")) Q
 ;
 ;;S %MSG=" ... oznd `p` ... mipezp qiqa ly ieaib rvazn ",%MSG("DLY")=10 D ALL^P1PC
 ;;N %ZG S %ZG("^FILE")=1,%ZD="#FILE"
 ;;D TV^%L1GS
 ;
 D TMP K @TMP S SH=0,SHSY=0 K ^ZSY
 ;
 D W("TABLESSAVINGINPROCESS")
 S PATH=$$PATHGB^W4FGIB
 ;
 ZSY "rm "_PATH_"KLS"_$ZD($H-10,"YYMMDD")
 ZSY "mv "_PATH_"\#KLS "_PATH_"KLS"_$ZD($H-1,"YYMMDD")
 ZSY "rm "_PATH_"KLZ"_$ZD($H-10,"YYMMDD")
 ZSY "mv "_PATH_"\#KLZ "_PATH_"KLZ"_$ZD($H-1,"YYMMDD")
 ;
 D SVSHP(PATH_"#KLS","%GSKLS")
 D SVSHP(PATH_"#KLZ","%GSKLZ")
 ;
 I $ZGBLDIR["/mumps.gld" D
 .D CP("mumps","DEFAULT")
 ;
ML ;
 S ZGBLDIRO=$ZGBLDIR
 S ZDIRO=$ZDIR
 ;
 S PATH=$$PATHGB^W4FGIB
 ;
 ;;I $G(^PLUK)["MLY" D
 .S $ZGBLDIR=PATH_"/mly/mly.gld"
 .S $ZDIR=PATH_"/mly"
 .D CP(PATH_"/mly/mly","MLY")
 .S $ZGBLDIR=ZGBLDIRO
 .S $ZDIR=ZDIRO
 ;
 S @$$^W4GL("P1BACKUP")@(+$H)=$H
 D W("SAVINGFINISHED")
 D PUT^%W1PRM("ENDBACKUP",1)
 ;
 ZSY "zip /home/gtmuser/\#GIB "_PATH_"\#KLS "_PATH_"\#KLZ"
 Q
 ;
CP(DB,REG) ;
 D SPACE(2)
 D W("DBCOPY;<E>"_DB_"<E>")
 ;
 N PATH2GIB S PATH2GIB=$$PATHGB^W4FGIB
 S DBB=$ZDIR
 ;D
 .I DBB="" S DBB=DB Q
 .I $E(DBB,$L(DBB))="/" S DBB=$E(DBB,1,$L(DBB)-1)
 .S DBB=DBB_"/"_$S(DB["/":$P(DB,"/",$L(DB,"/")),1:DB)
 ;
 D ZSY("rm -f %l1cp."_$G(JB))
 ;
 N DIST S DIST="/opt/gtm53004A/" ;$ZDIR ; $ZTRNLNM("gtm_dist")_"/" ; -- SYSTEM DIRECTORY
 N TXT S TXT=DIST_"mupip INTEG -fu -reg "_REG_" 2> %l1cp."_$G(JB)
 ;
 D ZSY("export gtmgbldir="_$zgbldir_";"_TXT)
 ;
 I $ZSY D  Q
 .D SPACE(2)
 .;;W "<h2 style=""color:red"">DB_" - DATABASE ERRORS FOUND - BACKUP CANCELLED !!!</h2>",!
 .D W("BACKUPCANCELLED","red")
 ;
 I $$^%L1ZOS(10,PATH2GIB_DB_"b.dat")'<0 D
 .D ZSY("rm "_PATH2GIB_DB_"bo.dat")
 .D ZSY("mv "_PATH2GIB_DB_"b.dat "_PATH2GIB_DB_"bo.dat")
 ;
 I $$^%L1ZOS(10,PATH2GIB_DB_"b1.dat")'<0 D
 .D ZSY("rm "_PATH2GIB_DB_"bo1.dat")
 .D ZSY("mv "_PATH2GIB_DB_"b1.dat "_PATH2GIB_DB_"bo1.dat")
 ;
 S TXT=DIST_"mupip BACKUP "_REG_" "_PATH2GIB_DB_"b.dat"
 D ZSY("export gtmgbldir="_$zgbldir_";"_TXT)
 Q
 ;
SVSHP(%ZD,CD) ;
 N %GN K %ZG
 N N S N="" F  S N=$O(@$$^W4SHP@(CD,N)) Q:N=""  D
 .S %GN=$G(^(N)) Q:%GN=""
 .S:$E(%GN)="^" %GN=$E(%GN,2,20)
 .S %GN=$$^W4GL(%GN)
 .S %ZG(%GN)=""
 ;
 D TV^%W1GS
 Q
 ;
W(TXT,COLOR) ;
 N A
 S A="<div dir="""_$$^%W1DIR_""" style=""text-align:center;"_$$FONTFM^W3CSS
 I $L($G(COLOR)) S A=A_";color:"_COLOR
 S A=A_""">"
 S A=A_"<h2" N PRM S PRM=""
 S A=A_">"
  I TXT[";" S PRM=$P(TXT,";",2,20)
  S A=A_$$^%W1DICT($P(TXT,";"),PRM)
 S A=A_"</h2>"
 S A=A_"</div>"
 D TMP S SH=SH+1,@TMP@(SH)=A
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
SPACE(COUNT) ;
 D TMP
 N I F I=1:1:COUNT S SH=SH+1,@TMP@(SH)="<br>"
 Q
ZSY(CMD) ;
 ZSY CMD
 D W("<E>"_CMD_"  $ZSY="_$ZSY_"<E>","black")
 S SHSY=SHSY+1
 S ^ZSY(SHSY)=CMD_"  $ZSY="_$ZSY
 ;W CMD,!
 ;H 1
 Q
 
 
 
 
 
 
 
 
 
 

W4BC
W4BC(CD,PRINT) ; [ 01.12.24 21:27 ] [ 
 D ^%L1TS
 I '$G(PRINT),$G(@$$^W4PRM@("BCPRINT")) S PRINT=^("BCPRINT")
 ;
 ;;D CLSNBC^W4MDBPC(PRINT)
 D OPSNBC^W4MDBPC(PRINT)
 S TXT=$$SHEM^W4P(CD)
 S TXT=$$HBR^%L1FRM(TXT,24)
 S TXT=$$SPA^%L1FRM(TXT)
 S TXT=$TR(TXT,TS0,TS1)
 S TXT=$J("",(30-$L(TXT)\2))_TXT
 ;
 S CD=$TR($J(CD,12)," ",0)
 ;
 S ST=$C(27,51,30)
 S ST=ST_$C(27,36,120,0)
 S ST=ST_$C(29,72,3,29,102,0,29,119,3,29,104,180)
 ;
 S ST=ST_$C(29,107,2)_CD_$C(0,10)
 S ST=ST_$C(10,10,10,10,10)
 S ST=ST_$C(27,33,57)_TXT_$C(10)
 D SETPC^W4MDBPC(PRINT,ST)
 D CLSNBC^W4MDBPC(PRINT)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BCK
W4BCK ; [ 28.09.25 08:03 ] [ 24.04.24 12:31 ] [ 06.12.20 17:16 ] 
  N SZ S SZ="" I $D(W4BCK("SZ")) S SZ=W4BCK("SZ")
  N PDN S PDN="" I $D(W4BCK("PDN")) S PDN=W4BCK("PDN")
  N NM S NM="BACK"
  I $D(W4BCK("NM")) S NM=W4BCK("NM")
  N PROC S PROC=$G(W4BCK("PROC"))
  I PROC="" S PROC="Back()"
  D ^W4BTN(NM,PROC,"red",,SZ,PDN)
  K W4BCK
 Q
 ;
BUT ;;D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red")
 D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red",",,,60")
 Q
 
 
 
 
 
 
 

W4BCKUP
W4BCKUP(JB) ; [ 08.06.25 12:15 ] [ 27.03.24 06:58 ] [ 26.03.24 12:01 ] 
 N (JB,%ARG,%REM)
 ;
 I $G(@$$^W4PRM@("NOGIB")) Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D TMP K @TMP S SH=0,SHSY=0 K ^ZSY
 ;
 S PATH=$$PATHGB^W4FGIB
 ;
 ZSY "rm "_PATH_"KLS"_$ZD($H-12,"YYMMDD")
 ZSY "mv "_PATH_"\#KLS "_PATH_"KLS"_$ZD($H-1,"YYMMDD")
 ZSY "rm "_PATH_"KLZ"_$ZD($H-12,"YYMMDD")
 ZSY "mv "_PATH_"\#KLZ "_PATH_"KLZ"_$ZD($H-1,"YYMMDD")
 ;
 D W("TABLESSAVINGINPROCESS")
 ;
 D SVSHP(PATH_"#KLS","%GSKLS")
 D SVSHP(PATH_"#KLZ","%GSKLZ")
 ;
 S BACKDB="BACKDB"
 S BACKUTL="sudo -u gtmuser /pos/sbin/backdb.sh"
 ;
 O BACKDB:(COMMAND=BACKUTL)::"PIPE"
 U BACKDB
 F  R ST Q:$ZEOF  D W^%W1GS(ST,"font-weight:bold")
 C BACKDB
 ;
 N CMD S CMD="zip /home/gtmuser/GIB "_PATH_"\#KLS "_PATH_"\#KLZ"
 ZSY CMD
 S CMD="mv /home/gtmuser/GIB.zip /home/gtmuser/\#GIB.zip"
 ZSY CMD
 ;
 S @$$^W4GL("P1BACKUP")@(+$H)=$H
 D W("SAVINGFINISHED")
 D PUT^%W1PRM("ENDBACKUP",1)
 Q
 ;
 ;
SVSHP(%ZD,CD) ;
 N %GN K %ZG
 N N S N="" F  S N=$O(@$$^W4SHP@(CD,N)) Q:N=""  D
 .S %GN=$G(^(N)) Q:%GN=""
 .S:$E(%GN)="^" %GN=$E(%GN,2,20)
 .S %GN=$$SPA^%L1FRM(%GN) Q:%GN=""
 .S %GN=$$^W4GL(%GN)
 .S %ZG(%GN)=""
 ;
 D TV^%W1GS
 Q
 ;
 ;
W(TXT,COLOR,DIR) ;
 I '$D(DIR) S DIR=$$^%W1DIR
 N A
 S A="<div dir="""_DIR_""" style=""text-align:center;"_$$FONTFM^W3CSS
 I $L($G(COLOR)) S A=A_";color:"_COLOR
 S A=A_""">"
 S A=A_"<h2" N PRM S PRM=""
 S A=A_">"
  I $E(TXT,1,2)="<>" S A=A_$E(TXT,3,$L(TXT))
  E  D
  .I TXT[";" S PRM=$P(TXT,";",2,20)
  .S A=A_$$^%W1DICT($P(TXT,";"),PRM)
 S A=A_"</h2>"
 S A=A_"</div>"
 D TMP S SH=SH+1,@TMP@(SH)=A
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
SPACE(COUNT) ;
 D TMP
 N I F I=1:1:COUNT S SH=SH+1,@TMP@(SH)="<br>"
 Q
 ;
 ;
ZSY(CMD) ;
 ZSY CMD
 D W("<E>"_CMD_"  $ZSY="_$ZSY_"<E>","black")
 S SHSY=SHSY+1
 S ^ZSY(SHSY)=CMD_"  $ZSY="_$ZSY
 ;W CMD,!
 ;H 1
 Q
 
 
 
 
 
 
 
 
 

W4BCODE
W4BCODE(PRM) ; [ 02.12.24 08:30 ] [ 
 N (JB,%ARG,PRM)
 S CD=$P(PRM,";")
 S COL=$P(PRM,";",2)
 F I=1:1:COL D ^W4BC(CD)
 Q 1
 
 

W4BDAI
W4BDAI(CD,COL,NN) ; [ 06.01.22 15:29 ] [ 01.09.14 17:14 ] [ 30.08.14 08:35 ] 
 ; -- CD  -  ITEM CODE TO BE MOVED TO LUNCH
 ;    COL -  ITEM QN
 ;    NN  -  ORDER'S LINE NUMBER TO BE TESTED FOR LUNCH
 ;---------------------------------------------------------
 N MNS,CDNS,CDSH,MAX,KF,MAX,N,A,NS,GLSET,N
 S GLSET=$$^W4GL("P1SETA")
 I '$G(CD) Q "NOCD"
 S CDNN=$$CDST^W3HZMST(JB,NN) I 'CDNN Q "NOCDNN"
 S NSCD=$$NS(CDNN,CD) I 'NSCD Q "NONSCD"  ; NSCD - SET NUMBER
 ;
 S MAX=$$QNMAXN^W3SET(NSCD)
 I 'MAX S MAX=99
 ;
 S KF=$$QNST^W3HZMST(JB,NN)
 S MAX=MAX*KF
 ;
 ; ------- CHECK IF POSSIBLE ADD ITEM TO LUNCH
 ;
 S N=NN F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N,$$LVST^W3HZMST(JB,N)=1 D
 .S CDN=$$CDST^W3HZMST(JB,N) Q:'CDN
 .S NS=$$NS(CDNN,CDN) Q:'NS
 .S MNS(NS)=$G(MNS(NS))+$$QNST^W3HZMST(JB,N)
 ;
 I $G(MNS(NSCD))+COL>MAX Q "MAX"
 Q NN
 ;
 ;
NS(MAIN,CD) ;
 N NS,OK S OK=""
 N GLEZ I '$$^W4EZAT(MAIN) Q 0
 S GLEZ=$S($$DD^W4EZA(MAIN):$$^W4GL("P1EZA"),1:$$^W4GL("P1EZT"))
 ;
 N N S N="" F  S N=$O(@GLEZ@(MAIN,N)) Q:N=""  D  Q:OK
 .S NS=$E(N,2,10)
 .I $D(@$$^W4GL("P1SETA")@(NS,CD)) S OK=NS
 ;
 Q OK
 
 
 

W4BDAIA
W4BDAIA(CD,COL) ; [ 29.06.22 21:18 ] [ 06.01.22 15:16 ] [ 16.11.16 18:49 ] 
 ; -- CD  -  ITEM CODE TO BE MOVED TO LUNCH
 ;    COL -  ITEM QN
 ;---------------------------------------------------------
 N (JB,%ARG,%REM,CD,COL)
 S GLSET=$$^W4GL("P1SETA")
 I '$G(CD) Q "NOCD"
 S STPAR=$$GETP^%W1PRM("STPAR")
 ;
 S CDNN=$$CD^W3HZMST(STPAR) I 'CDNN Q "NOCDNN"
 S NSCD=$$NS(CDNN,CD) I 'NSCD Q "NONSCD"  ; NSCD - SET NUMBER
 ;
 S MAX=$$QNMAXN^W3SET(NSCD)
 I 'MAX S MAX=99
 ;
 S KF=$$QN^W3HZMST(STPAR)
 I 'KF S KF=$$GETP^%W1PRM("QNAT")
 S MAX=MAX*KF
 ;
 ; ------- CHECK IF POSSIBLE ADD ITEM TO LUNCH
 ;
 S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I $E(N)?1N D
 .I $$LVST^W3HZMST(JB,N) Q
 .S CDN=$$CDST^W3HZMST(JB,N) Q:'CDN
 .S NS=$$NS(CDNN,CDN) Q:'NS
 .S MNS(NS)=$G(MNS(NS))+$$QNST^W3HZMST(JB,N)
 ;
 I $G(MNS(NSCD))+COL>MAX Q "MAX"_(MAX-$G(MNS(NSCD)))
 Q 1
 ;
 ;
NS(MAIN,CD) ;
 Q $$NS^W4BDAI(MAIN,CD)
 
 
 
 
 
 
 
 

W4BDCAJ
W4BDCAJ(HZM) ; [ 17.12.18 15:40 ] [ 
 N (JB,%ARG,HZM)
 S N="V",N1="",OK=0
 F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D  Q:OK
 .I '$$GET^W4GTVCH(HZM,N1,"V","NCA") S OK=1
 I OK,$$SHUL^W4HZMST(HZM) Q 0
 Q 1

W4BDKCB
W4BDKCB ; [ 18.05.18 09:15 ] [ 17.05.18 21:37 ] [ 
 N (JB,%ARG,%REM)
 S KLCB=$$^W4GL("KLIN")_"(""CB"")"
 S BG=0
 S DTS=$$^%L1DC("310118",3)
 S NOM="" F  S NOM=$O(^TRANL(NOM)) Q:NOM=""  D  Q:BG
 .S N="" F  S N=$O(^TRANL(NOM,901,N)) Q:N=""  D  Q:BG
 ..S A=$G(^(N))
 ..I $P(A,"~",3)'<DTS S BG=NOM
 ;
 K ^NOSND
 S N="" F  S N=$O(@KLCB@(N)) Q:N=""  D
 .W N,!
 .S STRING=$G(^(N))
 .I $D(@$$^W4GL("KLF")@(STRING,"CBV")) D
 ..S N1="" F  S N1=$O(@$$^W4GL("KLF")@(STRING,"CBV",N1)) Q:N1=""  D
 ...S S21=$G(@$$^W4GL("KLF")@(STRING,"CBV",N1))
 ...S N2="" F  S N2=$O(@$$^W4GL("KLF")@(STRING,"CBV",N1,N2)) Q:N2=""  I N2 D
 ....I '$D(^(N2,"TRAN")) D
 .....S S21=$G(@$$^W4GL("KLF")@(STRING,"CBV",N1,N2))
 .....S CARD=$P(S21,"*",2)
 .....S SUM=$P(S21,"*",6)
 .....S NOM=$P($P(S21,"*",3),"-",3)
 .....S HD=$G(@$$^W4GL("KLF")@(STRING,"CB",N1))
 .....S DAT=$P(HD,"\",4)
 .....I '$$FIND(DAT,NOM,SUM,CARD) S ^NOSND(N1,N2)=SUM_"^"_DAT
 Q
 ;
FIND(DAT,NP,SUM,CARD) ;
 N (JB,BG,DAT,NP,SUM,CARD)
 N DTS S DTS=$$^%L1DC(DAT,4)
 N OK S OK=0
 S NOM=BG-1 F  S NOM=$O(^TRANL(NOM)) Q:NOM=""  D  Q:OK
 .S N="" F  S N=$O(^TRANL(NOM,901,N)) Q:N=""  D  Q:OK
 ..S A=$G(^(N))
 ..I $P(A,"~",3)<(DTS-3)!($P(A,"~",3)>(DTS+3)) Q
 ..I +$E(A,4,6)=+NP,+$E(A,13,19)=(SUM*100),A[CARD S OK=1
 Q OK
 ;
SEND ; 
 S N1="" F  S N1=$O(^NOSND(N1)) Q:N1=""  D
 .S N2="" F  S N2=$O(^NOSND(N1,N2)) Q:N2=""  D
 ..W "CB="_N1_"  N2="_N2_"  "_^(N2)
 ..S STRING=$G(^KLIN("CB",N1)) Q:STRING=""
 ..S S21=$G(^KLF(STRING,"CBV",N1,N2)) Q:S21=""
 ..S STRIN=$$^W4S212IN(S21)
 ..S %ARG("AUTHNO")=1
 ..S A=$$INOUT^W4PAYCA(STRIN)
 ..S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 ..S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 ..W "  -- STA="_STA,!
 ..S $P(^NOSND(N1,N2),"^",3)=STA Q:STA
 ..S ST=$$^W4TRAN(SOUT,TRAN)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BDKDBL
W4BDKDBL ; [ 20.10.16 10:52 ] [ 31.01.13 18:21 ] [ 18.01.13 13:12 ] 
BDKDBLHZ(DAT1,DAT2) ;
 N DT,DT1,DT2
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 K ^BDKDBLHZ1
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(^P1H(DT,HZ)) Q:HZ=""  D
 ..K ^BDKDBLHZ
 ..I $D(^P1HZ(HZ,"CB","V"))  D
 ...S N="" F  S N=$O(^P1HZ(HZ,"CBOLD","V",N)) Q:N=""  I N D
 ....S ST=$G(^(N))
 ....S IN=$G(^P1HZ(HZ,"CBOLD","V",N,"STRIN")) Q:IN=""
 ....S IN1=$E(IN,1,65)
 ....S OU=$G(^P1HZ(HZ,"CBOLD","V",N,"STROU"))
 ....I $E(OU,1,3)="000" D
 .....I $D(^BDKDBLHZ(IN1)) D  Q
 ......I N>1 S ^BDKDBLHZ1(IN)=HZ_"\"_N
 .....S ^BDKDBLHZ(IN1)=HZ_"\"_N
 Q
 ;
BDKDBLTR ;
 S NT1=256
 S NT2=302
 K ^BDKDBL1
 F NT=NT1:1:NT2 D BDKDBL(NT)
 Q
 ;
BDKDBL(NT) ;
 K ^BDKDBL
 S N="" F  S N=$O(^TRANL(NT,901,N)) Q:N=""  D
 .S A=$E($G(^(N)),7,77) Q:A=""
 .I $D(^BDKDBL(A)) W "NT="_NT_"  N="_N,! S ^BDKDBL1(NT,N)="" Q
 .S ^BDKDBL(A)=""
 Q
 ;
ZICGR ;
 N IN
 S IN="" F  S IN=$O(^BDKDBLHZ1(IN)) Q:IN=""  D
 .S A=$G(^(IN))
 .W $$ZIC(IN)_" "_A,!
 K ^BDKDBLHZ1
 Q
 ;
ZIC(STRIN) ;
 N STRINBIT,S21
 S STRINBIT=$$STRINBIT^W4PAYCA(STRIN)
 S A=$$INOUT^W4PAYCA(STRINBIT)
 ;
 S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 ;
 I STA'="000" Q ER_";"_STA_";"_TRAN
 ;
 S S21=""
 S TRAN("IN")=STRINBIT
 ;
 S S21=$$^W4TRAN(SOUT,TRAN)
 Q "OK"
 ;
BIT(NT,N) ;
 K ^TRANL(NT,901,N)
 K ^W4TRANL(NT,901,N)
 Q
 ;
DELGR ;
 N IN
 S IN="" F  S IN=$O(^BDKDBLHZ1(IN)) Q:IN=""  D
 .S A=$G(^(IN))
 .S HZ=$P(A,"\"),N=$P(A,"\",2)
 .I 'HZ!'N Q
 .D DEL(HZ,N)
 .W HZ," ",N,! H 1
 Q
 ;
 ;
DEL(HZ,N) ;
 Q:N<2
 N ST,SUM,TIP
 S ST=$G(^P1HZ(HZ,"CB","V",N)) Q:ST=""
 ;
 S SUM=$P(ST,"*",7)
 S SHUL=$P(^P1HZ(HZ),"\",12)
 S TSHL=$P(^P1HZ(HZ),"\",11)
 S TIP=$P(^P1HZ(HZ,"CB"),"\",10)
 I TIP,TIP'<SUM S TIP=TIP-SUM S $P(^P1HZ(HZ,"CB"),"\",10)=TIP
 I SHUL-TSHL'<SUM S SHUL=SHUL-SUM S $P(^P1HZ(HZ),"\",12)=SHUL
 ;;M ^P1HZDBL(HZ,"CB","V",N)=^P1HZ(HZ,"CB","V",N)
 K ^P1HZ(HZ,"CB","V",N)
 Q
 

W4BDKPAR
W4BDKPAR(PAR,KAM) ; [ 19.01.23 19:12 ] [ 01.04.21 11:22 ] [ 09.12.20 08:13 ] 
 Q:'$D(PAR)  Q:PAR=""
 N MYDVN S MYDVN=$$^W4MYDVN
 I '$D(@$$^W4GL("PAR")@(PAR)) S %SC("ER")=1 Q
 I $$NL^W4PRTVW(PAR),KAM>0 D PRTNO(PAR) D RESTKOT Q
 N SUG S SUG=$$SUG^W4P(PAR)
 I $D(@$$^W4GL("P1PARPOS")@(PAR)),MYDVN,"\"_@$$^W4GL("P1PARPOS")@(PAR)_"\"'[("\"_MYDVN_"\") S %MSG=" zxg` dcnrl crein "_PAR_" hixt " G EBDKP
 I $$NOMSL^W4THUM(PAR),$$^W4MSL($G(NMB)) S %MSG=" dcrqnl crein "_PAR_" hixt " G EBDKP
 I $$NOMSD^W4THUM(PAR),'$$^W4MSL($G(NMB)) S %MSG=" migelynl crein "_PAR_" hixt " G EBDKP
 I $D(@$$GLTHUM@^W4THUM@(PAR)) G BDTAW
 I $D(@$$^W4GL("P1PARMSL"))>9,$G(NMB),$$^W4MSL(NMB),SUG,'$D(@$$^W4GL("P1PARMSL")@(SUG)) S %MSG=" dcrqnl crein "_PAR_" hixt " G EBDKP
 I $D(@$$^W4GL("P1PARMSL"))>9,$G(NMB),'$$^W4MSL(NMB),SUG,$D(@$$^W4GL("P1PARMSL")@(SUG)) S %MSG=" migelynl crein "_PAR_" hixt " G EBDKP
BDTAW I $D(@$$^W4GL("P1PARTAW"))>9,$G(NMB),'$$^W4MSL(NMB),SUG,'$G(@$$^W4PRM@("TAWKVZ")),$$^W4DLPK(NMB),'$D(@$$^W4GL("P1PARTAW")@(SUG)),$G(@$$^W4PRM@("ONLY")) D  G EBDKP
 .S %MSG=$S($D(@$$^W4GL("P1PARMSL")@(SUG)):" migelynl ",1:" libx ogleyl ")_" wx crein "_PAR_" hixt "
 I $D(@$$^W4GL("P1PARTAW"))>9,$G(NMB),'$$^W4MSL(NMB),SUG,'$G(@$$^W4PRM@("TAWKVZ")),'$$^W4DLPK(NMB),$D(@$$^W4GL("P1PARTAW")@(SUG)) S %MSG=" xidn ogleyl wx crein "_PAR_" hixt " G EBDKP
 I $D(@$$^W4GL("P1PARTAW"))>9,$G(NMB),'$$^W4MSL(NMB),SUG,$G(@$$^W4PRM@("TAWKVZ")),$$TAW^W4DLPK(NMB),'$D(@$$^W4GL("P1PARTAW")@(SUG)),$G(@$$^W4PRM@("ONLY")) D  G EBDKP
 .S %MSG=$S($D(@$$^W4GL("P1PARMSL")@(SUG)):" migelynl ",1:" libx ogleyl ")_" wx crein "_PAR_" hixt "
 I $D(@$$^W4GL("P1PARTAW"))>9,$G(NMB),'$$^W4MSL(NMB),SUG,$G(@$$^W4PRM@("TAWKVZ")),'$$TAW^W4DLPK(NMB),$D(@$$^W4GL("P1PARTAW")@(SUG)) S %MSG=" xidn ogleyl wx crein "_PAR_" hixt " G EBDKP
 N OKNL S OKNL=$$BDKNL(PAR) I OKNL,KAM>0 S %MSG=" ( "_OKNL_" dlah ) dry itl lerp "_PAR_" hixt " G EBDKP
 K PRSIS
 I $D(@$$^W4GL("P1EZRI")@(PAR))!$D(@$$^W4GL("P1EZ")@(PAR))!$D(@$$^W4GL("P1EZK")@(PAR))!$D(@$$^W4GL("P1SETAI")@(PAR))!$D(@$$^W4GL("P1EZAI")@(PAR))!$D(@$$^W4GL("P1EZTI")@(PAR)),'$$MH^W4P(PAR),'$G(@$$^W4PRM@("MH0")),'$$SUGOTH^W4L(NMB)
 .S PRSIS="" S %MSG="SIS2" Q
 I $D(@$$^W4GL("P1SETPI")@(PAR)),$G(@$$^W4PRM@("NOSETP")) D  G EBDKP
 .S %MSG=$O(@$$^W4GL("P1SETPI")@(PAR,""))_" 'qn dxiknl mihixt hq jxc wx xeknl ozip df hixt "
 I $D(@$$^W4GL("P1TFR"))=11,$G(@$$^W4GL("P1TFR")),'$D(@$$^W4GL("P1TFRI")@(PAR)),('$D(@$$^W4GL("P1EZ")@(PAR))&'$D(@$$^W4GL("P1EZK")@(PAR)))!$G(@$$^W4PRM@("TSFTFR")) D  Q
 .S %MSG="<ENTER>. hixtza `vnp `l hixt " S %SC("ER")=1
 I $G(@$$^W4GL("PL")@("NAME"))'="ZADA",$D(@$$^W4GL("P1TFRM")@(MYDVN))=11,$G(@$$^W4GL("P1TFRM")@(MYDVN)),'$D(@$$^W4GL("P1TFRIM")@(MYDVN,PAR)),'$D(@$$^W4GL("P1EZ")@(PAR)),'$D(@$$^W4GL("P1EZK")@(PAR)) D  Q
 .S %MSG="<ENTER>. hixtza `vnp `l hixt " S %SC("ER")=1
 I $D(@$$^W4GL("P1EZA")@(PAR)),$$MANA^W4PRM S $P(%MBG("OU"),"\",8)=1
 D PRTEND(PAR,KAM) I $G(%SC("ST"))=1!$D(%SC("ER")) Q
TSTP N KUP S KUP=$$PRINTIG^W3PRMDP(PAR) Q:KUP["L"
 I KUP'?1N.N.E,$E(KUP)'="L",$E(KUP)'="C",HZSCR'="P1HZTA",HZSCR'="P1HZT1" D ERMDP^W4HZMPC(PAR) S %SC("ST")=1.1 Q
 I KUP?1"0".E,PAR,PAR'=$G(@$$^W4PRM@("SHEMZ")) D  Q
 .Q:KUP'=0
 .S HRP="" I '$$NOLELO^W4PRM S HRP=" ! dqtcd `ll"
 .I $L($G(HZM)),$D(@$$^W4THZ@("SHEMZ")) S HRP=HRP_^("SHEMZ")
 I PAR,PAR=$G(@$$^W4PRM@("SHEMZ")) Q
 I KUP D ^W4MDP(KUP)
 I '$D(%MDP)!'$G(PRINT),$E(KUP)'="L",$E(KUP)'="C",HZSCR'="P1HZTA",HZSCR'="P1T1" D ERMDP^W4HZMPC(PAR) S %SC("ST")=1.1 Q
 I $G(HRP)="" D
 .I $$SHEM^W4P(PAR)["FIRE" S HRP=$$T^%L1TIME($P($H,",",2)) Q
 .I $$SHEM^W4P(PAR)["UP!" S HRP=$$T^%L1TIME($P($H,",",2)) Q
 .I $$SHEM^W4P(PAR)["CLOSED!" S HRP=$$T^%L1TIME($P($H,",",2)) Q
 .I $$SHEM^W4P(PAR)["DOWN!" S HRP=$$T^%L1TIME($P($H,",",2)) Q
 .I $$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")),'$$NOLELO^W4PRM S HRP="! dqtcd `ll" Q
 .Q:$$D^W4EZH(PAR)
 .I $$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHRKOT")) S HRP=$G(@$$^W4PRM@("TAWHR"),"TAKE AWAY") Q  ;"TAKE AWAY"
 .S HRP=$$HRA^W4P(PAR) Q
 I $G(@$$^W4GL("PL")@("USER"))="MAFINS",$$MANA^W4PRM D
 .N M1,M2,I S M1="1,2,3,4,5,6,7,8,9,10"
 .S M2="-I-,-II-,-III-,-IV-,-V-,-VI-,-VII-,-VIII-,-IX-,-X-"
 .F I=1:1:$L(M1,",") I $$DEP^W4P(PAR)=$P(M1,",",I),$G(HRP)'[$P(M2,",",I) S HRP=$G(HRP)_$P(M2,",",I) Q
 Q
EBDKP ;
 D V^%L1GET S %SC("ER")=1 D RESTKOT
 Q
BDKNL(PAR) N OKNL S OKNL=0 ;; I $D(@$$^W4GL("PARNL")) D
 .N N,MES,ADS,MH,ZM,TM,DAY,MEJ,ADJ,MET,ADT,A,D
 .S ZM=$P($H,",",2)\60 D ^W4IN
 .S DAY=$$^%L1DC(P1DZ,8),OKNL=0
 .S N="" F  S N=$O(@$$^W4GL("PARNL")@(N)) Q:N=""  S A=$G(^(N))  I $D(@$$^W4GL("PARNL")@(N,PAR)) D  Q:OKNL
 ..D PRS^%L1FRM(A,"MET\ADT\MEJ\ADJ","\")
 ..I DAY<MEJ!(DAY>ADJ) Q
 ..S MES=MET*60+$P(MET,":",2),ADS=ADT*60+$P(ADT,":",2)
 ..I ADS<MES S ADS=ADS+(24*60)
 ..I ZM<(6*60) S ZM=ZM+(24*60)
 ..I ZM'<MES,ZM'>ADS S OKNL=N Q
 Q OKNL
PRTNO(PAR) ;
 Q
PRTEND(PAR,KAM) ;
 S %MSG=""
 Q:'KAM
 I '$D(P1DZ) D ^W4IN
 I KAM<-$G(@$$^W4PRM@("KOLMAX"),99)!(KAM>$G(@$$^W4PRM@("KOLMAX"),99)),PAR'=0 S %MSG=" ! icn dlecb zenk "  S %SC("ER")=1 Q
 N A0,A,A1,A2,%TO,%ZMSL,%OLDTO,TSHL,SOAD
 S A2=0
 S A0="" I $L($G(HZM)),$D(@$$^W4THZ) S A0=^(HZM)
 S TSHL=$$TSHL^W3HZMSTP(JB),SOAD=$$SOAD^W3HZMST(JB) S:'SOAD SOAD=1
 I $G(@$$^W4GL("ENDSET")@(PAR)) S A2=$$SUMP2(PAR,0) D PRTEND2 Q:$D(%SC("ST"))
 I $G(@$$^W4GL("PRTEND")@(P1DZ,PAR))'?1N.N,'$D(@$$^W4GL("PRTMBS")@(PAR)),'$D(@$$^W4GL("PRTMBH")@(PAR)) Q
 S A1=$$SUMP(PAR,1)
PRTEND1 I (A1+KAM)>1&(TSHL>0)!(A1+KAM<-1&(TSHL<0)),$D(@$$^W4GL("PRTMBH")@(PAR)) S %MSG=" `nqiq yiwdl yi xey`l ! dpnfda mrt wx oinfdl xzen df hixt " S %SC("ER")=1 D RESTKOT Q
 I (A1+KAM)>SOAD&(SOAD>0)!(A1+KAM<SOAD&(SOAD<0)),$D(@$$^W4GL("PRTMBS")@(PAR)) S %MSG=" `nqiq yiwdl yi xey`l ! dpnfda creq lkl mrt wx oinfdl xzen df hixt " S %SC("ER")=1 D RESTKOT Q
 Q:$G(@$$^W4GL("PRTEND")@(P1DZ,PAR))'?1N.N  Q:KAM<0  S A=^(PAR),A1=$$SUMP(PAR,0)
 I KAM+A1>A D  D RESTKOT S %SC("ST")=1 Q
 .I A-A1>0 S %MSG=" zepn wx "_(A-A1)_" wx ex`yp : "_$$SHEM^W4P(PAR)_" "_PAR Q
 .S %MSG=" ! zepn ex`yp `l - "_$$SHEM^W4P(PAR)_" "_PAR Q
 Q
PRTEND2 Q:KAM<0  S A=$G(@$$^W4GL("PRTEND")@(P1DZ,"S"_^ENDSET(PAR))) Q:A'?1N.N
 I KAM+A2>A D  S %SC("ST")=1 Q
 .I A-A2>0 S %MSG=" zepn wx "_(A-A2)_" wx ex`yp " Q
 .S %MSG=" ! zepn ex`yp `l " Q
 Q
RESTKOT ;
 Q
SUMP(PAR,PR) ;
 ;--- HISHUV LELO SHURA NOHAHIT
 ;-- PR=1 - KOL HA PRITIM B HAZMANA
 ;-- PR=0 - RAK PRITIM HADASHIM
 N I S SUMP=0 F I=1:1 Q:'$D(@$$^W4THZ1@(I))  S:I'=SH&($P(^(I),"\")=PAR)&(PR!(^(I)'["\@@")) SUMP=SUMP+$P(@$$^W4THZ1@(I),"\",5) D
 .N N S N="" F  S N=$O(@$$^W4THZ1@(I,N)) Q:N=""  D
 ..I 'PR,^(N)["\@@" Q
 ..I N=PAR S SUMP=SUMP+$P(^(N),"\",3) Q
 ..I $P(N,"-",3)=PAR S SUMP=SUMP+$P(^(N),"\",2)
 Q SUMP
SUMP2(PAR,PR) ;
 ;--- HISHUV LELO SHURA NOHAHIT
 ;-- PR=1 - KOL HA PRITIM B HAZMANA
 ;-- PR=0 - RAK PRITIM HADASHIM
 N I,SUMP,PARI S SUMP=0 F I=1:1 Q:'$D(@$$^W4THZ1@(I))  D
 .S PARI=$P($G(^(I)),"\") Q:PARI=""  S PARS=$G(^ENDSET(PARI))
 .I I'=SH,PARS,PARS=$G(^ENDSET(PAR)),PR!(@$$^W4THZ1@(I)'["\@@") S SUMP=SUMP+$P(@$$^W4THZ1@(I),"\",5)
 .N N S N="" F  S N=$O(@$$^W4THZ1@(I,N)) Q:N=""  D
 ..I 'PR,^(N)["\@@" Q
 ..I $G(^ENDSET(N))=$G(^ENDSET(PAR)) S SUMP=SUMP+$P(@$$^W4THZ1@(I,N),"\",3) Q
 ..I $P(N,"-",3),$G(^ENDSET($P(N,"-",3)))=$G(^ENDSET(PAR)) S SUMP=SUMP+$P(@$$^W4THZ1@(I,N),"\",2)
 Q SUMP
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BDKTMP
W4BDKTMP ; [ 25.07.22 06:27 ] [ 21.07.22 21:15 ] [ 01.07.22 19:56 ] 
 N (JB,%ARG,%REM)
 S TMPORD=$$^W4TMPORD
 S TMPORD2=$$^W4MAIN("TMPORD2")
 K @TMPORD2
 ;
 S FIRST=$O(@TMPORD@(""))
 S LAST=$O(@TMPORD@(99999),-1)
 ;
 I FIRST'=1 D SEDER Q
 ;
 S OK=1
 F I=1:1:LAST D  Q:'OK
 .I '($D(@TMPORD@(I))#2) S OK=0 
 ;
 I 'OK D SEDER
 Q
 ;
 ;
SEDER ;
 S K=0
 M @$$^W4MAIN("TMPBDKER")=@TMPORD
 ; 
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N?."-"1N.E D
 .N A S A=$G(^(N)) Q:A=""  Q:$E(A,1,3)="~~~"
 .S K=K+1
 .M @TMPORD2@(K)=@TMPORD@(N)
 .D ^W4SRVTO(TMPORD,N,TMPORD2,K)
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N?1U.E D
 .I '$D(@TMPORD2@(N)) M @TMPORD2@(N)=@TMPORD@(N)
 ;
 S @TMPORD2=$G(@TMPORD)
 K @TMPORD M @TMPORD=@TMPORD2
 K @TMPORD2
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BDKTS
W4BDKTS ; [ 02.11.21 13:15 ] [ 
Z1 R !,"DAT1 :",DAT1 Q:'DAT1
 S ZAPR="DAT2 [ "_DAT1_" ] :"
 W !,ZAPR R DAT2
 S:DAT2="" DAT2=DAT1
 I DAT2="^" G Z1
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 F DT=DT1:1:DT2 D
 .S N="" F  S N=$O(^P1H(DT,N)) Q:N=""  D
 ..S TS=$$TSHL^W4HZMST(N)+$$TIP^W4HZMST(N)
 ..S SHUL=$$SSHUL^W4HZMST(N)
 ..S SHULA=$$SHULA^W4HZMST(N)
 ..I (SHUL+SHULA>(TS*1.1))&(TS>0)!(SHUL+SHULA<(TS*1.1)&(TS<0)) D
 ...W !,$ZD(DT,"DD.MM.YY")_" ORD:"_$J(N,7)_" TO PAY :"_$J(TS,7,2)_"  PAIDED :"_$J(SHUL+SHULA,2,2)
 Q
 
 
 
 
 
 
 
 
 

W4BGBODY
W4BGBODY ; [ 09.09.26 05:46 ] [ 08.09.26 17:47 ] [ 07.09.26 12:36 ] 
 ;;I $G(@$$^W4PRM@("ASH","MASOF"))=1411618,'$$GET^%W1PRM("W4BO") D PUT^%W1PRM("BODYURL","#000000") Q
 I $$^W6 D PUT^%W1PRM("BODYURL",$$W6) Q
 I $$CLRCSR'?1U.E D PUT^%W1PRM("BODYURL","w4bgbody.jpg") Q
 N BGG,GRD S GRD=$$GRD
 D PUT^%W1PRM("BODYURL",GRD)
 Q
 ;
BG(STAM) ;
 ;;I $G(@$$^W4PRM@("ASH","MASOF"))=1411618,'$$GETP^%W1PRM("W4BO") Q "#000000"
 I $$^W6 Q $$GRD^W3CSS($$W6)
 I $$CLRCSR'?1U.E Q "background-image:url('w4bgbody.jpg')"
 ;
 N GRD S GRD=$$GRD
 I GRD["-" Q $$GRD^W3CSS(GRD)
 Q "background-color:"_GRD
 ;
BG5(STAM) Q $$GRD^W3CSS("DARKGREY^LIGHTGREY")
BG51(STAM) Q $$GRD^W3CSS("EFEFEF^FFFFFF")
W6(STAM) Q "#C0C0C0-#EFEFEF"
 ;
GRD() ;
 N BGG,GRD S BGG=$$GRD^W4PRM
 I BGG["-",$L(BGG)>12 S GRD=BGG
 E  I $TR(BGG,"#","")?6(.A.N) S GRD=BGG
 E  S GRD="E0CFB5-FFFFFF"
 Q GRD
 ;
HDORDBG() ;
 N CLRCSR,BG S CLRCSR=$$CLRCSR
 I CLRCSR?1U.E D  Q BG
 .S BG=$G(@$$GLPRM@(CLRCSR,"HDORDBG"))
 .I BG="" S BG="background-color:#990000" Q
 .
 .I $TR(BG,"#","")?6(.A.N)1"-"6(.A.N) S BG=$$GRD^W3CSS(BG) Q
 .I BG[".jpg"!(BG[".png") S BG="background-image:url('"_BG_"')" Q
 .S BG="background-color:"_BG
 Q "background-image:url('w4bgkpvn.jpg')"
 ;
HDORDFG() ;
 N FG
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR?1U.E D
 .S FG=$G(@$$GLPRM@(CLRCSR,"HDORDFG"))
 I $G(FG)="" S FG="yellow"
 Q FG
 ;
HDORDRKVBG() ;
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR?1U.E Q $G(@$$GLPRM@(CLRCSR,"HDORDRKVBG"))
 Q "#990000"
 ;
HDORDRKVFG() ;
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR?1U.E Q $G(@$$GLPRM@(CLRCSR,"HDORDRKVFG"))
 Q "white"
 ;
CLRCSR() 
 Q $G(@$$GLPRM)
 ;
GLPRM() ; 
 I $$GETP^%W1PRM("ELPOS") Q $$^W4GL("W4CLRCSR")
 Q "^|$$^W3MAIN|W3COLOR"
 ;
IFRBG() ;
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR?1U.E Q $G(@$$GLPRM@(CLRCSR,"IFRBG"))
 Q "WHITE"
 ;
CLRCSRBG()
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR'?1U.E Q $$BG
 N BG S BG=$G(@$$GLPRM@(CLRCSR,"BG"))
 I BG="" S BG=$$BG
 Q BG
 ; 
CLRCSRBGBO()
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR'?1U.E Q $$BG
 N BGBO S BGBO=$G(@$$GLPRM@(CLRCSR,"BGBO"))
 I BGBO="" Q "w4bgbody.jpg"
 Q BGBO
 ; 
BRDCLR() ; 
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR'?1U.E Q "#b54800"
 N BDCLR S BDCLR=$G(@$$GLPRM@(CLRCSR,"BRDCLR"))
 I BDCLR="" Q "#B54800"
 Q BDCLR
 ;
BGHD() ; 
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR'?1U.E Q "#990000"
 N BGHD S BGHD=$G(@$$GLPRM@(CLRCSR,"BGHD"))
 I BGHD="" Q "#990000"
 Q BGHD
 ;
FGHD() ; 
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR'?1U.E Q "yellow"
 N FGHD S FGHD=$G(@$$GLPRM@(CLRCSR,"FGHD"))
 I FGHD="" Q "YELLOW"
 Q FGHD
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BGVW
W4BGVW(JB) ; [ 22.02.23 08:36 ] [ 06.06.10 18:30 ] [
 N N,TMP D TMP
 S PREV=+$G(@TMP@("PREV"))
 S LAST=+$O(@TMP@(9999999),-1)
 S @TMP@("PREV")=LAST
 Q PREV_";"_LAST
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
TXT(SH) ;
 N A,TMP D TMP
 S A=$G(@TMP@(SH))
 I A="" S A="&nbsp;"
 Q A
 

W4BIDMSG
W4BIDMSG(HZM,PELE,DEL) ; [ 15.12.24 12:26 ] [ 
 N (JB,%ARG,HZM,PELE,DEL)
 I '$G(HZM) Q
 S PELE=$$SPA^%L1FRM(PELE)
 S PELE=$TR(PELE,"-","")
 I '$G(PELE) Q
 I $L(PELE)<10 Q
 I +$E(PELE)="0" S PELE="+972"_$E(PELE,2,255)
 ;
 D ^%L1TS
 S DT=$$^W4DZ
 S TXT=$S($G(DEL):"dlhea",1:"dxye`")_" "_$G(HZM)_" dpnfd"
 ;
 S TXT=$$H2U^%L1FRM(TXT)
 S HD="Quotation "_HZM_" has been "_$S($G(DEL):"canceled",1:"approved")
 ;
 S FL="whappbid"_DT_"_"_JB_"_"_$P($H,",",2)_"_"_HZM_"_"_$S($G(DEL):"0",1:"1")
 O FL:(NEWVERSION:WRITE) 
 U FL
  W "<html>",!
   W "<br><br><br><br><br>",!
   W "<p style=""text-align:center;font-size:60px;font-weight:bold"">",!
    W TXT
   W "</p>",!
  W "</html>",!
 C FL
 ;
 D PROCFILE^W4EMAIL(FL,"",3)
 ;
 D SNDWHATSAPP^W4PCHBP(HD,FILE1,PELE)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BIGTM
W4BIGTM ; [ 03.10.21 09:00 ] [ 19.09.21 13:52 ] [ 26.08.21 19:22 ] 
 N (JB,%ARG,%REM)
 S HZ=$O(@$$^W4MAIN("TMPBIGTM")@("")) Q:HZ=""
 I $G(^(HZ))<($H-1) Q
 Q:'HZ
 S %ARG("MKRYD")=1
 D PC(HZ,%ARG("MKRYD"))
 H 1
 S %ARG("MKRYD")=0
 D PC(HZ,0)
 K @$$^W4MAIN("TMPBIGTM")@(HZ)
 ;
 W "<script>",!
  W "ChangeFontSize(-2)",!
  W "self.print()",!
  W "ChangeFontSize(2)",!
 W "</script>",!
 H 2
 Q
 ;
 ;
PC(HZ,MKR) ;
 N W4BIGTM S W4BIGTM=""
 S %ARG("TM")=1
 S %ARG("PRINT")=1
 D ^W4PCHBP(HZ,MKR)
 ;;I $O(@$$^W4MAIN("TMPBIGTM")@(HZ))!MKR D
 I MKR D
 .W "<p style=""page-break-before:always"">",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BIO
W4BIO ; [ 21.07.24 14:28 ] [ 06.07.23 11:47 ] [ 13.06.23 16:51 ] 
 N (JB,%ARG)
 ; -- WAS <br><br><br>
 W "<table align=""center"" dir="""_$$^%W1DIR_""" "
  S WD=$S($$1024^W4WDSCR:200,1:250)_"px"
  ;;I $G(%ARG("LVL"))="B"&$G(%ARG("PRMDEL"))
  I $G(%ARG("LVL"))="" S WD=WD*1.5
  I $G(%ARG("LVL"))="H" S WD="90%"
  I $G(%ARG("WD")) S WD=%ARG("WD")
  ;
  W " cellpadding=""30px"" width="""_WD_""" "
  W "style=""background-color:yellow;font-size:"_$$^W3FSZ(16)_";border:3px brown solid"" "
 W ">",!
  W "<tr>"_$$TDC_$$^%W1DICT("PUTYOURFINGER2DEV"),"</td></tr>",!
  W "<tr>"_$$TDC
   W "<input type=""password"" id=""rkvid"" size=""5"" "
   W " readonly=""readonly"" "
   W "style=""font-size:"_$$^W3FSZ(26)_";text-align:center"" />"
  W "</td></tr>",!
  W "<tr>"
   W "<td id=""resmsg"" dir=""LTR"" style=""text-align:center;font-size:"_$$^W3FSZ(16)_"""></td>",!
  W "</tr>",!
  W "<tr>"_$$TDC
   I $G(%ARG("LVL"))="" D
   .D ^W4BTN("IMREADY",$S($G(%ARG("MGRBIO")):"MgrReady()",1:"Ready()"),"GREEN","",22,10)
   .W $$NBSP^%L1FRM(5)
   D ^W4BTN("BACK","Back()","RED","",22,10)
  W "</td></tr>",!
 W "</table>",! 
 Q
 ;
 ;
TRSP ;
 W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
TDC(STAM) ;
 Q "<td align=""center"">"
 ;
 ;
GET(STAM) ;
 N (JB)
 S A=$$CMD("verify")
 I A?1U.E Q A
 ;
GET1 ;
 S RES=$$GETVL(A,"result")
 S OV=$$GETVL(A,"empID")
 ;
 I 'RES,OV Q $$DOP^W4NAME(OV)
 I OV="null" Q $$^%W1DICT("WORKERNOTINBIOTABLE")
 ;
 N MSG S MSG=$$GETVL(A,"message")
 I MSG="" S MSG="ERROR"
 E  S MSG="<!>"_MSG
 Q MSG
 ;
 ;
USBIO(STAM) ; 
 I $$USBIO^W4PRM&($G(%ARG("VZ"))="WORKERNUMBER") Q 1
 Q 0 
 ;
ADDWORK(OV,DEL) ;
 N (JB,OV,DEL)
 S OV=$$DOP^W4NAME(OV)
 S MYDVN=$$^W4MYDVN
 ;;S MYDVN=1 ; ***
 N BIO S BIO=$G(@$$^W4GL("W4POSBIO")@(MYDVN))
 I 'BIO Q "BIONOTDEFINED4POS"
 S FL="BIO"_MYDVN
 C FL:(DELETE)
 S MSG="<!>"
 S N=MYDVN
 D
 .S EMDA="POS "_N
 .S ADR=$G(@$$^W4DEV@(N))
 .S CMD=$$WEBL^W3MAIN_"w4bioadd.sh "_ADR_" "_$E(OV,2,5)
 .I $G(DEL) S CMD=$$WEBL^W3MAIN_"w4biodel.sh "_ADR_" "_$E(OV,2,5)
 .D PROTCMD(CMD)
 .ZSY CMD_" > "_FL
 .I $ZSY S MSG=MSG_EMDA_" : ERROR "_$ZSY Q
 .;
 .O FL:(REWIND:READONLY)
 .U FL
 .R A
 .D PROTCMD(A,"A")
 .C FL:(DELETE)
 .;
 .S MSG=MSG_EMDA_" : "_$$GETVL(A,"message") ;;_" <BR>"
 ;
 Q MSG
 ;
 ; 
CMD(CMD) ; 
 I $G(^DBIO) G CMD1 ; ***
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 N BIO S BIO=$G(@$$^W4GL("W4POSBIO")@(MYDVN))
 I 'BIO Q "BIONOTDEFINED4POS"
 N ADR S ADR=$G(@$$^W4DEV@(MYDVN))
 I 'ADR Q "NOTBIOADDRESS"
 G CMD1
 ;
 N FL,A
 S FL="BIO"_MYDVN
 C FL:(DELETE)
 S CMD1=$$WEBL^W3MAIN
 I $E(CMD1,$L(CMD1))'="/" S CMD1=CMD1_"/"
 I CMD="verify" S CMD1=CMD1_"w4biovrf.sh "_ADR_" > "_FL
 I CMD="list" S CMD1=CMD1_"w4biolst.sh "_ADR_" > "_FL
 ZSY CMD1_" > "_FL
 D PROTCMD(CMD1)
 I $ZSY Q "ERROR "_$ZSY
 ;
 O FL:(REWIND:READONLY)
 U FL
 R A
 D PROTCMD(A,"A")
 C FL:(DELETE)
 Q A
 ; 
 ; 
CMD1 ;
 I $G(^DBIO) D  Q A  ; ***
 .S A="{ ""result"":0 , ""message"":"""" , ""empID"":"""_$$DOP^W4NAME(^DBIO)_""" }" ; ***
 ;
 N A,B,PORT,PORTN,ERCON,MSK,MSKDEV
 S PORT=8888
 S PORTN="SCK$"_$J
 C PORTN
 ;
 S ERCON=$$^%L2NALAN("127.0.0.1",PORT)
 ;;S ^AA("W4BIO-CMD1","ERRCON")=ERCON
 ;
 I $G(ERCON) C PORTN Q "-3;CONNECTERROR;"_ERCON
 N CMD1 S CMD1="{""cmd"":"""_CMD_""", ""ipAddr"":"""_ADR_""" }"
 W CMD1,!
 D PROTCMD(CMD1)
 S A=""
 R *B:8 I B=-1 G CMD1C 
 S A=$C(B)
 F  R *B:.4 Q:B=-1  Q:B=4  S A=A_$C(B) Q:$L(A)>3000
CMD1C ;
 C PORTN
 ;
 D PROTCMD(A,"A")
 I A="" Q "-4;NOANSWER"
 Q A
 ;
 ;
GETVL(A,ZAPR,I) ;
 N ZAPR1,ZAPR2,VL
 S VL=$$EXTR(A,ZAPR,$G(I))
 Q VL
 ;
EXTR(A,DLM,I) ; 
 N VL
 F  Q:A'[" : "  S A=$$RPL^%L1FRM(A," : ",":")
 F  Q:A'[" :"  S A=$$RPL^%L1FRM(A," :",":")
 F  Q:A'[": "  S A=$$RPL^%L1FRM(A,": ",":")
 ;
 I '$G(I) S I=1
 I $E(DLM)'="""" S DLM=""""_DLM_""""
 I DLM'[":" S DLM=DLM_":"
 S VL=$P($P(A,DLM,I+1),"}")
 S VL=$P(VL,"]")
 S VL=$P(VL,",")
 S VL=$$SPA^%L1FRM(VL) 
 I $E(VL)="""" S VL=$E(VL,2,$L(VL))
 I $E(VL,$L(VL))="""" S VL=$E(VL,1,$L(VL)-1)
 S VL=$$SPA^%L1FRM(VL) 
 S VL=$$FUNC^%UCASE(VL)
 Q VL
 ;
DEV(STAM) ; 
 Q "SCK"_$J 
 ;
PROTCMD(A,IND) ;
 N LAST
 I $G(IND)="" D  Q 
 .N N S N=$O(^CMD1(99999),-1)+1
 .S ^CMD1(N)=A
 ;
 N N S N=$O(^CMD1(99999),-1) I 'N S N=1
 S ^CMD1(N,IND)=A
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BIO0
W4BIO ; [ 26.03.20 14:51 ] [ 23.03.20 21:32 ] [ 22.03.20 12:27 ] 
 N (JB,%ARG)
 W "<br><br><br>",!
 W "<table align=""center"" dir="""_$$^%W1DIR_""" "
  W " cellpadding=""30px"" width=""80%"" "
  W "style=""background-color:yellow;font-size:"_$$^W3FSZ(16)_";border:3px brown solid"" "
 W ">",!
  W "<tr>"_$$TDC_$$^%W1DICT("PUTYOURFINGER2DEV"),"</td></tr>",!
  W "<tr>"_$$TDC
   W "<input type=""text"" id=""rkvid"" size=""10"" "
   W " readonly=""readonly"" "
   W "style=""font-size:"_$$^W3FSZ(26)_";text-align:center"" />"
  W "</td></tr>",!
  W "<tr>"
   W "<td id=""resmsg"" dir=""LTR"" style=""text-align:center;font-size:"_$$^W3FSZ(16)_"""></td>",!
  W "</tr>",!
  W "<tr>"_$$TDC
   D ^W4BTN("IMREADY","Ready()","GREEN","",22,10)
   W $$NBSP^%L1FRM(5)
   D ^W4BTN("BACK","Back()","RED","",22,10)
  W "</td></tr>",!
 W "</table>",! 
 Q
 ;
 ;
TRSP ;
 W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
TDC(STAM) ;
 Q "<td align=""center"">"
 ;
GET(STAM) ;
 N (JB)
 S A=$$CMD("verify")
 I A["ERROR" Q A
 ;
GET1 ;
 S OV=""
 I A["emp :" D  Q OV
 .S OV=$$EXTR(A,"emp :")
 .I OV="null" S OV=$$^%W1DICT("WORKERNOTINBIOTABLE") Q
 .S OV=$$DOP^W4NAME(OV)
 ;
 I A["message:" D  Q OV
 .S OV=$$EXTR("message:")
 Q OV
 ;
USBIO(STAM) ; 
 I $$BIO^W4PRM&($G(%ARG("VZ"))="WORKERNUMBER") Q 1
 Q 0 
 ;
ADDWORK(OV) ;
 N (JB,OV)
 S FL="FINGER"_$$^W4MYDVN
 C FL:(DELETE)
 S CMD="finger.sh ""-enroll "_$E(OV,2,5)_""" "
 ZSY CMD_" > "_FL
 I $ZSY Q "ERROR "_$ZSY
 ;
 O FL:(REWIND:READONLY)
 U FL
 R A
 C FL:(DELETE)
 ;
 I A["message:" D  Q MSG
 .S MSG=$P($P(A,"message:",2),"}")
 .S MSG=$$SPA^%L1FRM(MSG) 
 .I $E(MSG)="""" S MSG=$E(MSG,2,$L(MSG)-1)
 .S MSG=$$FUNC^%UCASE(MSG)
 ;
 Q "ERROR" 
 ;
 ; 
CMD(CMD) ; 
 N FL,A
 S FL="FINGER"_$$^W4MYDVN
 C FL:(DELETE)
 S CMD="finger.sh ""-"_CMD_""""
 ZSY CMD_" > "_FL
 I $ZSY Q "ERROR "_$ZSY
 ;
 O FL:(REWIND:READONLY)
 U FL
 R A
 C FL:(DELETE)
 Q A
 ; 
 ; 
EXTR(A,DLM) ; 
 N OV
 S OV=$P($P(A,DLM,2),"}")
 S OV=$$SPA^%L1FRM(OV) 
 I $E(OV)="""" S OV=$E(OV,2,$L(OV)-1)
 S OV=$$FUNC^%UCASE(OV)
 Q OV
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BIOLST
W4BIOLST ; [ 27.03.20 20:18 ] [ 24.03.20 16:20 ] [ 23.03.20 21:24 ] 
 N (JB)
 W "<br><br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""60%"" align=""center"" cellspacing=""2"" cellpadding=""10"" style=""font-size:"_$$^W3FSZ(12)_""" >",!
 D KOT
 ;
 S A=$$CMD^W4BIO("list")
 ;
 I A'["empID" D  G BUT
 .W "<script>",!
 .W "MsgA('"_A_"')",!
 .W "</script>",!
 ;
 F I=1:1:$L(A,"empID")-1 D
 .S OV=$$EXTR^W4BIO(A,"empID",I)
 .I OV S M(+OV)=""
 ;
 S N="" F  S N=$O(M(N)) Q:N=""  D
 .S OV=$$DOP^W4NAME(N)
 .W "<tr style=""background-color:lightgrey"" OnMouseUp=""Delete('"_OV_"')"">"
 . W "<td>"_OV_"</td><td>"_$$H2U^%L1FRM($$^W4NAME(OV))_"</td>"
 .W "</tr>",!
 ;
BUT ;
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td colspan=""2"" align=""center"">"
  D ^W4BUTTON("prn","PRINT","Print()","FONT-SIZE:"_$$^W3FSZ(18)_";COLOR:BLUE")
  W $$NBSP^%L1FRM(5)
  D ^W4BUTTON("prn","BACK","Back()","FONT-SIZE:"_$$^W3FSZ(18)_";COLOR:RED")
 W "</td></tr>",!
 W "</table>",!
 Q
 ;
KOT ;
 W "<tr>"
 W "<td colspan=""2"" align=""center"">"
  W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"
   W $$^%W1DICT("TODELWORKERPRESSONLINE")
  W "</span>",!
 W "</td>"
 W "</tr>",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("WORKERNUMBER")_"</th>",!
  W "<th>"_$$^%W1DICT("WORKERNAME")_"</th>",!
 W "</tr>",!
 Q
 ;
 ;
DEV ;
 N DEV S DEV=$$^W4DEV
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" align=""center"">",!
 ;
 N A,N S N="" F  S N=$O(@DEV@(N)) Q:N=""  D
 .W "<tr style=""cursor:pointer"" id=""tr"_N_""" "
 .W " onClick=""ClickPrn('"_N_"')"" "
 .W ">"
 .S A=$G(^(N))
 .W "<td style=""color:brown;font-weight:bold"">"_N_"</td> "
 .W "<td id=""td"_N_""" "
 .W " onMouseOver=""LightLine('"_N_"')"" "
 .W " onMouseOut=""NormalLine('"_N_"')"" "
 .W ">"_A_"</td>"
 .W "</tr>",!
 W "</table>",!
 Q
 ;
GETVL(A,RKV) ;
 Q $$GETVL^W4BIO(A,RKV) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BIT
W4BIT(SH,TMPORD) ; [ 22.09.25 07:01 ] [ 27.12.23 09:05 ] [ 
 I $G(TMPORD)="" S TMPORD=$$^W4TMPORD
 N A S A=$G(@TMPORD@("BIT",SH))
 ;;I $P(A,"*",8) Q 1
 I A'="" Q 1
 Q 0
 
 
 
 
 

W4BITHLK
W4BITHLK(HZMBIT) ; [ 29.06.22 21:19 ] [ 30.06.21 08:02 ] [ 16.06.21 12:39 ] 
 N (JB,%ARG,%REM,HZMBIT)
 S TMPD=$$^W4MAIN("TMPD")
 S TMPN=$$^W4MAIN("TMPN") K @TMPN
 S TMPORD=$$^W4TMPORD
 ;
 S RES=$$^W4GETHZ(HZMBIT) 
 ;
 S HD=$G(@TMPORD)
 F J=4,8,9,11,12,17,19,20,21,24,26,29,33,34,37,44,45,46,54,55,60,62,67:1:99 D
 .S $P(HD,"~",J)=""
 ;
 S K=0,SH0=0
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I $E(N)?1N D
 .S A=$G(^(N))
 .I $P(A,"~")=0 S SH0=SH0+1
 .Q:'$D(@TMPD@(N))
 .S QN=-$G(^(N)) Q:'QN
 .S K=K+1
 .S $P(A,"~",5)=QN
 .S $P(A,"~",7)=HZMBIT_" dpnfdn lehia"
 .S @TMPN@(K)=A
 ;
 K @TMPORD
 S @TMPORD=HD
 M @TMPORD=@TMPN
 S HZM=$$^W4NEWHZ(JB)
 ;
 S @$$^W4GL("P1MLZ")@(HZM)=$G(@$$^W4GL("P1MLZ")@(HZMBIT))
 S SIBA=$$GET^W4TMPANS("DEL","CAUSEDEL")
 S SIBA=$$RPL^%L1FRM(SIBA,"%20"," ")
 S SIBA1=$P(SIBA,"::",2)
 S SIBA=$P(SIBA,"::")
 N SIBA11 S SIBA11="[ "_HZMBIT_" dpnfdn lehia ] "_SIBA1
 D PUT^W4TMPANS("DEL","CAUSEDEL",SIBA_"::"_SIBA11)
 D SIBA^W4HZBIT
 ;
 D SETHR2HZBIT(HZMBIT,HZM)
 S @$$^W4ORD@(HZM,"BITHLK")=$H
 ;
 K @TMPORD
 K @TMPD
 Q HZM
 ;
 ;
SETHR2HZBIT(HZMBIT,HZM) ;
 N A,N,RES,QN,P1HZOP
 S RES=$$^W4GETHZ(HZMBIT) 
 S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I $E(N)?1N D
 .S A=$G(^(N))
 .S QN=$G(@TMPD@(N)) Q:'QN
 .D
 ..I QN'=1 S $P(A,"~",7)=HZM_" dpnfd - elhea mihixt "_QN Q
 ..I QN=1 S $P(A,"~",7)="! "_HZM_" dpnfd - lhea hixt " Q
 .S @$$^W4TMPORD@(N)=A
 ;
 S P1HZOP="UPDCLOSE"
 N R S R=$$^W4NEWHZ(JB,HZMBIT,1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BLACK
W4BLACK ; GET FILES FROM DOS                    [ 27.10.09 18:17 ] [ 19.10.09 09:56 ] [ 16.04.09 15:20 ]
TRAN ;
 L ^A2BLACK:2 ;;E  S %SAY=" ... xg` seqnn miyer LINUX-n mivaw zxard " X %XMSGV(1) G ENDPE
 S H1=+$H S REZ=0
 I $D(^TRAN)>9 S %SAY=" zkxrna `vnp xak (^TRAN) `ay zeivwfpxh uaew " X %XMSGV(1) G ENDPE
 I $G(^A2BLACK)="OK" S %SAY=" zkxrna mi`vnp xak `ay ivaw " X %XMSGV(1) G ENDPE
 U $P W # S %SAY="... oznd `p` , LINUX-n mivaw zxard" X %XMSGV
 K ^TRANTOT,^HOSER(H1)
 S I=0 S PATH=^PATH D  D READ^A2HZG
 .I '$D(^dump1) K ^DUMP1 S ^dump1=""
 D
 .N (JB,%ARG,%REM,%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,PATH,AMAX)
 .N GIB,TEUDA,DOR,DATS,TIMS
 .S (GIB,TEUDA,DOR,DATS,TIMS)=""
 .D READ1("TOTAL") I OK D
 ..S GIB=$TR($E(^TOTAL,31,42)," ","")
 ..S TEUDA=$E(^TOTAL,15,22)
 ..S DOR=$E(^TOTAL,23,24)
 ..S DATS=$$^%L1DC($E(^TOTAL,3,8),1)
 ..S TIMS=$E(^TOTAL,9,10)_":"_$E(^TOTAL,11,12)
 .S LI=$ZP(^TRANL(999999)) Q:'LI  S:$G(^TRANL)<LI ^TRANL=LI
 .I LI,$P($G(^TRANL(LI)),"^",8)="" S $P(^TRANL(LI),"^",8)=GIB
 .S $P(^TRANL(LI),"^",9)=DOR
 .S $P(^TRANL(LI),"^",10)=TEUDA
 .S $P(^TRANL(LI),"^",11)=DATS_" "_TIMS
 ;---------- TRAN --> ^TRAN
 S FILE=PATH_"TRAN"
 S S=$$^%L1ZOS(10,FILE)
 I S<0 S:$G(^TRANL)'>$ZP(^TRANL(999999)) ^TRANL=$ZP(^TRANL(99999))+1 G NOTFF
 O FILE:(REWIND:READONLY)
 K NTRAN U FILE K ^TRAN
 F  R STR Q:$ZEOF  Q:STR=""  D
 .I $E(STR,1,3)'="",$E(STR,4,6)'="" S KUP=+$E(STR,1,3),NUM=+$E(STR,4,6) S ^TRAN(KUP,NUM)=STR,NTRAN(KUP)=NUM
 S KUP=-1 F  S KUP=$N(^TRAN(KUP)) Q:KUP=-1  S ^TRAN(KUP)=$G(NTRAN(KUP))
 C 54 S %ER=$$^%L1ZOS(2,FILE)
NOTFF ;
 I '$$ASHOK("") G ENDPE
 D READA("ALPHA32") I 'OK G ENDPE
 D
 .S N=""
 D READ1("PARMNEW") I 'OK G ENDPE
 D READ1("PARMA") I 'OK G ENDPE
 D READ1("START") I 'OK G ENDPE
 D READ1("DATA") I 'OK G ENDPE
 S ^VERSOLD=$G(^VERSION)
 K ^VERSION D READ1("VERSION.EXE") I 'OK G ENDPE
 I ^VERSION>570,^VERSOLD<570 S ^A2PRM("DAT70")=+$H
 ;;D READS ;--- 570
 I $E(^DATA,27) S ^A2BLACK="DATA27" G ENDPE
 S ^A2BLACK="OK"
 ;
ENDPE L  Q
 ; -
REV S DI="" F I=1:2:6 S DI=$E(D,I,I+1)_DI
 Q
READ1(NAME) ;
R01 S OK=1
 N NAME1,FILE,STR,DLM S DLM=$C(26)
 S FILE=$$FUNC^%LCASE(PATH_NAME)
 I NAME="VERSION.EXE" S DLM=$C(26,10) ;;S FILE=PATH_NAME
 S NAME1=$P(NAME,".") K @("^"_NAME1)
 S S=$$^%L1ZOS(10,FILE)
 I S<0 S FILE=PATH_NAME S S=$$^%L1ZOS(10,FILE)
 I S<0 G ERRFILE
 C FILE O FILE:(REWIND:READONLY)
 U FILE:(TERM=DLM)
 R STR S @("^"_NAME1)=$TR($E(STR,1,255),$C(13),$C(233))
 C FILE Q
READA(NAME) S OK=1
 N NAME1,FILE,STR,DLM,I,J,IND S DLM=$C(26,13,233)
 S NAME1="^"_$P(NAME,".")
 S FILE=$$FUNC^%LCASE(PATH_NAME) K @NAME1
 S S=$$^%L1ZOS(10,FILE)
 I S<0 G ERRFILE
 C FILE O FILE:(REWIND:READONLY)
 U FILE:(TERM=DLM) K @NAME1
 F I=1:1 R STR Q:$ZEOF  D
 .F J=1:23 Q:J>$L(STR)  S IND=$E(STR,J,J+5) I IND S @NAME1@(IND)=$E(STR,J+8,J+22)
 C FILE Q
READS ;---- 570
 N S,IND,ASM,STR
 S FILE=$$FUNC^%LCASE(PATH_"STATIS")
 S S=$$^%L1ZOS(10,FILE)
 S DLM=$C(13,10)
 I S<0 G ERRFILE
 C FILE O FILE:(REWIND:READONLY)
 U FILE:(TERM=DLM) F  R STR Q:$ZEOF  D
 .S ASM=$E(STR,15,22) Q:ASM=""
 .F IND=1:1 Q:'$D(^STATIS(ASM,IND))
 .S ^STATIS(ASM,IND,"KOT")=$E(STR,1,118)
 .S ^STATIS(ASM,IND,"TOH")=$E(STR,119,298)
 C FILE Q
 ;
ERRFILE S %GET=$$FUNC^%UCASE(FILE)_" uaew xqeg " D N^%L1GET
 S ^A2BLACK=FILE S OK=0
 Q
ERRBUSY S %GET=" 99 - aey zeqpl . qetz 54 hxet " D N^%L1GET I %S=99 G R01
 S OK=0,^A2BLACK=54
 Q
ASHOK(DUMP) N FNM,PRM S FNM=$$FUNC^%LCASE($G(@$$^W4GL("PATH"))_"NEG")
 S PRM=$$^%L1FLP(FNM) I PRM'<0,$P(PRM,"^",2)>0,($H-$P(PRM,"^",3)'>5)!'$P(PRM,"^",3) Q 1
 S @$$^W4GL("A2BLACK")="NEG"
 Q 0

W4BLNMVC
W4BLNMVC(CD,QN) ; [ 16.06.21 19:38 ] [ 31.08.18 13:05 ] [ 22.07.15 13:59 ] 
 N (JB,%ARG,%REM,CD,QN)
 I $G(CD)="" Q ""
 I $L($$BELONG11^W4TSF(CD,$G(QN))) Q 11
 ;
 S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("W4MVCAH")@(N)) Q:N=""  D  Q:$G(OK)
 .S A=$G(^(N,1))
 .S SET=$P(A,"\") Q:'SET
 .I $D(@$$^W4GL("P1SETM")@(SET,CD)) S OK="1A"
 ;
 I OK Q OK
 ;
 N N S N="" F  S N=$O(@$$^W4GL("W4MVC1")@(N)) Q:N=""  D  Q:$G(OK)
 .S A=$G(^(N,1))
 .S SET=$P(A,"\") Q:'SET
 .I $D(@$$^W4GL("P1SETM")@(SET,CD)) S OK="1"
 ;
 Q OK
 ;
 ;
SMB(PAR) ;
 I $G(PAR)="" Q ""
 N SMB S SMB=""
 I $L(PAR),$D(@$$^W4GL("PRTBH")@(PAR)) S SMB="*"
 I $L(PAR),$$NOKFLMVC^W4PRM,$$W4BLNMVC(PAR) S SMB="*"
 Q SMB
 
 
 

W4BLNORD
W4BLNORD(ORD,VDOC,NOM) ; [ 19.12.16 16:44 ] [ 18.12.16 20:33 ] [ 
 I '$G(ORD) Q ""
 S VDOC=$G(VDOC)
 S NOM=$G(NOM)
 I VDOC="HZMH",ORD?1N.N S ORD=+ORD_VDOC
 ;
 N BELONG S BELONG=""
 ;
 I $G(ORD),$E(VDOC)'="I" D
 .N NOMDOC
 .S NOMDOC=$$NOMDOC(ORD)
 .I ORD'["HZMH" D
 ..I +NOMDOC=+NOM S BELONG=""
 ..I NOMDOC,$G(@$$^W4GL("W4DOC")@(NOMDOC,"TM")) S BELONG=^("TM")_" .n.z " Q
 ..I NOMDOC,$G(@$$^W4GL("W4DOC")@(NOMDOC,"H")) S BELONG=^("H")_" 'yg " Q
 .
 .I ORD["HZMH" D
 ..I +NOMDOC=+NOM S BELONG=""
 ..I NOMDOC,$G(@$$^W4GL("W4DOC")@(NOMDOC,"TM")) S BELONG=^("TM")_" .n.z " Q
 ..I NOMDOC,$G(@$$^W4GL("W4DOC")@(NOMDOC,"H")) S BELONG=^("H")_" 'yg " Q
 ;
 Q BELONG
 ;
 ;
NOMDOC(ORD)
 S ORD=$G(ORD)
 I ORD'["HZMH" Q $P($G(@$$^W4GL("W4ORD")@(+ORD)),"\",20)
 N NOMORD S NOMORD=$G(@$$^W4GL("W4DIR")@("HZMH",+ORD)) Q:'NOMORD ""
 Q $P($G(@$$^W4GL("W4DOC")@(NOMORD)),"\",20)
 ;
 ;
ORDV(LKH,ORD,DOC) ;
 I $G(LKH)="" Q ""
 I $G(ORD)="" Q ""
 ;
 I $G(DOC)["HZMH" D
 .I ORD'["HZMH" S ORD=+ORD_"HZMH"
 ;
 I ORD["HZMH" Q $$W4BLNORD(ORD,"HZMH")
 ;
 Q $$W4BLNORD($$^W4ORDD(LKH,ORD),"HZ")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BO
W4BO ; [ 17.08.26 07:09 ] [ 05.08.26 14:10 ] [ 02.09.25 08:32 ] 
 Q
 ;
LVL()
 Q $G(@$$^W4GL("W4OPT")@("BO",0,"PSWLVL"))
 ;
INIT ;
 N MYDVN S MYDVN=$$^W4MYDVN
 S ^DV(MYDVN,+$H)=$G(^DV(MYDVN,+$H))+1
 ;
 D KILL^%W1PRM("ABCTOPDN"),KILL^%W1PRM("ABCTOPDNVIS")
 I $G(%ARG("PRSNLSET")) D
 .D PUT^%W1PRM("PRSNLSET",%ARG("PRSNLSET"))
 .I $$GETP^%W1PRM("MNL") D PUT^%W1PRM("CURMENU",$$GETP^%W1PRM("MNL"))
 ;
 K @$$^W4MAIN("TMP")
 K @$$^W4MAIN("TMPREP")
 K @$$^W4MAIN("TMPCSV")
 K @$$^W4MAIN("TMPG")
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMG")
 K @$$^W4MAIN("VRMDEP")
 K @$$^W4MAIN("VRMKVZ")
 D KILL^%W1PRM("NMB")
 N A S A=$$GETP^%W1PRM("SISALL")
 D ^W4CLEAR
 I A D PUT^%W1PRM("SISALL",A)
 D PUT^%W1PRM("W4BO",1)
 ;
 I $G(%ARG("TABLET")) D PUT^%W1PRM("TABLET",%ARG("TABLET"))
 D PUT^%W1PRM("MLZR",$G(@$$^W4PRM@("PSW")))
 D KILL^%W1PRM("IFRURSH")
 D KILL^%W1PRM("SUPPL")
 D PUT^%W1PRM("PRKUP",1)
 ;
 N MSD S MSD=$G(%ARG("MSD")) I MSD D PUT^%W1PRM("MSD",MSD)
 I 'MSD S MSD=$$GETP^%W1PRM("MSD")
 I 'MSD S MSD=1 D PUT^%W1PRM("MSD",MSD)
 ;
 I $G(%ARG("TABLET")) D PUT^%W1PRM("TABLET",%ARG("TABLET"))
 I $G(%ARG("BO1"))?1N.N D PUT^%W1PRM("BO1",$G(%ARG("BO1")))
 I $G(%ARG("LNG"))'="" D PUT^%W1PRM("LNG",%ARG("LNG"))
 ;
 D ^W3CSS
 Q
 ;
 ;
USPRSNL() ; 
 N MNL
 S MNL=$$GETP^%W1PRM("MNL") 
 I 'MNL Q 0 
 I $D(@$$^W4GL("W4PRSMNU")@(MNL))<9 Q 0
 N DRG S DRG=$$DARGA(MNL)
 I DRG>2 Q 0
 Q 1 
 ;
DARGA(MNL) ;
 S MNL=$$DOP^W4NAME(MNL)
 N DRG S DRG=$P($G(@$$^W4GL("W4PSWDRG")@(MNL)),"\")
 Q DRG
 ;
 ;
CLEARMENU(UR) ; 
 I UR=1 D  Q 1
 .D KILL^%W1PRM("BOTO2") 
 .D KILL^%W1PRM("BOTO3") 
 .D KILL^%W1PRM("BOTO4") 
 ;
 I UR=2 D  Q 1
 .D KILL^%W1PRM("BOTO3") 
 .D KILL^%W1PRM("BOTO4") 
 ;
 D KILL^%W1PRM("BOTO4") 
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BON
W4BON(PRM) ; [ 15.05.25 15:21 ] [ 01.04.20 13:54 ] [ 30.03.20 17:07 ] 
 I '$G(PRM) Q $$^W4GL("W4BON")
 I $G(PRM)=1 Q $$^W4GL("W4BONA")
 I $G(PRM)=2 Q $$^W4MAIN("TMPBON")
 Q ""
 ;
INIT ; 
 S @$$^W4PRM@("KVZRKZ")=1
 S:+$G(%ARG("MSD"))=0 %ARG("MSD")=1
 D PUT^%W1PRM("MSD",%ARG("MSD"))
 D PUT^%W1PRM("NODISPHD",$G(%ARG("NODISPHD")))
 D PUT^%W1PRM("FULLFAST",0)
 D PUT^%W1PRM("CDKV",0)
 Q
 

W4BONBT
W4BONBT ; [ 07.03.23 07:10 ] [ 20.12.22 20:31 ] [ 14.12.22 13:38 ] 
 N (JB,%ARG,%REM)
 S TMPRKZ=$$^W4MAIN("TMPRKZ")
 W "<table id=""TblCnc"" dir="""_$$^%W1DIR_""" width=""100%"" "
  W "class=""tblcnc"" cellpadding=""5px"" "
 W ">",!
  W "<tr>",!
   W "<td width=""10%"">"
    I $$GETP^%W1PRM("ARRBCK") D
    .D ARROWBACK
   W "</td>",! 
   ;
   W "<td width=""80%"">",!
    W "<table id=""TblKvzRkz"" dir="""_$$^%W1DIR_""" width=""100%"" "
     W "class=""tblcnc"" cellpadding=""5px"" "
    W ">",!
     S I=0,COLS=6
     W "<tr>"
     S N="" D TR(N) F  S N=$O(@TMPRKZ@(N)) Q:N=""  D TR(N)
    W "</table>",!
   W "</td>" 
   ;
   W "<td width=""10%"" id=""frw"" ",!
    I $$GETP^%W1PRM("ARRFRW") W $$^W4TOUCH_"='MoveOrds(1)'"
   W ">"
    W $$ARROWFWD
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
TR(N) ;
  N WDTB S WDTB=100
  I $G(N) D
  .N I1
  .N QN S QN=$G(@TMPRKZ@(N)) 
  .W "<td style=""width:"_(WDTB\COLS-3)_"%"" >"_$$H2U^%L1FRM($$SHEM(N))_"</td>"
  .W "<td style=""width:3%;border-left:2px grey dotted"">"_QN_"</td>"
  .S I=I+1
  .N N1 S N1=$O(@TMPRKZ@(N))
  .I '(I#COLS)!'N1 D
  ..I (I#COLS) F I1=I:1:COLS D
  ...W "<td style=""width:"_(WDTB\COLS)_"%"" >&nbsp;</td>"
  ..W "</tr>",! I N1 W "<tr>"
  ;
 Q
 ;
 ; 
SHEM(CD) ; 
 I $$KVZRKZ^W4BONNEW Q $G(@$$^W4GL("W4GRC")@(CD))
 Q $$SHEM^W4P(CD) 
 ;
TOPARROW()
 Q 0  ;10
 ;
ARROWBACK ; 
 N LEFT,TOP
 S LEFT=$$^W4WDSCR-60
 ;;I $$1024^W4WDSCR S LEFT=950
 W "<img src=""w4bonarrright.png"" "
  W "style=""position:absolute;top:"_$$TOPARROW_";left:"_LEFT_";z-index:100"" "
  W $$^W4TOUCH_"='MoveOrds(-1)'"
 W ">"
 N K S K=$$GETP^%W1PRM("ARRBCK") Q:'K
 W "<span style=""position:absolute;top:"_($$TOPARROW+10)_";left:"_(LEFT-30)_"px;zIndex:100;font-size:"_$$^W3FSZ(25)_""" >",!
  W K
 W "</span>",! 
 Q 
 ;
ARROWFWD() ; 
 N FRW S FRW=$$GETP^%W1PRM("ARRFRW") I 'FRW Q ""
 N ST 
 S ST="<img src=""w4bonarrleft.png"" "
 S ST=ST_"style=""position:absolute;top:"_$$TOPARROW_";left:0;z-Index:100"" "
 S ST=ST_">"
 S ST=ST_"<span style=""position:absolute;top:"_($$TOPARROW+10)_";left:80px;zIndex:100;font-size:"_$$^W3FSZ(25)_""" >"
 S ST=ST_FRW_" </span>"
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONCS0
W4BONCSS ; [ 06.10.22 10:11 ] [ 21.09.22 17:02 ] [ 10.08.22 12:46 ] 
 Q
NORMFONT() ;
 ;;I '$$1024^W4WDSCR Q "font-family : otzar"
 Q "font-family : OpenSansHebrew-Regular"
 I $$1024^W4WDSCR Q "font-family : Arial;"
 I $$1024^W4WDSCR,$$^W4MYDVN'=1 Q "font-family : Tahoma;"
 Q "font-family : otzar"
 ;
BOLDFONT() ;
 ;;I '$$1024^W4WDSCR Q "font-family : otzar"
 Q "font-family : OpenSansHebrew-Bold"
 I $$1024^W4WDSCR Q "font-family : Arial;"
 I $$1024^W4WDSCR,$$^W4MYDVN'=1 Q "font-family : Tahoma;"
 Q "font-family : otzar"
 ;
HDFONTSIZE()
 I $$TAHOMA Q "font-size:14px"
 I $$OPENHEBREW Q "font-size:14px"
 Q "font-size:"_$S($$1024^W4WDSCR:18,1:20)_"px"
 ;
TBLFONTSIZE()
 I $$TAHOMA Q "font-size:12px"
 I $$ARIAL Q "font-size:13px"
 I $$OPENHEBREW Q "font-size:14px"
 Q "font-size:"_$S($$1024^W4WDSCR:14,1:17)_"px"
 ;
KBFONTSIZE()
 I $$TAHOMA Q "font-size:16px"
 I $$ARIAL Q "font-size:18px"
 I $$OPENHEBREW Q "font-size:"_$S($$1024^W4WDSCR:"22px",1:"26px")
 Q "font-size:"_$S($$1024^W4WDSCR:20,1:26)_"px"
 ;
DOPFONTSIZE()
 Q "font-size:"_$S($$1024^W4WDSCR:"20px",1:"23px")
 ;
ORDFONTSIZE()
 I $$TAHOMA Q "font-size:12px"
 I $$ARIAL Q "font-size:13px"
 I $$OPENHEBREW Q "font-size:14px"
 Q "font-size:"_$S($$1024^W4WDSCR:15,1:17)_"px"
 ;
TAHOMA() ;
 I $$NORMFONT["Tahoma" Q 1
 Q 0
 ;
ARIAL() ;
 I $$NORMFONT["Arial" Q 1
 Q 0
 ;
OPENHEBREW() ;
 I $$NORMFONT["OpenSansHebrew" Q 1
 Q 0
 ;
OTZAR() ;
 I $$NORMFONT["otzar" Q 1
 Q 0
 ;
OTZAR24() ;
 I $$OTZAR&$$1024^W4WDSCR Q 1
 Q 0
 ;
ORDARRTOP()
 N A S A=$$GETP^%W1PRM("WDSCR")
 N HG S HG=$P(A,";",2)
 ;;I 'HG Q 550
 Q (HG-80)
 ;
ORDARRBACK()
 N A S A=+$$^W4WDSCR
 Q (A-68)
 ;
WDDOPKAV() ;
 I $$OPENHEBREW Q 24
 Q 28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONCSS
W4BONCSS ; [ 20.12.22 20:13 ] [ 21.11.22 17:16 ] [ 06.10.22 10:40 ] 
 Q
NORMFONT() ;
 I '$$1024^W4WDSCR Q "font-family : otzar"
 Q "font-family : OpenSansHebrew-Regular"
 I $$1024^W4WDSCR Q "font-family : Arial;"
 I $$1024^W4WDSCR,$$^W4MYDVN'=1 Q "font-family : Tahoma;"
 Q "font-family : otzar"
 ;
BOLDFONT() ;
 I '$$1024^W4WDSCR Q "font-family : otzar"
 Q "font-family : OpenSansHebrew-Bold"
 I $$1024^W4WDSCR Q "font-family : Arial;"
 I $$1024^W4WDSCR,$$^W4MYDVN'=1 Q "font-family : Tahoma;"
 Q "font-family : otzar"
 ;
HDFONTSIZE()
 I $$TAHOMA Q "font-size:14px"
 I $$OPENHEBREW Q "font-size:"_$$OPNSZ_"px"
 Q "font-size:"_$S($$1024^W4WDSCR:18,1:20)_"px"
 ;
TBLFONTSIZE()
 I $$TAHOMA Q "font-size:12px"
 I $$ARIAL Q "font-size:13px"
 I $$OPENHEBREW Q "font-size:"_$$OPNSZ_"px"
 Q "font-size:"_$S($$1024^W4WDSCR:14,1:17)_"px"
 ;
KBFONTSIZE()
 I $$TAHOMA Q "font-size:"_$$OPNSZ_"px"
 I $$ARIAL Q "font-size:18px"
 I $$OPENHEBREW Q "font-size:"_$S($$1024^W4WDSCR:"22px",1:"26px")
 Q "font-size:"_$S($$1024^W4WDSCR:20,1:26)_"px"
 ;
DOPFONTSIZE()
 Q "font-size:"_$S($$1024^W4WDSCR:"20px",1:"23px")
 ;
ORDFONTSIZE()
 I $$TAHOMA Q "font-size:12px"
 I $$ARIAL Q "font-size:13px"
 I $$OPENHEBREW Q "font-size:"_$$OPNSZ_"px"
 Q "font-size:"_$S($$1024^W4WDSCR:15,1:17)_"px"
 ;
TAHOMA() ;
 I $$NORMFONT["Tahoma" Q 1
 Q 0
 ;
ARIAL() ;
 I $$NORMFONT["Arial" Q 1
 Q 0
 ;
OPENHEBREW() ;
 I $$NORMFONT["OpenSansHebrew" Q 1
 Q 0
 ;
OTZAR() ;
 I $$NORMFONT["otzar" Q 1
 Q 0
 ;
OTZAR24() ;
 I $$OTZAR&$$1024^W4WDSCR Q 1
 Q 0
 ;
ORDARRTOP()
 N A S A=$$GETP^%W1PRM("WDSCR")
 N HG S HG=$P(A,";",2)
 ;;I 'HG Q 550
 Q (HG-80)
 ;
ORDARRBACK()
 N A S A=+$$^W4WDSCR
 Q (A-68)
 ;
WDDOPKAV() ;
 I $$OPENHEBREW Q 24
 Q 28
 ;
OPNSZ() ; 
 Q 14  ; -- WAS 14
 ;
COLORV() ; 
 Q "#534e93"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONCVG
W4BONCVG ; [ 18.04.23 19:15 ] [ 17.04.23 18:51 ] [ 10.08.21 12:15 ] 
 N (JB,%ARG)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMT")
 ;
 W "<br>",!
 ;
 W "<table >",!
  W "<tr>"
   W "<td>"
    D SORTSUG^W4SPIDK("")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ^W4SBMBCK
   W "</td>" 
  W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 ;
 W "<table id=""TblCvg"" border=""1"" cellspacing=""0"" cellpadding=""10px"">"
  W "<tr>"
   W "<th>"
    W $$^%W1DICT("GROUP")
   W "</th>"
   W "<th>"
    W $$^%W1DICT("FRAMECOLOR4GROUPS")
   W "</th>"
  W "</tr>",!
  ;
 S GL=$$^W4GL("PARSUG")
 N GLOBT S GLOBT=GL
 S GLOBT=$$CRGLOBT^W4SPIDK(GL)
 ;
 ;;W "GLOBT="_GLOBT 
 ;
 S N0="" F  S N0=$O(@GLOBT@(N0)) Q:N0=""  D
 .S N=N0
 .I $G(%ARG("SORT"))=2!($G(%ARG("SORT"))=3) S N=$G(@GLOBT@(N0))
 .Q:N="" 
 .S A=$G(@GL@(N))
 .I '$$^W4VWGR(N) Q
 .I $$^W4ELPOS,$$NODLVORD^W4PRM,$G(@$$^W4GL("W3SUG")@(N))=3 Q
 .I '$$^W4ELPOS,$G(@$$^W4GL("W3SUG")@(N))=2 Q
 .
 .W "<tr >"
 . W "<td style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" >"
 .  W N_$$NBSP^%L1FRM(3)
 .  W $$H2U^%L1FRM(A)
 . W "</td>"
 .
 . W "<td> "
 .  N ID S ID="color"_N
 .  W "<input type=""text"" id="""_ID_""" "
 .  W " onClick=""OnClickColor(event,'"_ID_"')"" "
 .  N BGCV S BGCV=$G(@$$^W4GL("W4BONCVG")@(N))
 .  S BGCV=$TR(BGCV,"#","")
 .  W " style=""cursor:pointer;text-align:center;background-color:#"_BGCV_""" "
 .  W " value="""_BGCV_""" "
 .  W "readonly=""readonly"" "
 . W ">"
 . W "</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMT")
 Q
 ;
PIC(N) ;
 Q $$^W4PIC("grp","w4grp",N)
 ;
CLICK(PRM) ;
 S GR=$P(PRM,";")
 S CD=$P(PRM,";",2)
 I $G(GR)="" Q "WRONGGROUPCODE"
 S @$$^W4MAIN("VRM")@(GR)=CD
 Q 1
 ;
 ;
SELSORT(VL)
 Q $$SELSORT^W4SPIDK(VL) 
 ;
SET(PRM) ;  
 N SUG,VL 
 S SUG=$P(PRM,";") 
 S SUG=$P(SUG,"color",2)
 S VL=$P(PRM,";",2) 
 I SUG="" Q "NOSUG"
 I VL="FFFFFF" S VL=""
 S @$$^W4GL("W4BONCVG")@(SUG)=VL  
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONDOP
W4BONDOP ; [ 12.12.22 17:32 ] [ 29.11.22 18:07 ] [ 27.11.22 10:33 ] 
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  W "<img src=""w4bonrndx.png"" "_$$^W4TOUCH_"=""CloseDop()"" >",!
  W "<br><br>",!
  ;
  I $G(%ARG("HIST")) G HIST
  ;
  W "<table id=""tbldop"" align=""center"" cellspacing=""0"" cellpadding=""10"" >",!
   W "<tr>"
    W "<td>"
     D HISTORY
    W "</td>"
   W "</tr>",!
   ; 
   W "<tr>"
    W "<td>"
     D CHOICEWAITER
    W "</td>"
   W "</tr>",!
   ; 
   W "<tr>"
    W "<td>"
     D CHOICEGROUP
    W "</td>"
   W "</tr>",!
   ;
   I '$$KVZRKZ^W4BONNEW D
   .W "<tr>"
   . W "<td>" D TBCONC W "</td>"
   .W "</tr>",!
   ; 
   W "<tr>"
    W "<td>" D TBRESET W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 ;
 D CMB("waiter","PROC=Show4Waiter")
 D CMB("group","PROC=Show4Group")
 Q
 ;
 ;
HISTORY ;
 W "<button "_$$^W4TOUCH_"='History()'"
  W " class=""hddop"" style=""width:100%;padding:12px;"" "
 W ">" 
  W $$^%W1DICT("ORDHISTORY")
 W "</button>",!
 Q
 ;
 ;
CHOICEWAITER ;
 N NM S NM="waiter"
 D TMP
 S @TMP@(NM,0)=$$TV^%W1DICT($$^%W1LNG,"CHOICEWRKR")
 ;
 N N S N="" F  S N=$O(@$$^W4GL("FILE")@(N)) Q:N=""  D
 .I $G(@$$^W4GL("FILE")@(N,"CIO"))'="I" Q
 .I '$$GET1^W4LEVPR(N,"PAIL") Q
 .I '$$GET1^W4LEVPR(N,"MTIP") Q
 .S @TMP@(NM,N)=$$^W4NAME(N)
 ;
 W "<p class=""hddop"">"_$$^%W1DICT("CHOICEWRKR")_"</p>",!
 W "<table id=""tb"_NM_""" class=""tbcmb"" cellspacing=""0"" cellpadding=""14"" "
  W "style=""width:"_$$WDCMB_"px"" >",!
  W "<tr "_$$^W4TOUCH_"=""CmbHdClick('"_NM_"')"">"
   W "<td id=""td"_NM_""" width=""90%"" >"
     N CUR S CUR=$$CUR(NM)
     I 'CUR W $$^%W1DICT("ALLWORKERS")
     I CUR D
     .W $$H2U^%L1FRM($$^W4NAME(CUR))
   W "</td>" 
   ;
   D TDARROW("td"_NM)
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
CHOICEGROUP ;
 N NM S NM="group"
 D TMP
 S @TMP@(NM,0)=$$TV^%W1DICT($$^%W1LNG,"CHOICEGRIT")
 ;
 N N S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 .I '$$^W4VWGR(N) Q
 .S @TMP@(NM,N)=$G(@$$^W4GL("PARSUG")@(N))
 ;
 W "<p class=""hddop"">"_$$^%W1DICT("CHOICEGRIT")_"</p>",!
 W "<table id=""tb"_NM_""" class=""tbcmb"" cellspacing=""0"" cellpadding=""14"" "
  W "style=""width:"_$$WDCMB_"px"" "
 W ">",!
  W "<tr "_$$^W4TOUCH_"=""CmbHdClick('"_NM_"')"">"
   W "<td id=""td"_NM_""" width=""90%"" >"
     N CUR S CUR=$$CUR(NM)
     I 'CUR W $$^%W1DICT("ALLGROUPS")
     I CUR D
     .W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(CUR)))
   W "</td>" 
   ;
   D TDARROW("td"_NM)
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
TDARROW(PRM) ;
 W "<td>",!
 W "<img src=""w4boncmbdown.png"">"
 W "</td>",!
 Q
 ;
CMB(TO,PRM) ;
 D ^W4CMBBOX(TO,$G(PRM)) ; 
 Q
 ;
TMP ;
 D TMP^W4CMBBOX
 Q
 ;
CUR(NM) ;
 I $G(NM)="" Q ""
 N TMP D TMP
 Q $G(@TMP@(NM))
 ;
INIT(NM) ;
 S @TMP@(NM,1)="``` `````"
 S @TMP@(NM,2)="aaaaa aaa"
 S @TMP@(NM,3)="bbbb bbb"
 S @TMP@(NM,4)="ccccc ccc"
 S @TMP@(NM,5)="ddddd ddd"
 S @TMP@(NM,6)="eeeee eee"
 S @TMP@(NM,7)="hhhhhh hhh"
 S @TMP@(NM,8)="ggggg ggg"
 Q
 ;
TBCONC ;
  W "<table class=""tblbon"">",!
   W "<tr>"
     W "<td id=""tdconc"" width=""16%"" "_$$^%W1ALIGN_" >" D KINDSHOW("conc") W "</td>"
     W "<td class=""txtnorm"" "_$$^%W1ALIGN_" >"_$$^%W1DICT("ITCNC")_"</td>"
    W "</tr>",! 
   W "</table>",!
 Q  ;
 ; 
TBRESET ;
  W "<table class=""tblbon"">",!
   W "<tr>"
     W "<td id=""tdreset"" width=""16%"">" D KINDSHOW("reset") W "</td>"
     W "<td class=""txtnorm"">"_$$^%W1DICT("RESETPARAMETERS")_"</td>"
    W "</tr>",! 
   W "</table>",!
 Q  ;
 ;
 ;
KINDSHOW(PRM) ;
 W "<input id=""chk"_PRM_""" type=""checkbox"" "
  W "style=""display:none"""
  ;
  I PRM="reset" D
  .I $$RESET W "  checked=""checked"" "
  .W "  onClick=""ClickReset()"" />",!
  ;
  I PRM="conc" D
  .I $$CONC W "  checked=""checked"" "
  .W "  onClick=""ClickConc()"" />",!
  ;
 W "<label id =""lb"_PRM_""" for=""chk"_PRM_""">",!
  D
  .I PRM="reset",$$RESET D IMGRNDFULL Q
  .I PRM="conc",$$CONC D IMGRNDFULL Q
  .
  .D IMGRND
 W "</label>",!
 Q
 ;
 ;
RESET(STAM) ;
 D TMP
 N OK S OK=1
 N NM F NM="waiter","group" D
 .I $G(@TMP@(NM)) S OK=0
 Q OK
 ;
SETRESET ;
 D TMP
 N OK S OK=1
 N NM F NM="waiter","group" S @TMP@(NM)=0
 Q
 ;
CONC() ;
 Q $G(%ARG("CONC"))
 ;
IMGRNDFULL ;
 D IMGRNDFULL^W4BONHD
 Q
 ;
IMGRND ;
 D IMGRND^W4BONHD
 Q
 ;
WDCMB() ; 
 I $$1024^W4WDSCR Q 200
 Q 250
 ;
 ; 
HIST ; 
 N (JB,%ARG,%REM) ; 
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 ; 
 S DT=$$^W4DZ
 D TMPHST K @TMPHST
 D HISTM(DT,1)
 D HISTM(DT,0)
 ;
 W "<div align=""center"" width=""100%"" dir="""_$$^%W1DIR_""">",!
  W "<table width=""100%"">",! 
  S TIM="" F  S TIM=$O(@TMPHST@(TIM)) Q:TIM=""  D
  .S ORD="" F  S ORD=$O(@TMPHST@(TIM,ORD)) Q:ORD=""  D
  ..S PRN="" F  S PRN=$O(@TMPHST@(TIM,ORD,PRN)) Q:PRN=""  D
  ...S RD=$G(^(PRN)) 
  ...S IND=$$^W4DZ_"~"_PRN_"~"_TIM_"~"_ORD
  ...W "<tr "_$$^W4TOUCH_"=""ShowBigOrd('"_IND_"','"_RD_"')"" style=""cursor:pointer"">"
  ... S IMG="w4bonrnd.png"
  ... I RD S IMG="w4bonrndfull.png"
  ... W "<td width=""5%""><img src="""_IMG_""" width=""25"" height=""25"" /></td>"
  ... W "<td width=""5%"">"_$S($$TAW^W4BONKOT(ORD)!$$MSD^W4BONKOT(ORD):"&nbsp;",1:"<img src=""w4dlvry.png"" width=""20"" height=""20"" />")_"</td>"
  ... W "<td>"_$$T^%L1TIME($E(TIM,6,10))_"</td>"
  ... W "<td>"_ORD_"</td>"
  ... S A=$G(@$$^W4ORD@(ORD))
  ... S NMB=$P(A,"\")
  ... S LK1=$$H2U^%L1FRM($P(A,"\",2))
  ... I $$^W4MSD(NMB) D
  .... S LK1=$$MZMNM^W4HZMST(ORD) I LK1'="" S LK1=$$H2U^%L1FRM(LK1) Q
  .... S LK1=$$H2U^%L1FRM("ogley")_" "_NMB
  ... W "<td style=""color:"_$$COLORV^W4BONCSS_""">"_LK1_"</td>"
  ...W "</tr>",!
  ...W "<tr><td colspan=""5"" ><hr style=""border:1px lightgrey dotted""></td></tr>",!
  W "</table>",!
 W "</div>",!
 Q 
 ;
HISTM(DT,PR)
 N (JB,%ARG,DT,PR,MPRN)
 D TMPHST
 S GL=$$^W4BON(PR)
 S PRN="" F  S PRN=$O(@GL@(DT,PRN)) Q:PRN=""  D
 .S TIM="" F  S TIM=$O(@GL@(DT,PRN,TIM)) Q:TIM=""  D
 ..S ORD="" F  S ORD=$O(@GL@(DT,PRN,TIM,ORD)) Q:ORD=""  D
 ...I PRN,'$D(MPRN(PRN)) Q
 ...S @TMPHST@(TIM,ORD,PRN)=PR
 Q 
 ;
TMPHST ; 
 S TMPHST=$$^W4MAIN("TMPHST") 
 Q 
 ;
SHOWORD(IND,READY) ;
 N READY
 
 D SHOWORD1^W4BONNEW 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONHD
W4BONHD ; [ 15.05.25 14:33 ] [ 12.05.25 12:31 ] [ 19.04.23 13:15 ] 
 I $G(%ARG("READY")) S %ARG("NORDYIT")=0,%ARG("FIRE")=0
 ;
 W "<div dir="""_$$^%W1DIR_""" style=""background-color:white;width:100%"">",!
  I $G(%ARG("SHORT")) D  Q
  .W "<table style=""position:absolute;top:0;width:100%;height:20px"" >",!
  .W "<tr>",!
  . W "<td width=""6%"" "_$$^W4TOUCH_"=""Close()"" ><img src=""w4close.png"" />",!
  . W "<td width=""3%"" "_$$^W4TOUCH_"=""Max()"" ><img src=""w4vn.png"" />",!
  . W "<td width=""3%"">&nbsp;</td>",! 
  .  W "<td id=""tdnotready"">" D KINDSHOW("notready") W "</td>",!
  .  W "<td class=""txthdnorm"" "
  .   I $$1024^W4WDSCR W "style=""width:100px"" "
  .   I '$$1024^W4WDSCR W "style=""width:120px"" "
  .  W ">"_$$^%W1DICT("INWAITING")_"</td>",!
  .  W "<td id=""tdready"">" D KINDSHOW("ready") W "</td>",!
  .  W "<td class=""txthdnorm"">"_$$NMREADY_"</td>",!
  .  W "<td width=""4%"">&nbsp;</td>",! 
  .  W "<td id=""imgithide"">" D KINDSHOW("nordyit") W "</td>",!
  .  W "<td class=""txthdnorm"">"_$$^%W1DICT("HIDEREADYITEMS")_"</td>",!
  .  W "<td id=""tdfire"">" D KINDSHOW("fire") W "</td>",!
  .  W "<td class=""txthdnorm"">Fire</td>",!
  .  W "<td width=""3%"">&nbsp; </td>",!
  .  W "<td class=""txthdnorm"">"_$$^%W1DICT("MENU")_"</td>",!
  .  W "<td id=""tdmenu"">" D KINDSHOW("menu") W "</td>",!
  .  W "<td width=""3%"">&nbsp; </td>",!
  .  W "<td id=""hist""  onClick=""ShowDop('1')"" >"_$$^%W1DICT("ORDHISTORY")_"&nbsp;<img src=""w4vn.png"" /></td>",!
  .  W "<td id=""shaon"" style=""color:grey;font-weight:bold;font-size:"_$$^W3FSZ(14)_""" width=""6%"">&nbsp;</td>"
  .  W "<td width=""1%"">&nbsp;</td>",!
  . W "</tr>",! 
  .W "</table>",!,"</div>",!
  ;
 W "<table class=""tblbon"" height=""90px"" border=""0"" width=""100%"">",!
  W "<tr>"
   W "<td width=""3%"" "_$$^W4TOUCH_"=""Min()""><img src=""w4vv.png"" /></td>"
   W "</td>"
   I '$$1024^W4WDSCR D
   .W "<td width="""_$$WD2_""">"
   . D LOGO
   .W "</td>"
   .W "<td width="""_$$WD3_""">&nbsp;</td>"
   ;
   W "<td width="""_$$WD4_""">",!
    D SHOWOPTIONS
   W "</td>"
   ;
   D
   .W "<td width="""_$$WD5_""">"
   .W "</td>"
   ;
   W "<td width="""_$$WD7_""">",!
    W "<table class=""tblbon"" height=""100%"" cellspacing=""0px"" cellpadding=""4px"" dir=""LTR"" >",!
     W "<tr>",!
       D KEYBOARD
     W "</tr>",!
    W "</table>",!
   W "</td>"
   ;
   I '$$1024^W4WDSCR W "<td width=""1%""></td>"
   ;
   W "<td width="""_$$WD6_""" align=""center"">",!
    W "<table class=""tblbon1"" dir="""_$$^%W1DIR_""" >",!
     W "<tr>"
      W "<td width=""55%"" id=""tdobjnum"" class=""tdobjnum"" >"
       I $G(%ARG("ORD"))'="" D
       .I $E(%ARG("ORD"))="T" D  Q 
       ..D PUT^%W1PRM("OBJ",0)
       ..W $E(%ARG("ORD"),2,20)
       .W %ARG("ORD")
      W "</td>"
      W "<td id=""tdselobj"" >",! D SELOBJ W "</td>",!
     W "</tr>",!
    W "</table>",!
   W "</td>"
   ;
   W "<td width=""3px""></td>"
   ;
   W "<td width="""_$$WD8_""" "_$$^W4TOUCH_"=""ShowDefOrder()"" >"
    W "<div class=""kbshow"" "
    W ">",! 
     D
     .N MRG S MRG=4 I $$OPENHEBREW S MRG=6 
     .W "<img src=""w4fndwhite.png"" style=""margin:"_MRG_"px"" "
     .I $$1024^W4WDSCR W "width=""30px"" height=""30px"" "
     .W ">"
    W "</div>",!
   W "</td>"
   ;
   W "<td width="""_$$WD14_"""></td>"
   W "<td width="""_$$WD9_""">"
    D DOP
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 W "<div id=""divobjlist"">",!
  W $$SHOWOBJLIST
 W "</div>",!
 Q
 ;
 ;
IMGRND ;
 W "<img src=""w4bonrnd.png"" class=""roundsize"">",!
 Q
 ;
IMGRNDFULL ;
 W "<img src=""w4bonrndfull.png"" >",!
 Q
 ;
IMGNOTREADY ;
 W "<img id=""imgnotready""  src=""w4bonrndfull.png"" >",!
 Q
 ;
IMGREADY ; 
 W "<img id=""imgready"" src=""w4bonrnd.png"" class=""roundsize"">",!
 Q
 ;
IMGITHIDE ;
 ;;W "<div id=""imgithide"" class=""Rectange-28"" >",!
 W "<img id=""imgithide"" src=""w4bonrnd.png"" class=""roundsize"">",!
 Q
 ;
IMGFIRE ;
 W "<img id=""imgfire"" src=""w4bonrnd.png"" class=""roundsize"">",!
 Q
 ;
LOGO ;
  W "<img src=""w4bonlogo.png"" "
   I $$1024^W4WDSCR W "width=""100%"" height=""50%"" ",!
  W ">"
 Q  ;
 ;
SELOBJ ;
 W "<table class=""tblbon"" dir="""_$$^%W1DIR_""">",! 
  W "<tr onClick=""ClickObj('tdobjname')"" >"
   W "<td class=""txtobj"" id=""tdobjname"" >"
     W $$OBJNAME
   W "</td>"
   W "<td width="""_$$WD11_""">"
    W $$IMGV,!
   W "</td>"
  W "</tr>",! 
 W "</table>",! 
 Q
 ;
SHOWOBJLIST() ;
 N ST
 S ST="<table id=""tblselobj"" class=""tblselobj"" >"
 S ST=ST_"<tr "_$$CLICKOBJ(0)_" >"
 S ST=ST_"<td >"_$$^%W1DICT("ORDER")_"</td>"
 S ST=ST_"<td width="""_$$WD13_""" align=""center"">"
 S ST=ST_$S($$OBJ=0:$$IMGV,1:"&nbsp;")_"</td>"
 S ST=ST_"</tr>"
 S ST=ST_"<tr "_$$CLICKOBJ(1)_" >"
 S ST=ST_"<td >"_$$^%W1DICT("TABLE")_"</td>"
 S ST=ST_"<td >"_$S($$OBJ=1:$$IMGV,1:"&nbsp;")_"</td>"
 S ST=ST_"</tr>"
 S ST=ST_"</table>"
 Q ST
 ;
IMGV() ;
 Q "<img src=""w4boncmbdown.png"">"
 ;
CLICKOBJ(OBJ) ;
 N ST S ST=" onClick=""ClickObjStr('"_OBJ_"')"" "
 Q ST
 ;
KEYBOARD ;
   N I 
   F I=1:1:9 D
   .W "<td class=""tdkbnum"" "_$$CLICKNUM(I)_" >" W I W "</td>"
   .D TDKBSP
  ;
   W "<td class=""tdkbnum"" "_$$CLICKNUM(0)_" >" W "0" W "</td>"
   D TDKBSP
   W "<td class=""tdkbdel"" width="""_$$WD10_""" padding=""2px"" "_$$CLICKDEL_">" D KBDEL W "</td>"
   D TDKBSP
   W "<td class=""tdkbc"" width="""_$$WD10_""" "_$$CLICKC_" "
    I $$1024^W4WDSCR W "style=""font-weight:bold"" "
   W ">"
    W "C" W "</td>"
   W "</td>"
 Q
 ;
TDKBSP ;
 W "<td width="""_$$WD12_"""></td>"
 Q
 ;
WD1(STAM) ;
 I $$1024^W4WDSCR Q "1%"
 Q "2%"
 ;
WD2(STAM) ;
 I $$1024^W4WDSCR Q "15%"
 Q "12%"
 ;
WD3(STAM) ;
 I $$1024^W4WDSCR Q "2%"
 Q "1%"
 ;
WD4(STAM) ;
 I $$1024^W4WDSCR Q "23%"
 Q "17%"
 ;
WD5(STAM) ;
 I $$1024^W4WDSCR Q "2px"
 Q "2%"
 ;
WD6(STAM) ;
 I $$1024^W4WDSCR Q "160px"
 Q "192px"
 ;
WD7(STAM) ;
 I $$1024^W4WDSCR Q "48%"
 Q "42%"
 ;
WD8(STAM) ;
 I $$1024^W4WDSCR Q "50px"
 Q "54px"
 ;
WD9(STAM) ;
 I $$1024^W4WDSCR Q "30px"
 Q "40px"
 ;
WD10(STAM) ;
 I $$1024^W4WDSCR Q "8%"
 Q "8%"
 ;
WD11(STAM) ;
 I $$1024^W4WDSCR Q "25%"
 Q "30%"
 ;
WD12(STAM) ;
 I $$1024^W4WDSCR Q "1px"
 Q "2px"
 ;
WD13(STAM) ;
 I $$1024^W4WDSCR Q "20%"
 Q "25%"
 ;
WD14(STAM) ;
 Q "1%"
 ;
WDOBJ() ;
 I $$1024^W4WDSCR Q "170px"
 Q "180px"
 ;
KBDEL ;
 W "<img src=""w4bonkbdel.png"" "
 I $$1024^W4WDSCR W "width=""26px"" height=""16px"" "
 I '$$1024^W4WDSCR W "width=""34px"" height=""20px"" "
 W ">"
 Q
 ;
DOP ;
 W "<div id=""divdop"" "_$$^W4TOUCH_"=""ShowDop()"" >",!
   W "<div class=""divdop""></div>",!
   W "<div class=""divdop""></div>",!
   W "<div class=""divdop""></div>",!
 W "</div>",!
 Q
 ;
 ;
KINDSHOW(PRM) ;
 W "<input id=""chk"_PRM_""" type=""checkbox"" "
  W " style=""display:none;"" "
  I $$CHECKED(PRM) W "  checked=""checked"" "
  W "  onClick=""ClickKindShow(this)"" />"
 ;
 W "<label id =""lb"_PRM_""" for=""chk"_PRM_""">"
  D
  .I PRM="ready",$$SHOWREADY D  Q
  ..D IMGRNDFULL
  .
  .I PRM="notready",'$$SHOWREADY!$$SHOWALL D  Q
  ..D IMGRNDFULL
  .
  .I $$CHECKED(PRM) D  Q
  ..D IMGRNDFULL
  .
  .D IMGRND
 Q
 ;
 ;
SHOWOPTIONS ;
  W "<table class=""tblbon"" border=""0"">",!
   W "<tr>"
    W "<td id=""tdnotready"">" D KINDSHOW("notready") W "</td>"
    W "<td class=""txthdnorm"" "
     I $$1024^W4WDSCR W "style=""width:100px"" "
     I '$$1024^W4WDSCR W "style=""width:120px"" "
    W ">"_$$^%W1DICT("INWAITING")_"</td>"
    W "<td id=""tdready"">" D KINDSHOW("ready") W "</td>"
    W "<td class=""txthdnorm"">"_$$NMREADY_"</td>"
   W "</tr>",! 
   ;
   W "<tr>"
    W "<td id=""imgithide"">" D KINDSHOW("nordyit") W "</td>"
    W "<td class=""txthdnorm"">"_$$^%W1DICT("HIDEREADYITEMS")_"</td>"
    W "<td id=""tdfire"">" D KINDSHOW("fire") W "</td>"
    W "<td class=""txthdnorm"">Fire</td>"
   W "</tr>",! 
  W "</table>",!
 Q  ; 
 ;
 ;
SHOWREADY(STAM) ;
 Q $G(%ARG("READY"))
 ;
RDALL()
 I $G(@$$^W4PRM@("BONSCR","RDALL"))!$$PAPJ^W4PRM Q 1
 Q 0
 ;
NMREADY()
 ;;I $$RDALL Q $$^%W1DICT("ALL")
 Q $$^%W1DICT("READY")
 ;
SHOWALL(STAM) ;
 Q ($G(%ARG("READY"))=2)
 ;
OPENALL(STAM) ;
 Q $G(%ARG("OPENALL"))
 ;
SHOWFIRE(STAM) ;
 Q $G(%ARG("FIRE"))
 ;
SHOWNORDYIT(STAM) ;
 Q $G(%ARG("NORDYIT"))
 ;
CHECKED(PRM) ;
 I $$SHOWREADY,PRM="ready" Q 1
 I '$$SHOWREADY!$$SHOWALL,PRM="notready" Q 1
 I $$OPENALL,PRM="openall" Q 1
 I $$SHOWFIRE,PRM="fire" Q 1
 I $$SHOWNORDYIT,PRM="nordyit" Q 1
 Q 0
 ;
CLICKNUM(I) ;
 N ST S ST="onClick=""ClickNum('"_I_"','tdobjnum')"""
 Q ST
 ;
CLICKDEL() ;
 Q "onClick=""ClickDel('tdobjnum')"" "
 ;
CLICKC() ;
 Q "onClick=""ClickC('tdobjnum')"" "
 ;
OBJ() ;
 Q +$$GETP^%W1PRM("OBJ")
 ;
OBJNAME() ;
 N OBJ S OBJ=$$OBJ
 I OBJ=0 Q $$^%W1DICT("ORDER")
 Q $$^%W1DICT("TABLE")
 ;
LEFTOBJLIST() ;
 I $$OPENHEBREW Q 140
 I $$1024^W4WDSCR Q 118
 Q 155 
 ;
OPENHEBREW() ; 
 Q $$OPENHEBREW^W4BONCSS 
 ;
 ;
HDMENU ; 
 N GLOB S GLOB=$$^W4GL("W4FASTGR")
 N I,CDKV,MSUGS,SUG1,MFUNC
 ;
 W "<table width=""100%"" dir="""_$$^%W1DIR_""" >",!
  W "<tr>",! 
   W "<td width=""60%"">"
    W "<table width=""100%"" border=""0"">"
     W "<tr>"
     S CDKV="" F  S CDKV=$O(@GLOB@(CDKV)) Q:CDKV=""  D
     .S SUG1=$G(@$$^W4GL("PARSUG")@(CDKV))
     .W "<td align=""center"">"
     . D ^W4BUTTON("",$$H2U^%L1FRM(SUG1),"ToItem('"_CDKV_"')","font-size:"_$$^W3FSZ(14))
     .W "</td>"
     W "</tr>",!
    W "</table>",!
   W "</td>" 
  ; 
   W "<td>"
    W " <button style=""width:"_$$^W4KF(80,1)_";font-size:"_$$^W3FSZ(14)_";color:red"" "_$$^W4TOUCH_"=""CloseMenu()"" >"_$$^%W1DICT("CLOSE")_"</button>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 ; 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONKOT
W4BONKOT(IND) ; [ 29.12.22 18:19 ] [ 22.12.22 18:26 ] [ 12.12.22 17:23 ] 
 N (JB,%ARG,%REM,IND)
 ;
 D PRS^W4BONWND
 S IMG=""
 D
 .I $$TAW(HZ) S IMG="w4bontaw.png" Q
 .I $$MSD(HZ) S IMG="w4bonkup.png" Q
 .S IMG="w4bondlv.png"
 ;
 W !,"<table border=""0"" cellspacing=""0"" "
  W "class=""txtnorm"" "
  ;
  I '$$BIG D
  .W " style=""position:relative;left:0;top:0;width:100%;font-size:16px;"
  ;
  I $$BIG D
  .W " style=""left:0;top:0;width:100%;font-size:16px;"
  ;
  W """  dir="""_$$^%W1DIR_""" "
 W "> <!-- BEG KOT TBL -->",!
 D KOTIMG
 ;
 D STR1
 ;
 D STR2
 ;
 I $$READY^W4BONVW(IND) D STR3
 ;
 W "</table> <!-- END KOT TBL -->",!
 Q
 ;
 ;
KOTIMG ;
 S HGLN=$S($$1024^W4WDSCR:30,1:40)
 I $$BIG S HGLN=70
 W !,"<tr style=""height:"_HGLN_"px"">" 
  W "<td colspan=""3"">"
   I HZ>0 D
   .W "<img src="""_IMG_""" style=""position:absolute;top:0;left:0;width:100%;height:"_HGLN_""">",!
   .I $$BIG D
   ..W "<img src=""w4bonrndx.png"" "_$$^W4TOUCH_"='CloseBigOrder()' class=""closebigorder"" />"
  W "</td>"
 W "</tr>",!
 Q
 ;
 ;
STR1 ;
 W !,"<tr "
  I HZ>0 D
  .W "style=""height:"_(HGLN+$S($$BIG:-25,1:5))_"px;background: linear-gradient(white ,rgb( 235, 235, 235) )"" "
 W ">"
 W "<td colspan=""3"" >"
  W !,"<table class=""tbl"" cellspacing=""0"" border=""0"" ",!
   ;;W "style=""border-left:8px solid #EDEDED;border-right:8px solid #EDEDED;"""
  W ">"
   W !,"<tr>"
    D TDREADY^W4BONVW(IND)
    ;
    S NAME="&nbsp;"
    I $$HZM^W4MSL(HZ) S NAME=$$H2U^%L1FRM($$NAME^W4HZMST(HZ))
    I $$HZM^W4MSD(HZ) D
    . S NAME=$$MZMNM^W4HZMST(HZ) I NAME'="" S NAME=$$H2U^%L1FRM(NAME) Q
    . S NAME=$$^%W1DICT("TABLE")_" "_$$NMB^W4HZMST(HZ)
    ;
    N WDNM S WDNM=$S($$1024^W4WDSCR:75,1:70)-$$WDFIRE(IND)
    I $$BIG S WDNM=WDNM+15
    W "<td width="""_WDNM_"%"" class=""ordhd"">"
     W NAME
    W "</td>"
    ;
    I TIME'>$$TIMEFIRE(HZ) D
    .W "<td>"
    . N WDFR,HGFR S WDFR=22,HGFR=26
    . I $$1024^W4WDSCR S WDFR=WDFR*.9,HGFR=HGFR*.9
    . W "<img src=""w4fire.png"" style=""width:"_WDFR_"px;height:"_HGFR_"px;padding:0"" >"
    .W "</td>",!
    .W "<td width=""1px""></td>"  
    ;
    I $$BIG D
    .N DATCB S DATCB=$$DATCB^W4HZMST(HZ)
    .N TMCB S TMCB=$P(DATCB,"  ",2)
    .S TIME=$$^%L1DC($P(DATCB,"  "),3)_(TMCB*3600+($P(TMCB,":",2)*60))
    ;
    D
    .N TIME1,PR S TIME1=TIME,PR=0
    .W "<td "
    . I HZ>0 D
    . .I $$READY^W4BONVW(IND) D
    . . .N DT,PRN,HZ
    . . .D PRS^W4BONWND
    . . .I $D(@$$^W4BON(1)@(DT,PRN,TIME,HZ)) D
    . . . .N TMRD S TMRD=$G(^(HZ))
    . . . .N TIMEPC S TIMEPC=$G(@$$^W4ORD@(HZ,"PCAFTPAY"))
    . . . .S TIME1=$$DIF^%L1TIME(TMRD,TIMEPC),PR=1
    . .;
    . .W "class=""timeord"" "
    . .W "style=""background-color:"_$$TIMECOLOR^W4BONWND(TIME1,PR)_";color:white"" "
    .W ">"
    .D
    ..;;I $G(TIME1)>200 W "&nbsp;" Q 
    ..I HZ>0 D
    ...I $$READY^W4BONVW(IND) W "&nbsp;&nbsp;"_TIME1_"&nbsp;&nbsp;" Q
    ...D RCVTIME^W4BONWND(TIME)
    .W "</td>"
     ;
   W "</tr>",!
  W "</table>",! 
  W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
STR2 ;
 W !,"<tr> "
  W "<td colspan=""3"" "
  W "style=""border-bottom:8px solid #EDEDED;"
  W "border-left:8px solid #EDEDED;"
  W "border-right:8px solid #EDEDED;"
  W """> "
  ;
  N HZ1 S HZ1=HZ
  I $$MSPYOM^W4PRM S HZ1=$$^W4MSPYOM(HZ)
  ;
  W !,"<table class=""tbl"" >"
   W !,"<tr>"
    I '$$BIG,'$$ORD W "<td width=""15%"">&nbsp;</td>"
    I $$BIG!$$ORD W "<td width=""20%"">"_$S(HZ1>0&(HZ1'=HZ):HZ1,1:"&nbsp;")_"</td>"
    ;
    W "<td style=""text-align:center;font-size:19px"" width=""60%"">"
    I HZ1>0 D
    .I '$$MSPYOM^W4PRM D  Q ;; $$BIG!$$ORD D  Q
    ..W "<button "_$$^W4TOUCH_"=""ShowFullOrd('"_HZ_"')"" style=""width:100%;padding:5px;font-size:15px"">"
    .. W $$^%W1DICT("ORDER")_" "_HZ
    ..W "</button>",! 
    .
    .W $$^%W1DICT("ORDER")_" "_HZ1
    .I HZ1'=HZ D
    ..W "<br><span style=""color:grey""> [ "_HZ_" ] </span>",!
    W "</td>"
    ;
    W "<td class=""txttime"" " 
    W ">"
    S TX="&nbsp;"
    I HZ>0,$$HZM^W4MSL(HZ) D
    .S TX=$$SHAA^W4HZMST(HZ)
    .W $$H2U^%L1FRM("-l")_TX
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</tr>",!
 Q
 ;
STR3 ;
 W !,"<tr> "
  W "<td colspan=""3"" "
  W "style=""border-bottom:8px solid #EDEDED;"
  W "border-left:8px solid #EDEDED;"
  W "border-right:8px solid #EDEDED;"
  W """> "
  W !,"<table class=""tbl"" >"
   W !,"<tr>"
    W "<td style=""text-align:center"" width=""60%"">"
     N TIMEND S TIMEND=$$TMRDY^W4BONVW(IND)
     W $$^%W1DICT("ENDPREPARINGTIME")_" "_$$T^%L1TIME(TIMEND)
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</tr>",!
 Q
 ;
 ;
WDFIRE(IND) ; 
 N READY,DT,PRN,TIME,HZ
 S READY=$$READY^W4BONVW(IND)
 I $G(READY) Q 0
 ;
 D PRS^W4BONWND
 N TIMEFIRE S TIMEFIRE=$$TIMEFIRE(HZ)
 I 'TIMEFIRE Q 0
 Q $S($$1024^W4WDSCR:10,1:10)
 ;
 ;
TIMEFIRE(HZ) ;
 Q $O(@$$^W4ORD@(HZ,"FIRE","TIME",9999999999),-1)
 ;
BIG() ;
 Q $G(%ARG("BIG"))
 ;
ORD() ;
 Q $G(%ARG("ORD"))
 ;
 ;
TAW(HZ)
 N OK S OK=0
 I $$HZM^W4MSL(HZ)!$$PAPJ^W4PRM D
 .I $$TAKEAWAY^W4HZMST(HZ)!$$TAW^W4DLPK($$NMB^W4HZMST(HZ)) S OK=1
 .I $$HZM^W4MSD(HZ),$$TAW^W4PRM!$$PAPJ^W4PRM S OK=1
 ;
 I HZ,$$HZM^W4MSD(HZ),'$$PAPJ^W4PRM D
 .I $$LL^W4HZMST(HZ)=2 S OK=1
 Q OK 
 ; 
 ;
MSD(HZ)
 N OK S OK=0
 I $$HZM^W4MSL(HZ)!$$PAPJ^W4PRM D
 .I $$HZM^W4MSD(HZ) S OK=1
 ;
 I HZ,$$HZM^W4MSD(HZ),'$$PAPJ^W4PRM D
 .S OK=1
 .I $$LL^W4HZMST(HZ)=2 S OK=0
 Q OK 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONNE0
W4BONNEW ; [ 22.02.26 09:57 ] [ 13.02.26 00:24 ] [ 09.02.26 17:51 ] 
 N (JB,%ARG,%REM)
 ;
 I $G(%ARG("FIRST")) D  Q  
 .W "<div align=""center"">",!
 .W "<br><br><br><br><br>",!
 .W "<button id=""btnstart"" onClick=""BtnReload()""><h1>&nbsp;&nbsp;Start&nbsp;&nbsp;</h1></button>",!
 .W "</div>",!
 ;
 ;
 D INIT^W4BONVW ; --> DT,READY 
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 ;
 D TMP^W4CMBBOX
 I '$G(%ARG("WAITER")) K @TMP@("waiter")
 I '$G(%ARG("GROUP")) K @TMP@("group")
 S OK=0
 ;
 D JBDEV
 ;
 I '$D(MPRN) D  Q
 .W "<script>",!
 . W "MsgA(""PRINTERNOTDEFINED"")",!
 .W "</script>",!
 ;
 S PRORD=0
 I $G(%ARG("IND")) S PRORD=$$ORD(%ARG("IND"))
 I $G(%ARG("IND"))&$$BIG D SHOWBIG(%ARG("IND")) Q  ; -- !! ????
 ;
 S WNDCOLS=$$WNDCOLS
 S WNDROWS=$$WNDROWS
 ;
 D TMPRKZ K @TMPRKZ
 ;
 S HGW=$$HGW
 ;
 D ORDS(DT,$G(CURPRN)) ; -->ORDS(),ORDSI(), QNORDS
 ;
 D RKZALL
 ;
 S QNROW=1  ;;(QNORDS-.1\WNDCOLS)+1
 ;
 S K=+$$GETP^%W1PRM("STARTORD")
 S CSP=20
 I WNDCOLS>4 S CSP=10
 I WNDCOLS>3,$$1024^W4WDSCR S CSP=5
 ;
 ;
 W "<div style=""height:98%;overflow-y:auto"" >",!
 ;
 I $G(%ARG("WAITER"))!$G(%ARG("GROUP")) D 
 .W "<div class=""allbonshd"" dir="""_$$^%W1DIR_""" align=""center"">"
 . I $G(%ARG("WAITER")) D 
 . .W $$^%W1DICT("WORKER")_" : "
 . .W $$H2U^%L1FRM($$^W4NAME(%ARG("WAITER")))
 .
 . I $G(%ARG("GROUP")) D
 . .I $G(%ARG("WAITER")) W $$NBSP^%L1FRM(10) 
 . .W $$^%W1DICT("GROUP")_" : "
 . .W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(%ARG("GROUP"))))
 .W "</div>",!
 ;
 S QNORDS=$O(ORDSI(99999),-1)
 ;
 I $$KVZRKZ^W4BONNEW D
 .D PUT^%W1PRM("ARRBCK",0)
 .D PUT^%W1PRM("ARRFRW",0)
 .;
 .I $$GETP^%W1PRM("STARTORD")>0 D PUT^%W1PRM("ARRBCK",$$GETP^%W1PRM("STARTORD"))
 .I K+WNDCOLS<QNORDS D PUT^%W1PRM("ARRFRW",QNORDS-K-WNDCOLS)
 ;
 I '$$KVZRKZ^W4BONNEW D
 .I K>0 D ARROWBACK
 .I K+WNDCOLS<QNORDS D ARROWFRWD
 ;
 W !,"<table id=""TblBon"" dir="""_$$^%W1DIR_""" border=""0"" cellspacing="""_CSP_""" style=""width:99%;height:"_(90-($$1024^W4WDSCR*2))_"%"">",!
  D TRWND
 W "</table>",!
 ;
 I $$PAPJ^W4PRM D NETPLACE 
 W "</div>",! 
 Q
 ;
 ;
TRWND ;
 ;;S ^AA("W4BONNEW","QNORDS")=QNORDS
 ;;S ^AA("W4BONNEW","K")=K
 ;;S ^AA("W4BONNEW","WNDCOLS")=WNDCOLS
 ;;M ^AA("W4BONNEW","WNDCOLS","ORDS")=ORDS
 ;;M ^AA("W4BONNEW","WNDCOLS","ORDSI")=ORDSI
 ;
 ;;I K>0 D ARROWBACK
 ;;I K+WNDCOLS<QNORDS D ARROWFRWD
 ;
 ;;W "<tr height="""_HGW_"px"" >",!
 ;
 W "<tr >",!
  F J=1:1:WNDCOLS D TDWND(J)
 W "</tr>",! 
 Q
 ;
 ;
TDWND(J) ;
 S K=K+1 ;
 S IND=$G(ORDSI(K))
 D PRS
 ;
 I $G(%ARG("READY"))=2,DT,PRN,TIME,HZ N READY D
 .S READY=$G(@$$^W4BON(2)@(DT,PRN,TIME,HZ))
 ;
 W "<td width="""_(100\WNDCOLS-1)_"%"" style=""position:relative""> <!-- OPEN TDWND "_K_" -->",!
 I HZ<1 W "&nbsp;</td>",! Q
 ;
  N HGKOT S HGKOT=30
  W !,"<table border=""0"" style=""position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(255,255,255,1)""> <!-- OPNTBL "_K_" -->",!
   ;
   W "<tr height="""_HGKOT_"px"">"
    W "<td >"
     D KOT(IND)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>",!
    W "<td>",!
      W "<div class=""ordbody"" id=""wnd-"_K_""" dir="""_$$^%W1DIR_""" name=""divwnd"" "
       N WD S WD=98
       N HG S HG=(HGW-HGKOT)_"px"
       D 
       .W "style=""" 
       .N BGCOLOR S BGCOLOR="white" 
       .I $$READY^W4BONVW(IND) S BGCOLOR=$$COLORREADY
       .I $$IFORD(K) W ";background-color:"_BGCOLOR_";overflow-y:auto"
       W """"
       W " onScroll=""OnScroll('"_K_"')"" "
      W ">",!
       ; 
       D SHOWORD(K)
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr HEIGHT=""100%"" ><td>&nbsp;</td></tr>",! ; *** 
  W "</table> <!-- END TBL "_K_" -->",!
 W "</td> <!-- END TDWND -->",!
 ;
 I '$G(%ARG("READY")),$G(HZ),$$DEL(HZ) D
 .W "<script>",!
 . W "var el=GetId('chkready"_IND_"')",!
 . W "if ( el !== null && el !== undefined ) setTimeout(function() {el.click()},300)",!
 .W "</script>",!
 Q
 ;
 ;
ORDS(DT,PRN) ;
 K ORDS
 N TIME,HZ,IND,I,J,K
 ;
 I $G(DT)="" S DT=$$^W4DZ
 I $G(PRN) D
 .D CRORDS(PRN)
 ;
 I $G(PRN)="" D
 .N PRN
 .S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D CRORDS(PRN)
 ;
 S HZ="",K=0
 ;
 N DRC S DRC=1 I READY S DRC=-1
 ;
 S TIME="" F  S TIME=$O(ORDS(TIME),DRC) Q:TIME=""  D
 .F  S HZ=$O(ORDS(TIME,HZ)) Q:HZ=""  S K=K+1 D
 ..S ORDSI(K)=ORDS(TIME,HZ)
 ;
 N TMPBON,TMPBON0 S TMPBON0=$$^W4MAIN("TMPBONPRN")
 S TMPBON=$E(TMPBON0,1,$L(TMPBON0)-1)_",""ALL"")"
 I $G(PRN) S TMPBON=$E(TMPBON0,1,$L(TMPBON0)-1)_","""_PRN_""")"
 ;
 N OKNEW S OKNEW=0
 S K="" F  S K=$O(ORDSI(K)) Q:K=""  D  Q:OKNEW
 .I '$D(@TMPBON@(K)) S OKNEW=1
 ;
 K @TMPBON M @TMPBON=ORDSI
 ;
 S QNORDS=K
 ;
 Q
 ;
 ;
CRORDS(PRN) ;
 N TIME,HZ,IND
 S PRN=$G(PRN)
 ;
 I $G(DT)="" S DT=$$^W4DZ
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .N SHOWTIME S SHOWTIME=$G(@$$^W4PRM@("BONSCR","SHOWTM"))
 .;
 .I SHOWTIME<120 S SHOWTIME=120
 .;
 .I READY,$$DIF^%L1TIME($H,TIME)>SHOWTIME,$G(%ARG("ORD"))'?1N.N Q
 .;
 .S HZ="" F  S HZ=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ)) Q:HZ=""  D
 ..I $E($G(%ARG("ORD")))="T",$$NMB^W4HZMST(HZ)'=$E(%ARG("ORD"),2,20) Q  ; -- TABLE
 ..I $G(%ARG("ORD"))?1N.N,HZ'=%ARG("ORD") Q  ; -- ORDER
 ..I $G(%ARG("WAITER")),$$MKBL^W4HZMST(HZ)'=$G(%ARG("WAITER")) Q  ; -- WAITER
 ..;;I $G(%ARG("FIRE")),'$$FIRE(IND) Q
 ..S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ..S ORDS(TIME,HZ)=IND 
 Q
 ;
 ;
SHOWORD(K) ;
 N DT,PRN,TIME,HZ,SHB,REF,UR
 ;
 S IND=$G(ORDSI(K))
 D SHOWORD1(IND)
 Q
 ;
 ;
SHOWORD1(IND) ;
 N (JB,%ARG,IND,READY,MPRN)
 D PRS
 ;
 I DT="" S DT=$$^W4DZ
 I (PRN="")!(TIME="")!(HZ="") Q
 ;
 W !,"<table class=""tbl"" border=""0"">",!
 I $$HZM^W4MSL(HZ) D KOTMSL(HZ)
 ;
 N MZMNM S MZMNM=$G(@$$^W4ORD@(HZ,"MZMNM"))
 I $L(MZMNM),'$$TAW^W4PRM D PCBC($$H2U^%L1FRM(MZMNM),1,"red")
 ;
 S NORDYITMAIN=0
 ;
 I 'READY,'$D(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,"PC")) D
 .S @$$^W4BON(0)@(DT,PRN,TIME,HZ,"PC")=$H
 .S @$$^W4ORD@(HZ,"FIRSTPC")=$H
 ;
 N TMPC S TMPC=$G(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,"PC"))
 I TMPC'="" D
 .W "<tr>"
 . W "<td style=""text-align:center"">"
 . W $$^%W1DICT("SHOWTIME")_" "_$ZD(TMPC,"DD.MM  24:60")
 . I $$HZM^W4MSL(HZ),'$$WOLT^W4HZMST(HZ),$$NMB(HZ)'=$$NMBKSK^W4KIOSKO W "<span style=""color:red""> ["_$$COLHZ(HZ)_"]</span>"
 .W "</td></tr>",!
 ;
 S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  I SHB D
 .S REF=$G(^(SHB))
 .S UR=$L(REF,",")
 .I UR>1 S UR=UR-$$PCQN1(HZ) ; --- !!!!!
 .
 .N INDSH S INDSH=IND_"~"_SHB
 .
 .I $E(REF)="!" D  Q
 .. W "<tr><td>"  
 ..  W !,"<table class=""tbl"" cellspacing=""0"" cellpadding=""0"" >",! 
 ..   W "<tr>"
 ..    N MSG S MSG=$E(REF,2,255)
 ..    S MSG=$$SPA^%L1FRM(MSG) 
 ..    W "<td class=""tdmsgbon"" style=""position:relative"" >"_$$NBSP^%L1FRM(3)
 ..     W "<span class=""msgtxt"" style=""position:absolute;top:0px;"" >&nbsp;"_$$H2U^%L1FRM(MSG)_"&nbsp;</span>",!
 ..    W "</td>"
 ..   W "</tr>",!  
 ..  W "</table>",!
 .. W "</td></tr>",!
 .
 .N CD S CD=$P($G(@REF),"\")
 .S CD=$$CLRCD(CD)
 .;
 .S PRAI4=0 I UR=4,$$AI(REF),$P($G(@REF),"\") S UR=2,PRAI4=1
 . 
 .I UR=2,$$AI(REF),$D(@REF)=11 Q  ; -- !!!
 .I UR=2 S MAININD=""
 . 
 .I UR=2 D  Q  ; -- PARIT ROSHI
 ..S NORDYITMAIN=0
 ..;
 .. I $G(%ARG("NORDYIT")),$$ITREADY(INDSH) S NORDYITMAIN=1 Q
 ..
 .. W "<tr><td>"  
 ..  D MAINITEM(REF,INDSH)
 .. W "</td></tr>",!
 .
 .I UR>2,'$G(NORDYITMAIN) D  Q
 .. W "<tr><td>"  
 ..  D ADDS(REF,INDSH)
 .. W "</td></tr>",!
 ;
 D SOFORD(HZ)
 W "</table> <!-- END SHOWORD  -->",!
 Q
 ;
 ;
TMPRKZ ;
 S TMPRKZ=$$^W4MAIN("TMPRKZ")
 Q
 ;
TMPRKZORD ;
 S TMPRKZORD=$$^W4MAIN("TMPRKZORD")
 Q
 ;
 ;
CLRCD(CD) ;
 I CD[")" S CD=$P(CD,")")
 I $E(CD)="""" S CD=$P(CD,"""",2)
 S CD=$$CHKZERO(CD)
 Q CD
 ;
 ;
MAINITEM(REF,IND) ;
 N ST,NM,HR,CD,PRC,SUM,STYLE
 S ST=$G(@REF)
 ;
 I $G(PRAI4) D
 .S $P(ST,"\",5)=$P(ST,"\",3)
 .S $P(ST,"\",3)=$P(ST,"\",2)
 .S $P(ST,"\",8)=$P(ST,"\",6)
 .S $P(ST,"\",4)=$P(ST,"\",7)
 ;
 S CD=$P(ST,"\")
 S CD=$$CHKZERO(CD)
 S NM=$P(ST,"\",3)
 S NM=$$IFCDNM(CD,NM)
 S PRC=$P(ST,"\",4)
 S QN=$P(ST,"\",5)
 S SUM=$P(ST,"\",7)
 S HR=$P(ST,"\",8)
 I QN>0,PRC>0,SUM<0 S QN=-QN
 N SZ S SZ=$$FSZ
 ;
 S MAININD=IND,MAINREF=REF,MAINCD=CD
 S IND4="",CDT4=""
 Q:ST=""
 ;
 S STYLE=$$COLORST(HZ,CD,QN,2,IND)
 ;
 W !,"<table class=""mainitem"" border=""0"">",!
  W "<tr "
   W " style="""_STYLE_""" "
  W ">"
  D
  .I $$ISFIRE^W4FIRE(CD)!(QN<0) W "<td>&nbsp;</td>" Q
  .D TDITREADY^W4BONVW(IND)
  ;
  N CEVA S CEVA=$$CEVA(CD)
  W " <td style=""width:75%;font-weight:bold;"_$$MAINSIZE
   ;;W ";border:solid 2px "_CEVA ; -- 30/04/23
   W """ "
  W ">"
   S NM=$$RPL^%L1FRM(NM,"%20"," ")
   S NM=$$RPL^%L1FRM(NM,"()","")
   W $$H2U^%L1FRM(NM)
  W "</td>",!
  ;
  D TDQNMAIN
 W "</tr>",! 
 ;
 S PRAI4=0
 ; 
 I STYLE'=$$CLRRDY S STYLE="" 
 I $L(HR) D CMNTIT(HR,STYLE)
 ;
 W "</table>",!
 Q
 ;
 ;
CEVA(CD) ;
 N SUG S SUG=$$SUG^W4P(CD) I SUG="" Q ""
 N CEVA
 S CEVA=$G(@$$^W4GL("W4BONCVP")@(CD))
 I CEVA?.P S CEVA=$G(@$$^W4GL("W4BONCVG")@(SUG))
 I CEVA?.P Q ""
 I $E(CEVA)'="#" S CEVA="#"_CEVA
 Q CEVA
 ;
 ;
TDQNMAIN ;
  I $G(CEVA)'?.P!$$EX^W4RCPIMG(CD) D
  .I '$$EX^W4RCPIMG(CD) D  Q
  ..W "<td width=""6%"" "
  .. W ">"
  ..  I $G(CEVA)'?.P W $$CIRCLE(20,CEVA)
  .. W "</td>",!
  .
  .W "<td width=""10%"" onClick=""ShowRcpt('"_CD_"')"" "
  . W ">"
  . W "<table><tr>"
  .  I $G(CEVA)'?.P W "<td>"_$$CIRCLE(20,CEVA)_"</td>"
  .  W "<td><img src=""w4rcpt.png"" style=""width:20px;height:20px"" /></td>"
  . W "</tr></table>",!
  .W "</td>"
  ;
  I $$PCQN1^W4PRM,QN>0,'$G(PRAI4)!(+QN=1) Q
  ;
  W "<td width="""_$$WD1_""" dir=""LTR"" "
  W ">",!
  I $$ISFIRE^W4FIRE(CD) W "</td>" Q
  ;
  I QN=1 W "</td>" Q
 ;
  W "<span style=""font-weight:bold;border:1px grey dotted;border-radius:2px"
     W ";font-size:"_$$MAINSIZE1_"px"
  W """ >"
   W $$NBSP^%L1FRM(1)_QN_$$NBSP^%L1FRM(1)
  W "</span>"
  ;
  W "</td>"
 Q
 ;
 ;
CLRRDY(STAM) ;
 N ST
 S ST="background-color:#e6e6e6;color:#b3b3b3"
 I $G(@$$^W4PRM@("BONSCR","RDTHROUGH"))!$$PAPJ^W4PRM D
 .S ST=ST_";text-decoration:line-through"
 Q ST
 ;
STYLERDY ;
 S STYLE=$$CLRRDY
 S CLRRDY=1
 Q
 ;
COLORST(HZ,CD,QN,UR,IND) ;
 S CLRRDY=0
 N STYLE S STYLE=""
 D
 .I $$DEL(HZ) S STYLE="background-color:black;color:red" Q
 .;
 .I $G(%ARG("GROUP")),$$GR(CD)'=%ARG("GROUP") D  Q
 ..S STYLE="color:"_$$WEAKCLR
 .;
 .I QN<0 S STYLE="background-color:black;color:red" Q
 .;
 .I $G(READY) D  Q
 ..S STYLE="background-color:"_$$COLORREADY
 .;
 .
 .I $$ITREADY(IND) D STYLERDY Q
 .I UR=3,$G(MAININD),$$ITREADY(MAININD) D STYLERDY Q
 .
 .I UR=4,$G(MAININD),$$ITREADY(MAININD),'$G(AI) D STYLERDY Q
 .
 .I UR=5,$L($G(IND4)),$$ITREADY(IND4) D STYLERDY Q
 .
 .I UR=5,$G(MAININD),$$ITREADY(MAININD),'$G(AI) D STYLERDY Q
 .
 .I $$ISFIRE^W4FIRE(CD),QN>0 D  Q
 ..I '$$ITREADY(IND) S STYLE="color:red"
 .
 .I $G(UR)=5 D
 ..;;S ^AA("W4BONNEW","MAINREF",+$G(HZ),+$G(CD))=$G(MAINREF)
 ..;;S ^AA("W4BONNEW","AI",+$G(HZ),+$G(CD))=AI
 ..;;I $G(MAINREF)'="",$$AI(MAINREF) S STYLE="color:black" Q
 ..I $G(AI) S STYLE="color:black" Q
 ..S STYLE="color:black" ; -- WAS GREEN
 ;
 Q STYLE
 ;
 ;
ADDS(REF,IND) ;
 N UR,NMT,QNT,HRT
 S UR=$L(REF,",") Q:UR<3
 N PCQN1 S PCQN1=$$PCQN1($G(HZ))
 I PCQN1 S UR=UR-1 ; --- !!!!!
 N ST S ST=$G(@REF)
 N CDT S CDT=$P(REF,",",3+PCQN1)
 S CDT=$$CLRCD(CDT)
 S MAININD=$G(MAININD)
 ;
 ;S ^AA("W4BONNEW","REF")=REF
 ;S ^AA("W4BONNEW","DREF")=$D(@REF)
 ;S ^AA("W4BONNEW","UR")=UR
 ;S ^AA("W4BONNEW","MAINCD")=$G(MAINCD)
 ;S ^AA("W4BONNEW","MAINNAME")=$$SHEM^W4P($G(MAINCD))
 ;
 I UR=3,$D(@REF)=1 D  Q  ; --- ADDS NORMAL
 .I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 .S NMT=$P(ST,"\") 
 .S NMT=$$IFCDNM(CDT,NMT)
 .S QNT=$P(ST,"\",3)
 .S ^AA("W4BONNEW","QNT0")=QNT
 .S QNT=$$QNT2PZ(QNT,NMT)
 .S ^AA("W4BONNEW","QNT")=QNT
 .S HRT=$P(ST,"\",4)
 .N COLOR S COLOR="darkblue"
 .I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 .D PCADD(CDT,NMT,QNT,HRT,COLOR,UR,IND)
 ; 
 I UR<4 D  Q
 .S IND4="",CDT4=""
 ;
 I UR=4 D
 .S CDT=$P(ST,"\") I CDT'="" D  Q
 ..S CDT=$$CHKZERO(CDT)
 ..I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 ..S QNT=$P(ST,"\",3)
 ..S NMT=$P(ST,"\",2)
 ..S NMT=$$IFCDNM(CDT,NMT)
 ..S QNT=$$QNT2PZ(QNT,NMT)
 ..S HRT=$P(ST,"\",6)
 ..N COLOR S COLOR="#534e93"
 ..I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 ..N AI S AI=0 
 ..I $$AI(REF) S AI=1
 ..S IND4=IND,CDT4=CDT
 ..D PCADD(CDT,NMT,QNT,HRT,COLOR,UR,IND)
 .
 .S AI=0
 .S CDT=$P(ST,"\",4) I CDT'="" D  Q
 ..S CDT=$$CHKZERO(CDT)
 ..I $G(%ARG("NORDYIT")),$G(IND4),$$ITREADY(IND4) Q
 ..S QNT=$P(ST,"\",3)
 ..S NMT=$P(ST,"\",5)
 ..S NMT=$$IFCDNM(CDT,NMT)
 ..S HRT=$P(ST,"\",6)
 ..N COLOR S COLOR="darkgreen"
 ..I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 ..D PCADD2(CDT,NMT,QNT,HRT,COLOR,UR,IND)
 Q
 ;
 ;
QNT2PZ(QNT,NMT) ;
 I $$CDNM^W4PRM,$G(MAINCD),$$SHEM^W4P(MAINCD)["()",QNT'["|",QNT'["+" D
 .I NMT["l`ny ivg" S QNT=QNT_"|+-" Q
 .I NMT["oini ivg" S QNT=QNT_"|-+ " Q
 .S QNT=QNT_"|++"
 Q QNT
 ;
 ;
AI(REF) ;
 N HZ S HZ=$$^%L1IND(REF,1)
 N NP S NP=$$^%L1IND(REF,2+$$PCQN1(HZ))
 N PAR
 ;
 I $$PCQN1(HZ) D
 .N A S A=$G(@REF)
 .N REFPC
 .S REFPC=$$^W4ORD_"("""_HZ_""",""PC1"","""_NP_""")"
 .N A1 S A1=$G(@REFPC)
 .S NP=$P(A1,"\",15)
 ;
 I 'NP Q 0
 S PAR=$P($G(@$$^W4ORD@(HZ,NP)),"\")
 ; 
 I 'PAR Q 0
 I $$DD^W4EZA(PAR) Q 1
 Q 0
 ;
ITREADY(IND) ;
 Q $$ITREADY^W4BONVW(IND)
 ;
IFORD(K)
 N DT,PRN,TIME,HZ,SHB,REF,UR
 S IND=$G(ORDSI(K))
 D PRS
 I DT=""!(PRN="")!(TIME="")!(HZ="") Q 0
 Q $D(@$$^W4BON(READY)@(DT,PRN,TIME,HZ))
 ;
 ;
RKZALL ;
 N (JB,%ARG,PRN)
 D INIT^W4BONVW ; --> DT,READY 
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 S READY=0
 I $G(DT)="" S DT=$$^W4DZ
 ;
 K ORDS
 ;
 I $G(PRN) D
 .D CRORDS(PRN)
 ;
 I $G(PRN)="" D
 .N PRN
 .S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D CRORDS(PRN)
 ;
 S HZ="",K=0
 ;
 S TIME="" F  S TIME=$O(ORDS(TIME)) Q:TIME=""  D
 .F  S HZ=$O(ORDS(TIME,HZ)) Q:HZ=""  S K=K+1 D
 ..S ORDSI(K)=ORDS(TIME,HZ)
 ;
 N K,IND S K="" F  S K=$O(ORDSI(K)) Q:K=""  D
 .S IND=$G(ORDSI(K))
 .
 .S MAININD=""
 .D PRS
 .S PCQN1=$$PCQN1($G(HZ))
 .;
 .I DT="" S DT=$$^W4DZ
 .I (PRN="")!(TIME="")!(HZ="") Q
 .;
 .S NORDYITMAIN=0
 .;
 .S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
 ..S REF=$G(^(SHB)) Q:$E(REF)'="^"
 ..S UR=$L(REF,",")
 ..I UR>1 S UR=UR-$$PCQN1(HZ) ; --- !!!!!
 ..
 ..N INDSH S INDSH=IND_"~"_SHB
 ..
 ..N CD S CD=$P($G(@REF),"\")
 ..;
 ..I UR=2,$$AI(REF),$D(@REF)=11 Q  ; -- !!!
 .. 
 ..I UR=2 D  Q  ; -- PARIT ROSHI
 ...S NORDYITMAIN=0
 ... I $G(%ARG("NORDYIT")),$$ITREADY(INDSH) S NORDYITMAIN=1 Q
 ...
 ...S MAININD=IND,MAINREF=REF,MAINCD=CD
 ...N ST,NM,QN,HR,CD,STYLE
 ...S ST=$G(@REF)
 ...S CD=$P(ST,"\")
 ...S QN=$P(ST,"\",5)
 ...Q:ST=""
 ...;
 ...D TMPRKZ
 ...I CD D
 ....I $$KVZRKZ,$$ITREADY(IND) Q
 ....D RKZ(CD,QN)
 ..
 ..I UR=3 D  Q
 ...N ST S ST=$G(@REF)
 ...N CDT S CDT=$P(REF,",",3+PCQN1)
 ...S CDT=$$CLRCD(CDT)
 ...;
 ...I UR=3,$D(@REF)=1 D  Q  ; --- ADDS NORMAL
 ....I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 ....S QNT=$P(ST,"\",3)
 ....I CDT D
 .....I $$KVZRKZ,$G(MAININD),$$ITREADY(MAININD) Q
 .....D RKZ(CDT,QNT)
 ..; 
 ..I UR<4 D  Q
 ...S IND4="",CDT4=""
 ..;
 ..S ST=$G(@REF)
 ..I UR=4 D
 ...S CDT=$P(ST,"\") I CDT D  Q
 ....I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 ....S QNT=$P(ST,"\",3)
 ....I CDT D
 .....S IND4=IND,CDT4=CDT
 .....I $$KVZRKZ,$G(MAININD),$$ITREADY(MAININD) Q
 .....D RKZ(CDT,QNT)
 ...
 ...S AI=0
 ...S CDT=$P(ST,"\",4) I CDT D  Q
 ....I $G(%ARG("NORDYIT")),$G(IND4),$$ITREADY(IND4) Q
 ....S QNT=$P(ST,"\",3)
 ....I CDT D
 .....I $G(IND4),$$KVZRKZ,$$ITREADY(IND4) Q
 .....D RKZ(CDT,QNT)
 Q
 ;
 ;
RKZ(CDIN,QN) ;
 I '$G(CDIN) Q
 N CD S CD=CDIN
 I $$KVZRKZ S CD=$G(@$$^W4GL("W4KVZRKZ")@(CDIN))
 S CD=$$CLRCD(CD)
 I 'CD Q
 I '$D(TMPRKZORD) D TMPRKZORD
 I '$D(TMPRKZ) D TMPRKZ
 I $G(PRORD) S @TMPRKZORD@(CD)=$G(@TMPRKZORD@(CD))+QN Q
 I $$BIG Q
 S @TMPRKZ@(CD)=$G(@TMPRKZ@(CD))+QN
 Q
 ;
 ;
KOT(IND) ; -- KOTERET HAZMANA
 D ^W4BONKOT(IND)
 Q
 ;
 ;
TIMEPRN(TIME) ;
 N BGCOLOR S BGCOLOR="grey"
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
 D OPTBL
 W ">",!
  W "<tr class=""timeprn"" >",!
   W "<td align=""center"" class=""timeprn"" >"
   W $$^%W1DICT("PRINTTIME")_" "_$$T^%L1TIME(TIME)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCADD(CDT,NMT,QNT,HRT,COLOR,UR,IND) ;
 N SZ S SZ=$$FSZ-1
 I $G(COLOR)="",$G(QNT)<0 S COLOR="red"
 ;
 S CDT=$$CHKZERO(CDT)
 ;
 I $G(%ARG("NORDYIT")),$G(IND),$$ITREADY(IND) Q
 ;
 D OPTBL
 W "border=""0"" style=""height:"_$S($$1024^W4WDSCR:23,1:27)_"px"" "
 W ">",!
  W "<tr "
   D
   .N DT,PRN,IME,HZ
   .D PRS Q:'HZ
   .W "style="""_$$COLORST(HZ,CDT,QNT,UR,IND)_""" "
  W " >"
  ;
 D 
  .I $G(AI),$G(IND) D TDITREADY^W4BONVW(IND) Q
  . 
  .W "<td width="""_$$WDADDS(UR)_""">"
  .W "</td>"
 ; 
  N COLORST S COLORST=$$COLORST(HZ,CDT,QNT,UR,IND)
  ;
  W " <td class=""tdadds"" style=""width:80%;"_COLORST
   D
   .I $G(AI)&(UR=4) W ";font-weight:bold;"_$$MAINSIZE Q
   .W ";"_$$ADDSIZE
   W """ "
  W ">"
   I '$$QNPIZZA(QNT),'$G(AI) W $S(UR=5:" ++ ",1:" + ")
   I $G(AI) W "&nbsp;&nbsp;"
   S NMT=$$RPL^%L1FRM(NMT,"()","")
   W $$H2U^%L1FRM(NMT)
  W "</td>",!
 ;
  I $$QNPIZZA(QNT) D
  .N SZ S SZ=$$ADDSIZE1
  .I $$QNPIZZA(QNT) W "<td>"_$$BON^W4SHOWPZ(QNT,SZ)_"</td>" Q
  ;
  ;;S ^AA("W4BONNEW-PCADD",CDT,"QNT")=QNT
  I '$$QNPIZZA(QNT),(+QNT'=1) D TDQNT
 W "</tr>",!
 ;
 ;
 S HRT=$$SPA^%L1FRM($$^W4CLRMN(HRT))
 I COLORST'=$$CLRRDY S COLORST=""  
 I HRT'?.P D CMNTIT(HRT,$$TBLFONTSIZE^W4BONCSS_";"_COLORST)
 ;
 W "</table>",!
 Q
 ;
 ;
PCADD2(CDT,NMT,QNT,HRT,COLOR,UR,IND) ;
 D OPTBL
 W ">",!
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td>"
    D PCADD(CDT,NMT,QNT,HRT,COLOR,5,IND) ;
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
TDQNT ;
 I $G(QN)<0 Q
 W "<td width="""_$$WD1_""" dir=""LTR"" >"
 D
  .W "&nbsp;" 
  .W "<span class=""tdqnt"" >"
  . W $$NBSP^%L1FRM(1)_QNT_$$NBSP^%L1FRM(1)
  .W "</span>"
 W "</td>"
 Q
 ;
 ;
CMNTIT(HR,STYLE) ;
 S HR=$$^W4CLRCMN(HR)
 I $$^W4CLRMN(HR)="" Q
 ;
 D KAVCMNT
 ; 
 W "<tr >"
  W "<td colspan=""3"">"
   D OPTBL
   W ">",!
   W "<tr>" 
    W "<td width=""22%"">"
     W "<span class=""cmtit"">"_$$^%W1DICT("COMMENT")_"</span>"
    W "</td>"
    W "<td class=""tdcmtit""  "
     I $L($G(STYLE)) W "style="""_STYLE_""" "
    W ">"
     W $$H2U^%L1FRM(HR)
    W "</td>"
   W "</tr>",!
  W "</table></td></tr>",!
  ;
  D KAVCMNT
 ;
 Q
 ;
 ;
KAVCMNT ;
 W "<tr><td colspan=""3""><hr style=""border:1px dotted lightgrey""></td></tr>",!
 Q
 ;
BIG(STAM) ;
 Q $G(%ARG("BIG"))
 ;
ORD(IND) ; 
 I $G(IND),'$P(IND,"~",3) Q 1
 Q 0
 ;
 ;
SHOWBIG(IND) ;
  N READY S READY=+$G(%ARG("READY"))
  N HGKOT S HGKOT=40
  ;
  W !,"<table border=""0"" style=""position:absolute;top:0;left:0;width:100%;background-color:rgba(255,255,255,1)"">",!
   W "<tr height="""_HGKOT_"px"">"
    W "<td >"
     D KOT(IND)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>",!
    W "<td>",!
      W "<div class=""ordbody"" dir="""_$$^%W1DIR_""" name=""divwnd"" "
       N HG S HG=($$HGW-HGKOT)_"px"
       D 
       .W "style=""" 
       .N BGCOLOR S BGCOLOR="white" 
       .I READY S BGCOLOR=$$COLORREADY
       W """"
      W ">",!
       ; 
       D SHOWORD1(IND)
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
   ;
  W "</table>",!
 Q
 ;
 ;
OPTBL ;
 W !,"<table dir="""_$$^%W1DIR_""" class=""tbl"" "
 W "cellspacing=""0"" cellpadding=""0"" " ;
 Q
 ;
FIRE(IND) ;
 N DT,PRN,TIME,HZ
 D PRS
 I $G(READY)="" S READY=$$STATRD^W4BONVW
 I $L(TIME) Q $$FIRE^W4BONVW(IND)
 ;
 N FIRE S FIRE=0
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 .I $$FIRE^W4BONVW(IND) S FIRE=1
 Q FIRE
 ;
 ;
PRS ;
 D PRS^%L1FRM(IND,"DT~PRN~TIME~HZ","~")
 Q
 ;
 ;
KOTMSL(HZM) ;
 D PCHDMSL
 ;
 I $$WOLT(HZM) D
 .N TXT S TXT=$$HZLAKNOM^W4HZMST(HZM)_" : WOLT"
 .D PCBR(TXT,1,"","text-align:center")
 ;
 I $$HAAT(HZM) D
 .N TXT S TXT=$$HZLAKNOM^W4HZMST(HZM)_" : HAAT"
 .D PCBR(TXT,1,"","text-align:center")
 ;
 D PCHRAED
 I '$G(@$$^W4PRM@("BONADDR")) Q
 ;
 I $$TAKEAWAY^W4HZMST(HZM) Q
 ;
 ;;D KAV
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR'?.P D PCBR($$IR^W4HZMST(HZM),1)
 D KTV
 D KAV
 ;
KOTMSLCMNT ;
 N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 I $L(CMNT) D TRSP D PCCMNT(CMNT)
 D TRSP
 Q
 ;
PCHRAED ;
 N CMNT S CMNT=$$HRAED^W4HZMST(HZM)
 S CMNT=$$SPA^%L1FRM(CMNT)
 I $TR(CMNT," ","")?1"NULL:WOLT:"1N.N Q
 I CMNT'?.P D TRSP D PCCMNT(CMNT,1) D TRSP
 Q
 ;
 ;
TRSP W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
 ;
KTV ; 
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR="TAKEAWAY"!($TR(IR,".","")="TAW") Q
 ;
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 N BAIT S BAIT=$P(@$$^W4ORD@(HZM),"\",15)
 N DIRA S DIRA=$P(@$$^W4ORD@(HZM),"\",14)
 N KTV S KTV=$P(@$$^W4ORD@(HZM),"\",3)
 N CNISA S CNISA=$P(@$$^W4ORD@(HZM),"\",16)
 N KOMA S KOMA=$P(@$$^W4ORD@(HZM),"\",13)
 ;
 S KTV=$$SPA^%L1FRM(KTV)
 ;
 I HRAED["SODEXO" D PCCMNT(KTV) G PCIR
 ;
 I '$$BAITDIRA^W4PRM!$$SF^W4PRM D
 .N ADR S ADR=BAIT_$S(DIRA:"/"_DIRA,1:"")_" "_KTV
 .Q:ADR?.P
 .D PCCMNT(ADR)
 ;
 I $$BAITDIRA^W4PRM,'$$SF^W4PRM D
 .I KTV'?.P D PCCMNT(KTV)
 .I $L(BAIT)!$L(DIRA) D PCCMNT(DIRA_" : dxic  "_BAIT_" : zia")
 ;
PCIR I KTV'["TAKEAWAY",IR'="TAKEAWAY",$TR(IR,".","")'="TAW" D
 .I CNISA'=""!(KOMA'="") D
 ..D PCCMNT(CNISA_":dqipk "_KOMA_" :dnew")
 ;
 I $L(HRAED) D PCCMNT(HRAED,1)
 Q
 ;
 ;
PCCMNT(CMNT,BOLD) ;
 W "<tr><td "
   W " >"
    I $G(BOLD) W "<b>"
    W $$H2U^%L1FRM(CMNT)
    I $G(BOLD) W "</b>"
 W "</td></tr>",!
 Q
 ;
 ;
PCBC(TX,PR,COLOR)
 W "<tr "
  I $$BIG W "style=""height:30px"" "
 W ">"
 W "<td style=""font-weight:bold;text-align:center"
   I PR W ";font-size:"_($$FSZ+2)
   I $G(COLOR)'="" W ";color:"_COLOR
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>",!
 Q
 ;
PCBR(TX,PR,COLOR,DOP)
 W "<tr><td style=""font-weight:bold"
   I PR W ";font-size:"_$$^W3FSZ($$FSZ+2)
   I $G(COLOR)'="" W ";color:"_COLOR
   I $L($G(DOP)) W ";"_DOP 
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>",!
 Q
 ;
KAV ;
 W "<tr><td><hr style=""border:1px dotted lightgrey""></td></tr>",!
 Q
 ;
WOLT(HZM) ;
 Q $$WOLT^W4HZPCHD(HZM)
 ;
HAAT(HZM) ;
 Q $$HAAT^W4HZMST(HZM)
 ;
PAIDIT(HZM) ;
 Q $$PAIDIT^W4HZPCHD(HZM)
 ;
PCHDMSL ;
 Q
 ;
WNDCOLS(STAM)
 N WNDCOLS
 S WNDCOLS=$$WNDCOLS^W4PRM
 I 'WNDCOLS S WNDCOLS=4
 I $$1024^W4WDSCR,WNDCOLS>5 S WNDCOLS=5
 Q WNDCOLS
 ;
WNDROWS(STAM) ;
 Q 1
 ;
HGW(STAM) ;
 Q 560
 ;
HGWBIG(STAM) ;
 N HG S HG=$S($$1024^W4WDSCR:540,1:665)
 Q HG
 ;
FSZ(STAM) ;
 S FSZ=12
 ;;I $$WNDCOLS>4 S FSZ=11
 I '$$1024^W4WDSCR S FSZ=FSZ+1
 I $$BIG S FSZ=FSZ+1
 Q FSZ
 ;
ORDYOM(ORDYOM) ; 
 I $G(ORDYOM),$$MSPYOM^W4PRM D
 .N DZ S DZ=$$^W4DZ
 .N N S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  D
 ..I ORDYOM=$G(^(N)) S ORDYOM=N,OK=1
 Q ORDYOM
 ;
GR(CD) ; 
 I $G(CD)="" Q ""
 Q $$SUG^W4P(CD) 
 ;
WEAKCLR(STAM) ; 
 Q "lightgrey" 
 ;
JBDEV ;
 N DEV S DEV=$$^W4MYDVN
 W "<div style=""position:absolute;color:grey;font-size:"_$$^W3FSZ(8)_""" >",!
  W $$NBSP^%L1FRM(3)_"JB="_$G(JB)_"&nbsp;&nbsp;DEV="_DEV_$$NBSP^%L1FRM(5)_"IP="_$G(^dev(DEV))
 W "</div>",!
 Q 
 ;
 ;
SHOWRKZORD ;
 N (JB,%ARG,%REM)
 D TMPRKZORD
 D OPTBL
 W " id=""TblCnc"" "
 ;; W "width=""100%"" style=""font-size:"_$$^W3FSZ(12)_""" "
 W ">",!
  D KOTRKZORD
  S N="" F  S N=$O(@TMPRKZORD@(N)) Q:N=""  D TRRKZORD(N)
 W "</table>",!
 K @TMPRKZORD
 Q
 ;
 ;
KOTRKZORD ;
 W "<tr >",!
  W "<td colspan=""3"" class=""timeprn"" style=""font-weight:bold"" >" 
   W $$^%W1DICT("ITCONC")
  W "</td>"
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
TRRKZORD(N) ;
 W "<tr style=""color:brown"" >"
  ;;W "<td>"_N_"</td>",!
  N QN S QN=$G(@TMPRKZORD@(N)) 
  W "<td colspan=""2"" style=""font-weight:bold"" >"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
  W "<td>"_QN_"</td>"
 W "</tr>",!
 ;
 W "<tr><td colspan=""3"">"
  W "<hr style=""color:lightgrey;border-style:dotted"">",!
 W "</td></tr>",!
 Q
 ;
READY(STAM) ; 
 Q +$$GETP^%W1PRM("READY") 
 ;
WD1(STAM) ; 
 Q "15%" 
 ;
TOPARROW()
 N TOP
 S TOP=800
 I $$1024^W4WDSCR S TOP=670
 Q TOP
 ;
ARROWBACK ; 
 N LEFT,TOP
 S LEFT=1530
 I $$1024^W4WDSCR S LEFT=950
 W "<img src=""w4bonarrright.png"" "
  W "style=""position:absolute;top:"_$$TOPARROW_";left:"_LEFT_";z-index:100"" "
  W $$^W4TOUCH_"='MoveOrds(-1)'"
 W ">"
 W "<span style=""position:absolute;top:"_($$TOPARROW+20)_";left:"_(LEFT-30)_"px;zIndex:100;font-size:"_$$^W4KF(30)_""" >",!
  W K
 W "</span>",! 
 Q 
 ;
ARROWFRWD ; 
 W "<img src=""w4bonarrleft.png"" "
  W "style=""position:absolute;top:"_$$TOPARROW_";left:0;zIndex:100"" "
  W $$^W4TOUCH_"='MoveOrds(1)'"
 W ">"
 W "<span style=""position:absolute;top:"_($$TOPARROW+20)_";left:80px;zIndex:100;font-size:"_$$^W4KF(30)_""" >",!
  W (QNORDS-K-WNDCOLS)
 W "</span>",! 
 Q 
 ;
MVORDS(PRM) ; 
 N SH S SH=$$GETP^%W1PRM("STARTORD")
 S SH=SH+(PRM*$$WNDCOLS) I SH<0 S SH=0
 D PUT^%W1PRM("STARTORD",SH)
 Q 1
 ;
WDADDS(UR) ; 
 I $$1024^W4WDSCR Q "14%" 
 Q "9%" 
 ;
DEL(HZ) Q $$DEL^W4DEL(HZ) 
 ;
QNPIZZA(QNT) ; 
 I QNT["|"!(QNT["+")!(QNT[":") Q 1
 Q 0 
 ;
COLORREADY() 
 Q "#FFFF8C" 
 ;
PCQN1(HZ) ; 
 I $G(HZ) Q $S($D(@$$^W4ORD@(HZ,"PC1")):1,1:0)
 Q $$PCQN1^W4PRM 
 ;
KVZRKZ() ; 
 I $$KVZRKZ^W4PRM!$$PAPJ^W4PRM Q 1
 Q 0 
 ;
SOFORD(HZ) ;
 W "<tr>"
  W "<td colspan=""4"" style=""text-align:center;background-color:"_$$BGCLRSOFORD(HZ)_""">" 
   ;;W $$^%W1DICT("ENDORDER")
  W "</td>"
 W "</tr>",! 
 Q 
 ;
 ;
BGCLRSOFORD(HZ) ; 
 N BGC
 D
 .I $$TAW^W4BONKOT(HZ) S BGC="orange" Q
 .I $$MSD^W4BONKOT(HZ) S BGC="green" Q
 .S BGC="#019bf5"
 ;
 Q BGC 
 ;
 ; 
CDNM() ; 
 Q $G(@$$^W4PRM@("MDBCDNM")) 
 ;
IFCDNM(CD,NM) ; 
 Q $$IFCDNM^W4MDBPC(CD,NM) 
 ;
MAINSIZE() ; 
 N SZ S SZ=$G(@$$^W4PRM@("BONSCR","MAINSIZE"))
 I SZ<18 S SZ=18  
 Q "font-size:"_SZ_"px"
 ; 
MAINSIZE1()
 N SZ
 S SZ=$G(@$$^W4PRM@("BONSCR","MAINSIZE"))
 I SZ<$$MINSIZE S SZ=$$MINSIZE
 Q SZ
 ;
ADDSIZE() ; 
 N SZ S SZ=$$ADDSIZE1
 Q "font-size:"_SZ_"px"
 ; 
ADDSIZE1() ;
 N SZ S SZ=$G(@$$^W4PRM@("BONSCR","ADDSIZE"))  
 I SZ<$$MINSIZE S SZ=$$MINSIZE
 Q SZ 
 ; 
MINSIZE() 
 Q 21 
 ;
CIRCLE(DIAM,CEVA,CEVABRD) ;
 N ST
 S ST="<div style=""width:"_DIAM_"px;height:"_DIAM_"px;border-radius:50%;"
 I $L($G(CEVABRD)) S ST=ST_"border:2px solid "_CEVABRD
 I $L($G(CEVA)) S ST=ST_";background-color:"_CEVA
 S ST=ST_"""></div>"
 Q ST 
 ;
CHKZERO(CD) ;
 I $E(CD,1,2)="0-" D
 .N CDN S CDN=$P(CD,"-",2)
 .I CDN'="",$$SHEM^W4P(CDN)'="" S CD=CDN
 Q CD
 ;
 ;
NETPLACE ; 
 I $D(@$$^W4GL("W4MSDSTA")@(+$H)) D
 .N A,OK S OK=0
 .N LAST S LAST="" F  S LAST=$O(@$$^W4GL("W4MSDSTA")@(+$H,LAST),-1) Q:LAST=""  D  Q:OK
 ..S A=$G(@$$^W4GL("W4MSDSTA")@(+$H,LAST)) I $P(A,"~",3) S OK=1
 .Q:'OK  Q:LAST=""
 .S A=$G(@$$^W4GL("W4MSDSTA")@(+$H,LAST))
 .N PRM S PRM=""
 .N MYPLACE S MYPLACE=$P(A,"~",2)
 .N TIM S TIM=$$MINSEC($P(A,"~",3))
 .N TIMNET S TIMNET=$$MINSEC($P(A,"~",7))
 .S NETPLACE=$P(A,"~",6)
 .S PRM=$P(TIM,":")_"<>"_$P(TIM,":",2)_"<>"_MYPLACE_"<>"_NETPLACE_"<>"_$P(TIMNET,":")_"<>"_$P(TIMNET,":",2)
 .
 .W "<table width=""100%"" id=""TblSta"" align=""center"">",!
 . W "<tr>"
 .  W "<td style=""text-align:center;color:white;font-size:"_$$^W3FSZ(22)_""">"
 .    W $$^%W1DICT("YOURNETPLACE",PRM)
 .  W "</td>"
 . W "</tr>"
 .W "</table> // -- END TBLSTA",!
 ;
 I $D(@$$^W4GL("W4MSLSTA")@(+$H)) D
 .N A,OK S OK=0
 .N LAST S LAST="" F  S LAST=$O(@$$^W4GL("W4MSLSTA")@(+$H,LAST),-1) Q:LAST=""  D  Q:OK
 ..S A=$G(@$$^W4GL("W4MSLSTA")@(+$H,LAST)) I $P(A,"~",3) S OK=1
 .Q:'OK  Q:LAST=""
 .S A=$G(@$$^W4GL("W4MSLSTA")@(+$H,LAST))
 .N PRM S PRM=""
 .N MYPLACE S MYPLACE=$P(A,"~",2)
 .N KF S KF=$P(A,"~",3)
 .N KFNET S KFNET=$P(A,"~",7)
 .S NETPLACE=$P(A,"~",4)
 .S NETMSD=$P(A,"~",5)
 .S NETMSD1=$P(A,"~",6)
 .S PRM=$$AH(KF)_"<>"_MYPLACE_"<>"_NETPLACE_"<>"_NETMSD1_"<>"_$$AH(KFNET)
 .
 .W "<table width=""100%"" id=""TblStaM"" align=""center"">",!
 . W "<tr>"
 .  W "<td style=""text-align:center;color:lightgreen;font-size:"_$$^W3FSZ(20)_""">"
 .    W $$^%W1DICT("DLVNETPLACE",PRM)
 .  W "</td>"
 . W "</tr>"
 .W "</table> // -- END TBLSTAM",!
 Q
 ;
MINSEC(TIM) ; 
 S TIM=$J(TIM,2,2)
 N TIM1,TIM2
 S TIM1=$P(TIM,".")
 S TIM2=$P(TIM,".",2)
 I $L(TIM2)=1 S TIM2=TIM2_"0"
 S TIM2=TIM2*6\10
 Q TIM1_":"_TIM2
 ;
AH(KF) ; 
 Q KF*100_"%" 
 ;
COLHZ(HZM) ; 
 N NMB S NMB=$$NMB^W4HZMST(HZM) I $L(NMB)<4 Q ""
 N COLHZ S COLHZ=""
 I $$NMB^W4KIOSKO(HZM) S NMB=$G(@$$^W4ORD@(HZM,"TELB")) Q:NMB=""
 D
 .N GL S GL=$$^W4GL("P1HL")
 .N N,I S N="",I=0 F  S N=$O(@GL@(NMB,N)) Q:N=""  I '$$DEL^W4DEL(N) S I=I+1
 .
 .N N0 S N0=$$NMBKSK^W4KIOSKO
 .S N="" F  S N=$O(@GL@(N0,N)) Q:N=""  I $G(@$$^W4ORD@(N,"TELB"))=NMB,'$$DEL^W4DEL(N) S I=I+1 S ^AA("W4BONNEW-COLHZ",N)=NMB
 .S COLHZ=I
 ;
 S @$$^W4GL("LKH")@(NMB,"COLHZ")=COLHZ
 Q COLHZ
 ;
NMB(HZM) ;  
 N NMB S NMB=$$NMB^W4HZMST(HZM) 
 I $$^W4KIOSKO(HZM) Q $G(@$$^W4ORD@(HZM,"TELB"))
 Q NMB
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONNEW
W4BONNEW ; [ 27.07.26 18:38 ] [ 26.07.26 14:42 ] [ 10.06.26 15:42 ] 
 N (JB,%ARG,%REM)
 ;
 I $G(%ARG("FIRST")) D  Q  
 .W "<div align=""center"">",!
 .W "<br><br><br><br><br>",!
 .W "<button id=""btnstart"" onClick=""BtnReload()""><h1>&nbsp;&nbsp;Start&nbsp;&nbsp;</h1></button>",!
 .W "</div>",!
 ;
 ;
 D INIT^W4BONVW ; --> DT,READY 
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 ;
 D TMP^W4CMBBOX
 I '$G(%ARG("WAITER")) K @TMP@("waiter")
 I '$G(%ARG("GROUP")) K @TMP@("group")
 S OK=0
 ;
 D JBDEV
 ;
 I '$D(MPRN) D  Q
 .W "<script>",!
 . W "MsgA(""PRINTERNOTDEFINED"")",!
 .W "</script>",!
 ;
 S PRORD=0
 I $G(%ARG("IND")) S PRORD=$$ORD(%ARG("IND"))
 I $G(%ARG("IND"))&$$BIG D SHOWBIG(%ARG("IND")) Q  ; -- !! ????
 ;
 S WNDCOLS=$$WNDCOLS
 S WNDROWS=$$WNDROWS
 ;
 D TMPRKZ K @TMPRKZ
 ;
 S HGW=$$HGW
 ;
 D ORDS(DT,$G(CURPRN)) ; -->ORDS(),ORDSI(), QNORDS
 ;
 D RKZALL
 ;
 S QNROW=1  ;;(QNORDS-.1\WNDCOLS)+1
 ;
 S K=+$$GETP^%W1PRM("STARTORD")
 S CSP=20
 I WNDCOLS>4 S CSP=10
 I WNDCOLS>3,$$1024^W4WDSCR S CSP=5
 ;
 ;
 W "<div style=""height:98%;overflow-y:auto"" >",!
 ;
 I $G(%ARG("WAITER"))!$G(%ARG("GROUP")) D 
 .W "<div class=""allbonshd"" dir="""_$$^%W1DIR_""" align=""center"">"
 . I $G(%ARG("WAITER")) D 
 . .W $$^%W1DICT("WORKER")_" : "
 . .W $$H2U^%L1FRM($$^W4NAME(%ARG("WAITER")))
 .
 . I $G(%ARG("GROUP")) D
 . .I $G(%ARG("WAITER")) W $$NBSP^%L1FRM(10) 
 . .W $$^%W1DICT("GROUP")_" : "
 . .W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(%ARG("GROUP"))))
 .W "</div>",!
 ;
 S QNORDS=$O(ORDSI(99999),-1)
 ;
 I $$KVZRKZ^W4BONNEW D
 .D PUT^%W1PRM("ARRBCK",0)
 .D PUT^%W1PRM("ARRFRW",0)
 .;
 .I $$GETP^%W1PRM("STARTORD")>0 D PUT^%W1PRM("ARRBCK",$$GETP^%W1PRM("STARTORD"))
 .I K+WNDCOLS<QNORDS D PUT^%W1PRM("ARRFRW",QNORDS-K-WNDCOLS)
 ;
 I '$$KVZRKZ^W4BONNEW D
 .I K>0 D ARROWBACK
 .I K+WNDCOLS<QNORDS D ARROWFRWD
 ;
 W !,"<table id=""TblBon"" dir="""_$$^%W1DIR_""" border=""0"" "
  W "cellspacing="""_CSP_""" "
  W "style=""width:99%;height:"_(90-($$1024^W4WDSCR*2))_"%"">",!
  D TRWND
 W "</table>",!
 ;
 I $$PAPJ^W4PRM D NETPLACE 
 W "</div>",! 
 Q
 ;
 ;
TRWND ;
 ;;S ^AA("W4BONNEW","QNORDS")=QNORDS
 ;;S ^AA("W4BONNEW","K")=K
 ;;S ^AA("W4BONNEW","WNDCOLS")=WNDCOLS
 ;;M ^AA("W4BONNEW","WNDCOLS","ORDS")=ORDS
 ;;M ^AA("W4BONNEW","WNDCOLS","ORDSI")=ORDSI
 ;
 ;;I K>0 D ARROWBACK
 ;;I K+WNDCOLS<QNORDS D ARROWFRWD
 ;
 ;;W "<tr height="""_HGW_"px"" >",!
 ;
 W "<tr >",!
  F J=1:1:WNDCOLS D TDWND(J)
 W "</tr>",! 
 Q
 ;
 ;
TDWND(J) ;
 S K=K+1 ;
 S IND=$G(ORDSI(K))
 D PRS
 ;
 I $G(%ARG("READY"))=2,DT,PRN,TIME,HZ N READY D
 .S READY=$G(@$$^W4BON(2)@(DT,PRN,TIME,HZ))
 ;
 W "<td width="""_(100\WNDCOLS-1)_"%"" style=""position:relative""> <!-- OPEN TDWND "_K_" -->",!
 I HZ<1 W "&nbsp;</td>",! Q
 ;
  N HGKOT S HGKOT=30
  W !,"<table border=""0"" style=""border:1px black solid;position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(255,255,255,1)""> <!-- OPNTBL "_K_" -->",!
   ;
   W "<tr height="""_HGKOT_"px"">"
    W "<td >"
     D KOT(IND)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>",!
    W "<td>",!
      W "<div class=""ordbody"" id=""wnd-"_K_""" dir="""_$$^%W1DIR_""" name=""divwnd"" "
       N WD S WD=98
       N HG S HG=(HGW-HGKOT)_"px"
       D 
       .W "style=""" 
       .N BGCOLOR S BGCOLOR="white" 
       .I $$READY^W4BONVW(IND) S BGCOLOR=$$COLORREADY
       .I $$IFORD(K) W ";background-color:"_BGCOLOR_";overflow-y:auto"
       W """"
       W " onScroll=""OnScroll('"_K_"')"" "
      W ">",!
       ; 
       D SHOWORD(K)
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr HEIGHT=""100%"" ><td>&nbsp;</td></tr>",! ; *** 
  W "</table> <!-- END TBL "_K_" -->",!
 W "</td> <!-- END TDWND -->",!
 ;
 I '$G(%ARG("READY")),$G(HZ),$$DEL(HZ) D
 .W "<script>",!
 . W "var el=GetId('chkready"_IND_"')",!
 . W "if ( el !== null && el !== undefined ) setTimeout(function() {el.click()},300)",!
 .W "</script>",!
 Q
 ;
 ;
ORDS(DT,PRN) ;
 K ORDS
 N TIME,HZ,IND,I,J,K
 ;
 I $G(DT)="" S DT=$$^W4DZ
 I $G(PRN) D
 .D CRORDS(PRN)
 ;
 I $G(PRN)="" D
 .N PRN
 .S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D CRORDS(PRN)
 ;
 S HZ="",K=0
 ;
 N DRC S DRC=1 I READY S DRC=-1
 ;
 S TIME="" F  S TIME=$O(ORDS(TIME),DRC) Q:TIME=""  D
 .F  S HZ=$O(ORDS(TIME,HZ)) Q:HZ=""  S K=K+1 D
 ..S ORDSI(K)=ORDS(TIME,HZ)
 ;
 N TMPBON,TMPBON0 S TMPBON0=$$^W4MAIN("TMPBONPRN")
 S TMPBON=$E(TMPBON0,1,$L(TMPBON0)-1)_",""ALL"")"
 I $G(PRN) S TMPBON=$E(TMPBON0,1,$L(TMPBON0)-1)_","""_PRN_""")"
 ;
 N OKNEW S OKNEW=0
 S K="" F  S K=$O(ORDSI(K)) Q:K=""  D  Q:OKNEW
 .I '$D(@TMPBON@(K)) S OKNEW=1
 ;
 K @TMPBON M @TMPBON=ORDSI
 ;
 S QNORDS=K
 ;
 Q
 ;
 ;
CRORDS(PRN) ;
 N TIME,HZ,IND
 S PRN=$G(PRN)
 ;
 I $G(DT)="" S DT=$$^W4DZ
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .N SHOWTIME S SHOWTIME=$G(@$$^W4PRM@("BONSCR","SHOWTM"))
 .;
 .I SHOWTIME<120 S SHOWTIME=120
 .;
 .I READY,$$DIF^%L1TIME($H,TIME)>SHOWTIME,$G(%ARG("ORD"))'?1N.N Q
 .;
 .S HZ="" F  S HZ=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ)) Q:HZ=""  D
 ..I $E($G(%ARG("ORD")))="T",$$NMB^W4HZMST(HZ)'=$E(%ARG("ORD"),2,20) Q  ; -- TABLE
 ..I $G(%ARG("ORD"))?1N.N,HZ'=%ARG("ORD") Q  ; -- ORDER
 ..I $G(%ARG("WAITER")),$$MKBL^W4HZMST(HZ)'=$G(%ARG("WAITER")) Q  ; -- WAITER
 ..;;I $G(%ARG("FIRE")),'$$FIRE(IND) Q
 ..S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ..S ORDS(TIME,HZ)=IND 
 Q
 ;
 ;
SHOWORD(K) ;
 N DT,PRN,TIME,HZ,SHB,REF,UR
 ;
 S IND=$G(ORDSI(K))
 D SHOWORD1(IND)
 Q
 ;
 ;
SHOWORD1(IND) ;
 N (JB,%ARG,IND,READY,MPRN)
 D PRS
 ;
 I DT="" S DT=$$^W4DZ
 I (PRN="")!(TIME="")!(HZ="") Q
 ;
 W !,"<table class=""tbl"" border=""0"">",!
 I $$HZM^W4MSL(HZ) D KOTMSL(HZ)
 ;
 N MZMNM S MZMNM=$G(@$$^W4ORD@(HZ,"MZMNM"))
 I $L(MZMNM),'$$TAW^W4PRM D PCBC($$H2U^%L1FRM(MZMNM),1,"red")
 ;
 S NORDYITMAIN=0
 ;
 I 'READY,'$D(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,"PC")) D
 .S @$$^W4BON(0)@(DT,PRN,TIME,HZ,"PC")=$H
 .S @$$^W4ORD@(HZ,"FIRSTPC")=$H
 ;
 N TMPC S TMPC=$G(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,"PC"))
 I TMPC'="" D
 .W "<tr>"
 . W "<td style=""text-align:center"">"
 . W $$^%W1DICT("SHOWTIME")_" "_$ZD(TMPC,"DD.MM  24:60")
 . I $$HZM^W4MSL(HZ),'$$WOLT^W4HZMST(HZ),$$NMB(HZ)'=$$NMBKSK^W4KIOSKO W "<span style=""color:red""> ["_$$COLHZ(HZ)_"]</span>"
 .W "</td></tr>",!
 ;
 S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  I SHB D
 .S REF=$G(^(SHB))
 .S UR=$L(REF,",")
 .I UR>1 S UR=UR-$$PCQN1(HZ) ; --- !!!!!
 .
 .N INDSH S INDSH=IND_"~"_SHB
 .
 .I $E(REF)="!" D  Q
 .. W "<tr><td>"  
 ..  W !,"<table class=""tbl"" cellspacing=""0"" cellpadding=""0"" >",! 
 ..   W "<tr>"
 ..    N MSG S MSG=$E(REF,2,255)
 ..    S MSG=$$SPA^%L1FRM(MSG) 
 ..    W "<td class=""tdmsgbon"" style=""position:relative"" >"_$$NBSP^%L1FRM(3)
 ..     W "<span class=""msgtxt"" style=""position:absolute;top:0px;"" >&nbsp;"_$$H2U^%L1FRM(MSG)_"&nbsp;</span>",!
 ..    W "</td>"
 ..   W "</tr>",!  
 ..  W "</table>",!
 .. W "</td></tr>",!
 .
 .N CD S CD=$P($G(@REF),"\")
 .S CD=$$CLRCD(CD)
 .;
 .;;S ^AA("W4BONNEW-SHOWORD1",REF,"UR0")=UR
 .S PRAI4=0,PRAI3=0
 .I UR=4,$$AI(REF),$P($G(@REF),"\") S UR=2,PRAI4=1
 .I UR=3,$$AI(REF),$P($G(@REF),"\"),'$D(@REF@(1)) D
 ..S UR=2,PRAI3=1
 .;;S ^AA("W4BONNEW-SHOWORD1",REF,"UR")=UR
 .;;S ^AA("W4BONNEW-SHOWORD1",REF,"AI")=$$AI(REF)
 .;;S ^AA("W4BONNEW-SHOWORD1",REF,"$D")=$D(@REF)
 . 
 .I UR=2,$$AI(REF),$D(@REF)=11 Q  ; -- !!!
 .I UR=2 S MAININD=""
 . 
 .I UR=2 D  Q  ; -- PARIT ROSHI
 ..S NORDYITMAIN=0
 ..;
 .. I $G(%ARG("NORDYIT")),$$ITREADY(INDSH) S NORDYITMAIN=1 Q
 ..
 .. W "<tr><td>"  
 ..  D MAINITEM(REF,INDSH)
 .. W "</td></tr>",!
 .
 .I UR>2,'$G(NORDYITMAIN) D  Q
 .. W "<tr><td>"  
 ..  D ADDS(REF,INDSH)
 .. W "</td></tr>",!
 ;
 D SOFORD(HZ)
 W "</table> <!-- END SHOWORD  -->",!
 Q
 ;
 ;
TMPRKZ ;
 S TMPRKZ=$$^W4MAIN("TMPRKZ")
 Q
 ;
TMPRKZORD ;
 S TMPRKZORD=$$^W4MAIN("TMPRKZORD")
 Q
 ;
 ;
CLRCD(CD) ;
 I CD[")" S CD=$P(CD,")")
 I $E(CD)="""" S CD=$P(CD,"""",2)
 S CD=$$CHKZERO(CD)
 Q CD
 ;
 ;
MAINITEM(REF,IND) ;
 N ST,NM,HR,CD,PRC,SUM,STYLE
 S ST=$G(@REF)
 ;
 I $G(PRAI4) D
 .S $P(ST,"\",5)=$P(ST,"\",3)
 .S $P(ST,"\",3)=$P(ST,"\",2)
 .S $P(ST,"\",8)=$P(ST,"\",6)
 .S $P(ST,"\",4)=$P(ST,"\",7)
 ;
 I $G(PRAI3) D
 .S CD=$P(REF,",",$L(REF,","))
 .S CD=$P(CD,")")
 .S ST=CD_"\\"_$P(ST,"\",1,3)
 ;
 S CD=$P(ST,"\")
 S CD=$$CHKZERO(CD)
 S NM=$P(ST,"\",3)
 ;
 N DAKA S DAKA=0
 I $$PAPJ^W4PRM S DAKA=$$DAKA(REF)
 ;
 ;;M ^AA("W4BONNEW-MAINITEM","REF")=REF
 ;;M ^AA("W4BONNEW-MAINITEM","DAKA")=DAKA
 S NM=$$IFCDNM(CD,NM,DAKA)
 S PRC=$P(ST,"\",4)
 S QN=$P(ST,"\",5)
 S SUM=$P(ST,"\",7)
 S HR=$P(ST,"\",8)
 I QN>0,PRC>0,SUM<0 S QN=-QN
 N SZ S SZ=$$FSZ
 ;
 S MAININD=IND,MAINREF=REF,MAINCD=CD
 S IND4="",CDT4=""
 Q:ST=""
 ;
 S STYLE=$$COLORST(HZ,CD,QN,2,IND)
 ;
 W !,"<table class=""mainitem"" border=""0"" ",!
   W " style="""_STYLE_""" "
 W ">",!
  W "<tr "
  W ">"
  D
  .I $$ISFIRE^W4FIRE(CD)!(QN<0) W "<td>&nbsp;</td>" Q
  .S ^AA("W4BONNEW","IND",IND)=""
  .D TDITREADY^W4BONVW(IND)
  ;
  N CEVA S CEVA=$$CEVA(CD)
  W " <td style=""width:75%;font-weight:bold;"_$$MAINSIZE
   ;;W ";border:solid 2px "_CEVA ; -- 30/04/23
   W """ "
  W ">"
   S NM=$$RPL^%L1FRM(NM,"%20"," ")
   S NM=$$RPL^%L1FRM(NM,"()","")
   W $$H2U^%L1FRM(NM)
  W "</td>",!
  ;
  D TDQNMAIN
 W "</tr>",! 
 ;
 S PRAI4=0
 ; 
 I STYLE'=$$CLRRDY S STYLE="" 
 I $L(HR) D CMNTIT(HR,STYLE)
 ;
 W "</table>",!
 Q
 ;
 ;
CEVA(CD) ;
 N SUG S SUG=$$SUG^W4P(CD) I SUG="" Q ""
 N CEVA
 S CEVA=$G(@$$^W4GL("W4BONCVP")@(CD))
 I CEVA?.P S CEVA=$G(@$$^W4GL("W4BONCVG")@(SUG))
 I CEVA?.P Q ""
 I $E(CEVA)'="#" S CEVA="#"_CEVA
 Q CEVA
 ;
 ;
TDQNMAIN ;
  I $G(CEVA)'?.P!$$EX^W4RCPIMG(CD) D
  .I '$$EX^W4RCPIMG(CD) D  Q
  ..W "<td width=""6%"" "
  .. W ">"
  ..  I $G(CEVA)'?.P W $$CIRCLE(20,CEVA)
  .. W "</td>",!
  .
  .W "<td width=""10%"" onClick=""ShowRcpt('"_CD_"')"" "
  . W ">"
  . W "<table><tr>"
  .  I $G(CEVA)'?.P W "<td>"_$$CIRCLE(20,CEVA)_"</td>"
  .  W "<td><img src=""w4rcpt.png"" style=""width:20px;height:20px"" /></td>"
  . W "</tr></table>",!
  .W "</td>"
  ;
  I $$PCQN1^W4PRM,QN>0,'$G(PRAI4)!(+QN=1) Q
  ;
  W "<td width="""_$$WD1_""" dir=""LTR"" "
  W ">",!
  I $$ISFIRE^W4FIRE(CD) W "</td>" Q
  ;
  I QN=1 W "</td>" Q
 ;
  W "<span style=""font-weight:bold;border:1px grey dotted;border-radius:2px"
     W ";font-size:"_$$MAINSIZE1_"px"
  W """ >"
   W $$NBSP^%L1FRM(1)_QN_$$NBSP^%L1FRM(1)
  W "</span>"
  ;
  W "</td>"
 Q
 ;
 ;
CLRRDY(STAM) ;
 N ST
 S ST="background-color:#e6e6e6;color:#b3b3b3"
 I $G(@$$^W4PRM@("BONSCR","RDTHROUGH"))!$$PAPJ^W4PRM D
 .S ST=ST_";text-decoration:line-through"
 Q ST
 ;
STYLERDY ;
 S STYLE=$$CLRRDY
 S CLRRDY=1
 Q
 ;
COLORST(HZ,CD,QN,UR,IND) ;
 S CLRRDY=0
 N STYLE S STYLE=""
 D
 .I $$DEL(HZ) S STYLE="background-color:black;color:red" Q
 .;
 .I $G(%ARG("GROUP")),$$GR(CD)'=%ARG("GROUP") D  Q
 ..S STYLE="color:"_$$WEAKCLR
 .;
 .I QN<0 S STYLE="background-color:black;color:red" Q
 .;
 .I $G(READY) D  Q
 ..S STYLE="background-color:"_$$COLORREADY
 .;
 .
 .I $$ITREADY(IND) D STYLERDY Q
 .I UR=3,$G(MAININD),$$ITREADY(MAININD) D STYLERDY Q
 .
 .I UR=4,$G(MAININD),$$ITREADY(MAININD),'$G(AI) D STYLERDY Q
 .
 .I UR=5,$L($G(IND4)),$$ITREADY(IND4) D STYLERDY Q
 .
 .I UR=5,$G(MAININD),$$ITREADY(MAININD),'$G(AI) D STYLERDY Q
 .
 .I $$ISFIRE^W4FIRE(CD),QN>0 D  Q
 ..I '$$ITREADY(IND) S STYLE="color:red"
 .
 .I $G(UR)=5 D
 ..;;S ^AA("W4BONNEW","MAINREF",+$G(HZ),+$G(CD))=$G(MAINREF)
 ..;;S ^AA("W4BONNEW","AI",+$G(HZ),+$G(CD))=AI
 ..;;I $G(MAINREF)'="",$$AI(MAINREF) S STYLE="color:black" Q
 ..I $G(AI) S STYLE="color:black" Q
 ..S STYLE="color:black" ; -- WAS GREEN
 ;
 I $$PAPJ^W4PRM,$$GR(CD)=44 S STYLE=STYLE_";border:4px green solid"
 Q STYLE
 ;
 ;
ADDS(REF,IND) ;
 N UR,NMT,QNT,HRT
 S UR=$L(REF,",") Q:UR<3
 N PCQN1 S PCQN1=$$PCQN1($G(HZ))
 I PCQN1 S UR=UR-1 ; --- !!!!!
 N ST S ST=$G(@REF)
 N CDT S CDT=$P(REF,",",3+PCQN1)
 S CDT=$$CLRCD(CDT)
 S MAININD=$G(MAININD)
 ;
 ;S ^AA("W4BONNEW","REF")=REF
 ;S ^AA("W4BONNEW","DREF")=$D(@REF)
 ;S ^AA("W4BONNEW","UR")=UR
 ;S ^AA("W4BONNEW","MAINCD")=$G(MAINCD)
 ;S ^AA("W4BONNEW","MAINNAME")=$$SHEM^W4P($G(MAINCD))
 ;
 I UR=3,$D(@REF)=1 D  Q  ; --- ADDS NORMAL
 .I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 .S NMT=$P(ST,"\") 
 .S NMT=$$IFCDNM(CDT,NMT)
 .S QNT=$P(ST,"\",3)
 .;;S ^AA("W4BONNEW","QNT0")=QNT
 .S QNT=$$QNT2PZ(QNT,NMT)
 .;;S ^AA("W4BONNEW","QNT")=QNT
 .S HRT=$P(ST,"\",4)
 .N COLOR S COLOR="darkblue"
 .I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 .D PCADD(CDT,NMT,QNT,HRT,COLOR,UR,IND)
 ; 
 I UR<4 D  Q
 .S IND4="",CDT4=""
 ;
 I UR=4 D
 .S CDT=$P(ST,"\") I CDT'="" D  Q
 ..S CDT=$$CHKZERO(CDT)
 ..I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 ..S QNT=$P(ST,"\",3)
 ..S NMT=$P(ST,"\",2)
 ..S NMT=$$IFCDNM(CDT,NMT)
 ..S QNT=$$QNT2PZ(QNT,NMT)
 ..S HRT=$P(ST,"\",6)
 ..N COLOR S COLOR="#534e93"
 ..I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 ..N AI S AI=0 
 ..I $$AI(REF) S AI=1
 ..S IND4=IND,CDT4=CDT
 ..D PCADD(CDT,NMT,QNT,HRT,COLOR,UR,IND)
 .
 .S AI=0
 .S CDT=$P(ST,"\",4) I CDT'="" D  Q
 ..S CDT=$$CHKZERO(CDT)
 ..I $G(%ARG("NORDYIT")),$G(IND4),$$ITREADY(IND4) Q
 ..S QNT=$P(ST,"\",3)
 ..S NMT=$P(ST,"\",5)
 ..S NMT=$$IFCDNM(CDT,NMT)
 ..S HRT=$P(ST,"\",6)
 ..N COLOR S COLOR="darkgreen"
 ..I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 ..D PCADD2(CDT,NMT,QNT,HRT,COLOR,UR,IND)
 Q
 ;
 ;
QNT2PZ(QNT,NMT) ;
 I $$CDNM^W4PRM,$G(MAINCD),$$SHEM^W4P(MAINCD)["()",QNT'["|",QNT'["+" D
 .I NMT["l`ny ivg" S QNT=QNT_"|+-" Q
 .I NMT["oini ivg" S QNT=QNT_"|-+ " Q
 .S QNT=QNT_"|++"
 Q QNT
 ;
 ;
AI(REF) ;
 N HZ S HZ=$$^%L1IND(REF,1)
 N NP S NP=$$^%L1IND(REF,2+$$PCQN1(HZ))
 N PAR
 ;
 I $$PCQN1(HZ) D
 .N A S A=$G(@REF)
 .N REFPC
 .S REFPC=$$^W4ORD_"("""_HZ_""",""PC1"","""_NP_""")"
 .N A1 S A1=$G(@REFPC)
 .S NP=$P(A1,"\",15)
 ;
 I 'NP Q 0
 S PAR=$P($G(@$$^W4ORD@(HZ,NP)),"\")
 ; 
 I 'PAR Q 0
 I $$DD^W4EZA(PAR) Q 1
 Q 0
 ;
ITREADY(IND) ;
 Q $$ITREADY^W4BONVW(IND)
 ;
IFORD(K)
 N DT,PRN,TIME,HZ,SHB,REF,UR
 S IND=$G(ORDSI(K))
 D PRS
 I DT=""!(PRN="")!(TIME="")!(HZ="") Q 0
 Q $D(@$$^W4BON(READY)@(DT,PRN,TIME,HZ))
 ;
 ;
RKZALL ;
 N (JB,%ARG,PRN)
 D INIT^W4BONVW ; --> DT,READY 
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 S READY=0
 I $G(DT)="" S DT=$$^W4DZ
 ;
 K ORDS
 ;
 I $G(PRN) D
 .D CRORDS(PRN)
 ;
 I $G(PRN)="" D
 .N PRN
 .S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D CRORDS(PRN)
 ;
 S HZ="",K=0
 ;
 S TIME="" F  S TIME=$O(ORDS(TIME)) Q:TIME=""  D
 .F  S HZ=$O(ORDS(TIME,HZ)) Q:HZ=""  S K=K+1 D
 ..S ORDSI(K)=ORDS(TIME,HZ)
 ;
 N K,IND S K="" F  S K=$O(ORDSI(K)) Q:K=""  D
 .S IND=$G(ORDSI(K))
 .
 .S MAININD=""
 .D PRS
 .S PCQN1=$$PCQN1($G(HZ))
 .;
 .I DT="" S DT=$$^W4DZ
 .I (PRN="")!(TIME="")!(HZ="") Q
 .;
 .S NORDYITMAIN=0
 .;
 .S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
 ..S REF=$G(^(SHB)) Q:$E(REF)'="^"
 ..S UR=$L(REF,",")
 ..I UR>1 S UR=UR-$$PCQN1(HZ) ; --- !!!!!
 ..
 ..N INDSH S INDSH=IND_"~"_SHB
 ..
 ..N CD S CD=$P($G(@REF),"\")
 ..;
 ..I UR=2,$$AI(REF),$D(@REF)=11 Q  ; -- !!!
 .. 
 ..I UR=2 D  Q  ; -- PARIT ROSHI
 ...S NORDYITMAIN=0
 ... I $G(%ARG("NORDYIT")),$$ITREADY(INDSH) S NORDYITMAIN=1 Q
 ...
 ...S MAININD=IND,MAINREF=REF,MAINCD=CD
 ...N ST,NM,QN,HR,CD,STYLE
 ...S ST=$G(@REF)
 ...S CD=$P(ST,"\")
 ...S QN=$P(ST,"\",5)
 ...Q:ST=""
 ...;
 ...D TMPRKZ
 ...I CD D
 ....I $$KVZRKZ,$$ITREADY(IND) Q
 ....D RKZ(CD,QN)
 ..
 ..I UR=3 D  Q
 ...N ST S ST=$G(@REF)
 ...N CDT S CDT=$P(REF,",",3+PCQN1)
 ...S CDT=$$CLRCD(CDT)
 ...;
 ...I UR=3,$D(@REF)=1 D  Q  ; --- ADDS NORMAL
 ....I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 ....S QNT=$P(ST,"\",3)
 ....I CDT D
 .....I $$KVZRKZ,$G(MAININD),$$ITREADY(MAININD) Q
 .....D RKZ(CDT,QNT)
 ..; 
 ..I UR<4 D  Q
 ...S IND4="",CDT4=""
 ..;
 ..S ST=$G(@REF)
 ..I UR=4 D
 ...S CDT=$P(ST,"\") I CDT D  Q
 ....I $G(%ARG("NORDYIT")),$G(MAININD),$$ITREADY(MAININD) Q
 ....S QNT=$P(ST,"\",3)
 ....I CDT D
 .....S IND4=IND,CDT4=CDT
 .....I $$KVZRKZ,$G(MAININD),$$ITREADY(MAININD) Q
 .....D RKZ(CDT,QNT)
 ...
 ...S AI=0
 ...S CDT=$P(ST,"\",4) I CDT D  Q
 ....I $G(%ARG("NORDYIT")),$G(IND4),$$ITREADY(IND4) Q
 ....S QNT=$P(ST,"\",3)
 ....I CDT D
 .....I $G(IND4),$$KVZRKZ,$$ITREADY(IND4) Q
 .....D RKZ(CDT,QNT)
 Q
 ;
 ;
RKZ(CDIN,QN) ;
 I '$G(CDIN) Q
 N CD S CD=CDIN
 I $$KVZRKZ S CD=$G(@$$^W4GL("W4KVZRKZ")@(CDIN))
 S CD=$$CLRCD(CD)
 I 'CD Q
 I '$D(TMPRKZORD) D TMPRKZORD
 I '$D(TMPRKZ) D TMPRKZ
 I $G(PRORD) S @TMPRKZORD@(CD)=$G(@TMPRKZORD@(CD))+QN Q
 I $$BIG Q
 S @TMPRKZ@(CD)=$G(@TMPRKZ@(CD))+QN
 Q
 ;
 ;
KOT(IND) ; -- KOTERET HAZMANA
 D ^W4BONKOT(IND)
 Q
 ;
 ;
TIMEPRN(TIME) ;
 N BGCOLOR S BGCOLOR="grey"
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
 D OPTBL
 W ">",!
  W "<tr class=""timeprn"" >",!
   W "<td align=""center"" class=""timeprn"" >"
   W $$^%W1DICT("PRINTTIME")_" "_$$T^%L1TIME(TIME)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCADD(CDT,NMT,QNT,HRT,COLOR,UR,IND) ;
 N SZ S SZ=$$FSZ-1
 I $G(COLOR)="",$G(QNT)<0 S COLOR="red"
 ;
 S CDT=$$CHKZERO(CDT)
 ;
 I $G(%ARG("NORDYIT")),$G(IND),$$ITREADY(IND) Q
 ;
 D OPTBL
 W "border=""0"" style=""height:"_$S($$1024^W4WDSCR:23,1:27)_"px;"_$$COLORST(HZ,CDT,QNT,UR,IND)_""" "
 W ">",!
  W "<tr "
   D
   .N DT,PRN,IME,HZ
   .D PRS Q:'HZ
  W " >"
  ;
 D 
  .I $G(AI),$G(IND) D TDITREADY^W4BONVW(IND) Q
  . 
  .W "<td width="""_$$WDADDS(UR)_""">"
  .W "</td>"
 ; 
  N COLORST S COLORST=$$COLORST(HZ,CDT,QNT,UR,IND)
  ;
  W " <td class=""tdadds"" style=""width:80%;"_COLORST
   D
   .I $G(AI)&(UR=4) W ";font-weight:bold;"_$$MAINSIZE Q
   .W ";"_$$ADDSIZE
   W """ "
  W ">"
   I '$$QNPIZZA(QNT),'$G(AI) W $S(UR=5:" ++ ",1:" + ")
   I $G(AI) W "&nbsp;&nbsp;"
   S NMT=$$RPL^%L1FRM(NMT,"()","")
   W $$H2U^%L1FRM(NMT)
  W "</td>",!
 ;
  I $$QNPIZZA(QNT) D
  .N SZ S SZ=$$ADDSIZE1
  .I $$QNPIZZA(QNT) W "<td>"_$$BON^W4SHOWPZ(QNT,SZ)_"</td>" Q
  ;
  ;;S ^AA("W4BONNEW-PCADD",CDT,"QNT")=QNT
  I '$$QNPIZZA(QNT),(+QNT'=1) D TDQNT
 W "</tr>",!
 ;
 ;
 S HRT=$$SPA^%L1FRM($$^W4CLRMN(HRT))
 I COLORST'=$$CLRRDY S COLORST=""  
 I HRT'?.P D CMNTIT(HRT,$$TBLFONTSIZE^W4BONCSS_";"_COLORST)
 ;
 W "</table>",!
 Q
 ;
 ;
PCADD2(CDT,NMT,QNT,HRT,COLOR,UR,IND) ;
 D OPTBL
 W ">",!
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td>"
    D PCADD(CDT,NMT,QNT,HRT,COLOR,5,IND) ;
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
TDQNT ;
 I $G(QN)<0 Q
 W "<td width="""_$$WD1_""" dir=""LTR"" >"
 D
  .W "&nbsp;" 
  .W "<span class=""tdqnt"" >"
  . W $$NBSP^%L1FRM(1)_QNT_$$NBSP^%L1FRM(1)
  .W "</span>"
 W "</td>"
 Q
 ;
 ;
CMNTIT(HR,STYLE) ;
 S HR=$$^W4CLRCMN(HR)
 I $$^W4CLRMN(HR)="" Q
 ;
 D KAVCMNT
 ; 
 W "<tr >"
  W "<td colspan=""3"">"
   D OPTBL
   W ">",!
   W "<tr>" 
    W "<td width=""22%"">"
     W "<span class=""cmtit"">"_$$^%W1DICT("COMMENT")_"</span>"
    W "</td>"
    W "<td class=""tdcmtit""  "
     I $L($G(STYLE)) W "style="""_STYLE_""" "
    W ">"
     W $$H2U^%L1FRM(HR)
    W "</td>"
   W "</tr>",!
  W "</table></td></tr>",!
  ;
  D KAVCMNT
 ;
 Q
 ;
 ;
KAVCMNT ;
 W "<tr><td colspan=""3""><hr style=""border:1px dotted lightgrey""></td></tr>",!
 Q
 ;
BIG(STAM) ;
 Q $G(%ARG("BIG"))
 ;
ORD(IND) ; 
 I $G(IND),'$P(IND,"~",3) Q 1
 Q 0
 ;
 ;
SHOWBIG(IND) ;
  N READY S READY=+$G(%ARG("READY"))
  N HGKOT S HGKOT=40
  ;
  W !,"<table border=""0"" style=""position:absolute;top:0;left:0;width:100%;background-color:rgba(255,255,255,1)"">",!
   W "<tr height="""_HGKOT_"px"">"
    W "<td >"
     D KOT(IND)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>",!
    W "<td>",!
      W "<div class=""ordbody"" dir="""_$$^%W1DIR_""" name=""divwnd"" "
       N HG S HG=($$HGW-HGKOT)_"px"
       D 
       .W "style=""" 
       .N BGCOLOR S BGCOLOR="white" 
       .I READY S BGCOLOR=$$COLORREADY
       W """"
      W ">",!
       ; 
       D SHOWORD1(IND)
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
   ;
  W "</table>",!
 Q
 ;
 ;
OPTBL ;
 W !,"<table dir="""_$$^%W1DIR_""" class=""tbl"" "
 W "cellspacing=""0"" cellpadding=""0"" " ;
 Q
 ;
FIRE(IND) ;
 N DT,PRN,TIME,HZ
 D PRS
 I $G(READY)="" S READY=$$STATRD^W4BONVW
 I $L(TIME) Q $$FIRE^W4BONVW(IND)
 ;
 N FIRE S FIRE=0
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 .I $$FIRE^W4BONVW(IND) S FIRE=1
 Q FIRE
 ;
 ;
PRS ;
 D PRS^%L1FRM(IND,"DT~PRN~TIME~HZ","~")
 Q
 ;
 ;
KOTMSL(HZM) ;
 D PCHDMSL
 ;
 I $$WOLT(HZM) D
 .N TXT S TXT=$$HZLAKNOM^W4HZMST(HZM)_" : WOLT"
 .D PCBR(TXT,1,"","text-align:center")
 ;
 I $$HAAT(HZM) D
 .N TXT S TXT=$$HZLAKNOM^W4HZMST(HZM)_" : HAAT"
 .D PCBR(TXT,1,"","text-align:center")
 ;
 D PCHRAED
 I '$G(@$$^W4PRM@("BONADDR")) Q
 ;
 I $$TAKEAWAY^W4HZMST(HZM) Q
 ;
 ;;D KAV
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR'?.P D PCBR($$IR^W4HZMST(HZM),1)
 D KTV
 D KAV
 ;
KOTMSLCMNT ;
 N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 I $L(CMNT) D TRSP D PCCMNT(CMNT)
 D TRSP
 Q
 ;
PCHRAED ;
 N CMNT S CMNT=$$HRAED^W4HZMST(HZM)
 S CMNT=$$SPA^%L1FRM(CMNT)
 I $TR(CMNT," ","")?.P1"WOLT:"1N.N Q
 I CMNT'?.P D TRSP D PCCMNT(CMNT,1) D TRSP
 Q
 ;
 ;
TRSP W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
 ;
KTV ; 
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR="TAKEAWAY"!($TR(IR,".","")="TAW") Q
 ;
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 N BAIT S BAIT=$P(@$$^W4ORD@(HZM),"\",15)
 N DIRA S DIRA=$P(@$$^W4ORD@(HZM),"\",14)
 N KTV S KTV=$P(@$$^W4ORD@(HZM),"\",3)
 N CNISA S CNISA=$P(@$$^W4ORD@(HZM),"\",16)
 N KOMA S KOMA=$P(@$$^W4ORD@(HZM),"\",13)
 ;
 S KTV=$$SPA^%L1FRM(KTV)
 ;
 I HRAED["SODEXO" D PCCMNT(KTV) G PCIR
 ;
 I '$$BAITDIRA^W4PRM!$$SF^W4PRM D
 .N ADR S ADR=BAIT_$S(DIRA:"/"_DIRA,1:"")_" "_KTV
 .Q:ADR?.P
 .D PCCMNT(ADR)
 ;
 I $$BAITDIRA^W4PRM,'$$SF^W4PRM D
 .I KTV'?.P D PCCMNT(KTV)
 .I $L(BAIT)!$L(DIRA) D PCCMNT(DIRA_" : dxic  "_BAIT_" : zia")
 ;
PCIR I KTV'["TAKEAWAY",IR'="TAKEAWAY",$TR(IR,".","")'="TAW" D
 .I CNISA'=""!(KOMA'="") D
 ..D PCCMNT(CNISA_":dqipk "_KOMA_" :dnew")
 ;
 I $L(HRAED) D PCCMNT(HRAED,1)
 Q
 ;
 ;
PCCMNT(CMNT,BOLD) ;
 W "<tr><td "
   W " >"
    I $G(BOLD) W "<b>"
    W $$H2U^%L1FRM(CMNT)
    I $G(BOLD) W "</b>"
 W "</td></tr>",!
 Q
 ;
 ;
PCBC(TX,PR,COLOR)
 W "<tr "
  I $$BIG W "style=""height:30px"" "
 W ">"
 W "<td style=""font-weight:bold;text-align:center"
   I PR W ";font-size:"_($$FSZ+2)
   I $G(COLOR)'="" W ";color:"_COLOR
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>",!
 Q
 ;
PCBR(TX,PR,COLOR,DOP)
 W "<tr><td style=""font-weight:bold"
   I PR W ";font-size:"_$$^W3FSZ($$FSZ+2)
   I $G(COLOR)'="" W ";color:"_COLOR
   I $L($G(DOP)) W ";"_DOP 
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>",!
 Q
 ;
KAV ;
 W "<tr><td><hr style=""border:1px dotted lightgrey""></td></tr>",!
 Q
 ;
WOLT(HZM) ;
 Q $$WOLT^W4HZPCHD(HZM)
 ;
HAAT(HZM) ;
 Q $$HAAT^W4HZMST(HZM)
 ;
PAIDIT(HZM) ;
 Q $$PAIDIT^W4HZPCHD(HZM)
 ;
PCHDMSL ;
 Q
 ;
WNDCOLS(STAM)
 N WNDCOLS
 S WNDCOLS=$$WNDCOLS^W4PRM
 I 'WNDCOLS S WNDCOLS=4
 I $$1024^W4WDSCR,WNDCOLS>5 S WNDCOLS=5
 Q WNDCOLS
 ;
WNDROWS(STAM) ;
 Q 1
 ;
HGW(STAM) ;
 Q 560
 ;
HGWBIG(STAM) ;
 N HG S HG=$S($$1024^W4WDSCR:540,1:665)
 Q HG
 ;
FSZ(STAM) ;
 S FSZ=12
 ;;I $$WNDCOLS>4 S FSZ=11
 I '$$1024^W4WDSCR S FSZ=FSZ+1
 I $$BIG S FSZ=FSZ+1
 Q FSZ
 ;
ORDYOM(ORDYOM) ; 
 I $G(ORDYOM),$$MSPYOM^W4PRM D
 .N DZ S DZ=$$^W4DZ
 .N N S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  D
 ..I ORDYOM=$G(^(N)) S ORDYOM=N,OK=1
 Q ORDYOM
 ;
GR(CD) ; 
 I $G(CD)="" Q ""
 Q $$SUG^W4P(CD) 
 ;
WEAKCLR(STAM) ; 
 Q "lightgrey" 
 ;
JBDEV ;
 N DEV S DEV=$$^W4MYDVN
 W "<div style=""position:absolute;color:grey;font-size:"_$$^W3FSZ(8)_""" >",!
  W $$NBSP^%L1FRM(3)_"JB="_$G(JB)_"&nbsp;&nbsp;DEV="_DEV_$$NBSP^%L1FRM(5)_"IP="_$G(^dev(DEV))
 W "</div>",!
 Q 
 ;
 ;
SHOWRKZORD ;
 N (JB,%ARG,%REM)
 D TMPRKZORD
 D OPTBL
 W " id=""TblCnc"" "
 ;; W "width=""100%"" style=""font-size:"_$$^W3FSZ(12)_""" "
 W ">",!
  D KOTRKZORD
  S N="" F  S N=$O(@TMPRKZORD@(N)) Q:N=""  D TRRKZORD(N)
 W "</table>",!
 K @TMPRKZORD
 Q
 ;
 ;
KOTRKZORD ;
 W "<tr >",!
  W "<td colspan=""3"" class=""timeprn"" style=""font-weight:bold"" >" 
   W $$^%W1DICT("ITCONC")
  W "</td>"
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
TRRKZORD(N) ;
 W "<tr style=""color:brown"" >"
  ;;W "<td>"_N_"</td>",!
  N QN S QN=$G(@TMPRKZORD@(N)) 
  W "<td colspan=""2"" style=""font-weight:bold"" >"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
  W "<td>"_QN_"</td>"
 W "</tr>",!
 ;
 W "<tr><td colspan=""3"">"
  W "<hr style=""color:lightgrey;border-style:dotted"">",!
 W "</td></tr>",!
 Q
 ;
READY(STAM) ; 
 Q +$$GETP^%W1PRM("READY") 
 ;
WD1(STAM) ; 
 Q "15%" 
 ;
TOPARROW()
 N TOP
 S TOP=800
 I $$1024^W4WDSCR S TOP=670
 Q TOP
 ;
ARROWBACK ; 
 N LEFT,TOP
 S LEFT=1530
 I $$1024^W4WDSCR S LEFT=950
 W "<img src=""w4bonarrright.png"" "
  W "style=""position:absolute;top:"_$$TOPARROW_";left:"_LEFT_";z-index:100"" "
  W $$^W4TOUCH_"='MoveOrds(-1)'"
 W ">"
 W "<span style=""position:absolute;top:"_($$TOPARROW+20)_";left:"_(LEFT-30)_"px;zIndex:100;font-size:"_$$^W4KF(30)_""" >",!
  W K
 W "</span>",! 
 Q 
 ;
ARROWFRWD ; 
 W "<img src=""w4bonarrleft.png"" "
  W "style=""position:absolute;top:"_$$TOPARROW_";left:0;zIndex:100"" "
  W $$^W4TOUCH_"='MoveOrds(1)'"
 W ">"
 W "<span style=""position:absolute;top:"_($$TOPARROW+20)_";left:80px;zIndex:100;font-size:"_$$^W4KF(30)_""" >",!
  W (QNORDS-K-WNDCOLS)
 W "</span>",! 
 Q 
 ;
MVORDS(PRM) ; 
 N SH S SH=$$GETP^%W1PRM("STARTORD")
 S SH=SH+(PRM*$$WNDCOLS) I SH<0 S SH=0
 D PUT^%W1PRM("STARTORD",SH)
 Q 1
 ;
WDADDS(UR) ; 
 I $$1024^W4WDSCR Q "14%" 
 Q "9%" 
 ;
DEL(HZ) Q $$DEL^W4DEL(HZ) 
 ;
QNPIZZA(QNT) ; 
 I QNT["|"!(QNT["+")!(QNT[":") Q 1
 Q 0 
 ;
COLORREADY() 
 Q "#FFFF8C" 
 ;
PCQN1(HZ) ; 
 I $G(HZ) Q $S($D(@$$^W4ORD@(HZ,"PC1")):1,1:0)
 Q $$PCQN1^W4PRM 
 ;
KVZRKZ() ; 
 I $$KVZRKZ^W4PRM!$$PAPJ^W4PRM Q 1
 Q 0 
 ;
SOFORD(HZ) ;
 W "<tr>"
  W "<td colspan=""4"" style=""text-align:center;background-color:"_$$BGCLRSOFORD(HZ)_""">" 
   ;;W $$^%W1DICT("ENDORDER")
  W "</td>"
 W "</tr>",! 
 Q 
 ;
 ;
BGCLRSOFORD(HZ) ; 
 N BGC
 D
 .I $$TAW^W4BONKOT(HZ) S BGC="orange" Q
 .I $$MSD^W4BONKOT(HZ) S BGC="green" Q
 .S BGC="#019bf5"
 ;
 Q BGC 
 ;
 ; 
CDNM() ; 
 Q $G(@$$^W4PRM@("MDBCDNM")) 
 ;
IFCDNM(CD,NM,DAKA) ; 
 Q $$IFCDNM^W4MDBPC(CD,NM,$G(DAKA)) 
 ;
MAINSIZE() ; 
 N SZ S SZ=$G(@$$^W4PRM@("BONSCR","MAINSIZE"))
 I SZ<18 S SZ=18  
 Q "font-size:"_SZ_"px"
 ; 
MAINSIZE1()
 N SZ
 S SZ=$G(@$$^W4PRM@("BONSCR","MAINSIZE"))
 I SZ<$$MINSIZE S SZ=$$MINSIZE
 Q SZ
 ;
ADDSIZE() ; 
 N SZ S SZ=$$ADDSIZE1
 Q "font-size:"_SZ_"px"
 ; 
ADDSIZE1() ;
 N SZ S SZ=$G(@$$^W4PRM@("BONSCR","ADDSIZE"))  
 I SZ<$$MINSIZE S SZ=$$MINSIZE
 Q SZ 
 ; 
MINSIZE() 
 Q 21 
 ;
CIRCLE(DIAM,CEVA,CEVABRD) ;
 N ST
 S ST="<div style=""width:"_DIAM_"px;height:"_DIAM_"px;border-radius:50%;"
 I $L($G(CEVABRD)) S ST=ST_"border:2px solid "_CEVABRD
 I $L($G(CEVA)) S ST=ST_";background-color:"_CEVA
 S ST=ST_"""></div>"
 Q ST 
 ;
CHKZERO(CD) ;
 I $E(CD,1,2)="0-" D
 .N CDN S CDN=$P(CD,"-",2)
 .I CDN'="",$$SHEM^W4P(CDN)'="" S CD=CDN
 Q CD
 ;
 ;
NETPLACE ; 
 I $D(@$$^W4GL("W4MSDSTA")@(+$H)) D
 .N A,OK S OK=0
 .N LAST S LAST="" F  S LAST=$O(@$$^W4GL("W4MSDSTA")@(+$H,LAST),-1) Q:LAST=""  D  Q:OK
 ..S A=$G(@$$^W4GL("W4MSDSTA")@(+$H,LAST)) I $P(A,"~",3) S OK=1
 .Q:'OK  Q:LAST=""
 .S A=$G(@$$^W4GL("W4MSDSTA")@(+$H,LAST))
 .N PRM S PRM=""
 .N MYPLACE S MYPLACE=$P(A,"~",2)
 .N TIM S TIM=$$MINSEC($P(A,"~",3))
 .N TIMNET S TIMNET=$$MINSEC($P(A,"~",7))
 .S NETPLACE=$P(A,"~",6)
 .S PRM=$P(TIM,":")_"<>"_$P(TIM,":",2)_"<>"_MYPLACE_"<>"_NETPLACE_"<>"_$P(TIMNET,":")_"<>"_$P(TIMNET,":",2)
 .
 .W "<table width=""100%"" id=""TblSta"" align=""center"">",!
 . W "<tr>"
 .  W "<td style=""text-align:center;color:white;font-size:"_$$^W3FSZ(22)_""">"
 .    W $$^%W1DICT("YOURNETPLACE",PRM)
 .  W "</td>"
 . W "</tr>"
 .W "</table>",!
 ;
 I $D(@$$^W4GL("W4MSLSTA")@(+$H)) D
 .N A,OK S OK=0
 .N LAST S LAST="" F  S LAST=$O(@$$^W4GL("W4MSLSTA")@(+$H,LAST),-1) Q:LAST=""  D  Q:OK
 ..S A=$G(@$$^W4GL("W4MSLSTA")@(+$H,LAST)) I $P(A,"~",3) S OK=1
 .Q:'OK  Q:LAST=""
 .S A=$G(@$$^W4GL("W4MSLSTA")@(+$H,LAST))
 .N PRM S PRM=""
 .N MYPLACE S MYPLACE=$P(A,"~",2)
 .N KF S KF=$P(A,"~",3)
 .N KFNET S KFNET=$P(A,"~",7)
 .S NETPLACE=$P(A,"~",4)
 .S NETMSD=$P(A,"~",5)
 .S NETMSD1=$P(A,"~",6)
 .S PRM=$$AH(KF)_"<>"_MYPLACE_"<>"_NETPLACE_"<>"_NETMSD1_"<>"_$$AH(KFNET)
 .
 .W "<table width=""100%"" id=""TblStaM"" align=""center"">",!
 . W "<tr>"
 .  W "<td style=""text-align:center;color:lightgreen;font-size:"_$$^W3FSZ(20)_""">"
 .    W $$^%W1DICT("DLVNETPLACE",PRM)
 .  W "</td>"
 . W "</tr>"
 .W "</table>",!
 Q
 ;
MINSEC(TIM) ; 
 S TIM=$J(TIM,2,2)
 N TIM1,TIM2
 S TIM1=$P(TIM,".")
 S TIM2=$P(TIM,".",2)
 I $L(TIM2)=1 S TIM2=TIM2_"0"
 S TIM2=TIM2*6\10
 Q TIM1_":"_TIM2
 ;
AH(KF) ; 
 Q KF*100_"%" 
 ;
COLHZ(HZM) ; 
 N NMB S NMB=$$NMB^W4HZMST(HZM) I $L(NMB)<4 Q ""
 N COLHZ S COLHZ=""
 I $$NMB^W4KIOSKO(HZM) S NMB=$G(@$$^W4ORD@(HZM,"TELB")) Q:NMB=""
 ;
 I $G(@$$^W4GL("LKH")@(NMB,"COLHZ")) D
 .S COLHZ=$G(@$$^W4GL("LKH")@(NMB,"COLHZ"))
 .I $D(@$$^W4GL("W4BONVW")@(HZM)) Q
 .S COLHZ=$G(@$$^W4GL("LKH")@(NMB,"COLHZ"))+1
 ;
 I '$G(@$$^W4GL("LKH")@(NMB,"COLHZ")) D
 .D
 ..N GL S GL=$$^W4GL("P1HL")
 ..N N,I S N="",I=0 F  S N=$O(@GL@(NMB,N)) Q:N=""  I '$$DEL^W4DEL(N) S I=I+1
 ..
 ..N N0 S N0=$$NMBKSK^W4KIOSKO
 ..S N="" F  S N=$O(@GL@(N0,N)) Q:N=""  I $G(@$$^W4ORD@(N,"TELB"))=NMB,'$$DEL^W4DEL(N) S I=I+1 ;;S ^AA("W4BONNEW-COLHZ",N)=NMB
 ..S COLHZ=I
 ;
 S @$$^W4GL("W4BONVW")@(HZM)=$H
 S @$$^W4GL("LKH")@(NMB,"COLHZ")=COLHZ
 Q COLHZ
 ;
 ;
NMB(HZM) ;  
 N NMB S NMB=$$NMB^W4HZMST(HZM) 
 I $$^W4KIOSKO(HZM) Q $G(@$$^W4ORD@(HZM,"TELB"))
 Q NMB
 ;
 ;
DAKA(REF) ; 
 N DAKA S DAKA=0
 I $G(REF)'="" D
 .S REF=$$GL^%L1IND(REF,$L(REF,","))
 .N REF1,REF2,REFI S REF1=REF,REFI=$P(REF,")")
 .F  S REF1=$Q(@REF1),REF2=$$GL^%L1IND(REF1,$L(REF1,",")) Q:REF2'[REFI  D  Q:DAKA
 ..N A I REF1[",175)"!(REF1[",""175"")") S DAKA=1
 Q DAKA
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONTM
W4BONTM ; [ 21.01.26 18:58 ] [ 30.06.24 20:34 ] [ 09.06.24 13:17 ] 
 N (JB,%ARG,%REM,MHZ,MHZA,MHZM)
 K MHZ
 S DTZ=$$^W4DZ
 S W4BON=$$^W4GL("W4BON")
 S W4BONA=$$^W4GL("W4BONA")
 S GW1=3,GW2=8,GW3=100
 ;
 S PRN="" F  S PRN=$O(@W4BON@(DTZ,PRN)) Q:PRN=""  D
 .S TIME="" F  S TIME=$O(@W4BON@(DTZ,PRN,TIME)) Q:TIME=""  D
 ..S HZ="" F  S HZ=$O(@W4BON@(DTZ,PRN,TIME,HZ)) Q:HZ=""  D
 ...S MINTIME(HZ)=$G(@$$^W4ORD@(HZ,"FIRSTPC"))
 ;
 S HZ="" F  S HZ=$O(MINTIME(HZ)) Q:HZ=""  D
 .S TIME=MINTIME(HZ)
 .I TIME="" Q
 .S DIF=$$DIF^%L1TIME($H,TIME)
 .I DIF>GW2 S MHZ(GW3)=$G(MHZ(GW3))+1 Q
 .I DIF>GW1 S MHZ(GW2)=$G(MHZ(GW2))+1 Q
 .S MHZ(GW1)=$G(MHZ(GW1))+1 Q
 ;
 K MHZA
 S PRN="" F  S PRN=$O(@W4BONA@(DTZ,PRN)) Q:PRN=""  D
 .S TIME="" F  S TIME=$O(@W4BONA@(DTZ,PRN,TIME)) Q:TIME=""  D
 ..S HZ="" F  S HZ=$O(@W4BONA@(DTZ,PRN,TIME,HZ)) Q:HZ=""  D
 ...S MHZA(HZ)=""
 ;
 S MHZA=0
 S HZ="" F  S HZ=$O(MHZA(HZ)) Q:HZ=""  D
 .S MHZA=MHZA+1
 ;
 S PRN="" F  S PRN=$O(@W4BONA@(DTZ,PRN)) Q:PRN=""  D
 .S TIME="" F  S TIME=$O(@W4BONA@(DTZ,PRN,TIME)) Q:TIME=""  D
 ..S HZ="" F  S HZ=$O(@W4BONA@(DTZ,PRN,TIME,HZ)) Q:HZ=""  D
 ...S MINTIME(HZ)=$G(@$$^W4ORD@(HZ,"FIRSTPC"))
 ;
 S GWM1=20,GWM2=30,GWM3=60,GWM4=1000
 S HZSUP=0,HZOP=0
 ;
 S HZ="" F  S HZ=$O(MINTIME(HZ)) Q:HZ=""  D
 .I $$HZM^W4MSD(HZ) Q
 .I $$TAKEAWAY^W4HZMST(HZ) Q
 .I $$FUTUREDT^W4HZMIT(HZ) Q
 .I $$DEL^W4DEL(HZ) Q
 .
 .I $D(@$$^W4ORD@(HZ,"TM")) S HZSUP=HZSUP+1 Q
 .;;S ^AA("W4BONTM",$P($H,",",2),HZ)=""
 .S HZOP=HZOP+1
 .S TMPC=$G(MINTIME(HZ))
 .S DIF=$$DIF^%L1TIME($H,TMPC) 
 .D
 ..I DIF'>GWM1 S MHZM(GWM1)=$G(MHZM(GWM1))+1 Q
 ..I DIF'>GWM2 S MHZM(GWM2)=$G(MHZM(GWM2))+1 Q
 ..I DIF'>GWM3 S MHZM(GWM3)=$G(MHZM(GWM3))+1 Q
 ..S MHZM(GWM4)=$G(MHZM(GWM4))+1 Q
 ;
 S SHL=0
 N FILE S FILE=$$^W4GL("FILE")
 S N="" F  S N=$O(@FILE@(N)) Q:N=""  D
 .I $G(@FILE@(N,"CIO"))'="I" Q
 .N DAT S DAT=$O(@FILE@(N,999999),-1)
 .N DTIN S DTIN=$$^%L1DC(DAT,4)
 .I DTIN<($H-1) Q
 .I $$KVZ^W4LEVPR(N)'=2 Q
 .S SHL=SHL+1
 ;
 S MHZM=HZSUP_"\"_($G(MHZM(GWM1))+$G(MHZM(GWM2))+$G(MHZM(GWM3))+$G(MHZM(GWM4)))_"\"_SHL
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONVW
W4BONVW ; [ 27.07.26 18:45 ] [ 07.07.26 15:05 ] [ 03.12.25 11:38 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(%ARG("SHOW"))=0 Q
 ;
 ;; -- SHURA RISHONA MUZEGET BE W4BONHD ( PRNLST )
 ;
 I $G(%ARG("READY")) S %ARG("NORDYIT")=0,%ARG("FIRE")=0
 ;
 S @$$^W4PRM@("BONWND")=2 ; --> ^W4BONNEW
 ;
 I $$BONNEW^W4PRM D ^W4BONNEW Q
 ;
 I $$BONWND^W4PRM=1 D ^W4BONWND Q
 ;
 D INIT
 D PUT^%W1PRM("CURPRN",CURPRN)
 W "<br>",!
 ;
 W "<table width=""100%"" style=""font-size:"_$$^W3FSZ($$FSZHD)_""" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""0"">",!
  W "<tr>"
   W "<th width=""7%"">"_$$^%W1DICT("ORDER")_"</th>"
   W "<th width=""5%"">"_$$^%W1DICT("READY")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("PRINTTIME")_"</th>"
   W "<th width=""11%"">"_$$^%W1DICT("TABLEORCUST")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("DESCRIPTION")_"</th>"
   W "<th width=""22%"">"_$$^%W1DICT("ADDRESS")_"</th>"
   W "<th width=""14%"">"_$$^%W1DICT("DESTINTIME")_"</th>"
   W "<th width=""10%"">"_$$^%W1DICT("TIMEAFTERRCV")_"</th>"
  W "</tr>",!
  ;
  I 'CURPRN G ET
  ;
  S SHORD=0
  N DRC S DRC=1
  ;;I $G(READY) S DRC=-1
  S PRN=CURPRN D
  .S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME),DRC) Q:TIME=""  D
  ..S HZ="" F  S HZ=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ),DRC) Q:HZ=""  D
  ...I $G(%ARG("ORD")),HZ'=%ARG("ORD") Q
  ...I $E($G(%ARG("ORD")))="T",$$NMB^W4HZMST(HZ)'=$E(%ARG("ORD"),2,20) Q
  ...S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
  ...I $G(%ARG("FIRE")),'$$FIRE(IND) Q
  ...I $G(%ARG("ORD"))="",+READY=0!(+READY=2) S @$$^W4MAIN("TMPBON1")@(IND)=""
  ...W "<tr id=""tr"_IND_""" ",!
  ... W "style=""" 
  ... D
  .... I $$DEL(HZ) W "background-color:black;color:red;" Q
  .... I $$FIRE(IND) W "color:red;"
  ... W "font:size:"_$$^W3FSZ($$FSZHDORD)
  ...W """>"
  ... W "<td id=""nomord"_IND_""" onClick=""OnClickOrd('"_HZ_"')"" "_$$STYLE(HZ,"C")_">"_HZ_"</td>"
  ... D TDREADY(IND)
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND,"C")_">"_$ZD($E(TIME,1,5),"DD.MM.YY")_" "_$$T^%L1TIME($E(TIME,6,10))_"</td>"
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND,"C")_">"_$$NMB^W4HZMST(HZ)_"</td>"
  ... S NAME=$$NAME^W4HZMST(HZ)
  ... I $$HZM^W4MSD(HZ) S NAME=$$SUGL1^W4L($$NMB^W4HZMST(HZ))
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND)_">"_$$NBSP^%L1FRM(2)_$$H2U^%L1FRM(NAME)_"</td>"
  ... S ADR="&nbsp;"
  ... I $$HZM^W4MSL(HZ) S ADR=$$H2U^%L1FRM($$KTVM^W4HZMST(HZ))
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND)_">"_$$NBSP^%L1FRM(2)_ADR_"</td>"
  ... S TOTIME="&nbsp;"
  ... I $$HZM^W4MSL(HZ) S TOTIME=$$TRH^W4HZMST(HZ)_" "_$$SHAA^W4HZMST(HZ)
  ... W "<td "_$$STYLE1(IND,"C")_" >"_TOTIME_"</td>"
  ... D TDTIMEREADY(IND)
  ...W "</tr>",!
  ...S SHORD=SHORD+1
  ...D ORDSHOW(IND)
 ;
ET ;
  W "</table>",!
  F I=1:1:20 W "<br>",!
  W "</dev>",!
  Q
 ;
 ;
ORDSHOW(PRM)
 N SHB,DT,PRN,TIME,HZ,CD,QN,NM,HRA
 S DT=$P(PRM,"~")
 S PRN=$P(PRM,"~",2)
 S TIME=$P(PRM,"~",3)
 S HZ=$P(PRM,"~",4)
 ;
 N DISP S DISP="none"
 I $G(%ARG("ORD")) S DISP=""
 I $L($G(%ARG("ORD")))&'$G(%ARG("READY")) S DISP=""
 I $$OPENORD&(SHORD'>$$OPENORD)!$$OPENORDALL S DISP=""
 ;
 W "<tr id=""ord"_PRM_""" name=""ord"" "
  W "style=""display:"_DISP_""">"
  W "<td colspan=""8"">"
   W "<table width=""100%"" id=""tblord"_PRM_""" dir="""_$$^%W1DIR_""" cellspacing=""0"" "
    W "style=""font-size:"_$$^W3FSZ($$FSZHZ)_""" ",!
   W ">"
   ;
  S ITREADY=0
  S SHB="" F  S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
  .S REF=$G(^(SHB))
  .
  .I $E(REF)="!" D  Q
  ..W "<tr "
  .. D
  ... I $$DEL(HZ) W "style=""background-color:black;color:red"" " Q
  ... W "style=""background-color:white"" " Q
  ..W ">"
  .. W "<td>&nbsp;</td>"
  .. W "<td>&nbsp;</td>"
  .. W "<td colspan=""3"" style=""font-size:"_$$^W3FSZ(18)_";color:brown"">"
  ..  W "*** "_$$H2U^%L1FRM($E(REF,2,255))_" ***"
  .. W "</td>"
  .. W "<td>&nbsp;</td>"
  ..W "</tr>",!
  .
  .S ST=$G(@REF)
  .S UR=$L(REF,",")-1  
  .N IND S IND=PRM_"~"_SHB
  .S ITREADY=$$ITREADY(IND)
  .
  .I UR=1 S CD=$P(ST,"\") I $$^W4CDSRV(CD) Q
  .
  .W "<tr id=""trord"_IND_""" "
  .
  .I UR=1 D
  .. S CD=$P(ST,"\")
  .. W " style=""font-size:"_$$^W3FSZ($$FSZHZ1)
  .. W ";border-top:1px dotted grey" 
  .. I $$ISFIRE^W4FIRE(CD),$P(ST,"\",5)>0 D
  ... I 'ITREADY W ";color:red"
  .
  .I UR>1 D
  .. W " style=""font-size:"_$$^W3FSZ($$FSZHZ2)
  .
  .D
  ..I $$DEL(HZ) W ";background-color:black;color:red" Q
  ..I ITREADY W ";background-color:lightgrey;color:grey" Q
  .. W ";background-color:white" Q
  .W """ >"
  .
  .S REFN=$G(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB+1))
  .S STN="",URN=0
  .I $E(REFN)="^",REFN["(" D
  ..S STN=$G(@REFN)
  ..S URN=$L(REFN,",")-1  
  .
  .I UR=1 D  ; -- MAIN ITEM
  ..S CD=$P(ST,"\"),NMT0=""
  ..;;N CD1 S CD1=CD I $$NOHZMPAR S CD1="&nbsp;"
  ..N CD1 S CD1=""
  ..S NM=$P(ST,"\",3)
  ..S QN=$P(ST,"\",5)
  ..
  ..I $$ISFIRE^W4FIRE(CD),QN>0 D
  ...S CD1="&nbsp;",QN=""
  ...S NM="!!! ----------- "_NM_" ---------- !!!"
  ..
  ..S HRA=$P(ST,"\",8)
  ..S HRA=$$^W4CLRMVC(HRA)
  ..S HRA=$$CLRHR^W4HZTH(HRA)
  ..
  ..W "<td width=""6%"">&nbsp;</td>"
  ..D TDITREADY(IND)
  ..W "<td width=""15%"">"_$$NBSP^%L1FRM(3)_$$PCQN(IND,QN)_"</td>"
  ..W "<td width=""40%"">"_$$H2U^%L1FRM(NM)_"</td>"
  ..W "<td "_$$STLHRA(ITREADY)_" width=""29%"" >"_$$H2U^%L1FRM(HRA)_"</td>"
  ..D TDITTIMEREADY(IND)
  ..W "</tr>",!
  .
  .N COLORADD S COLORADD="green" 
  .I ITREADY S COLORADD="grey"
  .
  .I UR=2 D  ; --- ADD LEVEL 1
  ..S NMT0=""
  ..I URN=3 Q
  ..S CDT=$$^%L1IND(REF,3)
  ..N CDT1 S CDT1=CDT I $$NOHZMPAR S CDT1="&nbsp;"
  ..S NMT=$P(ST,"\",1)
  ..N NM0 S NM0=$$NM0(REF) S NM0=""
  ..S NMT=NM0_" "_$$POINTER_" <span style=""color:"_COLORADD_";font-size:"_$$^W3FSZ($$FSZPATH)_""">"_$$H2U^%L1FRM(NMT)_"</span>"
  ..D STADD(ST,IND,1)
  .
  .I UR=3 D  ; --- ADD LEVEL 2
  ..S CDT=$P(ST,"\",1)
  ..I CDT D  Q
  ...N CDT1 S CDT1=CDT I $$NOHZMPAR S CDT1="&nbsp;"
  ...S NMT=$P(ST,"\",2),NMT0=NMT
  ...N PRFX S PRFX=$$NM0(REF)
  ...S PRFX=""
  ...I +CDT'=+$$^%L1IND(REF,3) S PRFX=$$NBSP^%L1FRM(3) ; $$NM1(REF)
  ...S NMT=PRFX_" "_$$POINTER_" <span style=""color:"_COLORADD_";font-size:"_$$^W3FSZ($$FSZPATH)_""">"_$$H2U^%L1FRM(NMT)_"</span>"
  ...D STADD(ST,IND,2,0)
  ..
  ..S CDT=$P(ST,"\",4)
  ..N CDT1 S CDT1=CDT I $$NOHZMPAR S CDT1="&nbsp;"
  ..S NMT=$P(ST,"\",5)
  ..N PRFX S PRFX=$$NM0(REF)
  ..;;S PRFX=$$NM1(REF)_"=>"
  ..S PRFX=$$NBSP^%L1FRM(5)_$$POINTER
  ..S NMT=PRFX_" <span style=""color:brown;font-size:"_$$^W3FSZ($$FSZHZ3)_""">"_$$H2U^%L1FRM(NMT)_"</span>"
  ..D STADD(ST,IND,2,1)
  .
  .W "</tr>",!
  W "</table></td></tr>",!
  Q
  ;
NM0(REF) ;
 N REF0,NM0
 S REF0=$$GL^%L1IND(REF,2)
 S NM0=$P($G(@REF0),"\",3)
 S NM0="<span style=""color:grey;font-weight:bold"">"_$$H2U^%L1FRM(NM0)_"</span>"
 Q NM0
 ;
NM1(REF) ;
 N REF1,NM1
 S REF1=$$GL^%L1IND(REF,3)
 S NM1=$P($G(@REF1),"\")
 S NM1="<span style=""color:grey"">"_$$H2U^%L1FRM(NM1)_"</span>"
 Q NM1
 ;
PCQN(INDSH,QN)
 N ST,DTORD,PRNORD,TIMEORD,ORD,SHI
 D PARSEIND1(INDSH)
 ;
 I $$VVMSK(ORD),'$G(ITREADY) D  Q ST
 .S ST="<input type=""text"" id=""qn"_INDSH_"""  size=""5"" readonly=""readonly"" "
 .S ST=ST_" style=""font-size:"_$$^W3FSZ(16)_""" "
 .S ST=ST_" onClick=""ClickQn(this)"" "
 .S ST=ST_"value="""_$J(QN,3,3)_""" />" 
 ;
 I QN[":"!(QN["|")!(QN["+") D
 .S QN=+QN_" "_$$^W4SHOWPZ(QN,20)
 Q QN
 ;
 ;
POINTER(STAM) ;
 Q "<span style=""color:grey;font-weight:bold"">></span>"
 ;
STLCD(STAM) ;
 Q " style=""color:grey"" "
 ;
STLHRA(ITREADY) ;
 I ITREADY Q " style=""color:grey"" "
 Q " style=""color:brown"" "
 ;
STADD(ST,INDSH,PR,COLOR) ;
 N QNT,HRT
 S QNT=$P(ST,"\",3)
 S HRT=$P(ST,"\",$S($G(PR)=2:6,1:4))
 S HRT=$$CLR^W4CLRMN(HRT)
 W "<td colspan=""2"" width=""10%"">&nbsp;</td>"
 W "<td "
  I +$G(COLOR)=0,'$G(ITREADY) W " style=""color:green"" "
  I $G(COLOR)=1,'$G(ITREADY) W " style=""color:brown"" "
 W ">"_$$PCQN(INDSH,QNT)_"</td>"
 W "<td>"_NMT_"</td>"
 W "<td "_$$STLHRA(ITREADY)_">"_$$H2U^%L1FRM(HRT)_"</td>"
 W "<td colspan=""2"">&nbsp;</td>"
 Q
 ;
TDREADY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(N)
 W "<td id=""tdrd"_N_""" "_$$STYLE1(N,"C")
  I $$BONNEW^W4PRM W "width=""15%"" "
 W ">"
 ;
 I $G(%ARG("BIG")) W "&nbsp;</td>" Q
 ;
 W "<input id=""chkready"_N_""" type=""checkbox"" "
  W " style=""display:none;"" "
  I $$READY(N) W "  checked=""checked"" "
  W "  onClick=""ClickReady('"_N_"',this)"" />"
 W "<label id =""lbready"_N_""" for=""chkready"_N_""">"
  N RZ S RZ=35 I $$1024^W4WDSCR S RZ=30
  I '$$READY(N) D
  .I $$BONNEW^W4PRM W "<img src=""w4bonrnd.png"" class=""roundsize"" />" Q
  .W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
  I $$READY(N) D
  .I $$BONNEW^W4PRM W "<img src=""w4bonrndfull.png"" class=""roundsize"" />" Q
  .W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
 W "</label><br>"
 W "</td>"
 Q
 ;
TDTIMEREADY(IND) ;
 W "<td "_$$STLTIME(IND)_" >"
  W $$TIMEREADY(IND)
 W "</td>"
 Q
 ;
TDITTIMEREADY(IND) ;
 W "<td align=""center"" >"
  W $$ITTIMEREADY(IND)
 W "</td>"
 Q
 ;
ITTIMEREADY(IND)
 N TCUR,DRCV,TRCV
 N DTORD,PRNORD,TIMEORD,ORD,SHI
 D PARSEIND1(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="")!(SHI="") Q "NOTIND"
 ;
 N RZN S RZN=0
 S TCUR=0
 I $G(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")) D
 .S TCUR=$G(^("READY"))
 ;
 I 'TCUR,$D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")) D
 .S TCUR=$G(^("READY"))
 ;
 I 'TCUR,$D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) D
 .S TCUR=$G(^(ORD))
 ;
 I 'TCUR S TCUR=$H
 ;
 S RZN=($P(TCUR,",")-$E(TIMEORD,1,5))*(24*3600)
 S RZN=RZN+$P(TCUR,",",2)-$E(TIMEORD,6,10)
 S RZN=$$DOP^%L1FRM(RZN\3600)_":"_$$DOP^%L1FRM((RZN#3600)\60)
 Q RZN
 ;
 ;
READY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(N)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q 0
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) Q 1
 Q 0
 ;
TMRDY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(N)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q 0
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) Q $G(^(ORD))
 Q 0
 ;
ITREADY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD,SHI
 D PARSEIND1(N)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="")!(SHI="") Q 0
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD,SHI)) Q 2
 I '$D(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI)) Q 0
 N REF,UR
 S REF=$G(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI))
 I REF="" W 0
 S UR=$L(REF,",")-1  
 N SHI1 S SHI1=SHI
 I SHI1,$D(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI1,"READY")) Q 1
 Q 0
 ; 
 I UR>1 D
 .F  S SHI1=$O(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI1),-1) Q:SHI1=""  D  Q:UR'>1
 ..S REF=$G(^(SHI1))
 ..S UR=$L(REF,",")-1  
 I UR=1,SHI1,$D(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI1,"READY")) Q 1
 Q 0
 ;
TIMEREADY(IND) ;
 N TCUR,DRCV,TRCV
 S TCUR=$H
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q "NOTIND"
 N RZN S RZN=0
 ;
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) D  Q RZN
 .N TMRD S TMRD=$G(^(ORD))
 .S RZN=($P(TMRD,",")-$E(TIMEORD,1,5))*(24*3600)
 .S RZN=RZN+$P(TMRD,",",2)-$E(TIMEORD,6,10)
 .S RZN=$$DOP^%L1FRM(RZN\3600)_":"_$$DOP^%L1FRM((RZN#3600)\60)
 ;
 S RZN=($P(TCUR,",")-$E(TIMEORD,1,5))*(24*3600)
 S RZN=RZN+$P(TCUR,",",2)-$E(TIMEORD,6,10)
 S RZN=$$DOP^%L1FRM(RZN\3600)_":"_$$DOP^%L1FRM((RZN#3600)\60)
 Q RZN
 ;
 ;;N TIMEREADY S TIMEREADY=$G(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD))
 ;;I TIMEREADY="" Q ""
 ;;Q $$T^%L1TIME(TIMEREADY)
 ;
 ;
TDITREADY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(N)
 I $G(DTORD)=""!($G(PRNORD)="")!($G(TIMEORD)="")!($G(ORD)="") Q
 W "<td id=""tditrd"_N_""" align=""center"" style=""width:5%"" >"
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD))!$$VVMSK(ORD) W "&nbsp;</td>" Q
 I $G(%ARG("BIG")) W "&nbsp;</td>" Q
 ;
 W "<input id=""chkitready"_N_""" type=""checkbox"" "
  W " style=""display:none;"" "
  I $$ITREADY(N) W "  checked=""checked"" "
  W "  onClick=""ClickItReady('"_N_"',this)"" />"
  ;
 W "<label id =""lbitready"_N_""" for=""chkitready"_N_""">"
  N RZ S RZ=35
  I $$BONWND^W4PRM S RZ=25
  I '$$ITREADY(N) W "<img src=""w4bonrnd.png"" height="""_RZ_""" width="""_RZ_"px"">"
  I $$ITREADY(N) W "<img src=""w4bonrndfull.png"" height="""_RZ_""" width="""_RZ_"px"" >"
 W "</label><br>"
 W "</td>"
 Q
 ;
 ;
PARSEIND(IND) ;
 D PRS^%L1FRM(IND,"DTORD~PRNORD~TIMEORD~ORD","~")
 Q
 ;
PARSEIND1(IND) ;
 D PRS^%L1FRM(IND,"DTORD~PRNORD~TIMEORD~ORD~SHI","~")
 Q
 ;
CENTER(STAM) ;
 Q "style=""text-align:center"" "
 ;
MDPNM(PRN) ;
 N MDPNM,OK S MDPNM="",OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S A=$G(^(N)) D  Q:OK
 .I +$P(A,"\",3)=+PRN S MDPNM=$P(A,"\",4),OK=1
 Q MDPNM
 ;
STYLE(HZ,C) ;
 N CN S CN=""
 I $G(C)="C" S CN="text-align:center;"
 Q " style="""_CN_$$BGCORD(HZ)_";cursor:pointer"" "
 ;
BGCORD(HZ) ;
 I $$HZM^W4MSL(HZ),$$TAKEAWAY^W4HZMST(HZ) Q "background-color:orange"
 I $$HZM^W4MSL(HZ) Q "background-color:lightblue"
 I $$HZM^W4MSD(HZ) Q "background-color:lightgreen"
 Q ""
 ;
STYLE1(IND,C) ;
 N CN S CN=""
 I $G(C)="C" S CN="text-align:center;"
 Q " style="""_CN_$$BGCORD1(IND)_";cursor:pointer"" "
 ;
BGCORD1(IND) ;
 I $$BONWND^W4PRM Q "darkred"
 ;
 N HZ S HZ=$P(IND,"~",4)
 I $$DEL(HZ) Q "background-color:black;color:red"
 I $$READY(IND) Q "background-color:yellow"
 Q "background-color:lightyellow"
 ;
 ;
ONCLICK(IND) ;
 Q " onClick=""OnClick('"_IND_"',event)"" "
 ;
STLTIME(IND) ;
 N DTORD,PRNORD,TIMEORD,ORD,BGC,ENDTIME
 D PARSEIND(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q ""
 S ENDTIME=""
 I $$HZM^W4MSL(ORD) D
 .S ENDTIME=$$^%L1DC($$TRH^W4HZMST,3)_$TR($J($$SEC($$SHAA^W4HZMST(ORD)),5)," ",0)
 .S ENDTIME=$$DTIME^W4MMTIME($$PLUS^%L1TIME(ENDTIME,-10*60))
 I $$HZM^W4MSD(ORD) D
 .S ENDTIME=$$PLUS^%L1TIME(TIMEORD,30*60)
 .S ENDTIME=$$DTIME^W4MMTIME(ENDTIME)
 N TIMEREADY S TIMEREADY=$G(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD))
 I TIMEREADY["," S TIMEREADY=$$DTIME^W4MMTIME(TIMEREADY)
 I TIMEREADY="" S TIMEREADY=$$DTIME^W4MMTIME($H)
 S BGC="background-color:"_$$BGCT^W4MMDLV(ENDTIME,TIMEREADY)
 I $P(BGC,":",2)="" S BGC=$$BGCORD1(IND)
 Q "style=""text-align:center;"_BGC_""" "
 ;
SEC(SHAA) ;
 Q SHAA*3600+($P(SHAA,":",2)*60)
 ;
 ;
CLICKREADY(PRM) ;
 N DEV S DEV=$$^W4MYDVN
 ;;S ^AA("W4BONVW-CLICKREADY","PRM")=PRM_"^"_DEV_"^"_$G(%REM)
 ;
 N IND S IND=$P(PRM,";")
 N RD S RD=$P($P(PRM,";",2),"^")
 N CONFIRM S CONFIRM=$P(PRM,";",3)
 N MQN S MQN=$P(PRM,";",4)
 N DTORD,PRNORD,TIMEORD,ORD
 ;
 D PARSEIND(IND)
 I 'DTORD S DTORD=$$^W4DZ
 I ORD="" Q 0
 ;
 ;;I 'RD,'CONFIRM Q "CONFIRMRD"  ; --- 06.10.22
 I RD,'CONFIRM Q "CONFIRMNRD"
 ;
 I TIMEORD=""!('PRNORD),$$BONWND^W4PRM D  G CE
 .D DEVLIST(DEV)
 .N TMO 
 .I 'RD D  Q
 ..S PRNORD="" F  S PRNORD=$O(@$$^W4BON(0)@(DTORD,PRNORD)) Q:PRNORD=""  I $D(MPRN(PRNORD)) D
 ...S TMO="" F  S TMO=$O(@$$^W4BON(0)@(DTORD,PRNORD,TMO)) Q:TMO=""  D
 ....I '$D(@$$^W4BON(0)@(DTORD,PRNORD,TMO,ORD)) Q
 ....D TOREADY(DTORD,PRNORD,TMO,ORD)
 ..
 ..I $$MDBYAD^W4PRM J MDB(JB,ORD)
 .
 .S PRNORD="" F  S PRNORD=$O(@$$^W4BON(1)@(DTORD,PRNORD)) Q:PRNORD=""  I $D(MPRN(PRNORD)) D
 ..S TMO="" F  S TMO=$O(@$$^W4BON(1)@(DTORD,PRNORD,TMO)) Q:TMO=""  D
 ...I '$D(@$$^W4BON(1)@(DTORD,PRNORD,TMO,ORD)) Q
 ...D TONREADY(DTORD,PRNORD,TMO,ORD)
 ;
 ;;I $D(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)),'CONFIRM Q "CONFIRMRD"  ; --- 06.10.22
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)),'CONFIRM Q "CONFIRMNRD"
 ;
 ;;I 'RD S ^AA("W4BONVW",ORD,"PRM")=PRM
 ;
 I 'RD,$$VVMSK(ORD) D
 .N I F I=1:1:$L(MQN,"|") D
 ..N A S A=$P(MQN,"|",I)
 ..N SH,QN S SH=$P(A,"^"),QN=$P(A,"^",2)
 ..I SH["~" S SH=$P(SH,"~",5)
 ..Q:'SH
 ..N REF S REF=$G(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD,SH)) Q:REF=""
 ..I $L(REF,",")=2 D  Q
 ...N MH S MH=$P($G(@REF),"\",4)
 ...S $P(@REF,"\",5)=QN
 ...S $P(@REF,"\",7)=$J(QN*MH,2,2)
 ..I $L(REF,",")>2 D  Q
 ...S $P(@REF,"\",3)=QN
 ...I $L(REF,",")>3 D  Q
 ....N REF1 S REF1=$P(REF,",",1,$L(REF,",")-1)_")"
 ....S SQN=0 
 ....N N1 S N1="" F  S N1=$O(@REF1@(N1)) Q:N1=""  I N1 D
 .....N A S A=$G(^(N1))
 .....I $P(A,"\") S SQN=SQN+$P(A,"\",3)
 ....S $P(@REF1,"\",3)=SQN
 .
 .D ^W4CALC(ORD)
 ;
 ;
 I $D(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)) D  G CE
 .D TOREADY(DTORD,PRNORD,TIMEORD,ORD)
 .
 .I $$MDBYAD^W4PRM J MDB(JB,ORD)
 . 
 .;;I $$PAPJ^W4PRM,$$TAKEAWAY^W4HZMST(ORD) D
 ..N PRM S PRM=$$NAME^W4HZMST(ORD)_"<>"_ORD_"<><E>&#x1F355;<E>"
 ..N HD S HD="" ;; HD="PapaJohns"
 ..J SMSTIME^W4SNDSMS(JB,ORD,PRM,HD,1,6)
 ;
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) D TONREADY(DTORD,PRNORD,TIMEORD,ORD) G CE
 ;
CE Q 1
 ;
 ;
MDB(JB,ORD) ;
 D ^W4MDBPC(ORD) ; -- 25/08/22
 N HZM S HZM=ORD
 I $$PAPJ^W4PRM D
 .N W4BONVW S W4BONVW=""
 .D HZMMSL^W4HZMIT
 .I $$WOLTNMB^W4HZMST(HZM)!$$WOLT^W4HZMST(HZM) D SGPSL^W4DLVORD(HZM,9998) ; -- -04/11/24
 .I $$TAKEAWAY^W4HZMST(HZM) S W4BONVW="" D SGPSL^W4DLVORD(HZM,9998) Q  ; 
 Q
 ;
 ;
TOREADY(DTORD,PRNORD,TIMEORD,ORD)
 K @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)
 M @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)=@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)
 S @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)=$H
 K @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)
 S @$$^W4ORD@(ORD,"READY")=$H
 Q
 ;
TONREADY(DTORD,PRNORD,TIMEORD,ORD)
 K @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)
 M @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)=@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)
 S @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)=""
 K @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)
 Q
 ;
CLICKITREADY(PRM) ;
 N IND S IND=$P(PRM,";")
 N RD S RD=$P(PRM,";",2)
 N MQN S MQN=$P(PRM,";",3)
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND1(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="")!(SHI="") Q 0
 ;
 I '$D(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI)) Q 0
 ;
 I RD="true" D
 .S @$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")=$H
 
 ;
 I RD'="true" D
 .K @$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")
 Q 1
 ;
CHECKED(PRM) ;
 I $$SHOWREADY,PRM="ready" Q 1
 I '$$SHOWREADY!$$SHOWALL,PRM="notready" Q 1
 I $$OPENALL,PRM="openall" Q 1
 I $$SHOWFIRE,PRM="fire" Q 1
 I $$SHOWNORDYIT,PRM="nordyit" Q 1
 Q 0
 ;
KINDSHOW(PRM) ;
 W "<input id=""chk"_PRM_""" type=""checkbox"" "
  W " style=""display:none;"" "
  I $$CHECKED(PRM) W "  checked=""checked"" "
  W "  onClick=""ClickKindShow(this)"" />"
 W "<label id =""lb"_PRM_""" for=""chk"_PRM_""">"
  N RZ S RZ=35
  D
  .I PRM="ready",$$SHOWREADY D  Q
  ..W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"">"
  .I PRM="notready",'$$SHOWREADY!$$SHOWALL D  Q
  ..W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"">"
  .I $$CHECKED(PRM) D  Q
  ..W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"">"
  .W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
 Q
 ;
SHOWREADY(STAM) ;
 Q $G(%ARG("READY"))
 ;
SHOWALL(STAM) ;
 Q ($G(%ARG("READY"))=2)
 ;
OPENALL(STAM) ;
 Q $G(%ARG("OPENALL"))
 ;
SHOWFIRE(STAM) ;
 Q $G(%ARG("FIRE"))
 ;
SHOWNORDYIT(STAM) ;
 Q $G(%ARG("NORDYIT"))
 ;
DEVLIST(MY,CURPRN) ;
 N N,A,MDP K MPRN
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S A=$G(^(N))
 .S MDP=$P(A,"\",3)
 .
 .I $$SUGDEV^W4HZMPC(MDP)'=0 Q
 .I $G(CURPRN),(MDP_"-"_N)'=CURPRN Q
 .I $P(A,"\",4)["zewacn" Q
 .D  ;I $G(@$$^W4DEV@(+MDP))=$G(@$$^W4DEV@(MY)) D
 ..S MPRN(MDP_"-"_N)=$P(A,"\",4)
 Q
 ;
 ;
 ;
PRNLST(CURPRN,READY) ;
 I $$BONNEW^W4PRM Q
 ;
 N (JB,%ARG,%REM,CURPRN,READY,MPRN)
 I '$G(CURPRN) S CURPRN=$$CURPRN
 I '$D(MPRN) D DEVLIST($$^W4MYDVN)
 S READY=+$G(READY)
 Q:$$SMALLHD
 ;
 W "<table id=""tbprnlst"" border=""0"" align=""center"" width=""100%"" "
   S SZ=$$FSZPRN
   W "style=""font-size:"_$$^W3FSZ(SZ) ;;_";font-weight:bold"
   I $$CLRBONFG^W4PRM'="" W ";color:"_$$CLRBONFG^W4PRM
   W " "" "  
 W ">"  
  W "<tr "
    I $$1024^W4WDSCR W "style=""font-weight:bold"" "
  W ">"
    N WD S WD=0
    ;
    I +$$BONWND^W4PRM=0 D TDOPENALL ; ---- OLD VERSION
    ;
    S WD1=$S($$1024^W4WDSCR:"91",1:126)_"px"
    W "<td width="""_WD1_""" >"
     W $$^%W1DICT("HIDEREADYITEMS") S WD=WD+WD1
    W "</td>"
    ;
    S WD1=$S($$1024^W4WDSCR:4,1:4)_"%"
    W "<td width="""_WD1_""" align=""center"" >"
     D KINDSHOW("nordyit") 
    W "</td>"
    ;
    W "<td "_$$INV^%W1ALIGN
     S WD1=$S($$1024^W4WDSCR:4,1:4)_"%"
     W " width="""_WD1_""" style=""font-weight:bold;color:red"" " S WD=WD+WD1
    W ">"
     W $$^%W1DICT("FIRE")
    W "</td>"
    ;
    S WD1=$S($$1024^W4WDSCR:2,1:3)_"%"
    W "<td width="""_WD1_""" align=""center"">" S WD=WD+WD1
     D KINDSHOW("fire")
    W "</td>"
    ;
    S WD1=$S($$1024^W4WDSCR:1,1:2)_"%"
    W "<td WIDTH="""_WD1_""">&nbsp;</td>" S WD=WD+WD1
   ;
   
   S WD1=$S($$1024^W4WDSCR:10,1:10)_"%"
   W "<td width="""_WD1_""">"
    N SZF S SZF=$S($$1024^W4WDSCR:16,1:18)
    W "<select id=""waiter"" style=""font-size:"_$$^W3FSZ(SZF)_";font-weight:100"" onChange=""Show4Waiter()"" >",!
     W "<option>"_$$^%W1DICT("CHOICEWTR")_"</option>",!
     D
    .N N S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D
    ..I $G(@$$^W4GL("FILE")@(N,"CIO"))'="I" Q
    ..I '$$GET1^W4LEVPR(N,"PAIL") Q
    ..I '$$GET1^W4LEVPR(N,"MTIP") Q
    ..W "<option value="""_N_""">"_$$H2U^%L1FRM($$SHORT^W4NAME(N))_"</option>",!
    W "</select>",!
   W "</td>",!
   ;
   S WD1=$S($$1024^W4WDSCR:2,1:2)_"%"
   W "<td width="""_WD1_""">&nbsp;</nbsp;>",!
   ;
   S WD1=$S($$1024^W4WDSCR:12,1:10)_"%"
   W "<td width="""_WD_""">"
    W "<select id=""group"" style=""font-size:"_$$^W3FSZ(SZF)_";font-weight:100"" onChange=""Show4Group()"" >",!
     W "<option>"_$$^%W1DICT("CHOICEGRIT")_"</option>",!
     D ^W4ABCKVZ    
     N TMPABC S TMPABC=$$TMPABC^W4ABCKVZ
     N N,II S N="",II=0 F  S N=$O(@TMPABC@(N)) Q:N=""  D
     .S NN=$G(^(N)) Q:NN=""
     .N SUG1 S SUG1=$G(@$$^W4GL("PARSUG")@(NN))
     .I '$$^W4VWGR(NN) Q
     .W "<option value="""_NN_""">"_$$H2U^%L1FRM(SUG1)_"</option>",!
    W "</select>",!
   W "</td>",!
   ;
   S WD1=$S($$1024^W4WDSCR:$S($D(MPRN)>9:1,1:10),1:2)_"%"
   W "<td width="""_WD1_""">&nbsp;</nbsp;>",!
   ;
   W "<td>"
    D ^W4BTN("ITCNC","ItCnc()","BLUE")
   W "</td>",!
   ;
   S WD1=$S($$1024^W4WDSCR:7,1:2)_"%"
   W "<td width="""_WD1_""">&nbsp;</nbsp;>",!
   ;
   S WD=WD+50
   ;
   S N="" F  S N=$O(MPRN(N)) Q:N=""  D
   .W "<td onClick=""ClickPrn('"_N_"')"" width=""7%"" " S WD=WD+7
   .W " style=""text-align:center;border:2px solid;"_$$RAD^W3CSM("8px")_";cursor:pointer"
   . D
   . .I $G(CURPRN),N=CURPRN W ";background-color:yellow" Q
   . .I $D(@$$^W4BON(READY)@($$^W4DZ,N)) W ";background-color:lightyellow" Q
   . .W ";background-color:lightgrey"
   . W ";color:black" 
   .W """>"
   . W $$H2U^%L1FRM(MPRN(N))
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
INIT ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 ;;S ^AA("REM")=$G(%REM)
 D INIT^W4MYDVN
 S DT=$G(%ARG("DT"))
 I 'DT S DT=$$^W4DZ
 ;
 S CURPRN=$$CURPRN
 ;
 ;
 I $G(%ARG("READY"))="",$$GETP^%W1PRM("READY") D
 .S %ARG("READY")=$$GETP^%W1PRM("READY")
 ;
 S READY=+$G(%ARG("READY"))
 D PUT^%W1PRM("READY",READY)
 ;
 I $G(%ARG("ORD"))="" D
 .K @$$^W4MAIN("TMPBON1")
 ;
 I $$SHOWALL D
 .K @$$^W4BON(2)
 .M @$$^W4BON(2)@(DT)=@$$^W4BON(0)@(DT)
 .M @$$^W4BON(2)@(DT)=@$$^W4BON(1)@(DT)
 ;
 S DT="" F  S DT=$O(@$$^W4BON(2)@(DT)) Q:DT=""  D
 .S PRN="" F  S PRN=$O(@$$^W4BON(2)@(DT,PRN)) Q:PRN=""  D
 ..S TIM="" F  S TIM=$O(@$$^W4BON(2)@(DT,PRN,TIM)) Q:TIM=""  D
 ...S ORD="" F  S ORD=$O(@$$^W4BON(2)@(DT,PRN,TIM,ORD)) Q:ORD=""  D
 ....I $D(@$$^W4BON(1)@(DT,PRN,TIM,ORD)) S @$$^W4BON(2)@(DT,PRN,TIM,ORD)=1 Q
 ....S @$$^W4BON(2)@(DT,PRN,TIM,ORD)=0
 ;
 I $$BONSCR^W4PRM D
 .I $G(%ARG("BIGSHOW"))="" D
 ..I $$WNDROWS^W4PRM=2 S %ARG("BIGSHOW")=0 Q
 ..S %ARG("BIGSHOW")=1
 Q
 ;
 ;
PRNNM ;
 W "<p style=""color:brown;text-align:center;font-size:"_$$^W3FSZ($$FSZPRNNM)_";"_$$FONTFM^W3CSS_""">"
  S MDPNM=$$MDPNM(CURPRN)
  W $$^%W1DICT("PRINTER")_" : "_$$H2U^%L1FRM(MDPNM)
 W "</p>",!
 Q
 ;
KOT ;
 I $$BONNEW^W4PRM D ^W4BONHD Q
 ;
 N FSZ S FSZ=$$FSZKOT
 W "<table border=""0"" align=""center"" style=""font-size:"_$$^W3FSZ(FSZ)_";width:100%"">",!
  W "<tr "
    I $$CLRBONFG^W4PRM'="" W "style=""color:"_$$CLRBONFG^W4PRM_""" "
  W ">"  
   I $$BONWND^W4PRM D
   .W "<td>"
   .  S (HGI,WDI)=35
   .  I +$G(%ARG("BIGSHOW"))=0 D  Q
   ..  W "<img src=""w4bigscr.png"" width="""_WDI_"px"" height="""_HGI_"px"" onClick=""BigShow('1')"" />"
   .  W "<img src=""w4smlscr.png"" onClick=""BigShow('0')"" />"
   .W "</td>"
   ;
   W "<td "
    W $$INV^%W1ALIGN 
    I $$1024^W4WDSCR W "style=""font-weight:bold"" "
    I '$$1024^W4WDSCR W " width=""5%"" "
   W ">"
    W $$^%W1DICT("INWAITING")
   W "</td>"
   ;
   W "<td "
    I '$$1024^W4WDSCR W " width=""4%"" align=""center"" "
   W ">"
    D KINDSHOW("notready")
   W "</td>"
   ;
   W "<td "
    I $$1024^W4WDSCR W "style=""font-weight:bold"" "
    I '$$1024^W4WDSCR W " width=""4%"" "
   W ">" 
    W $$^%W1DICT("SHOWORDERSREADY")
   W "</td>"
   W "<td "
    I '$$1024^W4WDSCR W " width=""3%"" align=""center"" "
   W ">"
    D KINDSHOW("ready")
   W "</td>"
   N SP S SP=2 I $$1024^W4WDSCR S SP=2
   W "<td width="""_SP_"%"">&nbsp;</td>"
   W "<td >"
    N SZI S SZI=6 I $$1024^W4WDSCR S SZI=4
    W "<input id=""srcord"" type=""text"" size="""_SZI_""" "
     D
     .N ORD S ORD=$G(%ARG("ORD")) I $E(ORD)="T" S ORD=$E(ORD,2,20)
     .W " value="""_$G(%ARG("ORD"))_""" "
     .W " style=""font-size:"_$$^W3FSZ($$FSZHZNMB)_""" "
    W " />"
   W "</td>"
   W "<td "_$$^%W1ALIGN_">"
    S %ARG("NODOT")=1
    D ^W4NUMKB("srcord",11)
   W "</td>"
   D
   .N SZ,PD S SZ=14,PD=5 I $$1024^W4WDSCR S SZ=12,PD=1
   .W "<td>"
   . D ^W4BTN("ORDER","Show('0')","GREEN","",SZ,PD)
   .W "</td>"
   .W "<td>"
   . D ^W4BTN("TABLE","Show('1')","GREEN","",SZ,PD)
   .W "</td>"
   .W "<td>"
   . W "<table width=""100%"" align=""center"" style=""background-color:black"" >",!
   .  W "<tr>" 
   .  I $G(%ARG("SHORT")) D 
   .  . W "<td>"
   .  .  W "<img src=""w4expand.png"" width=""40px"" height=""40px"" onClick=""HdShow('0')"" />"
   .  . W "</td>"
   .  I '$G(%ARG("SHORT")) D 
   .  . W "<td>"
   .  .  W "<img src=""w4collapse.png"" width=""40px"" height=""40px"" onClick=""HdShow('1')"" />"
   .  . W "</td>"
   .  W "</tr>",! 
   . W "</table>",!
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
CRTMP2(READY,DT,PRN) ;
 S TMPBON2=$$^W4MAIN("TMPBON2")
 L +@TMPBON2:1
 K @TMPBON2
 N TIME,HZ,IND
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .S HZ="" F  S HZ=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ)) Q:HZ=""  D
 ..S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ..S @TMPBON2@(IND)=""
 L -@TMPBON2:1
 Q
 ;
 ;
NEWORDS(CURPRN) ;
 N (JB,%ARG,%REM,CURPRN)
 ;
 D INIT
 D DEVLIST($$^W4MYDVN)
 I '$G(CURPRN),'$D(MPRN) Q ""
 ;
 S READY=$$GETP^%W1PRM("READY")
 I READY="" S READY=0
 ;
 I READY Q ""  ; -- 8.12.22
 ;
 S DT=$$^W4DZ
 ;
 S TMPBON3=$$^W4MAIN("TMPBON3")
 S TMPBON2=$$^W4MAIN("TMPBON2")
 ;
 I $G(CURPRN) D CRTMP2(READY,DT,CURPRN)
 ;
 I '$G(CURPRN) D
 .S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D CRTMP2(READY,DT,PRN)
 ;
 S OK=0
 S IND="" F  S IND=$O(@TMPBON2@(IND)) Q:IND=""  I '$D(@TMPBON3@(IND)) S OK=1,MNEW(IND)=""
 ;
 I $$BONNEW^W4PRM D
 .D ORDS^W4BONNEW(DT,$G(CURPRN))
 .S LASTSCR=$$GETP^%W1PRM("STARTORD")+$$WNDCOLS^W4BONNEW
 .S K="" F  S K=$O(ORDSI(K)) Q:K=""  D
 ..I $G(ORDSI(K))'="",$D(MNEW(ORDSI(K))),K'<LASTSCR S OK=2 D PUT^%W1PRM("NEWORDBLINK",1)
 ;
 L +@TMPBON3:1
 K @TMPBON3
 M @TMPBON3=@TMPBON2
 L -@TMPBON3
 ;
 Q OK 
 ;
 ;
CURPRN(STAM) ;
 N CURPRN,FSTIND,DEV
 S DEV=$$^W4MYDVN
 S CURPRN=$G(%ARG("CURPRN"))
 I CURPRN Q CURPRN
 ; 
 S CURPRN="" D PUT^%W1PRM("CURPRN",CURPRN) Q CURPRN  ; *** 10/06/24
 ;
 S CURPRN=$$GETP^%W1PRM("CURPRN")
 I CURPRN Q CURPRN
 N PRN,NPRN
 ;
 D DEVLIST(DEV)
 ;;S FSTIND=$O(MPRN(""))
 ;;I FSTIND S CURPRN=FSTIND D PUT^%W1PRM("CURPRN",CURPRN)
 Q CURPRN
 ;
 ;
MSGORD(IND) ;
 N ST
 S ST="<span style="""_$$MSGSTYLE("RED")_""">"
 S ST=ST_$$^%W1DICT("REFRESHNEWORDERS")
 S ST=ST_"</span>"
 Q ST 
 ;
MSGSTYLE(COLOR) ;
 N SZ S SZ=$$FSZMSG
 Q "color:"_COLOR_";font-size:"_$$^W3FSZ(SZ)
 ;
NOHZMPAR(STAM) ;
 Q $G(@$$^W4PRM@("NOHZMPAR"))
 ;
FIRE(IND) ;
 N (JB,%ARG,%REM,IND)
 S OK=0
 D PARSEIND(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q 0
 I '$D(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)) Q 0
 ;
 N N S N="" F  S N=$O(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD,N)) Q:N=""  I N D
 .S REF=$G(^(N)) Q:$E(REF)="!"
 .S ST=$G(@REF)
 .S UR=$L(REF,",")-1  
 .I UR=1 D
 ..S CD=$P(ST,"\")
 ..I $$ISFIRE^W4FIRE(CD) S OK=OK+$P(ST,"\",5) Q
 Q (OK>0)
 ;
 ;
FSZHD(STAM) 
 N FSZ
 S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHD"),16)
 I $$1024^W4WDSCR S FSZ=FSZ-2
 Q FSZ
 ;
FSZHDORD(STAM) ; 
 N FSZ
 S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHDORD"),18)
 Q FSZ
 ;
FSZKOT(STAM) ;
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZKOT"),16)
 I $$1024^W4WDSCR S FSZ=FSZ-4
 Q FSZ
 ;
FSZHZ(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ"),16)
 Q FSZ
 ;
FSZHZ1(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ1"),18)
 Q FSZ
 ;
FSZHZ2(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ2"),16)
 Q FSZ
 ;
FSZHZ3(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ3"),14)
 Q FSZ
 ;
FSZPATH(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZPATH"),16)
 Q FSZ
 ;
FSZPRN(STAM) ;
 N SZ
 S SZ=$G(@$$^W4PRM@("BONSCR","FSZPRN"),14)
 I $$1024^W4WDSCR S SZ=SZ-2
 Q SZ
 ;
FSZPRNNM(STAM) ;
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZPRNNM"),18)
 Q FSZ
 ;
FSZHZNMB(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZNMB"),16)
 I $$1024^W4WDSCR S FSZ=FSZ-2
 Q FSZ
 ;
FSZMSG(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZMSG"),16)
 Q FSZ
 ;
OPENORD(STAM) ; 
 Q $G(@$$^W4PRM@("BONSCR","OPEN"))
 ; 
OPENORDALL(STAM) ; 
 Q ($$OPENORD="ALL")!$$OPENALL
 ; 
SMALLHD(STAM) ; 
 I $$BONNEW^W4PRM Q 1
 I $G(%ARG("SHORT"))?1N Q %ARG("SHORT")
 Q $G(@$$^W4PRM@("BONSCR","SMALLHD"))
 ; 
DEL(HZ) Q $$DEL^W4DEL(HZ) 
 ;
BKG(HZ) I $$DEL(HZ) Q "black" 
 Q "white" 
 ;
VVMSK(HZ) ; 
 I $G(HZ)<1 Q 0
 I '$$HZM^W4MSL(HZ) Q 0
 I '$$VVMSK^W4PRM Q 0 
 Q 1 
 ;
GETCDQN(PRM) ; 
 N HZ,SHI
 N DTORD,PRNORD,TIMEORD,ORD,IND
 S IND=$E(PRM,3,100)
 D PARSEIND1(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="")!(SHI="") Q ";"
 N REF S REF=$G(@$$^W4GL("W4BON")@(DTORD,PRNORD,TIMEORD,ORD,SHI))
 N ST S ST=$G(@REF)
 Q $P(ST,"\")_";"_$P(ST,"\",5)
 ;
GETIND(PRM) ; 
 N DT,ORD,PRN S DT=$$^W4DZ
 S ORD=$P(PRM,";") 
 S PRN=$P(PRM,";",2) 
 Q DT_"~"_PRN_"~~"_ORD 
 ;
STATRD(STAM) ; 
 I $G(%ARG("READY"))'="" Q %ARG("READY") 
 Q +$$GETP^%W1PRM("READY") 
 ;
 ;
TDOPENALL ; 
  S WD1=$S($$1024^W4WDSCR:"6",1:8)_"%"
  W "<td width="""_WD1_""" " S WD=WD+WD1
   I '$$1024^W4WDSCR W $$INV^%W1ALIGN
  W ">"
   W $$^%W1DICT("OPENALL")
   W "</td>"
   S WD1="4%" 
   W "<td width="""_WD1_""" align=""center"" >" S WD=WD+WD1
    D KINDSHOW("openall")
   W "</td>"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONVW0
W4BONVW ; [ 31.07.20 11:19 ] [ 29.07.20 16:21 ] [ 28.07.20 21:28 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D INIT
 D PUT^%W1PRM("CURPRN",CURPRN)
 W "<br>",!
 ;
 W "<table width=""100%"" style=""font-size:"_$$^W3FSZ($$FSZHD)_""" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""0"">",!
  W "<tr>"
   W "<th width=""7%"">"_$$^%W1DICT("ORDER")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("PRINTTIME")_"</th>"
   W "<th width=""11%"">"_$$^%W1DICT("TABLEORCUST")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("DESCRIPTION")_"</th>"
   W "<th width=""22%"">"_$$^%W1DICT("ADDRESS")_"</th>"
   W "<th width=""14%"">"_$$^%W1DICT("DESTINTIME")_"</th>"
   W "<th width=""5%"">"_$$^%W1DICT("READY")_"</th>"
   W "<th width=""10%"">"_$$^%W1DICT("TIMEAFTERRCV")_"</th>"
  W "</tr>",!
  ;
  I 'CURPRN G ET
  ;
  S SHORD=0
  S PRN=CURPRN D
  .S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
  ..S HZ="" F  S HZ=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ)) Q:HZ=""  D
  ...I $G(%ARG("ORD")),HZ'=%ARG("ORD") Q
  ...I $E($G(%ARG("ORD")))="T",$$NMB^W4HZMST(HZ)'=$E(%ARG("ORD"),2,20) Q
  ...S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
  ...I $G(%ARG("FIRE")),'$$FIRE(IND) Q
  ...I $G(%ARG("ORD"))="",+READY=0!(+READY=2) S @$$^W4MAIN("TMPBON1")@(IND)=""
  ...W "<tr id=""tr"_IND_""" ",!
  ... W "style=""" 
  ... I $$FIRE(IND) W "color:red;"
  ... W "font:size:"_$$^W3FSZ($$FSZHDORD)
  ...W """>"
  ... W "<td id=""nomord"_IND_""" onClick=""OnClickOrd('"_HZ_"')"" "_$$STYLE(HZ,"C")_">"_HZ_"</td>"
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND,"C")_">"_$ZD($E(TIME,1,5),"DD.MM.YY")_" "_$$T^%L1TIME($E(TIME,6,10))_"</td>"
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND,"C")_">"_$$NMB^W4HZMST(HZ)_"</td>"
  ... S NAME=$$NAME^W4HZMST(HZ)
  ... I $$HZM^W4MSD(HZ) S NAME=$$SUGL1^W4L($$NMB^W4HZMST(HZ))
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND)_">"_$$NBSP^%L1FRM(2)_$$H2U^%L1FRM(NAME)_"</td>"
  ... S ADR="&nbsp;"
  ... I $$HZM^W4MSL(HZ) S ADR=$$H2U^%L1FRM($$KTVM^W4HZMST(HZ))
  ... W "<td "_$$ONCLICK(IND)_" "_$$STYLE1(IND)_">"_$$NBSP^%L1FRM(2)_ADR_"</td>"
  ... S TOTIME="&nbsp;"
  ... I $$HZM^W4MSL(HZ) S TOTIME=$$TRH^W4HZMST(HZ)_" "_$$SHAA^W4HZMST(HZ)
  ... W "<td "_$$STYLE1(IND,"C")_" >"_TOTIME_"</td>"
  ... D TDREADY(IND)
  ... D TDTIMEREADY(IND)
  ...W "</tr>",!
  ...S SHORD=SHORD+1
  ...D ORDSHOW(IND)
 ;
ET ;
  W "</table>",!
  F I=1:1:20 W "<br>",!
  W "</dev>",!
  Q
 ;
 ;
ORDSHOW(PRM)
 N SHB,DT,PRN,TIME,HZ,CD,QN,NM,HRA
 S DT=$P(PRM,"~")
 S PRN=$P(PRM,"~",2)
 S TIME=$P(PRM,"~",3)
 S HZ=$P(PRM,"~",4)
 ;
 N DISP S DISP="none"
 I $G(%ARG("ORD")) S DISP=""
 I $L($G(%ARG("ORD")))&'$G(%ARG("READY")) S DISP=""
 I $$OPENORD&(SHORD'>$$OPENORD)!$$OPENORDALL S DISP=""
 ;
 W "<tr id=""ord"_PRM_""" name=""ord"" style=""display:"_DISP_";background-color:white"">"
  W "<td colspan=""8"">"
   W "<table width=""100%"" dir="""_$$^%W1DIR_""" cellspacing=""0"" "
    W "style=""font-size:"_$$^W3FSZ($$FSZHZ)_""" ",!
   W ">"
   ;
  S ITREADY=0
  S SHB="" F  S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
  .S REF=$G(^(SHB))
  .S ST=$G(@REF)
  .S UR=$L(REF,",")-1  
  .N IND S IND=PRM_"~"_SHB
  .S ITREADY=$$ITREADY(IND)
  .W "<tr "
  .I UR=1 D
  .. S CD=$P(ST,"\")
  .. W " style=""font-size:"_$$^W3FSZ($$FSZHZ1)
  ..I $$ISFIRE^W4FIRE(CD),$P(ST,"\",5)>0 D
  ... I 'ITREADY W ";color:red"
  .
  .I UR>1 D
  .. W " style=""font-size:"_$$^W3FSZ($$FSZHZ2)
  .
  .I ITREADY W ";background-color:lightgrey;color:grey"
  .W """ >"
  .
  .S REFN=$G(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB+1))
  .S STN="",URN=0
  .I $E(REFN)="^",REFN["(" D
  ..S STN=$G(@REFN)
  ..S URN=$L(REFN,",")-1  
  .
  .I UR=1 D  ; -- MAIN ITEM
  ..S CD=$P(ST,"\"),NMT0=""
  ..N CD1 S CD1=CD I $$NOHZMPAR S CD1="&nbsp;"
  ..S NM=$P(ST,"\",3)
  ..S QN=$P(ST,"\",5)
  ..
  ..I $$ISFIRE^W4FIRE(CD),QN>0 D
  ...S CD1="&nbsp;",QN=""
  ...S NM="!!! ----------- "_NM_" ---------- !!!"
  ..
  ..S HRA=$P(ST,"\",8)
  ..S HRA=$$RPL^%L1FRM(HRA,"dry itl dgpd","")
  ..S HRA=$$CLRHR^W4HZTH(HRA)
  ..
  ..W "<td width=""10%"" "_$$STLCD_">"_CD1_"</td>"
  ..W "<td width=""40%"">"_$$H2U^%L1FRM(NM)_"</td>"
  ..W "<td width=""10%"">"_$$PCQN(QN)_"</td>"
  ..W "<td "_$$STLHRA(ITREADY)_" width=""25%"" >"_$$H2U^%L1FRM(HRA)_"</td>"
  ..D TDITREADY(IND)
  ..D TDITTIMEREADY(IND)
  ..W "</tr>",!
  .
  .N COLORADD S COLORADD="green" 
  .I ITREADY S COLORADD="grey"
  .I UR=2 D  ; --- ADD LEVEL 1
  ..S NMT0=""
  ..I URN=3 Q
  ..S CDT=$$^%L1IND(REF,3)
  ..N CDT1 S CDT1=CDT I $$NOHZMPAR S CDT1="&nbsp;"
  ..S NMT=$P(ST,"\",1)
  ..S NMT=$$NM0(REF)_" => <span style=""color:"_COLORADD_";font-size:"_$$^W3FSZ($$FSZPATH)_""">"_$$H2U^%L1FRM(NMT)_"</span>"
  ..D STADD(1)
  .
  .I UR=3 D  ; --- ADD LEVEL 2
  ..S CDT=$P(ST,"\",1)
  ..I CDT D  Q
  ...N CDT1 S CDT1=CDT I $$NOHZMPAR S CDT1="&nbsp;"
  ...S NMT=$P(ST,"\",2),NMT0=NMT
  ...N PRFX S PRFX=$$NM0(REF)
  ...I +CDT'=+$$^%L1IND(REF,3) S PRFX=PRFX_" => "_$$NM1(REF)
  ...S NMT=PRFX_" => <span style=""color:"_COLORADD_";font-size:"_$$^W3FSZ($$FSZPATH)_""">"_$$H2U^%L1FRM(NMT)_"</span>"
  ...D STADD(2)
  ..
  ..S CDT=$P(ST,"\",4)
  ..N CDT1 S CDT1=CDT I $$NOHZMPAR S CDT1="&nbsp;"
  ..S NMT=$P(ST,"\",5)
  ..N PRFX S PRFX=$$NM0(REF)
  ..S PRFX=PRFX_" => "_$$NM1(REF)_"=>"
  ..S NMT=PRFX_" <span style=""color:brown;font-size:"_$$^W3FSZ($$FSZHZ3)_""">"_$$H2U^%L1FRM(NMT)_"</span>"
  ..D STADD(2)
  .
  .W "</tr>",!
  W "</table></td></tr>",!
  Q
  ;
NM0(REF) ;
 N REF0,NM0
 S REF0=$$GL^%L1IND(REF,2)
 S NM0=$P($G(@REF0),"\",3)
 S NM0="<span style=""color:grey;font-weight:bold"">"_$$H2U^%L1FRM(NM0)_"</span>"
 Q NM0
 ;
NM1(REF) ;
 N REF1,NM1
 S REF1=$$GL^%L1IND(REF,3)
 S NM1=$P($G(@REF1),"\")
 S NM1="<span style=""color:grey"">"_$$H2U^%L1FRM(NM1)_"</span>"
 Q NM1
 ;
PCQN(QN)
 I QN[":"!(QN["|")!(QN["+") D
 .S QN=+QN_" "_$$^W4SHOWPZ(QN,20)
 Q QN
 ;
STLCD(STAM) ;
 Q " style=""color:grey"" "
 ;
STLHRA(ITREADY) ;
 I ITREADY Q " style=""color:grey"" "
 Q " style=""color:brown"" "
 ;
STADD(PR) ;
 S QNT=$P(ST,"\",3)
 S HRT=$P(ST,"\",$S($G(PR)=2:6,1:4))
 W "<td "_$$STLCD_">"_CDT1_"</td>"
 W "<td>"_NMT_"</td>"
 W "<td>"_$$PCQN(QNT)_"</td>"
 W "<td "_$$STLHRA(ITREADY)_">"_$$H2U^%L1FRM(HRT)_"</td>"
 W "<td colspan=""2"">&nbsp;</td>"
 Q
 ;
TDREADY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(N)
 W "<td id=""tdrd"_N_""" "_$$STYLE1(N,"C")_">"
 W "<input id=""chkready"_N_""" type=""checkbox"" "
  W " style=""display:none;"" "
  I $$READY(N) W "  checked=""checked"" "
  W "  onClick=""ClickReady('"_N_"',this)"" />"
 W "<label id =""lbready"_N_""" for=""chkready"_N_""">"
  N RZ S RZ=35
  I '$$READY(N) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
  I $$READY(N) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
 W "</label><br>"
 W "</td>"
 Q
 ;
TDTIMEREADY(IND) ;
 W "<td "_$$STLTIME(IND)_" >"
  W $$TIMEREADY(IND)
 W "</td>"
 Q
 ;
TDITTIMEREADY(IND) ;
 W "<td align=""center"" >"
  W $$ITTIMEREADY(IND)
 W "</td>"
 Q
 ;
ITTIMEREADY(IND)
 N TCUR,DRCV,TRCV
 N DTORD,PRNORD,TIMEORD,ORD,SHI
 D PARSEIND1(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="")!(SHI="") Q "NOTIND"
 ;
 N RZN S RZN=0
 S TCUR=0
 I $G(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")) D
 .S TCUR=$G(^("READY"))
 ;
 I 'TCUR,$D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")) D
 .S TCUR=$G(^("READY"))
 ;
 I 'TCUR,$D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) D
 .S TCUR=$G(^(ORD))
 ;
 I 'TCUR S TCUR=$H
 ;
 S RZN=($P(TCUR,",")-$E(TIMEORD,1,5))*(24*3600)
 S RZN=RZN+$P(TCUR,",",2)-$E(TIMEORD,6,10)
 S RZN=$$DOP^%L1FRM(RZN\3600)_":"_$$DOP^%L1FRM((RZN#3600)\60)
 Q RZN
 ;
 ;
READY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(N)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q 0
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) Q 1
 Q 0
 ;
ITREADY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD,SHI
 D PARSEIND1(N)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="")!(SHI="") Q 0
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD,SHI)) Q 2
 I '$D(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI)) Q 0
 N REF,UR
 S REF=$G(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI))
 I REF="" W 0
 S UR=$L(REF,",")-1  
 N SHI1 S SHI1=SHI
 I UR>1 D
 .F  S SHI1=$O(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI1),-1) Q:SHI1=""  D  Q:UR'>1
 ..S REF=$G(^(SHI1))
 ..S UR=$L(REF,",")-1  
 I UR=1,SHI1,$D(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI1,"READY")) Q 1
 Q 0
 ;
TIMEREADY(IND) ;
 N TCUR,DRCV,TRCV
 S TCUR=$H
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q "NOTIND"
 N RZN S RZN=0
 ;
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) D  Q RZN
 .N TMRD S TMRD=$G(^(ORD))
 .S RZN=($P(TMRD,",")-$E(TIMEORD,1,5))*(24*3600)
 .S RZN=RZN+$P(TMRD,",",2)-$E(TIMEORD,6,10)
 .S RZN=$$DOP^%L1FRM(RZN\3600)_":"_$$DOP^%L1FRM((RZN#3600)\60)
 ;
 S RZN=($P(TCUR,",")-$E(TIMEORD,1,5))*(24*3600)
 S RZN=RZN+$P(TCUR,",",2)-$E(TIMEORD,6,10)
 S RZN=$$DOP^%L1FRM(RZN\3600)_":"_$$DOP^%L1FRM((RZN#3600)\60)
 Q RZN
 ;
 ;;N TIMEREADY S TIMEREADY=$G(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD))
 ;;I TIMEREADY="" Q ""
 ;;Q $$T^%L1TIME(TIMEREADY)
 ;
 ;
TDITREADY(N) ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(N)
 W "<td id=""tditrd"_N_""" align=""center"" width=""5%"" >"
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) W "&nbsp;</td>" Q
 ;
 W "<input id=""chkitready"_N_""" type=""checkbox"" "
  W " style=""display:none;"" "
  I $$ITREADY(N) W "  checked=""checked"" "
  W "  onClick=""ClickItReady('"_N_"',this)"" />"
 W "<label id =""lbitready"_N_""" for=""chkitready"_N_""">"
  N RZ S RZ=35
  I '$$ITREADY(N) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
  I $$ITREADY(N) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
 W "</label><br>"
 W "</td>"
 Q
 ;
 ;
PARSEIND(IND) ;
 D PRS^%L1FRM(IND,"DTORD~PRNORD~TIMEORD~ORD","~")
 Q
 ;
PARSEIND1(IND) ;
 D PRS^%L1FRM(IND,"DTORD~PRNORD~TIMEORD~ORD~SHI","~")
 Q
 ;
CENTER(STAM) ;
 Q "style=""text-align:center"" "
 ;
MDPNM(PRN) ;
 N MDPNM,OK S MDPNM="",OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S A=$G(^(N)) D  Q:OK
 .I +$P(A,"\",3)=+PRN S MDPNM=$P(A,"\",4),OK=1
 Q MDPNM
 ;
STYLE(HZ,C) ;
 N CN S CN=""
 I $G(C)="C" S CN="text-align:center;"
 Q " style="""_CN_$$BGCORD(HZ)_";cursor:pointer"" "
 ;
BGCORD(HZ) ;
 I $$HZM^W4MSL(HZ),$$TAKEAWAY^W4HZMST(HZ) Q "background-color:orange"
 I $$HZM^W4MSL(HZ) Q "background-color:lightblue"
 I $$HZM^W4MSD(HZ) Q "background-color:lightgreen"
 Q ""
 ;
STYLE1(IND,C) ;
 N CN S CN=""
 I $G(C)="C" S CN="text-align:center;"
 Q " style="""_CN_$$BGCORD1(IND)_";cursor:pointer"" "
 ;
BGCORD1(IND) ;
 I $$READY(IND) Q "background-color:yellow"
 Q "background-color:lightyellow"
 ;
ONCLICK(IND) ;
 Q " onClick=""OnClick('"_IND_"',event)"" "
 ;
STLTIME(IND) ;
 N DTORD,PRNORD,TIMEORD,ORD,BGC,ENDTIME
 D PARSEIND(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q ""
 S ENDTIME=""
 I $$HZM^W4MSL(ORD) D
 .S ENDTIME=$$^%L1DC($$TRH^W4HZMST,3)_$TR($J($$SEC($$SHAA^W4HZMST(ORD)),5)," ",0)
 .S ENDTIME=$$DTIME^W4MMTIME($$PLUS^%L1TIME(ENDTIME,-10*60))
 I $$HZM^W4MSD(ORD) D
 .S ENDTIME=$$PLUS^%L1TIME(TIMEORD,30*60)
 .S ENDTIME=$$DTIME^W4MMTIME(ENDTIME)
 N TIMEREADY S TIMEREADY=$G(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD))
 I TIMEREADY["," S TIMEREADY=$$DTIME^W4MMTIME(TIMEREADY)
 I TIMEREADY="" S TIMEREADY=$$DTIME^W4MMTIME($H)
 S BGC="background-color:"_$$BGCT^W4MMDLV(ENDTIME,TIMEREADY)
 I $P(BGC,":",2)="" S BGC=$$BGCORD1(IND)
 Q "style=""text-align:center;"_BGC_""" "
 ;
SEC(SHAA) ;
 Q SHAA*3600+($P(SHAA,":",2)*60)
 ;
CLICKREADY(PRM) ;
 N IND S IND=$P(PRM,";")
 N RD S RD=$P(PRM,";",2)
 N CONFIRM S CONFIRM=$P(PRM,";",3)
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q 0
 ;
 I $D(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)),'CONFIRM Q "CONFIRMRD"
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)),'CONFIRM Q "CONFIRMNRD"
 ;
 I $D(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)) D  G CE
 .K @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)
 .M @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)=@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)
 .S @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)=$H
 .K @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)
 ;
 I $D(@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)) D  G CE
 .K @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)
 .M @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)=@$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)
 .S @$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)=""
 .K @$$^W4BON(1)@(DTORD,PRNORD,TIMEORD,ORD)
CE Q 1
 ;
CLICKITREADY(PRM) ;
 N IND S IND=$P(PRM,";")
 N RD S RD=$P(PRM,";",2)
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND1(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="")!(SHI="") Q 0
 I '$D(@$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI)) Q 0
 I RD="true" S @$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")=$H
 I RD'="true" K @$$^W4BON@(DTORD,PRNORD,TIMEORD,ORD,SHI,"READY")
 Q 1
 ;
CHECKED(PRM) ;
 I $$SHOWREADY,PRM="ready" Q 1
 I '$$SHOWREADY!$$SHOWALL,PRM="notready" Q 1
 I $$OPENALL,PRM="openall" Q 1
 I $$SHOWFIRE,PRM="fire" Q 1
 Q 0
 ;
KINDSHOW(PRM) ;
 W "<input id=""chk"_PRM_""" type=""checkbox"" "
  W " style=""display:none;"" "
  I $$CHECKED(PRM) W "  checked=""checked"" "
  W "  onClick=""ClickKindShow(this)"" />"
 W "<label id =""lb"_PRM_""" for=""chk"_PRM_""">"
  N RZ S RZ=35
  D
  .I PRM="ready",$$SHOWREADY D  Q
  ..W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"">"
  .I PRM="notready",'$$SHOWREADY!$$SHOWALL D  Q
  ..W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"">"
  .I $$CHECKED(PRM) D  Q
  ..W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"">"
  .W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
 Q
 ;
SHOWREADY(STAM) ;
 Q $G(%ARG("READY"))
 ;
SHOWALL(STAM) ;
 Q ($G(%ARG("READY"))=2)
 ;
OPENALL(STAM) ;
 Q $G(%ARG("OPENALL"))
 ;
SHOWFIRE(STAM) ;
 Q $G(%ARG("FIRE"))
 ;
DEVLIST(MY) ;
 N N,A,MDP K MPRN
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S A=$G(^(N))
 .S MDP=$P(A,"\",3)
 .I $$SUGDEV^W4HZMPC(MDP)'=0 Q
 .I +MDP=+MY D
 ..S MPRN(MDP_"-"_N)=$P(A,"\",4)
 Q:$D(MPRN)
 ;
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S A=$G(^(N))
 .S MDP=$P(A,"\",3)
 .I $$SUGDEV^W4HZMPC(MDP)'=0 Q
 .S MPRN(MDP_"-"_N)=$P(A,"\",4)
 Q
 ;
 ;
PRNLST(CURPRN,READY) ;
 N (JB,%ARG,%REM,CURPRN,READY,MPRN)
 I '$G(CURPRN) S CURPRN=$$CURPRN
 I '$D(MPRN) D DEVLIST($$^W4MYDVN)
 S READY=+$G(READY)
 Q:$$SMALLHD
 ;
 W "<table id=""tbprnlst"" border=""0"" align=""center"" width=""100%"" "
   S SZ=$$FSZPRN
   W "style=""font-size:"_$$^W3FSZ(SZ)_""">"
  W "<tr>"
    N WD S WD=0
     I $$1024^W4WDSCR W "<td width=""8%"" " S WD=WD+8
     I '$$1024^W4WDSCR W "<td width=""8%"" " S WD=WD+8
     I $$1024^W4WDSCR W "style=""font-weight:bold"" "
    W ">"
     W $$^%W1DICT("OPENALL")
    W "</td>"
    W "<td width=""4%"" align=""center"" >" S WD=WD+4
     D KINDSHOW("openall")
    W "</td>"
    ;
    W "<td "_$$INV^%W1ALIGN
     I $$1024^W4WDSCR W " width=""11%"" style=""font-weight:bold;color:red"" " S WD=WD+12
     I '$$1024^W4WDSCR W " width=""4%"" style=""color:red"" " S WD=WD+4
    W ">"
     W $$^%W1DICT("FIRE") I $$1024^W4WDSCR W $$NBSP^%L1FRM(3)
    W "</td>"
    W "<td width=""3%"" align=""center"">" S WD=WD+3
     D KINDSHOW("fire")
    W "</td>"
    I '$$1024^W4WDSCR W "<td WIDTH=""11%"">&nbsp;</td>" S WD=WD+11 
    I $$1024^W4WDSCR W "<td WIDTH=""4%"">&nbsp;</td>" S WD=WD+4
   ;
   S N="" F  S N=$O(MPRN(N)) Q:N=""  D
   .W "<td onClick=""ClickPrn('"_N_"')"" width=""10%"" " S WD=WD+10
   .W " style=""text-align:center;border:2px solid;"_$$RAD^W3CSM("8px")_";cursor:pointer;"
   . D
   . .I $G(CURPRN),N=CURPRN W "background-color:yellow" Q
   . .I $D(@$$^W4BON(READY)@($$^W4DZ,N)) W "background-color:lightyellow" Q
   . .W "background-color:lightgrey"
   .W """>"
   . W $$H2U^%L1FRM(MPRN(N))
   .W "</td>"
  I WD<100 D
  .W "<td width="""_(100-WD)_"%"" >&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
INIT ;
 D INIT^W4MYDVN
 S DT=$G(%ARG("DT"))
 I 'DT S DT=$$^W4DZ
 ;
 S CURPRN=$$CURPRN
 ;
 ;
 S READY=+$G(%ARG("READY"))
 ;
 I $G(%ARG("ORD"))="" D
 .K @$$^W4MAIN("TMPBON1")
 ;
 I $$SHOWALL D
 .K @$$^W4BON(2)
 .M @$$^W4BON(2)@(DT)=@$$^W4BON(0)@(DT)
 .M @$$^W4BON(2)@(DT)=@$$^W4BON(1)@(DT)
 Q
 ;
PRNNM ;
 W "<p style=""color:brown;text-align:center;font-size:"_$$^W3FSZ($$FSZPRNNM)_";"_$$FONTFM^W3CSS_""">"
  S MDPNM=$$MDPNM(CURPRN)
  W $$^%W1DICT("PRINTER")_" : "_$$H2U^%L1FRM(MDPNM)
 W "</p>",!
 Q
 ;
KOT ;
 N FSZ S FSZ=$$FSZKOT
 W "<table border=""0"" align=""center"" style=""font-size:"_$$^W3FSZ(FSZ)_";width:100%"">",!
  W "<tr>"
   W "<td "
    I $$1024^W4WDSCR W "style=""font-weight:bold"" "
    I '$$1024^W4WDSCR W " width=""8%"" "
   W ">"
    W $$^%W1DICT("INWAITING")
   W "</td>"
   ;
   W "<td "
    I '$$1024^W4WDSCR W " width=""4%"" align=""center"" "
   W ">"
    D KINDSHOW("notready")
   W "</td>"
   ;
   W "<td "
    I $$1024^W4WDSCR W "style=""font-weight:bold"" "
    I '$$1024^W4WDSCR W " width=""4%"" "
   W ">" 
    W $$^%W1DICT("SHOWORDERSREADY")
   W "</td>"
   W "<td "
    I '$$1024^W4WDSCR W " width=""3%"" align=""center"" "
   W ">"
    D KINDSHOW("ready")
   W "</td>"
   N SP S SP=2 I $$1024^W4WDSCR S SP=2
   W "<td width="""_SP_"%"">&nbsp;</td>"
   W "<td >"
    W "<input id=""srcord"" type=""text"" size=""8"" "
     D
     .N ORD S ORD=$G(%ARG("ORD")) I $E(ORD)="T" S ORD=$E(ORD,2,20)
     .W " value="""_$G(%ARG("ORD"))_""" "
     .W " style=""font-size:"_$$^W3FSZ($$FSZHZNMB)_""" "
    W " />"
   W "</td>"
   W "<td "_$$^%W1ALIGN_">"
    S %ARG("NODOT")=1
    D ^W4NUMKB("srcord",11)
   W "</td>"
   W "<td>"
    D ^W4BTN("ORDER","Show('0')","GREEN","",18,20)
   W "</td>"
   W "<td>"
    D ^W4BTN("TABLE","Show('1')","GREEN","",18,20)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
NEWORDS(PRN) ;
 N (JB,%ARG,%REM,PRN)
 I '$G(PRN) S PRN=$$GETP^%W1PRM("CURPRN")
 Q:'$G(PRN) ""
 ;
 N TMPBON1 S TMPBON1=$$^W4MAIN("TMPBON1")
 N TMPBON2 S TMPBON2=$$^W4MAIN("TMPBON2")
 K @TMPBON2
 S DT=$$^W4DZ
 ;
 S TIME="" F  S TIME=$O(@$$^W4BON(0)@(DT,PRN,TIME)) Q:TIME=""  D
 .S HZ="" F  S HZ=$O(@$$^W4BON(0)@(DT,PRN,TIME,HZ)) Q:HZ=""  D
 ..S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ..S @TMPBON2@(IND)=""
 ;
 S MORD=""
 S IND="" F  S IND=$O(@TMPBON2@(IND)) Q:IND=""  D
 .I '$D(@TMPBON1@(IND)) S MORD=MORD_IND_"^"
 K @TMPBON2
 ;
 Q MORD
 ;
 ;
CURPRN(STAM) ;
 N CURPRN,FSTIND
 S CURPRN=$G(%ARG("CURPRN"))
 I CURPRN Q CURPRN
 S CURPRN=$$GETP^%W1PRM("CURPRN")
 I CURPRN Q CURPRN
 D DEVLIST($$^W4MYDVN)
 S FSTIND=$O(MPRN(""))
 I FSTIND S CURPRN=FSTIND
 Q CURPRN
 ;
MSGORD(IND) ;
 N ST
 S ST="<span style="""_$$MSGSTYLE("RED")_""">"
 S ST=ST_$$^%W1DICT("REFRESHNEWORDERS")
 S ST=ST_"</span>"
 Q ST 
 ;
 N DTORD,PRNORD,TIMEORD,ORD
 D PARSEIND(IND)
 S TM=$$T^%L1TIME(+$E(TIMEORD,6,10))
 S ST="<span style="""_$$MSGSTYLE("BLACK")_""">"
 S ST=ST_$$^%W1DICT("ORDWASSENDED")_"</span>"
 S ST=" <span style="""_$$MSGSTYLE("BROWN")_""">"
 S ST=ST_ORD_"</span> [ "_TM_" ]"
 S ST=ST_" - <span style="""_$$MSGSTYLE("RED")_""">"
 S ST=ST_$$^%W1DICT("REFRESHDISPLAY")_"</span> *** "
 Q ST
 ;
MSGSTYLE(COLOR) ;
 N SZ S SZ=$$FSZMSG
 Q "color:"_COLOR_";font-size:"_$$^W3FSZ(SZ)
 ;
NOHZMPAR(STAM) ;
 Q $G(@$$^W4PRM@("NOHZMPAR"))
 ;
FIRE(IND) ;
 N (JB,%ARG,%REM,IND)
 S OK=0
 D PARSEIND(IND)
 I DTORD=""!(PRNORD="")!(TIMEORD="")!(ORD="") Q 0
 I '$D(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD)) Q 0
 ;
 N N S N="" F  S N=$O(@$$^W4BON(0)@(DTORD,PRNORD,TIMEORD,ORD,N)) Q:N=""  I N D
 .S REF=$G(^(N))
 .S ST=$G(@REF)
 .S UR=$L(REF,",")-1  
 .I UR=1 D
 ..S CD=$P(ST,"\")
 ..I $$ISFIRE^W4FIRE(CD) S OK=OK+$P(ST,"\",5) Q
 Q (OK>0)
 ;
 ;
FSZHD(STAM) 
 N FSZ
 S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHD"),16)
 I $$1024^W4WDSCR S FSZ=FSZ-2
 Q FSZ
 ;
FSZHDORD(STAM) ; 
 N FSZ
 S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHDORD"),18)
 Q FSZ
 ;
FSZKOT(STAM) ;
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZKOT"),16)
 I $$1024^W4WDSCR S FSZ=FSZ-4
 Q FSZ
 ;
FSZHZ(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ"),16)
 Q FSZ
 ;
FSZHZ1(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ1"),18)
 Q FSZ
 ;
FSZHZ2(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ2"),16)
 Q FSZ
 ;
FSZHZ3(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZ3"),14)
 Q FSZ
 ;
FSZPATH(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZPATH"),16)
 Q FSZ
 ;
FSZPRN(STAM) ;
 N SZ
 S SZ=$G(@$$^W4PRM@("BONSCR","FSZPRN"),16)
 I $$1024^W4WDSCR S SZ=SZ-2
 Q SZ
 ;
FSZPRNNM(STAM) ;
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZPRNNM"),18)
 Q FSZ
 ;
FSZHZNMB(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZHZNMB"),16)
 Q FSZ
 ;
FSZMSG(STAM) ; 
 N FSZ S FSZ=$G(@$$^W4PRM@("BONSCR","FSZMSG"),16)
 Q FSZ
 ;
OPENORD(STAM) ; 
 Q $G(@$$^W4PRM@("BONSCR","OPEN"))
 ; 
OPENORDALL(STAM) ; 
 Q ($$OPENORD="ALL")!$$OPENALL
 ; 
SMALLHD(STAM) ; 
 Q $G(@$$^W4PRM@("BONSCR","SMALLHD"))
 ; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONWND
W4BONWND ; [ 15.07.25 18:18 ] [ 07.02.23 17:02 ] [ 22.11.22 16:08 ] 
 N (JB,%ARG,%REM)
 ;
 D INIT^W4BONVW ; --> DT,READY 
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 ;
 S OK=0
 ;
 I '$$BIG D JBDEV
 ;
 I '$D(MPRN) D  Q
 .W "<script>",!
 . W "MsgA(""PRINTERNOTDEFINED"")",!
 .W "</script>",!
 ;
 S PRORD=0
 I $G(%ARG("IND")) S PRORD=$$ORD(%ARG("IND"))
 I $G(%ARG("IND"))&$G(%ARG("BIG")) D SHOWBIG(%ARG("IND")) Q  ; -- !!
 ;
 S WNDCOLS=$$WNDCOLS
 S WNDROWS=$$WNDROWS
 ;
 S HGW=$$HGW
 D ORDS(DT,$G(CURPRN)) ; -->ORDS(),ORDSI(), QNORDS
 ;
 S QNROW=(QNORDS-.1\WNDCOLS)+1
 ;
 S K=0
 S CSP=20
 I WNDCOLS>4 S CSP=10
 I WNDCOLS>3,$$1024^W4WDSCR S CSP=5
 ;
 D TMPRKZ K @TMPRKZ
 ;
 W "<table id=""TblBon"" dir="""_$$^%W1DIR_""" border=""0"" cellspacing="""_CSP_""" style=""width:100%"">",!
  F I=1:1:QNROW D TRWND(I)
 W "</table>",!
 ;
 Q
 ;
 ;
TRWND(I) ;
 W "<tr height="""_HGW_"px"" >",!
  F J=1:1:WNDCOLS D TDWND(I,J)
 W "</tr>",! 
 Q
 ;
TDWND(I,J) ;
 S K=K+1
 S IND=$G(ORDSI(K))
 D PRS
 W "<td width="""_(100\WNDCOLS-1)_"%"">"
  N HGKOT S HGKOT=30
  D OPTBL
   W "<tr height="""_HGKOT_"px"">"
    W "<td >"
     D KOT(IND)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>",!
    W "<td>",!
      W "<div class=""ordbody"" id=""wnd-"_K_""" dir="""_$$^%W1DIR_""" name=""divwnd"" "
       N WD S WD=98
       N HG S HG=(HGW-HGKOT)_"px"
       W "style=""height:"_HG_";width:"_WD_"%;border:ridge 3px grey"
       D 
       .N BGCOLOR S BGCOLOR="white" 
       .I $G(READY) S BGCOLOR="yellow"
       .I $$IFORD(K) W ";background-color:"_BGCOLOR_";overflow-y:auto"
       W """"
       W " onScroll=""OnScroll('"_K_"')"" "
      W ">"
       D SHOWORD(K)
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
ORDS(DT,PRN) ;
 K ORDS
 N TIME,HZ,IND,I,J,K
 ;
 I $G(PRN) D
 .D CRORDS(PRN)
 ;
 I $G(PRN)="" D
 .N PRN
 .S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D CRORDS(PRN)
 ;
 S HZ="",K=0
 ;
 N DRC S DRC=1 I READY S DRC=-1
 S TIME="" F  S TIME=$O(ORDS(TIME),DRC) Q:TIME=""  D
 .F  S HZ=$O(ORDS(TIME,HZ)) Q:HZ=""  S K=K+1 D
 ..S ORDSI(K)=ORDS(TIME,HZ)
 ;
 N TMPBON,TMPBON0 S TMPBON0=$$^W4MAIN("TMPBONPRN")
 S TMPBON=$E(TMPBON0,1,$L(TMPBON0)-1)_",""ALL"")"
 I PRN S TMPBON=$E(TMPBON0,1,$L(TMPBON0)-1)_","""_PRN_""")"
 ;
 N OKNEW S OKNEW=0
 S K="" F  S K=$O(ORDSI(K)) Q:K=""  D  Q:OKNEW
 .I '$D(@TMPBON@(K)) S OKNEW=1
 ;
 K @TMPBON M @TMPBON=ORDSI
 ;
 S QNORDS=K
 ;
 I OKNEW D
 .W "<script>",!
 . W "Beep(1000)",!
 .W "</script>",!
 Q
 ;
 ;
CRORDS(PRN) ;
 N TIME,HZ,IND
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .N SHOWTIME S SHOWTIME=$G(@$$^W4PRM@("BONSCR","SHOWTIME"))
 .I SHOWTIME<120 S SHOWTIME=120
 .I READY,$$DIF^%L1TIME($H,TIME)>SHOWTIME Q
 .
 .S HZ="" F  S HZ=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ)) Q:HZ=""  D
 ..I $E($G(%ARG("ORD")))="T",$$NMB^W4HZMST(HZ)'=$E(%ARG("ORD"),2,20) Q  ; -- TABLE
 ..I $G(%ARG("WAITER")),$$MKBL^W4HZMST(HZ)'=$G(%ARG("WAITER")) Q  ; -- WAITER
 ..S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ..I $G(%ARG("FIRE")),'$$FIRE(IND) Q
 ..S ORDS(TIME,HZ)=IND 
 Q
 ;
 ;
SHOWORD(K) ;
 N DT,PRN,TIME,HZ,SHB,REF,UR
 ;
 S IND=$G(ORDSI(K))
 D PRS
 ;
 I DT="" S DT=$$^W4DZ
 I (PRN="")!(TIME="")!(HZ="") Q
 ;
 D OPTBL
 I $$HZM^W4MSL(HZ) D KOTMSL(HZ)
 ;
 N MZMNM S MZMNM=$G(@$$^W4ORD@(HZ,"MZMNM"))
 I $L(MZMNM) D PCBC($$H2U^%L1FRM(MZMNM),1,"red")
 ;
 S NORDYITMAIN=0
 S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
 .S REF=$G(^(SHB))
 .S UR=$L(REF,",")
 .N INDSH S INDSH=IND_"~"_SHB
 .I $E(REF)="!" D  Q
 .. W "<tr><td>"  
 ..  W "<table width=""100%"">",! 
 ..   W "<tr>"
 ..    N MSG S MSG=$E(REF,2,255)
 ..    W "<td width="""_$$WD1_""">&nbsp;</td>"
 ..    W "<td style=""color:brown;font-weight:bold"">"
 ..      W $$H2U^%L1FRM(MSG)
 ..    W "</td>"
 ..   W "</tr>",!  
 ..  W "</table>",!
 .. W "</td></tr>",!
 .
 .N CD S CD=$P($G(@REF),"\") Q:CD=""
 .
 .I UR=2 D  Q  ; -- PARIT ROSHI
 ..S NORDYITMAIN=0
 ..I $G(%ARG("NORDYIT")),$$ITREADY^W4BONVW(INDSH) S NORDYITMAIN=1 Q
 .. W "<tr><td>"  
 ..  D MAINITEM(REF,INDSH)
 .. W "</td></tr>",!
 .
 .I UR>2,'$G(NORDYITMAIN) D  Q
 .. W "<tr><td>"  
 ..  D ADDS(REF,INDSH) Q
 .. W "</td></tr>",!
 ;
 W "</table>",!
 Q
 ;
 ;
TMPRKZ ;
 S TMPRKZ=$$^W4MAIN("TMPRKZ")
 Q
 ;
TMPRKZORD ;
 S TMPRKZORD=$$^W4MAIN("TMPRKZORD")
 Q
 ;
MAINITEM(REF,IND) ;
 N ST,NM,QN,HR,CD
 S ST=$G(@REF)
 Q:ST=""
 S CD=$P(ST,"\")
 S NM=$P(ST,"\",3)
 S QN=$P(ST,"\",5)
 S HR=$P(ST,"\",8)
 N SZ S SZ=$$FSZ
 ;
 D TMPRKZ
 I CD D RKZ(CD,QN)
 ;
 D OPTBL
  I $G(II)>1 D
  .W "<tr>"
  .W "<td colspan=""3"">"
  . W "<hr style=""border:1px lightgrey dotted"">",!
  .W "</td></tr>",! 
  ;
  W "<tr "
   D
   .I $G(%ARG("GROUP")),$$GR(CD)'=%ARG("GROUP") W "style=""color:"_$$WEAKCLR_""" " Q
   .I QN<0 W "style=""color:red"" " Q
   .I $$ITREADY^W4BONVW(IND),'$G(READY)  W "style=""background-color:#ffff8c"" " Q
  W ">"
  D
  .I $$ISFIRE^W4FIRE(CD)!(QN<0) W "<td>&nbsp;</td>" Q
  .D TDITREADY^W4BONVW(IND)
  ;
  W "<td width="""_$$WD1_""" dir=""LTR"" >"
   D
   .I $$ISFIRE^W4FIRE(CD) W "&nbsp;</td>" Q
   .
   .W "<span style=""font-weight:bold;border:1px grey dotted"">"
   . W $$NBSP^%L1FRM(1)_QN_$$NBSP^%L1FRM(1)
   .W "</span>"
  W "</td>"
  ;
  W " <td style=""font-size:"_$$^W3FSZ(SZ)_";font-weight:bold;width:70%"
   I $$ISFIRE^W4FIRE(CD) W ";color:red"
   W """ "
  W ">"
   S NM=$$RPL^%L1FRM(NM,"%20"," ")
   W $$H2U^%L1FRM(NM)
  W "</td>",!
 W "</tr>",! 
 ; 
 I $L(HR) D
 .W "<tr>"
 . W "<td width="""_$$WD1_""">&nbsp;</td>" 
 . W "<td colspan=""2"" style=""font-size:"_$$^W3FSZ(SZ)_";color:brown;font-weight:bold"">"
 .  S HR=$$^W4CLRCMN(HR)
 .  W $$H2U^%L1FRM(HR)
 . W "</td>"
 ;
 W "</tr>",! 
 W "</table>",!
 Q
 ;
 ;
ADDS(REF,IND) ;
 N UR,NMT,QNT,HRT
 S UR=$L(REF,",") Q:UR<3
 N ST S ST=$G(@REF)
 N CDT S CDT=$P(REF,",",3)
 ;
 I UR=3,$D(@REF)=1 D  Q  ; --- ADDS NORMAL
 .S NMT=$P(ST,"\") 
 .S QNT=$P(ST,"\",3)
 .I CDT D RKZ(CDT,QNT)
 .S HRT=$P(ST,"\",4)
 .N COLOR S COLOR="darkblue"
 .I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 .D PCADD(NMT,QNT,HRT,COLOR)
 ; 
 I UR=4 D
 .S CDT=$P(ST,"\") I CDT D  Q
 ..S QNT=$P(ST,"\",3)
 ..I CDT D RKZ(CDT,QNT)
 ..S NMT=$P(ST,"\",2)
 ..S HRT=$P(ST,"\",6)
 ..N COLOR S COLOR="darkblue"
 ..I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 ..D PCADD(NMT,QNT,HRT,COLOR)
 .
 .S CDT=$P(ST,"\",4) I CDT D  Q
 ..S QNT=$P(ST,"\",3)
 ..I CDT D RKZ(CDT,QNT)
 ..S NMT=$P(ST,"\",5)
 ..S HRT=$P(ST,"\",6)
 ..N COLOR S COLOR="darkgreen"
 ..I $G(%ARG("GROUP")),$$GR(CDT)'=%ARG("GROUP") S COLOR=$$WEAKCLR
 ..D PCADD2(NMT,QNT,HRT,COLOR)
 Q
 ;
 ;
IFORD(K)
 N DT,PRN,TIME,HZ,SHB,REF,UR
 S IND=$G(ORDSI(K))
 D PRS
 I DT=""!(PRN="")!(TIME="")!(HZ="") Q 0
 Q $D(@$$^W4BON(READY)@(DT,PRN,TIME,HZ))
 ;
 ;
RKVKOT(TX) ;
 N ST S ST="<span style=""color:yellow"">"_TX_"</span>"
 Q ST
 ;
RKZ(CD,QN) ;
 I '$D(TMPRKZORD) D TMPRKZORD
 I '$D(TMPRKZ) D TMPRKZ
 I $G(PRORD) S @TMPRKZORD@(CD)=$G(@TMPRKZORD@(CD))+QN Q
 I $$BIG Q
 S @TMPRKZ@(CD)=$G(@TMPRKZ@(CD))+QN
 Q
 ;
KOT(IND,BIG) ; -- KOTERET HAZMANA
 N DT,PRN,TIME,HZ,BGKOT
 D PRS
 Q:HZ<1
 ;
 D
 .N TBLBORD ;;S TBLBORD=""
 .D OPTBL
  W "<tr style="""_$$BGKOT(IND)_";color:white;font-weight:bold"">",!
   W "<td width=""10%"">&nbsp;</td>"
   ;
   W "<td width=""25%"">"
    N HZ1 S HZ1=HZ
    I $$MSPYOM^W4PRM S HZ1=$$^W4MSPYOM(HZ)
    W $$RKVKOT(HZ1)
   W "</td>",!
   ;
   W "<td width=""55%"" >"
   D
   .N NMB S NMB=$$NMB^W4HZMST(HZ)
   .I $$^W4MSD(NMB) W $$^%W1DICT("TABLE")_" "_$$RKVKOT(NMB) Q
   .I $$^W4MSL(NMB) D
   ..;;W NMB_" "_$$RKVKOT($$H2U^%L1FRM($$MAZMIN^W4HZMST(HZ)))
   ..W $$RKVKOT($$H2U^%L1FRM($$MAZMIN^W4HZMST(HZ)))
   W "</td>",!
   ;
   D TDREADY^W4BONVW(IND)
   ;
   I $$WNDROWS=2!$G(BIG) D
   .W "<td>"
   .  S (HGI,WDI)=35 I $$1024^W4WDSCR S (WDI,HGI)=30
   .  I '$G(BIG) W "<img src=""w4bigscr.png"" width="""_WDI_"px"" height="""_HGI_"px"" onClick=""BigScr('"_IND_"')"" />"
   .  I $G(BIG) W "<img src=""w4smlscr.png"" onClick=""CloseBigScr('"_IND_"')"" />"
   .W "</td>"
   ;
   I $$WNDROWS=1,'$G(BIG) W "<td>&nbsp;</td>"
  ;
  W "</tr>",!
  ;
  I $G(TIME)'="" D TMPRN(TIME,IND)
  ;
 W "</table>",! 
 Q
 ;
 ;
BGKOT(IND) ;
 I $$FIRE(IND) Q "background-color:red"
 I $L($$BGHDORD^W4PRM) Q "background-color:"_$$BGHDORD^W4PRM
 Q "background-color:darkred"
 
 ;
TMPRN(TIME,IND) ;
 N DT,PRN,TIME,HZ
 S BGCOLOR=$$BGKOT(IND)
 D PRS
 ;
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
  W "<tr style="""_$$BGKOT(IND)_";color:white;font-weight:bold"">",!
   W "<td width=""10%"">&nbsp;</td>"
   ;
   W "<td width=""20%"">"
    D RCVTIME(TIME)
   W "</td>"
   ;
   I $$HZM^W4MSL(HZ) D
   .W "<td colspan=""3"" style=""color:yellow"">"
   .W $$NBSP^%L1FRM($S($$1024^W4WDSCR:12,1:26))
   .W $$^%W1DICT("TO-")_" "_$$SHAA^W4HZMST(HZ) ;;_" "_$$TRH^W4HZMST(HZ)
   .W "</td>"
   ; 
   I $$HZM^W4MSD(HZ) D
   .N COLS S COLS=2 I $G(%ARG("BIGSHOW")) S COLS=1
   .W "<td colspan="""_COLS_""">"
   . W $$H2U^%L1FRM($$^W4NAME($$MKBL^W4HZMST(HZ)))
   .W "</td>"
   .W "<td>"_$$^%W1DICT("SD")_" "_$$SOAD^W4HZMST(HZ)_"</td>"
   .I $G(%ARG("BIGSHOW")) W "<td>&nbsp;</td>"
  W "</tr>",!
 Q
 ;
 ;
RCVTIME(TIME) ;
 N DIF,COLOR
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
 N DIFS
 S DIF=$$DIF^%L1TIME($H,TIME)
 S DIFS=$$DIF^%L1TIME($H,TIME,1)
 S COLOR=$$TIMECOLOR(TIME)
 ;
 I $G(@$$^W4PRM@("BONSCR","DAKOT"))!$$READY D  Q
 .W "<span style=""background-color:"_COLOR_";color:white"
 .  I $$1024^W4WDSCR W ";padding:4px" ;
 .  I '$$BONNEW^W4PRM W ";border:1px yellow solid" ;
 .W """>"
 . I DIF>59 S DIF=(DIF\60)_":"_$TR($J(DIF#60,2)," ","0")
 . I $$PAPJ^W4PRM!$G(@$$^W4PRM@("BONSCR","SEC")) S DIF=DIF_":"_$TR($J(DIFS#60,2)," ",0)
 . W "&nbsp;"_DIF_"&nbsp;"
 .W "</span>",! 
 ;
 I $L(COLOR) D  Q
 .W "<span style=""background-color:"_COLOR_";color:white"
 .  I $$1024^W4WDSCR W ";padding:4px"
 .W """>"
 . W "&nbsp;"_$$T^%L1TIME(TIME)_"&nbsp;"
 .W "</span>"
 ;
 W $$T^%L1TIME(TIME)
 Q
 ;
 ;
TIMECOLOR(TIME,PR) ;
 N DIF,COLOR
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
 S DIF=$$DIF^%L1TIME($H,TIME)
 ;
 I $G(PR) S DIF=TIME
 N RAMZOR S RAMZOR=$G(@$$^W4PRM@("BONSCR","RAMZOR"))
 I RAMZOR="" S RAMZOR="20,30,40"
 S COLOR=$G(BGCOLOR)
 D
 .N R1,R2 S R1=$P(RAMZOR,",")
 .S R2=$P(RAMZOR,",",2)
 .I R1,R2 D
 ..S COLOR="darkgreen"
 ..I R2,DIF>R2 S COLOR="red" Q
 ..I R1,DIF>R1 S COLOR="orange" Q
 Q COLOR
 ;
TIMEPRN(TIME) ;
 N BGCOLOR S BGCOLOR="grey"
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
 D OPTBL
  W "<tr style=""background-color:"_BGCOLOR_";color:white;font-weight:bold"">",!
   W "<td align=""center"">"
   W $$^%W1DICT("PRINTTIME")_" "_$$T^%L1TIME(TIME)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCADD(NMT,QNT,HRT,COLOR) ;
 N SZ S SZ=$$FSZ-1
 I $G(COLOR)="",$G(QNT)<0 S COLOR="red"
 D OPTBL
  W "<tr style=""color:"_COLOR_""">"
  W " <td style=""font-size:"_$$^W3FSZ(SZ)_";font-weight:bold;width:70%"">"
   W " + "_$$H2U^%L1FRM(NMT)
  W "</td>",!
  ;
  W "<td>"
   W $$^W4SHOWPZ(QNT)
  W "</td>"
 W "</tr>",! 
 ; 
 I $L(HRT) D
 .W "<tr>"
 . W "<td colspan=""2"" "
 .  W "style=""font-size:"_$$^W3FSZ(SZ)_";color:brown;font-weight:bold"" "
 . W ">"
 .  W $$H2U^%L1FRM(HRT)
 . W "</td>"
 .W "</tr>",! 
 ;
 W "</table>",!
 Q
 ;
 ;
PCADD2(NMT,QNT,HRT,COLOR) ;
 D OPTBL
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td>"
    D PCADD(NMT,QNT,HRT,COLOR) ;
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
BIG(STAM) ;
 Q $G(%ARG("BIG"))
 ;
ORD(IND) ; 
 I $G(IND),'$P(IND,"~",3) Q 1
 Q 0
 ;
SHOWBIG(IND) ;
 N DT,PRN,TIME,HZ,SHB,REF,UR
 D TMPRKZORD
 K @TMPRKZORD
 ;
 S READY=$$READY
 D PRS
 S %ARG("BIG")=1
 ;
 I 'PRN S PRN=$O(MPRN("")) S $P(IND,"~",2)=PRN
 I DT=""!(PRN="")!(HZ="") Q
 ;
 N HGKOT S HGKOT=30
  D OPTBL
   W "<tr height="""_HGKOT_"px"">"
    W "<td>"
     D KOT(IND,1)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>",!
      W "<div dir="""_$$^%W1DIR_""" name=""divwnd"" "
      D
       .N HGW S HGW=$$HGWBIG
       .I $G(PRORD) S HGW=HGW+$S($$1024^W4WDSCR:10,1:20)
       .W "style=""height:"_HGW_"px;width:100%;border:ridge 3px grey"
       .N BGCOLOR S BGCOLOR="white" 
       .I $G(READY) S BGCOLOR="yellow"
       .W ";background-color:"_BGCOLOR_";overflow-y:auto"
       .W """"
      W ">"
       D SHOWBIGORD(IND)
       I $G(PRORD) D SHOWRKZORD
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
SHOWBIGORD(IND) ;
 N READY,TIME,SHB,UR,II,REF
 ;;S READY=$$GETP^%W1PRM("READY")
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 D PRS
 I DT=""!(HZ="") Q
 ;
 D OPTBL 
 ;
 I $$HZM^W4MSL(HZ) D KOTMSL(HZ)
 ;
 I $G(PRORD) D  Q
 .N TIME
 .I $D(MPRN(PRN)) D
 ..N READY S READY=1
 ..S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 ...N IND1 S IND1=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ...D VWORD(READY,IND1,1)
 ..S READY=0
 ..S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 ...N IND1 S IND1=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ...D VWORD(READY,IND1,1)
 .W "</table>",! 
 ;
 S READY=$$READY
 D VWORD(READY,IND)
 W "</table>",! 
 Q
 ;
 ;
VWORD(READY,IND,PCTIME)
 N II,REF,DT,PRN,TIME,HZ,SHB
 D PRS
 ;
 S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
 .S REF=$G(^(SHB))
 .I II=1,$G(PCTIME) W "<tr><td>" D TIMEPRN(TIME) W "</td></tr>",!
 .S UR=$L(REF,",")
 .
 .I UR=2 D  Q  ; -- PARIT ROSHI
 ..W "<tr "
 ..I $G(READY) W " style=""background-color:yellow"" "
 ..W "><td>"
 .. D MAINITEM(REF,IND_"~"_SHB)
 ..W "</td></tr>",! 
 .
 .I UR>2 D  Q  ; -- PARIT ROSHI
 ..W "<tr "
 ..I $G(READY) W " style=""background-color:yellow"" "
 ..W "><td>"
 .. D ADDS(REF,IND_"~"_SHB)
 ..W "</td></tr>",!
 Q
 ;
OPTBL ;
 W !,"<table dir="""_$$^%W1DIR_""" width=""100%"" "
 W "border=""0"" cellspacing=""0"" "
 I $D(TBLBORD) W " style=""border:1px solid grey"">",!
 W ">"
 Q
 ;
FIRE(IND) ;
 N DT,PRN,TIME,HZ
 D PRS
 I $G(READY)="" S READY=$$STATRD^W4BONVW
 I $L(TIME) Q $$FIRE^W4BONVW(IND)
 ;
 N FIRE S FIRE=0
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 .I $$FIRE^W4BONVW(IND) S FIRE=1
 Q FIRE
 ;
 ;
PRS ;
 D PRS^%L1FRM(IND,"DT~PRN~TIME~HZ","~")
 Q
 ;
 ;
KOTMSL(HZM) ;
 D PCHDMSL,KAV
 ;
 I $$WOLT(HZM) D
 .D KAV
 .N TXT S TXT=$$HZLAKNOM^W4HZMST(HZM)_" : WOLT"
 .D PCBR(TXT,1)
 ;
 I '$G(@$$^W4PRM@("BONADDR")) Q
 ;
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR'?.P D PCBR($$IR^W4HZMST(HZM),1)
 D KTV
 D KAV
 
 N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 I $L(CMNT) D TRSP D PCCMNT(CMNT)
 D TRSP
 Q
 ;
 ;
TRSP W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
KTV ; 
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR="TAKEAWAY"!($TR(IR,".","")="TAW") Q
 ;
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 N BAIT S BAIT=$P(@$$^W4ORD@(HZM),"\",15)
 N DIRA S DIRA=$P(@$$^W4ORD@(HZM),"\",14)
 N KTV S KTV=$P(@$$^W4ORD@(HZM),"\",3)
 N CNISA S CNISA=$P(@$$^W4ORD@(HZM),"\",16)
 N KOMA S KOMA=$P(@$$^W4ORD@(HZM),"\",13)
 ;
 S KTV=$$SPA^%L1FRM(KTV)
 ;
 I HRAED["SODEXO" D PCCMNT(KTV) G PCIR
 ;
 I '$$BAITDIRA^W4PRM!$$SF^W4PRM D
 .N ADR S ADR=BAIT_$S(DIRA:"/"_DIRA,1:"")_" "_KTV
 .Q:ADR?.P
 .D PCCMNT(ADR)
F ;
 I $$BAITDIRA^W4PRM,'$$SF^W4PRM D
 .I KTV'?.P D PCCMNT(KTV)
 .I $L(BAIT)!$L(DIRA) D PCCMNT(DIRA_" : dxic  "_BAIT_" : zia")
 ;
PCIR I KTV'["TAKEAWAY",IR'="TAKEAWAY",$TR(IR,".","")'="TAW" D
 .I CNISA'=""!(KOMA'="") D
 ..D PCCMNT(CNISA_":dqipk "_KOMA_" :dnew")
 ;
 Q
 ;
 ;
PCCMNT(CMNT) ;
 W "<tr><td "
   W " >"
    W $$H2U^%L1FRM(CMNT)
 W "</td></tr>"
 Q
 ;
 ;
PCBC(TX,PR,COLOR)
 W "<tr><td style=""font-weight:bold;text-align:center"
   I PR W ";font-size:"_($$FSZ+2)
   I $G(COLOR)'="" W ";color:"_COLOR
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>"
 Q
 ;
PCBR(TX,PR,COLOR)
 W "<tr><td style=""font-weight:bold"
   I PR W ";font-size:"_$$^W3FSZ($$FSZ+2)
   I $G(COLOR)'="" W ";color:"_COLOR
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>"
 Q
 ;
KAV ;
 W "<tr><td><hr style=""border 1px dotted grey""></td></tr>",!
 Q
 ;
WOLT(HZM) ;
 Q $$WOLT^W4HZPCHD(HZM)
 ;
PAIDIT(HZM) ;
 Q $$PAIDIT^W4HZPCHD(HZM)
 ;
PCHDMSL ;
 N HD S HD="DELIVERY !"
 I $$TAKEAWAY^W4HZMST(HZM)!$$TAWDLV^W4PRM S HD="TAKE AWAY !"
 I $$SF^W4PRM,$$PAIDIT(HZM) S HD="PAIDIT !"
 D PCBC(HD,1,"green")
 Q
 ;
WNDCOLS(STAM)
 N WNDCOLS
 S WNDCOLS=$$WNDCOLS^W4PRM
 I 'WNDCOLS S WNDCOLS=4
 Q WNDCOLS
 ;
WNDROWS(STAM) ;
 N WNDROWS
 S WNDROWS=$$WNDROWS^W4PRM
 I 'WNDROWS S WNDROWS=2
 I $G(%ARG("BIGSHOW")) S WNDROWS=1
 I $G(%ARG("BIGSHOW"))=0 S WNDROWS=2
 Q WNDROWS
 ;
HGW(STAM) ;
 N ROWS S ROWS=$$WNDROWS
 N HG
 I ROWS=2 S HG=290
 E  S HG=560
 I '$$1024^W4WDSCR S HG=HG*1.2
 Q HG
 ;
HGWBIG(STAM) ;
 ;;I $$WNDROWS=2,$$1024^W4WDSCR Q $$HGW*2 
 ;;I $$WNDROWS=2,'$$1024^W4WDSCR Q $$HGW*2.4
 N HG S HG=$S($$1024^W4WDSCR:540,1:665)
 Q HG
 Q $$HGW
 ;
FSZ(STAM) ;
 S FSZ=12
 I $$WNDCOLS>4 S FSZ=11
 I '$$1024^W4WDSCR S FSZ=FSZ+1
 I $$BIG S FSZ=FSZ+1
 Q FSZ
 ;
ORDYOM(ORDYOM) ; 
 I $G(ORDYOM),$$MSPYOM^W4PRM D
 .N DZ S DZ=$$^W4DZ
 .N N S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  D
 ..I ORDYOM=$G(^(N)) S ORDYOM=N,OK=1
 Q ORDYOM
 ;
GR(CD) ; 
 I $G(CD)="" Q ""
 Q $$SUG^W4P(CD) 
 ;
WEAKCLR(STAM) ; 
 Q "lightgrey" 
 ;
JBDEV ;
 N DEV S DEV=$$^W4MYDVN
 W "<div style=""position:absolute;color:grey;font-size:"_$$^W3FSZ(8)_""" >",!
  W $$NBSP^%L1FRM(3)_"JB="_$G(JB)_"&nbsp;&nbsp;DEV="_DEV_$$NBSP^%L1FRM(5)_"IP="_$G(^dev(DEV))
 W "</div>",!
 Q 
 ;
 ;
SHOWRKZORD ;
 N (JB,%ARG,%REM)
 D TMPRKZORD
 W "<table id=""TblCnc"" dir="""_$$^%W1DIR_""" "
  W "width=""100%"" style=""font-size:"_$$^W3FSZ(12)_""" "
 W ">",!
  D KOTRKZORD
  S N="" F  S N=$O(@TMPRKZORD@(N)) Q:N=""  D TRRKZORD(N)
 W "</table>",!
 K @TMPRKZORD
 Q
 ;
 ;
KOTRKZORD ;
 W "<tr >",!
  W "<td width=""20%""><hr></td>"
  W "<td style=""text-align:center;font-size:"_$$^W3FSZ(16)_";color:brown"">"
   W $$^%W1DICT("ITCONC")
  W "</td>",!
  W "<td width=""20%""><hr></td>"
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>"
 Q
 ;
TRRKZORD(N) ;
 W "<tr style=""color:brown"" >"
  ;;W "<td>"_N_"</td>",!
  N QN S QN=$G(@TMPRKZORD@(N)) 
  W "<td colspan=""2"">"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
  W "<td>"_QN_"</td>"
 W "</tr>",!
 ;
 W "<tr><td colspan=""3"">"
  W "<hr style=""color:lightgrey;border-style:dotted"">",!
 W "</td></tr>",!
 Q
 ;
READY(STAM) ; 
 Q +$$GETP^%W1PRM("READY") 
 ;
WD1(STAM) ; 
 Q "15%" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BONWNO
W4BONWND ; [ 28.04.21 07:22 ] [ 27.04.21 17:18 ] [ 26.04.21 21:29 ] 
 N (JB,%ARG,%REM)
 ;
 D INIT^W4BONVW ; --> DT,READY 
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 ;
 I '$D(MPRN) D  Q
 .W "<script>",!
 . W "MsgA(""PRINTERNOTDEFINED"")",!
 .W "</script>",!
 ;
 I $G(%ARG("IND"))&$G(%ARG("BIG")) D SHOWBIG(%ARG("IND")) Q
 ;
 S WNDROW=4
 I $$1024^W4WDSCR S WNDROW=3
 ;
 S HGW=$$HGW
 D ORDS(DT) ; -->ORDS(),ORDSI(), QNORDS
 ;
 S QNROW=QNORDS-.1\WNDROW+1
 ;
 S K=0
 W "<table id=""TblBon"" dir="""_$$^%W1DIR_""" border=""0"" cellspacing=""20"" style=""width:100%"">",!
  F I=1:1:QNROW D TRWND(I)
 W "</table>",!
 ;
 Q
 ;
TRWND(I) ;
 W "<tr height="""_HGW_"px"" >",!
  F J=1:1:WNDROW D TDWND(I,J)
 W "</tr>",! 
 Q
 ;
TDWND(I,J) ;
 S K=K+1
 S IND=$G(ORDSI(K))
 D PRS
 W "<td width=""25%"">"
  N HGKOT S HGKOT=30
  D OPTBL
   W "<tr height="""_HGKOT_"px"">"
    W "<td>"
     D KOT(IND)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>",!
    W "<td>",!
      W "<div id=""wnd-"_K_""" dir="""_$$^%W1DIR_""" name=""divwnd"" "
       N WD S WD=98
       N HG S HG=(HGW-HGKOT)_"px"
       W "style=""height:"_HG_";width:"_WD_"%;border:ridge 3px grey"
       D 
       .N BGCOLOR S BGCOLOR="white" 
       .I $G(READY) S BGCOLOR="yellow"
       .I $$IFORD(K) W ";background-color:"_BGCOLOR_";overflow-y:auto"
       W """"
       W " onScroll=""OnScroll('"_K_"')"" "
      W ">"
       D SHOWORD(K)
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
ORDS(DT,PRN) ;
 K ORDS
 N TIME,HZ,IND,I,J,K
 ;
 S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D
 .S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 ..S HZ="" F  S HZ=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ)) Q:HZ=""  D
 ...I $E($G(%ARG("ORD")))="T",$$NMB^W4HZMST(HZ)'=$E(%ARG("ORD"),2,20) Q  ; -- TABLE
 ...S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ...I $G(%ARG("FIRE")),'$$FIRE(IND) Q
 ...S ORDS(TIME,HZ)=IND 
 ;
 S HZ="",K=0
 ;
 S TIME="" F  S TIME=$O(ORDS(TIME)) Q:TIME=""  D
 .F  S HZ=$O(ORDS(TIME,HZ)) Q:HZ=""  S K=K+1 D
 ..S ORDSI(K)=ORDS(TIME,HZ)
 ;
 S QNORDS=K
 Q
 ;
 ;
SHOWORD(K) ;
 N DT,PRN,TIME,HZ,SHB,REF,UR
 ;
 S IND=$G(ORDSI(K))
 D PRS
 ;
 I DT="" S DT=$$^W4DZ
 I (PRN="")!(TIME="")!(HZ="") Q
 ;
 D OPTBL
 I $$HZM^W4MSL(HZ) D KOTMSL(HZ)
 ;
 S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
 .S REF=$G(^(SHB))
 .S UR=$L(REF,",")
 .I UR=2 D  Q  ; -- PARIT ROSHI
 .. W "<tr><td>"  
 ..  D MAINITEM(REF,IND_"~"_SHB)
 .. W "</td></tr>",!
 .I UR>2 D  Q  ; -- PARIT ROSHI
 .. W "<tr><td>"  
 ..  D ADDS(REF,IND_"~"_SHB) Q  ; -- PARIT ROSHI
 .. W "</td></tr>",!
 W "</table>",!
 Q
 ;
 ;
MAINITEM(REF,IND) ;
 N ST,NM,QN,HR,CD
 S ST=$G(@REF)
 Q:ST=""
 S CD=$P(ST,"\")
 S NM=$P(ST,"\",3)
 S QN=$P(ST,"\",5)
 S HR=$P(ST,"\",8)
 N SZ S SZ=12 I $$BIG S SZ=14
 ;
 D OPTBL
  I $G(II)>1 D
  .W "<tr><td colspan=""3"">"
  . W "<hr style=""border:1px lightgrey dotted"">",!
  .W "</td></tr>",! 
  ;
  W "<tr>"
  W " <td style=""font-size:"_$$^W3FSZ(SZ)_";font-weight:bold;width:70%"
   I $$ISFIRE^W4FIRE(CD) W ";color:red"
   W """ "
  W ">"
   W $$H2U^%L1FRM(NM)
  W "</td>",!
  ;
  W "<td >"
   D
   .I $$ISFIRE^W4FIRE(CD) W "&nbsp;" Q
   .W "<span style=""font-weight:bold;border:1px grey dotted"">"
   . W $$NBSP^%L1FRM(2)_QN_$$NBSP^%L1FRM(2)
   .W "</span>"
  W "</td>"
  ;
  D
  .I $$ISFIRE^W4FIRE(CD) W "&nbsp;" Q
  .D TDITREADY^W4BONVW(IND)
 ;
 W "</tr>",! 
 .; 
 I $L(HR) D
 .W "<tr>"
 . W "<td colspan=""2"" style=""font-size:"_$$^W3FSZ(SZ)_";color:brown;font-weight:bold"">"
 .  W $$H2U^%L1FRM(HR)
 . W "</td>"
 ;
 W "</tr>",! 
 W "</table>",!
 Q
 ;
 ;
ADDS(REF,IND) ;
 N UR,NMT,QNT,HRT
 S UR=$L(REF,",") Q:UR<3
 N ST S ST=@REF
 N CDT S CDT=$P(REF,",",3)
 ;
 I UR=3,$D(@REF)=1 D  Q  ; --- ADDS NORMAL
 .S NMT=$P(ST,"\") 
 .S QNT=$P(ST,"\",3)
 .S HRT=$P(ST,"\",4)
 .D PCADD(NMT,QNT,HRT,"darkblue")
 ; 
 I UR=4 D
 .S CDT=$P(ST,"\") I CDT D  Q
 ..S QNT=$P(ST,"\",3)
 ..S NMT=$P(ST,"\",2)
 ..S HRT=$P(ST,"\",6)
 ..D PCADD(NMT,QNT,HRT,"darkblue")
 .
 .S CDT=$P(ST,"\",4) I CDT D  Q
 ..S QNT=$P(ST,"\",3)
 ..S NMT=$P(ST,"\",5)
 ..S HRT=$P(ST,"\",6)
 ..D PCADD2(NMT,QNT,HRT,"darkgreen")
 Q
 ;
 ;
IFORD(K)
 N DT,PRN,TIME,HZ,SHB,REF,UR
 S IND=$G(ORDSI(K))
 D PRS
 I DT=""!(PRN="")!(TIME="")!(HZ="") Q 0
 Q $D(@$$^W4BON(READY)@(DT,PRN,TIME,HZ))
 ;
 ;
KOT(IND,BIG) ;
 N DT,PRN,TIME,HZ,BGKOT
 D PRS
 Q:HZ<1
 S BGKOT=$$BGKOT(IND)
 D OPTBL
  W "<tr style=""background-color:"_BGKOT_";color:white;font-weight:bold"">",!
   W "<td width=""10%"">&nbsp;</td>"
   ;
   W "<td width=""40%"">"
    W $$^%W1DICT("ORDER")_" "_HZ
   W "</td>",!
   ;
   W "<td align=""center"" width=""40%"" >"
   D
   .N NMB S NMB=$$NMB^W4HZMST(HZ)
   .I $$^W4MSD(NMB) W $$^%W1DICT("TABLE")_" "_NMB Q
   .I $$^W4MSL(NMB) D
   ..W NMB_" "_$$H2U^%L1FRM($$MAZMIN^W4HZMST(HZ))
   W "</td>",!
   ;
   D TDREADY^W4BONVW(IND)
   ;
   W "<td>"
     I '$G(BIG) W "<img src=""w4bigscr.png"" onClick=""BigScr('"_IND_"')"" />"
     I $G(BIG) W "<img src=""w4smlscr.png"" onClick=""CloseBigScr('"_IND_"')"" />"
   W "</td>"
  W "</tr>",!
  ;
  I $G(TIME)'="" D TMPRN(TIME,IND)
  ;
 W "</table>",! 
 Q
 ;
 ;
BGKOT(IND) ;
 I $$FIRE(IND) Q "red"
 Q "darkred"
 ;
TMPRN(TIME,IND) ;
 N DT,PRN,TIME,HZ
 S BGCOLOR=$$BGKOT(IND)
 D PRS
 ;
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
  W "<tr style=""background-color:"_BGCOLOR_";color:white;font-weight:bold"">",!
   W "<td width=""10%"">&nbsp;</td>"
   W "<td >"
   N SM S SM=""
   W SM_$$^%W1DICT("PRINTTIME")_" "_$$T^%L1TIME(TIME)
   W "</td>"
   ;
   I $$HZM^W4MSL(HZ) D
   .W "<td colspan=""3"" style=""color:yellow"">"
   .W $$NBSP^%L1FRM(5)
   .W $$^%W1DICT("TO-")_" "_$$SHAA^W4HZMST(HZ)_" "_$$TRH^W4HZMST(HZ)
   .W "</td>"
   ; 
   I $$HZM^W4MSD(HZ) D
   .W "<td colspan=""3"">"
   . W "&nbsp;"
   .W "</td>"
  W "</tr>",!
 Q
 ;
TIMEPRN(TIME) ;
 N BGCOLOR S BGCOLOR="grey"
 I TIME?6N.N S TIME=$E(TIME,1,5)_","_$E(TIME,6,10)
 D OPTBL
  W "<tr style=""background-color:"_BGCOLOR_";color:white;font-weight:bold"">",!
   W "<td align=""center"">"
   W $$^%W1DICT("PRINTTIME")_" "_$$T^%L1TIME(TIME)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCADD(NMT,QNT,HRT,COLOR) ;
 N SZ S SZ=11 I $$BIG S SZ=12
 D OPTBL
  W "<tr style=""color:"_COLOR_""">"
  W " <td style=""font-size:"_$$^W3FSZ(SZ)_";font-weight:bold;width:70%"">"
   W " + "_$$H2U^%L1FRM(NMT)
  W "</td>",!
  ;
  W "<td>"
   W $$^W4SHOWPZ(QNT)
  W "</td>"
 W "</tr>",! 
 ; 
 I $L(HRT) D
 .W "<tr>"
 . W "<td colspan=""2"" "
 .  W "style=""font-size:"_$$^W3FSZ(SZ)_";color:brown;font-weight:bold"" "
 . W ">"
 .  W $$H2U^%L1FRM(HRT)
 . W "</td>"
 .W "</tr>",! 
 ;
 W "</table>",!
 Q
 ;
 ;
PCADD2(NMT,QNT,HRT,COLOR) ;
 D OPTBL
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td>"
    D PCADD(NMT,QNT,HRT,COLOR) ;
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
BIG(STAM) ;
 Q $G(%ARG("BIG"))!$G(%ARG("ORD"))
 ;
 ;
SHOWBIG(IND) ;
 N DT,PRN,TIME,HZ,SHB,REF,UR
 ;
 S READY=+$$GETP^%W1PRM("READY")
 D PRS
 S %ARG("BIG")=1
 ;
 I 'PRN S PRN=$O(MPRN("")) S $P(IND,"~",2)=PRN
 I DT=""!(PRN="")!(HZ="") Q
 ;
 N HGKOT S HGKOT=30
  D OPTBL
   W "<tr height="""_HGKOT_"px"">"
    W "<td>"
     D KOT(IND,1)
    W "</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>",!
      W "<div dir="""_$$^%W1DIR_""" name=""divwnd"" "
      D
       .N HGW S HGW=$$HGW*2.45
       .I $$1024^W4WDSCR S HGW=$$HGW*2
       .W "style=""height:"_HGW_";width:100%;border:ridge 3px grey"
       .N BGCOLOR S BGCOLOR="white" 
       .I $G(READY) S BGCOLOR="yellow"
       .W ";background-color:"_BGCOLOR_";overflow-y:auto"
       .W """"
      W ">"
       D SHOWBIGORD(IND)
      W "</div>",! 
    W "</td>",!
   W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
SHOWBIGORD(IND) ;
 N READY,TIME,SHB,UR,II,REF
 S READY=$$GETP^%W1PRM("READY")
 D DEVLIST^W4BONVW($$^W4MYDVN) ; --> MPRN()
 D PRS
 I DT=""!(HZ="") Q
 ;
 D OPTBL 
 ;
 I $$HZM^W4MSL(HZ) D KOTMSL(HZ)
 ;
 I $G(TIME)="" D  Q
 .S PRN="" F  S PRN=$O(@$$^W4BON(READY)@(DT,PRN)) Q:PRN=""  I $D(MPRN(PRN)) D
 ..S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 ...N IND1 S IND1=DT_"~"_PRN_"~"_TIME_"~"_HZ
 ...D VWORD(READY,IND1,1)
 .W "</table>",! 
 ;
 D VWORD(READY,IND)
 W "</table>",! 
 Q
 ;
 ;
VWORD(READY,IND,PCTIME)
 N II,REF,DT,PRN,TIME,HZ,SHB
 D PRS
 ;
 S SHB="" F II=1:1 S SHB=$O(@$$^W4BON(READY)@(DT,PRN,TIME,HZ,SHB)) Q:SHB=""  D
 .S REF=$G(^(SHB))
 .I II=1,$G(PCTIME) W "<tr><td>" D TIMEPRN(TIME) W "</td></tr>",!
 .S UR=$L(REF,",")
 .
 .I UR=2 D  Q  ; -- PARIT ROSHI
 ..W "<tr><td>"
 .. D MAINITEM(REF,IND_"~"_SHB)
 ..W "</td></tr>",! 
 .
 .I UR>2 D  Q  ; -- PARIT ROSHI
 ..W "<tr><td>"
 .. D ADDS(REF,IND_"~"_SHB)
 ..W "</td></tr>",!
 Q
 ;
OPTBL ;
 W !,"<table dir="""_$$^%W1DIR_""" width=""100%"" cellspacing=""0"">",!
 Q
 ;
FIRE(IND) ;
 N DT,PRN,TIME,HZ
 D PRS
 I $G(READY)="" S READY=$$STATRD^W4BONVW
 I $L(TIME) Q $$FIRE^W4BONVW(IND)
 ;
 N FIRE S FIRE=0
 S TIME="" F  S TIME=$O(@$$^W4BON(READY)@(DT,PRN,TIME)) Q:TIME=""  D
 .S IND=DT_"~"_PRN_"~"_TIME_"~"_HZ
 .I $$FIRE(IND) S FIRE=1
 Q FIRE
 ;
 ;
PRS ;
 D PRS^%L1FRM(IND,"DT~PRN~TIME~HZ","~")
 Q
 ;
HGW(STAM) ;
 Q 290
 ;
 ;
KOTMSL(HZM) ;
 D PCHDMSL,KAV
 ;
 I $$WOLT(HZM) D
 .D KAV
 .N TXT S TXT=$P($$HZMLAKNOM^W4HZMST(HZM),"^")_" : WOLT"
 .D PCBR(TXT,1)
 ;
 I '$G(@$$^W4PRM@("BONADDR")) Q
 ;
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR'?.P D PCBR($$IR^W4HZMST(HZM),1)
 D KTV
 D KAV
 
 N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 I $L(CMNT) D TRSP D PCCMNT(CMNT)
 D TRSP
 Q
 ;
 ;
TRSP W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
KTV ; 
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR="TAKEAWAY"!($TR(IR,".","")="TAW") Q
 ;
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 N BAIT S BAIT=$P(@$$^W4ORD@(HZM),"\",15)
 N DIRA S DIRA=$P(@$$^W4ORD@(HZM),"\",14)
 N KTV S KTV=$P(@$$^W4ORD@(HZM),"\",3)
 N CNISA S CNISA=$P(@$$^W4ORD@(HZM),"\",16)
 N KOMA S KOMA=$P(@$$^W4ORD@(HZM),"\",13)
 ;
 S KTV=$$SPA^%L1FRM(KTV)
 ;
 I HRAED["SODEXO" D PCCMNT(KTV) G PCIR
 ;
 I '$$BAITDIRA^W4PRM!$$SF^W4PRM D
 .N ADR S ADR=BAIT_$S(DIRA:"/"_DIRA,1:"")_" "_KTV
 .Q:ADR?.P
 .D PCCMNT(ADR)
 ;
 I $$BAITDIRA^W4PRM,'$$SF^W4PRM D
 .I KTV'?.P D PCCMNT(KTV)
 .I $L(BAIT)!$L(DIRA) D PCCMNT(DIRA_" : dxic  "_BAIT_" : zia")
 ;
PCIR I KTV'["TAKEAWAY",IR'="TAKEAWAY",$TR(IR,".","")'="TAW" D
 .I CNISA'=""!(KOMA'="") D
 ..D PCCMNT(CNISA_":dqipk "_KOMA_" :dnew")
 ;
 Q
 ;
 ;
PCCMNT(CMNT) ;
 W "<tr><td "
   W " >"
    W $$H2U^%L1FRM(CMNT)
 W "</td></tr>"
 Q
 ;
 ;
PCBC(TX,PR,COLOR)
 W "<tr><td style=""font-weight:bold;text-align:center"
   I PR W ";font-size:"_$$^W3FSZ(14)
   I $G(COLOR)'="" W ";color:"_COLOR
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>"
 Q
 ;
PCBR(TX,PR,COLOR)
 W "<tr><td style=""font-weight:bold"
   I PR W ";font-size:"_$$^W3FSZ(14)
   I $G(COLOR)'="" W ";color:"_COLOR
   W """ >"
    W $$H2U^%L1FRM(TX)
 W "</td></tr>"
 Q
 ;
KAV ;
 W "<tr><td><hr style=""border 1px dotted grey""></td></tr>",!
 Q
 ;
WOLT(HZM) ;
 Q $$WOLT^W4HZPCHD(HZM)
 ;
PAIDIT(HZM) ;
 Q $$PAIDIT^W4HZPCHD(HZM)
 ;
PCHDMSL ;
 N HD S HD="DELIVERY !"
 I $$TAKEAWAY^W4HZMST(HZM)!$$TAWDLV^W4PRM S HD="TAKE AWAY !"
 I $$SF^W4PRM,$$PAIDIT(HZM) S HD="PAIDIT !"
 D PCBC(HD,1,"green")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BTN
W4BTN(VL,PROC,COLOR,EV,SZ,PDN,WD) ; [ 18.12.25 17:03 ] [ 25.11.24 12:57 ] [ 18.02.24 14:57 ] 
 I '$G(SZ) S SZ=18-$$1024^W4WDSCR
 I '$G(PDN) S PDN=4
 W "<input type=""button"" class=""btnrnd"" "
  I $G(VL)="SUBMIT" W " id=""sbmbtn"" "
  N VL1
  D
  .I $G(VL)["&#" S VL1=VL Q
  .I $E(VL)="!" S VL1=$E(VL,2,200) Q
  .S VL1=$$^%W1DICT(VL)
  ;
  I $L($G(VL)) W " value="" "_VL1_" "" "
  I $$^W4TABLET=2 S PDN=7
  D
  .W " style="""
  .I $L($G(COLOR)) D
  ..N BGCOLOR I COLOR["<>" D
  ...S BGCOLOR=$P(COLOR,"<>")
  ...I $L(BGCOLOR) W "background-color:"_BGCOLOR_";"
  ...S COLOR=$P(COLOR,"<>",2) 
  ..W "color:"_COLOR_";"
  .I $G(WD) W "width:"_WD_"px;"
  .W "font-size:"_$$^W3FSZ(SZ)_";"
  .W $$FONTFM^W4CSS1_";"
  .W "padding:"_PDN_"px"
  .W """ "
  I $L($G(PROC)) W $$^W4TOUCH_"="""_PROC_""" "
  I $G(EV) W " onKeyPress=""OnKeyPress(event)"" "
 W "/>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BUTTON
W4BUTTON(ID,VL,PROC,STYLE,DOP,CLASS,PDN) ; [ 22.06.25 03:50 ] [ 19.06.25 19:35 ] [ 03.06.25 11:02 ] 
 W $$BTN(ID,VL,$G(PROC),$G(STYLE),$G(DOP),$G(CLASS),$G(PDN))
 Q
 ;
BTN(ID,VL,PROC,STYLE,DOP,CLASS,PDN)
  I $G(PDN)="" S PDN=$S($$^W4TABLET=1:1,$$1024^W4WDSCR:3,1:4)
  N WD S WD=$P($G(DOP),",",4)
  N VL1 S VL1=VL
  I VL["&#" S VL1=VL
  E  S VL1=$$^%W1DICT(VL)
  N ST
  S ST="<input type=""button"" id="""_ID_""" value="""_VL1_""" "
   N PADTOP S PADTOP=$$^W4KF(PDN+$$^W4TABLET-($$1024^W4WDSCR*2))
   I $G(STYLE)="" S STYLE="font-size:"_$$^W3FSZ(12)
   S STYLE=$G(STYLE)_";text-align:center"
   I WD S STYLE=$G(STYLE)_";width:"_$$^W4KF(WD)
   ;
   I $L($G(PROC)) D
   .I $D(W4BUTTON("CLICK")) S ST=ST_" onClick="""_PROC_""" " Q
   .S ST=ST_" "_$$^W4TOUCH_"="""_PROC_""" "
   ;
   I $L($G(CLASS)) S ST=ST_" class="""_CLASS_""" "
   S ST=ST_" style="""_STYLE_""" "
  S ST=ST_">"
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4BZBRA
W4BZBRA(VM) ; [ 30.07.26 19:16 ] [ 14.12.25 16:36 ] [ 07.12.25 16:10 ] 
 N (JB,%ARG,%REM,VM)
 S VM=$G(VM)
 D ^%L1TS
 S FILE="/tmp/BZBRA"
 ;;I $$BOLET(VM) S FILE="/mnt/mishkal/plu.txt"
 I $$BOLET(VM) S FILE="/home/gtmuser/app/mumps/1/mishkal/plu.txt"
 ;
 O FILE:(NEW:REWIND:WRITE)
 S GLPAR=$$^W4GL("PAR")
 ;
 S N="" F  S N=$O(@GLPAR@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I $$BOLET(VM),'$$MSK^W4P(N) Q
 .S SHEM=$$SHEM^W4P(N)
 .S SHEM=$$HBR^%L1FRM(SHEM,20)
 .;;S SHEM=$$INVH^%L1FRM(SHEM)
 .S SHEM=$TR(SHEM,TS0,TSS)
 .S MSK=$$MSK^W4P(N) S:MSK="k" MSK=1
 .;;S N1=$E(N,$L(N)-5,$L(N))
 .Q:$L(+N)>6
 .S N1=+N
 .S ST=$TR($J(N1,13)," ",0)_" "_SHEM_" "_+MSK_" "
 .S MH=$P(A,"**",2)
 .S ST=ST_$$NUM(MH,6)_" "
 .S MHAL=MH ;$$MHAL^W4P(N)
 .S ST=ST_$$NUM(MHAL,6)_" "
 .S DEP=$$DEP^W4P(N)
 .S ST=ST_$TR($J(DEP,2)," ",0)
 .U FILE W ST,!
 ;
 C FILE
 ;
 I $$BOLET(VM) ZSY "sudo unix2dos "_FILE
 Q
 ;
NUM(RKV,LN)
 S RKV=$J(RKV,LN,2)
 S RKV=$TR(RKV,".","")
 Q $TR($J(RKV,LN)," ",0)
 ;
BOLET(VM) ;
 I $G(VM)=1 Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CABIT
W4CABIT(STRIN) ; [ 21.07.14 10:45 ] [
 S STRIN=$$STRINBIT^W4PAYCA(STRIN)
 I STRIN?1U.U S ER=STRIN,STRIN="" Q
 D TV^W4PAYCA
 Q

W4CAEQ
W4CAEQ(STR1,STR2) ; [ 10.07.18 19:22 ] [ 17.02.15 18:33 ] [
 N VIZ S VIZ=$E(STR1,5,23)
 I '$$SPA^%L1FRM(VIZ) Q 0
 I $E(STR1,1,33)=$E(STR2,1,33)&($E(STR1,36,64)=$E(STR2,36,64)) Q 1
 Q 0
 

W4CAJ
W4CAJ ; [ 16.09.25 12:04 ] [ 18.03.21 18:03 ] [ 21.04.12 18:52 ] 
 N (JB,%ARG,%REM)
 D M
 W "<div align=""center"">",!
  W "<br>",!
  ;
  W "<span style=""color:darkred;font-size:"_$$^W3FSZ(14)_""">"
   W $$^%W1DICT("ENTERPAYMENTDETAILS")
  W "</span>",!
  W "<br><br>",!
  ;
  W "<table dir="""_$$^%W1DIR_""" cellpadding=""5"" >",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("PAYMENTSUM")
   W "</td>"
   W "<td>"
    W "<input id=""sum"" size=""6"" value="""_$G(%ARG("SUM"))_""" onFocus=""this.select()"">"
   W "</td>"
  W "</tr>",!
  ;
  W " <tr>"
   W " <td>"_$$^%W1DICT("CHOICECREDITCARDKIND")_"</td>"
  ;
   W " <td>"
   W "  <select id=""crkind"">",!
    F J=1:1:6 D
    .W "  <option value="""_J_""">"_$$^%W1DICT(M(J))_"</option>",!
   W "  </select>",!
   W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
    W $$^%W1DICT("PAYMENTSNUMBER")
  W " </td>"
  W " <td>"
   W " <select id=""pynmb"" onChange=""PaymNumberChanged()"">",!
    F I=1:1:18 W "<option value="""_I_""">"_I_"</option>",!
   W " </select>",!
  W " </td>",!
  W "</tr>",!
  ;
  W "<tr>"
   W " <td>",!
    W $$^%W1DICT("FIRSTPAYMENT")
   W " </td>",!
   W "<td>"
    W "<input id=""first"" size=""6"" disabled=""disabled"">"
   W "</td>"
  W "</tr>",!
  W "</table>",!
  ;
  W "<br><br>",!
  ;
  W "<table>",!
   W "<tr>",!
    W " <td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
    W "</td>"
    W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
    W "</td>"
   W "</tr>",!
  W "</table>",!
  Q
  ;
  ;
SAVE(PRM) ;
 D PUT^%W3DEB("W4CAJ-SAVE","PRM=PRM")
 N SUGCA,SUM,FIRST,PYNMB,NEXT
 S SUM=$P(PRM,";")
 S SUGCA=$P(PRM,";",2)
 S PYNMB=$P(PRM,";",3)
 S FIRST=$P(PRM,";",4)
 S NEXT=""
 I PYNMB>1 D
 .S NEXT=$J(SUM-FIRST/(PYNMB-1),2,2)
 ;
 S $P(S21,"*",1)="$V"_SUGCA
 S $P(S21,"*",6)=SUM
 S $P(S21,"*",7)=SUM
 S $P(S21,"*",8)=$J(FIRST,2,2)*100
 S $P(S21,"*",9)=PYNMB-1
 S $P(S21,"*",10)=$J(NEXT,2,2)*100
 ;
 D PUT^%W3DEB("W4CAJ-SAVE","S21=S21")
 D PUT^%W1PRM("S21",S21)
 Q
 ;
M ;
 N I F I=1:1:9 S M(I)=$$^W4VT(I)
 Q
 
 
 

W4CALC
W4CALC(HZM) ; [ 16.01.22 11:11 ] [ 30.11.21 12:06 ] [ 27.10.20 16:34 ] 
 N (JB,%ARG,%REM,HZM,STNEW) D ^W4IN
 I $G(HZM)<0 Q
 I $G(HZM)="" Q
 I '$$^W4HZFULL(HZM) Q
 I $$^W4CLOSE(HZM) Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S GLB=$$^W4ORD_"(HZM)",NMB=$$NMB^W4HZMST(HZM),PRMHNMB=NMB
 S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 N I,ST,TSF,PAR,PAR1,SUM1,KAM,MH,SUM,HRP,SUG,N,PROTH,PROTH0,TSFHN
 ;
 S:'$G(STNEW) STNEW=1
 ;
 S PROTH0=0 I $G(NMB),+$$AH^W4L(NMB)=100,$$^W4PRMAHP(NMB) S PROTH0=1
 ;
 F I=1:1 Q:'$D(@GLB@(I))  D
 .S ST=$G(^(I))
 .D G^W4SCV(HZSCR,ST)
 .I $$NOMOD(ST),'STNEW Q  ;WAS '$$^W4OTH
 .S TSF=0,TSFHN=0,STNEW=1,PROTH=0
 .I $E(PAR) K TSF0
 .
 .I $L(PAR),$$^W4PRTBH(PAR),$P($G(@GLB@(I)),"\",2)'="*" D
 ..S $P(@GLB@(I),"\",2)=$P($G(@GLB@(I)),"\",2)_"*"
 .
 .I $G(PAR),'$$^W4OTH(HRP),'$$^W4PRMAHP(NMB),$P(ST,"\",4)="" D  ; -- REST MH
 ..S $P(@GLB@(I),"\",4)=$$MH^W4P(PAR)
 ..S MH=$$MH^W4P(PAR)
 .
 .I $G(PAR),$P(ST,"\",5)<0,'$D(@GLB@("BIT",I)),TSHL'<0 D SETBIT(I) ; REST "BIT"
 .
 .I $E(PAR)="-",PAR["%",$G(SUM1) D  Q
 ..N SUM0 S SUM0=SUM1
 ..I $P(ST,"\",12) S SUM0=SUM0-$G(TSF0) ; -- BEZ TOSEF ESLI FLAG NE BRAT ANAHU S TSF
 ..S $P(@GLB@(I),"\",7)=$J(SUM0*PAR*.01,2,2)
 .
 .N N S N="" F  S N=$O(@GLB@(I,N)) Q:N=""  D
 ..I '($D(^(N))#2) D
 ...S $P(@GLB@(I,N),"\")=$$SHEM^W4P(N)
 ...S $P(@GLB@(I,N),"\",3)=1
 ..I PROTH S $P(@GLB@(I,N),"\",2)=0
 ..S STSF=$$SUMTSF(GLB,I,N)
 ..S TSF=TSF+STSF I '$$^W4PRTBH(N) S TSFHN=TSFHN+STSF
 .
 .I PROTH0 S TSF=0
 .S SUM1=KAM*MH+TSF
 .S TSF0=TSF
 .S $P(@GLB@(I),"\",6,7)=$J(TSF,2,2)_"\"_$J(SUM1,2,2)
 .S SUM1=KAM*MH+TSFHN ;  -- FOR CALC DISC
 ;
 N SHNH S SHNH=$$SHNH^W4HZMST(HZM)
 D PUT^W4HZMST(HZM,"HNH",SHNH)
 N SHUL S SHUL=$$SSHUL^W4HZMST(HZM) ;;-$$SODEFMZ^W4HZMST(HZM) ; -- 27.10.20 -> COMMENT
 D PUT^W4HZMST(HZM,"SHUL",SHUL)
 D PUT^W4HZMST(HZM,"SHULA",$$SAS^W4HZMST(HZM))
 D PUT^W4HZMST(HZM,"DMSH",$$TOTDMS^W4HZMST(HZM))
 D PUT^W4HZMST(HZM,"TSHL",$$TOTORD^W4HZMST(HZM))
 ;
 D PARTIGUL(HZM)
 ;
 N MZM S MZM=$$SMZ^W4HZMST(HZM)-$$SODEFMZ^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB"),"\",2)=MZM
 S $P(@$$^W4ORD@(HZM,"CB"),"\",3)=$$SCH^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB"),"\",4)=$$SCA^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB"),"\",5)=$$SAS^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB"),"\",9)=$$STL^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB"),"\",10)=$$STIP^W4HZMST(HZM)
 ;
 I $G(JB),$$D^W3TMPORD(JB)=11 D
 .D PUT^W3HZMST(JB,"HNH",SHNH)
 .D PUT^W3HZMST(JB,"SHUL",$$SSHUL^W4HZMST(HZM))
 .D PUT^W3HZMST(JB,"SHULA",$$SAS^W4HZMST(HZM))
 .D PUT^W3HZMST(JB,"DMSH",$$TOTDMS^W4HZMST(HZM))
 .D PUT^W3HZMST(JB,"TSHL",$$TOTORD^W4HZMST(HZM))
 ;
 I $$MYCHECK^W4PRM,$G(JB) J SYNCORD^WMCHFUNC(HZM,JB)
 Q
 ;
 ;
SUMTSF(GLB,SH,PRT) ;--- PRT - CODP LEVEL 1
 N ST0,SUM,PAR,CD,SUMHN
 S PAR=$P($G(@GLB@(SH)),"\") ; -- MAIN
 S COLP=$P($G(@GLB@(SH)),"\",5) ; QN MAIN
 ;
 S ST1=$P($G(@GLB@(SH,PRT)),"\",2,25) ;
 ;
 I $E(PRT,1,2)="A-" Q 0
 ;
 S SUM=0,SUMHN=0 ; -- SUMHN -- TOSAFOT SHE MAGIA LAHEM ANAHA
 ;
 I $D(@GLB@(SH,PRT))<10 D
 .I '$P(ST1,"\",2),ST1["\+\" S SUM=$P(ST1,"\",6)*COLP
 .E  S SUM=$P(ST1,"\")*$P(ST1,"\",2)
 ;
 N MIN S MIN=1
 I $P($G(@GLB@(SH,PRT)),"\",3)<0 S MIN=-1
 ;
 I $L($G(PRT)),$L($G(PAR)) D
 .N PRTSF,A,CD,QN3,MHT S PRTSF=""
 .F  S PRTSF=$O(@GLB@(SH,PRT,PRTSF)) Q:PRTSF=""  D
 ..S A=$G(^(PRTSF))
 ..S CD=$P(A,"\")
 ..S QN3=$P(A,"\",3) I QN3["*" S QN3=QN3*$P(QN3,"*",2)
 ..S MHT=$P(A,"\",7)
 ..;;I MIN<0,QN3>0 S QN3=-QN3
 ..I CD D
 ...N INDBIT S INDBIT=SH_"-"_PRT_"-"_PRTSF
 ...I QN3<0,'$D(@GLB@("BIT",INDBIT)) D SETBIT(INDBIT)
 ..
 ..;;I '$G(QN3) S QN3=MIN
 ..S SUM=SUM+($P(A,"\",7)*QN3)
 ..;;W "A="_A_"  QN3="_QN3_"  SUM="_SUM,!
 Q SUM
 ;
 ;
NOMOD(ST)
 I $P(ST,"\",$L(ST,"\"))["@@" Q 1
 Q 0
 ;
SETBIT(I) ;
 N DT,T,DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 S DT=$$^%L1DC($P(DATCB," "),3)
 S T=$P(DATCB,"  ",2) S T=T*3600+($P(T,":",2)*60)
 S @$$^W4ORD@(HZM,"BIT",I)="00000*00000*0**"_DT_","_T_"*-*"
 Q
 ;
PARTIGUL(HZM) ;
 I $D(@$$^W4ORD@(HZM,"PART"))<10 Q
 N IGUL S IGUL=0
 N N S N=""  F  S N=$O(@$$^W4ORD@(HZM,"PART",N)) Q:N=""  D
 .S IGUL=IGUL+$P($G(^(N)),"~",19)
 ;
 D PUT^W4HZMST(HZM,"HNH2",IGUL)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CALLID
W4CALLID ; [ 09.12.17 19:21 ] [ 30.10.17 14:02 ] [ 29.10.17 16:09 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 I $G(CALLID)="" Q
 I $G(PHONEID)="" Q
 S H=$$^W4DZ
 L +@$$^W4GL("W4CALLID")@(H,PHONEID)
 S LAST=$O(@$$^W4GL("W4CALLID")@(H,PHONEID,99999),-1)
 S CALLOLD=""
 I LAST S CALLOLD=$P($G(@$$^W4GL("W4CALLID")@(H,PHONEID,LAST)),"\")
 ;;I CALLOLD=CALLID Q
 ;;I $$WAS(CALLID) Q
 S NP=LAST+1
 S @$$^W4GL("W4CALLID")@(H,PHONEID,NP)=CALLID_"\"_$H_"\0"
 I NP>2 K @$$^W4GL("W4CALLID")@(H,PHONEID,NP-2)
 L -@$$^W4GL("W4CALLID")@(H,PHONEID)
 Q
 ;
 ;
GET(DV) ;
 N (JB,%ARG,DV)
 S PHONEID=$G(@$$^W4GL("W4POSTEL")@(DV)) I PHONEID="" Q 0
 S END=0,TEL=0
 ;
 S H=$$^W4DZ
 S NP="" F  S NP=$O(@$$^W4GL("W4CALLID")@(H,PHONEID,NP)) Q:NP=""  D  Q:END
 .S A=$G(^(NP))
 .I $P(A,"\",3) Q
 .S $P(^(NP),"\",3)=1
 .S TEL=$P(A,"\")
 .I TEL["@" S TEL=$P(TEL,"@")
 .I TEL[":" S TEL=$P(TEL,":",2)
 .I $L(TEL)>3 S END=1
 I TEL="" S TEL=0
 Q TEL
 ;
WAS(TEL) ; 
 N H,GLCALL,SHL,NP,A,WAS S H=$$^W4DZ
 S WAS=0
 S GLCALL=$$^W4GL("W4CALLID")_"("_H_")"
 ;
 S SHL="" F  S SHL=$O(@GLCALL@(SHL)) Q:SHL=""  D  Q:WAS
 .S NP="" F  S NP=$O(@GLCALL@(SHL,NP)) Q:NP=""  D  Q:WAS
 ..S A=$G(^(NP))
 ..S CALL=$P(A,"\")
 ..I TEL=CALL,$P(A,"\",3)=0 S WAS=1
 Q WAS
 
 
 
 
 
 

W4CARDI0
W4CARDIT(CODE,PRM) ; [ 15.06.22 09:27 ] [ 14.06.22 13:46 ] [ 13.01.22 17:29 ] 
 N (JB,%ARG,CODE,PRM)
 I $G(PRM)="" S PRM="IN"
 S CODE=$G(CODE)
 D MSD
 N TDWIDTH,TDALIGN,TDDIR
 D PUT^%W3DEB("W4CARDIT","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 K @$$^W4MAIN("TMPPRT")
 ;
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 D PUT^%W1PRM("CODE",CODE)
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"
   W $$H2U^%L1FRM($$^W3MSDG(+MSD))_" - "_$$^%W1DICT("ITEMCARD")
 W "</td></tr>",!
 W "</table>",!
 ;
 W "<br>",!
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br><br>",!
 ;
 I $$^W4TABLET=2 G TBLPHONE
 ;
 W "<table width=""90%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  D TDCODE,TDNAME,TDMAZAV
 W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""14"" width=""90%"" border=""0"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<tr>"
  D TDGROUP
  D TDDEP
 W "</tr>",!
 ;
 W "<tr>"
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("PRICE")_"</td>"
  W "<td colspan=""3"">"
   W "<table width="""_(77-$$1024^W4WDSCR)_"%"" border=""0""><tr>"
    D TDPRICE
    D TDPRICETAW
    D TDPRICEDLV
   W "</tr></table>"
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"
  D TDMSK
  D TDDESC
 W "</tr>",!
 ;
 W "<tr>",!
  D TDLINK
  D TDHRA
 W "</tr>",!
 ;
 W "<tr>",!
  D TDPRINT
  D TDCOLOR
 W "</tr>",!
 ;
 W "<tr>",!
  W "<td colspan=""4"">"
   D FLAGS
  W "</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "<br>",!
 D DIVBUT
 ;
 Q
 ;
 ;
FLAGS ;
 W "<table width=""100%"" ",!
 W " >"
  W "<tr>"
   D TDFLAG("ITEMWITHOUTDISCOUNT","nohnh","PRTBH")
   D TDFLAG("ITEMWITHPASSWORD","psw","PRTMB")
   D TDFLAG("ITEMWITHVARIABLEPRICE","varprc","P1BLRD")
   ;
   D TD
    W $$^%W1DICT("STAY2SALE")_" "
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""prtend"" size=""6"" onClick=""this.select()"" "
     D
     .I CODE="" Q
     .W " value="""_$G(@$$^W4GL("PRTEND")@($$^W4DZ,CODE))_""" "
     .I $$VIEW W " disabled=""disabled"" "
    W " />"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
TDFLAG(NM,ID,GLNM) ;
 D TD
  W $$^%W1DICT(NM)
 W "</td>"  
 W "<td>"
  W "<input type=""checkbox"" id="""_ID_""" "
   D
   .I CODE="" Q
   .W $S($D(@$$^W4GL(GLNM)@(CODE)):" checked=""checked"" ",1:"")
   .I $$VIEW W " disabled=""disabled"" "
  W " />"
  W "</td>"
 Q
 ;
 ;
DIVBUT ;
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""30%""><tr>",!
 I $G(%ARG("CODE"))'?.P D
 . W "<td>"
 .  D ROUNDBUT^%W1JS("rbtcontact",$$^%W1DICT("ITEMMOVEMENTS"),"Movements('"_$G(CODE)_"')","color:blue","wh,22")
 . W "</td>"
 .
 .I $D(@$$GLEZM^W4EZM@(%ARG("CODE")))>9 D
 .. W "<td>"
 ..  D ROUNDBUT^%W1JS("rbtree",$$^%W1DICT("PRODUCTTREE"),"ProductTree('"_$G(CODE)_"')","color:brown","wh,22")
 .. W "</td>"
 .
 .I '$$VIEW D
 .. W "<td>"
 ..      D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 .. W "</td>",!
 .
 . W "<td>"
 .  D ROUNDBUT^%W1JS("rbtlabels",$$^%W1DICT("MDBPC"),"PrintLabels('"_$G(CODE)_"')","color:blue","wh,22")
 . W "</td>"
 ;
 I $G(%ARG("CODE"))?.P W "<td>&nbsp;</td><td>&nbsp;</td>",!
 ;
 W "<td align=""center"">"
  W "<img src=""w3calc.jpg"" alt=""Calculator"" "
  I $$^W4TABLET=2 W "width=""65px"" height=""65px"" "
  W " onClick=""BOCalc('25','80')"" "
  W " style=""cursor:pointer"" />"
 W "</td>",!
 ;
 W "<td>",!
      D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</td>"
 w "</tr>",!
 ;
 W "<tr><td colspan=""5"">"
  W "<div id=""meaddat"" style=""display:none"" align=""center"" >"
  W "<table width=""100%"" >",!
   W "<tr>"
     N MEDAT,ADDAT
     S MEDAT=$$^%L1DC($$^W4DZ,1)
     S ADDAT=$$^%L1DC($$^W4DZ,1)
     W $$MEADDAT^W4LHB(MEDAT,ADDAT)
     W "<td>"
      D ROUNDBUT^%W1JS("rbtshowmv",$$^%W1DICT("SHOW"),"ShowMv()","color:darkgreen","wh,22")
     W "</td>",!
   W "</tr>",!
  W "</table>",!
  W "</div>",!
  ;
  W "<div id=""divmdb"" style=""display:none"" >"
  W "<table width=""100%"" >",!
   W "<tr>"
     W "<td colspan=""3"">"
      W $$^%W1DICT("QNLABS")_"&nbsp;"
      W "<input id=""qnlabs"" type=""text"" size=""2"" maxlength=""3"">",!
      W "&nbsp;&nbsp;&nbsp;"
      D ROUNDBUT^%W1JS("prnlabs",$$^%W1DICT("PRINT"),"PrintLabs('"_$G(CODE)_"')","color:darkgreen","wh,22")
     W "</td>",!
   W "</tr>",!
  W "</table>",!
  W "</div>",!
 W "</td></tr>",!
 W "</td></tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
TDCODE ;
 W "<td "_$$^%W1ALIGN_" >"
 W $$ZW_$$^%W1DICT("ITEMCODE")_"&nbsp;"
 I $$VIEW W "<b>"_CODE_"</b></td>" Q
 ;
 I $$^W4TABLET=2 W "</td><td>"
 ;
 D INPC("CODE",$$^W4KF(90),14)
 W "&nbsp;&nbsp;"
 W "<span style=""position:relative"" >"
  W "<img id=""filter"" src=""w3filter.jpg"" "
  W " width="""_$$^W4KF(25)_"px  height="""_$$^W4KF(25)_""" "
  I $$^W4TABLET=2 D
  .W "style=""position:absolute;top:-12px"" "
  I '$$^W4TABLET D
  .W "style=""position:absolute;top:-5px"" "
 W " onMouseUp=""Find('CODE','CODE','PAR')"" >",!
 W "</span>",!
 W $$NBSP^%L1FRM(8)
 D ROUNDBUT^%W1JS("rbtfree",$$^%W1DICT("FREE"),"Free()","color:green","wh,22")
 W "</td>",!
 Q
 ;
TDNAME ;
 I $$^W4TABLET=2 S TDALIGN="right"
 D TD
 W $$ZW_$$^%W1DICT("NAME")_"<br><br>"_$$^%W1DICT("ENGLISHNAME")_"</td>"
 I $$VIEW D  Q
 .N SM S SM=$$NBSP^%L1FRM(3)
 .D TDBOLD W SM_$$H2U^%L1FRM($$NAME(CODE))
 .W "<br><br>"
 .W SM_$$H2U^%L1FRM($$SHEML^W4P(CODE))
 .W "</td>"
 ;
 W "<td>"
  D INP($G(CODE),"NAME",360,50,$$^%W1DIR)
  W "<br><br>"
  D INP($G(CODE),"ENGNAME",360,50,$$^%W1DIR)
 W "<br>"
 Q
 ;
 ;
TDGROUP ;
  S TDWIDTH="15%"
  I $$^W4TABLET=2 S TDWIDTH="20%"
  ;
  D TD W $$^%W1DICT("ITEMSGROUP")_"<br><br>"_$$^%W1DICT("SUBGRNAME")_"</td>"
  ;
  I $$VIEW D TDBOLD D  W "</td>" Q
  .N SUGP S SUGP=$$SUGP(CODE)
  .N SUGP1 S SUGP1=""
  .I SUGP S SUGP1=$G(@$$GLSUGP@(SUGP))
  .W SUGP_" "_$$H2U^%L1FRM(SUGP1)
  .W "<br><br>"
  .W $$H2U^%L1FRM($$TATSUG1^W4P(CODE))
  ;
  D GROUPTD($G(CODE))
  ;
  Q
  ;
  ;
GROUPTD(CODE) ;
  W "<td "
   I $$^W4TABLET=2 W "width=""70%"" colspan=3 "
   I $$^W4TABLET'=2 W "width=""40%"" "
  W ">" 
  W "<select id=""GROUP"" onChange=""ChangeGroup()"">",!
   W "<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>",!
   W $$GROUPSEL($G(CODE)),!
  W "</select>",!
  D EDITBUT("GroupEdit()")
  W "<br>",!
  D SUBGROUP
 W "</td>",!
 Q
 ;
GROUPSEL(CODE) ;
 I $G(CODE)="" S CODE=$$GETP^%W1PRM("CODE")
 N SELECTED,SEL
 S SEL=""
 N N S N="" F  S N=$O(@$$GLSUGP@(N)) Q:N=""  D
 .S SELECTED=""
 .I $G(CODE),$$SUGP(CODE)=N S SELECTED=" selected=""selected"""
 .S SEL=SEL_"<option value="""_N_""" "_SELECTED_" >"
 .S SEL=SEL_N_" "_$$H2U^%L1FRM($G(@$$GLSUGP@(N)))
 .S SEL=SEL_"<option>"
 Q SEL
 ;
SUBGROUP ;
  W $$NBSP^%L1FRM(5)
  ;
  N SUGP S SUGP=$$SUGP(CODE)
  W $$NBSP^%L1FRM(3)
   W $$SUBGR^W3PRTIDK(CODE_";"_SUGP)
  Q
  ;
EDITBUT(PRM) ;
 W "<input type=""button"" value="""_$$^%W1DICT("EDIT")_""" "
 W " style=""color:blue"" "
 W " onClick="""_PRM_""" "
 W ">"
 Q
 ;
TDDEP ;
 D TD
  W $$^%W1DICT("DEPARTMENT")
 W "</td>"
 D TDB W " id=""dep"" >"
  W $$H2U^%L1FRM($$DEP1(CODE))
 W "</td>",!
 Q
 ;
TDDESC D TD W $$^%W1DICT("DESCRIPTION")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">"
  W "<textarea cols=""40"" rows=""2"" id=""desc"" "
   I $$VIEW W " disabled=""disabled"" "
  W ">"
   N RKV S RKV=$$RKV($G(CODE),"DESC")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W RKV
  W "</textarea>",!
 W "</td>"
 Q
 ;
TDMAZAV ;
 D TD
 W $$^%W1DICT("SHOWINMENU")_"</td><td>"
 W "<input type=""checkbox"" id=""MAZAV"" "
 I $$VIEW W " disabled=""disabled"" "
 W $S($E($$P("MAZAV"))'=0&$G(CODE):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
TDPRICE ;
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$PRICE(CODE)),"</td>"
 ;
 W "<td "_$$^%W1ALIGN_" >"
 D INP($G(CODE),"PRICE",$$^W4KF(60),8,$$^%W1DIR)
 Q
 ;
TDPRICETAW ;
 D TD W $$^%W1DICT("PRICETAW")_"</td>"
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$PRICETAW(CODE)),"</td>"
 ;
 W "<td>"
 D INP($G(CODE),"PRICETAW",$$^W4KF(60),8,$$^%W1DIR)
 Q
 ;
TDPRICEDLV ;
 D TD W $$^%W1DICT("PRICEDLV")_"</td>"
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$PRICEDLV(CODE)),"</td>"
 ;
 W "<td "_$$^%W1ALIGN_" >"
 D INP($G(CODE),"PRICEDLV",$$^W4KF(60),8,$$^%W1DIR)
 Q
 ;
TDMSK ;
 D TD W $$^%W1DICT("SHAKIL")_"</td>"
 W "<td "_$$^%W1ALIGN_" >"
 I $G(CODE)="" W "&nbsp;</td>" Q
 
 N MSK S MSK=$$MSK^W4P(CODE) I MSK="k" S MSK=1
  W "<input type=""checkbox"" id=""MSK"" "
  I $$VIEW W " readonly=""readonly"" "
  W $S(MSK:" checked=""checked"" ",1:"")_" />"
 W "</td>"
 Q
 ;
TDHRA ;
 D TD W $$^%W1DICT("CONNECTCOMMENT")_"</td>"
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$HRA(CODE)),"</td>"
 ;
 W "<td>"
 D INP($G(CODE),"HRA",240,36,$$^%W1DIR)
 Q
 ;
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDSTYLE) W " style="""_TDSTYLE_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR,TDSTYLE
 Q
 ;
INP(CODE,RKV,WD,SIZE,DIR,ID) ;
 I $G(ID)="" S ID=RKV
 I '$$VIEW,DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_ID_""""
 .I RKV["PRICE"!(RKV="prtend") W " onFocus=""this.select()"" "
 .W " onChange=""OnChangeInp('"_ID_"')"" "
 .
 .N RKVL S RKVL=$$RKV($G(CODE),RKV,DIR)
 .
 .D
 ..W " value="""_$$H2U^%L1FRM(RKVL)_""""
 .W " />",!
 ;
 I $$VIEW W "<a>"_$$RKV($G(CODE),0)_"<a/>"
 Q
 ;
 ;
INPC(RKV,WD,SIZE) ;
 I '$$VIEW D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onClick=""this.select()"""
 .W " onChange=""Find('CODE','CODE','PAR')"" >",!
 ;
 I $$VIEW W "<a>"_$$RKV($G(CODE),0) ; NOM
 Q
 ;
 ;
RKV(CODE,FLD,DIR)
 N A I $G(FLD)=0 Q ""
 I $$P(FLD)'="",$$D(CODE) Q $$P(FLD)
 I $$P(FLD)'="" Q $$P(FLD)
 Q ""
 ;
 ;
P(FLD)
 I $G(FLD)="" Q ""
 N OK S OK=0
 I $G(CODE)="" Q ""
 I '$$D(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 ;;W "FLD="_FLD,!
 I $T(@FLD)="" Q ""
 N A,P S A="S P=$$"_FLD_"(CODE)" X A
 Q P
 ;
 ;
SAVE(PRM) ;
 D KILL^%W3DEB("W4CARDIT")
 D PUT^%W3DEB("W4CARDIT","PRM=PRM")
 S MC="CODE~NAME!H~ENGNAME~MAZAV~GROUP~SUBGROUP~PRICE~PRICETAW~PRICEDLV~MSK~DESC!H~LINK~HRA!H~PRINTER~BGCLR~FGCLR~NOHNH~PSW~VARPRC~PRTEND"
 ;
 D ^%W1SV(MC,PRM)
 ;
 S CODE=$TR(CODE," ","")
 I CODE=""!(CODE=0) Q "CODE!D"
 I $$NOCODE(CODE) Q "CODE!D"
 S CODE=$$FUNC^%UCASE(CODE)
 ;
 I '$L(GROUP) Q "GROUP!D"
 ;
 S NAME=$TR(NAME,"\*","/X")
 I NAME?.P Q "NAME!D"
 ;
 S ENGNAME=$TR(ENGNAME,"\*","/X")
 ;
 S @$$GLPAR@(CODE)=NAME
 N SV S SV=0
 D
 .S $P(@$$GLPAR@(CODE),"**",1)=NAME
 .S $P(@$$GLPAR@(CODE),"**",14)=ENGNAME
 .S $P(@$$GLPAR@(CODE),"**",2)=PRICE
 .S $P(@$$GLPAR@(CODE),"**",5)=GROUP
 .S $P(@$$GLPAR@(CODE),"**",15)=SUBGROUP
 .S $P(@$$GLPAR@(CODE),"**",11)=PRINTER
 .S $P(@$$GLPAR@(CODE),"**",12)=BGCLR_"-"_FGCLR
 .S $P(@$$GLPAR@(CODE),"**",13)=HRA
 .I 'MAZAV S @$$^W4GL("W3PAR")@(CODE)=0 S SV=1
 .I MAZAV S @$$^W4GL("W3PAR")@(CODE)=1 S SV=1
 .
 .I PRICETAW'="" S @$$^W4GL("PARTA")@(CODE)=PRICETAW S SV=SV+2
 .I PRICETAW=""!(+PRICETAW=+PRICE) K @$$^W4GL("PARTA")@(CODE)
 .
 .I PRICEDLV'="" S @$$^W4GL("PARMS")@(CODE)=PRICEDLV S SV=SV+4
 .I PRICEDLV=""!(+PRICEDLV=+PRICE) K @$$^W4GL("PARMS")@(CODE)
 .
 .S $P(@$$GLPAR@(CODE),"**",3)=MSK
 .
 .I DESC'="" S @$$^W4GL("L1TIP")@("MTK",CODE,1)=DESC S SV=SV+8
 .I DESC="" K @$$^W4GL("L1TIP")@("MTK",CODE,1)
 .
 .I NOHNH S @$$^W4GL("PRTBH")@(CODE)="" S SV=SV+16
 .I 'NOHNH K @$$^W4GL("PRTBH")@(CODE)
 .I PSW S @$$^W4GL("PRTMB")@(CODE)="" S SV=SV+32
 .I 'PSW K @$$^W4GL("PRTMB")@(CODE)
 .I VARPRC S @$$^W4GL("P1BLRD")@(CODE)="" S SV=SV+64
 .I 'VARPRC K @$$^W4GL("P1BLRD")@(CODE)
 .I PRTEND'="" S @$$^W4GL("PRTEND")@($$^W4DZ,CODE)=PRTEND S SV=SV+128
 ;
 N FGIB S FGIB=$$^W4FGIB
 D ^%S2GLSV($$GLPAR_"("""_CODE_""")",FGIB)
 I (SV#4)\2 D ^%S2GLSV($$^W4GL("PARTA")_"("""_CODE_""")",FGIB)
 I (SV#8)\4 D ^%S2GLSV($$^W4GL("PARMS")_"("""_CODE_""")",FGIB)
 I (SV#16)\8 D ^%S2GLSV($$^W4GL("L1TIP")_"(""MTK"","""_CODE_""")",FGIB)
 I (SV#32)\16 D ^%S2GLSV($$^W4GL("PRTBH")_"("""_CODE_""")",FGIB)
 I (SV#64)\32 D ^%S2GLSV($$^W4GL("PRTMB")_"("""_CODE_""")",FGIB)
 I (SV#128)\64 D ^%S2GLSV($$^W4GL("P1BLRD")_"("""_CODE_""")",FGIB)
 ;
 Q 1
 ;
FREE(CD) ;
 N N
 S:$G(CD)="" CD=1
 F N=CD+1:1 Q:'$D(@$$GLPAR@(N))
 Q N
 ;
VIEW(STAM) ;
 I $G(%ARG("VIEW")) Q 1
 I $G(%ARG("MODE"))="VW" Q 1
 Q 0
 ;
D(CODE) ;
 I $G(CODE)="" Q 0
 Q $D(@$$GLPAR@(CODE))
 ;
NAME(CODE) ;
 Q $$SHEM^W4P(CODE)
 ;
ENGNAME(CODE) ;
 Q $$SHEML^W4P(CODE)
 ;
SUGP(CODE) ;
 Q $$SUG^W4P(CODE)
 ;
DESC(CODE) ;
 Q $$DESC^W4P(CODE)
 ;
HRA(CODE) ;
 Q $$HRA^W4P(CODE)
 ;
 ;
GLPAR(STAM) ;
 Q $$^W4GL("PAR")
 ;
DEP(CODE) ;
 I $G(CODE)="" Q ""
 Q $$DEP^W4P(CODE)
 ;
DEP1(CODE) ;
 Q $$DEP1^W4P(CODE)
 ;
GLDEP(STAM) ;
 Q $$^W4GL("DEP")
 ;
SHOW(CODE) ;
 I $G(CODE)="" Q 0
 Q $P($G(@$$GLPAR@(CODE,1)),"\",6)
 ;
TDNAMETDB ;
 W "<td style=""font-weight:bold"" "
 Q
 ;
TDB ;
 W "<td style=""font-weight:bold"" "
 Q
 ;
TDBOLD ;
 D TDB W ">"
 Q
 ;
TEST(CODE) ;
 I CODE["%60" S CODE=$$RPL^%L1FRM(CODE,"%60","`")
 I $TR(CODE,"`","")?1A.A Q "FIND"
 I $$NOCODE(CODE) Q "FIND"
 S CODE=$$FUNC^%UCASE(CODE)
 I CODE="" Q 0
 I $D(@$$GLPAR@(CODE)) Q 1
 Q 0
 ;
NOCODE(CODE) ;
 I '$$NONUMIT^W4PRM,$TR(CODE,".","")'?1N.N Q 1
 N J,STP,OK S STP="!@#$%^&*()_+=\?'""/>< ",OK=1 ; -- WAS "-" TOO
 F J=1:1:$L(STP) I CODE[$E(STP,J) S OK=0 Q
 Q 'OK
 ;
GLSUGP(STAM) ;
 Q $$^W4GL("PARSUG")
 ;
PRICE(CODE) ;
 I $G(CODE)="" Q ""
 Q $$MH^W4P(CODE)
 ;
PRICETAW(CODE) ;
 I $G(CODE)="" Q ""
 N MH S MH=$G(@$$^W4GL("PARTA")@(CODE))
 ;;I MH="" S MH=$$MH^W4P(CODE)
 Q MH
 ;
PRICEDLV(CODE) ;
 I $G(CODE)="" Q ""
 N MH S MH=$G(@$$^W4GL("PARMS")@(CODE))
 ;;I MH="" S MH=$$MH^W4P(CODE)
 Q MH
 ;
MAZAV(CODE) ;
 I $G(CODE)="" Q ""
 Q $$^W4PRTVW(CODE)
 ;
TDLINK ;
 D TD W $$^%W1DICT("LINK2OTHERITEMS")_"</td>"
 W "<td>"
  N CARDIT S CARDIT=""
  W $$^W4PARLNK($G(CODE))
 W "</td>"
 Q
 ;
TDPRINT ;
 D TD W $$^%W1DICT("PRINTERS")_"</td>"
 N PRINT S PRINT=$$PRINT^W4P(CODE) S:PRINT=""&CODE PRINT="G"
 I $$VIEW D TDB W " dir=""LTR"" "_$$^%W1ALIGN_" >" W PRINT W "</td>" Q
 W "<td>"
 W " <input type=""text"" size=""20"" dir=""LTR"" "
 W " id=""PRINTER"" onMouseOver=""ShowPrinters(this,event)"" "
 W " onMouseOut=""ClosePrinters()"" "
 W "value="""_PRINT_""" />"
 I PRINT="G",$G(CODE) D
 .W "<br><span dir=""LTR"" style=""color:grey"">"_$$GRPRINT^W3PRMDP($$SUG^W4P(CODE))_"</span>",!
 W "</td>",!
 Q
 ;
TDCOLOR ;
 N N S N=$G(CODE)
 D TD W $$^%W1DICT("SHOWCOLOR")_"&nbsp;</td>"
 W "<td>"
  W "<div id=""itclr"" "
  I '$$VIEW W " OnClick=""ItemColor(event,'"_N_"')"" "
  W " align=""right"" "
  W " style=""border:solid 1px grey; text-align:center;background-color:"_$$BGIT(N,1)_";color:"_$$FGIT(N,1)_";font-weight:bold;width:50%;height:100%"
  I '$$VIEW W ";cursor:pointer"""
  W """ "
  W ">PREVIEW</div>"
 W "</td>"
 Q
 ;
BGIT(N,DFLT) ;
 Q $$BGIT^W4P(N,DFLT)
 ;
FGIT(N,DFLT) ;
 Q $$FGIT^W4P(N,$G(DFLT))
 ;
MSD S MSD=$G(%ARG("MSD"))
 I MSD="" S MSD=$$GETP^%W1PRM("MSD")
 Q
 ;
 ; 
TBLPHONE ;
 W "<table width=""90%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  D TDCODE
 W "</tr>",!
 ;
 W "<tr>"
  D TDNAME,TDMAZAV
 W "</tr>",! 
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""14"" width=""90%"" border=""0"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<tr>"
  D TDGROUP
 W "</tr>",!
 ;
 W "<tr>"
  D TDDEP
 W "</tr>",!
 ;
 W "<tr>"
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("PRICE")_"</td>"
  D TDPRICE
 W "</tr>",!
 ;
 W "<tr>"
    D TDPRICETAW
 W "</tr>",!
 ;
 W "<tr>"
    D TDPRICEDLV
 W "</tr>"
 ;
 W "<tr>"
  D TDMSK
 W "</tr>",!
 ;
 W "<tr>" 
  D TDDESC
 W "</tr>",!
 ;
 W "<tr>",!
  D TDLINK
 W "</tr>",!
 ;
 W "<tr>"
  D TDHRA
 W "</tr>",!
 ;
 W "<tr>",!
  D TDPRINT
 W "</tr>",!
 ;
 W "<tr>"
  D TDCOLOR
 W "</tr>",!
 ;
 W "<tr>",!
  W "<td colspan=""4"">"
   D FLAGS
  W "</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "<br>",!
 D DIVBUT
 ;
 Q
 ;
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CARDIT
W4CARDIT(CODE,PRM) ; [ 25.06.26 08:07 ] [ 05.12.25 06:16 ] [ 24.03.25 16:00 ] 
 N (JB,%ARG,CODE,PRM)
 I $G(PRM)="" S PRM="IN"
 S CODE=$G(CODE)
 D MSD
 N TDWIDTH,TDALIGN,TDDIR
 D PUT^%W3DEB("W4CARDIT","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 K @$$^W4MAIN("TMPPRT")
 ;
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 D PUT^%W1PRM("CODE",CODE)
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"
   W $$H2U^%L1FRM($$^W3MSDG(+MSD))_" - "_$$^%W1DICT("ITEMCARD")
 W "</td></tr>",!
 W "</table>",!
 ;
 W "<br>",!
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br><br>",!
 ;
 I $$^W4TABLET=2 G TBLPHONE
 ;
 W "<table width=""90%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  D TDCODE,TDNAME,TDMAZAV
 W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""14"" width=""90%"" border=""0"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<tr>"
  D TDGROUP
  D TDDEP
 W "</tr>",!
 ;
 W "<tr>"
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("PRICE")_"</td>"
  W "<td colspan=""3"">"
   W "<table width="""_(77-$$1024^W4WDSCR)_"%"" border=""0""><tr>"
    D TDPRICE
    D TDPRICETAW
    D TDPRICEDLV
   W "</tr></table>"
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"
  D TDMSK
  D TDDESC
 W "</tr>",!
 ;
 W "<tr>",!
  D TDLINK
  D TDHRA
 W "</tr>",!
 ;
 W "<tr>",!
  D TDPRINT
  D TDCOLOR
 W "</tr>",!
 ;
 W "<tr>",!
  W "<td colspan=""4"">"
   D FLAGS
  W "</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "<br>",!
 D DIVBUT
 ;
 Q
 ;
 ;
FLAGS ;
 W "<table width=""100%"" ",!
 W " >"
  W "<tr>"
   D TDFLAG("ITEMWITHOUTDISCOUNT","nohnh","PRTBH")
   D TDFLAG("ITEMWITHPASSWORD","psw","PRTMB")
   D TDFLAG("ITEMWITHVARIABLEPRICE","varprc","P1BLRD")
   ;
   D TD
    W $$^%W1DICT("STAY2SALE")_" "
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""prtend"" size=""6"" onClick=""this.select()"" "
     D
     .I CODE="" Q
     .W " value="""_$G(@$$^W4GL("PRTEND")@($$^W4DZ,CODE))_""" "
     .I $$VIEW W " disabled=""disabled"" "
    W " />"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
TDFLAG(NM,ID,GLNM) ;
 D TD
  W $$^%W1DICT(NM)
 W "</td>"  
 W "<td>"
  W "<input type=""checkbox"" id="""_ID_""" "
   D
   .I CODE="" Q
   .W $S($D(@$$^W4GL(GLNM)@(CODE)):" checked=""checked"" ",1:"")
   .I $$VIEW W " disabled=""disabled"" "
  W " />"
  W "</td>"
 Q
 ;
 ;
DIVBUT ;
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""30%""><tr>",!
 I $G(%ARG("CODE"))'?.P D
 . W "<td>"
 .  D ROUNDBUT^%W1JS("rbtcontact",$$^%W1DICT("ITEMMOVEMENTS"),"Movements('"_$G(CODE)_"')","color:blue","wh,22")
 . W "</td>"
 .
 .I $D(@$$GLEZM^W4EZM@(%ARG("CODE")))>9 D
 .. W "<td>"
 ..  D ROUNDBUT^%W1JS("rbtree",$$^%W1DICT("PRODUCTTREE"),"ProductTree('"_$G(CODE)_"')","color:brown","wh,22")
 .. W "</td>"
 .
 .I '$$VIEW D
 .. W "<td>"
 ..      D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 .. W "</td>",!
 .
 . W "<td>"
 .  D ROUNDBUT^%W1JS("rbtlabels",$$^%W1DICT("MDBPC"),"PrintLabels('"_$G(CODE)_"')","color:blue","wh,22")
 . W "</td>"
 .I $G(@$$^W4PRM@("BCPRINT")) D
 ..W "<td>"
 ..     D ROUNDBUT^%W1JS("rbtbcode",$$^%W1DICT("PCBCODE"),"PrintLabels('"_$G(CODE)_"','1')","color:blue","wh,22")
 ..W "</td>"
 ;
 I $G(%ARG("CODE"))?.P W "<td>&nbsp;</td><td>&nbsp;</td>",!
 ;
 W "<td align=""center"">"
  W "<img src=""w3calc.jpg"" alt=""Calculator"" "
  I $$^W4TABLET=2 W "width=""65px"" height=""65px"" "
  W " onClick=""BOCalc('25','80')"" "
  W " style=""cursor:pointer"" />"
 W "</td>",!
 ;
 W "<td>",!
      D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</td>"
 W "</tr>",!
 ;
 W "<tr><td colspan=""5"">"
  W "<div id=""meaddat"" style=""display:none"" align=""center"" >"
  W "<table width=""100%"" >",!
   W "<tr>"
     N MEDAT,ADDAT
     S MEDAT=$$^%L1DC($$^W4DZ,1)
     S ADDAT=$$^%L1DC($$^W4DZ,1)
     W $$MEADDAT^W4LHB(MEDAT,ADDAT)
     W "<td>"
      D ROUNDBUT^%W1JS("rbtshowmv",$$^%W1DICT("SHOW"),"ShowMv()","color:darkgreen","wh,22")
     W "</td>",!
   W "</tr>",!
  W "</table>",!
  W "</div>",!
  ;
  W "<div id=""divmdb"" style=""display:none"" >"
  W "<table width=""100%"" >",!
   W "<tr>"
     W "<td colspan=""3"">"
      W $$^%W1DICT("QNLABS")_"&nbsp;"
      W "<input id=""qnlabs"" type=""text"" size=""2"" maxlength=""3"" onFocus=""this.select()"">",!
      W "&nbsp;&nbsp;&nbsp;"
      D ROUNDBUT^%W1JS("prnlabs",$$^%W1DICT("PRINT"),"PrintLabs('"_$G(CODE)_"')","color:darkgreen","wh,22")
     W "</td>",!
   W "</tr>",!
  W "</table>",!
  W "</div>",!
 W "</td></tr>",!
 W "</td></tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
TDCODE ;
 W "<td "_$$^%W1ALIGN
  I $$^W4TABLET=2 W "width=""23%"" "
 W ">"
 W $$ZW_$$^%W1DICT("ITEMCODE")_"&nbsp;"
 I $$VIEW W "<b>"_CODE_"</b></td>" Q
 ;
 I $$^W4TABLET W "</td><td>"
 ;
 W "<div style=""display:inline-flex;align-items:center;position:relative"">"
 D INPC("CODE",$$^W4KF(90),14)
 W $$NBSP^%L1FRM(2)
  W "<img id=""filter"" src=""w3filter.jpg"" "
  ;;I $$^W4TABLET=1 W "style=""position:absolute;top:4px"" "
  W " width="""_$$^W4KF(25)_"px  height="""_$$^W4KF(25)_""" "
 W " "_$$^W4TOUCH_"=""Find('CODE','CODE','PAR')"" >",!
 W $$NBSP^%L1FRM(5)
 D ROUNDBUT^%W1JS("rbtfree",$$^%W1DICT("FREE"),"Free()","color:green","wh,22")
 W $$NBSP^%L1FRM(5)
 D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</div>",!
 W "</td>",!
 Q
 ;
TDNAME ;
 I $$^W4TABLET=2 S TDALIGN="right"
 D TD
 W $$ZW_$$^%W1DICT("NAME")_"<br><br>"_$$^%W1DICT("ENGLISHNAME")_"</td>"
 I $$VIEW D  Q
 .N SM S SM=$$NBSP^%L1FRM(3)
 .D TDBOLD W SM_$$H2U^%L1FRM($$NAME(CODE))
 .W "<br><br>"
 .W SM_$$H2U^%L1FRM($$SHEML^W4P(CODE))
 .W "</td>"
 ;
 W "<td>"
  D INP($G(CODE),"NAME",360,50,$$^%W1DIR)
  W "<br><br>"
  D INP($G(CODE),"ENGNAME",360,50,$$^%W1DIR)
 W "<br>"
 Q
 ;
 ;
TDGROUP ;
  S TDWIDTH="15%"
  I $$^W4TABLET=2 S TDWIDTH="20%"
  ;
  D TD W $$^%W1DICT("ITEMSGROUP")_"<br><br>"_$$^%W1DICT("SUBGRNAME")_"</td>"
  ;
  I $$VIEW D TDBOLD D  W "</td>" Q
  .N SUGP S SUGP=$$SUGP(CODE)
  .N SUGP1 S SUGP1=""
  .I SUGP S SUGP1=$G(@$$GLSUGP@(SUGP))
  .W SUGP_" "_$$H2U^%L1FRM(SUGP1)
  .W "<br><br>"
  .W $$H2U^%L1FRM($$TATSUG1^W4P(CODE))
  ;
  D GROUPTD($G(CODE))
  ;
  Q
  ;
  ;
GROUPTD(CODE) ;
  W "<td "
   I $$^W4TABLET=2 W "width=""70%"" colspan=3 "
   I $$^W4TABLET'=2 W "width=""40%"" "
  W ">" 
  W "<select id=""GROUP"" onChange=""ChangeGroup()"">",!
   W "<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>",!
   W $$GROUPSEL($G(CODE)),!
  W "</select>",!
  D EDITBUT("GroupEdit()")
  W "<br>",!
  D SUBGROUP
 W "</td>",!
 Q
 ;
GROUPSEL(CODE) ;
 I $G(CODE)="" S CODE=$$GETP^%W1PRM("CODE")
 N SELECTED,SEL
 S SEL=""
 N N S N="" F  S N=$O(@$$GLSUGP@(N)) Q:N=""  D
 .S SELECTED=""
 .I $G(CODE),$$SUGP(CODE)=N S SELECTED=" selected=""selected"""
 .S SEL=SEL_"<option value="""_N_""" "_SELECTED_" >"
 .S SEL=SEL_N_" "_$$H2U^%L1FRM($G(@$$GLSUGP@(N)))
 .S SEL=SEL_"</option>"
 Q SEL
 ;
SUBGROUP ;
  W $$NBSP^%L1FRM(5)
  ;
  N SUGP S SUGP=$$SUGP(CODE)
  W $$NBSP^%L1FRM(3)
   W $$SUBGR^W3PRTIDK(CODE_";"_SUGP)
  Q
  ;
EDITBUT(PRM) ;
 W "<input type=""button"" value="""_$$^%W1DICT("EDIT")_""" "
 W " style=""color:blue"" "
 W " onClick="""_PRM_""" "
 W ">"
 Q
 ;
TDDEP ;
 D TD
  W $$^%W1DICT("DEPARTMENT")
 W "</td>"
 D TDB W " id=""dep"" >"
  W $$H2U^%L1FRM($$DEP1(CODE))
 W "</td>",!
 Q
 ;
TDDESC D TD W $$^%W1DICT("DESCRIPTION")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">"
  W "<textarea cols=""40"" rows=""2"" id=""desc"" "
   I $$VIEW W " disabled=""disabled"" "
  W ">"
   N RKV S RKV=$$RKV($G(CODE),"DESC")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W RKV
  W "</textarea>",!
 W "</td>"
 Q
 ;
TDMAZAV ;
 D TD
 W $$^%W1DICT("SHOWINMENU")_"</td><td>"
 W "<input type=""checkbox"" id=""MAZAV"" "
 I $$VIEW W " disabled=""disabled"" "
 W $S($E($$P("MAZAV"))'=0&$G(CODE):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
TDPRICE ;
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$PRICE(CODE)),"</td>"
 ;
 W "<td "_$$^%W1ALIGN_" >"
 D INP($G(CODE),"PRICE",$$^W4KF(60),8,$$^%W1DIR)
 Q
 ;
TDPRICETAW ;
 D TD W $$^%W1DICT("PRICETAW")_"</td>"
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$PRICETAW(CODE)),"</td>"
 ;
 W "<td>"
 D INP($G(CODE),"PRICETAW",$$^W4KF(60),8,$$^%W1DIR)
 Q
 ;
TDPRICEDLV ;
 D TD W $$^%W1DICT("PRICEDLV")_"</td>"
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$PRICEDLV(CODE)),"</td>"
 ;
 W "<td "_$$^%W1ALIGN_" >"
 D INP($G(CODE),"PRICEDLV",$$^W4KF(60),8,$$^%W1DIR)
 Q
 ;
TDMSK ;
 D TD W $$^%W1DICT("SHAKIL")_"</td>"
 W "<td "_$$^%W1ALIGN_" >"
 I $G(CODE)="" W "&nbsp;</td>" Q
 
 N MSK S MSK=$$MSK^W4P(CODE) I MSK="k" S MSK=1
  W "<input type=""checkbox"" id=""MSK"" "
  I $$VIEW W " readonly=""readonly"" "
  W $S(MSK:" checked=""checked"" ",1:"")_" />"
 W "</td>"
 Q
 ;
TDHRA ;
 D TD W $$^%W1DICT("CONNECTCOMMENT")_"</td>"
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$HRA(CODE)),"</td>"
 ;
 W "<td>"
 D INP($G(CODE),"HRA",240,36,$$^%W1DIR)
 Q
 ;
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDSTYLE) W " style="""_TDSTYLE_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR,TDSTYLE
 Q
 ;
INP(CODE,RKV,WD,SIZE,DIR,ID) ;
 I $G(ID)="" S ID=RKV
 I '$$VIEW,DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_ID_""""
 .I RKV["PRICE"!(RKV="prtend") W " onFocus=""this.select()"" "
 .W " onChange=""OnChangeInp('"_ID_"')"" "
 .
 .N RKVL S RKVL=$$RKV($G(CODE),RKV,DIR)
 .
 .D
 ..W " value="""_$$H2U^%L1FRM(RKVL)_""""
 .W " />",!
 ;
 I $$VIEW W "<a>"_$$RKV($G(CODE),0)_"<a/>"
 Q
 ;
 ;
INPC(RKV,WD,SIZE) ;
 I '$$VIEW D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onClick=""this.select()"""
 .W " onChange=""Find('CODE','CODE','PAR')"" >",!
 ;
 I $$VIEW W "<a>"_$$RKV($G(CODE),0) ; NOM
 Q
 ;
 ;
RKV(CODE,FLD,DIR)
 N A I $G(FLD)=0 Q ""
 I $$P(FLD)'="",$$D(CODE) Q $$P(FLD)
 I $$P(FLD)'="" Q $$P(FLD)
 Q ""
 ;
 ;
P(FLD)
 I $G(FLD)="" Q ""
 N OK S OK=0
 I $G(CODE)="" Q ""
 I '$$D(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 ;;W "FLD="_FLD,!
 I $T(@FLD)="" Q ""
 N A,P S A="S P=$$"_FLD_"(CODE)" X A
 Q P
 ;
 ;
SAVE(PRM) ;
 D KILL^%W3DEB("W4CARDIT")
 D PUT^%W3DEB("W4CARDIT","PRM=PRM")
 S MC="CODE~NAME!H~ENGNAME~MAZAV~GROUP~SUBGROUP~PRICE~PRICETAW~PRICEDLV~MSK~DESC!H~LINK~HRA!H~PRINTER~BGCLR~FGCLR~NOHNH~PSW~VARPRC~PRTEND"
 ;
 D ^%W1SV(MC,PRM)
 ;
 S CODE=$TR(CODE," ","")
 I CODE=""!(CODE=0) Q "CODE!D"
 I $$NOCODE(CODE) Q "CODE!D"
 S CODE=$$FUNC^%UCASE(CODE)
 ;
 I '$L(GROUP) Q "GROUP!D"
 ;
 S NAME=$TR(NAME,"\*","/X")
 I NAME?.P Q "NAME!D"
 ;
 S ENGNAME=$TR(ENGNAME,"\*","/X")
 ;
 S @$$GLPAR@(CODE)=NAME
 N SV S SV=0
 D
 .S $P(@$$GLPAR@(CODE),"**",1)=NAME
 .S $P(@$$GLPAR@(CODE),"**",14)=ENGNAME
 .S $P(@$$GLPAR@(CODE),"**",2)=PRICE
 .S $P(@$$GLPAR@(CODE),"**",5)=GROUP
 .S $P(@$$GLPAR@(CODE),"**",15)=SUBGROUP
 .S $P(@$$GLPAR@(CODE),"**",11)=PRINTER
 .S $P(@$$GLPAR@(CODE),"**",12)=BGCLR_"-"_FGCLR
 .S $P(@$$GLPAR@(CODE),"**",13)=HRA
 .I 'MAZAV S @$$^W4GL("W3PAR")@(CODE)=0 S SV=1
 .I MAZAV S @$$^W4GL("W3PAR")@(CODE)=1 S SV=1
 .
 .I PRICETAW'="" S @$$^W4GL("PARTA")@(CODE)=PRICETAW S SV=SV+2
 .I PRICETAW=""!(+PRICETAW=+PRICE) K @$$^W4GL("PARTA")@(CODE)
 .
 .I PRICEDLV'="" S @$$^W4GL("PARMS")@(CODE)=PRICEDLV S SV=SV+4
 .I PRICEDLV=""!(+PRICEDLV=+PRICE) K @$$^W4GL("PARMS")@(CODE)
 .
 .S $P(@$$GLPAR@(CODE),"**",3)=MSK
 .
 .I DESC'="" S @$$^W4GL("L1TIP")@("MTK",CODE,1)=DESC S SV=SV+8
 .I DESC="" K @$$^W4GL("L1TIP")@("MTK",CODE,1)
 .
 .I NOHNH S @$$^W4GL("PRTBH")@(CODE)="" S SV=SV+16
 .I 'NOHNH K @$$^W4GL("PRTBH")@(CODE)
 .I PSW S @$$^W4GL("PRTMB")@(CODE)="" S SV=SV+32
 .I 'PSW K @$$^W4GL("PRTMB")@(CODE)
 .I VARPRC S @$$^W4GL("P1BLRD")@(CODE)="" S SV=SV+64
 .I 'VARPRC K @$$^W4GL("P1BLRD")@(CODE)
 .I PRTEND'="" S @$$^W4GL("PRTEND")@($$^W4DZ,CODE)=PRTEND S SV=SV+128
 ;
 N FGIB S FGIB=$$^W4FGIB
 D ^%S2GLSV($$GLPAR_"("""_CODE_""")",FGIB)
 I (SV#4)\2 D ^%S2GLSV($$^W4GL("PARTA")_"("""_CODE_""")",FGIB)
 I (SV#8)\4 D ^%S2GLSV($$^W4GL("PARMS")_"("""_CODE_""")",FGIB)
 I (SV#16)\8 D ^%S2GLSV($$^W4GL("L1TIP")_"(""MTK"","""_CODE_""")",FGIB)
 I (SV#32)\16 D ^%S2GLSV($$^W4GL("PRTBH")_"("""_CODE_""")",FGIB)
 I (SV#64)\32 D ^%S2GLSV($$^W4GL("PRTMB")_"("""_CODE_""")",FGIB)
 I (SV#128)\64 D ^%S2GLSV($$^W4GL("P1BLRD")_"("""_CODE_""")",FGIB)
 ;
 I $G(@$$^W4PRM@("BOLET")) D ^W4PARMSK
 Q 1
 ;
FREE(CD) ;
 N N
 S:$G(CD)="" CD=1
 F N=CD+1:1 Q:'$D(@$$GLPAR@(N))
 Q N
 ;
VIEW(STAM) ;
 I $G(%ARG("VIEW")) Q 1
 I $G(%ARG("MODE"))="VW" Q 1
 Q 0
 ;
D(CODE) ;
 I $G(CODE)="" Q 0
 Q $D(@$$GLPAR@(CODE))
 ;
NAME(CODE) ;
 Q $$SHEM^W4P(CODE)
 ;
ENGNAME(CODE) ;
 Q $$SHEML^W4P(CODE)
 ;
SUGP(CODE) ;
 Q $$SUG^W4P(CODE)
 ;
DESC(CODE) ;
 Q $$DESC^W4P(CODE)
 ;
HRA(CODE) ;
 Q $$HRA^W4P(CODE)
 ;
 ;
GLPAR(STAM) ;
 Q $$^W4GL("PAR")
 ;
DEP(CODE) ;
 I $G(CODE)="" Q ""
 Q $$DEP^W4P(CODE)
 ;
DEP1(CODE) ;
 Q $$DEP1^W4P(CODE)
 ;
GLDEP(STAM) ;
 Q $$^W4GL("DEP")
 ;
SHOW(CODE) ;
 I $G(CODE)="" Q 0
 Q $P($G(@$$GLPAR@(CODE,1)),"\",6)
 ;
TDNAMETDB ;
 W "<td style=""font-weight:bold"" "
 Q
 ;
TDB ;
 W "<td style=""font-weight:bold"" "
 Q
 ;
TDBOLD ;
 D TDB W ">"
 Q
 ;
TEST(CODE) ;
 I CODE["%60" S CODE=$$RPL^%L1FRM(CODE,"%60","`")
 I $TR(CODE,"`","")?1A.A Q "FIND"
 I $$NOCODE(CODE) Q "FIND"
 S CODE=$$FUNC^%UCASE(CODE)
 I CODE="" Q 0
 I $D(@$$GLPAR@(CODE)) Q 1
 Q 0
 ;
NOCODE(CODE) ;
 I '$$NONUMIT^W4PRM,$TR(CODE,".","")'?1N.N Q 1
 N J,STP,OK S STP="!@#$%^&*()_+=\?'""/>< ",OK=1 ; -- WAS "-" TOO
 F J=1:1:$L(STP) I CODE[$E(STP,J) S OK=0 Q
 Q 'OK
 ;
GLSUGP(STAM) ;
 Q $$^W4GL("PARSUG")
 ;
PRICE(CODE) ;
 I $G(CODE)="" Q ""
 Q $$MH^W4P(CODE)
 ;
PRICETAW(CODE) ;
 I $G(CODE)="" Q ""
 N MH S MH=$G(@$$^W4GL("PARTA")@(CODE))
 ;;I MH="" S MH=$$MH^W4P(CODE)
 Q MH
 ;
PRICEDLV(CODE) ;
 I $G(CODE)="" Q ""
 N MH S MH=$G(@$$^W4GL("PARMS")@(CODE))
 ;;I MH="" S MH=$$MH^W4P(CODE)
 Q MH
 ;
MAZAV(CODE) ;
 I $G(CODE)="" Q ""
 Q $$^W4PRTVW(CODE)
 ;
TDLINK ;
 D TD W $$^%W1DICT("LINK2OTHERITEMS")_"</td>"
 W "<td>"
  N CARDIT S CARDIT=""
  W $$^W4PARLNK($G(CODE))
 W "</td>"
 Q
 ;
TDPRINT ;
 D TD W $$^%W1DICT("PRINTERS")_"</td>"
 N PRINT S PRINT=$$PRINT^W4P(CODE) S:PRINT=""&CODE PRINT="G"
 I $$VIEW D TDB W " dir=""LTR"" "_$$^%W1ALIGN_" >" W PRINT W "</td>" Q
 W "<td>"
 W " <input type=""text"" size=""20"" dir=""LTR"" "
 W " id=""PRINTER"" onMouseOver=""ShowPrinters(this,event)"" "
 W " onMouseOut=""ClosePrinters()"" "
 W "value="""_PRINT_""" />"
 I PRINT="G",$G(CODE) D
 .W "<br><span dir=""LTR"" style=""color:grey"">"_$$GRPRINT^W3PRMDP($$SUG^W4P(CODE))_"</span>",!
 W "</td>",!
 Q
 ;
TDCOLOR ;
 N N S N=$G(CODE)
 D TD W $$^%W1DICT("SHOWCOLOR")_"&nbsp;</td>"
 W "<td>"
  W "<div id=""itclr"" "
  I '$$VIEW W " OnClick=""ItemColor(event,'"_N_"')"" "
  W " align=""right"" "
  W " style=""border:solid 1px grey; text-align:center;background-color:"_$$BGIT(N,1)_";color:"_$$FGIT(N,1)_";font-weight:bold;width:50%;height:100%"
  I '$$VIEW W ";cursor:pointer"""
  W """ "
  W ">PREVIEW</div>"
 W "</td>"
 Q
 ;
BGIT(N,DFLT) ;
 Q $$BGIT^W4P(N,DFLT)
 ;
FGIT(N,DFLT) ;
 Q $$FGIT^W4P(N,$G(DFLT))
 ;
MSD S MSD=$G(%ARG("MSD"))
 I MSD="" S MSD=$$GETP^%W1PRM("MSD")
 Q
 ;
 ; 
TBLPHONE ;
 W "<table width=""90%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  D TDCODE
 W "</tr>",!
 ;
 W "<tr>"
  D TDNAME,TDMAZAV
 W "</tr>",! 
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""14"" width=""90%"" border=""0"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<tr>"
  D TDGROUP
 W "</tr>",!
 ;
 W "<tr>"
  D TDDEP
 W "</tr>",!
 ;
 W "<tr>"
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("PRICE")_"</td>"
  D TDPRICE
 W "</tr>",!
 ;
 W "<tr>"
    D TDPRICETAW
 W "</tr>",!
 ;
 W "<tr>"
    D TDPRICEDLV
 W "</tr>"
 ;
 W "<tr>"
  D TDMSK
 W "</tr>",!
 ;
 W "<tr>" 
  D TDDESC
 W "</tr>",!
 ;
 W "<tr>",!
  D TDLINK
 W "</tr>",!
 ;
 W "<tr>"
  D TDHRA
 W "</tr>",!
 ;
 W "<tr>",!
  D TDPRINT
 W "</tr>",!
 ;
 W "<tr>"
  D TDCOLOR
 W "</tr>",!
 ;
 W "<tr>",!
  W "<td colspan=""4"">"
   D FLAGS
  W "</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "<br>",!
 D DIVBUT
 ;
 Q
 ;
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CARDKB
W4CARDKB ; [ 11.04.17 09:16 ] [ 14.11.16 14:33 ] [ 05.10.16 14:01 ] 
 ;--- SET TO ^W4ORD : MZ, HNH1, CH
 ;    ASR - W4ASR
 ;    V   - W4TRAN
 ;-----------------------------------------------------------
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 S HZM=$$GET^%W1PRM("HZM")
 ;
 D NOSELECT^%W1JS
 ;
 I $G(%ARG("SHOW"))=1 D  Q  ; --- IF SHOW -- > BACK BUTTON ONLY
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("BACK")
 .S MGROUP(1,"TO")="Back()"
 .I $G(%ARG("VZ"))="SHOWONLY" S MGROUP(1,"TO")="Back('HREF')"
 .S MGROUP("HG")="20%"
 .S TOP="1"
 .D ^W4SHEET("","","",TOP)
 ;
 S VP=$$VP Q:VP=""
 S VZ=$$VZ Q:VZ=""
 D PUT^%W1PRM("VP",VP)
 D PUT^%W1PRM("VZ",VZ)
 ;
 ;--------------------- SHOW ASK------------------------------------
 ;
 S NP=$$GET^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4ASK(VP,VZ)
 Q:NP=""
 S %ARG("HEAD")=$$NM^W4ASK(VP,VZ,NP)
 Q:%ARG("HEAD")=""
 S OU=$$OU^W4ASK(VP,VZ,NP) I OU,'$G(%ARG("IN")) Q
 I $G(%ARG("OU")) Q
 ;
 S CD=$$NM^W4ASK(VP,VZ,NP) Q:CD=""
 S VL=$$GET^W4TMPANS(VP,CD)
 ;
 I VP="VCARD"!(VP="BSL"),CD="SUM" D
 .S VL=$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM"))
 .D PUTDFLT^W4TMPANS(VP,CD,VL)
 ;
 I 'VL S VL=$$DFLT^W4TMPANS(VP,CD)
 ;
 I $$MENU^W4ASK(VP,VZ,NP) D  G END ;--------- CHOICE ASNWER FROM MENU
 .N GLASK S GLASK="^[$$^W3MAIN]W4ASK"
 .D INITUR^W4MENU(VP)
 .D MENU^W4SCASK(VP,VZ,NP)
 ;
 D KB^W4KB($$DL^W4ASK(VP,VZ,NP),VL)
 ;
END Q
 ;
 ;
SBM(PRM) ;
 N %SC
 N NP,VP,VZ,VL,DL,CMD
 S NP=+$$GET^%W1PRM("NP")
 S VP=$$GET^%W1PRM("VP")
 S VZ=$$GET^%W1PRM("VZ")
 S:VZ["UNDEF" VZ=""
 I VP="" Q "0;NOVP"
 I '$L(VZ) Q "0;NOVZ"
 ;
 S:NP<1 NP=$$FIRST^W4ASK(VP,VZ)
 ;;W "NP="_NP,!
 S VL=PRM
 D PUT^%W3DEB("W4CARDKB-SBM","NP=NP & VP=VP & VZ=VZ &PRM=PRM")
 ;
 S DL=$$DL^W4ASK(VP,VZ,NP)
 N CMD S CMD=$$CMD^W4ASK(VP,VZ,NP)
 S CD=$$NM^W4ASK(VP,VZ,NP)
 I CD="" Q "0;NOCD"
 I CD="CARDNUMBER",$E(VL)'?1N S VL=$E(VL,2,255)
 N OK
 I $L(CMD) X "D "_CMD I $D(%SC("ER")) S OK="0;"_$G(%SC("ER","MSG")) Q OK
 ;
 D PUT^W4TMPANS(VP,CD,VL) ; ------------- ANSWER --> ^TMPANS
 ;
 K @$$^W4TMPANS@(VP,CD,"DFLT")
 ;
 S NP=$$NEXT^W4ASK(VP,VZ,NP) I NP="" Q "END"
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
 ;
CNC(PRM) ;
 N NP,VP,VZ,VL,DL
 S NP=+$$GET^%W1PRM("NP")
 S VP=+$$GET^%W1PRM("VP")
 S VZ=$$GET^%W1PRM("VZ")
 I '$L(VP) Q "BEG"
 I '$L(VZ) Q "BEG"
 S:NP<1 NP=$$FIRST^W4ASK(VP,VZ)
 S VL=PRM
 S NP=$$PREV^W4ASK(VP,VZ,NP) I NP="" Q "BEG"
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
 ;
SUM ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 S VL=$J(VL,2,2)
 Q
 ;
 ;
LASTSTAGE(STAM) ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q " "
 Q $G(@$$^W4MAIN("TMPSTAGE")@(IND))
 ;
ADDSTAGE(STAGE)
 Q:$G(STAGE)=""
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 S @$$^W4MAIN("TMPSTAGE")@(IND+1)=STAGE
 Q
 ;
KILLSTAGE ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q
 S STAGE=$G(^(IND)) Q:STAGE=""
 N N
 ;
 K @$$^W4MAIN("TMPSTAGE")@(IND)
 Q
 ;
NOZERO ;
 I VL'?."-"1N.N.".".N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERONLY"
 ;
NOZERO1 I 'VL D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOZERO"
 Q
 ;
NONOTHING I VL="" D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NONOTHING"
 Q
 ;
VP(STAM) ;
 I $L($G(%ARG("VP"))) Q %ARG("VP")
 Q $$GET^%W1PRM("VP")
 ;
VZ(STAM) ;
 I $L($G(%ARG("VZ"))) Q %ARG("VZ")
 Q $$GET^%W1PRM("VZ")
 ;
NEXTNP(PRM) ;
 N VP,VZ,NP
 S VP=$P(PRM,";")
 S VZ=$P(PRM,";",2)
 S NP=$$GET^%W1PRM("NP")
 S NP=$$NEXT^W4ASK(VP,VZ,NP) I NP="" Q "END"
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
VVCARD(STAM) ;
 N (JB,%ARG,%REM)
 S VP=$$GETP^%W1PRM("VP")
 I VP="" Q "ER;NOVP"
 S VZ=$$GETP^%W1PRM("VZ")
 I VZ="" Q "ER;NOVZ"
 D PUT^%W1PRM("CARDANS",1)
 ;
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 I $$SUPER^W3PRM(MSD) S A=$$DELVCSUPER^W4CARDVW I 'A Q A
 ;
 S CARD=$$GET^W4TMPANS(VP,"CARDNUMBER")
 I CARD=""!(CARD=0),$$SUPER^W3PRM(MSD) Q "DELSUPER"
 ;
 S SUM=+$$GET^W4TMPANS(VP,"SUM")
 S COUPON=$$GET^W4TMPANS(VP,"COUPON")
 ;
 I VP="VCARD"&(VZ="PAY") D  Q:$$^W4ISORD(HZM) $$^WVPAY(CARD,HZM,SUM)  Q "ER;WRONGORDNUMBER"
 .S HZM=$$GET^%W1PRM("HZM")
 ;
 I VP="VCARD"&(VZ?1"BONUS".N) D  Q:$$^W4ISORD(HZM) $$^WVBONUS(CARD,HZM,COUPON)  Q "ER;WRONGORDNUMBER"
 .S HZM=$$GET^%W1PRM("HZM")
 ;
 I VP="VCARD"&(VZ="CANCELBONUS") D  Q:$$^W4ISORD(HZM) $$^WVCBONUS(HZM)  Q "ER;WRONGORDNUMBER"
 .S HZM=$$GET^%W1PRM("HZM")
 ;
 I VP="BSL"&(VZ="PAY") D  Q:$$^W4ISORD(HZM) $$^WBPAY(CARD,HZM,SUM)  Q "ER;WRONGORDNUMBER"
 .S HZM=$$GET^%W1PRM("HZM")
 ;
 ;-------- LOADC OR BERUR ITRA ------
 S PRM=CARD_";"_COUPON_";"_VZ_";VC"
 S A=$$VVCARD^WVGETINF(PRM)
 Q A
 ;
 ;
INIT ;
 I $G(%ARG("FIRST")) D
 .D CLEAR^W4SCASK
 ;
 I $L($G(%ARG("VZ")))&$L($G(%ARG("VP"))) D
 .D CREATE^W4ASK(%ARG("VP"),%ARG("VZ"))
 ;
 D PUT^%W1PRM("VP",$G(%ARG("VP")))
 D PUT^%W1PRM("VZ",$G(%ARG("VZ")))
 ;
 I $G(%ARG("VP"))="VCARD"!($G(%ARG("VP"))="BSL"),$G(%ARG("VZ"))="PAY" D
 .N HZM S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 .D PUTDFLT^W4TMPANS(%ARG("VP"),%ARG("VZ"),$$ITRA^W4HZMST(HZM))
 Q
 ;
 ;
PAYSUM ;
 D NOZERO Q:$G(%SC("ER"))
 N HZM S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 I $$TOOMUCH^W4PAYKB(VL,HZM) D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="SUMTOOBIG"
 Q
 
 
 
 
 
 
 
 
 

W4CARDVW
W4CARDVW ; [ 09.06.25 16:47 ] [ 11.09.24 05:44 ] [ 10.09.24 11:44 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $$VP="BSL" D  Q
 .N TMP S TMP=$$TMP^WBSTAT
 .S %ARG("HD")="CUSTOMSTATUS"
 .I $$^WBPARAM("ORD")="NKD" D
 ..K @TMP
 ..
 .D ^WBSHOW(TMP)
 ;
 I $L($G(%ARG("HD"))) D PUT^%W1PRM("HD",%ARG("HD"))
 I $G(%ARG("HD"))="",$L($$GETP^%W1PRM("HD")) S %ARG("HD")=$$GETP^%W1PRM("HD")
 ;
 I $$VP="VCARD" D VC
 ;
 ;;I $G(%ARG("MSG"))'?.P!($$VP="VCARD"&($$VZ="SHOWBONUS")) D  ; ;; --> 9.06.25
 I $G(%ARG("MSG"))'?.P!($$VP="VCARD"&($$VZ["BONUS")) D  ; ;; --> 9.06.25
 .W "<br>",!
 .W "<div id=""divbut"" align=""center"" dir="""_$$^%W1DIR_""">",!
 . I $$VZ="ACT"!($$VZ="DEACT")!($$VZ="DETAILS") D
 .. ;;W "   <input type=""button"" class=""btn"" style=""color:green;width:120px"" value="""_$$^%W1DICT("PRINT")_""" "_$$^W4TOUCH_"=""Print('"_$$VP_"')"">"
 .. D ^W4BTN("PRINT","Print('"_$$VP_"')","blue")
 .. W "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
 . ;;W "   <input type=""button"" class=""btn"" style=""color:red;width:120px"" value="""_$$^%W1DICT("BACK")_""" "_$$^W4TOUCH_"=""BackOK('"_$$VP_"')"">"
 . D ^W4BTN("BACK","BackOK('"_$$VP_"')","red")
 .W "</div>",!
 .
 Q
 ;
 ;
TDNM ;
 W "<td style=""color:black;font-size:"_$$^W3FSZ(18)_""">"
 Q
RZD D TDNM W " : </td>"
 Q
 ;
TDRKV(VP) ;
 W "<td style=""font-size:"_$$^W3FSZ(18)_""" dir=""LTR"" >"
 Q
 ;
SPACE W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
 ;
 ;
VW(VP,IND,WD) ;
  ;
 I $L($$VP)&($$LASTSTAGE^W4CARDKB()'?.P) D  ;-- POK-T' 4TO VVEDENO V PRED ZAPR
  .D CRTMPSHOW
  .Q:'$D(@$$^W4MAIN("TMPSHOW"))
  .N NP,K S NP="" F K=1:1 S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""
  .N WD S WD=12*K S:WD>90 WD=90
  .S WD=WD_"%"
  .W "<table dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
  .W "<tr>",!
  .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
  ..S A=$G(^(NP))
  ..S NM=$P(A,";")
  ..D TH W $$^%W1DICT(NM)_"</th>",!
  .W "</tr>",!
  .W "<tr>",!
  .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
  ..S A=$G(^(NP))
  ..S VL=$P(A,";",2)
  ..N NOHB S NOHB=0
  ..W "<td "_$$STYLEBOLD_" "_$S(VL?."-"1N.N.".".N:" dir=""LTR""",1:" dir="""_$$^%W1DIR_"""")_" >"_$$RKV(VL)_"</td>",!
  .W "</tr>",!
  .W "</table>",!
  .W "<br />",!
 ;
  D  ;
  .I '$L($$VP)!'$L($$VZ) Q
  .
  .D VWTBL($$VP,$$VZ,"W4ASK","W4TMPANS")
  .
  .Q:'$G(%ARG("END"))
  .;
END W "</div>",!
  Q
  ;
  ;
CRTMPSHOW ;
 N N,VZ,A,VL,NM,CD
 S VZ="SHOWTMP"
 K @$$^W4MAIN("TMPSHOW")
 S N="" F  S N=$O(^[$$^W3MAIN]W4ASK(VP,VZ,N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD=A Q:CD=""
 .I '$D(@$$^W4TMPANS@(VP,CD)) Q
 .N OK S OK=1
 .I $L($G(%ARG("VZ"))) D  ; -- NE VYSV REKV TEK ZAPROSA
 ..N N1 S N1="" F  S N1=$O(@$$^W4ASK@(VP,%ARG("VZ"),N1)) Q:N1=""  D  Q:'OK
 ...I $P($G(^(N1)),";")=CD S OK=0
 .Q:'OK
 .S @$$^W4MAIN("TMPSHOW")@(N)=$P(A,";")_";"_$$GET(VP,CD)
 Q
 ;
 ;
VWTBL(VP,VZ,GLZ,GLTMP)
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""10""><tr>",!
 ;
 N J S J=0
 N GL D @("GL^"_GLZ) ; ---- GL="TMPZ"
 ;
 N NP S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D  ; ---- HEADER
 .S J=J+1
 .N CD X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .I CD="" D TH W "&nbsp;" W "</th>",! Q
 .D TH W $$^%W1DICT(CD)_"</th>",!
 N MAXJ S MAXJ=J
 W "</tr>",!
 ;
 W "<tr>" S NS=1
 S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D
 .N NM,VL
 .X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .X "S VL=$$GET^"_GLTMP_"(VP,CD)"
 .W "<td id="""_CD_NS_""" style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""">"
 . W $$RKV(VL)
 .W "</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
  ;
TH W "<th class=""sheetgroups"" style=""font-size:"_$$^W3FSZ(12)_""""
   W ">"
 Q
 ;
STYLEBOLD(STAM) ;
 Q "style=""text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""""
 ;
RKV(VL,NOHB) ;
 S VL=$TR(VL,"<>","  ")
 S VL=$$RPL^%L1FRM(VL,"CR","")
 I VL="" Q "&nbsp;"
 I VL?1N.N1"="1N.N,$L(VL)>15 S VL=$TR($J("",$L(VL))," ","*") Q VL
 I VL?1"-"1N.N.".".N Q "<span style=""color:red"">"_VL_"</span>"
 I $G(NOHB) Q VL
 Q $$H2U^%L1FRM(VL)
 ;
 ;
GET(VP,RKV) Q $$GET^W4TMPANS(VP,RKV)
 ;
 ;
VC ;-------------- VALIOCARD ---------------
 ;
 I $$VZ="SHOWBONUS" D VCSHOWBONUS
 ;
 W "<div id=""divtbl"" align=""center"">",!
 D ^%L1WEBHD($G(%ARG("HD")))
 W "<br />",!
 W "<table width=""65%"" cellpadding=""3"" border=""0"" style=""padding:10px;border:ridge;2px;font-weight:bold"" dir="""_$$^%W1DIR_""">",!
 W " <tr>"
  W "<td>"_$$^%W1DICT("CARDNUMBER")_"</td>",!
  N VC,VC1,VC2 S VC=+$$GET("VCARD","CARDNUMBER")
  S VC1=$E(VC,1,$L(VC)-4)
  S VC2=$E(VC,$L(VC)-3,$L(VC))
  S VC1=$TR($J("",$L(VC1))," ","*")
  W "<td dir=""LTR"" align=""right"">"_$$SHOW(VC1_VC2)_"</td>",!
 W " </tr>"
 ;
 W " <tr>"
  W "<td>"_$$^%W1DICT("COUPON")_"</td>",!
  W "<td>"_$$SHOW($$GET("VCARD","COUPON"))_"</td>",!
 W " </tr>"
 ;
 W " <tr>"
  W "<td>"_$$^%W1DICT("CUSTOMNAME")_"</td>",!
  W "<td>"_$$SHOW($$GET("VCARD","EMP"),"H")_"</td>",!
 W " </tr>"
 ;
 I $$VZ'="SHOWBONUS" D
 .W " <tr>"
 . W "<td>"_$$^%W1DICT("ITRA")_"</td>",!
 . W "<td>"_$$SHOW($$GET("VCARD","BUDG"),"N")_"</td>",!
 .W " </tr>"
 .
 .W " <tr>"
 . W "<td>"_$$^%W1DICT("ASKTIME")_"</td>",!
 . W "<td>"_$$SHOW($ZD($H,"DD.MM.YY  24:60"))_"</td>",!
 .W " </tr>"
 ;
 W " <tr>"
  W "<td>"_$$^%W1DICT("DISC")_"</td>",!
  W "<td>"_$$SHOW($$GET("VCARD","DISC"),"N")_"</td>",!
 W " </tr>"
 ;
 W "</table>",!
 ;
 ;
 W "<br>"
 W "<table width=""65%"" dir="""_$$^%W1DIR_""">",!
  F I=1:1:12 Q:$$GET("VCARD","MES"_I)["VC.V1.END"  D
  .W "<tr>",!
  . W "<td>"_$$SHOW($$GET("VCARD","MES"_I),"H")_"</td>"
  .W "</tr>",!
 W "</table>",!
 ;
 I $G(%ARG("VZ"))="LOADC"&($G(%ARG("MSG"))="")&$$GET("VCARD","LOADSUM")&($$GET("VCARD","STR")'<0) D
 .W "<br>",!
 .W "<div id=""divbut"" align=""center"">",!
 . W "   <input type=""button"" class=""btn"" style=""color:white;width:180px"" value="""_$$^%W1DICT("LOADCARD")_""" "_$$^W4TOUCH_"=""LoadValioCard()"">"
 .W "</div>",!
 ;
 I $G(%ARG("VZ"))="DELLOAD" D VCDELLOAD
 I $G(%ARG("VZ"))="SHOWHIST" D VCSHOWHIST
 Q
 ;
 ;
VCSHOWBONUS ;
 N OK S OK=0
 N N S N=999 F  S N=$O(@$$^W4ORD@(HZM,"VC",N),-1) Q:N=""  D  Q:OK
 .I $$ISDISC^WV(HZM,N) S OK=1 Q
 Q:'OK
 N CARD,NAME,DISCOUNT
 S CARD=$$GETBON^WV(HZM,N,"CARD")
 S NAME=$$GETBON^WV(HZM,N,"NAME")
 S DISCOUNT=$$GETBON^WV(HZM,N,"DISC")
 N VP S VP=$$VP
 D PUT^W4TMPANS(VP,"CARDNUMBER",CARD)
 D PUT^W4TMPANS(VP,"EMP",NAME)
 D PUT^W4TMPANS(VP,"DISC",DISCOUNT)
 N TXT S TXT=$$GETBON^WV(HZM,N,"PRINTMSG")
 D ^WVPC(TXT,0,1)
 D MSG^WVGETINF
 Q
 ;
 ;
VCDELLOAD ;
 W "<table width=""65%"" border=""1"" cellpadding=""6px"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W " <tr>"
 W "   <th>",!
 W "    "_$$^%W1DICT("RECEIPT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("ISSUETIME")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CARDNUMBER")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 W " </tr>",!
 ;
 I $$GET("VCARD","CARDNUMBER") D
 .N KLIN S KLIN=$$^W4GL("KLIN")
 .N N,LK S N=""
 .F  S N=$O(@KLIN@("CB",N),-1) Q:N=""  S LK=$G(^(N)) I LK=$$^WVLKH D VCLINECB(N)
 W "</table>",!
 Q
 ;
 ;
VCSHOWHIST ;
 N VC S VC=$$GET("VCARD","CARDNUMBER") Q:'VC
 ;
 W "<table width=""65%"" border=""1"" cellpadding=""6px"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W " <tr>"
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("ORDER")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("BONUS")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUMVC")
 W "   </th>",!
 ;
 N GL S GL=$$^W4GL("W4VCI")
 N N S N="" F  S N=$O(@GL@(VC,N)) Q:N=""  D
 .N DATCB,SUM,SUMVC,BON
 .S DATCB=$$DATCB^W4HZMST(N)
 .S SUM=$$TSHL^W4HZMST(N)
 .S BON=$G(@GL@(VC,N,"DISC"))
 .S SUMVC=$G(@GL@(VC,N,"PAY"))
 .W "<tr "_$$^W4TOUCH_"=""ShowOrd('"_N_"')"" style=""cursor:pointer"" >",!
 . W "<td>"_DATCB_"</td>"
 . W "<td>"_N_"</td>"
 . W "<td>"_$J(SUM,2,2)_"</td>"
 . W "<td>"_$J(BON,2,2)_"</td>"
 . W "<td>"_$J(SUMVC,2,2)_"</td>"
 .W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
VCLINECB(NOMCB) ;
 N W4CB Q:$G(NOMCB)=""
 D ^W4CBGET(NOMCB)
 I +$G(W4CB("VCARD"))'=+$$GET("VCARD","CARDNUMBER") Q
 I $G(W4CB("TOT"))<0 Q
 I $$^W4DELCB(NOMCB) Q
 W "<tr "_$$^W4TOUCH_"=""ShowReceipt('"_NOMCB_"','','',.5)"" "
  W " style=""cursor:pointer"" "
 W ">"
  N CARD S CARD=$G(W4CB("VCARD"))
  I CARD["=" S CARD=$P(CARD,"=",1)
  W "<td>"_$$SHOW(NOMCB)_"</td>",!
  W "<td>"_$$SHOW($G(W4CB("TODATE")),"","black")_"</td>",!
  W "<td>"_$$SHOW($G(W4CB("ISSUETIME")),"","black")_"</td>",!
  W "<td>"_$$SHOW(CARD,"","black")_"</td>",!
  W "<td>"_$$SHOW($G(W4CB("VCNAME")),"H","black")_"</td>",!
  W "<td>"_$$SHOW($G(W4CB("TOT")),"N","black")_"</td>",!
 W "</tr>",!
 Q
 ;
SHOW(VL,PR,COLOR) ;
 ;;I 'VC Q ""
 I $G(COLOR)="" S COLOR="brown"
 I $G(PR)="N" S VL=$J(VL,2,2)
 I $G(PR)="H" S VL=$$H2U^%L1FRM(VL)
 I VL="" S VL="&nbsp;"
 I VL<0 S COLOR="red"
 Q "<span style=""color:"_COLOR_";font-weight:bold"">"_VL_"</span>"
 ;
 ;
CRORD(PRM) ;--- SOZD FICT HAZM (-JB) DLYA PLATEJEY
 D SAVE^W4TMPORD
 K @$$^W4TMPORD
 N VP,VZ S VP=$P(PRM,";"),VZ=$P(PRM,";",2)
 N HZMO S HZMO=$$GET^%W1PRM("HZM")
 S HREF=$$GET^%W1PRM("HREF")
 I HREF'["<UNDEF" D PUT^%W1PRM("HREFO",HREF)
 I HZMO>0 D PUT^%W1PRM("HZMO",HZMO)
 ;
 N HZM,SUM S HZM=-JB,SUM=$$GET(VP,"LOADSUM")
 I 'SUM S SUM=$$GET(VP,"SUM")
 K @$$^W4ORD@(HZM)
 S $P(@$$^W4ORD@(HZM),"\",11)=SUM
 S @$$^W4ORD@(HZM,1)="0\\\"_SUM_"\1\\"_SUM
 D PUT^%W1PRM("HZM",HZM)
 D PUT^%W1PRM("VPLOAD",VP)
 D PUT^%W1PRM("VZLOAD",VZ)
 Q
 ;
VP(STAM) Q $G(%ARG("VP"))
 ;
VZ(STAM) Q $G(%ARG("VZ"))
 ;
 ;
PRINTVC ;
 N I,STPC,%MDP,PRINT
 N STR S STR=$$GET("VCARD","STR")
 ;
 N V1GETINF S V1GETINF=$$GET^%W1PRM("VZ")
 I V1GETINF=""!(V1GETINF["UNDEF") D
 .S V1GETINF=$$GET^%W1PRM("VZLOAD")
 .I V1GETINF["UNDEF" S V1GETINF=""
 ;
 D V1HD^WVGETINF
 D ^W4MDPPC,^%L1TS
 ;
 F I=1:1:12 Q:$$GET("VCARD","MES"_I)["VC.V1.END"  D
 .S STPC=$$GET("VCARD","MES"_I)
 .S STPC=$TR(STPC,TS0,TSS)
 .S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,99999))+1)=$G(%MDP("N"))_$J($$SPA^%L1FRM(STPC),39)
 ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
CLEAR ;
 Q
 ;
SETVC(STAM) ; 
 N NOM S NOM=$O(@$$^W4TMPORD@("VC",9999),-1)
 N OK S OK=1
 N CARDNEW S CARDNEW=$$GET^W4TMPANS("VCARD","CARDNUMBER")
 I NOM D  I 'OK Q 0
 .N CARDOLD S CARDOLD=$G(@$$^W4TMPORD@("VC",NOM,"CARD"))
 .I CARDOLD,CARDNEW'=CARDOLD,'$$DELVCSUPER S OK=0
 ;
 I 'NOM S NOM=1
 S @$$^W4TMPORD@("VC",NOM,"CARD")=CARDNEW
 Q 1
 ;
 ;
DELVCSUPER(STAM)
 I '$$SUPER^W3PRM(+$$GETP^%W1PRM("MSD")) Q 1
 N NOM S NOM=$O(@$$^W4TMPORD@("VC",9999),-1)
 I 'NOM Q 1
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N A,CARDOLD,TRID S A=1
 S CARDOLD=$G(@$$^W4TMPORD@("VC",NOM,"CARD"))
 N STR S STR=$G(@$$^W4TMPORD@("VC",NOM))
 S TRID=$$^WVPRS(STR,"TransId")
 ;
 I CARDOLD,TRID D
 .S A=$$DEL^WVVOID(HZM,CARDOLD,TRID)
 ;
 K @$$^W4TMPORD@("VC",NOM)
 K @$$^W4TMPORD@("VC","LASTSTR")
 ;
 D DELVCHNH^W4PAY("",$$^W4TMPORD)
 ;
 I HZM>0 D
 .D DELVCHNH^W4PAY(HZM)
 .K @$$^W4ORD@(HZM,"VC",NOM)
 .K @$$^W4ORD@(HZM,"VC","LASTSTR")
 ;
 Q A
 ;
 ; 
GETDET ; 
 N CRD S CRD=+$$GET("VCARD","CARDNUMBER") ; -- 22/12/21 
 I CRD N A S A=$$SND^WVGETINF(CRD,"&OPCODE=8") 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CASH
W4CASH ; [ 29.12.25 14:18 ] [ 28.12.25 02:59 ] [ 25.08.25 10:09 ] 
 N (JB,%ARG,%REM)
 S WORD="CASHCOUNTING"
 I $$HFKD=1 S WORD="CASHINVST2CSR"
 I $$HFKD=2 S WORD="CASHFOND"
 I $$HFKD=3 S WORD="SMARTCASH4CSRARM"
 D ^%W1HD(WORD)
 ;
 W "<br>",!
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  S WORD="NEWCOUNTING"
  I $$HFKD=1 S WORD="NEWINVEST"
  I $$HFKD=2 S WORD="NEWCASHFOND"
  I $$HFKD=3 S WORD="NEWSMARTCASH4CSRARM"
  D ^W4BTN($$^%W1DICT(WORD),"NewCounting()","Blue")
  ;
  S TOP=150,HG=520
  W "<div "
   W "style=""position:absolute;left:5%;top:"_TOP_"px;width:90%;height:"_HG_"px;overflow:auto"" "
  W ">",!
   D TBLCOUNT
  W "</div>",!
    ;
  S TOP=TOP+HG+20
  W "<div "
   W "style=""position:absolute;left:46%;top:"_TOP_"px;width:10%;height:150px"" "
  W ">",!
   D ^W4BTN("BACK","Back()","red","","22")
  W "</div>",!
  Q
  ;
SHAA(SEC) ;
 I SEC?10N S SEC=$E(SEC,6,10)
 Q $$T^%L1TIME(SEC)
 ;
SUM(A) ;
 D PRS^W4CASHC(A,"\")
 I $$HFKMZM1^W4PRM Q ITRA
 Q (S200*200+(S100*100)+(S50*50)+(S20*20)+(M10*10)+(M05*5)+(M02*2)+M01+(0.5*M050)+(0.1*M010))
 ;
 ;
TBLCOUNT ;
 I $$CSHPOS^W4PRM,'$$HFKD G TBLCOUNTPOS
 ;
 W "<table id=""TblCash"" style=""font-size:"_$$^W3FSZ(16)_""" cellspacing=""1"" cellpadding=""10"" border=""1"" >"
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>"
    W "<th>"_$$^%W1DICT("POSNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("TIME")_"</th>"
    I '$$HFKMZM1^W4PRM W "<th>"_$$^%W1DICT("WHOCOUNT")_"</th>"
    W "<th>"_$$^%W1DICT("SUM")_"</th>"
    I '$$HFKMZM1^W4PRM W "<th>"_$$^%W1DICT("COMMENT")_"</th>"
   W "</tr>",!
   ;
   S GL=$$GL
   ;
   S K=0,SUMDT=0
   S DT="" F  S DT=$O(@GL@(DT),-1) Q:DT=""  D
   .S POS="" F  S POS=$O(@GL@(DT,POS)) Q:POS=""  D
   ..S SEC="" F  S SEC=$O(@GL@(DT,POS,SEC),-1) Q:SEC=""  D
   ...S A=$G(^(SEC))
   ...S K=K+1
   ...I '$$HFKMZM1^W4PRM W "<tr "_$$^W4TOUCH_"=""Click('"_K_"','"_DT_"','"_POS_"','"_SEC_"')"" style=""cursor:pointer"">"
   ...I $$HFKMZM1^W4PRM W "<tr>"
   ... W "<td id=""td"_K_""">"_$ZD(DT,"DD.MM.YY")_"</td>"
   ... W "<td>"_POS_"</td>"
   ... W "<td>"_$$SHAA(SEC)_"</td>"
   ... D PRS^W4CASHC(A,"\")
   ... I '$$HFKMZM1^W4PRM W "<td>"_$$H2U^%L1FRM(WHO)_"</td>"
   ... N SUM S SUM=$$SUM(A),SUMDT=SUMDT+SUM
   ... W "<td>"_$J(SUM,2,2)_"</td>"
   ... I '$$HFKMZM1^W4PRM W "<td>"_$$H2U^%L1FRM($G(HRA))_"</td>"
   ...W "</tr>",!
   .
   .W "<tr style=""background-color:yellow"">",!
   . W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>" 
   . W "<td>&nbsp;</td>"
   . W "<td>&nbsp;</td>"
   . I '$$HFKMZM1^W4PRM W "<td>&nbsp;</td>"
   . W "<td>"_$J(SUMDT,2,2)_"</td>"
   . I '$$HFKMZM1^W4PRM W "<td>&nbsp;</td>"
   . S SUMDT=0 
   .W "</tr>",! 
 ; 
 W "</table>",!
 Q
 ;
 ; 
TBLCOUNTPOS ;
 N FSZ S FSZ=20 I $$1024^W4WDSCR S FSZ=14
 W "<table id=""TblCash"" style=""font-size:"_$$^W3FSZ(FSZ)_""" cellspacing=""1"" cellpadding=""10"" border=""1"" >"
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>"
    W "<th>"_$$^%W1DICT("POSNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("TIME")_"</th>"
    W "<th>"_$$^%W1DICT("WHOCOUNT")_"</th>"
    W "<th>"_$$^%W1DICT("COUNTING")_"</th>"
    W "<th>"_$$^%W1DICT("CASHBEFORE")_"</th>"
    W "<th>"_$$^%W1DICT("SOLD")_"</th>"
    W "<th>"_$$^%W1DICT("DIFFERENCE")_"</th>"
    W "<th>"_$$^%W1DICT("CASHTAKED")_"</th>"
    W "<th>"_$$^%W1DICT("CASHADDED")_"</th>"
    W "<th>"_$$^%W1DICT("COMMENT")_"</th>"
   W "</tr>",!
   ;
   S GL=$$GL
   N K,DT0,SSUM,SCASH0,SSOLD,STAKED,SADDED
   S K=0,DT0="" S (SSUM,SCASH0,SSOLD,STAKED,SADDED)=0
   N VRM S VRM=$$^W4MAIN("VRM") K @VRM 
   ;
   S POS="" F  S POS=$O(@GL@(POS)) Q:POS=""  D
   .S SEC="" F  S SEC=$O(@GL@(POS,SEC)) Q:SEC=""  D
   ..S DT=$E(SEC,1,5) Q:DT=""
   ..S @VRM@(DT,POS,SEC)=$G(@GL@(POS,SEC))
   ;
   S DT="" F  S DT=$O(@VRM@(DT),-1) Q:DT=""  D
   .S POS="" F  S POS=$O(@VRM@(DT,POS)) Q:POS=""  D
   ..S SEC="" F  S SEC=$O(@VRM@(DT,POS,SEC),-1) Q:SEC=""  D
   ...S A=$G(^(SEC))
   ...D CSHPOS(POS,SEC,A)
   ;
   D TOT
  ; 
 W "</table>",!
 K @VRM
 Q
 ;
 ;
GL(STAM) ;
 N GL
 I $$HFKD=1 S GL=$$^W4GL("W4CSH2CSR") Q GL
 I $$HFKD=2 S GL=$$^W4GL("W4MZ2SM") Q GL
 I $$HFKD=3 S GL=$$^W4GL("W4MZ4SM") Q GL
 ;
 S GL=$$^W4GL("W4CASHC")
 I $$CSHPOS^W4PRM S GL=$$^W4GL("W4CSHPOS")
 Q GL
 ;
TOT ; 
  W "<tr style=""background-color:yellow;font-weight:bold"" >"
    W "<td >"_$ZD(DT0,"DD.MM.YY")_"</td>"
    W "<td colspan=""3"">&nbsp;</td>"
    W "<td >"_$J(SSUM,2,2)_"</td>"
    W "<td >"_$J(SCASH0,2,2)_"</td>"
    W "<td >"_$J(SSOLD,2,2)_"</td>"
    W "<td>"_$J(SSUM-SCASH0-SSOLD,2,2)_"</td>"
    W "<td>"_$J(STAKED,2,2)_"</td>"
    W "<td>"_$J(SADDED,2,2)_"</td>"
    W "<td>&nbsp;</td>"
   W "</tr>"
  S (SSUM,SCASH0,SSOLD,STAKED,SADDED)=0
 Q
 ;
CSHPOS(POS,SEC,A) ; 
 S K=K+1
 N DT S DT=$E(SEC,1,5) I $E(SEC,6,10)<(6*3600) S DT=DT-1
 I DT'=DT0,DT0 D TOT
 S DT0=DT
 W "<tr "_$$^W4TOUCH_"=""ClickPos('"_K_"','"_POS_"','"_SEC_"')"" style=""cursor:pointer"">"
  W "<td id=""td"_K_""">"_$ZD($E(SEC,1,5),"DD.MM.YY")_"</td>"
  W "<td>"_POS_"</td>"
  W "<td>"_$$SHAA(SEC)_"</td>"
  D PRS^W4CASHC(A,"\")
  W "<td>"_$$H2U^%L1FRM(WHO)_"</td>"
  N SUM S SUM=$$SUM(A),SSUM=SSUM+SUM
  S SCASH0=SCASH0+CASH0  
  S SSOLD=SSOLD+SOLD
  S STAKED=STAKED+TAKED
  S SADDED=SADDED+ADDED
  W "<td>"_$J(SUM,2,2)_"</td>"
  W "<td>"_$J(CASH0,2,2)_"</td>"
  W "<td>"_$J(SOLD,2,2)_"</td>"
  W "<td>"_$J(SUM-CASH0-SOLD,2,2)_"</td>"
  W "<td>"_$J(TAKED,2,2)_"</td>"
  W "<td>"_$J(ADDED,2,2)_"</td>"
  W "<td>"_$$H2U^%L1FRM(CMNT)_"</td>"
 W "</tr>",!
 Q 
 ;
HFKD(STAM) ; 
 I $G(%ARG("HFKD")) Q $G(%ARG("HFKD"))
 I $$GETP^%W1PRM("CSH2CSR") Q $$GETP^%W1PRM("CSH2CSR")
 Q 0 
 ;
 ;
HFKDSUM(NZ,KP,DT) ; 
 I '$G(NZ) Q 0
 N A,DT0,DT2,DTC,SUM,GLZ,KUP,NZC,TIM
 S GLZ=$$^W4GL("Z") 
 S GLCSH=$$^W4GL("W4CSH2CSR") 
 S DT=$G(DT)
 I 'DT D
 .I NZ>$G(@GLZ) S DT=$$^W4DZ Q
 .N N S N="" F  S N=$O(@GLZ@(N)) Q:N=""  I $D(@GLZ@(N,NZ)) S DT=N Q
 ;
 S DT0=$O(@GLZ@(DT),-1)
 S DT2=$O(@GLZ@(DT))
 I DT2="" S DT2=+$H
 ;;S DTC=$S(DT0:DT0-1,1:""); -- 15.07.25
 S DTC=$S(DT0:DT0,1:""); -- 15.07.25
 S SUM=0
 ;
 F  S DTC=$O(@GLCSH@(DTC)) Q:DTC=""  Q:DTC>DT2  D
 .S KUP="" F  S KUP=$O(@GLCSH@(DTC,KUP)) Q:KUP=""  D
 ..I $G(KP),KUP'=KP Q
 ..S TIM="" F  S TIM=$O(@GLCSH@(DTC,KUP,TIM)) Q:TIM=""  S A=$G(^(TIM)) D
 ...S NZC=$$^W4NZ(DTC,TIM) I NZ'=+NZC Q
 ...S SUM=SUM+$P(A,"\",17)
 ;
 Q SUM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CASHC
W4CASHC ; [ 06.03.26 04:44 ] [ 27.01.26 10:52 ] [ 21.01.26 13:15 ] 
 N (JB,%ARG,%REM,DT,POS,SEC)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$HFKD=3,'$$VIEW S RES=$$LEVELS^W4CASHC(+$H,$P($H,",",2))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  ;
 I $G(%ARG("FIRST")) D KILL^%W1PRM("VIRTKB")
 D ^%W1ARG
 ;
 I '$$VIEW D
 .S DT=+$H
 .S POS=$$MYDVN
 .S SEC=$$INDH
 ;
 I $$VIEW,$$CSHPOS^W4PRM D
 .N A S A=$G(@$$GL@(POS,SEC))
 .S DT=$E(SEC,1,5)
 ;
 D
  .W "<br>"
  .W "<table style=""font-size:"_$$^W3FSZ(16)_""" width=""35%"" border=""0"" >",!
  . W "<tr>"
  .  I '$$CSHPOS^W4PRM W "<td>"_$$^%W1DICT("DATE")_" : "_$$RKV($ZD(DT,"DD.MM.YY"))_"</td>"
  .  W "<td>"_$$^%W1DICT("POSNUMBER")_" : "_$$RKV(POS)_"</td>"
  .  N TIME S TIME="" I SEC?10N D
  ..  S TIME=$ZD($E(SEC,1,5),"DD.MM.YY")
  ..  S TIME=TIME_" "_$$T^%L1TIME($E(SEC,6,10))
  .  I SEC?5N S TIME=$$T^%L1TIME(SEC)
  .  W "<td>"_$$^%W1DICT("TIME")_" : "_TIME_"</td>"
  . W "</tr>",! 
  .W "</table>",!
 ;
 I '$$VIEW,$$HFKMZM1 D VVMZM W "</div>",! Q
 ;
 I '$$VIEW D
 .W "<br>",!
 .
 .W "<input type=""button"" id=""virtkbtn"" class=""btnrnd"" "
 .I $G(%ARG("FIRST")) D
 ..W " value="""_$$^%W1DICT("SHOWVIRTKB")_""" "
 .W " "_$$^W4TOUCH_"=""VirtKB()"" style=""color:blue"" />",!
 .W "<br><span id=""virtmsg"" style=""color:brown;"_$$FONTFM^W3CSS_"""></span>"
  ;
 W "<br><br>",!
  S K=1
  S WORD="WHOCOUNT"
  I $$HFKD,$$HFKD'=3 S WORD="WHOINVEST"
  I $$HFKD,$$HFKD=3 S WORD="WHOCOLLECT"
  ;
  D INPABC(K,WORD,"WHO",16)
  ;
  S K=K+1
  W $$NBSP^%L1FRM(5)
  ;
  D INPABC(K,"COMMENT","COMMENT",16)
  W "<br><br>",!
 D
 .I '$$CSHPOS^W4PRM D COUNT Q  ; -- SFIRA SHEL COL HAKUPOT YAHAD
 .
 .I $$CSHPOS^W4PRM D  Q  ; -- SFIRA SHEL COL KUPA BRNIFRAD
 ..W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""20"" >",!
 .. W "<tr>",!
 ..  W "<td width=""25%"">" D ^W4CSHPOS W "</td>"
 ..  W "<td width=""50%"">" D COUNT W "</td>"
 ..  W "<td width=""25%"">"  D TAKEADD W "</td>"
 .. W "</tr>",!
 ..W "</table>",!
 ;
BUTSBM ;
 W "<br><br>",!
 ;
 I '$$VIEW D ^W4SBMBCK
 ;
 I $$VIEW D
 .D ^W4BTN("CSRPRINT","Print2CSR('"_DT_"','"_POS_"','"_SEC_"')","blue")
 .W $$NBSP^%L1FRM(7)
 .D ^W4BTN("BACK","Back()","red")
 ;
 W "</div>",!
 Q
 ;
 ;
INPABC(K,TX,ID,FSZ)
  I $G(FSZ)<11 S FSZ=16
  W "<span style=""font-size:"_$$^W3FSZ(+FSZ)_""">"_$$^%W1DICT(TX)_"</span>"
  W $$NBSP^%L1FRM(3)
  ;
  I '$$VIEW D
  .W "<input type=""text"" id="""_ID_""" size="""_$$LN(K)_""" style=""font-size:"_$$^W3FSZ(FSZ)_""" "
  . W " tabindex="""_K_""" "
  . W " onFocus=""ShowVirtKB(this,'MTB','H','"_$$LN(K)_"','"_K_"')"" "
  .W ">",!
  ; 
  I $$VIEW D
  .W $$RKV($$H2U^%L1FRM($$VL(K)))
 Q
 ;
 ;
INP(ID,K) ;
 N ST
 ;
 I '$$VIEW D
 .S ST="<input type=""text"" id="""_ID_""" onKeyUp=""OnKeyUp('"_ID_"')"" "
 .S ST=ST_"onFocus="""_$$THIS(ID)_".select();ShowVirtKB("_$$THIS(ID)_",'MTB','"_$$TYP(K)_"','"_$$LN(K)_"','"_K_"')"" "
 .S ST=ST_" tabindex="""_K_""" "
 .S ST=ST_" value="""" "
 .S ST=ST_"style=""font-size:"_$$^W3FSZ(18)_""" size="""_$$LN(K)_""" >"
 ;
 I $$VIEW D
 .S ST=$$RKV($$VL(K))
 ;
 Q ST
 ;
 ;
INP1(K) ;
 N ST,I,ID
 S ID=$P($T(TB+K),";",2)
 ;
 I '$$VIEW D
 .S ST="<input type=""text"" id="""_ID_""" onKeyUp=""OnKeyUp('"_ID_"')"" "
 .S ST=ST_"onFocus=""this.style.backgroundColor='lightyellow';this.select();ShowVirtKB(this,'TB','"_$$TYP1(K)_"','"_$$LN1(K)_"','"_K_"')"" "
 .S ST=ST_" onBlur =""this.style.backgroundColor='white';this.setSelectionRange(0,0)"" "
 .S ST=ST_" size="""_$$LN1(K)_""" "
 .S ST=ST_" tabindex="""_(12+K)_""" "
 .S ST=ST_"style=""font-size:"_$$^W3FSZ(18)_""" size="""_$$LN1(K)_""" >"
 ;
 I $$VIEW D
 .S ST=$$RKV($$VL1(K))
 ;
 Q ST
 ;
 ;
 ;
COUNT ;
  S TOTAL=0
  N PRMZV S PRMZV=0
  D
  .N DT,TIM,A,STR
  .S DT=+$H
  .I '$$VIEW S TIM=$O(@$$^W4GL("W4CSHLVL")@(DT,""),-1)
  .I '$$VIEW,$$DIF^%L1TIME($H,DT_","_TIM)>5 Q
  .I $$VIEW S TIM=$O(@$$^W4GL("W4CSHLVL")@(DT,$G(%ARG("SEC"))),-1)
  .I $G(TIM)="" S TIM=$P($H,",",2)
  .S PRMZV=1
  .S A=$G(@$$^W4GL("W4CSHLVL")@(DT,+TIM))
  .S STR="SUMC\SUMS\STACK\DRAWER\PRINCIPAL\MM010\MM050\MM01\MM02\MM05\MM10\MS20\MS50\MS100"
  .D PRS^%L1FRM(A,STR,"\")
  ;
  W "<table id=""TblCashC"" align=""center"" cellspacing=""10"" >"
   S K=K+1
   I $$HFKD'=2,$$HFKD'=3 D
   .W "<tr>"
   . W "<td "_$$STYLE1_" >"_$$^%W1DICT("S200")_"</td>"
   . W "<td>"_$$INP("S200",K)_"</td>"
   . W "<td>"_$$SUM("S200S",K)_"</td>"
   .W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_">"_$$^%W1DICT("S100")_"</td>"
    S K=K+1
    W "<td>"_$$INP("S100",K)_"</td>"
    W "<td>"_$$SUM("S100S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("S100")_" >"_MS100_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_">"_$$^%W1DICT("S50")_"</td>"
    S K=K+1
    W "<td>"_$$INP("S50",K)_"</td>"
    W "<td>"_$$SUM("S50S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("S50")_">"_MS50_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_">"_$$^%W1DICT("S20")_"</td>"
    S K=K+1
    W "<td>"_$$INP("S20",K)_"</td>"
    W "<td>"_$$SUM("S20S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("S20")_" >"_MS20_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_">"_$$^%W1DICT("M10")_"</td>"
    S K=K+1
    W "<td>"_$$INP("M10",K)_"</td>"
    W "<td>"_$$SUM("M10S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("M10")_" >"_MM10_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_">"_$$^%W1DICT("M05")_"</td>"
    S K=K+1
    W "<td>"_$$INP("M05",K)_"</td>"
    W "<td>"_$$SUM("M05S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("M05")_">"_MM05_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_">"_$$^%W1DICT("M02")_"</td>"
    S K=K+1
    W "<td>"_$$INP("M02",K)_"</td>"
    W "<td>"_$$SUM("M02S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("M02")_">"_MM02_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_" >"_$$^%W1DICT("M01")_"</td>"
    S K=K+1
    W "<td>"_$$INP("M01",K)_"</td>"
    W "<td>"_$$SUM("M01S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("M01")_">"_MM01_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_" >"_$$^%W1DICT("M050")_"</td>"
    S K=K+1
    W "<td>"_$$INP("M050",K)_"</td>"
    W "<td>"_$$SUM("M050S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("M050")_">"_MM050_"</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td "_$$STYLE1_" >"_$$^%W1DICT("M010")_"</td>"
    S K=K+1
    W "<td>"_$$INP("M010",K)_"</td>"
    W "<td>"_$$SUM("M010S",K)_"</td>"
    I $$HFKD=3,PRMZV D 
    . W "<td "_$$CLMAX("M010")_">"_MM010_"</td>"
   W "</tr>",!
   ;
   W "<tr style=""font-size:"_$$^W3FSZ(16)_";background-color:yellow;font-weight:bold"">"
    W "<td colspan=""2"">"_$$^%W1DICT("TOTAL")_"</td>"
    W "<td style=""font-size:"_$$^W3FSZ(18)_""">"
     I '$$VIEW W $$SUM("TOTAL") S %ARG("COUNT")=$$SUM("TOTAL")
     I $$VIEW W $J(TOTAL,2,2) S %ARG("COUNT")=TOTAL
    W "</td>"
   W "</tr>",!
   ;
 W "</table>",!
 Q
 ;
 ;
SUM(ID,K) ;
 N ST
 I '$$VIEW D
 .S ST="<input type=""text"" id="""_ID_""" "
 .S ST=ST_"style=""font-size:"_$$^W3FSZ(18)_""" "
 .I $G(K) S ST=ST_" value="""_+$$VL(K)_""" "
 .S ST=ST_" size=""6"" readonly=""readonly"" >"
 ;
 ;;S ^AA("W4CASHC","ID")=ID
 ;;S ^AA("W4CASHC","ID","K")=$G(K)
 I $$VIEW D
 .N VL,SUM S VL=$$VL(K) 
 .N FLD S FLD=$E(ID,2,20)
 .S SUM=FLD*VL 
 .I $E(FLD)="0"&($E(FLD,3)=0) S SUM=SUM*.01
 .S TOTAL=TOTAL+SUM
 .S ST=$$RKV($J(SUM,2,2))
 ;
 Q ST
 ;
 ;
STYLE1(STAM) ;
 Q " style=""font-size:"_$$^W3FSZ(14)_""" "
 ;
STYLE2(STAM) ;
 Q " style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(16)_""" "
 ;
VIRTKB(STAM) ;
 I $$GETP^%W1PRM("VIRTKB") Q 1
 Q 0
 ;
SWITCHVIRTKB(STAM) ;
 N VKB S VKB=$$GETP^%W1PRM("VIRTKB")
 S VKB=1-VKB
 D PUT^%W1PRM("VIRTKB",VKB)
 I VKB=1 Q "HIDEVIRTKB"
 Q "SHOWVIRTKB"
 ;
 ;
SBM(PRM) ;
 N (JB,%ARG,PRM)
 S HFKD=$P(PRM,"~")
 S PRM=$P(PRM,"~",2,200)
 D PRS(PRM,"^")
 ;
 S WHO=$$INVH^%L1FRM($$CNWEB^%L1FRM(WHO))
 I WHO="",'$$HFKMZM1 Q "NOWHOCOUNT"
 S CMNT=$$INVH^%L1FRM($$CNWEB^%L1FRM(CMNT))
 S ST=WHO_"\"_CMNT
 ;
 I '$$HFKMZM1 D
 .;            3        4        5       6       7       8      9       10
 .S ST=ST_"\"_S200_"\"_S100_"\"_S50_"\"_S20_"\"_M10_"\"_M05_"\"_M02_"\"_M01
 .;            11        12        13        14      15       16        18     19
 .S ST=ST_"\"_SOLD_"\"_CASH0_"\"_TAKED_"\"_ADDED_"\"_HZ1_"\"_HZ2_"\\"_M050_"\"_M010
 .N ITRA S ITRA=$$SUM^W4CASH(ST)-TAKED+ADDED
 .S $P(ST,"\",17)=ITRA
 ;
 I $$HFKMZM1 D
 .N SUM S SUM=$P(PRM,"^",3)
 .I SUM["+"!(SUM["-")!(SUM["*") X "S SUM="_SUM
 .S $P(ST,"\",17)=SUM
 ;
 I '$$SUM^W4CASH(ST) Q "HFKSUMZERO"
 ;
 ;;S ^AA("W4CASHC","SBM","GL")=$$GL
 ;
 S RES=0
 ;
 I $$HFKD=2 D  ; -- RCNFG OF SMAST CASH
 .D RCNFG(ST,2)
 ;
 I $$HFKD=3 D  ; -- 
 .D ARMCOLLECT(ST)
 .;;D RCNFG(ST,3)
 ;
 I RES=0!(RES=200) D
 .I $$HFKD S @$$GL@(+$H,$$MYDVN,$P($H,",",2))=ST Q
 .I '$$CSHPOS^W4PRM S @$$GL@(+$H,$$MYDVN,$P($H,",",2))=ST Q
 .I $$CSHPOS^W4PRM D  Q
 ..S @$$GL@($$MYDVN,$$INDH)=ST
 ;
 Q RES
 ;
 ;
IND(LB,K) ;
 Q $P($T(@LB+K),";",2)
 ;
INDH(STAM) ;
 Q +$H_$TR($J($P($H,",",2),5)," ",0)
 ;
TYP(K) ;
 Q $P($T(MTB+K),";",3)
 ;
LN(K) ;
 Q $P($T(MTB+K),";",4)
 ;
IK(K) ;
 N A,IND S A=$T(MTB+K)
 I $P(A,";",6) Q $P(A,";",6)
 Q K
 ;
VL(K) ;
 I $$HFKD!'$$CSHPOS^W4PRM Q $P($G(@$$GL@(DT,POS,+SEC)),"\",$$IK(K))
 Q $P($G(@$$GL@(POS,SEC)),"\",$$IK(K))
 ;
MTB ;
 ;WHO;H;15;
 ;COMMENT;H;45;
 ;S200;N;3;
 ;S100;N;3;;4
 ;S50;N;3;;5
 ;S20;N;3;;6
 ;M10;N;3;;7
 ;M05;N;3;;8
 ;M02;N;3;;9
 ;M01;N;3;;10
 ;M050;N;3;;18
 ;M010;N;4;;19
 ;;
 Q  ; 
 ;
IND1(K) ;
 Q $P($T(TB+K),";",2)
 ;
TYP1(K) ;
 Q $P($T(TB+K),";",3)
 ;
LN1(K) ;
 Q $P($T(TB+K),";",4)
 ;
VL1(K) ;
 N I S I=$P($T(TB+K),";",5) I I="" Q 0
 Q $J($P($G(@$$GL^W4CASH@(POS,SEC)),"\",I),2,2)
 ;
TB ;
 ;TAKED;N;7;13;
 ;ADDED;N;7;14;
 ;;
 Q  ; 
 ;
GETPREV(PRM) ;
 N K,ACT,LB
 S K=$P(PRM,";")
 S ACT=$P(PRM,";",2)
 S LB=$P(PRM,";",3)
 I ACT="UP",K'>1 Q ""
 I ACT="UP" Q $$IND(LB,K-1)
 I $$IND(LB,K+1)="" Q ""
 Q $$IND(LB,K+1)
 ;
VIEW(STAM) ;
 Q '$G(%ARG("NEW"))
 ;
RKV(VL,FSZ) ;
 I '$G(FSZ) S FSZ=16
 Q "<span style=""font-size:"_$$^W3FSZ(FSZ)_";color:green"">"_VL_"</span>"
 ;
 ;
PRINT(PRM)
 N (JB,%ARG,PRM)
 D ^%L1TS
 S DT=$P(PRM,"^")
 S POS=$P(PRM,"^",2)
 S SEC=$P(PRM,"^",3)
 ;
 I $$CSHPOS^W4PRM S A=$G(@$$GL@(POS,SEC))
 I $$HFKD!'$$CSHPOS^W4PRM S A=$G(@$$GL@(DT,POS,SEC))
 D PRS(A,"\")
 ;
 D ^W4MDPPC ; --> PRINT,MDP
 ;
 S ST=$G(%MDP("B"))_$TR(" onefn zxitq g""ec",TS0,TSS)_$G(%MDP("N"))
 D PCST1(PRINT,ST)
 D PCSP
 ;
 D FMT($ZD(DT,"DD.MM.YY"),"jix`z")
 D FMT(POS,"dcnr")
 D FMT($$T^%L1TIME(SEC),"dwtd onf")
 D FMT(WHO,"xteqd my","H")
 D FMT(CMNT,"dxrd","H")
 D PCSP
 D PCKAV
 D PCSP
 ;
 I $$CSHPOS^W4PRM D
 .D FMT("","onefna zexikn")
 .D PCSP
 .D FMT(HZ1,"dpnfdn")
 .D FMT(HZ2,"dpnfd cr")
 .D PCSP
 .D FMT($J(CASH0,2,2),"zexikn iptl onefn")
 .D FMT($J(SOLD,2,2),"onefna xknp")
 .D PCSP
 .D FMT($G(%MDP("B"))_$J(CASH0+SOLD,2,2)_$G(%MDP("N")),"onefn k""dq")
 .D PCKAV
 .D PCSP
 ;
 D FMT("","dxitq")
 D PCSP
 S SUM=0
 S TX=$J(200*S200,2,2)_" = 200 * "_$J(+S200,3)
 S SUM=SUM+(200*S200)
 D FMT(TX,"g""y 200 zexhy")
 S TX=$J(100*S100,2,2)_" = 100 * "_$J(+S100,3)
 S SUM=SUM+(100*S100)
 D FMT(TX,"g""y 100 zexhy")
 S TX=$J(50*S50,2,2)_" =  50 * "_$J(+S50,3)
 S SUM=SUM+(50*S50)
 D FMT(TX,"g""y 50 zexhy")
 S TX=$J(20*S20,2,2)_" =  20 * "_$J(+S20,3)
 S SUM=SUM+(20*S20)
 D FMT(TX,"g""y 20 zexhy")
 S TX=$J(10*M10,2,2)_" =  10 * "_$J(+M10,3)
 S SUM=SUM+(10*M10)
 D FMT(TX,"g""y 10 zerahn")
 S TX=$J(5*M05,2,2)_" =   5 * "_$J(+M05,3)
 S SUM=SUM+(5*M05)
 D FMT(TX,"g""y 5 zerahn")
 S TX=$J(2*M02,2,2)_" =   2 * "_$J(+M02,3)
 S SUM=SUM+(2*M02)
 D FMT(TX,"g""y 2 zerahn")
 ;
 S TX=$J(1*M01,2,2)_" =   1 * "_$J(+M01,3)
 S SUM=SUM+M01
 D FMT(TX,"g""y 1 zerahn")
 ;
 S TX=$J(0.5*M050,2,2)_" =   0.5 * "_$J(+M050,3)
 S SUM=SUM+(.5*M050)
 D FMT(TX,"g""y 0.5 zerahn")
 ;
 S TX=$J(0.1*M010,2,2)_" =   0.1 * "_$J(+M010,3)
 S SUM=SUM+(.1*M010)
 D FMT(TX,"g""y 0.1 zerahn")
 ;
 D PCSP
 D PCKAV
 D FMT($G(%MDP("B"))_$J(SUM,10,2)_$G(%MDP("N")),"k""dq","B")
 D PCSP
 ;
 I $$CSHPOS^W4PRM D
 .D FMT($J(CASH0+SOLD-SUM,2,2),"yxtd")
 .D PCSP
 .D FMT($J(TAKED,2,2),"dcwtdl gwlp")
 .D FMT($J(ADDED,2,2),"dxibnl sqep")
 .D PCSP
 .D FMT($G(%MDP("B"))_$J(SUM+TAKED-ADDED,2,2)_$G(%MDP("N")),"dxibna x`yp")
 .D PCSP
 ;
 D CUT
 ;
 Q
 ;
FMT(TX1,TX2,PR) ;
 N ST,WD1
 S WD1=$$WD1
 I $G(PR)["B" S WD1=WD1-$L(TX1)
 ;
 I $G(PR)["H" D  Q
 .S ST=$$HBR^%L1FRM($TR(TX1,TS0,TSS),WD1)_" : "_$J(TX2,$$WD2) D PCST
 ;
 S ST=$J(TX1,WD1)_" : "_$J(TX2,$$WD2) D PCST
 Q
 ;
PCSP N ST
 S ST="" D PCST
 Q
 ;
PCKAV ; 
 S ST=$TR($J("",$$WD1+$$WD2+3)," ","-")
 D PCST
 Q
 ;
PCST ;
 S ST=$J("",$$SM)_$TR(ST,TS0,TSS)
 D PCST1(PRINT,ST)
 Q
PCST1(PRINT,ST) ;
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=$E(ST,1,255)
 Q
 ;
CUT ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
WD1(STAM) ;
 Q 20
 ;
WD2(STAM) ;
 Q 15
 ;
SM(STAM) ;
 Q 0
 ;
TAKEADD ; 
 N K S K=0
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(14)_""" cellpadding=""10"">",! 
  W "<tr>"
   W "<td>"_$$^%W1DICT("DIFFERENCE")_"</td>"
   W "<td id=""dif"" "_$$STYLE2_" >"_$J($G(%ARG("CASH0"))+$G(%ARG("SOLD"))-$G(%ARG("COUNT")),2,2)_"</td>"
  W "</tr>",!
  W "<tr><td>&nbsp;</td></tr>",!
  W "<tr>"
    W "<td "_$$STYLE1_">"_$$^%W1DICT("CASHTAKED")_"</td>"
    S %ARG("TAKED")=$$VL1(1)
    W "<td >"_$$INP1(1)_"</td>"
  W "</tr>",!
  W "<tr>"
    S K=K+1
    W "<td "_$$STYLE1_">"_$$^%W1DICT("CASHADDED")_"</td>"
    S %ARG("ADDED")=$$VL1(2)
    W "<td>"_$$INP1(2)_"</td>"
  W "</tr>",!
  ;
  W "<tr><td>&nbsp;</td></tr>",!
  ;
  W "<tr>"
   W "<td>"_$$^%W1DICT("STAYINCSR")_"</td>"
   W "<td id=""STAYCSR"" "_$$STYLE2_" >"
     W $J($G(%ARG("COUNT"))-$G(%ARG("TAKED"))+$G(%ARG("ADDED")),2,2)_"</td>"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q 
 ;
PRS(PRM,DLM) ; 
 D PRS^%L1FRM(PRM,"WHO"_DLM_"CMNT"_DLM_"S200"_DLM_"S100"_DLM_"S50"_DLM_"S20"_DLM_"M10"_DLM_"M05"_DLM_"M02"_DLM_"M01"_DLM_"SOLD"_DLM_"CASH0"_DLM_"TAKED"_DLM_"ADDED"_DLM_"HZ1"_DLM_"HZ2"_DLM_"ITRA"_DLM_"M050"_DLM_"M010",DLM)
 Q
 ;
MYDVN(STAM) ; 
 I $G(%ARG("POS")) Q %ARG("POS")
 Q $$^W4MYDVN 
 ;
HFKD(STAM) ; 
 Q $$HFKD^W4CASH
 ;
GL(STAM) ; 
 Q $$GL^W4CASH 
 ;
THIS(ID) ; 
 Q "this" 
 ;
NZ() ; 
 Q $G(@$$^W4GL("Z"))+1
 ;
VVMZM ; 
 W "<div dir=""LTR"" align=""center"" >",!
 S %ARG("HEAD")="TYPESUM"
 S %ARG("CALC")=1
 D ^W4KB 
 W "</div>",!
 Q 
 ;
 ;
RCNFG(ST,HFKD) ; 
 N (JB,ST,HFKD,RES,RESP)
 N SID S SID=$G(@$$^W4PRM@("MZSM","SID"))
 N URL I $G(HFKD)=2 S URL="https://posapi.damkasys.co.il/api/v1/coc/proxy"
 S URL=URL_"?showPanel=1&secretKey="_SID
 N Type S Type="application/json"
 N Timeout S Timeout=35
 ;
 I $G(HFKD)=2 S FLTO="/tmp/flrcnfg"_+$H_"_"_$$^W4MYDVN_"_"_$P($H,",",2)
 C FLTO:(DELETE)
 O FLTO:(REWIND:WRITE:NEWVERSION)
 ;
 N M,I
 S M(10000)=$P(ST,"\",4)
 S M(5000)=$P(ST,"\",5)
 S M(2000)=$P(ST,"\",6)
 S M(1000)=$P(ST,"\",7)
 S M(500)=$P(ST,"\",8)
 S M(200)=$P(ST,"\",9)
 S M(100)=$P(ST,"\",10)
 S M(50)=$P(ST,"\",18)
 S M(10)=$P(ST,"\",19)
 ;
 N TOTAL S TOTAL=0
 ;
 U FLTO
    W "{",!
     W """req"":""reconfigure"",",! 
      W """params"":[",!
       W "{",!
        W """key"":""set_floats"",",!
        W """value"":[",!
          F I=10,50,100,200,500,1000,2000,5000,10000 D
           .D NMVL(I,+$G(M(I)))
           .S TOTAL=TOTAL+($G(M(I))*I)
           .I I'=10000!$G(TOTAL) W ","
           ;
           I $G(TOTAL) D
           .D NMVL("""principal""",TOTAL)
         W "]",!  ;; -- VALUE
        W "}]",!  ;; -- PARAMS
     W "}",!;; -- RECONFIGURE
     ;
  C FLTO
  S RES=$$^W1CURL(URL,FLTO,.RESP,Timeout,Type)
 Q 
 ;
 ;
NMVL(NM,VL) ;
 W !,"{",!
  W """name"":"_NM_",",!
  W """value"":"_VL,!
 W "}",!
 Q 
 ;
 ;
NMVL1(NM,VL) ;
  W """"_NM_":"_VL_"""" 
 Q 
 ;
 ;
ARMCOLLECT(ST) ; 
 N (JB,ST,RESP,RES)
 N SID S SID=$G(@$$^W4PRM@("MZSM","SID"))
 N URL ;;S URL="https://posapi.damkasys.co.il/api/v1/coc/payment"
 S URL="https://posapi.damkasys.co.il/api/v1/coc/proxy"
 S URL=URL_"?showPanel=1&secretKey="_SID
 N Type S Type="application/json"
 N Timeout S Timeout=35
 ;
 S FLTO="/tmp/flarm"_+$H_"_"_$$^W4MYDVN_"_"_$P($H,",",2)
 C FLTO:(DELETE)
 O FLTO:(REWIND:WRITE:NEWVERSION)
 ;
 N M,I,LAST
 ;
 S M(10000)=$P(ST,"\",4)
 S M(5000)=$P(ST,"\",5)
 S M(2000)=$P(ST,"\",6)
 S M(1000)=$P(ST,"\",7)
 S M(500)=$P(ST,"\",8)
 S M(200)=$P(ST,"\",9)
 S M(100)=$P(ST,"\",10)
 S M(50)=$P(ST,"\",18)
 S M(10)=$P(ST,"\",19)
 ;
 U FLTO
 W "{",!
    W """req"": ""collect"",",! 
    W """method"": 9,",! 
    ;
    S I="",LAST=0 F  S I=$O(M(I)) Q:I=""  I M(I) S LAST=I
    ;
    W """values"":[",!
     F I=10,50,100,200,500,1000,2000,5000,10000 D
     .I $G(M(I)) D
     ..D NMVL1(I,+$G(M(I)))
     ..I I<LAST W ","
     ;
    W "]",!
   W "}",!
 ;
 C FLTO
 S RES=$$^W1CURL(URL,FLTO,.RESP,Timeout,Type)
 Q 
 ;
 ;
HFKMZM1() ; 
 I $$HFKD=2 Q 0 
 I $$HFKD=3 Q 0 
 Q $$HFKMZM1^W4PRM 
 ;
 ;
OPENDOOR() ; 
 N (JB,RESP)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N SID S SID=$G(@$$^W4PRM@("MZSM","SID"))
 N URL
 S URL="https://posapi.damkasys.co.il/api/v1/coc/proxy"
 S URL=URL_"?showPanel=1&secretKey="_SID
 ;
 N Type S Type="application/json"
 N Timeout S Timeout=35
 ;
 S FLTO="/tmp/flarm"_+$H_"_"_$$^W4MYDVN_"_"_$P($H,",",2)
 C FLTO:(DELETE)
 O FLTO:(REWIND:WRITE:NEWVERSION)
 ;
 U FLTO
 W "{",!
    W """req"": ""open-door"",",! 
    W """code"": 1111",! 
   W "}",!
 C FLTO
 ;
 S RES=$$^W1CURL(URL,FLTO,.RESP,Timeout,Type)
 Q RES
 ;
 ;
LEVELS(DT,TIM) ; 
 N (JB,DT,TIM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(DT),'$G(TIM) S TIM=$P($H,",",2)
 I '$G(DT) S DT=+$H
 I $G(TIM)="" S TIM=$P($H,",",2)
 N SID S SID=$G(@$$^W4PRM@("MZSM","SID"))
 N URL
 S URL="https://posapi.damkasys.co.il/api/v1/coc/proxy"
 S URL=URL_"?showPanel=1&secretKey="_SID
 ;
 N Type S Type="application/json"
 N Timeout S Timeout=35
 ;
 S FLTO="/tmp/fllvl"_DT_"_"_$$^W4MYDVN_"_"_TIM
 C FLTO:(DELETE)
 O FLTO:(REWIND:WRITE:NEWVERSION)
 ;
 U FLTO
 W "{",!
    W """req"": ""levels""",! 
   W "}",!
 C FLTO
 ;
 S RES=$$^W1CURL(URL,FLTO,.RESP,Timeout,Type)
 ;
 N GL S GL=$$^W4GL("W4CSHLVL")
 N DLM S DLM=$C(13,9)
 ;
 N I F I=1:1:$L(RESP,DLM) D
 .N ST S ST=$P(RESP,DLM,I)
 .S @GL@(DT,TIM,I)=ST
 ;
LEVELS1 ;
 S STTOT="",NAME=""
 F I=1:1 Q:'$D(@GL@(DT,TIM,I))  D
 .S ST=$G(^(I))
 .S ST=$TR(ST," ","")
 .I ST["""name"":" S NAME=$TR($P(ST,"""name"":",2)," ","")
 .D SETTOT(ST,"total-coins-value",1)
 .D SETTOT(ST,"total-notes-value",2)
 .D SETTOT(ST,"stackLevel",3)
 .D SETTOT(ST,"drawerLevel",4)
 .
 .
 .I ST["principal",NAME["totals" D
 ..D SETTOT(ST,"principal",5)
 .
 .I ST["principal",NAME'["totals" D
 ..N JJ S JJ=15
 ..F II="0.10","0.50","1.00","2.00","5.00","10.00","20.00","50.00","100.00" D
 ...S JJ=JJ+1
 ...I NAME[II D
 ....D SETTOT(ST,"principal",JJ)
 .
 .S JJ=5
 .F II="0.10","0.50","1.00","2.00","5.00","10.00","20.00","50.00","100.00" D
 ..S JJ=JJ+1
 ..I ST[("""name"":"""_II) D
 ...S ST1=$G(@GL@(DT,TIM,I+1))
 ...S ST1=$TR(ST1," ","")
 ...D SETTOT(ST1,"value",JJ)
 ;
 S @GL@(DT,TIM)=STTOT
 ;
 N DT1 S DT1=DT
 I TIM<(6*3600) S DT1=DT-1
 S SUMMZ=""
 I DT1=$$^W4DZ S SUMMZ=$$SUMMZ(DT1)
 S $P(@GL@(DT,TIM),"\",25)=SUMMZ
 Q RES
 ;
 ;
SETTOT(ST,NMRKV,NOM) ;
 N VL
 S NMRKV=""""_NMRKV_""":" 
 I ST[NMRKV D
 .S VL=$P(ST,NMRKV,2)
 .I $E(VL)="""" S VL=$P(VL,"""",2)
 .S $P(STTOT,"\",NOM)=+VL
 Q 
 ;
SUMMZ(DT) ; 
 S SUMMZ=0
 N N S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .S SUMMZ=SUMMZ+$$MZM^W4HZMST(N) 
 Q SUMMZ
 ;
CLMAX(ID) ; 
 Q " class=""max"" id=""max_"_ID_""" " 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CASHPO
W4CSHPOS ; [ 05.08.20 13:22 ] [ 
 W "<div dir="""_$$^%W1DIR_""">",!
  W $$^%W1DICT("DATCSR") W $$NBSP^%L1FRM(2)
  

W4CASHRE
W4CASHREP ; [ 05.08.20 13:02 ] [ 
 W "<div align=""center"">",!
  W $$^%W1DICT("CSRDAT") W $$NBSP^%L1FRM(2)
  W $ZD($$^W4DZ,"DD.MM.YY")
 ;
 

W4CASHUV
W4CASHUV(DAT) ; [ 30.03.16 14:14 ] [ 27.12.14 08:05 ] [ 23.12.14 06:36 ] 
 N (DAT,%REM,JB)
 S JB=1028
 S %REM="82.80.131.69"
 S DT=$$^%L1DC(DAT,3)
 S II=$O(^W4TRAN(901,99999),-1)
 S NS=$O(^TRANL(9999999),-1)+1
 S HZ="" F  S HZ=$O(^P1H(DT,HZ)) Q:HZ=""  D
 .Q:'$D(^P1HZ(HZ,"CB","V"))
 .S IND="" F  S IND=$O(^P1HZ(HZ,"CB","V",IND)) Q:IND=""  D
 ..S NCA=$P(^(IND),"*",2)
 ..S STRIN=$G(^(IND,"STRIN"))
 ..U 0 W !,HZ
 ..;
 ..S ST=$$^W4STRINW(STRIN)
 ..S STA=$P(ST,"~",2)
 ..I +STA D
 ...S STRIN="B"_NCA_"C"_$P(STRIN,"C",2)
 ...S STRIN=$$PUTCA(STRIN,"T",1116)
 ...S STRIN=$$PUTCA(STRIN,"E",1111111)
 ...S ST=$$^W4STRINW(STRIN)
 ...S STA=$P(ST,"~",2)
 ..
 ..W " -- "_STA," ",$G(^KOD(+STA)),!
 ..;;W "  ST="_ST,!
 ..I $L($P(ST,"~",5)) D
 ...W " -- OK",!
 ...S II=II+1 W "II="_II,!
 ...S ^W4TRAN(901,II)=$P(ST,"~",5) D  Q
 ....N TR S TR=$$W2T^W4TRAN($P(ST,"~",4))
 ....S ^TRAN(901,II)=901_$TR($J(II,3)," ",0)_$E(TR,7,500)
 ....S ^TRANL(NS,901,II)=901_$TR($J(II,3)," ",0)_$E(TR,7,500)
 ...S ^TRAN(901,II)=901_$TR($J(II,3)," ",0)_$E($P(ST,"~",5),7,500)
 Q
 ;
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 

W4CAZIC
W4CAZIC(DAT) ; [ 31.12.16 19:27 ] [ 12.03.15 08:50 ] [ 21.10.14 09:12 ] 
 N (DAT) D ^%L1C D ^P1IN
 S JB=$$^%W1SsID("ZIC")
 S DT=$$^%L1DC(DAT,3)
 I $$WEBSRV S II=$O(^W4TRAN(901,99999),-1)
 S II=0
 S HZ="" F  S HZ=$O(^P1H(DT,HZ)) Q:HZ=""  D
 .Q:'$D(^P1HZ(HZ,"CB","V"))
 .S IND="" F  S IND=$O(^P1HZ(HZ,"CB","V",IND)) Q:IND=""  S ST=$$ZIC(HZ,IND)
 Q
 ;
ZIC(HZ,IND) ;
 S II=+$O(^W4TRAN(901,9999),-1)+1
 S STRIN=$G(^P1HZ(HZ,"CB","V",IND,"STRIN"))
 I '$D(TVM) U 0 W !,HZ
 S STRBIT=$$STRINBIT(STRIN)
 ;;W "STRBIT="_STRBIT,!
 ;
 S ST=$$^W4STRINW(STRBIT)
 S STA=$P(ST,"~",2)
 S ^P1CAZIC(HZ,IND)=STA
 I '$D(TVM) D
 .W " -- "_STA," ",$G(^KOD(+STA)),!
 .;;W "  ST="_ST,!
 I $L($P(ST,"~",5)) D
 .I '$D(TVM) D
 ..W " -- OK",!
 ..W "II="_II,!
 .I $$WEBSRV D  Q
 ..S S21=$$^W4TRAN($P(ST,"~",4),$P(ST,"~",5))
 ..;;S ^W4TRAN(901,II)=$P(ST,"~",5) Q
 .;
 .S ^TRAN1(901,II)=901_$TR($J(II,3)," ",0)_$E($P(ST,"~",5),7,500)
 Q ST
 ;
STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM) ;
 N (HZM,ER,STRIN,VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM)
 I ASHSUM<0 S ASHSUM=-ASHSUM
 S STRIN=""
 S KUP=901
 S PAY=$J($J(ASHSUM,2,2)*100,0,0)
 S SUGIS=1
 S SUGIS1=SUGIS
 S SUGAS=1
 S SUGMTB=1
 S SUGMRB=1
 S AUTHNO="0000000"
 S (P1,PC,PN)=0
 S (PF,PG,PH)=0
 S SUGBC=51
 ;
 D ^W4STRIN
 Q STRIN
 ;
 ;
STRINBIT(STRIN) ;
 N ER
 I STRIN="" S ER="NOSTRIN" Q ER
 S STRIN=$$PUTCA(STRIN,"F",0)
 S STRIN=$$PUTCA(STRIN,"G",0)
 S STRIN=$$PUTCA(STRIN,"H",0)
 S STRIN=$$PUTCA(STRIN,"D",5111,1,4)
 S STRIN=$$PUTCA(STRIN,"E","1111111")
 S STRIN=$$PUTCA(STRIN,"T","1116")
 N SUM S SUM=$P($$GETCA(STRIN,"C"),"*")
 I $G(SUMCA) S SUM=SUMCA*100 I SUM<0 S SUM=-SUM
 S STRIN=$$PUTCA(STRIN,"C",SUM)
 Q STRIN
 ;
GETCA(ST,LET)
 N A,A1,J S A=$P(ST,LET,2)
 S A1=""
 F J=1:1:$L(A) Q:$E(A,J)?1U  S A1=A1_$E(A,J)
 Q A1
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 ;
M ;
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C
 S JB=$$^%W1SsID("ZIC")
Z ;
 X %chista
 I '$$WEBSRV S %GET=" qieexq aee `l df " D N^%L1GET Q
 S %SAY=" ( qieexq aee ) i`xy` qihxk iekif " X %XMSGV
 S %GET=" dpnfd 'qn++3,70,HH#++8,E,I" D ^%L1GET I %S=""!(%TO="END") Q
 S HZ=%S
VW ;
 S MAC="^P1HZ("_HZ_",""CB"",""V"")"
 S %L1("T1")="  mekq  |        qihxk 'qn         | drepz 'qn "
 S %L1("TXT1")="$P(%NXS,""*"",6)\/$P(%NXS,""*"",2)\/$P(%NXS,""*"",3)"
 S %L1("BE")=6
 S %L1("EU")=4
 D ^%L1NU
 I FLAG'="" Q
 S ST=^P1HZ(HZ,"CB","V",INDEX)
 S %SAY=" "_$P(ST,"*",6)_" : mekq  "_$P(ST,"*",2)_" : qihxk 'qn "_$P(ST,"*",3)_" : drepz 'qn++16,75,HH" X %XMSG
 D IS1^%L1GET I 'YES G VW
 ;
 N TVM S TVM=""
 S ST=$$ZIC(HZ,INDEX)
 S STA=$P(ST,"~",2)
 I STA S %SAY=" "_$G(^KOD(+STA))_" "_STA_" :`id d`iby cew ! dxar `l dlert" X %XMSGV
 ;
 I 'STA,$L($P(ST,"~",5))  S %SAY=" ! dglvda drvea dlert" X %XMSGV
 S %GET="<ENTER>" D N^%L1GET X %chista
 G Z
 ;
VV ;
 S JB=$$^%W1SsID("ZIC")
 D ^%L1C X %chista
VV0 R !!,"SUM :",ASHSUM Q:'ASHSUM!(ASHSUM="^")
VV1 R !!,"CARD NUMBER :",VIZ I VIZ=""!(VIZ="^") G VV0
 I VIZ'?1N.N!($L(VIZ)<7) D ER G VV1
 S YYMM=1611
 I YYMM'?4N,$E(YYMM,3,4)>12 D ER G VV1
VV3 R !!,"ID ( ^ - BACK ) :",ASHTZ I ASHTZ="^" G VV1
VV4 R !!,"CREDIT - 1, DEBET - 2 :",CRED I CRED="^"!(CRED="") G VV3
 S CVV2=2
 W !!,"WAIT ...",!
 ;
 S ST=$$ZC(VIZ,YYMM,ASHTZ,CVV2,ASHSUM,CRED)
 S STA=$P(ST,"~",2)
 I STA S %GET=" ERROR !" D N^%L1GET
 ;
 I 'STA,$L($P(ST,"~",5))  S %GET="ACTION IS SUCCESSEFULL" D N^%L1GET
 G VV
 ;
ZC(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,CRED)
 N (VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,CRED)
 S JB=$$^%W1SsID("ZIC")
 I '$G(CRED) S CRED=2
 S II=+$O(^W4TRAN(901,9999),-1)+1
 S STRIN=$$STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM)
 S STRIN=$$PUTCA(STRIN,"E","1111111")
 S STRBIT=STRIN
 I CRED=2 S STRBIT=$$STRINBIT(STRIN)
 ;
 S ST=$$^W4STRINW(STRBIT)
 S STA=$P(ST,"~",2)
 I '$D(TVM) D
 .W !," -- "_STA," ",$G(^KOD(+STA)),!
 .;;W "  ST="_ST,!
 I $L($P(ST,"~",5)) D
 .I '$D(TVM) D
 ..W !," -- OK",!
 ..W "II="_II,!
 .S S21=$$^W4TRAN($P(ST,"~",4),$P(ST,"~",5))
 Q ST
 ;
ER ;
 W *7,"  -- ERROR !",!
 Q
 ;
WEBSRV(STAM) ;
 Q 1
 ;
 

W4CB
W4CB ; DOUBLE - KABALA                           [ 12.08.26 08:31 ] [ 17.08.25 09:06 ] [ 05.12.24 20:07 ] 
 ; INPUT : LAB - LABEL FOR PRINT
 ;       : MAS - ARRAY OF PARAMETERS
 N (JB,%ARG,%REM,LAB,MAS,P1,PN,PC,KHVCA,AUTHNO,HUZCA,VTS,MOAD,SUGI,NOPCLOAZ)
 ;
 D INIT
 I $G(PRINT)<3 Q
 I LAB="V1PCHD",$$VCNOPC^W4PRM Q
 ;
 S LAB0=LAB
 ;
 I LAB["SHV",$$^W6 G END1
 ;
 I LAB["SHV",$$PCCA1^W4PRM=1 D
 .S MAS("EHAD")="NOPROGON"
 ;
 D KAV
 I $D(MAS("HD")) D HD
 ;
 I $G(LAB)="ASR",$G(@$$^W4PRM@("ASR2")) G TL2  ; -- RAK TLUSH 2
 ;
 I LAB["SHV",$$PCCA1^W4PRM=2 G TL2
 ;
 D FSHAP,KAV
 ;
 I $D(MAS("EHAD")),MAS("EHAD")'="NOPROGON" D PROGON ; -- HITUH BEZ PROGONA
 I '$D(MAS("EHAD")) D PROGON^W4CUT(PRINT,$G(%MDP("CUT")))
 I $D(MAS("EHAD")) G END
 ;
TL2 ;
 I '$D(MAS("NOPTH")),'$$MZSM^W4PRM S STPC(1)=$G(%MDP("P")) D PC D ^W4PTHDLY ; -- PTIHAT MEGIRA
 ;
 S N="" F  S N=$O(MAS(N)) Q:N=""  I MAS(N)="xewn" S MAS(N)="wzrd" Q
 ;
 I $G(LAB)="SHV96",$G(MAS(35))="" S LAB="CAJ"
 I $G(LAB)="SHV96",'$G(@$$^W4PRM@("NOVZHZG")) S MAS(35)=MAS(351)
 ;
 I $G(@$$^W4PRM@("ASR"))>1,$G(LAB)="ASR" D
 .F J=2:1:$G(@$$^W4PRM@("ASR")) D FSHAP D
 ..N LAB S LAB="TEL" D FSHAP
 ..D KAV,^W4CUT(PRINT,$G(%MDP("CUT")))
 ;
 I $D(MAS("HD")) D HD
 D FSHAP
 D SIGN
END I $D(MAS("CUT")) D ^W4CUT(PRINT,$G(%MDP("CUT")))
END1 K %L2,LAB,MAS
 Q
 ;
 ;
SIGN S LAB="TEL"
 D FSHAP,KAV
 I $D(MAS("PRG")) D PROGON
 Q
 ;
INIT ;
 D ^W4MDPPC,^W4IN,^%L1TS
 S:'$D(GWPC) GWPC=40
 S:'$D(%L2("SM")) %L2("SM")=$S(GWPC<40!($G(LAB)="DUMP"):0,GWPC=40:2,1:5)
 S:'$D(%L2("SS")) %L2("SS")="&"
 Q
 ;
 ;
HD ;
 N (JB,%ARG,%REM)
 D INIT
 S WD=38,GWPC=38
 S %L2("SM")=2
 D KOTPRM^W4HZTM
 S MAS(1)=%SCV("MS","NESEK")
 I '$$SHORTNAME!$$NIK S MAS(1)=$$CENTR^%L1FRM($$SPA^%L1FRM(MAS(1)))
 I $$SHORTNAME&'$$NIK S MAS(1)=$$CENTRB^%L1FRM($$SPA^%L1FRM(MAS(1)),38)
 S MAS(3)=$$CENTRB^%L1FRM($$SPA^%L1FRM($G(%SCV("MS1","3"))),38)
 S MAS(5)=%SCV("MS","KTESEK")
 S MAS(10)=%SCV("MS","TESEK")
 S MAS(12)=$G(%SCV("MS1",12))
 S MAS(15)=$G(%SCV("MS","MESEK"))
 S MAS(16)=$G(%SCV("MS1",16))
 ;
 S LAB="HEAD"
 D FSHAP
 D PC
 Q
 ;
PC ;
 N I F I=1:1 Q:'$D(STPC(I))  S STPC=STPC(I) D
 .;;I $D(STPC(I,"R")) S STPC=%MDP("R")_STPC_%MDP("RL")
 .S STPC=$J("",%L2("SM"))_$G(%MDP("N"))_$TR(STPC,TS0,TSS)
 .S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,99999))+1)=STPC
 .;;S ^PC1(PRINT,$ZP(^PC1(PRINT,99999))+1)=STPC ; ***
 K STPC
 Q
 ;
FSHAP ;-- STPC()
 N LAB1 S LAB1=$$LAB(LAB)
 K STPC N %I,%II,%III,%STRS,%PRR
 S %III=0 N %T
 F %I=1:1 S %T=$T(@LAB1+%I) Q:%T=""  Q:%T["Q  ;"  I @$P(%T,";",2) D
 .S %STRS=$P(%T,";",3),%POZ=0
 .;
 .D PSK ;-- VSTAVKA PARAM-V IZ MAS()
 .K %PRR
 .S %III=%III+1
 .;
 .S STPC(%III)=$J("",%L2("SM")) D
 ..S STPC(%III)=STPC(%III)_$P(%STRS,"#")
 ..;
 ..F %II=2:1:$L(%STRS,"#") D
 ...S STPC(%III)=STPC(%III)_$S('(%II#2):$G(%MDP("B")),1:$G(%MDP("N")))_$P(%STRS,"#",%II) Q
 ;
 D PC
 Q
 ;
PSK ;IN : %STRS ;  OU: %STRS WITH PARAM FROM MAS()
 F  S %POZ=$F(%STRS,%L2("SS"),%POZ) Q:%POZ<1  D
 .S %IND=+$E(%STRS,%POZ,%POZ+1) D DEFL
 .;
 .;;S %NST=$S($D(MAS(%IND)):$E(MAS(%IND),1,%LENGTH),1:"")
 .S %NST=$G(MAS(%IND))
 .S %STRS=$E(%STRS,1,%POZ-2)_$J(%NST,%LENGTH)_$E(%STRS,%POZ-1+%LENGTH,255)
 .Q
 Q
 ;
DEFL ;
 F %K=%POZ+2:1:132 Q:$E(%STRS,%K)'=" "
 S %LENGTH=%K-%POZ+1
 S:$E(%STRS,%K)=">" %LENGTH=%LENGTH+1 K %K ;
 Q
 ;
KAV Q:$G(LAB)="TLMTN"
 S STPC(1)=$TR($J("",$S(GWPC<41:GWPC-$G(%L2("SM"))-1,1:GWPC\2))," ","*") D PC
 Q
 ;
TIME S STPC(1)=$J("",$S(GWPC<41:5,1:10))_$$T^%L1TIME($P($H,2))_" "_$$^%L1DC($H,1) D PC
 Q
 ;
PROGON ;;D PROGON^W4CUT(PRINT,%MDP("CUT"))
 D PROGON^W4CUT(PRINT,"") ; --- 5/07/18
 Q
 ;
LAB(LAB)
 I $$^%W1ENG,'$D(NOPCLOAZ),$E(LAB,$L(LAB))'="E" S LAB=LAB_"E"
 Q LAB
 ;
SHVA ; [ 03/18/94 11:54 AM ]
 ;1;#&30 > `ay#;R;
 ;1;    &01            > ;
 ;1;     oeayg lr lawzd;R;
 ;1;&20   > 'qn zipeayg;R;
 ;1;
 ;1;#&02     >#;R;
 ;1;&03              > qihxk;
 ;1;&05          >:  dwqr qn;
 ;1;&06          >: dwqr beq;
 ;1;&07          >:i`xy` beq;
 ;1;&08        >:minelyz 'qn;
 ;1;&09        >:oey`x melyz;
 ;1;&10        >:minelyz x`y;
 ;1;&12        >:xey` 'qn;
 ;1;#&15     >#:mekq;
 Q  ;
 ;
SHVAE ; [ 03/18/94 11:54 AM ]
 ;1;#&30 > SBA#;R;
 ;1;       &01            >     ;
 ;1;Received on account         ;
 ;1;Invoice No. &20   >         ;
 ;1;
 ;1;#&02     >#                 ;
 ;1;Card &03                 >  ;
 ;1;Deal No. &05             >  :
 ;1;Kind of deal &06         >  :
 ;1;Kind of Credit &07         >:
 ;1;Paym. amount &08           >:
 ;1;First payment &09        >  :
 ;1;Other payments &10       >  :
 ;1;Confirmation No. 12        >:
 ;1;Sum  #&15      >#:;
 Q  ;
 ;
SHV1 ;
 ;1;#&30 > `ay#;R;
 ;1;    &01            >  ;
 ;1;#&02     >#;R;
 ;1;     oeayg lr lawzd;R;
 ;1;&20   > 'qn zipeayg;R;
 ;1;&03              > qihxk;
 ;1;&05          >:  dwqr qn;
 ;1;&06          >: dwqr beq;
 ;1;&07          >:i`xy` beq;
 ;1;  &12        >: xey` 'qn;
 ;1;#&15     >#:mekq;
 Q  ;
 ;
SHV1E ;
 ;1;#&30 > SBA#;R;
 ;1;       &01            >     ;
 ;1;Received on account         ;
 ;1;Invoice No. &20   >         ;
 ;1;
 ;1;#&02     >#                 ;
 ;1;Card &03                 >  ;
 ;1;Deal No. &05             >  :
 ;1;Kind of deal &06         >  :
 ;1;Kind of Credit &07         >:
 ;1;Confirmation No. 12        >:
 ;1;Sum  #&15      >#:;
 Q  ;
 ;
SHV96 ;
 ;1;#&03 > `ay#;R;
 ;0;&05              >;R;
 ;0;
 ;1;&10      > &15    >   seqn;R;
 ;0;    &20          > wqr 'qn;R;
 ;1;        &25              >;
 ;1;&30              >   qihxk;
 ;1;   &35                   >;
 ;1;       &40    >    cr swez;
 ;1;  &45         >   xaey 'qn;
 ;1;&47           >   dwqr beq;
 ;AUTHNO;&50           >   xey` 'qn;
 ;$G(SUGI)="03"; #zvle`n dwqr#
 ;$G(MOAD);
 ;$G(MOAD);      &53   > : oecren cew
 ;1;
 ;1;  &55         > revia ote`;
 ;1;  &60         >       rahn;
 ;1;  &65         >  i`xy` beq;
 ;1;
 ;1;g"y#&70    > mekq#;
 ;1;
 ;KHVCA; &72                     >;
 ;P1;    &75      > oey`x melyz;
 ;PN;&80                      >;
 ;PC; &85         >  sqep melyz;
 ;KHVCA;
 ;KHVCA; izekfl didz `l m`a ik il reci;R;
 ;KHVCA;   aiiegi izpiivy miakekd zenk;R;
 ;KHVCA;zenkl m`zda iqgid xigna ipeayg;R;
 ;KHVCA;               ipeayga miakekd;R;
 ;$G(HUZCA)&($TR($G(MAS(30)),TSS,TS0)["dfie");NO REFUND - NO CANCELLATION;R;
 ;1;#&90           >#
 ;1;#&91           >#
 ;1;
 ;$L($G(MAS(95)));#&95                #;R;
 ;$L($G(MAS(96)));#&96                #;R;
 Q  ;
 ;
SHV96E ;
 ;1;#&03 > SBA#;
 ;0;&05                        >   ;
 ;0;
 ;1;Terminal &10      > &15    >   ;
 ;0;Business No.  &20          >   ;
 ;1;          &25              >   ;
 ;1;Card &30                   >   ;
 ;1;   &35                     >   ;
 ;1;Valid until       &40      >   ;
 ;1;Coupon No.  &45         >      ;
 ;1;Transaction type  &47         >;
 ;AUTHNO;Confirmation No.&50            >;
 ;$G(SUGI)="03"; #Forced transaction#
 ;$G(MOAD);
 ;$G(MOAD);Club Code &53   > :
 ;1;
 ;1;Operation mode &55         >;
 ;1;Currency  &60         >;
 ;1;Credit Type  &65         >;
 ;1;
 ;1; #Sum &70      >#;
 ;1;
 ;KHVCA; &72                     >;
 ;P1; First Payment &75      > ;
 ;PN;&80                      >;
 ;PC;Additional charge &85         >;
 ;KHVCA;
 ;KHVCA;I know that if do not have a number of ;
 ;KHVCA;stars I mentioned  my account will be  ;
 ;KHVCA;charged at the relative price depending;
 ;KHVCA;on the number of stars on my account   ;
 ;$G(HUZCA)&($TR($G(MAS(30)),TSS,TS0)["dfie");NO REFUND - NO CANCELLATION;R;
 ;1;#&90            >#
 ;1;#&91            >#
 ;1;
 ;$L($G(MAS(95)));#&95                #;R;
 ;$L($G(MAS(96)));#&96                #;R;
 Q  ;
 ;
CAJ ;
 ;1;#&03 > SBA#;R;
 ;0;&05              >;R;
 ;0;
 ;1;Term. &15     > &10      >; 
 ;0;Business No. &20          >;
 ;1; &25              >;
 ;AUTHNO;Confirmation No. &50           >;
 ;1;
 ;1;Sum #&70      >#;
 ;1;
 ;1;#&90          >#
 ;1;#&91          >#
 ;1;
 ;$L($G(MAS(95)));#&95                #;
 ;$L($G(MAS(96)));#&96                #;
 Q  ;
 ;
 ;
ASR ;
 ;1;    &01            >  ;
 ;1;     #dtwd yelz#;R;
 ;1;#&10> &02  > 'qn#;
 ;1;           &11    > dpnfd;R;
 ;$G(MAS(12))'="";    &12     > :gewl zpnfd;R;
 ;$G(MAS(3))'=$$^W4CIBLKH;;
 ;$G(MAS(3))'=$$^W4CIBLKH;    &03        > gewl 'qn;
 ;$G(MAS(3))'=$$^W4CIBLKH;&04                  >:my;
 ;$G(MAS(3))'=$$^W4CIBLKH&$G(MAS(20));;
 ;$G(MAS(3))'=$$^W4CIBLKH&$G(MAS(20));&20        > iy`x gewl 'qn;
 ;$G(MAS(3))'=$$^W4CIBLKH&$G(MAS(20));&21                  >:my;
               ;$$CUSNAME;;
               ;$$CUSNAME;                    ceakl;
               ;$$CUSNAME;&13                >     ;
  ;$G(MAS(3))=$$^W4CIBLKH;        SODEXO :qihxk beq;
  ;$G(MAS(3))=$$^W4CIBLKH;&25          > :qihxk 'qn;
 ;$G(MAS(3))=$$^W4CIBLKH&$G(MAS(30));&30          > : dxag 'qn;
 ;$G(MAS(8));
 ;$G(MAS(6));        #&06 >%# dgpd
 ;$G(MAS(8));g"y #&07    ># dgpd iptl
 ;$G(MAS(8));g"y #&08    ># dgpd
 ;1;
 ;1;g"y #&15    ># k"dq;
 ;$G(@$$^W4PRM@("ASRITRA"));
 ;$G(@$$^W4PRM@("ASRITRA"));   &05        >:  dxzi;
 Q  ;
 ;
ASRE ;
 ;1;    &01            >  ;
 ;1;  #Credit Coupon#;
 ;1;#No. &02  > &10   >#;
 ;1;Order &11    >       ;
 ;1;Cust. Order &12     >;
 ;$G(MAS(3))'=$$^W4CIBLKH;Cust. No.: &03        >;
 ;$G(MAS(3))'=$$^W4CIBLKH;Name     :&04                  >;
               ;$$CUSNAME;In honor of              ;
               ;$$CUSNAME;&13                >     ;
  ;$G(MAS(3))=$$^W4CIBLKH;Type of card :SODEXO     ;
  ;$G(MAS(3))=$$^W4CIBLKH;Card No.  &25          > ;
 ;$G(MAS(3))=$$^W4CIBLKH&$G(MAS(30));Company No. &30          >;
 ;$G(MAS(8));
 ;$G(MAS(6));Discount #&06 >%#
 ;$G(MAS(8));Before Discount #&07    >#
 ;$G(MAS(8));Discount #&08    ># NIS
 ;1;
 ;1;Total #&15    ># NIS;
 ;$G(@$$^W4PRM@("ASRITRA"));
 ;$G(@$$^W4PRM@("ASRITRA"));Balance : &05        >;
 Q  ;
TMASR ;
 ;1;  &03       > gewl 'qn;
 ;1;#&04               >#
 ;1;
 ;1;#________:dnizg#;R;
 ;1;
 Q  ;
 ;
TMASRE ;
 ;1;Cust. No. &03       >;
 ;1;#&04               >#
 ;1;
 ;1;#Sign : ________#;R;
 ;1;
 Q  ;
 ;
HKB ;
 ;1;         #lawzd#;R;
 ;1;    &01            >  ;
 ;1;     &02     > qn dlaw;
 ;1;  &03       > gewl 'qn;
 ;1;&04               >:my;
 ;1;#&15    >#:lawzd;
 ;1;#&05    >#: dxzi;
 Q  ;
 ;
HKBE ;
 ;1; #Accepted# ;
 ;1;    &01            >    ;
 ;1;Receipt No. &02     >   ;
 ;1;Cust. No. &03       >   ;
 ;1;Name &04               >;
 ;1;Accepted :#&15     >#;
 ;1;Balance  :#&05     >#;
 Q  ;
 ;
TEL ;
 ;$$PCTIPCA^W4PRM;g"y#&98      >: tih#
 ;1;
 ;1;#  ________:lh#;R;
 ;1;#           TEL.#
 ;1;#  ________:dnizg#;R;
 ;1;#           SIGN.#
 Q  ;
 ;
TELE ;
 ;1;
 ;1;#Tel: __________#;
 ;1;
 ;1;#Sign __________#
 ;1;
 Q  ;
 ;
TLMTN ;
 ;1;#******************#
 ;1;
 ;1;#&01             >#
 ;1;
 ;1;# &03     > : xtqn#
 ;1;
 ;1; &05           > : dwtd zrye jix`z
 ;1;
 ;1;#             'akl#
 ;1;
 ;1;#&10            >#
 ;1;
 ;1;#  g"y &15    >#
 ;1;
 ;1;
 ;1; _________________ : witn znizg
 ;1;
 ;1;#******************#
 Q  ;
 ;
TLMTNE ;
 ;1;#******************#
 ;1;
 ;1;# Coupon Gift (change)#
 ;1;# No. &03     > #
 ;1;
 ;1;Issue Time &05           >
 ;1;
 ;1;#In honor of#
 ;1;#&10             >#
 ;1;
 ;1;#&15    > NIS#
 ;1;
 ;1;
 ;1;Sign of manager : ____________
 ;1;
 ;1;#******************#
 Q  ;
 ;
E1PC ;
 ;1;
 ;1;   # dtwd yelz #
 ;1;
 ;1;   #&05           >#
 ;1;   #&07            #
 ;1;   &10          > : drye jix`z
 ;1;
 ;1;&15                    > : wqrd my
 ;1;          &20          > : oetlh
 ;1; &25                   > : qihxk 'qn
 ;1; &30                   > : dxag my
 ;1; &35                   > : oeteqn 'qn
 ;1; &40                   > : dpnfd qn
 ;1;                    dtwd : i`xy` beq
 ;1;
 ;1; #&50       ># : dpnfd xign
 ;1; #&55       ># : caerl xign
 ;1;
 ;$G(MAS(1));
 ;$G(MAS(1));#________:lh#;R;
 ;$G(MAS(1));#         TEL.#
 ;$G(MAS(1));#________:dnizg#;R;
 ;$G(MAS(1));#         SIGN.#
 Q  ;
 ;
E1PCE ;
 ;1;
 ;1;   # Credit Coupon #
 ;1;
 ;1;   #&05           >#
 ;1;   #&07            #
 ;1;Issue Time : &10          >
 ;1;
 ;1;Business Name :
 ;1;   &15                    >
 ;1;Tel. &20          >
 ;1;Card No. &25                   >
 ;1;Comp. Name &30                   >
 ;1;Term. No. &35                    >
 ;1;Order No. &40                   >
 ;1;Credit Type : Credit
 ;1;
 ;1;Order Price #&50       >#
 ;1;Price to worker #&55       >#
 ;1;
 ;$G(MAS(1));
 ;$G(MAS(1));#Tel. ________#;
 ;$G(MAS(1));
 ;$G(MAS(1));#Sign ________#;
 ;$G(MAS(1));
 Q  ;
TLTKT ;
 ;1;#*****************#
 ;1;
 ;1;#    dqipk yelz    #
 ;1;
 ;1;
 ;1;#&10         >#
 ;1;
 ;1;
 ;1; _________________ : witn znizg
 ;1;
 ;1;#*****************#
 Q  ;
 ;
CIBML ;
 ;1;  &01              >  ;
 ;1;#oecren yelz#;R;
 ;1;#&10>#;
 ;1;  &03        > : gewl 'qn
 ;1;#&05            >#
 ;1;
 ;1;  &11      > : dpnfd 'qn;
 ;1;
 ;1;  &15      > : SODEXO-a dpnfd 'qn
 ;1;
 ;1;      &20  > : ogley 'qn
 ;1;
 ;1;g"y &25    > :   melyzl k"dq
 ;1;
 ;1;g"y &30    > :  zecewp itl dgpd
 ;1;
 ;1;g"y &35    > : mley
 Q  ;
 ;
M1PCHD ;
 ;1;
 ;1;  # n"ra qtihlen #
 ;1;
 ;1;#&05               #
 ;1;#&07               #
 ;1; #&06  #
 ;1;     &10           > : drye jix`z
 ;1;
 ;1;&15                  > :   wtq my
 ;1;        &20          > :    oetlh
 ;1;              &25    > : seqn 'qn
 ;1;              &30    > : dxag 'qn
 ;$L($G(MAS(32)));   &32              >  :    ynzyn
 ;$L($G(MAS(34)));         &34        >  :     mekq
 ;$L($G(MAS(36)));         &36        >  :aivwz zxzi
 ;$L($G(MAS(38)));         &38        >  :dzknq` 'qn
 Q  ;
 ;
M1PCFT ;
 ;1;#________:dnizg#;R;
 ;1;#         SIGN.#
 Q  ;
 ;
M1PCMSG ;
 ;1;#-------------------
 ;1;#       drced
 ;1;#-------------------
 Q  ;
 ;
V1PCHD ;
 ;1;
 ;1;  # n"ra cx`weile #
 ;1;    #&01        #
 ;1; #&06  #
 ;1;     &10           > : drye jix`z
 ;1;
 ;1;           &25    > : seqn 'qn
 ;1;           &30    > : dlert 'qn
 ;1;  &35             > : gewl my
 ;1;           &40    > : dxzi
 ;$G(MAS(45));           &45    > : mekq
 ;$G(MAS(50));           &50    > : dgpd
 ;$G(MAS(55))>0;
 ;$G(MAS(55))>0;           &55    > : dpnfd 'qn
 Q  ;
 ;
V1CB ;
 ;1;&02                          >
 ;1;                &71        > : lh
 ;1;     &77        >  .f.z,.t.g,.n.r
 ;$$MEUHAD^W4PRM;   &77        >  cge`n dyxen wqer
 ;1;;
 ;$L($G(MAS(9)));          #dpzn yelz#
 ;1;
 ;1;#&78  #
 ;1;#&03   > 'qn dlaw#
 ;1;
              ;1;              &05      > :   jix`z
              ;1;&08                    > :-n lawzd
 ;$L($G(MAS(9)));&09                    > :   zaehl
 ;1;
 ;1; #&07       ># : gewl 'qn
 ;1;
 ;$G(MAS(12));      &12         > :  onefna mley
 ;$G(MAS(23));      &23         > :    wiya mley
 ;$G(MAS(24));      &24         > : zi`wpa dxard
 ;1;
 ;$G(MAS(14));        &14       > :    `"ka mley
 ;$G(MAS(15));  &15             > :      `"k 'qn
 ;$L($G(MAS(16)));    &16           > :     dwqr beq
 ;$L($G(MAS(17)));    &17           > :    i`xy` beq
 ;$G(MAS(19));               &19> : minelyz xtqn
 ;$G(MAS(18));            &18   > :  oey`x melyz
 ;$G(MAS(20));           &20    > :  minelyz x`y
 ;$G(MAS(14));
 ;1;      #&25     ># :    k"dq
 Q  ;
 ;
DUMP ;
 ;1;&03                  >       :seqn   my
 ;1;       &05   >               :seqn xtqn
 ;1;       &08       >               :jix`z
 ;1;       &10  >                      :dry
 ;1;       &12   >        hxk`xyia wqr xtqn
 ;1;       &14    >           l`ka wqr xtqn
 ;1;       &16    >        qxpiica wqr xtqn
 ;1;       &18    >       .qw`.m`a wqr xtqn
 ;1;       &20    >    cx`w ine`la wqr xtqn
 ;1;
 ;1;       &22    >             `zknq` xtqn
 ;1;       &24    >               uaew xtqn
 ;1;
 ;1;&30>   &33      > daeg  lwy         kdq
 ;1;&35>   &37      > zekf  lwy         kdq
 ;1;=======================================
 ;1;
 ;1;&39>   &40      > daeg  lwy hxk`xyi kdq
 ;1;&58>   &60      > zekf  lwy hxk`xyi kdq
 ;1;=======================================
 ;1;
 ;1;&62>   &63      > daeg  lwy  .l.`.k kdq
 ;1;&64>   &65      > zekf  lwy  .l.`.k kdq
 ;1;=======================================
 ;1;
 ;1;&70>   &71      > daeg  lwy  qxpiic kdq
 ;1;&72>   &73      > zekf  lwy  qxpiic kdq
 ;1;=======================================
 ;1;
 ;1;&75>   &76      > daeg  lwy .qw`.n` kdq
 ;1;&77>   &78      > zekf  lwy .qw`.n` kdq
 ;1;=======================================
 ;1;
 ;1;&80>   &81      > daeg  lwy  cx`w.l kdq
 ;1;&82>   &83      > zekf  lwy  cx`w.l kdq
 ;1;=======================================
 ;1;
 Q  ;
 ;
DUMPE ;
 ;1;Terminal Name : &03                  >
 ;1;Terminal No.  :  &05     >
 ;1;Date          :       &08       >
 ;1;Time          :       &10  >
 ;1;Business No. in Isracard      &12     >
 ;1;Business No. in Visa          &14     >
 ;1;Business No. in Diners        &16     >
 ;1;Business No. in Am.Exp.       &18     >
 ;1;Business No. in Leumi         &20     >
 ;1;
 ;1;Reference No.                 &22     >
 ;1;File  No.                     &24     >
 ;1;
 ;1;Total credit &33       >      &30     >
 ;1;Total return &37       >      &35     >
 ;1;=======================================
 ;1;
 ;1;Isracard Total NIS debt  &40     > &39>
 ;1;Isracard Total NIS right &60     > &58>
 ;1;=======================================
 ;1;
 ;1;Visa Total NIS debt      &63     > &62>
 ;1;Visa Total NIS right     &65     > &64>
 ;1;=======================================
 ;1;
 ;1;Diners Total NIS debt    &71     > &70>
 ;1;Diners Total NIS right   &73     > &72>
 ;1;=======================================
 ;1;
 ;1;Am.Exp Total NIS debt    &76     > &75>
 ;1;Am.Exp.Total NIS right   &78     > &77>
 ;1;=======================================
 ;1;
 ;1;Leumi Total NIS debt     &81     > &80>
 ;1;Leumi Total NIS right    &83     > &82>
 ;1;=======================================
 ;1;
 Q  ;
 ;
CUSNAME(STAM) ; 
 N HZM S HZM=$$GETP^%W1PRM("HZM") I HZM<1 Q 0
 Q ($$TOCUSNAME^W4HZMST(HZM)'="")
 ;
 ;
HEAD ;
                  ;$$NIK;&03                  >
     ;$$SHORTNAME&'$$NIK;#&01                  >#
                      ;1;
     ;'$$SHORTNAME!$$NIK;&01                                  >
                      ;1;
                      ;1;&10        >:lh  &05                 >
                      ;1;                  &15        > : &12 >
               ;$$MEUHAD;        {16        } :cge`n dyxen wqer
                      ;1;
 Q  ;
 ;
NIK(STAM) ; 
 Q $$NIK^W4SHPORD 
 ;
SHORTNAME(STAM) ; 
 Q $$SHORTNAME^W4SHPORD 
 ;
MEUHAD(STAM) ; 
 Q $$MEUHAD^W4SHPORD 
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CB2TL
W4CB2TL ; [ 21.01.16 14:42 ] [ 19.01.16 09:19 ] [
 N (JB,%ARG)
 S TLMN=$$^W4GL("W4TLMTN")
 S IND=$O(@TLMN@(999999),-1)
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("CB",N)) Q:N=""  D
 .S LK=$G(^(N)) Q:LK=""
 .N CDHD S CBHD=$G(@$$^W4GL("KLF")@(LK,"CB",N)) Q:CBHD=""
 .S DTMH=$$^%L1DC($P(CBHD,"\",4),4)
 .S FOR=$G(^(N,"FOR")) Q:FOR=""
 .S PAID=$G(^("PAID"))
 .S PAYERNAME=$G(^("LKHNAME"))
 .S PAYERTEL=$G(^("LKH"))
 .S RCP=$G(^("FOR"))
 .S SCB=+CBHD
 .I PAID,PAID'<SCB!'$D(^("TLMN")) Q
 .I '$D(^("TLMN")) S SUM=SCB D SET(SUM,N) Q
 .I $D(^("TLMN")) D
 ..S N1=$O(@$$^W4GL("KLF")@(LK,"CB",N,"TLMN",9999),-1) Q:N1=""
 ..S A=$G(^(N1)) Q:N1=""  Q:$P(A,"\",4)
 ..D SET(+A,N_"-"_N1)
 Q
 ;
SET(SUM,CB) ;
 S IND=IND+1
 S @TLMN@(IND)=SUM_"\\"_DTMH_"\"_PAYERNAME_"\"_PAYERTEL_"\"_RCP_"\"
 S $P(^(IND),"\",12)=CB
 S @$$^W4GL("W4TLMTNI")@(CB)=IND
 Q
 .
 
 
 
 
 
 
 
 
 

W4CBFROM
W4CBFROM(STAM) ; [ 01.08.09 11:31 ] [
 I $$GET^%W1PRM("CB") Q 1
 Q 0

W4CBGET
W4CBGET(NOM) ; [ 09.12.24 11:18 ] [ 08.12.24 12:59 ] [ 02.08.18 10:38 ] 
 N KLIN,LK,LK0
 S KLIN=$$^W4GL("KLIN")_"(""CB"")"
 S LK=$G(@KLIN@(NOM)) Q:LK=""
 K W4CB
 N STCB
 S STCB=$G(@$$^W4GL("KLF")@(LK,"CB",NOM))
 S W4CB("LKH")=LK
 S W4CB("LKHNAME")=$$LKHNAME(LK,NOM)
 S W4CB("FOR")=$G(@$$GLCB(LK,NOM)@("FOR"))
 M W4CB("PAID")=@$$GLCB(LK,NOM)@("PAID")
 S W4CB("PAID")=$$SUMCBPAID(LK,NOM) ;
 M W4CB("TLMN")=@$$GLCB(LK,NOM)@("TLMN")
 S W4CB("TOT")=$J($P(STCB,"\",1),2,2)
 S W4CB("MZ")=$J($P(STCB,"\",2),2,2)
 S W4CB("CH")=$J($P(STCB,"\",7),2,2)
 S W4CB("BN")=$J($P(STCB,"\",8),2,2)
 .
 S W4CB("CA")=$$CA(LK,NOM)
 ;
 I $G(W4CB("MZ")) S W4CB("SUGTS")=1
 I $G(W4CB("CH")) S W4CB("SUGTS")=$S($G(W4CB("SUGTS")):W4CB("SUGTS")_",2",1:2)
 I $G(W4CB("CA")) S W4CB("SUGTS")=$S($G(W4CB("SUGTS")):W4CB("SUGTS")_",3",1:3)
 I $G(W4CB("BN")) S W4CB("SUGTS")=$S($G(W4CB("SUGTS")):W4CB("SUGTS")_",4",1:4)
 ;
 S W4CB("NIK")=$J($P(STCB,"\",9),2,2)
 S W4CB("TODATE")=$$^%L1DC($P(STCB,"\",4),1)
 S W4CB("DT")=$$^%L1DC(W4CB("TODATE"),3)
 S W4CB("ISSUETIME")=$S($P(STCB,"\",13):$ZD($P(STCB,"\",13),"DD.MM.YY  24:60"),1:W4CB("TODATE"))
 S W4CB("HRA")=$G(@$$^W4GL("KLF")@(LK,"CBP",NOM))
 S W4CB("VCARD")=$G(@$$^W4GL("KLF")@(LK,"CB",NOM,"VC","CARD"))
 S W4CB("VCNAME")=$G(@$$^W4GL("KLF")@(LK,"CB",NOM,"VC","NAME"))
 S W4CB("VCASM")=$G(@$$^W4GL("KLF")@(LK,"CB",NOM,"VC","ASM"))
 ;
 Q
 ;
 ;
LKHNAME(LK,NOM) ;
 N LKHNAME
 N A S A=$G(@$$GLCB(LK,NOM))
 S LKHNAME=$P(A,"\",11)
 I $L($G(@$$GLCB(LK,NOM)@("LKHNAME"))) S LKHNAME=^("LKHNAME")
 I $L($G(@$$GLCB(LK,NOM)@("VC","NAME"))) S LKHNAME=^("NAME")
 I LKHNAME="" S LKHNAME=$$LKH^W4L(LK)
 I LKHNAME="",LK["." D
 .I LK[".99999" S LKHNAME="illk tih" Q
 .N LKT S LKT=$P(LK,".",2)
 .S LKHNAME=$$^W4NAME(LKT)
 Q LKHNAME
 ;
GLCB(STRING,NOM) ;
 Q $$^W4GL("KLF")_"("""_STRING_""",""CB"","_+NOM_")"
 ;
SUMCBPAID(LK,NOM) ;
 N SUMPAID S SUMPAID=0
 ;;I $D(@$$GLCB(LK,NOM)@("PAID"))=1 S SUMPAID=$P(^("PAID"),"\",2)
 ;
 ;;I $D(@$$GLCB(LK,NOM)@("PAID"))>9 D
 .N N S N="" F  S N=$O(@$$GLCB(LK,NOM)@("PAID",N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..S SUMPAID=SUMPAID+$P(A,"\",2)
 ;
 N GL S GL=$$^W4GL("P1CHB")
 S SUMPAID=$P($G(@GL@(NOM)),"\",4)
 Q SUMPAID
 ;
 ;
PAID1(LK,NOM) ;
 I $D(@$$GLCB(LK,NOM)@("PAID"))=1 Q ^("PAID")
 I $D(@$$GLCB(LK,NOM)@("PAID"))>9 Q $G(@$$GLCB(LK,NOM)@("PAID",1))
 Q ""
 ;
 ;
CA(LK,NOM) ; 
 N CA S CA=0
 N GL S GL=$$^W4GL("KLF")_"("""_LK_""",""CBV"","_NOM_")"
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .S CA=CA+$P(A,"*",7)
 Q CA
 
 
 

W4CBGT
W4CBGT(STRING,CODDOC,NUMBER) ; [ 01.08.18 16:50 ] [ 30.11.11 14:35 ] [ 19.01.11 18:07 ] 
 ;-------------------------------------------------------
 ;OUT : DAT2,DAT21,MZMN,MZMOLD,MASMK,SUMCH,SUMCHO,SUMCHM
 ;      DAT0,LKH1,PRATIM,CAV,SUMTZ1,ITRA,ITRA1
 ;      ^MBG
 ;--------------------------------------------------------
 N (JB,%ARG,%REM,STRING,CODDOC,NUMBER,VTS,CAV,MZMN,MASMK,SUMCH,SUMCHO,SUMCHB,SUMTZ1,PRATIM,ITRA)
 S KLF=$G(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER))
 S KLFV=$$^W4GL("KLF")_"(STRING,CODDOC_""V"",NUMBER)"
 S KLFP=$G(@$$^W4GL("KLF")@(STRING,CODDOC_"P",NUMBER))
 ;
 I CODDOC="HMK" D
 .S KLF=$G(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER,"CB"))
 .S KLFV=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER,""CBV"")"
 .S KLFP=$G(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER,"CBP"))
 ;
 S DAT2=$P(KLF,"\",4)
 S DAT21=$$^%L1DC(DAT2,1)
 S (MZMN,MZMOLD)=$P(KLF,"\",2)
 S MASMK=$P(KLF,"\",9)
 S SUMCH=$P(KLF,"\",6)
 S SUMCHB=$P(KLF,"\",8)
 S SUMCHO=SUMCH-SUMCHB
 S DAT0=$$^%L1DC($$^%L1DC($H,1),2)
 S LKH1=$$LKH^W4L(STRING)
 S PRATIM=KLFP
 ;
 I CODDOC="CB" D KLOST
 ;
 D
 .N II F II="VTS","VTS1","SUGI","SUGA","PN","PN1","PC","PC1","CAV" K @II
 .;
 .I $D(@KLFV)=1 D
 ..S CAV=0 D ^W4GTVCH(@KLFV,"V")
 ..I $E(VTS)="$" S VTS=$E(VTS,2,6) Q:VTS=""
 ..D CAV
 .I $D(@KLFV)>9 D
 ..N N S N="" F  S N=$O(@KLFV@(N)) Q:N=""  D
 ...D ^W4GTVCH($G(@KLFV@(N)),"V")
 ...I $E(VTS)="$" S VTS=$E(VTS,2,6) Q:VTS=""
 ...D CAV
 ...F II="VTS","VTS1","SUGI","SUGA","PN","PN1","PC","PC1","CAV" D
 ....S @II@(N)=$G(@II)
 ;
 S SUMTZ1=$J(+KLF,2,2)
 ;
 I CODDOC="CB" D
 .I $G(%ARG("ITRA")) S ITRA=$J(ITRA1-SUMTZ1,2,2)
 .K @$$^W4MAIN("MBG")
 .N I F I=1:1 Q:'$D(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER,I))  D
 ..S @$$^W4MAIN("MBG")@(I)=$G(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER,I))
 Q
 ;
 ;
KLOST ;
 I '$G(%ARG("ITRA")) Q
 K KLOST,KLOSTP
 S KLOSTP("CD")=CODDOC,KLOSTP("N")=NUMBER
 I $G(@$$^W4PRM@("ITRAHZ")) G KLOST1
 S ITRA1=$$CBH^W4KLOST(STRING,$$^%L1DC(DAT21,3))
 Q
 ;
KLOST1 D ^W4KLOST
 Q
 ;
 ;
CAV ; VTS,SUG21,PN,P1,PC,CAV --> VTS1,SUGI,SUGA,PN1,P11,PC1
 ;---------------------------------------------------------
 I $E(VTS)="$" S VTS=$E(VTS,2,6)
 S VTS1=$S(VTS="V1":"hxk`xyi",VTS="V2":"dfie",VTS="V3":"qxpiic",VTS="V4":"AM.EXP",1:"")
 S SUGI=$S(SUG21=1:" daeg",SUG21=2:"lehia",SUG21=3:"zekf",SUG21=5:"zvle`n",1:"     ")
 S SUGA=$S(SUG1=1:"  libx",SUG1=2:"30 qelt",SUG1=3:"hicxw`xyi",SUG1=4:"minelyz",SUG1=5:" cgein",1:"      ")
 S PN1=PN,P11=$J(P1*.01,2,2),PC1=$J(PC*.01,2,2),CAV=$J(CAV,2,2)
 S:'PN1 PN1=1 S:'PC1&'P11 P11=CAV
 Q
 
 
 
 
 
 
 
 
 

W4CBHB
W4CBHB(LKH,NOMCB,SHOW) ; [ 29.01.26 12:45 ] [ 04.02.24 15:34 ] [ 10.06.20 11:53 ] 
 D DR
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br />",!
 I $$PRINT!$G(SHOW) S ETEK=1
 ;
 I $G(ETEK)!$$PRINT D
 .W "<span dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("APP2RECEIPTNMB")_" "_NOMCB_"</span>",!
 ;
 I '$G(ETEK),'$$PRINT D
 .W "<span dir="""_$$^%W1DIR_""" style=""color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"_$$^%W1DICT("SIGNINVOICE2PAY")_"</span>",!
 W "<br />",!
 W "<br />",!
 ;
 D INVOICESLIST
 ;
 W "</div>",!
 ;
 ;;I 'SHHB D  Q
 .W "<script>",!
 .W " Back()",!
 .W "</script>",!
 ;
 W "<br />",!
 ;
 I '$$PRINT^W4LCBCR D
 .W "<div id=""divbut"" align=""center"">"
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 .W "<tr>",!
 . W " <td>",!
 .  I '$G(ETEK) D
 .  . D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_LKH_"','"_NOMCB_"','0')","color:green",",,,100")
 .  I $G(ETEK) D
 .  . D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .  W "<td>",!
 .   D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 .  W " </td>",!
 . W "</tr>",!
 .W "</table>",!
 .W "</div>",!
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
INVOICESLIST ;
 N STRING,TOT S STRING=LKH
 W "<table border=""0""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 S TOT=$J($$TOT^W4LCBCR(NOMCB),DR,DR),TOTPAID=$J($$TOTALPAID(NOMCB),DR,DR)
 W "  <td width=""18%""><b>"_$$^%W1DICT("TOTALINRECEIPT")_" : </b></td>",!
 W "  <td id=""totalcb"" "_$$STYLEBLACK_" >"_$J(TOT,DR,DR)_"</td>",!
 W "  <td width=""16%""><b>"_$$^%W1DICT("TOTALPAID")_" : </b></td>",!
 W "  <td id=""totalpaid"" "_$$STYLEBLACK_">"_TOTPAID_"</td>",!
 W "  <td width=""10%""><b>"_$$^%W1DICT("BALANCE")_" : </b></td>",!
 W "  <td id=""itracb"" "_$$STYLEBLACK_" >"_$J(TOT-TOTPAID,DR,DR)_"</td>",!
 W "</tr>",!
 W "</table>",!
 ;
 W "<br />",!
 ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("INVOICESLIST")_"</span>",!
 ;
 W "<table width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td "_$$INV^%W1ALIGN_" >"
   W $$^%W1DICT("SIGNALL")
   W $$NBSP^%L1FRM(2)
   W "<input type=""checkbox"" id=""sgnall"" onClick=""SignAll(this)"" >",!
  W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<table id=""listinvoices"" border=""1""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("INVOICE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("PAIDBEFORE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("PAIDINRECEIPT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("BALANCE")
 W "   </th>",!
 I '$G(ETEK) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("PAY")
 .W "   </th>",!
 W "  </tr>",!
 ;
 N KLIN D KLIN
 N GLHB D GLHB
 ;
 S SHHB=0
 I '$G(ETEK) D
 .N N,LK,LK0,A
 .N VD F VD="TZ","H","HI" D
 ..S N="" F  S N=$O(@KLIN@(VD,N)) Q:N=""  D
 ...S LK0=$G(^(N)),LK=$P(LK0,"+"),LK=$P(LK,"W"),LK=$P(LK,"^")
 ...I LK=LKH D SHOWINVC(N,VD,LK0)
 ;
 I $G(ETEK) D
 .D GLCBHB,KLIN
 .N HB,A,N,W4HSB,VD
 .S N="" F  S N=$O(@GLCBHB@(NOMCB,N)) Q:N=""  D
 ..S VD="H",HB=N
 ..S HB=$$VDHB(N)
 ..D ^W4HSBGET(HB,VD) Q:$D(W4HSB)<10
 ..S SHHB=SHHB+1
 ..S LK0=$G(@KLIN@(VD,HB))
 ..D TRSTYLE
 ..W " >",!
 ..W " <td " D SHOWINVOICE(N,LK0) W ">&nbsp;&nbsp;&nbsp;"_N_$$HBHI(VD,LK0)_"</td>"
 ..W " <td " D SHOWINVOICE(N,LK0) W ">&nbsp;&nbsp;"_W4HSB("TODATE")_"</td>",!
 ..W " <td dir=""LTR"" "_$$^%W1ALIGN D SHOWINVOICE(N,LK0) W ">&nbsp;"_$J(W4HSB("TOT"),DR,DR)_"</td>",!
 ..I '$G(W4HSB("PAID")),$$PAIDCB(NOMCB,HB) S W4HSB("PAID")=$$PAIDCB(NOMCB,HB)
 ..W " <td dir=""LTR"" "_$$^%W1ALIGN D SHOWINVOICE(N,LK0) W ">&nbsp;"_$J(W4HSB("PAID")-$$PAIDCB(NOMCB,HB),DR,DR)_"</td>",!
 ..W " <td dir=""LTR"" "_$$^%W1ALIGN D SHOWINVOICE(N,LK0) W ">&nbsp;<span id=""paid"_N_""" style=""color:black"">"_$J($$PAIDCB(NOMCB,N),DR,DR)_"</span></td>",!
 ..W " <td dir=""LTR"" "_$$^%W1ALIGN D SHOWINVOICE(N,LK0) W ">&nbsp;<span id=""itrahb"_N_""">"_$J(W4HSB("TOT")-W4HSB("PAID"),DR,DR)_"</span></td>",!
 ..W "</tr>",!
 ;
 W " </table>",!
 Q
 ;
 ;
ARM(LK0) ;
 I LK0["W" Q 2
 I LK0'["+" Q 1
 Q 0
 ;
SPAN(STAM) ;
 Q " <span style=""color:black"""
 ;
SHOWINVOICE(N,LK0) ;
 N LK
 S LK=$$LK^W4LHB(LK0)
 W " style=""cursor:pointer"" "
 ;
 I $E($$SPA^%L1FRM(N))="[" D  Q  ; -- HI
 .W " onClick=""ShowArmInvoice('"_$$CLRHI(N)_"HI','"_LK_"',self,'','0')"" "
 ;
 I '$$ARM(LK0) W " onClick=""ShowInvoice('"_N_"','"_LK_"','ifr')"""
 ;
 I $$ARM(LK0)=1 D
 .W " onClick=""ShowArmInvoice('"_N_"','"_LK_"','ifr')"""
 ;
 I $$ARM(LK0)=2 D
 .W " onClick=""ShowItemsInvoice('"_N_"','"_LK_"','ifr')"""
 Q
 ;
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold;text-align:right"""
 ;
TOTALPAID(NOMCB) ;
 I '$G(NOMCB) Q 0
 D GLCBHB N N,SUM S SUM=0
 S N="" F  S N=$O(@GLCBHB@(NOMCB,N)) Q:N=""  D
 .S SUM=SUM+$G(^(N))
 Q SUM
 ;
PAIDCB(NOMCB,NOMHB) ;
 I '$G(NOMCB) Q 0
 D GLCBHB
 Q +$G(@GLCBHB@(NOMCB,NOMHB))
 ;
GLCBHB ;
 S GLCBHB=$$^W4GL("P1CHB")
 Q
 ;
KLIN ;
 S KLIN=$$^W4GL("KLIN")
 Q
 ;
GLHB ;
 S GLHB=$$^W4GL("P1LHB")
 Q
GLHBY ;
 S GLHBY=$$^W4GL("KLF")
 Q
GLHBW ;
 S GLHBW=$$^W4GL("W4DOC")
 Q
 ;
PUT(PRM) ;
 D DR
 N GLCBHB D GLCBHB,KLIN,GLHB,GLHBY,GLHBW
 N STRING,LKH,NOMCB,STR,I
 S (STRING,LKH)=$P(PRM,";")
 S NOMCB=$P(PRM,";",2) I NOMCB D CLR(NOMCB)
 I 'NOMCB D
 .S NOMCB=$$PUT^W4LCBCR(STRING_";"_$$GETP^%W1PRM("TZ"))
 .D PUT^%W1PRM("MKRYD",NOMCB_"CB")
 I 'NOMCB Q "RECEIPTNUMBERISWRONG"
 I 'LKH Q "CUSTOMERNUMBERISWRONG"
 ;
 S STR=$P(PRM,";",3,$L(PRM,";")-1)
 D PUT^%W3DEB("W4CBHB-PUT","LKH=LKH & NOMCB=NOMCB & STR=STR")
 N SSUM S SSUM=0
 ;
 L +@GLCBHB@(NOMCB):2
 ;
 F I=1:1:$L(STR,";") D
 .N A,HB,SUM
 .S A=$P(STR,";",I)
 .S HB=$P(A,"~")
 .S SUM=$P(A,"~",2)
 .I HB?.P Q
 .S SSUM=SSUM+SUM
 .N HBKL,VD S HBKL=HB,VD="H"
 .S HBKL=$$VDHB(HB)
 .
 .N ARM S ARM=$$ARM(@KLIN@(VD,HBKL))
 .I VD="TZ" S ARM=-ARM
 .
 .I 'ARM D
 ..N SUMO S SUMO=$P($G(@GLHB@(LKH,HB)),"\",5)
 ..S NCBO=$P($G(@GLHB@(LKH,HB)),"\",6)
 ..Q:'SUM
 ..L +@GLHB@(LKH,HB):1
 ..S $P(@GLHB@(LKH,HB),"\",5)=SUMO+SUM
 ..S $P(@GLHB@(LKH,HB),"\",6)=$S($L(NCBO):NCBO_",",1:"")_NOMCB
 ..D ^%S3GLSV(GLHB_"("""_LKH_""","""_HB_""")",$$^W4FGIB)
 ..L -@GLHB@(LKH,HB)
 .;
 .I ARM=1!(ARM=-1) D
 ..N SUMO S SUMO=$P($G(@GLHBY@(LKH,VD,HBKL)),"\",5)
 ..S NCBO=$P($G(@GLHBY@(LKH,VD,HBKL)),"\",6)
 ..Q:'SUM
 ..L +@GLHBY@(LKH,VD,HBKL):1
 ..S $P(@GLHBY@(LKH,VD,HBKL),"\",5)=SUMO+SUM
 ..S $P(@GLHBY@(LKH,VD,HBKL),"\",6)=$S($L(NCBO):NCBO_",",1:"")_NOMCB
 ..D ^%S3GLSV(GLHBY_"("""_LKH_""","""_VD_""","""_HBKL_""")",$$^W4FGIB)
 ..L -@GLHBY@(LKH,VD,HBKL)
 .
 .I ARM=2!(ARM=-2) D
 ..I ARM=-2,HBKL'["Z" S HBKL=HBKL_"Z"
 ..S NOM=$$NOM^W4DOC(HBKL) Q:'NOM
 ..N SUMO S SUMO=$P($G(@GLHBW@(NOM)),"\",19)
 ..S NCBO=$P($G(@GLHBW@(NOM)),"\",20)
 ..Q:'SUM
 ..L +@GLHBW@(NOM):1
 ..S $P(@GLHBW@(NOM),"\",19)=SUMO+SUM
 ..S $P(@GLHBW@(NOM),"\",20)=$S($L(NCBO):NCBO_",",1:"")_NOMCB
 ..D ^%S3GLSV(GLHBW_"("_NOM_")",$$^W4FGIB)
 ..L -@GLHBW@(NOM)
 .
 .S @GLCBHB@(NOMCB,HB)=SUM_$S(ARM:"",1:"+")
 ;
 N TOT S TOT=$$TOT^W4LCBCR(NOMCB)
 S @GLCBHB@(NOMCB)=LKH_"\"_$$DAT^W4LCBCR(NOMCB)_"\"_$J(TOT,DR,DR)_"\"_$J(SSUM,DR,DR)_"\"_$J(TOT-SSUM,DR,DR)
 ;
 D ^%S3GLSV(GLCBHB_"("""_NOMCB_""")",$$^W4FGIB)
 L  ;
 Q NOMCB
 ;
 ;
TRSTYLE ;
 W "<tr style=""background-color:"_$S($G(VD)="TZ":"pink",$G(VD)="HI":"lightgreen",$$ARM(LK0)=1:"lightblue",$$ARM(LK0)=2:"lightyellow",1:"white")_""""
 Q
 ;
CLR(NOMCB) ;
 N LK0,SUM,ARM,LK0,LK,VD,HB,HBKL,NOM,NCBO
 ;
 N GLCBHB,KLIN,GLHB,GLHBY,GLHBW
 D GLCBHB,KLIN,GLHB,GLHBY,GLHBW
 ;
 S HB="" F  S HB=$O(@GLCBHB@(NOMCB,HB)) Q:HB=""  D
 .S SUM=+$G(@GLCBHB@(NOMCB,HB))
 .S VD="H",HBKL=HB
 .S HBKL=$$VDHB(HB)
 .S LK0=$G(@KLIN@(VD,HBKL)) Q:'LK0 NCBO
 .S ARM=$$ARM(LK0)
 .S LK=$$LK^W4LHB(LK0)
 .I 'ARM D
 ..L +@GLHB@(LK,HBKL):1
 ..S $P(@GLHB@(LK,HBKL),"\",5)=$P($G(@GLHB@(LK,HBKL)),"\",5)-SUM
 ..S NCBO=$P($G(@GLHB@(LK,HBKL)),"\",6)
 ..S $P(@GLHB@(LK,HBKL),"\",6)=$$CLRNCB(NCBO,NOMCB)
 ..L -@GLHB@(LK,HBKL)
 .I ARM=1!(ARM=-1) D
 ..L +@GLHBY@(LK,VD,HBKL):1
 ..S $P(@GLHBY@(LK,VD,HBKL),"\",5)=$P($G(@GLHBY@(LK,VD,HBKL)),"\",5)-SUM
 ..S NCBO=$P($G(@GLHBY@(LK,VD,HBKL)),"\",6)
 ..S $P(@GLHBY@(LK,VD,HBKL),"\",6)=$$CLRNCB(NCBO,NOMCB)
 ..L -@GLHBY@(LK,VD,HBKL)
 .I (ARM=2)!(ARM=-2) D
 ..I ARM=-2,HBKL'["Z" S HBKL=HBKL_"Z"
 ..S NOM=$$NOM^W4DOC(HBKL) Q:'NOM
 ..L +@GLHBW@(NOM):1
 ..S $P(@GLHBW@(NOM),"\",19)=$P($G(@GLHBW@(NOM)),"\",19)-SUM
 ..S NCBO=$P($G(@GLHBW@(NOM)),"\",20)
 ..S $P(@GLHBW@(NOM),"\",20)=$$CLRNCB(NCBO,NOMCB)
 ..L -@GLHBW@(NOM)
 .K @GLCBHB@(NOMCB,HB)
 Q
 ;
CLRNCB(NCBO,NOMCB) ;
 N NCBO1,NCBO2
 S NCBO1=","_NCBO_","
 S NCBO2=","_NOMCB_","
 S NCBO=$P(NCBO1,NCBO2,1)_$P(NCBO1,NCBO2,2)
 I $E(NCBO)="," F  S NCBO=$E(NCBO,2,$L(NCBO)) Q:$E(NCBO)'=","
 I $E(NCBO,$L(NCBO))="," D
 .F  S NCBO=$E(NCBO,1,$L(NCBO)-1) Q:$E(NCBO,$L(NCBO))'=","
 Q NCBO
 ;
VDHB(HB) ;
 I HB<0 S VD="TZ",HB=-HB
 I $E(HB)="[" S VD="HI",HB=$$CLRHI(HB)
 Q HB
 ;
CLRHI(HB) ;
 Q +$TR(HB,"[] ","")
 ;
HBHI(VD,LK) ; 
 I VD="HI" Q ""
 S LK=$$^W4CLRLK(LK)
 I $G(W4HSB("HBHI"))="" Q ""
 N HBHI S HBHI=""
 N HI,HIJ,J S HI=$G(W4HSB("HBHI"))
 ;
 F J=1:1:$L(HI,",") D
 .S HIJ=$P(HI,",",J)
 .S HBHI=HBHI_"<span style=""color:green;font-size:"_$$^W3FSZ(8)_""" "
 .S HBHI=HBHI_" onClick=""ShowArmInvoice('"_HIJ_"HI','"_LK_"')"">"_HIJ_"</span>"
 .I J<$L(HI,",") S HBHI=HBHI_","
 I HBHI'="" Q " ["_HBHI_"]"
 Q ""
 ;
PRINT(STAM) ; 
 Q $$PRINT^W4LCBCR 
 ;
SHOWINVC(N,VD,LK0) ; 
 D ^W4HSBGET(N,VD) Q:$D(W4HSB)<10
 I '$G(NOMCB),$G(W4HSB("TOT"))<($G(W4HSB("PAID"))+.1),$G(W4HSB("TOT"))>0 Q
 I '$G(NOMCB),$G(W4HSB("TOT"))>($G(W4HSB("PAID"))-.1),$G(W4HSB("TOT"))<0 Q
 I '$G(NOMCB),$$^W4CLOSED(VD,N) Q
 N HB S HB=N I HB>0&(VD="TZ") S HB=-HB
 I VD="HI",$G(W4HSB("HBHI")) Q
 I VD="HI" S HB="["_N_"]"
 I $G(NOMCB),$J(W4HSB("TOT"),1,1)=$J(W4HSB("PAID"),1,1),'$$PAIDCB(NOMCB,HB) Q
 S SHHB=SHHB+1
 D TRSTYLE
 W " >",!
 W " <td " D SHOWINVOICE(+HB,LK0) W ">&nbsp;&nbsp;&nbsp;"_HB_$$HBHI(VD,LK0)_"</td>"
 W " <td " D SHOWINVOICE(+HB,LK0) W ">&nbsp;"_W4HSB("TODATE")_"</td>",!
 W " <td " D SHOWINVOICE(+HB,LK0) W ">&nbsp;"_$J(W4HSB("TOT"),DR,DR)_"</td>",!
 N PAIDBF S PAIDBF=$G(W4HSB("PAID"))-$$PAIDCB(NOMCB,HB)
 I PAIDBF<0 S PAIDBF=0
 W " <td " D SHOWINVOICE(+HB,LK0) W ">&nbsp;"_$J(PAIDBF,DR,DR)_"</td>",!
 W " <td " D SHOWINVOICE(+HB,LK0) W ">&nbsp;<span id=""paid"_HB_""" style=""color:black"">"_$$PAIDCB(NOMCB,HB)_"</span></td>",!
 W " <td " D SHOWINVOICE(+HB,LK0) W ">&nbsp;<span id=""itrahb"_HB_""">"_$J(W4HSB("TOT")-W4HSB("PAID"),DR,DR)_"</span></td>",!
 S CHECKED="" I $G(NOMCB),$$PAIDCB(NOMCB,HB) S CHECKED=" checked=""checked"" "
 W " <td align=""center"" ><input type=""checkbox"" id=""chkbox"_HB_""" "_CHECKED_" onClick=""ClickChkBox(this,'"_HB_"')"" ></td>"
 W "</tr>",!
 Q
 ;
DR ; 
 S DR=1 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CBOLD
W4CBOLD(HZM) ; [ 06.09.08 12:15 ] [
 N GLORD D GLORD^W4HZMST
 M @GLORD@("CBOLD")=@GLORD@("CB")
 Q

W4CDKV
W4CDKV(STAM) ; [ 07.11.17 11:59 ] [ 
 I $G(%ARG("CDKV")) Q %ARG("CDKV")
 Q $$GETP^%W1PRM("CDKV")

W4CDLK
W4CDLK(LKH) ; [ 29.09.15 10:21 ] [
 I $$DEFISLK^W4PRM Q $G(LKH)
 Q $$CLR(LKH)
 ;
CLR(LKH) ;
 Q $TR($G(LKH),"-","")

W4CDSRV
W4CDSRV(PAR) ; [ 17.06.21 08:32 ] [ 30.12.20 06:26 ] [ 18.12.17 12:08 ] 
 N (JB,%ARG,PAR)
 I $G(PAR)="" Q 0
 I PAR,PAR=$$TOAICD^W4PRM Q 1
 I $$MYCHECK^W4PRM,PAR=$$MYCHECK^W4PRM Q 2
 I PAR,$$BSL^W4PRM,$$BSLPAR(PAR) Q 3
 I PAR,$$MP^W4PRM,PAR=$$CDHNHMP^WMPRM!(PAR=$$CDHNHMPP^WMPRM)!(PAR=$$CASHBACK^WMPRM) Q 4
 I PAR,PAR=$$GCOUPIT^W4PRM Q 5
 I PAR,PAR=$$DESERTCD^W4PRM Q 6
 I PAR,PAR=$$CHECKERCD^W4PRM Q 7
 I PAR,PAR=$$HZMH^W3PRM Q 8
 I PAR,PAR=$$PIZUIM^W4PRM Q 9
 I PAR,PAR=$$PIZUIM^W4PRM Q 9
 I PAR,$$DELIM^W4P(PAR) Q 10
 I PAR,$$DLM^W4P(PAR) Q 11
 I PAR,PAR=$$CD11^W4PRM Q 12
 Q 0
 ;
BSLPAR(PAR) ;
 I $$BSL^W4PRM,PAR,PAR=$$PARBON^WBPRM!(PAR=$$PARNKD^WBPRM) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CDSUPR
W4CDSUPR(CD) ; [ 08.06.21 08:53 ] [ 08.04.21 11:33 ] [ 17.01.21 16:39 ] 
 I CD?1"&"1N.N S CD=$E(CD,2,255)
 I CD=0 Q CD
 I CD'?1N.N Q CD
 I $$NOCD8^W4PRM Q +CD
 I $$CD8^W4PRM!($$SUPER^W3PRM=1) Q $$CD8(CD)
 Q +CD
 ;
CD8(CD) ;
 Q $TR($$HBR^%L1FRM(CD,8)," ",0)
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CH
W4CH ; [ 28.06.14 08:55 ] [ 27.06.14 18:28 ] [ 25.07.11 09:13 ]
 ;--- INPUT : KUP,DATP,BSN,HESH,NCHECK,TZ,CHS
 N (JB,%ARG,%REM,KUP,DAT,DATP,BSN,HESH,NCHECK,TZ,CHS,%BS,HZM,CODDOC)
 S:$G(CODDOC)="" CODDOC="HZ"
 D ^W4IN
 S %BS=0
 ;
 I '$D(DATP)!'$D(BSN) S %BS=1,CHS=0 Q
 ;
 S DATPR=$$^%L1DC(DATP,2)
 S SNIF=$E(BSN,3,5),BANK=$E(BSN,1,2)
 S BANK=$TR($J(BANK,2)," ",0),SNIF=$TR($J(SNIF,3)," ",0)
 S HESH=$TR($J(HESH,11)," ",0)
 S HSBN=BANK_SNIF_HESH
 ;
 I TZ,$D(@$$^W4GL("CHEKBL")@(TZ)) S %BS=2,CHS=0 Q  ; -- HESHBON MUGBAL
 I HSBN,$D(@$$^W4GL("CHEKBL")@(HSBN)) S %BS=3,CHS=0 Q  ; -- HESHBON MUGBAL
 ;
 S MSHM=+$G(@$$^W4GL("MSHM")@(DAT,KUP),1)
 L +@$$^W4GL("CHECK")@(DAT,KUP,MSHM):1
 S NSID=$O(@$$^W4GL("CHECK")@(DAT,KUP,MSHM,99999),-1)+1
TV Q:'CHS
 S ASM=HZM_$S(CODDOC="HZ":"",1:CODDOC)
 S @$$^W4GL("CHECK")@(DAT,KUP,MSHM,NSID)=CHS_"\"_BANK_"\"_NCHECK_"\"_TZ_"\"_DATPR_"\"_SNIF_"\"_HESH_"\"_ASM
 D ^%S2GLSV($$^W4GL("CHECK")_"("""_DAT_""","""_KUP_""","""_MSHM_""","""_NSID_""")",$$^W4FGIB)
 ;
 I DATPR'="" L +@$$^W4GL("CHBA")@(DATPR):1
 I DATPR'="",BANK'="",SNIF'="",NCHECK'="",CHS>0 D
 .S @$$^W4GL("CHBA")@(DATPR,BANK,SNIF,+NCHECK)=CHS_"\"_DAT_"\"_HESH_"\\"_TZ_"\"_KUP_"\"_MSHM_"\"_NSID_"\"_ASM
 .I $G(KBL) S $P(@$$^W4GL("CHBA")@(DATPR,BANK,SNIF,+NCHECK),"\",12)=KBL
 .D ^%S2GLSV($$^W4GL("CHBA")_"("""_DATPR_""","""_BANK_""","""_SNIF_""","""_+NCHECK_""")",$$^W4FGIB)
 ;
 I DATPR'="",BANK'="",SNIF'="",NCHECK'="",CHS<0 D
 .K @$$^W4GL("CHBA")@(DATPR,BANK,SNIF,+NCHECK)
 .D ^%S2GLSV($$^W4GL("CHBA")_"("""_DATPR_""","""_BANK_""","""_SNIF_""","""_+NCHECK_""")",$$^W4FGIB,"K")
 L  ;
 Q

W4CHANGE
W4CHANGE(MYDV,NMB) ; [ 17.05.17 14:43 ] [ 27.01.09 07:43 ] [
 Q
 N N
 S N="" F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .I N'=MYDV S @$$^W4GL("W4TBSTAT")@(N,NMB)=""
 Q
 
 
 

W4CHCOUR
W4CHCOUR ; [ 27.03.25 15:36 ] [ 29.12.16 14:49 ] [ 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""font-size:"_$$^W3FSZ(21)_""">",!
 W "<span style=""font-size:"_$$^W3FSZ(21)_";COLOR:BROWN"">"_$$^%W1DICT("CHOICECOURIER")_"</span>",!
 W "<br><br>"
 W "<table>"
 W "<tr>"
  W "<td>"
  W " <select id=""psl"" style=""font-size:"_$$^W3FSZ(18)_""">",!
  W " <option value=""0"" "
  W " >",!
   W $$^%W1DICT("CHOICECOURIER")
  W " </option>",!
  ;
  N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  I N<9999 D
  .N A S A=$G(^(N))
  .I $$NOPRES(N) Q
  .W " <option value="""_N_""" "
  .I N=$$PSL^W4HZMST(%ARG("ORD")) W " selected=""selected"" "
  .W " >",!
  . W $$H2U^%L1FRM(A)
  .W " </option>",!
  W " </select>",!
  W "</td>"
 W "</tr>",!
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 W "<tr>"
  W "<td>"
   W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" "
   W " onClick=""Submit()"" style=""color:green;width:100%;font-size:"_$$^W3FSZ(18)_""" >"
  W "</td>"
 W "</tr>"
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 W "<tr>"
  W "<td>"
   W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
   W " onClick=""Back()"" style=""color:red;width:100%;font-size:"_$$^W3FSZ(18)_""" >"
  W "</td>"
 W "</tr>"
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
NOPRES(PSL)
 Q $$NOPRES^W4DLVORD(PSL)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHHZMS
W4CHHZMS ; [ 22.01.24 10:07 ] [ 27.12.23 10:08 ] [ 17.12.23 12:53 ] 
 N (JB,%ARG,%REM)
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  F I=1:1:2 W "<br>",! 
  ; 
  W "<div dir="""_$$^%W1DIR_""" style=""height:80%;width:50%;overflow-y:auto"">",!
  W "<table dir="""_$$^%W1DIR_""" id=""hzmmsk"" cellpadding=""8"" cellspacing=""0"" border=""1"" "
    W "style=""background-color:white;font-size:"_$$^W3FSZ(22)_";width:100%;height:100%"" "
  W ">",!
   W "<tr height=""10%"" >"
    W "<th width=""50%"" >"
     W $$^%W1DICT("HZMMSK")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("SUM")
    W "</th>"
   W "</tr>",!
   ;
   S GLREF=$$GLREF^W4POSMSK
   S DZ=$$^W4DZ
   ;
   S K=0
   S N="" F  S N=$O(@GLREF@(DZ,N)) Q:N=""  D
   .S A=$G(^(N))
   .I $$HZKUP(A) Q
   .I $D(@$$^W4TMPORD@("HZMSK",N)) Q
   .I $D(@$$^W4GL("W4TMP")@(N,"ZMANI")) Q
   .I $D(@$$^W4GL("W4TMP")@(N,"DEL")) Q
   .
   .W "<tr "_$$^W4TOUCH_"=""Click('"_N_"')"" >"
   . S K=K+1
   . W "<td id=""hzmsk"_N_""" style=""text-align:center;cursor:pointer"" " 
   .
   . W ">"
   .  W N
   . W "</td>",!
   .
   . W "<td style=""color:darkgreen"">"  
   .  W $J($$SUM(A),2,2)
   . W "</td>"
   .W "</tr>",!
  ;
  I K<5 F I=K+1:1:5 W "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>",!
  ;;I K=0 W "<tr><td colspan=""2"">&nbsp;</td></tr>",! 
  W "</table>",!
 W "</div>",!
  ;
  F I=1:1:2 W "<br>",! 
  
  D ^W4BCK 
 Q
 ;
 ;
HZKUP(A) Q $P(A,"\",5)
 ;
SUM(A) Q $P(A,"\",3)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHKDBL
W4CHKDBL(HZM,PR) ; [ 20.10.16 16:00 ] [ 19.10.16 18:18 ] [ 18.10.16 17:38 ] [
 N (JB,%ARG,HZM,PR)
 S A1=$G(@$$^W4ORD@(HZM,1))
 S TM1=$G(@$$^W4ORD@(HZM,"ST",1))
 S A2=$G(@$$^W4ORD@(HZM,2))
 S TM2=$G(@$$^W4ORD@(HZM,"ST",2))
 S A3=$G(@$$^W4ORD@(HZM,3))
 S TM3=$G(@$$^W4ORD@(HZM,"ST",3))
 ;
 S OK=0
 S N=3 F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S TMA=$G(@$$^W4ORD@(HZM,"ST",N))
 .S TM0=$G(@$$^W4ORD@(HZM,"ST",N-1))
 .I $$EQ(A,A1,N,1),TMA=TM1 D
 ..S N1=$O(@$$^W4ORD@(HZM,N))
 ..I N1 D
 ...S B=$G(@$$^W4ORD@(HZM,N1))
 ...S TMB=$G(@$$^W4ORD@(HZM,"ST",N1))
 ...I $$EQ(B,A2,N1,2),TMB=TM2 D
 ....S N2=$O(@$$^W4ORD@(HZM,N1)) I N2 D
 .....S C=$G(@$$^W4ORD@(HZM,N2))
 .....S TMC=$G(@$$^W4ORD@(HZM,"ST",N2))
 .....I $$EQ(C,A3,N2,3),TMC=TM3 D
 ......I '$$CHANGETIME(N) Q
 ......D VIB(N)
 Q
 ;
VIB(N) ;
 N N0 S N0=N
 N DBLORD S DBLORD=$$^W4GL("DBLORD")
 S @DBLORD@(HZM)=$G(@$$^W4ORD@(HZM))
 I $G(PR) W HZM_" "_$G(^(HZM)),!
 N NN,END,TM,ST,ST1
 S NN=N-1,END=0
 ;
 F  S NN=$O(@$$^W4ORD@(HZM,NN)) Q:NN=""  D  Q:END
 .S ST=$G(^(NN))
 .S TM=$G(@$$^W4ORD@(HZM,"ST",NN))
 .I TM'=$G(@$$^W4ORD@(HZM,"ST",NN-N+1)) S END=1 Q
 .S ST1=$G(@$$^W4ORD@(HZM,NN-N+1))
 .I '$$EQ(ST,ST1,NN,NN-N+1) S END=1 Q
 .I $G(PR)=2 W $G(@$$^W4ORD@(HZM,NN)),!
 .S @DBLORD@(HZM,NN)=$G(@$$^W4ORD@(HZM,NN))
 .S N0=NN
 S N=N0
 Q
 ;
 ;
CHANGETIME(N) ;
 N OK,TM S OK=0
 N I F I=2:1:N-1 D  Q:OK
 .S TM=$G(@$$^W4ORD@(HZM,"ST",I)) Q:TM=""
 .I $$SPA^%L1FRM(TM)'=$$SPA^%L1FRM(TM1) S OK=1
 Q OK
 ;
EQ(ST1,ST2,NN,N) ;
 I $P(ST1,"\",1,8)'=$P(ST2,"\",1,8) Q 0
 N N1,N2,OK
 N GL S GL=$$^W4ORD_"("_HZM_")"
 ;
 N ST1,ST2
 S OK=1
 S N1="" F  S N1=$O(@GL@(NN,N1)) Q:N1=""  D  Q:'OK
 .S ST1=$P($G(^(N1)),"\",1,4)
 .S ST2=$P($G(@GL@(N,N1)),"\",1,4)
 .I ST1'=ST2 S OK=0 Q
 .S N2="" F  S N2=$O(@GL@(NN,N1,N2)) Q:N2=""  D  Q:'OK
 ..S ST1=$P($G(^(N2)),"\",1,6)
 ..S ST2=$P($G(@GL@(N,N1,N2)),"\",1,6)
 ..I ST1'=ST2 S OK=0 Q
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHKPC
W4CHKPC ; [ 28.03.21 11:31 ] [ 
CYC ;
 I $$^%L1FLAG($$^W4flag_"(""CHKPC"")") Q
 I $D(@$$^W4STLOOP@("PC")) K @$$^W4flag@("CHKPC") Q  ; -- LEHAFSIK
 S DT=$$^W4DZ
 S HZM="" F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  D
 .S DAT=$$DATCB^W4HZMST(HZM)
 .S TIM=$P(DAT,"  ",2)
 .S TIM=TIM*3600+($P(TIM,":",2)*60)
 .I $P($H,",",2)-TIM<600 Q
 .I '$$^W4HZMH(HZM),'$D(@$$^W4ORD@(HZM,"PCAFTPAY")) D
 ..I '$$^W4HZAFTP(HZM) Q
 ..I $$GETP^%W1PRM("BGJ")=HZM Q
 ..D ^W4HZM(HZM,HZW)
 ..S @$$^W4GL("W4CHKPC")@(HZM)=$ZD($H,"DD.MM.YY 24:60")
 ;
 H 20 G CYC
 Q
 
 
 
 
 
 

W4CHKPSW
W4CHKPSW ; [ 17.06.26 11:03 ] [ 12.02.26 09:58 ] [ 11.02.26 12:21 ] 
 N (JB,%ARG,%REM)
 D NOSELECT^%W1JS
 ;;M ^AA("W4CHKPSW-ARG")=%ARG
 W "<div align=""center"">",!
 I $$USBIO D ^W4BIO G ENDDEV
 ;
 S WD=$S($G(%ARG("WIDTH")):%ARG("WIDTH"),$G(%ARG("WD")):%ARG("WD"),1:"") I WD="" S WD=90
 W "<br>",!
 W "<table ",!
  I WD'["px",WD'["%" S WD=WD_"%"
  W "width="""_WD_""" ;"
  I $$^W4TABLET=2 W " height:700px;"
 W ">"
  I $G(%ARG("HEAD"))'="" D HEAD
  ;
  N PRMHD
  S PRMHD=$G(%ARG("LVL"),2)
  S PRMHD=$$LVL2NUM(PRMHD)
  ;
  N HD S HD=""
  I PRMHD?1N.N S HD=$$^%W1DICT("ENTERPASSWORD",PRMHD)
  ;
  I $L(PRMHD),PRMHD'?1N.N D
  .S HD=$$^%W1DICT(PRMHD)
  ;
  I $G(%ARG("HEAD"))="" D 
  .W "<tr><td align=""center"" class=""pswhd"" >"_HD_"</td></tr>"
  W "<tr>"
   W "<td align=""center"">"
    W "<input type=""password"" class=""psw"" id=""pswid"" size=""8"" maxlength=""18"" onKeyPress=""OnKeyPress(event)"" >"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr><td></td></tr>",!
  ;
  W "<tr>"
   W "<td align=""center"">"
    W " <input type=""button"" class=""pswsbm"" value="""_$$^%W1DICT("SUBMIT")_""" "_$$^W4TOUCH_"=""SbmPsw()"" >"
   W "</td>"
  W "</tr>",!
  ;
  D TRSP
  ;
  I '$$^W4SMALL D KB
 
  D TRSP
  ;
  W "<tr>"
   D BACK
  W "</tr>",!
  ;
ENDTB ;
 W "</table>",!
ENDDEV ;
 W "</div>",!
 Q
 ;
CHECKPSW(PRM) ;
 ;;S ^AA("W4CHKPSW-CHECKPSW")=$G(PRM)
 N PSW,DRG,OK
 S PSW=$P(PRM,";")
 S DRG=$P(PRM,";",2)
 I PSW="jd" S PSW="LV"
 I PSW="jwd" S PSW="LEV"
 I DRG="ADMINPSW" Q (PSW=1976)
 I DRG="SHELL" Q $S(PSW=1976!(PSW=1957):1,1:0)
 I DRG="INTRFPSW" Q $S(PSW=1976!(PSW=1957):1,1:0)
 ;
 ;;S ^AA("PSWREM")=PSW
 I DRG="PSWREMOTE",$$PSWREM^W4PRM D  Q OK
 .S OK=(PSW=$$PSWREM^W4PRM)
 .I 'OK,$$PSWALL^W4PRM S OK=(PSW=$$PSWALL^W4PRM)
 .I 'OK S OK=($$FUNC^%UCASE(PSW)="LEV")
 .I 'OK S OK=($$FUNC^%UCASE(PSW)="DWL")
 .I 'OK S OK=(PSW=$C(234,247,228))
 ;
 Q $$^W4SSM(PSW,DRG)
 ;
 ;
COMPPSW(STAM) ;
 N MSF S MSF=$G(@$$^W4PRM@("ASH","MASOF"))
 I 'MSF Q 17101957
 N J,D S D=0 F J=1:1:$L(MSF) S D=D+$E(MSF,J)
 S D=D+$G(@$$^W4GL("W4PSWREM"))
 Q $E(MSF,1,7)\D
 ;
DIGIT(K) ;
 W "<td class=""digit"" style=""font-size:"_$$^W3FSZ($$FSZ)
 ;;I $G(%ARG("LVL"))="PSWREMOTE" W ";padding:"_$$^W4KF(10)
 W ";padding:"_$$^W4KF($S($$^W4TABLET=1:10,1:4))
 W """ "
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseOver=""this.style.cursor='pointer'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';ClickDigit('"_K_"')"""
 W ">"
 W "&nbsp;&nbsp;"_K_"&nbsp;&nbsp;"
 W "</td>"
 Q
 ;
NOCHKPSW(LVL) ;
 ;
 I $$MGR^W4OPT,LVL'="ADMINPSW",LVL'="INTRFPSW" Q 1
 I $G(LVL)=0 Q 1
 I $$GETP^%W1PRM("SISALL")>1 Q 1
 ;
 I $G(@$$^W4PRM@("NOCHKPSW")) Q 1
 ;
 N OK S OK=0
 ;
 I $$GETP^%W1PRM("MNL") D  I OK Q OK
 .N MNL S MNL=$$GETP^%W1PRM("MNL")
 .S MNL=$TR($J(MNL,5)," ",0) Q:'MNL
 .N DRG S DRG=$P($G(@$$^W4GL("W4PSWDRG")@(MNL)),"\")
 .S LVL=$$LVL2NUM(LVL,1)
 .I DRG'<$S($G(LVL):LVL,1:2) S OK=1
 ;
 I $$PSWDRG^W4PRM Q 0
 ;
 I $$GETP^%W1PRM("WASPSW"),$$WASPSW^W4PRM,$$LVL2NUM(LVL,1)<3 Q 1
 ;
 I $G(LVL)="M",'$G(@$$^W4PRM@("PSWHV")) Q 1
 I $G(LVL)="H",$G(@$$^W4PRM@("PSWHNH"))="-" Q 1
 I $G(LVL)="B",$G(@$$^W4PRM@("PSWBIT"))="-" Q 1
 I $G(LVL)="TIKYAD",$G(@$$^W4PRM@("PSW4"))="-" Q 1
 I $G(LVL)="PSWDELPY" S LVL=2
 I $G(LVL)="SISPTM",'$G(@$$^W4PRM@("SISPTM")) Q 1
 I $G(LVL)="C",'$G(@$$^W4PRM@("PSWCA")) Q 1
 I $G(LVL)="ZERO",$$NOPSWZERO^W4PRM Q 1
 I $G(LVL)="ZERO" S LVL=$$PSWZERO
 I $G(LVL)="SOADZERO",$$NOPSWSD0^W4PRM Q 1
 I $G(LVL)="" S LVL=2
 ;
 I $G(LVL),LVL<4,$G(@$$^W4PRM@("PSW"_LVL))="" Q 1
 I $G(LVL),$G(@$$^W4PRM@("PSW"_LVL))="-" Q 1
 Q 0
 ;
 ;
HEAD ;
 W "<tr>"
  W "<td align=""center"" dir="""_$$^%W1DIR_""" class=""pswhd"" >"
   N HD S HD=$G(%ARG("HEAD")) I HD["-" S HD=$P(HD,"-")
   W $$^%W1DICT(HD)
  W "</td>"
 W "</tr>",!
 Q
 ;
KB ; 
  I $$HOR D HORKB Q
  ;
  W "<tr >"
   W "<td align=""center"">"
    W "<table border=""0"" width=""100%"" height=""100%"" cellpadding="""_$$PAD_""" "
      W "cellspacing="""_$S($$^W4TABLET=2:16,$$^W4TABLET=1:8,1:4)_""" ",!
    W ">"
     S K=0
     F I=1:1:3 D
     .W "<tr ",!
     . D TRDGSTYLE^W4KB
     .W ">",! 
     .F J=1:1:3 D
     ..S K=K+1
     ..D DIGIT(K)
     .W "</tr>",!
     W "<tr>"
     I '$$PSWDRG^W4PRM S SPAN=2 D DIGIT(0)
     I $$PSWDRG^W4PRM D DIGIT(0),DIGIT(" ")
     W "<td class=""digit"" style=""color:red;font-size:"_$$^W3FSZ($$FSZ)_""" "
     W " onMouseOver=""this.style.cursor='pointer'"""
     W " onMouseDown=""this.style.backgroundColor='gray'"""
     W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';DelDigit()"""
     W ">Del</td>",!
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  Q
  ;
PAD(STAM) ;
 I $$^W4TABLET=1 Q 16
 I $$^W4TABLET=2 Q 32
 I $$1024^W4WDSCR Q 4
 Q 6
 ;
PSWZERO(STAM) ; 
 I $G(@$$^W4PRM@("DRGZERO")) Q ^("DRGZERO")
 I $G(@$$^W4PRM@("PSWZERO3")) Q 3
 Q 2 
 ;
HORKB ; 
 W "<tr><td colspan=""3"">"
 D ^W4NUMKB("pswid",12)
 W "</td></tr>",!
 Q 
 ;
BACK ;
  W "<td align=""center"">"
  W "<input type=""button"" class=""pswsbm"" style=""color:red"" value="""_$$^%W1DICT("BACK")_""" "_$$^W4TOUCH_"=""CncPsw()"" >"
  W "</td>"
 Q
 ;
HOR(STAM) ; 
 Q $G(%ARG("HOR")) 
 ;
BIO(STAM) ;
 N OV S OV=$$GET^W4BIO
 I OV'?1N.N Q OV 
 Q +OV_" "_$P($G(@$$^W4GL("W4PSWDRG")@(OV)),"\",2)
 ;
USBIO(STAM) ; 
 I $$USBIO^W4PRM&$$PSWDRG^W4PRM,$G(%ARG("LVL"))'="PSWREMOTE" Q 1 
 Q 0 
 ;
FSZ(STAM) ; 
 I $$1024^W4WDSCR Q 18
 Q 24 
 ;
 ;
LVL2NUM(PRMHD,PR) ;
 I '$D(PRMHD) Q 2
 D
 .I PRMHD="ZERO" S PRMHD=$$PSWZERO Q
 .I PRMHD="B",$G(%ARG("PRMDEL"))?1N,$G(%ARG("PRMDEL"))<2,$G(@$$^W4PRM@("PSWDEL3"))!($G(@$$^W4PRM@("BITLVL"))=3) S PRMHD=3 Q
 .I PRMHD="PSWDELPY",$G(@$$^W4PRM@("PSWDEL3"))!($G(@$$^W4PRM@("BITLVL"))=3) S PRMHD=3 Q
 .I PRMHD="PSWLKH" S PRMHD=2 Q
 .I PRMHD="COUP" S PRMHD=2 Q
 .I PRMHD="ACKCREDIT" S PRMHD=2 Q
 .I PRMHD="CHNISCR" S PRMHD=$G(@$$^W4PRM@("CHNISCR")) Q
 .I $G(PR) S PRMHD=$$LV2NUM^W4SSM(PRMHD)
 ;
 Q PRMHD
 ;
 ; 
TRSP ; 
 W "<tr><td>"_$S($$^W4TABLET=1:"",1:"&nbsp;")_"</td></tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHKSPK
W4CHKSPK ; [ 19.07.20 07:35 ] [ 23.04.20 12:30 ] [ 20.04.20 12:37 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 D DIVBUT(1)
 ;
 S DR=1
 ;
 D VRM
 D FRM
 D PC
 W "<br><br>",!
 ;
 ;;D DIVBUT(2)
 K @VRM
 Q
 ;
ASK ;
 W "<div id=""divask"" align=""center"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""98%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td width=""12%"">"
    W "&nbsp;"
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("MEDAT","","<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("ADDAT","","<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,80")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
FRM ;
 K @VRM
 S NOM="" F  S NOM=$O(@$$^W4GL("W4TSHL")@(NOM)) Q:NOM=""  D FRMTSH(NOM)
 Q
 ;
FRMTSH(NOM) ;
 N (JB,%ARG,NOM,MEDT,ADDT)
 D VRM
 ;
 S SPK=$$SPK^W4PY(NOM) Q:'SPK
 S DATPY=$$PAYMDAT^W4PY(NOM)
 ;
 S N="" F  S N=$O(@$$^W4GL("W4TSHL")@(NOM,"C",N)) Q:N=""  I N?."-"1N.N D
 .S ST=$G(^(N))
 .S DAT=$$DATPR^W4PY(NOM,N)
 .S DT=$$^%L1DC(DAT,3)
 .I DT<MEDT!(DT>ADDT) Q
 .S SUM=$$NETTO^W4PY(NOM,N)
 .I $$MZ^W4PY(NOM) S @VRM@(DT,SPK,NOM,1,"MZ")=SUM
 .S SUGT=$$SUGT^W4PY(NOM)+1 ;;Q:SUGT=1
 .S CHK=$$CHECK^W4PY(NOM,N) S:CHK="" CHK=0
 .S PAD=$$PAD^W4PY(NOM,N) S:CHK="" CHK=0
 .S PADDAT=$$PADDAT^W4PY(NOM,N) S:CHK="" CHK=0
 .I $G(%ARG("MESHUM")),SUM<%ARG("MESHUM") Q
 .I $G(%ARG("ADSHUM")),SUM>%ARG("ADSHUM") Q
 .S @VRM@(DT,SPK,NOM,SUGT,CHK)=SUM_"\"_DATPY_"\"_PAD_"\"_PADDAT
 Q
 ;
SUM(A)
 Q $P(A,"\")
 ;
DT(A)
 Q $$^%L1DC($P(A,"\",7),3)
 ;
CHK(A)
 Q $P(A,"\",6)
 ;
 ;
PC ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=37,SHLN=3,SSHLN=0,TOT=0,TOTPD=0,ITRA=0
 D KOT
 ;
 S SSUM=0
 ;
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
 .S FIRST=1
 .W "</tr>",!
 .S ORG="" F  S ORG=$O(@VRM@(DT,ORG)) Q:ORG=""  D
 ..S NOM="" F  S NOM=$O(@VRM@(DT,ORG,NOM)) Q:NOM=""  D
 ...S SUGT="" F  S SUGT=$O(@VRM@(DT,ORG,NOM,SUGT)) Q:SUGT=""  D
 ....S CHK="" F  S CHK=$O(@VRM@(DT,ORG,NOM,SUGT,CHK)) Q:CHK=""  D
 .....S ST=$G(^(CHK))
 .....S SUM=+ST
 .....S DATPY=$P(ST,"\",2)
 .....S PAD=$J($P(ST,"\",3),DR,DR)
 .....I PAD,$$CHECKS=2 Q
 .....I 'PAD,$$CHECKS=1 Q
 .....I FIRST D KOTST S FIRST=0
 .....S PADDAT=$P(ST,"\",4)
 .....S SHLN=SHLN+1
 .....I SHLN>RSIZE,$$PRINT D PAGEBREAK
 .....W "<tr "
 ..... W " style=""color:darkred"" "
 .....W ">"
 .....
 .....W " <td>&nbsp;"_ORG_" "_$$H2U^%L1FRM($$NAME^W4SPK(ORG))_"&nbsp;</td>"
 .....
 .....W " <td>&nbsp;"_$$^W3SHOWTS(SUGT,1)_"&nbsp;</td>"
 .....
 .....W " <td align=""center"" style=""cursor:pointer"
 ..... I SHLN=$$GET^%W1PRM("CASHCUR") W ";border:solid 2px brown"
 .....W """ "
 .....W " onClick=""OnClickTr('"_SHLN_"','"_ORG_"','"_NOM_"')"" "
 .....W ">&nbsp;"_NOM_"&nbsp;</td>"
 .....
 .....W " <td align=""center"" >"_DATPY_"</td>"
 .....
 .....W " <td>&nbsp;"_CHK_"&nbsp;</td>"
 .....
 .....W " <td align=""center"" >"
 ..... D
 ..... .I $$PRINT W $J(SUM,DR,DR) Q
 ..... .W " <input type=""text"" size=""9"" id=""sum"_NOM_"_"_CHK_""" readonly=""readonly"" "
 ..... . W " value="""_$J(SUM,DR,DR)_""" "
 ..... .W " />"
 .....W "</td>"
 .....
 .....S TOT=TOT+SUM,TOTPD=TOTPD+PAD
 .....
 .....I '$$PRINT!$$NOVWPAD D
 ......W " <td align=""center"" >"
 ...... D
 ...... .W " <input type=""checkbox"" id=""padsgn"_NOM_"_"_CHK_""" "
 ...... . W $S(PAD:" checked=""checked"" ",1:"")
 ...... . W " onClick=""ClickPad('"_NOM_"','"_CHK_"')"" "
 ...... .W " />"
 ......W "</td>"
 .....I $$PRINT,$$NOVWPAD Q
 .....
 .....W " <td align=""center"" >"
 ..... D
 ..... .I $$PRINT W $J(PAD,DR,DR) Q
 ..... .W " <input type=""text"" size=""7"" id=""pad"_NOM_"_"_CHK_""" readonly=""readonly"" "
 ..... . W " value="""_$J(PAD,DR,DR)_""" "
 ..... .W " />"
 .....W "</td>"
 .....
 .....W "<td align=""center"" dir=""LTR"" >"
 ..... D
 ..... .I $$PRINT W $S(PAD:PADDAT,1:"") Q
 ..... .S %W1DAT("NODAY")=""
 ..... .;;I $$1024^W4WDSCR S %W1DAT("OLDDAT")=1
 ..... .D ^%W1DAT("paddat"_NOM_"_"_CHK,PADDAT)
 .....W "</td>"
 .....
 .....W " <td align=""center"" >"
 ..... D
 ..... .I $$PRINT W $J(SUM-PAD,DR,DR) Q 
 ..... .W " <input type=""text"" size=""7"" id=""itra"_NOM_"_"_CHK_""" readonly=""readonly"" "
 ..... . W " value="""_$J(SUM-PAD,DR,DR)_""" "
 ..... .W " />"
 .....W "</td>"
 .
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"" >"
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>"_$$^%W1DICT("TOTAL")_"</td>",!
 ;
 D RKV($J(TOT,DR,DR),"darkblue",1)
 I '$$PRINT!$$NOVWPAD D
 .W " <td>&nbsp;</td>",!
 ;
 I $$PRINT,$$NOVWPAD G ETR
 W " <td align=""center"" >"
  D
  .I $$PRINT W $J(TOTPD,DR,DR) Q
  .W " <input type=""text"" size=""7"" id=""totpd"" readonly=""readonly"" "
  . W " value="""_$J(TOTPD,DR,DR)_""" "
  .W " />"
 W "</td>"
 ;
 W " <td>&nbsp;</td>",!
 ;
 W " <td align=""center"" >"
  D
  .I $$PRINT W $J(TOT-TOTPD,DR,DR) Q
  .W " <input type=""text"" size=""7"" id=""itra"" readonly=""readonly"" "
  . W " value="""_$J(TOT-TOTPD,DR,DR)_""" "
  .W " />"
 W "</td>"
ETR ;
 W "</tr>",!
 W "</table>",!
 ;
 I 'SHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')"
 .W "</script>",!
 ;
 W "</div>",!
 ;
 Q
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT
 S SHLN=0
 Q
 ;
KOT ;
 W "<table dir="""_$$^%W1DIR_""" width=""98%"" style=""font-size:"_$$^W3FSZ(12)_";color:black"" >"
 W " <tr>"
 W "  <td width=""15%"">&nbsp;</td>",!
 W "  <td>"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MEDAT_"</td>",!
 W "  <td>"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADDAT_"</td>",!
 W "  <td width=""15%"">&nbsp;</td>",!
 W "  <td>"_$$^%W1DICT("PAGE")_" : <span "_$$HDSTYLE_">"_PG_"</span></td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<br />",!
 ;
 W "<table id=""TblChk"" dir="""_$$^%W1DIR_""" border=""1"" width=""98%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 N WD S WD=$S($$1024:22,1:24)
 W "  <th width="""_WD_"%"">"_$$^%W1DICT("SUPPLNAME")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("PAYMENTKIND")_"</th>"
 W "  <th width=""6%"">"_$$^%W1DICT("PAYMENTNUMBER")_"</th>"
 W "  <th width=""6%"">"_$$^%W1DICT("PAYDATE")_"</th>"
 W "  <th width=""8%"">"_$$^%W1DICT("NCHECK")_"</th>"
 W "  <th width=""8%"">"_$$^%W1DICT("SUM")_"</th>"
 I '$$PRINT!$$NOVWPAD W "  <th width=""6%"">"_$$^%W1DICT("SIGNPAD")_"</th>"
 I '$$PRINT!'$$NOVWPAD D
 .W "  <th width=""8%"">"_$$^%W1DICT("PAD")_"</th>"
 .S WD=$S($$1024:16,1:12)
 .W "  <th width="""_WD_"%"">"_$$^%W1DICT("PADDAT")_"</th>"
 .W "  <th width=""8%"">"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 I RKV S RKV=$J(RKV,DR,DR)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT(IND) ;
 I $$PRINT Q
 W "<div id=""divbut"_IND_""" >"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""98%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>" 
    W $$^%W1DICT("FROMSUM")_" "
    W "<input type=""text"" id=""meshum"" size=""6"" value="""_$G(%ARG("MESHUM"))_""" />"
   W "</td>"
   W "<td>" 
    W $$^%W1DICT("UNTILSUM")_" "
    W "<input type=""text"" id=""adshum"" size=""6"" value="""_$G(%ARG("ADSHUM"))_""" />"
   W "</td>"
   W "<td>" 
    W $$^%W1DICT("ALLCHECKS")_" "
    W "<input type=""radio"" name=""checks"" value=""0"" onClick=""ClickPadKind('0')"" "_$S('$$CHECKS:"checked=""checked""",1:"")_" />"
   W "</td>"
   W "<td>" 
    W $$^%W1DICT("PADONLY")_" "
    W "<input type=""radio"" name=""checks"" value=""1"" onClick=""ClickPadKind('1')"" "_$S($$CHECKS=1:"checked=""checked""",1:"")_" />"
   W "</td>"
   W "<td>" 
    W $$^%W1DICT("NOPADONLY")_" "
    W "<input type=""radio"" name=""checks"" value=""2"" onClick=""ClickPadKind('2')"" "_$S($$CHECKS=2:"checked=""checked""",1:"")_" />"
   W "</td>"
   W "<td>&nbsp;</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("Show",$$^%W1DICT("SHOW"),"Show()","color:darkgreen",",,,80")
   W "</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Sbm()","color:green",",,,80")
   W "</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:blue",",,,80")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ; 
 N (JB,%ARG,PRM) 
 S NOM=$P(PRM,";")
 S CHK=$P(PRM,";",2)
 S PAD=$P(PRM,";",3)
 S PADDAT=$P(PRM,";",4)
 S TS=$$^W4GL("W4TSHL")
 S N="" F  S N=$O(@TS@(NOM,"C",N)) Q:N=""  D
 .S A=$G(^(N))
 .I $P(A,"\",4)=CHK D
 ..S $P(@TS@(NOM,"C",N),"\",6)=PAD
 ..S $P(@TS@(NOM,"C",N),"\",7)=PADDAT
 Q
 ;
PRINT(STAM) ;
 Q $G(%ARG("PRINT"))
 ;
CHECKS(STAM) ;
 Q $G(%ARG("CHECKS"))
 ;
KOTST ; 
 I SHLN+4>RSIZE,$$PRINT D PAGEBREAK
 S SHLN=SHLN+3
 W "<tr>",!
 W " <td colspan=""10"" style=""text-align:center;color:darkgreen;font-weight:bold"" >",!
 W "<br>"_$$^%W1DICT("DATEPRAON")_" "_$ZD(DT,"DD.MM.YY")_"<br><br>",!
 W " </td>",!
 W "</tr>",!
 Q
 ;
1024(STAM) ; 
 I $$1024^W4WDSCR!$$^W4TABLET Q 1 
 Q 0 
 ;
NOVWPAD(STAM) ; 
 Q $G(@$$^W4PRM@("NOVWPAD")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHNCNF
W4CHNCNF ; [ 29.03.17 05:52 ] [ 15.03.15 07:36 ] [ 09.03.15 13:26 ] [
 N (JB,%ARG,%REM)
 D W4PRMMDP
 D DIV^W4TAG
 ;
 W "<span style=""font-size:"_$$^W3FSZ(18)_""" >",!
  W $$^%W1DICT("CHOICECONFIGURATION")
 W "</span>",!
 W "<br><br>",!
 ;
 D TBL^W4TAG(2,20,"TblConf","","font-size:"_$$^W3FSZ(18),"border=""1"" ")
 ;
 S CONF="" F  S CONF=$O(@W4PRMMDP@(CONF)) Q:CONF=""  D
  .W "<tr style=""height:80px"">"
  . S BGCOLOR="lightgrey",COLOR="black"
  . I CONF=$G(@W4PRMMDP) S BGCOLOR="red",COLOR="white"
  . W "<td id=""tdconf"_CONF_""" "
  .  W " style=""background-color:"_BGCOLOR_";color:"_COLOR_""" "
  .  W " "_$$^W4TOUCH_"=""ClickConf('"_CONF_"',this)"">"
  .   W $$^%W1DICT("CONF",CONF)
  . W "</td>"
  .W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 ;
 D BTN^W4DIVBUT("")
 Q
 ;
SBM(CONF) ;
 D W4PRMMDP
 N N,VL S N="" F  S N=$O(@W4PRMMDP@(CONF,N)) Q:N=""  D
 .S VL=$G(^(N))
 .S $P(@$$^W4PRM@("MDP",N),"\",3)=VL
 ;
 S @W4PRMMDP=CONF
 Q
 ;
W4PRMMDP ;
 S W4PRMMDP=$$^W4GL("W4PRMMDP")
 Q
 

W4CHNITR
W4CHNITR(CD) ; [ 25.04.24 13:56 ] [ 17.03.24 13:28 ] [ 08.08.23 19:57 ] 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W4CSS1_""">",!
  W "<p></p>",!
  W "<p style=""font-size:"_$$^W3FSZ(16)_""">"
   W CD_" "_$$H2U^%L1FRM($$MLNAME^W4MLPRT(CD))
  W "</p>",!
  W "<p></p>",!
  W "<p style=""font-size:"_$$^W3FSZ(14)_";color:darkblue"">"
   W $$^%W1DICT("ADD")_$$NBSP^%L1FRM(3)
  W "<select id=""plus"" >"
   F I=0:1:200 D
   .W "<option value="""_I_""" >"
   . W I
   .W "</option>",!
  W "</select>",! 
  ;
  W "<br>",!
  W "<br>",!
  ;
  W "<p style=""font-size:"_$$^W3FSZ(14)_";color:darkblue"">"
  W $$^%W1DICT("REDUCE")_$$NBSP^%L1FRM(3)
  W "<select id=""minus"" >"
   F I=-200:1:0 D
   .W "<option value="""_I_""" "_$S(I=0:"selected=""selected""",1:"")_">"
   . W I
   .W "</option>",!
  W "</select>",! 
  W "</p>",!
  W "<p>&nbsp;</p>" 
  ;
  W "<button style=""color:green;font-size:"_$$^W3FSZ(14)_""" onClick=""Submit()"">"
    W $$^%W1DICT("SUBMIT")
  W "</button>",! 
  ;
  W $$NBSP^%L1FRM(6) 
  ;
  W "<button style=""color:red;font-size:"_$$^W3FSZ(14)_""" onClick=""Back()"" >"
    W $$^%W1DICT("BACK")
  W "</button>",! 
 W "</div>",!
 Q
 ;
 ;
SBM(PRM) ;
 N (JB,%ARG,PRM) 
 S CD=$P(PRM,";") I 'CD Q "NOCD"
 S NM=$$MLNAME^W4MLPRT(CD)
 S MH=$$MHL^W4MLPRT(CD)
 S QN=$P(PRM,";",2) I 'QN Q "NOQN"
 ;
 S GL=$$^W4GL("W4IDK")
 S LAST=$O(@GL@(999999),-1)
 S OK=0,DZ=$$^W4DZ
 ;
 F I=LAST:-1:LAST-1000 I I>0 D  Q:OK
 .S A=$G(@GL@(I))
 .S DAT=$P(A,"\",4),DT=$$^%L1DC(DAT,3)
 .I DT=DZ,$P(A,"\")="",$P(A,"\",3)="" S OK=I
 ;
 I OK D
 .S NOMDOC=OK 
 .S HD=$G(@GL@(NOMDOC))
 .S IND=$$FNDPAR(NOMDOC,CD)
 .I 'IND S IND=$O(@GL@(NOMDOC,999999),-1)+1
 .S QNO=$P($G(@GL@(NOMDOC,IND)),"\",5)
 .;;S QNN=QNO+QN
 .S QNC=$$QNC^W4TKDOC1(CD,DT) ;
 .S QNN=QNC+QN
 .S @GL@(NOMDOC,IND)=CD_"\"_NM_"\"_MH_"\"_QNC_"\"_QNN 
 .S QNM=QNN-QNC
 ;
 I 'OK D
 .S DT=DZ
 .S NOMDOC=$O(@GL@(9999999),-1)+1
 .S IND=$O(@GL@(NOMDOC,""),-1)+1
 .S @GL@(NOMDOC)="\\\"_$ZD($H,"DD.MM.YY")_"\\\\"_$ZD($H,"DD.MM.YY 24:60")_"\ITEMCARD"
 .S QNC=$$QNC^W4TKDOC1(CD,DT)
 .;;S @GL@(NOMDOC,IND)=CD_"\"_NM_"\"_MH_"\"_QNC_"\"_QN ; --25/04.24
 .S QNN=QNC+QN
 .S @GL@(NOMDOC,IND)=CD_"\"_NM_"\"_MH_"\"_QNC_"\"_QNN
 .S QNM=QNN-QNC
 ;
 ;;D ^W4SETMLY(DT,"ITK","",NOMDOC)
 ;
 D SETMLY^W4SETMLY(4,DT,CD,"I",0,"ITK",NOMDOC,QNM)
 Q 1
 ;
FNDPAR(NOMDOC,CD)
 N (JB,GL,NOMDOC,CD)
 N OK S OK=0
 N N S N="" F  S N=$O(@GL@(NOMDOC,N)) Q:N=""  D  Q:OK
 .S A=$G(^(N))
 .I $P(A,"\")=CD S OK=N
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHNMKB
W4CHNMKB ; [ 04.08.25 12:22 ] [ 29.04.25 13:55 ] [ 27.03.25 15:36 ] 
 N (JB,%ARG)
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""font-size:"_$$^W3FSZ(21)_""">",!
 W "<span style=""font-size:"_$$^W3FSZ(21)_";COLOR:BROWN"">"_$$^%W1DICT("CHOICEMKBL")_"</span>",!
 W "<br><br>"
 W "<table>"
 W "<tr>"
  W "<td>"
  W " <select id=""mkbl"" style=""font-size:"_$$^W3FSZ(18)_""">",!
  W " <option value=""0"" "
  W " >",!
   W $$^%W1DICT("CHOICEMKBL")
  W " </option>",!
  ;
  S VRM=$$^W4MAIN("VRM") K @VRM
  N N S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  I N,N?5N D
  .I '$$CHKRCVR^W4HZGMLZ(N) Q
  .N IND,NM S NM=$$^W4NAME(N) 
  .S IND=$$INVH^%L1FRM(NM)
  .S IND=$$ENG^%L1FRM(IND,10)_"_"_N
  .S @VRM@(IND)=$$^W4NAME(N)
  ;
  S HZM=+$$GETP^%W1PRM("HZM")
  N N S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
  .N A S A=$G(^(N))
  .W " <option value="""_N_""" "
  .I N=$$MKBL^W4HZMST(HZM) W " selected=""selected"" "
  .W " >",!
  . W $$H2U^%L1FRM(A)
  .W " </option>",!
  W " </select>",!
  W "</td>"
 W "</tr>",!
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 W "<tr>"
  W "<td>"
   W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" "
   W " onClick=""Submit()"" style=""color:green;width:100%;font-size:"_$$^W3FSZ(18)_""" >"
  W "</td>"
 W "</tr>"
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 W "<tr>"
  W "<td>"
   W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
   W " onClick=""Back()"" style=""color:red;width:100%;font-size:"_$$^W3FSZ(18)_""" >"
  W "</td>"
 W "</tr>"
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
SET(MKBL) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'HZM
 N OLD S OLD=$$MKBL^W4HZMST(HZM)
 D PUT^W4HZMST(HZM,"MKBL",MKBL) 
 S @$$^W4GL("W4MKBPR")@(+$H,$P($H,",",2))=HZM_"\"_OLD_"\"_MKBL_"\"_$$^W4MYDVN
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHNORD
W4CHNORD(HZ) ; [ 18.12.25 15:08 ] [ 
 N (JB,%ARG,HZ)
 S OK=0
 S TMPORDO=$$^W4MAIN("TMPORDO") K @TMPORDO
 S TMPORD=$$^W4TMPORD
 ;
 S OKORD=$$^W4GETHZ(HZ,TMPORDO)
 I 'OKORD G END
 ;
 S HDO=$G(@TMPORDO) 
 S HD=$G(@TMPORD)
 F I=1:1:7 I $P(HDO,"~",I)'=$P(HD,"~",I) S OK=1 Q
 I OK G END
 F I=8:1:11 I +$P(HDO,"~",I)'=+$P(HD,"~",I) S OK=1 Q
 I OK G END 
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:OK
 .S A=$G(^(N))
 .S B=$G(@TMPORDO@(N))
 .F I=1:1:3,7 I $P(A,"~",I)'=$P(B,"~",I) S OK=1 Q
 .F I=4,5 I +$P(A,"~",I)'=+$P(B,"~",I) S OK=1 Q
 ;
 I OK G END
 ;
 S N="" F  S N=$O(@TMPORDO@(N)) Q:N=""  I N D  Q:OK
 .S A=$G(^(N))
 .S B=$G(@TMPORD@(N))
 .F I=1:1:3,7 I $P(A,"~",I)'=$P(B,"~",I) S OK=1 Q
 .F I=4,5 I +$P(A,"~",I)'=+$P(B,"~",I) S OK=1 Q
 ;
END K @TMPORDO
 Q OK
 
 
 

W4CHNPRC
W4CHNPRC ; [ 23.11.24 19:55 ] [ 22.11.24 04:04 ] [ 21.11.24 17:25 ] 
 N (JB,%ARG,PRM)
 W "<br>",!
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  ; 
  W "<table width=""80%"">",!
   W "<tr>",!
    W "<td>",! 
     D SELGR
    W "</td>",!
    ;
    W "<td>",!
     D SELCHN
    W "</td>",!
    ;
    W "<td>",!
     D SELIGUL
    W "</td>",!
    ;
    W "<td>",!
     D SBMBCK
    W "</td>",!
 ;
    W "</tr>",!
   W "</table>",! 
  W "</div>",!
 Q
 ;
 ;
SELGR ;
  W $$^%W1DICT("CHOICEGRIT") W $$NBSP^%L1FRM(2)
  W "<select id=""kvz"">",!
  W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
   S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
   .W "<option value="""_N_""">"_$$H2U^%L1FRM($G(^(N)))_"</option>",!
  W "</select>",!
 Q
 ;
SELCHN ;
  W $$^%W1DICT("CHOICEPRCCHNG") W $$NBSP^%L1FRM(2)
  W "<select id=""chn"">",!
   F I=-10:1:99 D
   .W "<option value="""_I_""" "
   .I I=0 W "selected=""selected"" "
   .N SGN S SGN=$S(I>0:"+",I<0:"-",1:"")
  .S I1=I I I<0 S I1=-I
   .W ">"_I1_"%"_SGN_"</option>",!   
  W "</select>",!
  Q
  ;
SELIGUL ;
 W $$^%W1DICT("CHOICEIGUL") W $$NBSP^%L1FRM(2)
 W "<select id=""igul"">",!
  F I=0,10,1 D
  .S MTB=$S(I=1:$$^%W1DICT("NIS"),1:$$^%W1DICT("zexeb`"))
  .W "<option value="""_I_""">"_I_" "_MTB_"</option>",!
 W "</select>",!
 Q
 ;
SBMBCK ;
 D ^W4SBMBCK
 Q
 ;
CHNPRC(PRM) ;
 N (JB,PRM)
 S KV=$P(PRM,";")
 S CHN=$P(PRM,";",2)
 S IGUL=$P(PRM,";",3)
 S GLPAR=$$^W4GL("PAR")
 S GLPAR00=$$^W4GL("PAR00") K @GLPAR00
 ;
 M @GLPAR00=@GLPAR
 ;
 S N="" F  S N=$O(@GLPAR@(N)) Q:N=""  D
 .S SUG=$$SUG^W4P(N)
 .I KV,+KV'=+SUG Q
 .S MH=$J($$MH^W4P(N),2,2)
 .S MH=MH*(100+CHN)*.01
 .I IGUL D
 ..S DR=$P(MH,".",2)
 ..I IGUL=10 S MH=$J($J(MH,1,1),2,2) Q
 ..I IGUL=1 S MH=$J($J(MH,0,0),2,2) Q
 .S $P(@GLPAR@(N),"**",2)=MH
 Q
 
 
 
 
 
 
 
 
 
 

W4CHNTIM
W4CHNTIM(HZMS,OLDDAT,NEWDAT,OLDSHAA,NEWSHAA,WHO,NOSND) ; [ 30.06.26 15:46 ] [ 27.01.26 10:10 ] [ 20.01.26 07:34 ] 
 ; --- IF DATE OF ORDER WAS CHANGED
 N (JB,%ARG,HZMS,OLDDAT,NEWDAT,OLDSHAA,NEWSHAA,WHO,NEWHZM,NOSND)
 ;
 I $G(HZMS)<1 Q
 ;
 I $G(WHO)="" S WHO=$$MKBL^W4HZMST(HZMS)
 I $$HZM^W4MSL(HZMS),OLDDAT,NEWDAT'=OLDDAT,$$ITRA^W4HZMST(HZMS)>.4 D
 .N DTO,DTN
 .S DTO=$$^%L1DC(OLDDAT,3)
 .S DTN=$$^%L1DC(NEWDAT,3)
 .D
 ..I $$SHAA^W4HZMST(HZMS)<$$SHAAZ^W4PRM S DTN=DTN-1 Q
 ..I $$^W4DZ=($H-1),DTN=+$H,$ZD($H,"24:60")'<$$SHAAZ^W4PRM S DTN=$$^W4DZ
 .I DTN<$$^W4DZ Q
 .I DTN=DTO Q
 .I $$^W4CLOSE(HZMS) Q
 .D ^W4MVP1H(DTO,DTN,HZMS)
 ;
 ;;S ^AA("W4CHNTIM","OLDDAT",HZMS)=OLDDAT
 ;;S ^AA("W4CHNTIM","NEWDAT",HZMS)=NEWDAT
 ;;I '$D(^AA("W4CHNTIM","OLDSHAA",HZMS)) S ^AA("W4CHNTIM","OLDSHAA",HZMS)=OLDSHAA
 ;;S ^AA("W4CHNTIM","NEWSHAA",HZMS)=NEWSHAA
 ;
 I $$HZM^W4MSL(HZMS),OLDDAT&(NEWDAT'=OLDDAT)!($L(OLDSHAA)&($$MIN(NEWSHAA)'=$$MIN(OLDSHAA))&(OLDSHAA'="00:00")) D
 .I '$D(NEWHZM),'$G(NOSND) D SNDIDK(HZMS)
 .;;I $$^W4CLOSE(HZMS) Q
 .N OKDLY D CLRDLYPRN(HZMS)
 .;;I $$DLYPRN^W4PRM,$G(OKDLY) D ^W4DLYPRN(HZMS,JB)
 .I $$DLYPRN^W4PRM D ^W4DLYPRN(HZMS,JB); -- 30.06.26 - BLI OKDLY
 .D SETPROT(HZMS,OLDDAT,OLDSHAA,NEWDAT,NEWSHAA,$G(WHO))
 Q
 ;
 ;
MIN(SHAA) ; 
 Q SHAA*60+$P(SHAA,":",2) 
 ;
CLRDLYPRN(HZMS) ;
 D CLRDLYPRN^W4PUTHZ(HZMS)
 Q
 ;
SETPROT(HZ,DATOLD,TIMOLD,DATNEW,TIMNEW,WHO)
 S @$$^W4GL("W4TIMPR")@(+$H,$P($H,",",2))=HZ_"\"_DATOLD_"\"_TIMOLD_"\"_DATNEW_"\"_TIMNEW_"\"_WHO 
 Q
 ;
SNDIDK(HZMS) ; 
 I $$TEAV^W4PRM,$$HZM^W4MSL(HZMS),'$$ITRA^W4HZMST(HZMS),'$$I^W4DEL(HZMS) D
 .S RES=$$SND2TV(HZMS)
 ;
 I $$DA^W4PRM,$$HZM^W4MSL(HZMS),'$$ITRA^W4HZMST(HZMS),'$$I^W4DEL(HZMS) D
 .S ^AA("W4PUTHZ1-DA",$P($H,",",2))=""
 .D DELTIME^W4DADEL(HZMS)
 .I $$TAKEAWAY^W4HZMST(HZMS) Q
 .D SETDA^W3SETHD(HZMS)
 Q
 ;
 ; 
SND2TV(HZMS) ; 
 N (JB,%ARG,HZMS)
 D DELTIME^W4TVDEL(HZMS)
 I $$TAKEAWAY^W4HZMST(HZMS) Q 0
 D SETTV^W3SETHD(HZMS)
 I $G(RES)=0 S @$$^W4ORD@(HZMS,"TVSNDAGAIN")=$ZD($H,"DD.MM.YY 24:60")
 Q RES
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CHNWTR
W4CHNWTR(STAM) ; [ 27.10.12 15:12 ] [ 17.08.12 09:02 ] [ 19.02.12 15:42 ]
 Q +$$GETP^%W1PRM("CHNWTR")
 ;
KILL D KILL^%W1PRM("CHNWTR")
 Q

W4CHPRN
W4CHPRN ; [ 18.12.25 17:05 ] [ 06.09.22 19:41 ] [ 10.08.22 16:01 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 I '$$DELCHKPRN D
 .W "<span class=""hdchoice"">"_$$^%W1DICT("PRINTWHERE")_"</span>",!
 ;
 I $$DELCHKPRN D
 .W "<span class=""hdchoice"">"_$$^%W1DICT("NOCHECKPRINTERS")_"</span>",!
 ;
 W "<br>"
 W " <table>"
 N PAD S PAD=6 I $$^W4TABLET=2 S PAD=8
 W "<td><table class=""menu"" id=""tbmenu"" cellpadding="""_$$^W4KF(PAD)_"px"" >",!
  ;
  I '$G(%ARG("HSB")) D
  . S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
  .. S A=$G(^(N))
  .. D SHOWPRN(N,A)
  ;
  I $G(%ARG("HSB")) D
  . N TMP S TMP=$$^W4MAIN("TMPPRN") K @TMP
  . N N S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
  .. N A S A=$G(^(N)) I $G(^(N))?.P Q
  .. I '$$LP^W4PLUK(N) Q
  .. I A'["dcnr" Q
  .. S @TMP@(N)=$G(@$$^W4PLUK@(N))
  .
  . S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
  .. S A="\\\"_$G(^(N))
  .. D SHOWPRN(N,A)
  W " </table>"
  W "</td>",!
  ;
  W "<td width=""35%"" >"
   D SBMBCK
  W "</td>",!
 W "</tr></table>",!
 W "<br>"
 W "</div>",!
 ;
 D KILL^%W1PRM("SIMUL")
 Q
 ;
 ;
NAMEPRN(A) Q $P(A,"\",4)
 ;
 ;
SBMBCK ;
 W " <table dir="""_$$^%W1DIR_""" >",!
 W "  <tr>"
 W "   <td>"
        W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" "
        I $$^W4TABLET=2 W " padding=""7px"" "
        W $$^W4TOUCH_"=""Submit('1')"" style=""color:green"" "
 W "   </td>"
 W " </tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 W " <tr>",!
 W "   <td>"
        W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
        I $$^W4TABLET=2 W " padding=""7px"" "
        W $$^W4TOUCH_"=""Back()"" style=""color:red"" "
 W "   </td>"
 W "  </tr>",!
 W " </table>",!
 Q
 ;
 ;
DELCHK(PRM) ;
 N PRN K @$$^W4GL("W4NOCHKP")@($$^W4DZ)
 N I F I=1:1:$L(PRM,"&") D
 .S PRN=$P(PRM,"&",I) Q:PRN=""
 .S @$$^W4GL("W4NOCHKP")@($$^W4DZ,PRN)=""
 Q
 ;
DELCHKPRN(STAM) ;
 Q +$G(%ARG("DELCHKPRN"))
 ;
NOCHKPRN(N) ;
 I $$DELCHKPRN,$D(@$$^W4GL("W4NOCHKP")@($$^W4DZ,N)) Q 1
 Q 0
 ;
CHECKED(N) ; 
 I $$NOCHKPRN(N) Q 1
 I $G(%ARG("FIRE")),$$FIRE^W4MDP(N) Q 1
 I $G(%ARG("HSB")),N=$$^W4MYDVN Q 1
 Q 0 
 ;
 ;
SHOWPRN(N,A) ; 
 I $$NAMEPRN(A)["wacn" Q
 W "  <tr id=""tr"_N_""" >"
 W "   <td "_$$^%W1ALIGN_" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" >"
       W "<label for=""chk"_N_""" id=""lbnm"_N_""" " 
       W " style=""cursor:pointer"
        I $$^W4TABLET=2 W ";width:80px;height:80px"
       W """ "
       W ">"
        W $$H2U^%L1FRM($$NAMEPRN(A))
       W "</label>",!
 W "   </td>",!
 
 W "   <td align=""center"">"
 W "    <input type=""checkbox"" name=""chk"" id=""chk"_N_""" "
 I $$CHECKED(N) D
 . W " checked=""checked"" "
 
 ;;W "     onClick=""ClickSmallChk('chk"_N_"','lb"_N_"','lbnm"_N_"','chk',false)"" >"
 W "     onClick=""ClickPrn('chk"_N_"','lb"_N_"')"" >"
 
 W "    <label for=""chk"_N_""" id=""lb"_N_""" name=""lb"" "
 ;;W "     class=""bgbtn"" "
 W "     style=""cursor:pointer"
  I $$^W4TABLET=2 W ";width:80px;height:80px"
 W """> "
  D
   N IMGV S IMGV="w4bonrnd.png"
   I $$CHECKED(N) S IMGV="w4bonrndfull.png"
   W "<img src="""_IMGV_""" >"
  .;;I $$CHECKED(N) W $$SHOWV^W3CSM Q
  .;;W $$SHOWO^W3CSM
 W "    </label>",!
 W "   </td>"
 W "  </tr>",!
Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CIBCMP
W4CIBCMP ; [ 07.04.13 12:53 ] [
 N (JB,%ARG,%REM)
 W "<div align=""center"">",!
 W "<span style=""font-size:14pt"">"_$$^%W1DICT("CIBCOMPANYLIST")_"</span>",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"" width=""50%"">",!
 S N="" F  S N=$O(@$$^WCCMP@(N)) Q:N=""  D
 .S A=$G(^(N)) Q:N=""
 .W "<tr>"
 . W "<td>"_N_"</td>"
 . W "<td>"_$$H2U^%L1FRM(A)_"</td>"
 .W "</tr>"
 W "</table>",!
 W "</div>",!
 Q

W4CIBEMV
W4CIBEMV ; [ 05.02.26 12:41 ] [ 04.07.24 16:37 ] [ 03.07.24 11:52 ] 
 N (JB,UIDBIT,OUT,RES)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D KILL^%W1PRM("CIBEMVER")
 ;
 S VT=7
 D PUT^W4TMPPAY(VT,"CARDNUMBER","")
 ;
 S GLCIBEMV="^[$$^W3MAIN]W4CIBEMV(DZ)"
 S DZ=$$^W4DZ
 N SH S SH=$O(@GLCIBEMV@(99999999),-1)+1
 ;
 S (ER,RES,RESMSG,MSG)=""
 ;
 S DV=$$^W4MYDVN
 ;
 I $$EMV^W4PRM=4 D  G END
 .N DZ,SEC,VUID,PRM
 .S DZ=$$^W4DZ
 .S SEC=$P($H,",",2) 
 .S HZM=+$$GETP^%W1PRM("HZM") I 'HZM S RES="NOORD" Q
 .S VUID=DZ_"_"_DV_"_"_SEC_"_"_HZM
 .S PRM=VUID
 .
 .N IND S IND=$O(@$$^W4ORD@(HZM,"EMVCIB",9999),-1)+1
 .S @$$^W4ORD@(HZM,"EMVCIB",IND,"VUID")=VUID
 .S @$$^W4ORD@(HZM,"EMVCIB",IND,"DV")=$$^W4MYDVN
 .K OUT
 .D ^W4EMVN("EMVCIB",PRM,HZM)
 .;;N TMPRSP S TMPRSP=$$TMPRSP^W4EMVN ; ***
 .;;K @TMPRSP M @TMPRSP=^W4EMVNPR(67024,5,"RESP",145,67091) ; ***
 .
 .S OUT("ER")=$$GET("result_code")
 .S ER=OUT("ER")
 .N SUCCESS S SUCCESS=$$GET("success")
 .I SUCCESS="eurt" S SUCCESS="true"
 .I 'ER,$$FUNC^%UCASE(SUCCESS)'="TRUE" S ER=998,RES=998
 .I $$FUNC^%UCASE(SUCCESS)="TRUE" S ER=0,RES=0
 .
 .S RESMSG=$$GET("result_msg")
 . 
 .I RESMSG=""!(RESMSG="-") S RESMSG=$$GET("message")
 .I RESMSG=""!(RESMSG="-") S RESMSG=$$GET("ERROR")
 .I RESMSG=""!(RESMSG="-") S RESMSG="ERROR "_ER
 .
 .S RES=ER
 .S OUT("ER")=ER
 .S OUT("RES")=RES
 .S OUT("SUCCESS")=SUCCESS
 .S OUT("RESMSG")=RESMSG
 .S (CARD,OUT("CARD"))=$$GET("track2")
 .;
 .M @$$^W4ORD@(HZM,"EMVCIB",IND,"OUT")=OUT
 .
 .M ^AA("W4CIBEMV")=OUT
 ;
 ;
 ;
 S ID=DV_JB_$R(1000)
 ;
 S HD="{"
 S HD=HD_$$RKV("jsonrpc","2.0",1)
 S HD=HD_","_$$RKV("method","displaySwipeCard",1)
 S HD=HD_","_$$RKV("id",ID,1)
 S HD=HD_",""params"":["
 S HD=HD_"""ashrait"",{"
 ;
 S DV=$$^W4MYDVN
 S HZM=$$GETP^%W1PRM("HZM")
 S MSG="DONE"
 I 'HZM S ER=-1,MSG="NOORD" G END
 ;
 S FLIND=DV_"_"_JB_"_"_HZM
 ;
 S MSG1="Hello"
 S MSG2="Swipe SODEXO Card"
 S MSG3=""
 ;
 S ST=$$RKV("string1",MSG1) 
 S ST=ST_","_$$RKV("string2",MSG2,1)
 S ST=ST_","_$$RKV("string3",MSG3,1)
 S ST=ST_","_$$RKV("OpenMSR","true")
 S ST=ST_","_$$RKV("timeout",30)
 ;
 S FOOT="}]}"
 ;
 ;
 S STR=HD_ST_FOOT
 ;
 S FL=$$PATH_"cibemv"_FLIND
 ;
 C FL:(DELETE)
 O FL:(NEWVERSION:REWIND) U FL
  W STR
 C FL
 ;
 S ADR=$$EMVADR^W4POSEMV(DV)
 I ADR="" S ADR=$$EMVADR^W4POSEMV(1)
 I ADR="" S ER=-2,MSG="NOADR" G END
 ;
 I ADR'[":" S ADR=ADR_":8080"
 S URL="http://"_ADR_"/SPICy"
 S FLOU=$$PATH_"cibemvou"_FLIND
 S CMD="curl -s -m 90 -k -H ""Content-Type:application/json"" -d@"_FL_" "_URL_" -o "_FLOU
 S @GLCIBEMV@(SH,"CMD")=CMD
 ZSY CMD
 S ER=$ZSY
 S @GLCIBEMV@(SH,"ZSY")=ER
 ;;ZSY "rm -f "_FL ; --- *** VERNUT !
 I '$$EXIST^%L1ZOS(FLOU) S ER=-3,MSG="NOANSWER" G END
 ;
TV D FL2ARR^W4EMV3(FLOU)
 N A,I S A=""
 M @GLCIBEMV@(SH,"ARR")=ARR
 ;
 F I=1:1 Q:'$D(ARR(I))  S A=A_ARR(I)
 K ARR
 ;
 I $$GET(A,"id")'=ID S ER=-4,MSG="IDWRONG" G END
 ;
 S RES=$$GET(A,"statusCode")
 S RESMSG=$$FUNC^%UCASE($$GET(A,"statusMessage"))
 ;
 S OUT("RES")=RES
 S OUT("RESMSG")=$$U2H($$CLR(RESMSG))
 S OUT("ID")=$$GET(A,"id")
 ;
 S (CARD,OUT("CARD"))=$$GET(A,"track2")
 I 'CARD S ER=-5,MSG="NOCARD" G END 
 ;
 M @GLCIBEMV@(SH,"OUT")=OUT
 ;
END ;
 S @GLCIBEMV@(SH,"ER")=$G(ER)
 S @GLCIBEMV@(SH,"MSG")=$G(MSG)
 ;
 I ER D
 .D PUT^%W1PRM("CIBEMVER",RES)
 .I $G(RES) S ER=RES
 .S MSG=$G(RESMSG)
 .S MSG=$$FUNC^%UCASE(MSG)
 .S RES=ER_"*"_$G(MSG) ; --19/11/23
 ;
 S @GLCIBEMV@(SH,"RES")=$G(RES)
 S @GLCIBEMV@(SH,"HZM")=$G(HZM)
 S @GLCIBEMV@(SH,"CARD")=$G(CARD)
 ; 
 I RES=0,$G(HZM),$G(CARD) D
 .D PUT^W4TMPPAY(VT,"CARDNUMBER",CARD)
 .D PAYCIB^W4PAYKB(HZM)
 .Q:'$$NEWCIB^W4PRM
 .N IND S IND=$O(@$$^W4ORD@(HZM,"CIBN",999),-1) Q:'IND
 .S RES=$G(@$$^W4ORD@(HZM,"CIBN",IND,"ADDORDERRESULT"))
 .S RES=RES_"*"_$$FUNC^%UCASE($G(@$$^W4ORD@(HZM,"CIBN",IND,"ERRORMESSAGE")))
 ;
 D PUT^%W1PRM("CIBEMVER",RES)
 ;
 Q
 ;
 ;
TR(VL,LN) ;
 Q $$TR^W4STRINW(VL,LN)
 ;
RKV(NM,VL,PRTX) ;
 Q $$RKV^W4EMV3($G(NM),$G(VL),$G(PRTX))
 ;
GET(A,NM)
 I $$EMV^W4PRM=4 Q $$GET^W4EMV4(A)
 Q $$GET^W4EMV3($G(A),$G(NM))
 ;
CLR(B) ;
 Q $$CLR^W4EMV3($G(B))
 ;
 ;
U2H(ST)
 S OU=$$CLRQ^W3SORD(ST)
 Q OU
 ;
DIR(STAM) ;
 Q $$EMVDIR^W4PRM
 ;
PATH(STAM) ;
 Q $$PATH^W4EMV3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CIBER
W4CIBER(DAT1,DAT2) ; [ 08.12.23 09:56 ] [ 
 N (JB,DAT1,DAT2)
 ;
 S JB=1
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S GL=$$^W4GL("WCGP")
 S GLER=$$^W4GL("W4CIBER") K @GLER
 ;
 S K=0
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"DD.MM.YY")
 .N GPJB S GPJB="" F  S GPJB=$O(@GL@(DT,GPJB)) Q:GPJB=""  D
 ..S NP="" F  S NP=$O(@GL@(DT,GPJB,NP)) Q:NP=""  D
 ...S IND="" F  S IND=$O(@GL@(DT,GPJB,NP,IND)) Q:IND=""  D
 ....S A=$G(^(IND))
 ....
 ....I IND="SND" D
 .....S PREF=$E(A,1,3)
 .....
 .....I PREF="CRD"!(PREF="CMP") D
 ......S CARD=$P($P(A,"~",2),"#")
 ......S SUM=$P(A,"#",4)
 ......S CMP=$P(A,"#",6) 
 .....
 .....I PREF="KPD" D
 ......S CARD=$P($P(A,"~",2),"#")
 ......S SUM=$P(A,"#",4)
 ......S CMP=$P(A,"#",7) 
 ....
 ....I IND="RCV" D
 .....S RES=$G(^(IND,1))
 .....I RES=16!(RES=20) D
 ......S K=K+1
 ......S @GLER@(DT,K)=DAT_"*"_$G(CARD)_"*"_$G(CMP)_"*"_$G(SUM)_"*"_RES
 
 
 
 
 
 
 
 
 
 
 
 

W4CIBLKH
W4CIBLKH(STAM) ; [ 08.07.11 10:18 ] [
 Q $G(@$$^W4PRM@("CIBUS"))

W4CIBPR
W4CIBPR ; [ 11.12.25 12:12 ] [ 02.08.23 10:14 ] [ 27.07.23 18:25 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 D DAT
 ;
 D FRM(MEDT,ADDT)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
  D DIVBUT
  D KOT
  D VW
  ;;D DIVBUT
 W "</div>",!
 ;
 Q
 ;
 ;
ASK ;
 W "<div id=""divask"" align=""center"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("MEDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("ADDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FRM(MEDT,ADDT) ;
 N (JB,%ARG,MEDT,ADDT)
 D VRM K @VRM
 S DIR="/tmp/"
 ;
 S IND=0
 F DT=MEDT:1:ADDT D READ(DT)
 Q
 ;
 ;
READ(DT)
 N FLIN S FLIN=$$FILEIN(DT)
 I '$$DB^W4CIBPRT S FLIN=FLIN_".w" 
 I $$^%L1ZOS(10,FLIN)<0 Q
 S @VRM@(DT,"IN")=FLIN
 O FLIN:(REWIND:READONLY)
 U FLIN
 S @VRM@(DT,"IN")=FLIN
 N A,J F J=1:1 R A Q:$ZEOF  D
 .S @VRM@(DT,"IN",J)=A
 C FLIN
 ;
 N FLOU S FLOU=$$FILEOU(DT)
 ;
 I $$^%L1ZOS(10,FLOU)>-1 D
 .O FLOU:(REWIND:READONLY)
 .U FLOU
 .S @VRM@(DT,"OU")=FLOU
 .F J=1:1 R A Q:$ZEOF  D
 ..S @VRM@(DT,"OU",J)=$E(A,1,3800)
 .C FLOU
 Q
 ;
 ;
KOT ;
 W "<br>",!
 W "<table width=""55%"" >",!
  W "<tr>"
   W "<td style=""font-size:"_$$^W3FSZ(14)_";text-align:center"" >"
    W $$^%W1DICT("SND2CIBPROTOCOL",MEDAT_"<>"_ADDAT)
   W "</td>",!
  W "</tr>",!
  W "</table>",!
 W "<br>",!
 Q
 ;
 ;
VW ;
 N (JB,%ARG,%REM)
  D DAT
  ;
  W "<table style=""width:50%"" cellpadding=0 cellspacing=0 border=""1"">"
  W " <tr>" 
   W "<th>"_$$^%W1DICT("CSRDATE")_"</th>"
   W "<th>"_$$^%W1DICT("ITEMMENUSENDFILES")_"</th>"
  W " </tr>",!
  ;
  S TOP=0,DATTOP=""
  D VRM
  ;
  F DT=ADDT:-1:MEDT D
  .N NOK S NOK=0
  .W "<tr align=""center"" "
  .W ">"
  . W "<td >"
  .  W $ZD(DT,"DD.MM.YY")
  . W "</td>"
  .
  . W "<td id=""ITM"_DT_""">"
  .  D VWSEND(DT)
  . W "</td>"
  .
  .W "</tr>",!
  W "</table>",!
  W "</div>",!
  Q
  ;
  ;
VWSEND(DT) ;
 D VRM
 W "<table align=""center"">",! 
  W "<tr>"
   W "<td width=""30%"">"
     D VWTIME(DT)
   W "</td>"
   W "<td width=""60%"" dir=""LTR"" align=""center"" >"
     D VWFILE(DT)
   W "</td>"
   W "<td>"
     D VWRES(DT)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q 
 ; 
 ;
VWTIME(DT) ; 
 N FLIN S FLIN=$G(@VRM@(DT,"IN")) I FLIN="" W "&nbsp;" Q
 N FLOU,A,TIME
 S FLOU="Stat"_$J
 ZSY "stat --format=%z "_FLIN_" > "_FLOU
 O FLOU:(REWIND:READONLY)
 U FLOU R A C FLOU
 S TIME=$P(A,".") I TIME="" W "&nbsp;" Q 
 W TIME
 Q 
 ; 
VWFILE(DT) 
 N FLIN S FLIN=$G(@VRM@(DT,"IN")) I FLIN="" W "&nbsp;" Q
 N COLOR S COLOR="darkblue"
 I $$RES(DT)'="OK" S COLOR="red"
 W "<span style=""color:"_COLOR_";text-decoration:underline;cursor:pointer"" onClick=""ClickIn('"_DT_"')"" >"
  W FLIN 
 W "</span>",!
 Q 
 ;
VWRES(DT) ; 
 N VL,COLOR S VL=$$RES(DT) Q:VL=""
 W "<input type=""button"" id=""btnou"" "
 S COLOR="green" I $$RES(DT)'="OK" S COLOR="red",NOK=1
 W " style=""color:"_COLOR_""" " 
 W "value="""_VL_""" onClick=""ClickOut('"_DT_"')"" "
 W " />"
 Q 
 ;
DAT ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 Q
 ;
RES(DT) ;
 N FLOU S FLOU=$G(@VRM@(DT,"OU"))
 N VL S VL="NOK"
 N A S A=$G(@VRM@(DT,"OU",1))
 I A[("""status"":""ok""")!(A[("""status"":""success""")) S VL="OK"
 Q VL
 ;
FILEIN(DT) ;
 Q $$FILEIN^W4CIBPRT(DT)
 ;
FILEOU(DT) ;
 Q $$FILEOU^W4CIBPRT(DT)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CIBPRR
W4RSTGPR ; [ 27.07.23 10:43 ] [ 10.11.22 10:54 ] [ 30.11.21 13:14 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 D DAT
 ;
 D FRM(MEDT,ADDT)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
  D DIVBUT
  D KOT
  D VW
  ;;D DIVBUT
 W "</div>",!
 ;
 Q
 ;
 ;
ASK ;
 W "<div id=""divask"" align=""center"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("MEDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("ADDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FRM(MEDT,ADDT) ;
 N (JB,%ARG,MEDT,ADDT)
 D VRM K @VRM
 S DIR="/tmp/"
 ;
 S IND=0
 F DT=MEDT:1:ADDT D
 .D READ("DEP","deps")
 .D READ("ITM","itm")
 .D READ("WRK","wrk")
 Q
 ;
 ;
READ(SUG,sug)
 N FLIN S FLIN=$$FILEIN^W4RSTGSN(DT,sug)
 I $$^%L1ZOS(10,FLIN)<0 Q
 S @VRM@(DT,SUG,"IN")=FLIN
 O FLIN:(REWIND:READONLY)
 U FLIN
 S @VRM@(DT,SUG,"IN")=FLIN
 N A,J F J=1:1 R A Q:$ZEOF  D
 .S @VRM@(DT,SUG,"IN",J)=A
 C FLIN
 ;
 N FLOU S FLOU=$$FILEOU^W4RSTGSN(DT,sug)
 ;
 I $$^%L1ZOS(10,FLOU)>-1 D
 .O FLOU:(REWIND:READONLY)
 .U FLOU
 .S @VRM@(DT,SUG,"OU")=FLOU
 .F J=1:1 R A Q:$ZEOF  D
 ..S @VRM@(DT,SUG,"OU",J)=$E(A,1,3800)
 .C FLOU
 Q
 ;
 ;
KOT ;
 W "<br>",!
 W "<table width=""80%"" >",!
  W "<tr>"
   W "<td style=""font-size:"_$$^W3FSZ(14)_";text-align:center"" >"
    W $$^%W1DICT("RSTGSENDINGPROTOCOL",MEDAT_"<>"_ADDAT)
   W "</td>",!
  W "</tr>",!
  W "</table>",!
 W "<br>",!
 Q
 ;
 ;
VW ;
 N (JB,%ARG,%REM)
  D DAT
  ;
  W "<table style=""width:98%"" cellpadding=0 cellspacing=0 border=""1"">"
  W " <tr>" 
   W "<th>"_$$^%W1DICT("CSRDATE")_"</th>"
   W "<th>"_$$^%W1DICT("MANYSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("ITEMSSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("WORKERSSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("SENDAGAIN")_"</th>"
  W " </tr>",!
  ;
  S TOP=0,DATTOP=""
  D VRM
  ;
  F DT=ADDT:-1:MEDT D
  .N NOK S NOK=0
  .W "<tr align=""center"" "
  .W ">"
  . W "<td >"
  .  W $ZD(DT,"DD.MM.YY")
  . W "</td>"
  .
  . W "<td id=""DEP"_DT_""">"
  .  D VWSEND(DT,"DEP")
  . W "</td>"
  .
  . W "<td id=""ITM"_DT_""">"
  .  D VWSEND(DT,"ITM")
  . W "</td>"
  .
  . W "<td id=""WRK"_DT_""">"
  .  D VWSEND(DT,"WRK")
  . W "</td>"
  .
  .W "<td align=""center"">"
  .;;I $G(NOK) D SENDAGAIN(DT)
  . D SENDAGAIN(DT)
  .W "</td>"
 .
  .W "</tr>",!
  W "</table>",!
  W "</div>",!
  Q
  ;
VWSEND(DT,SUG) ;
 D VRM
 W "<table align=""center"">",! 
  W "<tr>"
   W "<td width=""30%"">"
     D VWTIME(DT,SUG)
   W "</td>"
   W "<td width=""60%"" dir=""LTR"" align=""center"" >"
     D VWFILE(DT,SUG)
   W "</td>"
   W "<td>"
     D VWRES(DT,SUG)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q 
 ; 
 ;
VWTIME(DT,SUG) ; 
 N FLIN S FLIN=$G(@VRM@(DT,SUG,"IN")) I FLIN="" W "&nbsp;" Q
 N FLOU,A,TIME
 S FLOU="Stat"_$J
 ZSY "stat --format=%z "_FLIN_" > "_FLOU
 O FLOU:(REWIND:READONLY)
 U FLOU R A C FLOU
 S TIME=$P(A,".") I TIME="" W "&nbsp;" Q 
 W TIME
 Q 
 ; 
VWFILE(DT,SUG) 
 N FLIN S FLIN=$G(@VRM@(DT,SUG,"IN")) I FLIN="" W "&nbsp;" Q
 N COLOR S COLOR="darkblue"
 I $$RES(DT,SUG)'="OK" S COLOR="red"
 W "<span style=""color:"_COLOR_";text-decoration:underline;cursor:pointer"" onClick=""ClickIn('"_DT_"','"_SUG_"')"" >"
  W FLIN 
 W "</span>",!
 Q 
 ;
VWRES(DT,SUG) ; 
 N VL,COLOR S VL=$$RES(DT,SUG) Q:VL=""
 W "<input type=""button"" id=""btnou"" "
 S COLOR="green" I $$RES(DT,SUG)'="OK" S COLOR="red",NOK=1
 W " style=""color:"_COLOR_""" " 
 W "value="""_VL_""" onClick=""ClickOut('"_DT_"','"_SUG_"')"" "
 W " />"
 Q 
 ;
SENDAGAIN(DT) ; 
 Q:'$G(DT)
 W "<input type=""button"" id=""btnou"" "
 W " style=""color:blue"" " 
 W "value="""_$$^%W1DICT("SENDAGAIN")_""" onClick=""SendAgain('"_DT_"')"" "
 W " />"
 Q 
 ;
DAT ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 Q
 ;
RES(DT,SUG) ;
 N FLOU S FLOU=$G(@VRM@(DT,SUG,"OU"))
 N VL S VL="NOK"
 N A S A=$G(@VRM@(DT,SUG,"OU",1))
 I A[("""status"":""ok""")!(A[("""status"":""success""")) S VL="OK"
 Q VL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CIBPRT
W4CIBPRT ; [ 16.08.23 10:35 ] [ 09.08.23 15:13 ] [ 08.08.23 19:30 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 I $$ENG S %W1LNG="E"
 I $$DB S HSBENG=""
 D ^%L1TS
 ;
 ;
 S LCOD=8
 S SM1=2,SM2=5,SM3=8,SM4=12
 ;
 S (OPGR,OPIT,OPSET,OPSET1,OPADD,FRSTADD,NP,WASFIG)=0
 S FRSTSET=""
 ;
 S W3PRTPC="DLV"
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 ;
 S KVZ=$$^W4PARCAT
 ;
 D ^W3SIDKVZ ; ----------------> CREATE TMPTF(1) ( GROUPS )
 ;
 D TMPTF
 ;
 S IND=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)
 S FL=$$FILEIN(+$H)
 ; 
 C FL:(DELETE)
 O FL:(REWIND:WRITE:NEWVERSION)
 U FL
 D HD 
 ;
BODY ;
 W "[",! S WASFIG=0 
 S FRSTGR=1
 ;
 S KVNP="" F I1=1:1 S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .
 .D STRGR(KV)
 .
 .D PARSID(KV) ; ---------------> CREATE TMPTF(2) ( ITEMS )
 .
 .S FRSTIT=1
 .S PRTNP="" F I2=1:1 S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..N PRT S PRT=$G(^(PRTNP))
 ..I '$$^W4PRTVW(PRT) Q
 ..
 ..S PRTMAIN=PRT
 ..D STR(PRT)
 ..
 ..N UR S UR=3
 ..D CRTMP^W3HZTSF(PRT,$$^W3TMPTF) ; ------------> TMPTF(3) ( ADDS )
 ..N N,A
 ..S FRSTADD=1
 ..S N="" F I3=1:1 S N=$O(@$$^W4MAIN("TMPTF")@(3,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...I $P(A,"~")["-C" Q
 ...
 ...D STRADD(PRT,A)
 ;
 D CLOSEIT
 D CLOSEGR
 W "]",!
 ;
 K @$$^W4MAIN("TMPTF")
 D FOOT
 C FL
 ;
 I '$$DB D
 .S FL1=FL_".w"
 .ZSY "iconv -c -f cp862 -t windows-1255 "_FL_" -o "_FL1
 ;
 D SEND
 Q
 ;
 ;
STRGR(KV)
 Q:$G(KV)=""
  I 'FRSTGR D CLOSEIT,CLOSEGR D ZPT(1)
  W "[",!
  ;
  W ?SM1+2,"{",!
   N NM0 S NM0=$$PREPNAME("dixebhw")
   N NM S NM=$G(@$$^W4GL("PARSUG")@(KV))
   S NM=$$PREPNAME(NM)
   W ?SM1+2,$$ST("elm_name",NM0)_",",!
   W ?SM1+2,$$STN("menu_order",NP)_",",!
   W ?SM1+2,$$ST("description",NM),!
  W ?SM1+2,"}",! S WASFIG=1 
  S NP=NP+1
  S FRSTGR=0
  S FRSTIT=1
 Q
 ;
 ;
STR(PRT,NX) ;
  N NM S NM=$$SHEM^W4P(PRT)
  N PRC S PRC=$$MH^W4P(PRT)
  S NM=$$PREPNAME(NM)
  ;
  I 'FRSTIT D CLOSEIT D ZPT(2)
  ;
  I FRSTIT D  S FRSTIT=0
  .W ",",!
  .W "[",!
  .W "[",!
  ;
  W ?SM2+2,"{",!
   W ?SM2+2,$$ST("elm_name",NM)_",",!
   W ?SM2+2,$$STN("menu_order",NP)_",",!
   W ?SM2+2,$$ST("description",NM)_",",!
   W ?SM2+2,$$STN("price",PRC)_",",!
   W ?SM2+2,$$ST("makat",PRT),!
  W ?SM2+2,"}",! S WASFIG=1
  S NP=NP+1
  S FRSTIT=0
  S OPIT=1
  S OPADD=0,OPSET1=0
  S FRSTSET=1 
 Q
 ;
 ;
STRADD(PRT,A) ;
 N SM
 S SM=$S(OPSET1:SM4,1:SM3)
 I $P(A,"~")["-C" Q
 ;
 ;
 I $E(A)="A" D  Q
 .D STRA(A)
 ;
 I $E(A)'="A" D
 .I 'OPSET1 D
 ..N A1 S A1="A~"_$$PREPNAME("zetqez") D STRA(A1) 
 ;
 I FRSTADD D
 .W ?SM3+2,",",!
 .W ?SM3+2,"[",!
 
 I 'FRSTADD D ZPT(4)
 
 N CDT S CDT=$P(A,"~")
 N NMT S NMT=$$SPA^%L1FRM($P(A,"~",2)) ; -- ITEMNAME
 S NMT=$$PREPNAME(NMT)
 N PRC S PRC=$$SPA^%L1FRM($P(A,"~",3))
 
 W ?SM+2,"{",!
 W ?SM+4,$$ST("elm_name",NMT)_",",!
 W ?SM+4,$$STN("menu_order",NP)_",",!
 W ?SM+4,$$ST("description",NMT)_",",!
 W ?SM+4,$$STN("price",PRC)_",",!
 W ?SM+4,$$ST("makat",CDT),!
 W ?SM+2,"}",! S WASFIG=1
 S NP=NP+1
 S FRSTADD=0
 S OPADD=1
 Q
 ;
 ;
STRA(A) ;
 N SET S SET=$P(A,"~")
 I $E(SET)="A" S SET=$E(SET,2,20)
 ;
 I 'FRSTSET D
 .W ?SM3,"]",!
 .D ZPT(3)
 .;;W ?SM3,"[",!
 ;
 I FRSTSET D  S FRSTSET=0  
 .W ?SM3,",",!
 .W ?SM3,"[",!
 .W ?SM3+2,"[",!
 .N NM S NM=$$PREPNAME("zetqez ly mihq")
 .W "{",!
 .W $$ST("elm_name",NM)_",",!
 .W $$STN("menu_order",NP),!
 .W "},",!
 .S NP=NP+1
 .W "[",!
 ;
  N NM S NM=$P(A,"~",2)
  S NM=$$PREPNAME(NM)
  N MUST,MAX1,SA
  ;
  I SET D
  .S SA=$G(@$$^W4GL("P1SETA")@(SET))
  .S MAX=$P(SA,"\",2),MUST=0
  .I MAX["!" S MUST=1
  .S MAX=+MAX
  ;
  I SET="" D
  .S SA=$G(@$$^W4GL("P1EZI")@(PRTMAIN))
  .S MAX=+SA
  .S MUST=$S($P(SA,"-",2)="-":0,1:1)
  ;
 W ?SM3+2,"{",!
  W ?SM3+2,$$ST("elm_name",NM),",",!
  W ?SM3+2,$$STN("menu_order",NP)_",",!
  W ?SM3+2,$$STN("is_mandatory",MUST)_",",!
  W ?SM3+2,$$STN("max_items",MAX),!
 W ?SM3+2,"}",! S WASFIG=1
 ;
 S OPSET1=1
 S FRSTADD=1
 S NP=NP+1
 Q
 ;
 ;
PARSID(N) ;
 N NP,PRT,MMM,I1,N2
 S I1=0  D TMPTF K @TMPTF@(2)
 ;
 I $D(@$$^W4GL("P1PARSID")@(N))>9 D
 .S NP="" F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 ;
 S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 Q
 ;
 ;
CTF2 S I1=I1+1
 S @TMPTF@(2,I1)=N2
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
 ;
PREPNAME(NM) ;
 S NM=$TR(NM,"""","'")
 ;
 S NM=$TR(NM,TS0,TSS)
 I $$DB=2!($$DB=3) S NM=$$H2U^%L1FRM(NM)
 Q NM
 ;
ENG(STAM) ;
 Q $$ENG^W4P
 ;
HL(NM) ;
 I $G(NM)="" Q " "
 S NM=$$SPA^%L1FRM(NM)
 S NM=$$FUNC^%UCASE($E(NM))_$$FUNC^%LCASE($E(NM,2,300))
 Q NM
 ;
ZPT(UR) ;
 N SM
 S SM=$G(@("SM"_UR))
 W ?SM+2,"," S WASFIG=0 W !
 Q
 ;
HD ;
 Q
 ;
FOOT ;
 Q
 ;
SEND ;
 Q
 ;
FILEIN(DT) ;
 Q "/tmp/pcib"_DT
 ;
FILEOU(DT) ;
 Q "/tmp/pcib"_DT_".out"
 ;
DB() ; 
 Q $G(^DB)
 ;
ST(RKV,VL)
 Q """"_RKV_""": """_VL_""""
 ;
STN(RKV,VL) 
 Q """"_RKV_""": "_VL
 ;
CLOSEIT ;
 I $G(OPADD) W ?SM4,"]",!
 I '$G(OPADD) W ?SM2,",",!?SM2,"[]",!
 I $G(OPSET1) W ?SM3,"]",!,"]",!,"]",!
 Q
 ;
CLOSEGR ; 
 I $G(OPIT) W ?SM1+4,"]",! 
 W ?SM1+2,"]",! 
 W ?SM1,"]",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CIBPVW
W4CIBPVW ; [ 27.07.23 18:18 ] [ 20.12.20 13:44 ] [ 25.03.19 06:55 ] 
 N (JB,%ARG,%REM) ;
 D ^%W1ARG
 ;
 S VRM=$$^W4MAIN("VRM")
 S IND=$S($G(%ARG("IN")):"IN",1:"OU")
 ;
 S FL=$G(@VRM@(DT,IND))
 ;;S ^AA("FL")=FL
 ;
 W "<div dir=""LTR"" style=""background-color:white"">",!
 W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">",!
  W $ZD(DT,"DD.MM.YY")
  S SM=80 I $$1024^W4WDSCR S SM=55
  W $$NBSP^%L1FRM(SM) D ^W4BCK
  W "<br>"_FL
 W "</span>",!
 W "<br><br>",!
 ;
 F I=1:1 Q:'$D(@VRM@(DT,IND,I))  D
 .S A=$G(^(I))
 .W A,"<br>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CITY
W4CITY ; [ 08.07.19 07:47 ] [ 17.10.18 12:56 ] [ 26.03.17 10:36 ] 
 N GL,A,I,N S GL=$$GLCITY,I=0
 W "<div id=""divcity"" dir="""_$$^%W1DIR_""" "
  W "class=""ifr"" style=""overflow:auto"" ",!
 W ">",!
 W "<br>",!
 ;
 W "<table id=""tblcity"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td style=""color:red;cursor:pointer"" onClick=""CloseCity()"" >"
   W $$^%W1DICT("CLOSE")
  W "</td></tr>",!
  ;
  S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S A=$G(^(N))
  .S I=I+1
  .W "<tr id=""ctr"_I_""" style=""cursor:pointer"" >"
  . W "<td id=""ct"_I_""" onClick=""ClickTblCity('"_I_"')"" >"
  .  W $$H2U^%L1FRM(A)
  . W "</td>",!
  .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 

W4CLEAR
W4CLEAR ; [ 02.09.26 17:02 ] [ 29.07.26 13:01 ] [ 10.06.26 08:30 ] 
 ;;D CLEARFLAG^W4HZGSH
 D CLEARPOS^W4KLFL
 D ^WBINIT
 ;
 D CLRSTACK(0)
 ;
 K @$$^W4MAIN("TMPREP1")
 K @$$^W4MAIN("TMPREP2")
 ;
 I '$$^W6 D
 .D KILL^%W1PRM("ABCLNG")
 .D KILL^%W1PRM("ABCCAPS")
 ;
 D KILL^%W1PRM("ABCTOP")
 D KILL^%W1PRM("ABCTOPDN"),KILL^%W1PRM("ABCTOPDNVIS")
 ;
 D KILL^%W1PRM("ADDORDERING")
 D KILL^%W1PRM("AHL")
 D KILL^%W1PRM("BITZICRES")
 D KILL^%W1PRM("CDKV")
 D KILL^%W1PRM("CLRORD")
 D KILL^%W1PRM("CMBBOXSH")
 D KILL^%W1PRM("COPYORD")
 D KILL^%W1PRM("COPYTO")
 D KILL^%W1PRM("CONTINORD")
 D KILL^%W1PRM("CURSHOW")
 D KILL^%W1PRM("CSH2CSR")
 D KILL^%W1PRM("CURKV")
 D KILL^%W1PRM("CURREST")
 D KILL^%W1PRM("CUSTLASTORDS")
 D KILL^%W1PRM("CHNORD")
 D KILL^%W1PRM("CHNORD1")
 D KILL^%W1PRM("CLSDAY")
 D KILL^%W1PRM("CLSDLV")
 D KILL^%W1PRM("COMPDAT")
 D KILL^%W1PRM("CSRPRINT")
 D KILL^%W1PRM("CURDEP")
 D KILL^%W1PRM("DAT")
 D KILL^%W1PRM("DECHOUR")
 D KILL^%W1PRM("DIV")
 D KILL^%W1PRM("EZD")
 D KILL^%W1PRM("FASTPAY")
 D KILL^%W1PRM("FINDALL")
 D KILL^%W1PRM("FRAMESET")
 D KILL^%W1PRM("FLSLR")
 D KILL^%W1PRM("GRADD")
 D KILL^%W1PRM("GLOBT")
 D KILL^%W1PRM("HEADTZ")
 D KILL^%W1PRM("LKH")
 D KILL^%W1PRM("LMAM")
 D KILL^%W1PRM("HDOPT")
 D KILL^%W1PRM("MANYREPS")
 D KILL^%W1PRM("MVC")
 D KILL^%W1PRM("MZSM")
 D KILL^%W1PRM("ORDDET")
 D KILL^%W1PRM("OLDHZM")
 D KILL^%W1PRM("ORDEND")
 D KILL^%W1PRM("STAGE")
 D KILL^%W1PRM("WINDLV")
 D KILL^%W1PRM("WASPSW")
 ;;D KILL^%W1PRM("MNL")
 D KILL^%W1PRM("MEDATRPR")
 D KILL^%W1PRM("MOTH")
 D KILL^%W1PRM("SUBGR")
 D KILL^%W1PRM("DELROW")
 D PUT^%W1PRM("URMENU",0)
 D KILL^%W1PRM("PRASR")
 D KILL^%W1PRM("PRMAIN")
 ;;D KILL^%W1PRM("PRSNLBO")
 D KILL^%W1PRM("SETTM")
 D KILL^%W1PRM("SHID")
 D KILL^%W1PRM("SHIDH")
 D KILL^%W1PRM("SHOWRCPT")
 D KILL^%W1PRM("NOBACK2BO")
 D KILL^%W1PRM("NOSHOWDELZIC")
 D KILL^%W1PRM("NOPC")
 D KILL^%W1PRM("NOCAPC")
 D KILL^%W1PRM("LKHR")
 D KILL^%W1PRM("LKM")
 D KILL^%W1PRM("MVLN")
 D KILL^%W1PRM("HBNOW")
 D KILL^%W1PRM("MAXTIP")
 D KILL^%W1PRM("LASTORD")
 D KILL^%W1PRM("HBNOW")
 D KILL^%W1PRM("IFRURSH")
 D KILL^%W1PRM("MOTH")
 D KILL^%W1PRM("CLSDAY")
 D KILL^%W1PRM("CLSDLV")
 D KILL^%W1PRM("QUEORD")
 D KILL^%W1PRM("SAVEORD")
 D KILL^%W1PRM("RESETPOSTXT")
 D KILL^%W1PRM("TOAI")
 D KILL^%W1PRM("TZOPR")
 D KILL^%W1PRM("WASTOAI")
 D KILL^%W1PRM("WASMVC2")
 D KILL^%W1PRM("WASMVC3")
 D KILL^%W1PRM("WIN")
 D KILL^%W1PRM("NPLGN")
 D KILL^%W1PRM("AZRPLGN")
 D KILL^%W1PRM("COORD")
 D KILL^%W1PRM("MRKTO")
 D KILL^%W1PRM("FULLHD")
 D KILL^%W1PRM("FULLFAST")
 D KILL^%W1PRM("MSDPRT")
 D KILL^%W1PRM("TOOLD")
 D KILL^%W1PRM("HRFTFR")
 D KILL^%W1PRM("TOCMNT")
 D KILL^%W1PRM("OPNWND")
 D KILL^%W1PRM("NOBITCAJ")
 D KILL^%W1PRM("ERMSG")
 D KILL^%W1PRM("STOUTBIT")
 D KILL^%W1PRM("W4MENU")
 D KILL^%W1PRM("W4OPT")
 D KILL^%W1PRM("CMNTW6")
 D KILL^%W1PRM("VIRTKB")
 ;
 D KILL^%W1PRM("NMAP")
 D KILL^%W1PRM("MRKMANEND")
 D KILL^%W1PRM("WLMVC")
 D KILL^%W1PRM("ZOOM")
 ;
 D KILL^%W1PRM("HZMMAIN")
 D KILL^%W1PRM("DLVWEB")
 D KILL^%W1PRM("SBMORD")
 D KILL^%W1PRM("PWRLNKID")
 ;
 K @$$^W4MAIN("TMPCLICK")
 K @$$^W4MAIN("TMPCLK")
 ;
 D KILLPRM^W4PAY
 ;
 ;;K @$$^W4PARCAT
 K @$$^W4MAIN("VRM")
 ;;K ^[$$^W3MAIN]TMPS(JB)
 ;
 I $$GETP^%W1PRM("HSBPOS")<0 D KILL^%W1PRM("HSBPOS")
 ;
 I '$$^W4MVFROM D
 .D KILL^%W1PRM("W4CP")
 .D KILL^%W1PRM("PCMV")
 .D KILL^%W1PRM("PULLITOUT")
 .K @$$^W4MAIN("TMPMV")
 .K @$$^W4MAIN("TMPMVD")
 .K @$$^W4MAIN("TMPMVD0")
 .K @$$^W4MAIN("TMPANS")
 .K @$$^W4MAIN("TMPSCANS")
 .K @$$^W4MAIN("TMPCLICK")
 .K @$$^W4MAIN("TMPCLK")
 .K @$$^W4MAIN("TMPOP")
 .
 .I '$$^W4CHNWTR D
 ..D KILL^W4TMPPAY
 ;
 D ^W4KORD(JB)
 D CLRCOPY^W4MENU
 ;
 K @$$^W4MAIN("TMPANSLS")
 ;
 D KILL^WLMPARAM
 Q
 ;
 ;
CLRSTACK(DW) ;
 S DW=+$G(DW)
 D CLEAR^W4STACK("HRF",DW)
 D CLEAR^W4STACK("HREF",DW)
 D CLEAR^W4STACK("HRFML",DW)
 D CLEAR^W4STACK("HRFBMLT",DW)
 D CLEAR^W4STACK("HRFHB",DW)
 D CLEAR^W4STACK("HRFB",DW)
 D CLEAR^W4STACK("HRFREP",DW)
 D CLEAR^W4STACK("REPBACK",DW)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLHRMV
W4CLHRMV(HR,FL) ; [ 21.08.20 14:11 ] [ 
 N J,J10,HR1,HR2,END,PR
 S END=0,PR=0,J10=1,J2=$L(HR)
 ;
 I HR'?.E1"<"1N.N1"y "1N.N.E Q HR
 ;
 F J=1:1:$L(HR) I $E(HR,J,255)?1"<"1N.N1"y "1N.N.E D  Q:END
 .S J10=J
 .F J1=J:1:$L(HR) D  Q:END
 ..I $E(HR,J1)=" " S PR=1 Q 
 ..I $E(HR,J1)'?1N,PR S J2=J1-1,END=1
 ;
 S HR2=$E(HR,J10,J2)
 S HR=$$RPL^%L1FRM(HR,HR2_";","")
 S HR=$$RPL^%L1FRM(HR,HR2,"")
 I '$G(FL) S HR=HR2_$S($E(HR)=";":"",1:";")_HR
 Q HR
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLKN
W4CLKN ; [ 20.09.16 10:10 ] [ 12.05.15 06:18 ] [ 29.04.15 13:28 ] 
 K %L1PC
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("FLSLR")=FLSLR
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4CLKN"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4clkn.jsp?JB="_JB)
 Q
 ;
 ;
GET(JB,DAT11,DAT21,FLSLR) ;
 N (JB,%ARG,DAT11,DAT21,FLSLR)
 S W4CLKN=""
 S DT1=$$^%L1DC(DAT11,3)
 S DT2=$$^%L1DC(DAT12,3)
 N DAT11,DAT12
 D PUT^%W3DEB("W4CLKN-GET","DAT11=DAT11 & DAT21=DAT21 & FLSLR=FLSLR")
 S TEMP1=$$^W4MAIN("TEMP1") K @TEMP1
 S K=0
 F DT=DT1:1:DT2 D
 .S DAT11=$ZD(DT,"DD.MM.YY")
 .S DAT12=DAT11
 .S TEMP=$$^W4MAIN("TEMP") K @TEMP
 .D GET^W4CLKTOT
 .F I=1:1 Q:'$D(@TEMP@(I))  D
 ..S K=K+1 S @TEMP1@(K)=DAT11_"\"_@TEMP@(I)
 K @TEMP
 D PUT^%W1PRM("W4CLKN",1)
 Q
 ;
SH ;
 N ST S ST=$G(@GLOB)
 S STRING=$P(ST,"\")
 S STRING1=$P(ST,"\",2)
 I STRING<MESTRING!(STRING>ADSTRING) S OK=0 Q
 S SUG=$$KVZ^W4LEVPR(STRING)
 I SUG<MESUG!(SUG>ADSUG) S OK=0 Q
 S SUG1=$$KVZ1^W4LEVPR(STRING)
 N J F J=1:1:12 S @("x"_J)=$P(ST,"\",J+2)
 Q
 ;
DHOV(OV,MEDAT,ADDAT,FLSLR)
 N TO S TO="w4levtypreport.jsp?JB="_$G(JB)_"&MEDAT="_MEDAT_"&ADDAT="_ADDAT_"&MESTRING="_OV_"&ADSTRING="_OV_"&FLSLR="_$G(FLSLR)
 W " style=""cursor:pointer"
 W """"
 W " onClick=""ShowIfr('ifr','"_TO_"')"" "
 Q
 
 

W4CLKNET
W4CLKNET ;  [ 15.07.26 19:27 ] [ 30.10.23 09:47 ] [ 29.10.23 10:25 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 I $G(JB)="" W "JB NOT DEFINED !" Q
 ;
 N W3MSDR,TMP,TMPSN
 ;;S %ARG("MSDR")=10222
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 ;
 S GLMSD=$$^W4GL("TMPMSD") K @GLMSD
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @GLMSD@(N)=$G(^|$$^W3MAIN|W3MSD(N))
 ;
 D ^%W1ARG
 D ^W4IN K %L1PC S SHL=""
 S NP1=0
 ;
 K %L1PC
 S %REPN="W4CLKNET"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
DT ;
 W "DT="_DT_" MEDAT="_MEDAT_" ADDAT="_ADDAT
 I DT<MEDAT S OK=0 Q
 I DT>ADDAT S OK=2 Q
 S DAT=$ZD(DT,"DD.MM.YY")
 D PUT^%W1PRM("PCPDAT",DAT)
 Q
 ;
NP ;
 S NP1=$G(NP1)+1
 S OK=1
 N A S A=$G(@GLOB)
 F J=1:1:7 X "S x"_J_"=$P(A,""*"","_(J+1)_")"
 S x1=$TR($J(x1,5)," ",0)
 S x2=$$CNWEB^%L1FRM(x2)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLKPRM
W4CLKPRM(STAM) ; [ 14.10.09 11:29 ] [
 Q $$^W4GL("LEV")

W4CLKRKZ
W4CLKRKZ ; [ 26.12.17 15:58 ] [ 12.05.15 06:18 ] [ 29.04.15 13:28 ] 
 K %L1PC
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("FLSLR")=FLSLR
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4CLKRKZ"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4clkrkz.jsp?JB="_JB)
 Q
 ;
 ;
GET(JB,DAT11,DAT21,FLSLR) ;
 N (JB,%ARG,DAT11,DAT21,FLSLR)
 S W4CLKT=""
 D PUT^%W3DEB("W4CLKT-GET","DAT11=DAT11 & DAT21=DAT21 & FLSLR=FLSLR")
 D GET^W4CLKTOT
 D PUT^%W1PRM("W4CLKT",1)
 Q
 ;
SH ;
 N ST S ST=$G(@GLOB)
 S STRING=$P(ST,"\")
 S STRING1=$P(ST,"\",2)
 I STRING<MESTRING!(STRING>ADSTRING) S OK=0 Q
 S SUG=$$KVZ^W4LEVPR(STRING)
 I SUG<MESUG!(SUG>ADSUG) S OK=0 Q
 S SUG1=$$KVZ1^W4LEVPR(STRING)
 N J F J=1:1:12 S @("x"_J)=$P(ST,"\",J+2)
 Q
 ;
DHOV(OV,MEDAT,ADDAT,FLSLR)
 N TO S TO="w4levtypreport.jsp?JB="_$G(JB)_"&MEDAT="_MEDAT_"&ADDAT="_ADDAT_"&MESTRING="_OV_"&ADSTRING="_OV_"&FLSLR="_$G(FLSLR)
 W " style=""cursor:pointer"
 W """"
 W " onClick=""ShowIfr('ifr','"_TO_"')"" "
 Q
 
 

W4CLKS
W4CLKS ; [ 01.07.18 10:42 ] [ 12.05.15 06:18 ] [ 29.04.15 13:28 ] 
 K %L1PC
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("FLSLR")=FLSLR
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4CLKS"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4clkt.jsp?JB="_JB)
 Q
 ;
 ;
GET(JB,DAT11,DAT21,FLSLR) ;
 N (JB,%ARG,DAT11,DAT21,FLSLR)
 S W4CLKT=""
 D PUT^%W3DEB("W4CLKS-GET","DAT11=DAT11 & DAT21=DAT21 & FLSLR=FLSLR")
 D GET^W4CLKTOT
 D PUT^%W1PRM("W4CLKS",1)
 Q
 ;
SH ;
 N ST S ST=$G(@GLOB)
 S STRING=$P(ST,"\")
 S STRING1=$P(ST,"\",2)
 I STRING<MESTRING!(STRING>ADSTRING) S OK=0 Q
 S SUG=$$KVZ^W4LEVPR(STRING)
 I SUG<MESUG!(SUG>ADSUG) S OK=0 Q
 S SUG1=$$KVZ1^W4LEVPR(STRING)
 S x1=$P(ST,"\",3)+$P(ST,"\",4)+$P(ST,"\",5)+$P(ST,"\",6)
 N J F J=2:1:9 S @("x"_J)=$P(ST,"\",J+5)
 Q
 ;
DHOV(OV,MEDAT,ADDAT,FLSLR)
 N TO S TO="w4levtypreport.jsp?JB="_$G(JB)_"&MEDAT="_MEDAT_"&ADDAT="_ADDAT_"&MESTRING="_OV_"&ADSTRING="_OV_"&FLSLR="_$G(FLSLR)
 W " style=""cursor:pointer"
 W """"
 W " onClick=""ShowIfr('ifr','"_TO_"')"" "
 Q
 
 

W4CLKT
W4CLKT ; [ 16.08.26 13:23 ] [ 07.03.23 17:58 ] [ 02.01.23 11:01 ] 
 I $G(@$$^W4PRM@("ALLHREQ")) D ^W4CLKS Q
 ;
 K %L1PC
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("FLSLR")=FLSLR
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4CLKT"
 I $$DELIS^W4PRM S %REPN="W4CLKT1"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4clkt.jsp?JB="_JB)
 Q
 ;
 ;
GET(JB,DAT11,DAT21,FLSLR) ;
 N (JB,%ARG,DAT11,DAT21,FLSLR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S W4CLKT=""
 D PUT^%W3DEB("W4CLKT-GET","DAT11=DAT11 & DAT21=DAT21 & FLSLR=FLSLR")
 D GET^W4CLKTOT
 D PUT^%W1PRM("W4CLKT",1)
 Q
 ;
SH ;
 N ST S ST=$G(@GLOB)
 S STRING=$P(ST,"\")
 S STRING1=$P(ST,"\",2)
 I STRING<MESTRING!(STRING>ADSTRING) S OK=0 Q
 S SUG=$$KVZ^W4LEVPR(STRING)
 I SUG<MESUG!(SUG>ADSUG) S OK=0 Q
 S SUG1=$$KVZ1^W4LEVPR(STRING)
 N J F J=1:1:4 S @("x"_J)=$P(ST,"\",J+2)
 S x5=$P(ST,"\",20) 
 S x6=$P(ST,"\",21) 
 I '$$DELIS^W4PRM D
 .S x7=x1+x2+x3+x4+x5+x6
 I $$DELIS^W4PRM S x4=x4+x5+x6,x5=x1+x2+x3+x4
 ;
 I '$$DELIS^W4PRM D
 .F J=7:1:15 S @("x"_(J+1))=$P(ST,"\",J)
 ;
 I $$DELIS^W4PRM D
 .F J=5:1:15 S @("x"_(J+1))=$P(ST,"\",J+2)
 Q
 ;
 ;
DHOV(OV,MEDAT,ADDAT,FLSLR)
 N TO S TO="w4levtypreport.jsp?JB="_$G(JB)_"&MEDAT="_MEDAT_"&ADDAT="_ADDAT_"&MESTRING="_OV_"&ADSTRING="_OV_"&FLSLR="_$G(FLSLR)
 W " style=""cursor:pointer"
 W """"
 W " onClick=""ShowIfr('ifr','"_TO_"')"" "
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLKT0
W4CLKT ; [ 28.07.19 17:05 ] [ 22.07.19 17:42 ] [ 02.05.19 10:27 ] 
 I $G(@$$^W4PRM@("ALLHREQ")) D ^W4CLKS Q
 ;
 K %L1PC
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("FLSLR")=FLSLR
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4CLKT"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4clkt.jsp?JB="_JB)
 Q
 ;
 ;
GET(JB,DAT11,DAT21,FLSLR) ;
 N (JB,%ARG,DAT11,DAT21,FLSLR)
 S W4CLKT=""
 D PUT^%W3DEB("W4CLKT-GET","DAT11=DAT11 & DAT21=DAT21 & FLSLR=FLSLR")
 D GET^W4CLKTOT
 D PUT^%W1PRM("W4CLKT",1)
 Q
 ;
SH ;
 N ST S ST=$G(@GLOB)
 S STRING=$P(ST,"\")
 S STRING1=$P(ST,"\",2)
 I STRING<MESTRING!(STRING>ADSTRING) S OK=0 Q
 S SUG=$$KVZ^W4LEVPR(STRING)
 I SUG<MESUG!(SUG>ADSUG) S OK=0 Q
 S SUG1=$$KVZ1^W4LEVPR(STRING)
 N J F J=1:1:12 S @("x"_J)=$P(ST,"\",J+2)
 S x5=x1+x2+x3+x4
 Q
 ;
DHOV(OV,MEDAT,ADDAT,FLSLR)
 N TO S TO="w4levtypreport.jsp?JB="_$G(JB)_"&MEDAT="_MEDAT_"&ADDAT="_ADDAT_"&MESTRING="_OV_"&ADSTRING="_OV_"&FLSLR="_$G(FLSLR)
 W " style=""cursor:pointer"
 W """"
 W " onClick=""ShowIfr('ifr','"_TO_"')"" "
 Q
 
 
 
 

W4CLKTOT
W4CLKTOT ; [ 16.08.26 12:38 ] [ 04.02.24 15:16 ] [ 07.03.23 18:02 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 ;
 D ^%W1ARG
 D GET
 ;
 D TEMP
 I '$D(@TEMP) Q
 ;
 D TMPREP
 ;
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 M @TMPREP@("G")=@TEMP
 K @TEMP
TV S %SCRN=$$SCRN
 ;
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
 ;
GET ;
 N (JB,%ARG,%REM,MESUG,ADSUG,STRING1,STRING2,DAT11,DAT21,FLSLR,MDP,W4CLKT)
 D ^%L1TS
 ;
 I '$G(MESUG) S MESUG=""
 I '$G(ADSUG) S ADSUG=99999
 ;
 I '$G(STRING1) S STRING1=""
 I '$G(STRING2) S STRING2=99999
 ;
 I '$G(DAT11) S DAT11="010110"
 I '$G(DAT21) S DAT21=$ZD($H,"DD.MM.YY")
 ;
 S FLSLR=+$G(FLSLR)
 ;
 S DAT1=$$^%L1DC(DAT11,2)
 S DAT2=$$^%L1DC(DAT21,2)
 ;
 D GET1
 ;
 I $$MDPKUP D PCCSR(DAT11,DAT21) Q
 ;
 Q
 ;
S1 S @$$^W4PC@(PRINT,$O(@$$^W4PC@(PRINT,99999),-1)+1)=$TR(ST,TS0,TSS)
 Q
 ;
MSP ;
 S STRING=MSP,DAT1=$$^%L1DC(DAT11,2),DAT2=$$^%L1DC(DAT21,2)
 S KOD="LEV",MAS(99)=1
 D PCO^W4LEVTYP
 Q
 ;
 ;
GET1 ;
 D TEMP,VRM,VRM1,TMPS111
 S (SUMS,SUMMH,SUMML,SUMHF,SUMAV,SUMMKD,SUMBON,SUMSHON,SUMSH,SUMSH1,SUMSH2,SUMSHS,SUMSHA)=0,STRING="",SLR=0
 K COLJ
 ;
 I $G(@$$^W4PRM@("TIP2SLR")),$D(LEVDM) D TIP2SLR(DAT1,DAT2) ;
 ;
 K @TEMP,@VRM,@VRM1,@TMPS111
 ;
 S I=0 F  S STRING=$O(@$$^W4GL("FILE")@(STRING)) Q:STRING=""  I STRING'<STRING1,STRING'>STRING2 D
 .S SUG=$$SUG^W4LEVSUG(STRING) I SUG<MESUG!(SUG>ADSUG) Q
 .S COMPUT="",SUM=0
 .
 .I $D(LEVDM) D VRMDM(DAT1,DAT2)
 .;
 .I '$D(LEVDM) D TV^W4LEVTYP(STRING,DAT1,DAT2)
 .;
 .S MKDM=0,BON=0,SHON=0
 .N DT F DT=$$^%L1DC(DAT1,4):1:$$^%L1DC(DAT2,4) S N=$$^%L1DC(DT,2) D
 ..I $G(@$$^W4GL("FILE")@(STRING,N,"HKDM")) S MKDM=MKDM+^("HKDM")
 ..I $G(@$$^W4GL("FILE")@(STRING,N,"BONUS")) S BON=BON+^("BONUS")
 ..I $G(@$$^W4GL("FILE")@(STRING,N,"SHON","TSHL")) S SHON=SHON+^("TSHL")
 .
 .S SUMT=$$T^%L1TIME(SUM)
 .S SLR1=SUMKSF
 .S SLR=SLR+SLR1-MKDM+BON+SHON
 .D PUT^%W3DEB("W4CLKTOT-GET1","STRING=STRING&SLR1=SLR1&MKDM=MKDM&BON=BON")
 .
 .N II F II="MHL","MHLY","ML","HF" D
 ..S @II=$S($G(FLSLR):$G(PTSH(II)),1:$G(COLJ(II)))
 .
 .I '$G(SUMT),'$G(SLR1),'MHL,'ML,'MHLY,'HF Q
 .
 .D SETTEMP
 .
 .D SETSUM
 ;
 D FORMAT
 ;
 I 'FLSLR S SLR=0
 Q
 ;
 ;
SHAOT(OVED) ;
 N SUGMS S SUGMS=$$SUGMS^W4LEVSUG(OVED) Q:'SUGMS
 N N
 S (SHAOT,SHAOT1,SHAOT2,SHAOTS,SHAOTS1,SHAOTS2)=0
 S (MH,MH1,MH2,MH6,MH61,MH62,MHS,MHS1,MHS2)=""
 ;
 ;;M ^LV("W4CLKTOT",OVED)=MSCR
 ;;M ^LV("W4CLKTOT",OVED,"SUMGV")=SUMGV
 ;;M ^LV("W4CLKTOT",OVED,"SUM")=SUM
 M ^AA("W4CLKTOT","MSCR")=MSCR
 S MH=$O(MSCR(SUGMS,1,""))
 I MH'="" S SHAOT=MSCR(SUGMS,1,MH)
 S MH6=$O(MSCR(SUGMS,6,""))
 I MH6'="" S SHAOT=SHAOT+MSCR(SUGMS,6,MH6)
 ;
 I MH'="" D
 .S MH1=$O(MSCR(SUGMS,1,MH))
 .I MH1'="" S SHAOT1=MSCR(SUGMS,1,MH1)
 ;
 I MH6'="" D
 .S MH61=$O(MSCR(SUGMS,6,MH6))
 .I MH61'="" S SHAOT1=SHAOT1+MSCR(SUGMS,6,MH61)
 ;
 I MH1'="" D
 .S MH2=$O(MSCR(SUGMS,1,MH1))
 .I MH2'="" S SHAOT2=MSCR(SUGMS,1,MH2)
 ;
 I MH61'="" D
 .S MH62=$O(MSCR(SUGMS,6,MH61))
 .I MH62'="" S SHAOT2=SHAOT2+MSCR(SUGMS,6,MH62)
 ;
 S MHS=$O(MSCR(SUGMS,0,""))
 I MHS'="" S SHAOTS=MSCR(SUGMS,0,MHS)
 ;
 S MHS1=$O(MSCR(SUGMS,-1,""))
 I MHS1'="" S SHAOTS1=MSCR(SUGMS,-1,MHS1)
 ;
 S MHS2=$O(MSCR(SUGMS,-2,""))
 I MHS2'="" S SHAOTS2=MSCR(SUGMS,-2,MHS2)
 ;
 I 'SHAOT,'SHAOT1,'SHAOT2,'SHAOTS,SUMT S SHAOT=SUMT
 S SHAOTA=SHAOT+SHAOT1+SHAOT2+SHAOTS+SHAOTS1+SHAOTS2
 Q
 ;
SCRN(STAM) ;
 I $$LEVDS1 Q "W4CLKTO1"
 Q "W4CLKTOT"
 ;
S2T(HR) ;
 I HR[":" Q HR
 Q $P(HR,".")_":"_$TR($J($J($E($P(HR,".",2)_"0",1,2)*.6,0,0),2)," ",0)
 ;
S2D(HR) ;
 I HR'[":" Q HR
 Q $P(HR,":")_"."_$J($P(HR,":",2)\.6,0,0)
 ;
LEVDS1(STAM) ;
 I $G(@$$^W4PRM@("LEVDS1")) Q 1
 Q 0
 ;
TEMP ;
 S TEMP=$$^W4MAIN("TEMP")
 Q
TMPREP ;
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
TMPS111 ;
 S TMPS111=$$^W4MAIN("TMPS111")
 Q
 ;
MDPKUP(STAM) ;
 I $G(%ARG("MDP"))=1 Q 1
 Q 0
 ;
NOM(I) ;
 N A S A=$G(@TEMP@(I))
 Q $P(A,"\")
 ;
NAME(I) ;
 N A S A=$G(@TEMP@(I))
 Q $P(A,"\",2)
 ;
SHA(I) ;
 N A S A=$G(@TEMP@(I))
 I $$LEVDS1 Q $P(A,"\",8)
 Q $P(A,"\",3)
 ;
DAYS(I) ;
 N A S A=$G(@TEMP@(I))
 I $$LEVDS1 Q $P(A,"\",3)
 Q $P(A,"\",4)
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4CLKTOT-CHKPRM","MESUG=MESUG & ADSUG=ADSUG & DAT11=DAT11 & DAT21=DAT21")
 I '$$DATVLD(DAT11) Q "0;DATENOTVALID;;DAT11ID"_$$DATVLD(DAT11)
 I '$$DATVLD(DAT21) Q "0;DATENOTVALID;;DAT21ID"_$$DATVLD(DAT21)
 I $$^%L1DC(DAT21,3)<$$^%L1DC(DAT11,3) Q "0;RANGENOTVALID;;DAT11IDdd"
 I MESUG>ADSUG Q "0;RANGENOTVALID;;MESUG"
 I STRING1>STRING2 Q "0;RANGENOTVALID;;STRING1"
 I MDP'=1,MDP'=2 Q "0;DATAINVALID;;MDP"
 I FLSLR=1 Q "PSW;2"
 Q 1
 ;
DATVLD(DAT) ;
 I '$$^%L1DC(DAT,3) Q "dd"
 I $E(DAT,1,2)<1 Q "dd"
 I $E(DAT,1,2)>31 Q "dd"
 I $E(DAT,1,2)'?2N Q "dd"
 I $E(DAT,4,5)>12 Q "mm"
 I $E(DAT,4,5)<1 Q "mm"
 I $E(DAT,4,5)'?2N Q "mm"
 I $E(DAT,7,8)'?2N Q "yy"
 Q 1
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 S TO="w4levtypreport.jsp?JB="_$G(JB)_"&MEDAT="_$$MEDAT_"&ADDAT="_$$ADDAT_"&MESTRING="_$$OVED_"&ADSTRING="_$$OVED_"&FLSLR="_$$FLSLR
 W " style=""cursor:pointer"
 W """"
 W " onClick=""ShowIfr('ifr','"_TO_"')"" "
 Q
 ;
MEDAT(STAM) ;
 Q $G(%ARG("DAT11"))
ADDAT(STAM) ;
 Q $G(%ARG("DAT21"))
OVED(STAM) ;
 Q $P(A,"\",1)
FLSLR(STAM) ;
 Q $G(%ARG("FLSLR"))
 ;
TIP2SLR(DAT1,DAT2) ;
 N DT,STRING
 F DT=$$^%L1DC(DAT1,4):1:$$^%L1DC(DAT2,4) S N=$$^%L1DC(DT,2) D
 .S STRING="" F  S STRING=$O(@$$^W4GL("P1TIPM")@(DT,STRING)) Q:STRING=""  D
 ..N A,TIP S A=$G(@$$^W4GL("P1TIPM")@(DT,STRING))
 ..S TIP=$P(A,"\",2)+$P(A,"\",3)
 ..S @$$^W4GL("FILE")@(STRING,N,"BONUS")=TIP
 ..D ^%S3GLSV($$^W4GL("FILE")_"("""_STRING_""","""_N_""",""BONUS"")",$$^W4FGIB)
 Q
 ;
VRMDM(DAT1,DAT2) ;
 D VRM,VRM1,TMPS111
 N BEGIN,COMPUT,SH,SHOLD,FIRST,MAS,PG,%CPOZ,MSCR,PSUM
 S DAT11=$$^%L1DC(DAT1,1),DAT21=$$^%L1DC(DAT2,1)
 S SH=0,FIRST=1,MAS(99)=1
 S BEGIN=0,SH=0,SHOLD=1,PG=0 K @TMPS111
 I '$D(%CPOZ) S %CPOZ=5
 D PCO^W4LEVTYP
 M @VRM@(STRING)=@TMPS111 K @TMPS111
 M @VRM1@(STRING,"M")=MSCR
 M @VRM1@(STRING,"P")=PSUM
 Q
 ;
SHAOTGW ;
 S SHAOTD=$$S2D(SHAOT)
 S SHAOTD1=$$S2D(SHAOT1)
 S GWHOUR=$$S2D($G(@$$^W4PRM@("GWHOUR")))
 I $G(DAT1),$G(DAT2),$E(DAT1,1,4)'=$E(DAT2,1,4) Q
 I GWHOUR,SHAOTD>GWHOUR D
 .S SHAOTD1=SHAOTD1+SHAOTD-GWHOUR
 .S SHAOTD=GWHOUR
 Q
 ;
SETTEMP ;
 I $D(W4CLKT) D  Q
 .D SHAOT(STRING)
 .N SHAOTD,SHAOTD1,GWHOUR
 .D SHAOTGW
 .S I=I+1,@TEMP@(I)=STRING_"\"_$$^W4NAME(STRING)
 .S @TEMP@(I)=@TEMP@(I)_"\"_SHAOTD_"\"_SHAOTD1_"\"_$$S2D(SHAOT2)
 .S @TEMP@(I)=@TEMP@(I)_"\"_$$S2D(SHAOTS)_"\"_$G(COLJ("AV"))
 .
 .I '$$DELIS^W4PRM D  Q
 ..S @TEMP@(I)=@TEMP@(I)_"\"_MHL_"\"_MHLY_"\"_ML_"\"_HF_"\"_$G(BON)_"\"_$G(MKDM)
 ..S @TEMP@(I)=@TEMP@(I)_"\"_$S(FLSLR:($G(SLR1)-$G(MKDM)+$G(BON)+$G(SHON)),1:0)
 ..S $P(@TEMP@(I),"\",20)=SHAOTS1
 ..S $P(@TEMP@(I),"\",21)=SHAOTS2
 .
 .I $$DELIS^W4PRM D  Q
 ..N NESIOT,ATMADA,REHEV,ADDS,II
 ..F II="NESIOT","ATMADA","REHEV","ADDS","BIGUD" D
 ...S @II=$$GET1^W4LEVPR(STRING,II)
 ..S @TEMP@(I)=@TEMP@(I)_"\"_MHL_"\"_HF_"\"_$G(BON)_"\"_$G(MKDM)_"\"_NESIOT_"\"_ATMADA_"\"_REHEV_"\"_ADDS_"\"_BIGUD
 ..S $P(@TEMP@(I),"\",20)=SHAOTS1
 ..S $P(@TEMP@(I),"\",21)=SHAOTS2
 ;
 I '$$LEVDS1 D  Q
 .S I=I+1
 .S @TEMP@(I)=STRING_"\"_$$^W4NAME(STRING)_"\"_$$S2T(SUMT)_"\"_$G(COLJ("AV"))
 .S @TEMP@(I)=@TEMP@(I)_"\"_(MHL+MHLY)_"\"_ML_"\"_HF_"\"_$G(BON)_"\"_$G(MKDM)
 .S @TEMP@(I)=@TEMP@(I)_"\"_$S(FLSLR:($G(SLR1)-$G(MKDM)+$G(BON)+$G(SHON)),1:0)
 .S $P(@TEMP@(I),"\",20)=SHAOTS1
 .S $P(@TEMP@(I),"\",21)=SHAOTS2
 ;
 I $$LEVDS1 D  Q
 .D SHAOT(STRING)
 .N SHAOTD,SHAOTD1,GWHOUR
 .D SHAOTGW
 .S I=I+1,@TEMP@(I)=STRING_"\"_$$^W4NAME(STRING)_"\"_$G(COLJ("AV"))
 .S @TEMP@(I)=@TEMP@(I)_"\"_$$S2T(SHAOTD)_"\"_$$S2T(SHAOTD1)_"\"_$$S2T(SHAOT2)
 .S @TEMP@(I)=@TEMP@(I)_"\"_$$S2T(SHAOTS)_"\"_$$S2T(SHAOTA)_"\"_HF
 .S @TEMP@(I)=@TEMP@(I)_"\"_$G(MKDM)_"\"_$S(FLSLR:($G(SLR1)-$G(MKDM)),1:0)
 .S $P(@TEMP@(I),"\",20)=SHAOTS1
 .S $P(@TEMP@(I),"\",21)=SHAOTS2
 ;
 Q
 ;
 ;
SETSUM ;
 S SUMAV=SUMAV+$G(COLJ("AV"))
 I '$$LEVDS1 S SUMMH=SUMMH+MHL+$G(MHLY)
 S SUMML=SUMML+ML
 S SUMHF=SUMHF+HF
 S SUMMKD=SUMMKD+MKDM
 ;
 I '$$LEVDS1 D
 .S SUMS=SUMS+SUM
 .S SUMBON=SUMBON+BON
 .S SUMSHON=SUMSHON+SHON
 ;
 I $$LEVDS1 D
 .S SUMSH=SUMSH+SHAOT
 .S SUMSH1=SUMSH1+SHAOT1
 .S SUMSH2=SUMSH2+SHAOT2
 .S SUMSHS=SUMSHS+SHAOTS
 .S SUMSHA=SUMSHA+SHAOTA
 Q
 ;
 ;
FORMAT ;
 S SUMS=$$T^%L1TIME(SUMS)
 S SUMMKD=$J(SUMMKD,1,1)
 S SUMSH=$$S2T(SUMSH)
 S SUMSH1=$$S2T(SUMSH1)
 S SUMSH2=$$S2T(SUMSH2)
 S SUMSHS=$$S2T(SUMSHS)
 S SUMSHA=$$S2T(SUMSHA)
 S SUMHF=$J(SUMHF,0,0)
 S SUMML=$J(SUMML,0,0)
 S SUMMKD=$J(SUMMKD,0,1)
 S SUMBON=$J(SUMBON,0,1)
 S SUMSHON=$J(SUMSHON,0,1)
 Q
 ;
PCCSR(DAT11,DAT21) ;
 N (JB,%ARG,DAT11,DAT21,FLSLR,W4CLKT) D ^%L1TS
 D TEMP
 D ^W4MDPPC Q:'$G(PRINT)
 S ST=$J("",12)_" micaer g""ec" D S1
 S ST=$J("",12)_"-------------" D S1
 I DAT11'=DAT21 S ST="  "_DAT21_" jix`z cr "_DAT11_" jix`zn" D S1
 I DAT11=DAT21 S ST=$J("",10)_DAT21_" jix`zl " D S1
 S MC="  zery  :       caer my      : caer 'qn"
 S ST=$TR($J("",$L(MC))," ","-") D S1 S ST=MC
 D S1 S ST=$TR($J("",$L(MC))," ","-") D S1
 S (SUM,SUM1,SUM2,SUMS,SUMA)=0
 F I=1:1 Q:'$D(@TEMP@(I))  S A=$G(^(I))  D
 .I $$SHA(I)!$$DAYS(I) D
 ..S ST=$J($$SHA(I),8)_" "_$$HBR^%L1FRM($$NAME(I),20)_" "_$J($$NOM(I),8) D S1
 ..N SHT S SHT=$$SHA(I)*60+$P($$SHA(I),":",2)
 ..I '$$LEVDS1 S SUM=SUM+SHT
 ..I $$LEVDS1 S SUMA=SUMA+SHT
 S ST="" D S1
 I '$$LEVDS1 D
 .S ST=$J($TR($J(SUM\60,2)," ",0)_":"_$TR($J(SUM#60,2)," ",0),8)_" : k""dq" D S1
 I $$LEVDS1 D
 .S ST=$J($TR($J(SUMA\60,2)," ",0)_":"_$TR($J(SUMA#60,2)," ",0),8)
 .S ST=ST_":k""dq" D S1
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLKVW
W4CLKVW ; [ 17.06.26 10:53 ] [ 02.02.26 20:35 ] [ 02.07.25 14:06 ] 
 N (JB,%ARG,%REM)
 D VW^W4SCASK($G(%ARG("VP")),$G(%ARG("VZ")))
 Q
 ;
WRKNMB ;
 D NOZERO^W4SCASK Q:$D(%SC("ER"))
 N VL1,VL2
 I $$ASKWAITERNUMBER^W4PRM,$L(VL)>7 D  G WRKNMB1
 .S VL1=$$DECROV^W4HZGMLZ(VL)
 ;
 S VL1=$TR($J(VL,5)," ",0)
WRKNMB1 S VL2=$$^W4NAME(VL1)
 ;
 I VL2="" D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="WORKERNUMBERISWRONG"
 ;
 I VL1?1N.N,'$$GET1^W4LEVPR(VL1,"PAIL") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="WORKERNUMBERNOTINUSE"
 ;
 S VL=VL1
 D PUT^W4TMPANS(VP,"WORKERNAME",VL2)
 Q
 ;
SETTIME(STAM) ;
 N COD,IO,FILE,HR,CIO
 S COD=$$GET^W4TMPANS("CLK","WORKERNUMBER")
 S IO=+$$GET^W4TMPANS("CLK","ENTRANCEOREXIT?")
 I 'COD Q "0;WORKERNUMBERISWRONG"
 I IO'=1,IO'=2 Q "0;NOTENTRANCENOTEXIT"
 S CIO="?"
 I IO=1 S CIO="I"
 I IO=2 S CIO="O"
 ;
 N JOMH S JOMH=$$GET1^W4LEVPR(COD,"JOMH")
 I $TR(JOMH,"./","")'?6N S JOMH=""
 I CIO="I",$$PAPJ^W4PRM,'JOMH D  G CMGR
 .S ER="BIRTHDATEMUSTBEFILLED"
 ;
 D FILE
 S ER=""
 ;
 N NOENTER S NOENTER=$$NOENTER^W4AUTOUT(COD)
 I $$AUTOUT^W4PRM,CIO="I",NOENTER D  G CMGR
 .S ER=$P(NOENTER,";",2)
 ;
 I '$G(@$$^W4PRM@("LEV","IOBDK")) G Z2
 ;
 I $D(@FILE@(COD,"CIO"))#2,^("CIO")=CIO D  G CMGR
 .I CIO="I" S ER="WORKERISPRESENTYET" Q
 .I CIO="O" S ER="WORKERISNOTPRESENT" Q
 ;
 I CIO="O",'($D(@FILE@(COD,"CIO"))#2) D  G CMGR
 .S ER="WORKERISNOTPRESENT" Q
Z2 I CIO="O",$G(@FILE@(COD,"CIO"))="I" S HR=$$HR(COD) I HR>15,$G(@$$^W4PRM@("LEV","IOBDK"))=2 D  G CMGR
 .S ER="WORKERISPRESENTTOOMUCHTIME"
 ;
 Q $$SETTM(COD,CIO)
 ;
 ;;
 ;
SETTM(COD,CIO,NOBDK) ;
 N H S H=$H
 I COD["^" S H=$P(COD,"^",2),COD=$P(COD,"^")
 ;
 I H?2N1":"2N!(H?1N1":"2N) D
 .N H1 S H1=+$H
 .N H2 S H2=H*3600+($P(H,":",2)*60)
 .I H2>(12*3600),$P($H,",",2)<($$SHAAZ^W4PRM*3600) S H1=H1-1
 .S H=H1_","_H2
 ;
 N OK S OK=1
 ;
 I '$G(NOBDK),$G(@$$^W4PRM@("SLHOV")),'$$GETP^%W1PRM("SETTM"),$$OV2SL(COD),CIO="O",$$ITRASL(COD)>1 D  G CMGR
 .S ER="WORKEROWESMANY;"_$$^W4NAME(COD)
 ;
 I '$G(NOBDK),$G(@$$^W4PRM@("OPNORDS")),CIO="O",$$OPNORDS(COD)>.9 D  G CMGR
 .S ER="WORKEROWEOPNORDS;"_$$^W4NAME(COD)
 ;
 N HAFSAKA,HR
 D FILE
 ;
 N DAT S DAT=$$^%L1DC($$^%L1DC(H,1),2)
 N TMO S TMO=$P(H,",",2)
 N MSG S MSG=""
 S HAFSAKA=$$HAFSAKA(COD)
 S HR=$$HR(COD_"^"_H)
 ;
 I HAFSAKA,CIO="O",$$MINHR(COD),HR'<$$MINHR(COD) D
 .S TMO=TMO-(HAFSAKA*60)
 .S MSG="HAFSAKA;"_HAFSAKA
 ;
 S @FILE@(COD,DAT,TMO)=CIO
 I $G(SGOVD) S @FILE@(COD,DAT,TMO,"SGOVD")=SGOVD
 S @FILE@(COD,"CIO")=CIO
 ;
 D ^%S3GLSV(FILE_"("""_COD_""","""_DAT_""","""_TMO_""")",$$^W4FGIB)
 D ^%S3GLSV(FILE_"("""_COD_""",""CIO"")",$$^W4FGIB)
 ;
 S %TIM=$ZD(H,"24:60")
 S GLBPC=$$^W4PC_"(PRINT)"
 D PC
 I CIO="I" D
 .S MSG="WORKERIN;"_%TIM_";"_$$NAME(COD)
 I CIO="O" D
 .S MSG="WORKEROUT;"_%TIM_";"_$$NAME(COD)
 ;
 N SL,RES
 S SL=$$^W4COUR(COD,$G(KVZ))
 ;;S ^AA("W4CLKVW=SETTM","COD")=COD
 ;;S ^AA("W4CLKVW=SETTM","SL")=SL
 I $$TEAV^W4PRM,SL S RES=$$SNDCLK2TV(COD,CIO)
 ;
 Q OK_";"_MSG
 ;
CMGR Q "0;"_ER
 ;
FILE S FILE=$$^W4GL("FILE")
 Q
 ;
 ;
PC ;
 Q:$G(@$$^W4PRM@("NOPC"))
 I $G(H)="" S H=$H
 I COD["^" S H=$P(COD,"^",2),COD=$P(COD,"^")
 I $G(H)="" S H=$H
 S GLBPC=$$^W4PC_"(PRINT)"
 D ^%L1TS S SM=1
 N %MDP D ^W4MDPPC
 I PRINT'>0,$G(@$$^W4PRM@("MDPSHAON")) S PRINT=@$$^W4PRM@("MDPSHAON")
 Q:'$G(PRINT)  Q:'$D(%MDP)  ;;Q:$D(PRNOPC)
 ;
 S COD=$TR($J(COD,5)," ",0)
 S TXT=$TR($J("",19)," ","*") D S1 S TXT="" D S1
 S TXT=$$HBR^%L1FRM($$NAME(COD),17) D S1 S TXT="" D S1
 ;
 I CIO="I" D
 .S TXT=$J("",5)_"COME IN qpkp" D S1 S TXT="" D S1
 .S TXT="   "_$$^%L1DC(DAT,1)_" "_%TIM D S1 S TXT="" D S1
 ;
 I CIO="O" D
 .N TIMIN,DATIN,REF,DAT1,DAT2,TIM1,TIM2
 .S REF=$$HR(COD_"^"_H,1)
 .S DATIN=$$^%L1IND(REF,2)
 .S TIMIN=$$^%L1IND(REF,3)
 .S TXT=$J("",5)_"COME IN qpkp" D S1 S TXT="" D S1
 .N DAT1,DAT2
 .S DAT1=$$^%L1DC(DATIN,1)
 .S DAT2=$$^%L1DC(DAT,1)
 .S TIM1=$$T^%L1TIME(TIMIN)
 .S TIM2=%TIM
 .S TXT="   "_DAT1_" "_TIM1 D S1 S TXT="" D S1
 .S TXT=$J("",10)_"OUT `vi" D S1 S TXT="" D S1
 .S TXT="   "_DAT2_" "_TIM2 D S1 S TXT="" D S1
 .N COMPUT,SUM,SUMT,DATS,HAFSAKA
 .S DATS=DAT I $P(H,",",2)<45000 S DATS=$$^%L1DC($$^%L1DC(DAT,4)-1,2)
 .;;S SUMT=$$CLOCK(COD,DATS,DAT),HAFSAKA=$P(SUMT,"\",2)
 .S SUMT=$$CLOCK(COD,DAT2,TIM2,DAT1,TIM1),HAFSAKA=$P(SUMT,"\",2)
 .S SUMT=$P(SUMT,"\")
 .I HAFSAKA D
 ..S TXT="zewc "_HAFSAKA_" dwqtd onf" D S1 S TXT="" D S1
 .
 .I $G(@$$^W4PRM@("PCWORK")) D
 ..I SUMT>20 Q
 ..S TXT="   zery "_SUMT_" car" D S1 S TXT="" D S1
 ..N SUMT1 S SUMT1=+SUMT_"."_$P($J($P(SUMT,":",2)/60,2,2),".",2)
 ..S TXT=" ( zery "_SUMT1_" )" D S1 S TXT="" D S1 
 ;
 S TXT=$TR($J("",19)," ","*") D S1 S TXT="" D S1
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
S1 S TXT=%MDP("B")_TXT_%MDP("N")
 I $$L^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),%MDP("N"))>40,%MDP("GWPC")'>40 D
 .S TXT=$$RPL^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),"")
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
S11 N PCN,ST
 L +@GLBPC:1
 S PCN=$ZP(@GLBPC@(999999))+1
 S ST=$J("",SM)_$TR(TXT,TS0,TSS)
 S @GLBPC@(PCN)=ST
 L -@GLBPC
ES11 K TXT
 Q
 ;
HAFSAKA(COD) ;
 Q $G(@$$^W4PRM@("LEV","REST"))
 ;
MINHR(COD)
 Q +$G(@$$^W4PRM@("LEV","HRMIN"))
 ;
NAME(COD) ;
 Q $$^W4NAME(COD)
 ;
HR(COD,PR) ;
 N FILE D FILE
 N H S H=$H
 I COD["^" S H=$P(H,"^",2),COD=$P(COD,"^")
 N N,OK,NN
 S NN="" S OK=0,HR=0
 S N=FILE_"(COD)"
 F  S N=$Q(@N) Q:N=""  Q:$$^%L1IND(N,1)'=COD  I @N="I" I $E($$^%L1IND(N,2)) S NN=N
 ;
 I $G(PR) Q NN
 Q:NN="" HR
 S HR=(H*86400+$P(H,",",2))-($$^%L1DC($$^%L1IND(NN,2),4)*86400+$$^%L1IND(NN,3))\3600
 Q HR
 ;
 ;;CLOCK(COD,DAT1,DAT2) ;
 ;; N (JB,%ARG,%REM,COD,DAT1,DAT2,FLSLR)
 ;; Q $$^W4LEVTIM(COD,DAT1,DAT2)
 
CLOCK(COD,DAT2,TIM2,DAT1,TIM1)
 N (JB,COD,DAT1,TIM1,DAT2,TIM2)
 S DT1=$$^%L1DC(DAT1,3)
 S TM1=TIM1*3600+($P(TIM1,":",2)*60)
 S DT2=$$^%L1DC(DAT2,3)
 S TM2=TIM2*3600+($P(TIM2,":",2)*60)
 ; 
 S DIF=(DT2*24*3600)+TM2-(DT1*24*3600+TM1)
 S HFS=$$HAFSAKA^W4CLKVW(COD),PRHFS=0
 S MINS=$$MINHR^W4CLKVW(COD) S:'MINS MINS=8
 I HFS,DIF'<(MINS*3600) D
 .S DIF=DIF-(HFS*60),PRHFS=1
 I 'PRHFS S HFS=0
 Q $$T^%L1TIME(DIF)_"\"_HFS
 ;
CLOCKMIN(COD,DAT1,DAT2) ;
 N TIM
 S TIM=$$CLOCK(COD,DAT1,DAT2)
 Q TIM*60+$P(TIM,":",2)
 ;
OV2SL(COD) ;
 I '$G(COD) Q ""
 N NM,NM1 S NM=$$^W4NAME(COD) I NM="" Q 0
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:OK
 .S NM1=$G(^(N))
 .I $P($G(^(N,1)),"\")=COD S OK=N Q
 .I $$SPA^%L1FRM(NM)=$$SPA^%L1FRM(NM1) S OK=N
 Q OK
 ;
SL2OV(SL) ;
 I '$G(SL) Q ""
 N OV 
 S OV=$P($G(@$$^W4GL("P1SL")@(SL,1)),"\")
 I OV Q OV
 N NM,NM1 S NM=$G(@$$^W4GL("P1SL")@(SL)) I NM="" Q 0
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GNAME@(N)) Q:N=""  D  Q:OK
 .S NM1=$G(^(N,1))
 .I $$SPA^%L1FRM(NM)=$$SPA^%L1FRM(NM1) S OK=N
 Q OK
 ;
ITRASL(COD) ;
 N P1DZ S P1DZ=$$^W4DZ
 N ITRA S ITRA=0
 N MZM S MZM=0
 N SL,PSL S SL=$$OV2SL(COD) I 'SL Q 0
 ;
 N N S N="" F  S N=$O(@$$^W4REF@(P1DZ,N)) Q:N=""  D
 .S PSL=$$PSL^W4HZMST(N) Q:'PSL  Q:PSL'=SL
 .I $$ITRA^W4HZMST(N) S ^AA("W4CLKVW-ITRASL",N,"ITRA")=$$ITRA^W4HZMST(N)
 .S ITRA=ITRA+$$ITRA^W4HZMST(N)
 .S MZM=MZM+$$MZM^W4HZMST(N)
 ;
 I ITRA Q ITRA
 ;
 N RZN S RZN=MZM-$G(@$$^W4GL("W4SLHFK")@(P1DZ,SL))
 Q RZN
 ;
 ;
OPNORDS(COD) ;
 N P1DZ S P1DZ=$$^W4DZ
 N ITRA S ITRA=0
 ;
 N N S N="" F  S N=$O(@$$^W4REF@(P1DZ,N)) Q:N=""  D
 .I $$MKBL^W4HZMST(N)'=COD Q
 .S ITRA=ITRA+$$ITRA^W4HZMST(N)
 ;
 Q ITRA
 ;
 ;
SNDCLK2TV(OV,CIO)
 N (JB,%ARG,%REM,OV,CIO) D ^%L1TS
 S TEL=$$GET1^W4LEVPR(OV,"TEL")
 I $E(TEL)=0 S TEL="972"_$E(TEL,2,20)
 S TEL=$TR(TEL,"-","")
 S IND="SLCLK"
 ;
 S FILE=$$DIR_"tvclk"_$$DT_"_"_OV_"_"_JB
 I $$EXIST^%L1ZOS(FILE) C FILE:(DELETE)
 ;
 S STAT=$S(CIO="I":"in",CIO="O":"out",1:"")
 I STAT="" Q -1
 ;
 O FILE:(REWIND:NEWVERSION):2
 U FILE
  W "{",! 
  W """name"": """_$$HB^W4TVORD($$^W4NAME(OV))_""",",!
  W """clock_status"": """_STAT_""",",!
  W """phone"": """_TEL_"""",!
  W "}",!
 C FILE
 ;
 N FILECLOCK S FILECLOCK=FILE_".json"
 ZSY "iconv -c -f cp862 -t utf-8 "_FILE_" -o "_FILECLOCK
 ;
 D PROTCONT(FILE,IND)
 ;
 S TOKEN=$G(@$$^W4PRM@("TEAV","TOKEN"))
 S CONNECT=$G(@$$^W4PRM@("TEAV","CONNECT"))
 ;
 S URL=$G(@$$^W4PRM@("TEAV","URLCLK"))
 S URL=URL_"?token="_TOKEN_"&connection="_CONNECT
 ; 
 S AUTH="Authorization: Bearer "_TOKEN
 S HD="Content-Type: application/json"
 S FLOU=$P(FILE,".")_".ou"
 ;
 S ST="curl "
 S ST=ST_" -H """_HD_""" -L -X POST -s -m 40 '"_URL_"'"
 S ST=ST_" -d@"_FILECLOCK
 S ST=ST_" > "_FLOU
 ;
 S FLCMD=$P(FILE,".")_".cmd"
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 N H S H=$$DT
 S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 S @$$^W4GL("W4TVPR")@(H,NP,IND)=OV_" \ "_$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")
 S @$$^W4GL("W4TVPR")@(H,NP,IND,"A-ST")=ST
 ;
 S CMD="/bin/sh "_FLCMD
 S @$$^W4GL("W4TVPR")@(H,NP,IND,"CMD")=CMD
 ZSY CMD
 S @$$^W4GL("W4TVPR")@(H,NP,IND,"CMD-ZSY")=$ZSY
 I $ZSY Q $ZSY_"CMD"
 ;
 ZSY "rm -f "_FLCMD
 ;
 ;------------------- RESPONSE ---------------
 C FLOU
 O FLOU:(REWIND:READONLY)
 U FLOU
  R A
 C FLOU
 ;
 S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 S @$$^W4GL("W4TVPR")@(H,NP,IND,"RESP")=A
 ;
 S STAT=$P($P(A,"""status"":",2),",")
 S ERR=+$P($P(A,"""error_code"":",2),",")
  ;
 S RES=$S(STAT="true"&'ERR:"OK",ERR:ERR,1:"NOK")
 Q RES
 ;
 ;
DIR() Q $$DIR^W4TVORD
DT() Q $$DT^W4TVORD
 ;
PROTCONT(FILE,IND) ;
 D PROTCONT^W4LEVPR(FILE,IND)
 Q 
 ;
MAXOVD()
 N KAMOVD,MAXOVD
 S MAXOVD=$G(@$$^W4PRM@("MAXOVD")) I 'MAXOVD Q 0
 S KAMOVD=$$KAMOVD
 I KAMOVD'<MAXOVD Q "1;MAXOVD;"_MAXOVD
 Q 0
 ;
KAMOVD() 
 N K,OV,LAST,DTL D FILE
 S K=0
 S OV="" F  S OV=$O(@FILE@(OV)) Q:OV=""  D
 .I OV'?5N Q
 .I $G(@FILE@(OV,"CIO"))'="I" Q
 .S LAST=$O(@FILE@(OV,999999),-1) Q:'LAST  Q:LAST'?6N
 .S DTL=$$^%L1DC(LAST,4)
 .I DTL<($H-1) Q
 .S K=K+1
 Q K
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLORD
W4CLORD ; [ 23.07.26 15:12 ] [ 10.07.25 06:36 ] [ 09.07.25 19:41 ] 
 N (JB,%ARG)
 S HZM=$$GETP^%W1PRM("HZM")
 ;
 I HZM>0 D
 .S RES=$$^W4NEWHZ(JB,HZM)
 .D SETCLOSE^W4HZMST(HZM)
 ;
 ;;D ^W4KORD(JB)
 Q
 
 
 
 
 
 
 
 
 
 
 

W4CLOSE
W4CLOSE(HZM) ; [ 19.08.26 09:20 ] [ 24.04.16 08:10 ] [ 24.10.13 18:18 ] 
 I '$$^W4ISORD(HZM) Q ""
 N GLORD D GLORD^W4HZMST
 Q $G(@GLORD@("S"))>1
 ;
DLV(HZM) ;
 N GLORD D GLORD^W4HZMST
 Q $G(@GLORD@("S"))#2
 ;
DLVNOTPAID(HZM) ;
 N GLORD D GLORD^W4HZMST
 Q ($G(@GLORD@("S"))=1)
 
 
 

W4CLOSED
W4CLOSED(VD,HB) ; [ 11.04.11 13:40 ] [ 09.04.11 16:46 ] [
 I $G(VD)="" Q 0
 I $G(HB)="" Q 0
 I $D(@$$^W4GL("P1SGMHB")@(VD,HB)) Q 1
 Q 0

W4CLPLU
W4CLPLU(%L1D1,%L1D2) ;    [ 11.05.23 14:58 ] [ 06.04.23 04:34 ] [ 19.02.23 08:45 ] 
 N (JB,%ARG,%REM,%L1D1,%L1D2,P3S)
 D ^W4IN
 ;
 N GLPLU S GLPLU=$$^W4GL("PLUTOT")
 ;
 F DT=%L1D1:1:%L1D2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .;;D PUT^%W1PRM("COMPDAT",DAT)
 .S DAT1=$E(DAT,1,4)
 .
 .S N="" F  S N=$O(@GLPLU@(DAT,MRK,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S COL=$P(A,"*"),SUM=$P(A,"*",2)
 ..S SUMHN=$P(A,"*",4),MIN=$P(A,"*",5)
 ..S ST=$G(@GLPLU@(DAT1,MRK,N))
 ..D MINST
 ..S @GLPLU@(DAT1,MRK,N)=ST
 ..S COL=COL-MIN
 ..I $$MLY^W4PRM,'$$NEWMLY^W3PRM D
 ...D ^W4MLY(MRK,DAT,N,-COL,$S('COL:SUM,1:SUM/COL),-SUMHN)
 .
 .K @GLPLU@(DAT,MRK)
 ;
 S N=%L1D1-1
 N P1DZ S P1DZ=$$^W4DZ
 I N>(P1DZ-1) S N=P1DZ-1
 ;
 ;
 F  S N=$O(@$$^W4GL("P1H")@(N)) Q:N=""  Q:N>%L1D2  D
 .;;S DTHZ=N
 .;;S DAT=$ZD(DTHZ,"YYMMDD")
 .S HZM="" F  S HZM=$O(@$$^W4GL("P1H")@(N,HZM)) Q:HZM=""  D
 ..S A=$G(@$$^W4GL("P1MLZ")@(HZM))
 ..K @$$^W4GL("P1MLZ")@(HZM)
 ..S:A @$$^W4GL("P1MLZ")@(HZM)=A
 ..;;D PLU1^W4HZMPC
 ..N W4MLREST S W4MLREST="C"
 ..N DTHZ S DTHZ=N D PLU11^W4HZMPC
 Q
 ;
MINST ;
 S $P(ST,"*",1)=$P(ST,"*",1)-COL
 S $P(ST,"*",2)=$P(ST,"*",2)-SUM
 S $P(ST,"*",4)=$P(ST,"*",4)-$G(SUMHN)
 S $P(ST,"*",5)=$P(ST,"*",5)-MIN
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLRAEM
W4CLRAEM ; [ 27.06.19 17:38 ] [ 
 N (JB,%ARG)
 S DIR=$$WEBL^W3MAIN
 I $E(DIR,$L(DIR))'="/" S DIR=DIR_"/"
 S MSD=$$GETP^%W1PRM("MSD")
 I 'MSD S MSD=1
 S DIR=DIR_MSD_"/"
 S FILE="w4aem"
 ZSY "ls "_DIR_"AEM* > "_FILE
 C FILE O FILE:(REWIND:READONLY)
 ;
 F  U FILE R A Q:$ZEOF  D
 .S A=$P(A,"/",$L(A,"/"))
 .U 0
 .S DAT=$E(A,4,9)
 .I $E(A,1,3)="AEM",DAT?6N D
 ..S DT=$$^%L1DC(DAT,4)
 ..I $H-DT>90 D
 ...ZSY "rm "_DIR_A
 ;
 C FILE
 Q
 
 
 
 
 

W4CLRCMN
W4CLRCMN(CMNT,FL) ; [ 21.06.21 06:48 ] [ 17.06.21 16:48 ] [ 21.08.20 13:56 ] 
 I $G(CMNT)="" Q ""
 S CMNT=$$RPL^%L1FRM(CMNT,"%20"," ")
 I CMNT["{{" S CMNT=$P(CMNT,"{{",1)
 S CMNT=$$SPA^%L1FRM(CMNT)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 ;;I $$MV(CMNT) S CMNT=$P(CMNT,"<",1,$L(CMNT,"<")-1)
 I CMNT?.E1"<"1N.N.E S CMNT=$$^W4CLHRMV(CMNT,$G(FL))
 Q $TR(CMNT,"{}_","   ")
 ;
MV(CMNT) I CMNT?.E1"<"1N.N.E1" "." "1N.N Q 1
 Q 0
 
 
 
 
 
 
 

W4CLRDBL
W4CLRDBL(HZM) ; [ 18.03.19 14:20 ] [ 27.10.16 14:51 ] [ 23.10.16 02:06 ] 
 N (JB,%ARG,HZM)
 Q:$G(HZM)<1
 I $$^W4CLOSE(HZM) Q
 Q:$$TSHL^W4HZMST(HZM)<1
 ;
 I $$^W4CLOSE(HZM) Q
 ;
 S DBLORD=$$^W4GL("DBLORD")
 K @DBLORD@(HZM)
 ;
 D ^W4CHKDBL(HZM)
 ;
 I $D(@DBLORD@(HZM))'=11 Q
 ;
 S GLDBL=$$^W4GL("P1HZDBL")
 K @GLDBL@(HZM)
 M @GLDBL@(HZM)=@$$^W4ORD@(HZM)
 ;
 S GLDBL0=$$^W4GL("P1HZDBL0")
 I '$D(@GLDBL0@(HZM)) D
 .K @GLDBL0@(HZM)
 .M @GLDBL0@(HZM)=@$$^W4ORD@(HZM)
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 S VRM1=$$^W4MAIN("VRM1") K @VRM1
 ;
 M @VRM=@GLDBL@(HZM)
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  I N D
 .I $D(@DBLORD@(HZM,N)) D
 ..K @VRM@(N)
 ..F IND="BIT","MRG","TS","ST","MVFROM","HNHP","HNH","MVTO","FROM" D
 ...S N1="" F  S N1=$O(@VRM@(IND,N1)) Q:N1=""  D
 ....I +N1=N K ^(N1)
 ;
 S K=0
 S @VRM1=$G(@VRM)
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  I N D
 .S K=K+1
 .M @VRM1@(K)=@VRM@(N)
 .D SETIND(N,K)
 ;
 K @$$^W4ORD@(HZM)
 M @$$^W4ORD@(HZM)=@VRM1
 K @VRM,@VRM1
 D ^W4CALC(HZM)
 Q
 ;
 ;
SETIND(N,K) ;
 N IND,N1,NEWIND
 F IND="BIT","MRG","TS","ST","MVFROM","HNHP","HNH","MVTO","FROM" D
 .S N1="" F  S N1=$O(@VRM@(IND,N1)) Q:N1=""  D
 ..I +N1=N D
 ...S NEWIND=K
 ...I N1["-" S NEWIND=K_"-"_$P(N1,"-",2,5)
 ...M @VRM1@(IND,NEWIND)=@VRM@(IND,N1)
 ...K @VRM1@(IND,NEWIND,"O2T")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLRHZ
W4CLRHZ(HZM) ; [ 16.02.16 05:20 ] [ 11.02.16 11:51 ] [
 N (JB,%ARG,HZM)
 I $$^W4CLOSE(HZM) Q
 N DTK S DTK=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 I DTK<$$^W4DZ Q
 S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .S PAR=$P($G(^(N)),"\") Q:PAR=""
 .I PAR["%" Q
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N,N1)) Q:N1=""  I N1 D
 ..S ST=$G(^(N1))
 ..I '$$^W4ISLINK(PAR,N1) K @$$^W4ORD@(HZM,N,N1) Q
 ..S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N,N1,N2)) Q:N2=""  I N2 D
 ...S ST=$G(^(N2)) Q:N2=""
 ....S CDT=$P(ST,"\")
 ....I $L(CDT) D  Q
 .....S PRDEL=0
 .....I '$$^W4ISLINK(PAR,CDT) D  Q
 ......K @$$^W4ORD@(HZM,N,N1,N2) S PRDEL=1
 ....I '$L(CDT),PRDEL K @$$^W4ORD@(HZM,N,N1,N2)
 ;
 D ^W4CALC(HZM)
 Q
 
 
 
 
 

W4CLRHZM
W4CLRHZM(PRMPAR,GL,RECALC) ; [ 03.08.15 21:34 ] [ 11.07.15 17:22 ] [ 07.07.15 17:03 ] [
 N (JB,%ARG,%REM,GL,PRMPAR,RECALC,HZM)
 Q:$G(GL)=""
 N PRTMP S PRTMP=$$PRTMP($G(GL))
 N I,A,PAR F I=1:1 Q:'$D(@GL@(I))  D
 .S A=$G(^(I)) I PRTMP Q:$P(A,"~")
 .S PAR=$$PAR(A,PRTMP)
 .I PAR=PRMPAR D
 ..D DEL^%L1GSEQ(GL,I)
 ..I 'PRTMP,$$^W4AHP(A) D DEL^%L1GSEQ(GL,I)
 ..I PRTMP,$$PAR($G(@GL@(I)),PRTMP)["-C" D DEL^%L1GSEQ(GL,I)
 ..S I=I-1
 ;
 I $G(RECALC) D RECALC(GL)
 Q
 ;
PAR(A,PRTMP)
 Q $S(PRTMP:$P(A,"~",2),1:$P(A,"\"))
 ;
PRTMP(GL) ;
 Q $G(GL)["TMPORD"
 ;
RECALC(GL) ;
 N TSHL
 I $$PRTMP(GL) D  Q
 .S TSHL=$J($$CALC^W3HZMST(JB),2,2)
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 ;
 N HZM S HZM=+$P(GL,"(",2) Q:'HZM
 S TSHL=$J($$TOTORD^W4HZMST(HZM),2,2)
 D PUT^W4HZMST(HZM,"TSHL",TSHL)
 Q

W4CLRLK
W4CLRLK(LK) ; [ 02.03.17 13:51 ] [ 20.01.17 13:30 ] [ 
 S LK=$G(LK)
 S LK=$P(LK,"+")
 S LK=$P(LK,"^")
 S LK=$P(LK,"W")
 S LK=$P(LK,"M")
 Q LK
 

W4CLRMN
W4CLRMN(ST) ; [ 12.03.17 15:57 ] [ 06.03.16 17:53 ] [ 
 I ST["-I-" Q $$RPL^%L1FRM(ST,"-I-","")
 I ST["-II-" Q $$RPL^%L1FRM(ST,"-II-","")
 I ST["-III-" Q $$RPL^%L1FRM(ST,"-III-","")
 I ST["-IV-" Q $$RPL^%L1FRM(ST,"-IV-","")
 I ST["-V-" Q $$RPL^%L1FRM(ST,"-V-","")
 I ST["-VI-" Q $$RPL^%L1FRM(ST,"-VI-","")
 I ST["-VII-" Q $$RPL^%L1FRM(ST,"-VII-","")
 I ST["-VIII-" Q $$RPL^%L1FRM(ST,"-VIII-","")
 I ST["-IX-" Q $$RPL^%L1FRM(ST,"-IX-","")
 I ST["-X-" Q $$RPL^%L1FRM(ST,"-X-","")
 I ST["-XI-" Q $$RPL^%L1FRM(ST,"-XI-","")
 I ST["-XII-" Q $$RPL^%L1FRM(ST,"-XII-","")
 Q ST
 ;
CLR(ST) ;
 S ST=$$W4CLRMN(ST)
 S ST=$$RPL^%L1FRM(ST,"[dqtcd `ll]","")
 S ST=$$RPL^%L1FRM(ST,"[ dqtcd `ll ]","")
 Q ST
 

W4CLRMVC
W4CLRMVC(HR) ; [ 22.01.23 18:53 ] [ 
 S HR=$$RPL^%L1FRM(HR,";dry itl dgpd","")
 S HR=$$RPL^%L1FRM(HR,"dry itl dgpd","")
 S HR=$$RPL^%L1FRM(HR,";dpnfd mekq itl rvan","")
 S HR=$$RPL^%L1FRM(HR,"dpnfd mekq itl rvan","")
 Q HR
 

W4CLRPCK
W4CLRPCK ; [ 21.04.26 12:50 ] [ 31.07.11 06:55 ] [ 30.07.11 11:07 ] 
 N (JB,%ARG,%REM)
 S STEPC=13056 ;51
 ;
 S BT(1)="000000"
 S BT(2)="A0A0A0"
 S BT(3)="D32F14"
 S BT(4)="FF0000"
 S BT(5)="0000FF"
 S BT(6)="FF00FF"
 ;
 S BL(1)="DDFFDD"
 S BL(2)="E5E5E5"
 S BL(3)="FFD8D8"
 S BL(4)="FFF6D6"
 S BL(5)="D1FFFF"
 S BL(6)="FFE8FB"
 ;
 W "<div align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""">",!
 W " <tr>",!
 W "  <td>",!
 W "   <input type=""text"" id=""color"" size=""6"" "
 I $L($G(%ARG("CUR"))) W " value="""_%ARG("CUR")_""" "
 W "/>"
 W "  </td>",!
 W "  <td id=""preview"" style=""border:solid 1px"
 I $L($G(%ARG("CUR"))) W ";background-color:"_%ARG("CUR")
 W """>",!
 W "   &nbsp;"
 W "  </td>",!
 W " </tr>",!
 ;
 W " <tr>",!
 W "  <td>",!
    D SUBMIT
 W "  </td>",!
 W "  <td>",!
    D CANCEL
 W "  </td>",!
 W " </tr>",!
 ;
 W "</table>",!
 W "<br>",!
 ;
 S LJ=7,LI=$O(BT(99),-1)
 W "<table border=""1"" cellpadding=""0"" cellspacing=""0"" dir=""LTR"">",!
  F I=1:1:LI D
  .W "<tr>"
  .S B=BT(I)
  .F J=1:1:LJ D
  ..S BH=$E(B,$L(B)-5,$L(B))
  ..W "<td id=""id"_BH_""" style=""background-color:#"_BH_";cursor:pointer"""
  ..;;I BH=$G(%ARG("CUR")) W ";border:ridge"
  ..W """"
  ..W " onClick=""ChoiceColor('"_BH_"')"" "
  ..W ">&nbsp;&nbsp;&nbsp;&nbsp;</td>",!
  ..S B=$S(J<(LJ-1):$$FUNC^%DH($$HD(B)+STEPC),1:BL(I))
  ..I I=LI,J=(LJ-1) S B="FFFFFF"
  ..I I=LI,J=(LJ-2) S B="FFE8FB"
  .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
HD(N) Q $$FUNC^%HD(N)
 ;
SUBMIT ;
  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green")
 Q
 ;
CANCEL ;
  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red")
 Q
 

W4CLRSL
W4CLRSL ; [ 05.11.25 12:39 ] [ 
 N (JB,%ARG,BADSL)
 S GL=$$^W4GL("P1SL")
 ;
 S N=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .S OV=$P($G(@GL@(N,1)),"\")
 .S NM=$G(@GL@(N))
 .I $L(OV)'=5!'OV D
 ..S OV=$$OVSL(NM)
 .
 .N NOPAIL S NOPAIL=($$GET1^W4LEVPR(OV,"PAIL")=0)
 .
 .I OV,$G(M(OV)),M(OV)'=N D
 ..I +M(OV)=+OV,OV?5N!NOPAIL!'OV S BADSL(N)="" Q
 ..I +OV=+N,OV?5N S BADSL(M(OV))="" Q
 .
 .I '$D(BADSL(N)) S M(OV)=N
 .
 .S TEL=$P($G(@GL@(N,1)),"\",2)
 .I TEL,$G(M1(TEL)),$P(M1(TEL),"\")'=N D
 ..S SLO=$P(M1(TEL),"\",1)
 ..S OVO=$P(M1(TEL),"\",2)
 ..I SLO,OVO'?5N!(+OVO'=+SLO)!'OVO S BADSL(SLO)="" Q
 ..I OV'?5N!(+OV'=N)!'OV S BADSL(N)="" Q
 .
 .I '$D(BADSL(N)) S M1(TEL)=N_"\"_OV
 Q
 ;
 ;
OVSL(NM) 
 N N,OV,OK,NMOV S OV="",OK=""
 S NM=$$SPA^%L1FRM(NM)
 S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D  Q:OK
 .S NMOV=$G(@$$^W4GL("NAME",1)) 
 .I $$SPA^%L1FRM(NMOV)=NM S OK=N 
 ;
 Q $TR($J(OK,5)," ",0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLRSMB
W4CLRSMB(HZM) ; [ 13.06.21 11:26 ] [ 
 N (JB,%ARG,%REM,HZM)
 F N1=1:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .S A1=$G(@$$^W4ORD@(HZM,N1))
 .N SMB S SMB=$$SMB(A1) I SMB="+" S SMB=""
 .
 .I $$NOMOD(A1)["@@" D
 ..N NOMOD S NOMOD=$$NOMOD(A1)
 ..D SETNOMOD($$^W4ORD_"(HZM,N1)",SMB)
 .
 .N N2 S N2="" F J2=1:1 S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ..S A2=$G(^(N2))
 ..S SMB=$$SMB(A2) I SMB="+" S SMB=""
 ..I $$NOMOD(A2)["@@" D
 ...N NOMOD S NOMOD=$$NOMOD(A2)
 ...D SETNOMOD($$^W4ORD_"(HZM,N1,N2)",SMB)
 ..
 ..N N3 S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ...S A3=$G(^(N3))
 ...S SMB=$$SMB(A3) I SMB="+" S SMB=""
 ...I $$NOMOD(A3)["@@" D
 ....N NOMOD S NOMOD=$$NOMOD(A3)
 ....D SETNOMOD($$^W4ORD_"(HZM,N1,N2,N3)",SMB)
 Q
 ;
NOMOD(ST,PR) Q $P(ST,"\",10)
 ;
SETNOMOD(REF,VL,PR) ;
 S $P(@REF,"\",10)=VL
 Q
 ;
SMB(ST) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@!" Q "!"
 I NOMOD["@@?" Q "?"
 I NOMOD["@@+" Q "+"  ; -- 30/09/09
 Q ""
 

W4CLSDA0
W4CLSDAY ; [ 27.07.25 08:58 ] [ 22.01.25 18:06 ] [ 12.01.25 16:45 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4CLSDAY")
 D PUT^%W1PRM("CLSDAY",1)
 I $G(%ARG("DLV")) D PUT^%W1PRM("CLSDLV",1)
 I '$G(JB) Q
 ;
 S DZ=$$^W4DZ
 F DT=DZ+1:1:DZ+120 D TKDAT^W4ETHB2(DT)
 ;
 D TMPS^W4MENU
 ;
 I $$PAYOPT,$G(%ARG("OPEN"))="" S %ARG("OPEN")=1
 ;
 S VP="CLSDAY"
 S GL=$$^W4ORD
 ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 ;
 D ^W4IN
 ;
 I $G(%ARG("WAITER")) G WAITER
 ;
 ;------------------------- WAITERS SCREEN DATA  ---------------------------
 S VRM=$$^W4MAIN("VRM")
 N J S J=0 S WAITER="" F  S WAITER=$O(@VRM@(WAITER)) Q:WAITER=""  I WAITER S J=J+1
 N WDTB S WDTB="100%"
 ;
 ;
 W "<table id=""TblOrdBd"" align=""center"" " 
  I $$PAYOPT=2 W "width=""60%"" "
  W "style=""table-layout:fixed;text-align:center"" "
  W "dir="""_$$^%W1DIR_""" border=""1"" cellpadding=""10"" cellspacing=""1"" "
 W ">",!
 W "<thead class=""hdfix"">",!
 W "<tr>" 
  D PRMHW
  F J=1:1:$L(PRMHD,";")-1 D
  .W "<th "_$$FIXSTYLE(PRMWD,J)_">"_$$^%W1DICT($P(PRMHD,";",J))_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 S NPP=0
 D PRMHW
 ;
 S VRM=$$^W4MAIN("VRM")
 N VRM1 S VRM1=$$^W4MAIN("VRM1") K @VRM1 ; --- MIUN LEFI ITRA 
 K SSUM
 ;
 I $$PAYOPT'=2 D
 .S WAITER="" F  S WAITER=$O(@VRM@(WAITER)) Q:WAITER=""  I WAITER D
 ..N A S A=$G(^(WAITER))
 ..N ITRA S ITRA=$P(A,"\",8) I 'ITRA S ITRA="A"
 ..S @VRM1@(ITRA,WAITER)=A
 .
 .N ITRA S ITRA="" F  S ITRA=$O(@VRM1@(ITRA)) Q:ITRA=""  D
 ..S WAITER="" F  S WAITER=$O(@VRM1@(ITRA,WAITER)) Q:WAITER=""  I WAITER D
 ...S A=$G(^(WAITER))
 ...D TRWAITERS(WAITER,A)
 ; 
 I $$PAYOPT=2 D
 .S WAITER="" F  S WAITER=$O(@VRM@(WAITER)) Q:WAITER=""  I WAITER D
 ..S A=$G(^(WAITER))
 ..N BALANCE S BALANCE=$$ITRA(A) Q:'BALANCE
 ..D TRWAITERS(WAITER,A)
 .
 .W "<tr style=""background-color:yellow;font-weight:bold"">",! 
 . W "<td>&nbsp;</td><td>&nbsp;</td>"
 .
 . N I0 F I0="INDSOAD","INDITRA","INDSHUL" D
 .. X "S I=$$"_I0
 .. N SUM S SUM=$G(SSUM(I0))  
 .. I I0="INDITRA"!(I0="INDSHUL") S SUM=$J(SUM,2,2)
 .. D 
 ... I I0="INDSOAD" D  Q
 .... W "<td><span>"_$G(SSUM("INDOPSOAD"))_" </span>"
 .... W " <span style=""font-weight:normal"">[ "_SUM_" ]</span>"
 .... W "</td>"
 ...
 ... W "<td>"_SUM_"</td>"
 .W "</tr>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "</div>",!
 W "<br /><br /><br />",!
 K @VRM1
END Q
 ;
 ;
RKV(FLD,REG) ;
 I $G(REG)="H",FLD'="" Q $$H2U^%L1FRM(FLD)
 I $G(REG)?1N.N Q $J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 Q FLD
 ;
RKV1(FLD,REG) ;
 I $G(REG)="H",FLD'="" S FLD=$$H2U^%L1FRM(FLD)
 I FLD["::" S FLD=$$^%W1DICT($P(FLD,"::",2))
 I $G(REG)?1N.N S FLD=$J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 N RKV1
 S RKV1="<span style=""font-weight:bold;text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""">"
 S RKV1=RKV1_FLD_"</span>"
 Q RKV1
 ;
RKV2(NOMFLD,REG) ;
 N FLD S FLD=$P($G(@$$^W4MAIN("VRM")@(WAITER)),"\",NOMFLD)
 I $G(REG)="H",FLD'="" S FLD=$$H2U^%L1FRM(FLD)
 I $G(REG)?1N.N S FLD=$J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 N RKV2
 S RKV2="<span style=""font-weight:bold;text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""">"
 S RKV2=RKV2_FLD_"</span>"
 Q RKV2
 ;
SUGT(HZ) ;
 N SUGT S SUGT=""
 I $$MZM^W4HZMST(HZ) S SUGT=$$^W3SHOWTS(1) ;1
 I $$CHK^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W4SHOWTS(HZ,2)
 I $$CA^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W3SHOWTS(3)
 I $$ASR^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W4SHOWTS(HZ,4)
 I $$TL^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W3SHOWTS(5)
 I '$$SHUL^W4HZMST(HZ) D  I 'SUGT,$L(SUGT) S SUGT="<span style=""color:grey"">"_SUGT_"</span>"
 .S SUGT=$$CODTS^W4HZMST(HZ) Q:'SUGT
 .I SUGT=1 S SUGT=$$^%W1DICT("WILLPAYCASH")
 .I SUGT=2 S SUGT=$$^%W1DICT("WILLPAYCHECK")
 .I SUGT=3 S SUGT=$$^%W1DICT("WILLPAYCA")
 .I SUGT=4 S SUGT=$$^%W1DICT("WILLPAYASR")
 Q SUGT
 ;
SUM(WAITER,HZ,RKV) ;
 N ST
 S ST="S S"_RKV_"=$G(S"_RKV_")+$$"_RKV_"^W4HZMST(HZ)"
 X ST
 S ST="S S"_RKV_"(WAITER)=$G(S"_RKV_"(WAITER))+$$"_RKV_"^W4HZMST(HZ)"
 X ST
 Q
 ;
 ;
TRWAITERS(WAITER,A) ;
 I $$DLV,$L(WAITER)=5 Q
 S NPP=NPP+1
 N BALANCE S BALANCE=$$ITRA(A)
 
 I $$PAYOPT=2 D TRWAITERS2(WAITER,A) Q
 D TRWAITERS1(WAITER,A)
 Q
 ;
 ;
TRWAITERS1(WAITER,A) ;
 W "<tr onMouseUp=""ShowOrders('"_WAITER_"','"_$S(BALANCE:1,1:0)_"')"" "
  W "style=""background-color:"_$S(WAITER=$G(@$$^W4MAIN("VRM")@("CURW")):"lightyellow",BALANCE:"#eaeaea",1:"white")_";cursor:pointer;color:"_$S(BALANCE:"black",1:"grey")_""" "
 W ">"
  S J=0
  S J=J+1
   W "<td style=""background-color:#fafad2;width:"_$P(PRMWD,";",J)_";text-align:center"">"
   W NPP
  W "</td>"
 
  I $$PAYOPT'=2 S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_">"_WAITER_"</td>"
 
  S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
   W "<span style=""font-size:"_$$^W3FSZ(14)_""">"_$$RKV($$NAME(WAITER),"H")_"</span>"
 W "</td>"
  ;
  N I F I=1:1:2,9,3:1:8 D
 . S J=J+1
 . W "<td "_$$FIXSTYLE(PRMWD,J)_">"
 .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"<b>",1:"")
 .  D
 ..  I I=9 D  Q
 ...  W +$P(A,"\",9)
 ...  I $$PAYOPT,$P(A,"\",11) D
 ....  W " <span style=""color:black;font-weight:bold"">"
 ....   W " [ "_+$P(A,"\",11)_" ]"
 ....  W "</span>"
 ..  W $$RKV(+$P(A,"\",I),$S(I<3:"",1:2))
 .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"</b>",1:"")
 . W "</td>" 
 ;
 W "</tr>",!
 Q
 ;
 ;
TRWAITERS2(WAITER,A) ; 
 W "<tr onMouseUp=""ShowOrders('"_WAITER_"','"_$S(BALANCE:1,1:0)_"')"" "
  W "style=""background-color:"_$S(WAITER=$G(@$$^W4MAIN("VRM")@("CURW")):"lightyellow",BALANCE:"#eaeaea",1:"white")_";cursor:pointer;color:"_$S(BALANCE:"black",1:"grey")_""" "
 W ">"
  S J=0
  S J=J+1
   W "<td style=""background-color:#fafad2;width:"_$P(PRMWD,";",J)_";text-align:center"">"
   W NPP
  W "</td>" S J=J+1
  W "<td "_$$FIXSTYLE(PRMWD,J)_">"
   W "<span style=""font-size:"_$$^W3FSZ(14)_""">"_$$RKV($$NAME(WAITER),"H")_"</span>"
  W "</td>"
  ;;
  N I0 F I0="INDSOAD","INDITRA","INDSHUL" D
  . X "S I=$$"_I0
  . S J=J+1
  . W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"<b>",1:"")
  .  D
  ..  I I=$$INDSOAD D  Q
  ...  W "<span style=""font-weight:bold"">"_+$P(A,"\",$$INDOPSOAD)_"</span>"
  ...  I $P(A,"\",$$INDSOAD) D
  ....  W " <span style=""color:black"">"
  ....   W " [ "_+$P(A,"\",$$INDSOAD)_" ]"
  ....  W "</span>"
  ..  W $$RKV(+$P(A,"\",I),$S(I<3:"",1:2))
  .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"</b>",1:"")
  . S SSUM(I0)=$G(SSUM(I0))+$P(A,"\",I)
  . W "</td>" 
  S SSUM("INDOPSOAD")=$G(SSUM("INDOPSOAD"))+$P(A,"\",$$INDOPSOAD)
 W "</tr>",!
 Q
 ;
 ;
WAITER ;
 S WAITER=$G(%ARG("WAITER")) Q:'WAITER
 ;
 ; ------------------------- ORDERS OF WAITER ---------------------------------
 ;
 ;;W "<div align="""_$S($$^%W1DIR="LTR":"right",1:"left")_""" onMouseDown=""parent.CloseMenu()"">"
 W "<div align=""center"" onMouseDown=""parent.CloseMenu()"">"
 W "<table id=""TblOrdWbd"" "
  W "style=""table-layout:fixed;text-align:center"" "
  W " dir="""_$$^%W1DIR_""" border=""1"" "
  W "cellpadding=""8"" cellspacing=""1"" "
 W ">",!
 W "<thead class=""hdfix"">",!
 W "<tr>"
  D STRWORD3
 W "</tr>",!
 W "</thead>",!
 ;
 S NPP=0
 D PRMHW2
 ;
 N CLOSE
 S N="" F  S N=$O(@$$^W4MAIN("VRM")@(WAITER,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .D ^W4OPORD(N)
 .S CLOSE=$$^W4CLOSE(N)
 .I $$TSHL^W4HZMST(N)<.5,$$TSHL^W4HZMST(N)>-.5,'$$SHUL^W4HZMST(N),'$$SHULA^W4HZMST(N) S CLOSE=-1
 .I CLOSE'=0,$G(%ARG("OPEN")) Q
 .
 .S NPP=NPP+1,J=0
 .
 .W "<tr style=""cursor:pointer;height:40px;"
 . W "background-color:"_$S(N=$G(@$$^W4MAIN("VRM")@("CUR")):"lightyellow",$$^W4HZMH(N):"96CE98",CLOSE>0:"white",CLOSE=-1:"pink",1:"#eaeaea")
 .  W ";color:"_$S('$$ORDITRA(A):"grey",1:"black")_""" "
 . W ">",! 
 . S J=J+1 D
 .. W "<td style=""background-color:#fafad2;width:"_$P(PRMWD,";",1)_";text-align:center"">"
 ..  W $$RKV1(NPP)
 .. W "</td>",!
 .
 .S J=J+1 D
 ..W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">"
 .. W $$RKV1(N) ; -- HAZMANA
 ..
 .. I $$HZM^W4MSL(N) D
 ... D BRSPAN
 ...  W $$H2U^%L1FRM($$KTVM^W4HZMST(N))
 ... W "</span>",!
 ... W "<span style=""color:red;font-size:"_$$^W3FSZ(8)_""">"
 ...  W $$SHAA^W4HZMST(N)
 ... W "</span>",!
 ..W "</td>",!
 .
 .N I S J=J+1,I=1
 .W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">" ; -- SHULHAN OR LAKUAH NMB
 . N LK,LK1 S LK=$$ORDLKTB(A),LK1=""
 . W $$RKV1(LK)
 . I $$^W4MSL(LK) D
 . . D BRSPAN W $$H2U^%L1FRM($$NAME^W4HZMST(N))
 . . W "</span>",!
 .W "</td>"
 .
 .S J=J+1
 .W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">" ; -- SOADIM
 . N SOAD S SOAD=$$ORDSOAD(A)
 . I $$HZM^W4MSL(N),'$$MSLSD^W4PRM S SOAD=$S($$SDMSL^W4PRM:1,1:0)
 . W $$RKV1(SOAD)
 .W "</td>"
 .
 .F I=2:1:4 D
 ..S J=J+1
 ..W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">"
 .. W $$RKV1($P(A,"\",I),$S(I=1:"",1:2))
 ..W "</td>"
 .
 .S J=J+1 D
 ..W "<td id=""paid"_N_""" "_$$FIXSTYLE(PRMWD,J)_" align=""center"" >"
 ..D
 ... N SUGT S SUGT=$P(A,"\",10)
 ...
 ... I $L(WAITER)<5,SUGT<2,'$$^W4HZMH(N),'$$DELORD^W4DLVORD(N),'$$^W4CLOSE(N),$$ITRA^W4HZMST(N),WAITER'=9999 D  Q
 .... I $$DT(N)>$$^W4DZ Q
 .... W "<input id=""paycash"_N_""" type=""button"" value="""_$$^%W1DICT("PAYCASH")_""" "
 .... W " style=""font-size:"_$$^W3FSZ(16)_""" "
 .... W " onMouseUp=""PayCash('"_N_"')"" />"
 ...
 ... W $$RKV1(SUGT)
 ..W "</td>" ; -- SUG TASHLUM
 .
 .S J=J+1 D
 ..W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">"
 .. W $$RKV1($$ORDITRA(A),2)
 ..W "</td>"
 .
 .D
 ..I CLOSE=-1 D  Q
 ...S J=J+1
 ...W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">&nbsp;</td>",!
 ..
 ..N BTNVL S BTNVL=$S(CLOSE:$$^%W1DICT("PAYMENTDETAILS"),1:$$^%W1DICT("PAY"))
 ..S J=J+1 D
 ...W "<td "_$$FIXSTYLE(PRMWD,J)_" align=""center"" >"
 ... D 
 ... .I $$^W4HZMH(N) Q
 ... .W " <input type=""button"" style=""width:100%;height:40px"
 ... .W ";font-size:"_$$^W3FSZ($S(CLOSE=0:14,1:12))_""" "
 ... .W " value="""_BTNVL_""" "
 ... .W " onClick=""ShowPayments('"_N_"')""/>"
 ...W "</td>",!
 .W "</tr>",!
 ;
 I N="" S N="END"
 ;
 S @TMPS@(1,"LAST")=N
 ;
 W "</table>",!
 W "<br>",!
 ;
 I 'NPP,$G(%ARG("OPEN")) D
 .W "<script>",!
 .W " MsgI('NOTOPENORDERS')",!
 .W "</script>",!
 ;
 W "</div>",!
 W "<br /><br /><br />",!
 Q
 ;
 ;
SETCUR(ORD) ;
 Q:$D(@$$^W4MAIN("VRM"))<10
 S @$$^W4MAIN("VRM")@("CUR")=ORD
 Q
 ;
SETCURW(WAITER) ;
 Q:$D(@$$^W4MAIN("VRM"))<10
 S @$$^W4MAIN("VRM")@("CURW")=WAITER
 Q
 ;
 ;
BRSPAN W "<br><span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"
 Q
 ;
 ;
KB ;
 D ^W4IN
 D CRVRM(P1DZ)
 I $G(%ARG("WAITER")) G KBW
 ;
 ;-------------------------------- WAITERS HEADER SCREEN ---------------------
 D KILL^%W1PRM("NMB")
 D KILL^%W1PRM("HZM")
 ;
 I $$GET^%W1PRM("DLVCSR")?1N D
 .D KILL^%W1PRM("DLVCSR0")
 .D PUT^%W1PRM("DLVCSR0",$$GET^%W1PRM("DLVCSR"))
 .D KILL^%W1PRM("DLVCSR")
 ;
 W "<div align=""center"">",! ; -- TOP
  D STRHD1 
  I '$$PAYOPT D STRHD2
 W "</div>",!
 ;
 I '$$PAYOPT D XYZ
 ;
 Q
 ;
 ;
KBW ; --------------- ORDERS OF WAITER HEADER -----------------
 S WAITER=$G(%ARG("WAITER")) Q:'WAITER
 ;
 W "<div align=""center"" onMouseDown=""parent.CloseMenu()"" >",!
  D STRWORD1; -- header & buttons
  I '$$PAYOPT D STRWORD2; --- statistika
  ;;D STRWORD3 ;--- <th>
 W "</div>",!
 Q
 ;
 ;
SHOWORD(HZ) ;
 N VIEW S VIEW=0
 I $$PAYOPT S VIEW=1 
 Q " onMouseUp=""ShowOrd('"_HZ_"','"_VIEW_"')"""
 ;
 ;
CRVRM(DT) ;
 N CUR,CURW,I
 S CUR=$$TOT("CUR")
 S CURW=$$TOT("CURW")
 ;
 K SORDERS,SOPORD
 F I="TSHL","SHUL","SHULA","MZM","ITRA","SOAD","TIP","DMSH" N @("S"_I)
 ;
 N N S N="" F  S N=$O(@$$^W4GL("P1H")@(DT,N)) Q:N=""  D MVDT(DT,N)
 ;
 I $$Z24^W4PRM,$G(P1DZ),DT=P1DZ D
 .K @$$^W4MAIN("VRMNP")
 .N DTL S DTL=$O(@$$^W4GL("P1H")@(DT),-1)
 .I DTL D
 ..N N S N="" F  S N=$O(@$$^W4GL("P1H")@(DTL,N)) Q:N=""  D
 ...I $G(^(N))'[",Z" D ^W4MVDTL(P1DZ,DTL,N)
 ;
 K @$$^W4MAIN("VRM")
 N N S N="" F  S N=$O(@$$^W4GL("P1H")@(DT,N)) Q:N=""  D
 .S P1HHZ=$G(^(N))
 .
 .I $$PAYOPT,$$^W4HZMH(N) Q 
 .
 .I '$$Z24^W4PRM,$$SIGNZ^W4SUM(DT,N)!$$SIGNY^W4SUM(DT,N),DT=$$^W4DZ D  Q
 ..K @$$^W4MAIN("VRM")
 ..K SORDERS,SOPORD
 ..N I F I="TSHL","SHUL","SHULA","MZM","ITRA","SOAD","TIP","DMSH","OPSOAD" K @("S"_I)
 .
 .I $$Z24^W4PRM,P1HHZ[",Z" Q
 .
 .I $$PAYOPT=2,P1HHZ[",Y",DT=$$^W4DZ Q
 .
 .S NMB=$$NMB^W4HZMST(N)
 .S SUGT=$$SUGT(N)
 .S WAITER=$S('$$^W4MSL(NMB):$$MKBL^W4HZMST(N),'$$PSL^W4HZMST(N):9999,1:$$PSL^W4HZMST(N))
 .;
 .Q:'WAITER
 .
 .S SORDERS=$G(SORDERS)+1
 .S @$$^W4MAIN("VRM")@("SORDERS")=$G(@$$^W4MAIN("VRM")@("SORDERS"))+1
 .S SORDERS(WAITER)=$G(SORDERS(WAITER))+1
 .I $$HZM^W4MSD(N) S SORDERS(WAITER,"SOAD")=$G(SORDERS(WAITER,"SOAD"))+$$SOAD^W4HZMST(N)
 .
 .I $$ITRA^W4HZMST(N),'$$^W4CLOSE(N) D
 ..S SOPORD=$G(SOPORD)+1
 ..S @$$^W4MAIN("VRM")@("SOPORD")=$G(@$$^W4MAIN("VRM")@("SOPORD"))+1
 ..S SOPORD(WAITER)=$G(SOPORD(WAITER))+1
 ..I $$HZM^W4MSD(N) S SOPORD(WAITER,"SOAD")=$G(SOPORD(WAITER,"SOAD"))+$$SOAD^W4HZMST(N)
 .
 .;--------------- RAMA MELZARIM - HAZMANOT -----------------
 .S @$$^W4MAIN("VRM")@(WAITER,N)=NMB
 .
 .N I F I="TSHL","SHUL","SHULA","MZM","ITRA","SOAD","TIP","DMSH" D
 ..D SUM(WAITER,N,I) ; ------> @I@(WAITER), "S"_RKV
 ..
 ..N RKV X "S RKV=$$"_I_"^W4HZMST(N)"
 ..S @$$^W4MAIN("VRM")@("S"_I)=$G(@$$^W4MAIN("VRM")@("S"_I))+RKV
 ..S @$$^W4MAIN("VRM")@(WAITER,N)=$G(@$$^W4MAIN("VRM")@(WAITER,N))_"\"_RKV
 .
 .S @$$^W4MAIN("VRM")@(WAITER,N)=$G(@$$^W4MAIN("VRM")@(WAITER,N))_"\"_$$SUGT(N)
 ;
 ;--------------- RAMA MELZARIM ---------------
 S WAITER="" F  S WAITER=$O(STSHL(WAITER)) Q:WAITER=""  D
 .N I F I="SORDERS","SOPORD","STSHL","SSHUL","SSHULA","SMZM","STIP","SITRA","SSOAD","SDMSH" D
 ..I $$PAYOPT,'$G(SITRA) Q
 ..S @$$^W4MAIN("VRM")@(WAITER)=$G(@$$^W4MAIN("VRM")@(WAITER))_$G(@I@(WAITER))_"\"
 .
 .S @$$^W4MAIN("VRM")@(WAITER)=$G(@$$^W4MAIN("VRM")@(WAITER))_$G(SOPORD(WAITER,"SOAD"))
 ;
 I CUR D SETCUR(CUR)
 I CURW D SETCURW(CURW)
 Q
 ;
TOT(RKV) ;
 Q:$G(RKV) ""
 Q:$G(RKV)="" ""
 Q $G(@$$^W4MAIN("VRM")@(RKV))
 ;
FIXSTYLE(PRMWD,J) ;
 N WD S WD=$P(PRMWD,";",J)
 S WD=$$SPA^%L1FRM(WD)
 I $$^W4TABLET=1 S WD=WD*$S($G(%ARG("WAITER")):1.33,1:1.35)
 Q " style=""width:"_WD_"px"""
 ;
 ;
P10 ;
 ;NPP ;WAITERNUMBER;WAITERNAME;ALLORDERS;OPENORDERS;GUESTS;TOPAY;PAID;CREDIT;CASH;TIP;BALANCE;
 ; 40 ;    90    ;   300    ;  105 ;   105     ;   100  ; 105 ; 105; 105  ;105 ;105;  105  ;
 ; 30 ;    55    ;   190    ;  55  ;    55     ;    60  ;  55 ;  55;  55  ; 55 ; 55;   55  ;
P12 ;
 ;NPP;WAITERNAME;GUESTS;BALANCE;PAID;
 ; 50 ;   470   ;  120 ;  150  ; 145 ;
 ; 35 ;   280   ;  90  ;  80   ;  80 ;
P20 ;
 ;NPP;ORDER;TABLENUMBER;GUESTS;TOPAY;PAID;CREDIT;KINDOFPAYMENT;BALANCE;PAY;
 ; 40 ; 145 ;    155    ;  70 ; 165 ; 165;  165 ;     165     ;  165  ;165;
 ; 30 ; 95  ;    95     ;  50 ;  95 ;  95;  95  ;     95      ;  95   ; 95;
P22 ;
 ;NPP;ORDER;TABLENUMBER;GUESTS;TOPAY;PAID;CREDIT;KINDOFPAYMENT;BALANCE;PAY;
 ; 40 ; 145 ;    155    ;  70 ; 165 ; 165;  165 ;     165     ;  165  ;165;
 ; 30 ;  95 ;     95    ;  50 ;  95 ;  95;   95 ;      95     ;   95  ; 95;
 Q  ;
 ;
RESTDLV ;
 I $$GET^%W1PRM("DLVCSR0")?1N D
 .D PUT^%W1PRM("DLVCSR",$$GET^%W1PRM("DLVCSR0"))
 .D KILL^%W1PRM("DLVCSR0")
 Q
 ;
NAME(WAITER) ;
  I WAITER=-1 Q $$^%W1DICT("CUSTOMERSTAKEAWAY")
  I WAITER=9999 Q $$^%W1DICT("INWAITING")
  I $L(WAITER)<5 Q $G(@$$^W4GL("P1SL")@(WAITER))
  Q $$^W4NAME(WAITER)
  ;
MVDT(DT,N) ;
 N DTH S DTH=$$^%L1DC($$TRH^W4HZMST(N),3)
 I $$^W4SHAAZ,$$SHAA^W4HZMST(N)<$$SHAAZ^W4PRM S DTH=DTH-1
 Q:DTH'>DT
 ;
 I $$MSL^W4MSL(N),DTH>$$^W4DZ,'$$^W4CLOSE(N),$$ITRA^W4HZMST(N)>.4!($$ITRA^W4HZMST(N)<-.4) D
 .D PUT^W4HZMST(N,"DATK",$ZD(DTH,"DD.MM.YY"))
 .D ^W4MVP1H(DT,DTH,N)
 Q
 ;
 ;
DLV(STAM) ;
 Q $$GETP^%W1PRM("CLSDLV")
 ;
DT(HZM) ; 
 Q $$DT^W4PAYFN(HZM)
 ;
CLOSECASH(STAM) ;
 N (JB,%ARG,%REM)
 S DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  D
 .I $$^W4CLOSE(N) Q
 .I $$^W4HZMH(N) Q
 .N DT S DT=$$^%L1DC($$TRH^W4HZMST(N),3)
 .N SHAA S SHAA=$$SHAA^W4HZMST(N)
 .I DT>(DZ+1) Q
 .I DT=(DZ+1),SHAA>$$SHAAZ^W4PRM Q
 .I $$DEL^W4DEL(N) Q
 .S CODTS=$$CODTS^W4HZMST(N) Q:CODTS>1
 .D SGMZAUTO^W4TSAUTO(N)
 Q 1
 ;
 ; 
XYZ ;
 N TOP S TOP=720
 I $$1024^W4WDSCR S TOP=630
 W "<div id=""XYZ"" align=""center"" style=""position:absolute;top:"_$$^W4KF(TOP)_";left:10%;width:80%"">",!
  W "<table align=""center"" width=""80%"" dir="""_$$^%W1DIR_""" cellpadding=""6px"" border=""0"">",!
   W "<tr>",!
    W "<td align=""center"">",!
     W "<input type=""button"" class=""btn"" style=""width:120px"" value="""_$$^%W1DICT("REPORTX")_""" onMouseUp=""ReportX()"" >"
    W "</td>",!
    I '$G(@$$^W4PRM@("NODOCHY")) D
    .W "<td align=""center"">",!
    . W "<input type=""button"" class=""btn"" style=""width:120px"" value="""_$$^%W1DICT("REPORTY")_""" onMouseUp=""ReportY()"" >"
    .W "</td>",!
    D
    .I $$SF^W4PRM,$H'>$$^W4DZ D  Q 
    ..W "<td align=""center"" >",!
    .. W "<input type=""button"" class=""btn"" value="""_$$^%W1DICT("WORKERSCLOSING")_""" onMouseUp=""SgOvd()"" >"
    ..W "</td>",!
    .
    .W "<td align=""center"" >",!
    . W "<input type=""button"" class=""btn"" style=""width:120px"" value="""_$$^%W1DICT("REPORTZ")_""" onMouseUp=""ReportZ()"" >"
    .W "</td>",!
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
STRHD1 ;
 W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";text-align:center;width:"_(98+$$1024^W4WDSCR)_"%"" dir="""_$$^%W1DIR_""" >"
  W "<tr>"
    W "<td>&nbsp;</td>"
    W "<td style=""font-size:"_$$^W3FSZ(20)_";color:"_$$BGCOLOR^W4CSS_""">"
    ;
    I '$$PAYOPT D
    . W $$^%W1DICT("DAYCLOSING",$ZD(P1DZ,"DD.MM.YY"))
    I $$PAYOPT D
    . W $$^%W1DICT("CLOSINGORDERS")
    W "</td>"
    ;
    I '$$PAYOPT D
    .W "<td>&nbsp;</td>"
    .W "<td><input type=""button"" class=""btn"" style=""width:100%;color:red"" value="""_$$^%W1DICT("EXIT")_""" onMouseUp=""Back()""></td>"
    ;
    I $$PAYOPT W "<td>&nbsp</td>"
     ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRHD2 ;
 W "<table dir="""_$$^%W1DIR_""" width=""97%"" style=""font-size:"_$$^W3FSZ(12)_""" >",!
  W "<tr>",!
   W "<td>"_$$^%W1DICT("TOPAY")_"&nbsp;&nbsp;"_$$RKV1($$TOT("STSHL"),2)_"</td>"
   W "<td>"_$$^%W1DICT("PAID")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SSHUL"),2)_"</td>"
   W "<td>"_$$^%W1DICT("CREDIT")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SSHULA"),2)_"</td>"
   I '$$SUPER^W3PRM,'$$NOTIPALL^W4PRM W "<td>"_$$^%W1DICT("TIPS")_"&nbsp;&nbsp;"_$$RKV1($$TOT("STIP"),2)_"</td>"
   W "<td>"_$$^%W1DICT("BALANCE")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SITRA"),2)_"</td>"
   W "<td>"_$$^%W1DICT("ALLORDERS")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SORDERS"))_"</td>"
   W "<td>"_$$^%W1DICT("OPENORDERS")_"&nbsp;&nbsp;<span style=""color:red"">"_$$RKV1($$TOT("SOPORD"))_"</span></td>"
   W "<td>"_$$^%W1DICT("SOADIM")_"&nbsp;&nbsp;"_$$RKV1($$TOT("OPSOAD"))_"</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRWORD1 ;
 W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";text-align:center;width:98%"" dir="""_$$^%W1DIR_""" >"
  W "<tr>"
    W "<td width=""20%""><input type=""button"" class=""btn"" style=""width:100%"" value="""_$$^%W1DICT($S($G(%ARG("OPEN")):"SHOWALLORDERS",1:"SHOWOPENORDERSONLY"))_""" onMouseUp=""ShowPage('"_'$G(%ARG("OPEN"))_"')""></td>"
    W "<td style=""font-size:"_$$^W3FSZ(20)_";color:"_$$BGCOLOR^W4CSS_";width:50%"">"
     W $$H2U^%L1FRM($$NAME(WAITER))
     I '$$PAYOPT W " : "_$$^%W1DICT("DAYCLOSING",$ZD(P1DZ,"DD.MM.YY"))
    W "</td>"
    W "<td><input type=""button"" class=""btn"" style=""width:100%;color:brown"" value="""_$$^%W1DICT("MISC")_""" onMouseUp=""Misc()"" ></td>"
    W "<td><input type=""button"" class=""btn"" style=""width:100%;color:red"" value="""_$$^%W1DICT("EXIT")_""" onMouseUp=""BackW()""></td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRWORD2 ;
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" >",!
  W "<tr>",!
   W "<td>"_$$^%W1DICT("ALLORDERS")_"&nbsp;&nbsp;"_$$RKV2(1)_"</td>"
   W "<td>"_$$^%W1DICT("OPENORDERS")_"&nbsp;&nbsp;<span style=""color:red"">"_$$RKV2(2)_"</span></td>"
   W "<td>"_$$^%W1DICT("TOPAY")_"&nbsp;&nbsp;"_$$RKV2(3,2)_"</td>"
   W "<td>"_$$^%W1DICT("PAID")_"&nbsp;&nbsp;"_$$RKV2(4,2)_"</td>"
   W "<td>"_$$^%W1DICT("CREDIT")_"&nbsp;&nbsp;"_$$RKV2(5,2)_"</td>"
   W "<td>"_$$^%W1DICT("TIPS")_"&nbsp;&nbsp;"_$$RKV2(7,2)_"</td>"
   W "<td>"_$$^%W1DICT("BALANCE")_"&nbsp;&nbsp;"_$$RKV2(8,2)_"</td>"
   W "<td>"_$$^%W1DICT("SOADIM")_"&nbsp;&nbsp;"_$$RKV2(9)_"</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRWORD3 ; --- TH OF ORDERS
 N J S J=0
 N N S N="" F  S N=$O(@$$^W4MAIN("VRM")@(WAITER,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S CLOSE=$$^W4CLOSE(N)
 .I $$TSHL^W4HZMST(N)<.5,$$TSHL^W4HZMST(N)>-.5,'$$SHUL^W4HZMST(N),'$$SHULA^W4HZMST(N) S CLOSE=-1
 .I CLOSE'=0,$G(%ARG("OPEN")) Q
 .S J=J+1
 N WDTB S WDTB="96%" I J>6 S WDTB="98%" ; 93
 N LFTB S LFTB=27
 I $$1024^W4WDSCR S LFTB=20
 ;
 ;;W "<div width=""100%"" onMouseDown=""CloseMenu"" align=""center"">",!
 ;;W "<table id=""TblOrdW"" style=""position:absolute;table-layout:fixed;left:"_LFTB_"px;text-align:center"" dir="""_$$^%W1DIR_""" border=""1"" cellpadding=""8"">",!
 ;;W "<tr "
 ;;W " style=""background-color:"_$$FNFG^W4CSS_";"
 ;;W " color:white"""
 ;;W "  >",!
 D PRMHW2
 F J=1:1:$L(PRMHD,";")-1 D
 .W "<th "_$$FIXSTYLE(PRMWD,J)_">"_$$^%W1DICT($P(PRMHD,";",J))_"</th>"
 ;;W "</tr>",!
 ;;W "</table></div>",!
 Q
 ;
 ;
PAYOPT(STAM) 
 N PAYOPT S PAYOPT=$G(%ARG("PAYOPT")) 
 I PAYOPT&($G(@$$^W4PRM@("PAYOPT"))=2) S PAYOPT=2
 Q PAYOPT
 ;
INIT ; 
 D TMPS^W4MENU K @TMPS
 S @TMPS@(1,"RSIZE")=7
 D INITUR^W4MENU(1)
 D KILL^%W1PRM("REPORT"),KILL^W4TMPANS("")
 I $G(%ARG("OPEN"))="",$$NEWPAYOPT S %ARG("OPEN")=1 
 Q 
 ;
NEWPAYOPT() ; 
 I $G(%ARG("PAYOPT"))=2 Q 1
 I $G(@$$^W4PRM@("PAYOPT"))=2 Q 1
 Q 0 
 ;
PRMHW ; 
 S PRMHD=$P($T(P10+1),";",2,50)
 S PRMWD=$P($T(P10+2+$$1024^W4WDSCR),";",2,50)
 ;
 I $$PAYOPT=2 D
 .S PRMHD=$P($T(P12+1),";",2,50)
 .S PRMWD=$P($T(P12+2+$$1024^W4WDSCR),";",2,50)
 Q
 ;
 ;
PRMHW2 ; 
 S PRMHD=$P($T(P20+1),";",2,50)
 S PRMWD=$P($T(P20+2+$$1024^W4WDSCR),";",2,50)
 ;
 I $$PAYOPT=2 D
 .S PRMHD=$P($T(P22+1),";",2,50)
 .S PRMWD=$P($T(P22+2+$$1024^W4WDSCR),";",2,50)
 Q
 ;
INDORD() Q 1 
INDOPORD() Q 2  
INDTSHL() Q 3 
INDSHUL() Q 4 
INDSHULA() Q 5  
INDMZM() Q 6 
INDTIP() Q 7  
INDITRA() Q 8
INDSOAD() Q 9
INDDMSH() Q 10 
INDOPSOAD() Q 11
 ; 
SORD(A) Q $P(A,"\",$$INDORD) 
OPORD(A) Q $P(A,"\",$$INDOPORD)  
TSHL(A) Q $P(A,"\",$$INDTSHL)  
SHUL(A) Q $P(A,"\",$$INDSHUL)  
SHULA(A) Q $P(A,"\",$$INDSHULA)  
MZM(A) Q $P(A,"\",$$INDMZM)  
TIP(A) Q $P(A,"\",$$INDTIP)  
ITRA(A) Q $P(A,"\",$$INDITRA)  
SOAD(A) Q $P(A,"\",$$INDSOAD)  
DMSH(A) Q $P(A,"\",$$INDDMSH)  
OPSOAD(A) Q $P(A,"\",$$INDOPSOAD)  
 ; 
INDOLKTB() Q 1 
INDOTSHL() Q 2 
INDOSHUL() Q 3 
INDOSHULA() Q 4 
INDOMZM() Q 5 
INDOITRA() Q 6 
INDOSOAD() Q 7 
INDOTIP() Q 8
INDODMSH() Q 9 
 ; 
ORDLKTB(A) Q $P(A,"\",$$INDOLKTB) 
ORDTSHL(A) Q P(A,"\",$$INDOTSHL)
ORDSHUL(A) Q $P(A,"\",$$INDOSHUL)
ORDSHULA(A) Q $P(A,"\",$$INDOSHULA)
ORDMZM(A) Q $P(A,"\",$$INDOMZM)
ORDITRA(A) Q $P(A,"\",$$INDOITRA)
ORDSOAD(A) Q $P(A,"\",$$INDOSOAD)
ORDTIP(A) Q $P(A,"\",$$INDOTIP)
ORDDMSH(A) Q $P(A,"\",$$INDODMSH)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLSDAY
W4CLSDAY ; [ 28.12.25 14:24 ] [ 24.12.25 18:45 ] [ 07.12.25 14:47 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4CLSDAY")
 D PUT^%W1PRM("CLSDAY",1)
 I $G(%ARG("DLV")) D PUT^%W1PRM("CLSDLV",1)
 I '$G(JB) Q
 ;
 S DZ=$$^W4DZ
 F DT=DZ+1:1:DZ+120 D TKDAT^W4ETHB2(DT)
 ;
 D TMPS^W4MENU
 ;
 I $$PAYOPT,$G(%ARG("OPEN"))="" S %ARG("OPEN")=1
 ;
 S VP="CLSDAY"
 S GL=$$^W4ORD
 ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 ;
 D ^W4IN
 ;
 I $G(%ARG("WAITER")) G WAITER
 ;
 ;------------------------- WAITERS SCREEN DATA  ---------------------------
 S VRM=$$^W4MAIN("VRM")
 N J S J=0 S WAITER="" F  S WAITER=$O(@VRM@(WAITER)) Q:WAITER=""  I WAITER S J=J+1
 N WDTB S WDTB="100%"
 ;
 ;
 W "<table id=""TblOrdBd"" align=""center"" " 
  I $$PAYOPT=2 W "width=""80%"" "
  W "style=""table-layout:fixed;text-align:center"" "
  W "dir="""_$$^%W1DIR_""" border=""1"" cellpadding=""10"" cellspacing=""1"" "
 W ">",!
 W "<thead class=""hdfix"">",!
 W "<tr>" 
  D PRMHW
  F J=1:1:$L(PRMHD,";")-1 D
  .W "<th "_$$FIXSTYLE(PRMWD,J)_">"_$$^%W1DICT($P(PRMHD,";",J))_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 S NPP=0
 D PRMHW
 ;
 S VRM=$$^W4MAIN("VRM")
 N VRM1 S VRM1=$$^W4MAIN("VRM1") K @VRM1 ; --- MIUN LEFI ITRA 
 K SSUM
 ;
 I $$PAYOPT'=2 D
 .S WAITER="" F  S WAITER=$O(@VRM@(WAITER)) Q:WAITER=""  I WAITER D
 ..N A S A=$G(^(WAITER))
 ..N ITRA S ITRA=$P(A,"\",8) I 'ITRA S ITRA="A"
 ..S @VRM1@(ITRA,WAITER)=A
 .
 .N ITRA S ITRA="" F  S ITRA=$O(@VRM1@(ITRA)) Q:ITRA=""  D
 ..S WAITER="" F  S WAITER=$O(@VRM1@(ITRA,WAITER)) Q:WAITER=""  I WAITER D
 ...S A=$G(^(WAITER))
 ...D TRWAITERS(WAITER,A)
 ; 
 I $$PAYOPT=2 D
 .S WAITER="" F  S WAITER=$O(@VRM@(WAITER)) Q:WAITER=""  I WAITER D
 ..S A=$G(^(WAITER))
 ..N BALANCE S BALANCE=$$ITRA(A) Q:'BALANCE
 ..D TRWAITERS(WAITER,A)
 .
 .W "<tr style=""background-color:yellow;font-weight:bold"">",! 
 . W "<td>&nbsp;</td><td>&nbsp;</td>"
 .
 . N I0 F I0="INDSOAD","INDITRA","INDSHUL" D
 .. X "S I=$$"_I0
 .. N SUM S SUM=$G(SSUM(I0))  
 .. I I0="INDITRA"!(I0="INDSHUL") S SUM=$J(SUM,2,2)
 .. D 
 ... I I0="INDSOAD" D  Q
 .... W "<td><span>"_$G(SSUM("INDOPSOAD"))_" </span>"
 .... W " <span style=""font-weight:normal"">[ "_SUM_" ]</span>"
 .... W "</td>"
 ...
 ... W "<td>"_SUM_"</td>"
 .W "</tr>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "</div>",!
 W "<br /><br /><br />",!
 K @VRM1
END Q
 ;
 ;
RKV(FLD,REG) ;
 I $G(REG)="H",FLD'="" Q $$H2U^%L1FRM(FLD)
 I $G(REG)?1N.N Q $J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 Q FLD
 ;
RKV1(FLD,REG) ;
 I $G(REG)="H",FLD'="" S FLD=$$H2U^%L1FRM(FLD)
 I FLD["::" S FLD=$$^%W1DICT($P(FLD,"::",2))
 I $G(REG)?1N.N S FLD=$J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 N RKV1
 S RKV1="<span style=""font-weight:bold;text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""">"
 S RKV1=RKV1_FLD_"</span>"
 Q RKV1
 ;
RKV2(NOMFLD,REG) ;
 N FLD S FLD=$P($G(@$$^W4MAIN("VRM")@(WAITER)),"\",NOMFLD)
 I $G(REG)="H",FLD'="" S FLD=$$H2U^%L1FRM(FLD)
 I $G(REG)?1N.N S FLD=$J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 N RKV2
 S RKV2="<span style=""font-weight:bold;text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""">"
 S RKV2=RKV2_FLD_"</span>"
 Q RKV2
 ;
SUGT(HZ) ;
 N SUGT S SUGT=""
 I $$MZM^W4HZMST(HZ) S SUGT=$$^W3SHOWTS(1) ;1
 I $$CHK^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W4SHOWTS(HZ,2)
 I $$CA^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W3SHOWTS(3)
 I $$ASR^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W4SHOWTS(HZ,4)
 I $$TL^W4HZMST(HZ) S SUGT=SUGT_"<br>"_$$^W3SHOWTS(5)
 I '$$SHUL^W4HZMST(HZ) D  I 'SUGT,$L(SUGT) S SUGT="<span style=""color:grey"">"_SUGT_"</span>"
 .S SUGT=$$CODTS^W4HZMST(HZ) Q:'SUGT
 .I SUGT=1 S SUGT=$$^%W1DICT("WILLPAYCASH")
 .I SUGT=2 S SUGT=$$^%W1DICT("WILLPAYCHECK")
 .I SUGT=3 S SUGT=$$^%W1DICT("WILLPAYCA")
 .I SUGT=4 S SUGT=$$^%W1DICT("WILLPAYASR")
 Q SUGT
 ;
SUM(WAITER,HZ,RKV) ;
 N ST
 S ST="S S"_RKV_"=$G(S"_RKV_")+$$"_RKV_"^W4HZMST(HZ)"
 X ST
 S ST="S S"_RKV_"(WAITER)=$G(S"_RKV_"(WAITER))+$$"_RKV_"^W4HZMST(HZ)"
 X ST
 Q
 ;
 ;
TRWAITERS(WAITER,A) ;
 I $$DLV,$L(WAITER)=5 Q
 S NPP=NPP+1
 N BALANCE S BALANCE=$$ITRA(A)
 
 I $$PAYOPT=2 D TRWAITERS2(WAITER,A) Q
 D TRWAITERS1(WAITER,A)
 Q
 ;
 ;
TRWAITERS1(WAITER,A) ;
 W "<tr "_$$^W4TOUCH_"=""ShowOrders('"_WAITER_"','"_$S(BALANCE:1,1:0)_"')"" "
  W "style=""background-color:"_$S(WAITER=$G(@$$^W4MAIN("VRM")@("CURW")):"lightyellow",BALANCE:"#eaeaea",1:"white")_";cursor:pointer;color:"_$S(BALANCE:"black",1:"grey")_""" "
 W ">"
  S J=0
  S J=J+1
   W "<td style=""background-color:#fafad2;width:"_$P(PRMWD,";",J)_";text-align:center"">"
   W NPP
  W "</td>"
 
  I $$PAYOPT'=2 S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_">"_WAITER_"</td>"
 
  S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
   W "<span style=""font-size:"_$$^W3FSZ(14)_""">"_$$RKV($$NAME(WAITER),"H")_"</span>"
 W "</td>"
  ;
  N I F I=1:1:2,9,3:1:8 D
 . S J=J+1
 . W "<td "_$$FIXSTYLE(PRMWD,J)_">"
 .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"<b>",1:"")
 .  D
 ..  I I=9 D  Q
 ...  W +$P(A,"\",9)
 ...  I $$PAYOPT,$P(A,"\",11) D
 ....  W " <span style=""color:black;font-weight:bold"">"
 ....   W " [ "_+$P(A,"\",11)_" ]"
 ....  W "</span>"
 ..
 ..  W $$RKV(+$P(A,"\",I),$S(I<3:"",1:2))
 .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"</b>",1:"")
 . W "</td>" 
 ;
 W "</tr>",!
 Q
 ;
 ;
TRWAITERS2(WAITER,A) ; 
 W "<tr "_$$^W4TOUCH_"=""ShowOrders('"_WAITER_"','"_$S(BALANCE:1,1:0)_"')"" "
  W "style=""background-color:"_$S(WAITER=$G(@$$^W4MAIN("VRM")@("CURW")):"lightyellow",BALANCE:"#eaeaea",1:"white")_";cursor:pointer;color:"_$S(BALANCE:"black",1:"grey")_""" "
 W ">"
  S J=0
  S J=J+1
   W "<td style=""background-color:#fafad2;width:"_$P(PRMWD,";",J)_";text-align:center"">"
   W NPP
  W "</td>" S J=J+1
  W "<td "_$$FIXSTYLE(PRMWD,J)_">"
   W "<span style=""font-size:"_$$^W3FSZ(14)_""">"_$$RKV($$NAME(WAITER),"H")_"</span>"
  W "</td>"
  ;;
  N I0 F I0="INDSOAD","INDITRA","INDSHUL" D
  . X "S I=$$"_I0
  . S J=J+1
  . W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"<b>",1:"")
  .  D
  ..  I I=$$INDSOAD D  Q
  ...  W "<span style=""font-weight:bold"">"_+$P(A,"\",$$INDOPSOAD)_"</span>"
  ...  I $P(A,"\",$$INDSOAD) D
  ....  W " <span style=""color:black"">"
  ....   W " [ "_+$P(A,"\",$$INDSOAD)_" ]"
  ....  W "</span>"
  ..  W $$RKV(+$P(A,"\",I),$S(I<3:"",1:2))
  .  W $S((I=$$INDOPORD!(I=$$INDITRA))&$P(A,"\",I):"</b>",1:"")
  . S SSUM(I0)=$G(SSUM(I0))+$P(A,"\",I)
  . W "</td>" 
  S SSUM("INDOPSOAD")=$G(SSUM("INDOPSOAD"))+$P(A,"\",$$INDOPSOAD)
 W "</tr>",!
 Q
 ;
 ;
WAITER ;
 S WAITER=$G(%ARG("WAITER")) Q:'WAITER
 ;
 ; ------------------------- ORDERS OF WAITER ---------------------------------
 ;
 ;;W "<div align="""_$S($$^%W1DIR="LTR":"right",1:"left")_""" onMouseDown=""parent.CloseMenu()"">"
 W "<div align=""center"" onMouseDown=""parent.CloseMenu()"">"
 W "<table id=""TblOrdWbd"" "
  W "style=""table-layout:fixed;text-align:center"" "
  W " dir="""_$$^%W1DIR_""" border=""1"" "
  W "cellpadding=""8"" cellspacing=""1"" "
 W ">",!
 W "<thead class=""hdfix"">",!
 W "<tr>"
  D STRWORD3
 W "</tr>",!
 W "</thead>",!
 ;
 S NPP=0
 D PRMHW2
 ;
 N CLOSE
 S N="" F  S N=$O(@$$^W4MAIN("VRM")@(WAITER,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .D ^W4OPORD(N)
 .S CLOSE=$$^W4CLOSE(N)
 .I $$TSHL^W4HZMST(N)<.5,$$TSHL^W4HZMST(N)>-.5,'$$SHUL^W4HZMST(N),'$$SHULA^W4HZMST(N),'$$DEL^W4DEL(N) S CLOSE=-1
 .I '$$AMOR^W4PRM,CLOSE'=0,$G(%ARG("OPEN")) Q
 .I $$AMOR^W4PRM,CLOSE'=0,CLOSE'=-1,$G(%ARG("OPEN")) Q
 .
 .S NPP=NPP+1,J=0
 .
 .W "<tr style=""cursor:pointer;height:40px;"
 . W "background-color:"_$S(N=$G(@$$^W4MAIN("VRM")@("CUR")):"lightyellow",$$^W4HZMH(N):"96CE98",CLOSE>0:"white",CLOSE=-1:"lightgreen",1:"#eaeaea")
 .  W ";color:"_$S('$$ORDITRA(A):"grey",1:"black")_""" "
 . W ">",! 
 . S J=J+1 D
 .. W "<td style=""background-color:#fafad2;width:"_$P(PRMWD,";",1)_";text-align:center"">"
 ..  W $$RKV1(NPP)
 .. W "</td>",!
 .
 .S J=J+1 D
 ..W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">"
 .. W $$RKV1(N) ; -- HAZMANA
 ..
 .. I $$HZM^W4MSL(N) D
 ... D BRSPAN
 ...  W $$H2U^%L1FRM($$KTVM^W4HZMST(N))
 ... W "</span>",!
 ... W "<span style=""color:red;font-size:"_$$^W3FSZ(8)_""">"
 ...  W $$SHAA^W4HZMST(N)
 ... W "</span>",!
 ..W "</td>",!
 .
 .N I S J=J+1,I=1
 .W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">" ; -- SHULHAN OR LAKUAH NMB
 . N LK,LK1 S LK=$$ORDLKTB(A),LK1=""
 . W $$RKV1(LK)
 . I $$^W4MSL(LK) D
 . . D BRSPAN W $$H2U^%L1FRM($$NAME^W4HZMST(N))
 . . W "</span>",!
 .W "</td>"
 .
 .S J=J+1
 .W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">" ; -- SOADIM
 . N SOAD S SOAD=$$ORDSOAD(A)
 . I $$HZM^W4MSL(N),'$$MSLSD^W4PRM S SOAD=$S($$SDMSL^W4PRM:1,1:0)
 . W $$RKV1(SOAD)
 .W "</td>"
 .
 .F I=2:1:4 D
 ..S J=J+1
 ..W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">"
 .. W $$RKV1($P(A,"\",I),$S(I=1:"",1:2))
 ..W "</td>"
 .
 .S J=J+1 D
 ..W "<td id=""paid"_N_""" "_$$FIXSTYLE(PRMWD,J)_" align=""center"" >"
 ..D
 ... N SUGT S SUGT=$P(A,"\",10)
 ...
 ... I $L(WAITER)<5,SUGT<2,'$$^W4HZMH(N),'$$DELORD^W4DLVORD(N),'$$^W4CLOSE(N),$$ITRA^W4HZMST(N),WAITER'=9999 D  Q
 .... I $$DT(N)>$$^W4DZ Q
 .... W "<input id=""paycash"_N_""" type=""button"" value="""_$$^%W1DICT("PAYCASH")_""" "
 .... W " style=""font-size:"_$$^W3FSZ(16)_""" "
 .... W " "_$$^W4TOUCH_"=""PayCash('"_N_"')"" />"
 ...
 ... W $$RKV1(SUGT)
 ..W "</td>" ; -- SUG TASHLUM
 .
 .S J=J+1 D
 ..W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">"
 .. W $$RKV1($$ORDITRA(A),2)
 ..W "</td>"
 .
 .I $$PAYOPT=1 D
 ..W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">"
 .. W $$RKV1($$AHTIP(N))
 ..W "</td>"
 .
 .D
 ..I CLOSE=-1 D  Q
 ...S J=J+1
 ...W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_">&nbsp;</td>",!
 ..
 ..N BTNVL S BTNVL=$S(CLOSE:$$^%W1DICT("PAYMENTDETAILS"),1:$$^%W1DICT("PAY"))
 ..S J=J+1 D
 ...W "<td "_$$FIXSTYLE(PRMWD,J)_" align=""center"" >"
 ... D 
 ... .I $$^W4HZMH(N) Q
 ... .W " <input type=""button"" style=""width:100%;height:40px"
 ... .W ";font-size:"_$$^W3FSZ($S(CLOSE=0:14,1:12))_""" "
 ... .W " value="""_BTNVL_""" "
 ... .W " onClick=""ShowPayments('"_N_"')""/>"
 ...W "</td>",!
 .W "</tr>",!
 ;
 I N="" S N="END"
 ;
 S @TMPS@(1,"LAST")=N
 ;
 W "</table>",!
 W "<br>",!
 ;
 I 'NPP,$G(%ARG("OPEN")) D
 .W "<script>",!
 .W " MsgI('NOTOPENORDERS')",!
 .W "</script>",!
 ;
 W "</div>",!
 W "<br /><br /><br />",!
 Q
 ;
 ;
SETCUR(ORD) ;
 Q:$D(@$$^W4MAIN("VRM"))<10
 S @$$^W4MAIN("VRM")@("CUR")=ORD
 Q
 ;
SETCURW(WAITER) ;
 Q:$D(@$$^W4MAIN("VRM"))<10
 S @$$^W4MAIN("VRM")@("CURW")=WAITER
 Q
 ;
 ;
BRSPAN W "<br><span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"
 Q
 ;
 ;
KB ;
 D ^W4IN
 D CRVRM(P1DZ)
 I $G(%ARG("WAITER")) G KBW
 ;
 ;-------------------------------- WAITERS HEADER SCREEN ---------------------
 D KILL^%W1PRM("NMB")
 D KILL^%W1PRM("HZM")
 ;
 I $$GET^%W1PRM("DLVCSR")?1N D
 .D KILL^%W1PRM("DLVCSR0")
 .D PUT^%W1PRM("DLVCSR0",$$GET^%W1PRM("DLVCSR"))
 .D KILL^%W1PRM("DLVCSR")
 ;
 W "<div align=""center"">",! ; -- TOP
  D STRHD1 
  I '$$PAYOPT D STRHD2
 W "</div>",!
 ;
 I '$$PAYOPT D XYZ
 ;
 Q
 ;
 ;
KBW ; --------------- ORDERS OF WAITER HEADER -----------------
 S WAITER=$G(%ARG("WAITER")) Q:'WAITER
 ;
 W "<div align=""center"" onMouseDown=""parent.CloseMenu()"" >",!
  D STRWORD1; -- header & buttons
  I '$$PAYOPT D STRWORD2; --- statistika
  ;;D STRWORD3 ;--- <th>
 W "</div>",!
 Q
 ;
 ;
SHOWORD(HZ) ;
 N VIEW S VIEW=0
 I $$PAYOPT S VIEW=1 
 Q " "_$$^W4TOUCH_"=""ShowOrd('"_HZ_"','"_VIEW_"')"""
 ;
 ;
CRVRM(DT) ;
 N CUR,CURW,I
 S CUR=$$TOT("CUR")
 S CURW=$$TOT("CURW")
 ;
 K SORDERS,SOPORD
 F I="TSHL","SHUL","SHULA","MZM","ITRA","SOAD","TIP","DMSH" N @("S"_I)
 ;
 N N S N="" F  S N=$O(@$$^W4GL("P1H")@(DT,N)) Q:N=""  D MVDT(DT,N)
 ;
 I $$Z24^W4PRM,$G(P1DZ),DT=P1DZ D
 .K @$$^W4MAIN("VRMNP")
 .N DTL S DTL=$O(@$$^W4GL("P1H")@(DT),-1)
 .I DTL D
 ..N N S N="" F  S N=$O(@$$^W4GL("P1H")@(DTL,N)) Q:N=""  D
 ...I $G(^(N))'[",Z" D ^W4MVDTL(P1DZ,DTL,N)
 ;
 K @$$^W4MAIN("VRM")
 N N S N="" F  S N=$O(@$$^W4GL("P1H")@(DT,N)) Q:N=""  D
 .S P1HHZ=$G(^(N))
 .
 .I $$PAYOPT,$$^W4HZMH(N) Q 
 .
 .I '$$Z24^W4PRM,$$SIGNZ^W4SUM(DT,N),DT=$$^W4DZ D  Q
 ..K @$$^W4MAIN("VRM")
 ..K SORDERS,SOPORD
 ..N I F I="TSHL","SHUL","SHULA","MZM","ITRA","SOAD","TIP","DMSH","OPSOAD" K @("S"_I)
 .
 .I $$Z24^W4PRM,P1HHZ[",Z" Q
 .
 .;;I $$PAYOPT=2,P1HHZ[",Y",DT=$$^W4DZ Q
 .I P1HHZ[",Y",DT=$$^W4DZ Q
 .
 .S NMB=$$NMB^W4HZMST(N)
 .S SUGT=$$SUGT(N)
 .S WAITER=$S('$$^W4MSL(NMB):$$MKBL^W4HZMST(N),'$$PSL^W4HZMST(N):9999,1:$$PSL^W4HZMST(N))
 .;
 .Q:'WAITER
 .
 .S SORDERS=$G(SORDERS)+1
 .S @$$^W4MAIN("VRM")@("SORDERS")=$G(@$$^W4MAIN("VRM")@("SORDERS"))+1
 .S SORDERS(WAITER)=$G(SORDERS(WAITER))+1
 .I $$HZM^W4MSD(N) S SORDERS(WAITER,"SOAD")=$G(SORDERS(WAITER,"SOAD"))+$$SOAD^W4HZMST(N)
 .I $$ITRA^W4HZMST(N),'$$^W4CLOSE(N) D
 ..S SOPORD=$G(SOPORD)+1
 ..S @$$^W4MAIN("VRM")@("SOPORD")=$G(@$$^W4MAIN("VRM")@("SOPORD"))+1
 ..S SOPORD(WAITER)=$G(SOPORD(WAITER))+1
 ..I $$HZM^W4MSD(N) S SOPORD(WAITER,"SOAD")=$G(SOPORD(WAITER,"SOAD"))+$$SOAD^W4HZMST(N)
 .
 .;--------------- RAMA MELZARIM - HAZMANOT -----------------
 .S @$$^W4MAIN("VRM")@(WAITER,N)=NMB
 .N I F I="TSHL","SHUL","SHULA","MZM","ITRA","SOAD","TIP","DMSH" D
 ..D SUM(WAITER,N,I) ; ------> @I@(WAITER), "S"_RKV
 ..N RKV X "S RKV=$$"_I_"^W4HZMST(N)"
 ..S @$$^W4MAIN("VRM")@("S"_I)=$G(@$$^W4MAIN("VRM")@("S"_I))+RKV
 ..S @$$^W4MAIN("VRM")@(WAITER,N)=$G(@$$^W4MAIN("VRM")@(WAITER,N))_"\"_RKV
 .
 .S @$$^W4MAIN("VRM")@(WAITER,N)=$G(@$$^W4MAIN("VRM")@(WAITER,N))_"\"_$$SUGT(N)
 .S @$$^W4MAIN("VRM")@(WAITER,N)=$G(@$$^W4MAIN("VRM")@(WAITER,N))_"\"_$$AHTIP(N)
 ;
 ;--------------- RAMA MELZARIM ---------------
 S WAITER="" F  S WAITER=$O(STSHL(WAITER)) Q:WAITER=""  D
 .N I F I="SORDERS","SOPORD","STSHL","SSHUL","SSHULA","SMZM","STIP","SITRA","SSOAD","SDMSH" D
 ..I $$PAYOPT,'$G(SITRA) Q
 ..S @$$^W4MAIN("VRM")@(WAITER)=$G(@$$^W4MAIN("VRM")@(WAITER))_$G(@I@(WAITER))_"\"
 .
 .S @$$^W4MAIN("VRM")@(WAITER)=$G(@$$^W4MAIN("VRM")@(WAITER))_$G(SOPORD(WAITER,"SOAD"))
 ;
 I CUR D SETCUR(CUR)
 I CURW D SETCURW(CURW)
 Q
 ;
TOT(RKV) ;
 Q:$G(RKV) ""
 Q:$G(RKV)="" ""
 Q $G(@$$^W4MAIN("VRM")@(RKV))
 ;
FIXSTYLE(PRMWD,J) ;
 N WD S WD=$P(PRMWD,";",J)
 S WD=$$SPA^%L1FRM(WD)
 I $$^W4TABLET=1 S WD=WD*$S($G(%ARG("WAITER")):1.33,1:1.35)
 Q " style=""width:"_WD_"px"""
 ;
 ;
P10 ;
 ;NPP ;WAITERNUMBER;WAITERNAME;ALLORDERS;OPENORDERS;GUESTS;TOPAY;PAID;CREDIT;CASH;TIP;BALANCE;
 ; 40 ;    90    ;   300    ;  105 ;   105     ;   100  ; 105 ; 105; 105  ;105 ;105;  105  ;
 ; 30 ;    55    ;   190    ;  55  ;    55     ;    60  ;  55 ;  55;  55  ; 55 ; 55;   55  ;
P12 ;
 ;NPP;WAITERNAME;GUESTS;BALANCE;PAID;
 ; 50 ;   470   ;  120 ;  150  ; 145 ;
 ; 35 ;   280   ;  90  ;  80   ;  80 ;
P20 ;
 ;NPP;ORDER;TABLENUMBER;GUESTS;TOPAY;PAID;CREDIT;KINDOFPAYMENT;BALANCE;PAY;
 ; 40 ; 145 ;    155    ;  70 ; 165 ; 165;  165 ;     165     ;  165  ;165;
 ; 30 ; 95  ;    95     ;  50 ;  95 ;  95;  95  ;     95      ;  95   ; 95;
P21 ;
 ;NPP;ORDER;TABLENUMBER;GUESTS;TOPAY;PAID;CREDIT;KINDOFPAYMENT;BALANCE;AHTIP;PAY;
 ; 40 ; 145 ;    155    ;  70 ; 165 ; 165;  165 ;     165     ;  165  ; 165 ;165;
 ; 30 ; 95  ;    95     ;  50 ;  95 ;  95;  95  ;     95      ;  95   ;  95 ; 95;
P22 ;
 ;NPP;ORDER;TABLENUMBER;GUESTS;TOPAY;PAID;CREDIT;KINDOFPAYMENT;BALANCE;AHTIP;PAY;
 ; 40 ; 145 ;    155    ;  70 ; 165 ; 165;  165 ;     165     ;  165  ; 165 ;165;
 ; 30 ;  95 ;     95    ;  50 ;  95 ;  95;   95 ;      95     ;   95  ;  95 ; 95;
 Q  ;
 ;
RESTDLV ;
 I $$GET^%W1PRM("DLVCSR0")?1N D
 .D PUT^%W1PRM("DLVCSR",$$GET^%W1PRM("DLVCSR0"))
 .D KILL^%W1PRM("DLVCSR0")
 Q
 ;
NAME(WAITER) ;
  I WAITER=-1 Q $$^%W1DICT("CUSTOMERSTAKEAWAY")
  I WAITER=9999 Q $$^%W1DICT("INWAITING")
  I $L(WAITER)<5 Q $G(@$$^W4GL("P1SL")@(WAITER))
  Q $$^W4NAME(WAITER)
  ;
MVDT(DT,N) ;
 N DTH S DTH=$$^%L1DC($$TRH^W4HZMST(N),3)
 I $$^W4SHAAZ,$$SHAA^W4HZMST(N)<$$SHAAZ^W4PRM S DTH=DTH-1
 Q:DTH'>DT
 ;
 I $$MSL^W4MSL(N),DTH>$$^W4DZ,'$$^W4CLOSE(N),$$ITRA^W4HZMST(N)>.4!($$ITRA^W4HZMST(N)<-.4) D
 .D PUT^W4HZMST(N,"DATK",$ZD(DTH,"DD.MM.YY"))
 .D ^W4MVP1H(DT,DTH,N)
 Q
 ;
 ;
DLV(STAM) ;
 Q $$GETP^%W1PRM("CLSDLV")
 ;
DT(HZM) ; 
 Q $$DT^W4PAYFN(HZM)
 ;
CLOSECASH(STAM) ;
 N (JB,%ARG,%REM)
 S DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  D
 .I $$^W4CLOSE(N) Q
 .I $$^W4HZMH(N) Q
 .N DT S DT=$$^%L1DC($$TRH^W4HZMST(N),3)
 .N SHAA S SHAA=$$SHAA^W4HZMST(N)
 .I DT>(DZ+1) Q
 .I DT=(DZ+1),SHAA>$$SHAAZ^W4PRM Q
 .I $$DEL^W4DEL(N) Q
 .S CODTS=$$CODTS^W4HZMST(N) Q:CODTS>1
 .D SGMZAUTO^W4TSAUTO(N)
 Q 1
 ;
 ; 
XYZ ;
 N TOP S TOP=720
 W "<div id=""XYZ"" align=""center"" style=""position:absolute;top:"_$$^W4KF(TOP)_";left:10%;width:80%"">",!
  W "<table align=""center"" width=""80%"" dir="""_$$^%W1DIR_""" cellpadding=""6px"" border=""0"">",!
   W "<tr>",!
    W "<td align=""center"">",!
     W "<input type=""button"" class=""btn"" style=""width:120px"" value="""_$$^%W1DICT("REPORTX")_""" "_$$^W4TOUCH_"=""ReportX()"" >"
    W "</td>",!
    I '$G(@$$^W4PRM@("NODOCHY")) D
    .W "<td align=""center"">",!
    . W "<input type=""button"" class=""btn"" style=""width:120px"" value="""_$$^%W1DICT("REPORTY")_""" "_$$^W4TOUCH_"=""ReportY()"" >"
    .W "</td>",!
    D
    .I $$SF^W4PRM,$H'>$$^W4DZ D  Q 
    ..W "<td align=""center"" >",!
    .. W "<input type=""button"" class=""btn"" value="""_$$^%W1DICT("WORKERSCLOSING")_""" "_$$^W4TOUCH_"=""SgOvd()"" >"
    ..W "</td>",!
    .
    .W "<td align=""center"" >",!
    . W "<input type=""button"" class=""btn"" style=""width:120px"" value="""_$$^%W1DICT("REPORTZ")_""" "_$$^W4TOUCH_"=""ReportZ()"" >"
    .W "</td>",!
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
STRHD1 ;
 W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";text-align:center;width:"_(98+$$1024^W4WDSCR)_"%"" dir="""_$$^%W1DIR_""" >"
  W "<tr>"
    W "<td>&nbsp;</td>"
    W "<td style=""font-size:"_$$^W3FSZ(20)_";color:"_$$BGCOLOR^W4CSS_""">"
    ;
    I '$$PAYOPT D
    . W $$^%W1DICT("DAYCLOSING",$ZD(P1DZ,"DD.MM.YY"))
    I $$PAYOPT D
    . W $$^%W1DICT("CLOSINGORDERS")
    W "</td>"
    ;
    I '$$PAYOPT D
    .W "<td>&nbsp;</td>"
    .W "<td><input type=""button"" class=""btn"" style=""width:100%;color:red"" value="""_$$^%W1DICT("EXIT")_""" "_$$^W4TOUCH_"=""Back()""></td>"
    ;
    I $$PAYOPT W "<td>&nbsp</td>"
     ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRHD2 ;
 W "<table dir="""_$$^%W1DIR_""" width=""97%"" style=""font-size:"_$$^W3FSZ(12)_""" >",!
  W "<tr>",!
   W "<td>"_$$^%W1DICT("TOPAY")_"&nbsp;&nbsp;"_$$RKV1($$TOT("STSHL"),2)_"</td>"
   W "<td>"_$$^%W1DICT("PAID")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SSHUL"),2)_"</td>"
   W "<td>"_$$^%W1DICT("CREDIT")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SSHULA"),2)_"</td>"
   I '$$SUPER^W3PRM,'$$NOTIPALL^W4PRM W "<td>"_$$^%W1DICT("TIPS")_"&nbsp;&nbsp;"_$$RKV1($$TOT("STIP"),2)_"</td>"
   W "<td>"_$$^%W1DICT("BALANCE")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SITRA"),2)_"</td>"
   W "<td>"_$$^%W1DICT("ALLORDERS")_"&nbsp;&nbsp;"_$$RKV1($$TOT("SORDERS"))_"</td>"
   W "<td>"_$$^%W1DICT("OPENORDERS")_"&nbsp;&nbsp;<span style=""color:red"">"_$$RKV1($$TOT("SOPORD"))_"</span></td>"
   W "<td>"_$$^%W1DICT("SOADIM")_"&nbsp;&nbsp;"_$$RKV1($$TOT("OPSOAD"))_"</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRWORD1 ;
 W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";text-align:center;width:98%"" dir="""_$$^%W1DIR_""" >"
  W "<tr>"
    W "<td width=""20%""><input type=""button"" class=""btn"" style=""width:100%"" value="""_$$^%W1DICT($S($G(%ARG("OPEN")):"SHOWALLORDERS",1:"SHOWOPENORDERSONLY"))_""" "_$$^W4TOUCH_"=""ShowPage('"_'$G(%ARG("OPEN"))_"')""></td>"
    W "<td style=""font-size:"_$$^W3FSZ(20)_";color:"_$$BGCOLOR^W4CSS_";width:50%"">"
     W $$H2U^%L1FRM($$NAME(WAITER))
     I '$$PAYOPT W " : "_$$^%W1DICT("DAYCLOSING",$ZD(P1DZ,"DD.MM.YY"))
    W "</td>"
    W "<td><input type=""button"" class=""btn"" style=""width:100%;color:brown"" value="""_$$^%W1DICT("MISC")_""" "_$$^W4TOUCH_"=""Misc()"" ></td>"
    W "<td><input type=""button"" class=""btn"" style=""width:100%;color:red"" value="""_$$^%W1DICT("EXIT")_""" "_$$^W4TOUCH_"=""BackW()""></td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRWORD2 ;
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" >",!
  W "<tr>",!
   W "<td>"_$$^%W1DICT("ALLORDERS")_"&nbsp;&nbsp;"_$$RKV2(1)_"</td>"
   W "<td>"_$$^%W1DICT("OPENORDERS")_"&nbsp;&nbsp;<span style=""color:red"">"_$$RKV2(2)_"</span></td>"
   W "<td>"_$$^%W1DICT("TOPAY")_"&nbsp;&nbsp;"_$$RKV2(3,2)_"</td>"
   W "<td>"_$$^%W1DICT("PAID")_"&nbsp;&nbsp;"_$$RKV2(4,2)_"</td>"
   W "<td>"_$$^%W1DICT("CREDIT")_"&nbsp;&nbsp;"_$$RKV2(5,2)_"</td>"
   W "<td>"_$$^%W1DICT("TIPS")_"&nbsp;&nbsp;"_$$RKV2(7,2)_"</td>"
   W "<td>"_$$^%W1DICT("BALANCE")_"&nbsp;&nbsp;"_$$RKV2(8,2)_"</td>"
   W "<td>"_$$^%W1DICT("SOADIM")_"&nbsp;&nbsp;"_$$RKV2(9)_"</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
STRWORD3 ; --- TH OF ORDERS
 N J S J=0
 N N S N="" F  S N=$O(@$$^W4MAIN("VRM")@(WAITER,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S CLOSE=$$^W4CLOSE(N)
 .I $$TSHL^W4HZMST(N)<.5,$$TSHL^W4HZMST(N)>-.5,'$$SHUL^W4HZMST(N),'$$SHULA^W4HZMST(N) S CLOSE=-1
 .I '$$AMOR^W4PRM,CLOSE'=0,$G(%ARG("OPEN")) Q
 .I $$AMOR^W4PRM,CLOSE'=0,CLOSE'=-1,$G(%ARG("OPEN")) Q
 .S J=J+1
 N WDTB S WDTB="96%" I J>6 S WDTB="98%" ; 93
 N LFTB S LFTB=27
 I $$1024^W4WDSCR S LFTB=20
 ;
 D PRMHW2
 F J=1:1:$L(PRMHD,";")-1 D
 .W "<th "_$$FIXSTYLE(PRMWD,J)_">"_$$^%W1DICT($P(PRMHD,";",J))_"</th>"
 ;;W "</tr>",!
 ;;W "</table></div>",!
 Q
 ;
 ;
PAYOPT(STAM) 
 N PAYOPT S PAYOPT=$G(%ARG("PAYOPT")) 
 I PAYOPT&($G(@$$^W4PRM@("PAYOPT"))=2) S PAYOPT=2
 Q PAYOPT
 ;
INIT ; 
 D TMPS^W4MENU K @TMPS
 S @TMPS@(1,"RSIZE")=7
 D INITUR^W4MENU(1)
 D KILL^%W1PRM("REPORT"),KILL^W4TMPANS("")
 I $G(%ARG("OPEN"))="",$$NEWPAYOPT S %ARG("OPEN")=1 
 Q 
 ;
NEWPAYOPT() ; 
 I $G(%ARG("PAYOPT"))=2 Q 1
 I $G(@$$^W4PRM@("PAYOPT"))=2 Q 1
 Q 0 
 ;
PRMHW ; 
 S PRMHD=$P($T(P10+1),";",2,50)
 S PRMWD=$P($T(P10+2+$$1024^W4WDSCR),";",2,50)
 ;
 I $$PAYOPT=2 D
 .S PRMHD=$P($T(P12+1),";",2,50)
 .S PRMWD=$P($T(P12+2+$$1024^W4WDSCR),";",2,50)
 Q
 ;
 ;
PRMHW2 ; 
 S PRMHD=$P($T(P20+1),";",2,50)
 S PRMWD=$P($T(P20+2+$$1024^W4WDSCR),";",2,50)
 ;
 I $$PAYOPT=1 D
 .S PRMHD=$P($T(P21+1),";",2,50)
 .S PRMWD=$P($T(P21+2+$$1024^W4WDSCR),";",2,50)
 ;
 I $$PAYOPT=2 D
 .S PRMHD=$P($T(P22+1),";",2,50)
 .S PRMWD=$P($T(P22+2+$$1024^W4WDSCR),";",2,50)
 Q
 ;
AHTIP(HZ) ;
 N TIP,AHTIP S TIP=$$TIP^W4HZMST(HZ)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZ)
 I 'TSHL Q ""
 S AHTIP=$J(TIP/TSHL*100,2,2)
 I AHTIP Q AHTIP_"%"
 Q ""
 ;
INDORD() Q 1 
INDOPORD() Q 2  
INDTSHL() Q 3 
INDSHUL() Q 4 
INDSHULA() Q 5  
INDMZM() Q 6 
INDTIP() Q 7  
INDITRA() Q 8
INDSOAD() Q 9
INDDMSH() Q 10 
INDOPSOAD() Q 11
 ; 
SORD(A) Q $P(A,"\",$$INDORD) 
OPORD(A) Q $P(A,"\",$$INDOPORD)  
TSHL(A) Q $P(A,"\",$$INDTSHL)  
SHUL(A) Q $P(A,"\",$$INDSHUL)  
SHULA(A) Q $P(A,"\",$$INDSHULA)  
MZM(A) Q $P(A,"\",$$INDMZM)  
TIP(A) Q $P(A,"\",$$INDTIP)  
ITRA(A) Q $P(A,"\",$$INDITRA)  
SOAD(A) Q $P(A,"\",$$INDSOAD)  
DMSH(A) Q $P(A,"\",$$INDDMSH)  
OPSOAD(A) Q $P(A,"\",$$INDOPSOAD)  
 ; 
INDOLKTB() Q 1 
INDOTSHL() Q 2 
INDOSHUL() Q 3 
INDOSHULA() Q 4 
INDOMZM() Q 5 
INDOITRA() Q 6 
INDOSOAD() Q 7 
INDOTIP() Q 8
INDODMSH() Q 9 
 ; 
ORDLKTB(A) Q $P(A,"\",$$INDOLKTB) 
ORDTSHL(A) Q P(A,"\",$$INDOTSHL)
ORDSHUL(A) Q $P(A,"\",$$INDOSHUL)
ORDSHULA(A) Q $P(A,"\",$$INDOSHULA)
ORDMZM(A) Q $P(A,"\",$$INDOMZM)
ORDITRA(A) Q $P(A,"\",$$INDOITRA)
ORDSOAD(A) Q $P(A,"\",$$INDOSOAD)
ORDTIP(A) Q $P(A,"\",$$INDOTIP)
ORDDMSH(A) Q $P(A,"\",$$INDODMSH)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CLWTXT
W4CLWTXT(TXT) ; [ 02.01.22 16:17 ] [ 
 S TXT=$G(TXT)
 N FLD
 N RZD S RZD="~"
 N J F J=1:1:$L(TXT,RZD) D
 .S FLD=$P(TXT,RZD,J)
 .I $$HB(FLD) D
 ..S FLD=$$CLWEB^%L1FRM(FLD)
 ..S $P(TXT,RZD,J)=FLD
 Q TXT
 ;
HB(FLD) ;
 N OK S OK=0
 N NB S NB="""#\'&=;:,%"
 N K F K=1:1:$L(FLD) D  Q:OK
 .N SMB S SMB=$E(FLD,K)
 .I $A(SMB)>95,$A(SMB)<123 S OK=1 Q
 .I NB[SMB,$L(SMB) S OK=1 Q
 Q OK
 
 
 
 
 
 

W4CMBBOX
W4CMBBOX(TO,PRM) ; [ 13.06.23 16:54 ] [ 30.05.22 13:27 ] [ 17.05.22 05:01 ] 
 N (JB,%ARG,TO,PRM)
 N TMP,COLST
 D TMP
 S TO=$P(TO,";")
 S CUR=$G(@TMP@(TO))
 ;;S ^AA("W4CMBBOX",TO,"CUR")=CUR
 ;;S ^AA("W4CMBBOX",TO,"PRM")=PRM
 ;
 D PUT^%W1PRM("CMBBOXSH"_TO,+CUR)
 D PUT^%W1PRM("CMBBOXPRM"_TO,PRM)
 D INIT
 D ARG($G(PRM))
 ;;M ^AA("CMBBOX",TO,"ARG")=%ARG
 ;
 S COLST=$$COLST
 ;
 W "<table class=""w4cmbbox"" id=""divcmbbox"_TO_""" "
 W " cellpadding=""10"" cellspacing=""0"" "
 W "border=""0"" "
 W "style=""display:none;width:"_$$WIDTH_""" " 
 W "dir="""_$$^%W1DIR_""" >",!
 W $$CONT(TO_";;"_PRM) 
 W "</table>",!
 ;
 ;;D PUT^%W1PRM("CMBBOXSH"_TO,1)
 Q  ;
 ; 
 ;
CONT(TO)
 N TMP D TMP
 ;;S ^AA("W4CMBBOX-CONT","TO")=TO
 N DOWN S DOWN=$P(TO,";",2)
 N PRM S PRM=$P(TO,";",3)
 S TO=$P(TO,";")
 ;;S ^AA("W4CMBBOX-CONT","PRM")=PRM
 I PRM'?.P,PRM'["undefined" D PUT^%W1PRM("CMBBOXPRM"_TO,PRM)
 S PRM=$$GETP^%W1PRM("CMBBOXPRM"_TO)
 D ARG(PRM)
 ;
 N IND S IND=$G(@TMP@(TO))
 ;
 N COLST S COLST=$$COLST
 N ST S ST=""
 I $G(DOWN) D PUT^%W1PRM("CMBBOXSH"_TO,$$GETP^%W1PRM("CMBBOXSH"_TO)+1)
 I '$G(DOWN) D PUT^%W1PRM("CMBBOXSH"_TO,$$GETP^%W1PRM("CMBBOXSH"_TO)-1)
 ;
 N BG S BG=+$$GETP^%W1PRM("CMBBOXSH"_TO)
 I BG<0 S BG=0
 N N,VL
 I BG>0,$D(@TMP@(TO,BG-1)) D
 .S ST=ST_$$ARROW("up")
 I BG'>0!'$D(@TMP@(TO,BG-1)) D
 .S ST=ST_$$ARROW("")
 ;
 S N=BG-1 F I=1:1:COLST S N=$O(@TMP@(TO,N)) Q:N=""  D
 .S VL=$$H2U^%L1FRM($G(^(N)))
 .S ST=ST_"<tr "_$$^W4TOUCH_"=""ClickCmbBox(this,'"_TO_"','"_N_"','"_$$PROC(N)_"')""  "
 . I N=0 S ST=ST_"class=""tr0"" " 
 . S ST=ST_">"
 . S ST=ST_"<td width="""_$$WIDTH_""" "
 . I N,N=IND S ST=ST_" style=""text-decoration:underline"" "
 . S ST=ST_">"_VL_"</td></tr>"
 ;
 I N,$D(@TMP@(TO,N+1)) S ST=ST_$$ARROW("down")
 I N,'$D(@TMP@(TO,N+1)) S ST=ST_$$ARROW("")
 ;;S ^AA("W4CMBBOX-IND","ST")=ST
 Q ST
 ;
 ;
TMP ;
 S TMP=$$^W4MAIN("TMPBOX")
 Q
 ;
INIT ;
 Q
 D TMP
 S @TMP@(1)="``` `````"
 S @TMP@(2)="aaaaa aaa"
 S @TMP@(3)="bbbb bbb"
 S @TMP@(4)="ccccc ccc"
 S @TMP@(5)="ddddd ddd"
 S @TMP@(6)="eeeee eee"
 S @TMP@(7)="hhhhhh hhh"
 S @TMP@(8)="ggggg ggg"
 Q
 ;
COLST() ;
 N COLST
 I $G(%ARG("COLST")) D  Q COLST
 .S COLST=$G(%ARG("COLST"))
 .D PUT^%W1PRM("CMBBOXCOLST"_TO,COLST)
 ;
 I $$GETP^%W1PRM("CMBBOXCOLST"_TO) Q $$GETP^%W1PRM("CMBBOXCOLST"_TO) 
 ;
 S COLST=5
 D PUT^%W1PRM("CMBBOXCOLST"_TO,COLST)
 Q COLST
 ;
 ;
ARROW(PRM) ;
 N ST
 S ST="<tr id=""trcmb"_PRM_""" colspan=""2"">"
 S ST=ST_"<td id="""_TO_"cmb"_PRM_""" "
 S ST=ST_" width="""_$$WIDTH_""" "
 I $G(PRM)="" S ST=ST_">&nbsp;</td></tr>"  Q ST
 ;
 S ST=ST_$$^W4TOUCH_"=""ShowComb('"_TO_"','"_$S(PRM="down":1,1:0)_"')"" "
 S ST=ST_" onMouseDown=""MouseDownComb('"_TO_"','"_$S(PRM="down":1,1:0)_"')"" "
 S ST=ST_">"
 S ST=ST_"<img src=""w4boncmb"_PRM_".png"" >"
 S ST=ST_"</td></tr>"
 Q ST
 ;
 ;
WIDTH() ;
 I $L($G(%ARG("CMBBOXWIDTH"))) Q %ARG("CMBBOXWIDTH")
 Q "200px"
 ;
BORDER() ;
 I $L($G(%ARG("CMBBOXBORDER"))) Q %ARG("CMBBOXBORDER")
 Q "2px solid #b8cbef"
 ;
FONTSIZE() ;
 I $G(%ARG("CMBBOXFSZ")) Q %ARG("CMBBOXFSZ")
 I $$OPENHEBREW^W4BONCSS Q "20px"
 Q "26px"
 ;
PADDING()
 I $G(%ARG("CMBBOXPADDING")) Q %ARG("CMBBOXPADDING")
 Q "15"
 ;
LINEHEIGHT()
 I $G(%ARG("CMBBOXLINEHEIGHT")) Q %ARG("CMBBOXLINEHEIGHT")
 I $$OPENHEBREW^W4BONCSS Q "26px"
 Q "30"
 ;
HEIGHTARROW()
 I $G(%ARG("CMBBOXHEIGHTARROW")) Q %ARG("CMBBOXHEIGHTARROW")
 Q "35"
 ;
FONTFAMILY()
 I $$^W4ELPOS Q $$FONTFM^W3CSS
 Q "font-family: 'otzar'"
 ;
BG() ;
 I $L($G(%ARG("CMBBOXBG"))) Q %ARG("CMBBOXBG")
 Q "white"
 ;
BGARROW() ;
 I $L($G(%ARG("CMBBOXBGARROW"))) Q %ARG("CMBBOXBGARROW")
 Q "lightgrey"
 ;
ARG(TX) ;
 N N S N="" F  S N=$O(%ARG(N)) Q:N=""  I $E(N,1,6)="CMBBOX" K %ARG(N)
 N I,COUP,A,B F I=1:1:$L(TX,"&") D
 .S COUP=$P(TX,"&",I)
 .S A=$P(COUP,"=")
 .S B=$P(COUP,"=",2) 
 .I $E(A)?1U S %ARG("CMBBOX"_A)=B
 Q
 ;
SETCUR(PRM) ;
 N TO,IND
 S TO=$P(PRM,";") I TO="" Q "<NOCMBBOXTO"
 S IND=$P(PRM,";",2) I IND="" Q "<NOCMBBOXIND"
 D TMP
 S @TMP@(TO)=IND  
 D PUT^%W1PRM("CMBBOXSH"_TO,IND)
 N ST S ST=$G(@TMP@(TO,IND))
 Q $$CLWEB^%L1FRM($$H2U^%L1FRM(ST))
 ;
PROC(N) ;
 I $L($G(%ARG("CMBBOXPROC")))=0 Q "" 
 Q %ARG("CMBBOXPROC")_"()" ;;_"(\"""_N_"\"")"
 ;
UPDPRM(PRM) ; --- A=1&B=2&C=3,B=5 --> A=1&B=5&C=3
 S PRM=$G(PRM)
 N TO S TO=$P(PRM,";") I TO="" Q "<NOTO"
 S PRM=$P(PRM,";",2,200)
 N ST S ST=$$GETP^%W1PRM("CMBBOXPRM"_TO)
 I ST="" D PUT^%W1PRM("CMBBOXPRM"_TO,PRM) Q 1
 S ST=$$UPDPRM^%L1FRM(ST,PRM)
 D PUT^%W1PRM("CMBBOXPRM"_TO,ST)
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CMNHNH
W4CMNHNH ; [ 12.12.21 19:02 ] [ 04.08.17 11:51 ] [ 01.03.15 08:59 ] 
 N (JB,%ARG,%REM)
 Q:'$G(JB)
 S HD=$$^%W1DICT("CAUSEDISC")
 D KB
 Q
 ;
KB ;
 D NOSELECT^%W1JS
 W "<div align=""center"" id=""cmtid"" >",!
 W "<table width=""100%"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td align=""center"" class=""rkvhd"" >"_$G(HD)_"</td></tr>"
  ;
  S FIRST=$$LAST^W4MENUBT(1)
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" width=""100%"" dir="""_$$^%W1DIR_""">",!
    S N=FIRST F I=1:1:9 S N=$O(@$$^W4GL("P1SHNH")@(N)) Q:N=""  D
    .D SETLAST^W4MENUBT(1,N)
    .W "<tr height="""_$$^W4KF(50)_"px"">",!
    .D CMNT(N)
    .W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  I N="" D SETLAST^W4MENUBT(1,"END")
 ;
  ;
  I '$$NOFREECAUSE^W4PRM D FREETXTBTN
  ;
 W "</table>",!
 W "</div>",!
 Q
 ;
CMNT(N) ;
 W "<td class=""cmnt"""
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';ClickCmnt('"_N_"')"""
 W ">"
 W $$H2U^%L1FRM($$CMNTXT(N))
 W "</td>"
 Q
 ;
SBM(CDCMNT) ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 N OK S OK=0
 N CMNT S CMNT=$$CMNTXT($$CLEAR^%L1FRM(CDCMNT))
 D SETCMHN(HZM,CMNT_"::"_CDCMNT)
 Q 1
 ;
CMNTXT(CDCMNT) ;
 Q $G(@$$^W4GL("P1SHNH")@(CDCMNT))
 ;
SETCMHN(HZM,CMNT)
 N WHO S WHO=$$GET^W4TMPPAY(6,"WHOSUBMIT")
 I $$DOP^W4NAME(WHO)="00000",$$PSWDRG^W4PRM S WHO=$$DOP^W4NAME($$GETP^%W1PRM("MNL"))
 ;;S ^AA("W4CMNHNH","WHO")=WHO
 N CDCMNT
 I CMNT["::" S CDCMNT=$P(CMNT,"::",2),CMNT=$P(CMNT,"::")
 D SETIND^W4HZMST(HZM,"HNH1",$$LASTIND^W4HZMST(HZM,"HNH1"),CMNT,5)
 I $G(CDCMNT) D SETIND^W4HZMST(HZM,"HNH1",$$LASTIND^W4HZMST(HZM,"HNH1"),CDCMNT,6)
 I WHO'="",WHO'="00000" D SETIND^W4HZMST(HZM,"HNH1",$$LASTIND^W4HZMST(HZM,"HNH1"),WHO,3)
 D PUT^W4TMPPAY(6,"WHOSUBMIT","")
 I $$ITRA^W4HZMST(HZM)<.05&($$TSHL^W4HZMST(HZM)>0)!($$ITRA^W4HZMST(HZM)>-.05&($$TSHL^W4HZMST(HZM)<0)) D
 .D ^W4T(HZM,1)
 Q
 ;
FREETXTBTN ;
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr>"
  W "<td><table width=""100%""><tr>"
   W "<td align=""center"" width=""50%"">"
    W "<input type=""button"" "
    W "style=""font-size:"_$$^W3FSZ(18)_";color:green;width:100%"" "
    W "value="""_$$^%W1DICT("NEWTXT")_""" "_$$^W4TOUCH_"=""NewTxt()"" >"
   W "</td>"
  W "</tr></table></td>"
 W "</tr>",!
 Q
 
 
 
 
 

W4CMNT
W4CMNT(TXT) ; [ 12.11.24 18:38 ] [ 25.07.22 11:43 ] [ 19.03.22 10:54 ] 
 N (JB,TXT,%ARG,%REM)
 Q:'$G(JB)
 I $G(%ARG("ADDCHN")) D ^W4ADDCHN Q
 ;
 Q:$G(TXT)=""
 D PUT^%W3DEB("W4CMNT","TXT=TXT")
 S TXT=$$CNWEB^%L1FRM(TXT)
 S LV=$P(TXT,"~",1) Q:LV=""
 S CD=$P(TXT,"~",2) Q:CD=""
 S HD=$P(TXT,"~",3)
 I CD,HD="" S HD=$$SHEM^W4P(CD)
 ;
 I $G(%ARG("FIRST")) D
 .K @$$^W4MAIN("TMPEZH")
 .I $D(@$$^W4GL("P1EZH")@(CD))>9 D  Q
 ..N N S N="" F  S N=$O(@$$^W4GL("P1EZH")@(CD,N)) Q:N=""  D
 ...N NP S NP=$G(^(N)) D SETHR(N,NP)
 .N SUG S SUG=$$SUG^W4P(CD) Q:'SUG
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZHK")@(SUG,N)) Q:N=""  D
 ..N NP S NP=$G(^(N)) D SETHR(N,NP)
 ;
 D KB
 Q
 ;
 ;
SETHR(N,NP) ;
 D TMPEZH
 I 'NP S NP=$O(@TMPEZH@(9999),-1)+1
 I $D(@TMPEZH@(NP)) D
 .N NP1 S NP1=NP
 .F  S NP1=NP1+1 Q:'$D(@TMPEZH@(NP1))
 .S NP=NP1
 S @TMPEZH@(NP)=N
 Q
 ;
KB ;
 D NOSELECT^%W1JS
 D TMPEZH
 W "<div class=""rkvhd"" align=""center"">"_$$H2U^%L1FRM($G(HD))_"</div>"
 ;
 N TOP1,TOP2 S TOP1=40,HG=420,WD=300,LEFT="40px"
 I $$SMALL^W4SMALL S HG=650,WD=460,LEFT="20px",TOP1=60
 I $$^W4TABLET=2 S HG=800,WD=660,LEFT="130px",TOP1=100
 I $$GRITVW^W4PRM S LEFT="27%"
 I $$CMNTMUCH S WD="90%",LEFT="5%"
 ;
 W "<div align=""center"" id=""cmtid"" "
  ;;I '$$^W4OPNWND D
  .W "style=""left:"_LEFT_";top:"_TOP1_"px;height:"_HG_"px;width:"_WD_"px;position:absolute;overflow:auto"" "
  W " >",!
  ;
  I '$$CMNTMUCH D TBCMNT1
  I $$CMNTMUCH D TBCMNT2
  ;
  W "</div>",!
  ;
  W "<br>",!
  ;
  D DIVBUT
 Q
 ;
 ;
TBCMNT1 ;
  W "<table class=""tblbut"" cellspacing=""5px"" cellpadding="""_$S($$^W4TABLET=2:10,1:5)_"px"" "
   W " width="""_$$WDTB_""" "
   W " border=""0"" dir="""_$$^%W1DIR_""" align=""center"">",!
   S N="" F  S N=$O(@TMPEZH@(N)) Q:N=""  D
   .N CDC S CDC=$G(^(N)) Q:'CDC  Q:'$L($$CMNTXT(CDC))
   .N HG S HG=50 I $$SMALL^W4SMALL!($$^W4TABLET=2),'$$^W4SIMUL S HG=100
   .W "<tr height="""_HG_"px"">",!
   .D CMNT(CDC)
   .W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
TBCMNT2 ;
  N I S I=0
  W "<table class=""tblbut"" cellspacing=""5px"" cellpadding="""_$S($$^W4TABLET=2:10,1:5)_"px"" "
   W " width=""96%"" "
   W " border=""0"" dir="""_$$^%W1DIR_""" align=""center"">",!
   S N="" F  S N=$O(@TMPEZH@(N)) Q:N=""  D
   .N CDC S CDC=$G(^(N)) Q:'CDC  Q:'$L($$CMNTXT(CDC))
   .S I=I+1
   .N HG S HG=40
   .I I#3=1 W "<tr height="""_HG_"px"">",!
   .;;N HG S HG=40
   .N WDTD S WDTD="33%"
   .D CMNT(CDC)
   .I (I#3)=0 W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
CMNT(N) ; -- INPUT: N - COMMENT CODE, CD - ITEM CODE , LV - ITEM LEVEL
 ;                  %ARG("SHID") - "LV"_LV_<NOM ST>
 W "<td class=""cmnt"" align=""center"" "
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $G(WDTD) W " width="""_WDTD_""" "
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 N SHID S SHID=$G(%ARG("SHID"))
 N PRM S PRM=N_";"_SHID_";"_LV_";"_CD
 N PROC S PROC="ClickCmnt('"_PRM_"')"""
 S UR=+$$UR^W4MENU
 ;
 I UR=2!(UR=4)!(SHID["LV") D
 .N NTXT S NTXT=$$TXTNEXT^W4HZORD(SHID)
 .I $$CDC^W3HZMST(NTXT) S PROC="WhatToDo('"_PRM_"')"
 ;
 I UR=3!(UR=5),SHID'["LV" D
 .N TMPTFUR D TMPTFUR^W4HZTSF(UR)
 .N OKI S OKI=$$FINDTMPPRT(+UR,CD)
 .I OKI,$D(@TMPTFUR@(OKI,"CMNT")) S PROC="WhatToDo('"_PRM_"')"
 ;
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';"_PROC_""" "
 W ">"
 W $$H2U^%L1FRM($$CMNTXT(N))
 W "</td>"
 Q
 ;
CMNTMUCH(STAM)
 I $$SMALL^W4SMALL Q 0
 I $$^W4TABLET Q 0
 ;
 N N,I S I=0
 S N="" F  S N=$O(@TMPEZH@(N)) Q:N=""  D
 .N CDC S CDC=$G(^(N)) Q:'CDC  Q:'$L($$CMNTXT(CDC))
 .S I=I+1
 I I>6 Q 1
 Q 0
 ;
SBM(CDCMNT) ;
 D PUT^%W3DEB("W4CMNT-SBM","CDCMNT=CDCMNT")
 N OK S OK=0
 N SHID S SHID=$P(CDCMNT,";",2)
 N LV S LV=$P(CDCMNT,";",3)
 N PRT S PRT=$P(CDCMNT,";",4)
 S CDCMNT=$P(CDCMNT,";")
 N UR
 D RESTUR^W4SCASK ; *** 09/03/2014
 S UR=+$$UR^W4MENU
 ;
 D KILLTMPCI^W4MENU(UR)
 D SETUR^W4MENU(UR)
 ;
 Q $$SETCMNT("CDCMNT",CDCMNT_";;0;"_PRT,CDCMNT,SHID,LV,PRT)
 ;
 ;
SETCMNT(IND,CONT,CDCMNT,SHID,LV,PRT) ;
 N W4AIN,CMNT S W4AIN=$$^W4AIN
 D PUT^%W3DEB("W4CMNT-SETCMNT","IND=IND & CONT=CONT & W4AIN=W4AIN & SHID=SHID & LV=LV & PRT=PRT & W4AIN=W4AIN")
 N TMPORD D TMPORD^W4HZORD
 I $$^W6 D KILL^%W1PRM("CMNTW6")
 ;
 N LI S LI=0
 ;
 N UR S UR=$$UR^W4MENU
 D PUT^%W3DEB("W4CMNT-SETCMNT","UR=UR")
 ;
 I SHID'["LV"!(LV>0&(+UR=3!(+UR=5))) D  I OK Q OK ; -- 31/12/17 UR>2
 .I $L(PRT),LV=0,$$TSF^W4HZPRTN(PRT)<1,W4AIN D  Q
 ..D PUT^%W1PRM(IND,CONT)
 ..N STPAR S STPAR=$$CNWEB^%L1FRM($$GETP^%W1PRM("STPAR4"))
 ..D PUT^%W3DEB("W4CMNT-SETCMNT","STPAR=STPAR")
 ..D NEWST^W4HZTSF(STPAR,1)
 ..D SBR^W4HZTSF(STPAR,1)
 ..S OK=1
 .
 .I $L(PRT),LV=0,$$^W4EZAT(PRT),'W4AIN D  Q
 ..I IND="CDCMNT" D
 ...S CMNT=$$SPA^%L1FRM($$CMNTXT(CDCMNT))
 ...D PUT^%W1PRM("COMMENT0","1~"_PRT_"-C"_CDCMNT_"~"_$$CLR(CMNT))
 ..I IND="CMNT" D
 ...S CMNT=CONT
 ...D PUT^%W1PRM("COMMENT0","1~"_PRT_"-C0~"_$$CLR(CMNT))
 ..S OK=2
 .
 .I $L(PRT),LV=0,$$TSF^W4HZPRTN(PRT)'<1 D  Q
 ..D PUT^%W1PRM(IND,CONT)
 ..S OK=2
 .
 .I $L(PRT),PRT'["C",LV>0 D  ; '$$TSF^W4HZPRTN(PRT) OR ADD-S NOT MUST
 ..N UR S UR=$$UR^W4MENU
 ..N TMPTFUR D TMPTFUR^W4HZTSF(UR)
 ..N OKI S OKI=$$FINDTMPPRT(UR,PRT)
 ..D PUT^%W3DEB("W4CMNT-SETCMNT","OKI=OKI & UR=UR")
 ..Q:'OKI
 ..N CMNTX
 ..
 ..I IND="CDCMNT" D  ; -- COMMENT'S COD FROM COMMENTS TABLE
 ...S CMNTX=$$SPA^%L1FRM($$CMNTXT(CDCMNT)) Q:CMNTX=""
 ...S @TMPTFUR@(OKI,"CMNT")=PRT_"-C"_CDCMNT_"~"_$$CLR(CMNTX)
 ..
 ..I IND="CMNT" D
 ...S CMNT=CONT
 ...I '$$NOCMNT(CMNT) S @TMPTFUR@(OKI,"CMNT")=PRT_"-C0~"_$$CLR(CMNT) Q
 ...I $$NOCMNT(CMNT) K @TMPTFUR@(OKI,"CMNT")
 ..
 ..;;S RES=$$SETGR^W4HZTSF(SHID)
 ..S OK=3
 ;
 ;
 I SHID["LV" D  I LI="" Q -2.1  ; --- EDIT SIMPLE LINE
 .S LI=$$FINDSH^W4HZORD(SHID) Q:LI=""
 .I $$^W6,$L($G(CONT)) D PUT^%W1PRM("CMNTW6",$$INVH^%L1FRM(CONT)) Q
 .I $P($G(@TMPORD@(LI+1)),"~",2)'["-C",CDCMNT'="NO" D
 ..D ADD^%L1GSEQ(TMPORD,LI+1,"",1)
 ;
 I SHID["LV",$$^W6,$L($G(CONT)),LI Q 1  ; *** 07/06/21
 ;
 I '$G(LI),W4AIN Q 1
 ;
 I '$G(LI) S LI=$O(@TMPORD@(99999),-1)
 ;
 N A S A=$G(@TMPORD@(+LI))
 N CD,CMNT S CD=$P(A,"~",2)
 ;
 N LI1 S LI1=LI+1
 I $$CDC(CD) S LI1=LI
 ;
 D PUT^%W3DEB("W4CMNT-SETCMNT","CD=CD & LI1=LI1")
 ;
 I '$$ISNUM^%L1FRM(CD),'$$CDC(CD) Q -2.2
 ;
 I CDCMNT="NO" D  Q 1
 .I $$CDSTC^W3HZMST(JB,LI1) D
 ..D ^W4DELST(TMPORD,LI1)
 ;
 S CMNT=CONT
 ;
 I IND="CDCMNT" S CMNT=$$SPA^%L1FRM($$CMNTXT(CDCMNT))
 I IND="CMNT" S CMNT=$$SPA^%L1FRM(CONT)
 ;
 I $L($G(CMNT)),'$$CDC(CD) D
 .S @TMPORD@(LI1)="1~"_CD_"-C"_CDCMNT_"~"_$$CLR(CMNT)
 ;
 I $L($G(CMNT)),$$CDC(CD) D
 .S @TMPORD@(LI1)="1~"_+CD_"-C0~"_$$CLR(CMNT)_" "_$P($G(@TMPORD@(LI1)),"~",3)
 ;
 N TARA S TARA=$$TARA(CMNT)*.001
 I TARA D
 .N LV S LV=$P($G(@TMPORD@(LI)),"~",1)
 .N QN S QN=$P($G(@TMPORD@(LI)),"~",5)
 .I LV!'QN Q
 .I QN["[" D  Q
 ..N QN0 S QN0=$P($P(QN,"[",2),"]")
 ..S QN0=$$SPA^%L1FRM(QN0)
 ..N QNT S QNT=$P(QN0,"-",2),QN0=$P(QN0,"-")
 ..S QN=(QN0-TARA)_" ["_QN0_"-"_TARA_"]"
 ..S $P(@TMPORD@(LI),"~",5)=QN
 .
 .S QN=(QN-TARA)_" ["_QN_"-"_TARA_"]"
 .S $P(@TMPORD@(LI),"~",5)=QN
 Q 1
 ;
 ;
CDC(CD)
 Q CD["-C"
 ;
CMNTXT(CDCMNT) ;
 Q $G(@$$^W4GL("P1CODH")@(CDCMNT))
 ;
TMPEZH ;
 S TMPEZH=$$^W4MAIN("TMPEZH")
 Q
 ;
NOCMNT(CMNT)
 I CMNT="NO"!(CMNT="") Q 1
 Q 0
 ;
CLR(CMNT) ;
 Q $$RPL^%L1FRM(CMNT,"[]","")
 ;
FINDTMPPRT(UR,PRT) ;
 N TMPTFUR D TMPTFUR^W4HZTSF(UR)
 N I,OKI S OKI=0
 F I=1:1 Q:'$D(@TMPTFUR@(I))  I $P($P($G(^(I)),"~"),"-")=PRT S OKI=I Q
 Q OKI
 ;
DIVBUT ;
 W "<div align=""center"" "
  ;;I '$$^W4OPNWND W "style=""position:absolute;left:"_LEFT_";top:"_(TOP1+HG+10)_"px;width:"_WD_"px"" "
 W ">",!
  W "<table width=""80%"" align=""center"" "
   I $$^W4TABLET=2 W "cellpadding=""10px"" "
  W ">"
    I $$SMALL^W4SMALL G SMALLDIVBUT
    W "<tr>"
     W "<td align=""center"">"
     W " <input type=""button"" style=""font-size:"_$$^W3FSZ(14)_";color:red;width:100%"" class=""btn"" value="""_$$^%W1DICT("CANCEL")_""" "_$$^W4TOUCH_"=""Back()"" />"
     W "</td>"
     W "<td align=""center"">"
     W " <input type=""button"" style=""font-size:"_$$^W3FSZ(14)_";color:green;width:100%"" class=""btn"" value="""_$$^%W1DICT("NEWTXT")_""" "_$$^W4TOUCH_"=""NewTxt()"" />"
     W "</td>"
     W "<td align=""center"">"
     W " <input type=""button"" style=""font-size:"_$$^W3FSZ(14)_";color:red;width:100%"" class=""btn"" value="""_$$^%W1DICT("NOCOMMENT")_""" "_$$^W4TOUCH_"=""ClickCmnt('NO;"_$G(%ARG("SHID"))_";"_LV_";"_CD_"')"" />"
     W "</td>"
    W "</tr>",!
   W "</table>",!
 W "</div>",!
 Q
 ;
SMALLDIVBUT ;
  W "<tr>"
  W "<td align=""center"">"
  W " <input type=""button"" style=""font-size:"_$$^W3FSZ(14)_";color:green;width:100%"" value="""_$$^%W1DICT("NEWTXT")_""" "_$$^W4TOUCH_"=""NewTxt()"" />"
  W "</td>"
  W "</tr>",!
  W "<tr><td>&nbsp;</td></tr>",!
  W "<tr>"
  W "<td align=""center"">"
  W " <input type=""button"" style=""font-size:"_$$^W3FSZ(14)_";color:red;width:100%"" value="""_$$^%W1DICT("ERASETXT")_""" "_$$^W4TOUCH_"=""ClickCmnt('NO;"_$G(%ARG("SHID"))_";"_LV_";"_CD_"')"" />"
  W "</td>"
  W "</tr>",!
  W "<tr><td>&nbsp;</td></tr>",!
  W "<tr>"
  W "<td align=""center"">"
  W " <input type=""button"" style=""font-size:"_$$^W3FSZ(14)_";color:red;width:100%"" value="""_$$^%W1DICT("BACK")_""" "_$$^W4TOUCH_"=""Back()"" />"
  W "</td>"
  W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
WDTB(STAM) ; 
 Q "60%"
 ;
 I $$^W4OPNWND Q "60%"
 Q "100%"
 ;
CMNMUCH(TX) ; 
 N I S I=0
 N CD S CD=$P(TX,"~",2) I CD="" Q 0
 I $D(@$$^W4GL("P1EZH")@(CD))>9 D  Q I
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZH")@(CD,N)) Q:N=""  D
 ..S I=I+1
 ;
 N SUG S SUG=$$SUG^W4P(CD) Q:'SUG
 N N S N="" F  S N=$O(@$$^W4GL("P1EZHK")@(SUG,N)) Q:N=""  D
 .S I=I+1
 Q I
 ;
TARA(CMNT) ;
 I CMNT["dxh zegt" Q $$NUMBER(CMNT)
 I CMNT["dfix` zzgtd" Q $$NUMBER(CMNT)
 Q ""
 ; 
NUMBER(CMNT) ; 
 N NMB S NMB=""
 N J,PRNMB S J=0,PRNMB=0
CYCN S J=J+1
 I $E(CMNT,J)?1N S PRNMB=1,NMB=NMB_$E(CMNT,J)
 I $E(CMNT,J)'?1N,PRNMB Q NMB
 I J>$L(CMNT) Q NMB 
 G CYCN 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CMNT0
W4CMNT(TXT) ; [ 08.03.14 10:57 ] [ 07.03.14 20:03 ] [ 26.11.13 13:07 ]
 N (JB,TXT,%ARG,%REM)
 Q:'$G(JB)
 I $G(%ARG("ADDCHN")) D ^W4ADDCHN Q
 ;
 Q:$G(TXT)=""
 D PUT^%W3DEB("W4CMNT","TXT=TXT")
 S TXT=$$CNWEB^%L1FRM(TXT)
 S LV=$P(TXT,"~",1) Q:LV=""
 S CD=$P(TXT,"~",2) Q:CD=""
 S HD=$P(TXT,"~",3)
 I CD,HD="" S HD=$$SHEM^W4P(CD)
 ;
 I $G(%ARG("FIRST")) D
 .K @$$^W4MAIN("TMPEZH")
 .I $D(@$$^W4GL("P1EZH")@(CD))>9 D  Q
 ..N N S N="" F  S N=$O(@$$^W4GL("P1EZH")@(CD,N)) Q:N=""  D
 ...N NP S NP=$G(^(N)) D SETHR(N,NP)
 .N SUG S SUG=$$SUG^W4P(CD) Q:'SUG
 .N N S N="" F  S N=$O(@$$^W4GL("P1EZHK")@(SUG,N)) Q:N=""  D
 ..N NP S NP=$G(^(N)) D SETHR(N,NP)
 ;
 D KB
 Q
 ;
SETHR(N,NP) ;
 D TMPEZH
 I 'NP S NP=$O(@TMPEZH@(9999),-1)+1
 I $D(@TMPEZH@(NP)) D
 .N NP1 S NP1=NP
 .F  S NP1=NP1+1 Q:'$D(@TMPEZH@(NP1))
 .S NP=NP1
 S @TMPEZH@(NP)=N
 Q
 ;
KB ;
 D NOSELECT^%W1JS
 D TMPEZH
 W "<div align=""center"" id=""cmtid"" >",!
 W "<table width=""100%"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td align=""center"" class=""rkvhd"" >"_$$H2U^%L1FRM($G(HD))_"</td></tr>"
  ;
  S FIRST=$$LAST^W4MENUBT($$UR^W4MENUBT)
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" width=""100%"" dir="""_$$^%W1DIR_""">",!
    S N=FIRST F I=1:1:5 S N=$O(@TMPEZH@(N)) Q:N=""  D
    .N CDC S CDC=$G(^(N)) Q:'CDC
    .D SETLAST^W4MENUBT($$UR^W4MENUBT,N)
    .N HG S HG=50 I $$^W4SMALL,'$$^W4SIMUL S HG=110
    .W "<tr height="""_HG_"px"">",!
    .D CMNT(CDC)
    .W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
 I N="" D SETLAST^W4MENUBT($$UR^W4MENUBT,"END")
 ;
  ;;W "<tr><td>&nbsp;</td></tr>",!
  W "<tr>"
   W "<td><table width=""100%""><tr>"
    W "<td align=""center"" width=""33%"">"
    W "<input type=""button"" style=""font-size:"_$$^W3FSZ(18)_";color:black;width:100%"" value="""_$$^%W1DICT("DOWN")_""" onMouseUp=""PageDown()"" />"
    W "</td>"
    W "<td align=""center"">"
    W "<input type=""button"" style=""font-size:"_$$^W3FSZ(18)_";color:red;width:100%"" value="""_$$^%W1DICT("BACK")_""" onMouseUp=""Back()"" />"
    W "</td>"
    W "<td align=""center"">"
    W "<input type=""button"" style=""font-size:"_$$^W3FSZ(18)_";color:black;width:100%"" value="""_$$^%W1DICT("UP")_""" onMouseUp=""PageUp()"" />"
    W "</td>"
   W "</tr></table></td>"
  W "</tr>",!
  ;
  ;
  W "<tr>"
   W "<td><table width=""100%""><tr>"
    W "<td align=""center"" width=""50%"">"
    W "<input type=""button"" style=""font-size:"_$$^W3FSZ(18)_";color:green;width:100%"" value="""_$$^%W1DICT("NEWTXT")_""" onMouseUp=""NewTxt()"" />"
    W "</td>"
    W "<td align=""center"">"
    W "<input type=""button"" style=""font-size:"_$$^W3FSZ(18)_";color:red;width:100%"" value="""_$$^%W1DICT("ERASETXT")_""" onMouseUp=""ClickCmnt('NO;"_$G(%ARG("SHID"))_";"_LV_";"_CD_"')"" />"
    W "</td>"
   W "</tr></table></td>"
  W "</tr>",!
  ;
 W "</table>",!
 W "</div>",!
 Q
 ;
CMNT(N) ; -- INPUT: N - COMMENT CODE, CD - ITEM CODE , LV - ITEM LEVEL
 ;                  %ARG("SHID") - "LV"_LV_<NOM ST>
 W "<td class=""cmnt"""
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 N SHID S SHID=$G(%ARG("SHID"))
 N PRM S PRM=N_";"_SHID_";"_LV_";"_CD
 N PROC S PROC="ClickCmnt('"_PRM_"')"""
 N NTXT S NTXT=$$TXTNEXT^W4HZORD(SHID)
 I $$CDC^W3HZMST(NTXT) S PROC="WhatToDo('"_PRM_"')"
 W " onMouseUp=""this.style.backgroundColor='#eaeaea';"_PROC_""" "
 W ">"
 W $$H2U^%L1FRM($$CMNTXT(N))
 W "</td>"
 Q
 ;
SBM(CDCMNT) ;
 D PUT^%W3DEB("W4CMNT-SBM","CDCMNT=CDCMNT")
 N OK S OK=0
 N SHID S SHID=$P(CDCMNT,";",2)
 N LV S LV=$P(CDCMNT,";",3)
 N PRT S PRT=$P(CDCMNT,";",4)
 S CDCMNT=$P(CDCMNT,";")
 ;
 D KILLTMPCI^W4MENUBT(+$$UR^W4MENUBT)
 D SETUR^W4MENUBT(+$$UR^W4MENUBT)
 ;
 Q $$SETCMNT("CDCMNT",CDCMNT_";;0;"_PRT,CDCMNT,SHID,LV,PRT)
 ;
 ;
SETCMNT(IND,CONT,CDCMNT,SHID,LV,PRT) ;
 N W4AIN,CMNT S W4AIN=$$^W4AIN
 D PUT^%W3DEB("W4CMNT-SETCMNT","IND=IND & CONT=CONT & SHID=SHID & LV=LV & PRT=PRT & W4AIN=W4AIN")
 N TMPORD D TMPORD^W4HZORD
 N LI S LI=0
 ;
 I SHID'["LV"!(LV>0) D  I OK Q OK ; -- NOT EDIT
 .I $L(PRT),LV=0,$$TSF^W4HZPRTN(PRT)<1,W4AIN D  Q
 ..D PUT^%W1PRM(IND,CONT)
 ..N STPAR S STPAR=$$CNWEB^%L1FRM($$GETP^%W1PRM("STPAR4"))
 ..D NEWST^W4HZTSF(STPAR,1)
 ..D SBR^W4HZTSF
 ..S OK=1
 .
 .I $L(PRT),LV=0,$$^W4EZAT(PRT),'W4AIN D  Q
 ..I IND="CDCMNT" D
 ...S CMNT=$$SPA^%L1FRM($$CMNTXT(CDCMNT))
 ...D PUT^%W1PRM("COMMENT0","1~"_PRT_"-C"_CDCMNT_"~"_$$CLR(CMNT))
 ..I IND="CMNT" D
 ...S CMNT=CONT
 ...D PUT^%W1PRM("COMMENT0","1~"_PRT_"-C0~"_$$CLR(CMNT))
 ..S OK=2
 .
 .I $L(PRT),LV=0,$$TSF^W4HZPRTN(PRT)'<1 D  Q
 ..D PUT^%W1PRM(IND,CONT)
 ..S OK=2
 .
 .I $L(PRT),PRT'["C",LV>0 D  ; '$$TSF^W4HZPRTN(PRT) OR ADD-S NOT MUST
 ..N UR S UR=$$UR^W4MENUBT
 ..N TMPTFUR D TMPTFUR^W4HZTSF(UR)
 ..N I,OKI S OKI=0
 ..F I=1:1 Q:'$D(@TMPTFUR@(I))  I $P($G(^(I)),"~")=PRT S OKI=I Q
 ..Q:'OKI
 ..N CMNTX
 ..I IND="CDCMNT" D
 ...S CMNTX=$$SPA^%L1FRM($$CMNTXT(CDCMNT)) Q:CMNTX=""
 ...S @TMPTFUR@(OKI,"CMNT")=PRT_"-C"_CDCMNT_"~"_$$CLR(CMNTX)
 ..I IND="CMNT" D
 ...S CMNT=CONT
 ...I '$$NOCMNT(CMNT) S @TMPTFUR@(OKI,"CMNT")=PRT_"-C0~"_$$CLR(CMNT) Q
 ...I $$NOCMNT(CMNT) K @TMPTFUR@(OKI,"CMNT")
 ..S OK=3
 ;
 ;
 I SHID["LV" D  I LI="" Q -2.1  ; --- EDIT SIMPLE LINE
 .S LI=$$FINDSH^W4HZORD(SHID) Q:LI=""
 .I $P($G(@TMPORD@(LI+1)),"~",2)'["-C",CDCMNT'="NO" D
 ..D ADD^%L1GSEQ(TMPORD,LI+1,"",1)
 ;
 I '$G(LI),W4AIN Q 1
 ;
 I '$G(LI) S LI=$O(@TMPORD@(99999),-1)
 ;
 N A S A=$G(@TMPORD@(+LI))
 N CD,CMNT S CD=$P(A,"~",2)
 I CD'?1N.N.".".N Q -2.2
 ;
 I CDCMNT="NO" D  Q 1
 .I $P($G(@TMPORD@(LI+1)),"~",2)["-C" D
 ..D ^W4DELST(TMPORD,LI+1)
 ;
 S CMNT=CONT
 I IND="CDCMNT" S CMNT=$$SPA^%L1FRM($$CMNTXT(CDCMNT))
 I IND="CMNT" S CMNT=$$SPA^%L1FRM(CONT)
 I $L($G(CMNT)) D
 .S @TMPORD@(LI+1)="1~"_CD_"-C"_CDCMNT_"~"_$$CLR(CMNT)
 Q 1
 ;
 ;
CMNTXT(CDCMNT) ;
 Q $G(@$$^W4GL("P1CODH")@(CDCMNT))
 ;
TMPEZH ;
 S TMPEZH=$$^W4MAIN("TMPEZH")
 Q
 ;
NOCMNT(CMNT)
 I CMNT="NO"!(CMNT="") Q 1
 Q 0
 ;
CLR(CMNT) ;
 Q $$RPL^%L1FRM(CMNT,"[]","")

W4COMP
W4COMP ; [ 29.12.21 07:18 ] [ 14.06.16 07:09 ] [ 19.11.08 08:42 ] 
 N (JB,%REM,HZM)
IRN S N="" F  S N=$O(@$$^W4THZ1@(N)) Q:N=""  S A=$G(^(N)) I A'["\@@" D
 .F J=4,6,7 S $P(@$$^W4THZ1@(N),"\",J)=$J($P(A,"\",J),2,2)
 .S N1="" F  S N1=$O(@$$^W4THZ1@(N,N1)) Q:N1=""  D
 ..I N1'["A-" S $P(^(N1),"\",2)=$J($P(^(N1),"\",2),2,2)
 ;
 S GLI=$$BG^W4THZ1_"I)"
 S GLJ=$$BG^W4THZ1_"J)"
 S I="" F  S I=$O(@GLI) Q:I=""  I I?1N.N D
 .S AA=$G(^(I))
 .Q:$P(AA,"\",$L(AA,"\"))["@@"
 .Q:$$^W4AHP(AA)
 .
 .S ST=$P(AA,"\",1,4)_$P(AA,"\",8)
 .S OK=0
 .K MT,MTT
 .
 .S N="" F  S N=$O(@GLI@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S $P(A,"\",$S(N["A-":2,1:3))=$J($P(A,"\",$S(N["A-":2,1:3)),2,2)
 ..S MT(N_"\"_A)=""
 ..S N1="" F  S N1=$O(@GLI@(N,N1)) Q:N1=""  D
 ...S A1=$G(^(N1))
 ...S $P(A1,"\",3)=$J($P(A1,"\",3),2,2)
 ...S MTT(N_"\"_N1_"\"_A1)=""
 .
 .S J=I F  S J=$O(@GLJ) Q:J=""  I J?1N.N D
 ..S AA1=$G(^(J))
 ..Q:$P(AA1,"\",$L(AA1,"\"))["@@"
 ..Q:$$^W4AHP(AA1)
 ..K MT1,MTT1
 ..S ST1=$P(AA1,"\",1,4)_$P(AA1,"\",8)
 ..S KF=1 I $P(AA1,"\",5) S KF=$J($P(AA,"\",5)/$P(AA1,"\",5),3,3)
 ..I ST1'=ST Q
 ..
 ..S N="" F  S N=$O(@GLJ@(N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S IND1=N_"\"_A
 ...S PS=4 I N["A-" S PS=3
 ...S $P(IND1,"\",PS)=$J($P(IND1,"\",PS)*KF,2,2)
 ...S MT1(IND1)=""
 ...
 ...S N1="" F  S N1=$O(@GLJ@(N,N1)) Q:N1=""  D
 ....S A1=$G(^(N1))
 ....S IND2=N_"\"_N1_"\"_A1,PS=5
 ....S $P(IND2,"\",PS)=$J($P(IND2,"\",PS)*KF,2,2)
 ....S MTT1(IND2)=""
 ..
 ..S OK1=1
 ..S NN="" F  S NN=$O(MT(NN))  Q:NN=""  I '$D(MT1(NN)) S OK1=0 Q
 ..Q:'OK1  S OK2=1
 ..S NN="" F  S NN=$O(MTT(NN))  Q:NN=""  I '$D(MTT1(NN)) S OK2=0 Q
 ..Q:'OK2
 ..S OK1=1
 ..S NN="" F  S NN=$O(MT1(NN))  Q:NN=""  I '$D(MT(NN)) S OK1=0 Q
 ..Q:'OK1  S OK2=1
 ..S NN="" F  S NN=$O(MTT1(NN))  Q:NN=""  I '$D(MTT(NN)) S OK2=0 Q
 ..Q:'OK2
 ..I $$^W4AHP($G(@$$^W4THZ1@(I+1)))!$$^W4AHP($G(@$$^W4THZ1@(J+1))),$$AH^W4AHP($G(@$$^W4THZ1@(I+1)))'=$$AH^W4AHP($G(@$$^W4THZ1@(J+1))) Q
 ..; -------------------  SAME  -------------------
 ..F JJ=5,6,7 D
 ...S $P(@GLI,"\",JJ)=$P($G(@GLI),"\",JJ)+$P($G(@GLJ),"\",JJ)
 ..S N="" F  S N=$O(@GLI@(N)) Q:N=""  D
 ...S PQ=3 I N["A-" S PQ=2
 ...S $P(@GLI@(N),"\",PQ)=$P($G(@GLI@(N)),"\",PQ)+$P($G(@GLJ@(N)),"\",PQ)
 ...S PQ1=3
 ...S N1="" F  S N1=$O(@GLI@(N,N1)) Q:N1=""  I $P(^(N1),"\") D
 ....S $P(@GLI@(N,N1),"\",PQ1)=$P($G(@GLI@(N,N1)),"\",PQ1)+$P($G(@GLJ@(N,N1)),"\",PQ1)
 ..K @$$^W4THZ1@(J)
 ;
 K @$$^W4MAIN("THZ2") S I=0
 S N="" F  S N=$O(@$$^W4THZ1@(N)) Q:N=""  I N?1N.N D
 .S I=I+1 M @$$^W4MAIN("THZ2")@(I)=@$$^W4THZ1@(N) K @$$^W4THZ1@(N)
 M @$$^W4THZ1=@$$^W4MAIN("THZ2") K @$$^W4MAIN("THZ2")
 ;
 D COMP3
 ;
 I $G(@$$^W4PRM@("HZRKZ"))=2 S OK=0 D  D COMP3 ; IHUD AI
 .N GLI,GLJ
 .S GLI=$$BG^W4THZ1_"I)"
 .S GLJ=$$BG^W4THZ1_"J)"
 .S I="" F  S I=$O(@GLI) Q:I=""  I I?1N.N D
 ..S AA=$G(^(I))
 ..Q:$P(AA,"\",$L(AA,"\"))["@@"
 ..Q:$$^W4AHP(AA)
 ..N PAR S PAR=$P(AA,"\") Q:PAR?.P
 ..I '$D(@$$^W4GL("P1EZT")@(PAR)),'$D(@$$^W4GL("P1EZA")@(PAR)) Q
 ..
 ..S ST=$P(AA,"\",1,4)_$P(AA,"\",8)
 ..
 ..S J=I F  S J=$O(@GLJ) Q:J=""  I J?1N.N D
 ...S AA1=$G(^(J))
 ...Q:$P(AA1,"\",$L(AA1,"\"))["@@"
 ...Q:$$^W4AHP(AA1)
 ...S ST1=$P(AA1,"\",1,4)_$P(AA1,"\",8)
 ...I ST1'=ST Q
 ...
 ...F JJ=5,6,7 D
 ....S $P(@GLI,"\",JJ)=$P($G(@GLI),"\",JJ)+$P($G(@GLJ),"\",JJ)
 ...S OK=1
 ...S N1="" F  S N1=$O(@GLJ@(N1)) Q:N1=""  D
 ....I '$D(@GLI@(N1)) M @GLI@(N1)=@GLJ@(N1) Q
 ....S POSC=$S(N1["A-":2,1:3),POSH=POSC+1
 ....
 ....I $D(@GLI@(N1))<10,$D(@GLJ@(N1))<10 D  Q
 .....N A,B S A=$G(@GLI@(N1)),B=$G(@GLJ@(N1))
 .....
 .....I $P(A,"\")_$P(A,"\",4)=($P(B,"\")_$P(B,"\",4)) D  Q
 ......S $P(@GLI@(N1),"\",POSC)=$P(@GLI@(N1),"\",POSC)+$P(@GLJ@(N1),"\",POSC)
 .....
 .....S $P(@GLI@(N1),"\",POSC)=$P(@GLI@(N1),"\",POSC)+$P(@GLJ@(N1),"\",POSC)
 .....S @GLI@(N1,1)=N1_"\"_$P(A,"\")_"\"_$P(A,"\",POSC)_"\\\"_$P(A,"\",POSH)
 .....S @GLI@(N1,2)=N1_"\"_$P(B,"\")_"\"_$P(B,"\",POSC)_"\\\"_$P(B,"\",POSH)
 .....S $P(@GLI@(N1),"\",POSH)="<F9> - hxtl"
 ....
 ....I $D(@GLI@(N1))<10,$D(@GLJ@(N1))>9 D  Q
 .....S $P(@GLI@(N1),"\",POSC)=$P(@GLI@(N1),"\",POSC)+$P(@GLJ@(N1),"\",POSC)
 .....S @GLI@(N1,1)=N1_"\"_$P(A,"\")_"\"_$P(A,"\",POSC)_"\\\"_$P(A,"\",POSH)
 .....F II=1:1 Q:'$D(@GLJ@(N1,II))  D
 ......S @GLI@(N1,II+1)=$G(@GLJ@(N1,II))
 .....S $P(@GLI@(N1),"\",POSH)="<F9> - hxtl"
 ....
 ....I $D(@GLI@(N1))>9,$D(@GLJ@(N1))<10 D  Q
 .....S $P(@GLI@(N1),"\",POSC)=$P(@GLI@(N1),"\",POSC)+$P(@GLJ@(N1),"\",POSC)
 .....N LAST S LAST=$O(@GLI@(N1,9999),-1)+1
 .....S @GLI@(N1,LAST)=N1_"\"_$P(B,"\")_"\"_$P(B,"\",POSC)_"\\\"_$P(B,"\",POSH)
 ....
 ....I $D(@GLI@(N1))>9,$D(@GLJ@(N1))>9 D  Q
 .....S $P(@GLI@(N1),"\",POSC)=$P(@GLI@(N1),"\",POSC)+$P(@GLJ@(N1),"\",POSC)
 .....N LAST S LAST=$O(@GLI@(N1,9999),-1)+1
 .....F II=1:1 Q:'$D(@GLJ@(N1,II))  D
 ......S @GLI@(N1,II+LAST-1)=$G(@GLJ@(N1,II))
 ...K @GLJ
 Q
COMP3 ;
 N I,II,N,N1,N2,A,B
 S I="" F  S I=$O(@$$^W4THZ1@(I)) Q:I=""  D
 .S N="" F  S N=$O(@$$^W4THZ1@(I,N)) Q:N=""  D
 ..S N1="" F  S N1=$O(@$$^W4THZ1@(I,N,N1)) Q:N1=""  S A=$G(^(N1)) I $P(A,"\"),A'["\@@" D
 ...S N2=N1 F  S N2=$O(@$$^W4THZ1@(I,N,N2)) Q:N2=""  S B=$G(^(N2)) D
 ....I B=A D
 .....S $P(@$$^W4THZ1@(I,N,N1),"\",3)=$P(A,"\",3)+$P(B,"\",3)
 .....K @$$^W4THZ1@(I,N,N2)
 ;
 K @$$^W4MAIN("THZ2")
 S II=0,I2=0
 S I="" F  S I=$O(@$$^W4THZ1@(I)) Q:I=""  D
 .S I2=I2+1
 .S @$$^W4MAIN("THZ2")@(I2)=$G(@$$^W4THZ1@(I))
 .S N="" F  S N=$O(@$$^W4THZ1@(I,N)) Q:N=""  D
 ..S @$$^W4MAIN("THZ2")@(I2,N)=$G(@$$^W4THZ1@(I,N))
 ..S N1="" F  S N1=$O(@$$^W4THZ1@(I,N,N1)) Q:N1=""  D
 ...S II=II+1,@$$^W4MAIN("THZ2")@(I2,N,II)=$G(@$$^W4THZ1@(I,N,N1))
 ;
 K @$$^W4THZ1 M @$$^W4THZ1=@$$^W4MAIN("THZ2")
 K @$$^W4MAIN("THZ2")
 Q
 
 
 
 
 

W4COMPDM
W4COMPDM(JB,CODE,HZM,PRM,PR) ; [ 10.04.24 11:01 ] [ 09.05.21 17:47 ] [ 08.07.20 19:08 ] 
 N (JB,%ARG,CODE,HZM,PRM,PR)
 I '$G(JB) Q ""
 S NEW=0 I JB["!" S NEW=1,JB=+JB
 S CODE=$G(CODE)
 S HZM=$G(HZM)
 S PRM=$G(PRM)
 I $P(PRM,"^")'="" S CODE=$P(PRM,"^")
 S NOPLGN='$$POLYGON^W4PRM
 I $P(PRM,"^",6)?1N S NOPLGN=$P(PRM,"^",6)
 ;
 N DMSHMSD S DMSHMSD=$$DMSHMSD^W3HZMST(JB)
 I $$NOMOD(JB,$G(HZM)) Q DMSHMSD
 ;
 N DMSAH S DMSAH=$$DMSAH^W3HZMST(JB)
 N NMB S NMB=$$NMB^W3HZMST(JB)
 N TSH S TSH=$$TSH^W3HZMST(JB)
 ;
 I $$TAKEAWAY^W3HZMST(JB),$G(PRM)="" D:$G(PR) DMZERO Q 0
 I $P(PRM,"^",2)="TAKEAWAY"!($P(PRM,"^",3)="TAKEAWAY") D:$G(PR) DMZERO Q 0
 ;
 I $$^W4MSD(NMB),DMSAH="" Q DMSHMSD
 I $$^W4MSL(NMB),'$$DLVWEB^W4DLVCSR,DMSHMSD["!",'$G(NEW) Q DMSHMSD
 ;
 S SUM=$$TOTORD^W3HZMST(JB,"") ; -- LIFNEY DMSH & HNH
 ;;I HZM>0,'SUM,DMSHMSD'["!"!NEW Q 0  ; --> 09/05/21
 ;
 I HZM>0,$$^W4DEL(HZM)=HZM Q 0
 ;
 S TOT=SUM
 ;
 S DMSH=DMSHMSD
 ;
 I DMSAH?1N.E D
 .N DMSHO S DMSHO=DMSHMSD
 .S DMSH=$J(TOT*DMSAH*.01,2,2)
 .I $G(PR) D
 ..D PUT(JB,"DMSAH",DMSAH)
 ..D PUT(JB,"DMSH",DMSH)
 ..D PUT(JB,"TSHL",$J(TSH-DMSHO+DMSH,2,2))
 ;
 I $$^W4MSD(NMB) Q DMSH
 ;
 I DMSH["!",'NEW Q DMSH
 ;
 N LK S LK=NMB
 I LK,$D(@$$^W4GL("W4DMSPEC")@(LK)) D  Q DMSH ; -- DMSH KAVUA PER LAK
 .S DMSH=$G(^(LK))
 .I $G(PR) D
 ..D PUT(JB,"DMSH",DMSH)
 ..D PUT(JB,"TSHL",$J(TSH-DMSHMSD+DMSH,2,2))
 ;
 N CHN S CHN=0
 ;
 I $$^W4MSL(NMB) D
 .N MHCNC S MHCNC=$$MHCNC^W3SP($$CITY(JB,CODE,$G(PRM)))
 .I 'MHCNC,$G(@$$^W4PRM@("TSHLDM")) S MHCNC=$G(@$$^W4PRM@("TSHLDM"))
 .
 .I MHCNC,TOT'<MHCNC,TOT>0 D  S CHN=1 Q
 ..S DMSH=$$DMSH2ZERO^W3HZMST(DMSH)
 ..I $G(PR) D
 ...D PUT(JB,"DMSH",DMSH,$G(GL))
 ...D PUT(JB,"TSHL",TSH-DMSHMSD,$G(GL))
 .;
 .I MHCNC,TOT<MHCNC,TOT>0 D  Q
 ..I DMSAH?1N.E S DMSH=$J(TOT*DMSAH*.01,2,2) S CHN=1 I $G(PR) D
 ...D PUT(JB,"DMSH",DMSH)
 ...N TS S TS=$P($$^W4GETSUM(JB),";",5)
 ...D PUT(JB,"TSHL",TS)
 .
 ;
 I CHN Q DMSH
 ;
 N OK S OK=0
 ;
 I NOPLGN D
 .S CITY=$$CITY(JB,CODE,PRM)
 .S STREET=$$STREET(JB,CODE,PRM)
 .S HOME=$$HOME(JB,CODE,PRM)
 .I $P(PRM,"^",5) S SUM=$P(PRM,"^",5)
 .S DMSH=$$DMSHCITY^W3HZMST(JB,CODE_"^"_CITY_"^"_STREET_"^"_HOME_"^"_$G(SUM))
 .I $G(PR) D
 ..D PUT(JB,"DMSH",DMSH)
 ..N TS S TS=$P($$^W4GETSUM(JB),";",5)
 ..D PUT(JB,"TSHL",TS)
 ;
 Q DMSH 
 ;
 ;
PUT(HZ,NM,VL,GL) ;
 D PUT^W3HZMST(HZ,NM,VL,$G(GL))
 Q
 ;
CITY(JB,CODE,PRM) ;
 I $P(PRM,"^",2)'="" Q $P(PRM,"^",2)
 I $$TAKEAWAY^W3HZMST(JB) Q "TAKEAWAY"
 N CITY S CITY=$$CITY^W3HZMST(JB)
 I CITY="",$G(CODE) S CITY=$$CITY^W4L(CODE)
 Q CITY
 ;
STREET(JB,CODE,PRM) ;
 I $P(PRM,"^",3)'="" Q $P(PRM,"^",3)
 I $$TAKEAWAY^W3HZMST(JB) Q "TAKEAWAY"
 N STREET S STREET=$$STREET^W3HZMST(JB)
 I STREET="",$G(CODE) S STREET=$$KTV^W4L(CODE)
 Q STREET
 ;
HOME(JB,CODE,PRM) ;
 I $P(PRM,"^",4)'="" Q $P(PRM,"^",4)
 I $$TAKEAWAY^W3HZMST(JB) Q ""
 N HOME S HOME=$$HOME^W3HZMST(JB)
 I HOME="",$G(CODE) S HOME=$$BAIT^W4L(CODE)
 Q HOME
 ;
DMZERO ;
 D PUT(JB,"DMSH",0)
 D PUT(JB,"DMSAH",0)
 I DMSHMSD D PUT(JB,"TSHL",TSH-DMSHMSD)
 Q ;
 ;
NOMOD(JB,HZM) ;
 I $G(HZM),$$CLOSE^W4HZMST(HZM) Q 1
 I $$CLOSE^W3HZMST(JB) Q 1
 I $$^W4ELPOS,$E($$HZMLAK^W3HZMST(JB))="W",'$$ITRA^W4HZMST(HZM),'$$NOCLDLVZ^W4PRM Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 

W4CONC
W4CONC(MC,HZM) ; [ 19.06.12 13:33 ] [ 15.11.08 13:58 ] [ 06.05.07 13:26 ]
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(TSS) D ^%L1TS
 I MC=1 S TXT=$$SOAD^W4HZMST(HZM)_" "_HZM
 I MC=2 S TXT=HZM
 I MC=95 S TXT=HZM
 I MC=99 D
 .N TIMEH S TIMEH=$$HSBP^W4HZMST(HZM)
 .I TIMEH?5N1","1N.N S TIMEH=$$T^%L1TIME(TIMEH)
 .S TXT=TIMEH_" "_$$TSHL^W4HZMST(HZM)_" "_HZM
 ;
 ;;N ST S ST=+$G(@$$^W4DEVI@($P))_"~"_$H_"~"_$G(HZM)_"~"_MC_"~"_TXT
 S @$$^W4MAIN("pccn")@($O(@$$^W4MAIN("pccn")@(999999),-1)+1)=MC_" "_$$NMB^W4HZMST(HZM)_" "_TXT_" "
 Q

W4CONFL
W4CONFL ;  [ 28.05.13 11:56 ] [
 N (JB,%ARG,%REM)
 N TXT,I
 S TXT=$G(%ARG("TXT"))
 D PUT^%W3DEB("W4CONFL","TXT=TXT")
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W " <table>",!
 ;
 S EQ1=0
 F I=1:1:$L(TXT,"^") D
 .S CHAST=$P(TXT,"^",I)
 .S CD=$P(CHAST,"|"),PRM=$P(CHAST,"|",2)
 .W "  <tr><td>&nbsp;</td></tr>",!
 .W "  <tr>",!
 . W "   <td style=""color:black;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">"
 .  W CD_" "_$$H2U^%L1FRM($$SHEM^W4P(CD))
 .        W "<br>",!
 .        W "<span style=""font-size:"_$$^W3FSZ(12)_";color:red;font-weight:bold;text-decoration:underline"">"
 .          W $$^%W1DICT("CONFLICTWITHITEMS"),!
 .        W "</span>",!
 . W "   </td>"
 .W "</tr>",!
 .F J=1:1:$L(PRM,"~") D
 ..S PARSET=$P(PRM,"~",J)
 ..S PAR=$P(PARSET,";")
 ..S NSET=$P(PARSET,";",2)
 ..Q:NSET=""
 ..W "  <tr>",!
 .. W "   <td style=""color:brown;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 ..  W "&nbsp;&nbsp;"_PAR_" "_$$H2U^%L1FRM($$SHEM^W4P(PAR))
 .. W "<br><span style=""color:green;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 ..  W "&nbsp;&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("SET",NSET)_" : "_$$H2U^%L1FRM($$NMSET^W3SET(NSET))
 .. W "</span>",!
 .. W "   </td>"
 ..W "  </tr>",!
 ;
 W " </table>",!
 W " <br><br>",!
 ;
 W "<input type=""button"" class=""btn"" style=""color:red"" value="""_$$^%W1DICT("CLOSE")_""" "
 W " "_$$^W4TOUCH_"=""Back()"" "
 W ">"
 W "</div>",!
 Q

W4COPYZ
W4COPYZ(PRM) ; [ 22.03.26 13:44 ] [ 04.02.26 13:46 ] [ 13.03.24 16:28 ] 
 N (JB,%ARG,%REM,PRM)
 N DAT,DT,IND,NP,A
 S DAT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S DT=$$^%L1DC(DAT,3)
 N Z D Z
 I DT="" Q
 I IND D COPYZIND(DT,IND) Q
 ;
 S GL=$$^W4GL("Z")
 S IND="" F  S IND=$O(@GL@(DT,IND)) Q:IND=""  D COPYZIND(DT,IND)
 Q
 ;
 ;
COPYZIND(DT,IND) ;
 I $D(@Z@(DT,IND))<10 D  Q
 .W "<script>",!
 .W " MsgA(""NODATA!"")",!
 .W "</script>",!
 ;
 N ZPR S ZPR=$G(@Z@(DT,IND))
 I ZPR["B" D  Q
 .S %SCRN="W4TOT"
 .I ZPR["L" S %SCRN="W4TOTLKH"
 .M @$$^W4MAIN("TMPREP")=@Z@(DT,IND)
 .D KOTZ^W4DMANY($ZD(DT,"DD.MM.YY"),IND)
 .D ^%W1FREP(%SCRN)
 ;
 S PRZ=0,PRZM=0,PRY=0
 W "<table dir="""_$$^%W1DIR_""">",!
 S NP="" F  S NP=$O(@Z@(DT,IND,NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .N ALG S ALG=$$^%W1ALIGN
 .I A["- Z -" S PRZ=1,PRZM=1,PRY=0
 .I A[" g""ec",A'["zexikn",A'["mei zxibq",A'="zelaw",A'="dxibn" S PRZM=0
 .I A["- Y -" S PRY=1
 .I (A["- X -") S PRY=0
 .I A["- Y -"!(A["- X -") S PRZ=0
 .I A["- Z -"!(A["- Y -")!(A["- X -") S ALG=" align=""center"" "
 .I $G(@$$^W4PRM@("MAAD")),A["uega eaiegy `""k k""dq" Q
 .I $G(%ARG("OPT"))="ZONLY",'PRZ Q
 .I $G(%ARG("OPT"))="ZMANY",'PRZ!'PRZM Q
 .I $G(%ARG("OPT"))="YONLY",'PRY Q
 .S STYLE=" style="""
 .I A["- X -"!(A["- Y -")!(A["- Z -")!(A["g""ec") S STYLE=STYLE_"font-weight:bold"
 .S STYLE=STYLE_""""
 .W "<tr><td "_ALG_" "_STYLE_" >"_$$H2U^%L1FRM(A)_"</td></tr>",!
 .;;W "<tr>" D WTD^W4S1VW(A,2) W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
SELOPT ;
 W "<select id=""selopt"" dir="""_$$^%W1DIR_""" onChange=""Submit()"" >",!
 I '$$SF^W4PRM W " <option value=""ALL"">"_$$^%W1DICT("SHOWALLREPORTS")_"</option>",!
 W " <option value=""ZONLY"">"_$$^%W1DICT("SHOWZONLY")_"</option>",!
 W " <option value=""ZMANY"">"_$$^%W1DICT("SHOWZMANY")_"</option>",!
 W " <option value=""YONLY"">"_$$^%W1DICT("SHOWYONLY")_"</option>",!
 I $$SF^W4PRM W " <option value=""ALL"">"_$$^%W1DICT("SHOWALLREPORTS")_"</option>",!
 W "</select>",!
 Q
 ;
SELDAT ;
 N Z,DT,IND,I D Z
 W "<select id=""DAT"" onChange=""Submit()"" dir="""_$$^%W1DIR_""">",!
 S DT="" F I=1:1:1000 S DT=$O(@Z@(DT),-1) Q:DT=""  D
 .S IND="" F  S IND=$O(@Z@(DT,IND),-1) Q:IND=""  D
 ..S A=$ZD(DT,"DD.MM.YY")_"&nbsp;&nbsp;&nbsp;"_$$H2U^%L1FRM($$^%L1DC(DT,9))_"'&nbsp;&nbsp;&nbsp;"_IND
 ..W " <option value="""_DT_";"_IND_""" "
 ..I $G(%ARG("IND"))=IND W " selected=""selected"" "
 ..W ">" W A
 ..W " </option>",!
 W "</select>",!
 Q
 ;
Z ;
 S Z=$$^W4GL("Z")
 Q
 ;
PRINT(PRM) ;
 D ^W4MDPPC
 N DAT,DT,IND,OPT,NP,A
 S DAT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S OPT=$P(PRM,";",3)
 S DT=$$^%L1DC(DAT,3)
 N Z D Z
 I DT=""!(IND="") Q
 ;
 S TXT=$G(%MDP("B"))_"!!! wzrd "_$G(%MDP("N")) D S1^W4PCST
 S TXT=$ZD($H,"DD/MM/YY  24:60")_" : dqtcd onf" D S1^W4PCST
 S TXT="" D S1^W4PCST
 ;
 D PRINTZ(DT,IND,OPT)
PRINTE Q
 ;
PRINTZ(DT,IND,OPT)
 S PRZ=0,PRZM=0,PRY=0
 S NP="" F  S NP=$O(@Z@(DT,IND,NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .I A["- Z -" S PRZ=1,PRZM=1
 .I A[" g""ec",A'["zexikn",A'["mei zxibq",A'="zelaw",A'="dxibn" S PRZM=0
 .I A["- Y -"!(A["- X -") S PRZ=0
 .I A["- Z -"!(A["- X -") S PRY=0
 .I OPT="ZONLY",'PRZ Q
 .I OPT="ZMANY",'PRZ!'PRZM Q
 .I OPT="YONLY",'PRY Q
 .S TXT=A D S1^W4PCST
 ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
PRINTCSR(STAM) ;
 N DAT,DT,IND,Z,PRM
 S PRM=$G(%ARG("DAT"))
 S DAT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S DT=$$^%L1DC(DAT,3)
 I 'DT!'IND Q 0
 D Z
 I $G(@Z@(DT,IND))["B" Q 0
 I $$^W4LKH,'$$DOCCSR^W4LKHCSR Q 0
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4COUPPH
W4COUPPH ; [ 04.02.24 13:13 ] [ 29.10.23 15:33 ] [ 21.11.22 15:43 ] 
GET ;
 N I,IND
 D IND
 S LKH=$$LKH
 F I="REST","TERM" D
 .S @I=$G(@$$^W4PRM@(IND,I))
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W4COUPPH","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 N I,RES
 S RES=1
 N IND D IND
 K @$$^W4PRM@(IND)
 S @$$^W4PRM@(IND)=$G(LKH)
 ;
 F I="REST","TERM" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@(IND,I)=$G(@I)
 ;
 S @$$^W4PRM@("WEB","CPHON")=$G(LKH)
 Q RES
 ;
 ;
IND S IND="COUPPH"
 Q
 ;
LKH(STAM) ;
 Q $G(@$$^W4PRM@("COUPPH"))
 ;
 ;
PAY(HZM,SUM,CARD) ;
 N (JB,%ARG,%REM,HZM,SUM,CARD,COUPPH)
 I $G(CARD)="" S CARD=0
 S SUM=+$G(SUM)
 S ER=0,ER1=""
 S @$$^W4GL("CPPROT")@($$^W4DZ,HZM,CARD,SUM)=$ZD($H,"DD.MM.YY  24:60")
 M @$$^W4GL("CPPROT")@($$^W4DZ,HZM,CARD,"COUPPH")=COUPPH
 ;
 I SUM<0 Q "-2*WRONGSUM"
 ;
M D ASK(HZM,CARD,SUM)
 ;
 I $G(COUPPH)="" Q "-1*NOANSWER"
 ;
 S RES=+$G(COUPPH("RES"))
 I RES'=2000 Q RES_"*"_$P($G(@$$^W4GL("W4CPERR")@(RES)),"^")_"*"_$G(COUPPH("SUM"))
 ;
 N IND S IND=$O(@$$^W4ORD@(HZM,"CPN",9999),-1)+1
 S @$$^W4ORD@(HZM,"CPN",IND,"CARD")=CARD
 S @$$^W4ORD@(HZM,"CPN",IND,"SUM0")=SUM
 ;
 M @$$^W4ORD@(HZM,"CPN",IND)=COUPPH
 ;
END Q 0
 ;
 ;
KOT ;
 S OUT=$$DIR_"cpout"_$$^W4MYDVN
 O OUT:(REWIND:NEWVERSION:WRITE) U OUT
 ;
 W "<?xml version=""1.0"" encoding=""utf-8"" ?>",!
 W !
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" "
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" "
 W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" >",!
 W !
 W " <soap:Body>",!
 ;
 S TERM=$G(@$$^W4PRM@("COUPPH","TERM"))
 S REST=$G(@$$^W4PRM@("COUPPH","REST"))
 Q
 ;
ASK(HZM,CARD,SUM) ;
 N (JB,%ARG,HZM,CARD,SUM,COUPPH)
 ;
 D KOT
 ;
 W "  <ExecuteTransaction xmlns=""http://tempuri.org/"">",!
 W "   <Price>"_SUM_"</Price>",!
 W "   <TerminalID>"_TERM_"</TerminalID>",!
 W "   <CardNumber>"_CARD_"</CardNumber>",!
 W "   <RestaurantID>"_REST_"</RestaurantID>",!
 W "   <MealDetails>"_HZM_"</MealDetails>",!
 W "  </ExecuteTransaction>",!
 ;
 D FOOT
 ;
 C OUT
 ;
 D ANS("<ExecuteTransactionResult>","ExecuteTransaction")
 Q
 ;
 ;
ANS(TAG,PROC) ;
 N (JB,%ARG,TAG,PROC,COUPPH,OUT,SUM)
 S I=0
 D GL K @GL,COUPPH
 ;
 S POST=""""_OUT_""""
 S HEADER="""Content-Type:text/xml; charset=utf-8"""
 S HEADER1="""SOAPAction:http://tempuri.org/"_PROC_""""
 ;;S URL="https://www.goodi.co.il/WebServices/WSTest.asmx"
 S URL="https://www.goodi.co.il/WebServices/wsGoodi.asmx"
 ;
 S CMD="curl -k -m 40 -s -H "_HEADER_" -H "_HEADER1_" -d @"_POST_" "_URL
 S CMD=CMD_"|xmllint --format --encode cp862 - "
 S ^CMD=CMD 
 S CON="CPNF"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 U CON 
 ;
 S VL=""
 ;
 F  D  Q:$ZEOF
 .R A
 .S I=I+1,@GL@(I)=$E(A,1,450)
 .I A[TAG S VL=$P($P(A,TAG,2),"</")
 ;
 C CON
 ;
 S COUPPH=VL
 S COUPPH("RES")=$P(VL,"|")
 S COUPPH("TRID")=$P(VL,"|",2)
 S COUPPH("SUM")=$TR($P(VL,"|",3),",","")
 I $E($$SPA^%L1FRM(COUPPH("SUM")))?1N S COUPPH("SUM")=$J(COUPPH("SUM"),2,2)
 S COUPPH("DISC")=$G(SUM)-COUPPH("SUM")
 ;
 Q
 ;
 ;
FOOT ;
 W " </soap:Body>",!
 W "</soap:Envelope>",!
 Q
 ;
BIT(HZM,SUM,DISC,CARD,TRID) ;
 N (JB,%ARG,%REM,HZM,SUM,DISC,CARD,TRID,COUPPH)
 I $G(CARD)="" S CARD=0
 D PUT^%W3DEB("W4COUPPH-BIT","HZM=HZM&SUM=SUM&DISC=DISC&CARD=CARD&TRID=TRID")
 S SUM=+$G(SUM)
 I SUM<0 Q "-2*WRONGSUM"
 S ER=0,ER1=""
 S @$$^W4GL("CPPROT")@($$^W4DZ,HZM,CARD,-SUM)=$ZD($H,"DD.MM.YY  24:60")_"^"_TRID
 ;
 D REFUND(TRID)
 ;
 I $G(COUPPH)="" Q "-1*NOANSWER"
 ;
 S RES=+$G(COUPPH("RES"))
 I RES'=2000 Q RES_"*"_$P($G(@$$^W4GL("W4CPERR")@(RES)),"^",2)_"*"_$G(COUPPH("SUM"))
 ;
 N IND S IND=$O(@$$^W4ORD@(HZM,"CPN",9999),-1)+1
 ;
 S @$$^W4ORD@(HZM,"CPN",IND)=$G(COUPPH)
 S @$$^W4ORD@(HZM,"CPN",IND,"CARD")=CARD
 S @$$^W4ORD@(HZM,"CPN",IND,"SUM")=-SUM
 S @$$^W4ORD@(HZM,"CPN",IND,"DISC")=-$G(DISC)
 S @$$^W4ORD@(HZM,"CPN",IND,"TRID")=TRID
 S @$$^W4ORD@(HZM,"CPN",IND,"RES")="OK"
 ;
 Q "OK"
 ;
 ;
REFUND(TRID)
 N (JB,%ARG,TRID,COUPPH) 
 ;
 D KOT ; --> TERMID,REST
 ;
 W "<RefundTransaction xmlns=""http://tempuri.org/"">",!
 W "     <TransactionID>"_TRID_"</TransactionID>",!
 W "     <RestaurantID>"_REST_"</RestaurantID>",!
 W "</RefundTransaction>",!
 ;
 D FOOT
 C OUT
 D ANS("<RefundTransactionResult>","RefundTransaction")
 Q
 ;
 ;
GL ; 
 S GL=$$^W4MAIN("TMPCP")
 Q
 ;
DIR(STAM) ;
 Q "/tmp/"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4COUR
W4COUR(COD,KV) ; [ 04.03.25 15:41 ] [ 
 ;;S ^AA("W4COUR","KV")=$G(KV)
 N KVZ,SL 
 S COD=$$DOP^W4NAME(COD)
 I $G(KV) S KVZ=KV
 E  S KVZ=$$KVZ(COD)
 ;;S ^AA("W4COUR","KVZ")=KVZ
 S SL=$$SLKV^W4LEVPR($G(KVZ))
 ;;S ^AA("W4COUR","SL")=SL
 I SL Q 1
 N TFK S TFK=$$GET1^W4LEVPR(COD,"TFK")
 I $$COUR(TFK) Q 1
 Q 0
 ;
COUR(TX) ; 
 I TX["gily" Q 1
 I TX["COURIER" Q 1
 Q 0
 ;
KVZ(OVED) ;
 S OVED=$$DOP^W4NAME(OVED)
 Q $P($G(@$$^W4GNAME@(OVED)),"\")
 
 
 
 
 
 
 
 
 
 
 
 

W4CP
W4CP(STAM) ; [ 18.06.19 09:31 ] [ 
 Q $$GETP^%W1PRM("W4CP")

W4CPLKH
W4CPLKH(STAM) ; [ 11.10.20 11:35 ] [ 12.05.20 16:28 ] [ 13.10.11 12:23 ]
 I $G(@$$^W4PRM@("WEB","CPHON")) Q ^("CPHON")
 Q $G(@$$^W4PRM@("COUPPH"))
 
 

W4CPNLKH
W4CPNLKH(STAM) ; [ 10.06.14 10:03 ] [ 13.10.11 12:23 ] [ 12.10.11 13:28 ]
 Q $G(@$$^W4PRM@("CPHON"))

W4CPREP
W4CPREP ; [ 11.10.20 11:40 ] [ 09.10.20 08:54 ] [ 08.10.20 12:57 ] 
 N (JB,%ARG,%REM)
 D ^W4IN
 D ^%W1ARG I '$G(DAT1),'$G(DAT2) Q
 S D1=$$^%L1DC(DAT1,3)
 S D2=$$^%L1DC(DAT2,3)
 S GLS4B=$$^W4MAIN("S4B")
 D FRM
 S %SCRN="W4CPREP"
 S S4B=""
 D PC^W4DMANY
 Q
 ;
 ;
FRM ;
 K @$$^W4MAIN("VRM")
 S GL=$$^W4MAIN("TMPREP")
 K @GL
  ;
 N DT,HZ,I,II,IND,A,SUM,ST,TBLKH
 S I=0
 S (SUMHZ,SSUM,SHNHM,SHNHTB,SSUMCR)=0
 ;
 S CPLKH=$$^W4CPLKH
 ;
 F DT=D1:1:D2 D
 .S (DHZ,DSUM,DHNHM,DHNHTB,DSUMCR)=0
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 ..I $$HZM^W4MSL(HZ),VT=1 Q
 ..I $$HZM^W4MSD(HZ),VT=2 Q
 ..S INDCP=0
 ..S IND="" F  S IND=$O(@$$^W4ORD@(HZ,"CB","ASR",IND)) Q:IND=""  D
 ...S A=$G(^(IND))
 ...I $P(A,"*")'=CPLKH,$P(A,"*",6)'=CPLKH Q
 ...S SUM=$P(A,"*",4),INDCP=INDCP+1
 ...D
 ....I $D(@$$^W4ORD@(HZ,"CPN")),$$CPCARD(HZ,INDCP) Q
 ....S ST=$ZD(DT,"DD.MM.YY")_"\"_HZ_"\\\"_$J(SUM,2,2)_"\\"_$J(SUM,2,2)
 ...S SSUM=SSUM+SUM
 ...S DSUM=DSUM+SUM
 ...S I=I+1,@GLS4B@(I)=ST
 .
 .S ST=$ZD(DT,"DD.MM.YY")_"\\\\"_$J(DSUM+DHNHM,2,2)_"\"_$J(DHNHM,2,2)_"\"_$J(DSUM,2,2)
 .S I=I+1,@GLS4B@(I)=ST,@GLS4B@(I,"B")=""
 ;
 S SUM4B=$$BG^W4MAIN("S4B")_"99999)"
 S @SUM4B="\\\\"_$J(SSUM+SHNHM,2,2)_"\"_$J(SHNHM,2,2)_"\"_$J(SSUM,2,2)
 Q
 ;
 ;
CPCARD(HZ,NOMCP) ;
 N OK,NCP,K S OK=0,K=0
 S NCP="" F  S NCP=$O(@$$^W4ORD@(HZ,"CPN",NCP)) Q:NCP=""  S K=K+1 I K=NOMCP S OK=1 Q
 I 'NCP Q 0
 I 'OK Q 0
 I '$D(@$$^W4ORD@(HZ,"CPN",NCP)) Q 0
 ;
 N CARD,ASM,SUM,HNC,ST
 S CARD=$G(^(NCP,"CARD")) Q:CARD=""
 S ASM=$G(^("TRID"))
 S SUM=$G(^("SUM"))
 S HNC=$G(^("DISC"))
 I CARD["=" S CARD=$P(CARD,"=")
 ;
 S ST=$ZD(DT,"DD.MM.YY")_"\"_HZ_"\"_$E(CARD,1,16)_"\"_ASM
 S ST=ST_"\"_$J(SUM+HNC,2,2)_"\"_$J(HNC,2,2)_"\"_$J(SUM,2,2)
 ;
 S SSAH=SSAH+SUM
 S SHNC=SHNC+HNC
 S SSUM=SSUM+SUM+HNC
 ;
 S DSAH=DSAH+SUM
 S DHNC=DHNC+HNC
 S DSUM=DSUM+SUM+HNC
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CPREP0
W4CPREP ; [ 08.10.20 12:57 ] [ 17.03.17 12:58 ] [ 16.03.17 22:13 ] 
 N (JB,%ARG,%REM)
 D ^W4IN
 D ^%W1ARG I '$G(DAT1),'$G(DAT2) Q
 S D1=$$^%L1DC(DAT1,3)
 S D2=$$^%L1DC(DAT2,3)
 D FRM
 S %SCRN="W4CPREP"
 D PC1^W4DMANY
 Q
 ;
 ;
FRM ;
 K @$$^W4MAIN("VRM")
 S GL=$$^W4MAIN("TMPREP")
 K @GL
 ;
 N II S I=0
 S (SSUM,SHNC,SSAH)=0
 ;
 F DT=D1:1:D2 D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CPN")) D
 ..I $L($$NMB^W4HZMST(HZ))>3,VT=1 Q
 ..I $L($$NMB^W4HZMST(HZ))<4,VT=2 Q
 ..S NTB="" F  S NTB=$O(@$$^W4ORD@(HZ,"CPN",NTB)) Q:NTB=""  D
 ...S CARD=$G(^(NTB,"CARD")) Q:CARD=""
 ...S ASM=$G(^("TRID"))
 ...S SUM=$G(^("SUM"))
 ...S HNC=$G(^("DISC"))
 ...I CARD["=" S CARD=$P(CARD,"=")
 ...S ST=$ZD(DT,"DD.MM.YY")_"\"_HZ_"\"_$E(CARD,1,16)_"\"_ASM
 ...S ST=ST_"\"_$J(SUM+HNC,2,2)_"\"_$J(HNC,2,2)_"\"_$J(SUM,2,2)
 ...S SSAH=SSAH+SUM
 ...S SHNC=SHNC+HNC
 ...S SSUM=SSUM+SUM+HNC
 ...S I=I+1,@GL@("G",I)=ST
 ;
 Q
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HZ S HZ=$P(A,"\",2)
 W " style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"')"" "
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CRCAT
W4CRCAT(JB) ; [ 06.08.25 17:10 ] [ 10.08.21 12:04 ] [ 12.11.19 16:42 ] 
 N (JB)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 ;;I '$$SUPER^W3PRM S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D CRPAR(N)
 ;;I $$SUPER^W3PRM D
 D
 .S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 ..N SUG S SUG=$$SUG^W4P(N) I SUG,'$$^W4VWGR(SUG) Q
 ..I $G(@$$^W4GL("PARSUG")@(SUG))?." " Q
 ..D CRPAR(N)
 ;
 S N="" F  S N=$O(@$$^W4PARCAT@(N)) Q:N=""  D
 .I $E(N,1,2)="<>" Q
 .I $D(^(N))<10 K ^(N)
 ;
 S @$$^W4PARCAT=1
 Q
 ;
CRPAR(N) ;
 I $$NOPAR^W4PRTVW(N) Q
 I $G(@$$^W4PRM@("CRCAT")) S @$$^W4PARCAT@(SUG,N)="" Q
 ;
 I $$P1HZTF^W4PARUS(N,$G(NMB)) D
 .S SUG=+$$SUG^W4P(N) Q:SUG=""
 .Q:'$D(@$$^W4PARCAT@(SUG))
 .S @$$^W4PARCAT@(SUG,N)=""
 Q
 
 
 
 
 
 
 
 
 
 
 

W4CRCAT0
W4CRCAT(JB) ; [ 12.11.19 12:00 ] [ 05.11.19 13:53 ] [ 09.11.17 18:36 ] 
 N (JB)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I '$$SUPER^W3PRM S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D CRPAR(N)
 I $$SUPER^W3PRM D
 .S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 ..N SUG S SUG=$$SUG^W4P(N) I SUG,$G(@$$^W4GL("W3SUG")@(SUG))=0 Q
 ..D CRPAR(N)
 S @$$^W4PARCAT=1
 ;
 S N="" F  S N=$O(@$$^W4PARCAT@(N)) Q:N=""  D
 .I $E(N,1,2)="<>" Q
 .I $D(^(N))<10 K ^(N)
 Q
 ;
CRPAR(N) ;
 I $$NOPAR^W4PRTVW(N) Q
 I $$P1HZTF^W4PARUS(N,$G(NMB)) D
 .S SUG=+$$SUG^W4P(N) Q:SUG=""
 .Q:'$D(@$$^W4PARCAT@(SUG))
 .S @$$^W4MAIN("PARCAT")@(SUG,N)=""
 Q
 
 
 
 
 
 

W4CRITMH
W4CRITMH(JB) ; [ 10.06.25 15:00 ] [ 09.06.25 12:51 ] [ 
 N (JB,%ARG,%REM)
 S DT0=$O(@$$^W4REF@(""))
 S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 S DT="" F  S DT=$O(@$$^W4REF@(DT)) Q:DT=""  D 
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N D
 ...S A=$G(^(N)) 
 ...S CD=$P(A,"\"),MH=$P(A,"\",4) Q:'CD
 ...S @TMP@(CD,DT)=MH
 .Q:DT=DT0
 .D CMPMH(DT)
 ;
 K @TMP
 D PUT^%W1PRM("CHITPROT",1)
 Q
 ;
 ;
CMPMH(DT) ;
 N CD 
 S CD="" F  S CD=$O(@TMP@(CD)) Q:CD=""  D
 .S MH=$G(@TMP@(CD,DT)) Q:MH=""
 .S DTO=$O(@TMP@(CD,DT),-1) Q:DTO=""
 .S MHO=$G(@TMP@(CD,DTO)) Q:MHO=""
 .I +MH'=+MHO D
 ..S @$$GL^W4PARMH@(DT,CD)=MH_"\"_MHO
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CRKOD
W4CRKOD ; [ 14.06.18 03:30 ] [ 13.06.18 11:57 ] [ 
 N (JB,%ARG)
 S LAB="SHV"
 I $$EMV^W4PRM S LAB="EMV"
 K @$$^W4GL("KOD")
 F I=1:1 S T=$T(@LAB+I) Q:T[" Q  ;"  D
 .S N=$P(T,";",2)
 .S TX=$P(T,";",3)
 .I 'N!(TX?.P) Q
 .S @$$^W4GL("KOD")@(N)=TX
 Q
 ;
SHV ;
 ;0;dpiwz dwqr;
 ;1;qihxk mxgd meqg;
 ;2;qihxk mxgd aepb ;
 ;3;i`xy`d zxagl xywzd;
 ;4;aexiq;
 ;5;qihxk mxgd siefn;
 ;6;mipiwz `l zedf zcerz e`/e CVV2;
 ;7;i`xy` zxagl xywzdl daeg;
 ;8;mineqg uaewl dyib gztn ziipaa dlwz;
 ;9;i`xy` zxagl xywzz,xywzdl gilvd `l;
 ;10;(ESC) lirtnd z`xed i"tr dwqted zipkez;
 ;11;d`iby;
 ;12;d`iby;
 ;13;d`iby;
 ;14;d`iby;
 ;15;ihpbn qtl clwedy xtqnd oia dn`zd oi`;
 ;16;d`iby;
 ;17;zepexg` zextq 4 eclwed `l;
 ;18;d`iby;
 ;19;mieez 16-n dxvw INT_IN uaewa dneyx;
 ;20;miiw `l (INT_IN) hlw uaew;
 ;21;dwqir lk xear xeyi`l dywa e` xeciy rva - okcern `l e` miiw `l (NEG) mineqg uaew;
 ;22;miiw `l mixhwee e` mixhnxt ivawn cg`;
 ;23;miiw `l (DATA) mikix`z uaew;
 ;24;miiw `l (START) legz` uaew;
 ;25;dwqir lk xear xeyi`l dywa e` xeciy rva - icn lecb mineqg zhilwa minia yxtd;
 ;26;dwqir lk xear xeyi`l dywa e`xeciy rva - icn lecb mineqg zhilwa zexec yxtd;
 ;27;cala dnizg zwqirk e` zipetlh dwqirk dwqir xcbd elek ihpbn qt qpked `l xy`k;
 ;28;wtq axk dcearl xcbend seqnl qpked `l ifkxn seqn xtqn;
 ;29;ahen axk dcearl xcbend sqenl qpked `l ahen xtqn;
 ;30;ahen 'qn/wtq 'qn clwede ahen ax/wtq axk okcern epi`y seqn;
 ;31;ahen 'qn mb clwede wtq axk okcern seqn;
 ;32;xcyl yi zepyi zerepz;
 ;33;oiwz `l qihxk;
 ;34;z`fk dwqirl xeyi` oi` e` df seqna rval i`yx `l qihxk;
 ;35;df i`xy` beq mr dwqir rval i`yx `l qihxk;
 ;36;swez bt;
 ;37;(minelyz 'qn letk reaw melyz) + oey`x melyz deey zeidl jixv dwqir k"dq - minelyza d`iby;
 ;38;iciin aeig qihxkl dxwz lrn dwqir rval ozip `l;
 ;39;dpiwz `l zxewia zxtiq;
 ;40;wtq 'qn mb clwed ahen axk okcerny seqn;
 ;41;(xywzdl xeq`) J1 e` J2 e` J3 likn hlwd uaew j` dxwz lrn;
 ;42;(xywzdl xeq`) J1 e` J2 e` J3 likn hlwd uaew j` wtqa meqg qihxk;
 ;43;(xywzdl xeq`) J1 e` J2 e` J3 likn hlwd uaew j` zi`xw`;
 ;44;(J5) likn hlwd uaew j` dwqir `ll xeyi` ywal i`yx `l seqn;
 ;45;(J6) likn hlwd uaew j` i`pernw znfeia xeyi` ywal i`yx `l seqn;
 ;46;(xywzdl xeq`) J1 e` J2 e` J3 likn hlwd uaew j` xeyi` ywal aiig seqn;
 ;47;(xywzdl xeq`) J1 e` J2 e` J3 likn hlwd uaew j`,iceq xtqn cilwdl aiig;
 ;48;d`iby;
 ;49;d`iby;
 ;50;daeyz oi`;
 ;51;oiwz `l akx xtqn;
 ;52;clwed `l wgxn cn;
 ;53;wlc zpgzk xcben `l seqn;
 ;57;zedf zcerz 'qn clwed `l ;
 ;58;CVV2 clwed `l;
 ;59;CVV2-de zedf zcerz 'qn eclwed `l;
 ;60;oexkifa hlw ipezp zlgzda `vnp `l ABS sexiv;
 ;61;miinrt `vnp e` `vnp `l qihxk xtqn;
 ;62;oiwz `l dwqir beq;
 ;63;oiwz `l dwqir cew;
 ;64;oiwz `l i`xy` beq;
 ;65;oiwz `l rahn;
 ;66;minelyzn dpey i`xy` beql reaw melyz e`/e oey`x melyz miiw;
 ;67;df yxec epi`y i`xy` beql minelyz xtqn miiw;
 ;68;minelyzn dpey i`xy` beql ccnl e` xlecl cinvdl ozip `l;
 ;69;icin xvw ihpbnd qtd jxe`;
 ;70;iceq xtqn zywdl xiykn xcben `l;
 ;71;iceq 'qn cilwdl daeg;
 ;72;ihpbn qihxk xard - oinf `l g"kw;
 ;73;g"kwa qihxk xiardl daeg;
 ;74;lerp qihxk - diigc;
 ;75;ie`xd onfa dniizqd `l g"kw mr dlert - diigc;
 ;76;zkxrna mixcben mpi` g"kwn elawzd xy` mipezp - diigc;
 ;77;ieby iceq xtqn ywed;
 ;80;mi`zn `l i`xy` beql "oecren cew" qpked;
 ;99;TRAN uaew geztl/aezkl/`exwl gilvn `l;
 ;100;iceq xtqn zywdl xiykn miiw `l;
 ;101;dcearl i`xy` zxagn xeyi` oi`;
 ;106;iciin aeiig i`xy`l `zli`y revial xey` oi` seqnl;
 ;107;ze`wqrd xtqna wlgl - icn lecb dwqrd mekq;
 ;108;zevle`n ze`wqir rval xeyi` oi` seqnl;
 ;109;587 zexyd cew mr qihxkl xeyi` oi` seqnl;
 ;110;iciin aeig qihxkl xeyi` oi` seqnl;
 ;111;minelyza dwqirl xeyi` oi` seqnl;
 ;112;minelyza cala dnizg/oetlh dwqirl xeyi` oi` seqnl;
 ;113;zipetlh dwqirl xeyi` oi` seqnl;
 ;114;"cala dnizg" dwqirl xeyi` oi` seqnl;
 ;115;mixleca dwqirl xeyi` oi` seqnl;
 ;116;oecren zwqrl xeyi` oi` seqnl;
 ;117;miliin/zecewp/miakek zwqrl xeyi` oi` seqnl;
 ;118;hicxw`xyi i`xy`l xeyi` oi` seqnl;
 ;119;hicxw qwn` i`xy`l xeyi` oi` seqnl;
 ;120;xlecl dcnvdl xeyi` oi` seqnl;
 ;121;ccnl dcnvdl xeyi` oi` seqnl;
 ;122;l"eg iqihxkl dcnvdl xeyi` oi` seqnl;
 ;123;df i`xy` beql miakek zwqrl xeyi` oi` seqnl;
 ;124;minelyza hicxw i`xy`l xeyi` oi` seqnl;
 ;125;minelyza hicxw i`xy`l xeyi` oi` seqnl;
 ;126;df oecren cewl xeyi` oi` seqnl;
 ;127;iciin aeig iqihxkl hxt iciin aeig zwqrl xeyi` oi` seqnl;
 ;128;3 - a miligzn xy` dfie iqihxk lawl xeyi` oi` seqnl;
 ;129;dxwz lrn zekf zwqr rval xeyi` oi` seqnl;
 ;130;oecren zwqr rval i`yx `l qihxk;
 ;131;miakek zwqr rval i`yx `l qihxk;
 ;132;mixleca ze`wqr rval i`yx `l qihxk;
 ;133;hxk`xyi ly mitwz miqihxk zniyx it lr oiwz `l qihxk;
 ;134;ieby- qihxka zextqd xtqn-(hxk`xyi ly VECTOR1) zkxrnd zxcbd it lr oiwz `l qihxk;
 ;135;(hxk`xyi ly VECTOR1) zkxrnd zxcbd it lr zeixlec ze`wqr rval iy`x `l qihxk;
 ;136;(dfie ly VECTOR20) zkxrnd zxcbd it lr ze`wqr rval zi`yx dpi` xy` miqihxk zveawl jiiy qihxkd;
 ;137;(qxpiic ly VECTOR21) zkxrnd zxcbd it lr dtwz `l (zextq 7) qihxkd zneciw;
 ;138;hxk`xyi ly mitwz miqihxk zniyx it lr minelyza ze`wqr rval i`yx `l qihxk;
 ;139;hxk`xyi ly mitwz miqihxk zniyx it lr icn lecb minelyz xtqn;
 ;140;minelyza oecren ze`wqr rval mi`yx `l qxpiice dfie iqihxk;
 ;141;(hxk`xyi ly VECTOR5) zkxrnd zxcbd it lr dtwz `l miqihxk zxciq;
 ;142;(hxk`xyi ly VECTOR6) zkxrnd zxcbd it lr swz `l zexy cew;
 ;143;(hxk`xyi ly VECTOR7) zkxrnd zxcbd it lr dtwz `l(zextq 2) qihxkd zneciw;
 ;144;(dfie ly VECTOR12) zkxrnd zxcbd it lr swz `l zexy cew;
 ;145;(dfie ly VECTOR13) zkxrnd zxcbd it lr swz `l zexy cew;
 ;146;zekf zwqr rval xeq` iciin aeig qihxkl;
 ;147;`tl` ly 31 xehwee it lr minelyza ze`wqr rval i`yx `l qihxk;
 ;148;`tl` ly 31 xehwee it lr cala dnizge zeipetlh ze`wqr rval i`yx `l qihxk;
 ;149;`tl` ly 31 xehwee it lr zeipetlh ze`wqr rval i`yx epi` qihxk;
 ;150;iciin aeig iqihxkl xye`n `l i`xy`;
 ;151;l"eg iqihxkl xye`n `l i`xy`;
 ;152;oiwz `l oecren cew;
 ;153;(qxpiic ly VECTOR21) zkxrnd zxcbd it lr 30 sicr) yinb i`xy` ze`wqr rvali`yx `l qihxk;
 ;154;(qxpiic ly VECTOR21) zkxrnd zxcbd it lr iciin aeig ze`wqr rval i`yx `l qihxk;
 ;155;icin ohw hicxw zwqra melyzl mekq;
 ;156;oiwz `l hicxw zwqrl minelyz xtqn;
 ;157;hicxw e` libx i`xy` mr dwqira df qihxk beql 0 dxwz;
 ;158;iciin aeig i`xy` mr zwqra df qihxk beql 0 dxwz;
 ;159;mixleca iciin aeig dwqira df qihxk beql 0 dxwz;
 ;160;zipetlh zwqra df qihxk beql 0 dxwz;
 ;161;zekf zwqra df qihxk beql 0 dxwz ;
 ;162;minelyz zwqra df qihxk beql 0 dxwz;
 ;163;minelyza ze`wqr rval i`yx `l l"ega wtped xy`qxtqw` owixn` qihxk;
 ;164;libx i`xy`a wx ze`wqr rval i`yx JCB iqihxk;
 ;165;dwqird mekqn lecb miakeka mekq;
 ;166;seqnd ly megza `l oecren qihxk;
 ;167;mixleca miakek zwqr rval ozip `l;
 ;168;df i`xy` beq mr mixleca dwqir rval ozip `l;
 ;169;libxdn dpey i`xy` mr zekf zwqr rval ozip `l;
 ;170;xzendn lecb miakeka dgpd mekq;
 ;171;iciin aeig i`xy`/qihxkl zvle`n dwqir rval ozip `l;
 ;172;(ddf epi` qihxk xtqn e` zekf zwqir) zncew dwqir lhal ozip `l;
 ;173;dletk dwqir;
 ;174;df i`xy`l ccnl dcnvdl xeyi` oi` seqnl;
 ;175;df i`xy`l xlecl dcnvdl xeyi` oi` seqnl;
 ;176;(hxk`xyi ly 1 xehwe) zkxrnd zxcbd it lr swz epi` qihxk;
 ;177;"wlc zepgzainvr zexy" `l` "invr zexiy" rval ozip `l wlc zepgza;
 ;178;miliin/zecewp/miakeka zekf zwqr rval xeq`;
 ;179;xiiz qihxka xleca zekf zwqr rval xeq`;
 ;180;zipetlh dwqr rval ozip `l oecren qihxka;
 ;200;zineyii d`iby;
 ;257;xeciyl zerepz oi`;
 Q  ;
 ;
 ;
EMV ;
 ;-999;jildza dwqr;
 ;-52;`ayn daebz oi`;
 ;-51;dcya zerh;
 ;-50;mipezpd cqn z` geztl zexyt` oi`;
 ;-44;oiwz `l qihxk swez;
 ;-43;ieby ipci jxr zqpkd;
 ;-42;rbn zwqr mipezp oi`;
 ;-41;rbn `ll dwqr mipezp oi`;
 ;-40;zihpbn dwqr mipezp oi`;
 ;-39;oiwz `l jix`z;
 ;-37;oiwz `l wlc;
 ;-36;oiwz `l dahd cew;
 ;-35;oiwz `l dahd xtqn;
 ;-34;oiwz `l dahd mekq;
 ;-33;oiwz `l ccnl cenv jxr;
 ;-32;oiwz `l hicxw inelyz xtqn;
 ;-31;iwz `l minelyz xtqn;
 ;-30;mipiwz `l i`xy` ipezp;
 ;-29;oiwz `l tih;
 ;-28;oiwz `l way`w mekq;
 ;-27;oiwz `l dwqr beq;
 ;-26;oiwz `l rahn cew;
 ;-25;oiwz `l mekq;
 ;-11;qihxkd `xewa dlwz;
 ;-10;lcpd zlwz;
 ;-9;oken `l qihxkd `xew;
 ;-8;oiwz `l qihxkd `xew ddfn;
 ;-7;dlgzd `ll seqnd xtqn;
 ;-6;seqn xtqn oi`;
 ;-5;mkg qihxk e` gkwl xyw oi`;
 ;-4;mipezpd cqn z` geztl leki `l;
 ;-3;oexkf oi`;
 ;-2;xye`n `l dwqr beq;
 ;-1;dpken `l zkxrnd;
 ;0;dxye` dwqrd;
 ;1;qihxk mxgd .meqg;
 ;2;qihxk mxgd .aepb;
 ;3;i`xy`d zxagl xywzd;
 ;4;dxye` `l dwqr;
 ;5;mxgd .siefn qihxk;
 ;6;zeieby zepexg` zextq yely;
 ;7;ieby dgha` cew;
 ;8;miieby zaezk ipezp;
 ;9;sweza epi` qihxkd;
 ;10;iwlg xeyi`;
 ;11;xg`'/liin'/akek'/wp xqeg;
 ;12;seqna dyxen `l qihxkd;
 ;13;ieby dxzi cew .diigc;
 ;14;zyxl jieyn `l qihxk .diigc;
 ;15;zxeywza wzp .diigc;
 ;16;rahn beql d`yxd oi` .diigc;
 ;17;dwqra i`xy` beql d`yxd oi`;
 ;26;ieby ID :dwqr dgc;
 ;29;qihxk zqpkd avn oi`;
 ;30;90 xehwea riten `l qihxk;
 ;31;xehwea witpn oi`;
 ;32;xehwea bzen oi`;
 ;33;bzen witpn mixhnxt hq oi`;
 ;34;mixhnxta xiiz bzen oi`;
 ;35;miiw `l wleq;
 ;36;zxeywz oi` sweza `l qihxk;
 ;37;DCODE bzen hwiltpew;
 ;38;SVC 587 diigc;
 ;39;i`xy`d ibeq z` dgc qihxk;
 ;40;xye`n `l i`xy` beq;
 ;41;xye`n `l dwqr beq;
 ;42;dwqrd beq z` dgc qihxkd;
 ;43;xye`n `l rahn beq;
 ;44;oiwz `l 2 uexr;
 ;45;oiwz `l qihxk xtqn;
 ;46;zxye`n `l zihpbn dwqr;
 ;47;90 xehwea `l qihxkd;
 ;48;93 xehwea `l witpnd;
 ;49;92 xehwea `l beznd;
 ;50;wleq ipezp oi`;
 ;51;91 xehwea `l wleqd;
 ;52;mineqg uaewl zybl ozip `l;
 ;53;90 xehwea dieby dqipk;
 ;54;DCODE zaeyz diigc;
 ;55;587 zexiy cew diigc;
 ;56;zexiy cew diigc;
 ;57;mitwz uaew diigc;
 ;58;qihxkl oiwz `l dwqr beq;
 ;59;wlc dpi`y dwqra wlc qihxk;
 ;60;dwqr `ll xeyi`l d`yxd oi`;
 ;61;xye`n `l mipecren;
 ;62;wlc xiykn dwqr beqa hwiltpew;
 ;65;mkgd `xewl qihxk qipkdl dqp;
 ;70;xye`n `l dwqr beq;
 ;71;dwqr.q xyi` `l witpnd;
 ;79;bxeg rbn `ll ze`wqra mekq;
 ;80;qihxka dyxen `l dwqr cew;
 ;85;dyxen `l rahn dwqr cew;
 ;90;dyxen i`xy` beq oi`;
 ;91;dyxen `l libx i`xy` beq;
 ;92;dyxen `l sicr;
 ;93;dyxen `l iciin aeig;
 ;96;ziyxen dpi` hicxw zwqr;
 ;98;ziyxen dpi` minelyz zwqr;
 ;100;akx xtqna hwiltpew;
 ;101;mipezpd cqna miiw `l oecren;
 ;110;geehl uegn minelyz xtqn;
 ;111;oiwz `l melyzl menipin;
 ;120;he`` miih;
 ;121;zihpbna xye`n `l mkg qihxk;
 ;122;dwix micnren zniyx;
 ;123;aay z`iby;
 ;124;zxye`n `l zipetlh dwqr;
 ;125;iweg `l qihxk xtqn;
 ;126;dlertd z` lhia ynzynd;
 ;130;130 d`iby cew;
 ;131;131 d`iby cew;
 ;132;dahdl d`yxd oi`;
 ;149;miiw `l xlecd xry;
 ;150;dxwz oi`;
 ;160;oiwz `l ipci xeyi` xtqn;
 ;161;dneqg ziaihnxetpi` dwqr;
 ;162;ziaihnxetpi` dwqr;
 ;200;dgc qihxkd;
 ;250;qihxk zhlgd oi`;
 ;251;hwhpew qihxk zhlgd oi`;
 ;257;xeciyl zerepz oi`;***MY;
 ;300;akx xtqn oi`;
 ;301;ieby akx xtqn;
 ;302;welczl xye`n `l;
 ;303;oiwz `l xhnecitq;
 ;400;xeyi`l zelrl aiig;
 ;450;xeyi`l dilr zeawra diigc;
 ;458;xye`n `l i`xy` zxagl xywzd;
 ;901;zaezk ihxt mixqg;
 ;902;ipetlh xeyi` rval yi;
 ;909;mireci `l mihxt mixqg;
 ;995;zkxrna miiw ipevig dwqr ddfn;
 ;996;dwqr ddfn ipezp zlwz;
 ;997;drvazd xak dwqr;
 ;998;ynzyn ici lr lehia;
 ;999;dlgze` `l dwqr;
 Q  ;
 
 
 
 

W4CRLK
W4CRLK(HZW,GL) ; [ 14.08.23 12:29 ] [ 09.08.23 17:05 ] [ 05.04.23 14:02 ] 
 N (JB,%ARG,GL,HZW)
 I $G(GL)["W3ORD",GL'["(" S GL=GL_"("_HZW_")"
 S GL=$G(GL)
 S NMB=$$NMB^W3HZMST(HZW,GL)
 I $G(NMB)="" Q
 I $$DC^W4L(NMB) Q
 F I="NAME\H","CITY","STREET\H","PELE","COMP\H","TELB","COMMENT\H","CMNTIN\H","FAX","EMAIL" D
 .S RKV=I,RG=""
 .I I["\" S RKV=$P(I,"\"),RG=$P(I,"\",2)
 .N CMD S CMD="S "_RKV_"=$$"_RKV_"^W3HZMST(HZW,GL)"
 .X CMD
 .I RG="H" S @RKV=$$INVH^%L1FRM(@RKV)
 ;
 D CRLK^W3SETHD(NMB,HZW,GL)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CRMRK
W4CRMRK ; [ 29.12.21 07:19 ] [ 16.04.09 15:13 ] [ 28.02.06 19:21 ] 
 L @$$^W4GL("MRKZ"):2 E  Q
 K @$$^W4GL("MRKZ")
 I $$MLY^W4PRM D  L  Q
 .N MLY S MLY=$$UCI^W4GLM
 .S N="" F  S N=$O(@$$^W4GLM("YZRN")@(N)) Q:N=""  D
 ..I $D(@$$^W4GLM("MRKZNO")@(N)) Q
 ..I N=$G(@$$^W4GLM("STAT")@("MLY","EM","MRKZ")) Q
 ..S MD=$P($G(@$$^W4GLM("YZRN")@(N,10)),"*",14)
 ..I MD D
 ...S @$$^W4GL("MRKZ")@(N)=$G(@$$^W4GLM("YZRN")@(N))
 ...S @$$^W4GL("MRKZ")@(N,"MD")=MD
 ..S ADDR=$P($G(@$$^W4GLM("YZRN")@(N,4)),"*",10)
 ..I ADDR D
 ...S @$$^W4GL("MRKZ")@(N)=$G(@$$^W4GLM("YZRN")@(N))
 ...S @$$^W4GL("MRKZ")@(N,"ADDR")=ADDR
 ;
 L  Q
 

W4CRNCY
W4CRNCY ; [ 03.07.23 04:06 ] [ 02.07.23 18:02 ] [ 
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table id=""Tbl"" width=""30%"" >",!
   W "<tr>"
    W "<th width=""6%"">" 
     W "#"
    W "</th>"
    W "<th width=""50%"">" 
     W $$^%W1DICT("CURRENCYNAME")
    W "</th>"
    W "<th>" 
     W $$^%W1DICT("CURRENCYRATE")
    W "</th>"
   W "</tr>"
  ;
   W "<tr>"
    W "<td>1</td>" 
    W "<td>"_$$^%W1DICT("NIS")_"</td>"
    W "<td>1.000</td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>2</td> "
    W "<td>"_$$^%W1DICT("DOLLAR")_"</td>"
    W "<td><input id=""shaar2"" onFocus=""OnFocus(this)"" size=""8"" value="""_$$RKV(2)_"""></td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>3</td>" 
    W "<td>"_$$^%W1DICT("EURO")_"</td>"
    W "<td><input id=""shaar3"" onFocus=""OnFocus(this)"" size=""8"" value="""_$$RKV(3)_"""></td>"
   W "</tr>",!
   ;
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GL ;
 S GL=$$^W4GL("P1SUGM")
 Q
 ;
RKV(N) ;
 N GL D GL
 Q +$G(@GL@(N))
 ;
SAVEND(PRM) ;
 N I,C,GL D GL
 F I=1:1:$L(PRM,";") D
 .S C=$P(PRM,";",I)
 .S NM=$$NM(I) 
 .S @GL@(I)=C_"\"_NM
 Q
 ;
NM(I) ;
 N LNG S LNG=$$^%W1LNG
 I I=1 Q $$TV^%W1DICT(LNG,"NIS")
 I I=2 Q $$TV^%W1DICT(LNG,"DOLLAR")
 I I=3 Q $$TV^%W1DICT(LNG,"EURO")
 Q ""
 
 

W4CRPOS
W4CRPOS() ; [ 24.06.26 13:24 ] [ 26.03.25 17:24 ] [ 07.04.24 04:55 ] 
 I '$G(%REM) S %REM=$$GETP^%W1PRM("REM")
 I '$G(%REM) Q "NOREM"
 ;;S ^AA("W4CRPOS","REM")=$G(%REM)
 N NEWDEV
 S NEWDEV=$O(@$$^W4DEV@(9999),-1)+1
 ;;S NEWDEV=$$^W4MYDVN
 I $G(@$$^W4PLUK@(NEWDEV,"LP")) Q "DEFYET"
 ;
 ;;I %REM="2.55.118.175" S NEWDEV=25
 S @$$^W4DEVI@(%REM)=NEWDEV
 S @$$^W4DEV@(NEWDEV)=%REM
 S @$$^W4DEV@(NEWDEV,"H")="AUTO\"_$H_"\"_%REM
 S @$$^W4PLUK@(NEWDEV)="AUTO"
 ;
 N I F I="BIT","HNH","HSB","MZM" D
 .S @$$^W4PLUK@(NEWDEV,I)=1
 ;
 S @$$^W4PLUK@(NEWDEV,"LP")=$G(@$$^W4PLUK@(1,"LP"))
 I $$EMV^W4PRM,'$G(@$$^W4PRM@("NOCRPOS")) S @$$^W4GL("W4POSEMV")@(NEWDEV)=(($$MAX+1)\1)_"\\1"
 Q NEWDEV
 ;
MAX() ;
 N MAX,NOM S MAX=0
 N N S N="" F  S N=$O(@$$^W4GL("W4POSEMV")@(N)) Q:N=""  D
 .S NOM=$P($G(^(N)),"\")
 .I NOM>MAX S MAX=NOM\1
 Q MAX
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CRTABL
W4CRTABL ; [ 09.10.14 11:04 ] [ 09.04.13 15:19 ] [ 24.05.10 11:59 ]
 N (JB,%ARG,%REM)
 W "<div align=""center"">",!
 W "<br><br><br>",!
 W "<table border=""0"" style=""padding:10px;border:ridge 2px"" dir="""_$$^%W1DIR_""">",!
  W "<tr>"
    W "  <td>" W $$^%W1DICT("KINDOFTABLE") W "&nbsp;"
     W "<select id=""sugs"">"
      S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D
      .S A=$G(^(N))
      .W "<option value="""_N_""" >"_N_" "_$$H2U^%L1FRM(A)_"</option>",!
     W "</select>",!
    W "  </td>",!
    ;
    W "  <td>"_$$^%W1DICT("FROMTABLE")_" "
     W "  <input type=""text"" maxlength=""3"" size=""3"" id=""fromtbl"">"
    W "</td>",!
    ;
    W "  <td>"_$$^%W1DICT("TOTABLE")_" ",!
     W "&nbsp;<input type=""text"" maxlength=""3"" size=""3"" id=""totbl"">"
    W "  </td>",!
    ;
  W "</tr>",!
  ;
  D LINE
  ;
  W "<tr>",!
   W "<td colspan=""3"">"
    W "<table width=""100%"">"
     W "<tr>"
      W " <td align=""center"">",!
       D ROUNDBUT^%W1JS("create",$$^%W1DICT("SHOWEXISTTABLES"),"ShowExistTables()","color:blue","wh,22")
      W "  </td>",!
      W " <td align=""center"">",!
       D ROUNDBUT^%W1JS("create",$$^%W1DICT("CREATENEWTABLES"),"CreateTables()","color:green","wh,22")
      W "  </td>",!
      W " <td>",!
       D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
      W " </td>",!
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  ;
  D LINE
 W "</table>",!
 W "<br><br><br>",!
 ;
 I $G(%ARG("TOTBL")) D
 .W "<table dir="""_$$^%W1DIR_""">",!
 .
 .K @$$^W4MAIN("VRMPROT")
 .N BG S BG=$G(%ARG("FROMTBL")) I BG<1 S BG=1
 .N FIN S FIN=$G(%ARG("TOTBL"))
 .F I=BG:1:FIN D
 ..I $D(@$$^W4GL("LKH")@(I)) D  Q
 ...;;S @$$^W4MAIN("VRMPROT")@(I)="EXIST"
 ... W "<tr><td style=""color:red"" >"_$$^%W1DICT("TABLEEXIST",I)_"</td></tr>",!
 ..S @$$^W4GL("LKH")@(I)=I_" ogley"
 ..S $P(@$$^W4GL("LKH")@(I,2),"*",5)=$G(%ARG("SUGS"))
 ..;;S @$$^W4MAIN("VRMPROT")@(I)="NEW"
 .. W "<tr><td style=""color:green"">"_$$^%W1DICT("TABLECREATED",I)_"</td></tr>",!
 .
 .W "</table>",!
 .
 W "</div>",!
 Q
 ;
LINE ;
 W "<tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>",!
 Q

W4CRTEL
W4CRTEL ; [ 15.02.17 17:10 ] [ 
 S N=999
 F  S N=$O(^LKH(N)) Q:N=""  D
 .S TEL=$$FAX^W4L(N) D LKHT(TEL,N)
 .S TEL=$$TELA^W4L(N) D LKHT(TEL,N)
 .S TEL=$$TELB^W4L(N) D LKHT(TEL,N)
 .S TEL=$$PELE^W4L(N) D LKHT(TEL,N)
 .S TEL=$$PELE1^W4L(N) D LKHT(TEL,N)
 Q
 ;
LKHT(TEL,LKH)
 S TEL=$G(TEL)
 I $L(TEL)<7!($L(TEL)=8) Q
 D LKHT^W4L(TEL,LKH)
 Q
 

W4CRTRM
W4CRTRM ; [ 06.10.24 11:52 ] [ 27.12.14 13:59 ] [
 N (JB,%ARG,%REM)
 W "<br><br>",!
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<table>",!
 W "<tr>"
 W " <td>"
  D BUT("SHOWREADY2TRANSMIT","ShowMovements()")
 W " </td>",!
 ;
 W " <td>"
  D BUT("SEND","Send()","GREEN")
 W " </td>",!
 ;
 W " <td>"
  D BUT("BACK","Back()","RED")
 W " </td>",!
 ;
 W "</tr>",!
 W "</table>",!
 F I=1:1:3 W "<p>&nbsp;</p>",!
 W "<p id=""wait"" dir=""LTR"" align=""center"" style=""display:none;font-size:"_$$^W3FSZ(16)_""">WAIT ...</p>",!
 W "</div>",!
 Q
 ;
 ;
BUT(NM,PROC,COLOR) ;
 W "<input type=""button"" value="""_$$^%W1DICT(NM)_""" "
 W " class=""btn"" "
 I $G(COLOR)'="" W "style=""color:"_COLOR_""" "
 W " onClick="""_PROC_""" "
 W ">",!
 Q
 ;
INIT ;
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GETP^%W1PRM("MSD")
 Q
 
 
 
 
 

W4CRTRN
W4CRTRN ; [ 06.08.25 07:42 ] [ 11.06.25 01:05 ] [ 10.06.25 08:28 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 F I=1:1:5 H 1 ; ***
 ;
 D TRANW
 ;
 S TRRES=$$SHVTRN ; ------------ !!!
 ;
 I TRRES D  ;,$$^W4SNDEMV D  ;-- ERROR
 .W "<div align=""center""><br /><br /><br />",!
 .W "<div dir="""_$$^%W1DIR_""" style=""top:"_$$^W4KF(200)_"px;width:"_$$^W4KF(400)_"px;border:2px solid black;background-color:yellow;color:black;font-weight:bold;font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">",!
 .N ERRCD S ERRCD=+TRRES
 .W "<br /><br />"_$$^%W1DICT("ERROR")_" "_ERRCD_"<br /><br />",!
 .W $$H2U^%L1FRM($G(^[$$^W3MAIN]W4SHVER($$COUNTRY^W3PRM,ERRCD))),!
 .W "<br /><br />",!
 .W "</div>",!
 .W "<br /><br >",!
 .D ^W4BTN("BACK","AskCopy()","RED")
 .W "</div>",!
 ;
 I TRRES J:$$EMV^W4PRM=3 INITJ^W4POSEMV(JB) Q
 ;
 I $$^W4SNDEMV D REP(TRRES)
 ;
 U 0
 ;
 W "<div align=""center"">",!
 W "<br /><br />",!
 W "<span style=""font-size:"_$$^W3FSZ(18)_";color:green;"_$$FONTFM^W3CSS_""">"
 D
 .W $$^%W1DICT("SENDINGSUCCESSFULL"),!
 W "</span>",!
 W "<br /><br />",!
 ;
 ;;I $$NOSND^W4SNDEMV D  Q; -- 06/08/25
 I $$EMV4^W4SNDEMV,'$$OLDSND4^W4SNDEMV D  Q
 .W "<br /><br >",!
 .D ^W4BTN("BACK","AskCopy()","RED")
 .I $G(@$$^W4PRM@("MDP2SHV")) J ^W4PRNSHV(JB,$H) 
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""5"" >",!
 W "<tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white;font-size:"_$$^W3FSZ(12)_""">",!
 W " <th>"_$$^%W1DICT("DATE")_"</th>",!
 W " <th>"_$$^%W1DICT("TIME")_"</th>",!
 W " <th>"_$$^%W1DICT("AUTHNO")_"</th>",!
 W " <th>"_$$^%W1DICT("HOVA")_"</th>",!
 W " <th>"_$$^%W1DICT("ZHUT")_"</th>",!
 W " <th>"_$$^%W1DICT("NETO")_"</th>",!
 W "</tr>",!
 ;
 W "<tr style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">",!
 W " <td align=""center"">"_DAT_"</td>",!
 W " <td align=""center"">"_TIME_"</td>",!
 W " <td>"_ASM_"</td>",!
 W " <td>"_$J(HOV,2,2)_"</td>",!
 W " <td>"_$J(ZHT,2,2)_"</td>",!
 W " <td>"_$J(HOV-ZHT,2,2)_"</td>",!
 W "</tr>",!
 W "</table>",!
 W "<br /><br >",!
 ;
 D DIVBUT
 ;
 W "</div>",!
 W "</div>",!
 ;
 I $$EMV^W4PRM=3 J INITJ^W4POSEMV(JB) ; ----- UPDATE EMV TERMINALS --------
 ;
 N DTPREV,P1DZ S P1DZ=$$^W4DZ
 S DTPREV=$O(@$$^W4REF@(P1DZ),-1) I DTPREV D
 .I '$D(@$$^W4GL("W4MNYFL")@(DTPREV)) D MNYSN(DTPREV) Q
 Q
 ;
 ;
MNYSN(DT) ;
 L +@$$^W4GL("W4MNYFL")@(DT):1
 J ^W4MNYSN(JB,DT,DT)
 S @$$^W4GL("W4MNYFL")@(DT)=$H
 L -@$$^W4GL("W4MNYFL")@(DT)
 Q
 ;
 ;
TRANL ;
 N A,N
 S TRANL=$$^W4GL("TRANL")
 ;
 S LI=$ZP(@TRANL@(999999)) Q:'LI  S:$G(^TRANL)<LI ^TRANL=LI
 ;
 S (HOV,HOVK,ZIK,ZIKK,HOVI,ZIKI)=0
 D
 .S N="" F  S N=$O(@TRANL@(LI,901,N)) Q:N=""  D
 ..S A=$G(^(N)) Q:$L(A)>200   I $E(A,7,8)<50 D
 ...S HOV=HOV+($TR($E(A,12,19)," ","")*.01)
 ...S HOVK=HOVK+($TR($E(A,20,27)," ","")*.01),HOVI=HOVI+1
 ..I $E(A,7,8)>50 D
 ...S ZIK=ZIK+($TR($E(A,12,19)," ","")*.01)
 ...S ZIKK=ZIKK+($TR($E(A,20,27)," ","")*.01),ZIKI=ZIKI+1
 ;
 I $$EMV^W4PRM D  I ('HOV&'ZIK)!('ASM) Q
 .S A=$G(@$$^W4GL("DUMP")@(IND))
 .S HOV=$P(A,"|",3)
 .S ZIK=$P(A,"|",2)
 .S ASM=$P(A,"|",5)
 ;
 S @TRANL@(LI)=$H_"^"_$G(HOV)_"^"_$G(HOVI)_"^"_$G(ZIK)_"^"_$G(ZIKI)
 S @TRANL@(LI)=@TRANL@(LI)_"^"_HOVK_"^"_ZIKK_"^"
 S $P(@TRANL@(LI),"^",10)=ASM
 S $P(@TRANL@(LI),"^",11)=DAT_" "_TIME
 S $P(@TRANL@(LI),"^",12)=$G(@$$^W4PRM@("ASH","MASOF"))
 S $P(@TRANL@(LI),"^",15)=IND
 Q:ASM=""
 S @TRANL@("ASM",ASM)=IND_"^"_LI
 Q
 ;
 ;
DIVBUT ;
 W " <div id=""divbut"" align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" >"
 W " <tr height=""40px"" >",!
 ;
 I $G(@$$^W4PRM@("SHVACSRP")) D  G DIVBUTBACK
 .S A=$$^W4DUMP(ASM_";"_DAT)
 ;
 W "  <td>"
 D ROUNDBUT^%W1JS("Print",$$^%W1DICT("BIGPRINT"),"Print()","color:green",",,,180")
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("Print",$$^%W1DICT("CSRPRINT"),"CSRPrint('"_ASM_"','"_DAT_"')","color:darkgreen",",,,180")
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 ;
DIVBUTBACK ;
 W "  <td>"
 D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"AskCopy()","color:red",",,,60")
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 W " </div>",!
 Q
 ;
 ;
SHVTRN(STAM) ; 
 N (JB,%ARG,%REM)
 ;
 D ^W4CRKOD ; -- 06/02/19 ; -- > ERROR CODES UPDATE
 ;
 S OU="<PUSTO>"
 ;
 I $$EMV^W4PRM D  Q OU  ; ----------------- EMV !!! ------------------------
 .N RES,RESINIT,REFNUM,CREDIT,DEBET,TOTNUM,TOTHV,TOTZC
 .S (RES,REFNUM,CREDIT,DEBET,TOTNUM,TOTHV,TOTZC)=0
 .
 .;;I $$NOSND^W4SNDEMV D  Q  ; -- 6/08/25
 .I $$EMV4^W4SNDEMV,'$$OLDSND4^W4SNDEMV D  Q
 ..D ^W4EMVREP("Broadcast")
 ..S OU=+$$GETP^%W1PRM("EMVREPER")
 .
 .I $$OLDSND4^W4SNDEMV D  Q
 ..D ^W4EMVN("SEND")
 ..N RS S RS=$$GET^W4EMV4("result_code")
 ..S DEBET=$$GET("total_debit_amount")
 ..S DEBET=DEBET*.01
 ..S CREDIT=$$GET("total_credit_amount")
 ..S CREDIT=CREDIT*.01
 ..S REFNUM=$$GET("session_num")
 ..S TOTNUM=DEBET-CREDIT
 ..N RS S RS=0 I 'DEBET&'CREDIT S RS=257
 ..S OU=RS_"~"_REFNUM_"~"_$J(CREDIT,2,2)_"~"_$J(DEBET,2,2)_"~"_$J(TOTNUM,2,2)
 .
 .N A,I,FLRES
 .S FLRES=$$DIROU^W4EMVCON_"report_out"_+$H_"_"_$P($H,",",2)_"_"_$$^W4MYDVN
 .C FLRES:(DELETE)
 .ZSY "rm "_FLRES
 .S I=0
 .
 .N MASTER S MASTER=""
 .I $$EMV^W4PRM=3 S MASTER="--master-mode"
 .N ST S ST=$$DIR_"SPIShell endofday "_MASTER
 .I $$CATEST^W4PRM,$$EMVADR^W4PRM S ST=ST_" --proc-ip "_$$EMVADR^W4PRM
 .S ST=ST_" --report-format=medium --report-file="_FLRES_" 2>/dev/null"
 .N INDLV S INDLV=$TR($H,",","")
 .D DB("W4CRTRN-EMV","ST",ST)
 .;
 .ZSY ST
 .
 .D DB("W4CRTRN-EMV","ZSY",$ZSY)
 .D DB("W4CRTRN-EMV","FLRES",FLRES)
 .
 .N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 .
 .D BDKERR(0)
 .
 .I $$^%L1ZOS(10,FLRES)>-1 D
 ..O FLRES:(REWIND:READONLY)
 ..S II=0
 ..F  U FLRES R A Q:$ZEOF  D
 ...S II=II+1 
 ...S @TMP@(II)=A
 ..C FLRES
 .
 .D TMP1(TMP)
 .K @TMP
 .D GLTMP1
 .N RS S RS=$S($G(@TMP1@(2))="úåà÷ñò úåîéé÷ àì":257,1:"0")
 .S OU=RS_"~"_REFNUM_"~"_$J(CREDIT,2,2)_"~"_$J(DEBET,2,2)_"~"_TOTNUM
 .
 .;;I +REFNUM=0 D BDKERR(1) ; -- 14/11/22
 .
 .S RESINIT=$$INIT^W4POSEMV
 .N TRCNMB S TRCNMB=$$^W4TRCNMB(JB)
 .S @$$^W4GL("W4TRCNMB")=TRCNMB
 .D DB("W4CRTRN-EMV","RESINIT",RESINIT)
 ;
 ;------------------------------ NOT EMV ------------------------------
 ;
 N FL,PATHTRAN
 S PATHTRAN=$G(@$$^W4PRM@("ASH","PATHTRAN"))
 I PATHTRAN'="",$E(PATHTRAN,$L(PATHTRAN))'="/" S PATHTRAN=PATHTRAN_"/"
 S FL=PATHTRAN_"tran"_$$^W4MYDVN ; - JB
 C FL:DELETE
 O FL:(WRITE:NEWVERSION:REWIND)
 U FL
 ;
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 ;
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 ;
 W " <soap:Body>",!
 W "   <DepositTransactionsEx xmlns=""http://shva.co.il/xmlwebservices/"">",!
 W "       <MerchantNumber>"_$G(@$$^W4PRM@("ASH","MASOF"))_"</MerchantNumber>",!
 W "         <UserName>"_$G(@$$^W4PRM@("ASH","USERNAME"))_"</UserName>",!
 W "         <Password>"_$G(@$$^W4PRM@("ASH","PASSWORD"))_"</Password>",!
 ;
 N I,TRANW
 D TRANW
 ;
 W "<TransArr>",!
 S I="" F  S I=$O(@TRANW@(901,I)) Q:I=""  I I D
 .N A S A=$G(^(I))
 .W "<string>"_A_"</string>",!
 W "</TransArr>",!
 ;
 W "   </DepositTransactionsEx>",!
 W "  </soap:Body>",!
 W "</soap:Envelope>",!
 ;
 C FL
 ;
 Q $$^W4SHVTRN
 ;
 ;
TRANW ;
 S TRANW=$$^W4GL("W4TRAN")
 Q
 ;
 ;
REP(TRRES) ; --------- >> ^DUMP, ^DUMP1
 D GLTMP1
 D TRANW
 K @TRANW
 D ^%S3GLSV(TRANW,$$^W4FGIB,"K")
 K @$$^W4GL("TRAN")
 D ^%S3GLSV($$^W4GL("TRAN"),$$^W4FGIB,"K")
 ;
 L +@$$^W4GL("DUMP"):2
 S IND=$O(@$$^W4GL("DUMP")@(999999),-1)+1
 S DAT=$ZD($H,"DD/MM/YEAR")
 S TIME=$ZD($H,"24:60")
 S HOV=$P(TRRES,"~",4)
 S ZHT=$P(TRRES,"~",3)
 S ASM=$P(TRRES,"~",2)
 S TN=$P(TRRES,"~",5)
 ;
 S @$$^W4GL("DUMP")@(IND)=(HOV-ZHT)_"|"_ZHT_"|"_HOV_"|"_TN_"|"_ASM_"|"_TIME_"|"_DAT
 ;;W "^DUMP("_IND_")="_@$$^W4GL("DUMP")@(IND),! ;
 ;
 I $$EMV^W4PRM D
 .I $D(@TMP1) M @$$^W4GL("DUMP")@(IND,"PC")=@TMP1
 .K @TMP1
 ;
 D ^%S3GLSV($$^W4GL("DUMP")_"("""_IND_""")",$$^W4FGIB)
 ;
 S DT=$$^%L1DC(DAT,3)
 S IND1=DT_$TR($J(TIME*3600+($P(TIME,":",2)*60),5)," ",0)_1
 S @$$^W4GL("DUMP1")@(IND1)=IND
 D ^%S3GLSV($$^W4GL("DUMP1")_"("""_IND1_""")",$$^W4FGIB)
 L -@$$^W4GL("DUMP")
 ;
 D TRANL
 ;
 S @$$^W4GL("TRANL")=$O(@$$^W4GL("TRANL")@(9999999999),-1)+1
 S @$$^W4GL("W4TRANL")=$O(@$$^W4GL("W4TRANL")@(9999999999),-1)+1
 Q
 ;
 ;
DIR(STAM) ;
 Q $$EMVDIR^W4PRM
 ;
TMP1(GL) ;
 N N1,A1,TX,VL,HD,TMP1
 D GLTMP1 K @TMP1
 S N1="" F  S N1=$O(@GL@(N1)) Q:N1=""  D
 .S A1=$G(^(N1))
 .S A1=$$CLRQ^W3SORD(A1)
 .D TMP11(A1,N1)
 Q
 ;
GLTMP1 ;
 S TMP1=$$^W4MAIN("TMP1")
 Q
 ;
TMP11(A1,N1)
 N A,A2
 S A2=$$SP1^%L1FRM(A1)
 S (TOTHV,TOTZC)=0
 I A2[":dzknq`" S REFNUM=$TR($P(A2,":")," ","")
 I A2="daeg lwy k""dq" D
 .S A=$G(@GL@(N1+1))
 .S A=$$SP1^%L1FRM(A)
 .S TOTHV=$P(A," ")
 .S DEBET=$P(A," ",2)
 I A2="zekf lwy k""dq" D
 .S A=$G(@GL@(N1+1))
 .S A=$$SP1^%L1FRM(A)
 .S TOTZC=$P(A," ")
 .S CREDIT=$P(A," ",2)
 S TOTNUM=TOTHV+TOTZC
 S @TMP1@(N1)=A1
 Q
 ;
 ;
 ; 
SVTRAN ; 
 N TRAN S TRAN=$$^W4GL("W4TRAN")
 N TRANL S TRANL=$$^W4GL("W4TRANL")
 N IND S IND=$O(@TRANL@(999999),-1)+1
 M @TRANL@(IND)=@TRAN
 K @TRAN 
 Q
 ;
BDKERR(ER) ; 
 N LASTDZ S LASTDZ=$O(@$$^W4GL("Z")@(99999),-1)
 I LASTDZ D
 .K @$$^W4GL("W4ERRTRN")@(LASTDZ)
 .;
 .I $$^%L1ZOS(10,FLRES)<0!($$SIZE^%L1ZOS(FLRES)<20)!$G(ER) D
 ..S @$$^W4GL("W4ERRTRN")@(LASTDZ)=1
 Q
 ;
DB(IND,RKV,VL)
 N H,H2 S H=+$H,H2=$P($H,",",2) 
 S ^LV(H,H2,IND,RKV)=VL 
 Q 
 ;
GET(NM) ;
 Q $$GET^W4EMV4(NM)
 ;
CRREP4(DT1,DT2)
 D ^W4EMVREP("Broadcast")
 N DAT1,DAT2,REFNUM,CREDIT,DEBET,TOTNUM
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$S($G(DT2):$ZD(DT2,"DD.MM.YY"),1:DAT1)
 
 D ^W4REPEMV(DAT1,DAT2)
 S RS=+$$GETP^%W1PRM("EMVREPER")
 S REFNUM=$O(MBC(99999999),-1)
 S (CREDIT,DEBET,TOTNUM)=0
 I REFNUM D
 .S CREDIT=$G(MBC(REFNUM,"SUMZ"))
 .S DEBET=$G(MBC(REFNUM,"SUMH"))
 .S TOTNUM=DEBET-CREDIT
 S OU=RS_"~"_REFNUM_"~"_$J(CREDIT,2,2)_"~"_$J(DEBET,2,2)_"~"_$J(TOTNUM,2,2)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CRULA0
W4CRULAM ; [ 06.11.13 15:14 ] [ 19.05.13 08:42 ] [ 18.05.13 18:42 ]
 N (JB,%ARG,%REM)
 D IN
 D TMPBC K @TMPBC@("CUR")
 S %ARG("UR")=+$G(%ARG("UR"))
 S UR=%ARG("UR")
 D PUT^%W1PRM("CRULUR",UR)
 S ULAM=$G(%ARG("ULAM")) S:'ULAM ULAM=1
 D PUT^%W1PRM("CRULAM",ULAM)
 D TMPBC S @TMPBC@("CUR","UR")=UR
 S @TMPBC@("CUR","ULAM")=ULAM
 ;
 S TYPE="T"
 I UR=0 S TYPE="S"
 ;
 W "<div align=""center"">"
 S NMARCH=$$GETP^%W1PRM("NMARCH")
 I NMARCH="" W "<br>",!
 E  W "<span style=""font-weight:bold;font-family:"_$$FONTFM^W3CSS_""">"_$$H2U^%L1FRM($$INVH^%L1FRM($$CNWEB^%L1FRM(NMARCH)))_"</span>",!
 W "<table border=""0"" dir="""_$$^%W1DIR_""" width=""100%"" >"
  W "<tr>"
   W "<td>"
    W "<table cellspacing=""5px"" style=""font-size:"_$$^W3FSZ(12)_"""><tr>"
     W "<td>"_$$^%W1DICT("ULAM")_"</td>"
     D
     .N I F I=1:1:3 D
     ..W "<td dir=""LTR"" "
     .. W " style=""padding-left:5px; padding-right:5px"
     .. I I=+$$ULAM W ";cursor:pointer;background-color:white;border:solid 1px orange"
     .. E  W ";background-color:grey;cursor:pointer"
     .. W """"
     .. W " onClick=""ChangeUlam('"_I_"')"" >"
     .. W:'I "&nbsp;" W I W:'I "&nbsp;"
     ..W "</td>"
    W "</tr></table>",!
   W "</td>",!
   W "<td>&nbsp;</td>",!
   ;
   W "<td colspan=""6"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;text-align:center"">"
    W $$H2U^%L1FRM($$ULAMNAME)
   W "</td>",!
  W "</tr>",!
  ;
  W "<tr>"
   W "<td "_$$^%W1ALIGN_">"
   W "<input type=""button"" value="""_$$^%W1DICT("GENERALPARAMETERS")_""" "
    W " onClick=""GeneralPrm()"" />"
   W "</td>",!
   W "<td>"
   W "<input type=""button"" value="""_$$^%W1DICT("SHULHANPRM")_""" "
   W " onClick=""ShulhanPrm()"" />"
   W "</td>"
   ;
   W "<td>"
    W "<table cellspacing=""3px"" cellspadding=""3px""><tr>"
     W "<td>"_$$^%W1DICT("LEVEL")_"</td>"
     D
     .N I F I=0:-1:-1 D  ; -2
     ..W "<td dir=""LTR"" "
     .. I I=+$$UR W "style=""cursor:pointer;background-color:white;border:solid 1px orange"" "
     .. E  W "style=""background-color:grey;cursor:pointer"" "
     .. W " onClick=""ChangeLevel('"_I_"')"" >"
     .. W:'I "&nbsp;" W I W:'I "&nbsp;"
     ..W "</td>"
    W "</tr></table>",!
   W "</td>",!
   ;
   W "<td>&nbsp;</td>",!
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("OpenArch",$$^%W1DICT("OPENARCH"),"OpenArch()","color:black",",,,90")
   W "</td>"
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("SAVEARCH"),"SaveArch()","color:darkgreen",",,,90")
   W "</td>"
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("DELARCH"),"OpenArch('1')","color:red",",,,110")
   W "</td>"
   W "<td>&nbsp;</td>",!
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("DELETELEVEL"),"Delete()","color:darkred",",,,100")
   W "</td>"
   ;
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("SAVE"),"Save()","color:green",",,,60")
   W "</td>"
   ;
   W "<td align=""center"" >"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("BACK"),"AskSave()","color:red",",,,60")
   W "</td>"
   D
   .W "<td>"_$$^%W1DICT("GRID")
   . W " <input type=""checkbox"" "
   . I $$GRID W " checked=""checked"" "
   . W " onClick=""Grid(this)"" "
   . W " />"
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div>",!
 D NOSELECT^%W1JS
 D SHOWULAM(+$G(%ARG("UR")))
 W "</div>",!
 ;
END ;
 W "</div>",!
 Q
 ;
GETMAIN(PRM) ;
 N L,C D TMPULI
 S L=$P(PRM,";")
 S C=$P(PRM,";",2)
 N M S M=L_"-"_C
 I '$D(@TMPULI@(M)) Q L_"-"_C
 Q $P(@TMPULI@(M),",",2)
 ;
SHULH(MAIN)
 I +$$UR'=0 Q "NO"
 N L,C D TMPUL,TMPULI
 S L=$P(PRM,";")
 S C=$P(PRM,";",2)
 N SH S SH=$$CELLCONT(L,C)
 I SH,$$CELLTYPE(L,C)="S" Q SH
 Q "NO"
 ;
UR(STAM)
 N UR
 S UR=+$$GETP^%W1PRM("CRULUR")
 Q UR
 ;
ULAM(STAM)
 N ULAM
 S ULAM=+$$GETP^%W1PRM("CRULAM")
 S:ULAM<1 ULAM=1
 Q ULAM
 ;
IN ;
 S LINES=$$LINEMAX
 S COLS=$$COLMAX
 D WDHG
 Q
 ;
INIT ;
 D KILL^%W1PRM("CRULPR")
 D KILL^W4CRULCN
 S UR=0
 N TMPUL,TMPULI,TMPULZ,TMPULS,TMPULSI,TMPULSU
 D KILLTMPUL
 N ULAM S ULAM=$G(%ARG("ULAM"))
 I 'ULAM S ULAM=$$GETP^%W1PRM("CRULAM")
 I 'ULAM S ULAM=1
 D PUT^%W1PRM("CRULAM",ULAM)
 ;
 D TMPBC
 ;
 K @TMPBC
 M @TMPBC=@$$^W4GL("W4ULAM")@(ULAM)
 ;
 I '$D(@$$^W4GL("W4ULAM")@(0,0,"S")),$D(@$$^W4GL("W4ULAM")@(1,0,"S")) D
 .M @$$^W4GL("W4ULAM")@(0,0,"S")=@$$^W4GL("W4ULAM")@(1,0,"S")
 .K @$$^W4GL("W4ULAM")@(1,0,"S")
 ;
 K @TMPBC@(0,"S")
 M @TMPBC@(0,"S")=@$$^W4GL("W4ULAM")@(0,0,"S")
 ;
 D GETTMP(UR)
 Q
 ;
 ;
BACK ;
 D KILLTMPUL
 K @TMPBC
 D KILL^%W1PRM("CRULPR")
 Q
 ;
TMPUL D TMPUL^W4CRULPR
 Q
TMPULI D TMPULI^W4CRULPR
 Q
TMPULZ D TMPULZ^W4CRULPR
 Q
 ;
TMPULS D TMPULS^W4CRULSH
 Q
 ;
TMPULSI D TMPULSI^W4CRULPR
 Q
 ;
TMPULSU D TMPULSU^W4CRULPR
 Q
 ;
LINEMAX(STAM) ;
 N LM D TMPBC
 S LM=$P($G(@TMPBC),";")
 I 'LM Q $$DFLTLINES+1
 Q (LM+1)
 ;
COLMAX(STAM) ;
 N CM D TMPBC
 S CM=$P($G(@TMPBC),";",2)
 I 'CM Q $$DFLTCOLS+1
 Q (CM+1)
 ;
DFLTLINES(STAM) Q 30
DFLTCOLS(STAM) Q 18
 ;
DFLTCELLWIDTH(STAM) ;
 N WDC S WDC=$$GETP^%W1PRM("WDC")
 I 'WDC S WDC=50
 Q WDC
 ;
DFLTCELLHEIGHT(STAM) ;
 N HGC S HGC=$$GETP^%W1PRM("HGC")
 I 'HGC S HGC=40
 Q HGC
 ;
ULAMBG(STAM) ;
 N BGUL D TMPBC
 S BGUL=$P($G(@TMPBC),";",3)
 Q BGUL
 ;
ULAMNAME(STAM) ;
 N ULNM D TMPBC
 S ULNM=$P($G(@TMPBC),";",6)
 Q ULNM
 ;
CELL(I,J) ;
 I '$G(I) Q ""
 I '$G(J) Q ""
 D TMPUL,TMPULI
 N MAIN S MAIN=$$CELLMAINI(I,J) I MAIN="" Q 0
 Q $G(@TMPUL@(MAIN))
 ;
CELLMAINI(I,J) ;
 Q $P($$CELLI(I,J),",",2)
 ;
CELLI(I,J) ;
 D TMPULI
 I '$G(I) Q ""
 I '$G(J) Q ""
 Q $G(@TMPULI@(I,J))
 ;
CELLTYPEI(I,J) ;
 Q $P($$CELLI(I,J),",")
 ;
CELLTYPE(I,J) ;
 Q $P($$CELL(I,J),";")
 ;
CELLCONT(I,J) ;
 Q $P($$CELL(I,J),";",2)
 ;
CELLROWS(I,J) ;
 Q $P($$CELL(I,J),";",3)
 ;
CELLCOLS(I,J) ;
 Q $P($$CELL(I,J),";",4)
 ;
CELLBK(I,J) ;
 Q $P($$CELL(I,J),";",5)
 ;
CELLBW(I,J) ;
 Q $P($$CELL(I,J),";",6)
 ;
CELLBM(I,J) ;
 Q $P($$CELL(I,J),";",7)
 ;
CELLBC(I,J) ;
 Q $P($$CELL(I,J),";",8)
 ;
CELLFN(I,J) ;
 Q $P($$CELL(I,J),";",9)
 ;
CELLFNSZ(I,J) ;
 Q $P($$CELL(I,J),";",10)
 ;
CELLALGN(I,J) ;
 Q $P($$CELL(I,J),";",11)
 ;
CELLBG(I,J) ;
 Q $P($$CELL(I,J),";",12)
 ;
CELLFG(I,J) ;
 Q $P($$CELL(I,J),";",13)
 ;
CELLFST(I,J) ;
 Q $P($$CELL(I,J),";",14)
 ;
 ;
CELLCONTI(I,J) ;
 Q $P($$CELLI(I,J),",",2) ;
 ;
CELLFREEI(I,J) ;
 D TMPULI
 I '$D(@TMPULI@(I,J)) Q 1
 Q 0
 ;
SHOW ;
 N LINES,COLS,UR
 S LINES=$$LINEMAX
 S COLS=$$COLMAX
 S ULAM=$$ULAM
 S UR=$$UR
 N I,J,TMPUL,TMPULI,TMPULS,TYPE D TMPUL,TMPULI,TMPULS
 ;
 W "<table id=""TblUlam"" dir="""_$$^%W1DIR_""" "
  I $$GRID,'$D(HZGULM) W " border=""1"" "
  W " style=""position:absolute"
  W ";width:"_(COLS*WDC)_"px"
  W ";left:20px"
  ;;W ";top:100px"
  W ";z-Index:"_(UR*10)
  W ";table-layout:fixed"
  I $L($$ULAMBG),UR=-1 W ";background:"_$$ULAMBG
  W """ "
  W " cellspacing=""0"" cellpadding=""0"" align=""center"" "
  I '$D(HZGULM) W " onmousemove=""MouseMove(event)"" onmouseup=""MouseUp()"" "
 W ">",!
  ;
 F I=1:1:LINES D
  .W " <tr height="""_$S(I=1&$D(HZGULM):0,1:HGC)_"px"">",!
  .F J=1:1:COLS D
  ..I I=1,J>1 D  Q  ; -- NUMERAZIYA STOLBZOV
  ...W "  <td style=""text-align:center"" width="""_WDC_"px"">"
  ...I $D(HZGULM) W "" ; &nbsp;
  ...E  W (J-1) W:J<11 "&nbsp;"
  ...W "</td>",!
  ..
  ..I J=1,I=1 W "<td width=""20px"">"_$S($D(HZGULM):"",1:"&nbsp;")_"</td>",! Q  ;-- NUMERAZIYA STROK
  ..I J=1,I>1 D  Q
  ...W "<td>"
  ...I $D(HZGULM) W "" ;W "&nbsp;"
  ...E  W (I-1)
  ...W "</td>"
  ..
  ..N I1,J1 S I1=I-1,J1=J-1
  ..
  ..I $$CELLMAINI(I1,J1)=(I1_"-"_J1) D  Q  ; -- BUSY
  ...S TYPE=$$CELLTYPE(I1,J1)
  ...;
  ...I TYPE="S" D SHOWTABLE(I1,J1) Q
  ...
  ...W "<td colspan="""_$$CELLCOLS(I1,J1)_""" "
  ...W " rowspan="""_$$CELLROWS(I1,J1)_""" "
  ...
  ...I TYPE="T" D STYLETEXT(I1,J1)
  ...I TYPE="I" W " align=""center"" "
  ...
  ...I TYPE'="S" D
  ....I '$D(HZGULM) W " onmousedown=""MouseDown(this,'"_I1_"','"_J1_"',true,event)"" "
  ...W ">"
  ...
  ...I TYPE="T" D
  ....N CN S CN=$$CELLCONT(I1,J1) I CN="" W "&nbsp;" Q
  ....W $$H2U^%L1FRM(CN)
  ...
  ...I TYPE="I" D SHOWIMG(I1,J1)
  ...
  ...W "</td>",!
  ..
  ..I $$CELLFREEI(I1,J1) D  Q
  ...W "<td "
  ...I '$D(HZGULM),'$D(URSHOW) W " onClick=""ClickCell('"_I1_"','"_J1_"',this)"" "
  ...W ">"
  ... W "&nbsp;"
  ...W "</td>"
  .W " </tr>",!
 W "</table>",!
 Q
 ;
 ;
SAVE ;
 N TMPUL,TMPULI,TMPULZ,TMPULS,TMPBC,UR
 D TMPALL
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM")
 I ULAM<1 S ULAM=1
 ;
 S UR=$$UR Q:UR=""
 ;
 K @$$^W4GL("W4ULAM")@(ULAM)  ;,UR)
 ;
 D SAVETMP
 K @TMPBC@(UR)
 M @TMPBC@(UR)=@TMPBC@("CUR")
 M @$$^W4GL("W4ULAM")@(0,0,"S")=@TMPBC@(0,"S")
 K @TMPBC@(0,"S")
 M @$$^W4GL("W4ULAM")@(ULAM)=@TMPBC
 ;
 D KILLTMPUL
 K @TMPBC
 Q
 ;
SAVEARCH(NAME) ;
 N TMPUL,TMPULI,TMPULZ,TMPULS,TMPBC,UR
 D TMPALL
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM")
 I ULAM<1 S ULAM=1
 ;
 S UR=$$UR Q:UR=""
 ;
 K @$$^W4GL("W4ULAMA")@(NAME,ULAM) ;,UR)
 ;
 D SAVETMP
 K @TMPBC@(UR)
 M @TMPBC@(UR)=@TMPBC@("CUR")
 ;
 M @$$^W4GL("W4ULAMA")@(NAME,ULAM)=@TMPBC
 Q
 ;
 ;
DEL ;
 N TMPUL,TMPULI,TMPULZ,TMPULS
 D TMPALL
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM")
 I ULAM<1 S ULAM=1
 ;;S UR=$$UR
 ;;K @$$^W4GL("W4ULAM")@(ULAM,UR)
 S UR=$$UR
 K @TMPBC@(UR)
 K @TMPBC@("CUR")
 D KILLTMPUL
 Q
 ;
KILLTMPUL ;
 D TMPALL
 K @TMPUL,@TMPULI,@TMPULZ,@TMPULS,@TMPULSI,@TMPULSU
 D KILL^%W1PRM("UPLPICFILE")
 Q
 ;
TMPALL ;
 D TMPUL,TMPULI,TMPULZ,TMPULS,TMPULSI,TMPULSU,TMPBC
 Q
 ;
SHOWOPT(STAM) ;
 Q $G(%ARG("SHOW"))
 ;
SHOWTABLE(MI,MJ) ;
  N (JB,%ARG,%REM,MI,MJ,HZGULM)
  N SH,HZM S SH=$$CELLCONT(MI,MJ)
  N COLS,ROWS
  S COLS=$$CELLCOLS(MI,MJ)
  S ROWS=$$CELLROWS(MI,MJ)
  W "<td colspan="""_COLS_""" "
  W " rowspan="""_ROWS_""" "
   ;
   S HZM=""
   I $D(HZGULM) S HZM=$$^W4HZFR(SH)
   D TMPULS
   S STAT=$S(HZM:1,1:0)
   S SUGS=$$SUGS^W4L(SH)
   S FN=$$SHULHFN^W4CRULSH I FN="" S FN="Arial"
   S FSZ=$$SHULHFNSZ^W4CRULSH I FSZ="" S FSZ=12
   S BG=$$SHULHBG^W4CRULSH(SUGS) I BG="" S BG="white"
   S FG=$$SHULHFG^W4CRULSH(SUGS,STAT) I FG="" S FG="black"
   S PIC=$$SHULHPIC^W4CRULSH(SUGS)
   S NOSHOW=$$NOSHOWTBL(SH)
   ;
   I NOSHOW D
   .S BG="lightgrey",FG="grey",PIC=""
   ;
   W " style=""text-align:center;"
    W "cursor:pointer;"
    W "font-family:"_FN_";"
    W "font-size:"_$$^W3FSZ(FSZ)_";"
    W "background-color:"_BG_";"
    I $L(PIC) W "background-image:url('"_$$PATHWEB^W3UPLPIC($$GETP^%W1PRM("MSD"))_PIC_"');"
    W "color:"_FG_";"
    W "font-weight:bold"
    D
    .N BK,BW,BC,BM D TMPULS
    .S BK=$P($G(@TMPULS),";",4)
    .S BW=$P($G(@TMPULS),";",5)
    .S BM=$P($G(@TMPULS),";",6)
    .S BC=$$BORDCOLOR^W4CRULSH(SUGS,STAT)
    .D SHOWBORD(BK,BW,BC,BM)
    W """ "
   I 'NOSHOW D
   .I '$D(HZGULM) W " onmousedown=""MouseDown(this,'"_MI_"','"_MJ_"',true,event)"" "
   .I $D(HZGULM) W " onClick=""ClickCell('"_MI_"','"_MJ_"',this)"" "
  W ">"
   ;
   W SH
  W "</td>"
  ;
  I HZM,$G(@$$^W4PRM@("ULAMTBLABEL")) D  ; --- SHOW TEXT FOR TABLE
  .N MLZ,MLZ1,SOAD,TXT
  .S MLZ=$$MKBL^W4HZMST(HZM)
  .S MLZ1=$$^W4NAME(MLZ)
  .S SOAD=$$SOAD^W4HZMST(HZM)
  .D TMPUL,TMPULI
  .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
  .S TXT="<E></SPAN><E>"_$J(TSHL,2,2)_"<E><SPAN STYLE=""COLOR:GREEN""><E>"
  .S TXT=TXT_" jq "
  .S TXT=TXT_"<E></SPAN><E>"_SOAD_"<E><SPAN STYLE=""COLOR:GREEN""><E>"
  .S TXT=TXT_"'eq<BR>"_MLZ1
  .N MAINTX S MAINTX=(MI+ROWS)_"-"_MJ
  .N CLRFRAME S CLRFRAME="black"
  .I $L($$HSBP^W4HZMST(HZM)) S CLRFRAME="red"
  .S @TMPUL@(MAINTX)="T;"_TXT_";1;2;solid;1;15;"_CLRFRAME_";Arial;10;center;lightyellow;black"
  .S @TMPUL@(MAINTX,MAINTX)=""
  .S @TMPUL@(MAINTX,(MI+ROWS)_"-"_(MJ+1))=""
  .N MAIN
  .S @TMPULI@(MI+ROWS,MJ)="T,"_MAINTX
  .S @TMPULI@(MI+ROWS,MJ+1)="T,"_MAINTX
  Q
  ;
  ;
NOSHOWTBL(NMB) ;
 I '$D(HZGULM) Q 0
 N HZM S HZM=$$^W4HZFR(NMB)
 I $$^W4MVFROM,NMB=$$^W4MVFROM Q 1
 I $$STATUS="FREE",HZM Q 1
 I $$STATUS="BUSY",'HZM Q 1
 I HZM>0,'$$MGR,$$MLZRONLY,$$MKBL^W4HZMST(HZM)'=$$MLZR Q 1 ; POK-T TOLKO SHULH ETOGO MELZ
 S SUGSH=$$SUGS^W4L(NMB)
 I $$CURSUG,SUGSH'=$$CURSUG Q 1 ; - POK-T TOLKO VYBR SUG SHULH
 I $$ME,NMB<$$ME Q 1
 I $$AD,NMB>$$AD Q 1
 Q 0
 ;
STATUS(STAM) ;
 Q $$STATUS^W4HZGSH
 ;
MGR(STAM) ;
 Q $$MGR^W4HZGSH
 ;
MLZRONLY(STAM) ;
 Q $$MLZRONLY^W4HZGSH
 ;
MLZR(STAM) ;
 Q $$MLZR^W4HZGSH
 ;
CURSUG(STAM) ;
 Q $$CURSUG^W4HZGSH
 ;
ME(STAM) ;
 Q $$ME^W4HZGSH
 ;
AD(STAM) ;
 Q $$AD^W4HZGSH
 ;
STYLETEXT(MI,MJ) ;
  N FN,SZ,AL,BG,FG,FST,BOLD,ITL,UND
  S FN=$$CELLFN(MI,MJ)
  S SZ=$$CELLFNSZ(MI,MJ)
  S AL=$$CELLALGN(MI,MJ)
  S BG=$$CELLBG(MI,MJ)
  S FG=$$CELLFG(MI,MJ)
  S FST=$$CELLFST(I1,J1)
  S BOLD=FST#2
  S ITL=(FST\2)#2
  S UND=(FST\4)#2
  W " style=""font-family:"_FN,!
  W " ;font-size:"_SZ_"pt",!
  W " ;text-align:"_AL,!
  W " ;background-color:"_BG,!
  W " ;vertical-align:middle;",!
  I BOLD W ";font-weight:bold",!
  I ITL W ";font-style:italic",!
  I UND W ";text-decoration:underline",!
  W " ;color:"_FG
  D SHOWBORDER(MI,MJ)
  W """ "
  Q
 ;
SHOWIMG(MI,MJ) ;
  N IMG S IMG=$$CELLCONT(MI,MJ)
  W "<img src="""_$$PATHWEB^W3UPLPIC($$GETP^%W1PRM("MSD"))
   W $$FUNC^%LCASE(IMG)_""" "
  W " style="""
  ;
  I '$D(W4CRULPR) D
  .N WDI,HGI,CELLCOLS,CELLROWS
  .S CELLCOLS=$$CELLCOLS(MI,MJ)
  .S CELLROWS=$$CELLROWS(MI,MJ)
  .N WDC,KF S WDC=$$CELLWIDTH^W4CRULGN,KF=0.030
  .S WDI=WDC*CELLCOLS S WDI=WDI+(CELLCOLS*$S($D(HZGULM):WDC*KF,$$GRID:1.7,1:WDC*KF))
  .S HGI=HGC*CELLROWS-2 ;;I $$GRID S HGI=HGI+CELLROWS
  .N BW S BW=$$CELLBW(MI,MJ)
  .I BW S WDI=WDI-$$BW(MI,MJ),HGI=HGI-$$BH(MI,MJ)
  .W "width:"_WDI_"px;height:"_HGI_"px"
  ;
  D SHOWBORDER(MI,MJ)
  ;
  W """ />"
  Q
  ;
SHOWBORDER(MI,MJ) ;
 N BS,BW,BC,BP
 D DEFB
 D SHOWBORD(BK,BW,BC,BM)
 Q
 ;
DEFB ;
 S BK=$$CELLBK(MI,MJ) ; -- KIND
 S BW=$$CELLBW(MI,MJ) ; WIDTH
 S BC=$$CELLBC(MI,MJ)
 S BM=$$CELLBM(MI,MJ)
 Q
 ;
SHOWBORD(BK,BW,BC,BM)
 N BRDPRM
 I BK'="",BW D
 .S BRDPRM=BK_" "_BW_"px"
 .I BC'="" S BRDPRM=BRDPRM_" "_BC
 .I BM=15 W ";border: "_BRDPRM Q
 .I BM#2 W ";border-left:"_BRDPRM
 .I (BM\2)#2 W ";border-right:"_BRDPRM
 .I (BM\4)#2 W ";border-top:"_BRDPRM
 .I (BM\8)#2 W ";border-bottom:"_BRDPRM
 Q
 ;
BW(MI,MJ) ;
 N BS,BW,BC,BP,SBW
 S SBW=0
 D DEFB
 I BK'="",BW D
 .I BM=15 S SBW=2*BW Q
 .I BM#2 S SBW=SBW+BW
 .I (BM\2)#2 S SBW=SBW+BW
 I SBW S SBW=SBW+1
 Q SBW
 ;
BH(MI,MJ) ;
 N BS,BW,BC,BP,SBW
 S SBH=0
 D DEFB
 I BK'="",BW D
 .I BM=15 S SBH=2*BW Q
 .I (BM\4)#2 S SBH=SBH+BW
 .I (BM\8)#2 S SBH=SBH+BW
 I SBH S SBH=SBH+1
 Q SBH
 ;
TMPBC ;
 S TMPBC=$$^W4MAIN("TMPULBC")
 Q
 ;
SAVETMP ;
 D TMPALL
 K @TMPBC@("CUR")
 N UR S UR=$$UR
 S @TMPBC@("CUR","UR")=UR
 M @TMPBC@("CUR","M")=@TMPUL
 M @TMPBC@("CUR","I")=@TMPULI
 ;
 I +$G(UR)=0 D
 .M @TMPBC@("CUR","S")=@TMPULS
 .M @TMPBC@("CUR","Z")=@TMPULZ
 ;
 Q
 ;
RESTTMP ;
 D KILLTMPUL
 D TMPBC
 S UR=$G(@TMPBC@("CUR","UR"))
 D GETTMP("CUR")
 D PUT^%W1PRM("CRULUR",UR)
 K @TMPBC@("CUR")
 Q
 ;
GETTMP(UR) ;
 I UR?1N D PUT^%W1PRM("CRULUR",UR)
 D KILLTMPUL
 ;
 K @TMPULSU
 N ULAM S ULAM=$$ULAM^W4CRULAM
 N UL S UL="" F  S UL=$O(@$$^W4GL("W4ULAM")@(UL)) Q:UL=""  I UL'=ULAM D
 .S N="" F  S N=$O(@$$^W4GL("W4ULAM")@(UL,0,"M",N)) Q:N=""  D
 ..S A=$G(^(N)) I $P(A,";")="S" D
 ...S C=$P(A,";",2) Q:C=""
 ...S @TMPULSU@(C)=N_";"_UL
 ;
 I '$D(@TMPBC@(UR)) Q
 ;
 M @TMPUL=@TMPBC@(UR,"M")
 M @TMPULI=@TMPBC@(UR,"I")
 I $D(@TMPBC@(UR,"S")) M @TMPULS=@TMPBC@(UR,"S")
 I $D(@TMPBC@(UR,"Z")) M @TMPULZ=@TMPBC@(UR,"Z")
 ;
 K @TMPULSI
 N N,A,C S N="" F  S N=$O(@TMPUL@(N)) Q:N=""  D
 .S A=$G(^(N)) I $P(A,";")="S" D
 ..S C=$P(A,";",2) Q:C=""
 ..S @TMPULSI@(C)=N
 ;
 Q
 ;
SAVEBC ;
 D TMPALL
 S UR=$$UR K @TMPBC@(UR)
 M @TMPBC@(UR,"M")=@TMPUL
 M @TMPBC@(UR,"I")=@TMPULI
 I $D(@TMPULS) M @TMPBC@(UR,"S")=@TMPULS
 I $D(@TMPULZ) M @TMPBC@(UR,"Z")=@TMPULZ
 Q
 ;
GET(UR) ;
 N CURUR
 S CURUR=$G(@TMPBC@("CUR","UR"))
 I +UR=+CURUR D RESTTMP D PUT^%W1PRM("CRULUR",UR) Q
 I $D(@TMPBC@(UR)) D GETTMP(UR)
 Q
 ;
GRID(STAM) ;
 Q '$G(%ARG("NOGRID"))
 ;
WDHG ;
 S WDC=$$CELLWIDTH^W4CRULGN
 S HGC=$$CELLHEIGHT^W4CRULGN
 Q
 ;
 ;
SHOWULAM(ARGUR) ;
 D IN
 D SAVETMP
 ;
 ;K URSHOW
 ;I ARGUR>-2 S URSHOW=""
 ;D GET(-2)
 ;D SHOW
 ;I ARGUR=-2 G ES
 ;
 K URSHOW
 I ARGUR>-1 S URSHOW=""
 D  I ARGUR=-1 G ES
 .D GET(-1)
 .D SHOW
 ;
 K URSHOW
 I +ARGUR=0 D
 .D RESTTMP D SHOW
ES ;
 ;
 D PUT^%W1PRM("CRULUR",ARGUR)
 Q
 ;
 ;
GETPRM(CRD) ;
 N PRM,MI,MJ,TYPE,CONT
 S MI=$P(CRD,"-"),MJ=$P(CRD,"-",2)
 S TYPE=$$CELLTYPE(MI,MJ)
 S PRM=$$CELLROWS(MI,MJ)
 S PRM=PRM_";"_$$CELLCOLS(MI,MJ)
 S PRM=PRM_";"_TYPE
 S CONT=$$CELLCONT(MI,MJ)
 I TYPE="T" S CONT=$$CLWEB^%L1FRM($$INVH^%L1FRM(CONT))
 S PRM=PRM_";"_CONT
 S PRM=PRM_";"_$$CELLBK(MI,MJ)
 S PRM=PRM_";"_$$CELLBW(MI,MJ)
 S PRM=PRM_";"_$$CELLBM(MI,MJ)
 S PRM=PRM_";"_$$CELLBC(MI,MJ)
 S PRM=PRM_";"_$$CELLFN(MI,MJ)
 S PRM=PRM_";"_$$CELLFNSZ(MI,MJ)
 S PRM=PRM_";"_$$CELLALGN(MI,MJ)
 S PRM=PRM_";"_$$CELLBG(MI,MJ)
 S PRM=PRM_";"_$$CELLFG(MI,MJ)
 S PRM=PRM_";"_$$CELLFST(MI,MJ)
 Q PRM

W4CRULAM
W4CRULAM ; [ 17.08.25 18:03 ] [ 22.01.25 17:50 ] [ 19.02.24 16:21 ] 
 N (JB,%ARG,%REM)
 D IN
 D TMPBC K @TMPBC@("CUR")
 S %ARG("UR")=+$G(%ARG("UR"))
 S UR=%ARG("UR")
 D PUT^%W1PRM("CRULUR",UR)
 S ULAM=$G(%ARG("ULAM")) S:'ULAM ULAM=1
 D PUT^%W1PRM("CRULAM",ULAM)
 D TMPBC S @TMPBC@("CUR","UR")=UR
 S @TMPBC@("CUR","ULAM")=ULAM
 ;
 S TYPE="T"
 I UR=0 S TYPE="S"
 ;
 W "<div align=""center"">"
 S NMARCH=$$GETP^%W1PRM("NMARCH")
 I NMARCH="" W "<br>",!
 E  W "<span style=""font-weight:bold;font-family:"_$$FONTFM^W3CSS_""">"_$$H2U^%L1FRM($$INVH^%L1FRM($$CNWEB^%L1FRM(NMARCH)))_"</span>",!
 W "<table border=""0"" dir="""_$$^%W1DIR_""" width=""100%"" >"
  W "<tr>"
   W "<td>"
    W "<table cellspacing=""5px"" style=""font-size:"_$$^W3FSZ(12)_"""><tr>"
     W "<td>"_$$^%W1DICT("ULAM")_"</td>"
     D
     .N I F I=1:1:5 D
     ..W "<td dir=""LTR"" "
     .. W " style=""padding-left:5px; padding-right:5px"
     .. I I=+$$ULAM W ";cursor:pointer;background-color:white;border:solid 1px orange"
     .. E  W ";background-color:grey;cursor:pointer"
     .. W """"
     .. W " onClick=""ChangeUlam('"_I_"')"" >"
     .. W:'I "&nbsp;" W I W:'I "&nbsp;"
     ..W "</td>"
    W "</tr></table>",!
   W "</td>",!
   W "<td>&nbsp;</td>",!
   ;
   W "<td colspan=""6"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;text-align:center"">"
    W $$H2U^%L1FRM($$ULAMNAME)
   W "</td>",!
  W "</tr>",!
  ;
  W "<tr>"
   W "<td "_$$^%W1ALIGN_">"
   W "<input type=""button"" value="""_$$^%W1DICT("GENERALPARAMETERS")_""" "
    W " onClick=""GeneralPrm()"" />"
   W "</td>",!
   W "<td>"
   W "<input type=""button"" value="""_$$^%W1DICT("SHULHANPRM")_""" "
   W " onClick=""ShulhanPrm()"" />"
   W "</td>"
   ;
   W "<td>"
    W "<table cellspacing=""3px"" cellspadding=""3px""><tr>"
     W "<td>"_$$^%W1DICT("LEVEL")_"</td>"
     I $$SHIHVA^W4PRM D
     .N I F I=0:-1:-1 D  ; -2
     ..W "<td dir=""LTR"" "
     .. I I=+$$UR W "style=""cursor:pointer;background-color:white;border:solid 1px orange"" "
     .. E  W "style=""background-color:grey;cursor:pointer"" "
     .. W " onClick=""ChangeLevel('"_I_"')"" >"
     .. W:'I "&nbsp;" W I W:'I "&nbsp;"
     ..W "</td>"
    W "</tr></table>",!
   W "</td>",!
   ;
   W "<td>&nbsp;</td>",!
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("OpenArch",$$^%W1DICT("OPENARCH"),"OpenArch()","color:black",",,,90")
   W "</td>"
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("SAVEARCH"),"SaveArch()","color:darkgreen",",,,120")
   W "</td>"
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("DELARCH"),"OpenArch('1')","color:red",",,,110")
   W "</td>"
   W "<td>&nbsp;</td>",!
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("DELETELEVEL"),"Delete()","color:darkred",",,,100")
   W "</td>"
   ;
   W "<td align=""center"">"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("SAVE"),"Save()","color:green",",,,60")
   W "</td>"
   ;
   W "<td align=""center"" >"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("BACK"),"AskSave()","color:red",",,,60")
   W "</td>"
   D
   .W "<td>"_$$^%W1DICT("GRID")
   . W " <input type=""checkbox"" "
   . I $$GRID W " checked=""checked"" "
   . W " onClick=""Grid(this)"" "
   . W " />"
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div>",!
 D NOSELECT^%W1JS
 D SHOWULAM(+$G(%ARG("UR")))
 W "</div>",!
 ;
END ;
 W "</div>",!
 Q
 ;
GETMAIN(PRM) ;
 N L,C D TMPULI
 S L=$P(PRM,";")
 S C=$P(PRM,";",2)
 N M S M=L_"-"_C
 I '$D(@TMPULI@(M)) Q L_"-"_C
 Q $P(@TMPULI@(M),",",2)
 ;
SHULH(MAIN)
 I +$$UR'=0 Q "NO"
 N L,C D TMPUL,TMPULI
 S L=$P(PRM,";")
 S C=$P(PRM,";",2)
 N SH S SH=$$CELLCONT(L,C)
 I SH,$$CELLTYPE(L,C)="S" Q SH
 Q "NO"
 ;
UR(STAM)
 N UR
 S UR=+$$GETP^%W1PRM("CRULUR")
 Q UR
 ;
ULAM(STAM)
 N ULAM
 S ULAM=+$$GETP^%W1PRM("CRULAM")
 S:ULAM<1 ULAM=1
 Q ULAM
 ;
IN ;
 D KILL^%W1PRM("CRULSHCN")
 S LINES=$$LINEMAX
 S COLS=$$COLMAX
 D WDHG
 Q
 ;
KILL ;
 D KILL^%W1PRM("CRULPR")
 D KILL^%W1PRM("CRULUR")
 D KILL^%W1PRM("CRULAM")
 D KILL^%W1PRM("NMARCH")
 D KILL^%W1PRM("CRULSHCN")
 D KILL^%W1PRM("UPLPICFILE")
 D KILL^%W1PRM("ULAM")
 D KILL^W4CRULCN
 N TMPUL,TMPULI,TMPULZ,TMPULS,TMPULSI,TMPULSU
 D KILLTMPUL
 D TMPBC
 K @TMPBC
 Q
 ;
INIT ;
 D KILL
 S UR=0
 ;
 N ULAM S ULAM=$G(%ARG("ULAM"))
 I 'ULAM S ULAM=1
 D PUT^%W1PRM("CRULAM",ULAM)
 ;
 M @TMPBC=@$$^W4GL("W4ULAM")@(ULAM)
 ;
 I '$D(@$$^W4GL("W4ULAM")@(0,0,"S")),$D(@$$^W4GL("W4ULAM")@(1,0,"S")) D
 .M @$$^W4GL("W4ULAM")@(0,0,"S")=@$$^W4GL("W4ULAM")@(1,0,"S")
 .K @$$^W4GL("W4ULAM")@(1,0,"S")
 ;
 K @TMPBC@(0,"S")
 M @TMPBC@(0,"S")=@$$^W4GL("W4ULAM")@(0,0,"S")
 ;
 D GETTMP(UR)
 Q
 ;
 ;
BACK ;
 D KILL
 Q
 D KILLTMPUL
 K @TMPBC
 D KILL^%W1PRM("CRULPR")
 D KILL^%W1PRM("CRULSHCN")
 D KILL^%W1PRM("CRULAM")
 D KILL^%W1PRM("CRUUR")
 Q
 ;
TMPUL D TMPUL^W4CRULPR
 Q
TMPULI D TMPULI^W4CRULPR
 Q
TMPULZ D TMPULZ^W4CRULPR
 Q
 ;
TMPULS D TMPULS^W4CRULSH
 Q
 ;
TMPULSI D TMPULSI^W4CRULPR
 Q
 ;
TMPULSU D TMPULSU^W4CRULPR
 Q
 ;
LINEMAX(STAM) ;
 N LM D TMPBC
 S LM=$P($G(@TMPBC),";")
 I 'LM Q $$DFLTLINES+1
 Q (LM+1)
 ;
COLMAX(STAM) ;
 N CM D TMPBC
 S CM=$P($G(@TMPBC),";",2)
 I 'CM Q $$DFLTCOLS+1
 Q (CM+1)
 ;
DFLTLINES(STAM) Q 30
DFLTCOLS(STAM) Q 18
 ;
DFLTCELLWIDTH(STAM) ;
 N WDC S WDC=$$GETP^%W1PRM("WDC")
 I 'WDC S WDC=$S($$1024^W4WDSCR:50,1:90)
 Q WDC
 ;
DFLTCELLHEIGHT(STAM) ;
 N HGC S HGC=$$GETP^%W1PRM("HGC")
 I 'HGC S HGC=40
 Q HGC
 ;
ULAMBG(STAM) ;
 N BGUL D TMPBC
 S BGUL=$P($G(@TMPBC),";",3)
 Q BGUL
 ;
ULAMNAME(STAM) ;
 N ULNM D TMPBC
 S ULNM=$P($G(@TMPBC),";",6)
 Q ULNM
 ;
CELL(I,J) ;
 I '$G(I) Q ""
 I '$G(J) Q ""
 D TMPUL,TMPULI
 N MAIN S MAIN=$$CELLMAINI(I,J) I MAIN="" Q 0
 Q $G(@TMPUL@(MAIN))
 ;
CELLMAINI(I,J) ;
 Q $P($$CELLI(I,J),",",2)
 ;
CELLI(I,J) ;
 D TMPULI
 I '$G(I) Q ""
 I '$G(J) Q ""
 Q $G(@TMPULI@(I,J))
 ;
CELLTYPEI(I,J) ;
 Q $P($$CELLI(I,J),",")
 ;
CELLTYPE(I,J) ;
 Q $P($$CELL(I,J),";")
 ;
CELLCONT(I,J) ;
 Q $P($$CELL(I,J),";",2)
 ;
CELLROWS(I,J) ;
 Q $P($$CELL(I,J),";",3)
 ;
CELLCOLS(I,J) ;
 Q $P($$CELL(I,J),";",4)
 ;
CELLBK(I,J) ;
 Q $P($$CELL(I,J),";",5)
 ;
CELLBW(I,J) ;
 Q $P($$CELL(I,J),";",6)
 ;
CELLBM(I,J) ;
 Q $P($$CELL(I,J),";",7)
 ;
CELLBC(I,J) ;
 Q $P($$CELL(I,J),";",8)
 ;
CELLFN(I,J) ;
 Q $P($$CELL(I,J),";",9)
 ;
CELLFNSZ(I,J) ;
 Q $P($$CELL(I,J),";",10)
 ;
CELLALGN(I,J) ;
 Q $P($$CELL(I,J),";",11)
 ;
CELLBG(I,J) ;
 Q $P($$CELL(I,J),";",12)
 ;
CELLFG(I,J) ;
 Q $P($$CELL(I,J),";",13)
 ;
CELLFST(I,J) ;
 Q $P($$CELL(I,J),";",14)
 ;
 ;
CELLCONTI(I,J) ;
 Q $P($$CELLI(I,J),",",2) ;
 ;
CELLFREEI(I,J) ;
 D TMPULI
 I '$D(@TMPULI@(I,J)) Q 1
 Q 0
 ;
SHOW ;
 N LINES,COLS,UR
 S LINES=$$LINEMAX
 S COLS=$$COLMAX
 S ULAM=$$ULAM
 ;
 S UR=$$UR
 I $D(@TMPBC@(UR))<10,$D(HZGULM) Q
 N I,J,TMPUL,TMPULI,TMPULS,TYPE D TMPUL,TMPULI,TMPULS
 ;
 W "<table id=""TblUlam"" dir="""_$$^%W1DIR_""" "
  I $$GRID,'$D(HZGULM) W " border=""1"" "
  W " style=""position:absolute"
  ;;W ";width:"_(COLS*WDC)_"px"
  W ";width:98%"
  W ";left:20px"
  ;;W ";top:100px"
  W ";z-Index:"_(UR*10)
  W ";table-layout:fixed"
  I $G(@$$^W4PRM@("BGULM"_ULAM))'="" D
  .W ";background-image:url('"_$G(@$$^W4PRM@("BGULM"_ULAM))_"')"
  D
  .I $$MZVHSB W ";"_$$GRAD1("#FFD51E","LIGHTYELLOW") Q
  .I $$MZVFIRE W ";"_$$GRAD1("#FF0000","LIGHTYELLOW") Q
  .I $L($$ULAMBG) W ";background-color:"_$$ULAMBG
  W """ "
  W " cellspacing=""0"" cellpadding=""0"" align=""center"" "
  I '$D(HZGULM) W " onmousemove=""MouseMove(event)"" onmouseup=""MouseUp()"" "
 W ">",!
  ;
 F I=1:1:LINES D
  .W " <tr height="""_$S(I=1&$D(HZGULM):0,1:HGC)_"px"">",!
  .F J=1:1:COLS D
  ..I I=1,J>1 D  Q  ; -- NUMERAZIYA STOLBZOV
  ...W "  <td style=""text-align:center"" width="""_WDC_"px"">"
  ...I $D(HZGULM) W "" ; &nbsp;
  ...E  W (J-1) W:J<11 "&nbsp;"
  ...W "</td>",!
  ..
  ..I J=1,I=1 W "<td width=""20px"">"_$S($D(HZGULM):"",1:"&nbsp;")_"</td>",! Q  ;-- NUMERAZIYA STROK
  ..I J=1,I>1 D  Q
  ...W "<td>"
  ...I $D(HZGULM) W "" ;W "&nbsp;"
  ...E  W (I-1)
  ...W "</td>"
  ..
  ..N I1,J1 S I1=I-1,J1=J-1
  ..
  ..I $$CELLMAINI(I1,J1)=(I1_"-"_J1) D  Q  ; -- BUSY
  ...S TYPE=$$CELLTYPE(I1,J1)
  ...;
  ...I TYPE="S" D SHOWTABLE(I1,J1) Q
  ...
  ...W "<td colspan="""_$$CELLCOLS(I1,J1)_""" "
  ...W " rowspan="""_$$CELLROWS(I1,J1)_""" "
  ...
  ...I TYPE="T" D STYLETEXT(I1,J1)
  ...I TYPE="I" W " align=""center"" "
  ...
  ...I TYPE'="S" D
  ....I '$D(HZGULM) W " onmousedown=""MouseDown(this,'"_I1_"','"_J1_"',true,event)"" "
  ...W ">"
  ...
  ...I TYPE="T" D
  ....N CN S CN=$$CELLCONT(I1,J1) I CN="" W "&nbsp;" Q
  ....W $$^W4NM(CN,1)
  ....;;W $$H2U^%L1FRM(CN)
  ...
  ...I TYPE="I" D SHOWIMG(I1,J1)
  ...
  ...W "</td>",!
  ..
  ..I $$CELLFREEI(I1,J1) D  Q
  ...W "<td "
  ...I '$D(HZGULM),'$D(URSHOW) W " onClick=""ClickCell('"_I1_"','"_J1_"',this)"" "
  ...W ">"
  ... W "&nbsp;"
  ...W "</td>"
  .W " </tr>",!
 W "</table>",!
 Q
 ;
 ;
SAVE ;
 N TMPUL,TMPULI,TMPULZ,TMPULS,TMPBC,UR
 D TMPALL
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM")
 I ULAM<1 S ULAM=1
 ;
 S UR=$$UR Q:UR=""
 ;
 K @$$^W4GL("W4ULAMO")@(ULAM)  ;,UR)
 M @$$^W4GL("W4ULAMO")@(ULAM)=@$$^W4GL("W4ULAM")@(ULAM)
 ;
 K @$$^W4GL("W4ULAM")@(ULAM)  ;,UR)
 ;
 D SAVETMP
 ;
 K @TMPBC@(UR)
 M @TMPBC@(UR)=@TMPBC@("CUR")
 M @$$^W4GL("W4ULAM")@(0,0,"S")=@TMPBC@(0,"S")
 K @TMPBC@(0,"S")
 ;
 M @$$^W4GL("W4ULAM")@(ULAM)=@TMPBC
 ;
 D KILLTMPUL
 K @TMPBC
 Q
 ;
 ;
SAVEARCH(NAME) ;
 N TMPUL,TMPULI,TMPULZ,TMPULS,TMPBC,UR
 D TMPALL
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM")
 I ULAM<1 S ULAM=1
 S NAME=$$CNWEB^%L1FRM(NAME)
 ;
 S UR=$$UR Q:UR=""
 ;
 K @$$^W4GL("W4ULAMA")@(NAME,ULAM) ;,UR)
 ;
 D SAVETMP
 K @TMPBC@(UR)
 M @TMPBC@(UR)=@TMPBC@("CUR")
 ;
 M @$$^W4GL("W4ULAMA")@(NAME,ULAM)=@TMPBC
 Q
 ;
 ;
DEL ;
 N TMPUL,TMPULI,TMPULZ,TMPULS
 D TMPALL
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM")
 I ULAM<1 S ULAM=1
 ;;S UR=$$UR
 ;;K @$$^W4GL("W4ULAM")@(ULAM,UR)
 S UR=$$UR
 K @TMPBC@(UR)
 K @TMPBC@("CUR")
 D KILLTMPUL
 Q
 ;
KILLTMPUL ;
 D TMPALL
 K @TMPUL,@TMPULI,@TMPULZ,@TMPULS,@TMPULSI,@TMPULSU
 Q
 ;
TMPALL ;
 D TMPUL,TMPULI,TMPULZ,TMPULS,TMPULSI,TMPULSU,TMPBC
 Q
 ;
SHOWOPT(STAM) ;
 Q $G(%ARG("SHOW"))
 ;
SHOWTABLE(MI,MJ) ;
  N (JB,%ARG,%REM,MI,MJ,HZGULM,TBLORD)
  N SH,HZM S SH=$$CELLCONT(MI,MJ)
  N COLS,ROWS
  S COLS=$$CELLCOLS(MI,MJ)
  S ROWS=$$CELLROWS(MI,MJ)
  W "<td colspan="""_COLS_""" "
  W " rowspan="""_ROWS_""" "
   ;
   S HZM=""
   I $D(HZGULM) S HZM=$$^W4HZFR(SH)
   D TMPULS
   S STAT=$S(HZM:1,1:0)
   S SUGS=$$SUGS^W4L(SH)
   S FN=$$SHULHFN^W4CRULSH I FN="" S FN="Arial"
   S FSZ=$$SHULHFNSZ^W4CRULSH I FSZ="" S FSZ=12
   S BG=$$SHULHBG^W4CRULSH(SUGS) I BG="" S BG="white"
   S FG=$$SHULHFG^W4CRULSH(SUGS,STAT) I FG="" S FG="black"
   S PIC=$$SHULHPIC^W4CRULSH(SUGS)
   S NOSHOW=$$NOSHOWTBL(SH)
   ;
   I NOSHOW D
   .S BG="lightgrey",FG="grey",PIC=""
   ;
   W " style=""text-align:center;"
    I 'NOSHOW W "cursor:pointer;"
    W "font-family:"_FN_";"
    W "font-size:"_$$^W3FSZ(FSZ)_";"
    W "background-color:"_BG_";"
    I NOSHOW W "opacity:0.3;"
    ;
    I $L(PIC) W "background-image:url('"_$$PATHWEB^W3UPLPIC($$GETP^%W1PRM("MSD"))_PIC_"');"
    ;
    I $D(HZGULM),$G(HZM),$$FIRE^W4HZMST(HZM) D
    .W "vertical-align:top;"
    .W "background-image:url('w4fire.jpg');background-repeat:no-repeat;z-index:100;"
    ;
    W "color:"_FG_";"
    W "font-weight:bold"
    D
    .N BK,BW,BC,BM D TMPULS
    .S BK=$P($G(@TMPULS),";",4)
    .S BW=$P($G(@TMPULS),";",5)
    .S BM=$P($G(@TMPULS),";",6)
    .S BC=$$BORDCOLOR^W4CRULSH(SUGS,STAT)
    .D SHOWBORD(BK,BW,BC,BM)
    W """ "
   I 'NOSHOW D
   .I '$D(HZGULM) W " onmousedown=""MouseDown(this,'"_MI_"','"_MJ_"',true,event)"" "
   .I $D(HZGULM) W " onClick=""ClickCell('"_MI_"','"_MJ_"',this)"" "
  W ">"
     I $D(HZGULM),$G(HZM),$$FIRE^W4HZMST(HZM) D
     .W "<span style=""font-size:"_$$^W3FSZ(9)_";background-color:white;color:red"" >"_$P($G(@$$^W4ORD@(HZM,"FIRE"))," ")_"</span><br>"
     I $D(HZGULM),'$G(HZM),$L($G(TBLORD(SH))) D
     .W "<span style=""font-size:"_$$^W3FSZ(6)_";background-color:white;color:green"" >"_$$^%W1DICT("ORDEREDTO",TBLORD(SH))_"</span><br>"
     ;
     W SH
     I $G(HZM)>0 D 
     .N TEUR S TEUR=$$SPA^%L1FRM($$HRAED^W4HZMST(HZM))
     .I $L(TEUR) D
     ..W "<br><span style=""font-size:"_$$^W3FSZ($S($L(TEUR)<10:10,1:8))_";background-color:white;color:red"" >"
     .. W $$H2U^%L1FRM(TEUR)
     ..W "</span>"
     .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
     .W "<br><span style=""font-size:"_$$^W3FSZ(6)
     .I TSHL'<0 W ";background-color:white;color:blue"" "
     .I TSHL<0 W ";background-color:red;color:black"" "
     .W ">" 
     .W $$^%W1DICT("TBLDETS",TSHL_"<>"_$$SOAD^W4HZMST(HZM))
     .W "</span>",!
  W "</td>"
  ;
  I HZM,$G(@$$^W4PRM@("ULAMTBLB")) D  ; --- SHOW TEXT FOR TABLE
  .N MLZ,MLZ1,SOAD,TXT
  .S MLZ=$$MKBL^W4HZMST(HZM)
  .S MLZ1=$$^W4NAME(MLZ)
  .S SOAD=$$SOAD^W4HZMST(HZM)
  .D TMPUL,TMPULI
  .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
  .;;S TXT=$J(TSHL,2,2)
  .;;S TXT=TXT_" jq "
  .;;S TXT=TXT_" <BR> "_SOAD
  .;;S TXT=TXT_" 'eq"_" <BR> "_MLZ1
  .S TXT=MLZ1
  .N MAINTX S MAINTX=(MI+ROWS)_"-"_MJ
  .N CLRFRAME S CLRFRAME="black"
  .I $L($$HSBP^W4HZMST(HZM)) S CLRFRAME="red"
  .S @TMPUL@(MAINTX)="T;"_TXT_";1;1;solid;1;15;"_CLRFRAME_";Arial;10;center;lightyellow;black"
  .S @TMPUL@(MAINTX,MAINTX)=""
  .;;S @TMPUL@(MAINTX,(MI+ROWS)_"-"_(MJ+1))=""
  .N MAIN
  .S @TMPULI@(MI+ROWS,MJ)="T,"_MAINTX
  .;;S @TMPULI@(MI+ROWS,MJ+1)="T,"_MAINTX
  Q
  ;
  ;
NOSHOWTBL(NMB) ;
 I '$D(HZGULM) Q 0
 N HZM S HZM=$$^W4HZFR(NMB)
 I 'HZM,$$MZVHSB!$$MZVFIRE Q 1
 I $$^W4MVFROM,NMB=$$^W4MVFROM Q 1
 I $$STATUS="FREE",HZM Q 1
 I $$STATUS="BUSY",'HZM Q 1
 I $$^W4ISORD(HZM),'$$MGR,'$$MNL,$$MLZRONLY,$$MKBL^W4HZMST(HZM)'=$$MLZR Q 1 ; POK-T TOLKO SHULH ETOGO MELZ
 S SUGSH=$$SUGS^W4L(NMB)
 I $$CURSUG,(","_$$CURSUG_",")'[(","_SUGSH_",") Q 1 ; - POK-T TOLKO VYBR SUG SHULH
 I $$ME,NMB<$$ME Q 1
 I $$AD,NMB>$$AD Q 1
 Q 0
 ;
STATUS(STAM) ;
 Q $$STATUS^W4HZGSH
 ;
MGR(STAM) ;
 Q $$MGR^W4HZGSH
 ;
MNL(STAM) ;
 N OV S OV=$$GETP^%W1PRM("MLZR") I 'OV Q 0
 I $$MNL^W4SETSUG(OV) Q 1
 Q 0 
 ;
MLZRONLY(STAM) ;
 Q $$MLZRONLY^W4HZGSH
 ;
MLZR(STAM) ;
 Q $$MLZR^W4HZGSH
 ;
CURSUG(STAM) ;
 Q $$CURSUG^W4HZGSH
 ;
ME(STAM) ;
 Q $$ME^W4HZGSH
 ;
AD(STAM) ;
 Q $$AD^W4HZGSH
 ;
STYLETEXT(MI,MJ) ;
  N FN,SZ,AL,BG,FG,FST,BOLD,ITL,UND
  S FN=$$CELLFN(MI,MJ)
  S SZ=$$CELLFNSZ(MI,MJ)
  S AL=$$CELLALGN(MI,MJ)
  S BG=$$CELLBG(MI,MJ)
  S FG=$$CELLFG(MI,MJ)
  S FST=$$CELLFST(I1,J1)
  S BOLD=FST#2
  S ITL=(FST\2)#2
  S UND=(FST\4)#2
  W " style=""font-family:"_FN,!
  W " ;font-size:"_SZ_"pt",!
  W " ;text-align:"_AL,!
  W " ;background-color:"_BG,!
  W " ;vertical-align:middle;",!
  I BOLD W ";font-weight:bold",!
  I ITL W ";font-style:italic",!
  I UND W ";text-decoration:underline",!
  W " ;color:"_FG
  D SHOWBORDER(MI,MJ)
  W """ "
  Q
 ;
SHOWIMG(MI,MJ) ;
  N IMG S IMG=$$CELLCONT(MI,MJ)
  W "<img src="""_$$PATHWEB^W3UPLPIC($$GETP^%W1PRM("MSD"))
   W $$FUNC^%LCASE(IMG)_""" "
  W " style="""
  ;
  I '$D(W4CRULPR) D
  .N WDI,HGI,CELLCOLS,CELLROWS
  .S CELLCOLS=$$CELLCOLS(MI,MJ)
  .S CELLROWS=$$CELLROWS(MI,MJ)
  .N WDC,KF S WDC=$$CELLWIDTH^W4CRULGN,KF=0.030
  .S WDI=WDC*CELLCOLS S WDI=WDI+(CELLCOLS*$S($D(HZGULM):WDC*KF,$$GRID:1.7,1:WDC*KF))
  .S HGI=HGC*CELLROWS-2 ;;I $$GRID S HGI=HGI+CELLROWS
  .N BW S BW=$$CELLBW(MI,MJ)
  .I BW S WDI=WDI-$$BW(MI,MJ),HGI=HGI-$$BH(MI,MJ)
  .W "width:"_WDI_"px;height:"_HGI_"px"
  ;
  D SHOWBORDER(MI,MJ)
  ;
  W """ />"
  Q
  ;
SHOWBORDER(MI,MJ) ;
 N BS,BW,BC,BP
 D DEFB
 D SHOWBORD(BK,BW,BC,BM)
 Q
 ;
DEFB ;
 S BK=$$CELLBK(MI,MJ) ; -- KIND
 S BW=$$CELLBW(MI,MJ) ; WIDTH
 S BC=$$CELLBC(MI,MJ)
 S BM=$$CELLBM(MI,MJ)
 Q
 ;
SHOWBORD(BK,BW,BC,BM)
 N BRDPRM
 I $G(HZM)>0,$D(HZGULM),$$NOPAID^W4HZGSH(HZM) D  Q
 .W ";border:5px red solid;"
 ;
 I $G(HZM),$$HSBP^W4HZMST(HZM) D  Q
 .W ";border-style:dotted;border-width:2px;border-color:red"
 ;
 I BK'="",BW D
 .S BRDPRM=BK_" "_BW_"px"
 .I BC'="" S BRDPRM=BRDPRM_" "_BC
 .I BM=15 W ";border: "_BRDPRM Q
 .I BM#2 W ";border-left:"_BRDPRM
 .I (BM\2)#2 W ";border-right:"_BRDPRM
 .I (BM\4)#2 W ";border-top:"_BRDPRM
 .I (BM\8)#2 W ";border-bottom:"_BRDPRM
 Q
 ;
BW(MI,MJ) ;
 N BS,BW,BC,BP,SBW
 S SBW=0
 D DEFB
 I BK'="",BW D
 .I BM=15 S SBW=2*BW Q
 .I BM#2 S SBW=SBW+BW
 .I (BM\2)#2 S SBW=SBW+BW
 I SBW S SBW=SBW+1
 Q SBW
 ;
BH(MI,MJ) ;
 N BS,BW,BC,BP,SBW
 S SBH=0
 D DEFB
 I BK'="",BW D
 .I BM=15 S SBH=2*BW Q
 .I (BM\4)#2 S SBH=SBH+BW
 .I (BM\8)#2 S SBH=SBH+BW
 I SBH S SBH=SBH+1
 Q SBH
 ;
TMPBC ;
 S TMPBC=$$^W4MAIN("TMPULBC")
 Q
 ;
 ;
SAVETMP ;
 D TMPALL
 K @TMPBC@("CUR")
 N UR S UR=$$UR
 S @TMPBC@("CUR","UR")=UR
 M @TMPBC@("CUR","M")=@TMPUL
 M @TMPBC@("CUR","I")=@TMPULI
 ;
 I +$G(UR)=0 D
 .I $D(TMPULS),$D(@TMPULS) M @TMPBC@("CUR","S")=@TMPULS
 .I $D(TMPULZ),$D(@TMPULZ) M @TMPBC@("CUR","Z")=@TMPULZ
 ;
 Q
 ;
RESTTMP ;
 D KILLTMPUL
 D TMPBC
 S UR=$G(@TMPBC@("CUR","UR"))
 D GETTMP("CUR")
 D PUT^%W1PRM("CRULUR",UR)
 K @TMPBC@("CUR")
 Q
 ;
GETTMP(UR) ;
 I UR?1N D PUT^%W1PRM("CRULUR",UR)
 D KILLTMPUL
 ;
 K @TMPULSU
 N ULAM S ULAM=$$ULAM^W4CRULAM
 N UL S UL="" F  S UL=$O(@$$^W4GL("W4ULAM")@(UL)) Q:UL=""  I UL'=ULAM D
 .S N="" F  S N=$O(@$$^W4GL("W4ULAM")@(UL,0,"M",N)) Q:N=""  D
 ..S A=$G(^(N)) I $P(A,";")="S" D
 ...S C=$P(A,";",2) Q:C=""
 ...S @TMPULSU@(C)=N_";"_UL
 ;
 I '$D(@TMPBC@(UR)) Q
 ;
 M @TMPUL=@TMPBC@(UR,"M")
 M @TMPULI=@TMPBC@(UR,"I")
 I $D(@TMPBC@(UR,"S")) M @TMPULS=@TMPBC@(UR,"S")
 I $D(@TMPBC@(UR,"Z")) M @TMPULZ=@TMPBC@(UR,"Z")
 ;
 K @TMPULSI
 N N,A,C S N="" F  S N=$O(@TMPUL@(N)) Q:N=""  D
 .S A=$G(^(N)) I $P(A,";")="S" D
 ..S C=$P(A,";",2) Q:C=""
 ..S @TMPULSI@(C)=N
 ;
 Q
 ;
 ;
SAVEBC ;
 D TMPALL
 S UR=$$UR K @TMPBC@(UR)
 M @TMPBC@(UR,"M")=@TMPUL
 M @TMPBC@(UR,"I")=@TMPULI
 I $D(@TMPULS) M @TMPBC@(UR,"S")=@TMPULS
 I $D(@TMPULZ) M @TMPBC@(UR,"Z")=@TMPULZ
 Q
 ;
GET(UR) ;
 N CURUR
 S CURUR=$G(@TMPBC@("CUR","UR"))
 I +UR=+CURUR D RESTTMP D PUT^%W1PRM("CRULUR",UR) Q
 I $D(@TMPBC@(UR)) D GETTMP(UR)
 Q
 ;
GRID(STAM) ;
 Q '$G(%ARG("NOGRID"))
 ;
WDHG ;
 S WDC=$$CELLWIDTH^W4CRULGN
 S HGC=$$CELLHEIGHT^W4CRULGN
 Q
 ;
REKA(UR) ;
 K URSHOW
 D GET(UR)
 D PUT^%W1PRM("CRULUR",UR)
 D SHOW
 Q
 ;
SHOWULAM(ARGUR) ;
 D IN
 D SAVETMP
 ;
 I '$D(HZGULAM),$$SHIHVA^W4PRM D REKA(-1) I ARGUR=-1 G ES
 ;
 K URSHOW
 I +ARGUR=0 D
 .D PUT^%W1PRM("CRULUR",0)
 .D RESTTMP D SHOW
 ;
 I $D(HZGULAM),$$SHIHVA^W4PRM D REKA(-1) I ARGUR=-1 G ES
 ;
ES ;
 ;
 D PUT^%W1PRM("CRULUR",ARGUR)
 Q
 ;
 ;
GETPRM(CRD) ;
 N PRM,MI,MJ,TYPE,CONT
 S MI=$P(CRD,"-"),MJ=$P(CRD,"-",2)
 S TYPE=$$CELLTYPE(MI,MJ)
 S PRM=$$CELLROWS(MI,MJ)
 S PRM=PRM_";"_$$CELLCOLS(MI,MJ)
 S PRM=PRM_";"_TYPE
 S CONT=$$CELLCONT(MI,MJ)
 I TYPE="T" S CONT=$$CLWEB^%L1FRM($$INVH^%L1FRM(CONT))
 S PRM=PRM_";"_CONT
 S PRM=PRM_";"_$$CELLBK(MI,MJ)
 S PRM=PRM_";"_$$CELLBW(MI,MJ)
 S PRM=PRM_";"_$$CELLBM(MI,MJ)
 S PRM=PRM_";"_$$CELLBC(MI,MJ)
 S PRM=PRM_";"_$$CELLFN(MI,MJ)
 S PRM=PRM_";"_$$CELLFNSZ(MI,MJ)
 S PRM=PRM_";"_$$CELLALGN(MI,MJ)
 S PRM=PRM_";"_$$CELLBG(MI,MJ)
 S PRM=PRM_";"_$$CELLFG(MI,MJ)
 S PRM=PRM_";"_$$CELLFST(MI,MJ)
 Q PRM
 ;
MZVHSB() ; 
 Q $$MZVHSB^W4HZGSH 
 ;
MZVFIRE() ; 
 Q $$MZVFIRE^W4HZGSH 
 ;
GRAD1(STARTCOLOR,STOPCOLOR)
 N A
 S A="   filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='"_STOPCOLOR_"');"
 ;;S A=A_"   background: -webkit-gradient(linear, 0 0, 0  100%, from("_STARTCOLOR_"), to("_STARTCOLOR_"), color-stop(0.5, "_STOPCOLOR_"));"
 S A=A_"   background: -webkit-gradient(linear, 0 0, 0  100%, from("_STARTCOLOR_"), to("_STOPCOLOR_"));"
 S A=A_"   background: -moz-linear-gradient("_STARTCOLOR_","_STOPCOLOR_");"
 S A=A_"   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='"_STARTCOLOR_"', endColorstr='#EBFFFF');"
 S A=A_"   background   padding: 3px 7px;-repeat:no-repeat;"
 S A=A_"   background-color:"_STARTCOLOR_";"
 Q A
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CRULAR
W4CRULAR ; [ 16.05.13 14:59 ] [ 15.05.13 19:51 ] [ 20.02.13 19:31 ]
 N (JB,%ARG,%REM)
 W "<div align=""center"" >",!
 W "<br>",!
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,60")
 W "<br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" padding=""5px"" >",!
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM") Q:ULAM=""
 ;
 S NM="" F  S NM=$O(@$$^W4GL("W4ULAMA")@(NM)) Q:NM=""  D
 .I '$D(@$$^W4GL("W4ULAMA")@(NM,ULAM)) Q
 .W " <tr>",!
 .W "  <td style=""color:blue;cursor:pointer;text-decorated:underline"" "
 .
 .W "  onClick=""ClickArch('"_$$CLWEB^%L1FRM(NM)_"','"_$$CLWEB^%L1FRM($$INVH^%L1FRM(NM))_"')"">"
 . W $$H2U^%L1FRM($$INVH^%L1FRM(NM)),!
 .W "  </td>"
 .W " </tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
LOAD(NM) ;
 N TMPUL,TMPULI,TMPULZ,TMPULS,TMPULSI
 D KILLTMPUL^W4CRULAM
 ;
 D TMPBC^W4CRULAM
 ;
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM") Q:ULAM=""
 K @TMPBC
 S NM=$$CNWEB^%L1FRM(NM)
 D PUT^%W3DEB("W4CRULAR","NM=NM & ULAM=ULAM")
 M @TMPBC=@$$^W4GL("W4ULAMA")@(NM,ULAM)
 ;
 S UR=0
 D PUT^%W1PRM("CRULPR",UR)
 D GETTMP^W4CRULAM(UR)
 D PUT^%W1PRM("NMARCH",NM)
 D SET^W4CRULCN
 Q
 ;
DEL(NM) ;
 I $G(NM)="" Q
 N ULAM S ULAM=$$GETP^%W1PRM("CRULAM") Q:ULAM=""
 S NM=$$CNWEB^%L1FRM(NM)
 K @$$^W4GL("W4ULAMA")@(NM,ULAM)
 Q

W4CRULCN
W4CRULCN(STAM) ;  [ 16.05.13 10:37 ] [
 Q +$$GETP^%W1PRM("W4CRULCHN")
 ;
SET D PUT^%W1PRM("W4CRULCHN",1)
 Q
 ;
KILL D KILL^%W1PRM("W4CRULCHN")
 Q

W4CRULGN
W4CRULGN ; [ 16.05.13 18:22 ] [ 15.05.13 17:49 ] [ 19.02.13 09:55 ]
 N (JB,%ARG,%REM,CRD)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 W "<span style=""font-weight:bold"">"_$$^%W1DICT("ULAM")_" "_$$ULAM_"</span>"
 W "</br>"
 W "<table border=""1"" "
  W "cellspacing=""0"" cellpadding=""3"" >"
  ;
  W "<tr>"
   W "<td>"_$$^%W1DICT("ULAMNAME")_"</td>"
   W "<td>"
   W "<input type=""text"" id=""ulamnm"" size=""20"" maxlength=""20"" "
    W "value="""_$$H2U^%L1FRM($$ULAMNAME)_""" "
    W " >"
   W "</td>",!
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("CELLWIDTHPIX")
  W " </td>"
  W " <td>"
   W " <input type=""text"" id=""cellwidth"" size=""2"" maxlength=""2"" "
     W " value="""_$$CELLWIDTH_""" "
     W " onClick=""this.select()"" "
     W "/>"
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("CELLHEIGHTPIX")
  W " </td>"
  W " <td>"
   W " <input type=""text"" id=""cellheight"" size=""2"" maxlength=""2"" "
     W " value="""_$$CELLHEIGHT_""" "
     W " onClick=""this.select()"" "
     W "/>"
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("COLUMNS")
  W " </td>"
  W " <td>"
   W " <input type=""text"" id=""cols"" size=""2"" maxlength=""2"" "
     W " value="""_$$COLS_""" "
     W " onClick=""this.select()"" "
     W "/>"
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("LINES")
  W " </td>"
  W " <td>"
   W " <input type=""text"" id=""lines"" size=""2"" maxlength=""2"" "
    W " onClick=""this.select()"" "
    W " value="""_$$LINES_""" "
   W "/>"
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("COLOR")
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""tablebgcolor"" readonly=""readonly"" "
    I $L($$BGCOLOR) W " style=""background-color:"_$$BGCOLOR_""" "
    W " onClick=""ClickColor()"" />"
    W "<input type=""button"" value="""_$$^%W1DICT("DELETE")_""" "
    W " onClick=""DelColor()"" "
    W " />"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,70")
   W "</td>"
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,70")
   W "</td>"
  W "</tr>",!
 ;
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM) D TMPBC
 D ^%W3DEB("W4CRULGN-SUBMIT","PRM=PRM")
 S LINEMAX=$P(PRM,";",1)
 I LINEMAX<$$MAXLINE Q "LINESNUMBERTOOSMALL"
 S COLMAX=$P(PRM,";",2)
 I COLMAX<$$MAXCOL Q "COLSNUMBERTOOSMALL"
 S DOP=$P(PRM,";",3,10)
 I $P(DOP,";")="WHITE" S $P(DOP,";")=""
 N ULNM S ULNM=$P(DOP,";",4)
 S $P(DOP,";",4)=$$INVH^%L1FRM($$CNWEB^%L1FRM(ULNM))
 S @TMPBC=LINEMAX_";"_COLMAX_";"_DOP
 D SET^W4CRULCN
 Q 1
 ;
 ;
LINES(STAM) ;
 N LINES
 D TMPBC
 S LINES=$P($G(@TMPBC),";",1)
 I 'LINES S LINES=$$DFLTLINES^W4CRULAM
 Q LINES
 ;
COLS(STAM) ;
 N COLS
 D TMPBC
 S COLS=$P($G(@TMPBC),";",2)
 I 'COLS S COLS=$$DFLTCOLS^W4CRULAM
 Q COLS
 ;
BGCOLOR(STAM) ;
 D TMPBC
 Q $P($G(@TMPBC),";",3)
 ;
TMPBC D TMPBC^W4CRULAM
 Q
TMPUL D TMPUL^W4CRULPR
 Q
 ;
MAXLINE(STAM) ;
 D TMPUL
 N MAXLINE,CELL,LN S MAXLINE=0
 N N S N="" F  S N=$O(@TMPUL@(N)) Q:N=""  D
 .S CELL=N
 .S LN=$P(CELL,"-",1)
 .I LN>MAXLINE S MAXLINE=LN
 Q MAXLINE
 ;
MAXCOL(STAM) ;
 D TMPUL
 N MAXCOL,CELL,COL S MAXCOL=0
 N N S N="" F  S N=$O(@TMPUL@(N)) Q:N=""  D
 .S CELL=N
 .S COL=$P(CELL,"-",2)
 .I COL>MAXCOL S MAXCOL=COL
 Q MAXCOL
 ;
CELLWIDTH(STAM) ;
 N CELLWIDTH
 D TMPBC
 S CELLWIDTH=$P($G(@TMPBC),";",4)
 I 'CELLWIDTH S CELLWIDTH=$$DFLTCELLWIDTH^W4CRULAM
 D PUT^%W1PRM("WDC",CELLWIDTH)
 Q CELLWIDTH
 ;
CELLHEIGHT(STAM) ;
 N CELLHEIGHT
 D TMPBC
 S CELLHEIGHT=$P($G(@TMPBC),";",5)
 I 'CELLHEIGHT S CELLHEIGHT=$$DFLTCELLHEIGHT^W4CRULAM
 D PUT^%W1PRM("HGC",CELLHEIGHT)
 Q CELLHEIGHT
 ;
ULAM(STAM) ;
 Q $$ULAM^W4CRULAM
 ;
ULAMNAME(STAM) ;
 Q $$ULAMNAME^W4CRULAM

W4CRULPR
W4CRULPR(CRD) ; [ 11.09.18 13:01 ] [ 13.11.17 04:34 ] [ 14.03.16 15:24 ] 
 N (JB,%ARG,%REM,CRD)
 S LINE=$P(CRD,"-")
 S COL=$P(CRD,"-",2)
 ;
 S MAIN=$$CELLMAINI^W4CRULAM(LINE,COL)
 ;
 I MAIN,MAIN["-" S LINE=$P(MAIN,"-"),COL=$P(MAIN,"-",2)
 S MAIN=LINE_"-"_COL
 ;
 D PUT^%W1PRM("CELLMAIN",MAIN)
 ;
 S TYPE=$$CELLTYPE^W4CRULAM(LINE,COL)
 I TYPE=""!(TYPE=0) S TYPE=$S($$UR:"T",1:"S")
 ;
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 W "<table border=""1"" "
  W "cellspacing=""0"" cellpadding=""3"" >"
  W " <tr>"
   W "  <td>"
    W $$^%W1DICT("MAINCELL")
   W "  </td>"
   W "  <td>"
    W LINE_"-"_COL_" ( "_$$^%W1DICT("LINE")_" "_LINE_" "_$$^%W1DICT("COLUMN")_" "_COL_" )"
   W "  </td>"
  W " </tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("COLUMNS")
  W " </td>"
  W " <td>"
    D SELCOLS(LINE,COL,TYPE)
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("LINES")
  W " </td>"
  W " <td>"
   D SELLINES(LINE,COL,TYPE)
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("TYPE")
  W " </td>"
  W " <td>"
   W " <select id=""type"" onChange=""ChangeType()"">"
    I +$$UR=0 D
    .W " <option value=""S"" "_$$SEL(LINE,COL,"S")_" >",!
    . W $$^%W1DICT("SHULHAN")
    .W " </option>",!
    W " <option value=""T"" "_$$SEL(LINE,COL,"T")_" >",!
     W $$^%W1DICT("TEXT")
    W " </option>",!
    W " <option value=""I"" "_$$SEL(LINE,COL,"I")_" >",!
     W $$^%W1DICT("IMAGE")
    W " </option>",!
   W " </select>",!
  W " </td>"
  W "</tr>",!
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("CONTENT")
  W " </td>"
  S CONT=$$CONT(LINE,COL)
  ;
  D PUT^%W3DEB("W4CRULPR","CONT=CONT&TYPE=TYPE&LINE=LINE&COL=COL")
  W " <td id=""tdcont"">"
   I TYPE="S" W $$SELTBL(CONT)
   I TYPE="T" W $$INPUT(CONT)
   ;
   I TYPE="I" D
   .W $$PICSHOW(CONT)
  W " </td>"
  W "</tr>",!
  ;
  D TXTSHOW(TYPE)
  ;
  D BORDER(LINE,COL)
  ;
 W "</table>",!
 W "<br><br>",!
 W "<div id=""divbut"">",!
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_MAIN_"','"_+$G(%ARG("ACT"))_"')","color:green",",,,70")
   W "</td>"
   ;
   D TMPUL
   I $D(@TMPUL@(MAIN)) D
   .W "<td>&nbsp;</td>"
   .I TYPE'="S" D
   ..W "<td>"
   ..  D ROUNDBUT^%W1JS("Copy",$$^%W1DICT("COPY"),"Copy('"_MAIN_"')","color:darkgreen",",,,70")
   ..W "</td>"
   ..W "<td>&nbsp;</td>"
   .;
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Move",$$^%W1DICT("MOVE"),"Move('"_MAIN_"')","color:darkblue",",,,70")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   .;
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("DELETE"),"Delete('"_MAIN_"')","color:darkred",",,,70")
   .W "</td>"
   ;;.W "<td>&nbsp;</td>"
   ;;;
   ;;W "<td>"
   ;;  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,70")
   ;;W "</td>"
  W "</tr>",!
  W "<tr>"
   W "<td colspan=""8"" >"
    W "<div id=""newmain"" style=""visibility:hidden"" >",!
    W $$^%W1DICT("NEWCELLLINE")
    W "&nbsp;"
    W "<select id=""newline"" >",!
    D
    .N I
    .F I=1:1:$$LINEMAX^W4CRULAM-1 W "<option>"_I_"</option>"
    W "</select>"
    ;
    W "&nbsp;&nbsp;"
    W $$^%W1DICT("NEWCELLCOL")
    W "<select id=""newcol"" >",!
    D
    .N I
    .F I=1:1:$$COLMAX^W4CRULAM-1 W "<option>"_I_"</option>"
    W "</select>"
    W "&nbsp;"
    W " <input type=""button"" value="""_$$^%W1DICT("DO")_""" onClick=""DoIt()"" />"
    W "</div>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",! ;-- DIVBUT
 ;
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4CRULPR-SUBMIT","PRM=PRM")
 S LINEMAX=$$LINEMAX^W4CRULAM-1
 S COLMAX=$$COLMAX^W4CRULAM-1
 S ACT=$P(PRM,";",1) ; - 0 - NORMAL, "C" - COPY , "M" - MOVE
 S CELL=$P(PRM,";",2)
 S MI=$P(CELL,"-"),MJ=$P(CELL,"-",2)
 ;;S MAIN=$$CELLMAINI^W4CRULAM(MI,MJ)
 ;;I MAIN,MAIN["-" S MI=$P(MAIN,"-"),MJ=$P(MAIN,"-",2)
 S MAIN=MI_"-"_MJ
 S LINES=$P(PRM,";",3)
 I LINES<1 S LINES=1
 I MI>LINEMAX!(MJ>COLMAX) Q "MAINCELLWRONG"
 I MI+LINES-1>LINEMAX Q "TOOMUCHOBJECTLINES"
 S COLS=$P(PRM,";",4)
 I COLS<1 S COLS=1
 I MJ+COLS-1>COLMAX Q "TOOMUCHOBJECTCOLS"
 S TYPE=$P(PRM,";",5)
 D PUT^%W3DEB("W4CRULPR-SUBMIT","TYPE=TYPE")
 S CONT=$P(PRM,";",6)
 S CONT=$$CNWEB^%L1FRM(CONT)
 I CONT'["." S CONT=$$INVH^%L1FRM($$CNWEB^%L1FRM(CONT))
 S DOP=$P(PRM,";",7,20)
 S OLDMAIN=$$GETP^%W1PRM("CELLMAIN")
 S MIO=$P(OLDMAIN,"-"),MJO=$P(OLDMAIN,"-",2)
 I TYPE="S",'CONT Q "SHULHANMUSTBENUMBER"
 I TYPE="S",$L(CONT)>3 Q "SHULHANNUMBERMAX3"
 I TYPE="S",'$$D^W4L(CONT) Q "SHULHANNUMBERNOTDEFINED"
 ;
 I TYPE="I",CONT="" D
 .S CONT=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 .I CONT="" S CONT=$$CELLCONT^W4CRULAM(MIO,MJO)
 I TYPE="I",CONT'["." Q "TYPEIMAGEISWRONG"
 I TYPE="I" D
 .I CONT["/" S CONT=$P(CONT,"/",$L(CONT,"/"))
 .S CONT=$$FUNC^%LCASE(CONT)
 .I $L(CONT),$E(CONT,1,4)'="crul" S CONT="crul"_CONT
 ;;I ACT="M"!(ACT="C"),OLDMAIN=MAIN Q "SAMECELL"
 ;
 I TYPE="S",ACT'="M",ACT'="?" S DBL=$$DOUBLE(MAIN,CONT) I DBL Q "CELLDOUBLE;"_DBL
 ;
 N CNF S CNF=$$CONFLICT(MI,MJ,LINES,COLS,TYPE,ACT,CONT)
 D PUT^%W3DEB("W4CRULPR-SUBMIT","CNF=CNF")
 I CNF Q "CELLCONFLICT;"_CNF
 ;
 D SET^W4CRULCN
 ;
 I ACT="?" Q 1
 ;
 D TMPUL,TMPULI,TMPULZ,TMPULSI,TMPULSU
 I ACT'="C",OLDMAIN'="" D DEL(OLDMAIN)
 D SAVE(MAIN,TYPE,CONT,LINES,COLS,DOP)
 Q 1
 ;
 ;
SAVE(MAIN,TYPE,CONT,LINES,COLS,DOP)
 S @TMPUL@(MAIN)=TYPE_";"_CONT_";"_LINES_";"_COLS_";"_DOP
 I TYPE="S",$L(CONT) S @TMPULSI@(CONT)=MAIN
 S MI=$P(MAIN,"-"),MJ=$P(MAIN,"-",2)
 ;
 N I,J
 F I=MI:1:MI+LINES-1 D
 .F J=MJ:1:MJ+COLS-1 D
 ..S @TMPUL@(MAIN,I_"-"_J)=""
 ..S @TMPULI@(I,J)=TYPE_","_MAIN
 ;
 D SET^W4CRULCN
 ;
 I TYPE'="S" Q
 ;------------------ ZONE ---------------
 N BGI,BGJ
 S BGI=MI-1 I BGI<1 S BGI=1
 S BGJ=MJ-1 I BGJ<1 S BGJ=1
 ;
 S GI=MI+LINES
 I GI>LINEMAX S GI=GI-1
 F I=BGI:1:GI D
 .I MJ>1 S @TMPULZ@(I,MJ-1,MAIN)=""
 .I (MJ+COLS)'>COLMAX D
 ..S @TMPULZ@(I,MJ+COLS,MAIN)=""
 ;
 S GJ=MJ+COLS
 I GJ>COLMAX S GJ=GJ-1
 F J=BGJ:1:GJ D
 .I MI>1 S @TMPULZ@(MI-1,J,MAIN)=""
 .I (MI+LINES)'>LINEMAX D
 ..S @TMPULZ@(MI+LINES,J,MAIN)=""
 ;
 Q
 ;
 ;
DEL(MAIN)
 N TMPUL,TMPULI,TMPULZ
 D TMPUL,TMPULI,TMPULZ
 N I,J,TYPE
 S TYPE=$$CELLTYPE^W4CRULAM(+$P(MAIN,"-"),+$P(MAIN,"-",2))
 K @TMPUL@(MAIN)
 S I="" F  S I=$O(@TMPULI@(I)) Q:I=""  D
 .S J="" F  S J=$O(@TMPULI@(I,J)) Q:J=""  D
 ..I $P($G(^(J)),",",2)=MAIN K @TMPULI@(I,J)
 ;
 D KILL^%W1PRM("UPLPICFILE")
 I TYPE'="S" Q
 ;
 S I="" F  S I=$O(@TMPULZ@(I)) Q:I=""  D
 .S J="" F  S J=$O(@TMPULZ@(I,J)) Q:J=""  D
 ..K @TMPULZ@(I,J,MAIN)
 ;
 Q
 ;
 ;
TMPUL S TMPUL=$$^W4MAIN("TMPUL")
 Q
TMPULI S TMPULI=$$^W4MAIN("TMPULI")
 Q
TMPULZ S TMPULZ=$$^W4MAIN("TMPULZ")
 Q
 ;
TMPULSI S TMPULSI=$$^W4MAIN("TMPULSI")
 Q
 ;
TMPULSU S TMPULSU=$$^W4MAIN("TMPULSU")
 Q
 ;
 ;
UR(STAM)
 Q $$UR^W4CRULAM
 ;
COLS(L,C) ;
 S C=$$CELLCOLS^W4CRULAM(L,C) ;
 I C<1 S C=1
 Q C
 ;
LINES(L,C) ;
 S L=$$CELLROWS^W4CRULAM(L,C) ;
 I L<1 S L=1
 Q L
 ;
SEL(L,C,V) ;
 N T S T=$$CELLTYPE^W4CRULAM(L,C)
 I T=V Q " selected=""selected"" "
 Q ""
 ;
SELALGN(L,C,V)
 N T S T=$$CELLALGN^W4CRULAM(L,C)
 I T=V Q " selected=""selected"" "
 Q ""
CONT(L,C) ;
 Q $$CELLCONT^W4CRULAM(L,C)
 ;
CONFLICT(T,L,ROWS,COLS,TYPE,ACT,CONT) ;
 D PUT^%W3DEB("W4CRULPR-CONFLICT","T=T&L=L&ROWS=ROWS&COLS=COLS&TYPE=TYPE")
 N A,I,J,K,OK,CELL,TMPULI,TMPULZ
 D TMPULI,TMPULZ
 ;
 N OLDMAIN S OLDMAIN=$$GET^%W1PRM("CELLMAIN")
 ;
 S OK=0
 F I=T:1:T+ROWS-1 D  Q:OK
 .F J=L:1:L+COLS-1 D  Q:OK
 ..I $D(@TMPULI@(I,J)) D
 ...S A=$G(^(J))
 ...S CELL=$P(A,",",2)
 ...S CELLCONT=$$CONT(+$P(CELL,"-"),+$P(CELL,"-",2))
 ...I CELLCONT=CONT,TYPE="S" Q
 ...I CELL=OLDMAIN Q
 ...I $G(ACT)="M"!($G(ACT)="C") S OK=CELL Q
 ...I CELL'=(T_"-"_L),$L(CELL) S OK=CELL
 ;
 D PUT^%W3DEB("W4CRULPR-CONFLICT","OK1=OK")
 Q OK ; --- NEW
 ;
 I TYPE'="S"!'$G(@$$^W4PRM@("ULAMTBLB")) Q OK
 ;
 F I=T:1:T+ROWS-1 D  Q:OK
 .F J=L:1:L+COLS-1 D  Q:OK
 ..I $D(@TMPULZ@(I,J)) D
 ...S K="" F  S K=$O(@TMPULZ@(I,J,K)) Q:K=""  D  Q:OK
 ....S CELLCONT=$$CONT(+$P(K,"-"),+$P(K,"-",2))
 ....I CELLCONT=CONT,TYPE="S" Q
 ....I K'=(T_"-"_L),$L(K) S OK=K
 ;
 D PUT^%W3DEB("W4CRULPR-CONFLICT","OK2=OK")
 ;
 Q OK
 ;
 ;
DOUBLE(MAIN,CONT) ;
 D TMPUL N C,N,OK S OK=0
 S N="" F  S N=$O(@TMPUL@(N)) Q:N=""  D  Q:OK
 .S C=$P($G(^(N)),";",2)
 .I C=CONT,N'=MAIN S OK=N
 Q OK
 ;
SELTBL(CONT) ;
 N A,I,MAIN,SUGL1 D TMPULSI,TMPULSU
 S MAIN=$$GETP^%W1PRM("CELLMAIN")
 S A="<select id=""content"">"
  F I=1:1:999 I $D(@$$^W4GL("LKH")@(I))=11 D
  .I $D(@TMPULSI@(I)),I'=CONT Q
  .I $D(@TMPULSU@(I)) Q
  .S SUGL1=$$SUGL1^W4L(I) Q:SUGL1?.P
  .S A=A_"<option value="""_I_""" "
  .I +I=+CONT S A=A_" selected=""selected"" "
  .S A=A_">"
  .S A=A_I_$S(I<10:"&nbsp;&nbsp;",I<100:"&nbsp;",1:"")_" "_$$H2U^%L1FRM(SUGL1)
  .S A=A_"</option>"
 S A=A_"</select>"
 Q A
 ;
INPUT(CONT) ;
 N A
 S A=" <input type=""text"" id=""content"" size=""30"" "
 S A=A_" value="""_$$H2U^%L1FRM(CONT)_""" />"
 Q A
 ;
PICSHOW(PIC) ;
 D PUT^%W3DEB("W4CRULPR-PICSHOW","PIC=PIC")
 I $G(PIC)="",$$GETP^%W1PRM("UPLPICFILE")'="" D
 .S PIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 .;;D KILL^%W1PRM("UPLPICFILE")
 N A,MSD S MSD=$$GETP^%W1PRM("MSD")
 S A="<form name=""uploadForm"" "
 S A=A_"action=""w3upload.jsp?JB="_JB_"&CD=&MSD="_MSD_"&PRE=crul"""
 S A=A_" enctype=""multipart/form-data"" method=""post"">"
 S A=A_" <div align=""center"">"
 S A=A_$$FUNC^%LCASE(PIC)_"<br>"
 S A=A_" <input id=""content"" type=""file"" name=""file"" "
 S A=A_"accept=""image/*"" size=""40"" value="""_PIC_""" "
 S A=A_" onClick=""document.getElementById('divbut').style.visibility='hidden'"" "
 S A=A_"onChange=""document.uploadForm.submit()"" />"
 ;;S A=A_" <input type=""button"" name=""Upload"" Value=""Upload"" "
 ;;S A=A_" onClick=""this.value='Uploading...';"
 ;;S A=A_"document.uploadForm.submit()"" >"
 S A=A_" </div></form>"
 Q A
 ;
 ;
TXTSHOW(TYPE) ;
 N FN
 W "<tr id=""trfonts"" "
  I $G(TYPE)'="T" W " style=""visibility:collapse"" "
 W ">"
  W "<td>"_$$^%W1DICT("FONT")_"</td>"
  W "<td><select id=""fonts"" dir=""LTR"" "_$$FONTCHANGE
       ;;I $G(TYPE)'="T" W "disabled=""disabled"" "
       S FN=$$CELLFN(LINE,COL)
       W ">"
   W "<script>",!
    W "var flist=FontSelector()",!
    W "var cellfn='"_FN_"'",!
    W "var opt",!
    W "for ( var i=0 ; i<flist.length ; i++ )",!
    W "{",!
     W "opt='<option>'",!
     W "if ( flist[i] == cellfn ) { opt='<option selected=""selected"" >' }",!
     W "document.write(opt+flist[i]+""</option>"")",!
    W "}",!
   W "</script>",!
   W "</select>",!
  W "</td>",!
 W "</tr>",!
 ;
 W "<tr id=""trfontsize"" "
  I $G(TYPE)'="T" W " style=""visibility:collapse"" "
 W ">"
  W "<td>"_$$^%W1DICT("FONTSIZE")_"</td>"
  W "<td><select id=""fontsize"" dir=""LTR"" "_$$FONTCHANGE
   ;;I $G(TYPE)'="T" W "disabled=""disabled"" "
   W ">",!
   D
   .N I F I=7:1:11,12:2:28,36,48 D
   ..W "<option "
   ..S FSZ=$$CELLFNSZ(LINE,COL) I 'FSZ S FSZ=12
   ..I I=FSZ W " selected=""selected"" "
   ..W " value="""_I_""">"_I_"</option>"
   W "</select>",!
  W "</td>",!
 W "</tr>",!
 ;
 W "<tr id=""tralign"" "
  I $G(TYPE)'="T" W " style=""visibility:collapse"" "
 W " >"
  W "<td>"_$$^%W1DICT("ALIGN")_"</td>"
  W "<td dir=""LTR""><select id=""align"" dir=""LTR"" "_$$FONTCHANGE
  ;;I $G(TYPE)'="T" W "disabled=""disabled"" "
  W " >",!
    D
    .N I F I="center","left","right" D
    ..W " <option "_$$SELALGN(LINE,COL,I)_">"_I_"</option>",!
   W "</select>",!
   ;
   K M S M(1)="bold",M(2)="italic",M(3)="underline"
   F I=1:1:3 D
   .W "&nbsp;"_M(I)_" <input type=""checkbox"" id=""font"_M(I)_""" "_$$FONTSTYLE(LINE,COL,I)_" onChange=""OnFontChange()"" "
   .;;I $G(TYPE)'="T" W "disabled=""disabled"" "
   .W " />"
  W "</td>",!
 W "</tr>",!
 ;
 W "<tr id=""trcolor"" "
  ;;I TYPE'="T" W " style=""color:grey"" "
  I $G(TYPE)'="T" W " style=""visibility:collapse"" "
  W ">"
  W "<td>"_$$^%W1DICT("COLOR")_"</td>"
  W "<td>"
   W "<table>",!
    W "<tr height=""60px"" "
      W ">"
      W "<td onClick=""OnClickColor()"" "
      W " id=""color"" style=""top:0;left:0;width:100%;height:100%"
      .
      I TYPE="T" D
      .N BG,FG S BG=$$CELLBG(LINE,COL),FG=$$CELLFG(LINE,COL)
      .N FST S FST=$$CELLFST(LINE,COL)
      .N FSZ S FSZ=$$CELLFNSZ(LINE,COL)
      .I '$L(BG) S BG="RBG(255 ,255 ,255)"
      .I '$L(FG) S FG="RBG(0 ,0 ,0)"
      .I $L(BG) W ";background-color:"_BG
      .I $L(FG) W ";color:"_FG
      .W ";font-size:"_FSZ_"pt"
      .I FST#2 W ";font-weight:bold"
      .I (FST\2)#2 W ";font-style:italic"
      .I (FST\4)#2 W ";text-decoration:underline"
      ;
      I TYPE'="S" D SHOWBORDER^W4CRULAM(LINE,COL)
      W """ "
      W " >"
       I TYPE="I" ;;D
       .N CURPIC,W4CRULPR
       .S CURPIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
       .I CURPIC="" S W4CRULPR="" D SHOWIMG^W4CRULAM(LINE,COL)
       .I CURPIC'="" D
       .. W "<img src="""_$$PATHWEB^W3UPLPIC($$GETP^%W1PRM("MSD"))
       .. W $$FUNC^%LCASE(CURPIC)_""" "
       .. W """ />"
       ;
       I TYPE="T" W $$^%W1DICT("TODEFINECOLORPRESSHERE")
       I TYPE="S" W $$^%W1DICT("TODEFINECOLORPRESSONDEFTBLBUTTON")
     W "</td>",!
    W "</tr>",!
   W "</table>",!
  W "</td>",!
 W "</tr>",!
 Q
 ;
BORDER(LINE,COL) ;
  N I,M
  W "<tr id=""trborder"" "
   I $G(TYPE)="S" W " style=""visibility:collapse"" "
  W ">"
  W " <td>"_$$^%W1DICT("BORDER")_"</td>"
  W " <td>"
   W "<table id=""tblborder"" width=""100%"" height=""100%"" "
   W ">",!
    W "<tr>"
     W "<td>"
      W $$^%W1DICT("WIDTH")
     W "</td>"
     W "<td>"
      W "<select id=""borderwidth"" onChange=""BorderWidth()"">"
       F I=0:1:5 W "<option "_$$BORDWIDTH(LINE,COL,I)_">"_I_"</option>",!
      W "</select>"
     W "</td>"
    W "</tr>",!
    ;
    W "<tr>"
     W "<td>"
      W $$^%W1DICT("COLOR")
     W "</td>"
     W "<td>"
      W "<input type=""text"" id=""bordercolor"" readonly=""readonly"" "
      W " style=""background-color:"_$$BORDCOLOR(LINE,COL)_""" "
      W " onClick=""ClickBorderColor()"" />"
     W "</td>"
    W "</tr>",!
    ;
    W "<tr>"
     W "<td>"
      W $$^%W1DICT("KIND")
     W "</td>"
     W "<td>"
      K M
      S M(1)="solid"
      S M(2)="groove"
      S M(3)="ridge"
      S M(4)="inset"
      S M(5)="outset"
      ;
      W "<select id=""borderkind"">"
       S I="" F  S I=$O(M(I)) Q:I=""  W "<option "_$$BORDKIND(LINE,COL,M(I))_">"_M(I)_"</option>",!
      W "</select>"
     W "</td>"
    W "</tr>",!
    ;
    ;
    W "<tr "
    W ">"
     W "<td>"
      W $$^%W1DICT("MIKUM")_" : "
     W "</td>"
     W "<td>"
      K M
      S M(1)="LEFT"
      S M(2)="RIGHT"
      S M(3)="TOP"
      S M(4)="BOTTOM"
      ;
      F I=1:1:4 D
      .W $$^%W1DICT(M(I))_"&nbsp;"
      .W "<input type=""checkbox"" name=""borderplace"" "
      .W $$BORDMIKUM(LINE,COL,I)_">&nbsp;&nbsp;"
     W "</td>"
    W "</tr>",!
   W "</table>",!
  W " </td>",!
  W "</tr>"
  Q
  ;
FONTSTYLE(LINE,COL,I)
  N FST S FST=$$CELLFST^W4CRULAM(LINE,COL)
  I FST#2,I=1 Q "checked=""checked"" "
  I (FST\2)#2,I=2 Q "checked=""checked"" "
  I (FST\4)#2,I=3 Q "checked=""checked"" "
  Q ""
  ;
BORDWIDTH(LINE,COL,I)
  N BW S BW=$$CELLBW^W4CRULAM(LINE,COL)
  I +BW=+I Q " selected=""selected"" "
  Q ""
  ;
BORDCOLOR(LINE,COL,I)
  Q $$CELLBC^W4CRULAM(LINE,COL)
  ;
BORDKIND(LINE,COL,KIND)
  N BK S BK=$$CELLBK^W4CRULAM(LINE,COL)
  I BK=KIND Q "selected=""selected"" "
  Q ""
  ;
BORDMIKUM(LINE,COL,I)
  N BM S BM=$$CELLBM^W4CRULAM(LINE,COL)
  I BM#2,I=1 Q "checked=""checked"" "
  I (BM\2)#2,I=2 Q "checked=""checked"" "
  I (BM\4)#2,I=3 Q "checked=""checked"" "
  I (BM\8)#2,I=4 Q "checked=""checked"" "
  Q ""
  ;
FONTCHANGE(STAM) ;
 Q " onChange=""OnFontChange()"" "
 ;
CELLFN(I,J) ;
 Q $$CELLFN^W4CRULAM(I,J)
 ;
CELLFNSZ(I,J) ;
 Q $$CELLFNSZ^W4CRULAM(I,J)
 ;
CELLALGN(I,J) ;
 Q $$CELLALGN^W4CRULAM(I,J)
 ;
CELLBG(I,J) ;
 Q $$CELLBG^W4CRULAM(I,J)
 ;
CELLFG(I,J) ;
 Q $$CELLFG^W4CRULAM(I,J)
 ;
CELLFST(I,J) ;
 Q $$CELLFST^W4CRULAM(I,J)
 ;
SELCOLS(LINE,COL,TYPE) ;
 W "<select id=""cols"" >",!
 D
 .N I
 .F I=1:1:$$COLMAX^W4CRULAM-COL-(TYPE="S") D
 ..W "<option "_$S(I=$$COLS(LINE,COL):"selected=""selected"" ",1:"")_" >"
 .. W I
 ..W "</option>"
 W "</select>"
 Q
 ;
SELLINES(LINE,COL,TYPE) ;
 W "<select id=""lines"" >",!
 D
 .N I
 .F I=1:1:$$LINEMAX^W4CRULAM-LINE-(TYPE="S") D
 ..W "<option "_$S(I=$$LINES(LINE,COL):"selected=""selected"" ",1:"")_" >"
 .. W I
 ..W "</option>"
 W "</select>"
 Q
 
 
 
 

W4CRULS0
W4CRULSH ; [ 29.12.12 20:32 ] [ 23.12.12 07:08 ] [ 22.12.12 21:21 ]
 N (JB,%ARG,%REM)
 D ^%W1ARG
 I '$G(TYPE) S TYPE=$O(@$$^W4GL("SUGS")@(""))
 I TYPE="" Q
 I '$G(STAT) S STAT=0
 D PUT^%W1PRM("TBLTYPE",TYPE)
 D PUT^%W1PRM("TBLSTAT",STAT)
 S PIC=$G(PIC)
 D TMPULS
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 W "<table>",!
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("TYPE")
  W " </td>"
  W " <td>"
   W " <select id=""tbltype"" onChange=""ChangeType()"">"
   S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D
   .S A=$G(^(N))
   .W "<option value="""_N_""" "
   .I N=TYPE W " selected=""selected"" "
   .W ">"_$$H2U^%L1FRM(A)_"</option>"
   W " </select>",!
  W " </td>"
  ;
  W "<td>"
   W $$^%W1DICT("TBLSTAT")
  W "</td>"
  W "<td>"
   W "<select id=""tblstat"" onChange=""ChangeStatus()"" >"
    W "<option value=""0"" "_$S(STAT=1:"",1:"selected=""selected"" ")_">"_$$^%W1DICT("FREE")_"</option>"
    W "<option value=""1"" "_$S(STAT=1:"selected=""selected"" ",1:"")_">"_$$^%W1DICT("BUSY")_"</option>"
   W "</select>"
  W "</td>"
  W "</tr>"
 W "</table>",!
 W "<br>",!
 ;
 W "<table border=""1"" "
  W "cellspacing=""0"" cellpadding=""3"" >"
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("BASICPIC")
  W " </td>"
  ;
  W " <td id=""tdpic"">"
   W $$PICSHOW(TYPE,STAT)
  W " </td>"
  W "</tr>",!
  ;
  D TXTSHOW(TYPE,STAT)
  ;
 W "</table>",!
 ;
 W "<br><br>",!
 ;
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,70")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,70")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D TMPULS
 D ^%W3DEB("W4CRULSH-SUBMIT","PRM=PRM")
 S TYPE=$P(PRM,";",1)
 I 'TYPE Q "TBLTYPEWRONG"
 S STAT=$P(PRM,";",2)
 I STAT="" Q "TBLSTATWRONG"
 S PIC=$P(PRM,";",3)
 S PIC=$$CNWEB^%L1FRM(PIC)
 S DOP=$P(PRM,";",4,20)
 I PIC="" D
 .S PIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 .I PIC="" S PIC=$$SHULHPIC(TYPE,STAT)
 I PIC'="" D
 .S PIC=$$FUNC^%LCASE(PIC)
 .I $L(PIC),$E(PIC,1,4)'="crul" S PIC="crul"_PIC
 .S PIC=$P(PIC,".")_".jpg"
 ;
 D DEL(TYPE,STAT)
 D SAVE(TYPE,STAT,PIC,DOP)
 Q 1
 ;
DELPIC(PRM) ;
 S TYPE=$P(PRM,";",1)
 I 'TYPE Q "TBLTYPEWRONG"
 S STAT=$P(PRM,";",2)
 I STAT="" Q "TBLSTATWRONG"
 D TMPULS
 I $D(@TMPULS@(TYPE,STAT)) S $P(@TMPULS@(TYPE,STAT),";")=""
 D KILL^%W1PRM("UPLPICFILE")
 Q 1
 ;
 ;
DEL(TYPE,STAT) ;
 I $G(TYPE)=""!($G(STAT)="") Q
 K @TMPULS@(TYPE,STAT)
 D KILL^%W1PRM("UPLPICFILE")
 Q
 ;
SAVE(TYPE,STAT,PIC,DOP)
 S @TMPULS=$P(DOP,";",1,2)
 S @TMPULS@(TYPE,STAT)=PIC_";"_$P(DOP,";",3,12)
 Q
 ;
 ;
TMPULS S TMPULS=$$^W4MAIN("TMPULS")
 Q
 ;
 ;
PICSHOW(TYPE,STAT) ;
 S PIC=$$GETPIC(TYPE,STAT)
 D PUT^%W3DEB("W4CRULPR-PICSHOW","PIC=PIC")
 S PIC=$$SHULHPIC(TYPE,STAT)
 I $$GETP^%W1PRM("UPLPICFILE")'="" D
 .S PIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 ;
 N A,MSD S MSD=$$GETP^%W1PRM("MSD")
 S A="<form name=""uploadForm"" "
 S A=A_"action=""w3upload.jsp?JB="_JB_"&CD=&MSD="_MSD_"&PRE=crul"""
 S A=A_" enctype=""multipart/form-data"" method=""post"">"
 S A=A_" <div align=""center"">"
 S A=A_$$FUNC^%LCASE(PIC)_"<br>"
 S A=A_" <input id=""tblpic"" type=""file"" name=""file"" "
 S A=A_"accept=""image/*"" size=""90"" value="""_PIC_""" "
 S A=A_"style=""font-size:10pt"" "
 S A=A_"onChange=""document.uploadForm.submit()"" />"
 S A=A_"<input type=""button"" value="""_$$^%W1DICT("DELETE")_""" "
 S A=A_" onClick=""DelPic('"_TYPE_"','"_STAT_"')"" "
 S A=A_" </div></form>"
 Q A
 ;
GETPICWEB(STAM) ;
 N TYPE,STAT,PIC
 S TYPE=$$GETP^%W1PRM("TBLTYPE")
 S STAT=$$GETP^%W1PRM("TBLSTAT")
 S PIC=$$GETPIC(TYPE,STAT) I PIC="" Q "NOK"
 Q $$CLWEB^%L1FRM($$PATHWEB^W3UPLPIC($$GETP^%W1PRM("MSD"))_PIC)
 ;
GETPIC(TYPE,STAT)
 N PIC I $G(TYPE)=""!($G(STAT)="") Q ""
 S PIC=$$SHULHPIC(TYPE,STAT)
 I $$GETP^%W1PRM("UPLPICFILE")'="" D
 .S PIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 Q PIC
 ;
TXTSHOW(TYPE,STAT) ;
 N FN
 W "<tr >"
  W "<td>"_$$^%W1DICT("FONT")_"</td>"
  W "<td><select id=""fonts"" dir=""LTR"" "_$$FONTCHANGE
       S FN=$$SHULHFN
       W ">"
   W "<script>",!
    W "var flist=FontSelector()",!
    W "var cellfn='"_FN_"'",!
    W "var opt",!
    W "for ( var i=0 ; i<flist.length ; i++ )",!
    W "{",!
     W "opt='<option>'",!
     W "if ( flist[i] == cellfn ) { opt='<option selected=""selected"" >' }",!
     W "document.write(opt+flist[i]+""</option>"")",!
    W "}",!
   W "</script>",!
   W "</select>",!
  W "</td>",!
 W "</tr>",!
 ;
 W "<tr >"
  W "<td>"_$$^%W1DICT("FONTSIZE")_"</td>"
  W "<td><select id=""fontsize"" dir=""LTR"" "_$$FONTCHANGE
   W ">",!
   D
   .N I F I=12:2:16 D
   ..W "<option "
   ..S FSZ=$$SHULHFNSZ I 'FSZ S FSZ=12
   ..I I=FSZ W " selected=""selected"" "
   ..W " value="""_I_""">"_I_"</option>"
   W "</select>",!
  W "</td>",!
 W "</tr>",!
 ;
 W "<tr >"
  W "<td>"_$$^%W1DICT("COLOR")_"</td>"
  W "<td>"
   W "<table>",!
    W "<tr height=""60px"">"
      W "<td onClick=""OnClickColor()"" "
      W " id=""color"" style=""top:0;left:0;width:100%;height:100%"
      N BG,FG S BG=$$SHULHBG(TYPE,STAT),FG=$$SHULHFG(TYPE,STAT)
      I $L(BG) W ";background-color:"_BG
      I $L(FG) W ";color:"_FG
      W """ "
      W " >"
       W $$^%W1DICT("TODEFINECOLORPRESSHERE")
     W "</td>",!
    W "</tr>",!
   W "</table>",!
  W "</td>",!
 W "</tr>",!
 Q
 ;
FONTCHANGE(STAM) ;
 Q " onChange=""OnFontChange()"" "
 ;
SHULHFN(STAM) ;
 D TMPULS
 Q $P($G(@TMPULS),";",1)
 ;
SHULHFNSZ(TYPE,STAT) ;
 D TMPULS
 Q $P($G(@TMPULS),";",2)
 ;
SHULHPIC(TYPE,STAT) ;
 D TMPULS
 Q $P($G(@TMPULS@(TYPE,STAT)),";",1)
 ;
SHULHBG(TYPE,STAT) ;
 D TMPULS
 Q $P($G(@TMPULS@(TYPE,STAT)),";",2)
 ;
SHULHFG(TYPE,STAT) ;
 D TMPULS
 Q $P($G(@TMPULS@(TYPE,STAT)),";",3)
 ;

W4CRULSH
W4CRULSH ; [ 29.12.19 10:23 ] [ 12.05.14 16:23 ] [ 26.04.14 18:01 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG D KILL^%W1PRM("CRULSHCN"),KILL^%W1PRM("MUSTSAVE")
 I '$G(TYPE) S TYPE=$O(@$$^W4GL("SUGS")@(""))
 I TYPE="" Q
 D PUT^%W1PRM("TBLTYPE",TYPE)
 S PIC=$G(PIC)
 D TMPULS
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 ; -------------------------- GENERAL PARAMETERS --------------------
 W "<table border=""1"" cellpadding=""1"" cellspacing=""0"">",!
  W "<tr>"
   W "<td colspan=""2"" style=""font-weight:bold;text-align:center"" >"
    W $$^%W1DICT("GENERALPARAMETERS")
   W "</td>",!
  W "</tr>",!
  ;
  D TXTSHOW
  D BORDER
  ;
 W "</table>",!
 ;
 W "<br>" ; -------------- TABLE TYPES LIST
 W "<table>",!
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("KINDOFTABLE")
  W " </td>"
  W " <td>"
   W " <select id=""tbltype"" onChange=""ChangeType()"">"
   S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D
   .S A=$G(^(N))
   .W "<option value="""_N_""" "
   .I N=TYPE W " selected=""selected"" "
   .W ">"_$$H2U^%L1FRM(A)_"</option>"
   W " </select>",!
  W " </td>"
  ;
 W "</table>",!
 W "<br>",!
 ;
 ; ---------------------------- TABLE TYPE PARAMETERS
 W "<table border=""1"" "
  W "cellspacing=""0"" cellpadding=""1"" >"
  ;
  W "<tr>"
  W " <td>"
   W $$^%W1DICT("BASICPIC")
  W " </td>"
  ;
  W " <td id=""tdpic"">"
   W $$PICSHOW(TYPE)
  W " </td>"
  W "</tr>",!
  ;
  W "<tr >"
   W "<td>"_$$^%W1DICT("TABLEBGCOLOR")_"</td>"
   W "<td>"
    W "<table>",!
     W "<tr>"
      W "<td>"
        W "<input type=""text"" id=""tablebgcolor"" "
        W " readonly=""readonly"" size=""30"" "
        W " style="""
        S BG=$$SHULHBG(TYPE)
        I BG'="",BG'=0 W "background-color:"_BG,!
        W " ;font-size:"_$$SHULHFNSZ_"pt",!
        W " ;font-family:"_$$SHULHFN,!
        W " ;font-weight:bold",!
        W " ;color:"_$$SHULHFG(TYPE,0)
        W " ;text-align:center",!
        W """ "
        D VLCOLOR
        W " onClick=""OnClickBgColor()"""
        W "/>"
      W "</td>",!
      W "<td>&nbsp;</td>"
      W "<td>"
        W "<input type=""text"" id=""tablebgcolorbusy"" "
        W " readonly=""readonly"" size=""30"" "
        W " value="""_$$^%W1DICT("TABLEBUSY")_""" "
        W " style="""
        S BG=$$SHULHBG(TYPE)
        I BG'="",BG'=0 W "background-color:"_BG,!
        W " ;color:"_$$SHULHFG(TYPE,1)
        W " ;font-family:"_$$SHULHFN,!
        W " ;font-size:"_$$SHULHFNSZ_"pt",!
        W " ;font-weight:bold",!
        W " ;text-align:center",!
        W """ />"
      W "</td>"
     W "</tr>",!
    W "</table>",!
   W "</td>",!
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("TABLENUMBERCOLORFREE")
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""tablenumbercolorfree"" "
    W " style=""background-color:"_$$SHULHFG(TYPE,0)_""" "
    W " readonly=""readonly"" size=""30"" "
    D VLCOLOR
    W " onClick=""ClickTableNumberColor('0')"" />"
   W "</td>"
  W "</tr>",!
    ;
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("BORDERCOLORFREE")
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""bordercolorfree"" "
    W " style=""background-color:"_$$BORDCOLOR(TYPE,0)_""" "
    W " readonly=""readonly"" size=""30"" "
    D VLCOLOR
    W " onClick=""ClickBorderColor('0')"" />"
   W "</td>"
  W "</tr>",!
 ;
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("TABLENUMBERCOLORBUSY")
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""tablenumbercolorbusy"" "
    W " readonly=""readonly"" size=""30"" "
    W " style=""background-color:"_$$SHULHFG(TYPE,1)_""" "
    D VLCOLOR
    W " onClick=""ClickTableNumberColor('1')"" />"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("BORDERCOLORBUSY")
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""bordercolorbusy"" readonly=""readonly"" "
    W " style=""background-color:"_$$BORDCOLOR(TYPE,1)_""" "
    W " readonly=""readonly"" size=""30"" "
    D VLCOLOR
    W " onClick=""ClickBorderColor('1')"" />"
   W "</td>"
  W "</tr>",!
  W "</table>",!
 ;
 W "<br><br>",!
 ;
 W "<div id=""divbut"" align=""center"">",!
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,70")
   W "</td>"
   W "<td>&nbsp;</td>"
   I '$$GET^%W1PRM("MUSTSAVE") D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,70")
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D TMPULS
 D ^%W3DEB("W4CRULSH-SUBMIT","PRM=PRM")
 S FONTFN=$P(PRM,";")
 S FONTSZ=$P(PRM,";",2)
 S BORDKIND=$P(PRM,";",4)
 S BORDWIDTH=$P(PRM,";",5)
 S BORDPLACE=$P(PRM,";",6)
 S TYPE=$P(PRM,";",7)
 I 'TYPE Q "TBLTYPEWRONG"
 ;
 S PIC=$P(PRM,";",8)
 S PIC=$$CNWEB^%L1FRM(PIC)
 I PIC="" D
 .S PIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 .I PIC="" S PIC=$$SHULHPIC(TYPE)
 I PIC'="" D
 .S PIC=$$FUNC^%LCASE(PIC)
 .I $L(PIC),$E(PIC,1,4)'="crul" S PIC="crul"_PIC
 .S PIC=$P(PIC,".")_".jpg"
 ;
 S SHULHBG=$P(PRM,";",9)
 ;
 S SHULHFGFREE=$P(PRM,";",10)
 S BORDCOLORFREE=$P(PRM,";",11)
 S SHULHFGBUSY=$P(PRM,";",12)
 S BORDCOLORBUSY=$P(PRM,";",13)
 ;
 D SET^W4CRULCN
 D DEL(TYPE)
 D SAVE
 Q 1
 ;
 ;
DEL(TYPE) ;
 I $G(TYPE)="" Q
 K @TMPULS@(TYPE)
 D KILL^%W1PRM("UPLPICFILE")
 Q
 ;
SAVE ;
 S @TMPULS=FONTFN_";"_FONTSZ_";;"_BORDKIND_";"_BORDWIDTH_";"_BORDPLACE
 S @TMPULS@(TYPE)=PIC_";"_SHULHBG
 S @TMPULS@(TYPE,0)=SHULHFGFREE_";"_BORDCOLORFREE
 S @TMPULS@(TYPE,1)=SHULHFGBUSY_";"_BORDCOLORBUSY
 Q
 ;
TMPULS S TMPULS=$$^W4MAIN("TMPULS")
 Q
 ;
 ;
TXTSHOW ;
 N FN
 W "<tr >"
  W "<td>"_$$^%W1DICT("FONT")_"</td>"
  W "<td><select id=""fonts"" dir=""LTR"" "_$$FONTCHANGE
       S FN=$$SHULHFN
       W ">"
   W "<script>",!
    W "var flist=FontSelector()",!
    W "var cellfn='"_FN_"'",!
    W "var opt",!
    W "for ( var i=0 ; i<flist.length ; i++ )",!
    W "{",!
     W "opt='<option>'",!
     W "if ( flist[i] == cellfn ) { opt='<option selected=""selected"" >' }",!
     W "document.write(opt+flist[i]+""</option>"")",!
    W "}",!
   W "</script>",!
   W "</select>",!
  W "</td>",!
 W "</tr>",!
 ;
 W "<tr >"
  W "<td>"_$$^%W1DICT("FONTSIZE")_"</td>"
  W "<td><select id=""fontsize"" dir=""LTR"" "_$$FONTCHANGE
   W ">",!
   D
   .N I F I=12:2:16 D
   ..W "<option "
   ..S FSZ=$$SHULHFNSZ I 'FSZ S FSZ=12
   ..I I=FSZ W " selected=""selected"" "
   ..W " value="""_I_""">"_I_"</option>"
   W "</select>",!
  W "</td>",!
 W "</tr>",!
 ;
 Q
 ;
 ;
BORDER ;
  N I,M
  W "<tr>"
  W " <td>"_$$^%W1DICT("BORDER")_"</td>"
  W " <td>"
   W "<table id=""tblborder"" width=""100%"" height=""100%"" "
   W ">",!
    W "<tr>"
     W "<td>"
      W $$^%W1DICT("WIDTH")
     W "</td>"
     W "<td>"
      W "<select id=""borderwidth"" onChange=""BorderWidth()"" >"
       F I=0:1:5 W "<option "_$$BORDWIDTH(I)_">"_I_"</option>",!
      W "</select>"
     W "</td>"
    W "</tr>",!
    ;
    W "<tr>"
     W "<td>"
      W $$^%W1DICT("KIND")
     W "</td>"
     W "<td>"
      S M(1)="solid"
      S M(2)="groove"
      S M(3)="ridge"
      S M(4)="inset"
      S M(5)="outset"
      ;
      W "<select id=""borderkind"">"
       S I="" F  S I=$O(M(I)) Q:I=""  W "<option "_$$BORDKIND(M(I))_">"_M(I)_"</option>",!
      W "</select>"
     W "</td>"
    W "</tr>",!
    ;
    ;
    W "<tr>"
     W "<td>"
      W $$^%W1DICT("MIKUM")_" : "
     W "</td>"
     W "<td>"
      S M(1)="LEFT"
      S M(2)="RIGHT"
      S M(3)="TOP"
      S M(4)="BOTTOM"
      ;
      F I=1:1:4 D
      .W $$^%W1DICT(M(I))_"&nbsp;"
      .W "<input type=""checkbox"" name=""borderplace"" "
      .W $$BORDMIKUM(I)_">&nbsp;&nbsp;"
     W "</td>"
    W "</tr>",!
   W "</table>",!
  W " </td>",!
  W "</tr>"
  Q
  ;
FONTCHANGE(STAM) ;
 Q " onChange=""OnFontChange()"" "
 ;
SHULHFN(STAM) ;
 D TMPULS
 Q $P($G(@TMPULS),";",1)
 ;
SHULHFNSZ(STAM) ;
 D TMPULS
 Q $P($G(@TMPULS),";",2)
 ;
BORDKIND(KIND)
  N BK S BK=$P($G(@TMPULS),";",4)
  I BK=KIND Q "selected=""selected"" "
  Q ""
  ;
BORDWIDTH(I)
  N BW S BW=$P($G(@TMPULS),";",5)
  I BW="" S BW=2
  I +BW=+I Q " selected=""selected"" "
  Q ""
  ;
BORDMIKUM(I)
  N BM S BM=$P($G(@TMPULS),";",6)
  I BM="" S BM=31
  I BM#2,I=1 Q "checked=""checked"" "
  I (BM\2)#2,I=2 Q "checked=""checked"" "
  I (BM\4)#2,I=3 Q "checked=""checked"" "
  I (BM\8)#2,I=4 Q "checked=""checked"" "
  Q ""
  ;
SHULHPIC(TYPE) ;
 D TMPULS
 Q $P($G(@TMPULS@(TYPE)),";",1)
 ;
SHULHBG(TYPE) ;
 D TMPULS
 N BG S BG=$P($G(@TMPULS@(TYPE)),";",2)
 I BG="" S BG=$$BGCOLORS^W4HZGSH(TYPE) D PUT^%W1PRM("CRULSHCN",1)
 Q BG
 ;
PICSHOW(TYPE) ;
 S PIC=$$GETPIC(TYPE)
 D PUT^%W3DEB("W4CRULPR-PICSHOW","PIC=PIC")
 S PIC=$$SHULHPIC(TYPE)
 I $$GETP^%W1PRM("UPLPICFILE")'="" D
 .S PIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 ;
 N A,MSD S MSD=$$GETP^%W1PRM("MSD")
 S A="<form name=""uploadForm"" "
 S A=A_"action=""w3upload.jsp?JB="_JB_"&CD=&MSD="_MSD_"&PRE=crul"""
 S A=A_" enctype=""multipart/form-data"" method=""post"">"
 S A=A_" <div align=""center"">"
 S A=A_$$FUNC^%LCASE(PIC)_"<br>"
 S A=A_" <input id=""tblpic"" type=""file"" name=""file"" "
 S A=A_"accept=""image/*"" size=""90"" value="""_PIC_""" "
 S A=A_"style=""font-size:10pt"" "
 S A=A_"onChange=""SetChange();document.uploadForm.submit()"" />"
 S A=A_"<input type=""button"" value="""_$$^%W1DICT("DELETE")_""" "
 S A=A_" onClick=""DelPic('"_TYPE_"')"" "
 S A=A_" </div></form>"
 Q A
 ;
GETPICWEB(STAM) ;
 N TYPE,PIC
 S TYPE=$$GETP^%W1PRM("TBLTYPE")
 S PIC=$$GETPIC(TYPE) I PIC="" Q "NOK"
 Q $$CLWEB^%L1FRM($$PATHWEB^W3UPLPIC($$GETP^%W1PRM("MSD"))_PIC)
 ;
GETPIC(TYPE)
 N PIC I $G(TYPE)="" Q ""
 S PIC=$$SHULHPIC(TYPE)
 I $$GETP^%W1PRM("UPLPICFILE")'="" D
 .S PIC=$$CNWEB^%L1FRM($$GETP^%W1PRM("UPLPICFILE"))
 Q PIC
 ;
 ;
SHULHFG(TYPE,STAT) ;
 D TMPULS
 N FG S FG=$P($G(@TMPULS@(TYPE,STAT)),";",1)
 I FG="",$G(STAT)=1 S FG="#FF0000" D PUT^%W1PRM("MUSTSAVE",1)
 I FG="",'$G(STAT) S FG=$$FGCOLORS^W4HZGSH(TYPE) D PUT^%W1PRM("CRULSHCN",1)
 Q FG
 ;
BORDCOLOR(TYPE,STAT)
 N BORD S BORDC=$P($G(@TMPULS@(TYPE,STAT)),";",2)
 I BORDC="",$G(STAT)=1 S BORDC="#FF0000"
 Q BORDC
 ;
DELPIC(PRM) ;
 S TYPE=$P(PRM,";",1)
 I 'TYPE Q "TBLTYPEWRONG"
 D TMPULS
 I $D(@TMPULS@(TYPE)) S $P(@TMPULS@(TYPE),";")=""
 D KILL^%W1PRM("UPLPICFILE")
 Q 1
 ;
VLCOLOR ;
 W " value="""_$$^%W1DICT("TODEFINECOLORPRESSHERE")_""" "
 Q
 ;
CHANGE ;
 D PUT^%W1PRM("CRULSHCN",1)
 Q
 
 
 
 
 

W4CRVCI
W4CRVCI ; [ 11.09.24 11:36 ] [ 
 N (JB,%ARG)
 S GL=$$^W4GL("W4VCI")
 S LKVC=$G(@$$^WVG@("LKH")) Q:'LKVC
 ;
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  D
 .I $D(@$$^W4ORD@(N,"VC")) D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(N,"VC",N1)) Q:N1=""  D
 ...S CARD=$G(^(N1,"CARD")) Q:'CARD
 ...S BON=$G(^("DISC"))
 ...I BON S @GL@(CARD,N,"DISC")=$G(@GL@(CARD,N,"DISC"))+BON
Q
 
 
 
 
 
 
 
 

W4CSHEMV
W4CSHEMV ; [ 27.07.25 09:49 ] [ 13.05.25 09:38 ] [ 27.04.25 17:09 ] 
 N (JB,%ARG,OUT,RES,HZM,BCKURL,SUM,DELKC)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D ^%W1ARG
 ;
 I $G(%ARG("PRMCSH"))="KCCD"!($G(%ARG("PRMCSH"))="KCQR") S RES=$$REQSTAT G END
 ;
 D KILL^%W1PRM("KCER")
 ;
 I '$G(HZM) D ER($$MYER_"*NOTORDER") G END
 I '$G(SUM) D ER($$MYER_"*NOSUM") G END
 I $G(SUM)<0 D ER($$MYER_"*WRONGSUM") G END
 ;
 I $$DEL,$G(TRID)="" D ER($$MYER_"*NOTRID") G END
 ;
 ;;S ^AA("W4CSHEMV")=1
 S RES=$$GETTOKEN
 ;;S ^AA("W4CSHEMV")=2
 ;
 I RES D ER(RES_"*ERROR") G END
 ;
 S RES=$$REQUEST
 I RES D ER(RES) G END
 ;
 D PUT^%W1PRM("KCER",RES)
 ;
END Q
 ;
 ;
GETTOKEN(STAM) ;
 N A,ST,FLIN,FLOUT,DV,H1,H2,ER
 D GETPRM("kctkn")
 S ER=-1
 ;
 O FLIN:(REWIND:WRITE) U FLIN
  W "{",!
   W """userName"":"""_USRNAME_""",",!
   W """password"":"""_PSW_""",",!
   W """businessId"":"""_BSNID_""",",!
   W """posVendorId"":"""_VNDID_""" ",! ;;,",!
   ;;W """version:"":"""_VER_"""",!
  W "}",!  
 C FLIN
 ;
 S CMD="curl "_$$CURL("login")_" -d@"_FLIN_" > "_FLOUT
 ZSY CMD
 ;
 D PROT("CMDTOKEN")
 I $ZSY Q -$ZSY
 ;
 O FLOUT:(REWIND:READONLY)
 U FLOUT R A Q:$ZEOF  I A["token" D
 .N TOKEN S TOKEN=$P(A,"""token"":",2)
 .I $E(TOKEN)="""" S TOKEN=$P(TOKEN,"""",2)
 .Q:TOKEN=""
 .S @$$GLCSH@("TOKEN")=TOKEN
 .N SH S SH=$O(@GLCSHPR@(99999),-1)+1
 .S @GLCSHPR@(SH,"CMDTOKEN","HTTP")=$P(A,"}",2)
 .D PUT^%W1PRM("KCTOKEN",TOKEN)
 .S ER=0
 C FLOUT
 Q ER
 ;
 ;
REQUEST() ;
 N CMD,DV,EXID,FLIN,FLOUT,ST,ER,H2,SHST
 S DV=$$^W4MYDVN
 N H2 S H2=$P($H,",",2)
 S EXID=JB_"_"_DV_"_"_H2_"_"_HZM
 S SHST=0
REQBG S ER=0
 ;
 I '$$DEL D
 .D GETPRM("kcreq")
 .S CMD=$$CURL("request/create")
 ;
 I $$DEL D
 .D GETPRM("kcdel")
 .S CMD=$$CURL("transactions/refund")
 ;
 S ST="-d '{"
 S ST=ST_"""businessId"":"""_BSNID_""","
 S ST=ST_"""posId"": """_$$POSID_""","
 S ST=ST_"""genericParams"": """_HZM_""","
 I $G(BCKURL)'="" S ST=ST_"""callbackUrl"": """_BCKURL_""","
 I $$DEL S ST=ST_"""transactionId"": """_TRID_""","
 S ST=ST_"""amount"": "_$J(SUM,2,2)_","
 S ST=ST_"""externalId"": """_EXID_""""
 S ST=ST_"}'"
 ;
 D DOCMD(CMD,ST,FLIN,FLOUT)
 ;;S ^AA("W4CSHEMV")=3
 ;
 D PROT("REQ")
 I $ZSY Q -$ZSY_"*ERROR"
 ;
 ;;S ^AA("W4CSHEMV")=4
 ;;S ^AA("W4CSHEMV","FLOUT")=FLOUT
 ;
 D READANS("ANS") ; --> STR
 ;
 ;;S ^AA("W4CSHEMV")=5
 ;;S ^AA("W4CSHEMV","STR255")=$E($G(STR),255)
 ;
 I $G(STR)="" S ER=-28 G ENDREQ
 I STR?3N.N S ER=STR_"*ERROR" G ENDREQ
 ;;S ^AA("W4CSHEMV")=6
 ;
 S STR0=STR
 ;
 I $$DEL D  G @LAB
 .S EXID=$$GET(STR,"externalId")
 .S STAT=$$GET(STR,"transactionStatus")
 .
 .I STAT=7,SHST<10 S SHST=SHST+1 H 3 S LAB="REQBG" Q
 .;
 .I STAT=7 D ER($$MYER_"*REQUESTINPROGRESS") S LAB="ENDREQ" Q
 .;
 .S SUM=$$GET(STR,"amount")
 .I 'SUM D ER($$MYER_"*NOSUM2PAY") S LAB="ENDREQ" Q
 .;
 .I STAT'=0 D
 ..N IND S IND=$O(@$$^W4ORD@(HZM,"KCER",9999),-1)+1
 ..S @$$^W4ORD@(HZM,"KCER",IND,"EXID")=EXID
 ..S @$$^W4ORD@(HZM,"KCER",IND,"TRID")=TRID
 ..S @$$^W4ORD@(HZM,"KCER",IND,"SUM")=-SUM
 ..S @$$^W4ORD@(HZM,"KCER",IND,"STAT")=STAT
 .;
 .I STAT=2 D ER($$MYER_"*ORDCNCBYMERCH") S LAB="ENDREQ" Q
 .I STAT=3 D ER($$MYER_"*ORDCNCBYBUYER") S LAB="ENDREQ" Q
 .
 .I STAT=0 D  S LAB="ENDREQ"
 ..D SETPAYM(HZM,-SUM,TRID)
 ..S ER=0 D ER(ER)
 ;
 N TRID
 S TRID=$$GET(STR,"transactionId")
 I $L(TRID)<10 D ER($$MYER_"*WRONGTRID") G ENDREQ
 ;
 D PUT^%W1PRM("KCTRID",TRID)
 ;
 ;;S ^AA("W4CSHEMV")=7
 ;
 I $$EMVARM^W4PAYKB D  G ENDREQ ; -- SHEILTA SHEL 5-NUMBER CODE
 .S ST="-d '{"
 .S ST=ST_"""businessId"":"""_BSNID_""","
 .S ST=ST_"""transactionId"":"""_TRID_""""
 .S ST=ST_"}'"
 .
 .D GETPRM("kccd"); --> FLIN,FLOUT,PARAMETRES
 .S CMD=$$CURL("transactions/generate/code")
 .D DOCMD(CMD,ST,FLIN,FLOUT)
 .
 .;;S ^AA("W4CSHEMV")=8
 .
 .D PROT("REQCD")
 .S STR=""
 .D READANS("ANSCD")
 .
 .;;S ^AA("W4CSHEMV")=9
 .I $G(STR)?3N D ER(STR_"*ERROR") Q
 .
 .I $G(STR)?5N.N D  Q
 ..D PUT^%W1PRM("KCCD",$E(STR,1,5))
 ..S ER="KCCD*"_$E(STR,1,5)
 .
 .D ER($$MYER_"*NOKCCD")
 ;
 ;---------------------- SHEILTA QR-CODE ---------------------
 ;
 S LINK=$$GET(STR,"qrCodeAsString")
 S PARAM=$$^W4DZ_"_"_DV_"_"_H2_"_"_HZM_";"_LINK
 D ^W4EMVN("DISPQR",PARAM,HZM)
 S ER=+$$GETP^%W1PRM("EMVNER")
 I ER D ER(ER) G ENDREQ
 D ER("KCQR") S ER="KCQR"
 ;
ENDREQ Q ER
 ;
 ;
CURL(PRM) ;
 N ST
 I $E(URL,$L(URL))'="/" S URL=URL_"/"
 S ST=URL_"api/external/v"_VER_"/"_PRM
 S ST=ST_" -X POST -s -m 90 -w '%{http_code}' "
 ;
 I PRM'="login" D
 .N TOKEN S TOKEN=$$GETP^%W1PRM("KCTOKEN")
 .I TOKEN="" S TOKEN=$G(@$$GLCSH@("TOKEN"))
 .S ST=ST_" -H 'Authorization: Bearer "_TOKEN_"'"
 ;
 S ST=ST_" -H 'Content-Type:application/json'  "
 Q ST
 ;
 ;
GLCSH()
 Q $$^W4GL("W4CSHEMV")
 ;
GLCSHPR ;
 S GLCSHPR=$$GLCSH_"(""PROT"","_$$^W4DZ_")"
 Q
 ;
GETPRM(PREF) ;--> FLIN,FLOUT,USRNAME,PSW,BSNID,VNDID,URL,VER
 N DV,HZM,H1,H2
 S DV=$$^W4MYDVN
 S HZM=+$$GETP^%W1PRM("HZM")
 S H1=$P($H,",",1)
 S H2=$P($H,",",2)
 S FLIN="/tmp/"_PREF_H1_"_"_DV_"_"_JB_"_"_HZM
 S FLOUT=FLIN_".out"
 N I F I="USRNAME","PSW","BSNID","VNDID","URL","VER" D
 .S @I=$G(@$$^W4PRM@("KSHCSH",I))
 I URL?.P S URL="https://prod-api.safecashapps.com/"
 Q
 ;
ER(ER) ; 
 D PUT^%W1PRM("KCER",ER)
 D GLCSHPR
 N SH S SH=$O(@GLCSHPR@(99999),-1)+1
 S @GLCSHPR@(SH,"ER")=ER
 Q
 ;
POSID(STAM) ;
 Q $$^W4MYDVN
 ;
 ;
DOCMD(CMD,ST,FLIN,FLOUT,NOWAIT)
 S CMD="curl "_CMD_" "_ST
 I '$G(NOWAIT) S CMD=CMD_" > "_FLOUT
 O FLIN:(REWIND:NEWVERSION:WRITE)
 U FLIN W CMD C FLIN
 ;
 ZSY "sh "_FLIN
 Q
 ;
 ;
READANS(PRM) ; --> STR
 I '$$EXIST^%L1ZOS(FLOUT) Q
 ;
 D GLCSHPR
 N SH S SH=$O(@GLCSHPR@(99999),-1)+1
 ;
 O FLOUT:(REWIND:READONLY)
 N J,B,A S J=0,B="",STR=""
 F  U FLOUT R A Q:$ZEOF  D
 .S STR=STR_A
 ;
 S @GLCSHPR@(SH,PRM,1)=$P(STR,"\n"); ***
 ;
 C FLOUT
 ;
 I $G(STR)?3N D
 .D GLCSHPR
 .N SH S SH=$O(@GLCSHPR@(99999),-1)+1
 .S @GLCSHPR@(SH,"HTTP")=STR
 Q
 ;
 ;
GET(STR,RKV) ;
 N VL
 I $E(RKV)'="""" S RKV=""""_RKV_""""
 S VL=$$SPA^%L1FRM($P(STR,RKV_":",2))
 S VL=$P(VL,"}")
 S VL=$P(VL,",")
 I $E(VL)="""" S VL=$P(VL,"""",2)
 S VL=$$SPA^%L1FRM(VL)
 Q VL
 ;
PROT(PRM) ;
 D GLCSHPR
 N SH S SH=$O(@GLCSHPR@(99999),-1)+1
 S @GLCSHPR@(SH,PRM)=CMD
 S @GLCSHPR@(SH,PRM,"FLIN")=FLIN
 S @GLCSHPR@(SH,PRM,"ZSY")=$ZSY
 Q
 ;
 ;
REQSTAT() ;
 N TRID,CMD,ER,SHST,STAT,SUM,EXID
 S ER=0,SHST=0
 S TRID=$$GET^%W1PRM("KCTRID")
 I $L(TRID)<10 S ER=$$MYER_"*NOKCTRID" G ENDREQSTAT
 ;
REQSTATBG ;
 D GETPRM("kcst"); --> FLIN,FLOUT,PARAMETRES
 ;
 S ST="-d '{"
 S ST=ST_"""businessId"":"""_BSNID_""","
 S ST=ST_"""transactionId"":"""_TRID_""""
 S ST=ST_"}'"
 ;
 S CMD=$$CURL("request/StatusForPOSByTransactionId")
 D DOCMD(CMD,ST,FLIN,FLOUT)
 ;
 D PROT("REQST")
 S STR=""
 ;
 D READANS("ANSST")
 ;
 S EXID=$$GET(STR,"externalId")
 S STAT=$$GET(STR,"transactionStatus")
 ;;I STAT=7 S STAT=1 ; *** 21/04/25
 ;
 I STAT=7,SHST<20 S SHST=SHST+1 H 3 G REQSTATBG
 ;
 I STAT=7 D ER($$MYER_"*REQUESTINPROGRESS") G ENDREQSTAT
 ;
 S SUM=$$GET(STR,"amount")
 I 'SUM D ER($$MYER_"*NOSUM2PAY") G ENDREQSTAT
 ;
 I STAT,STAT'=1 D
 .N IND S IND=$O(@$$^W4ORD@(HZM,"KCER",9999),-1)+1
 .S @$$^W4ORD@(HZM,"KCER",IND,"EXID")=EXID
 .S @$$^W4ORD@(HZM,"KCER",IND,"TRID")=TRID
 .S @$$^W4ORD@(HZM,"KCER",IND,"SUM")=SUM
 .S @$$^W4ORD@(HZM,"KCER",IND,"STAT")=STAT
 ;
 I STAT=2 D ER($$MYER_"*ORDCNCBYMERCH") G ENDREQSTAT
 I STAT=3 D ER($$MYER_"*ORDCNCBYBUYER") G ENDREQSTAT
 ;
 I STAT=1 D
 .D SETPAYM(HZM,SUM,TRID)
 .D FIN(TRID,SUM)
 .S ER=0 D ER(ER)
 ;
 K OUT
 ;
ENDREQSTAT ;
 I '$$DEL,'$$EMVARM^W4PAYKB D RESTQR
 ;
 Q ER
 ;
 ;
SETPAYM(HZM,SUM,TRID)
 N GLORD S GLORD=$$^W4ORD_"("_HZM_")"
 N IND S IND=$O(@GLORD@("CB","CH",999),-1)+1
 ;
 S @$$^W4ORD@(HZM,"KC",IND,"EXID")=EXID
 S @$$^W4ORD@(HZM,"KC",IND,"TRID")=TRID
 S @$$^W4ORD@(HZM,"KC",IND,"SUM")=SUM
 ;
 D  ;;I '$D(DELKC) D
 .S @GLORD@("CB","CH",IND)=SUM_"*B*KC"
 .D SETPOS^W4HZMST(HZM,"CH",IND)
 .S $P(@$$^W4ORD@(HZM,"CB"),"\",3)=$P($G(@$$^W4ORD@(HZM,"CB")),"\",3)+SUM
 .D ^W4T(HZM,1)
 ;
 Q
 ;
 ;
FIN(TRID,SUM)
 D GETPRM("kcfin"); --> FLIN,FLOUT,PARAMETRES
 ;
 S ST="-d '{"
 S ST=ST_"""businessId"":"""_BSNID_""","
 S ST=ST_"""transactionId"":"""_TRID_""","
 S ST=ST_"""amount"":"_$J(SUM,2,2)
 S ST=ST_"}'"
 ;
 S CMD=$$CURL("request/finalize-payment")
 N NOWAIT S NOWAIT=1
 D DOCMD(CMD,ST,FLIN,FLOUT,NOWAIT)
 ;
 D PROT("SNDFIN")
 Q
 ;
 ;
DEL() ; 
 Q $G(%ARG("DEL"))
 ;
MYER() ;
 Q 998
 ;
RESTQR ;
 N PARAM
 I '$G(HZM) S HZM=+$$GETP^%W1PRM("HZM")
 S PARAM=$$^W4DZ_"_"_$$^W4MYDVN_"_"_$P($H,",",2)_"_"_HZM
 D ^W4EMVN("RESTQR",PARAM,HZM)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CSHGET
W4CSHGET ; [ 16.04.25 05:12 ] [ 
 Q

W4CSHLV1
W4CSHLV1 ; [ 16.01.26 22:25 ] [ 15.01.26 10:57 ] [ 14.01.26 16:25 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S WORD="CASHLEVELS"
 D ^%W1HD(WORD)
 ;
 W "<br>",!
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""overflow-y:hidden"" >",!
  D ^W4BCK
  W "<p></p>",!
  W "<select id=""DAT"" onChange=""ChoiceDat()"" style=""font-size:"_$$^W3FSZ(24)_""">",!
   W "<option value=""0"">"_$$^%W1DICT("CHOICEDAT")_"</option>",!  
   F I=0:1:500 D
   .W "<option value="""_($H-I)_""" "
   .I ($H-I)=$G(%ARG("DAT")) W " selected=""selected"" " 
   .W ">&nbsp;&nbsp;"_$ZD($H-I,"DD.MM.YY")_"&nbsp;&nbsp;</option>",!
  W "</select>",! 
  W "<p></p>",!
  ;
  I '$G(%ARG("DAT")) W $$NBSP^%L1FRM(2) G END
  ;
  D TBL
  W "<p></p>",!
    ;
END ;
   D ^W4BCK
  W "</div>",!
  Q
  ;
  ;
SHAA(SEC) ;
 I SEC?10N S SEC=$E(SEC,6,10)
 Q $$T^%L1TIME(SEC)
 ;
SUM(A) ;
 D PRS(A)
 Q (S100*100)+(S50*50)+(S20*20)+(M10*10)+(M05*5)+(M02*2)+M01+(0.5*M050)+(0.1*M010)
 ;
 ;
TBL ;
 W $$^W4DVTBFX("70%")
 ;
 W "<table id=""TblCash"" style=""font-size:"_$$^W3FSZ(16)_""" dir="""_$$^%W1DIR_""" cellspacing=""1"" cellpadding=""10"" border=""1"" >"
  W "<thead class=""hdfix"" >",! 
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>"
    W "<th>"_$$^%W1DICT("TIME")_"</th>"
    W "<th width=""20%"">"_$$^%W1DICT("SUM")_"</th>"
    W "<th>"_$$^%W1DICT("CASHDRAWERLEVEL")_"</th>"
    W "<th>"_$$^%W1DICT("CASHSTACKLEVEL")_"</th>"
    W "<th>"_$$^%W1DICT("CASHPRINCIPAL")_"</th>"
    W "<th>"_$$^%W1DICT("CASHNETTO")_"</th>"
    W "<th>"_$$^%W1DICT("CASHCOMP")_"</th>"
    W "<th>"_$$^%W1DICT("DIF")_"</th>"
   W "</tr>",!
  W "</thead>",!
   ;
   S GL=$$GL
   ;
   S K=0,SUMDT=0
   S DT=$$^%L1DC($G(%ARG("DAT")),3) 
   ;
   S TIM="" F  S TIM=$O(@GL@(DT,TIM),-1) Q:TIM=""  D
   .S A=$G(^(TIM))
   .S K=K+1
   .W "<tr "_$$^W4TOUCH_"=""Click('"_DT_"','"_TIM_"','"_K_"')"" style=""cursor:pointer"">"
   . W "<td id=""td"_K_""">"_$ZD(DT,"DD.MM.YY")_"</td>"
   . W "<td>"_$$T^%L1TIME(TIM)_"</td>"
   . D PRS(A)
   . N SUM S SUM=SUMC+SUMS
   . W "<td style=""color:green;font-size:"_$$^W3FSZ(14)_""">"_$J(SUM,2,2)_"</td>"
   . W "<td>"_$J(STACK,2,2)_"</td>"
   . W "<td>"_$J(DRAWER,2,2)_"</td>"
   . W "<td>"_$J(PRINCIPAL,2,2)_"</td>"
   . W "<td style=""color:brown;font-size:"_$$^W3FSZ(14)_""" >"_$J(SUM-PRINCIPAL,2,2)_"</td>"
   . W "<td style=""color:blue;font-size:"_$$^W3FSZ(14)_""" >"_$S(SUMMZ:$J(SUMMZ,2,2),1:"")_"</td>"
   . N DIF S DIF=$J(SUM-PRINCIPAL-SUMMZ,2,2)
   . I DIF<0 S DIF="<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"_DIF_"</span>"
   . I DIF>0 S DIF="<span style=""font-size:"_$$^W3FSZ(14)_";color:green"">+"_DIF_"</span>"
   . I 'SUMMZ S DIF=""
   . W "<td dir=""LTR"">"_DIF_"</td>"
   .W "</tr>",!
  ; 
 W "</table>",!
 W "</div>",! 
 Q
 ;
 ; 
GL(STAM) ;
 N GL
 S GL=$$^W4GL("W4CSHLVL")
 Q GL
 ;
PRS(A) ; 
 D PRS^%L1FRM(A,$$STR,"\")
 Q 
 ;
STR() 
 Q "SUMC\SUMS\STACK\DRAWER\PRINCIPAL\M010\M050\M01\M02\M05\M10\S20\S50\S100\\P010\P050\P01\P02\P05\P10\P20\P50\P100\SUMMZ"
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CSHLV2
W4CSHLV2 ; [ 17.06.26 10:53 ] [ 15.01.26 00:58 ] [ 14.01.26 17:18 ] 
 N (JB,%ARG,%REM,DT,TIM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 D ^%W1ARG
 I '$G(DT) S DT=+$H
 I '$G(TIM) D
 .S TIM=$O(@$$GL@(DT,""),-1)
 ;
 N A S A=$G(@$$GL@(DT,TIM))
 ;
 D ^W4BCK
 D
  .W "<p></p>",!
  .W "<table style=""font-size:"_$$^W3FSZ(16)_""" width=""35%"" border=""0"" >",!
  . W "<tr>"
  .  W "<td>"_$$^%W1DICT("DATE")_" : "_$$RKV($ZD(DT,"DD.MM.YY"))_"</td>"
  .  S TIME=$$T^%L1TIME(TIM)
  .  W "<td>"_$$^%W1DICT("TIME")_" : "_TIME_"</td>"
  . W "</tr>",! 
  .W "</table>",!
 ;
 D TBL
 ;
BUTSBM ;
 W "<br><br>",!
 D ^W4BTN("CSRPRINT","Print2CSR('"_DT_"','"_TIM_"')","blue")
 W $$NBSP^%L1FRM(7)
 D ^W4BCK
 W "</div>",!
 Q
 ;
 ;
TBL ;
  S TOTAL=0
  W "<table id=""TblCash"" align=""center"" cellspacing=""10"" >"
   ;
   W "<tr>",!
    W "<th></th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("SUM")_"</th>"
    W "<th>"_$$^%W1DICT("FOND")_"</th>"
    W "<th>"_$$^%W1DICT("DIF")_"</th>"
   W "</tr>",!
   ;
   F II=100,50,20 D 
   .W "<tr>"
   . W "<td "_$$STYLE1_">"_$$^%W1DICT("S"_II)_"</td>"
   . W "<td class=""green"">"_$$QN("S"_II)_"</td>"
   . S SUM=$$SUM("S"_II)
   . S TOTAL=TOTAL+SUM
   . W "<td class=""green"">"_SUM_"</td>"
   . W "<td "_$$STYLE1_">"_$$QN("P"_II)_"</td>"
   . W "<td>"_$$DIF("S"_II,"P"_II)_"</td>"
   .W "</tr>",!
   ;
   ;
   F II="10","05","02","01","050","010" D 
   .W "<tr>"
   . W "<td "_$$STYLE1_">"_$$^%W1DICT("M"_II)_"</td>"
   . W "<td class=""green"">"_$$QN("M"_II)_"</td>"
   . S SUM=$$SUM("M"_II)
   . S TOTAL=TOTAL+SUM
   . W "<td class=""green"">"_SUM_"</td>"
   . W "<td "_$$STYLE1_">"_$$QN("P"_II)_"</td>"
   . W "<td>"_$$DIF("M"_II,"P"_II)_"</td>"
   .W "</tr>",!
   ;
   W "<tr style=""font-size:"_$$^W3FSZ(16)_";background-color:yellow;font-weight:bold"">"
    W "<td colspan=""2"">"_$$^%W1DICT("TOTAL")_"</td>"
    W "<td style=""font-size:"_$$^W3FSZ(18)_""">"
     W $J(TOTAL,2,2)
    W "</td>"
   W "</tr>",!
   ;
 W "</table>",!
 Q
 ;
 ;
STYLE1(STAM) ;
 Q " style=""font-size:"_$$^W3FSZ(14)_""" "
 ;
STYLE2(STAM) ;
 Q " style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(16)_""" "
 ;
 ;
RKV(VL,FSZ) ;
 I '$G(FSZ) S FSZ=16
 Q "<span style=""font-size:"_$$^W3FSZ(FSZ)_";color:green"">"_VL_"</span>"
 ;
 ;
QN(VL) ;
 N A S A=$G(@$$GL@(DT,TIM))
 N STR S STR=$$STR^W4CSHLV1
 N OK S OK=0
 N I F I=1:1:$L(STR,"\") I VL=$P(STR,"\",I) S OK=I Q
 I OK Q $P(A,"\",OK)
 Q 0
 ;
SUM(VL) ;
 N QN S QN=$$QN(VL)
 N AL S AL=$E(VL,2,20) I $E(AL)=0,$L(AL)=3 S AL=AL*.01
 Q $J(QN*AL,2,2)
 ;
DIF(INDQN,INDP)
 N QN1,QN2
 S QN1=$$QN(INDQN)
 S QN2=$$QN(INDP)
 N DIF S DIF=QN1-QN2
 I DIF<0 Q "<span dir=""LTR"" style=""color:red;font-size:"_$$^W3FSZ(14)_"""> "_DIF_"</span>" 
 I DIF>0 Q "<span dir=""LTR"" style=""color:green;font-size:"_$$^W3FSZ(14)_"""> +"_DIF_"</span>" 
 Q ""
 ;
PRINT(PRM)
 N (JB,%ARG,PRM)
 D ^%L1TS
 ;;S ^AA("W4CSHLV2-PRINT","PRM")=PRM
 S DT=$P(PRM,"^")
 S TIM=$P(PRM,"^",2)
 ;
 D ^W4MDPPC ; --> PRINT,MDP
 ;
 ;;S ^AA("W4CSHLV2-PRINT","PRINT")=PRINT
 S ST=$G(%MDP("B"))_$TR("nmc nfub, nzuni",TS0,TSS)_$G(%MDP("N"))
 D PCST1(PRINT,ST)
 D PCSP
 ;
 D FMT($ZD(DT,"DD.MM.YY"),"jix`z")
 D FMT($$T^%L1TIME(TIM),"dwtd onf")
 D PCSP
 D PCKAV
 D PCSP
 ;
 S A=$G(@$$GL@(DT,TIM))
 D PRS^W4CSHLV1(A)
 ;
 S SUM=0
 ;;S TX=$J(200*S200,2,2)_" = 200 * "_$J(+S200,3)
 ;;S SUM=SUM+(200*S200)
 ;;D FMT(TX,"g""y 200 zexhy")
 S TX=$J(100*S100,2,2)_" = 100 * "_$J(+S100,3)
 S SUM=SUM+(100*S100)
 D FMT(TX,"g""y 100 zexhy")
 S TX=$J(50*S50,2,2)_" =  50 * "_$J(+S50,3)
 S SUM=SUM+(50*S50)
 D FMT(TX,"g""y 50 zexhy")
 S TX=$J(20*S20,2,2)_" =  20 * "_$J(+S20,3)
 S SUM=SUM+(20*S20)
 D FMT(TX,"g""y 20 zexhy")
 S TX=$J(10*M10,2,2)_" =  10 * "_$J(+M10,3)
 S SUM=SUM+(10*M10)
 D FMT(TX,"g""y 10 zerahn")
 ;
 S TX=$J(5*M05,2,2)_" =   5 * "_$J(+M05,3)
 S SUM=SUM+(5*M05)
 D FMT(TX,"g""y 5 zerahn")
 S TX=$J(2*M02,2,2)_" =   2 * "_$J(+M02,3)
 S SUM=SUM+(2*M02)
 D FMT(TX,"g""y 2 zerahn")
 ;
 S TX=$J(1*M01,2,2)_" =   1 * "_$J(+M01,3)
 S SUM=SUM+M01
 D FMT(TX,"g""y 1 zerahn")
 ;
 S TX=$J(0.5*M050,2,2)_" =   0.5 * "_$J(+M050,3)
 S SUM=SUM+(.5*M050)
 D FMT(TX,"g""y 0.5 zerahn")
 ;
 S TX=$J(0.1*M010,2,2)_" =   0.1 * "_$J(+M010,3)
 S SUM=SUM+(0.1*M010)
 D FMT(TX,"g""y 0.1 zerahn")
 ;
 D PCSP
 D PCKAV
 D FMT($G(%MDP("B"))_$J(SUM,10,2)_$G(%MDP("N")),"k""dq","B")
 D PCSP
 ;
 D CUT
 ;
 Q
 ;
 ; 
FMT(TX1,TX2,PR) ;
 N ST,WD1
 S WD1=$$WD1
 I $G(PR)["B" S WD1=WD1-$L(TX1)
 ;
 I $G(PR)["H" D  Q
 .S ST=$$HBR^%L1FRM($TR(TX1,TS0,TSS),WD1)_" : "_$J(TX2,$$WD2) D PCST
 ;
 S ST=$J(TX1,WD1)_" : "_$J(TX2,$$WD2) D PCST
 Q
 ;
PCSP N ST
 S ST="" D PCST
 Q
 ;
PCKAV ; 
 S ST=$TR($J("",$$WD1+$$WD2+3)," ","-")
 D PCST
 Q
 ;
PCST ;
 S ST=$J("",$$SM)_$TR(ST,TS0,TSS)
 D PCST1(PRINT,ST)
 Q
PCST1(PRINT,ST) ;
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=$E(ST,1,255)
 Q
 ;
CUT ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
WD1(STAM) ;
 Q 20
 ;
WD2(STAM) ;
 Q 15
 ;
SM(STAM) ;
 Q 0
 ;
GL(STAM) ; 
 Q $$GL^W4CSHLV1
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CSHPOS
W4CSHPOS ; [ 07.03.22 17:51 ] [ 01.06.21 11:04 ] [ 13.08.20 06:34 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S CASH0=0
 S SOLD=0
 W "<div dir="""_$$^%W1DIR_""">",!
  S POS=$$MYDVN^W4CASHC
  I $G(%ARG("POS")) S POS=%ARG("POS")
  I '$G(%ARG("SEC")) D COMP(POS) G END
  ;
  I $G(%ARG("SEC")) D
  .N IND S IND=%ARG("SEC")
  .S DTC=$E(IND,1,5)
  .N GL
  .S GL=$$^W4GL("W4CSHPOS")
  .N A S A=$G(@GL@(POS,IND))
  .;
  .S SOLD=$P(A,"\",11)
  .S CASH0=$P(A,"\",12)
  .S HZ1=$P(A,"\",15) 
  .S HZ2=$P(A,"\",16) 
  .D VW(DTC,SOLD,CASH0,HZ1,HZ2)
  ; 
  S %ARG("CASH0")=CASH0
  S %ARG("SOLD")=SOLD
END ; 
 W "</div>",! 
 Q
 ;
 ;
COMP(POS) ;
 N DTC S DTC=$$^W4DZ
 N HZ,HZ1,HZ2 S HZ1=1
 N GL,TIME0
 S GL=$$^W4GL("W4CSHPOS")
 
 S TIME0=$O(@GL@(POS,""),-1)
 ;
 I TIME0="" D
 .S HZ1=$O(@$$^W4REF@(DTC,""))
 .S CASH0=0
 ;
 I TIME0'="" D
 .S CASH0=$P($G(@GL@(POS,TIME0)),"\",17)
 .S HZ1=$P($G(@GL@(POS,TIME0)),"\",16)
 .I HZ1 S HZ1=HZ1+1 Q
 .S HZ1=$O(@$$^W4REF@(DTC,.5))
 ;
 S HZ2=$O(@$$^W4REF@(DTC,""),-1)
 I HZ2<HZ1 S HZ2=HZ1
 ;
 N SMZ S SMZ=0
 F HZ=HZ1:1:HZ2 D
 .S CB=$G(@$$^W4ORD@(HZ,"CB")),MZ=$P(CB,"\",2)
 .S SMZ=SMZ+MZ
 .S CSR=$P(CB,"\",14)
 .S SMZ(+CSR)=$G(SMZ(+CSR))+MZ
 .S SMZ(+CSR,HZ)=MZ
 ;
 S SOLD=$G(SMZ(POS))
 D VW(DTC,SOLD,CASH0,HZ1,HZ2)
 S %ARG("CASH0")=CASH0
 S %ARG("SOLD")=SOLD
 Q
 ;
 ;
VW(DTC,SOLD,CASH0,HZ1,HZ2) ;
  W "<span style=""font-size:"_$$^W3FSZ(18)_""">"
  W $$^%W1DICT("CASHPOSREPORT",$ZD(DTC,"DD.MM.YY"))
 W "</span>",!
 W "<p style=""font-size:"_$$^W3FSZ(12)_""">"_$ZD($H,"DD.MM.YY 24:60")_"</p>"
 W "<br><br>"
 ;
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(14)_""" cellpadding=""10"">",!
  W "<tr>"
   W "<td>"_$$^%W1DICT("FROMORDER")_"</td>"
   W "<td id=""HZ1"" "_$$STYLE_" >"_HZ1_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$^%W1DICT("UNTILORDER")_"</td>"
   W "<td id=""HZ2"" "_$$STYLE_">"_HZ2_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$^%W1DICT("CASHBEFORE")_"</td>"
   W "<td id=""CASH0"" "_$$STYLE_">"_$J(CASH0,2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$^%W1DICT("CASHSOLD")_"</td>"
   W "<td id=""SOLD"" "_$$STYLE_">"_$J(SOLD,2,2)_"</td>"
  W "</tr>",!
  W "<tr>"
   W "<td>"_$$^%W1DICT("CASHTOTAL")_"</td>"
   W "<td id=""CSRTOTAL"" "_$$STYLE2^W4CASHC_" >"_$J(SOLD+CASH0,2,2)_"</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
IND(TM) ;
 Q +TM_$TR($J($P(TM,",",2),5)," ",0)
 ;
STYLE(STAM) ;
 Q " style=""color:green"" "
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CSNM
W4CSNM ; [ 20.03.25 17:44 ] [ 19.12.24 13:15 ] [ 29.11.24 15:23 ] 
W(STAM) ;
 N HZM,NAME,LL,PHONE
 S HZM=$$HZM
 S NAME=$$GET^W4TMPANS("CSNM","CUSTOMNAME")
 I $L(NAME)<2,'$$NOMUST Q "CUSTOMNAMEWRONG"
 I NAME?1N.N Q "CUSTOMNAMEWRONG"
 S @$$^W4TMPORD@("MZMNM")=NAME
 D PUT^W3HZMST(JB,"CMHD",NAME)
 ;
 N OK S OK=1
 I $$QUESMS^W4PRM D
 .S PHONE=$$GET^W4TMPANS("CSNM","PHONE")
 .I PHONE'="",$L(PHONE)<10!($E(PHONE,1,2)'="05") S OK="PELEWRONG"
 .D PUT^W3HZMST(JB,"LKHN",PHONE)
 Q OK
 ;
 ;
INIT ;--- INIT VALUE CUSTNAME
 D CLEAR^W4SCASK
 D PUT^%W1PRM("VP","CSNM")
 D CREATE^W4ASK("CSNM","ASK")
 N HZM S HZM=$$HZM
 N NAME
 D
 .I $D(@$$^W4TMPORD)=11!(HZM<1) S NAME=$$MZMNM^W3HZMST(JB) Q
 .S NAME=$$MZMNM^W4HZMST(HZM)
 ;
 D PUT^W4TMPANS("CSNM","CUSTOMNAME",NAME)
 ;
 I $$QUESMS^W4PRM D
 .N PHONE S PHONE=$$LKHN^W3HZMST(JB)
 .I $L(PHONE)<7 S PHONE=""
 .D PUT^W4TMPANS("CSNM","PHONE",PHONE)
 ;
 D PUT^%W1PRM("NOFUNC",1)
 Q
 ;
 ;
ASK(STAM) ;
 I '$G(@$$^W4PRM@("CSNM")) Q 0
 N HZM S HZM=$$HZM
 I $D(@$$^W4ORD@(HZM,"CSNM","PC")) Q 0
 Q 1
 ;
ISMZMN(STAM)
 N CMHD,OK S OK=1 S CMHD=$$CMHD^W3HZMST(JB)
 S:$TR(CMHD," ","")="" CMHD=$$LKHN1^W3HZMST(JB)
 I '$L($TR($G(@$$^W4TMPORD@("MZMNM"))," ","")),$TR(CMHD," ","")'?1N.N D
 .S @$$^W4TMPORD@("MZMNM")=CMHD
 I $TR($G(@$$^W4TMPORD@("MZMNM"))," ","")="" S OK=0
 Q OK
 ;
HZM(STAM) ;
 Q $$GETP^%W1PRM("HZM")
 ;
NOMUST(STAM) ;
 I $G(@$$^W4PRM@("CUSTNOMUST")) Q 1
 Q 0
 ;
VLDNAME ;
 S VL=$$SPA^%L1FRM(VL) 
 I VL?.P!($L(VL)<2) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FILLNAME"
 Q
 ;
VLDPELE ;
 S VL=$$SPA^%L1FRM(VL) 
 S VL=$TR(VL,"-","")
 I VL="" Q
 I VL'?10N!($E(VL,1,2)'="05") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="PELEWRONG"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CSRPRM
W4CSRPRM ; [ 29.12.21 07:20 ] [ 27.03.13 11:41 ] [ 21.04.12 10:08 ] 
GET ;
 D SC("W4CSRPRM")
 Q
 ;
SC(%SCRN) ;
 N PRM,A,I
 F I="DOCCSR","LKHDFLT" D
 .S @I=$G(@$$GLPRM@(I))
 ;;I +LKHDFLT=0 S LKHDFLT=9999
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4CSRPRM-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F I="DOCCSR","LKHDFLT" D
 .S @$$GLPRM@(I)=$G(@I)
 ;
 Q 1
 ;
 ;
GLPRM(STAM) ;
 Q $$^W4GL("W3PRM")_"(""LKHCSR"")"
 

W4CSRREP
W4CSRREP ; [ 20.05.20 17:21 ] [ 27.03.18 15:19 ] [ 13.07.17 17:13 ] 
 Q
 ;
DOP(PRM) ;
 N (JB,%ARG,PRM)
 I PRM="MNY" W "" Q
 I PRM="MLZ" W "" Q
 ;
 S %ARG("CODREP")=PRM
 ;
 I PRM="MLZ1"!(PRM="MSH1")!(PRM="MSHD1") D  W ST Q
 .D CREATE^W4TELREP
 .S ST="<select id=""dop"">"
 .S CHOICE="CHOICECOURIER"
 .I PRM["MLZ" S CHOICE="CHOICEWAITER"
 .S ST=ST_"<option value=""0"">"_$$^%W1DICT(CHOICE)_"</option>"
 .S TMP=$$^W4MAIN("TMPMLZ")
 .S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 ..S VL=$$H2U^%L1FRM($G(^(N)))
 ..S IND=$$SPA^%L1FRM($P(N,"_",2))
 ..S ST=ST_"<option value="""_IND_""">"_VL_"</option>"
 .S ST=ST_"</select>"
 ; 
 I PRM="TBL" D  W ST Q
 .S %ARG("CODREP")=PRM
 .S ST="<input type=""text"" size=""3"" maxlength=""3"" id=""dop"" >"
 ; 
 I PRM="POS" D  W ST Q
 .S ST="<select id=""dop"">"
 .S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 ..S VL=N_" "_$$H2U^%L1FRM($G(^(N)))
 ..S IND=N
 ..S ST=ST_"<option value="""_IND_""">"_VL_"</option>"
 .S ST=ST_"</select>"
 ; 
 I PRM="ULM" D  W ST Q
 .D CRTMPATAR^W4SCASK
 .S TMP=$$^W4MAIN("TMPATAR")
 .S ST="<select id=""dop"">"
 .S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 ..S VL=$G(^(N))
 ..S IND=N
 ..S ST=ST_"<option value="""_IND_""">"_VL_"</option>"
 .S ST=ST_"</select>"
 ; 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CSS
W4CSS ; [ 11.02.26 17:02 ] [ 30.12.25 05:27 ] [ 29.12.25 10:47 ] 
 N FONTFM S FONTFM=$$FONTFM^W4CSS1
 N BGHD S BGHD=$$BGHD^W3CSS($$COLOR^W3CSS)
 N FRHD S FRHD=$$FRHD^W3CSS($$COLOR^W3CSS)
 ;
 W "<style>",!
 D ^W4CSS1
 ;
 W ".noselect {",!
 W " user-select: none; /* Non-prefixed version, currently",!
 W " supported by Chrome and Opera */",!
 W "}",!!
 ;
 W "}",!!
 W !
 W !
 W " .divsheet {",!
 W "    margin:0;",!
 W "    padding:0;",!
 W "    top:0px;",!
 W "    left:0px;",!
 W "    width:100%;",!
 W "    height:100%;",!
 W "   background-color:white;",!
  ;;W $$GRAD1^W3CSM("#FFFFFF","#A1A1A1")_";",!
 W "    "_$$RAD_";",!
 W "    border:"_$$^W4KF(2)_"px white ridge",!
 W "}",!
 W !
 W " .tdsheet {",!
 W "   background-color:white;",!
 W "    "_$$RAD_";"
  I $D(%ARG("GRAD")) W $$GRAD1^W3CSM($P(%ARG("GRAD"),"<>"),$P(%ARG("GRAD"),"<>",2))
 W "    border:"_$$^W4KF(3)_"px white ridge",!
 I $$GETP^%W1PRM("SHOWRCPT") D
 . W ";position:relative",!
 W "}",!
 ;
 W ".right-corner-image {",!
  W "position:absolute;",!
  W "top:0;",!
  W "right:0;",!
  W "width:20px;",!
  W "height:20px",!
 W "}",! 
 ;
 W ".tblbut {",!
 W " font-size:"_$$^W3FSZ(14)_";"
 W "}",!
 ;
 W ".tblbut tr {",!
 W "height:"_$$^W4KF(60)_"px;",!
 W "}",!
 ;
 W ".tblbut td {",!
 W " text-align:center;"
 W " border: ridge "_$$^W4KF(3)_"px white ;",!
 W $$RAD^W3CSM
 W "}",!
 ;
 W " .tdgroup {",!
 W "   background-color:#990000;",!
 W "    "_$$RAD_";"
 W "    border:"_$$^W4KF(2)_"px #990000 ridge",!
 W "}",!
 W !
 W " th {",!
 W "     background-color:"_BGHD,";",!
 W "     color:"_FRHD,";",!
 W "    }",!
 W !
 W " .sheetbody {",!
 W "    text-align:center;",!
 W "    color:black;",!
 W FONTFM,";",!
 D
 .N SZMLZ S SZMLZ=$G(@$$^W4PRM@("SZMLZ"))
 .I SZMLZ<12 S SZMLZ=$S($$1700^W4WDSCR:14,1:12)
 .S SZMLZ=SZMLZ-$$SMALL^W3FSZ
 .W "    font-size:"_$$^W3FSZ(SZMLZ)_";",!
 ;
 W "    font-weight:bold;",!
 W "        }  ",!
 W !
 W " .sheetgroups {",!
 ;;W "    background-color:"_$$GRBG_";",!
 W "    color:"_$$GRFG_";",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(12+$$1700^W4WDSCR)_";",!
 W "    font-weight:600;",!
 W "    "_$$RAD_";"
 W "        }  ",!
 W !
 W " .sheetfunctions {",!
 W "    background-color:yellow;",! ;;_$$FNBG_";",!
 W "    color:"_$$FNFG_";",!
 W "    text-align:center;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(12)_";",!
 W "    font-weight:600;",!
 W "    padding:5;",!
 W $$RAD_";",!
 W " border: "_$$^W4KF(3)_"px ridge white;",!
 W "        }  ",!
 W !
 W " .sheetexit {",!
 W "    background-color:red;",!
 W "    color:white;",!
 W "    text-align:center;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ($S($$1024^W4WDSCR:12,1:14))_";",!
 W "    font-weight:600;",!
 W "    cursor:pointer;",!
 W "    "_$$RAD_";",!
 W "    border:"_$$^W4KF(3)_"px white ridge",! 
 W "        }  ",!
 W !
 ;
 W " .digit {",!
 D NOSEL^W4CSS1
 W "    background-color:#eaeaea;",!
  W $$RAD^W3CSM(6)_";",!
 W "    border:2px lightgrey ridge;"
 W "    color:black;",!
 W "    text-align:center;",!
 W FONTFM,";",!
 N DGFSZ S DGFSZ=16 I $$1024^W4WDSCR S DGFSZ=14
 I $$1700^W4WDSCR S DGFSZ=18
 N FSZ S FSZ=$$^W3FSZ(DGFSZ+$S($$SMALL^W3FSZ:36,$$^W4TABLET=1:-3,$$^W4TABLET=2:+5,1:0)) ; -- +5
 I $$LINUX^W4POSPRM S FSZ=FSZ-1
 W "    font-size:"_FSZ_"pt;",!
 W "    font-weight:bold;",!
 W "    cursor:pointer;",!
 D
 .I $$^W4TABLET=2 W " padding:18;",! Q
 .I $$^W4TABLET=1 W " padding:2;",! Q
 .I $$1700^W4WDSCR W " padding:8;",! Q
 .I $$1024^W4WDSCR W " padding:3;",! Q
 W "        }  ",!
 W !
 W " .btntb {",!
 W "    background-color:#eaeaea;",!
 W "    color:black;",!
 W "    text-align:center;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(14)_";",!
 W "    font-weight:600;",!
 W "    cursor:pointer;",!
 W "        }  ",!
 W !
 W " .cmnt {",!
 W "    background-color:#eaeaea;",!
 W "    color:black;",!
 W "    text-align:center;",!
 W FONTFM,";",!
 W "    cursor:pointer;"
 W "    font-size:"_$$^W3FSZ(14)_";",!
 W "        }  ",!
 W !
 W " .psw {",!
 W "    width:100%;"
 W "    color:black;",!
 W "    text-align:center;",!
 W "    font-size:"_$$^W3FSZ($$PSWSZ)_";",!
 W "    font-weight:600;",!
 W "        }  ",!
 W !
 W " .pswsbm {",!
 W "    width:100%;",!
 W "    height:"_$$^W4KF($S($$^W4TABLET=2:80,1:55))_"px;",!
 W "    text-align:center;",!
 W "    color:green;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ($$PSWSZ)_";",!
 W "        }  ",!
 W !
 W " .pswhd {",!
 W "    text-align:center;",!
 W "    color:red;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(18)_";",!
 W "        }  ",!
 W !
 W " .rkv {",!
 W "    width:100%;"
 W "    color:black;",!
 W "    text-align:center;",!
 W "    font-size:"_$$^W3FSZ($$PSWSZ)_";",!
 W "    font-weight:600;",!
 W "        }  ",!
 W !
 W " .rkvsbm {",!
 W "    width:99%;",!
 W "    height:"_$$^W4KF($S($$^W4SMALL:30,1:40))_"px;",!
 W "    text-align:center;",!
 W "    color:green;",!
 W FONTFM,";",!
 W "    background-color:#eaeaea;",!
 W "    font-size:"_$$^W3FSZ($$PSWSZ)_";",!
 W "        }  ",!
 W !
 W " .rkvhd {",!
 W "    text-align:center;",!
 W "    color:red;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(20)_";",!
 W "        }  ",!
 W !
 W " .cellhd {",!
 D NOSEL^W4CSS1
 W "    color:"_$$BGCOLOR_";",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ($S($$1024^W4WDSCR:11,1:12))_";",!
 W "    text-align:center;",!
 W "    font-weight:600;",!
 W "        }  ",!
 W !
 W " .celldata {",!
 W "    color:green;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(10)_";",!
 W "    text-align:center;",!
 W "    font-weight:600;",!
 W "        }  ",!
 W !
 W " .cur {",!
 ;;W "    color:red;",!
 ;W "   text-decoration:underline;",!
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(12)_";",!
 W "    text-align:center;",!
 W "    font-weight:600;",!
 W "    border:"_$$^W4KF(2)_"px brown solid;",!
 W "        }  ",!
 W !
 ;
 W " .busy {",!
 W "   font-size:"_$$^W3FSZ(10)
 W "       }",!
 W !
 ;
 W " .hdordrkv {",!
 D
 .W "   font-size:"_$$^W3FSZ(12)_";",!
 .W "   font-weight:bold;",!
 .W FONTFM_";",!
 .D
 ..N CLRCSR S CLRCSR=$$CLRCSR^W4BGBODY
 ..I CLRCSR?1U.E D  Q
 ...N BG,FG
 ...S BG=$$HDORDRKVBG^W4BGBODY
 ...I BG'="" W "   background-color:"_BG_";",!
 ...S FG=$$HDORDRKVFG^W4BGBODY
 ...I FG'="" W "   color:"_FG_";",!
 ..
 ..I '$$CCWEBR^W4PRM,'$$MMCC^W4PRM W "   background-color:"_$$FNFG_";",!
 ..W "   color:white;",!
 ;
 I $$SFC^W3CSS,$$DLVWEB^W4DLVCSR D
 .W "   color:red;",!
 W "        }",!
 W !
 ;
 W " .hdord {",!
 I '$$SFC^W3CSS D
 .W "   font-size:"_$$^W3FSZ(12)_";",!
 .W "   font-weight:bold;",!
 .W FONTFM_";",!
 .
 .I '$G(%ARG("ZAG")),'$$CCWEBR^W4PRM,'$$MMCC^W4PRM D
 ..W $$HDORDBG^W4BGBODY_";",!
 ..W "color:"_$$HDORDFG^W4BGBODY_";",!
 . 
 .I $G(%ARG("ZAG")) D
 ..W "background-color:"_$G(@$$^W4PRM@("ZAG","BTBG"))_";",!
 ..W "color:"_$G(@$$^W4PRM@("ZAG","BTFG"))_";",!
 W "        }",!
 W !
 ;
 D HDAIQN^W3CSS
 ;
 W " .hdvw { ",!
 W "            background-color:"_BGHD_";",!
 W "            color:"_FRHD_";",!
 W FONTFM,";",!
 W "            font-size:"_$$^W3FSZ(20)_";",!
 W "            text-align:center",!
 W !
 W "         } ",!
 W !
 W !
 W ".btn {",!
 W FONTFM,";",!
 W "    padding:"_$S($$1024^W4WDSCR:4,$$1700^W4WDSCR:9,1:7)_";",! 
 W "    font-size:"_$$^W3FSZ(14)_";",!
 W "    height:"_$S($$SMALL^W3FSZ:100,1:$$^W4KF(40))_"px",!
 W "}",!
 W !
 W ".btnfn {",!
 W "    "_FONTFM,";",!
 W "    background-color:"_$$FNBG_";",!
 W "    text-align:center;",!
 W "    color:"_$$FNFG_";",!
 W "    font-size:"_$$^W3FSZ(12)_";",!
 W "    font-weight:bold;",!
 W "    width:"_$$^W4KF(90)_"px;",!
 W "    height:"_$$^W4KF(50)_"px;",!
 W "    cursor:pointer;",!
 W "    border:solid "_$$^W4KF(2)_"px "_$$FNFG_";"
  W $$RAD^W3CSM_";",!
 W "}",!
 W !
 W ".border {",!
 W "    "_FONTFM,";",!
 W "    font-size:"_$$^W3FSZ(14)_";",!
 W "    border:solid "_$$^W4KF(2)_"px "_$$BGCOLOR,!
 W "        }",!
 W !
 W ".vw0 {",!
 W " background-color:white;",!
 W "}",!
 W ".vwmin1 {",!
 W " background-color:#ffe8e8;",! ;-- light-pink
 W "}",!
 W ".vwmin2 {",!
 W " background-color:#c0d2ec;",! ;-- light-blue
 W "}",!
 W ".vwmin {",!
 W " color:red;",!
 W " background-color:#ffe8e8;",!
 W "}",!
 W ".vwc {",!
 W " background-color:yellow;",!
 W "}",!
 ;
 D BODY^W3CSS($$COLOR^W3CSS); --- BODY COLOR -- !!
 ;
 W ".vwd {",!
 W " background-color:#fafad2;",!
 W "}",!
 W !
 W ".disc {",!
 W "    "_FONTFM,";",!
 W " color:red;",!
 W " text-align:center;",!
 W "}",!
 W "</style>",!
 Q
GRCURFG(STAM) ;
 Q $$BGCOLOR
GRCURBG(STAM)
 Q "yellow"
GRFG(STAM) ;
 Q "yellow"
GRBG(STAM)
 Q $$BGCOLOR
FNCURFG(STAM) ;
 Q "yellow"
FNCURBG(STAM)
 Q $$BGCOLOR
 ;
FNFG(STAM) ;
 Q $$BGCOLOR
 ;
FNBG(STAM)
 ;;I $$DLVWEB^W4DLVCSR,$$COLOR^W3CSS'="DRW" Q $$FG^W3CSS($$COLOR^W3CSS)
 Q "yellow"
BGCOLOR(STAM)
 ;;I $$DLVWEB^W4DLVCSR,$$COLOR^W3CSS'="DRW" Q $$BGHDORD^W3CSS($$COLOR^W3CSS)
 Q "#990000" ; "brown"
 ;
COLORADD(LV) ;
 Q $S(LV=1:"green",LV=2:"#ff6a00",1:"orange")
 ;
RAD(STAM) ;
 Q $$RAD^W3CSM
 ;
PSWSZ(STAM) ; 
 I $$^W4TABLET=2 Q 22
 I $$^W4TABLET=1 Q 22
 I $$^W4SMALL Q 20
 Q 24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CSS1
W4CSS1 ; [ 09.09.26 10:56 ] [ 11.02.26 17:02 ] [ 18.01.26 09:17 ] 
 S FONTFM=$$FONTFM
 ;
 W " .sheetheader {",!
 W "    background-color:yellow;",!
 W "    text-align:center;",!
 W "    font-weight:500;",!
 W "    color:brown;",! ; red
 W FONTFM,";",!
 W "    font-size:"_$$^W3FSZ($S($$SMALL^W3FSZ:12,1:14)),!
 W "        }  ",!
 W !
 ;
 W "dialog {",!
  W $$GRAD1^W3CSM("#eaeaea","#ffffff")_";",!
  W $$RAD^W3CSM("6px")_";",!
 W "}",!!
 ;
 W "td {",!
 W " font-size:"_$$^W3FSZ(11),! 
 W "}",!
 ;
 W " select {",!
 W "    "_FONTFM_";",!
 W "    font-size:"_$$^W3FSZ(11),!
 W "       }",!
 W !
 W " span {",!
 W "    "_FONTFM_";",!
 W "    font-size:"_$$^W3FSZ(11),!
 W "       }",!
 W !
 W " textarea {",!
 W "    "_FONTFM_";",!
 W "    font-size:"_$$^W3FSZ(9),!
 W "       }",!
 W !
 ;
 W "input {",!
  W $$RAD^W3CSM(6)_";",!
  W ";border:grey 1px solid",!
 W "}",!
 W !
 ;
 W "img {",!
  W $$RAD^W3CSM(6)_";",!
 W "}",!
 ;
 W !
 W "input[type=text] {",!
  W $$RAD^W3CSM(4)_";",!
  I $$^W4TABLET=2 W ";padding:0;"
  W "    "_FONTFM_";",!
  W ";border:grey 1px solid",!
 W "}",!!
 ;
 W "input[type=button] {",!
  W "    "_FONTFM_";",!
  I $$^W4TABLET=2 D
  .W "  font-size:"_$$^W3FSZ(14)_";",!
  .W "height:70px;",!
  W " padding:4px 10px;",!
 W "}",!!
 ;
 W "input[type=submit] {",!
  W " padding:"_$$^W4KF(5),!
 W "}",!!
 ;
 W "input[type=reset] {",!
  W " padding:"_$$^W4KF(5),!
 W "}",!!
 ;
 W " div {",!
  W FONTFM,";",!
 W "}",!!
 ;
 W " .botinp {",!
 W FONTFM,";",!
 W "             font-size:"_$$^W3FSZ_";",!
 W "             text-align:right;",!
 W "             color:black;",! ; blue
 W "  }",!
 W !
 ;
 W ".ifr {"
 W "  position: absolute;",!
 W "  border: 3px ridge lightgrey;",!
 W "  visibility: hidden;",!
 W "  height:0;top:0;",!
 W "  width:0;",!
 W "  z-index: 100;",!
 W "  font-family: Arial;",!
 W "  font-size:"_$$^W3FSZ(11)_";",!
 W "  color: black;",!
 W $$RAD^W3CSM_";",!
 W "}",!
 ;
 W ".hdfix {",!
  W "position:sticky;",!
  W "top:0;",!
  W "z-index:10",!
 W "}",!
 ;
 W "#TblMenu {",!
 W "background-color:#E6E7E8;",!
 W "   color:black;",!
 W "   font-size:"_$$^W3FSZ(12)_";",!
 W "   border: 1px solid darkgrey;",!
 W "   border-collapse: separate;",!
 W "    border-spacing: 0;",!
 D NOSEL
 W $$RAD^W3CSM(8),!
 W "}",!
 
 W "#TblMenu th,",!
 W "#TblMenu td {",!
 W "    padding: 5px;",!
 W "}",!
 ;
 W "#TblMenu tbody tr:first-child td:first-child {",!
 W "   border-top-left-radius: 8px;",!
 W "}",!
 
 W "#TblMenu tbody tr:first-child td:last-child {",!
 W "   border-top-right-radius: 8px;",!
 W "}",!
 ;
 ;
 W "#TblMenu tr:last-child {",!
 W "    border-bottom: none;",!
 W "}",!
 ;
 W "#TblMenu tr:hover {",!
 W "   background-color: white;",!
 W "}",!
 ;
 I $$^W4TABLET D
 .W "img#saveid { width:"_$$^W4KF(25)_"px ; height:"_$$^W4KF(25)_"px }",!
 .W "img#delid { width:"_$$^W4KF(25)_"px ; height:"_$$^W4KF(25)_"px }",!
 .W "img#backid { width:"_$$^W4KF(25)_"px ; height:"_$$^W4KF(25)_"px }",!
 .W "img#back { width:"_$$^W4KF(25)_"px ; height:"_$$^W4KF(25)_"px }",!
 .W "img#printid { width:"_$$^W4KF(25)_"px ; height:"_$$^W4KF(25)_"px }",!
 .W "img#calcid { width:"_$$^W4KF(25)_"px ; height:"_$$^W4KF(25)_"px }",!
 .W "img#filter { width:"_$$^W4KF(25)_"px ; height:"_$$^W4KF(25)_"px }",!
 Q
 ;
FONTFM(STAM) ;
 I $$GET^%W1PRM("REST")!($$COLOR="SF") Q "font-family:Narkis Block,Aharoni,Narkisim"
 I $$COLOR="FK" Q "font-family:Tam Narkis,Aharoni,Narkisim,sans-serif,arial,verdana"
 Q "font-family:sans-serif" ;,arial,verdana"
 ;
COLOR(STAM) ;
 Q $$COLOR^W4GETCLR
 ;
NOSEL ; 
 W " -webkit-touch-callout: none; /* iOS Safari */",!
 W " -webkit-user-select: none; /* Safari */",!
 W " -khtml-user-select: none; /* Konqueror HTML */",!
 W " -moz-user-select: none; /* Firefox */",!
 W " -ms-user-select: none; /* Internet Explorer/Edge */",!
 W " user-select: none;",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CURLPR
W4CURLPR(DAT,ORDPR,GLPR,NMPR) ; [ 02.09.26 13:54 ] [ 10.08.26 16:29 ] [ 28.04.26 01:43 ] 
 N (JB,%ARG,DAT,ORDPR,GLPR,NMPR)
 D ^%L1TS
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(GLPR)="" S GLPR="W4CURL"
 I $G(NMPR)="" S NMPR="CURLPROT"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 S DT=$$^%L1DC(DAT,3)
 W "<p dir="""_$$^%W1DIR_""" style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT(NMPR,$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 S IND0=""
 S GL=$$^W4GL(GLPR)
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  I N D
 .S IND="" F  S IND=$O(@GL@(DT,N,IND)) Q:IND=""  D
 ..I $G(ORDPR),$$PRORD($G(^(IND)))'=ORDPR Q
 ..I IND'=IND0 S IND0=IND W "<br>",!
 ..I $D(@GL@(DT,N,IND))#2 W IND_" = "_$$RKV(^(IND))_"<br>",!
 ..S N1="" F  S N1=$O(@GL@(DT,N,IND,N1)) Q:N1=""  D
 ...I $D(^(N1))#2 W N1_" = "_$$RKV($G(^(N1)))_"<br>",!
 ...S N2="" F  S N2=$O(@GL@(DT,N,IND,N1,N2)) Q:N2=""  D
 ....I $D(^(N2))#2 W N1_" : "_N2_" = "_$$RKV($G(^(N2)))_"<br>",!
 W "</div>",!
 Q
 ;
 ;
RKV(VL) ; 
 N L,R  
 I VL["<>" S VL=$P(VL,"<>")
 S L=$P(VL,":") 
 S R=$P(VL,":",2,200) 
 D
 .;;I L["reason",R'[$C(215) S VL=L_":"_$$H2U^%L1FRM($$INVH^%L1FRM($TR(R,TSS,TS0))) Q
 .I R[$C(215) S VL=L_":"_$$H2U^%L1FRM($$U2D^%L1CNV(R)) Q
 .I R["\u" D
 ..N I,VL1 S VL1="" F I=1:1:$L(VL,"""") D
 ...N W S W=$P(VL,"""",I)
 ...I W["\u" S W=$$H2U^%L1FRM($$U2H^%L1CNV(W))
 ...S VL1=VL1_$S(W="":"",'(I#2):W,1:""""_W_"""")
 ..S VL=VL1
 ;
 Q VL  
 ;
 ;
PRORD(ST) ;
 Q $P(ST,"<>",2) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CUSDET
W4CUSDET ; [ 25.02.17 16:07 ] [ 15.12.15 10:19 ] [ 29.09.15 07:43 ] 
W(STAM) ;
 N HZM,NAME,LL
 S NAMELK=$$GET^W4TMPANS("CUSDET","CUSTOMNAME")
 I $L(NAMELK)<2 Q "CUSTOMNAMEWRONG"
 Q 1
 ;
INIT ;
 D CLEAR^W4SCASK
 D PUT^%W1PRM("VP","CUSDET")
 D PUT^%W1PRM("VZ","PAY")
 D CREATE^W4ASK("CUSDET","PAY")
 Q
 ;
CUSN(STAM)
 Q $$GET^W4TMPANS("CUSDET","CUSTOMNUM")
 ;
VLDCUSN ;
 I $L(VL)<4 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FLDMIN^CUSTOMNUMBER!D;4"
 ;
 I $$ISCR^W4L(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="MUSTCLOSEDBYCREDIT"
 ;
 I $$MAZAV^W4L(VL)=0 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTCLOSED"
 Q
 ;
VLDTEL ;
 I $L(VL)<7 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FLDMIN^TEL!D;7"
 Q
 ;
DFLTEL(STAM) ;
 N TEL,CUSN
 S CUSN=$$GET^W4TMPANS("CUSDET","CUSTOMNUM") I CUSN="" Q ""
 N TEL S TEL=$$TELB^W4L(CUSN)
 I TEL="" S TEL=CUSN
 Q TEL
 ;
VLDNAME ;
 I $L(VL)<5 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FLDMIN^CUSTOMNAME!D;5"
 Q
 ;
DFLTNAME(STAM) ;
 N NAME,CUSN
 S CUSN=$$CUSN I CUSN="" Q ""
 N NAME S NAME=$$LKH^W4L(CUSN)
 Q NAME
 ;
DFLTZ(STAM) ;
 N TZ,CUSN
 S CUSN=$$CUSN I CUSN="" Q ""
 N TZ S TZ=$$TZ^W4L(CUSN)
 Q TZ
 ;
 ;
CB(STAM) ;
 N SUM,CUSN,CUSNAME
 S SUM=$$GET^W4TMPPAY(12,"SUM")
 I 'SUM Q "0;NOSUM"
 S CUSN=$$CUSN
 I '$$^W4ISCDLK(CUSN) Q "0;NOCUSN"
 S CUSNAME=$$GET^W4TMPANS("CUSDET","CUSTOMNAME")
 I CUSNAME="" Q "0;NOCUSNAME"
 ;
 I $L(CUSN)>3,'$$ISCR^W4L(CUSN) D  ; -- CREATE CUST CARD
 .D PUT^W4L(CUSN,CUSNAME,"LKH")
 .S TZ=$$GET^W4TMPANS("CUSDET","TZ")
 .D PUT^W4L(CUSN,TZ,"TZ")
 .D PUT^W4L(CUSN,CUSN,"TELB")
 .D PUT^W4L(CUSN,2,"HBNOW")
 ;
 I $L(CUSN)>3,$$ISCR^W4L(CUSN) D PUT^%W1PRM("HBNOW",1)
 ;
 D PUT^W4TMPANS("MAXHMK","SUM",SUM)
 N PRM S PRM="MAXHMK;PAY"
 D CRORD^W4CARDVW(PRM)
 Q 1
 

W4CUST
W4CUST ; [ 29.03.26 12:57 ] [ 30.12.18 13:30 ] [ 09.01.18 11:47 ] 
 Q
 ;
INIT ;
 D CLEAR^W4LCBCR
 D ^W3CSS
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D KILL^%W1PRM("DAT")
 D KILL^%W1PRM("NOMHB")
 D KILL^%W1PRM("SUMHB")
 D KILL^%W1PRM("LKHR")
 D KILL^%W1PRM("HZM")
 D PUT^%W1PRM("PRKUP",1)
 Q
 ;
NOMHB(STAM) ;
 I $G(%ARG("NOMHB")) Q %ARG("NOMHB")
 I $$GETP^%W1PRM("NOMHB") Q $$GETP^%W1PRM("NOMHB")
 Q 0
 ;
SUMHB(STAM) ;
 I $G(%ARG("SUMHB")) Q %ARG("SUMHB")
 I $$GETP^%W1PRM("SUMHB") Q $$GETP^%W1PRM("SUMHB")
 Q 0
 
 
 

W4CUSTOU
W4CUSTOU(PRM,CODE) ; [ 25.06.26 08:09 ] [ 29.09.15 10:25 ] [ 03.01.14 13:01 ] 
 N (JB,%ARG,CODE,PRM)
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W4CUSTOU")
 D PUT^%W3DEB("W4CUSTOU","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 D PUT^%W3DEB("W4CUSTTB","MSD=MSD")
 ;
 N GL D GL^W3L
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("CUSTOMTABLE")_"</td></tr>",!
 W "</table>",!
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 ;
 W "<table width=""60%"" border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
  D CODE,NAME
 W "</tr>",!
 W "</table>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""10"" width=""60%"" border=""0"" dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D GROUP,MAZAV W "</tr>",!
 W "<tr>" D DEP,ROLE W "</tr>",!
 ;
 W "<tr>",!
 D FLOOR
 D FLAT
 W "</tr>",!
 ;
 W "<tr>"
 D EMAIL("EMAIL")
 W "</tr>",!
 ;
 W "<tr>",!
 D COMMENT
 W "</tr>",!
 ;
 W "<tr>",!
 D ISCR,ISCH
 W "</tr>",!
 .;
 ;
 W "<tr>",!
 D GDCR
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 W "<br>",!
 ;
 ;
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_"""><tr><td>",!
       D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"SubmOu('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
  W "</td>",!
  W "<td>",!
       D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   W "</td></tr></table>",!
 W "</div>",!
 Q
 ;
CODE D TD W "&nbsp;"_$$ZW_$$^%W1DICT("MOBIL")
 W "<td>" D INPC("CODE",100,12)
 W "&nbsp;&nbsp;<img id=""filter"" src=""w3filter.jpg"""
 W " "_$$^W4TOUCH_"=""Find('CODE','CODE!','LKH')"" >",!
 W "</td>",!
 Q
 ;
NMB D TD W "&nbsp;"_$$^%W1DICT("MOBIL")
 W "<td>"_$G(CODE)_"</td>",!
 Q
 ;
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td><td>&nbsp;" D INP("PELE",100,12,"LTR")
 Q
 ;
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td><td>&nbsp;&nbsp;"
 D INP("NAME",160,30,$$^%W1DIR)
 Q
 ;
ROLE D TD W "&nbsp;"_$$^%W1DICT("ROLE")_"</td><td>&nbsp;&nbsp;"
 D INP("ROLE",160,30,$$^%W1DIR)
 Q
 ;
GROUP D TD W "&nbsp;"_$$^%W1DICT("CUSTGROUP")_"</td>"
 W "<td id=""TDGROUP"">&nbsp;"
  W "<select id=""GROUP"" onChange=""ChangeGroup()"">",!
   W $$GROUPSEL($G(CODE)),!
  W "</select>",!
  W "<input type=""button"" value="""_$$^%W1DICT("EDIT")_""" "
  W " style=""color:blue"" "
  W " onClick=""GroupEdit()"" "
  W ">&nbsp;&nbsp;"
  W "<span style=""color:black"" id=""AH"">"_$$^%W1DICT("DISCONT")_" "_$S($G(CODE):$$AH^W4L(CODE)_" %",1:"")_"</span>"
 W "</td>",!
 Q
 ;
GROUPSEL(CODE) ;
 N SELECTED,SEL
 S SEL=""
 N N S N="" F  S N=$O(@$$^W4GL("SUGL")@(N)) Q:N=""  D
 .S SELECTED=""
 .I $G(CODE),$$SUGL^W4L(CODE)=N S SELECTED=" selected=""selected"""
 .S SEL=SEL_"<option value="""_N_""" "_SELECTED_" >"_N_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(N)))_"</option>"
 Q SEL
 ;
DEP D TD W "&nbsp;"_$$^%W1DICT("DEPARTMENT")_"</td>"
 W "<td>&nbsp;"
 D INP("DEP",180,30,$$^%W1DIR)
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("ROOM")_"</td><td>&nbsp;&nbsp;"
 D INP("FLAT",30,5,"LTR")
 Q
 ;
FLOOR D TD W "&nbsp;"_$$^%W1DICT("FLOOR")_"</td><td>&nbsp;"
 D INP("FLOOR",30,3,$$^%W1DIR)
 Q
 ;
COMMENT ;
 D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"</td>"
 W "<td colspan=""3"">&nbsp;"
 D INP("COMMENT","95%",60,$$^%W1DIR)
 Q
 ;
EMAIL(ID) ;
 D TD W "&nbsp;"_$$^%W1DICT("EMAIL")_"</td>"
 W "<td colspan=""3"">&nbsp;"
 N EMAIL X "S EMAIL=$$"_ID_"^W4L(CODE)"
 N PRMAIL
 I EMAIL["@",EMAIL[".",$F(EMAIL,".")>$F(EMAIL,"@") D
 .W $$^W4MAILTO(EMAIL),!  S PRMAIL=""
 D INP(ID,"95%",60,"LTR")
 Q
 ;
MAZAV ;
 D TD
 W "&nbsp;"_$$^%W1DICT("CUSTCLOSED")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""MAZAV"" "_$S('$$RKV("MAZAV")&$$D^W4L(CODE):" checked=""checked""",1:"")_" />"
 Q
 ;
ISCR ;
 D TD
 W "&nbsp;"_$$^%W1DICT("ISCR")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ISCR"" "_$S($$RKV("ISCR"):" checked=""checked""",1:"")_" />"
 Q
 ;
ISCH ;
 D TD
 W "&nbsp;"_$$^%W1DICT("ISCH")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ISCH"" "_$S($$RKV("ISCH"):" checked=""checked""",1:"")_" />"
 Q
 ;
 ;
ITRA ;
 D TD N ITRA S ITRA="&nbsp;"
 I $G(CODE) S ITRA=$J($$ITRA^W4L(CODE),2,2)
 W "&nbsp;"_$$^%W1DICT("ITRA")_"</td><td dir=""LTR"" "_$$^%W1ALIGN_" >&nbsp;&nbsp;"
 I $G(CODE) W "<span style=""color:"_$S(ITRA<0:"red",1:"black")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"_$J($$ITRA^W4L(CODE),2,2)_"</span>"
 W "</td>",!
 Q
 ;
ITRAH ;
 D TD N ITRAH S ITRAH="&nbsp;"
 I $G(CODE) S ITRAH=$J($$CBH^W4KLOST(CODE,+$H),2,2)
 W "&nbsp;"_$$^%W1DICT("ITRAH")_"</td><td dir=""LTR"" "_$$^%W1ALIGN_" >&nbsp;&nbsp;"
 I $G(CODE) W "<span style=""color:"_$S(ITRAH<0:"red",1:"black")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"_ITRAH_"</span>"
 W "</td>",!
 Q
 ;
GDCR ;
 D TD
 I '$$^W4LKH D
 .W "&nbsp;"_$$^%W1DICT("GDCR")_"</td><td>&nbsp;&nbsp;"
 . W "<input id=""GDCR"" type=""text"" maxlength=""10"" style=""text-align:right"" dir=""LTR"" size=""10"" value="""_$J($$GDCR^W4L(CODE),2,2)_"""/>"
 I $$^W4LKH W "&nbsp;"
 W "</td>",!
 Q
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .D
 ..W " value="""_RKVL_""""
 .
 .I RKV="EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
 .
 .W " />",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 I RKV["EMAIL"!$D(PRMAIL),$G(PRM)="IN",$L($G(EMAIL)) W "</a>",!
 W "</td>",!
 Q
 ;
 ;
INPC(RKV,WD,SIZE) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I PRNEW S CODE=$$^W4CDLK(CODE)
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onChange=""Find('CODE','CODE','LKH')"" >",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 Q
 ;
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D^W4L(CODE) Q $$P(FLD)
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I '$$D^W4L(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH^W4L(CODE))
 I FLD="MAZAV" Q $$MAZAV^W4L(CODE)
 I FLD="PELE" Q $$PELE^W4L(CODE)
 I FLD="FLAT" Q $$DIRA^W4L(CODE)
 I FLD="FLOOR" Q $$H2U^%L1FRM($$KOMA^W4L(CODE))
 I FLD="COMMENT" Q $$H2U^%L1FRM($$CMNT^W4L(CODE))
 I FLD="EMAIL" Q $$EMAIL^W4L(CODE)
 I FLD="ISCR" Q $$ISCR^W4L(CODE)
 I FLD="ISCH" Q $$ISCH^W4L(CODE)
 I FLD="GDCR" Q $$GDCR^W4L(CODE)
 I FLD="ROLE" Q $$H2U^%L1FRM($$ROLE^W4L(CODE))
 I FLD="DEP" Q $$H2U^%L1FRM($$DEP^W4L(CODE))
 Q ""
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D NMB
 D NAME
 W "</tr>"
 ;
 W "<tr>",!
 D DEP
 D ROLE
 W "</tr>",!
 ;
 W "<tr>",!
 D FLOOR
 D FLAT
 W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
  D COMMENT
 W "</tr>",!
 W "<tr>",!
  D EMAIL("EMAIL")
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N MC,I
 S MC="CODE~NAME!H~MAZAV"
 S MC=MC_"~DEP!H~ROLE!H"
 S MC=MC_"~FLOOR~FLAT!H~COMMENT!H~EMAIL~GROUP~GDCR"
 S MC=MC_"~ISCR~ISCH"
 ;
 D KILL^%W3DEB("W4CUSTTB")
 D PUT^%W3DEB("W4CUSTTB","PRM=PRM")
 ;
 F I=1:1:$L(MC,"~") D
 .N FLD,RG,VL
 .S FLD=$P(MC,"~",I)
 .S RG=$P(FLD,"!",2),FLD=$P(FLD,"!")
 .S VL=$TR($P(PRM,"~",I),$C(160)_"?","")
 .S VL=$$CLEAR^%L1FRM(VL)
 .S VL=$$CNWEB^%L1FRM(VL)
 .I RG="H"&($$^%W1DIR="RTL") S VL=$$INVH^%L1FRM(VL)
 .N A,A1,J S A=$$SPA^%L1FRM(VL)
 .S A1="" F J=1:1:$L(A) D
 ..N SMB S SMB=$E(A,J)
 ..I $A(SMB)<32!($A(SMB)>122) Q
 ..S A1=A1_SMB
 .S @FLD=A1
 ;
 I $G(CODE)="" Q "CODE!D"
 ;
 S CODE=$TR(CODE," -","")
 ;
 I CODE'?1N.N!($L(CODE)<4) Q "CODE!D"
 I '$L(NAME) Q "NAME!D"
 ;
PUT21 N RZD S RZD="*" Q:NAME=""  Q:CODE=""
 N ST S ST="LKH="_NAME_"<>MAZAV="_'$G(MAZAV)
 S ST=ST_"<>DEP="_DEP_"<>ROLE="_ROLE
 S ST=ST_"<>KOMA="_FLOOR_"<>DIRA="_FLAT_"<>CMNT="_COMMENT
 S ST=ST_"<>EMAIL="_EMAIL_"<>SUGL="_$G(GROUP)
 S ST=ST_"<>GDCR="_GDCR_"<>ISCR="_ISCR_"<>ISCH="_$G(ISCH)
 ;
 D PUT^%W3DEB("W4CUSTOU-SAVE","ST=ST")
 ;
 D GL^W3L
 I '$D(@GL@(CODE)) D
 .I $$ISCR^W4L(CODE) D PUT2^W3L(CODE,"ISCR=1")
 .I $$ISCH^W4L(CODE) D PUT2^W3L(CODE,"ISCH=1")
 .N AH S AH=$$AH^W4L(CODE)
 .I AH S $P(@GL@(CODE,2),"*",7)=AH
 .S DATPTH=$$^%L1DC($H,1) D PUT2^W4L(CODE,"DATPTH="_DATPTH)
 ;
 D PUT2^W4L(CODE,ST)
 ;
 S MSD=$$GET^%W1PRM("MSD")
 I $G(MSD) D ^%S2GLSV(GL_"("""_CODE_""")",$$^W3FGIB(MSD))
 Q 1
 ;
TEL(TEL,PR)
 I $G(PR)="M"!$L(TEL),$TR(TEL,"-","")'?7N.N Q 0
 Q 1
 ;
N(RKV,PR) ;
 I $G(PR)="M"!$L(RKV),RKV'?1N.N Q 0
 Q 1
 

W4CUSTTB
W4CUSTTB(PRM,CODE) ; [ 07.09.26 08:17 ] [ 16.08.26 17:23 ] [ 02.08.26 13:52 ] 
 I $$OUTCOMP^W3VHOD D ^W4CUSTOU(PRM,CODE) Q
 ;
 N (JB,%ARG,CODE,PRM)
 ;
 S W4CUSTTB=""
 I $G(%ARG("FIRST")),$G(CODE)="",$$^W4MSL($$GETP^%W1PRM("NMB")) D
 .S CODE=$$GETP^%W1PRM("NMB")
 .S %ARG("CODE")=CODE
 ;
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W4CUSTTB")
 D PUT^%W3DEB("W4CUSTTB","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 D PUT^%W3DEB("W4CUSTTB","MSD=MSD")
 ;
 N GL D GL^W3L
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 D PUT^%W1PRM("CODE",CODE)
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"
   W $$H2U^%L1FRM($$^W3MSDG(+MSD))_" - "
   W $$^%W1DICT("FULLCUSTCARD")
 W "</td></tr>",!
 W "</table>",!
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 ;
 W "<table width=""98%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
 D CODE
 W "<td>"
  W $$^%W1DICT("PRIVATE") W $$NBSP^%L1FRM(2)
  W "<input type=""checkbox"" id=""PRIVATE"" "
  I $G(CODE),$$PRIVATE^W4L(CODE) W "checked=""checked"" "
 W "</td>"
 ;
 W "<td id=""msglk"" width=""38%"" style=""font-weight:bold;color:red"" >"
 W "</td>"
 ;
 W "</tr>",!
 W "</table>",!
 ;
 I $$^W4TABLET=2 G TBLPHONE ; 
 ; 
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" "
  W " cellpadding=""10"" width=""98%"" border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 ;
 W "<tr>" D NAME,GROUP W "</tr>",!
 ;
 W "<tr>",!
 D MAZAV
 D HESHBON
 W "</tr>",!
 ;
 W "<tr>"
 D CONTACTMAN
 D ROLE
 W "</tr>",!
 ;
 W "<tr>",!
 D NMB
 D PELE
 W "</tr>",!
 ;
 W "<tr>"
 D EMAIL("EMAIL")
 D FAX
 W "</tr>",!
 ;
 W "<tr>"
 D CONTACTMAN1
 D TEL1
 W "</tr>",!
 ;
 W "<tr>"
 D 
 .S ZW="" I $$US1 S ZW=$$ZW
 .D EMAIL("EMAIL1",ZW)
 W "</tr>",!
 ;
 W "<tr>"
 D CITY
 D STREET
 W "</tr>",!
 ;
 W "<tr>",!
  D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
   W "<td "_$$^%W1ALIGN_">"
   W "<table border=""0"">"
    W "<tr "_$$^%W1ALIGN_" >"
     D HOME
     D FLAT
     D ENTRANCE
     D FLOOR
    W "</tr>",!
   W "</table>",!
  W "</td>"
  D COMMENT
 W "</tr>",!
 ;
 W "<tr>",!
  D MIKUD
  D CMNTIN
 W "</tr>",!
 ;
 W "<tr>",!
 D TZ,YOMH
 W "</tr>",!
 ;
 I '$$^W4LKH D
 .W "<tr>",!
 .D ISCR,ISCH
 .W "</tr>",!
 .W "<tr>",!
 .D ASM,HBNOW
 .W "</tr>",!
 .I $$MSL^W4PRM D
 ..W "<tr>",!
 ..D BIGTM
 ..D TMBLIMH
 ..W "</tr>",!
 .W "<tr>",!
 .D ORDLIST,ORDCONT
 .W "</tr>",!
 .;
 W "<tr>",!
 D GDCR
 D GDAY
 W "</tr>",!
 ;
 W "<tr>",!
 D SHOTEF
 D IFHBMAIL
 W "</tr>",!
 ;
 W "<tr>",!
 D ITRA,ITRAH
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;;W "<br>",!
 ;
 D DIVBUT 
 ;
 I $$KBVRT^W4PRM D ^W4KBABC
 Q
 ;
CODE D TD W "&nbsp;"_$$ZW_$$^%W1DICT("USERCODE")_"<br>"
  W "<span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"_$$^%W1DICT("TELRECOMMEND")_"</span>"
 W "</td>",!
 ;
 W "<td width=""20%"" >"
  W "<div style=""display:inline-flex;align-items:center"">"
   D INPC("CODE",$$^W4KF(120),14)
  W $$NBSP^%L1FRM(3)_"<img id=""filter"" style=""width:25px;width:24px"" src=""w3filter.jpg"""
  W " "_$$^W4TOUCH_"=""Find('CODE','CODE!','LKH')"" >",!
  W "</div>" 
 W "</td>"
 ;
 W "<td "_$$^%W1ALIGN_" >"
  D ROUNDBUT^%W1JS("rbtfree",$$^%W1DICT("FREE"),"Free()","color:green","wh,22")
 W "</td>",!
 ;
 I '$G(%ARG("NOSEARCH")) D
 .W "<td "_$$^%W1ALIGN_" >"
 . D ROUNDBUT^%W1JS("rbtfind",$$^%W1DICT("SEARCH"),"Search()","color:blue","wh,22")
 .W "</td>",!
 ;
 D BACK
 Q
 ;
HESHBON D TD W "&nbsp;"_$$^%W1DICT("ACCOUNTMG")_"</td><td>&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("HESB",$$^W4KF(100),12,"LTR")
 Q
 ;
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"</td><td>"
 W "<table><tr><td>"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("NMB",$$^W4KF(120),14,"LTR")
 D SHLUHA
 W "</tr></table></td>"
 Q
 ;
SHLUHA ;
 D TD W "&nbsp;"_$$^%W1DICT("SHLUHA")_"</td><td>&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("SHLUHA",$$^W4KF(50),4,"LTR")
 Q
 ;
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td>"
 W "<td>&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("PELE",$$^W4KF(100),12,"LTR")
 Q
 ;
 Q
 ;
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td><td>&nbsp;&nbsp;"
 D INP("NAME","95%",45,$$^%W1DIR)
 Q
 ;
CONTACTMAN D TD W "&nbsp;"_$$^%W1DICT("CONTACTMAN")_"</td><td>&nbsp;&nbsp;"
 D INP("CONTACTMAN",$$^W4KF(160),30,$$^%W1DIR)
 Q
 ;
CONTACTMAN1 ;
 N ZW S ZW=" "
 I $$US1 S ZW=$$ZW
 D TD W ZW_$$^%W1DICT("CONTACTMAN1")_"</td>"
 W "<td>&nbsp;&nbsp;"
 D INP("CONTACTMAN1",$$^W4KF(160),30,$$^%W1DIR)
 Q
 ;
TEL1 ;
 N ZW S ZW=$$ZW I '$$US1 S ZW=""
  D TD W "&nbsp;"_ZW_$$^%W1DICT("TEL")_"</td><td> &nbsp;"
  I $$^W4TABLET=2 W "&nbsp;"
  D INP("PELE1",$$^W4KF(120),14,"LTR")
 W " </td>"
 Q
 ;
SHLUHA1 ;
 D TD W "&nbsp;"_$$^%W1DICT("SHLUHA")_"</td><td>&nbsp;"
 D INP("SHLUHA1",$$^W4KF(50),4,"LTR")
 Q
 ;
ROLE D TD W "&nbsp;"_$$^%W1DICT("ROLE")_"</td><td>&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("ROLE",$$^W4KF(160),30,$$^%W1DIR)
 Q
 ;
ROLE1 D TD W "&nbsp;"_$$^%W1DICT("ROLE")_"</td><td>&nbsp;&nbsp;"
 D INP("ROLE1",$$^W4KF(160),30,$$^%W1DIR)
 Q
 ;
GROUP D TD W "&nbsp;"_$$^%W1DICT("CUSTGROUP")_"</td>"
 W "<td id=""TDGROUP"">&nbsp;"
  I $$^W4TABLET=2 W "&nbsp;"
  W "<select id=""GROUP"" onChange=""ChangeGroup()"">",!
   W $$GROUPSEL($G(CODE)),!
  W "</select>",!
  W "<input type=""button"" value="""_$$^%W1DICT("EDIT")_""" "
  W " style=""color:blue"" "
  W " onClick=""GroupEdit()"" "
  W ">&nbsp;&nbsp;"
  W "<span style=""color:black"" id=""AH"">"_$$^%W1DICT("DISCONT")_" "_$S($G(CODE):$$AH^W4L(CODE)_" %",1:"")_"</span>"
 W "</td>",!
 Q
 ;
GROUPSEL(CODE) ;
 N SELECTED,SEL
 S SEL=""
 N N S N="" F  S N=$O(@$$^W4GL("SUGL")@(N)) Q:N=""  D
 .S SELECTED=""
 .I $G(CODE),$$SUGL^W4L(CODE)=N S SELECTED=" selected=""selected"""
 .S SEL=SEL_"<option value="""_N_""" "_SELECTED_" >"_N_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(N)))_"</option>"
 Q SEL
 ;
STREET D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td>"
 W "<td colspan=""1"">&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("STREET","95%",50,$$^%W1DIR)
 Q
 ;
HOME ;;D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
 W "<td "_$$^%W1ALIGN_">"
 I $$^W4TABLET=2 W "&nbsp;&nbsp;"
 D INP("HOME",$$^W4KF(50),5,"LTR")
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("FLAT")_"</td><td>&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("FLAT",$$^W4KF(60),5,"LTR")
 Q
 ;
ENTRANCE D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("ENTRANCE",$$^W4KF(60),5,$$^%W1DIR)
 Q
 ;
FLOOR D TD W "&nbsp;"_$$^%W1DICT("FLOOR")_"</td><td>&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("FLOOR",$$^W4KF(60),5,$$^%W1DIR)
 Q
 ;
CITY D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"</td>"
 W "<td>&nbsp;&nbsp;"
 N RKV S RKV="CITY"
 ;
 I $D(@$$^W4GL("P1IR"))>9,'$$CITYINPUT^W4PRM D  Q
 .W "<select"
 .W " name="""_RKV_""" id="""_RKV_""""
 .W " tabindex=""4"""
 .W " onChange=""ChangeCity()"" >",!
 .W "<option>&nbsp;</option>",!
 .N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..N IR S IR=$G(^(N))
 ..W "<option value='"_N_"'"
 ..I IR=$$CITY^W4L(CODE) W " selected=""selected"""
 ..W " >"_$$H2U^%L1FRM(IR)_"</option>",!
 .W "</select>",!
 ;
 ;;D INP("CITY",120,20,$$^%W1DIR)
 D INPCT
 W "</td>",!
 Q
 ;
INPCT ;
 W "<input type=""text"" size=""20"" "  ;;style=""width:180px"
 W ";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 W " dir="""_$$^%W1DIR_""""
 N VL S VL="" I $G(CODE) S VL=$$H2U^%L1FRM($TR($$CITY^W4L(CODE),"-"," "))
 W " name=""CITY"" id=""CITY"" value="""_VL_""""
 W " tabindex=""4"""
 W " onChange=""ChangeCity()"" "
 ;
 I $$CITYINPUT^W4PRM,$$CITIESTABLE D
 .W " OnKeyPress=""KeyPressCity(event,this,'45%','300px')"" "
 Q
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 ;
CITIESTABLE(STAM) ; 
 I $D(@$$GLCITY)>9 Q 1
 Q 0
 ;
MIKUD D TD W "&nbsp;"_$$^%W1DICT("ZIP")_"</td><td>&nbsp;&nbsp;"
 D INP("MIKUD",$$^W4KF(80),8,"LTR")
 Q
 ;
TZ N ZW S ZW=" "
 I $$MUSTTZ^W4PRM S ZW=$$ZW
 D TD W "&nbsp;"_ZW_$$^%W1DICT("BUSINESSID")_"</td><td>&nbsp;&nbsp;"
 D INP("TZ",$$^W4KF(120),10,"LTR")
 Q
 ;
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ADR")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">&nbsp;&nbsp;"
  W "<textarea cols=""36"" rows=""2"" id=""COMMENT"" >"
   N RKV S RKV=$$RKV("COMMENT")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W $$H2U^%L1FRM(RKV)
  W "</textarea>",!
 W "</td>"
 Q
 ;
CMNTIN D TD W "&nbsp;"_$$^%W1DICT("COMMENTIN")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">&nbsp;&nbsp;"
  W "<textarea cols=""36"" rows=""2"" id=""CMNTIN"" >"
   N RKV S RKV=$$RKV("CMNTIN")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W $$H2U^%L1FRM(RKV)
  W "</textarea>",!
 W "</td>"
 Q
 ;
EMAIL(ID,ZW) D TD
 S:$G(ZW)="" ZW=" "
 W ZW_$$^%W1DICT(ID)_"</td><td>&nbsp;&nbsp;"
 N EMAIL X "S EMAIL=$$"_ID_"^W4L(CODE)"
 D INP(ID,"95%",60,"LTR")
 Q
 ;
FAX D TD W "&nbsp;"_$$^%W1DICT("FAX")_"</td><td>&nbsp;"
 I $$^W4TABLET=2 W "&nbsp;"
 D INP("FAX",$$^W4KF(120),14,"LTR")
 Q
 ;
YOMH D TD
 W "&nbsp;"_$$^%W1DICT("BIRTHDAY")_"</td>"
 ;
 W "<td " ;;dir=""LTR"""
 ;;I $$^%W1DIR="RTL" W " align=""right"""
 W " >"
 S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 I $$^W4TABLET=2 W "&nbsp;&nbsp;"
 D INP("YOMH",$$^W4KF(8),8,"D")
 Q
 ;
MAZAV ;
 D TD
  W "&nbsp;"_$$^%W1DICT("CUSTCLOSED")_"</td><td>&nbsp;&nbsp;"
  W "<input type=""checkbox"" id=""MAZAV"" "_$S('$$RKV("MAZAV")&$$D^W4L(CODE):" checked=""checked""",1:"")_" />"
  ;
  W $$NBSP^%L1FRM(10)
  ;
  W $$^%W1DICT("LKHR")_"&nbsp;&nbsp;"
  ;
  N MAIN,MAIN1 S MAIN=$$LKHR^W4L(CODE),MAIN1=$$LKHR1^W4L(CODE)
  W "<input type=""text"" id=""LKHR"" value="""_MAIN_""" onChange=""ShowFind1('LKHR','LKHR1')"" />"
  ; 
  W "&nbsp;&nbsp;<img id=""filter1"" src=""w3filter.jpg"""
  W " "_$$^W4TOUCH_"=""Find('LKHR','LKHR','LKH','0','LKHR1')"" >",!
  ;
  W "&nbsp;&nbsp;<span id=""LKHR1"">"_$$H2U^%L1FRM(MAIN1)_"</span>"
  W "</td>",!
 Q
 ;
 ;
ISCR ;
 D TD
 W "&nbsp;"_$$^%W1DICT("ISCR")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ISCR"" "_$S($$RKV("ISCR"):" checked=""checked""",1:"")
  I $$CHNISCR^W4PRM D
  .W " onClick=""ShowPsw('CHNISCR')"" " 
 W " />"
 W "</td>",!
 Q
 ;
ISCH ;
 D TD
 W "&nbsp;"_$$^%W1DICT("ISCH")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ISCH"" "_$S($$RKV("ISCH"):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
HBNOW ;
 D TD
 W "&nbsp;"_$$^%W1DICT("HBNOW")_"</td>"
 W "<td width=""15%"">&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""HBNOW"" "
 N VL S VL=""
 D
 .I $$RKV("HBNOW") S VL=" checked=""checked"" " Q
 .I $G(CODE),$$HBNOW^W4L(CODE)="",$$HBNOWDFL^W4PRM D  Q
 ..S VL=" checked=""checked"" "
 W VL_" />"
 W "</td>",!
 Q
 ;
ASM ;
 D TD
 W "&nbsp;"_$$^%W1DICT("ASM")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""ASM"" "
  W $S($$RKV("ASM"):" checked=""checked""",1:"")_" />"
 
  W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("INPUTCRCARDREMOTE")
  W "<input type=""checkbox"" id=""CAREMOTE"" "
   W $S($$RKV("CAREMOTE"):" checked=""checked""",1:"")
  W " />",!
 W "</td>",!
 Q
 ;
BIGTM ;
 D TD
  W "&nbsp;"_$$^%W1DICT("BIGTM")_"</td><td>&nbsp;&nbsp;"
  W "<input type=""checkbox"" id=""BIGTM"" "
   W $S($$RKV("BIGTM"):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
TMBLIMH ;
 D TD
  W "&nbsp;"_$$^%W1DICT("PRINTDLVDOCWITHOUTPRICE")_"</td><td>&nbsp;&nbsp;"
  ;W "<input type=""checkbox"" id=""TMBLIMH"" "
  ; W $S($$RKV("TMBLIMH"):" checked=""checked""",1:"")_" />"
  W "<select id=""TMBLIMH"">"
   W "<option value=""0"" "_$$CHKTMBLIMH(0)_" >"_$$^%W1DICT("DEFAULTPRM")_"</option>",!
   W "<option value=""1"" "_$$CHKTMBLIMH(1)_" >"_$$^%W1DICT("ALWAYSNOTPRC")_"</option>",!
   W "<option value=""2"" "_$$CHKTMBLIMH(2)_" >"_$$^%W1DICT("ALWAYSPRC")_"</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
 ;
ORDLIST ;
 D TD
  W "&nbsp;"_$$^%W1DICT("INVCORDLIST")_"</td><td>&nbsp;&nbsp;"
  W "<select id=""ORDLIST"">"
   W "<option value=""1"" "_$$CHECKORDLIST(1)_" >"_$$^%W1DICT("PRINTINORGONLY")_"</option>",!
   W "<option value=""2"" "_$$CHECKORDLIST(2)_" >"_$$^%W1DICT("PRINTINORGANDCOPY")_"</option>",!
   W "<option value=""0"" "_$$CHECKORDLIST(0)_" >"_$$^%W1DICT("NOPRINT")_"</option>",!
  W "</select>",!
 W "</td>",!
 Q
 ;
ORDCONT ;
 D TD
  W "&nbsp;"_$$^%W1DICT("INVCORDCONT")_"</td><td>&nbsp;&nbsp;"
  W "<select id=""ORDCONT"">"
   W "<option value=""1"" "_$$CHECKORDCONT(1)_" >"_$$^%W1DICT("PRINTINORGONLY")_"</option>",!
   W "<option value=""2"" "_$$CHECKORDCONT(2)_" >"_$$^%W1DICT("PRINTINORGANDCOPY")_"</option>",!
   W "<option value=""0"" "_$$CHECKORDCONT(0)_" >"_$$^%W1DICT("NOPRINT")_"</option>",!
  W "</select>",!
 W "</td>",!
 Q
 ;
 ;
ITRA ;
 D TD N ITRA S ITRA="&nbsp;"
 I $G(CODE) S ITRA=$J($$ITRA^W4L(CODE),2,2)
 W "&nbsp;"_$$^%W1DICT("ITRA")_"</td><td dir=""LTR"" "_$$^%W1ALIGN_" >&nbsp;&nbsp;"
 I $G(CODE) W "<span style=""color:"_$S(ITRA<0:"red",1:"black")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"_$J($$ITRA^W4L(CODE),2,2)_"</span>"
 W "</td>",!
 Q
 ;
ITRAH ;
 D TD N ITRAH S ITRAH="&nbsp;"
 I $G(CODE) S ITRAH=$J($$CBH^W4KLOST(CODE,+$H),2,2)
 W "&nbsp;"_$$^%W1DICT("ITRAH")_"</td><td dir=""LTR"" "_$$^%W1ALIGN_" >&nbsp;&nbsp;"
 I $G(CODE) W "<span style=""color:"_$S(ITRAH<0:"red",1:"black")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"_ITRAH_"</span>"
 W "</td>",!
 Q
 ;
GDCR ;
 D TD
 I '$$^W4LKH D
 .W "&nbsp;"_$$^%W1DICT("GDCR")_"</td><td>&nbsp;&nbsp;"
 . W "<input id=""GDCR"" type=""text"" maxlength=""10"" "
 . W "style=""text-align:right"" dir=""LTR"" size=""10"" "
 . N GDCR S GDCR=$$GDCR^W4L(CODE)
 . I '$$D^W4L(CODE) W " onFocus=""this.value='"_$G(@$$^W4PRM@("DFLTCR"),2000)_"'"" "
 . W "onClick=""this.select()"" value="""_$J(GDCR,2,2)_"""/>"
 I $$^W4LKH W "&nbsp;"
 W "</td>",!
 Q
 ;
GDAY ;
 D TD
 I '$$^W4LKH D
 .W "&nbsp;"_$$^%W1DICT("GDAY")_"</td><td>&nbsp;&nbsp;"
 . W "<input id=""GDAY"" type=""text"" maxlength=""10"" style=""text-align:right"" dir=""LTR"" size=""10"" onClick=""this.select()"" value="""_$$GDAY^W4L(CODE)_"""/>"
 I $$^W4LKH W "&nbsp;"
 W "</td>",!
 Q
 ;
SHOTEF ;
 D TD
 W "&nbsp;"_$$^%W1DICT("SHOTEF")_"</td><td>&nbsp;&nbsp;"
  W "<input id=""SHOTEF"" type=""text"" maxlength=""2"" "
  W " style=""text-align:right"" dir=""LTR"" size=""2"" "
  W " onClick=""this.select()"" value="""_$$SHOTEF^W4L(CODE)_""" />"
 W "</td>",!
 Q
 ;
IFHBMAIL ;
 D TD
 W "&nbsp;"_$$^%W1DICT("IFHBMAIL")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""IFHBMAIL"" "_$S($$RKV("IFHBMAIL"):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 ;;I $$^W4TABLET=2 S WD=WD+5
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .D
 ..I RKV="HOME",$G(HOME) W " value="""_HOME_"""" Q
 ..
 ..I RKV="STREET" D
 ...N VL S VL=$$RKV(RKV)
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 ..
 ..W " value="""_RKVL_""""
 .
 .I RKV["EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,"_RKV_")"""
 .
 .W " />",!
 ;
 I $G(PRM)="IN",DIR="D" D
 .I '$G(CODE) D ^%W1DAT("YOMH","-","") Q
 .N %W1DAT S %W1DAT("NODAY")=""
 .D ^%W1DAT("YOMH",$$RKV(RKV),"") Q
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 ;
 I RKV="TZ" D
 .W "&nbsp;&nbsp;"
 .W $$^%W1DICT("CHECKID")
 .W " <input type=""checkbox"" id=""chktz"" "_$S($$RKV("CHKTZ"):"checked=""checked"" ",1:"")_" />"
 ;
 W "</td>",!
 Q
 ;
INPC(RKV,WD,SIZE) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW,'$$DEFISLK^W4PRM S CODE=$$CLR^W4CDLK(CODE)
 .W "<input type=""text"" maxlength="""_SIZE_""" "
 .W "style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")
 .W """"
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onChange=""Find('CODE','CODE','LKH')"" >",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 Q
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D^W4L(CODE) Q $$P(FLD)
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I '$$D^W4L(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NMB" Q $$TELB^W4L(CODE)
 I FLD="SHLUHA" Q $$SHLUHA^W4L(CODE)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH^W4L(CODE))
 I FLD="MAZAV" Q $$MAZAV^W4L(CODE)
 I FLD="PELE" Q $$PELE^W4L(CODE)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV^W4L(CODE))
 I FLD="HOME" Q $$BAIT^W4L(CODE)
 I FLD="FLAT" Q $$DIRA^W4L(CODE)
 I FLD="ENTRANCE" Q $$H2U^%L1FRM($$CNISA^W4L(CODE))
 I FLD="FLOOR" Q $$H2U^%L1FRM($$KOMA^W4L(CODE))
 I FLD="CITY" Q $$H2U^%L1FRM($$IR^W4L(CODE))
 I FLD="COMMENT" Q $$H2U^%L1FRM($$CMNT^W4L(CODE))
 I FLD="CMNTIN" Q $$H2U^%L1FRM($$CMNTIN^W4L(CODE))
 I FLD="EMAIL" Q $$EMAIL^W4L(CODE)
 I FLD="FAX" Q $$FAX^W4L(CODE)
 I FLD="YOMH" Q $$JOMH^W4L(CODE)
 I FLD="ISCR" Q $$ISCR^W4L(CODE)
 I FLD="ISCH" Q $$ISCH^W4L(CODE)
 I FLD="ASM" Q $$ASM^W4L(CODE)
 I FLD="HBNOW" Q $$HBNOW^W4L(CODE)
 I FLD="BIGTM" Q $$BIGTM^W4L(CODE)
 I FLD="TMBLIMH" Q $$TMBLIMH^W4L(CODE)
 I FLD="ORDLIST" Q $$ORDLIST^W4L(CODE)
 I FLD="ORDCONT" Q $$ORDCONT^W4L(CODE)
 I FLD="GDCR" Q $$GDCR^W4L(CODE)
 I FLD="GDAY" Q $$GDAY^W4L(CODE)
 I FLD="COMP" Q $$H2U^%L1FRM($$COMP^W4L(CODE))
 I FLD="HESB" Q $$H2U^%L1FRM($$HESB^W4L(CODE))
 I FLD="TZ" Q $$TZ^W4L(CODE)
 I FLD="CHKTZ" Q $$CHKTZ^W4L(CODE)
 I FLD="MIKUD" Q $$MIKUD^W4L(CODE)
 I FLD="CONTACTMAN" Q $$H2U^%L1FRM($$CONTACTMAN^W4L(CODE))
 I FLD="CONTACTMAN1" Q $$H2U^%L1FRM($$CONTACTMAN1^W4L(CODE))
 I FLD="ROLE" Q $$H2U^%L1FRM($$ROLE^W4L(CODE))
 I FLD="ROLE1" Q $$H2U^%L1FRM($$ROLE1^W4L(CODE))
 I FLD="PELE1" Q $$PELE1^W4L(CODE)
 I FLD="EMAIL1" Q $$EMAIL1^W4L(CODE)
 I FLD="IFHBMAIL" Q $$IFHBMAIL^W4L(CODE)
 I FLD="CAREMOTE" Q $$CAREMOTE^W4L(CODE)
 Q ""
 ;
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D NMB
 D PELE
 D NAME
 W "</tr><tr>",!
 D STREET
 D HOME
 D FLAT
 D ENTRANCE
 D FLOOR
 W "</tr>",!
 W "</table>",!
 ;
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
 D CITY
 D COMMENT,YOMH
 W "</tr>",!
 W "<tr>"
 D EMAIL("EMAIL")
 D EMAIL("EMAIL1")
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N MC,I
 S MC="CODE~NAME!H~NMB~SHLUHA~PELE~EMAIL~FAX~STREET!H~HOME~FLAT~ENTRANCE"
 S MC=MC_"~FLOOR~CITY!H~COMMENT!H~YOMH~HESB~MIKUD~TZ~GROUP~GDCR~GDAY~CONTACTMAN!H~ROLE!H"
 S MC=MC_"~CONTACTMAN1!H~ROLE1!H~PELE1~EMAIL1~SHOTEF"
 S MC=MC_"~MAZAV~ISCR~ISCH~ASM~HBNOW~ORDLIST~ORDCONT~CADFLT~MM~YY~CVV"
 S MC=MC_"~TZCA~CMNTIN!H"
 S MC=MC_"~CHKTZ~BIGTM~TMBLIMH~IFHBMAIL~LKHR~PRIVATE~CAREMOTE"
 ;
 D KILL^%W3DEB("W4CUSTTB")
 D PUT^%W3DEB("W4CUSTTB","PRM=PRM")
 ;
 F I=1:1:$L(MC,"~") D
 .N FLD,RG,VL
 .S FLD=$P(MC,"~",I)
 .S RG=$P(FLD,"!",2),FLD=$P(FLD,"!")
 .S VL=$TR($P(PRM,"~",I),$C(160)_"?","")
 .S VL=$$CLEAR^%L1FRM(VL)
 .S VL=$$CNWEB^%L1FRM(VL)
 .S VL=$TR(VL,"\*","/X")
 .I RG="H"&($$^%W1DIR="RTL") S VL=$$INVH^%L1FRM(VL)
 .N A,A1,J S A=$$SPA^%L1FRM(VL)
 .S A1="" F J=1:1:$L(A) D
 ..N SMB S SMB=$E(A,J)
 ..I $A(SMB)<32!($A(SMB)>122) Q
 ..S A1=A1_SMB
 .S @FLD=A1
 ;
 ;;S ^AA("W4CUSTTB","MC")=MC
 ;;S ^AA("W4CUSTTB","PRM")=PRM
 ;;S ^AA("W4CUSTTB","LKHR")=LKHR
 ;
 I CITY?1N.N,$D(@$$^W4GL("P1IR")@(CITY)) S CITY=^(CITY)
 ;
 I $G(CODE)="" Q "CODE!D"
 ;
 N LSMB S LSMB=" " I '$$DEFISLK^W4PRM S LSMB=LSMB_"-"
 S CODE=$TR(CODE,LSMB,"")
 ;
 I $L(CODE)<4 Q "CODE!D"
 I '$$TEL(NMB,"M") Q "TEL!D"
 I $L(PELE),'$$TEL(PELE) Q "PELE!D"
 I HOME'?1N.E,HOME'="." Q "HOME!D"
 I '$L(CITY) Q "CITY!D"
 I '$L(NAME) Q "NAME!D"
 I '$L(STREET) Q "STREET!D"
 I '$L(GROUP) Q "GROUP!D"
 I '$$TEL(FAX) Q "FAX!D"
 I '$$N(TZ) Q "TZ!D"
 I $$MUSTTZ^W4PRM,'$L(TZ),'$G(PRIVATE) Q "TZ!D"
 I CHKTZ,$L(TZ),'$$^W4TZ(TZ) Q "TZ!D"
 I $$US1&'$G(PRIVATE),'$L(CONTACTMAN1) Q "CONTACTMAN1!D"
 I $$US1&'$G(PRIVATE),'$$TEL(PELE1) Q "PELE1!D"
 I $$US1&'$G(PRIVATE),'$L($P($P(EMAIL1,"@",2),".",2)) Q "EMAIL1!D"
 ;I '$L($P($P(EMAIL,"@",2),".",2)) Q "EMAIL!D"
 ;
PUT21 N RZD S RZD="*" Q:NAME=""  Q:CODE=""
 I $$DELIS^W4PRM,$G(ISCR)="k"!$G(ISCR),$G(ORDLIST)="" S ORDLIST=2
 S CADFLT=$P(CADFLT,"^")_"^"_MM_"^"_YY_"^"_CVV_"^"_TZCA
 N ST S ST="LKH="_NAME_"<>MAZAV="_'$G(MAZAV)_"<>KTV="_STREET_"<>HESB="_HESB
 S ST=ST_"<>TELB="_NMB_"<>SHLUHA="_SHLUHA_"<>DIRA="_FLAT
 S ST=ST_"<>KOMA="_FLOOR_"<>BAIT="_HOME_"<>CNISA="_ENTRANCE_"<>CMNT="_COMMENT
 S ST=ST_"<>IR="_CITY_"<>MIKUD="_$G(MIKUD)_"<>TZ="_TZ_"<>CHKTZ="_CHKTZ_"<>PELE="_$G(PELE)
 S ST=ST_"<>EMAIL="_EMAIL_"<>FAX="_FAX_"<>JOMH="_$G(YOMH)_"<>SUGL="_$G(GROUP)
 S ST=ST_"<>CONTACTMAN="_CONTACTMAN_"<>ROLE="_ROLE
 S ST=ST_"<>CONTACTMAN1="_CONTACTMAN1_"<>ROLE1="_ROLE1
 S ST=ST_"<>PELE1="_PELE1_"<>EMAIL1="_EMAIL1_"<>SHOTEF="_SHOTEF
 S ST=ST_"<>GDCR="_GDCR_"<>GDAY="_GDAY_"<>ISCR="_ISCR_"<>ISCH="_$G(ISCH)_"<>ASM="_$G(ASM)
 S ST=ST_"<>HBNOW="_HBNOW_"<>BIGTM="_BIGTM_"<>ORDLIST="_ORDLIST_"<>ORDCONT="_ORDCONT
 S ST=ST_"<>CADFLT="_CADFLT
 S ST=ST_"<>CMNTIN="_CMNTIN
 S ST=ST_"<>TMBLIMH="_TMBLIMH
 S ST=ST_"<>IFHBMAIL="_IFHBMAIL
 S ST=ST_"<>PRIVATE="_PRIVATE
 S ST=ST_"<>CAREMOTE="_CAREMOTE
 ;
 D PUT^%W3DEB("W4CUSTTB-SAVE","ST=ST")
 ;
 D GL^W3L
 ;
 I '$D(@GL@(CODE)) D
 .I $$ISCR^W4L(CODE) D PUT2^W3L(CODE,"ISCR=1")
 .I $$ISCH^W4L(CODE) D PUT2^W3L(CODE,"ISCH=1")
 .N AH S AH=$$AH^W4L(CODE)
 .I AH S $P(@GL@(CODE,2),"*",7)=AH
 .S DATPTH=$$^%L1DC($H,1) D PUT2^W4L(CODE,"DATPTH="_DATPTH)
 ;
 D PUT2^W4L(CODE,ST)
 ;
 S MSD=$$GET^%W1PRM("MSD")
 I $G(MSD) D ^%S3GLSV(GL_"("""_CODE_""")",$$^W3FGIB(MSD))
 ;
 I $G(CODE) D
 .N LKHROLD S LKHROLD=$$LKHR^W4L(CODE)
 .I LKHROLD K @$$^W4GL("P1EZL")@(CODE),@$$^W4GL("P1EZLI")@(LKHROLD,CODE)
 .I $L(LKHR)<4 Q
 .S @$$^W4GL("P1EZL")@(CODE)=LKHR
 .S @$$^W4GL("P1EZLI")@(LKHR,CODE)=""
 ;
 Q 1
 ;
 ;
TEL(TEL,PR)
 I $G(PR)="M"!$L(TEL),$TR(TEL,"-","")'?7N.N Q 0
 Q 1
 ;
N(RKV,PR) ;
 I $G(PR)="M"!$L(RKV),RKV'?1N.N Q 0
 Q 1
 ;
FREE(STAM) ;
 N N
 N MIN S MIN=1000
 I $G(@$$^W4PRM@("MINNOMLK")) S MIN=^("MINNOMLK")
 F N=MIN:1 Q:'$D(@$$^W4GL("LKH")@(N))
 Q N
 ;
CHECKORDLIST(VL) ;
 I $$P("ORDLIST")=VL Q " selected=""selected"" "
 I $$P("ORDLIST")="",VL=1 Q " selected=""selected"" "
 Q ""
 ;
CHKTMBLIMH(VL) ;
 I $$P("TMBLIMH")=VL Q " selected=""selected"" "
 I $$P("TMBLIMH")="",VL=0 Q " selected=""selected"" "
 Q ""
 ;
CHECKORDCONT(VL) ;
 I +$$P("ORDCONT")=VL Q " selected=""selected"" "
 Q ""
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 I $G(%ARG("CODE")) D DIVCARD
 ;
 W "<table dir="""_$$^%W1DIR_"""><tr>",!
 I $L($G(%ARG("CODE")))>3 D
 . W "<td>"
 .  D ROUNDBUT^%W1JS("rbtcontact",$$^%W1DICT("ADDCONTACTMANS"),"AddContactMans()","color:blue","wh,22")
 . W "</td>"
 .
 . W " <td align=""center"">",!
 .      D ROUNDBUT^%W1JS("reps",$$^%W1DICT("SHOWCUSTREPORT"),"ShowReport()","color:darkblue","wh,22")
 . W " </td>",!
 .
 . W " <td align=""center"">",!
 .      D ROUNDBUT^%W1JS("cred",$$^%W1DICT("CREDITCARD"),"CreditCard()","color:darkblue","wh,22")
 . W " </td>",!
 .
 .I $$CORR^W4PRM D 
 .. W " <td align=""center"">",!
 ..      D ROUNDBUT^%W1JS("corr",$$^%W1DICT("CORRESPONDENCE"),"Correspondence()","color:darkblue","wh,22")
 .. W " </td>",!
 .I '$$NETLK($G(%ARG("CODE"))) D
 .. W "<td>"
 ..      D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 .. W "</td>",!
  ;
  D BACK
  ;
  W "</tr></table>",!
 W "</div>",!
 Q
 ;
BACK ; 
 W "<td>",!
  D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</td>"
 Q
 ;
DIVCARD ; 
 W "<table align=""center"" id=""divcred"" style=""visibility:hidden"" >",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("CREDITCARD")_" "
    W "<input type=""text"" id=""idcred"" "
     W " value="""_$$CADFLT^W4L(%ARG("CODE"))_""" "
    W ">",!
    W "</td>"
    ;
    W "<td>"
     W "MM "
     W "<input type=""text"" size=""2"" maxlength=""2"" id=""idmm"" "
      W " value="""_$$MMCA^W4L(%ARG("CODE"))_""" "
     W ">",!
    W "</td>"
    ;
    W "<td>"
     W "YY "
     W "<input type=""text"" size=""2"" maxlength=""2"" id=""idyy"" "
      W " value="""_$$YYCA^W4L(%ARG("CODE"))_""" "
     W ">",!
    W "</td>"
    ;
    W "<td>"
     W "CVV "
     W "<input type=""text"" size=""3"" maxlength=""3"" id=""idcvv"" "
      W " value="""_$$CVV^W4L(%ARG("CODE"))_""" "
     W ">",!
    W "</td>"
    ;
    W "<td>"
     W "ID "
     W "<input type=""text"" size=""9"" maxlength=""9"" id=""idtzca"" "
      W " value="""_$$TZCA^W4L(%ARG("CODE"))_""" "
     W ">",!
    W "</td>"
    ;
    W "<td width=""15%"" "_$$^%W1ALIGN_" >"
     D ROUNDBUT^%W1JS("close",$$^%W1DICT("CLOSE"),"CloseCrCard()","color:red","wh,22")
    W "</td>"
  W "</tr>",! 
 W "</table>",!
 Q
 ;
US1(STAM) ; 
 Q $$DELIS^W4PRM
 ;
 ;
TBLPHONE ; 
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" "
  W " cellpadding=""10"" width=""98%"" border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 ;
 N TDWIDTH S TDWIDTH="10%"
 W "<tr>" D NAME W "</tr>",!
 W "<tr>" D GROUP W "</tr>",!
 ;
 W "<tr>",!
 D MAZAV
 W "</tr>",!
 ;
 W "<tr>"
 D HESHBON
 W "</tr>"
 ;
 W "<tr>"
 D CONTACTMAN
 W "</tr>",!
 ;
 W "<tr>" 
  D ROLE
 W "</tr>",!
 ;
 W "<tr>",!
  D NMB
 W "</tr>",!
 ;
 W "<tr>"
  D PELE
 W "</tr>",!
 ;
 W "<tr>"
  D EMAIL("EMAIL")
 W "</tr>",!
 ;
 W "<tr>"
  D FAX
 W "</tr>",!
 ;
 W "<tr>"
  D CONTACTMAN1
 W "</tr>",!
 ;
 W "<tr>"
  D TEL1
 W "</tr>",!
 ;
 W "<tr>"
 D 
 .S ZW="" I $$US1 S ZW=$$ZW
 .D EMAIL("EMAIL1",ZW)
 W "</tr>",!
 ;
 W "<tr>"
  D CITY
 W "</tr>",!
 ;
 W "<tr>"
  D STREET
 W "</tr>",!
 ;
 W "<tr>",!
  D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
  D HOME
 W "</tr>",!
 ;
 W "<tr>"
  D FLAT
 W "</tr>",! 
 ;
 W "<tr>",!
  D ENTRANCE
 W "</tr>",!
 ; 
 W "<tr>"
  D FLOOR
 W "</tr>",!
 ;
 W "<tr>"
  D COMMENT
 W "</tr>",!
 ;
 W "<tr>",!
  D MIKUD
 W "</tr>",!
 ;
 W "<tr>"
  D CMNTIN
 W "<tr>",!
 ;
 W "<tr>"
  D TZ
 W "</tr>",!
 ;
 W "<tr>"
  D YOMH
 W "</tr>",!
 ;
 I '$$^W4LKH D
 .W "<tr>",!
 .D ISCR
 .W "</tr>",!
 .
 .W "<tr>"
 . D ISCH
 .W "</tr>",!
 .
 .W "<tr>",!
 .D ASM
 .W "</tr>",!
 .
 .W "<tr>" 
 . D HBNOW
 .W "</tr>",!
 .
 .I $$MSL^W4PRM D
 ..W "<tr>",!
 .. D BIGTM
 ..W "</tr>",!
 ..
 ..W "<tr>"  
 .. D TMBLIMH
 ..W "</tr>",!
 .
 .W "<tr>",!
 .D ORDLIST
 .W "</tr>",!
 .;
 .W "<tr>"
 . D ORDCONT
 .W "</tr>",!
 ;
 W "<tr>",!
  D GDCR
 W "</tr>",!
 ;
 W "<tr>"
  D GDAY
 W "</tr>",!
 ;
 W "<tr>",!
 D SHOTEF
 W "</tr>",!
 ;
 W "<tr>"
  D IFHBMAIL
 W "</tr>",!
 ;
 W "<tr>",!
  D ITRA
 W "</tr>",!
 ;
 W "<tr>"
  D ITRAH
 W "</tr>",! 
 W "</table>",!
 W "</div>",!
 ;
 D DIVBUT 
 Q
 ;
 ;
NETLK(LKH) ; 
 I '$$NETLK^W4PRM Q 0
 I '$G(LKH) Q 0
 N DP,DP1,DP2 
 S DP=$$NETLK^W4PRM 
 S DP1=$P(DP,":") 
 S DP2=$P(DP,":",2) 
 I DP1,DP2,LKH'<DP1&(LKH'>DP2) Q 1
 I $$PAPJ^W4PRM,"1313,1414,1515,2323,3333,4321,4444,4445,5555,5757,6666,6868,7777,8888,8989,9999,12345"[LKH Q 1
 Q 0 
 ;
CUSTNET() ;
 N MSG,DP1,DP2
 S DP=$$NETLK^W4PRM 
 S DP1=$P(DP,":") 
 S DP2=$P(DP,":",2) 
 Q $$^%W1DICT("CUSTNET",DP1_"<>"_DP2)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4CUT
W4CUT(PRINT,%CUT) ;  [ 24.04.23 14:04 ] [ 04.08.21 11:29 ] [ 11.11.08 03:29 ]
 Q:'$G(PRINT)
 I $G(%MDP("GWPC"))=80 S TXT=%CUT_$C(255) G P1
 I $D(CUTPRG) G PRG
 S TXT=$C(10,10,10,10,10)
P1 ;
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=TXT
 S TXT=%CUT
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=TXT
 S TXT=$C(10,10,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=TXT
 Q
PROGON(PRINT,%CUT) ;
PRG Q:'$G(PRINT)
 S TXT=$C(10,10,10,10,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=TXT
 S TXT=%CUT
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=TXT
 Q
 

W4CUT0
W4CUT(PRINT,%CUT) ;  [ 24.04.23 14:03 ] [ 04.08.21 11:29 ] [ 11.11.08 03:29 ] 
 Q:'$G(PRINT)
 I $G(%MDP("GWPC"))=80 S TXT=%CUT_$C(255) G P1
 I $D(CUTPRG) G PRG
 S TXT=$C(10,10,10,10,10)_%CUT_$C(10,10,10) ;$C(10)
P1 ;
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=TXT
 Q
PROGON(PRINT,%CUT) ;
PRG Q:'$G(PRINT)
 S TXT=$C(10,10,10,10,10)_%CUT
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=TXT
 Q
 
 

W4DADEL
W4DADEL(HZM) ; [ 19.09.24 12:14 ] [ 27.05.24 14:17 ] [ 26.05.24 14:25 ] 
 N TIME S TIME=$G(@$$^W4GL("W4DAH2O")@(HZM,"TIME"))
 I TIME D
 .D ^W4DASND(JB,HZM,"DEL")
 Q
 ;
DELTIME(HZM)
 K @$$^W4GL("W4DAH2O")@(HZM,"TIME")
 Q
 
 

W4DAORD
W4DAORD(HZM) ; [ 29.09.24 16:48 ] [ 27.09.24 17:18 ] [ 26.09.24 09:37 ] 
 N (JB,%ARG,%REM,HZM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S SNIF=$$SNIF
 S RES=$$^W4GETHZ(HZM) 
 S TMPORD=$$^W4TMPORD
 ;
 S UR=1
 S FRSTIT(UR)=1,FRSTADD(UR)=""
 ;
 S FILE=$$FILE(HZM)
 I $$EXIST^%L1ZOS(FILE) C FILE:(DELETE)
 ;
 O FILE:(REWIND:NEWVERSION):2
 U FILE
 ;;I $G(^DB) U 0
 ;
 W "{",!
 W """RestID"": """_$$SNIF_""", ",!
 ;
 S CUSTNAME=$$HB($$NAME^W4HZMST(HZM))
 S PHONE=$$TELB^W4HZMST(HZM)
 S EMAIL=$$EMAIL^W4HZMST(HZM)
 ;
 S ORDER=$$ORDID(SNIF,HZM)
 ;
 S DATCB=$$DATCB^W4HZMST(HZM)
 S DATE=$P(DATCB,"  ")
 S TIME=$P(DATCB,"  ",2)
 S DD=$P(DATE,".",1)
 S MM=$P(DATE,".",2)
 S YY=$P(DATE,".",3)
 I $L(YY)=2 S YY="20"_YY
 S DATE=DD_"/"_MM_"/"_YY
 ;
 S CMNT=$$HRA^W4HZMST(HZM)
 ;
 W $$ST("OrderID",ORDER)_",",!
 W $$ST("OredrTime",TIME)_",",!
 W $$ST("OredrDate",DATE)_",",!
 S TRH=$$TRH^W4HZMST(HZM),SHAA=$$SHAA^W4HZMST(HZM)
 S TRH=$TR(TRH,"./","")
 S TRH=$E(TRH,1,2)_"/"_$E(TRH,3,4)_"/20"_$E(TRH,5,6)
 W $$ST("OredrTargetTime",TRH)_",",!
 W $$ST("OredrTargetDate",SHAA)_",",!
 S READYTIME=$$READY^W4HZMST(HZM)
 I READYTIME D
 .S READYTIME=$ZD(READYTIME,"DD/MM/YYYY 24:60")
 .W $$ST("ReadinessAbsDateTime",READYTIME)_",",!
 ;
 W $$ST("OrderRemark",$$HB(CMNT))_",",!
 W $$ST("CostName",$$HB(CUSTNAME))_",",!
 W $$ST("CostPhone",PHONE)_",",!
 S TAW=$S($$TAKEAWAY^W4HZMST(HZM):"true",1:"false")
 W $$ST("TakeAway",TAW)_",",!
 W $$ST("CostAddCity",$$HB($$IR^W4HZMST(HZM)))_",",!
 W $$ST("CostAddStreet",$$HB($$KTV^W4HZMST(HZM)))_",",!
 W $$ST("CostAddBuilding",$$BAIT^W4HZMST(HZM))_",",!
 W $$ST("CostAddApartment",$$DIRA^W4HZMST(HZM))_",",!
 ;
 S COORD=$$COORD^W4HZMST(HZM)
 S COORD=$TR(COORD,";",",")
 I COORD,COORD["," D
 .N LAT,LONG
 .S LAT=$P(COORD,",")
 .S LONG=$P(COORD,",",2)
 .W """VerifiedLocation:"" :{",!
 . W """Latitude:"":"_LAT_",",!
 . W """Longitude:"":"_LONG_",",!
 .W "},",!
 ;
 W $$ST("OrderPrice",$J($$TSHL^W4HZMST(HZM),2,2))_",",!
 S MZM=$$MZM^W4HZMST(HZM)
 S IFMZM=$S(MZM:"true",1:"false")
 S IFCA=$S($$CA^W4HZMST(HZM):"true",1:"false")
 W $$ST("OrderToatalCash",$J(MZM,2,2))_",",!
 W $$ST("IsCashPaid",IFMZM)_",",!
 W $$ST("IsCardPaid",IFCA)_",",!
 W $$ST("VIP","false")_",",!
 W $$ST("ExtraSize","false")_",",!
 ;
 W """OrderContent"":[",!
 S FRSTIT(1)=1
 ;
 S MAINITEM=""
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .
 .I $P(A,"~")=0 D
 ..S MAINITEM=$P(A,"~",2),MAININD=N
 ..;;I '$G(FRSTIT(1)) W ",",!
 ..D ITEM(A,1,N) 
 .
 .I $P(A,"~")=1 D
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..S CD1=$P(A,"~",3)
 ..
 ..;;I '$$COMPLEX(MAININD) D OPT(A,1,N)
 ..D OPT(A,1,N)
 ..
 ..;;I $$COMPLEX(MAININD) D
 ...I $$CDA(CD) Q
 ...D ITEM(A,2,N)
 .
 .;;I $P(A,"~")=2 D
 ..N CD,CD1
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..S CD1=$P(A,"~",3)
 ..D OPT(A,2,N)
 ;
 D CLOSEIT(2)
 I $G(OPITEMS(2)) W "]",! S OPITEMS(2)=0 ; -- CLOSE ITEMS LEVEL 2
 D CLOSEIT(1) ; -- CLOSE ITEM
 W "]",! ; --- CLOSE ORDER CONTENT
 W "}",!; -- CLOSE ORDER
 ;
 ;;W "}",! ; -- CLOSE ALL
 ;
 C FILE
 ;
 N FLJSN S FLJSN=FILE_".json"
 S CMD="iconv -c -f cp862 -t utf-8 "_FILE_" -o "_FLJSN
 ZSY CMD
 S ER=$$SEND(FLJSN,HZM,ORDER)
 ;
 K @$$^W4TMPORD
 Q ER
 ;
 ;
ST(RKV,VL) ;
 Q """"_RKV_""": """_VL_""" "
 ;
STN(RKV,VL) ;
 Q """"_RKV_""": "_VL
 ;
 ;
ITEM(A,UR,N)
 S (FRSTIT(UR+1),FRSTSET(UR+1),FRSTOPT(UR+1),FRSTADD(UR+1))=1
 S FRSTADD(UR)=1,FRSTOPT(UR)=1,FRSTSET(UR)=1
 ;
 ;
 I '$G(FRSTIT(UR)) D
 .;;I UR=1,$G(OPIT(2)) D CLOSEIT(2) I $G(OPITEMS(2)) W "]",!
 .D CLOSEIT(UR) W ","
 ;
 I $G(FRSTIT(UR)) D
 .S OPITEMS(UR)=1
 ;
 I UR=1 K OPITEMS(2),OPIT(2),OPOPT(2),OPSET(2),OPADD(2)
 S OPADD(UR)=0,OPOPT(UR)=0,OPSET(UR)=0
 ;
 N PAR,PAR1,MH,QN,DESC,MZMN,CMST,KVZ,KVZ1
 ;
 S PAR=$P(A,"~",2)
 S PAR1=$P(A,"~",3)
 S MH=+$P(A,"~",4)
 S QN=$P(A,"~",5)
 I QN["*" S QN=$P(QN,"*")*$P(QN,"*",2)
 S QN=+QN
 S DESC=$$DESC^W4P(PAR,"H")
 ;
 W "{",!
 W $$STN("Id",PAR)_",",!
 W $$STN("Quantity",QN)_",",!
 W $$ST("Item",$$HB(PAR1))_",",!
 W $$ST("Price",$$JN(MH)),!
 ;
 S FRSTIT(UR)=0
 S OPIT(UR)=1
 Q
 ;
 ;
OPT(A,UR,N) ;
 N CDT,NMT,MHT,QNT
 ;
 S CDT=$P(A,"~",2)
 S NMT=$P(A,"~",3)
 S MHT=+$P(A,"~",4)
 S QNT=$P(A,"~",5)
 I QNT["*" S QNT=$P(QNT,"*")*$P(QNT,"*",2)
 S QNT=+QNT
G ;
 I $$CDA(CDT) Q
 ;
 I 'FRSTADD(UR) W ",",!
 ;
 I FRSTADD(UR) D
 .W ",",!
 .W """Addons"" : [",!
 .S OPSET(UR)=1
 ;
 ;;W """DeliveryContentAddon"":{",! ; -- ADD
 W "{",! ; -- ADD
 W $$ST("Id",CDT)_",",!
 W $$ST("Quantity",QNT)_",",!
 W $$ST("Item",$$HB(NMT))_",",!
 W $$STN("Price",$$JN(MHT)),!
 W "}",!
 ;
 S OPADD(UR)=1
 S FRSTADD(UR)=0
 Q
 ;
 ;
CDA(CD) 
 I $E(CD)="A" Q 1
 Q 0
 ;
COMPLEX(IND) ; -- YESH UR2
 N A,OK S OK=0
 N IND1 S IND1=IND F  S IND1=$O(@$$^W4TMPORD@(IND1)) Q:IND1=""  S A=$G(^(IND1)) Q:$P(A,"~")=0  I IND1 D  Q:OK
 .I $P(A,"~")=2 S OK=1
 Q OK
 ;
CLOSESET(UR) ;
 ;;I $G(OPSET(UR)) W "]",!,"}",! S OPSET(UR)=0 ; -- CLOSE INGREDIENTS & SET
 I $G(OPSET(UR)) W "]",! S OPSET(UR)=0 ; -- CLOSE INGREDIENTS & SET
 Q
 ;
CLOSEOPT(UR) ;
 I $G(OPOPT(UR)) W "]",! S OPOPT(UR)=0
 Q
 ;
CLOSEIT(UR) ;
 I '$G(OPIT(UR)) Q 
 D CLOSESET(UR)
 W "}",!; -- CLOSE ITEM
 S OPIT(UR)=0
 Q
 ;
HB(VL) ;
 S VL=$$RPL^%L1FRM(VL,"""","''")
 S VL=$$CLR^W3NEWHZN(VL)
 S VL=$$INVH^%L1FRM(VL)
 ;;I $G(^DB) Q $$H2U^%L1FRM(VL)
 Q $TR(VL,TS0,TSS)
 ;
 ;
SEND(FILE,HZM,ORDER)
 N (JB,%ARG,%REM,HZM,ORDER,FILE) D ^%L1TS
 ;
 S URL=$G(@$$^W4PRM@("DA","URL"))
 ;;S URL="https://api.delivapp.com/data/api/delivery"
 S KEY=$G(@$$^W4PRM@("DA","KEY"))
 ;;S KEY="C0NQ6EAP"
 S APPID=$G(@$$^W4PRM@("DA","APPID"))
 ;;S APPID="W2LCK7NA"
 ; 
 S FLOU=$P(FILE,".")_".ou"
 ;
 S ST="curl -X POST"
 S ST=ST_" -w '{""http_code"":%{http_code}}'" 
 S ST=ST_" -H ""Content-Type: application/json"" "
 S ST=ST_" -H ""X-Parse-REST-API-Key: "_KEY_""" " ; ***
 S ST=ST_" -H ""X-Parse-Application-Id: "_APPID_""" "; ***
 S ST=ST_" -d@"_FILE
 S ST=ST_" -L -s -m 30 '"_URL_"'"
 S ST=ST_" > "_FLOU
 ;
 S FLCMD=$P(FILE,".")_".cmd"
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 S H=$$DT
 S NP=$O(@$$^W4GL("W4DAPR")@(H,99999),-1)+1
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD")=HZM_" \ "_$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","A-ST")=ST
 ;
 D PROTCONT(FILE,"ORD")
 ;
 S CMD="/bin/sh "_FLCMD
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","CMD")=CMD
 ;
 ZSY CMD ; ---- !!!!
 ;
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","CMD-ZSY")=$ZSY
 I $ZSY K @$$^W4TMPORD Q $ZSY_"CMD"
 ;
 ;;ZSY "rm -f "_FLCMD ; -- *** ZMANY
 ;
 ;------------------- RESPONSE ---------------
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 S RES="",ER="",ER1="",RID=""
 ;
 N RJ S RJ=$$^%L1JSON(FLOU,TMP)
 ;
 D DB(2)
 M @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","RESP")=@TMP
 ;
 N GL S GL=$$^W4GL("W4DAORD")
 N DZ S DZ=$$^W4DZ 
 N IND S IND=$O(@GL@(DZ,HZM,99999),-1)+1
 ;
 S GL=GL_"("_DZ_","_HZM_","_IND_")"
 N GLI S GLI=$$^W4GL("W4DAORDI")_"("_HZM_")"
 ;
 S @GL=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",35)," ","-")
 ;
 N N,A S N="" F  S N=$O(@TMP@(1,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .D GET(TMP,1,N,GL)
 ;
 K @TMP
 ;
 K @GLI
 M @GLI=@GL
 S @GLI=DZ
 ;
 S ORDDA=ORDER
 S ERCD=$G(@GLI@("http_code"))
 I $$FUNC^%UCASE(ERCD)="200" S RES=0
 E  S RES=ERCD
 ;
 I ORDDA,RES=0 D 
 .N DZ S DZ=$$^W4DZ
 .S @$$^W4GL("W4DAH2O")@(HZM)=ORDDA
 .S @$$^W4GL("W4DAH2O")@(HZM,"TIME")=$H
 .S @$$^W4GL("W4DAH2OD")@(DZ,HZM)=ORDDA
 .S @$$^W4GL("W4DAO2H")@(ORDDA)=HZM
 .S @$$^W4GL("W4DAO2HD")@(DZ,ORDDA)=HZM
 .S @$$^W4GL("W4DAO2HD")@(DZ,ORDDA)=HZM
 .S @$$^W4ORD@(HZM,"ORDDA")=ORDDA_"\0\"_$ZD($H,"DD.MM.YY 24:60")
 ;
 I RES S @$$^W4ORD@(HZM,"ORDDA")=ORDDA_"\"_RES_"\"_$ZD($H,"DD.MM.YY 24:60")
 Q RES
 ;
 ;
 ;
COURIER(HZM) ;
 Q
  W ",",!
  W """courier"": {",!
  S PICKUP=""
  W $$STN("app_courier","true")_",",!
  W $$ST("pickup_time",PICKUP)_",",!
  S PSL=$$PSL^W4HZMST(HZM),PSL1=""
  I PSL S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
  W $$ST("name",$$HB(PSL1))_",",!
  S LABEL=""
  W $$ST("label",LABEL),!
  W "  }",!; -- CLOSE COURIER
 Q
 ;
DB(VL) 
 Q 
 ; 
DT() ;
 Q $$^W4DZ 
 ;
SNIF() ;
 ;;Q "123456" ; ***
 I $G(@$$^W4PRM@("DA","MSD")) Q ^("MSD")
 I $G(@$$^W4PRM@("IT4WEB","MSD")) Q ^("MSD")
 Q $G(@$$^W4PRM@("WEB","MSD"))
 ;
RESTNAME() ;
 I $L($G(@$$^W4PL@("ESEK",1.5))) Q ^(1.5)
 Q $G(@$$^W4PL@("ESEK",1))
 ;
JN(VL) ;
 Q $J(VL,2,2)
 ;
DIR() ;
 Q "/tmp/"
 ;
FILE(HZM)
 Q $$DIR_"da"_$$DT_"_"_HZM_"_"_JB
 ;
 ;
 ;
GET(GL1,I1,I2,GL2) ; 
 N A S A=$G(@GL1@(I1,I2))
 N A1,A2 
 S A1=$$SPA^%L1FRM($P(A,":"))
 I $E(A1)="""" S A1=$E(A1,2,$L(A1)-1)
 S A2=$$SPA^%L1FRM($P(A,":",2))
 I $E(A2)="""" S A2=$E(A2,2,$L(A2)-1)
 I A1'="" S @GL2@(A1)=A2
 Q 
 ;
PROTCONT(FILE,IND) ; 
 O FILE:(REWIND:READONLY)
 U FILE
 N A,SH S SH=0
 F  R A Q:$ZEOF  D
 .S SH=SH+1
 .S @$$^W4GL("W4DAPR")@(H,NP,HZM,IND,"CONT",SH)=A
 C FILE
 Q
 ;
ORDID(SNIF,HZM) ;
 Q $TR($J(SNIF,5)," ",0)_"-"_$TR($J(HZM,7)," ",0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DAORD0
W4DAORD(HZM) ; [ 23.09.24 20:27 ] [ 22.09.24 12:09 ] [ 20.09.24 04:47 ] 
 N (JB,%ARG,%REM,HZM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S SNIF=$$SNIF
 S RES=$$^W4GETHZ(HZM) 
 S TMPORD=$$^W4TMPORD
 ;
 S UR=1
 S FRSTIT(UR)=1,FRSTADD(UR)=""
 ;
 S FILE=$$FILE(HZM)
 I $$EXIST^%L1ZOS(FILE) C FILE:(DELETE)
 ;
 O FILE:(REWIND:NEWVERSION):2
 U FILE
 I $G(^DB) U 0
 ;
 W "{",!
 W """RestID"": """_$$SNIF_""", ",!
 ;
 S CUSTNAME=$$HB($$NAME^W4HZMST(HZM))
 S PHONE=$$TELB^W4HZMST(HZM)
 S EMAIL=$$EMAIL^W4HZMST(HZM)
 ;
 S ORDER=$$ORDID(SNIF,HZM)
 ;
 S DATCB=$$DATCB^W4HZMST(HZM)
 S DATE=$P(DATCB,"  ")
 S TIME=$P(DATCB,"  ",2)
 S DD=$P(DATE,".",1)
 S MM=$P(DATE,".",2)
 S YY=$P(DATE,".",3)
 I $L(YY)=2 S YY="20"_YY
 S DATE=DD_"/"_MM_"/"_YY
 ;
 S CMNT=$$HRA^W4HZMST(HZM)
 ;
 W $$ST("OrderID",ORDER)_",",!
 W $$ST("OredrTime",TIME)_",",!
 W $$ST("OredrDate",DATE)_",",!
 S TRH=$$TRH^W4HZMST(HZM),SHAA=$$SHAA^W4HZMST(HZM)
 S TRH=$TR(TRH,"./","")
 S TRH=$E(TRH,1,2)_"/"_$E(TRH,3,4)_"/20"_$E(TRH,5,6)
 W $$ST("OredrTargetTime",TRH)_",",!
 W $$ST("OredrTargetDate",SHAA)_",",!
 S READYTIME=$$READY^W4HZMST(HZM)
 I READYTIME D
 .S READYTIME=$ZD(READYTIME,"DD/MM/YYYY 24:60")
 .W $$ST("ReadinessAbsDateTime",READYTIME)_",",!
 ;
 W $$ST("OrderRemark",$$HB(CMNT))_",",!
 W $$ST("CostName",$$HB(CUSTNAME))_",",!
 W $$ST("CostPhone",PHONE)_",",!
 S TAW=$S($$TAKEAWAY^W4HZMST(HZM):"true",1:"false")
 W $$ST("TakeAway",TAW)_",",!
 W $$ST("CostAddCity",$$HB($$IR^W4HZMST(HZM)))_",",!
 W $$ST("CostAddStreet",$$HB($$KTV^W4HZMST(HZM)))_",",!
 W $$ST("CostAddBuilding",$$BAIT^W4HZMST(HZM))_",",!
 W $$ST("CostAddApartment",$$DIRA^W4HZMST(HZM))_",",!
 ;
 S COORD=$$COORD^W4HZMST(HZM)
 S COORD=$TR(COORD,";",",")
 I COORD,COORD["," D
 .N LAT,LONG
 .S LAT=$P(COORD,",")
 .S LONG=$P(COORD,",",2)
 .W """VerifiedLocation:"" :{",!
 . W """Latitude:"":"_LAT_",",!
 . W """Longitude:"":"_LONG_",",!
 .W "},",!
 ;
 W $$ST("OrderPrice",$J($$TSHL^W4HZMST(HZM),2,2))_",",!
 S MZM=$$MZM^W4HZMST(HZM)
 S IFMZM=$S(MZM:"true",1:"false")
 S IFCA=$S($$CA^W4HZMST(HZM):"true",1:"false")
 W $$ST("OrderToatalCash",$J(MZM,2,2))_",",!
 W $$ST("IsCashPaid",IFMZM)_",",!
 W $$ST("IsCardPaid",IFCA)_",",!
 W $$ST("VIP","false")_",",!
 W $$ST("ExtraSize","false")_",",!
 ;
 W """OrderContent"":[",!
 S FRSTIT(1)=1
 ;
 S MAINITEM=""
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .
 .I $P(A,"~")=0 D
 ..S MAINITEM=$P(A,"~",2),MAININD=N
 ..I '$G(FRSTIT(1)) W ",",!
 ..D ITEM(A,1,N) 
 .
 .I $P(A,"~")=1 D
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..S CD1=$P(A,"~",3)
 ..
 ..I '$$COMPLEX(MAININD) D OPT(A,1,N)
 ..
 ..I $$COMPLEX(MAININD) D
 ...I $$CDA(CD) Q
 ...D ITEM(A,2,N)
 .
 .I $P(A,"~")=2 D
 ..N CD,CD1
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..S CD1=$P(A,"~",3)
 ..D OPT(A,2,N)
 ;
 D CLOSEIT(2)
 I $G(OPITEMS(2)) W "]",! S OPITEMS(2)=0 ; -- CLOSE ITEMS LEVEL 2
 D CLOSEIT(1) ; -- CLOSE ITEM
 W "]",! ; --- CLOSE ORDER CONTENT
 W "},",!; -- CLOSE ORDER
 ;
 W "}",! ; -- CLOSE ALL
 ;
 C FILE
 ;
 ZSY "iconv -c -f cp862 -t utf-8 "_FILE_" -o "_FILE_".json"
 ;
 S ER=$$SEND(FILE_".json",HZM)
 ;
 K @$$^W4TMPORD
 Q ER
 ;
 ;
ST(RKV,VL) ;
 Q """"_RKV_""": """_VL_""" "
 ;
STN(RKV,VL) ;
 Q """"_RKV_""": "_VL
 ;
 ;
ITEM(A,UR,N)
 S (FRSTIT(UR+1),FRSTSET(UR+1),FRSTOPT(UR+1),FRSTADD(UR+1))=1
 S FRSTADD(UR)=1,FRSTOPT(UR)=1,FRSTSET(UR)=1
 ;
 ;
 I '$G(FRSTIT(UR)) D
 .I UR=1,$G(OPIT(2)) D CLOSEIT(2) I $G(OPITEMS(2)) W "]",!
 .D CLOSEIT(UR)
 .W "},",!
 ;
 I $G(FRSTIT(UR)) D
 .S OPITEMS(UR)=1
 ;
 I UR=1 K OPITEMS(2),OPIT(2),OPOPT(2),OPSET(2),OPADD(2)
 S OPADD(UR)=0,OPOPT(UR)=0,OPSET(UR)=0
 ;
 N PAR,PAR1,MH,QN,DESC,MZMN,CMST,KVZ,KVZ1
 ;
 S PAR=$P(A,"~",2)
 S PAR1=$P(A,"~",3)
 S MH=+$P(A,"~",4)
 S QN=$P(A,"~",5)
 I QN["*" S QN=$P(QN,"*")*$P(QN,"*",2)
 S QN=+QN
 S DESC=$$DESC^W4P(PAR,"H")
 ;
 W "{",!
 W $$STN("Id",PAR)_",",!
 W $$STN("Quantity",QN)_",",!
 W $$ST("Item",$$HB(PAR1))_",",!
 W $$ST("Price",$$JN(MH)),!
 ;
 S FRSTIT(UR)=0
 S OPIT(UR)=1
 Q
 ;
 ;
OPT(A,UR,N) ;
 N CDT,NMT,MHT,QNT
 ;
 S CDT=$P(A,"~",2)
 S NMT=$P(A,"~",3)
 S MHT=+$P(A,"~",4)
 S QNT=$P(A,"~",5)
 I QNT["*" S QNT=$P(QNT,"*")*$P(QNT,"*",2)
 S QNT=+QNT
 ;
 I $$CDA(CDT) Q
 ;
 I 'FRSTADD(UR) W ",",!
 ;
 I FRSTADD(UR) D
 .W ",",!
 .W """Addons"" : [",!
 .S OPSET(UR)=1
 ;
 W """DeliveryContentAddon"":{",! ; -- ADD
 W $$ST("Id",CDT)_",",!
 W $$ST("Quantity",QNT),!
 W $$ST("Item",$$HB(NMT))_",",!
 W $$STN("Price",$$JN(MHT))_",",!
 W "}",!
 ;
 S OPADD(UR)=1
 S FRSTADD(UR)=0
 Q
 ;
 ;
CDA(CD) 
 I $E(CD)="A" Q 1
 Q 0
 ;
COMPLEX(IND) ; -- YESH UR2
 N A,OK S OK=0
 N IND1 S IND1=IND F  S IND1=$O(@$$^W4TMPORD@(IND1)) Q:IND1=""  S A=$G(^(IND1)) Q:$P(A,"~")=0  I IND1 D  Q:OK
 .I $P(A,"~")=2 S OK=1
 Q OK
 ;
CLOSESET(UR) ;
 I $G(OPSET(UR)) W "]",!,"}",! S OPSET(UR)=0 ; -- CLOSE INGREDIENTS & SET
 Q
 ;
CLOSEOPT(UR) ;
 I $G(OPOPT(UR)) W "]",! S OPOPT(UR)=0
 Q
 ;
CLOSEIT(UR) ;
 I '$G(OPIT(UR)) Q 
 ;;D CLOSESET(UR)
 D CLOSEOPT(UR)
 W "}",!; -- CLOSE ITEM
 S OPIT(UR)=0
 Q
 ;
HB(VL) ;
 S VL=$$RPL^%L1FRM(VL,"""","''")
 S VL=$$CLR^W3NEWHZN(VL)
 S VL=$$INVH^%L1FRM(VL)
 ;;I $G(^DB) Q $$H2U^%L1FRM(VL)
 Q $TR(VL,TS0,TSS)
 ;
 ;
SEND(FILE,HZM)
 N (JB,%ARG,%REM,HZM,FILE) D ^%L1TS
 ;
 S URL=$G(@$$^W4PRM@("DA","URL"))
 S URL="https://api.delivapp.com/data/api/delivery"
 ; 
 S FLOU=$P(FILE,".")_".ou"
 ;
 S ST="curl -X POST"
 S ST=ST_" -H ""Content-Type: application/json"" "
 S ST=ST_" -H ""X-Parse-REST-API-Key: C0NQ6EAP""" ; ***
 S ST=ST_" -H ""X-Parse-Application-Id: W2LCK7NA"" "; ***
 S ST=ST_" -d@"_FILE
 S ST=ST_" -L -s -m 30 '"_URL_"'"
 S ST=ST_" > "_FLOU
 ;
 S FLCMD=$P(FILE,".")_".cmd"
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 S H=$$DT
 S NP=$O(@$$^W4GL("W4DAPR")@(H,99999),-1)+1
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD")=HZM_" \ "_$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","A-ST")=ST
 ;
 D PROTCONT(FILE,"ORD")
 ;
 S CMD="/bin/sh "_FLCMD
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","CMD")=CMD
 ;
 ZSY CMD
 ;
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","CMD-ZSY")=$ZSY
 I $ZSY K @$$^W4TMPORD Q $ZSY_"CMD"
 ;
 ;;ZSY "rm -f "_FLCMD ; -- *** ZMANY
 ;
 ;------------------- RESPONSE ---------------
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 S RES="",ER="",ER1="",RID=""
 N RJ S RJ=$$^%L1JSON(FLOU,TMP)
 ;
 D DB(2)
 M @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","RESP")=@TMP
 ;
 N GL S GL=$$^W4GL("W4DAORD")
 N DZ S DZ=$$^W4DZ 
 N IND S IND=$O(@GL@(DZ,HZM,99999),-1)+1
 ;
 S GL=GL_"("_DZ_","_HZM_","_IND_")"
 N GLI S GLI=$$^W4GL("W4DAORDI")_"("_HZM_")"
 ;
 S @GL=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",35)," ","-")
 ;
 N N,A S N="" F  S N=$O(@TMP@(1,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .D GET(TMP,1,N,GL)
 ;
 K @TMP
 ;
 K @GLI
 M @GLI=@GL
 S @GLI=DZ
 ;
 S ORDDA=$G(@GLI@("order_number"))
 S ERCD=$G(@GL@("error_code"))
 I $$FUNC^%UCASE(ERCD)="NULL"!((ERCD="")&ORDDA) S RES=0
 E  S RES=ERCD
 ;
 I ORDDA,RES=0 D 
 .N DZ S DZ=$$^W4DZ
 .S @$$^W4GL("W4DAH2O")@(HZM)=ORDDA
 .S @$$^W4GL("W4DAH2O")@(HZM,"TIME")=$H
 .S @$$^W4GL("W4DAH2OD")@(DZ,HZM)=ORDDA
 .S @$$^W4GL("W4DAO2H")@(ORDDA)=HZM
 .S @$$^W4GL("W4DAO2HD")@(DZ,ORDDA)=HZM
 ;
 Q RES
 ;
 ;
 ;
COURIER(HZM) ;
 Q
  W ",",!
  W """courier"": {",!
  S PICKUP=""
  W $$STN("app_courier","true")_",",!
  W $$ST("pickup_time",PICKUP)_",",!
  S PSL=$$PSL^W4HZMST(HZM),PSL1=""
  I PSL S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
  W $$ST("name",$$HB(PSL1))_",",!
  S LABEL=""
  W $$ST("label",LABEL),!
  W "  }",!; -- CLOSE COURIER
 Q
 ;
DB(VL) 
 Q 
 ; 
DT() ;
 Q $$^W4DZ 
 ;
SNIF() ;
 Q "123456" ; ***
 I $G(@$$^W4PRM@("IT4WEB","MSD")) Q ^("MSD")
 Q $G(@$$^W4PRM@("WEB","MSD"))
 ;
RESTNAME() ;
 I $L($G(@$$^W4PL@("ESEK",1.5))) Q ^(1.5)
 Q $G(@$$^W4PL@("ESEK",1))
 ;
JN(VL) ;
 Q $J(VL,2,2)
 ;
DIR() ;
 Q "/tmp/"
 ;
FILE(HZM)
 Q $$DIR_"da"_$$DT_"_"_HZM_"_"_JB
 ;
 ;
 ;
GET(GL1,I1,I2,GL2) ; 
 N A S A=$G(@GL1@(I1,I2))
 N A1,A2 
 S A1=$$SPA^%L1FRM($P(A,":"))
 I $E(A1)="""" S A1=$E(A1,2,$L(A1)-1)
 S A2=$$SPA^%L1FRM($P(A,":",2))
 I $E(A2)="""" S A2=$E(A2,2,$L(A2)-1)
 I A1'="" S @GL2@(A1)=A2
 Q 
 ;
PROTCONT(FILE,IND) ; 
 O FILE:(REWIND:READONLY)
 U FILE
 N A,SH S SH=0
 F  R A Q:$ZEOF  D
 .S SH=SH+1
 .S @$$^W4GL("W4DAPR")@(H,NP,HZM,IND,"CONT",SH)=A
 C FILE
 Q
 ;
ORDID(SNIF,HZM) ;
 Q $TR($J(SNIF,5)," ",0)_"-"_$TR($J(HZM,7)," ",0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DAORDX
W4DAORDX(HZM) ; [ 22.09.24 14:02 ] [ 20.09.24 04:47 ] [ 19.09.24 15:39 ] 
 N (JB,%ARG,%REM,HZM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S SNIF=$$SNIF
 S RES=$$^W4GETHZ(HZM) 
 S TMPORD=$$^W4TMPORD
 ;
 S UR=1
 S FRSTIT(UR)=1,FRSTADD(UR)=""
 ;
 S FILE=$$FILE(HZM)
 I $$EXIST^%L1ZOS(FILE) C FILE:(DELETE)
 ;
 O FILE:(REWIND:NEWVERSION):2
 U FILE
 I $G(^DB) U 0
 ;
 W "<DeliveryOrder>",!
 W "<RestID>"_$$SNIF_"</RestID>",!
 ;
 S CUSTNAME=$$HB($$NAME^W4HZMST(HZM))
 S PHONE=$$TELB^W4HZMST(HZM)
 S EMAIL=$$EMAIL^W4HZMST(HZM)
 ;
 S ORDER=$$ORDID(SNIF,HZM)
 ;
 S DATCB=$$DATCB^W4HZMST(HZM)
 S DATE=$P(DATCB,"  ")
 S TIME=$P(DATCB,"  ",2)
 S DD=$P(DATE,".",1)
 S MM=$P(DATE,".",2)
 S YY=$P(DATE,".",3)
 I $L(YY)=2 S YY="20"_YY
 S DATE=DD_"/"_MM_"/"_YY
 ;
 S CMNT=$$HRA^W4HZMST(HZM)
 ;
 W $$ST("OrderID",ORDER),!
 W $$ST("OredrTime",TIME),!
 W $$ST("OredrDate",DATE),!
 S TRH=$$TRH^W4HZMST(HZM),SHAA=$$SHAA^W4HZMST(HZM)
 S TRH=$TR(TRH,"./","")
 S TRH=$E(TRH,1,2)_"/"_$E(TRH,3,4)_"/20"_$E(TRH,5,6)
 W $$ST("OredrTargetTime",TRH),!
 W $$ST("OredrTargetDate",SHAA),!
 S READYTIME=$$READY^W4HZMST(HZM)
 I READYTIME D
 .S READYTIME=$ZD(READYTIME,"DD/MM/YYYY 24:60")
 .W $$ST("ReadinessAbsDateTime",READYTIME),!
 ;
 W $$ST("OrderRemark",$$HB(CMNT)),!
 W $$ST("CostName",$$HB(CUSTNAME)),!
 W $$ST("CostPhone",PHONE),!
 S TAW=$S($$TAKEAWAY^W4HZMST(HZM):"true",1:"false")
 W $$ST("TakeAway",TAW),!
 W $$ST("CostAddCity",$$HB($$IR^W4HZMST(HZM))),!
 W $$ST("CostAddStreet",$$HB($$KTV^W4HZMST(HZM))),!
 W $$ST("CostAddBuilding",$$BAIT^W4HZMST(HZM)),!
 W $$ST("CostAddApartment",$$DIRA^W4HZMST(HZM)),!
 ;
 S COORD=$$COORD^W4HZMST(HZM)
 S COORD=$TR(COORD,";",",")
 ;
 I COORD,COORD["," D
 .N LAT,LONG
 .S LAT=$P(COORD,",")
 .S LONG=$P(COORD,",",2)
 .W "<VerifiedLocation>",!
 . W $$ST("<Latitude>",LAT)
 . W $$ST("<Longitude>",LONG)
 .W "</VerifiedLocation>",!
 ;
 W $$ST("OrderPrice",$J($$TSHL^W4HZMST(HZM),2,2)),!
 S MZM=$$MZM^W4HZMST(HZM)
 S IFMZM=$S(MZM:"true",1:"false")
 S IFCA=$S($$CA^W4HZMST(HZM):"true",1:"false")
 W $$ST("OrderToatalCash",$J(MZM,2,2)),!
 W $$ST("IsCashPaid",IFMZM),!
 W $$ST("IsCardPaid",IFCA),!
 W $$ST("VIP","false"),!
 W $$ST("ExtraSize","false"),!
 ;
 W "<OrderContent>",!
 S FRSTIT(1)=1
 ;
 S MAINITEM=""
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .
 .I $P(A,"~")=0 D
 ..S MAINITEM=$P(A,"~",2),MAININD=N
 ..I '$G(FRSTIT(1)) W "</DeliveryContent>",!
 ..D ITEM(A,1,N) 
 .
 .I $P(A,"~")=1 D
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..S CD1=$P(A,"~",3)
 ..
 ..I '$$COMPLEX(MAININD) D OPT(A,1,N)
 ..
 ..;;I $$COMPLEX(MAININD) D
 ...;;I $$CDA(CD) Q
 ...;;D ITEM(A,2,N)
 .
 .;;I $P(A,"~")=2 D
 ..N CD,CD1
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..S CD1=$P(A,"~",3)
 ..D OPT(A,2,N)
 ;
 D CLOSEIT(2)
 I $G(OPITEMS(2)) D
 .W "</DeliveryContentAddon>",! S OPITEMS(2)=0 ; -- CLOSE ITEMS LEVEL 2
 .W "</Addons>",!
 ;
 W "</DeliveryContent>",! D CLOSEIT(1) ; -- CLOSE ITEM
 W "</OrderContent>",! ; --- CLOSE ORDER CONTENT
 ;
 W "</DeliveryOrder>",! ; -- CLOSE ALL
 ;
 C FILE
 ;
 ZSY "iconv -c -f cp862 -t utf-8 "_FILE_" -o "_FILE_".xml"
 ;
 S ER=$$SEND(FILE_".xml",HZM)
 ;
 K @$$^W4TMPORD
 Q ER
 ;
 ;
ST(RKV,VL) ;
 Q "<"_RKV_">"_VL_"</"_RKV_">"
 ;
STN(RKV,VL) ;
 Q """"_RKV_""": "_VL
 ;
 ;
ITEM(A,UR,N)
 S (FRSTIT(UR+1),FRSTSET(UR+1),FRSTOPT(UR+1),FRSTADD(UR+1))=1
 S FRSTADD(UR)=1,FRSTOPT(UR)=1,FRSTSET(UR)=1
 ;
 I '$G(FRSTIT(UR)) D
 .I UR=1,$G(OPIT(2)) D CLOSEIT(2) ;;I $G(OPITEMS(2)) W "]",!
 .D CLOSEIT(UR)
 .W "</DeliveryContent>",!
 ;
 I $G(FRSTIT(UR)) D
 .S OPITEMS(UR)=1
 ;
 I UR=1 K OPITEMS(2),OPIT(2),OPOPT(2),OPSET(2),OPADD(2)
 S OPADD(UR)=0,OPOPT(UR)=0,OPSET(UR)=0
 ;
 N PAR,PAR1,MH,QN,DESC,MZMN,CMST,KVZ,KVZ1
 ;
 S PAR=$P(A,"~",2)
 S PAR1=$P(A,"~",3)
 S MH=+$P(A,"~",4)
 S QN=$P(A,"~",5)
 I QN["*" S QN=$P(QN,"*")*$P(QN,"*",2)
 S QN=+QN
 S DESC=$$DESC^W4P(PAR,"H")
 ;
 W "<DeliveryContent>",!
 W $$ST("Id",PAR),!
 W $$ST("Quantity",QN),!
 W $$ST("Item",$$HB(PAR1)),!
 W $$ST("Price",$$JN(MH)),!
 ;
 S FRSTIT(UR)=0
 S OPIT(UR)=1
 Q
 ;
 ;
OPT(A,UR,N) ;
 N CDT,NMT,MHT,QNT
 ;
 S CDT=$P(A,"~",2)
 S NMT=$P(A,"~",3)
 S MHT=+$P(A,"~",4)
 S QNT=$P(A,"~",5)
 I QNT["*" S QNT=$P(QNT,"*")*$P(QNT,"*",2)
 S QNT=+QNT
 ;
 I $$CDA(CDT) Q
 ;
 I 'FRSTADD(UR) W "</DeliveryContentAddon>",!
 ;
 I FRSTADD(UR) D
 .W "<Addons>",!
 .S OPSET(UR)=1
 ;
 W "<DeliveryContentAddon>",! ; -- ADD
  W $$ST("Id",CDT),!
  W $$ST("Quantity",QNT),!
  W $$ST("Item",$$HB(NMT)),!
  W $$ST("Price",$$JN(MHT)),!
 W "</DeliveryContentAddon>",!
 ;
 S OPADD(UR)=1
 S FRSTADD(UR)=0
 Q
 ;
 ;
CDA(CD) 
 I $E(CD)="A" Q 1
 Q 0
 ;
COMPLEX(IND) ; -- YESH UR2
 N A,OK S OK=0
 N IND1 S IND1=IND F  S IND1=$O(@$$^W4TMPORD@(IND1)) Q:IND1=""  S A=$G(^(IND1)) Q:$P(A,"~")=0  I IND1 D  Q:OK
 .I $P(A,"~")=2 S OK=1
 Q OK
 ;
CLOSESET(UR) ;
 I $G(OPSET(UR)) W "]",!,"}",! S OPSET(UR)=0 ; -- CLOSE INGREDIENTS & SET
 Q
 ;
CLOSEOPT(UR) ;
 I $G(OPOPT(UR)) S OPOPT(UR)=0
 Q
 ;
CLOSEIT(UR) ;
 I '$G(OPIT(UR)) Q 
 D CLOSEOPT(UR)
 S OPIT(UR)=0
 Q
 ;
HB(VL) ;
 S VL=$$RPL^%L1FRM(VL,"""","''")
 S VL=$$CLR^W3NEWHZN(VL)
 S VL=$$INVH^%L1FRM(VL)
 ;;I $G(^DB) Q $$H2U^%L1FRM(VL)
 Q $TR(VL,TS0,TSS)
 ;
 ;
SEND(FILE,HZM)
 N (JB,%ARG,%REM,HZM,FILE) D ^%L1TS
 ;
 S URL=$G(@$$^W4PRM@("DA","URL"))
 S URL="https://api.delivapp.com/data/api/delivery"
 ; 
 S FLOU=$P(FILE,".")_".ou"
 ;
 S ST="curl -X POST"
 S ST=ST_" -H ""Content-Type: application/xml"" "
 S ST=ST_" -H ""X-Parse-REST-API-Key: C0NQ6EAP""" ; ***
 S ST=ST_" -H ""X-Parse-Application-Id: W2LCK7NA"" "; ***
 S ST=ST_" -d@"_FILE
 S ST=ST_" -L -s -m 30 '"_URL_"'"
 S ST=ST_" > "_FLOU
 ;
 S FLCMD=$P(FILE,".")_".cmd"
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 S H=$$DT
 S NP=$O(@$$^W4GL("W4DAPR")@(H,99999),-1)+1
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD")=HZM_" \ "_$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","A-ST")=ST
 ;
 D PROTCONT(FILE,"ORD")
 ;
 S CMD="/bin/sh "_FLCMD
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","CMD")=CMD
 ;
 ZSY CMD
 ;
 S @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","CMD-ZSY")=$ZSY
 I $ZSY K @$$^W4TMPORD Q $ZSY_"CMD"
 ;
 ;;ZSY "rm -f "_FLCMD ; -- *** ZMANY
 ;
 ;------------------- RESPONSE ---------------
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 S RES="",ER="",ER1="",RID=""
 ;;N RJ S RJ=$$^%L1JSON(FLOU,TMP)
 ;
 D DB(2)
 M @$$^W4GL("W4DAPR")@(H,NP,HZM,"ORD","RESP")=@TMP
 ;
 N GL S GL=$$^W4GL("W4DAORD")
 N DZ S DZ=$$^W4DZ 
 N IND S IND=$O(@GL@(DZ,HZM,99999),-1)+1
 ;
 S GL=GL_"("_DZ_","_HZM_","_IND_")"
 N GLI S GLI=$$^W4GL("W4DAORDI")_"("_HZM_")"
 ;
 S @GL=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",35)," ","-")
 ;
 N N,A S N="" F  S N=$O(@TMP@(1,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .D GET(TMP,1,N,GL)
 ;
 K @TMP
 ;
 K @GLI
 M @GLI=@GL
 S @GLI=DZ
 ;
 S ORDDA=$G(@GLI@("order_number"))
 S ERCD=$G(@GL@("error_code"))
 I $$FUNC^%UCASE(ERCD)="NULL"!((ERCD="")&ORDDA) S RES=0
 E  S RES=ERCD
 ;
 I ORDDA,RES=0 D 
 .N DZ S DZ=$$^W4DZ
 .S @$$^W4GL("W4DAH2O")@(HZM)=ORDDA
 .S @$$^W4GL("W4DAH2O")@(HZM,"TIME")=$H
 .S @$$^W4GL("W4DAH2OD")@(DZ,HZM)=ORDDA
 .S @$$^W4GL("W4DAO2H")@(ORDDA)=HZM
 .S @$$^W4GL("W4DAO2HD")@(DZ,ORDDA)=HZM
 ;
 Q RES
 ;
 ;
 ;
COURIER(HZM) ;
 Q
 ;
DB(VL) 
 Q 
 ; 
DT() ;
 Q $$^W4DZ 
 ;
SNIF() ;
 Q "123456" ; ***
 I $G(@$$^W4PRM@("IT4WEB","MSD")) Q ^("MSD")
 Q $G(@$$^W4PRM@("WEB","MSD"))
 ;
RESTNAME() ;
 I $L($G(@$$^W4PL@("ESEK",1.5))) Q ^(1.5)
 Q $G(@$$^W4PL@("ESEK",1))
 ;
JN(VL) ;
 Q $J(VL,2,2)
 ;
DIR() ;
 Q "/tmp/"
 ;
FILE(HZM)
 Q $$DIR_"da"_$$DT_"_"_HZM_"_"_JB
 ;
 ;
 ;
GET(GL1,I1,I2,GL2) ; 
 N A S A=$G(@GL1@(I1,I2))
 N A1,A2 
 S A1=$$SPA^%L1FRM($P(A,":"))
 I $E(A1)="""" S A1=$E(A1,2,$L(A1)-1)
 S A2=$$SPA^%L1FRM($P(A,":",2))
 I $E(A2)="""" S A2=$E(A2,2,$L(A2)-1)
 I A1'="" S @GL2@(A1)=A2
 Q 
 ;
PROTCONT(FILE,IND) ; 
 O FILE:(REWIND:READONLY)
 U FILE
 N A,SH S SH=0
 F  R A Q:$ZEOF  D
 .S SH=SH+1
 .S @$$^W4GL("W4DAPR")@(H,NP,HZM,IND,"CONT",SH)=A
 C FILE
 Q
 ;
ORDID(SNIF,HZM) ;
 Q $TR($J(SNIF,5)," ",0)_"-"_$TR($J(HZM,7)," ",0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DASND
W4DASND(JB,HZ,FUNC) ; [ 29.09.24 14:04 ] [ 27.09.24 17:31 ] [ 26.09.24 06:08 ] 
 N (JB,%ARG,HZ,FUNC)
 D ^%L1TS
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(HZ) Q
 ;
 S PSL="",PSLNM="",PSLPHONE=""
 I HZ["<>" S PSL=$P(HZ,"<>",2),HZ=$P(HZ,"<>")
 I PSL D
 .S PSLNM=$TR($$INVH^%L1FRM($G(@$$^W4GL("P1SL")@(PSL))),TS0,TS1)
 .S PSLPHONE=$P($G(@$$^W4GL("P1SL")@(PSL,1)),"\",2)
 ;
 S FUNC=$G(FUNC)
 S STAT="",URL=""
 ;
 I FUNC="DEL",$D(@$$^W4ORD@(HZ)),'$$^W4KIOSKO(HZ) S STAT="canceled" D
 .S @$$^W4ORD@(HZ,"DACNC")=$H
 .K @$$^W4GL("W4DAH2O")@(HZ,"TIME")
 .S URL=$G(@$$^W4PRM@("DA","URLDEL"))
 .I URL="" S URL="https://api.delivapp.com/data/api/delivery/delete"
 ;
 I STAT=""!(URL="") Q
 ;
 ;;S SRCID=$$DAORD(HZ,"source_id")
 ;;S ORDID=$$DAORD(HZ,"order_id")
 ;
 S SNIF=$$SNIF^W4DAORD
 S ORDID=$$ORDID^W4DAORD(SNIF,HZ)
 ;
 ;;I $$FUNC^%UCASE(SRCID)="NULL" Q
 ;;I $$FUNC^%UCASE(ORDID)="NULL" Q
 ;
 N FL S FL="/tmp/tmpdadata"_$$DT_"-"_JB_"-"_HZ_"-"_FUNC
 I $$EXIST^%L1ZOS(FL) C FL:(DELETE)
 O FL:(NEWVERSION:WRITE)
 U FL
  W "{",!
  W " ""RestID"": """_SNIF_""",",!
  W " ""OrderID"": """_ORDID_""" ",!
  W "}",!
 C FL
 ;
 S FLUTF=FL_".utf8"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FL_" -o "_FLUTF
 ;
 ;;S URL=$G(@$$^W4PRM@("DA","URLUPD"))
 S HD="Content-Type: application/json"
 ;
 D SEND(HZ,ORDID,FUNC,STAT,URL,HD,"POST",FLUTF)
 Q
 ;
 ;
SEND(HZ,ORDID,FUNC,STAT,URL,HD,HOW,FLDATA) ;
 N (JB,%ARG,%REM,HZ,ORDID,FUNC,STAT,URL,HD,HOW,FLDATA)
 S DIR="/tmp/"
 S HOW=$G(HOW)
 ;
 S KEY=$G(@$$^W4PRM@("DA","KEY"))
 ;;S KEY="C0NQ6EAP"
 S APPID=$G(@$$^W4PRM@("DA","APPID"))
 ;;S APPID="W2LCK7NA"
 ;
 S FLDAOU=DIR_"fldaou"_$$DT_"-"_JB_"-"_HZ_"-"_FUNC
 ;
 S ST="curl -X POST"
 S ST=ST_" -w '{""http_code"":%{http_code}}'" 
 S ST=ST_" -H ""Content-Type: application/json"" "
 S ST=ST_" -H ""X-Parse-REST-API-Key: "_KEY_""" " ; ***
 S ST=ST_" -H ""X-Parse-Application-Id: "_APPID_""" "; ***
 S ST=ST_" -L -s -m 30 '"_URL_"'"
 I $L($G(FLDATA)) S ST=ST_" -d@"_FLDATA
 S ST=ST_" > "_FLDAOU
 ;
 S FLCMD=DIR_"fldacmd"_$$DT_"-"_JB_"-"_HZ_"-"_FUNC
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 S H=$$DT
 S NP=$O(@$$^W4GL("W4DAPR")@(H,99999),-1)+1
 ;
 S @$$^W4GL("W4DAPR")@(H,NP,HZ,"UPD")=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",20)," ","-")_"\ "_HZ_" \ "_FUNC
 S @$$^W4GL("W4DAPR")@(H,NP,HZ,"UPD","A-ST")=ST
 D SENDPR(FLDATA)
 ;
 ;;ZSY "iconv -c -f cp862 -t utf-8 "_FLCMD_" -o "_FLCMD_"utf-8"
 ;
 S CMD="/bin/sh "_FLCMD ;;_"utf-8"
 ZSY CMD
 ;
 S @$$^W4GL("W4DAPR")@(H,NP,HZ,"UPD","UPD-CMD")=CMD
 S @$$^W4GL("W4DAPR")@(H,NP,HZ,"UPD","UPD-CMD-ZSY")=$ZSY
 ;
 ;;ZSY "rm -f "_FLCMD ; ***
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 I $$EXIST^%L1ZOS(FLDAOU) D
 .C FLDAOU O FLDAOU:(REWIND:READONLY)
 .F  U FLDAOU R A Q:$ZEOF  D 
 ..S K=K+1,@TMP@(K)=$E(A,1,3800)
 ..
 .C FLDAOU
 .;;ZSY "rm -f "_FLDAOU
 .;;ZSY "rm -f tmpdaou"_JB_"-*"
 ;
 D DB(2)
 M @$$^W4GL("W4DAPR")@(H,NP,HZ,"UPD-RESP")=@TMP
 K @TMP
 Q
 ;
 ;
GET(TX,ID) ;
 N VL
 I $E(ID)'="""" S ID=""""_ID_""""
 I ID'[":" S ID=ID_":"
 S VL=$P(TX,ID,2)
 S VL=$P(VL,",")
 S VL=$P(VL,"}")
 S VL=$P(VL,"]")
 S VL=$P(VL,"//")
 S:$E(VL)="""" VL=$E(VL,2,$L(VL)-1)
 Q VL
 ;
FINDPSL(PSLTEL) ; 
 N PSL,TEL S PSL=""
 S PSLTEL=$TR(PSLTEL," -","")
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:PSL
 .S TEL=$P($G(^(N,1)),"\",2) Q:TEL=""
 .I $TR(TEL," -","")=PSLTEL S PSL=N
 Q PSL 
 ;
DB(VL) 
 Q 
 ; 
RKV(NM,VL,PRTX) ;
 Q $$RKV^W4EMV3($G(NM),$G(VL),$G(PRTX)) ;
 ;
 ; 
DT() ;
 Q $$^W4DZ 
 ;
DAORD(HZ,RKV)
 N GLI S GLI=$$^W4GL("W4DAORDI")
 Q $G(@GLI@(HZ,RKV)) 
 ;
 ;
SENDPR(FLDATA) ; 
 N A
 O FLDATA:(REWIND:READONLY)
 U FLDATA
  F  R A Q:$ZEOF  D
  .N IND S IND=$O(@$$^W4GL("W4DAPR")@(H,NP,HZ,"UPD-FILE",99999),-1)+1
  .S @$$^W4GL("W4DAPR")@(H,NP,HZ,"UPD-FILE",IND)=A
 C FLDATA 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DATL
W4DATL(COD) ; [ 24.02.25 15:22 ] [ 27.03.16 22:16 ] [ 20.09.15 11:41 ] 
 S COD=$$DOP^W4NAME(COD)
 N DTL,END S DTL="",END=0
 N L F L=$H+10:-1:$H-3000 S DTL=$ZD(L,"YYMMDD") D  Q:END
 .I $D(@$$^W4GL("FILE")@(COD,DTL)) D
 ..N N S N="" F  S N=$O(@$$^W4GL("FILE")@(COD,DTL,N)) Q:N=""  D  Q:END
 ...I N,$G(^(N))="I"!($G(^(N))="O") S END=1
 I L<50001 Q ""
 Q DTL
 ;
TML(COD) ;
 N DTL S DTL=$$W4DATL(COD) I DTL="" Q ""
 N TM S TM="" F  S TM=$O(@$$^W4GL("FILE")@(COD,DTL,TM),-1) Q:TM=""  Q:$G(^(TM))="I"!($G(^(TM))="O")
 Q TM
 ;
CIO(COD) ;
 N DTL,TML
 S DTL=$$W4DATL(COD) I DTL="" Q ""
 S TML=$$TML(COD) I TML="" Q ""
 Q $G(@$$^W4GL("FILE")@(COD,DTL,TML))
 ;
TIKCIO(COD) ;
 N CIO S CIO=$$CIO(COD)
 S @$$^W4GL("FILE")@(COD,"CIO")=CIO
 I $$TEAV^W4PRM D
 .N KVZ,SL,RES
 .S KVZ=$$KVZ^W4LEVPR(COD) Q:'KVZ
 .S SL=$$SLKV^W4LEVPR($G(KVZ)) Q:'SL
 .S RES=$$SNDCLK2TV^W4CLKVW(COD,CIO)
 Q
 ;
ALLCIO ;
 S N="" F  S N=$O(@$$^W4GL("FILE")@(N)) Q:N=""  D TIKCIO(N)
 Q
 
 
 
 
 
 

W4DBITHM
W4DBITHM ; [ 07.08.20 11:07 ] [ 28.06.20 18:12 ] [ 12.05.20 10:39 ] 
 N (JB,%ARG,%REM)
 D GLSIB
 I $G(%ARG("SHOW"))=0 Q
 I $G(%ARG("SIBA"))="" D
 .S N="" F  S N=$O(@GLSIB@(N)) Q:N=""  D
 ..I $$DELIS^W4PRM,N=7!(N=15) Q
 ..S %ARG("SIBA")=$G(%ARG("SIBA"))_N_","
 .S %ARG("SIBA")=$E(%ARG("SIBA"),1,$L(%ARG("SIBA"))-1)_",0"
 ;
 S DAT1=$G(%ARG("MEDAT"))
 S DT1=$$^%L1DC(DAT1,3)
 S DAT2=$G(%ARG("ADDAT"))
 S DT2=$$^%L1DC(DAT2,3)
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S I=0,SSUM=0
 F DT=DT1:1:DT2 D
 .S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  I $$^W4HZMH(N) D
 ..I '$$^W4DEL(N) Q
 ..S SUM=$$SUM(N) Q:'SUM
 ..S DAT=$ZD(DT,"DD.MM.YY")
 ..S LK=$$NMB^W4HZMST(N)
 ..S LK1=$$NAME^W4HZMST(N)
 ..S ADR=$$KTVM^W4HZMST(N)
 ..S WHO1=$$WHO1(N)
 ..S SIBA=$$SIBA(N)
 ..I $TR($G(%ARG("SIBA")),",","")?1N.N,","_%ARG("SIBA")_","'[(","_+SIBA_",") Q
 ..S SIBA1=$$SIBA1(N)
 ..S SSUM=SSUM+SUM
 ..
 ..S ST=DAT_"^D^C\"_LK_"^E\"_LK1_"^H\"_ADR_"^H\"_N_"^E^C\"_SUM_"^N\"_WHO1_"^H\"_SIBA1_"^H"
 ..S I=I+1,@TMP@(I)=ST
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_";text-align:center"">"
   W $$^%W1DICT("DELETEDBIDLIST",DAT1_"<>"_DAT2)
  W "</span>",!
  W "<br><br>",!
  ;
  D KOTSIB
  ;
  W "<br><br>",!
  W "<table border=""1"" width=""98%"" style=""text-align:center"" cellpadding=""3"" cellspacing=""0"" >",!
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>"
    W "<th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
    W "<th>"_$$^%W1DICT("ADDRESS")_"</th>"
    W "<th>"_$$^%W1DICT("ORDER")_"</th>"
    W "<th>"_$$^%W1DICT("SUM")_"</th>"
    W "<th>"_$$^%W1DICT("WHODEL")_"</th>"
    W "<th>"_$$^%W1DICT("CAUSEDEL")_"</th>"
   W "</tr>",!
   ;
   F I=1:1 Q:'$D(@TMP@(I))  D
   .S ST=$G(^(I))
   .W "<tr style=""cursor:pointer"" "
   . N ORD S ORD=+$P(ST,"\",5)
   . W " onClick=""ShowOrder('"_ORD_"','ifr')"" "
   .W ">"
   .F J=1:1:$L(ST,"\") D
   ..W "<td "
   .. W $$STL($P(ST,"\",J))
   ..W ">"
   .. W $$RKV($P(ST,"\",J))
   ..W "</td>"
   .W "</tr>",!
   ;
   W "<tr style=""background-color:yellow;font-weight:bold"" >"
    F J=1:1:8 D
    .I J'=5,J'=6 W "<td>&nbsp;</td>" Q
    .I J=5 W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"</td>" Q
    .W "<td>"_$J(SSUM,2,2)_"</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 K @TMP  ;
 Q  ;
 ;
SUM(HZ) ;
 N ST,SUM,SSUM S SSUM=0
 N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZ,N1)) Q:N1=""  D
 .S ST=$G(^(N1))
 .S QN=$P(ST,"\",5),SUM=$P(ST,"\",7) I QN<0 Q
 .S SSUM=SSUM+SUM
 Q SSUM
 ;
WHO1(HZ) ;
 N ST,WHO1 S WHO1=""
 S ST=$G(@$$^W4ORD@(HZ,"DELBID"))
 S WHO1=$P(ST,"*",2)
 Q $$^W4NAME(WHO1)
 ;
SIBA(HZ) ;
 N ST,SIBA S SIBA=0
 S ST=$G(@$$^W4ORD@(HZ,"DELBID"))
 S SIBA=$P(ST,"*",3)
 Q SIBA
 ;
SIBA1(HZ) ;
 N ST,SIBA1 S SIBA1=""
 S ST=$G(@$$^W4ORD@(HZ,"DELBID"))
 S SIBA1=$P(ST,"*",4)
 Q SIBA1
 ;
STL(VL) ;
 N TYP,ALGN
 S ALGN=$P(VL,"^",3)
 I ALGN="C" Q " align=""center"" "
 Q ""
 ;
RKV(VL) ;
 N TYP
 S TYP=$P(VL,"^",2)
 S VL=$P(VL,"^")
 I VL="" Q "&nbsp;"
 I TYP="H" Q $$H2U^%L1FRM(VL)
 I TYP="N" Q $J(VL,2,2)
 Q VL
 ;
 ;
KOTSIB ;
 N GLSIB,N
 D GLSIB
 W "<table>",!
 W "<tr>"
 S N="" F  S N=$O(@GLSIB@(N)) Q:N=""  D
 .W "<td>"
 . W $$H2U^%L1FRM($G(^(N)))
 . W "&nbsp;"
 . W "<input type=""checkbox"" id=""siba"_N_""" name=""siba"" "
 . I $TR($G(%ARG("SIBA")),",","")?1N.N,","_%ARG("SIBA")_","[(","_N_",") W "checked=""checked"" "
 . W "/>" 
 .W "</td>"
 ;
 W "<td>"
  W $$^%W1DICT("OTHERCAUSES")
  W "&nbsp;"
  W "<input type=""checkbox"" id=""siba0"" name=""siba"" "
  I $TR($G(%ARG("SIBA")),",","")?1N.N,","_%ARG("SIBA")_","[(",0,") W "checked=""checked"" "
  W "/>" 
 W "</td>"
 ;
 W "<td>"
  W "&nbsp;"
 W "</td>"
 W "<td>"
  D ROUNDBUT^%W1JS("Show",$$^%W1DICT("SHOW"),"Show()","color:green")
 W "</td>"
 W "<td>"
  D ROUNDBUT^%W1JS("Clear",$$^%W1DICT("CLEAR"),"Clear()","color:red")
 W "</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
GLSIB ; 
 S GLSIB=$$^W4GL("P1SBIT")
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DCASH
W4DCASH ; [ 11.01.22 05:58 ] [ 08.10.21 07:30 ] [ 06.01.21 14:02 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S NOMDOC=$G(%ARG("NOMDOC"))
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 D DIVBUT
 ;
 D VRM,KLF
 D FRM
 D PC
 ;;K @VRM
 Q
 ;
 ;
ASK ;
 W "<div id=""divask"" align=""center"" dir="""_$$^%W1DIR_""">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td width=""10%"">&nbsp;"
   W "</td>"
   ;
   W " <td dir=""LTR"">"
    D ^%W1DAT("MEDAT","","<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td dir=""LTR"">"
    S %W1DAT("=")="" 
    D ^%W1DAT("ADDAT","","<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
KLF S KLF=$$^W4GL("KLF")
 Q
 ;
 ;
FRM ;
 K SUMCA
 K @VRM N LKH,NOM,HZ,HZCB
 S LKH="" F  S LKH=$O(@KLF@(LKH)) Q:LKH=""  D FRMLKH(LKH)
 S NOM="" F  S NOM=$O(@$$^W4GL("W4TSHL")@(NOM)) Q:NOM=""  D FRMTSH(NOM)
 ;
 N DT F DT=MEDT-300:1:ADDT D
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..S HZCB=$G(@$$^W4ORD@(HZ,"CB"))
 ..S MZ=$P(HZCB,"\",2)
 ..S LK=$$LKHN^W4HZMST(HZ)
 ..I LK="" S LK="CSR"
 ..I MZ,DT'<MEDT,DT'>ADDT S @VRM@(DT,3,LK,HZ,1,"MZ")=MZ
 ..
 ..N NN S NN="" F  S NN=$O(@$$^W4ORD@(HZ,"CB","CH",NN)) Q:NN=""  I NN D
 ...S A=$G(^(NN))
 ...N SUM,DAT S SUM=$P(A,"*"),CHK=$P(A,"*",2) S:CHK="" CHK=0
 ...S DAT=$P(A,"*",6)
 ...N DT1 S DT1=$$^%L1DC(DAT,3) I DT1<MEDT!(DT1>ADDT) Q
 ...S @VRM@(DT1,3,LK,HZ,2,CHK)=SUM
 ..
 ..S NN="" F  S NN=$O(@$$^W4ORD@(HZ,"CB","V",NN)) Q:NN=""  I NN D
 ...S A=$G(^(NN))
 ...D FRMCARD(A,3,LK,HZ)
 Q
 ;
 ;
FRMLKH(LKH) ;
 N (JB,%ARG,LKH,MEDT,ADDT,SUMCA)
 D KLF,VRM
 S NOM="" F  S NOM=$O(@KLF@(LKH,"CB",NOM)) Q:NOM=""  D
 .S HD=$G(^(NOM))
 .S MZ=$P(HD,"\",2)
 .S DAT=$P(HD,"\",4)
 .
 .I MZ D
 ..S DT=$$^%L1DC(DAT,4)
 ..I DT<MEDT!(DT>ADDT) Q
 ..S @VRM@(DT,1,LKH,NOM,1,"MZ")=MZ
 .
 .S NP="" F  S NP=$O(@KLF@(LKH,"CB",NOM,NP)) Q:NP=""  I NP?1N.N D
 ..S A=$G(^(NP))
 ..;;W $R," ",A,!
 ..S SUM=$J($$SUM(A),2,2)
 ..S DT=$$DT(A)
 ..I DT<MEDT!(DT>ADDT) Q
 ..S CHK=$$CHK(A) I CHK?1N.N S CHK=+CHK
 ..S @VRM@(DT,1,LKH,NOM,2,CHK)=SUM
 .
 .I $D(@KLF@(LKH,"CBV",NOM)) D
 ..N N1 S N1="" F  S N1=$O(@KLF@(LKH,"CBV",NOM,N1)) Q:N1=""  D
 ...N A S A=$G(^(N1))
 ...D FRMCARD(A,1,LKH,NOM,DAT)
 Q
 ;
 ;
FRMTSH(NOM) ;
 N (JB,%ARG,NOM,MEDT,ADDT,SUMCA)
 D VRM
 S SPK=$$SPK^W4PY(NOM) Q:'SPK
 N N,ST,DAT,DT,SUM
 S N="" F  S N=$O(@$$^W4GL("W4TSHL")@(NOM,"C",N)) Q:N=""  I N?."-"1N.N D
 .S ST=$G(^(N))
 .S DAT=$$DATPR^W4PY(NOM,N)
 .S DT=$$^%L1DC(DAT,3)
 .I DT<MEDT!(DT>ADDT) Q
 .S SUM=$$NETTO^W4PY(NOM,N)
 .I $$MZ^W4PY(NOM) S @VRM@(DT,2,SPK,NOM,1,"MZ")=SUM
 .S SUGT=$$SUGT^W4PY(NOM)+1 Q:SUGT=1
 .S CHK=$$CHECK^W4PY(NOM,N) S:CHK="" CHK=0
 .S @VRM@(DT,2,SPK,NOM,SUGT,CHK)=SUM
 Q
 ;
 ;
FRMCARD(A,VD,LKH,NOM,DAT)
 N (JB,%ARG,A,VD,LKH,NOM,DAT,MEDT,ADDT,VRM,SUMCA)
 ;
 D ^W4GTVCH(A,"V")
 ;
 I $G(DAT) S DT=$$^%L1DC(DAT,4)
 ;
 I '$G(DAT) D
 .S DT=+$P(A,"*",29)
 .S DAT=$ZD(DT,"YYMMDD")
 ;
 S SUGCA=$P(VTS,"$V",2)
 ;
 S DAT1=$$^%L1DC(DAT,1)
 S DD=$E(DAT,5,6)
 S MM=$E(DAT,3,4)
 S YY=$E(DAT,1,2)
 ;
 I DD<16 D
 .S DD1="02" I $G(@$$^W4PRM@("CATS",+SUGCA,1)) S DD1=$$DOP^%L1FRM(^(1))
 I DD>15 D
 .S DD1=$S(SUGCA=3:15,1:"08")
 .I $G(@$$^W4PRM@("CATS",+SUGCA,2)) S DD1=$$DOP^%L1FRM(^(2))
 ;
 S MM1=$S(MM=12:1,1:MM+1),MM1=$TR($J(MM1,2)," ",0)
 S YY1=$S(MM=12:YY+1,1:YY),YY1=$TR($J(YY1,2)," ",0)
 ;
 S DT=$$^%L1DC(DD1_MM1_YY1,3)
 S CARD="..."_$E(NCA,$L(NCA)-3,$L(NCA))
 S SUGT1="3-"_SUGCA
 ;
 I 'PN,DT'<MEDT,DT'>ADDT D
 .S @VRM@(DT,VD,LKH,NOM,SUGT1,CARD)=CAV D SUMCA(SUGCA,CAV,VD) Q
 ;
 F I=1:1:PN+1 D
 .S MM1=$S(MM+I<13:$TR($J(MM+I,2)," ",0),1:$TR($J(MM+I-.1#12+.1,2)," ",0))
 .S YY1=$S(MM+I<13:YY,MM+I<25:YY+1,MM+I<37:YY+2,1:YY+3)
 .S DT=$$^%L1DC(DD1_MM1_YY1,3)
 .I DT<MEDT!(DT>ADDT) Q
 .S SUGT1="3-"_SUGCA_"-"_I_"-"_(PN+1)
 .S CAV=$S(I=1:$J(P1*.01,2,2),1:$J(PC*.01,2,2))
 .S @VRM@(DT,VD,LKH,NOM,SUGT1,CARD)=CAV D SUMCA(SUGCA,CAV,VD)
 Q
 ;
 ;
SUM(A)
 Q $P(A,"\")
 ;
DT(A)
 Q $$^%L1DC($P(A,"\",7),3)
 ;
CHK(A)
 Q $P(A,"\",6)
 ;
 ;
PC ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 S IL=0,PG=1,RSIZE=33,SHLN=3,SSHLN=0
 S (SPROF,SRATE,PROFIT)=0
 ;
 D KOT
 ;
 S SSUM=0 K SUMVT
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
 .W "<tr>",!
 .W " <td colspan=""7"" style=""text-align:center;color:darkgreen;font-weight:bold"" >",!
 .W $$^%W1DICT("DATEPRAON")_" "_$ZD(DT,"DD.MM.YY"),!
 .W " </td>",!
 .W "</tr>",!
 .S VTN="" F  S VTN=$O(@VRM@(DT,VTN)) Q:VTN=""  D
 ..S ORG="" F  S ORG=$O(@VRM@(DT,VTN,ORG)) Q:ORG=""  D
 ...S NOM="" F  S NOM=$O(@VRM@(DT,VTN,ORG,NOM)) Q:NOM=""  D
 ....S SUGT="" F  S SUGT=$O(@VRM@(DT,VTN,ORG,NOM,SUGT)) Q:SUGT=""  D
 .....S CHK="" F  S CHK=$O(@VRM@(DT,VTN,ORG,NOM,SUGT,CHK)) Q:CHK=""  D
 ......S SUM=$G(^(CHK))
 ......I +SUGT'=3 S SUMVT(+SUGT,SUGT)=$G(SUMVT(+SUGT,SUGT))+SUM
 ......S SHLN=SHLN+1
 ......I SHLN>RSIZE D PAGEBREAK
 ......
 ......W "<tr style=""cursor:pointer"
 ...... I $G(NOMDOC),NOM=NOMDOC W ";background-color:lightgreen"
 ...... I VTN=1 W ";color:black"
 ...... I VTN=2 W ";color:darkred"
 ...... I VTN=3 W ";color:darkblue"
 ...... W """"
 ...... W " onClick=""OnClickTr(this,'"_SHLN_"','"_VTN_"','"_ORG_"','"_NOM_"')"" "
 ......W ">"
 ...... W "<td dir="""_$$^%W1DIR_""" "
 ...... W ">"
 ......D
 .......I +SUGT=3 D  Q
 ........W $$H2U^%L1FRM($$V^W3SHOWTS($P(SUGT,"-",2)))
 ........I $P(SUGT,"-",4)>1 D
 .........W " [ "_+$P(SUGT,"-",3)_" "_$$^%W1DICT("FROM")_" "_+$P(SUGT,"-",4)_" ] "
 .......
 .......W $$^W3SHOWTS(SUGT,1)_" "
 ......
 ...... W " "_$$^%W1DICT($S(VTN=1!(VTN=3):"FROMCUSTOM",1:"TOSUPPL"))
 ...... W "</td>",!
 ......
 ......I VTN=1!(VTN=3) W " <td>&nbsp;"_ORG_" "_$$H2U^%L1FRM($$LKH^W4L(ORG))_"&nbsp;</td>"
 ......I VTN=2 W " <td>&nbsp;"_ORG_" "_$$H2U^%L1FRM($$NAME^W4SPK(ORG))_"&nbsp;</td>"
 ......
 ......W " <td "
 ...... ;;I SHLN=$$GET^%W1PRM("CASHCUR") W " style=""border:solid 2px brown"" "
 ......W ">&nbsp;"_NOM_"&nbsp;</td>"
 ......
 ......W " <td>&nbsp;"_$S(CHK="MZ":$$^%W1DICT("CASH"),CHK="BANK":$$^%W1DICT("MVBANK"),1:CHK)_"&nbsp;</td>"
 ......
 ......I VTN=1!(VTN=3) D
 .......D RKV(SUM,"darkblue")
 .......W "<td>&nbsp;</td>",!
 .......S SPROF=SPROF+SUM,PROFIT=PROFIT+SUM
 ......
 ......I VTN=2 D
 .......W "<td>&nbsp;</td>",!
 .......D RKV(SUM,"darkred")
 .......S SRATE=SRATE+SUM,PROFIT=PROFIT-SUM
 ......
 ......D RKV(PROFIT)
 .
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"" >"
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>"_$$^%W1DICT("TOTAL")_"</td>",!
 D RKV(SPROF,"darkblue",1)
 D RKV(SRATE,"darkred",1)
 D RKV(PROFIT,"darkgreen",1)
 W "</tr>",!
 ;
 D PCSUMCA
 D PCSUMVT
 ;
 W "</table>",!
 ;
 I 'SHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')"
 .W "</script>",!
 ;
 W "</div>",!
 Q
 ;
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT
 S SHLN=0
 Q
 ;
 ;
KOT ;
 W "<table dir="""_$$^%W1DIR_""" width=""60%"" style=""font-size:"_$$^W3FSZ(12)_";color:black"" >"
 W " <tr>"
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"_$$^%W1DICT("PAGE")_" : <span "_$$HDSTYLE_">"_PG_"</span></td>",!
 W " </tr>",!
 W " <tr>"
 W "  <td>"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MEDAT_"</td>",!
 W "  <td>"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADDAT_"</td>",!
 W "  <td>&nbsp;</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""90%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("PAYMENTKIND")_"</th>"
 W "  <th>"_$$^%W1DICT("CUSTSUPPLNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("DOCNUMBER")_"</th>"
 W "  <th>"_$$^%W1DICT("NCHECKCRCARD")_"</th>"
 W "  <th>"_$$^%W1DICT("PROFITSUM")_"</th>"
 W "  <th>"_$$^%W1DICT("RATESUM")_"</th>"
 W "  <th>"_$$^%W1DICT("PROFIT")_"</th>"
 W " </tr>",!
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 I RKV S RKV=$J(RKV,2,2)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    W "<input type=""text"" id=""NOMDOC"" size=""10"" value="""_NOMDOC_""" onClick=""this.select()"" />"
    W $$NBSP^%L1FRM(2)
    W "<input type=""button"" value="""_$$^%W1DICT("SEARCH")_"""  onClick=""Search()"" />" 
   W "</td>"
   W "<td width=""40%"">&nbsp;</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SUMCA(VC,CAV,IND) ; 
 S VC=+$G(VC) 
 S SUMCA(VC,IND)=$G(SUMCA(VC,IND))+CAV
 Q 
 ;
PCSUMCA ;
 K SSUMCA
 S N="" F  S N=$O(SUMCA(N)) Q:N=""  D
 .W "<tr style=""background-color:lightblue;font-weight:bold"" >"
 .W " <td>&nbsp;</td>",!
 .W " <td>&nbsp;</td>",!
 .W " <td>&nbsp;</td>",!
 .W " <td>"_$$^%W1DICT("TOTAL")_" "_$$H2U^%L1FRM($$V^W3SHOWTS(N))_"</td>",!
 .N IN,OU S IN=$G(SUMCA(N,1))+$G(SUMCA(N,3))
 .S SSUMCA(1)=$G(SSUMCA(1))+$G(SUMCA(N,1))
 .S SSUMCA(2)=$G(SSUMCA(2))+$G(SUMCA(N,2))
 .S SSUMCA(3)=$G(SSUMCA(3))+$G(SUMCA(N,3))
 .S OU=$G(SUMCA(N,2))
 .D RKV(IN,"darkblue",1)
 .D RKV(OU,"darkred",1)
 .D RKV(IN-OU,"darkgreen",1)
 .W "</tr>",!
 ;
 W "<tr style=""background-color:lightyellow;font-weight:bold"" >"
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>"_$$^%W1DICT("TOTAL")_" "_$$^%W1DICT("CA")_"</td>",!
 ;
 N IN,OU
 S IN=$G(SSUMCA(1))+$G(SSUMCA(3))
 S OU=$G(SSUMCA(2))
 D RKV(IN,"darkblue",1)
 D RKV(OU,"darkred",1)
 D RKV(IN-OU,"darkgreen",1)
 W "</tr>",!
 Q
 ;
PCSUMVT ;
 S N="" F  S N=$O(SUMVT(N)) Q:N=""  I N'=4 D
 .W "<tr style=""background-color:lightblue;font-weight:bold"" >"
 .W " <td>&nbsp;</td>",!
 .W " <td>&nbsp;</td>",!
 .W " <td>&nbsp;</td>",!
 .W " <td>"_$$^%W1DICT("TOTAL")_" "_$$H2U^%L1FRM($$^W3SHOWTS(N))_"</td>",!
 .N IN,OU S IN=$G(SUMVT(N,1))+$G(SUMVT(N,3))
 .S OU=$G(SUMVT(N,2))
 .D RKV(IN,"darkblue",1)
 .D RKV(OU,"darkred",1)
 .D RKV(IN-OU,"darkgreen",1)
 .W "</tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DCB
W4DCB ; [ 09.12.24 09:28 ] [ 08.12.24 16:03 ] [ 21.02.22 06:48 ] 
 N (JB,%ARG,%REM,%REPN) ; ---- LIFNEY QUERY !!
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S %REPN="W4DCB"
 S @$$^%W1GLPRM@("REPN")=%REPN
 Q
 ;
 ;
CB ;
 N DT,TIME,HZ,DT1,DT2
 N DTCB,LKH,LKHNAME,MZ,CH,BN,CA,NIK,PAID
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ;
 D ^W4CBGET(CB)
 N DTCB S DTCB=$G(W4CB("DT")) I 'DTCB S OK=0 Q
 I DTCB<DT1!(DTCB>DT2) S OK=0 Q
 S DAT=$ZD(DTCB,"DD.MM.YY")
 S LK=$G(W4CB("LKH")) I LK="" S OK=0 Q
 I LK<MELK!(LK>ADLK) S OK=0 Q
 N I F I="LKHNAME","TOT","MZ","CH","BN","CA","NIK","PAID" S @I=$G(W4CB(I))
 S LK1=LKHNAME
 S SUGL1=""
 S SUGL=$$SUGL^W4L(LK)
 I SUGL,SUGL<MESUGL!(SUGL>ADSUGL) S OK=0 Q
 S SUGL1=$$SUGL1^W4L(LK)
 S x1=TOT
 S x2=MZ
 S x3=CH
 S x4=BN
 S x5=CA
 S x6=NIK 
 S x7=TOT-PAID
 Q
 ;
LK1(LK) ; 
 I LK'["." Q $$LKH^W4L(LK)  
 S LK=$P(LK,".",2) 
 I LK=99999 Q "illk tih"
 Q $$^W4NAME(LK) 
 ;
SUGL(LK) ; 
 Q $$SUGL^W4L(LK) 
 ; 
SUGL1(LK) ; 
 Q $$SUGL1^W4L(LK) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DCB0
W4DCB ; DOCH HESBONIOT                           [ 08.12.24 13:51 ] [ 06.03.17 22:38 ] [ 22.12.15 18:39 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 I '$G(MELKH) S MELKH=""
 I '$G(ADLKH) S ADLKH=99999999999
 I '$G(MESUGL) S MESUGL=""
 I '$G(ADSUGL) S ADSUGL=99999
 S MESUGL1="" I MESUGL S MESUGL1=$G(@$$^W4GL("SUGL")@(MESUGL))
 S ADSUGL1="" I ADSUGL S ADSUGL1=$G(@$$^W4GL("SUGL")@(ADSUGL))
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
GET ;
 N KLIN S KLIN=$$^W4GL("KLIN")
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 ;
 S I=0
 S (SUMCB,SAH,SMZM,SBN,SCHK,SCA,SNIK)=0
 ;
 S N="" F  S N=$O(@KLIN@("CB",N)) Q:N=""  D
 .S LK=$G(^(N))
 .S SUGL=$$SUGL^W4L(LK)
 .I $G(MESUGL),SUGL<MESUGL Q
 .I $G(ADSUGL),SUGL>ADSUGL Q
 .I $TR(LK,"-","")<$TR(MELKH,"-","") Q
 .I $TR(LK,"-","")>$TR(ADLKH,"-","") Q
 .D LINECB(N,LK)
 Q
 ;
LINECB(N,LK) ;
 D ^W4CBGET(N) Q:$D(W4CB)<10
 ;
 Q:'$G(W4CB("TODATE"))
 ;
 I $$^%L1DC(W4CB("TODATE"),3)<$$^%L1DC(DAT1,3) Q
 I $$^%L1DC(W4CB("TODATE"),3)>$$^%L1DC(DAT2,3) Q
 ;
 I $G(%ARG("MESUM")),W4CB("TOT")<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),W4CB("TOT")>%ARG("ADSUM") Q
 ;
 I $G(%ARG("MENOM")),N<%ARG("MENOM") Q
 I $G(%ARG("ADNOM")),N>%ARG("ADNOM") Q
 ;
 S I=I+1
 S @TMPREP@("G",I)=N_"\"_W4CB("TODATE")_"\"_LK_"\"_W4CB("LKHNAME")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4CB("TOT")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4CB("MZ")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_(W4CB("CH")+W4CB("BN"))
 ;;S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4CB("BN")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4CB("CA")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4CB("NIK")
 S SUMCB=SUMCB+1
 S SAH=SAH+W4CB("TOT")
 S SMZM=SMZM+W4CB("MZ")
 S SCHK=SCHK+W4CB("CH")+W4CB("BN")
 ;;S SBN=SBN+W4CB("BN")
 S SNIK=SNIK+W4CB("NIK")
 S SCA=SCA+W4CB("CA")
 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4DCB-CHKPRM","MELKH=MELKH & ADLKH=ADLKH & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MELKH>ADLKH Q "0;RANGENOTVALID;;MELKH"
 ;;I VD<1!(VD>3) Q "0;DATAINVALID;;VD"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4DCB"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N LK S LK=$$LKG(A)
 N CB S CB=$$CBG(A)
 W " style=""cursor:pointer;color:black;font-size:"_$$^W3FSZ(11)
 I '($G(K)#2) W ";background-color:#eae0d3"
 W """"
 W " onClick=""ShowReceipt('"_CB_"','"_LK_"','ifr')"""
 Q
 ;
TD ;
 Q
LKG(A) ;
 Q $P(A,"\",3)
 ;
CBG(A) ;
 Q $P(A,"\")
 ;
 
 
 

W4DCIB
W4DCIB(MEDAT,ADDAT) ; DOCH HAZMANOT;   [ 21.02.22 07:36 ] [ 03.09.20 07:40 ] [ 11.03.17 14:03 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,%REPN)
 D ^W4IN,^%W1PCVRM K @VRM
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 ;
 F DT=D1:1:D2 D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","ASR")) D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 ...S A=$G(^(N)),LKHN=$P(A,"*"),LKHR=$P(A,"*",6)
 ...I LKHN'=$$^W4CIBLKH,LKHR'=$$^W4CIBLKH Q
 ...D ^W4GTVCH(A,"ASR")
 ...S:CIBCID="" CIBCID="-"  S:HZMLK="" HZMLK="-"
 ...S ASR0=$P($G(@VRM@(DT,HZ,CIBCID,HZMLK)),"*",2)
 ...S @VRM@(DT,HZ,CIBCID,HZMLK)=$$^WCKBCARD(CIBCARD)_"*"_(ASR0+ASR)
 ;
 S %REPN="W4DCIB"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("METRH")=D1,%REPN("ADTRH")=D2
 S %REPN("METRH","VIEW")=1,%REPN("ADTRH","VIEW")=1
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 D PUT^%W1PRM("HRFREP","w4dcib.jsp?JB="_JB)
END Q
 ;
HZLK ;
 ;;W "GLOB="_GLOB,!
 S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 S x3=$J($G(@$$^WCG@("AHUZ"))*x2*.01,2,2)
 S x4=$J(x2-x3,2,2)
 Q
 
 
 

W4DCIBER
W4DCIBER(MEDAT,ADDAT) ; [ 11.04.24 05:22 ] [ 10.12.23 09:48 ] [ 
 N (JB,%ARG,%REM,MEDAT,ADDAT,%REPN)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 S %REPN="W4DCIBER"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("METRH")=D1,%REPN("ADTRH")=D2
 S %REPN("METRH","VIEW")=1,%REPN("ADTRH","VIEW")=1
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 D PUT^%W1PRM("HRFREP","w4dciber.jsp?JB="_JB)
END Q
 ;
NP ;
 N I
 ;;S ^AA("W4DCIBER-DT","GLOB",DT)=GLOB
 ;;S ^AA("W4DCIBER-DT","@GLOB",DT)=$G(@GLOB)
 F I=1:1:4 X "S x"_I_"="""_$P($G(@GLOB),"*",I+1)_""""
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4DCIBZ
W4DCIBZ ; HAZAGAT TASHLUMEJ CIBUS [ 14.11.22 12:49 ] [ 05.12.18 07:47 ] [ 13.07.17 14:08 ] 
 N (JB,%REM,%ARG,NZ,P1X,P1TOT,NOPC,DISP)
 Q:'$$^W4CIBLKH
 D ^W4IN,^%L1TS D ^W4MDPPC S SM=5
 ;
 K @$$^W4MAIN("VRM")
 ;
 S DT=P1DZ D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","ASR")) D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 ...S A=$G(^(N)),LKHN=$P(A,"*") Q:LKHN'=$$^W4CIBLKH
 ...D ^W4GTVCH(A,"ASR")
 ...S:CIBCID="" CIBCID="-"
 ...S CBS=$G(@$$^W4MAIN("VRM")@(CIBCID))
 ...S @$$^W4MAIN("VRM")@(CIBCID)=$P(CBS,"*")+1_"*"_($P(CBS,"*",2)+ASR)
 ;
 I '$$ZBIG^W4PRM D PCCSR
 I $$ZBIG^W4PRM D PCBIG
 ;
 K @$$^W4MAIN("VRM")
 Q
 ;
 ;
PCCSR ;
 S ST="" D W
 I $$HB D
 .S ST="   "_$$^%L1DC(P1DZ,1)_" - l SODEXO zegewl g""ec" D W
 .S ST="----------------------------------" D W
 .S ST="  mekq   : miqihxk zenk :dxag 'qn " S PRKOT=1 D W K PRKOT
 .S ST="----------------------------------" D W
 .S SCOL=0,SSUM=0
 .S N="" F  S N=$O(@$$^W4MAIN("VRM")@(N)) Q:N=""  D
 ..S COL=$P($G(^(N)),"*"),SCOL=SCOL+COL
 ..S SUM=$P($G(^(N)),"*",2),SSUM=SSUM+SUM
 ..S ST=" "_$J(SUM,7,2)_" : "_$J(COL,8)_"     :   "_$J(N,4)
 ..D W
 .S ST="----------------------------------" D W
 .S ST=" "_$J(SSUM,7,2)_" : "_$J(SCOL,8)_"     : k""dq  " D W
 .S ST="" D W
 ;
 I '$$HB D
 .S ST=$$PCTX("REPZCIB","S")_"  "_$$^%L1DC(P1DZ,1) D W
 .S ST="--------------------------------" D W
 .S ST=" "_$$PCTX("COMPANY",7)_" : "_$$PCTX("CARDAMOUNT",12)_": "_$$PCTX("SUM",7)_"  " S PRKOT=1 D W K PRKOT
 .S ST="--------------------------------" D W
 .S SCOL=0,SSUM=0
 .S N="" F  S N=$O(@$$^W4MAIN("VRM")@(N)) Q:N=""  D
 ..S COL=$P($G(^(N)),"*"),SCOL=SCOL+COL
 ..S SUM=$P($G(^(N)),"*",2),SSUM=SSUM+SUM
 ..S ST="   "_$J(N,4)_"   :  "_$J(COL,8)_"  :   "_$J(SSUM,7,2) D W
 ..D W
 .S ST="----------------------------------" D W
 .S ST=" "_$$PCTX("TOTAL",5)_" : "_$J(SCOL,8)_" "_$J(SSUM,7,2) D W
 .S ST="" D W
 I +$G(P1X)'=2,'$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
W S:'$D(NZ) NZ=0 S SM1=3 D ^W4PCST(ST,$G(DISP))
 Q
 ;
 ;
PCBIG ; 
 W "<br>",!
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
 W "<span style=""font-size:"_$$^W3FSZ(12)_";text-decoration:underline"" >",!
  W $$H2U^%L1FRM($$^%L1DC(P1DZ,1)_" - l SODEXO zegewl g""ec")
 W "</span>",!
 ;
 W "<table>",!
  D HR
  W "<tr>"
   W "<td>"_$$H2U^%L1FRM("dxag 'qn")_"</th>"
   W "<td>"_$$H2U^%L1FRM("miqihxk zenk")_"</th> "
   W "<td>"_$$H2U^%L1FRM("mekq")_"</th> "
  W "</tr>",!
  D HR 
 ;
 S SCOL=0,SSUM=0
 S N="" F  S N=$O(@$$^W4MAIN("VRM")@(N)) Q:N=""  D
 .S COL=$P($G(^(N)),"*"),SCOL=SCOL+COL
 .S SUM=$P($G(^(N)),"*",2),SSUM=SSUM+SUM
 .W "<tr>"
 . W "<td>"_N_"</td>",!
 . W "<td>"_COL_"</td>",!
 . W "<td>"_$J(SUM,2,2)_"</td>",!
 .W "</tr>",! 
 ;
 D HR
 ;
 W "<tr><td>"_$$H2U^%L1FRM("k""dq")_"</td>",!
  W "<td>"_SCOL_"</td>",!
  W "<tr><td>"_$J(SSUM,2,2)_"</td></tr>",!
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
HR W "<tr><td colspan=""3""><hr></td></tr>",!
 Q
 ;
HB(STAM) ; 
 I $$^%W1LNG="H" Q 1
 Q 0
 ;
PCTX(KEY,L)
 Q $$^W4PCTX(KEY,$G(L))
 
 
 
 
 
 

W4DCLKS
W4DCLKS(MEDAT,ADDAT,PRN) ; [ 15.03.20 12:03 ] [ 03.07.18 07:07 ] [ 11.06.18 13:38 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,PRN) D ^%L1TS
 I MEDAT?5N S MEDAT=$$^%L1DC(MEDAT,1)
 I ADDAT?5N S ADDAT=$$^%L1DC(ADDAT,1)
 D ^W4MDPPC
 S SM=3
 S DAT1=$$^%L1DC(MEDAT,2)
 S DAT2=$$^%L1DC(ADDAT,2)
 S PRSP=0 I 'DAT1,'DAT2 S PRSP=1
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D
 .S SUG=$$SUG^W4LEVSUG(N) Q:SUG=""
 .I '$$GET1^W4LEVPR(N,"PAIL"),$$PRINT Q
 .S SHAOT=""
 .I 'PRSP D  Q
 ..S SUM=0,COMPUT="" 
 ..D TV^W4LEVTYP(N,DAT1,DAT2)
 ..Q:'SUM
 ..S SHAOT=$$T^%L1TIME(SUM)
 ..S @VRM@(SUG,N)=$$^W4NAME(N)_"\"_SHAOT
 .
 .S @VRM@(SUG,N)=$$^W4NAME(N)_"\"_$$GET1^W4LEVPR(N,"TEL")
 ; 
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I 'PRSP S KOT=$$TV^%W1DICT($$^%W1LNG,"CLOCKWORKERSREPORT")
 I PRSP S KOT=$$TV^%W1DICT($$^%W1LNG,"WORKERSLIST")
 ;
 S ST=$J("",SM)_$G(%MDP("BB"))_$C(10)_" "_$$CENTRB^%L1FRM(KOT)_$C(10)_$G(%MDP("N")) D W(ST)
 I 'PRSP D
 .N SM S SM=0
 .I MEDAT'=ADDAT S ST=$$CENTR^%L1FRM(ADDAT_" jix`z cr  "_MEDAT_" jix`zn") D W(ST)
 .I MEDAT=ADDAT S ST=$$CENTR^%L1FRM(MEDAT_" jix`zl") D W(ST)
 S ST="" D W(ST)
 ;
 W "<span style=""font-size:"_$$^W3FSZ(18)_""">"
  W $$H2U^%L1FRM(KOT)
 W "</span>",!
 I 'PRSP D
 .W "<span style=""font-size:"_$$^W3FSZ(12)_""">"
 . I MEDAT'=ADDAT W "<br>"_$$H2U^%L1FRM(ADDAT_" jix`z cr  "_MEDAT_" jix`zn ")
 . I MEDAT=ADDAT  W "<br>"_$$H2U^%L1FRM(MEDAT_" jix`zl")
 .W "</span>",!
 W "<br>",!
 W " <table>",!
 S SUG="" F  S SUG=$O(@VRM@(SUG)) Q:SUG=""  D
 .W "<tr><td colspan=""3"" style=""font-size:"_$$^W3FSZ(14)_""">"
 . W "<br>",!
 .  S SUG1=$G(@$$^W4GL("LEVKVZ")@(SUG))
 .  S SUG1=$$CENTRB^%L1FRM(SUG1)
 .  W $$H2U^%L1FRM(SUG1)
 .  S ST=$J("",SM)_$G(%MDP("B"))_$C(10)_SUG1_$C(10)_$G(%MDP("N")) D W(ST)
 . W "<br>",!
 .W "</td></tr>"
 .S N="" F  S N=$O(@VRM@(SUG,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..W "<tr "
 .. I '$$PRINT,'$$GET1^W4LEVPR(N,"PAIL") W " style=""color:grey"" "
 ..W ">"
 .. I 'PRSP W "<td width=""70%"">"_$$H2U^%L1FRM($P(A,"\"))_"</td><td>"_$P(A,"\",2)_"</td>"
 .. I PRSP D
 ... W "<td>"_N_"</td>"
 ... W "<td>"_$$H2U^%L1FRM($P(A,"\"))_"</td>"
 ... W "<td>"_$P(A,"\",2)_"</td>"
 ..W "</tr>",!
 ..I 'PRSP S ST=$J("",SM)_$J($P(A,"\",2),5)_"  "_$$HBR^%L1FRM($P(A,"\"),20) D W(ST)
 ..I PRSP S ST=$J("",SM)_$J($P(A,"\",2),10)_"  "_$$HBR^%L1FRM($P(A,"\"),18)_"  "_N D W(ST)
 W "</table>",!
 W "</div>",!
 ;
 I $$PRINT D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
W(TXT) ;
 Q:'$$PRINT
 N SM1 S SM1=SM
 D S1^W4PCST
 Q
 ;
PRINT(STAM) ;
 I '$G(PRINT) Q 0
 Q $G(PRN)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DCLKS0
W4DCLKS(MEDAT,ADDAT,PRN) ; [ 15.03.20 12:00 ] [ 04.11.19 17:59 ] [ 03.07.18 07:07 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,PRN) D ^%L1TS
 I MEDAT?5N S MEDAT=$$^%L1DC(MEDAT,1)
 I ADDAT?5N S ADDAT=$$^%L1DC(ADDAT,1)
 D ^W4MDPPC
 S SM=3
 S DAT1=$$^%L1DC(MEDAT,2)
 S DAT2=$$^%L1DC(ADDAT,2)
 S PRSP=0 I 'DAT1,'DAT2 S PRSP=1
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D
 .S SUG=$$SUG^W4LEVSUG(N) Q:SUG=""
 .S SHAOT=""
 .I 'PRSP D  Q
 ..S SUM=0,COMPUT="" 
 ..D TV^W4LEVTYP(N,DAT1,DAT2)
 ..Q:'SUM
 ..S SHAOT=$$T^%L1TIME(SUM)
 ..S @VRM@(SUG,N)=$$^W4NAME(N)_"\"_SHAOT
 .
 .S @VRM@(SUG,N)=$$^W4NAME(N)
 ; 
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I 'PRSP S KOT=$$TV^%W1DICT($$^%W1LNG,"CLOCKWORKERSREPORT")
 I PRSP S KOT=$$TV^%W1DICT($$^%W1LNG,"WORKERSLIST")
 ;
 S ST=$J("",SM)_$G(%MDP("BB"))_$C(10)_" "_$$CENTRB^%L1FRM(KOT)_$C(10)_$G(%MDP("N")) D W(ST)
 I 'PRSP D
 .N SM S SM=0
 .I MEDAT'=ADDAT S ST=$$CENTR^%L1FRM(ADDAT_" jix`z cr  "_MEDAT_" jix`zn") D W(ST)
 .I MEDAT=ADDAT S ST=$$CENTR^%L1FRM(MEDAT_" jix`zl") D W(ST)
 S ST="" D W(ST)
 ;
 W "<span style=""font-size:"_$$^W3FSZ(18)_""">"
  W $$H2U^%L1FRM(KOT)
 W "</span>",!
 I 'PRSP D
 .W "<span style=""font-size:"_$$^W3FSZ(12)_""">"
 . I MEDAT'=ADDAT W "<br>"_$$H2U^%L1FRM(ADDAT_" jix`z cr  "_MEDAT_" jix`zn ")
 . I MEDAT=ADDAT  W "<br>"_$$H2U^%L1FRM(MEDAT_" jix`zl")
 .W "</span>",!
 W "<br>",!
 ;
 W " <table>",!
 S SUG="" F  S SUG=$O(@VRM@(SUG)) Q:SUG=""  D
 .W "<tr><td colspan=""3"" style=""font-size:"_$$^W3FSZ(14)_""">"
 . W "<br>",!
 .  S SUG1=$G(@$$^W4GL("LEVKVZ")@(SUG))
 .  S SUG1=$$CENTRB^%L1FRM(SUG1)
 .  W $$H2U^%L1FRM(SUG1)
 .  S ST=$J("",SM)_$G(%MDP("B"))_$C(10)_SUG1_$C(10)_$G(%MDP("N")) D W(ST)
 . W "<br>",!
 .W "</td></tr>"
 .
 .S N="" F  S N=$O(@VRM@(SUG,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..W "<tr "
 .. I '$$GET1^W4LEVPR(N,"PAIL") W " style=""color:grey"" "
 ..W ">"
 .. I 'PRSP W "<td width=""70%"">"_$$H2U^%L1FRM($P(A,"\"))_"</td><td>"_$P(A,"\",2)_"</td>"
 .. I PRSP D
 ... W "<td>"_N_"</td>"
 ... W "<td>"_$$H2U^%L1FRM($P(A,"\"))_"</td>"
 ... W "<td>"_$$H2U^%L1FRM($$KVZ1^W4LEVPR(N))_"</td>"
 ..W "</tr>",!
 ..I 'PRSP S ST=$J("",SM)_$J($P(A,"\",2),5)_"  "_$$HBR^%L1FRM($P(A,"\"),20) D W(ST)
 ..I PRSP S ST=$J("",SM)_$$HBR^%L1FRM($P(A,"\"),20)_"  "_N D W(ST)
 W "</table>",!
 W "</div>",!
 ;
 I $$PRINT D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
W(TXT) ;
 Q:'$$PRINT
 N SM1 S SM1=SM
 D S1^W4PCST
 Q
 ;
PRINT(STAM) ;
 I '$G(PRINT) Q 0
 Q $G(PRN)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DEFMDP
W4DEFMDP(MDP,NMB) ; [ 07.06.23 16:01 ] [ 20.07.15 11:48 ] [ 09.06.15 19:47 ] 
 N MP,US,US1,US2,I,J,K,OK S OK=0
 F I=1:1:$L(MDP,";") D  Q:OK
 .S MP=$P($P(MDP,";",I),":"),US=$P($P(MDP,";",I),":",2)
 .
 .S US1="" F J=1:1:$L(US,",")  D
 ..S US2=$P(US,",",J)
 ..I US2'["-" S US1=US1_US2_"," Q
 ..I $E(US2)?1N.N D  Q
 ...F K=+US2:1:$P(US2,"-",2) S US1=US1_K_","
 ..F K=$E(US2,2):1:$P(US2,"-",2) S US1=US1_$E(US2)_K_","
 .I $E(US1,$L(US1))="," S US1=$E(US1,1,$L(US1)-1)
 .
 .I $G(NMB) F J=1:1:$L(US1,",") D  I OK S MDP=MP Q
 ..S US2=$P(US1,",",J)
 ..I US2="TAW"!(US2="TAWM"),$G(HZM),$$TAKEAWAY^W4HZMST(HZM) S OK=1 Q
 ..I US2="TAW",$G(NMB),$$TAW^W4DLPK(NMB) S OK=1 Q
 ..I US2="TAWM",$G(NMB),$$TAKEAWAY^W4HZMST(HZM) S OK=1 Q
 ..I US2="TAWM",$G(NMB),'$$TAKEAWAY^W4HZMST(HZM) S OK=0 Q
 ..I US2="MO",$$^W4MSL(NMB),'$$TAKEAWAY^W4HZMST(HZM) S OK=1 Q
 ..I US2="M",$$^W4MSL(NMB) S OK=1 Q
 ..I $E(US2)="T",$E(US2,2,10),$E(US2,2,10)=NMB S OK=1 Q
 ..I $E(US2)="S",$E(US2,2,10),$E(US2,2,10)=$$SUGS^W4L(NMB) S OK=1 Q
 ..I $E(US2)="U",$E(US2,2,10),$G(@$$^W4MAIN("VRMSU")@(NMB))=$E(US2,2,10) S OK=1 Q
 .Q:OK
 .
 .I (","_US1_",")[(","_$$^W4MYDVN_",")!(US1="") S MDP=MP,OK=1 Q
 Q MDP
 

W4DEFMN
W4DEFMN(CMT) ; [ 13.07.23 16:58 ] [ 17.02.21 18:00 ] [ 24.08.20 14:20 ] 
 N MANA S MANA=0
 I CMT'?.P D
 .I $TR(CMT," ","")["-I-" S MANA=1
 .I $TR(CMT," ","")["-II-" S MANA=2
 .I $TR(CMT," ","")["-III-" S MANA=3
 .I $TR(CMT," ","")["-IV-" S MANA=4
 .I $TR(CMT," ","")["-V-" S MANA=5
 .I $TR(CMT," ","")["-VI-" S MANA=6
 .I $TR(CMT," ","")["-VII-" S MANA=7
 .I $TR(CMT," ","")["-VIII-" S MANA=8
 .I $TR(CMT," ","")["-IX-" S MANA=9
 .I $TR(CMT," ","")["-X-" S MANA=10
 .I $TR(CMT," ","")["-XI-" S MANA=11
 .I $TR(CMT," ","")["-XII-" S MANA=12
 .I $TR(CMT," ","")["-XIII-" S MANA=13
 .I $TR(CMT," ","")["-XIV-" S MANA=14
 .I $TR(CMT," ","")["-XV-" S MANA=15
 .I $TR(CMT," ","")["-XVI-" S MANA=16
 .I $TR(CMT," ","")["-XVII-" S MANA=17
 .I $TR(CMT," ","")["-XVIII-" S MANA=18
 .I $TR(CMT," ","")["-XIX-" S MANA=19
 .I $TR(CMT," ","")["-XX-" S MANA=19
 .I $TR(CMT," ","")["-M-" S MANA=1000
 .I $TR(CMT," ","")["-MI-" S MANA=1001
 .I $TR(CMT," ","")["-MII-" S MANA=1002
 .I $TR(CMT," ","")["-MIII-" S MANA=1003
 .I $TR(CMT," ","")["-MIV-" S MANA=1004
 .I $TR(CMT," ","")["-MV-" S MANA=1005
 .I $TR(CMT," ","")["-MVI-" S MANA=1006
 .I $TR(CMT," ","")["-MVII-" S MANA=1007
 .I $TR(CMT," ","")["-MVIII-" S MANA=1008
 .I $TR(CMT," ","")["-MIX-" S MANA=1009
 .I $TR(CMT," ","")["-MX-" S MANA=1010
 .I $TR(CMT," ","")["-MXI-" S MANA=1011
 .I $TR(CMT," ","")["-MXII-" S MANA=1012
 .I $TR(CMT," ","")["-MXIII-" S MANA=1013
 .I $TR(CMT," ","")["-MXIV-" S MANA=1014
 .I $TR(CMT," ","")["-MXV-" S MANA=1015
 .I $TR(CMT," ","")["-ztqez-" S MANA="T"
 Q MANA
 ;
GETI(MANA) ;
 S MANA=+$G(MANA)
 I MANA=1 Q "-I-"
 I MANA=2 Q "-II-"
 I MANA=3 Q "-III-"
 I MANA=4 Q "-IV-"
 I MANA=5 Q "-V-"
 I MANA=6 Q "-VI-"
 I MANA=7 Q "-VII-"
 I MANA=8 Q "-VIII-"
 I MANA=9 Q "-IX-"
 I MANA=10 Q "-X-"
 I MANA=11 Q "-XI-"
 I MANA=12 Q "-XII-"
 I MANA=13 Q "-XIII-"
 I MANA=14 Q "-XIV-"
 I MANA=15 Q "-XV-"
 I MANA=16 Q "-XVI-"
 I MANA=17 Q "-XVII-"
 I MANA=18 Q "-XVIII-"
 I MANA=19 Q "-XIX-"
 I MANA=20 Q "-XX-"
 I MANA=1000 Q "-M-"
 I MANA=1001 Q "-MI-"
 I MANA=1002 Q "-MII-"
 I MANA=1003 Q "-MIII-"
 I MANA=1004 Q "-MIV-"
 I MANA=1005 Q "-MV-"
 I MANA=1006 Q "-MVI-"
 I MANA=1007 Q "-MVII-"
 I MANA=1008 Q "-MVIII-"
 I MANA=1009 Q "-MIX-"
 I MANA=1010 Q "-MX-"
 I MANA=1011 Q "-MXI-"
 I MANA=1012 Q "-MXII-"
 I MANA=1013 Q "-MXIII-"
 I MANA=1014 Q "-MXIV-"
 I MANA=1015 Q "-MXV-"
 Q ""
 
 
 
 

W4DEFPR0
W4DEFPRN(HZM,PRT) ; [ 11.12.18 18:20 ] [ 02.07.18 20:03 ] [ 14.06.18 07:07 ] 
 ; -- INPUT : HZM,PRT,MDPMAIN,MDPMAIN1,MDPETEK,NMB,P1HZOP,P1HZMET,UR
 ; -- OUTPUT : -- MDP
 S MDP=0
 ;
 I $G(HZM)=""!($G(PRT)="") D ERMDP2 Q
 S ^MDPMAIN(HZM,PRT)=$G(MDPMAIN)
 ;
 I $G(@$$^W4PRM@("TSFTIED")),$G(MDPMAIN)!$G(MDPMAIN1),$D(@$$^W4GL("P1EZ")@(PRT))!$D(@$$^W4GL("P1EZRI")@(PRT))!$D(@$$^W4GL("P1EZK")@(PRT))!$D(P1EZT) D  G:MDP DEFPRN1
 .I $G(PRUR)=2,$G(MDPMAIN1) S MDP=MDPMAIN1 Q
 .I $G(MDPMAIN) S MDP=MDPMAIN
 ;
 ;;I $$^W4FBAR,$G(MDPMAINB),'$G(DBL),$$FBAR(PRT) S MDP=MDPMAINB G DEFPRN1
 ;
 S MDP=$$PRINTIG^W3PRMDP(PRT)
 ;
 I MDP=0 D ERMDP2 Q
 ;
DEFPRN1 N MDP1
 D DEFMDP1 ; --> MDP1
 ;
 I '$D(NMB) S NMB=$$NMB^W4HZMST(HZM)
 N SUGS1 S SUGS1=$TR($$SUGL1^W4L(NMB),".","")
 I SUGS1["TAKE" S SUGS1="TAW"
 N SUGMDP1 S SUGMDP1=""
 I $L(MDP1) S SUGMDP1=$P($G(@$$^W4PRM@("MDP",MDP1)),"\",4)
 ;
 I '$D(MDP1("L")),NMB,MDP1,$$^W4MSD(NMB),'$D(P1HZOP),SUGMDP1["xa",SUGS1["xa"!(SUGS1["TAW"&($G(@$$^W4PRM@("TAWHZ"))'=2)),'$G(@$$^W4PRM@("HZMBAR")) D ERMDP2 Q
 I '$D(MDP1("L")),NMB,MDP1,$$^W4MSL(NMB),$$SHIVUK^W4L(NMB) D ERMDP2 Q
 ;
 I $D(P1HZOP),$G(P1HZOP)["BIT",'P1PCBIT!(P1HZOP="BIT") D ERMDP2 Q:P1HZOP="BIT1"  ;-- BITUL MI HAZMANA RISHONA LO LEHADPIS
 I $G(P1HZOP)="NOPC" D ERMDP2 Q
 ;
 I $$MVALL D ERMDP2 Q
 I +MDP1=0 D ERMDP2 Q
 ;
 I $$NOPCTAW,$$TAW^W4DLPK(NMB) D ERMDP2 Q
 ;
 I $D(MDP1("L")) D  G DEFPRN2
 .S PRINT=MDP1 D TV^W4MDP($$LPSUG^W4PLUK($$^W4MYDVN))
 ;
 I '$D(MDP1("L")) D ^W4MDP(MDP1)
 ;
DEFPRN2 I $G(P1HZMET),'$G(MDPETEK) D ERMDP2 Q
 I $G(P1HZMET),$$HZMDBL=2,MDP'["+",'$D(@$$^W4GL("P1EZ")@(PRT)),'$D(@$$^W4GL("P1EZK")@(PRT)),'$D(@$$^W4GL("P1EZRI")@(PRT)) D ERMDP2 Q
 I $G(P1HZMET),$$HZMDBL=2,MDP'["+",$D(@$$^W4GL("P1EZ")@(PRT))!$D(@$$^W4GL("P1EZK")@(PRT))!$D(@$$^W4GL("P1EZRI")@(PRT)) D  Q:$G(ERMDP)
 .I $G(PAR),$$PRINTIG^W3PRMDP(PAR)'["+" D ERMDP2
 ;
 I '$D(%MDP)!'$G(PRINT) D ERMDP(PRT) Q
 S CEVA=$$CEVA^W4P(PRT)
 ;
 I $G(PRINT),'$D(PRINTF(PRINT))!$$LINETL!($$NIFRAD^W4MDP(MDP1)&$G(PRMAIN))!($G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT)),'$G(ERMDP)!($G(P1HZOP)="BIT") D
 .N OKTL S OKTL=0
 .I $D(PRINTF(PRINT)),$G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT)!$$LINETL,'$G(@$$^W4PRM@("MANATL")) D
 ..I $G(UR)=2,$G(PAR),'$$^W4EZAT(PAR) Q
 ..I $G(UR)=3,'$G(CODP3) Q
 ..;
 ..N N
 ..S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D  Q:OKTL
 ...I +PRINT=+$P(^(N),"\",3),$P(^(N),"\",4)["gahn" S OKTL=1
 ..Q:'OKTL
 ..D HEADN
 .;
 .I $D(PRINTF(PRINT)),'OKTL Q
 .;
 .L +@$$^W4PC@(PRINT):4
 .D BEEP
 .D HEAD,HEAD1
 .S QPAR(PRINT)=0
 .S PRINTF(PRINT)=1
 ;
 Q
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
MVALL(STAM) ;
 I $G(P1HZOP)&$G(P1HZOP("ALL")) Q 1
 Q 0
 ;
HZMDBL(STAM) ;
 Q $G(@$$^W4PRM@("HZMDBL"))
 ;
MDPS(PRINT) ;
 Q $$MDPS^W4MDP(PRINT)
 ;
LINETL(STAM) ;
 Q $G(@$$^W4PRM@("LINETL"))
 ;
DEFMDP(PRINT) ;
 ;;W "PRINT="_PRINT,!
 N N,SUG S N=""
 N GMDP D GMDP
 F  S N=$O(@GMDP@(N)) Q:N=""  I +PRINT=+$P(^(N),"\",3) D TV^W4MDP($P(^(N),"\")) Q
 N W4PLUK S W4PLUK=$$^W4PLUK
 I N="" F  S N=$O(@W4PLUK@(N)) Q:N=""  I +PRINT=+$$LP^W4PLUK(N) D TV^W4MDP($$LPSUG^W4PLUK(N)) Q
 I '$D(%MDP("B")) D
 .S N="" S SUG=6
 .F  S N=$O(@GMDP@(N)) Q:N=""  S SUG=+$G(^(N)) Q:SUG
 .I SUG D TV^W4MDP(SUG)
 Q
 ;
 ;
DEFMDP1 ; --- MDP --> MDP1
 I MDP="" S MDP=$$ALLPRN
 I MDP[":" S MDP=$$^W4DEFMDP(MDP,$G(NMB))
 ;
 S MDP1=$S($G(DBL):$P(MDP,"&",DBL),1:$P(MDP,"&"))
 ;
 ;;S ^AA(HZM,"DEFPRN2",+$G(PRT))="MDP="_$G(MDP)_" & MDP1="_$G(MDP1)_" & PRINT="_$G(PRINT)_" & ERMDP="_$G(ERMDP)
 ;
 K MDP1("L") I MDP1["L"!$$GETP^%W1PRM("PRINTLOCAL") D
 .S MDP1=$$LP^W4PLUK($$^W4MYDVN),MDP1("L")=""
 .I $G(P1HZMET) S MDPETEK=1
 ;
 ;
 K MDP1("C") I MDP1["C",$$^W4MSL(NMB) D  I 'MDP1 D ERMDP2 Q
 .S MDP1=$G(@$$^W4GL("LKHMDP")@(+$$SUGL^W4L(NMB)))
 ;
 I $G(NMB),$$^W4MSD(NMB),(HZSCR="P1HZTA"!(HZSCR="P1HZT1"))&$$^W4DLPK(NMB)!$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) D ERMDP2 Q
 ;
 S MDP1=+MDP1
 Q
 ;
 ;
HEAD D HEAD^W4HZMPC 
 Q
 ;
HEAD1 D HEAD1^W4HZMPC
 Q
 ;
HEADN D HEADN^W4HZMPC
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
BEEP ;
 D BEEP^W4HZMPC
 Q
 ;
GMDP ;
 S GMDP=$$^W4PRM_"(""MDP"")"
 Q
 ;
ALLPRN(STAM) ;
 N PRN,N S PRN=""
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .N A S A=$G(^(N)) I $P(A,"\",4)["wacn" Q
 .S PRN=PRN_"&"_N
 S PRN=$E(PRN,2,120)
 ;
 I $$SF^W4PRM S PRN="1&3"
 ;
 Q PRN
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DEFPRN
W4DEFPRN(HZM,PRT) ; [ 21.07.25 04:35 ] [ 26.05.25 05:07 ] [ 22.01.24 11:45 ] 
 ; -- INPUT : HZM,PRT,MDPMAIN,MDPMAIN1,MDPETEK,NMB,P1HZOP,P1HZMET,UR,NOPC
 ; -- OUTPUT : -- MDP
 ; $D(P1EZT) - LO AZMAI ?
 ;-------------------------------------------------------------------------
 S MDP=0
 ;
 I $G(HZM)=""!($G(PRT)="") D ERMDP2 Q
 ;;S ^MDPMAIN(HZM,PRT)=$G(MDPMAIN)
 ;
 ; --------- BDIKA IM PARIT YESH LEHADPIS LE MADPESET SHEL PARIT ROSHI -------
 ;
 S MDP=$$PRINTIG(PRT)
 ;;S ^AA("MDP")=MDP
 ;
DEFPRN1 N MDP1
 D DEFMDP1 ; --> MDP1 ( MADPESET KONKRETI )
 I $$NUM(MDP1)=0 D ERMDP2 Q
 ;
 N SUGS1 S SUGS1=$TR($$SUGL1^W4L(NMB),".","")
 I SUGS1["TAKE" S SUGS1="TAW"
 ;
 N SUGMDP1 S SUGMDP1=""
 I $L(MDP1) S SUGMDP1=$P($G(@$$^W4PRM@("MDP",MDP1)),"\",4)
 ;
 ;;M ^AA("MDP1")=MDP1
 ;
 ;---------------- BDIKOT IM LO ZARIH LEADPIS  --------------------------------
 I '$D(MDP1("L")),NMB,MDP1,$$^W4MSD(NMB),'$D(P1HZOP),SUGMDP1["xa",SUGS1["xa"!(SUGS1["TAW"&($G(@$$^W4PRM@("TAWHZ"))'=2)),'$G(@$$^W4PRM@("HZMBAR")) D ERMDP2 Q
 ;
 I $D(P1HZOP),$G(P1HZOP)["BIT",'P1PCBIT!(P1HZOP="BIT") D ERMDP2 Q:P1HZOP="BIT1"  ;-- BITUL MI HAZMANA RISHONA LO LEHADPIS
 I $G(P1HZOP)="NOPC" D ERMDP2 Q
 ;
 I $$MVALL D ERMDP2 Q
 ;
 ;;M ^AA("MDP11")=MDP1
 I $$NUM(MDP1)=0 D ERMDP2 Q
 ;
 I $$NOPCTAW,$$TAW^W4DLPK(NMB) D ERMDP2 Q
 ;
 I $D(MDP1("L")) D  G DEFPRN2
 .N MYDVN S MYDVN=$$^W4MYDVN
 .S PRINT=MDP1 D TV^W4MDP($$LPSUG^W4PLUK(MYDVN))
 ;
 I '$D(MDP1("L")) D ^W4MDP(MDP1)
 ;
DEFPRN2 I $G(P1HZMET),'$G(MDPETEK) D ERMDP2 Q
 I $G(P1HZMET),$$HZMDBL=2,MDP'["+",'$$TSF(PRT) D ERMDP2 Q
 I $G(P1HZMET),$$HZMDBL=2,MDP'["+",$$TSF(PRT) D  Q:$G(ERMDP)
 .I $G(PAR),$$PRINTIG(PAR)'["+" D ERMDP2
 ;
 I $D(NOPC) Q  ;-- 11/05/21
 I '$D(%MDP)!'$G(PRINT),'$D(NOPC) D ERMDP(PRT) Q
 ; --------------------------------------------------------------------
 ;
 S CEVA=$$CEVA^W4P(PRT)
 ; --- PRINTF(PRINT) - WAS PRINTED ANYTHING TO THIS PRINTER
 ; ----------------------- KOTERET TAHTONA + HADASHA ------------------------
 ;
 I '$D(NOPC),$G(PRINT),'$D(PRINTF(PRINT))!$$LINETL!($$NIFRAD^W4MDP(MDP1)&$G(PRMAIN))!($$AINIFRAD&$D(P1EZT)),'$G(ERMDP)!($G(P1HZOP)="BIT") D
 .N OKTL S OKTL=0
 .I $D(PRINTF(PRINT)),$$AINIFRAD&$D(P1EZT)!$$LINETL,'$G(@$$^W4PRM@("MANATL")) D
 ..I $G(UR)=2,$G(PAR),'$$^W4EZAT(PAR) Q  ; -- TOSEFET RAGILA -> LAZET
 ..I $G(UR)=3,'$G(CODP3) Q  ; -- TOSEFET RAGILA -> LAZET
 ..;
 ..N N ; ---- LEHADPIS KOT TAHT & LITLOSH RAK IM MADP MITBAH - ???
 ..S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D  Q:OKTL
 ...I +PRINT=+$P(^(N),"\",3),$P(^(N),"\",4)["gahn" S OKTL=1
 ..Q:'OKTL
 ..D HEADN
 .;
 .I $D(PRINTF(PRINT)),'OKTL Q  ; -- WAS PRINTED ANYTHING WITHOUT DOWN HEADER
 .;
 .I '$$PRMANA^W4HZMPC(HZM) L +@$$^W4PC@(PRINT):4 ;; -- 07/07/22
 .D
 ..D BEEP
 ..D HEAD,HEAD1
 ..S QPAR(PRINT)=0
 ..S PRINTF(PRINT)=1
 ;
 Q
 ;
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
MVALL(STAM) ;
 I $G(P1HZOP)&$G(P1HZOP("ALL")) Q 1
 Q 0
 ;
HZMDBL(STAM) ;
 Q $G(@$$^W4PRM@("HZMDBL"))
 ;
MDPS(PRINT) ;
 Q $$MDPS^W4MDP(PRINT)
 ;
LINETL(STAM) ;
 Q $G(@$$^W4PRM@("LINETL"))
 ;
DEFMDP(PRINT) ;
 ;;W "PRINT="_PRINT,!
 N N,SUG S N=""
 N GMDP D GMDP
 F  S N=$O(@GMDP@(N)) Q:N=""  I +PRINT=+$P(^(N),"\",3) D TV^W4MDP($P(^(N),"\")) Q
 N W4PLUK S W4PLUK=$$^W4PLUK
 I N="" F  S N=$O(@W4PLUK@(N)) Q:N=""  I +PRINT=+$$LP^W4PLUK(N) D TV^W4MDP($$LPSUG^W4PLUK(N)) Q
 I '$D(%MDP("B")) D
 .S N="" S SUG=6
 .F  S N=$O(@GMDP@(N)) Q:N=""  S SUG=+$G(^(N)) Q:SUG
 .I SUG D TV^W4MDP(SUG)
 Q
 ;
 ;
DEFMDP1 ; --- MDP --> MDP1
 I '$D(NMB),$G(HZM) S NMB=$$NMB^W4HZMST(HZM)
 I MDP="" S MDP=$$ALLPRN
 I MDP[":" S MDP=$$^W4DEFMDP(MDP,$G(NMB))
 ;
 S MDP1=$S($G(DBL):$P(MDP,"&",DBL),1:$P(MDP,"&"))
 ;
 ;;S ^AA(HZM,"DEFPRN2",+$G(PRT))="MDP="_$G(MDP)_" & MDP1="_$G(MDP1)_" & PRINT="_$G(PRINT)_" & ERMDP="_$G(ERMDP)
 ;
 K MDP1("L") I MDP1["L"!$$GETP^%W1PRM("PRINTLOCAL") D
 .N DV S DV=$$^W4MYDVN
 .I $$SF^W4PRM,DV=13!(DV=14) S MDP1=0 Q
 .S MDP1=$$LP^W4PLUK(DV),MDP1("L")=""
 .I $G(P1HZMET) S MDPETEK=1
 ;
 ;
 K MDP1("C") I MDP1["C",$$^W4MSL(NMB) D  I 'MDP1 D ERMDP2 Q
 .S MDP1=$G(@$$^W4GL("LKHMDP")@(+$$SUGL^W4L(NMB)))
 ;
 I $G(NMB),$$^W4MSD(NMB),$$^W4DLPK(NMB)!$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) D ERMDP2 Q
 ;
 S MDP1=+MDP1
 ;
 I MDP'["&" D
 .I $$YARS&(HZM#2)&(MDP1=1) S MDP1=2 Q
 .I $$YANB&(HZM#2)&(MDP1=1) S MDP1=5 Q
 .;;I $$YASR&(HZM#2)&(MDP1=1) S MDP1=2 Q
 .I $$YAAT&(HZM#2)&(MDP1=1) S MDP1=2 Q
 .I $$YARN&(HZM#2)&(MDP1=1) S MDP1=2 Q
 .;
 .I MDP1 D
 ..N A S A=$G(@$$^W4PRM@("MDP",MDP1))
 ..N MDPA S MDPA=$P(A,"\",8)
 ..I MDPA,MDPA<24,HZM#2 S MDP1=MDPA
 Q
 ;
 ;
YATG(STAM)
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702004 Q 1
 Q 0
 ;
YARS(STAM)
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702190 Q 1
 Q 0
 ;
YANB(STAM)
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702005 Q 1
 Q 0
 ;
YASR(STAM)
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702171 Q 1
 Q 0
 ;
YAAT(STAM)
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702195 Q 1
 Q 0
 ;
YARN(STAM)
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702208 Q 1
 Q 0
 ;
HEAD D HEAD^W4HZMPC 
 Q
 ;
HEAD1 D HEAD1^W4HZMPC
 Q
 ;
HEADN D HEADN^W4HZMPC
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
BEEP ;
 D BEEP^W4HZMPC
 Q
 ;
GMDP ;
 S GMDP=$$^W4PRM_"(""MDP"")"
 Q
 ;
ALLPRN(STAM) ;
 N PRN,N,END S PRN="",END=0
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D  Q:END
 .N A S A=$G(^(N)) I $P(A,"\",4)["wacn" Q
 .S PRN=PRN_"&"_N
 .I $G(@$$^W4PRM@("ALLPRN1")) S END=1
 S PRN=$E(PRN,2,120)
 ;
 I $$SF^W4PRM S PRN="1&3"
 ;
 Q PRN
 ;
 ;
SRCMDP(PRT) ; 
 N (JB,%ARG,HZM,PRT,DBL)
 I $G(HZM) S NMB=$$NMB^W4HZMST(HZM)
 S MDP=$$PRINTIG(PRT)
 I MDP=0 Q 0
 D DEFMDP1
 Q MDP1
 ;
NUM(TX) ; 
 N J,OU S OU=""  
 F J=1:1:$L(TX) Q:$E(TX,J)'?1N  S OU=OU_$E(TX,J)
 Q OU 
 ;
TSF(PRT) ; 
 I $D(@$$^W4GL("P1EZ")@(PRT))!$D(@$$^W4GL("P1EZRI")@(PRT))!$D(@$$^W4GL("P1EZK")@(PRT)) Q 1
 Q 0
 ;
PRINTIG(PRT) ; 
 Q $$PRINTIG^W3PRMDP(PRT)
 ;
AINIFRAD(STAM) ;
 Q $G(@$$^W4PRM@("AINIFRAD"))
 ;
MDPTAIMAN(PRT) ; 
 N PRTLST
 S PRTLST=",11,13,16,17,18,19,20,24,25,26,27,28,31,32,33,34,35,37,"
 S PRTLST=PRTLST_"41,42,43,44,45,47,52,62,63,65,67,72,73,74,75,76,78,"
 S PRTLST=PRTLST_"80,81,86,87,88,89,90,117,118,120,122,150,151,163,166,"
 ;
 I PRTLST[(","_PRT_",") Q "2&4"
 Q 4 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DEL
W4DEL(HZM) ; [ 25.04.24 17:07 ] [ 16.10.20 04:15 ] [ 08.07.20 19:04 ] 
 I $G(HZM)="" Q 0
 I $G(HZM)<-20,$D(@$$^W4ORD@(HZM,"DELORD")) Q -1
 Q $G(@$$^W4GL("P1DEL")@(HZM))
 ;
I(HZM) ;
 I $G(HZM)="" Q 0
 I $G(HZM)<-20,$D(@$$^W4ORD@(HZM,"DELBY")) Q $G(^("DELBY"))
 Q $G(@$$^W4GL("P1DELI")@(HZM))
 ;
DEL(HZM) ;
 I $G(HZM)="" Q 0
 I $$W4DEL(HZM)!$$I(HZM) Q 1
 Q 0
 ;
DELYOM(HZM) ; 
 I $G(HZM)="" Q 0
 I '$$DEL(HZM) Q 0
 N DTK S DTK=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 N HZB S HZB=$$W4DEL(HZM)
 N OK S OK=0
 I HZB D  Q OK
 .N DTB S DTB=$$^%L1DC($$DATK^W4HZMST(HZB),3)
 .I HZB,DTB=DTK S OK=1
 N HZI S HZI=$$I(HZM) I 'HZI Q 0
 N DTI S DTI=$$^%L1DC($$DATK^W4HZMST(HZI),3)
 I DTI=DTK Q 1
 Q 0
 
 

W4DELCB
W4DELCB(NOMCB) ; [ 08.02.13 12:45 ] [ 30.12.10 19:23 ] [ 07.08.09 16:20 ] [
 N HMK S HMK=0
 I $$HMK^W4LHB S HMK=1
 I NOMCB["HMK" S HMK=1
 S NOMCB=+NOMCB
 I HMK,$G(@$$^W4GL("W4DELHMK")@(NOMCB)) Q ^(NOMCB)
 I HMK,'$G(@$$^W4GL("W4DELHMK")@(NOMCB)) Q 0
 I $G(@$$^W4GL("W4DELCB")@(NOMCB)) Q ^(NOMCB)
 Q 0

W4DELDEL
W4DELDEL(HZM) ; [ 19.04.15 08:41 ] [ 18.04.15 09:22 ] [ 17.04.15 22:01 ]
 N (JB,%ARG,%REM,HZM)
 I '$$^W4CLOSE(HZM) Q "ORDERNOTCLOSED"
 I '$$TSHL^W4HZMST(HZM) Q $$DELDEL(HZM)
 I $$DELDEL^W4PRM Q $$BITBIT(HZM)
 Q "NOTDELETINGDELETEDORDER"
 ;
 ;
DELDEL(HZM) ;
 D TMPORD
 K @TMPORD
 I '$$^W4GETHZ(HZM) Q "ERROR"
 N REST S REST=$G(@$$^W4GL("P1REST")@(HZM))
 I $L(REST) Q "ORDERALREADYRESTORED"
 N A,N,LAST,RES,HNH,DMSH,TSHL
 S LAST=$O(@TMPORD@(9999),-1)
 S N=LAST+1
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  I N Q:$$QNST^W3HZMST(JB,N)>0  D
 .S A=$G(^(N))
 .I $D(@TMPORD@("BIT",N))#2,'$D(@TMPORD@("MVTO",N)) D
 ..K @TMPORD@(N)
 ..N STBIT S STBIT=@TMPORD@("BIT",N)
 ..N MRG S MRG=+$P(STBIT,"*",8) I MRG K @TMPORD@("MRG",MRG)
 ..K @TMPORD@("BIT",N)
 ..K @TMPORD@("ST",N)
 ;
 K @TMPORD@("S")
 K @TMPORD@("CB")
 ;
 S RES=$$GETSUM^W3HZMST(JB)
 S HNH=$P(RES,";",2)
 S DMSH=$P(RES,";",3)
 S TSHL=$P(RES,";",4)
 ;
 D PUT^W3HZMST(JB,"HNH",HNH)
 D PUT^W3HZMST(JB,"DMSH",DMSH)
 D PUT^W3HZMST(JB,"TSHL",TSHL)
 D KILL^%W1PRM("HZM")
 ;
 S @$$^W4GL("P1REST")@(HZM)=$H_";"_$$GETP^%W1PRM("MLZR")_";"_$$^W4MYDVN
 ;;Q $$^W4NEWHZ(JB,0,1)
 Q 1  ;;+$$NMB^W3HZMST(JB)
 ;
 ;
BITBIT(HZM) ;
 N RES S RES=$$^W4HZBIT(HZM)
 I $P(RES,":")="OK",$P(RES,":",2)>0 Q 1
 Q $P(RES,":",3)
 ;
TMPORD ;
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q

W4DELMLY
W4DELMLY(DT,VDOC,ORG,NOM) ; [ 01.12.12 14:35 ] [ 29.11.12 06:50 ] [ 24.10.12 18:12 ]
 N (JB,%ARG,%REM,DT,VDOC,ORG,NOM)
 S NOM=+$G(NOM)
 N GLMLY S GLMLY=$$^W4GL("W4MLY")
 N GLML S GLMLY=$$^W4GL("W4ML")
 ;
 K @$$^W4MAIN("VRM")
 ;
 S PAR="" F  S PAR=$O(@GLMLY@(DT,PAR)) Q:PAR=""  D
 .S QNM=$G(@GLMLY@(DT,PAR,"I",ORG,VDOC,NOM)) Q:'QNM
 .S @$$^W4MAIN("VRM")@(DT,PAR)=""
 .I VDOC="IHB"!(VDOC="ITM") D
 ..S $P(@GLMLY@(DT,PAR),"*")=$P($G(@GLMLY@(DT,PAR)),"*")-QNM
 ..S $P(@GLML@(PAR),"*")=$P($G(@GLML@(PAR)),"*")-QNM
 .I VDOC="IHBZ"!(VDOC="ITZ") D
 ..S $P(@GLMLY@(DT,PAR),"*",3)=$P($G(@GLMLY@(DT,PAR)),"*",3)-QNM
 ..S $P(@GLML@(PAR),"*",3)=$P($G(@GLML@(PAR)),"*",3)-QNM
 .I VDOC="ITK" D
 ..S $P(@GLMLY@(DT,PAR),"*",4)=$P($G(@GLMLY@(DT,PAR)),"*",4)-QNM
 ..S $P(@GLML@(PAR),"*",4)=$P($G(@GLML@(PAR)),"*",4)-QNM
 .K @GLMLY@(DT,PAR,"I",ORG,VDOC,NOM)
 .D ^%S2GLSV(GLMLY_"("""_DT_""","""_PAR_""",""I"","""_ORG_""","""_VDOC_""","""_NOM_""")",$$^W4FGIB,"K")
 ;
 S DT="" F  S DT=$O(@$$^W4MAIN("VRM")@(DT)) Q:DT=""  D
 .S PAR="" F  S PAR=$O(@$$^W4MAIN("VRM")@(DT,PAR)) Q:PAR=""  D
 ..D ^%S2GLSV(GLMLY_"("""_DT_""","""_PAR_""")",$$^W4FGIB)
 ..D ^%S2GLSV(GLML_"("""_PAR_""")",$$^W4FGIB)
 ;
 K @$$^W4MAIN("VRM")
 Q

W4DELPYM
W4DELPYM(PRM) ; HAZMANA SGURA --> HAKAMAT AZMANA HADASHA [ 15.10.24 12:13 ] [ 20.03.17 18:10 ] [ 17.03.17 13:20 ] 
 N (JB,%ARG,PRM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S WHO=$$GET^W4TMPANS("DELPAYM","WHOSUBMIT")
 S WHO=$$DOP^W4NAME(WHO)
 I WHO="00000",$$PSWDRG^W4PRM S WHO=$$DOP^W4NAME($$GETP^%W1PRM("MNL"))
 K @$$^W4MAIN("TMPANS")
 ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 S VT=$P(PRM,";")
 I VT<1!(VT>3) Q "ER:-.1:VTNODEL" ; -- WAS > 4
 S IND=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 ;
 S HZM=$$GETP^%W1PRM("HZM")
 I HZM="" Q "ER:-.9:ORDERNUMBERNOTDEFINED"
 I $G(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S HZMDEL=$P(^("DEL"),"\",4) Q "ER:"_HZMDEL_":PAYMENTALREADYDELETED"
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 I $$^W4HZFR(NMB),$$^W4MSD(NMB) Q "ER:-.11:TABLEOPENEDNODELETE"
 ;
 D PUT^%W1PRM("DELPAYMORD",HZM)
 ;
 N HZMT S HZMT=-JB ; --- HAKAMAT HAZMANA FICTIVIT IM TASHLUM LE BITUL
 ;
 S HD=$G(@$$^W4ORD@(HZM))
 ;
 F I=8,9,10,11,12,17,19,24 D
 .S $P(HD,"\",I)=""
 S @$$^W4ORD@(HZMT)=HD
 ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 ;
 M @$$^W4ORD@(HZMT,"CB",IND,NOM)=@$$^W4ORD@(HZM,"CB",IND,NOM)
 ;
 I IND="ASR",$D(@$$^W4ORD@(HZM,"CB","VC",NOM)) D
 .M @$$^W4ORD@(HZMT,"CB","VC",NOM)=@$$^W4ORD@(HZM,"CB","VC",NOM)
 ;
 K @$$^W4ORD@(HZMT,"CB",IND,"DEL")
 ;
 S TIP=0,SUM=0
 ;
 I VT=1 D
 .S SUM=+A,TIP=$P(A,"*",6),RZD=2
 ;
 I VT=2 D
 .S SUM=+A,TIP=$P(A,"*",7),RZD=3
 ;
 I VT=3 D
 .S SUM=$P(A,"*",6),TIP=$P(A,"*",27),RZD=4
 ;
 I VT=4 D
 .S SUM=$P(A,"*",4),TIP=$P(A,"*",20),RZD=5
 ;
 S SUMN=SUM-TIP
 S @$$^W4ORD@(HZMT,1)="0\\"_HZM_" dpnfda melyz oewiz\"_$J(SUMN,2,2)_"\1\\"_$J(SUMN,2,2)
 S $P(@$$^W4ORD@(HZMT,1),"\",10)="@@!"
 ;
 S $P(@$$^W4ORD@(HZMT,"CB"),"\",RZD)=SUM
 S $P(@$$^W4ORD@(HZMT,"CB"),"\",10)=TIP
 S $P(@$$^W4ORD@(HZMT),"\",11)=SUMN
 I VT'=4 S $P(@$$^W4ORD@(HZMT),"\",12)=SUM
 I VT=4 D
 .S $P(@$$^W4ORD@(HZMT),"\",17)=SUM
 ;
 K @$$^W4TMPORD
 I $$^W4GETHZ(HZMT)'=1 Q "ER:-.2:ERROR"
 ;
 D PUT^W4TMPANS("DEL","CAUSEDEL","0::melyz oewiz")
 D PUT^W4TMPANS("DEL","EXIT2KITCHEN?",0)
 ;
 N RES S RES=$$TV1^W4HZBIT(HZMT,1) ; ----- BITUL+SHIHZUR !!!!!!!!!!!!!!!!
 ;
 I $E(RES,1,2)="OK",$P(RES,":",2)>0 D
 .S MORD=$$GET^W4TMPANS("FNDORD","MORD")
 .I $P(MORD,",",2)>0 D
 ..S @$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")=$H_"\"_WHO_"\"_$$^W4MYDVN_"\"_$P(MORD,",",2)_"\"_$P(MORD,",",3)
 ;
 I $E(RES,1,2)="ER" D KILL^%W1PRM("DELPAYMORD")
 ;
 K @$$^W4TMPORD
 K @$$^W4ORD@(HZMT)
 D KILL^%W1PRM("HZM")
 D KILL^%W1PRM("NMB")
 Q RES
 ;
 ;
WHO(STAM) ;
 N WHO S WHO=$$GET^W4TMPANS("DELPAYM","WHOSUBMIT")
 I WHO="00000",$$PSWDRG^W4PRM S WHO=$$DOP^W4NAME($$GETP^%W1PRM("MNL"))
 I 'WHO Q $$GETP^%W1PRM("MLZR")
 Q WHO
 
 
 
 
 

W4DELST
W4DELST(GLB,SH) ; [ 18.03.19 14:18 ] [ 17.04.16 09:29 ] [ 20.05.15 10:51 ] 
 D DEL^%L1GSEQ(GLB,SH)
 N IN,N
 F IN="ST","BIT","MRG","HNH","HNHP","MVTO","MVFROM","TOAI","TS","FROM" D
 .S N=SH F  S N=$O(@GLB@(IN,N)) Q:N=""  D
 ..M ^(N-1)=^(N) K ^(N)
 Q
 
 

W4DEPGR
W4DEPGR(%REPN) ;     [ 22.02.13 18:52 ] [ 22.01.13 16:46 ] [ 21.01.13 22:17 ]
 ;;I %REPN="MHRA" S %REPN("MRK")=0
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4depgr.jsp?JB="_JB_"&REPN="_%REPN)
 Q
 ;
DAT S DATT=$$^%L1DC(DAT,1)
 I $$^%L1DC(DAT,4)<MEDATT S OK=0 Q
 I $$^%L1DC(DAT,4)>ADDATT S OK=0 Q
 I QUERY["miyceg" D
 .S DATT=$E(DAT,1,2)_"Y-"_$E(DAT,3,4)_"M"
 M MEPARIT("SET")=MEPAR("SET")
 Q
 ;
PAR ;
 S PAR=PARIT
 D PAR1
 I PRT="" S OK=0 Q
 I PRT<MEPAR S OK=0 Q
 I ADPAR,PRT>ADPAR,'$E(PRT) S OK=2 Q
 I ADPAR,PRT>ADPAR S OK=0 Q
 S SUGP=$$SUG^W4P(PRT) I SUGP<MESUGP!(SUGP>ADSUGP) S OK=0 Q
 S MHL=$P($G(@$$^W4GL("PARSUG")@(SUGP,1)),"\")
 I MHL<MEMHL!(MHL>ADMHL) S OK=0 Q
 N GL S GL=$G(@GLOB)
 ;
 I %REPN="MHAL" D  S OK=1 Q
 .Q:'$L(PRT)
 .S (x1,x2,x3,x4,x5,x6)=0
 .S x1=$P(GL,"*",1)
 .S x2=$$MH^W4P(PRT)
 .S x3=$$ALUT(PRT)
 .S x4=$P(GL,"*",2)-$P(GL,"*",4)
 .S x4=$J(x4*100/(100+$$MAMD^W4L($$^%L1DC(DAT,4))),2,2)
 .S x5=$J(x1*x3,2,2)
 .S x6=$S(x5:$J(x4-x5,2,2),1:0)
 ;
 I %REPN="W4MHRB" D  Q
 .S DEL=-($P(GL,"*",5)) ; +$P(GL,"*",6))
 .S x1=DEL
 .S x2=$P(GL,"*",1)
 .S x3=$P(GL,"*",2)
 .S x4=$P(GL,"*",4)
 .S x5=x3-x4
 .S x6=0 I x2 S x6=$J(x5/x2,2,2)
 .S x7=$J(x5*100/(100+$$MAMD^W4L($$^%L1DC(DAT,4))),2,2)
 .S OK=1
 ;
 S x1=$P(GL,"*",1)
 S x2=$P(GL,"*",2)
 S x3=$P(GL,"*",4)
 S x4=x2-x3
 S x6=$J(x4*100/(100+$$MAMD^W4L($$^%L1DC(DAT,4))),2,2)
 S x5=0 I x1 S x5=$J(x2/x1,2,2)
 S OK=1
 Q
 ;
PAR1 S PRT=PAR I $E(PAR,1,2)="A-" S PRT=$P(PAR,"-",2) G PAR10
 N PAR2 I PAR?1N.N1"-"1N.N D  Q
 .S PAR2=$P(PAR,"-",2)
 .S PRT=+$P(PAR,"-"),PRT1=$$SHEM^W4P(PRT)_" "_$G(@$$^W4GL("P1SBR")@(+PAR2))
PAR10 S:PRT="" PRT=" " S PRT1=$$SHEM^W4P(PRT)
 Q
 ;
CP N DT,MRKZ
 S MRKZ=+$$^%L1MRK
 F DT=MEDATT:1:ADDATT D
 .S DAT=$$^%L1DC(DT,2)
 .I $D(@$$^W4GL("PLUTOT")@(DAT,0)) D
 ..M @$$^W4GL("PLUMRK")@(DAT,MRKZ)=@$$^W4GL("PLUTOT")@(DAT,0)
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
ALUT(MUZAR) ;
 Q:$G(MUZAR)="" ""
 N GLBYM
 S GLBYM="^[^UCI(""MLG"")]YZM"
 N N,ALUT,AHZ S ALUT=0
 S N="" F  S N=$O(@GLBYM@(MUZAR,N)) Q:N=""  D
 .S AHZ=$P(^(N),"\",2) I 'AHZ S AHZ=100
 .S ALUT=ALUT+(^(N)*$$MHAL(N)*100/AHZ)
 Q $J(ALUT,3,3)
 ;
MHAL(PAR) ;
 Q $J($P($G(^[^UCI("MLG")]PARIT(PAR,3)),"*",4),3,3)

W4DEPPR0
W4DEPPRT(DEP,DT1,DT2) ; [ 11.07.18 09:37 ] [ 25.04.17 17:54 ] [ 23.04.17 14:54 ] 
 N (JB,%ARG,DEP,DT1,DT2)
 S DEP1="" I DEP S DEP1=$G(@$$^W4GL("DEP")@(DEP))
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 D CLOSE
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 W "<br>",!
  W $$^%W1DICT("ITEMSDEPREPORT<>"_DEP1_"<>"_DAT1_"<>"_DAT2)
 W "<br><br>",!
 ;
 W "<table id=""TblPrt"" width=""80%"" border=""1"" cellspacing=""0"" celpadding=""5px"" >",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th>"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("ORDER")_"</th>"
  W "<th>"_$$^%W1DICT("QUANT")_"</th>"
  W "<th>"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 ;
 S (SQN,SSUM)=0
 F DT=DT1:1:DT2 D
 .S PRT="" F  S PRT=$O(@$$^W4MAIN("VRM")@(DT,"DEP",DEP,"PRT",PRT)) Q:PRT=""  D
 ..S HZ="" F  S HZ=$O(@$$^W4MAIN("VRM")@(DT,"DEP",DEP,"PRT",PRT,HZ)) Q:HZ=""  D
 ...S A=$G(^(HZ))
 ...W "<tr style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"',this)"" >"
 ... S QN=$P(A,"\"),SUM=$P(A,"\",2)
 ... S PRT1=$$H2U^%L1FRM($$SHEM^W4P(PRT))
 ... S SQN=SQN+QN,SSUM=SSUM+SUM
 ... W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>"
 ... W "<td>"_PRT_"</td>"
 ... W "<td>"_PRT1_"</td>"
 ... W "<td>"_HZ_"</td>"
 ... W "<td>"_QN_"</td>"
 ... W "<td>"_$J(SUM,2,2)_"</td>"
 ...W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-size:"_$$^W3FSZ(14)_""" >"
  W "<td colspan=""4"">&nbsp;</td>"
  W "<td>"_SQN_"</td>"
  W "<td>"_$J(SSUM,2,2)_"</td>"
 W "</tr>",!
 W "</table>",!
 W "<br>"
 D CLOSE
 Q
 ;
CLOSE ;
 W "<br>"
  D ^W4BUTTON("close","CLOSE","Close()","color:red")
 W "<br>",!
 Q
 
 
 
 
 
 
 
 
 

W4DEPPRT
W4DEPPRT(DEP,DT1,DT2) ; [ 19.07.18 20:07 ] [ 12.07.18 11:36 ] [ 11.07.18 16:18 ] 
 N (JB,%ARG,DEP,DT1,DT2)
 S DEP1="" I DEP S DEP1=$G(@$$^W4GL("DEP")@(DEP))
 I DEP1="" S DEP1=DEP
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 D CLOSE(1)
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 ;
 W "<br>",!
  W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
   W $$^%W1DICT("ITEMSDEPREPORT<>"_DEP1_"<>"_DAT1_"<>"_DAT2)
  W "</span>"
 W "<br><br>",!
 ;
 W "<table id=""TblPrt"" width=""80%"" border=""1"" cellspacing=""0"" celpadding=""5px"" >",!
 W "<tr>"
  I '$$RKZ W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th>"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("QUANT")_"</th>"
  W "<th>"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 ;
 S (SQN,SSUM)=0
 ;
 I '$$RKZ D
 .F DT=DT1:1:DT2 D
 ..S (SQND,SSUMD)=0
 ..S PRT="" F  S PRT=$O(@$$^W4MAIN("VRM")@(DT,"DEP",DEP,"PRT",PRT)) Q:PRT=""  D
 ...S A=$G(^(PRT))
 ...S QN=$P(A,"\"),SUM=$P(A,"\",2)
 ...S PRT1=$$H2U^%L1FRM($$SHEM^W4P(PRT))
 ...S SQN=SQN+QN,SSUM=SSUM+SUM
 ...S SQND=SQND+QN,SSUMD=SSUMD+SUM
 ...W "<tr style=""cursor:pointer"" onClick=""ShowPrt('"_DEP_"','"_PRT_"','"_DT1_"','"_DT2_"',this)"" >"
 ... W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>"
 ... W "<td>"_PRT_"</td>"
 ... W "<td>"_PRT1_"</td>"
 ... W "<td>"_QN_"</td>"
 ... W "<td>"_$J(SUM,2,2)_"</td>"
 ...W "</tr>",!
 ..
 ..I SQND!SSUMD D
 ...W "<tr style=""background-color:lightyellow;font-weight:bold;font-size:"_$$^W3FSZ(12)_""" >"
 ... W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>"
 ... W "<td colspan=""2"">&nbsp;</td>"
 ... W "<td>"_SQND_"</td>"
 ... W "<td>"_$J(SSUMD,2,2)_"</td>"
 ...W "</tr>",!
 .;
 .W "<tr style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(14)_""" >"
 . W "<td colspan=""3"">&nbsp;</td>"
 . W "<td>"_SQN_"</td>"
 . W "<td>"_$J(SSUM,2,2)_"</td>"
 .W "</tr>",!
 ;
 ;
 I $$RKZ D
 .N VRM1 S VRM1=$$^W4MAIN("VRM1") K @VRM1
 .F DT=DT1:1:DT2 D
 ..S PRT="" F  S PRT=$O(@$$^W4MAIN("VRM")@(DT,"DEP",DEP,"PRT",PRT)) Q:PRT=""  D
 ...S A=$G(^(PRT))
 ... S QN=$P(A,"\"),SUM=$P(A,"\",2)
 ... S $P(@VRM1@(DEP,PRT),"\",1)=PRT
 ... S $P(@VRM1@(DEP,PRT),"\",2)=$P($G(@VRM1@(DEP,PRT)),"\",2)+QN
 ... S $P(@VRM1@(DEP,PRT),"\",3)=$P($G(@VRM1@(DEP,PRT)),"\",3)+SUM
 ... S SQN=SQN+QN,SSUM=SSUM+SUM
 .
 .N VRM2 S VRM2=$$^W4MAIN("VRM2") K @VRM2
 .D SORT
 .;
 .S IND="" F  S IND=$O(@VRM2@(DEP,IND)) Q:IND=""  D
 ..S A=$G(^(IND))
 ..S PRT=$P(A,"\")
 ..W "<tr style=""cursor:pointer"" onClick=""ShowPrt('"_DEP_"','"_PRT_"','"_DT1_"','"_DT2_"',this)"" >"
 .. S QN=$P(A,"\",2),SUM=$P(A,"\",3)
 .. S PRT1=$$H2U^%L1FRM($$SHEM^W4P(PRT))
 .. W "<td>"_PRT_"</td>"
 .. W "<td>"_PRT1_"</td>"
 .. W "<td>"_QN_"</td>"
 .. W "<td>"_$J(SUM,2,2)_"</td>"
 ..W "</tr>",!
 .
 .W "<tr style=""background-color:yellow;font-size:"_$$^W3FSZ(14)_""" >"
 . W "<td colspan=""2"">&nbsp;</td>"
 . W "<td>"_SQN_"</td>"
 . W "<td>"_$J(SSUM,2,2)_"</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<br>"
 ;;K @$$^W4MAIN("VRM1")
 ;;K @$$^W4MAIN("VRM2")
 D CLOSE(2)
 Q
 ;
CLOSE(N) ;
 W "<div id=""close"_N_""">",!
  D BUTS^W4PRTDEP
  W $$NBSP^%L1FRM(10) 
  I N=1 D SELSORT
 W "</div>",!
 Q
 ;
RKZ(STAM) ; 
 Q $G(%ARG("RKZ")) 
 ;
SELSORT ; 
 W "<select id=""sort"" onChange=""Sort()"" >",! 
  W "<option value=""1"" "_$$SEL(1)_""">"
   W $$H2U^%L1FRM("cew itl oein")
  W "</option>",!
  W "<option value=""2"" "_$$SEL(2)_" >"
   W $$H2U^%L1FRM("my itl oein")
  W "</option>",!
  W "<option value=""3"" "_$$SEL(3)_" >"
   W $$H2U^%L1FRM("zenk itl oein")
  W "</option>",!
  W "<option value=""4"" "_$$SEL(4)_" >"
   W $$H2U^%L1FRM("mekq itl oein")
  W "</option>",!
 W "</select>",!
 Q
 ;
IND(A,SORT) ; 
 N IND
 I SORT<2 D
 .S IND=$P(A,"\") S:IND="" IND=0
 ;
 I SORT=2 D
 .N PRT,PRT1 S PRT=$P(A,"\"),PRT1=""
 .I PRT S PRT1=$$SPA^%L1FRM($$SHEM^W4P(PRT))
 .S IND=$$ENG^%L1FRM($$INV^%L1FRM(PRT1),10)_$J(PRT,10)
 ;
 I SORT=3 D
 .S IND=$J($P(A,"\",2),10)_$J(PRT,10)
 ;
 I SORT=4 D
 .S IND=$J($P(A,"\",3)*100,10)_$J(PRT,10)
 ;
 Q IND
 ;
 ;
SORT ; 
 N PRT,A
 S PRT="" F  S PRT=$O(@$$^W4MAIN("VRM1")@(DEP,PRT)) Q:PRT=""  D
 .S A=$G(^(PRT))
 .S IND=$$IND(A,+$G(%ARG("SORT")))
 .S @VRM2@(DEP,IND)=A
 Q
 ;
SEL(IND) ; 
 N SORT S SORT=+$G(%ARG("SORT")) 
 I SORT=0 S SORT=1
 I SORT=IND Q " selected=""selected"" "
 Q "" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DEPREP
W4DEPREP ; [ 12.02.25 15:55 ] [ 03.08.22 15:38 ] [ 07.06.22 08:50 ] 
 N (JB,%ARG)
 D ^%W1ARG
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 I '$G(%ARG("TOTYR")) D TBMAM
 W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"_$$^%W1DICT("DEPREPORTPERMONTH2YEAR",$G(%ARG("YY")))_"</span>",!
 D TMPREP K @TMPREP S DLM=","
 S @TMPREP@("HD0",1)="  "_$$TV^%W1DICT($$^%W1LNG,"DEPREPORTPERMONTH2YEAR",$G(%ARG("YY")))_"  "
 I $G(DAYS),DAYS'=1111111 W "<br>" D HDDAYS(DAYS)
 ;
 W "<br><br>",!
 S WD=80
 I $$PRINT S WD=100
 ;
 W "<table id=""TblDep"" width="""_WD_"%"" cellpadding=""3px"" border=""1"" cellspacing=""0"" >",!
  W "<tr>"
   I '$$PRINT,$$^W4TABLET'=1 W "<th>"_$$^%W1DICT("GRAPHS")_"</th>"
   W "<th>"_$$^%W1DICT("DEPARTMENT")_"</th>"
   S @TMPREP@("HD")=$$TV^%W1DICT($$^%W1LNG,"DEPARTMENT")
   F I=MM1:1:MM2 D
   .W "<th>"_$$^%W1DICT("MM"_I)_"</th>"
   .S @TMPREP@("HD")=@TMPREP@("HD")_DLM_$$TV^%W1DICT($$^%W1LNG,"MM"_I)
   W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
   S @TMPREP@("HD")=@TMPREP@("HD")_DLM_$$TV^%W1DICT($$^%W1LNG,"TOTAL")
  W "</tr>",!
  ;
  K SSUM
  S VRM=$$^W4MAIN("VRM")
  S VRMG=$$^W4MAIN("VRMG") K @VRMG@("DEP")
 ;
  S DEP="",K=0 F I=1:1 S DEP=$O(@VRM@(DEP)) Q:DEP=""  D
  .W "<tr "
  . I '(I#2) W " style=""background-color:white"" "
  .W ">"
  . I '$$PRINT,$$^W4TABLET'=1 D  ; ***
  .. W "<td align=""center"">"
  ..  D ^W4BUTTON("graph"_DEP,$$^%W1DICT("GRAPH"),"DepGraph('"_DEP_"','"_YY_"','"_MM1_"','"_MM2_"','"_$G(DAYS)_"',this)","font-weight:bold;color:green")
  .. W "</td>" 
  . W "<td style=""background-color:lightgrey;font-weight:bold"">"_$$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))_"</td>"
  . S K=K+1,@TMPREP@(K)=$TR($G(@$$^W4GL("DEP")@(DEP)),DLM," ")
  . F MM=MM1:1:MM2 D
  . .S MM0=$TR($J(MM,2)," ",0)
  . .S SUM=$G(@VRM@(DEP,"DEP",MM0,"S"))-$G(@VRM@(DEP,"DEP",MM0,"HP"))
  . .S HNH=$G(@VRM@(DEP,"DEP",MM0,"HNH"))
  . .S DMS=$G(@VRM@(DEP,"DEP",MM0,"DMS"))
  . .S TOT=SUM
  . .I '$$NODMS S TOT=SUM-HNH+DMS
  . .I '$$DEPNOMAM(DEP),$$LMAM S TOT=$J(TOT*100/(100+$$AHMAM(MM0,YY)),5,5)
  . .S SSUM("MM",MM)=$G(SSUM("MM",MM))+TOT
  . .S SSUM("DEP",DEP)=$G(SSUM("DEP",DEP))+TOT
  . .N TOTN S TOTN=$$RKVN(TOT)
  . .S @VRMG@("DEP",DEP,MM0)=TOT
  . .W "<td>"_TOTN_"</td>"
  . .S @TMPREP@(K)=@TMPREP@(K)_DLM_$J(TOT,2,2)
  .
  . N STOTN S STOTN=$$RKVN($G(SSUM("DEP",DEP)))
  . W "<td "_$$STYLETOT_" >"_STOTN_"</td>"
  . S @VRMG@("DEP",DEP)=$TR(STOTN,",","")
  . S @TMPREP@(K)=@TMPREP@(K)_DLM_$J($TR(STOTN,",",""),2,2)
  .W "</tr>",!
  ;
  S K=K+1
  W "<tr "_$$STYLETOT_" >"
   I '$$PRINT,$$^W4TABLET'=1 D
   .W "<td align=""center"">"
   . D ^W4BUTTON("graphtot","GRAPH","DepGraph('TOT','"_YY_"','"_MM1_"','"_MM2_"','"_$G(DAYS)_"')","font-weight:bold;color:green")
   .W "</td>"
   W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
   ;;S @TMPREP@(K)=$$TV^%W1DICT($$^%W1LNG,"TOTAL")
   S SSUM=0
   F MM=MM1:1:MM2 D
   .S SSUM=SSUM+$G(SSUM("MM",MM))
   .W "<td>"_$$RKVN($G(SSUM("MM",MM)))_"</td>"
   W "<td style=""color:brown;font-size:"_$$^W3FSZ(14)_";font-weight:bold"" >"_$$RKVN(SSUM)_"</td>"
  W "</tr>",! 
  ;
 
 W "</table>",!
 W "</div>",!
 ;
 D SVEX("W4DEPREP")
 Q
 ;
 ;
DEPSQN(DEP,DT) ;
 N DEPSQN
 N VRM S VRM=$$^W4MAIN("VRM")
 S DEPSQN=$G(@VRM@(DT,"DEP",DEP,"Q"))
 Q DEPSQN
 ;
DEPSUM(DEP,DT) ;
 N DEPSUM
 N VRM S VRM=$$^W4MAIN("VRM")
 S DEPSUM=$G(@VRM@(DT,"DEP",DEP,"S")) ;
 Q DEPSUM
 ;
 ;
DEPHNHP(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 Q $G(@VRM@(DT,"DEP",DEP,"HP"))
 ;
DEPHNH(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 Q $G(@VRM@(DT,"DEP",DEP,"HNH"))
 ;
DEPDMS(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 Q $G(@VRM@(DT,"DEP",DEP,"DMS"))
 ;
DEPTIP(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 Q $G(@VRM@(DT,"DEP",DEP,"TIP"))
 ;
PREP(MM1,MM2,YY,DAYS,JB)
 N (JB,%ARG,%REM,MM1,MM2,YY,DAYS)
 I $L(YY)=4 S YY=$E(YY,3,4)
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 S MM1=$TR($J(MM1,2)," ",0)
 S MM2=$TR($J(MM2,2)," ",0)
 S D1=$$^%L1DC("01"_MM1_YY,3)
 S D2=$$LM^%L1DC("01"_MM2_YY)
 S PRMONTH=""
 D PRTSUM^W4MAAZAN(D1,D2)
 D PUT^%W1PRM("W4DEPREP",1)
 Q
 ;
INIT ;
 Q
 ;
SELYY ;
 W $$^%W1DICT("CHOICEYEAR")_"&nbsp;"
 W "<select id=""YY"">",!
 N I F I=2011:1:2030 D
 .W "<option "
 .D
 ..I $G(%ARG("YY")),I=%ARG("YY") W "selected=""selected"" " Q
 ..I '$G(%ARG("YY")),I=$ZD($H,"YEAR") W "selected=""selected"" "
 .W ">"_I_"</option>",!
 W "</select>",!
 Q
 ;
SELMM(ID,TXT) ;
 W $$^%W1DICT(TXT)_"&nbsp;"
 W "<select id="""_ID_""">",!
 N I F I=1:1:12 D
 .W "<option value="""_I_""" "
 .D
 ..I $G(%ARG("MM")),I=+%ARG("MM") W "selected=""selected"" " Q
 ..I '$G(%ARG("MM")),TXT="TOMONTH",I=+$ZD($H,"MM") W "selected=""selected"" "
 .W ">"_$$^%W1DICT("MM"_I)_"</option>",!
 W "</select>",!
 Q
 ;
STYLETOT(SZ) ;
 I $G(SZ)<12 S SZ=12
 Q "style=""font-size:"_$$^W3FSZ(SZ)_";font-weight:bold;background-color:yellow"" "
 ;
HDDAYS(DAYS,COLOR) ;
 D TMPREP
 W "<span style=""font-size:"_$$^W3FSZ(12)
  I $G(COLOR)'="" W ";color:"_COLOR
  W """ >"
  W $$^%W1DICT("DAYS")_"&nbsp;&nbsp;"
  S @TMPREP@("HD0",2)=$$TV^%W1DICT($$^%W1LNG,"DAYS")
  N J F J=1:1:7 D
  .I $E(DAYS,J) D
  ..W $$^%W1DICT("DAY"_J)_"&nbsp;&nbsp;"
  ..S @TMPREP@("HD0",2)=@TMPREP@("HD0",2)_" "_$$TV^%W1DICT($$^%W1LNG,"DAY"_J)
  S @TMPREP@("HD0",2)="  "_@TMPREP@("HD0",2)_"  "
 W "</span>",!
 Q
 ;
PRINT(STAM) ; 
 Q $G(%ARG("PRINT")) 
 ;
DIVEXC(COD) ; 
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 N IND S IND=COD_$$^W4MYDVN
 S FL=COD_$$^W4MYDVN_"_"_$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 S FLCSV=DIR_FL_".csv"
 S FLTXT=DIR_FL_".txt"
  ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 Q
 ;
 ;
TMPREP ;
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
 ;
SVEX(COD) ;
 N $ZT S $ZT="G ER"
 I $G(DLM)="" S DLM=","
 D ^%L1TS S FMT=0
 S FL=$$FL^%W1FREPX(COD,FMT)
 S FLCSV=FL_"."_$$FMT^%W1PCEX(FMT)
 ;
 D TMPREP
 ;
 N A,B,I,J,RZD
 C FLCSV:(DELETE)
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 F I=1:1 Q:'$D(@TMPREP@("HD0",I))  D
 .N B S B=$G(^(I)),B1=B
 .I I=1 S B1="" N J F J=1:1:$L(B," ") S B1=$P(B," ",J)_" "_B1
 .D SVEX1(B1," ")
 ;
 D SVEX1(" "," ")
 ;
 S B=$G(@TMPREP@("HD"))
 D SVEX1(B,DLM)
 ;
 F BG=1:1 Q:'$D(@TMPREP@(BG))  S A=$G(^(BG)) D SVEX1(A,DLM)
 ;
 C FLCSV
 ;
END ;
 Q
 ;
 ;
SVEX1(A,RZD)
 N B S B=""
 N J,F,ZN S J=0,F=0
 F F=1:1:$L(A,RZD)  D
 .S ZN=$P(A,RZD,F)
 .S B=B_$$RKV^%W1PCEX(ZN,0)
 S B=$E(B,1,$L(B)-1)
 U FLCSV W B,!
 Q
 ;
ER ;
 D SVER^%L1X
 G END
 ;
RKVN(NMB)
 Q $$ZPT^%L1FRM($J(NMB,2,2))
 ;
AHMAM(MM,YY) ; 
 S MM=$TR($J(MM,2)," ",0)
 S:$L(YY)=4 YY=$E(YY,3,4) 
 N DT S DT=$$^%L1DC("01"_MM_YY,3)
 Q $$MAMD^W4L(DT)
 ;
TBMAM ; 
  W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("AFTERTAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""depmam"" "_$S('$$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('0')"" >"
   W "</td>"
   W "<td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""depmam"" "_$S($$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('1')"" >"
   W "</td>"
   W "<td>"
    W $$^%W1DICT("INCLDMHNH")_"&nbsp;&nbsp;"
    W "<input type=""checkbox"" id=""depdms"" "_$S('$$NODMS:"checked=""checked"" ",1:"")_" onClick=""ClickNoDms()"" >"
    
   W "</td>"
  W "</tr>",!
  W "</table>",!
 Q
 ;
DEPNOMAM(DEP) ; 
 I $P($G(@$$^W4GL("DEP")@(DEP,1)),"\")=0 Q 1
 Q 0
 ;
LMAM(STAM) ;
 Q $G(%ARG("LMAM")) 
 ;
NODMS() ; 
 Q +$G(%ARG("NODMS"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DESERT
W4DESERT(STAM) ; [ 25.10.14 13:09 ] [
 N HZM S HZM=$$GETP^%W1PRM("HZM") I HZM'>0 Q 0
 D ^W4RSTRN(2,HZM)
 Q 1

W4DETNO0
W4DETNOT(HZM) ; [ 12.04.20 07:15 ] [ 12.03.20 15:15 ] [ 11.03.20 10:32 ] 
 N (JB,%ARG,HZM)
 Q:HZM<1
 W $$OPNDIV,!
  W $$KOT(HZM),"<br><br>",!
  ;
  S DETNOT=$G(@$$^W4ORD@(HZM,"DETNOTES",1))
  W "<tr>"
    W "<td>"
     W "<textarea id=""editor"" "
     W ">"
      I DETNOT="" W $$KOT(HZM),"<br><br>"
      W "<div dir="""_$$^%W1DIR_""">"
       W $$DETNOT(HZM)
      W "</div>",!
     W "</textarea>",!
    W "</td>",!
  W "</tr>",!
   ;
  W "</table>",!
  ;
  W "<br><br>",!
  ; 
  D DIVBUT(HZM)
  ;
  W "</div>",!
END Q
  ;
  ;
  ;
VW(TX,PR) ;
 N ST
 S ST="<span style=""font-weight:bold"">"
 D
 .I $G(PR)="H" S TX=$$H2U^%L1FRM(TX) Q
 .I $G(PR)="N" S TX=$J(TX,2,2) Q
 S ST=ST_TX_"</span>"
 Q ST 
 ;
 ;
SPACE(ZN)
 I '$G(ZN) S ZN=5
 Q $$NBSP^%L1FRM(ZN)
 ;
SAVE(PRM) ; 
 N (JB,%ARG,PRM) 
 S ORD=$$SPA^%L1FRM($P(PRM,"~"))
 I ORD<1 Q 0
 S DETNOTES=$P(PRM,"~",2)
 S IND=$O(@$$^W4ORD@(ORD,"DETNOTES",99999),-1)+1
 S @$$^W4ORD@(ORD,"DETNOTES",IND)=DETNOTES
 Q 1
 ;
 ;
DETNOT(HZM) ;
 N N,A,B,C,J,TAG
 S A="",B="",C="",J=0,K=0,TAG=0
 ;
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"DETNOTES",N)) Q:N=""  I N D
 .S A=A_$G(^(N))
 ;
DETNOT1 S J=J+1 I J>$L(A) G DETNOT2
 I $E(A,J)="<" S TAG=TAG+1 D CONVC S B=B_$E(A,J) G DETNOT1
 I $E(A,J)=">" S TAG=TAG-1 S B=B_$E(A,J) G DETNOT1
 I TAG S B=B_$E(A,J) G DETNOT1
 S C=C_$E(A,J) G DETNOT1
 ;
DETNOT2 D CONVC
 Q B
 ;
 ;
CONVC ;
 I '$L(C) Q
 D  ;I '$D(TSS)!'$D(TSS1)!'$D(TS) D
 .D TSS^%L1TS
 .S TS=$C(95,127)_TSS_TS1
 S C=$TR(C,TS,"")
 S C=$$RPL^%L1FRM(C,"&nbsp;",$C(9))
 S C=$$H2U^%L1FRM($$INVH^%L1FRM(C))
 S C=$$RPL^%L1FRM(C,$C(9),"&nbsp;")
 S B=B_C S C=""
 Q
 ;
KOT(HZM) ; 
 N NMB,ST
 S NMB=$$NMB^W4HZMST(HZM)
 ;
 N SP S SP=10
 S ST=$$OPNDIV
 S ST=ST_$$^%W1DICT("ORDER")_" "_$$VW(HZM)
 S ST=ST_$$SPACE(SP)
 ;
 S ST=ST_$$^%W1DICT("CUSTOMER")_" "_$$VW(NMB)
 S ST=ST_$$SPACE(2)_$$VW($$LKH^W4L(NMB),"H")
 S ST=ST_$$SPACE(SP)
 ;
 S ST=ST_$$^%W1DICT("MAZMIN")_" "_$$VW($$MAZMIN^W4HZMST(HZM),"H")
 S ST=ST_$$SPACE(SP)
 S ST=ST_$$^%W1DICT("PELE")_" "_$$VW($$PELE^W4HZMST(HZM))
 S ST=ST_"</div>"
 Q ST
 ;
 ;
DIVBUT(ORD) ;
 D ^W4BTN("SUBMIT","Submit('"_ORD_"')","green")
 W $$NBSP^%L1FRM(10)
 D ^W4BTN("DELETE","Delete('"_ORD_"')","brown")
 W $$NBSP^%L1FRM(10)
 D ^W4BTN("BACK","Back()","red")
 Q
 ;
SHOW(ORD) ; 
 W "<div "
 W " dir="""_$$^%W1DIR_""" style="""_$$FONTFM^W4CSS1_""" >"
  D SHOWBUT(ORD)
  W $$DETNOT(ORD)
  W "<br>",!
  ;
  D SHOWBUT(ORD)
 W "</div>",! 
 Q 
 ;
OPNDIV(ID) ; 
 N ST
 S ST="<div "
 I $G(ID)'="" S ST=ST_" id="""_ID_""" "
 S ST=ST_" dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W4CSS1_""" >"
 Q ST
 ;
SHOWBUT(ORD) ; 
  W $$OPNDIV("divbut")
   D ^W4BTN("PRINT","Print()","blue")
   W $$NBSP^%L1FRM(10)
   D ^W4BTN("CLOSE","Close()","brown")
  W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DETNOT
W4DETNOT(HZM) ; [ 15.02.25 13:09 ] [ 02.08.20 11:23 ] [ 22.06.20 10:54 ] 
 N (JB,%ARG,HZM)
 I $L(HZM)<1 Q
 W $$OPNDIV,!
  W $$KOT(HZM),"<br><br>",!
  ;
  S DETNOT=$$FIRSTNOT(HZM)
  W "<table>",!
  W "<tr>"
    W "<td>"
     W "<textarea id=""editor"" "
     W ">"
      I DETNOT="" W $$KOT(HZM),"<br><br>"
      W "<div dir="""_$$^%W1DIR_""">"
       W $$DETNOT(HZM)
      W "</div>",!
     W "</textarea>",!
    W "</td>",!
  W "</tr>",!
   ;
  W "</table>",!
  ;
  W "<br><br>",!
  ; 
  D DIVBUT(HZM)
  ;
  W "</div>",!
END Q
  ;
  ;
  ;
VW(TX,PR) ;
 N ST
 S ST="<span style=""font-weight:bold"">"
 D
 .I $G(PR)="H" S TX=$$H2U^%L1FRM(TX) Q
 .I $G(PR)="N" S TX=$J(TX,2,2) Q
 S ST=ST_TX_"</span>"
 Q ST 
 ;
 ;
SPACE(ZN)
 I '$G(ZN) S ZN=5
 Q $$NBSP^%L1FRM(ZN)
 ;
SAVE(PRM) ; 
 N (JB,%ARG,PRM) 
 S ORD=$$SPA^%L1FRM($P(PRM,"~"))
 I $L(ORD)<1 Q 0
 S DETNOTES=$P(PRM,"~",2)
 S IND=$O(@$$GL(ORD)@(99999),-1)+1
 S ST=DETNOTES
 S @$$GL(ORD)@(IND)=ST
 Q 1
 ;
 ;
DETNOT(HZM) ;
 N N,A,B,C,I,J,K,TAG,LTX,LN,MC
 S A="",B="",C="",I=0,J=0,K=0,TAG=0
 ;
 S N="" F  S N=$O(@$$GL(HZM)@(N)) Q:N=""  I N D
 .S LN=$G(^(N))
 .S A=A_LN
DETNOT1 S J=J+1 I J>$L(A) G DETNOT2
 I $E(A,J)="<" S TAG=TAG+1 D CONVC S B=B_$E(A,J) G DETNOT1
 I $E(A,J)=">" S TAG=TAG-1 S B=B_$E(A,J) G DETNOT1
 I TAG S B=B_$E(A,J) G DETNOT1
 S C=C_$E(A,J) G DETNOT1
 ;
DETNOT2 D CONVC
 I $$CORR(HZM)!$$CORHB(HZM)!$$CORHM(HZM)!$$CORWR(HZM) D
 .N KAV S KAV=$TR($J("",30)," ","-")
 .S B=B_"<br><br> "_KAV_$$NBSP^%L1FRM(5)_$ZD($H,"DD.MM.YY 24:60")_$$NBSP^%L1FRM(5)_KAV_" <br><br>"
 Q B
 ;
 ;
CONVC ;
 S LTX=0
 I '$L(C) Q
 D
 .D TSS^%L1TS
 .S TS=$C(95,127)_TSS_TS1
 S C=$TR(C,TS,"")
 I $L(C) S LTX=1
 S C=$$RPL^%L1FRM(C,"&nbsp;",$C(9))
 S C=$$H2U^%L1FRM($$INVH^%L1FRM(C))
 S C=$$RPL^%L1FRM(C,$C(9),"&nbsp;")
 S B=B_C 
 S I=I+1 S MC(I)=C
 S C=""
 Q
 ;
 ;
KOT(HZM) ; 
 N NMB,ST
 S ST=""
 I $$CORHM(HZM) S HZM=$E(HZM,2,20)
 ;
 I '$$CORR(HZM),'$$CORHB(HZM),'$$CORWR(HZM) D
 .S NMB=$$NMB^W4HZMST(HZM)
 .;
 .N SP S SP=10
 .S ST=$$OPNDIV
 .S ST=ST_$$^%W1DICT("ORDER")_" "_$$VW(HZM)
 .S ST=ST_$$SPACE(SP)
 .N DAT S DAT=$$TRH^W4HZMST(HZM)
 .S DAT=DAT_" "_$$H2U^%L1FRM($$^%L1DC(DAT,9))_"`"
 .S ST=ST_$$^%W1DICT("TODATE")_" "_$$VW(DAT)
 .S ST=ST_$$SPACE(SP)
 .S ST=ST_$$VW($$SHAA^W4HZMST(HZM))_$$SPACE(SP)
 .;
 .S ST=ST_$$^%W1DICT("CUSTOMER")_" "_$$VW(NMB)
 .S ST=ST_$$SPACE(2)_$$VW($$LKH^W4L(NMB),"H")
 .S ST=ST_$$SPACE(SP)
 .;
 .S ST=ST_$$^%W1DICT("MAZMIN")_" "_$$VW($$MAZMIN^W4HZMST(HZM),"H")
 .S ST=ST_$$SPACE(SP)
 .S ST=ST_$$^%W1DICT("PELE")_" "_$$VW($$PELE^W4HZMST(HZM))
 .S ST=ST_"</div>"
 ;
 I $$CORR(HZM) D
 .N LK S LK=$$LKH(HZM)
 .S ST=$$^%W1DICT("CUSTOMER")_" "_LK
 .S ST=ST_$$SPACE(2)_$$VW($$LKH^W4L(LK),"H")
 ;
 I $$CORWR(HZM) D
 .N OV S OV=$$LKH(HZM)
 .S ST=OV
 .S ST=ST_$$SPACE(2)_$$VW($$^W4NAME(OV),"H")
 ;
 I $$CORHB(HZM) D
 .N LK S LK=$$LKHB(HZM)
 .S ST=$$^%W1DICT("CUSTOMER")_" "_LK
 .S ST=ST_$$SPACE(2)_$$VW($$LKH^W4L(LK),"H")
 .S ST=ST_$$SPACE(5)_$$^%W1DICT("INVOICE")_" "_$$HB(HZM)
 Q ST
 ;
 ;
DIVBUT(ORD) ;
 D ^W4BTN("SUBMIT","Submit('"_ORD_"')","green")
 W $$NBSP^%L1FRM(10)
 D ^W4BTN("DELDOC","Delete('"_ORD_"')","brown")
 W $$NBSP^%L1FRM(10)
 D ^W4BTN("BACK","Back()","red")
 Q
 ;
SHOW(ORD) ; 
 W "<div "
 W " dir="""_$$^%W1DIR_""" style="""_$$FONTFM^W4CSS1_""" >"
  D SHOWBUT(ORD)
  W $$DETNOT(ORD)
  W "<br>",!
  ;
  D SHOWBUT(ORD)
 W "</div>",! 
 Q 
 ;
OPNDIV(ID) ; 
 N ST
 S ST="<div "
 I $G(ID)'="" S ST=ST_" id="""_ID_""" "
 S ST=ST_" dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W4CSS1_""" >"
 Q ST
 ;
SHOWBUT(ORD) ; 
  W $$OPNDIV("divbut")
   D ^W4BTN("PRINT","Print()","blue")
   W $$NBSP^%L1FRM(10)
   D ^W4BTN("CLOSE","Close()","brown")
  W "</div>",!
 Q
 ;
CORR(STAM) ; 
 Q $E(HZM)="L"
 ;
FIRSTNOT(HZM) ; 
 Q $G(@$$GL(HZM)@(1))
 ;
GL(HZM) ; 
 I $$CORR(HZM) Q $$^W4GL("LKH")_"("""_$$LKH(HZM)_""",""WR"")"
 I $$CORHB(HZM) Q $$^W4GL("W4CORHB")_"("""_$$LKHB(HZM)_""","""_$$HB(HZM)_""")"
 I $$CORHM(HZM) Q $$^W4GL("W4CORHM")_"("""_+$E(HZM,2,20)_""")"
 I $$CORWR(HZM) Q $$^W4GL("W4CORWR")_"("""_$$LKH(HZM)_""")"
 Q $$^W4ORD_"("""_HZM_""",""DETNOTES"")"
 ;
LKH(HZM) ; 
 Q $E(HZM,2,20) 
 ;
LKHB(NOM) ; 
 N KLIN S KLIN=$$^W4GL("KLIN")
 I '$$CORHB(NOM) Q NOM
 N LK0,LK,N
 S N=$E(NOM,2,10)
 I $E(N)="[" S N=$TR(N,"[] ","") ; -- H-I
 S LK0=$G(@KLIN@("H",+N)) Q:LK0="IN"
 S LK=$$LK^W4LHB(LK0)
 Q LK 
 ;
HB(NOM) ; 
 I '$$CORHB(NOM) Q NOM
 Q $E(NOM,2,10)
 ;
CORHB(NOM) ;
 Q $E(NOM)="H" 
 ;
CORHM(NOM) ;
 Q $E(NOM)="M" 
 ;
CORWR(NOM) ;
 Q $E(NOM)="W" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DEV
W4DEV(STAM) ; [ 25.01.23 20:43 ] [ 10.08.22 11:42 ] [ 19.05.20 15:46 ] 
 Q "^[$$^W3MAIN]dev"
 ;
GET ;
 N GLOB,GLOB0 D GLOB^W4SPIDK
 K @GLOB N A,A1
 N N S N="" F  S N=$O(@$$W4DEV@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S @GLOB@(N)=A
 .S A1=$G(@$$W4DEV@(N,"H"))
 .N N1,OK S OK=0,N1="" F  S N1=$O(@$$^W4PRM@("MDP",N1)) Q:N1=""  D  Q:OK
 ..N B S B=$G(^(N1))
 ..I +$P(B,"\",3)=N S $P(A1,"\",2)=$P(B,"\") S OK=1
 .S @GLOB@(N,1)=A1
 Q
 ;
PUT ;
 N GLTMP,W4DEV0,W4DEVI0
 S GLTMP=$$^W4MAIN("TMPDEV")
 S W4DEV0="^[$$^W3MAIN]dev0"
 S W4DEVI0="^[$$^W3MAIN]devi0"
 K @W4DEV0,@W4DEVI0
 M @W4DEV0=@$$W4DEV
 M @W4DEVI0=@$$^W4DEVI
 K @$$W4DEV,@$$^W4DEVI
 ;
 N N,NM S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .S NM=$G(@GLTMP@(N)) Q:NM=""
 .S @$$W4DEV@(N)=NM
 .N DOP S DOP=$$U2H^%L1FRM($G(@GLTMP@(N,1)))
 .S @$$W4DEV@(N,"H")=DOP
 .D
 ..N N1 S N1="" F  S N1=$O(@$$^W4PRM@("MDP",N1)) Q:N1=""  D
 ...N B S B=$G(^(N1))
 ...I $P(B,"\",3)=N S $P(B,"\")=$P(DOP,"\",2) S ^(N1)=B
 .
 .S @$$^W4DEVI@(NM)=N
 ;
 K @$$^W4MAIN("TMPDEV")
 Q
 
 
 
 
 
 

W4DEVI
W4DEVI(STAM) ; [ 24.11.08 17:33 ] [ 23.11.08 14:46 ] [
 Q "^[$$^W3MAIN]devi"

W4DHB
W4DHB ; DOCH HESBONIOT                           [ 01.07.25 13:53 ] [ 16.12.18 19:48 ] [ 09.10.18 12:19 ] 
 N (JB,%ARG,%REM)
 ; ------------------- %REPN = DHBN !!!!!!!!!!!!!!!!
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 S VD1=""
 I VD=1 S VD1=$$TV^%W1DICT($$^%W1LNG,"AUTOINVOICES")
 I VD=2 S VD1=$$TV^%W1DICT($$^%W1LNG,"ARMINVOICES")
 I $$VDZ(VD) S VD1=$$TV^%W1DICT($$^%W1LNG,"DEBETINVOICES")
 I VD=0 S VD1=$$TV^%W1DICT($$^%W1LNG,"ALLINVOICES")
 S HEARA=""
 I $$VDZ(VD)!(VD=0) S HEARA=$$TV^%W1DICT($$^%W1LNG,"DEBETINVOICESTHISREPORTSHOWEDASNEGATIV")
 ;
 D SORT
 ;
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
GET ;
 I '$G(VD) S VD=0
 I '$G(MESUGL) S MESUGL=""
 I '$G(ADSUGL) S ADSUGL=99999999999
 S MESUGL1="" I MESUGL S MESUGL1=$G(@$$^W4GL("SUGL")@(MESUGL))
 S ADSUGL1="" I ADSUGL S ADSUGL1=$G(@$$^W4GL("SUGL")@(ADSUGL))
 I '$G(MELKH) S MELKH=""
 I '$G(ADLKH) S ADLKH=99999999999999
 ;
 N KLIN S KLIN=$$^W4GL("KLIN")
 N GLHB S GLHB=$$^W4GL("P1LHB")
 N TMPREP D TMPREP
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 ;
 N I,N S DT1=$$^%L1DC(DAT1,3),DT2=$$^%L1DC(DAT2,3)
 S I=0
 S (SUMH,SLMAM,MAM,SAH,SDOP)=0
 I '$$VDZ(VD) D
 .S N="" F  S N=$O(@KLIN@("H",N)) Q:N=""  D VIBHB("H")
 I $G(VD)=0!$$VDZ(VD) D
 .S N="" F  S N=$O(@KLIN@("TZ",N)) Q:N=""  D VIBHB("TZ")
 Q
 ;
VIBHB(CODDOC) ;
 N LK,LK0
 S LK0=$G(^(N))
 I CODDOC="H",VD=1,$$ARM(LK0) Q
 I CODDOC="H",VD=2,'$$ARM(LK0) Q
 S LK=$$LK(LK0)
 N SUGL S SUGL=$$SUGL^W4L(LK)
 I SUGL<$G(MESUGL) Q
 I $G(ADSUGL),SUGL>ADSUGL Q
 I $TR(LK,"-","")<$TR(MELKH,"-","") Q
 I $TR(LK,"-","")>$TR(ADLKH,"-","") Q
 D LINEINVC(N,LK,LK0,CODDOC)
 Q
 ;
LINEINVC(N,LK,LK0,CODDOC) ;
 D ^W4HSBGET(N,CODDOC) Q:$D(W4HSB)<10
 ;
 Q:'$G(W4HSB("TODATE"))
 ;
 I W4HSB("DT")<DT1 Q
 I W4HSB("DT")>DT2 Q
 ;
 I $G(%ARG("MESUM")),W4HSB("TOT")<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),W4HSB("TOT")>%ARG("ADSUM") Q
 ;
 I $G(%ARG("MENOM")),N<%ARG("MENOM") Q
 I $G(%ARG("ADNOM")),N>%ARG("ADNOM") Q
 ;
 S I=I+1
 ;
 ;;I $$HBZ(CODDOC),'$D(W4HIPUS) D
 .S W4HSB("LMAM")=$G(W4HSB("LMAM"))*-1
 .S W4HSB("TOT")=$G(W4HSB("TOT"))*-1
 ;
 S DOP=0
 I CODDOC="H",$D(@GLHB@(LK,N)) D
 .N J F J=2:1 Q:'$D(@GLHB@(LK,N,"HB",J))  D
 ..S DOP=DOP+$P(^(J),"\",3)
 S @TMPREP@("G",I)=N_$S($$HBZ(CODDOC):" [-]",1:"")_"\"_W4HSB("TODATE")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_LK
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_$$LKH^W4L(LK)
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4HSB("LMAM")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_(W4HSB("TOT")-W4HSB("LMAM"))
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4HSB("TOT")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_DOP
 ;
 S SUMH=SUMH+1
 S SLMAM=SLMAM+W4HSB("LMAM")
 S MAM=MAM+(W4HSB("TOT")-W4HSB("LMAM"))
 S SAH=SAH+W4HSB("TOT")
 S SDOP=SDOP+DOP
 S @TMPREP@("TOT")=$J(SUMH,1,1)_"\"_$J(SLMAM,1,1)_"\"_$J(MAM,1,1)_"\"_$J(SAH,1,1)_"\"_$J(SDOP,1,1)
 Q
 ;
LK(LK0)
 N LK
 S LK=LK0
 I LK0["+" S LK=$P(LK0,"+")
 I LK0["^" S LK=$P(LK0,"^")
 I LK0["W" S LK=$P(LK0,"W")
 Q LK
 ;
ARM(LK0) ;
 I LK0'["+",LK0'["^",LK0'["W" Q 1
 I LK0["W" Q 2
 Q 0
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4DHB-CHKPRM","MESUGL=MESUGL&ADSUGL=ADSUGL&MELKH=MELKH &ADLKH=ADLKH & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MELKH>ADLKH Q "0;RANGENOTVALID;;MELKH"
 I MESUGL>ADSUGL Q "0;RANGENOTVALID;;MESUGL"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4DHB"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HB S HB=$$HBG(A)
 D TRG(HB)
 Q
 ;
TRG(HB) ;
 N CODDOCG S CODDOCG=$$CODDOCG(HB)
 N LK0 S LK0=$$LK0(+HB,CODDOCG)
 N LK S LK=$$LK(LK0)
 W " style=""cursor:pointer;color:black" ;;;font-size:"_$$^W3FSZ(11)
 W """"
 I $$HBZG(HB),LK0'["+" D
 .W " onClick=""ShowArmInvoice('"_+HB_"','"_LK_"','ifr','"_$$HBZG(HB)_"')""" Q
 I $$HBZG(HB),LK0["+" D
 .W " onClick=""ShowInvoice('"_-HB_"','"_LK_"','ifr','"_$$HBZG(HB)_"')""" Q
 ;
 I $L(LK0),'$$ARM(LK0) W " onClick=""ShowInvoice('"_HB_"','"_LK_"','ifr')"""
 ;
 I $$ARM(LK0) D
 .I $$ARM(LK0)=1 W " onClick=""ShowArmInvoice('"_HB_"','"_LK_"','ifr')""" Q
 .I $$ARM(LK0)=2 W " onClick=""ShowItemsInvoice('"_HB_"','"_LK_"','ifr')""" Q
 Q
 ;
TD ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N LK S LK=$$LKG(A) Q:LK=""
 N HB S HB=$$HBG(A)
 N CODDOCG S CODDOCG=$$CODDOCG(HB)
 N LK0 S LK0=$$LK0(HB,CODDOCG)
 W " style="""
 ;;I (HB_";"_LK)=$$GET^%W1PRM("LHBCUR") W "border:solid 2px brown;"
 D
 .I $$HBZG(HB)=1 W "background-color:pink" Q
 .I $$HBZG(HB)=2 W "background-color:pink" Q
 .I $$ARM(LK0)=1 W "background-color:lightblue" Q
 .I $$ARM(LK0)=2 W "background-color:lightyellow" Q
 W """"
 Q
 ;
LKG(A) ;
 Q $P(A,"\",3)
 ;
HBG(A) ;
 Q $P(A,"\")
 ;
LK0(HB,CODDOC) ;
 Q $G(@$$^W4GL("KLIN")@(CODDOC,HB))
 ;
CODDOC(STAM) ;
 I $$HBZ Q "TZ"
 Q "H"
 ;
CODDOCG(HB) ;
 I $$HBZG(HB) Q "TZ"
 Q "H"
 ;
HBZ(CODDOC) ;
 I CODDOC="TZ" Q 1
 Q 0
 ;
HBZG(HB) ;
 I $G(HB)["[-]" Q $S($G(@$$^W4KLIN@("TZ",+HB))["W":2,1:1)
 Q 0
 ;
TMPREP
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
SORT ;
 D TMPREP
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 N A,I,DT,HB
 F I=1:1 Q:'$D(@TMPREP@("G",I))  D
 .S A=$G(^(I))
 .S DT=$$^%L1DC($P(A,"\",2),3)
 .S HB=$P(A,"\")
 .S @VRM@(DT,HB)=A
 ;
 K @TMPREP@("G")
 ;
 S I=0
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
 .S HB="" F  S HB=$O(@VRM@(DT,HB)) Q:HB=""  D
 ..S I=I+1,@TMPREP@("G",I)=$G(@VRM@(DT,HB))
 ;
 K @VRM
 Q
 ;
VDZ(VD) ;
 I $G(VD)=3 Q 1
 Q 0
 
 
 
 
 

W4DHB1
W4DHB ; DOCH HESBONIOT                           [ 09.10.18 12:19 ] [ 23.10.14 10:00 ] [ 17.05.14 19:50 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 S VD1=""
 I VD=1 S VD1=$$TV^%W1DICT($$^%W1LNG,"AUTOINVOICES")
 I VD=2 S VD1=$$TV^%W1DICT($$^%W1LNG,"ARMINVOICES")
 I $$VDZ(VD) S VD1=$$TV^%W1DICT($$^%W1LNG,"DEBETINVOICES")
 I VD=0 S VD1=$$TV^%W1DICT($$^%W1LNG,"ALLINVOICES")
 S HEARA=""
 I $$VDZ(VD)!(VD=0) S HEARA=$$TV^%W1DICT($$^%W1LNG,"DEBETINVOICESTHISREPORTSHOWEDASNEGATIV")
 ;
 D SORT
 ;
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
GET ;
 I '$G(VD) S VD=0
 I '$G(MESUGL) S MESUGL=""
 I '$G(ADSUGL) S ADSUGL=99999999999
 S MESUGL1="" I MESUGL S MESUGL1=$G(@$$^W4GL("SUGL")@(MESUGL))
 S ADSUGL1="" I ADSUGL S ADSUGL1=$G(@$$^W4GL("SUGL")@(ADSUGL))
 I '$G(MELKH) S MELKH=""
 I '$G(ADLKH) S ADLKH=99999999999
 ;
 N KLIN S KLIN=$$^W4GL("KLIN")
 N GLHB S GLHB=$$^W4GL("P1LHB")
 N TMPREP D TMPREP
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 ;
 N I,N S DT1=$$^%L1DC(DAT1,3),DT2=$$^%L1DC(DAT2,3)
 S I=0
 S (SUMH,SLMAM,MAM,SAH,SDOP)=0
 I '$$VDZ(VD) D
 .S N="" F  S N=$O(@KLIN@("H",N)) Q:N=""  D VIBHB("H")
 I $G(VD)=0!$$VDZ(VD) D
 .S N="" F  S N=$O(@KLIN@("TZ",N)) Q:N=""  D VIBHB("TZ")
 Q
 ;
VIBHB(CODDOC) ;
 N LK,LK0
 S LK0=$G(^(N))
 I CODDOC="H",VD=1,$$ARM(LK0) Q
 I CODDOC="H",VD=2,'$$ARM(LK0) Q
 S LK=$$LK(LK0)
 N SUGL S SUGL=$$SUGL^W4L(LK)
 I SUGL<$G(MESUGL) Q
 I $G(ADSUGL),SUGL>ADSUGL Q
 I $TR(LK,"-","")<$TR(MELKH,"-","") Q
 I $TR(LK,"-","")>$TR(ADLKH,"-","") Q
 D LINEINVC(N,LK,LK0,CODDOC)
 Q
 ;
LINEINVC(N,LK,LK0,CODDOC) ;
 D ^W4HSBGET(N,CODDOC) Q:$D(W4HSB)<10
 ;
 Q:'$G(W4HSB("TODATE"))
 ;
 I W4HSB("DT")<DT1 Q
 I W4HSB("DT")>DT2 Q
 ;
 I $G(%ARG("MESUM")),W4HSB("TOT")<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),W4HSB("TOT")>%ARG("ADSUM") Q
 ;
 I $G(%ARG("MENOM")),N<%ARG("MENOM") Q
 I $G(%ARG("ADNOM")),N>%ARG("ADNOM") Q
 ;
 S I=I+1
 ;
 ;;I $$HBZ(CODDOC),'$D(W4HIPUS) D
 .S W4HSB("LMAM")=$G(W4HSB("LMAM"))*-1
 .S W4HSB("TOT")=$G(W4HSB("TOT"))*-1
 ;
 S DOP=0
 I CODDOC="H",$D(@GLHB@(LK,N)) D
 .N J F J=2:1 Q:'$D(@GLHB@(LK,N,"HB",J))  D
 ..S DOP=DOP+$P(^(J),"\",3)
 S @TMPREP@("G",I)=N_$S($$HBZ(CODDOC):" [-]",1:"")_"\"_W4HSB("TODATE")_"\"_LK_"\"_$$LKH^W4L(LK)
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4HSB("LMAM")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_(W4HSB("TOT")-W4HSB("LMAM"))
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_W4HSB("TOT")
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_DOP
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_$$TZ^W4L(LK)
 ;
 S SUMH=SUMH+1
 S SLMAM=SLMAM+W4HSB("LMAM")
 S MAM=MAM+(W4HSB("TOT")-W4HSB("LMAM"))
 S SAH=SAH+W4HSB("TOT")
 S SDOP=SDOP+DOP
 S @TMPREP@("TOT")=$J(SUMH,1,1)_"\"_$J(SLMAM,1,1)_"\"_$J(MAM,1,1)_"\"_$J(SAH,1,1)_"\"_$J(SDOP,1,1)_"\"
 Q
 ;
LK(LK0)
 N LK
 S LK=LK0
 I LK0["+" S LK=$P(LK0,"+")
 I LK0["^" S LK=$P(LK0,"^")
 I LK0["W" S LK=$P(LK0,"W")
 Q LK
 ;
ARM(LK0) ;
 I LK0'["+",LK0'["^",LK0'["W" Q 1
 I LK0["W" Q 2
 Q 0
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4DHB-CHKPRM","MESUGL=MESUGL&ADSUGL=ADSUGL&MELKH=MELKH &ADLKH=ADLKH & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MELKH>ADLKH Q "0;RANGENOTVALID;;MELKH"
 I MESUGL>ADSUGL Q "0;RANGENOTVALID;;MESUGL"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4DHB"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N LK S LK=$$LKG(A)
 N HB S HB=$$HBG(A)
 N CODDOCG S CODDOCG=$$CODDOCG(HB)
 N LK0 S LK0=$$LK0(+HB,CODDOCG)
 W " style=""cursor:pointer;color:black" ;;;font-size:"_$$^W3FSZ(11)
 W """"
 I $$HBZG(HB),LK0'["+" D
 .W " onClick=""ShowArmInvoice('"_+HB_"','"_LK_"','ifr','"_$$HBZG(HB)_"')""" Q
 I $$HBZG(HB),LK0["+" D
 .W " onClick=""ShowInvoice('"_-HB_"','"_LK_"','ifr','"_$$HBZG(HB)_"')""" Q
 ;
 I LK0,'$$ARM(LK0) W " onClick=""ShowInvoice('"_HB_"','"_LK_"','ifr')"""
 ;
 I $$ARM(LK0) D
 .I $$ARM(LK0)=1 W " onClick=""ShowArmInvoice('"_HB_"','"_LK_"','ifr')""" Q
 .I $$ARM(LK0)=2 W " onClick=""ShowItemsInvoice('"_HB_"','"_LK_"','ifr')""" Q
 Q
 ;
TD ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N LK S LK=$$LKG(A) Q:LK=""
 N HB S HB=$$HBG(A)
 N CODDOCG S CODDOCG=$$CODDOCG(HB)
 N LK0 S LK0=$$LK0(HB,CODDOCG)
 W " style="""
 ;;I (HB_";"_LK)=$$GET^%W1PRM("LHBCUR") W "border:solid 2px brown;"
 D
 .I $$HBZG(HB)=1 W "background-color:pink" Q
 .I $$HBZG(HB)=2 W "background-color:pink" Q
 .I $$ARM(LK0)=1 W "background-color:lightblue" Q
 .I $$ARM(LK0)=2 W "background-color:lightyellow" Q
 W """"
 Q
 ;
LKG(A) ;
 Q $P(A,"\",3)
 ;
HBG(A) ;
 Q $P(A,"\")
 ;
LK0(HB,CODDOC) ;
 Q $G(@$$^W4GL("KLIN")@(CODDOC,HB))
 ;
CODDOC(STAM) ;
 I $$HBZ Q "TZ"
 Q "H"
 ;
CODDOCG(HB) ;
 I $$HBZG(HB) Q "TZ"
 Q "H"
 ;
HBZ(CODDOC) ;
 I CODDOC="TZ" Q 1
 Q 0
 ;
HBZG(HB) ;
 I $G(HB)["[-]" Q $S($G(@$$^W4KLIN@("TZ",+HB))["W":2,1:1)
 Q 0
 ;
TMPREP
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
SORT ;
 D TMPREP
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 N A,I,DT,HB
 F I=1:1 Q:'$D(@TMPREP@("G",I))  D
 .S A=$G(^(I))
 .S DT=$$^%L1DC($P(A,"\",2),3)
 .S HB=$P(A,"\")
 .S @VRM@(DT,HB)=A
 ;
 K @TMPREP@("G")
 ;
 S I=0
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
 .S HB="" F  S HB=$O(@VRM@(DT,HB)) Q:HB=""  D
 ..S I=I+1,@TMPREP@("G",I)=$G(@VRM@(DT,HB))
 ;
 K @VRM
 Q
 ;
VDZ(VD) ;
 I $G(VD)=3 Q 1
 Q 0
 

W4DHBN
W4DHBN ; DOCH HESBONIOT                           [ 19.03.25 07:30 ] [ 09.10.18 12:36 ] [ 03.12.15 12:27 ] 
VD ;
 I VDKL'="H",VDKL'="TZ" S OK=0 Q
 I MEVD=3,ADVD=3,VDKL="H" S OK=0 Q
 I VDKL="TZ",ADVD'=0,ADVD<3 S OK=0 Q
 Q
 ;
 ;
HB ;
 N LK0,LK
 S LK0=$G(@GLOB)
 I VDKL="H",MEVD=1,ADVD=1,$$ARM(LK0) S OK=0 Q
 I VDKL="H",MEVD=2,ADVD=2,'$$ARM(LK0) S OK=0 Q
 ;
 S LK=$$LK(LK0)
 I $TR(LK,"-","")<$TR(MELKH,"-","") S OK=0 Q
 I $TR(LK,"-","")>$TR(ADLKH,"-","") S OK=0 Q
 ;
 I $G(MEHB1),HB<MEHB1 S OK=0 Q
 I $G(ADHB1),HB>ADHB1 S OK=0 Q
 ;
 D ^W4HSBGET(HB,VDKL)
 I '$G(W4HSB("TODATE")) S OK=0 Q
 ;
 I $G(W4HSB("DT"))<METRH S OK=0 Q
 I $G(W4HSB("DT"))>ADTRH S OK=0 Q
 ;
 D
 .I VDKL="TZ" S VD=3 Q
 .I $$ARM(LK0) S VD=2 Q
 .I '$$ARM(LK0) S VD=1
 ;
 I VD<MEVD!(VD>ADVD) S OK=0 Q
 ;
 S VD1=$G(@$$^W4GL("W4VDHB")@(VD))
 ;
 S SUGL=$$SUGL^W4L(LK)
 I SUGL<$G(MESUGL) S OK=0 Q
 I $G(ADSUGL),SUGL>ADSUGL S OK=0 Q
 ;
 S SUGL1=""
 I SUGL S SUGL1=$G(@$$^W4GL("SUGL")@(SUGL))
 ;
 N GLHB S GLHB=$$^W4GL("P1LHB")
 S I=I+1
 ;
 S DOP=0,OUT=0
 I VDKL="H",$D(@GLHB@(LK,HB)) D
 .N J F J=2:1 Q:'$D(@GLHB@(LK,HB,"HB",J))  D
 ..S DOP=DOP+$P(^(J),"\",3)
 ;
 I VDKL="H",$D(@GLHB@(LK,HB)) D
 .N J F J=1:1 Q:'$D(@GLHB@(LK,HB,"HZ",J))  D
 ..N A S A=$G(^(J))
 ..N DAT,DT,SHAA,MM
 ..S DAT=$P(A,"\",4),SHAA=$P(A,"\",5)
 ..S DAT=$TR(DAT,"/",".")
 ..S DT=$$^%L1DC(DAT,3)
 ..I SHAA<$$SHAAZ^W4PRM S DT=DT-1 
 ..S MM=$ZD(DT,"MM")
 ..I +MM'=+$P(W4HSB("TODATE"),".",2) D
 ...S OUT=OUT+$P(A,"\",6)
 ;
 S HB1=HB_$S($$HBZ(VDKL):" [-]",1:"")
 S TRH=$G(W4HSB("TODATE"))
 S LKH=LK
 S LKH1=$$LKH^W4L(LKH)
 S TZ=$$TZ^W4L(LK)
 S x1=$G(W4HSB("LMAM"))
 S x2=($G(W4HSB("TOT"))-$G(W4HSB("LMAM")))
 S x3=$G(W4HSB("TOT"))
 S x4=DOP
 S x5=OUT
 ;
 Q
 ;
 ;
LK(LK0)
 N LK
 S LK=LK0
 I LK0["+" S LK=$P(LK0,"+")
 I LK0["^" S LK=$P(LK0,"^")
 I LK0["W" S LK=$P(LK0,"W")
 Q LK
 ;
ARM(LK0) ;
 I LK0'["+",LK0'["^",LK0'["W" Q 1
 I LK0["W" Q 2
 Q 0
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N LK S LK=$$LKG(A)
 N HB S HB=$$HBG(A)
 N CODDOCG S CODDOCG=$$CODDOCG(HB)
 N LK0 S LK0=$$LK0(+HB,CODDOCG)
 W " style=""cursor:pointer;color:black" ;;;font-size:"_$$^W3FSZ(11)
 W """"
 I $$HBZG(HB),LK0'["+" D
 .W " onClick=""ShowArmInvoice('"_+HB_"','"_LK_"','ifr','"_$$HBZG(HB)_"')""" Q
 I $$HBZG(HB),LK0["+" D
 .W " onClick=""ShowInvoice('"_-HB_"','"_LK_"','ifr','"_$$HBZG(HB)_"')""" Q
 ;
 I LK0,'$$ARM(LK0) W " onClick=""ShowInvoice('"_HB_"','"_LK_"','ifr')"""
 ;
 I $$ARM(LK0) D
 .I $$ARM(LK0)=1 W " onClick=""ShowArmInvoice('"_HB_"','"_LK_"','ifr')""" Q
 .I $$ARM(LK0)=2 W " onClick=""ShowItemsInvoice('"_HB_"','"_LK_"','ifr')""" Q
 Q
 ;
 ;
TD ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N LK S LK=$$LKG(A) Q:LK=""
 N HB S HB=$$HBG(A)
 N CODDOCG S CODDOCG=$$CODDOCG(HB)
 N LK0 S LK0=$$LK0(HB,CODDOCG)
 W " style="""
 ;;I (HB_";"_LK)=$$GET^%W1PRM("LHBCUR") W "border:solid 2px brown;"
 D
 .I $$HBZG(HB)=1 W "background-color:pink" Q
 .I $$HBZG(HB)=2 W "background-color:pink" Q
 .I $$ARM(LK0)=1 W "background-color:lightblue" Q
 .I $$ARM(LK0)=2 W "background-color:lightyellow" Q
 W """"
 Q
 ;
 ;
LKG(A) ;
 Q $P(A,"*",3)
 ;
HBG(A) ;
 Q $P(A,"*")
 ;
LK0(HB,CODDOC) ;
 Q $G(@$$^W4GL("KLIN")@(CODDOC,HB))
 ;
CODDOC(STAM) ;
 I $$HBZ Q "TZ"
 Q "H"
 ;
CODDOCG(HB) ;
 I $$HBZG(HB) Q "TZ"
 Q "H"
 ;
HBZ(CODDOC) ;
 I CODDOC="TZ" Q 1
 Q 0
 ;
HBZG(HB) ;
 I $G(HB)["[-]" Q $S($G(@$$^W4KLIN@("TZ",+HB))["W":2,1:1)
 Q 0
 ;
VDZ(VD) ;
 I $G(VD)=3 Q 1
 Q 0
 
 
 
 
 
 
 

W4DHMK
W4DHMK ; DOCH HESBONIOT                           [ 23.10.14 10:00 ] [ 12.09.13 07:15 ] [ 27.01.11 14:19 ]
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 ;;D PUT^%W1PRM("VD","HMK")
 D ^W4IN
 D ^%W1ARG
 I '$G(MELKH) S MELKH=""
 I '$G(ADLKH) S ADLKH=99999999999
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
GET ;
 N KLIN S KLIN=$$^W4GL("KLIN")
 N CODDOC S CODDOC=$$CODDOC
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 ;
 S I=0
 S (SUMHMK,SAH,SLMAM,SMAM)=0
 ;
 S N="" F  S N=$O(@KLIN@(CODDOC,N)) Q:N=""  D
 .S LK=$$LK^W4STRING(CODDOC,N)
 .I $TR(LK,"-","")<$TR(MELKH,"-","") Q
 .I $TR(LK,"-","")>$TR(ADLKH,"-","") Q
 .D LINEHMK(N,LK)
 Q
 ;
LINEHMK(N,LK) ;
 D ^W4HSBGET(N,"HMK") Q:$D(W4HSB)<10
 ;
 Q:'$G(W4HSB("TODATE"))
 ;
 I $$^%L1DC(W4HSB("TODATE"),3)<$$^%L1DC(DAT1,3) Q
 I $$^%L1DC(W4HSB("TODATE"),3)>$$^%L1DC(DAT2,3) Q
 ;
 I $G(%ARG("MESUM")),W4HSB("TOT")<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),W4HSB("TOT")>%ARG("ADSUM") Q
 ;
 I $G(%ARG("MENOM")),N<%ARG("MENOM") Q
 I $G(%ARG("ADNOM")),N>%ARG("ADNOM") Q
 ;
 S I=I+1
 S @TMPREP@("G",I)=N_"\"_W4HSB("TODATE")_"\"_LK_"\"_$$LKH^W4L(LK)
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_$J(W4HSB("LMAM"),2,2)_"\"_$J(W4HSB("MAM"),2,2)_"\"_$J(W4HSB("TOT"),2,2)
 S SUMHMK=SUMHMK+1
 S SLMAM=SLMAM+W4HSB("LMAM")
 S SMAM=SMAM+W4HSB("MAM")
 S SAH=SAH+W4HSB("TOT")
 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4DHMK-CHKPRM","MELKH=MELKH & ADLKH=ADLKH & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MELKH>ADLKH Q "0;RANGENOTVALID;;MELKH"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4DHMK"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HMK S HMK=$$HMKG(A)
 W " style=""cursor:pointer;color:black;font-size:"_$$^W3FSZ(11)
 W """"
 N CODDOC S CODDOC=$$CODDOC
 N LK S LK=$$LK^W4STRING(CODDOC,HMK)
 W " onClick=""ShowArmInvoice('"_HMK_"HMK','"_LK_"','ifr')"""
 Q
 ;
TD ;
 Q
LKG(A) ;
 Q $P(A,"\",3)
 ;
HMKG(A) ;
 Q $P(A,"\")
 ;
CODDOC(STAM) Q "HMK"

W4DHNH
W4DHNH(DOCH) ; DOCH BITULIM & HANAHOT   [ 28.06.26 14:10 ] [ 27.06.26 05:45 ] [ 05.05.25 19:32 ] 
 ;        METRH,ADTRH
 ;        MLZRP
 ;        MIUN
 ;        CODP
 ;        VHNHP  0 - KULAM, 1 - LELO HNH KV, 2 - RAK KV , 3 - 100%
 ;---------------------------------------------------------------------------
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S %CLI=$C(27,91,55,109)
 S %LIGHT1=$C(27)_"[1m"
 S CLS=$C(27,91,48,109)
 ;
 S DOCH=$G(DOCH)
 S SIK=$G(%ARG("SIK"))
 I SIK="" S SIK=1
 S AFTP=$G(%ARG("AFTP"))
 I AFTP="",$$PAPJ^W4PRM S AFTP=1
 ;
 ;;ZWR %ARG
 S MESHAA=$G(%ARG("MESHAA"))
 S ADSHAA=$G(%ARG("ADSHAA"))
 S MESEC=MESHAA*3600+($P(MESHAA,":",2)*60)
 S ADSEC=ADSHAA*3600+($P(ADSHAA,":",2)*60)
 I MESEC!(ADSEC<(3600*$$SHAAZ^W4PRM)&ADSEC),MESEC<(3600*$$SHAAZ^W4PRM) S MESEC=MESEC+(24*3600)
 I ADSEC<MESEC S ADSEC=ADSEC+(24*3600)
 ;;W "MESEC0="_MESEC_"  ADSEC0="_ADSEC,!
 ;
 S SORT=+$G(%ARG("SORT"))&(DOCH="H")
 ;
 W "<div id=""divbut"">",!
 W "  <table dir="""_$$^%W1DIR_""" >",!
 W "   <tr>",!
 ;
 D
 .W "     <td>"
 .         W $$^%W1DICT("ALLBITS")
 .         W "<input type=""radio"" name=""aftp"" "
 .  I 'AFTP W "        checked=""checked"" "
 .  I AFTP W "onClick='ShowBits(0)'"
 .W "         >"
 .W "     </td>"
 .W "      <td>"_$$^%W1DICT("AFTPBITS")
 .W "      <input type=""radio"" name=""aftp"" "
 .I AFTP W "        checked=""checked"" "
 .I 'AFTP W " onClick='ShowBits(1)' "
 .W "      >"
 .W "     </td>"
 .
 .W "     <td width=""10%"">&nbsp;</td>" 
 .
 .W "     <td>"
 .         W $$^%W1DICT("DETAILED")
 .         W "<input type=""radio"" name=""sik"" "
 .  I 'SIK W "        checked=""checked"" "
 .  I SIK W "onClick='ShowDet()'"
 .W "         >"
 .W "     </td>"
 .W "      <td>"_$$^%W1DICT("CONCENTRATED")
 .W "      <input type=""radio"" name=""sik"" "
 .I SIK W "        checked=""checked"" "
 .I 'SIK W " onClick='ShowConc()' "
 .W "      >"
 .W "     </td>"
 ;
 W "     <td>&nbsp;</td> "
 W "     <td>"
   D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"Print()","color:green","wh,22")
 W "     </td>"
 W "     <td width=""3%"" >&nbsp;</td>"
 ;
 D  ;I 'SIK D
 .W "     <td>"
 .  D ROUNDBUT^%W1JS("printCSR",$$^%W1DICT("PRINTCSR"),"PrintCSR()","color:green","wh,22")
 .W "     </td>"
 ;
 W "     <td width=""3%"" >&nbsp;</td>"
 ;
 W "     <td>"
   D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "      </td>",!
 W "   </tr>",!
 W "  </table>",!
 W "</div>",!
 W "<br>"
 ;
 S METRH=$G(%ARG("MEDAT"))
 S ADTRH=$G(%ARG("ADDAT"))
 S MLZRP=$$DOP^W4NAME($G(%ARG("MLZR")))
 S MIUN=$G(%ARG("MIUN"))
 S CODP=$G(%ARG("CODP"))
 ;
 S VHNHP=$G(%ARG("VHNHP"))
 ;
 S D1=$$^%L1DC(METRH,3)
 S D2=$$^%L1DC(ADTRH,3)
 ;
 S MLZRP=$G(MLZRP)
 I $G(CODP)="" S CODP=0
 ;
ZD ;
 ;
ZM ;
 K @$$^W4MAIN("TMPS111")
 S SH=0,MNLP="",MNL0="",HZM=""
 S (SSUMBIT,SSUMBITDM,SKAMBIT,SSUMHNH,SSUMHNHP,SKAMHNH,SKAMHNHP,SKAM0,SSUM0,SKAMRND,SHNHRND)=0
 S (SUMBIT,SUMBITDM,KAMBIT,SUMHNH,SUMHNHP,KAMHNH,KAMHNHP,KAM0,SUM0)=0
 ;
 W "<div align=""center"">",!
 W "<br>",!
 W " <table width=""80%"" dir="""_$$^%W1DIR_""" >",!
 ;
 I '$$NOCSR S ST="" D S1
 I '$$NOCSR S ST=ADTRH_" jix`z cr  "_METRH_" jix`zn " D S1
 S STW=$$H2U(" jix`zn ")_$$BOLD_METRH_$$EBOLD_$$H2U(" jix`z cr  ")_$$BOLD_ADTRH_$$EBOLD D S1W
 ;
 S NMIUN=$S(MIUN=1:"zepnfd",MIUN=2:"micaer",1:"")
 I '$$NOCSR S ST=NMIUN_" itl oein" D S1
 S STW=$$BOLD_$$H2U^%L1FRM(ST)_$$EBOLD D S1W
 ;
 I DOCH="H" D
 .I '$$NOCSR S ST=$$VHNHPNM(VHNHP) D S1
 .S STW=$$BOLD_$$H2U^%L1FRM($$VHNHPNM(VHNHP))_$$EBOLD D S1W
 ;
 I '$$NOCSR S ST="" D S1
 S STW="" D S1W
 ;
 K @$$^W4MAIN("VRM") N HZM1 S HZM1=""
 ;--------------------- VIBORKA --------------------------------
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 S D=D1-1 F  S D=$O(@$$^W4REF@(D)) Q:D=""  Q:D>D2  D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(D,8)) Q
 .S HZM="" F  S HZM1=HZM,HZM=$O(@$$^W4REF@(D,HZM)) Q:HZM=""  D
 ..Q:$$^W4HZMH(HZM)
 ..Q:$$I^W4PIZUL(HZM)
 ..N NMB S NMB=$$NMB^W4HZMST(HZM) 
 ..I $$PAPJ^W4PRM,NMB=$$MPLK^W4MPCHZ!(NMB=$$COUPLK^W4MPCHZ) Q
 ..I DOCH="H",$D(@$$^W4ORD@(HZM,"HNHP"))<10 D
 ...D ^W4HZHNHP(HZM)
 ..I DOCH="H" D
 ...N HNH2 S HNH2=$$HNH2^W4HZMST(HZM) Q:'HNH2
 ...S SHNHRND=SHNHRND+HNH2
 ...S SKAMRND=SKAMRND+1
 ...D SUMHN(HNH2)
 ..;
 ..N HNH,HNHP,BIT,PRHNH
 ..D GETBITHN(HZM)
 ..I DOCH="B",'BIT Q
 ..I DOCH="B",$G(%ARG("ADSUM"))?."-"1N.E,$$TSHL^W4HZMST(HZM)>%ARG("ADSUM") Q
 ..I DOCH="B",$G(%ARG("MESUM"))?."-"1N.E,$$TSHL^W4HZMST(HZM)<%ARG("MESUM") Q
 ..I DOCH="H",'PRHNH,'HNHP Q
 ..
 ..I MIUN=1 D  ; -- HAZMANOT
 ...I '$G(SORT) D
 ....S @$$^W4MAIN("VRM")@(HZM)=""
 ...I $G(SORT) D
 ....S HR=$$HRHN(HZM) S:HR="" HR=" "
 ....S @$$^W4MAIN("VRM")@(HR,HZM)=""
 ..
 ..
 ..I MIUN=2 D  ; -- MELZARIM
 ...S MZ=$$^W4MLZR(HZM)
 ...S MKBL=MZ
 ...
 ...I BIT&(DOCH="B") D
 ....N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .....I $G(@$$^W4ORD@(HZM,"MVTO",N)) Q
 .....S @$$^W4MAIN("VRM")@(MZ,HZM)=""
 ...
 ...I DOCH="H" D
 ....I MZ,MLZRP=""!(MLZRP=MZ) D
 .....I 'SORT S @$$^W4MAIN("VRM")@(MZ,HZM)=""
 .....I SORT D
 ......S HR=$$HRHN(HZM) S:HR="" HR=" "
 ......S @$$^W4MAIN("VRM")@(MZ,HR,HZM)=""
 ...
 ...I DOCH="0",MZ,MLZRP=""!(MLZRP=MZ) S @$$^W4MAIN("VRM")@(MZ,HZM)=""
 ;
 ;----------------------- HAZAGA ------------------------------
 ;
 I MIUN=1 D  ;----------- HAZMANOT ----------------
 .S (SUMBIT,SUMBITDM,KAMBIT,SUMHNH,SUMHNHP,KAMHNH,KAMHNHP,KAM0,SUM0,QNHN,SUMHN,QNHNP,SUMHNP)=0 K NOPC S:SIK NOPC=1
 .;
 .I SIK W "<tr><td><table>",!
 .
 .I '$G(SORT) D
 ..N HZM S HZM="" F  S HZM=$O(@$$^W4MAIN("VRM")@(HZM)) Q:HZM=""  D PCBHZ(HZM)
 .
 .I $G(SORT) D
 ..N HR,HZ
 ..S HR="" F  S HR=$O(@$$^W4MAIN("VRM")@(HR)) Q:HR=""  D  D SUM
 ...S QNHN=0,SUMHN=0
 ...S QNHNP=0,SUMHNP=0
 ...S HZ="" F  S HZ=$O(@$$^W4MAIN("VRM")@(HR,HZ)) Q:HZ=""  D PCBHZ(HZ)
 .
 .I SIK W "</table></td></tr>",!
 .;
 .I '$$NOCSR S ST=" "_$TR($J("",37)," ","-") D S1
 .S STW="<hr>" D S1W
 .
 .K NOPC D PCSUM
 ;
 ;
 I MIUN=2 S MLZ="" D  ;-------------- MELZARIM
 .F  S MLZ=$O(@$$^W4MAIN("VRM")@(MLZ)) Q:MLZ=""  D
 ..K NOPC
 ..I '$$NOCSR S ST="" D S1 S ST=%CLI_$$NAME(MLZ)_CLS_" : caer" D S1
 ..S STW="" D S1W
 ..S STW=$$H2U(" : caer")_" <span style=""font-size:18pt;font-weight:bold"">"_$$H2U($$NAME(MLZ))_$$EBOLD D S1W S STW="&nbsp;" D S1W
 ..I SIK S NOPC=1 W "<tr><td><table>",!
 ..S (SUMBIT,SUMBITDM,KAMBIT,SUMHNH,SUMHNHP,KAMHNH,KAMHNHP,KAM0,SUM0,QNHN,SUMHN,QNHNP,SUMHNP)=0
 ..I '$G(SORT) S HZM="" F  S HZM=$O(@$$^W4MAIN("VRM")@(MLZ,HZM)) Q:HZM=""  D PCBHZ(HZM)
 ..I $G(SORT) D
 ...N HR S HR="" F  S HR=$O(@$$^W4MAIN("VRM")@(MLZ,HR)) Q:HR=""  D  D SUM
 ....S QNHN=0,SUMHN=0
 ....S QNHNP=0,SUMHNP=0
 ....S HZM="" F  S HZM=$O(@$$^W4MAIN("VRM")@(MLZ,HR,HZM)) Q:HZM=""  D PCBHZ(HZM)
 ..I SIK W "</table></td></tr>",!
 ..I '$$NOCSR S ST=" "_$TR($J("",37)," ","=") D S1
 ..S STW="<hr>" D S1W
 ..K NOPC I SIK S STW="" D S1W
 ..I '$$NOCSR S ST=$J("",14)_%CLI_$J($$NAME(MLZ),12)_CLS_" caerl k""dq" D S1
 ..S STW=$$H2U(" caerl k""dq")_" "_$$BOLD_$$H2U($$NAME(MLZ))_$$EBOLD D S1W
 ..D PCSUM
 ..I '$$NOCSR S ST="" D S1
 ..S STW="&nbsp;" D S1W S STW="<hr>" D S1W
 ;
 D SHOW
 ;
 W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRM")
 Q
 ;
 ;
HDORD ;
 S HDORD=$$H2U(" : dpnfd")_" "_$$BOLD("green")_HZM_$$EBOLD
 Q
 ;
USL(HZM,MLZRP,N)
 N MZ
 S MZ=$$WHODEL^W4HZMST(HZM,N)
 I MZ,MLZRP=""!(MLZRP=MZ) Q 1
 Q 0
 ;
 ;
SUMST(ST) ;
 Q $P(ST,"\",7)
 ;
HR(ST) ;
 Q $P(ST,"\",8)
 ;
 ;
PCBHZ(HZM) ;
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 N (JB,%ARG,%REM,DOCH,HZM,SH,CLS,MIUN,SIK,MLZ,SUMHNH,SUMHNHP,SSUMHNHP,SKAMHNHP,KAMHNH,KAMHNHP,SKAM0,SSUM0,SUMBIT,SUMBITDM,KAMBIT,KAM0,SUM0,NOPC,MNLP,MLZRP,OK,PRNT,%MDP,PRINT,P1B,CODP,VHNHP,QNHN,SUMHN,QNHNP,SUMHNP,MESEC,ADSEC,SHNHRND,SKAMRND,MAIL,AFTP)
 S OK=0,FIRSTLINE=1
 S %CLI=$C(27,91,55,109)
 S %LIGHT1=$C(27)_"[1m"
 ;
 N HZMDEL S HZMDEL=$$^W4DEL(HZM)
 I DOCH="B",$$SHIHZUR(HZM)!(HZMDEL'=HZM&HZMDEL) Q
 I DOCH="B",$$^W4HZMH(HZM) Q
 I DOCH="B",$$I^W4PIZUL(HZM) Q
 ;
 D GETBITHN(HZM)
 ;
 ; ---- VYBORKA ( VHNHP=1 - LELO HNH KV, 2 - RAK KV , 3 - 100% )
 S OK=0 I DOCH="H",VHNHP D  Q:'OK
 .S HNHP1=0,HNHP2=0,HNH=$$HNH^W4HZMST(HZM)
 .
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..S ST=$G(^(I)) Q:ST=""
 ..S HR=$$HR(ST)
 ..Q:$P(ST,"\")'["%"  Q:$E(ST)'="-"
 ..I VHNHP=3,$P(ST,"\")'="-100%" Q
 ..I $$HNHSHAA(ST) S HNHP2=HNHP2+$$SUMST(ST)
 ..S HNHP1=HNHP1+$$SUMST(ST) ; -- LO KAVUA
 .
 .I VHNHP=1!(VHNHP=3),HNHP1!(HNH'<1) S OK=1 Q
 .I VHNHP=2,HNHP2 S OK=1 Q
 ;
 I DOCH="0" D  Q:'OK
 .S OK=0 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $P($G(^(I)),"\")=CODP S OK=1 Q
 ;
 ; ---------------------- KOTERET ----------------------------
 ;;D KOTHZ(HZM)
 ;
 ;----------- HAZAGAT BITULIM --------------
 ;
 S BITHZ=0
 I DOCH="B",$D(@$$^W4ORD@(HZM,"BIT")) D PCBIT(HZM)
 ;
 ;----------- HAZAGAT HANAHOT -------------------
 ;
 I DOCH="H" D PCHNH(HZM)
 ;
 I DOCH="0"  D
 .N J S J=0,KAMHZ0=0,SUMHZ0=0
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $P($G(^(I)),"\")=CODP D
 ..S J=J+1 D PCBHZ1(HZM,J=1,I,"")
 .S STW=STW_$$EMPTYTBLINE
 .S STW=STW_"<tr>"_$$TDLINE_$$H2U(" : dpnfda ""0"" hixt zexikn")_" "_$$BOLDRED_$J(SUMHZ0,7,2)_$$EBOLD_"</td></tr>"
 .S STW=STW_"</table>" D S1W
 ;
 ;
 I SIK D  ; --------------------------- DOH MERUKAZ
 .N NOPC
 .N SUMHZ S SUMHZ=""
 .
 .D HDORD
 .
 .I DOCH="H" D  Q
 ..I '$$NOCSR S ST=$J(HNH,6,2)_":zeillk zegpd "_$J(HNHP,6,2)_":hixtl zegpd" D S1
 ..S STW="<tr onClick=""ShowOrd('"_HZM_"')"" style=""cursor:pointer"">"
 ..S STW=STW_"<td>"_HDORD_"</td>"
 ..S STW=STW_"<td>&nbsp;&nbsp;"_$$H2U(" : mihixtl zegpd")_"</td>"
 ..S STW=STW_"<td>&nbsp;"_$$BOLDRED_$J(HNHP,2,2)_$$EBOLD_"</td>"
 ..S STW=STW_"<td>&nbsp;&nbsp;"_$$H2U(" : zeillk zegpd")_"</td>"
 ..S STW=STW_"<td>&nbsp;"_$$BOLDRED_$J(HNH,2,2)_$$EBOLD_"</td>"
 ..S HRHN=$$HRHN(HZM)
 ..I HRHN="" S HRHN="&nbsp;"
 ..S STW=STW_"<td>&nbsp;&nbsp;"_$$H2U(" : zexrd")_"</td>"
 ..S STW=STW_"<td>&nbsp;"_$$BOLDRED_HRHN_$$EBOLD_"</td>"
 ..S STW=STW_"</tr>" W STW,!
 .
 .I DOCH="B" S SUMHZ=HDORD_$$SPACE_$$BOLDRED_$J(-BITHZ,2,2)_$$EBOLD D
 ..I '$$NOCSR S ST=%CLI_$J(-BITHZ,7,2)_CLS_" : "_HZM_" : dpnfd" D S1
 .
 .I DOCH="0" D
 ..N DOP S DOP=" dir=""LTR"" " I SUMHZ0<0 S DOP=DOP_"color=""red"" "
 ..S SUMHZ=HDORD_$$SPACE_$$BOLD_$J(SUMHZ0,2,2)_$$EBOLD
 ..I '$$NOCSR S ST=%CLI_$J(SUMHZ0,7,2)_CLS_" : "_HZM_" : dpnfd" D S1
 .
 .S STW="<tr onClick=""ShowOrd('"_HZM_"')"" style=""cursor:pointer"">"
 .S STW=STW_"<td>"_SUMHZ_"<td></tr>"
 .W STW,!
 Q
 ;
 ;
S1 Q:$D(NOPC)
 S SH=SH+1
 S @$$^W4MAIN("TMPS111")@(SH)=ST
 Q
 ;
S1W ;
 Q:$D(NOPC)
 W "<tr>"
  W "<td "
   I $G(COLSPAN) W " colspan="""_COLSPAN_""""
  W ">"
 W STW_"</td>"
 W "</tr>",!
 Q
 ;
SHIHZUR(HZM) ;
 N B S B=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",2)
 S B=$$U2H^%L1FRM(B)
 I $E(B,$L(B))=">" Q 1
 Q 0
 ;
 ;
PCSUM ;--- SAH HANAHOT BE AZMANA
 W "<br>",!
 I DOCH="B" D
 .I '$$NOCSR S ST=" "_%LIGHT1_$J(-SUMBIT,7,2)_" : mekq  "_$J(KAMBIT,3)_" : milehia zenk"_CLS D S1
 .S STW=$$H2U(" : milehia zenk")_" "_$$BOLDRED_KAMBIT_$$EBOLD_$$SPACE_$$H2U(" : mekq  ")_" "_$$BOLDRED_$J(-SUMBIT,7,2)_$$EBOLD
 .S STW=STW_$$NBSP^%L1FRM(5)_$$H2U("gelyn inc ilehia")_" "_$$BOLDRED_$J(-SUMBITDM,2,2)_$$EBOLD
 .S STW=STW_$$NBSP^%L1FRM(5)_$$H2U("llek milehia")_" "_$$BOLDRED_$J(-SUMBIT-SUMBITDM,2,2)_$$EBOLD
 .D S1W 
 ;
 I DOCH="H" D
 .I '$$NOCSR S ST=" "_%LIGHT1_$J(SUMHNHP,7,2)_" mekqa "_KAMHNHP_" : mihixtl zegpd "_CLS D S1
 .S STW=$$BOLD_"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"_$$H2U(" : mihixtl zegpd")_$$EBOLD
 .S STW=STW_" "_$$BOLDRED_KAMHNHP_$$EBOLD_" "_$$SPACE_$$H2U(" : mekqa ")_" "_$$BOLDRED
 .S STW=STW_$J(SUMHNHP,7,2)_$$EBOLD D S1W
 .
 .I $G(VHNHP)'=3 D
 ..I '$$NOCSR S ST=" "_%LIGHT1_$J(SUMHNH,7,2)_" : mekqa  "_$J(KAMHNH,3)_" : zeillk zegpd zenk"_CLS D S1
 ..S STW=$$BOLD_$$H2U(" : zeillk zegpd zenk")_$$EBOLD_" "_$$BOLDRED_KAMHNH_$$EBOLD_$$SPACE_$$BOLD_$$H2U(" : mekqa ")_$$EBOLD_$$BOLDRED_$J(SUMHNH,7,2)_$$EBOLD D S1W
 ;
 I DOCH="0" D
 .I '$$NOCSR S ST=" "_%LIGHT1_$J(SUM0,7,2)_" : mekq  "_$J(KAM0,3)_" : zexikn zenk"_CLS D S1
 .S STW=$$H2U(" : zexikn zenk")_" "_$$BOLDRED_KAM0_$$EBOLD_$$SPACE_$$H2U(" : mekqa  ")_" "_$$BOLDRED_$J(SUM0,7,2)_$$EBOLD D S1W
 ;
 S SSUMBIT=SSUMBIT+SUMBIT,SKAMBIT=SKAMBIT+KAMBIT
 S SSUMBITDM=SSUMBITDM+SUMBITDM
 S SSUM0=SSUM0+SUM0,SKAM0=SKAM0+KAM0
 S SSUMHNH=SSUMHNH+SUMHNH,SKAMHNH=SKAMHNH+KAMHNH
 S SSUMHNHP=SSUMHNHP+SUMHNHP,SKAMHNHP=SKAMHNHP+KAMHNHP
 Q
 ;
 ;
KOTHZ(HZM) ;
 D ^W4HZGT(HZM)
 S MKBL=$$^W4MLZR(HZM)
 S MLZR1="" I MKBL S MLZR1=$$NAME(MKBL)
 ;
 I '$$NOCSR S ST=$TR($J("",37)," ","-") D S1
 S STW="<hr>" D S1W
 ;
 I '$$NOCSR S ST=$S('$G(@$$^W4PRM@("MLZ")):$$HBR^%L1FRM(MLZR1,10)_" :caer  ",1:$J("",20))_%CLI_$J(HZM,5)_CLS_" :dpnfd" D S1
 S STW=$$H2U("  : caer")_" "_$$BOLD_$$H2U(MLZR1)_$$EBOLD D S1W
 ;
 S STW="<tr onClick=""ShowOrd('"_HZM_"')"" style=""cursor:pointer"">"
 D HDORD
 ;
 I 'SIK D
 .S STW=STW_"<td>"_HDORD_"<td></tr>"
 .W STW,!
 ;
 I $$^W4MSD(NMB) D
 .I '$$NOCSR S ST=$J(NMB,3)_" : ogley" D S1
 .S STW=$$H2U(" : ogley")_" "_$$BOLD_$J(NMB,3)_$$EBOLD D S1W
 .I '$$NOCSR S ST=$J("",20)_$J(TSHL,7,2)_":oeayg k''dq" D S1
 .S STW=$$H2U(":oeayg k''dq")_" "_$$BOLD_$J(TSHL,7,2)_$$EBOLD D S1W
 ;
 I $$^W4MSL(NMB) D
 .I '$$NOCSR S ST=$J("",32)_"gelyn" D S1
 .S STW=$$BOLD_$$H2U("gelyn")_$$EBOLD D S1W
 .I '$$NOCSR S ST=$J("",2)_$J(TSHL,7,2)_":oeayg k''dq " D S1
 .S STW=$$H2U(":oeayg k''dq")_" "_$$BOLD_$J(TSHL,7,2)_$$EBOLD D S1W
 .
 .I '$$NOCSR S ST=$$HBR^%L1FRM($$LKH^W4L(NMB),21)_" "_%CLI_$J(NMB,7)_CLS D S1
 .S STW=$$H2U(" : gewl")_" "_$$BOLD_NMB_" "_$$H2U($$LKH^W4L(NMB)) D S1W
 ;
 I '$$NOCSR S ST=$J("",5)_$J(ZMANK,15)_" : dpnfd zlaw onf" D S1
 S STW=$$H2U(" : dpnfd zlaw onf")_" "_$J(ZMANK,15) D S1W
 ;
 I $$^W4MSL($G(LKHN)),$$^W4MSD(NMB) D
 .I '$$NOCSR S ST=$$HBR^%L1FRM($$LKH^W4L(LKHN),21)_" "_%CLI_LKHN_CLS_" : gewl" D S1
 .S STW=$$H2U(" : gewl")_" "_$$BOLD_LKHN_" "_$$H2U($$LKH^W4L(LKHN))_$$EBOLD D S1W
 ;
 S HRA2=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\")
 S HRA2=$$U2H^%L1FRM(HRA2)
 I HRA2'="" D
 .I '$$NOCSR S ST=%CLI_HRA2_CLS D S1
 Q
 ;
 ;
PCBIT(HZM) ;
 I $G(AFTP),$D(@$$^W4ORD@(HZM,"CB"))<10 Q
 N N,I,PRHD S N="",STW="",PRHD=1,BITHZ=0
 ;
 I $$^W4HZMH(HZM) Q
 I $$I^W4PIZUL(HZM) Q
 ;
 F I=1:1 S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .I N["-" Q
 .N OKV S OKV=1
 .I MESEC!ADSEC D
 ..I MESEC=0,ADSEC=(24*3600) Q
 ..S SEC=$P($P($G(^(N)),"*",5),",",2)
 ..S:SEC<(3600*$$SHAAZ^W4PRM) SEC=SEC+(24*3600)
 ..I SEC<MESEC!(SEC>ADSEC) S OKV=0
 .Q:'OKV
 .I $$AVAR(HZM,+N) Q
 .S WHODEL=$$WHODEL^W4HZMST(HZM,N)
 .I WHODEL="" S WHODEL=MKBL
 .I MIUN=2 D PCBHZ1(HZM,PRHD,N,WHODEL) S PRHD=0 Q
 .;;W "MESEC="_MESEC_"  ADSEC="_ADSEC,!
 .D PCBHZ1(HZM,PRHD,N,WHODEL) S PRHD=0 Q
 ; 
 I '$$NOCSR,BITHZ!($$DMSH^W4HZMST(HZM)<0) D
 .S ST=" "_%CLI_$J(-BITHZ,7,2)_CLS_" : dpnfda milehia" D S1
 I 'PRHD,$L(STW) S STW=STW_"</table>" D S1W ;;S STW="&nbsp;" D S1W
 ;
 I BITHZ!($$DMSH^W4HZMST(HZM)<0) D
 .S STW=$$H2U(" : dpnfda mihixt ilehia")_" "_$$BOLDRED_$J(-BITHZ,7,2)_$$EBOLD
 .N TS S TS=$$TSHL^W4HZMST(HZM)
 .I TS<0 D
 ..N DM S DM=$$DMSH^W4HZMST(HZM) Q:DM'<0
 ..S STW=STW_$$NBSP^%L1FRM(5)_$$H2U("gelyn inc ilehia")_" "_$$BOLDRED_$J(-DM,2,2)_$$EBOLD
 ..S STW=STW_$$NBSP^%L1FRM(5)_$$H2U("llek milehia")_" "_$$BOLDRED_$J(-BITHZ-DM,2,2)_$$EBOLD
 ..S SUMBITDM=SUMBITDM+DM
 .D S1W
 Q
 ;
 ;
PCHNH(HZM) ;
 I FIRSTLINE D KOTHZ(HZM) S FIRSTLINE=0
 I '$$NOCSR S ST="" D S1
 S STW="" D S1W
 S HNHHZ=0
 N MLZL S MLZL=$$^W4MLZR(HZM)
 I '$$NOCSR S ST="" D S1
 S STW="" D S1W
 I MLZL D
 .I '$$NOCSR S ST=%CLI_$J($$^W4NAME(MLZL),8)_" "_MLZL_CLS_" : caer" D S1
 .S STW=$$H2U(" : caer")_" "_$$BOLD_MLZL_" "_$$H2U($$^W4NAME(MLZL))_$$EBOLD D S1W
 ;
 ;;I HNHP D PCHNHP(HZM) ;------------------- HANAHOT PRITIM
 I $D(@$$^W4ORD@(HZM,"HNHP"))>9 D PCHNHP(HZM)
 ;
 I '$$NOCSR D
 .S ST="" D S1
 .S ST=%LIGHT1_$J("",10)_$J(HNHP,6,2)_" : dpnfda mihixtl zegpd "_CLS D S1
 .S ST="" D S1
 ;
 S STW="<table width=""80%"">"
 S STW=STW_"<tr><td>"_$$BOLD_$$H2U(" : dpnfda mihixtl zegpd")_$$EBOLD_"</td>"
 S STW=STW_"<td>"_$$BOLDRED_$J(HNHP,6,2)_$$EBOLD_"</td></tr>"
 ;
 I VHNHP'=3,$$HNHA^W4HZMST(HZM) D
 .N GLH,ISHER S GLH=$$^W4ORD_"(HZM,""HNH"")"
 .N SIBA1 S SIBA1=$P($G(@GLH),"*",4)
 .S ISHER=""
 .
 .N WHO S WHO=$P($G(@GLH),"*",2)
 .I WHO D
 ..S ISHER=$J($$^W4NAME(WHO)_" : xyi`",38)
 .
 .N HNHA S HNHA=$$HNHA^W4HZMST(HZM)
 .I HNHA D PCHNHA(HZM)
 ;
 D PCHNHASR(HZM)
 ;
 D PCHNH1(HZM)
 ;
 S HNHHZ=HNHP+HNH
 S STW=STW_"</table>" D S1W
 Q
 ;
 ;
PCHNHP(HZM) ;
 N N,I,ST,ST0,ST00,ST1,ST2,J,JJ,PRHD
 N GL S GL=$$^W4ORD_"(HZM,""HNHP"")"
 ;
 S HNHP=0
 S N="",PRHD=1
 ;
 D M2
 ;
 F I=1:1 S N=$O(@GL@(N)) Q:N=""  I N D
 .S ST00=$G(^(N))
 .S ST0=$G(@$$^W4ORD@(HZM,N))
 .S ST1=$G(@$$^W4ORD@(HZM,N+1))
 .I VHNHP=1,$$HNHSHAA(ST0) Q
 .I VHNHP=2,'$$HNHSHAA(ST0) Q
 .I VHNHP=3,+$$SPA^%L1FRM($P(ST0,"\",6))'=100 Q
 .
 .I PRHD D  S PRHD=0
 ..I '$$NOCSR S ST="" D S1 S ST=$P($T(M2),";",2) D S1
 ..S STW="" D S1W
 ..S STW="<table width=""100%"" ><tr>"
 ..S JJ="" F  S JJ=$O(M21(JJ),-1) Q:JJ=""  D
 ...S STW=STW_"<th>"_$$H2U(M21(JJ))_"</th>"
 ..S STW=STW_"</tr>"
 .
 .S J=0,ST="",STW=STW_"<tr>",A=""
 .S ST2=N_"\"_$P(ST0,"\",3)_"\"_$P(ST1,"\",5)_"\"_$P(ST0,"\",7)_"\"_-$P(ST1,"\")_"\"_-$P(ST1,"\",7)
 .F I1=1:1:6 D
 ..S RKV=$$CNWEB^%L1FRM($P(ST2,"\",I1))
 ..S J=J+1 S ST=ST_$J(RKV,M2(J))_" "
 ..D STYLE(RKV,M2T(J))
 ..S A=A_"<td "_STYLE_">"_$$H2U(RKV)_"</td>"
 .S STW=STW_A
 .
 .S HNHP=HNHP+$$SUMST(ST0)
 .I '$$NOCSR S ST=$E(ST,1,$L(ST)-1) D S1
 .S STW=STW_"</tr>"
 .S KAMHNHP=KAMHNHP+1
 .S QNHNP=$G(QNHNP)+1
 .S SUMHNHP=SUMHNHP+$$SUMST(ST0)
 .S SUMHNP=$G(SUMHNP)+$$SUMST(ST0)
 .
 .;;DHRP
 .
 .N GLH S GLH=$$^W4ORD_"(HZM,""HNH"")"
 .N WHO S WHO=$P($G(@GLH@(N)),"*",2)
 .N SIBA1 S SIBA1=$P($G(@GLH@(N)),"*",4)
 .
 .I WHO D
 ..N ISHER S ISHER=$$^W4NAME(WHO)_" : xyi`"
 ..I '$$NOCSR S ST=$J(ISHER,38) D S1 ; -- HEARA
 ..I '$$NOCSR S ST=$J(SIBA1_" : daiq",38) D S1 ; -- HEARA
 ..
 ..S STW=STW_"<tr><td>&nbsp;</td>"
 ..S STW=STW_"<td>"
 ..S STW=STW_$$BOLD("green")_$$H2U(SIBA1)_$$EBOLD_"</td>"
 ..S STW=STW_"<td>"_$$BOLD_$$H2U(ISHER)_$$EBOLD_"</td></tr>"
 .
 I 'PRHD S STW=STW_$$EMPTYTBLINE_"</table>" D S1W
 Q
 ;
 ;
PCHNHA(HZM) ;
 N ST
 I '$$NOCSR D
 .S ST=$J("",$S(HNHAH:6,1:15))_%LIGHT1_$J(HNHA,7,2)_$S(HNHAH:" = "_$J(HNHAH,5,2)_"%",1:"")_" :   %-a dgpd "_CLS D S1
 .S ST="" D S1
 .I ISHER'="" S ST=ISHER D S1
 .I SIBA1'="" S ST=SIBA1 D S1
 ;
 S STW=STW_"<tr><td>"_$$BOLD_$$H2U("   dgpd")_$$EBOLD
 S STW=STW_" = % "_$J(HNHAH,5,2)_$$EBOLD_"</td>"
 S STW=STW_"<td>"_$$BOLDRED_$J(HNHA,7,2)_$$EBOLD_"</td>"
 ;
 N GLH S GLH=$$^W4ORD_"(HZM,""HNH"")"
 ;
 I ISHER'=""!(SIBA1'="") D
 .S STW=STW_"<td>"_$$BOLD("green")_$$H2U(SIBA1)_$$EBOLD_"</td>"
 .S STW=STW_$$TDLINE_$$BOLD_$$H2U(ISHER)_$$EBOLD_"</td>"
 ;
 I ISHER="",SIBA1="" D
 .S STW=STW_"<td>&nbsp;</td><td>&nbsp;</td>"
 ;
 S STW=STW_"</tr>"
 ;
 D SUMHN(HNHA)
 Q
 ;
 ;
PCHNHASR(HZM) ;
 N LK,LK1
 N J,HN,HR F J=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","ASR",J))  D
 .N A S A=$G(^(J))
 .S HN=$J($P(A,"*",3),2,2) Q:'HN
 .D SUMHN(HN)
 .
 .S LK=$$H2U($P(A,"*",12))_" "_$P(A,"*")
 .S LK1=$P(A,"*",12)_" "_$P(A,"*")
 .
 .S STW=STW_"<tr><td>"_$$BOLD_$$H2U(" : "_LK_" gewll dgpd")_$$EBOLD_"&nbsp;"
 .S STW=STW_"</td><td>"_$$BOLDRED_HN_$$EBOLD_"</td><td>&nbsp;</td></tr>"
 .
 .I '$$NOCSR S ST=": "_LK1_" gewll dgpd" D S1
 .S ST=$J(HN,7,2) D S1
 Q
 ;
 ;
PCHNH1(HZM) ;
 N J,HN,HR,HR1
 F J="" F  S J=$O(@$$^W4ORD@(HZM,"CB","HNH1",J)) Q:J=""  I J D
 .N A S A=$G(^(J))
 .S HN=$J($P(A,"*"),2,2)
 .D SUMHN(HN)
 .Q:HN<.5&(HN>-.5)
 .S HR=$$H2U($P(A,"*",5))
 .S HR1=$P(A,"*",5)
 .
 .S STW=STW_"<tr><td>"_$$BOLD_$$H2U(" : g""ya dgpd")_$$EBOLD_"</td>"
 .S STW=STW_"<td>"_$$BOLDRED_HN_$$EBOLD_"</td>"
 .S STW=STW_"<td>"_$$BOLD("green")_HR_$$EBOLD_"</td>"
 .
 .S ISHER=""
 .N WHO S WHO=$P(A,"*",3)
 .I WHO D
 ..S ISHER=$J($$^W4NAME(WHO)_" : xyi`",38)
 .I ISHER'="" D
 ..S STW=STW_$$TDLINE_$$BOLD_$$H2U(ISHER)_$$EBOLD_"</td>"
 .I ISHER="" D
 ..S STW=STW_"<td>&nbsp;</td>"
 .S STW=STW_"</tr>"
 .I '$$NOCSR D
 ..S ST=$J(HR1,22)_$J(HN,7,2)_" g""ya dgpd" D S1
 ..I ISHER'="" S ST=ISHER D S1
 Q
 ;
 ;
SHOW ;
 I DOCH="B",+SSUMBIT'=SUMBIT D
 .I '$$NOCSR S ST=%CLI_$J(-SSUMBIT,7,2)_CLS_" mekqa milehia "_%CLI_SKAMBIT_CLS_" k""dq" D S1
 .S STW=$$BOLD_$$H2U(" k""dq")_$$EBOLD_" "_$$BOLDRED_SKAMBIT_$$EBOLD_" "_$$BOLD_$$H2U(" mekqa mihixt ilehia ")_$$EBOLD_$$BOLDRED_$J(-SSUMBIT,7,2)_$$EBOLD
 .I $G(SSUMBITDM) S STW=STW_$$NBSP^%L1FRM(5)_$$BOLD_$$H2U(" gelyn inc ilehia k""dq ")_$$EBOLD_$$BOLDRED_$J(-SSUMBITDM,2,2)_$$EBOLD_$$NBSP^%L1FRM(5)_$$BOLD_$$H2U(" llek milehia ")_$$EBOLD_" "_$$BOLDRED_$J(-SSUMBIT-SSUMBITDM,7,2)_$$EBOLD
 .D S1W
 ;
 I DOCH="H",+SSUMHNH'=+SUMHNH,VHNHP'=3 D
 .I '$$NOCSR S ST=%CLI_$J(SSUMHNH,7,2)_CLS_" : mekqa zeillk zegpd "_%CLI_SKAMHNH_CLS_" k""dq" D S1
 .S STW=$$BOLD_$$H2U(" k""dq")_$$EBOLD_" "_$$BOLDRED_SKAMHNH_$$EBOLD_" "_$$BOLD_$$H2U(" mekqa zeillk zegpd ")_$$EBOLD_" "_$$BOLDRED_$J(SSUMHNH,7,2)_$$EBOLD D S1W
 ;
 I DOCH="H" D
 .I '$$NOCSR S ST=%CLI_$J(SHNHRND,7,2)_CLS_" mekqa milebir zegpd "_%CLI_SKAMRND_CLS_" k""dq" D S1
 .S STW=$$BOLD_$$H2U(" k""dq")_$$EBOLD_" "_$$BOLDRED_SKAMRND_$$EBOLD_" "_$$BOLD_$$NBSP^%L1FRM(4)_$$H2U(" mekqa milebir zegpd ")_$$EBOLD_" "_$$BOLDRED_$J(SHNHRND,7,2)_$$EBOLD D S1W
 .I '$$NOCSR S ST=%CLI_$J(SSUMHNH+SHNHRND,7,2)_CLS_" mekqa milebir llek zegpd "_CLS_" k""dq" D S1
 .S STW=$$BOLD_$$H2U(" : mekqa milebir llek zeillk zegpd ")_$$EBOLD_" "_$$BOLDRED_$J(SSUMHNH+SHNHRND,7,2)_$$EBOLD D S1W
 ;
 I DOCH="H",+SSUMHNHP'=+SUMHNHP D
 .I '$$NOCSR S ST=%CLI_$J(SSUMHNHP,7,2)_CLS_" mekqa mihixtl zegpd "_%CLI_SKAMHNHP_CLS_" k""dq" D S1
 .S STW=$$BOLD_$$H2U(" k""dq")_$$EBOLD_" "_$$BOLDRED_SKAMHNHP_$$EBOLD_" "_$$BOLD_$$H2U(" mekqa mihixtl zegpd ")_$$EBOLD_" "_$$BOLDRED_$J(SSUMHNHP,7,2)_$$EBOLD D S1W
 ;
 I DOCH="0",SSUM0'=SUM0 D
 .I '$$NOCSR S ST=%CLI_$J(SSUM0,7,2)_CLS_" mekqa mihixt "_%CLI_SKAM0_CLS_" xknp k""dq" D S1
 .S STW=$$BOLD_$$H2U(" xknp k""dq")_$$EBOLD_" "_$$BOLDRED_SKAM0_$$EBOLD_" "_$$BOLD_$$H2U(" mekqa mihixt ")_$$EBOLD_" "_$$BOLDRED_$J(SSUM0,7,2)_$$EBOLD D S1W
 ;
ES ;;K @$$^W4MAIN("TMPS111")
 Q
 ;
 ;
PC S TXT=$$CLST^%L1FRM(TXT,%MDP("B"),%MDP("N"))
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 N PCN S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 S @$$^W4PC@(PRINT,PCN)=$TR(TXT,TS0,TSS)
 K TXT Q
 ;
M1 ; dry : mekq :zenk:   hixt xe`z   : cew ;
   ;  E  :  N   :  N :      H        :  E  ;
   S T=$P($T(M1),";",2)
   S T1=$P($T(M1+1),";",2)
   K M N J F J=1:1:$L(T,":") S M(J)=$L($P(T,":",J))
   K M1 F J=1:1:$L(T,":") S M1(J)=$P(T,":",J)
   K M1T F J=1:1:$L(T1,":") S M1T(J)=$TR($P(T1,":",J)," ","")
   Q
 ;
M2 ; dgpd : %: mekq :zenk:  hixt xe`z  :'ey;
   ;  N   : N:  N   : N  :     H       : E ;
   S T=$P($T(M2),";",2)
   S T1=$P($T(M2+1),";",2)
   K M2 N J F J=1:1:$L(T,":") S M2(J)=$L($P(T,":",J))
   F J=1:1:$L(T,":") S M21(J)=$P(T,":",J)
   K M2T F J=1:1:$L(T1,":") S M2T(J)=$TR($P(T1,":",J)," ","")
   Q
 ;
NAME(CODOV) ;
 S NAME=$$^W4NAME(CODOV)
 Q NAME
 ;
 ;
PCBHZ1(HZM,FIRST,N,WHODEL) ;
 ;---------------------------
 ; dpnfda milehia zexey zbvd
 ;---------------------------
 Q:DOCH'="B"&(DOCH'="0")
 I $G(HZM)<1 Q
 N ST,ST0,J,I1,M S ST0=""
 I $G(FIRSTLINE) D KOTHZ(HZM) S FIRSTLINE=0
 D M1 S ST=""
 ;
 I FIRST D
 .I '$$NOCSR D S1 S ST=$P($T(M1),";",2) D S1
 .S STW="<table width=""100%"" dir="""_$$^%W1DIR_""">"
 .S STW=STW_"<tr>" D
 ..N JJ S JJ="" F  S JJ=$O(M1(JJ),-1) Q:JJ=""  D
 ...S STW=STW_"<th>"_$$H2U(M1(JJ))_"</th>"
 .S STW=STW_"</tr>" ;
 ;
 I N'["-" D
 .S ST0=$G(@$$^W4ORD@(HZM,N))
 .N TSF S TSF=$P(ST0,"\",6)
 .N SUM S SUM=$P(ST0,"\",7)
 .;;S $P(ST0,"\",6)=""
 .;;S $P(ST0,"\",7)=$P(ST0,"\",7)-TSF ; --> COMMENT 04/05/21 
 ;
 I N["-" D
 .N A
 .I $L(N,"-")=2 D  Q
 ..S A=$G(@$$^W4ORD@(HZM,+$P(N,"-"),+$P(N,"-",2))) Q
 ..S ST0=+$P(N,"-",2)_"\\"_$P(A,"\")_"\"_$P(A,"\",2)_"\"_$P(A,"\",3)_"\\"_($P(A,"\",2)*$P(A,"\",3))_"\"_$P(A,"\",4) Q
 .
 .S A=$G(@$$^W4ORD@(HZM,+$P(N,"-"),+$P(N,"-",2),+$P(N,"-",3)))
 .I $P(A,"\") D  Q
 ..S ST0=$P(A,"\")_"\\"_$P(A,"\",2)_"\"_$P(A,"\",7)_"\"_$P(A,"\",3)_"\\"_($P(A,"\",7)*$P(A,"\",3))_"\"_$P(A,"\",6)
 .
 .S ST0=$P(A,"\",4)_"\\"_$P(A,"\",5)_"\"_$P(A,"\",7)_"\"_$P(A,"\",3)_"\\"_($P(A,"\",7)*$P(A,"\",3))_"\"_$P(A,"\",6)
 ;
 S J=0,ST="",A=""
 F I1=7,5,3,1 D  ; --- SHURAT HAZMANA
 .S J=J+1
 .N RKV S RKV=$$CNWEB^%L1FRM($P(ST0,"\",I1))
 .S ST=ST_$S(I1=7:$J(RKV,M(J),2),1:$J(RKV,M(J)))_" "
 .D STYLE(RKV,M1T(J))
 .S A="<td "_STYLE_">"_$S(I1=7:$J(RKV,2,2),1:$$H2U(RKV))_"</td>"_A
 ;
 N TIM S TIM="&nbsp;"
 I N'["-" D
 .N BIT S BIT=$G(@$$^W4ORD@(HZM,"BIT",N))
 .S TIM=$$T^%L1TIME($P($P(BIT,"*",5),",",2))
 S A=A_"<td>"_TIM_"</td>"
 S ST=TIM_" "_ST
 I '$$NOCSR S ST=%LIGHT1_$E(ST,1,$L(ST)-1)_CLS D S1
 S STW=STW_"<tr>"_A_"</tr>"
 ;
 N STBIT S STBIT=$G(@$$^W4ORD@(HZM,"BIT",N))
 ;
 N HRP S HRP=$P(STBIT,"*",4)
 ;
 I $L(HRP) D
 .I '$$NOCSR S ST=$J(HRP,20) D S1
 .;;S STW=STW_"<tr>"_$$TDLINE_$$BOLD_$$H2U(HRP)_$$EBOLD_"</td></tr>"
 ;
 I $$EX2KITCH^W4HZMST(HZM,N) D
 .I '$$NOCSR S ST=%CLI_"gahndn `vi hixt"_CLS D S1
 .;;S STW=STW_"<tr>"_$$TDLINE_$$BOLDRED_$$H2U("gahndn `vi hixt")_$$EBOLD_"</td></tr>"
 .;;S STW=STW_"<tr>"_$$EMPTYTBLINE_"</tr>"
 .I '$$NOCSR S ST="" D S1
 ;
 S SUMBIT=SUMBIT+$P(ST0,"\",7),KAMBIT=KAMBIT+1
 ;
 I DOCH="B" S BITHZ=BITHZ+$P(ST0,"\",7)
 ;
 I DOCH="0" D
 .N QN,SUM S QN=$P(ST0,"\",5),SUM=$P(ST0,"\",7)
 .S KAM0=KAM0+QN
 .S KAMHZ0=KAMHZ0+QN
 .S SKAM0=SKAM0+QN
 .S SUM0=SUM0+SUM
 .S SUMHZ0=SUMHZ0+SUM
 ;
 I DOCH'="B",$E($G(@$$^W4ORD@(HZM,N+1)))="-" D  ; --- HANAHA LE PARIT
 .N ST,ST0,I,J
 .S ST0=^(N+1)
 .S J=0,ST="",A="" S STW=STW_"<tr>"
 .F I1=7,5,3,1 D
 ..S J=J+1
 ..N RKV S RKV=$$CNWEB^%L1FRM($P(ST0,"\",I1))
 ..I I1=7 S RKV=$J(RKV,2,2)
 ..S ST=ST_$J(RKV,M(J))_" "
 ..D STYLE(RKV,M1T(J))
 ..S A="<td "_STYLE_">"_$$H2U(RKV)_"</td>"_A
 .I '$$NOCSR S ST=$E(ST,1,$L(ST)-1) D S1
 .S STW=STW_A_"</tr>"
 .
 .S HRP=$P(ST0,"\",8)
 .I $L(HRP) D
 ..I '$$NOCSR S ST=$J(HRP,30) D S1
 ..S STW=STW_"<tr>"_$$TDLINE_$$BOLD_$$H2U(HRP)_$$EBOLD_"</td></tr>"
 ..I '$$NOCSR S ST="" D S1
 .
 .N SUM S SUM=$P(ST0,"\",7)
 .
 .I DOCH="B" D
 ..S BITHZ=BITHZ+SUM
 ..S SUMBIT=SUMBIT+SUM
 .
 .I DOCH="0" D
 ..S SUM0=SUM0+SUM
 ..S SUMHZ0=SUMHZ0+SUM
 ;
 I WHODEL D
 .I '$$NOCSR S ST=$J("",15)_$$HBR^%L1FRM($$NAME(WHODEL),15)_" : lhia in" D S1
 .S STW=STW_"<tr><td>"_$$H2UG(" : lhia in")_" "_$$BOLD_$$H2U($$NAME(WHODEL))_$$EBOLD_"</td>"
 .S STW=STW_"<td>"_$$H2UG(" : lehia zaiq")_" "_$$BOLD_$$H2U($$SIBA1^W4HZMST(HZM,N))_$$EBOLD_"</td>"
 .N EX S EX=$$EX2KITCH^W4HZMST(HZM,N)
 .S STW=STW_"<td>"_$$H2UG(" : gahnn `vi m`d")_" "_$$BOLD_$$H2U($S(EX:"ok",1:"`l"))_$$EBOLD_"</td>"
 .S STW=STW_"</tr>"
 .S STW=STW_$$EMPTYTBLINE
 .I '$$NOCSR S ST="" D S1
 ;
 Q
 ;
 ;
HNHSHAA(ST) ;
 I $P(ST,"\",8)["ry itl" Q 1
 I $P(ST,"\")["-",$P(ST,"\")["%",$P(ST,"\",8)["*<" Q 1
 I $P(ST,"\")["-",$P(ST,"\")["%",$P(ST,"\",5)<0 Q 1
 Q 0
 ;
GETBITHN(HZM) ;
 S HNH=$$HNH^W4HZMST(HZM)
 S HNHP=$S($D(@$$^W4ORD@(HZM,"HNHP"))<10:0,1:1)
 S PRHNH=$S(HNH>.9!(HNH<-.9):1,1:0)
 S BIT=$$BIT(HZM)
 I $G(VHNHP)=3 D
 .N I,OK S OK=0
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $$SPA^%L1FRM($P(^(I),"\"))="-100%" S OK=1 Q
 .I 'OK S PRHNH=0,HNHP=0
 Q
 ;
BOLD(COLOR) ;
 N SPN
 S SPN="<span style=""font-weight:bold"
 I $G(COLOR)'="" S SPN=SPN_";color:"_COLOR
 S SPN=SPN_""" "_$G(DOP)_" >"
 Q SPN
 ;
BOLDRED(STAM) ;
 Q "<span style=""text-align:right;font-weight:bold;color:red"" dir=""LTR"">"
EBOLD(STAM) ;
 Q "</span>"
 ;
H2U(RKV) ;
 Q $$H2U^%L1FRM(RKV)
 ;
H2UG(RKV) ;
 Q "<span style=""color:grey"">"_$$H2U^%L1FRM(RKV)_"</span>"
 ;
TDLINE(STAM) ;
 Q "<td colspan=""4"">"
 ;
EMPTYLINE(STAM) ;
 Q "<tr><td>&nbsp;</td></tr>"
 ;
EMPTYTBLINE(STAM) ;
 Q "<tr><td colspan=""4"">&nbsp;</td></tr>"
 ;
STYLE(RKV,TYPE) ;
 S STYLE=" style=""text-align:right;"
 ;;I TYPE="N",RKV<0 S STYLE=STYLE_"color:red"
 S STYLE=STYLE_""""
 I TYPE="N" S STYLE=STYLE_"  dir=""LTR"" "
 Q
 ;
SPACE(STAM) ;
 Q "&nbsp;&nbsp;&nbsp;"
 ;
REPNAME(REP) ;
 I REP="B" Q "DELETINGREPORT"
 I REP="H" Q "DISCOUNTSHOW"
 I REP="0" Q "ITEM0REPORT"
 Q ""
 ;
INIT ;
 D:$G(MSD) PUT^%W1PRM("MSD",MSD)
 D ^W3CSS,^W4CSS
 D PUT^%W1PRM("REPNAME",$$REPNAME($G(%ARG("REP"))))
 Q
 ;
VHNHPNM(VHNHP) ;
 I VHNHP=0 Q "mihixtl zegpd lk bivdl"
 I VHNHP=1 Q "zereaw zegpd `ll mihixtl zegpd bivdl"
 I VHNHP=2 Q "mihixtl zeraw zegpd wx bivdl"
 I VHNHP=3 Q "( O.T.H. ) 100% mihixt zegpd wx bivdl"
 Q ""
 ;
AVAR(HZM,N) ;
 Q $$AVAR^W4HZMST(HZM,N)
 ;
HRHN(HZM) ;
 N HRHN
 S HRHN=""
 N J S J="" F  S J=$O(@$$^W4ORD@(HZM,"CB","HNH1",J))  Q:J=""  I J D
 .N A S A=$P($G(^(J)),"*",5) Q:A=""
 .S HRHN=HRHN_$$H2U(A)_";"
 S HRHN=$E(HRHN,1,$L(HRHN)-1)
 Q HRHN
 ;
SUMHN(HN) ;
 S SUMHNH=SUMHNH+HN
 S SUMHN=$G(SUMHN)+HN
 I HN'<.5 D
 .S QNHN=$G(QNHN)+1
 .S KAMHNH=KAMHNH+1
 Q
 ;
SUM ;
 N NOPC,COLSPAN
 I '$$NOCSR S ST=%CLI_$J(SUMHN,7,2)_CLS_" mekqa zeillk zegpd "_%CLI_QNHN_CLS_" k""dq" D S1
 ;
 S STW="<hr>"_$$BOLD_$$H2U(" k""dq")_$$EBOLD_" "_$$BOLDRED_QNHN_$$EBOLD
 S STW=STW_" "_$$BOLD_$$H2U(" mekqa zeillk zegpd ")_$$EBOLD
 S STW=STW_" "_$$BOLDRED_$J(SUMHN,7,2)_$$EBOLD
 ;
 S COLSPAN=7
 D S1W
 ;
 I $G(QNHNP) D
 .I '$$NOCSR S ST=" "_%LIGHT1_$J(SUMHNP,7,2)_" mekqa "_QNHNP_" : mihixtl zegpd "_CLS D S1
 .;
 .S STW=$$BOLD_$$H2U(" : mihixtl zegpd")_$$EBOLD
 .S STW=STW_" "_$$BOLDRED_QNHNP_$$EBOLD_" "_$$SPACE_$$H2U(" : mekqa ")_" "_$$BOLDRED
 .S STW=STW_$J(SUMHNP,7,2)_$$EBOLD
 .D S1W
 ;
 S STW="&nbsp:"
 D S1W
 Q
 ;
BIT(HZM) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D  Q:OK
 .I N'["-",$P($G(^(N)),"*",4)'["xar" D
 ..I $G(MLZRP),'$$USL(HZM,MLZRP,N) Q
 ..S OK=1
 I OK!$G(MLZRP) Q OK
 ;
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:OK
 .I $$QN^W4HZMST(HZM,I)<0,'$$AVAR^W4HZMST(HZM,I) S OK=1
 Q OK
 ;
PRINTCSR ;
 D ^W4MDPPC N SM S SM=0
 N N,A S N="" F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  D
 .S A=$G(^(N))
 .D ^%W1PCSR($G(PRINT),A,SM)
 ;
 N ST S ST=$C(10,10,10,10,10)_$G(%MDP("CUT"))
 D S12^%W1PCSR
 Q
 ;
NOCSR(STAM) ;
 I $D(MAIL) Q 1
 Q 0
 ;
HRP ; 
 N HRP S HRP=$P(ST00,"*",4) ;;$$HR(ST0)
 I '$$NOCSR S ST=$J(HRP,30) D S1 ; -- HEARA
 S STW=STW_"<tr>"_$$TDLINE_$$BOLD("green")_$$H2U(HRP)_$$EBOLD_"</td></tr>"
 I '$$NOCSR I HRP'?.P S ST="" D S1
 I HRP'="" D
 .S STW=STW_$$EMPTYTBLINE
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DHNHA
W4DHNHA ; [ 12.11.15 12:27 ] [ 15.05.15 11:55 ] [ 14.05.15 14:09 ]
 N (JB,%ARG,%REM) ; ---- LIFNEY QUERY !!
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 D SETGL^W4SPIDK
 ;
 K %L1PC
 S %REPN="W4DHNA"
 S %REPN("HZSCR")=HZSCR
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4DHNHA"
 D PUT^%W1PRM("HRFREP","w4reports.jsp?JB="_JB_"&FIRST=1")
 ;
 Q
 ;
 ;
TRH ;
 D TRH^W4DPHNH
 ;
 N VRM1,VH1 S VRM1=$$^W4MAIN("VRM1")
 K @VRM1
 ;
 N DT,WHO,HZM,VH,NST,SIBA,SIBA1,VH1,ST,SUM,IND
 ;
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
 .S WHO="" F  S WHO=$O(@VRM@(DT,WHO)) Q:WHO=""  D
 ..S HZM="" F  S HZM=$O(@VRM@(DT,WHO,HZM)) Q:HZM=""  D
 ...S VH="" F  S VH=$O(@VRM@(DT,WHO,HZM,VH)) Q:VH=""  D
 ....S NST="" F  S NST=$O(@VRM@(DT,WHO,HZM,VH,NST)) Q:NST=""  D
 .....S SIBA="" F  S SIBA=$O(@VRM@(DT,WHO,HZM,VH,NST,SIBA)) Q:SIBA=""  D
 ......S SIBA1="" F  S SIBA1=$O(@VRM@(DT,WHO,HZM,VH,NST,SIBA,SIBA1)) Q:SIBA1=""  D
 .......S SUM=$P($G(^(SIBA1)),"*",3)
 .......S ST=$G(@VRM1@(DT,SIBA,SIBA1,HZM))
 .......S IND=$S(VH>4:1,1:2)
 .......S $P(ST,"*",IND)=$P(ST,"*",IND)+SUM
 .......I '$P(ST,"*"),'$P(ST,"*",2) K @VRM1@(DT,SIBA,SIBA1,HZM),ST Q
 .......S @VRM1@(DT,SIBA,SIBA1,HZM)=ST
 ;
 K @VRM
 Q
 ;
 ;
PRI N I F I="DT","SIBA","SIBA1","HZM" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
SUGH ;
 Q
 ;
HZM ;
 S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 S x3=x1+x2
 Q
 ;
FNDSIB(SIBA1) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SHNH")@(N)) Q:N=""  D  Q:OK
 .I $$SPA^%L1FRM($G(^(N)))=$$SPA^%L1FRM(SIBA1) S OK=N
 Q OK
 ;
HNHSHAA(A) ;
 I $P(A,"\",8)["dry itl dgpd" Q 1
 Q 0

W4DHV
W4DHV ; [ 18.03.25 16:45 ] [ 19.01.25 14:24 ] [ 07.01.25 12:44 ] 
 N (JB,%ARG,%REM)
 I '$G(%ARG("DAT")) D ASK Q
 ;
 D ^%W1ARG
 D MEADSUGL^W4DLKM ; MEKVZ --> MESUGL,MESUGL1, ADKVZ --> ADSUGL,ADSUGL1
 I '$G(MELKH) S MELKH=1000
 I '$G(ADLKH) S ADLKH=99999999999
 D CRTMP(DAT)
 D CREX
 D DIVBUT W "<br><br>",!
 D SHOW
 S DIVDOWN=""
 D DIVBUT
 W "<br><br>",!
 D TMP K @TMP
 K @TMPEX@("GLOUT")
 Q
 ;
ASK ;
 W "<div id=""divask"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""50%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td dir=""LTR"">"
    D
    .N D,MM
    .S MM=$$MM^%L1DC($H)
    .F D=+$H:-1:1 Q:MM'=$$MM^%L1DC(D)
    .S DAY=$$^%L1DC(D,1)
    S %W1DAT("NODAY")=""
    D ^%W1DAT("DAT",DAY,"<b>&nbsp;"_$$^%W1DICT("SHOWREPORTTODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""10%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
CRTMP(DAT) ;
 D ^%W1ARG
 N LKH,TMP,STRING,ITRA,LK,W4HSB
 D LKH,TMP
 S DT=$$^%L1DC(DAT,3)
 K @TMP
 ;
 S STRING="" F  S STRING=$O(@LKH@(STRING)) Q:STRING=""  D
 .I MELKH,$TR(STRING,"-","")<$TR(MELKH,"-","") Q
 .I ADLKH,$TR(STRING,"-","")>$TR(ADLKH,"-","") Q
 .I MESUGL,$$SUGL^W4L(STRING)<MESUGL Q
 .I ADSUGL,$$SUGL^W4L(STRING)>ADSUGL Q
 .S ITRA=$$CBH^W4KLOST(STRING,DT,2) Q:ITRA<1  ; -- 2 - KOLEL TZ
 .
 .S IND=$$IND(STRING)
 .
 .S @TMP@(IND)=STRING
 .S @TMP@(IND,"ITRA")=ITRA
 ;
 S KLIN=$$^W4GL("KLIN")
 ;
 N N S N="" F  S N=$O(@KLIN@("H",N)) Q:N=""  D
 .S LK=$G(^(N))
 .S LK=$$^W4CLRLK(LK)
 .I LK["-" S LK=$TR(LK,"-","")
 .Q:LK=""
 .S IND=$$IND(LK)
 .I '$D(@TMP@(IND)) Q
 .I $P(@TMP@(IND,"ITRA"),";",3) Q
 .D ^W4HSBGET(N,"H",LK)
 .I $$^%L1DC(W4HSB("TODATE"),3)>$$^%L1DC(%ARG("DAT"),3) Q
 .I $G(W4HSB("TOT"))-$G(W4HSB("PAID"))<1 Q
 .S $P(@TMP@(IND,"ITRA"),";",2)=$G(W4HSB("TODATE"))
 .S $P(@TMP@(IND,"ITRA"),";",3)=N
 Q
 ;
 ;
CREX ;
 N I,HD,N,LNG,STRING,ITRA,OPENINVDATE,OPENINV,ST
 D TMP
 S TMPEX=$$^%W1GLPRM K @TMPEX@("GLOUT")
 S I=1,LNG=$$^%W1LNG
 S HD=$$TV^%W1DICT(LNG,"CUSTOMNUMBER")
 S HD=HD_"*"_$$TV^%W1DICT(LNG,"CUSTOMNAME")
 S HD=HD_"*"_$$TV^%W1DICT(LNG,"CITY")
 S HD=HD_"*"_$$TV^%W1DICT(LNG,"ADDRESS")
 S HD=HD_"*"_$$TV^%W1DICT(LNG,"TEL")
 S HD=HD_"*"_$$TV^%W1DICT(LNG,"FIRSTOPENINVCNMB")
 S HD=HD_"*"_$$TV^%W1DICT(LNG,"FIRSTOPENINVCDATE")
 S HD=HD_"*"_$$TV^%W1DICT(LNG,"ITRA")
 ;;S HD=$$INVD^%L1FRM(HD,"*","*")
 ;
 S @TMPEX@("GLOUT",1)=HD
 ;
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S STRING=$$IND2STRING(N)
 .S ITRA=$G(^(N,"ITRA"))
 .S OPENINVDATE=$P(ITRA,";",2)
 .S OPENINV=$P(ITRA,";",3)
 .S ITRA=$J(+ITRA,2,2)
 .S ST=STRING
 .S ST=ST_"*"_$$LKH^W4L(STRING)
 .S ST=ST_"*"_$$CITY^W4L(STRING)
 .S ST=ST_"*"_$$KTV2^W4L(STRING)
 .S ST=ST_"*"_$$TEL^W4L(STRING)
 .S ST=ST_"*"_OPENINV
 .S ST=ST_"*"_$G(OPENINVDATE)
 .S ST=ST_"*"_ITRA
 .S I=I+1
 .S @TMPEX@("GLOUT",I)=ST
 Q
 ;
 ;
SHOW ;
 W "<div align=""center"">",!
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 D DIVEXC^%W1PC1("W4DHV","%W1PCEX")
 D HEAD
 D HEADTBL
 N N D TMP S SITRA=0
 S IL=0,PG=1,RSIZE=22,SHLN=3,SSHLN=0
 ;
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S ITRA=$G(^(N,"ITRA"))
 .S SHLN=SHLN+1,SSHLN=SSHLN+1
 .I SHLN>RSIZE D PAGEBREAK
 .N LK S LK=$G(@TMP@(N)) S:LK="" LK=N
 .D SHOWLINE(LK,ITRA)
 .S SITRA=SITRA+ITRA
 ;
 D FOOT
 ;
 W "</div>",!
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')"
 .W "</script>",!
 Q
 ;
 ;
HEAD ;
 W "<div style=""text-align:center;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""" >",!
  W $$^%W1DICT("DEBTREPORTTODATE",DAT)
 W "</div>",!
 W "<div align=""center"">",!
  W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""" width=""60%"">"
   D MEADL^W4DLKP
  W "</table>",!
  W "<br />",!
 W "</div>",!
 Q
 ;
HEADTBL ;
 W "<table id=""TblHv"" width=""100%"" style=""font-size:"_$$^W3FSZ(10)_""" "
 W "dir="""_$$^%W1DIR_""" class=""rep"" border=""0"" cellspacing=""0"">",!
 W "<tr>"
 W " <th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>",!
 W " <th>"_$$^%W1DICT("CUSTOMNAME")_"</th>",!
 W " <th>"_$$^%W1DICT("CITY")_"</th>",!
 W " <th>"_$$^%W1DICT("ADDRESS")_"</th>",!
 W " <th>"_$$^%W1DICT("TEL")_"</th>",!
 ;;W " <th>"_$$^%W1DICT("LASTPAYMSUM")_"</th>",!
 W " <th>"_$$^%W1DICT("FIRSTOPENINVCNMB")_"</th>",!
 W " <th>"_$$^%W1DICT("FIRSTOPENINVCDATE")_"</th>",!
 W " <th>"_$$^%W1DICT("BALANCE")_"</th>",!
 I $$CORR^W4PRM D
 .W " <th>"_$$^%W1DICT("CORRESPONDENCE")_"</th>",!
 W "</tr>",!
 Q
 ;
SHOWLINE(STRING,ITRA) ;
 S STRING=$$IND2STRING(STRING)
 W "<tr style=""cursor:pointer"" "
 W " id=""tr"_STRING_""" "
 W " onMouseOver=""ChangeColor(this)"" "
 W " onMouseOut=""RestColor(this)"" "
 W " >"
 S OPENINVDATE=$P(ITRA,";",2)
 S OPENINV=$P(ITRA,";",3)
 S ITRA=+ITRA
 D TD
 W "> "_STRING_"</td>",!
 D TD W " > "_$$RKVH($$LKH^W4L(STRING))_" </td>",!
 D TD W " > "_$$RKVH($$CITY^W4L(STRING))_" </td>",!
 D TD W " > "_$$RKVH($$KTV2^W4L(STRING))_" </td>",!
 D TD W " > "_$$RKVH($$TEL^W4L(STRING))_" </td>",!
 ;
 ;
 D TD W " dir=""LTR"" align=""center"" >"
  W "&nbsp;"_OPENINV_"&nbsp;"
 W "</td>",!
 ;
 D TD W " align=""center"" id=""fd"_STRING_"""> "_$G(OPENINVDATE)_" </td>",!
 D RKV(ITRA)
 ;
 I $$CORR^W4PRM D
 .W "<td align=""center"" >"
  .N CLRBUT S CLRBUT="green"
  .I $D(@$$^W4GL("W4CORHB")@(STRING,+OPENINV))>9 S CLRBUT="red"
  .D ^W4BUTTON("corr",$$^%W1DICT("CORRESPONDENCE"),"ShowCorr('"_+OPENINV_"')","color:"_CLRBUT)
 .W "</td>" 
 W "</tr>",!
 Q
 ;
 ;
TD ;
 W "<td onClick=""OnClickTr('"_STRING_"')"" "
 Q
 ;
FOOT ;
 D STSUM
 W "</table>",!
 Q
 ;
STSUM ;
 W "<tr style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(11)_""">"
 W " <td>"_$$^%W1DICT("TOTAL")_"</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 D RKV(SITRA,"balack",1)
 W "</tr>",!
 Q
 ;
LKH N GL D GL^W4L
 S LKH=GL
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
IND2STRING(STRING)
 I $L(STRING)>20 S STRING=$E(STRING,$L(STRING)-11,$L(STRING))
 Q STRING
 ;
RKV(VL,COLOR,IT) ;
 D RKV^W4DLKM($G(VL),$G(COLOR),$G(IT))
 Q
 ;
RKVH(VL) ;
 I $G(VL)="" Q "&nbsp;"
 Q $$H2U^%L1FRM(VL)
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D HEADTBL
 S SHLN=0,RSIZE=24
 Q
 ;
DIVBUT ;
 D DIVBUT^W4DLKM(1)
 Q
 ;
MEDAT(DAT) ;
 N DD,MM,YY
 I $G(DAT)="" Q ""
 S DAT=$TR(DAT,"./","")
 S DD=$E(DAT,1,2)
 S MM=$E(DAT,3,4)
 S YY=$E(DAT,5,6)
 I DD<28 Q "01."_$S(MM>1:$TR($J(MM-1,2)," ",0),1:12)_"."_$S(MM>1:YY,1:$TR($J(YY-1,2)," ",0))
 ;;Q "01."_MM_"."_YY
 Q "01.01."_$S(MM>3:YY,1:$TR($J(YY-1,2)," ",0))
 ;
DAT0 ;
  N D,MM
  S MM=$$MM^%L1DC($H)
  F D=+$H:-1:1 Q:MM'=$$MM^%L1DC(D)
  S DAT=$$^%L1DC(D,1)
 Q
 ;
IND(STRING)
 N IND
 S IND=STRING
 I $G(%ARG("SORT")) S IND=$$^W4ABCIND(STRING,$$LKH^W4L(STRING))
 Q IND
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DHZMSL
W4DHZMSL ; DOCH HAZMANOT LE POWERLINK [ 26.12.23 03:42 ] [ 21.12.23 19:33 ] [ 19.12.23 03:58 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 ;
 S @$$^W4GL("W4PWRSTA")@(1)="xign zrvd"
 S @$$^W4GL("W4PWRSTA")@(2)="dxye` dpnfd"
 S @$$^W4GL("W4PWRSTA")@(3)="dnley dpnfd"
 S @$$^W4GL("W4PWRSTA")@(4)="xeyi` ixg` lhea"
 S @$$^W4GL("W4PWRSTA")@(5)="xeyi` iptl lhea"
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")="W4DHZMSL"
 ;
 S TMPIR=$$^W4MAIN("TMPIR") K @TMPIR
 N IRS S IRS="" F  S IRS=$O(@$$^W4GL("P1IR")@(IRS)) Q:IRS=""  D
 .N IR1 S IR1=$G(^(IRS))
 .I $L(IR1) D
 ..S @TMPIR@(IR1)=IRS
 ..I IR1="dewz gzt" S IR1="deewz gzt" S @TMPIR@(IR1)=IRS
 Q
 ;
 ;
TRH ;
 I DATH<METRH!(DATH>ADTRH) S OK=0 Q
 I DATH>64000,DATH<80000 D
 .S TRH=$ZD(DATH,"DD.MM.YY")
 Q
 ;
HZM ;
 S PRMSD=0,PRMSL=0
 ;
 ;;I $$^W4HZMH(HZM) S OK=0 Q
 I $$I^W4PIZUL(HZM) S OK=0 Q
 ;;I $$DEL^W4DEL(HZM) S OK=0 Q
 ;
 S PRMSL=1
 ;
 S TMPIR=$$^W4MAIN("TMPIR")
 S %SCRN="P1HZ"
 ;
 D GA^W4SCREF(%SCRN,$$^W4ORD_"(HZM)")
 S MKR=$$MKRDLV^W4HZMST(HZM)
 ;
 S IR=$$IR^W4HZMST(HZM)
 S IR=$$RPL^%L1FRM(IR,"HD_","")
 ;
 S OK=1
 ;;D  Q:OK'=1  ; -- MISHLOHIM
 .S SHAA=$P($P(SHAA,":",1,2)," ")
 .I $$GET^%W1PRM("NOSHOWDELZIC"),$$DEL^W4DEL(HZM)!($$TSHL^W4HZMST(HZM)<0) S OK=0
 ;
 S DATCB=$P(ZMANK," ")
 N DTCB S DTCB=$$^%L1DC(DATCB,3)
 I DTCB<MEDATCB S OK=0 Q
 I DTCB>(ADDATCB+1) S OK=0 Q
 I DTCB=(ADDATCB+1),SHAA'<$$SHAAZ^W4PRM!'$$^W4SHAAZ S OK=0 Q
 I DTCB=MEDATCB,SHAA<$$SHAAZ^W4PRM S OK=0 Q
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 ;;I REPDAYS,'$E(REPDAYS,$$^%L1DC(DTCB,8)) S OK=0 Q
 ;
 I $$^W4ISCDLK(LKHN) S NMB=LKHN
 N NMB1 S NMB1=$TR(NMB,"-","")
 D D(.5)
 I NMB1<$TR(MENMB,"-","")!(NMB1>$TR(ADNMB,"-","")) S OK=0 Q
 ;
 S IR=$$SPA^%L1FRM($G(IR))
 I $$^W4MSL(NMB),IR="" S IR="TAKEAWAY"
 I IR="eti aia` lz" S IR="aia` lz"
 I IR["milyexi" S IR="milyexi"
 ;
 I $$^W4MSL(NMB),$G(MEIR)=0,ADIR=0,'$$TAKEAWAY(IR) S OK=0 Q
 I $G(MEIR)=1,$G(ADIR),ADIR=$O(@$$^W4GL("P1IR")@(999999),-1),'$$TAKEAWAY(IR) G VIBMKBL
 I '$G(MEIR),$G(ADIR),ADIR=$O(@$$^W4GL("P1IR")@(999999),-1)!(ADIR>99999) G VIBMKBL
 I $G(MEIR)?1N.N,$G(ADIR)?1N.N,$L(IR),$G(@TMPIR@(IR))<MEIR!($G(@TMPIR@(IR))>ADIR) S OK=0 Q
 ;
VIBMKBL ;
 D D(2)
 I $G(MEMKBL),$G(ADMKBL),MKBL<MEMKBL!(MKBL>ADMKBL) S OK=0 Q
 I $G(MEMKR),$G(ADMKR),MKR<MEMKR!(MKR>ADMKR) S OK=0 Q
 ;
 I ADSHAA>24,ADSHAA<40,$$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM,$$^%L1DC($P(ZMANK,"  "),3)=METRH S OK=0 Q
 I MESHAA[":"!(ADSHAA[":"),MESHAA<40,ADSHAA<40 S OK=$$VIBTIME^%W1PCP(MESHAA,ADSHAA,SHAA) Q:'OK
 I MESHAA'[":",ADSHAA'[":" D
 .S SHAA1=$S($$^W4SHAAZ&(SHAA<$$SHAAZ^W4PRM)&(ADSHAA>24):SHAA+24,1:SHAA)
 .I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 D D(3)
 ;
 D STAT(HZM)
 ;
 S TRHIS=$P($G(@$$^W4ORD@(HZM,"ISHUR")),"\")
 ;
 N TIMESHM
 S TIMESHM=$$TIMESHM(HZM)
 S TRHSHM=$P(TIMESHM," ")
 S SHAASHM=$P(TIMESHM," ",2)
 ;
 N STS,I
 S QUERY=$G(QUERY)
 ;
 ;
 D D(7)
 N TS
 S TS=TSHL
 ;
 N KTV,BAIT,DIRA
 S BAIT=$$BAIT^W4HZMST(HZM),DIRA=$$DIRA^W4HZMST(HZM)
 I BAIT,DIRA S BAIT=BAIT_"/"_DIRA
 S KTV=$$KTV^W4HZMST(HZM)
 S EMAIL=$$EMAIL^W4HZMST(HZM)
 I EMAIL="",$G(NMB1) S EMAIL=$$EMAIL^W4L(NMB1)
 ;
 S x1=KTV
 S x2=BAIT
 S x3=EMAIL
 S x4=$J($$TSHL^W4HZMST(HZM),2,2)
 Q
 ;
 ;
PRM ;
 S MENMB=$G(%ARG("MENMB"))
 S ADNMB=$G(%ARG("ADNMB")) I 'ADNMB S ADNMB=999
 S MESUGS=$G(%ARG("MESUGS"))
 S ADSUGS=$G(%ARG("ADSUGS")) I 'ADSUGS S ADSUGS=99999
 S MEPSL=$G(%ARG("MEPSL"))
 S ADPSL=$G(%ARG("ADPSL")) I 'ADPSL S ADPSL=9999
 S MEMKBL=$G(%ARG("MEMKBL"))
 S ADMKBL=$G(%ARG("ADMKBL")) I 'ADMKBL S ADMKBL=99999
 S MEMKR=$G(%ARG("MEMKR"))
 S ADMKR=$G(%ARG("ADMKR")) I 'ADMKR S ADMKR=99999
 S MESHAA=$G(%ARG("MESHAA"))
 S ADSHAA=$G(%ARG("ADSHAA"))
 I 'ADSHAA S ADSHAA=99
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 S MESUGT=$G(%ARG("MESUGT"))
 S ADSUGT=$G(%ARG("ADSUGT")) I 'ADSUGT S ADSUGT=99
 Q
 ;
TAKEAWAY(IR) ;
 I $TR(IR," .","")'="TAKEAWAY",$TR(IR," .","")'="TAW" Q 0
 Q 1
 ;
D(NOM) ; 
 ;;S ^D(HZM)=NOM 
 Q 
 ;
QN(HZM,TSHL) ; 
 N HZMI S HZMI=$$I^W4DEL(HZM)
 I HZMI,HZMI'=HZM Q -1
 I HZMI,HZMI=HZM Q 0 
 I 'HZMI,TSHL<-.9 Q 0
 I $$^W4PIZUL(HZM) Q 2
 Q 1 
 ;
TIMESHM(HZM) ;
 N A,TIMEMAX,MAIL,TIME
 S TIMEMAX=0
 N GL S GL=$$^W4ORD
 S MAIL="" F  S MAIL=$O(@GL@(HZM,"SENT2MAIL",MAIL)) Q:MAIL=""  D
 .S TIME="" F  S TIME=$O(@GL@(HZM,"SENT2MAIL",MAIL,"FILE",TIME)) Q:TIME=""  D
 ..S A=$G(^(TIME)) Q:A'["VDHZMHNOM"
 ..I TIME>TIMEMAX S TIMEMAX=TIME
 ;
 I 'TIMEMAX Q " "
 N DT,SEC
 S DT=$E(TIMEMAX,1,5)
 S SEC=$E(TIMEMAX,6,10) 
 Q $ZD(DT,"DD.MM.YY")_" "_$$T^%L1TIME(SEC)
 ;
 ;
STAT(HZM) ; 
 S STAT=0,STAT1=""
 D
 .I $$TSHL^W4HZMST(HZM)<0 S STAT=4,STAT1="xeyi` ixg` lhea" Q
 .I '$$TSHL^W4HZMST(HZM),$$^W4DEL(HZM)=HZM S STAT=5,STAT1="xeyi` iptl lhea" Q
 .I $$^W4HZMH(HZM) S STAT=1,STAT1="xign zrvd" Q
 .I $$ITRA^W4HZMST(HZM) S STAT=2,STAT1="dxye` dpnfd" Q
 .S STAT=3,STAT1="dnley dpnfd" Q
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DICTBL
W4DICTBL(STAM) ; [ 25.02.10 20:33 ] [
 I $$POS^W4MTAW Q $$^%W1DICT("CSR")
 Q $$^%W1DICT("SHULHAN")
PC(STAM) ;
 I $$POS^W4MTAW Q " dtew"
 Q " ogley"

W4DICTHS
W4DICTHS(SHULH) ; [ 15.01.16 16:17 ] [ 10.03.10 18:04 ] [ 26.02.10 17:37 ] [
 I $$^W4DLVCSR!$$^W4MSL(SHULH) Q $$^%W1DICT("CUSTOMHISTORY",SHULH)
 I '$$POS^W4MTAW Q $$^%W1DICT("TABLEHISTORY",SHULH)
 Q $$^%W1DICT("CSRHISTORY",SHULH)
 

W4DITEMS
W4DITEMS ; [ 28.08.22 10:11 ] [ 02.02.17 23:20 ] [ 31.10.16 19:07 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 S %ARG("MEDAT")=$G(%ARG("DAT1"))
 S %ARG("ADDAT")=$G(%ARG("DAT2"))
 D TV^W4DP1
 K @$$^W4MAIN("TMPREP")
 M @$$^W4MAIN("TMPREP")@("G")=@$$^W4MAIN("TEMP")
 K @$$^W4MAIN("TEMP")
 S %SCRN=$$SCRN^W4DP1
 ;
 D PCPRM^W4DMANY(%SCRN)
 Q
 
 
 
 
 
 

W4DIVBUT
W4DIVBUT(PRM,CLASS) ; [ 18.12.25 17:05 ] [ 30.03.17 09:56 ] [ 29.03.17 11:14 ] 
  I $G(PRM)="" S PRM="SPB"
  ;
  W "<div dir="""_$$^%W1DIR_""" id=""divbut"" align=""center"" >",!
   W "<table>",!
   W "<tr>",!
   ;
   I PRM["S" D
   .W "  <td>"
   . D BUT("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",$G(CLASS))
   .W "  </td>"
   .W "<td>&nbsp;</td>"
   ;
   I $G(PRM)["P" D
   .W "  <td>"
   . D BUT("print",$$^%W1DICT("PRINT"),"Print()","color:blue",$G(CLASS))
   .W "  </td>",!
   .W "<td>&nbsp;</td>"
   ;
   I PRM["B" D
   .W "  <td>"
   . D BUT("backid",$$^%W1DICT("BACK"),"Back()","color:red",$G(CLASS))
   .W "  </td>",!
  ;
  W "</tr>",!
  W "</table>",!
  W "</div>",!
 Q
 ;
 ;
BTN(CLASS) ;
 W " <table dir="""_$$^%W1DIR_""" >",!
 W "  <tr>"
 W "   <td>"
    D SBM($G(CLASS))
 W "   </td>"
 W "   <td>&nbsp;</td>",!
 W "   <td>"
    D BACK($G(CLASS))
 W "   </td>"
 W "  </tr>",!
 W " </table>",!
 Q
 ;
 ;
SBM(CLASS) ;
 W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" "
 I $G(CLASS)'="" W " class="""_CLASS_""" "
 W $$^W4TOUCH_"=""Submit()"" style=""color:green"" />",!
 Q
 ;
BACK(CLASS) ;
 W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
 I $G(CLASS)'="" W " class="""_CLASS_""" "
 W $$^W4TOUCH_"=""Back()"" style=""color:red"" />",!
 Q
 ;
BUT(ID,VL,PROC,STYLE,CLASS,DOP)
 I $G(DOP)="" S DOP="wh,22"
 D ROUNDBUT^%W1JS(ID,VL,PROC,$G(STYLE),DOP)
 Q
 
 
 
 
 
 
 
 
 

W4DKC
W4DKC(MEDAT,ADDAT) ; DOCH HAZMANOT;   [ 23.04.25 14:13 ] [ 21.02.22 07:36 ] [ 03.09.20 07:40 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,%REPN)
 D ^W4IN,^%W1PCVRM K @VRM
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 ;
 F DT=D1:1:D2 D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","CH")) D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","CH",N)) Q:N=""  D
 ...N A S A=$G(^(N))
 ...I '$$KC^W4KC(A) Q
 ...D ^W4GTVCH(A,"CH")
 ...S SH=$O(@VRM@(DT,HZ,999),-1)+1
 ...S @VRM@(DT,HZ,SH)=$ZD(TIME,"DD.MM.YY 24:60")_"*"_$J(CHS,2,2) 
 ;
 S %REPN="W4DKC"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("METRH")=D1,%REPN("ADTRH")=D2
 S %REPN("METRH","VIEW")=1,%REPN("ADTRH","VIEW")=1
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 D PUT^%W1PRM("HRFREP","w4dkc.jsp?JB="_JB)
END Q
 ;
HZ ;
 S x1=$P($G(@GLOB),"*")
 S x2=$J($P($G(@GLOB),"*",2),2,2)
 Q
 
 
 
 
 
 
 
 
 
 

W4DLK
W4DLK(DT1,DT2,DISP) ;-- DOCH LAKOHOT [ 18.06.20 10:46 ] [ 16.06.20 10:03 ] [ 
 N (JB,%REM,%ARG,DT1,DT2,DISP,NOBACKBUT)
 I $G(DISP)="" S DISP=1
 K @$$^W4MAIN("TMPS111")
 D ^W4IN,^W4MDPPC,^%L1TS
 ;
 I $TR(DT1,"./","")?6N S DAT1=DT1,DT1=$$^%L1DC(DT1,3)
 I $TR(DT2,"./","")?6N S DAT2=DT2,DT2=$$^%L1DC(DT2,3)
 I $P(DT1,",")?5N S DAT1=$ZD(DT1,"DD.MM.YY")
 I $P(DT2,",")?5N S DAT2=$ZD(DT2,"DD.MM.YY")
 ;
 S SM=1
 S TXT="" D S1 S TXT="" D S1
 I DAT1=DAT2 S P1TOT=DAT1_" jix`zl zegewl g""ec"
 I DAT1'=DAT2 S P1TOT=DAT1_" - "_DAT2_" dtewza zegewl g""ec"
 S TXTL=$L(P1TOT)
 S TXT=$J("",3)_P1TOT D S1
 S TXT=$J("",3)_$TR($J("",TXTL)," ","-") D S1
 D ASR(DT1,DT2) ;
 I $G(DISP) D VIEW^W4TELREP
 Q
 ;
 ;
ASR(DT1,DT2) ;
 N (JB,%REM,%ARG,DT1,DT2,DISP)
 S TMPL=$$^W4MAIN("TMPL") K @TMPL
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","ASR")) D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  I N D
 ...S A=$G(^(N))
 ...S LK=$P(A,"*"),SUM=$P(A,"*",4)
 ...S LKR=LK
 ...I $G(@$$^W4GL("P1EZL")@(LK)) S LKR=^(LK)
 ...S @TMPL@(LKR)=$G(@TMPL@(LKR))+SUM
 ;
 N LKH,SUMC,TXT S LKH=""
 N SSUM S SSUM=0
 F  S LKH=$O(@TMPL@(LKH)) Q:LKH=""  S SUMC=$G(^(LKH)) D
 .N LKH1
 .I $$HB S LKH1=$$HBR^%L1FRM($G(@$$^W4GL("LKH")@(LKH)),16)
 .I '$$HB S LKH1=$$ENG^%L1FRM($G(@$$^W4GL("LKH")@(LKH)),16)
 .S SSUM=SSUM+SUMC
 .I $$HB S TXT=$J(SUMC,8,2)_" : "_LKH1_$J(LKH,11) D S1
 .I '$$HB S TXT=$J(LKH,11)_LKH1_" : "_$J(SUMC,8,2) D S1
 .
 ;
 S TXT=$TR($J("",35)," ","-") D S1
 ;
 I $$HB S TXT=$J(SSUM,8,2)_$J("k""dq",27) D S1
 I '$$HB S TXT="TOTAL :"_$J($J(SSUM,8,2),27) D S1
 ;
 K @TMPL
 Q
 ;
 ;
S1 D ^W4PCST(TXT,DISP)
 Q
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLKHZ
W4DLKHZ ; [ 18.01.18 09:06 ] [ 
 N (JB,%ARG,%REM)
 S DT1=$$^%L1DC("MEDAT",3)
 S DT2=$$^%L1DC("ADDAT",3)
 S BYDAT=$G(%ARG("BYDAT"))
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 I BYDAT="ORD" D
 .S N="" F  S N=$O(@$$^W4GL("W4LINK")@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S DTHZ=$P(A,"~",6)
 ..I DTHZ<DT1!(DTHZ>DT2) Q
 ..D SETVRM(N)
 ;
 I BYDAT="SEND" D
 .S DT="" F  S DT=$O(@$$^W4GL("W4LINKD")@(DT)) Q:DT=""  D
 ..S N="" F  S N=$O(@$$^W4GL("W4LINKD")@(DT,N)) Q:N=""  D
 ...S DTHZ=DT
 ...I DTHZ<DT1!(DTHZ>DT2) Q
 ...D SETVRM(N)
 ;
 Q
 ;
SETVRM(N) ;
 N NMB,SUM,B
 S NMB=$$NMB^W4HZMST(N) Q:'$$HZM^W4MSL(N)
 S SUM=$$TSHL^W4HZMST(N)
 S B=$G(@VRM@(NMB))
 S B=B+1_"\"_($P(B,"\",2)+SUM)
 S @VRM@(NMB)=B
 S @VRM@(NMB,N)=SUM
 Q

W4DLKM
W4DLKM ; [ 17.09.18 07:12 ] [ 24.04.18 13:36 ] [ 20.02.18 06:48 ] 
 ;--- INPUT - DAT1,DAT2
 ;
 ;           ASONLY = 1 (KOLEL HAZMANOT , 2 -HESB & LAK BILVAD )
 ;           PRATI - ONE CUSTOMER ONLY
 N (JB,%ARG,%REM)
 ;
 D ^%W1ARG
 D MEADSUGL
 ;
 I $G(ADLKH)="" S ADLKH=9999999999
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 ;
 ;;S ASONLY=3-$G(%ARG("ASONLY"))
 S ASONLY=$G(%ARG("ASONLY"))
 ;
 D DIVBUT(1)
 ;
 D FRM^W4DLKP(JB,MEDAT,ADDAT,$G(MELKH),$G(ADLKH),$G(MESUGL),$G(ADSUGL),ASONLY)
 ;;S ASONLY=3-$G(%ARG("ASONLY"))
 D RIKUZ
 D PC
 S DIVDOWN=""
 D DIVBUT(2)
 W "<br><br>",!
 K @VRM
 Q
 ;
RIKUZ ;
 D ^%W1PCVRM
 D VRM1 K @VRM1
 ;
 N LKH,DAT,SUGTD,NOMTD,NP,SUG,SUMTD
 S LKH="" F IL=1:1 S LKH=$O(@VRM@(LKH)) Q:LKH=""  D
 .S DAT="" F  S DAT=$O(@VRM@(LKH,DAT)) Q:DAT=""  D
 ..S SUGTD="" F  S SUGTD=$O(@VRM@(LKH,DAT,SUGTD)) Q:SUGTD=""  D
 ...S NOMTD="" F  S NOMTD=$O(@VRM@(LKH,DAT,SUGTD,NOMTD)) Q:NOMTD=""  D
 ....S NP="" F  S NP=$O(@VRM@(LKH,DAT,SUGTD,NOMTD,NP)) Q:NP=""  D
 .....N A S A=$G(^(NP))
 .....S SUG="?"
 .....S SUMTD=$P(A,"\")
 .....S SUMHV=$P(A,"\",2)
 .....I SUGTD=0 S SUG=0
 .....I SUGTD=1,$$CBHB Q
 .....I SUGTD=1,$$GAMHZ S SUMTD=SUMHV,SUG=1
 .....I SUGTD=2 S SUG=1
 .....I SUGTD=3 S SUG=4
 .....I SUGTD=4 S SUG=2
 .....I SUGTD=5 S SUG=2
 .....I SUGTD=6 S SUG=3
 .....I SUGTD=7 S SUG=3
 .....S IND=LKH
 .....I $$SORT S IND=$$^W4ABCIND(LKH,$$LKH^W4L(LKH))
 .....S @VRM1@(IND)=LKH
 .....S @VRM1@(IND,SUG)=$G(@VRM1@(IND,SUG))+SUMTD
 ;
 D FRMTMPREP
 Q ;
 ;
 ;
PC ;
 W "<div align=""center"">",!
 D PCPRM^W4DMANY("W4DLKMR")
 ;
 D DIVEXC^%W1PC1("W4DLKMR","%W1FREPX")
 ;
 S IL=0,PG=1,RSIZE=23,SHLN=3,SSHLN=0
 S (SITRA0,SSKUP,SSHSBY,SSCB,SSTZ)=0
 D KOT
 ;
 S IND="" F  S IND=$O(@VRM1@(IND)) Q:IND=""  D
 .S LKH=$G(^(IND))
 .N ITRA0,SKUP,SHSBY,SCB,ITRA
 .S ITRA0=$G(@VRM1@(IND,0))
 .S SITRA0=SITRA0+ITRA0
 .S SKUP=$G(@VRM1@(IND,1))
 .S SSKUP=SSKUP+SKUP
 .S SHSBY=$G(@VRM1@(IND,2))
 .S SSHSBY=SSHSBY+SHSBY
 .S STZ=$G(@VRM1@(IND,3))
 .S SSTZ=SSTZ+STZ
 .S SCB=$G(@VRM1@(IND,4))
 .S SSCB=SSCB+SCB
 .S ITRA=ITRA0+SKUP+SHSBY-STZ-SCB
 .I $G(%ARG("LKITRA")),'ITRA Q
 .
 .S SHLN=SHLN+1,SSHLN=SSHLN+1
 .I SHLN>RSIZE D PAGEBREAK
 .W "<tr style=""cursor:pointer"" onClick=""OnClickTr('"_LKH_"')"" >"
 .W " <td "
 .I LKH=$$GET^%W1PRM("DLKMCUR") W " style=""border:solid 2px brown"" "
 .W ">&nbsp;"_LKH_"&nbsp;</td>"
 .W " <td>&nbsp;"_$$H2U^%L1FRM($$LKH^W4L(LKH))_"&nbsp;</td>"
 .
 . D RKV(ITRA0)
 . D RKV(SKUP,"darkblue")
 . D RKV(SHSBY,"darkblue")
 . D RKV(STZ,"red")
 . D RKV(SCB,"darkgreen")
 . D RKV(ITRA)
 .
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">",!
 W " <td>"_$$^%W1DICT("TOTAL")_"</td>",!
 W " <td>&nbsp;</td>",!
  D RKV(SITRA0,"darkblue",1)
  D RKV(SSKUP,"darkblue",1)
  D RKV(SSHSBY,"darkblue",1)
  D RKV(SSTZ,"red",1)
  D RKV(SSCB,"green",1)
  S SITRA=SITRA0+SSKUP+SSHSBY-SSTZ-SSCB
 D RKV(SITRA,"darkblue",1)
 W "</tr>",!
 W "</table>",!
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')"
 .W "</script>",!
 ;
 W "</div>",!
 ;
 Q
 ;
GAMHZ(STAM)
 I $G(ASONLY)=1 Q 1
 Q 0
 ;
CBHB(STAM)
 I $G(ASONLY)=2 Q 1
 Q 0
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT
 S SHLN=0
 Q
 ;
KOT ;
 ;;W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT("CUSTOMSCONCREPORT")_"</span><br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" "
  W " style=""font-size:"_$$^W3FSZ(12)_";color:black"" "
 W ">"
 ;
 W " <tr>"
 W "  <td>"_$$^%W1DICT("MESUGL")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MESUGL_" "_MESUGL1_"</td>",!
 W "  <td>"_$$^%W1DICT("ADSUGL")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADSUGL_" "_ADSUGL1_"</td>",!
 W "  <td>"_$$^%W1DICT("PAGE")_" : <span "_$$HDSTYLE_">"_PG_"</span></td>",!
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td>"_$$^%W1DICT("MELKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(MELKH)_"</td>",!
 W "  <td>"_$$^%W1DICT("ADLKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(ADLKH)_"</td>",!
 W "  <td>&nbsp;</td>",!
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td>"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(MEDAT)_"</td>",!
 W "  <td>"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(ADDAT)_"</td>",!
 W "  <td>&nbsp;</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 I $$GAMHZ W "<span>"_$$^%W1DICT("ALLDOCUMENTS")_"</span>",!
 I $$CBHB W "<span>"_$$^%W1DICT("INVOICESANDRECEIPTS")_"</span>",!
 ;
 W "<br />",!
 ;
 W "<table id=""TblCust"" dir="""_$$^%W1DIR_""" class=""rep"" border=""0"" width=""80%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
 W "  <th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("ITRA0")_"</th>"
 I '$$^W4LKH D
 .W "  <th>"_$$^%W1DICT($S(ASONLY=1:"INVCORDSUM",1:"INVOICES"))_"</th>"
 .W "  <th>"_$$^%W1DICT("ARMINVOICESUM")_"</th>"
 I $$^W4LKH D
 .W "  <th>"_$$^%W1DICT("AUTOINVOICES")_"</th>"
 .W "  <th>"_$$^%W1DICT("OTHERINVOICES")_"</th>"
 W "  <th>"_$$^%W1DICT("DEBINVOICES")_"</th>"
 W "  <th>"_$$^%W1DICT("PAYMENTS")_"</th>"
 W "  <th>"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 Q
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 I RKV S RKV=$$ZPTN^%L1FRM(RKV)
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT(I) ;
 I '$G(I) S I=1
 W "<div id=""divbut"_I_""" dir="""_$$^%W1DIR_""" align=""center"">"
 W "<br />",!
 W "<table width=""50%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    I '$D(DIVDOWN) D
    .W $$^%W1DICT("ABCSORT")_"&nbsp;"
    .W " <input type=""checkbox"" id=""Sort"" "
    .  I $$SORT W " checked=""checked"" "
    .  W " onClick=""Sort()"" "
    .W " >"
    ;
    I $D(DIVDOWN) W "&nbsp;"
   W "</td>",!
   ;
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   ;
   W "<td>&nbsp;</td>"
   ;
   I $$LPTMDB^W3HZGLK D
   .W "<td>"
   . D ROUNDBUT^%W1JS("Mdb",$$^%W1DICT("MDBPC"),"Mdb()","color:blue",",,,100")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   ; 
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
MEADSUGL ;
 S MESUGL=$G(%ARG("MEKVZ"))
 S MESUGL1="" I MESUGL D
 .S MESUGL1=$G(@$$^W4GL("SUGL")@(MESUGL))
 .S MESUGL1=$$H2U^%L1FRM(MESUGL1)
 ;
 S ADSUGL1=""
 S ADSUGL=$G(%ARG("ADKVZ")) I ADSUGL D
 .S ADSUGL1=$G(@$$^W4GL("SUGL")@(ADSUGL))
 .S ADSUGL1=$$H2U^%L1FRM(ADSUGL1)
 ;
 I 'ADSUGL S ADSUGL=99999
 Q
 ;
FRMTMPREP ;
 D TMPREP K @TMPREP
 ;
 N IND,LKH,I,ST,ITRA0,SKUP,SHSBY,STZ,SCB,ITRA S I=0
 ;
 S IND="" F  S IND=$O(@VRM1@(IND)) Q:IND=""  D
 .S LKH=$G(^(IND)) I LKH="" S LKH=IND
 .Q:'LKH
 .S ST=LKH_"\"_$$LKH^W4L(LKH)
 .S ITRA0=$G(@VRM1@(IND,0))
 .S SKUP=$G(@VRM1@(IND,1))
 .S SHSBY=$G(@VRM1@(IND,2))
 .S STZ=$G(@VRM1@(IND,3))
 .S SCB=$G(@VRM1@(IND,4))
 .I 'SKUP,'SHSBY,'STZ,'SCB Q
 .S ST=ST_"\"_ITRA0
 .S ST=ST_"\"_SKUP
 .S ST=ST_"\"_SHSBY
 .S ST=ST_"\"_STZ
 .S ST=ST_"\"_SCB
 .S ITRA=ITRA0+SKUP+SHSBY-STZ-SCB
 .I $G(%ARG("LKITRA")),'ITRA Q
 .S ST=ST_"\"_ITRA
 .S I=I+1
 .S @TMPREP@("G",I)=ST
 Q
 ;
TMPREP ;
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
SORT(STAM) ; 
 Q $G(%ARG("SORT")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLKP
W4DLKP ; [ 30.01.25 16:13 ] [ 14.11.19 11:58 ] [ 14.02.19 05:39 ] 
 ;--- INPUT - DAT1,DAT2
 ;
 ;           ASONLY = 1 (KOLEL HAZMANOT , 2 -HESB & LAK BILVAD )
 ;           PRATI - ONE CUSTOMER ONLY
 N (JB,%ARG,%REM)
 ;
 S SH=0,TMPS111=$$^W4MAIN("TMPS111") K @TMPS111
 S DL=8
 D DR
 ;
 D ^%W1ARG
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("CSRPrint",$$^%W1DICT("CSRPRINT"),"CSRPrint()","color:green",",,,180")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D ^%W1PCVRM
 ;
 I '$D(@VRM) D
 .D FRM(JB,MEDAT,ADDAT,MELKH,ADLKH,$G(MEKVZ),$G(ADKVZ),ASONLY,$G(DEBT)) ;
 ;
 D PC
 Q
 ;
 ;
FRM(JB,MEDAT,ADDAT,MELKH,ADLKH,MEKVZ,ADKVZ,ASONLY,DEBT) ;
 N (JB,%ARG,%REM,MEDAT,ADDAT,MELKH,ADLKH,MEKVZ,ADKVZ,ASONLY,DEBT)
 D DR
 D PRM K @VRM
 ;
 D KLFKP
 ;
 S SHS=0,FIN=0
 S SSUMH=0,SSUMZ=0,SUMH=0,SUMZ=0 K STRINGP
 ;
 K @TEMPL
 S N="" F  S N=$O(@$$^W4GL("KLF")@(N)) Q:N=""  D
 .N N1 S N1=$TR(N,"-","")
 .N MESTRING1 S MESTRING1=$TR(MESTRING,"-","")
 .N ADSTRING1 S ADSTRING1=$TR(ADSTRING,"-","")
 .I MESTRING?1U.E,$E(N1,1,$L(MESTRING1))'=MESTRING1 Q
 .I MESTRING1'?1U.E,N1<MESTRING1 Q
 .I ADSTRING1'?1U.E,N1>ADSTRING1 Q
 .S SUGL=$$SUGL^W4L(N) I 'SUGL S SUGL=1
 .I SUGL<$G(MESUGL) Q
 .I $G(ADSUGL),SUGL>ADSUGL Q
 .;;I $$SLAVE(N),'$D(@$$^W4GL("KLF")@(N,"H")),'$D(@$$^W4GL("KLF")@(N,"TZ")),'$D(@$$^W4GL("KLF")@(N,"CB")),'$D(@$$^W4GL("P1LHB")@(N)) Q
 .S @TEMPL@(N)=N
 ;
 S NNN="" F  S NNN=$O(@TEMPL@(NNN)) Q:NNN=""  I NNN'="PC" S STRING=NNN D
 .S SUMH=0,SUMZ=0,SHZ=0 K M
 .S FIRST=1
 .
 .D  ; -- HISHUV ITRA KODEMET
 ..N KLOST,ITRA0,ITRA1
 ..S DAT0=$$^%L1DC(DAT1,"2-1")
 ..;
 ..;;D BDKRKZ(STRING) ; --> 14/02/18
 ..
 ..I $$GAMHZ D ^W4KLOST S ITRA=ITRA0 Q  ;-- KOLEL HAZMANOT
 ..I $$CBHB S ITRA=$$CBH^W4KLOST(STRING,$$^%L1DC($$^%L1DC(DAT0,1),3)) ; HESB & KAB
 .
 .S DAT=$$CR^W4DTL(DAT0)
 .F  S DAT=$O(@KLFKP@(DAT)) Q:DAT=""  S DT=$$DT^W4DTL(DAT) I DT'<DT1 D
 ..S DOC="" F  S DOC=$O(@KLFKP@(DAT,DOC)) Q:DOC=""  D
 ...I '$$DEBT!'$$ZHUT(DOC),DT>DT2 Q
 ...I $$CBHB,DOC'="H",DOC'="CB",DOC'="TZ" Q
 ...I $$GAMHZ,DOC'="H",DOC'="CB",DOC'="TZ",DOC'="HZ",DOC'="HMK",DOC'="TM",DOC'="TMZ" Q
 ...I $$GAMHZ,DOC="HMK",'$$^W4LKH Q
 ...;
 ...S NUMBER="" F  S NUMBER=$O(@KLFKP@(DAT,DOC,NUMBER)) Q:NUMBER=""  D  I $D(M) S DATV=$$DATV(DAT) D SETST
 ....K M
 ....S STR=$G(^(NUMBER))
 ....I FIRST D
 .....S FIRST=0
 .....S M("SUGTD")=0
 .....S M("ZHUT")="",M("HOVA")="",M("NOMTD")=""
 .....N DATV S DATV=$$CR^W4DTL(DAT1)_"0000"
 .....S M("ITRA")=$J(ITRA,DR,DR),M("SUMH")=ITRA
 .....D SETST
 ....
 ....S M("ZHUT")=$P(STR,"\",1)
 ....S M("HOVA")=$P(STR,"\",2)
 ....I +M("HOVA")=+M("ZHUT"),DOC'="H",DOC'="TZ",DOC'="HMK" K M Q
 ....S M("TRH")=$$^%L1DC(DAT,1)
 ....S M("SUGTD")=$S(DOC="HZ":1,DOC="H":$$SUGHB(NUMBER),DOC="CB":3,DOC="TZ":$$SUGHBZ(NUMBER),DOC["HMK":$$SUGHMK(NUMBER),DOC="TM":10,DOC="TMZ":12,1:"")
 ....;;I $$ZIC(M("SUGTD")),M("HOVA"),'M("ZHUT") S M("ZHUT")=-M("HOVA"),M("HOVA")=""
 ....S M("SUMH")=$S(M("HOVA"):M("HOVA"),M("ZHUT"):M("ZHUT"),1:$P(STR,"\",3))
 ....S M("NOMTD")=$S(NUMBER<0:-NUMBER,1:$P(NUMBER,"-",1,2))
 ....
 ....I DOC="HZ"!(DOC="TM")!(DOC="TMZ"),$$HB(STRING,DOC,NUMBER) D  Q
 .....S M("ZHUT")="",M("HOVA")=""
 ....
 ....D  ; I $G(ASONLY)=2 D  ; *** LEV 26/02/15
 .....I DOC="H"&NUMBER>0,M("SUMH") S M("HOVA")=$J(M("SUMH"),DR,DR)
 .....I DOC="TZ"!(NUMBER<0),M("SUMH") S M("HOVA")=$J(-M("SUMH"),DR,DR),M("ZHUT")=""
 ....
 ....I +M("HOVA")=+M("ZHUT"),DOC="H"!(DOC="TZ") S M("ZHUT")=""
 ....S M("ITRA")=ITRA+M("HOVA")-M("ZHUT"),ITRA=M("ITRA")
 ....
 ....D SUMHZ
 ...Q
 ..Q
 .Q
 ;
 D PUT^%W1PRM("W4DLKP",1)
 Q
 ;
 ;
DATV(DAT) ;
 I $L(DAT)=12 Q DAT
 N DATV S DATV=$$CR^W4DTL(DAT)
 I $L(DATV)<12 S DATV=$E(DATV_"00000000000",1,12)
 Q DATV
 ;
PC ;
 D PRM
 ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=33,SHLN=0,SSHLN=0
 S (SSHOV,SSZHUT,SLITRA,LITRA)=0
 ;
 S LKH="" F IL=1:1 S LKH=$O(@VRM@(LKH)) Q:LKH=""  D
 .S (SHOV,SZHUT)=0
 .I IL=1 D KOT(LKH) S SHLN=SHLN+3
 .I IL>1 D PAGEBREAK
 .S DAT="" F  S DAT=$O(@VRM@(LKH,DAT)) Q:DAT=""  D
 ..S SUGTD="" F  S SUGTD=$O(@VRM@(LKH,DAT,SUGTD)) Q:SUGTD=""  D
 ...S NOMTD="" F  S NOMTD=$O(@VRM@(LKH,DAT,SUGTD,NOMTD)) Q:NOMTD=""  D
 ....S NP="" F  S NP=$O(@VRM@(LKH,DAT,SUGTD,NOMTD,NP)) Q:NP=""  D
 .....N A S A=$G(^(NP)) Q:A=""
 .....S SHLN=SHLN+1,SSHLN=SSHLN+1
 .....I SHLN>RSIZE D PAGEBREAK
 .....N DOP S DOP="" I SUGTD=4 S DOP="HY"
 .....S PRM=LKH_"n"_SUGTD_"n"_NOMTD_DOP_"n"_NP
 .....W "<tr onClick=""OnClickTr('"_PRM_"')"""
 .....W " style=""cursor:pointer"
 .....W """"
 .....W " >"
 .....W " <td align=""center"">"_$$^%L1DC(DAT,1)_"</td>"
 .....S STC=$$^%L1DC(DAT,1)
 .....W " <td>&nbsp;"
 .....I SUGTD=0 W "<b>"
 .....W $$H2U^%L1FRM($$NAMEDOC(SUGTD))
 .....S STC=$$HBR^%L1FRM($$NAMEDOC(SUGTD),18)_" "_STC
 .....N HBN S HBN=$$HBN(LKH,"HZ",NOMTD)
 .....I SUGTD=1,HBN D
 ......W " [ "_$$H2U^%L1FRM("'yg")_" "_HBN_" ]"
 ......S STC="[ "_$J(HBN,6)_" 'yg ] "_STC
 .....I SUGTD=0 W "</b>"
 .....W "</td>"
 .....W "<td "
 .....I PRM=$$GET^%W1PRM("DLKPCUR") W " style=""border:solid 2px brown"""
 .....W " >&nbsp;"_NOMTD_"</td>"
 .....S STC=$J(NOMTD,DL)_" "_STC D S1
 .....D RKV($P(A,"\"),$S(SUGTD=6!(SUGTD=7):"red",1:""),$S(SUGTD=0:1,1:"")) ;- SHUM BE TEUDA
 .....S STC=$J($P(A,"\"),DL,2)
 .....D RKV($P(A,"\",2),"darkblue") S SHOV=SHOV+$P(A,"\",2)
 .....S STC=$J($P(A,"\",2),DL,2)_" "_STC
 .....D RKV($P(A,"\",3),"green") S SZHUT=SZHUT+$P(A,"\",3)
 .....S STC=$J($P(A,"\",3),DL,2)_" "_STC
 .....D RKV($P(A,"\",4),"black") S LITRA=$P(A,"\",4)
 .....S STC=$J($P(A,"\",4),DL,2)_" "_STC D S1 S STC="" D S1
 .....W "</tr>",!
 .;---------------------- ITOGO -------
 .D KAV
 .W "<tr style=""background-color:yellow;font-weight:bold"">"
  .W " <td>"_$$^%W1DICT("TOTAL")_"</td>"
  .W " <td>&nbsp;</td>"
  .W " <td>&nbsp;</td>"
  .W " <td>&nbsp;</td>"
  .S STC=$$TV^%W1DICT($$^%W1LNG,"TOTAL") D S1
  .S SSHOV=SSHOV+SHOV
  .S SSZHUT=SSZHUT+SZHUT
  .S SLITRA=SLITRA+LITRA
  .
  .D RKV(SHOV,"darkblue",1)
  .S STC=$J("",DL)
  .S STC=$J(SHOV,DL,2)_" "_STC
  .D RKV(SZHUT,"green",1)
  .S STC=$J(SZHUT,DL,2)_" "_STC
  .D RKV(LITRA,"black",1)
  .S STC=$J(LITRA,DL,2)_" "_STC D S1
  .D KAV
 .W "</tr>",!
 .
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')",!
 .W " Back()",!
 .W "</script>",!
 ;
  W "<tr style=""font-weight:bold;background-color:yellow"">"
  W " <td>"_$$^%W1DICT("TOTALALLCUSTOMERS")_"</td>"
  S STC=$$TV^%W1DICT("H","TOTALALLCUSTOMERS") D S1
  W " <td>&nbsp;</td>"
  W " <td>&nbsp;</td>"
  W " <td>&nbsp;</td>"
  D RKV(SSHOV,"darkblue",1)
  S STC=$J("",DL)
  S STC=$J(SSHOV,DL,2)_" "_STC
  D RKV(SSZHUT,"green",1)
  S STC=$J(SSZHUT,DL,2)_" "_STC
  D RKV(SLITRA,"black",1)
  S STC=$J(SLITRA,DL,2)_" "_STC D S1
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 K @TEMPL
 K @VRM
 Q
 ;
TEMPL S TEMPL=$$^W4MAIN("TEMPL")
 Q
KLFKP S KLFKP=$$^W4GL("KLF")_"(STRING,""KP"")"
 Q
SUMHZ ;
 S SUMH=SUMH+M("HOVA"),SUMZ=SUMZ+M("ZHUT")
 S SSUMH=SSUMH+M("HOVA"),SSUMZ=SSUMZ+M("ZHUT")
 Q
 ;
HB(STRING,DOC,NOMTD) ;
 N OK S OK=0
 S NOMTD=$$^W4NOMTD(NOMTD,DOC)
 I $D(@$$^W4GL("P1HL1")@(STRING,NOMTD,"HSB")) Q 1
 N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(STRING,NOMTD,I,"HSB")) S OK=1 Q
 I OK Q OK
 N LK S LK=""
 F  S LK=$O(@$$^W4GL("P1EZLI")@(STRING,LK)) Q:LK=""  D
 .I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,"HSB")) S OK=1 Q
 .N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,I,"HSB")) S OK=1 Q
 Q OK
 ;
HBN(STRING,DOC,NOMTD) ;
 N OK S OK=0
 S NOMTD=$$^W4NOMTD(NOMTD,DOC)
 N ST S ST=""
 N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(STRING,NOMTD,I,"HSB")) D
 .S ST=ST_$G(^("HSB"))_","
 I $L(ST) Q $E(ST,1,$L(ST)-1)
 ;
 N LK S LK=""
 F  S LK=$O(@$$^W4GL("P1EZLI")@(STRING,LK)) Q:LK=""  D
 .I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,"HSB")) S OK=1 Q
 .N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,I,"HSB")) D
 ..S ST=ST_$G(^("HSB"))_","
 I $L(ST) S ST=$E(ST,1,$L(ST)-1)
 Q ST
 ;
 ;
SETST ;
 ;
 N NP,IND1,IND2,IND3
 S IND2=$G(M("SUGTD")) I IND2="" S IND2="-"
 S IND3=$G(M("NOMTD")) I IND3="" S IND3="-"
 S NP=$O(@VRM@(STRING,DATV,IND2,IND3,9999),-1)+1
 S @VRM@(STRING,DATV,IND2,IND3,NP)=$G(M("SUMH"))_"\"_$G(M("HOVA"))_"\"_$G(M("ZHUT"))_"\"_$G(M("ITRA"))
 Q
 ;
SLAVE(LKH) ;
 I $G(@$$^W4GL("P1EZL")@(LKH)) Q 1
 Q 0
GAMHZ(STAM)
 Q $$GAMHZ^W4DLKM
 ;
CBHB(STAM)
 Q $$CBHB^W4DLKM
 ;
ZIC(SUGTD) ;
 I SUGTD=6!(SUGTD=7)!(SUGTD=11)!(SUGTD=12) Q 1
 Q 0
 ;
NAMEDOC(SUGTD) ;
 N SUGTD1
 S SUGTD1=""
 I SUGTD=0 Q "zncew dxzi"
 I SUGTD=1 Q "dpnfd"
 I SUGTD=2 Q "fekix zipeayg"
 I SUGTD=3 Q "dlaw"
 I SUGTD=4 Q "'ci zipeayg"
 I SUGTD=5 Q "'tn zipeayg"
 I SUGTD=6 Q "iekif zipeayg"
 I SUGTD=7 Q "'tn iekif zipeayg"
 I SUGTD=8 Q "dlaw/qn zipeayg"
 I SUGTD=9 Q "'tn dlaw/qn zipeayg"
 I SUGTD=10 Q "gelyn zcerz"
 I SUGTD=11 Q "iekif fekix zipeayg"
 I SUGTD=12 Q "xfgd zcerz"
 Q SUGTD1
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 S STC=$C(10,10,10,10) D S1
 D KOT(LKH)
 S SHLN=0
 Q
 ;
KOT(LKH) ;
 I $G(%ARG("MELKH")),$G(%ARG("MELKH"))=$G(%ARG("ADLKH")) D DIVEX(LKH)
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;"_$$FONTFM^W3CSS_""">"_LKH_" "_$$H2U^%L1FRM($$LKH^W4L(LKH))_"</span><br />",!
 S STC=$$LKH^W4L(LKH)_" "_LKH D S1C
 ;
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""" "
 W " width=""80%"">"
 D MEADL
 ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MEDATE")_"</td>",!
 S STC=$$TV^%W1DICT("H","MEDATE")
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("MEDAT"))_"</td>",!
 S STC=$G(%ARG("MEDAT"))_" "_STC
 W "  <td >"_$$^%W1DICT("ADDATE")_"</td>",!
 S STC=$$TV^%W1DICT("H","ADDATE")_" "_STC
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("ADDAT"))_"</td>",!
 S STC=$G(%ARG("ADDAT"))_" "_STC D S1C
 W " </tr>",!
 W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""80%"">"
 W " <tr style=""font-size:"_$$^W3FSZ(11)_""">"
 W "  <td>"_$$H2U^%L1FRM($$KTVM^W4L(LKH))_"</td>",!
 S STC=$$KTVM^W4L(LKH) D S1C
 W "  <td>"_$$^%W1DICT("TEL")_" : "_$$TELB^W4L(LKH)_"</td>",!
 S STC=$$TELB^W4L(LKH)_" : "_$$TV^%W1DICT("H","TEL") D S1C
 W "  <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("PAGE")_" : "_PG_"</td>",!
 W " </tr>",!
 ;
 W "</table>",!
 W "<br />",!
 ;
 W "<table class=""rep"" dir="""_$$^%W1DIR_""" border=""0"" "
  W " width=""80%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 D KAV
 W "  <th>"_$$^%W1DICT("DATE")_"</th>"
 W "  <th>"_$$^%W1DICT("KINDOFDOCUMENT")_"</th>"
 W "  <th>"_$$^%W1DICT("NUMBEROFDOC")_"</th>"
 W "  <th>"_$$^%W1DICT("SUMOFDOC")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","SUMOFDOC"),DL-1)
 W "  <th>"_$$^%W1DICT("HOVA")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","HOVA"),DL-2)_" : "_STC
 W "  <th>"_$$^%W1DICT("ZHUT")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","ZHUT"),DL-2)_" : "_STC
 W "  <th>"_$$^%W1DICT("ITRA")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","ITRA"),DL-2)_" : "_STC D S1
 W " </tr>",!
 D KAV
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 I RKV S RKV=$J(RKV,DR,DR)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
SUGHB(NOM) ;
 N LK
 I NOM<0 Q 11
 S LK=$G(@$$^W4GL("KLIN")@("H",NOM))
 I LK["+" Q 2
 I LK["W" Q 5
 Q 4
 ;
SUGHBZ(NOM) ;
 N LK
 S LK=$G(@$$^W4GL("KLIN")@("TZ",NOM))
 I LK["W" Q 7
 I LK["+" Q 11
 Q 6
 ;
SUGHMK(NOM) ;
 N LK
 S LK=$G(@$$^W4GL("KLIN")@("HMK",NOM))
 I LK["W" Q 9
 Q 8
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DEBT(STAM) ;
 Q +$G(DEBT)
 ;
ZHUT(DOC) ;
 I $G(DOC)="CB" Q 1
 Q 0
 ;
MEADL ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MESUGL")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MESUGL_" "_MESUGL1_"</td>",!
 W "  <td >"_$$^%W1DICT("ADSUGL")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADSUGL_" "_ADSUGL1_"</td>",!
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MELKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MELKH_"</td>",!
 W "  <td >"_$$^%W1DICT("ADLKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADLKH_"</td>",!
 W " </tr>",!
 Q
 ;
PRM ;
 D ^%W1PCVRM
 D TEMPL
 S %ARG("MEKVZ")=$G(MEKVZ)
 S %ARG("ADKVZ")=$G(ADKVZ)
 S PRTN=$$^%W1JB
 S DAT1=$$^%L1DC(MEDAT,2)
 S DAT2=$$^%L1DC(ADDAT,2)
 S MESTRING=$TR(MELKH,"-","")
 I MESTRING,MESTRING<1000,'$$^W4LKH S MESTRING=1000
 S ADSTRING=$TR(ADLKH,"-","")
 D MEADSUGL^W4DLKM
 S:'ADSTRING (ADSTRING,ADLKH)=99999999999
 S:'ADSUGL ADSUGL=99999
 ;;S ASONLY=3-ASONLY
 S DT1=$$^%L1DC(DAT1,4)
 S DT2=$$^%L1DC(DAT2,4)
 Q
 ;
BDKRKZ(STRING) ;
 N DAT,OK
 N GLRKZ S GLRKZ=$$^W4GL("P1LHB")
 N GLKL S GLKL=$$^W4GL("KLF")
 N NUM S NUM="" F  S NUM=$O(@GLRKZ@(STRING,NUM)) Q:NUM=""  D
 .N DT0 S DT0=$G(@GLRKZ@(STRING,NUM,"HB","DF")) Q:'DT0
 .N DAT0 S DAT0=$ZD(DT0,"YYYYMMDD")_"0000"
 .N SUM S SUM=$G(@GLRKZ@(STRING,NUM,"HB","SHUM")) Q:'SUM
 .S OK=0
 .N LKHR S LKHR=$G(@$$^W4GL("P1EZL")@(STRING))
 .I $L(LKHR)>3 S STRING=LKHR
 .S DAT=DAT0 F  S DAT=$O(@GLKL@(STRING,"KP",DAT)) Q:DAT=""  D  Q:OK
 ..I $D(@GLKL@(STRING,"KP",DAT,"H",NUM)) S OK=1
 .Q:OK  Q:NUM<1
 .S DAT=$E(DAT0,1,8)_"0099"
 .S @GLKL@(STRING,"KP",DAT,"H",NUM)="\\"_SUM
 Q
 ;
S1 ; 
 Q:'$$CSR
 S SH=SH+1
 S @TMPS111@(SH)=$J(STC,$$WD)
 Q 
 ;
S1C ;
 Q:'$$CSR
 S STC=$$CENTR^%L1FRM(STC,$$WD)
 D S1
 Q
 ;
CSR(STAM) ; 
 Q 1
 Q +$G(%ARG("CSR"))
 ;
KAV ;
 Q:'$$CSR
 N STC S STC=$TR($J("",$$WD)," ","-")
 D S1
 Q
 ;
WD(STAM) ; 
 Q 38 
 ;
PCCSR ; 
 N (JB,%ARG,%REM)
 D ^W4MDPPC Q:'$L($G(PRINT))
 S W4DELAY=""
 D ST^W4HZTH
 ;;K @$$^W4MAIN("TMPS111")
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q 
 ;
DR S DR=1 
 Q 
 ;
 ;
DIVEX(LKH) ; 
 N I,HD,DAT,SUGTD,NOMTD,NP,ST,STC,%W1PCEX
 N TMP S TMP=$$^%W1GLPRM K @TMP
 ;
 S HD="dxzi*zekf*daeg*dcerz mekq*dcerz 'qn*jnqn beq*jix`z"
 S HD=$$INVD^%L1FRM(HD,"*","*")
 S @TMP@("GLOUT",1)=HD
 S I=1
 ;
 S DAT="" F  S DAT=$O(@VRM@(LKH,DAT)) Q:DAT=""  D
 .S SUGTD="" F  S SUGTD=$O(@VRM@(LKH,DAT,SUGTD)) Q:SUGTD=""  D
 ..S NOMTD="" F  S NOMTD=$O(@VRM@(LKH,DAT,SUGTD,NOMTD)) Q:NOMTD=""  D
 ...S NP="" F  S NP=$O(@VRM@(LKH,DAT,SUGTD,NOMTD,NP)) Q:NP=""  D
 ....N A S A=$G(^(NP)) Q:A=""
 ....S ST=""
 ....S STC=$$^%L1DC(DAT,1) S ST=STC_"*"
 ....S STC=$$HBR^%L1FRM($$NAMEDOC(SUGTD),18) S ST=ST_STC_"*"
 .....S STC="[ "_$J(HBN,6)_" 'yg ]" S ST=ST_STC_"*"
 ....S STC=$J(NOMTD,DL) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\"),DL,2) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\",2),DL,2) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\",3),DL,2) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\",4),DL,2) S ST=ST_STC
 ....S I=I+1,@TMP@("GLOUT",I)=ST
 ;
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 ;
 D DIVEXC^%W1PC1("W4DLKP","%W1PCEX")
 Q  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLMSTL
W4DLMSTL(STAM) ; [ 25.02.26 18:46 ] [ 19.02.26 02:43 ] [ 30.12.20 06:32 ] 
 Q " style=""background-color:yellow;color:black"" "
 ;
DLM(STAM) ;
 Q " style=""background-color:orange;color:black"" "
 
 
 

W4DLPK
W4DLPK(NMB) ;   [ 15.02.24 13:16 ] [ 31.05.23 10:48 ] [ 09.12.20 08:17 ] 
 I $G(NMB)="" Q 0
 I $$^W4MSL(NMB) Q 0
 I $$TAW(NMB) Q 1
 Q 0
 ;
TAW(NMB) ;
 I $$^W4MSL(NMB) Q 0
 N SUGL1 D SUGL1
 I (SUGL1["TAW")!(SUGL1["TAKEAWAY")!(SUGL1["cx`il")!(SUGL1["wtlc") Q 1
 I (SUGL1["T/A")!(SUGL1["xidn xa")!(SUGL1["xidnxa") Q 1
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$KUPA^W4PLUK(MYDVN) Q 1
 I $$TAWM(NMB) Q 1
 I $$TAW^W4PRM Q 1
 Q 0
 ;
TAWM(NMB) ;
 I $$^W4MSL(NMB) Q 0
 N SUGL1 D SUGL1
 N MSL S MSL="migelyn"
 I SUGL1["TA"&(SUGL1[MSL)!(SUGL1["TAKEAWAY"&(SUGL1[MSL))!(SUGL1["zgwl") Q 1
 Q 0
 ;
BAR(NMB) ;
 I '$G(NMB) Q 0
 I $$^W4MSL(NMB) Q 0
 N SUGL1 D SUGL1
 I NMB=SUGL1["BAR"!(SUGL1["xa") Q 1
 Q 0
 ;
SUGL1 ;
 S SUGL1=$TR($$SUGL1^W4L(NMB)," ./","")
 Q
 ;
TAWHZM(HZM) ; 
 N NMB S NMB=$$NMB^W4HZMST(HZM) I 'NMB Q 0
 Q $$TAW(NMB) 
 
 
 
 

W4DLV
W4MSD(NMB) ; [ 16.01.09 12:39 ] [
 I $L($G(NMB))<4 Q 1
 Q 0

W4DLVCSR
W4DLVCSR(STAM) ; [ 16.03.22 15:08 ] [ 25.01.22 13:05 ] [ 18.09.18 17:05 ] 
 ; --------------  DLVCSR = 1 - MISHLOHIM MI KUPA (DLV)
 ; --------------  DLVCSR = 2 - CALL CENTER (DLVWEB)
 ; --------------  DLVCSR = 0 OR "WEB" - MISHLOHIM ON LINE
 N DLVCSR
 I $G(%ARG("DLVCSR"))'="" Q %ARG("DLVCSR")
 I $$TELEPHONE^W4PRM D PUT^%W1PRM("DLVCSR",2) Q 2
 I $$CCWEBR^W4PRM D KILL^%W1PRM("DLVCSR") Q 0
 S DLVCSR=$$GETP^%W1PRM("DLVCSR") I DLVCSR>1 Q DLVCSR
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 ;
 I NMB,DLVCSR?1N Q $$^W4MSL(NMB)
 ;
 I DLVCSR'["UNDEF",DLVCSR'="" Q DLVCSR
 ;
 I $$POS Q 1
 I $$SYS&'$G(@$$^W4PRM@("MSD"))&'$G(@$$^W4PRM@("MTAW")) Q 1
 I $$SYS&($G(@$$^W4PRM@("MSD"))!$G(@$$^W4PRM@("MTAW"))) Q "AND"
 Q 0
 ;
POS(STAM) ;---- IM BE EMDAT KUPA ESH MISHLOHIM
 I $G(%REM)="" Q 0
 Q +$G(@$$^W4PRM@("MSL",%REM))
 ;
SYS(STAM) ; --- IM BE MAAREHET KUPA ESH MISHLOHIM
 I $$DLVWEB Q 0
 Q +$G(@$$^W4PRM@("MSL"))
 ;
MSD(STAM) ; ---  IM BE MAAREHET KUPA ESH MISSADA
 I $G(@$$^W4PRM@("MSD"))!$G(@$$^W4PRM@("MTAW")) Q 1
 Q 0
 ;
CSR(STAM) ;
 N CSR
 S CSR=$$GETP^%W1PRM("DLVCSR")
 I CSR="" Q +CSR
 Q CSR
 ;
DLVWEB(STAM) ; --------- CALL CENTER
 I $$TELEPHONE^W4PRM Q 1
 I $G(%ARG("DLVCSR"))=2 Q 1
 I $$CSR=2 Q 1
 Q 0
 ;
DLVWEBN(STAM) ; --------- CALL CENTER
 I $G(%ARG("DLVCSR"))=3 Q 1
 I $$CSR=3 Q 1
 Q 0
 ;
MOUSE(STAM)
 I $G(%ARG("DLVCSR"))=3 Q 1
 I $$CSR=3 Q 1
 Q 0
 ;
ONLINE(STAM) ; -------- MISHLOHIM ON LINE
 I $G(%ARG("DLVCSR"))="WEB"!($$CSR="WEB") Q 1
 Q 0
 ;
DLV(STAM) ;------------- MISHLOHIM KUPA
 I $G(%ARG("DLVCSR"))=1 Q 1
 I $$CSR=1 Q 1
 Q 0
 ;
INIT ;
 D PUT^%W1PRM("NMB","")
 ;
 I $G(%ARG("FIRST")) D  Q
 .D ^W4KORD(JB)
 Q
 ;
PADDING(STAM) ; 
 I $$^W4ELPOS Q $$^W4KF(5) 
 I $$CALLCENTER^W4PRM Q 6 
 Q 6
 
 
 
 
 
 
 
 
 
 

W4DLVLK
W4DLVLK ; [ 07.07.24 08:24 ] [ 18.08.23 11:16 ] [ 16.08.23 17:52 ] 
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 D ^%W1ARG
 ;
 S %REPN="DLVLK"
 ;
 K %L1PC
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4DLVLK"
 D PUT^%W1PRM("HRFREP","w4dlvlk.jsp?JB="_JB_"&REPN="_%REPN)
 Q
 ;
 ;
TRH
 N (JB,%ARG,%REM,METRH,ADTRH,%L1PC,%REPN)
 D VRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I '$$KINDDAT D
 .S GL=$$^W4GL("W4LINKD")
 .F DT=MEDATH:1:ADDATH D
 ..I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 ..S HZM="" F  S HZM=$O(@GL@(DT,HZM)) Q:HZM=""  I $D(@$$^W4ORD@(HZM)) D
 ...S OK=1 D SETVRM(HZM,DT) Q:OK'=1
 ;
 I $$KINDDAT=1 D
 .S GL=$$^W4GL("W4LINK")
 .S HZM="" F  S HZM=$O(@GL@(HZM)) Q:HZM=""  D
 ..S A=$G(^(HZM))
 ..S DTHZ=$P(A,"~",6)
 ..I 'DTHZ D
 ...N TM S DTHZ=$P(A,"~",3),TM=$P(DTHZ,",",2)\3600
 ...S DTHZ=$S(TM<$$SHAAZ^W4PRM&$$^W4SHAAZ:DTHZ-1,1:+DTHZ)
 ..I DTHZ<MEDATH!(DTHZ>ADDATH) Q
 ..I REPDAYS,'$E(REPDAYS,$$^%L1DC(DTHZ,8)) Q
 ..I '$D(@$$^W4ORD@(HZM)) Q
 ..S OK=1 D SETVRM(HZM,DTHZ) Q:OK'=1
 ;
 I $$KINDDAT=2 D
 .S GL=$$^W4GL("P1H")
 .F DT=MEDATH:1:ADDATH D
 ..I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 ..S HZM="" F  S HZM=$O(@GL@(DT,HZM)) Q:HZM=""  I $D(@$$^W4ORD@(HZM)) D
 ...I $$SHUL^W4HZMST(HZM)+$$SHULA^W4HZMST(HZM)<$$TSHL^W4HZMST(HZM) Q
 ...S OK=1 D SETVRM(HZM,DT) Q:OK'=1
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
PRI N I F I="SUGL","LKHN","DT","HZM" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
 ;
SETVRM(N,DT) ;
 I $$HZM^W4MSD(N) Q
 I $$^W4HZMH(N) Q
 I $$I^W4PIZUL(N) Q
 ;
 N NMB,SUM,B
 D VRM
 S NMB=$$NMB^W4HZMST(N)
 S SUM=$$TSHL^W4HZMST(N)
 S B=$G(@VRM@(NMB))
 S B=B+$$^W4QNORD(N)_"\"_($P(B,"\",2)+SUM)
 S SUGL=$$SUGL^W4L(NMB) I SUGL="" S SUGL=" - "
 S @VRM@(NMB)=B
 S @VRM@(NMB,DT,N)=SUM
 Q
 ;
 ;
VRM ;
 D ^%W1PCVRM
 Q
 ;
LKHN ;
 I MELKHN,LKHN<MELKHN S OK=0 Q
 I ADLKHN,LKHN>ADLKHN S OK=0 Q
 S LKHN1=$$LKH^W4L(LKHN)
 ;
 S KTV=$$KTVM^W4L(LKHN)
 S SUGL=$$SUGL^W4L(LKHN)
 I MESUGL,SUGL<MESUGL S OK=0 Q
 I ADSUGL,SUGL>ADSUGL S OK=0 Q
 I 'SUGL S SUGL1=" - "
 I SUGL S SUGL1=$G(@$$^W4GL("SUGL")@(SUGL))
 S TEL1=$$TELB^W4L(LKHN)
 S TEL2=$$PELE^W4L(LKHN)
 I METEL2,TEL2<METEL2 S OK=0 Q
 I ADTEL2,TEL2>ADTEL2 S OK=0 Q
 Q
 ;
HZM ;
 I MEHZM,HZM<MEHZM S OK=0 Q
 I ADHZM,HZM>ADHZM S OK=0 Q
 S x1=1
 I $G(HZM),$$^W4PIZUL(HZM) S x1=2 
 S x2=$J($G(@GLOB),2,2)
 Q
 ;
KINDDAT(STAM) ;
 Q +$$GETP^%W1PRM("KINDDAT")
 ;
HEAD1(STAM) ;
 Q $$^%W1DICT($$HEAD)
 ;
HEAD(STAM) ;
 I '$$NODLVORD^W4PRM Q "DLVCUSTREPORT"
 I $$KINDDAT=0 Q "DLVCUSTREPORTSNDDAT"
 I $$KINDDAT=1 Q "DLVCUSTREPORTORDDAT"
 I $$KINDDAT=2 Q "DLVCUSTREPORTPAYDAT"
 Q ""
 ;
HEADDAT(STAM) ;
 I '$$NODLVORD^W4PRM Q ""
 I $$KINDDAT=0 Q "PERSNDDAT"
 I $$KINDDAT=1 Q "PERORDDAT"
 I $$KINDDAT=2 Q "PERPAYDAT"
 Q ""
 ;
QUERYMN ;
 N GLREP D GLREP
 K MN N N,I S I=0
 S I=I+1,MN(I)=$$^%W1DICT("BACK")
 S MA(I)=$$GET^W4STACK("REPBACK",1) ;;$$GETP^%W1PRM("REPBACK")
 S N="" F  S N=$O(@GLREP@("QUERY",N)) Q:N=""  D
 .S I=I+1,MN(I)=$$SPA^%L1FRM(N)
 .I MN(I)?1N.N." "."-".E D
 ..S MN(I)=$$CLR^%W1PC(MN(I))
 .S MA(I)="w4dlvlkask.jsp?JB="_JB_"&QUERY="_$$CLWEB^%L1FRM(N)_"&FIRST=1"
 ;
 N ZERO S ZERO=1
 D WMN^%W1WEBMN(.MN,.MA,"",1)
 Q
 ;
GLREP ;
 S GLREP=$$^%W1GLREP
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVLK1
W4DLVLK1(LKH,DAT1,DAT2) ; [ 19.01.18 18:50 ] [ 18.01.18 21:14 ] [ 
 N (JB,%ARG,%REM,LKH,DAT1,DAT2)
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  ;
 W "<div align=""center"" id=""divbtn"" dir="""_$$^%W1DIR_""">",!
  D ^W4BTN("PRINT","Print()","blue")
  W $$NBSP^%L1FRM(5)
  D ^W4BTN("CLOSE","Close()","red")
 W "</div>",!
 ;
 W "<br>",!
  ;
  W "<span style=""font-size:"_$$^W3FSZ(16)_""">",!
   W LKH_" "_$$H2U^%L1FRM($$LKH^W4L(LKH))
  W "</span>",! 
  W "<br>"
  W "<span style=""font-size:"_$$^W3FSZ(11)_""">",!
   W $$H2U^%L1FRM($$KTVM^W4L(LKH))
   W "<br>"
   W $$^%W1DICT("TEL")_" : "_$$TEL^W4L(LKH)
   I $$PELE^W4L(LKH) W " , "_$$PELE^W4L(LKH)
   I $L($$EMAIL^W4L(LKH)) D
   .W "<br>"
   .W $$^%W1DICT("EMAIL")_" : "_$$EMAIL^W4L(LKH)
  W "</span>",!
  W "<br><br>"
  ;
  W "<table width=""50%"" border=""1"" cellspacing=""0"" >"
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>"
    W "<th>"_$$^%W1DICT("ORDER")_"</th>"
    W "<th>"_$$^%W1DICT("SUM")_"</th>"
   W "</tr>",!
   ;
   S VRM=$$^W4MAIN("VRM")
   N SQN,SSUM S (SQN,SSUM)=0
   S DT=DT1-1 F  S DT=$O(@VRM@(LKH,DT)) Q:DT=""  D
   .S HZ=""  F  S HZ=$O(@VRM@(LKH,DT,HZ)) Q:HZ=""  D
   ..W "<tr>"
   ..W " <td> "_$ZD(DT,"DD.MM.YY")_" </td>"
   ..W " <td style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"',this)""> "_HZ_" </td>"
   ..S TS=$$TSHL^W4HZMST(HZ)
   ..W " <td> "_$J(TS,2,2)_" </td>"
   ..W "</tr>",!
   ..S SQN=SQN+1,SSUM=SSUM+TS
   ;
   W "<tr style=""background-color:yellow;font-weight:bold"">",!
    W "<td>&nbsp;</td>"
    W "<td> "_$$^%W1DICT("TOTALORDERS")_" : "_SQN_" </td>"
    W "<td> "_$J(SSUM,2,2)_" </td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVNET
W4DLVNET ; [ 08.07.26 13:24 ] [ 17.06.26 11:04 ] [ 05.02.26 04:57 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG,^%L1TS
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) Q
 ;
 S DT1=$$^%L1DC($G(%ARG("MEDAT")),3)
 S DT2=$$^%L1DC($G(%ARG("ADDAT")),3)
 ;
 ;
 S GL="^|"""_$$^W3MAIN_"""|W4DLVTIM"
 S MSDR=$G(%ARG("MSDR")) I MSDR="" W " MSDR NOT DEFINED !" Q
 S GLMSDR="^|$$^W3MAIN|W3MSDR("_MSDR_")"
 ;
 D KILL^W4DLVTIM
 F DT=DT1:1:DT2 D SUMDT^W4DLVTIM(DT); --> SHZ,SDLV
 ;;M ^AA("W4DLVNET","SDLV")=SDLV
 ;;M ^AA("W4DLVNET","SHZ")=SHZ
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",! 
 ;
 D EX
 ;
 W "<span style=""font-size:"_$$^W3FSZ(16)_""">",!
  W $$^%W1DICT("DLVTIMNETREPORT",$ZD(DT1,"DD.MM.YY")_"<>"_$ZD(DT2,"DD.MM.YY"))
 W "</span>",!
 ;
 ;
 W "<br><br>",!
 ;
 W "<div id=""divtbl"" align=""center"" dir=""LTR"" style=""margin-right:0px;padding-right:20px;height:80%;overflow:auto;"">",! 
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""1"" cellspacing=""0"" cellpadding=""4"">",!
 W "<thead class=""hdfix"">",!
 W "<tr>"
  W "<th >"_$$^%W1DICT("SNIFNUMBER")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("RESTNAME")_"</th>"
  W "<th>"_$$^%W1DICT("QNORDS")_"</th>"
  W "<th>"_$$^%W1DICT("QNRD5")_"</th>"
  W "<th>"_$$^%W1DICT("AHRD5")_"</th>"
  W "<th>"_$$^%W1DICT("QNORDS17")_"</th>"
  W "<th>"_$$^%W1DICT("AHORDS17")_"</th>"
  W "<th>"_$$^%W1DICT("QNORDS30")_"</th>"
  W "<th>"_$$^%W1DICT("AHORDS30")_"</th>"
  W "<th>"_$$^%W1DICT("SINGLEORD")_"</th>"
  W "<th>"_$$^%W1DICT("AHSINGLE")_"</th>"
  W "<th>"_$$^%W1DICT("DLVTIME")_"</th>"
  W "<th>"_$$^%W1DICT("APPLUSE")_"</th>"
  W "<th>"_$$^%W1DICT("APPLUSEAH")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 K QNORDS,QNRD5,QNORDS17,QNORDS30,QNSINGLE,AHRD5,AHORDS17,AHORDS30,AHSINGLE,SINGLE,QNORDS0,AHORDSNO0
 ;
 I $$RKZPR D  G ET
 .D KILL
 .F DT=DT1:1:DT2 D SUMDT(DT)
 .;
 .S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ..D TR(MSD)
 ;
 ;
 I '$$RKZPR D  G ET
 .F DT=DT1:1:DT2 D
 ..D KILL
 ..W "<tr style=""background-color:lightgrey;font-weight:bold;text-align:center"">"
 .. W "<td colspan=""9"" >"
 .. W $ZD(DT,"DD.MM.YY")
 .. W "</td>"
 ..W "</tr>",!
 ..;
 ..D SUMDT(DT)
 ..  ;
 ..S MSD="" F  S MSD=$O(@GL@(MSDR,DT,MSD)) Q:MSD=""  D
 ...D TR(MSD)
 ;
 ;
ET W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
 ;
RKZPR(STAM) ;
 Q $G(%ARG("RKZPR"))
 ;
RKZBR(STAM) ;
 Q $G(%ARG("RKZBR"))
 ;
SUM(A,MSD)
 I $G(MSD)="" Q
 S QNORDS(MSD)=$G(QNORDS(MSD))+$P(A,"~",41)
 S QNORDS17(MSD)=$G(QNORDS17(MSD))+$P(A,"~",45)
 S QNORDS30(MSD)=$G(QNORDS30(MSD))+$P(A,"~",43)
 S QNORDS0(MSD)=$G(QNORDS0(MSD))+$P(A,"~",49)
 S QNRD5(MSD)=$G(QNRD5(MSD))+$P(A,"~",47)
 S SINGLE(MSD)=$G(SINGLE(MSD))+$P(A,"~",48)
 S STIME=$P(A,"~"),QHZ=$P(A,"~",2)
 Q
 ;
 ;
TR(MSD) ;
 W "<tr>"
 W "<td>"_MSD_"</td>"
 W "<td>"_$$^%W1DICT($$MSD^W3R(MSD))_"</td>"
 S QNORDS=$G(QNORDS(MSD))
 W "<td>"_QNORDS_"</td>"
 S QNRD5=$G(QNRD5(MSD))
 W "<td>"_QNRD5_"</td>"
 S AHRD5="" I QNORDS S AHRD5=$J(QNRD5/QNORDS*100,2,2)
 W "<td>"_AHRD5_"%</td>"
 S QNORDS17=$G(QNORDS17(MSD))
 W "<td>"_QNORDS17_"</td>"
 S AHORDS17="" I QNORDS S AHORDS17=$J(QNORDS17/QNORDS*100,2,2)
 W "<td>"_AHORDS17_"%</td>"
 S QNORDS30=$G(QNORDS30(MSD))
 W "<td>"_QNORDS30_"</td>"
 S AHORDS30="" I QNORDS S AHORDS30=$J(QNORDS30/QNORDS*100,2,2)
 W "<td>"_AHORDS30_"%</td>"
 S QNSINGLE=$G(SINGLE(MSD))
 W "<td>"_QNSINGLE_"</td>"
 S AHSINGLE="" I QNSINGLE S AHSINGLE=$J(QNSINGLE/QNORDS*100,2,2)
 W "<td>"_AHSINGLE_"%</td>"
 S DLVTIM="" I $G(SDLV(MSD)),$G(SHZ(MSD)) S DLVTIM=$J(SDLV(MSD)/SHZ(MSD),2,2)
 W "<td>"_DLVTIM_"</td>"
 S QNORDS0=$G(QNORDS0(MSD))
 W "<td>"_(QNORDS-QNORDS0)_"</td>"
 S AHORDSNO0="" I QNORDS S AHORDSNO0=$J((QNORDS-QNORDS0)/QNORDS*100,2,2)
 W "<td>"_AHORDSNO0_"%</td>"
 W "</tr>"
 Q
 ;
 ;
SUMDT(DT)
 N MSD,IR,A
 N GL S GL="^[$$^W3MAIN]W4MSDMZV"
 S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 .S A=$G(@GL@(MSD,DT))
 .D SUM(A,MSD)
 Q
 ;
KILL ; 
 K SPREP,SLEAV,SWAIT
 Q
 ;
 ;
EX ; 
 N N,I,GLEX,MH,MHLK,ST,SH,LNG,DLM
 S LNG=$$^%W1LNG
 S GLEX=$$^%W1GLPRM K @GLEX
 S DLM="*"
 ;
 S ST="" I '$$RKZPR S ST=$$HB($$TV^%W1DICT(LNG,"DATE"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"SNIFNUMBER"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"RESTNAME"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"QNORDS"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"QNRD5"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"AHRD5"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"QNORDS17"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"AHORDS17"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"QNORDS30"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"AHORDS30"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"SINGLEORD"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"AHSINGLE"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"DLVTIME"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"APPLUSE"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"APPLUSEAH"))
 ;
 ;;S ST=$$INVD^%L1FRM(ST,DLM)
 S @GLEX@("GLOUT",1)=ST
 ;
 S SH=1
 ;
 I $$RKZPR D
 .D KILL
 .F DT=DT1:1:DT2 D SUMDT(DT)
 .;
 .S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ..D TREX(MSD)
 ;
 ;
 I '$$RKZPR D
 .F DT=DT1:1:DT2 D
 ..D KILL
 ..D SUMDT(DT)
 ..
 ..S MSD="" F  S MSD=$O(@GL@(MSDR,DT,MSD)) Q:MSD=""  D
 ...D TREX(MSD,DT)
 ;
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 D DIVEXC^%W1PC1("W4DLVTIM","%W1PCEX")
 Q 
 ;
 ;
TREX(MSD,DT) ; 
 S ST="" I $G(DT) S ST=$ZD(DT,"DD.MM.YY")_DLM
 S ST=ST_MSD_DLM_$$HB($$MSD^W3R(MSD))
 S QNORDS=$G(QNORDS(MSD))
 S ST=ST_DLM_QNORDS
 S QNRD5=$G(QNRD5(MSD))
 S ST=ST_DLM_QNRD5
 S AHRD5="" I QNORDS S AHRD5=$J(QNRD5/QNORDS*100,2,2)
 S ST=ST_DLM_AHRD5
 S QNORDS17=$G(QNORDS17(MSD))
 S ST=ST_DLM_QNORDS17
 S AHORDS17="" I QNORDS S AHORDS17=$J(QNORDS17/QNORDS*100,2,2)
 S ST=ST_DLM_AHORDS17
 S QNORDS30=$G(QNORDS30(MSD))
 S ST=ST_DLM_QNORDS30
 S AHORDS30="" I QNORDS S AHORDS30=$J(QNORDS30/QNORDS*100,2,2)
 S ST=ST_DLM_AHORDS30
 S QNSINGLE=$G(SINGLE(MSD))
 S ST=ST_DLM_QNSINGLE
 S AHSINGLE="" I QNSINGLE S AHSINGLE=$J(QNSINGLE/QNORDS*100,2,2)
 S ST=ST_DLM_AHSINGLE
 S DLVTIM="" I $G(SDLV(MSD)),$G(SHZ(MSD)) S DLVTIM=$J(SDLV(MSD)/SHZ(MSD),2,2)
 S ST=ST_DLM_DLVTIM
 S QNORDS0=$G(QNORDS0(MSD))
 S ST=ST_DLM_(QNORDS-QNORDS0)
 S AHORDSNO0="" I QNORDS S AHORDSNO0=$J((QNORDS-QNORDS0)/QNORDS*100,2,2)
 S ST=ST_DLM_AHORDSNO0
 ;
 S SH=SH+1
 ;
 S @GLEX@("GLOUT",SH)=ST
 Q 
 ;
 ;
HB(TX) ; 
 Q $$^%W1D2U(TX)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVNNX
W4DLVNNX ; [ 08.07.26 13:25 ] [ 25.01.26 12:49 ] [ 08.01.26 12:04 ] 
 N (JB,%ARG,%REM,%REPN,FMT,%W1LNG)
 S:'$D(FMT) FMT=0
 D ^%L1TS
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_"W4DLVNON"_$$^W4MYDVN
 S FLCSV=FL_".csv"
 N A,B,I,J,RZD
 S RZD=","
 C FLCSV:(DELETE)
 ZSY "rm -f "_FLCSV
 ;;W "FLCSV="_FLCSV,!
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 U FLCSV
 ;
 I $G(%ARG("MSD")) D
 .W $$RKV("sipq")_$$RKV("gewl 'qn")_$$RKV("gewl my")_$$RKV("zaezk")_$$RKV("mipetlh")_$$RKV("l""`ec")_$$RKV("zepnfd"),!
 ;
 I '$G(%ARG("MSD")) D
 .W $$RKV("gewl 'qn")_$$RKV("gewl my")_$$RKV("zaezk")_$$RKV("mipetlh")_$$RKV("l""`ec")_$$RKV("zepnfd"),!
 ;
 S VRM=$$^W4MAIN("VRM")
 ;
 I '$G(%ARG("MSD")) D
 .S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S ORDS=$G(@VRM@(N,"QN"))
 ..D PRS^%L1FRM(A,"LKH1~KTV~TEL~MAIL","~")
 ..W $$RKV(N)_$$RKV(LKH1)_$$RKV(KTV)_$$RKV(TEL)_$$RKV(MAIL)_+ORDS,!
 ;
 I $G(%ARG("MSD")) D
 .N MSD S MSD=$G(%ARG("MSD"))
 .S N="" F  S N=$O(@VRM@(MSD,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..D PRS^%L1FRM(A,"LKH1~KTV~TEL~MAIL","~")
 ..S ORDS=$G(@VRM@(MSD,N,"QN"))
 ..S SNIF1="" I MSD S SNIF1=$$MSD^W3R(MSD) 
 ..W $$RKV(SNIF1)_$$RKV(N)_$$RKV(LKH1)_$$RKV(KTV)_$$RKV(TEL)_$$RKV(MAIL)_+ORDS,!
 C FLCSV
 ;
 Q
 ;
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
RKV(VL)
 S VL=$$SPA^%L1FRM(VL)
 I VL="" G RKVE
 S VL=$TR(VL,","," ")
 I $$ISNUM^%L1FRM(VL) G RKVE
 ;;S VL=$TR($$INVH^%L1FRM(VL),TS0,TS1)
 S VL=$TR(VL,","," ")
 S VL=$$^%W1D2U(VL)
RKVE ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_","
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVNO
W4DLVNO(MEDAT,ADDAT) ; [ 30.09.26 11:30 ] [ 29.09.26 18:11 ] [ 25.01.26 12:59 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT)
 I $G(%ARG("SHOW"))=0 Q
 D ^%W1ARG
 D PUT^%W1PRM("KINDDAT",1)
 ;
 S TKFO=30.5*$G(%ARG("TKFO"))\1
 ;
 S KIOSK=$$NMBKSK^W4KIOSKO
 D CRVRM(MEDAT,ADDAT,JB)
 ;
 D ^W4DLVNX
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" width=""100%"" >",!
 ;
 D OPTBL 
  W "<tr>"
   W "<td width=""12%"">",!
    S FL="W4DLVNON"_$$^W4MYDVN
    S FLCSV=$$DIRWEB^%W1PCEX_FL_".csv"
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>",!
   W "<td width=""88%"" >"
    W "&nbsp;"
   W "</td>"
  W "</tr>"
 W "</table>",!
 ;
 D OPTBL2,OPTBL1
 ;
 S VRM=$$^W4MAIN("VRM")
 ;
 S RZ=40,II=0,K=0
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .I MINORDS,$G(@VRM@(N,"QN"))<MINORDS Q
 .N A S A=$G(^(N))
 .N LK S LK=$E(N,11,30)
 .S LK=$$SPA^%L1FRM(LK)
 .S II=II+1,K=K+1
 .
 .I II>RZ D
 ..W "</table>",!
 ..I $G(%ARG("PRINT")) D PGBREAK
 ..I '$G(%ARG("PRINT")) W "<p>&nbsp;</p>",!
 ..D OPTBL,OPTBL1
 ..S II=1 
 .
 .N LKH1,KTV,PHONES,EMAIL
 .S LKH1=$P(A,"~")
 .S KTV=$P(A,"~",2)
 .S PHONES=$P(A,"~",3)
 .S EMAIL=$P(A,"~",4)
 .
 .I LKH1="" S LKH1=$$LKH^W4L(LK)
 .I KTV="" S KTV=$$KTVM^W4L(LK)
 .S KTV=$$KTV(KTV)
 .I PHONES="" S PHONES=$$TELB^W4L(LK) I PHONES="" S PHONES=$$PELE^W4L(LK)
 .I EMAIL="" S EMAIL=$$EMAIL^W4L(LK)
 .
 .W "<tr>"
 . W "<td style=""color:grey;font-size:"_$$^W3FSZ(8)_""">"_K_"</td>" 
 . W "<td>"_LK_"</td>" 
 . W "<td>"_$$H2U^%L1FRM(LKH1)_"</td>"
 . W "<td>"_$$H2U^%L1FRM(KTV)_"</td>"
 . W "<td>"_PHONES_"</td>"
 . W "<td>"_EMAIL_"</td>"
 . W "<td>"_$G(@VRM@(N,"QN"))_"</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
CRVRM(METRH,ADTRH,JB) ;
 N (JB,%ARG,METRH,ADTRH,TKFO,MINORDS,MAXORDS)
 S GLORD=$$^W4ORD
 S MEDT=$$^%L1DC(METRH,3)
 S ADDT=$$^%L1DC(ADTRH,3)
 S MEDTO=MEDT-TKFO
 S ADDTO=MEDT-1
 N GL S GL=$$^W4REF
 N VRM
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 ;
 F DT=MEDTO:1:ADDTO D VIB(DT)
 ;
 F DT=MEDT:1:ADDT D
 .N ORD S ORD="" F  S ORD=$O(@$$^W4REF@(DT,ORD)) Q:ORD=""  D
 ..I '$$HZM^W4MSL(ORD) Q
 ..S LK=$$NMB^W4HZMST(ORD) S:LK=$$NMBKSK^W4KIOSKO LK=$$TELB^W4HZMST(ORD) Q:'LK
 ..I '$$DEL^W4DEL(ORD),'$$^W4HZMH(ORD),$$TSHL^W4HZMST(ORD)'<0 K @VRM@(LK)
 ;
 N LK S LK="" F  S LK=$O(@VRM@(LK)) Q:LK=""  D
 .I $G(MINORDS),$G(@VRM@(LK,"QN"))<MINORDS K @VRM@(LK)
 ;
 N VRM1 S VRM1=$$^W4MAIN("VRM1") K @VRM1
 N LK S LK="" F  S LK=$O(@VRM@(LK)) Q:LK=""  D
 .N QN S QN=+$G(@VRM@(LK,"QN"))
 .S QNI=$J(10000000-QN,10)
 .M @VRM1@(QNI_$J(LK,11))=@VRM@(LK)
 ;
 K @VRM
 M @VRM=@VRM1
 K @VRM1
 Q
 ;
 ;
ASKSEL(VL)
 W "<select id=""TKFO"" name=""TKFO"" >",! 
  W "<option value=""3"" >"_$$^%W1DICT("3MONTHAGO")_"</option>",!
  W "<option value=""6"" >"_$$^%W1DICT("6MONTHAGO")_"</option>",!
  W "<option value=""12"">"_$$^%W1DICT("12MONTHAGO")_"</option>",!
 W "</select>",! 
 Q
 ;
MINORDS(VL)
 W $$^%W1DICT("QNMINORDS")_$$NBSP^%L1FRM(2)
 W "<select id=""MINORDS"" name=""MINORDS"" >",! 
  N I F I=1:1:50 D
  .W "<option"
  .I I=5 W " selected=""selected"" "
  .W ">"_I_"</option>",!
 W "</select>",! 
 Q
 ;
MAXORDS(VL)
 W $$^%W1DICT("QNMAXORDS")_$$NBSP^%L1FRM(2)
 W "<select id=""MAXORDS"" name=""MAXORDS"" >",! 
  N I F I=0:1:2000 D
  .W "<option"
  .I I=2000 W " selected=""selected"" "
  .W ">"_I_"</option>",!
 W "</select>",! 
 Q
 ;
TEL(TEL) ; 
 S TEL=$TR(TEL,"- ","") 
 I $E(TEL,1,3)=972 S TEL="0"_$E(TEL,4,20)
 I $E(TEL,1,4)="+972" S TEL="0"_$E(TEL,5,20) 
 I $E(TEL,1,2)="05" S TEL=$E(TEL,1,3)_"-"_$E(TEL,4,20)
 E  S TEL=$E(TEL,1,2)_"-"_$E(TEL,3,20) 
 Q TEL 
 ;
OPTBL ;
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 S MEDTO=MEDT-TKFO
 S ADDTO=MEDT-1
 S MEDATO=$ZD(MEDTO,"DD.MM.YY")
 S ADDATO=$ZD(ADDTO,"DD.MM.YY")
 W " <span style=""font-size:"_$$^W3FSZ(16)_""">",!
  W $$^%W1DICT("CUSTOMLISTDLVNOT<>"_MEDAT_"<>"_ADDAT_"<>"_MEDATO_"<>"_ADDATO)
  W " </span>",!
 W " </span>",!
 W "<p></p>",!
 ;
 D OPTBL2
 Q
 ;
 ;
OPTBL1 ;
  W "<tr>"
   W "<th width=""2%"">"_$$^%W1DICT("NPP")_"</th>"
   W "<th width=""7%"">"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
   W "<th width=""20%"">"_$$^%W1DICT("ADDRESS")_"</th>"
   ;;W "<th width=""8%"">"_$$^%W1DICT("CITY")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("PHONES")_"</th>"
   ;;W "<th width=""8%"">"_$$^%W1DICT("FAX")_"</th>"
   W "<th width=""20%"">"_$$^%W1DICT("EMAIL")_"</th>"
   W "<th width=""10%"">"_$$^%W1DICT("QNORDSPER")_"</th>"
 W "</tr>"
 ;
 Q
 ;
 ;
OPTBL2 ;
 W "<table dir="""_$$^%W1DIR_""" width=""99%"" border=""0"" cellspacing=""0"">",!
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
SCRIPT(DAT) ; 
 Q
 W "<script>",! 
  W "GetId(""wait"",parent.hd).innerHTML='"_DAT_"'",!
 W "</script>",! 
 Q 
 ;
 ;
GETRKV(ORD) ; 
 N KIOSK S KIOSK=$$NMBKSK^W4KIOSKO
 S LK=$$NMB^W4HZMST(ORD)
 S LK1=$$NAME^W4HZMST(ORD)
 S LK1=$$SPA^%L1FRM(LK1)
 ;;I LK1?.P!(LK2="TAW")!(LK2="TAKEAWAY") Q
 S ADR=$$KTVM^W4HZMST(ORD)
 S ADR=$$SPA^%L1FRM(ADR)
 S ADR=$$KTV(ADR)
 S TEL=$$SPA^%L1FRM($$TELB^W4HZMST(ORD))
 S TEL=$$TEL(TEL)
 I $G(KIOSK),TEL=KIOSK S TEL=""
 S PELE=$$SPA^%L1FRM($$PELE^W4HZMST(ORD))
 S PELE=$$TEL(PELE)
 I PELE,$TR(PELE,"-","")'=$TR(TEL,"-","") S TEL=TEL_$S($L(TEL):",",1:"")_PELE
 I TEL?.P!(TEL=KIOSK) Q
 S MAIL=$$SPA^%L1FRM($$EMAIL^W4HZMST(ORD))
 Q
 ;
 ;
VIB(DT) ;
 N ORD S ORD="" F  S ORD=$O(@$$^W4REF@(DT,ORD)) Q:ORD=""  D
 .I '$$HZM^W4MSL(ORD) Q
 .D GETRKV(ORD) Q:'LK
 .
 .S @VRM@(LK)=LK1_"~"_ADR_"~"_TEL_"~"_MAIL
 .S @VRM@(LK,"QN")=$G(@VRM@(LK,"QN"))+1
 Q
 ;
KTV(ADR) 
 I $TR(ADR,"., ","")="TAW"!(ADR="TAKE AWAY")!(ADR="TAKEAWAY")!(ADR="") Q "zgwl"
 Q ADR
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVNON
W4DLVNON(MEDAT,ADDAT) ; [ 29.09.26 06:31 ] [ 25.01.26 12:59 ] [ 15.01.26 15:11 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT)
 I $G(%ARG("SHOW"))=0 Q
 D ^%W1ARG
 ;;D PUT^%W1PRM("KINDDAT",$G(%ARG("KINDDAT")))
 D PUT^%W1PRM("KINDDAT",1)
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 ;
 S TKFO=30.5*$G(%ARG("TKFO"))\1
 S ^BB("TKFO")=TKFO
 ;
 D CRVRM(MEDAT,ADDAT,JB)
 ;
 D ^W4DLVNNX
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" width=""100%"" >",!
 ;
 D OPTBL 
  W "<tr>"
   W "<td width=""12%"">",!
    S FL="W4DLVNON"_$$^W4MYDVN
    S FLCSV=$$DIRWEB^%W1PCEX_FL_".csv"
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>",!
   W "<td width=""88%"" >"
    W "&nbsp;"
   W "</td>"
  W "</tr>"
 W "</table>",!
 ;
 D OPTBL2,OPTBL1
 ;
 S GLORD=$$^W4GL("W3ORD")
 S VRM=$$^W4MAIN("VRM")
 ;
 S RZ=40,II=0,K=0
 ;
 I '$G(%ARG("MSD")) D
 .S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I MINORDS,$G(@VRM@(N,"QN"))<MINORDS Q
 ..S II=II+1,K=K+1
 ..
 ..I II>RZ D
 ...W "</table>",!
 ...I $G(%ARG("PRINT")) D PGBREAK
 ...I '$G(%ARG("PRINT")) W "<p>&nbsp;</p>",!
 ...D OPTBL,OPTBL1
 ...S II=1 
 ..
 ..N LK S LK=N
 ..N LKH1,KTV,PHONES,EMAIL,MSD
 ..S LKH1=$P(A,"~")
 ..S KTV=$P(A,"~",2)
 ..S PHONES=$P(A,"~",3)
 ..S EMAIL=$P(A,"~",4)
 ..
 ..I LKH1="" S LKH1=$$LKH^W3L(LK)
 ..I KTV="" S KTV=$$KTV^W3L(LK)
 ..I PHONES="" S PHONES=$$TELB^W3L(LK)
 ..I EMAIL="" S EMAIL=$$EMAIL^W3L(LK)
 ..
 ..W "<tr>"
 .. W "<td style=""color:grey;font-size:"_$$^W3FSZ(8)_""">"_K_"</td>" 
 .. W "<td>"_N_"</td>" 
 .. W "<td>"_$$H2U^%L1FRM(LKH1)_"</td>"
 .. W "<td>"_$$H2U^%L1FRM(KTV)_"</td>"
 .. W "<td>"_PHONES_"</td>"
 .. W "<td>"_EMAIL_"</td>"
 .. W "<td>"_$G(@VRM@(N,"QN"))_"</td>"
 ..W "</tr>",!
 ;
 ;
 I $G(%ARG("MSD")) D
 .S MSD=%ARG("MSD")
 .N N S N="" F  S N=$O(@VRM@(MSD,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I MINORDS,$G(@VRM@(MSD,N,"QN"))<MINORDS Q
 ..S II=II+1,K=K+1
 ..
 ..I II>RZ D
 ...W "</table>",!
 ...I $G(%ARG("PRINT")) D PGBREAK
 ...I '$G(%ARG("PRINT")) W "<p>&nbsp;</p>",!
 ...D OPTBL,OPTBL1
 ...S II=1 
 ..
 ..N LKH1,KTV,PHONES,EMAIL
 ..S LKH1=$P(A,"~")
 ..S KTV=$P(A,"~",2)
 ..S PHONES=$P(A,"~",3)
 ..S EMAIL=$P(A,"~",4)
 ..
 ..N LK S LK=N
 ..I LKH1="" S LKH1=$$LKH^W3L(LK)
 ..I KTV="" S KTV=$$KTV^W3L(LK)
 ..I PHONES="" S PHONES=$$TELB^W3L(LK)
 ..I EMAIL="" S EMAIL=$$EMAIL^W3L(LK)
 ..
 ..W "<tr>"
 .. W "<td style=""color:grey;font-size:"_$$^W3FSZ(8)_""">"_K_"</td>" 
 .. W "<td>"_MSD_" "_$$H2U^%L1FRM($$MSD^W3R(MSD))_"</td>"
 .. W "<td>"_LK_"</td>" 
 .. W "<td>"_$$H2U^%L1FRM(LKH1)_"</td>"
 .. W "<td>"_$$H2U^%L1FRM(KTV)_"</td>"
 .. W "<td>"_PHONES_"</td>"
 .. W "<td>"_EMAIL_"</td>"
 .. W "<td>"_$G(@VRM@(MSD,LK,"QN"))_"</td>"
 ..W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
CRVRM(METRH,ADTRH,JB) ;
 N (JB,%ARG,METRH,ADTRH,MSDR,TKFO,MINORDS,MAXORDS)
 S GLORD="^|"""_$$^W3MAIN_"""|W3ORD"
 S MEDT=$$^%L1DC(METRH,3)
 S ADDT=$$^%L1DC(ADTRH,3)
 S MEDTO=MEDT-TKFO
 S ADDTO=MEDT-1
 N GL S GL="^|"""_$$^W3MAIN_"""|W3LINKDR"
 N VRM
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 ;
 S KIOSK="0500000000"
 ;
 D  ;
 .N GLI S GLI="^|$$^W3MAIN|W3LINKI"
 .N LK S LK="" F  S LK=$O(@GLI@(LK)) Q:LK=""  D
 ..I '$G(%ARG("MSD")) D  Q
 ...N MSD S MSD="" F  S MSD=$O(@GLI@(LK,MSD)) Q:MSD=""  D VIB(LK,MSD)
 ..
 ..D VIB(LK,%ARG("MSD")) 
 ;
 Q
 ;
 ;
ASKSEL(VL)
 W "<select id=""TKFO"" name=""TKFO"" >",! 
  W "<option value=""3"" >"_$$^%W1DICT("3MONTHAGO")_"</option>",!
  W "<option value=""6"" >"_$$^%W1DICT("6MONTHAGO")_"</option>",!
  W "<option value=""12"">"_$$^%W1DICT("12MONTHAGO")_"</option>",!
 W "</select>",! 
 Q
 ;
MINORDS(VL)
 W $$^%W1DICT("QNMINORDS")_$$NBSP^%L1FRM(2)
 W "<select id=""MINORDS"" name=""MINORDS"" >",! 
  N I F I=1:1:50 D
  .W "<option"
  .I I=5 W " selected=""selected"" "
  .W ">"_I_"</option>",!
 W "</select>",! 
 Q
 ;
MAXORDS(VL)
 W $$^%W1DICT("QNMAXORDS")_$$NBSP^%L1FRM(2)
 W "<select id=""MAXORDS"" name=""MAXORDS"" >",! 
  N I F I=0:1:2000 D
  .W "<option"
  .I I=2000 W " selected=""selected"" "
  .W ">"_I_"</option>",!
 W "</select>",! 
 Q
 ;
ASKMSD ;
 W "<select id=""MSD"" >",! 
  W "<option value=""0"" >-- "_$$^%W1DICT("ALLBRANCH")_" --</option>",!
  N N S N="" F  S N=$O(^|$$^W3MAIN|W3MSDR(MSDR,N)) Q:N=""  D
  .W "<option value="""_N_""" >"_N_" "_$$H2U^%L1FRM($$MSD^W3R(N))_"</option>",!
 W "</select>",! 
 Q
 ;
LK(ORD,GLORD) ; 
 N LK
 S LK=$$LKHN^W3HZMST(ORD,GLORD)
 S LK=$$SPA^%L1FRM(LK)
 I LK="" S LK=$$NMB^W3HZMST(ORD,GLORD)
 Q $TR(LK,"- ","")
 ;
TEL(TEL) ; 
 S TEL=$TR(TEL,"- ","") 
 I $E(TEL,1,3)=972 S TEL="0"_$E(TEL,4,20)
 I $E(TEL,1,4)="+972" S TEL="0"_$E(TEL,5,20) 
 I $E(TEL,1,2)="05" S TEL=$E(TEL,1,3)_"-"_$E(TEL,4,20)
 E  S TEL=$E(TEL,1,2)_"-"_$E(TEL,3,20) 
 Q TEL 
 ;
OPTBL ;
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 S MEDTO=MEDT-TKFO
 S ADDTO=MEDT-1
 S MEDATO=$ZD(MEDTO,"DD.MM.YY")
 S ADDATO=$ZD(ADDTO,"DD.MM.YY")
 W " <span style=""font-size:"_$$^W3FSZ(16)_""">",!
  W $$^%W1DICT("CUSTOMLISTDLVNOT<>"_MEDAT_"<>"_ADDAT_"<>"_MEDATO_"<>"_ADDATO)
  W " </span>",!
 W " </span>",!
 W "<p></p>",!
 ;
 D OPTBL2
 Q
 ;
 ;
OPTBL1 ;
  W "<tr>"
   W "<th width=""2%"">"_$$^%W1DICT("NPP")_"</th>"
   I $G(%ARG("MSD")) D
   .W "<th width=""11%"">"_$$^%W1DICT("SNIF")_"</th>"
   W "<th width=""7%"">"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
   W "<th width=""20%"">"_$$^%W1DICT("ADDRESS")_"</th>"
   ;;W "<th width=""8%"">"_$$^%W1DICT("CITY")_"</th>"
   W "<th width=""15%"">"_$$^%W1DICT("PHONES")_"</th>"
   ;;W "<th width=""8%"">"_$$^%W1DICT("FAX")_"</th>"
   W "<th width=""20%"">"_$$^%W1DICT("EMAIL")_"</th>"
   W "<th width=""10%"">"_$$^%W1DICT("QNORDSPER")_"</th>"
 W "</tr>"
 ;
 Q
 ;
 ;
OPTBL2 ;
 W "<table dir="""_$$^%W1DIR_""" width=""99%"" border=""0"" cellspacing=""0"">",!
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
SCRIPT(DAT) ; 
 Q
 W "<script>",! 
  W "GetId(""wait"",parent.hd).innerHTML='"_DAT_"'",!
 W "</script>",! 
 Q 
 ;
 ;
GETRKV(ORD) ; 
 S LK1=$$LKHN1^W3HZMST(ORD,GLORD)
 S LK1=$$SPA^%L1FRM(LK1)
 I LK1?.P S LK1=$$NAME^W3HZMST(ORD)
 S LK2=$TR(LK1,". ","")
 ;;I LK1?.P!(LK2="TAW")!(LK2="TAKEAWAY") Q; -- 29/09/26
 S ADR=$$KTV^W3HZMST(ORD,GLORD)
 S ADR=$$SPA^%L1FRM(ADR)
 S TEL=$$SPA^%L1FRM($$TELB^W3HZMST(ORD,GLORD))
 I TEL="" S TEL=$$NMB^W3HZMST(ORD,GLORD)
 S TEL=$$TEL(TEL)
 I $G(KIOSK),TEL=KIOSK S TEL=""
 S PELE=$$SPA^%L1FRM($$PELE^W3HZMST(ORD,GLORD))
 S PELE=$$TEL(PELE)
 I PELE,$TR(PELE,"-","")'=$TR(TEL,"-","") S TEL=TEL_$S($L(TEL):",",1:"")_PELE
 I TEL?.P!(TEL=KIOSK) Q
 S MAIL=$$SPA^%L1FRM($$EMAIL^W3HZMST(ORD,GLORD))
 Q
 ;
 ;
VIB(LK,MSD) ;
 I '$D(^|$$^W3MAIN|W3MSDR(MSDR,MSD)) Q
 N ORD S ORD="" F  S ORD=$O(@GLI@(LK,MSD,ORD)) Q:ORD=""  D
 .N DT S DT=$G(^(ORD))
 .I DT'<MEDTO,DT'>ADDTO D
 ..D GETRKV(ORD)
 ..;;I $TR(ADR," .","")="TAW"!($TR(ADR," .")="TAKEAWAY")!(ADR="") Q  ; -- 29.09.26 --> COMMENT
 ..
 ..I '$G(%ARG("MSD")) D
 ...S @VRM@(LK)=LK1_"~"_ADR_"~"_TEL_"~"_MAIL
 ...S @VRM@(LK,"QN")=$G(@VRM@(LK,"QN"))+1
 ..
 ..I $G(%ARG("MSD")) D
 ...S @VRM@(MSD,LK)=LK1_"~"_ADR_"~"_TEL_"~"_MAIL
 ...S @VRM@(MSD,LK,"QN")=$G(@VRM@(MSD,LK,"QN"))+1
 ;
 I $G(MINORDS),'$G(%ARG("MSD")),$G(@VRM@(LK,"QN"))<MINORDS K @VRM@(LK)
 I $G(MINORDS),$G(%ARG("MSD")),$G(@VRM@(MSD,LK,"QN"))<MINORDS K @VRM@(MSD,LK)
 ;
 N ORD S ORD="" F  S ORD=$O(@GLI@(LK,MSD,ORD)) Q:ORD=""  D
 .N DT S DT=$G(^(ORD))
 .I DT'<MEDT,DT'>ADDT D
 ..I '$G(%ARG("MSD")) K @VRM@(LK) 
 ..I $G(%ARG("MSD")) K @VRM@(MSD,LK) 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVNOX
W4DLVNOX ; [ 08.07.26 13:25 ] [ 12.11.24 18:39 ] [ 22.08.19 07:40 ] 
 N (JB,%ARG,%REM,%REPN,FMT,TOT,%W1LNG,MSD)
 S:'$D(FMT) FMT=0
 D ^%L1TS
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_"W4DLVNO"_$$^W4MYDVN
 S FLCSV=FL_".csv"
 N A,B,I,J,RZD
 S RZD=","
 C FLCSV:(DELETE)
 ZSY "rm -f "_FLCSV
 ;;W "FLCSV="_FLCSV,!
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 U FLCSV
 W $$RKV("gewl 'qn")_$$RKV("gewl my")_$$RKV("zaezk")_$$RKV("mipetlh")_$$RKV("qwt")_$$RKV("l""`ec"),!
 ;
 S VRM=$$^W4MAIN("VRM")
 S N=999 F  S N=$O(@$$^W4GL("KLF")@(N)) Q:N=""  D
 .I $D(@VRM@(N)) Q
 .W $$RKV(N)_$$RKV($$LKH^W4L(N))_$$RKV($$KTV1^W4L(N))_$$RKV($$TEL^W4L(N))_$$RKV($$FAX^W4L(N))_$$RKV($$EMAIL^W4L(N)),!
 ;
 C FLCSV
 ;
 Q
 ;
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
RKV(VL)
 S VL=$$SPA^%L1FRM(VL)
 I VL="" G RKVE
 I $$ISNUM^%L1FRM(VL) G RKVE
 S VL=$TR(VL,","," ")
 S VL=$$^%W1D2U(VL)
RKVE ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_","
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVNPR
W4DLVNPR(JB) ; [ 06.03.26 08:02 ] [ 29.12.25 05:18 ] [ 28.12.25 11:46 ] 
 N (JB,%ARG,%REM)
 S NMB=$$GETP^%W1PRM("NMB")
 I 'NMB S NMB=$$NMB^W3HZMST(JB)
 ;
 I 'NMB Q 0
 ;
 I $$^W4MSD(NMB),'$$CSRMOUSE^W4PRM Q 0
 ;
 I '$$MOUSEORD Q 0
 Q 1
 ;
 ;
MOUSEORD(STAM) ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$TELEPHONE^W4PRM!$$NODLVORD^W4PRM!$$DLVMOUSE^W4PRM!$G(@$$^W4PRM@("DLVMOUSE",MYDVN)) Q 1
 Q 0
 
 
 
 
 

W4DLVNX
W4DLVNX ; [ 29.09.26 14:34 ] [ 
 N (JB,%ARG,%REM,%REPN,FMT,%W1LNG)
 S:'$D(FMT) FMT=0
 D ^%L1TS
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_"W4DLVNON"_$$^W4MYDVN
 S FLCSV=FL_".csv"
 N A,B,I,J,RZD
 S RZD=","
 C FLCSV:(DELETE)
 ZSY "rm -f "_FLCSV
 ;;W "FLCSV="_FLCSV,!
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 U FLCSV
 ;
 W $$RKV("gewl 'qn")_$$RKV("gewl my")_$$RKV("zaezk")_$$RKV("mipetlh")_$$RKV("l""`ec")_$$RKV("zepnfd"),!
 ;
 S VRM=$$^W4MAIN("VRM")
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S ORDS=$G(@VRM@(N,"QN"))
 .D PRS^%L1FRM(A,"LKH1~KTV~TEL~MAIL","~")
 .W $$RKV(N)_$$RKV(LKH1)_$$RKV(KTV)_$$RKV(TEL)_$$RKV(MAIL)_+ORDS,!
 ;
 C FLCSV
 ;
 Q
 ;
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
RKV(VL)
 S VL=$$SPA^%L1FRM(VL)
 I VL="" G RKVE
 S VL=$TR(VL,","," ")
 I $$ISNUM^%L1FRM(VL) G RKVE
 ;;S VL=$TR($$INVH^%L1FRM(VL),TS0,TS1)
 S VL=$TR(VL,","," ")
 S VL=$$^%W1D2U(VL)
RKVE ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_","
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVOR0
W4DLVORD(OPT) ; [ 29.05.19 08:43 ] [ 16.05.19 18:48 ] [ 08.05.19 07:00 ] 
 ; ===      OPT=PC     ===
 ; --- OPT=0 -- ; COPY PREV ORDER
 ;
 ; --- OPT=1 -- NO SUBMIT ORDER LIST FOR RESTAURANT ; w3rcvhd -> SbmRadio -> w3rcvord PC=1
 ; --- OPT=2 -- SUBMIT ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=2
 ; --- OPT=3 -- DELETE ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=3
 ; --- OPT=4 -- ALL ORDERS ( ELPOS )
 ;        WITH PHONE  - UNREGISTER CUSTOMER REPORT ; w3guest -> ShowStat -> w3rcvord (PC=4, PHONE,HOME)
 ;        WITH CODE - REGISTER CUSTOMER REPORT ; - w3member
 ;        WITHOUT CODE,PHONE  - RESTAURANT REPORT ; -- w3rcvhd -> SbmRadio -> w3rcvord PC=4
 ;-------------------------------------------------------
 N (JB,CODE,OPT,HOME,PHONE,%ARG,LKH,LKHR,SUGT,%REM)
 I '$G(JB) Q
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $D(@$$^W4GL("W4LINKDR"))<10 D CRLINKDR
 ;
 D CLRCOPY^W4MENU
 ;
 I $$SNDKTC D
 .K %ARG("DISPATH")
 .D KILL^%W1PRM("DISPATH")
 ;
 I $$TOMORROW D
 .N DT0 S DT0=$H+1
 .S %ARG("MEDAT")=$ZD(DT0,"DD.MM.YY")
 .N DT S DT=DT0
 .I $$^%L1DC(DT0,8)>5,$$SF^W4PRM D
 ..N DT1 F DT1=DT0:1:DT0+100 Q:$$^%L1DC(DT1,8)=1
 ..S DT=DT1
 .S %ARG("ADDAT")=$ZD(DT,"DD.MM.YY")
 .S %ARG("FUTUREORDS")=1
 ;
 D INIT
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$CUSTLASTORDS D  G TOTLAB
 .D INITVIB
 .N N,I,LK S LK=$$CUSTLASTORDS
 .S TXTMRQ=""
 .S FIRSTLINE=1
 .W "<br>"
 . N STYLE S STYLE="font-size:"_$$^W3FSZ(16)
 . I $$CUSTALL D
 . .D ^W4BUTTON("lastords","SHOWLASTORDS","CustLastOrders1('"_LK_"','0')",STYLE) 
 . I '$$CUSTALL D
 . .D ^W4BUTTON("allords","SHOWALLORDS","CustLastOrders1('"_LK_"','1')",STYLE) 
 .W "<br><br>"
 .D TBORD
 .D PUT^%W1PRM("CUSTLASTORDS",LK)
 .S N="",I=0 F  S N=$O(@$$^W4GL("W4LINKI")@(LK,MSD,N),-1) Q:N=""  I N D
 ..S I=I+1 I '$$CUSTALL,I>9 Q
 ..S W4DLVORD=N
 ..D SHOWORD(MSD,N,0)
 ;
 I $$MIKUM D
 .S %ARG("TIMESORT")=1
 .S %ARG("SHORTSHOW")=1
 .S %ARG("NOSENDEDORDS")=0
 .S %ARG("SENDEDORDS")=1
 .S %ARG("BIDS")=0
 .S %ARG("DELETEDORDS")=0
 .S %ARG("NOPAIDORDS")=1
 .S %ARG("PAIDORDS")=1
 .S %ARG("SHOWTAW")=0
 .S %ARG("ASCENDING")=0
 .S %ARG("FUTUREORDS")=0
 .S %ARG("SIK")=0
 ;
 I $$DISPATH D
 .S %ARG("NOSENDEDORDS")=1
 .I $G(%ARG("TIMESORT"))'=0 S %ARG("TIMESORT")=1
 .I $G(%ARG("ASCENDING"))'=0 S %ARG("ASCENDING")=1 
 .I $G(%ARG("SHORTSHOW"))'=0 S %ARG("SHORTSHOW")=1 
 .I $G(%ARG("DELETEDORDS"))="" S %ARG("DELETEDORDS")=0
 .I $G(%ARG("NOSENDEDORDS"))="" S %ARG("NOSENDEDORDS")=1
 .I $G(%ARG("NOPAIDORDS"))="" S %ARG("NOPAIDORDS")=1
 .I $G(%ARG("PAIDORDS"))="" S %ARG("PAIDORDS")=1
 .S %ARG("BIDS")=1
 .I $G(%ARG("SHOWTAW"))="" S %ARG("SHOWTAW")=1
 ;
 I '$$DISPATH D SETARG
 ;
 I $G(%ARG("NOSENDEDORDS"))=0 D
 .S %ARG("FUTUREORDS")=0
 .S %ARG("BIDS")=0
 ;
 I $$VIEWRCV G DIR
 ;
 I $$SHOW4COPY D  ; -- SHOW FOR COPY
 .W "<h2 style=""color:red;font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("CLICK4COPY")_"</h2>",!
 ;
 I '$$SHOW4COPY,'$$MY,'$$REPTRH D
 .;;W "<h2 style=""color:red"">"_$$T^%L1TIME($P($H,",",2))_"</h2>",!
 .N MEDAT,ADDAT,KOT,GLLINK
 .S MEDAT=$G(%ARG("MEDAT")),ADDAT=$G(%ARG("ADDAT"))
 .S GLLINK=$G(%ARG("GLLINK"))
 .I GLLINK="" D
 ..I MEDAT=ADDAT S KOT=$$^%W1DICT("ORDERSLIST2DAY",MEDAT)
 ..I MEDAT'=ADDAT S KOT=$$^%W1DICT("ORDERSLIST2PERIOD",MEDAT_"<>"_ADDAT)
 .I GLLINK="W4LINKDR" D
 ..I MEDAT=ADDAT S KOT=$$^%W1DICT("ORDERSRCV2DAY",MEDAT)
 ..I MEDAT'=ADDAT S KOT=$$^%W1DICT("ORDERSRCV2PERIOD",MEDAT_"<>"_ADDAT)
 .W "<h2 style=""color:brown"">"_KOT_"</h2>",!
 .I $$TOMORROW D 
 ..D BUTTON("printords1",$$^%W1DICT("PRINTALLORDSMDB"),"PrintAllOrds('1')","color:blue;font-size:"_$$^W3FSZ(16))
 ..W $$NBSP^%L1FRM(5)
 ..D BUTTON("printords2",$$^%W1DICT("PRINTALLORDSNOMDB"),"PrintAllOrds('0')","color:blue;font-size:"_$$^W3FSZ(16))
 ..I $$SF^W4PRM D
 ...W $$NBSP^%L1FRM(5)
 ...D BUTTON("printords3",$$^%W1DICT("PRINTALLKOTMDB"),"PrintAllKotMdb()","color:blue;font-size:"_$$^W3FSZ(16))
 ;
DIR ;
 S DRC=$S($G(%ARG("ASCENDING")):1,1:-1)
 ;
 S TXTMRQ=""
 S FIRSTLINE=1
 ;
 K @$$^W4MAIN("VIB")
 K @$$^W4MAIN("TMP")
 ;
 ;;I $G(%ARG("KNDO"))="BID" D
 .D ^W4BTN("SENDALLBID2MAIL","SendAllBid2Mail()")
 ;
 D CRVIB(1) ; -- PROYTI VES CYCL NE POKAZYVAYA
 ;
 I $$MY D
 .W "<table dir="""_$$^%W1DIR_""">"
 .W " <tr>"
 . W " <td style=""color:darkgreen;font-size:"_$$^W3FSZ(18)_""">"
 .  W $$SHOW^W4KOTMLZ($$MY,"12B")
 . W " </td>"
 .W " </tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 I $$REPTRH D KOTREPTRH
 ;
 I '$$VIEWRCV,'$$SNDKTC,'$$REPTRH D KOT
 ;
 I '$$REPTRH,'$$MIKUM D DIVPSL
 ;
 K @$$^W4MAIN("TMPIRTM")
 ;
 D TBORD
 ;
 I $E($G(%ARG("ORDER")))="W"!($E($G(%ARG("ORDER")))="w") D
 .N ORD S ORD=+$E(%ARG("ORDER"),2,20)
 .I $G(@$$^W4GL("HZLINKI")@(ORD)) S %ARG("ORDER")=$P(^(ORD),"\") Q 
 .S HZMLAK=$E($G(%ARG("ORDER")),2,12)
 .K %ARG("ORDER")
 ;
 I $G(%ARG("ORDER")) D  G TOTLAB ; -- SHOW ONE ORDER
 .N MSDHZ S MSDHZ=$P($G(@$$^W4GL("W4LINK")@(%ARG("ORDER"))),"~") Q:'MSDHZ
 .I $G(MSD),MSDHZ'=MSD Q
 .I $G(%ARG("MSDR")),'$D(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
 .N JB S W4DLVORD=%ARG("ORDER"),JB=W4DLVORD
 .D SHOWORD(MSDHZ,%ARG("ORDER"),0)
 ;
 ;
 I '$G(%ARG("SIK")) D CRVIB(0) ; -- PROYTI VES CYCL & POKAZAT
 ;
TOTLAB ;
 I '$$DISPATH,'$$VIEWRCV,'$$SNDKTC D TOT
 W "</table>",!
 ;
 W "<br />",!
 ;
 I '$$VIEWRCV,'$$REPTRH D BUTTONS
 ;
 W "</div>",!
 ;
 W "<br /><br /><br />",!
 ;
 ;K ^[$$^W3MAIN]TMPORD(JB)
 ;I $D(^[$$^W3MAIN]TMPORDB(JB)) D
 ;.M ^[$$^W3MAIN]TMPORD(JB)=^[$$^W3MAIN]TMPORDB(JB)
 ;
END Q
 ;
 ;
GLLINK(STAM) ;
 N GLLINK
 S GLLINK=$$^W4GL("W4LINKD")
 I $L($G(%ARG("GLLINK"))) S GLLINK=$$^W4GL(%ARG("GLLINK"))
 Q GLLINK
 ;
 ;
TBORD ;
 W "<table id=""TblOrd"" dir="""_$$^%W1DIR_""" class=""vw"" border=1 width=""100%"" >",!
 D KOTTB
 Q
 ;
INITVIB ;
 K SPAY,SHZ,SDMS,SNEW,SMKR,SHNH
 S (SPAY,SHZ,SDMS,SHNH,SNEW,SNEWDM,SNEWHN,SNEWPAY,SDEL,SSBM,SNOSHUD,SNOSBM,SNOSHUL,SNODLV)=0
 S (SPAYM,SHZM,SDMSM)=0 K SMSD,SCODTS
 Q
 ;
CRVIB(NOPC) ;
 N HZMH
 D INITVIB
 ;;S ^LV("W4DLVORD-CRVIB","NOPC")=$G(NOPC)
 I '$G(NOPC) G CRVIB1
 N SHAAGV S SHAAGV=$$SHAAGV
 ;
 ;;W "  MEDT="_$G(MEDT)_"  ADDT="_ADDT,! ; ***
 N DT
 I $G(MEDT),$G(ADDT) F DT=MEDT:1:ADDT+1 D
 .N DTTO,SHAA,SL,N
 .S N="" F  S N=$O(@$$GLLINK@(DT,N)) Q:N=""  D
 ..I '$$MSL^W4MSL(N) Q
 ..S DTTO=$$^%L1DC($$TRH^W4HZMST(N),3)
 ..S SHAA=$$SHAA^W4HZMST(N)
 ..
 ..I $G(%ARG("GLLINK"))="W4LINKDR" D
 ...S DTTO=$$^%L1DC($P($$DATCB^W4HZMST(N),"  "),3)
 ...S SHAA=$P($$DATCB^W4HZMST(N),"  ",2)
 ..
 ..I DTTO>ADDT,$$SHAA^W4HZMST(N)'<$$SHAAGV Q
 ..I 'DTTO S DTTO=$$^%L1DC($P($$DATCB^W4HZMST(N)," "),3)
 ..I $$DISPATH!$$SNDKTC,DTTO<P1DZ!(DTTO>($H+1)) Q
 ..I $$DISPATH!$$SNDKTC,DTTO<P1DZ!(DTTO=($H+1)&(SHAA'<SHAAGV)) Q
 ..I $$DISPATH!$$SNDKTC,DTTO=P1DZ,SHAA<SHAAGV Q
 ..I DTTO=MEDT,SHAA<SHAAGV,SHAA'="00:00" Q
CRVIBM .. ;
 ..N MN S MN=$TR($J(SHAA*60+$P(SHAA,":",2),4)," ",0)
 ..I '$G(%ARG("TIMESORT")) S @$$^W4MAIN("TMP")@(999999999_$J(N,9))=""
 ..I $G(%ARG("TIMESORT")) D
 ...I $$MIKUM S SL=$$PSL^W4HZMST(N) Q:'SL
 ...I $$MIKUM S @$$^W4MAIN("TMP")@(SL_"^"_DTTO_MN_"^"_$J(N,9))="" Q
 ...S @$$^W4MAIN("TMP")@(DTTO_MN_$J(N,9))=""
 ;
 ;;W "   T2="_$H
 ; 
 I $$REPTRH=3,$G(MEDT),$G(ADDT) F DT=MEDT:1:ADDT D
 .N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..Q:$$HZM^W4MSL(HZ)
 ..S @$$^W4MAIN("TMP")@(999999999_$J(HZ,9))=""
 ;
 K MPSL
 S N="" F  S N=$O(@$$^W4MAIN("TMP")@(N),DRC) Q:N=""  D
 .N HZ S HZ=$$HZ(N)
 .D VIB(N,HZ,$G(NOPC))
 ;;W "   T3="_$H
 Q
 ;
 ;
MIKUM(STAM) ; 
 Q $G(%ARG("MIKUMSL"))
 ;
HZ(N) ;
 N HZ S HZ=$TR($E(N,10,20)," ","")
 I $$MIKUM S HZ=$$SPA^%L1FRM($P(N,"^",3))
 Q HZ
 ;
CRVIB1 ;
 S FIRSTLINE=1
 N A,IND,N,MSDHZ,W4DLVORD
 ;;S ^LV("W4DLVORD-CRVIB1")=$G(NOPC)
 S IND="" F  S IND=$O(@$$^W4MAIN("VIB")@(IND),DRC) Q:IND=""  D
 .S N=$$HZ(IND)
 .S A=$G(@$$^W4GL("W4LINK")@(N))
 .S MSDHZ=$P(A,"~")
 .S W4DLVORD=N
 .D SHOWORD(MSDHZ,N,0)
 ;
 Q
 ;
 ;
VIB(FULLIND,N,NOPC) ;
 N A,MSDHZ,HZMH,HZ
 S HZMH=$$^W4HZMH(N)
 ;
 S A=$G(@$$^W4GL("W4LINK")@(N))
 ;
 S MSDHZ=$P(A,"~")
 I $$^W4MM S MSDHZ=$P(A,"~",5)
 ;
 I $$REPTRH=3,$$HZM^W4MSD(N) G VIBSHOW1
 I 'MSDHZ G VIB1
 ;
 I $G(MSD),MSDHZ'=MSD Q
 ;
 D D(1)
 I $G(%ARG("REST")),MSDHZ'=%ARG("REST") Q
 D D(2)
 ;
 I $G(%ARG("MSDR")),MSDHZ,'$G(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
VIB1 ;
 D D(3)
 S W4DLVORD=N ;;N JB S JB=N
 N CODEHZ S CODEHZ=$$NMB^W4HZMST(N)
 ;
 I $G(MKBL),MKBL'=$$MKBL^W4HZMST(N) Q
 I $G(SLH),SLH'=$$PSL^W4HZMST(N) Q
 D D(4)
 S LKHR=$G(LKHR)
 ;
 I $G(LKH),'$D(@$$^W4GL("LKH")@(LKH)) D
 .N LK S LK=$O(@$$^W4GL("KLLKTH")@(LKH,""))
 .I LK,$D(@$$^W4GL("LKH")@(LK)) S LKH=LK
 ;
 I $G(LKH),$$^W4ISCDLK(LKH),CODEHZ'=$P($$SPA^%L1FRM(LKH)," ") Q
 D D(5)
 ;
 I $G(LKHR),$$^W4ISCDLK(LKHR),$G(CODEHZ),LKHR'=$G(@$$^W4GL("P1EZL")@(CODEHZ)) Q
 D D(6)
 ;
 I $G(SUGT),$$CODTS^W4HZMST(N)'=SUGT Q
 D D(7)
 ;
 S IR=$$IR^W4HZMST(N) I $$HZM^W4MSL(N),IR="" S IR="TAKEAWAY"
 I $L($G(%ARG("IR"))),$G(%ARG("IR"))'="ALL",IR'=$$INVH^%L1FRM(%ARG("IR")) Q
 D D(8)
 ;
 S CUSTOM=$G(CUSTOM)
 ;;I $L(CUSTOM),$TR(CUSTOM,"-","")'?1N.N,$G(NAME)="" S NAME=CUSTOM,CUSTOM=""
 I $L($G(NAME)),'$$SRCH^W1SRCH($$NAME^W4HZMST(N),NAME),'$$SRCH^W1SRCH($$MAZMIN^W4HZMST(N),NAME) Q
 D D(9)
 ;
 I $L($G(COMP)),'$$SRCH^W1SRCH($$COMP^W4HZMST(N),COMP) Q
 D D(10)
 ;
 I $L($G(TELB)),$TR(TELB," -","")'=$TR($$TELB^W4L(CODEHZ)," -",""),$TR(TELB," -","")'=$TR(CODEHZ," -","") Q
 D D(11)
 ;
 I $L($G(PELE)),$TR(PELE," -","")'=$TR($$PELE^W4L(CODEHZ)," -",""),$TR(PELE," -","")'=$TR(CODEHZ," -","") Q
 D D(12)
 ;
 I $G(MKR)?1N.N,MKR'=99,MKR'=$$MKRDLV^W4HZMST(N) Q
 I $G(MKR)=99,$$MKRDLV^W4HZMST(N)'="",$$MKRDLV^W4HZMST(N)'=99 Q
 D D(12.5)
 N TSHL S TSHL=$$TSHL^W4HZMST(N)
 I $G(MESUM),TSHL<MESUM Q
 D D(13)
 ;
 I $G(ADSUM),TSHL>ADSUM Q
 D D(14)
 ;
 N HZMLAKHZ S HZMLAKHZ=$$HZMLAK^W4HZMST(N) S:$E(HZMLAKHZ)="W" HZMLAKHZ=$E(HZMLAKHZ,2,10)
 I $G(HZMLAK)'="",HZMLAK'=HZMLAKHZ,HZMLAK'=+$$HRAED^W4HZMST(N),HZMLAK'=$$INVH^%L1FRM(HZMLAKHZ) Q
 D D(15)
 ;
 I $TR(CUSTOM,"-","")?1N.N,CUSTOM'=$$NMB^W4HZMST(N) Q
 I $L(CUSTOM),$TR(CUSTOM,"-","")'?1N.N,'$$SRCH^W1SRCH($$NAME^W4HZMST(N),CUSTOM),'$$SRCH^W1SRCH($$MAZMIN^W4HZMST(N),CUSTOM) Q
 ;
 I $G(NCA),'$$CMPR(N,NCA) Q
 D D(16)
 ;
 I $G(OPT)=1,$$SENDEDORD(N)!$$DELORD(N) D D(16.1) Q  ;-- WAITING
 ;
 I $G(%ARG("SUGTS")),%ARG("SUGTS")'=$$CODTS^W4HZMST(N) D D(16.5) Q
 ;
 I $$DISPATH,$$TAW,'$$TAKEAWAY^W4HZMST(N) Q
 I $$DISPATH,$$PIZUL(N) Q
 ;
 I '$$TAW,'$G(%ARG("SHOWTAW")),$$TAKEAWAY^W4HZMST(N) Q
 ;
 I $$KNDO="NSND",$$SENDEDORD(N) Q
 I $$KNDO="SND",'$$SENDEDORD(N) Q
 I $$KNDO="FTR",'$$FUTURE(N) Q
 I $$KNDO="DEL",'$$DELORD(N) Q
 I $$KNDO="TAW",'$$TAKEAWAY^W4HZMST(N) Q
 I $$KNDO="BID",'HZMH Q
 I $$KNDO="PD",$$NOSHUL(N) Q
 I $$KNDO="NPD",'$$NOSHUL(N) Q
 I $$KNDO="TBIDS",'HZMH Q
 ;
 I '$G(%ARG("DELETEDORDS")),$$DELORD(N),'$G(%ARG("NCA")) D D(19.5) Q
 ;
 I $G(%ARG("FUTUREORDS")),$$FUTURE(N),'$$DELORD(N),'HZMH G VIBSHOW
 ;
 ;;I $G(%ARG("SHOWTAW")),$$TAKEAWAY^W4HZMST(N),'$$DELORD(N),'HZMH,'$$DISPATH G VIBSHOW
 ;
 I $G(%ARG("DELETEDORDS")),$$DELORD(N) G VIBSHOW
 ;
 ;;I $G(%ARG("BIDS")),HZMH,'$$DELORD(N) G VIBSHOW
 ;
 I '$G(%ARG("SENDEDORDS")),'$G(%ARG("ALLORDS")),$$SENDEDORD(N),'$$DELORD(N),'HZMH D D(16.2) Q
 I '$G(%ARG("NOSENDEDORDS")),'$$SENDEDORD(N),'$$DELORD(N),'HZMH D D(16.3) Q
 
 D D(17)
 ;
 I $G(OPT)=2,'$$SENDEDORD(N)!$$DELORD(N) D D(18) Q  ; -- SUBMIT
 I $G(OPT)=3,'$$DELORD(N) D D(19) Q  ; -- DELETE
 ;
 D D(19.6)
 I $$SNDKTC,$$KINDORD="NOSENDED",$$SNDKTCORD(N) D D(19.8) Q
 ;
 I '$G(%ARG("NOPAIDORDS")),$$NOSHUL(N),'$$DELORD(N),'HZMH Q
 I '$G(%ARG("PAIDORDS")),'$$NOSHUL(N),'$$DELORD(N),'HZMH Q
 ;
 D D(21)
 ;
 N DATHZ S DATHZ=$$DTHZ(N)
 ;;W "N="_N_"  MEDT="_MEDT_" ADDT="_ADDT_" DATHZ="_DATHZ_" CODEHZ="_CODEHZ_"<br />",!
 I $G(MEDT),DATHZ<MEDT Q
 D D(23)
 ;
 I $G(ADDT),DATHZ>ADDT Q
 D D(24)
 ;
 I '$G(%ARG("FUTUREORDS")),$$FUTURE(N),'$$DELORD(N) Q
 ;
 D D(25)
 I '$G(%ARG("BIDS")),HZMH Q
 ;
 D D(26)
VIBSHOW ; 
 N DATHZ S DATHZ=$$DTHZ(N)
 I $G(MEDT),DATHZ<MEDT Q
 I $G(ADDT),DATHZ>ADDT Q
 N PSL
 D D(27)
 I $$MIKUM S PSL=+$P(FULLIND,"^") I $D(MPSL(PSL)) D D(28) Q
VIBSHOW1 ;
 D SHOWORD(MSDHZ,N,NOPC)
 ;
 N SHAA,MN S SHAA=$$SHAA^W4HZMST(N)
 S MN=10000+$TR($J(SHAA*60+$P(SHAA,":",2),4)," ",0)
 S @$$^W4MAIN("VIB")@(FULLIND)=""
 I $G(PSL) S MPSL(PSL)=""
 ;
 Q
 ;
SENDEDORD(HZ) ;
 I $$PSL^W4HZMST(HZ) Q 1
 I $$PIZUL(HZ) Q 1
 Q 0
 ;
DELORD(HZ) ;
 I $$DEL^W4DEL(HZ) Q 1
 I $$TSHL^W4HZMST(HZ)<0 Q 1
 ;;I $$DTHZ(HZ)<$$^W4DZ,'$$SENDEDORD(HZ),$$NOSHUL(HZ),'$$NIGHT^W4PRM Q 2
 I $D(@$$^W4ORD@(HZ))'=11 Q 3
 Q 0
 ;
FUTURE(N) ;
 N DATHZ S DATHZ=$$DTHZ(N)
 I DATHZ>$H Q 1
 Q 0 
 ;
SHAAGV(STAM)
 I '$$^W4SHAAZ Q 5
 Q $$SHAAZ^W4PRM
 ;
FAXORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"F")) Q 1
 Q 0
 ;
HZMH(HZ) ;
 I $$^W3PRCOFR(HZ) Q 1
 Q 0
 ;
MOUSEOVER ;
 N PRMHZ S PRMHZ=N_"~"_$G(MEDT)_"~"_$G(ADDT)_"~"_$G(LKH)
 W " onMouseOver=""ChangeCursor(this)"" onClick=""ShowOrd('"_N_"','"_PRMHZ_"',1)""",!
 Q
 ;
 ;
SHOWORD(MSD,N,NOPC) ;
 ;;S ^LV("W4DLVORD-SHOWORD0",N)=$G(NOPC)
 N HZMH,PSL,MPSL S HZMH=$$^W4HZMH(N)
 D GL
 I $D(@GL@(N))<11 Q
 D D(29)
 S N=$TR(N," ","")
 ;
 ;;S ^LV("W4DLVORD-SHOWORD",N)=$G(NOPC)
 ;
 N DAT,SHAA,IR ;;,JB S JB=N
 S DAT=$$TRH^W4HZMST(N)
 S SHAA=$$SHAA^W4HZMST(N)
 S IR=$$IR^W4HZMST(N)
 N CMHD S CMHD=$$HRA2^W4HZMST(N)
 ; --------- ORDER NUMBER ---------
 ;
 D COMPTOT(N)
 ;
 I $G(NOPC) D  Q  ; -- PREPAIR BEG STROKA
 .D:$L(CMHD)
 ..I CMHD?1N.N1":10B".P Q
 ..I CMHD["dpnfd lehia" Q
 ..I CMHD[":10B" S CMHD=$P(CMHD,":10B",2,20)
 ..I $$^%L1DC($$TRH^W4HZMST(N),3)'=+$H Q
 ..N SHAA S SHAA=$$SHAA^W4HZMST(N)
 ..I $$DELORD(N) Q
 ..I SHAA*60+$P(SHAA,":",2)<($P($H,",",2)/60) Q
 ..N TXT S TXT=" "_N_" : "_$$H2U^%L1FRM(CMHD)_" ******"
 ..S TXTMRQ=TXTMRQ_TXT
 ;
 ;
 I FIRSTLINE,$L(TXTMRQ),$G(OPT) D  ; -- SHOW BEG STROKA
 .W "<tr><td colspan=""4"">"
 .W "<marquee scrolldelay=""120"" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""background-color:yellow;color:black;font-size:"_$$^W3FSZ(12)_";width:100%;"_$$FONTFM^W3CSS_";font-weight:bold;border:solid 1px brown"" >"
 .W TXTMRQ
 .W "</marquee>",!
 .W "</td>"
 .W "</tr>",!
 .S FIRSTLINE=0
 ;
 ;;W N,!
 ;----------------------------------- SHOW LINE ----------
 W "<tr" ; --- CHOICE LINE COLOR
 N FGCOLOR
 D BGCOLOR(N)
 W " id=""ord"_N_""""
 W " >"
  ;
  ;--- COLUMN 1 ( ORDER NUMBER + SIGN FOR DELIVERING )
  W "<td style=""text-align:center;font-size:"_$$^W3FSZ(14)
    I $G(%ARG("CUR"))=N W ";border:2px brown solid"
   W """ "
   W " id=""tdord"_N_""" "
   ;;W "  onClick=""OrdClick('"_N_"')"" onMouseUp=""ClrCook('"_N_"')"" "
   W ">"
   W "&nbsp;"_W4DLVORD_"&nbsp;"
   ;
   I $$DISPATH,'$$SENDEDORD(N),'$$DELORD(N),'HZMH D CHKSND(N)
   ;
   I $$SNDKTC,'$$SNDKTCORD(N),'$$DELORD(N) D CHKSND(N)
   ;
   I '$$DELORD(N),'$$MIKUM D
   .W "<br>",!
   .W "&nbsp;" D MSGTM(DAT,SHAA,IR,N)
   ;
   I $$MIKUM D
   .N PSL S PSL=$$PSL^W4HZMST(N) Q:'PSL
   .W "<BR><span style=""font-size:"_$$^W3FSZ(10)_";color:darkblue;font-weight:bold"" >"
   .W $$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))_"</span>"
   ;
  W "</td>",!
  ;
  ;---------------- COLUMN 2 - ORDER DETAILS
  W "<td "
  I $$NEW(N,MSD) W " style=""border:solid red 2px"""
  D MOUSEOVER
  W ">",! ;
   S %ARG("W4DLVORD")=W4DLVORD
   D ^W4ORDHD(W4DLVORD,$$SHORTSHOW)
  W "</td>",!
  ;
  ; ---------------- COLUMN 3 - TOTAL & PAYMENT KIND
  W "<td "
   I '$$DELORD(N) D
   .W "style=""text-align:center;font-size:"_$$^W3FSZ(14)_";color:red"
   .I $$NOSHUL(N) W ";background-color:pink"
   .I '$$NOSHUL(N) W ";background-color:white"
   .W """ "
  W " >",!
   ;
   W "&nbsp;"_$J($$TSHL^W4HZMST(N),2,2)_"&nbsp;<br />"
   ;
   N SHULS S SHULS=$$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N)
   N CODTS S CODTS=$$CODTS^W4HZMST(N)
   N ITRA S ITRA=$$ITRA^W4HZMST(N)
   ;
   I SHULS D
   .W "<span id=""paid"_N_""" style=""font-size:"_$$^W3FSZ(10)_";color:black"">"
   . W $$SHOWPAID(N)
   .W "</span>"
   .
   .I CODTS=4,$D(@$$^W4ORD@(N,"TB"))>9 S CODTS=7
   .
   .W "<br>"
   .W "<span style=""color:red;font-size:"_$$^W3FSZ(8)_""">"
   .D
   . N MZM,CA,ASR
   . S MZM=$$MZM^W4HZMST(N)
   . S CA=$$CA^W4HZMST(N)
   . S ASR=$$ASR^W4HZMST(N)
   . I MZM W $$^W3SHOWTS(1)_" "_$J(MZM,2,2)_"<br>"
   . I CA W $$^W3SHOWTS(3)_" "_$J(CA,2,2)_"<br>"
   . I ASR W $$^W3SHOWTS(4)_" "_$J(ASR,2,2)_"<br>"
   .W "</span>"
   .
   .I ITRA D
   ..W "<br>"
   ..N BGC,FGC S BGC="darkred",FGC="white"
   ..W "<span style=""background:"_BGC_";color:"_FGC_";font-size:"_$$^W3FSZ(11)_";font-weight:bold"" >"
   .. W "&nbsp;"_$$^%W1DICT("ITRA")_" "_$J($$ITRA^W4HZMST(N),2,2)_"&nbsp;"
   ..W "</span>"
   ;W "&nbsp;"_$$^W3SHOWTS($$CODTS^W4HZMST(N))
   ;
   I 'SHULS,CODTS<5,ITRA,'HZMH D
   .I '$G(%ARG("SGYOM")) D
   ..N BGC,FGC S BGC="darkred",FGC="white"
   ..I CODTS=4 S BGC="pink",FGC="black"
   ..W "<span style=""background:"_BGC_";color:"_FGC_";font-size:"_$$^W3FSZ(11)_";font-weight:bold"" >"
   ..N PAYMKIND S PAYMKIND=$$PAYMKIND^W4PAYBT(CODTS)
   ..IF PAYMKIND="" S PAYMKIND="PAYMINLOCAL"
   ..W "&nbsp;"_$$^%W1DICT(PAYMKIND)_"&nbsp;"
   ..W "</span>"
   . 
   .I $G(%ARG("SGYOM")),'$$DELORD(N) D
   .. W "<span id=""paid"_N_""" style=""color:black;font-size:"_$$^W3FSZ(10)_""">"
   .. W "&nbsp;<input id=""paycash"_N_""" type=""button"" value="""_$$^%W1DICT("PAYCASH")_""" "
   .. W " style=""font-size:"_$$^W3FSZ(16)_""" "
   .. W " onMouseUp=""PayCash('"_N_"')"" />"
   .. W "</span>",!
  W "</td>",!
  ;
  ; ---------------- COLUMN 4 - READY
  I '$$SGYOM,'$$SNDKTC,'$$REPTRH D
  .W "<td align=""center"" id=""ready"_N_""" "
  . I $$HESH^W4HZMST(N) W " style=""border:red 2px solid"" "
  .W ">"
  . W "<input id=""chkready"_N_""" type=""checkbox"" "
  . W " style=""display:none"" "
  . I $$READY(N) W "  checked=""checked"" "
  . W "  onClick=""ClickReady('"_N_"',this)"" />"
  . W "<label id =""lbready"_N_""" for=""chkready"_N_""">"
  .  N RZ S RZ=35
  .  I '$$READY(N) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
  .  I $$READY(N) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
  . W "</label><br>"
  . W "<span id=""timeready"">"_$$TIMEREADY(N)_"</span>"
  . I 'HZMH,'$$DELORD(N) D
  .. D PRINTDOC
  .I $$I^W4PIZUL(N) D
  .. W "<span style=""color:brown;font-weight:bold"">"_$$^%W1DICT("PIZULOF")_"<BR>"_$$I^W4PIZUL(N)_"</span>"
  .W "</td>",!
  ;
  ; ---------------- COLUMN 5 - SENDED TIME
  W "<td dir=""LTR"" style=""text-align:center;font-weight:bold;font-size:"_$$^W3FSZ
   I $$DELORD(N) W ";background-color:black;color:red"
   I +$$DTHZ(N)=+$H,'$$SENDEDORD(N) D
   . W ";background-color:pink"
  W """>"
  ;
  I '$$SNDKTC D
  .I '$$SENDEDORD(N),'$$DELORD(N) D
  ..S ZMANS=$S($$TAKEAWAY^W4HZMST(N):$$^%W1DICT("TAKEAWAY!"),1:$$^%W1DICT("WAITING"))
  .;
  .I $$SENDEDORD(N) D
  ..I $$PIZUL(N) S ZMANS=$$^%W1DICT("PIZUL") D  Q
  ...N HZ S HZ="" F  S HZ=$O(@$$^W4GL("W4PIZUL")@(N,HZ)) Q:HZ=""  I HZ D
  ....S ZMANS=ZMANS_"<br><span style=""color:brown;font-size:"_$$^W3FSZ(10)_""">"_HZ_"</span>"
  ..N PSL S PSL=$$PSL^W4HZMST(N) Q:'PSL
  ..S ZMANS=$$ZMANS^W4HZMST(N)_"<br>"
  ..S ZMANS=ZMANS_"<span style=""font-size:"_$$^W3FSZ(10)_";color:darkblue"" >"
  ..S ZMANS=ZMANS_$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))_"</span>"
  ;
  I $$SNDKTC D
  .I '$$SNDKTCORD(N),'$$DELORD(N) D
  ..S ZMANS=$$^%W1DICT("WAITING")
  .;
  .I $$SNDKTCORD(N) D
  ..S ZMANS=$G(@$$^W4ORD@(N,"SNDKTC")) Q:'ZMANS
  ..S ZMANS=$ZD(ZMANS,"24:60")
  ;
  I '$$DELORD(N) W ZMANS
  ;
  I $$DELORD(N) D  Q
  .W "&nbsp;"
  .D
  ..I $$DELORD(N)=2 W $$^%W1DICT("DATEOVER") Q
  ..W $$^%W1DICT("ORDERDELETEBY",$P($G(@$$^W4GL("W4LINK")@(N)),"~",5))
  ;
  W "</td>",!
  ;
  W "</tr>",!
 Q
 ;
 ;
CHKSND(N) ;
 W "<input id=""chk"_N_""" type=""checkbox"" "
  W "  onClick=""ChkClick('"_N_"')"" style=""display:none"" "
 W "/>"
 W "<label id=""lbsnd"_N_""" for=""chk"_N_""" >"
  W "<img src=""w4chkboxn.png"" />"
 W "</label>"
 Q
 ;
NEW(HZ,MSD) ;
 I $G(HZ)="" Q 0
 N LKH S LKH=$$NMB^W4HZMST(HZ)
 I $G(LKH)="" Q 0
 I $G(MSD)="" Q 0
 I $O(@$$^W4GL("W4LINKI")@(LKH,MSD,HZ),-1)="" Q 1
 Q 0
 ;
MSGTM(DAT,SHAA,IR,ORD) ;
 N PER S PER=$$PERIOD(DAT,SHAA,IR)
 I PER=0,'$$SENDEDORD(ORD) W "<span style=""color:red"">"_$$^%W1DICT("NOW!")_"</span>"
 I PER=1 W $$^%W1DICT("TODAY")
 I PER=-1 Q
 I PER=2 W $$^%W1DICT("FUTURE")
 Q
 ;
PERIOD(DAT,SHAA,IR)
 N TVAH
 S TVAH=$$THZ^W3TIME(IR)
 I 'TVAH S TVAH=60
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)<TVAH Q 0
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)>TVAH Q 1
 I $$^%L1DC(DAT,3)<+$H Q -1
 I $$^%L1DC(DAT,3)>+$H Q 2
 Q ""
 ;
MIN(SHAA) ;
 Q $P(SHAA,":")*60+$P(SHAA,":",2)
 ;
 ;
SELNAME(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 ;
 D SEDER(GR)
 N NXT S NXT=$O(^[$$^W3MAIN]TMP(JB,""))
 I NXT="" Q
 N PR1 S PR1=0
 S NXT=$O(^[$$^W3MAIN]TMP(JB,NXT))
 I NXT="" S PR1=1
 ;
 W "<select id=""nmid"""
 I $D(W3BOR) W " onChange=""ChangeRest()"""
 W ">",!
 I 'PR1 D
 .W "<option value=""ALL"""
 .I '$G(%ARG("MSD")) W " selected=""selected"""
 .W ">"_$$^%W1DICT("ALL")_"</option>",!
 N N S N="" F  S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D
 .D SELNAME1(N,^(N))
 W "</select>",!
 K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
SELNAME1(INVMSD,MSD) ;
 Q:$G(INVMSD)=""
 N VL S VL=$$H2U^%L1FRM($$INV^%L1FRM(INVMSD))
 W "<option value="""_MSD_""""
 I $G(%ARG("MSD")),MSD=%ARG("MSD") W " selected=""selected"""
 W ">"
 W MSD_" "_VL
 W "</option>",!
 Q
 ;
SEDER(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 N N,NS D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSDR(GR,N)) Q:N=""  D
 ..I $G(^(N)) D CRTMP(N)
 Q
 ;
DTHZ(ORD) ;
 N DTHZ S DTHZ=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 N SHAA S SHAA=$$SHAA^W4HZMST(ORD)
 I '$$NIGHT^W4PRM,SHAA<$$SHAAGV S DTHZ=DTHZ-1
 ;
 I $G(%ARG("GLLINK"))="W4LINKDR" D
 .S DTHZ=$$^%L1DC($P($$DATCB^W4HZMST(ORD),"  "),3)
 .I '$$NIGHT^W4PRM,SHAA<$$SHAAGV S DTHZ=DTHZ-1
 .S SHAA=$P($$DATCB^W4HZMST(ORD),"  ",2)
 ;
 I DTHZ Q DTHZ
 Q $$^W4DZ
 ;
 ;
CRTMP(MSD) ;
 N INV,NM
 S NM=$G(^[$$^W3MAIN]W3MSD(MSD))
 S INV=$$INV^%L1FRM(NM) Q:INV=""
 S ^[$$^W3MAIN]TMP(JB,INV)=MSD
 Q
 ;
STAT(KOT,VL,PR)
 I 'VL W "<td width=""2%"">&nbsp;</td>" Q
 ;
 W "<td style="""_$$FONTFM^W3CSS_";width:16%;color:"_$S($G(PR):"black",1:"gray")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W $$^%W1DICT(KOT)_" : "
 W "&nbsp;<span style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W VL_"</span></td>"
 Q
 ;
D(C) ;
 S ^D(N)=C
 ;;W "N="_N_"  C="_C_" "_$H_"   ",!
 Q
 ;
INIT ;
 K ^D
 D KILL^%W3DEB("W4DLVORD")
 D KILL^%W1PRM("PSL")
 S MSD=$$GETP^%W1PRM("MSD")
 D ^%W1ARG
 I $G(%ARG("MSDR")) K MSD
 S MKBL=$G(MKBL)
 I $$MY S MKBL=$G(%ARG("MY"))
 I $$DISPATH D PUT^%W1PRM("DISPATH",$$DISPATH)
 I $$SNDKTC D PUT^%W1PRM("SNDKTC",$$SNDKTC) D KILL^%W1PRM("DISPATH")
 D ^W4IN ; --> P1DZ
 ;
 I $G(%ARG("MEDAT")) S MEDT=$$^%L1DC(%ARG("MEDAT"),3)
 I $G(%ARG("ADDAT")) S ADDT=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 I '$G(MEDT) S MEDT=P1DZ I $$DISPATH!$$SNDKTC S MEDT=P1DZ-60
 I '$G(ADDT) S ADDT=P1DZ+180
 ;
 D PUT^%W3DEB("W4DLVORD","OPT=OPT & MEDT=MEDT & ADDT=ADDT & MSD=MSD & CODE=CODE & LKHR=LKHR & ARG=[%ARG")
 ;
 S W4DLVORD("JB")=JB
 ;
 S GL=$$^W4ORD
 ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 S PRMDB=0
 N N S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  I $$PRINTIG^W3PRMDP(N)[">" S PRMDB=1 Q
 ;
 I $G(%ARG("KNDO"))="DEL" S %ARG("DELETEDORDS")=1
 Q
 ;
KOT ;
 W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td width=""6%""><b>"_$$^%W1DICT("TOTAL")_"</b></td>",!
   D STAT("ORDERQN",SHZ,1)
   D STAT("NEWCLIENTS",SNEW,1)
   D STAT("WAITING",SNOSBM,1)
   D STAT("NOSENDED",SNOSHUD,1)
   D STAT("NOPAID",SNOSHUL,1)
   D STAT("NODLV",SNODLV,1)
   D STAT("TOPAY",$J($G(SPAY),2,2),1)
  W "</tr>",!
 W "</table>",!
 Q
 ;
KOTTB ;
 W "<tr>",!
 W "<th width=""8%"">"_$$^%W1DICT("ORDERNUMBER")_"</th>"
 W "<th width=""70%"">"_$$^%W1DICT("CUSTOMERDETAILS")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("TOTAL")_"</th>"
 I $G(OPT) D
 .I '$$SGYOM,'$$SNDKTC,'$$REPTRH D
 ..W "<th width=""8%"">"_$$^%W1DICT("READY?")_"</th>"
 .W "<th width=""10%"">"_$$^%W1DICT("SENDEDTIME")_"</th>"
 W "</tr>",!
 Q
 ;
TOT ;
 W "<tr"
 W " style=""font-size:"_$$^W3FSZ(20)_";background-color:yellow"""
 W ">"
  W "<td>&nbsp;"
  W $$^%W1DICT("TOTAL")
  W "</td>",!
  ;
  W "<td>",!
   W "<table width=""100%"">"
    W "<tr style=""font-size:"_$$^W3FSZ(20)_""">",!
     W "<td width=""50%"" style=""color:red"">",!
      W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SHZ)
     W "</td>",!
     W "<td style=""text-align:center"" >"
      W "<span style='color:red;font-size:"_$$^W3FSZ(14)_"'>"_$$^%W1DICT("DISCOUNTS")_"&nbsp;:&nbsp;"_$J(SHNH,2,2)_"</span>"_$$NBSP^%L1FRM(5)
      W "<span style='color:green;font-size:"_$$^W3FSZ(14)_"'>"_$$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SDMS,2,2)_"</span>"
     W "</td>",!
    W "</tr>"
   W "</table>"
  W "</td>",!
  ;
  W "<td style=""color:red"" colspan=""3"">",!
   W "&nbsp;"_$J($G(SPAY),2,2)_"&nbsp;"
  W "</td>",!
  ;
 W "</tr>",!
 ;
 ;
 I $G(SNEW),'$$REPTRH D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:#fafad2"""
 .W "><td>&nbsp;"
 .W $$^%W1DICT("NEWCLIENTS")
 .W "</td>",!
 .W "<td style=""color:brown"">",!
 .W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_""">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SNEW
 .W "</td><td style='text-align:center;color:red;font-size:"_$$^W3FSZ(14)_"'>"
 .W $$^%W1DICT("DISCOUNTS")_"&nbsp;:&nbsp;"_$J(SNEWHN,2,2)
 .W "</td>",!
 .W "<td style='text-align:center;font-size:"_$$^W3FSZ(14)_"'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SNEWDM,2,2)
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td style=""color:brown"" colspan=""2"">",!
 .W "&nbsp;"_$J(SNEWPAY,2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 I $O(SMSD($O(SMSD(""))))'="" N RST S RST="" F  S RST=$O(SMSD(RST)) Q:RST=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:white;color:green"""
 .W "><td>&nbsp;"
 .W $$NAME^W3MSD(RST)
 .W "</td>",!
 .W "<td>",!
 .W "<table width=""100%""><tr style=""font-size:"_$$^W3FSZ(16)_";color:green"">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMSD(RST,"Q"))
 .W "</td><td style='text-align:center'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J($G(SMSD(RST,"D")),2,2)
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td colspan=""2"">",!
 .W "&nbsp;"_$J($G(SMSD(RST,"S")),2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 I '$$REPTRH N SUGT S SUGT="" F  S SUGT=$O(SCODTS(SUGT)) Q:SUGT=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:lightblue;color:darkblue"""
 .W ">"
 .W " <td>&nbsp;"
 .W $$^W3SHOWTS(SUGT)
 .W " </td>",!
 .W " <td>",!
 .W "  <table width=""100%"">"
 .W "   <tr style=""font-size:"_$$^W3FSZ(16)_";color:darkblue"">",!
 .W "    <td width=""50%"">",!
 .W "       &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SCODTS(SUGT,"Q"))
 .W "    </td>",!
 .W "    <td style='text-align:center'>"
 .W "    </td>",!
 .W "   </tr>",!
 .W "  </table>",!
 .W " </td>",!
 .W " <td colspan=""2"">",!
 .W "  &nbsp;"_$J($G(SCODTS(SUGT,"S")),2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
 ;
 N MKR I '$$REPTRH S MKR="" F  S MKR=$O(SMKR(MKR)) Q:MKR=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:orange;color:darkbrown"""
 .W ">"
 .W " <td>&nbsp;"
 .W $$^W3MKR(MKR)
 .W " </td>",!
 .W " <td>",!
 .W "  <table width=""100%"">"
 .W "   <tr style=""font-size:"_$$^W3FSZ(16)_";color:darkbrown"">",!
 .W "    <td width=""50%"">",!
 .W "       &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMKR(MKR,"Q"))
 .W "    </td>",!
 .W "    <td style='text-align:center'>"
 .W "    </td>",!
 .W "   </tr>",!
 .W "  </table>",!
 .W " </td>",!
 .W " <td colspan=""2"">",!
 .W "  &nbsp;"_$J($G(SMKR(MKR,"S")),2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
EN ;
 Q
 ;
 ;
BUTTONS ;
 W "<table id=""TblBut""><tr>",!
 I '$$DISPATH,'$$SNDKTC D
 .W " <td>" D BUTTON("rbtprint",$$^%W1DICT("PRINTORDERLIST"),"Print('"_OPT_"','"_$G(MEDT)_"','"_$G(ADDT)_"','"_$G(CODE)_"')","font-size:"_$$^W3FSZ(16)) W "</td>",!
 ;
 D BACK
 W "</tr></table>",!
 Q
 ;
BACK ;
 W " <td "
 I $D(BACKALIGN) W BACKALIGN
 W ">"
  D BUTTON("rbtback",$$^%W1DICT("BACK"),"Back('"_MSD_"')","color:red;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 Q
 ;
GL S GL=$$^W4ORD
 Q
 ;
DISPATH(STAM) ;
 Q $G(%ARG("DISPATH"))
 ;
SNDKTC(STAM) ;
 I $G(%ARG("SNDKTC")) Q 1
 I $$GETP^%W1PRM("SNDKTC") Q 1
 Q 0
 ;
SNDKTCORD(HZM) ;
 N OK S OK=1
 N I S I="" F  S I=$O(@$$^W4ORD@(HZM,I)) Q:I=""  I I D  Q:'OK
 .I $G(^(I))'["\@@" S OK=0
 Q OK
 ;
TAW(STAM) ;
 Q $G(%ARG("TAW"))
 ;
COMPTOT(N) ;
  N TS S TS=$$TSHL^W4HZMST(N)
  N DMS S DMS=$$DMSH^W4HZMST(N)
  N HNH S HNH=$$HNH^W4HZMST(N)
  ;
  S SPAY=$G(SPAY)+TS
  S SDMS=SDMS+DMS
  S SHNH=SHNH+HNH
  I '$$^W4PIZUL(N) S SHZ=SHZ+1
  ;
  I $$DELORD(N) S SDEL=SDEL+1
  I $$SENDEDORD(N) S SSBM=SSBM+1
  ;
  I '$$SENDEDORD(N),'$$DELORD(N) D
  .S SNOSBM=SNOSBM+1
  ;
  I $$NOSHUL(N) S SNOSHUL=SNOSHUL+1
  ;
  I '$$SEND2CUST(N) S SNODLV=SNODLV+1
  ;
  D
  .N CODTS,SUM,ITRA,MZM,CHK,CA,ASR
  .S CODTS=$$CODTS^W4HZMST(N)
  .S SUM=TS
  .I CODTS<2 S CODTS=1
  .S ITRA=$$ITRA^W4HZMST(N)
  .S MZM=$$MZM^W4HZMST(N)
  .S CHK=$$CHK^W4HZMST(N)
  .S CA=$$CA^W4HZMST(N)
  .S ASR=$$ASR^W4HZMST(N)
  .S SCODTS(1,"S")=$G(SCODTS(1,"S"))+ITRA
  .I MZM S SCODTS(1,"S")=$G(SCODTS(1,"S"))+MZM
  .I CHK S SCODTS(2,"S")=$G(SCODTS(2,"S"))+CHK
  .I CA S SCODTS(3,"S")=$G(SCODTS(3,"S"))+CA
  .I ASR S SCODTS(4,"S")=$G(SCODTS(4,"S"))+ASR
  .S SCODTS(CODTS,"Q")=$G(SCODTS(CODTS,"Q"))+1
  ;
  D
  .N RST S RST=$P($G(@$$GLLINK@(N)),"~") Q:'RST
  .S SMSD(RST,"Q")=$G(SMSD(RST,"Q"))+1
  .S SMSD(RST,"S")=$G(SMSD(RST,"S"))+TS
  .S SMSD(RST,"D")=$G(SMSD(RST,"D"))+DMS
  .S SMSD(RST,"HN")=$G(SMSD(RST,"HN"))+$G(HNH)
  ;
  I $G(MSD),$$NEW(N,MSD) D
  .S SNEW=SNEW+1
  .S SNEWPAY=SNEWPAY+TS
  .S SNEWDM=SNEWDM+$$DMSH^W4HZMST(N)
  .S SNEWHN=SNEWHN+$$HNH^W4HZMST(N)
  ;
  N MKR S MKR=$$MKRDLV^W4HZMST(N)
  I MKR="" S MKR=99
  S SMKR(MKR,"Q")=$G(SMKR(MKR,"Q"))+1
  S SMKR(MKR,"S")=$G(SMKR(MKR,"S"))+TS
  Q
  ;
SEND2CUST(ORD) ;
 I $$PSL^W4HZMST(ORD) Q 1
 Q 0
 ;
NOSHUL(ORD) ;
 I $$TSHL^W4HZMST(ORD)>($$SHUL^W4HZMST(ORD)+$$SHULA^W4HZMST(ORD)) Q 1
 Q 0
 ;
SHOW4COPY(STAM) ;
 Q +$G(%ARG("SHOW4COPY"))
 ;
DIVPSL ;
 W "<div dir="""_$$^%W1DIR_""">",!
 W " <table border=""0"">",!
 ;
 W "  <tr>",!
  I $G(%ARG("MKBL")) D PSLRCV
  ;
  I $$DISPATH D
  .D PSLCHOICE
  ;
  I $$SNDKTC D
  .D TDSP
  .D PSLSBM
  .W "<td>"
  . D BUTTON("misc",$$^%W1DICT("MISC"),"Misc()","color:brown;font-size:"_$$^W3FSZ(16))
  .W "</td>",!
 ;
 W "  </tr>",!
 ;
 W "<tr>"
  D PSLRADIO
  I $$DISPATH D PSLSHOW W "</tr></table>",! Q
  ;
 I $$1024^W4WDSCR D
 . D TDSP
 . D PSLSHOW
 . N BACKALIGN S BACKALIGN=$$INV^%W1ALIGN 
 . D BACK
 .W "</tr>",!
 .
 .W "<tr>"
 . D ORDSOURCE
 . D PAYMKIND
 ;
 I '$$1024^W4WDSCR D
 .D TDSP
 ;
 W "<td "
  I $$1024^W4WDSCR W " colspan=""2"" "
 W ">"_$$^%W1DICT("ORDER")_$$REVAH
  W "<input type=""text"" id=""ordernmb"" size=""10"" maxlength=""12"" onClick=""this.select()"" "
   W $$ONCHANGE
  W "/>"
 W "</td>"
 ;
 W "<td "
  I $$1024^W4WDSCR W " colspan=""2"" "
 W ">"_$$^%W1DICT("AUTHNO")_$$REVAH
  W "<input type=""text"" value="""_$$HB($G(%ARG("HZMLAK")))_""" "
   W "id=""hzmlak"" size=""10"" maxlength=""12"" onClick=""this.select()"" "
   W $$ONCHANGE
  W "/>",!
 W "</td>"
 ;
 W "<td "
  I $$1024^W4WDSCR W " colspan=""3"" align=""center"" "
 W ">"_$$^%W1DICT("CUSTOMNUMBERORNAME")_$$REVAH
  D
  .N CUST S CUST=$$INVH^%L1FRM($G(%ARG("CUSTOM")))
  .W "<input type=""text"" id=""custom"" size=""10"" "
  .D 
  .. I $G(%ARG("CUSTOM"))'="" W " value="""_$$HB($G(%ARG("CUSTOM")))_""" " Q
  .. I $G(%ARG("LKH"))'="" W " value="""_$G(%ARG("LKH"))_""" " Q
  .. I $G(%ARG("COMP"))'="" W " value="""_$$HB($G(%ARG("COMP")))_""" " Q
  .. I $G(%ARG("NAME"))'="" W " value="""_$$HB($G(%ARG("NAME")))_""" " Q
  . W " maxlength=""12"" "
  .W $$ONCHANGE
  .W "/>",!
 W "</td>"
 ;
 I '$$DISPATH,'$$1024^W4WDSCR D
 .D PSLSHOW
 .I $$DISPATH W "<td>&nbsp;</td>",!
 .N BACKALIGN S BACKALIGN=$$INV^%W1ALIGN 
 .D BACK
 W "</tr>",!
 ;
 I '$$DISPATH D
 .W "<tr>"
 . D PSLCHK
 .W "</tr>",!
 ;
 ;
 W "</table>",!
 Q
 ;
 ;
HB(PRM) 
 I $G(PRM)="" Q ""
 S PRM=$$INVH^%L1FRM(PRM)
 Q $$H2U^%L1FRM(PRM)
 ;
FNDMISCBUT ;
 W "<td>"
  ;;D ROUNDBUT^%W1JS("findord",$$^%W1DICT("FINDORDER"),"FindOrder()","color:blue;font-size:"_$$^W3FSZ(16),"wh29,29")
  D BUTTON("findord",$$^%W1DICT("FINDORDER"),"FindOrder()","color:blue;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 ;
 W "<td>"
  ;;D ROUNDBUT^%W1JS("misc",$$^%W1DICT("MISC"),"Misc()","color:brown;font-size:"_$$^W3FSZ(16),"wh29,29")
  D BUTTON("misc",$$^%W1DICT("MISC"),"Misc()","color:brown;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 Q
 ;
PSLRCV ;
 W "<td style=""color:darkblue"" "_$$^%W1ALIGN_" >"
 W " <b>"_$$^%W1DICT("RECEIVER")_" : "_$$H2U^%L1FRM($$^W4NAME(%ARG("MKBL")))_"</b>"
 W "</td>",!
 W "<td width=""20%"">&nbsp;</td>"
 Q
 ;
PSLCHOICE ;
 I $$TAW D TDSP G PSLCH1
 ;
 W "<td>",!
 W " <select id=""psl"" onChange=""ChangePsl()"" style=""font-size:"_$$^W3FSZ(14)_""">",!
 W "  <option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
 N VRMSL S VRMSL=$$^W4MAIN("VRMSL") K @VRMSL
 ;
 N N,K S N="",K=0 F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  I N<9999 D
 .N NM S NM=$G(^(N))
 .S @VRMSL@($$^W4ABCIND(N,NM))=N
 .S K=K+1
 ;
 N IND S IND="" F  S IND=$O(@VRMSL@(IND)) Q:IND=""  D
 .N N S N=$G(^(IND)) Q:N=""
 .N A S A=$G(@$$^W4GL("P1SL")@(N))
 .I $$NOPRES(N) Q
 .W " <option value="""_N_""" ",!
 .I K=1 W " selected=""selected"" "
 .W ">"
 . W $$H2U^%L1FRM(A)
 .W " </option>",!
 ;
 W " </select>",!
 W "</td>"
 ;
PSLCH1 ;
 D PSLSBM
 ;
 I $$DISPATH D
 .N BACKALIGN S BACKALIGN=$$INV^%W1ALIGN 
 .D TDSP,TDSP
 .D FULLSHOWRADIO
 .W "<td colspan="""_(6-$$1024^W4WDSCR)_""">&nbsp;</td>"
 .D BACK
 Q
 ;
 ;
PSLCHK ;
 D
 .I '$$1024^W4WDSCR D
 ..D ORDSOURCE
 ..;
 ..D PAYMKIND
 .;
 .D SHOWSNDORNOORDERS
 .;
 .D TDSP
 .;
 .I '$$SNDKTC D
 ..D SHOWPAIDORNOORDERS 
 ..
 ..D TDSP
 ..
 ..D SHOWDELORDERS
 ..
 ..D SHOWFUTORDERS
 ..
 ..D SHOWBIDORDERS
 ..
 ..I '$$DISPATH D SHOWTAW
 ;
 W "<td>&nbsp;</td>",!
 Q
 ;
 ;
ORDSOURCE ;
 W "<td>"
  W $$^%W1DICT("ORDERSOURCE")_$$REVAH
  W "<select id=""mkr"" "_$$ONCHANGE
   I $$KNDO="BIDTB" W " disabled=""disabled"" "
  W ">",!
   D
   .W "<option value=""ALL"" "
   .I $G(%ARG("MKR"))="ALL"!($G(%ARG("MKR"))="") W " selected=""selected"" "
   .W ">"_$$^%W1DICT("ALL")_"</option>",!
   .
   .N N S N="" F  S N=$O(^[$$^W3MAIN]W3MKR(N)) Q:N=""  D
   ..N A S A=$G(^(N)) 
   ..W "<option value="""_N_""" "
   ..I $G(%ARG("MKR"))=N W " selected=""selected"" "
   ..W ">"_$$H2U^%L1FRM(A)_"</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
PAYMKIND ;
 W "<td>"
  W $$^%W1DICT("PAYMENTKIND")_$$REVAH
  W "<select id=""paymkind"" "
   W $$ONCHANGE
  W ">",! 
   D
   .W "<option value=""ALL"" >"_$$^%W1DICT("ALL")_"</option>",!
   .N N S N="" F  S N=$O(@$$^W4GL("W3SUGTS")@(N)) Q:N=""  D
   ..N A S A=$G(^(N)) 
   ..W "<option value="""_N_""" "
   ..I $G(%ARG("SUGTS"))=N W " selected=""selected"" "
   ..W ">"_$$H2U^%L1FRM(A)_"</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
SHOWSNDORNOORDERS ;
 W "<td>"
  W $$^%W1DICT("SHOWNOSENDEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""nosendedords"" "
  I $G(%ARG("NOSENDEDORDS")) W " checked=""checked"" "
  I $$KNDO="SND" W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
  ;
  D SPACE
  W $$^%W1DICT("SHOWSENDEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""sendedords"" "
  I $G(%ARG("SENDEDORDS")) W " checked=""checked"" "
  I $$KNDO="NSND" W " disabled=""disabled"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWPAIDORNOORDERS ;
 W "<td>"
  W $$^%W1DICT("SHOWNOPAIDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""nopaidords"" "
  I $G(%ARG("NOPAIDORDS")) W " checked=""checked"" "
  I $$KNDO="PD" W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
  ;
  I '$$1024^W4WDSCR D SPACE
  I $$1024^W4WDSCR W "</td><td>"
  ;
  W $$^%W1DICT("SHOWPAIDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""paidords"" "
  I $G(%ARG("PAIDORDS")) W " checked=""checked"" "
  I $$KNDO="NPD"!($$KNDO="BID") W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWDELORDERS ;
 W "<td>" 
  W $$^%W1DICT("SHOWDELETEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""deletedords"" "
  I $G(%ARG("DELETEDORDS")) W " checked=""checked"" "
  W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWFUTORDERS ;
 W "<td>" 
 W $$^%W1DICT("SHOWFUTUREORDS")_"&nbsp;"
 W "<input type=""checkbox"" id=""futureords"" "
 I $G(%ARG("FUTUREORDS")) W " checked=""checked"" "
  W $$ONCHANGE
 W " />"
 W "</td>"
 Q
 ;
SHOWTAW ;
 W "<td>" 
 W $$^%W1DICT("SHOWTAW")_"&nbsp;"
 W "<input type=""checkbox"" id=""showtaw"" "
 I $G(%ARG("SHOWTAW")) W " checked=""checked"" "
 W $$ONCHANGE
 W " />"
 W "</td>"
 Q
 ;
SHOWBIDORDERS ;
 W "<td>" 
 W $$^%W1DICT("SHOWBIDS")_"&nbsp;"
 W "<input type=""checkbox"" id=""bids"" "
 I $G(%ARG("BIDS")) W " checked=""checked"" "
 W $$ONCHANGE
 W " />"
 W "</td>"
 Q
 .
PSLRADIO ;
  I '$$DISPATH D
  .W "<td>"
  . D KINDORDS
  .W "</td>",!
  ;
  I $$DISPATH D
  .W "<td colspan=""2"" >"
  . W $$^%W1DICT("SHOWALLORDS")
  . W "<input type=""radio"" name=""kindsort"" "
  .  I $G(%ARG("ALLORDS")) W " checked=""checked"" "
  .  W $$ONCHANGE
  . W " />"
  . D SPACE
  . W $$^%W1DICT("SHOWNOTDLVORDS")
  . W "<input type=""radio"" name=""kindsort"" "
  .  I '$G(%ARG("ALLORDS")) W " checked=""checked"" "
  .  W $$ONCHANGE
  . W " />"
  .W "</td>"
  .;
  .W "<td>&nbsp;</td>"
  ;
  D TIMESORT
  ;
  D ASCENDING
  ;
  I $$DISPATH D
  .D TDSP
  .D SHOWTAW
  .I '$$1024^W4WDSCR D TDSP,TDSP,TDSP
 Q
 ;
 ;
TIMESORT ;
 W "<td "
  ;;I $$1024^W4WDSCR W "colspan=""2"" "
   W "colspan=""2"" "
 W ">"
  W $$^%W1DICT("TIMESORT")
  W "<input type=""radio"" name=""timesort"" "
   I $G(%ARG("TIMESORT")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  D SPACE
  W $$^%W1DICT("ORDERSORT")
  W "<input type=""radio"" name=""timesort"" "
   I '$G(%ARG("TIMESORT")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
ASCENDING ;
 W "<td "
  I $$1024^W4WDSCR W "colspan=""3"" "
  W "colspan=""2"" "
 W ">"
  W $$^%W1DICT("FROMOLD2NEW")
  W "<input type=""radio"" name=""sortasc"" "
   I $G(%ARG("ASCENDING")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  I '$$1024^W4WDSCR D SPACE
  I $$1024^W4WDSCR W "</td><td>"
  W $$^%W1DICT("FROMNEW2OLD")
  W "<input type=""radio"" name=""sortasc"" "
   I '$G(%ARG("ASCENDING")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
PSLSHOW ;
 W "<td "_$$INV^%W1ALIGN_" >"
  D BUTTON("show",$$^%W1DICT("SHOW")_"&nbsp;","ShowOrds()","color:brown;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 Q
 ;
 ;
PSLSBM ;
 W "<td>"
  N SUBMIT
  S SUBMIT="SUBMIT"
  I $$SNDKTC S SUBMIT="SEND2KTCH"
  D BUTTON("submpsl",$$^%W1DICT(SUBMIT),"SubmPsl()","color:green;font-size:"_$$^W3FSZ(16))
 W "</td>"
 Q
 ;
FULLSHOWRADIO ;
  W "<td colspan=""2"">"
   W $$^%W1DICT("FULLSHOW")
   W "<input type=""radio"" name=""short"" "
    I '$$SHORTSHOW W " checked=""checked"" "
    W " onChange=""ShowOrds()"" "
   W " />"
   D SPACE
   W $$^%W1DICT("SHORTSHOW")
   W "<input type=""radio"" name=""short"" "
    I $$SHORTSHOW W " checked=""checked"" "
    W " onChange=""ShowOrds()"" "
   W " />"
  W "</td>"
 Q
 ;
 ;
SETDLV(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETDLV","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:'HZ 0
 N ER S ER=0
 ;
 I $$SNDKTC G SETDLV1
 ;
 N ISHUR S ISHUR=$P(PRM,";",3)
 N ITRA S ITRA=$$ITRA^W4HZMST(HZ)
 N CODTS S CODTS=$$CODTS^W4HZMST(HZ)
 ;;I PRM,ITRA>.5,'ISHUR,CODTS>4!(CODTS=3),'$G(@$$^W4PRM@("NOCHKDLV")) Q "ITRA"
 I PRM,ITRA>.5,'ISHUR,$D(@$$^W4ORD@(HZ,"CB","V"))>9!(CODTS>4)!(CODTS=3),'$G(@$$^W4PRM@("NOCHKDLV")) Q "ITRA"
SETDLV1 ;
 I PRM S @$$^W4MAIN("TMPDLV")@(HZ)="" Q 1
 K @$$^W4MAIN("TMPDLV")@(HZ)
 Q 1
 ;
KILLDLV ;
 K @$$^W4MAIN("TMPDLV")
 Q
 ;
SETREADY(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETREADY","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:HZ'>0 0
 I '$$^W4HZFULL(HZ) Q 0
 N ER S ER=0
 I PRM S @$$^W4ORD@(HZ,"READY")=$H Q $S($$TAKEAWAY^W4HZMST(HZ):3,1:2)
 K @$$^W4ORD@(HZ,"READY")
 Q 1
 ;
SNDORD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 K @$$^W4MAIN("TMPER")
 D ^W4IN
 D PUT^%W3DEB("W4DLVORD-SNDORD","PRM=PRM")
 I '$$SNDKTC S PSL=$P(PRM,";") Q:'PSL
 S ZMANS=$$T^%L1TIME($P($H,",",2))
 ;
 I '$$SNDKTC D
 .S HZ="" F  S HZ=$O(@$$^W4MAIN("TMPDLV")@(HZ)) Q:HZ=""  D SGPSL(HZ,PSL)
 ;
 I $$SNDKTC D
 .S HZ="" F  S HZ=$O(@$$^W4MAIN("TMPDLV")@(HZ)) Q:HZ=""  D
 ..I $$HZM^W4MSL(HZ),$$FUTUREDT^W4HZMIT(HZ) Q
 ..D ^W4HZM(HZ,JB)
 ..S @$$^W4ORD@(HZ,"SNDKTC")=$H
 ;
 I $$PRINT^W4MDPPC'="L" D KILLDLV
 Q
 ;
 ;
PUTTM(HZM,PSL) ;
 N (JB,%ARG,%REM,HZM,PSL)
 I $$TM^W4HZMST(HZM) Q
 N TM S P1DZ=$$^W4DZ
 L +@$$^W4GL("P1TM"):1
 S TM=$O(@$$^W4GL("P1TM")@(9999999),-1)+1
 S @$$^W4GL("P1TM")@(TM)=HZM_"\"_P1DZ_"\"_$H
 D ^%S2GLSV($$^W4GL("P1TM")_"("_TM_")",$$^W4FGIB)
 L -@$$^W4GL("P1TM")
 ;
 L +@$$^W4GL("P1TMI"):1
 S @$$^W4GL("P1TMI")@(P1DZ,TM)=$H
 D ^%S2GLSV($$^W4GL("P1TMI")_"("_P1DZ_","_TM_")",$$^W4FGIB)
 L -@$$^W4GL("P1TMI")
 ;
 D PUT^W4HZMST(HZM,"TM",TM)
 D ^%S2GLSV($$^W4ORD_"("_HZM_")",$$^W4FGIB)
 ;
 L +@$$^W4GL("P1MSL"):1
 S @$$^W4GL("P1MSL")@(P1DZ,PSL,HZM)=$H
 D ^%S2GLSV($$^W4GL("P1MSL")_"("_P1DZ_","""_PSL_""","""_HZM_""")",$$^W4FGIB)
 L -@$$^W4GL("P1MSL")
 ;
 D ^W4HZGT(HZM)
 ;
 I $$HZM^W4MSL(HZM) D
 .I PSL<1 Q
 .D PRNDLVDOC(HZM)
 .I $G(@$$^W4PRM@("2TM")) D
 ..D PRNDLVDOC(HZM)
 ;
PUTTME K @$$^W4TMPORD
 Q
 ;
 ;
KHM(HZM) N N
 S N="" F  S N=$O(@$$^W4GL("P1HM")@(N)) Q:N=""  D
 .K @$$^W4GL("P1HM")@(N,HZM)
 .D ^%S2GLSV($$^W4GL("P1HM")_"("""_N_""","""_HZM_""")",$$^W4FGIB,"K")
 Q
 ;
VIEWRCV(STAM) ;
 I $G(%ARG("VW"))=1 Q 1
 Q 0
 ;
BGCOLOR(ORD) ;
 I $$DELORD(ORD) W " style=""background-color:black;color:red""" Q
 I $$^W4HZMH(ORD) W " style=""background-color:96CE98;color:black""" Q
 I $$FAXORD(ORD) W " style=""background-color:yellow""" Q
 I $$SENDEDORD(ORD) W " style=""background-color:white""" Q
 ;
 I $$PERIOD(DAT,SHAA,IR)=0 D  Q  ; -- SVETOFOR
 .N BGCOLOR
 .I $$^%L1DC(DAT,3)=+$H D
 ..N RZN S RZN=$$MIN(SHAA)-($P($H,",",2)\60)
 ..N TIMETM S TIMETM=$G(@$$^W4PRM@("TIMETM"))
 ..I RZN'>TIMETM S BGCOLOR="pink" Q
 ..I RZN>TIMETM,RZN<(TIMETM+15) S BGCOLOR="#FFFAAA" Q  ;"lightyellow"
 ..S BGCOLOR="#DFFFC6" ; lightgreen
 .
 .W " style=""background-color:"_BGCOLOR_""" " Q
 ;
 I $$SF^W4PRM,$$SHABAT(ORD) D
 .S FGCOLOR="orange"
 .W " style=""background-color:darkblue;color:"_FGCOLOR_"""" 
 ;
 I $$SF^W4PRM D
 .I $$NIGHT(ORD) D  Q
 ..S FGCOLOR="orange"
 ..W " style=""background-color:darkblue;color:"_FGCOLOR_"""" 
 .
 .W " style=""background-color:eaeaea""" 
 ;
 I $$DTHZ(ORD)>$H W " style=""background-color:c0d2ec""" Q  ; -- FUTURE
 I $$TAKEAWAY^W4HZMST(ORD) W " style=""background-color:orange""" Q
 Q
 ;
KINDORD(STAM) ;
 I $G(%ARG("ORDKIND"))="" Q "NOSENDED"
 Q $G(%ARG("ORDKIND"))
 ;
KNDO(STAM)
 Q $G(%ARG("KNDO"))
 ;
SETPSL(PSL) ;
 D PUT^%W1PRM("PSL",PSL)
 Q
 ;
MY(STAM) Q $G(%ARG("MY"))
 ;
CMPR(HZ,NCA) ;
 N OK S OK=0
 I $D(@$$^W4ORD@(HZ,"CB","V"))<10 Q 0
 N CRCARDS S CRCARDS=$$CRCARDS^W4HZMST(HZ)
 I NCA,(","_CRCARDS_",")'[+NCA Q 0
 Q 1
 ;
 ;
SGPSL(HZ,PSL) ;
 I '$$^W4HZFULL(HZ) Q
 ;
 I $$CODTS^W4HZMST(HZ)=4,'$D(@$$^W4ORD@(HZ,"CB","ASR")) D
 .N P1TNOPR S P1TNOPR="" ;;I $G(PSL)>0&$G(@$$^W4PRM@("2TM")) S P1TNOPR=""
 .D SGASR(HZ)
 ;
 I '($$CLOSE^W4HZMST(HZ)#2) S @$$^W4ORD@(HZ,"S")=$G(@$$^W4ORD@(HZ,"S"))+1
 ;
 ;;I '$$^W4CLOSE(HZ),'$$ITRA^W4HZMST(HZ),PSL<0 D  ; -- HADP HESH TAW
 I '$$ITRA^W4HZMST(HZ),PSL<0 D  ; -- HADP HESH TAW
 .N P1TNOPR,BLIPR
 .I $$SHUL^W4HZMST(HZ) D ^W4PCHB(HZ,1)
 .I $$SHULA^W4HZMST(HZ),'$$SHUL^W4HZMST(HZ) D ^W4PCHB2(HZ)
 .D SETCLOSE^W4HZMST(HZ)
 ;
 I '$$PSL^W4HZMST(HZ) D PUT^W4HZMST(HZ,"PSL",PSL)
 ;
 I $$ZMANS^W4HZMST(HZ)="" D PUT^W4HZMST(HZ,"ZMANS",$$T^%L1TIME($P($H,",",2)))
 ;
 I PSL>0 D
 .D PUTTM(HZ,PSL)
 .;;I '$$^W4CLOSE(HZ),'$$ITRA^W4HZMST(HZ) D  D SETCLOSE^W4HZMST(HZ)
 .I '$$ITRA^W4HZMST(HZ) D  D SETCLOSE^W4HZMST(HZ)
 ..Q:$$NOTM^W4PRM
 ..N LKHN S LKHN=$$NMB^W4HZMST(HZ) Q:'LKHN  Q:$$IFHBMAIL^W4L(LKHN)
 ..N EMAIL S EMAIL=$$EMAIL^W4HZMST(HZ)
 ..I EMAIL["@",(EMAIL["."),$$SND2EMAIL^W4PRM!$$IFHBMAIL^W4L(LKHN) Q
 ..N P1TNOPR,BLIPR
 ..I $$SHUL^W4HZMST(HZ) D ^W4PCHB(HZ,1)
 ..;;I $$SHULA^W4HZMST(HZ),'$$SHUL^W4HZMST(HZ) D ^W4PCHB2(HZ) ; -- 08/05/19
 .I $$SND2EMAIL^W4PRM J SNDMAIL(JB,HZ)
 Q
 ;
SGASR(HZM) ;
 N (JB,%ARG,HZM,P1TNOPR,BLIPR)
 S ASRL=$$ITRA^W4HZMST(HZM)
 S (LKHN,CUSN)=$$NMB^W4HZMST(HZM)
 S LKAH="" ;$$AH^W4L(LKHN)
 S LKHNH=""
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 ;
 S TIPAS=""
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 ;
 I $$HBNOW^W4L(LKHN),'$$HBNOWMONTH^W4PRM,$$NOW2EMAIL^W4PRM D
 .J SNDMAIL(JB,HZM,1)
 ;
 Q
 ;
 ;
SNDMAIL(JB,ORD,NOW)
 N (JB,%ARG,ORD,NOW)
 Q:'$G(ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N RES,EMAIL,LKHN,NOM
 S EMAIL=$$EMAIL^W4HZMST(ORD) Q:EMAIL'["@"!(EMAIL'[".")
 S LKHN=$$NMB^W4HZMST(ORD) Q:'LKHN
 ;
 D  Q:'NOM
 .I $G(NOW) S NOM=+$G(@$$^W4ORD@(ORD,"HBNOW")),VD="HB",ND=NOM Q
 .S NOM=$$NCAB^W4HZMST(ORD)
 .S VD="HZ",ND=ORD
 ;
 D SNDMAIL1(ND,NOM,EMAIL,VD,ORD)
 ;
 S EMAIL1=$$EMAIL1^W4HZMST(ORD)
 I EMAIL1["@",EMAIL1["." D
 .D SNDMAIL1(ND,NOM,EMAIL1,VD,ORD)
 Q
 ;
SNDMAIL1(ND,NOM,EMAIL,VD,ORD)
 N PRM
 S PRM=ND_";Invoice "_NOM_";"_EMAIL_";"_VD_";0;1;"_$G(@$$^W4PRM@("HOWSEND"),3)
 ;
 I VD="HZ" S RES=$$EMAILCONT^W4EMAIL(PRM)
 I VD="HB" D
 .S RES=$$EMAILHB^W4EMAIL(PRM) Q:RES
 .S @$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)=$H_";"_$P(PRM,";",2,1000)
 Q
 ;
 ;
PRNDLVDOC(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:'NMB
 ;
 I $$^W4MSL(NMB),$$BIGTM^W4L(NMB) D  Q
 .S @$$^W4MAIN("TMPBIGTM")@(HZM)=$H
 ;
 D PRINTDLVDOC(HZM)
 Q
 ;
 ;
PRINTDLVDOC(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:'NMB
 N IET,ITS,SHM,P1HZTM,P1TNOPR,BLIPR,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3
 S IET="ETTM",ITS=1,SHM="TM",P1HZTM=""
 I $G(@$$^W4PRM@("NOTM")) S P1TNOPR=""
 I $G(@$$^W4PRM@("MM")),'$G(@$$^W4PRM@("MMTM")) S P1TNOPR=""
 D P1^W4HZTM
 Q
 ;
NOPRES(SL) ;
 I '$G(@$$^W4PRM@("BDNOCHSL")) Q 0
 N NM,NM1 S NM=$G(@$$^W4GL("P1SL")@(SL)) I NM="" Q 0
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D  Q:OK
 .S NM1=$G(^(N,1))
 .I $$SPA^%L1FRM(NM)=$$SPA^%L1FRM(NM1) S OK=N
 ;
 I OK,$G(@$$^W4GL("FILE")@(OK,"CIO"))'="I" Q 1
 Q 0
 ;
HD(STAM) ;
 I $$CUSTLASTORDS Q "CUSTLASTORDS<>"_$$CUSTLASTORDS_"<>"_$$LKH^W4L($$CUSTLASTORDS)
 I $$MY,'$$DISPATH Q "MYORDERS"
 I '$$MY,'$$DISPATH,$$TOMORROW Q "TOMORROWORDERS"
 I '$$MY,'$$DISPATH,$G(%ARG("MEDAT"))="" Q "DAYORDERS"
 I $$DISPATH,$$TAW Q "TAKEAWAYORDERS"
 I $$DISPATH,'$$TAW Q "SENDORDERS"
 Q "ORDLIST"
 ;
PAYCASH(HZM) ;
 N IND,VL
 I '$$^W4HZFULL(HZM) Q "0;ORDERERROR"
 I $$^W4CLOSE(HZM) Q "0;ORDERCLOSED"
 S VL=$$ITRA^W4HZMST(HZM) I 'VL G EPAYCASH
 S IND=$O(@$$^W4ORD@(HZM,"CB","MZ",999),-1)+1
 S @$$^W4ORD@(HZM,"CB","MZ",IND)=$J(VL,2,2)_"*"_$H_"*"_$$LASTMLZ^W4HZMST(HZM)_"*"_$$^W4MYDVN
 D PAYCASH^W4PAYKB(HZM)
 D ^W4T(HZM,0)
EPAYCASH Q "1;"_$$SHOWPAID(HZM)
 ;
SHOWPAID(N) ;
 Q $$^%W1DICT("PAID")_" "_$J($$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N),2,2)
 ;
READY(N) ;
 I $D(@$$^W4ORD@(N,"READY")) Q 1
 Q 0
 ;
TIMEREADY(N) ;
 N TIME S TIME=$G(@$$^W4ORD@(N,"READY")) I 'TIME Q ""
 Q $$T^%L1TIME(TIME)
 ;
SGYOM(STAM) ;
 Q $G(%ARG("SGYOM"))
 ;
SPACE ;
 W "&nbsp;&nbsp;&nbsp;"
 Q 
 ;
TDSP ; 
 W "<td>&nbsp;</td>"
 Q 
 ;
PRINTDOC ; 
 W "<table>",!
  W "<tr>"
   W "<td>"
    W "<input type=""button"" value="""_$$^%W1DICT("PRINT")_""" "
    W " style=""font-size:"_$$^W3FSZ(16)_""" "
    W " onMouseUp=""PrintDocs('"_N_"','"_PRMDB_"')"" />"
   W "</td>"
   ;
  W "</tr>"
 W "</table>",!
 Q
 ;
 ;
KINDORDS ; 
 W "<select id=""kindords"" onChange=""SelKindOrds()"" >",!
  W "<option value=""ALL"" "_$$SELECTED("ALL")_">"_$$^%W1DICT("SHOWALLKINDORDS")_"</option>",!
  W "<option value=""NSND"" "_$$SELECTED("NSND")_">"_$$^%W1DICT("SHOWNOSENDEDORDS")_"</option>",!
  W "<option value=""SND"" "_$$SELECTED("SND")_">"_$$^%W1DICT("SHOWSENDEDORDS")_"</option>",!
  W "<option value=""NPD"" "_$$SELECTED("NPD")_">"_$$^%W1DICT("SHOWNOPAIDORDS")_"</option>",!
  W "<option value=""PD"" "_$$SELECTED("PD")_">"_$$^%W1DICT("SHOWPAIDORDS")_"</option>",!
  W "<option value=""DEL"" "_$$SELECTED("DEL")_">"_$$^%W1DICT("SHOWDELETEDORDS")_"</option>",!
  W "<option value=""FTR"" "_$$SELECTED("FTR")_">"_$$^%W1DICT("SHOWFUTUREORDS")_"</option>",!
  W "<option value=""BID"" "_$$SELECTED("BID")_">"_$$^%W1DICT("SHOWBIDS")_"</option>",!
  ;
  I $$SF^W4PRM D
  .W "<option value=""BIDTB"""_$$SELECTED("BIDTB")_">"_$$^%W1DICT("SHOWBIDTB")_"</option>",!
  ;
  W "<option value=""TAW"""_$$SELECTED("TAW")_">"_$$^%W1DICT("SHOWTAW")_"</option>",!
 W "</select>",!
 Q 
 ;
SELECTED(IND) ;
 I $G(%ARG("KNDO"))=""&(IND="ALL") Q " selected=""selected"" "
 I $G(%ARG("KNDO"))=IND Q " selected=""selected"" "
 Q ""
 ;
SETARG ;
 I $G(%ARG("ASCENDING"))="" S %ARG("ASCENDING")=$S($$MY:0,1:1)
 I $G(%ARG("TIMESORT"))="" S %ARG("TIMESORT")=$S($$MY:0,1:1)
 ;
 I $G(%ARG("NOSENDEDORDS"))="" S %ARG("NOSENDEDORDS")=1
 I $G(%ARG("SENDEDORDS"))="" S %ARG("SENDEDORDS")=1
 I $G(%ARG("NOPAIDORDS"))="" S %ARG("NOPAIDORDS")=1
 I $G(%ARG("PAIDORDS"))="" S %ARG("PAIDORDS")=1
 I $G(%ARG("BIDS"))="" S %ARG("BIDS")=1
 I $G(%ARG("FUTUREORDS"))="" D
 .S %ARG("FUTUREORDS")=$S($$HD="DAYORDERS"&'$$SF^W4PRM:0,1:1)
 I $G(%ARG("SHOWTAW"))="" S %ARG("SHOWTAW")=1
 I $$TOMORROW D
 .I $G(%ARG("DELETEDORDS"))="" D
 ..S %ARG("DELETEDORDS")=+$$SHOWDEL^W4PRM
 .I $G(%ARG("BIDS"))="" S %ARG("BIDS")=0
 
 I $G(%ARG("DELETEDORDS"))="" D
 .S %ARG("DELETEDORDS")=$S($$SHOWDEL^W4PRM:1,$G(%ARG("MY")):1,1:0)
 ;
 Q
 ;
 ;
ONCHANGE(STAM) ;
 Q " onChange=""OnChangePrm()"" "
 ;
BUTTON(ID,VL,PROC,STYLE)
 D ^W4BUTTON($G(ID),VL,$G(PROC),$G(STYLE))
 Q
 ;
REVAH(STAM) ;
 I $$1024^W4WDSCR Q "<BR>"
 Q "&nbsp;&nbsp;"
 ;
SHORTSHOW(STAM) ;
 Q $G(%ARG("SHORTSHOW"))
 ;
TOMORROW(STAM) ; 
 Q $G(%ARG("TOMORROW"))
 ;
CUSTLASTORDS(STAM) ; 
 Q $G(%ARG("CUSTLASTORDS"))
 ;
PRINTALLORDS(MDB) ; 
 N N,HZ S N="",I=0 F  S N=$O(@$$^W4MAIN("VIB")@(N)) Q:N=""  D
 .S I=I+1 I '(I#10) H 1
 .S HZ=$$HZ(N)
 .S A=$$PRINTBON^W4MENUBT(HZ_";;;"_MDB)
 Q 
 ;
PRINTALLKOTMDB ; 
 N PRN S PRN=$G(@$$^W4PRM@("MDBKOT")) Q:'PRN
 N N,HZ S N="",I=0 F  S N=$O(@$$^W4MAIN("VIB")@(N)) Q:N=""  D
 .S I=I+1 I '(I#10) H 1
 .S HZ=$$HZ(N)
 .D MDBKOT^W4MDBPC(HZ,PRN)
 Q 
 ;
CUSTALL(STAM) ;
 Q $G(%ARG("CSALL"))
 ;
NIGHT(ORD) ; 
 N DATCB S DATCB=$$DATCB^W4HZMST(ORD)
 N TIMECB S TIMECB=$P(DATCB,"  ",2),DATCB=$P(DATCB,"  ")
 N DTCB S DTCB=$$^%L1DC(DATCB,3)
 ;;I $$SF^W4PRM,DTCB=($H-1)&(TIMECB>17)!(DTCB=+$H&(TIMECB<8)),$ZD($H,"24")<12 Q 1
 ;;I $$SF^W4PRM,DTCB=+$H&(TIMECB>17) Q 1
 I $$SF^W4PRM,TIMECB>16!(TIMECB<8) Q 1
 Q 0 
 ;
SHABAT(ORD) ; 
 N DATCB S DATCB=$P($$DATCB^W4HZMST(ORD)," ")
 N DTCB S DTCB=$$^%L1DC(DATCB,8)
 I $$SF^W4PRM,DTCB=6!(DTCB=7) Q 1
 Q 0 
 ;
REPTRH(STAM) ; 
 Q $G(%ARG("REPTRH")) 
 ;
 ;
KOTREPTRH ; 
 N HD
 W "<span style=""font-size:"_$$^W3FSZ(14)_""" >"
   S HD="REPDEPTRHMEAD"
   I $G(%ARG("ITEMS")) S HD="REPITEMSTRHMEAD"
   W $$^%W1DICT(HD,$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))
 W "</span><br><br>",!
 ;
 N REPTRH S REPTRH=$$REPTRH
 W "<table dir="""_$$^%W1DIR_""" style=""layout:fixed"" >",!
  W "<tr>"
   W "<td>"
    W "<select id=""reptrhords"" onChange=""ChangeRepTrhOrds()"" >",!
      W "<option value=""3"""_$$SELORD(REPTRH,3)_" >"_$$^%W1DICT("ALLORDERS")_"</option>",!
      W "<option value=""1"""_$$SELORD(REPTRH,1)_" >"_$$^%W1DICT("ALLDLVORDS")_"</option>",!
      W "<option value=""2"" "_$$SELORD(REPTRH,2)_" >"_$$^%W1DICT("SENDEDORDSONLY")_"</option>",!
    W "</select>",!
   W "</td>"
   ;
   W "<td>&nbsp;</td>"
   ;
   W "<td>"
    W $$^%W1DICT("PRICEOFFERS")_" "
    W "<input id=""hzmh"" type=""checkbox"" "
     W $S($G(%ARG("HZMH")):" checked=""checked"" ",1:"")
     W " onChange=""ChangeRepTrhOrds()"" "
    W " />"
    W "</td>"
    ;
    W "<td>&nbsp;</td>"
    ;
    W "<td>"
     W $$^%W1DICT("SHOWORDERS")_" "
     W "<input id=""reptrhshow"" type=""checkbox"" "
      W $S($G(%ARG("SIK")):"",1:" checked=""checked"" ")
      W " onChange=""ChangeRepTrhShow()"" "
     W " />"
    W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
SELORD(REPTRH,OPT) ; 
 I REPTRH=OPT W " selected=""selected"" " 
 Q ""
 ;
PIZUL(N) ;
 Q $$^W4PIZUL(N)
 ;
CRLINKDR ; 
 N A,N,DCB,DTR,SHAAR
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  I N'<1 D
 .S A=$G(^(N)),DCB=$P(A,"\",4) Q:'DCB
 .I $L($P(A,"\"))<4 Q
 .S DTR=$$^%L1DC($P(DCB,"  "),3) Q:DTR<50000
 .S SHAAR=$P(DCB,"  ",2)
 .I SHAAR<6 S DTR=DTR-1
 .S @$$^W4GL("W4LINKDR")@(DTR,N)=$$GETP^%W1PRM("MSD")
 Q
 ;
SENDBIDS() ;
 N VIB S VIB=$$^W4MAIN("VIB")
 N N S N="" F  S N=$O(@VIB@(N)) Q:N=""  D
 .S HZ=$$HZ(N)
 .
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVORD
W4DLVORD(OPT) ; [ 03.08.26 09:28 ] [ 29.07.26 09:18 ] [ 17.06.26 10:54 ] 
 ; ===      OPT=PC     ===
 ; --- OPT=0 -- ; COPY PREV ORDER
 ;
 ; --- OPT=1 -- NO SUBMIT ORDER LIST FOR RESTAURANT ; w3rcvhd -> SbmRadio -> w3rcvord PC=1
 ; --- OPT=2 -- SUBMIT ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=2
 ; --- OPT=3 -- DELETE ORDER LIST FOR RESTAURANT ;w3rcvhd -> SbmRadio -> w3rcvord PC=3
 ; --- OPT=4 -- ALL ORDERS ( ELPOS )
 ;        WITH PHONE  - UNREGISTER CUSTOMER REPORT ; w3guest -> ShowStat -> w3rcvord (PC=4, PHONE,HOME)
 ;        WITH CODE - REGISTER CUSTOMER REPORT ; - w3member
 ;        WITHOUT CODE,PHONE  - RESTAURANT REPORT ; -- w3rcvhd -> SbmRadio -> w3rcvord PC=4
 ;-------------------------------------------------------
 N (JB,CODE,OPT,HOME,PHONE,%ARG,LKH,LKHR,SUGT,%REM)
 I '$G(JB) Q
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $D(@$$^W4GL("W4LINKDR"))<10 D CRLINKDR
 ;
 D CLRCOPY^W4MENU
 ;
 I $$SNDKTC D
 .K %ARG("DISPATH")
 .D KILL^%W1PRM("DISPATH")
 ;
 I $$TOMORROW D
 .N DT0 S DT0=$$^W4DZ+1 ; $H+1 ; 14/09/20
 .S %ARG("MEDAT")=$ZD(DT0,"DD.MM.YY")
 .N DT S DT=DT0
 .I $$^%L1DC(DT0,8)>5,$$SF^W4PRM D
 ..N DT1 F DT1=DT0:1:DT0+100 Q:$$^%L1DC(DT1,8)=1
 ..S DT=DT1
 .S %ARG("ADDAT")=$ZD(DT,"DD.MM.YY")
 .S %ARG("FUTUREORDS")=1
 ;
 D INIT
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$CUSTLASTORDS D  G TOTLAB
 .D INITVIB
 .N N,I,LK S LK=$$CUSTLASTORDS
 .S TXTMRQ=""
 .S FIRSTLINE=1
 .W "<br>"
 . N STYLE S STYLE="font-size:"_$$^W3FSZ(16)
 . I $$CUSTALL D
 . .D ^W4BUTTON("lastords","SHOWLASTORDS","CustLastOrders1('"_LK_"','0')",STYLE) 
 . I '$$CUSTALL D
 . .D ^W4BUTTON("allords","SHOWALLORDS","CustLastOrders1('"_LK_"','1')",STYLE) 
 . W $$NBSP^%L1FRM(10) D ^W4BCK
 .W "<br><br>"
 .D TBORD
 .D PUT^%W1PRM("CUSTLASTORDS",LK)
 .S N="",I=0 F  S N=$O(@$$^W4GL("W4LINKI")@(LK,MSD,N),-1) Q:N=""  I N D
 ..S I=I+1 I '$$CUSTALL,I>9 Q
 ..S W4DLVORD=N
 ..D SHOWORD(MSD,N,0)
 ;
 I $$MIKUM D
 .S %ARG("TIMESORT")=1
 .S %ARG("SHORTSHOW")=1
 .S %ARG("NOSENDEDORDS")=0
 .S %ARG("SENDEDORDS")=1
 .S %ARG("BIDS")=0
 .S %ARG("DELETEDORDS")=0
 .S %ARG("NOPAIDORDS")=1
 .S %ARG("PAIDORDS")=1
 .S %ARG("SHOWTAW")=0
 .S %ARG("ASCENDING")=0
 .S %ARG("FUTUREORDS")=0
 .S %ARG("SIK")=0
 ;
 I $$DISPATH!$$SNDKTC D
 .S %ARG("NOSENDEDORDS")=1
 .I $G(%ARG("TIMESORT"))="" S %ARG("TIMESORT")=1
 .I $G(%ARG("ASCENDING"))'=0 D
 ..S %ARG("ASCENDING")=$G(@$$^W4PRM@("ASCDLV"),1)
 .
 .I $G(@$$^W4PRM@("SHORTSHOW"))?1N,$G(%ARG("SHORTSHOW"))="" D
 ..S %ARG("SHORTSHOW")=^("SHORTSHOW")
 .I $G(%ARG("SHORTSHOW"))="" S %ARG("SHORTSHOW")=1
 .
 .I $G(%ARG("DELETEDORDS"))="" S %ARG("DELETEDORDS")=$S($$DELONLY!($$KNDO="DEL"):1,1:0)
 .I $G(%ARG("NOSENDEDORDS"))="" S %ARG("NOSENDEDORDS")=1
 .I $G(%ARG("NOPAIDORDS"))="" S %ARG("NOPAIDORDS")=1
 .I $G(%ARG("PAIDORDS"))="" S %ARG("PAIDORDS")=1
 .S %ARG("BIDS")=1
 .I $G(@$$^W4PRM@("NOVWTAW"))?1N,$G(%ARG("SHOWTAW"))="" D
 ..S %ARG("SHOWTAW")='^("NOVWTAW")
 .I $G(%ARG("TAW")) S %ARG("SHOWTAW")=1
 .I $G(%ARG("SHOWTAW"))="" S %ARG("SHOWTAW")=1
 ;
 I '$$DISPATH,'$$SNDKTC D SETARG
 ;
 I $G(%ARG("NOSENDEDORDS"))=0 D
 .S %ARG("FUTUREORDS")=0
 .S %ARG("BIDS")=0
 ;
 I $$VIEWRCV G DIR
 ;
 I $$SHOW4COPY D  ; -- SHOW FOR COPY
 .W "<h2 style=""color:red;font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("CLICK4COPY")_"</h2>",!
 ;
 I '$$SHOW4COPY,'$$MY,'$$REPTRH D
 .N MEDAT,ADDAT,KOT,GLLINK
 .S MEDAT=$G(%ARG("MEDAT")),ADDAT=$G(%ARG("ADDAT"))
 .S KOT=""
 .S GLLINK=$G(%ARG("GLLINK"))
 .I GLLINK="",'$G(%ARG("TODAY")),'$$CALLTO,'$$TOMORROW D
 ..I MEDAT=ADDAT S KOT=$$^%W1DICT("ORDERSLIST2DAY",MEDAT)
 ..I MEDAT'=ADDAT S KOT=$$^%W1DICT("ORDERSLIST2PERIOD",MEDAT_"<>"_ADDAT)
 .I GLLINK="W4LINKDR" D
 ..I MEDAT=ADDAT S KOT=$$^%W1DICT("ORDERSRCV2DAY",MEDAT)
 ..I MEDAT'=ADDAT S KOT=$$^%W1DICT("ORDERSRCV2PERIOD",MEDAT_"<>"_ADDAT)
 .W "<h2 style=""color:brown"">"_KOT_"</h2>",!
 .I $$TOMORROW D 
 ..I $$ALL2MSL^W4PRM D  Q
 ...D BUTTON("printords1",$$^%W1DICT("PRINTALLORDS"),"PrintAllOrds('0')","color:blue;font-size:"_$$^W3FSZ(16))
 ..
 ..D BUTTON("printords1",$$^%W1DICT("PRINTALLORDSMDB"),"PrintAllOrds('1')","color:blue;font-size:"_$$^W3FSZ(16))
 ..W $$NBSP^%L1FRM(5)
 ..D BUTTON("printords2",$$^%W1DICT("PRINTALLORDSNOMDB"),"PrintAllOrds('0')","color:blue;font-size:"_$$^W3FSZ(16))
 ..I $$SF^W4PRM D
 ...W $$NBSP^%L1FRM(5)
 ...D BUTTON("printords3",$$^%W1DICT("PRINTALLKOTMDB"),"PrintAllKotMdb()","color:blue;font-size:"_$$^W3FSZ(16))
 ;
DIR ;
 S DRC=$S($G(%ARG("ASCENDING")):1,1:-1)
 ;
 S TXTMRQ=""
 S FIRSTLINE=1
 ;
 K @$$^W4MAIN("VIB")
 K @$$^W4MAIN("TMP")
 ;
 N TMPARG S TMPARG=$$^W4MAIN("TMPARG")
 K @TMPARG M @TMPARG=%ARG
 ;
 D CRVIB(1) ; -- PROYTI VES CYCL NE POKAZYVAYA
 ;
 I $$MY D
 .W "<table dir="""_$$^%W1DIR_""">"
 .W " <tr>"
 . W " <td style=""color:darkgreen;font-size:"_$$^W3FSZ(18)_""">"
 .  W $$SHOW^W4KOTMLZ($$MY,"12B")
 . W " </td>"
 .W " </tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 I $$REPTRH D KOTREPTRH
 ;
 I $$CALLTO D
 .W "<table dir="""_$$^%W1DIR_""" width=""90%"" >"
 . W "<tr>"
 .  W "<td>"
 .   W $$^%W1DICT("ORDERNUMBER")
 .  W "</td>"
 .  W "<td>"
 .   W "<input type=""text"" id=""ordernmb"" size=""10"" >"
 .  W "</td>"
 .  W "<td>"
 .   W $$^%W1DICT("MEDATE")
 .  W "</td>"
 .  W "<td>"
 .    D ^%W1DAT("MEDAT",$G(%ARG("MEDAT")))
 .  W "</td>" 
 .  W "<td>"
 .   W $$^%W1DICT("ADDATE")
 .  W "</td>"
 .  W "<td>"
 .    D ^%W1DAT("ADDAT",$G(%ARG("ADDAT")))
 .  W "</td>" 
 .  W "<td>&nbsp;</td>" 
 .  W "<td>"
 .  D BUTTON("rbtshow",$$^%W1DICT("SHOW"),"ShowCallTo()","color:green;font-size:"_$$^W3FSZ(16))
 .  W "</td>"
 . W "</tr>",!
 .W "</table>",!
 ;
 I '$$VIEWRCV,'$$SNDKTC,'$$REPTRH D KOT
 ;
 I '$$REPTRH,'$$MIKUM D DIVPSL
 ;
 K @$$^W4MAIN("TMPIRTM")
 ;
 D TBORD
 ;
 I $E($G(%ARG("ORDER")))="W"!($E($G(%ARG("ORDER")))="w") D
 .N ORD S ORD=+$E(%ARG("ORDER"),2,20)
 .I $G(@$$^W4GL("HZLINKI")@(ORD)) S %ARG("ORDER")=$P(^(ORD),"\") Q 
 .S HZMLAK=$E($G(%ARG("ORDER")),2,12)
 .K %ARG("ORDER")
 ;
 I $E($G(%ARG("ORDER")))="T" D
 .N ORD S ORD=+$E(%ARG("ORDER"),2,20)
 .I $G(@$$^W4GL("HZLINKTB")@(ORD)) S %ARG("ORDER")=$P(^(ORD),"\") Q 
 .S HZMLAK=$E($G(%ARG("ORDER")),2,12)
 .K %ARG("ORDER")
 ;
 I $E($G(%ARG("ORDER")))="M" D
 .N ORD S ORD=+$E(%ARG("ORDER"),2,20)
 .I $G(@$$^W4GL("HZLINKMSH")@(ORD)) S %ARG("ORDER")=$P(^(ORD),"\") Q 
 .S HZMLAK=$E($G(%ARG("ORDER")),2,12)
 .K %ARG("ORDER")
 ;
 I $G(%ARG("ORDER")) D  G TOTLAB ; -- SHOW ONE ORDER
 .N MSDHZ S MSDHZ=$P($G(@$$^W4GL("W4LINK")@(%ARG("ORDER"))),"~") Q:'MSDHZ
 .I $G(MSD),MSDHZ'=MSD Q
 .I $G(%ARG("MSDR")),'$D(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
 .N JB S W4DLVORD=%ARG("ORDER"),JB=W4DLVORD
 .D SHOWORD(MSDHZ,%ARG("ORDER"),0)
 ;
 ;
 I '$G(%ARG("SIK")) D CRVIB(0) ; -- PROYTI VES CYCL & POKAZAT
 ;
TOTLAB ;
 I '$$DISPATH,'$$VIEWRCV,'$$SNDKTC D TOT
 W "</table>",!
 ;
 W "<br />",!
 ;
 I '$$VIEWRCV,'$$REPTRH D BUTTONS
 ;
 W "</div>",!
 ;
 W "<br /><br /><br />",!
 ;
 ;K ^[$$^W3MAIN]TMPORD(JB)
 ;I $D(^[$$^W3MAIN]TMPORDB(JB)) D
 ;.M ^[$$^W3MAIN]TMPORD(JB)=^[$$^W3MAIN]TMPORDB(JB)
 ;
END Q
 ;
 ;
QN(HZ) ;
 I '$$DEL^W4DEL(HZ),$$TSHL^W4HZMST(HZ)<-.9 Q 0
 Q 1
 ;
CLEAR ; 
 K %ARG D CLRTMP^W4KORD
 D KILL^%W1PRM("HZM"),KILL^%W1PRM("DISPATH"),KILL^%W1PRM("SNDKTC")
 D KILL^%W1PRM("MSGFROMSAVED"),KILL^%W1PRM("WINDLV")
 K @$$^W4MAIN("VIB"),@$$^W4MAIN("VIB1"),@$$^W4MAIN("TMPARG")
 Q
 ;
GLLINK(STAM) ;
 N GLLINK
 S GLLINK=$$^W4GL("W4LINKD")
 I $L($G(%ARG("GLLINK"))) S GLLINK=$$^W4GL(%ARG("GLLINK"))
 Q GLLINK
 ;
 ;
TBORD ;
 W "<table id=""TblOrd"" dir="""_$$^%W1DIR_""" class=""vw"" border=1 cellspacing=""0"" width=""100%"" style="""_$$RAD^W3CSM(6)_""">",!
 D KOTTB
 Q
 ;
INITVIB ;
 K SPAY,SHZ,SDMS,SNEW,SMKR,SHNH,SSOAD
 S (SPAY,SHZ,SDMS,SHNH,SNEW,SNEWDM,SNEWHN,SNEWPAY,SDEL,SSBM,SNOSHUD,SNOSBM,SNOSHUL,SNODLV)=0
 S (SPAYM,SHZM,SDMSM,SSOAD)=0 K SMSD,SCODTS
 Q
 ;
CRVIB(NOPC) ;
 N HZMH
 D INITVIB
 ;;S ^LV("W4DLVORD-CRVIB","NOPC")=$G(NOPC)
 I '$G(NOPC) G CRVIB1
 N SHAAGV S SHAAGV=$$SHAAGV
 ;
 I $$CALLTO D  G CRVIBE
 .N DTHM,TMHM,HZ
 .S DTHM=$H-31
 .I $G(%ARG("MEDAT")) S DTHM=$$^%L1DC(%ARG("MEDAT"),3)-1
 .I $G(%ARG("CALLTOORD")) S DTHM=DTHM-500
 .F  S DTHM=$O(@$$^W4GL("W4WHENI")@(DTHM)) Q:DTHM=""  Q:(DTHM>($H+3))&($$CALLTO=1)&'$G(%ARG("ADDAT"))&'$G(%ARG("CALLTOORD"))  D
 ..I $G(%ARG("ADDAT")),'$G(%ARG("CALLTOORD")),DTHM>$$^%L1DC(%ARG("ADDAT"),3) Q
 ..S TMHM="" F  S TMHM=$O(@$$^W4GL("W4WHENI")@(DTHM,TMHM)) Q:TMHM=""  D
 ...S HZ="" F  S HZ=$O(@$$^W4GL("W4WHENI")@(DTHM,TMHM,HZ)) Q:HZ=""  D
 ....I $G(%ARG("CALLTOORD")) D  Q
 .....I HZ=%ARG("CALLTOORD") S @$$^W4MAIN("TMP")@(DTHM_$J(TMHM,3)_$J(HZ,10))=""
 ....I '$$^W4HZMH(HZ),'$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) Q
 ....I $G(%ARG("MKBL")),+$$MKBL^W4HZMST(HZ)'=+%ARG("MKBL") Q
 ....I $G(%ARG("BUSPRV"))?1N,+$$KINDORD^W4HZMST(HZ)'=+%ARG("BUSPRV") Q
 ....S @$$^W4MAIN("TMP")@(DTHM_$J(TMHM,3)_$J(HZ,10))=""
 ;
 N DT
 I $G(MEDT),$G(ADDT) F DT=MEDT:1:ADDT+1 D
 .N DTTO,SHAA,SL,N
 .S N="" F  S N=$O(@$$GLLINK@(DT,N)) Q:N=""  D
 ..I '$$MSL^W4MSL(N) Q
 ..;
 ..S DTTO=$$^%L1DC($$TRH^W4HZMST(N),3)
 ..S SHAA=$$SHAA^W4HZMST(N)
 ..
 ..I $G(%ARG("GLLINK"))="W4LINKDR" D
 ...S DTTO=$$^%L1DC($P($$DATCB^W4HZMST(N),"  "),3)
 ...S SHAA=$P($$DATCB^W4HZMST(N),"  ",2)
 ..
 ..I DTTO>(ADDT+1) Q
 ..I DTTO=(ADDT+1),SHAA'<SHAAGV Q
 ..I 'DTTO S DTTO=$$^%L1DC($P($$DATCB^W4HZMST(N)," "),3)
 ..I $$DISPATH!$$SNDKTC,DTTO<P1DZ!(DTTO>($H+1)) Q
 ..I $$DISPATH!$$SNDKTC,DTTO<P1DZ!(DTTO=($H+1)&(SHAA'<SHAAGV)) Q
 ..I $$DISPATH!$$SNDKTC,DTTO=P1DZ,SHAA<SHAAGV Q
 ..I DTTO=MEDT,SHAA<SHAAGV,SHAA'="00:00" Q
CRVIBM .. ;
 ..N MN S MN=$TR($J(SHAA*60+$P(SHAA,":",2),4)," ",0)
 ..
 ..I $$MIKUM D  Q
 ...S SL=$$PSL^W4HZMST(N) Q:'SL
 ...S @$$^W4MAIN("TMP")@(SL_"^"_DTTO_MN_"^"_$J(N,9))="" Q
 ..; 
 ..I $G(%ARG("TIMESORT"))=1 D
 ...N IND S IND=DTTO_MN_$J(N,9) D SFIND
 ...S @$$^W4MAIN("TMP")@(IND)=""
 ..
 ..I $G(%ARG("TIMESORT"))=2 D
 ...N IND S IND=999999999_$J(N,9) D SFIND
 ...S @$$^W4MAIN("TMP")@(IND)=""
 ..
 ..I $G(%ARG("TIMESORT"))=3 D
 ...S @$$^W4MAIN("TMP")@($$IR^W4HZMST(N)_"^"_$$KTV^W4HZMST(N)_"^"_$$BAIT^W4HZMST(N)_"^"_$J(N,9))=""
 ;
 I $$REPTRH=3,$G(MEDT),$G(ADDT) F DT=MEDT:1:ADDT D
 .N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..Q:$$HZM^W4MSL(HZ)
 ..S @$$^W4MAIN("TMP")@(999999999_$J(HZ,9))=""
 ;
CRVIBE ;
 K MPSL
 S N="" F  S N=$O(@$$^W4MAIN("TMP")@(N),DRC) Q:N=""  D
 .N HZ S HZ=$$HZ(N)
 .D VIB(N,HZ,$G(NOPC))
 ;;W "   T3="_$H
 Q
 ;
 ;
MIKUM(STAM) ; 
 Q $G(%ARG("MIKUMSL"))
 ;
HZ(N) ;
 I $$MIKUM Q $$SPA^%L1FRM($P(N,"^",3))
 N HZ
 I $G(%ARG("TIMESORT"))=3 S HZ=$$SPA^%L1FRM($P(N,"^",4)) Q HZ
 S HZ=$TR($E(N,11,20)," ","")
 Q HZ
 ;
SFIND ;
 I $$SF^W4PRM,$G(%ARG("TAW"))!($G(%ARG("KNDO"))="TAW") D  Q
 .I $$ITRA^W4HZMST(N)>.9,'$$^W4HZMH(N) S IND=$E(IND,1,5)_1_$E(IND,6,20) Q
 .S IND=$E(IND,1,5)_2_$E(IND,6,20) Q
 Q
 ;
CRVIB1 ;
 S FIRSTLINE=1
 N A,IND,N,MSDHZ,W4DLVORD
 ;;S ^LV("W4DLVORD-CRVIB1")=$G(NOPC)
 S IND="" F  S IND=$O(@$$^W4MAIN("VIB")@(IND),DRC) Q:IND=""  D
 .S N=$$HZ(IND)
 .S A=$G(@$$^W4GL("W4LINK")@(N))
 .S MSDHZ=$P(A,"~")
 .S W4DLVORD=N
 .D SHOWORD(MSDHZ,N,0)
 ;
 Q
 ;
 ;
VIB(FULLIND,N,NOPC) ;
 N A,MSDHZ,HZMH,HZ
 I $G(N)="" Q
 S HZMH=$$^W4HZMH(N)
 ;
 S A=$G(@$$^W4GL("W4LINK")@(N))
 ;
 S MSDHZ=$P(A,"~")
 I $$^W4MM S MSDHZ=$P(A,"~",5)
 ;
 ;;I $G(%ARG("STAGE")),$$STAGE^W4HZMST(N)'=1 Q  ; -- 10/06/26
 ;;I '$G(%ARG("STAGE")),$$STAGE^W4HZMST(N)=1 Q  ; -- 10/06/26
 ;
 I $$REPTRH=3,$$HZM^W4MSD(N) G VIBSHOW1
 I 'MSDHZ G VIB1
 ;
 I $G(MSD),MSDHZ'=MSD Q
 ;
 D D(1)
 I $G(%ARG("REST")),MSDHZ'=%ARG("REST") Q
 D D(2)
 ;
 I $G(%ARG("MSDR")),MSDHZ,'$G(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
VIB1 ;
 D D(3)
 S W4DLVORD=N ;;N JB S JB=N
 N CODEHZ S CODEHZ=$$NMB^W4HZMST(N)
 ;
 I $G(MKBL),MKBL'=$$MKBL^W4HZMST(N) Q
 I $G(SLH),SLH'=$$PSL^W4HZMST(N) Q
 D D(4)
 S LKHR=$G(LKHR)
 ;
 I $G(LKH),'$D(@$$^W4GL("LKH")@(LKH)) D
 .N LK S LK=$O(@$$^W4GL("KLLKTH")@(LKH,""))
 .I LK,$D(@$$^W4GL("LKH")@(LK)) S LKH=LK
 ;
 I $G(LKH),$$^W4ISCDLK(LKH),'$$^W4KIOSKO(N),CODEHZ'=$P($$SPA^%L1FRM(LKH)," ") Q
 N NMB S NMB=$$NMB^W4HZMST(N)
 I $G(NMB),$$PAPJ^W4PRM,NMB=$$MPLK^W4MPCHZ!(NMB=$$COUPLK^W4MPCHZ) Q
 D D(5)
 ;
 I $G(LKHR),$$^W4ISCDLK(LKHR),$G(CODEHZ),'$$^W4KIOSKO(N),LKHR'=$G(@$$^W4GL("P1EZL")@(CODEHZ)) Q
 D D(6)
 ;
 I $G(SUGT),$$CODTS^W4HZMST(N)'=SUGT Q
 D D(7)
 ;
 S IR=$$IR^W4HZMST(N) I $$HZM^W4MSL(N),IR="" S IR="TAKEAWAY"
 I $L($G(%ARG("IR"))),$G(%ARG("IR"))'="ALL",IR'=$$INVH^%L1FRM(%ARG("IR")) Q
 D D(8)
 ;
 S CUSTOM=$G(CUSTOM)
 ;;I $L(CUSTOM),$TR(CUSTOM,"-","")'?1N.N,$G(NAME)="" S NAME=CUSTOM,CUSTOM=""
 I $L($G(NAME)),'$$SRCH^W1SRCH($$NAME^W4HZMST(N),NAME),'$$SRCH^W1SRCH($$MAZMIN^W4HZMST(N),NAME) Q
 D D(9)
 ;
 I $L($G(COMP)),'$$SRCH^W1SRCH($$COMP^W4HZMST(N),COMP) Q
 D D(10)
 ;
 N ADR S ADR=$$SPA^%L1FRM($G(%ARG("ADDR")))
 S ADR=$TR(ADR,"/"," ")
 N KTVM S KTVM=$$KTVM^W4HZMST(N)
 S KTVM=$TR(KTVM,"/"," ")
 I $L(ADR),'$$SRCH^W1SRCH(KTVM,ADR) Q
 D D(10.5)
 ;
 I $G(TELB)="",$G(PELE)="",$G(LKH),LKH'=$$NMBKSK^W4KIOSKO S TELB=LKH
 N TELB1 S TELB1=$TR($G(TELB)," -","")
 ;;S ^AA("W4DLVORD",N,"TELB1")=TELB1
 I $L($G(TELB1)),TELB1'=$$NMBKSK^W4KIOSKO,TELB1'=$TR($$TELB^W4HZMST(N)," -",""),(TELB1'=$TR(CODEHZ," -","")),(TELB1'=$TR($$PELE^W4HZMST(N)," -","")) Q
 D D(11)
 ;
 N PELE1 S PELE1=$TR($G(PELE)," -","")
 I $L(PELE1),PELE1'=$TR($$PELE^W4HZMST(N)," -",""),PELE1'=$TR(CODEHZ," -",""),PELE1'=$TR($$TELB^W4HZMST(N)," .","") Q
 D D(12)
 ;
VIBMKR ;
 I $G(MKR)?1N.N,MKR'=99,MKR'=$$MKR(N) Q
 I $G(MKR)=99,$$MKRDLV^W4HZMST(N)'="",$$MKRDLV^W4HZMST(N)'=99 Q
 D D(12.5)
 N TSHL S TSHL=$$TSHL^W4HZMST(N)
 I $G(MESUM),TSHL<MESUM Q
 D D(13)
 I $$DISPATH,TSHL<0,$G(@$$^W4PRM@("NOVWZIC")) Q
 I $$DISPATH,$$DEL^W4DEL(N) Q
 D D(13.5)
 ;
 I $G(ADSUM),TSHL>ADSUM Q
 D D(14)
 ;
 N HZMLAKHZ S HZMLAKHZ=$$HZMLAK^W4HZMST(N) S:$E(HZMLAKHZ)="W" HZMLAKHZ=$E(HZMLAKHZ,2,10)
 N HZMLAKHZ1 S HZMLAKHZ1=$$HZLAKNOM^W4HZMST(N)
 N HZMLAKHZ2 S HZMLAKHZ2=$$HZLAKNOM2^W4HZMST(N)
 I $G(HZMLAK)'="",HZMLAK'=HZMLAKHZ,HZMLAK'=HZMLAKHZ1,HZMLAK'=HZMLAKHZ2,HZMLAK'=+$$HRAED^W4HZMST(N),HZMLAK'=$$INVH^%L1FRM(HZMLAKHZ) Q
 D D(15)
 ;
 I $TR(CUSTOM,"-","")?1N.N,CUSTOM'=$$NMB^W4HZMST(N) Q
 I $L(CUSTOM),$TR(CUSTOM,"-","")'?1N.N,'$$SRCH^W1SRCH($$NAME^W4HZMST(N),CUSTOM),'$$SRCH^W1SRCH($$MAZMIN^W4HZMST(N),CUSTOM) Q
 ;
 I $G(NCA),'$$CMPR(N,NCA) Q
 D D(16)
 ;
 I $G(OPT)=1,$$SENDEDORD(N)!$$DELORD(N) D D(16.1) Q  ;-- WAITING
 ;
 N OKSTS S OKSTS=0
 I $G(%ARG("SUGTS")) D  Q:'OKSTS
 .I %ARG("SUGTS")=8 D
 ..N NN S NN="" F  S NN=$O(@$$^W4ORD@(N,"CB","ASR",NN)) Q:NN=""  I NN D  Q:OKSTS
 ...N A S A=$G(^(NN))
 ...I $G(@$$^W4PRM@("CIBUS")),$P(A,"*")=@$$^W4PRM@("CIBUS") S OKSTS=1 Q 
 .I %ARG("SUGTS")=10 D
 ..N NN S NN="" F  S NN=$O(@$$^W4ORD@(N,"CB","ASR",NN)) Q:NN=""  I NN D  Q:OKSTS
 ...N A S A=$G(^(NN))
 ...I $G(@$$^W4PRM@("10BIS")),$P(A,"*")=@$$^W4PRM@("10BIS") S OKSTS=1 Q 
 .Q:OKSTS
 .I %ARG("SUGTS")'=$$CODTS^W4HZMST(N) Q
 .S OKSTS=1
 D D(16.5)
 ;
 I $$DISPATH,$$TAW,'$$TAKEAWAY^W4HZMST(N) Q
 I $$DISPATH,$$PIZUL(N) Q
 I $$DISPATH,$$SNDDLVKTC^W4PRM,'$$SNDKTCORD(N) Q
 ;
 I '$$TAW,'$G(%ARG("SHOWTAW")),$$TAKEAWAY^W4HZMST(N) Q
 ;
 I $$KNDO="NSND",$$SENDEDORD(N) Q
 I $$KNDO="SND",'$$SENDEDORD(N) Q
 I $$KNDO="FTR",'$$FUTURE(N) Q
 I $$KNDO="DEL"!$$DELONLY,'$$DELORD(N) Q
 I $$KNDO="TAW",'$$TAKEAWAY^W4HZMST(N) Q
 I $$KNDO="BID",'HZMH Q
 I $$KNDO="PD",$$NOSHUL(N) Q
 I $$KNDO="NPD",'$$NOSHUL(N) Q
 I $$KNDO="TBIDS",'HZMH Q
 ;
 I $G(@$$^W4PRM@("NOVWDEL-")),$G(%ARG("DELETEDORDS")),$$I^W4DEL(N),$$TSHL^W4HZMST(N)<0 Q
 I $G(%ARG("DELETEDORDS")),$$DELORD(N) G VIBSHOW
 I '$G(%ARG("DELETEDORDS")),$$DELORD(N),$$DELONLY!($$KNDO="DEL"),$$^W4DEL(N) G VIBSHOW
 ;
 I '$G(%ARG("DELETEDORDS")),$G(%ARG("HZMLAK"))="",$$DELORD(N),'$G(%ARG("NCA")) D D(19.5) Q
 I $G(%ARG("NIGHT")),$$NIGHT(N) G VIBSHOW 
 I $G(%ARG("NIGHT")),'$$NIGHT(N) Q
 ;
 I $G(%ARG("FUTUREORDS")),$$FUTURE(N),'$$DELORD(N),'HZMH G VIBSHOW
 ;
 ;;I $G(%ARG("SHOWTAW")),$$TAKEAWAY^W4HZMST(N),'$$DELORD(N),'HZMH,'$$DISPATH G VIBSHOW
 ;
 N DATHZ S DATHZ=$$DTHZ(N)
 I $G(%ARG("TODAY")),DATHZ<$$^W4DZ,'$$ITRA^W4HZMST(N)!$$DELORD(N) Q
 ;
 ;;I $G(%ARG("DELETEDORDS")),$$DELORD(N) G VIBSHOW
 ;
 ;
 I '$G(%ARG("SENDEDORDS")),'$G(%ARG("ALLORDS")),$$SENDEDORD(N),'$$DELORD(N),'HZMH D D(16.2) Q
 I '$G(%ARG("NOSENDEDORDS")),'$$SENDEDORD(N),'$$DELORD(N),'HZMH D D(16.3) Q
 
 D D(17)
 ;
 I $G(OPT)=2,'$$SENDEDORD(N)!$$DELORD(N) D D(18) Q  ; -- SUBMIT
 I $G(OPT)=3,'$$DELORD(N) D D(19) Q  ; -- DELETE
 ;
 D D(19.6)
 I $$SNDKTC,$$KINDORD="NOSENDED",$$SNDKTCORD(N) D D(19.8) Q
 ;
 I '$G(%ARG("NOPAIDORDS")),$$NOSHUL(N),'$$DELORD(N),'HZMH Q
 I '$G(%ARG("PAIDORDS")),'$$NOSHUL(N),'$$DELORD(N),'HZMH Q
 D D(21)
 I $$CALLTO G VIBSHOW1
 ;
 ;;W "N="_N_"  MEDT="_MEDT_" ADDT="_ADDT_" DATHZ="_DATHZ_" CODEHZ="_CODEHZ_"<br />",!
 I $G(MEDT),DATHZ<MEDT Q
 D D(23)
 ;
 I $G(ADDT),DATHZ>ADDT Q
 D D(24)
 ;
 I '$G(%ARG("FUTUREORDS")),$$FUTURE(N),'$$DELORD(N) Q
 ;
 D D(25)
 I '$G(%ARG("BIDS")),HZMH Q
 ;
 D D(26)
VIBSHOW ; 
 N DATHZ S DATHZ=$$DTHZ(N)
 I $G(MEDT),DATHZ<MEDT Q
 I $G(ADDT),DATHZ>ADDT Q
 N PSL
 D D(27)
 I $$MIKUM S PSL=+$P(FULLIND,"^") I $D(MPSL(PSL)) D D(28) Q
VIBSHOW1 ;
 D
 .N EN S EN=0
 .I $$SF^W4PRM,$$DISPATH,$$TAKEAWAY^W4HZMST(N),'$$^W4HZMH(N) D  Q:EN
 ..N TRH S TRH=$$TRH^W4HZMST(N)
 ..I $$^%L1DC(TRH,3)>$$^W4DZ Q
 ..I $$PAIDIT^W4HZPCHD(N) D  S EN=1 Q
 ...D SGPSL(N,19)
 ..I $$WOLT^W4HZPCHD(N) D  S EN=1 Q
 ...D SGPSL(N,1)
 ..D
 ...N DATCB S DATCB=$$DATCB^W4HZMST(N)
 ...I $$DIF^%L1TIME($H,DATCB)<15 Q
 ...N PSL S PSL=2
 ...D SGPSL(N,PSL) S EN=1
 .
 .I $G(@$$^W4PRM@("ZAZA")),$$DISPATH,$$WOLT^W4HZPCHD(N) D SGPSL(N,-1) Q
 .
 .D SHOWORD(MSDHZ,N,NOPC)
 ;
 S @$$^W4MAIN("VIB")@(FULLIND)=""
 I $G(PSL) S MPSL(PSL)=""
 ;
 Q
 ;
SENDEDORD(HZ) ;
 I $$PSL^W4HZMST(HZ) Q 1
 I $$PIZUL(HZ) Q 1
 Q 0
 ;
DELORD(HZ) ;
 I $$DEL^W4DEL(HZ) Q 1
 ;;I $$TSHL^W4HZMST(HZ)<0 Q 1
 I $D(@$$^W4ORD@(HZ))'=11 Q 3
 Q 0
 ;
FUTURE(N) ;
 N DATHZ S DATHZ=$$DTHZ(N)
 I DATHZ>$H Q 1
 Q 0 
 ;
SHAAGV(STAM)
 I '$$^W4SHAAZ Q 5
 Q $$SHAAZ^W4PRM
 ;
FAXORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"F")) Q 1
 Q 0
 ;
HZMH(HZ) ;
 I $$^W3PRCOFR(HZ) Q 1
 Q 0
 ;
MOUSEOVER ;
 N PRMHZ S PRMHZ=N_"~"_$G(MEDT)_"~"_$G(ADDT)_"~"_$G(LKH)
 W " onMouseOver=""ChangeCursor(this)"" onClick=""ShowOrd('"_N_"','"_PRMHZ_"',1)""",!
 Q
 ;
 ;
SHOWORD(MSD,N,NOPC) ;
 ;;S ^LV("W4DLVORD-SHOWORD0",N)=$G(NOPC)
 N HZMH,PSL,MPSL S HZMH=$$^W4HZMH(N)
 D GL
 I $D(@GL@(N))<11 Q
 D D(29)
 S N=$TR(N," ","")
 ;
 ;;S ^LV("W4DLVORD-SHOWORD",N)=$G(NOPC)
 ;
 N DAT,SHAA,IR ;;,JB S JB=N
 S DAT=$$TRH^W4HZMST(N)
 S SHAA=$$SHAA^W4HZMST(N)
 S IR=$$IR^W4HZMST(N)
 N CMHD S CMHD=$$HRA2^W4HZMST(N)
 ; --------- ORDER NUMBER ---------
 ;
 D COMPTOT(N)
 ;
 I $G(NOPC) D  Q  ; -- PREPAIR BEG STROKA
 .D:$L(CMHD)
 ..I CMHD?1N.N1":10B".P Q
 ..I CMHD["dpnfd lehia" Q
 ..I CMHD[":10B" S CMHD=$P(CMHD,":10B",2,20)
 ..I $$^%L1DC($$TRH^W4HZMST(N),3)'=+$H Q
 ..N SHAA S SHAA=$$SHAA^W4HZMST(N)
 ..I $$DELORD(N) Q
 ..I SHAA*60+$P(SHAA,":",2)<($P($H,",",2)/60) Q
 ..N TXT S TXT=" "_N_" : "_$$H2U^%L1FRM(CMHD)_" ******"
 ..S TXTMRQ=TXTMRQ_TXT
 ;
 ;
 I FIRSTLINE,$L(TXTMRQ),$G(OPT) D  ; -- SHOW BEG STROKA
 .W "<tr><td colspan=""4"">"
 .W "<marquee scrolldelay=""120"" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" style=""background-color:yellow;color:black;font-size:"_$$^W3FSZ(12)_";width:100%;"_$$FONTFM^W3CSS_";font-weight:bold;border:solid 1px brown"" >"
 .W TXTMRQ
 .W "</marquee>",!
 .W "</td>"
 .W "</tr>",!
 .S FIRSTLINE=0
 ;
 ;;W N,!
 ;----------------------------------- SHOW LINE ----------
 W "<tr" ; --- CHOICE LINE COLOR
 N FGCOLOR
 D BGCOLOR(N)
 W " id=""ord"_N_""""
 W " >"
  ;
  ;--- COLUMN 1 ( ORDER NUMBER + SIGN FOR DELIVERING )
  W "<td style=""text-align:center;font-size:"_$$^W3FSZ(14)
    I $G(%ARG("CUR"))=N W ";border:2px brown solid"
    W ";"_$$FGCOLOR(N)
    W """ "
    W " id=""tdord"_N_""" "
    W " dir="""_$$^%W1DIR_""" "
   W ">"
   I $$MSPYOM^W4PRM D
   .W "<span style=""font-size:"_$$^W3FSZ(12)_";color:"_$S($$NIGHT(N):"orange",$$DELORD(N):"red",1:"black")_""" >"
   . W "&nbsp;"_W4DLVORD_"&nbsp;"
   .W "</span>",!
   .W "<span style=""font-size:"_$$^W3FSZ(18)_";color:green"" >"
   . W "&nbsp;"_$$^W4MSPYOM(N)_"&nbsp;"
   .W "</span>"
   ; 
   I '$$MSPYOM^W4PRM D
   .W "&nbsp;"_W4DLVORD_"&nbsp;"
   ;
   ;;I $G(%ARG("STAGE")) G SO1
   ;
   I $$DISPATH,'$$SENDEDORD(N),'$$DELORD(N),'HZMH D CHKSND(N)
   I $$SNDKTC,'$$SNDKTCORD(N),'$$DELORD(N) D CHKSND(N)
SO1 ;
   I '$$DELORD(N),'$$MIKUM D
   .W "<br>",!
   .I $$DISPATH,$$FIRE^W4HZMST(N) W "<img src=""w4fire.jpg"" style=""width:15px;height:18px""/>"
   .W "&nbsp;" D MSGTM(DAT,SHAA,IR,N)
   ;
   I '$$MIKUM,$D(@$$^W4ORD@(N,"DETNOTES"))>9 D
   .W "<br>"
   .D ^W4BTN("NOTES","ShowDetNotes('"_N_"')","BROWN",,"14")
   ;
   I $$MIKUM D
   .N PSL S PSL=$$PSL^W4HZMST(N) Q:'PSL
   .W "<BR><span style=""font-size:"_$$^W3FSZ(10)_";color:darkblue;font-weight:bold"" >"
   .W $$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))_"</span>"
   ;
  W "</td>",!
  ;
  ;---------------- COLUMN 2 - ORDER DETAILS
  W "<td "
  D
  .N WD S WD=2 I $$SF^W4PRM S WD=4
  .I $$NEW(N,MSD) W " style=""border:solid red "_WD_"px"""
  ;
  D MOUSEOVER
  W ">",! ;
   S %ARG("W4DLVORD")=W4DLVORD
   D ^W4ORDHD(W4DLVORD,$$SHORTSHOW)
  W "</td>",!
  ;
  ; ---------------- COLUMN 3 - TOTAL & PAYMENT KIND
  W "<td "
   I '$$DELORD(N) D
   .W "style=""text-align:center;font-size:"_$$^W3FSZ(14)_";color:red"
   .I $$NOSHUL(N) D
   ..I $$SF^W4PRM,$$CODTS^W4HZMST(N)=4,$D(@$$^W4ORD@(N,"TB"))<10 D  Q
   ...W ";background-color:white"
   ..W ";background-color:pink"
   .I '$$NOSHUL(N) W ";background-color:white"
   .W """ "
  W " >",!
   ;
   W "&nbsp;"_$J($$TSHL^W4HZMST(N),2,2)_"&nbsp;<br />"
   ;
   N SHULS S SHULS=$$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N)
   N CODTS S CODTS=$$CODTS^W4HZMST(N)
   N ITRA S ITRA=$$ITRA^W4HZMST(N)
   ;
   I SHULS D
   .W "<span id=""paid"_N_""" style=""font-size:"_$$^W3FSZ(10)_";color:black"">"
   . W $$SHOWPAID(N)
   .W "</span>"
   .
   .I CODTS=4,$D(@$$^W4ORD@(N,"TB"))>9 S CODTS=7
   .
   .W "<br>"
   .W "<span style=""color:red;font-size:"_$$^W3FSZ(8)_""">"
   .D
   .. N MZM,CA,ASR,GIFT
   .. S MZM=$$MZM^W4HZMST(N)
   .. S GIFT=$$GIFT^W4HZMST(N)
   .. S CA=$$CA^W4HZMST(N)-GIFT
   .. S ASR=$$ASR^W4HZMST(N)
   .. I MZM W $$^W3SHOWTS(1)_" "_$J(MZM,2,2)_"<br>"
   .. I CA W $$^W3SHOWTS(3)_" "_$J(CA,2,2)_"<br>"
   .. I GIFT W "GIFT "_$J(GIFT,2,2)_"<br>"
   .. I ASR W $$^W3SHOWTS(4)_" "_$J(ASR,2,2)_"<br>"
   .W "</span>"
   .
   .I ITRA D
   ..W "<br>"
   ..N BGC,FGC S BGC="darkred",FGC="white"
   ..W "<span style=""background:"_BGC_";color:"_FGC_";font-size:"_$$^W3FSZ(11)_";font-weight:bold"" >"
   .. W "&nbsp;"_$$^%W1DICT("ITRA")_" "_$J($$ITRA^W4HZMST(N),2,2)_"&nbsp;"
   ..W "</span>"
   ;
   I 'SHULS,CODTS<5,ITRA,'HZMH D
   .I '$G(%ARG("SGYOM")) D
   ..N BGC,FGC S BGC="darkred",FGC="white"
   ..I CODTS=4,'$$SF^W4PRM S BGC="pink",FGC="black"
   ..I CODTS=4,$$SF^W4PRM S BGC="white",FGC="black"
   ..W "<span style=""background:"_BGC_";color:"_FGC_";font-size:"_$$^W3FSZ(11)_";font-weight:bold"" >"
   ..N PAYMKIND S PAYMKIND=$$PAYMKIND^W4PAYBT(CODTS)
   ..IF PAYMKIND="" S PAYMKIND="PAYMINLOCAL"
   ..W "&nbsp;"_$$^%W1DICT(PAYMKIND)_"&nbsp;"
   ..W "</span>"
   . 
   .I $G(%ARG("SGYOM")),'$$DELORD(N) D
   .. W "<span id=""paid"_N_""" style=""color:black;font-size:"_$$^W3FSZ(10)_""">"
   .. W "&nbsp;<input id=""paycash"_N_""" type=""button"" value="""_$$^%W1DICT("PAYCASH")_""" "
   .. W " style=""font-size:"_$$^W3FSZ(16)_""" "
   .. W " "_$$^W4TOUCH_"=""PayCash('"_N_"')"" />"
   .. W "</span>",!
  W "</td>",!
  ;
  ; ---------------- COLUMN 4 - READY
  I $$IFSNDY=2 D TDPREP
  I $$IFREADY D TDREADY
  I $$IFCALL2CL D TDCALL
  I $$IFSNDY D TDSUPPL
  ;
  ; ---------------- COLUMN 5 - SENDED TIME
  W "<td style=""text-align:center;font-weight:bold;font-size:"_$$^W3FSZ
   I $$DELORD(N) W ";background-color:black;color:red"
   I +$$DTHZ(N)=+$H,'$$SENDEDORD(N) D
   . W ";background-color:pink"
  W """>"
  ;
  ;
  I '$$SENDEDORD(N),$$DISPATH,$$TIMERMSL^W4PRM D
  .N TM0 S TM0=$P($G(@$$^W4ORD@(N,"SVTIME1")),",",2) Q:TM0=""
  .W "<span style=""color:red;font-size:"_$$^W3FSZ(16)_""">"
  . N TM S TM=$P($H,",",2)-TM0
  . I TM<0 S TM=TM+(24*3600) 
  . Q:TM<60  Q:TM>(2*3600)
  . W $$T^%L1TIME(TM)_"<br>"
  .W "</span>"
  ;
  I '$$SNDKTC D
  .I '$$SENDEDORD(N),'$$DELORD(N) D
  ..S ZMANS=$S($$TAKEAWAY^W4HZMST(N):$$^%W1DICT("TAKEAWAY!"),1:$$^%W1DICT("WAITING"))
  ..D
  ...N DT,DZ S DZ=$$^W4DZ,DT=""
  ...N D F D=DZ:1:DZ+100 I $D(@$$^W4GL("W4SLPLAN")@(D,N)) S DT=D Q
  ...Q:'DT
  ...Q:'$D(@$$^W4GL("W4SLPLAN")@(DT,N))
  ...N PSL,PSL1 S PSL=+$G(^(N)) Q:'PSL
  ...S PSL1=" [ "_$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))_" ? ]"
  ...S ZMANS=ZMANS_"<br><span style=""color:grey;font-size:"_$$^W3FSZ(9)_""">"
  ...S ZMANS=ZMANS_PSL1_"</span>"
  .
  .I $$SENDEDORD(N) D
  ..I $$PIZUL(N) S ZMANS=$$^%W1DICT("PIZUL") D  Q
  ...N HZ S HZ="" F  S HZ=$O(@$$^W4GL("W4PIZUL")@(N,HZ)) Q:HZ=""  I HZ D
  ....S ZMANS=ZMANS_"<br><span style=""color:brown;font-size:"_$$^W3FSZ(10)_""">"_HZ_"</span>"
  ..N PSL S PSL=$$PSL^W4HZMST(N) Q:'PSL
  ..S ZMANS=$$ZMANS^W4HZMST(N)_"<br>"
  ..S ZMANS=ZMANS_"<span style=""font-size:"_$$^W3FSZ(10-$$1024^W4WDSCR)_";color:darkblue"" >"
  ..S ZMANS=ZMANS_$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))_"</span>"
  ..I $$REHEV^W4PRM D
  ...S ZMANS=ZMANS_"<br><span style=""font-size:"_$$^W3FSZ(10-$$1024^W4WDSCR)_";color:grey"">"
  ...S ZMANS=ZMANS_$$^W4HZGRHV(N)_"</span>"
  ;
  I $$SNDKTC D
  .I '$$SNDKTCORD(N),'$$DELORD(N) D
  ..S ZMANS=$$^%W1DICT("WAITING")
  .;
  .I $$SNDKTCORD(N) D
  ..S ZMANS=$G(@$$^W4ORD@(N,"SNDKTC")) Q:'ZMANS
  ..S ZMANS=$ZD(ZMANS,"24:60")
  ;
  I '$$DELORD(N) W ZMANS
  ;
  I $$DELORD(N) D  Q
  .W "&nbsp;"
  .D
  ..I $$DELORD(N)=2 W $$^%W1DICT("DATEOVER") Q
  ..N OV,OV1 S OV=$P($G(@$$^W4GL("W4LINK")@(N)),"~",5),OV1=""
  ..I OV["^" S OV=$P(OV,"^")
  ..S OV1=$$^W4NAME(OV)
  ..W $$^%W1DICT("ORDERDELETEBY",OV1)
  ;
  I $$DELIS^W4PRM D
  .W "<br>"
  .I '$$SENDEDORD(N) D  Q
  ..W "<select id=""whosure"_N_""" style=""font-size:"_$$^W3FSZ(14)
  ..I '$G(@$$^W4GL("W4SURE")@(N)) W ";border:solid 4px red"
  .. W """" 
  .. W "onChange=""ChangeSure('"_N_"')"" "
  ..W ">",!  
  ..W "<option value=""0"" >-- "_$$^%W1DICT("WHOSURE")_" --</opton>",!
  ..N NN S NN="" F  S NN=$O(@$$^W4GNAME@(NN)) Q:NN=""  D
  ...I '$$GET1^W4LEVPR(NN,"MAKESURE") Q
  ...N NM S NM=$$H2U^%L1FRM($$^W4NAME(NN))
  ...W "<option value="""_NN_""" "
  ...I $G(@$$^W4GL("W4SURE")@(N)) D
  ....N VL S VL=$P($G(^(N)),"\")
  ....I VL'="",VL=NN W " selected=""selected"" "
  ...W ">"_NM_"</opton>",!
  ..W "</select>",!
  .
  .I $$SENDEDORD(N),$G(@$$^W4GL("W4SURE")@(N)) D
  ..N VL,WHO S VL=$G(^(N))
  ..S WHO=$P(VL,"\") Q:WHO=""
  ..W "<span style=""color:green"">"_$$^%W1DICT("MADESURE")_" : "_$$H2U^%L1FRM($$^W4NAME(WHO))
  W "</td>",!
  ;
  W "</tr>",!
 Q
 ;
 ;
TDREADY ;
 W "<td align=""center"" id=""ready"_N_""" "
  W "style="""
   I $$HESH^W4HZMST(N) W ";border:red 2px solid"
   I $$DELIS^W4PRM,$$READY(N) W ";background-color:lightgreen"
  W " """
 W ">"
  I '$$DISPATH,$$^W4HZMH(N),$$CORR^W4PRM D  W "</td>" Q
  .I $$CORR^W4PRM D
  ..N CLRBUT S CLRBUT="green" 
  ..I $D(@$$^W4GL("W4CORHM")@(N))>9 S CLRBUT="red"
  ..D ^W4BUTTON("","CORRESPONDENCE","Corr('"_N_"')","color:"_CLRBUT_";font-weight:bold")
  .I $G(@$$^W4ORD@(N,"WHENCOMM")) D
  ..N TIME S TIME=^("WHENCOMM")
  ..N DAT S DAT=$P(TIME," ")
  ..N CLR S CLR="red"
  ..I $$^%L1DC(DAT,3)<$H S CLR="yellow"
  ..W "<br><span style=""color:"_CLR_";font-size:"_$$^W3FSZ(14)_""" >"
  .. W $$^%W1DICT("CALLTO")_"<br>"_DAT
  .. I '$$1024^W4WDSCR W " "_$$H2U^%L1FRM($$^%L1DC(DAT,9))_"`"
  .. W "<br>"_$P(TIME," ",2)
  ..W "</span>" 
  ;
  W "<input id=""chkready"_N_""" type=""checkbox"" "
  W " style=""display:none"" "
  I $$READY(N) W "  checked=""checked"" "
  W "  onClick=""ClickReady('"_N_"',this)"" />"
  W "<label id =""lbready"_N_""" for=""chkready"_N_""">"
   N RZ S RZ=35
   I '$$READY(N) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
   I $$READY(N) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
  W "</label><br>"
  W "<span id=""timeready"">"_$$TIMEREADY(N)_"</span>"
  ; 
  I '$$DELORD(N) D
  . D PRINTDOC
  I $$I^W4PIZUL(N) D
  . W "<span style=""color:brown;font-weight:bold"">"_$$^%W1DICT("PIZULOF")_"<BR>"_$$I^W4PIZUL(N)_"</span>"
  W "</td>",!
 Q
 ;
TDCALL ;
 W "<td align=""center"" id=""call"_N_""" "
 W ">"
  W "<input id=""chkcall"_N_""" type=""checkbox"" "
  W " style=""display:none"" "
  I $$CALL2CL(N) W "  checked=""checked"" "
  W "  onClick=""ClickCall('"_N_"',this)"" />"
  W "<label id =""lbcall"_N_""" for=""chkcall"_N_""">"
   N RZ S RZ=35
   I '$$CALL2CL(N) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
   I $$CALL2CL(N) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
  W "</label><br>"
  W "<span id=""timecall"">"_$$TIMECALL(N)_"</span>"
 W "</td>"
 Q
 ;
TDPREP ;
 W "<td align=""center"" id=""prep"_N_""" "
 W ">"
  W "<input id=""chkprep"_N_""" type=""checkbox"" "
  W " style=""display:none"" "
  I $$PREP(N) W "  checked=""checked"" "
  W "  onClick=""ClickPrep('"_N_"',this)"" />"
  W "<label id =""lbprep"_N_""" for=""chkprep"_N_""">"
   N RZ S RZ=35
   I '$$PREP(N) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
   I $$PREP(N) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
  W "</label><br>"
  W "<span id=""timeprep"">"_$$TIMEPREP(N)_"</span>"
 W "</td>"
 Q
 ;
TDSUPPL ;
 W "<td align=""center"" id=""call"_N_""" "
 W ">"
  W "<input id=""chksuppl"_N_""" type=""checkbox"" "
  W " style=""display:none"" "
  I $$SUPPLIED(N) W "  checked=""checked"" "
  W "  onClick=""ClickSuppl('"_N_"',this)"" />"
  W "<label id =""lbsuppl"_N_""" for=""chksuppl"_N_""">"
   N RZ S RZ=35
   I '$$SUPPLIED(N) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
   I $$SUPPLIED(N) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
  W "</label><br>"
  W "<span id=""timecall"">"_$$TIMESUPPL(N)_"</span>"
 W "</td>"
 Q
 ;
CHKSND(N) ;
 I $$1024^W4WDSCR W "<br>",!
 W "<input id=""chk"_N_""" type=""checkbox"" "
  W "  onClick=""ChkClick('"_N_"')"" style=""display:none"" "
 W "/>"
 W "<label id=""lbsnd"_N_""" for=""chk"_N_""" >"
  W "<img src=""w4chkboxn.png"" />"
 W "</label>"
 Q
 ;
NEW(HZ,MSD) ;
 I $G(HZ)="" Q 0
 N LKH S LKH=$$NMB^W4HZMST(HZ)
 I $G(LKH)="" Q 0
 I $G(MSD)="" Q 0
 I $O(@$$^W4GL("W4LINKI")@(LKH,MSD,HZ),-1)="" Q 1
 Q 0
 ;
MSGTM(DAT,SHAA,IR,ORD) ;
 I $$DELIS^W4PRM,$G(ORD) D  Q
 .N DATTODAY S DATTODAY=$$^%L1DC($$^W4DZ,1)
 .N DATCB S DATCB=$$DATCB^W4HZMST(ORD)
 .S DATCB=$P(DATCB," ")
 .N TRH,SHAA,SHAAZ,DTCB,DTHZ
 .S TRH=$$TRH^W4HZMST(ORD)
 .S DTHZ=$$^%L1DC(TRH,3)
 .S DTCB=$$^%L1DC(DATCB,3)
 .S SHAA=$$SHAA^W4HZMST(ORD)
 .S SHAAZ=$$SHAAZ^W4PRM
 .I DATCB=DATTODAY,DTCB=DTHZ&(SHAA'<SHAAZ)!((DTHZ=$$^W4DZ+1)&(SHAA<SHAAZ)) D
 ..W "<br>"
 ..W "<span style=""color:darkblue;font-size:"_$$^W3FSZ(14)_";text-decoration:underline"">"
 .. W $$^%W1DICT("TODAY2TODAY")
 ..W "</span>",!
 ;
 N PER S PER=$$PERIOD(DAT,SHAA,IR,$G(ORD))
 I PER=0,'$$SENDEDORD(ORD) D
 .W "<span style=""color:red;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("NOW!")_"</span>"
 I PER=1 W $$^%W1DICT("TODAY")
 I PER=-1 Q
 I PER>1 D
 .W "<span style=""color:darkblue;font-size:"_$$^W3FSZ(14)_";text-decoration:underline"">"
 .W $$^%W1DICT("FUTURE")
 .W "</span>"
 Q
 ;
PERIOD(DAT,SHAA,IR,ORD)
 N TVAH
 S TVAH=$$THZ^W3TIME(IR)
 I 'TVAH S TVAH=60
 I $$^%L1DC(DAT,3)<+$H Q -1
 I $$^%L1DC(DAT,3)>+$H Q 2
 I $G(ORD),$$DAHUY^W4HZPCHD(ORD) Q 1.5
 I $G(@$$^W4PRM@("TVHKZR")) S TVAH=$G(@$$^W4PRM@("TIMETM"))
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)<TVAH Q 0
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)>TVAH Q 1
 Q ""
 ;
MIN(SHAA) ;
 Q $P(SHAA,":")*60+$P(SHAA,":",2)
 ;
 ;
SELNAME(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 ;
 D SEDER(GR)
 N NXT S NXT=$O(^[$$^W3MAIN]TMP(JB,""))
 I NXT="" Q
 N PR1 S PR1=0
 S NXT=$O(^[$$^W3MAIN]TMP(JB,NXT))
 I NXT="" S PR1=1
 ;
 W "<select id=""nmid"""
 I $D(W3BOR) W " onChange=""ChangeRest()"""
 W ">",!
 I 'PR1 D
 .W "<option value=""ALL"""
 .I '$G(%ARG("MSD")) W " selected=""selected"""
 .W ">"_$$^%W1DICT("ALL")_"</option>",!
 N N S N="" F  S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D
 .D SELNAME1(N,^(N))
 W "</select>",!
 K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
SELNAME1(INVMSD,MSD) ;
 Q:$G(INVMSD)=""
 N VL S VL=$$H2U^%L1FRM($$INV^%L1FRM(INVMSD))
 W "<option value="""_MSD_""""
 I $G(%ARG("MSD")),MSD=%ARG("MSD") W " selected=""selected"""
 W ">"
 W MSD_" "_VL
 W "</option>",!
 Q
 ;
SEDER(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 N N,NS D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSDR(GR,N)) Q:N=""  D
 ..I $G(^(N)) D CRTMP(N)
 Q
 ;
 ;
DTHZ(ORD) ;
 N DTHZ S DTHZ=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 N SHAA S SHAA=$$SHAA^W4HZMST(ORD)
 I '$$NIGHT^W4PRM,SHAA<$$SHAAGV S DTHZ=DTHZ-1
 ;
 I $G(%ARG("GLLINK"))="W4LINKDR" D
 .S DTHZ=$$^%L1DC($P($$DATCB^W4HZMST(ORD),"  "),3)
 .S SHAA=$P($$DATCB^W4HZMST(ORD),"  ",2)
 .I '$$NIGHT^W4PRM,SHAA<$$SHAAGV S DTHZ=DTHZ-1
 ;
 I DTHZ Q DTHZ
 Q $$^W4DZ
 ;
 ;
CRTMP(MSD) ;
 N INV,NM
 S NM=$G(^[$$^W3MAIN]W3MSD(MSD))
 S INV=$$INV^%L1FRM(NM) Q:INV=""
 S ^[$$^W3MAIN]TMP(JB,INV)=MSD
 Q
 ;
STAT(KOT,VL,PR)
 I 'VL W "<td width=""2%"">&nbsp;</td>" Q
 ;
 W "<td style="""_$$FONTFM^W3CSS_";width:16%;color:"_$S($G(PR):"black",1:"gray")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W $$^%W1DICT(KOT)_" : "
 W "&nbsp;<span style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 W VL_"</span></td>"
 Q
 ;
D(C) ;
 S ^D(N)=C
 ;;W "N="_N_"  C="_C_" "_$H_"   ",!
 Q
 ;
INIT ;
 K ^D
 D KILL^%W3DEB("W4DLVORD")
 D KILL^%W1PRM("PSL")
 ;
 S MSD=$$GETP^%W1PRM("MSD")
 D ^%W1ARG
 I $G(%ARG("MSDR")) K MSD
 S MKBL=$G(MKBL)
 I $$MY S MKBL=$G(%ARG("MY"))
 ;
 I $$DISPATH D PUT^%W1PRM("DISPATH",$$DISPATH)
 I $$SNDKTC D PUT^%W1PRM("SNDKTC",$$SNDKTC) D KILL^%W1PRM("DISPATH")
 ;
 D ^W4IN ; --> P1DZ
 ;
 I $G(%ARG("MEDAT")) S MEDT=$$^%L1DC(%ARG("MEDAT"),3)
 I $G(%ARG("ADDAT")) S ADDT=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 ;;I '$G(MEDT) S MEDT=P1DZ I $$DISPATH!$$SNDKTC!$G(%ARG("TODAY")) S MEDT=P1DZ-60
 I '$G(MEDT) S MEDT=P1DZ I $$DISPATH S MEDT=P1DZ-60
 I '$G(ADDT) S ADDT=P1DZ+280
 ;
 I $G(%ARG("FUTUREORDS"))="" D
 .S %ARG("FUTUREORDS")=$S($$HD="DAYORDERS"&'$$SF^W4PRM:0,1:1)
 I $G(%ARG("TODAY")),'$G(%ARG("FUTUREORDS")),'$G(%ARG("MY")) S ADDT=P1DZ ; -- 15/03/20
 ;
 D PUT^%W3DEB("W4DLVORD","OPT=OPT & MEDT=MEDT & ADDT=ADDT & MSD=MSD & CODE=CODE & LKHR=LKHR & ARG=[%ARG")
 ;
 S W4DLVORD("JB")=JB
 ;
 S GL=$$^W4ORD
 ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 S PRMDB=0
 N N S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  I $$PRINTIG^W3PRMDP(N)[">" S PRMDB=1 Q
 ;
 ;;I $G(%ARG("KNDO"))="DEL"!$$DELONLY S %ARG("DELETEDORDS")=1
 I $G(%ARG("KNDO"))="DEL" S %ARG("DELONLY")=1 ; --- 03/11/24
 Q
 ;
KOT ;
 W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td width=""6%""><b>"_$$^%W1DICT("TOTAL")_"</b></td>",!
   D STAT("ORDERQN",SHZ,1)
   I $$SDSAK^W4PRM D STAT("SSOAD",SSOAD,1)
   D STAT("NEWCLIENTS",SNEW,1)
   D STAT("WAITING",SNOSBM,1)
   D STAT("NOSENDED",SNOSHUD,1)
   D STAT("NOPAID",SNOSHUL,1)
   D STAT("NODLV",SNODLV,1)
   ;
   I '$$MGR^W4KOTMLZ,$G(@$$^W4PRM@("TOTDLVMG")),'$$REPTRH D
   .I $$DELIS^W4PRM,$$^W4MYDVN=20!($$^W4MYDVN=22) Q
   .S SPAY=0
   ;
   D STAT("TOPAY",$J($G(SPAY),2,2),1)
  W "</tr>",!
 W "</table>",!
 Q
 ;
KOTTB ;
 W "<tr>",!
 W "<th width=""8%"">"_$$^%W1DICT("ORDERNUMBER")_"</th>"
 W "<th width=""70%"">"_$$^%W1DICT("CUSTOMERDETAILS")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("TOTAL")_"</th>"
 I $G(OPT) D
 .I $$IFSNDY=2 W "<th width=""5%"">"_$$^%W1DICT("TOPREPAIR")_"</th>"
 .I $$IFREADY D
 ..W "<th width=""6%"">"_$$^%W1DICT("READY?")_"</th>"
 .I $$IFCALL2CL W "<th width=""5%"">"_$$^%W1DICT("CALLTO")_"</th>"
 .I $$IFSNDY W "<th width=""5%"">"_$$^%W1DICT("SUPPLIED")_"</th>"
 .W "<th width=""10%"">"_$$^%W1DICT("SENDEDTIME")_"</th>"
 W "</tr>",!
 Q
 ;
TOT ;
 N DV S DV=$$^W4MYDVN
 ;;I $$DELIS^W4PRM,",21,25,26,27,28,30,"[(","_DV_",") Q
 I '$$MGR^W4KOTMLZ,$G(@$$^W4PRM@("TOTDLVMG")),'$$REPTRH D
 .I $$DELIS^W4PRM,$$^W4MYDVN=20!($$^W4MYDVN=22) Q
 .S (SHNH,SDMS,SNEWHN,SNEWDM,SNEWPAY,SPAY,SSOAD)=0
 .
 .N RST S RST="" F  S RST=$O(SMSD(RST)) Q:RST=""  D
 ..S SMSD(RST,"D")=0
 ..S SMSD(RST,"S")=0
 .
 .N SUGT S SUGT="" F  S SUGT=$O(SCODTS(SUGT)) Q:SUGT=""  D
 ..S SCODTS(SUGT,"S")=0
 .
 .N MKR S MKR="" F  S MKR=$O(SMKR(MKR)) Q:MKR=""  D
 ..S SMKR(MKR,"S")=0
 ;
 W "<tr class=""trtd"" "
 W " style=""font-size:"_$$^W3FSZ(20,1)_";background-color:yellow"""
 W ">"
  W "<td>&nbsp;"
  W $$^%W1DICT("TOTAL")
  W "</td>",!
  ;
  W "<td>",!
   W "<table width=""100%"">"
    W "<tr class=""trtd"" style=""font-size:"_$$^W3FSZ(20,1)_""">",!
     W "<td width=""50%"" style=""color:red"">",!
      W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SHZ)
     W "</td>",!
     W "<td style=""text-align:center"" >"
      W "<span style='color:red;font-size:"_$$^W3FSZ(14)_"'>"_$$^%W1DICT("DISCOUNTS")_"&nbsp;:&nbsp;"_$J(SHNH,2,2)_"</span>"_$$NBSP^%L1FRM(5)
      W "<span style='color:green;font-size:"_$$^W3FSZ(14)_"'>"_$$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SDMS,2,2)_"</span>"
     W "</td>",!
    W "</tr>"
   W "</table>"
  W "</td>",!
  ;
 N COLSP S COLSP=2+$$IFREADY+$$IFCALL2CL+$$IFSNDY
  W "<td style=""color:red"" colspan="""_COLSP_""">",!
   W "&nbsp;"_$J($G(SPAY),2,2)_"&nbsp;"
  W "</td>",!
  ;
 W "</tr>",!
 ;
 ;
 I $G(SNEW),'$$REPTRH D
 .W "<tr class=""trtd"" "
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:#fafad2"""
 .W "><td>&nbsp;"
 .W $$^%W1DICT("NEWCLIENTS")
 .W "</td>",!
 .W "<td style=""color:brown"">",!
 .W "<table width=""100%""><tr class=""trtd"" style=""font-size:"_$$^W3FSZ(16)_""">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SNEW
 .W "</td><td style='text-align:center;color:red;font-size:"_$$^W3FSZ(14)_"'>"
 .W $$^%W1DICT("DISCOUNTS")_"&nbsp;:&nbsp;"_$J(SNEWHN,2,2)
 .W "</td>",!
 .W "<td style='text-align:center;font-size:"_$$^W3FSZ(14)_"'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SNEWDM,2,2)
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td style=""color:brown"" colspan="""_COLSP_""">",!
 .W "&nbsp;"_$J(SNEWPAY,2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 I $O(SMSD($O(SMSD(""))))'="" N RST S RST="" F  S RST=$O(SMSD(RST)) Q:RST=""  D
 .W "<tr class=""trtd"" "
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:white;color:green"""
 .W "><td>&nbsp;"
 .W $$NAME^W3MSD(RST)
 .W "</td>",!
 .W "<td>",!
 .W "<table width=""100%""><tr class=""trtd"" style=""font-size:"_$$^W3FSZ(16)_";color:green"">",!
 .W "<td width=""50%"">",!
 .W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMSD(RST,"Q"))
 .W "</td><td style='text-align:center'>"
 .W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J($G(SMSD(RST,"D")),2,2)
 .W "</td>",!
 .W "</tr></table></td>",!
 .W "<td colspan="""_COLSP_""">",!
 .W "&nbsp;"_$J($G(SMSD(RST,"S")),2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 I '$$REPTRH N SUGT S SUGT="" F  S SUGT=$O(SCODTS(SUGT)) Q:SUGT=""  D
 .W "<tr class=""trtd"" "
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:lightblue;color:darkblue"""
 .W ">"
 .W " <td>&nbsp;"
 .W $$^W3SHOWTS(SUGT)
 .W " </td>",!
 .W " <td>",!
 .W "  <table width=""100%"">"
 .W "   <tr class=""trtd"" style=""font-size:"_$$^W3FSZ(16)_";color:darkblue"">",!
 .W "    <td width=""50%"">",!
 .W "       &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SCODTS(SUGT,"Q"))
 .W "    </td>",!
 .W "    <td style='text-align:center'>"
 .W "    </td>",!
 .W "   </tr>",!
 .W "  </table>",!
 .W " </td>",!
 .W " <td colspan="""_COLSP_""">",!
 .W "  &nbsp;"_$J($G(SCODTS(SUGT,"S")),2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
 ;
 N MKR I '$$REPTRH S MKR="" F  S MKR=$O(SMKR(MKR)) Q:MKR=""  D
 .W "<tr class=""trtd"" "
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:orange;color:darkbrown"""
 .W ">"
 .W " <td>&nbsp;"
 .W $$^W3MKR(MKR)
 .W " </td>",!
 .W " <td>",!
 .W "  <table width=""100%"">"
 .W "   <tr class=""trtd"" style=""font-size:"_$$^W3FSZ(16)_";color:darkbrown"">",!
 .W "    <td width=""50%"">",!
 .W "       &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMKR(MKR,"Q"))
 .W "    </td>",!
 .W "    <td style='text-align:center'>"
 .W "    </td>",!
 .W "   </tr>",!
 .W "  </table>",!
 .W " </td>",!
 .W " <td colspan="""_COLSP_""">",!
 .W "  &nbsp;"_$J($G(SMKR(MKR,"S")),2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
EN ;
 Q
 ;
 ;
BUTTONS ;
 W "<table id=""TblBut""><tr>",!
 I '$$DISPATH,'$$SNDKTC D
 .W " <td>" D BUTTON("rbtprint",$$^%W1DICT("PRINTORDERLIST"),"Print('"_OPT_"','"_$G(MEDT)_"','"_$G(ADDT)_"','"_$G(CODE)_"')","font-size:"_$$^W3FSZ(16)) W "</td>",!
 ;
 D
 .I '$G(@$$^W4PRM@("MAPSHOW")) Q
 .I '$$MAPLAT^W4MAPPRM(1)!'$$MAPLNG^W4MAPPRM(1)!'$$ZOOM^W4MAPPRM(1) Q
 .D MAPDLV
 ;
 D BACK
 ;
 W "</tr></table>",!
 Q
 ;
MAPDLV ;
 W " <td "
 W ">"
  D BUTTON("rbtmap",$$^%W1DICT("MAPDLV"),"MapDlv()","color:green;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 Q
 ;
BACK ;
 W " <td "
 I $D(BACKALIGN) W BACKALIGN
 W ">"
  D BACKBTN
 W "</td>",!
 Q
 ;
BACKBTN ;
 D BUTTON("rbtback",$$^%W1DICT("BACK"),"Back('"_MSD_"')","color:red;font-size:"_$$^W3FSZ(16))
 Q
 ;
GL S GL=$$^W4ORD
 Q
 ;
DISPATH(STAM) ;
 Q $G(%ARG("DISPATH"))
 ;
SNDKTC(STAM) ;
 I $G(%ARG("SNDKTC")) Q 1
 I $$GETP^%W1PRM("SNDKTC") Q 1
 Q 0
 ;
SNDKTCORD(HZM) ;
 N OK S OK=0
 N L S L=$O(@$$^W4ORD@(HZM,9999),-1)
 I L,$G(^(L))["\@@" S OK=1
 Q OK
 ;
 N I S I="" F  S I=$O(@$$^W4ORD@(HZM,I)) Q:I=""  I I D  Q:'OK
 .I $G(^(I))'["\@@" S OK=0
 Q OK
 ;
 ;
TAW(STAM) ;
 Q $G(%ARG("TAW"))
 ;
COMPTOT(N) ;
  N TS S TS=$$TSHL^W4HZMST(N)
  N DMS S DMS=$$DMSH^W4HZMST(N)
  N HNH S HNH=$$HNH^W4HZMST(N)
  ;
  S SPAY=$G(SPAY)+TS
  S SDMS=SDMS+DMS
  S SHNH=SHNH+HNH
  I '$$^W4PIZUL(N) S SHZ=SHZ+$$QN(N),SSOAD=SSOAD+$$SOAD^W4HZMST(N)
  ;
  I $$DELORD(N) S SDEL=SDEL+1
  I $$SENDEDORD(N) S SSBM=SSBM+1
  ;
  I '$$SENDEDORD(N),'$$DELORD(N) D
  .S SNOSBM=SNOSBM+1
  ;
  I $$NOSHUL(N) S SNOSHUL=SNOSHUL+1
  ;
  I '$$SEND2CUST(N) S SNODLV=SNODLV+1
  ;
  D
  .N CODTS,SUM,ITRA,MZM,CHK,CA,ASR
  .S CODTS=$$CODTS^W4HZMST(N)
  .S SUM=TS
  .I CODTS<2 S CODTS=1
  .S ITRA=$$ITRA^W4HZMST(N)
  .S MZM=$$MZM^W4HZMST(N)
  .S CHK=$$CHK^W4HZMST(N)
  .S CA=$$CA^W4HZMST(N)
  .S ASR=$$ASR^W4HZMST(N)
  .S SCODTS(1,"S")=$G(SCODTS(1,"S"))+ITRA
  .I MZM S SCODTS(1,"S")=$G(SCODTS(1,"S"))+MZM
  .I CHK S SCODTS(2,"S")=$G(SCODTS(2,"S"))+CHK
  .I CA S SCODTS(3,"S")=$G(SCODTS(3,"S"))+CA
  .I ASR S SCODTS(4,"S")=$G(SCODTS(4,"S"))+ASR
  .I 'MZM,'CHK,'CA,'ASR Q
  .S SCODTS(CODTS,"Q")=$G(SCODTS(CODTS,"Q"))+1
  ;
  D
  .N RST S RST=$P($G(@$$GLLINK@(N)),"~") Q:'RST
  .S SMSD(RST,"Q")=$G(SMSD(RST,"Q"))+$$QN(N)
  .S SMSD(RST,"S")=$G(SMSD(RST,"S"))+TS
  .S SMSD(RST,"D")=$G(SMSD(RST,"D"))+DMS
  .S SMSD(RST,"HN")=$G(SMSD(RST,"HN"))+$G(HNH)
  ;
  I $G(MSD),$$NEW(N,MSD) D
  .S SNEW=SNEW+1
  .S SNEWPAY=SNEWPAY+TS
  .S SNEWDM=SNEWDM+$$DMSH^W4HZMST(N)
  .S SNEWHN=SNEWHN+$$HNH^W4HZMST(N)
  ;
  N MKR S MKR=$$MKR(N)
  I MKR="" S MKR=99
  S SMKR(MKR,"Q")=$G(SMKR(MKR,"Q"))+$$QN(N)
  S SMKR(MKR,"S")=$G(SMKR(MKR,"S"))+TS
  Q
  ;
SEND2CUST(ORD) ;
 I $$PSL^W4HZMST(ORD) Q 1
 Q 0
 ;
NOSHUL(ORD) ;
 I $J($$TSHL^W4HZMST(ORD),2,2)>$J($$SHUL^W4HZMST(ORD)+$$SHULA^W4HZMST(ORD),2,2) Q 1
 Q 0
 ;
SHOW4COPY(STAM) ;
 Q +$G(%ARG("SHOW4COPY"))
 ;
DIVPSL ;
 W "<div dir="""_$$^%W1DIR_""" width=""100%"">",!
 W " <table border=""0"" width=""100%"">",!
 ;
 I $$DISPATH!$$SNDKTC D SHOWDISPATH W "</table>" Q
 ;
 I $$CALLTO D CALLTOBUT W "</table>" Q
 ;
 W "<tr>" ; ----------------------------- 1 STROKA
  S WD=90 I $$1024^W4WDSCR S WD=84
  W "<td width="""_WD_"%"">"
   W "<table>"
    W "<tr>"
     W "<td>" D FIND W "</td><td>&nbsp;</td>"
     W "<td>"
      D KINDORDS
     W "</td>",!
     ;
     I '$$1024^W4WDSCR W "<td width=""12%"">&nbsp;</td>"
     ;
     D TIMESORT
     ;
     W "<td width=""15%"">&nbsp;</td>"
     ;
     D ASCENDING
     ;
    W "</tr>"
   W "</table>"
  W "</td>"
  W "<td "_$$INV^%W1ALIGN_">"
   D SHOWBTN 
   D SPACE
   D BACKBTN
  W "</td>"
 W "</tr>"
  ;
 W "<tr>" ; --------------------------- 2 STROKA
  W "<td colspan=""2"">"
   W "<table>"
    W "<tr>"
     S TDSPWD=10 I '$$1024^W4WDSCR S TDSPWD=8
     D ORDSOURCE
     D TDSP
     D PAYMKIND
     D TDSP
     W "<td>"_$$^%W1DICT("ORDER")_$$REVAH
       W "<input type=""text"" id=""ordernmb"" size=""10"" maxlength=""12"" onClick=""this.select()"" "
         W $$ONCHANGE
       W "/>"
      W "</td>"
      ;
      D TDSP
      ;
      W "<td "
      W ">"_$$^%W1DICT("AUTHNO")_$$REVAH
       W "<input type=""text"" value="""_$$HB($G(%ARG("HZMLAK")))_""" "
        W "id=""hzmlak"" size=""10"" maxlength=""12"" onClick=""this.select()"" "
        W $$ONCHANGE
       W "/>",!
      W "</td>"
      ;
      D TDSP
      ;
      W "<td "
      W ">"_$$^%W1DICT("CUSTOMNUMBERORNAME")_$$REVAH
      D
      .N CUST S CUST=$$INVH^%L1FRM($G(%ARG("CUSTOM")))
      .W "<input type=""text"" id=""custom"" size=""10"" "
      .D 
      .. I $G(%ARG("CUSTOM"))'="" W " value="""_$$HB($G(%ARG("CUSTOM")))_""" " Q
      .. I $G(%ARG("LKH"))'="" W " value="""_$G(%ARG("LKH"))_""" " Q
      .. I $G(%ARG("COMP"))'="" W " value="""_$$HB($G(%ARG("COMP")))_""" " Q
      .. I $G(%ARG("NAME"))'="" W " value="""_$$HB($G(%ARG("NAME")))_""" " Q
      . W " maxlength=""12"" "
      . W $$ONCHANGE
      .W "/>",!
      W "</td>"
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  ;
  ;;D SRCADR ; -------------------- 3 STROKA -------------------
  ;
  W "<tr>" ; --------------------- 4 STROKA  ------------------
   W "<td colspan=""2"">",!
    W "<table width=""100%"" border=""0"">"
     W "<tr>"
      D PSLCHK
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
    ;
 W "</table>",!
 Q
 ;
 ;
SHOWDISPATH ;
 W "<tr>"
  W "<td width=""90%"">"
   W "<table border=""0"">"  
    W "<tr>"
      W "<td>" D FIND W "</td><td>&nbsp;</td>"
      D PSLCHOICE
     ;
      N WD S WD=25 I $$1024^W4WDSCR S WD=10
      W "<td width="""_WD_"%"">&nbsp;</td>"
      ;
      D FULLSHOWRADIO
      ;
      S WD=32 I $$1024^W4WDSCR S WD=27
      I $$REHEV^W4PRM S WD=WD-10
      I $$TAW S WD=$S($$1024^W4WDSCR:42,1:44)
      W "<td width="""_WD_"%"">&nbsp;</td>"
      ;
      D SHOWTAW
    W "</tr>"
   W "</table>"
  W "</td>"
  ;
  N BACKALIGN S BACKALIGN=$$INV^%W1ALIGN
  D BACK
 W "</tr>",!
 
 W "<tr>"
  W "<td width=""90%"">"
   W "<table>"  
    W "<tr>"
      W "<td>"
        W $$^%W1DICT("SHOWALLORDS")
       W "<input type=""radio"" name=""kindsort"" "
        I $G(%ARG("ALLORDS")) W " checked=""checked"" "
        W $$ONCHANGE
       W " />"
       D SPACE
       W $$^%W1DICT("SHOWNOTDLVORDS")
       W "<input type=""radio"" name=""kindsort"" "
         I '$G(%ARG("ALLORDS")) W " checked=""checked"" "
         W $$ONCHANGE
       W " />"
     W "</td>"
 
     W "<td width="""_$S($$1024^W4WDSCR:"4%",1:"17%")_""">&nbsp;</td>"
 
     D TIMESORT
 
     W "<td width="""_$S($$1024^W4WDSCR:"4%",1:"17%")_""">&nbsp;</td>"
 
     D ASCENDING
 
    W "</tr>"
    W "</table>"
  W "</td>"
 
  D PSLSHOW 
 W "</tr>",!
 Q
 ;
 ;
SRCADR ;
  N WD S WD=22
  W "<tr>" ; --------------------- 3 STROKA  ------------------
     W "<td colspan=""2"">"
       W "<table>"
        W "<tr>"
         ;;  W "<td >"_$$^%W1DICT("ADDRESS")_$$NBSP^%L1FRM(2)
         ;;    W "<input type=""text"" id=""addr"" size=""35"" value="""_$$H2U^%L1FRM($$INVH^%L1FRM($G(%ARG("ADDR"))))_""" "
         ;;      W $$ONCHANGE
         ;;    W " />"
         ;;  W "</td>",!
          W "<td >"_$$^%W1DICT("SEARCH")_$$NBSP^%L1FRM(2)
             W "<input type=""text"" id=""search"" size=""35"" "
             W " onClick='this.select()' " 
             W " />&nbsp;"
              D ^W4BUTTON("SrchDn",">","FindText('search',false)","width:25px;height:25px;background-color:lightgrey")
              W "&nbsp;" 
              D ^W4BUTTON("SrchUp","<","FindText('search',true)","width:25px;height:25px;background-color:lightgrey")
           W "</td>",!
         W "</tr>",!
        W "</table>",!
     W "</td>"
  W "</tr>",!    
 Q  ; 
  ;
CALLTOBUT ;
 W "<tr>"
  W "<td width=""5%"">&nbsp;</td>"
  W "<td>"
   W $$^%W1DICT("SHOW3DAYS")_" "
   W "<input type=""radio"" name=""callto"" onClick=""CallTo()"" "_$S($$CALLTO=1:" checked=""checked"" ",1:"")_""">"
  W "</td>"
  W "<td>"
   W $$^%W1DICT("SHOWALLCALLBIDS")_" "
   W "<input type=""radio"" name=""callto"" onClick=""CallTo()"" "_$S($$CALLTO=2:" checked=""checked"" ",1:"")_""">"
  W "</td>"
  W "<td width=""5%"">&nbsp;</td>"
  W "<td>"
   W "<select id=""mkbl"" onChange=""CallTo()"" >",!
    W "<option value=""0"">",! 
     W $$^%W1DICT("CHOICERECEIVER")
    W "</option>",! 
    N OV
    S OV="" F  S OV=$O(@$$^W4GNAME@(OV)) Q:OV=""  D
    .N W4DLVORD S W4DLVORD=""
    .I '$$SHOW^W4HZGMLZ(OV) Q 
    .W "<option value="""_OV_""" ",!
    .I +$G(%ARG("MKBL"))=+OV W " selected=""selected"" "
    .W ">"
    . W $$H2U^%L1FRM($$^W4NAME(OV))
    .W "</option>",!
  W "</td>"
  W "<td width=""5%"">&nbsp;</td>"
  I $$MKRDLV^W4PRM D
  .W "<td>"
  .   W "<select id=""busprv"" onChange=""CallTo()"">",!
  .    W "<option value=""-1"" >"_$$^%W1DICT("CHOICEORDERKIND")_"</option>",!
  .    W "<option value=""0"" "_$$SELKO(0)_" >"_$$^%W1DICT("BUSINESS")_"</option>",!
  .    W "<option value=""1"" "_$$SELKO(1)_" >"_$$^%W1DICT("PRIVATE")_"</option>",!
  .   W "</select>",!
  .W "</td>"
  .W "<td width=""4%"">&nbsp;</td>"
  W "<td>" D BACKBTN W "</td>"
  W "<td width=""6%"">&nbsp;</td>"
  W "</tr>",!
 Q
 ;
 ;
HB(PRM) 
 I $G(PRM)="" Q ""
 S PRM=$$INVH^%L1FRM(PRM)
 Q $$H2U^%L1FRM(PRM)
 ;
FNDMISCBUT ;
 W "<td>"
  ;;D ROUNDBUT^%W1JS("findord",$$^%W1DICT("FINDORDER"),"FindOrder()","color:blue;font-size:"_$$^W3FSZ(16),"wh29,29")
  D BUTTON("findord",$$^%W1DICT("FINDORDER"),"FindOrder()","color:blue;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 ;
 W "<td>"
  ;;D ROUNDBUT^%W1JS("misc",$$^%W1DICT("MISC"),"Misc()","color:brown;font-size:"_$$^W3FSZ(16),"wh29,29")
  D BUTTON("misc",$$^%W1DICT("MISC"),"Misc()","color:brown;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 Q
 ;
PSLRCV ;
 W "<td style=""color:darkblue"" "_$$^%W1ALIGN_" >"
 W " <b>"_$$^%W1DICT("RECEIVER")_" : "_$$H2U^%L1FRM($$^W4NAME($G(%ARG("MKBL"))))_"</b>"
 W "</td>",!
 W "<td width=""20%"">&nbsp;</td>"
 Q
 ;
 ;
PSLCHOICE ;
 ;;I $G(%ARG("STAGE")) Q
 I $$TAW!$$SNDKTC D TDSP G PSLCH1
 ;
 W "<td "
  I $$REHEV^W4PRM W " colspan=""2"" "
 W ">" 
 W " <select id=""psl"" onChange=""ChangePsl()"" style=""font-size:"_$$^W3FSZ(14)_""">",!
 W "  <option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
 N VRMSL S VRMSL=$$^W4MAIN("VRMSL") K @VRMSL
 ;
 N N,K S N="",K=0 F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  I N<9999 D
 .N NM S NM=$G(^(N))
 .S @VRMSL@($$^W4ABCIND(N,NM))=N
 .S K=K+1
 ;
 N IND S IND="" F  S IND=$O(@VRMSL@(IND)) Q:IND=""  D
 .N N S N=$G(^(IND)) Q:N=""
 .N A S A=$G(@$$^W4GL("P1SL")@(N))
 .I N>0,$$NOPRES(N) Q
 .W " <option value="""_N_""" ",!
 .I K=1 W " selected=""selected"" "
 .W ">"
 . W $$H2U^%L1FRM(A)
 .W " </option>",!
 ;
 W " </select>",!
 D SPACE
 ;
 I $$REHEV^W4PRM D
 .W "<select id=""rehev"" style=""font-size:"_$$^W3FSZ(14)_""">",!
 .W "<option value=""0"">"_$$^%W1DICT("CHOICECAR")_"</option>",!
 .N N S N="" F  S N=$O(@$$^W4GL("W4CAR")@(N)) Q:N=""  D
 ..W "<option value="""_N_""" >"_$S(N>0:N,1:"")_" "_$$H2U^%L1FRM($$SUGRHV1^W4HZGRHV(N))_"</option>",!
 .W "</select>",!
PSLCH1 ;
 D PSLSBM
 ;
 Q
 ;
 ;
PSLCHK ;
 N TDSPWD
 ;;D PAYMKIND
 ;
 D SHOWSNDORNOORDERS
 ;
 D TDSP
 ;
 D SHOWPAIDORNOORDERS 
 ;
 D TDSP
 ;
 ;
 D DELORDERSONLY
 ;
 D SHOWDELORDERS
 ;
 D SHOWFUTORDERS
 ;
 D SHOWBIDORDERS
 ;
 D SHOWTAW
 Q
 ;
 ;
ORDSOURCE ;
 W "<td>"
  W $$^%W1DICT("ORDERSOURCE")_$$REVAH
  W "<select id=""mkr"" "_$$ONCHANGE
   I $$KNDO="BIDTB" W " disabled=""disabled"" "
  W ">",!
   D
   .W "<option value=""ALL"" "
   .I $G(%ARG("MKR"))="ALL"!($G(%ARG("MKR"))="") W " selected=""selected"" "
   .W ">"_$$^%W1DICT("ALL")_"</option>",!
   .
   .N N S N="" F  S N=$O(^[$$^W3MAIN]W3MKR(N)) Q:N=""  D
   ..N A S A=$G(^(N)) 
   ..W "<option value="""_N_""" "
   ..I $G(%ARG("MKR"))=N W " selected=""selected"" "
   ..W ">"_$$H2U^%L1FRM(A)_"</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
PAYMKIND ;
 W "<td>"
  W $$^%W1DICT("PAYMENTKIND")_$$NBSP^%L1FRM(4)
  D PAYMKIND1^W4DLVORD
 W "</td>"
 Q
 ;
PAYMKIND1 ;
  W "<select id=""paymkind"" "
   W $$ONCHANGE
  W ">",! 
  W "<option value=""ALL"" >"_$$^%W1DICT("ALL")_"</option>",!
  N N S N="" F  S N=$O(@$$^W4GL("W3SUGTS")@(N)) Q:N=""  D
  .N A S A=$G(^(N)) 
  .W "<option value="""_N_""" "
  .I $G(%ARG("SUGTS"))=N W " selected=""selected"" "
  .W ">"_$$H2U^%L1FRM(A)_"</option>",!
  W "</select>",!
 Q
 ;
SHOWSNDORNOORDERS ;
 W "<td>"
  W $$^%W1DICT("SHOWNOSENDEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""nosendedords"" "
  I $G(%ARG("NOSENDEDORDS")) W " checked=""checked"" "
  I $$KNDO="SND" W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
  ;
  D SPACE
  W $$^%W1DICT("SHOWSENDEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""sendedords"" "
  I $G(%ARG("SENDEDORDS")) W " checked=""checked"" "
  I $$KNDO="NSND" W " disabled=""disabled"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWPAIDORNOORDERS ;
 W "<td>"
  W $$^%W1DICT("SHOWNOPAIDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""nopaidords"" "
  I $G(%ARG("NOPAIDORDS")) W " checked=""checked"" "
  I $$KNDO="PD" W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
  ;
  W $$^%W1DICT("SHOWPAIDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""paidords"" "
  I $G(%ARG("PAIDORDS")) W " checked=""checked"" "
  I $$KNDO="NPD"!($$KNDO="BID") W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWDELORDERS ;
 W "<td>" 
  W $$^%W1DICT("SHOWDELETEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""deletedords"" "
  I $G(%ARG("DELETEDORDS")) W " checked=""checked"" "
  W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWFUTORDERS ;
 W "<td>" 
 W $$^%W1DICT("SHOWFUTUREORDS")_"&nbsp;"
 W "<input type=""checkbox"" id=""futureords"" "
 I $G(%ARG("FUTUREORDS")) W " checked=""checked"" "
  W $$ONCHANGE
 W " />"
 W "</td>"
 Q
 ;
SHOWTAW ;
 W "<td>" 
  W $$^%W1DICT("SHOWTAW")_"&nbsp;"
  W "<input type=""checkbox"" id=""showtaw"" "
    I $G(%ARG("SHOWTAW")) W " checked=""checked"" "
    W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWBIDORDERS ;
 W "<td>" 
 W $$^%W1DICT("SHOWBIDS")_"&nbsp;"
 W "<input type=""checkbox"" id=""bids"" "
 I $G(%ARG("BIDS")) W " checked=""checked"" "
 W $$ONCHANGE
 W " />"
 W "</td>"
 Q
 ;
 ;
DELORDERSONLY ;
 W "<td>" 
 W $$^%W1DICT("DELETEDONLY")_"&nbsp;"
 W "<input type=""radio"" id=""delonly"" "
 I $G(%ARG("DELONLY")) W " checked=""checked"" "
 W "onClick=""DelOnly()"" "
 W " />"
 W "</td>"
 Q
 ;
TIMESORT ;
 W "<td "
  ;;I $$1024^W4WDSCR W "colspan=""2"" "
   W "colspan=""2"" "
 W ">"
  W $$^%W1DICT("TIMESORT")
  W "<input type=""radio"" name=""timesort"" "
   I $G(%ARG("TIMESORT"))=1 W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  D SPACE
  W $$^%W1DICT("ORDERSORT")
  W "<input type=""radio"" name=""timesort"" "
   I $G(%ARG("TIMESORT"))=2 W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  D SPACE
  D
  .W $$^%W1DICT("ADRSORT")
  .W "<input type=""radio"" name=""timesort"" "
  . I $G(%ARG("TIMESORT"))=3 W " checked=""checked"" "
  . W $$ONCHANGE
  .W " />"
 W "</td>"
 Q
 ;
ASCENDING ;
 W "<td "
  W "colspan=""4"" "
 W ">"
  W $$^%W1DICT("FROMOLD2NEW")
  W "<input type=""radio"" name=""sortasc"" "
   I $G(%ARG("ASCENDING")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  I '$$1024^W4WDSCR D SPACE
  W $$^%W1DICT("FROMNEW2OLD")
  W "<input type=""radio"" name=""sortasc"" "
   I '$G(%ARG("ASCENDING")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
PSLSHOW ;
 W "<td "_$$INV^%W1ALIGN_" >"
  D SHOWBTN
 W "</td>",!
 Q
 ;
FIND ;
 I $$^W4TABLET=2 Q
 W "<img src=""w4find.png"" onClick=""SearchText()"" style=""cursor:pointer;width:"_$$^W4KF(25)_"px;height:"_$$^W4KF(25)_"px"" />"
 Q
SHOWBTN ;
 D BUTTON("show",$$^%W1DICT("SHOW")_"&nbsp;","ShowOrds()","color:brown;font-size:"_$$^W3FSZ(16))
 Q
 ;
PSLSBM ;
 I $$TEAV^W4PRM,$$PAPJ^W4PRM Q
 W "<td>"
  N SUBMIT
  S SUBMIT="SUBMIT"
  I $$SNDKTC S SUBMIT="SEND2KTCH"
  D BUTTON("submpsl",$$^%W1DICT(SUBMIT),"SubmPsl()","color:green;font-size:"_$$^W3FSZ(16))
 W "</td>"
 Q
 ;
FULLSHOWRADIO ;
  W "<td colspan=""2"">"
   W $$^%W1DICT("FULLSHOW")
   W "<input type=""radio"" name=""short"" "
    I '$$SHORTSHOW W " checked=""checked"" "
    W " onChange=""ShowOrds()"" "
   W " />"
   D SPACE
   W $$^%W1DICT("SHORTSHOW")
   W "<input type=""radio"" name=""short"" "
    I $$SHORTSHOW W " checked=""checked"" "
    W " onChange=""ShowOrds()"" "
   W " />"
  W "</td>"
 Q
 ;
 ;
SETDLV(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETDLV","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:'HZ 0
 N ER S ER=0
 ;
 I $$SNDKTC G SETDLV1
 ;
 N ISHUR S ISHUR=$P(PRM,";",3)
 N ITRA S ITRA=$$ITRA^W4HZMST(HZ)
 N CODTS S CODTS=$$CODTS^W4HZMST(HZ)
 ;;I PRM,ITRA>.5,'ISHUR,CODTS>4!(CODTS=3),'$G(@$$^W4PRM@("NOCHKDLV")) Q "ITRA"
 I PRM,ITRA>.5,'ISHUR,$D(@$$^W4ORD@(HZ,"CB","V"))>9!(CODTS>4)!(CODTS=3),'$G(@$$^W4PRM@("NOCHKDLV")) Q "ITRA"
SETDLV1 ;
 I PRM S @$$^W4MAIN("TMPDLV")@(HZ)="" Q 1
 K @$$^W4MAIN("TMPDLV")@(HZ)
 Q 1
 ;
KILLDLV ;
 K @$$^W4MAIN("TMPDLV")
 Q
 ;
SETREADY(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETREADY","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:HZ'>0 0
 I '$$^W4HZFULL(HZ) Q 0
 N ER S ER=0
 I PRM D  Q $S($$TAKEAWAY^W4HZMST(HZ):3,1:2)
 .S @$$^W4ORD@(HZ,"READY")=$H
 .
 .I $$IFSNDY,'$$PAPJ^W4PRM D
 ..N PREPTIME S PREPTIME=$G(@$$^W4PRM@("PREPTIME"),5)
 ..D WR2SNDY(JB,HZ,PREPTIME) 
 .
 .I $$MAIL2SMS^W4PRM D
 ..J MAIL2SMS^W4SNDSMS(JB,HZ)
 ;
 I $$TRICKER^W4PRM(HZ) D
 .J ^W4TRICKR(JB,HZ,"COMPLETE")
 ;
 K @$$^W4ORD@(HZ,"READY")
 Q 1
 ;
 ;
SETCALL(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETCALL","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:HZ'>0 0
 I '$$^W4HZFULL(HZ) Q 0
 N ER S ER=0
 I PRM S @$$^W4ORD@(HZ,"CALL2CL")=$H Q 1
 K @$$^W4ORD@(HZ,"CALL2CL")
 Q 1
 ;
SETPREP(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETPREP","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:HZ'>0 0
 I '$$^W4HZFULL(HZ) Q 0
 N ER S ER=0
 ;
 I PRM D  Q 1
 .S @$$^W4ORD@(HZ,"PREP")=$H
 .I $$IFSNDY=2,'$$TAKEAWAY^W4HZMST(HZ) D CR^WQDLV(HZ)
 ;
 I $$IFSNDY'=2 K @$$^W4ORD@(HZ,"PREP")
 Q 1
 ;
SETSUPPL(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETSUPPL","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:HZ'>0 0
 I '$$^W4HZFULL(HZ) Q 0
 N ER S ER=0
 I PRM S @$$^W4ORD@(HZ,"SUPPLIED")=$H Q 1
 K @$$^W4ORD@(HZ,"SUPPLIED")
 Q 1
 ;
SNDORD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 K @$$^W4MAIN("TMPER")
 D ^W4IN
 D PUT^%W3DEB("W4DLVORD-SNDORD","PRM=PRM")
 N REHEV S REHEV=$P(PRM,";",2)
 I '$$SNDKTC S PSL=$P(PRM,";") Q:'PSL
 S ZMANS=$$T^%L1TIME($P($H,",",2))
 ;
 I '$$SNDKTC D
 .S HZ="" F  S HZ=$O(@$$^W4MAIN("TMPDLV")@(HZ)) Q:HZ=""  D SGPSL(HZ,PSL,REHEV)
 ;
 I $$SNDKTC D
 .S HZ="" F  S HZ=$O(@$$^W4MAIN("TMPDLV")@(HZ)) Q:HZ=""  D
 ..I $$HZM^W4MSL(HZ),$$FUTUREDT^W4HZMIT(HZ) Q
 ..D TV^W4HZM(HZ,JB)
 ..S @$$^W4ORD@(HZ,"SNDKTC")=$H
 ;
 I $$PRINT^W4MDPPC'="L" D KILLDLV
 Q
 ;
 ;
PUTTM(HZM,PSL) ;
 N (JB,%ARG,%REM,HZM,PSL)
 I $$TM^W4HZMST(HZM) Q
 N TM S P1DZ=$$^W4DZ
 L +@$$^W4GL("P1TM"):1
 S TM=$O(@$$^W4GL("P1TM")@(9999999),-1)+1
 S @$$^W4GL("P1TM")@(TM)=HZM_"\"_P1DZ_"\"_$H
 D ^%S2GLSV($$^W4GL("P1TM")_"("_TM_")",$$^W4FGIB)
 L -@$$^W4GL("P1TM")
 ;
 L +@$$^W4GL("P1TMI"):1
 S @$$^W4GL("P1TMI")@(P1DZ,TM)=$H
 D ^%S2GLSV($$^W4GL("P1TMI")_"("_P1DZ_","_TM_")",$$^W4FGIB)
 L -@$$^W4GL("P1TMI")
 ;
 D PUT^W4HZMST(HZM,"TM",TM)
 D ^%S2GLSV($$^W4ORD_"("_HZM_")",$$^W4FGIB)
 ;
 L +@$$^W4GL("P1MSL"):1
 S @$$^W4GL("P1MSL")@(P1DZ,PSL,HZM)=$H
 D ^%S2GLSV($$^W4GL("P1MSL")_"("_P1DZ_","""_PSL_""","""_HZM_""")",$$^W4FGIB)
 L -@$$^W4GL("P1MSL")
 ;
 D ^W4HZGT(HZM)
 ;
 I $$HZM^W4MSL(HZM) D
 .I PSL<1 Q
 .I $$TMMSL^W4PRM,$$NOTM^W4PRM,'$$TAKEAWAY^W4HZMST(HZM) Q  ; -- 04/05/23,19/04/23
 .I $$SF^W4PRM,PSL=1!(PSL=19) Q
 .;;S ^AA("W4DLVORD","PSL",PSL)=PSL
 .I $G(@$$^W4PRM@("NOPCTM")) Q
 .D PRNDLVDOC(HZM)
 .I $G(@$$^W4PRM@("2TM")) D
 ..D PRNDLVDOC(HZM)
 ;
PUTTME K @$$^W4TMPORD
 Q
 ;
 ;
KHM(HZM) N N
 S N="" F  S N=$O(@$$^W4GL("P1HM")@(N)) Q:N=""  D
 .K @$$^W4GL("P1HM")@(N,HZM)
 .D ^%S2GLSV($$^W4GL("P1HM")_"("""_N_""","""_HZM_""")",$$^W4FGIB,"K")
 Q
 ;
VIEWRCV(STAM) ;
 I $G(%ARG("VW"))=1 Q 1
 Q 0
 ;
FGCOLOR(ORD) ;
 I $$DELORD(ORD) Q "red"
 I $$NIGHT(ORD) Q "orange"
 Q "black"
 ;
 ;
BGCOLOR(ORD) ;
 I $$DELORD(ORD) W " style=""background-color:black;color:red""" Q
 I $$^W4HZMH(ORD) W " style=""background-color:96CE98;color:black""" Q
 I $$FAXORD(ORD) W " style=""background-color:yellow""" Q
 I $$DELIS^W4PRM,$P($$DATCB^W4HZMST(ORD)," ")=$$TRH^W4HZMST(ORD) D
 .W " style=""background-color:#DDFFDD""" Q  ; -- LIGHTGREEN
 I $$SENDEDORD(ORD) W " style=""background-color:white""" Q
 ;
 I $$PERIOD(DAT,SHAA,IR)=0 D  Q  ; -- SVETOFOR
 .N BGCOLOR
 .I $$^%L1DC(DAT,3)=+$H D
 ..N RZN S RZN=$$MIN(SHAA)-($P($H,",",2)\60)
 ..N TIMETM S TIMETM=$G(@$$^W4PRM@("TIMETM"))
 ..I RZN'>TIMETM S BGCOLOR="pink" Q
 ..I RZN>TIMETM,RZN<(TIMETM+15) S BGCOLOR="#FFFAAA" Q  ;"lightyellow"
 ..S BGCOLOR="#DFFFC6" ; lightgreen
 .
 .W " style=""background-color:"_BGCOLOR_""" " Q
 ;
 I $$SF^W4PRM,$$SHABAT(ORD) D
 .S FGCOLOR="orange"
 .W " style=""background-color:darkblue;color:"_FGCOLOR_"""" 
 ;
 I $$NIGHT(ORD) D  Q
 .S FGCOLOR="orange"
 .W " style=""background-color:darkblue;color:"_FGCOLOR_"""" 
 ;
 I $$DTHZ(ORD)>$H W " style=""background-color:c0d2ec""" Q  ; -- FUTURE
 I $$TAKEAWAY^W4HZMST(ORD) W " style=""background-color:orange""" Q
 Q
 ;
 ;
KINDORD(STAM) ;
 I $G(%ARG("ORDKIND"))="" Q "NOSENDED"
 Q $G(%ARG("ORDKIND"))
 ;
KNDO(STAM)
 Q $G(%ARG("KNDO"))
 ;
DELONLY()
 Q $G(%ARG("DELONLY"))
 ;
SETPSL(PSL) ;
 D PUT^%W1PRM("PSL",PSL)
 Q
 ;
MY(STAM) Q $G(%ARG("MY"))
 ;
CMPR(HZ,NCA) ;
 Q $$^W4SRCCA(HZ,NCA)
 ;
 ;
SGPSL(HZ,PSL,REHEV) ;
 I $G(HZ)'>0 Q
 I '$$^W4HZFULL(HZ) Q
 I $G(@$$^W4GL("P1SL")@(PSL))="zgwl",'$$TAKEAWAY^W4HZMST(HZ) Q
 I $$FUTUREDT^W4HZMIT(HZ),PSL<0,$$TAKEAWAY^W4HZMST(HZ) Q; -- 11.03.26
 ;
 I $$CODTS^W4HZMST(HZ)=4,'$D(@$$^W4ORD@(HZ,"CB","ASR")),$$ITRA^W4HZMST(HZ) D
 .N P1TNOPR S P1TNOPR="" ;;I $G(PSL)>0&$G(@$$^W4PRM@("2TM")) S P1TNOPR=""
 .D SGASR(HZ)
 ;
 I '($$CLOSE^W4HZMST(HZ)#2) S @$$^W4ORD@(HZ,"S")=$G(@$$^W4ORD@(HZ,"S"))+$$QN(HZ)
 ;
 I '$$ITRA^W4HZMST(HZ),PSL<0 D  ; -- HADP HESH TAW
 .N P1TNOPR,BLIPR
 .;; '$D(@$$^W4ORD@(HZ,"ETHB","PC")) ; -- 25.12.23
 .;;I $$SHUL^W4HZMST(HZ),'$$MSHHBNOW^W4PRM,'$D(@$$^W4ORD@(HZ,"ETHB","PC")) D ^W4PCHB(HZ,1)
 .I '$$MSHHBNOW^W4PRM D
 ..N MKR,SHUL,SHULA S MKR=1
 ..S SHUL=$$SHUL^W4HZMST(HZ)
 ..S SHULA=$$SHULA^W4HZMST(HZ)
 ..I '$$NCAB^W4HZMST(HZ) S MKR=1
 ..I SHULA,$D(@$$^W4ORD@(HZ,"ETHB2")) S MKR=0
 ..I SHUL,$D(@$$^W4ORD@(HZ,"ETHB","PC")) S MKR=0
 ..I SHUL,'$D(@$$^W4ORD@(HZ,"ETHB","PC")) S MKR=1
 ..D ^W4PCHB(HZ,MKR)
 .
 .N STTM S STTM=$G(@$$^W4ORD@(HZ,"TM"))
 .I STTM="" D
 ..S @$$^W4ORD@("TM")="-1\"_$H
 ..I '($$CLOSE^W4HZMST(HZ)#2) S @$$^W4ORD@(HZ,"S")=$G(@$$^W4ORD@(HZ,"S"))+1
 .
 .D SETCLOSE^W4HZMST(HZ)
 ;
 I '$$PSL^W4HZMST(HZ) D
 .D PUT^W4HZMST(HZ,"PSL",PSL)
 .I $$REHEV^W4PRM D PUT^W4HZMST(HZ,"REHEV",$G(REHEV))
 .
 .I $$NEWMLY^W4PRM D
 ..N HZM,W4MLREST S HZM=HZ,W4MLREST="" D PLU1^W4HZMPC
 ;
 I $$ZMANS^W4HZMST(HZ)="" D PUT^W4HZMST(HZ,"ZMANS",$$T^%L1TIME($P($H,",",2)))
 ;
 I PSL>0 D
 .I $$TRICKER^W4PRM(HZ) D
 ..I $D(WQDLV) D ^W4TRICKR(JB,HZ_"<>"_PSL,"WAY") Q
 ..J ^W4TRICKR(JB,HZ_"<>"_PSL,"WAY")
 .D
 ..I $$TM^W4HZMST(HZ),$$PSL^W4HZMST(HZ)=9999 D  Q
 ...S $P(@$$^W4ORD@(HZ,"TM"),"\")=PSL Q
 ...L +@$$^W4GL("P1MSL"):1
 ...K @$$^W4GL("P1MSL")@(P1DZ,9999,HZM)
 ...S @$$^W4GL("P1MSL")@(P1DZ,PSL,HZM)=$H
 ...L -@$$^W4GL("P1MSL")
 ..
 ..D PUTTM(HZ,PSL)
 ..;
 ..I $$TIPCB^W4PRM D
 ...N STIP S STIP=0 
 ...N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  D
 ....S RESTIP=$$^W4TIPCB(HZ,N)
 ;
 D  ;
 .I $$TAKEAWAY^W4HZMST(HZ),$$SF^W4PRM D
 ..J SNDTAW(JB,HZ)
 .
 .I '$$ITRA^W4HZMST(HZ) D  D SETCLOSE^W4HZMST(HZ)
 ..I $$NOTM^W4PRM Q  ; -- 19/12/22
 ..;;I $$NOTM^W4PRM,$$SHUL^W4HZMST(HZ),'$$TAKEAWAY^W4HZMST(HZ) K P1TNOPR D ^W4PCHB(HZ,1) Q
 ..N LKHN S LKHN=$$NMB^W4HZMST(HZ) Q:'LKHN  Q:$$IFHBMAIL^W4L(LKHN) ; ***
 ..;;I '$$TAKEAWAY^W4HZMST(HZ),$$MAIL2SMS^W4PRM Q  ; --> 28/06/21
 ..N EMAIL S EMAIL=$$EMAIL^W4HZMST(HZ)
 ..I EMAIL["@",(EMAIL["."),$$SND2EMAIL^W4PRM!$$IFHBMAIL^W4L(LKHN) Q
 ..N P1TNOPR,BLIPR
 ..I $$SF^W4PRM,$$SHUL^W4HZMST(HZ),'$$TAKEAWAY^W4HZMST(HZ) D ^W4PCHB(HZ,1)
 .;
 .I $$MAIL2SMS^W4PRM,'$$TAKEAWAY^W4HZMST(HZ) D  Q
 ..J MAIL2SMS^W4SNDSMS(JB,HZ)
 .
 .I $$SND2EMAIL^W4PRM D  Q
 ..J SNDMAIL(JB,HZ)
 Q
 ;
 ;
SGASR(HZM) ;
 N (JB,%ARG,HZM,P1TNOPR,BLIPR)
 S ASRL=$$ITRA^W4HZMST(HZM)
 S (LKHN,CUSN)=$$NMB^W4HZMST(HZM)
 S LKAH=$$AH^W4L(LKHN)
 S LKHNH=0
 I LKAH,'$$HNH^W4HZMST(HZM) D
 .S LKHNH=$J(ASRL*LKAH*.01,2,2)
 .S ASRL=ASRL-LKHNH
 S LKHR=$$LKHR^W4L(LKHN)
 S HRA=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 ;
 S TIPAS=""
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 ;
 I $$HBNOW^W4L(LKHN),'$$HBNOWMONTH^W4PRM,$$NOW2EMAIL^W4PRM D
 .J SNDMAIL(JB,HZM,1)
 ;
 Q
 ;
WR2SNDY(JB,HZ,TIM) ;
 N CMD,FLOU
 S FLOU="sndyou"_JB_"_"_HZ
 S CMD="curl -m 30 --request POST "
 S CMD=CMD_" --url https://sendimanapi.com/delivery/updateDeliveryPreparationTime "
 S CMD=CMD_" --header 'Authorization: Basic "_$G(@$$^W4PRM@("SNDY","PW"))_"'"
 S CMD=CMD_" --header 'Content-Type: application/json'"
 S CMD=CMD_" --data '{ "
 S CMD=CMD_"""order_id"": """_HZ_""","
 S CMD=CMD_"""cook_time"": """_TIM_""","
 S CMD=CMD_"""rest_username"": """_$$REST^WQDLV(HZ)_""""
 S CMD=CMD_" }'"
 S CMD=CMD_" > "_FLOU
 ;
 ZSY CMD
 ;
 I $$IFSNDY D
 .N A,DZ S DZ=$$^W4DZ
 .S @$$^W4GL("SNDY")@(DZ,HZ)=CMD
 .S @$$^W4GL("SNDY")@(DZ,HZ,"ZSY")=$ZSY
 .I '$$EXIST^%L1ZOS(FLOU) Q
 .C FLOU O FLOU:(REWIND:READONLY)
 .U FLOU R A C FLOU
 .S @$$^W4GL("SNDY")@(DZ,HZ,"RES")=A
 .S @$$^W4ORD(HZ)@(HZ,"SNDYPREP")=A
 Q
 ;
 ;
SNDMAIL(JB,ORD,NOW)
 N (JB,%ARG,ORD,NOW)
 Q:'$G(ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N RES,EMAIL,LKHN,NOM
 S EMAIL=$$EMAIL^W4HZMST(ORD)
 Q:EMAIL'["@"!(EMAIL'[".")
 S LKHN=$$NMB^W4HZMST(ORD) Q:'LKHN
 ;
 D  Q:'NOM
 .I $G(NOW) S NOM=+$G(@$$^W4ORD@(ORD,"HBNOW")),VD="HB",ND=NOM Q
 .S NOM=$$NCAB^W4HZMST(ORD)
 .S VD="HZ",ND=ORD
 ;
 H 1
 D SNDMAIL1(ND,NOM,EMAIL,VD,ORD)
 ;
 S EMAIL1=$$EMAIL1^W4L(LKHN)
 I EMAIL1["@",EMAIL1["." D
 .D SNDMAIL1(ND,NOM,EMAIL1,VD,ORD)
 Q
 ;
 ;
SNDMAIL1(ND,NOM,EMAIL,VD,ORD)
 N PRM
 S PRM=ND_";Invoice "_NOM_";"_EMAIL_";"_VD_";0;1;"_$G(@$$^W4PRM@("HOWSEND"),3)
 ;
 I VD="HZ" S RES=$$EMAILCONT^W4EMAIL(PRM)
 I VD="HB" D
 .S RES=$$EMAILHB^W4EMAIL(PRM) Q:RES
 .S @$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)=$H_";"_$P(PRM,";",2,1000)
 Q
 ;
 ;
PRNDLVDOC(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:'NMB
 ;
 I $$^W4MSL(NMB),$$BIGTM^W4L(NMB) D  Q
 .S @$$^W4MAIN("TMPBIGTM")@(HZM)=$H
 ;
 D PRINTDLVDOC(HZM)
 Q
 ;
 ;
PRINTDLVDOC(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:'NMB
 N IET,ITS,SHM,P1HZTM,P1TNOPR,BLIPR,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3
 S IET="ETTM",ITS=1,SHM="TM",P1HZTM=""
 ;
 I $G(@$$^W4PRM@("NOTM")) S P1TNOPR=""
 I $G(@$$^W4PRM@("MM")),'$G(@$$^W4PRM@("MMTM")) S P1TNOPR=""
 D P1^W4HZTM
 Q
 ;
NOPRES(SL) ;
 I '$G(@$$^W4PRM@("BDNOCHSL")) Q 0
 N OV S OV=$$OV^W4SL(SL)
 I OV,'$$PRES^W4SL(SL) Q 1
 I OV,$$PRES^W4SL(SL) Q 0
 ;
 N NM,NM1 S NM=$G(@$$^W4GL("P1SL")@(SL)) I NM="" Q 1
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GNAME@(N)) Q:N=""  D  Q:OK
 .S NM1=$G(^(N,1))
 .I $$SPA^%L1FRM(NM)=$$SPA^%L1FRM(NM1) S OK=N
 ;
 I OK,$G(@$$^W4GL("FILE")@(OK,"CIO"))'="I" Q 1
 I 'OK,$$SLAU^W4PRM Q 1
 Q 0
 ;
 ;
HD(STAM) ;
 I $$CUSTLASTORDS Q "CUSTLASTORDS<>"_$$CUSTLASTORDS_"<>"_$$LKH^W4L($$CUSTLASTORDS)
 I $$MY,'$$DISPATH,'$$SNDKTC Q "MYORDERS"
 I '$$MY,'$$DISPATH,'$$SNDKTC,$$TOMORROW Q "TOMORROWORDERS"
 I '$$MY,'$$DISPATH,'$$SNDKTC,$G(%ARG("MEDAT"))="" Q "DAYORDERS"
 I $$DISPATH,$$TAW Q "TAKEAWAYORDERS"
 I $$DISPATH,'$$TAW Q "SENDORDERS"
 I $$SNDKTC Q "ORDERS4KTCPRINT"
 Q "ORDLIST"
 ;
PAYCASH(HZM) ;
 N IND,VL
 I $G(HZM)="" Q "0;ORDERERROR"
 I '$$^W4HZFULL(HZM) Q "0;ORDERERROR"
 I $$^W4CLOSE(HZM) Q "0;ORDERCLOSED"
 S VL=$$ITRA^W4HZMST(HZM) I 'VL G EPAYCASH
 S IND=$O(@$$^W4ORD@(HZM,"CB","MZ",999),-1)+1
 S @$$^W4ORD@(HZM,"CB","MZ",IND)=$J(VL,2,2)_"*"_$H_"*"_$$LASTMLZ^W4HZMST(HZM)_"*"_$$^W4MYDVN
 D PAYCASH^W4PAYKB(HZM)
 D ^W4T(HZM,0)
EPAYCASH Q "1;"_$$SHOWPAID(HZM)
 ;
SHOWPAID(N) ;
 Q $$^%W1DICT("PAID")_" "_$J($$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N),2,2)
 ;
READY(N) ;
 I $D(@$$^W4ORD@(N,"READY")) Q 1
 Q 0
 ;
CALL2CL(N) ;
 I $D(@$$^W4ORD@(N,"CALL2CL")) Q 1
 Q 0
 ;
PREP(N) ;
 I $D(@$$^W4ORD@(N,"PREP")) Q 1
 Q 0
 ;
SUPPLIED(N) ;
 I $D(@$$^W4ORD@(N,"SUPPLIED")) Q 1
 Q 0
 ;
IFREADY(STAM) ;
 I '$$SGYOM,'$$SNDKTC,'$$REPTRH Q 1
 Q 0
 ;
IFCALL2CL(STAM) ;
 I '$$SGYOM,'$$SNDKTC,'$$REPTRH,'$$DISPATH,$G(@$$^W4PRM@("CALL2CL")) Q 1
 Q 0
 ;
IFSNDY(STAM) ;
 Q $$SNDY^W4PRM
 ;
TIMEREADY(N) ;
 N TIME S TIME=$G(@$$^W4ORD@(N,"READY")) I 'TIME Q ""
 Q $$T^%L1TIME(TIME)
 ;
TIMECALL(N) ;
 N TIME S TIME=$G(@$$^W4ORD@(N,"CALL2CL")) I 'TIME Q ""
 Q $$T^%L1TIME(TIME)
 ;
TIMEPREP(N) ;
 N TIME S TIME=$$PREP^W4HZMST(N) I 'TIME Q ""
 Q $$T^%L1TIME(TIME)
 ;
TIMESUPPL(N) ;
 N TIME S TIME=$$SUPPLIED^W4HZMST(N) I 'TIME Q ""
 Q $$T^%L1TIME(TIME)
 ;
SGYOM(STAM) ;
 Q $G(%ARG("SGYOM"))
 ;
SPACE ;
 W "&nbsp;&nbsp;&nbsp;"
 Q 
 ;
TDSP ; 
 W "<td "
 I $G(TDSPWD) W "width="""_TDSPWD_"%"_""" "
 W ">&nbsp;</td>"
 Q 
 ;
PRINTDOC ; 
 W "<table>",!
  W "<tr>"
   W "<td>"
    W "<input id=""btnpcdoc"_N_""" type=""button"" value="""_$$^%W1DICT("PRINT")_""" "
    W " style=""font-size:"_$$^W3FSZ(16)
    I $$DELIS^W4PRM,$G(@$$^W4GL("W4PCDOC")@(N)) W ";background-color:orange"
    W " """
    W " "_$$^W4TOUCH_"=""PrintDocs('"_N_"','"_PRMDB_"')"" />"
   W "</td>"
   ;
  W "</tr>"
 W "</table>",!
 Q
 ;
 ;
KINDORDS ; 
 W "<select id=""kindords"" onChange=""SelKindOrds()"" >",!
  W "<option value=""ALL"" "_$$SELECTED("ALL")_">"_$$^%W1DICT("SHOWALLKINDORDS")_"</option>",!
  W "<option value=""NSND"" "_$$SELECTED("NSND")_">"_$$^%W1DICT("SHOWNOSENDEDORDS")_"</option>",!
  W "<option value=""SND"" "_$$SELECTED("SND")_">"_$$^%W1DICT("SHOWSENDEDORDS")_"</option>",!
  W "<option value=""NPD"" "_$$SELECTED("NPD")_">"_$$^%W1DICT("SHOWNOPAIDORDS")_"</option>",!
  W "<option value=""PD"" "_$$SELECTED("PD")_">"_$$^%W1DICT("SHOWPAIDORDS")_"</option>",!
  W "<option value=""DEL"" "_$$SELECTED("DEL")_">"_$$^%W1DICT("SHOWDELETEDORDS")_"</option>",!
  W "<option value=""FTR"" "_$$SELECTED("FTR")_">"_$$^%W1DICT("SHOWFUTUREORDS")_"</option>",!
  W "<option value=""BID"" "_$$SELECTED("BID")_">"_$$^%W1DICT("SHOWBIDS")_"</option>",!
  ;
  I $$SF^W4PRM D
  .W "<option value=""BIDTB"""_$$SELECTED("BIDTB")_">"_$$^%W1DICT("SHOWBIDTB")_"</option>",!
  ;
  W "<option value=""TAW"""_$$SELECTED("TAW")_">"_$$^%W1DICT("SHOWTAW")_"</option>",!
 W "</select>",!
 Q 
 ;
SELECTED(IND) ;
 I $G(%ARG("KNDO"))=""&(IND="ALL") Q " selected=""selected"" "
 I $G(%ARG("KNDO"))=IND Q " selected=""selected"" "
 Q ""
 ;
SETARG ;
 I $G(%ARG("ASCENDING"))="" D
 .S %ARG("ASCENDING")=$S($$MY:0,1:'$G(@$$^W4PRM@("DLVN2O")))
 ;
 I $G(%ARG("TIMESORT"))="" S %ARG("TIMESORT")=$S($$MY:2,1:$G(@$$^W4PRM@("TIMESORT"))+1)
 ;
 I $G(%ARG("NOSENDEDORDS"))="" S %ARG("NOSENDEDORDS")=1
 I $G(%ARG("SENDEDORDS"))="" S %ARG("SENDEDORDS")=1
 I $G(%ARG("NOPAIDORDS"))="" S %ARG("NOPAIDORDS")=1
 I $G(%ARG("PAIDORDS"))="" S %ARG("PAIDORDS")=1
 I $G(%ARG("BIDS"))="" S %ARG("BIDS")=1
 I $G(%ARG("FUTUREORDS"))="" D
 .S %ARG("FUTUREORDS")=$S($$HD="DAYORDERS"&'$$SF^W4PRM:0,1:1)
 I $$KNDO="TAW" S %ARG("SHOWTAW")=1
 I $G(%ARG("SHOWTAW"))="" S %ARG("SHOWTAW")='$G(@$$^W4PRM@("NOVWTAW"))
 I $$TOMORROW D
 .I $G(%ARG("DELETEDORDS"))="" D
 ..S %ARG("DELETEDORDS")=+$$SHOWDEL^W4PRM
 .I $G(%ARG("BIDS"))="" S %ARG("BIDS")=0
 
 I $G(%ARG("DELETEDORDS"))="" D
 .S %ARG("DELETEDORDS")=$S($$SHOWDEL^W4PRM!$$DELONLY!($$KNDO="DEL"):1,$G(%ARG("MY"))&'$$DELIS^W4PRM:1,1:0)
 ;
 Q
 ;
 ;
ONCHANGE(STAM) ;
 Q " onChange=""OnChangePrm()"" "
 ;
BUTTON(ID,VL,PROC,STYLE)
 D ^W4BUTTON($G(ID),VL,$G(PROC),$G(STYLE))
 Q
 ;
REVAH(STAM) ;
 I $$1024^W4WDSCR Q "<BR>"
 Q "&nbsp;&nbsp;"
 ;
SHORTSHOW(STAM) ;
 Q $G(%ARG("SHORTSHOW"))
 ;
TOMORROW(STAM) ; 
 Q $G(%ARG("TOMORROW"))
 ;
CUSTLASTORDS(STAM) ; 
 Q $G(%ARG("CUSTLASTORDS"))
 ;
PRINTALLORDS(MDB) ; 
 N (JB,%ARG,%REM,MDB)
 S N="",I=0 F  S N=$O(@$$^W4MAIN("VIB")@(N)) Q:N=""  D
 .S I=I+1 I '(I#5) H 1
 .S HZM=$$HZ(N)
 .I $$DEL^W4DEL(HZM) Q
 .I '$$ALL2MSL^W4PRM S A=$$PRINTBON^W4MENUBT(HZM_";;;"_MDB) Q
 .D HZMMSL^W4HZMIT
 Q 
 ;
PRINTALLKOTMDB ; 
 N PRN S PRN=$G(@$$^W4PRM@("MDBKOT")) Q:'PRN
 N N,HZ S N="",I=0 F  S N=$O(@$$^W4MAIN("VIB")@(N)) Q:N=""  D
 .S I=I+1 I '(I#5) H 1
 .S HZ=$$HZ(N)
 .D MDBKOT^W4MDBPC(HZ,PRN)
 Q 
 ;
CUSTALL(STAM) ;
 Q $G(%ARG("CSALL"))
 ;
NIGHT(ORD) ; 
 N DATCB S DATCB=$$DATCB^W4HZMST(ORD)
 N TIMECB S TIMECB=$P(DATCB,"  ",2),DATCB=$P(DATCB,"  ")
 N DTCB S DTCB=$$^%L1DC(DATCB,3)
 ;;I $$SF^W4PRM,TIMECB>16!(TIMECB<8) Q 1
 ;
 N OK S OK=0
 I $$MAAD^W4PRM D  I OK Q OK
 .N DT S DT=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 .I DT-DTCB>1 Q
 .I TIMECB*60+$P(TIMECB,":",2)>(18*60)&($$^%L1DC(DTCB,8)=5) S OK=1 Q
 .I $$^%L1DC(DTCB,8)>5 S OK=1 Q
 ;
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702132,(TIMECB*60+$P(TIMECB,":",2))>1290&($$^%L1DC(DTCB,8)=5)!($$^%L1DC(DTCB,8)>5) Q 1  ; -- BAR LEHEM
 ; 
 N DTT,DTT1 S DTT=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 S DTT1=$$^%L1DC($$TRH^W4HZMST(ORD),8)
 I $$DELIS^W4PRM,$G(%ARG("MEDAT")),$G(%ARG("MEDAT"))=$G(%ARG("ADDAT")) D
 .N DT S DT=$$^%L1DC(%ARG("MEDAT"),3)
 .I DTT=DT,DTCB=(DT-1)&(DTT1'=1)!(DTCB=(DT-2)&(DTT1=1)),TIMECB>13 S OK=1 Q
 ;
 Q OK 
 ;
 ;
SHABAT(ORD) ; 
 N DATCB S DATCB=$P($$DATCB^W4HZMST(ORD)," ")
 N DTCB S DTCB=$$^%L1DC(DATCB,8)
 I $$SF^W4PRM,DTCB=6!(DTCB=7) Q 1
 Q 0 
 ;
REPTRH(STAM) ; 
 Q $G(%ARG("REPTRH")) 
 ;
CALLTO(STAM) ; 
 Q $G(%ARG("CALLTO"))
 ;
 ;
KOTREPTRH ; 
 N HD
 W "<span style=""font-size:"_$$^W3FSZ(14)_""" >"
   S HD="REPDEPTRHMEAD"
   I $G(%ARG("ITEMS")) S HD="REPITEMSTRHMEAD"
   W $$^%W1DICT(HD,$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))
 W "</span><br><br>",!
 ;
 N REPTRH S REPTRH=$$REPTRH
 W "<table dir="""_$$^%W1DIR_""" style=""layout:fixed"" >",!
  W "<tr>"
   W "<td>"
    W "<select id=""reptrhords"" onChange=""ChangeRepTrhOrds()"" >",!
      W "<option value=""3"""_$$SELORD(REPTRH,3)_" >"_$$^%W1DICT("ALLORDERS")_"</option>",!
      W "<option value=""1"""_$$SELORD(REPTRH,1)_" >"_$$^%W1DICT("ALLDLVORDS")_"</option>",!
      W "<option value=""2"" "_$$SELORD(REPTRH,2)_" >"_$$^%W1DICT("SENDEDORDSONLY")_"</option>",!
    W "</select>",!
   W "</td>"
   ;
   W "<td>&nbsp;</td>"
   ;
   W "<td>"
    W $$^%W1DICT("PRICEOFFERS")_" "
    W "<input id=""hzmh"" type=""checkbox"" "
     W $S($G(%ARG("HZMH")):" checked=""checked"" ",1:"")
     W " onChange=""ChangeRepTrhOrds()"" "
    W " />"
    W "</td>"
    ;
    W "<td>&nbsp;</td>"
    ;
    W "<td>"
     W $$^%W1DICT("SHOWORDERS")_" "
     W "<input id=""reptrhshow"" type=""checkbox"" "
      W $S($G(%ARG("SIK")):"",1:" checked=""checked"" ")
      W " onChange=""ChangeRepTrhShow()"" "
     W " />"
    W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
SELORD(REPTRH,OPT) ; 
 I REPTRH=OPT W " selected=""selected"" " 
 Q ""
 ;
PIZUL(N) ;
 Q $$^W4PIZUL(N)
 ;
CRLINKDR ; 
 N A,N,DCB,DTR,SHAAR
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  I N'<1 D
 .S A=$G(^(N)),DCB=$P(A,"\",4) Q:'DCB
 .I $L($P(A,"\"))<4 Q
 .S DTR=$$^%L1DC($P(DCB,"  "),3) Q:DTR<50000
 .S SHAAR=$P(DCB,"  ",2)
 .I SHAAR<6 S DTR=DTR-1
 .S @$$^W4GL("W4LINKDR")@(DTR,N)=$$GETP^%W1PRM("MSD")
 Q
 ;
SNDTAW(JB,HZ) ;
 N PRM
 S PRM=HZ_";Your Order is ready;"_EMAIL_";2;"
 ;
 S RES=$$EMAILCONT^W4EMAIL(PRM)
 Q
 ;
SELKO(VL) ;
 I +$G(%ARG("BUSPRV"))=VL Q " selected=""selected"" "
 Q ""
 ;
MKR(N) 
 N MKR S MKR=$$MKRDLV^W4HZMST(N)
 I $$WOLT^W4HZPCHD(N) S MKR=18
 Q MKR 
 ; 
VIS(ORD) ; 
 N TMP S TMP=$$^W4MAIN("TMP")
 N OK S OK=0
 N N S N="" F  S N=$O(@TMP@(N)) Q:N=""  D  Q:OK
 .I $$SPA^%L1FRM($E(N,10,18))=ORD S OK=1
 Q OK
 ;
CHNSURE(PRM) ; 
 N ORD,VL 
 S ORD=$P(PRM,";"),VL=$P(PRM,";",2)
 I 'ORD Q "NOORD" 
 N VLOLD S VLOLD=$P($G(@$$^W4GL("W4SURE")@(ORD)),"\")
 S @$$^W4GL("W4SURE")@(ORD)=VL_"\"_$H_"\"_VLOLD
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVP
W4DLVP(MEDAT,ADDAT) ; DOCH HAZMANOT; [ 07.04.25 06:57 ] [ 06.04.25 17:13 ] [ 20.12.18 19:26 ] 
 N (%ARG,JB,%REM,MEDAT,ADDAT,%REPN)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S PRPSL=$$PRPSL
 D ^W4IN
 D VRM K @VRM
 N D1,D2 ;
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 N NN
 F NN=D1-100:1:D2 I $D(@$$^W4REF@(NN)) D
 .N N1 S N1="" F  S N1=$O(@$$^W4REF@(NN,N1)) Q:N1=""  D
 ..I $$HZM^W4MSD(N1) Q
 ..I $$^W4HZMH(N1) Q
 ..I 'PRPSL,$$I^W4PIZUL(N1) Q
 ..I PRPSL,$$^W4PIZUL(N1) Q
 ..I PRPSL,$$I^W4PIZUL(N1) Q
 ..I PRPSL,$$DEL^W4DEL(N1) Q
 ..S DT=$$^%L1DC($$TRH^W4HZMST(N1),3)
 ..S SHAA=$$SHAA^W4HZMST(N1) I $$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM S DT=DT-1
 ..I DT<D1!(DT>D2) Q
 ..S HZM=N1,SSUM=0 N MZ,PAR
 ..S NMB=$$NMB^W4HZMST(HZM) Q:'$$^W4MSL(NMB)
 ..S MKBL=$$MKBL^W4HZMST(HZM)
 ..S MKR=$$MKRDLV^W4HZMST(HZM) S:MKR="" MKR="-"
 ..I $G(PRPSL) S MKBL=$$PSL^W4HZMST(HZM) S:'MKBL MKBL=9999
 ..Q:'MKBL
 ..D PLU1
 ;
 K %L1PC
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4DLVP"
 I $G(PRPSL) S %REPN="W4PRPS"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4dlvp.jsp?JB="_JB)
 Q
 ;
PLU1 N I,PAR,PARO,RF S PARO=""
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S RF=$G(^(I))
 .S PAR=$P(RF,"\")
 .I $L(PAR) D PLU2 D
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  D
 ...I $D(^(N))<10 D  Q
 ....S RF=$G(^(N)),PAR=N D PLU3
 ...
 ...N N1,PAR0 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,I,N,N1)) Q:N1=""  D
 ....S RF=$G(^(N1)) D PLU4(RF)
 Q
 ;
PLU2 ;--- SHURA RAGILA
 N A,COL,PRC,SUM,ST,SUG,N
 S COL=$P(RF,"\",5),PRC=$P(RF,"\",4),COLP=COL
 S SUM=PRC*COL I MKBL="" S MKBL=0 I PRPSL S MKBL=9999
 I PAR'["%" S PARO=PAR S SUGP=+$$SUG^W4P(PAR)
 S A="" I $D(PARO) S A=$G(@VRM@(MKBL,SUGP,PARO))
 S $P(A,"*",1)=$P(A,"*",1)+COLP
 I PAR'["%" S $P(A,"*",3)=$P(A,"*",3)+SUM
 I PAR["%" S SUM=$P(RF,"\",7),$P(A,"*",2)=$P(A,"*",2)-SUM ; -- HANAHA
 I $D(PARO) S @VRM@(MKR,MKBL,SUGP,PARO)=A
 Q
 ;
 ;
PLU3 ;---- TOSAFOT LEVEL 2
 N ST0,COL,PRC,SUM,A S ST0=$P(RF,"\",2,25)
 I '$P(ST0,"\",2),ST0["\+\" S COL=($L(ST0,"+\")-1)*COLP S SUM=$P(ST0,"\",6)*COLP G PLU31
 S COL=$P(ST0,"\",2) S:'COL COL=COLP
 S SUM=$P(ST0,"\")*COL
PLU31 N SUGP S SUGP=+$$SUG^W4P(PAR)
 S A=$G(@VRM@(MKBL,SUGP,PAR))
 S $P(A,"*",1)=$P(A,"*",1)+COL
 S $P(A,"*",3)=$P(A,"*",3)+SUM
 S @VRM@(MKR,MKBL,SUGP,PAR)=A
 Q
 ;
PLU4(ST0) ;----- ROSAFOT LEVEL 3
 N A,COL,PRC,SUM,PAR,PAR0
 S PAR0=$P(ST0,"\")
 S PAR=$S(PAR0:PAR0,1:$P(ST0,"\",4)) Q:PAR=""
 S COL=$P(ST0,"\",3)
 I PAR0 S COL0=COL
 I 'PAR0,'COL,$G(COL0) S COL=COL0
 S SUM=$P(ST0,"\",7)*COL
 N SUGP S SUGP=+$$SUG^W4P(PAR)
 S A=$G(@VRM@(MKBL,SUGP,PAR))
 S $P(A,"*",1)=$P(A,"*",1)+COL
 S $P(A,"*",3)=$P(A,"*",3)+SUM
 S @VRM@(MKR,MKBL,SUGP,PAR)=A
 Q
 ;
PAR N A S A=$G(@GLOB)
 S x1=$P(A,"*",1),x2=$P(A,"*",2),x3=$P(A,"*",3)-x2
 S PAR1=$$SHEM^W4P(PAR)
 Q
 ;
VRM ;
 D ^%W1PCVRM
 Q
 ;
PRPSL(STAM) ;
 Q $$GETP^%W1PRM("PRPSL")
 ;
REPNAME(STAM) ;
 I $$PRPSL Q "ITEMSCOURIERREPORT"
 Q "ITEMSDELIVERYREPORTS"
 ;
PSL1 ;
 S:'PSL PSL=0
 S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 I PSL=9999 S PSL1="dpznda"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVPRP
W4DLVPRP ; [ 01.08.23 16:40 ] [ 31.07.23 15:12 ] [ 01.03.22 11:52 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) Q
 ;
 S DT1=$$^%L1DC($G(%ARG("MEDAT")),3)
 S DT2=$$^%L1DC($G(%ARG("ADDAT")),3)
 ;
 ;
 S GL="^|"""_$$^W3MAIN_"""|W4DLVPRP"
 S MSDR=$G(%ARG("MSDR")) I MSDR="" W " MSDR NOT DEFINED !" Q
 S GLMSDR="^|$$^W3MAIN|W3MSDR("_MSDR_")"
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",! 
 W "<span style=""font-size:"_$$^W3FSZ(16)_""">",!
  W $$^%W1DICT("DLVPRPNETREPORT",$ZD(DT1,"DD.MM.YY")_"<>"_$ZD(DT2,"DD.MM.YY"))
 W "</span>",!
 ;
 W "<br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" border=""1"" cellspacing=""0"" cellpadding=""4"">",!
 W "<tr>"
  S COLSPAN=1
  S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
  .S COLSPAN=COLSPAN+1
  .W "<th>"_$$H2U^%L1FRM($$MSD^W3R(MSD))_"</th>",!
 W "</tr>",!
 ;
 ;
 I $$RKZPR D  G ET
 .K SHZ,STIM
 .F DT=DT1:1:DT2 D
 ..S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ...S A=$G(@GL@(MSDR,DT,MSD))
 ...S SHZ(MSD)=$G(SHZ(MSD))+$P(A,"~",2)
 ...S STIM(MSD)=$G(STIM(MSD))+($P(A,"~")*$P(A,"~",2))
 .
 .W "<tr>"
 .S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ..S TIMA="&nbsp;" I $G(SHZ(MSD)) S TIMA=$J($G(STIM(MSD))/SHZ(MSD),2,2)
 ..W "<td>" ;;_"<span style=""color:grey;font-size:"_$$^W3FSZ(8)_""">"_$G(SHZ(MSD))_"</span><br>"
 .. W TIMA
 ..W "</td>"
 .W "</tr>"
 ;
 ;
 I '$$RKZPR D  G ET
 .F DT=DT1:1:DT2 D
 ..K SHZ,STIM
 ..W "<tr style=""background-color:lightgrey;font-weight:bold;text-align:center"">"
 .. W "<td colspan="""_COLSPAN_""" >"
 .. W $ZD(DT,"DD.MM.YY")
 .. W "</td>"
 ..W "</tr>",!
 ..;
 ..S MSD="" F  S MSD=$O(@GL@(MSDR,DT,MSD)) Q:MSD=""  D
 ...S A=$G(@GL@(MSDR,DT,MSD))
 ...S SHZ(MSD)=$P(A,"~",2)
 ...S STIM(MSD)=$P(A,"~",1)
 ..  ;
 ..W "<tr>"
 ..S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ...S TIMA="&nbsp;" I $G(STIM(MSD)) S TIMA=$J(STIM(MSD),2,2)
 ...W "<td>" ;;_"<span style=""color:grey;font-size:"_$$^W3FSZ(8)_""">"_$G(SHZ(MSD))_"</span><br>"
 ... W TIMA
 ...W "</td>"
 ..W "</tr>",!
 ;
 ;
ET W "</table>",!
 W "</div>",!
 Q
 ;
RKZPR(STAM) ;
 Q $G(%ARG("RKZPR"))
 ;
RKZBR(STAM) ;
 Q $G(%ARG("RKZBR"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVTI0
W4DLVTIM ; [ 30.09.25 14:06 ] [ 19.09.25 04:53 ] [ 18.09.25 07:53 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) Q
 ;
 S DT1=$$^%L1DC($G(%ARG("MEDAT")),3)
 S DT2=$$^%L1DC($G(%ARG("ADDAT")),3)
 ;
 ;
 S GL="^|"""_$$^W3MAIN_"""|W4DLVTIM"
 S MSDR=$G(%ARG("MSDR")) I MSDR="" W " MSDR NOT DEFINED !" Q
 S GLMSDR="^|$$^W3MAIN|W3MSDR("_MSDR_")"
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",! 
 W "<span style=""font-size:"_$$^W3FSZ(16)_""">",!
  W $$^%W1DICT("DLVTIMNETREPORT",$ZD(DT1,"DD.MM.YY")_"<>"_$ZD(DT2,"DD.MM.YY"))
 W "</span>",!
 ;
 W "<br><br>",!
 ;
 W "<div id=""divtbl"" align=""center"" dir=""LTR"" style=""margin-right:0px;padding-right:20px;height:80%;overflow:auto;"">",! 
 
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" border=""1"" cellspacing=""0"" cellpadding=""4"">",!
 W "<thead class=""hdfix"">",!
 W "<tr>"
  W "<th >&nbsp;</th>"
  W "<th width=""10%"">"_$$^%W1DICT("CITY")_"</th>"
  S COLSPAN=1
  S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
  .S COLSPAN=COLSPAN+1
  .W "<th>"_$$H2U^%L1FRM($$MSD^W3R(MSD))_"</th>",!
 W "</tr>",!
 W "</thead>",!
 ;
 ;
 I $$RKZBR,$$RKZPR D  G ET
 .D KILL
 .F DT=DT1:1:DT2 D
 ..S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ...S IR="" F  S IR=$O(@GL@(MSDR,DT,MSD,IR)) Q:IR=""  D
 ....S A=$G(^(IR))
 ....D SUM(A,MSD)
 .;
 .D TR("PREPTIME",.SPREP,.SHZ)
 .D TR("WAITCOURIERTIME",.SWAIT,.SHZ)
 .D TR("DELIVERYTIME",.SDLV,.SHZ)
 .D TR("LEAVETIME",.SLEAV,.SHZ)
 .D TR("ALLDLVTIME",.SALL,.SHZ)
 ;
 ;
 I $$RKZBR,'$$RKZPR D  G ET
 .F DT=DT1:1:DT2 D
 ..D KILL
 ..W "<tr style=""background-color:lightgrey;font-weight:bold;text-align:center"">"
 .. W "<td colspan="""_(COLSPAN+1)_""" >"
 .. W $ZD(DT,"DD.MM.YY")
 .. W "</td>"
 ..W "</tr>",!
 ..;
 ..S MSD="" F  S MSD=$O(@GL@(MSDR,DT,MSD)) Q:MSD=""  D
 ...S IR="" F  S IR=$O(@GL@(MSDR,DT,MSD,IR)) Q:IR=""  D
 ....S A=$G(^(IR))
 ....D SUM(A,MSD)
 ..  ;
 ..D TR("PREPTIME",.SPREP,.SHZ)
 ..D TR("WAITCOURIERTIME",.SWAIT,.SHZ)
 ..D TR("DELIVERYTIME",.SDLV,.SHZ)
 ..D TR("LEAVETIME",.SLEAV,.SHZ)
 ..D TR("ALLDLVTIME",.SALL,.SHZ)
 ;
 ;
 I '$$RKZBR,$$RKZPR D  G ET
 .D KILL
 .F DT=DT1:1:DT2 D
 ..S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ...S IR="" F  S IR=$O(@GL@(MSDR,DT,MSD,IR)) Q:IR=""  D
 ....S A=$G(^(IR))
 ....D SUMIR(A,MSD,IR)
 .
 .N IR1
 .S IR1="" F  S IR1=$O(SHZ(IR1)) Q:IR1=""  D
 ..S SH=0
 ..D TRIR("PREPTIME",IR1,.SPREP,.SHZ)
 ..D TRIR("WAITCOURIERTIME",IR1,.SWAIT,.SHZ)
 ..D TRIR("DELIVERYTIME",IR1,.SDLV,.SHZ)
 ..D TRIR("LEAVETIME",IR1,.SLEAV,.SHZ)
 ..D TRIR("ALLDLVTIME",IR1,.SALL,.SHZ)
 ;
 I '$$RKZBR,'$$RKZPR D  G ET
 .F DT=DT1:1:DT2 D
 ..D KILL
 ..W "<tr style=""background-color:lightgrey;font-weight:bold;text-align:center"">"
 .. W "<td colspan="""_(COLSPAN+1)_""" >"
 .. W $ZD(DT,"DD.MM.YY")
 .. W "</td>"
 ..W "</tr>",!
 ..;
 ..S MSD="" F  S MSD=$O(@GL@(MSDR,DT,MSD)) Q:MSD=""  D
 ...S IR="" F  S IR=$O(@GL@(MSDR,DT,MSD,IR)) Q:IR=""  D
 ....S A=$G(^(IR))
 ....D SUMIR(A,MSD,IR)
 ..  ;
 ..S IR1="" F  S IR1=$O(SHZ(IR1)) Q:IR1=""  D
 ... S SH=0
 ... D TRIR("PREPTIME",IR1,.SPREP,.SHZ)
 ... D TRIR("WAITCOURIERTIME",IR1,.SWAIT,.SHZ)
 ... D TRIR("DELIVERYTIME",IR1,.SDLV,.SHZ)
 ... D TRIR("LEAVETIME",IR1,.SLEAV,.SHZ)
 ... D TRIR("ALLDLVTIME",IR1,.SALL,.SHZ)
 ;
ET W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
 ;
RKZPR(STAM) ;
 Q $G(%ARG("RKZPR"))
 ;
RKZBR(STAM) ;
 Q $G(%ARG("RKZBR"))
 ;
SUM(A,MSD)
 I $G(MSD)="" Q
 N STIME,QHZ
 S STIME=$P(A,"~"),QHZ=$P(A,"~",2)
 S SLEAV(MSD)=$G(SLEAV(MSD))+($P(STIME,"*")*QHZ)
 S SPREP(MSD)=$G(SPREP(MSD))+($P(STIME,"*",2)*QHZ)
 S SWAIT(MSD)=$G(SWAIT(MSD))+($P(STIME,"*",3)*QHZ)
 S SDLV(MSD)=$G(SDLV(MSD))+($P(STIME,"*",4)*QHZ)
 I SPREP(MSD),SWAIT(MSD) S SLEAV(MSD)=SPREP(MSD)+SWAIT(MSD)
 S SALL(MSD)=SLEAV(MSD)+SDLV(MSD)
 S SHZ(MSD)=$G(SHZ(MSD))+QHZ
 Q
 ;
SUMIR(A,MSD,IR)
 I $G(MSD)="" Q
 N IR1,STIME,QHZ
 S IR1=$$INVH^%L1FRM(IR) Q:IR1=""
 S STIME=$P(A,"~"),QHZ=$P(A,"~",2)
 S SLEAV(IR1,MSD)=$G(SLEAV(IR1,MSD))+($P(STIME,"*")*QHZ)
 S SPREP(IR1,MSD)=$G(SPREP(IR1,MSD))+($P(STIME,"*",2)*QHZ)
 S SWAIT(IR1,MSD)=$G(SWAIT(IR1,MSD))+$P(STIME,"*",3)*QHZ
 S SDLV(IR1,MSD)=$G(SDLV(IR1,MSD))+($P(STIME,"*",4)*QHZ)
 I SPREP(IR1,MSD),SWAIT(IR1,MSD) S SLEAV(IR1,MSD)=SPREP(IR1,MSD)+SWAIT(IR1,MSD)
 S SALL(IR1,MSD)=SLEAV(IR1,MSD)+SDLV(IR1,MSD)
 S SHZ(IR1,MSD)=$G(SHZ(IR1,MSD))+QHZ
 Q
 ;
 ;
TR(TXT,STIM,SHZ)
 N MSD,TIMA
 W "<tr>"
 W "<td>"_$$^%W1DICT(TXT)_"</td>"
 W "<td>&nbsp;</td>"
 S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 .I $G(SHZ(MSD)) S TIMA=$J($G(STIM(MSD))/SHZ(MSD),2,2)
 .I '$G(TIMA) S TIMA="&nbsp;"
 .W "<td>"
 . W TIMA
 .W "</td>"
 W "</tr>"
 Q
 ;
 ;
TRIR(TXT,IR1,STIM,SHZ) ;
 S SH=SH+1
 N TIMA,IR,MSD
 W "<tr>"
 W "<td>"_$$^%W1DICT(TXT)_"</td>"
 S IR=$$INVH^%L1FRM(IR1)
 D
 .I $G(SH)=1 W "<td style=""font-weight:bold"">"_$$H2U^%L1FRM(IR)_"</td>" Q
 .W "<td>&nbsp;</td>" Q
 ;
 S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 .I $G(SHZ(IR1,MSD)) S TIMA=$J($G(STIM(IR1,MSD))/SHZ(IR1,MSD),2,2)
 .W "<td>"
 . I '$G(TIMA) S TIMA="&nbsp;"
 . W TIMA
 .W "</td>"
 W "</tr>",!
 Q
 ;
KILL ; 
 K SHZ,SPREP,SLEAV,SWAIT,SDLV
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVTIM
W4DLVTIM ; [ 12.08.26 09:58 ] [ 08.07.26 13:26 ] [ 17.06.26 10:54 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG,^%L1TS
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) Q
 ;
 S DT1=$$^%L1DC($G(%ARG("MEDAT")),3)
 S DT2=$$^%L1DC($G(%ARG("ADDAT")),3)
 ;
 ;
 S GL="^|"""_$$^W3MAIN_"""|W4DLVTIM"
 S MSDR=$G(%ARG("MSDR")) I MSDR="" W " MSDR NOT DEFINED !" Q
 S GLMSDR="^|$$^W3MAIN|W3MSDR("_MSDR_")"
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",! 
 ;
 D EX
 ;
 W "<span style=""font-size:"_$$^W3FSZ(16)_""">",!
  W $$^%W1DICT("DLVTIMNETREPORT",$ZD(DT1,"DD.MM.YY")_"<>"_$ZD(DT2,"DD.MM.YY"))
 W "</span>",!
 ;
 W "<br><br>",!
 ;
 W "<div id=""divtbl"" align=""center"" dir=""LTR"" style=""margin-right:0px;padding-right:20px;height:80%;overflow:auto;"">",! 
 W "<table dir="""_$$^%W1DIR_""" width=""60%"" border=""1"" cellspacing=""0"" cellpadding=""4"">",!
 W "<thead class=""hdfix"">",!
 W "<tr>"
  W "<th >"_$$^%W1DICT("SNIFNUMBER")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("RESTNAME")_"</th>"
  W "<th>"_$$^%W1DICT("PREPTIME")_"</th>"
  W "<th>"_$$^%W1DICT("WAITCOURIERTIME")_"</th>"
  W "<th>"_$$^%W1DICT("DELIVERYTIME")_"</th>"
  W "<th>"_$$^%W1DICT("LEAVETIME")_"</th>"
  W "<th>"_$$^%W1DICT("ALLDLVTIME")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 ;
 I $$RKZPR D  G ET
 .D KILL
 .F DT=DT1:1:DT2 D SUMDT(DT)
 .;
 .S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ..D TR(MSD)
 ;
 ;
 I '$$RKZPR D  G ET
 .F DT=DT1:1:DT2 D
 ..D KILL
 ..W "<tr style=""background-color:lightgrey;font-weight:bold;text-align:center"">"
 .. W "<td colspan=""7"" >"
 .. W $ZD(DT,"DD.MM.YY")
 .. W "</td>"
 ..W "</tr>",!
 ..;
 ..D SUMDT(DT)
 ..  ;
 ..S MSD="" F  S MSD=$O(@GL@(MSDR,DT,MSD)) Q:MSD=""  D
 ...D TR(MSD)
 ;
 ;
ET W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
 ;
RKZPR(STAM) ;
 Q $G(%ARG("RKZPR"))
 ;
RKZBR(STAM) ;
 Q $G(%ARG("RKZBR"))
 ;
SUM(A,MSD)
 I $G(MSD)="" Q
 N STIME,QHZ
 ;;S ^AA("W4DLVTIM-SUM",MSD,"A")=A
 S STIME=$P(A,"~"),QHZ=$P(A,"~",2)
 S SLEAV(MSD)=$G(SLEAV(MSD))+($P(STIME,"*")*QHZ)
 S SPREP(MSD)=$G(SPREP(MSD))+($P(STIME,"*",2)*QHZ)
 S SWAIT(MSD)=$G(SWAIT(MSD))+($P(STIME,"*",3)*QHZ)
 S SDLV(MSD)=$G(SDLV(MSD))+($P(STIME,"*",4)*QHZ)
 I SPREP(MSD),SWAIT(MSD) S SLEAV(MSD)=SPREP(MSD)+SWAIT(MSD)
 S SALL(MSD)=SLEAV(MSD)+SDLV(MSD)
 S SHZ(MSD)=$G(SHZ(MSD))+QHZ
 Q
 ;
 ;
TR(MSD) ;
 W "<tr>"
 W "<td>"_MSD_"</td>"
 W "<td>"_$$^%W1DICT($$MSD^W3R(MSD))_"</td>"
 S AVRLPREP="" I $G(SHZ(MSD)) S AVRPREP=$J($G(SPREP(MSD))/SHZ(MSD),2,2)
 W "<td>"_AVRPREP_"</td>"
 S AVRWAIT="" I $G(SHZ(MSD)) S AVRWAIT=$J($G(SWAIT(MSD))/SHZ(MSD),2,2)
 W "<td>"_AVRWAIT_"</td>"
 S AVRDLV="" I $G(SHZ(MSD)) S AVRDLV=$J($G(SDLV(MSD))/SHZ(MSD),2,2)
 W "<td>"_AVRDLV_"</td>"
 S AVRLEAV="" I $G(SHZ(MSD)) S AVRLEAV=$J($G(SLEAV(MSD))/SHZ(MSD),2,2)
 W "<td>"_AVRLEAV_"</td>"
 S AVRALL="" I $G(SHZ(MSD)) S AVRALL=$J($G(SALL(MSD))/SHZ(MSD),2,2)
 W "<td>"_AVRALL_"</td>"
 W "</tr>"
 Q
 ;
 ;
SUMDT(DT)
 N MSD,IR,A
 S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 .S IR="" F  S IR=$O(@GL@(MSDR,DT,MSD,IR)) Q:IR=""  D
 ..S A=$G(^(IR))
 ..D SUM(A,MSD)
 Q
 ;
KILL ; 
 K SHZ,SPREP,SLEAV,SWAIT,SDLV
 Q
 ;
 ;
EX ; 
 N N,I,GLEX,MH,MHLK,ST,SH,LNG,DLM
 S LNG=$$^%W1LNG
 S GLEX=$$^%W1GLPRM K @GLEX
 S DLM="*"
 ;
 S ST="" I '$$RKZPR S ST=$$HB($$TV^%W1DICT(LNG,"DATE"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"SNIFNUMBER"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"RESTNAME"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"PREPTIME"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"WAITCOURIERTIME"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"DELIVERYTIME"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"LEAVETIME"))_DLM
 S ST=ST_$$HB($$TV^%W1DICT(LNG,"ALLDLVTIME"))
 ;
 S ST=$$INVD^%L1FRM(ST,DLM)
 S @GLEX@("GLOUT",1)=ST
 ;
 S SH=1
 ;
 I $$RKZPR D
 .D KILL
 .F DT=DT1:1:DT2 D SUMDT(DT)
 .;
 .S MSD="" F  S MSD=$O(@GLMSDR@(MSD)) Q:MSD=""  D
 ..D TREX(MSD)
 ;
 ;
 I '$$RKZPR D
 .F DT=DT1:1:DT2 D
 ..D KILL
 ..D SUMDT(DT)
 ..
 ..S MSD="" F  S MSD=$O(@GL@(MSDR,DT,MSD)) Q:MSD=""  D
 ...D TREX(MSD,DT)
 ;
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 D DIVEXC^%W1PC1("W4DLVTIM","%W1PCEX")
 Q 
 ;
 ;
TREX(MSD,DT) ; 
 S ST="" I $G(DT) S ST=$ZD(DT,"DD.MM.YY")_DLM
 S ST=ST_MSD_DLM_$$HB($$MSD^W3R(MSD))
 S AVRPREP="" I $G(SHZ(MSD)) S AVRPREP=$J($G(SPREP(MSD))/SHZ(MSD),2,2)
 S ST=ST_DLM_AVRPREP
 S AVRWAIT="" I $G(SHZ(MSD)) S AVRWAIT=$J($G(SWAIT(MSD))/SHZ(MSD),2,2)
 S ST=ST_DLM_AVRWAIT
 S AVRDLV="" I $G(SHZ(MSD)) S AVRDLV=$J($G(SDLV(MSD))/SHZ(MSD),2,2)
 S ST=ST_DLM_AVRDLV
 S AVRLEAV=0 I $G(SHZ(MSD)) S AVRLEAV=$J($G(SLEAV(MSD))/SHZ(MSD),2,2)
 S ST=ST_DLM_AVRLEAV
 S AVRALL="" I $G(SHZ(MSD)) S AVRALL=$J($G(SALL(MSD))/SHZ(MSD),2,2)
 S ST=ST_DLM_AVRALL
 ;
 S SH=SH+1
 S ST=$$INVD^%L1FRM(ST,DLM)
 S @GLEX@("GLOUT",SH)=ST
 Q 
 ;
HB(TX) ; 
 Q $$^%W1D2U(TX)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DLVWEB
W4DLVWEB ; [ 25.09.18 11:42 ] [ 17.11.10 16:34 ] [ 14.11.10 10:29 ] 
INIT ;
 D ^%W1ARG
 I $L($G(COLOR)) D PUT^%W1PRM("COLOR",COLOR)
 I $$SFC^W3CSS D PUT^%W1PRM("BODYURL","w3sfreka.jpg")
 ;
 I '$L($G(COLOR)),'$$SFC^W3CSS D
 .D PUT^%W1PRM("COLOR","DRW")
 .D ^W4BGBODY
 ;
 D ^W4CSS
 D:+$G(MSD) PUT^%W1PRM("MSD",MSD)
 D:+$G(MSDR) PUT^%W1PRM("MSDR",MSDR)
 S:+$G(MSD)=0 MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("DLVCSR",2)
 K @$$^W4TMPORD
 Q
 

W4DLY
W4PTHDLY ; [ 10.03.16 15:05 ] [ 
 I $$PTHDLY^W4PRM H 1
 Q

W4DLYPRN
W4DLYPRN(HZM,JB) ; [ 21.08.25 12:50 ] [ 03.08.25 10:25 ] [ 26.05.24 10:30 ] 
 N (JB,%ARG,HZM) 
 S GLDLY=$$^W4GL("W4DLYPRN")
 S DT=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 S SHAA=$$SHAA^W4HZMST(HZM)
 ;
 S DATCB=$$DATCB^W4HZMST(HZM)
 N TMCB S TMCB=$P(DATCB,"  ",2)
 S DTCB=$$^%L1DC($P(DATCB," "),3)_","_(TMCB*3600+($P(TMCB,":",2)*60))
 S RZN0=$$DIF^%L1TIME(DT_","_(SHAA*3600+($P(SHAA,":",2)*60)),DTCB)
 S RZN=$$DIF^%L1TIME(DT_","_(SHAA*3600+($P(SHAA,":",2)*60)),$H)
 ;
 I RZN<-40 Q
 ;
 I $$GETP^%W1PRM("BGJ")=HZM D KILL^%W1PRM("BGJ")
 ;
 S IR=$$IR^W4HZMST(HZM)
 S AZR=$$AZOR^W4HZMST(HZM)
 ;
 S MN=SHAA*60+$P(SHAA,":",2)
 S DAKOT=$$DAKOT^W4HZPCHD(IR,AZR)
 ;
 S DLYPRN=$$DLYPRN^W4PRM
 S SM=+DLYPRN
 I $$TAKEAWAY^W4HZMST(HZM) D
 .S DAKOT=$$THZTAW^W3TIME
 .I $$WOLT^W4HZMST(HZM) S DAKOT=30 ; -- 26.05.24
 ;
 S MN=MN-DAKOT ;;-5
 I MN<0 D
 .S MN=MN+(24*60)
 .S DT=DT-1
 ;
 S SEC=MN*60
 S JB1=$P(JB,".")
 S IND=DT_$TR($J(SEC,5)," ",0)_$TR($J(HZM,10)," ",0)_$TR($J(JB1,10)," ",0)
 N LASTIND
 S LASTIND=$O(@GLDLY@(""),-1)
 I $E(IND,1,10)=$E(LASTIND,1,10) D
 .S IND=DT_$TR($J(SEC+3,5)," ",0)_$TR($J(HZM,10)," ",0)_$TR($J(JB1,10)," ",0)
 .
 S @$$^W4ORD@(HZM,"SVTIME1")=DT_","_+$E(IND,6,10)_"\"_$$^W4MYDVN_"\JB="_$G(JB)_"\"_$$MKBL^W4HZMST(HZM)
 S @$$^W4ORD@(HZM,"SVTIME1",$H)=DT_","_+$E(IND,6,10)_"\"_$$^W4MYDVN_"\JB="_$G(JB)_"\"_$$MKBL^W4HZMST(HZM)
 ;
 L +@GLDLY@(IND):1
 S @GLDLY@(IND)=HZM_"\"_AZR_"\"_DAKOT
 L -@GLDLY@(IND)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMAM
W4DMAM(DT1,DT2) ; [ 12.11.24 18:40 ] [ 28.01.21 13:18 ] [ 27.01.21 16:58 ] 
 N (JB,%ARG,%REM,DT1,DT2,DOCH,SGIRATJOM,P1X)
 ;
 F DT=DT1:1:DT2 D
 .K SUMCMAM(DT),SUMNOMAM(DT)
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..S DTHZ=$G(^(HZ))
 ..I $G(P1X("SHUL")),$$NMB^W4HZMST(HZ)'=P1X("SHUL") Q
 ..I $G(P1X("PART")),$$POS^W4HZMST(HZ)'=P1X("PART") Q
 ..I $D(SGIRATJOM),'$$Z24^W4PRM,DTHZ[",^" D  Q
 ...K SUMCMAM(DT),SUMNOMAM(DT)
 ..I $D(SGIRATJOM),'$$Z24^W4PRM,$G(DOCH)'="Z",DTHZ[",?" D  Q
 ...K SUMCMAM(DT),SUMNOMAM(DT)
 ..I $D(SGIRATJOM),$$Z24^W4PRM,DTHZ[",Z" D  Q
 ...K SUMCMAM(DT),SUMNOMAM(DT)
 ..I $D(SGIRATJOM),$$Z24^W4PRM,$G(DOCH)'="Z",DTHZ[",Y" D  Q
 ...K SUMCMAM(DT),SUMNOMAM(DT)
 ..
 ..;;I '$$^W4CLOSE(HZ) Q
 ..I '$$SHUL^W4HZMST(HZ),'$$SHULA^W4HZMST(HZ) Q
 ..
 ..D SMAM(DT,HZ) 
 ..I '$$^W4LKH Q
 ..
 ..N PRMAM,AHMAM
 ..S NDOC="" F  S NDOC=$O(@$$^W4GL("W4DIRD")@(DT,NDOC)) Q:NDOC=""  D
 ...S PRMAM=$$PRMAM^W4DOC(NDOC)
 ...S AHMAM=$$AHMAM^W4DOC(NDOC)
 ...N NP,CD,MAMCD,SUM
 ...S NP="" F  S NP=$O(@$$^W4GL("W4DOC")@(NDOC,NP)) Q:NP=""  I NP D
 ....S CD=$$CODE^W4DOC(NDOC,NP)
 ....S MAMCD=$$MAM(CD)
 ....S SUM=$J($$QN^W4DOC(NDOC,NP)*$$PRC^W4DOC(NDOC,NP)*(100-$$DISC^W4DOC(NDOC,NP))*.01,2,2)
 ....I 'PRMAM,MAMCD D
 .....S SUM=$J(SUM*(100+AHMAM)*.01,2,2)
 ....I MAMCD D
 .....S SUMCMAM(DT)=$G(SUMCMAM(DT))+SUM
 ....I 'MAMCD D
 .....S SUMNOMAM(DT)=$G(SUMNOMAM(DT))+SUM
 ;
 S (SMAM,SUMCMAM,SUMNOMAM)=0
 ;
 F DT=DT1:1:DT2 D
 .S AHMAM=$$MAMD^W4L(DT)
 .S SMAM=SMAM+($G(SUMCMAM(DT))*AHMAM/(100+AHMAM))
 .S SUMCMAM=SUMCMAM+$G(SUMCMAM(DT))
 .S SUMNOMAM=SUMNOMAM+$G(SUMNOMAM(DT))
 ;
 Q $J(SMAM,2,2)_"\"_SUMCMAM_"\"_SUMNOMAM
 ;
MAM(PAR) ;
 I '$$SUPER^W3PRM,$$NOMAM^W4PRM Q '$$NOMAM^W4P(PAR)
 Q $$MLMAM^W4MLPRT(PAR)
 ;
 ;
SMAM(DT,HZ) ;
 N KF,KF1,KMAM,TSHL,SHUL,SHULA,NP,PAR,SUM,SUMHZ,MAM
 S KF=1 S TSHL=$$TSHL^W4HZMST(HZ) Q:'TSHL
 N TOT S TOT=$$TOT^W4HZMST(HZ)
 S SHUL=$$SHUL^W4HZMST(HZ)
 S SHULA=$$SHULA^W4HZMST(HZ)
 ;;I TOT S KF=TSHL/TOT ; *** 28/01
 S KF=(SHUL+SHULA)/TSHL ; *** 28/01
 S KF1=1 I SHUL+SHULA S KF1=SHUL/(SHUL+SHULA)
 S SUMHZ=0
 ;
 N K S K=0
 S NP="" F  S NP=$O(@$$^W4ORD@(HZ,NP)) Q:NP=""  I NP D
 .S PAR=$$PAR^W4HZMST(HZ,NP) Q:PAR=""  Q:'$$ISNUM^%L1FRM(PAR)
 .S SUM=$$SUM^W4HZMST(HZ,NP)+$$SUMHNHP^W4HZMST(HZ,NP)
 .;
 .S MAM=$$MAM(PAR)
 .;;S SUM=$J(SUM*KF*KF1,3,3)
 .S SUMHZ=SUMHZ+SUM
 .I MAM D
 ..S SUMCMAM(DT,HZ)=$G(SUMCMAM(DT,HZ))+SUM
 .I 'MAM D
 ..S SUMNOMAM(DT,HZ)=$G(SUMNOMAM(DT,HZ))+SUM
 .S K=K+1,^AA("W4DMAM",HZ,K)="HZ="_HZ_"  PAR="_PAR_"  SUM="_SUM_" MAM="_MAM_" CMAM="_$G(SUMCMAM(DT))_"  NOMAM="_$G(SUMNOMAM(DT))
 ;
 S KMAM=1
 I $G(SUMCMAM(DT,HZ))+$G(SUMNOMAM(DT,HZ)),'$D(@$$^W4ORD@(HZ,"KMAM")) D
 .S KMAM=$G(SUMCMAM(DT,HZ))/($G(SUMCMAM(DT,HZ))+$G(SUMNOMAM(DT,HZ)))
 .S @$$^W4ORD@(HZ,"KMAM")=$J(KMAM,5,5)
 ;
 N KF2 S KF2=SHUL/TSHL
 S SUMCMAM(DT,HZ)=$G(SUMCMAM(DT,HZ))*KF2
 S SUMNOMAM(DT,HZ)=$G(SUMNOMAM(DT,HZ))*KF2
 S SUMCMAM(DT)=$G(SUMCMAM(DT))+SUMCMAM(DT,HZ)
 S SUMNOMAM(DT)=$G(SUMNOMAM(DT))+SUMNOMAM(DT,HZ)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMANA
W4DMANA(SH,TMPORD) ; [ 01.07.24 15:13 ] [ 30.06.24 12:43 ] [ 02.02.16 19:26 ] 
 N A,A0,I,J,N,CD,CD0,MANA,NSET
 I $G(TMPORD)="" S TMPORD=$$^W4TMPORD
 ;
 F I=SH:-1:1 Q:$$LVST^W3HZMST(JB,I)=0
 S A0=$G(@TMPORD@(I))
 ;
 I $$^W4AIN S A0=$$GET^%W1PRM("STPAR0")
 ;
 I $$LV(A0)'=0 Q ""
 ;
 S CD0=$$CD(A0) I 'CD0 Q ""
 ;
 S CD=""
 ;;F I=SH:-1:1 Q:$$LVST^W3HZMST(JB,I)=0  S A=$G(^(I)),CD=$$CD(A) Q:$$CDA(CD)
 F I=SH:-1:1 S A=$G(@TMPORD@(I)) Q:$$LVST^W3HZMST(JB,I)=0&'$$^W4AIN  S CD=$$CD(A) Q:$$CDA(CD)
 ;
 I '$$CDA(CD) Q ""
 ;
 S NSET=$E(CD,2,10)
 D PUT^%W3DEB("W4HZTSF-SETMANA","CD0=CD0&NSET=NSET")
 S N=""
 S MANA=+$G(@$$^W4GL("P1EZA")@(CD0,"A"_NSET))
 ;
 I 'MANA D
 .S MANA=$G(@$$^W4GL("P1EZT")@(CD0,"A"_NSET)) ;;I 'MANA S MANA=0 Q
 .I MANA S MANA="" Q  ; -- 01.07.24
 .I $$NOROMA^W4PRM,MANA'["T" S MANA=MANA_"T"
 ;
 Q MANA
 ;
CD(A) Q $P(A,"~",2)
LV(A) Q $P(A,"~",1)
CDA(CD) ;
 I $E(CD)="A" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMANY
W4DMANY ; [ 14.04.26 10:03 ] [ 05.11.25 04:48 ] [ 03.11.25 12:51 ] 
 K (JB,%ARG,%REM) D ^W4IN
 Q:$G(%ARG("SHOW"))=0
 N TMPSCRARG S TMPSCRARG="^[$$^W3MAIN]TMPSCR(JB,""ARG"")"
 K @TMPSCRARG
 D ^%W1ARG
 ;
 S DT2=$$^%L1DC($G(%ARG("ADDAT")),3)
 S TIPPD=$S($$^W4TIPPD(DT2):1,$$TIPNO^W4TIPPD(DT2):-1,1:0)
 I $$^W4TIPCBU(DT2) S TIPPD=1
 S %SCRN=$S($$SUPER^W3PRM!$$NOMAM^W4PRM:"W4TOTS",$$MATB^W4PRM:"W4TOTMT",TIPPD=1:"W4TOT",TIPPD=-1:"W4TOTNO",1:"W4TOTT")
 ;
 S W4LKH=$$^W4LKH
 I W4LKH S %SCRN="W4TOTLKH"
 ;
P1 ;
 S DAT1=%ARG("MEDAT"),DAT2=%ARG("ADDAT")
 S DAT01=$$^%L1DC(DAT1,3),DAT02=$$^%L1DC(DAT2,3)
 D
 .N DAT S DAT=$$^%L1DC(DAT2,2)
 .S TIPPS=$$TIPPS^W4TOT("")
 ;
 K CAOUT
 D ^W4SUMZRO
 D 100^W4TOT
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D
 .S GLBL=$$GLTOT^W4LKHSUM($G(DOCH),DAT) D 1011^W4TOT
 ;
 S CASHD=$$^W4SUMV(DAT01,DAT02)
 ;
 D G2V^W4SUMZRO
 K @$$^W4MAIN("VRMSUM")
 ;
 D 102^W4TOT
 S PDN=$J(SHUM+HB-HBZ,2,2)
 S HMK=$$^W4QHMK(DAT01,DAT02)
 ;
 S %ARG("PADDING")="0"
 K %L1SCPC
 ;
 S AV="",AVR="",AVD="",AVT=""
 I SSOAD,'$$SDMSL S AV=$J(SUMMSD+SUMAMSD/SSOAD,2,2)
 I SSOAD,$$SDMSL S AV=$J(SMHIRA/SSOAD,2,2)
 ;;S %L1SCPC(67)=AV ; -- 14/2/22 --> COMMENT
 ;
 S AHMAM=$$MAMD^W4L(DT2)
 S %L1SCPC(1)=$J(SMHIRA*100/(100+AHMAM),2,2)
 S %L1SCPC(81)=$J($G(CAOUT),2,2)
 S %L1SCPC(85)=$J($G(CAOUT)+CASHD,2,2)
 I $G(@$$^W4PRM@("CAOUT0")) S %L1SCPC(85)=$J(CASHD,2,2)
 ;
 S %L1SCPC(38)=$$^W4VT($$GFC^W4VT)
 ;
 I $G(@$$^W4PRM@("BITA")) S %L1SCPC(48)="miitqk"
 I $$MSL^W4PRM D
 .S %L1SCPC(71)="dcrqna"
 .S %L1SCPC(73)="migelyna"
 .S %L1SCPC(62)=$J(BITR,2,2)
 .S %L1SCPC(63)=$J(BITD+$G(BITT),2,2)
 ;
 I $$MSL^W4PRM,$$SDMSL,$$MSLSD^W4PRM D
 .S %L1SCPC(74)="dcrqna",%L1SCPC(77)=%L1SCPC(74)
 .S %L1SCPC(76)="migelyna",%L1SCPC(79)=%L1SCPC(76)
 .S %L1SCPC(64)=SOADR
 .S %L1SCPC(66)=SOADD+$G(SOADT)
 .S AVR="",AVD="",AVT=""
 .I SOADR S AVR=$J(SUMMSD+SUMAMSD+SUMTAW+SUMATAW/SOADR,2,2)
 .I SOADD!SOADT S AVD=$J(SUMMSL+SUMAMSL+SUMDLP+SUMADLP/(SOADD+$G(SOADT)),2,2)
 .S %L1SCPC(68)=AVR
 .S %L1SCPC(69)=AVD
 ;
 I $$MSL^W4PRM,$$SDMSL,'$$MSLSD^W4PRM D
 .S AVR="",AVD="",AVT=""
 .S %L1SCPC(77)="dcrqnl rvenn"
 .S %L1SCPC(79)="gelynl rvenn"
 .I SOADR S AVR=$J(SUMMSD+SUMAMSD+SUMTAW+SUMATAW/SOADR,2,2)
 .I SMSH S AVD=$J(SUMMSL+SUMAMSL+SUMDLP+SUMADLP/SMSH,2,2)
 .S %L1SCPC(68)=AVR
 .S %L1SCPC(69)=AVD
 ;
 D PC
 Q
 ;
 ;
PC ;
 K @$$^W4MAIN("TMPREP")
PC1 D PCPRM(%SCRN)
 ;
PC2 K @$$^W4MAIN("TMPREP")@("GTR")
 ;
 I $D(@$$^W4REPSCR@(%SCRN,"GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=@$$^W4REPSCR@(%SCRN,"GTR")
 ;
 K @$$^W4MAIN("TMPREP")@("GTD")
 ;
 I $D(@$$^W4REPSCR@(%SCRN,"GTD"))>9 D
 .M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@(%SCRN,"GTD")
 ;
 ;
 I $D(S4B) D ^%W1FREPB(%SCRN) G KILL
 ;
 I $G(DOCH)="Z" D
 .D KOTZ(MEDAT,NZ)
 .M @$$^W4GL("Z")@(P1DZ,NZ)=@$$^W4MAIN("TMPREP")
 .N BIG S BIG="B" I $$^W4LKH S BIG="BL"
 .S @$$^W4GL("Z")@(P1DZ,NZ)=BIG
 ;
 I $G(DOCH)'="Z",%SCRN["W4TOT" D
 .S @$$^W4MAIN("TMPREP")@("KOT")=$$KOTTOT(MEDAT,ADDAT)
 ;
 D ^%W1FREP(%SCRN)
 ;
KILL ;
 Q
 ;
 ;
DOT ;
 W "<div style=""position:absolute;left:1px;top:1px""></div>",!
 Q
 ;
KOTZ(DAT,NZ) ;
 N DZ S DZ=$$^%L1DC(DAT,3)
 N TIME S TIME=$G(@$$^W4GL("Z")@(DZ,NZ,"TIME"))
 W "<table dir="""_$$^%W1DIR_""" style=""text-align:center;font-weight:bold"">",!
 W " <tr><td style=""font-size:14pt"">- Z -</td></tr>",!
 W " <tr><td>"_$$H2U^%L1FRM(DAT_" jix`zl mei zxibq g""ec")_"</td></tr>"
 W " <tr><td>"_$$H2U^%L1FRM(NZ_" ixeciq xtqn")_"</td></tr>",!
 I TIME D
 .W " <tr><td style=""font-weight:normal"">"_$$H2U^%L1FRM(TIME_" ixewn g""ec zwtd onf")_"</td></tr>",!
 W "</table>",!
 Q
 ;
KOTTOT(MEDAT,ADDAT) ;
 N A,FS S FS="style=""font-size:"_$$^W3FSZ(11)_""" "
 S A="<table dir="""_$$^%W1DIR_""" width=""80%"" "
 S A=A_"style=""text-align:center"">"
 S A=A_"<tr "_$$INV^%W1ALIGN_" >"
 S A=A_"<td style=""font-size:"_$$^W3FSZ(9)_";color:grey"">"
 S A=A_$$^%W1DICT("ISSUETIME",$ZD($H,"DD.MM.YY  24:60"))_"</td></tr>"
 ;
 I $G(DOCH)="" D
 .S A=A_" <tr><td colspan=""2"" align=""center"" style=""font-size:"_$$^W3FSZ(16)_""">"
 .S A=A_$$H2U^%L1FRM("melyz irvn` itl itqk g""ec")_"</td></tr>"
 ;
 I $G(DOCH)="X" D
 .S A=A_"<tr><td style=""font-size:14pt"">- X -</td></tr>"
 ;
 I $TR(MEDAT,",.","")'=$TR(ADDAT,",.","") D
 .S A=A_" <tr><td "_FS_">"_$$H2U^%L1FRM(MEDAT_" jix`zn ")_"</td>"
 .S A=A_"<td>"_$$H2U^%L1FRM(ADDAT_" jix`z cr")_"</td></tr>"
 ;
 I $TR(MEDAT,",.","")=$TR(ADDAT,",.","") D
 .S A=A_" <tr><td "_FS_">"_$$H2U^%L1FRM(MEDAT_" jix`zl ")_"</td></tr>"
 ;
 I $G(DOCH)="X" D
 .S A=A_"<tr><td>&nbsp;</td></tr>"
 ;
 S A=A_"</table>"
 I $G(%ARG("SHOW")) S A=A_"<tr><td><hr></td></tr>"
 Q A
 ;
 ;
PCPRM(%SCRN) ;
 N %NM,%NOM
 K @$$^W4GL("TMPREPB")
 D KILL^%W1PRM("CURSORT")
 ;
 N TMPSCRARG S TMPSCRARG="^[$$^W3MAIN]TMPSCR(JB,""ARG"")"
 I $D(@TMPSCRARG)>9 D
 .N %N S %N="" F  S %N=$O(@TMPSCRARG@(%N)) Q:%N=""  D
 ..I %N'?1U.E Q
 ..S @%N=$G(@TMPSCRARG@(%N))
 ;
 S %NM="" F  S %NM=$O(@$$^W4SCR@(%SCRN,"P","NAME",%NM)) Q:%NM=""  D
 .S %NOM=$G(^(%NM))
 .N %VL,%PRM,%TYP
 .S %VL=$G(@%NM)
 .S %PRM=$G(@$$^W4SCR@(%SCRN,"P",%NOM,"CRD"))
 .S %TYP=$P(%PRM,",",3)
 .I %TYP="N" S %VL=$J(%VL,$P(%PRM,",",5),$P(%PRM,",",5))
 .S @$$^W4MAIN("TMPREP")@("P",%NOM)=%VL
 .S @$$^W4MAIN("TMPREP")@("P",%NOM,"TYP")=%TYP
 ;
 I $D(%L1SCPC) D
 .N %N S %N="" F  S %N=$O(%L1SCPC(%N)) Q:%N=""  D
 ..S @$$^W4MAIN("TMPREP")@("P",%N)=$G(%L1SCPC(%N))
 ;
 Q
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 D PUT^%W1PRM("CSRPRINT","W4DMANYC")
 D PUT^%W1PRM("MANYREPS",1)
 Q
 ;
SDMSL(STAM) ;
 Q $$SDMSL^W4PRM 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMANY0
W4DMANY ; [ 15.01.13 02:58 ] [ 13.01.13 16:12 ] [ 30.04.12 19:02 ]
 K (JB,%ARG,%REM) D ^W4IN
 Q:$G(%ARG("SHOW"))=0
 D ^%W1ARG
 S %SCRN=$S($G(@$$^W4PL@("MATB")):"W4TOTMT",1:"W4TOT")
 ;
 S W4LKH=$$^W4LKH
 I W4LKH S %SCRN="W4TOTLKH"
 ;
P1 ;
 S TIPPS=$$TIPPS^W4TOT("")
 S DAT1=%ARG("MEDAT"),DAT2=%ARG("ADDAT")
 S DAT01=$$^%L1DC(DAT1,3),DAT02=$$^%L1DC(DAT2,3)
 D 100^W4TOT
 K SUMMTB
 S (SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSH,TIP1,HAVT,CASHD,SMP,SUMTAW,SUMATAW,STAW)=0
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D
 .D ^W4SUM
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D
 .S GLBL=$$GLTOT^W4LKHSUM($G(DOCH),DAT) D 1011^W4TOT
 ;
 S CASHD=$$^W4SUMV(DAT01,DAT02)
 ;
 D 102^W4TOT
 S PDN=$J(SHUM+HB-HBZ,2,2)
 ;
 D PC
 Q
 ;
 ;
PC ;
 K @$$^W4MAIN("TMPREP")
PC1 N %NM,%NOM
 S %NM="" F  S %NM=$O(@$$^W4SCR@(%SCRN,"P","NAME",%NM)) Q:%NM=""  D
 .S %NOM=$G(^(%NM))
 .N %VL,%PRM,%TYP
 .S %VL=$G(@%NM)
 .S %PRM=$G(@$$^W4SCR@(%SCRN,"P",%NOM,"CRD"))
 .S %TYP=$P(%PRM,",",3)
 .I %TYP="N" S %VL=$J(%VL,$P(%PRM,",",4),$P(%PRM,",",5))
 .S @$$^W4MAIN("TMPREP")@("P",%NOM)=%VL
 .S @$$^W4MAIN("TMPREP")@("P",%NOM,"TYP")=%TYP
 ;
 I $D(%L1SCPC) D
 .N %N S %N="" F  S %N=$O(%L1SCPC(%N)) Q:%N=""  D
 ..S @$$^W4MAIN("TMPREP")@("P",%N)=$G(%L1SCPC(%N))
 ;
PC2 K @$$^W4MAIN("TMPREP")@("GTR")
 ;
 I $D(@$$^W4REPSCR@(%SCRN,"GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=@$$^W4REPSCR@(%SCRN,"GTR")
 ;
 K @$$^W4MAIN("TMPREP")@("GTD")
 ;
 I $D(@$$^W4REPSCR@(%SCRN,"GTD"))>9 D
 .M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@(%SCRN,"GTD")
 ;
 ;;W "<span style=""font-size:16pt"">"_$$H2U^%L1FRM($$^W3MSDG($$GET^%W1PRM("MSD")))_"</span><br>",!
 ;;W "<hr>",!
 ;
 ;
 I $D(S4B) D ^%W1FREPB(%SCRN) G KILL
 ;
 I $G(DOCH)="Z" D
 .D KOTZ(MEDAT,NZ)
 .M @$$^W4GL("Z")@(P1DZ,NZ)=@$$^W4MAIN("TMPREP")
 .N BIG S BIG="B" I $$^W4LKH S BIG="BL"
 .S @$$^W4GL("Z")@(P1DZ,NZ)=BIG
 ;
 I $G(DOCH)'="Z",%SCRN["W4TOT" D KOTTOT(MEDAT,ADDAT)
 ;
 D ^%W1FREP(%SCRN)
 ;
KILL ;;K @$$^W4MAIN("TMPREP")
 Q
 ;
DOT ;
 W "<div style=""position:absolute;left:1px;top:1px""></div>",!
 Q
 ;
KOTZ(DAT,NZ) ;
 W "<table dir="""_$$^%W1DIR_""" style=""text-align:center;font-weight:bold"">",!
 W " <tr><td style=""font-size:14pt"">- Z -</td></tr>",!
 W " <tr><td>"_$$H2U^%L1FRM(DAT_" jix`zl mei zxibq g""ec")_"</td></tr>"
 W " <tr><td>"_$$H2U^%L1FRM(NZ_" ixeciq xtqn")_"</td></tr>",!
 W "</table>",!
 Q
 ;
KOTTOT(MEDAT,ADDAT) ;
 W "<table dir="""_$$^%W1DIR_""" width=""50%"" style=""text-align:center;font-weight:bold"">",!
 W " <tr><td>"_$$H2U^%L1FRM(MEDAT_" jix`zn ")_"</td><td>"_$$H2U^%L1FRM(ADDAT_" jix`z cr")_"</td></tr>",!
 W "</table>",!
 Q

W4DMANYC
W4DMANYC ; [ 11.11.24 19:36 ] [ 01.08.21 14:20 ] [ 09.06.21 10:53 ] 
 N (JB,%ARG,DISP,P1X)
 S P1TOT=$$GETP^%W1PRM("P1TOT")
 D KILL^%W1PRM("P1TOT")
 Q:P1TOT=""
 ;
BG ;
 S DAT1=$P(P1TOT,"-")
 S DAT2=$P(P1TOT,"-",2)
 Q:'DAT1  S:'DAT2 DAT2=DAT1
 S (DT,DT1)=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 D
 .N DAT S DAT=$$^%L1DC(DAT2,2)
 .S TIPPS=$$TIPPS^W4TOT("")
 ;
 ;;K @$$^W4MAIN("VRMSUM")
 D ^W4SUMZRO
 D 100^W4TOT
 ;
 F DATT=DT1:1:DT2 S DAT=$$^%L1DC(DATT,2) D
 .S GLBL=$$GLTOT^W4LKHSUM("",DAT) D 1011^W4TOT
 ;
 S CASHD=$$^W4SUMV(DT1,DT2)
 ;
 D G2V^W4SUMZRO
 ;
 K @$$^W4MAIN("VRMSUM")
 ;
 ;;S ^AA("SUMDLP")=$G(SUMDLP)
 ;
 D 102^W4TOT
 S PDN=$J(SHUM+HB-HBZ,2,2)
 S HMK=$$^W4QHMK(DT1,DT2)
 I '$D(DISP) S DISP=0
 ;
 I '$G(DISP) D HD^W4CB ; -- 11/11/24
 ;
 D ^W4PCPRM
 ;
 D ^W4PCTOT
 ;
 I $G(@$$^W4PRM@("DOCHL")) D
 .D ^W4IN,^W4MDPPC,^%L1TS
 .I '$G(DISP) D ^W4MDPPC Q:'PRINT
 .K @$$^W4MAIN("TEMP")@("L")
 .;;S ^AA("W4DMANYC","DOCHL","DISP")=$G(DISP)
 .S SM=1
 .S TXT="" D S1 S TXT="" D S1
 .S TXT=$J(P1TOT_" - l zegewl g""ec",32)
 .S TXTL=$L(TXT)
 .S TXT=$J("",3)_TXT D S1
 .S TXT=$J("",3)_$TR($J("",TXTL)," ","-") D S1
 .D ASR^W4LKHZ
 .I '$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
TV(P1TOT,DISP) ;
 N (JB,%ARG,%REM,P1TOT,DISP)
 G BG
 ;
S1 ; 
 D ^W4PCST(TXT,$G(DISP,1))
 Q
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMANYL
W4DMANYL ; [ 18.01.17 18:04 ] [ 08.10.16 07:20 ] [ 08.09.16 11:04 ] 
 K (JB,%ARG,%REM,DOCH) D ^W4IN
 Q:$G(%ARG("SHOW"))=0
 D ^%W1ARG
 S %SCRN=$S($G(@$$^W4PL@("MATB")):"W4TOTMT",1:"W4TOT")
 ;
 S W4LKH=$$^W4LKH
 I W4LKH S %SCRN="W4TOTLKH"
 ;
P1 ;
 S TIPPS=$$TIPPS^W4TOT("")
 S DAT1=%ARG("MEDAT"),DAT2=%ARG("ADDAT")
 S DAT01=$$^%L1DC(DAT1,3),DAT02=$$^%L1DC(DAT2,3)
 D ^W4SUMZRO
 D 100^W4TOT
 K SUMMTB
 S (SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSH,TIP1,HAVT,CASHD,SMP,SUMTAW,SUMATAW,STAW)=0
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D
 .D ^W4SUM
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D
 .S GLBL=$$GLTOT^W4LKHSUM($G(DOCH),DAT) D 1011^W4TOT
 ;
 S CASHD=$$^W4SUMV(DAT01,DAT02)
 ;
 D 102^W4TOT
 S PDN=$J(SHUM+HB-HBZ,2,2)
 ;
 I $G(%ARG("SGIRATJOM")),DAT01=DAT02 D 
 .N NZ S NZ=$G(%ARG("NZ")) Q:'NZ
 .I '$G(@$$^W4GL("Z")@(DAT01,NZ,"TIME")) S ^("TIME")=$ZD($H,"DD.MM.YY  24:60")
 ;
 D PC
 Q
 ;
 ;
PC ;
 K @$$^W4MAIN("TMPREP")
PC1 N %NM,%NOM
 S %NM="" F  S %NM=$O(@$$^W4SCR@(%SCRN,"P","NAME",%NM)) Q:%NM=""  D
 .S %NOM=$G(^(%NM))
 .N %VL,%PRM,%TYP
 .S %VL=$G(@%NM)
 .S %PRM=$G(@$$^W4SCR@(%SCRN,"P",%NOM,"CRD"))
 .S %TYP=$P(%PRM,",",3)
 .I %TYP="N" S %VL=$J(%VL,$P(%PRM,",",4),$P(%PRM,",",5))
 .S @$$^W4MAIN("TMPREP")@("P",%NOM)=%VL
 .S @$$^W4MAIN("TMPREP")@("P",%NOM,"TYP")=%TYP
 ;
 I $D(%L1SCPC) D
 .N %N S %N="" F  S %N=$O(%L1SCPC(%N)) Q:%N=""  D
 ..S @$$^W4MAIN("TMPREP")@("P",%N)=$G(%L1SCPC(%N))
 ;
PC2 K @$$^W4MAIN("TMPREP")@("GTR")
 ;
 I $D(@$$^W4REPSCR@(%SCRN,"GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=@$$^W4REPSCR@(%SCRN,"GTR")
 ;
 K @$$^W4MAIN("TMPREP")@("GTD")
 ;
 I $D(@$$^W4REPSCR@(%SCRN,"GTD"))>9 D
 .M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@(%SCRN,"GTD")
 ;
 ;;W "<span style=""font-size:16pt"">"_$$H2U^%L1FRM($$^W3MSDG($$GET^%W1PRM("MSD")))_"</span><br>",!
 ;;W "<hr>",!
 ;
 ;
 I $D(S4B) D ^%W1FREPB(%SCRN) G KILL
 ;
 I $G(DOCH)="Z" D
 .D KOTZ(MEDAT,NZ)
 .M @$$^W4GL("Z")@(P1DZ,NZ)=@$$^W4MAIN("TMPREP")
 .N BIG S BIG="B" I $$^W4LKH S BIG="BL"
 .S @$$^W4GL("Z")@(P1DZ,NZ)=BIG
 ;
 I $G(DOCH)'="Z",%SCRN["W4TOT" W $$KOTTOT(MEDAT,ADDAT)
 ;
 D ^%W1FREP(%SCRN)
 ;
KILL ;;K @$$^W4MAIN("TMPREP")
 Q
 ;
DOT ;
 W "<div style=""position:absolute;left:1px;top:1px""></div>",!
 Q
 ;
KOTZ(DAT,NZ) ;
 D KOTZ^W4DMANY(DAT,NZ)
 Q
 ;
KOTTOT(MEDAT,ADDAT) ;
 Q $$KOTTOT^W4DMANY(MEDAT,ADDAT)
 
 
 
 
 
 
 
 
 
 

W4DMLZ
W4DMLZ ; DOCH MELZARIM [ 24.04.24 13:21 ] [ 22.02.24 13:43 ] [ 06.04.22 14:38 ] 
 N (JB,%ARG,%REM,P1B) D ^W4IN
 Q:$G(%ARG("SHOW"))=0
 I $G(%ARG("SORT")) G S
 D B
S D SHOW
 Q
 ;
 ;
B D VRM,TEMP K @VRM,@TEMP
  ; INPUT : DAT1,DAT2,MESHAA,ADSHAA
  ; SGR=1 - LEFI PRITIM, 2 -KASPI
TV ;
 D ^%W1ARG
 S (MESUGS1,ADSUGS1)=""
 I '$G(MESUGS),'$G(ADSUGS) S MESUGS="",ADSUGS=""
 I '$TR($G(MESHAA),":",""),'$TR($G(ADSHAA),":","") S MESHAA="",ADSHAA=""
 S D1=$$^%L1DC(DAT1,3)
 S D2=$$^%L1DC(DAT2,3)
 K @VRM N HZM1 S HZM1="",HZM0="" ; HZM0 - FIRST ORDER AFTER Z .
 ;
 I $D(P1TIPMZ) S SGR=2
 N VRM D VRM
 N TEMP D TEMP
 ;
 S D=D1-1 F  S D=$O(@$$^W4REF@(D)) Q:D=""  Q:D>D2  D
 .S HZM="" F  S HZM=$O(@$$^W4REF@(D,HZM)) Q:HZM=""  I HZM?1N.N D
 ..
 ..I $D(P1TIPMZ),@$$^W4REF@(D,HZM)["^",D1=D2 D  Q
 ...K @VRM S HZM0=HZM+1
 ..
 ..I $$^W4CLOSE(HZM) S HZM1=HZM
 ..
 ..Q:'($D(@$$^W4ORD@(HZM))#2)
 ..Q:$$MSL^W4HZMST(HZM)
 ..I $G(%ARG("SUGHZ"))=1,$$^W4CLOSE(HZM) Q
 ..I $G(%ARG("SUGHZ"))=2,'$$^W4CLOSE(HZM) Q
 ..
 ..D GA^%L1SCREF(HZSCR,$$^W4ORD_"(HZM)") S:MKBL="" MKBL="???"
 ..;
 ..I $G(MESUGS)!$G(ADSUGS),$G(NMB) S SUGS=$$SUGL^W4L(NMB) I SUGS<MESUGS!(SUGS>ADSUGS) Q
 ..;
 ..N OKS S OKS=0
 ..I MESHAA'="00:00"!(ADSHAA'="24:00") D  Q:'OKS
 ...S MESHAA=MESHAA+$J($P(MESHAA,":",2)/60,2,2)
 ...S ADSHAA=ADSHAA+$J($P(ADSHAA,":",2)/60,2,2)
 ...I MESHAA>ADSHAA S ADSHAA=ADSHAA+24
 ...I MESHAA<$$ENDZ^W4SHAA,ADSHAA'>$$ENDZ^W4SHAA S MESHAA=MESHAA+24,ADSHAA=ADSHAA+24
 ...I ADSHAA<$$ENDZ^W4SHAA S ADSHAA=ADSHAA+24
 ...N SHAA1 S SHAA1=$$^W4SHAA(HZM)
 ...;
 ...I SHAA1<MESHAA!(SHAA1'<ADSHAA) Q
 ...S OKS=1
 ..
 ..S MLZP=$$MLZP(HZM) Q:MLZP=""
 ..
 ..D
 ...S @VRM@(MLZP,"PDNHB")=$G(@$$^W4MAIN("VRM")@(MLZP,"PDNHB"))+SHUL+SHULA-$S('$$TIPPD:TIP,1:0)
 ...S @VRM@(MLZP,"PDNHBA")=$G(@VRM@(MLZP,"PDNHBA"))+SHULA
 ...I $G(SGR)=1 S (DMSH,TIP,HNH)=0 ;---- DOCH LEFI PRITIM
 ...S ^("SHER")=$G(@VRM@(MLZP,"SHER"))+DMSH
 ...S ^("TIP")=$G(@VRM@(MLZP,"TIP"))+TIP
 ...S ^("HNH")=$G(@VRM@(MLZP,"HNH"))+HNH
 ...S @VRM@(MLZP,"CIBHN")=$G(@VRM@(MLZP,"CIBHN"))+$G(@$$^W4ORD@(HZM,"CIBHN"))
 ..;
 ..S SOAD=$$SOAD^W4SOAD(SOAD,TSHL,$G(NMB))
 ..S:TSHL+HNH ^("SOAD")=$G(@VRM@(MLZP,"SOAD"))+SOAD
 ..
 ..S ^("HZM")=$G(@VRM@(MLZP,"HZM"))+$S(TSHL>0:1,TSHL<0:-1,1:0)
 ..
 ..I $G(SGR)'=1 S @VRM@(MLZP,"HZMN",HZM)=""
 ..I $G(SGR)=1 D  ; LEFI PRITIM
 ...N N S N="" F  S N=$O(@$$^W4GL("P1MLZ")@(HZM,N)) Q:N=""  D
 ....S @VRM@(N,"HZMN",HZM)=""
 ..
 ..
 ..D  ;------------------------------ > PDN,BTL
 ...
 ...I $G(SGR)'=1 S ^("PDN")=$G(@VRM@(MLZP,"PDN"))+TSHL
 ...
 ...I $G(SGR)=1 D  ;-- PRITIM -- HISHUV PIDYON
 ....;;Q:'$$^W4CLOSE(HZM)
 ....S ^("PDN")=$G(@VRM@(MLZP,"PDN"))+DMSH
 ....S ^("PDN")=$G(@VRM@(MLZP,"PDN"))-HNH
 ....N N,N1,TS
 ....S N="" F  S N=$O(@$$^W4GL("P1MLZ")@(HZM,N)) Q:N=""  D  ; N - MELZAR
 .....S N1="",TS=0,HNHP=0
 .....F  S N1=$O(@$$^W4GL("P1MLZ")@(HZM,N,N1)) Q:N1=""  D  ; N1 -- PARIT
 ......S TS=TS+$P(^(N1),"*",2),HNHP=HNHP+$P(^(N1),"*",4)
 .....S ^("PDN")=$G(@VRM@(N,"PDN"))+TS-HNHP
 ...
 ...S BTL=0
 ...I '$G(@$$^W4PRM@("MLZ")) D  Q  ;------ HISHUV BITULIM IF WAITER PROTECTION
 ....N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .....Q:$$AVAR^W4HZMST(HZM,I)  ; -- LO LEHASHEV BITULEY HAAVARA
 .....N SUMST S SUMST=$$SUM^W4HZMST(HZM,I)
 .....N PARST S PARST=$$PAR^W4HZMST(HZM,I)
 .....I SUMST<0 S BTL=BTL+(-SUMST)
 ....S ^("BTL")=$G(@VRM@(MLZP,"BTL"))+BTL
 ...
 ...;---------- HISHUV BITULIM - NO WAITER PROTECTION
 ...N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D  ;
 ....S BTL=0
 ....N MZ S MZ=$P(^(N),"*",2) ; -- MELZAR
 ....I $$SUM^W4HZMST(HZM,N)<0,$$PAR^W4HZMST(HZM,N)'["%" D
 .....Q:$$AVAR^W4HZMST(HZM,N)
 .....S BTL=-$$SUM^W4HZMST(HZM,N)
 .....I $$PAR^W4HZMST(HZM,N+1)["%" S BTL=BTL+(-$$SUM^W4HZMST(HZM,N+1))
 ....I 'MZ,$G(MKBL) S MZ=MKBL
 ....I $D(P1HY) S MZ=$$MLZY(HZM)
 ....I $G(@$$^W4PRM@("BITA")),$$TSHL^W4HZMST(HZM)'<0,'$D(P1B) Q  ; BITA - LEHAZIG RAK BITULEY HAZMANOT SHE BUTLU; P1B - CALL FROM ^P1B
 ....I MZ S ^("BTL")=$G(@VRM@(MZ,"BTL"))+BTL
 .
 .Q:$D(P1TIPDAY)
 .Q:$G(@$$^W4PRM@("TIPMZM"))  ;
 .
 .S SY=1
 .I '$D(P1TIPMZ)&'$D(SGIRATJOM)!$G(@$$^W4PRM@("TIPMZM")) D
 ..N J S J=D_"^" F  S J=$O(@$$^W4GL("TIPMZ")@(J)) Q:J=""  Q:$P(J,"^")'=D  D
 ...I $G(^(J))["?" S SY=SY+1
 ...N N1 S N1="" F  S N1=$O(@$$^W4GL("TIPMZ")@(J,N1)) Q:N1=""  D  ;-- N1 - MELZAR
 ....N N11 S N11=N1
 ....I $D(P1HY) S N1=$$MLZY1(D,SY)
 ....Q:'$$ALL
 ....S @VRM@(N11,"TIP")=$G(@VRM@(N11,"TIP"))+$G(@$$^W4GL("TIPMZ")@(J,N11))
 ;
 I $G(SGR)=1 D  ; -- HISHUV MISP SOADIM LEFI KAMUT PRITIM
 .N N,HZ,MLZP,I,SMLZ,SD
 .S N="" F  S N=$O(@VRM@(N)) Q:N=""  D  ; -- N - MELZAR
 ..K @VRM@(N,"SOAD")
 ..S HZ="",I=0
 ..F  S HZ=$O(@VRM@(N,"HZMN",HZ)) Q:HZ=""  D  S I=I+(SD/$S('SMLZ:1,1:SMLZ))
 ...S SD=$$SOAD^W4HZMST(HZ)
 ...N N1 S N1="",SMLZ=0
 ...F  S N1=$O(@$$^W4GL("P1MLZ")@(HZ,N1)) Q:N1=""  S SMLZ=SMLZ+1 ; - K-VO PAR-V
 ..S @VRM@(N,"SOAD")=$J(I,2,2)
 ;
 Q:$D(P1TIPDAY)
 ;
 I $D(P1TIPMZ),D1=D2 D  G Z2 ;---------- HISHUV ZIKUIM LE DOH TIPIM BE MEZUMAN
 .N DAT S DAT=$$^%L1DC($$^%L1DC(D1,1),2)
 .N N,A S N="" F  S N=$O(@$$^W4GL("TOT")@(DAT,"MIN3",1,N)) Q:N=""  Q:N'?5N  D
 ..S A=$G(^(N)) S ^("ZIC")=$G(@VRM@(N,"ZIC"))+A
 ;
 ;------------------------------------ HISHSUV ZICUIM RAGIL
 S N="" F  S N=$O(@$$^W4GL("P1TZ")@(N)) Q:N=""  D GA^%L1SCREF("P1TZ",$$^W4GL("P1TZ")_"(N)") D
 .I DZ'<D1,DZ'>D2,MLZ D
 ..I $G(NMB),$L(NMB)<4,$G(MESUGS)!$G(ADSUGS),$$SUGS^W4L(NMB)<MESUGS!($$SUGS^W4L(NMB)>ADSUGS) Q
  ..S:CA<0 CA=-CA
 ..S ^("ZIC")=$G(@VRM@(MLZ,"ZIC"))+(MZM+CHK+CA+$G(ASR)+$G(TL))
 ..S @VRM@(MLZ,"TZ",N)="" ; N - NOM TEUD ZIC
 ;
 ;------------------------------------ HORADAT ZICUIM
Z2 I $G(SGR)'=1 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S ^("PDN")=$G(@VRM@(N,"PDN"))-$G(^("ZIC"))
 .S ^("PDNHB")=$G(@VRM@(N,"PDNHB"))-$G(^("ZIC"))
 ;
 S I=0,N="" K @TEMP
 ;
 S (SUMPD,SUMSHR,SUMTIP,SUMBIT,SUMSD,SUMHZ,SUMZIC,SUMHN,SUMHNCB)=0
 ;
 ;----------------------- SIKUMIM LEFI KOL MELZARIM ---
 ;
 F  S N=$O(@VRM@(N)) Q:N=""  D
 .N TIP S TIP=+$G(@VRM@(N,"TIP"))
 .S SUMPD=SUMPD+$G(@VRM@(N,"PDN"))+$S($$TIPPD:TIP,1:0)
 .S SUMSHR=SUMSHR+$G(@VRM@(N,"SHER"))
 .S SUMTIP=SUMTIP+TIP
 .S SUMHN=SUMHN+$G(@VRM@(N,"HNH"))-$G(^("CIBHN"))
 .S SUMSD=SUMSD+$G(@VRM@(N,"SOAD"))
 .S SUMHZ=SUMHZ+$G(@VRM@(N,"HZM"))
 .S SUMBIT=SUMBIT+$G(@VRM@(N,"BTL"))
 .S SUMZIC=SUMZIC+$G(@VRM@(N,"ZIC"))
 .S SUMHNCB=SUMHNCB+$G(@VRM@(N,"CIBHN"))
 ;
 D TEMP
 I $G(SGR)=1 G Z3
 ;
 I $D(P1TIPMZ) D  Q  ;---- DOCH MELZARIM IF CALL FROM TIPIM B MEZUMAN
 .K @VRM@("TIPMZ")
 .N LNZ S LNZ=LASTZ ; ?
 .I $D(@$$^W4GL("TIPMZ")@(LNZ)) D
 ..S N="" F  S N=$O(@$$^W4GL("TIPMZ")@(LNZ,N)) Q:N=""  D
 ...S @VRM@(N,"TIPMZ")=$G(@$$^W4GL("TIPMZ")@(LNZ,N))
 .
 .F  S N=$O(@VRM@(N)) Q:N=""  D
 ..S I=I+1 S TIP=$G(^(N,"TIP"))
 ..S @TEMP@(I)=N_"\"_$$^W4NAME(N)_"\"
 ..S @TEMP(I)=@TEMP(I)_($G(@VRM@(N,"PDN"))+TIP)_"\"
 ..S @TEMP@(I)=@TEMP@(I)_"\"_$G(@VRM@(N,"SHER"))_"\"_TIP_"\"
 ..S @TEMP@(I)=@TEMP@(I)_+$G(@VRM@("TIPMZ"))_"\"_(TIP+$G(^("TIPMZ")))
 ;
 ;
Z3 ;---------------------- DOCH MELZARIM ----------------
 ; 1   2     3   4   5  6    7   8   9   10   11    12
 ;MLZ\NAME\SHER\BTL\HNH\ZIC\TIP\PDN\SOAD\HZM\PDNHB\HNHCIB
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .N PDN S PDN=$G(@VRM@(N,"PDN"))+$S($$TIPPD:$G(@VRM@(N,"TIP")),1:0)
 .I $G(SGR)=2,'$D(P1JOM) S PDN=$G(@VRM@(N,"PDNHB"))
 .N J,OK S OK=0 S:PDN OK=1
 .I 'OK F J="SHER","BTL","HNH","ZIC","HZM","SOAD","TIP","PDNHB" D
DD ..I $G(@VRM@(N,J)) S OK=1
 .Q:'OK
 .S I=I+1 S @TEMP@(I)=N_"\"_$$^W4NAME(N)_"\"
 .I '$$MTAW S @TEMP@(I)=@TEMP@(I)_$G(@VRM@(N,"SHER"))_"\"
 .S @TEMP@(I)=@TEMP@(I)_$G(@VRM@(N,"BTL"))_"\"
 .S @TEMP@(I)=@TEMP@(I)_($G(@VRM@(N,"HNH"))-$G(^("CIBHN")))_"\"
 .S @TEMP@(I)=@TEMP@(I)_$G(@VRM@(N,"ZIC"))_"\"
 .I '$$MTAW S @TEMP@(I)=@TEMP@(I)_$G(@VRM@(N,"TIP"))_"\"
 .S @TEMP@(I)=@TEMP@(I)_PDN_"\"
 .I '$$MTAW S @TEMP@(I)=@TEMP@(I)_$G(@VRM@(N,"SOAD"))_"\"
 .S @TEMP@(I)=@TEMP@(I)_$G(@VRM@(N,"HZM"))_"\"
 .S @TEMP@(I)=@TEMP@(I)_$G(@VRM@(N,"PDNHB"))_"\"_$G(^("CIBHN"))_"\@@"
 ;
 Q:$D(P1JOM)
 ;
 I SUMSD S SOADMZ=$J(SUMPD/SUMSD,2,2)
 ;
 D S4B
 ;
END K @TEMP,@VRM
 Q
 ;
 ;
MSP0 ;
 N PDN,SOAD,MSOAD
 S PDN=$P(@$$^W4MAIN("TEMP")@(SH),"\",8)
 S SOAD=$P(^(SH),"\",9) Q:'SOAD
 S MSOAD=$J(PDN/SOAD,2,2)
 Q
 ;
 ;
S4B ;
 K %S4B N I
 ;
 S %S4B("FIX")=2,%S4B("LEFT")=4
 S %S4B("VGR1")=4,%S4B("NOEXP")="",%S4B("INV")=""
 S %S4B("NGR1")=20
 ;           ; 1   2    3    4   5   6    7   8   9   10  11   12
 N MC1 S MC1="MLZ\NAME\SHER\BTL\HNH\ZIC\TIP\PDN\SOAD\HZM\PDNHB\CIBHN"
 I $$MTAW S MC1="MLZ\NAME\BTL\HNH\ZIC\PDN\HZM\PDNHB\CIBHN"
 ;
 N MC2,MC2SUM S MC2="MLZ\NAME\HZM\PDN\SOAD\AVR\TIP\ZIC\BTL\HNH\CIBHN"
 I $$MTAW S MC2="MLZ\NAME\HZM\PDN\AVR\ZIC\BTL\HNH\CIBHN"
 ;
 S MC2SUM="\SUMHZM\SUMPD\SUMSD\\SUMTIP\SUMZIC\SUMBT\SUMHN\SUMHBCB"
 ;
 D S4GB
 ;
 K @S4B F I=1:1 Q:'$D(@TEMP@(I))  D
 .N T,T1 S T=$G(@TEMP@(I)),T1=""
 .D SET^%L1FRM(T,MC1,"\","T1",MC2,"\") ; --- T --> T1
 .;
 .I '$$MTAW D
 ..S $P(T1,"\",6)=$S($P(T1,"\",5):$J($P(T1,"\",4)/$P(T1,"\",5),2,2),1:"")
 ..F J=1,2,3,5 S $P(@S4B@(I),"\",J)=$P(T1,"\",J)
 ..F J=4,6:1:11 S $P(@S4B@(I),"\",J)=$J($P(T1,"\",J),2,2)
 ..I $G(@$$^W4PRM@("COEF")) D
 ...S $P(@S4B@(I),"\",7)=$J($P(@S4B@(I),"\",7)*@$$^W4PRM@("COEF"),2,2)
 .
 .I $$MTAW D
 ..S $P(T1,"\",5)=$S($P(T1,"\",3):$J($P(T1,"\",4)/$P(T1,"\",3),2,2),1:"")
 ..F J=1,2,3 S $P(@S4B@(I),"\",J)=$P(T1,"\",J)
 ..F J=4:1:9 S $P(@S4B@(I),"\",J)=$J($P(T1,"\",J),2,2)
 ;
 ;-------------- SICUMIM
 D SUM4B
 ;
 I $G(@$$^W4PRM@("COEF")) S SUMSHR=$J($G(SUMSHR)*@$$^W4PRM@("COEF"),2,2)
 ;
 S @SUM4B="\\"_SUMHZ_"\"_$J(SUMPD,2,2)
 ;
 I '$$MTAW D
 .S @SUM4B=@SUM4B_"\"_$S($G(SGR)=1:"",1:SUMSD)
 .S @SUM4B=@SUM4B_"\"_$S($G(SGR)=1!'SUMSD:"",1:$J(SUMPD/SUMSD,2,2))
 .S @SUM4B=@SUM4B_"\"_$J(SUMTIP,2,2)
 ;
 I $$MTAW S @SUM4B=@SUM4B_"\"_$S($G(SGR)=1!'SUMHZ:"",1:$J(SUMPD/SUMHZ,2,2))
 ;
 S @SUM4B=@SUM4B_"\"_$J(SUMZIC,2,2)
 S @SUM4B=@SUM4B_"\"_$J(SUMBIT,2,2)
 S @SUM4B=@SUM4B_"\"_$J(SUMHN,2,2)_"\"_$J(SUMHNCB,2,2)
 ;
 D S4BPRM
 ;
 Q
 ;
 ;
T(S) ;
 Q $P(S,":")*60+$P(S,":",2)
 ;
SUM(HZM,MLZ) ;
 S SUM=0
 N N S N="" F  S N=$O(@$$^W4GL("P1MLZ")@(HZM,MLZ,N)) Q:N=""  D
 .S SUM=SUM+$P(^(N),"*",2)-$P(^(N),"*",4)
 Q
 ;
MLZP(HZM) ;
 I $D(P1HY) S MLZP=$$MLZY(HZM) Q MLZP
 N MKBL S MKBL=$$MKBL^W4HZMST(HZM)
 S MLZP=MKBL
 I $G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)),$G(@$$^W4PRM@("LAST")),$G(SGR)=2 S MLZP=@$$^W4GL("P1MLZ")@(HZM)
 Q MLZP
 ;
MLZY(HZM) ;
 N DT,MLZY,HZMY S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 I '$D(@$$^W4GL("P1HY")@(DT)) S MLZY="99999" Q MLZY
 I $D(@$$^W4GL("P1HY")@(DT,HZM)) S MLZY=^(HZM) Q MLZY
 S HZMY=$O(@$$^W4GL("P1HY")@(DT,HZM),-1) I HZMY="" Q "99999"
 S MLZY=@$$^W4GL("P1HY")@(DT,HZMY)
 Q MLZY
 ;
MLZY1(DT,SY) ;
 S MLZY=99999
 N N,Y S N="",Y=0
 F  S N=$O(@$$^W4GL("P1HY")@(DT,N)) Q:N=""  D  Q:Y=SY
 .S Y=Y+1 I Y=SY S MLZY=$G(@$$^W4GL("P1HY")@(DT,N))
 Q MLZY
 ;
TIPPD(STAM) ;
 Q $$^W4TIPPD
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
TEMP ;
 S TEMP=$$^W4MAIN("TEMP")
 Q
 ;
SUM4B ;
 S SUM4B=$$BG^W4MAIN("S4B")_"99999)"
 Q
S4GB ;
 S S4B=$$^W4MAIN("S4B")
 Q
MTAW(STAM) ;
 Q $$MTAW^W4MTAW
 ;
ALL(STAM) ;
 I '$G(MESUGS),'$G(ADSUGS),'$G(MESHAA),'$G(ADSHAA) Q 1
 Q 0
 ;
SHOW ; 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 S %SCRN="W4DMLZ"
 I $$MTAW S %SCRN="W4DCSR"
 D S4BPRM
 W "<div dir="""_$$^%W1DIR_""" "_$$INV^%W1ALIGN_" >"
 W $$^%W1DICT("SORT")_$$NBSP^%L1FRM(2)
 W "<select id=""sort"" onChange=""ChangeSort('"_%SCRN_"')"">",!
  N PRM S PRM=%S4B("PRM")
  N K S K=0
  F I=$L(PRM,"|")-1:-1:2 D
  .S K=K+1
  .W "<option value="""_(I-1)_""" "
  .I $G(%ARG("SORT")),%ARG("SORT")=K W " selected=""selected"" "
  .W ">"_$$H2U^%L1FRM($P(PRM,"|",I))_"</option>",!
 W "</select>",!
 W $$NBSP^%L1FRM(1)
 W "</div>",!
 ;
 S S4B=""
 D PC^W4DMANY
 Q
 ;
S4BPRM ;
 S %S4B("PRM")="|'SODEXO' zegpd| zegpd| milehia |miekif|mitih|creql rvenn| micreq | zexikn |zepnfd|  xvln my  |xvln 'qn|"
 I $D(P1HY) S %S4B("PRM")="|'SODEXO' zegpd|  zegpd | milehia|  zexiy |creql rvenn|micreq|dtwd+oeict|  mitih  | miekif |zepnfd|  y""ng` my  |y""ng` 'qn|"
 I $$MTAW D
 .S %S4B("PRM")="| zegpd | milehia | miekif | oeaygl rvenn | zexikn | zepeayg| (z)i`tew my  |(z)i`tew 'qn|"
 S %S4B("PRINT")="",%S4B("VIEW")=""
 ;
 S %S4B("RG",2)="H"
 S %S4B("VRB","SGR")=$G(%ARG("SGR"))
 K %S4BO
Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMN
W4DMN ; DOCH DMEY MISHL NOSAFIM [ 27.08.26 11:03 ] [ 26.08.26 17:13 ] [ 17.06.26 10:54 ] 
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^%W1ARG
 S SIT="zayl"
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<table class=""hdvw"" "
   W "style=""font-size:"_$$^W3FSZ(16)_";width:100%"" border=""1"">",!
   W "<tr>"
    W "<td>"
      W $$H2U^%L1FRM($$^W3MSDG($$GET^%W1PRM("MSD")))_" : "
      I '$$DPS W $$^%W1DICT("DMNREPORT")
      I $$DPS W $$^%W1DICT("DPSREPORT")
    W "</td>",!
  W "</tr>",!
  W "</table>",!
  ;
  S COLSPAN=7
  I $$DPS S COLSPAN=6 
  ;
  I $$PAPJ^W4PRM,$$MZSM^W4PRM,$$DPS,$G(MEDAT),MEDAT=ADDAT D KIOSK(MEDAT)
  ;
  I '$G(MEDAT),'$G(ADDAT) D  Q
    .N DTZ S DTZ=$$^W4DZ
    .W "<table width=""70%"" style=""font-size:"_$$^W3FSZ(12)_""">",!
    . W "<tr>"
    .  W "<td dir=""LTR"">"
    .     D ^%W1DAT("MEDAT",DTZ,$$^%W1DICT("FROMDATE"))
    .  W "</td>",! 
    .  W "<td>&nbsp;</td> ",!
    .  W "<td dir=""LTR"">"
    .    D ^%W1DAT("ADDAT",DTZ,$$^%W1DICT("UNTILDATE"))
    .  W "</td>",!
    .  W "<td>&nbsp;</td> ",!
    .  W "<td>"
    .    D ROUNDBUT^%W1JS("sbm",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
    .  W "</td>",!
    .  W "<td>"
    .    D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
    .  W "</td>",!
    . W "</tr> ",!
    .W "</table>",!
 ;
 ;
 S MEDT=$$^%L1DC($G(MEDAT),3)
 S ADDT=$$^%L1DC($G(ADDAT),3)
 ;
 D DIVBUT
 W "<br>" 
 ;
 D KOT ;
 W "<br>",!
 ;
 W "<table id=""TblDmn"" border=""1"" width="""_$S($$1024^W4WDSCR:100,1:90)_"%"" cellspacing=""0"" cellpadding=""3"">"
 W "<tr>"
  W "<th>"_$$^%W1DICT("COURIER")_"</th>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("CITY")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  I '$$DPS W "<th>"_$$^%W1DICT("ADDRESS")_"</th>"
  W "<th>"_$$^%W1DICT("TIME")_"</th>"
  W "<th>"_$$^%W1DICT("ORDER")_"</th>"
  W "<th>"_$$^%W1DICT("TOPAY")_"</th>"
  ;
  I '$$DPS D
  .W "<th>"_$$^%W1DICT("DLVPAY")_"</th>"
  .I $$EDIT W "<th>"_$$^%W1DICT("PREVPAY")_"</th>"
  .W "<th>"_$$^%W1DICT("ADDDLVPAY")_"</th>"
  ; 
  I $$DPS D
  .W "<th>"_$$^%W1DICT("PAIDCASH")_"</th>"
  .W "<th>"_$$^%W1DICT("DPSPAY")_"</th>"
  .W "<th>"_$$^%W1DICT("DIF")_"</th>"
  ; 
  I $$EDIT D
  .W "<th>"_$$^%W1DICT("CHANGED")_"</th>" 
 W "</tr>",!
 ;
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 ;
 F DT=MEDT:1:ADDT D
 .S HZM="" F  S HZM=$O(@$$GLOB@(DT,HZM)) Q:HZM=""  D HZM
 ;
 ;
 K STOPAY,SDMSH,SDMN,SHZ
 S (STOPAY,SDMSH,SDMN,SHZ)=0
 K @$$^W4MAIN("TMPHFK0")
 ;
 S PSL="" F  S PSL=$O(@VRM@(PSL)) Q:PSL=""  D
 .I $G(%ARG("PSL")),PSL'=%ARG("PSL") Q
 .S DT="" F  S DT=$O(@VRM@(PSL,DT)) Q:DT=""  D
 ..S HOUR="" F  S HOUR=$O(@VRM@(PSL,DT,HOUR)) Q:HOUR=""  D
 ...I HOUR="" S HOUR=" "
 ...S HZM="" F  S HZM=$O(@VRM@(PSL,DT,HOUR,HZM)) Q:HZM=""  D
 ....S ST=$G(^(HZM))
 ....D TRHZ(PSL,DT,HZM,ST)
 .
 .I $$EDIT S @$$^W4MAIN("TMPHFK0")=$G(@$$^W4MAIN("TMPHFK0"))+SDMN(PSL)
 .
 .I '$$EDIT D
 ..W "<tr style=""background-color:lightyellow;font-weight:bold"" >"
 ..W "<td colspan="""_COLSPAN_""">"_$$PSL1(PSL)_"</td>",!
 ..W "<td>"_$G(SHZ(PSL))_"</td>",!
 ..W "<td>"_$J($G(STOPAY(PSL)),2,2)_"</td>",!
 ..W "<td>"_$J($G(SDMSH(PSL)),2,2)_"</td>",!
 ..W "<td align=""center"">"_$J($G(SDMN(PSL)),2,2)_"</td>",!
 ..I $$DPS D
 ...W "<td align=""center"" dir=""LTR"" align=""right"" >"
 ... W $J($G(SDMN(PSL))-$G(SDMSH(PSL)),2,2)
 ...W "</td>",!
 ..W "</tr>",!
 .
 I '$$DELIS^W4PRM!$$DPS D TOT
 ;
 W "</div>",!
 ;;K @VRM; ***
 K @$$^W4MAIN("VRMPSL")
 Q
 ;
 ;
HZM ;
 I $$^W4PIZUL(HZM) Q
 I $$DEL^W4DEL(HZM) Q
 ;
 S %SCRN="P1HZ"
 D GA^W4SCREF(%SCRN,$$^W4ORD_"(HZM)")
 I 'MZM,$$DPS Q
 ;
 S BAIT=$$BAIT^W4HZMST(HZM),DIRA=$E($$DIRA^W4HZMST(HZM),1,7)
 I BAIT,DIRA S BAIT=BAIT_"/"_DIRA
 S ADR=BAIT_" "_$$KTV^W4HZMST(HZM)
 ;
 S IR=$$IR^W4HZMST(HZM)
 N DTH S DTH=$$^%L1DC(TRH,3)
 ;
 I $$^W4ISCDLK(LKHN) S NMB=LKHN
 N NMB1 S NMB1=$TR(NMB,"-","")
 I $G(MEPSL),PSL<MEPSL!(PSL>$G(ADPSL)) S OK=0 Q
 ;
 S IR=$$SPA^%L1FRM($G(IR))
 I $$^W4MSL(NMB),IR="" S IR="TAKEAWAY"
 ;;I $$TAKEAWAY(IR) Q
 I IR="eti aia` lz" S IR="aia` lz"
 S PSL=$$PSL^W4HZMST(HZM) I '$$DMNALL Q:'PSL
 S PSL=+PSL
 ;
 I $$DMNALL,$$^W4MSD(NMB) D
 .S IR="",ADR=""
 .N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 .S TRH=$P(DATCB,"  ")
 .S SHAA=$P(DATCB,"  ",2)
 ; 
 S ST=HZM_"\"_TRH_"\"_IR_"\"_NMB_"\"_ADR_"\"_SHAA_"\"_TSHL_"\"_$S($$DPS:MZM,1:DMSH)
 S:SHAA="" SHAA="00:00"
 I $$DMNALL,$$^W4MSD(NMB) S @$$GL@(HZM)=MZM
 S @VRM@(PSL,DT,SHAA,HZM)=ST
 Q
 ;
 ;
TRHZ(PSL,DT,HZM,ST) ;
 D PRS^%L1FRM(ST,"HZM\TRH\IR\NMB\ADR\SHAA\TSHL\DMSH","\")
 W "<tr id=""tr"_HZM_""" >"
  N PSL1 S PSL1=$$PSL1(PSL)
  I $$DMNALL,'PSL,$$HZM^W4MSL(HZM) S PSL1=$$^%W1DICT("NOCOURIER")
  W "<td>"_PSL1_"</td>",!
  W "<td id=""trh"_HZM_""">"_TRH_"</td>",!
  W "<td>"_$$H2U^%L1FRM(IR)_"</td>",!
  W "<td>"_NMB_"</td>",!
  W "<td>"_$$H2U^%L1FRM($$NAME^W4HZMST(HZM))_"</td>",!
  I '$$DPS W "<td>"_$$H2U^%L1FRM(ADR)_"</td>",!
  W "<td>"_SHAA_"</td>",!
  W "<td onClick=""ShowOrder('"_HZM_"',this)"" style=""cursor:pointer"" >"_HZM_"</td>",!
  W "<td>"_$J(TSHL,2,2)_"</td>",!
  W "<td id=""dmsh"_HZM_""" "
   I $$DPS W "style=""cursor:pointer"" onClick=""FillCash('"_HZM_"')"" "
  W ">"_$J(DMSH,2,2)_"</td>",!
  ;
  S SHZ=SHZ+1
  S SHZ(PSL)=$G(SHZ(PSL))+1
  S STOPAY=STOPAY+TSHL
  S STOPAY(PSL)=$G(STOPAY(PSL))+TSHL
  ;
  S SDMSH=SDMSH+DMSH
  S SDMSH(PSL)=$G(SDMSH(PSL))+DMSH
  ;
  N VL S VL=$$VL(HZM)
  S SDMN=SDMN+VL
  S SDMN(PSL)=$G(SDMN(PSL))+VL
  ;
  I '$$EDIT!$$HZM^W4MSD(HZM)!$$NOPSL(HZM) D
  .W "<td id=""tddmn"_HZM_""" align=""center"" >"
  . W $J(VL,2,2)
  .W "</td>",!
  .
  .I $$DPS D
  ..W "<td id=""tddif"_HZM_""" align=""center"" dir=""LTR"" >"
  .. W $J(VL-DMSH,2,2)
  ..W "</td>",!
  .
  .I $$EDIT W "<td align=""center"">&nbsp;</td>",!
  ;
  I $$EDIT,$$HZM^W4MSL(HZM),'$$NOPSL(HZM) D
  . S:$G(IR)="" IR=" "
  .
  .I '$$DPS D
  .. W "<td id=""prv"_HZM_""" style=""cursor:pointer"" onClick=""PrevPay('"_HZM_"')"" >"
  ..  W $G(@$$^W4GL("W4DMNPRV")@(PSL,IR))
  .. W "</td>",!
  . 
  .W "<td id=""tddmn"_HZM_""" align=""center"" >"
  . W "<button onClick=""FillCash('"_HZM_"')"">=</button>&nbsp;"
  . W "<input id=""dmn"_HZM_""" type=""text"" value="""_VL_""" "
  .  W "size=""7"" onChange=""ChangeDmn('"_HZM_"')"" onClick=""this.select()"" "
  .  I $$VL(HZM) W "readonly=""readonly"" "
  . W "/>"
  .W "</td>",!
  .
  .I $$DPS D
  ..W "<td id=""tdfid"_HZM_""" align=""center"" >"
  .. W "<input id=""dif"_HZM_""" type=""text"" dir=""LTR"" align=""right"" "
  ..  W " value="""_$J(VL-DMSH,2,2)_""" size=""7"" readonly=""readonly"" "
  .. W "/>"
  ..W "</td>",!
  .;;S ^AA("W4DMN",HZM,"VL")=VL
  .;;S ^AA("W4DMN",HZM,"DMSH")=DMSH
  .W "<td align=""center""><input type=""checkbox"" id=""chn"_HZM_""" /></td>",!
  ; 
 W "</tr>",!
 Q
 ;
 ;
MVT ;
 S MVT(1)="onefn"
 S MVT(2)="wiy"
 S MVT(3)="`-k"
 S MVT(4)="dtwd"
 S MVT(5)="yelz"
 Q
 ;
 ;
PRM ;
 Q
 ;
TAKEAWAY(IR) ;
 I $TR(IR," .","")'="TAKEAWAY",$TR(IR," .","")'="TAW" Q 0
 Q 1
 ;
D(NOM) ; 
 ;;S ^D(HZM)=NOM 
 Q 
 ;
VL(HZM) ; 
 Q $G(@$$GL@(HZM)) 
 ;
EDIT(STAM) ; 
 Q $G(%ARG("EDIT")) 
 ;
DIVBUT ; 
 N VIS S VIS="hidden"
 I $$EDIT S VIS="visible"
 W "<table id=""tbhd"" width=""90%"" >",!
  W "<tr>"
   W "<td style=""width:40%"">&nbsp;</td>"
   W "<td>"
    W $$^%W1DICT("EDIT")_"&nbsp;"
    W "<input id=""edit"" type=""checkbox"" "
    I $$EDIT W " checked=""checked"" "
    W " onClick=""ShowPsw()"" >",!
   W "</td>"
   ;
   W "<td>"
    S VRM0=$$^W4MAIN("VRM0") K @VRM0
    F DT=MEDT:1:ADDT D
    .S HZ="" F  S HZ=$O(@$$GLOB@(DT,HZ)) Q:HZ=""  D
    ..I $D(@$$^W4ORD@(HZ,"TM")) S A=$G(^("TM")) D
    ...S PSL=$P(A,"\") I $$DMNALL S PSL=+PSL
    ...I PSL!$$DMNALL D
    ....S @VRM0@(PSL)=""
    ;
    S VRMPSL=$$^W4MAIN("VRMPSL") K @VRMPSL
    S PSL="" F J=1:1 S PSL=$O(@VRM0@(PSL)) Q:PSL=""  D
    .N A S A=$G(@$$^W4GL("P1SL"))
    .S IND=$E($$INV^%L1FRM(A),1,10)
    .S IND=IND_J
    .S @VRMPSL@(IND)=PSL
    ;
    W "<select id=""psl"" onChange=""ChangePsl()"" "
    W ">",!
     W "<option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
     S IND="" F  S IND=$O(@VRMPSL@(IND)) Q:IND=""  D
     .S PSL=$G(^(IND)) Q:PSL=""
     .W "<option value="""_PSL_""" "
     .I $G(%ARG("PSL")),PSL=%ARG("PSL") W " selected=""selected"" "
     .W ">"_$$PSL1(PSL)_"</option>",!
    W "</select>"
   W "</td>" 
   ;
   W "<td style=""width:30%"">&nbsp;</td>"
   
   I '$$MZSM^W4PRM,$$EDIT D
   .W "<td>"
   .W "<img src=""w3save.jpg"" id=""saveid"" alt=""Save"" onClick=""Save()"" "
   . W "style=""cursor:pointer;visibility:"_VIS_""" ",!
   .W " />"
   .W "</td>"
 ;
   I '$$EDIT D
   .W "<td>"
   . W "<img src=""w3print.jpg"" id=""printid"" alt=""Print"" onClick=""Print()"" "
   . W " />"
   .W "</td>"
   W "<td>"
    W "<img src=""w3close.jpg"" id=""backid"" alt=""Back"" onClick=""Cnc()"" "
    W " />"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q 
 ;
KOT ; 
 W "<span style=""font-size:"_$$^W3FSZ(14)_""">" 
  D 
  .I MEDAT=ADDAT W $$^%W1DICT("TODATE",MEDAT) Q
  .W $$^%W1DICT("FROMDATETODATE",MEDAT_"<>"_ADDAT) Q
 W "</span>",!
 W "<br>",!
 Q 
 ;
 ;
SAVE(PRM) ; 
 N HZM,VL,PSL,IR,DPS,TRH
 ;;S ^AA("W4DMN-SAVE","PRM")=PRM
 S HZM=$P(PRM,";") 
 S VL=$P(PRM,";",2) 
 S DPS=$P(PRM,";",3) 
 S TRH=$P(PRM,";",4) 
 I 'HZM Q "NOORDER" 
 I 'TRH Q "NODATE" 
 ;
 I DPS S @$$^W4GL("W4DPS")@(HZM)=VL 
 I 'DPS S @$$^W4GL("W4DMN")@(HZM)=VL 
 S IR=$$IR^W4HZMST(HZM)
 S PSL=+$$PSL^W4HZMST(HZM)
 I $L(IR),$L(PSL),'DPS S @$$^W4GL("W4DMNPRV")@(PSL,IR)=VL
 ;
 I DPS,PSL D  ;;,'$$MZSM^W4PRM D  ; -- 18.12.24
 .N DT S DT=$$^%L1DC(TRH,3) 
 .N SHAA S SHAA=$$SHAA^W4HZMST(HZM) I SHAA?1N.E,SHAA<$$SHAAZ^W4PRM S DT=DT-1
 .S $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\")=$P($G(@$$^W4GL("W4SLHFK")@(DT,PSL)),"\")+VL
 .S $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\",3)=$ZD($H,"24:60")
 Q 1
 ;
DPS(STAM) ; 
 Q $G(%ARG("DPS")) 
 ; 
GL(STAM) ; 
 I $$DPS Q $$^W4GL("W4DPS") 
 Q $$^W4GL("W4DMN") 
 ;
PSL1(PSL)
 N PSL1 S PSL1=""
 ;;I PSL<0 S PSL1="TAKE AWAY"  Q PSL1
 I PSL<0 S PSL1=$$^%W1DICT("CUSTOMERSTAKEAWAY") Q PSL1
 S PSL1=$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))
 Q PSL1
 ;
TOT ; 
 W "<tr id=""trtot"" style=""background-color:yellow;font-weight:bold"" >",!
  W "<td colspan="""_COLSPAN_""">"_$$^%W1DICT("TOTAL")_"</td>",!
  W "<td>"_$G(SHZ)_"</td>",!
  W "<td>"_$J(STOPAY,2,2)_"</td>",!
  W "<td>"_$J(SDMSH,2,2)_"</td>",!
  ;
  I '$$EDIT D
  .W "<td align=""center"">"_$J(SDMN,2,2)_"</td>",!
  .I $$DPS W "<td align=""center"" dir=""LTR"" >"_$J(SDMN-SDMSH,2,2)_"</td>",!
  ; 
  I $$EDIT D
  .I '$$DPS W "<td>&nbsp;</td>",!
  .W "<td align=""center"">" 
  .W " <input type=""text"" size=""8"" id=""totdmn"" readonly=""readonly"" value="""_$J(SDMN,2,2)_""" />"
  .W "</td>",!
  .
  .I $$DPS D
  ..W "<td align=""center"">" 
  ..W " <input type=""text"" size=""8"" id=""totdif"" readonly=""readonly"" "
  ..  W " dir=""LTR"" align=""right"" value="""_$J(SDMN-SDMSH,2,2)_""" "
  ..W " />"
  ..W "</td>",!
  .
  .N PSL S PSL=$G(%ARG("PSL")) 
  .;
  .I '$$MZSM^W4PRM!'$$EDIT!'PSL!($G(%ARG("MEDAT"))'=$G(%ARG("ADDAT"))) D  Q
  ..W "<td>&nbsp</td>",!
  .
  .W "<td align=""center"" dir="""_$$^%W1DIR_""">"
  .N DT S DT=$$^%L1DC($G(%ARG("ADDAT")),3)
  .D
  ..W $$^%W1DICT("HFKMZSM")_" "
  ..W "<span id=""itrahfk""></span>"
  ..W "<br>",!
  ..W "<button id=""btnhfk"" "_$$^W4TOUCH_"=""ClickMzSm('"_DT_"','"_PSL_"')"" >"
  .. W "<b>"_$$^%W1DICT("HFKPSLMZSM")_"</b>"
  ..W "</button>",!
 .W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
CLRDT(PRM) ; 
 N MEDAT,ADDAT,MEDT,ADDT,DT,PSL
 S MEDAT=$P(PRM,";"),MEDT=$$^%L1DC(MEDAT,3)
 S ADDAT=$P(PRM,";",2),ADDT=$$^%L1DC(ADDAT,3) 
 S PSL=$P(PRM,";",3)
 F DT=MEDT:1:ADDT D
 .I '$G(PSL) K @$$^W4GL("W4SLHFK")@(DT)
 .I $G(PSL) K @$$^W4GL("W4SLHFK")@(DT,PSL)
 Q 1 
 ;
DMNALL() 
 Q $G(@$$^W4PRM@("DMNALL")) 
 ;
NOPSL(HZM) ; 
 I $$HZM^W4MSD(HZM) Q 1
 N PSL S PSL=$$PSL^W4HZMST(HZM) I 'PSL Q 1
 Q 0 
 ;
DIFMZSM(PRM) ; 
 N (JB,%ARG,PRM)
 S DT=$P(PRM,";") I 'DT Q 0 
 S PSL=$P(PRM,";",2) I 'PSL Q 0 
 S SUM=$P(PRM,";",3)
 N RZ S RZ=SUM-$G(@$$^W4MAIN("TMPHFK0")) ;;$$MZSMHF(DT,PSL)
 S RZ=$J(RZ,1,1)
 Q RZ
 ;
ITRAHFK(PRM) ; 
 N VL,DAT,PSL,DT
 S VL=$P(PRM,";")
 S PSL=$P(PRM,";",2) I 'PSL Q 0
 S DAT=$P(PRM,";",3) I 'DAT Q 0
 S DT=$$^%L1DC(DAT,3) I 'DT Q 0
 Q $$MZSMHF(DT,PSL)
 ;
MZSMHF(DT,PSL) ;
 Q $G(@$$^W4GL("W4MZSMHF")@(DT,PSL))
 ;
PTMG ; 
 I $$MZSM^W4PRM Q 
 I '$$PAPJ^W4PRM Q
 D ^W4MDPPC 
 I $G(PRINT)<3 Q
 D ^W4SETPC(PRINT,$G(%MDP("P"))) D ^W4PTHDLY
 Q 
 ;
GLOB() 
 I $$DPS Q $$^W4REF ; -- 02.02.26
 I $$DMNALL Q $$^W4REF 
 Q $$^W4GL("W4LINKD") 
 ;
KIOSK(DAT) ; 
 N (JB,%ARG,DAT)
 S DT=$$^%L1DC(DAT,3) 
 S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  I $$^W4KIOSKO(N) D 
 .S @$$GL@(N)=$$MZM^W4HZMST(N)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMN0
W4DMN ; DOCH DMEY MISHL NOSAFIM [ 31.01.24 11:56 ] [ 04.01.24 06:25 ] [ 21.12.23 14:00 ] 
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^%W1ARG
 ;
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<table class=""hdvw"" "
   W "style=""font-size:"_$$^W3FSZ(16)_";width:100%"" border=""1"">",!
   W "<tr>"
    W "<td>"
      W $$H2U^%L1FRM($$^W3MSDG($$GET^%W1PRM("MSD")))_" : "
      I '$$DPS W $$^%W1DICT("DMNREPORT")
      I $$DPS W $$^%W1DICT("DPSREPORT")
    W "</td>"
  W "</tr>"
  W "</table>",!
  ;
  S COLSPAN=7
  I $$DPS S COLSPAN=6 
  ;
  I '$G(MEDAT),'$G(ADDAT) D  Q
    .N DTZ S DTZ=$$^W4DZ
    .W "<table width=""70%"" style=""font-size:"_$$^W3FSZ(12)_""">",!
    . W "<tr>"
    .  W "<td dir=""LTR"">"
    .     D ^%W1DAT("MEDAT",DTZ,$$^%W1DICT("FROMDATE"))
    .  W "</td>" 
    .  W "<td>&nbsp;</td> ",!
    .  W "<td dir=""LTR"">"
    .    D ^%W1DAT("ADDAT",DTZ,$$^%W1DICT("UNTILDATE"))
    .  W "</td>"
    .  W "<td>&nbsp;</td> ",!
    .  W "<td>"
    .    D ROUNDBUT^%W1JS("sbm",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
    .  W "</td>" 
    .  W "<td>"
    .    D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
    .  W "</td>"
    . W "</tr> ",!
    .W "</table>",!
 ;
 ;
 S MEDT=$$^%L1DC($G(MEDAT),3)
 S ADDT=$$^%L1DC($G(ADDAT),3)
 ;
 D DIVBUT
 W "<br>" 
 ;
 D KOT ;
 W "<br>",!
 ;
 W "<table id=""TblDmn"" border=""1"" width=""90%"" cellspacing=""0"" cellpadding=""3"">"
 W "<tr>"
  W "<th>"_$$^%W1DICT("COURIER")_"</th>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("CITY")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  I '$$DPS W "<th>"_$$^%W1DICT("ADDRESS")_"</th>"
  W "<th>"_$$^%W1DICT("TIME")_"</th>"
  W "<th>"_$$^%W1DICT("ORDER")_"</th>"
  W "<th>"_$$^%W1DICT("TOPAY")_"</th>"
  ;
  I '$$DPS D
  .W "<th>"_$$^%W1DICT("DLVPAY")_"</th>"
  .I $$EDIT W "<th>"_$$^%W1DICT("PREVPAY")_"</th>"
  .W "<th>"_$$^%W1DICT("ADDDLVPAY")_"</th>"
  ; 
  I $$DPS D
  .W "<th>"_$$^%W1DICT("PAIDCASH")_"</th>"
  .W "<th>"_$$^%W1DICT("DPSPAY")_"</th>"
  .W "<th>"_$$^%W1DICT("DIF")_"</th>"
  ; 
  I $$EDIT D
  .W "<th>"_$$^%W1DICT("CHANGED")_"</th>" 
 W "</tr>",!
 ;
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 ;
 F DT=MEDT:1:ADDT D
 .S HZM="" F  S HZM=$O(@$$^W4GL("W4LINKD")@(DT,HZM)) Q:HZM=""  D HZM
 ;
 ;
 K STOPAY,SDMSH,SDMN,SHZ
 S (STOPAY,SDMSH,SDMN,SHZ)=0
 ;
 S PSL="" F  S PSL=$O(@VRM@(PSL)) Q:PSL=""  D
 .I $G(%ARG("PSL")),PSL'=%ARG("PSL") Q
 .S DT="" F  S DT=$O(@VRM@(PSL,DT)) Q:DT=""  D
 ..S SHAA="" F  S SHAA=$O(@VRM@(PSL,DT,SHAA)) Q:SHAA=""  D
 ...S HZM="" F  S HZM=$O(@VRM@(PSL,DT,SHAA,HZM)) Q:HZM=""  D
 ....S ST=$G(^(HZM))
 ....D TRHZ(PSL,DT,HZM,ST)
 .
 .I '$$EDIT D
 ..W "<tr style=""background-color:lightyellow;font-weight:bold"" >"
 ..W "<td colspan="""_COLSPAN_""">"_$$PSL1(PSL)_"</td>"
 ..W "<td>"_$G(SHZ(PSL))_"</td>"
 ..W "<td>"_$J($G(STOPAY(PSL)),2,2)_"</td>"
 ..W "<td>"_$J($G(SDMSH(PSL)),2,2)_"</td>"
 ..W "<td align=""center"">"_$J($G(SDMN(PSL)),2,2)_"</td>"
 ..I $$DPS D
 ...W "<td align=""center"" dir=""LTR"" align=""right"" >"
 ... W $J($G(SDMN(PSL))-$G(SDMSH(PSL)),2,2)
 ...W "</td>"
 .
 I '$$DELIS^W4PRM!$$DPS D TOT
 ;
 W "</div>",!
 K @VRM
 K @$$^W4MAIN("VRMPSL")
 Q
 ;
 ;
HZM ;
 I $$^W4PIZUL(HZM) Q
 ;
 S %SCRN="P1HZ"
 D GA^W4SCREF(%SCRN,$$^W4ORD_"(HZM)")
 I 'MZM,$$DPS Q
 ;
 S BAIT=$$BAIT^W4HZMST(HZM),DIRA=$E($$DIRA^W4HZMST(HZM),1,7)
 I BAIT,DIRA S BAIT=BAIT_"/"_DIRA
 S ADR=BAIT_" "_$$KTV^W4HZMST(HZM)
 ;
 S IR=$$IR^W4HZMST(HZM)
 N DTH S DTH=$$^%L1DC(TRH,3)
 ;
 I $$^W4ISCDLK(LKHN) S NMB=LKHN
 N NMB1 S NMB1=$TR(NMB,"-","")
 I $G(MEPSL),PSL<MEPSL!(PSL>$G(ADPSL)) S OK=0 Q
 ;
 S IR=$$SPA^%L1FRM($G(IR))
 I $$^W4MSL(NMB),IR="" S IR="TAKEAWAY"
 ;;I $$TAKEAWAY(IR) Q
 I IR="eti aia` lz" S IR="aia` lz"
 S PSL=$$PSL^W4HZMST(HZM) Q:'PSL
 ;
 S ST=HZM_"\"_TRH_"\"_IR_"\"_NMB_"\"_ADR_"\"_SHAA_"\"_TSHL_"\"_$S($$DPS:MZM,1:DMSH)
 S:SHAA="" SHAA="00:00"
 S @VRM@(PSL,DT,SHAA,HZM)=ST
 Q
 ;
 ;
TRHZ(PSL,DT,HZM,ST) ;
 D PRS^%L1FRM(ST,"HZM\TRH\IR\NMB\ADR\SHAA\TSHL\DMSH","\")
 W "<tr id=""tr"_HZM_""" >"
  N PSL1 S PSL1=$$PSL1(PSL)
  W "<td>"_PSL1_"</td>"
  W "<td id=""trh"_HZM_""">"_TRH_"</td>"
  W "<td>"_$$H2U^%L1FRM(IR)_"</td>"
  W "<td>"_NMB_"</td>"
  W "<td>"_$$H2U^%L1FRM($$NAME^W4HZMST(HZM))_"</td>"
  I '$$DPS W "<td>"_$$H2U^%L1FRM(ADR)_"</td>"
  W "<td>"_SHAA_"</td>"
  W "<td onClick=""ShowOrder('"_HZM_"',this)"" style=""cursor:pointer"" >"_HZM_"</td>"
  W "<td>"_$J(TSHL,2,2)_"</td>"
  W "<td id=""dmsh"_HZM_""" "
   I $$DPS W "style=""cursor:pointer"" onClick=""FillCash('"_HZM_"')"" "
  W ">"_$J(DMSH,2,2)_"</td>"
  ;
  S SHZ=SHZ+1
  S SHZ(PSL)=$G(SHZ(PSL))+1
  S STOPAY=STOPAY+TSHL
  S STOPAY(PSL)=$G(STOPAY(PSL))+TSHL
  ;
  S SDMSH=SDMSH+DMSH
  S SDMSH(PSL)=$G(SDMSH(PSL))+DMSH
  ;
  N VL S VL=$$VL(HZM)
  S SDMN=SDMN+VL
  S SDMN(PSL)=$G(SDMN(PSL))+VL
  ;
  I '$$EDIT D
  .W "<td align=""center"" >"
  . W $J(VL,2,2)
  .W "</td>"
  .I $$DPS D
  ..W "<td align=""center"" dir=""LTR"" >"
  .. W $J(VL-DMSH,2,2)
  ..W "</td>"
  ;
  I $$EDIT D
  . S:$G(IR)="" IR=" "
  .I '$$DPS D
  .. W "<td id=""prv"_HZM_""" style=""cursor:pointer"" onClick=""PrevPay('"_HZM_"')"" >"
  ..  W $G(@$$^W4GL("W4DMNPRV")@(PSL,IR))
  .. W "</td>"
  .
  .W "<td align=""center"" >"
  . W "<button onClick=""FillCash('"_HZM_"')"">=</button>&nbsp;"
  . W "<input id=""dmn"_HZM_""" type=""text"" value="""_VL_""" size=""7"" onChange=""ChangeDmn('"_HZM_"')"" onClick=""this.select()"" >"
  .W "</td>"
  .I $$DPS D
  ..W "<td align=""center"" >"
  .. W "<input id=""dif"_HZM_""" type=""text"" dir=""LTR"" align=""right"" "
  ..  W " value="""_$J(VL-DMSH,2,2)_""" size=""7"" readonly=""readonly"" "
  .. W "/>"
  ..W "</td>"
  .
  .W "<td align=""center""><input type=""checkbox"" id=""chn"_HZM_""" /></td>"  
  ; 
 W "</tr>"
 Q
 ;
 ;
 ;
MVT ;
 S MVT(1)="onefn"
 S MVT(2)="wiy"
 S MVT(3)="`-k"
 S MVT(4)="dtwd"
 S MVT(5)="yelz"
 Q
 ;
 ;
PRM ;
 Q
 ;
TAKEAWAY(IR) ;
 I $TR(IR," .","")'="TAKEAWAY",$TR(IR," .","")'="TAW" Q 0
 Q 1
 ;
D(NOM) ; 
 ;;S ^D(HZM)=NOM 
 Q 
 ;
VL(HZM) ; 
 Q $G(@$$GL@(HZM)) 
 ;
EDIT(STAM) ; 
 Q $G(%ARG("EDIT")) 
 ;
DIVBUT ; 
 N VIS S VIS="hidden"
 I $$EDIT S VIS="visible"
 W "<table id=""tbhd"" width=""90%"" >",!
  W "<tr>"
   W "<td style=""width:40%"">&nbsp;</td>"
   W "<td>"
    W $$^%W1DICT("EDIT")_"&nbsp;"
    W "<input id=""edit"" type=""checkbox"" "
    I $$EDIT W " checked=""checked"" "
    W " onClick=""ShowPsw()"" >",!
   W "</td>"
   ;
   W "<td>"
    S VRM0=$$^W4MAIN("VRM0") K @VRM0
    F DT=MEDT:1:ADDT D
    .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
    ..I $D(@$$^W4ORD@(HZ,"TM")) S A=$G(^("TM")) D
    ...S PSL=$P(A,"\")  
    ...I PSL D
    ....S @VRM0@(PSL)=""
    ;
    S VRMPSL=$$^W4MAIN("VRMPSL") K @VRMPSL
    S PSL="" F J=1:1 S PSL=$O(@VRM0@(PSL)) Q:PSL=""  D
    .N A S A=$G(@$$^W4GL("P1SL"))
    .S IND=$E($$INV^%L1FRM(A),1,10)
    .S IND=IND_J
    .S @VRMPSL@(IND)=PSL
    ;
    W "<select id=""psl"" onChange=""ChangePsl()"" "
    W ">",!
     W "<option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
     S IND="" F  S IND=$O(@VRMPSL@(IND)) Q:IND=""  D
     .S PSL=$G(^(IND)) Q:PSL=""
     .W "<option value="""_PSL_""" "
     .I $G(%ARG("PSL")),PSL=%ARG("PSL") W " selected=""selected"" "
     .W ">"_$$PSL1(PSL)_"</option>",!
    W "</select>"
   W "</td>" 
   ;
   W "<td style=""width:30%"">&nbsp;</td>"
   W "<td>"
    W "<img src=""w3save.jpg"" id=""saveid"" alt=""Save"" onClick=""Save()"" "
     W "style=""cursor:pointer;visibility:"_VIS_""" ",!
    W " />"
   W "</td>"
   I '$$EDIT D
   .W "<td>"
   . W "<img src=""w3print.jpg"" id=""printid"" alt=""Print"" onClick=""Print()"" "
   . W " />"
   .W "</td>"
   W "<td>"
    W "<img src=""w3close.jpg"" id=""backid"" alt=""Back"" onClick=""Cnc()"" "
    W " />"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q 
 ;
KOT ; 
 W "<span style=""font-size:"_$$^W3FSZ(14)_""">" 
  D 
  .I MEDAT=ADDAT W $$^%W1DICT("TODATE",MEDAT) Q
  .W $$^%W1DICT("FROMDATETODATE",MEDAT_"<>"_ADDAT) Q
 W "</span>",!
 W "<br>",!
 Q 
 ;
SAVE(PRM) ; 
 N HZM,VL,PSL,IR,DPS,TRH
 S ^AA("W4DMN-SAVE","PRM")=PRM
 S HZM=$P(PRM,";") 
 S VL=$P(PRM,";",2) 
 S DPS=$P(PRM,";",3) 
 S TRH=$P(PRM,";",4) 
 I 'HZM Q "NOORDER" 
 I 'TRH Q "NODATE" 
 ;
 I DPS S @$$^W4GL("W4DPS")@(HZM)=VL 
 I 'DPS S @$$^W4GL("W4DMN")@(HZM)=VL 
 S IR=$$IR^W4HZMST(HZM)
 S PSL=$$PSL^W4HZMST(HZM)
 I $L(IR),$L(PSL),'DPS S @$$^W4GL("W4DMNPRV")@(PSL,IR)=VL
 ;
 I DPS,PSL D
 .N DT S DT=$$^%L1DC(TRH,3) 
 .S $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\")=$P($G(@$$^W4GL("W4SLHFK")@(DT,PSL)),"\")+VL
 .;;I $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\",2)'?.P Q
 .;;S $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\",2)=RCVR
 .S $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\",3)=$ZD($H,"24:60")
 Q 1
 ;
DPS(STAM) ; 
 Q $G(%ARG("DPS")) 
 ; 
GL(STAM) ; 
 I $$DPS Q $$^W4GL("W4DPS") 
 Q $$^W4GL("W4DMN") 
 ;
PSL1(PSL)
 N PSL1 S PSL1=""
 ;;I PSL<0 S PSL1="TAKE AWAY"  Q PSL1
 I PSL<0 S PSL1=$$^%W1DICT("CUSTOMERSTAKEAWAY") Q PSL1
 S PSL1=$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))
 Q PSL1
 ;
TOT ; 
 W "<tr id=""trtot"" style=""background-color:yellow;font-weight:bold"" >"
  W "<td colspan="""_COLSPAN_""">"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td>"_$G(SHZ)_"</td>"
  W "<td>"_$J(STOPAY,2,2)_"</td>"
  W "<td>"_$J(SDMSH,2,2)_"</td>"
  ;
  I '$$EDIT D
  .W "<td align=""center"">"_$J(SDMN,2,2)_"</td>"
  .I $$DPS W "<td align=""center"" dir=""LTR"" >"_$J(SDMN-SDMSH,2,2)_"</td>"
  ; 
  I $$EDIT D
  .I '$$DPS W "<td>&nbsp;</td>"
  .W "<td align=""center"">" 
  .W " <input type=""text"" size=""8"" id=""totdmn"" readonly=""readonly"" value="""_$J(SDMN,2,2)_""" />"
  .W "</td>" 
  .
  .I $$DPS D
  ..W "<td align=""center"">" 
  ..W " <input type=""text"" size=""8"" id=""totdif"" readonly=""readonly"" "
  ..  W " dir=""LTR"" align=""right"" value="""_$J(SDMN-SDMSH,2,2)_""" "
  ..W " />"
  ..W "</td>" 
  . 
  .W "<td>&nbsp</td>"
 W "</tr>",!
 Q
 ;
 ;
CLRDT(PRM) ; 
 N MEDAT,ADDAT,MEDT,ADDT,DT,PSL
 S MEDAT=$P(PRM,";"),MEDT=$$^%L1DC(MEDAT,3)
 S ADDAT=$P(PRM,";",2),ADDT=$$^%L1DC(ADDAT,3) 
 S PSL=$P(PRM,";",3)
 F DT=MEDT:1:ADDT D
 .I '$G(PSL) K @$$^W4GL("W4SLHFK")@(DT)
 .I $G(PSL) K @$$^W4GL("W4SLHFK")@(DT,PSL)
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMPCO0
W4DMPCON(FUNC,POST) ; [ 22.08.13 14:34 ] [ 24.05.13 16:00 ] [ 05.11.12 17:28 ]
 N (JB,%ARG,%REM,FUNC,POST,ER,ER1)
 S ER=0,ER1=""
 S MAXDL=800
 ;
 S HEADER="""Content-Type:text/xml"""
 S HEADER1="""SOAPAction:http://shva.co.il/xmlwebservices/"_FUNC_""""
 ;
 S URL="https://www.shva-online.co.il/ash/test/abscheck/absrequest.asmx"
 I $G(@$$^W4PRM@("ASH","MASOF"))'["0962305" D
 .S URL="https://www.shva-online.co.il/ash/abscheck/absrequest.asmx"
 ;
 S FLTO=$$DIR^W4SHV_"shvin"_$$^W4MYDVN ; -- ADDR + PRM
 O FLTO:(NEWVERSION:REWIND)
 U FLTO W "url="_URL C FLTO
 ;
 S FLOUT=$$DIR^W4SHV_"shvout"_$$^W4MYDVN
 C FLOUT:DELETE
 ;
 I $$^%L1ZOS(10,FLOUT)>0 ZSY "/bin/rm "_FLOUT
 ;
 S CMD="curl -s -H "_HEADER_" -H "_HEADER1_" --data-binary @"_POST_" -o "_FLOUT_" -K "_FLTO
 ;;S CMD=CMD_" | xmllint --format - "
 ;
 ZSY CMD
 S ^DMP("CMD")=$ZSY
 ;
 S H=+$H
 S @$$^W4GL("W4DMPCMD")@(H,JB,$O(@$$^W4GL("W4DMPCMD")@(H,JB,9999999),-1)+1)=$E(CMD,1,MAXDL)
 S ^DMP("CMD1")=$ZSY
 I $ZSY S ER=-$ZSY,ER1="CONNECTIONERROR" G ECON
 ;
 F JJ=1:1:10  Q:$$^%L1ZOS(10,FLOUT)'<0  H 1
 I $$^%L1ZOS(10,FLOUT)<0 S ER=-.2,ER1="NOANSWER" G ECON
 ;
 S CMD1="/bin/cat "_FLOUT_"|/usr/bin/xmllint --format --encode cp862 --output "_FLOUT_" -"
 ZSY CMD1
 H 1
 I $ZSY S ER=-$ZSY,ER1=" "_ER_"CONNECTIONERROR" G ECON
 ;
 D ^%L1TS
 S MYDVN=$$^W4MYDVN
 D GL
 K @GL S I=0
 ;
 O FLOUT:(REWIND:READONLY)
 F  D  Q:$ZEOF
 .U FLOUT R A
 .S I=I+1,@GL@(I)=$TR($E(A,1,MAXDL),TSS,TS0)
 .I $L(A)>MAXDL D
 ..S @GL@(I)=@GL@(I)_">>>"
 ..N J F J=1:1 D  Q:$L(A)<((J+1)*MAXDL+1)
 ...S I=I+1,@GL@(I)=$TR($E(A,J*MAXDL+1,(J+1)*MAXDL),TSS,TS0)
 ...I $L(A)>((J+1)*MAXDL) S @GL@(I)=@GL@(I)_">>>"
 ...;
 C FLOUT
ECON Q
 ;
GL S GL=$$^W4MAIN("TMPDMP")
 Q

W4DMPCON
W4DMPCON(FUNC,POST) ; [ 09.12.20 08:19 ] [ 13.09.16 12:05 ] [ 22.08.13 14:33 ] 
 N (JB,%ARG,%REM,FUNC,POST,ER,ER1)
 S ER=0,ER1=""
 S MAXDL=800
 ;
 S HEADER="""Content-Type:text/xml"""
 S HEADER1="""SOAPAction:http://shva.co.il/xmlwebservices/"_FUNC_""""
 ;
 S URL="https://www.shva-online.co.il/ash/test/abscheck/absrequest.asmx"
 I $G(@$$^W4PRM@("ASH","MASOF"))'["0962305" D
 .S URL="https://www.shva-online.co.il/ash/abscheck/absrequest.asmx"
 ;
 S MYDVN=$$^W4MYDVN
 S FLTO=$$DIR^W4SHV_"shvin"_MYDVN ; -- ADDR + PRM
 O FLTO:(NEWVERSION:REWIND)
 U FLTO W "url="_URL C FLTO
 ;
 S FLOUT=$$DIR^W4SHV_"shvout"_MYDVN
 C FLOUT:DELETE
 ;
 I $$^%L1ZOS(10,FLOUT)>0 ZSY "/bin/rm "_FLOUT
 ;
 S CMD="curl -s "_$$^W4IHTPPS_" -H "_HEADER_" -H "_HEADER1_" --data-binary @"_POST_" -o "_FLOUT_" -K "_FLTO
 ;;S CMD=CMD_" | xmllint --format - "
 ;
 ZSY CMD
 S ^DMP("CMD")=$ZSY
 ;
 S H=+$H
 N IND S IND=$O(@$$^W4GL("W4DMPCMD")@(H,JB,9999999),-1)+1
 S @$$^W4GL("W4DMPCMD")@(H,JB,IND,"CMD")=$E(CMD,1,MAXDL)
 S @$$^W4GL("W4DMPCMD")@(H,JB,IND,"CMD","ZSY")=$ZSY
 I $ZSY S ER=-$ZSY,ER1="CONNECTIONERROR" G ECON
 ;
 F JJ=1:1:10  Q:$$^%L1ZOS(10,FLOUT)'<0  H 1
 I $$^%L1ZOS(10,FLOUT)<0 S ER=-.2,ER1="NOANSWER" G ECON
 ;
 S CMD1="/bin/cat "_FLOUT_"|/usr/bin/xmllint --format --encode cp862 --output "_FLOUT_" -"
 ZSY CMD1
 S @$$^W4GL("W4DMPCMD")@(H,JB,IND,"CMD1")=$E(CMD1,1,MAXDL)
 S @$$^W4GL("W4DMPCMD")@(H,JB,IND,"CMD1","ZSY")=$ZSY
 H 1
 I $ZSY S ER=-$ZSY,ER1=" "_ER_"CONNECTIONERROR" G ECON
 ;
 D ^%L1TS
 D GL
 K @GL S I=0
 ;
 O FLOUT:(REWIND:READONLY)
 F  D  Q:$ZEOF
 .U FLOUT R A
 .S I=I+1,@GL@(I)=$TR($E(A,1,MAXDL),TSS,TS0)
 .I $L(A)>MAXDL D
 ..S @GL@(I)=@GL@(I)_">>>"
 ..N J F J=1:1 D  Q:$L(A)<((J+1)*MAXDL+1)
 ...S I=I+1,@GL@(I)=$TR($E(A,J*MAXDL+1,(J+1)*MAXDL),TSS,TS0)
 ...I $L(A)>((J+1)*MAXDL) S @GL@(I)=@GL@(I)_">>>"
 ...;
 C FLOUT
ECON Q
 ;
GL S GL=$$^W4MAIN("TMPDMP")
 Q
 
 

W4DMSD
W4DMSD ; -- DOH MISSADOT LEFI SUGEY TASHLUM ; [ 03.11.20 15:02 ] [ 21.05.20 14:41 ] [ 20.05.20 17:55 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")=$G(%ARG("REPN"))
 Q
 ;
DATH I DATH<METRHT!(DATH>ADTRHT) S OK=0 Q
 S TRHT=$$^%L1DC(DATH,1)
 Q
 ;
HZM ;
 D GA^W4SCREF("P1HZMS",$$^W4ORD_"(HZM)")
 I $$^W4MSD(NMB) S OK=0 Q
 S MSD=$$MSDHZM^W4HZMST(HZM) I 'MSD S OK=0 Q
 I MSD<MEMSD!(MSD>ADMSD) S OK=0 Q
 I $$MSDR^W4PRM,'$D(^[$$^W3MAIN]W3MSDR($$MSDR^W4PRM,MSD)) S OK=0 Q
 ;
 N TSHL1,KF,KF2,CA1,MZM1,ASR1,AH1,AH2,AM1,AM2,TOPAY,CA2,MZM2,ASR2,HNQ
 S TSHL1=TSHL-DMSH
 S TSHL2=TSHL1
 S TSHL3=TSHL
 S HNQ=0
 I $G(@$$^W4ORD@(HZM,"MYDISC")),TSHL'<0 D
 .S HNQ=HNH
 .S TSHL2=TSHL1+HNQ
 .S TSHL3=TSHL+HNQ
 ;
 S KF=1
 I TSHL3 S KF=$J(TSHL2/TSHL3,5,5)
 S CA1=$J(CA*KF,2,2)
 S MZM1=$J(MZM*KF,2,2)
 S ASR1=$J(ASR*KF,2,2)
 S AH1=$$AMALA^W3R(MSD)
 S AH2=$$AMALACA^W3R(MSD)
 S AM1=$J(TSHL2*AH1/100,2,2)
 S AM2=$J(TSHL2*AH2/100,2,2)
 ;
 I $G(@$$^W4ORD@(HZM,"MYDISC")),TSHL<0 S OK=0 Q
 ;
 S TOPAY=TSHL2-AM1-AM2
 S x1=CA1,x2=MZM1,x3=ASR1,x4=$J(TSHL2,2,2),x5=AM1,x6=AM2
 S KF2=1 I TSHL2 S KF2=$J(TSHL2-AM1/TSHL2,5,5)
 S CA2=$J(CA1*KF2-AM2,2,2)
 S MZM2=$J(MZM1*KF2,2,2)
 S ASR2=$J(ASR*KF2,2,2)
 S x7=CA2
 S x8=MZM2
 S x9=ASR2
 S x10=HNQ
 S x11=$J(TOPAY,2,2)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMSD0
W4DMSD ; -- DOH MISSADOT LEFI SUGEY TASHLUM ; [ 03.03.20 16:30 ] [ 04.02.20 05:12 ] [ 29.01.20 07:08 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")=$G(%ARG("REPN"))
 Q
 ;
DATH I DATH<METRHT!(DATH>ADTRHT) S OK=0 Q
 S TRHT=$$^%L1DC(DATH,1)
 Q
 ;
HZM ;
 D GA^W4SCREF("P1HZMS",$$^W4ORD_"(HZM)")
 I $$^W4MSD(NMB) S OK=0 Q
 S MSD=$$MSDHZM^W4HZMST(HZM) I 'MSD S OK=0 Q
 I MSD<MEMSD!(MSD>ADMSD) S OK=0 Q
 I $$MSDR^W4PRM=6,MSD<6000 S OK=0
 ;
 N TSHL1,KF,KF2,CA1,MZM1,ASR1,AH1,AH2,AM1,AM2,TOPAY,CA2,MZM2,ASR2,HNQ
 S TSHL1=TSHL-DMSH
 S KF=1
 I TSHL S KF=$J(TSHL1/TSHL,5,5)
 S CA1=$J(CA*KF,2,2)
 S MZM1=$J(MZM*KF,2,2)
 S ASR1=$J(ASR*KF,2,2)
 S AH1=$$AMALA^W3R(MSD)
 S AH2=$$AMALACA^W3R(MSD)
 S AM1=$J(TSHL1*AH1/100,2,2)
 S AM2=$J(TSHL1*AH2/100,2,2)
 S HNQ=0
 I $G(@$$^W4ORD@(HZM,"MYDISC")) D
 .I TSHL<0 S HNQ=TSHL1-AM1-AM2 Q
 .S HNQ=HNH
 ;
 S TOPAY=TSHL1-AM1-AM2-HNQ
 S x1=CA1,x2=MZM1,x3=ASR1,x4=$J(TSHL1,2,2),x5=AM1,x6=AM2
 S KF2=1 I TSHL1 S KF2=$J(TSHL1-AM1/TSHL1,5,5)
 S CA2=$J(CA1*KF2-AM2,2,2)
 S MZM2=$J(MZM1*KF2,2,2)
 S ASR2=$J(ASR*KF2,2,2)
 S x7=CA2
 S x8=MZM2
 S x9=ASR2
 S x10=HNQ
 S x11=$J(TOPAY,2,2)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMSDL
W4DMSDL ; -- DOH MISSADOT LEFI LAKOHOT ; [ 07.05.20 10:59 ] [ 04.05.20 13:23 ] [ 04.03.20 10:31 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")=$G(%ARG("REPN"))
 Q
 ;
DATH I DATH<METRHT!(DATH>ADTRHT) S OK=0 Q
 S TRHT=$$^%L1DC(DATH,1)
 Q
 ;
HZM ;
 D GA^W4SCREF("P1HZMS",$$^W4ORD_"(HZM)")
 I $$^W4MSD(NMB) S OK=0 Q
 S MSD=$$MSDHZM^W4HZMST(HZM) I 'MSD S OK=0 Q
 I MSD<MEMSD!(MSD>ADMSD) S OK=0 Q
 I $$MSDR^W4PRM=6,MSD<6000 S OK=0
 ;
 N TSHL1,KF,KF2,AH1,AH2,AM1,AM2,TOPAY,HNQ
 S LKH=NMB ;$$NMB^W4HZMST(HZM)
 S LKH1=NAME ; $$NAME^W4HZMST(HZM)
 S TSHL1=TSHL-DMSH
 S KF=1
 I TSHL S KF=$J(TSHL1/TSHL,5,5)
 S AH1=$$AMALA^W3R(MSD)
 S AH2=$$AMALACA^W3R(MSD)
 S AM1=$J(TSHL1*AH1/100,2,2)
 S AM2=$J(TSHL1*AH2/100,2,2)
 S HNQ=0
 I $G(@$$^W4ORD@(HZM,"MYDISC")),TSHL'<0 D
 .S HNQ=HNH
 ;
 I $G(@$$^W4ORD@(HZM,"MYDISC")),TSHL<0 S OK=0 Q
 ;
 S TOPAY=TSHL1-AM1-AM2+HNQ
 S x1=TSHL1
 S x2=AM1
 S x3=AM2
 S x4=$J(HNQ,2,2)
 S x5=TOPAY
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMSH
W4DMSH(DLV) ; [ 13.06.23 16:49 ] [ 27.07.17 13:47 ] [ 
 N (JB,%ARG,DLV) ;
 S HZM=$$GETP^%W1PRM("HZM")
 S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSD(NMB) Q DLV
 I $$^W4CLOSE(HZM) Q DLV
 I $$HZMLAK^W3HZMST(JB)["W" Q DLV
 ;
 I '$D(@$$^W4TMPORD) Q DLV
 ;
 ;;Q $$DMSH^W3HZMST(JB) ; -- 13.06.23
 Q $$DMSHMSD^W3HZMST(JB)
 
 
 
 
 
 
 
 

W4DMSPEC
W4DMSPEC ; [ 12.11.24 18:40 ] [ 19.06.22 09:33 ] [ 23.04.18 13:48 ] 
 N (JB,%ARG,%REM) S P1DZ=$$^W4DZ
 S JB=+$G(JB)
 D KILL^%W3DEB("W4DMSPEC")
 D PUT^%W3DEB("W4DMSPEC","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""TblDms"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width="""_$S($$^W4TABLET=2:100,1:80)_"%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""8%"">"_$$^%W1DICT("NPP")_"</th>"
 W "  <th width=""12%"">"_$$^%W1DICT("CUSTCODE")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 W "  <th width=""20%"">"_$$^%W1DICT("DLVPAY")_"</th>"
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 N I,N
 S N="" F I=1:1 S N=$O(@$$^W4GL("W4DMSPEC")@(N)) Q:N=""  D
 .S @GLTMP@(N)=$G(@$$^W4GL("W4DMSPEC")@(N))
 .S @GLTMP@(N,"I")=I
 ;
 S N=$O(@GLTMP@(""))
 W "<tr id=""trid"_1_""">" W $$LINE("1;"_N) W "</tr>",!
 ;
 F I=2:1 S N=$O(@GLTMP@(N)) Q:N=""  D
 .W "<tr id=""trid"_I_""">" W $$LINE(I_";"_N) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVEND(STAM) ;
 N N,PARHR,NOK
 D GLTMP
 S NOK=0
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D  Q:NOK
 .S VL=$G(@GLTMP@(N)) I '$D(^(N,"DEL")),'$$ISNUM^%L1FRM(VL) S NOK=$G(@GLTMP@(N,"I"))
 I NOK Q NOK
 ;
 K @$$^W4GL("W4DMSPEC")
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .S VL=$G(@GLTMP@(N))
 .I $D(@GLTMP@(N,"DEL")) Q
 .S @$$^W4GL("W4DMSPEC")@(N)=VL
 ;
 K @GLTMP
 ;
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
 ;
LINE(PRM) ;
 N I,LKH S I=$P(PRM,";")
 S LKH=$P(PRM,";",2)
 N GLTMP D GLTMP
 N ST
 S ST=""
 S ST=ST_" <td align=""center"" >"
  ;
 S ST=ST_"  <span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
 S ST=ST_"   onClick=""NewLine('"_I_"')""> + "
  S ST=ST_"  </span><br />"
  S ST=ST_"  <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
  S ST=ST_"   onClick=""DeleteRow('"_I_"')"" > - </span>"
  S ST=ST_" </td>"
  ;
  S ST=ST_" <td style=""text-align:center"" width=""25%"">"
   S ST=ST_$$VVLKH(I_";"_LKH)
  S ST=ST_"  </td>"
  ;
  N LKHAME S LKHNAME=$$LKH^W4L(LKH)
  S ST=ST_"  <td "_$$^%W1ALIGN_" id=""lkhnm"_I_""" >"
   S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(LKHNAME)
  S ST=ST_"  </td>"
  ;
  S ST=ST_"  <td align=""center"" >"
   S ST=ST_"<input type=""text"" size=""4"" maxlength=""4"" id=""dms"_I_""" onClick=""this.select()"" "
   N DMS S DMS=""
   I $G(LKH) S DMS=$G(@GLTMP@(LKH))
   S ST=ST_" value="""_DMS_""" "
   S ST=ST_" onKeyUp=""SetDms('lkh"_I_"',this)"" "
  S ST=ST_"  </td>"
 Q ST
 ;
 ;
SETLKH(PRM)
 D PUT^%W3DEB("W4DMSPEC-SETLKH","PRM=PRM")
 N LKH,I,VL
 S LKH=$P(PRM,";")
 I LKH="" Q "CODENOTEXIST"
 S I=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 N GLTMP D GLTMP
 ;
 I $G(@GLTMP@(LKH,"I")),^("I")'=I Q "SAMECODE"
 I '$D(@$$^W4GL("LKH")@(LKH)) Q "CODENOTEXIST"
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .I $G(^(N,"I"))=I,N'=LKH K @GLTMP@(N)
 S @GLTMP@(LKH)=VL
 S @GLTMP@(LKH,"I")=I
 N LKH1 S LKH1=$$LKH^W4L(LKH)
 Q "OK~"_$$H2U^%L1FRM(LKH1)
 ;
SETDMS(PRM)
 D PUT^%W3DEB("W4DMSPEC-SETDMS","PRM=PRM")
 N LKH,I,VL
 S LKH=$P(PRM,";")
 I LKH="" Q "CODENOTEXIST"
 S VL=$P(PRM,";",2)
 N GLTMP D GLTMP
 I '$D(@$$^W4GL("LKH")@(LKH)) Q "CODENOTEXIST"
 I '$$ISNUM^%L1FRM(VL) Q "NUMBERONLY"
 S @GLTMP@(LKH)=VL
 Q "OK"
 ;
DELROW(LKH) ;
 Q:$G(LKH)=""
 N GLTMP D GLTMP
 I '$D(@GLTMP@(LKH,"DEL")) S @GLTMP@(LKH,"DEL")=1 Q
 K @GLTMP@(LKH,"DEL")
 Q
 ;
VVLKH(PRM) ;
 N I,VL,IDCD,IDNM
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S IDCD="lkh"_I
 S IDNM="lkhnm"_I
 S PROC="SetCust(\'"_I_"\',\'"_IDCD_"\',\'"_IDNM_"\')"
 N FIND S FIND="Find('"_I_"','"_IDCD_"','"_IDNM_"','"_PROC_"')"
 N A
 S A="<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"id=""lkh"_I_""" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img id=""filter"" src=""w3filter.jpg"" "
 S A=A_" onClick="""_FIND_""">"
 Q A
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMZM
W4DMZM ; -- DOH LEFI MEZUMAN ; [ 29.09.25 10:19 ] [ 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")="W4DMZM"
 Q
 ;
DATH I DATH<METRHT!(DATH>ADTRHT) S OK=0 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DATH,8)) S OK=0 Q
 ;
 S TRHT=$$^%L1DC(DATH,1)
 Q
 ;
 ;
HZM D GA^W4SCREF("P1HZMS",$$^W4ORD_"("_HZM_")")
 I '$$MZM^W4HZMST(HZM) S OK=0 Q
 S SUGHZ=$S($$HZM^W4MSL(HZM):2,1:1)
 S SUGHZ1=""
 I SUGHZ S SUGHZ1=$G(@$$^W4GL("W4SUGHZ")@(SUGHZ))
 S MKR=$$MKRDLV^W4HZMST(HZM)
 S MKR1="" I MKR S MKR1=$G(@$$^W4GL("W3MKR")@(MKR))
 S PSL1=""
 I PSL S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 S x1=TSHL,x2=MZM
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DMZPR
W4DMZPR(MEDAT,ADDAT) ; DOCH HAZMANOT; [ 19.03.21 11:39 ] [ 29.11.17 11:10 ] [ 27.11.17 13:41 ] 
 N (%ARG,JB,%REM,MEDAT,ADDAT,%REPN)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D ^W4IN
 D VRM K @VRM
 N D1,D2 ;
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 N NN
 F NN=D1:1:D2 I $D(@$$^W4REF@(NN)) D
 .N N1 S N1="" F  S N1=$O(@$$^W4REF@(NN,N1)) Q:N1=""  D
 ..S HZM=N1,SSUM=0 N MZ,PAR
 ..S %SCRN=HZSCR D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 ..Q:$$^W4MSL(NMB)
 ..I '$G(@$$^W4PRM@("MLZ")) K @$$^W4GL("P1MLZ")@(HZM) D PLU1
 ..
 ..S MZ="" F  S MZ=$O(@$$^W4GL("P1MLZ")@(HZM,MZ)) Q:MZ=""  D
 ...S PAR="" F  S PAR=$O(@$$^W4GL("P1MLZ")@(HZM,MZ,PAR)) Q:PAR=""  D
 ....N COLP,SUMP,A
 ....S COLP=$P($G(^(PAR)),"*"),SUMP=$P($G(^(PAR)),"*",2)
 ....S HNHP=$P($G(^(PAR)),"*",4)
 ....S SUGP=+$$SUG^W4P(PAR)
 ....S A=$G(@VRM@(MZ,SUGP,PAR))
 ....S $P(A,"*",1)=$P(A,"*",1)+COLP
 ....I $E(PAR,1,2)'="A-" S $P(A,"*",2)=$P(A,"*",2)+HNHP
 ....S $P(A,"*",3)=$P(A,"*",3)+SUMP
 ....S @VRM@(MZ,SUGP,PAR)=A
 ;
 K %L1PC
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4MZPR"
 I $$^W4MTAW S %REPN="W4CSPR"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4dmzpr.jsp?JB="_JB)
 Q
 ;
PLU1 D PLU1^W4HZMPC
 Q
 ;
PAR N A S A=$G(@GLOB)
 S x1=$P(A,"*",1),x2=$P(A,"*",2),x3=$P(A,"*",3)-x2
 S PAR1=$$SHEM^W4P(PAR)
 Q
 ;
VRM ;
 D ^%W1PCVRM
 Q
 
 
 
 

W4DOC
W4DOC ; [ 14.11.24 09:17 ] [ 24.12.23 10:06 ] [ 22.06.23 11:31 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%W1ARG S W4DOC=""
 S NUMBER=$G(%ARG("NUMBER"))
 I $G(SPK) D PUT^%W1PRM("SPK",SPK) D PUT^%W1PRM("LHBCUR",NUMBER_";"_SPK)
 ;
 I $TR($G(%ARG("NUMBER")),"0123456789","")="HZ",$G(LKH)="",$G(%ARG("SPK")),NUMBER D
 .S LKH=%ARG("SPK"),%ARG("LKH")=%ARG("SPK")
 .D PUT^%W1PRM("LKH",LKH)
 .D PUT^%W1PRM("NUMBER",+NUMBER)
 .D KILL^%W1PRM("SPK")
 .K %ARG("SPK")
 ;
 S NOM=$$NOM(NUMBER) ; --> NOM IN ^W4DOC
 S NUMBER=+NUMBER
 ;
 S DAT=$$DAT(NOM)
 S LKH=$$LKH(NOM)
 ;
 S DOC=$$GETDOC(NOM)
 D PUT^%W1PRM("DOC",DOC)
 ;
 D GLTMP S GL=$$GL($G(%ARG("NUMBER")))
 I $G(NUMBER) D PUT^%W1PRM("NUMBER",+NUMBER)
 ;
 I NOM,$D(@GL@(NOM))=11 D  ; --- DOC NUMBER --> GLTMP
 .K @GLTMP
 .M @GLTMP=@GL@(NOM)
 ;
 D KOTHSB(NUMBER,LKH,DAT,DOC)
 ;
 W "<br />",!
 ;
 I $$MTB^W4LKH D SELMTB
 ;
 D DAF1
 ;
 I $G(%ARG("NEWDOC")) K %ARG("NUMBER") S NOM=0,NUMBER=0
 ;
 W "<br/>"
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   I '$$HMKI^W4LHB D
   .W "<td>"
   .  N SBM S SBM=$S($$INP($G(%ARG("NUMBER")))!$$HZ!$$HZMH:"SUBMIT",1:"SUBMITANDPRINT")
   .  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT(SBM),"Submit('"_NOM_"')","color:green",",,,100")
   .W "</td>"
   ;
   I $$HMKI^W4LHB D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Pay",$$^%W1DICT("PAY"),"Pay('"_LKH_"')","color:green",",,,100")
   .W "</td>"
   ;
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 I $$PRCCSR D DIVPRCCSR
 Q
 ;
 ;
KOTHSB(NMB,LKH,DAT,DOC) ;
 D PUT^%W3DEB("W4DOC-KOTHSB","NMB=NMB&LKH=LKH&DAT=DAT&DOC=DOC")
 D ^W4KOTHSB(NMB,LKH,DAT,DOC)
 ;
 I $$INP,$$IHBTM(NMB) D LISTTM("GLTMP") ; --- RESHIMAT TM LE SIMUN
 ;
 I DOC="IHB"!(DOC="ITM")!(DOC="HBW")!(DOC="TM"),$G(%ARG("VD"))'="TMZ" D
 .W "<table dir="""_$$^%W1DIR_""">",!
 .D TBORD(DOC,NOM,"HZ")
 .I DOC="HBW"!(DOC="TM") D TBORD(DOC,NOM,"HZMH")
 .W "</table>",!
 Q
 ;
 ;
TBORD(DOC,NOM,DOCFROM) ;
 N ORG,SUG
 I $E(DOC)="I",'$G(SPK) Q
 I $E(DOC)="I" S ORG=SPK_"_I",SUG="I"
 E  S ORG=LKH,SUG="O"
 ;
 W "<tr>",!
   W "<td>",!
    N DOCNAME S DOCNAME="ORDER"
    I DOCFROM="HZMH" S DOCNAME="PRICEOFFER"
    W $$^%W1DICT(DOCNAME)
   W "</td>",!
   ;
   W "<td>"
    N IDORD S IDORD="order"
    I DOCFROM="HZMH" S IDORD="hzmh"
    W "<input id="""_IDORD_""" type=""text"" size=""5"" maxlength=""8"" "
      N VLORD S VLORD=+$$ORD(DOCFROM,ORG,NOM) S:VLORD=0 VLORD=""
      W " value="""_VLORD_""">",!
   W "</td>",!
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("FindOrd",$$^%W1DICT("FIND"),"FindOrd('"_DOCFROM_"','"_ORG_"','"_DAT_"')","color:black",",,,70")
   W "</td>",!
   ;
   W "<td>"
     D
     .N PROC S PROC="ShowOrd('"
     .D ROUNDBUT^%W1JS("ShowOrd",$$^%W1DICT("SHOW"),PROC_ORG_"','"_DOCFROM_"')")
   W "</td>",!
   ;
   N DOC S DOC=$$DOC($G(%ARG("NUMBER")))
   ;
   I $L(DOC) D
   .I SUG="I",$$IHBTM(NMB) Q
   .I SUG="I",$D(@$$^W4GL("W4INP")@(ORG,DOC,+$G(%ARG("NUMBER")),1)) Q
   .I SUG="O",$D(@$$^W4GL("W4ORD")@(+$G(%ARG("NUMBER")),1)) Q  ;-- ?????
   .W "<td>"
   .  N COPYTO S COPYTO="COPY2INVOICE"
   .  I $G(DOC)="ITM" S COPYTO="COPY2DLVDOC"
   .  D ROUNDBUT^%W1JS("Copy2Invoice",$$^%W1DICT(COPYTO),"CopyOrd2Invoice('"_DOCFROM_"','"_ORG_"')","color:darkblue",",,,140")
   .W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
ORD(DOCFROM,ORG,NOM) ;
 N SUG S SUG="O"
 I ORG["_I" S ORG=$P(ORG,"_I"),SUG="I"
 D GLTMP
 ;
 N TORD S TORD=$G(@GLTMP@("ORD"))
 I TORD,TORD["HZMH",DOCFROM="HZMH" Q TORD
 I TORD,TORD["HZMH",DOCFROM'="HZMH" Q ""
 I TORD,TORD'["HZMH",DOCFROM="HZMH" Q ""
 I TORD Q TORD
 ;
 I '$G(NOM) Q ""
 I SUG="I" Q $G(@$$^W4GL("W4INP")@(ORG,"IHB",+NOM,"ORD"))
 ;
 N ORD S ORD=$G(@$$^W4GL("W4DOC")@(+NOM,"ORD"))
 I DOCFROM="HZ",ORD'["HZMH" Q ORD
 Q $S(ORD:+ORD,1:"")
 ;
 ;
LISTTM(GL) ;
 N MZ,MT,N,ND
 W "<table width=""90%"" style=""font-weight:bold"">",!
 W " <tr><td "_$$^%W1ALIGN_" >"
 N VDTM F VDTM="ITM","ITZ" D
 .S N="" F  S N=$O(@GL@(VDTM,N)) Q:N=""  D
 ..S ND=N S:N<0 ND=-N
 ..I N<0!$$IHBZ S MZ(ND)="" Q
 ..S MT(ND)=""
 ;
 I $D(MT) D
 .W $$^%W1DICT("DLVDOCLIST")_" : "
 .S N="" F  S N=$O(MT(N)) Q:N=""  D
 ..W "<span "
 ..I $G(%ARG("SPK")) D
 ...W "style=""cursor:pointer"" "
 ...W "onClick=""ShowSupplInvoice('"_%ARG("SPK")_"','"_N_"ITM','ifr','ITM','')"" >"
 ..W N_"</span>" I $O(MT(N))'="" W ","
 .W " </td></tr>",!
 .W " <tr><td "_$$^%W1ALIGN_" >",!
 ;
 I $D(MZ) D
 .W $$^%W1DICT("DLVBACKDOCLIST")_" : "
 .S N="" F  S N=$O(MZ(N)) Q:N=""  D
 ..W N I $O(MZ(N))'="" W ","
 .W " </td></tr>",!
 W "</table>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td "_$$LTR
 I $$IHBZ($G(NOM))!($$ITZ($G(NOM))) W " style=""color:red"" "
 Q
LTR(STAM) ;
 Q " dir=""LTR"" align=""right"" "
 ;
TDN W "<td>&nbsp;</td>",!
 Q
 ;
COLST(NOM)
 S NOM=$G(NOM)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL,COL,N S COL=0
 ;
 I $$GETTMP(NOM) D  Q COL
 .S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  S COL=COL+1
 ;
 Q $O(@GL@(NOM,99999),-1)
 ;
 ;
SHOWPRMAM ;
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 W " <tr>"
 W "  <td>"
 W "  "_$$^%W1DICT("PRICENOTINCLUDEDTAX")_"&nbsp;"
 W "   <input type=""radio"" name=""prmam"" value=""0"" "_$S('$$PRMAM(NOM):" checked=""checked""",1:"")_" "_$S($G(NOM):" disabled=""disabled""",1:"")_" onClick=""OnChangePrMam()"""_" >"
 W "  </td>",!
 I $$GETP^%W1PRM("PRKUP") D
 .W "  <td>"
 .W "  "_$$^%W1DICT("PRICEINCLUDEDTAX")_"&nbsp;"
 .W "   <input type=""radio"" name=""prmam"" value=""1"" "_$S($$PRMAM(NOM):" checked=""checked""",1:"")_" "_$S($G(NOM):" disabled=""disabled""",1:"")_" onClick=""OnChangePrMam()"""_" >"
 .W "  </td>"
 .W "  <td style=""font-weight:bold"">"
 .W "  "_$$^%W1DICT("CSRITEMS")
 .W "  </td>"
 I $$GETP^%W1PRM("PRKUP")=0 D
 .W "  <td style=""font-weight:bold"">"
 .W "  "_$$^%W1DICT("MLYITEMS")
 .W "  </td>"
 ;
 W " </tr>",!
 W "</table>",!
 Q
 ;
DAF1 ;
  D DAFBODY(NOM)
  ;
  D TOT(NOM)
  ;
  D SHOWTOT(NOM)
ET ;
  W "</table>",!
  ;
  I '$$HMKI^W4LHB D
  .W "<br /><br />"
  .W "<div id=""divcmnt"" align=""center"" dir="""_$$^%W1DIR_""">",!
  . N EDITCMNT S EDITCMNT=""
  . D DIVCMNT^W4LCBCR(NOM,0,$$CMNT(NOM),$$PRV(NOM),0)
  .W "</div>",!
 Q
 ;
 ;
DAFBODY(NOM) ;
 N (JB,%ARG,LKH,DAT,NOM,NUMBER)
 ;
 I '$D(NOM) S NOM=0
 ;
 I $$MLYPRT D
 .W "<table dir="""_$$^%W1DIR_""">",!
 . W "<tr>"
 .  W "<td style=""color:red;font-weight:bold"">"
 .   W $$^%W1DICT("FORITEMSHOWPRESSKEY")
 .  W "</td>",!
 . W "</tr>",!
 .W "</table>",!
 ;
 I '$$INP D
 .D SHOWPRMAM
 .D PUT^%W1PRM("PRMAM",$$PRMAM(NOM))
 ;
 I $$ERUA^W3PRM,$$DOC(NOM)="HZMH" D ERUADET
 ;
 W "<br /><br />",!
 ;
 W "<table id=""TblInvcBd"" dir="""_$$^%W1DIR_""" width=""99%"" border=""1"" "
  W "cellspacing=""0"" cellpadding=""3px"" "
  W "style=""position:relative"" "
 W ">",!
  ;
  W "<tr>"
  S WD=18 ;;I $$NOTEDIT(NOM) S WD=14
  W " <th width="""_WD_"%"">"_$$^%W1DICT("CODE")_"</th>",!
  W " <th width=""23%"">"_$$^%W1DICT("ITEMNAME")_"</th>",!
  ;
  I $$PRMSER D
  .W " <th>"_$$^%W1DICT("SERIAL")_"</th>",!
  I $$MLYPRT D
  .W " <th>"_$$^%W1DICT("EM")_"</th>",!
  ;
  I $$COLOR D
  .W " <th>"_$$^%W1DICT("COLOR")_"</th>",!
  I $$SIZE D
  .W " <th>"_$$^%W1DICT("SIZE")_"</th>",!
  ;
  I '$$^W4MLQNMH D
  .W " <th>"_$$^%W1DICT("PRICE")_"</th>",!
  .W " <th>"_$$^%W1DICT("QUANTITY")_"</th>",!
  ;
  I $$^W4MLQNMH D
  .W " <th>"_$$^%W1DICT("QUANTITY")_"</th>",!
  .W " <th>"_$$^%W1DICT("PRICE")_"</th>",!
  ;
  I '$$NODISCST D
  .W " <th>"_$$^%W1DICT("DISCPERCENT")_"</th>",!
  ;
  W " <th>"_$$^%W1DICT("BEFORETAX")_"</th>",!
  W " <th width=""8%"">"_$$^%W1DICT("AFTERTAX")_"</th>",!
  ;
  I $$CMNST^W4LKH D
  .W " <th>"_$$^%W1DICT("COMMENT")_"</th>",!
  ;
  W "</tr>",!
  ;
  S COLST=$$COLST(NOM)
  I COLST<5 S COLST=5
  ;
  S (SUMBF,SUMAF)=0
  ;
  I $G(NOM) F I=1:1:COLST+1 D LINE(NOM,I)
  ;
  I '$G(NOM) D
  .N I,I1,N1 S I=0,N1=""
  .N GLTMP D GLTMP
  .N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  I N S I=I+1,N1=N D LINE(0,N)
  .I I<5 F I1=I+1:1:5 S N1=N1+1 D LINE(0,N1)
  Q
 ;
 ;
ONKEYPRESS ;
 S ONKEYPRESS=" onKeyPress=""OnKeyPress(event,'"_I_"','"_NOM_"')"" "
 Q
 ;
READONLY(NOM)
 S NOM=$G(NOM)
 N TX S TX=""
 I $$NOTEDIT(NOM) S TX=" readonly=""readonly"" "
 ;
 S TX=TX_" style=""color:"_$S($$HBZ(NOM)!$$ITZ(NOM)!$$IHBZ(NOM):"red",1:"black")
 I $$NOTEDIT(NOM) S TX=TX_";background-color:#eaeaea"
 S TX=TX_""""
 Q TX
 ;
NOTEDIT(NOM) ;
 N NOTEDIT S NOTEDIT=$$IHBTM(NOM)
 N GLTMP,MAXLINE
 D GLTMP S MAXLINE=$O(@GLTMP@(99999),-1)
 I NOTEDIT,$G(I),I>MAXLINE Q 0
 Q NOTEDIT
 ;
 ;
LINE(NOM,I) ;
 N ONKEYPRESS D ONKEYPRESS
 ;
 W "<tr id=""trid"_I_""" >"
 N PRM S PRM=NOM_";"_I
 ;
 W "<td align=""center"">" W $$INPCODE(PRM) W "</td>",!
 ;
 W "<td align=""center"">"_$$INPNAME(PRM)_"</td>",!
 ;
 I $$PRMSER D
 .W " <td align=""center"">"_$$INPSERNUM(PRM)_"</td>",!
 ;
 I $$MLYPRT D
 .W " <td align=""center"" >"
 . W $$INPEM(PRM)
 .W "</td>",!
 ;
 I $$COLOR D
 .W " <td>"_$$INPCOLOR(PRM)_"</td>",!
 I $$SIZE D
 .W " <td>"_$$INPSIZE(PRM)_"</td>",!
 ;
 I '$$^W4MLQNMH D
 .W " <td align=""center"" >"_$$INPPRC(PRM)_"</td>",!
 .W " <td align=""center"" position:relative"">"_$$INPQN(PRM)_"</td>",!
 ;
 I $$^W4MLQNMH D
 .W " <td align=""center"" style=""position:relative"">"_$$INPQN(PRM)_"</td>",!
 .W " <td align=""center"" >"_$$INPPRC(PRM)_"</td>",!
 ;
 I '$$NODISCST D
 .W " <td align=""center"">"_$$INPDISC(PRM)_"</td>",!
 ;
 N BFTAX S BFTAX=$$INPBFTAX(PRM)
 D TDLTR W " id=""bft"_I_""">"_BFTAX_" "_$$SMBMTB_"</td>",!
 S SUMBF=SUMBF+BFTAX
 N AFTAX S AFTAX=$$INPAFTAX(PRM)
 D TDLTR W " id=""aft"_I_""">"_AFTAX_" "_$$SMBMTB_"</td>",!
 S SUMAF=SUMAF+AFTAX
 ;;W "PRM="_PRM_"  BFTAX="_BFTAX_"  AFTAX="_AFTAX_" SUMAF="_SUMAF_" <BR>",!
 ;
 I $$CMNST^W4LKH D
 .W " <td align=""center"" >"_$$INPCMNST(PRM)_"</td>",!
 W "</tr>",!
 Q
 ;
 ;
INPCODE(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 ;
 I '$$NOTEDIT(NOM) D
 .S ST=ST_"<img id=""delete"" src=""w4delete.jpg"" "
 .S ST=ST_"onClick=""Delete('trid"_I_"')"" >"
 ;
 N PREF,CD S PREF="",CD=$$CODE(NOM,I)
 S ST=ST_"&nbsp;<input type=""text"" id=""code"_I_""" "
 I $$NOTEDIT(NOM) D
 .S PREF="&nbsp;"
 .I $L(CD),'$$MLMAM^W4MLPRT(CD) S PREF="*"
 S ST=ST_"size=""8"" maxlength=""14"" value="""_PREF_CD_""" "
 S ST=ST_" onKeyUp=""OnKeyCode(event,'"_I_"','"_NOM_"',this)"" "
 S ST=ST_$$READONLY(NOM)
 ;
 I '$$NOTEDIT(NOM) D
 .N GLP S GLP=$$GLP
 .S ST=ST_" onChange=""Find('code"_I_"','code"_I_"','name"_I_"','"_GLP_"')"" >"
 .S ST=ST_"&nbsp;<img src=""w3filter.jpg"" onClick=""Find('code"_I_"','code"_I_"','name"_I_"','"_GLP_"')"" >"
 .S ST=ST_"&nbsp;<img src=""w4plus.jpg"" onClick=""Plus('"_NOM_"','"_I_"')"" "
 ;
 S ST=ST_" >"
 Q ST
 ;
 ;
PRKUP(STAM) ;
 ;;I $$ONEGLPAR^W3PRM!$$GETP^%W1PRM("PRKUP") Q 1
 I $G(%ARG("PRKUP")) Q 1
 I $$GETP^%W1PRM("PRKUP") Q 1
 Q 0
 ;
GLP(STAM) ;
 N GLP
 S GLP="PAR"
 I $$MLYPRT S GLP="MLPAR"
 Q GLP
 ;
INPNAME(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N NAME,DIRNAME
 S DIRNAME=$$DIRNAME
 S NAME=$$SHOWNAME($$NAME(NOM,I))
 N ST
 S ST="<input type=""text"" dir="""_DIRNAME_""" size=""36"" "
 S ST=ST_"id=""name"_I_""" maxlength=""40"" value="""_NAME_""" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"onChange=""OnChangeName('"_I_"')"" >"
 Q ST
 ;
INPSERNUM(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" dir=""LTR"" size=""10"" "
 S ST=ST_"id=""sernum"_I_""" maxlength=""14"" value="""_$$SERIAL(NOM,I)_""" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_" onChange=""ChangeSum('"_I_"')"" >"
 Q ST
 ;
GLMLEM(STAM)
 Q $$^W4GL("MLMIDA")
 ;
INPEM(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,7) S:'VL VL=1
 ;
 ;;I $$NOTEDIT(NOM) D  Q ST
 .N ZN S ZN=$G(@$$GLMLEM@(VL))
 .I ZN="" S ST="&nbsp;" Q
 .S ST=$$H2U^%L1FRM(ZN)
 ;
 S ST="<select id=""em"_I_""" "
 S ST=ST_" onChange=""OnChangeEm('"_I_"')"" "
 I $$NOTEDIT(NOM) S ST=ST_" disabled=""disabled"" "
 S ST=ST_">"
 ;
 I '$D(@$$^W4GL("MLMIDA")@(1)) S @$$GLMLEM@(1)="dcigi"
 ;
 N N S N="" F  S N=$O(@$$GLMLEM@(N)) Q:N=""  D
 .S ST=ST_"<option value="""_N_""" "_$S(N=VL:" selected=""selected"" ",1:"")_">"
 .;;S ST=ST_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>"
 .S ST=ST_$$H2U^%L1FRM($G(^(N)))_"</option>"
 ;
 S ST=ST_"</select>"
 Q ST
 ;
 ;
INPCOLOR(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,9)
 ;
 I $$NOTEDIT(NOM) D  Q ST
 .N ZN S ZN=$G(@$$^W4GL("W4COLOR")@(VL))
 .I ZN="" S ST="&nbsp;" Q
 .S ST=$$H2U^%L1FRM(ZN)
 ;
 S ST="<select id=""color"_I_""" "
 ;;S ST=ST_" onChange=""ChangeSum('"_I_"')"" "
 S ST=ST_">"
 ;
 I '$D(@$$^W4GL("W4COLOR")@(1)) S @$$^W4GL("W4COLOR")@(1)="xegyi"
 ;
 S ST=ST_"<option value=""0"">"_$$^%W1DICT("CHOICECOLOR")_"</option>"
 N N S N="" F  S N=$O(@$$^W4GL("W4COLOR")@(N)) Q:N=""  D
 .S ST=ST_"<option "_$S(N=VL:" selected=""selected"" ",1:"")_" >"
 .S ST=ST_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>"
 ;
 S ST=ST_"</select>"
 Q ST
 ;
 ;
INPSIZE(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,10)
 I $$NOTEDIT(NOM) D  Q ST
 .N ZN S ZN=$G(@$$^W4GL("W4SIZE")@(VL))
 .I ZN="" S ST="&nbsp;" Q
 .S ST=$$H2U^%L1FRM(ZN)
 ;
 S ST="<select id=""size"_I_""" "
 ;;S ST=ST_" onChange=""ChangeSum('"_I_"')"" "
 S ST=ST_">"
 ;
 S ST=ST_"<option value=""0"">"_$$^%W1DICT("CHOICESIZE")_"</option>"
 N N S N="" F  S N=$O(@$$^W4GL("W4SIZE")@(N)) Q:N=""  D
 .S ST=ST_"<option "_$S(N=VL:" selected=""selected"" ",1:"")_" >"
 .S ST=ST_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>"
 ;
 S ST=ST_"</select>"
 Q ST
 ;
 ;
INPPRC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" "_$$LTR_" size=""4"" "
 S ST=ST_"id=""prc"_I_""" maxlength=""8"" onClick=""FocSel(this)"" "
 S ST=ST_"onKeyUp=""KeyUpRkv(event,'"_I_"')"" onChange=""OnChangePrice('"_I_"')"" "
 S ST=ST_$G(ONKEYPRESS) ;;_" "_$$READONLY(NOM)
 S ST=ST_"onBlur=""OnChangeSum(this)"" value="""_$$NUM($$PRC(NOM,I))_""">"
 Q ST
 ;
PRCCSR()
 I '$$ONEGLPAR^W3PRM Q 0
 Q +$G(@$$^W4GL("W3PRM")@("PRCCSR"))
 ;
INPQN(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" "_$$LTR_" size=""4"" id=""qn"_I_""" "
 S ST=ST_"maxlength=""7"" onClick=""FocSel(this)"" "
 I $$PRCCSR S ST=ST_"onFocus=""ShowPrcCSR(this)"" "
 S ST=ST_"onKeyUp=""KeyUpRkv(event,'"_I_"')"" onBlur=""OnChangeSum(this)"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"value="""_$$NUM($$QN(NOM,I))_""">"
 Q ST
 ;
INPDISC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" "_$$LTR_" align=""right"" size=""4"" "
 S ST=ST_"id=""disc"_I_""" maxlength=""6"" onClick=""FocSel(this)"" "
 S ST=ST_"onKeyUp=""KeyUpRkv(event,'"_I_"')"" onBlur=""DiscItem(this)"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"value="""_$$NUM($$DISC(NOM,I))_""">"
 Q ST
 ;
INPBFTAX(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 Q $$NUM($$BFTAX(NOM,I))
 ;
INPAFTAX(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 Q $$NUM($$AFTAX(NOM,I))
 ;
INPCMNST(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N CMNT,DIRNAME
 S DIRNAME=$$DIRNAME
 S CMNT=$$SHOWCMNST($$CMNST(NOM,I))
 N ST
 S ST="<textarea dir="""_DIRNAME_""" cols=""30"" rows=""1"" "
 S ST=ST_"id=""cmnt"_I_""" maxlength=""60"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_" onChange=""OnChangeComment('"_I_"')"" >"_CMNT_"</textarea>"
 Q ST
 ;
 ;
SHOWTOT(NOM)
  W "<tr>"
  D SPACE
  S AHMAM=$$AHMAM(NOM)
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  ;
  I '$$INP D
  .D TDLTR W " id=""bftot""><b>"_$J(SHUMLD*100/(100+AHMAM),2,2)_" "_$$SMBMTB_"</b></td>"
  I $$INP D
  .D TDLTR W " id=""bftot""><b>"_$J(LMAM,2,2)_" "_$$SMBMTB_"</b></td>"
  ;
  D TDLTR W " id=""aftot""><b>"_$J(SHUMLD,2,2)_" "_$$SMBMTB_"</b></td>"
  ;
  W "</tr>",!
  ;
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("AFTERTAX")_"&nbsp;</td>"
   D TDLTR W " id=""tot""><b>"_$J($G(SHUMLD),2,2)_" "_$$SMBMTB_"</b></td>"
   D LASTTD
  W "</tr>",!
  ;
  W "<tr>"
  D SPACE
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DISCPERCENT")_"&nbsp;"
   W "<input type=""text"" dir=""LTR"" onFocus=""FocSel(this)"" style="""_$$RED_""" id=""discprc"" size=""3"" maxlength=""6"" value="""_$$DISCPRC(NOM)_""" onKeyUp=""SumDoc(0)"" >"
   W "</td>"
   W "<td dir=""LTR"" align=""right"" id=""disca"" style="""_$$RED_""">"_DISCA_" "_$$SMBMTB_"</td>"
   D LASTTD
  W "</tr>",!
  ;
  W "<tr>"
  D SPACE
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DISCNIS")_"&nbsp;</td>",!
  W "<td dir=""LTR"" align=""right"">"
   W "<input type=""text"" dir=""LTR"" style="""_$$RED_""" onFocus=""FocSel(this)"" id=""discnis"" size=""6"" maxlength=""6"" value="""_$$DISCNIS(NOM)_""" onKeyUp=""SumDoc(0)"" >"
   W " "_$$SMBMTB
   W "</td>"
   D LASTTD
  W "</tr>",!
  ;
  W "<tr>"
  D SPACE
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DLVPAY")_"&nbsp;</td>"
  W "<td dir=""LTR"" align=""right"">"
   W "<input type=""text"" onFocus=""FocSel(this)"" "_$$LTR_" id=""dlvpay"" size=""6"" maxlength=""6"" style="""_$$NORED_""" value="""_$$DMSH(NOM)_""" onKeyUp=""SumDoc(0)"" >"
   W " "_$$SMBMTB
   W "</td>"
   D LASTTD
  W "</tr>",!
  ;
  I $$^W4NOIGUL D SHOWMAM
  I '$$^W4NOIGUL S IGUL=0
  ;
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
   D TDLTR W " id=""total""><b>"_$J(SHUM-IGUL,2,2)_" "_$$SMBMTB_"</b></td>"
   D LASTTD
  W "</tr>",!
  ;
  I '$$^W4NOIGUL D
  .W "<tr>"
  . D SPACE
  . W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("IGUL")_"&nbsp;</td>"
  . D TDLTR W " id=""igul""><b>"_$J(IGUL,2,2)_" "_$$SMBMTB_"</b></td>"
  . D LASTTD
  .W "</tr>",!
  .;
  .D SHOWMAM
  .
  .W "<tr>" D SPACE
  . W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTALROUNDED")_"&nbsp;</td>"
  . D TDLTR W " id=""itot""><b>"_$J($J(SHUM,0,0),2,2)_" "_$$SMBMTB_"</b></td>"
  . D LASTTD
  .W "</tr>",!
  ;
 Q
 ;
 ;
LASTTD ;
 I '$$NOTEDIT(NOM) W "<td>&nbsp;</td>",!
 Q
 ;
SHOWMAM ;
 I $$INP Q
 S AHMAM=$$AHMAM(NOM)_"%"
 W "<tr>"
 D SPACE
 W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TAX",AHMAM)_"&nbsp;</td>"
  D TDLTR W " id=""tax""><b>"_$J($G(MAM),2,2)_" "_$$SMBMTB_"</b></td>"
  D LASTTD
 W "</tr>",!
 Q
 ;
GETLKH(NUMBER)
 I $$INP($G(NUMBER)) Q $$SPK
 Q $$GETP^%W1PRM("LKH")
 ;
SPK(STAM)
 N SPK S SPK=0
 I $G(%ARG("SPK")) S SPK=%ARG("SPK")
 I 'SPK S SPK=$$GETP^%W1PRM("SPK")
 I SPK["_" S SPK=$P(SPK,"_")
 Q SPK
 ;
GETDAT(STAM)
 Q $$SPA^%L1FRM($$GETP^%W1PRM("DAT"))
 ;
GETDOC(NOMDOC) ;
 S NOMDOC=$G(NOMDOC)
 N VD S VD=""
 ;
 I NOMDOC,$$GLOBNAME(NOMDOC)="W4DOC" D  I $L(VD) Q VD
 .I $D(@$$GL@(NOMDOC,"H")) S VD="HBW" Q
 .I $D(@$$GL@(NOMDOC,"TM")) S VD="TM" Q
 .I $D(@$$GL@(NOMDOC,"TMZ")) S VD="TMZ" Q
 .I $D(@$$GL@(NOMDOC,"TZ")) S VD="TZ" Q
 .I $D(@$$GL@(NOMDOC,"HMK")) S VD="HMK" Q
 .I $D(@$$GL@(NOMDOC,"HZMH")) S VD="HZMH" Q
 ;
 I NOMDOC,$$GLOBNAME(NOMDOC)="W4INP" Q $$DOC(NOMDOC)
 I NOMDOC,$$DOCNOM(NOMDOC)'="" Q $$DOCNOM(NOMDOC)
 ;
 I $G(%ARG("VD"))="HBZ" Q "TZ"
 I $G(%ARG("VD"))="HMKI" Q "HMK"
 I $L($G(%ARG("VD"))) Q %ARG("VD")
 I $L($G(%ARG("DOC"))) Q %ARG("DOC")
 I $$GETP^%W1PRM("VD")="HBZ" Q "TZ"
 I $$HZ^W4LHB Q "HZ"
 I $$TM^W4LHB Q "TM"
 I $$TMZ^W4LHB Q "TMZ"
 I $$HMKI^W4LHB Q "HMK"
 I $$GET^%W1PRM("VD")="ITZ" Q "ITZ"
 I $$GET^%W1PRM("VD")="IHZ" Q "IHZ"
 Q $$DOC(NOMDOC)
 ;
 ;
HZ(STAM) ;
 Q $$HZ^W4LHB
 ;
HZMH(STAM) ;
 Q $$HZMH^W4LHB
 ;
GETPRMAM(STAM)
 Q $$GET^%W1PRM("PRMAM")
 ;
PUTHD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D GLTMP
 S ST=PRM
 S TZ=$P(ST,";")
 S LKH=$$GETLKH
 D PUT^%W3DEB("W4DOC-PUTHD","ST=ST & LKH=LKH")
 ;
 I TZ,LKH D
 .I $$INP D PUT^W4SPK(LKH,TZ,"TZ") Q
 .D PUT^W4L(LKH,TZ,"TZ")
 ;
 S DISCPRC=$P(ST,";",2)
 S DISCNIS=$P(ST,";",3)
 S DMSH=$P(ST,";",4)
 S HRA=$$CNWEB^%L1FRM($P(ST,";",5))
 S HRA=$$INVH^%L1FRM(HRA)
 S MTB=$P(ST,";",6)
 ;
 S $P(@GLTMP,"\",9)=$TR(HRA,"\*","/X")
 S $P(@GLTMP,"\",12)=DISCPRC
 S $P(@GLTMP,"\",13)=DISCNIS
 S $P(@GLTMP,"\",14)=DMSH
 S $P(@GLTMP,"\",15)=TZ
 S $P(@GLTMP,"\",18)=MTB
 Q
 ;
PUT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D GLTMP
 S ST=PRM
 S SH=$P(ST,";") Q:'SH
 S CD=$TR($$CNWEB^%L1FRM($P(ST,";",2)),"\","/")
 S NAME=$$CNWEB^%L1FRM($P(ST,";",3))
 I $$DIRNAME="RTL" S NAME=$$INVH^%L1FRM(NAME)
 S PRC=+$P(ST,";",4)
 S QN=+$P(ST,";",5)
 S DISC=+$P(ST,";",6)
 S SERNUM=$TR($P(ST,";",7),"\","/")
 S EM=$TR($P(ST,";",8),"\","/")
 S COLOR=$TR($P(ST,";",9),"\","/")
 S SIZE=$TR($P(ST,";",10),"\","/")
 S CMNST=$$CNWEB^%L1FRM($TR($P(ST,";",11),"\","/"))
 I $$DIRNAME="RTL" S CMNST=$$INVH^%L1FRM(CMNST)
 S EM=$$RKVG(EM)
 ;
 S @GLTMP@(SH)=CD_"\"_$TR(NAME,"\","/")_"\"_PRC_"\"_QN_"\"_DISC_"\\"_$$SPA^%L1FRM(EM)
 S $P(@GLTMP@(SH),"\",8)=SERNUM
 S COLOR=$$RKVG(COLOR)
 S SIZE=$$RKVG(SIZE)
 ;
 S $P(@GLTMP@(SH),"\",9)=COLOR
 S $P(@GLTMP@(SH),"\",10)=SIZE
 S $P(@GLTMP@(SH),"\",11)=CMNST
 Q
 ;
 ;
RKVG(RKV)
 D
 .I RKV?1N.N.E S RKV=$P(RKV," ")_" "_$$INVH^%L1FRM($P(RKV," ",2,20)) Q
 .S RKV=$$INVH^%L1FRM(RKV)
 Q RKV
 ;
 ;
SUBMIT(PRM,PR) ; -- SAVE NEW
 N (JB,%ARG,%REM,PRM,PR)
 ;
 D GLTMP
 S TMP=($G(PR)="TMP")
 D PUT^%W3DEB("W4DOC-SUBMIT","PRM=PRM & PR=PR & TMP=TMP")
 ;
 S NOM=$P(PRM,";",1)
 I NOM="KUP" D
 .S NOM=$O(@$$^W4GL("W4TMKUP"))+1
 .S @$$^W4GL("W4TMKUP")=NOM
 ;
 S ORD=$P(PRM,";",2)
 S PRMAM=0
 I '$$INP S PRMAM=$P(PRM,";",3)
 S TZ=$P(PRM,";",4)
 ;
 S HRA=$P(PRM,";",5)
 S HRA=$$CNWEB^%L1FRM(HRA)
 S PRV=$P(HRA,"~",2)
 S HRA=$P(HRA,"~")
 S HRA=$$INVH^%L1FRM(HRA)
 ;
 S DISCPRC=$P(PRM,";",6)
 S DISCNIS=$P(PRM,";",7)
 S DMSH=$P(PRM,";",8)
 S MTB=$P(PRM,";",9)
 ;
 S ERUADATE=$P(PRM,";",10)
 S ERUATIME=$P(PRM,";",11)
 S GUESTS=$P(PRM,";",12)
 S MAZMIN=$$INVH^%L1FRM($P(PRM,";",13))
 S PELEMAZMIN=$P(PRM,";",14)
 ;
 S COLST=$$COLST(NOM)
 S SHUM=$P(PRM,";",15)
 S DATI=$P(PRM,";",16)
 S DATP=$P(PRM,";",17)
 ;
 S LKH=$$LKH(NOM)
 S DAT=$$DAT(NOM)
 S LKH1=$$LKHNAME(NOM)
 S KTV=$$KTV(NOM)
 ;
 I '$L(TZ),$$GETDOC(NOM)="HBW",$$PRMTZMAM,SHUM'<$$PRMTZMAM Q "NOTTZ"
 I TZ?1N.N,TZ,'$$^W4TZ(TZ) Q "ERRTZ"
 I '$$INP,'$$TZ^W4L(LKH),TZ D PUT^W4L(LKH,TZ,"TZ")
 ;
 I PRMAM="",'$$INP S PRMAM=$$GETPRMAM
 ;
SBMTV ;
 N GL S GL=$$GL
 S NMBDOC=0
 ;
 I 'TMP D
 .I 'NOM S NMBDOC=$$LASTNOM+1 ; --- IF NEW
 .
 .I $G(NOM) D
 ..N DATOLD,DT,VDOC
 ..S DATOLD=$$DAT(NOM) D PUT^%W3DEB("W4DOC-SUBMIT","DATOLD=DATOLD&NOM=NOM")
 ..D
 ...S DT=$$^%L1DC(DATOLD,3)
 ...S VDOC=$$DOC(NOM)
 ...
 ...I $$INP(NOM) D  ; ----- DELETE PREVIOUS VERSION OF DOCUMENT
 ....D KILL^W4INPDIR(DT,LKH,VDOC,+NOM)
 ....I VDOC="IHZ"!(NOM["IHZ") Q
 ....I VDOC="IHBZ"!(NOM["IHBZ"),$D(@$$^W4GL("W4INP")@($$SPK,"IHBZ",+NOM,"ITZ")) Q
 ....I VDOC="IHB"!(NOM["IHB"&(NOM'["IHBZ")),$D(@$$^W4GL("W4INP")@($$SPK,"IHB",+NOM,"ITM")) Q
 ....D ^W4SETMLY(DT,VDOC,LKH,+NOM,-1)
 ..
 ..;;I $$HZ(NOM) D  ; ----- DELETE PREVIOUS VERSION OF DOCUMENT
 ...N NUMBER S NUMBER=+$$GETP^%W1PRM("NUMBER")
 ...S @$$^W4GL("W4ORD")@(+NOM,"NUMBER")=NUMBER
 ...D KILL^W4ORDD(LKH,+NUMBER)
 ..
 ..S NMBDOC=NOM
 .
 .N GL0 S GL0=$E(GL,1,$L(GL)-1)
 .N I F I=1:1 Q:'$D(@GL@(NMBDOC,I))  K @GL@(NMBDOC,I) D
 ..D ^%S2GLSV(GL0_","""_NMBDOC_""","_I_")",$$^W4FGIB,"K")
 ;
 S (SSUMBF,SSUMAF)=0
 S AHMAM=$$AHMAM(0)
 ;
 ; --------------------- SAVING -----------------------------
 N AHMAM1,INP S INP=$$INP
 N N,I,SQN S N="",I=0,SQN=0 F  S N=$O(@GLTMP@(N)) Q:N=""  I N D
 .N ST S ST=$G(^(N))
 .N QN,PRC,DISC,NAME,CD
 .S CD=$$CODE(0,N)
 .S QN=$$QN(0,N),PRC=$$PRC(0,N),DISC=$$DISC(0,N),NAME=$$NAME(0,N)
 .S MAMCD=$$MAM^W4DMAM(CD)
 .I 'QN,'PRC,'DISC,$L(NAME)=0 Q
 .S SQN=SQN+QN
 .S AHMAM1=$S(MAMCD:AHMAM,1:0)
 .
 .I 'TMP S I=I+1,@GL@(NMBDOC,I)=$G(@GLTMP@(N)) ; --- !!!!!!-- SAVING --!!!!!!!!!
 .
 .I '$$INP,PRMAM D
 ..S SUMAF=$J(QN*PRC*(100-DISC)*.01,2,2)
 ..S SUMBF=$J(SUMAF*100/(100+AHMAM1),2,2)
 .
 .I 'PRMAM!$$INP D
 ..S SUMBF=$J(QN*PRC*(100-DISC)*.01,2,2)
 ..S SUMAF=$J(SUMBF*(100+AHMAM1)*.01,2,2)
 .
 .S SSUMBF=SSUMBF+SUMBF
 .S SSUMAF=SSUMAF+SUMAF
 ;
 N BELONG
 I $G(ORD),ORD'["HZMH" S BELONG=$$BELONG($$^W4ORDD(LKH,ORD),$$DOC(NOM),NMBDOC) I BELONG Q "ORDBELONG2DOC;"_BELONG
 I $G(ORD),ORD["HZMH" S BELONG=$$BELONG(ORD,$$DOC(NOM),NMBDOC) I BELONG Q "ORDBELONG2DOC;"_BELONG
 ;
 I $G(ORD) D SETORD
 ;
 S SUMTD=(SSUMAF*(100-DISCPRC)*.01)-DISCNIS+DMSH
 I 'SQN,'SSUMAF,'SUMTD Q "NODATA!"
 ;
 S IGUL=0
 I '$$^W4NOIGUL D
 .S IGUL=$J($J(SUMTD,0,0)-$J(SUMTD,2,2),2,2)
 .S SUMTD=$J($J(SUMTD,0,0),2,2)
 ;
 ;;S MAM=(SSUMAF-SSUMBF)+((SUMTD-SSUMAF)*AHMAM/(100+AHMAM))
 S MAM=(SSUMAF-SSUMBF)
 ;;W "SSUMAF="_SSUMAF_"  SSUMBF="_SSUMBF_"  SUMTD="_SUMTD,!
 I SSUMAF S MAM=$J(MAM*SUMTD/SSUMAF,2,2)
 ;
 S MAM=$J(MAM,2,2)
 ;
 D PUT^%W3DEB("W4DOC-SUBMIT","SSUMBF=SSUMBF & SSUMAF=SSUMAF & SUMTD=SUMTD & IGUL=IGUL & MAM=MAM")
 ;
 I 'TMP L +@GL@(NMBDOC):1
 ;
 N STHD
 I $$INP S DAT=DATI
 S STHD=LKH_"\"_$TR(LKH1,"\","/")_"\"_$TR(KTV,"\","/")_"\"_DAT_"\"_AHMAM_"\"_SUMTD_"\"_MAM_"\"_$ZD($H,"DD.MM.YY  24:60")_"\"_$TR(HRA,"\","/")_"\"_IGUL_"\"_PRMAM_"\"_DISCPRC_"\"_DISCNIS_"\"_DMSH_"\"_$TR(TZ,"\","/")_"\"_PRV
 ;
 N VDOC S VDOC=$$GETDOC(NOM)
 ;
 I $$INP D
 .I $G(DATP) S $P(STHD,"\",17)=DATP
 .N STHD0 I $G(NMBDOC) S STHD0=$G(@GL@(NMBDOC))
 .S $P(STHD,"\",19)=$P(STHD0,"\",19)
 .S $P(STHD,"\",20)=$P(STHD0,"\",20)
 .
 .I VDOC="IHB"!(VDOC="IHBZ") D SETITRA^W4SPK(LKH,SUMTD)
 ;
 S $P(STHD,"\",18)=MTB
 S $P(STHD,"\",21)=$$PRKUP
 ;
 S $P(STHD,"\",22)=ERUADATE
 S $P(STHD,"\",23)=ERUATIME
 S $P(STHD,"\",24)=GUESTS
 S $P(STHD,"\",25)=MAZMIN
 S $P(STHD,"\",26)=PELEMAZMIN
 ;
 D PUT^%W3DEB("W4DOC-SUBMIT","STHD=STHD&NMBDOC=NMBDOC")
 ;
 I 'TMP D  ; -------- SAVING
 .S @GL@(NMBDOC)=STHD
 .
 .I VDOC="IHB"!(VDOC="IHBZ"),$D(@GLTMP@("ITM"))>9!($D(@GLTMP@("ITZ"))>9) D
 ..N VDTM,VDTM1,TM1 F VDTM="ITM" D
 ..N TM S TM="" F  S TM=$O(@GLTMP@(VDTM,TM)) Q:TM=""  D
 ...S VDTM1=VDTM,TM1=TM I TM<0 S VDTM1="ITZ",TM1=-TM
 ...I VDOC="IHBZ" S VDTM1="ITZ"
 ...K @$$^W4GL("W4FREEDOC")@(LKH,VDTM1,TM1) ; LKH=SPK
 ...S @GL@(NMBDOC,"ITM",TM)=""
 ...I $L(VDOC) S @$$^W4GL("W4INP")@(LKH,VDTM1,TM1,VDOC)=NMBDOC
 .
 .K @GLTMP ; ---------- DELETE !
 ;
 I TMP S @GLTMP=STHD
 ;
 S NOMHSB=0
 N DT S DT=$$^%L1DC(DAT,3)
 ;
 I 'TMP D
 .I VDOC="HBW" D SVHBW Q
 .
 .I $$HBZ D SVHBZ Q
 .
 .I VDOC="TM"!(VDOC="TMZ") D SVTM Q
 .
 .I VDOC="HZMH",'NOM D SVHZMH Q
 .I VDOC="HZMH" S NOMHSB=+$$GETP^%W1PRM("NUMBER")
 .
 .I VDOC="HZ" D
 ..S @GL@(NMBDOC,"MKR")=$H
 ..N NUMBER S NUMBER=+$$GETP^%W1PRM("NUMBER")
 ..S NOMHSB=NUMBER
 ..D SET^W4ORDD(LKH,NUMBER,NMBDOC)
 ;
 I 'TMP,$$INP D
 .S NOMHSB=NMBDOC
 .D SET^W4INPDIR(DT,LKH,VDOC,NMBDOC)
 ;
 I 'TMP,VDOC'="HZMH",VDOC'="HZ" D
 .D PUT^%W3DEB("W4DOC-SUBMIT-SETMLY","DT=DT&VDOC=VDOC&LKH=LKH&NMBDOC=NMBDOC")
 .N VD S VD=$S($$INP:VDOC,1:"OUT")
 .D ^W4SETMLY(DT,VD,LKH,NMBDOC)
 ;
 L  ;
SUBMITE ;
 K @$$^W4MAIN("VRM")
 Q NOMHSB_$S($$HBZ:"Z",VDOC="TM":"T",VDOC="TMZ":"TMZ",VDOC="HZ":"HZ",VDOC="ITM":"ITM",VDOC="IHB":"IHB",VDOC="ITZ":"ITZ",VDOC="IHZ":"IHZ",VDOC="IHBZ":"IHBZ",VDOC="HZMH":"HZMH",1:"")
 ;
 ;
SETORD ;
 I $D(@GL@(NMBDOC))=11 S @GL@(NMBDOC,"ORD")=ORD
 ;
 I $$INP,$D(@$$^W4GL("W4INP")@($$SPK,"IHZ",ORD,1)) D  Q
 .N DOC S DOC=$$DOC(NMBDOC) Q:DOC=""
 .S @$$^W4GL("W4INP")@($$SPK,"IHZ",ORD,DOC)=NMBDOC
 ;
 I '$$INP D
 .N LKH S LKH=$$GETP^%W1PRM("LKH") Q:LKH=""
 .
 .I ORD'["HZMH" D
 ..N NOMORD S NOMORD=$$^W4ORDD(LKH,ORD) Q:'NOMORD
 ..I $D(@$$^W4GL("W4ORD")@(NOMORD,1)) D
 ...S $P(@$$^W4GL("W4ORD")@(NOMORD),"\",20)=NMBDOC
 .
 .I ORD["HZMH" D
 ..N ORDN S ORDN=+ORD
 ..N NOMORD S NOMORD=$G(@$$^W4GL("W4DIR")@("HZMH",ORDN)) Q:'NOMORD
 ..S $P(@$$^W4GL("W4DOC")@(NOMORD),"\",20)=NMBDOC
 Q
 ;
 ;
SVDOC(VD,NMBDOC) ;
 S NOMHSB=$$^W4NEWNMB(VD)
 ;
 L +@GL@(NMBDOC):1
 S @GL@(NMBDOC,VD)=NOMHSB
 S @GL@(NMBDOC,VD,"MKR")=$H
 D ^%S2GLSV(GL_"("""_NMBDOC_""","""_VD_""")",$$^W4FGIB)
 L -@GL@(NMBDOC)
 ;
 L +@$$^W4GL("W4DIR")@(VD,NOMHSB):1
 S @$$^W4GL("W4DIR")@(VD,NOMHSB)=NMBDOC
 L -@$$^W4GL("W4DIR")@(VD,NOMHSB)
 ;
 N VD1 S VD1=VD I $$HBZ S VD1=VD_"Z"
 D ^%S2GLSV($$^W4GL("W4DIR")_"("""_VD1_""","_NOMHSB_")",$$^W4FGIB)
 D W4DIRD(DT,NMBDOC)
 Q
 ;
 ;
SVHBW ;-- INPUT: NMBDOC,DT,LKH,DAT,SUMTD
 N VDOC S VDOC="H"
 D SVDOC(VDOC,NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,"H","0H")
 D PUT^%W1PRM("MKRYD",NOMHSB_$$GETDOC)
 Q
 ;
SVHBZ ;-- INPUT: NMBDOC,LKH,DAT,SUMTD
 N VD S VD=$$GETDOC
 D HBMIN(NMBDOC)
 D SVDOC(VD,NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,VD,"0D")
 D PUT^%W1PRM("MKRYD",NOMHSB_VD)
 Q
 ;
SVTM ;-- INPUT: NMBDOC,LKH,DAT,SUMTD
 N VD S VD=VDOC
 D SVDOC(VD,NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,VD,"0H")
 ;
 I VDOC="TM" D
 .N NOMDOC S NOMDOC=$$^W4NOMTD(NOMHSB,VDOC)
 .L +@$$^W4GL("P1HL3")@(LKH,NOMDOC):1
 .L +@$$^W4GL("P1HL1")@(LKH,NOMDOC):1
 .L +@$$^W4GL("P1HL1I")@(NOMDOC):1
 .S @$$^W4GL("P1HL3")@(LKH,NOMDOC)=$$^%L1DC(DAT,3)_"*"_SUMTD_"*"_DAT_"*"_$ZD($H,"24:60")_"**"_$TR(LKH1,"\*","/X")_"*"_AHMAM_"*"_MAM
 .S @$$^W4GL("P1HL1")@(LKH,NOMDOC)=@$$^W4GL("P1HL3")@(LKH,NOMDOC)
 .S @$$^W4GL("P1HL1I")@(NOMDOC,LKH)=""
 .D ^%S2GLSV($$^W4GL("W4DIR")_"("""_VD_""","_NOMHSB_")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL3")_"("""_LKH_""","""_NOMDOC_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL1")_"("""_LKH_""","""_NOMDOC_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL1I")_"("""_NOMDOC_""")",$$^W4FGIB)
 ;
 I VDOC="TMZ" D
 .N NOMDOC S NOMDOC=$$^W4NOMTD(NOMHSB,VDOC)
 .L +@$$^W4GL("P1HL4")@(LKH,NOMDOC):1
 .L +@$$^W4GL("P1HL1")@(LKH,NOMDOC):1
 .L +@$$^W4GL("P1HL1I")@(NOMDOC):1
 .S @$$^W4GL("P1HL4")@(LKH,NOMDOC)=$$^%L1DC(DAT,3)_"*"_-SUMTD_"*"_DAT_"*"_$ZD($H,"24:60")_"**"_$TR(LKH1,"\*","/X")_"*"_AHMAM_"*"_-MAM
 .S @$$^W4GL("P1HL1")@(LKH,NOMDOC)=@$$^W4GL("P1HL4")@(LKH,NOMDOC)
 .S @$$^W4GL("P1HL1I")@(NOMDOC,LKH)=""
 .D ^%S2GLSV($$^W4GL("W4DIR")_"("""_VD_""","_NOMHSB_")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL4")_"("""_LKH_""","""_NOMDOC_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL1")_"("""_LKH_""","""_NOMDOC_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL1I")_"("""_NOMDOC_""")",$$^W4FGIB)
 ;
 D PUT^%W1PRM("MKRYD",NOMHSB_$$GETDOC)
 Q
 ;
 ;
SVHZMH ;
 N VD S VD="HZMH"
 D SVDOC(VD,NMBDOC)
 D PUT^%W1PRM("MKRYD",NOMHSB_VD)
 Q
 ;
PUTHMK(STAM) ;
 N GL,GLTMP,NMBDOC,NOMHSB
 S GL=$$GL
 D GLTMP
 S NMBDOC=$$LASTNOM+1
 N VD S VD="HMK"
 ;
 N N,I S N="",I=0 F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .N ST S ST=$G(^(N))
 .S I=I+1,@GL@(NMBDOC,I)=@GLTMP@(N)
 ;
 S @GL@(NMBDOC)=$G(@GLTMP)
 ;
 S NOMHSB=$$^W4NEWNMB(VD)
 ;
 I $$GETP^%W1PRM("ELPOS") D
 .L +@$$^W4GL("P1HB")@(NOMHSB):1
 .N DT S DT=+$H
 .S @$$^W4GL("P1HB")@(NOMHSB)="W"_NMBDOC_"\"_DT_"\"_$H
 .S @$$^W4GL("P1HBI")@(DT,NOMHSB)=$H
 .L  ;
 ;
 S @GL@(NMBDOC,VD)=NOMHSB
 S @GL@(NMBDOC,VD,"MKR")=$H
 ;
 D ^%S2GLSV(GL_"("_+NMBDOC_")",$$^W4FGIB)
 ;
 L +@$$^W4GL("W4DIR")@(VD,NOMHSB):1
 S @$$^W4GL("W4DIR")@(VD,NOMHSB)=NMBDOC
 L -@$$^W4GL("W4DIR")@(VD,NOMHSB)
 D ^%S2GLSV($$^W4GL("W4DIR")_"("""_VD_""","""_NOMHSB_""")",$$^W4FGIB)
 ;
 D W4DIRD(+$H,NMBDOC)
 ;
 N LKH,DAT,SUMTD
 S LKH=$$LKH(NMBDOC)
 S DAT=$$DAT(NMBDOC)
 S SUMTD=$$SUMTD(NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,VD,"0")
 ;
 N DT S DT=$$^%L1DC(DAT,3)
 D PUT^%W3DEB("W4DOC-SUBMIT-PUTHMK","DT=DT&VDOC=VDOC&LKH=LKH&NMBDOC=NMBDOC")
 N VD S VD=$S($$INP:"VDOC",1:"OUT")
 D ^W4SETMLY(DT,VD,LKH,NMBDOC)
 ;
 D PUT^%W1PRM("MKRYD",NOMHSB_VD)
 Q NMBDOC_";"_NOMHSB
 ;
 ;
GL(NUMBER) ;
 I '$$INP($G(NUMBER)) Q $$^W4GL($$GLOBNAME($G(NUMBER)))
 Q $$^W4GL($$GLOBNAME($G(NUMBER)))_"("""_$$GETLKH($G(NUMBER))_""","""_$$DOC($G(NUMBER))_""")"
 ;
GLOBNAME(NUMBER)
 I $$INP($G(NUMBER)) Q "W4INP"
 I $$DOC(NUMBER)="HZ" Q "W4ORD"
 Q "W4DOC"
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMPHBK")
 Q
 ;
GLHR ;
 S GLHR=$$GL_"(NMBDOC,""CMNT"")"
 Q
 ;
 ;
GET(NOM,SH,NRZ)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL
 ;
 I $$GETTMP(NOM) D  Q VL
 .N GLTMP D GLTMP
 .S VL=$P($G(@GLTMP@(SH)),"\",NRZ)
 ;
 S VL=$P($G(@GL@(NOM,SH)),"\",NRZ)
 Q VL
 ;
 ;
CODE(NOM,SH) ;
 Q $TR($$GET(NOM,SH,1),"*?","")
 ;
NAME(NOM,SH) ;
 Q $$GET(NOM,SH,2)
 ;
PRC(NOM,SH) ;
 Q $J($$GET(NOM,SH,3),2,2)
 ;
QN1(NOM,SH) ;
 Q $$GET(NOM,SH,4)
 ;
DISC(NOM,SH) ;
 Q $$GET(NOM,SH,5)
 ;
EM(NOM,SH) ;
 Q $$GET(NOM,SH,7)
 ;
SERIAL(NOM,SH) ;
 Q $$GET(NOM,SH,8)
 ;
CLR(NOM,SH) ;
 Q $$GET(NOM,SH,9)
 ;
SZ(NOM,SH) ;
 Q $$GET(NOM,SH,10)
 ;
CMNST(NOM,SH) ;
 Q $$GET(NOM,SH,11)
 ;
QN(NOM,SH) ;
 N QN
 S QN=$$QN1(NOM,SH)
 I $$HBZ(NOM),$G(NOM) S QN=-QN
 Q QN
 ;
BFTAX(NOM,SH) ;
 I '$$QN(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 N CD S CD=$$CODE(NOM,SH)
 I $$PRMAM(NOM) Q $J($$SUMST(NOM,SH)*100/(100+$$AHMAMP(NOM,CD)),2,2)
 Q $J($$SUMST(NOM,SH),2,2)
 ;
 ;
AFTAX(NOM,SH) ;
 I '$$QN(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 ;
 N CD S CD=$$CODE(NOM,SH)
 I '$$PRMAM(NOM) Q $J($$SUMST(NOM,SH)*(100+$$AHMAMP(NOM,CD))*.01,2,2)
 Q $J($$SUMST(NOM,SH),2,2)
 ;
 ;
SUMST(NOM,SH)
 Q $J($$QN(NOM,SH)*$$PRC(NOM,SH)*(100-$$DISC(NOM,SH))*.01,2,2)
 ;
LASTNOM(STAM)
 Q $O(@GL@(999999),-1)
 ;
LKH(NOM) ;
 S NOM=$G(NOM)
 I 'NOM!$$INP Q $$GETLKH(NOM)
 N LKH S LKH=$P($G(@$$GL@(NOM)),"\",1)
 I LKH="" Q $$GETLKH(NOM)
 Q LKH
 ;
LKHNAME(NOM) ;
 N LKH S LKH=$$LKH(NOM)
 I '$G(NOM),$$INP Q $$NAME^W4SPK(LKH)
 I '$G(NOM),'$$INP Q $$LKH^W4L(LKH)
 N LKHNAME S LKHNAME=$P($G(@$$GL@(NOM)),"\",2)
 I $$INP,LKHNAME="" Q $$NAME^W4SPK(LKH)
 Q LKHNAME
 ;
KTV(NOM) ;
 N LKH S LKH=$$LKH(NOM)
 I '$G(NOM),$$INP Q $$KTVMM^W4SPK(LKH)
 I '$G(NOM),'$$INP Q $$KTVMM^W4L(LKH)
 N KTV S KTV=$P($G(@$$GL@(NOM)),"\",3)
 I $$INP,KTV=""  Q $$KTVMM^W4SPK(LKH)
 Q KTV
 ;
DAT(NOM) ;
 I $$IHBTM(NOM),$G(%ARG("DAT")) Q $$^%L1DC($G(%ARG("DAT")),".")
 I '$G(NOM) Q $$GETDAT
 N DAT
 N GLOB S GLOB=$$GL
 D PUT^%W3DEB("W4DOC-DAT","GLOB=GLOB & NOM=NOM")
 S DAT=$$SPA^%L1FRM($P($G(@GLOB@(NOM)),"\",4))
 I DAT="",$$INP Q $$GETDAT
 Q DAT
 ;
AHMAM(NOM) ;
 I '$G(NOM) Q $G(@$$^W4PRM@("MAM"))
 N AHMAM S AHMAM=$P($G(@$$GL@(NOM)),"\",5)
 I AHMAM="" Q $G(@$$^W4PRM@("MAM"))
 Q AHMAM
 ;
AHMAMP(NOM,CD) ;
 I $$INP,'$$MLMAM^W4MLPRT(CD) Q 0
 Q $$AHMAM($G(NOM))
 ;
SUMTD(NOM) ;
 N SUMTD D GLTMP
 ;;I '$G(NOM) Q ""
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",6)
 S SUMTD=$P($G(@$$GL@(NOM)),"\",6)
 ;
 I $$HBZ(NOM),$G(NOM) S SUMTD=-SUMTD
 Q SUMTD
 ;
MAM(NOM) ;
 N MAM D GLTMP
 ;;I '$G(NOM) Q ""
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",7)
 S MAM=$P($G(@$$GL@(NOM)),"\",7)
 I NOM,$$HBZ(NOM) S MAM=-MAM
 Q MAM
 ;
KMAM(NOM) ;
 N AHMAM S AHMAM=$$AHMAM(NOM)
 N SUM S SUM=$$SUMTD(NOM)
 N MAM S MAM=$$MAM(NOM)
 N AHR S AHR=""
 I SUM'>MAM Q AHR
 S AHR=MAM*100/(SUM-MAM)
 I 'AHMAM Q 0
 Q $J(AHR/AHMAM,4,4)
 ;
ISSUE(NOM) ;
 I '$G(NOM) Q $ZD($H,"DD.MM.YY")
 Q $P($G(@$$GL@(NOM)),"\",8)
 ;
CMNT(NOM) ;
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $$H2U^%L1FRM($P($G(@GLTMP),"\",9))
 Q $$H2U^%L1FRM($P($G(@$$GL@(NOM)),"\",9))
 ;
PRV(NOM) ;
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",16)
 Q $P($G(@$$GL@(NOM)),"\",16)
 ;
IGUL(NOM) ;
 I '$G(NOM) Q ""
 D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",10)
 S IGUL=$P($G(@$$GL@(NOM)),"\",10)
 I $G(NOM),$$HBZ(NOM) S IGUL=-IGUL
 Q IGUL
 ;
PRMAM(NOM) ;
 I $$INP Q 0
 I '$G(NOM) Q $S($G(%ARG("PRMAM"))="":$$PRMAM^W4LKH,1:$G(%ARG("PRMAM")))
 Q $P($G(@$$GL@(NOM)),"\",11)
 ;
DISCPRC(NOM) ;
 N AHTMP,GLTMP
 D GLTMP
 S AHTMP=$P($G(@GLTMP),"\",12)
 I '$$INP,AHTMP="",$$AH^W4L($$LKH(NOM)) S AHTMP=$$AH^W4L($$LKH(NOM))
 I $$GETTMP(NOM) Q AHTMP
 Q $P($G(@$$GL@(NOM)),"\",12)
 ;
DISCNIS(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",13)
 N DISCNIS
 S DISCNIS=$P($G(@$$GL@(NOM)),"\",13)
 I $G(NOM),$$HBZ(NOM) S DISCNIS=-DISCNIS
 Q DISCNIS
 ;
DMSH(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",14)
 N DMSH
 S DMSH=$P($G(@$$GL@(NOM)),"\",14)
 I $G(NOM),$$HBZ(NOM) S DMSH=-DMSH
 Q DMSH
 ;
TZ(NOM) ;
 N TZ N GLTMP D GLTMP
 I '$G(NOM),$G(%ARG("LKH")) D  Q TZ
 .S TZ=$$TZ^W4L(%ARG("LKH"))
 I '$G(NOM),$G(%ARG("SPK")) D  Q TZ
 .S TZ=$$TZ^W4SPK(%ARG("SPK"))
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",15)
 Q $P($G(@$$GL@(NOM)),"\",15)
 ;
MTB(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",18)
 N MTB
 S MTB=$P($G(@$$GL@(NOM)),"\",18)
 Q MTB
 ;
PRKUPDOC(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",21)
 N PRKUP
 S PRKUP=$P($G(@$$GL@(NOM)),"\",21)
 Q PRKUP
 ;
GUESTS(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",24)
 N GUESTS
 S GUESTS=$P($G(@$$GL@(NOM)),"\",24)
 Q GUESTS
 ;
MAZMIN(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",25)
 N MAZMIN
 S MAZMIN=$P($G(@$$GL@(NOM)),"\",25)
 Q MAZMIN
 ;
PELEMAZMIN(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",26)
 N PELEMAZMIN
 S PELEMAZMIN=$P($G(@$$GL@(NOM)),"\",26)
 Q PELEMAZMIN
 ;
HRA(NOM) ;
 N HRA,GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",9)
 Q $P($G(@$$GL@(NOM)),"\",9)
 ;
ERUADATE(NOM) ;
 N HRA,GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",22)
 Q $P($G(@$$GL@(NOM)),"\",22)
 ;
ERUATIME(NOM) ;
 N HRA,GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",23)
 Q $P($G(@$$GL@(NOM)),"\",23)
 ;
DIRNAME()
 Q $$DIRNAME^W3PRM
 ;
SHOWNAME(NAME) ;
 I $$DIRNAME="RTL" Q $$H2U^%L1FRM(NAME)
 Q NAME
 ;
SHOWCMNST(TXT) ;
 I $$DIRNAME="RTL" Q $$H2U^%L1FRM(TXT)
 Q TXT
 ;
NUM(RKV)
 I '$G(RKV) Q "&nbsp;"
 Q RKV
 ;
SPACE D TDN,TDN
 I $$PRMSER D TDN
 I $$MLYPRT D TDN
 I $$COLOR D TDN
 I $$SIZE D TDN
 D TDN,TDN
 Q
 ;
PRMTZMAM(STAM) ;
 Q $$PRMTZMAM^W4HSBYAD
 ;
NOM(NUMBER) ;
 N VD S VD="H"
 N NOM I '$G(NUMBER) Q 0
 I $TR(NUMBER,"1234567890","")="T" S NUMBER=+NUMBER,VD="TM"
 I $TR(NUMBER,"1234567890","")="TMZ" S NUMBER=+NUMBER,VD="TMZ"
 I $TR(NUMBER,"1234567890","")="Z" S NUMBER=+NUMBER,VD="TZ"
 I $TR(NUMBER,"1234567890","")="HZ" S NUMBER=+NUMBER,VD="HZ"
 I $TR(NUMBER,"1234567890","")="HMK" S NUMBER=+NUMBER,VD="HMK"
 I $TR(NUMBER,"1234567890","")="ITM"!($$DOC="ITM") S NUMBER=+NUMBER,VD="ITM"
 I $TR(NUMBER,"1234567890","")="ITZ"!($$DOC="ITZ") S NUMBER=+NUMBER,VD="ITZ"
 I $TR(NUMBER,"1234567890","")="IHZ"!($$DOC="IHZ") S NUMBER=+NUMBER,VD="IHZ"
 I $TR(NUMBER,"1234567890","")="IHB"!($$DOC="IHB") S NUMBER=+NUMBER,VD="IHB"
 I $TR(NUMBER,"1234567890","")="IHBZ"!($$DOC="IHBZ") S NUMBER=+NUMBER,VD="IHBZ"
 I $TR(NUMBER,"1234567890","")="HZMH" S NUMBER=+NUMBER,VD="HZMH"
 ;
 I VD="ITM"!(VD="IHB")!(VD="ITZ")!(VD="IHBZ")!(VD="IHZ") D PUT^%W1PRM("DOC",VD) Q NUMBER
 ;
 I VD="HZ" D  Q NOM
 .S NOM=0 N LKH S LKH=$$GETP^%W1PRM("LKH") Q:LKH=""
 .S NOM=$$^W4ORDD(LKH,NUMBER)
 .D PUT^%W1PRM("DOC",VD)
 ;
 S NOM=$G(@$$^W4GL("W4DIR")@(VD,NUMBER))
 I NOM="" S NOM=$P($G(@$$^W4GL("KLIN")@(VD,NUMBER)),"W",2)
 Q NOM
 ;
 ;
TOT(NOM) ;
 N GLTMP
 S MAM=$$MAM(NOM)
 S AHMAM=$$AHMAM(NOM)
 ;
 S SHUM=$$SUMTD(NOM)
 ;
 S DISCPRC=$$DISCPRC(NOM)
 S DISCNIS=$$DISCNIS(NOM)
 S DMSH=$$DMSH(NOM)
 S IGUL=$$IGUL(NOM)
 ;
 S SHUMLD=SHUM-IGUL-DMSH+DISCNIS
 N SHUMLD0 S SHUMLD0=SHUMLD
 I DISCPRC<100 S SHUMLD=$J(SHUMLD*100/(100-DISCPRC),2,2)
 S DISCA=$J(SHUMLD-SHUMLD0,2,2)
 ;
 S LMAM=SHUM-MAM
 S BFMAM=0
 I SHUM S BFMAM=$J(LMAM*(SHUMLD/SHUM),2,2)
 Q
 ;
 ;
INIT ;
 D ^%W1ARG,^W3CSS,GLTMP
 I $G(FIRST) K @GLTMP
 I $G(NUMBER),$$IHBTM(NUMBER) Q
 ;
 D PUT^%W1PRM("LKH",$G(LKH))
 D PUT^%W1PRM("SPK",$G(SPK))
 D PUT^%W1PRM("DAT",$$SPA^%L1FRM($G(DAT)))
 D PUT^%W1PRM("DOC",$G(DOC))
 S $P(@GLTMP,"\")=$G(LKH)
 S $P(@GLTMP,"\",2)=$G(LKH1)
 S $P(@GLTMP,"\",3)=$G(KTV)
 S $P(@GLTMP,"\",4)=$G(DAT)
 S $P(@GLTMP,"\",5)=$G(AHMAM)
 Q
 ;
DEL(SH) ;
 D PUT^%W3DEB("W4DOC-DEL","SH=SH")
 N GLTMP D GLTMP
 D DEL^%L1GSEQ(GLTMP,SH)
 Q
 ;
HBMIN(NOMDOC) ;
 N I,J
 F I=1:1 Q:'$D(@GL@(NOMDOC,I))  D
 .S $P(^(I),"\",4)=-$P(^(I),"\",4)
 F J=6,7,10,13,14 D
 .S $P(@GL@(NOMDOC),"\",J)=-$P($G(@GL@(NOMDOC)),"\",J)
 Q
 ;
HBZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="TZ" Q 1
 Q 0
 ;
IHBZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="IHBZ" Q 1
 I $$GETDOC(NOM)="[-]" Q 1
 Q 0
 ;
IHZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="IHZ" Q 1
 Q 0
 ;
ITM(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="ITM" Q 1
 Q 0
 ;
ITZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="ITZ" Q 1
 Q 0
 ;
TMZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="TMZ" Q 1
 Q 0
 ;
RED(STAM) ;
 Q "color:"_$S($$HBZ($G(NOM))!$$ITZ($G(NOM)):"black",1:"red")
 ;
NORED(STAM) ;
 Q "color:"_$S($$HBZ($G(NOM))!$$ITZ($G(NOM)):"red",1:"black")
 ;
W4DIRD(DT,NOMDOC) ;
 S NOMDOC=+NOMDOC
 L +@$$^W4GL("W4DIRD")@(DT):1
 S @$$^W4GL("W4DIRD")@(DT,NOMDOC)=$H
 L -@$$^W4GL("W4DIRD")@(DT)
 D ^%S2GLSV($$^W4GL("W4DIRD")_"("_DT_","""_NOMDOC_""")",$$^W4FGIB)
 Q
 ;
PRMSER(STAM) ;
 Q $$SERNUM^W3PRM
 ;
INP(NUMBER) ;
 Q ($E($$DOC($G(NUMBER)))="I")
 ;
MLYPRT(STAM) ;
 I $$INP Q 1
 I $$GETP^%W1PRM("ELPOS")&'$$GETP^%W1PRM("PRKUP") Q 1
 Q 0
 ;
DOCNOM(NUMBER) ;
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="ITM" Q "ITM"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="ITZ" Q "ITZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="IHZ" Q "IHZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="IHB" Q "IHB"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="IHBZ" Q "IHBZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="[-]" Q "IHBZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="Z" Q "HBZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="T" Q "TM"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="TMZ" Q "TMZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="HZ" Q "HZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="HZMH" Q "HZMH"
 Q ""
 ;
DOC(NUMBER) ;
 N D S D=""
 I $G(NUMBER),$L($TR(NUMBER,"1234567890","")) S D=$$DOCNOM(NUMBER) I D'="" Q D
 ;
 I $L($G(%ARG("DOC"))) S D=%ARG("DOC")
 I $G(D)="" S D=$$GETP^%W1PRM("DOC")
 Q D
 ;
IHBTM(NOM) ;
 I $G(%ARG("IHBTM")) Q 1
 I '$G(NOM) Q 0
 D GLTMP
 I $D(@GLTMP@("ITM"))>9 Q 1
 I $D(@$$GL@(NOM,"ITM"))>9 Q 1
 I $D(@$$GL@(NOM,"ITZ"))>9 Q 1
 Q 0
 ;
GETTMP(NOM) ;
 D GLTMP
 I '$G(NOM) Q 1
 I $$INP,$D(@GLTMP)=11 Q 1
 Q 0
 ;
 ;
COPYORD2INVOICE(PRM) ;
 D PUT^%W3DEB("W4DOC-COPYORD","PRM=PRM")
 N ORG,NOMORD,NOM,SUG,I,PRMAM,NUMBER,NOM,NUMBERORD,DOC
 ;
 S ORG=$P(PRM,";",1),SUG="O"
 I ORG["_I" S ORG=$P(ORG,"_I"),SUG="I"
 ;
 S NUMBERORD=$P(PRM,";",2)
 S NUMBER=$P(PRM,";",3)
 S NOMORD=NUMBERORD
 S PRMAM=$P(PRM,";",4)
 S DOC=$P(PRM,";",5)
 ;
 I SUG="O" D
 .I DOC="HZ" S NOMORD=$$^W4ORDD(ORG,NUMBERORD)
 .I DOC="HZMH" S NOMORD=$G(@$$^W4GL("W4DIR")@(DOC,+NUMBERORD))
 ;
 I $$INP S PRMAM=0
 ;
 I 'NOMORD Q "NOORD"
 I SUG="I",'NUMBER Q "NOHB"
 ;
 S NOM=$$NOM(NUMBER)
 ;
 N W4INP,W4ORD
 S W4INP=$$^W4GL("W4INP")
 S W4ORD=$$^W4GL("W4ORD")
 I DOC="HZMH" S W4ORD=$$^W4GL("W4DOC")
 N VD S VD=DOC ;; S VD=$$GETP^%W1PRM("DOC")
 ;
 I SUG="I",$L(VD),$D(@W4INP@(ORG,VD,NOM,1)) Q "DOCEXIST"
 I SUG="O",NOM,$D(@$$^W4GL("W4DOC")@(NOM,1)) Q "DOCEXIST"
 ;
 N BELONG S BELONG=$$BELONG(NOMORD,VD,NOM)
 I BELONG,DOC'="HZMH" Q "ORDBELONG2DOC;"_BELONG
 I BELONG,DOC="HZMH" Q "PRICEOFFERBELONG2DOC;"_BELONG
 ;
 D GLTMP K @GLTMP
 ;
 I SUG="I" S @GLTMP=$G(@W4INP@(ORG,"IHZ",NOMORD))
 ;
 S @GLTMP@("ORD")=NUMBERORD
 ;
 I SUG="I" D
 .F I=1:1 Q:'$D(@W4INP@(ORG,"IHZ",NOMORD,I))  D
 ..S @GLTMP@(I)=$G(@W4INP@(ORG,"IHZ",NOMORD,I))
 ;
 I SUG="O" D
 .F I=1:1 Q:'$D(@W4ORD@(NOMORD,I))  D
 ..S @GLTMP@(I)=$G(@W4ORD@(NOMORD,I))
 ..I PRMAM,'$$INP D
 ...N A S A=$G(@GLTMP@(I))
 ...I '$P(A,"\",11) D
 ....S $P(@GLTMP@(I),"\",3)=$J($P(@GLTMP@(I),"\",3)*(100+$$MAM^W4PRM)*.01,2,2)
 ..I 'PRMAM D
 ...N A S A=$G(@GLTMP@(I))
 ...I $P(A,"\",11) D
 ....N AHMAM S AHMAM=$P(A,"\",5)
 ....S $P(@GLTMP@(I),"\",3)=$J($P(@GLTMP@(I),"\",3)*100/(100+AHMAM)*.01,2,2)
 ;
 Q "OK"
 ;
 ;
EXISTORD(ORD)
 N ORG,VD,NOM
 S ORG=$P(ORD,";",2),VD=$P(ORD,";",3),ORD=$P(ORD,";")
 I ORG="" Q 0
 I 'ORD Q 0
 ;
 I ORG["_I",$E(VD)'="I" S VD="I"_VD
 ;
 I $E(VD)'="I",ORG'["_I" D  Q +NOM
 .I ORD["HZMH" S NOM=$G(@$$^W4GL("W4DIR")@("HZMH",+ORD)) Q
 .S NOM=$$^W4ORDD(ORG,+ORD)
 ;
 S ORG=$P(ORG,"_")
 Q $D(@$$^W4GL("W4INP")@(ORG,"IHZ",ORD,1))
 ;
 ;
BELONG(ORD,VDOC,NOM)
 Q $$^W4BLNORD(ORD,$G(VDOC),$G(NOM))
 ;
COLOR(STAM) ;
 Q $$COLOR^W4LKH
 ;
SIZE(STAM) ;
 Q $$SIZE^W4LKH
 ;
NODISCST(STAM) ;
 Q $$NODISCST^W4LKH
 ;
SMBMTB(STAM) ;
 Q $$^W4SMBMTB
 ;
SELMTB ;
 N A,N
 W "<table dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<tr><td>"
 W "&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CURRENCY")_" "
 W "<select id=""selmtb"" onChange=""ChangeCurrency()"" >",!
  S N="" F  S N=$O(^[$$^W3MAIN]W4MTB(N)) Q:N=""  D
  .S A=$G(^(N))
  .W "<option value="""_N_""" "
  .I +N=+$G(%ARG("MTB")) W " selected=""selected"" "
  .W ">"_A_"</option>",!
 W "</select>",!
 W "  </td>"
 W " </tr>",!
 W "</table>",!
 Q
 ;
CHNPRC(PRM) ;
 N SH,EM,PRCO,EMO
 S SH=$P(PRM,";") I 'SH Q "-"
 S EM=$P(PRM,";",2)
 ;
 S PRCO=$$PRC(0,SH)
 S EMO=$$EM(0,SH)
 Q $J(PRCO*$$NEWKF^W4PRT(EM,EMO),2,2)
 ;
ERUADET ;
 N (JB,%ARG,%REM,NOM,VW)
 W "<table id=""Erua"" dir="""_$$^%W1DIR_""" width=""99%"" cellspacing=""3px"" cellpadding=""5px"" >",!
  W "<tr>"
   W "<td width=""10%"" align=""left"">"
     W $$^%W1DICT("ERUADATE")_" "
   W "</td>",!
   ;
   W "<td dir=""LTR"" align=""right"">",!
     I '$D(VW) D ^%W1DAT("ERUADATE",$$ERUADATE(NOM))
     I $D(VW) W $$RKV($$ERUADATE(NOM))
   W "</td>",!
   ;
   W "<td width=""14%"" align=""left"" >"
     W $$^%W1DICT("ERUATIME")
   W "</td>",!
   ;
   W "<td dir=""LTR"" align=""right"">"
     I '$D(VW) D TIME^%W1DAT("ERUATIME",$$ERUATIME(NOM))
     I $D(VW) W $$RKV($$ERUATIME(NOM))
   W "</td>",!
   ;
   W "<td>"
     W "&nbsp;&nbsp;&nbsp;"
     W $$^%W1DICT("GUESTSNUMBER")_$$NBSP^%L1FRM(3)
     I '$D(VW) D
     .W "<input id=""guests"" type=""text"" maxlength=""4"" size=""2"" "
     .W " value="""_$$GUESTS(NOM)_""" />"
     I $D(VW) W $$RKV($$GUESTS(NOM))
   W "</td>",!
   ;
   W "<td>"
     W "&nbsp;&nbsp;&nbsp;"
     W $$^%W1DICT("MAZMIN")_$$NBSP^%L1FRM(3)
     I '$D(VW) D
     .W "<input id=""mazmin"" type=""text"" maxlength=""14"" size=""12"" "
     .W " value="""_$$H2U^%L1FRM($$MAZMIN(NOM))_""" />"
     I $D(VW) W $$RKV($$H2U^%L1FRM($$MAZMIN(NOM)))
   W "</td>",!
   ;
   W "<td>"
     W "&nbsp;&nbsp;&nbsp;"
     W $$^%W1DICT("PELE")_$$NBSP^%L1FRM(3)
     I '$D(VW) D
     .W "<input id=""pelemazmin"" type=""text"" maxlength=""11"" size=""11"" "
     .W " value="""_$$PELEMAZMIN(NOM)_""" />"
     I $D(VW) W $$RKV($$PELEMAZMIN(NOM))
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
RKV(VL)
 N ST
 S ST="<span style=""font-weight:bold;"_$$FONTFM^W3CSS_""">"
 S ST=ST_VL
 S ST=ST_"</span>"
 Q ST
 ;
DIVPRCCSR ;
 W "<div id=""divprccsr"" dir="""_$$^%W1DIR_""" align=""center"" "
  W " style=""position:absolute;height:"_$$^W4KF(150)_"px;width:"_$$^W4KF(240)_"px;border:2px brown solid;display:none"" "
 W ">",!
 W "<p id=""cdnm""></p>",!
 W "<p>"_$$^%W1DICT("PRCCSR")_" <input type=""text"" id=""prccsr"" ",!
  W "onClick=""this.select()"" "
  W "size=""7"" />"
 W "</p>",!
 W "<p></p>",!
 W "<p>"
  W "<button onClick=""SbmPrcCSR('1')"" style=""color:darkgreen"">"_$$^%W1DICT("SUBMIT")_"</button>",!
  W $$NBSP^%L1FRM(3)
  W "<button onClick=""SbmPrcCSR('0')"" style=""color:red"">"_$$^%W1DICT("BACK")_"</button>",!
 W "</p>",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DOC0
W4DOC ; [ 12.06.17 12:38 ] [ 21.05.17 12:40 ] [ 11.05.17 10:04 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG S W4DOC=""
 S NUMBER=$G(%ARG("NUMBER"))
 I $G(SPK) D PUT^%W1PRM("SPK",SPK) D PUT^%W1PRM("LHBCUR",NUMBER_";"_SPK)
 ;
 I $TR($G(%ARG("NUMBER")),"0123456789","")="HZ",$G(LKH)="",$G(%ARG("SPK")),NUMBER D
 .S LKH=%ARG("SPK"),%ARG("LKH")=%ARG("SPK")
 .D PUT^%W1PRM("LKH",LKH)
 .D PUT^%W1PRM("NUMBER",+NUMBER)
 .D KILL^%W1PRM("SPK")
 .K %ARG("SPK")
 ;
 S NOM=$$NOM(NUMBER) ; --> NOM IN ^W4DOC
 S NUMBER=+NUMBER
 ;
 S DAT=$$DAT(NOM)
 S LKH=$$LKH(NOM)
 ;
 S DOC=$$GETDOC(NOM)
 D PUT^%W1PRM("DOC",DOC)
 ;
 D GLTMP S GL=$$GL($G(%ARG("NUMBER")))
 I $G(NUMBER) D PUT^%W1PRM("NUMBER",+NUMBER)
 ;
 I NOM,$D(@GL@(NOM))=11 D  ; --- DOC NUMBER --> GLTMP
 .K @GLTMP
 .M @GLTMP=@GL@(NOM)
 ;
 D KOTHSB(NUMBER,LKH,DAT,DOC)
 ;
 W "<br />",!
 ;
 I $$MTB^W4LKH D SELMTB
 ;
 D DAF1
 ;
 I $G(%ARG("NEWDOC")) K %ARG("NUMBER") S NOM=0,NUMBER=0
 ;
 W "<br/>"
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   I '$$HMKI^W4LHB D
   .W "<td>"
   .  N SBM S SBM=$S($$INP($G(%ARG("NUMBER")))!$$HZ!$$HZMH:"SUBMIT",1:"SUBMITANDPRINT")
   .  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT(SBM),"Submit('"_NOM_"')","color:green",",,,100")
   .W "</td>"
   ;
   I $$HMKI^W4LHB D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Pay",$$^%W1DICT("PAY"),"Pay('"_LKH_"')","color:green",",,,100")
   .W "</td>"
   ;
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
KOTHSB(NMB,LKH,DAT,DOC) ;
 D PUT^%W3DEB("W4DOC-KOTHSB","NMB=NMB&LKH=LKH&DAT=DAT&DOC=DOC")
 D ^W4KOTHSB(NMB,LKH,DAT,DOC)
 ;
 I $$INP,$$IHBTM(NMB) D LISTTM("GLTMP") ; --- RESHIMAT TM LE SIMUN
 ;
 I DOC="IHB"!(DOC="ITM")!(DOC="HBW")!(DOC="TM") D
 .W "<table dir="""_$$^%W1DIR_""">",!
 .D TBORD(DOC,NOM,"HZ")
 .I DOC="HBW"!(DOC="TM") D TBORD(DOC,NOM,"HZMH")
 .W "</table>",!
 Q
 ;
 ;
TBORD(DOC,NOM,DOCFROM) ;
 N ORG,SUG
 I $E(DOC)="I",'$G(SPK) Q
 I $E(DOC)="I" S ORG=SPK_"_I",SUG="I"
 E  S ORG=LKH,SUG="O"
 ;
 W "<tr>",!
   W "<td>",!
    N DOCNAME S DOCNAME="ORDER"
    I DOCFROM="HZMH" S DOCNAME="PRICEOFFER"
    W $$^%W1DICT(DOCNAME)
   W "</td>",!
   ;
   W "<td>"
    N IDORD S IDORD="order"
    I DOCFROM="HZMH" S IDORD="hzmh"
    W "<input id="""_IDORD_""" type=""text"" size=""5"" maxlength=""8"" "
      N VLORD S VLORD=+$$ORD(DOCFROM,ORG,NOM) S:VLORD=0 VLORD=""
      W " value="""_VLORD_""">",!
   W "</td>",!
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("FindOrd",$$^%W1DICT("FIND"),"FindOrd('"_DOCFROM_"','"_ORG_"','"_DAT_"')","color:black",",,,70")
   W "</td>",!
   ;
   W "<td>"
     D
     .N PROC S PROC="ShowOrd('"
     .D ROUNDBUT^%W1JS("ShowOrd",$$^%W1DICT("SHOW"),PROC_ORG_"','"_DOCFROM_"')")
   W "</td>",!
   ;
   N DOC S DOC=$$DOC($G(%ARG("NUMBER")))
   ;
   I $L(DOC) D
   .I SUG="I",$$IHBTM(NMB) Q
   .I SUG="I",$D(@$$^W4GL("W4INP")@(ORG,DOC,+$G(%ARG("NUMBER")),1)) Q
   .I SUG="O",$D(@$$^W4GL("W4ORD")@(+$G(%ARG("NUMBER")),1)) Q  ;-- ?????
   .W "<td>"
   .  N COPYTO S COPYTO="COPY2INVOICE"
   .  I $G(DOC)="ITM" S COPYTO="COPY2DLVDOC"
   .  D ROUNDBUT^%W1JS("Copy2Invoice",$$^%W1DICT(COPYTO),"CopyOrd2Invoice('"_DOCFROM_"','"_ORG_"')","color:darkblue",",,,120")
   .W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
ORD(DOCFROM,ORG,NOM) ;
 N SUG S SUG="O"
 I ORG["_I" S ORG=$P(ORG,"_I"),SUG="I"
 D GLTMP
 ;
 N TORD S TORD=$G(@GLTMP@("ORD"))
 I TORD,TORD["HZMH",DOCFROM="HZMH" Q TORD
 I TORD,TORD["HZMH",DOCFROM'="HZMH" Q ""
 I TORD,TORD'["HZMH",DOCFROM="HZMH" Q ""
 I TORD Q TORD
 ;
 I '$G(NOM) Q ""
 I SUG="I" Q $G(@$$^W4GL("W4INP")@(ORG,"IHB",+NOM,"ORD"))
 ;
 N ORD S ORD=$G(@$$^W4GL("W4DOC")@(+NOM,"ORD"))
 I DOCFROM="HZ",ORD'["HZMH" Q ORD
 Q $S(ORD:+ORD,1:"")
 ;
 ;
LISTTM(GL) ;
 N MZ,MT,N,ND
 W "<table width=""90%"" style=""font-weight:bold"">",!
 W " <tr><td "_$$^%W1ALIGN_" >"
 N VDTM F VDTM="ITM","ITZ" D
 .S N="" F  S N=$O(@GL@(VDTM,N)) Q:N=""  D
 ..S ND=N S:N<0 ND=-N
 ..I N<0!$$IHBZ S MZ(ND)="" Q
 ..S MT(ND)=""
 ;
 I $D(MT) D
 .W $$^%W1DICT("DLVDOCLIST")_" : "
 .S N="" F  S N=$O(MT(N)) Q:N=""  D
 ..W "<span "
 ..I $G(%ARG("SPK")) D
 ...W "style=""cursor:pointer"" "
 ...W "onClick=""ShowSupplInvoice('"_%ARG("SPK")_"','"_N_"ITM','ifr','ITM','')"" >"
 ..W N_"</span>" I $O(MT(N))'="" W ","
 .W " </td></tr>",!
 .W " <tr><td "_$$^%W1ALIGN_" >",!
 ;
 I $D(MZ) D
 .W $$^%W1DICT("DLVBACKDOCLIST")_" : "
 .S N="" F  S N=$O(MZ(N)) Q:N=""  D
 ..W N I $O(MZ(N))'="" W ","
 .W " </td></tr>",!
 W "</table>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td "_$$LTR
 I $$IHBZ($G(NOM))!($$ITZ($G(NOM))) W " style=""color:red"" "
 Q
LTR(STAM) ;
 Q " dir=""LTR"" align=""right"" "
 ;
TDN W "<td>&nbsp;</td>",!
 Q
 ;
COLST(NOM)
 S NOM=$G(NOM)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL,COL,N S COL=0
 ;
 I $$GETTMP(NOM) D  Q COL
 .S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  S COL=COL+1
 ;
 Q $O(@GL@(NOM,99999),-1)
 ;
 ;
SHOWPRMAM ;
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 W " <tr>"
 W "  <td>"
 W "  "_$$^%W1DICT("PRICENOTINCLUDEDTAX")_"&nbsp;"
 W "   <input type=""radio"" name=""prmam"" value=""0"" "_$S('$$PRMAM(NOM):" checked=""checked""",1:"")_" "_$S($G(NOM):" disabled=""disabled""",1:"")_" onClick=""OnChangePrMam()"""_" >"
 W "  </td>",!
 I $$GETP^%W1PRM("PRKUP") D
 .W "  <td>"
 .W "  "_$$^%W1DICT("PRICEINCLUDEDTAX")_"&nbsp;"
 .W "   <input type=""radio"" name=""prmam"" value=""1"" "_$S($$PRMAM(NOM):" checked=""checked""",1:"")_" "_$S($G(NOM):" disabled=""disabled""",1:"")_" onClick=""OnChangePrMam()"""_" >"
 .W "  </td>"
 .W "  <td style=""font-weight:bold"">"
 .W "  "_$$^%W1DICT("CSRITEMS")
 .W "  </td>"
 I $$GETP^%W1PRM("PRKUP")=0 D
 .W "  <td style=""font-weight:bold"">"
 .W "  "_$$^%W1DICT("MLYITEMS")
 .W "  </td>"
 ;
 W " </tr>",!
 W "</table>",!
 Q
 ;
DAF1 ;
  D DAFBODY(NOM)
  ;
  D TOT(NOM)
  ;
  D SHOWTOT(NOM)
ET ;
  W "</table>",!
  ;
  I '$$HMKI^W4LHB D
  .W "<br /><br />"
  .W "<div id=""divcmnt"" align=""center"" dir="""_$$^%W1DIR_""">",!
  . N EDITCMNT S EDITCMNT=""
  . D DIVCMNT^W4LCBCR(NOM,0,$$CMNT(NOM),$$PRV(NOM),0)
  .W "</div>",!
 Q
 ;
 ;
DAFBODY(NOM) ;
 N (JB,%ARG,LKH,DAT,NOM,NUMBER)
 ;
 I '$D(NOM) S NOM=0
 ;
 I $$MLYPRT D
 .W "<table dir="""_$$^%W1DIR_""">",!
 . W "<tr>"
 .  W "<td style=""color:red;font-weight:bold"">"
 .   W $$^%W1DICT("FORITEMSHOWPRESSKEY")
 .  W "</td>",!
 . W "</tr>",!
 .W "</table>",!
 ;
 I '$$INP D
 .D SHOWPRMAM
 .D PUT^%W1PRM("PRMAM",$$PRMAM(NOM))
 ;
 I $$ERUA^W3PRM,$$DOC(NOM)="HZMH" D ERUADET
 ;
 W "<br /><br />",!
 W "<table id=""TblInvcBd"" dir="""_$$^%W1DIR_""" width=""99%"" border=""1"" cellspacing=""0"" cellpadding=""3px"" >",!
  ;
  W "<tr>"
  S WD=18 ;;I $$NOTEDIT(NOM) S WD=14
  W " <th width="""_WD_"%"">"_$$^%W1DICT("CODE")_"</th>",!
  W " <th width=""19%"">"_$$^%W1DICT("ITEMNAME")_"</th>",!
  ;
  I $$PRMSER D
  .W " <th>"_$$^%W1DICT("SERIAL")_"</th>",!
  I $$MLYPRT D
  .W " <th>"_$$^%W1DICT("EM")_"</th>",!
  ;
  I $$COLOR D
  .W " <th>"_$$^%W1DICT("COLOR")_"</th>",!
  I $$SIZE D
  .W " <th>"_$$^%W1DICT("SIZE")_"</th>",!
  ;
  I '$$^W4MLQNMH D
  .W " <th>"_$$^%W1DICT("PRICE")_"</th>",!
  .W " <th>"_$$^%W1DICT("QUANTITY")_"</th>",!
  ;
  I $$^W4MLQNMH D
  .W " <th>"_$$^%W1DICT("QUANTITY")_"</th>",!
  .W " <th>"_$$^%W1DICT("PRICE")_"</th>",!
  ;
  I '$$NODISCST D
  .W " <th>"_$$^%W1DICT("DISCPERCENT")_"</th>",!
  ;
  W " <th>"_$$^%W1DICT("BEFORETAX")_"</th>",!
  W " <th width=""8%"">"_$$^%W1DICT("AFTERTAX")_"</th>",!
  ;
  I $$CMNST^W4LKH D
  .W " <th>"_$$^%W1DICT("COMMENT")_"</th>",!
  ;
  W "</tr>",!
  ;
  S COLST=$$COLST(NOM)
  I COLST<5 S COLST=5
  ;
  I $G(NOM) F I=1:1:COLST+1 D LINE(NOM,I)
  ;
  I '$G(NOM) D
  .N I,I1,N1 S I=0,N1=""
  .N GLTMP D GLTMP
  .N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  I N S I=I+1,N1=N D LINE(0,N)
  .I I<5 F I1=I+1:1:5 S N1=N1+1 D LINE(0,N1)
  Q
 ;
 ;
ONKEYPRESS ;
 S ONKEYPRESS=" onKeyPress=""OnKeyPress(event,'"_I_"','"_NOM_"')"" "
 Q
 ;
READONLY(NOM)
 S NOM=$G(NOM)
 N TX S TX=""
 I $$NOTEDIT(NOM) S TX=" readonly=""readonly"" "
 ;
 S TX=TX_" style=""color:"_$S($$HBZ(NOM)!$$ITZ(NOM)!$$IHBZ(NOM):"red",1:"black")
 I $$NOTEDIT(NOM) S TX=TX_";background-color:#eaeaea"
 S TX=TX_""""
 Q TX
 ;
NOTEDIT(NOM) ;
 N NOTEDIT S NOTEDIT=$$IHBTM(NOM)
 N GLTMP,MAXLINE
 D GLTMP S MAXLINE=$O(@GLTMP@(99999),-1)
 I NOTEDIT,$G(I),I>MAXLINE Q 0
 Q NOTEDIT
 ;
 ;
LINE(NOM,I) ;
 N ONKEYPRESS D ONKEYPRESS
 ;
 W "<tr id=""trid"_I_""" >"
 N PRM S PRM=NOM_";"_I
 ;
 W "<td align=""center"">" W $$INPCODE(PRM) W "</td>",!
 ;
 W "<td align=""center"">"_$$INPNAME(PRM)_"</td>",!
 ;
 I $$PRMSER D
 .W " <td align=""center"">"_$$INPSERNUM(PRM)_"</td>",!
 ;
 I $$MLYPRT D
 .W " <td>"
 . W $$INPEM(PRM)
 .W "</td>",!
 ;
 I $$COLOR D
 .W " <td>"_$$INPCOLOR(PRM)_"</td>",!
 I $$SIZE D
 .W " <td>"_$$INPSIZE(PRM)_"</td>",!
 ;
 I '$$^W4MLQNMH D
 .W " <td align=""center"">"_$$INPPRC(PRM)_"</td>",!
 .W " <td align=""center"">"_$$INPQN(PRM)_"</td>",!
 ;
 I $$^W4MLQNMH D
 .W " <td align=""center"">"_$$INPQN(PRM)_"</td>",!
 .W " <td align=""center"">"_$$INPPRC(PRM)_"</td>",!
 ;
 I '$$NODISCST D
 .W " <td align=""center"">"_$$INPDISC(PRM)_"</td>",!
 D TDLTR W " id=""bft"_I_""">"_$$INPBFTAX(PRM)_" "_$$SMBMTB_"</td>",!
 D
 .D TDLTR W " id=""aft"_I_""">"_$$INPAFTAX(PRM)_" "_$$SMBMTB_"</td>",!
 ;
 I $$CMNST^W4LKH D
 .W " <td align=""center"" >"_$$INPCMNST(PRM)_"</td>",!
 W "</tr>",!
 Q
 ;
 ;
INPCODE(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 ;
 I '$$NOTEDIT(NOM) D
 .S ST=ST_"<img id=""delete"" src=""w4delete.jpg"" "
 .S ST=ST_"onClick=""Delete('trid"_I_"')"" >"
 ;
 S ST=ST_"&nbsp;<input type=""text"" id=""code"_I_""" "
 S ST=ST_"size=""8"" maxlength=""14"" value="""_$$CODE(NOM,I)_""" "
 S ST=ST_" onKeyUp=""OnKeyCode(event,'"_I_"','"_NOM_"',this)"" "
 S ST=ST_$$READONLY(NOM)
 ;
 I '$$NOTEDIT(NOM) D
 .N GLP S GLP=$$GLP
 .S ST=ST_" onChange=""Find('code"_I_"','code"_I_"','name"_I_"','"_GLP_"')"" >"
 .S ST=ST_"&nbsp;<img src=""w3filter.jpg"" onClick=""Find('code"_I_"','code"_I_"','name"_I_"','"_GLP_"')"" >"
 .S ST=ST_"&nbsp;<img src=""w4plus.jpg"" onClick=""Plus('"_NOM_"','"_I_"')"" "
 ;
 S ST=ST_" >"
 Q ST
 ;
 ;
PRKUP(STAM) ;
 ;;I $$ONEGLPAR^W3PRM!$$GETP^%W1PRM("PRKUP") Q 1
 I $G(%ARG("PRKUP")) Q 1
 I $$GETP^%W1PRM("PRKUP") Q 1
 Q 0
 ;
GLP(STAM) ;
 N GLP
 S GLP="PAR"
 I $$MLYPRT S GLP="MLPAR"
 Q GLP
 ;
INPNAME(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N NAME,DIRNAME
 S DIRNAME=$$DIRNAME
 S NAME=$$SHOWNAME($$NAME(NOM,I))
 N ST
 S ST="<input type=""text"" dir="""_DIRNAME_""" size=""20"" "
 S ST=ST_"id=""name"_I_""" maxlength=""30"" value="""_NAME_""" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"onChange=""OnChangeName('"_I_"')"" >"
 Q ST
 ;
INPSERNUM(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" dir=""LTR"" size=""10"" "
 S ST=ST_"id=""sernum"_I_""" maxlength=""14"" value="""_$$SERIAL(NOM,I)_""" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_" onChange=""ChangeSum('"_I_"')"" >"
 Q ST
 ;
GLMLEM(STAM)
 Q $$^W4GL("MLMIDA")
 ;
INPEM(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,7) S:'VL VL=1
 ;
 ;;I $$NOTEDIT(NOM) D  Q ST
 .N ZN S ZN=$G(@$$GLMLEM@(VL))
 .I ZN="" S ST="&nbsp;" Q
 .S ST=$$H2U^%L1FRM(ZN)
 ;
 S ST="<select id=""em"_I_""" "
 S ST=ST_" onChange=""OnChangeEm('"_I_"')"" "
 I $$NOTEDIT(NOM) S ST=ST_" disabled=""disabled"" "
 S ST=ST_">"
 ;
 I '$D(@$$^W4GL("MLMIDA")@(1)) S @$$GLMLEM@(1)="dcigi"
 ;
 N N S N="" F  S N=$O(@$$GLMLEM@(N)) Q:N=""  D
 .S ST=ST_"<option value="""_N_""" "_$S(N=VL:" selected=""selected"" ",1:"")_">"
 .;;S ST=ST_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>"
 .S ST=ST_$$H2U^%L1FRM($G(^(N)))_"</option>"
 ;
 S ST=ST_"</select>"
 Q ST
 ;
 ;
INPCOLOR(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,9)
 ;
 I $$NOTEDIT(NOM) D  Q ST
 .N ZN S ZN=$G(@$$^W4GL("W4COLOR")@(VL))
 .I ZN="" S ST="&nbsp;" Q
 .S ST=$$H2U^%L1FRM(ZN)
 ;
 S ST="<select id=""color"_I_""" "
 ;;S ST=ST_" onChange=""ChangeSum('"_I_"')"" "
 S ST=ST_">"
 ;
 I '$D(@$$^W4GL("W4COLOR")@(1)) S @$$^W4GL("W4COLOR")@(1)="xegyi"
 ;
 S ST=ST_"<option value=""0"">"_$$^%W1DICT("CHOICECOLOR")_"</option>"
 N N S N="" F  S N=$O(@$$^W4GL("W4COLOR")@(N)) Q:N=""  D
 .S ST=ST_"<option "_$S(N=VL:" selected=""selected"" ",1:"")_" >"
 .S ST=ST_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>"
 ;
 S ST=ST_"</select>"
 Q ST
 ;
 ;
INPSIZE(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,10)
 I $$NOTEDIT(NOM) D  Q ST
 .N ZN S ZN=$G(@$$^W4GL("W4SIZE")@(VL))
 .I ZN="" S ST="&nbsp;" Q
 .S ST=$$H2U^%L1FRM(ZN)
 ;
 S ST="<select id=""size"_I_""" "
 ;;S ST=ST_" onChange=""ChangeSum('"_I_"')"" "
 S ST=ST_">"
 ;
 S ST=ST_"<option value=""0"">"_$$^%W1DICT("CHOICESIZE")_"</option>"
 N N S N="" F  S N=$O(@$$^W4GL("W4SIZE")@(N)) Q:N=""  D
 .S ST=ST_"<option "_$S(N=VL:" selected=""selected"" ",1:"")_" >"
 .S ST=ST_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>"
 ;
 S ST=ST_"</select>"
 Q ST
 ;
 ;
INPPRC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" "_$$LTR_" size=""4"" "
 S ST=ST_"id=""prc"_I_""" maxlength=""8"" onClick=""FocSel(this)"" "
 S ST=ST_"onKeyUp=""KeyUpRkv(event,'"_I_"')"" onChange=""OnChangePrice('"_I_"')"" "
 S ST=ST_$G(ONKEYPRESS) ;;_" "_$$READONLY(NOM)
 S ST=ST_"onBlur=""OnChangeSum(this)"" value="""_$$NUM($$PRC(NOM,I))_""">"
 Q ST
 ;
INPQN(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" "_$$LTR_" size=""4"" id=""qn"_I_""" "
 S ST=ST_"maxlength=""7"" onClick=""FocSel(this)"" "
 S ST=ST_"onKeyUp=""KeyUpRkv(event,'"_I_"')"" onBlur=""OnChangeSum(this)"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"value="""_$$NUM($$QN(NOM,I))_""">"
 Q ST
 ;
INPDISC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" "_$$LTR_" align=""right"" size=""4"" "
 S ST=ST_"id=""disc"_I_""" maxlength=""6"" onClick=""FocSel(this)"" "
 S ST=ST_"onKeyUp=""KeyUpRkv(event,'"_I_"')"" onBlur=""DiscItem(this)"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"value="""_$$NUM($$DISC(NOM,I))_""">"
 Q ST
 ;
INPBFTAX(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 Q $$NUM($$BFTAX(NOM,I))
 ;
INPAFTAX(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 Q $$NUM($$AFTAX(NOM,I))
 ;
INPCMNST(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N CMNT,DIRNAME
 S DIRNAME=$$DIRNAME
 S CMNT=$$SHOWCMNST($$CMNST(NOM,I))
 N ST
 S ST="<textarea dir="""_DIRNAME_""" cols=""30"" rows=""1"" "
 S ST=ST_"id=""cmnt"_I_""" maxlength=""60"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_" onChange=""OnChangeComment('"_I_"')"" >"_CMNT_"</textarea>"
 Q ST
 ;
 ;
SHOWTOT(NOM)
  W "<tr>"
  D SPACE
  S AHMAM=$$AHMAM(NOM)
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  D TDLTR W " id=""bftot""><b>"_$J(SHUMLD*100/(100+AHMAM),2,2)_" "_$$SMBMTB_"</b></td>"
  D
  .D TDLTR W " id=""aftot""><b>"_$J(SHUMLD,2,2)_" "_$$SMBMTB_"</b></td>"
  W "</tr>",!
  ;
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("AFTERTAX")_"&nbsp;</td>"
   D TDLTR W " id=""tot""><b>"_$J($G(SHUMLD),2,2)_" "_$$SMBMTB_"</b></td>"
   D LASTTD
  W "</tr>",!
  ;
  W "<tr>"
  D SPACE
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DISCPERCENT")_"&nbsp;"
   W "<input type=""text"" dir=""LTR"" onFocus=""FocSel(this)"" style="""_$$RED_""" id=""discprc"" size=""3"" maxlength=""6"" value="""_$$DISCPRC(NOM)_""" onKeyUp=""SumDoc(0)"" >"
   W "</td>"
   W "<td dir=""LTR"" align=""right"" id=""disca"" style="""_$$RED_""">"_DISCA_" "_$$SMBMTB_"</td>"
   D LASTTD
  W "</tr>",!
  ;
  W "<tr>"
  D SPACE
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DISCNIS")_"&nbsp;</td>",!
  W "<td dir=""LTR"" align=""right"">"
   W "<input type=""text"" dir=""LTR"" style="""_$$RED_""" onFocus=""FocSel(this)"" id=""discnis"" size=""6"" maxlength=""6"" value="""_$$DISCNIS(NOM)_""" onKeyUp=""SumDoc(0)"" >"
   W " "_$$SMBMTB
   W "</td>"
   D LASTTD
  W "</tr>",!
  ;
  W "<tr>"
  D SPACE
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DLVPAY")_"&nbsp;</td>"
  W "<td dir=""LTR"" align=""right"">"
   W "<input type=""text"" onFocus=""FocSel(this)"" "_$$LTR_" id=""dlvpay"" size=""6"" maxlength=""6"" style="""_$$NORED_""" value="""_$$DMSH(NOM)_""" onKeyUp=""SumDoc(0)"" >"
   W " "_$$SMBMTB
   W "</td>"
   D LASTTD
  W "</tr>",!
  ;
  I $$^W4NOIGUL D SHOWMAM
  ;
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
   D TDLTR W " id=""total""><b>"_$J(SHUM-IGUL,2,2)_" "_$$SMBMTB_"</b></td>"
   D LASTTD
  W "</tr>",!
  ;
  I '$$^W4NOIGUL D
  .W "<tr>"
  . D SPACE
  . W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("IGUL")_"&nbsp;</td>"
  . D TDLTR W " id=""igul""><b>"_$J(IGUL,2,2)_" "_$$SMBMTB_"</b></td>"
  . D LASTTD
  .W "</tr>",!
  .;
  .D SHOWMAM
  .
  .W "<tr>" D SPACE
  . W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTALROUNDED")_"&nbsp;</td>"
  . D TDLTR W " id=""itot""><b>"_$J($J(SHUM,0,0),2,2)_" "_$$SMBMTB_"</b></td>"
  . D LASTTD
  .W "</tr>",!
  ;
 Q
 ;
 ;
LASTTD ;
 I '$$NOTEDIT(NOM) W "<td>&nbsp;</td>",!
 Q
 ;
SHOWMAM ;
 S AHMAM=$$AHMAM(NOM)_"%"
 W "<tr>"
 D SPACE
 W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TAX",AHMAM)_"&nbsp;</td>"
  D TDLTR W " id=""tax""><b>"_$J($G(MAM),2,2)_" "_$$SMBMTB_"</b></td>"
  D LASTTD
 W "</tr>",!
 Q
 ;
GETLKH(NUMBER)
 I $$INP($G(NUMBER)) Q $$SPK
 Q $$GETP^%W1PRM("LKH")
 ;
SPK(STAM)
 N SPK S SPK=0
 I $G(%ARG("SPK")) S SPK=%ARG("SPK")
 I 'SPK S SPK=$$GETP^%W1PRM("SPK")
 I SPK["_" S SPK=$P(SPK,"_")
 Q SPK
 ;
GETDAT(STAM)
 Q $$SPA^%L1FRM($$GETP^%W1PRM("DAT"))
 ;
GETDOC(NOMDOC) ;
 S NOMDOC=$G(NOMDOC)
 N VD S VD=""
 ;
 I NOMDOC,$$GLOBNAME(NOMDOC)="W4DOC" D  I $L(VD) Q VD
 .I $D(@$$GL@(NOMDOC,"H")) S VD="HBW" Q
 .I $D(@$$GL@(NOMDOC,"TM")) S VD="TM" Q
 .I $D(@$$GL@(NOMDOC,"TZ")) S VD="TZ" Q
 .I $D(@$$GL@(NOMDOC,"HMK")) S VD="HMK" Q
 .I $D(@$$GL@(NOMDOC,"HZMH")) S VD="HZMH" Q
 ;
 I NOMDOC,$$GLOBNAME(NOMDOC)="W4INP" Q $$DOC(NOMDOC)
 ;
 I $G(%ARG("VD"))="HBZ" Q "TZ"
 I $$GETP^%W1PRM("VD")="HBZ" Q "TZ"
 I $G(%ARG("VD"))="",$L($G(%ARG("DOC"))) Q %ARG("DOC")
 I $$HZ^W4LHB Q "HZ"
 I $$TM^W4LHB Q "TM"
 I $$HMKI^W4LHB Q "HMK"
 I $G(%ARG("VD"))="ITZ" Q "ITZ"
 I $$GET^%W1PRM("VD")="ITZ" Q "ITZ"
 I $G(%ARG("VD"))="IHZ" Q "IHZ"
 I $$GET^%W1PRM("VD")="IHZ" Q "IHZ"
 Q $$DOC(NOMDOC)
 ;
 ;
HZ(STAM) ;
 Q $$HZ^W4LHB
 ;
HZMH(STAM) ;
 Q $$HZMH^W4LHB
 ;
GETPRMAM(STAM)
 Q $$GET^%W1PRM("PRMAM")
 ;
PUTHD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D GLTMP
 S ST=PRM
 S TZ=$P(ST,";")
 S LKH=$$GETLKH
 D PUT^%W3DEB("W4DOC-PUTHD","ST=ST & LKH=LKH")
 ;
 I TZ,LKH D
 .I $$INP D PUT^W4SPK(LKH,TZ,"TZ") Q
 .D PUT^W4L(LKH,TZ,"TZ")
 ;
 S DISCPRC=$P(ST,";",2)
 S DISCNIS=$P(ST,";",3)
 S DMSH=$P(ST,";",4)
 S HRA=$$CNWEB^%L1FRM($P(ST,";",5))
 S HRA=$$INVH^%L1FRM(HRA)
 S MTB=$P(ST,";",6)
 ;
 S $P(@GLTMP,"\",9)=$TR(HRA,"\*","/X")
 S $P(@GLTMP,"\",12)=DISCPRC
 S $P(@GLTMP,"\",13)=DISCNIS
 S $P(@GLTMP,"\",14)=DMSH
 S $P(@GLTMP,"\",15)=TZ
 S $P(@GLTMP,"\",18)=MTB
 Q
 ;
PUT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D GLTMP
 S ST=PRM
 S SH=$P(ST,";") Q:'SH
 S CD=$TR($$CNWEB^%L1FRM($P(ST,";",2)),"\","/")
 S NAME=$$CNWEB^%L1FRM($P(ST,";",3))
 I $$DIRNAME="RTL" S NAME=$$INVH^%L1FRM(NAME)
 S PRC=+$P(ST,";",4)
 S QN=+$P(ST,";",5)
 S DISC=+$P(ST,";",6)
 S SERNUM=$TR($P(ST,";",7),"\","/")
 S EM=$TR($P(ST,";",8),"\","/")
 S COLOR=$TR($P(ST,";",9),"\","/")
 S SIZE=$TR($P(ST,";",10),"\","/")
 S CMNST=$$CNWEB^%L1FRM($TR($P(ST,";",11),"\","/"))
 I $$DIRNAME="RTL" S CMNST=$$INVH^%L1FRM(CMNST)
 S EM=$$RKVG(EM)
 ;
 S @GLTMP@(SH)=CD_"\"_$TR(NAME,"\","/")_"\"_PRC_"\"_QN_"\"_DISC_"\\"_$$SPA^%L1FRM(EM)
 S $P(@GLTMP@(SH),"\",8)=SERNUM
 S COLOR=$$RKVG(COLOR)
 S SIZE=$$RKVG(SIZE)
 ;
 S $P(@GLTMP@(SH),"\",9)=COLOR
 S $P(@GLTMP@(SH),"\",10)=SIZE
 S $P(@GLTMP@(SH),"\",11)=CMNST
 Q
 ;
 ;
RKVG(RKV)
 D
 .I RKV?1N.N.E S RKV=$P(RKV," ")_" "_$$INVH^%L1FRM($P(RKV," ",2,20)) Q
 .S RKV=$$INVH^%L1FRM(RKV)
 Q RKV
 ;
 ;
SUBMIT(PRM,PR) ; -- SAVE NEW
 N (JB,%ARG,%REM,PRM,PR)
 ;
 D GLTMP
 S TMP=($G(PR)="TMP")
 D PUT^%W3DEB("W4DOC-SUBMIT","PRM=PRM & PR=PR & TMP=TMP")
 ;
 S NOM=$P(PRM,";",1)
 S ORD=$P(PRM,";",2)
 S PRMAM=0
 I '$$INP S PRMAM=$P(PRM,";",3)
 S TZ=$P(PRM,";",4)
 ;
 S HRA=$P(PRM,";",5)
 S HRA=$$CNWEB^%L1FRM(HRA)
 S PRV=$P(HRA,"~",2)
 S HRA=$P(HRA,"~")
 S HRA=$$INVH^%L1FRM(HRA)
 ;
 S DISCPRC=$P(PRM,";",6)
 S DISCNIS=$P(PRM,";",7)
 S DMSH=$P(PRM,";",8)
 S MTB=$P(PRM,";",9)
 ;
 S ERUADATE=$P(PRM,";",10)
 S ERUATIME=$P(PRM,";",11)
 S GUESTS=$P(PRM,";",12)
 S MAZMIN=$$INVH^%L1FRM($P(PRM,";",13))
 S PELEMAZMIN=$P(PRM,";",14)
 ;
 S COLST=$$COLST(NOM)
 S SHUM=$P(PRM,";",15)
 S DATI=$P(PRM,";",16)
 S DATP=$P(PRM,";",17)
 ;
 S LKH=$$LKH(NOM)
 S DAT=$$DAT(NOM)
 S LKH1=$$LKHNAME(NOM)
 S KTV=$$KTV(NOM)
 ;
 I '$L(TZ),$$GETDOC(NOM)="HBW",$$PRMTZMAM,SHUM'<$$PRMTZMAM Q "NOTTZ"
 I TZ?1N.N,TZ,'$$^W4TZ(TZ) Q "ERRTZ"
 I '$$INP,'$$TZ^W4L(LKH),TZ D PUT^W4L(LKH,TZ,"TZ")
 ;
 I PRMAM="",'$$INP S PRMAM=$$GETPRMAM
 ;
SBMTV ;
 N GL S GL=$$GL
 S NMBDOC=0
 ;
 I 'TMP D
 .I 'NOM S NMBDOC=$$LASTNOM+1 ; --- IF NEW
 .
 .I $G(NOM) D
 ..N DATOLD,DT,VDOC
 ..S DATOLD=$$DAT(NOM) D PUT^%W3DEB("W4DOC-SUBMIT","DATOLD=DATOLD&NOM=NOM")
 ..D
 ...S DT=$$^%L1DC(DATOLD,3)
 ...S VDOC=$$DOC(NOM)
 ...
 ...I $$INP(NOM) D  ; ----- DELETE PREVIOUS VERSION OF DOCUMENT
 ....D KILL^W4INPDIR(DT,LKH,VDOC,+NOM)
 ....I VDOC="IHZ"!(NOM["IHZ") Q
 ....I VDOC="IHBZ"!(NOM["IHBZ"),$D(@$$^W4GL("W4INP")@($$SPK,"IHBZ",+NOM,"ITZ")) Q
 ....I VDOC="IHB"!(NOM["IHB"&(NOM'["IHBZ")),$D(@$$^W4GL("W4INP")@($$SPK,"IHB",+NOM,"ITM")) Q
 ....D ^W4SETMLY(DT,VDOC,LKH,+NOM,-1)
 ..
 ...I $$HZ(NOM) D  ; ----- DELETE PREVIOUS VERSION OF DOCUMENT
 ....N NUMBER S NUMBER=+$$GETP^%W1PRM("NUMBER")
 ....S @$$^W4GL("W4ORD")@(+NOM,"NUMBER")=NUMBER
 ....D KILL^W4ORDD(LKH,+NUMBER)
 ..
 ..S NMBDOC=NOM
 .
 .N GL0 S GL0=$E(GL,1,$L(GL)-1)
 .N I F I=1:1 Q:'$D(@GL@(NMBDOC,I))  K @GL@(NMBDOC,I) D
 ..D ^%S2GLSV(GL0_","""_NMBDOC_""","_I_")",$$^W4FGIB,"K")
 ;
 S (SSUMBF,SSUMAF)=0
 S AHMAM=$$AHMAM(0)
 ;
 ; --------------------- SAVING -----------------------------
 N AHMAM1
 N N,I,SQN S N="",I=0,SQN=0 F  S N=$O(@GLTMP@(N)) Q:N=""  I N D
 .N ST S ST=$G(^(N))
 .N QN,PRC,DISC,NAME,CD
 .S CD=$$CODE(0,N)
 .S QN=$$QN(0,N),PRC=$$PRC(0,N),DISC=$$DISC(0,N),NAME=$$NAME(0,N)
 .S MAMCD=$$MAM^W4DMAM(CD)
 .I 'QN,'PRC,'DISC,$L(NAME)=0 Q
 .S SQN=SQN+QN
 .S AHMAM1=$S(MAMCD:AHMAM,1:0)
 .
 .I 'TMP S I=I+1,@GL@(NMBDOC,I)=@GLTMP@(N) ; --- !!!!!!-- SAVING --!!!!!!!!!
 .
 .I '$$INP,PRMAM D
 ..S SUMAF=$J(QN*PRC*(100-DISC)*.01,2,2)
 ..S SUMBF=$J(SUMAF*100/(100+AHMAM1),2,2)
 .
 .I 'PRMAM!$$INP D
 ..S SUMBF=$J(QN*PRC*(100-DISC)*.01,2,2)
 ..S SUMAF=$J(SUMBF*(100+AHMAM1)*.01,2,2)
 .
 .S SSUMBF=SSUMBF+SUMBF
 .S SSUMAF=SSUMAF+SUMAF
 ;
 N BELONG
 I $G(ORD),ORD'["HZMH" S BELONG=$$BELONG($$^W4ORDD(LKH,ORD),$$DOC(NOM),NMBDOC) I BELONG Q "ORDBELONG2DOC;"_BELONG
 I $G(ORD),ORD["HZMH" S BELONG=$$BELONG(ORD,$$DOC(NOM),NMBDOC) I BELONG Q "ORDBELONG2DOC;"_BELONG
 ;
 I $G(ORD) D SETORD
 ;
 S SUMTD=(SSUMAF*(100-DISCPRC)*.01)-DISCNIS+DMSH
 I 'SQN,'SSUMAF,'SUMTD Q "NODATA!"
 ;
 S IGUL=0
 I '$$^W4NOIGUL D
 .S IGUL=$J($J(SUMTD,0,0)-$J(SUMTD,2,2),2,2)
 .S SUMTD=$J($J(SUMTD,0,0),2,2)
 ;
 S MAM=(SSUMAF-SSUMBF)+((SUMTD-SSUMAF)*AHMAM/(100+AHMAM))
 ;
 ;;S MAM=SUMTD*AHMAM/(100+AHMAM)
 S MAM=$J(MAM,2,2)
 ;
 D PUT^%W3DEB("W4DOC-SUBMIT","SSUMBF=SSUMBF & SSUMAF=SSUMAF & SUMTD=SUMTD & IGUL=IGUL & MAM=MAM")
 ;
 I 'TMP L +@GL@(NMBDOC):1
 ;
 N STHD
 I $$INP S DAT=DATI
 S STHD=LKH_"\"_$TR(LKH1,"\","/")_"\"_$TR(KTV,"\","/")_"\"_DAT_"\"_AHMAM_"\"_SUMTD_"\"_MAM_"\"_$ZD($H,"DD.MM.YY  24:60")_"\"_$TR(HRA,"\","/")_"\"_IGUL_"\"_PRMAM_"\"_DISCPRC_"\"_DISCNIS_"\"_DMSH_"\"_$TR(TZ,"\","/")_"\"_PRV
 ;
 N VDOC S VDOC=$$GETDOC(NOM)
 ;
 I $$INP D
 .I $G(DATP) S $P(STHD,"\",17)=DATP
 .I VDOC="IHB"!(VDOC="IHBZ") D SETITRA^W4SPK(LKH,SUMTD)
 ;
 S $P(STHD,"\",18)=MTB
 S $P(STHD,"\",21)=$$PRKUP
 ;
 S $P(STHD,"\",22)=ERUADATE
 S $P(STHD,"\",23)=ERUATIME
 S $P(STHD,"\",24)=GUESTS
 S $P(STHD,"\",25)=MAZMIN
 S $P(STHD,"\",26)=PELEMAZMIN
 ;
 D PUT^%W3DEB("W4DOC-SUBMIT","STHD=STHD&NMBDOC=NMBDOC")
 ;
 I 'TMP D  ; -------- SAVING
 .S @GL@(NMBDOC)=STHD
 .
 .I VDOC="IHB"!(VDOC="IHBZ"),$D(@GLTMP@("ITM"))>9!($D(@GLTMP@("ITZ"))>9) D
 ..N VDTM,VDTM1,TM1 F VDTM="ITM" D
 ..N TM S TM="" F  S TM=$O(@GLTMP@(VDTM,TM)) Q:TM=""  D
 ...S VDTM1=VDTM,TM1=TM I TM<0 S VDTM1="ITZ",TM1=-TM
 ...I VDOC="IHBZ" S VDTM1="ITZ"
 ...K @$$^W4GL("W4FREEDOC")@(LKH,VDTM1,TM1) ; LKH=SPK
 ...S @GL@(NMBDOC,"ITM",TM)=""
 ...I $L(VDOC) S @$$^W4GL("W4INP")@(LKH,VDTM1,TM1,VDOC)=NMBDOC
 .
 .K @GLTMP ; ---------- DELETE !
 ;
 I TMP S @GLTMP=STHD
 ;
 S NOMHSB=0
 N DT S DT=$$^%L1DC(DAT,3)
 ;
 I 'TMP D
 .I VDOC="HBW" D SVHBW Q
 .
 .I $$HBZ D SVHBZ Q
 .
 .I VDOC="TM" D SVTM Q
 .
 .I VDOC="HZMH",'NOM D SVHZMH Q
 .I VDOC="HZMH" S NOMHSB=+$$GETP^%W1PRM("NUMBER")
 .
 .I VDOC="HZ" D
 ..S @GL@(NMBDOC,"MKR")=$H
 ..N NUMBER S NUMBER=+$$GETP^%W1PRM("NUMBER")
 ..S NOMHSB=NUMBER
 ..D SET^W4ORDD(LKH,NUMBER,NMBDOC)
 ;
 I 'TMP,$$INP D
 .S NOMHSB=NMBDOC
 .D SET^W4INPDIR(DT,LKH,VDOC,NMBDOC)
 ;
 I 'TMP,VDOC'="HZMH",VDOC'="HZ" D
 .D PUT^%W3DEB("W4DOC-SUBMIT-SETMLY","DT=DT&VDOC=VDOC&LKH=LKH&NMBDOC=NMBDOC")
 .N VD S VD=$S($$INP:VDOC,1:"OUT")
 .D ^W4SETMLY(DT,VD,LKH,NMBDOC)
 ;
 L  ;
SUBMITE ;
 K @$$^W4MAIN("VRM")
 Q NOMHSB_$S($$HBZ:"Z",VDOC="TM":"T",VDOC="HZ":"HZ",VDOC="ITM":"ITM",VDOC="IHB":"IHB",VDOC="ITZ":"ITZ",VDOC="IHZ":"IHZ",VDOC="IHBZ":"IHBZ",VDOC="HZMH":"HZMH",1:"")
 ;
 ;
SETORD ;
 S @GL@(NMBDOC,"ORD")=ORD
 ;
 I $$INP,$D(@$$^W4GL("W4INP")@($$SPK,"IHZ",ORD,1)) D  Q
 .N DOC S DOC=$$DOC(NMBDOC) Q:DOC=""
 .S @$$^W4GL("W4INP")@($$SPK,"IHZ",ORD,DOC)=NMBDOC
 ;
 I '$$INP D
 .N LKH S LKH=$$GETP^%W1PRM("LKH") Q:LKH=""
 .
 .I ORD'["HZMH" D
 ..N NOMORD S NOMORD=$$^W4ORDD(LKH,ORD) Q:'NOMORD
 ..I $D(@$$^W4GL("W4ORD")@(NOMORD,1)) D
 ...S $P(@$$^W4GL("W4ORD")@(NOMORD),"\",20)=NMBDOC
 .
 .I ORD["HZMH" D
 ..N ORDN S ORDN=+ORD
 ..N NOMORD S NOMORD=$G(@$$^W4GL("W4DIR")@("HZMH",ORDN)) Q:'NOMORD
 ..S $P(@$$^W4GL("W4DOC")@(NOMORD),"\",20)=NMBDOC
 Q
 ;
 ;
SVDOC(VD,NMBDOC) ;
 S NOMHSB=$$^W4NEWNMB(VD)
 ;
 L +@GL@(NMBDOC):1
 S @GL@(NMBDOC,VD)=NOMHSB
 S @GL@(NMBDOC,VD,"MKR")=$H
 D ^%S2GLSV(GL_"("""_NMBDOC_""","""_VD_""")",$$^W4FGIB)
 L -@GL@(NMBDOC)
 ;
 L +@$$^W4GL("W4DIR")@(VD,NOMHSB):1
 S @$$^W4GL("W4DIR")@(VD,NOMHSB)=NMBDOC
 L -@$$^W4GL("W4DIR")@(VD,NOMHSB)
 ;
 N VD1 S VD1=VD I $$HBZ S VD1=VD_"Z"
 D ^%S2GLSV($$^W4GL("W4DIR")_"("""_VD1_""","_NOMHSB_")",$$^W4FGIB)
 D W4DIRD(DT,NMBDOC)
 Q
 ;
SVHBW ;-- INPUT: NMBDOC,DT,LKH,DAT,SUMTD
 N VDOC S VDOC="H"
 D SVDOC(VDOC,NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,"H","0H")
 D PUT^%W1PRM("MKRYD",NOMHSB_$$GETDOC)
 Q
 ;
SVHBZ ;-- INPUT: NMBDOC,LKH,DAT,SUMTD
 N VD S VD=$$GETDOC
 D HBMIN(NMBDOC)
 D SVDOC(VD,NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,VD,"0D")
 D PUT^%W1PRM("MKRYD",NOMHSB_VD)
 Q
 ;
SVTM ;-- INPUT: NMBDOC,LKH,DAT,SUMTD
 N VD S VD="TM"
 D SVDOC(VD,NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,VD,"0H")
 D
 .N NOMDOC S NOMDOC="DOC-"_NOMHSB
 .L +@$$^W4GL("P1HL3")@(LKH,NOMDOC):1
 .L +@$$^W4GL("P1HL1")@(LKH,NOMDOC):1
 .L +@$$^W4GL("P1HL1I")@(NOMDOC):1
 .S @$$^W4GL("P1HL3")@(LKH,NOMDOC)=$$^%L1DC(DAT,3)_"*"_SUMTD_"*"_DAT_"*"_$ZD($H,"24:60")_"**"_$TR(LKH1,"\*","/X")_"*"_AHMAM_"*"_MAM
 .S @$$^W4GL("P1HL1")@(LKH,NOMDOC)=@$$^W4GL("P1HL3")@(LKH,NOMDOC)
 .S @$$^W4GL("P1HL1I")@(NOMDOC,LKH)=""
 .D ^%S2GLSV($$^W4GL("W4DIR")_"("""_VD_""","_NOMHSB_")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL3")_"("""_LKH_""","""_NOMDOC_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL1")_"("""_LKH_""","""_NOMDOC_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL1I")_"("""_NOMDOC_""")",$$^W4FGIB)
 D PUT^%W1PRM("MKRYD",NOMHSB_$$GETDOC)
 Q
 ;
SVHZMH ;
 N VD S VD="HZMH"
 D SVDOC(VD,NMBDOC)
 D PUT^%W1PRM("MKRYD",NOMHSB_VD)
 Q
 ;
PUTHMK(STAM) ;
 N GL,GLTMP,NMBDOC,NOMHSB
 S GL=$$GL
 D GLTMP
 S NMBDOC=$$LASTNOM+1
 N VD S VD="HMK"
 ;
 N N,I S N="",I=0 F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .N ST S ST=$G(^(N))
 .S I=I+1,@GL@(NMBDOC,I)=@GLTMP@(N)
 ;
 S @GL@(NMBDOC)=$G(@GLTMP)
 ;
 S NOMHSB=$$^W4NEWNMB(VD)
 ;
 I $$GETP^%W1PRM("ELPOS") D
 .L +@$$^W4GL("P1HB")@(NOMHSB):1
 .N DT S DT=+$H
 .S @$$^W4GL("P1HB")@(NOMHSB)="W"_NMBDOC_"\"_DT_"\"_$H
 .S @$$^W4GL("P1HBI")@(DT,NOMHSB)=$H
 .L  ;
 ;
 S @GL@(NMBDOC,VD)=NOMHSB
 S @GL@(NMBDOC,VD,"MKR")=$H
 ;
 D ^%S2GLSV(GL_"("_+NMBDOC_")",$$^W4FGIB)
 ;
 L +@$$^W4GL("W4DIR")@(VD,NOMHSB):1
 S @$$^W4GL("W4DIR")@(VD,NOMHSB)=NMBDOC
 L -@$$^W4GL("W4DIR")@(VD,NOMHSB)
 D ^%S2GLSV($$^W4GL("W4DIR")_"("""_VD_""","""_NOMHSB_""")",$$^W4FGIB)
 ;
 D W4DIRD(+$H,NMBDOC)
 ;
 N LKH,DAT,SUMTD
 S LKH=$$LKH(NMBDOC)
 S DAT=$$DAT(NMBDOC)
 S SUMTD=$$SUMTD(NMBDOC)
 D ^W4HSBSV(NOMHSB,LKH,"W"_NMBDOC,$$^%L1DC(DAT,3),SUMTD,VD,"0")
 ;
 N DT S DT=$$^%L1DC(DAT,3)
 D PUT^%W3DEB("W4DOC-SUBMIT-PUTHMK","DT=DT&VDOC=VDOC&LKH=LKH&NMBDOC=NMBDOC")
 N VD S VD=$S($$INP:"VDOC",1:"OUT")
 D ^W4SETMLY(DT,VD,LKH,NMBDOC)
 ;
 D PUT^%W1PRM("MKRYD",NOMHSB_VD)
 Q NMBDOC_";"_NOMHSB
 ;
 ;
GL(NUMBER) ;
 I '$$INP($G(NUMBER)) Q $$^W4GL($$GLOBNAME($G(NUMBER)))
 Q $$^W4GL($$GLOBNAME($G(NUMBER)))_"("""_$$GETLKH($G(NUMBER))_""","""_$$DOC($G(NUMBER))_""")"
 ;
GLOBNAME(NUMBER)
 I $$INP($G(NUMBER)) Q "W4INP"
 I $$DOC(NUMBER)="HZ" Q "W4ORD"
 Q "W4DOC"
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMPHBK")
 Q
 ;
GLHR ;
 S GLHR=$$GL_"(NMBDOC,""CMNT"")"
 Q
 ;
 ;
GET(NOM,SH,NRZ)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL
 I $$GETTMP(NOM) D  Q VL
 .N GLTMP D GLTMP
 .S VL=$P($G(@GLTMP@(SH)),"\",NRZ)
 ;
 S VL=$P($G(@GL@(NOM,SH)),"\",NRZ)
 Q VL
 ;
CODE(NOM,SH) ;
 Q $$GET(NOM,SH,1)
 ;
NAME(NOM,SH) ;
 Q $$GET(NOM,SH,2)
 ;
PRC(NOM,SH) ;
 Q $J($$GET(NOM,SH,3),2,2)
 ;
QN1(NOM,SH) ;
 Q $$GET(NOM,SH,4)
 ;
DISC(NOM,SH) ;
 Q $$GET(NOM,SH,5)
 ;
EM(NOM,SH) ;
 Q $$GET(NOM,SH,7)
 ;
SERIAL(NOM,SH) ;
 Q $$GET(NOM,SH,8)
 ;
CLR(NOM,SH) ;
 Q $$GET(NOM,SH,9)
 ;
SZ(NOM,SH) ;
 Q $$GET(NOM,SH,10)
 ;
CMNST(NOM,SH) ;
 Q $$GET(NOM,SH,11)
 ;
QN(NOM,SH) ;
 N QN
 S QN=$$QN1(NOM,SH)
 I $$HBZ(NOM),$G(NOM) S QN=-QN
 Q QN
 ;
BFTAX(NOM,SH) ;
 I '$$QN(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 I $$PRMAM(NOM) Q $J($$SUMST(NOM,SH)*100/(100+$$AHMAM(NOM)),2,2)
 Q $J($$SUMST(NOM,SH),2,2)
 ;
AFTAX(NOM,SH) ;
 I '$$QN(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 I '$$PRMAM(NOM) Q $J($$SUMST(NOM,SH)*(100+$$AHMAM(NOM))*.01,2,2)
 Q $J($$SUMST(NOM,SH),2,2)
 ;
SUMST(NOM,SH)
 Q $J($$QN(NOM,SH)*$$PRC(NOM,SH)*(100-$$DISC(NOM,SH))*.01,2,2)
 ;
LASTNOM(STAM)
 Q $O(@GL@(999999),-1)
 ;
LKH(NOM) ;
 S NOM=$G(NOM)
 I 'NOM!$$INP Q $$GETLKH(NOM)
 N LKH S LKH=$P($G(@$$GL@(NOM)),"\",1)
 I LKH="" Q $$GETLKH(NOM)
 Q LKH
 ;
LKHNAME(NOM) ;
 N LKH S LKH=$$LKH(NOM)
 I '$G(NOM),$$INP Q $$NAME^W4SPK(LKH)
 I '$G(NOM),'$$INP Q $$LKH^W4L(LKH)
 N LKHNAME S LKHNAME=$P($G(@$$GL@(NOM)),"\",2)
 I $$INP,LKHNAME="" Q $$NAME^W4SPK(LKH)
 Q LKHNAME
 ;
KTV(NOM) ;
 N LKH S LKH=$$LKH(NOM)
 I '$G(NOM),$$INP Q $$KTVMM^W4SPK(LKH)
 I '$G(NOM),'$$INP Q $$KTVMM^W4L(LKH)
 N KTV S KTV=$P($G(@$$GL@(NOM)),"\",3)
 I $$INP,KTV=""  Q $$KTVMM^W4SPK(LKH)
 Q KTV
 ;
DAT(NOM) ;
 I $$IHBTM(NOM),$G(%ARG("DAT")) Q $$^%L1DC($G(%ARG("DAT")),".")
 I '$G(NOM) Q $$GETDAT
 N DAT
 N GLOB S GLOB=$$GL
 D PUT^%W3DEB("W4DOC-DAT","GLOB=GLOB & NOM=NOM")
 S DAT=$$SPA^%L1FRM($P($G(@GLOB@(NOM)),"\",4))
 I DAT="",$$INP Q $$GETDAT
 Q DAT
 ;
AHMAM(NOM) ;
 I '$G(NOM) Q $G(@$$^W4PRM@("MAM"))
 N AHMAM S AHMAM=$P($G(@$$GL@(NOM)),"\",5)
 I AHMAM="" Q $G(@$$^W4PRM@("MAM"))
 Q AHMAM
 ;
SUMTD(NOM) ;
 N SUMTD D GLTMP
 ;;I '$G(NOM) Q ""
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",6)
 S SUMTD=$P($G(@$$GL@(NOM)),"\",6)
 ;
 I $$HBZ(NOM),$G(NOM) S SUMTD=-SUMTD
 Q SUMTD
 ;
MAM(NOM) ;
 N MAM D GLTMP
 ;;I '$G(NOM) Q ""
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",7)
 S MAM=$P($G(@$$GL@(NOM)),"\",7)
 I NOM,$$HBZ(NOM) S MAM=-MAM
 Q MAM
 ;
KMAM(NOM) ;
 N AHMAM S AHMAM=$$AHMAM(NOM)
 N SUM S SUM=$$SUMTD(NOM)
 N MAM S MAM=$$MAM(NOM)
 N AHR S AHR=""
 I SUM'>MAM Q AHR
 S AHR=MAM*100/(SUM-MAM)
 Q $J(AHR/AHMAM,4,4)
 ;
ISSUE(NOM) ;
 I '$G(NOM) Q $ZD($H,"DD.MM.YY")
 Q $P($G(@$$GL@(NOM)),"\",8)
 ;
CMNT(NOM) ;
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $$H2U^%L1FRM($P($G(@GLTMP),"\",9))
 Q $$H2U^%L1FRM($P($G(@$$GL@(NOM)),"\",9))
 ;
PRV(NOM) ;
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",16)
 Q $P($G(@$$GL@(NOM)),"\",16)
 ;
IGUL(NOM) ;
 I '$G(NOM) Q ""
 D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",10)
 S IGUL=$P($G(@$$GL@(NOM)),"\",10)
 I $G(NOM),$$HBZ(NOM) S IGUL=-IGUL
 Q IGUL
 ;
PRMAM(NOM) ;
 I $$INP Q 0
 I '$G(NOM) Q $S($G(%ARG("PRMAM"))="":$$PRMAM^W4LKH,1:$G(%ARG("PRMAM")))
 Q $P($G(@$$GL@(NOM)),"\",11)
 ;
DISCPRC(NOM) ;
 N AHTMP,GLTMP
 D GLTMP
 S AHTMP=$P($G(@GLTMP),"\",12)
 I '$$INP,AHTMP="",$$AH^W4L($$LKH(NOM)) S AHTMP=$$AH^W4L($$LKH(NOM))
 I $$GETTMP(NOM) Q AHTMP
 Q $P($G(@$$GL@(NOM)),"\",12)
 ;
DISCNIS(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",13)
 N DISCNIS
 S DISCNIS=$P($G(@$$GL@(NOM)),"\",13)
 I $G(NOM),$$HBZ(NOM) S DISCNIS=-DISCNIS
 Q DISCNIS
 ;
DMSH(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",14)
 N DMSH
 S DMSH=$P($G(@$$GL@(NOM)),"\",14)
 I $G(NOM),$$HBZ(NOM) S DMSH=-DMSH
 Q DMSH
 ;
TZ(NOM) ;
 N TZ N GLTMP D GLTMP
 I '$G(NOM),$G(%ARG("LKH")) D  Q TZ
 .S TZ=$$TZ^W4L(%ARG("LKH"))
 I '$G(NOM),$G(%ARG("SPK")) D  Q TZ
 .S TZ=$$TZ^W4SPK(%ARG("SPK"))
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",15)
 Q $P($G(@$$GL@(NOM)),"\",15)
 ;
MTB(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",18)
 N MTB
 S MTB=$P($G(@$$GL@(NOM)),"\",18)
 Q MTB
 ;
PRKUPDOC(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",21)
 N PRKUP
 S PRKUP=$P($G(@$$GL@(NOM)),"\",21)
 Q PRKUP
 ;
GUESTS(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",24)
 N GUESTS
 S GUESTS=$P($G(@$$GL@(NOM)),"\",24)
 Q GUESTS
 ;
MAZMIN(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",25)
 N MAZMIN
 S MAZMIN=$P($G(@$$GL@(NOM)),"\",25)
 Q MAZMIN
 ;
PELEMAZMIN(NOM) ;
 S NOM=$G(NOM)
 N GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",26)
 N PELEMAZMIN
 S PELEMAZMIN=$P($G(@$$GL@(NOM)),"\",26)
 Q PELEMAZMIN
 ;
HRA(NOM) ;
 N HRA,GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",9)
 Q $P($G(@$$GL@(NOM)),"\",9)
 ;
ERUADATE(NOM) ;
 N HRA,GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",22)
 Q $P($G(@$$GL@(NOM)),"\",22)
 ;
ERUATIME(NOM) ;
 N HRA,GLTMP D GLTMP
 I $$GETTMP(NOM) Q $P($G(@GLTMP),"\",23)
 Q $P($G(@$$GL@(NOM)),"\",23)
 ;
DIRNAME()
 Q $$DIRNAME^W3PRM
 ;
SHOWNAME(NAME) ;
 I $$DIRNAME="RTL" Q $$H2U^%L1FRM(NAME)
 Q NAME
 ;
SHOWCMNST(TXT) ;
 I $$DIRNAME="RTL" Q $$H2U^%L1FRM(TXT)
 Q TXT
 ;
NUM(RKV)
 I '$G(RKV) Q "&nbsp;"
 Q RKV
 ;
SPACE D TDN,TDN
 I $$PRMSER D TDN
 I $$MLYPRT D TDN
 I $$COLOR D TDN
 I $$SIZE D TDN
 D TDN,TDN
 Q
 ;
PRMTZMAM(STAM) ;
 Q $$PRMTZMAM^W4HSBYAD
 ;
NOM(NUMBER) ;
 N VD S VD="H"
 N NOM I '$G(NUMBER) Q 0
 I $TR(NUMBER,"1234567890","")="T" S NUMBER=+NUMBER,VD="TM"
 I $TR(NUMBER,"1234567890","")="Z" S NUMBER=+NUMBER,VD="TZ"
 I $TR(NUMBER,"1234567890","")="HZ" S NUMBER=+NUMBER,VD="HZ"
 I $TR(NUMBER,"1234567890","")="HMK" S NUMBER=+NUMBER,VD="HMK"
 I $TR(NUMBER,"1234567890","")="ITM"!($$DOC="ITM") S NUMBER=+NUMBER,VD="ITM"
 I $TR(NUMBER,"1234567890","")="ITZ"!($$DOC="ITZ") S NUMBER=+NUMBER,VD="ITZ"
 I $TR(NUMBER,"1234567890","")="IHZ"!($$DOC="IHZ") S NUMBER=+NUMBER,VD="IHZ"
 I $TR(NUMBER,"1234567890","")="IHB"!($$DOC="IHB") S NUMBER=+NUMBER,VD="IHB"
 I $TR(NUMBER,"1234567890","")="IHBZ"!($$DOC="IHBZ") S NUMBER=+NUMBER,VD="IHBZ"
 I $TR(NUMBER,"1234567890","")="HZMH" S NUMBER=+NUMBER,VD="HZMH"
 ;
 I VD="ITM"!(VD="IHB")!(VD="ITZ")!(VD="IHBZ")!(VD="IHZ") D PUT^%W1PRM("DOC",VD) Q NUMBER
 ;
 I VD="HZ" D  Q NOM
 .S NOM=0 N LKH S LKH=$$GETP^%W1PRM("LKH") Q:LKH=""
 .S NOM=$$^W4ORDD(LKH,NUMBER)
 .D PUT^%W1PRM("DOC",VD)
 ;
 S NOM=$G(@$$^W4GL("W4DIR")@(VD,NUMBER))
 I NOM="" S NOM=$P($G(@$$^W4GL("KLIN")@(VD,NUMBER)),"W",2)
 Q NOM
 ;
 ;
TOT(NOM) ;
 N GLTMP
 S MAM=$$MAM(NOM)
 S AHMAM=$$AHMAM(NOM)
 ;
 S SHUM=$$SUMTD(NOM)
 ;
 S DISCPRC=$$DISCPRC(NOM)
 S DISCNIS=$$DISCNIS(NOM)
 S DMSH=$$DMSH(NOM)
 S IGUL=$$IGUL(NOM)
 ;
 S SHUMLD=SHUM-IGUL-DMSH+DISCNIS
 N SHUMLD0 S SHUMLD0=SHUMLD
 I DISCPRC<100 S SHUMLD=$J(SHUMLD*100/(100-DISCPRC),2,2)
 S DISCA=$J(SHUMLD-SHUMLD0,2,2)
 ;;S BFMAM=SHUMLD*100/(100+AHMAM)
 ;;S LMAM=SHUM*100/(100+AHMAM)
 ;
 S LMAM=SHUM-MAM
 S BFMAM=0
 I SHUM S BFMAM=$J(LMAM*(SHUMLD/SHUM),2,2)
 Q
 ;
 ;
INIT ;
 D ^%W1ARG,^W3CSS,GLTMP
 I $G(FIRST) K @GLTMP
 I $G(NUMBER),$$IHBTM(NUMBER) Q
 ;
 D PUT^%W1PRM("LKH",$G(LKH))
 D PUT^%W1PRM("SPK",$G(SPK))
 D PUT^%W1PRM("DAT",$$SPA^%L1FRM($G(DAT)))
 D PUT^%W1PRM("DOC",$G(DOC))
 S $P(@GLTMP,"\")=$G(LKH)
 S $P(@GLTMP,"\",2)=$G(LKH1)
 S $P(@GLTMP,"\",3)=$G(KTV)
 S $P(@GLTMP,"\",4)=$G(DAT)
 S $P(@GLTMP,"\",5)=$G(AHMAM)
 Q
 ;
DEL(SH) ;
 D PUT^%W3DEB("W4DOC-DEL","SH=SH")
 N GLTMP D GLTMP
 D DEL^%L1GSEQ(GLTMP,SH)
 Q
 ;
HBMIN(NOMDOC) ;
 N I,J
 F I=1:1 Q:'$D(@GL@(NOMDOC,I))  D
 .S $P(^(I),"\",4)=-$P(^(I),"\",4)
 F J=6,7,10,13,14 D
 .S $P(@GL@(NOMDOC),"\",J)=-$P($G(@GL@(NOMDOC)),"\",J)
 Q
 ;
HBZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="TZ" Q 1
 Q 0
 ;
IHBZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="IHBZ" Q 1
 I $$GETDOC(NOM)="[-]" Q 1
 Q 0
 ;
IHZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="IHZ" Q 1
 Q 0
 ;
ITM(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="ITM" Q 1
 Q 0
 ;
ITZ(NOM) ;
 S NOM=$G(NOM)
 I $$GETDOC(NOM)="ITZ" Q 1
 Q 0
 ;
RED(STAM) ;
 Q "color:"_$S($$HBZ($G(NOM))!$$ITZ($G(NOM)):"black",1:"red")
 ;
NORED(STAM) ;
 Q "color:"_$S($$HBZ($G(NOM))!$$ITZ($G(NOM)):"red",1:"black")
 ;
W4DIRD(DT,NOMDOC) ;
 S NOMDOC=+NOMDOC
 L +@$$^W4GL("W4DIRD")@(DT):1
 S @$$^W4GL("W4DIRD")@(DT,NOMDOC)=$H
 L -@$$^W4GL("W4DIRD")@(DT)
 D ^%S2GLSV($$^W4GL("W4DIRD")_"("_DT_","""_NOMDOC_""")",$$^W4FGIB)
 Q
 ;
PRMSER(STAM) ;
 Q $$SERNUM^W3PRM
 ;
INP(NUMBER) ;
 Q ($E($$DOC($G(NUMBER)))="I")
 ;
MLYPRT(STAM) ;
 I $$INP Q 1
 I $$GETP^%W1PRM("ELPOS")&'$$GETP^%W1PRM("PRKUP") Q 1
 Q 0
 ;
DOC(NUMBER) ;
 N D
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="ITM" Q "ITM"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="ITZ" Q "ITZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="IHZ" Q "IHZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="IHB" Q "IHB"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="IHBZ" Q "IHBZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="[-]" Q "IHBZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="Z" Q "HBZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="T" Q "TM"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="HZ" Q "HZ"
 I $G(NUMBER),$TR(NUMBER,"1234567890","")="HZMH" Q "HZMH"
 ;
 I $L($G(%ARG("DOC"))) S D=%ARG("DOC")
 I $G(D)="" S D=$$GETP^%W1PRM("DOC")
 Q D
 ;
IHBTM(NOM) ;
 I $G(%ARG("IHBTM")) Q 1
 I '$G(NOM) Q 0
 D GLTMP
 I $D(@GLTMP@("ITM"))>9 Q 1
 I $D(@$$GL@(NOM,"ITM"))>9 Q 1
 I $D(@$$GL@(NOM,"ITZ"))>9 Q 1
 Q 0
 ;
GETTMP(NOM) ;
 D GLTMP
 I '$G(NOM) Q 1
 I $$INP,$D(@GLTMP)=11 Q 1
 Q 0
 ;
 ;
COPYORD2INVOICE(PRM) ;
 D PUT^%W3DEB("W4DOC-COPYORD","PRM=PRM")
 N ORG,NOMORD,NOM,SUG,I,PRMAM,NUMBER,NOM,NUMBERORD,DOC
 ;
 S ORG=$P(PRM,";",1),SUG="O"
 I ORG["_I" S ORG=$P(ORG,"_I"),SUG="I"
 ;
 S NUMBERORD=$P(PRM,";",2)
 S NUMBER=$P(PRM,";",3)
 S NOMORD=NUMBERORD
 S PRMAM=$P(PRM,";",4)
 S DOC=$P(PRM,";",5)
 ;
 I SUG="O" D
 .I DOC="HZ" S NOMORD=$$^W4ORDD(ORG,NUMBERORD)
 .I DOC="HZMH" S NOMORD=$G(@$$^W4GL("W4DIR")@(DOC,+NUMBERORD))
 ;
 I $$INP S PRMAM=0
 ;
 I 'NOMORD Q "NOORD"
 I SUG="I",'NUMBER Q "NOHB"
 ;
 S NOM=$$NOM(NUMBER)
 ;
 N W4INP,W4ORD
 S W4INP=$$^W4GL("W4INP")
 S W4ORD=$$^W4GL("W4ORD")
 I DOC="HZMH" S W4ORD=$$^W4GL("W4DOC")
 N VD S VD=DOC ;; S VD=$$GETP^%W1PRM("DOC")
 ;
 I SUG="I",$L(VD),$D(@W4INP@(ORG,VD,NOM,1)) Q "DOCEXIST"
 I SUG="O",NOM,$D(@$$^W4GL("W4DOC")@(NOM,1)) Q "DOCEXIST"
 ;
 N BELONG S BELONG=$$BELONG(NOMORD,VD,NOM)
 I BELONG,DOC'="HZMH" Q "ORDBELONG2DOC;"_BELONG
 I BELONG,DOC="HZMH" Q "PRICEOFFERBELONG2DOC;"_BELONG
 ;
 D GLTMP K @GLTMP
 ;
 I SUG="I" S @GLTMP=$G(@W4INP@(ORG,"IHZ",NOMORD))
 ;
 S @GLTMP@("ORD")=NUMBERORD
 ;
 I SUG="I" D
 .F I=1:1 Q:'$D(@W4INP@(ORG,"IHZ",NOMORD,I))  D
 ..S @GLTMP@(I)=$G(@W4INP@(ORG,"IHZ",NOMORD,I))
 ;
 I SUG="O" D
 .F I=1:1 Q:'$D(@W4ORD@(NOMORD,I))  D
 ..S @GLTMP@(I)=$G(@W4ORD@(NOMORD,I))
 ..I PRMAM,'$$INP D
 ...N A S A=$G(@GLTMP@(I))
 ...I '$P(A,"\",11) D
 ....S $P(@GLTMP@(I),"\",3)=$J($P(@GLTMP@(I),"\",3)*(100+$$MAM^W4PRM)*.01,2,2)
 ..I 'PRMAM D
 ...N A S A=$G(@GLTMP@(I))
 ...I $P(A,"\",11) D
 ....N AHMAM S AHMAM=$P(A,"\",5)
 ....S $P(@GLTMP@(I),"\",3)=$J($P(@GLTMP@(I),"\",3)*100/(100+AHMAM)*.01,2,2)
 ;
 Q "OK"
 ;
 ;
EXISTORD(ORD)
 N ORG,VD,NOM
 S ORG=$P(ORD,";",2),VD=$P(ORD,";",3),ORD=$P(ORD,";")
 I ORG="" Q 0
 I 'ORD Q 0
 ;
 I ORG["_I",$E(VD)'="I" S VD="I"_VD
 ;
 I $E(VD)'="I",ORG'["_I" D  Q +NOM
 .I ORD["HZMH" S NOM=$G(@$$^W4GL("W4DIR")@("HZMH",+ORD)) Q
 .S NOM=$$^W4ORDD(ORG,+ORD)
 ;
 S ORG=$P(ORG,"_")
 Q $D(@$$^W4GL("W4INP")@(ORG,"IHZ",ORD,1))
 ;
 ;
BELONG(ORD,VDOC,NOM)
 Q $$^W4BLNORD(ORD,$G(VDOC),$G(NOM))
 ;
COLOR(STAM) ;
 Q $$COLOR^W4LKH
 ;
SIZE(STAM) ;
 Q $$SIZE^W4LKH
 ;
NODISCST(STAM) ;
 Q $$NODISCST^W4LKH
 ;
SMBMTB(STAM) ;
 Q $$^W4SMBMTB
 ;
SELMTB ;
 N A,N
 W "<table dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<tr><td>"
 W "&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CURRENCY")_" "
 W "<select id=""selmtb"" onChange=""ChangeCurrency()"" >",!
  S N="" F  S N=$O(^[$$^W3MAIN]W4MTB(N)) Q:N=""  D
  .S A=$G(^(N))
  .W "<option value="""_N_""" "
  .I +N=+$G(%ARG("MTB")) W " selected=""selected"" "
  .W ">"_A_"</option>",!
 W "</select>",!
 W "  </td>"
 W " </tr>",!
 W "</table>",!
 Q
 ;
CHNPRC(PRM) ;
 N SH,EM,PRCO,EMO
 S SH=$P(PRM,";") I 'SH Q "-"
 S EM=$P(PRM,";",2)
 ;
 S PRCO=$$PRC(0,SH)
 S EMO=$$EM(0,SH)
 Q $J(PRCO*$$NEWKF^W4PRT(EM,EMO),2,2)
 ;
ERUADET ;
 N (JB,%ARG,%REM,NOM,VW)
 W "<table id=""Erua"" dir="""_$$^%W1DIR_""" width=""99%"" cellspacing=""3px"" cellpadding=""5px"" >",!
  W "<tr>"
   W "<td width=""10%"" align=""left"">"
     W $$^%W1DICT("ERUADATE")_" "
   W "</td>",!
   ;
   W "<td dir=""LTR"" align=""right"">",!
     I '$D(VW) D ^%W1DAT("ERUADATE",$$ERUADATE(NOM))
     I $D(VW) W $$RKV($$ERUADATE(NOM))
   W "</td>",!
   ;
   W "<td width=""14%"" align=""left"" >"
     W $$^%W1DICT("ERUATIME")
   W "</td>",!
   ;
   W "<td dir=""LTR"" align=""right"">"
     I '$D(VW) D TIME^%W1DAT("ERUATIME",$$ERUATIME(NOM))
     I $D(VW) W $$RKV($$ERUATIME(NOM))
   W "</td>",!
   ;
   W "<td>"
     W "&nbsp;&nbsp;&nbsp;"
     W $$^%W1DICT("GUESTSNUMBER")_$$NBSP^%L1FRM(3)
     I '$D(VW) D
     .W "<input id=""guests"" type=""text"" maxlength=""4"" size=""2"" "
     .W " value="""_$$GUESTS(NOM)_""" />"
     I $D(VW) W $$RKV($$GUESTS(NOM))
   W "</td>",!
   ;
   W "<td>"
     W "&nbsp;&nbsp;&nbsp;"
     W $$^%W1DICT("MAZMIN")_$$NBSP^%L1FRM(3)
     I '$D(VW) D
     .W "<input id=""mazmin"" type=""text"" maxlength=""14"" size=""12"" "
     .W " value="""_$$H2U^%L1FRM($$MAZMIN(NOM))_""" />"
     I $D(VW) W $$RKV($$H2U^%L1FRM($$MAZMIN(NOM)))
   W "</td>",!
   ;
   W "<td>"
     W "&nbsp;&nbsp;&nbsp;"
     W $$^%W1DICT("PELE")_$$NBSP^%L1FRM(3)
     I '$D(VW) D
     .W "<input id=""pelemazmin"" type=""text"" maxlength=""11"" size=""11"" "
     .W " value="""_$$PELEMAZMIN(NOM)_""" />"
     I $D(VW) W $$RKV($$PELEMAZMIN(NOM))
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
RKV(VL)
 N ST
 S ST="<span style=""font-weight:bold;"_$$FONTFM^W3CSS_""">"
 S ST=ST_VL
 S ST=ST_"</span>"
 Q ST
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DOCDEL
W4DOCDEL(VD,NOM) ; [ 27.12.15 19:01 ] [
 I '$G(NOM) Q 0
 I $G(VD)="" Q 0
 I $D(@$$^W4GL("W4DOC")@(+NOM,VD,"DEL")) Q 1
 I $D(@$$^W4GL("W4DOC")@(+NOM,VD,"DELETED")) Q 1
 Q 0
 ;
DELETED(NUMBER) ;
 N GL S GL=$$GL^W4DOC(NUMBER)
 I $D(@GL@(+NUMBER,"DELETED")) Q 1
 Q 0

W4DOCVW
W4DOCVW ; [ 12.11.24 18:41 ] [ 11.04.23 12:45 ] [ 31.01.19 11:05 ] 
 N (JB,%ARG,%REM)
 S NUMBER=$G(%ARG("NUMBER"))
 D PUT^%W1PRM("DOCVWNUMBER",NUMBER)
 I $G(%ARG("LKH")) D PUT^%W1PRM("LKH",$TR(%ARG("LKH"),"-",""))
 ;
 I $$^W4NOBACK S %ARG("SHOW")=1
 ;
 D TYPDOC(NUMBER) ; --> DOC
 ;
 S NUMBER=+NUMBER
 ;
 S NOM=$$NOM($G(DOC),NUMBER) ; --> IN ^W4DOC
 ;
 S SPK=$$SPK I $$INP,SPK="" D ER("SUPPLIER NOT DEFINED !") Q
 ;
 I DOC="HBW" I 'NOM D ER("INVOICE "_NUMBER_" NOT EXIST !") Q
 I DOC="TZ" I 'NOM D ER("DEBET INVOICE "_NUMBER_" NOT EXIST !") Q
 I DOC="TM" I 'NOM D ER("SHIPPING RECORD "_NUMBER_" NOT EXIST !") Q
 I DOC="TMZ" I 'NOM D ER("BACK SHIPPING RECORD "_NUMBER_" NOT EXIST !") Q
 I DOC="ITZ" I 'NOM D ER("BACK SHIPPING RECORD "_NUMBER_" NOT EXIST !") Q
 I DOC="IHZ"!(DOC="HZ")  I 'NOM D ER("ORDER "_NUMBER_" NOT EXIST !") Q
 I DOC="HZMH" I 'NOM D ER("PRICE OFFER "_NUMBER_" NOT EXIST !") Q
 I 'NOM Q
 ;
 D
 .D GLTMP K @GLTMP
 .M @GLTMP=@$$GL^W4DOC@(NOM)
 ;
 S DAT=$$DAT(NOM)
 S LKH=$$LKH(NOM)
 S PRV=$$PRV(NOM)
 S MTB=$$MTB(NOM)
 S:'MTB MTB=1
 S %ARG("MTB")=MTB
 S SMBMTB=$$^W4SMBMTB
 ;
 D PUT^%W3DEB("W4DOCVW","DAT=DAT&LKH=LKH&PRV=PRV&DOC=DOC")
 ;
 D KOTHSB(NUMBER,LKH,DAT,DOC)
 ;
 D DAF1
 ;
 I $G(%ARG("NEWDOC")) K %ARG("NOM") S NOM=0
 ;
 I $G(DOC)="HZMH",$$ERUA^W3PRM D
 .W $$^%W1DICT("CANCELERUA",24)
 .W "<br><br>",!
 ;
 D DIVBUT(DOC,NUMBER,PRV)
 ;
 S W4DOC=""
 D TBLCOPY^W4HSBYVW
 ;
 D DIVSIGN^W4LHBVW
 ;
 W "</div>",!
 Q
 ;
 ;
KOTHSB(NMB,LKH,DAT,DOC) ;
 D ^W4KOTHSB(NMB,LKH,DAT,DOC)
 ;
 I $G(DOC)="HZ"!($G(DOC)="HZMH") D
 .W "<table dir="""_$$^%W1DIR_""" width=""96%"">",!
 . W "<tr>"
 .  W "<td width=""15%"">&nbsp;</td>"
 .   W "<td "
 .   N NMB1 S NMB1=NMB I DOC="HZMH",NMB'[DOC S NMB1=NMB_"HZMH"
 .   N HB,DOP S HB=$$ORDV^W4BLNORD(LKH,NMB1),DOP=""
 .   I HB D
 .   .W " style=""font-weight:bold;cursor:pointer"" "
 .   .I HB[".n.z" S DOP="T"
 .   .W " onClick=""ShowItemsInvoice('"_+HB_DOP_"','"_LKH_"','ifr','',0,this)"" "
 .  W ">"
 .   W $$H2U^%L1FRM(HB)
 .  W "</td>"
 .  W "<td>&nbsp;</td>"
 . W "</tr>",! 
 .W "</table>",!
 ;
 I $G(DOC)="IHB"!($G(DOC)="ITM")!($G(DOC)="HBW")!($G(DOC)="TM")!($G(DOC)="TMZ") D
 .W "<table dir="""_$$^%W1DIR_""" width=""96%"">",!
 . W "<tr>"
 .  W "<td width=""15%"">"
 .   N ORD,ORDN S ORD=$$ORD(LKH,DOC,NMB),ORDN=+ORD S:'ORDN ORDN=""
 .   N NMORD S NMORD="ORDER"
 .   I ORD["HZMH" S NMORD="PRICEOFFER"
 .   W $$^%W1DICT(NMORD)
 .   W "</td>",!
 .   W "<td style=""font-weight:bold"
 .   I $E(DOC)="I" D
 ..   W ";cursor:pointer"" onClick=""ShowSupplOrd('"_LKH_"','"_ORD_"','IFR')"" "
 ..   W ">"
 ..   W ORDN
 .   E  D
 ..   W ";cursor:pointer"" onClick=""ShowCustOrd('"_LKH_"','"_ORD_"')"" "
 ..   W ">"
 ..    W ORDN
 .  W "</td>"
 .  W "<td>&nbsp;</td>"
 . W "</tr>"
 .W "</table>",!
 ;
 N GL S GL=$$GL^W4DOC
 S NMB=+$G(NMB)
 I $D(@GL@(NMB,"ITM"))>9!($D(@GL@(NMB,"ITZ"))>9) D LISTTM^W4DOC($E(GL,1,$L(GL)-1)_","""_NMB_""")")
 Q
 ;
ORD(ORG,DOC,NMB) ;
 I $E(DOC)="I" Q $G(@$$^W4GL("W4INP")@(ORG,"IHB",+NMB,"ORD"))
 ;
 S ORD=$G(@$$^W4GL("W4DOC")@(+$$NOM(DOC,+NMB),"ORD"))
 Q ORD
 ;
 ;
LTR(STAM) Q $$LTR^W4DOC ; ---- NOM AS PARAMETER HBZ OR NO
 ;
TD W "<td width=""30%"">"
 Q
TDLTR D TDLTR^W4DOC ; ---- NOM AS PARAMETER HBZ OR NO
 Q
TDLTR1 D TDLTR W " class=""tdbd"" >" ; ---- NOM AS PARAMETER HBZ OR NO
 Q
TDLTR2
 S DOC=$G(DOC)
 W "<td dir=""LTR"" align=""right"" style=""color:"_$S(DOC="TZ":"black",1:"red")_""""
 Q
TDN W "<td>&nbsp;</td>",!
 Q
 ;
 ;
DAF1 ;
 N (JB,%ARG,%REM,LKH,DAT,NOM,DOC,SMBMTB)
 ;------ NOM - NOMER V ^W4DOC
  D DAFBODY(NOM)
  ;
  D SPACETR
  ;
  D TOT^W4DOC(NOM)
  ;
  W "<tr>"
  D SPACE
  W "<td colspan=""2"" "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_$$REVAH_"</td>"
  ;;D TDLTR W " id=""bftot"">&nbsp;<b>"_$J(SHUMLD*100/(100+$$AHMAM(NOM)),2,2)_"</b> "_SMBMTB_" </td>"
  D TDLTR W " id=""bftot"">&nbsp;<b>"_$J(BFMAM,2,2)_"</b> "_SMBMTB_" </td>"
  W "</tr>",!
  ;
  W "<tr>"
   D SPACE
   W " <td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("AFTERTAX")_" </td>"
   D TDLTR W " id=""tot"">&nbsp;<b>"_$J($G(SHUMLD),2,2)_"</b> "_SMBMTB_" </td>"
   W "<td></td>"
  W "</tr>",!
  ;
  I DISCA D
  .W "<tr>"
  . D SPACE
  . W "<td colspan=""2"" "_$$INV^%W1ALIGN_">" W $$^%W1DICT("DISCPERCENT")_"&nbsp;"
  .  W $$DISCPRC(NOM)
  . W "</td>"
  . D TDLTR2 W " id=""disca"">&nbsp;"_$J(DISCA,2,2)_" "_SMBMTB_" </td>"
  .W "</tr>",!
  ;
  I $$DISCNIS(NOM) D
  .W "<tr>"
  .D SPACE
  .W "<td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("DISCNIS")_"&nbsp;</td>",!
  .D TDLTR2 W ">&nbsp;"
  . W $J($$DISCNIS(NOM),2,2)_" "_SMBMTB_" "
  .W "</td>"
  .W "<td></td>"
  .W "</tr>",!
  ;
  I $$DMSH(NOM) D
  .W "<tr>"
  .D SPACE
  .W " <td colspan=""2"" "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DLVPAY")_"&nbsp;</td>"
  .D TDLTR W ">&nbsp;"
  . W $J($$DMSH(NOM),2,2)_" "_SMBMTB_" "
  .W " </td>"
  .W " <td></td>"
  .W "</tr>",!
  ;
  I $$^W4NOIGUL!'IGUL D
  .D SHOWMAM
  ;
  I DISCA!($$DISCNIS(NOM))!($$DMSH(NOM)) D
  .W "<tr>"
  . D SPACE
  . W " <td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  . D TDLTR W " id=""total"" "_$S($$^W4NOIGUL!'IGUL:$$BOLET,1:"")_" >"
  .  W "&nbsp;"_$J(SHUM-IGUL,2,2)_" "_SMBMTB_" </td>"
  . W "<td></td>"
  .W "</tr>",!
  ;
  I '$$^W4NOIGUL,IGUL D
  .W "<tr>"
  . D SPACE
  . W "<td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("IGUL")_"&nbsp;</td>"
  . D TDLTR W " id=""igul"">&nbsp;"_$J(IGUL,2,2)_" "_SMBMTB_" </td>"
  . W "<td></td>"
  .W "</tr>",!
  .;
  .D SHOWMAM
  .
  .W "<tr>" D SPACE
  . W "<td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTALROUNDED")_"&nbsp;</td>"
  . D TDLTR W " id=""itot"" "_$$BOLET_" >&nbsp;"_$J($J(SHUM,0,0),2,2)_" "_SMBMTB_" </td>"
  . W "<td></td>"
  .W "</tr>",!
  ;
  ;
ET ;
  W "</table>",!
  ;
  W "<br /><br />"
  W "<div align=""center"">",!
  W " <div width=""96%"" "_$$^%W1ALIGN_" dir="""_$$^%W1DIR_""">",!
  I $L($$CMNT(NOM)) D
   .W $$^%W1DICT("COMMENT")_" : "
   .W "<span style=""font-weight:bold"">"_$$CMNT(NOM)_"</span>"
   .I $$PRV(NOM) W "&nbsp;&nbsp;&nbsp;[ "_$$^%W1DICT("PRIVATEINF")_" ]"
  W " </div>",!
  W "</div>",!
 Q
 ;
BOLET(STAM)
 Q "style=""font-weigt:bold;font-size:"_$$^W3FSZ(16)_""" "
 ;
DAFBODY(NOM) ;
 I '$D(NOM) S NOM=0
 S SMBMTB=$$^W4SMBMTB
 ;
 I $$PRMAM(NOM),'$$INP D
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 .W " <tr>"
 .W "  <td>"
 .W "  "_$$^%W1DICT("PRICEINCLUDEDTAX")_"&nbsp;"
 .W "  </td>"
 .W " </tr>",!
 .W "</table>",!
 ;
 W "<br />",!
 ;
 I $$ERUA^W3PRM D ERUADET
 ;
 I $$INP D
 .W "<table width=""96%"" dir="""_$$^%W1DIR_""">",!
 .W "<tr>"
 . W "<td width=""5%"">" D FND^W4TKDOC1 W "</td>"
 . W "<td width=""90%"" style=""color:red;text-align:center"" >"
 .  W $$^%W1DICT("*CODEWITHOUTMAM")
 . W "</td>",!
 . W "<td width=""5%"">&nbsp;</td>"
 .W "</tr>",!
 .W "</table>",!
 ;
 S COLST=$$COLST(NOM)
 ;
 W "<table id=""TblInvcBd"" dir="""_$$^%W1DIR_""" width=""96%"" border=""0"" cellspacing=""3"" >",!
  ;
  W "<tr id=""trth"">"
  W " <th id=""thcd"">"_$$^%W1DICT("CODE")_"</th>",!
  ;
  W " <th>"_$$^%W1DICT("ITEMNAME")_"</th>",!
  ;
  I $$SERNUM^W3PRM D
  .W " <th>"_$$^%W1DICT("SERIAL")_"</th>",!
  ;
  I $$INP D
  .W " <th>"_$$^%W1DICT("EM")_"</th>",!
  ;
  I $$COLOR D
  .W " <th>"_$$^%W1DICT("COLOR")_"</th>",!
  ;
  I $$SIZE D
  .W " <th>"_$$^%W1DICT("SIZE")_"</th>",!
  ;
  I '$$^W4MLQNMH D
  .W " <th>"_$$^%W1DICT("PRICE")_"</th>",!
  .W " <th>"_$$^%W1DICT("QUANTITY")_"</th>",!
  I $$^W4MLQNMH D
  .W " <th>"_$$^%W1DICT("QUANTITY")_"</th>",!
  .W " <th>"_$$^%W1DICT("PRICE")_"</th>",!
  ;
  I '$$NODISCPRC(NOM) D
  .W " <th>"_$$^%W1DICT("DISCPERCENT")_"</th>",!
  ;
  W " <th>"_$$^%W1DICT("BEFORETAX")_"</th>",!
  ;;W " <th width=""11%"">"_$$^%W1DICT("AFTERTAX")_"</th>",!
  ;
  I $$CMNST^W4LKH,'$$NOCMNST(NOM) D
  .W " <th>"_$$^%W1DICT("COMMENT")_"</th>",!
  W "</tr>",!
  ;
  F I=1:1:COLST D
  .I $$NODATA(NOM,I) Q
  .;
  .W "<tr id=""trid"_I_""" "
  .I $L($G(%ARG("PAR"))),$$CODE(NOM,I)=%ARG("PAR") D
  ..W " style=""background-color:yellow"" "
  .W " >"
  .D
  ..W " <td class=""tdbd"" id=""tdcd"_I_""" "
  ..I $$INP!$$ONEGLPAR^W3PRM D
  ...W "  style=""cursor:pointer"" onClick=""ShowItemCard('"_$$CODE(NOM,I)_"','ifr',self,'&VIEW=1&BACK=1')"" "
  ..W " >"
  .. D
  .. .N PREF S PREF="&nbsp;" 
  .. .N CD S CD=$$CODE(NOM,I)
  .. .I $$INP,'$$MLMAM^W4MLPRT(CD) S PREF="*" 
  .. .W PREF_CD
  ..W "</td>",!
  .
  .S DIRNAME=$$DIRNAME
  .N NAME S NAME=$$SHOWNAME($$NAME(NOM,I))
  .I NAME="" S NAME="&nbsp;"
  .W " <td class=""tdbd"">"_$$REVAH_NAME_"</td>",!
  .I $$SERNUM^W3PRM D
  ..W " <td class=""tdbd"">"_$$REVAH_$$SERIAL(NOM,I)_"</td>",!
  .I $$INP D
  ..W " <td class=""tdbd"">"_$$REVAH_$$EM(NOM,I)_"</td>",!
  .I $$COLOR D
  ..W " <td class=""tdbd"">"_$$REVAH_$$CLR(NOM,I)_"</td>",!
  .I $$SIZE D
  ..W " <td class=""tdbd"">"_$$REVAH_$$SZ(NOM,I)_"</td>",!
  .
  .
  .I '$$^W4MLQNMH D TDPRC,TDQN
  .I $$^W4MLQNMH D TDQN,TDPRC
  .
  .I '$$NODISCPRC(NOM) D
  ..W " <td class=""tdbd"" "_$$LTR_">"_$$REVAH_$$NUM($J($$DISC(NOM,I),2,2))_" </td>",!
  .
  .W " <td class=""tdbd"" "_$$LTR_" id=""bft"_I_""">"_$$REVAH_$$NUM($$BFTAX(NOM,I))_" "_SMBMTB_" </td>",!
  .;;W " <td class=""tdbd"" "_$$LTR_">"_$$REVAH_$$NUM($$AFTAX(NOM,I))_" "_SMBMTB_" </td>",!
  .
  .I $$CMNST^W4LKH,'$$NOCMNST(NOM) D
  ..W " <td class=""tdbd"" align=""center"" >"
  .. W $$REVAH_$$H2U^%L1FRM($$CMNST(NOM,I))
  ..W "</td>",!
  .W "</tr>",!
  Q
  ;
  ;
TDPRC ;
  W " <td class=""tdbd"" id=""prc"_I_""" "_$$LTR_" >"
   W $$REVAH_$$NUM($$PRC(NOM,I))_" "_SMBMTB
  W " </td>",!
  Q
  ;
TDQN ;
  D TDLTR1 W $$REVAH_$$NUM($$QN(NOM,I))_$$REVAH_"</td>",!
  Q
 ;
SHOWMAM ;
  W "<tr>"
   D SPACE
   W " <td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("BEFORETAX")_"&nbsp;</td>"
   D TDLTR W " id=""lmam"">&nbsp;"_$J(SHUM-MAM,2,2)_" "_SMBMTB_" </td>"
   W "<td></td>"
  W "</tr>",!
  ;
  S AHMAM=$$AHMAM(NOM)_"%"
  W "<tr>"
  D SPACE
  W "<td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TAX",AHMAM)_"&nbsp;</td>"
   D TDLTR W " id=""tax"">&nbsp;"_$J($G(MAM),2,2)_" "_SMBMTB_" </td>"
   W "<td></td>"
  W "</tr>",!
 Q
 ;
GETDAT(STAM)
 Q $$GET^%W1PRM("DAT")
 ;
GETDOC(STAM) ;
 Q $$GET^%W1PRM("DOC")
 ;
GETPRMAM(STAM)
 Q $$GET^%W1PRM("PRMAM")
 ;
COLST(NOM) Q $$COLST^W4DOC(NOM)
 ;
GET(NOM,SH,NRZ)
 Q $$GET^W4DOC(NOM,SH,NRZ)
 ;
CODE(NOM,SH) ;
 Q $$CODE^W4DOC(NOM,SH)
 ;
NAME(NOM,SH) ;
 Q $$NAME^W4DOC(NOM,SH)
 ;
SERIAL(NOM,SH) ;
 Q $$SERIAL^W4DOC(NOM,SH)
 ;
EM(NOM,SH) ;
 N EM S EM=$$EM^W4DOC(NOM,SH)
 S EM=$$SPA^%L1FRM(EM)
 I $$ISNUM^%L1FRM(EM) Q $$H2U^%L1FRM($G(@$$^W4GL("MLMIDA")@(EM)))
 ;
 I $E(EM)?1N S EM=$P(EM," ",2,20)
 Q $$H2U^%L1FRM(EM)
 ;
CLR(NOM,SH) ;
 N CLR S CLR=$$CLR^W4DOC(NOM,SH)
 I $P(CLR," ")=0 Q "&nbsp;"
 I $E(CLR)?1N S CLR=$P(CLR," ",2,20)
 Q $$H2U^%L1FRM(CLR)
 ;
SZ(NOM,SH) ;
 N SZ S SZ=$$SZ^W4DOC(NOM,SH)
 I $P(SZ," ")=0 Q "&nbsp;"
 I $E(SZ)?1N S SZ=$P(SZ," ",2,20)
 Q $$H2U^%L1FRM(SZ)
 ;
PRC(NOM,SH) ;
 Q $$PRC^W4DOC(NOM,SH)
 ;
QN(NOM,SH) ;
 Q $$QN^W4DOC(NOM,SH)
 ;
DISC(NOM,SH) ;
 Q $$DISC^W4DOC(NOM,SH)
 ;
BFTAX(NOM,SH) ;
 I '$$QN(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 I $$PRMAM(NOM),'$$INP Q $J($$SUMST(NOM,SH)*100/(100+$$AHMAM(NOM)),2,2)
 Q $J($$SUMST(NOM,SH),2,2)
 ;
AFTAX(NOM,SH) ;
 I '$$QN(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 I '$$PRMAM(NOM)!$$INP Q $J($$SUMST(NOM,SH)*(100+$$AHMAM(NOM))*.01,2,2)
 Q $J($$SUMST(NOM,SH),2,2)
 ;
SUMST(NOM,SH)
 Q $J($$QN(NOM,SH)*$$PRC(NOM,SH)*(100-$$DISC(NOM,SH))*.01,2,2)
 ;
CMNST(NOM,SH) ;
 Q $$CMNST^W4DOC(NOM,SH)
 ;
LASTNOM(STAM)
 Q $O(@GL@(999999),-1)
 ;
LKH(NOM) ;
 Q $$LKH^W4DOC(NOM)
 ;
LKHNAME(NOM) ;
 Q $$LKHNAME^W4DOC(NOM)
 ;
KTV(NOM) ;
 Q $$KTV^W4DOC(NOM)
 ;
DAT(NOM) ;
 Q $$DAT^W4DOC(NOM)
 ;
AHMAM(NOM) ;
 Q $$AHMAM^W4DOC(NOM)
 ;
SUMTD(NOM) ;
 Q $$SUMTD^W4DOC(NOM)
 ;
MAM(NOM) ;
 Q $$MAM^W4DOC(NOM)
 ;
ISSUE(NOM) ;
 Q $$ISSUE^W4DOC(NOM)
 ;
CMNT(NOM) ;
 Q $$CMNT^W4DOC(NOM)
 ;
PRV(NOM) ;
 Q $$PRV^W4DOC(NOM)
 ;
MTB(NOM) ;
 Q $$MTB^W4DOC(NOM)
 ;
IGUL(NOM) ;
 Q $$IGUL^W4DOC(NOM)
 ;
PRMAM(NOM) ;
 Q $$PRMAM^W4DOC(NOM)
 ;
DISCPRC(NOM) ;
 Q $$DISCPRC^W4DOC(NOM)
 ;
DISCNIS(NOM) ;
 Q $$DISCNIS^W4DOC(NOM)
 ;
DMSH(NOM) ;
 Q $$DMSH^W4DOC(NOM)
 ;
HRA(NOM) ;
 Q $$HRA^W4DOC(NOM)
 ;
TZ(NOM) ;
 Q $$TZ^W4DOC(NOM)
 ;
DIRNAME()
 Q $$DIRNAME^W4DOC
 ;
SHOWNAME(NAME) ;
 Q $$SHOWNAME^W4DOC(NAME)
 ;
NUM(RKV)
 I 'RKV Q "&nbsp"
 Q RKV
 ;
SPACE D TDN,TDN
 I $$SERNUM^W3PRM D TDN
 I $$INP D TDN
 I '$$NODISCPRC(NOM) D TDN
 I $$COLOR D TDN
 I $$SIZE D TDN
 Q
 ;
SPACETR W "<tr>" D TDN,TDN
 I $$SERNUM^W3PRM D TDN
 I $$INP D TDN
 D TDN,TDN,TDN I '$$NODISCPRC(NOM) D TDN
 W "</tr>",!
 Q
 ;
PRMTZMAM(STAM) ;
 Q $$PRMTZMAM^W4HSBYAD
 ;
 ;
NOM(DOC,NUMBER) ;
 N NOM
 ;
 I DOC="ITM"!(DOC="IHB")!(DOC="ITZ")!(DOC="IHBZ")!(DOC="IHZ") Q NUMBER
 ;
 ;;I DOC="HZMH"!$$HZMH^W4LHB S NOM=$G(@$$^W4GL("W4DIR")@("HZMH",+NUMBER)) Q NOM
 I DOC="HZMH"!(NUMBER["HZMH") S NOM=$G(@$$^W4GL("W4DIR")@("HZMH",+NUMBER)) Q NOM
 ;
 I DOC="HZ" D  Q NOM
 .S NOM=0 S LKH=$$GETP^%W1PRM("LKH") Q:LKH=""
 .S NOM=$$^W4ORDD(LKH,+NUMBER)
 ;
 I $$TM^W4LHB S NOM=$P($G(@$$^W4GL("KLIN")@("TM",+NUMBER)),"W",2) Q NOM
 I $$TMZ^W4LHB S NOM=$P($G(@$$^W4GL("KLIN")@("TMZ",+NUMBER)),"W",2) Q NOM
 ;
 I $L($G(DOC)) D  I NOM Q NOM
 .N CODDOC S CODDOC=$$CODDOC^W4KOTHSB(DOC)
 .S NOM=$P($G(@$$^W4GL("KLIN")@(CODDOC,+NUMBER)),"W",2)
 ;
 S NOM=$G(@$$^W4GL("W4DIR")@("H",NUMBER)) ; --- WAS HB 13/12/16
 I NOM="" S NOM=$P($G(@$$^W4GL("KLIN")@("H",NUMBER)),"W",2)
 Q NOM
 ;
 ;
NODISCPRC(NOM) ;
 N COLST S COLST=$$COLST(NOM)
 N OK S OK=0
 N I F I=1:1:COLST I $$DISC(NOM,I) S OK=1 Q
 Q 'OK
 ;
NOCMNST(NOM) ;
 N COLST S COLST=$$COLST(NOM)
 N OK S OK=0
 N I F I=1:1:COLST I $$CMNST(NOM,I)'="" S OK=1 Q
 Q 'OK
 ;
NODATA(NOM,SH) ;
 I $$CODE(NOM,SH)'="" Q 0
 I $$NAME(NOM,SH)'="" Q 0
 I $$PRC(NOM,SH) Q 0
 I $$QN(NOM,SH) Q 0
 I $$DISC(NOM,SH) Q 0
 I $$BFTAX(NOM,SH) Q 0
 I $$AFTAX(NOM,SH) Q 0
 Q 1
 ;
COPY(PRM) ;
 N GL,GLTMP,NOM,DAT,LKH
 S NOM=$P(PRM,";") Q:'NOM
 S DAT=$P(PRM,";",2) Q:'DAT
 D PUT^%W1PRM("DAT",DAT)
 S LKH=$$LKH(NOM)
 D PUT^%W1PRM("LKH",LKH)
 S GL=$$GL^W4DOC
 D GLTMP K @GLTMP
 N I F I=1:1 Q:'$D(@GL@(NOM,I))  D
 .M @GLTMP@(I)=@GL@(NOM,I)
 ;
 S @GLTMP=$$DISCPRC(NOM)_"\"_$$DISCNIS(NOM)_"\"_$$DMSH(NOM)_"\"_$$HRA(NOM)
 Q
 ;
GLTMP ;
 D GLTMP^W4DOC
 Q
 ;
REVAH(STAM) ;
 Q "&nbsp;&nbsp;"
 ;
CSR(STAM) ;
 Q $$CSR^W4LCBCR
 ;
CSRPRINT(NMB) ;
 Q $$^W4PCHMK(NMB)
 ;
DIVBUT(DOC,NUMBER,PRV) ;
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"" >",!
  W "<tr align=""center"" >"
   I $G(DOC)="HZMH",'$$VIEWONLY D
   .W "<td>"
   .  W $$^%W1DICT("HIDEPRICES")_"&nbsp;&nbsp;"
   .  W "<input type=""checkbox"" id=""hideprice"" "
   .  I $G(%ARG("HDPRC")) W " checked=""checked"" "
   .  W " onClick=""HidePrice()"" />"
   .W "</td>"
   .W "<td>&nbsp;</td>"
   ;
   W "<td>"
     D ^W4BUTTON("Print",$$^%W1DICT("PRINT"),"PrintAndBack('"_PRV_"')","color:green")
   W "</td>"
   W "<td>&nbsp;</td>"
   ;
   I $$CSR,$E($TR(NUMBER,"0123456789",""))'="I",$E($G(DOC))'="I" D
   . W "<td>"
   .   D ^W4BUTTON("CSRPrint",$$^%W1DICT("CSRPRINT"),"CSRPrint('"_NUMBER_"','"_DOC_"','"_$$SPK_"')","color:green")
   . W "</td>"
   . W "<td>&nbsp;</td>",!
   ;
   I $$VIEWONLY G EX
   ;
   I DOC="ITM"!(DOC="IHB")!(DOC="IHBZ")!(DOC="IHZ")!(DOC="HZ")!(DOC="HZMH") D
   .I DOC="ITM",'$$FREE($$SPK,"ITM",NUMBER) Q
   .I DOC="IHZ"&$$DELETED(%ARG("NUMBER")) Q
   .I $E(DOC)="I" N W4HSB D ^W4HSBGET(NUMBER,DOC,SPK)
   .
   .D:'$G(W4HSB("PAID"))
   .. N NOM
   .. I DOC="IHZ"&$$PRINTED(%ARG("NUMBER")) Q
   .. I DOC="HZ"!(DOC="HZMH"),$$ORDV^W4BLNORD(LKH,%ARG("NUMBER")) Q  ; I $$BLNG^W4ORDD(NOM) Q
   .. W "<td>"
   ..  D UPDBUT
   .. W "</td>"
   .. W "<td>&nbsp;</td>",!
   .
   . W "<td>"
   . D
   . .I DOC="IHZ",SPK'="",$$CLOSEBYHB^W4SPDOC(SPK,DOC,NUMBER) W "&nbsp;" Q
   . .I DOC="IHZ" D CANCELBUT Q
   . .I DOC="HZ"!(DOC="HZMH"),$$ORDV^W4BLNORD(LKH,%ARG("NUMBER")) Q  ; I $$BLNG^W4ORDD(NOM) Q
   . .I $G(W4HSB("PAID")) W "&nbsp;" Q 
   . .D DELBUT
   . W "</td>"
   . W "<td>&nbsp;</td>",!
   .
   . I DOC="IHB",$D(@$$^W4GL("W4INP")@(SPK,"IHB",+NUMBER,"ITM")) D
   .. W "<td>"
   ..  D TMLIST
   .. W "</td>"
   .
   I DOC="TM"!(DOC="TMZ")!(DOC="HBW") D
   .N DOC1 S DOC1=DOC I DOC1="HBW" S DOC1="H"
   .I $$DEL(DOC1,$$NOM(DOC,NUMBER)) Q
   .W "<td>"
   .D
   ..D DELBUT
   .W "</td>",!
   ;
   I '$$VIEWONLY,$$FROMHB!($$GETP^%W1PRM("VD")="TM") D
   .W "<td>"
   .  N TXTCOPY
   .  S TXTCOPY="COPY2NEWDOC"
   .  D ^W4BUTTON("Copy",$$^%W1DICT(TXTCOPY),"Copy2NewInvoice()","color:darkblue")
   .W "</td>"
   .I '$$^W4NOBACK D
   ..W "<td>&nbsp;</td>"
EX ;
  I '$$^W4NOBACK D
   .W "<td>"
   .  D ^W4BUTTON("Back",$$^%W1DICT("BACK"),"Back()","color:red")
   .W "</td>"
  ;
  W "<td>&nbsp;</td>"
  W "<td id=""mail"" >"
  W "</td>"
  ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
UPDBUT ;
 N ORG S ORG=$$SPK
 I DOC="HZ",$G(%ARG("LKH")) S ORG=$G(%ARG("LKH"))
 D ^W4BUTTON("Update",$$^%W1DICT("UPDATE"),"Update('"_DOC_"','"_ORG_"','"_NUMBER_"')","color:darkgreen")
 Q
 ;
TMLIST ;
 N ORG S ORG=$$SPK
 D ^W4BUTTON("tmlist",$$^%W1DICT("DLVDOCLIST"),"DlvDocList('"_ORG_"','"_NUMBER_"')","color:darkgreen")
 Q
 ;
DELBUT ;
 N ORG,NMB,DEL S ORG=$G(%ARG("LKH")),NMB=$G(%ARG("NUMBER"))
 I ORG="",$$SPK'="" S ORG=$$SPK
 S DEL=$$^%W1DICT("CANCEL")
 I $E(DOC)="I" S ORG=$$SPK,NMB=NUMBER,DEL=$$^%W1DICT("DELETE")
 D ^W4BUTTON("Delete",DEL,"Delete('"_DOC_"','"_ORG_"','"_NUMBER_"','0')","color:red")
 Q
 ;
CANCELBUT ;
 D ^W4BUTTON("Delete",$$^%W1DICT("CANCEL"),"Delete('"_DOC_"','"_$$SPK_"','"_NUMBER_"','1')","color:red")
 Q
 ;
PRINTED(NUMBER) ;
 N GL S GL=$$GL^W4DOC(NUMBER)
 I $D(@GL@(+NUMBER,"PRINTED")) Q 1
 Q 0
 ;
DELETED(NUMBER) ;
 Q $$DELETED^W4DOCDEL(NUMBER)
 ;
FROMHB(STAM) ;
 I $$GETP^%W1PRM("VD")="H" Q 1
 I $$GETP^%W1PRM("VD")="" Q 1
 Q 0
 ;
INP(STAM)
 Q $E($G(%ARG("DOC"))="I")!($E($TR($G(%ARG("NUMBER")),"0123456789",""))="I")
 ;
DELDOC(PRM) ;
 N VD,SPK,NOM,VDTM,VDTM1,ND,DELALL,CNC
 S VD=$P(PRM,";")
 S SPK=$P(PRM,";",2) I SPK["_" S SPK=$P(SPK,"_")
 I SPK="" Q "WRONGORG"
 S NOM=+$P(PRM,";",3)
 S DELALL=$P(PRM,";",4)
 S CNC=$P(PRM,";",5)
 D PUT^%W3DEB("W4DOCVW-DELDOC","PRM=PRM&VD=VD&SPK=SPK&NOM=NOM")
 ;
 I $E(VD)'="I" Q $$DELOUTDOC(VD,SPK,$P(PRM,";",3))
 ;
 N GLINP S GLINP=$$^W4GL("W4INP")_"("""_SPK_""","""_VD_""","""_NOM_""")"
 N A S A=$G(@GLINP) I A="" Q "NODOC"
 N DT S DT=$$^%L1DC($P(A,"\",4),3) I 'DT Q "WRONGDATE"
 ;
 I VD="IHZ" D  Q "OK"
 .N J F J=6,7,10,13,14 S $P(@GLINP,"\",J)=0
 .N LAST S LAST=$O(@GLINP@(99999),-1)
 .N I F I=1:1:LAST S A=$G(@GLINP@(I)) D
 ..N J F J=4,5 D
 ...S $P(A,"\",J)=-$P(A,"\",J)
 ..S @GLINP@(LAST+I)=A
 .S @GLINP@("DELETED")=$H
 ;
 I VD="IHB"!(VD="IHBZ") D
 .F VDTM="ITM","ITZ" D
 ..N N S N="" F  S N=$O(@GLINP@(VDTM,N)) Q:N=""  D
 ...S VDTM1=VDTM,ND=N I N<0 S ND=-N,VDTM1="ITZ"
 ...I VD="IHBZ" S VDTM1="ITZ"
 ...S ND=+ND
 ...I 'DELALL S @$$^W4GL("W4FREEDOC")@(SPK,VDTM1,ND)=DT_"\"_$ZD($H,"DD.MM.YY  24:60")
 ...K @$$^W4GL("W4INP")@(SPK,VDTM1,ND,VD)
 ...D ^W4GIB("K",$$^W4GL("W4INP"),SPK_";"_VDTM1_";"_ND_";"_VD)
 ...Q:'DELALL
 ...D DELDOC^W4SETMLY(VDTM1,SPK,ND)
 ...M @$$^W4GL("W4INPDEL")@(SPK,VDTM1,ND)=@$$^W4GL("W4INP")@(SPK,VDTM1,ND)
 ...D ^W4GIB("S",$$^W4GL("W4INPDEL"),SPK_";"_VDTM1_";"_ND_";"_VD)
 ...K @$$^W4GL("W4INP")@(SPK,VDTM1,ND)
 ...D ^W4GIB("K",$$^W4GL("W4INP"),SPK_";"_VDTM1_";"_ND_";"_VD)
 ;
 K @$$^W4INPDIR@(DT,SPK,VD,+NOM)
 D ^W4GIB("K",$$^W4INPDIR,DT_";"_SPK_";"_VD_";"_+NOM)
 D DELDOC^W4SETMLY(VD,SPK,+NOM)
 M @$$^W4GL("W4INPDEL")@(SPK,VD,+NOM)=@$$^W4GL("W4INP")@(SPK,VD,+NOM)
 D ^W4GIB("S",$$^W4GL("W4INPDEL"),SPK_";"_VD_";"_+NOM)
 K @$$^W4GL("W4INP")@(SPK,VD,+NOM)
 D ^W4GIB("K",$$^W4GL("W4INP"),SPK_";"_VD_";"_+NOM)
 Q "OK"
 ;
 ;
DELOUTDOC(VD,LKH,NUMBER)
 N NOM S NOM=$$NOM(VD,+NUMBER) I 'NOM Q 0
 ;
 N TM S TM=(VD="TM")
 N TMZ S TMZ=(VD="TMZ")
 ;
 N GL S GL=$$GL^W4DOC
 ;
 I 'TM,'TMZ D
 .D GLTMP K @GLTMP
 .M @GLTMP=@GL@(NOM)
 ;
 I TM!TMZ D
 .D DELHB^W4LCBCR(GL_"("""_NOM_""")")
 ;
 I VD="HZMH"!(VD="HZ")!(VD="HI") D  Q "OK"
 .N J F J=6,7,10,12,13,14 S $P(@GL@(NOM),"\",J)=0
 .N LAST S LAST=$O(@GL@(NOM,99999),-1)
 .N I F I=1:1:LAST S A=$G(@GL@(NOM,I)) D
 ..N J F J=4,5 D
 ...S $P(A,"\",J)=-$P(A,"\",J)
 ..S @GL@(NOM,LAST+I)=A
 .S @GL@(NOM,"DELETED")=$H
 ;
 N HRA S HRA=$$INVH^%L1FRM($$TV^%W1DICT($$^%W1LNG,$S(TM:"DELDLVDOC",TMZ:"DELDLVBACKDOC",1:"DELINVOICE"),+NUMBER))
 N PRM
 ;
 S PRM="0;"_$$ORD^W4DOC(LKH,NOM)_";"_$$PRMAM^W4DOC(NOM)_";"_$$TZ^W4DOC(NOM)
 S PRM=PRM_";"_$$INVH^%L1FRM($$TV^%W1DICT($$^%W1LNG,"DELDOCUMENT",+NUMBER))
 S PRM=PRM_";"_$$DISCPRC^W4DOC(NOM)_";"_$$DISCNIS^W4DOC(NOM)
 S PRM=PRM_";"_$$DMSH^W4DOC(NOM)
 S PRM=PRM_";"_$$MTB^W4DOC(NOM)_";"_-$$SUMTD^W4DOC(NOM)
 ;
 N VDNEW S VDNEW=VD
 I 'TM,'TMZ S VDNEW="TZ"
 N VDOLD S VDOLD=$S(TM:"TM",TMZ:"TMZ",1:"H")
 ;
 D PUT^%W1PRM("DOC",VDNEW)
 D PUT^%W1PRM("LKH",LKH)
 D PUT^%W1PRM("DAT",$ZD($H,"DD.MM.YY"))
 ;
 N NDOC S NDOC=$$SUBMIT^W4DOC(PRM)
 ;
 N NEWNOM S NEWNOM=$$NOM(VDNEW,+NDOC)
 S $P(@$$^W4GL("W4DOC")@(NOM),"\",9)=$$TV^%W1DICT($$^%W1LNG,$S(TM:"DELETEDDOCUMENT",1:"DELETEDINVOICE"),+NDOC)
 S @$$^W4GL("W4DOC")@(NOM,VDOLD,"DELETED")=$H_"\"_+NDOC_"\"_NOM
 S @$$^W4GL("W4DOC")@(NEWNOM,VDNEW,"DEL")=$H_"\"_+NUMBER_"\"_NEWNOM
 Q +NDOC
 ;
 ;
VIEWONLY(STAM) ;
 I $$VIEWONLY^W3PRM Q 1
 I $G(%ARG("VIEWONLY")) Q 1
 I $G(%ARG("SHOW")) Q 1
 Q 0
 ;
IHBTM(DOC,NOM) ;
 I $G(DOC)="IHB",$D(@$$GL^W4DOC@(NOM,"ITM"))>9 Q 1
 I $G(DOC)="IHB",$D(@$$GL^W4DOC@(NOM,"ITZ"))>9 Q 1
 I $G(DOC)="IHBZ",$D(@$$GL^W4DOC@(NOM,"ITM"))>9 Q 1
 I $G(DOC)="IHBZ",$D(@$$GL^W4DOC@(NOM,"ITZ"))>9 Q 1
 Q 0
 ;
FREE(SPK,VD,NDOC) ;
 I $G(SPK)=""!($G(VD)="")!($G(NDOC)="") Q 0
 I $D(@$$^W4GL("W4FREEDOC")@(SPK,VD,NDOC)) Q 1
 Q 0
 ;
PRINT(NUMBER) ;
 N NOM,DOC
 D KILL^%W1PRM("MKRYD")
 I $D(@$$GL^W4DOC(NUMBER)) D
 .S DOC=$$DEFDOC(NUMBER) Q:DOC=""
 .S NOM=$$NOM(DOC,NUMBER)
 .S @$$GL^W4DOC(NUMBER)@(+NOM,"PRINTED")=$H
 Q 1
 ;
DEFDOC(NUMBER)
 I NUMBER,NUMBER?1N.N Q "HBW"
 N DOP S DOP=$TR(NUMBER,"1234567890","")
 I DOP="Z" Q "TZ"
 I DOP="T" Q "TM"
 I DOP="TMZ" Q "TMZ"
 Q DOP
 ;
DEL(VD,NOM) ;
 Q $$^W4DOCDEL(VD,NOM)
 ;
COLOR(STAM) Q $$COLOR^W4LKH
SIZE(STAM) Q $$SIZE^W4LKH
 ;
SMBMTB(STAM) ;
 Q $$^W4SMBMTB
 ;
SPK(STAM) ;
 N SPK S SPK=$G(%ARG("SPK"))
 I SPK["_" S SPK=$P(SPK,"_")
 Q SPK
 ;
TYPDOC(NUMBER) ;
 S DOC=$$GETDOC^W4DOC
 ;
 I NUMBER,NUMBER?1N.N,DOC="" S DOC="HBW"
 ;
 I $TR(NUMBER,"0123456789","")="Z" S DOC="TZ",%ARG("VD")="HBZ"
 I $TR(NUMBER,"0123456789","")="T" S DOC="TM",%ARG("VD")="TM"
 I $TR(NUMBER,"0123456789","")="TMZ" S DOC="TMZ",%ARG("VD")="TMZ"
 I $TR(NUMBER,"0123456789","")="HZ" S DOC="HZ",%ARG("DOC")="HZ"
 I $TR(NUMBER,"0123456789","")="HMK" S DOC="HMK",%ARG("VD")="HMK"
 I $TR(NUMBER,"0123456789","")="IHB" S DOC="IHB",%ARG("DOC")="IHB"
 I $TR(NUMBER,"0123456789","")="IHBZ" S DOC="IHBZ",%ARG("DOC")="IHBZ"
 I $TR(NUMBER,"0123456789 ","")="[-]" S DOC="IHBZ",%ARG("DOC")="IHBZ"
 I $TR(NUMBER,"0123456789","")="ITM" S DOC="ITM",%ARG("DOC")="ITM"
 I $TR(NUMBER,"0123456789","")="ITZ" S DOC="ITZ",%ARG("DOC")="ITZ"
 I $TR(NUMBER,"0123456789","")="IHZ" S DOC="IHZ",%ARG("DOC")="IHZ"
 I $TR(NUMBER,"0123456789","")="HZMH" S DOC="HZMH",%ARG("DOC")="HZMH"
 Q
 ;
 ;
ER(TXT) ;
 W TXT,! H 2
 W "<script>",!
 W " Back()",!
 W "</script>",!
 Q
 ;
MAILNMDOC(NUMBER) ;
 I $TR(NUMBER,"0123456789","")="Z" Q "debet%20invoice"
 I $TR(NUMBER,"0123456789","")="T" Q "delivery%20document"
 I $TR(NUMBER,"0123456789","")="TMZ" Q "delivery%20back%20document"
 I $TR(NUMBER,"0123456789","")="HZ" Q "order"
 I $TR(NUMBER,"0123456789","")="HZMH" Q "Bid"
 I $TR(NUMBER,"0123456789","")="HMK" Q "tax%20invoice/receipt"
 I $TR(NUMBER,"0123456789","")="IHB" Q "purchaseier%20invoice"
 I $TR(NUMBER,"0123456789","")="IHBZ" Q "credit%20invoice"
 I $TR(NUMBER,"0123456789","")="[-]" Q "purchase%20credit%20invoice"
 I $TR(NUMBER,"0123456789","")="ITM" Q "purchase%20delivery%20document"
 I $TR(NUMBER,"0123456789","")="ITZ" Q "purchase%20delivery%20refund%20document"
 I $TR(NUMBER,"0123456789","")="IHZ" Q "purchase%20order"
 I NUMBER="INVL" Q "Invoices%20list"
 Q "invoice"
 ;
NOPCHBCD(STAM) ;
 I $G(%ARG("PRINT"))&$$NOPCHBCD^W4PRM Q 1
 Q 0
 ;
ERUADET ;
 N VW S VW=""
 D ERUADET^W4DOC
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DOHMSD
W4DOHMSD ; [ 20.02.22 10:24 ] [ 31.05.17 09:44 ] [ 23.12.14 08:13 ] 
DT ;
 ;W "METRH="_METRH,!
 ;W "ADTRH="_ADTRH,!
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;W DT_" "_$ZD(DT,"DD.MM.YY")
 S TRH=$ZD(DT,"DD.MM.YY")
 S OK=1 Q
 ;
HZ ;
 ;W HZ,!
 S NMB=$$NMB^W4HZMST(HZ)
 I NMB<MENMB!(NMB>ADNMB) S OK=0 Q
 S x1=$$FULLDEL(HZ)
 S x2=$$SHNH^W4HZMST(HZ)
 S x3=$$HNHAH^W4HZMST(HZ)
 S x4=$$HNHA^W4HZMST(HZ)
 S x5=$$DELNOTEX(HZ)
 S x6=$$DELEX(HZ)
 S x7=$$AHP(HZ)
 S x8=$$TSHL^W4HZMST(HZ)
 S x9=$$SHUL^W4HZMST(HZ)-$$STIP^W4HZMST(HZ)
 S x10=$$STIP^W4HZMST(HZ)
 S x11=$$SHUL^W4HZMST(HZ)
 S x12=$$ZICCA(HZ)
 S x13=$$ZICMZM(HZ)
 Q
 ;
SUM(HZ,I) ;
 Q $$SUM^W4HZMST(HZ,I)
 ;
FULLDEL(HZ) ;
 N SBIT,SUM S SBIT=0
 I '$$^W4DEL(HZ) Q 0
 N I S I="" F  S I=$O(@$$^W4ORD@(HZ,I)) Q:I=""  D
 .S SUM=$$SUM(HZ,I) Q:SUM'<0
 .I $$AVAR^W4HZMST(HZ,I) Q
 .S SBIT=SBIT+SUM
 ;
 Q SBIT
 ;
 ;
DELNOTEX(HZ) ;
 N DNE,ST S DNE=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"BIT",N)) Q:N=""  D
 .I $$AVAR^W4HZMST(HZ,I) Q
 .I $$EX2KITCH^W4HZMST(HZ,N) Q
 .S DNE=DNE+$$SUM(HZ,N)
 ;
 Q DNE
 ;
 ;
DELEX(HZ) ;
 N DE,ST S DE=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"BIT",N)) Q:N=""  D
 .I $$AVAR^W4HZMST(HZ,I) Q
 .I '$$EX2KITCH^W4HZMST(HZ,N) Q
 .S DE=DE+$$SUM(HZ,N)
 ;
 Q DE
 ;
 ;
AHP(HZ) ;
 N AHP,SUM S AHP=0
 N I S I="" F  S I=$O(@$$^W4ORD@(HZ,I)) Q:I=""  D
 .I $E($G(^(I)),"\")'="-",$P($G(^(I)),"\")'["%" Q
 .S SUM=$$SUM(HZ,I) Q:SUM'<0
 .S AHP=AHP+SUM
 ;
 Q AHP
 ;
 ;
ZICCA(HZ) ;
 N ZICCA,SUM S ZICCA=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  I N D
 .S SUM=$P($G(^(N)),"*",7) Q:SUM'<0
 .S ZICCA=ZICCA+SUM
 ;
 Q ZICCA
 ;
 ;
ZICMZM(HZ) ;
 N ZICMZM,SUM S ZICMZM=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","MZ",N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .S SUM=$P(A,"*") Q:SUM'<0
 .S ZICMZM=ZICMZM+SUM-$P(A,"*",5)-$P(A,"*",6)
 ;
 Q ZICMZM
 
 

W4DOS
W4DOS(%CMD,%PATH,%OUT,%TR) ; [ 30.11.08 13:05 ] [ 24.11.08 18:06 ] [ 03.10.06 13:42 ]
 N (JB,%REM,%CMD,%PATH,%OUT,%TR)
 I '$L($G(%OUT)) S %OUT="w4dos."_$$^W4MYDVN
 S PATHDOS=$$PATH
 S %NMF0=PATHDOS_"l1dos"_$j
 S %NMF=PATHDOS_"l1"_$j_".bat"
 S %NMF1="l1"_$j_".bat"
 ;
 S DOSEMU="/usr/local/bin/dosemu.bin"
 I $$^W4ZOS(10,DOSEMU)<0 S DOSEMU="/usr/bin/dosemu.bin"
 I $$^W4ZOS(2,%NMF0)
 ;
 O %NMF0:(WRITE:NEWVERSION)
 U %NMF0
 W "#!/bin/bash -f",!!
 W "TERM=linux",!
 ;
 S %ST=DOSEMU_" -k -D -a -E "_%NMF1
 I $L($G(%OUT)) S %ST=%ST_" > "_%OUT
 ;;I '$L($G(%OUT)),$G(%TR)'="B" S %ST=%ST_" | "_$$^%L1ENVAR("gtm_dist")_"/mumps -r %L1FLTR"
 ;;I '$L($G(%OUT)),$G(%TR)="B" S %ST=%ST_" | "_$$^%L1ENVAR("gtm_dist")_"/mumps -r TV^%L1FLTR"
 W %ST,!
 ;
 C %NMF0
 I $$^W4ZOS(2,%NMF)
 ;
 O %NMF:(WRITE:NEWVERSION)
 U %NMF I $L($G(%PATH)),%PATH'["/" W "CD "_%PATH,!
 I %CMD[".BAT"!(%CMD[".bat") W "call "_%CMD,!
 E  W %CMD,!
 W "exitemu",!
 C %NMF ZSY "unix2dos "_%NMF
 ;
 I $$TERMINAL^%HOSTCMD(%NMF0)
 ;
 I $$^W4ZOS(2,%NMF0)
 I $$^W4ZOS(2,%NMF)
 Q
 ;
PATH(STAM) ;
 N PATHDOS
 I $D(@$$^W4GL("PATHDOS")) S PATHDOS=$G(@$$^W4GL("PATHDOS")) G PATH1
 S PATHDOS=$G(@$$^W4PL@("PATHM"))
 S PATHDOS=$P(PATHDOS,"/",1,$L(PATHDOS,"/")-2)
PATH1 I PATHDOS="" S PATHDOS="/root/dosemu/freedos"
 I $E(PATHDOS,$L(PATHDOS))'="/" S PATHDOS=PATHDOS_"/"
 I '$D(@$$^W4GL("PATHDOS")) S @$$^W4GL("PATHDOS")=PATHDOS
 Q PATHDOS

W4DP1
W4DP1 ;   [ 27.01.26 11:59 ] [ 05.11.25 04:19 ] [ 27.10.23 05:26 ] 
 N (JB,%REM,%ARG,SGIRATJOM,DOCH,DISP)
 G M
 ;
TV S P1TV=""
M N (JB,%REM,%ARG,SGIRATJOM,DOCH,DISP,P1TV,NS,NS1,SUGP,SUGP1,MEPAR,MEPAR1,ADPAR,ADPAR1,SUGDOH,MEDAT,ADDAT,MIUN,SET,SUMK,SUMHN,SHUM,SLMAM,CAI,SAI,CNT)
 D ^W4IN D ^%W1ARG
 D KILL^%W1PRM("COMPDAT")
 D KILL^%W1PRM("MANYREPS")
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S SET=$G(SET,2)
 S NS=$G(NS)
 I 'NS S NS=""
 S NS1="" I NS S NS1=$G(@$$^W4GL("P1SET")@(NS))
 S SUGP=$G(SUGP)
 I 'SUGP S SUGP=""
 S SUGP1="" I SUGP S SUGP1=$G(@$$^W4GL("PARSUG")@(SUGP))
 S MEPAR=$G(MEPAR)
 S MEPAR1="" I MEPAR S MEPAR1=$$SHEM^W4P(MEPAR)
 S ADPAR=$G(ADPAR)
 S ADPAR1="" I ADPAR S ADPAR1=$$SHEM^W4P(ADPAR)
 S SUGDOCH=$G(SUGDOCH)
 S DAT01=$$^%L1DC(MEDAT,2)
 S DAT1=MEDAT
 S DAT02=$$^%L1DC(ADDAT,2)
 S DAT2=ADDAT
 ;
 K @$$^W4MAIN("VRM")
 ;
 S SET=$G(SET,2)
 ;
 I SET'=5&'$D(P1DSHL)&'$D(P1KTV)&'$D(P1LAK)&'$D(P1KVLAK)&'$$SGYOM D  G D
 .D:SET=2 CLPLU
 .D:SET'=2 PLUHZ
 .D ALL($$^W4GL("PLUTOT")) ; --> ^VRM
 ;
 D FRMVC
 ;
D S N="",I=0,(SUMK,SHUM,SUMHN,CAI,SAI,CNT)=0
 S TEMP=$$^W4MAIN("TEMP")
 S TEMP1=$$^W4MAIN("TEMP1")
 S VRM=$$^W4MAIN("VRM")
 K @TEMP,@TEMP1
 ;
 S (SREV,SAL,SHUMAL)=0
 ;
 I SET'=4!$D(REVAH) D
 .S N="" F  S N=$O(@VRM@(N)) Q:N=""  D FRM
 ;
 N IND
 S N="" F  S N=$O(@TEMP@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .N CD,CD1 S CD=$P(A,"\"),CD1=CD
 .N NM,NM1 S NM=$P(A,"\",2),NM1=NM
 .D
 ..I CD["-T" S CD1=$P(CD,"-"),NM1=NM_" (z)",CD=CD+.000001 Q
 ..I $$DD^W4EZA(CD) S NM1=NM_" (`)" Q
 ..I $$DD^W4EZT(CD) S NM1=NM_" (w)" Q
 .N A1 S A1=$G(@TEMP@(N))
 .S $P(A1,"\")=CD1
 .S $P(A1,"\",2)=NM1
 .Q:$G(CD)=""
 .S @TEMP1@(CD)=A1
 ;
 K @TEMP S I=0,SLMAM=0
 S N="" F  S N=$O(@TEMP1@(N)) Q:N=""  D
 .S I=I+1
 .N A S A=$G(@TEMP1@(N))
 .S @TEMP@(I)=A
 ;
 K @TEMP1
 ;
 N DD S DD=$$^%L1DC(MEDAT,3)
 N AHMAM S AHMAM=$$MAMD^W4L(DD)
 S SLMAM=0
 F I=1:1 Q:'$D(@TEMP@(I))  D
 .I $G(SHUM) D
 ..N SUM S SUM=$P(@TEMP@(I),"\",5)
 ..S $P(^(I),"\",8)=$J(SUM*100/SHUM,2,2)
 ..N CD S CD=$P(^(I),"\")
 ..N LMAM S LMAM=SUM
 ..I '$$NOMAM^W4P(CD) S LMAM=$J(SUM*100/(100+AHMAM),2,2)
 ..S $P(@TEMP@(I),"\",7)=LMAM,SLMAM=SLMAM+LMAM
 .Q
 ;
 S SHUM=$J(SHUM,2,2)
 S CNT=SUMK-CAI
 I $D(REVAH) D
 .S SAHREV=""
 .I $G(SAL) S SAHREV=$J(SHUMAL-SAL/SAL*100,2,2)
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM1")
 ;
 Q
 ;
 ;
FRM ;  ^VRM(JB,PRT) --> ^TEMP(JB,I)
 ; VRM= KAM*SUM*HNH
 ;------------------
 N ST,PAR,SUG,COLV,HNV,SUMV
 ;
 S PAR=N S:PAR[":" PAR=$P(PAR,":",2)
 Q:PAR=""
 ;
 S PAR=$$^W4CDSUPR(PAR)
 I $G(NS),'$D(@$$^W4GL("P1SET")@(NS,$P(PAR,"-"))) Q
 S ST=$G(@$$^W4MAIN("VRM")@(N)) Q:'ST
 S COLV=$P(ST,"*")
 S SUMV=$P(ST,"*",2)
 S HNV=$P(ST,"*",3)
 S SUMK=SUMK+COLV
 S SHUM=SHUM+SUMV-HNV,SUMHN=SUMHN+HNV
 ;
 I $$DD^W4EZA(PAR)!$$DD^W4EZT(PAR) D
 .S CAI=CAI+COLV,SAI=SAI+SUMV-HNV
 ;
 S:'COLV $P(ST,"*")=""
 S MH=$J($$MH^W4P(PAR),2,2) S:'MH MH=""
 I SET=5 S MH="",$P(ST,"*",2)="",COLV="",SHUM=0
 S I=I+1
 S @$$^W4MAIN("TEMP")@(I)=PAR_"\"_$$SHEM^W4P(PAR)_"\"_COLV_"\"_HNV_"\"_(SUMV-HNV)_"\"_MH_"\" ;_$S($D(@$$^W4GL("P1EZ")@(PAR)):"ztqez",1:"")
 ;
EFRM D:$D(REVAH)  Q
 .N A S A=$G(@$$^W4MAIN("TEMP")@(I))
 .S AL=$$ALUT(PAR)
 .N REV S REV=0
 .I AL S REV=$P(A,"\",5)-(AL*$P(A,"\",3))
 .S SREV=SREV+REV
 .S SAL=SAL+(AL*$P(A,"\",3))
 .I AL S SHUMAL=SHUMAL+$P(A,"\",5)
 .;                         PAR,SHEM,KAM      SUM,MH
 .S @$$^W4MAIN("TEMP")@(I)=$P(A,"\",1,3)_"\"_$P(A,"\",5,6)_"\"_$J(AL,2,2)_"\"_$J(REV,2,2)_"\"
 Q
 ;
 ;
ALUT(MUZAR) ;
 N N,ALUT,AHZ S ALUT=0
 S N="" F  S N=$O(@$$^W4GML("YZM")@(MUZAR,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S AHZ=$P(A,"\",2) I 'AHZ S AHZ=100
 .S ALUT=ALUT+(A*$$MHAL(N)*100/AHZ)
 Q $J(ALUT,2,2)
 ;
MHAL(N) Q $J($P($G(@$$^W4GLM("PARIT")@(N,3)),"*",4),3,3)
 ;
FRMVC ;  -- ^P1H -> ^P1HZ -->
 N MVC,TRH,LKH,PAR,HZM,KM,PARIT,OK
 K @$$^W4MAIN("VRM"),@$$^W4MAIN("MMM")
 S TRH=$$^%L1DC(DAT1,3)-1
 ;
 N DT2 S DT2=$$^%L1DC(DAT2,3)
 F  S TRH=$O(@$$^W4GL("P1H")@(TRH)) Q:TRH=""  Q:TRH>DT2  D
 .D PUT^%W1PRM("COMPDAT",$ZD(TRH,"DD.MM.YY"))
 .S HZM="" F  S HZM=$O(@$$^W4GL("P1H")@(TRH,HZM)) Q:HZM=""  D  D CLZ
 ..I $$^W4HZMH(HZM) Q
 ..I $$I^W4PIZUL(HZM) Q
 ..I $G(P1DSHL),+$G(@$$^W4ORD@(HZM,"TM"))'=P1DSHL Q
 ..I $D(P1DSHL),'$D(@$$^W4ORD@(HZM,"TM")) Q
 ..I $D(P1KTV),$$KTV^W4L($P(@$$^W4ORD@(HZM),"\"))_" "'[(P1KTV_" ") Q
 ..
 ..I $D(P1LAK) D  Q:'OK  S @$$^W4MAIN("MMM")@(HZM)=""
 ...S OK=0 Q:$D(@$$^W4MAIN("MMM")@(HZM))
 ...I $$NMB^W4HZMST(HZM)=P1LAK,$$^W4MSL(P1LAK) S OK=1 Q
 ...I $$NMB^W4HZMST(HZM)'=P1LAK D  Q:'OK
 ....I $$MSL^W4HZMST(HZM) Q
 ....I '$D(@$$^W4ORD@(HZM,"CB","ASR")) D  Q
 .....I $$LKHN^W4HZMST(HZM)=P1LAK S OK=1 Q
 ....N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D  Q:OK
 .....I $P(^(N),"*")=P1LAK S OK=1 Q
 ..;
 ..I $D(P1KVLAK) D  Q:'OK  S @$$^W4MAIN("MMM")@(HZM)=""
 ...S OK=0 Q:$D(@$$^W4MAIN("MMM")@(HZM))
 ...N LAK S LAK=$$NMB^W4HZMST(HZM)
 ...I $$^W4MSL(LAK),$$SUGL^W4L(LAK)=P1KVLAK S OK=1 Q
 ...I $$^W4MSL(LAK) Q
 ...I '$D(@$$^W4ORD@(HZM,"CB","ASR")) D  Q
 ....S LAK=$$LKHN^W4HZMST(HZM)
 ....I $$^W4MSL(LAK),$$SUGL^W4L(LAK)=P1KVLAK S OK=1 Q
 ...N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D  Q:OK
 ....S LAK=$P(^(N),"*") I $$^W4MSL(LAK),$$SUGL^W4L(LAK)=P1KVLAK S OK=1 Q
 ..;
 ..F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $$HRP^W4HZMST(HZM,I)["rvan"&(SET=5)!(SET'=5) D
 ...D PARVRM(^(I)) D
 ....S I1=I N I S PARIT=PAR
 ....S I="" F  S I=$O(@$$^W4ORD@(HZM,I1,I)) Q:I=""  D PARTSF(I,^(I))
 ;
 I $G(DOCH)="Y"!($G(DOCH)="Z") D
 .N LAST,DT2 S DT2=$$^%L1DC(DAT2,3)
 .N LAST S LAST=$O(@$$^W4GL("P1H")@(DT2,99999999),-1)
 .I LAST S ^(LAST)=$G(@$$^W4GL("P1H")@(DT2,LAST))_",P"
 Q
 ;
 ;
CLZ ;
 I '$$SGYOM Q
 ;
 I $D(DOCH),$G(@$$^W4GL("P1H")@(TRH,HZM))["^" D  Q
 .I ^(HZM)[",P"!$O(@$$^W4GL("P1H")@(TRH,HZM)) K @$$^W4MAIN("VRM")
 ;
 I $G(DOCH)="Y"!($G(DOCH)="X"),$G(@$$^W4GL("P1H")@(TRH,HZM))["?" D
 .I ^(HZM)[",P"!$O(@$$^W4GL("P1H")@(TRH,HZM)) K @$$^W4MAIN("VRM")
 Q
 ;
 ;
CLPLU ;
 N DT1,DT2
 S DT1=$$^%L1DC(DAT01,4)
 S DT2=$$^%L1DC(DAT02,4)
 ;;Q:DT2-DT1>31
 D ^W4CLPLU(DT1,DT2)
 Q
 ;
PLUHZ ;
 N DT1,DT2
 S DT1=$$^%L1DC(DAT01,4)
 S DT2=$$^%L1DC(DAT02,4)
 ;;Q:DT2-DT1>31
 D ^W4CLPLU(DT1,DT2)
 Q
 ;
 ;
ALL(GLB) ;  ^PLUTOT(DAT,MRK,PAR) -- ^VRM(JB,PRT)
 N DT1,DT2
 S DT1=$$^%L1DC(DAT01,4)
 S DT2=$$^%L1DC(DAT02,4)
 ;
 F DT=DT1:1:DT2 D
 .N PAR,COL1,SUM1,COL,SUM,ST,SHN,HN1,DAT,A S DAT=$ZD(DT,"YYMMDD")
 .D PUT^%W1PRM("COMPDAT",$ZD(DT,"DD.MM.YY"))
 .S PAR="" F  S PAR=$O(@GLB@(DAT,MRK,PAR)) Q:PAR=""  S A=$G(^(PAR)) I $P(PAR,"-")'="" D
 ..S PAR=$$EZD(PAR)
 ..I PAR<$G(MEPAR) Q
 ..I $G(ADPAR),PAR>$G(ADPAR) Q
 ..I $G(NS),PAR,'$D(@$$^W4GL("P1SET")@(NS,$P(PAR,"-"))) Q
 ..I $G(SUGP),$$SUG^W4P($P(PAR,"-"))'=SUGP Q
 ..S COL1=$P(A,"*"),SUM1=$P(A,"*",2),HN1=$P(A,"*",4)
 ..S MH1=$$MH^W4P($P(PAR,"-"))
 ..S PRT=PAR
 ..S ST=$G(@$$^W4MAIN("VRM")@(PRT))
 ..S COL=$P(ST,"*"),SUM=$P(ST,"*",2),SHN=$P(ST,"*",3)
 ..N SCOL S SCOL=COL+COL1
 ..I SCOL["." S SCOL=$J(SCOL,3,3)
 ..S @$$^W4MAIN("VRM")@(PRT)=SCOL_"*"_(SUM+SUM1)
 ..S $P(@$$^W4MAIN("VRM")@(PRT),"*",3)=SHN+HN1
 .Q
 Q
 ;
PARVRM(STHZ) ;
 N PRT,COL,COL1,ST,SUM,SUM1
 S PAR=$P(STHZ,"\",1)
 S PAR=$$EZD(PAR)
 S PRT=PAR Q:PRT=""
 ;
 I PAR?1N.N D
 .S PRT=PAR
 .S PRT=PRT_$S($P(STHZ,"\",2)'="":"-"_$P(STHZ,"\",2),1:"-00")
 ;
 S COL1=$P(STHZ,"\",5)
 S SUM1=$P(STHZ,"\",7)-$P(STHZ,"\",6)
 S ST=$G(@$$^W4MAIN("VRM")@(PRT))
 S COL=$P(ST,"*"),SUM=$P(ST,"*",2)
 N SCOL S SCOL=COL+COL1
 I SCOL["." S SCOL=$J(SCOL,3,3)
 S @$$^W4MAIN("VRM")@(PRT)=SCOL_"*"_(SUM+SUM1)
 S COLP=COL1
 Q
 ;
 ;
PARTSF(PAR,STTSF) ;
 N PRT,COL,COL1,ST,SUM,SUM1,MHT
 S PAR=$$EZD(PAR)
 S PRT=PAR
 ;
 D
 .I '$P(STTSF,"\",3) S COL1=COLP Q
 .S COL1=+$P(STTSF,"\",3)
 ;
 S MHT=$P(STTSF,"\",2)
 S SUM1=COL1*MHT ;;*4
PTSF Q:$G(PRT)=""
 S ST=$G(@$$^W4MAIN("VRM")@(PRT))
 S COL=$P(ST,"*"),SUM=$P(ST,"*",2)
 N SCOL S SCOL=COL+COL1
 I SCOL["." S SCOL=$J(SCOL,3,3)
 S @$$^W4MAIN("VRM")@(PRT)=SCOL_"*"_(SUM+SUM1)
 Q
 ;
 ;
 ;
PRT1 S @%PRT1="" I $L($G(@%PRT)) S @%PRT1=$$SHEM^W4P(%PRT)
 Q
EREND S %SC("ER")=1 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4DP1-CHKPRM","MEPAR=ADPAR & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MEPAR>ADPAR Q "0;RANGENOTVALID;;MEPAR"
 Q 1
 ;
SCRN(STAM) ;
 Q "W4DP1"
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
 ;
SGYOM(STAM) ; 
 I $D(SGIRATJOM) Q 1
 Q 0
 ;
EZD(PAR) ; 
 I $G(PAR)="" Q ""
 I $P(PAR,"-")="" Q ""
 I $G(@$$^W4GL("W4EZD")@(PAR)) Q ^(PAR) 
 I $G(@$$^W4GL("W4EZD")@($P(PAR,"-"))) Q ^($P(PAR,"-")) 
 Q PAR 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DP10
W4DP1 ;   [ 19.10.21 18:01 ] [ 10.10.21 10:42 ] [ 18.01.21 14:50 ] 
 N (JB,%REM,%ARG,SGIRATJOM,DOCH,DISP)
 G M
 ;
TV S P1TV=""
M N (JB,%REM,%ARG,SGIRATJOM,DOCH,DISP,P1TV,NS,NS1,SUGP,SUGP1,MEPAR,MEPAR1,ADPAR,ADPAR1,SUGDOH,MEDAT,ADDAT,MIUN,SET,SUMK,SUMHN,SHUM,SLMAM,CAI,SAI,CNT)
 D ^W4IN D ^%W1ARG
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S SET=$G(SET,2)
 S NS=$G(NS)
 I 'NS S NS=""
 S NS1="" I NS S NS1=$G(@$$^W4GL("P1SET")@(NS))
 S SUGP=$G(SUGP)
 I 'SUGP S SUGP=""
 S SUGP1="" I SUGP S SUGP1=$G(@$$^W4GL("PARSUG")@(SUGP))
 S MEPAR=$G(MEPAR)
 S MEPAR1="" I MEPAR S MEPAR1=$$SHEM^W4P(MEPAR)
 S ADPAR=$G(ADPAR)
 S ADPAR1="" I ADPAR S ADPAR1=$$SHEM^W4P(ADPAR)
 S SUGDOCH=$G(SUGDOCH)
 S DAT01=$$^%L1DC(MEDAT,2)
 S DAT1=MEDAT
 S DAT02=$$^%L1DC(ADDAT,2)
 S DAT2=ADDAT
 ;
 K @$$^W4MAIN("VRM")
 ;
 S SET=$G(SET,2)
 ;
 I SET'=5&'$D(P1DSHL)&'$D(P1KTV)&'$D(P1LAK)&'$D(P1KVLAK)&'$$SGYOM D  G D
 .D:SET=2 CLPLU
 .D:SET'=2 PLUHZ
 .D ALL($$^W4GL("PLUTOT")) ; --> ^VRM
 ;
 D FRMVC
 ;
D S N="",I=0,(SUMK,SHUM,SUMHN,CAI,SAI,CNT)=0
 S TEMP=$$^W4MAIN("TEMP")
 S TEMP1=$$^W4MAIN("TEMP1")
 S VRM=$$^W4MAIN("VRM")
 K @TEMP,@TEMP1
 ;
 S (SREV,SAL,SHUMAL)=0
 ;
 I SET'=4!$D(REVAH) D
 .S N="" F  S N=$O(@VRM@(N)) Q:N=""  D FRM
 ;
 N IND
 S N="" F  S N=$O(@TEMP@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .N CD,CD1 S CD=$P(A,"\"),CD1=CD
 .N NM,NM1 S NM=$P(A,"\",2),NM1=NM
 .D
 ..I CD["-T" S CD1=$P(CD,"-"),NM1=NM_" (z)",CD=CD+.000001 Q
 ..I $$D^W4EZA(CD) S NM1=NM_" (`)" Q
 ..I $$D^W4EZT(CD) S NM1=NM_" (w)" Q
 .N A1 S A1=@TEMP@(N)
 .S $P(A1,"\")=CD1
 .S $P(A1,"\",2)=NM1
 .S @TEMP1@(CD)=A1
 ;
 K @TEMP S I=0,SLMAM=0
 S N="" F  S N=$O(@TEMP1@(N)) Q:N=""  D
 .S I=I+1
 .N A S A=$G(@TEMP1@(N))
 .S @TEMP@(I)=A
 ;
 K @TEMP1
 ;
 N DD S DD=$$^%L1DC(MEDAT,3)
 N AHMAM S AHMAM=$$MAMD^W4L(DD)
 S SLMAM=0
 F I=1:1 Q:'$D(@TEMP@(I))  D
 .I $G(SHUM) D
 ..N SUM S SUM=$P(@TEMP@(I),"\",5)
 ..S $P(^(I),"\",8)=$J(SUM*100/SHUM,2,2)
 ..N CD S CD=$P(^(I),"\")
 ..N LMAM S LMAM=SUM
 ..I '$$NOMAM^W4P(CD) S LMAM=$J(SUM*100/(100+AHMAM),2,2)
 ..S $P(@TEMP@(I),"\",7)=LMAM,SLMAM=SLMAM+LMAM
 .Q
 ;
 S SHUM=$J(SHUM,2,2)
 S CNT=SUMK-CAI
 I $D(REVAH) D
 .S SAHREV=""
 .I $G(SAL) S SAHREV=$J(SHUMAL-SAL/SAL*100,2,2)
 ;
 ;;K @$$^W4MAIN("VRM") ; ***
 ;;K @$$^W4MAIN("VRM1") ; ***
 ;
 Q
 ;
 ;
FRM ;  ^VRM(JB,PRT) --> ^TEMP(JB,I)
 ; VRM= KAM*SUM*HNH
 ;------------------
 N ST,PAR,SUG,COLV,HNV,SUMV
 ;
 S PAR=N S:PAR[":" PAR=$P(PAR,":",2)
 Q:PAR=""
 ;
 S PAR=$$^W4CDSUPR(PAR)
 I $G(NS),'$D(@$$^W4GL("P1SET")@(NS,$P(PAR,"-"))) Q
 S ST=$G(@$$^W4MAIN("VRM")@(N)) Q:'ST
 S COLV=$P(ST,"*")
 S SUMV=$P(ST,"*",2)
 S HNV=$P(ST,"*",3)
 S SUMK=SUMK+COLV
 S SHUM=SHUM+SUMV-HNV,SUMHN=SUMHN+HNV
 ;
 I $$D^W4EZA(PAR)!$$D^W4EZT(PAR) D
 .S CAI=CAI+COLV,SAI=SAI+SUMV-HNV
 ;
 S:'COLV $P(ST,"*")=""
 S MH=$J($$MH^W4P(PAR),2,2) S:'MH MH=""
 I SET=5 S MH="",$P(ST,"*",2)="",COLV="",SHUM=0
 S I=I+1
 S @$$^W4MAIN("TEMP")@(I)=PAR_"\"_$$SHEM^W4P(PAR)_"\"_COLV_"\"_HNV_"\"_(SUMV-HNV)_"\"_MH_"\" ;_$S($D(@$$^W4GL("P1EZ")@(PAR)):"ztqez",1:"")
 ;
EFRM D:$D(REVAH)  Q
 .N A S A=@$$^W4MAIN("TEMP")@(I)
 .S AL=$$ALUT(PAR)
 .N REV S REV=0
 .I AL S REV=$P(A,"\",5)-(AL*$P(A,"\",3))
 .S SREV=SREV+REV
 .S SAL=SAL+(AL*$P(A,"\",3))
 .I AL S SHUMAL=SHUMAL+$P(A,"\",5)
 .;                         PAR,SHEM,KAM      SUM,MH
 .S @$$^W4MAIN("TEMP")@(I)=$P(A,"\",1,3)_"\"_$P(A,"\",5,6)_"\"_$J(AL,2,2)_"\"_$J(REV,2,2)_"\"
 Q
 ;
 ;
ALUT(MUZAR) ;
 N N,ALUT,AHZ S ALUT=0
 S N="" F  S N=$O(@$$^W4GML("YZM")@(MUZAR,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S AHZ=$P(A,"\",2) I 'AHZ S AHZ=100
 .S ALUT=ALUT+(A*$$MHAL(N)*100/AHZ)
 Q $J(ALUT,2,2)
 ;
MHAL(N) Q $J($P($G(@$$^W4GLM("PARIT")@(N,3)),"*",4),3,3)
 ;
FRMVC ;  -- ^P1H -> ^P1HZ -->
 N MVC,TRH,LKH,PAR,HZM,KM,PARIT,OK
 K @$$^W4MAIN("VRM"),@$$^W4MAIN("MMM")
 S TRH=$$^%L1DC(DAT1,3)-1
 ;
 N DT2 S DT2=$$^%L1DC(DAT2,3)
 F  S TRH=$O(@$$^W4GL("P1H")@(TRH)) Q:TRH=""  Q:TRH>DT2  D
 .S HZM="" F  S HZM=$O(@$$^W4GL("P1H")@(TRH,HZM)) Q:HZM=""  D  D CLZ
 ..I $$^W4HZMH(HZM) Q
 ..I $$I^W4PIZUL(HZM) Q
 ..I $G(P1DSHL),+$G(@$$^W4ORD@(HZM,"TM"))'=P1DSHL Q
 ..I $D(P1DSHL),'$D(@$$^W4ORD@(HZM,"TM")) Q
 ..I $D(P1KTV),$$KTV^W4L($P(@$$^W4ORD@(HZM),"\"))_" "'[(P1KTV_" ") Q
 ..
 ..I $D(P1LAK) D  Q:'OK  S @$$^W4MAIN("MMM")@(HZM)=""
 ...S OK=0 Q:$D(@$$^W4MAIN("MMM")@(HZM))
 ...I $$NMB^W4HZMST(HZM)=P1LAK,$$^W4MSL(P1LAK) S OK=1 Q
 ...I $$NMB^W4HZMST(HZM)'=P1LAK D  Q:'OK
 ....I $$MSL^W4HZMST(HZM) Q
 ....I '$D(@$$^W4ORD@(HZM,"CB","ASR")) D  Q
 .....I $$LKHN^W4HZMST(HZM)=P1LAK S OK=1 Q
 ....N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D  Q:OK
 .....I $P(^(N),"*")=P1LAK S OK=1 Q
 ..;
 ..I $D(P1KVLAK) D  Q:'OK  S @$$^W4MAIN("MMM")@(HZM)=""
 ...S OK=0 Q:$D(@$$^W4MAIN("MMM")@(HZM))
 ...N LAK S LAK=$$NMB^W4HZMST(HZM)
 ...I $$^W4MSL(LAK),$$SUGL^W4L(LAK)=P1KVLAK S OK=1 Q
 ...I $$^W4MSL(LAK) Q
 ...I '$D(@$$^W4ORD@(HZM,"CB","ASR")) D  Q
 ....S LAK=$$LKHN^W4HZMST(HZM)
 ....I $$^W4MSL(LAK),$$SUGL^W4L(LAK)=P1KVLAK S OK=1 Q
 ...N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D  Q:OK
 ....S LAK=$P(^(N),"*") I $$^W4MSL(LAK),$$SUGL^W4L(LAK)=P1KVLAK S OK=1 Q
 ..;
 ..F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $$HRP^W4HZMST(HZM,I)["rvan"&(SET=5)!(SET'=5) D
 ...N A S A=$G(@$$^W4ORD@(HZM,I))
 ...D PARVRM(A) D
 ....S I1=I N I S PARIT=PAR
 ....S I="" F  S I=$O(@$$^W4ORD@(HZM,I1,I)) Q:I=""  D PARTSF(I,^(I))
 ;
 I $G(DOCH)="Y"!($G(DOCH)="Z") D
 .N LAST,DT2 S DT2=$$^%L1DC(DAT2,3)
 .N LAST S LAST=$O(@$$^W4GL("P1H")@(DT2,99999999),-1)
 .I LAST S ^(LAST)=@$$^W4GL("P1H")@(DT2,LAST)_",P"
 Q
 ;
 ;
CLZ ;
 I '$$SGYOM Q
 ;
 I $D(DOCH),$G(@$$^W4GL("P1H")@(TRH,HZM))["^" D  Q
 .I ^(HZM)[",P"!$O(@$$^W4GL("P1H")@(TRH,HZM)) K @$$^W4MAIN("VRM")
 ;
 I $G(DOCH)="Y"!($G(DOCH)="X"),$G(@$$^W4GL("P1H")@(TRH,HZM))["?" D
 .I ^(HZM)[",P"!$O(@$$^W4GL("P1H")@(TRH,HZM)) K @$$^W4MAIN("VRM")
 Q
 ;
 ;
CLPLU ;
 N DT1,DT2
 S DT1=$$^%L1DC(DAT01,4)
 S DT2=$$^%L1DC(DAT02,4)
 ;;Q:DT2-DT1>31
 D ^W4CLPLU(DT1,DT2)
 Q
 ;
PLUHZ ;
 N DT1,DT2
 S DT1=$$^%L1DC(DAT01,4)
 S DT2=$$^%L1DC(DAT02,4)
 ;;Q:DT2-DT1>31
 D ^W4CLPLU(DT1,DT2)
 Q
 ;
 ;
ALL(GLB) ;  ^PLUTOT(DAT,MRK,PAR) -- ^VRM(JB,PRT)
 N DT1,DT2
 S DT1=$$^%L1DC(DAT01,4)
 S DT2=$$^%L1DC(DAT02,4)
 ;
 F DT=DT1:1:DT2 D
 .N PAR,COL1,SUM1,COL,SUM,ST,SHN,HN1,DAT,A S DAT=$ZD(DT,"YYMMDD")
 .S PAR="" F  S PAR=$O(@GLB@(DAT,MRK,PAR)) Q:PAR=""  S A=$G(^(PAR)) I $P(PAR,"-")'="" D
 ..S PAR=$$EZD($P(PAR,"-"))
 ..I PAR<$G(MEPAR) Q
 ..I $G(ADPAR),PAR>$G(ADPAR) Q
 ..I $G(NS),PAR,'$D(@$$^W4GL("P1SET")@(NS,$P(PAR,"-"))) Q
 ..I $G(SUGP),$$SUG^W4P($P(PAR,"-"))'=SUGP Q
 ..S COL1=$P(A,"*"),SUM1=$P(A,"*",2),HN1=$P(A,"*",4)
 ..S MH1=$$MH^W4P($P(PAR,"-"))
 ..S PRT=PAR
 ..S ST=$G(@$$^W4MAIN("VRM")@(PRT))
 ..S COL=$P(ST,"*"),SUM=$P(ST,"*",2),SHN=$P(ST,"*",3)
 ..N SCOL S SCOL=COL+COL1
 ..I SCOL["." S SCOL=$J(SCOL,3,3)
 ..S @$$^W4MAIN("VRM")@(PRT)=SCOL_"*"_(SUM+SUM1)
 ..S $P(@$$^W4MAIN("VRM")@(PRT),"*",3)=SHN+HN1
 .Q
 Q
 ;
PARVRM(STHZ) ;
 N PRT,COL,COL1,ST,SUM,SUM1
 S PAR=$P(STHZ,"\",1) S PRT=PAR Q:PRT=""
 S PRT=$$EZD(PRT)
 ;
 I PAR?1N.N.".".N D
 .S PRT=PRT_$S($P(STHZ,"\",2)'="":"-"_$P(STHZ,"\",2),1:"-00")
 ;
 S COL1=$P(STHZ,"\",5)
 S SUM1=$P(STHZ,"\",7)-$P(STHZ,"\",6)
 S ST=$G(@$$^W4MAIN("VRM")@(PRT))
 S COL=$P(ST,"*"),SUM=$P(ST,"*",2)
 N SCOL S SCOL=COL+COL1
 I SCOL["." S SCOL=$J(SCOL,3,3)
 S @$$^W4MAIN("VRM")@(PRT)=SCOL_"*"_(SUM+SUM1)
 S COLP=COL1
 Q
 ;
 ;
PARTSF(PAR,STTSF) ;
 N PRT,COL,COL1,ST,SUM,SUM1,MHT
 S PRT=PAR
 S PRT=$$EZD($P(PAR,"-"))
 ;
 D
 .I '$P(STTSF,"\",3) S COL1=COLP Q
 .S COL1=+$P(STTSF,"\",3)
 ;
 S MHT=$P(STTSF,"\",2)
 S SUM1=COL1*MHT ;;*4
PTSF S ST=$G(@$$^W4MAIN("VRM")@(PRT))
 S COL=$P(ST,"*"),SUM=$P(ST,"*",2)
 N SCOL S SCOL=COL+COL1
 I SCOL["." S SCOL=$J(SCOL,3,3)
 S @$$^W4MAIN("VRM")@(PRT)=SCOL_"*"_(SUM+SUM1)
 Q
 ;
 ;
 ;
PRT1 S @%PRT1="" I $L($G(@%PRT)) S @%PRT1=$$SHEM^W4P(%PRT)
 Q
EREND S %SC("ER")=1 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4DP1-CHKPRM","MEPAR=ADPAR & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MEPAR>ADPAR Q "0;RANGENOTVALID;;MEPAR"
 Q 1
 ;
SCRN(STAM) ;
 Q "W4DP1"
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
 ;
SGYOM(STAM) ; 
 I $D(SGIRATJOM) Q 1
 Q 0
 ;
EZD(PAR) ; 
 I $G(@$$^W4GL("W4EZD")@(PAR)) Q ^(PAR) 
 Q PAR 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DPARM0
W4DPARMM ; [ 10.10.14 18:29 ] [
 N (JB,%ARG)
 ;
 D INIT
 D FRM
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_" >",!
 W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("MONTHITEMREPORT",MM1_"<>"_YY1)
 W "</span>",!
 ;
 W "<br><br>",!
 S FIX=" style=""position:fixed;left:200px"" "
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" "
 W " class=""table-wrapper"" "
 W "cellspacing=""0"" cellpadding=""1"" >",!
 W " <tr>"
  W " <th>"_$$^%W1DICT("LINE")_"</th>",!
  W " <th>"_$$^%W1DICT("ITEMNUMBER")_"</th>",!
  W " <th>"_$$^%W1DICT("ITEMNAME")_"</th>",!
  F DT=DT1:1:DT2 D
  .W "<th>"_$ZD(DT,"DD.MM.YY")_"</th>",!
 W " </tr>",!
 ;
 K SS
 S PAR="" F K=1:1 S PAR=$O(@VRM@(PAR)) Q:PAR=""  D
 .W "<tr>"
 .W " <td style=""background-color:lightgrey;font-size:"_$$^W3FSZ(8)_""">"_K_"</td>"
 .W " <td>"_PAR_"</td>"
 .S PAR1=$$SHEM^W4P(PAR)
 .W " <td>"_$$H2U^%L1FRM(PAR1)_"</td>"
 .F DT=DT1:1:DT2 D
 ..S VL=$S(PRSUM:$G(@VRM@(PAR,DT,"SUM")),1:$G(@VRM@(PAR,DT,"QN")))
 ..D RKV(VL)
 ..S SS(DT)=$G(SS(DT))+VL
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"" >"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  F DT=DT1:1:DT2 D
  .S VL=$G(SS(DT))
  .D RKV(VL)
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 K @VRM
 Q
 ;
 ;
YY ;
 W $$^%W1DICT("CHOICEYEAR")_"&nbsp;"
 W "<select id=""yyyy"">",!
 N I F I=2011:1:2025 D
 .W "<option "
 .I I=$ZD($H,"YEAR") W "selected=""selected"" "
 .W ">"_I_"</option>",!
 W "</select>",!
 Q
 ;
MM ;
 W $$^%W1DICT("CHOICEMONTH")_"&nbsp;"
 W "<select id=""mm"">",!
 N I F I=1:1:12 D
 .W "<option value="""_I_""" "
 .I I=$ZD($H,"MM") W "selected=""selected"" "
 .W ">"_$$^%W1DICT("MM"_I)_"</option>",!
 W "</select>",!
 Q
 ;
RKV(VL) ;
 S VL=$G(VL)
 I VL,$G(PRSUM) S VL=$J(VL,2,2)
 I 'VL S VL="-"
 W " <td "
 I VL="-" W " align=""center"" "
 I VL<0 W " style=""color:red"" "
 W ">"_VL_"</td>"
 Q
 ;
INIT ;
 S YYYYMM=$G(%ARG("YYYYMM"))
 S MM=$E(YYYYMM,5,6)
 S MM1=$$TV^%W1DICT($$^%W1LNG,"MM"_+MM)
 S YY1=$E(YYYYMM,1,4)
 S YY=$E(YY1,3,4)
 S PRSUM=$G(%ARG("PRSUM"))
 S MM=$TR($J(MM,2)," ",0)
 S DT1=$$^%L1DC("01"_MM_YY,3)
 S DT2=$$LM^%L1DC(DT1)
 ;
 S PLUTOT=$$^W4GL("PLUTOT")
 S VRM=$$^W4MAIN("VRM") K @VRM
 D MRK^W4IN
 Q
 ;
FRM ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .S PAR="" F  S PAR=$O(@PLUTOT@(DAT,MRK,PAR)) Q:PAR=""  I PAR?1N.N.".".N D
 ..S A=$G(@PLUTOT@(DAT,MRK,PAR))
 ..S @VRM@(PAR,DT,"QN")=$G(@VRM@(PAR,DT,"QN"))+$P(A,"*")
 ..S @VRM@(PAR,DT,"SUM")=$G(@VRM@(PAR,DT,"SUM"))+$P(A,"*",2)-$P(A,"*",4)
 Q
 ;
 ;

W4DPARMM
W4DPARMM ; [ 12.11.24 18:42 ] [ 18.02.22 11:17 ] [ 02.12.21 10:38 ] 
 N (JB,%ARG)
 ;
 D INIT
 D FRM
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("MONTHITEMREPORT",MM1_"<>"_YY1)
 W "</span>",!
 ;
 W "<br><br>",!
  W "<table id=""TblPrm"" >"
   W "<tr>"
    W "<td>"
    W $$^%W1DICT("GROUP")
     S GRSEL=$G(%ARG("GROUP"))
     I 'GRSEL S GRSEL="ALL"
     W "<select id=""group"" onChange=""ChangeGroup"">",!
       I '$$^W4MUCHIT D
       .W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
       D ^W4SHOWKV("A","VWKV^W3PRTIDK(""A"")")
     W "</select>",!
    W "</td>"
    ;
    W "<td>&nbsp;</td>"
    ;
    W "<td>"
     W $$^%W1DICT("PERQN")_" <input type=""radio"" name=""kind"" "
    W $S('PRSUM:" checked=""checked"" ",1:"")_" id=""perqn"" onClick=""ChangeKind()"" />"
    W "</td>"
    ;
    W "<td>"
     W $$^%W1DICT("PERSUM")_" <input type=""radio"" name=""kind"" "
     W $S(PRSUM:" checked=""checked"" ",1:"")_" id=""persum"" onClick=""ChangeKind()"" />"
    W "</td>"
    ;
    F J=1:1:7 D
    .W "<td>"
    . W $$^%W1DICT("DAY"_J)_" "
    . W "<input type=""checkbox"" name=""days"" "
    . D
    . .I $G(%ARG("DAYS"))="" W " checked=""checked"" " Q
    . .I $E($G(%ARG("DAYS")),J) W " checked=""checked"" " Q
    . W "id=""day"_J_""">",!
    .W "</td>",!
    ;
   W "<td>&nbsp;</td>",!
   ;
   D SELDAY("FROM","meday")
   D SELDAY("TO","adday")
   ;
   W " <td align=""center"" id=""tdshow"">",!
         D ROUNDBUT^%W1JS("show",$$^%W1DICT("SHOW"),"ChangeKind()","color:green","wh,22")
   W " </td>",!
   ;
   W " <td align=""center"" id=""tdprint"">",!
         D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"Print()","color:blue","wh,22")
   W " </td>",!
   ;
   W " <td align=""center"" id=""tdback"">",!
         D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   W " </td>",!
  W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
  D DIVEXC^%W1PC1("W4DPARMM")
 ;;W "<br>",!
 ;
 S PG=0
 D KOT
 ;
 K SS S RZ=35
 S PAR="" F  S PAR=$O(@VRM@(PAR)) Q:PAR=""  D
 .I $G(%ARG("GROUP")),$$SUG^W4P(PAR)'=$G(%ARG("GROUP")) Q
 .S K=K+1 I K>RZ D KOT
 .S EX=""
 .W "<tr onClick=""CurrentLine(this,'"_PAR_"','"_DT1_"','"_DT2_"')"" "
 . W " style="""
 . W "cursor:pointer;"
 . I K#2 W "background-color:E5FFEE"
 . I '(K#2) W "background-color:white"
 . W """"
 .W ">"
 .W " <td style=""background-color:lightgrey;font-size:"_$$^W3FSZ(7)_""">"_K_"</td>"
 .S EX=EX_$$EXC(K)
 .W " <td>"_PAR_"</td>"
 .S EX=EX_$$EXC(PAR)
 .S PAR1=$$H2U^%L1FRM($$SHEM^W4P(PAR))
 .S EX=EX_$$EXC($$SHEM^W4P(PAR))
 .I PAR1="" S PAR1="&nbsp;"
 .W " <td>"_PAR1_"</td>"
 .S SG=0
 .;
 .F DT=DT1:1:DT2 D
 ..I '$$CONDT(DT) Q
 ..S VL=$S(PRSUM:$G(@VRM@(PAR,DT,"SUM")),1:$G(@VRM@(PAR,DT,"QN")))
 ..D RKV(VL)
 ..S SS(DT)=$G(SS(DT))+VL
 ..S SG=SG+VL
 .I PRSUM S SG=$J(SG,2,2)
 .D RKV(SG,1)
 .W "</tr>",!
 .D WEX(EX)
 ;
 S EX=""
 W "<tr style=""background-color:yellow;font-weight:bold"" >"
  W "<td>&nbsp;</td>"
  S EX=EX_$$EXC("")
  W "<td>&nbsp;</td>"
  S EX=EX_$$EXC("")
  W "<td>&nbsp;</td>"
  S EX=EX_$$EXC("")
  S SG=0
  F DT=DT1:1:DT2 D
  .I '$$CONDT(DT) Q
  .S VL=$G(SS(DT))
  .D RKV(VL)
  .S SG=SG+VL
  I PRSUM S SG=$J(SG,2,2)
  D RKV(SG,1)
 W "</tr>",!
 D WEX(EX)
 ;
 W "</table>",!
 W "</div>",!
 C FLCSV
 ;
 Q
 ;
 ;
YY ;
 W $$^%W1DICT("CHOICEYEAR")_"&nbsp;"
 W "<select id=""yyyy"">",!
 N I F I=2011:1:2025 D
 .W "<option "
 .I I=$ZD($H,"YEAR") W "selected=""selected"" "
 .W ">"_I_"</option>",!
 W "</select>",!
 Q
 ;
MM ;
 W $$^%W1DICT("CHOICEMONTH")_"&nbsp;"
 W "<select id=""mm"">",!
 N I F I=1:1:12 D
 .W "<option value="""_I_""" "
 .I I=+$ZD($H,"MM") W "selected=""selected"" "
 .W ">"_$$^%W1DICT("MM"_I)_"</option>",!
 W "</select>",!
 Q
 ;
RKV(VL,PRTOT) ;
 S VL=$G(VL)
 I VL,$G(PRSUM) S VL=$J(VL,2,2)
 I 'VL S VL="&nbsp;"
 W " <td "
 W " style="""
 I VL="-" W "text-align:center"
 I VL<0 W "color:red"
 I $G(PRTOT) W ";background-color:yellow;font-weight:bold"
 W """"
 W ">"_VL_"</td>"
 I $D(EX) S EX=EX_$$EXC(+VL)
 Q
 ;
INIT ;
 S YYYYMM=$G(%ARG("YYYYMM"))
 S MM=$E(YYYYMM,5,6)
 S MM1=$$TV^%W1DICT($$^%W1LNG,"MM"_+MM)
 S YY1=$E(YYYYMM,1,4)
 S YY=$E(YY1,3,4)
 S MM=$TR($J(MM,2)," ",0)
 S DT1=$$^%L1DC("01"_MM_YY,3)
 S DT2=$$LM^%L1DC(DT1)
 ;
 I $G(%ARG("MEDAY")) S DT1=$$^%L1DC($TR($J(%ARG("MEDAY"),2)," ",0)_MM_YY,3)
 I $G(%ARG("ADDAY")) S DT2=$$^%L1DC($TR($J(%ARG("ADDAY"),2)," ",0)_MM_YY,3)
 ;
 S PRSUM=$G(%ARG("PRSUM"))
 ;
 S PLUTOT=$$^W4GL("PLUTOT")
 S VRM=$$^W4MAIN("VRM") K @VRM
 D MRK^W4IN
 D OPEXC("W4DPARMM","csv")
 Q
 ;
FRM ;
 F DT=DT1:1:DT2 D
 .I '$$CONDT(DT) Q
 .S DAT=$ZD(DT,"YYMMDD")
 .S PAR="" F  S PAR=$O(@PLUTOT@(DAT,MRK,PAR)) Q:PAR=""  I $$ISNUM^%L1FRM(PAR) D
 ..S A=$G(@PLUTOT@(DAT,MRK,PAR))
 ..S @VRM@(PAR,DT,"QN")=$G(@VRM@(PAR,DT,"QN"))+$P(A,"*")
 ..S @VRM@(PAR,DT,"SUM")=$G(@VRM@(PAR,DT,"SUM"))+$P(A,"*",2)-$P(A,"*",4)
 Q
 ;
 ;
CONDT(DT) ;
 N NDT
 I $G(%ARG("MEDAY")),$ZD(DT,"DD")<$G(%ARG("MEDAY")) Q 0
 I $G(%ARG("ADDAY")),$ZD(DT,"DD")>$G(%ARG("ADDAY")) Q 0
 S NDT=$$^%L1DC(DT,8)
 I $G(%ARG("DAYS"))="" Q 1
 I $E(%ARG("DAYS"),NDT) Q 1
 Q 0
 ;
SELDAY(RKV,ID)
 N DT1,DT2,MEDAY,ADDAY
 S DT1=$$^%L1DC("01"_MM_YY,3)
 S DT2=$$LM^%L1DC(DT1)
 S MEDAY=1
 I $G(%ARG("MEDAY")) S MEDAY=%ARG("MEDAY")
 S ADDAY=+$ZD(DT2,"DD")
 I $G(%ARG("ADDAY")) S ADDAY=%ARG("ADDAY")
 ;
 W "<td>"_$$^%W1DICT(RKV)_" "
  W "<select id="""_ID_""">"
   N K,DT S K=0
   F DT=DT1:1:DT2 D
   .S K=K+1
   .W "<option value="""_K_""" "
   . I RKV="FROM",+$ZD(DT,"DD")=MEDAY W " selected=""selected"" "
   . I RKV="TO",+$ZD(DT,"DD")=ADDAY W " selected=""selected"" "
   . W "> "_$ZD(DT,"DD.MM.YY")_" '"_$$H2U^%L1FRM($$^%L1DC(DT,9))
   .W "</option>",!
   W "</select>",!
  W "</td>"
  Q
  ;
  ;
OPEXC(COD,FMT) ;
 S FL=$$FL^%W1FREPX(COD,FMT)
 S FLCSV=FL_"."_FMT1
 N A,B,I,J,RZD
 S ^LEVDEB("FLCSV")=FLCSV
 O FLCSV:(REWIND:NEWVERSION:WRITE:SYSTEM="rwx":GROUP="rx":WORLD="rx")
 Q
 ;
EXC(VL) ;
 Q $$RKV^%W1PCEX(VL)
 ;
WEX(TX) ;
 U FLCSV W TX,! U 0
 Q
 ;
KOT ;
 I PG D
 .W "</table>",!
 .D PGBREAK
 ;
 S HD="" S PG=PG+1
 W "<p align=""left"">",!
 W " "_$$^%W1DICT("PAGE")_" "_PG_" "
 W "</p>",!
 S K=0
 W "<table dir="""_$$^%W1DIR_""" border=""1"" "
 W "cellspacing=""0"" cellpadding=""1"" >",!
 W " <tr>"
  W " <th>"_$$^%W1DICT("LINE")_"</th>",!
  S HD=HD_$$EXC($$TV^%W1DICT($$^%W1LNG,"LINE"))
  W " <th>"_$$^%W1DICT("ITEMNUMBER")_"</th>",!
  S HD=HD_$$EXC($$TV^%W1DICT($$^%W1LNG,"ITEMNUMBER"))
  W " <th width=""150px"">"_$$^%W1DICT("ITEMNAME")_"</th>",!
  S HD=HD_$$EXC($$TV^%W1DICT($$^%W1LNG,"ITEMNAME"))
  ;
  F DT=DT1:1:DT2 D
  .I '$$CONDT(DT) Q
  .W "<th>"_$ZD(DT,"DD.MM.YY")_" "_$$H2U^%L1FRM($$^%L1DC(DT,9))_"</th>",!
  .S HD=HD_$$EXC($ZD(DT,"DD.MM.YY")_" "_$$^%L1DC(DT,9))
  ;
  W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
  S HD=HD_$$EXC($TR($$TV^%W1DICT($$^%W1LNG,"TOTAL"),"""",""))
 W " </tr>",!
 ;
 D WEX(HD)
 Q
 ;
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DPARS
W4DPARS ; DOSCH PRITIM LEFI SHAOT   [ 26.03.23 09:50 ] [ 21.02.22 07:17 ] [ 24.10.21 16:25 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S %REPN="W4PARS"
 S @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4dpars.jsp?JB="_JB)
 Q
 ;
 ;
DAT ;
 I '$$GETP^%W1PRM("W4DPARS") D
 .D ^W4CLPLU(METRH,ADTRH)
 .D PUT^%W1PRM("W4DPARS",$H)
 ;
 N DT S DT=$$^%L1DC(DAT,4)
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=0 Q
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;
 S TRH=$$^%L1DC(DAT,1)
 Q
 ;
PAR ;
 S DEP1="" S DEP=$$DEP^W4P(PAR) ;
 I DEP<MEDEP!(DEP>ADDEP) S OK=0 Q
 S SUGP=$$SUG^W4P(PAR)
 I SUGP<MESUGP!(SUGP>ADSUGP) S OK=0
 Q
 ;
SHAA S SHAA1=+$TR(SHAA," ","")
 I $$^W4SHAAZ,SHAA1<$$SHAAZ^W4PRM S SHAA1=SHAA1+24
 I SHAA1<MESHAA1!(SHAA1'<ADSHAA1) S OK=0 Q
 S x1=$P(@GLOB,"*",1)
 S x2=$P(@GLOB,"*",2)
 S x3=$P(@GLOB,"*",4)
 S x4=x2-x3
 N KDM S KDM=""
 I SHAA1>23 S SHAA1=SHAA1-24,KDM="24+"
 S SHAA1=KDM_$J(+SHAA1,2)_" - "_$J(SHAA1+1,2)
 Q
 
 
 
 
 
 
 
 

W4DPAY
W4DPAY ; -- DOH LEFI SUGEY TASHLUM ; [ 14.05.26 12:51 ] [ 04.11.25 12:50 ] [ 25.06.24 06:41 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%ARG("REPN")
 Q
 ;
DATH I DATH<METRHT!(DATH>ADTRHT) S OK=0 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DATH,8)) S OK=0 Q
 ;
 S TRHT=$$^%L1DC(DATH,1)
 Q
 ;
 ;
HZM D GA^W4SCREF("P1HZMS",$$^W4ORD_"("_HZM_")")
 S MLZ=MKBL
 I $$^W4MSD(NMB),$G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")) D
 .I $G(@$$^W4GL("P1MLZ")@(HZM)) S MLZ=$G(^(HZM))
 ;
 I MLZ<MEMLZ!(MLZ>ADMLZ) S OK=0 Q
 ;
 N GIFT S GIFT=0
 I $$PAPJ^W4PRM D
 .S GIFT=$$GIFT^W4HZMST(HZM)
 .S CA=CA-GIFT
 ;
 S MLZ1=$$^W4NAME(MLZ)
 N AVR S AVR=0
 I CHK,$G(@$$^W4ORD@(HZM,"CB","CH",1))[("*B*") S AVR=CHK,CHK=0
 S x1=TSHL,x2=MZM,x3=CHK,x4=AVR,x5=CA,x6=GIFT,x7=ASR,x8=TL,x9=TIP
 Q
 
 
 
 
 
 
 
 
 
 
 

W4DPAYD
W4DPAYD ; -- TASHLUMIM LE SHLIHIM [ 14.05.26 13:01 ] [ 08.11.25 09:00 ] [ 11.04.18 17:57 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%ARG("REPN")
 Q
 ;
DATH I DATH<$$^%L1DC(METRH,3)!(DATH>$$^%L1DC(ADTRH,3)) S OK=0 Q
 S TRH=$$^%L1DC(DATH,1)
 Q
 ;
HZM N TRH D GA^W4SCREF("P1HZ",$$^W4ORD_"(HZM)")
 I $L(NMB)<4 S OK=0 Q
 S:'$G(PSL) PSL=9999
 I 'MEPSL S MEPSL=-1
 I PSL<MEPSL!(PSL>ADPSL)!'PSL S OK=0 Q
 S PSL1="" I PSL S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 S x1=TSHL,x2=MZM,x3=CHK,x4=CA,x6=ASR
 N GIFT S GIFT=0
 S GIFT=$$GIFT^W4HZMST(HZM)
 I GIFT D
 .S x5=GIFT,x4=x4-GIFT
 S x7=DMSH
 S x8=TIP
 Q
 
 
 
 

W4DPAYK
W4DPAYK ; -- DOH LEFI SUGEY TASHLUM ; [ 29.08.19 18:16 ] [ 05.06.17 11:13 ] [ 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")=$G(%ARG("REPN"))
 Q
 ;
DATH I DATH<METRHT!(DATH>ADTRHT) S OK=0 Q
 S TRHT=$$^%L1DC(DATH,1)
 Q
 ;
HZM D GA^W4SCREF("P1HZMS",$$^W4ORD_"(HZM)")
 S MLZ=MKBL
 I MLZ<MEMLZ!(MLZ>ADMLZ) S OK=0 Q
 ;
 S MLZ1=$$^W4NAME(MLZ)
 S EMDA=$$POS^W4HZMST(HZM)
 S x1=TSHL,x2=MZM,x3=CHK,x4=CA,x5=ASR,x6=TL,x7=TIP
 Q
 
 
 
 
 
 
 

W4DPAYM
W4DPAYM ; -- TASHLUMIM LE MELZARIM ;   [ 14.05.26 13:08 ] [ 09.11.25 05:48 ] [ 21.02.22 06:36 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%ARG("REPN")
 Q
 ;
DATH I DATH<METRHT!(DATH>ADTRHT) S OK=0 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DATH,8)) S OK=0 Q
 S TRHT=$$^%L1DC(DATH,1)
 Q
 ;
HZM D GA^W4SCREF("P1HZMS",$$^W4ORD_"(HZM)")
 I $$^W4MSL(NMB) S OK=0 Q
 S MLZ=MKBL
 I $G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")) D
 .I $G(@$$^W4GL("P1MLZ")@(HZM)) S MLZ=$G(^(HZM))
 ;
 I MLZ<MEMLZ!(MLZ>ADMLZ) S OK=0 Q
 I NMB<MENMB!(NMB>ADNMB) S OK=0 Q
 ;
 S SHAA=+$P(ZMANK,"  ",2) S SHAA1=SHAA I SHAA<5 S SHAA1=SHAA1+24
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 S EMDA=+$$POS^W4HZMST(HZM)
 I EMDA<MEEMDA!(EMDA>ADEMDA) S OK=0 Q
 S ATAR=+$G(@$$^W4GL("W4POSATR")@(EMDA))
 I ATAR<MEATAR!(ATAR>ADATAR) S OK=0 Q
 S SUGS=$$SUGL^W4L(NMB)
 I SUGS<MESUGS!(SUGS>ADSUGS) S OK=0 Q
 S MLZ1=$$^W4NAME(MLZ)
 N GIFT S GIFT=0
 I $$PAPJ^W4PRM S GIFT=$$GIFT^W4HZMST(HZM),CA=CA-GIFT
 S x1=TSHL,x2=MZM,x3=CHK,x4=CA,x5=GIFT,x6=ASR,x7=TL,x8=TIP
 Q
 
 
 
 

W4DPBIT
W4DPBIT(%REPN) ; [ 20.02.22 12:49 ] [ 20.12.18 19:26 ] [ 16.12.17 11:31 ] 
 N (JB,%ARG,%REM,%REPN) ; ---- LIFNEY QUERY !!
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN("HZSCR")=HZSCR
 S %REPN("MISHL")=MISHL
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4DPBIT"
 D PUT^%W1PRM("HRFREP","w4dpbit.jsp?JB="_JB_"&REPN="_%REPN)
 Q
 ;
TRH
 D ^%W1PCVRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 ;
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM)) D
 ..S OK=1 D HZM Q:OK'=1
 ..Q:$$SHIHZUR(HZM)
 ..I $G(@$$^W4GL("P1DEL")@(HZM))&($G(^(HZM))'=HZM) Q
 ..Q:$$^W4HZMH(HZM)
 ..Q:$$I^W4PIZUL(HZM)
 ..N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ...N PARIT,CAMP,STP,STT
 ...S STP=^(I),PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5)
 ...Q:CAMP'<0  Q:$$EXIT($$EX2KITCH^W4HZMST(HZM,I))
 ...I $$AVAR^W4HZMST(HZM,I) Q
 ...I PARIT'<MEPAR,PARIT'>ADPAR D CR1(STP)
 ...
 ...N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ....I N["A-" D  Q
 .....N PAR S PAR=$P(N,"-",3) Q:PAR<MEPAR!(PAR>ADPAR)
 .....D CR2(PAR,$P(STT,"\",2),0)
 ....Q:N<MEPAR!(N>ADPAR)
 ....N COL S COL=+$P(STT,"\",3)
 ....D CR2(N,COL,COL*$P(STT,"\",2))
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
SHIHZUR(HZM) ;
 N B S B=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",2)
 I $E(B,$L(B))=">" Q 1
 Q 0
 ;
CR1(A) ;
 N B,PAR S PAR=$P(A,"\") D PRI S B=$G(@VRM@(DT,SHAA,HZM,PAR))
 S @VRM@(DT,SHAA,HZM,PAR)=$P(B,"*")+$P(A,"\",5)_"*"_($P(B,"*",2)+$P(A,"\",7)-$P(A,"\",6))
 Q
 ;
CR2(PAR,C,S) ;
 D PRI
 N B S B=$G(@VRM@(DT,SHAA,HZM,PAR))
 S @VRM@(DT,SHAA,HZM,PAR)=$P(B,"*")+C_"*"_($P(B,"*",2)+S)
 Q
 ;
PRI N I F I="DT","SHAA","HZM","PAR" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
HZM ;
 S %SCRN=HZSCR D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 S PSL=""
 I $L(NMB)>3 D
 .S SHAA=$P(SHAA,":",1,2)
 I $L(NMB)<4 D
 .S SHAA=$P(ZMANK,"  ",2)
 N SHAA1 S SHAA1=SHAA
 I $$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM S SHAA1=SHAA+24
 I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 N STS,I
 Q
 ;
PAR S x1=-$P($G(@GLOB),"*")
 S x2=-$P($G(@GLOB),"*",2)
 Q
 ;
EXIT(EX) ;
 I QUERY["e`vi `l",EX Q 1
 I QUERY["e`vi",QUERY'[" `l",'EX Q 1
 I QUERY["lk",QUERY'["e`vi" Q 0
 Q 0
 
 
 
 
 

W4DPBITS
W4DPBITS(%REPN) ; [ 16.08.22 11:19 ] [ 21.02.22 07:29 ] [ 20.12.18 19:26 ] 
 N (JB,%ARG,%REM,%REPN) ; ---- LIFNEY QUERY !!
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 D ^%W1ARG
 ;
 D SETGL^W4SPIDK
 ;
 K %L1PC
 S %REPN("HZSCR")=HZSCR
 S %REPN("MISHL")=MISHL
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^W4GL("P1SBITI")
 S NSB="" F  S NSB=$O(@$$^W4GL("P1SBIT")@(NSB)) Q:NSB=""  D
 .N SIBA1
 .S SIBA1=$G(@$$^W4GL("P1SBIT")@(NSB)) I SIBA1="" S SIBA1="-"
 .S @$$^W4GL("P1SBITI")@(SIBA1)=NSB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4DPBITS"
 D PUT^%W1PRM("HRFREP","w4dpbits.jsp?JB="_JB_"&REPN="_%REPN)
 Q
 ;
TRH
 D ^W4IN
 N VRM1 S VRM1=$$^W4MAIN("VRM1") K @VRM1
 D ^%W1PCVRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 S:'$G(MESIBA) MESIBA=0 S:'$G(ADSIBA) ADSIBA=99999
 S:'$G(MEHZM) MEHZM="" S:'$G(ADHZM) ADHZM=99999999
 S:'$G(MESHAA) MESHAA="" S:'$G(ADSHAA) ADSHAA=99
 S:'$G(MEPAR) MEPAR="" S:'$G(ADPAR) ADPAR=99999999
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM)) D
 ..S OK=1 D HZM Q:OK'=1
 ..Q:$$SHIHZUR(HZM)
 ..I $$^W4DEL(HZM),$$^W4DEL(HZM)'=HZM Q
 ..Q:$$^W4HZMH(HZM)
 ..Q:$$I^W4PIZUL(HZM)
 ..N I S I="" F  S I=$O(@$$^W4ORD@(HZM,"BIT",I)) Q:I=""  S A=$G(^(I)) D
 ...I '$D(@$$^W4ORD@(HZM,I)) Q
 ...N PARIT,CAMP,STP,STT
 ...S STP=^(I),PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5)
 ...Q:CAMP'<0
 ...Q:$$AVAR^W4HZMST(HZM,I)
 ...S WHODEL=$$WHODEL^W4HZMST(HZM,I)
 ...I WHODEL?.P S WHODEL=MKBL
 ...S WHODEL=$$DOP^W4NAME(WHODEL)
 ...S EXIT=$$EX2KITCH^W4HZMST(HZM,I)
 ...S SIBA=$$SIBA^W4HZMST(HZM,I)
 ...S SIBA1=$$SIBA1^W4HZMST(HZM,I)
 ...I SIBA1="" S SIBA1=$TR($$SPA^%L1FRM($P(STP,"\",8)),">","") S:SIBA1="" SIBA1=" "
 ...I $G(ADSIBA),SIBA<MESIBA!(SIBA>ADSIBA) Q
 ...I $G(ADEXIT),EXIT<MEEXIT!(EXIT>ADEXIT) Q
 ...S SIBA1=$E(SIBA1,1,128)
 ...I PARIT'<MEPAR,PARIT'>ADPAR D CR1(STP)
 ...N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ....I N["A-" D  Q
 .....N PAR S PAR=$P(N,"-",3) Q:PAR<MEPAR!(PAR>ADPAR)
 .....D CR2(PAR,$P(STT,"\",2),0)
 ....Q:N<MEPAR!(N>ADPAR)
 ....N COL S COL=+$P(STT,"\",3)
 ....D CR2(N,COL,COL*$P(STT,"\",2))
 S %L1PC("CONTINUE")=""
 Q
 ;
SHIHZUR(HZM) ;
 N B S B=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",2)
 I $E(B,$L(B))=">" Q 1
 Q 0
 ;
CR1(A) ;
 I $G(SIBA)="" S SIBA=0
 N B,B1,PAR S PAR=$P(A,"\") D PRI
 S B=$G(@VRM@(SIBA,SIBA1,+EXIT,WHODEL,DT,SHAA,HZM,PAR))
 S B1=$G(@VRM1@(DT,SIBA,SIBA1,+EXIT,HZM))
 S @VRM@(SIBA,SIBA1,+EXIT,WHODEL,DT,SHAA,HZM,PAR)=$P(B,"*")+$P(A,"\",5)_"*"_($P(B,"*",2)+$P(A,"\",7)-$P(A,"\",6))
 S @VRM1@(DT,SIBA,SIBA1,+EXIT,HZM)=$P(B1,"*")+$P(A,"\",5)_"*"_($P(B1,"*",2)+$P(A,"\",7)-$P(A,"\",6))
 Q
 ;
CR2(PAR,C,S) ;-- C - COL, S - SUM
 D PRI
 N B,B1 S B=$G(@VRM@(SIBA,SIBA1,+EXIT,WHODEL,DT,SHAA,HZM,PAR))
 S B1=$G(@VRM1@(DT,SIBA,SIBA1,+EXIT,HZM))
 S @VRM@(SIBA,SIBA1,+EXIT,WHODEL,DT,SHAA,HZM,PAR)=($P(B,"*")+C)_"*"_($P(B,"*",2)+S)
 S @VRM1@(DT,SIBA,SIBA1,+EXIT,HZM)=($P(B1,"*")+C)_"*"_($P(B1,"*",2)+S)
 Q
 ;
PRI N I F I="EXIT","SIBA","SIBA1","WHODEL","DT","SHAA","HZM","PAR" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
HZM ;
 S %SCRN=HZSCR D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 S PSL=""
 I $L(NMB)>3 D
 .S SHAA=$P(SHAA,":",1,2)
 I $L(NMB)<4 D
 .S SHAA=$P(ZMANK,"  ",2)
 N SHAA1 S SHAA1=SHAA
 I $$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM S SHAA1=SHAA+24
 I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 N STS,I
 Q
 ;
PAR S x1=-$P($G(@GLOB),"*")
 S x2=-$P($G(@GLOB),"*",2)
 Q
 ;
EXIT(EX) ;
 I QUERY["e`vi `l",EX Q 1
 I QUERY["e`vi",QUERY'[" `l",'EX Q 1
 I QUERY["lk",QUERY'["e`vi" Q 0
 Q 0
 ;
EX ;
 I $G(EXIT) S EXIT1="`vi"
 E  S EXIT1="`vi `l"
 Q
 
 
 
 
 
 
 
 
 
 

W4DPHNH
W4DPHNH ; [ 12.01.25 08:00 ] [ 20.02.22 10:42 ] [ 26.10.21 12:56 ] 
 N (JB,%ARG,%REM) ; ---- LIFNEY QUERY !!
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 D SETGL^W4SPIDK
 ;
 K %L1PC
 S %REPN="W4DHNH"
 S %REPN("HZSCR")=HZSCR
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4DPHNH"
 D PUT^%W1PRM("HRFREP","w4reports.jsp?JB="_JB_"&FIRST=1")
 ;
 ;D ^%W1ARG
 ;D TRH
 Q
 ;
TRH
 D ^%W1PCVRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 S:'$G(MESIBA) MESIBA=0 S:'$G(ADSIBA) ADSIBA=99999
 ;
 N DT,HZM,N,A,WHO,SIBA,SIBA1,SUMHN,TOTHN,VH,AH,AHNHP
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 F DT=MEDATH:1:ADDATH S HZM=$G(MEHZM)-1 S:HZM<0 HZM="" D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:$G(ADHZM)&(HZM>$G(ADHZM))  I $D(@$$^W4ORD@(HZM)) D
 ..Q:$$^W4HZMH(HZM)
 ..Q:$$I^W4PIZUL(HZM)
 ..I $D(@$$^W4ORD@(HZM,"CB","HNH1")) D
 ...S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  D  ; NIS DISC
 ....S A=$G(^(N)) Q:A=""
 ....S TOTHN=$$TOTHN^W4HZMST(HZM)
 ....S WHO=$P(A,"*",3)
 ....S VH=1
 ....I WHO["MVC1-" S WHO=$P($P(WHO,"-",1,2),"MVC",2)_"rvan",VH=9
 ....I WHO="" S WHO="00000"
 ....S SUMHN=$P(A,"*",1)
 ....S SIBA1=$P(A,"*",5)
 ....S SIBA=$P(A,"*",6)
 ....I 'SIBA S SIBA=$$FNDSIB(SIBA1)
 ....I SIBA="" S SIBA=0
 ....I SIBA1="" S SIBA1=" "
 ....I 'SUMHN Q
 ....S @VRM@(DT,WHO,HZM,VH,"H"_N,SIBA,SIBA1)=$J(TOTHN,2,2)_"*0*"_$J(SUMHN,2,2)
 ..
 ..I $D(@$$^W4ORD@(HZM,"CB","ASR")) D  ; -- CUST DISC
 ...S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 ....S A=$G(^(N)) Q:A=""
 ....S TOTHN=$P(A,"*",4)
 ....S WHO=$$MKBL^W4HZMST(HZM)
 ....I WHO="" S WHO="00000"
 ....S AH=$P(A,"*",2)
 ....S SUMHN=$P(A,"*",3)
 ....S SIBA1="gewll dgpd"
 ....S SIBA=$$FNDSIB(SIBA1)
 ....I SIBA="" S SIBA=0
 ....I SIBA1="" S SIBA1=" "
 ....I 'AH,'SUMHN Q
 ....S @VRM@(DT,WHO,HZM,3,"L"_N,SIBA,SIBA1)=$J(TOTHN+SUMHN,2,2)_"*"_AH_"*"_$J(SUMHN,2,2)
 ..
 ..S HNH2=$$HNH2^W4HZMST(HZM) ;  -- AROUND
 ..I HNH2 D
 ...S TOTHN=$$TSHL^W4HZMST(HZM)
 ...S WHO=$$MKBL^W4HZMST(HZM)
 ...I WHO="" S WHO="00000"
 ...S SUMHN=HNH2
 ...S SIBA1="oeayg lebir"
 ...S SIBA=0
 ...I 'HNH2 Q
 ...S @VRM@(DT,WHO,HZM,4,0,SIBA,SIBA1)=$J(TOTHN,2,2)_"*0*"_$J(HNH2,2,2)
 ..;
 ..N HNHAH S HNHAH=$$HNHAH^W4HZMST(HZM)
 ..I HNHAH,'($D(@$$^W4ORD@(HZM,"HNH"))#2) D
 ...S SIBA=0,SIBA1="reci `l"
 ...I +HNHAH=100 D
 ....S SIBA1="OTH"
 ....N N S N=""  F  S N=$O(@$$^W4GL("P1SHNH")@(N)) Q:N=""  D
 .....I $TR($G(^(N)),".","")["OTH" S SIBA=N
 ...S @$$^W4ORD@(HZM,"HNH")=HNHAH_"*"_$$LASTMLZ^W4HZMST(HZM)_"*"_SIBA_"*"_SIBA1
 ..
 ..I $D(@$$^W4ORD@(HZM,"HNH"))#2 D  ;--- % DISC
 ...S A=$G(^("HNH")) Q:A=""
 ...S A=$G(^("HNH")),TOTHN=$$TOTHN^W4HZMST(HZM) Q:'TOTHN
 ...S WHO=$P(A,"*",2) S:WHO="" WHO="00000"
 ...S SIBA=+$P(A,"*",3)
 ...S SIBA1=$P(A,"*",4)
 ...I SIBA1="" S SIBA1=" "
 ...I 'A Q
 ...S @VRM@(DT,WHO,HZM,2,0,SIBA,SIBA1)=$J(TOTHN,2,2)_"*"_+A_"*"_$J(TOTHN*A*.01,2,2)
 ..
 ..N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  S A=$G(^(I)) I $$ISHNHP^W4HZMST($P(A,"\")) D
 ...S WHO=$$WHOHNH^W4HZMST(HZM,I)
 ...I WHO?.P S WHO=$$MKBL^W4HZMST(HZM) S:WHO="" WHO="00000"
 ...S SIBA=+$$SIBHNH^W4HZMST(HZM,I)
 ...S SIBA1=$$SIBHNH1^W4HZMST(HZM,I)
 ...I SIBA1="" S SIBA1=$TR($$SPA^%L1FRM($P(A,"\",8)),">","")
 ...I SIBA1="" S SIBA1=" "
 ...S NST=I
 ...I $G(@$$^W4ORD@(HZM,I,"O2T")) S NST=^("O2T")
 ...S AHNHP=-A Q:'AHNHP&'$$SUM^W4HZMST(HZM,I)
 ...S VH=5
 ...I +AHNHP=100 S VH=6
 ...I $$HNHSHAA(A) S VH=7
 ...S @VRM@(DT,WHO,HZM,VH,NST,SIBA,SIBA1)=$$SUM^W4HZMST(HZM,I-1)_"*"_AHNHP_"*"_-$$SUM^W4HZMST(HZM,I)
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
PRI N I F I="DT","WHO","SIBA","SIBA1","HZM","NST" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
NAME(WHO) ;
 N MVC
 I WHO?1N.N Q $$^W4NAME(WHO)
 I $E(WHO,1,2)="1-" S MVC=+$P(WHO,"-",2) I MVC Q $G(@$$^W4GL("W4MVC1")@(MVC))
 Q ""
 ;
SUGH ;
 Q
 ;
ST ;
 S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 S x3=$P($G(@GLOB),"*",3)
 I $G(SUGH)>4 S x4=x3
 E  S x5=x3
 Q
 ;
FNDSIB(SIBA1) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SHNH")@(N)) Q:N=""  D  Q:OK
 .I $$SPA^%L1FRM($G(^(N)))=$$SPA^%L1FRM(SIBA1) S OK=N
 Q OK
 ;
HNHSHAA(A) ;
 I $P(A,"\",8)["dry itl dgpd" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 

W4DPMH
W4DPMH(DAT1,DAT2,JB) ;                           [ 13.02.25 14:57 ] [ 05.04.22 08:11 ] [ 05.12.21 22:58 ] 
 N (JB,%ARG,%REM,DAT1,DAT2)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
BG ;
 ;
 D ^W4IN,VRM K @VRM
 S HNHALL=1
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 D PUT^%W1PRM("W4DPMHDT1",DT1)
 D PUT^%W1PRM("W4DPMHDT2",DT2)
 ;
 F DT=DT1:1:DT2 S HZM="" F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  D
 .I $$^W4HZMH(HZM) Q
 .I $$I^W4PIZUL(HZM) Q
 .D T ; --> T
 .S DAT=$ZD(DT,"YYMMDD") D FRMVRM(HZM)
 ;
 K %L1PC
 S %REPN("MEDATT")=$$^%L1DC(DAT1,3),%REPN("ADDATT")=$$^%L1DC(DAT2,3) ; --- NE ISP-T MEDAT,ADDAT !!!!
 S %REPN("MEDATT","VIEW")=1
 S %REPN("ADDATT","VIEW")=1
 ;;S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4DPMH"
 D PUT^%W1PRM("W4DPMH",1)
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4dpmh.jsp?JB="_JB)
 ;
END Q
 ;
 ;
DAT S DATT=$$^%L1DC(DAT,1)
 I 'MEMH1 S MEMH1=-999
 Q
 ;
PAR ;
 D PAR1
 I PAR<MEPARIT S OK=0 Q
 I ADPARIT,PAR>ADPARIT S OK=0 Q
 S SUGP=$$SUG^W4P(PAR) I SUGP<MESUGP!(SUGP>ADSUGP) S OK=0 Q
 S MHL=+$P($G(@$$^W4GL("PARSUG")@(SUGP,1)),"\")
 I MEMHL,MHL<MEMHL S OK=0 Q
 I ADMHL,MHL>ADMHL S OK=0 Q
 Q
 ;
MH ;
 Q
 ;
HZM N GL S GL=$G(@GLOB)
 S x1=$P(GL,"*",7) ; --- BIT YAZU Q
 S x2=$P(GL,"*",9) ; --- BIT YAZU S
 S x3=$P(GL,"*",1) ; --- KAMUT
 N MH S MH=$P(GL,"*",3)
 ;
 N AHMAM S AHMAM=$$MAMD^W4L($$^%L1DC(DAT,4))
 N PRTIP S PRTIP=$$GETP^%W1PRM("W4DPMHTIP")
 S x4=$P(GL,"*",4) ; -- HNHP
 S x5=$P(GL,"*",5); -- HNH
 S x6=$P(GL,"*",10); -- TIP+SHER
 I 'PRTIP S (x5,x6)=0
 S x7=$P(GL,"*",2)-x4
 S x7=x7-x5+x6
 S x8=$J(x7*100/(100+AHMAM),2,2)
 ;
 I MEMH1,MH<MEMH1 S OK=0 Q
 I ADMH1,MH>ADMH1 S OK=0 Q
 ;;S MH1=MH  ;$TR($J(MH,2,2),".","_")
 S MH1=$TR($J(MH,2,2),".","_")
 S MH1=$P(MH1,"_",2)_"_"_$P(MH1,"_",1) ; -- 05/12/21
 S OK=1
 Q
 ;
 ;
PAR1 Q:$G(PARIT)=""  S PAR=PARIT I $E(PARIT,1,2)="A-" S PAR=$P(PARIT,"-",3) G PAR10
 I PARIT?1N.N1"-"1N.N D  Q
 .S PAR=$P(PARIT,"-")
 .S PARIT1=$$SHEM^W4P(PAR)_" "_$G(@$$^W4GL("P1SBR")@($P(PARIT,"-",2)))
PAR10 S PARIT1=$$SHEM^W4P(PAR)
 Q
 ;
 ;
FRMVRM(HZM) N N1,PAR,RF,PLU1,HNHD
 S PLU1=""
 N TIP S TIP=$$TIP^W4HZMST(HZM)
 N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 ;
 S HNHD=$$HNH^W4HZMST(HZM)
 S TSFMH=$$DMSH^W4HZMST(HZM)
 I $$^W4TIPPD S TSFMH=TSFMH+TIP
 ;
 F N1=1:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\") Q:PAR=""  S RF=^(N1)
 .Q:'$$CDPAR(PAR)
 .D PLU2 D
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N1,N)) Q:N=""  D
 ...N PAR,RF S RF=$G(^(N)),PAR=N D:$D(@$$^W4ORD@(HZM,N1,N))<10 PLU3 D
 ....S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N,N3)) Q:N3=""  D SUM3($G(^(N3)))
 Q
 ;
 ;
PLU2 ;--- ITEM LEVEL
 N COL,PRC,SUM,ST,SUG,N,NEXT,CD
 Q:PAR=""
 I '$$CDPAR(PAR) Q
 S SUG=$P(RF,"\",2),COL=$P(RF,"\",5)
 S PRC=$P(RF,"\",4),SUM=$J(PRC*COL,2,2)
 ;;S MIN=$S($TR(SUG," ","")[">":1,1:0)
 S MIN=$$EX2KITCH^W4HZMST(HZM,N1)
 S HNHP=0,AHP=0
 S CD=$P($G(@$$^W4ORD@(HZM,N1+1)),"\")
 I CD["-",CD["%" S AHP=+$E(CD,2,10)
 S HNHP=SUM*AHP*.01
 D HNHC
 S COLP=COL D PLT
 Q
 ;
PLU3 ;--  ADDS LEVEL 1
 N ST0,COL,PRC,SUM,PARO,SUMHN S ST0=$P(RF,"\",2,25)
 S (HNHP,HNHC)=0
 S PRC=$P(ST0,"\")
 S COL=+$P(ST0,"\",2) S SUM=PRC*COL
 I $G(AHP) S HNHP=SUM*AHP*.01
 D HNHC
 D PLT
 Q
 ;
 ;
SUM3(ST) ;-- ADDS LEVEL 2
 N PAR,SUMHN S HNHP=0,HNHC=0
 I $P(ST,"\") D  Q
 .S PAR=$P(ST,"\")
 .S (COL,COL0)=$P(ST,"\",3)
 .S PRC=$P(ST,"\",7)
 .S SUM=COL*PRC
 .I $G(AHP) S HNHP=SUM*AHP*.01
 .D HNHC
 .D PLT
 ;
 S PAR=$P(ST,"\",4)
 S COL=$P(ST,"\",3)
 S PRC=$P(ST,"\",7)
 S SUM=COL*PRC
 I $G(AHP) S HNHP=SUM*AHP*.01
 D HNHC
 D PLT
 Q
 ;
 ;
PLT ;
 N ST Q:'$$CDPAR(PAR)
 S PAR=$$EZD(PAR) Q:PAR=""
 S ST=$G(@VRM@(DAT,MRK,PAR,$J(PRC,2,2),HZM))
 D SUMST
 S @VRM@(DAT,MRK,PAR,$J(PRC,2,2),HZM)=ST
 Q
 ;
SUMST ;
 S $P(ST,"*",1)=$P(ST,"*",1)+COL
 S $P(ST,"*",2)=$P(ST,"*",2)+SUM
 S $P(ST,"*",3)=PRC
 S $P(ST,"*",4)=$P(ST,"*",4)+HNHP
 S $P(ST,"*",5)=$P(ST,"*",5)+HNHC
 S $P(ST,"*",10)=$P(ST,"*",10)+TSFMHP
 I SUM<0 D
 .S $P(ST,"*",6)=$P(ST,"*",6)-COL ; BITULIM COL
 .I $G(MIN) S $P(ST,"*",7)=$P(ST,"*",7)-COL ; BITULIM SHE YAZU (COL)
 .S $P(ST,"*",8)=$P(ST,"*",8)-SUM ; BITULIM SUM
 .I $G(MIN) S $P(ST,"*",9)=$P(ST,"*",9)-SUM ; BITULIM SHE YAZU (SUM)
 Q
 ;
 ;
T ;
 N A,I,SUM,HRA,PAR,NMP
 S (T,T1,T2,T3,T4)=0
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S A=$G(^(I)) S PAR=$P(A,"\") Q:PAR=""
 .S SUM=$P(A,"\",7),HRA=$TR($P(A,"\",8),".","")
 .S NMP=$TR($P(A,"\",3),".","")
 .S T=T+SUM ; -- SHUM LIFNEY ANAHOT
 .I HRA'["TAW",HRA'["SEQ",HRA'["SEC" S T1=T1+SUM
 .I HRA["TAW" S T2=T2+SUM
 .I NMP'["ðéî øéçî ãò"!(I<$O(@$$^W4MAIN("THZ1")@(9999),-1)) S T4=T4+SUM
 .I $P(A,"\")'="",'$D(@$$^W4GL("PRTBH")@(PAR)) S T3=T3+SUM ; -- FOR HNH
 Q
 ;
HNHC ;
 I '$$CDPAR(PAR) Q
 S HNHC=0,TSFMHP=0
 I T,$G(HNHD) S HNHC=HNHD*((SUM-HNHP)/T) ;
 I T S TSFMHP=TSFMH*((SUM-HNHP)/T) ;
 Q
 ;
VRM ;
 D ^%W1PCVRM
 Q
 ;
EZD(PAR) ; 
 I $G(PAR)="" Q ""
 I $G(@$$^W4GL("W4EZD")@(PAR)) Q ^(PAR) 
 I $G(@$$^W4GL("W4EZD")@($P(PAR,"-"))) Q ^($P(PAR,"-")) 
 Q PAR 
 ;
CDPAR(PAR) ; 
 I $TR(PAR,".","")?1N.N Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DPMM1
W4DPMM1(PAR,MEDT,ADDT) ;  [ 17.09.18 07:14 ] [ 13.09.17 18:25 ] [ 12.10.14 10:55 ] [
 N (JB,%ARG,%REM,PAR,MEDT,ADDT) ;
 I $G(PAR)="" W "ITEM NOT DEFINED",! Q 
 ;
 D CLOSE^W4FIND
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 S VRM=$$^W4MAIN("VRM")
 S PAR1=$$SHEM^W4P(PAR)
 W "<span style=""font-weight:bold"">"
  W PAR_" "_$$H2U^%L1FRM(PAR1)
 W "</span>",!
 ;
 W "<br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""70%"" cellspacing=""0"" cellpadding=""2"" >",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("DATE")_"</th>",!
   W "<th>"_$$^%W1DICT("QUANT")_"</th>",!
   W "<th>"_$$^%W1DICT("SUM")_"</th>",!
  W "</tr>"
  ;
  S (SQN,SSUM)=0
  F DT=MEDT:1:ADDT D
  .I $G(%ARG("DAYS")),'$E($G(%ARG("DAYS")),$$^%L1DC(DT,8)) Q
  .W "<tr>"
  .W " <td>"_$ZD(DT,"DD.MM.YY")_" "_$$H2U^%L1FRM($$^%L1DC(DT,9))_"</td>",!
  .S QN=$G(@VRM@(PAR,DT,"QN")),SQN=SQN+QN
  .S SUM=$G(@VRM@(PAR,DT,"SUM")),SSUM=SSUM+SUM
  .D RKV(QN)
  .D RKV($J(SUM,2,2))
  .W "</tr>"
  ;
   W "<tr style=""background-color:yellow;font-weight:bold"">"
    W "<td>&nbsp;</td>"
    D RKV(SQN)
    D RKV($J(SSUM,2,2))
   W "</tr>"
  ;
  W "</table>",!
  W "</div>",!
 Q
 ;
RKV(VL) ;
 D RKV^W4DPARMM(VL)
 Q
 
 
 
 
 
 
 
 
 

W4DPNMAM
W4DPNMAM(STAM) ; [ 06.10.21 12:56 ] [ 
 N (JB)
 S OK=0
 S N="" F  S N=$O(@$$^W4GL("DEP")@(N)) Q:N=""  D  Q:OK
 .I $P($G(^(N,1)),"\")=0 S OK=1
 Q OK

W4DPOS
W4DPOS ;   [ 08.07.26 10:14 ] [ 29.06.26 11:32 ] [ 14.06.26 18:56 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 ;;S ^AA("W4DPOS-MSDR")=MSDR
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 ;
 S GLMSD=$$^W4MAIN("TMPMSD") K @GLMSD
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @GLMSD@(N)=$G(^|$$^W3MAIN|W3MSD(N))
 ;
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="W4DPOS"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
MSDR ;
 Q
 ;
DT ;
 ;;S ^AA("W4DPOS-DT")=DT
 ;;S ^AA("W4DPOS-METRH")=METRH
 ;;S ^AA("W4DPOS-ADTRH")=ADTRH
 I DT<$$^%L1DC(METRH,3) S OK=0 Q
 I DT>$$^%L1DC(ADTRH,3) S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 S TRH=$ZD(DT,"DD.MM.YY")
 Q
 ;
MSD ;
 S MSD1=$$MSD^W3R(+MSD)
 I MSD<MEMSD S OK=0 Q
 I MSD>ADMSD S OK=2 Q
 Q
 ;
 ;
HZ ; 
 I 'HZ S OK=2 Q
 I $G(MEHZ),HZ<MEHZ S OK=0 Q
 I $G(ADHZ),HZ>ADHZ S OK=0 Q
 I EMDA<$G(MEEMDA) S OK=0
 I $G(ADEMDA),EMDA>ADEMDA S OK=0 Q
 ;;S ^AA("W4DPOS-HZ")=HZ
 N A S A=$G(@GLOB)
 S NMB=$P(A,"*",1)
 I NMB<$G(MENMB) S OK=0 Q
 I $G(ADNMB),NMB>ADNMB S OK=0 Q
 S DATCB=$P(A,"*",2)
 S SHAACB=$P(A,"*",3)
 S MKBL1=$P(A,"*",4)
 S x1=$P(A,"*",5)
 S x2=$P(A,"*",6)
 S x3=$P(A,"*",7)
 S x4=$P(A,"*",8)
 S x5=$P(A,"*",9)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DPRAON
W4DPRAON ; [ 25.02.20 04:53 ] [ 26.12.15 09:50 ] [ 29.09.15 07:49 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 S LKH=$G(%ARG("LKH"))
 ;;S ADLKH=$G(%ARG("ADLKH"))
 ;;I ADLKH="" S ADLKH=9999999999
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 D DIVBUT
 ;
 D VRM,KLF
 D FRM
 D PC
 K @VRM
 Q
 ;
ASK ;
 W "<div id=""divask"" align=""center"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td width=""25%"">"
    W "<table dir="""_$$^%W1DIR_""" width=""100%"">",!
     D ASKLKH
    W "</table>",!
   W "</td>"
   W " <td "_$$STYLE^%W1DIR("LTR")_">"
    D ^%W1DAT("MEDAT","","<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td "_$$STYLE^%W1DIR("LTR")_">"
    D ^%W1DAT("ADDAT","","<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
ASKLKH ;
  W "<tr>"
     W "<td> "
      W $$^%W1DICT("CUSTCODE")
     W "</td>",!
     W "  <td>"
      S FIND="Find('custcd','custcd','LKH','600px','120px','300px','400px','0')"
      W "<input type=""text"" tabindex=""1"" id=""custcd""  maxlength=""14"" size=""10"" onClick=""this.select()"" onChange="""_FIND_""" >",!
      W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick="""_FIND_""" >",!
     W "  </td>",!
  W "</tr>",!
 Q
  ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
KLF S KLF=$$^W4GL("KLF")
 Q
 ;
FRM ;
 K @VRM
 I $$^W4ISCDLK(LKH) D FRMLKH(LKH) Q
 S LKH="" F  S LKH=$O(@KLF@(LKH)) Q:LKH=""  D FRMLKH(LKH)
 Q
 ;
FRMLKH(LKH) ;
 N NOM,DT,NP,A,CHK,SUM
 S NOM="" F  S NOM=$O(@KLF@(LKH,"CB",NOM)) Q:NOM=""  D
 .N HD S HD=$G(^(NOM))
 .;;S MZ=$P(HD,"\",2)
 .;;I MZ D
 ..S DT=$$^%L1DC($P(HD,"\",4),4)
 ..I DT<MEDT!(DT>ADDT) Q
 ..S @VRM@(DT,LKH,NOM,"MZ")=MZ
 .S NP="" F  S NP=$O(@KLF@(LKH,"CB",NOM,NP)) Q:NP=""  D
 ..S A=$G(^(NP))
 ..S SUM=+$$SUM(A)
 ..S DT=$$DT(A)
 ..I DT<MEDT!(DT>ADDT) Q
 ..S CHK=+$$CHK(A)
 ..S @VRM@(DT,LKH,NOM,CHK)=SUM
 Q
 ;
SUM(A)
 Q $P(A,"\")
DT(A)
 Q $$^%L1DC($P(A,"\",7),3)
CHK(A)
 Q $P(A,"\",6)
 ;
PC ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=33,SHLN=3,SSHLN=0
 D KOT
 ;
 S SSUM=0
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
 .W "<tr>",!
 .W " <td colspan=""5"" align=""center"" style=""color:green"" >",!
 .W "<b> "_$$^%W1DICT("DATEPRAON")_" "_$ZD(DT,"DD.MM.YY")_" </b>",!
 .W " </td>",!
 .W "</tr>",!
 .S LKH="" F  S LKH=$O(@VRM@(DT,LKH)) Q:LKH=""  D
 ..S NOM="" F  S NOM=$O(@VRM@(DT,LKH,NOM)) Q:NOM=""  D
 ...S CHK="" F  S CHK=$O(@VRM@(DT,LKH,NOM,CHK)) Q:CHK=""  D
 ....S SUM=$G(^(CHK))
 ....S SHLN=SHLN+1
 ....I SHLN>RSIZE D PAGEBREAK
 ....W "<tr style=""cursor:pointer"" onClick=""OnClickTr('"_SHLN_"','"_LKH_"','"_NOM_"')"" >"
 ....W " <td "
 ....I SHLN=$$GET^%W1PRM("PRAONCUR") W " style=""border:solid 2px brown"" "
 ....W ">&nbsp;"_LKH_"&nbsp;</td>"
 ....W " <td>&nbsp;"_$$H2U^%L1FRM($$LKH^W4L(LKH))_"&nbsp;</td>"
 ....W " <td>&nbsp;"_NOM_"&nbsp;</td>"
 ....W " <td>&nbsp;"_$S(CHK="MZ":$$^%W1DICT("CASH"),1:CHK)_"&nbsp;</td>"
 ....D RKV(SUM,"darkblue")
 ....S SSUM=SSUM+SUM
 .
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow"">"
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td><b>"_$$^%W1DICT("TOTAL")_"&nbsp;</b></td>",!
 D RKV(SSUM,"darkblue",1)
 W "</tr>",!
 W "</table>",!
 ;
 I 'SHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')"
 .W "</script>",!
 ;
 W "</div>",!
 ;
 Q
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT
 S SHLN=0
 Q
 ;
KOT ;
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("PRAONREPORT")_"</span><br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""60%"" style=""font-size:"_$$^W3FSZ(12)_";color:black"" >"
 W " <tr>"
 ;;W "  <td>"_$$^%W1DICT("MELKH")_"</td>",!
 ;;W "  <td "_$$HDSTYLE_">"_MELKH_"</td>",!
 ;;W "  <td>"_$$^%W1DICT("ADLKH")_"</td>",!
 ;;W "  <td "_$$HDSTYLE_">"_ADLKH_"</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"_$$^%W1DICT("PAGE")_" : <span "_$$HDSTYLE_">"_PG_"</span></td>",!
 W " </tr>",!
 W " <tr>"
 W "  <td>"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MEDAT_"</td>",!
 W "  <td>"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADDAT_"</td>",!
 W "  <td>&nbsp;</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""90%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
 W "  <th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("RECEIPTNMB")_"</th>"
 W "  <th>"_$$^%W1DICT("NCHECK")_"</th>"
 W "  <th>"_$$^%W1DICT("SUM")_"</th>"
 W " </tr>",!
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 I RKV S RKV=$J(RKV,2,2)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 
 
 

W4DPRTEN
W4DPRTEN ; [ 18.08.16 11:06 ] [ 28.07.16 13:27 ] [ 
 N (JB,%ARG) ; 
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
 ;
GET ;
 S GLPA=$$^W4GL("PRTENDA")
 S GLPE=$$^W4GL("PRTEND")
 S TMP=$$^W4MAIN("TMPREP") K @TMP
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 S I=0,(SAHBG,EXIT,SAHFN)=0
 S DT=DT1-1 F  S DT=$O(@GLPA@(DT)) Q:DT=""  Q:DT>DT2  D
 .S PRT="" F  S PRT=$O(@GLPA@(DT,PRT)) Q:PRT=""  D
 ..S A=$G(^(PRT))
 ..S B=$G(@GLPE@(DT,PRT))
 ..S PRT1=$$SHEM^W4P(PRT)
 ..S I=I+1
 ..S DAT=$ZD(DT,"DD.MM.YY")
 ..S @TMP@("G",I)=DAT_"\"_PRT_"\"_PRT1_"\"_+A_"\"_(A-B)_"\"_+B
 ..S SAHBG=SAHBG+A
 ..S SAHFN=SAHFN+B
 S EXIT=SAHBG-SAHFN
 Q
 ;
CHKPRM(STAM) ;
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) ;
 Q "W4DPRTEN"
 
 
 
 
 
 
 

W4DPRTSF
W4DPRTSF(MEDAT,ADDAT) ; [ 17.08.21 07:49 ] [ 16.08.21 15:37 ] [ 10.08.21 12:07 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT)
 Q:$G(%ARG("SHOW"))=0
 I '$D(JB) W " JB number is not defined ! " Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S PG=0,RSIZE=26,SSUM=0
 ;
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 I 'ADDT S ADDT=+$H
 ;
 S MEKV=$G(%ARG("MEKV"))
 S ADKV=$G(%ARG("ADKV"))
 I 'ADKV S ADKV=9999999
 ;
 D PREP(MEDT,ADDT)
 ;
 W "<div align=""center"" >",!
 W "<br>",!
 ;
BODY ;
 D TMP S I=0,K=0
 
 S KV="" F  S KV=$O(@TMP@(KV)) Q:KV=""  D
 .I KV<MEKV!(KV>ADKV) Q
 .S K=K+1 I K=1 D KOT(KV,1,1)
 .D
 ..I I+4'>RSIZE,K>1 D KOT(KV,1) Q
 ..I I+4>RSIZE D PEREH(1)
 .
 .S PRT="" F  S PRT=$O(@TMP@(KV,PRT)) Q:PRT=""  I PRT'<0 D
 ..I $TR(PRT,".-","")'?1N.N Q
 ..S I=I+1 I I>RSIZE,$$PRINT D PEREH(0)
 ..D STR(KV,PRT)
 ..D STRADD(KV,PRT)
 ..W "<tr><td colspan=""5""><hr></td></tr>",!
 ;
 W "<tr style=""background-color:yellow;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  W "<td>"
   W $$^%W1DICT("TOTAL")
  W "</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  W "<td>"_$J(SSUM,2,2)_"</td>"
 W "</tr>",! 
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
STR(KV,PRT) ;
 W "<tr style=""font-size:"_$$^W3FSZ(11)_""" id=""tr"_PRT_""" >"
 W " <td id=""cd"_PRT_""">"
  W "&nbsp;"_PRT_"&nbsp;"
 W "</td>"
 ;
 W " <td align=""center"">"_$$H2U^%L1FRM($$SHEM^W4P(PRT))_"</td>"
 ;
 W "<td >"
  S MH=$$MH(PRT)
  W $J(MH,2,2) 
 W "</td>",!
 ;
 W "<td>"
  W $$KAM(KV,PRT)
 W "</td>"
 ;
 W "<td>"
  W $J($$SUM(KV,PRT),2,2)
 W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
STRADD(KV,PRT) ;
 N N,A
 S N="" F  S N=$O(@TMP@(KV,PRT,N)) Q:N=""  I N D
 .I $TR(N,".-","")'?1N.N Q
 .S A=$G(^(N))
 .S I=I+.33 I I>RSIZE,$$PRINT D PEREH(0)
 .S CDT=N
 .W "<tr style=""font-size:"_$$^W3FSZ(9)_";color:green"">"
 .W " <td>"_$$NBSP^%L1FRM(10)_CDT_"</td>"
 .N NMT S NMT=$$SHEM^W4P(CDT)
 .W " <td align=""center"">"_$$H2U^%L1FRM($$SPA^%L1FRM(NMT))_"</td>"
 .W "<td>" 
 . S MHT=$$MHT(PRT,CDT)
 . W $J(MHT,2,2) 
 .W "</td>"
 .W " <td>"_$$KAMT(KV,PRT,CDT)_"</td>"
 .W " <td>"_$$SUMT(KV,PRT,CDT)_"</td>"
 .W "</tr>",!
 Q
 ;
PEREH(PCKV) ;
 D CLOSETBL
 I $$PRINT D PGBREAK
 D KOT(KV,PCKV,1)
 Q
 ;
CLOSETBL ;
 W "</table>",!
 Q
 ;
KOT(KV,PCKV,PRH) ;
 I $G(PRH) S I=2 D
 .W "<div dir="""_$$^%W1DIR_""">",!
 . W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
 .  W $$^%W1DICT("PRTSFREPORT")
 . W "</span><br>"
 . W "<span style=""font-size:"_$$^W3FSZ(12)_""">"
 .  W $$^%W1DICT("FROMDATE")_" "_MEDAT_" "_$$^%W1DICT("UNTILDATE")_" "_ADDAT
 . W "</span>",!
 .W "</div>",!  
 ;
 I $G(PCKV) D
 . W "<br>"
 . W "<table width=""94%"" dir="""_$$^%W1DIR_""">",!
 . W "<tr>",!
 .  W "<td "
 .   W " style=""text-align:center;width:90%;color:darkred;font-size:"_$$^W3FSZ(16)
 .   W """>"
 .   W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)))
 .  W "</td>",!
 . W "</tr>",!
 . W "</table>",!
 .S I=I+1
 ;
 S BORD=0 ;1
 ;
 N WD S WD=60 I $$PRINT S WD=90
 W "<table dir="""_$$^%W1DIR_""" border="""_BORD_""" cellspacing=""0"" width="""_WD_"%"">",!
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:white;font-size:"_$$^W3FSZ(11)_";font-weight:bold"
 W """ >"
  W "<th width=""15%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th width=""40%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("PRICE")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("QUANT")_"</th>"
  W "<th width=""15%"">"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 S I=I+1
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
ADD(STAM) ;
 Q $G(%ARG("ADD"))
 ;
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 Q 0
 ;
 ;
TMP S TMP=$$^W4MAIN("TMP")
 Q
 ;
KAM(KV,PRT) ;
 Q $P($G(@TMP@(KV,PRT)),"*")
 ;
SUM(KV,PRT) ;
 Q $J($P($G(@TMP@(KV,PRT)),"*",2),2,2)
 ;
KAMT(KV,PRT,CDT) ;
 Q $P($G(@TMP@(KV,PRT,CDT)),"*")
 ;
SUMT(KV,PRT,CDT) ;
 Q $J($P($G(@TMP@(KV,PRT,CDT)),"*",2),2,2)
 ;
MH(PRT)
 N MH,%ARG
 S MH=$$MH^W4P(PRT)
 Q MH
 ;
MHT(PRT,CDT)
 N MHT,%ARG
 S MHT=$G(@$$^W4GL("MHT")@(PRT,CDT))
 Q MHT
 ;
SID(STAM) ;
 Q $G(%ARG("SID"))
 ;
PREP(MEDT,ADDT) ;
 N (JB,%ARG,%REM,MEDT,ADDT,SSUM)
 D TMP K @TMP S SSUM=0
 S REF=$$^W4REF
 S DT=MEDT-1 F  S DT=$O(@REF@(DT)) Q:DT=""  Q:DT>ADDT  D
 .S HZ="" F  S HZ=$O(@REF@(DT,HZ)) Q:HZ=""  D
 ..I $$^W4HZMH(HZ) Q
 ..I $$I^W4PIZUL(HZ) Q
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZ,N1)) Q:N1=""  I N1 D
 ...S A=$G(^(N1))
 ...S PRT=$P(A,"\"),QN=$P(A,"\",5),MH=$P(A,"\",4),SUM=QN*MH
 ...Q:PRT?.P
 ...S KV=+$$SUG^W4P(PRT)
 ...S $P(@TMP@(KV,PRT),"*")=$P($G(@TMP@(KV,PRT)),"*")+QN 
 ...S $P(@TMP@(KV,PRT),"*",2)=$P($G(@TMP@(KV,PRT)),"*",2)+SUM 
 ...S SSUM=SSUM+SUM
 ...S N2="" F  S N2=$O(@$$^W4ORD@(HZ,N1,N2)) Q:N2=""  D
 ....S A2=$G(^(N2))
 ....I $D(^(N2))<10 D  Q
 .....S QNT=+$P(A2,"\",3)
 .....S MHT=$P(A2,"\",2)
 .....S SUMT=QNT*MHT
 .....S $P(@TMP@(KV,PRT,N2),"*")=$P($G(@TMP@(KV,PRT,N2)),"*")+QNT 
 .....S $P(@TMP@(KV,PRT,N2),"*",2)=$P($G(@TMP@(KV,PRT,N2)),"*",2)+SUMT 
 .....S SSUM=SSUM+SUMT
 .....
 .....S N3="" F  S N3=$O(@$$^W4ORD@(HZ,N1,N2,N3)) Q:N3=""  D
 ......S A3=$G(^(N3))
 ......S CD3=$P(A3,"\") I 'CD3 S CD3=+$P(A3,"\",4)
 ......S QNT=+$P(A3,"\",3)
 ......S MHT=$P(A3,"\",7)
 ......S SUMT=QNT*MHT
 ......S $P(@TMP@(KV,PRT,CD3),"*")=$P($G(@TMP@(KV,PRT,CD3)),"*")+QNT 
 ......S $P(@TMP@(KV,PRT,CD3),"*",2)=$P($G(@TMP@(KV,PRT,CD3)),"*",2)+SUMT 
 ......S SSUM=SSUM+SUMT
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DPSHL
W4DPSHL(MEDAT,ADDAT) ; DOCH HAZMANOT;   [ 16.12.17 11:36 ] [ 20.04.17 17:18 ] [ 23.11.11 19:01 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,%REPN)
 D ^W4IN,^%W1PCVRM K @VRM
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 F NN=D1:1:D2 I $D(@$$^W4REF@(NN)) S N1="" D
 .F  S N1=$O(@$$^W4REF@(NN,N1)) Q:N1=""  D
 ..I $$^W4HZMH(N1) Q
 ..I $$^W4PIZUL(N1) Q
 ..S HZM=N1,SSUM=0 N MZ,PAR D
 ...S NMB=$$NMB^W4HZMST(HZM) Q:$$^W4MSL(NMB)  D PLU1
 ;
 S %REPN="W4SHPR"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4dpshl.jsp?JB="_JB)
END Q
 ;
PLU1 N I,PAR,RF
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S PAR=$$PAR^W4HZMST(HZM,I) S RF=^(I) D
 ..Q:'$L(PAR)  S SUGS=$$SUGL^W4L(NMB)  S:'SUGS SUGS=0 D PLU2
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  D
 ...S RF=^(N),PAR=N D PLU3
 Q
 ;
PLU2 ;
 N COL,PRC,SUM,ST,SUG,N,A
 S COL=$P(RF,"\",5),PRC=$P(RF,"\",4),COLP=COL
 S SUM=PRC*COL
 I PAR'["%" D
 .S PARO=PAR
 .S SUGP=+$$SUG^W4P(PAR),DEP=+$$DEP^W4P(PAR)
 ;
 S A="" I $D(PARO) S A=$G(@VRM@(SUGS,NMB,DEP,SUGP,PARO))
 S $P(A,"*",1)=$P(A,"*",1)+COLP
 I PAR'["%" S $P(A,"*",3)=$P(A,"*",3)+SUM D HNH
 I PAR["%" S SUM=$P(RF,"\",7),$P(A,"*",2)=$P(A,"*",2)-SUM
 I $D(PARO) S @VRM@(SUGS,NMB,DEP,SUGP,PARO)=A
 Q
 ;
PLU3 ;
 N ST0,COL,PRC,SUM,PARO,SUMHN
 S ST0=$P(RF,"\",2,25)
 S PARO=PAR N PAR S PAR=PARO
 I $E(PAR,1,2)="A-" D  G PLU31
 .S COL=+ST0,SUM=0,PRC=0
 .S PARO=PAR,PAR="A-"_$P(PAR,"-",3)
 I ST0["\+\" D
 .S COL=($L(ST0,"+\")-1)*COLP
 .S SUM=$P(ST0,"\",6)*COLP
 I ST0'["\+\" D
 .S COL=$P(ST0,"\",2) S:'COL COL=COLP
 .S SUM=$P(ST0,"\")*COL
 S PRC=$P(ST0,"\")
 ;
PLU31 N SUGP S SUGP=+$$SUG^W4P(PAR)
 S DEP=+$$DEP^W4P(PAR)
 S A=$G(@VRM@(SUGS,NMB,DEP,SUGP,PAR))
 S $P(A,"*",1)=$P(A,"*",1)+COL
 S $P(A,"*",3)=$P(A,"*",3)+SUM
 S @VRM@(SUGS,NMB,DEP,SUGP,PAR)=A
 Q
 ;
 ;
PAR N A S A=$G(@GLOB)
 S x1=$P(A,"*",1),x2=$P(A,"*",3)
 S x3=$P(A,"*",2)
 S x4=$P(A,"*",4)
 S x5=$J(x2-x3-x4,2,2)
 S PAR1=$$SHEM^W4P(PAR)
 I $G(SUGS),$G(^SUGS(SUGS))["OTH" D
 .S x2=$J($$MH^W4P(PAR)*x1,2,2),x4=x2-x3
 .S x5=$J(x2-x3-x4,2,2)
 Q
 ;
HNH ;
 Q
 
 
 

W4DSPM
W4DSPM ; [ 12.05.17 16:04 ] [ 01.04.17 13:05 ] [ 28.02.17 18:37 ] 
 ;--- INPUT - DAT1,DAT2
 ;
 ;           ASONLY = 1 (KOLEL HAZMANOT , 2 -HESB & LAK BILVAD )
 ;           PRATI - ONE CUSTOMER ONLY
 N (JB,%ARG,%REM)
 ;
 D ^%W1ARG
 ;
 I $G(ADSPK)="" S ADSPK=9999999999
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 ;
 D DIVBUT
 ;
 D FRM^W4DSPP(JB,MEDAT,ADDAT,$G(MESPK),$G(ADSPK))
 D RIKUZ
 D PC
 S DIVDOWN=""
 D DIVBUT
 W "<br><br>",!
 K @VRM
 Q
 ;
 ;
RIKUZ ;
 D ^%W1PCVRM
 D VRM1 K @VRM1
 ;
 N SPK,DAT,SUGTD,NOMTD,NP,SUG,SUMTD
 S SPK="" F IL=1:1 S SPK=$O(@VRM@(SPK)) Q:SPK=""  D
 .S DAT="" F  S DAT=$O(@VRM@(SPK,DAT)) Q:DAT=""  D
 ..S SUGTD="" F  S SUGTD=$O(@VRM@(SPK,DAT,SUGTD)) Q:SUGTD=""  D
 ...S NOMTD="" F  S NOMTD=$O(@VRM@(SPK,DAT,SUGTD,NOMTD)) Q:NOMTD=""  D
 ....S NP="" F  S NP=$O(@VRM@(SPK,DAT,SUGTD,NOMTD,NP)) Q:NP=""  D
 .....N A S A=$G(^(NP))
 .....S SUG="?"
 .....S SUMTD=$P(A,"\")
 .....S SUMHV=$P(A,"\",2)
 .....I SUGTD=0 S SUG=0
 .....I SUGTD=2 S SUG=1
 .....I SUGTD=3 S SUG=4
 .....I SUGTD=4 S SUG=2
 .....I SUGTD=5 S SUG=2
 .....I SUGTD=6 S SUG=3
 .....I SUGTD=7 S SUG=3
 .....S IND=SPK
 .....I $$SORT S IND=$$^W4ABCIND(SPK,$$SPK^W4L(SPK))
 .....S @VRM1@(IND)=SPK
 .....S @VRM1@(IND,SUG)=$G(@VRM1@(IND,SUG))+SUMTD
 ;
 D FRMTMPREP
 Q ;
 ;
 ;
PC ;
 W "<div align=""center"">",!
 D PCPRM^W4DMANY("W4DSPMR")
 ;
 D DIVEXC^%W1PC1("W4DSPMR","%W1FREPX")
 ;
 S IL=0,PG=1,RSIZE=33,SHLN=3,SSHLN=0
 S (SITRA0,SSKUP,SSHSBY,SSCB,SSTZ)=0
 D KOT
 ;
 S IND="" F  S IND=$O(@VRM1@(IND)) Q:IND=""  D
 .S SPK=$G(^(IND))
 .S SHLN=SHLN+1,SSHLN=SSHLN+1
 .I SHLN>RSIZE D PAGEBREAK
 .W "<tr style=""cursor:pointer"" onClick=""OnClickTr('"_SPK_"')"" >"
 .W " <td "
 .I SPK=$$GET^%W1PRM("DSPMCUR") W " style=""border:solid 2px brown"" "
 .W ">&nbsp;"_SPK_"&nbsp;</td>"
 .W " <td>&nbsp;"_$$H2U^%L1FRM($$NAME^W4SPK(SPK))_"&nbsp;</td>"
 .N ITRA0,SKUP,SHSBY,SCB,ITRA
 .S ITRA0=$G(@VRM1@(IND,0))
 .S SITRA0=SITRA0+ITRA0
 .S SKUP=$G(@VRM1@(IND,1))
 .S SSKUP=SSKUP+SKUP
 .S SHSBY=$G(@VRM1@(IND,2))
 .S SSHSBY=SSHSBY+SHSBY
 .S STZ=$G(@VRM1@(IND,3))
 .S SSTZ=SSTZ+STZ
 .S SCB=$G(@VRM1@(IND,4))
 .S SSCB=SSCB+SCB
 .S ITRA=ITRA0+SKUP+SHSBY-STZ-SCB
 .
 .D RKV(ITRA0)
 .D RKV(SKUP,"darkblue")
 .D RKV(SHSBY,"darkblue")
 .D RKV(STZ,"red")
 .D RKV(SCB,"darkgreen")
 .D RKV(ITRA)
 .
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">",!
 W " <td>"_$$^%W1DICT("TOTAL")_"</td>",!
 W " <td>&nbsp;</td>",!
 D RKV(SITRA0,"darkblue",1)
 D RKV(SSKUP,"darkblue",1)
 D RKV(SSHSBY,"darkblue",1)
 D RKV(SSTZ,"red",1)
 D RKV(SSCB,"green",1)
 S SITRA=SITRA0+SSKUP+SSHSBY-SSTZ-SSCB
 D RKV(SITRA,"darkblue",1)
 W "</tr>",!
 W "</table>",!
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')"
 .W "</script>",!
 ;
 W "</div>",!
 ;
 Q
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT
 S SHLN=0
 Q
 ;
KOT ;
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" "
  W " style=""font-size:"_$$^W3FSZ(12)_";color:black"" "
 W ">"
 ;
 W " <tr>"
 W "  <td>"_$$^%W1DICT("PAGE")_" : <span "_$$HDSTYLE_">"_PG_"</span></td>",!
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td>"_$$^%W1DICT("MESPK")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(MESPK)_"</td>",!
 W "  <td>"_$$^%W1DICT("ADSPK")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(ADSPK)_"</td>",!
 W "  <td>&nbsp;</td>",!
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td>"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(MEDAT)_"</td>",!
 W "  <td>"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(ADDAT)_"</td>",!
 W "  <td>&nbsp;</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" class=""rep"" border=""0"" width=""80%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("SUPPLNUMBER")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("ITRA0")_"</th>"
 I '$$^W4LKH D
 .W "  <th>"_$$^%W1DICT("BUINGSUM")_"</th>"
 .W "  <th>"_$$^%W1DICT("ARMINVOICESUM")_"</th>"
 I $$^W4LKH D
 .W "  <th>"_$$^%W1DICT("AUTOINVOICES")_"</th>"
 .W "  <th>"_$$^%W1DICT("OTHERINVOICES")_"</th>"
 W "  <th>"_$$^%W1DICT("DEBINVOICES")_"</th>"
 W "  <th>"_$$^%W1DICT("PAYMENTS")_"</th>"
 W "  <th>"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 I RKV S RKV=$J(RKV,2,2)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">"
 W "<br />",!
 W "<table width=""50%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    I '$D(DIVDOWN) D
    .W $$^%W1DICT("ABCSORT")_"&nbsp;"
    .W " <input type=""checkbox"" id=""Sort"" "
    .  I $$SORT W " checked=""checked"" "
    .  W " onClick=""Sort()"" "
    .W " >"
    ;
    I $D(DIVDOWN) W "&nbsp;"
   W "</td>",!
   ;
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   ;
   W "<td>&nbsp;</td>"
   ;
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FRMTMPREP ;
 D TMPREP K @TMPREP
 ;
 N IND,SPK,I,ST,ITRA0,SKUP,SHSBY,STZ,SCB,ITRA S I=0
 ;
 S IND="" F  S IND=$O(@VRM1@(IND)) Q:IND=""  D
 .S SPK=$G(^(IND)) I SPK="" S SPK=IND
 .Q:'SPK
 .S ST=SPK_"\"_$$SPK^W4L(SPK)
 .S ITRA0=$G(@VRM1@(IND,0))
 .S SKUP=$G(@VRM1@(IND,1))
 .S SHSBY=$G(@VRM1@(IND,2))
 .S STZ=$G(@VRM1@(IND,3))
 .S SCB=$G(@VRM1@(IND,4))
 .I 'SKUP,'SHSBY,'STZ,'SCB Q
 .S ST=ST_"\"_ITRA0
 .S ST=ST_"\"_SKUP
 .S ST=ST_"\"_SHSBY
 .S ST=ST_"\"_STZ
 .S ST=ST_"\"_SCB
 .S ITRA=ITRA0+SKUP+SHSBY-STZ-SCB
 .S ST=ST_"\"_ITRA
 .S I=I+1
 .S @TMPREP@("G",I)=ST
 Q
 ;
TMPREP ;
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
SORT(STAM) ; 
 Q $G(%ARG("SORT")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DSPP
W4DSPP ; [ 31.01.19 10:21 ] [ 12.05.17 17:44 ] [ 01.04.17 13:01 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 D ^%W1ARG
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D ^%W1PCVRM
 I '$D(@VRM) D
 .D FRM(JB,MEDAT,ADDAT,MESPK,ADSPK) ;
 D PC
 Q
 ;
 ;
FRM(JB,MEDAT,ADDAT,MESPK,ADSPK) ;
 N (JB,%ARG,%REM,MEDAT,ADDAT,MESPK,ADSPK)
 D PRM K @VRM
 ;
 D KLFKP
 ;
 S SHS=0,FIN=0
 S SSUMH=0,SSUMZ=0,SUMH=0,SUMZ=0 K STRINGP
 ;
 K @TEMPL
 S N="" F  S N=$O(@$$^W4GL("KLF")@(N)) Q:N=""  D
 .N N1 S N1=$TR(N,"-","")
 .N MESTRING1 S MESTRING1=$TR(MESTRING,"-","")
 .N ADSTRING1 S ADSTRING1=$TR(ADSTRING,"-","")
 .I MESTRING?1U.E,$E(N1,1,$L(MESTRING1))'=MESTRING1 Q
 .I MESTRING1'?1U.E,N1<MESTRING1 Q
 .I ADSTRING1'?1U.E,N1>ADSTRING1 Q
 .S SUGL=$$SUGL^W4L(N) I 'SUGL S SUGL=1
 .I SUGL<$G(MESUGL) Q
 .I $G(ADSUGL),SUGL>ADSUGL Q
 .;;I $$SLAVE(N),'$D(@$$^W4GL("KLF")@(N,"H")),'$D(@$$^W4GL("KLF")@(N,"TZ")),'$D(@$$^W4GL("KLF")@(N,"CB")),'$D(@$$^W4GL("P1LHB")@(N)) Q
 .S @TEMPL@(N)=N
 ;
 S NNN="" F  S NNN=$O(@TEMPL@(NNN)) Q:NNN=""  I NNN'="PC" S STRING=NNN D
 .S SUMH=0,SUMZ=0,SHZ=0 K M
 .S FIRST=1
 .
 .D  ; -- HISHUV ITRA KODEMET
 ..N KLOST,ITRA0,ITRA1
 ..S DAT0=$$^%L1DC(DAT1,"2-1")
 ..;
 ..D BDKRKZ(STRING)
 ..
 ..I $$GAMHZ D ^W4KLOST S ITRA=ITRA0 Q  ;-- KOLEL HAZMANOT
 ..I $$CBHB S ITRA=$$CBH^W4KLOST(STRING,$$^%L1DC($$^%L1DC(DAT0,1),3)) ; HESB & KAB
 .
 .S DAT=$$CR^W4DTL(DAT0)
 .F  S DAT=$O(@KLFKP@(DAT)) Q:DAT=""  S DT=$$DT^W4DTL(DAT) I DT'<DT1 D
 ..S DOC="" F  S DOC=$O(@KLFKP@(DAT,DOC)) Q:DOC=""  D
 ...I '$$DEBT!'$$ZHUT(DOC),DT>DT2 Q
 ...I $$CBHB,DOC'="H",DOC'="CB",DOC'="TZ" Q
 ...I $$GAMHZ,DOC'="H",DOC'="CB",DOC'="TZ",DOC'="HZ",DOC'="HMK",DOC'="TM" Q
 ...I $$GAMHZ,DOC="HMK"!(DOC="TM"),'$$^W4LKH Q
 ...;
 ...S NUMBER="" F  S NUMBER=$O(@KLFKP@(DAT,DOC,NUMBER)) Q:NUMBER=""  D  I $D(M) D SETST
 ....K M
 ....S STR=$G(^(NUMBER))
 ....I FIRST D
 .....S FIRST=0
 .....S M("SUGTD")=0
 .....S M("ZHUT")="",M("HOVA")="",M("NOMTD")=""
 .....N DAT S DAT=$$CR^W4DTL(DAT1)_"0000"
 .....S M("ITRA")=$J(ITRA,2,2),M("SUMH")=ITRA
 .....D SETST
 ....
 ....S M("ZHUT")=$P(STR,"\",1)
 ....S M("HOVA")=$P(STR,"\",2)
 ....I +M("HOVA")=+M("ZHUT"),DOC'="H",DOC'="TZ",DOC'="HMK" K M Q
 ....S M("SUMH")=$S(M("HOVA"):M("HOVA"),M("ZHUT"):M("ZHUT"),1:$P(STR,"\",3))
 ....S M("TRH")=$$^%L1DC(DAT,1)
 ....S M("SUGTD")=$S(DOC="HZ":1,DOC="H":$$SUGHB(NUMBER),DOC="CB":3,DOC="TZ":$$SUGHBZ(NUMBER),DOC["HMK":$$SUGHMK(NUMBER),DOC="TM":10,1:"")
 ....S M("NOMTD")=$S(NUMBER<0:-NUMBER,1:$P(NUMBER,"-",1,2))
 ....
 ....I DOC="HZ"!(DOC="TM"),$$HB(STRING,DOC,NUMBER) D  Q
 .....S M("ZHUT")="",M("HOVA")=""
 ....D  ; I $G(ASONLY)=2 D  ; *** LEV 26/02/15
 .....I DOC="H"&NUMBER>0,M("SUMH") S M("HOVA")=$J(M("SUMH"),2,2)
 .....I DOC="TZ"!(NUMBER<0),M("SUMH") S M("HOVA")=$J(-M("SUMH"),2,2),M("ZHUT")=""
 ....
 ....I +M("HOVA")=+M("ZHUT"),DOC="H"!(DOC="TZ") S M("ZHUT")=""
 ....S M("ITRA")=ITRA+M("HOVA")-M("ZHUT"),ITRA=M("ITRA")
 ....
 ....D SUMHZ
 ...Q
 ..Q
 .Q
 ;
 D PUT^%W1PRM("W4DSPP",1)
 Q
 ;
 ;
PC ;
 D PRM
 ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=33,SHLN=0,SSHLN=0
 S (SSHOV,SSZHUT,SLITRA,LITRA)=0
 ;
 S SPK="" F IL=1:1 S SPK=$O(@VRM@(SPK)) Q:SPK=""  D
 .S (SHOV,SZHUT)=0
 .I IL=1 D KOT(SPK) S SHLN=SHLN+3
 .I IL>1 D PAGEBREAK
 .S DAT="" F  S DAT=$O(@VRM@(SPK,DAT)) Q:DAT=""  D
 ..S SUGTD="" F  S SUGTD=$O(@VRM@(SPK,DAT,SUGTD)) Q:SUGTD=""  D
 ...S NOMTD="" F  S NOMTD=$O(@VRM@(SPK,DAT,SUGTD,NOMTD)) Q:NOMTD=""  D
 ....S NP="" F  S NP=$O(@VRM@(SPK,DAT,SUGTD,NOMTD,NP)) Q:NP=""  D
 .....N A S A=$G(^(NP)) Q:A=""
 .....S SHLN=SHLN+1,SSHLN=SSHLN+1
 .....I SHLN>RSIZE D PAGEBREAK
 .....N DOP S DOP="" I SUGTD=4 S DOP="HY"
 .....S PRM=SPK_"n"_SUGTD_"n"_NOMTD_DOP_"n"_NP
 .....W "<tr onClick=""OnClickTr('"_PRM_"')"""
 .....W " style=""cursor:pointer"
 .....W """"
 .....W " >"
 .....W " <td align=""center"">"_$$^%L1DC(DAT,1)_"</td>"
 .....W " <td>&nbsp;"
 .....I SUGTD=0 W "<b>"
 .....W $$H2U^%L1FRM($$NAMEDOC(SUGTD))
 .....N HBN S HBN=$$HBN(SPK,"HZ",NOMTD)
 .....I SUGTD=1,HBN W " [ "_$$H2U^%L1FRM("'yg")_" "_HBN_" ]"
 .....I SUGTD=0 W "</b>"
 .....W "</td>"
 .....W "<td "
 .....I PRM=$$GET^%W1PRM("DLKPCUR") W " style=""border:solid 2px brown"""
 .....W " >&nbsp;"_NOMTD_"</td>"
 .....D RKV($P(A,"\"),$S(SUGTD=6!(SUGTD=7):"red",1:""),$S(SUGTD=0:1,1:"")) ;- SHUM BE TEUDA
 .....D RKV($P(A,"\",2),"darkblue") S SHOV=SHOV+$P(A,"\",2)
 .....D RKV($P(A,"\",3),"green") S SZHUT=SZHUT+$P(A,"\",3)
 .....D RKV($P(A,"\",4),"black") S LITRA=$P(A,"\",4)
 .....W "</tr>",!
 .;---------------------- ITOGO -------
 .W "<tr style=""background-color:yellow;font-weight:bold"">"
  .W " <td>"_$$^%W1DICT("TOTAL")_"</td>"
  .W " <td>&nbsp;</td>"
  .W " <td>&nbsp;</td>"
  .W " <td>&nbsp;</td>"
  .
  .S SSHOV=SSHOV+SHOV
  .S SSZHUT=SSZHUT+SZHUT
  .S SLITRA=SLITRA+LITRA
  .
  .D RKV(SHOV,"darkblue",1)
  .D RKV(SZHUT,"green",1)
  .D RKV(LITRA,"black",1)
 .W "</tr>",!
 .
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')",!
 .W " Back()",!
 .W "</script>",!
 ;
  W "<tr style=""font-weight:bold;background-color:yellow"">"
  W " <td>"_$$^%W1DICT("TOTALALLCUSTOMERS")_"</td>"
  W " <td>&nbsp;</td>"
  W " <td>&nbsp;</td>"
  W " <td>&nbsp;</td>"
  D RKV(SSHOV,"darkblue",1)
  D RKV(SSZHUT,"green",1)
  D RKV(SLITRA,"black",1)
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 K @TEMPL
 K @VRM
 Q
 ;
TEMPL S TEMPL=$$^W4MAIN("TEMPL")
 Q
KLFKP S KLFKP=$$^W4GL("KLF")_"(STRING,""KP"")"
 Q
SUMHZ ;
 S SUMH=SUMH+M("HOVA"),SUMZ=SUMZ+M("ZHUT")
 S SSUMH=SSUMH+M("HOVA"),SSUMZ=SSUMZ+M("ZHUT")
 Q
 ;
HB(STRING,DOC,NOMTD) ;
 N OK S OK=0
 N NOMTD S NOMTD=$$^W4NOMTD(NOMTD,DOC)
 I $D(@$$^W4GL("P1HL1")@(STRING,NOMTD,"HSB")) Q 1
 N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(STRING,NOMTD,I,"HSB")) S OK=1 Q
 I OK Q OK
 N LK S LK=""
 F  S LK=$O(@$$^W4GL("P1EZLI")@(STRING,LK)) Q:LK=""  D
 .I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,"HSB")) S OK=1 Q
 .N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,I,"HSB")) S OK=1 Q
 Q OK
 ;
 ;
HBN(STRING,DOC,NOMTD) ;
 N OK S OK=0
 N NOMTD S NOMTD=$$^W4NOMTD(NOMTD,DOC)
 N ST S ST=""
 N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(STRING,NOMTD,I,"HSB")) D
 .S ST=ST_$G(^("HSB"))_","
 I $L(ST) Q $E(ST,1,$L(ST)-1)
 ;
 N LK S LK=""
 F  S LK=$O(@$$^W4GL("P1EZLI")@(STRING,LK)) Q:LK=""  D
 .I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,"HSB")) S OK=1 Q
 .N I F I=1:1:20 I $D(@$$^W4GL("P1HL1")@(LK,NOMTD,I,"HSB")) D
 ..S ST=ST_$G(^("HSB"))_","
 I $L(ST) S ST=$E(ST,1,$L(ST)-1)
 Q ST
 ;
SETST ;
 N NP,IND1,IND2,IND3
 S IND2=$G(M("SUGTD")) I IND2="" S IND2="-"
 S IND3=$G(M("NOMTD")) I IND3="" S IND3="-"
 S NP=$O(@VRM@(STRING,DAT,IND2,IND3,9999),-1)+1
 S @VRM@(STRING,DAT,IND2,IND3,NP)=$G(M("SUMH"))_"\"_$G(M("HOVA"))_"\"_$G(M("ZHUT"))_"\"_$G(M("ITRA"))
 Q
 ;
SLAVE(SPK) ;
 I $G(@$$^W4GL("P1EZL")@(SPK)) Q 1
 Q 0
GAMHZ(STAM)
 Q $$GAMHZ^W4DLKM
 ;
CBHB(STAM)
 Q $$CBHB^W4DLKM
 ;
NAMEDOC(SUGTD) ;
 N SUGTD1
 S SUGTD1=""
 I SUGTD=0 Q "zncew dxzi"
 I SUGTD=1 Q "dpnfd"
 I SUGTD=2 Q "fekix zipeayg"
 I SUGTD=3 Q "dlaw"
 I SUGTD=4 Q "'ci zipeayg"
 I SUGTD=5 Q "'tn zipeayg"
 I SUGTD=6 Q "iekif zipeayg"
 I SUGTD=7 Q "'tn iekif zipeayg"
 I SUGTD=8 Q "dlaw/qn zipeayg"
 I SUGTD=9 Q "'tn dlaw/qn zipeayg"
 I SUGTD=10 Q "gelyn zcerz"
 I SUGTD=11 Q "iekif fekix zipeayg"
 Q SUGTD1
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT(SPK)
 S SHLN=0
 Q
 ;
KOT(SPK) ;
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;"_$$FONTFM^W3CSS_""">"_SPK_" "_$$H2U^%L1FRM($$SPK^W4L(SPK))_"</span><br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""" "
 W " width=""80%"">"
 D MEADL
 ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("MEDAT"))_"</td>",!
 W "  <td >"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("ADDAT"))_"</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""80%"">"
 W " <tr style=""font-size:"_$$^W3FSZ(11)_""">"
 W "  <td>"_$$H2U^%L1FRM($$KTVM^W4L(SPK))_"</td>",!
 W "  <td>"_$$^%W1DICT("TEL")_" : "_$$TELB^W4L(SPK)_"</td>",!
 W "  <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("PAGE")_" : "_PG_"</td>",!
 W " </tr>",!
 ;
 W "</table>",!
 W "<br />",!
 ;
 W "<table class=""rep"" dir="""_$$^%W1DIR_""" border=""0"" "
  W " width=""80%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("DATE")_"</th>"
 W "  <th>"_$$^%W1DICT("KINDOFDOCUMENT")_"</th>"
 W "  <th>"_$$^%W1DICT("NUMBEROFDOC")_"</th>"
 W "  <th>"_$$^%W1DICT("SUMOFDOC")_"</th>"
 W "  <th>"_$$^%W1DICT("HOVA")_"</th>"
 W "  <th>"_$$^%W1DICT("ZHUT")_"</th>"
 W "  <th>"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 I RKV S RKV=$J(RKV,2,2)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
SUGHB(NOM) ;
 N LK
 I NOM<0 Q 11
 S LK=$G(@$$^W4GL("KLIN")@("H",NOM))
 I LK["+" Q 2
 I LK["W" Q 5
 Q 4
 ;
SUGHBZ(NOM) ;
 N LK
 S LK=$G(@$$^W4GL("KLIN")@("TZ",NOM))
 I LK["W" Q 7
 I LK["+" Q 11
 Q 6
 ;
SUGHMK(NOM) ;
 N LK
 S LK=$G(@$$^W4GL("KLIN")@("HMK",NOM))
 I LK["W" Q 9
 Q 8
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DEBT(STAM) ;
 Q +$G(%ARG("DEBT"))
 ;
ZHUT(DOC) ;
 I $G(DOC)="CB" Q 1
 Q 0
 ;
MEADL ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MESUGL")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MESUGL_" "_MESUGL1_"</td>",!
 W "  <td >"_$$^%W1DICT("ADSUGL")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADSUGL_" "_ADSUGL1_"</td>",!
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MESPK")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MESPK_"</td>",!
 W "  <td >"_$$^%W1DICT("ADSPK")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADSPK_"</td>",!
 W " </tr>",!
 Q
 ;
PRM ;
 D ^%W1PCVRM
 D TEMPL
 S %ARG("MEKVZ")=$G(MEKVZ)
 S %ARG("ADKVZ")=$G(ADKVZ)
 S PRTN=$$^%W1JB
 S DAT1=$$^%L1DC(MEDAT,2)
 S DAT2=$$^%L1DC(ADDAT,2)
 S MESTRING=$TR(MESPK,"-","")
 I MESTRING,MESTRING<1000,'$$^W4LKH S MESTRING=1000
 S ADSTRING=$TR(ADSPK,"-","")
 D MEADSUGL^W4DLKM
 S:'ADSTRING (ADSTRING,ADSPK)=99999999999
 S:'ADSUGL ADSUGL=99999
 ;;S ASONLY=3-ASONLY
 S DT1=$$^%L1DC(DAT1,4)
 S DT2=$$^%L1DC(DAT2,4)
 Q
 ;
BDKRKZ(STRING) ;
 N DAT,OK
 N GLRKZ S GLRKZ=$$^W4GL("P1LHB")
 N GLKL S GLKL=$$^W4GL("KLF")
 N NUM S NUM="" F  S NUM=$O(@GLRKZ@(STRING,NUM)) Q:NUM=""  D
 .N DT0 S DT0=$G(@GLRKZ@(STRING,NUM,"HB","DF")) Q:'DT0
 .N DAT0 S DAT0=$ZD(DT0,"YYYYMMDD")_"0000"
 .N SUM S SUM=$G(@GLRKZ@(STRING,NUM,"HB","SHUM")) Q:'SUM
 .S OK=0
 .S DAT=DAT0 F  S DAT=$O(@GLKL@(STRING,"KP",DAT)) Q:DAT=""  D  Q:OK
 ..I $D(@GLKL@(STRING,"KP",DAT,"H",NUM)) S OK=1
 .Q:OK  Q:NUM<1
 .S DAT=$E(DAT0,1,8)_"0099"
 .S @GLKL@(STRING,"KP",DAT,"H",NUM)="\\"_SUM
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DTIP
W4DTIP ; -- TASHLUMIM LE MELZARIM ;   [ 04.12.24 05:31 ] [ 04.12.23 14:44 ] [ 21.02.22 06:11 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="W4DTIP"
 ;S %REPN("HZSCR")=HZSCR
 ;S %REPN("MISHL")=MISHL
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4DTIP"
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
TRH ;
 N DT,HZM,STIP,TIPMZ,TIPCH,TIPCA,TIPAS,MEDATH,ADDATH
 ;
 D ^%W1PCVRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 S:'$G(MEHZM) MEHZM=""
 S:'$G(ADHZM) ADHZM="99999999"
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 ;
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 S:HZM<0 HZM="" D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM)) D
 ..I $$^W4HZMH(HZM) Q
 ..I $$I^W4PIZUL(HZM) Q
 ..S MKBL=$$MKBL^W4HZMST(HZM)
 ..I $G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")) D
 ...I $G(@$$^W4GL("P1MLZ")@(HZM)) S MKBL=$G(^(HZM))
 ..S:'MKBL MKBL="00000"
 ..I $$HZM^W4MSL(HZM) S MKBL=$$PSL^W4HZMST(HZM) S:MKBL="" MKBL=9999
 ..I $G(ADMKBL),MKBL<$G(MEMKBL)!($G(MKBL)>ADMKBL) Q
 ..
 ..S TIPMZ=$$STIPVT^W4HZMST(HZM,"MZ")
 ..S TIPCH=$$STIPVT^W4HZMST(HZM,"CH")
 ..S TIPCA=$$STIPVT^W4HZMST(HZM,"V")
 ..S TIPAS=$$STIPVT^W4HZMST(HZM,"ASR")
 ..S STIP=TIPMZ+TIPCH+TIPCA+TIPAS Q:'STIP
 ..S @VRM@(DT,MKBL,HZM)=STIP_"*"_TIPMZ_"*"_TIPCH_"*"_TIPCA_"*"_TIPAS
 .
 .N DT1 S DT1=DT_"^"
 .N GLTIP S GLTIP=$$^W4GL("TIPMZ")
 .F  S DT1=$O(@GLTIP@(DT1)) Q:DT1=""  Q:DT1'[(DT_"^")  D
 ..S MKBL="" F  S MKBL=$O(@GLTIP@(DT1,MKBL)) Q:MKBL=""  D
 ...S (STIP,TIPMZ)=$G(^(MKBL))
 ...N STIP0,TIPMZ0 S STIP0=$P($G(@VRM@(DT,MKBL,9999999)),"*",1)
 ...S TIPMZ0=$P($G(@VRM@(DT,MKBL,9999999)),"*",2)
 ...S @VRM@(DT,MKBL,9999999)=(STIP+STIP0)_"*"_(TIPMZ+TIPMZ0)
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
DT ;
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
MKBL ;
 S MKBL1=$$^W4NAME(MKBL)
 Q
 ;
HZM ;
 N SHAA1
 ;;S ^AA(HZM,"GLOB")=$G(GLOB)
 S SHAA=$P($$ZMANK^W4HZMST(HZM),"  ",2)
 I $$HZM^W4MSL(HZM) S SHAA=$$SHAA^W4HZMST(HZM)
 S SHAA1=SHAA I SHAA<5 S SHAA1=SHAA1+24
 I ADSHAA,ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 I ADSHAA,SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 N A S A=$G(@GLOB)
 ;;S ^AA(HZM)=A
 ;;S ^AA(HZM,"SHAA")=SHAA
 N J F J=1:1:5 S @("x"_J)=$P(A,"*",J)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DTL
W4DTL(DAT) ; [ 31.01.19 13:50 ] [ 16.05.10 17:54 ] [ 01.05.10 12:34 ] [
 I $E(DAT,1,2)=19!($E(DAT,1,2)=20),$E(DAT,7,8),DAT?8N.N Q $E(DAT,3,8)
 I DAT?6N.N Q $E(DAT,1,6)
 Q DAT
 ;
CR(DAT) ;
 I $E(DAT,1,2)=19!($E(DAT,1,2)=20),$E(DAT,7,8) Q $E(DAT,1,8)
 I $E(DAT)>8 Q 19_DAT
 Q 20_DAT
 ;
CRYYMM(DAT) ;
 Q $E($$CR(DAT),1,6)
 ;
FULL(DAT) ;
 Q $E($$CR(DAT),1,8)
 ;
YYMM(DAT)
 Q $E($$CRYYMM(DAT),3,6)
 ;
FYYMM(DAT)
 Q $$CRYYMM(DAT)
 ;
NP(DAT) ;
 I $L(DAT)<9 Q 0
 Q $E(DAT,9,12)
 ;
DT(DAT) ;
 Q $$^%L1DC($$W4DTL(DAT),4)
 

W4DTLM
W4DTLM(DT) ; HAZAGAT TLUSHEY MATANA BE DOH SGIRAT YOM [ 11.07.17 16:27 ] [ 15.09.16 10:03 ] [ 10.03.16 06:25 ] 
 N (JB,%REM,%ARG,DT,DISP,NZ,P1X)
 D ^W4IN,^%L1TS D ^W4MDPPC S SM=5
 ;
 D CRVRM
 ;
 S ST="" D W
 I $$HB D
 .S ST="   "_$$^%L1DC(DT,1)_" - l mipetew yenin g""ec" D W
 .S ST="-----------------------------------" D W
 .S ST="   mekq  :   oetew 'qn  : dpnfd 'qn" S PRKOT=1 D W K PRKOT
 .S ST="-----------------------------------" D W
 I '$$HB D
 .S ST="   "_$$PCTX("REPZCOUP")_" "_$$^%L1DC(DT,1) D W
 .S ST=$TR($J("",30)," ","-")
 .S ST="  "_$$PCTX("ORDER",5)_" : "_$$PCTX("COUPNUMBER",12)_" : "_$$PCTX("SUM",8)_"  " S PRKOT=1 D W K PRKOT
 ..S ST=$TR($J("",30)," ","-")
 ;
 S HZM="" F  S HZM=$O(@VRM@(HZM)) Q:HZM=""  D
 .S TL="" F  S TL=$O(@VRM@(HZM,TL)) Q:TL=""  D
 ..S A=$G(^(TL)),TL1=TL
 ..I TL<0  S TL1=$S($$HB:"'vig ",1:"Out")_" "_$J(-TL,7)
 ..I $$HB S ST=$J($P(A,"\",2),7,2)_" : "_$J(TL1,12)_" : "_$J($P(A,"\"),7)
 ..I '$$HB S ST=$J($P(A,"\"),7)_" : "_$J(TL1,12)_" : "_$J($P(A,"\",2),7,2)
 ..D W
 ;
 S ST="------------------------------------" D W
 I $$HB S ST=$J(SUM,7,2)_" : "_$J(COL,8)_": mipetew k""dq " D W
 I '$$HB S ST=$$PCTX("TOTALCOUP")_" : "_$J(COL,8)_" : "_$J(SUM,7,2) D W
 S ST="" D W
 I +$G(P1X)'=2,'$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 K @VRM Q
 ;
W ;
 S:'$D(NZ) NZ=0 D ^W4PCST(ST,$G(DISP))
 Q
 ;
 ;
CRVRM ;
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 ;
 S (COL,SUM)=0
 S TL="" F  S TL=$O(@$$^W4GL("W4TLMTN")@(TL)) Q:TL=""  D
 .Q:$$DTTS^W4TLMTN(TL)'=DT
 .S PAID=$$PAID^W4TLMTN(TL) Q:'PAID
 .S HZM=$$HZMPAID^W4TLMTN(TL)
 .S @VRM@(HZM,TL)=HZM_"\"_PAID
 .S COL=COL+$S(PAID>0:1,1:-1)
 .S SUM=SUM+PAID
 Q
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 ; 
PCTX(KEY,L) 
 Q $$^W4PCTX(KEY,$G(L))
 
 
 
 
 
 

W4DTM
W4DTM ; DOCH TM [ 23.10.14 10:00 ] [ 12.09.13 07:15 ] [ 27.01.11 14:55 ]
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D PUT^%W1PRM("VD","TM")
 D ^W4IN
 D ^%W1ARG
 I '$G(MELKH) S MELKH=""
 I '$G(ADLKH) S ADLKH=99999999999
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
GET ;
 N KLIN S KLIN=$$^W4GL("KLIN")
 N CODDOC S CODDOC=$$CODDOC
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 ;
 S I=0
 S (SUMTM,SLMAM,SMAM,SAH)=0
 ;
 S N="" F  S N=$O(@KLIN@(CODDOC,N)) Q:N=""  D
 .S LK=$$LK^W4STRING(CODDOC,N)
 .I $TR(LK,"-","")<$TR(MELKH,"-","") Q
 .I $TR(LK,"-","")>$TR(ADLKH,"-","") Q
 .D LINETM(N,LK)
 Q
 ;
LINETM(N,LK) ;
 D ^W4HSBGET(N,"TM") Q:$D(W4HSB)<10
 ;
 Q:'$G(W4HSB("TODATE"))
 ;
 I $$^%L1DC(W4HSB("TODATE"),3)<$$^%L1DC(DAT1,3) Q
 I $$^%L1DC(W4HSB("TODATE"),3)>$$^%L1DC(DAT2,3) Q
 ;
 I $G(%ARG("MESUM")),W4HSB("TOT")<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),W4HSB("TOT")>%ARG("ADSUM") Q
 ;
 I $G(%ARG("MENOM")),N<%ARG("MENOM") Q
 I $G(%ARG("ADNOM")),N>%ARG("ADNOM") Q
 ;
 S I=I+1
 S @TMPREP@("G",I)=N_"\"_W4HSB("TODATE")_"\"_LK_"\"_$$LKH^W4L(LK)
 S @TMPREP@("G",I)=@TMPREP@("G",I)_"\"_$J(W4HSB("LMAM"),2,2)_"\"_$J(W4HSB("MAM"),2,2)_"\"_$J(W4HSB("TOT"),2,2)
 S SUMTM=SUMTM+1
 S SLMAM=SLMAM+W4HSB("LMAM")
 S SMAM=SMAM+W4HSB("MAM")
 S SAH=SAH+W4HSB("TOT")
 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4DTM-CHKPRM","MELKH=MELKH & ADLKH=ADLKH & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MELKH>ADLKH Q "0;RANGENOTVALID;;MELKH"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4DTM"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N TM S TM=$$TMG(A)
 W " style=""cursor:pointer;color:black;font-size:"_$$^W3FSZ(11)
 W """"
 N CODDOC S CODDOC=$$CODDOC
 N LK S LK=$$LK^W4STRING(CODDOC,TM)
 W " onClick=""ShowItemsInvoice('"_TM_"T','"_LK_"','ifr')"""
 Q
 ;
TD ;
 Q
LKG(A) ;
 Q $P(A,"\",3)
 ;
TMG(A) ;
 Q $P(A,"\")
 ;
CODDOC(STAM) Q "TM"

W4DTMRPR
W4DTMRPR ; [ 30.10.22 15:59 ] [ 07.04.22 20:08 ] [ 
SET(PRM) ; 
 N DAT,TIME,DD,MM,YY
 S DAT=$P(PRM,";")
 S DD=$E(DAT,1,2)
 S MM=$E(DAT,4,5)
 S YY=$E(DAT,7,8)
 ;
 S TM=$P(PRM,";",2)
 ;
 S ST="sudo date -s 20"_YY_"-"_MM_"-"_DD
 ZSY ST
 ;
 ZSY "sudo date -s "_TM
 ZSY "sudo /sbin/hwclock --systohc"
 H 10
 D LOADPRNPRG^W4SERV
 Q
 ;
HR ;
 W "<select style=""background-color:yellow"" "
 W " name=""SHAAhr"" id=""SHAAhrid"" "
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 . I I=+$$T^%L1TIME($H) W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 Q
 ;
 ;
MN ;
 W "<select style=""background-color:yellow"" "
 W " name=""SHAAmn"" id=""SHAAmnid"" "
 W " >"
 ;
 N I,TM
 F I=0:1:59 D
 .W "<option value="""_I_""""
 .S TM=$P($$T^%L1TIME($H),":",2)
 .I +I=+TM W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DU2DU1
W4DU2DU1 ; [ 17.08.11 11:12 ] [
 S DUMP=$$^W4GL("DUMP")
 S DUMP1=$$^W4GL("DUMP1")
 K @DUMP1
 S N="" F  S N=$O(@DUMP@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S DAT=$P(A,"|",7)
 .S TIM=$P(A,"|",6)
 .S DT=$$^%L1DC(DAT,3)
 .S TM=TIM*3600+($P(TIM,":",2)*60)
 .S TM=$TR($J(TM,5)," ",0)
 .F I=1:1 Q:'$D(@DUMP1@(DT_TM_I))
 .S @DUMP1@(DT_TM_I)=N
 Q

W4DUMP
W4DUMP(PRM) ; [ 06.08.25 07:42 ] [ 11.06.25 01:43 ] [ 15.05.25 06:24 ] 
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4DUMP","PRM=PRM")
 S ASM=$P(PRM,";",1)
 S DAT=$P(PRM,";",2)
 I DAT?5N S DAT=$ZD(DAT,"DD.MM.YY")
 S MYDVN=$$^W4MYDVN,UR=1
 S ER=0,ER1=""
 S DATE=20_$$^%L1DC(DAT,2)
 S INDMP=0,OKPC=0
 ;
 I ASM D  I OKPC G END1
 .D ^W4MDPPC I '$G(PRINT) G END1
 .D ^%L1TS
 .S INDMP=$P($G(@$$^W4GL("TRANL")@("ASM",ASM)),"^")
 .
 .;;I $$NOSND^W4SNDEMV S INDMP=ASM; -- 06/08/2025
 .I $$EMV4^W4SNDEMV,'$$OLDSND4^W4SNDEMV S INDMP=ASM
 .Q:'INDMP
 .I INDMP,$D(@$$^W4GL("DUMP")@(INDMP,"PC"))>9 D
 ..S N="" F  S N=$O(@$$^W4GL("DUMP")@(INDMP,"PC",N)) Q:N=""  D
 ...S STPC=$TR($G(^(N)),TS0,TSS)
 ...S STPC=$J(STPC,40)
 ...S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,99999))+1)=STPC
 ..D ^W4CUT(PRINT,$G(%MDP("CUT")))
 ..S OKPC=1
 ;
 I $$EMV^W4PRM G END1
 ;
 D GL,GL1
 D PUT^%W3DEB("W4DUMP","DATE=DATE&ASM=ASM")
 ;
 D GETDUMP(DATE,ASM)
 ;
 I $G(ER) D
 .N DAT1 S DAT1=$ZD($$^%L1DC(DAT,3)+1,"YYYYMMDD")
 .D GETDUMP(DAT1,ASM)
 .I $G(ER) D
 ..S DAT1=$ZD($$^%L1DC(DAT,3)-1,"YYYYMMDD")
 ..D GETDUMP(DAT1,ASM)
 ;
 I $G(ER) G END1
 ;
 S DPSINFO="DepositInfo"
 S TRANSMIT="Transmit"
 S TOTALS="Totals"
 ;
 S I=0,RES=""
CYC S I=I+1
 ;
 I '$D(@GL1@(I)) G END
 S A=$G(^(I))
 ;
 I A[("<"_DPSINFO) D
 .S BGDPS=I
 .S SPK=$$GET(I,"Retailer",DPSINFO)
 .S BGOI=BGDPS
CYCORD .S BGOI=$$FIND(BGOI,TRANSMIT,DPSINFO)
 .I 'BGOI S I=$$FINDEND(BGDPS,DPSINFO,"") Q
 .S K=0 K M
 .S ASM=$$GET(BGOI,"ReferenceNumber",TRANSMIT)
 .S DATE=$$GET(BGOI,"TransmitDateTime",TRANSMIT)
 .S SHAA=$P($P(DATE," ",2),":",1,2)
 .S DATE=$P(DATE," ")
 .;;S DATE=$$TR2($P(DATE,"/",2))_"/"_$$TR2($P(DATE,"/",1))_"/"_$P(DATE,"/",3)
 .S NAME=$$GET(BGOI,"TerminalName",TRANSMIT)
 .S NAME=$$INVH^%L1FRM($$FUNC^%LCASE(NAME))
 .S ISRNUM=$$GET(BGOI,"IsrCompanyNum",TRANSMIT)
 .S CALNUM=$$GET(BGOI,"CalCompanyNum",TRANSMIT)
 .S DINNUM=$$GET(BGOI,"DinersCompanyNum",TRANSMIT)
 .S AMEXNUM=$$GET(BGOI,"AmexCompanyNum",TRANSMIT)
 .S LEUMINUM=$$GET(BGOI,"LeumiCardCompanyNum",TRANSMIT)
 .S FILENUM=$$GET(BGOI,"FileNum",TRANSMIT)
 .
 .S BGDI=BGOI
 .;
CYCD .S BGDI=$$FIND(BGDI,TOTALS,TRANSMIT)
 .I 'BGDI S BGOI=$$FINDEND(BGOI,TRANSMIT,DPSINFO) G CYCORD
 .S II=BGDI
 .S SUGC=0
CYCII .S II=II+1 Q:'$D(@GL1@(II))
 .S A=$G(^(II)) Q:A[("<"_TOTALS)
 .;
 .I A["<All>" S SUGC=0
 .I A["<Isracard>" S SUGC=1
 .I A["<Cal>" S SUGC=2
 .I A["<Diners>" S SUGC=3
 .I A["<Amex>" S SUGC=4
 .I A["<LeumiCard>" S SUGC=6
 .I A["<Debit>" S ZH=0
 .I A["<Credit>" S ZH=1
 .I A["<Shekel>" S NIS=1
 .I A["<Dollar>" S NIS=0
 .I A["<Amount>" S M(+$G(SUGC),+$G(ZH),+$G(NIS),"S")=$$GETVL(II,"Amount")
 .I A["<Trans>" S M(+$G(SUGC),+$G(ZH),+$G(NIS),"Q")=$$GETVL(II,"Trans")
 .G CYCII
 ;
 G CYC
END D PC
END1 ;;K @GL,@GL1
 Q ER_";"_ER1
 ;
 ;
GET(I,EL,PARENT)
 N IND
 ;
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(+IND,EL)
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0
 F J=I+1:1 Q:'$D(@GL1@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL1@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
GETVL(I,EL) ;
 N A,ZN
 S A=$$SPA^%L1FRM($G(@GL1@(I+1)))
 I A="" Q ""
 I $E(A)="<" Q ""
 ;;S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(A,"</"_EL_">")
 S ZN=$$REG(ZN)
 Q $$SPA^%L1FRM(ZN)
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 ;
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 ;
PC ;
 S MAS(3)=$G(NAME)
 S MAS(5)=$E($G(@$$^W4PRM@("ASH","MASOF")),1,7)
 ;
 S MAS(8)=$G(DATE)
 S MAS(10)=$G(SHAA)
 S MAS(12)=$G(ISRNUM)
 S MAS(14)=$G(CALNUM)
 S MAS(16)=$G(DINNUM)
 S MAS(18)=$G(AMEXNUM)
 S MAS(20)=$G(LEUMINUM)
 S MAS(22)=$G(ASM)
 S MAS(24)=$G(FILENUM)
 ;
 S MAS(30)=$G(M(0,0,1,"Q"))
 S MAS(33)=$$JS($G(M(0,0,1,"S")))
 S MAS(35)=$G(M(0,1,1,"Q"))
 S MAS(37)=$$JS($G(M(0,1,1,"S")))
 ;
 S MAS(39)=$G(M(1,0,1,"Q"))
 S MAS(40)=$$JS($G(M(1,0,1,"S")))
 S MAS(58)=$G(M(1,1,1,"Q"))
 S MAS(60)=$$JS($G(M(1,1,1,"S")))
 ;
 S MAS(62)=$G(M(2,0,1,"Q"))
 S MAS(63)=$$JS($G(M(2,0,1,"S")))
 S MAS(64)=$G(M(2,1,1,"Q"))
 S MAS(65)=$$JS($G(M(2,1,1,"S")))
 ;
 S MAS(70)=$G(M(3,0,1,"Q"))
 S MAS(71)=$$JS($G(M(3,0,1,"S")))
 S MAS(72)=$G(M(3,1,1,"Q"))
 S MAS(73)=$$JS($G(M(3,1,1,"S")))
 ;
 S MAS(75)=$G(M(4,0,1,"Q"))
 S MAS(76)=$$JS($G(M(4,0,1,"S")))
 S MAS(77)=$G(M(4,1,1,"Q"))
 S MAS(78)=$$JS($G(M(4,1,1,"S")))
 ;
 S MAS(80)=$G(M(6,0,1,"Q"))
 S MAS(81)=$$JS($G(M(6,0,1,"S")))
 S MAS(82)=$G(M(6,1,1,"Q"))
 S MAS(83)=$$JS($G(M(6,1,1,"S")))
 ;
 S LAB="DUMP"
 S MAS("EHAD")=1
 D ^W4CB
 Q
 ;
JS(SUM) ;
 Q $J(SUM*.01,2,2)
GL ;
 S GL=$$^W4MAIN("TMPDMP")
 Q
GL1 ;
 S GL1=$$^W4MAIN("TMPDMP1")
 Q
GETDUMP(DAT,ASM) ;
 D ^W4SHVDMP(DAT,ASM) I ER Q
 D GL,GL1
 S TOTTRANS="TotalTransDeals"
 ;
 N I,J,A S I=0,A=""
GETDUMPC ;
 S I=I+1 Q:'$D(@GL@(I))
 S A=A_$G(^(I))
 I $E(A,$L(A)-2,$L(A))=">>>" D  G GETDUMPC
 .S A=$E(A,1,$L(A)-3)
 ;
 I A[TOTTRANS D FRM(A)
 S A="" G GETDUMPC
 Q
 ;
FRM(A) ;
 K @GL1
 N J,SH S SH=0
 S J=$F(A,TOTTRANS)
 ;
 K ETAG
FRMC I J>$L(A) G FRMEND
 I $$LTE(A,J) D SETETAG S ETAG="",J=J+4 G FRMC
 ;
 I '$$LTB(A,J) S J=J+1 S:$D(ETAG) ETAG=ETAG_$E(A,J) G FRMC
 ;
 I $L($G(ETAG)) D SETETAG
 ;
 S J=J+4
 S TAG=""
 ;
FRMT I J>$L(A) G FRMEND
 I $$GT(A,J) S J=J+3 G FRMD
 S TAG=TAG_$E(A,J)
 S J=J+1
 G FRMT
 ;
FRMD ;
 S SH=SH+1
 S @GL1@(SH)="<"_TAG_">"
 S DATA=""
FRMDJ S J=J+1 I J>$L(A) G FRMEND
 I '$$LT(A,J) S DATA=DATA_$E(A,J) G FRMDJ
 ;
 S ETAG="&lt;/"_TAG
 ;
 I $E(A,J,J+$L(ETAG)-1)=ETAG D
 .S SH=SH+1
 .S @GL1@(SH)=DATA
 .S SH=SH+1
 .S @GL1@(SH)="</"_TAG_">"
 .S TAG=""
 .S J=$F(A,ETAG,J)+4
 K ETAG
 G FRMC
FRMEND Q
 ;
 ;
LT(A,J)
 I $E(A,J)="&",$E(A,J+1)="l",$E(A,J+2)="t",$E(A,J+3)=";" Q 1
 Q 0
 ;
LTB(A,J)
 I $E(A,J)="&",$E(A,J+1)="l",$E(A,J+2)="t",$E(A,J+3)=";",$E(A,J+4)'="/" Q 1
 Q 0
 ;
LTE(A,J)
 I $E(A,J)="&",$E(A,J+1)="l",$E(A,J+2)="t",$E(A,J+3)=";",$E(A,J+4)="/" Q 1
 Q 0
 ;
GT(A,J)
 I $E(A,J)="&",$E(A,J+1)="g",$E(A,J+2)="t",$E(A,J+3)=";" Q 1
 Q 0
 ;
TR2(A) ;
 Q $TR($J(A,2)," ",0)
 ;
SETETAG ;
 I '$L($G(ETAG)) Q
 S ETAG=$P(ETAG,"&")
 S SH=SH+1
 S @GL1@(SH)="</"_ETAG_">"
 K ETAG
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DVTBFX
W4DVTBFX(HG) ; [ 14.08.25 14:20 ] [ 12.02.25 13:20 ] [ 02.08.23 15:28 ] 
 N DIR S DIR=$S($$^%W1DIR="RTL":"LTR",1:"RTL")
 Q "<div id=""divtbfx"" dir="""_DIR_""" style=""height:"_HG_";"_$S($$1024^W4WDSCR:"overflow:auto",1:"overflow-y:auto")_""">"
 
 
 
 
 
 

W4DZ
W4DZ(STAM) ; [ 10.09.08 16:13 ] [ 20.02.05 12:49 ] [
 N P1DZ
 S P1DZ=$G(@$$^W4GL("P1DZ"),+$H)
 Q P1DZ

W4DZC4WB
W4DZC4WB ; -- DOH ZICUIM RESHTI MI ATAR LE KUPA  [ 22.09.26 12:53 ] [ 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K %L1PC
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=$G(%ARG("MSDR"))
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%ARG("REPN")
 M @$$^%W1GLPRM@("VAL","MSDR")=%ARG("MSDR")
 ;
 Q
 ;
 ;
TRH ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
 ;
NOM ;
 I MEMSD,MSD<MEMSD S OK=0 Q
 I ADMSD,MSD>ADMSD S OK=0 Q
 I SUGT'="",MESUGT?1U.U,ADSUGT?1U.U,SUGT'=MESUGT,SUGT'=ADSUGT S OK=0 Q
 I MEHZM,HZM<MEHZM S OK=0 Q
 I ADHZM,HZM>ADHZM S OK=0 Q
 N A S A=$G(@GLOB)
 S OKZIC=$P(A,"\")
 I MEOKZIC,OKZIC<MEOKZIC S OK=0 Q
 I ADOKZIC,OKZIC>ADOKZIC S OK=0 Q
 ;;S NAME=$P(A,"\",9)
 S x1=$P(A,"\",6) ; -- HZMBIT
 S x2=$P(A,"\",3) ; -- TRID
 S x3=$P(A,"\",2) ; -- SUM
 S x4=$P(A,"\",5) ; -- ER1
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DZIC
W4DZIC ; -- DOH LEFI SUGEY TASHLUM ; [ 16.09.26 12:16 ] [ 28.05.26 12:43 ] [ 27.05.26 17:29 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%ARG("REPN")
 Q
 ;
 ;
TRH I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
 ;
NOM ;
 I SUGT'="",MESUGT?1U.U,ADSUGT?1U.U,SUGT'=MESUGT,SUGT'=ADSUGT S OK=0 Q
 I MEHZM,HZM<MEHZM S OK=0 Q
 I ADHZM,HZM>ADHZM S OK=0 Q
 N A S A=$G(@GLOB)
 S OKZIC=$P(A,"\")
 I MEOKZIC,OKZIC<MEOKZIC S OK=0 Q
 I ADOKZIC,OKZIC>ADOKZIC S OK=0 Q
 S MNL=$P(A,"\",8)
 I MEMNL,MNL<MEMNL S OK=0 Q
 I ADMNL,MNL>ADMNL S OK=0 Q
 ;;S NAME=$P(A,"\",9)
 S x1=$P(A,"\",3) ; -- NCA
 S x2=$P(A,"\",4) ; -- TRID
 S x3=$P(A,"\",7) ; -- TREFID
 S x4=$ZD($P(A,"\",11),"DD.MM.YY 24:60") ; -- ZMAN ZICUY
 S x5=$P(A,"\",2) ; -- SUM
 S x6=$P(A,"\",10) ; -- SIBA
 ;;S x7=$P(A,"\",5) ; -- ER
 S x7=$P(A,"\",6) ; -- ER1
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4DZICS
W4DZICS ; -- DOH ZICUIM MI ATAR LE KUPA [ 17.09.26 12:29 ] [ 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K %L1PC
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLREP@("MIUN","PROG")="PREP^W4DZICS"
 M @$$^%W1GLPRM@("REPN")=%ARG("REPN")
 Q
 ;
 ;
PREP ;
 N (JB,%ARG,%REM,METRH,ADTRH,%L1PC,%REPN,PRTN)
 D VRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 S GL=$$^W4GL("W4ZICD")
 ;
 F DT=MEDATH:1:ADDATH D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .S HZM="" F  S HZM=$O(@GL@(DT,HZM)) Q:HZM=""  I $D(@$$^W4ORD@(HZM)) D
 ..D SETVRM(DT,HZM)
 ;
 Q
 ;
 ;
SETVRM(DT,N) ;
 I $$HZM^W4MSD(N) Q
 I $$^W4HZMH(N) Q
 I $$I^W4PIZUL(N) Q
 ;
 N A,B,ER,ER1,OK,SUM,REFID,HZMBIT
 D VRM
 ;
 N GLC S GLC=$$^W4ORD_"("_N_",""CB"")"
 ;
 I $D(@$$^W4GL("W4ZICER")@(N)) D  Q
 .N B,HZMBIT,SUM
 .S B=$G(^(N))
 .S OK=0,ER=$P(B,"\")
 .S HZMBIT=$P(B,"\",2)
 .S SUM=$P(B,"\",3)
 .I ER'="" S ER1=$$TV^%W1DICT($$^%W1LNG,ER) 
 .S REFID=$G(@$$^W4ORD@(N,"TRIDMZ"))_";"_$G(@$$^W4ORD@(N,"TRIDCA"))
 .I $E(REFID)=";" S REFID=$E(REFID,2,255)
 .I $E(REFID,$L(REFID))=";" S REFID=$E(REFID,1,$L(REFID)-1)
 .S B="0\["_SUM_"]\"_REFID_"\"_ER_"\"_ER1_"\"_HZMBIT
 .S VT="-",NOM=1
 .S @VRM@(DT,N,VT,NOM)=B
 ;
 N VT S VT="" F  S VT=$O(@GLC@(VT)) Q:VT=""  D
 .S NOM="" F  S NOM=$O(@GLC@(VT,NOM)) Q:NOM=""  I NOM D
 ..N A S A=$G(^(NOM))
 ..S (ER,ER1)=""
 ..N OK S OK=1
 ..
 ..S (REFID,HZMBIT)=""
 ..S HZMBIT=$G(@$$^W4GL("W4ZICI")@(N))
 ..I HZMBIT S REFID=$$GET^W4GTVCH(HZMBIT,NOM,VT,"TRID")
 ..S SUM=$P(A,"*",$S(VT="V":7,VT="ASR":4,1:1))
 ..S SUM=$J(SUM,2,2)
 ..S B=OK_"\"_SUM_"\"_REFID_"\"_ER_"\"_ER1_"\"_HZMBIT
 ..S @VRM@(DT,N,VT,NOM)=B
 Q
 ;
 ;
TRH I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
 ;
NOM ;
 I SUGT'="",MESUGT?1U.U,ADSUGT?1U.U,SUGT'=MESUGT,SUGT'=ADSUGT S OK=0 Q
 I MEHZM,HZM<MEHZM S OK=0 Q
 I ADHZM,HZM>ADHZM S OK=0 Q
 N A S A=$G(@GLOB)
 S OKZIC=$P(A,"\")
 I MEOKZIC,OKZIC<MEOKZIC S OK=0 Q
 I ADOKZIC,OKZIC>ADOKZIC S OK=0 Q
 ;;S NAME=$P(A,"\",9)
 S x1=$P(A,"\",6) ; -- HZMBIT
 S x2=$P(A,"\",3) ; -- TRID
 S x3=$P(A,"\",2) ; -- SUM
 S x4=$P(A,"\",5) ; -- ER1
 Q
 ;
VRM ; 
 S VRM=$$^W4MAIN("VRM") 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EDTIME
W4EDTIME ; [ 18.06.25 14:36 ] [ 14.03.24 11:15 ] [ 28.11.21 15:17 ] 
 N (JB,%ARG)
 S HZM=$$GETP^%W1PRM("HZM")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br><br><br>",!
 W "<table style=""font-size:"_$$^W3FSZ(14)_""" border=""0"" align=""center"" cellpadding=""10"">",!
  W "<tr>"
    D DATE
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
     W $$^%W1DICT("TYPEDLVTIME")
   W "</td>",!
   W "<td>"
    D SHAA
   W "</td>"
   W "<td>"
    D ADSHAA
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"
     W $$^%W1DICT("COMMENT")
   W "</td>",!
   W "<td colspan=""2"" >"
    D COMMENT
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br><br><br>",!
 D ^W4BTN("SUBMIT","Submit()","green")
 W $$NBSP^%L1FRM(10) 
 D ^W4BTN("BACK","Back()","red")
 W "<br><br>",!
 W "</div>",!
 Q
 ;
DATE ; 
 S %W1DAT("CLND")="2;270"
 S TODAT=$$TRH^W4HZMST(HZM)
 D ^%W1DAT("TODATE",TODAT,$$^%W1DICT("TYPEDLVDATE"))
 Q
 ;
SHAA
 S TOSHAAHZ=$$SHAA^W4HZMST(HZM)
 W "<select style=""background-color:yellow"" "
 W " id=""TOSHAAmnid"" "
 W " >"
 ;
 F I=0:5:55 D
 .W "<option value="""_I_""""
 .I +I=+$P(TOSHAAHZ,":",2) W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 ;
 W "<select style=""background-color:yellow"" "
 W " id=""TOSHAAhrid"" "
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 .I +I=+TOSHAAHZ W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 Q
 ;
 ;
ADSHAA ;
 S ADSHAAHZ=$$ADSHAA^W4HZMST(HZM)
 W $$^%W1DICT("ADSHAA") W $$NBSP^%L1FRM(3)
 W "<select style=""background-color:yellow"" "
 W " id=""ADSHAAmnid"" "
 W " >"
 ;
 F I=0:5:55 D
 .W "<option value="""_I_""""
 .I +I=+$P(ADSHAAHZ,":",2) W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 ;
 W "<select style=""background-color:yellow"" "
 W " id=""ADSHAAhrid"" "
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 .I +I=+ADSHAAHZ W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 Q
 ;
 ;
SET(PRM) ;
 N (JB,%ARG,PRM)
 S HZM=$$GETP^%W1PRM("HZM")
 I HZM<1 Q "NOMORDERWRONG"
 I '$$HZM^W4MSL(HZM) Q "NODLVORD"
 S OLDDAT=$$TRH^W4HZMST(HZM)
 S OLDSHAA=$$SHAA^W4HZMST(HZM)
 S DAT=$P(PRM,";")
 S TM=$P(PRM,";",2)
 I TM'[":" Q "TIMEWRONG"
 S TMAD=$P(PRM,";",3)
 S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J($P(TM,":",2),2)," ",0)
 S TMAD=$TR($J($P(TMAD,":"),2)," ",0)_":"_$TR($J($P(TMAD,":",2),2)," ",0)
 S CMNT=$$CNWEB^%L1FRM($P(PRM,";",4))
 S CMNT=$$INVH^%L1FRM(CMNT)
 D PUT^W4HZMST(HZM,"TRH",DAT)
 D PUT^W4HZMST(HZM,"SHAA",TM)
 ;
 I $G(WHO)="" S WHO=$$MKBL^W4HZMST(HZM)
 ;
 I $$ADSHAA^W4PRM D
 .D PUT^W4HZMST(HZM,"ADSHAA",TMAD)
 .S @$$^W4ORD@(HZM,"ADSHAA")=TMAD
 ;
 D PUT^W4HZMST(HZM,"HRAED",CMNT)
 S MSD=$$GETP^%W1PRM("MSD")
 D ^W4LINK(HZM,MSD,$$NMB^W4HZMST(HZM))
 D ^W4CHNTIM(HZM,OLDDAT,DAT,OLDSHAA,TM,WHO)
 Q 1
 ;
COMMENT ; 
 N PRM S PRM="IN"
 W "<input id=""COMMENT"" type=""text"" size=""80"" "
 W " value="""_$$H2U^%L1FRM($$HRAED^W4HZMST(HZM))_""" />"
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ELPOS
W4ELPOS(STAM) ; [ 11.10.18 12:02 ] [ 14.09.17 11:18 ] [ 03.02.17 05:35 ] 
 I $$^W4LKH Q 0
 I $$GETP^%W1PRM("DLVCSR")="WEB" Q 0
 I $$DLVWEB^W4DLVCSR!$$ONLINE^W4DLVCSR Q 0
 I $$CALLCENTER^W4PRM Q 0
 Q (+$$GETP^%W1PRM("ELPOS")=1)
 
 
 
 
 

W4EMAIL
W4EMAIL(LKHN,NUMBER,VD,WD) ; [ 21.05.26 19:21 ] [ 25.02.26 20:21 ] [ 19.02.26 14:48 ] 
 N (JB,%ARG,LKHN,NUMBER,VD,WD,HZM)
 W "<div id=""divmail"" dir="""_$$^%W1DIR_""">",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"" "
  I $G(WD) W " width="""_WD_"%"" "
 W ">",!
  W "<tr>"
  ; 
   D HOWSEND
  ;
  I $$^W4TABLET=2 D
   .W "</tr>",!,"<tr>"
 
   W " <td id=""selmail"" align=""center"">"
     W $$SELMAIL($G(LKHN))
    W "</td>"
    ;
    W "<td>"
     D ADDMAILBUT(LKHN)
    W "</td>"
    ;
    W "<td>"
     D DELMAILBUT(LKHN)
    W "</td>"
    ;
    W "<td>&nbsp;</td>"
    W "<td>"
     D OPENMAIL
    W "</td>"
    ;
    W "<td width=""5%"">&nbsp;</td>"
    ;
    W "<td width=""10%"" id=""mail"" >"
     S HDMAIL=$$HDMAIL($G(VD),NUMBER)
     D ^W4BUTTON("sendmail",$$^%W1DICT("SEND2MAIL"),"SendMail('"_HDMAIL_"','"_NUMBER_"','"_$G(VD)_"')","color:blue")
    W "</td>"
    ;
    I $$MYMAIL^W4PRM'="",$$MYMAIL^W4PRM["@",$$MYMAIL^W4PRM["." D SEND2SELF
    ;
   W "</tr>",!
   ;
   D COMMENT2MAIL
   ; 
   D CRNEWMAIL(LKHN,5)
   ; 
  W "</table>",!
  W "<br><br>",!
 W "</div>",! 
 Q
 ;
 ;
ADDMAILBUT(LKHN) ;
   D ^W4BUTTON("addmail",$$^%W1DICT("ADDMAIL"),"AddMail()","color:green")
 Q
 ;
DELMAILBUT(LKHN,SELMAILID) ;
  I $G(SELMAILID)="" S SELMAILID="Email"
  D ^W4BUTTON("delmail",$$^%W1DICT("DELMAIL"),"DelMail('"_LKHN_"','"_SELMAILID_"')","color:red")
 Q
 ;
OPENMAIL ;
  ;;D ^W4BUTTON("openmail",$$^%W1DICT("OPENMAIL"),"OpenMail()","color:blue")
  W "<div id=""divopenmail"">",!
   W "<a href=""mailto:"_$G(SELEMAIL)_""">"_$$^%W1DICT("OPENMAIL")_"</a>"
  W "</div>",!
 Q
 ;
HDMAIL(VD,NUMBER) ;
 N DOP S DOP=""
 I $$SF^W4PRM S DOP="SFactory "
 N HDMAIL S HDMAIL=DOP_"Invoice "_NUMBER
 I $G(VD)="HZMH" S HDMAIL=DOP_$S($$SF^W4PRM:"Order ",1:"Bid ")_NUMBER
 I $G(VD)="HZ" S HDMAIL=DOP_"Order "_NUMBER
 I $G(VD)="HMK",$$^W4ELPOS S HDMAIL=DOP_"Invoice for order "_NUMBER
 I $G(VD)="CB" S HDMAIL=DOP_"Receipt "_DOP_NUMBER
 Q HDMAIL
 ;
HOWSEND ;
 W "<td>" 
   W $$^%W1DICT("HOWSENDDOC")_"&nbsp;"
   W "<select id=""howsend"" onChange=""Comment2Mail()"">",!
    W "<option value=""1"" "_$$SELECTED(1)_" >"_$$^%W1DICT("INBODYMAIL")_"</option>",!
    W "<option value=""2"" "_$$SELECTED(2)_" >"_$$^%W1DICT("ATTACHEDFILE")_"</option>",!
    W "<option value=""3"" "_$$SELECTED(3)_" >"_$$^%W1DICT("PDFFILE")_"</option>",!
   W "</select>",!
 W "</td>"
 Q
 ;
CRNEWMAIL(LKHN,COLS,COLSP)
 N SELMAILID S SELMAILID="Email"
 I LKHN[";" S SELMAILID=$P(LKHN,";",2),LKHN=$P(LKHN,";")
 I '$G(COLS) S COLS=1
 ;;W "<table>",!
 W "<tr>"
  I $G(COLSP) W "<td colspan="""_COLSP_""">&nbsp;</td>"
  ;
  W "<td colspan="""_COLS_""">"
   W "<table id=""tblnewmail"" value="""" dir="""_$$^%W1DIR_""" style=""visibility:hidden;border:1px solid grey"" >",! 
    W "<tr>"
     W "<td align=""center"">"
      S SZ=50 I $$^W4TABLET=2 S SZ=42 
      W "<input dir=""LTR"" id=""newmail"" type=""text"" size="""_SZ_""" maxlength=""60"" "
        W " onKeyUp=""EnglishOnly(event,'newmail')"""   
      W " />"
     W "</td>",!
     W "<td>"
       D ^W4BUTTON("sbmnewmail",$$^%W1DICT("SUBMIT"),"SubmitNewMail('"_LKHN_"','"_SELMAILID_"')","color:green")
     W "</td>",!
     W "<td>" 
       D ^W4BUTTON("cncnewmail",$$^%W1DICT("CANCEL"),"CancelNewMail()","color:red")
     W "</td>",!
    W "</tr>",!
   W "</table>",!
  W "</td>"
  
  W "<td>&nbsp;</td>" 
  
 W "</tr>",!
 ;;W "</table>",!
 Q
 ;
 ;
SELMAIL(LKHN,SELMAILID) ;
 S LKHN=$G(LKHN)
 I $G(SELMAILID)="" S SELMAILID="Email"
 N SEL
 S SELEMAIL=""
 S SEL="<select dir=""LTR"" id="""_SELMAILID_""" onChange=""ChangeMail('"_SELMAILID_"')"">"
  N N,EMAIL S EMAIL=$$SPA^%L1FRM($$EMAIL^W4L(LKHN))
  I EMAIL["@" S SEL=SEL_"<option value='"_EMAIL_"'>"_EMAIL_"</option>",SELEMAIL=EMAIL
  N EMAIL1 S EMAIL1=$$SPA^%L1FRM($$EMAIL1^W4L(LKHN))
  I EMAIL1["@" S SEL=SEL_"<option value='"_EMAIL1_"'>"_EMAIL1_"[*****]</option>"
  ;
  I $G(LKHN)'="" S N="" F  S N=$O(@$$^W4GL("LKH")@(LKHN,"E",N)) Q:N=""  D
  . N N1 S N1=$$SPA^%L1FRM(N) Q:N1=""  Q:N1'["@"
  . I N1=EMAIL!(N1=EMAIL1) Q
  . S SEL=SEL_"<option "
  . I $$SELECTEDMAIL(N1) S SEL=SEL_" selected=""selected"" ",SELEMAIL=N1
  . S SEL=SEL_" value='"_N1_"'>"_N1_"</option>"
 S SEL=SEL_"</select>"
 Q SEL
 ;
EMST(EMAIL) ;
 Q $$FUNC^%UCASE($$SPA^%L1FRM(EMAIL))
 ;
SELECTEDMAIL(N1) ;
 S N1=$$EMST(N1)
 N OK S OK=0
 I $G(%ARG("NEWMAIL"))'="" Q (N1=$$EMST(%ARG("NEWMAIL")))
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;
 I $G(HZM)<1 D  Q OK
 .N EM S EM=$$EMST($$EMAIL^W3HZMST(JB))
 .I $L(EM),EM=N1 S OK=1
 ;
 N EM S EM=$O(@$$^W4ORD@(HZM,"SENT2MAIL",""))
 S EM=$$EMST(EM)
 I $L(EM),$O(@$$^W4ORD@(HZM,"SENT2MAIL",EM))="" Q (EM=N1)
 ;
 S EM=$$EMST($$EMAIL^W3HZMST(JB))
 I $L(EM) Q (EM=N1)
 ;
 S EM=$$EMAIL^W4HZMST(HZM)
 I $L(EM) Q (EM=N1)
 ;
 Q 0
 ;
 ;
NEWMAIL(PRM) ;
 N MAIL,LKH
 S MAIL=$P(PRM,";",1,1)
 I MAIL'["@"!(MAIL'[".") Q "EMAILADDRISWRONG"
 S MAIL=$$SPA^%L1FRM(MAIL)
 S MAIL=$$FUNC^%UCASE(MAIL)
 S LKH=$P(PRM,";",2,2)
 I LKH'="" D  ; ,$D(@$$^W4GL("LKH")@(LKH)) D
 .I $$EMAIL^W4L(LKH)'["@" D PUT^W4L(LKH,MAIL,"EMAIL")
 .I MAIL'=$$EMAIL^W4L(LKH) D
 ..S @$$^W4GL("LKH")@(LKH,"E",MAIL)=$H
 Q 1
 ;
DELMAIL(PRM) ;
 N MAIL,LKH
 S MAIL=$P(PRM,";",1,1) I MAIL="" Q "NOTMAIL"
 S LKH=$P(PRM,";",2,2)
 I LKH="" Q "CUSTOMERNOTEXIST"
 I MAIL=$$EMAIL^W4L(LKH),$D(@$$^W4GL("LKH")@(LKH))=11 D PUT^W4L(LKH,"","EMAIL")
 I MAIL=$$EMAIL1^W4L(LKH),$D(@$$^W4GL("LKH")@(LKH))=11 D PUT^W4L(LKH,"","EMAIL1")
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0 D
 .N EMAIL S EMAIL=$$EMAIL^W4HZMST(HZM)
 .I $$SPA^%L1FRM(EMAIL)'=$$SPA^%L1FRM(MAIL) Q
 .K @$$^W4ORD@(HZM,"EMAIL")
 K @$$^W4GL("LKH")@(LKH,"E",MAIL)
 Q 1
 ;
 ;
COMMENT2MAIL ;
  N VSB S VSB="visible"
  I $$SEL(1) S VSB="collapse"
  ;
  W "<tr id=""trcmnt2mail"" style=""visibility:"_VSB_""" >"
   W "<td colspan=""2"">",!
    W "<span style=""color:grey"">"_$$^%W1DICT("COMMENT2MAIL")_" : <BR>"
    W "</span>",!
    W "<textarea id=""cmnt2mail"" cols=""60"" rows=""2"" " 
     I $$1024^W4WDSCR W "style=""font-size:"_$$^W3FSZ(9)_""" "
    W " >"
     I $$PCHBP,$G(HZM) D
     .W $$H2U^%L1FRM($G(@$$^W4ORD@(HZM,"COMMENT2MAIL")))
    W "</textarea>",! 
   W "</td>",! 
   ;
   D WHENCOMM
   ;
   N PELE 
   S PELE=$$PELE(LKHN)
   K %ARG("WHATSAPP") ; -- 01.02.26
   ;
   I $$IFWHATSAPP D  D WHATSAPP($G(VD),NUMBER,PELE)
   .I '$G(HZM) W "<td>&nbsp;</td>"
  W "</tr>",!
 Q
 ;
 ;
PELE(LKHN) ;
 S PELE=""
 I $G(HZM)="" S HZM=$$GETP^%W1PRM("HZM")
 ;
 I $G(HZM) D
 .S PELE=$$PELE^W4HZMST(HZM)
 .I PELE="",$E($$TELB^W4HZMST(HZM),1,2)="05"!($E($$TELB^W4HZMST(HZM))=5) S PELE=$$TELB^W4HZMST(HZM)
 ;
 I PELE=""!($G(VD)="H"!($G(VD)="HB")),$G(LKHN) S PELE=$$PELE^W4L(LKHN)
 I 'PELE,$G(LKHN),$E($$TELB^W4L(LKHN),1,2)="05"!($E($$TELB^W4L(LKHN))=5) S PELE=$$TELB^W4L(LKHN)
 ; 
 I $E(PELE)=5 S PELE="0"_PELE
 S PELE=$TR(PELE,"-","")
 Q PELE
 ;
 ;
SEND2SELF ; 
 W "<td id=""tdsend2self"" colspan=""2"" >"
  N HDMAIL1 S HDMAIL1=HDMAIL 
  I $$DELIS^W4PRM S HDMAIL1="Send2Self "_HDMAIL
  D ^W4BUTTON("send2self","SEND2SELF","SendMail('"_HDMAIL1_"','"_NUMBER_"','"_$G(VD)_"','1')","green")
 W "</td>"
 Q
 ;
 ;
WHENCOMM ;
 I '$G(HZM) W "<td colspan=""3"">&nbsp;</td>" Q
 I $G(HZM),$$HZM^W4MSD(HZM) W "<td colspan=""3"">&nbsp;</td>" Q
 ;
 N ZMANCOM S ZMANCOM=$G(@$$^W4ORD@(HZM,"WHENCOMM"))
 N DATCOM,TIMECOM,SHAACOM,MINCOM S DATCOM=$P(ZMANCOM," ")
 S TIMECOM=$P(ZMANCOM," ",2)
 S SHAACOM=+TIMECOM
 S MINCOM=+$P(TIMECOM,":",2)
 ;
 I 'DATCOM S DATCOM="00.00.00"
 I TIMECOM="" S TIME="00:00"
 ;
 I '$G(HZM) W "<td colspan=""3"">&nbsp;</td>" Q
 I '$$^W4HZMH(HZM) W "<td colspan=""3"">&nbsp;</td>" Q
 ;
 W "<td colspan=""5"">"
  W $$^%W1DICT("WHENCOMMUNICATE"),"&nbsp;&nbsp;"
  W "<select id=""datcomm"" onChange=""SaveCommDat()"" >",!
  N I F I=0,+$H:1:$H+180 D
  .W "<option "
  .D
  ..I I=0,'DATCOM W "selected=""selected"" " Q 
  ..I I=$$^%L1DC(DATCOM,3) W "selected=""selected"" " 
  .N BHAR S BHAR=$$^%W1DICT("CHOICEDAT")
  .W "value="""_I_""" >"_$S('I:BHAR,1:$ZD(I,"DD.MM.YY"))_" "_$S(I:$$H2U^%L1FRM($$^%L1DC(I,9)),1:"")_"</option>"
  W "</select>",!
  W "</td>"
  ;
  W "<td>"
   W "<select id=""timecomm"" onChange=""SaveCommDat()"" >",!
   F I=0,7:1:22 D
   .F J=0,30 D
   .. W "<option "
   .. I I=SHAACOM,J=MINCOM W " selected=""selected"" "
   .. W ">"_$TR($J(I,2)," ",0)_":"_$TR($J(J,2)," ",0)_"</option>"
   W "</select>"
  W "</td>"
 Q
 ;
 ;
EMAILCONT(PRM) ;
 N VD S VD=$P($P(PRM,";",4),"^")
 I $$PCHBP Q $$EMAILCONT^W4PCHBP(PRM)
 I VD="HB"!(VD="HY")!(VD="HBZ")!(VD="CB") Q $$EMAILHB(PRM)
 Q "NOTVD"
 ;
 ;
EMAILHB(PRM)
 N (JB,%ARG,PRM) D ^%L1TS
 ;
 D PARSEPRM(PRM) ; --> NOM,HDMAIL,EMAIL,VD
 ;
 S EMAIL=$$CLA^%L1FRM(EMAIL)
 I EMAIL'["@",$G(%ARG("WHATSAPP"))="" Q "EMAILWRONG"
 ;
 D PRM^W4MAIL ; --> FROM,SMRP,USER,PSW
 ;
 N WEB S WEB=$$WEB^W3MAIN
 I WEB["//" S WEB=$P(WEB,"//",2,20)
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 ;
 S FILE="/tmp/sndmail"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  W "<html>",!
  D ECONT(VD,NOM)
  W "</html>",!
 C FILE
 ;
 D PROCFILE(FILE,COMMENT,HOWSEND) ;; --> FILE1,FILEC
 ;
 I $G(%ARG("WHATSAPP"))'="" D  Q $ZSY
 .N PELE S PELE=$G(%ARG("WHATSAPP"))
 .D SNDWHATSAPP^W4PCHBP($G(HDMAIL),FILE1,PELE)
 ;
 N WHATSAPP S WHATSAPP=0
 I $$DELIS^W4PRM,$$GETP^%W1PRM("MKRYD") S WHATSAPP=1
 ;
 D SEND(JB,PRM,SMTP,USER,PSW,FROM,FILE1,FILEC,WHATSAPP)
 ;
 Q $ZSY
 ;
 ;
SEND(JB,PRM,SMTP,USER,PSW,FROM,FILE1,FILEC,WHATSAPP) ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N NOM,HDMAIL,EMAIL,HOWSEND,PSEUDO
 S NOM=$P(PRM,";",1)
 S HDMAIL=$P(PRM,";",2)
 S EMAIL=$P(PRM,";",3)
 I EMAIL["[" S EMAIL=$P(EMAIL,"[")
 N VD S VD=$P(PRM,";",4)
 S HOWSEND=$P(PRM,";",7)
 I 'HOWSEND S HOWSEND=3
 S PSEUDO=FROM
 I $$SF^W4PRM S PSEUDO="SFactory@5666666.co.il"
 ;
 L +^AL:10
 ;
 S MSG="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S MSG=MSG_" -j """_HDMAIL_"""  -s """_FROM_""" -y """_PSEUDO_""" "
 S MSG=MSG_" -r """_EMAIL_""" "
 I HOWSEND=1,$G(FILE1)'="" S MSG=MSG_" -b """_FILE1_""" "
 ;
 I HOWSEND=2!(HOWSEND=3) D
 .I $G(FILE1)'="" S MSG=MSG_" -a """_FILE1_""" "
 .I $G(FILEC)'="" S MSG=MSG_" -b """_FILEC_""" "
 ;
 S ^AL(JB,"MSG")=$E(MSG,1,800)
 zsy MSG H 3 ; -- H 3 -- 21/05/26
 ; 
 S ^AL(JB,"ZSY")=$ZSY
 N MKRMAIL S MKRMAIL=$$GETP^%W1PRM("MKRMAIL")
 ;
 I MKRMAIL["W4FAXHTM" D
 .N HZ S HZ=$P(MKRMAIL,";",2) Q:'HZ
 .D MAILRES(HZ,EMAIL)
 ;
 D KILL^%W1PRM("MKRMAIL")
 ;
 L -^AL
 ;
 ;;S ^AA("W4EMAIL-SEND","VD")=VD
 ;;S ^AA("WHATSAPP-END","WHATSAPP")=$G(WHATSAPP)
 ;
 I $E($G(WHATSAPP),1,2)="05" D  G CF
 .N PELE S PELE=WHATSAPP
 .D SNDWHATSAPP^W4PCHBP($G(HDMAIL),FILE1,PELE)
 ;
 I $G(WHATSAPP),VD="H"!(VD="HB")!(VD="HBZ")!(VD="HY"),NOM D
 .N PRTZ S PRTZ=0
 .N LK I VD="H"!(VD="HB")!(VD="HY") S LK=$G(@$$^W4GL("KLIN")@("H",NOM))
 .I VD="HBZ"!(VD="TZ") S LK=$G(@$$^W4GL("KLIN")@("TZ",NOM)),PRTZ=1
 .I LK["+" S LK=$P(LK,"+")
 .N PELE S PELE=$$PELE(LK)
 .;;S ^AA("W4EMAIL-SEND","LK")=LK
 .;;S ^AA("W4EMAIL-SEND","PELE")=PELE
 .
 .I $L(PELE)>9 D
 ..D SNDWHATSAPP^W4PCHBP($G(HDMAIL),FILE1,PELE)
 ;
CF C FILE1:(DELETE)
 C FILEC:(DELETE)
 ;
 D PROT(PRM,FILE1)
 Q
 ;
 ;
ECONT(VD,NOM) ;
 S %ARG("NOM")=NOM
 S %ARG("MAIL")=1
 S %ARG("VD")=VD
 ;
 W "<div align=""center"" style="""_$$FONTFM^W3CSS_""">",!
 I '$$LOGO^W4KOTHSB D ^W4MSDNAM
 ;
 I VD="HB" D ^W4LHBVW
 ;
 I VD="HY"!(VD="HBZ") D ^W4HSBYVW
 ;
 I VD="CB" D
 .S %ARG("NOBACK")=1
 .S %ARG("MAIL")=1
 .D ^W4LCBCR
 W "</div>",!
 ;
 K %ARG("NOM")
 K %ARG("MAIL")
 K %ARG("VD")
 Q
 ;
 ;
PARSEPRM(PRM) ;
 S NOM=$P(PRM,";")
 S HDMAIL=$P(PRM,";",2)
 S EMAIL=$P(PRM,";",3)
 S VD=$P(PRM,";",4)
 S HOWSEND=$P(PRM,";",7)
 S %ARG("ORDCONT")=$P(PRM,";",8)
 S %ARG("WHATSAPP")=$P(PRM,";",14)
 S COMMENT=$P(PRM,";",15,1000)
 Q
 ;
PCHBP(STAM) ; 
 I $$^W4ELPOS,VD="HZMH"!(VD="HZ")!(VD="HMK")!(VD="TM") Q 1
 Q 0 
 ;
PROT(PRM,FILE) ; 
 D PARSEPRM(PRM)
 I $G(EMAIL)="" Q
 N FILEA S FILEA=$$FILEA(JB,VD,NOM)
 ZSY "cp "_FILE_" "_$$WEBL^W3MAIN_$$GETP^%W1PRM("MSD")_"/"_FILEA
 S @$$^W4GL("W4EMPROT")@($$^W4DZ,NOM_"VD"_VD,EMAIL)=$H_";"_$ZSY_";"_PRM_"<>"_FILEA
 I $E(VD,1,2)="HZ" D
 .S @$$^W4ORD@(+NOM,"SENT2MAIL",EMAIL,"FILE")=FILEA
 .S @$$^W4ORD@(+NOM,"SENT2MAIL",EMAIL,"FILE",+$H_$TR($J($P($H,",",2),5)," ",0))=FILEA
 Q
 ;
FILEA(JB,VD,NOM)
 Q "AEM"_$ZD($H,"YYMMDD")_$TR($J($P($H,",",2),5)," ",0)_"JB"_JB_"VD"_VD_"NOM"_NOM
 ;
PROCCOMMENT(COMMENT)
 S COMMENT=$$INVH^%L1FRM(COMMENT)
 S COMMENT=$$CNWEB^%L1FRM(COMMENT)
 ;
 I $$CMNTMAIL^W4PRM,$G(ORD),'$$TAKEAWAY^W4HZMST(ORD) Q $$NEWPROCCOMMENT(COMMENT,ORD)  ; -- ORD FROM W4PCHBP
 ;
 S TX=""
 I $$SF^W4PRM D
 .S TX="<BR> xfeg liina xy`le mipekp dpnfdd ihxty `ceel yi <BR>"
 ;
 I '$$DELIS^W4PRM D
 .S TX="<BR> sxevn uaew geztl `p jnqna ditvl <BR> epil` mzipty dcez"
 ;
 I $G(ORD),$$TAWREADY(ORD),$G(@$$^W4PRM@("SENDREADY")) D
 .S TX=TX_"<BR> </H2> dpken jly dpnfd <H2> <BR>"
 .I $$TAKEAWAY^W4HZMST(ORD) D
 ..S TX=TX_"<BR> </H2> zgwl `eal `p <BR> <H2>"
 ; 
 S COMMENT=$$H2U^%L1FRM(TX)_"<BR>"_$$H2U^%L1FRM(COMMENT)
 G PROCCOMMENT2 ;
PROCCOMMENT1(COMMENT) ; 
PROCCOMMENT2 ;
 S COMMENT=$$RPL^%L1FRM(COMMENT,"_"," <BR> ")
 ;
 S COMMENT="<div "_$$^%W1ALIGN_" dir="""_$$^%W1DIR_""" >"_COMMENT_"</div><BR>"
 ;
 S COMMENT=COMMENT_"<BR><HR><div align=""center"" dir="""_$$^%W1DIR_""">"
 ;
 I $L($G(@$$^W4PRM@("MELEL")))>1 D
 .N MELEL S MELEL=^("MELEL")
 .S COMMENT=COMMENT_"<BR>"
 .N J F J=$L(MELEL,"_"):-1:1 D
 ..N ST,STN S ST=$P(MELEL,"_",J)
 ..S COMMENT=COMMENT_$$H2U^%L1FRM(ST)_"<BR>"
 .S COMMENT=COMMENT_"<HR>"
 ;
 N EMAIL S EMAIL=$G(@$$^W4PL@("ESEK",6))
 S COMMENT=COMMENT_$$H2U^%L1FRM("l`ec")_" : <a href='mailto:"_EMAIL_"'>"_EMAIL_"</a> <BR> "
 ;
 S COMMENT=COMMENT_$$H2U^%L1FRM($G(@$$^W4PL@(2)))_" <BR> "
 S COMMENT=COMMENT_$$H2U^%L1FRM("lh")_" "_$G(@$$^W4PL@("ESEK",3))_" "
 S COMMENT=COMMENT_$$^%W1DICT("FAX")_" "_$G(@$$^W4PL@("ESEK",5))_" <BR> " 
 N SITE S SITE=$G(@$$^W4PL@("ESEK",8))
 ;
 I $L(SITE) D
 .S COMMENT=COMMENT_"<a href='"_SITE_"' style='font-size:"_$$^W3FSZ(14)_"'>"
 . S COMMENT=COMMENT_SITE
 .S COMMENT=COMMENT_"</a>"
 ;
 S COMMENT=COMMENT_"</div>"
 Q COMMENT
 ;
 ;
SELECTED(I) ; 
 I $$SEL(I) Q " selected=""selected"" "
 Q "" 
 ;
SEL(I) ; 
 Q +I=$G(@$$^W4PRM@("HOWSEND"),3)
 ;
 ;
PROCFILE(FILE,COMMENT,HOWSEND) ; --> FILE1,FILEC
 N DV S DV=$$^W4MYDVN
 S FILEC="/tmp/sndmailc"_DV_"_"_$G(JB)_"_"_$P($H,",",2)
 ;
 O FILEC:(NEWVERSION:REWIND:WRITE) U FILEC ; -- COMMENT FILE
  S COMMENT=$$PROCCOMMENT(COMMENT)
  W COMMENT,!
 C FILEC
 ;
 N FILE0 S FILE0="/tmp/sndmail1"_DV_"_"_$G(JB)
 S FILE1=FILE0_".html"
 C FILE1:(DELETE)
 ZSY "rm "_FILE1
 O FILE1:(NEWVERSION:REWIND:WRITE)
 O FILE:(REWIND:READONLY)
 F  U FILE R A Q:$ZEOF  U FILE1 W A
 C FILE:(DELETE) C FILE1
 ;
 I HOWSEND=3 D
 .N FILE2 S FILE2=FILE0_".pdf"
 .ZSY "rm "_FILE2
 .ZSY "/pos/sbin/htmltopdf -q "_FILE1_" "_FILE2
 . 
 .I '$$SGNPDF^W4PRM!($G(HDMAIL)'["Invoice") D
 ..I $ZSY S ^AL(JB,"ZSY")=$ZSY_";"_FILE1_";"_FILE2_";ERRORPDFCNV" Q
 ..S FILE1=FILE2
 .
 .I $$SGNPDF^W4PRM,$G(HDMAIL)["Invoice" D
 ..S VD=$P($G(VD),"^")
 ..;;I '(VD="HB"!(VD="HY")!(VD="HBZ")!(VD="CB")) Q
 ..N FILE3 S FILE3=FILE0_"sgn.pdf"
 ..ZSY "rm "_FILE3
 ..ZSY "/pos/sbin/pdfsign.sh "_FILE2_" "_FILE3
 ..I $ZSY S ^AL(JB,"ZSY")=$ZSY_";"_FILE1_";"_FILE2_";"_FILE3_";ERRORPDFCNV" Q
 ..S FILE1=FILE3
 Q
 ;
 ;
HB(TX) ; 
 Q $$HB^W4SNDINV(TX) 
 ;
NEWPROCCOMMENT(COMMENT,ORD) ;
 N ST S ST="<div dir="""_$$^%W1DIR_""" align=""center"" >"
  S ST=ST_"<BR>"_$$H2U^%L1FRM("sxevn uaew geztl `p jnqna ditvl")
  S ST=ST_"<BR>"_$$H2U^%L1FRM("epil` mzipty dcez")_"<BR><HR>"
  S ST=ST_"<table>"
  S ST=ST_$$ROW("dpnfd 'qn",ORD)
  S ST=ST_$$ROW("'lh",$$TELB^W4HZMST(ORD))
  S ST=ST_$$ROW("ciip 'lh",$$PELE^W4HZMST(ORD))
  I $$SOAD^W4HZMST(ORD)>1 D
  .S ST=ST_$$ROW("micreq 'qn",$$SOAD^W4HZMST(ORD))
  S ST=ST_$$ROW(" : gelynl zaezk",$$KTVM^W4HZMST(ORD))
  S ST=ST_$$ROW("dnew",$$KOMA^W4HZMST(ORD))
  S ST=ST_$$ROW("jix`z",$$TRH^W4HZMST(ORD))
  S ST=ST_$$ROW("dry",$$SHAA^W4HZMST(ORD))
  S ST=ST_$$ROW("melyzl k""dq",$J($$TSHL^W4HZMST(ORD),2,2))
  ; 
  N CODTS,CODTS1 S CODTS=$$CODTS^W4HZMST(ORD),CODTS1=""
  I CODTS S CODTS1=$$^W3SHOWTS(CODTS)
  S ST=ST_$$ROW("melyz zxev",CODTS1)
 S ST=ST_"</table><br>"
 ;
 S ST=ST_$$PROCCOMMENT1($$H2U^%L1FRM(COMMENT))_"</div>"
 Q ST
 ;
 ;
ROW(TX,RKV) ; 
 Q "<tr><td>"_$$H2U^%L1FRM(TX)_"</td><td>"_$$H2U^%L1FRM(RKV)_"</td></tr>"
 ;
TAWREADY(ORD) ; 
 N TAWR S TAWR=$G(@$$^W4ORD@(ORD,"READY"))
 I TAWR="" Q 0 
 N H S H=+$H+$P($H,",",2)
 N HRD S HRD=TAWR+$P(TAWR,",",2)
 I H-HRD<120 Q 1
 I H-HRD<0 D  Q RES
 .I $H-TAWR'=1 S RES=0 Q
 .I $P($H,",",2)+86400-$P(TAWR,",",2)>120 S RES=0
 .S RES=1 
 Q 0 
 ;
 ;
MAILRES(HZ,EMAIL) ;
 S $P(@$$^W4ORD@(HZ,"DBF"),"\",10)=EMAIL_"~"_$ZSY_"~"_$H
 ;
 I '$ZSY D  Q
 .D SETOK^W4FAXHTM(HZ)
 .S @$$^W4ORD@(HZ,"EMAIL")=EMAIL_"~"_$H
 .S @$$^W4ORD@(HZ,"EMAIL",EMAIL)=$H
 ;
 S $P(@$$^W4ORD@(HZ,"DBF"),"\",6)=$ZSY
 Q
 ;
 ;
IFWHATSAPP() ;
 I '$G(@$$^W4PRM@("WHATSAPP")) Q 0
 Q 1  ; *** 21/01/24
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM Q 0
 I '$$^W4HZMH(HZM) Q 0
 Q 1
 ;
WHATSAPP(VD,NUMBER,PELE) ; 
 S HDMAIL=$$HDMAIL($G(VD),NUMBER)
 W "<td id=""tdsend2whatsapp"" "
  W "colspan=""3"" "
 W ">"
  W $$^%W1DICT("WHATSAPPNUMBER")_"&nbsp;" 
  W "<input id=""whatsappnmb"" size=""11"" value="""_PELE_""" "
   W "onClick=""this.select()"" "
  W ">" 
  W $$NBSP^%L1FRM(2)
  D ^W4BUTTON("sendwhatsapp",$$^%W1DICT("SEND"),"SendMail('"_HDMAIL_"','"_NUMBER_"','"_$G(VD)_"','','1')","color:blue")
 W "</td>"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMAIL0
W4EMAIL(LKHN,NUMBER,VD,WD) ; [ 20.08.20 11:42 ] [ 11.08.20 22:14 ] [ 07.08.20 17:16 ] 
 N (JB,%ARG,LKHN,NUMBER,VD,WD,HZM)
 W "<div id=""divmail"" dir="""_$$^%W1DIR_""">",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"" "
  I $G(WD) W " width="""_WD_"%"" "
 W ">",!
  W "<tr>"
  ; 
   D HOWSEND
  ;
   W " <td id=""selmail"" align=""center"">"
     W $$SELMAIL($G(LKHN))
    W "</td>"
    ;
    W "<td>"
     D ADDMAILBUT(LKHN)
    W "</td>"
    ;
    W "<td>"
     D DELMAILBUT(LKHN)
    W "</td>"
    ;
    W "<td>&nbsp;</td>"
    W "<td>"
     D OPENMAIL
    W "</td>"
    ;
    W "<td width=""5%"">&nbsp;</td>"
    ;
    W "<td width=""25%"" id=""mail"" >"
     S HDMAIL=$$HDMAIL($G(VD),NUMBER)
     D ^W4BUTTON("sendmail",$$^%W1DICT("SEND2MAIL"),"SendMail('"_HDMAIL_"','"_NUMBER_"','"_$G(VD)_"')","color:blue")
    W "</td>"
   W "</tr>",!
   ;
   D COMMENT2MAIL
   ; 
   D CRNEWMAIL(LKHN,5)
   ; 
  W "<tr>"
   D WHATSAPP
  W "</tr>",!
  W "</table>",!
  W "<br><br>",!
 W "</div>",! 
 Q
 ;
 ;
ADDMAILBUT(LKHN) ;
   D ^W4BUTTON("addmail",$$^%W1DICT("ADDMAIL"),"AddMail()","color:green")
 Q
 ;
DELMAILBUT(LKHN,SELMAILID) ;
  I $G(SELMAILID)="" S SELMAILID="Email"
  D ^W4BUTTON("delmail",$$^%W1DICT("DELMAIL"),"DelMail('"_LKHN_"','"_SELMAILID_"')","color:red")
 Q
 ;
OPENMAIL ;
  ;;D ^W4BUTTON("openmail",$$^%W1DICT("OPENMAIL"),"OpenMail()","color:blue")
  W "<div id=""divopenmail"">",!
   W "<a href=""mailto:"_$G(SELEMAIL)_""">"_$$^%W1DICT("OPENMAIL")_"</a>"
  W "</div>",!
 Q
 ;
HDMAIL(VD,NUMBER) ;
 N DOP S DOP=""
 I $$SF^W4PRM S DOP="SFactory "
 N HDMAIL S HDMAIL=DOP_"Invoice "_NUMBER D
 I $G(VD)="HZMH" S HDMAIL=DOP_$S($$SF^W4PRM:"Order ",1:"Bid ")_NUMBER D
 I $G(VD)="HZ" S HDMAIL=DOP_"Order "_NUMBER D
 I $G(VD)="HMK",$$^W4ELPOS S HDMAIL=DOP_"Invoice for order "_NUMBER D
 I $G(VD)="CB" S HDMAIL=DOP_"Receipt "_DOP_NUMBER D
 Q HDMAIL
 ;
HOWSEND ;
 W "<td>" 
   W $$^%W1DICT("HOWSENDDOC")_"&nbsp;"
   W "<select id=""howsend"" onChange=""Comment2Mail()"">",!
    W "<option value=""1"" "_$$SELECTED(1)_" >"_$$^%W1DICT("INBODYMAIL")_"</option>",!
    W "<option value=""2"" "_$$SELECTED(2)_" >"_$$^%W1DICT("ATTACHEDFILE")_"</option>",!
    W "<option value=""3"" "_$$SELECTED(3)_" >"_$$^%W1DICT("PDFFILE")_"</option>",!
   W "</select>",!
 W "</td>"
 Q
 ;
CRNEWMAIL(LKHN,COLS,COLSP)
 N SELMAILID S SELMAILID="Email"
 I LKHN[";" S SELMAILID=$P(LKHN,";",2),LKHN=$P(LKHN,";")
 I '$G(COLS) S COLS=1
 ;;W "<table>",!
 W "<tr>"
  I $G(COLSP) W "<td colspan="""_COLSP_""">&nbsp;</td>"
  ;
  W "<td colspan="""_COLS_""">"
   W "<table id=""tblnewmail"" value="""" dir="""_$$^%W1DIR_""" style=""visibility:hidden;border:1px solid grey"" >",! 
    W "<tr>"
     W "<td align=""center"">"
      W "<input id=""newmail"" type=""text"" size=""50"" maxlength=""60"" "
        W " onKeyUp=""EnglishOnly(event,'newmail')"""   
      W " />"
     W "</td>",!
     W "<td>"
       D ^W4BUTTON("sbmnewmail",$$^%W1DICT("SUBMIT"),"SubmitNewMail('"_LKHN_"','"_SELMAILID_"')","color:green")
     W "</td>",!
     W "<td>" 
       D ^W4BUTTON("cncnewmail",$$^%W1DICT("CANCEL"),"CancelNewMail()","color:red")
     W "</td>",!
    W "</tr>",!
   W "</table>",!
  W "</td>"
  
  W "<td>&nbsp;</td>" 
  
 W "</tr>",!
 ;;W "</table>",!
 Q
 ;
 ;
SELMAIL(LKHN,SELMAILID) ;
 S LKHN=$G(LKHN)
 I $G(SELMAILID)="" S SELMAILID="Email"
 N SEL
 S SELEMAIL=""
 S SEL="<select id="""_SELMAILID_""" onChange=""ChangeMail('"_SELMAILID_"')"">"
  N N,EMAIL S EMAIL=$$SPA^%L1FRM($$EMAIL^W4L(LKHN))
  I EMAIL["@" S SEL=SEL_"<option value='"_EMAIL_"'>"_EMAIL_"</option>",SELEMAIL=EMAIL
  N EMAIL1 S EMAIL1=$$SPA^%L1FRM($$EMAIL1^W4L(LKHN))
  I EMAIL1["@" S SEL=SEL_"<option value='"_EMAIL1_"'>"_EMAIL1_"[*****]</option>"
  ;
  I $G(LKHN)'="" S N="" F  S N=$O(@$$^W4GL("LKH")@(LKHN,"E",N)) Q:N=""  D
  . N N1 S N1=$$SPA^%L1FRM(N) Q:N1=""  Q:N1'["@"
  . I N1=EMAIL!(N1=EMAIL1) Q
  . S SEL=SEL_"<option "
  . I $$SELECTEDMAIL(N1) S SEL=SEL_" selected=""selected"" ",SELEMAIL=N1
  . S SEL=SEL_" value='"_N1_"'>"_N1_"</option>"
 S SEL=SEL_"</select>"
 Q SEL
 ;
EMST(EMAIL) ;
 Q $$FUNC^%UCASE($$SPA^%L1FRM(EMAIL))
 ;
SELECTEDMAIL(N1) ;
 S N1=$$EMST(N1)
 N OK S OK=0
 I $G(%ARG("NEWMAIL"))'="" Q (N1=$$EMST(%ARG("NEWMAIL")))
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;
 I $G(HZM)<1 D  Q OK
 .N EM S EM=$$EMST($$EMAIL^W3HZMST(JB))
 .I $L(EM),EM=N1 S OK=1
 ;
 N EM S EM=$O(@$$^W4ORD@(HZM,"SENT2MAIL",""))
 S EM=$$EMST(EM)
 I $L(EM),$O(@$$^W4ORD@(HZM,"SENT2MAIL",EM))="" Q (EM=N1)
 ;
 S EM=$$EMST($$EMAIL^W3HZMST(JB))
 I $L(EM) Q (EM=N1)
 ;
 S EM=$$EMAIL^W4HZMST(HZM)
 I $L(EM) Q (EM=N1)
 ;
 Q 0
 ;
 ;
NEWMAIL(PRM) ;
 N MAIL,LKH
 S MAIL=$P(PRM,";",1,1)
 I MAIL'["@"!(MAIL'[".") Q "EMAILADDRISWRONG"
 S MAIL=$$SPA^%L1FRM(MAIL)
 S MAIL=$$FUNC^%UCASE(MAIL)
 S LKH=$P(PRM,";",2,2)
 I LKH'="" D  ; ,$D(@$$^W4GL("LKH")@(LKH)) D
 .I $$EMAIL^W4L(LKH)'["@" D PUT^W4L(LKH,MAIL,"EMAIL")
 .I MAIL'=$$EMAIL^W4L(LKH) D
 ..S @$$^W4GL("LKH")@(LKH,"E",MAIL)=$H
 Q 1
 ;
DELMAIL(PRM) ;
 N MAIL,LKH
 S MAIL=$P(PRM,";",1,1) I MAIL="" Q "NOTMAIL"
 S LKH=$P(PRM,";",2,2)
 I LKH="" Q "CUSTOMERNOTEXIST"
 I MAIL=$$EMAIL^W4L(LKH),$D(@$$^W4GL("LKH")@(LKH))=11 D PUT^W4L(LKH,"","EMAIL")
 I MAIL=$$EMAIL1^W4L(LKH),$D(@$$^W4GL("LKH")@(LKH))=11 D PUT^W4L(LKH,"","EMAIL1")
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0 D
 .N EMAIL S EMAIL=$$EMAIL^W4HZMST(HZM)
 .I $$SPA^%L1FRM(EMAIL)'=$$SPA^%L1FRM(MAIL) Q
 .K @$$^W4ORD@(HZM,"EMAIL")
 K @$$^W4GL("LKH")@(LKH,"E",MAIL)
 Q 1
 ;
 ;
COMMENT2MAIL ;
  N VSB S VSB="visible"
  I $$SEL(1) S VSB="collapse"
  W "<tr id=""trcmnt2mail"" style=""visibility:"_VSB_""" >"
   W "<td colspan=""2"">",!
    W "<span style=""color:grey"">"_$$^%W1DICT("COMMENT2MAIL")_" : <BR>"
    W "</span>",!
    W "<textarea id=""cmnt2mail"" cols=""60"" rows=""2"" " 
     I $$1024^W4WDSCR W "style=""font-size:"_$$^W3FSZ(9)_""" "
    W " >"
     I $$PCHBP,$G(HZM) D
     .W $$H2U^%L1FRM($G(@$$^W4ORD@(HZM,"COMMENT2MAIL")))
    W "</textarea>",! 
   W "</td>",! 
   ;
   D WHENCOMM
  W "</tr>",!
 Q
 ;
 ;
WHATSAPP 
 Q
 W "<td id=""whatsapp"" colspan=""2"" >"
  W $$^%W1DICT("TEL") W $$NBSP^%L1FRM(2)
  W "<input type=""text"" id=""wanmb"" size=""10"" />" W $$NBSP^%L1FRM(2)
  N PROC S PROC="SendMail('"_HDMAIL_"','"_NUMBER_"','"_$G(VD)_"','1')"
  D ^W4BUTTON("snd2whatsapp","SEND2WHATSAPP",PROC,"green")
 W "</td>"
 Q
 ;
 ;
WHENCOMM ;
 I '$G(HZM) W "<tdcolspan=""3"">&nbsp;</td>" Q
 ;
 N ZMANCOM S ZMANCOM=$G(@$$^W4ORD@(HZM,"WHENCOMM"))
 N DATCOM,TIMECOM,SHAACOM,MINCOM S DATCOM=$P(ZMANCOM," ")
 S TIMECOM=$P(ZMANCOM," ",2)
 S SHAACOM=+TIMECOM
 S MINCOM=+$P(TIMECOM,":",2)
 ;
 I 'DATCOM S DATCOM="00.00.00"
 I TIMECOM="" S TIME="00:00"
 ;
 I '$G(HZM) W "<tdcolspan=""3"">&nbsp;</td>" Q
 I '$$^W4HZMH(HZM) W "<tdcolspan=""3"">&nbsp;</td>" Q
 ;
 W "<td colspan=""5"">"
  W $$^%W1DICT("WHENCOMMUNICATE"),"&nbsp;&nbsp;"
  W "<select id=""datcomm"" onChange=""SaveCommDat()"" >",!
  N I F I=0,+$H:1:$H+180 D
  .W "<option "
  .D
  ..I I=0,'DATCOM W "selected=""selected"" " Q 
  ..I I=$$^%L1DC(DATCOM,3) W "selected=""selected"" " 
  .N BHAR S BHAR=$$^%W1DICT("CHOICEDAT")
  .W "value="""_I_""" >"_$S('I:BHAR,1:$ZD(I,"DD.MM.YY"))_" "_$S(I:$$H2U^%L1FRM($$^%L1DC(I,9)),1:"")_"</option>"
  W "</select>",!
  W "</td>"
  ;
  W "<td>"
   W "<select id=""timecomm"" onChange=""SaveCommDat()"" >",!
   F I=0,7:1:22 D
   .F J=0,30 D
   .. W "<option "
   .. I I=SHAACOM,J=MINCOM W " selected=""selected"" "
   .. W ">"_$TR($J(I,2)," ",0)_":"_$TR($J(J,2)," ",0)_"</option>"
   W "</select>"
  W "</td>"
 Q
 ;
 ;
EMAILCONT(PRM) ;
 N VD S VD=$P($P(PRM,";",4),"^")
 I $$PCHBP Q $$EMAILCONT^W4PCHBP(PRM)
 I VD="HB"!(VD="HY")!(VD="HBZ")!(VD="CB") Q $$EMAILHB(PRM)
 Q "NOTVD"
 ;
 ;
EMAILHB(PRM)
 N (JB,%ARG,PRM) D ^%L1TS
 ;
 D PARSEPRM(PRM) ; --> NOM,HDMAIL,EMAIL,VD
 ;
 S EMAIL=$$CLA^%L1FRM(EMAIL)
 I EMAIL'["@" Q "EMAILWRONG"
 ;
 D PRM^W4MAIL ; --> FROM,SMRP,USER,PSW
 ;
 N WEB S WEB=$$WEB^W3MAIN
 I WEB["//" S WEB=$P(WEB,"//",2,20)
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 ;
 S FILE="/tmp/sndmail"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  W "<html>",!
  D ECONT(VD,NOM)
  W "</html>",!
 C FILE
 ;
 D PROCFILE(FILE,COMMENT,HOWSEND)
 ;
 J SEND(JB,PRM,SMTP,USER,PSW,FROM,FILE1,FILEC)
 Q $ZSY
 ;
 ;
SEND(JB,PRM,SMTP,USER,PSW,FROM,FILE1,FILEC) ;
 N HDMAIL,EMAIL,HOWSEND,PSEUDO
 S HDMAIL=$P(PRM,";",2)
 S EMAIL=$P(PRM,";",3)
 I EMAIL["[" S EMAIL=$P(EMAIL,"[")
 S HOWSEND=$P(PRM,";",7)
 I 'HOWSEND S HOWSEND=3
 S PSEUDO=FROM
 I $$SF^W4PRM S PSEUDO="SFactory@5666666.co.il"
 ;
 L +^AL:10
 ;
 S MSG="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S MSG=MSG_" -j """_HDMAIL_"""  -s """_FROM_""" -y """_PSEUDO_""" "
 S MSG=MSG_" -r """_EMAIL_""" "
 I HOWSEND=1,$G(FILE1)'="" S MSG=MSG_" -b """_FILE1_""" "
 ;
 I HOWSEND=2!(HOWSEND=3) D
 .I $G(FILE1)'="" S MSG=MSG_" -a """_FILE1_""" "
 .I $G(FILEC)'="" S MSG=MSG_" -b """_FILEC_""" "
 ;
 S ^AL(JB,"MSG")=$E(MSG,1,800)
 zsy MSG
 ; 
 S ^AL(JB,"ZSY")=$ZSY
 N MKRMAIL S MKRMAIL=$$GETP^%W1PRM("MKRMAIL")
 ;
 I MKRMAIL["W4FAXHTM" D
 .N HZ S HZ=$P(MKRMAIL,";",2) Q:'HZ
 .D MAILRES(HZ,EMAIL)
 ;
 D KILL^%W1PRM("MKRMAIL")
 ;
 L -^AL
 ;
 C FILE1:(DELETE)
 C FILEC:(DELETE)
 ;
 D PROT(PRM,FILE1)
 Q
 ;
 ;
ECONT(VD,NOM) ;
 S %ARG("NOM")=NOM
 S %ARG("MAIL")=1
 S %ARG("VD")=VD
 ;
 W "<div align=""center"" style="""_$$FONTFM^W3CSS_""">",!
 I '$$LOGO^W4KOTHSB D ^W4MSDNAM
 ;
 I VD="HB" D ^W4LHBVW
 ;
 I VD="HY"!(VD="HBZ") D ^W4HSBYVW
 ;
 I VD="CB" D
 .S %ARG("NOBACK")=1
 .S %ARG("MAIL")=1
 .D ^W4LCBCR
 W "</div>",!
 Q
 ;
PARSEPRM(PRM) ;
 S NOM=$P(PRM,";")
 S HDMAIL=$P(PRM,";",2)
 S EMAIL=$P(PRM,";",3)
 S VD=$P(PRM,";",4)
 S HOWSEND=$P(PRM,";",7)
 S COMMENT=$P(PRM,";",14,1000)
 Q
 ;
PCHBP(STAM) ; 
 I $$^W4ELPOS,VD="HZMH"!(VD="HZ")!(VD="HMK")!(VD="TM") Q 1
 Q 0 
 ;
PROT(PRM,FILE) ; 
 D PARSEPRM(PRM)
 I $G(EMAIL)="" Q
 N FILEA S FILEA=$$FILEA(JB,VD,NOM)
 ZSY "cp "_FILE_" "_$$WEBL^W3MAIN_$$GETP^%W1PRM("MSD")_"/"_FILEA
 S @$$^W4GL("W4EMPROT")@($$^W4DZ,NOM_"VD"_VD,EMAIL)=$H_";"_$ZSY_";"_PRM_"<>"_FILEA
 I $E(VD,1,2)="HZ" D
 .S @$$^W4ORD@(+NOM,"SENT2MAIL",EMAIL,"FILE")=FILEA
 .S @$$^W4ORD@(+NOM,"SENT2MAIL",EMAIL,"FILE",+$H_$TR($J($P($H,",",2),5)," ",0))=FILEA
 Q
 ;
FILEA(JB,VD,NOM)
 Q "AEM"_$ZD($H,"YYMMDD")_$TR($J($P($H,",",2),5)," ",0)_"JB"_JB_"VD"_VD_"NOM"_NOM
 ;
PROCCOMMENT(COMMENT)
 S COMMENT=$$INVH^%L1FRM(COMMENT)
 S COMMENT=$$CNWEB^%L1FRM(COMMENT)
 ;
 I $$CMNTMAIL^W4PRM,$G(ORD),'$$TAKEAWAY^W4HZMST(ORD) Q $$NEWPROCCOMMENT(COMMENT,ORD)  ; -- ORD FROM W4PCHBP
 ;
 S TX=""
 I $$SF^W4PRM D
 .S TX="<BR> xfeg liina xy`le mipekp dpnfdd ihxty `ceel yi <BR>"
 ;
 I '$$DELIS^W4PRM D
 .S TX="<BR> sxevn uaew geztl `p jnqna ditvl <BR> epil` mzipty dcez"
 ;
 I $G(ORD),$$TAWREADY(ORD) D
 .S TX=TX_"<BR> </H2> dpken jly dpnfd <H2> <BR>"
 .I $$TAKEAWAY^W4HZMST(ORD) D
 ..S TX=TX_"<BR> </H2> zgwl `eal `p <BR> <H2>"
 ; 
 S COMMENT=$$H2U^%L1FRM(TX)_"<BR>"_$$H2U^%L1FRM(COMMENT)
 G PROCCOMMENT2 ;
PROCCOMMENT1(COMMENT) ; 
PROCCOMMENT2 ;
 S COMMENT=$$RPL^%L1FRM(COMMENT,"_"," <BR> ")
 ;
 S COMMENT="<div "_$$^%W1ALIGN_" dir="""_$$^%W1DIR_""" >"_COMMENT_"</div><BR>"
 ;
 S COMMENT=COMMENT_"<BR><HR><div align=""center"" dir="""_$$^%W1DIR_""">"
 ;
 ;;I $$DELIS^W4PRM D
 .S COMMENT=COMMENT_"<BR> "_$$H2U^%L1FRM("qilc zeevn dkxaa")
 .S COMMENT=COMMENT_"<BR> "_$$H2U^%L1FRM("sxevn uaew geztl `p jnqna ditvl")
 .S COMMENT=COMMENT_"<BR>"_$$H2U^%L1FRM("epil` mzipty dcez")_"<BR>"
 .;;S COMMENT=COMMENT_"<BR>"_$$H2U^%L1FRM("dwtq`d cren iptl zery 24 cr dpnfd lhal ozip")_"<BR>"
 .S COMMENT=COMMENT_"<BR>"_$$H2U^%L1FRM("bg iptl mini 10 milehia oi`")_"<BR>"
 .;;S COMMENT=COMMENT_"<BR>"_$$H2U^%L1FRM("cxynl zeptl `p zepnfd lehia ldepl")_"<BR>"
 .S COMMENT=COMMENT_"<BR>"_$$H2U^%L1FRM("iptl zery 24 dpnfd lhal ozip `l")_"<BR>"
 . 
 .S COMMENT=COMMENT_"<BR><BR><BR>"_$$H2U^%L1FRM("v""ca zgbyda oixcdn deext / ialg gahn xyk")
 .S COMMENT=COMMENT_"<BR>"_$$H2U^%L1FRM("zepaxd zgbyda ixya gahn")
 .S COMMENT=COMMENT_"<BR><HR>"
 ;
 I $L($G(@$$^W4PRM@("MELEL")))>1 D
 .N MELEL S MELEL=^("MELEL")
 .S COMMENT=COMMENT_"<BR>"
 .N J F J=$L(MELEL,"_"):-1:1 D
 ..N ST,STN S ST=$P(MELEL,"_",J)
 ..S COMMENT=COMMENT_$$H2U^%L1FRM(ST)_"<BR>"
 .S COMMENT=COMMENT_"<HR>"
 ;
 N EMAIL S EMAIL=$G(@$$^W4PL@("ESEK",6))
 S COMMENT=COMMENT_$$H2U^%L1FRM("l`ec")_" : <a href='mailto:"_EMAIL_"'>"_EMAIL_"</a> <BR> "
 ;
 S COMMENT=COMMENT_$$H2U^%L1FRM($G(@$$^W4PL@(2)))_" <BR> "
 S COMMENT=COMMENT_$$H2U^%L1FRM("lh")_" "_$G(@$$^W4PL@("ESEK",3))_" "
 S COMMENT=COMMENT_$$^%W1DICT("FAX")_" "_$G(@$$^W4PL@("ESEK",5))_" <BR> " 
 N SITE S SITE=$G(@$$^W4PL@("ESEK",8))
 ;
 I $L(SITE) D
 .S COMMENT=COMMENT_"<a href='"_SITE_"' style='font-size:"_$$^W3FSZ(14)_"'>"
 . S COMMENT=COMMENT_SITE
 .S COMMENT=COMMENT_"</a>"
 S COMMENT=COMMENT_"</div>"
 ;
 Q COMMENT
 ;
 ;
SELECTED(I) ; 
 I $$SEL(I) Q " selected=""selected"" "
 Q "" 
 ;
SEL(I) ; 
 Q +I=$G(@$$^W4PRM@("HOWSEND"),3)
 ;
PROCFILE(FILE,COMMENT,HOWSEND) ; --> FILE1,FILEC
 S FILEC="/tmp/sndmailc"_$G(JB)
 O FILEC:(NEWVERSION:REWIND:WRITE) U FILEC
 ;
  S COMMENT=$$PROCCOMMENT(COMMENT)
  W COMMENT,!
 C FILEC
 ;
 N FILE0 S FILE0="/tmp/sndmail1"_$G(JB)
 S FILE1=FILE0_".html"
 O FILE1:(NEWVERSION:REWIND:WRITE)
 O FILE:(REWIND:READONLY)
 ;
 F  U FILE R A Q:$ZEOF  U FILE1 W A
 C FILE:(DELETE) C FILE1
 ;
 I HOWSEND=3 D
 .N FILE2 S FILE2=FILE0_".pdf"
 .ZSY "/pos/sbin/htmltopdf -q "_FILE1_" "_FILE2
 . 
 .I '$$SGNPDF^W4PRM!($G(HDMAIL)'["Invoice") D
 ..I $ZSY S ^AL(JB,"ZSY")=$ZSY_";"_FILE1_";"_FILE2_";ERRORPDFCNV" Q
 ..S FILE1=FILE2
 .
 .I $$SGNPDF^W4PRM,$G(HDMAIL)["Invoice" D
 ..S VD=$P($G(VD),"^")
 ..I '(VD="HB"!(VD="HY")!(VD="HBZ")!(VD="CB")) Q
 ..N FILE3 S FILE3=FILE0_"sgn.pdf"
 ..ZSY "/pos/sbin/pdfsign.sh "_FILE2_" "_FILE3
 ..I $ZSY S ^AL(JB,"ZSY")=$ZSY_";"_FILE1_";"_FILE2_";"_FILE3_";ERRORPDFCNV" Q
 ..S FILE1=FILE3
 Q
 ;
 ;
HB(TX) ; 
 Q $$HB^W4SNDINV(TX) 
 ;
NEWPROCCOMMENT(COMMENT,ORD) ;
 N ST S ST="<div dir="""_$$^%W1DIR_""" align=""center"" >"
  S ST=ST_"<BR>"_$$H2U^%L1FRM("sxevn uaew geztl `p jnqna ditvl")
  S ST=ST_"<BR>"_$$H2U^%L1FRM("epil` mzipty dcez")_"<BR><HR>"
  S ST=ST_"<table>"
  S ST=ST_$$ROW("dpnfd 'qn",ORD)
  S ST=ST_$$ROW("'lh",$$TELB^W4HZMST(ORD))
  S ST=ST_$$ROW("ciip 'lh",$$PELE^W4HZMST(ORD))
  I $$SOAD^W4HZMST(ORD)>1 D
  .S ST=ST_$$ROW("micreq 'qn",$$SOAD^W4HZMST(ORD))
  S ST=ST_$$ROW(" : gelynl zaezk",$$KTVM^W4HZMST(ORD))
  S ST=ST_$$ROW("dnew",$$KOMA^W4HZMST(ORD))
  S ST=ST_$$ROW("jix`z",$$TRH^W4HZMST(ORD))
  S ST=ST_$$ROW("dry",$$SHAA^W4HZMST(ORD))
  S ST=ST_$$ROW("melyzl k""dq",$J($$TSHL^W4HZMST(ORD),2,2))
  ; 
  N CODTS,CODTS1 S CODTS=$$CODTS^W4HZMST(ORD),CODTS1=""
  I CODTS S CODTS1=$$^W3SHOWTS(CODTS)
  S ST=ST_$$ROW("melyz zxev",CODTS1)
 S ST=ST_"</table><br>"
 ;
 S ST=ST_$$PROCCOMMENT1($$H2U^%L1FRM(COMMENT))_"</div>"
 Q ST
 ;
 ;
ROW(TX,RKV) ; 
 Q "<tr><td>"_$$H2U^%L1FRM(TX)_"</td><td>"_$$H2U^%L1FRM(RKV)_"</td></tr>"
 ;
TAWREADY(ORD) ; 
 N TAWR S TAWR=$G(@$$^W4ORD@(ORD,"READY"))
 I TAWR="" Q 0 
 N H S H=+$H+$P($H,",",2)
 N HRD S HRD=TAWR+$P(TAWR,",",2)
 I H-HRD<120 Q 1
 I H-HRD<0 D  Q RES
 .I $H-TAWR'=1 S RES=0 Q
 .I $P($H,",",2)+86400-$P(TAWR,",",2)>120 S RES=0
 .S RES=1 
 Q 0 
 ;
 ;
MAILRES(HZ,EMAIL) ;
 S $P(@$$^W4ORD@(HZ,"DBF"),"\",10)=EMAIL_"~"_$ZSY_"~"_$H
 ;
 I '$ZSY D  Q
 .D SETOK^W4FAXHTM(HZ)
 .S @$$^W4ORD@(HZ,"EMAIL")=EMAIL_"~"_$H
 .S @$$^W4ORD@(HZ,"EMAIL",EMAIL)=$H
 ;
 S $P(@$$^W4ORD@(HZ,"DBF"),"\",6)=$ZSY
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMP
W4EMP ; [ 21.06.20 16:09 ] [ 30.10.10 08:11 ] [ 20.04.10 14:48 ] 
 N (JB,%ARG,SRCH)
 D GL
 I '$D(JB) W " JB number is not defined ! " Q
 I $G(%ARG("NOSHOW")) Q
 D PUT^%W3DEB("W4EMP","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 W "<div align=""center"" >",!
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("EMPTABLE")_"</span>",!
 W "<table id=""TblEmp"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""13%"">"_$$^%W1DICT("EMPID")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("EMPNAME")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("EMPGROUP")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .N SUG S SUG=$$SUG(N)
 .I $G(%ARG("CDKV")),%ARG("CDKV")=SUG Q
 .I $G(%ARG("KV")),%ARG("KV")'=SUG Q
 .I $G(%ARG("KV"))="NO",SUG Q
 .;;W "N="_N_" 5",!
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N,$$^W4NAME(N)) Q
 .;;W "N="_N_" 6",!
 .W "<tr id=""tremp"_N_""" "
 .I '$$GET1^W4LEVPR(N,"PAIL") W "style=""background-color:pink"" "
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$^W4NAME(N))_"&nbsp;</td>"
 .
 .I '$G(%ARG("SET")) W "<td align=""center"">&nbsp;"_$$SUG1(N)_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""checkbox"" id=""chemp"_N_""" onClick=""OnClickTbl('"_N_"','TblEmp','tremp','chemp')"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPEMP($$^%W1JB)"
 Q
SUG(EMP) D GL
 Q $P($G(@GL@(EMP)),"\")
 ;
SUG1(EMP) D GL
 N SUG S SUG=$$SUG(EMP)
 I 'SUG Q $$^%W1DICT("NOGROUP")
 Q $$H2U^%L1FRM($G(@$$^W4GL("LEVKVZ")@(SUG)))
 
 
 

W4EMPL
W4EMPL ; [ 06.04.22 14:37 ] [ 30.10.10 08:12 ] [ 19.04.10 20:14 ] 
 N (JB,%ARG,SRCH)
 D GL
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4EMPL","%ARG=[%ARG & SRCH=SRCH")
 W "<div align=""center"" >",!
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("ITEMSTABLE")_"</span>",!
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""13%"">"_$$^%W1DICT("EMPLCODE")_"</th>"
 W "<th width=""33%"">"_$$^%W1DICT("EMPLNAME")_"</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .W "<tr id=""trempl"_N_""" >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$^W4NAME(N))_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""checkbox"" id=""chprt"_N_""" onClick=""OnClickTbl('"_N_"','TblPrt','trprt','chprt')"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GL ;
 S GL=$$^W4GNAME
 Q
 ;
 

W4EMV3
W4EMV3(PAY,SUGIS,SUGAS,MG,VIZ,DATT,P1,PN,PC,ASHTZ,ASHCVV2,AUTHNO) ; [ 08.01.26 04:49 ] [ 29.12.24 12:08 ] [ 12.04.24 12:25 ] 
 N (JB,%ARG,PAY,SUGIS,SUGAS,MG,VIZ,DATT,P1,PN,PC,ASHTZ,ASHCVV2,AUTHNO,UIDBIT,STOUT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S MSG=""
 S STPRM="PAY="_$G(PAY)_"&SUGIS="_$G(SUGIS)_"&SUGAS="_$G(SUGAS)_"&MG="_$G(MG)
 S STPRM=STPRM_"&VIZ="_$G(VIZ)_"&DATT="_$G(DATT)_"&P1="_$G(P1)_"&PN="_$G(PN)_"&PC="_$G(PC)_"&UIDBIT="_$G(UIDBIT)
 S STPRM=STPRM_"&ASHTZ="_$G(ASHTZ)_"&ASHCVV2="_$G(ASHCVV2)_"&AUTHNO="_$G(AUTHNO)
 ;
 
 S HD="{"
 S HD=HD_$$RKV("jsonrpc","2.0",1)
 S HD=HD_","_$$RKV("method","doTransaction",1)
 S HD=HD_",""params"":["
 S HD=HD_"""ashrait"",{"
 ;
 S VUID=$$VUID^W4STRINW
 ;
 S HZD=+$$GETP^%W1PRM("HZM")_"\"_$ZD($H,"DD.MM.YY 24:60")
 D DB("W4EMV3",+$G(VUID),"HZM",HZD)
 D DB("W4EMV3",+$G(VUID),"STPRM",STPRM)
 ;
 S INDL0=$G(@$$^W4GL("TRANL"))
 S INDL=$O(@$$^W4GL("TRANL")@(999999),-1)
 S:INDL<1 INDL=1
 I INDL<INDL0 S INDL=INDL0
 ;
 S GL=$$^W4GL("TRANL")_"("_INDL_",901)"
 ;
 I $$GETP^%W1PRM("HZM") D
 .S HZM=$$GETP^%W1PRM("HZM")
 .;;S @$$^W4GL("W4HZMEMV")@(HZM)=VUID
 .;;S @$$^W4GL("W4HZMEMV")@(HZM,"STPRM")=STPRM
 ;
 ;;I $G(UIDBIT) D BITOLD G END
 ;
 D DVIND ; --> DV,FLIND
 ;
 ;
 D
 .L +@$$^W4GL("W4TRCNMB"):2
 .N SH S SH=$G(@$$^W4GL("W4TRCNMB"))
 .S TRCNMB=$P(SH,";")_";"_($P(SH,";",2)+1)
 .S @$$^W4GL("W4TRCNMB")=TRCNMB
 .L -@$$^W4GL("W4TRCNMB")
 ;
 I $G(VIZ),'$L($G(MG)) G YAD
 ;
 S ST=$$RKV("amount",PAY) 
 S ST=ST_","_$$RKV("vuid",VUID,1)
 S ST=ST_","_$$RKV("currency",376,1)
 S ST=ST_","_$$RKV("creditTerms",SUGAS)
 ;
 S TRCODE=1
 S ST=ST_","_$$RKV("tranCode",TRCODE)
 ;
 S TRTYPE=1
 I SUGIS=51 S TRTYPE=53
 S ST=ST_","_$$RKV("tranType",TRTYPE)
 ;
 I SUGAS=6,$G(PN) D  ; -- CREDIT PAYMENT
 .S ST=ST_","_$$RKV("creditPayments",PN)
 ;
 I SUGAS=8 D  ; --- PAYMENTS
 .I $G(PN),$G(P1),$G(PC) D
 ..S ST=ST_","_$$RKV("payments",PN)
 ..S ST=ST_","_$$RKV("firstPaymentAmount",P1)
 ..S ST=ST_","_$$RKV("otherPaymentAmount",PC)
 ;
 I $L($G(MG)) S ST=ST_","_$$RKV("cardTrack2",MG,1)
 ;
 I $G(VIZ),'$L($G(MG)) D  ; -- NO TRACK2
 .S ST=ST_","_$$RKV("posEntryMode",50)
 .S ST=ST_","_$$RKV("cardNumber",VIZ,1)
 .I $G(ASHCVV2) S ST=ST_","_$$RKV("cvv",ASHCVV2,1)
 .I '$G(DATT) S DATT=1249
 .S ST=ST_","_$$RKV("expDate",$E(DATT,3,4)_$E(DATT,1,2),1)
 ;
 I $G(ASHTZ) S ST=ST_","_$$RKV("cardHolderID",ASHTZ,1)
 I $G(AUTHNO) S ST=ST_","_$$RKV("authNum",AUTHNO,1)
 S ST=ST_","_$$RKV("sysTraceNumber",TRCNMB,1)
 ;
 S FOOT="}],"
 ;
 ;
 S ID=$O(@GL@(99999),-1)+1
 S ID=$TR($J(INDL,5)," ",0)_$TR($J(ID,5)," ",0)
 S FOOT=FOOT_$$RKV("id",ID,1)
 S FOOT=FOOT_"}" 
 ;
 S STR=HD_ST_FOOT
 ;
 S FL=$$PATH_"tmpemv"_FLIND
 ;
 D DB("W4EMV3",+$G(VUID),"STR",STR)
 ;
 O FL:(NEWVERSION:REWIND) U FL
  W STR
 C FL
 ;
 S URL=$$URL(DV)
 I URL="" S STA=999,MSG="NOADR" G END
 ;
 S FLOU=$$PATH_"tmpemvou"_FLIND
 ;
 ;
 D
 .N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'HZM
 .Q:'$G(VUID)  Q:'$G(ID)  Q:'$G(PAY)
 .N IND S IND=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .K @$$^W4ORD@(HZM,"EMVP",IND)
 .S @$$^W4ORD@(HZM,"EMVP",IND,"STIN")=STPRM
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","VUID")=VUID
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","ID")=ID
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","DV")=$$^W4MYDVN
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","URL")=URL
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","FLIND")=FLIND
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","AMOUNT")=PAY
 ;
 D CMD(FL,URL,FLOU)
 ;
 I $$SIZE^%L1ZOS(FLOU)<1!'$$EXIST^%L1ZOS(FLOU)!($G(ER)=28) D  G:$G(MSG)'="" END
 .H 10 S MSG="",ER=""
 .D GETBYVUID(VUID,ID,URL,FLIND) ; --> FLOU,ER
 .I '$$EXIST^%L1ZOS(FLOU) S STA=999,MSG="NOANSWER" Q
 .I ER=28 S STA=999,MSG="CONNECT TIMEOUT" Q
 ;
 G TV
 ;
OU(FLOU) ;
 ;
TV D FL2ARR(FLOU)
 N A,I S A=""
 F I=1:1 Q:'$D(ARR(I))  S A=A_ARR(I)
 ;;K ARR
 N ST1,ST2
 S ST1=$P($P(A,"merchantReceipt",2),"customerReceipt")
 S ST2=$P(A,"customerReceipt",2)
 D GETFLD(ST1,1)
 D GETFLD(ST2,2)
 ;
 S OUT("STA")=$$GET(A,"statusCode")
 S STA=OUT("STA")
 ;
 N GETID S GETID=$$GET(A,"id")
 I JB'=1,GETID'=ID D  G:STA=999 END
 .N GETID S GETID=$$GET(A,"vuid")
 .I JB'=1,GETID'=VUID S STA=999,MSG="ID OR VUID IS WRONG"
 ;
 N RESMSG S RESMSG=$$FUNC^%UCASE($$GET(A,"statusMessage"))
 S OUT("RESMSG")=$$U2H($$CLR(RESMSG))
 S OUT("SOLEK")=$$GET(A,"solek")
 S OUT("SAPAK")=$$GET(A,"authCodeSolek")
 ;;S OUT("SAPAKTEL")=$$SPA^%L1FRM($P($P(HD,"""solek_phone"":",2),","))
 S OUT("AUTHNO")=$$GET(A,"issuerAuthNum")
 ;
 S OUT("MUTAG")=$$GET(A,"mutag")
 S OUT("MANPIK")=$$GET(A,"manpik")
 S OUT("VIZ")=$$GETPC("xtqn",1)
 I '$L(OUT("VIZ")) S OUT("VIZ")=$$GET(A,"cardNumber")
 I OUT("VIZ")["*" S OUT("VIZ")=$TR(OUT("VIZ"),"*",".")
 S OUT("MASOF")=$$GETPC("seqn xtqn",1)
 I OUT("MASOF")="" D
 .S OUT("MASOF")=$$GET(A,"acquirerMerchantID")
 S OUT("NMCARD")=$$INVH^%L1FRM($$GETPC("qihxk",1))
 I OUT("NMCARD")="" D
 .S OUT("NMCARD")=$$GET(A,"cardName")
 S OUT("UID")=$$GET(A,"uid")
 S OUT("VUID")=$$GET(A,"vuid")
 S OUT("ID")=$$GET(A,"id")
 S OUT("FLIND")=$G(FLIND)
 S OUT("AMOUNT")=$G(PAY)
 S OUT("URL")=$G(URL)
 ;
TV1 ;
 S HZM=$$GETP^%W1PRM("HZM")
 ;
 M ^LV($$DT,$P($H,",",2),"W4EMV3",+$G(VUID),"OUT")=OUT
 ;
 ;
 I $G(OUT("STA"))?."-"1N.N D
 .S $E(STOUT,1,3)=$$DOP^%L1FRM($G(OUT("STA")),3)
 ;
 D DB("W4EMV3",+$G(VUID),"STOUT0",$G(STOUT))
 I '$G(UIDBIT) D
 .S $E(STOUT,24)=$S($E($G(OUT("MUTAG")))?1N:$E($G(OUT("MUTAG"))),1:" ")
 .S $E(STOUT,60)=$S($E($G(OUT("MANPIK")))?1N:$E($G(OUT("MANPIK"))),1:" ")
 .S $E(STOUT,25)=$S($E($G(OUT("SOLEK"))):$E($G(OUT("SOLEK"))),1:" ")
 ;
 I $G(OUT("VIZ")) D
 .S $E(STOUT,5,23)=$$TR($G(OUT("VIZ")),19)
 S $E(STOUT,71,77)=$$TR($G(OUT("AUTHNO")),7)
 S $E(STOUT,104,118)=$$HBR^%L1FRM($G(OUT("NMCARD")),15)
 ;
 D DB("W4EMV3",+$G(VUID),"STOUT",STOUT)
 S STA=$E(STOUT,1,3)
 S MSG=$G(OUT("RESMSG"))
 ;
 I HZM,'$$^W4CLOSE(HZM) D
 .S LAST=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .M @$$^W4ORD@(HZM,"EMV",LAST)=ARRPC
 .S @$$^W4ORD@(HZM,"EMV",LAST,"STOUT")=STOUT
 .S @$$^W4ORD@(HZM,"EMV",LAST,"STIN")=STPRM
 .M @$$^W4ORD@(HZM,"EMV",LAST,"OUT")=OUT
 ;
 I $$^W4AUTHCD(STA) D
 .S MSG=$TR($G(OUT("SAPAKTEL"))_"^"_$G(OUT("SAPAK")),"""","")
 ;
 I STA="000" D
 .I $G(HZM) D  Q:STA=999
 ..I $$^W4CLOSE(HZM),'$$NOCLDLVZ^W4PRM S STA=999,MSG="PAIDED" Q
 ..N ITRA S ITRA=$$ITRA^W4HZMST(HZM) I 'ITRA,$G(SUGIS)'=51 S STA=999,MSG="PAIDED" Q
 .
 .I '$D(EMV3) S TRREC=$$GET(A,"tranRecord")
 .I $D(EMV3) S TRREC=$$GET(A,"settelment_record")
 .D REC2GL(TRREC,GL,3000)
 ;
 ;;ZWR ARR
 ;;ZWR ARRPC
 M ^LV($$DT,+$P($H,",",2),"W3EMV3",+$G(VUID),"OUT1")=OUT
 D DB("W3EMV3",+$G(VUID),"OUT2","OK~"_STA_"~"_$G(MSG)_"~"_$G(STOUT)_"~~"_$G(OUT("UID")))
 ;;ZWR TRREC
END ;
 Q "OK~"_STA_"~"_$G(MSG)_"~"_$G(STOUT)_"~~"_$G(OUT("UID"))
 ;
 ;
TR(VL,LN) ;
 Q $$TR^W4STRINW(VL,LN)
 ;
RKV(NM,VL,PRTX) ;
 I VL'?1N.N,$G(PRTX)'="0" S PRTX=1
 N OU
 S OU=""""_NM_""":"
 I $G(PRTX) S OU=OU_""""
 S OU=OU_VL
 I $G(PRTX) S OU=OU_""""
 Q OU
 ;
GET(A,NM)
 N B,P
 S B=""
 S P=""""_NM_""":"
 I A[P D
 .S B=$P(A,P,2)
 .S B=$$CLR(B)
 Q B
 ;
CLR(B) ;
 S B=$P(B,",")
 S B=$P(B,"]")
 S B=$P(B,"}")
 I $E(B)="""" S B=$E(B,2,$L(B)-1)
 Q $$SPA^%L1FRM(B)
 ;
 ;
GETFLD(ST,N) ;
 S K=0
 S PSK="""fieldName"":"
 S PSK1="""FIELDVALUE"":"
 I ST[PSK D
 .F J=1:1:$L(ST,PSK) D
 ..S VL=$P(ST,PSK,J+1)
 ..S VL=$$FUNC^%UCASE(VL)
 ..;
 ..S VL1=$$CLR($P(VL,PSK1,1))
 ..S VL1=$$U2H(VL1)
 ..S VL2=$$CLR($P(VL,PSK1,2))
 ..S VL2=$$U2H(VL2)
 ..S K=K+1
 ..N IND S IND=VL1 ;;$$INVH^%L1FRM(VL1)
 ..N CONT S CONT=VL2 ;$$INVH^%L1FRM(VL2)
 ..S ARRPC(N,K)=IND_":"_CONT
 ..I IND'="" S ARRPC1(N,IND)=CONT
 Q
 ;
 ;
GETPC(IND,N)
 I $G(IND)="" Q ""
 Q $G(ARRPC1(N,IND))
 ;
 ;
FL2ARR(FL) ;
 N A,I
 C FL O FL:(REWIND:READONLY)
 S I=0 K ARR
 F  U FL R A Q:$ZEOF  D
 .S I=I+1,ARR(I)=A
 C FL
 Q
 ;
 ;
REC2GL(REC,GL,LEN) ; ---- IF STA = "000" 
 ;
 N DV
 S DV=$$^W4MYDVN
 ;
 I $G(VUID),$L(VUID)>8,$G(^LV($$DT,+$P($H,",",2),"W4EMV3-RES",+$G(VUID),"RES"))=0 D  Q
 .D DB("W4EMV3-RES",+$G(VUID),"DVJB",DV_"\"_JB)
 ;
 N FLTR S FLTR=$$PATH_"tran"_$$^W4DZ_"_"_DV_"_"_JB_"_"_+$G(HZM) ; ----- !!!!
 ;
 N FLOU S FLOU=$$PATH_"tranout"_$$^W4DZ_"_"_DV_"_"_JB_"_"_+$G(HZM)
 ;
 I $$EXIST^%L1ZOS(FLTR) ZSY "rm "_FLTR 
 I $$EXIST^%L1ZOS(FLOU) ZSY "rm "_FLOU 
 ;
 O FLTR:(REWIND:NEWVERSION:WRITE)
 U FLTR
  W REC
 C FLTR
 ;
 D SETTL
 I $ZSY H 3 D SETTL
 I $ZSY H 3 D SETTL
 ;
 I $ZSY S STA=999,MSG="TRANERROR" ZSY "rm "_FLTR Q
 ;
 N RES,RESMSG
 ;
 S SHTROU=0
BDTROU I $$EXIST^%L1ZOS(FLOU) D
 .N A,A0 S (A,A0)=""
 .O FLOU:(REWIND:READONLY) U FLOU R A0 R:'$ZEOF A C FLOU
 .D DB("W4EMV3-RES",+$G(VUID),"A0",A0)
 .D DB("W4EMV3-RES",+$G(VUID),"A",A)
 .I A0["Result" S A=A0
 .ZSY "rm "_FLOU
 .S RES=$$GET(A,"Result")
 .S RESMSG=$$GET(A,"ResultMessage")
 .S RESMSG=$$FUNC^%UCASE(RESMSG)
 .S RESMSG=$$U2H(RESMSG)
 .
 .D DB("W4EMV3-RES",+$G(VUID),"RES",RES)
 ;
 I RES,SHTROU<2 H 2 S SHTROU=SHTROU+1 D SETTL G BDTROU
 I RES S STA=RES,MSG=RESMSG Q
 ;
 I '$G(LEN) S LEN=3000 ; -------  > ^TRANL
 ;
 N NR S NR=$O(@GL@(999999),-1)+1
 S @GL@(NR,"VUID")=$G(OUT("VUID"))
 S @GL@(NR,"UID")=$G(OUT("UID"))
 S @GL@(NR,"STIN")=$G(STPRM)
 S @GL@(NR,"STOUT")=$G(STOUT)
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM D
 .N HZMIND S HZMIND=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)
 .S @GL@(NR,"HZM")=HZM
 .S @GL@(NR,"HZMIND")=+HZMIND
 ;
REC2GLC S @GL@(NR)=$E(REC,1,LEN)
 I $L(REC)>LEN S @GL@(NR,">")="" S NR=NR+1,REC=$E(REC,LEN+1,$L(REC)) G REC2GLC
 Q
 ;
 ;
U2H(ST)
 S OU=$$CLRQ^W3SORD(ST)
 Q OU
 ;
DIR(STAM) ;
 Q $$EMVDIR^W4PRM
 ;
PATH(STAM) ;
 Q "/tmp/" 
 ;
BITOLD
 S STOUT=""
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I $E(N)?1N D  Q:$L(STOUT)
 .I $G(^(N,"UID"))=UIDBIT S STOUT=$G(@GL@(N,"STOUT"))
 ;
 S STA="000"
 S MSG="dlhea dwqr"
 S OUT("VUID")=VUID
 S OUT("UID")="-"_UIDBIT
 S $E(STOUT,1,3)="000"
 S $E(STOUT,61,62)=51
 S $E(STOUT,63)=1
 S $E(STOUT,78,85)="00000000"
 S $E(STOUT,86,93)="00000000"
 S $E(STOUT,94,95)="00"
 N NR S NR=$O(@GL@(999999),-1)+1
 S @GL@(NR)="CANCEL"
 S @GL@(NR,"VUID")=$G(OUT("VUID"))
 S @GL@(NR,"UID")=$G(OUT("UID"))
 S @GL@(NR,"STIN")=$G(STPRM)
 S @GL@(NR,"STOUT")=$G(STOUT)
 Q
 ;
YAD ; 
 N EMV3 S EMV3="" 
 D EMV^W4STRINW
 Q $$^W4EMVCON(ST,STOUT,VUID)
 ;
DVIND ; 
 S DV=$$^W4MYDVN
 S FLIND=$$^W4DZ_"_"_DV_"_"_JB_"_"_$$GETP^%W1PRM("HZM")_"_"_$TR($H,",","")
 Q
 ;
GETBYVUID(VUID,ID,URL,FLIND) ; 
 N FL S FL=$$PATH_"tmpvuid"_FLIND
 O FL:(NEWVERSION:WRITE)  
 U FL  
  W "{",!
  W $$RKV("jsonrpc","2.0",1)_",",!
  W $$RKV("method","getTransactionByVuid",1)_",",!
  W $$RKV("id",ID,1)_",",!
  W """params"":[",!
  W """ashrait"",{",!
  W $$RKV("vuid",VUID,1),!
 W "}]}",!
 C FL 
 S FLOU=$$PATH_"tmpvuidou"_FLIND
 D CMD(FL,URL,FLOU)
 Q 
 ;
URL(DV) ;
 N ADR,URL
 S ADR=$$EMVADR^W4POSEMV(DV)
 I ADR="" S ADR=$$EMVADR^W4POSEMV(1)
 I ADR="" Q ""
 ;
 I ADR'[":" S ADR=ADR_":8080"
 S URL="http://"_ADR_"/SPICy"
 Q URL
 ; 
 ;
CMD(FL,URL,FLOU) ; --> ER
 N CMD,DZ
 S CMD="curl -s -k -m 60 --connect-timeout 25 -H ""Content-Type:application/json"" -d@'"_FL_"' '"_URL_"' -o "_FLOU
 S DZ=$$^W4DZ
 ;;N SH S SH=$O(^W4CMDEMV(DZ,99999999),-1)+1
 ;;S ^[$$^W3MAIN]W4CMDEMV(DZ,SH)=CMD
 D DB("W4EMV3-CMD",+$G(VUID),"CMD",CMD)
 I $$EXIST^%L1ZOS(FLOU) ZSY "rm "_FLOU 
 ZSY CMD
 S ER=$ZSY
 ;;S ^[$$^W3MAIN]W4CMDEMV(DZ,SH,"ER")=ER
 D DB("W4EMV3-CMD",+$G(VUID),"CMD-ER",ER)
 ;;ZSY "rm -f "_FL
 Q
 ;
SETTL ; 
 N CMD S CMD=$$EMVDIR^W4PRM_"SPIShell settelment --tran-uid """_$G(OUT("UID"))_""" "
 S CMD=CMD_" --tran-file "_FLTR_" > "_FLOU
 ZSY "rm "_FLOU
 D DB("W4EMV3-SETTL",+$G(VUID),"CMD",CMD)
 ZSY CMD
 D DB("W4EMV3-SETTL",+$G(VUID),"ZSY",$ZSY)
 Q 
 ;
DB(IND,VUID,RKV,VL)
 N H,H2 S H=$$DT ;$$^W4DZ
 S H2=$P($H,",",2)
 S ^LV(H,H2,IND,VUID,RKV)=VL
 Q 
 ;
DT() ; 
 Q +$H 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMV4
W4EMV4(PAY,SUGIS,SUGAS,MG,VIZ,DATT,P1,PN,PC,ASHTZ,ASHCVV2,AUTHNO) ; [ 30.03.26 19:17 ] [ 05.08.25 13:25 ] [ 03.08.25 11:14 ] 
 N (JB,%ARG,PAY,SUGIS,SUGAS,MG,VIZ,DATT,P1,PN,PC,ASHTZ,ASHCVV2,AUTHNO,UIDBIT,STOUT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S RESMSG=""
 S STPRM="PAY="_$G(PAY)_"&SUGIS="_$G(SUGIS)_"&SUGAS="_$G(SUGAS)_"&MG="_$G(MG)
 S STPRM=STPRM_"&VIZ="_$G(VIZ)_"&DATT="_$G(DATT)_"&P1="_$G(P1)_"&PN="_$G(PN)_"&PC="_$G(PC)_"&UIDBIT="_$G(UIDBIT)
 S STPRM=STPRM_"&ASHTZ="_$G(ASHTZ)_"&ASHCVV2="_$G(ASHCVV2)_"&AUTHNO="_$G(AUTHNO)
 ;
 S DZ=$$^W4DZ
 S DV=$$^W4MYDVN
 S SEC=$P($H,",",2) 
 S HZM=+$$GETP^%W1PRM("HZM")
 ; 
 S HH=$G(@$$^W4GL("W4EMV4")@(DV))
 I $$DIF^%L1TIME($H,HH,1)<2 H 2
 ;
 S VUID=DZ_"_"_DV_"_"_SEC_"_"_HZM
 S @$$^W4GL("W4EMV4")@(DV)=$H
 ;
 S OK=0
 I '$$EMV4IP^W4PRM D
 .F I=1:1:10 D  Q:OK  H 1
 ..D CMD("GETSTATUS")
 ..S TPESTAT=$$GET("details")
 ..S TPERES=$$GET("result")
 ..S TPESTAT=$$FUNC^%UCASE(TPESTAT)
 ..S TPERES=$$FUNC^%UCASE(TPERES)
 ..I TPESTAT["ASHRAITREADY"&(TPERES["TRUE") S OK=1
 .;
 .I 'OK D  G END
 ..S MSG="SERVER IS BUSY" 
 ;
 S HZD=+$$GETP^%W1PRM("HZM")_"\"_$ZD($H,"DD.MM.YY 24:60")
 ;
 D DB("W4EMV4",$G(VUID),"HZM",HZD)
 D DB("W4EMV4",$G(VUID),"STPRM",STPRM)
 ;
 S INDL0=$G(@$$^W4GL("TRANL"))
 S INDL=$O(@$$^W4GL("TRANL")@(999999),-1)
 S:INDL<1 INDL=1
 I INDL<INDL0 S INDL=INDL0
 ;
 S GL=$$^W4GL("TRANL")_"("_INDL_",901)"
 ;
 D DVIND ; --> DV,FLIND
 ;
 
 S TRTYPE=1
 I SUGIS=51 S TRTYPE=53
 ;  
 S YYMM=$E(DATT,3,4)_$E(DATT,1,2)
 N PN1 S PN1=+$G(PN) I PN1 S PN1=PN+1 
 S PRM=VUID_";"_PAY_";"_TRTYPE_";"_PN1_";"_+$G(P1)_";"_VIZ_";"_$G(YYMM)_";"_$G(ASHCVV2)_";"_$G(ASHTZ)_";"_$G(AUTHNO)_";"_$G(SUGAS)
 ;
 D
 .Q:'$G(VUID)  Q:'$G(PAY)
 .N IND S IND=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .K @$$^W4ORD@(HZM,"EMVP",IND)
 .S @$$^W4ORD@(HZM,"EMVP",IND,"STIN")=STPRM
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","VUID")=VUID
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","DV")=$$^W4MYDVN
 .S @$$^W4ORD@(HZM,"EMVP",IND,"OUT","AMOUNT")=PAY
 ;
 I $L($G(VIZ))>6 S FUNC="TRANCNP"
 E  S FUNC="TRAN"
 G DOCMD1
DOCMD(FUNC,PRM,HZM)
DOCMD1
 D CMD(FUNC,PRM,HZM)
 ;
 N ST1,ST2
 ;
 S OUT("STA")=$$GET("result_code")
 I OUT("STA")="" S OUT("STA")=$$GET("CODE")
 S STA=OUT("STA")
 ;
 N RESMSG S RESMSG=$$GET("result_msg")
 I RESMSG=""!(RESMSG="-") S RESMSG=$$GET("message")
 I RESMSG=""!(RESMSG="-") S RESMSG="ERROR "_STA
 S OUT("RESMSG")=RESMSG
 ;
 S OUT("AUTHNO")=$$GET("issuer_auth_num")
 I OUT("AUTHNO")'?.P,'$G(STA) D
 .S (STA,OUT("STA"))="000" ; --5/02/25
 .S RESMSG="DONE_OK"
 ;
 S OUT("SOLEK")=$$GET("ACQUIRER")
 S OUT("SAPAK")=$$GET("auth_code_manpik")
 ;
 S OUT("MUTAG")=$$GET("brand")
 S OUT("MANPIK")=$$GET("issuer")
 ;
 S OUT("VIZ")=$$GET("card_number")
 I OUT("VIZ")["*" S OUT("VIZ")=$TR(OUT("VIZ"),"*",".")
 ;
 S OUT("VUID")=$$GET("trans_POS_id")
 S OUT("MASOF")=$$GET("acquirer_merchantID")
 S OUT("AMOUNT")=$$GET("amount")
 S (UID,OUT("UID"))=$$GET("trans_TPE_id")
 S (NMCARD,OUT("NMCARD"))=$$GETKEY("qihxk")
 ;
 ;
TV1 ;
 M ^LV($$DT,$P($H,",",2),"W4EMV4",$G(VUID),"OUT")=OUT
 N GLPR D GLPR^W4EMVN
 N SHPR S SHPR=$O(@GLPR@(DZ,99999),-1)+1
 M @GLPR@($$DT,SHPR,$G(VUID),"OUT")=OUT
 ;
 ;
 I $G(OUT("STA"))?."-"1N.N D
 .S $E(STOUT,1,3)=$$DOP^%L1FRM($G(OUT("STA")),3)
 .I $G(OUT("STA"))=1081,'$$WASPAY(HZM,$G(OUT("VIZ")),$G(FUNC)) D
 ..S OUT("STA0")=OUT("STA") 
 ..S OUT("STA")="000" 
 ..S STA="000"
 ..S $E(STOUT,1,3)=STA
 ;
 D DB("W4EMV4",$G(VUID),"STOUT0",$G(STOUT))
 ;;I '$G(UIDBIT) D
 I $E($G(OUT("MUTAG"))) S $E(STOUT,24)=$E($G(OUT("MUTAG"))) 
 I $E($G(OUT("MANPIK")))?1N S $E(STOUT,60)=$E($G(OUT("MANPIK"))) 
 I $E($G(OUT("SOLEK"))) S $E(STOUT,25)=$E($G(OUT("SOLEK"))) 
 ;
 I $G(OUT("VIZ")) D
 .S $E(STOUT,5,23)=$$TR($G(OUT("VIZ")),19)
 ;
 S $E(STOUT,71,77)=$$TR($G(OUT("AUTHNO")),7)
 S $E(STOUT,104,118)=$$HBR^%L1FRM($G(OUT("NMCARD")),15)
 ;
 D DB("W4EMV4",$G(VUID),"STOUT",STOUT)
 S STA=$E(STOUT,1,3)
 S MSG=$G(OUT("RESMSG"))
 ;
 ;;I HZM,'$$^W4CLOSE(HZM),'$G(UIDBIT) D; -- 20/05/25 --> COMMENT
 I HZM,'$$^W4CLOSE(HZM) D
 .S LAST=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .M @$$^W4ORD@(HZM,"EMV",LAST)=ARRPC
 .I $G(STOUT)'="" S @$$^W4ORD@(HZM,"EMV",LAST,"STOUT")=STOUT
 .I $G(STPRM)'="" S @$$^W4ORD@(HZM,"EMV",LAST,"STIN")=STPRM
 .M @$$^W4ORD@(HZM,"EMV",LAST,"OUT")=OUT
 ;
 I $$^W4AUTHCD(STA) D
 .S MSG=$TR($G(OUT("SAPAKTEL"))_"^"_$G(OUT("SAPAK")),"""","")
 ;
 I STA="000" D
 .I $G(HZM),$G(FUNC)'="REFUND" D  Q
 ..I $$^W4CLOSE(HZM) S MSG="PAIDED" Q
 ..N ITRA S ITRA=$$ITRA^W4HZMST(HZM) I 'ITRA S MSG="PAIDED" Q
 .
 .I $G(HZM),$G(FUNC)="REFUND" D  Q
 ..I $$^W4CLOSE(HZM) S @$$^W4ORD@(HZM,"S")=$G(@$$^W4ORD@(HZM,"S"))#2
 ;
 M ^LV($$DT,+$P($H,",",2),"W4EMV4",$G(VUID),"OUT1")=OUT
END ;
 I $G(STA)?.P S STA="-998"
 N ANS
 S ANS="OK~"_STA_"~"_$G(MSG)_"~"_$G(STOUT)_"~~"_$G(OUT("UID"))_"~"_$G(OUT("VUID"))
 D DB("W4EMV4",$G(VUID),"OUT-ANS",ANS)
 Q ANS
 ;
 ;
TR(VL,LN) ;
 S VL=$E(VL,1,LN)
 S VL=$TR($J(VL,LN)," ",0)
 Q VL
 ;
RKV(NM,VL,PRTX) ;
 I VL'?1N.N,$G(PRTX)'="0" S PRTX=1
 N OU
 S OU=""""_NM_""":"
 I $G(PRTX) S OU=OU_""""
 S OU=OU_VL
 I $G(PRTX) S OU=OU_""""
 Q OU
 ;
GET(NM)
 I NM="ACQUIRER",$$EMV4IP^W4PRM S NM="acquirer"
 N OK S OK=0
 N TMPRSP S TMPRSP=$$TMPRSP^W4EMVN
 N VL S VL=""
 N I,A S I=0 F  S I=$O(@TMPRSP@(I)) Q:I=""  I I D  Q:OK
 .S A=$G(^(I))
 .I A[(""""_NM_""":") S VL=$P(A,(""""_NM_""":"),2),OK=1
 I OK Q $$CLR(VL) 
 Q "-"
 ;
GETKEY(NM)
 N OK S OK=0
 N TMPRSP S TMPRSP=$$TMPRSP^W4EMVN
 N VL S VL=""
 N I,A S I=0 F  S I=$O(@TMPRSP@(I)) Q:I=""  I I D  Q:OK
 .S A=$G(^(I))
 .I A[("""key"":"""_NM_"""") D
 ..N B S B=$G(@TMPRSP@(I+1)) I B'["""value""" Q 
 ..S VL=$P(B,"""value"":",2),OK=1
 I OK Q $$CLR(VL) 
 Q "-"
 ;
CLR(B) ;
 S B=$P(B,",")
 S B=$$SPA^%L1FRM(B)
 S B=$P(B,"]")
 S B=$P(B,"}")
 I $E(B)="[" S B=$E(B,2,$L(B))
 I $E(B)="{" S B=$E(B,2,$L(B))
 I $E(B)="""" S B=$E(B,2,$L(B)-1)
 Q $$SPA^%L1FRM(B)
 ;
 ;
DIR(STAM) ;
 Q $$EMVDIR^W4PRM
 ;
PATH(STAM) ;
 Q "/tmp/" 
 ;
DVIND ; 
 S DV=$$^W4MYDVN
 S FLIND=DZ_"_"_DV_"_"_JB_"_"_HZM_"_"_$TR($H,",","")
 Q
 ;
CMD(FUNC,PRM,HZM) ;
 D ^W4EMVN(FUNC,$G(PRM),$G(HZM)) 
 Q
 ;
DB(IND,VUID,RKV,VL)
 S:$G(VUID)="" VUID=0
 N H,H2 S H=$$DT ;$$^W4DZ
 S H2=$P($H,",",2)
 S ^LV(H,H2,IND,VUID,RKV)=VL
 N GLPR S GLPR=$$^W4GL("W4EMVNPR")
 N SH S SH=$O(@GLPR@($$^W4DZ,99999),-1)+1
 S @GLPR@($$^W4DZ,SH,VUID,"W4EMV4",RKV)=VL
 Q 
 ;
DT() ; 
 Q +$H 
 ;
 ;
WASPAY(HZM,VIZ,FUNC) ;
 I '$G(HZM) Q 0
 S VIZ=$$SPA^%L1FRM(VIZ)
 N OK S OK=0 
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D  Q:OK 
 .N ST S ST=$G(^(N)) 
 .N SUM S SUM=$P(ST,"*",7)
 .I $P(ST,"*",2)[VIZ,SUM>0,$G(FUNC)'="REFUND" S OK=1 Q
 .I $P(ST,"*",2)[VIZ,SUM<0,$G(FUNC)="REFUND" S OK=1 Q
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMVASH
W4EMVASH(JB) ; [ 12.05.23 15:03 ] [ 26.03.22 20:57 ] [ 25.03.22 14:15 ] 
 N (JB,%ARG,%REM) ; ------------------ EMV DEVICE UPDATE
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S DV=$$^W4MYDVN
 S DT=$$^W4DZ
 ;
 S FLIND=DV_"_"_JB_"_"_DT
 ;
 S FL=$$PATH_"tmpash"_FLIND
 ;
 S IDASH=$O(@$$^W4GL("TRANL")@(999999),-1)
 I IDASH<1 S IDASH=1
 ;
 O FL:(NEWVERSION:REWIND) U FL
  W "{",!
   W """jsonrpc"": ""2.0"",",!
   W """method"": ""doPeriodic"","
   W """params"": [",! 
   W """ashrait"",",! 
   W "{}",!
   W "],",!
   W """id"": """_IDASH_""" ",!
  W "}",!
 C FL
 ;
 S GLEMV=$$^W4GL("W4POSEMV")
 K M
 S N="" F  S N=$O(@GLEMV@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S ADR=$P(A,"\",2) Q:'ADR
 .S M(ADR)=""
 ;
 S ADR="" F  S ADR=$O(M(ADR)) Q:ADR=""  D SEND2EMV(ADR)
 ;
 Q
 ;
 ;
SEND2EMV(ADR) ;
 I ADR'[":" S ADR=ADR_":8080"
 S URL="http://"_ADR_"/SPICy"
 S FLOU=$$PATH_"tmpashou"_FLIND
 S CMD="curl -s -k -H ""Content-Type:application/json"" -d@"_FL_" "_URL_" -o "_FLOU
 S DZ=$$^W4DZ
 S ^[$$^W3MAIN]W4CMDEMV(DZ,$O(^W3CMDEMV(DZ,99999999),-1)+1)=CMD
 ZSY CMD
 S ER=$ZSY
 Q
 ;
 ;
PATH(STAM) ;
 Q "/tmp/" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMVCON
W4EMVCON(ST,STOUT,VUID) ; [ 29.08.23 17:57 ] [ 23.08.23 16:18 ] [ 22.08.23 11:11 ] 
 N (JB,%ARG,%REM,ST,STOUT,OUT,EMV3,VUID,UIDBIT)
 D ^%L1TS
 ;
 ZSY ST ; --- CURL
 ;
 N H,H2 S H=+$H,H2=$P($H,",",2)
 ;
 D DB(H,H2)
 ;
 I $ZSY Q "ERROR ZSY="_$ZSY
 ;
 S FILE=$$FLOU
 S GL=$$^W4MAIN("TMP")
 K @GL
 ;
 S RES=$$^%L1JSON(FILE,GL,"V") ; -- =1
 ;
 G TV1
TV() ;
TV1 ;
 M ^TMP1=^TMP ; ***
 ;
 S TMPEMV=$$^W4MAIN("TMPEMV")
 K @TMPEMV
 K OUT
 ;
 S HD=""
 S N2="" F  S N2=$O(@GL@(0,N2)) Q:N2=""  D
 .N TX,VL,A
 .S A=$G(^(N2))
 .S TX=$$FUNC^%UCASE($$SPA^%L1FRM($P(A,":")))
 .S VL=$$FUNC^%UCASE($$SPA^%L1FRM($P(A,":",2,20)))
 .S TX=$$CLRQ^W3SORD(TX)
 .S VL=$$CLRQ^W3SORD(VL)
 .S HD=HD_TX_":"_VL_","
 ;
 S @TMPEMV=$E(HD,1,$L(HD)-1)
 ;
 S N1="" F  S N1=$O(@GL@(N1)) Q:N1=""  D
 .S N2="" F  S N2=$O(@GL@(N1,N2)) Q:N2=""  D
 ..S A=$G(^(N2))
 ..D PARSE(N1,N2,A)
 ;
 M ^LV(H,H2,"EMVCON","OUT")=OUT
 ;
 S HZM=$$GETP^%W1PRM("HZM")
 ;
 ;;M ^TMPEMV1=^TMPEMV ; ***
 ;
 I HZM,'$$^W4CLOSE(HZM) D
 .N LAST S LAST=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .M @$$^W4ORD@(HZM,"EMV",LAST)=@TMPEMV
 ;
 ;
 I $G(OUT("STA"))?."-"1N.N D
 .S $E(STOUT,1,3)=$$TR($G(OUT("STA")),3)
 ;
 I '$G(UIDBIT) D
 .S $E(STOUT,24)=$S($E($G(OUT("MUTAG")))?1N:$E($G(OUT("MUTAG"))),1:" ")
 .S $E(STOUT,60)=$S($E($G(OUT("MANPIK")))?1N:$E($G(OUT("MANPIK"))),1:" ")
 .S $E(STOUT,25)=$S($E($G(OUT("SOLEK"))):$E($G(OUT("SOLEK"))),1:" ")
 ;
 I $G(OUT("VIZ")) D
 .S $E(STOUT,5,23)=$$TR($G(OUT("VIZ")),19)
 I $L($G(OUT("AUTHNO"))) S $E(STOUT,71,77)=$$TR($G(OUT("AUTHNO")),7)
 I $L($G(OUT("NMCARD"))) S $E(STOUT,104,118)=$$HBR^%L1FRM($G(OUT("NMCARD")),15)
 ;
 D DB1(H,H2,"EMVCON","STOUT",STOUT)
 ;
 K @GL
 S STA=$E(STOUT,1,3)
 S MSG=$G(OUT("RESMSG"))
 ;
 I $$^W4AUTHCD(STA) D
 .S MSG=$TR($G(OUT("SAPAKTEL"))_"^"_$G(OUT("SAPAK")),"""","")
 ;
 I STA="000",$G(OUT("UID")),$D(@$$^W4GL("W4EMVUID")@(OUT("UID"))),'$G(UIDBIT) S STA=990,MSG="PAIDED"
 ;
 I STA="000",$D(EMV3) D
 .N ARR,FLOU
 .S FLOU=$$FLOU
 .D FL2ARR^W4EMV3(FLOU)
 .N I,A,TRREC S A=""
 .F I=1:1 Q:'$D(ARR(I))  S A=A_ARR(I)
 .S TRREC=$$GET^W4EMV3(A,"settelment_record")
 .D REC2GL^W4EMV3(TRREC,GL,3000)
 ;
 S ^LV(H,H2,"EMVCON","MSG")=$G(MSG)
 D DB1(H,H2,"EMVCON","MSG",$G(MSG))
 Q "OK~"_STA_"~"_MSG_"~"_STOUT_"~~"_$G(OUT("UID"))_"~"_$G(VUID)
 ;
 ;
TR(VL,LN) ;
 Q $$TR^W4STRINW(VL,LN)
 ;
DIROU(STAM) ;
 Q $G(@$$^W4PRM@("ASH","PATHTRAN"))
 ;
 ;
PARSE(N1,N2,A) ; 
 N TX,VL
 S TX=$$FUNC^%UCASE($$SPA^%L1FRM($P(A,":")))
 S VL=$$FUNC^%UCASE($$SPA^%L1FRM($P(A,":",2,20)))
 S TX=$$CLRQ^W3SORD(TX)
 S VL=$$CLRQ^W3SORD(VL)
 ;
 I N1=0 D  Q
 .I TX="RESULT" S OUT("STA")=VL
 .I TX="RESULTMESSAGE" S OUT("RESMSG")=VL
 .I TX="SOLEK_NAME" S OUT("SOLEKNAME")=VL
 .I TX="SOLEK_PHONE" S OUT("SOLEKPHONE")=VL
 ;
 I N1=1 D
 .I TX="xtqn" S OUT("VIZ")=VL
 .I TX="witpn xeyi`" S OUT("AUTHNO")=VL
 .I TX="seqn 'qn" S OUT("MASOF")=VL
 .I TX="qihxk" S OUT("NMCARD")=$$INVH^%L1FRM(VL),VL=OUT("NMCARD")
 ;
 I N1=3!(N1=2) D
 .I TX="UID" S OUT("UID")=VL
 .I TX="VUID" S OUT("VUID")=VL
 .I TX="SOLEK" S OUT("SOLEK")=VL
 .I TX="SOLEK_COMP_NUMBER" S OUT("SAPAK")=VL
 .I TX="SOLEK_PHONE" S OUT("SAPAKTEL")=VL
 .I TX="ISSUER_AUTH_NUM" S OUT("AUTHNO")=VL
 .I TX="MUTAG" S OUT("MUTAG")=VL
 .I TX="MANPIK" S OUT("MANPIK")=VL
 ;
 S @TMPEMV@(N1,N2)=TX_":"_VL
 Q
 ;
FLOU(STAM) ;
 N FLOU
 S FLOU=$P(ST,"--output-file=",2)
 S FLOU=$P(FLOU," 2>")
 Q FLOU
 ;
DB(H,H2) ; 
 I $$GETP^%W1PRM("HZM") D
 .N VL S VL=$$GETP^%W1PRM("HZM")_"\"_$ZD($H,"DD.MM.YY 24:60")
 .D DB1(H,H2,"EMVCON","HZM",VL)
 D DB1(H,H2,"EMVCON","I_ST",ST)
 D DB1(H,H2,"EMVCON","I_ST-ZSY",$ZSY)
 D DB1(H,H2,"EMVCON","STOUT0",$G(STOUT))
 D DB1(H,H2,"EMVCON","VUID",$G(VUID))
 Q
 ;
DB1(H,H2,IND,RKV,VL)
 S ^LV(H,H2,IND,RKV)=$G(VL)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMVN
W4EMVN(FUNC,PARAM,HZM) ; [ 30.03.26 07:43 ] [ 29.10.25 17:18 ] [ 05.08.25 13:05 ] 
 N (JB,%ARG,FUNC,PARAM,HZM)
 ;
 D ^%L1TS
 ;;S ^AA("W4EMVN","FUNC")=FUNC
 ;;S ^AA("W4EMVN","PARAM")=$G(PARAM)
 ;;S ^AA("W4EMVN","HZM")=$G(HZM)
 ;
 D KILL^%W1PRM("EMVNER")
 D INIT($G(PARAM))
 ;
 D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 ;
 S @GLPR@(DZ,SH)="W4EMVN\---------------- "_$ZD($H,"DD.MM.YY 24:60")_"\"_$G(FUNC)_"\"_$G(PARAM)_"\"_$G(HZM)
 ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 ;
 I FUNC="GETTOKEN" D GETTOKEN G END
 ;
 S TKTIME=$$TOKENTIME
 ;
 I $$EMV4IP^W4PRM G OFL
 ;
 I 'TKTIME!($$DIF^%L1TIME($H,TKTIME)>(23*60)) D GETTOKEN
 ;
 S TOKEN=$$TOKEN
 ;
 I $L(TOKEN)<10 D  G END
 .S @TMPRSP@(1)="{""result_code"": ""NOTTOKEN"";""result_msg"": ""TOKEN NOT EXIST""}"
 ;
 I $G(CLIENTID)="" D  G END
 .S @TMPRSP@(1)="{""result_code"": ""NOBRIDGEID"";""result_msg"": ""BRIDGEID NOT DEFINED""}"
 ;
OFL ;
 O FILEPRM:(WRITE:NEWVERSION) 
 U FILEPRM
  D PRM(FUNC)
 C FILEPRM
 ;
 O FILEDATA:(WRITE:NEWVERSION) 
 U FILEDATA
  D DATA(FUNC,$G(PARAM))
 C FILEDATA
 ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 I $$EXIST^%L1ZOS(FILEOU) ZSY "rm "_FILEOU
 ;
 N WAIT S WAIT=$G(@$$^W4PRM@("WAITEMV"))
 I WAIT<30 S WAIT=90
 ;
 S CMD="curl -m "_WAIT_" -s -K '"_FILEPRM_"' --location '"_($$URL_CLIENTID)_"' -d @'"_FILEDATA_"' -o '"_FILEOU_"'"
 ZSY CMD
 ;
 S ER=$ZSY
 D PROT(CMD,ER)
 ;
 D SETNP(DV)
 ;
 I ER D  G END
 .S @TMPRSP@(1)="{""result_code"": "_-ER_"";""result_msg"": ""$ZSY="_ER_"""}"
 ;
 D READRESP(FILEOU)
END I $G(ER) D PUT^%W1PRM("EMVNER",ER)
 Q
 ;
 ;
INIT(PARAM) ;
 S VUID=$P(PARAM,";")
 S DZ=$P(VUID,"_")
 I DZ="" S DZ=$$^W4DZ
 S DV=$P(VUID,"_",2)
 I DV="" S DV=$$^W4MYDVN
 S SEC=$P(VUID,"_",3)
 S HZM=$P(VUID,"_",4)
 ;
 D FLNM
 ;
 S GROUPID="Damka"
 S CLIENTID=$$EMVID(DV)
 ;
 S FILEPRM=FLNM_".prm"
 S FILEOU=FLNM_".out"
 S FILEDATA=FLNM_".data"
 ;
 C FILEPRM:(DELETE) 
 C FILEDATA:(DELETE) 
 C FILEOU:(DELETE) 
 Q
 ;
 ;
EMVID(DV) ;
 N ST S ST=$G(@$$^W4GL("W4POSEMV")@(DV))
 ;;Q "2290251608__1409108" ; *** 03/07/24
 Q $P(ST,"\",4)
 ;
FLNM ;
 S FLNM="/tmp/tmpemvn"_VUID
 Q
 ;
PROT(CMD,ER) ;
 N GLPR D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 S @GLPR@(DZ,SH,"CMD")=CMD
 S @GLPR@(DZ,SH,"ZSY")=ER_"\"_$ZD($H,"DD.MM.YY 24:60")_"\"_$G(HZM)
 Q
 ;
 ;
PRM(FUNC) ;
 D WRITEPRM("POST")
 Q
 ;
 ;
DATA(FUNC,PARAM)
 I FUNC="GETSTATUS" D GETSTATUS
 I FUNC="RESETSTATE" D RESETSTATE
 I FUNC="TRAN" D TRAN(PARAM,0)
 I FUNC="TRANCNP" D TRAN(PARAM,1)
 I FUNC="RESTORE" D RESTORE(PARAM)
 I FUNC="REFUND" D REFUND(PARAM) 
 I FUNC="GETPARAMS" D GETPARAMS 
 I FUNC="SEND" D SEND
 I FUNC="EMVCIB" D EMVCIB(PARAM)
 I FUNC="EMVTNB" D EMVCIB(PARAM)
 I FUNC="DISPQR" D DISPQR(PARAM)
 I FUNC="RESTQR" D RESTQR(PARAM)
 Q
 ;
 ;-------------------------------- FUNCTIONS ------------------------
 ;
GETSTATUS ;
 W "{",!
  D NID("GETSTATUS")
  W """method"": ""Get_Status"" " 
 W "}",!
 Q
 ;
 ;
RESETSTATE ;
 W "{",!
  D NID("RESETSTATE")
  W """method"": ""Reset_State"" " 
 W "}",!
 Q
 ;
 ;
TRAN(PARAM,CNP) ;
  N POSID,SUM,TRTYPE
  N DBL,DBLPER,WAITCRD
  ;
  S DBL=+$G(@$$^W4PRM@("EMVN","CHKDBL"),1)
  S DBLPER=+$G(@$$^W4PRM@("EMVN","DBLPER"),1200)
  I DBLPER<20 S DBLPER=20
  S WAITCARD=+$G(@$$^W4PRM@("EMVN","WAITCARD"),90)
  ;
  ;;S PARAM=$$^W4DZ_"_"_$$^W4MYDVN_"_"_$P($H,",",2)_"_"_+$G(HZM) ; ***
  ;;S PARAM=PARAM_";500;1;1;0;5326105300985846;2604;658;307376384" ;***
  ;;S PARAM=PARAM_";500;1;1;0;4580160014629200;1;2701;872;307376384"
  D PRS^%L1FRM(PARAM,"VUID;SUM;TRTYPE;PN;P1;CARD;YYMM;CVV;TZ;AUTHNO;SUGAS",";")
  S POSID=DV
  ;
  D RKV1("{")
    I '$G(CNP) D
    .D RKV("method","Perform_Transaction",1)
    I $G(CNP) D
    .D RKV("method","Perform_CNP_Transaction",1)
    ;
    D NID("TRAN")
    ;
    D RKV("details","{",0,1)
     D RKV("trans_POS_id",VUID,1)
     D RKV("pos_id",POSID,1)
     D RKV("amount",+SUM)
     D RKV("currency_code",376)
     D RKV("emv_trans_type",+TRTYPE)
     D RKV("conversion_rate","1.0")
     I '$G(SUGAS) S SUGAS=1 
     D RKV("credit_terms",SUGAS)
     D RKV("num_payments",+PN)
     D RKV("first_payment",+P1)
     D RKV("payments_link",0)
     ;
     I $G(CNP) D
     .S CNPTRTYPE=2
     .I $G(HZM),$$HZM^W4MSD(HZM) S CRNTRTYPE=1
     .D RKV("CNP_transaction_type",CNPTRTYPE)
     .D RKV("card_number",CARD,1)
     .D RKV("expiration_date_yymm",YYMM,1)
     .D RKV("cvv",CVV,1)
     .D RKV("id_num",TZ,1)
     ;
     D RKV("is_preapproved","false")
     D RKV("authorization","",1)
     D RKV("additional_info",HZM,1)
 ;
     S DBL=$S(DBL:"true",1:"false")
     D RKV("check_double_trans",DBL)
     D RKV("double_trans_check_period_sec",+DBLPER,0,$S($G(CNP):1,1:0))
     I '$G(CNP) D
     .D RKV("card_reading_timeout_sec",+WAITCARD,0,1) ; -- 27/10/24 -> CMNT
    D RKV1("}")
  D RKV1("}")
 Q
 ;
 ;
REFUND(PARAM) ;
 ;
 D PRS^%L1FRM(PARAM,"VUID;TRPOSID;POSID",";")
 ;
 D RKV1("{")
  D NID("REFUND")
  D RKV("method","Cancel_Transaction",1)
  D RKV("details","{",0,1) 
   D RKV("trans_POS_id",TRPOSID,1)
   D RKV("pos_id",POSID,1,1)
  D RKV1("}")
 D RKV1("}")
 Q
 ;
 ;
RESTORE(TRPOSID) ;
 ;;D PRS^%L1FRM(PARAM,"VUID;TRPOSID;POSID",";")
 ;
 D RKV1("{")
  D NID("RESTORE")
  D RKV("method","Get_POS_Trans_Details",1)
  D RKV("details","{",0,1) 
   D RKV("trans_POS_id",TRPOSID,1,1)
  D RKV1("}")
 D RKV1("}")
 Q
 ;
GETPARAMS ;
 N DV S DV=$$^W4MYDVN
 D RKV1("{")
  D NID("GETPARAMS")
  D RKV("method","Get_TPE_Params",1,1)
 D RKV1("}")
 Q
 ;
 ;
SEND ;
 D RKV1("{")
  D NID("SEND")
  D RKV("method","Perform_Periodic_Update",1,1)
 D RKV1("}")
 Q
 ;
 ;
EMVCIB(PARAM) ;
 S VUID=PARAM
 ;
 D RKV1("{")
  D NID("EMVCIB")
  D RKV("method","Read_MSR_Card",1)
  D RKV("details","{",0,1) 
   D RKV("message","Pass Card",1,0)
   D RKV("timeout_sec",30,0,1)
  D RKV1("}")
 D RKV1("}")
 Q
 ;
 ;
DISPQR(PARAM) ;
 N URL,IMG
 S IMG=$P(PARAM,";")_".img"
 S URL=$P(PARAM,";",2) 
 ;
 D RKV1("{")
  D NID("DISPQR")
  D RKV("method","Display_QR_Code",1)
  D RKV("details","{",0,1) 
   D RKV("img_file_name",IMG,1)
   D RKV("hyperlink",URL,1)
   D RKV("timeout_sec",60,0,1)
  D RKV1("}")
 D RKV1("}")
 Q
 ;
 ;
RESTQR(PARAM) ;
 N URL,IMG
 ;
 D RKV1("{")
  D NID("DISPQR")
  D RKV("method","Reset_State",1,1)
 D RKV1("}")
 Q
 ;
 ;
GETTOKEN ;
 N FUNC S FUNC="GETTOKEN"
 D INIT($G(PARAM))
 K @$$^W4GL("W4EMVN")@(DV,"TOKEN")
 S TOKEN=""
 ZSY "rm "_FILEOU 
 S CMD=$$WEBL^W3MAIN_"w4token.sh > "_FILEOU
 ;
 ZSY CMD
 ;
 S ER=$ZSY
 D PROT(CMD,ER)
 I ER U 0 W "ERROR "_$ZSY,! Q
 ;
 D READRESP(FILEOU,1)
 ;
 N A,I
 ;
 F I=1:1 Q:'$D(@TMPRSP@(I))  S A=$G(^(I)) D
 .I A["token" S TOKEN=$$SPA^%L1FRM($P(A,":",2,250))
 ;
 I 'ER D
 .I $E(TOKEN,$L(TOKEN))="," S TOKEN=$E(TOKEN,1,$L(TOKEN)-1)
 .I $E(TOKEN)="""" S TOKEN=$E(TOKEN,2,$L(TOKEN))
 .I $E(TOKEN,$L(TOKEN))="""" S TOKEN=$E(TOKEN,1,$L(TOKEN)-1)
 .;
 .S @$$^W4GL("W4EMVN")@(DV,"TOKEN")=TOKEN
 .S @$$^W4GL("W4EMVN")@(DV,"TOKEN","TIME")=$H
 Q
 ;
 ;
WRITEPRM(MTD)
 I $G(MTD)="" S MTD="POST"
 W "-X "_MTD,!
 I $G(TOKEN)'="" W "-H ""Authorization: Bearer "_TOKEN_""" ",!
 W "-H ""Content-Type: application/json"" ",!
 ;;W "--location ""https://bridge.kupot.co.il/api/bridge/Damka/"_CLIENTID_""" "
 Q
 ;
RKV(NM,VL,STR,NOZPT) ;
 N ST
 S ST=""""_NM_""":"
 I $G(STR) S ST=ST_""""
 S ST=ST_VL
 I $G(STR) S ST=ST_""""
 I '$G(NOZPT) S ST=ST_","
 W ST,!
 ;
 D PROTRKV(ST)
 Q
 ;
 ;
RKV1(VL)
 N ST S ST=VL
 W ST,!
 D PROTRKV(ST)
 Q
 ;
 ;
PROTRKV(ST) ;
 N GLPR D GLPR
 N SH S SH=+$O(@GLPR@(DZ,99999),-1)
 N SH1 S SH1=$O(@GLPR@(DZ,SH,"CONT",99999),-1)+1
 S @GLPR@(DZ,SH,"CONT",SH1)=ST
 Q
 ;
 ;
READRESP(FILEOU,NOUPR) ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 ;
 I '$$EXIST^%L1ZOS(FILEOU) Q
 N FILEDOS S FILEDOS=FILEOU
 ;;I $$EMV4IP^W4PRM D
 ;;.S FILEDOS=$P(FILEOU,".out")_".dos"
 ;;.ZSY "iconv -f utf-8 -t cp862 "_FILEOU_" -o "_FILEDOS
 C FILEDOS
 O FILEDOS:(REWIND:READONLY)
 N GLPR D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 N SH1
 S SH1=0
 N DV S DV=$$^W4MYDVN
 ;
 S K0=0
 F  U FILEDOS R A Q:$ZEOF  D
 .S K0=K0+1,^AA("W4EMVN-REP",K0,"A")=$E(A,1,1800)
 .N K F K=1:1:$L(A,",") D
 ..S SH1=SH1+1
 ..N ST,ST1 S ST=$$SPA^%L1FRM($P(A,",",K))
 ..I $$EMV4IP^W4PRM S ST=$$RPL^%L1FRM(ST,"{""details"":","")
 ..I $G(FUNC)="GETTOKEN",ST["""token""" S ST1=ST
 ..E  S ST1=$P(ST,":")_":"_$$VAL(ST)
 ..S @TMPRSP@(SH1)=ST1
 ..S @GLPR@(DZ,SH,"RESP",DV,+$G(HZM),SH1)=ST1
 ;
 C FILEDOS
 Q
 ;
 ;
TMPRSP() Q $$^W4MAIN("TMPRSP")
 ;
TOKEN() ;
 Q $G(@$$^W4GL("W4EMVN")@(DV,"TOKEN"))
 ;
TOKENTIME() ;
 Q $G(@$$^W4GL("W4EMVN")@(DV,"TOKEN","TIME"))
 ;
NP(DV) ;
 Q DZ_"_"_DV_"_"_SEC_"_"_+$G(HZM)
 ;
SETNP(DV)
 S @$$^W4GL("W4EMVN")@(DV,"NP")=$$NP(DV)
 Q
 ;
NID(FUNC) ;
 N NP S NP=$$NP(DV)
 N NID S NID=(DV*1000)+NP
 D RKV("id",NID,1)
 Q
 ;
URL()
 N URL
 I $$EMV4IP^W4PRM D  Q URL
 .N IP S IP=$$EMVADR^W4POSEMV($$^W4MYDVN)
 .S IP=$$SPA^%L1FRM(IP)
 .S URL="http://"_IP_":8080/JTerminal"
 ;
 Q "https://bridge.kupot.co.il/api/bridge/Damka/"
 ;
 ;
GLPR ;
 S GLPR=$$^W4GL("W4EMVNPR")
 Q
 ;
VAL(ST) ; 
 N VAL S VAL=$P(ST,":",2,250)
 I $$EMV4IP^W4PRM Q $$INVH^%L1FRM($$U2D^%L1CNV(VAL))
 Q $$U2H^%L1CNV(VAL)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMVNPR
W4EMVNPR(DAT,ORDPR) ; [ 10.12.25 14:10 ] [ 10.07.25 07:45 ] [ 20.06.25 19:45 ] 
 N (JB,%ARG,DAT,ORDPR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 S DT=$$^%L1DC(DAT,3)
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 W "<p style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT("EMVNPR",$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 ;
 I $$EMV^W4PRM<4 G OLDPROT 
 ;
 S GL=$$^W4GL("W4EMVNPR")
 S GL0=GL_"("_DT
 ;
 S PRVW=0 I '$G(ORDPR) S PRVW=1
 S N=GL0_")" F  S N=$Q(@N) Q:N=""  Q:N'[GL0  D
 .S IND=N I IND["|" S IND=$P(IND,"|",3)
 .S ST=$G(@N)
 .
 .I ST["\----------" D
 ..I $G(ORDPR) S PRVW=($P(ST,"\",5)=ORDPR)
 ..S ST=$P(ST,"\",1,2)_"\<B>"_$P(ST,"\",3)_"</B>"_"\"_$P(ST,"\",4,20)
 ..I $P(ST,"\",5) S ST=$P(ST,"\",1,4)_" <B>"_$$^%W1DICT("ORDER")_" : "_$P(ST,"\",5)_"</B>"
 ..I PRVW W "<br>",!
 .
 .Q:'PRVW
 .
 .I ST?1"{""key"":".E!(ST?1"""value"":".E)!(ST?1"""report"":".E)!(ST?1"""result_msg"":".E) D
 .. S ST=$P(ST,":")_":"_$$H2U^%L1FRM($P(ST,":",2,200))
 .
 .I (IND["""RESMSG")!(IND["NMCARD") D  ;!(IND["""OUT-ANS""") D
 ..S ST=$$H2U^%L1FRM(ST)
 .
 .W IND," = ",ST,"<br>",!
 W "</div>",!
 Q
 ;
 ;
OLDPROT ; 
 N (JB,%ARG,DT)
 S GL=$$^W4GL("LV")
 S GL0=GL_"("_DT
 S ORD=$G(%ARG("ORD"))
 ;
 I 'ORD D  Q
 .S N=GL0_")" F  S N=$Q(@N) Q:N=""  Q:N'[GL0  D
 ..S IND=N I IND["|" S IND=$P(IND,"|",3)
 ..S ST=$G(@N)
 ..I ST["-------" W "<hr>" Q
 ..I IND["MSG" S ST=$$H2U^%L1FRM(ST) 
 ..I IND["RESPJSON" S ST=$$U2D^%L1CNV(ST,1) 
 ..I IND["""HZM""" S ST="<b>"_ST_"</b>"
 ..W IND," = ",ST,"<br><br>",!
 ;
 ; ---------------------------- ORD -----------------------
 N A,BG,END S BG="",END=0
 S N=GL0_")" F  S N=$Q(@N) Q:N=""  Q:N'[GL0  D  Q:END
 .S A=$G(@(N))
 .I A["-------" S BG0=N
 .S IND=N I IND["|" S IND=$P(IND,"|",3)
 .I IND[",""HZM""",$P(A,"\")=ORD S BG=BG0,M(BG)="" 
 ;
 I $D(M)>9'="" D
 .S BG="" F  S BG=$O(M(BG)) Q:BG=""  D
 ..W "<hr>",!
 ..S N=BG,END=0 F  S N=$Q(@N) Q:N=""  D  Q:END
 ...S IND=N I IND["|" S IND=$P(IND,"|",3)
 ...S A=$G(@(N))
 ...I A["-------" S END=1 Q
 ...I IND["MSG" S A=$$H2U^%L1FRM(A) 
 ...I IND["RESPJSON" S A=$$U2D^%L1CNV(A,1) 
 ...W IND," = ",A,"<br><br>",!
 ;
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EMVREP
W4EMVREP(PARAM) ; [ 06.08.25 01:48 ] [ 15.05.25 05:59 ] [ 14.05.25 15:00 ] 
 N (JB,%ARG,FUNC,PARAM,MBC)
 ;
 D INIT; - > DT1,DT2 (GetBroadcastsSummaryByDate) or FN (GetStatisRecord)
 ;
 D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 ;
 S @GLPR@(DZ,SH)="W4EMVREP\---------------- "_$ZD($H,"DD.MM.YY 24:60")_"\"_$G(FUNC)
 ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 ;
 O FILEPRM:(WRITE:NEWVERSION) 
 U FILEPRM
  D PRM(FUNC)
 C FILEPRM
 ;
 O FILEDATA:(WRITE:NEWVERSION) 
 U FILEDATA
  D DATA(FUNC)
 C FILEDATA
 ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 I $$EXIST^%L1ZOS(FILEOU) ZSY "rm "_FILEOU
 S CMD="curl -m 90 -s -K '"_FILEPRM_"' --location '"_$$URL_FUNC_"' -d @'"_FILEDATA_"' -o '"_FILEOU_"'"
 ZSY CMD
 ;
 S ER=$ZSY
 ;
 D PROT(CMD,-ER)
 I ER D  G END
 .S @TMPRSP@(1)="{""StatusCode"": "_-ER_"";""ErrorMessage"": ""$ZSY="_ER_"""}"
 ;
 D READRESP(FUNC,FILEOU)
 I ER G END
 ;
 ;;S ND=$O(@$$^W4GL("DUMP")@(99999),-1)+1
 ;;S ASM="" F  S ASM=$O(MBC(ASM)) Q:ASM=""  D SETDUMP(ASM)
 ;
 I FUNC="GetStatisRecord" D
 .D GETSTREC(ASM) 
 .D SETDMP(ASM)
 ;
END I $G(ER) D PUT^%W1PRM("EMVREPER",ER)
 Q
 ;
 ;
INIT ;
 D KILL^%W1PRM("EMVREPRER")
 ;
 S FUNC=$P(PARAM,"~")
 S ZPT=","
 ;
 I FUNC="GetBroadcastsSummaryByDate" D
 .S DT1=$P(PARAM,"~",2)
 .S DT2=$P(PARAM,"~",3)
 ;
 I FUNC="GetStatisRecord" D
 .S FN=$P(PARAM,"~",2)
 .S ASM=$P(PARAM,"~",3)
 ;
 S DZ=$$^W4DZ
 ;
 S H1=$P($H,",")
 S H2=$P($H,",",2)
 S TERM=$$GETTERM()
 ;
 D FLNM
 ;
 S FILEPRM=FLNM_".prm"
 S FILEOU=FLNM_".out"
 S FILEDATA=FLNM_".data"
 ;
 C FILEPRM:(DELETE) 
 C FILEDATA:(DELETE) 
 C FILEOU:(DELETE) 
 Q
 ;
 ;
GETTERM() ;
 N TRM S TRM=""
 N N S N="" F  S N=$O(@$$^W4GL("W4POSEMV")@(N)) Q:N=""  D  Q:TRM
 .N ST S ST=$G(@$$^W4GL("W4POSEMV")@(N))
 .S TRM=$P($P(ST,"\",4),"__",2)
 Q TRM
 ;
FLNM ;
 S FLNM="/tmp/emvrep"_H1_"_"_H2_"_"_FUNC
 Q
 ;
PROT(CMD,ER) ;
 N GLPR D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 S @GLPR@(DZ,SH)=CMD
 S @GLPR@(DZ,SH,"ZSY")=ER_"\"_$ZD($H,"DD.MM.YY 24:60")
 Q
 ;
 ;
PRM(FUNC) ;
 W "-X POST",!
 W "-H ""Content-Type: application/json"" ",!
 Q
 ;
 ;
DATA(FUNC,PARAM)
 I FUNC="GetBroadcastsSummaryByDate" D GETDATS
 I FUNC="GetStatisRecord" D GETSTAT(FN)
 I FUNC="Broadcast" D SEND
 Q
 ;
 ;-------------------------------- FUNCTIONS ------------------------
 ;
BGDATA ;
 W """terminalNumber"": """_$$GETTERM_""",",!
 W """user"": ""DamkaSysAPI"",",!
 W """password"": ""q4QOkMGi"""_ZPT,!
 Q
 ;
GETDATS ;
 S DAT1=$$DAT(DT1)_" 00:00"
 S DAT2=$$DAT(DT2)_" 23:59"
 W "{",!
  D BGDATA
  W """startDate"": """_DAT1_""",",!
  W """endDate"": """_DAT2_"""",!
 W "}",! 
 Q
 ;
 ;
GETSTAT(FN) ;
 W "{",!
  D BGDATA
  W """FileNumber"": """_FN_""",",!
  W """currency"": ""1"",",!
 W "}",!
 Q
 ;
 ;
SEND ;
 N ZPT S ZPT=""
 W "{",!
  D BGDATA
 W "}",!
 Q
 ;
 ;
RKV(NM,VL,STR,NOZPT) ;
 N ST
 S ST=""""_NM_""":"
 I $G(STR) S ST=ST_""""
 S ST=ST_VL
 I $G(STR) S ST=ST_""""
 I '$G(NOZPT) S ST=ST_","
 W ST,!
 ;
 D PROTRKV(ST)
 Q
 ;
 ;
RKV1(VL)
 N ST S ST=VL
 W ST,!
 D PROTRKV(ST)
 Q
 ;
 ;
PROTRKV(ST) ;
 N GLPR D GLPR
 N SH S SH=+$O(@GLPR@(DZ,99999),-1)
 N SH1 S SH1=$O(@GLPR@(DZ,SH,"CONT",99999),-1)+1
 S @GLPR@(DZ,SH,"CONT",SH1)=ST
 Q
 ;
 ;
READRESP(FUNC,FILEOU) ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 ;
 N GLPR D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 N SH1
 S SH1=0
 N DV S DV=$$^W4MYDVN
 ;
 I '$$EXIST^%L1ZOS(FILEOU) Q
 N FILEDOS S FILEDOS=FILEOU
 C FILEDOS
 ;
 O FILEDOS:(REWIND:READONLY)
 ;
 N K,K0,A S K0=0
 F  U FILEDOS R A Q:$ZEOF  D
 .S K0=K0+1
 .N K F K=1:1:$L(A,",") D
 ..S SH1=SH1+1
 ..N ST,ST1 S ST=$$SPA^%L1FRM($P(A,",",K))
 ..S ST1=$P(ST,":")_":"_$$U2H^%L1CNV($P(ST,":",2,250))
 ..S @TMPRSP@(SH1)=ST1
 ..S @GLPR@(DZ,SH,"RESP",DV,0,SH1)=ST1
 ;
 C FILEDOS
 ;
 S BCN=0,TERM=""
 ;
 I FUNC="GetBroadcastsSummaryByDate" D
 .F SH1=1:1 Q:'$D(@TMPRSP@(SH1))  D  Q:ER
 ..N A S A=$G(^(SH1))
 ..S A=$$FUNC^%UCASE(A)
 ..I A["STATUSCODE" S STAT=$$GET(A,"STATUSCODE") I STAT S ER=STAT Q
 ..I A["BRODCASTNUM" S BCN=$$GET(A,"BRODCASTNUM")
 ..Q:'BCN
 ..I A["TERMINALNUMBER" D SETMBC(A,BCN,"TERMINALNUMBER","TERM")
 ..I A["FILENUMBER" D SETMBC(A,BCN,"FILENUMBER","FN")
 ..I A["CREATEDDATE" D SETMBC(A,BCN,"CREATEDDATE","CRDAT")
 ..I A["AMOUNT" D SETMBC(A,BCN,"AMOUNT","AMOUNT")
 ;
 I FUNC="GetStatisRecord" D
 .F SH1=1:1 Q:'$D(@TMPRSP@(SH1))  D  Q:ER
 ..N A S A=$G(^(SH1))
 ..S A=$$FUNC^%UCASE(A)
 ..I A["STATUSCODE" S STAT=$$GET(A,"STATUSCODE") I STAT S ER=STAT Q
 ..I A["""RESULT""" D
 ...S RES=$$GET(A,"RESULT") Q:RES=""
 ...S @GLPR@(DZ,SH,"RESP",DV,0,SH1)=A
 ...S @GLPR@(DZ,SH,"RESP",DV,0,SH1,"RES")=RES
 ...S MBC(ASM,"RES")=RES
 Q
 ;
 ;
TMPRSP() Q $$^W4MAIN("TMPRSP")
 ;
URL()
 Q "https://gateway20.pelecard.biz/services/"
 ;
GLPR ;
 S GLPR=$$^W4GL("W4EMVREPPR")
 Q
 ;
DAT(DT) ; 
 N DAT S DAT=$$^%L1DC(DT,1) 
 Q $P(DAT,".")_"/"_$P(DAT,".",2)_"/20"_$P(DAT,".",3) 
 ;
SETMBC(A,BCN,PRM1,PRM2) ; 
 S @PRM2=$$GET(A,PRM1)
 S MBC(BCN,PRM2)=@PRM2
 I PRM2="CRDAT" D
 .N DAT,TIME
 .N A S A=MBC(BCN,"CRDAT")
 .S DAT=$P(A," ")
 .S TIME=$P(A," ",2)
 .N DT S DT=$$^%L1DC(DAT,3)
 .S MBC(BCN,"DAT")=$ZD(DT,"DD.MM.YY")
 .S MBC(BCN,"TIME")=$ZD(TIME,":",1,2)
 Q 
 ;
GET(A,PRM) ; 
 N ST
 I $G(A)="" Q ""
 I $G(PRM)="" Q ""
 I A'[PRM Q ""
 S ST=$P(A,""""_PRM_"""",2)
 S ST=$P(ST,",")
 S ST=$P(ST,"]") 
 S ST=$P(ST,"}") 
 I ST[":" S ST=$P(ST,":",2,200) 
 S ST=$$SPA^%L1FRM(ST) 
 I $E(ST)="""" S ST=$E(ST,2,$L(ST)-1)
 Q $$SPA^%L1FRM(ST) 
 ;
 ;
SETDUMP(ASM) ;
 N CRDAT,DT,TM,IND,ND,ST
 ;
 S CRDAT=$G(MBC(ASM,"CRDAT"))
 S ND=$O(@$$^W4GL("DUMP")@(999999),-1)+1
 ;
 S DT=$$^%L1DC($P(CRDAT," "),3)
 S TM=$P(CRDAT," ",2)
 S TM=TM*3600+($P(TM,":",2)*60)
 S IND=DT_$TR($J(TM,5)," ",0)_1
 S @$$^W4GL("DUMP1")@(IND)=ND
 S ST=$J($G(MBC(ASM,"AMOUNT"))*.01,2,2)
 S $P(ST,"|",5)=ASM
 S $P(ST,"|",6)=$$T^%L1TIME(TM)
 S $P(ST,"|",7)=$ZD(DT,"DD.MM.YY")
 S @$$^W4GL("DUMP")@(ND)=ST
 Q
 ;
 ;
GETSTREC(ASM) 
 ;
 N ST S ST=$G(MBC(ASM,"RES")) Q:ST=""
 S MBC(ASM,"SIHB")=+$E(ST,55,55+8)
 S MBC(ASM,"SVHB")=+$E(ST,81,81+8)
 S MBC(ASM,"SDHB")=+$E(ST,107,107+8)
 S MBC(ASM,"SAHB")=+$E(ST,133,133+8)
 S MBC(ASM,"SLHB")=+$E(ST,159,159+8)
 ;
 S MBC(ASM,"SIZB")=+$E(ST,68,68+8)
 S MBC(ASM,"SVZB")=+$E(ST,94,94+8)
 S MBC(ASM,"SDZB")=+$E(ST,120,120+8)
 S MBC(ASM,"SAZB")=+$E(ST,146,146+8)
 S MBC(ASM,"SLZB")=+$E(ST,172,172+8)
 ;
 S MBC(ASM,"QIHB")=+$E(ST,51,51+3)
 S MBC(ASM,"QVHB")=+$E(ST,77,77+3)
 S MBC(ASM,"QDHB")=+$E(ST,103,103+3)
 S MBC(ASM,"QAHB")=+$E(ST,129,129+3)
 S MBC(ASM,"QLHB")=+$E(ST,155,155+3)
 ;
 S MBC(ASM,"QIZB")=+$E(ST,64,64+3)
 S MBC(ASM,"QVZB")=+$E(ST,90,90+3)
 S MBC(ASM,"QDZB")=+$E(ST,116,116+3)
 S MBC(ASM,"QAZB")=+$E(ST,142,142+3)
 S MBC(ASM,"QLZB")=+$E(ST,168,168+3)
 ;
 N SUMH S SUMH=0
 N I F I="SIHB","SVHB","SDHB","SAHB","SJHB","SLHB" S SUMH=SUMH+$G(MBC(ASM,I))
 S MBC(ASM,"SUMH")=SUMH
 ;
 N SUMZ S SUMZ=0
 N I F I="SIZB","SVZB","SDZB","SAZB","SJHZ","SLZB" S SUMZ=SUMZ+$G(MBC(ASM,I))
 S MBC(ASM,"SUMZ")=SUMZ
 ;
 N QNH S QNH=0
 N I F I="QIHB","QVHB","QDHB","QAHB","QJHB","QLHB" S QNH=QNH+$G(MBC(ASM,I))
 S MBC(ASM,"QNH")=QNH
 ;
 N QNZ S QNZ=0
 N I F I="QIZB","QVZB","QDZB","QAZB","QJHZ","QLZB" S QNZ=QNZ+$G(MBC(ASM,I))
 S MBC(ASM,"QNZ")=QNZ
 ;
 Q
 ;
 ;
SETDMP(ASM) ; 
 N ST
 S ST=$G(MBC(ASM,"SUMH"))-$G(MBC(ASM,"SUMZ")) 
 S $P(ST,"|",2)=$G(MBC(ASM,"SUMZ"))
 S $P(ST,"|",3)=$G(MBC(ASM,"SUMH"))
 S $P(ST,"|",5)=ASM
 N TIME S TIME=$P($P($G(MBC(ASM,"CRDAT"))," ",2),":",1,2)
 S $P(ST,"|",6)=TIME
 ;
 N DAT S DAT=$P($G(MBC(ASM,"CRDAT"))," ")
 S DAT=$$^%L1DC(DAT,3)
 S DAT=$ZD(DAT,"DD.MM.YY")
 S $P(ST,"|",7)=DAT
 ;
 S $P(ST,"|",8)=$G(MBC(ASM,"SIHB"))
 S $P(ST,"|",9)=$G(MBC(ASM,"SIZB"))
 S $P(ST,"|",10)=$G(MBC(ASM,"SVHB"))
 S $P(ST,"|",11)=$G(MBC(ASM,"SVZB"))
 S $P(ST,"|",12)=$G(MBC(ASM,"SDHB"))
 S $P(ST,"|",13)=$G(MBC(ASM,"SDZB"))
 S $P(ST,"|",14)=$G(MBC(ASM,"SAHB"))
 S $P(ST,"|",15)=$G(MBC(ASM,"SAZB"))
 S $P(ST,"|",16)=$G(MBC(ASM,"SJHB"))
 S $P(ST,"|",17)=$G(MBC(ASM,"SJZB"))
 S $P(ST,"|",18)=$G(MBC(ASM,"SLHB"))
 S $P(ST,"|",19)=$G(MBC(ASM,"SLZB"))
 ;
 N BG S BG=20
 S $P(ST,"|",BG+1)=$G(MBC(ASM,"QIHB"))
 S $P(ST,"|",BG+2)=$G(MBC(ASM,"QIZB"))
 S $P(ST,"|",BG+3)=$G(MBC(ASM,"QVHB"))
 S $P(ST,"|",BG+4)=$G(MBC(ASM,"QVZB"))
 S $P(ST,"|",BG+5)=$G(MBC(ASM,"QDHB"))
 S $P(ST,"|",BG+6)=$G(MBC(ASM,"QDZB"))
 S $P(ST,"|",BG+7)=$G(MBC(ASM,"QAHB"))
 S $P(ST,"|",BG+8)=$G(MBC(ASM,"QAZB"))
 S $P(ST,"|",BG+9)=$G(MBC(ASM,"QJHB"))
 S $P(ST,"|",BG+10)=$G(MBC(ASM,"QJZB"))
 S $P(ST,"|",BG+11)=$G(MBC(ASM,"QLHB"))
 S $P(ST,"|",BG+12)=$G(MBC(ASM,"QLZB"))
 ;
 N Q,I S Q=0 F I="I","V","D","A","J","L" S Q=Q+$G(MBC(ASM,"Q"_I_"HB"))
 S MBC(ASM,"QNH")=Q
 S Q=0 F I="I","V","D","A","J","L" S Q=Q+$G(MBC(ASM,"Q"_I_"ZB"))
 S MBC(ASM,"QNZ")=Q
 ;
 S $P(ST,"|",BG+13)=$G(MBC(ASM,"QNH"))
 S $P(ST,"|",BG+14)=$G(MBC(ASM,"QNZ"))
 S $P(ST,"|",4)=MBC(ASM,"QNH")+MBC(ASM,"QNZ")
 ;
 K @$$^W4GL("DUMP")@(ASM)
 S @$$^W4GL("DUMP")@(ASM)=ST
 ;
 D SETDMPPC(ASM)
 ;
 N DT,TM
 S DT=$$^%L1DC(DAT,3)
 S TM=TIME*3600+($P(TIME,":",2)*60)
 N IND S IND=DT_$TR($J(TM,5)," ",0)_1
 S @$$^W4GL("DUMP1")@(IND)=ASM
 Q
 ;
 ;
SETDMPPC(ASM) ;
 N BG,IND S BG=0,IND=BG
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("xeciy ly jix`z",$G(MBC(ASM,"DAT")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("xeciy onf",$G(MBC(ASM,"TIME")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("`zknq`",ASM)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("","")
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg zerepz k""dq",$G(MBC(ASM,"QNH")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg k""dq",$G(MBC(ASM,"SUMH")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf zerepz k""dq",$G(MBC(ASM,"QNZ")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf k""dq",$G(MBC(ASM,"SUMZ")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("","")
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg hxw`xyi zerepz k""dq",$G(MBC(ASM,"QIHB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg hxw`xyi k""dq",$G(MBC(ASM,"SIHB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf hxw`xyi zerepz k""dq",$G(MBC(ASM,"QIZB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf hxw`xyi k""dq",$G(MBC(ASM,"SIZB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("","")
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg l`k zerepz k""dq",$G(MBC(ASM,"QVHB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg l`k k""dq",$G(MBC(ASM,"SVHB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf l`k zerepz k""dq",$G(MBC(ASM,"QVZB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf l`k k""dq",$G(MBC(ASM,"SVZB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("","")
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg qxpiic zerepz k""dq",$G(MBC(ASM,"QDHB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg qxpiic k""dq",$G(MBC(ASM,"SDHB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf qxpiic zerepz k""dq",$G(MBC(ASM,"QDZB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf qxpiic k""dq",$G(MBC(ASM,"SDZB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("","")
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg .qw`.n` zerepz k""dq",$G(MBC(ASM,"QAHB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg .qw`.n` k""dq",$G(MBC(ASM,"SAHB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf .qw`.n` zerepz k""dq",$G(MBC(ASM,"QAZB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf .qw`.n` k""dq",$G(MBC(ASM,"SAZB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("","")
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg MAX zerepz k""dq",$G(MBC(ASM,"QLHB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("daeg MAX k""dq",$G(MBC(ASM,"SLHB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf MAX zerepz k""dq",$G(MBC(ASM,"QLZB")))
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("zekf MAX k""dq",$G(MBC(ASM,"SLZB")),1)
 S IND=IND+1
 S @$$^W4GL("DUMP")@(ASM,"PC",IND)=$$STPC("","")
 Q
 ;
 ;
GETDMP(ASM) ; 
 N ST K MBC
 Q:$G(ASM)=""
 S ST=$G(@$$^W4GL("DUMP")@(ASM)) Q:ST=""
 S MBC(ASM,"SUMZ")=$P(ST,"|",2)
 S MBC(ASM,"SUMH")=$P(ST,"|",3)
 S MBC(ASM,"QNA")=$P(ST,"|",4)
 S MBC(ASM,"TIME")=$P(ST,"|",6)
 S MBC(ASM,"DAT")=$P(ST,"|",7)
 S MBC(ASM,"SIHB")=$P(ST,"|",8)
 S MBC(ASM,"SIZB")=$P(ST,"|",9)
 S MBC(ASM,"SVHB")=$P(ST,"|",10)
 S MBC(ASM,"SVZB")=$P(ST,"|",11)
 S MBC(ASM,"SDHB")=$P(ST,"|",12)
 S MBC(ASM,"SDZB")=$P(ST,"|",13)
 S MBC(ASM,"SAHB")=$P(ST,"|",14)
 S MBC(ASM,"SAZB")=$P(ST,"|",15)
 S MBC(ASM,"SJHB")=$P(ST,"|",16)
 S MBC(ASM,"SJZB")=$P(ST,"|",17)
 S MBC(ASM,"SLHB")=$P(ST,"|",18)
 S MBC(ASM,"SLZB")=$P(ST,"|",19)
 ;
 N BG S BG=20
 S MBC(ASM,"QIHB")=$P(ST,"|",BG+1)
 S MBC(ASM,"QIZB")=$P(ST,"|",BG+2)
 S MBC(ASM,"QVHB")=$P(ST,"|",BG+3)
 S MBC(ASM,"QVZB")=$P(ST,"|",BG+4)
 S MBC(ASM,"QDHB")=$P(ST,"|",BG+5)
 S MBC(ASM,"QDZB")=$P(ST,"|",BG+6)
 S MBC(ASM,"QAHB")=$P(ST,"|",BG+7)
 S MBC(ASM,"QAZB")=$P(ST,"|",BG+8)
 S MBC(ASM,"QJHB")=$P(ST,"|",BG+9)
 S MBC(ASM,"QIZB")=$P(ST,"|",BG+10)
 S MBC(ASM,"QLHB")=$P(ST,"|",BG+11)
 S MBC(ASM,"QLZB")=$P(ST,"|",BG+12)
 N A S A=0
 N I F I="I","V","D","A","J","L" D
 .S A=A+$G(MBC(ASM,"Q"_I_"HB"))
 S MBC(ASM,"QNH")=A
 S A=0
 N I F I="I","V","D","A","J","L" D
 .S A=A+$G(MBC(ASM,"Q"_I_"ZB"))
 S MBC(ASM,"QNZ")=A
 Q
 ;
 ;
STPC(NM,VL,PR) 
 I $G(NM)="",'$G(VL) Q ""
 I $G(PR) S VL=$J(VL,2,2)
 Q $J(VL,12)_" : "_$$HBR^%L1FRM(NM,25)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ESEK
W4ESEK ; [ 27.07.16 12:53 ] [ 15.06.10 15:52 ] [ 17.12.09 12:24 ] 
GET ;
 S NAME=$$H2U^%L1FRM($G(@$$^W4PL@("ESEK",1)))
 S KTOV=$$H2U^%L1FRM($G(@$$^W4PL@("ESEK",2)))
 S TEL=$G(@$$^W4PL@("ESEK",3))
 S MURSH=$G(@$$^W4PL@("ESEK",4))
 S SNIF=$G(@$$^W4PL@("SNIF"))
 S LOGO=$G(@$$^W4PL@("LOGO"))
 Q
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4ESEK-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=$$CNWEB^%L1FRM(B)
 ;
 K @$$^W4PL@("ESEK")
 S @$$^W4PL@("ESEK",1)=$$INVH^%L1FRM($G(NAME))
 S @$$^W4PL@("ESEK",2)=$$INVH^%L1FRM($G(KTOV))
 S @$$^W4PL@("ESEK",3)=$G(TEL)
 S @$$^W4PL@("ESEK",4)=$G(MURSH)
 S @$$^W4PL@("SNIF")=$G(SNIF)
 S @$$^W4PL@("LOGO")=$G(LOGO)
 I $$^%L1MRK S @$$^W4GL("MRKZ")@($$^%L1MRK)=@$$^W4PL@("ESEK",1)
 Q 1
 
 
 

W4ETHB2
W4ETHB2(JB,DT1,DT2) ; [ 17.10.22 21:59 ] [ 29.05.22 07:38 ] [ 05.05.22 08:02 ] 
 N (JB,%ARG,DT1,DT2)
 ;
 D LKH^W4REST
 ;
 N DZ S DZ=$$^W4DZ
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..I DT'>DZ,$D(@$$^W4ORD@(HZ,"CB","ASR")),'$D(@$$^W4ORD@(HZ,"ETHB2")) D
 ...S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  I N D
 ....S ST=$G(^(N))
 ....S MSP="-"_HZ_"."_N
 ....S LKHN=$P(ST,"*") I 'LKHN Q
 ....S ASR=$P(ST,"*",4) I 'ASR Q
 ....S TLUSH=$P(ST,"*",8)
 ....S KMTL=$P(ST,"*",9)
 ....D SETHB2(DT,HZ,N,MSP,LKHN,ASR,TLUSH,KMTL)
 ;
 F DT=DZ:1:DZ+120 D TKDAT(DT)
TKLINK ;
 S DZ=$$^W4DZ
 F DT=DZ-50:1:DZ+30 D TKLINKD(DT)
 Q
 ;
 ;
TKDAT(DT) ;
 I DT<$$^W4DZ Q
 N HZ,TRH,DTHZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 .I '$$HZM^W4MSL(HZ) Q
 .;;I $$SHUL^W4HZMST(HZ)>1!($$SHULA^W4HZMST(HZ)>1) Q
 .I $$SHUL^W4HZMST(HZ)!$$SHULA^W4HZMST(HZ),'$$ITRA^W4HZMST(HZ) Q
 .I $$^W4CLOSE(HZ)!$$DLV^W4CLOSE(HZ) Q
 .S TRH=$$TRH^W4HZMST(HZ)
 .S DTHZ=$$^%L1DC(TRH,3)
 .I DTHZ=(DT+1),$$^W4SHAAZ,$$SHAA^W4HZMST(HZ)<$$SHAAZ^W4PRM S DTHZ=DTHZ-1
 .
 .I DTHZ>DT D
 ..D ^W4MVP1H(DT,DTHZ,HZ)
 ..D PUT^W4HZMST(HZ,"DATK",$ZD(DTHZ,"DD.MM.YY"))
 ..S @$$^W4GL("W4LINKD")@(DTHZ,HZ)=$G(@$$^W4GL("W4LINKD")@(DT,HZ))
 ..K @$$^W4GL("W4LINKD")@(DT,HZ)
 Q
 ;
 ;
TKLINKD(DT) ;
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 N DZ S DZ=$$^W4DZ
 I DT<DZ Q
 N HZ,TRH,DTHZ,SHAA
 ;
 S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D
 .I '$$HZM^W4MSL(HZ) Q
 .S TRH=$$TRH^W4HZMST(HZ)
 .S SHAA=$$SHAA^W4HZMST(HZ)
 .S DTHZ=$$^%L1DC(TRH,3)
 .I SHAA<$$SHAAZ^W4PRM S DTHZ=DTHZ-1
 .
 .I DTHZ>DZ,DTHZ'=DT D
 ..S @$$^W4GL("W4LINKD")@(DTHZ,HZ)=$G(@$$^W4GL("W4LINKD")@(DT,HZ))
 ..K @$$^W4GL("W4LINKD")@(DT,HZ)
 Q
 ;
 ;
SETHB2(DT,HZM,MSAS,MSP,LKHN,ASR,TLUSH,KMTL)
 S @$$^W4ORD@(HZM,"ETHB2")=$G(@$$^W4ORD@(HZM,"ETHB2"))_MSP_","
 S $P(@$$^W4ORD@(HZM,"CB","ASR",MSAS),"*",10)=MSP
 D
 .S @$$^W4GL("P1HB2")@(MSP)=HZM_"\"_DT_"\"_$H_"\"_LKHN_"\"_ASR_"\"_$G(@$$^W4GL("P1EZL")@(LKHN))_"\"_$G(TLUSH)_"\"_$G(KMTL)
 .S @$$^W4GL("P1HB2I")@(DT,MSP)=$H
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EX
W4EX(RKV,PR) ; [ 08.07.26 13:28 ] [ 31.10.19 16:19 ] [ 31.01.17 14:24 ] 
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 I '$D(FLCSV) Q
 ;;N $ZT S $ZT="G ER^W4EX"
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^W4EX"
 N VL S VL=RKV
 ;
 U FLCSV
 N LNG S LNG=$$^%W1LNG I $E(LNG)'?1U S LNG="H"
 I $G(PR)="DICT" D
 .S VL=$$INVH^%L1FRM($$TV^%W1DICT(LNG,RKV))
 .S VL=$TR(VL,TS0,TS1)
 I $G(PR)="H" S VL=$$^%W1D2U(VL)
 I $G(PR)="N" D
 .S VL=$J(VL,2,2)
 I $G(PR)="D" S VL=$TR(VL,".","/")
 W VL,","
 U 0
END ; 
 Q
 ;
WEXR ;
 U FLCSV W !
 U 0
 Q
 ;
OPCSV(COD) ;
 N $ZT S $ZT="G ER"
 D FLCSV(COD)
 N A,B,I,J
 S RZD=","
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 D PUT^%W1PRM("FLCSV",FLCSV)
EOPCSV
 Q
 ;
CLCSV ;
 ;;N $ZT S $ZT="D SVER^%L1X G ECLCSV"
 N $ZT S $ZT="D SVER^%L1X G ER"
 C FLCSV
 ;;ZSY "unix2dos "_FLCSV ;; 31/01/17
ECLCSV Q
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q
 ;
EXCEL(STAM) ;
 N A,FL,FLCSV
 S FLCSV=$$GETP^%W1PRM("FLCSV") I FLCSV="" Q "<NOTEXCELFILE>"
 S FL=$P(FLCSV,"/",$L(FLCSV,"/")-1,255)
 S A="<a href="""_FL_"""><img src=""w3excel.png"" > "_FL_"</a>"
 Q A
 ;
FLCSV(COD) ;
 N SHCSV,FMT1 S FMT1="csv"
 S FL=$$WEBL^W3MAIN_$$GETP^%W1PRM("MSD")_"/"_COD_$$^W4MYDVN ;;$$FL^%W1FREPX("W4SPDOC","csv")
 N MRKZ S MRKZ=""
 I $G(@$$^W4GL("MERKAZ")) S MRKZ="_"_^("MERKAZ")_"_"
 N IND S IND=COD_MRKZ_$$^W4MYDVN
 S SHCSV=$O(@$$^W4MAIN("TMPCSV")@(IND,FMT1,9999999),-1)+1
 S @$$^W4MAIN("TMPCSV")@(IND,FMT1,SHCSV)=$H
 S FLCSV=FL_"_"_SHCSV_".csv"
 Q
 ;
ER ; 
 D SVER^%L1X 
 G END 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EXPORD
W4EXPORD(DT1,DT2) ; [ 23.02.22 18:22 ] [ 
 N (JB,%ARG,%REM,DT1,DT2) 
 S TMPORD=$$^W4TMPORD
 S FILE=$$DIR_"tmpexpord_"_DT1_"_"_DT2_"_"_JB
 C FILE:(DELETE)
 O FILE:(WRITE:NEWVERSION)
 F DT=DT1:1:DT2 D
 .S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 ..U 0 W N,!
 ..K @TMPORD
 ..S A=$$^W4GETHZ(N)
 ..S HD=$G(@TMPORD)
 ..S ST=$TR($J("",100)," ",$C(9))
 ..F J=1:1:$L(HD,"~") S $P(ST,$C(9),J)=$P(HD,"~",J)
 ..S N1="" F  S N1=$O(@TMPORD@(N1)) Q:N1=""  I N1 D
 ...S B=$G(^(N1))
 ...F J=1:1:10 S $P(ST,$C(9),80+J)=$P(B,"~",J)
 ...U FILE W ST,!
 C FILE
 Q
 ;
DIR(STAM) ;
 Q "/tmp/"
 ;
 ;
READ ;
 S JB=1
 S DT1=$H-20,DT2=+$H
 S FILE=$$DIR_"tmpexpord_"_DT1_"_"_DT2_"_"_JB
 O FILE:(REWIND:READONLY)
 S N=0
 F  U FILE R A Q:$ZEOF  D
 .S N=N+1
 .U 0 W N," ",A,!! 
 C FILE
 Q
 
 
 
 
 
 

W4EXZ2
W4EXZ2(COD,FMT) ; [ 28.03.18 15:03 ] [ 
 Q
 

W4EZA
W4EZA(STAM) ; [ 06.01.22 15:41 ] [ 03.01.22 16:41 ] [ 26.03.14 12:35 ] 
 Q $$^W4GL("P1EZA")
 ;
D(PAR) ;
 I $G(PAR)="" Q 0
 Q $D(@$$W4EZA@(PAR))
 ;
DD(PAR) I $G(PAR)="" Q 0
 Q ($$D(PAR)>9)
 
 

W4EZAT
W4EZAT(PAR) ; [ 25.07.23 06:34 ] [ 24.07.23 20:50 ] [ 06.01.22 15:30 ] 
 N (JB,PAR,PRHDST)
 I $G(PAR)="" Q 0
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I NMB?1N.N,$$^W4MSD(NMB),$$NOTSFMSD^W4PRM=1 Q 0
 I $$DD^W4EZA(PAR)!$$DD^W4EZT(PAR) Q 1
 Q 0
 ;
STPAR(STAM) ;
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 S PAR=$P(STPAR,"~",2)
 I 'PAR Q 0
 Q $$W4EZAT(PAR)
 ;
REF(PAR) ;
 I $$DD^W4EZA(PAR) Q $$^W4EZA_"("""_PAR_""")"
 I $$DD^W4EZT(PAR) Q $$^W4EZT_"("""_PAR_""")"
 Q ""
 
 
 
 
 
 
 
 

W4EZH
W4EZH(STAM) ; [ 08.11.13 13:29 ] [ 22.04.13 15:45 ] [ 07.04.13 09:45 ]
 Q $$^W4GL("P1EZH")
 ;
KV(STAM) ;
 Q $$^W4GL("P1EZHK")
 ;
NP(CD) ;
 I $G(CD)="" Q ""
 Q $G(@$$^W4GL("P1EZH")@(CD))
 ;
NPKV(CD) ;
 I $G(CD)="" Q ""
 N SUG S SUG=$$SUG^W4P(CD) I SUG="" Q ""
 Q $G(@$$^W4GL("P1EZHK")@(SUG))
 ;
D(CD) ;
 N OK S OK=0
 I $G(CD)="" Q ""
 N GLH S GLH=$$^W4GL("P1EZH")_"(CD)"
 I $D(@GLH)>9 D  Q OK-$S($G(@GLH)="NO":.5,1:0)
 .I $$DH(GLH) S OK=1 Q
 .S OK=0
 N SUG S SUG=$$SUG^W4P(CD) I SUG="" Q 0
 S GLH=$$^W4GL("P1EZHK")_"(SUG)"
 I $D(@GLH)>9 D  Q OK-$S($G(@GLH)="NO":.5,1:0)
 .I $$DH(GLH) S OK=2 Q
 .S OK=0
 Q OK
 ;
DH(GLH) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@GLH@(N)) Q:N=""  I $D(@$$^W4GL("P1CODH")@(N)) S OK=1 Q
 Q OK
 ;
MUST(CD) ;
 I '$$D(CD) Q 0
 I $G(@$$^W4GL("P1EZH")@(CD))="NO" Q 0
 I $G(@$$^W4GL("P1EZH")@(CD))'="NO",$$D(CD)=1 Q 1
 I $$D(CD)'=2 Q 0
 N SUG S SUG=$$SUG^W4P(CD) I SUG="" Q 0
 Q $$MUSTGR(SUG)
 ;
MUSTGR(SUG) ;
 I $G(SUG)="" Q 0
 I $D(@$$^W4GL("P1EZHK")@(SUG))<10 Q 0
 I $G(@$$^W4GL("P1EZHK")@(SUG))="NO" Q 0
 Q 2

W4EZI
W4EZI(CD) ; [ 26.11.18 09:31 ] [ 25.11.18 13:23 ] [ 
 N (JB,CD)
 I $G(CD),'$$^W4EZAT(CD)!$$^W4AIN,$$TSF(CD) Q $S($$^W4AIN:2,1:1)
 Q 0
 ;
TSF(CD) ;
 I '$G(CD) Q 0
 I $D(@$$^W4GL("P1EZI")@(CD))=11 Q 1
 I $D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(CD)))=11 Q 1
 Q 0
 
 

W4EZKI
W4EZKI(COD) ; [ 02.01.17 10:02 ] [ 04.07.12 17:09 ] [ 19.10.09 09:40 ] 
 Q ($D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(COD)))>9)
G(COD) ;
 Q $G(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(COD)))
 

W4EZL
W4EZL ; [ 16.08.26 18:56 ] [ 28.06.22 11:19 ] [ 18.05.20 11:17 ] 
 N (JB,%ARG)
 S JB=+$G(JB)
 D KILL^%W3DEB("W4EZL")
 D PUT^%W3DEB("W4EZL","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 D PUT^%W1PRM("LKHR",$G(%ARG("CODE")))
 S LKHR=$G(%ARG("CODE"))
 ;
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""TblLkhR"" dir="""_$$^%W1DIR_""" border=""0"" "
 W " cellspacing=""0"" style=""color:black"" "
 W " width="""_$$WD_""">",!
 ;
 W "<tr>"
 W "  <td "_$$^%W1ALIGN_" "
 W ">" 
       W "<input type=""checkbox"" id=""chkmain"" "
       W " />"
 W "&nbsp;"_$$^%W1DICT("SHOWMAINCUSTOMS")
 W "  </td>",!
 I $$^W4TABLET'=2 W "  <td colspan=""2"">&nbsp;</td>",!
 W "</tr>"
 W "<tr><td>&nbsp;</td><td></td><td></td></tr>",!
 ;
 W " <tr>"
 W "  <td>"
 W $$^%W1DICT("MAINCUSTOMER")
 W "&nbsp;:&nbsp;"
 ;
 W "   <input id=""lkhr"" type=""text"" size=""12"" maxlength=""12"" "
    W " onChange=""FindMain()"" ",!
    W " onFocus=""this.select()"""
    W " value="""_$G(%ARG("CODE"))_""""
    W " />&nbsp;",!
    W "<img id=""filter"" src=""w3filter.jpg"" "
    W " onClick=""FindMain()"" "
    W " />",!
 W "  </td>",!
 ;
 N LKHNAME S LKHNAME=$$LKH^W4L(LKHR)
 ;
 W "  <td "_$$^%W1ALIGN_" id=""lkhr1"" style="""_$$FONTFM^W3CSS_";font-weight:bold;width:50%"">"
       W "&nbsp;"_$$H2U^%L1FRM(LKHNAME)
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<br />",!
 ;
 W "<table id=""TblLkh"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width="""_$$WD_""" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""10%"">"_$$^%W1DICT("NPP")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("CUSTCODE")_"</th>"
 W "  <th width=""60%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 W " </tr>",!
 N N,NN,I
 D GLLK
 K @GLLK
 ;
 I LKHR D
 .N I,N
 .S N="" F I=1:1 S N=$O(@$$^W4GL("P1EZLI")@(LKHR,N)) Q:N=""  D
 ..S @GLLK@(N)=$G(@$$^W4GL("P1EZLI")@(LKHR,N))
 ..S @GLLK@(N,"I")=I
 .S N="" S N=$O(@GLLK@(N)) D LINE(1,N)
 .F I=2:1 S N=$O(@GLLK@(N)) Q:N=""  D LINE(I,N)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVEND ;
 N N,LKHR
 S LKHR=$$GET^%W1PRM("LKHR") Q:'LKHR
 D GLLK
 S N="" F  S N=$O(@$$^W4GL("P1EZL")@(N)) Q:N=""  D
 .N A S A=$$SPA^%L1FRM($G(^(N))) Q:A=""
 .I A=LKHR K @$$^W4GL("P1EZL")@(N)
 ;
 K @$$^W4GL("P1EZLI")@(LKHR)
 ;
 N N S N="" F  S N=$O(@GLLK@(N)) Q:N=""  D
 .I $D(@GLLK@(N,"DEL")) Q
 .I $L(LKHR)<4 Q
 .S @$$^W4GL("P1EZLI")@(LKHR,N)=$G(@GLLK@(N))
 .S @$$^W4GL("P1EZL")@(N)=LKHR
 K @GLLK
 Q
 ;
 ;
GLLK S GLLK=$$^W4MAIN("TMPLKH")
 Q
 ;
 ;
LINE(I,N) ;
 W "<tr id=""trid"_I_""">"
  W " <td align=""center"">"
  ;
  W "  <span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
  W "   onClick=""NewLine('"_I_"')""> + "
  W "  </span><br />"
  W "  <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
  W "   onClick=""DeleteRow('"_I_"')"" > - </span>"
  W " </td>",!
  ;
  W " <td style=""text-align:center"" >"
   W $$VVLK(I_";"_N)
  W "  </td>",!
  ;
  N LKHNAME S LKHNAME=$$LKH^W4L(N)
  W "  <td "_$$^%W1ALIGN_" id=""custnm"_I_""" >"
       W "&nbsp;&nbsp;"_$$H2U^%L1FRM(LKHNAME)
  W "  </td>",!
 W "</tr>",!
 Q
 ;
 ;
SETCUST(PRM)
 N LK,I
 S LK=$P(PRM,";")
 I LK="" Q "CODENOTEXIST"
 S I=$P(PRM,";",2)
 N MAIN S MAIN=$$GET^%W1PRM("LKHR")
 I LK=MAIN Q "CUSTEQMAIN"
 N GLLK D GLLK
 I $G(@GLLK@(LK,"I")),^("I")'=I Q "SAMECODE"
 I '$$D^W4L(LK) Q "CODENOTEXIST"
 I '$$ISCR^W4L(LK) Q "CUSTNOTCREDIT"
 S @GLLK@(LK)=""
 S @GLLK@(LK,"I")=I
 N LK1 S LK1=$$LKH^W4L(LK)
 Q "OK~"_$$H2U^%L1FRM(LK1)
 ;
DELROW(LK) ;
 Q:$G(LK)=""
 N GLLK D GLLK
 I '$D(@GLLK@(LK,"DEL")) S ^("DEL")=1 Q
 K @GLLK@(LK,"DEL")
 Q
 ;
VVLK(PRM) ;
 N I,VL
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 N FIND S FIND="Find('custcd"_I_"','custcd"_I_"','LKH','','','','','','SetCust(\'"_I_"\')')"
 N A
 S A="<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"id=""custcd"_I_""" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"value="""_$G(VL)_""" >&nbsp;"
 S A=A_"<img id=""filter"" src=""w3filter.jpg"" "
 S A=A_" onClick="""_FIND_""""
 S A=A_" >"
 Q A
 ;
WD() ; 
 I $$^W4TABLET=2 Q "98%"
 Q "80%"
 
 
 
 
 

W4EZM
W4EZM ; [ 09.08.14 07:06 ] [ 30.07.14 14:48 ] [ 29.07.14 13:24 ]
 Q
GLEZM(STAM) ;
 Q $$^W4GL("MLEZM")
 ;
GLEZMI(STAM) ;
 Q $$^W4GL("MLEZMI")
 ;
TMP(STAM) ;
 Q "^[$$^W3MAIN]TMPEZM(JB)"
 ;
MANOT(MAIN,PRTMP) ;
 I $G(MAIN)="" Q 1
 I $G(PRTMP) Q +$G(@$$TMP@(MAIN))
 Q +$G(@$$GLEZM@(MAIN))
 ;
CD(A) ;
 Q $P(A,"\")
 ;
NAME(A) ;
 Q $P(A,"\",2)
 ;
EM(A) ;
 Q $P(A,"\",3)
 ;
EM1(A) ;
 N MD S MD=$$EM(A) I MD="" Q "&nbsp;"
 Q $$H2U^%L1FRM($G(@$$^W4GL("MLMIDA")@(MD)))
 ;
QNETTO(A) ;
 Q $P(A,"\",4)
 ;
AHEX(A) ;
 Q $P(A,"\",5)
 ;
ALUT(CD,A) ;
 I '$$KP^W4PK(CD),$D(@$$GLEZM@(CD))>9,$$MANOT(CD) Q $$TOTALUT^W4EZMIDK(CD)/$$MANOT(CD)
 Q $P(A,"\",6)
 ;
SUMST(CD,A) ;
 N AHEX S AHEX=$$AHEX(A) I 'AHEX Q 0
 N KF S KF=$$NEWKF^W4PRT($$EM(A),$$EMSFR^W4PRT(CD))
 S:KF KF=1
 Q $J($$QNETTO(A)*$$ALUT(CD,A)*KF*100/AHEX,2,2)
 ;
QNST(A) ;
 N AHEX S AHEX=$$AHEX(A) I 'AHEX Q 0
 Q $J($$QNETTO(A)*100/AHEX,2,2)
 ;
QNONE(MAIN,PRT,PRTMP) ;
 N MANA S MANOT=$$MANOT(MAIN,$G(PRTMP))
 I 'MANOT Q ""
 N A I '$G(PRTMP) S A=$G(@GLEZM@(MAIN,PRT))
 I $G(PRTMP) S A=$G(@$$TMP@(MAIN,PRT))
 I A="" Q ""
 N EM S EM=$$EM(A)
 N EMSFR S EMSFR=$$EMSFR^W4PRT(PRT)
 N KF S KF=1 I $L(EM),$L(EMSFR),EM'=EMSFR D
 .S KF=$$NEWKF^W4PRT(EM,EMSFR)
 Q $J($$QNST(A)*KF/MANOT,3,3)
 ;

W4EZM11
W4EZM11(CD,NM,PRC) ; [ 05.07.16 11:28 ] [ 04.07.16 17:33 ] [ 
 N PRM,RES,MLEZM,MLEZMI
 S PRM=CD_"~"_$$INVH^%L1FRM(NM)_"~NO~1~1~0~0~1~"_PRC
 S RES=$$SAVE^W4MLPRT(PRM) I RES'=1 Q
 S MLEZM=$$GLEZM^W4EZM
 S MLEZMI=$$GLEZMI^W4EZM
 S @MLEZM@("K"_CD)=1
 S @MLEZM@("K"_CD,CD)="1\"_NM_"\1\1.000\100.00\"
 S @MLEZMI@(CD,"K"_CD)=$H
 Q
 
 
 
 
 
 
 
 

W4EZMIDK
W4EZMIDK ; [ 23.04.26 17:42 ] [ 30.03.26 12:12 ] [ 06.10.25 11:38 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 Q:$G(%ARG("NOSHOW"))
 I $G(%ARG("PRKUP"))?1N.N D PUT^%W1PRM("PRKUP",%ARG("PRKUP"))
 D PUT^%W3DEB("W4EZMIDK","%ARG=[%ARG")
 ;
 S MAIN=$$MAIN Q:MAIN=""
 ;
 D TMPEZM I $$VIEW K @TMPEZM
 ;
 I $G(%ARG("COPYFROM")) D PAR2TMP(%ARG("COPYFROM"),MAIN) G MV
 I $G(%ARG("NEW"))!$$VIEW D PAR2TMP(MAIN)
MV ;
 I $L($G(%ARG("CDMV2PR"))) D MVEZM2PR(%ARG("CDMV2PR"))
 I $L($G(%ARG("CDMV2EZM"))) D MVPR2EZM(%ARG("CDMV2EZM"))
 ;
 I $G(%ARG("SAVE")) D SAVE(%ARG("SAVE"))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table width=""100%"" >"
 W " <tr>"
 W "  <td colspan=""5"" align=""center"">"
 W "   <span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$CAPTION_"</span>",!
 W "  </td>"
 W " </tr>",!
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 W " <tr>"
 W "  <td "
 I $$PRKUP W " colspan=""2"" "
 W ">"
 I $$VIEW W $$BOLD($$CLR^W4PK(MAIN)_" "_$$H2U^%L1FRM($$NM(MAIN)),"","12","DARKBLUE")_"&nbsp;"
 I '$$VIEW D
 .W $$^%W1DICT("PRODUCT")_" "
 .W "   <select id=""main"" dir="""_$$^%W1DIR_""" "
 .   W " onChange=""parent.MainChange('"_JB_"')"">",!
 .   D GETOPT
 .W "   </select>",!
 .;
 I '$$PRKUP,'$$VIEW D
 . D SHOWCARD(MAIN)
 .
 ;
 W "</td>",!
 ;
 I $$PRKUP D
 .W " <td colspan=""2"" >"
 . W $$^%W1DICT("PRICE2ONEDISH")_" "
 . I $$VIEW!($$GETP^%W1PRM("PRKUP")=2) W $$BOLD($J($$MH^W4P($$CLR^W4PK(MAIN)),2,2)) W "</td></tr><tr>" Q
 .
 . W "<input type=""text"" id=""prcmain"" size=""3"" maxlength=""7"" "
 . W " onClick=""this.select()"" "
 . W "     onKeyUp=""ChangePrcMzr()"" onClick=""this.select()"" "
 . W " value="""_$$MH^W4P($$CLR^W4PK(MAIN))_""" />"
 .W " </td></tr>"
 .W "<tr>",!
 ;
 S MANOT=$$MANOT(MAIN,'$$VIEW)
 S MHMZR=$$MHMZR(MAIN)
 S MHLMAM=$$MHLMAM(MAIN)
 ;
 W "  <td>"
     W $$^%W1DICT("MANOT")_"&nbsp;"
 I $$VIEW!($$AUTOMANOT&'$$PRKUP) W $$BOLD(MANOT,"manot")
 I '$$VIEW,'$$AUTOMANOT!$$PRKUP D
 .W "    <input type=""text"" id=""manot"" value="""_MANOT_""" "
 .W "     onKeyDown=""OldManot()"" "
 .W "     onKeyUp=""ChangeManot()"" onClick=""this.select()"" "
 .W "     size=""1"" maxlength=""7"" >",!
 W "  <td>"
 ;
 W "  <td>"
    W $$^%W1DICT("PRICE")_"&nbsp;"
     W "<span style=""font-weight:bold"" id=""mhmzr"">"_$J(MHMZR*MANOT,2,2),!
     W "</span>",!
 W "  </td>",!
 ;
 W "  <td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;"
     W "<span style=""font-weight:bold"" id=""mhlmam"" >"_$J(MHLMAM*MANOT,2,2),!
     W "</span>",!
 W "  <td>"
 W " </tr>",!
 ;
 W " <tr>"
 W "  <td>"
 W "  </td>",!
 W "</tr>",!
 ;
 I '$$VIEW D
 .W "<tr><td colspan=""4"">" D SELFROM W "</td>",!
 .W "<td>"
 .W " <input type=""button"" "
 .W "  id=""refresh"" onClick=""Refresh()"" "
 .W " style="""_$$FSZBUT_""" "
 .W "  value="""_$$^%W1DICT("COMPUTENEWPRICE")_""" />",!
 .W "</td>",!
 .W " </tr>",!
 ;
 W "</table>",!
 ;
 ;;W "<br />",!
 ;
 I MAIN="" W "</div>" Q
 ;
 I $$^W4EZAT(MAIN),$$PRKUP D  W "</div>",! Q
 .W "<script>",!
 .W "MsgA(""ITSLUNCH"")",!
 .W "</script>",!
 ;
 W "<table id=""TblEzm"" dir="""_$$^%W1DIR_""" border=""1"" "
  W "cellspacing=""0"" width=""100%"" "
  W "style=""background-color:white;color:black"" "
  W " onmousedown='return false'",!
  W " onclick='return true'",!
 W " >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th width=""12%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th width=""14%"">"_$$^%W1DICT("EM")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("QNETTO")_"</th>"
  W "<th width=""10%"">"_$$^%W1DICT("EXITPERCENT")_"</th>"
  W "<th width=""16%"">"_$$^%W1DICT("ALUT")_"</th>"
  I '$$VIEW D
  .W "<th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 N N,I
 ;
 ;
VW ;
 D SHOWCONT(MAIN)
 ;
 D TOT
 ;
 W "</table>",!
 ;
 I $$VWED W "<br>",! D   W "<br>",!
 .W "<table><tr>"
 .W "<td>" D SAVEBUT(MAIN) W "</td>"
 .I $G(%ARG("CLOSE"))!($G(%ARG("WIN"))="IFR") D
 ..W "<td>&nbsp;</td>"
 ..W "<td>" D CLOSE W "</td>"
 .W "</tr></table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
SHOWCONT(MAIN) ;
 N NP S NP="",I=0 F  S NP=$O(@TMPEZM@(MAIN,NP)) Q:NP=""  D
 .N A S A=$G(^(NP))
 .N N S N=$$CDEZM(A) Q:N=""
 .W "<tr id=""trezm"_N_""""
 .I $D(@TMPEZM@(MAIN,NP,"CUR")) W " style=""background-color:#eaeaea"""
 .W " >",! S I=I+1
 .
 .W "<td id=""cd"_N_""" "
 . I '$$VIEW D
 . .W " onmousedown=""MouseDown(this,'"_I_"',event);this.style.backgroundcolor='yellow'"" "
 . .W " onmouseover=""this.style.cursor='pointer'"" "
 .W ">&nbsp;"_N_"&nbsp;"
 .W "</td>",!
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$NAME(A))
 . W "<br><span style=""font-size:"_$$^W3FSZ(8)_";color:blue"" >"
 . W $$^%W1DICT("PRICE2ONE",$$EMSFR1^W4PRT(N))_": "_$J($$ALUT(N,A),2,2)_"</span>"
 . W "&nbsp;<br>",!
 . I '$$VIEW D
 ..  D SHOWCARD(N)
 ..  I $D(@$$GLEZM^W4EZM@(N))>9 D SHOWTREE(N)
 .W "</td>",!
 .
 .W "<td align=""center"">"
 .  I $$VIEWONLY W $$EM1(A)
 .  I $$EDIT D
 .  .W "<input type=""text"" id=""em"_N_""" readonly=""readonly"" "
 .  .W " size=""1"" "
 .  .W " value="""_$$EM(A)_""" "
 .  .W " onClick=""ShowMidot(this)"" "
 .  .W " />"
 .  .W "<br><span id=""emn"_N_""" style=""font-size:"_$$^W3FSZ(9)_""" >"_$$EM1(A)_"</span>"
 .W "</td>",!
 .
 .W "<td align=""center"">"
 . I $$VIEWONLY W $J($$QNETTO(A),3,3)
 . I $$EDIT D
 . .W "<input type=""text"" id=""qnt"_N_""" maxlength=""7"" size=""7"" "
 . .W " onClick=""this.select()"" "
 . .W " onKeyUp=""CompAlut('"_N_"','QN');TotAlut()"" "
 . .W " value="""_$J($$QNETTO(A),3,3)_""" />"
 .W "</td>",!
 .
 .W "<td align=""center"">"
 . I $$VIEWONLY W $$AHEX(A)
 . I $$EDIT D
 . .W "<input type=""text"" id=""ahex"_N_""" maxlength=""6"" size=""3"" "
 . .W " onClick=""this.select()"" "
 . .W " onKeyUp=""CompAlut('"_N_"','AX');TotAlut()"" "
 . .W " value="""_$$AHEX(A)_""" />"
 .W "</td>",!
 .
 .W "<td align=""center"" id=""alut"_N_""">"
 . W $$SUMST(N,A)
 .W "</td>",!
 .
 .I '$$VIEW D
 ..W "<td align=""center"">"
 .. W "<input type=""checkbox"" id=""chezm"_N_""" "
 .. W " onClick=""OnClickTbl('"_N_"','TblEzm','trezm','chezm')"" />"
 ..W "</td>",!
 .W "</tr>",!
 Q
 ;
 ;
TOT ;
 N CDMAIN S CDMAIN=$$^W4PK(MAIN,$$PRKUP)
 N TOTALUT S TOTALUT=$$TOTALUT(CDMAIN,'$$VIEW)
 N MANOT,ALUTONE S MANOT=$$MANOT(CDMAIN,'$$VIEW)
 S ALUTONE="" I MANOT>0 S ALUTONE=$J(TOTALUT/MANOT,2,2)
 N MHLMAM S MHLMAM=$$MHLMAM(CDMAIN)
 ;
 W "<tr>"
  D TDSP
  W "<td>"
    W $$^%W1DICT("TOTALUT")
  W "</td>"
  D TDTOT W " id=""totalut"" >"
   W $J(TOTALUT,2,2)
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDSP
  W "<td>"
    W $$^%W1DICT("TOTALUT2ONE")
  W "</td>"
  D TDTOT W "id=""alutone"" >"
   D
   .W $J(ALUTONE,2,2) Q
   .W "&nbsp;"
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDSP
  W "<td>"
    W $$^%W1DICT("PROFITPERCENT")
  W "</td>"
  D TDTOT W " id=""profit"" >"
   I TOTALUT D
   .W $J((MHLMAM*MANOT-TOTALUT/TOTALUT)*100,2,2)
   I 'TOTALUT W "&nbsp;"
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDSP
  W "<td>"
    W $$^%W1DICT("FOODCOST")
  W "</td>"
  D TDTOT W " id=""foodcost"" >"
   I MHLMAM,MANOT D
   .W $J(TOTALUT/(MHLMAM*MANOT),2,2)
   E  W "&nbsp;"
  W "</td>"
 W "</tr>",!
 Q
 ;
TDSP ;
 W "<td colspan="""_$S($$VIEW:4,1:5)_""">&nbsp;"
 W "</td>",!
 Q
 ;
TDTOT ;
 W "<td style=""font-weight:bold"" "
 Q
 ;
TOTALUT(MAIN,PRTMP) ;
 N N,SUM,A S SUM=0
 ;
 I $G(PRTMP) D
 .D TMPEZM
 .I $P(MAIN,";",2) S TMPEZM=$$^W4MAIN("TMPEZMV"),MAIN=$$CLR^W4PK($P(MAIN,";"))
 .I MAIN[";" S MAIN=$P(MAIN,";")
 .S N="" F  S N=$O(@TMPEZM@(MAIN,N)) Q:N=""  D
 ..I MAIN=N Q
 ..S A=$G(^(N))
 ..N CD S CD=$$CDEZM(A) Q:CD=""
 ..S SUM=SUM+$$SUMST(CD,A)
 ;
 I '$G(PRTMP) D
 .S N="" F  S N=$O(@$$GLEZM@(MAIN,N)) Q:N=""  D
 ..I MAIN=N Q
 ..S A=$G(^(N))
 ..S SUM=SUM+$$SUMST(N,A)
 ;
 Q SUM
 ;
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
MAIN(STAM) ;
 N MAIN
 S MAIN=$G(%ARG("MAIN"))
 ;;I MAIN?.P S MAIN=$$GETP^%W1PRM("MAIN")
 ;;W "MAIN1="_MAIN,!
 ;
 I MAIN'?.P,MAIN'=0 G MAIN1
 ;
 ;;W "MAIN2="_MAIN_" CDKV="_$G(%ARG("CDKV")),!
 S MAIN=$$VIBMAIN("",$G(%ARG("CDKV")),$G(%ARG("SRCH")))
 ;
MAIN1 ;
 S MAIN=$$CODP(MAIN)
 D PUT^%W1PRM("MAIN",MAIN)
 S %ARG("MAIN")=MAIN
 Q MAIN
 ;
 ;
SAVE(OLDMAIN) ;
 N PRC,VIEW S PRC="",VIEW=0
 I OLDMAIN[";" D
 .S PRC=$P(OLDMAIN,";",2)
 .S VIEW=$P(OLDMAIN,";",3)
 .S OLDMAIN=$P(OLDMAIN,";",1)
 ;
 Q:OLDMAIN=""!(OLDMAIN=0)
 ;
 S OLDMAIN=$$CODP(OLDMAIN)
 ;
 D PUT^%W3DEB("W4EZMIDK-SAVE","OLDMAIN=OLDMAIN")
 ;
 D TMPEZM
 I $$VWEDIT(VIEW) S OLDMAIN=$$CLR^W4PK(OLDMAIN),TMPEZM=$$^W4MAIN("TMPEZMV")
 ;
 N A S A=$G(@$$GLEZM@(OLDMAIN))
 K @$$GLEZM@(OLDMAIN)
 ;
 N N S N="" F  S N=$O(@$$GLEZMI@(N)) Q:N=""  K ^(N,OLDMAIN)
 ;
 N K S K=0
 ;
 N NP S NP="" F  S NP=$O(@TMPEZM@(OLDMAIN,NP)) Q:NP=""  D
 .N ST S ST=$G(^(NP))
 .N CD S CD=$$CDEZM(ST) Q:CD=""
 .S K=K+1
 .S @$$GLEZM@(OLDMAIN,CD)=K_"\"_$P(ST,"\",2,20)
 .S @$$GLEZMI@(CD,OLDMAIN)=""
 ;
 S @$$GLEZM@(OLDMAIN)=$S($D(@TMPEZM@(OLDMAIN))#2:@TMPEZM@(OLDMAIN),1:A)
 ;
 ;;I '$$PRKUP!$$VWEDIT(VIEW),$$AUTOMANOT D
 .S $P(@$$GLEZM@(OLDMAIN),"\")=$$COMPMANOT(OLDMAIN_";"_$$VIEW,1)
 ;
 I $$PRKUP,'VIEW,PRC?1N.E D PUT^W4P($$CLR^W4PK(OLDMAIN),"MH",PRC)
 S @$$^W4MAIN("TMPSV")=1
 Q
 ;
 ;
DEL(OLDMAIN) ;
 D PUT^%W3DEB("W4EZMIDK-DEL","OLDMAIN=OLDMAIN")
 Q:$G(OLDMAIN)=""
 S OLDMAIN=$$CODP(OLDMAIN)
 N A S A=$G(@$$GLEZM@(OLDMAIN))
 K @$$GLEZM@(OLDMAIN)
 N N S N="" F  S N=$O(@$$GLEZMI@(N)) Q:N=""  K ^(N,OLDMAIN)
 D TMPEZM K @TMPEZM
 Q
 ;
 ;
MVPR2EZM(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D TMPEZM
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W4EZMIDK-MVEZM2PR","PRM=PRM")
 ;
 N MAIN S MAIN=$P(PRM,";") Q:MAIN=""
 S MAIN=$$CODP(MAIN)
 ;
 N I,CD F I=2:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@$$GLMLPAR@(CD))
 .N LI S LI=$O(@TMPEZM@(MAIN,""),-1)+1
 .S @TMPEZM@(MAIN,LI)=$$NEWST(CD)
 .S OK=1
 Q
 ;
 ;
MVEZM2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D TMPEZM
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q
 D PUT^%W3DEB("W4EZMIDK-MVPR2EZM","PRM=PRM")
 ;
 N MAIN S MAIN=$P(PRM,";") Q:MAIN=""
 S MAIN=$$CODP(MAIN)
 ;
 N I,CD F I=2:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .N N S N="" F  S N=$O(@TMPEZM@(MAIN,N)) Q:N=""  D
 ..N CDEZM S CDEZM=$$CDEZM($G(^(N))) Q:CDEZM=""  Q:CDEZM'=CD
 ..K @TMPEZM@(MAIN,N)
 Q
 ;
TMPEZM I '$$VIEW S TMPEZM=$$TMP^W4EZM Q
 S TMPEZM=$$^W4MAIN("TMPEZMV")
 Q
 ;
GROUP ;
 I $G(%ARG("MAIN")) S %ARG("KV")=$$SUG^W4P(%ARG("MAIN"))
 W $$^%W1DICT("ITEMSGROUP")_" "
 W "<select "
 ;
 I FIRSTGR="EZM"&$$PRKUP D
 .W " id=""grezm"""
 .W " onChange=""NewView("_JB_")"""
 .W " >",!
 .I '$$^W4MUCHIT D
 ..W "<option value=""ALL"">"
 .. W $$^%W1DICT("ALLGROUPS")
 ..W "</option>",!
 ..D PUT^%W1PRM("CDKV","ALL")
 .
 .N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D
 ..S II=II+1
 ..N A S A=$G(^(NN))
 ..W "<option value="""_NN_""""
 ..I $G(%ARG("KV"))="",II=1 W " selected=""selected"""
 ..I $G(%ARG("KV")),NN=%ARG("KV") W " selected=""selected"""
 ..W " >"_NN_" "_$$H2U^%L1FRM(A)_"</option>",!
 ;
 ;
 I FIRSTGR="PRT"!'$$PRKUP D
 .I FIRSTGR="EZM" D
 ..W " id=""grezm"""
 ..W " onChange=""NewView("_JB_")"""
 ..W " >",!
 .
 .I FIRSTGR="PRT" D
 ..W " id=""grprt"""
 ..W " onChange=""ShowPrt("_JB_",'')"""
 ..W " >",!
 .
 .I '$$^W4MUCHIT W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .;
 .N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("MLSUGP")@(NN)) Q:NN=""  D
 ..S II=II+1
 ..N A S A=$G(^(NN))
 ..W "<option value="""_NN_""""
 ..I $G(%ARG("KV"))="",FIRSTGR="PRT",II=1 W " selected=""selected"""
 ..W " >"_NN_" "_$$H2U^%L1FRM(A)_"</option>",!
 ;
 W "</select>",!
 Q
 ;
 ;
GETOPT ;
 N CDKV S CDKV=$S($G(%ARG("CDKV")):%ARG("CDKV"),1:$$GET^%W1PRM("CDKV"))
 Q:CDKV=""
 D GETLIST(JB_";"_CDKV)
 Q
 ;
 ;
GETLIST(PRM) ;
 D PUT^%W3DEB("W4EZMIDK-GETLIST","PRM=PRM")
 N MAINCHN S MAINCHN=$$GET^%W1PRM("MAINCHN")
 ;;I MAINCHN S MAIN="" D PUT^%W1PRM("MAINCHN",0)
 N JB,CDKV S JB=$P(PRM,";"),CDKV=$P(PRM,";",2)
 I JB="" Q
 ;
 S MAIN=$$VIBMAIN($G(MAIN),$G(CDKV),$G(SRCH),"SEL")
 Q
 ;
VIBMAIN(MAIN,CDKV,SRCH,PRM) ;
 N I,A S I=0,A=""
 N NM,PRSRC
 I $G(MAIN)'="",$G(PRM)'="SEL" Q
 N PRT S PRT="" F  S PRT=$O(@$$GLPAR@(PRT)) Q:PRT=""  D  I $G(PRM)'="SEL",$G(MAIN)'="" Q
 .I CDKV,$$SUG(PRT)'=CDKV Q
 .I $$NOSHOW(PRT) Q
 .I $G(%ARG("TREESONLY")),$D(@$$GLEZM@($$CODP(PRT)))<10 Q
 .S NM=$$NM(PRT)
 .S PRSRC="" I '$$PRKUP S PRSRC="ML"
 .I $G(SRCH)'="",'$$^W1SRCH(SRCH,PRT,NM,PRSRC) Q
 .S I=I+1
 .I I=1,MAIN="" S MAIN=$$CODP(PRT)
 .
 .I $G(PRM)="SEL" D
 ..S A="<option value="""_PRT_""" "
 ..I MAIN'="",$$CODP(MAIN)=$$CODP(PRT) S A=A_" selected=""selected"" "
 ..I MAIN="",I=1 S A=A_" selected=""selected"""
 ..S A=A_">"_PRT_"  "
 ..S A=A_$$H2U^%L1FRM(NM)_"  "
 ..S A=A_"</option>"
 ..W A,!
 ;
 Q MAIN
 ;
 ;
PUTCDKV(PRM) ;
 N JB,CDKV S JB=$P(PRM,";"),CDKV=$P(PRM,";",2)
 I JB=""!(CDKV="") Q
 D PUT^%W1PRM("CDKV",CDKV)
 Q
 ;
 ;
SWAPN(PRN) ;
 D TMPEZM S NST=""
 S MAIN=$$MAIN
 D CLEAR
 N NEWST,CD
 S NEWST=+PRM,NST=$P(PRM,";",2)
 G:'NEWST SWPNE G:'NST SWPNE
 Q $$SWAPN1(NEWST,NST,1) ;
 ;
SWAPN1(NEWST,NST,PR) ;
 N TMPM,TMPEZM D TMPEZM
 N TMPM S TMPM=$E(TMPEZM,1,$L(TMPEZM)-1)_","""_MAIN_""")"
 N MAIN S MAIN=$$MAIN I MAIN="" Q 0
 N VLO S VLO=$G(@TMPM@(NST))
 D DEL^%L1GSEQ(TMPM,NST)
 N N,I,OK S N="",I=0,OK=0
 I NST+1<NEWST,'$G(PR) S NEWST=NEWST-1
 D ADD^%L1GSEQ(TMPM,NEWST,VLO,OK)
 S @TMPM@(NEWST,"CUR")=1
 Q 1
 ;
SWPNE Q 0
 ;
 ;
GETPN(MAIN,CD) ;
 S MAIN=$$CODP(MAIN)
 D TMPEZM N N,NP S NP=""
 S N="" F  S N=$O(@TMPEZM@(MAIN,N)) Q:N=""  I $$CDEZM(N)=CD S NP=N Q
 Q NP
 ;
CLEAR ;
 I $G(MAIN)="" Q
 D TMPEZM N K
 N HD S HD=$G(@TMPEZM@(MAIN))
 K @$$^W4MAIN("VRM") S K=0
 ;
 N N S N="" F  S N=$O(@TMPEZM@(MAIN,N)) Q:N=""  K ^(N,"CUR") D
 .S K=K+1 M @$$^W4MAIN("VRM")@(K)=@TMPEZM@(MAIN,N)
 ;
 K @TMPEZM@(MAIN)
 M @TMPEZM@(MAIN)=@$$^W4MAIN("VRM")
 S @TMPEZM@(MAIN)=HD
 K @$$^W4MAIN("VRM")
 Q
 ;
 ;
PAR2TMP(MAIN,TO) ;
 I $G(MAIN)="" Q
 S MAIN=$$CODP(MAIN)
 I $G(TO)="" S TO=MAIN
 D TMPEZM
 K @TMPEZM@(TO)
 N N,NP S NP=0
 ;
 N HD,A
 S HD=$G(@$$GLEZM@(MAIN))
 ;
 S N="" F  S N=$O(@$$GLEZM@(MAIN,N)) Q:N=""  D
 .I '$D(@$$GLMLPAR@(N)) Q
 .S A=$G(@$$GLEZM@(MAIN,N))
 .S NP=+A
 .I 'NP D
 ..S NP=$O(@TMPEZM@(TO,""),-1)+1
 ..S @TMPEZM@(TO,NP)=$$NEWST(N)
 .
 .S @TMPEZM@(TO,NP)=N_"\"_$$MLNAME(N)_"\"_$$MLEM(N)_"\"_$P(A,"\",4,20)
 ;
 S @TMPEZM@(TO)=HD
 Q
 ;
 ;
SUG(PRT) ;
 I $G(PRT)="" Q ""
 I $$PRKUP!$$KP^W4PK(PRT) Q $$SUG^W4P($$CLR^W4PK(PRT))
 Q $$MLSUGP^W4MLPRT(PRT)
 ;
GLEZM(STAM) ;
 Q $$GLEZM^W4EZM
 ;
GLEZMI(STAM) ;
 Q $$GLEZMI^W4EZM
 ;
GLPAR(STAM) ;
 I '$$PRKUP Q $$GLMLPAR
 Q $$^W4GL("PAR")
 ;
GLMLPAR(STAM) ;
 Q $$^W4GL("MLPAR")
 ;
NOSHOW(PRT) ;
 Q 0
 ;
NM(PRT) ;
 N NM I $G(PRT)="" Q ""
 I $$PRKUP!$$KP^W4PK(PRT) S NM=$$SHEM^W4P($$CLR^W4PK(PRT)) Q NM
 S NM=$$MLNAME^W4MLPRT(PRT)
 Q NM
 ;
CAPTION(STAM) ;
 I $$PRKUP Q $$^%W1DICT("ITEMTREETABLE")
 Q $$^%W1DICT("STOCKITEMTREETABLE")
 ;
SEARCHCAPTION(STAM) ;
 Q $$^%W1DICT("SEARCHPRODUCT")
 ;
FIRSTMAIN ;
 N A S A=$O(@$$GLEZM@(""))
 D PUT^%W1PRM("MAIN",A)
 Q
 ;
 ;
SELFROM ;
 W $$^%W1DICT("CHOICEITEM2COPY")
 W "&nbsp;"
 W "<select id=""from"" onChange=""ChangeFrom()"">",!
 W "<option value="""" >"_$$^%W1DICT("CHOICEDATA")_"</option>"
 ;
 N PRT S PRT="" F  S PRT=$O(@$$GLPAR@(PRT)) Q:PRT=""  D
 .I $$CODP(PRT)=$$CODP($G(MAIN)) Q
 .I $D(@$$GLEZM@($$CODP(PRT)))<10 Q
 .S NM=$$NM(PRT)
 .S A="<option value="""_PRT_""""
 .S A=A_">"_PRT_" "_$$H2U^%L1FRM(NM)_"</option>"
 .W A,!
 ;
 W "</select>",!
 W "&nbsp;"
 W "<input type=""button"" style=""color:grey;"_$$FSZBUT_""" "
 W " disabled=""disabled"" id=""showfrom"" onClick=""ShowFrom()"" "
 W " value="""_$$^%W1DICT("SHOW")_""" />",!
 ;
 W "<input type=""button"" style=""color:grey;"_$$FSZBUT_""" disabled=""disabled"" "
 W " id=""copyfrom"" onClick=""CopyFrom()"" "
 W " value="""_$$^%W1DICT("COPY")_""" />",!
 Q
 ;
 ;
CDEZM(A) ;
 Q $$CD^W4EZM(A)
 ;
NAME(A) ;
 Q $$NAME^W4EZM(A)
 ;
EM(A) ;
 Q $$EM^W4EZM(A)
 ;
EM1(A) ;
 N EM1 S EM1=$$EM1^W4EZM(A)
 I EM1="" S EM1="&nbsp;"
 Q EM1
 ;
QNETTO(A) ;
 Q $$QNETTO^W4EZM(A)
 ;
AHEX(A) ;
 Q $$AHEX^W4EZM(A)
 ;
ALUT(N,A) ;
 Q $$ALUT^W4EZM(N,A)
 ;
SUMST(CD,A) ;
 Q $$SUMST^W4EZM(CD,A)
 ;
NEWST(CD) ;
 Q CD_"\"_$$MLNAME(CD)_"\"_$$MLEM(CD)_"\1.000\100.00\"_$J($$MLMH(CD),2,2)
 ;
MLNAME(CD) ;
 Q $$MLNAME^W4MLPRT(CD) ;
 ;
MLEM(CD) ;
 Q $$EMSFR^W4PRT(CD) ;
 ;
MLMH(CD) ;
 Q $J($$MHAL^W4MLPRT(CD),2,2) ;
 ;
COMP(PRM) ;
 N MAIN S MAIN=$P(PRM,";") I MAIN="" Q 0
 N CD S CD=$P(PRM,";",2) I CD="" Q 0
 N QN S QN=$P(PRM,";",4)
 N AHEX S AHEX=$P(PRM,";",5) I AHEX'>0 Q 0
 N EM S EM=$P(PRM,";",6) S:EM=""!(EM=0) EM=1
 N VIEW S VIEW=$P(PRM,";",7)
 S MAIN=$$CODP(MAIN)
 D TMPEZM
 I $$VWEDIT(VIEW) S MAIN=$$CLR^W4PK(MAIN),TMPEZM=$$^W4MAIN("TMPEZMV")
 S NP=$$GETNP1(MAIN,CD)
 ;
 N EMOLD S EMOLD=$P($G(@TMPEZM@(MAIN,NP)),"\",3)
 S $P(@TMPEZM@(MAIN,NP),"\",3)=EM
 N KF S KF=$$NEWKF^W4PRT(EM,$$MLEM(CD))
 ;
 S $P(@TMPEZM@(MAIN,NP),"\",4)=QN
 S $P(@TMPEZM@(MAIN,NP),"\",5)=$J(AHEX,2,2)
 ;
 I $$AUTOMANOT,$$VWEDIT(VIEW)!'$$PRKUP D
 .S $P(@TMPEZM@(MAIN),"\")=$$COMPMANOT(MAIN_";"_VIEW,1)
 ;
 N MH S MH=$P($G(@TMPEZM@(MAIN,NP)),"\",6)
 I MH="" S MH=$$MLMH(CD)
 N AL S AL=$J(MH*QN*KF*100/AHEX,2,2)
 Q AL
 ;
REFRESH(MAIN) ;
 N A,CD,N,TMPEZM,NEWPRC D TMPEZM
 S MAIN=$$CODP(MAIN)
 S N="" F  S N=$O(@TMPEZM@(MAIN,N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD=$$CDEZM(A) Q:CD=""
 .S EM=$$EM(A)
 .S NEWPRC=$$MLMH(CD)*$$NEWKF^W4PRT(EM,$$EMSFR^W4PRT(CD))
 .D SETPRC(MAIN,N,NEWPRC)
 Q
 ;
SETPRC(MAIN,NP,NEWPRC) ;
 D TMPEZM
 S $P(@TMPEZM@(MAIN,NP),"\",6)=$J(NEWPRC,2,2)
 Q
 ;
GETNP(MAIN,CD) ;
 S MAIN=$$CODP(MAIN)
 N TMPEZM,N,A D TMPEZM
 Q $$GETNP1(MAIN,CD)
 ;
GETNP1(MAIN,CD) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@TMPEZM@(MAIN,N)) Q:N=""  D  Q:OK
 .S A=$G(^(N))
 .I $$CDEZM(A)=CD S OK=N
 Q OK
 ;
FOODCOST(MAIN,PRTMP) ;
 N MH,GLEZM
 S GLEZM=$$GLEZM
 S PRTMP=$G(PRTMP)
 S MH=$$MHLMAM(MAIN)*$$MANOT(MAIN,PRTMP)
 I 'MH Q 0
 Q $J($$TOTALUT(MAIN,PRTMP)/MH,2,2)
 ;
MANOT(MAIN,PRTMP) ;
 N GLEZM S GLEZM=$$GLEZM
 I $G(MAIN)="" Q 1
 S MAIN=$$CODP(MAIN)
 N MANOT S MANOT=""
 ;
 I $$AUTOMANOT,'$$PRKUP!$$VWED D  Q MANOT
 .S MANOT=$$COMPMANOT($P(MAIN,";")_";"_$$VIEW,$G(PRTMP))
 ;
 I $G(PRTMP) D
 .D TMPEZM
 .S MANOT=$$MANOT^W4EZM(MAIN,1)
 .I 'MANOT S MANOT=1,$P(@TMPEZM@(MAIN),"\")=MANOT
 ;
 I '$G(PRTMP) D
 .S MANOT=$P($G(@GLEZM@(MAIN)),"\")
 .I MANOT="",$D(@GLEZM@(MAIN))>9 D
 ..S MANOT=1,$P(@GLEZM@(MAIN),"\")=MANOT
 ;
 Q MANOT
 ;
 ;
MHMZR(MAIN) ;
 I $$PRKUP!$$KP^W4PK(MAIN) Q $$MH^W4P($$CLR^W4PK(MAIN))
 Q $J($$MHAL^W4MLPRT(MAIN),2,2) ;
 ;
MHLMAM(MAIN) ;
 N MH S MH=$$MHMZR(MAIN)
 I $$PRKUP!$$KP^W4PK(MAIN) Q $J(MH*100/(100+$$MAM^W4PRM),2,2)
 Q $J(MH,2,2)
 ;
SETMANOT(PRM) ;
 N MAIN,MANOT,RES,TMPEZM
 S MAIN=$P(PRM,";") I MAIN="" Q "ERR;NOMAIN"
 S MAIN=$$CODP(MAIN)
 S MANOT=$P(PRM,";",2) I 'MANOT S MANOT=1
 D TMPEZM
 S $P(@TMPEZM@(MAIN),"\")=MANOT
 S RES=$J($$MHMZR(MAIN)*MANOT,2,2)_";"
 S RES=RES_$J($$MHLMAM(MAIN)*MANOT,2,2)_";"
 Q RES
 ;
PRKUP(STAM) ;
 ;;I $$GETP^%W1PRM("PRKUP")&'$$GETP^%W1PRM("MLPRT")&'$G(%ARG("MLPRT")) Q 1
 I $$GETP^%W1PRM("PRKUP")&'$G(%ARG("MLPRT")) Q 1
 Q 0
 ;
CODP(PAR) ;
 I $G(PAR)="" Q ""
 Q $$^W4PK(PAR,+$$PRKUP)
 ;
NMMD(PRM) ;
 N EM,MAIN,CD,A
 S EM=$P(PRM,";") I EM="" Q "ERR;NOEM"
 S MAIN=$P(PRM,";",2) I MAIN="" Q "ERR;NOMAIN"
 S CD=$P(PRM,";",3)
 I CD="" Q "ERR;NOCODE"
 S MAIN=$$CODP(MAIN)
 S A=$G(@$$TMP^W4EZM@(MAIN,CD))
 ;
 N OLDEM S OLDEM=$$EM^W4EZM(A)
 N GLMIDA S GLMIDA=$$^W4GL("MLMIDA")
 N GLMKDM S GLMKDM=$$^W4GL("MLMKDM")
 I $L(OLDEM),'$G(@GLMKDM@(EM,OLDEM)),'$G(@GLMKDM@(OLDEM,EM)) Q "ERR;NOKFMD;"_$G(@GLMIDA@(OLDEM))_"<>"_$G(@GLMIDA@(EM))_";"_OLDEM
 Q $G(@GLMIDA@(EM))
 ;
SHOWCARD(PRT)
  W "<input type=""button"" value="""_$$^%W1DICT("SHOW")_""" "
  W " STYLE="""_$$FSZBUT_""" "
  W " onClick=""ShowItemCard('"_PRT_"','ifr',parent,'&BACK=1')"" />"
  Q
  ;
SHOWTREE(PRT)
  W "&nbsp;<input type=""button"" value="""_$$^%W1DICT("SHOWITEMTREE")_""" "
  W " STYLE="""_$$FSZBUT_""" "
  W " onClick=""ShowItemTree('"_PRT_"')"" />"
 Q
 ;
FSZBUT(STAM) ;
 Q "font-size:"_$$^W3FSZ(9)
 ;
VIEW(STAM) ;
 Q $G(%ARG("VIEW"))
 ;
BOLD(VL,ID,SIZE,COLOR) ;
 N ST S ST="<span "_$S($G(ID)'="":" id="""_ID_""" ",1:"")
 S ST=ST_" style=""font-weight:bold"
 I $G(SIZE) S ST=ST_";font-size:"_$$^W3FSZ(SIZE)
 I $L($G(COLOR)) S ST=ST_";color:"_COLOR
 S ST=ST_""" >"_VL_"</span>"
 Q ST
 ;
CLOSE ;
 D ROUNDBUT^%W1JS("newinvoice",$$^%W1DICT("CLOSE"),"Close()","color:red","wh,22")
 Q
 ;
SAVEBUT(MAIN) ;
 D ROUNDBUT^%W1JS("save",$$^%W1DICT("SAVE"),"Save('"_MAIN_";;"_$$VIEW_"')"_$S($G(%ARG("CLOSE")):";Close()",1:""),"color:green","wh,22")
 Q
 ;
AUTOMANOT(STAM) ;
 Q $$AUTOMANOT^W3PRM
 ;
COMPMANOT(MAIN,PRTMP) ;
 N VIEW S VIEW=""
 N GLEZM S GLEZM=$$GLEZM^W4EZM
 I $G(PRTMP) S GLEZM=$$TMP^W4EZM
 ;
 I $P(MAIN,";",2) D  ; -- VWED
 .S VIEW=$P(MAIN,";",2)
 .S MAIN=$$CLR^W4PK($P(MAIN,";"))
 .I $G(PRTMP),VIEW S GLEZM=$$^W4MAIN("TMPEZMV")
 ;
 N KAM S KAM=0
 S MAIN=$P(MAIN,";")
 N N S N="" F  S N=$O(@GLEZM@(MAIN,N)) Q:N=""  D
 .S KAM=KAM+$P($G(^(N)),"\",4)
 Q $J(KAM,3,3)
 ;
 ;
VWED(STAM) ;
 Q ($$VIEW=2)
 ;
VWEDIT(VIEW) ;
 Q (VIEW=2)
 ;
EDIT(STAM) ;
 Q ($$VIEW'=1)
 ;
VIEWONLY(STAM) ;
 Q ($$VIEW=1)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4EZMPRT
W4EZMPRT ; [ 03.01.16 08:04 ] [ 12.08.14 16:00 ] [ 11.08.14 16:19 ]
 N (JB,%ARG,SRCH)
 Q:$G(%ARG("NOSHOW"))
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4EZMPRT","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 D TMPEZM
 W "<div align=""center"" >",!
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("ITEMSTABLE")_"</span>",!
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""15%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""60%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""15%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "<th width=""10%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 N N,I
 ;
 N MAIN S MAIN=$$MAIN I MAIN="" W "</table></div>",!
 ;
 D PUT^%W3DEB("W4EZMPRT","MAIN=MAIN")
 Q:MAIN=""
 ;
 N MPR
 N N1 S N1="" F  S N1=$O(@TMPEZM@(MAIN,N1)) Q:N1=""  D
 .N A S A=$G(^(N1))
 .N CD S CD=$P(A,"\") Q:CD=""
 .S MPR(CD)=""
 ;
 S N="",I=0 F  S N=$O(@$$GLMLPAR@(N)) Q:N=""  D
 .N SUG S SUG=$$MLSUGP^W4MLPRT(N)
 .I $G(%ARG("KV")),%ARG("KV")'=SUG Q
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N,"","ML") Q
 .I $D(MPR(N)) Q
 .I '$$PRKUP^W4EZMIDK,N=MAIN Q
 .
 .W "<tr id=""trprt"_N_""" >" S I=I+1
 .
 .W "<td id=""cd"_N_""" "
 . W " style=""cursor:pointer"" onClick=""ShowItemCard('"_N_"')"" "
 .W " >&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$MLNAME^W4MLPRT(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$J($$MHAL^W4MLPRT(N),2,2)_"&nbsp;</td>"
 .
 .W "<td align=""center"">"
 . W " <input type=""checkbox"" id=""chprt"_N_""" "
 . W "  onClick=""OnClickTbl('"_N_"','TblPrt','trprt','chprt')"" />"
 .W "</td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
TMPEZM ;
 D TMPEZM^W4EZMIDK
 Q
 ;
MAIN(STAM) ;
 I $L($G(%ARG("MAIN"))) Q $$CODP^W4EZMIDK($G(%ARG("MAIN")))
 I $L($$GETP^%W1PRM("MAIN")) Q $$CODP^W4EZMIDK($$GETP^%W1PRM("MAIN"))
 Q ""
 ;
GLMLPAR(STAM) ;
 Q $$^W4GL("MLPAR")
 

W4EZT
W4EZT(STAM) ; [ 06.01.22 15:41 ] [ 03.01.22 16:41 ] [ 06.11.16 05:44 ] 
 Q $$^W4GL("P1EZT")
 ;
D(PAR) ;
 I $G(PAR)="" Q 0
 Q $D(@$$W4EZT@(PAR))
 ;
 ;
DD(PAR) I $G(PAR)="" Q 0
 Q ($$D(PAR)>9)
 
 
 
 

W4FASTGR
W4FASTGR ; [ 05.08.23 18:46 ] [ 10.05.22 13:47 ] [ 10.08.21 12:36 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4FASTGR","%ARG=[%ARG")
 D GL
 ;
 W "<div align=""center"" >",!
 ;
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"
  W $$KOT
 W "</span>",!
 ;
 W "<table id=""TblFastGr"" dir="""_$$^%W1DIR_""" border=""1"" "
 W " cellspacing=""0"" width=""100%"" "
 W " style=""background-color:white;color:black"" "
 W ">",!
 ;
  W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
  W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
  W " <th width=""20%"">"_$$^%W1DICT("GROUPCODE")_"</th>"
  W " <th width=""40%"">"_$$^%W1DICT("GROUPNAME")_"</th>"
  W " <th width=""20%"">"_$$^%W1DICT("SIGN")_"</th>"
  W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  I $$^W4VWGR(N) D
 .W "<tr id=""trfast"_N_""" "
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"
 . W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))
 .W "&nbsp;</td>"
 .
 .N ID,PROC S ID="chfast"_N
 .S PROC="OnClickTbl('"_N_"','TblFastGr','trfast','chfast')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</div>",!
 Q
 ;
 ;
GL S GL=$$^W4MAIN("TMPGR")
 S GLOB=$$^W4GL("W4FASTGR")
 I $$GETP^%W1PRM("GLOB")'="" S GLOB=$$^W4GL($$GETP^%W1PRM("GLOB"))
 Q
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 L +@GLOB:1
 K @GLOB
 M @GLOB=@GL
 L -@GLOB
 Q
 ;
MVGR2FAST(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N I,N,K S K=0 S N="" F I=1:1 S N=$O(@GL@(N)) Q:N=""  I $$^W4VWGR(N) S K=K+1
 N SAH S SAH=K+$L(PRM,";")-1
 D COLXY^W4HZTFR
 I SAH>COLX Q "FASTGRMAX;"_COLX
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .S @GL@(CD)=""
 .S OK=1
 Q OK
 ;
MVFAST2GR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .K @GL@(CD)
 .S OK=1
 Q OK
 ;
 ;
GR2TMP ;
 D GL
 L +@GL:1
 K @GL
 M @GL=@GLOB
 L -@GL
 Q
 ;
INIT ;
 D KILL^%W1PRM("GLOB")
 I $G(%ARG("GLOB"))'="" D PUT^%W1PRM("GLOB",GLOB)
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 S MSD=$$GETP^%W1PRM("MSD") D ^W3CSS
 D GR2TMP
 Q
 ;
KOT(STAM) ;
 Q $$^%W1DICT("FASTGROUPSLIST")
 ;
STYLE(N) ;
 Q " style=""background-color:"_$$BGCOLOR(N)_""" "
 ;
BGCOLOR(N) ;
 I '$$^W4VWGR(N) Q "pink"
 Q "white"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4FAXHTM
W4FAXHTM(HZ,MKR,FAX) ; [ 01.08.21 14:31 ] [ 09.06.21 10:53 ] [ 13.02.20 18:05 ] 
 N (JB,%ARG,%REM,HZ,MKR,FAX)
 S MSD=$$MSD(HZ) G:MSD="" END
 S MSDR=$$MSDR^W4PRM
 S FAX=$$FAX(MSD,$G(FAX))
 S MAIL="" I FAX["@",FAX["." S MAIL=FAX,FAX=""
 ;
 S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\",3)=MSD
 ;
 S %ARG("FAXHTM")=1
 D PUT^%W1PRM("FAXHTM",1)
 I $$FAX2MAIL^W3PRM!$$SND2MAIL^W3R(MSD)!'FAX!$L(MAIL) S A=$$SNDMAIL(HZ,MAIL) I A=1,$$SND2MAIL^W3R(MSD)'=2 G END
 ;
 I FAX="" G END
 S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\",4)=FAX
 ;
 I '$D(JB) S JB=$$^%W1SsID("W3ORD")
 S FLHZ="FAX"_HZ_"."_MSD
 S FLFAX=$$WEBL^W3MAIN_MSD_"/fax/"_FLHZ
 I $$MM^W4PRM S FLFAX=$$WEBL^W3MAIN_MSDR_"/fax/"_FLHZ_".html"
 ;
 N $ZT
 ;
 C FLFAX O FLFAX:(NEWVERSION:WRITE)
 U FLFAX W "<html><body>",!
 ;
 ;
 I $$^%L1ZOS(10,$$WEBL^W3MAIN_"w3hdfax"_MSDR_".gif")>-1 D
 .W "<div align=""center"">"
 . W "<img src="""_$$WEB^W3MAIN_"w3hdfax"_MSDR_".gif"">"
 .W "</div><br><br>",!
 ;
 S %ARG("FAX")=FAX
 D ^W4PCHBP(HZ,+$G(MKR)) ; ---------------- !!!!!!!!!!!!!!!!!!!!
 W "</body></html>",!
 ;
 C FLFAX
 ;
 I $$FAXPDF^W4PRM!$$OLDFAX^W4PRM D CHNCOLOR
 ;
 S FX2="cat "_FLFAX_" | mail -n -s ""order "_HZ_""" "_FAX_"@fax.tc"
 ;
 I $$FAXPDF^W4PRM D
 .S FAX=$TR(FAX,"+-","")
 .N FLPDF S FLPDF=$P(FLFAX,".html")_".pdf"
 .ZSY "rm "_FLPDF
 .N CMD S CMD="/pos/sbin/htmltopdf -q "_FLFAX_" "_FLPDF
 .;;S ^AA("CMDPDF")=CMD
 .ZSY CMD
 .S FX2="/usr/bin/faxspool -C - "_FAX_" """_FLPDF_""""
 ;
 I FX2'[">" S FX2=FX2_" > null" 
 ;;S ^AA("CMDFAX")=FX2
 D PUT^%W3DEB("W4FAXHTM","FX2=FX2")
 ;
 N E1,E2
 ZSY FX2 S E2=$ZSY
 ;;S ^AA("CMDFAX","RES")=E2
 ;
 I '$ZSY D
 .D SETOK(HZ)
 .S @$$^W4ORD(HZ)@(HZ,"FAX")=FAX_"~"_$H_"~"_$$GETP^%W1PRM("MLZR")_"~"_$$^W4MYDVN
 .Q:FAX=""
 .S @$$^W4ORD(HZ)@(HZ,"FAX",FAX)=$H_"~"_$$GETP^%W1PRM("MLZR")_"~"_$$^W4MYDVN
 ;
 I E2 D
 .S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\",6)=E2
 .S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\",4)=FAX_"~"_E2_"~"_$H
 ;
 N IND S IND=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)_"_"_FAX
 S @$$^W4ORD(HZ)@(HZ,"FAXSTA",IND)=E2
END D PUT^%W1PRM("FAXHTM",0) Q
 ;
 ;
FAX(MSD,FAX) ;
 S FAX=$$SPA^%L1FRM($G(FAX))
 I $L($G(FAX))>6 Q FAX
 S FAX=$$SPA^%L1FRM($TR($$FAX^W3R(MSD),"-",""))
 S:$E(FAX)="!" FAX=$E(FAX,2,20)
 Q:$L(FAX)<7 ""
 Q FAX
 ;
 ;
FAXALW(MSD,FAX) ;
 I $E(FAX)="!" Q 0
 Q $$FAXALW^W3R(MSD)
 ;
MAINPAGE(STAM) ;
 Q $$WEB^W3MAIN
 ;
SNDMAIL(HZ,MAIL) ;
 S MSD=$$MSD(HZ)
 I $G(MSD)="" Q "NOTREST"
 ;
 I $G(MAIL)="" S MAIL=$$EMAIL^W3R(MSD)
 I MAIL="" Q "NOTMAIL"
 I MAIL'["@"!(MAIL'[".") Q "MAILWRONG"
 N PRM S PRM=HZ_";Order "_HZ_";"_MAIL_";1;0;3;;;"
 D PUT^%W1PRM("MKRMAIL","W4FAXHTM;"_HZ)
 S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\",10)=MAIL
 Q $$EMAILCONT^W4PCHBP(PRM)
 ;
 ;
SEND(HZ) ;
 N MSD,MKR
 S MKR=1
 D SENDTRY(HZ,MKR)
 ;
 I $$ER(HZ) D SENDTRY(HZ,MKR) ; -- ERROR
 I $$ER(HZ) D SENDTRY(HZ,MKR) ; -- ERROR
 ;
 Q
 ;
 ;
SENDTRY(HZ,MKR,FAX,CMNT)
 N (JB,%ARG,%REM,HZ,MKR,FAX,CMNT,TRY)
 I '$G(TRY) S TRY=1
 I $$FAXTIME(HZ) S MKR=0
 ;
 D W4FAXHTM(HZ,+$G(MKR),$G(FAX))
 ;
 N TRY S TRY=$$TRY(HZ)+1
 S $P(@$$^W4ORD@(HZ,"DBF"),"\",7)=+$G(TRY)
 S START=$$START(HZ)
 S $P(START,"^",TRY)=$H
 S $P(@$$^W4ORD@(HZ,"DBF"),"\",8)=START
 S $P(@$$^W4ORD@(HZ,"DBF"),"\",9)=$G(CMNT)
 Q
 ;
 ;
DBF(N)
 I $G(N)="" Q ""
 Q $G(@$$^W4ORD@(N,"DBF"))
 ;
FAXTIME(N) N DBF S DBF=$$DBF(N)
 Q $P(DBF,"\",2)
 ;
FAXNOM(N)
 N DBF S DBF=$$DBF(N)
 Q $P(DBF,"\",4)
 ;
ER(N) N DBF S DBF=$$DBF(N)
 Q $P(DBF,"\",6)
 ;
TRY(N) N DBF S DBF=$$DBF(N)
 Q $P(DBF,"\",7)
 ;
START(N) N DBF S DBF=$$DBF(N)
 N ST S ST=$P(DBF,"\",8)
 I $P(ST,"^",$$TRY(N)) Q $P(ST,"^",$$TRY(N))
 Q ST
 ;
COMMENT(N) N DBF S DBF=$$DBF(N)
 N ST S ST=$P(DBF,"\",9)
 Q ST
 ;
 ;
STATFAX(N) ;
 N FAXTIME S FAXTIME=$$FAXTIME(N)
 N FAXLATE S FAXLATE=$P($$FAXLATE(N),"\",2) ; -- MIN
 N START S START=$$START(N)
 N MSD S MSD=$$MSDHZM^W4HZMST(N)
 N ER S ER=$P($G(@$$^W4ORD@(N,"DBF")),"\",6)
 ;
 N ST S ST=""
 ;
 N TRY S TRY=$$TRY(N)
 ;
 S IMGFAX=$$IMGFAX(N)
 ;
 S ST="<span style=""color:darkblue;font-size:"_$$^W3FSZ(7)_""">"
 S ST=ST_"["_($$FAXCOPY^W3R(MSD)+1)_":"_$$SENDEDFAX(N)_"]"
 S ST=ST_"</span>"
 ;
 I $L($$FAX^W4HZMST(N))!$L($$EMAIL^W4HZMST(N)) D  Q ST
 .S ST=ST_$$IMG^W4MMTIME("ShowFax('"_N_"')",IMGFAX)_"&nbsp;"
 .S ST=ST_$ZD(FAXTIME,"24:60")
 .N SND S SND=$$SND2MAIL^W3R(MSD)
 .I ('$$FAX^W4HZMST(N)!$$FAXERR^W4HZMST(N))&(SND=0!(SND=2)) S ST=ST_" "_$$VOSCL
 .I ('$L($$EMAIL^W4HZMST(N))!$$EMAILERR^W4HZMST(N))&(SND=1!(SND=2)) S ST=ST_$$VOSCL
 .I FAXLATE>0 S ST=$$TB(ST,FAXLATE)
 ;
 I TRY<2 D  Q ST
 .S ST=ST_$$IMG^W4MMTIME("ShowRestFax('"_MSD_"')",IMGFAX)_"&nbsp;"
 .S ST=ST_"<span style=""font-weight:bold"">"_$$^%W1DICT("INWAITING")_"</span>"
 .I FAXLATE>0 S ST=$$TB(ST,FAXLATE)
 ;
 I TRY<3 D  Q ST
 .S ST=ST_$$IMG^W4MMTIME("ShowFax('"_N_"')",IMGFAX)_"&nbsp;"
 .S ST=ST_$$^%W1DICT("RETRY",TRY)
 .I FAXLATE>0 S ST=$$TB(ST,FAXLATE)
 ;
 N ER S ER=$$ER(N)
 S ST=ST_$$IMG^W4MMTIME("ShowFax('"_N_"')",IMGFAX)_"&nbsp;"
 N ERRMSG S ERRMSG=ST_$$^%W1DICT("ERROR",ER)
 N ER1 S ER1="" I ER S ER1=$G(@$$^W4GL("W4FAXERR")@(ER))
 I ER1'="" S ERRMSG=$$^%W1DICT(ER1)
 Q ERRMSG_" <input type=""button"" value="""_$$^%W1DICT("SENDAGAIN")_""" onClick=""SendAgain('"_N_"')"" >"
 ;
 ;
IMGFAX(N) ;
 N IMG S IMG="w4mmimg.png"
 N MSDHZ S MSDHZ=$$MSDHZM^W4HZMST(N)
 I MSDHZ,$$ARMFAX^W3R(MSDHZ) S IMG="w4finger.png"
 Q IMG
 ;
SENDEDFAX(N) ;
 N I S I=0
 N N1 S N1="" F  S N1=$O(@$$^W4ORD@(N,"FAXSTA",N1)) Q:N1=""  I $G(^(N1))=0 S I=I+1
 Q I
 ;
FAXLATE(N) ;
 N DIF
 N RCVTIME S RCVTIME=$$DATCB^W4HZMST(N)
 ;
 N DT S DT=$$^%L1DC($P(RCVTIME," "),3)
 ;
 S RCVTIME=DT_","_(($P(RCVTIME,"  ",2)*3600)+($P($P(RCVTIME,"  ",2),":",2)*60))
 ;
 N FAXTIME S FAXTIME=$$FAXTIME(N)
 ;
 I 'FAXTIME D
 .S DIF=$$DIFTIME($H,RCVTIME)
 ;
 I FAXTIME D
 .S DIF=$$DIFTIME(FAXTIME,RCVTIME)
 ;
 S DIF=DIF-5
 ;
 I DIF<5 Q 0
 I DIF<10 Q "1\"_DIF
 I DIF<15 Q "2\"_DIF
 Q "3\"_DIF
 ;
 ;
SHOWFAX(N) ;
 N FAX S FAX=$$FAX^W4HZMST(N)
 N FAXTRY S FAXTRY=$$FAXTRY^W4HZMST(N)
 N MAIL S MAIL=$$EMAIL^W4HZMST(N)
 N MAILTRY S MAILTRY=$$EMAILTRY^W4HZMST(N)
 N COMMENT S COMMENT=$$COMMENT(N)
 N FAXER S FAXER=$$FAXERR^W4HZMST(N)
 N MAILER S MAILER=$$EMAILERR^W4HZMST(N)
 N ST S ST=""
 ;
 I $D(@$$^W4ORD@(N,"FAXSTA")) S ST=$$HISTFAX(N) G SHOWFAXEM
 ;
 I $L(FAX) S ST=FAX
 I FAXER S ST=FAXTRY_" - ERROR "_FAXER
 I 'FAXER,FAX="",FAXTRY="" S ST="FAX ERROR"
 ;
SHOWFAXEM ;
 I $L(MAIL),'MAILER D
 .S ST=ST_$S($L(ST):" <BR> ",1:"")_MAIL
 ;
 I MAILER D
 .S ST=ST_$S($L(ST):" <BR> ",1:"")_MAILTRY_" - ERROR "_MAILER
 ;
 I $L(COMMENT) S ST=ST_" <BR> "_COMMENT
 Q ST
 ;
SHOWDIF(TIME) ;
 Q "<span style=""font-weight:bold""> [+"_TIME_"] </span>"
 ;
MSD(HZ) ;
 Q $$MSDHZM^W4HZMST(HZ)
 ;
SETOK(HZ)
 N MSD S MSD=$$MSD(HZ) Q:'MSD
 S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\")=4
 S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\",2)=$H
 S $P(@$$^W4ORD(HZ)@(HZ,"DBF"),"\",6)=0
 ;
 I $$MM^W4PRM D
 .N HACHANA S HACHANA=$$HACHANA^W3R(MSD) S:'HACHANA HACHANA=30
 .S HACHANA=HACHANA*60
 .N READYTIME
 .S READYTIME=$H*86400+$P($H,",",2)+HACHANA
 .S $P(@$$^W4ORD(HZ)@(HZ,"READY"),"\")=(READYTIME\86400)_","_(READYTIME#86400)
 Q
 ;
DIFTIME(T1,T2) ;
 Q $$DIF^%L1TIME(T1,T2)
 ;
TB(ST,TIME) ;
 S ST="<table width=""100%""><tr><td width=""70%"">"_ST_"</td>"
 S ST=ST_"<td style=""font-weight:bold""> [+"_TIME_"] </td>"
 S ST=ST_"</tr></table>"
 Q ST
 ;
VOSCL(STAM) ;
 Q " <span style=""color:red"">!</span>"
 ;
CHNCOLOR ;
 N A,A1
 N FLFAX1 S FLFAX1=FLFAX_"__1"
 O FLFAX:(REWIND:READONLY)
 U 0 I $$^%L1ZOS(10,FLFAX1)>0 ZSY "rm "_FLFAX1
 O FLFAX1:(WRITE:NEWVERSION:REWIND)
 F  U FLFAX R A Q:$ZEOF  D
 .S A1=$$CHNCOLOR1(A)
 .U FLFAX1 W A1,!
 C FLFAX,FLFAX1
 U 0 ;
 I $$^%L1ZOS(10,FLFAX)>0 ZSY "rm "_FLFAX
 ZSY "mv "_FLFAX1_" "_FLFAX
 I $$^%L1ZOS(10,FLFAX1)>0 ZSY "rm "_FLFAX1
 Q
 ;
CHNCOLOR1(A) ;
 N A1,J,J1,JJ
 S A1="",J=0,J1=0
CHNCOLOR2 ; 
 S J=J+1 I J>$L(A) G CHNCOLORE
 I $E(A,J,J+5)="color:",$E(A,J-1)'="-" D  G CHNCOLOR2
 .F JJ=J+6:1:$L(A) Q:$E(A,JJ)=""""  Q:$E(A,JJ)=";"
 .S SMB=";" I $E(A,JJ)="""" S SMB=""""
 .S A1=A1_"color:black"_SMB
 .S J=JJ
 ;
 S A1=A1_$E(A,J)
 G CHNCOLOR2
CHNCOLORE ; 
 Q A1
 ;
HISTFAX(HZ) ; 
 N (JB,%ARG,%REM,HZ)
 N ST S ST=""
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"FAXSTA",N),-1) Q:N=""  D
 .S A=$G(^(N))
 .S FAX=$P(N,"_",2)
 .S TIME=$P(N,"_")
 .S H=$E(TIME,1,5)_","_+$E(TIME,6,10)
 .S STAT=$S($P(A,"~"):"ERROR "_$P(A,"~"),'$P(A,"~",2):"OK",1:$P(A,"~",3))
 .S ST=ST_$ZD(H,"DD.MM.YY 24:60")_" "_FAX_" "_STAT_"<BR>"
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4FAXSTA
W4FAXSTA(PRM) ; [ 24.09.19 14:00 ] [ 23.09.19 10:38 ] [ 
 N (JB,%ARG,%REM,PRM)
 S DLM="~"
 S HZ=$P(PRM,DLM)
 S FAX=$P(PRM,DLM,2)
 S MSD=$P(PRM,DLM,3)
 S STA=$P(PRM,DLM,4),STA1=""
 ;
 F I=1:1 S T=$T(STAT+I) Q:T=""  Q:T[" Q  ;"  I STA=$P(T,";",2) S STA1=$P(T,";",3)
 ;
 S GL=$$^W4MAIN("W4FAXSTA")
 S D=$P($H,",")
 S T=$P($H,",",2)
 S @GL@(D,T)=HZ_"~"_FAX_"~"_MSD_"~"_STA_"~"_STA1
 S $P(@$$^W4ORD@(HZ,"FAXSTA",IND),"~",2)=STA
 S $P(@$$^W4ORD@(HZ,"FAXSTA",IND),"~",3)=STA1
 S $P(@$$^W4ORD@(HZ,"FAXSTA",IND),"~",4)=D
 S $P(@$$^W4ORD@(HZ,"FAXSTA",IND),"~",5)=T
 Q
 ;
STAT ;
 ;0;SENT;
 ;1;ERRCMD;
 ;2;ERROPN;
 ;3;ERRMOD;
 ;4;BUSY;
 ;5;NODIAL;
 ;10;NO CAR;
 ;12;PAGE ERR;
 ;15;INTRPT;
 Q  ;
 
 
 
 

W4FBAR
W4FBAR(STAM) ; [ 07.11.08 10:43 ] [ 19.05.08 18:44 ] [
 I $G(@$$^W4PRM@("FBAR",$$^W4MYDVN)) Q 1
 Q 0

W4FGIB
W4FGIB(STAM) ; [ 11.04.14 06:09 ] [ 07.04.13 14:36 ] [ 25.07.11 05:54 ]
 S PATHGB=$$PATHGB
END ;
 N ZD S ZD=$ZDIR
 ;;D PUT^%W3DEB("W4FGIB","PATHGB=PATHGB & ZD=ZD")
 N DZ S DZ=+$H
 I $$MSD^W4DLVCSR!$$DLV^W4DLVCSR D
 .S DZ=$$^W4DZ
 Q PATHGB_"#J"_$ZD(DZ,"YYMMDD")
 ;
PATHGB(STAM) ;
 N MSD S MSD=$$GET^%W1PRM("MSD") I 'MSD S MSD=1
 N PATHGB
 S PATHGB=$$MSM^W3MAIN
 S:$E(PATHGB,$L(PATHGB))'="/" PATHGB=PATHGB_"/"
 S PATHGB=PATHGB_+$G(MSD)_"/jour/"
 Q PATHGB

W4FIND
W4FIND(FIND,GL,SUPER) ;   [ 17.06.26 10:54 ] [ 22.05.26 09:55 ] [ 12.04.26 10:22 ] 
 N (JB,FIND,%ARG,%REM,GL,SUPER)
 ;;S ^AA("W4FIND","FIND")=FIND
 ;;S ^AA("W4FIND","GL")=GL
 ;;S ^AA("W4FIND","SUPER")=$G(SUPER)
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S PRTN=$$^%W1JB
 ;
 S FIND=$$SPA^%L1FRM(FIND)
 ;
 S TMPPAR=$$^W4MAIN("TMPMLPAR")
 K @$$^W4MAIN("TMPOLD")
 ;
BG S FIND=$G(FIND),GLB=""
 S FIND=$$CNWEB^%L1FRM(FIND)
 ;;S ^AA("W4FIND","FIND")=FIND
 I $G(GL)="" W "GL is not defined !",! Q
 ;
 I $E(FIND,$L(FIND))="=" S FIND=$E(FIND,1,$L(FIND)-1)
 I $E(FIND)="=" S FIND=$E(FIND,2,$L(FIND))
 ;;S ^AA("W4FIND","FIND1")=FIND
 ;
 I GL["^|M|" S GLB="^|$$^W3MAIN|"_$P(GL,"|",3) G SUP
 S:$E(GL)="^" GL=$E(GL,2,20)
 S:GL["|" GL=$P(GL,"|",3)
 S:GL["]" GL=$P(GL,"]",2)
 ;
 I $G(%ARG("MSDR")) D
 .I $G(%ARG("MSD")) Q
 .N MSD S MSD=$O(^|$$^W3MAIN|W3MSDR(%ARG("MSDR"),"")) I MSD S %ARG("MSD")=MSD
 ;
 I GL="LKH",$$ONLINE^W4DLVCSR S GL="LKHA"
 ;
 I GL'="MDP",GL'="LKH" S GLB=$$^W4GL(GL)
 ;
SUP I $G(SUPER),GL="PAR" D
 .D CRSUG^W4HZTFR
 .K @$$^W4MAIN("TMPIT")
 .N N,N1,PARCAT S PARCAT=$$^W4MAIN("PARCAT")
 .S N="" F  S N=$O(@PARCAT@(N)) Q:N=""  D
 ..S N1="" F  S N1=$O(@PARCAT@(N,N1)) Q:N1=""  D
 ...S @$$^W4MAIN("TMPIT")@(N1)=$$SHEM^W4P(N1)
 .S GLB=$$^W4MAIN("TMPIT")
M ;
 I GL="LKH" D
 .N GL D GL^W3L S GLB=GL
 ;
 I GL="MDP" S GLB=$$^W4PRM_"(""MDP"")"
 ;
 I GL="MLPAR" D
 .N TMPMLI S TMPMLI=$$^W4MAIN("TMPMLI")
 .K @TMPMLI
 .N GLI S GLI=$$^W4MAIN("TMPPARI")
 .I $D(@GLI)<10 D ^W4IDKMLP(JB)
 .N FND S FND=$P(FIND," ",$L(FIND," "))
 .;;S FND=$$INVH^%L1FRM(FND)
 .S FND=$E(FND,1,10)
 .S FND=FND_$J("",10-$L(FND))
 .N N S N=FND F  S N=$O(@GLI@(N)) Q:$E(N,1,$L(FND))'=FND  D
 ..N CD S CD=$G(^(N)) Q:CD=""
 ..S @TMPMLI@(CD)=$G(@$$^W4GL("MLPAR")@(CD))
 .S GLB=TMPMLI
 ;
 S TMPST=$$^W4MAIN("TMPST")
 K @TMPST
 ;
 S ENG=0
 I $$ENG(FIND)!($$^%W1DIR="LTR") S ENG=1
 ;
 I FIND'="" D
 .S FIND=$$SPA^%L1FRM($$CLEAR^%L1FRM(FIND))
 .I ENG S FIND=$$FUNC^%UCASE(FIND) Q
 ;
 S ITEM=""
 I GL="LKH"!(GL="LKHA") S ITEM=999
 N LKHR S LKHR=$$GETP^%W1PRM("LKHR")
 ;
 N FIND1 S FIND1=$TR(FIND,"-","")
 ;
 N GLEZLI S GLEZLI=$$^W4GL("P1EZLI")
 ;
 I GL="LKH",$$^W4DLVCSR,FIND1?1N.N,$D(@GLEZLI@(FIND1))>9,'$G(%ARG("MAIN")) D  G VIEW
 .D ADDTBL(FIND1)
 .N N S N="" F  S N=$O(@GLEZLI@(FIND1,N)) Q:N=""  D
 ..D ADDTBL(N)
 ;
 I GL="LKH",$$^W4DLVCSR,FIND1?1N.N,'$D(@$$^W4GL("LKH")@(FIND1))!$$CLOSED^W4L(FIND1),$D(@$$^W4GL("KLLKTH")@(FIND1))>9 D  G VIEW
 .N N S N="" F  S N=$O(@$$^W4GL("KLLKTH")@(FIND1,N)) Q:N=""  D
 ..D ADDTBL(N)
 ;
 I GL="WLKMNET" D  G VIEW
 .N MSDR S MSDR=+$$MSDR
 .S ^AA("W4FIND","MSDR")=MSDR
 .N N S N="" F  S N=$O(^|$$^W3MAIN|WLKMNET(MSDR,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..N NM S NM=$$GETL^W3ANSLKM(N,"LKH")
 ..I NM'="",$$SRCH^W1SRCH(NM,FIND) D ADDTBL(N)
 ;
 I FIND?1N.N,$D(@GLB@(FIND)) D ADDTBL(FIND) I $$SUPER^W3PRM G VIEW
 I FIND?1U.U."-".N,$D(@GLB@(FIND)) D ADDTBL(FIND)
 ;
 I FIND?.P,FIND'="`" D  G VIEW
 .F J=1:1:1999 S ITEM=$O(@GLB@(ITEM)) Q:ITEM=""  D ADDTBL(ITEM)
 ;
 F  S ITEM=$O(@GLB@(ITEM)) Q:ITEM=""  D
 .I FIND?1U.N.U."-".N.U.N,$E(ITEM,1,$L(FIND))=FIND D ADDTBL(ITEM) Q
 .N NAME S NAME=$$NAME(ITEM)
 .I ENG,$$^%W1DIR="LTR" S NAME=$$FUNC^%UCASE(NAME)
 .I NAME="" S NAME=" "
 .I FIND="" S FIND=" "
 .;;S ^AA("W4FIND","NAME",NAME)=""
 .;;S ^AA("W4FIND","NAME","FIND",FIND)=""
 .I ENG,(" "_NAME_" ")[(" "_FIND) D ADDTBL(ITEM) Q
 .;;I (" "_NAME_" ")[(FIND_" ") D ADDTBL(ITEM) Q
 .I $$SRCH^W1SRCH(NAME,FIND) D ADDTBL(ITEM) Q
 .N NAME1 S NAME1=NAME
 .I NAME["ee" S NAME1=$$RPL^%L1FRM(NAME1,"ee","e")
 .N FIND1 S FIND1=FIND
 .I FIND["ee" S FIND1=$$RPL^%L1FRM(FIND1,"ee","e")
 .I $$SRCH^W1SRCH(NAME1,FIND1) D ADDTBL(ITEM) Q
 ;
 I $D(@TMPST)<10,FIND["-" S FIND=$TR(FIND,"-","") G BG
 ;
 I $$USMLPAR(GL),$G(%ARG("SORT"))!$G(@$$^W4PRM@("SORTITRA")) D
 .N TMPST1 S TMPST1=$$^W4MAIN("TMPST1") K @TMPST1
 .N ITEM S ITEM="" F  S ITEM=$O(@TMPST@(ITEM)) Q:ITEM=""  D
 ..I $G(%ARG("SORT"))=2!$G(@$$^W4PRM@("SORTITRA")) D
 ...N IT S IT=1000000-$$^W4GETMLY(ITEM) 
 ...S IT=$J(IT,10,0)
 ...S ^AA("W4FIND",ITEM,"IT")=IT
 ...N ITM S ITM=ITEM I ITM'["_" S ITM=IT_"_"_ITEM
 ...I $D(@TMPST@(ITEM))#2 S @TMPST1@(ITM)=@TMPST@(ITEM)
 .
 .K @TMPST
 .M @TMPST=@TMPST1
 .K @TMPST1
 ;
VIEW ;
 W "<div "_$$^%W1ALIGN_" >",!
 D CLOSE
 W "<br>",!
 W "</div>",!
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $G(%ARG("HD"))'="" D
 .W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"
 .W ";"_$$FONTFM^W3CSS
 .W """>"
 .W $$^%W1DICT(%ARG("HD"))
 .W "</span>",!
 .W "<br>",!
 ;
 N DRC S DRC=$$^%W1DIR
 I $L($G(%ARG("DIR"))) S DRC=%ARG("DIR")
 W "<table id=""TblStr"" width=""100%"" dir="""_DRC_""" "
  I $$^W4TABLET,$G(%ARG("PADDING"))<5 S %ARG("PADDING")=5
  I $G(%ARG("PADDING")) W " cellpadding="""_$$^W4KF($G(%ARG("PADDING")))_""" "
  W " style="""
  I $G(%ARG("FSZ")) W "font-size:"_$$^W3FSZ(%ARG("FSZ"))
  I '$G(%ARG("FSZ")) W "font-size:"_$$^W3FSZ(12)
  W """"
 W ">",!
 ;
 N ITEM,ITEM1,ITM
 S ITM="" F  S ITM=$O(@TMPST@(ITM))  Q:ITM=""  D
 .S ITEM=ITM I ITM["_" S ITEM=$P(ITM,"_",$L(ITM,"_"))
 .Q:ITEM=""
 .S ITEM1=$$NAME(ITEM) Q:ITEM1=""
 .S ITEM1=$$^W4NM(ITEM1)
 .W "<tr "
 . W " onMouseOver=""this.style.backgroundColor='lightgrey'"" "
 . W " onMouseOut=""this.style.backgroundColor='white'"" "
 .W ">"
 .W "<td id=""tdid"_ITEM_""" align="_$S(DRC="RTL":"right",1:"left")_" onClick=""ClickItem('"_ITEM_"','"_$$CLWEB^%L1FRM($$H2U^%L1FRM(ITEM1))_"')"""
 .W " dir="""_$$^%W1DIR_""""
 .N COLOR S COLOR="blue"
 .I $L($G(%ARG("COLOR"))) S COLOR=%ARG("COLOR")
 .I GL="LKH",$$MAINCUST^W4L(ITEM) S COLOR="brown"
 .I GL="LKH",$$CLOSED(ITEM) S COLOR="red"
 .W " style=""cursor:pointer;color:"_COLOR_";width:48%;word-break:break-word;overflow-wrap:break-word"
 .I GL="LKH",$$ISCR^W4L(ITEM) W ";font-weight:bold"
 .I $G(%ARG("NOUNDRL"))="" W ";text-decoration:underline"
 .W """>"
 .W ITEM_" "_$$H2U^%L1FRM(ITEM1)
 .W "</td>"
 .
 .I GL="LKH" D
 ..W "<td "
 ..I $$CLOSED(ITEM) D
 ... W "style=""color:red"" >"_$$^%W1DICT("CUSTCLOSED")
 ..W ">"
 ..I $$MAZAV^W4L(ITEM)'<1 W " "
 ..W "</td>",!
 ..
 ..I $G(%ARG("NOADDR")) Q
 ..W "<td>"
 .. W $$H2U^%L1FRM($$KTVM^W4L(ITEM))
 ..W "</td>"
 .
 .I GL="PAR" D
 ..N MH S MH=$$MH^W4P(ITEM) I $$INP S MH=$$MHAL^W4P(ITEM)
 ..W "<td "_$$^%W1ALIGN_" >"_$J(MH,2,2)_"</td>"
 .
 .I $$USMLPAR(GL) D
 ..N MH S MH=0
 ..D
 ...I $$ONEGLPAR^W3PRM S MHCSR=$$MH^W4P(ITEM)
 ...I $$GETP^%W1PRM("SPK") D  I MH Q
 ....S MH=$G(@$$^W4GL("MLSPKMH")@($$GETP^%W1PRM("SPK"),ITEM))
 ...S MH=$$MHAL^W4MLPRT(ITEM)
 ..
 ..W "<td width=""10%"">[ "_$$^W4GETMLY(ITEM)_" ]</td>"
 ..I '$$NOVWMHAL^W3PRM!(GL="PAR") D
 ...W "<td "_$$^%W1ALIGN_" "
 ...I $$ONEGLPAR^W3PRM W "style=""font-weight:bold"" "
 ...W ">"_$J(MH,2,2)_"</td>"
 ..
 ..I $$ONEGLPAR^W3PRM W "<td "_$$^%W1ALIGN_" >"_$J(MHCSR,2,2)_"</td>"
 ..
 .
 .I $E(GL,1,3)="LKH",$G(%ARG("ITRA")) D
 ..W "<td "_$$^%W1ALIGN_" >"_$J($$ITRA^W4L(ITEM),2,2)_"</td>"
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D CLOSE
 K @$$^W4MAIN("TMPIT")
 Q
 ;
 ;
ADDTBL(ITEM) ;
 I $G(LKHR),GL="LKH",$D(@$$^W4GL("P1EZLI")@(LKHR,ITEM)) Q
 I '$$USL(ITEM) Q
 S @TMPST@(ITEM)=""
 Q
 ;
ENG(TXT) ;
 N OK S OK=1
 N J F J=1:1:$L(TXT) I $A(TXT,J)<32!($A(TXT,J)>90) S OK=0 Q
 Q OK
 ;
NAME(ITEM) ;
 N ST,NAME
 I GL="PAR" D  Q NAME
 .S NAME=$$SHEM^W4P(ITEM)
 ;
 I GL="MDP" Q $P($G(@GLB@(ITEM,1)),"\",4)
 ;
 I GL="B1CLUB" Q $P($G(@GLB@(ITEM,1)),"\",3)
 ;
 I GL="PARSHA" D  Q ST
 .S ST=$$MHPNAME^W3MHPSHA(ITEM)
 .S ST=ST_" "_$$^%W1DICT("FROM")_" "_$$^%W1DICT("DAY"_$$MEYOM^W3MHPSHA(ITEM))
 .S ST=ST_" "_$$^%W1DICT("TO")_" "_$$^%W1DICT("DAY"_$$ADYOM^W3MHPSHA(ITEM))
 .S ST=ST_" "_$$^%W1DICT("FROM")_" "_$$MESHAA^W3MHPSHA(ITEM)
 .S ST=ST_" "_$$^%W1DICT("TO")_" "_$$ADSHAA^W3MHPSHA(ITEM)
 ;
 I GL="WLKMNET" D  Q ST
 .S ST=$$H2U^%L1FRM($$GETL^W3ANSLKM(ITEM,"LKH"))
 ;
 S NAME=$G(@GLB@(ITEM))
 I $G(%ARG("DLM"))'="" S NAME=$P(NAME,%ARG("DLM"))
 ;
 S NAME=$TR(NAME,"-"," ") ; -- 07/02/17
 ;;S NAME=$$^W4NM(NAME)
 ;;I $$TMPENG^%W1LNG,NAME[" = " S NAME=$$INVD^%L1FRM($P(NAME," = ")," ")
 ;;I '$$TMPENG^%W1LNG,NAME[" = " S NAME=$P(NAME," = ",2,20)
 I GL'="NAME" Q NAME
 ;
 Q $G(@GLB@(ITEM,1))
 ;
 ;
USL(ITEM) ;
 I GL["NAME",$G(%ARG("PAIL")),'$$GET1^W4LEVPR(ITEM,"PAIL") Q 0
 I GL["LKH",$G(%ARG("MAIN"))=1,$G(@$$^W4GL("P1EZL")@(ITEM)) Q 0
 I GL["LKH",$G(%ARG("MAIN"))=2,'$D(@$$^W4GL("P1EZLI")@(ITEM)) Q 0
 I $G(%ARG("GL"))="PAR",$L(ITEM),'$$^W4PRTVW(ITEM),'$G(%ARG("VWALL")) Q 0
 N OK S OK=1
 I $$USMLPAR(GL),$G(@$$^W4GL("W3PRM")@("NOVWOLD")) D  Q OK
 .I $D(@$$^W4MAIN("TMPMLPAR"))<10 D CRTMPPAR^W4MAIN(JB)
 .N LAST S LAST=$O(@$$^W4MAIN("TMPMLPAR")@(ITEM,99999),-1)
 .I LAST,$H-LAST>365 S OK=0 S @$$^W4MAIN("TMPOLD")@(ITEM)=LAST
 Q 1
 ;
INP(STAM) ;
 I $G(%ARG("INP")) Q 1
 I $$INP^W4DOC Q 1
 I $G(%ARG("GL"))="MLPAR" Q 1
 Q 0
 ;
CLOSE ;
 D ROUNDBUT^%W1JS("close",$$^%W1DICT("CLOSE"),"Close()","color:red","wh,22")
 Q
 ;
SORTBYMLY ;
 D ROUNDBUT^%W1JS("sortbymly",$$^%W1DICT("SORTBYMLY"),"SortByMly()","color:blue","wh,22")
 Q
 ;
CLOSED(LK) ;
 Q $$CLOSED^W4L(LK)
 ;
LK(FIND,GL) ;
 I GL="LKH",$$^W4ISCDLK(FIND) Q 1
 Q 0
 ;
USMLPAR(GL) ;
 I GL="MLPAR" Q 1
 I $$NEWMLY^W3PRM,GL="PAR",$$ONEGLPAR^W3PRM Q 1
 Q 0 
 ;
MSDR() 
 I $G(%ARG("MSDR")) Q %ARG("MSDR") 
 Q $$GETP^%W1PRM("MSDR")  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4FIND0
W4FIND(FIND,GL,SUPER) ; [ 17.08.25 12:57 ] [ 20.03.25 12:15 ] [ 28.01.25 12:53 ] 
 N (JB,FIND,%ARG,%REM,GL,SUPER)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S PRTN=$$^%W1JB
 ;
 S TMPPAR=$$^W4MAIN("TMPPAR") K @TMPPAR
 I $$USMLPAR(GL),$G(@$$^W4GL("W3PRM")@("NOVWOLD")) D
 .N TMPOLD S TMPOLD=$$^W4MAIN("TMPOLD") K @TMPOLD
 .S @TMPOLD=$ZD($H,"DD.MM.YY 24:60")_"\"_$$^W4MYDVN
 .N DT S DT="" F  S DT=$O(@$$^W4GL("W4MLY")@(DT)) Q:DT=""  D
 ..N PAR S PAR="" F  S PAR=$O(@$$^W4GL("W4MLY")@(DT,PAR)) Q:PAR=""  D
 ...S @TMPPAR@(PAR,DT)=""
 ;
BG S FIND=$G(FIND),GLB=""
 S FIND=$$CNWEB^%L1FRM(FIND)
 ;;S ^AA("W4FIND","FIND")=FIND
 I $G(GL)="" W "GL is not defined !",! Q
 ;
 I $E(FIND,$L(FIND))="=" S FIND=$E(FIND,1,$L(FIND)-1)
 I $E(FIND)="=" S FIND=$E(FIND,2,$L(FIND))
 ;;S ^AA("W4FIND","FIND1")=FIND
 ;
 I GL["^|M|" S GLB="^|$$^W3MAIN|"_$P(GL,"|",3) G SUP
 S:$E(GL)="^" GL=$E(GL,2,20)
 S:GL["|" GL=$P(GL,"|",3)
 S:GL["]" GL=$P(GL,"]",2)
 ;
 I $G(%ARG("MSDR")) D
 .I $G(%ARG("MSD")) Q
 .N MSD S MSD=$O(^|$$^W3MAIN|W3MSDR(%ARG("MSDR"),"")) I MSD S %ARG("MSD")=MSD
 ;
 I GL="LKH",$$ONLINE^W4DLVCSR S GL="LKHA"
 ;
 I GL'="MDP",GL'="LKH" S GLB=$$^W4GL(GL)
 ;
SUP I $G(SUPER) D
 .D CRSUG^W4HZTFR
 .K @$$^W4MAIN("TMPIT")
 .N N,N1,PARCAT S PARCAT=$$^W4MAIN("PARCAT")
 .;;F I=1:1:120 Q:$D(@PARCAT)=11&$G(@PARCAT)  H 1
 .S N="" F  S N=$O(@PARCAT@(N)) Q:N=""  D
 ..S N1="" F  S N1=$O(@PARCAT@(N,N1)) Q:N1=""  D
 ...S @$$^W4MAIN("TMPIT")@(N1)=$$SHEM^W4P(N1)
 .S GLB=$$^W4MAIN("TMPIT")
M ;
 I GL="LKH" D
 .N GL D GL^W3L S GLB=GL
 ;
 I GL="MDP" S GLB=$$^W4PRM_"(""MDP"")"
 ;
 S TMPST=$$^W4MAIN("TMPST")
 K @TMPST
 ;
 S ENG=0
 I $$ENG(FIND)!($$^%W1DIR="LTR") S ENG=1
 ;
 I FIND'="" D
 .S FIND=$$SPA^%L1FRM($$CLEAR^%L1FRM(FIND))
 .I ENG S FIND=$$FUNC^%UCASE(FIND) Q
 ;
 S ITEM=""
 I GL="LKH"!(GL="LKHA") S ITEM=999
 N LKHR S LKHR=$$GETP^%W1PRM("LKHR")
 ;
 N FIND1 S FIND1=$TR(FIND,"-","")
 ;
 N GLEZLI S GLEZLI=$$^W4GL("P1EZLI")
 I GL="LKH",$$^W4DLVCSR,FIND1?1N.N,$D(@GLEZLI@(FIND1))>9,'$G(%ARG("MAIN")) D  G VIEW
 .D ADDTBL(FIND1)
 .N N S N="" F  S N=$O(@GLEZLI@(FIND1,N)) Q:N=""  D
 ..D ADDTBL(N)
 ;
 I GL="LKH",$$^W4DLVCSR,FIND1?1N.N,'$D(@$$^W4GL("LKH")@(FIND1))!$$CLOSED^W4L(FIND1),$D(@$$^W4GL("KLLKTH")@(FIND1))>9 D  G VIEW
 .N N S N="" F  S N=$O(@$$^W4GL("KLLKTH")@(FIND1,N)) Q:N=""  D
 ..D ADDTBL(N)
 ;
 I FIND?1N.N,$D(@GLB@(FIND)) D ADDTBL(FIND) I $$SUPER^W3PRM G VIEW
 I FIND?1U.U."-".N,$D(@GLB@(FIND)) D ADDTBL(FIND)
 ;
 I FIND?.P,FIND'="`" D  G VIEW
 .F J=1:1:1999 S ITEM=$O(@GLB@(ITEM)) Q:ITEM=""  D ADDTBL(ITEM)
 ;
 F  S ITEM=$O(@GLB@(ITEM)) Q:ITEM=""  D
 .I FIND?1U.U."-",$E(ITEM,1,$L(FIND))=FIND D ADDTBL(ITEM) Q
 .N NAME S NAME=$$NAME(ITEM)
 .I ENG,$$^%W1DIR="LTR" S NAME=$$FUNC^%UCASE(NAME)
 .I ENG,(" "_NAME_" ")[(" "_FIND) D ADDTBL(ITEM) Q
 .;;I (" "_NAME_" ")[(FIND_" ") D ADDTBL(ITEM) Q
 .I $$SRCH^W1SRCH(NAME,FIND) D ADDTBL(ITEM) Q
 .N NAME1 S NAME1=NAME
 .I NAME["ee" S NAME1=$$RPL^%L1FRM(NAME1,"ee","e")
 .N FIND1 S FIND1=FIND
 .I FIND["ee" S FIND1=$$RPL^%L1FRM(FIND1,"ee","e")
 .I $$SRCH^W1SRCH(NAME1,FIND1) D ADDTBL(ITEM) Q
 ;
 I $D(@TMPST)<10,FIND["-" S FIND=$TR(FIND,"-","") G BG
 ;
 I $$USMLPAR(GL),$G(%ARG("SORT"))!$G(@$$^W4PRM@("SORTITRA")) D
 .N TMPST1 S TMPST1=$$^W4MAIN("TMPST1") K @TMPST1
 .N ITEM S ITEM="" F  S ITEM=$O(@TMPST@(ITEM)) Q:ITEM=""  D
 ..I $G(%ARG("SORT"))=2!$G(@$$^W4PRM@("SORTITRA")) D
 ...N IT S IT=1000000-$$^W4GETMLY(ITEM) 
 ...S IT=$J(IT,10,0)
 ...S ^AA("W4FIND",ITEM,"IT")=IT
 ...N ITM S ITM=ITEM I ITM'["_" S ITM=IT_"_"_ITEM
 ...I $D(@TMPST@(ITEM))#2 S @TMPST1@(ITM)=@TMPST@(ITEM)
 .
 .K @TMPST
 .M @TMPST=@TMPST1
 .K @TMPST1
 ;
VIEW ;
 W "<div "_$$^%W1ALIGN_" >",!
 D CLOSE
 W "<br>",!
 W "</div>",!
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $G(%ARG("HD"))'="" D
 .W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"
 .W ";"_$$FONTFM^W3CSS
 .W """>"
 .W $$^%W1DICT(%ARG("HD"))
 .W "</span>",!
 .W "<br>",!
 ;
 W "<table id=""TblStr"" width=""100%"" dir="""_$$^%W1DIR_""" "
  I $$^W4TABLET,$G(%ARG("PADDING"))<5 S %ARG("PADDING")=5
  I $G(%ARG("PADDING")) W " cellpadding="""_$$^W4KF($G(%ARG("PADDING")))_""" "
  W " style="""
  I $G(%ARG("FSZ")) W "font-size:"_$$^W3FSZ(%ARG("FSZ"))
  I '$G(%ARG("FSZ")) W "font-size:"_$$^W3FSZ(12)
  W """"
 W ">",!
 ;
 N ITEM,ITEM1,ITM
 S ITM="" F  S ITM=$O(@TMPST@(ITM))  Q:ITM=""  D
 .S ITEM=ITM I ITM["_" S ITEM=$P(ITM,"_",$L(ITM,"_"))
 .Q:ITEM=""
 .S ITEM1=$$NAME(ITEM) Q:ITEM1=""
 .W "<tr "
 . W " onMouseOver=""this.style.backgroundColor='lightgrey'"" "
 . W " onMouseOut=""this.style.backgroundColor='white'"" "
 .W ">"
 .W "<td id=""tdid"_ITEM_""" "_$$^%W1ALIGN_" onClick=""ClickItem('"_ITEM_"','"_$$CLWEB^%L1FRM($$H2U^%L1FRM(ITEM1))_"')"""
 .W " dir="""_$$^%W1DIR_""""
 .N COLOR S COLOR="blue"
 .I $L($G(%ARG("COLOR"))) S COLOR=%ARG("COLOR")
 .I GL="LKH",$$MAINCUST^W4L(ITEM) S COLOR="brown"
 .I GL="LKH",$$CLOSED(ITEM) S COLOR="red"
 .W " style=""cursor:pointer;color:"_COLOR
 .I GL="LKH",$$ISCR^W4L(ITEM) W ";font-weight:bold"
 .I $G(%ARG("NOUNDRL"))="" W ";text-decoration:underline"
 .W """>"
 .W ITEM_" &nbsp; "_$$H2U^%L1FRM(ITEM1)
 .W "</td>"
 .
 .I GL="LKH" D
 ..W "<td "
 ..I $$CLOSED(ITEM) D
 ... W "style=""color:red"" >"_$$^%W1DICT("CUSTCLOSED")
 ..I $$MAZAV^W4L(ITEM)'<1 W ">&nbsp;"
 ..W "</td>",!
 ..I $G(%ARG("NOADDR")) Q
 ..W "<td>"
 .. W $$H2U^%L1FRM($$KTVM^W4L(ITEM))
 ..W "</td>"
 .
 .I GL="PAR" D
 ..N MH S MH=$$MH^W4P(ITEM) I $$INP S MH=$$MHAL^W4P(ITEM)
 ..W "<td "_$$^%W1ALIGN_" >"_$J(MH,2,2)_"</td>"
 .
 .I $$USMLPAR(GL) D
 ..N MH S MH=0
 ..D
 ...I $$ONEGLPAR^W3PRM S MHCSR=$$MH^W4P(ITEM)
 ...I $$GETP^%W1PRM("SPK") D  I MH Q
 ....S MH=$G(@$$^W4GL("MLSPKMH")@($$GETP^%W1PRM("SPK"),ITEM))
 ...S MH=$$MHAL^W4MLPRT(ITEM)
 ..
 ..W "<td width=""10%"">[ "_$$^W4GETMLY(ITEM)_" ]</td>"
 ..I '$$NOVWMHAL^W3PRM!(GL="PAR") D
 ...W "<td "_$$^%W1ALIGN_" "
 ...I $$ONEGLPAR^W3PRM W "style=""font-weight:bold"" "
 ...W ">"_$J(MH,2,2)_"</td>"
 ..
 ..I $$ONEGLPAR^W3PRM W "<td "_$$^%W1ALIGN_" >"_$J(MHCSR,2,2)_"</td>"
 ..
 .
 .I $E(GL,1,3)="LKH",$G(%ARG("ITRA")) D
 ..W "<td "_$$^%W1ALIGN_" >"_$J($$ITRA^W4L(ITEM),2,2)_"</td>"
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D CLOSE
 K @$$^W4MAIN("TMPIT")
 Q
 ;
 ;
ADDTBL(ITEM) ;
 I $G(LKHR),GL="LKH",$D(@$$^W4GL("P1EZLI")@(LKHR,ITEM)) Q
 I '$$USL(ITEM) Q
 S @TMPST@(ITEM)=""
 Q
 ;
ENG(TXT) ;
 N OK S OK=1
 N J F J=1:1:$L(TXT) I $A(TXT,J)<32!($A(TXT,J)>90) S OK=0 Q
 Q OK
 ;
NAME(ITEM) ;
 N ST,NAME
 I GL="PAR" D  Q NAME
 .S NAME=$$SHEM^W4P(ITEM)
 ;
 I GL="MDP" Q $P($G(@GLB@(ITEM,1)),"\",4)
 ;
 I GL="B1CLUB" Q $P($G(@GLB@(ITEM,1)),"\",3)
 ;
 I GL="PARSHA" D  Q ST
 .S ST=$$MHPNAME^W3MHPSHA(ITEM)
 .S ST=ST_" "_$$^%W1DICT("FROM")_" "_$$^%W1DICT("DAY"_$$MEYOM^W3MHPSHA(ITEM))
 .S ST=ST_" "_$$^%W1DICT("TO")_" "_$$^%W1DICT("DAY"_$$ADYOM^W3MHPSHA(ITEM))
 .S ST=ST_" "_$$^%W1DICT("FROM")_" "_$$MESHAA^W3MHPSHA(ITEM)
 .S ST=ST_" "_$$^%W1DICT("TO")_" "_$$ADSHAA^W3MHPSHA(ITEM)
 ;
 S NAME=$G(@GLB@(ITEM))
 S NAME=$TR(NAME,"-"," ") ; -- 07/02/17
 I GL'="NAME" Q NAME
 ;
 Q $G(@GLB@(ITEM,1))
 ;
USL(ITEM) ;
 I GL["NAME",$G(%ARG("PAIL")),'$$GET1^W4LEVPR(ITEM,"PAIL") Q 0
 I GL["LKH",$G(%ARG("MAIN"))=1,$G(@$$^W4GL("P1EZL")@(ITEM)) Q 0
 I GL["LKH",$G(%ARG("MAIN"))=2,'$D(@$$^W4GL("P1EZLI")@(ITEM)) Q 0
 I $G(%ARG("GL"))="PAR",$L(ITEM),'$$^W4PRTVW(ITEM),'$G(%ARG("VWALL")) Q 0
 N OK S OK=1
 I $$USMLPAR(GL),$G(@$$^W4GL("W3PRM")@("NOVWOLD")) D  Q OK
 .N LAST S LAST=$O(@$$^W4MAIN("TMPPAR")@(ITEM,99999),-1)
 .I $H-LAST>365 S OK=0 S @$$^W4MAIN("TMPOLD")@(ITEM)=LAST
 Q 1
 ;
INP(STAM) ;
 I $G(%ARG("INP")) Q 1
 I $$INP^W4DOC Q 1
 I $G(%ARG("GL"))="MLPAR" Q 1
 Q 0
 ;
CLOSE ;
 D ROUNDBUT^%W1JS("close",$$^%W1DICT("CLOSE"),"Close()","color:red","wh,22")
 Q
 ;
SORTBYMLY ;
 D ROUNDBUT^%W1JS("sortbymly",$$^%W1DICT("SORTBYMLY"),"SortByMly()","color:blue","wh,22")
 Q
 ;
CLOSED(LK) ;
 Q $$CLOSED^W4L(LK)
 ;
LK(FIND,GL) ;
 I GL="LKH",$$^W4ISCDLK(FIND) Q 1
 Q 0
 ;
USMLPAR(GL) ;
 I GL="MLPAR" Q 1
 I $$NEWMLY^W3PRM,GL="PAR",$$ONEGLPAR^W3PRM Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4FINDIT
W4FINDIT(FIND) ; [ 12.11.24 18:42 ] [ 04.09.14 12:18 ] [ 27.10.09 18:18 ] 
 N (JB,FIND,%ARG,%REM)
 S FIND=$G(FIND)
 D PUT^%W3DEB("W4FINDIT","FIND=FIND")
 ;;I FIND="" Q
 S GL=$$^W4GL("PAR")
 ;
 K ^[$$^W3MAIN]TMPST(JB)
 I FIND'="" D
 .S FIND=$$SPA^%L1FRM($$CLEAR^%L1FRM(FIND))
 .S FIND=$$INVH^%L1FRM(FIND)
 ;
 S PAR=""
 I FIND="" D  G VIEW
 .F  S PAR=$O(@GL@(PAR)) Q:PAR=""  D ADDTBL(PAR)
 ;
 I $$ISNUM^%L1FRM(FIND) D ADDTBL(FIND) ;; G VIEW
 ;
 F  S PAR=$O(@GL@(PAR)) Q:PAR=""  I (" "_$$SHEM^W4P(PAR)_" ")[(FIND_" ")  D ADDTBL(PAR)
 ;
VIEW ;
 D CLOSE^W4FIND
 W "<table dir="""_$$^%W1DIR_""" id=""TblStr"" width=""100%"" >",!
 S PAR="" F  S PAR=$O(^[$$^W3MAIN]TMPST(JB,PAR))  Q:PAR=""  D
 .W "  <tr><td id=""tdid"_PAR_""" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" ><a href=""#"" onClick=""ClickItem("_PAR_")"" >"_PAR_" &nbsp; "_$$H2U^%L1FRM($$SHEM^W4P(PAR))_"</a></td></tr>",!
 W "</table>",!
 ;
 ;;D CLOSE^W4FIND
 Q
ADDTBL(PAR) ;
 S ^[$$^W3MAIN]TMPST(JB,PAR)=""
 Q
 

W4FIRE
W4FIRE(HZM,MDP,NOFIRE) ; [ 01.08.22 15:35 ] [ 26.05.22 07:56 ] [ 24.05.22 10:00 ] 
 N I,TXT,%MDP,NMB,MKBL,ZMANK,FIRE,PRINT,MKBL,MSL
 S MSL=0
 I HZM D
 .S NMB=$$NMB^W4HZMST(HZM)
 .S MKBL=$$MKBL^W4HZMST(HZM)
 .S ZMANK=$$ZMANK^W4HZMST(HZM)
 .I $$HZM^W4MSL(HZM) S MSL=1
 ;
 I 'HZM D
 .S NMB=$$NMB^W3HZMST(JB)
 .S MKBL=$$MKBL^W3HZMST(JB)
 .S ZMANK=$$DATCB^W3HZMST(JB)
 ;
 D ^W4MDP(MDP) Q:'$G(PRINT)  D ^%L1TS
 ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) D  Q
 .I '$G(NOFIRE) D SET Q
 .I $G(NOFIRE) D KILL
 ;
 ;;S PRINT=$P(PRINT,"-")_"-99" ; *** LEV 02/05/2015
 ;
 ;;F I=1:1:3 Q:'$D(@$$^W4GL("P1LOCK")@("PCHZ"))  H 1
 ;
 L +@$$^W4PC@(PRINT):2
 S TXT=$G(%MDP("BEEP"))_$G(%MDP("BEEP"))_$G(%MDP("IE")) D S2
 I 'MSL S TXT=%MDP("B")_$J("",8)_$J(NMB,3)_" ogley "_%MDP("N") D S1
 I MSL S TXT=%MDP("B")_$J(NMB,12)_" gewl"_%MDP("N") D S1
 N LKH1 S LKH1=$$^W4SHULHN(NMB)
 I LKH1'="" D
 .S TXT=%MDP("B")_$$HBR^%L1FRM(LKH1,17)_%MDP("N") D S1
 ;
 I 'MSL D
 .S TXT="" D S1
 .S TXT=$J("",4)_%MDP("B")_$J($$SHORT^W4NAME(MKBL),10)_" xvln "_%MDP("N") D S1
 ;
 S TXT="" D S1
 ;
 N HZM1
 I HZM D
 .S HZM1=HZM
 .I $$MSPYOM^W4PRM S HZM1=$$^W4MSPYOM(HZM)
 .S TXT=$J("",14)_%MDP("BB")_$J(HZM1,7)_%MDP("N")_" dpnfd " D S1
 .S TXT="" D S1
 ;
 S TXT=$J("",2)_ZMANK_" : dpnfd zlaw onf " D S1
 S TXT=$J($$T^%L1TIME($P($H,",",2)),22)_" : dqtcd onf" D S1
 S TXT="" D S1
 N FIRENM S FIRENM="F I R E" 
 I $L($G(@$$^W4PRM@("FIRENM"))) D
 .S FIRENM=$G(@$$^W4PRM@("FIRENM"))
 I $G(NOFIRE) S FIRENM=FIRENM_" l e h i a"
 N SP S SP=$J("",14-$L(FIRENM)\2)
 S FIRENM="! "_SP_FIRENM_SP_" !"
 S TXT=%MDP("BB")_FIRENM_%MDP("N"),TXT("R")=1 D S1
 S TXT=$C(10) D S1
 I $G(HZM1) D
 .N L S L=19-$L(HZM1)\2
 .N B S B=$G(%MDP("BB"))
 .N N S N=$G(%MDP("N"))
 .N INV S INV=$G(%MDP("I"))
 .N EI S EI=$G(%MDP("IE"))
 .N LN,TX S TX=$J("",L)_HZM1_$J("",L) S LN=$L(TX)
 .S TXT=B_INV_$J("",LN)_N_EI D S1
 .S TXT=B_INV_TX_N_EI D S1
 .S TXT=B_INV_$J("",LN)_N_EI D S1
 ;
 S TXT=$C(10) D S1
 D ^W4CUT(PRINT,%MDP("CUT"))
 I '$G(NOFIRE) D SET
 I $G(NOFIRE) D KILL
 L  Q
 ;
S1 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$J("",1)_$TR(TXT,TS0,TSS)
 K TXT Q
 ;
S2 Q:'$G(PRINT)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=TXT
 K TXT Q
 ;
SET ;
 I $D(@$$^W4TMPORD@(1)) D
 .N TIME,MIN S TIME=$ZD($H,"24:60")
 .N TM S TM=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)
 .N LAST S LAST=$O(@$$^W4TMPORD@(9999),-1)
 .I LAST S @$$^W4TMPORD@("FIRE","SH",LAST)=TIME_";"_TM
 .
 .I $G(MDP) D
 ..K @$$^W4TMPORD@("NOFIRE","MDP",MDP)
 ..I $D(@$$^W4TMPORD@("NOFIRE","MDP"))<9 K @$$^W4TMPORD@("NOFIRE")
 ..S @$$^W4TMPORD@("FIRE","MDP",MDP)=TIME
 ..N FIRETM S FIRETM=$G(@$$^W4TMPORD@("FIRE","TIME",TM))
 ..S (FIRETM,@$$^W4TMPORD@("FIRE","TIME",TM))=$S($L(FIRETM):FIRETM_","_MDP,1:MDP)
 ..S @$$^W4TMPORD@("FIRE")=TIME_" [ "_FIRETM_" ]"
 .
 .I '$G(MDP) D
 ..N FIRETM S FIRETM=$G(@$$^W4TMPORD@("FIRE","TIME",TM))
 ..S (FIRETM,@$$^W4TMPORD@("FIRE","TIME",TM))=""
 ..S @$$^W4TMPORD@("FIRE")=TIME
 .
 .S @$$^W4TMPORD@("NEW","FIRE")=$H
 ;
 ;
 I '$D(@$$^W4TMPORD@(1)) D
 .N HZM S HZM=$$GETP^%W1PRM("HZM")
 .I HZM'>0,$$GETP^%W1PRM("NMB") S HZM=$$^W4HZFR($$GETP^%W1PRM("NMB"))
 .;
 .I HZM<1 Q
 .N TIME,MIN S TIME=$ZD($H,"24:60")
 .N TM S TM=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)
 .N TMPF S TMPF=$$^W4MAIN("TMPF") K @TMPF
 .N RES S RES=$$^W4GETHZ(HZM,TMPF)
 .N LAST S LAST=$O(@TMPF@(99999),-1)
 .I LAST S @$$^W4ORD@(HZM,"FIRE","SH",LAST)=TIME_";"_TM
 .K @TMPF
 .;
 .I $G(MDP) D
 ..K @$$^W4ORD@(HZM,"NOFIRE","MDP",MDP)
 ..I $D(@$$^W4ORD@(HZM,"NOFIRE","MDP"))<9 K @$$^W4ORD@(HZM,"NOFIRE")
 ..S @$$^W4ORD@(HZM,"FIRE","MDP",MDP)=TIME
 ..N FIRETM S FIRETM=$G(@$$^W4ORD@(HZM,"FIRE","TIME",TM))
 ..S (FIRETM,@$$^W4ORD@(HZM,"FIRE","TIME",TM))=$S($L(FIRETM):FIRETM_","_MDP,1:MDP)
 ..S @$$^W4ORD@(HZM,"FIRE")=TIME_" [ "_FIRETM_" ]"
 .
 .I '$G(MDP) D
 ..N FIRETM S FIRETM=$G(@$$^W4ORD@(HZM,"FIRE","TIME",TM))
 ..S (FIRETM,@$$^W4ORD@(HZM,"FIRE","TIME",TM))=""
 Q
 ;
 ;
KILL ;
 N TIME S TIME=$ZD($H,"24:60")
 N TM S TM=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)
 N LAST S LAST=$O(@$$^W4TMPORD@(999),-1)
 I LAST S @$$^W4TMPORD@("NOFIRE","SH",LAST)=TIME_";"_TM
 ;
 I $G(MDP) D
 .K @$$^W4TMPORD@("FIRE","MDP",MDP)
 .I $D(@$$^W4TMPORD@("FIRE","MDP"))<9 K @$$^W4TMPORD@("FIRE")
 .S @$$^W4TMPORD@("NOFIRE","MDP",MDP)=TIME
 ;
 N NOFIRETM S NOFIRETM=$G(@$$^W4TMPORD@("NOFIRE","TIME",TM))
 S (NOFIRETM,@$$^W4TMPORD@("NOFIRE","TIME",TM))=$S($L(NOFIRETM):NOFIRETM_","_$G(MDP),1:$G(MDP))
 S @$$^W4TMPORD@("NOFIRE")=TIME_" [ "_NOFIRETM_" ]"
 S @$$^W4TMPORD@("FIRE")=""
 Q
 ;
ISFIRE(CD) ;
 N NM S NM=$$SHEM^W4P(CD)
 Q $$ISFIRENM(NM)
 ;
ISFIRENM(NM) ;
 I NM["FIRE" Q 1
 I NM["UP!" Q 1
 Q 0
 ;
ISFIREORD(ORD) ;
 I $$FIRE^W4HZMST(ORD)'="" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4FIRE0
W4FIRE(HZM,MDP,NOFIRE) ; [ 13.05.15 20:42 ] [ 11.05.15 10:38 ] [ 23.03.14 09:27 ]
 N I,TXT,%MDP,NMB,MKBL,ZMANK,FIRE,PRINT,MKBL
 I HZM D
 .S NMB=$$NMB^W4HZMST(HZM)
 .S MKBL=$$MKBL^W4HZMST(HZM)
 .S ZMANK=$$ZMANK^W4HZMST(HZM)
 ;
 I 'HZM D
 .S NMB=$$NMB^W3HZMST(JB)
 .S MKBL=$$MKBL^W3HZMST(JB)
 .S ZMANK=$$DATCB^W3HZMST(JB)
 ;
 D ^W4MDP(MDP) Q:'$G(PRINT)  D ^%L1TS
 S PRINT=$P(PRINT,"-")_"-99"
 ;
 F I=1:1:5 Q:'$D(@$$^W4GL("P1LOCK")@("PCHZ"))  H 1
 ;
 S TXT=$G(%MDP("BEEP"))_$G(%MDP("BEEP")) D S2
 S TXT=%MDP("B")_$J("",8)_$J(NMB,3)_" ogley "_%MDP("N"),TXT("R")=1 D S1
 S TXT=$J("",4)_%MDP("B")_$J($$SHORT^W4NAME(MKBL),10)_" xvln "_%MDP("N") D S1
 I HZM S TXT=$J("",21)_$J(HZM,7)_" dpnfd " D S1
 S TXT=$J("",2)_ZMANK_" : dpnfd zlaw onf " D S1
 S TXT=$J($$T^%L1TIME($P($H,",",2)),22)_" : dqtcd onf" D S1
 S TXT="" D S1
 S TXT=%MDP("B")_$S($G(NOFIRE):" F I R E  l e h i a ",1:"     F I R E !!! ")_%MDP("N"),TXT("R")=1 D S1
 S TXT="" D S1
 D ^W4CUT(PRINT,%MDP("CUT"))
 I '$G(NOFIRE) D SET
 I $G(NOFIRE) D KILL
 Q
 ;
S1 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 L +@$$^W4PC@(PRINT):5
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$J("",1)_$TR(TXT,TS0,TSS)
 K TXT L  Q
 ;
S2 Q:'$G(PRINT)
 L @$$^W4PC@(PRINT):5
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=TXT
 K TXT L  Q
 ;
SET ;
 I $D(@$$^W4TMPORD@(1)) D
 .N TIME,MIN S TIME=$ZD($H,"24:60")
 .N TM S TM=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)
 .N LAST S LAST=$O(@$$^W4TMPORD@(999),-1)
 .I LAST S @$$^W4TMPORD@("FIRE","SH",LAST)=TIME_";"_TM
 .
 .I $G(MDP) D
 ..K @$$^W4TMPORD@("NOFIRE","MDP",MDP)
 ..I $D(@$$^W4TMPORD@("NOFIRE","MDP"))<9 K @$$^W4TMPORD@("NOFIRE")
 ..S @$$^W4TMPORD@("FIRE","MDP",MDP)=TIME
 ..N FIRETM S FIRETM=$G(@$$^W4TMPORD@("FIRE","TIME",TM))
 ..S (FIRETM,@$$^W4TMPORD@("FIRE","TIME",TM))=$S($L(FIRETM):FIRETM_","_MDP,1:MDP)
 ..S @$$^W4TMPORD@("FIRE")=TIME_" [ "_FIRETM_" ]"
 .
 .I '$G(MDP) D
 ..N FIRETM S FIRETM=$G(@$$^W4TMPORD@("FIRE","TIME",TM))
 ..S (FIRETM,@$$^W4TMPORD@("FIRE","TIME",TM))=""
 ..S @$$^W4TMPORD@("FIRE")=TIME
 ;
 Q
 ;
 ;
KILL ;
 N TIME S TIME=$ZD($H,"24:60")
 N TM S TM=$P($H,",")_$TR($J($P($H,",",2),5)," ",0)
 N LAST S LAST=$O(@$$^W4TMPORD@(999),-1)
 I LAST S @$$^W4TMPORD@("NOFIRE","SH",LAST)=TIME_";"_TM
 ;
 I $G(MDP) D
 .K @$$^W4TMPORD@("FIRE","MDP",MDP)
 .I $D(@$$^W4TMPORD@("FIRE","MDP"))<9 K @$$^W4TMPORD@("FIRE")
 .S @$$^W4TMPORD@("NOFIRE","MDP",MDP)=TIME
 ;
 N NOFIRETM S NOFIRETM=$G(@$$^W4TMPORD@("NOFIRE","TIME",TM))
 S (NOFIRETM,@$$^W4TMPORD@("NOFIRE","TIME",TM))=$S($L(NOFIRETM):NOFIRETM_","_$G(MDP),1:$G(MDP))
 S @$$^W4TMPORD@("NOFIRE")=TIME_" [ "_NOFIRETM_" ]"
 Q
 ;
ISFIRE(CD) ;
 N NM S NM=$$SHEM^W4P(CD)
 Q $$ISFIRENM(NM)
 ;
ISFIRENM(NM) ;
 I NM["FIRE" Q 1
 I NM["UP!" Q 1
 Q 0
 ;
ISFIREORD(ORD) ;
 I $$FIRE^W4HZMST(ORD)'="" Q 1
 Q 0

W4FNDDLV
W4FNDDLV ; [ 20.04.26 15:26 ] [ 02.03.26 10:59 ] [ 12.02.26 13:40 ] 
 N (JB,%ARG,%REM) I $$DLV^W4DLVCSR D ^W4IN
 N TDWIDTH,TDALIGN,TDDIR
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;
 D PUT^%W3DEB("W3FNDLK","MSD=MSD")
 ;
 D ^%W1HD("FINDDELIVERYORDER")
 ;
 W "<div align=""center"">",!
 W "<br>",!
 ;
 W "<span style=""color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  W $$^%W1DICT("INPUTORDERDETAILSFORSEARCH")
 W "</span>",!
 ;
 W "<br><br>",!
 ;
 W "<table id=""TblFnd"" border=""0"" "
  W "style=""border:solid;border-style:groove;border-color:#eaeaea;background-color:white;color:black"" "
  W " cellpadding="""_$$^W4KF(12)_""" "
  S WD=90 I $$1024^W4WDSCR S WD=98
  W " width="_WD_"% border=0 dir="""_$$^%W1DIR_""" ",!
 W ">",!
 W "<tr>"
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("ORDERNUMBER")_"</td>",!
  W "<td>&nbsp;&nbsp;<input id=""order"" type=""text"" size=""18"" >",!
   W $$NBSP^%L1FRM(5)
   D SELKINDNMB
   I $$NOVWDLVO^W4PRM D
   .W "&nbsp;<button id=""showord"" onClick=""ShowOrd()"">"_$$^%W1DICT("SHOW2COPY")_"</button>"
  W "</td>"
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("CODEORTEL")_"</td>",!
  W "<td>&nbsp;<input id=""NMB"" type=""text"" maxlength=""11"" size=""11"" ></td>",!
 W "</tr>",!
 ;
 W "<tr>"
  D NAME
  D COMP
 W "</tr>",!
 ;
 W "<tr>",!
  D TELB
  D PELE
 W "</tr>",!
 ;
 W "<tr>",!
  D TDR W $$^%W1DICT("CITY") W "</td>"
  D TDL
   D
   .N FNDDLV S FNDDLV=""
   .D SELCITY^W3ORDDET("CITY")
  W "</td>"
  D TDR W $$^%W1DICT("MAKOR") W "</td>"
  D TDL
   D MKR^W3ORDLKH("") 
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDR
   W $$^%W1DICT("MEDATE")
  W "</td>"
  W "<td>"
   ;;S %W1DAT("NODAY")=""
   D ^%W1DAT("MEDAT",$G(P1DZ))
  W "</td>"
  ;
  D TDR
     W $$^%W1DICT("TODATE")
  W "</td>"
   ;
  W "<td>"
   W "<table dir="""_$$^%W1DIR_""" width=""90%"" >"
    W "<tr>"
     ;;W "<td>"
     ;; W "<input type=""button"" style=""height:28px;width:28px"" value=""="" onClick=""SameDate()"" >"
     ;;W "</td>"
     W "<td"
      I $$1024^W4WDSCR W " colspan=""2"" "
     W ">" 
      N SM S SM=0 ;365
      D ^%W1DAT("ADDAT",$G(P1DZ)+SM)
      W "</td>"
      ;
      I $$1024^W4WDSCR W "</tr><tr>"
      W "<td>"
       W $$^%W1DICT("ORDDATE")
       W "<input type=""radio"" name=""gllink"" checked=""checked"" />"
      W "</td>"
      ;
      W "<td>"
        W $$^%W1DICT("ORDRCVDATE")
        W "<input type=""radio"" name=""gllink""  />"
      W "</td>"
     W "</tr>",!
    W "</table>",!
   W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDR
   W $$^%W1DICT("FROMSUM")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""MESUM"" onClick=""this.select()"" size=""7"" value=""-999999"" > "
   W "&nbsp;"
  W "</td>"
  D TDR
   W $$^%W1DICT("TOSUM")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""ADSUM"" onClick=""this.select()"" size=""7"" value=""999999"" >"
   W "&nbsp;"
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  I '$$MM^W4PRM D
  .D TDR
  . W $$^%W1DICT("CUSTOMERORDER")
  .W "</td>"
  .D TDL
  . W "<input type=""text"" id=""HZMLAK"" size=""16"" maxlength=""18"" >"
  . W "&nbsp;&nbsp;"
  .W "</td>"
  ;
  I $$MM^W4PRM D
  .D TDR
  . W $$^%W1DICT("RESTAURANT")
  .W "</td>"
  .W "<td dir="""_$$^%W1DIR_""">"
  . W "<select id=""REST"">",!
  . W "<option value=""0"" >"_$$^%W1DICT("CHOICEREST")_"</option>",!
  . N GLMSDR S GLMSDR=$$^W4GL("W3MSDR")_"("_+$$MSDR^W4PRM_")"
  . N RST S RST="" F  S RST=$O(@GLMSDR@(RST)) Q:RST=""  D
  . .W "<option value="""_RST_""">"
  . . W RST_" "_$$H2U^%L1FRM($$MSD^W3R(RST))
  . .W "</option>"
  . W "</select>",!
  .W "</td>"
  ;
  D TDR
   W $$^%W1DICT("CREDITCARD4")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""NCA"" size=""17"" maxlength=""19"" >"
   W "&nbsp;"
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDR
   W $$^%W1DICT("COURIERNUMBER")
  W "</td>"
  D TDL
   D
   .W "<select id=""SLH"" dir="""_$$^%W1DIR_""">",!
   .W "<option value=""ALL"">"_$$^%W1DICT("ALLCOURIERS")_"</option>",!
   .N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D 
   ..N A S A=$G(^(N))
   ..N OV S OV=$G(^(N,"OV")) I OV,'$$GET1^W4LEVPR(OV,"PAIL") Q
   ..W "<option value="""_N_""">"_$$H2U^%L1FRM(A)_"</option>",!
   .W "</select>",!
  W "</td>"
  ;
  D TDR
   W $$^%W1DICT("RECEIVERNUMBER")
  W "</td>"
  D TDL
  D
   .W "<select id=""MKBL"" dir="""_$$^%W1DIR_""">",!
   .W "<option value=""ALL"">"_$$^%W1DICT("ALLRECEIVERS")_"</option>",!
   .N N S N="" F  S N=$O(@$$^W4GNAME@(N)) Q:N=""  D 
   ..I '$$MKBL^W4SETSUG(N) Q
   ..I '$$GET1^W4LEVPR(N,"PAIL") Q
   ..W "<option value="""_N_""">"_$$H2U^%L1FRM($$^W4NAME(N))_"</option>",!
   .W "</select>",!
  W "</td>"
 W "</tr>",!
 
 W "<tr>",! 
  D TDR
   W $$^%W1DICT("KINDOFORDER")
  W "</td>"
  W "<td "_$$^%W1ALIGN_">"
   D KINDORDS^W4DLVORD
  W "</td>"
  ; 
  D TDR
   W $$^%W1DICT("KINDOFPAYMENT")
  W "</td>"
  ;
  W "<td "_$$^%W1ALIGN_">"
   D PAYMKIND1^W4DLVORD
  W "</td>"
 W "</tr>",!
 ;
 D PCLINE
 ;
 W "</table>",!
 W "</div>",!
 ;
 W "<br>",!
 W "<p></p>",!
 ;
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"" width=""20%"" cellpadding="""_$$^W4KF(10)_""">",!
 W " <tr style=""height:"_$$^W4KF(60)_"px;cursor:pointer"" >",!
  ;;D BTN^W3ORDDET("rbtfind",$$^%W1DICT("SEARCHORDER"),"FindOrd()","background-color:green;color:white;font-size:"_$$^W3FSZ(18))
  ;;D BTN^W3ORDDET("rbtback",$$^%W1DICT("BACK"),"Back()","background-color:red;color:white;font-size:"_$$^W3FSZ(18))
 ;
  W "<td>"
  D ^W4BTN($$^%W1DICT("SEARCHORDER"),"FindOrd()","green<>white",,,12)
  W "</td>"
  W "<td>"
  D ^W4BTN($$^%W1DICT("BACK"),"Back()","red<>white",,,12)
  W "</td>"
 W " </tr>",!
 W "</table>",!
 ;
 W "</div>",!
 I $$KBVRT^W4PRM D ^W4KBABC
 Q
 ;
TELB D TD W "&nbsp;"_$$^%W1DICT("TEL")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("TELB",100,12,"LTR")
 Q
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td>"
 W "<td>&nbsp;" D INP("PELE",100,12,"LTR")
 Q
NAME D TD W "&nbsp;"_$$^%W1DICT("NAME")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("NAME",160,30,$$^%W1DIR)
 Q
COMP D TD W "&nbsp;"_$$^%W1DICT("COMPANYNAME")_"</td>"
 W "<td>&nbsp;" D INP("COMP",160,30,$$^%W1DIR)
 Q
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_$$^W4KF(WD)
 .I $$^%W1DIR="RTL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .I RKV="STREET" D
 ..W " onFocus=""noIfrHide=1"""
 ..I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 D
 ...W " onKeyUp=""FindStreet(this)"""
 .
 .W $$INPBGCOLOR^W3ORDDET
 .
 .W " tabindex="""_$$TABIND^W3ORDDET(RKV)_""" "
 .W " />"
 .I RKV="NAME" D
 ..W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" "
 ..W "onClick=""FindCust('NAME')"" >",!
 W "</td>",!
 Q
 ;
PCLINE ;
 W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
 Q
 ;
TDR ;
 W "<td "_$$INV^%W1ALIGN_" >"
 Q
 ;
TDL ;
 W "<td style=""direction:ltr;text-align:right"">"
 ;;W "<td dir=""LTR"" "_$$^%W1ALIGN_" >"
 Q
 ;
SELKINDNMB ;
 W "<select id=""kindnmb"">",!
  W "<option value="""" >"_$$^%W1DICT("ELPOSORDNUMBER")_"</option>",!
  W "<option value=""W"" >"_$$^%W1DICT("WEBORDNUMBER")_"</option>",!
  W "<option value=""M"" >"_$$^%W1DICT("MSHORDNUMBER")_"</option>",!
  W "<option value=""T"" >"_$$^%W1DICT("TBORDNUMBER")_"</option>",!
  W "<option value=""L"" >"_$$^%W1DICT("CUSTOMERORDER")_"</option>",!
 W "</select>",!   
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4FNDHZM
W4FNDHZM ; [ 20.04.26 15:25 ] [ 10.02.26 10:35 ] [ 15.06.22 13:58 ] 
 N (JB,%ARG,%REM) D ^W4IN
 N TDWIDTH,TDALIGN,TDDIR
 ;
 D CLRCOPY^W4MENU
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;
 D ^%W1HD("FINDORDER")
 ;
 D PUT^%W3DEB("W3FNDLK","MSD=MSD")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>",!
 ;
 W "<span style=""color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  W $$^%W1DICT("INPUTORDERDETAILSFORSEARCH")
 W "</span>",!
 ;
 W "<br><br>",!
 W "<button "_$$^W4TOUCH_"='FindDlvOrder()' style=""font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("FINDDLVORDER")_"</button>",!
 W "<br><br>",!
 ;
 S WD=80 I $$1024^W4WDSCR S WD=90
 I $$^W4TABLET=2 G TBLPHONE
 ;
 W "<table border=""0"" style=""border:solid;border-style:groove;border-color:#eaeaea;cellpadding:10;background-color:white;color:black"" width="""_WD_"%"" border=0 dir="""_$$^%W1DIR_""" >",!
 D PCLINE
 ;
 ;
 W "<tr>"
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("ORDERNUMBER")_"</td>",!
  W "<td>"
   W $$NBSP^%L1FRM(3)
   W "<input id=""order"" type=""text"" maxlength=""9"" size=""9"" >",!
  W "</td>",!
  ;
  D TDR
   W $$^%W1DICT("TABLEORCUSTOMNUMBER")
  W "</td>"
  W "<td "_$$^%W1ALIGN_">"_$$NBSP^%L1FRM(3)
  W " <input type=""text"" id=""NMB"" size=""11"" > "
  W " &nbsp;<img id=""filter"" src=""w3filter.jpg"" "
  W " onClick=""FindCust()"" >",!
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"
  D TDR
   W $$^%W1DICT("MEDATE")
  W "</td>"
  W "<td "_$$^%W1ALIGN_" style=""padding-right:10px"">"
   D ^%W1DAT("MEDAT",$G(P1DZ))
  W "</td>"
  D TDR
   W $$^%W1DICT("TODATE")
  W "</td>"
  W "<td style=""padding-right:10px"">"
   ;;S %W1DAT("NODAY")=""
   D ^%W1DAT("ADDAT",$G(P1DZ))
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>",! 
  D TDR
   W $$^%W1DICT("FROMSUM")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""MESUM"" onClick=""this.select()"" size=""7"" value=""-999999"" > "
   W $$NBSP^%L1FRM(2)
  W "</td>"
  D TDR
   W $$^%W1DICT("TOSUM")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""ADSUM"" onClick=""this.select()"" size=""7"" value=""999999"" >"
   W $$NBSP^%L1FRM(4)
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDR
   W $$^%W1DICT("CREDITCARD4")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""NCA"" size=""17"" maxlength=""19"" >"
   W $$NBSP^%L1FRM(3)
  W "</td>"
  W "<td>&nbsp;</td>"
 W "</tr>",! 
  ;
  ;
 D PCLINE
 W "</table>",!
 W "</div>",!
 ;
 W "<br>",!
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""20%"" cellpadding=""10"">",!
 W " <tr style=""height:60px;background-color:white;cursor:pointer"" >",!
  D BTN^W3ORDDET("rbtfind",$$^%W1DICT("SEARCHORDER"),"FindOrd()","background-color:green;color:white;font-size:18")
  D BTN^W3ORDDET("rbtback",$$^%W1DICT("BACK"),"Back()","background-color:red;color:white;font-size:18")
 W " </tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
TELB D TD W "&nbsp;"_$$^%W1DICT("TEL")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("TELB",100,12,"LTR")
 Q
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td>"
 W "<td>&nbsp;" D INP("PELE",100,12,"LTR")
 Q
NAME D TD W "&nbsp;"_$$^%W1DICT("NAME")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("NAME",160,30,$$^%W1DIR)
 Q
COMP D TD W "&nbsp;"_$$^%W1DICT("COMPANYNAME")_"</td>"
 W "<td>&nbsp;" D INP("COMP",160,30,$$^%W1DIR)
 Q
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .W $$INPBGCOLOR^W3ORDDET
 .
 .W " />"
 W "</td>",!
 Q
 ;
PCLINE ;
 W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
 Q
 ;
TDR ;
 W "<td "_$$INV^%W1ALIGN_" >"
 Q
 ;
TDL ;
 W "<td style=""direction:ltr;text-align:right"" >"
 Q
 ;
SHOW(N) ; 
 Q 1 
 ;
SETPRM(PRM) ;
 N VP S VP="FNDORD"
 D PRS^%L1FRM(PRM,"NMB;MEDAT;ADDAT;MESUM;ADSUM;NCA",";")
 D KILL^W4TMPANS(VP)
 D PUT^W4TMPANS(VP,"MEDATE",MEDAT)
 D PUT^W4TMPANS(VP,"ADDATE",ADDAT)
 D PUT^W4TMPANS(VP,"CREDITCARDNUMBER",NCA)
 D PUT^W4TMPANS(VP,"HZMLK","")
 D PUT^W4TMPANS(VP,"FROMSUM",MESUM)
 D PUT^W4TMPANS(VP,"UNTILSUM",ADSUM)
 ;
 I NMB D
 .D PUT^W4TMPANS(VP,"FROMTABLE",NMB)
 .D PUT^W4TMPANS(VP,"UNTILTABLE",NMB)
 ;
 I 'NMB D
 .D PUT^W4TMPANS(VP,"FROMTABLE","")
 .D PUT^W4TMPANS(VP,"UNTILTABLE",99999999999)
 ;
 D PUT^W4TMPANS(VP,"KINDOFORDER","")
 D PUT^W4TMPANS(VP,"KINDOFPAYMENT","")
 Q 1
 ;
 ; 
TBLPHONE ; 
 W "<table border=""0"" style=""border:solid;border-style:groove;border-color:#eaeaea;cellpadding:10;background-color:white;color:black"" width="""_WD_"%"" border=0 dir="""_$$^%W1DIR_""" >",!
 D PCLINE
 ;
 W "<tr>"
  W "<td "_$$INV^%W1ALIGN_" width=""50%"" >"_$$^%W1DICT("ORDERNUMBER")_"</td>",!
  W "<td>"
   W $$NBSP^%L1FRM(3)
   W "<input id=""order"" type=""text"" maxlength=""9"" size=""9"" >"
  W "</td>",!
 W "</tr>",!
  ;
 W "<tr>" 
  D TDR
   W $$^%W1DICT("TABLEORCUSTOMNUMBER")
  W "</td>"
  W "<td "_$$^%W1ALIGN_">" W $$NBSP^%L1FRM(2)
  W " <input type=""text"" id=""NMB"" size=""11"" > "
  W " &nbsp;<img id=""filter"" src=""w3filter.jpg"" "
  W " onClick=""FindCust()"" >",!
  W "</td>" 
 W "</tr>",!
 ;
 W "<tr>"   W "&nbsp;"
  D TDR
   W $$^%W1DICT("MEDATE")
  W "</td>"
  W "<td "_$$^%W1ALIGN_" >"
   W $$NBSP^%L1FRM(3)
   D ^%W1DAT("MEDAT",$G(P1DZ))
  W "</td>"
  W "</tr>",! 
  ;
  W "<tr>"
  D TDR
   W $$^%W1DICT("TODATE")
  W "</td>"
  W "<td>"
   ;;S %W1DAT("NODAY")=""
   W $$NBSP^%L1FRM(3)
   D ^%W1DAT("ADDAT",$G(P1DZ))
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDR
   W $$^%W1DICT("FROMSUM")
  W "</td>"
  D TDL
   W $$NBSP^%L1FRM(3)
   W "<input type=""text"" id=""MESUM"" onClick=""this.select()"" size=""7"" value=""-999999"" > "
   W "&nbsp;&nbsp;"
  W "</td>"
  W "</tr>"
  ;
  W "<tr>"
  D TDR
   W $$^%W1DICT("TOSUM")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""ADSUM"" onClick=""this.select()"" size=""7"" value=""999999"" >"
   W $$NBSP^%L1FRM(3)
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>"
  D TDR
   W $$^%W1DICT("CREDITCARD4")
  W "</td>"
  D TDL
   W "<input type=""text"" id=""NCA"" size=""17"" maxlength=""19"" >"
   W $$NBSP^%L1FRM(3)
  W "</td>"
  W "<td>&nbsp;</td>"
 W "</tr>",! 
  ;
  ;
 D PCLINE
 W "</table>",!
 W "</div>",!
 ;
 W "<br><br>",!
 W "<div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""20%"" cellpadding=""10"" >",!
 W " <tr style=""height:"_$$^W4KF(60)_"px;background-color:white;cursor:pointer"" >",!
  D BTN^W3ORDDET("rbtfind",$$^%W1DICT("SEARCHORDER"),"FindOrd()","background-color:green;color:white;font-size:"_$$^W3FSZ(16)_"""")
  D BTN^W3ORDDET("rbtback",$$^%W1DICT("BACK"),"Back()","background-color:red;color:white;font-size:"_$$^W3FSZ(16)_"""")
 W " </tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4FNDORD
W4FNDORD ; [ 23.01.17 15:11 ] [ 15.07.16 12:53 ] [ 31.08.10 15:51 ] 
 N (JB,%ARG,%REM)
 D VW("FNDORD") Q
 Q
 ;
VW(VP) ;
 W "<div align=""center"" >",!
 ;
 N VZ S VZ=$G(%ARG("VZ"),"SUM")
  ;
 I $$LASTSTAGE^W4SCASK()'?.P D  ; -- SHOW PREVIOUS ANSWERS
   .D CRTMPSHOW
   .Q:'$D(@$$^W4MAIN("TMPSHOW"))
   .N NP,K S NP="" F K=1:1 S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""
   .N WD S WD=12*K S:WD>90 WD=90
   .S WD=WD_"%"
   .W "<br />",!
   .W "<table dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
   .W "<tr>",!
   .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
   ..S A=$G(^(NP))
   ..S NM=$P(A,";")
   ..D TH W $$^%W1DICT(NM)_"</th>",!
   .W "</tr>",!
   .W "<tr>",!
   .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
   ..S A=$G(^(NP))
   ..S VL=$P(A,";",2)
   ..
   ..W "<td "_$$STYLEBOLD_" "
   ..W $$DIR(VL)
   ..W " >"_$$RKV(VL)_"</td>",!
   .W "</tr>",!
   .W "</table>",!
   .W "<br />",!
  ;
  D  ;
  .I '$L($G(%ARG("VZ"))) Q
  .
  .D VWTBL(VP,%ARG("VZ"),"W4ASK","W4TMPANS")
  .
  .Q:'$G(%ARG("END"))  Q:$G(%ARG("VZ"))'="SUM"
  .W "<br /><br />",!
  ;
END W "</div>",!
  Q
  ;
  ;
CRTMPSHOW ;
 N N,VZ,A,VL,NM,CD
 S VZ="SHOWTMP"
 K @$$^W4MAIN("TMPSHOW")
 S N="" F  S N=$O(^[$$^W3MAIN]W4ASK(VP,VZ,N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD=$P(A,";") Q:CD=""
 .I '$D(@$$^W4TMPANS@(VP,CD)) Q
 .N OK S OK=1
 .I $L($G(%ARG("VZ"))) D
 ..N N1 S N1="" F  S N1=$O(@$$^W4ASK@(VP,%ARG("VZ"),N1)) Q:N1=""  D  Q:'OK
 ...I $P($G(^(N1)),";")=CD S OK=0
 .Q:'OK
 .S VL=$$GET^W4TMPANS(VP,CD)
 .I VL["::" S VL=$$^%W1DICT($P(VL,"::",2))
 .S @$$^W4MAIN("TMPSHOW")@(N)=$P(A,";")_";"_VL
 Q
 ;
 ;
VWTBL(VP,VZ,GLZ,GLTMP)
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""10""><tr>",!
 ;
 N J S J=0
 N GL D @("GL^"_GLZ) ; GL=TMPZ
 N NP S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D
 .S J=J+1
 .N CD X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .I CD="" D TH W "&nbsp;" W "</th>",! Q
 .D TH W $$^%W1DICT(CD)_"</th>",!
 N MAXJ S MAXJ=J
 W "</tr>",!
 ;
 W "<tr>" S NS=1
 S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D
 .N NM,VL
 .X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .X "S VL=$$GET^"_GLTMP_"(VP,CD)"
 .I VL["::" S VL=$$^%W1DICT($P(VL,"::",2))
 .W "<td id="""_CD_NS_""" style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""""
 .W $$DIR(VL)
 .W """>"
 .W $$RKV(VL)_"</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
TH W "<th class=""sheetgroups"" style=""font-size:"_$$^W3FSZ(12)_""""
   W ">"
 Q
 ;
STYLEBOLD(STAM) ;
 Q "style=""text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""""
 ;
RKV(VL) ;
 I VL="" Q "&nbsp;"
 Q $$H2U^%L1FRM(VL)
 ;
ORDNMB ;
 Q:'$L(VL)
 ;;D NOZERO
 Q
 ;
FROMTABLE ;
 Q:'$L(VL)
 D NOZERO
 Q
 ;
UNTILTABLE ;
 Q:'$L(VL)
 D NOZERO
 I VL<$$GET^W4TMPANS(VP,"FROMTABLE") D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="TABLERANGEWRONG"
 Q
 ;
FROMDATE ;
 Q:'$L(VL)
 D VLDAT Q:$G(%SC("ER"))
 Q
 ;
UNTILDATE ;
 Q:'$L(VL)
 D NOZERO Q:$G(%SC("ER"))
 D VLDAT Q:$G(%SC("ER"))
 I $$^%L1DC(VL,3)<$$^%L1DC($$GET^W4TMPANS(VP,"MEDATE"),3) D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="DATETOOSMALL"
 Q
 ;
FROMSUM ;
 Q:'$L(VL)
 D VLDNMB Q:$G(%SC("ER"))
 Q
 ;
UNTILSUM ;
 Q:'$L(VL)
 D VLDNMB
 I VL<$$GET^W4TMPANS(VP,"FROMTABLE") D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="SUMTOOSMALL"
 Q
 ;
VLDAT ;
 I VL'?6N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;6"
 I $E(VL,1,2)<1!($E(1,2)>31)!($E(VL,3,4)<1)!($E(VL,3,4)>12) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="DATENOTVALID"
 Q
 ;
CRCARD ;
 Q:'$L(VL)
 D VLDNMB
 Q
 ;
NOZERO ;
 D VLDNMB Q:$D(%SC("ER"))
 I 'VL D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOZERO"
 Q
 ;
VLDNMB ;
 I VL'?."-"1N.N.".".N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERONLY"
 Q
 ;
DIR(VL)
 I $TR(VL,".-","")?1N.N Q " dir=""LTR"" "
 Q ""
 
 

W4FNDPLG
W4FNDPLG(IR,STREET,HOME) ; [ 25.08.17 16:40 ] [ 24.08.17 10:21 ] [ 
 Q 0
 

W4FNDSET
W4FNDSET ; [ 27.03.23 12:14 ] [ 26.03.23 13:23 ] [ 
 N (JB,%ARG,%REM)
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 I $G(%ARG("SET")) D SHOWSET(%ARG("SET")) G BCK
 ;
 S GL=$$^W4GL("P1SET")
 W "<p style=""font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("ITEMSSETLIST")
 W "</p>",!
 W "<p></p>",!
 ;
 S ID=$G(%ARG("ID")) Q:ID=""
 ;
 W "<table id=""TblSet"" cellpadding=""5"" >",!
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N)) Q:A=""
 .W "<tr>"
 . W "<td style=""cursor:pointer;width:85%"" onClick=""ClickSet('"_N_"','"_ID_"')"" >"_$$H2U^%L1FRM(A)_"</td>",!
 . W "<td><button onClick=""ShowSet('"_N_"')"">"_$$^%W1DICT("SHOW")_"</button></td>",!
 .W "</tr>",!
 W "</table>",!
BCK ; 
 W "<p>&nbsp;</p>",!
 S W4BCK("SZ")=12
 D ^W4BCK
 W "</div>",!
 Q
 ;
SHOWSET(SET) ;
 N N,GL,NM,MH,A
 W "<p style=""font-size:"_$$^W3FSZ(14)_";color:red"">"
  W $$H2U^%L1FRM($G(@$$^W4GL("P1SET")@(SET)))
 W "</p>",!
 W "<p></p>",!
 S GL=$$^W4GL("P1SET")_"("""_SET_""")"
 ;
 W "<table id=""TblPrt"" cellpadding=""5"" >",!
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S NM=$$SHEM^W4P(N)
 .S MH=$$MH^W4P(N)
 .W "<tr>"
 . W "<td >"_N_"</td>",!
 . W "<td >"_$$H2U^%L1FRM(NM)_"</td>",!
 . W "<td >"_$J(MH,2,2)_"</td>",!
 .W "</tr>",!
 W "</table>",!
 Q
 
 
 
 
 
 

W4FRSMLG
W4FRSMLG(STAM) ; [ 07.02.14 21:44 ] [ 29.12.13 09:23 ] [ 24.02.12 19:06 ] [
 N GLSUG S GLSUG=$$GLSUGP^W4MLPRTB
 Q $O(@GLSUG@(""))

W4FZ
W4FZ(P1DZ) ; [ 05.05.09 07:52 ] [ 04.02.01 10:20 AM ] [ 05/23/98  1:24 PM ]
 Q $G(@$$^W4GL("Z"))+1

W4GAP
W4GAP(JB,DT1,DT2,SND) ; [ 31.07.25 08:34 ] [ 13.03.24 10:57 ] [ 12.05.23 06:47 ] 
 D ^W4GAPN(JB,DT1,$G(DT2),$G(SND))
 Q
 

W4GAPN
W4GAPN(JB,DT1,DT2,SND) ; [ 31.07.25 09:05 ] [ 29.07.25 16:13 ] [ 10.07.24 12:41 ] 
 N (JB,%ARG,%REM,DT1,DT2,SND)
 I '$G(DT2) S DT2=DT1
 I $G(SND)="" S SND=1
 I DT2'=DT1 S SND=0
 
 K @$$^W4MAIN("TMPS111")
 ;
 D SCOMP^W4TOT(DT1,DT2)
 ;
 S MHIROT=0
 S SH=0,SDIF=0
 ;
 I '$$NOMAM^W4PRM S SMAM=0
 F DT=DT1:1:DT2 D
 .I $$PAPJ^W4PRM D DEFMSD^W4GAPNET(DT)
 .N MHRDT S MHRDT=$$MHIROT^W4GAPNET(DT)
 .S MHIROT=MHIROT+MHRDT
 .S MAMAH=$$MAMD^W4L(DT)
 .I '$$NOMAM^W4PRM S SMAM=SMAM+(MHRDT*MAMAH/(100+MAMAH))
 .S PRN="" F  S PRN=$O(@$$^W4GL("W4BONA")@(DT,PRN)) Q:PRN=""  D
 ..S DTTM="" F  S DTTM=$O(@$$^W4GL("W4BONA")@(DT,PRN,DTTM)) Q:DTTM=""  D
 ...S HZ="" F  S HZ=$O(@$$^W4GL("W4BONA")@(DT,PRN,DTTM,HZ)) Q:HZ=""  D
 ....S TIME=$G(^(HZ))
 ....S TIME0=$E(DTTM,1,5)_","_+$E(DTTM,6,10)
 ....S DIF=$$DIF^%L1TIME(TIME,TIME0)
 ....S SDIF=SDIF+DIF
 ....S SH=SH+1
 ;
 S MKTIME=0
 I SDIF S MKTIME=$J(SDIF/SH,2,2)
 ;
 S MHIROT0=MHIROT
 S SDLV=MHIROT-SREST
 ;
 S DT=DT2
 S TKF=$ZD(DT,"YYYYMMDD")
 S ST=TKF ; -- 1
 I DT2'=DT1 S TKF=$ZD(DT1,"DD.MM.YY")_" - "_$ZD(DT2,"DD.MM.YY")
 ;
 I SND<1 D
 .N SH S SH=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 .S @$$^W4MAIN("TMPS111")@(SH)=$$TV^%W1DICT("H","DATABEFORETAX")
 .
 .D S1(TKF,"PERIOD")
 .
 .N SH S SH=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 .S @$$^W4MAIN("TMPS111")@(SH)=$TR($J("",39)," ","-")
 ;
 S TIM=$ZD($H,"YYYYMMDD:2460SS")
 S ST=ST_","_TIM ; -- 2
 I $$SHOW D S1(TIM,"ISSUETIME")
 ;
 S UFC="+0200"
 S ST=ST_","_UFC ;;_$G(@$$^W4PRM@("GAP","UFC")) ; -- 3
 I $$SHOW D S1(UFC,"UFC")
 ;
 S COUNTRYCD=376
 S ST=ST_","_COUNTRYCD ; -- 4
 I $$SHOW D S1(COUNTRYCD,"COUNTRY_CODE")
 ;
 S COUNTRYNM="ISR"
 S ST=ST_","_COUNTRYNM ; -- 5
 I $$SHOW D S1(COUNTRYNM,"COUNTRY_NAME")
 ;
 S SID=$G(@$$^W4PRM@("GAP","ID"))
 S ST=ST_","_SID ; -- 6
 I $$SHOW D S1(SID,"STORE_ID")
 ;
 S DIR=$G(@$$^W4PRM@("GAP","DIR"))
 S OK=0 F I=1:1 D  Q:OK
 .S FLNM=DIR_$ZD(DT,"YYYYMMDD")_"_"_SID_"_DPJI_BI_"_I_".POL"
 .I '$$EXIST^%L1ZOS(FLNM) S OK=1
 ;
 S VER=I_".00"
 S ST=ST_","_VER ; -- 7
 I $$SHOW D S1(VER,"FILE_VERSION") ; -- 01.07.21
 ;
 S ST=ST_",ELPOS"; -- 8
 I $$SHOW D S1("ELPOS","BO_SOFTNAME") ; -- 01.07.21
 ;
 S VERBO="2.00"
 S ST=ST_","_VERBO ; -- 9
 I $$SHOW D S1(VERBO,"BO_VERSION") ; -- 01.07.21
 ;
 S ST=ST_",ELPOS" ; -- 10
 I $$SHOW D S1("ELPOS","POS_NAME") ; -- 01.07.21
 ;
 S ST=ST_",2.00";  -- 11
 I $$SHOW D S1("2.00","POS_VERSION") ; -- 01.07.21
 ;
 S INFO=$S(VER>1:"UPDATE",1:"NORMAL")
 S ST=ST_","_INFO
 I $$SHOW D S1(INFO,"INFO")
 ;
 S ST=ST_","_$$INT(MHIROT) ; -- 13
 D S1($$NUM(MHIROT),"TOTSALES")
 ;
 S SWEB=$$LMAM(SWEB)
 S ST=ST_","_$$INT(SWEB) ; -- 14
 D S1($$NUM(SWEB),"WEBSALES")
 ;
 S SWEBDLV=$$LMAM(SWEBDLV)
 S ST=ST_","_$$INT(SWEBDLV) ; -- 15
 D S1($$NUM(SWEBDLV),"DLVWEBSALES")
 ;
 S SDLV=$$LMAM(SDLV)
 S STAW=$$LMAM(STAW)
 S ST=ST_","_$$INT(SDLV-STAW) ; -- 16
 D S1($$NUM(SDLV-STAW),"DLVSALES")
 ;
 S SREST=$$LMAM(SREST)
 S ST=ST_","_$$INT(SREST) ; -- 17
 D S1($$NUM(SREST),"RESTSALES")
 ;
 
 S ST=ST_","_$$INT(SMAM) ; -- 18
 D S1($$NUM(SMAM),"TAXES")
 ;
 S ST=ST_",0,0,0" ; -- 19,20,21
 ;
 S ST=ST_","_$$INT($$LMAM(SBIT)) ; -- 22
 D S1($$NUM(SBIT),"REFUNDS")
11 ;
 S ST=ST_","_ORDQ ; -- 23
 D S1(ORDQ,"ORDERSNUMBER")
 ;
 S ST=ST_","_WEBQ ; -- 24
 D S1(WEBQ,"WEBORDERSNUMBER")
 ;
 S ST=ST_","_(DLVQ-TAWQ) ; -- 25
 D S1(DLVQ-TAWQ,"DLVORDERSNUMBER")
 ;
 S ST=ST_","_RESTQ ; -- 26
 D S1(RESTQ,"RESTORDERSNUMBER")
 ;
 S ST=ST_",000" ; -- 27 - ACTUAL FOOD COST
 I $$SHOW D S1("000","FOODCOST")
 ;
 S ST=ST_","_SMIN_".00" ; -- 28 - ??
 D S1(SMIN,"ORDERSDLVTIME") ; -- LIVDOK
 ;
 S TIMWARM="0.00" ; ?
 S ST=ST_","_TIMWARM ; -- 29
 I $$SHOW D S1(TIMWARM,"AVRWARMTIME")
 ;
 S DLVOTDQ=DLVQ-TAWQ-DLVDLYQ
 S ST=ST_","_DLVOTDQ ; -- 30 ; -- LIVDOK
 D S1(DLVOTDQ,"OTDORDERSNUMBER")
 ;
 S BRUTTO=MHIROT0+SDISC
 S BRUTTO=$$LMAM(BRUTTO)
 S ST=ST_","_$$INT(BRUTTO) ; -- 31
 D S1($$NUM(BRUTTO),"BRUTTO")
 ;
 S SDISC=$$LMAM(SDISC)
 S ST=ST_","_$$INT(SDISC) ; -- 32
 D S1($$NUM(SDISC),"DISCOUNTS")
 ;
 ;;S STAW=$$LMAM(STAW)
 S ST=ST_","_$$INT(STAW) ; -- 33
 D S1($$NUM(STAW),"T.A.W TOTAL")
 ;
 S SWEBTAW=$$LMAM(SWEBTAW) ; -- ???
 S ST=ST_","_$$INT(SWEBTAW) ; -- 34
 D S1($$NUM(SWEBTAW),"WEB T.A.W TOTAL")
 ;
 S ST=ST_","_TAWQ ; -- 35
 D S1(TAWQ,"T.A.W ORDERS")
 ;
 S ST=ST_","_WEBDLVQ ; -- 36
 D S1(WEBDLVQ,"WEB ORDERS")
 ;
 S ST=ST_","_WEBTAWQ ; -- 37
 D S1(WEBTAWQ,"WEB TAW ORDERS")
 ;
 S ST=ST_",0" ; -- TOTAL RUNS ; -- 38
 I $$SHOW D S1("0","TOTALRUNS")
 ;
 S ST=ST_","_MKTIME ; -- 39
 D S1(MKTIME,"MAKETIME")
 ;
 S ST=ST_","_SDMS ; -- 40
 D S1(SDMS,"DLVCHARGE")
 ;
 S ST=ST_",0,0,0,0,0,0,0,0,0,0" ; -- 41-50
 I $$SHOW D
 .D S1(0,"TARGET_FOOD_COST")
 .D S1(0,"MOBILE_APP_SALES")
 .D S1(0,"MOBILE_DELIVERY_ORDERS")
 .D S1(0,"TARGET_DELIVERY_SALES")
 .D S1(0,"MOBILE_CARRYOUT_ORDERS")
 .D S1(0,"MOBILE_CARRYOUT_SALES")
 .D S1(0,"AGGREGATOR_ORDERS")
 .D S1(0,"AGGREGATOR_SALES")
 .D S1(0,"OVEN")
 ;
 S TTDT="0.00"
 S UND30="0.00"
 S OVR40="0.00"
 ;
 S DRVTIM=0
 I $G(DLVQSUPPL) D
 .S TTDT=$J(STIMSUPPL/DLVQSUPPL,2,2)
 .I DLVQ-TAWQ S DRVTIM=TTDT-$J(SMIN/(DLVQ-TAWQ),2,2)
 .S UND30=$J($G(DLVQ30)/DLVQSUPPL*100,2,2)
 .S OVR40=$J($G(DLVQ40)/DLVQSUPPL*100,2,2)
 ;
 S ST=ST_","_$J(DRVTIM,2,2) ; -- 51
 D S1(DRVTIM,"DRIVETIME")
 ;
 S ST=ST_","_$J(TTDT,2,2) ; -- 52
 D S1(TTDT,"ORDERWAITTIME")
 ; 
 S ST=ST_","_$J(UND30,2,2) ; -- 53
 D S1(UND30,"UNDER30TIME")
 ; 
 S ST=ST_","_$J(OVR40,2,2) ; -- 54
 D S1(OVR40,"OVER40TIME")
 ;
 S NETSALES=$$LMAM(MHIROT)
 S ST=ST_","_$$INT(NETSALES) ; -- 55
 D S1($$NUM(NETSALES),"NETSALES")
 ;
 I SND=1 D
 .S DIR=$G(@$$^W4PRM@("GAP","DIR"))
 .S FILE=DIR_$ZD(DT,"YYYYMMDD")_"_"_SID_"_DPJI_BI_"_+VER_".POL"
 .C FILE:(DELETE)
 .O FILE:(NEWVERSION:REWIND:WRITE)
 .U FILE
 . W ST,!
 .C FILE
 .;
 .S USRPW="Israel1PJFTP:3bNwb7faya&L_5YaL4vY="
 .S URL="sftp://files.papajohns.com/#/"
 .N FLOU S FLOU=FILE_".ou"
 .S CMD="curl -k -s -T "_FILE_" -u """_USRPW_""" "_URL
 .S @$$^W4GL("W4GAPPR")@(+$H,$P($H,",",2))=CMD
 .;
 .ZSY CMD
 .S @$$^W4GL("W4GAPPR")@(+$H,$P($H,",",2),"ZSY")=$ZSY
 ;
 I 'SND,$$^%W1LNG="E" D
 .N N S N="" F  S N=$O(SMKR(N)) Q:N=""  D
 ..D S1($J(SMKR(N),2,2),$$MKR1^W3MKR(N)_" k""dq")
 ..D S1($G(MKRQN(N)),$$MKR1^W3MKR(N)_" zepnfd 'qn")
 Q
 ;
INT(SUM) ;
 I +SUM=0 Q "000"
 Q $P(SUM*100,".")
 ;
NUM(VL) ; 
 I +$G(SND)=.5 Q $$INT(VL)
 Q $J(VL,2,2)
 ;
S1(VL,TXCD)
 N SH S SH=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 S @$$^W4MAIN("TMPS111")@(SH)=VL_" : "_$$TV^%W1DICT($$^%W1LNG,TXCD)
 Q
 ;
LMAM(SUM) ; 
 N MAMAH S MAMAH=$$MAMD^W4L(DT1) 
 Q $J(SUM*100/(100+MAMAH),2,2)
 ;
INTQ(VL) ;
 Q $P(VL,".") 
 ;
SHOW() ; 
 Q (+$G(SND)=.5)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GAPNET
W4GAPNET(JB,DT,NOPRT) ; [ 07.07.26 06:04 ] [ 06.07.26 09:43 ] [ 02.07.26 10:00 ] 
 N (JB,%ARG,%REM,DT,SND,NOPRT)
 ;
 S MSD0=$$GETP^%W1PRM("MSD")
 I $$PAPJ^W4PRM D DEFMSD(DT)
 ;
 D SCOMP^W4TOT(DT,DT)
 ;
 D DEFMSDPRM
 ;
 S ST=MSDR_","_MSD_","_DT ; -- 1,2,3
 ;
 ;;S MHIROT=SDLV+SREST
 ;
 S MHIROT=$$MHIROT(DT)
 S SDLV=MHIROT-SREST
 ;
 S ST=ST_","_MHIROT; -- 4
 ;
 S SWEB=$$LMAM(SWEB)
 S ST=ST_","_SWEB ; -- 5
 ;
 S SWEBDLV=$$LMAM(SWEBDLV)
 S ST=ST_","_SWEBDLV ; -- 6
 ;
 S SDLV=$$LMAM(SDLV)
 S ST=ST_","_SDLV ; -- 7
 ;
 S SREST=$$LMAM(SREST)
 S ST=ST_","_SREST ; -- 8
 ;
 S ST=ST_","_SMAM ; -- 9
 ;
 S ST=ST_","_SBIT ; -- 10
 ;
 S ST=ST_","_ORDQ ; -- 11
 ;
 S ST=ST_","_DLVQ ; -- 12
 ;
 S ST=ST_","_WEBQ ; -- 13
 ;
 S ST=ST_","_(DLVQ-WEBQ) ; -- 14
 ;
 S ST=ST_","_RESTQ ; -- 15
 ;
 S ST=ST_","_SMIN ; -- 16
 ;
 S ST=ST_","_(DLVQ-TAWQ-DLVDLYQ) ; -- 17
 ;
 S BRUTTO=MHIROT+SDISC
 S BRRUTTO=$$LMAM(BRUTTO)
 S ST=ST_","_BRUTTO ; -- 18
 ;
 S ST=ST_","_SDISC ; -- 19
 ;
 S STAW=$$LMAM(STAW)
 S ST=ST_","_STAW ; -- 20
 ;
 S STAW=$$LMAM(SWEBTAW)
 S ST=ST_","_SWEBTAW ; -- 21
 ;
 S ST=ST_","_TAWQ ; -- 22
 ;
 S ST=ST_","_WEBDLVQ ; -- 23
 ;
 S ST=ST_","_WEBTAWQ ; -- 24
 ;
 S ST=ST_","_$G(SZIC) ; -- 25
 ;
 S ST=ST_","_$G(STIP) ; -- 26
 S ST=ST_","_$G(FICTQ) ; -- 27
 S ST=ST_",,,"
 ;
 N N S N="" F  S N=$O(SMKR(N)) Q:N=""  D
 .S ST=ST_","_N_"~"_MKRQN(N)_"~"_SMKR(N)
 S ST=ST_",.5"_"~"_$G(RESTQ)_"~"_SREST
 ;
 S DIR=$$DIR
 S FLNM=DIR_"GAPN"_"-"_MSDR_"-"_MSD_"-"_$ZD(DT,"YYMMDD")
 S PRM="MSD="_MSD_"&PSW="_PSW
 ;
 D SEND^W3ASKFD1(FLNM,URL,PRM,ST)
 ;
 I '$G(NOPRT) D SENDPRT(DT)
 I $G(MSD0) D PUT^%W1PRM("MSD",MSD0)
 Q
 ;
 ;
LMAM(SUM) ; 
 Q SUM
 ;
PREPOLD(DT) ;
 S PLUTOT=$$^W4GL("PLUTOT")
 D
 .N DAT,MRK,N,A,QN,SUM,HNP
 .S DAT=$ZD(DT,"YYMMDD")
 .S MRK="" F  S MRK=$O(@PLUTOT@(DAT,MRK)) Q:MRK=""  D
 ..S N="" F  S N=$O(@PLUTOT@(DAT,MRK,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S QN=$P(A,"*",1)
 ...S SUM=$P(A,"*",2)
 ...S HNP=$P(A,"*",4)
 ...S @VRM@(N,"QN")=$G(@VRM@(N,"QN"))+QN
 ...S @VRM@(N,"SUM")=$G(@VRM@(N,"SUM"))+SUM-HNP
 ;
 S ST=""
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S ST=ST_N_"*"_$G(@VRM@(N,"QN"))_"*"_$G(@VRM@(N,"SUM"))_"|"
 Q
 ;
MHIROT(DT) ; 
 N (JB,%ARG,DT)
 D PREP^W4Z(DT,DT) ; 
 ;
 Q $G(ZZ("A"))+$G(ZZ("H")) 
 ;
TV(JB,DAT1,DAT2) ; 
 I '$G(JB) Q
 I $G(DAT1)=""!($G(DAT2)="") Q
 ;
 N DT,DT1,DT2 
 S DT1=$$^%L1DC(DAT1,3) 
 S DT2=$$^%L1DC(DAT2,3) 
 F DT=DT1:1:DT2 D
 .D W4GAPNET(JB,DT)
 D ^W4MNYSN(JB,DT1,DT2)
 Q
 ;
 ; 
SENDPRT(DT) 
 N (JB,DT,%ARG,%REM)
 D DEFMSDPRM
 S VRM=$$^W4MAIN("VRM") K @VRM
 S FILEIN=$$DIR_"GAPIT"_"-"_MSDR_"-"_MSD_"-"_$ZD(DT,"YYMMDD")
 ;
 S URL=$$OU^W3ASKURL_"w3ansitrep.jsp"
 ;
 D ^W4RSTGP1(DT)
 ;
 N PRM,FDB
 S SH=1
 S PRM="MSDR="_MSDR_"&DT="_DT_"&MSD="_MSD_"&SH="_SH
 S ST=""
 S N="" F  S N=$O(@VRM@("PAR",N)) Q:N=""  D
 .S CDT="" F  S CDT=$O(@VRM@("PAR",N,CDT)) Q:CDT=""  D
 ..N CD S CD=N_"-"_CDT
 ..S ST=ST_CD_"*"_$G(@VRM@("PAR",N,CDT,"QN"))_"*"_$G(@VRM@("PAR",N,CDT,"SUM"))_"|"
 .I $L(ST)>1500 D ZAP H 2
 ;
 D ZAP
 Q
 ;
DEFMSDPRM ; 
 S DIR=$$DIR
 S URL=$$OU^W3ASKURL_"w3ansgap.jsp?"
 S MSDR=+$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=+$G(@$$^W4PRM@("IT4WEB","MSDR"))
 S MSD=+$G(@$$^W4PRM@("WEB","MSD"))
 I 'MSD S MSD=+$G(@$$^W4PRM@("IT4WEB","MSD"))
 S PSW=$G(@$$^W4PRM@("WEB","PSW"))
 I 'PSW S PSW=$G(@$$^W4PRM@("IT4WEB","PSW"))
 Q
 ;
DIR(STAM) ;
 Q "/tmp/"
 ;
 ;
ZAP ;
 S SH=$G(SH)+1
 ;;C FILEIN:(DELETE)
 ;;O FILEIN:(WRITE:REWIND:NEWVERSION)
 ;;U FILEIN
 ;;W ST,!
 ;;C FILEIN
 ;
 S ST=$$CLWEB^%L1FRM(ST)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,ST) ;
 ;
 ;;S CMD="curl -k -s -d@'"_FILEIN_"' '"_URL_"' > /dev/null"
 ;;ZSY CMD
 ;;I $ZSY H 3 ZSY CMD
 ;;I $ZSY H 3 ZSY CMD
 S PRM="MSDR="_MSDR_"&DT="_DT_"&MSD="_MSD_"&SH="_SH
 S ST=""
 Q
 ;
DEFMSD(DT) ; 
 I '$$GETP^%W1PRM("MSD") D PUT^%W1PRM("MSD",1)
 D GETMSD(DT)
 Q
 ;
GETMSD(DT) ;
 N MSD S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 I MSD=10200,DT'>$$^%L1DC("010725",3) D PUT^%W1PRM("MSD",5) Q; --- DIZENGODF
 I MSD=10201,DT<$$^%L1DC("010126",3) D PUT^%W1PRM("MSD",6) Q  ; -- -RISHON MIZHAH
 I MSD=10209,DT'<$$^%L1DC("011122",3),DT'>$$^%L1DC("260624",3) D PUT^%W1PRM("MSD",4) Q
 I MSD=10211,DT<$$^%L1DC("020225",3) D PUT^%W1PRM("MSD",4) Q; -- MODIIN
 I MSD=10212,DT<$$^%L1DC("201124",3) D PUT^%W1PRM("MSD",4) Q; -- YAVNE
 I MSD=10214,DT<$$^%L1DC("160226",3) D PUT^%W1PRM("MSD",6) Q  ; -- RAMAT A-SHAR
 I MSD=10214,DT<$$^%L1DC("010726",3) D PUT^%W1PRM("MSD",26) Q  ; -- RAMAT A-SHAR
 I MSD=10215,DT<$$^%L1DC("010125",3) D PUT^%W1PRM("MSD",4) Q; -- BAT YAM
 I MSD=10217,DT<$$^%L1DC("010625",3) D PUT^%W1PRM("MSD",5) Q; -- HOLON
 I MSD=10217,DT<$$^%L1DC("010825",3) D PUT^%W1PRM("MSD",25) Q
 I MSD=10218,DT'<$$^%L1DC("071123",3),DT'>$$^%L1DC("060724",3) D PUT^%W1PRM("MSD",4) Q  ; -- K-UNO
 I MSD=10219,DT'<$$^%L1DC("090622",3),DT'>$$^%L1DC("300524",3) D PUT^%W1PRM("MSD",4) Q ; -- ASHKELON
 I MSD=10220,DT<$$^%L1DC("151025",3) D PUT^%W1PRM("MSD",5) Q  ; -- BEER SHEVA
 I MSD=10223,DT<$$^%L1DC("010226",3) D PUT^%W1PRM("MSD",6) Q  ; -- YEHUD
 I MSD=10223,DT<$$^%L1DC("070526",3) D PUT^%W1PRM("MSD",26) Q  ; -- YEHUD
 I MSD=10224,DT<$$^%L1DC("300925",3) D PUT^%W1PRM("MSD",5) Q  ; -- PIL ZAFON
 I MSD=10224,DT<$$^%L1DC("100526",3) D PUT^%W1PRM("MSD",6) Q  ; -- PIL ZAFON
 I MSD=10225,DT<$$^%L1DC("010126",3) D PUT^%W1PRM("MSD",6) Q  ; -- LEVONTIN DAROM
 I MSD=10228,DT<$$^%L1DC("010126",3) D PUT^%W1PRM("MSD",5) Q  ; -- PARDES HANA
 I MSD=10229,DT<$$^%L1DC("010825",3) D PUT^%W1PRM("MSD",5) Q; -- NETANIYA
 I MSD=10230,DT<$$^%L1DC("010126",3) D PUT^%W1PRM("MSD",6) Q  ; -- ZICHRON
 I MSD=10231,DT<$$^%L1DC("010126",3) D PUT^%W1PRM("MSD",6) Q  ; -- RAMAT ISHAI
 I MSD=10233,DT<$$^%L1DC("010126",3) D PUT^%W1PRM("MSD",6) Q  ; -- NOF A-GALIL
 I MSD=10234,DT<$$^%L1DC("010126",3) D PUT^%W1PRM("MSD",5) Q  ; -- HARISH
 I MSD=10236,DT<$$^%L1DC("010726",3) D PUT^%W1PRM("MSD",6) Q  ; -- RISHON MAARAV
 I MSD=10238,DT<$$^%L1DC("010725",3) D PUT^%W1PRM("MSD",5) Q  ; --RAMAT EFAL
 I MSD=10239,DT<$$^%L1DC("010725",3) D PUT^%W1PRM("MSD",5) Q  ; -- BEER YAKOV
 I MSD=10240,DT<$$^%L1DC("010825",3) D PUT^%W1PRM("MSD",5) Q  ; -- KADIMA
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GAPNIT
W4GAPNIT ; [ 31.10.21 16:21 ] [ 
PREP(DT) ;
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 S PLUTOT=$$^W4GL("PLUTOT")
 D
 .N DAT,MRK,N,A,QN,SUM,HNP
 .S DAT=$ZD(DT,"YYMMDD")
 .S MRK="" F  S MRK=$O(@PLUTOT@(DAT,MRK)) Q:MRK=""  D
 ..S N="" F  S N=$O(@PLUTOT@(DAT,MRK,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S QN=$P(A,"*",1)
 ...S SUM=$P(A,"*",2)
 ...S HNP=$P(A,"*",4)
 ...S @VRM@(N,"QN")=$G(@VRM@(N,"QN"))+QN
 ...S @VRM@(N,"SUM")=$G(@VRM@(N,"SUM"))+SUM-HNP
 ;
 S ST=DT_"~"_MSDR_"~"_MSD_"~"
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S ST=ST_N_"*"_$G(@VRM@(N,"QN"))_"*"_$G(@VRM@(N,"SUM"))_"~"
 Q
 
 
 

W4GAPNT0
W4GAPNTD ; [ 18.08.21 15:04 ] [ 17.08.21 14:49 ] [ 
 N (JB,%ARG,%REM,MEDAT,ADDAT)
 S DT1=$$^%L1DC(MEDAT,3)  
 S DT2=$$^%L1DC(ADDAT,3)
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 D MRKV
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 D KOT
 ;
 S MKT="MSDR,MSD,DT,MHIROT,SWEB,SWEBDLV,SDLV,SREST,SMAM,SBIT,ORDQ,WEBQ,DLWEBQ,RESTQ"
 S MKT=MKT_",SMIN,DLVNET,BRUTTO,SDISC,STAW,TAWQ,WEBDLVWQ,WEBTAWQ"
 ;
 D GMSDR
 D GLNET
 F DT=DT1:1:DT2 D
 .S MSD="" F  S MSD=$O(@GMSDR@(MSD)) Q:MSD=""  D
 ..S ST=$G(@GLNET@(MSDR,DT,MSD))
 ..D PRS^%L1FRM(ST,MKT,",")
 ..;
 ..S MST(DT,MSD)=ST
 ..F J=23:1:$L(ST,",") D
 ...S MKR=$P(ST,",",J)
 ...S M=$P(MKR,"~") Q:'M
 ...S MQ(DT,MSD,M)=$P(MKR,"~",2)
 ...S MS(DT,MSD,M)=$P(MKR,"~",3)
 ...
 ;
 W "<table width=""100%"">",!
  F DT=DT1:1:DT2 D LINE(DT)
 W "</table>",!
 Q
 ;
 ;
KOT ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_""">",!
  W $$^%W1DICT("GAPNETREP",MEDAT_"<>"_ADDAT) 
 W "</span>",! 
 Q
 ;
MRKV ;
 S MRKV(3)=$$^%W1DICT("TOTSALES")
 S MRKV(4)=$$^%W1DICT("WEBSALES")
 S MRKV(5)=$$^%W1DICT("DLVWEBSALES")
 S MRKV(6)=$$^%W1DICT("DLVSALES")
 S MRKV(7)=$$^%W1DICT("RESTSALES")
 S MRKV(8)=$$^%W1DICT("TAXES")
 S MRKV(9)=$$^%W1DICT("CANCELLATIONS")
 S MRKV(10)=$$^%W1DICT("ORDERSNUMBER")
 S MRKV(11)=$$^%W1DICT("WEBSORDERSNUMBER")
 S MRKV(12)=$$^%W1DICT("DLVORDERSNUMBER")
 S MRKV(13)=$$^%W1DICT("RESTORDERSNUMBER")
 S MRKV(14)=$$^%W1DICT("ORDERSDLVTIME")
 S MRKV(16)=$$^%W1DICT("BRUTTO")
 S MRKV(17)=$$^%W1DICT("DISCOUNTS")
 S MRKV(18)=$$^%W1DICT("T.A.W TOTALS")
 S MRKV(19)=$$^%W1DICT("WEB T.A.W TOTAL")
 S MRKV(20)=$$^%W1DICT("T.A.W ORDERS")
 S MRKV(21)=$$^%W1DICT("WEB ORDERS")
 S MRKV(22)=$$^%W1DICT("WEB TAW ORDERS")
 Q
 ;
GMSDR ;
 S GMSDR="^|"""_$$^W3MAIN_"""|W3MSDR"
 Q
 ;
GLNET ;
 S GLNET="^|"""_$$^W3MAIN_"""|W4GAPNET"
 Q
 ;
LINE(DT) ;
  W "<tr>"
   W "<td width=""20%"">"
     D AMUD1(DT)
   W "</td>"
   ;
   W "<td width=""70%"">"
     D AMUD2(DT)
   W "</td>"
   ;
   W "<td width=""10%"">"
     D AMUD3(DT)
   W "</td>"
  W "</tr>",!
 Q
 ;
 ;
AMUD1(DT) ;
 W "<table width=""100%"">",!
  W "<tr><td style=""font-size:"_$$^W3FSZ(14)_""" />"
   W $ZD(DT,"DD.MM.YY")
  W "</td></tr>",!
  N N S N="" F  S N=$O(MRKV(N)) Q:N=""  D
  .W "<tr><td>"_$$H2U^%L1FRM(MRKV(N))_"</td></tr>",!
 W "</table>",!
 Q
 ;
AMUD2(DT) ;
 W "<table width=""100%"">",!
  W "<tr>"
   S MSD="" F  S MSD=$O(@GMSDR@(MSD)) Q:MSD=""  D
   .W "<th>"_$G(@GMSDR(MSD))_"</th>" 
  W "</tr>",! 
 W "</table>",!
 Q
 ;
AMUD3(DT) ;
 W "<table width=""100%"">",!
 W "</table>",!
 Q
 
 

W4GAPNTD
W4GAPNTD ; [ 31.08.26 09:03 ] [ 02.08.26 15:19 ] [ 27.07.26 08:03 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 K @$$^W4MAIN("TMPPROT")
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 N TMPPROT S TMPPROT=$$^W4MAIN("TMPPROT") K @TMPPROT
 K %L1PC
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S %REPN="W4GAPNTD"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 S TMPSN="^|$$^W3MAIN|TMPSN" K @TMPSN
 ;
 S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @TMPSN@(N)=$$MSD^W3R(N)
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 S MSDR=+$G(MSDR)
 Q
 ;
 ;
DAT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 I DT<$G(MEDAT) S OK=0 Q
 I DT>$G(ADDAT) S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;
 N MSD S MSD="" F  S MSD=$O(^|$$^W3MAIN|W3MSDR(MSDR,MSD)) Q:MSD=""  I $G(^(MSD)),'$D(^|$$^W3MAIN|W4GAPNET(MSDR,DT,MSD)) D
 .I MSDR=10222,MSD=10299 Q
 .N SH S SH=$O(@$$^W4MAIN("TMPPROT")@(99999),-1)+1
 .S @$$^W4MAIN("TMPPROT")@(SH)="[ "_$$HBR^%L1FRM($$MSD^W3R(MSD),20)_" ] ! mipezp oi` - "_$ZD(DT,"DD.MM.YY")_" jix`z "_MSD_" dcrqn"
 D PUT^%W1PRM("PCPDAT",DAT)
 ;
 Q
 ;
 ;
MSD ;
 I $G(MSD),'$D(^|$$^W3MAIN|W3MSDR(MSDR,MSD)) S OK=0 Q
 I MSDR=10222,MSD=10299 S OK=0 Q
 ;
 N GAPNET S GAPNET=$$GAPNET^W4MNYALL(DT,MSD)
 N MNYALL S MNYALL=$G(^|$$^W3MAIN|W4MNYALL(DT,MSD))
 N PD1 S PD1=$P(MNYALL,"\")
 N CR1 S CR1=$P(MNYALL,"\",2)
 N TOT S TOT=PD1+CR1
 ;
 N MSD1 S MSD1=$G(^|$$^W3MAIN|W3MSD(MSD))
 ;;S ^AA("W4GAPNTD","GLOB",DT,MSD)=GLOB
 ;;S ^AA("W4GAPNTD","GLOB",DT,MSD,"@GLOB")=$G(@GLOB)
 N A,DLM S A=$G(@GLOB)
 S DLM=","
 S x1=$$RKV($P(A,DLM,18)) ; -- BRUTTO
 S x2=$$RKV($P(A,DLM,4))  ; -- MHIROT
 S x3=$$RKV($P(A,DLM,5))  ; -- WEB SUM
 S x4=$$RKV($P(A,DLM,7)-$P(A,DLM,20));--  DLV SUM
 S x5=$$RKV($P(A,DLM,8))  ; -- REST SUM
 S x6=$$RKV($P(A,DLM,20)) ; -- TAW SUM
 S x7=$P(A,DLM,11) ; -- ORDQ
 S x8=$P(A,DLM,13); -- WEBQ
 S x9=$P(A,DLM,12)-$P(A,DLM,22) ; -- DLVQ 
 ;;S x10=$P(A,DLM,27) ; -- FICTIV 
 S x10=$P(A,DLM,15) ; -- RESTQ
 S x11=$P(A,DLM,22) ; -- TAWQ
 S x12=$$RKV($P(A,DLM,10)) ; -- BIT
 S x13=$$RKV($P(A,DLM,19)) ; -- HNH
 S x14=$$RKV($P(A,DLM,25)) ; -- ZIC
 S x15=$$RKV($P(A,DLM,26)) ; -- TIP
 N OKX S OKX=0
 N J F J=1:1:15 I $G(@("x"_J)) S OKX=1
 I 'OKX D
 .N SH S SH=$O(@$$^W4MAIN("TMPPROT")@(99999),-1)+1
 .S @$$^W4MAIN("TMPPROT")@(SH)="[ "_$$HBR^%L1FRM($$MSD^W3R(MSD),20)_" ] ! mipezp oi` - "_$ZD(DT,"DD.MM.YY")_" jix`z "_MSD_" dcrqn"
 Q
 ;
RKV(VL) ;
 Q VL  ; --- 04/10/22
 ;
 N DT S DT=$G(@$$^%W1GLPRM@("VAL","MEDAT"))
 I DT,$$LMAM D
 .N MAM S MAM=$$MAMD^W4L(DT)
 .S VL=VL*100/(100+MAM)
 Q VL
 ;
LMAM(STAM)  
 Q $$GETP^%W1PRM("PCLMAM")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GAPNTM
W4GAPNTM ; [ 26.03.26 12:27 ] [ 19.05.24 11:01 ] [ 05.10.21 16:56 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N MSDR,W3MSDR,TMP,TMPSN
 K %L1PC
 D ^%W1ARG
 I $G(MSDR)="" W "MSDR NOT DEFINED !" Q
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S %REPN="W4GAPNTM"
 S %REPN("PRTN")=$$^%W1JB
 ;
 S TMPSN="^|$$^W3MAIN|TMPSN" K @TMPSN
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @TMPSN@(N)=$$MSD^W3R(N)
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 S MSDR=+$G(MSDR)
 S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 N MEDT,ADDT
 S MEDT=$O(^|$$^W3MAIN|W4GAPNET(MSDR,""))
 S ADDT=+$H
 ;
 N DT F DT=MEDT:1:ADDT D
 .N MSD S MSD="" F  S MSD=$O(^|$$^W3MAIN|W4GAPNET(MSDR,DT,MSD)) Q:MSD=""  D
 ..S A=$G(^(MSD))
 ..N J,B,MKR,QN,SUM
 ..F J=31:1:$L(A,",") D
 ...S B=$P(A,",",J)
 ...S MKR=$P(B,"~") Q:'MKR
 ...S QN=$P(B,"~",2)
 ...S SUM=$P(B,"~",3)
 ...S @TMP@(DT,MSD,MKR)=QN_"*"_SUM
 Q
 ;
 ;
DAT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 I DT<$G(MEDAT) S OK=0 Q
 I DT>$G(ADDAT) S OK=2 Q
 Q
 ;
MSD ;
 N MSD1 S MSD1=$G(^|$$^W3MAIN|W3MSD(MSD))
 Q
 ;
MKR ;
 S MKR1=$G(^|$$^W3MAIN|W3MKR(MKR))
 S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 Q 
 ;
RKV(VL) 
 Q $$RKV^W4GAPNTD(VL) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GAPPRM
W4GAPPRM ; [ 02.07.20 13:21 ] [ 28.06.20 09:39 ] [ 25.06.20 18:48 ] 
GET ;
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 I '$G(STORYID) S %SC("ER")=1
 S @$$^W4PRM@("GAP")=PRM
 S @$$^W4PRM@("GAP","ID")=STORYID
 S @$$^W4PRM@("GAP","DIR")=DIR
 Q 1
 ;
END Q
 
 
 
 
 
 
 
 
 

W4GAPREP
W4GAPREP ; [ 29.09.23 06:54 ] [ 08.12.21 11:03 ] [ 30.09.21 20:21 ] 
 N (JB,%ARG,%REM,DISP) ;
 S DAT1=$G(%ARG("MEDATE")) I DAT1="" S DAT1=$ZD($$^W4DZ,"DD.MM.YY")
 S DAT2=$G(%ARG("ADDATE")) I DAT2="" S DAT2=DAT1
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S LNG=$$^%W1LNG
 ;
 K @$$^W4MAIN("TMPS111")
 ;
 D SCOMP^W4TOT(DT1,DT2)
 ;
 S MHIROT=0
 F DT=DT1:1:DT2 D
 .S MHIROT=MHIROT+$$MHIROT^W4GAPNET(DT)
 ;
 S SDLV=MHIROT-SREST
 ;
 S TKF=$ZD(DT,"YYYYMMDD")
 S ST=TKF ; -- 1
 I DT2'=DT1 S TKF=DAT1_" - "_DAT2
 I DT2=DT1 S TKF=DAT1
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  D S1(TKF,"SHORTMANYPERIOD")
  D S2("DATABEFORETAX")
  D PCKAV
  W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
   W $$^%W1DICT("SHORTMANYPERIOD",TKF)
  W "</span>"
  W "<br>",!
  W "<span style=""font-size:"_$$^W3FSZ(12)_""">"
   W $$^%W1DICT("DATABEFORETAX")
  W "</span>"
  ;
  W "<br><br>"
  W "<table >",!
   ;;S MHIROT=SREST+SDLV
   D TR($$LMAM(MHIROT),"SALESNETTO",1)
   D TR($$LMAM(SDLV-STAW),"DLVNETTO",1)    
   D TR($$LMAM(STAW),"TAWNETTO",1)    
   D TR($$LMAM(SREST),"RESTNETTO",1)    
   D TR("","")
   D TR(DLVQ+RESTQ,"ORDQN")
   D TR(DLVQ-TAWQ,"DLVQN")
   D TR(TAWQ,"TAWQN")
   D TR(RESTQ,"RESQN")
  W "</table>",! 
  D PCKAV 
  I $G(DISP) D
  .W "<br><br>",!
  .S W4BCK("SZ")=12 
  .D ^W4BCK
 W "</div>",!
 ;
 ;
 N TMPS111 S TMPS111=$$^W4MAIN("TMPS111")
 ;
 I '$G(DISP) D
 .D ^W4MDPPC Q:$G(PRINT)=""
 .N SM1 S SM1=2
 .N N S N="" F  S N=$O(@TMPS111@(N)) Q:N=""  I N S TXT=$G(^(N)) D S1^W4PCST
 .D ^W4CUT(PRINT,$G(%MDP("CUT")))
 ;
 K @TMPS111
 Q
 ;
 ;
TR(VL,NM,DR) ;
 S VL=$S($G(DR):$J(VL,2,2),1:VL)
 W "<tr>"
  W "<td>"_$$^%W1DICT(NM)_"</td>"
  W "<td>"_VL_"</td>"
 W "</tr>",!
 ;
 D S1(VL,NM)
 Q
 ;
S1(VL,NM) ;
 N NM1 S NM1=$$TV^%W1DICT(LNG,NM)
 N ST S ST=$J(VL,10)_" : "_$$HBR^%L1FRM(NM1,19)
 N SH S SH=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 S @$$^W4MAIN("TMPS111")@(SH)=ST
 Q
 ;
S2(NM) ;
 N NM1 S NM1=$$TV^%W1DICT(LNG,NM)
 N SM S SM=(40-$L(NM1))\2
 N ST S ST=$J("",SM)_NM1
 N SH S SH=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 S @$$^W4MAIN("TMPS111")@(SH)=ST
 Q
 ;
PCKAV ; 
 N SM,DL
 S SM=1
 S DL=34
 N ST S ST=$J("",SM)_$TR($J("",DL)," ","-")
 N SH S SH=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 S @$$^W4MAIN("TMPS111")@(SH)=ST
 Q
 ;
LMAM(VL) ;
 N MAMAH S MAMAH=$$MAMD^W4L(DT1)
 Q $J(VL*100/(100+MAMAH),2,2)
 
 
 
 
 
 
 
 
 
 

W4GAPZ
W4GAPZ(DT1,DT2) ; [ 08.07.26 13:29 ] [ 14.05.26 12:13 ] [ 28.04.26 12:30 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(%ARG("SHOW"))=0 Q
 ;
 D SETIN
 ; 
 D OPEX ; --> FLCSV
 U FLCSV
 S ST=DAT2_","_$$HBR("jix`z cr")_","_DAT1_","_$$HBR("jix`zn")
 W ST,!
 S ST=$$HBR($$TV^%W1DICT($$^%W1LNG,"KINDREPORT"))
 S ST=$$HBR($$TV^%W1DICT($$^%W1LNG,"DATA_NAME"))_","_ST
 S ST=$$HBR($$TV^%W1DICT($$^%W1LNG,"ACTIONSNUMBER"))_","_ST
 S ST=$$HBR($$TV^%W1DICT($$^%W1LNG,"SUM"))_","_ST
 W ST,!
 U $P
 ; 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  ; 
  D
  .I $G(%ARG("BACK")) D
  ..S W4BCK("SZ")=12
  ..D ^W4BCK
  .
  .S FLCSVWEB=$$WEB^W3MAIN_$P(FLCSV,"/jsp/",2)
  .W "<div dir="""_$$^%W1DIR_""" id=""divex"" style=""display:none"" >",!
  . W "<a href="""_FLCSVWEB_"""><img src=""w3excel.png"" > "_FLCSVWEB_"</a>",!
  .W "</div>",! 
  .
  .W "<br><br>",!
  ; ---------------------------- MANY REPORT PER PAYMENT KINDS
   S REP="MANYREP"
   D MANYREP
   ;
   W "<p></p>",!
   D PCST("")
   D PCST("")
   ;
   ;------------------------- MANY REPORT PER AUTHORITIES 
   D REP2MAS
  ;
  W "<p></p>",!
  D PCST("")
  D PCST("")
  D KAV
  ;
  ; -------------------------- DISCOUNTS AMD CANCELATIONS 
  D DISCCNCREP
  ;
  W "<p></p>",!  
  D PCST("")
  D PCST("")
  D KAV
  ;
  ; ------------------------- STATISTIKA DLV,TAKEAWAY, IN LOCAL
  D STATREP
 ;
  W "<p></p>",!  
  D PCST("")
  D PCST("")
  ;
  D MKRREP
  ;
  W "<p></p>",!  
  D PCST("")
  D PCST("")
  ;
  ; ------------------- STATISTIKA CAJ PER SITES
  ;
  D CAJMKRREP
  ;
  W "<p></p>",!  
  D PCST("")
  D PCST("")
  ;
  D ASRREP
  ;
  W "<p></p>",!  
  D PCST("")
  D PCST("")
  D
  .W "<br><br>",!
  .S W4BCK("SZ")=12
  .D ^W4BCK
  W "</div>",!
  ;
  C FLCSV
  ;
  N PRMS S PRM="GAPZ;"_$ZD(DT1,"DD.MM.YY")_";"_$ZD(DT2,"DD.MM.YY")
  N PROG S PROG="PRINT1^W4TELREP("""_PRM_""")"
  ;;D PUT^%W1PRM("CSRPRINT",PROG)
  D PUT^%W1PRM("CSRPRINT","S1PC^W4TELREP")
 Q
 ;
 ;
KOT(DT1,DT2,KOT1,KOT2)
 N DAT1,DAT2,TX
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 I DT1=DT2 D
 .W $$^%W1DICT(KOT1,DAT1)
 .S TX=$$TV^%W1DICT($$^%W1LNG,KOT1,DAT1)
 I DT1'=DT2 D
 .W $$^%W1DICT(KOT2,DAT1_"<>"_DAT2)
 .S TX=$$TV^%W1DICT($$^%W1LNG,KOT2,DAT1_"<>"_DAT2)
 ;
 D PCST(TX)
 ;;D KAV($L(TX))
 Q
 ;
 ;
SUMZ(DT1,DT2,IND) ;
 N (JB,%ARG,DT1,DT2,IND)
 N SUM S SUM=0
 N DT,DAT F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .S GL=$$^W4GL("Z1")
 .
 .I '$D(@GL@(DAT)) D  Q
 ..D ^W4SUMZRO
 ..D ^W4SUM
 ..S GL=$$^W4GL("TOT")
 ..N VL S VL=$G(@GL@(DAT,IND,1))
 ..D SUMZVL(VL,DT,IND) 
 .
 .N N S N="" F  S N=$O(@GL@(DAT,N)) Q:N=""  D
 ..N VL S VL=$G(^(N,IND,1))
 ..D SUMZVL(VL,DT,IND) 
 ;
 Q SUM
 ;
 ; 
SUMZVL(VL,DT,IND) ;
 I $$LMAM,IND'["#" D  
 .N AHMAM S AHMAM=$$MAMD^W4L(DT)
 .S VL=$J(VL*100/(100+AHMAM),5,5)
 S SUM=SUM+VL
 Q
 ;
HB(DT1,DT2) ;
 N SUM,QN,SMAM S SUM=0,QN=0,SMAM=0
 N CODDOC 
 N GL S GL=$$^W4GL("KLIN") 
 ;
 F CODDOC="H","TZ" D
 .N N S N="" F  S N=$O(@GL@(CODDOC,N)) Q:N=""  D
 ..D ^W4HSBGET(N,CODDOC)
 ..N DAT S DAT=$G(W4HSB("TODATE"))
 ..N DT S DT=$$^%L1DC(DAT,3)
 ..I DT<DT1!(DT>DT2) Q
 ..S QN=QN+1
 ..;;N KF S KF=1 I CODDOC="TZ" S KF=-1
 ..N VL S VL=$S($$LMAM:$G(W4HSB("LMAM")),1:W4HSB("TOT")) 
 ..S SMAM=SMAM+$G(W4HSB("MAM"))
 ..S SUM=SUM+VL
 ..S SUM(CODDOC)=$G(SUM(CODDOC))+VL
 Q SUM_"\"_QN_"\"_SMAM
 ;
 ; 
TR(NM,QN,VL,VLP,PR) ;
 S QN=$G(QN)
 S VL=$G(VL)
 S VLP=$G(VLP)
 D STEX(REP,NM,QN,VL)
 ;
 N TX S TX=""
 ;
 I NM'["<>" D
 .S TX=$$TV^%W1DICT($$^%W1LNG,NM)
 ;
 I NM["<>" D
 .S TX=$P(NM,"<>",2)
 .S NM=$P(NM,"<>")
 ; 
 S TX=$$HBR^%L1FRM(TX,WD01)
 ;
 W "<tr "
  I $G(PR)["B" W "style=""background-color:yellow; font-weight:bold"" "
 W ">" 
  W "<td "
  W ">" 
   D
   .I $E(NM)="!" W $E(NM,2,255) Q
   .W $$^%W1DICT(NM)
  W "</td>",!
  ;
  I $G(PR)'="-" D
  .D TDLTR
  . W $$STYLE(QN)
  .W ">" 
  . W QN
  . S TX=$J(QN,WD02)_" "_TX
  .W "</td>",!
  ;
  D TDLTR
   W $$STYLE(VL)
  W ">" 
   W $S(VL="":"&nbsp;",1:$J(VL,DR,DR))
   N VL1 S VL1=$S(VL="":"",1:$J(VL,DR,DR))
   S TX=$J(VL1,WD03)_" "_TX 
  W "</td>",!
  ;
  I $G(PR)'="-" D
  .I $E($G(VLP))="%" D
  ..N TOT S TOT=$E(VLP,2,20)  
  ..I 'TOT S VLP="" Q
  ..S VLP=$J(VL*100/TOT,DR,DR)
  .;
  .D TDLTR
  . W $$STYLE(VLP)
  .W ">" 
  . W $S(VLP="":"&nbsp;",1:$J(VLP,DR,DR))
  . S TX=$J(VLP,WD04)_" "_TX
  .W "</td>",!
 W "</tr>",!
 ;
 D PCST(TX)
 Q
 ;
 ;
TR1(NM,QN,VL,TOT,PR) ;
 S QN=$G(QN)
 S VL=$G(VL)
 D STEX(REP,NM,QN,VL)
 ;
 N TX S TX=""
 ;
 I NM'["<>" D
 .S TX=$$TV^%W1DICT($$^%W1LNG,NM)
 ;
 I NM["<>" D
 .S TX=$P(NM,"<>",2)
 .S NM=$P(NM,"<>")
 ;
 S TX=$$HBR^%L1FRM(TX,WD11)
 ;
 W "<tr "
  I $G(PR)="B" W "style=""background-color:yellow; font-weight:bold"" "
  I NM="SUPPLIEDTIME" W "style=""color:brown"" "
 W ">" 
  W "<td "
  W ">" 
   D
   .I $E(NM)="!" W $E(NM,2,255) Q
   .W $$^%W1DICT(NM) 
  W "</td>",!
  ;
  D TDLTR
   W $$STYLE(QN)
  W ">" 
   N QN1 D
   .I NM="SUPPLIEDTIME" S QN1=" " Q
   .S QN1=QN W QN1
   S TX=$J(QN1,WD12)_" "_TX
  W "</td>",!
  ;
  D TDLTR
   W $$STYLE(VL)
  W ">" 
   N VL1
   D
   .I NM="SUPPLIEDTIME" S VL1=" " W VL1 Q
   .S VL1=$J(VL,DR,DR) W VL1
   S TX=$J(VL1,WD13,2)_" "_TX
  W "</td>",!
  ;
  D TDLTR W ">"
   D
   .N RKV
   .D
   ..I 'TOT S RKV=" " Q
   ..S RKV=$J(VL*100/TOT,DR,DR)
   .W RKV 
   .S TX=$J(RKV,WD14)_" "_TX
  W "</td>",!
  ;
  D TDLTR W ">"
   D
   .N RKV
   .I 'QN S RKV=" "
   .E  S RKV=$J(VL/QN,DR,DR)
   .W RKV
   .S TX=$J(RKV,WD15)_" "_TX
  W "</td>" 
  W "</tr>",!
  ;
  D PCST(TX)
 Q 
 ;
 ;
TDLTR ;
 W "<td dir=""LTR"" align=""right"" "
 Q
 ;
INIT ;
 D ^%W1ARG,^W4IN S DTZ=$S($$GET^%W1PRM("W4LKH"):+$H,1:P1DZ)
 I '$G(MEDAT) S MEDAT=DTZ
 I '$G(ADDAT) S ADDAT=DTZ
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GETP^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 D PUT^%W1PRM("CSRPRINT",1)
 Q
 ;
TBLMAM ; 
  N OK S OK=0
  ;;D PUT^%W1PRM("PCLMAM",+$G(%ARG("LMAM")))
  W "<table dir="""_$$^%W1DIR_""" border=""0"" style=""width:25%;text-align:center"" >",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("AFTERTAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S('$$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('0')"" >"
   W "</td>"
   W "<td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S($$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('1')"" >"
   W "</td>"
  W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
LMAM() ;
 Q $G(%ARG("LMAM")) 
 ;
 ;
SUMMAM(DT1,DT2,LST) ;
 N GL S GL=$$^W4GL("Z1")
 N SUM S SUM=0
 N IND
 ;
 N DT,DAT F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .N N S N="" F  S N=$O(@GL@(DAT,N)) Q:N=""  D
 ..N IND S IND="" F  S IND=$O(@GL@(DAT,N,IND)) Q:IND=""  D
 ...I ","_LST_","'[(","_IND_",") Q
 ...N VL S VL=$G(^(IND,1))
 ...N AHMAM S AHMAM=$$MAMD^W4L(DT)
 ...S VL=$J(VL*AHMAM/(100+AHMAM),5,5)
 ...S SUM=SUM+VL
 Q SUM
 ;
RKV(VL,DT) ;
 I '$G(DR) S DR=2
 I '$$LMAM Q $J(VL,DR,DR)
 N AHMAM S AHMAM=$$MAMD^W4L(DT)
 S VL=$J(VL*100/(100+AHMAM),5,5)
 Q $J(VL,DR,DR)
 ;
STYLE(VL) ;
 I VL<0 Q "style=""color:red"" "
 I +VL=0 Q "style=""color:grey"" "
 Q ""
 ;
OPNTBL(WD) ;
 W "<table width="""_WD_"%"" cellspacing=""0"" cellpadding=""4"" border=""1"" >",!
 Q
 ;
WD() ;
 Q 60
 ;
KAV(LN) ;
 N TX S TX=$TR($J("",39)," ","-")
 D PCST(TX)
 Q
 ;
PCST(TX) 
 N SM1 S SM1=0 
 D ^W4PCST($G(TX),1)
 Q 
 ;
 ;
SETIN ;
 D ^%L1TS
 S GLS=$$^W4MAIN("TMPS111") K @GLS
 S DLM="|",DR=1
 ;
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 ;
 S WD01=14,WD02=5,WD03=9,WD04=9
 S WD11=12,WD12=5,WD13=7,WD14=5,WD15=6
 ;
 S OPN=0
 I DT2'<$$^W4DZ S OPN=1
 D SCOMP^W4TOT(DT1,DT2,OPN) ; --> VKIOSK,WOLT,TB,GUDIS,CIB,HNS,HNP,OTH,BIT,QNMSL,QNMSD
 S SDLV=SDLV-STAW
 ;
 S MZ=$$SUMZ(DT1,DT2,"F")
 S QMZ=$$SUMZ(DT1,DT2,"F#")
 S CHK=$$SUMZ(DT1,DT2,"GO")
 S QCHK=$$SUMZ(DT1,DT2,"GO#")
 S MVB=$$SUMZ(DT1,DT2,"GB")
 S QMVB=$$SUMZ(DT1,DT2,"GB#")
 ;
 S (QHUZ,SHUZ,KK,QKK)=0
 F I=1,2,3,4,6,7,9 D
 .S @("JV"_I)=$$SUMZ(DT1,DT2,"JV"_I)
 .S @("JQV"_I)=$$SUMZ(DT1,DT2,"#JV"_I)
 .
 .I $$PAPJ^W4PRM,I=$$GFC^W4VT D  Q
 ..S KK=KK+$G(@("JV"_I))
 ..S QKK=QKK+$G(@("JQV"_I))
 .
 .S SHUZ=SHUZ+$G(@("JV"_I))
 .S QHUZ=QHUZ+$G(@("JQV"_I))
 ; 
 S ISR=$$SUMZ(DT1,DT2,"V1")-JV1
 S QISR=$$SUMZ(DT1,DT2,"V1#")-JQV1
 S VIZ=$$SUMZ(DT1,DT2,"V2")-JV2
 S QVIZ=$$SUMZ(DT1,DT2,"V2#")-JQV2
 S DNR=$$SUMZ(DT1,DT2,"V3")-JV3
 S QDNR=$$SUMZ(DT1,DT2,"V3#")-JQV3
 S AEX=$$SUMZ(DT1,DT2,"V4")-JV4
 S QAEX=$$SUMZ(DT1,DT2,"V4#")-JQV4
 S LEUM=$$SUMZ(DT1,DT2,"V6")-JV6
 S QLEUM=$$SUMZ(DT1,DT2,"V6#")-JQV6
 ;
 S ASR=$$SUMZ(DT1,DT2,"H")
 S QASR=$$SUMZ(DT1,DT2,"H#")
 S QTIP=$$SUMZ(DT1,DT2,"T#")
 S TIP=$$SUMZ(DT1,DT2,"T")
 ; 
 S HBTAX=$$HB(DT1,DT2)
 S QHBTAX=$P(HBTAX,"\",2),HBTAX=+HBTAX 
 Q
 ;
 ;
MANYREP ; 
  W "<p style=""font-weight:bold"" >" 
   S TX=$$TV^%W1DICT($$^%W1LNG,"ISSUEREPTIME",$ZD($H,"DD.MM.YY  24-60"))
   D PCST(TX)
   D KOT(DT1,DT2,"MANYREP2DAT","MANYREP2PERIOD")
  W "</p>",!
  ;
  D TBLMAM
  ;
  I $$LMAM D
  .S TX=$$TV^%W1DICT($$^%W1LNG,"DATABEFORETAX")
  .D PCST(TX)
  W "<p></p>",! 
  ;
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("KINDOFPAYMENT")_"</th>"
    W "<th>"_$$^%W1DICT("ISKAOT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>"_$$^%W1DICT("OFPDYON")_"</th>"
   W "</tr>",!
   ;
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"KINDOFPAYMENT"),WD01)
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"ISKAOT"),WD02)_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"TOTAL"),WD03-1)_" "_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"OFPDYON"),WD04-1)_" "_DLM_TX
   ;
   D KAV($L(TX))
   D PCST(TX)
   D KAV($L(TX))
   ;
   S REP="MANYREP"
   D TR("CASH",QMZ,MZ,MZ)
   D TR("CHECK",QCHK,CHK,CHK)
   D TR("MVBANK",QMVB,MVB,MVB)
   D TR("ISR",QISR,ISR,ISR)
   D TR("VISA",QVIZ,VIZ,VIZ)
   D TR("DINERS",QDNR,DNR,DNR)
   D TR("AEX",QAEX,AEX,AEX)
   D TR("LEUMI",QLEUM,LEUM,LEUM)
   D TR("KK",QKK,KK,KK)
   D TR("HUZ",QHUZ,SHUZ,SHUZ)
   D TR("TIP",QTIP,TIP,0)
   ;
   S SMAM=$$SUMMAM(DT1,DT2,"F,G,V,H")
   S SMAMP=$$SUMMAM(DT1,DT2,"F,G,V")
   S PDYON=MZ+CHK+MVB+ISR+VIZ+DNR+AEX+LEUM+KK+SHUZ
   S QPDYON=QMZ+QCHK+QMVB+QISR+QVIZ+QDNR+QAEX+QLEUM+QKK+QHUZ+QTIP
   ;
   S TOT=PDYON+ASR
   D TR("ASRORD",QASR,ASR,0)
   ;
   D KAV
   ;
   D TR("TOTSALES",QPDYON+QASR,TOT,PDYON,"B")
   ;
   I '$$LMAM D
   .D TR("MAM","",SMAM,SMAMP,"B")
   .D TR("BEFORETAX","",TOT-SMAM,PDYON-SMAMP,"B")
   ;
   W "</table>",! 
 Q
 ;
 ;
REP2MAS ;
   S REP="REP2MAS"
   D KOT(DT1,DT2,"REPAUTHOR2DAT","REPAUTHOR2PERIOD")
   D KAV
   ;
   D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("PROFITKIND")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    ;
    S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"PROFITKIND"),WD01)
    S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"TOTAL"),WD03-1)_" "_DLM_TX
    D PCST(TX)
    D KAV
    ;
    D TR("PDYON",QPDYON,PDYON,"","-")
    D TR("TOTALINVOICESTX",QHBTAX,HBTAX,0,"-")
    S TOTM=PDYON+HBTAX
    D TR("TOTM",QPDYON+QHBTAX,TOTM,0,"-")
    ;
    S HBMAM=$P($$HB(DT1,DT2),"\",3)
    S SMAM=$$SUMMAM(DT1,DT2,"F,G,V")+HBMAM
    I '$$LMAM D
    .D TR("MAM","",SMAM,"","-")
    .D TR("BEFORETAX","",TOTM-SMAM,"","-")
   ;
  W "</table>",! 
 Q
 ;
 ;
DISCCNCREP ;
  S REP="DISCCNCREP"
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("DISCANDDEL")_"</th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>%</th>"
   W "</tr>",!
   ;
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"DISCANDDEL"),WD01)
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"QUANT"),WD02)_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"TOTAL"),WD03-1)_" "_DLM_TX
   S TX="   %   "_DLM_TX
   D PCST(TX) 
   D KAV($L(TX))
   ;
   S TOTHNH=0
   S TOTHNH=$$RKV(SDISC,DT2)+$$RKV(SHNHP,DT2)+$$RKV(SOTH,DT2)+$$RKV(SBIT,DT2)+$$RKV(SZIC,DT2)
   D TR("DISCOUNTS",SDISCQ,$$RKV(SDISC,DT2),"%"_TOTHNH)
   D TR("DISCITTOT",SHNHPQ,$$RKV(SHNHP,DT2),"%"_TOTHNH)
   D TR("DISCOTH",SOTHQ,$$RKV(SOTH,DT2),"%"_TOTHNH)
   D TR("CANCELLATIONS",SBITQ,$$RKV(SBIT,DT2),"%"_TOTHNH)
   D TR("ZIC",SZICQ,$$RKV(SZIC,DT2),"%"_TOTHNH)
  W "</table>",!
 Q
 ;
 ;
STATREP ;
  S REP="STATREP"
  ; ------------------------- STATISTIKA DLV,TAKEAWAY, IN LOCAL
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("STATISTIKA")_"</th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>%</th>"
    W "<th>"_$$^%W1DICT("AVRGORD")_"</th>"
   W "</tr>",!
   ;
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"STATISTIKA"),WD11)
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"QUANT"),WD12)_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"TOTAL"),WD13-1)_" "_DLM_TX
   S TX="  %  "_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"AVRGORD"),WD15)_DLM_TX
   D PCST(TX)
   D KAV($L(TX))
   ;
   S TOT=$$RKV(SDLV,DT2)+$$RKV(STAW,DT2)+$$RKV(SREST,DT2)
   D TR1("DELIVERY",DLVQ-TAWQ,$$RKV(SDLV,DT2),TOT,DT2)
   ;
   I DLVQ D
   .D TR1("SUPPLIEDTIME",DLVQ,SMIN,"","")
   ;
   D
   .I $$PAPJ^W4PRM D  Q
   ..D TR1("TAKEAWAYORDERS",TAWQ-QWOLT-QHAT,$$RKV(STAW-SWOLT-SHAT,DT2),TOT)
   ..D TR1("TAWOUTORDERS",QWOLT+QHAT,$$RKV(SWOLT+SHAT,DT2),TOT)
   .
   .D TR1("TAKEAWAYORDERS",TAWQ,$$RKV(STAW,DT2),TOT)
   ;
   D TR1("SITINLOCAL",RESTQ,$$RKV(SREST,DT2),TOT)
   S TOTQ=DLVQ+TAWQ+RESTQ
   ;
   D KAV(38)
   D TR1("TOTAL",TOTQ,$J(TOT,DR,DR),"","B")
   W "</table>",!
 Q
 ;
 ;
MKRREP ;
 S REP="MKRREP"
  D KOT(DT1,DT2,"SITEREP2DAT","SITEREP2PERIOD")
  D KAV
  ;
  ; ------------------------ STATISTIKA PER SITES
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("SITE")_"</th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>%</th>"
    W "<th>"_$$^%W1DICT("AVRGORD")_"</th>"
   W "</tr>",!
    N TOTSITE,TOTQSITE S TOTSITE=0,TOTQSITE=0
    N N S N="" F  S N=$O(SMKR(N)) Q:N=""  D
    .S TOTSITE=TOTSITE+$G(SMKR(N))
    .S TOTQSITE=TOTQSITE+$G(MKRQN(N))
    ;
    S TOTSITE=TOTSITE+SREST
    S TOTQSITE=TOTQSITE+RESTQ
    ;
    N N S N="" F  S N=$O(SMKR(N)) Q:N=""  D
    .S NM0=$G(@$$^W4GL("W3MKR")@(N))
    .S NM=$$H2U^%L1FRM(NM0)
    .I NM="" S NM="*** "_N,NM0=NM
    .D TR1("!"_NM_"<>"_NM0,$G(MKRQN(N)),$$RKV($G(SMKR(N)),DT2),$$RKV(TOTSITE,DT2))
    ; 
    D TR1("SITINLOCAL",RESTQ,$$RKV(SREST,DT2),$$RKV(TOTSITE,DT2))
   ;
   D KAV
   D TR1("TOTAL<>",TOTQSITE,$$RKV(TOTSITE,DT2),$$RKV(TOTSITE,DT2),"B")
  W "</table>",!
 Q
 ;
 ;
CAJMKRREP ;
  S REP="CAJMKRREP"
  D KOT(DT1,DT2,"CAJREP2DAT","CAJREP2PERIOD")
  D KAV
  ; 
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("SITE")_"</th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>%</th>"
    W "<th>"_$$^%W1DICT("AVRGORD")_"</th>"
   W "</tr>",!
    N TOTCAJ,TOTQCAJ S TOTCAJ=SPAIDCA,TOTQCAJ=QPAIDCA
    N N S N="" F  S N=$O(SMKR(N)) Q:N=""  D
    .S TOTCAJ=TOTCAJ+$G(SMKR(N,"CAJ"))
    .S TOTQCAJ=TOTQCAJ+$G(MKRQN(N,"CAJ"))
    ;
    D TR1("SKIOSKCA",QPAIDCA,$$RKV(SPAIDCA,DT2),$$RKV(TOTCAJ,DT2))
    ;
    N N S N="" F  S N=$O(SMKR(N)) Q:N=""  D
    .S NM0=$G(@$$^W4GL("W3MKR")@(N))
    .S NM=$$H2U^%L1FRM(NM0)
    .I NM="" S NM="*** "_N,NM0=NM
    .D TR1("!"_NM_"<>"_NM0,$G(MKRQN(N,"CAJ")),$$RKV($G(SMKR(N,"CAJ")),DT2),$$RKV(TOTCAJ,DT2))
   W "</tr>",!
   ;
   D KAV
   D TR1("TOTAL<>",TOTQCAJ,$$RKV(TOTCAJ,DT2),$$RKV(TOTCAJ,DT2),"B")
   ;
  W "</table>",!
  Q
 ;
 ;
ASRREP ;
  S REP="ASRREP"
  ; ------------------------ DOCH LAKOHOT HAKAFA
  D KOT(DT1,DT2,"CUSTREP2DAT","CUSTREP2PERIOD")
  D KAV
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("CUSTOMER")_"</th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>%</th>"
    W "<th>"_$$^%W1DICT("AVRGORD")_"</th>"
   W "</tr>",!
    ;
    N TOTLK,TOTQLK S TOTLK=0,TOTQLK=0
    N N,N1 S N="" F  S N=$O(SASR(N)) Q:N=""  D
    .S N1="" F  S N1=$O(SASR(N,N1)) Q:N1=""  D 
    ..S TOTLK=TOTLK+$G(SASR(N,N1))
    ..S TOTQLK=TOTQLK+$G(SASR(N,N1,"Q"))
    ;
    N N S N="" F  S N=$O(SASR(N)) Q:N=""  D
    .S N1="" F  S N1=$O(SASR(N,N1)) Q:N1=""  D 
    ..S NM0=$$LKH^W4L(N1)
    ..S NM=$$H2U^%L1FRM(NM0)
    ..I NM="" S NM="*** "_N,NM0=NM
    ..D TR1("!"_NM_"<>"_NM0,$G(SASR(N,N1,"Q")),$$RKV($G(SASR(N,N1)),DT2),$$RKV(TOTLK,DT2))
   W "</tr>",!
   D KAV
   D TR1("TOTAL<>",TOTQLK,$$RKV(TOTLK,DT2),$$RKV(TOTLK,DT2),"B")
  W "</table>",!
 Q  ;
 ;
OPEX ;
 N FMT,FL
 S FMT="csv"
 S FL=$$FL^%W1FREPX("W4GAPZ",FMT)
 S FLCSV=FL_"."_FMT
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 D OPEN^%W1FREPX(FLCSV)
 Q
 ;
STEX(REP,NM,QN,VL)
 N TX,REP1,ST,DLM 
 S DLM=","
 S REP1=$$TV^%W1DICT($$^%W1LNG,REP)
 ; 
 I NM'["<>" D
 .S TX=$$TV^%W1DICT($$^%W1LNG,NM)
 ;
 I NM["<>" D
 .S TX=$P(NM,"<>",2)
 .S NM=$P(NM,"<>")
 ; 
 S REP1=$$HBR(REP1)
 S TX=$$HBR(TX)
 ;
 ;;S ST=REP1_DLM_TX_DLM_QN_DLM_$J(VL,2,2)
 S ST=$J(VL,2,2)_DLM_QN_DLM_TX_DLM_REP1
 U FLCSV W ST,! U $P
 Q 
 ;
 ; 
HBR(TX) ; 
 Q $$^%W1D2U(TX)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GAPZ0
W4GAPZ(DT1,DT2) ; [ 24.07.22 14:06 ] [ 18.07.22 15:32 ] [ 17.07.22 15:14 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 I $G(%ARG("SHOW"))=0 Q
 ;
 N GLS S GLS=$$^W4MAIN("TMPS111") K @GLS
 S DLM="|",DR=1
 ;
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 ;
 S WD01=14,WD02=5,WD03=9,WD04=9
 S WD11=12,WD12=5,WD13=7,WD14=5,WD15=6
 ;
 D SCOMP^W4TOT(DT1,DT2) ; --> VKIOSK,WOLT,TB,GUDIS,CIB,HNS,HNP,OTH,BIT,QNMSL,QNMSD
 ;
 S MZ=$$SUMZ(DT1,DT2,"F")
 S QMZ=$$SUMZ(DT1,DT2,"F#")
 S CHK=$$SUMZ(DT1,DT2,"GO")
 S QCHK=$$SUMZ(DT1,DT2,"GO#")
 S MVB=$$SUMZ(DT1,DT2,"GB")
 S QMVB=$$SUMZ(DT1,DT2,"GB#")
 S ISR=$$SUMZ(DT1,DT2,"V1")
 S QISR=$$SUMZ(DT1,DT2,"V1#")
 S VIZ=$$SUMZ(DT1,DT2,"V2")
 S QVIZ=$$SUMZ(DT1,DT2,"V2#")
 S DNR=$$SUMZ(DT1,DT2,"V3")
 S QDNR=$$SUMZ(DT1,DT2,"V3#")
 S AEX=$$SUMZ(DT1,DT2,"V4")
 S QAEX=$$SUMZ(DT1,DT2,"V4#")
 S LEUM=$$SUMZ(DT1,DT2,"V6")
 S QLEUM=$$SUMZ(DT1,DT2,"V6#")
 S ASR=$$SUMZ(DT1,DT2,"H")
 S QASR=$$SUMZ(DT1,DT2,"H#")
 ; 
 S HBMAS=$$HB(DT1,DT2)
 S QHBMAS=$P(HBMAS,"\",2),HBMAS=+HBMAS 
 ; 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<p style=""font-weight:bold"" >" 
   D KOT(DT1,DT2) 
  W "</p>",!
  ;
  D TBLMAM
  ;
  I $$LMAM D
  .S TX=$$TV^%W1DICT($$^%W1LNG,"DATABEFORETAX")
  .D ^W4PCST(TX,1)
  W "<p></p>",! 
  ;
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("KINDOFPAYMENT")_"</th>"
    W "<th>"_$$^%W1DICT("ISKAOT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>"_$$^%W1DICT("OFPDYON")_"</th>"
   W "</tr>",!
   ;
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"KINDOFPAYMENT"),WD01)
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"ISKAOT"),WD02)_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"TOTAL"),WD03-1)_" "_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"OFPDYON"),WD04-1)_" "_DLM_TX
   D KAV($L(TX))
   D ^W4PCST(TX,1)
   D KAV($L(TX))
   ;
   D TR("CASH",QMZ,MZ,MZ)
   D TR("CHECK",QCHK,CHK,CHK)
   D TR("MVBANK",QMVB,MVB,MVB)
   D TR("ISR",QISR,ISR,ISR)
   D TR("VISA",QVIZ,VIZ,VIZ)
   D TR("DINERS",QDNR,DNR,DNR)
   D TR("AEX",QAEX,AEX,AEX)
   D TR("LEUMI",QLEUM,LEUM,LEUM)
   ;
   D TR("SKIOSKCA",QPAIDCA,$$RKV(SPAIDCA,DT2),0)
   ;
   N N S N="" F  S N=$O(SMKR(N)) Q:N=""  D
   .S NM0=$G(@$$^W4GL("W3MKR")@(N))
   .S NM=$$H2U^%L1FRM(NM0)
   .I NM="" S NM="*** "_N,NM0=NM
   .D TR("!"_NM_"<>"_NM0,$G(MKRQN(N)),$$RKV(SMKR(N),DT2),0)
   ;
   D TR("CAJ",SCAOUTQ,$$RKV(SCAOUT,DT2),0)
   ;
   S SMAM=$$SUMMAM(DT1,DT2)
   S PDYON=MZ+CHK+MVB+ISR+VIZ+DNR+AEX+LEUM
   S QPDYON=QMZ+QCHK+QMVB+QISR+QVIZ+QDNR+QAEX+QLEUM
   D KAV(38)
   D TR("TOTPD",QPDYON,PDYON,PDYON,"B")
   ;
   I '$$LMAM D
   .D TR("MAM","",SMAM,"","B")
   .D TR("BEFORETAX","",PDYON-SMAM,"","B")
   ;
   S TOT=PDYON+ASR
   D TR("ASRORD",QASR,ASR,0)
   D TR("TOTSALES",QPDYON+QASR,TOT,"","B")
   D TR("TOTALINVOICESTX",QHBMAS,HBMAS,0,"")
   S TOTM=PDYON+HBMAS
   D TR("TOTM",QPDYON+QHBMAS,TOTM,0,"B")
  W "</table>",! 
  ;
  W "<p></p>",!
  ;
  D ^W4PCST("",1)
  D ^W4PCST("",1)
  D KAV
  ;
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("DISCANDDEL")_"</th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>%</th>"
   W "</tr>",!
   ;
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"DISCANDDEL"),WD01)
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"QUANT"),WD02)_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"TOTAL"),WD03-1)_" "_DLM_TX
   S TX="   %   "_DLM_TX
   D ^W4PCST(TX,1) 
   D KAV($L(TX))
   ;
   S TOTHNH=0
   S TOTHNH=$$RKV(SDISC,DT2)+$$RKV(SHNHP,DT2)+$$RKV(SOTH,DT2)+$$RKV(SBIT,DT2)+$$RKV(SZIC,DT2)
   D TR("DISCOUNTS",SDISCQ,$$RKV(SDISC,DT2),"%"_TOTHNH)
   D TR("DISCITTOT",SHNHPQ,$$RKV(SHNHP,DT2),"%"_TOTHNH)
   D TR("DISCOTH",SOTHQ,$$RKV(SOTH,DT2),"%"_TOTHNH)
   D TR("CANCELLATIONS",SBITQ,$$RKV(SBIT,DT2),"%"_TOTHNH)
   D TR("ZIC",SZICQ,$$RKV(SZIC,DT2),"%"_TOTHNH)
  W "</table>",!
  ;
  W "<p></p>",!  
  D ^W4PCST("",1)
  D ^W4PCST("",1)
  D KAV
  ;
  D OPNTBL($$WD)
   W "<tr>" 
    W "<th>"_$$^%W1DICT("STATISTIKA")_"</th>"
    W "<th>"_$$^%W1DICT("QUANT")_"</th>"
    W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
    W "<th>%</th>"
    W "<th>"_$$^%W1DICT("AVRGORD")_"</th>"
   W "</tr>",!
   ;
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"STATISTIKA"),WD11)
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"QUANT"),WD12)_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"TOTAL"),WD13-1)_" "_DLM_TX
   S TX="  %  "_DLM_TX
   S TX=$$HBR^%L1FRM($$TV^%W1DICT($$^%W1LNG,"AVRGORD"),WD15)_DLM_TX
   D ^W4PCST(TX,1)
   D KAV($L(TX))
   ;
   S TOT=$$RKV(SDLV,DT2)+$$RKV(STAW,DT2)+$$RKV(SREST,DT2)
   D TR1("DELIVERY",DLVQ,$$RKV(SDLV,DT2),TOT,DT2)
   ;
   I DLVQ D
   .D TR1("SUPPLIEDTIME",DLVQ,SMIN,"","")
   ;
   D TR1("TAKEAWAYORDERS",TAWQ,$$RKV(STAW,DT2),TOT)
   D TR1("SITINLOCAL",RESTQ,$$RKV(SREST,DT2),TOT)
   S TOTQ=DLVQ+TAWQ+RESTQ
   D KAV(38)
   D TR1("TOTAL",TOTQ,$J(TOT,DR,DR),"","B")
   ;
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
KOT(DT1,DT2)
 N DAT1,DAT2,TX
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 I DT1=DT2 D
 .W $$^%W1DICT("MANYREP2DAT",DAT1)
 .S TX=$$TV^%W1DICT($$^%W1LNG,"MANYREP2DAT",DAT1)
 I DT1'=DT2 D
 .W $$^%W1DICT("MANYREP2PERIOD",DAT1_"<>"_DAT2)
 .S TX=$$TV^%W1DICT($$^%W1LNG,"MANYREP2PERIOD",DAT1_"<>"_DAT2)
 ;
 D ^W4PCST(TX,1)
 ;;D KAV($L(TX))
 Q
 ;
SUMZ(DT1,DT2,IND) ;
 N GL
 N SUM S SUM=0
 N DT,DAT F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .S GL=$$^W4GL("Z1")
 .
 .I '$D(@GL@(DAT)) D  Q
 ..D ^W4SUMZRO
 ..D ^W4SUM
 ..S GL=$$^W4GL("TOT")
 ..N VL S VL=$G(@GL@(DAT,IND,1))
 ..D SUMZVL(VL,DT,IND) 
 .
 .N N S N="" F  S N=$O(@GL@(DAT,N)) Q:N=""  D
 ..N VL S VL=$G(^(N,IND,1))
 ..D SUMZVL(VL,DT,IND) 
 ;
 Q SUM
 ;
 ; 
SUMZVL(VL,DT,IND) ;
 I $$LMAM,IND'["#" D  
 .N AHMAM S AHMAM=$$MAMD^W4L(DT)
 .S VL=$J(VL*100/(100+AHMAM),5,5)
 S SUM=SUM+VL
 Q
 ;
HB(DT1,DT2) ;
 N SUM,QN S SUM=0,QN=0
 N CODDOC 
 N GL S GL=$$^W4GL("KLIN") 
 ;
 F CODDOC="H","TZ" D
 .N N S N="" F  S N=$O(@GL@(CODDOC,N)) Q:N=""  D
 ..D ^W4HSBGET(N,CODDOC)
 ..N DAT S DAT=$G(W4HSB("TODATE"))
 ..N DT S DT=$$^%L1DC(DAT,3)
 ..I DT<DT1!(DT>DT2) Q
 ..S QN=QN+1
 ..N VL S VL=$S($$LMAM:$G(W4HSB("LMAM")),1:W4HSB("TOT")) 
 ..S SUM=SUM+VL
 ..S SUM(CODDOC)=$G(SUM(CODDOC))+VL
 Q SUM_"\"_QN
 ;
 ; 
TR(NM,QN,VL,VLP,PR) ;
 S QN=$G(QN)
 S VL=$G(VL)
 S VLP=$G(VLP)
 ;
 N TX S TX=""
 ;
 I NM'["<>" D
 .S TX=$$TV^%W1DICT($$^%W1LNG,NM)
 ;
 I NM["<>" D
 .S TX=$P(NM,"<>",2)
 .S NM=$P(NM,"<>")
 ; 
 S TX=$$HBR^%L1FRM(TX,WD01)
 ;
 W "<tr "
  I $G(PR)["B" W "style=""background-color:yellow; font-weight:bold"" "
 W ">" 
  W "<td "
  W ">" 
   D
   .I $E(NM)="!" W $E(NM,2,255) Q
   .W $$^%W1DICT(NM)
  W "</td>",!
  ;
  D TDLTR
   W $$STYLE(QN)
  W ">" 
   W QN
   S TX=$J(QN,WD02)_" "_TX
  W "</td>",!
  ;
  D TDLTR
   W $$STYLE(VL)
  W ">" 
   W $S(VL="":"&nbsp;",1:$J(VL,DR,DR))
   N VL1 S VL1=$S(VL="":"",1:$J(VL,DR,DR))
   S TX=$J(VL1,WD03)_" "_TX 
  W "</td>",!
  ;
  I $E($G(VLP))="%" D
  .N TOT S TOT=$E(VLP,2,20)  
  .I 'TOT S VLP="" Q
  .S VLP=$J(VL*100/TOT,DR,DR)
  ;
  D TDLTR
   W $$STYLE(VLP)
  W ">" 
   W $S(VLP="":"&nbsp;",1:$J(VLP,DR,DR))
   S TX=$J(VLP,WD04)_" "_TX
  W "</td>",!
 W "</tr>",!
 ;
 D ^W4PCST(TX,1)
 Q
 ;
 ;
TR1(NM,QN,VL,TOT,PR) ;
 S QN=$G(QN)
 S VL=$G(VL)
 ;
 N TX S TX=""
 ;
 I NM'["<>" D
 .S TX=$$TV^%W1DICT($$^%W1LNG,NM)
 ;
 I NM["<>" D
 .S TX=$P(NM,"<>",2)
 .S NM=$P(NM,"<>")
 ;
 S TX=$$HBR^%L1FRM(TX,WD11)
 ;
 W "<tr "
  I $G(PR)="B" W "style=""background-color:yellow; font-weight:bold"" "
  I NM="SUPPLIEDTIME" W "style=""color:brown"" "
 W ">" 
  W "<td "
  W ">" 
   D
   .I $E(NM)="!" W $E(NM,2,255) Q
   .W $$^%W1DICT(NM) 
  W "</td>",!
  ;
  D TDLTR
   W $$STYLE(QN)
  W ">" 
   N QN1 D
   .I NM="SUPPLIEDTIME" S QN1=" " Q
   .S QN1=QN W QN1
   S TX=$J(QN1,WD12)_" "_TX
  W "</td>",!
  ;
  D TDLTR
   W $$STYLE(VL)
  W ">" 
   N VL1
   D
   .I NM="SUPPLIEDTIME" S VL1=" " W VL1 Q
   .S VL1=$J(VL,DR,DR) W VL1
   S TX=$J(VL1,WD13,2)_" "_TX
  W "</td>",!
  ;
  D TDLTR W ">"
   D
   .N RKV
   .D
   ..I 'TOT S RKV=" " Q
   ..S RKV=$J(VL*100/TOT,DR,DR)
   .W RKV 
   .S TX=$J(RKV,WD14)_" "_TX
  W "</td>",!
  ;
  D TDLTR W ">"
   D
   .N RKV
   .I 'QN S RKV=" "
   .E  S RKV=$J(VL/QN,DR,DR)
   .W RKV
   .S TX=$J(RKV,WD15)_" "_TX
  W "</td>" 
  ;
  D ^W4PCST(TX,1)
 Q 
 ;
 ;
TDLTR ;
 W "<td dir=""LTR"" align=""right"" "
 Q
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GETP^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 D PUT^%W1PRM("CSRPRINT",1)
 Q
 ;
TBLMAM ; 
  N OK S OK=0
  ;;D PUT^%W1PRM("PCLMAM",+$G(%ARG("LMAM")))
  W "<table dir="""_$$^%W1DIR_""" border=""0"" style=""width:25%;text-align:center"" >",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("AFTERTAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S('$$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('0')"" >"
   W "</td>"
   W "<td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S($$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('1')"" >"
   W "</td>"
  W "</tr>",!
  W "</table>",!
 Q
 ;
 ;
LMAM() ;
 Q $G(%ARG("LMAM")) 
 ;
 ;
SUMMAM(DT1,DT2) ;
 N GL S GL=$$^W4GL("Z1")
 N SUM S SUM=0
 N IND
 ;
 N DT,DAT F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .N N S N="" F  S N=$O(@GL@(DAT,N)) Q:N=""  D
 ..N IND S IND="" F  S IND=$O(@GL@(DAT,N,IND)) Q:IND=""  D
 ...I ",F,G,V,"'[(","_IND_",") Q
 ...N VL S VL=$G(^(IND,1))
 ...N AHMAM S AHMAM=$$MAMD^W4L(DT)
 ...S VL=$J(VL*AHMAM/(100+AHMAM),5,5)
 ...S SUM=SUM+VL
 Q SUM
 ;
RKV(VL,DT) ;
 I '$$LMAM Q $J(VL,DR,DR)
 N AHMAM S AHMAM=$$MAMD^W4L(DT)
 S VL=$J(VL*100/(100+AHMAM),5,5)
 Q $J(VL,DR,DR)
 ;
STYLE(VL) ;
 I VL<0 Q "style=""color:red"" "
 I +VL=0 Q "style=""color:grey"" "
 Q ""
 ;
OPNTBL(WD) ;
 W "<table width="""_WD_"%"" cellspacing=""0"" cellpadding=""4"" border=""1"" >",!
 Q
 ;
WD() ;
 Q 60
 ;
KAV(LN) ;
 N TX S TX=$TR($J("",39)," ","-")
 D ^W4PCST(TX,1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GCOUP
W4GCOUP ; [ 08.10.21 15:00 ] [ 29.09.21 09:20 ] [ 22.09.21 17:26 ] 
START ;
 I +$$GCOUPIT^W4PRM=0 D  Q
 .W "<div align=""center"" style=""font-weight:bold"">"
 . W "GIFT COUPON PARAMETERS NOT DEFINED !"
 .W " </div>",!
 ;
 S:$G(%ARG("W4OPT"))="POP" %ARG("NOBACK")=1 D ^W4SCASK
 Q
 ;
W(STAM) ;
 N HZM,NAME,LL
 S NAMEP=$$GET^W4TMPANS($$VP,"PAYERNAME")
 I $L(NAMEP)<2 Q "CUSTOMNAMEWRONG"
 S NAMER=$$GET^W4TMPANS($$VP,"RECIPIENTNAME")
 I $L(NAMER)<2 Q "CUSTOMNAMEWRONG"
 Q 1
 ;
INIT ;
 D CLEAR^W4SCASK
 N VP S VP=$$VP
 D KILL^%W1PRM("W4OPT")
 D PUT^%W1PRM("W4OPT",$G(%ARG("W4OPT")))
 ;
 I $$GETP^%W1PRM("TLDFLT"),$$TLDFLT^W4PRM D
 .K @$$^W4MAIN("TMPSCANS")@(VP)
 .S @$$^W4MAIN("TMPSCANS")@(VP,"SUM")=$$TLDFLT^W4PRM
 .S @$$^W4MAIN("TMPSCANS")@(VP,"RECIPIENTNAME")="PAYER"
 ;
 D PUT^%W1PRM("VP",VP)
 D CREATE^W4ASK(VP,"PAY")
 D PUT^%W3DEB("W4GCOUP","VP=VP")
 N HZM S HZM=$$GETP^%W1PRM("HZM") I HZM<1 Q  ;;Q:'HZM
 D PUT^W4TMPANS(VP,"SUM",$$GCOUPSUM^W4HZMST(HZM))
 I $$GCOUPC^W4PRM D PUT^W4TMPANS(VP,"COUPNUMBER",$$GCOUPTLM^W4HZMST(HZM))
 D PUT^W4TMPANS(VP,"PAYERNAME",$$GCOUPPAYER^W4HZMST(HZM))
 D PUT^W4TMPANS(VP,"PAYERTEL",$$GCOUPTEL^W4HZMST(HZM))
 D PUT^W4TMPANS(VP,"RECIPIENTNAME",$$GCOUPRCP^W4HZMST(HZM))
 Q
 ;
SUM ;
 I VL<1 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOZERO"
 Q
 ;
COUPNUMBER ;
 I VL<1 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FILLCOUPNUMBER"
 ;
 I $D(@$$^W4GL("W4TLMTN")@(VL)) D
 .N HZM S HZM=$$HZM^W4TLMTN(VL) Q:HZM=$$GETP^%W1PRM("HZM")
 .S %SC("ER")=1
 .S %SC("ER","MSG")="COUPSOLD;"_HZM
 Q
 ;
TEL ;
 I $$GETP^%W1PRM("TLDFLT"),$L(VL)<4!(VL'?1N.N) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="MINLENN;4"
 I $$GETP^%W1PRM("TLDFLT") Q
 ; 
 I $L(VL)<7 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="MINLENN;7"
 ;
 I '$$GCOUPASR^W4PRM D
 .N LKHNAME S LKHNAME=$$GET^W4TMPANS($$VP,"PAYERNAME")
 .I LKHNAME?.P S LKHNAME=$$LKH^W4L(VL)
 .D PUT^W4TMPANS($$VP,"PAYERNAME",LKHNAME)
 Q
 ;
PAYER ;
 I $L(VL)<2 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="MINLENN;2"
 Q
 ;
VP(STAM) ;
 I $$GETP^%W1PRM("TLDFLT"),$$TLDFLT^W4PRM Q "GCOUPT"
 I $$GCOUPC^W4PRM,$$GCOUPIT^W4PRM Q "GCOUPC"
 I $$GCOUPASR^W4PRM&'$$GCOUPIT^W4PRM Q "GCOUPA"
 Q "GCOUP"
 ;
CUST ;
 N LKH
 K %SC("ER")
 S LKH=VL
 I $TR(LKH,"-","")'?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FINDCUST"
 ;
 I VL'=$$GET^W4TMPANS($$VP,"CUSTOMNUMBER") D
 .D PUT^W4TMPANS($$VP,"PAYERTEL","")
 .D PUT^W4TMPANS($$VP,"PAYERNAME","")
 ;
 N LKHNAME S LKHNAME=$$GET^W4TMPANS($$VP,"PAYERNAME")
 I LKHNAME?.P S LKHNAME=$$LKH^W4L(LKH)
 D PUT^W4TMPANS($$VP,"PAYERNAME",LKHNAME)
 ;
 N TEL S TEL=$$GET^W4TMPANS($$VP,"PAYERTEL")
 I TEL?.P S TEL=$$TEL^W4L(VL)
 D PUT^W4TMPANS($$VP,"PAYERTEL",TEL)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GETCLR
W4GETCLR(PRM,ALT) ;  [ 09.09.26 11:34 ] [ 08.09.26 18:09 ] [ 
 S ALT=$G(ALT)
 N COLOR S COLOR=$$COLOR
 I COLOR="FGADDNM",ALT="" S ALT="brown"
 I COLOR="FGADDNMCH",ALT="" S ALT="black"
 Q $G(@$$GLCOLOR@(COLOR,PRM),ALT)
 ;
COLOR()
 I $$GETP^%W1PRM("ELPOS") Q $S($G(@$$GLCOLOR)="":"DRW",1:$G(@$$GLCOLOR))
 Q $$COLOR^W3IMG
 ;
GLCOLOR() 
 I $$GETP^%W1PRM("ELPOS")!$$GETP^%W1PRM("PRKUP") Q $$^W4GL("W4CLRCSR")
 Q "^|$$^W3MAIN|W3COLOR"
 ;
OVERMENU() ;
 I $$NEWMENU^W4PRM,$$GETP^%W1PRM("W4BO") Q "blue"
 Q $$^W4GETCLR("FGFLDCUR","blue")
 ;
OUTMENU() ;
 I $$NEWMENU^W4PRM,$$GETP^%W1PRM("W4BO") Q "black"
 Q $$^W4GETCLR("FGFLD","black")
 
 
 
 
 

W4GETHZ
W4GETHZ(HZM,TMPORD,PRMDB,PRNOPC) ; [ 29.07.26 09:31 ] [ 17.06.26 10:54 ] [ 15.06.26 14:20 ] 
 ; -- $$^W4ORD --> ^TMPORD
 N (HZM,JB,%ARG,%REM,TMPORD,PRMDB,PRNOPC)
 ;
 N OK S OK=0
 I $G(HZM)["M" D  I OK Q OK
 .K @$$^W4TMPORD
 .M @$$^W4TMPORD=@$$^W4GL("W4TMP")@(+HZM)
 .S OK=1
 ;
 D TMPORD,W4HZM K @TMPORD
 ;
 I $G(%ARG("MSDFROM")) S MSDFROM=%ARG("MSDFROM")
 I $G(%ARG("MSDTO")) S MSDTO=%ARG("MSDTO")
 I $G(%ARG("MSD")) S MSD=%ARG("MSD")
 ;
 I '$$HZAFTPAY^W4PRM D CHKORD(HZM)
 ;
 I '$G(HZM) Q "00000"
 I '$D(@W4HZM) Q -1
 ;;S ^AA("W4GETHZ","W4HZM")=W4HZM
 I $D(@W4HZM)'=11,W4HZM'["," Q -2
 I $D(@W4HZM)<10 Q -2
 D ^W4IN
 ;
 I $$MM^W4PRM,$G(@$$^W4ORD@(HZM,"MSD")) D
 .D PUT^%W1PRM("CURREST",@$$^W4ORD@(HZM,"MSD"))
 ;
 D ^W4CALC(HZM) ; *** LEV 08/07/2016 ( COMMENT )
 ;
 S ER=0
 ;
 ;;D ^W4SETHN1(HZM) ; -- FOR OLD ^P1HZ ; *** LEV 08/07/2016
 ;
 D KOT
 ;
 N N2I
 S I=0,I0=0 S (CD,CDT,CDTO,NM)=""
 N TMPSET D TMPSET K @TMPSET
 ;
 D MN^W4MANA
 N QN1,CMT1,PRMVC2 S PRMVC2=0
 S N="" F  S:N N0=N S N=$O(@W4HZM@(N)) Q:N=""  I N?1N.E D
 .S C=$G(^(N)),CMT1="",PRHDST=0
 .I $D(@TMPSET)>9,I>0 D SETSET K @TMPSET
 .S CD=$P(C,"\",1),NM=$$SPA^%L1FRM($P(C,"\",3))
 .S CD=$$CLRCD(CD)
 .S MH=$P(C,"\",4),CM=$P(C,"\",5)
 .I CM["." S CM=$J(CM,3,3)
 .S CMNT=$P(C,"\",8)
 .;;S CMNT=$$^W4CLRCMN(CMNT) ; -- 11/12/22
 .S GLIST=$P(C,"\",9)
 .S PRN=$P(C,"\",11)
 .S NOTSFMVC=$P(C,"\",12)
 .
 .S MVC2=$P(C,"\",14)
 .S TSF=0,SUM=MH*CM
 .
 .I CD?1"-"1N.N.".".N1"%",I0 D  Q
 ..N CD0 S CD0=$P($G(@TMPORD@(I0)),"~",2)
 ..I '$$CLOSE^W4HZMST(HZM),$$^W4PRTBH(CD0) S CD="-0%"
 ..S $P(@TMPORD@(I0),"~",6)=+$E(CD,2,20)
 ..S $P(@TMPORD@(I0),"~",7)=CMNT
 ..S $P(@TMPORD@(I0),"~",8)=NOTSFMVC
 ..S $P(@TMPORD@(I0),"~",13)="HZ"
 .
 .S I=$$TMPI
 .S I0=I
 .S @TMPORD@(I)="0~"_CD_"~"_NM_"~"_MH_"~"_CM D NOMOD(C)
 .S $P(@TMPORD@(I),"~",14)=PRN
 .S $P(@TMPORD@(I),"~",19)=$P(C,"\",19) ; -- STAGE ( NO MORE 1.25 FROM QN0 )
 .I $L(GLIST) S @TMPORD@(I,"GLIST")=GLIST
 .
 .I $L(MVC2) D
 ..S $P(@TMPORD@(I),"~",17)=MVC2,PRMVC2=1
 ..I '$D(@W4HZM@("MVC2")) S @TMPORD@("MVC2")=1 Q
 ..M @TMPORD@("MVC2")=@W4HZM@("MVC2")
 .;
 .S CMNT=$$CLMANA(CMNT)
 .D SETMANA("CMNT",I)
 .S N2I(N)=I
 .
 .I $$LENCMNT(CMNT) D
 ..I CMNT["{",CMNT'["{{" D  Q:CMNT?.P  ; -- ???
 ...S CMNT=$P(CMNT,"{",2)
 ...S $P(@TMPORD@(I),"~",7)=CMNT
 ...S $P(@TMPORD@(I),"~",13)="HZ"
 ...S CMNT=$P(CMNT,"{")_" "_$P(CMNT,"}",2)
 ..
 ..S I=$$TMPI
 ..S @TMPORD@(I)="1~"_CD_"-C"_$$CDCMNT(CD,CMNT)_"~"_$$CLR(CMNT)
 ..D NOMOD(C)
 .
 .D ^W4N2V(HZM,N)
 .
 .N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 .
 .S N2V="" F  S N2V=$O(@VRMHZ@(N2V)) Q:N2V=""  I N2V?1N.E D
 ..S N1=$G(^(N2V)) Q:N1=""
 ..N NPSET,NP
 ..N T S T=$G(@W4HZM@(N,N1))
 ..N HDST S HDST=$P(T,"\",18)
 ..;
 ..I HDST>999 S PRHDST=1 D
 ...N STT S STT="1~A"_$P(HDST,"^")_"~"_$P(HDST,"^",2)
 ...D SETNOMODT("STT",T)
 ...N IND S IND=$O(@TMPORD@(99999),-1)+1
 ...S @TMPORD@(IND)=STT
 ...S STT="" ;
 ..
 ..N CDT,NMT,CMNT
 ..S NMT=$$SPA^%L1FRM($P(T,"\"))
 ..S CDT=N1 I $E(CDT,1,2)'="0-" S CDT=$P(CDT,"-")
 ..S CDT=$$CLRCD(CDT)
 ..S MHT=$P(T,"\",2)
 ..N SUGPZ S SUGPZ=$$SUG^W4PIZZA(NM)
 ..S CMT=$P(T,"\",3)
 ..S CMNTT=$P(T,"\",4)
 ..
 ..I SUGPZ D
 ...I CMT?1N.N1"|".E,CMT["+" Q
 ...I CMT?1N.N1":".E,CMT["+" Q
 ...I $$^W4QNR(CMT)<0 Q
 ...N COL,J,SMB S COL="" F J=3:1:6 S SMB=$P(T,"\",J) S:SMB="" SMB="-" S:SMB="+"!(SMB="-") COL=COL_SMB
 ...S CMT=$L(COL,"+")-1_$S(SUGPZ=4:":",1:"|")_COL
 ...S CMNTT=$P(T,"\",8)
 ..;
 ..S CMT=$$STQ(HZM,CD,CM,CMT,1)
 ..S CMT1=$P(CMT,":"),CMT1=$P(CMT,"|")
 ..;
 ..N STT S STT="1~"_CDT_"~"_NMT_"~"_MHT_"~"_$P(CMT,"|",1,2)
 ..D SETNOMODT("STT",T)
 ..;
 ..I $L(CD) S SET=$$SET(CD,CDT) I SET D  G LV2
 ...D SBORKA(CD,SET,STT_"~~"_CMNTT)
 ..;
 ..I $D(@W4HZM@(N,N1))>9 G LV2 ; --- NEW !!! 13/02/13
 ..
 ..S I=$$TMPI
 ..S @TMPORD@(I)=STT D NOMOD(T)
 ..S N2I(N_"-"_CDT)=I
 ..
 ..I $L(CMNTT) D
 ...S CMNTT=$$CLMANA(CMNTT)
 ...D SETMANA("CMNTT",I)
 ..
 ..I $$LENCMNT(CMNTT) D
 ...N STT
 ...N LVO S LVO=$P($G(@TMPORD@(I-1)),"~") S:'LVO LVO=1
 ...S STT=LVO_"~"_CDT_"-C"_$$CDCMNT(CDT,CMNTT)_"~"_$$CLR(CMNTT)
 ...S $P(STT,"~",12)=$P(T,"\",10)
 ...S $P(STT,"~",13)="HZ"
 ...S I=$$TMPI
 ...S @TMPORD@(I)=STT
 ...S N2I(N_"-C"_CDT)=I
 ...D NOMOD(T)
 ..
LV2 ..N GLIST,ITM S ITM="",QN1=""
 ..S N2="" F  S N2=$O(@W4HZM@(N,N1,N2)) Q:N2=""  I N2 D
 ...N T2,LV S T2=$G(^(N2))
 ...N CDT2,NMT2,CMNT2,CDT21,NMT21
 ...S CDT21=$P(T2,"\")
 ...I $E(CDT21,1,2)'="0-" S CDT21=$P(CDT21,"-")
 ...S CDT21=$$CLRCD(CDT21)
 ...S NMT21=$P(T2,"\",2)
 ...S CDT2=$P($P(T2,"\",4),"-")
 ...I $E(CDT2,1,2)'="0-" S CDT2=$P(CDT2,"-")
 ...S CDT2=$$CLRCD(CDT2)
 ...S NMT2=$$SPA^%L1FRM($P(T2,"\",5))
 ...S MHT2=+$P(T2,"\",7),QN2=$P(T2,"\",3)
 ...S CMNT2=$P(T2,"\",6),MANA=""
 ...;
 ...I $L(CDT21) D  Q
 ....S LV=1
 ....S QN1=$$STQ(HZM,CD,CM,QN2,LV)
 ....S CMT1=$P(QN1,":"),CMT1=$P(QN1,"|")
 ....N STT2 S STT2=LV_"~"_CDT21_"~"_NMT21_"~"_MHT2_"~"_$P(QN1,"|",1,2)
 ....
 ....I $D(@W4HZM@(N,N1,N2,"HNT")) D
 .....N HNT S HNT=$G(^("HNT"))
 .....S $P(STT2,"~",4)=$P(HNT,";",2)
 .....S $P(STT2,"~",6)=+HNT
 ....
 ....S ITM=$$^W4ITM(STT2)
 ....I $L($G(CMNT2)) S $P(ITM,"^",7)=CMNT2
 ....D SETNOMODT("STT2",T2)
 ....S GLIST=$$SPA^%L1FRM($P(T2,"\",9))
 ....D SETORD2(LV,STT2,N2)
 ....;;S CMT=QN2
 ....D SETCMNT2(CDT21,CMNT2)
 ...
 ...I CDT2 D  Q
 ....S LV=2
 ....;
 ....I $G(CMT) S QN2=$$STQ(HZM,CD,CMT1,QN2,LV)
 ....
 ....N STT2 S STT2=LV_"~"_CDT2_"~"_NMT2_"~"_MHT2_"~"_$P(QN2,"|",1,2)
 ....I $L($G(ITM)) D SET^W4ITM("STT2",ITM)
 ....D SETNOMODT("STT2",T2)
 ....D SETORD2(LV,STT2,N2)
 ....D SETCMNT2(CDT2,CMNT2)
 .
 .K @$$^W4MAIN("VRMHZ")
 ;
 ;
 I $D(@TMPSET)>9,I>0 D SETSET K @TMPSET ; -- ?
 ;
 N I,I1,A,CDT ;
 ;
 S SRV="" F  S SRV=$O(@W4HZM@(SRV)) Q:SRV=""  I SRV?1U.E D  ; -- SERVIS INFORMATION
 .I $D(@W4HZM@(SRV))#2 S @TMPORD@(SRV)=@W4HZM@(SRV)
 .N N1 S N1="" F  S N1=$O(@W4HZM@(SRV,N1)) Q:N1=""  D
 ..I $D(N2I(N1)),SRV'="PART",SRV'="TB",SRV'="CB" D  Q
 ...N IND S IND=N2I(N1)
 ...M @TMPORD@(SRV,IND)=@W4HZM@(SRV,N1)
 ...I IND,IND?1N.N D
 ....N A S A=$G(@TMPORD@(IND))
 ...K @TMPORD@(SRV,IND,"O2T")
 ..M @TMPORD@(SRV,N1)=@W4HZM@(SRV,N1) Q
 ;
 M @TMPORD@("FIRE")=@W4HZM@("FIRE")
 K @TMPORD@("DEL")
 K @TMPORD@("DELT")
 K @TMPORD@("KINDORD")
 K @TMPORD@("MKRDLV")
 K @TMPORD@("MKRDLV1")
 ;
 I '$G(PRMVC2) K @TMPORD@("MVC2")
 ;
 D ^W4TMPHD
 K @TMPORD@("SDSAK")
 ;
 N OK S OK=1
 ;
 I $$^W4HZMH(HZM) D; -- 29/07/26
 .N N S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 ..S $P(^(N),"~",12)=""
 ;
 I $G(PRNOPC) D
 .N N S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:'OK
 ..N A,CD,MDP,MDP1,J
 ..S A=$G(^(N))
 ..S CD=$P(A,"~",2) 
 ..S MDP=$$PRINT^W4P(CD)
 ..F J=1:1:$L(MDP,";") S MDP1=$P(MDP,";",J) D
 ...I MDP1="G" S MDP1=$$PRINTIG^W3PRMDP(CD)
 ...I +MDP1 S OK=0 Q
 Q OK  ;
 ;
 ;
CLRCD(CD) ;
 I $G(CD)[">" S CD=$P(CD,">",2)
 Q CD
 ;
 ;
CMT2(CM,CMR,CMTR,CMT2)
 D
 .I $G(CMR),CMTR\CMR*CMR=+CMTR D  Q
 ..S CMT2=CMTR\CMR I CMT2<0,CM<0 S CMT2=-CMT2
 Q $G(CMT2)
 ;
STQ(HZM,CD,CM,CMT,LV) ;
 N CMT2,STQ S CMT2=CMT,STQ=""
 I CMT["*" S CMT2=$P(CMT,"*",$L(CMT,"*"))
 N DOP S DOP=$$DOP^W4PIZZA(CMT2)
 I CMT2<0,CM<0 S CMT2=-CMT2
 ;
 N CMR S CMR=$$^W4QNR(CM)
 N CMTR S CMTR=$$^W4QNR(CMT)
 N QN S QN=CM
 ;
 I $G(LV)=1,'$$^W4EZAT(CD),$$MULTY(HZM) D  Q STQ  ; -- TOSAFOT RAGILOT
 .I CMT["*" S STQ=CM_"*"_CMT2_DOP Q
 .S CMT2=$$CMT2(CM,CMR,CMTR,CMT2)
 .S STQ=CM_"*"_CMT2_DOP
 ;
 I '$G(CM)!($G(CM)=1),'$$MULTY(HZM) Q CMT_DOP
 ;
 I $G(LV)=1,$$MULTY(HZM),CMT'["*" D
 .S CMT2=$$CMT2(CM,CMR,CMTR,CMT2)
 .S CMT=CM_"*"_CMT2
 ;
 I $G(LV)=2 D
 .S CMT2=$$CMT2(CM,CMR,CMTR,CMT2)
 .I CMT2 S CMT=CM_"*"_CMT2
 ;
 Q CMT_DOP
 ;
 ;
TMPI(STAM) ;
 D TMPORD
 Q ($O(@TMPORD@(99999),-1)+1)
 ;
 ;
SETCMNT2(CDT2,CMNT2) ;
 N MANA
 ;
 I $L(CMNT2) D
 .S CMNT2=$$CLMANA(CMNT2)
 ;
 S MANA=$P(CMNT2,"\",2)
 S CMNT2=$P(CMNT2,"\")
 ;
 I MANA,'$G(NPSET) D
 .N I S I=$O(@TMPORD@(99999),-1)
 .S MANA=$$MANA($G(CD),MANA)
 .S @TMPORD@(I,"MANA")=MANA
 ;
 I $$LENCMNT(CMNT2),$G(LV) D
 .S STT2=LV_"~"_CDT2_"-C"_+$$CDCMNT(CDT2,CMNT2)_"~"_$$CLR(CMNT2)
 .D SETNOMODT("STT2",T2)
 .S CMNT2="" D SETORD2(LV,STT2,N2)
 Q
 ;
 ;
KOT ;
 D W4HZM
 N A,B,C,I S A=$G(@W4HZM) ; ------- !!!
 S $P(A,"\",60)=$P(A,"\",30)
 S $P(A,"\",77)=$P(A,"\",33)
 ;
 I $P(A,"\") D
 .N LK S LK=$$SPA^%L1FRM($P(A,"\"))
 .S $P(A,"\")=$TR(LK,"-","")
 ;
 S TIME=$P(A,"\",6)
 S $P(A,"\",42)=$P(TIME,":")
 S $P(A,"\",43)=$P(TIME,":",2)
 I $P(A,"\",21)=8 S $P(A,"\",21)=5
 S $P(A,"\",27)=$TR($P(A,"\",27),"-!","")
 S $P(A,"\",38)=$P(A,"\",22)
 I $P(A,"\",38),$P(A,"\",38)'["%" S $P(A,"\",38)=$P(A,"\",38)_"%"
 N HN S HN=$P(A,"\",8)
 ;
 I $$ONLINE^W4DLVCSR,HN,HN'["%" D
 .S $P(A,"\",38)=""
 ;
 I $P(A,"\",8)["%" D
 .N AH S AH=$P(A,"\",8)
 .I AH["=" S AH=$P(AH,"=",2)
 .S $P(A,"\",38)=AH
 .I $P(A,"\",8)'["=" S $P(A,"\",8)=""
 .I $P(A,"\",8)["=" S $P(A,"\",8)=+$P(A,"\",8)
 ;
 S COMP=""
 S B=$G(@W4HZM@("HR2"))
 I $L($P(A,"\",2)),$$COMP^W3PRM!$L($P(B,"\\",5)) D  ; *** 10/08/20
 .S COMP=$P(A,"\",2)
 .S $P(A,"\",47)=COMP
 ;
 S $P(A,"\",34)=$P(B,"\\",6) ; -- HEARA
 S $P(A,"\",31)=$P(B,"\\",4) ; IR
 I $L($P(B,"\\",5)) S $P(A,"\",2)=$P(B,"\\",5) ; *** 10/08/20
 S $P(A,"\",32)=$P(B,"\\",7) ; PELE
 ;
 S CIBCARD=$G(@W4HZM@("CIBCARD"))
 I $L(CIBCARD) D
 .S $P(A,"\",46)=$$^W3ENCR(HZM_";"_CIBCARD)
 ;
 S CREDCARD=$G(@W4HZM@("CREDCARD"))
 I $L(CREDCARD) D
 .S $P(A,"\",48)=$$^W3ENCR(HZM_";"_$P(CREDCARD,"~"))
 .S $P(A,"\",49)=$P(CREDCARD,"~",2)
 .S $P(A,"\",50)=$$^W3ENCR(HZM_";"_$P(CREDCARD,"~",3))
 ;
 S $P(A,"\",51)=$$MKRDLV^W4HZMST(HZM)
 S $P(A,"\",55)=$$PSL^W4HZMST(HZM)
 ;
 S $P(A,"\",56)=$$EMAIL^W4HZMST(HZM)
 S $P(A,"\",57)=$$MIKUD^W4HZMST(HZM)
 S $P(A,"\",58)=$$FAX^W4HZMST(HZM)
 S $P(A,"\",59)=$$TELB^W4HZMST(HZM)
 S $P(A,"\",63)=$$ADSHAA^W4HZMST(HZM)
 S $P(A,"\",70)=$$POOLED^W4HZMST(HZM)
 S $P(A,"\",74)=$$KINDORD^W4HZMST(HZM)
 S $P(A,"\",75)=$G(@W4HZM@("COORD"))
 S $P(A,"\",76)=$$MKRDLV1^W4HZMST(HZM)
 ;
 ;
 S @TMPORD=$TR(A,"\","~")
 ;
 I $P(A,"\",6)?2N1":"2N S $P(@TMPORD,"~",35)=$P(A,"\",6) ; - ZMAN MEUSHAR
 Q
 ;
 ;
SETORD2(LV,STT2,N2) ;
 I $L($G(CMNT2)) S $P(STT2,"~",7)=CMNT2
 I $L($G(GLIST)) S $P(STT2,"~",9)=GLIST
 I $G(NPSET),$G(NP) D SBORKA2(NPSET,NP,STT2,N2) Q
 ;
 S I=$$TMPI
 S @TMPORD@(I)=STT2 D NOMOD(T2)
 ;
 I $L($G(GLIST)) D
 .S @TMPORD@(I,"GLIST")=GLIST
 ;
 S N2I(N_"-"_CDT_"-"_N2)=$$IND(I)
 Q
 ;
 ;
W4HZM I $D(%ARG("GLORD")) S W4HZM=%ARG("GLORD") Q
 N GLORD D GLORD^W4HZMST S W4HZM=GLORD
 Q
 ;
TMPORD I $G(TMPORD)="" S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
NOMOD(ST0)
 S $P(@TMPORD@(I),"~",12)=$P(ST0,"\",10)
 S $P(@TMPORD@(I),"~",13)="HZ"
 S $P(@TMPORD@(I),"~",16)=$P(ST0,"\",13)
 Q
 ;
CDCMNT(CD,CMNT) ;  CMNT --> CD
 I $G(CD)=""!($G(CMNT)="") Q ""
 S CMNT=$$SPA^%L1FRM(CMNT)
 N CDCMNT S CDCMNT=""
 N P1CODH S P1CODH=$$^W4GL("P1CODH")
 ;
 N N S N="" F  S N=$O(@P1CODH@(N)) Q:N=""  D  Q:$L(CDCMNT)
 .I $$SPA^%L1FRM($G(^(N)))=CMNT S CDCMNT=N
 I CDCMNT,'$D(@$$^W4GL("P1EZH")@(CD,CDCMNT)) D
 .N SUG S SUG=$$SUG^W4P(CD) I 'SUG S CDCMNT=0 Q
 .I '$D(@$$^W4GL("P1EZHK")@(SUG,CDCMNT)) S CDCMNT=0
 I CDCMNT="" S CDCMNT=0
 Q CDCMNT
 ;
 ;
CLMANA(CMNT) ;
 I '$L($G(CMNT)) Q ""
 N N,MANA S MANA=""
 I '$D(MN) D MN^W4MANA
 ;
 S N="" F  S N=$O(MN(N)) Q:N=""  I $L(MN(N)) D  Q:MANA
 .I CMNT[MN(N) D
 ..S MANA=N ;
 ..S CMNT=$$RPL^%L1FRM(CMNT,MN(N),"")
 Q CMNT_"\"_MANA
 ;
 ;
SET(CD,CDT) ;
 I $G(CD)=""!($G(CDT)="") Q 0
 I $G(PRHDST) Q 0
 N SET,OK S OK=0 ;-- SET="A"+NSET
 N GL S GL=$$GLEZ(CD)
 I GL="" Q 0
 S SET="" F  S SET=$O(@GL@(CD,SET)) Q:SET=""  D  Q:OK
 .Q:$E(SET)'="A"
 .N NSET S NSET=$E(SET,2,6) Q:NSET=""
 .I $D(@$$^W4GLSET(HZM)@(NSET,CDT)) S OK=NSET
 Q OK
 ;
SETNAME(SET) ;
 Q $P($G(@$$^W4GLSET(HZM)@(SET)),"\")
 ;
SETEXIST(I,SET) ;
 I $G(PRHDST) Q 0
 N TMPORD D TMPORD
 N A,OK S OK=0
 N I1 F I1=I:-1:1 S A=$G(@TMPORD@(I1)) Q:$P(A,"~")=0  D  Q:OK
 .I $P(A,"~",2)=("A"_SET) S OK=1
 Q OK
 ;
TMPSET S TMPSET="^[$$^W3MAIN]TMPSET($$^%W1JB)"
 Q
 ;
SBORKA(CD,SET,STT) ; --> NPSET,NP
 I $G(PRHDST) Q
 N TMPSET,CDT,CMNTT D TMPSET
 S CDT=$P(STT,"~",2) Q:CDT=""
 S NPSET=$$NPSET(CD,SET) Q:NPSET=""
 S NP=$G(@$$^W4GLSET(HZM)@(SET,CDT)) Q:NP=""
 I '$D(@TMPSET@(NPSET)) S @TMPSET@(NPSET)=SET
 S @TMPSET@(NPSET,NP)=STT
 S @TMPSET@(NPSET,NP,"IND")=N_"-"_$P(STT,"~",2)
 Q
 ;
NPSET(CD,SET) ;
 I $G(PRHDST) Q 0
 N GL S GL=$$GLEZ(CD) I GL="" Q ""
 I '$D(@GL@(CD,"A"_SET)) Q ""
 N NPSET S NPSET=$G(@GL@(CD,"A"_SET))
 ;;I $G(PRMDB),$P(NPSET,">",2) Q $P(NPSET,">",2); -- 21/01/26 --> COMMENT
 Q +NPSET
 ;
SBORKA2(NPSET,NP,STT2,N2)
 I $G(PRHDST) Q
 N IND S IND=$O(@TMPSET@(NPSET,NP,9999),-1)+1
 S @TMPSET@(NPSET,NP,IND)=STT2
 S @TMPSET@(NPSET,NP,IND,"IND")=N_"-"_$P($G(@TMPSET@(NPSET,NP)),"~",2)_"-"_N2
 Q
 ;
 ;
SETSET ;
 N SET,NP,NP2,STT,STT2,CDT,NPSET
 D TMPSET,TMPORD
 I $G(PRHDST) K @TMPSET Q
 N LAST,IND
 ;
 S NPSET="" F  S NPSET=$O(@TMPSET@(NPSET)) Q:NPSET=""  D
 .S SET=$G(^(NPSET)) Q:SET=""
 .S I=$$TMPI,@TMPORD@(I)="1~A"_SET_"~"_$$SETNAME(SET) D SETNOMOD(I)
 .
 .S NP="" F  S NP=$O(@TMPSET@(NPSET,NP)) Q:NP=""  D
 ..N STT S STT=$G(^(NP))
 ..
 ..I '$O(@TMPSET@(NPSET,NP,"")) D SETST(STT,1) D  Q
 ...S IND=$G(@TMPSET@(NPSET,NP,"IND"))
 ...I IND D
 ....S LAST=$O(@TMPORD@(9999),-1)
 ....S N2I(IND)=$$IND(LAST)
 ..
 ..S NP2="" F  S NP2=$O(@TMPSET@(NPSET,NP,NP2)) Q:NP2=""  I NP2 D
 ...N STT2 S STT2=$G(^(NP2)) D SETST(STT2,2)
 ...S IND=$G(@TMPSET@(NPSET,NP,NP2,"IND"))
 ...I IND D
 ....S LAST=$O(@TMPORD@(9999),-1)
 ....S N2I(IND)=$$IND(LAST)
 ;
 K @TMPSET
 Q
 ;
 ;
SETST(STT,UR) ;
 N GLIST
 S I=$$TMPI
 ;
 N ST S ST=$P(STT,"~",1,6)_"~~"_$P(STT,"~",8,20)
 S GLIST=$$SPA^%L1FRM($P(ST,"~",9))
 S $P(ST,"~",9)=""
 S $P(ST,"~",13)="HZ"
 ;
 I $P(ST,"~",2)["-C",$P($G(@TMPORD@(I-1)),"~",2)["-C" Q
 ;
 S @TMPORD@(I)=ST
 I $L(GLIST) S @TMPORD@(I,"GLIST")=GLIST
 ;
 N CMNTT S CMNTT=$P(STT,"~",7)
 S CMNTT=$$CLMANA(CMNTT)
 ;
 D SETMANA("CMNTT",I)
 ;
 I $$LENCMNT(CMNTT) D
 .N CDT S CDT=$P(STT,"~",2)
 .I $P($G(@TMPORD@(I)),"~",2)[(CDT_"-C") Q
 .S I=$$TMPI
 .S @TMPORD@(I)=$P(STT,"~")_"~"_CDT_"-C"_$$CDCMNT(CDT,CMNTT)_"~"_$$CLR(CMNTT)
 .S $P(^(I),"~",12)=$P(STT,"~",12)
 .S $P(^(I),"~",13)="HZ"
 ;
 Q
 ;
 ;
GLEZ(CD) ;
 N GL S GL=""
 I $D(@$$^W4GL("P1EZA")@(CD)) S GL=$$^W4GL("P1EZA")
 I $D(@$$^W4GL("P1EZT")@(CD)) S GL=$$^W4GL("P1EZT")
 Q GL
 ;
SETNOMOD(I) ;
 S $P(@TMPORD@(I),"~",12)="@@@+"
 S $P(@TMPORD@(I),"~",13)="HZ"
 Q
 ;
SETNOMODT(STR,T) ;
 S $P(@STR,"~",12)=$P(T,"\",10)
 ;;W "STR="_STR,!
 S $P(@STR,"~",13)="HZ"
 S $P(@STR,"~",16)=$P(T,"\",13)
 S $P(@STR,"~",18)=$P(T,"\",18)
 Q
 ;
CLR(TXT) ; -- DEL ; MEUTARIM
 N I,TXT1,FL
 S TXT1="",FL=0
 F I=1:1:$L(TXT) D
 .S FL=$S($E(TXT,I)=";":FL+1,1:0)
 .Q:FL>1
 .S TXT1=TXT1_$E(TXT,I)
 Q TXT1
 ;
 ;
CHKORD(HZM) ;
 N LAST,LAST0
 Q:$G(HZM)<1
 ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I $$^W4MSL(NMB),$D(@$$^W4GL("LKH")@(NMB))'=11 D
 .D HZ2LKH^W4REST(HZM)
 ;
 I $$^W4HZMH(HZM) D  Q  ; !!!!!!!!!!!!!
 .I $D(@$$^W4ORD@(HZM,"BIT")) D
 ..N IND S IND=$O(@$$^W4ORD@(HZM,"BIT","")) Q:'IND
 ..S @$$^W4ORD@(HZM,"DELBID")=$G(@$$^W4ORD@(HZM,"BIT",IND))
 .K @$$^W4ORD@(HZM,"BIT"),@$$^W4ORD@(HZM,"MRG")
 ;
 Q:$$HZM^W4MSL(HZM)
 ;
 D ^W4CLRDBL(HZM)
 ;
 I $D(@$$^W4GL("DBLORD")@(HZM)) Q
 I $D(@$$^W4GL("P1HZDBL")@(HZM)) Q
 I $D(@$$^W4ORD@(HZM,"W4TIKHZ")) Q
 ;
 S LAST=$$COLSH0^W4HZMST(HZM)
 S LAST0=$$COLSH0^W4HZMST(HZM,$$^W4GL("P1HZ0"))
 ;
 I $G(@$$^W4PRM@("RESTHZ0")),LAST<(LAST0-1) D  ; -- 18/11/21 --> COMMENT
 .K @$$^W4GL("P1HZER")@(HZM)
 .M @$$^W4GL("P1HZER")@(HZM)=@$$^W4ORD@(HZM)
 .S @$$^W4GL("P1HZER")@(HZM,"W4GETHZ")=$ZD($H,"DD.MM.YY  24:60")
 .K @$$^W4ORD@(HZM)
 .M @$$^W4ORD@(HZM)=@$$^W4GL("P1HZ0")@(HZM)
 .K @$$^W4ORD@(HZM,"S")
 ;
 Q
 ;
 ;
SETMANA(%AAA,I) ;
 N MANA I $G(@%AAA)="" Q
 S MANA=$P(@%AAA,"\",2),@%AAA=$P(@%AAA,"\")
 S MANA=$$MANA($G(CD),MANA)
 S @TMPORD@(I,"MANA")=MANA
 Q
 ;
MANA(CD,MANA) ;
 ;
 I MANA D
 .I $$NOROMA^W4PRM,$G(CD),$$DD^W4EZT(CD),MANA,MANA'["T" S MANA=MANA_"T"
 Q MANA
 ;
LENCMNT(CMNT) ;
 Q $L($TR($G(CMNT)," ",""))
 ;
IND(I) ;
 I $$CDSTC^W3HZMST(JB,I,TMPORD) S I=I-1
 Q I
 ;
MULTY(HZM,CD) ; 
 I $$^W4MULTY Q 1
 I $$^W4HZMH(HZM) Q 1
 I $$NODLVORD^W4PRM,$$HZM^W4MSL(HZM) Q 1
 I $$WEBORD^W4HZMST(HZM) Q 1
 Q 0 
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GETHZ0
W4GETHZ(HZM,TMPORD) ; [ 08.07.16 13:32 ] [ 25.05.16 19:31 ] [ 16.05.16 12:54 ] 
 ; -- $$^W4ORD --> ^TMPORD
 I $G(@$$^W4PRM@("NEWGETHZ")) D ^W4GETHZN
 N (HZM,JB,%ARG,%REM,TMPORD)
 ;
 I $G(%ARG("MSDFROM")) S MSDFROM=%ARG("MSDFROM")
 I $G(%ARG("MSDTO")) S MSDTO=%ARG("MSDTO")
 I $G(%ARG("MSD")) S MSD=%ARG("MSD")
 ;
 D CHKORD(HZM)
 ;
 D TMPORD,W4HZM
 I '$G(HZM) Q "00000"
 I '$D(@W4HZM) Q -1
 I $D(@W4HZM)'=11 Q -2
 K @TMPORD
 D ^W4IN
 D ^W4CALC(HZM)
 S ER=0
 ;
 D ^W4SETHN1(HZM) ; -- FOR OLD ^P1HZ
 ;
 D KOT
 ;
 N N2I
 S I=0,I0=0 S (CD,CDT,CDTO,NM)=""
 N TMPSET D TMPSET K @TMPSET
 ;
 D MN^W4MANA
 ;
 S N="" F  S:N N0=N S N=$O(@W4HZM@(N)) Q:N=""  I N?1N.E D
 .S C=$G(^(N))
 .I $D(@TMPSET)>9,I>0 D SETSET K @TMPSET
 .
 .S CD=$P(C,"\",1),NM=$$SPA^%L1FRM($P(C,"\",3))
 .S MH=$P(C,"\",4),CM=$P(C,"\",5)
 .S CMNT=$P(C,"\",8)
 .S CMNT=$$^W4CLRCMN(CMNT)
 .S GLIST=$P(C,"\",9)
 .S NOTSFMVC=$P(C,"\",12)
 .S TSF=0,SUM=MH*CM
 .I CD?1"-"1N.N.".".N1"%",I0 D  Q
 ..S $P(@TMPORD@(I0),"~",6)=+$E(CD,2,20)
 ..S $P(@TMPORD@(I0),"~",7)=CMNT
 ..S $P(@TMPORD@(I0),"~",8)=NOTSFMVC
 ..S $P(@TMPORD@(I0),"~",13)="HZ"
 .
 .S I=$$TMPI
 .S I0=I
 .S @TMPORD@(I)="0~"_CD_"~"_NM_"~"_MH_"~"_CM D NOMOD(C)
 .I $L(GLIST) S @TMPORD@(I,"GLIST")=GLIST
 .;
 .S CMNT=$$CLMANA(CMNT)
 .D SETMANA("CMNT",I)
 .S N2I(N)=I
 .
 .I $$LENCMNT(CMNT) D
 ..I CMNT["{" D  Q:CMNT?.P  ; -- ???
 ...S CMNT=$P(CMNT,"{",2)
 ...S $P(@TMPORD@(I),"~",7)=CMNT
 ...S $P(@TMPORD@(I),"~",13)="HZ"
 ...S CMNT=$P(CMNT,"{")_" "_$P(CMNT,"}",2)
 ..S I=$$TMPI
 ..S @TMPORD@(I)="1~"_CD_"-C"_$$CDCMNT(CD,CMNT)_"~"_$$CLR(CMNT)
 ..D NOMOD(C)
 .
 .D ^W4N2V(HZM,N)
 .;;S N1="" F  S N1=$O(@W4HZM@(N,N1)) Q:N1=""  I N1?1N.E D
 .S N2V="" F  S N2V=$O(@$$^W4MAIN("VRMHZ")@(N2V)) Q:N2V=""  I N2V?1N.E D
 ..S N1=$G(^(N2V)) Q:N1=""
 ..N NPSET,NP
 ..N T S T=$G(@W4HZM@(N,N1))
 ..N CDT,NMT,CMNT
 ..S NMT=$$SPA^%L1FRM($P(T,"\"))
 ..S CDT=N1 I $E(CDT,1,2)'="0-" S CDT=$P(CDT,"-")
 ..S MHT=$P(T,"\",2),CMT=$P(T,"\",3)
 ..S CMNTT=$P(T,"\",4)
 ..
 ..I $G(CM)>1!($G(CM)<-1),CMT'["*",CMT\CM*CM=+CMT,$$^W4MULTY!'$$^W4EZAT(CD) D
 ...S CMT=CM_"*"_(CMT\CM)_$$DOP^W4PIZZA(CMT)
 ..
 ..N STT S STT="1~"_CDT_"~"_NMT_"~"_MHT_"~"_CMT
 ..D SETNOMODT("STT",T)
 ..
 ..I $L(CD) S SET=$$SET(CD,CDT) I SET D  G LV2
 ...D SBORKA(CD,SET,STT_"~~"_CMNTT)
 ..
 ..I $D(@W4HZM@(N,N1))>9 G LV2 ; --- NEW !!! 13/02/13
 ..
 ..S I=$$TMPI
 ..S @TMPORD@(I)=STT D NOMOD(T)
 ..S N2I(N_"-"_CDT)=I
 ..
 ..I $L(CMNTT) D
 ...S CMNTT=$$CLMANA(CMNTT)
 ...D SETMANA("CMNTT",I)
 ..
 ..I $$LENCMNT(CMNTT) D
 ...N STT
 ...N LVO S LVO=$P($G(@TMPORD@(I-1)),"~") S:'LVO LVO=1
 ...S STT=LVO_"~"_CDT_"-C"_$$CDCMNT(CDT,CMNTT)_"~"_$$CLR(CMNTT)
 ...S $P(STT,"~",12)=$P(T,"\",10)
 ...S $P(STT,"~",13)="HZ"
 ...S I=$$TMPI
 ...S @TMPORD@(I)=STT
 ...S N2I(N_"-C"_CDT)=I
 ...D NOMOD(T)
 ..
LV2 ..N CMT,GLIST,ITM S ITM=""
 ..S N2="" F  S N2=$O(@W4HZM@(N,N1,N2)) Q:N2=""  D
 ...N T2,LV S T2=$G(^(N2))
 ...N CDT2,NMT2,CMNT2,CDT21,NMT21
 ...S CDT21=$P(T2,"\")
 ...I $E(CDT21,1,2)'="0-" S CDT21=$P(CDT21,"-")
 ...S NMT21=$P(T2,"\",2)
 ...S CDT2=$P($P(T2,"\",4),"-")
 ...I $E(CDT2,1,2)'="0-" S CDT2=$P(CDT2,"-")
 ...S NMT2=$$SPA^%L1FRM($P(T2,"\",5))
 ...S MHT2=+$P(T2,"\",7),QN2=$P(T2,"\",3)
 ...S CMNT2=$P(T2,"\",6),MANA=""
 ...
 ...I $L(CDT21) D  Q
 ....S LV=1
 ....N STT2 S STT2=LV_"~"_CDT21_"~"_NMT21_"~"_MHT2_"~"_QN2
 ....I $D(@W4HZM@(N,N1,N2,"HNT")) D
 .....N HNT S HNT=$G(^("HNT"))
 .....S $P(STT2,"~",4)=$P(HNT,";",2)
 .....S $P(STT2,"~",6)=+HNT
 ....S ITM=$$^W4ITM(STT2)
 ....I $L($G(CMNT2)) S $P(ITM,"^",7)=CMNT2
 ....D SETNOMODT("STT2",T2)
 ....S GLIST=$$SPA^%L1FRM($P(T2,"\",9))
 ....D SETORD2(LV,STT2,N2)
 ....S CMT=QN2
 ....D SETCMNT2(CDT21,CMNT2)
 ...
 ...I CDT2 D  Q
 ....S LV=2
 ....I QN2["*" S QN2=$P(QN2,"*",2)
 ....I $G(CMT) D
 .....N QN22 S QN22=QN2\CMT I QN22<0 S QN22=-QN22
 .....I QN22<1 S QN22=1
 .....S QN2=CMT_"*"_QN22_$$DOP^W4PIZZA(QN2)
 ....N STT2 S STT2=LV_"~"_CDT2_"~"_NMT2_"~"_MHT2_"~"_QN2
 ....I $L($G(ITM)) D SET^W4ITM("STT2",ITM)
 ....D SETNOMODT("STT2",T2)
 ....D SETORD2(LV,STT2,N2)
 ....D SETCMNT2(CDT2,CMNT2)
 .K @$$^W4MAIN("VRMHZ")
 ;
 I $D(@TMPSET)>9,I>0 D SETSET K @TMPSET ; -- ?
 ;
 N I,I1,A,CDT ;
 ;
 S SRV="" F  S SRV=$O(@W4HZM@(SRV)) Q:SRV=""  I SRV?1U.E D  ; -- SERVIS INFORMATION
 .I $D(@W4HZM@(SRV))#2 S @TMPORD@(SRV)=@W4HZM@(SRV)
 .N N1 S N1="" F  S N1=$O(@W4HZM@(SRV,N1)) Q:N1=""  D
 ..I $D(N2I(N1)),SRV'="PART",SRV'="TB",SRV'="CB" D  Q
 ...M @TMPORD@(SRV,N2I(N1))=@W4HZM@(SRV,N1)
 ...K @TMPORD@(SRV,N2I(N1),"O2T")
 ..M @TMPORD@(SRV,N1)=@W4HZM@(SRV,N1) Q
 ;
 D ^W4TMPHD
 Q 1  ;
 ;
 ;
TMPI(STAM) ;
 D TMPORD
 Q ($O(@TMPORD@(99999),-1)+1)
 ;
SETCMNT2(CDT2,CMNT2) ;
 N MANA
 ;
 I $L(CMNT2) D
 .S CMNT2=$$CLMANA(CMNT2)
 ;
 S MANA=$P(CMNT2,"\",2)
 S CMNT2=$P(CMNT2,"\")
 ;
 I MANA,'$G(NPSET) D
 .N I S I=$O(@TMPORD@(99999),-1)
 .S MANA=$$MANA($G(CD),MANA)
 .S @TMPORD@(I,"MANA")=MANA
 ;
 I $$LENCMNT(CMNT2),$G(LV) D
 .S STT2=LV_"~"_CDT2_"-C"_+$$CDCMNT(CDT2,CMNT2)_"~"_$$CLR(CMNT2)
 .D SETNOMODT("STT2",T2)
 .S CMNT2="" D SETORD2(LV,STT2,N2)
 Q
 ;
 ;
KOT ;
 D W4HZM
 N A,B,C,I S A=@W4HZM ; ------- !!!
 S $P(A,"\",60)=$P(A,"\",30)
 ;
 I $P(A,"\") D
 .N LK S LK=$$SPA^%L1FRM($P(A,"\"))
 .S $P(A,"\")=$TR(LK,"-","")
 ;
 S TIME=$P(A,"\",6)
 S $P(A,"\",42)=$P(TIME,":")
 S $P(A,"\",43)=$P(TIME,":",2)
 I $P(A,"\",21)=8 S $P(A,"\",21)=5
 S $P(A,"\",27)=$TR($P(A,"\",27),"-!","")
 S $P(A,"\",38)=$P(A,"\",22)
 I $P(A,"\",38),$P(A,"\",38)'["%" S $P(A,"\",38)=$P(A,"\",38)_"%"
 N HN S HN=$P(A,"\",8)
 ;
 ;;I $$ONLINE^W4DLVCSR,HN,HN'["%" D
 .S $P(A,"\",38)=$J(100*HN/($P(A,"\",11)-$P(A,"\",9)+HN),2,2)
 .S $P(A,"\",8)=""
 ;
 I $$ONLINE^W4DLVCSR,HN,HN'["%" D
 .S $P(A,"\",38)=""
 ;
 I $P(A,"\",8)["%" D
 .N AH S AH=$P(A,"\",8)
 .I AH["=" S AH=$P(AH,"=",2)
 .S $P(A,"\",38)=AH
 .I $P(A,"\",8)'["=" S $P(A,"\",8)=""
 .I $P(A,"\",8)["=" S $P(A,"\",8)=+$P(A,"\",8)
 ;
 ;
 S COMP=""
 I $L($P(A,"\",2)) D
 .S COMP=$P(A,"\",2)
 .S $P(A,"\",47)=COMP
 ;
 S B=$G(@W4HZM@("HR2"))
 S $P(A,"\",34)=$P(B,"\\",6) ; -- HEARA
 S $P(A,"\",31)=$P(B,"\\",4) ; IR
 S $P(A,"\",2)=$P(B,"\\",5)
 S $P(A,"\",32)=$P(B,"\\",7) ; PELE
 ;
 S CIBCARD=$G(@W4HZM@("CIBCARD"))
 I $L(CIBCARD) D
 .S $P(A,"\",46)=$$^W3ENCR(HZM_";"_CIBCARD)
 ;
 S CREDCARD=$G(@W4HZM@("CREDCARD"))
 I $L(CREDCARD) D
 .S $P(A,"\",48)=$$^W3ENCR(HZM_";"_$P(CREDCARD,"~"))
 .S $P(A,"\",49)=$P(CREDCARD,"~",2)
 .S $P(A,"\",50)=$$^W3ENCR(HZM_";"_$P(CREDCARD,"~",3))
 ;
 S $P(A,"\",55)=$$PSL^W4HZMST(HZM)
 ;
 S $P(A,"\",56)=$$EMAIL^W4HZMST(HZM)
 S $P(A,"\",57)=$$MIKUD^W4HZMST(HZM)
 S $P(A,"\",58)=$$FAX^W4HZMST(HZM)
 S $P(A,"\",59)=$$TELB^W4HZMST(HZM)
 ;
 ;
 S @TMPORD=$TR(A,"\","~")
 ;
 I $P(A,"\",6)?2N1":"2N S $P(@TMPORD,"~",35)=$P(A,"\",6) ; - ZMAN MEUSHAR
 Q
 ;
 ;
SETORD2(LV,STT2,N2) ;
 I $L($G(CMNT2)) S $P(STT2,"~",7)=CMNT2
 I $L($G(GLIST)) S $P(STT2,"~",9)=GLIST
 I $G(NPSET),$G(NP) D SBORKA2(NPSET,NP,STT2,N2) Q
 ;
 S I=$$TMPI
 S @TMPORD@(I)=STT2 D NOMOD(T2)
 ;
 I $L($G(GLIST)) D
 .S @TMPORD@(I,"GLIST")=GLIST
 ;
 S N2I(N_"-"_CDT_"-"_N2)=$$IND(I)
 Q
 ;
 ;
W4HZM I $D(%ARG("GLORD")) S W4HZM=%ARG("GLORD") Q
 N GLORD D GLORD^W4HZMST S W4HZM=GLORD
 Q
TMPORD I $G(TMPORD)="" S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
NOMOD(ST0)
 S $P(@TMPORD@(I),"~",12)=$P(ST0,"\",10)
 S $P(@TMPORD@(I),"~",13)="HZ"
 Q
 ;
CDCMNT(CD,CMNT) ;  CMNT --> CD
 I $G(CD)=""!($G(CMNT)="") Q ""
 N CDCMNT S CDCMNT=""
 N N S N="" F  S N=$O(@$$^W4GL("P1CODH")@(N)) Q:N=""  D  Q:$L(CDCMNT)
 .I $$SPA^%L1FRM($G(^(N)))=$$SPA^%L1FRM(CMNT) S CDCMNT=N
 I CDCMNT,'$D(@$$^W4GL("P1EZH")@(CD,CDCMNT)) D
 .N SUG S SUG=$$SUG^W4P(CD) I 'SUG S CDCMNT=0 Q
 .I '$D(@$$^W4GL("P1EZHK")@(SUG,CDCMNT)) S CDCMNT=0
 I CDCMNT="" S CDCMNT=0
 Q CDCMNT
 ;
 ;
CLMANA(CMNT) ;
 I '$L($G(CMNT)) Q ""
 N N,MANA S MANA=""
 I '$D(MN) D MN^W4MANA
 ;
 S N="" F  S N=$O(MN(N)) Q:N=""  I $L(MN(N)) D  Q:MANA
 .I CMNT[MN(N) D
 ..S MANA=N ;
 ..S CMNT=$$RPL^%L1FRM(CMNT,MN(N),"")
 Q CMNT_"\"_MANA
 ;
 ;
SET(CD,CDT) ;
 I $G(CD)=""!($G(CDT)="") Q 0
 N GL S GL=$$GLEZ(CD)
 I GL="" Q 0
 N SET,OK S OK=0 ;-- SET="A"+NSET
 S SET="" F  S SET=$O(@GL@(CD,SET)) Q:SET=""  D  Q:OK
 .Q:$E(SET)'="A"
 .N NSET S NSET=$E(SET,2,6) Q:NSET=""
 .I $D(@$$^W4GL("P1SETA")@(NSET,CDT)) S OK=NSET
 Q OK
 ;
SETNAME(SET) ;
 Q $P($G(@$$^W4GL("P1SETA")@(SET)),"\")
 ;
SETEXIST(I,SET) ;
 N TMPORD D TMPORD
 N A,OK S OK=0
 N I1 F I1=I:-1:1 S A=$G(@TMPORD@(I1)) Q:$P(A,"~")=0  D  Q:OK
 .I $P(A,"~",2)=("A"_SET) S OK=1
 Q OK
 ;
TMPSET S TMPSET="^[$$^W3MAIN]TMPSET($$^%W1JB)"
 Q
 ;
SBORKA(CD,SET,STT) ; --> NPSET,NP
 N TMPSET,CDT,CMNTT D TMPSET
 S CDT=$P(STT,"~",2) Q:CDT=""
 S NPSET=$$NPSET(CD,SET) Q:NPSET=""
 S NP=$G(@$$^W4GL("P1SETA")@(SET,CDT)) Q:NP=""
 I '$D(@TMPSET@(NPSET)) S @TMPSET@(NPSET)=SET
 S @TMPSET@(NPSET,NP)=STT
 S @TMPSET@(NPSET,NP,"IND")=N_"-"_$P(STT,"~",2)
 Q
 ;
NPSET(CD,SET) ;
 N GL S GL=$$GLEZ(CD) I GL="" Q ""
 I '$D(@GL@(CD,"A"_SET)) Q ""
 Q +$G(@GL@(CD,"A"_SET))
 ;
SBORKA2(NPSET,NP,STT2,N2)
 N IND S IND=$O(@TMPSET@(NPSET,NP,9999),-1)+1
 S @TMPSET@(NPSET,NP,IND)=STT2
 S @TMPSET@(NPSET,NP,IND,"IND")=N_"-"_$P($G(@TMPSET@(NPSET,NP)),"~",2)_"-"_N2
 Q
 ;
 ;
SETSET ;
 N SET,NP,NP2,STT,STT2,CDT,NPSET
 D TMPSET,TMPORD
 N LAST,IND
 S NPSET="" F  S NPSET=$O(@TMPSET@(NPSET)) Q:NPSET=""  D
 .S SET=$G(^(NPSET)) Q:SET=""
 .S I=$$TMPI,@TMPORD@(I)="1~A"_SET_"~"_$$SETNAME(SET) D SETNOMOD(I)
 .S NP="" F  S NP=$O(@TMPSET@(NPSET,NP)) Q:NP=""  D
 ..N STT S STT=$G(^(NP))
 ..I '$O(@TMPSET@(NPSET,NP,"")) D SETST(STT,1) D  Q
 ...S IND=$G(@TMPSET@(NPSET,NP,"IND"))
 ...I IND D
 ....S LAST=$O(@TMPORD@(9999),-1)
 ....S N2I(IND)=$$IND(LAST)
 ..S NP2="" F  S NP2=$O(@TMPSET@(NPSET,NP,NP2)) Q:NP2=""  I NP2 D
 ...N STT2 S STT2=$G(^(NP2)) D SETST(STT2,2)
 ...S IND=$G(@TMPSET@(NPSET,NP,NP2,"IND"))
 ...I IND D
 ....S LAST=$O(@TMPORD@(9999),-1)
 ....S N2I(IND)=$$IND(LAST)
 ;
 K @TMPSET
 Q
 ;
 ;
SETST(STT,UR) ;
 N GLIST
 S I=$$TMPI
 ;
 N ST S ST=$P(STT,"~",1,6)_"~~"_$P(STT,"~",8,13)
 S GLIST=$$SPA^%L1FRM($P(ST,"~",9))
 S $P(ST,"~",9)=""
 S $P(ST,"~",13)="HZ"
 ;
 I $P(ST,"~",2)["-C",$P($G(@TMPORD@(I-1)),"~",2)["-C" Q
 ;
 S @TMPORD@(I)=ST
 I $L(GLIST) S @TMPORD@(I,"GLIST")=GLIST
 ;
 N CMNTT S CMNTT=$P(STT,"~",7)
 S CMNTT=$$CLMANA(CMNTT)
 ;
 D SETMANA("CMNTT",I)
 ;
 I $$LENCMNT(CMNTT) D
 .N CDT S CDT=$P(STT,"~",2)
 .I $P($G(@TMPORD@(I)),"~",2)[(CDT_"-C") Q
 .S I=$$TMPI
 .S @TMPORD@(I)=$P(STT,"~")_"~"_CDT_"-C"_$$CDCMNT(CDT,CMNTT)_"~"_$$CLR(CMNTT)
 .S $P(^(I),"~",12)=$P(STT,"~",12)
 .S $P(^(I),"~",13)="HZ"
 ;
 Q
 ;
 ;
GLEZ(CD) ;
 N GL S GL=""
 I $D(@$$^W4GL("P1EZA")@(CD)) S GL=$$^W4GL("P1EZA")
 I $D(@$$^W4GL("P1EZT")@(CD)) S GL=$$^W4GL("P1EZT")
 Q GL
 ;
SETNOMOD(I) ;
 S $P(@TMPORD@(I),"~",12)="@@@+"
 S $P(@TMPORD@(I),"~",13)="HZ"
 Q
 ;
SETNOMODT(STR,T) ;
 S $P(@STR,"~",12)=$P(T,"\",10)
 ;;W "STR="_STR,!
 S $P(@STR,"~",13)="HZ"
 Q
 ;
CLR(TXT) ; -- DEL ; MEUTARIM
 N I,TXT1,FL
 S TXT1="",FL=0
 F I=1:1:$L(TXT) D
 .S FL=$S($E(TXT,I)=";":FL+1,1:0)
 .Q:FL>1
 .S TXT1=TXT1_$E(TXT,I)
 Q TXT1
 ;
 ;
CHKORD(HZM) ;
 N LAST,LAST0
 Q:$G(HZM)<1
 S LAST=$$COLSH0^W4HZMST(HZM)
 S LAST0=$$COLSH0^W4HZMST(HZM,$$^W4GL("P1HZ0"))
 I LAST<(LAST0-1) D
 .M @$$^W4GL("P1HZER")@(HZM)=@$$^W4ORD@(HZM)
 .S @$$^W4GL("P1HZER")@(HZM,"W4GETHZ")=$ZD($H,"DD.MM.YY  24:60")
 .M @$$^W4ORD@(HZM)=@$$^W4GL("P1HZ0")@(HZM)
 .K @$$^W4ORD@(HZM,"S")
 Q
 ;
SETMANA(%AAA,I) ;
 N MANA I $G(@%AAA)="" Q
 S MANA=$P(@%AAA,"\",2),@%AAA=$P(@%AAA,"\")
 S MANA=$$MANA($G(CD),MANA)
 S @TMPORD@(I,"MANA")=MANA
 Q
 ;
MANA(CD,MANA) ;
 ;
 I MANA D
 .I $$NOROMA^W4PRM,$G(CD),$$D^W4EZT(CD),MANA,MANA'["T" S MANA=MANA_"T"
 Q MANA
 ;
LENCMNT(CMNT) ;
 Q $L($TR($G(CMNT)," ",""))
 ;
IND(I) ;
 I $$CDSTC^W3HZMST(JB,I,TMPORD) S I=I-1
 Q I
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GETHZN
W4GETHZN(HZM,TMPORD) ; [ 08.07.16 13:21 ] [ 25.05.16 19:31 ] [ 16.05.16 12:54 ] 
 ; -- $$^W4ORD --> ^TMPORD
 N (HZM,JB,%ARG,%REM,TMPORD)
 ;
 I $G(%ARG("MSDFROM")) S MSDFROM=%ARG("MSDFROM")
 I $G(%ARG("MSDTO")) S MSDTO=%ARG("MSDTO")
 I $G(%ARG("MSD")) S MSD=%ARG("MSD")
 ;
 D CHKORD(HZM)
 ;
 D TMPORD,W4HZM
 I '$G(HZM) Q "00000"
 I '$D(@W4HZM) Q -1
 I $D(@W4HZM)'=11 Q -2
 K @TMPORD
 D ^W4IN
 ;;D ^W4CALC(HZM)
 S ER=0
 ;
 ;;D ^W4SETHN1(HZM) ; -- FOR OLD ^P1HZ
 ;
 D KOT
 ;
 N N2I
 S I=0,I0=0 S (CD,CDT,CDTO,NM)=""
 N TMPSET D TMPSET K @TMPSET
 ;
 D MN^W4MANA
 ;
 S N="" F  S:N N0=N S N=$O(@W4HZM@(N)) Q:N=""  I N?1N.E D
 .S C=$G(^(N))
 .I $D(@TMPSET)>9,I>0 D SETSET K @TMPSET
 .
 .S CD=$P(C,"\",1),NM=$$SPA^%L1FRM($P(C,"\",3))
 .S MH=$P(C,"\",4),CM=$P(C,"\",5)
 .S CMNT=$P(C,"\",8)
 .S CMNT=$$^W4CLRCMN(CMNT)
 .S GLIST=$P(C,"\",9)
 .S NOTSFMVC=$P(C,"\",12)
 .S TSF=0,SUM=MH*CM
 .I CD?1"-"1N.N.".".N1"%",I0 D  Q
 ..S $P(@TMPORD@(I0),"~",6)=+$E(CD,2,20)
 ..S $P(@TMPORD@(I0),"~",7)=CMNT
 ..S $P(@TMPORD@(I0),"~",8)=NOTSFMVC
 ..S $P(@TMPORD@(I0),"~",13)="HZ"
 .
 .S I=$$TMPI
 .S I0=I
 .S @TMPORD@(I)="0~"_CD_"~"_NM_"~"_MH_"~"_CM D NOMOD(C)
 .I $L(GLIST) S @TMPORD@(I,"GLIST")=GLIST
 .;
 .S CMNT=$$CLMANA(CMNT)
 .D SETMANA("CMNT",I)
 .S N2I(N)=I
 .
 .I $$LENCMNT(CMNT) D
 ..I CMNT["{" D  Q:CMNT?.P  ; -- ???
 ...S CMNT=$P(CMNT,"{",2)
 ...S $P(@TMPORD@(I),"~",7)=CMNT
 ...S $P(@TMPORD@(I),"~",13)="HZ"
 ...S CMNT=$P(CMNT,"{")_" "_$P(CMNT,"}",2)
 ..S I=$$TMPI
 ..S @TMPORD@(I)="1~"_CD_"-C"_$$CDCMNT(CD,CMNT)_"~"_$$CLR(CMNT)
 ..D NOMOD(C)
 .
 .D ^W4N2V(HZM,N)
 .S N2V="" F  S N2V=$O(@$$^W4MAIN("VRMHZ")@(N2V)) Q:N2V=""  I N2V?1N.E D
 ..S N1=$G(^(N2V)) Q:N1=""
 ..N NPSET,NP
 ..N T S T=$G(@W4HZM@(N,N1))
 ..N CDT,NMT,CMNT
 ..S NMT=$$SPA^%L1FRM($P(T,"\"))
 ..S CDT=N1 I $E(CDT,1,2)'="0-" S CDT=$P(CDT,"-")
 ..S MHT=$P(T,"\",2),CMT=$P(T,"\",3)
 ..S CMNTT=$P(T,"\",4)
 ..
 ..I $G(CM)>1!($G(CM)<-1),CMT'["*",CMT\CM*CM=+CMT,$$^W4MULTY!'$$^W4EZAT(CD) D
 ...S CMT=CM_"*"_(CMT\CM)_$$DOP^W4PIZZA(CMT)
 ..
 ..N STT S STT="1~"_CDT_"~"_NMT_"~"_MHT_"~"_CMT
 ..D SETNOMODT("STT",T)
 ..
 ..I $L(CD) S SET=$$SET(CD,CDT) I SET D  G LV2
 ...D SBORKA(CD,SET,STT_"~~"_CMNTT)
 ..
 ..I $D(@W4HZM@(N,N1))>9 G LV2 ; --- NEW !!! 13/02/13
 ..
 ..S I=$$TMPI
 ..S @TMPORD@(I)=STT D NOMOD(T)
 ..S N2I(N_"-"_CDT)=I
 ..
 ..I $L(CMNTT) D
 ...S CMNTT=$$CLMANA(CMNTT)
 ...D SETMANA("CMNTT",I)
 ..
 ..I $$LENCMNT(CMNTT) D
 ...N STT
 ...N LVO S LVO=$P($G(@TMPORD@(I-1)),"~") S:'LVO LVO=1
 ...S STT=LVO_"~"_CDT_"-C"_$$CDCMNT(CDT,CMNTT)_"~"_$$CLR(CMNTT)
 ...S $P(STT,"~",12)=$P(T,"\",10)
 ...S $P(STT,"~",13)="HZ"
 ...S I=$$TMPI
 ...S @TMPORD@(I)=STT
 ...S N2I(N_"-C"_CDT)=I
 ...D NOMOD(T)
 ..
LV2 ..N CMT,GLIST,ITM S ITM=""
 ..S N2="" F  S N2=$O(@W4HZM@(N,N1,N2)) Q:N2=""  D
 ...N T2,LV S T2=$G(^(N2))
 ...N CDT2,NMT2,CMNT2,CDT21,NMT21
 ...S CDT21=$P(T2,"\")
 ...I $E(CDT21,1,2)'="0-" S CDT21=$P(CDT21,"-")
 ...S NMT21=$P(T2,"\",2)
 ...S CDT2=$P($P(T2,"\",4),"-")
 ...I $E(CDT2,1,2)'="0-" S CDT2=$P(CDT2,"-")
 ...S NMT2=$$SPA^%L1FRM($P(T2,"\",5))
 ...S MHT2=+$P(T2,"\",7),QN2=$P(T2,"\",3)
 ...S CMNT2=$P(T2,"\",6),MANA=""
 ...
 ...I $L(CDT21) D  Q
 ....S LV=1
 ....N STT2 S STT2=LV_"~"_CDT21_"~"_NMT21_"~"_MHT2_"~"_QN2
 ....I $D(@W4HZM@(N,N1,N2,"HNT")) D
 .....N HNT S HNT=$G(^("HNT"))
 .....S $P(STT2,"~",4)=$P(HNT,";",2)
 .....S $P(STT2,"~",6)=+HNT
 ....S ITM=$$^W4ITM(STT2)
 ....I $L($G(CMNT2)) S $P(ITM,"^",7)=CMNT2
 ....D SETNOMODT("STT2",T2)
 ....S GLIST=$$SPA^%L1FRM($P(T2,"\",9))
 ....D SETORD2(LV,STT2,N2)
 ....S CMT=QN2
 ....D SETCMNT2(CDT21,CMNT2)
 ...
 ...I CDT2 D  Q
 ....S LV=2
 ....I QN2["*" S QN2=$P(QN2,"*",2)
 ....I $G(CMT) D
 .....N QN22 S QN22=QN2\CMT I QN22<0 S QN22=-QN22
 .....I QN22<1 S QN22=1
 .....S QN2=CMT_"*"_QN22_$$DOP^W4PIZZA(QN2)
 ....N STT2 S STT2=LV_"~"_CDT2_"~"_NMT2_"~"_MHT2_"~"_QN2
 ....I $L($G(ITM)) D SET^W4ITM("STT2",ITM)
 ....D SETNOMODT("STT2",T2)
 ....D SETORD2(LV,STT2,N2)
 ....D SETCMNT2(CDT2,CMNT2)
 .K @$$^W4MAIN("VRMHZ")
 ;
 I $D(@TMPSET)>9,I>0 D SETSET K @TMPSET ; -- ?
 ;
 N I,I1,A,CDT ;
 ;
 S SRV="" F  S SRV=$O(@W4HZM@(SRV)) Q:SRV=""  I SRV?1U.E D  ; -- SERVIS INFORMATION
 .I $D(@W4HZM@(SRV))#2 S @TMPORD@(SRV)=@W4HZM@(SRV)
 .N N1 S N1="" F  S N1=$O(@W4HZM@(SRV,N1)) Q:N1=""  D
 ..I $D(N2I(N1)),SRV'="PART",SRV'="TB",SRV'="CB" D  Q
 ...M @TMPORD@(SRV,N2I(N1))=@W4HZM@(SRV,N1)
 ...K @TMPORD@(SRV,N2I(N1),"O2T")
 ..M @TMPORD@(SRV,N1)=@W4HZM@(SRV,N1) Q
 ;
 D ^W4TMPHD
 Q 1  ;
 ;
 ;
TMPI(STAM) ;
 D TMPORD
 Q ($O(@TMPORD@(99999),-1)+1)
 ;
SETCMNT2(CDT2,CMNT2) ;
 N MANA
 ;
 I $L(CMNT2) D
 .S CMNT2=$$CLMANA(CMNT2)
 ;
 S MANA=$P(CMNT2,"\",2)
 S CMNT2=$P(CMNT2,"\")
 ;
 I MANA,'$G(NPSET) D
 .N I S I=$O(@TMPORD@(99999),-1)
 .S MANA=$$MANA($G(CD),MANA)
 .S @TMPORD@(I,"MANA")=MANA
 ;
 I $$LENCMNT(CMNT2),$G(LV) D
 .S STT2=LV_"~"_CDT2_"-C"_+$$CDCMNT(CDT2,CMNT2)_"~"_$$CLR(CMNT2)
 .D SETNOMODT("STT2",T2)
 .S CMNT2="" D SETORD2(LV,STT2,N2)
 Q
 ;
 ;
KOT ;
 D W4HZM
 N A,B,C,I S A=@W4HZM ; ------- !!!
 S $P(A,"\",60)=$P(A,"\",30)
 ;
 I $P(A,"\") D
 .N LK S LK=$$SPA^%L1FRM($P(A,"\"))
 .S $P(A,"\")=$TR(LK,"-","")
 ;
 S TIME=$P(A,"\",6)
 S $P(A,"\",42)=$P(TIME,":")
 S $P(A,"\",43)=$P(TIME,":",2)
 I $P(A,"\",21)=8 S $P(A,"\",21)=5
 S $P(A,"\",27)=$TR($P(A,"\",27),"-!","")
 S $P(A,"\",38)=$P(A,"\",22)
 I $P(A,"\",38),$P(A,"\",38)'["%" S $P(A,"\",38)=$P(A,"\",38)_"%"
 N HN S HN=$P(A,"\",8)
 ;
 ;;I $$ONLINE^W4DLVCSR,HN,HN'["%" D
 .S $P(A,"\",38)=$J(100*HN/($P(A,"\",11)-$P(A,"\",9)+HN),2,2)
 .S $P(A,"\",8)=""
 ;
 I $$ONLINE^W4DLVCSR,HN,HN'["%" D
 .S $P(A,"\",38)=""
 ;
 I $P(A,"\",8)["%" D
 .N AH S AH=$P(A,"\",8)
 .I AH["=" S AH=$P(AH,"=",2)
 .S $P(A,"\",38)=AH
 .I $P(A,"\",8)'["=" S $P(A,"\",8)=""
 .I $P(A,"\",8)["=" S $P(A,"\",8)=+$P(A,"\",8)
 ;
 ;
 S COMP=""
 I $L($P(A,"\",2)) D
 .S COMP=$P(A,"\",2)
 .S $P(A,"\",47)=COMP
 ;
 S B=$G(@W4HZM@("HR2"))
 S $P(A,"\",34)=$P(B,"\\",6) ; -- HEARA
 S $P(A,"\",31)=$P(B,"\\",4) ; IR
 S $P(A,"\",2)=$P(B,"\\",5)
 S $P(A,"\",32)=$P(B,"\\",7) ; PELE
 ;
 S CIBCARD=$G(@W4HZM@("CIBCARD"))
 I $L(CIBCARD) D
 .S $P(A,"\",46)=$$^W3ENCR(HZM_";"_CIBCARD)
 ;
 S CREDCARD=$G(@W4HZM@("CREDCARD"))
 I $L(CREDCARD) D
 .S $P(A,"\",48)=$$^W3ENCR(HZM_";"_$P(CREDCARD,"~"))
 .S $P(A,"\",49)=$P(CREDCARD,"~",2)
 .S $P(A,"\",50)=$$^W3ENCR(HZM_";"_$P(CREDCARD,"~",3))
 ;
 S $P(A,"\",55)=$$PSL^W4HZMST(HZM)
 ;
 S $P(A,"\",56)=$$EMAIL^W4HZMST(HZM)
 S $P(A,"\",57)=$$MIKUD^W4HZMST(HZM)
 S $P(A,"\",58)=$$FAX^W4HZMST(HZM)
 S $P(A,"\",59)=$$TELB^W4HZMST(HZM)
 ;
 ;
 S @TMPORD=$TR(A,"\","~")
 ;
 I $P(A,"\",6)?2N1":"2N S $P(@TMPORD,"~",35)=$P(A,"\",6) ; - ZMAN MEUSHAR
 Q
 ;
 ;
SETORD2(LV,STT2,N2) ;
 I $L($G(CMNT2)) S $P(STT2,"~",7)=CMNT2
 I $L($G(GLIST)) S $P(STT2,"~",9)=GLIST
 I $G(NPSET),$G(NP) D SBORKA2(NPSET,NP,STT2,N2) Q
 ;
 S I=$$TMPI
 S @TMPORD@(I)=STT2 D NOMOD(T2)
 ;
 I $L($G(GLIST)) D
 .S @TMPORD@(I,"GLIST")=GLIST
 ;
 S N2I(N_"-"_CDT_"-"_N2)=$$IND(I)
 Q
 ;
 ;
W4HZM I $D(%ARG("GLORD")) S W4HZM=%ARG("GLORD") Q
 N GLORD D GLORD^W4HZMST S W4HZM=GLORD
 Q
TMPORD I $G(TMPORD)="" S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
NOMOD(ST0)
 S $P(@TMPORD@(I),"~",12)=$P(ST0,"\",10)
 S $P(@TMPORD@(I),"~",13)="HZ"
 Q
 ;
CDCMNT(CD,CMNT) ;  CMNT --> CD
 I $G(CD)=""!($G(CMNT)="") Q ""
 N CDCMNT S CDCMNT=""
 S CMNT=$$SPA^%L1FRM(CMNT)
 N GLH S GLH=$$^W4GL("P1CODH")
 N N S N="" F  S N=$O(@GLH@(N)) Q:N=""  D  Q:$L(CDCMNT)
 .I $$SPA^%L1FRM($G(^(N)))=CMNT S CDCMNT=N
 I CDCMNT,'$D(@$$^W4GL("P1EZH")@(CD,CDCMNT)) D
 .N SUG S SUG=$$SUG^W4P(CD) I 'SUG S CDCMNT=0 Q
 .I '$D(@$$^W4GL("P1EZHK")@(SUG,CDCMNT)) S CDCMNT=0
 I CDCMNT="" S CDCMNT=0
 Q CDCMNT
 ;
 ;
CLMANA(CMNT) ;
 I '$L($G(CMNT)) Q ""
 N N,MANA S MANA=""
 I '$D(MN) D MN^W4MANA
 ;
 S N="" F  S N=$O(MN(N)) Q:N=""  I $L(MN(N)) D  Q:MANA
 .I CMNT[MN(N) D
 ..S MANA=N ;
 ..S CMNT=$$RPL^%L1FRM(CMNT,MN(N),"")
 Q CMNT_"\"_MANA
 ;
 ;
SET(CD,CDT) ;
 I $G(CD)=""!($G(CDT)="") Q 0
 N GL S GL=$$GLEZ(CD)
 I GL="" Q 0
 N SET,OK S OK=0 ;-- SET="A"+NSET
 S SET="" F  S SET=$O(@GL@(CD,SET)) Q:SET=""  D  Q:OK
 .Q:$E(SET)'="A"
 .N NSET S NSET=$E(SET,2,6) Q:NSET=""
 .I $D(@$$^W4GL("P1SETA")@(NSET,CDT)) S OK=NSET
 Q OK
 ;
SETNAME(SET) ;
 Q $P($G(@$$^W4GL("P1SETA")@(SET)),"\")
 ;
SETEXIST(I,SET) ;
 N TMPORD D TMPORD
 N A,OK S OK=0
 N I1 F I1=I:-1:1 S A=$G(@TMPORD@(I1)) Q:$P(A,"~")=0  D  Q:OK
 .I $P(A,"~",2)=("A"_SET) S OK=1
 Q OK
 ;
TMPSET S TMPSET="^[$$^W3MAIN]TMPSET($$^%W1JB)"
 Q
 ;
SBORKA(CD,SET,STT) ; --> NPSET,NP
 N TMPSET,CDT,CMNTT D TMPSET
 S CDT=$P(STT,"~",2) Q:CDT=""
 S NPSET=$$NPSET(CD,SET) Q:NPSET=""
 S NP=$G(@$$^W4GL("P1SETA")@(SET,CDT)) Q:NP=""
 I '$D(@TMPSET@(NPSET)) S @TMPSET@(NPSET)=SET
 S @TMPSET@(NPSET,NP)=STT
 S @TMPSET@(NPSET,NP,"IND")=N_"-"_$P(STT,"~",2)
 Q
 ;
NPSET(CD,SET) ;
 N GL S GL=$$GLEZ(CD) I GL="" Q ""
 I '$D(@GL@(CD,"A"_SET)) Q ""
 Q +$G(@GL@(CD,"A"_SET))
 ;
SBORKA2(NPSET,NP,STT2,N2)
 N IND S IND=$O(@TMPSET@(NPSET,NP,9999),-1)+1
 S @TMPSET@(NPSET,NP,IND)=STT2
 S @TMPSET@(NPSET,NP,IND,"IND")=N_"-"_$P($G(@TMPSET@(NPSET,NP)),"~",2)_"-"_N2
 Q
 ;
 ;
SETSET ;
 N SET,NP,NP2,STT,STT2,CDT,NPSET
 D TMPSET,TMPORD
 N LAST,IND
 S NPSET="" F  S NPSET=$O(@TMPSET@(NPSET)) Q:NPSET=""  D
 .S SET=$G(^(NPSET)) Q:SET=""
 .S I=$$TMPI,@TMPORD@(I)="1~A"_SET_"~"_$$SETNAME(SET) D SETNOMOD(I)
 .S NP="" F  S NP=$O(@TMPSET@(NPSET,NP)) Q:NP=""  D
 ..N STT S STT=$G(^(NP))
 ..I '$O(@TMPSET@(NPSET,NP,"")) D SETST(STT,1) D  Q
 ...S IND=$G(@TMPSET@(NPSET,NP,"IND"))
 ...I IND D
 ....S LAST=$O(@TMPORD@(9999),-1)
 ....S N2I(IND)=$$IND(LAST)
 ..S NP2="" F  S NP2=$O(@TMPSET@(NPSET,NP,NP2)) Q:NP2=""  I NP2 D
 ...N STT2 S STT2=$G(^(NP2)) D SETST(STT2,2)
 ...S IND=$G(@TMPSET@(NPSET,NP,NP2,"IND"))
 ...I IND D
 ....S LAST=$O(@TMPORD@(9999),-1)
 ....S N2I(IND)=$$IND(LAST)
 ;
 K @TMPSET
 Q
 ;
 ;
SETST(STT,UR) ;
 N GLIST
 S I=$$TMPI
 ;
 N ST S ST=$P(STT,"~",1,6)_"~~"_$P(STT,"~",8,13)
 S GLIST=$$SPA^%L1FRM($P(ST,"~",9))
 S $P(ST,"~",9)=""
 S $P(ST,"~",13)="HZ"
 ;
 I $P(ST,"~",2)["-C",$P($G(@TMPORD@(I-1)),"~",2)["-C" Q
 ;
 S @TMPORD@(I)=ST
 I $L(GLIST) S @TMPORD@(I,"GLIST")=GLIST
 ;
 N CMNTT S CMNTT=$P(STT,"~",7)
 S CMNTT=$$CLMANA(CMNTT)
 ;
 D SETMANA("CMNTT",I)
 ;
 I $$LENCMNT(CMNTT) D
 .N CDT S CDT=$P(STT,"~",2)
 .I $P($G(@TMPORD@(I)),"~",2)[(CDT_"-C") Q
 .S I=$$TMPI
 .S @TMPORD@(I)=$P(STT,"~")_"~"_CDT_"-C"_$$CDCMNT(CDT,CMNTT)_"~"_$$CLR(CMNTT)
 .S $P(^(I),"~",12)=$P(STT,"~",12)
 .S $P(^(I),"~",13)="HZ"
 ;
 Q
 ;
 ;
GLEZ(CD) ;
 N GL S GL=""
 I $D(@$$^W4GL("P1EZA")@(CD)) S GL=$$^W4GL("P1EZA")
 I $D(@$$^W4GL("P1EZT")@(CD)) S GL=$$^W4GL("P1EZT")
 Q GL
 ;
SETNOMOD(I) ;
 S $P(@TMPORD@(I),"~",12)="@@@+"
 S $P(@TMPORD@(I),"~",13)="HZ"
 Q
 ;
SETNOMODT(STR,T) ;
 S $P(@STR,"~",12)=$P(T,"\",10)
 ;;W "STR="_STR,!
 S $P(@STR,"~",13)="HZ"
 Q
 ;
CLR(TXT) ; -- DEL ; MEUTARIM
 N I,TXT1,FL
 S TXT1="",FL=0
 F I=1:1:$L(TXT) D
 .S FL=$S($E(TXT,I)=";":FL+1,1:0)
 .Q:FL>1
 .S TXT1=TXT1_$E(TXT,I)
 Q TXT1
 ;
 ;
CHKORD(HZM) ;
 N LAST,LAST0
 Q:$G(HZM)<1
 S LAST=$$COLSH0^W4HZMST(HZM)
 S LAST0=$$COLSH0^W4HZMST(HZM,$$^W4GL("P1HZ0"))
 I LAST<(LAST0-1) D
 .M @$$^W4GL("P1HZER")@(HZM)=@$$^W4ORD@(HZM)
 .S @$$^W4GL("P1HZER")@(HZM,"W4GETHZ")=$ZD($H,"DD.MM.YY  24:60")
 .M @$$^W4ORD@(HZM)=@$$^W4GL("P1HZ0")@(HZM)
 .K @$$^W4ORD@(HZM,"S")
 Q
 ;
SETMANA(%AAA,I) ;
 N MANA I $G(@%AAA)="" Q
 S MANA=$P(@%AAA,"\",2),@%AAA=$P(@%AAA,"\")
 S MANA=$$MANA($G(CD),MANA)
 S @TMPORD@(I,"MANA")=MANA
 Q
 ;
MANA(CD,MANA) ;
 ;
 I MANA D
 .I $$NOROMA^W4PRM,$G(CD),$$D^W4EZT(CD),MANA,MANA'["T" S MANA=MANA_"T"
 Q MANA
 ;
LENCMNT(CMNT) ;
 Q $L($TR($G(CMNT)," ",""))
 ;
IND(I) ;
 I $$CDSTC^W3HZMST(JB,I,TMPORD) S I=I-1
 Q I
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GETMLY
W4GETMLY(PAR,DTIT,PR) ; ITRA ; [ 27.10.23 05:27 ] [ 13.10.16 08:20 ] [ 31.01.14 15:48 ] 
 N (JB,%ARG,PAR,DTIT,PR)
 S DTIT=$G(DTIT)
 I DTIT="" S DTIT=+$H
 I $L(DTIT)>5,DTIT["."!(DTIT["/") S DTIT=$$^%L1DC(DTIT,3)
 S PR=$G(PR)
 I PR="I" S PR=1
 I PR="O" S PR=2
 I PR="Z" S PR=3
 I PR="U" S PR=4
 ;
 N IT
 I $G(PAR)="" Q ""
 ;
 I '$G(DTIT) D  Q IT
 .N A S A=$G(@$$^W4GL("W4ML")@(PAR))
 .S IT=$$IT(A,PR)
 ;
 N SIT,GLMLY S SIT=0
 S GLMLY=$$^W4GL("W4MLY")
 S DT="" F  S DT=$O(@GLMLY@(DT)) Q:DT=""  Q:DT>DTIT  D
 .S SIT=SIT+$$IT($G(@GLMLY@(DT,PAR)),PR)
 Q SIT
 ;
 ;
IT(A,PR) ;
 I '$G(PR) Q $P(A,"*")+$P(A,"*",4)-$P(A,"*",2)-$P(A,"*",3)
 Q $P(A,"*",PR)
 
 

W4GETMSD
W4GETMSD(STAM) ; [ 26.01.11 17:07 ] [
 I $G(%ARG("MSD")) Q %ARG("MSD")
 Q $$GET^%W1PRM("MSD")

W4GETORD
W4GETORD(ORD) ; [ 28.03.10 09:45 ] [
 I '$D(@$$^W4ORD@(ORD)) Q
 N HZSCR
 I $$^W4MSL($$NMB^W4HZMST(ORD)) S HZSCR="P1HZ"
 I $$^W4MSD($$NMB^W4HZMST(ORD)) S HZSCR="P1HZMS"
 D GA^W4SCREF(HZSCR,$$^W4ORD_"("_ORD_")")
 Q

W4GETPRN
W4GETPRN ; [ 30.04.23 10:06 ] [ 01.01.17 00:19 ] [ 26.10.16 13:37 ] 
 K MPRN
 N PLUK,N,PORT S PLUK=$$^W4GL("PLUK")
 ;
 S N="" F  S N=$O(@PLUK@(N)) Q:N=""  D
 .I $G(@PLUK@(N,"LP")) D
 ..S PORT=^("LP")
 ..S MPRN(PORT)=$$TV^%W1DICT($$^%W1LNG,"POSPRN",N)
 ..S MPRN(PORT,"SUG")=$G(@PLUK@(N,"LP","SUG"))
 ;
 I $$MDPMSL^W4PRM>2 D
 .N MDPMSL S MDPMSL=$$MDPMSL^W4PRM
 .N I F I=1:1:$L(MDPMSL,",") D
 ..S PORT=$P(MDPMSL,",",I)
 ..S:PORT<-1 PORT=-PORT
 ..S MPRN(PORT)=$$TV^%W1DICT($$^%W1LNG,"DSPHPRN")
 ..S MPRN(PORT,"SUG")=$$MDPS^W4MDP(PORT)
 ;
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S PORT=$P(A,"\",3) Q:PORT=""
 .S PRNAME=$P(A,"\",4)
 .S MPRN(PORT)=PRNAME
 .S MPRN(PORT,"SUG")=$P(A,"\")
 ;
 I $G(@$$^W4GL("LEV")@("LP")) D
 .S PORT=$G(^("LP"))
 .S MPRN(PORT)=$$TV^%W1DICT($$^%W1LNG,"PRESENTWATCH")
 .S MPRN(PORT,"SUG")=$$MDPS^W4MDP(PORT)
 Q
 
 
 
 

W4GETSUM
W4GETSUM(JB,PRM,GL) ; [ 07.09.25 12:54 ] [ 23.07.25 14:46 ] [ 12.11.24 18:43 ] 
 D GL(JB)
 ;
 N TOT S TOT=$$TOTORD(JB,"",GL)
 N HNH S HNH=$$HNH(JB)
 N DMSH S DMSH=$$DMSH(JB,TOT)
 ;
 I $G(PRM) D
 .D PUT(JB,"TSHL",$J(TOT-HNH+DMSH,2,2),GL)
 .D PUT(JB,"DMSH",DMSH,GL)
 .D PUT(JB,"HNH",$J(HNH,2,2),GL)
 ;
 Q $J(TOT,2,2)_";"_HNH_";"_DMSH_";"_$$TOTQN(JB,GL,0)_";"_$J(TOT-HNH+DMSH,2,2)
 ;
 ;
TOTORD(JB,PR,GL,BG) ; -- PR="D" - SUM TO DISCOUNT
 D GL(JB)
 N I,SUM,AHST,AHST1,SUMST,NOTSFMVC,QN,MH,NOTSF,MSMB,KDISC0,KDISC1
 S SUM=0,AHST=0,AHST1="",NOTSF=0,KDISC0=1
 N QN0 S QN0=1
 ;
 S I=$G(BG) F  S I=$O(@GL@(I)) Q:I=""  I I D
 .N A,CD S A=$G(^(I)),CD=$$CD(A)
 .
 .I $$LV(A)=0 D
 ..S AHST=$P(A,"~",6),NOTSFMVC=$P(A,"~",8),AHST1=0,NOTSF=0
 ..S KDISC0=(100-AHST)*.01
 ..I $$^W4PRTBH(CD) S KDISC0=1
 ..S KDISC1=1
 .
 .I $$LV(A)=1 S AHST1=$P(A,"~",6)
 .
 .I CD["-C" Q
 .I CD["-H" Q
 .I $E(CD)="A" Q
 .
 .N SMB I $G(PR)="D",'$D(MSMB(CD)) S MSMB(CD)=$$SMB^W4BLNMVC(CD)
 .
 .I $G(PR)="D",$$ISNUM^%L1FRM(CD),$L($G(MSMB(CD))) D  Q
 ..I $$LV(A)=0,$$TSFBHNH^W4PRM S NOTSF=1
 .
 .I $G(PR)="D",$$LV(A),$$ISNUM^%L1FRM(CD),NOTSF Q
 .I $G(PR)="D",$$^W4PRTBH(CD) Q
 .
 .S QN=$$QNMH(A) I $$LV(A)=0 S QN0=QN
 .I $$^W4AIN S QN=$$ITRAST^W3HZMST(JB,I)
 .S MH=$$MHP(A)
 .S SUMST=MH*QN
 .;;W "A="_A,! ; ***
 .;;W "QN="_QN_" MH="_MH_" SUMST="_SUMST,!! ; ***
 .
 .I '$$LV(A) S KDISC=KDISC0
 .
 .I $$LV(A) D
 ..I $$^W4PRTBH(CD) S KDISC=1 Q
 ..I $G(NOTSFMVC) S KDISC0=1
 ..S KDISC1=(100-AHST1)*.01
 ..S KDISC=KDISC0*KDISC1
 .
 .S SUMST=SUMST*KDISC
 .
 .S SUM=SUM+SUMST
 .;;W "SUMST="_SUMST_"  SUM="_SUM,!
 Q $J(SUM,2,2)
 ;
 ;
GL(JB) ;
 I $G(GL)'="",$G(GL)'["(" S GL=GL_"(JB)" Q
 ;
 S JB=+JB
 I $G(GL)="" D
 .S GL=$$^W4TMPORD Q:$$CSR^W4DLVCSR
 .I '$D(@GL),$D(@$$^W3ORD(JB)@(+JB)) S GL=$$^W3ORD_"(JB)"
 Q
 ;
 ;
LV(A)
 Q $P(A,"~")
 ;
 ;
HNH(JB) ;
 D GL(JB)
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I HZM>0,$$CLOSE^W4HZMST(HZM)!'$G(@$$^W4TMPORD) Q $P($G(@$$^W4ORD@(HZM)),"\",8)
 ;
 N HNHAH,HNH,HNH0
 S HNHAH=$$AHUZ(JB)
 S HNH=0
 ;
 I HNHAH?1N.E S HNH=$J($$TOTHN(JB)*HNHAH*.01,2,2)
 ;
 I $$D^W3TMPORD(JB)=11 D  Q HNH
 .S HNH=HNH+$$SHNH1T
 .I $$^W4ISORD(HZM) S HNH=HNH+$$SLKHNH(HZM)
 ;
 I $$^W4ISORD(HZM) D
 .S HNH=HNH+$$SLKHNH(HZM)+$$SHNH1(HZM)
 ;
 Q $J(HNH,2,2)
 ;
 ;
TOTHN(JB) ;
 Q $$TOTORD(JB,"D")
 ;
DMSH(JB,TOT) ;
 D GL(JB)
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I HZM>0,$$CLOSE^W4HZMST(HZM)!'$G(@$$^W4TMPORD) Q $P($G(@$$^W4ORD@(HZM)),"\",9)
 I $$DMSHMSD^W3HZMST(JB)["!" Q $$DMSHMSD^W3HZMST(JB)
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 N DMSAH S DMSAH=$$DMSAH^W3HZMST(JB)
 I NMB,$$^W4MSD(NMB),DMSAH'?1N.E Q $$DMSHMSD^W3HZMST(JB)
 ;
 S DMSH=$$DMSH^W3HZMST(JB,GL)
 ;
 Q DMSH ;
 ;
 ;
CD(A) ;
 Q $P(A,"~",2)
 ;
MHP(A) ;
 Q $P(A,"~",4)
 ;
AHUZ(JB,GL) ;
 D GL(JB)
 Q $P($G(@GL),"~",38)
 ;
SLKHNH(HZM) ;
 N SHNH,LKHNH S SHNH=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S LKHNH=$$GET^W4GTVCH(HZM,N,"ASR","LKHNH")
 .S SHNH=SHNH+LKHNH
 Q SHNH
 ;
SHNH1(HZM) ;
 N SHNH1,HNH1 S SHNH1=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  D
 .S HNH1=+$G(^(N))
 .S SHNH1=SHNH1+HNH1
 Q SHNH1
 ;
SHNH1T(HZM) ;
 N SHNH1,HNH1 S SHNH1=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@("CB","HNH1",N)) Q:N=""  D
 .S HNH1=+$G(^(N))
 .S SHNH1=SHNH1+HNH1
 Q SHNH1
 ;
 ;
PUT(JB,RKV,VL,GL) ;
 D PUT^W3HZMST(JB,RKV,VL,GL)
 Q
 ;
TOTQN(JB,GL,PR) ;
 Q $$TOTQN^W3HZMST(JB,$G(GL),$G(PR))
 ;
 D GL(JB)
 N I,SUM S SUM=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .I $G(PR)=0,$$LV(A) Q
 .N QN S QN=$$QNMH(A)
 .N CD S CD=$$CD(A)
 .;;I $$MSK^W4P(CD) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .I $P(QN,".",2) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .S SUM=SUM+QN
 Q SUM
 ;
QNMH(A) ;
 N QN S QN=$P(A,"~",5)
 I QN["*" S QN=$$QNMULTY(QN)
 Q $$QNPIZZA(QN)
 ;
QNPIZZA(QN) ;
 I QN'["+" Q +QN
 N QNMH S QNMH=0
 I QN["+" D
 .N J F J=1:1:10 I $E(QN,J)="+" S QNMH=QNMH+1
 Q QNMH
 ;
QNMULTY(QN) ;
 I $G(QN)'["*" Q $$QNPIZZA(QN)
 N QN1,QN2,QN3 S QN1=$P(QN,"*"),QN2=$P(QN,"*",2)
 S QN3=$P(QN,"*",3) I 'QN3 S QN3=1
 I QN1["+" S QN1=$$QNPIZZA(QN1)
 I QN2["+" S QN2=$$QNPIZZA(QN2)
 I QN1<0,QN2<0 S QN2=-QN2
 Q QN1*QN2*QN3
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GFILTR
W4GFILTR ; [ 30.06.13 15:24 ] [ 29.06.13 17:51 ] [
 N (JB,%ARG,%REM)
 D MMRKZ^W4MRKG("")
 W "<div dir=""RTL"">",!
 I '$G(%ARG("NOMRK")) D
 .W "<table>"
 . W "<tr>"
 .  S K=0
 .  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  .S K=K+1
 .  .W "<td>"_N_" "_$$H2U^%L1FRM(MMRKZ(N))_" "
 .  . S CHECKED=$$CHECKED(K)
 .  . W "<input type=""checkbox"" name=""mrkz"" "_CHECKED_" >"
 .  .W "</td>",!
 .  ;
 . W "</tr>",!
 .W "</table>"
 ;
 I '$G(%ARG("RKZ")) D
 .W "<table>"
 . W "<tr>"
 .  F I=1:1:7 D
 .  .W "<td>"
 .  . W $$^%W1DICT("DAY")_" "_$$^%W1DICT("DAY"_I)
 .  . W "<input type=""checkbox"" name=""days"" "_$$CHECKED1(I)_" >"
 .  .W "</td>"
 .  ;
 . W "</tr>",!
 .W "</table>",!
 ;
 W "<table>",!
  W "<tr>",!
   I '$G(%ARG("NOSIK")) D SIK
   D RIKUZ
   D SHOW
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
CHECKED(K) ;
 I $G(%ARG("MRKZ"))="" Q "checked=""checked"" "
 I ("-"_$G(%ARG("MRKZ"))_"-")[("-"_K_"-") Q "checked=""checked"" "
 Q ""
 ;
CHECKED1(I) ;
 I $G(%ARG("DAYS"))="" Q " checked=""checked"" "
 I $G(%ARG("DAYS"))[I Q " checked=""checked"" "
 Q ""
 ;
CHECKED2(STAM) ;
 I $G(%ARG("RKZ")) Q " checked=""checked"" "
 Q ""
 ;
CHECKED3(STAM) ;
 I $G(%ARG("SIK")) Q " checked=""checked"" "
 Q ""
 ;
SIK ;
   W "<td>"
      W $$^%W1DICT("TOTALSONLY")
      W "<input type=""checkbox"" id=""sik"" "_$$CHECKED3_" >"
   W "</td>",!
 Q
RIKUZ ;
   W "<td>"
      W $$^%W1DICT("CONCPERDATE")
      W "<input type=""checkbox"" id=""rkz"" "_$$CHECKED2_" >"
   W "</td>",!
 Q
SHOW ;
   W "<td>"
      D ROUNDBUT^%W1JS("SHOW",$$^%W1DICT("SHOW"),"ShowGFltr()","color:green","wh,22,,,11")
   W "</td>",!
 Q

W4GFPREP
W4GFPREP ; [ 29.05.13 13:33 ] [ 26.05.13 21:38 ] [
 N (JB,%ARG,%REP)
 D ^%L1C
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D INIT,ZR
 ;
 S MRKZ=1000 F  S MRKZ=$O(@MSDR@(MAINMRKZ,MRKZ)) Q:MRKZ=""  I MRKZ?4N D
 .S UCI=$G(@GUCI@(MRKZ)) Q:UCI=""
 .S $ZGBLDIR=UCI
 .S DIRGIB=$$DIRGIB(MRKZ)
 .S LASTDT=$O(^Z($H+1),-1)
 .F DT=LASTDT:1:+$H D
 ..W "MRKZ="_MRKZ_"  "_$ZD(DT,"DD.MM.YY"),!
 ..D RESTZ^P1DBREST(DT,DT)
 ..D CRDOCH(MRKZ,DT)
 Q
 ;
CRDOCH(MRKZ,DT) ;
 N (MRKZ,DT,NEWCRDOCH)
 D INIT,ZR
 ;
 K KAMSUM I $D(NEWCRDOCH) K ^DOHMRK(DT,MRKZ),@MAINREP@(DT,MRKZ)
 S DAT=$$^%L1DC(DT,2)
 ;
 I '$D(^Z1(DAT)) Q
 I $D(@MAINREP@(DT,MRKZ)) Q
 D ^P1SUM1
 M ^DOHMRK(DT,MRKZ)=KAMSUM
 M @MAINREP@(DT,MRKZ)=^DOHMRK(DT,MRKZ)
 Q
 ;
INIT ;
 S MSDR="^|$$^W3MAIN|W3MSDR"
 S GUCI="^|$$^W3MAIN|UCI"
 S MAINMRKZ=1000
 S MAINDIR=$G(@GUCI@(MAINMRKZ)) Q:MAINDIR=""
 S MAINREP="^|"""_MAINDIR_"""|MRK2WEB"
 Q
 ;
ZR ;
 S $ZROUTINES="/usr/local/mumps/grf1000"
 Q
 ;
DIRGIB(MRKZ) ;
 Q "/usr/local/mumps/"_MRKZ_"/jour/"

W4GFRCV
W4GFRCV ; [ 27.06.13 10:36 ] [ 07.06.13 14:31 ] [ 06.06.13 18:16 ]
BG ;
 N FLIN,MSD,UCI,OKP,OKL
 S $ZT="ZG "_$ZL_":ER^W4GFRCV"
 ;
 S $ZGBLDIR=$$^W4GFUCI
CYC I $G(^[$$^W3MAIN]STLOOP("W4GFRCV")) H
 ;
 D RCV("MRK2WEB","MRK2WEB")
 D RCV("Z2WEB","Z2WEB")
 ;
END S ^[$$^W3MAIN]W4GFUCI=$ZD($H,"DD.MM.YY  24:60")_"\"_$J
 H 2 G CYC
 ;
 ;
RCV(NMFL,IND)
 N FLIN,MSD,UCI
 ;
 S FLIN=$G(^[$$^W3MAIN]PL("SND","DIRCV"))_NMFL_"_*"
 S FLIN=$ZSEARCH(FLIN) I FLIN'[(NMFL_"_") G RCVE
 ;
 ZSY "rm -f "_$G(^[$$^W3MAIN]PL("SND","DIRCV"))_NMFL_"A_*"
 ZSY "rm -f "_$G(^[$$^W3MAIN]PL("SND","DIRCV"))_NMFL_"E_*"
 ;
 S UCI=$$^W4GFUCI
 ;
 S OKP=$$PRIEM^W3RCVRSD(FLIN,UCI)
 ;
 I 'OKP D ERR(-2,IND,FLIN) G RCVE
 ;
RCVE ;
 Q
 ;
 ;
ER D SVER^%L1X
 H
 ;
ERR(CDER,IND,FL) ;
 S ^[$$^W3MAIN]W4GFRCVER(+$H,$P($H,",",2))=$G(CDER)_"\"_IND_"\"_FL
 Q

W4GFUCI
W4GFUCI(STAM) ; [ 31.05.13 18:27 ] [
 Q $G(^[$$^W3MAIN]UCI(1000))
NAME(STAM) ;
 Q $G(^[$$W4GFUCI]MRKZ(1000))

W4GGLKEY
W4GGLKEY(CALLBACK) ; [ 04.09.22 14:29 ] [ 27.03.22 18:47 ] [ 22.03.21 19:14 ] 
 N KEY S KEY=$G(@$$^W4PRM@("GGLKEY"))
 I $G(CALLBACK)="" S CALLBACK="myMap"
 I $L(KEY),$E(KEY,1,6)'="https:" D
 .S KEY="https://maps.googleapis.com/maps/api/js?key="_KEY_"&language=iw&libraries=geometry,places&callback="_CALLBACK
 ;
 I KEY="" S KEY="https://maps.googleapis.com/maps/api/js?key=AIzaSyApyJhT6NQb5Iv-llf5ACH1-LjXmzpov_0&language=iw&libraries=geometry,places&callback="_CALLBACK
 Q KEY
 
 
 
 

W4GIB
W4GIB(ACT,GL,IND) ; [ 27.09.26 14:58 ] [ 01.07.25 10:20 ] [ 20.02.25 13:27 ] 
 N GLGB
 I $E(GL,$L(GL))'[")" S GLGB=GL_"("
 E  S GLGB=$E(GL,1,$L(GL)-1)_","
 N J F J=1:1:$L(IND,";") D
 .S GLGB=GLGB_""""_$P(IND,";",J)_""","
 S GLGB=$E(GLGB,1,$L(GLGB)-1)_")"
 ;
 I ACT="K" D ^%S2GLSV(GLGB,$$^W4FGIB,"K") Q
 D ^%S2GLSV(GLGB,$$^W4FGIB)
 Q
 ;
 ;
RCVGIB(JB,GL) ;
 N $ZT S $ZT="K @$$^W4flag(""RCVGIB"") S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(GL)="" S GL=$$^W4GL("RCVGIB")
 N RCVGIB,TM,SEC,OLDTIME,PR,glflag
 S glflag=$$^W4flag_"(""RCVGIB"")"
 N SHR S SHR=0
RCVGIBCYC ;
 I $$^%L1FLAG(glflag) Q
 I '$G(@glflag) S @glflag=$J
 I $D(@$$^W4GL("STLOOP")@("PC")) K @glflag Q
 ;
 S SHR=SHR+1
 S ^SHR=SHR
 I '(SHR#100) D
 .ZSY "/home/gtmuser/igib/scp4iash"
 .ZSY "/home/gtmuser/gib/scp4padash"
 .ZSY "/home/gtmuser/gib/scp4yaash"
 .ZSY "/home/gtmuser/gib/scp4ash"
 ;
 S RCVGIB=$G(@GL) I RCVGIB=""!(RCVGIB="00:00") G RCVGIBEND
 ;
 S PR=0
RCVGIBCYC1 ;
 S TM=RCVGIB*3600+($P(RCVGIB,":",2)*60)
 S SEC=$P($H,",",2)
 ;
 I SEC<TM G RCVGIBEND
 I SEC>(TM+300) G RCVGIBEND
 ;
 S OLDTIME=$G(@GL@("LAST"))
 I $$DIF^%L1TIME($H,OLDTIME)<30 G RCVGIBEND
 ZSY "/home/gtmuser/igib/scp4iall"
 ZSY "/home/gtmuser/gib/scp4padgib"
 ZSY "/home/gtmuser/gib/scp4yagib"
 ZSY "/home/gtmuser/gib/scp4all"
 S @GL@($ZD($H,"YYMMDD 24:60"))=$ZSY
 S @GL@("LAST")=$H
RCVGIBEND H 20 G RCVGIBCYC
 ;
 ;
GIB(JB,GL) ;
 N $ZT S $ZT="K @$$^W4flag(""W4GIB"") S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N GIB,TM,SEC,OLDTIME,glflag
 I $G(GL)="" S GL=$$^W4GL("W4GIB")
 S glflag=$$^W4flag_"(""W4GIB"")"
 F  Q:$$^%L1FLAG(glflag)  Q:$G(@$$^W4GL("STLOOP")@("PC"))  D GIBCYC H 60
 K @glflag
 Q
 ;
GIBCYC ;
 ZSY "cp /opt/Modularity/SPI/bin/AshraitDB.db /home/gtmuser/ash.db"
 N PATH S PATH=$$PATHGB^W4FGIB
 N YYMMDD S YYMMDD=$ZD($H,"YYMMDD")
 ZSY "cp "_PATH_"\#J"_YYMMDD_" /home/gtmuser/GIBJ"
 ;
 S GIB=$G(@GL) I GIB=""!(GIB="00:00") S GIB="02:00"
GIBCYC1 S TM=GIB*3600+($P(GIB,":",2)*60)
 S SEC=$P($H,",",2)
 ;
 I SEC<TM G GIBEND
 I SEC>(TM+500) G GIBEND
 ;
 S OLDTIME=$G(@GL@("LAST"))
 I $$DIF^%L1TIME($H,OLDTIME)<30 G GIBEND
 K ^pc,^pc1
 D ^W4BCKUP(JB)
 S @GL@($ZD($H,"YYMMDD 24:60"))=$ZSY
 S @GL@("LAST")=$H
 I $$SUPER^W3PRM,$P($H,",",2)<(6*3600) D CRSUG^W4HZTFR
GIBEND Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GIBDAT
W4GIBNET(DT1,DT2) ; [ 14.07.26 08:58 ] [ 13.05.26 19:46 ] [ 12.05.26 20:48 ] 
 N (DT1,DT2)
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 S GDIR=$ZGBLDIR
 D IND
 S $ZT="G ER^W4GIBNET"
 U 0 W !,"--- GIBORD",!
 D GIBORD
 ;
 U 0 W !,"--- GIBMSDR",!
 D GIBMSDR
 ;
 U 0 W !,"--- GIBMSD",!
 D GIBMSD
 ;
 U 0 W !,"--- GIBDT",!
 D GIBDT
 ;
 U 0 W !,"--- GIBALL",!
 D GIBALL
 S ^|$$^W3MAIN|W4GIBNET(+$H,IND)="OK\"_$ZD($H,"DD.MM.YY 24:60")
 ;
 ;
 U 0 W !,"--- PAPDZ",!
 D PAPDZ
 ;
 U 0 W !,"--- ALEXCC",!
 D ALEX
 ;
 U 0 W !,"--- TZCC",!
 ;;D TZCC; ***
 S $ZGBLDIR=GDIR
 Q
 ;
 ;
GIBORD ;
 N FILE,IND,DT,ORD,GL,GLL,GLR,GLI,GLH,CODE,MSD,ASM,ASMU
 D IND
 S FILE="/home/www2order/gib/NGIBO"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 N MO
 F DT=DT1:1:DT2 D
 .F GL="W3LINKDR","W3LINKD" D
 ..S GLL="^"_GL
 ..
 ..S ORD="" F  S ORD=$O(@GLL@(DT,ORD)) Q:ORD=""  D
 ...I $D(MO(ORD)) Q
 ...S GLO="^W3ORD("""_ORD_""")"
 ...N A S A=$G(@GLO) Q:A=""
 ...S MSD=$G(^W3ORD(ORD,"MSD"))
 ...D ^%S3GLSV(GLO,FILE)
 ...S MO(ORD)=""
 ...D
 ....N ASM,ASMU S ASM=$P(A,"~",60),ASMU=""
 ....I ASM["/" S ASMU=$P(ASM,"/",2)
 ....I $L(ASMU) D ^%S3GLSV("^W3LINKU("""_ASMU_""")",FILE)
 ....S ASM=$$SPA^%L1FRM(ASM)
 ....I $L(ASM),MSD D
 .....N GLH S GLH="^W3HZMLAK("""_+MSD_""","""_ASM_""")"
 .....D ^%S3GLSV(GLH,FILE)
 ...
 ...S CODE=$P(A,"~",27) I CODE?.P S CODE=$P(A,"~")
 ...I CODE,MSD,ORD D
 ....S GLI="^W3LINKI("""_CODE_""","""_MSD_""","""_ORD_""")"
 ....D ^%S3GLSV(GLI,FILE)
 ....S GLR="^W3LINKR("""_MSD_""","""_ORD_""")"
 ....D ^%S3GLSV(GLR,FILE)
 ..
 ..S GLL=GLL_"("""_DT_""")"
 ..D ^%S3GLSV(GLL,FILE)
 ; 
 C FILE
 Q
 ;
 ;
GIBMSDR ;
 D IND
 S FILE="/home/www2order/gib/NGIBR"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 S MSDR="" F  S MSDR=$O(^|$$^W3MAIN|W3MSDR(MSDR)) Q:MSDR=""  D
 .F DT=DT1:1:DT2 D
 ..F GL="W4CLKNET","W4DLVTIM","W4GAPNET","W4ITREP","W4LKTN","W4MZB","W4RSTGNET" D
 ...S GLL="^"_GL_"("""_MSDR_""","""_DT_""")"
 ...D ^%S3GLSV(GLL,FILE)
 .
 .S MSD="" F  S MSD=$O(^|$$^W3MAIN|W3MSD(MSD)) Q:MSD=""  D
 ..F DT=DT1:1:DT2 D
 ...F GL="W4NETSND" D
 ....S GLL="^"_GL_"("""_MSDR_""","""_MSD_""","""_DT_""")"
 ....D ^%S3GLSV(GLL,FILE)
 C FILE
 Q
 ;
GIBMSD ;
 D IND
 S FILE="/home/www2order/gib/NGIBM"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 S MSD="" F  S MSD=$O(^|$$^W3MAIN|W3MSD(MSD)) Q:MSD=""  D
 .F DT=DT1:1:DT2 D
 ..F GL="W4MSDMZV" D
 ...S GLL="^"_GL_"("""_MSD_""","""_DT_""")"
 ...D ^%S3GLSV(GLL,FILE)
 C FILE
 Q
 ;
GIBDT ;
 D IND
 S FILE="/home/www2order/gib/NGIBD"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 F DT=DT1:1:DT2 D
 .F GL="W4MNYALL","W4MNYZ" D
 ..S GLL="^"_GL_"("""_DT_""")"
 ..D ^%S3GLSV(GLL,FILE)
 C FILE
 Q
 ;
GIBALL ; 
 D IND
 S FILE="/home/www2order/gib/NGIBA"_$ZD($H,"YYMMDD")
 F GL="^W4KVZNET","^W4PRTNET","W4LK","W4MNLNET" D
 .S %L1GS("SV",GL)=GL
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
PAPDZ ;
 S $ZGBLDIR="/home/www2order/app/mumps/papajonsdz/papajonsdz.gld"
 D IND
 S FILE="/home/www2order/gib/NGIBPPDZ"_$ZD($H,"YYMMDD")
 D init^%L1GSEL
 K %ZG,%L1GS
 S %ZG="*" D BDK^%L1GSEL
 N N S N="" F  S N=$O(%ZG(N)) Q:N=""  D
 .I N["ITSSRV" Q
 .I N["PARCAT" Q
 .I N["ITNET" Q 
 .S %L1GS("SV",N)=""
 ;
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
ALEX ;
 S $ZGBLDIR="/home/www2order/app/mumps/alexcc/alexcc.gld"
 D IND
 S FILE="/home/www2order/gib/NGIBALX"_$ZD($H,"YYMMDD")
 F GL="*" D
 .S %L1GS("SV",GL)=GL
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
TZCC ;
 S $ZGBLDIR="/home/www2order/app/mumps/tzahicc/tzahicc.gld"
 D IND
 S FILE="/home/www2order/gib/NGIBTZCC"_$ZD($H,"YYMMDD")
 F GL="*" D
 .S %L1GS("SV",GL)=GL
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
IND ;
 I $$T^%L1TIME($H)<14 S IND=1 Q
 S IND=2
 Q
 ;
ER ;
 S $ZGBLDIR=GDIR
 W "$ZS="_$ZS,!!
 S ^|$$^W3MAIN|W4GIBNET(+$H,IND)=$ZS_"\"_$ZD($H,"DD.MM.YY 24:60")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GIBHZ
W4GIBHZ(HZM) ; [ 31.01.19 09:48 ] [ 07.11.16 18:50 ] [ 02.07.16 15:30 ] 
 J JGIB(JB,HZM)
 Q
 ;
JGIB(JB,HZM) ;
 N (JB,%ARG,HZM)
 Q:$G(HZM)<1
 N GLORD D GLORD^W4HZMST
 Q:$D(@GLORD)'=11
 ;
 L +^TMPJGIB(JB):3
 ;
 I '$D(P1DZ) D ^W4IN
 N FJ S FJ=$$^W4FGIB
 D ^%S2GLSV($$^W4GL("P1HZ")_"("_HZM_")",$$^W4FGIB)
 D ^%S2GLSV($$^W4GL("P1MLZ")_"("_HZM_")",$$^W4FGIB)
 ;
 D ^%S2GLSV($$^W4GL("P1H")_"("_P1DZ_","_HZM_")",$$^W4FGIB)
 D ^%S2GLSV($$^W4GL("P1HI")_"("_HZM_","_P1DZ_")",$$^W4FGIB)
 D ^%S2GLSV($$^W4GL("P1MOVE")_"("_P1DZ_","_HZM_")",$$^W4FGIB)
 ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I $G(NMB) D ^%S2GLSV($$^W4GL("P1HL")_"("""_NMB_""","""_HZM_""")",$$^W4FGIB)
 ;
 N HB S HB=$G(@$$^W4GL("P1HZ")@(HZM,"ETHB"))
 I HB D
 .D ^%S2GLSV($$^W4GL("P1HB")_"("_HB_")",FJ)
 .D ^%S2GLSV($$^W4GL("P1HBI")_"("_P1DZ_","_HB_")",FJ)
 ;
 N HB2A S HB2A=$G(@$$^W4GL("P1HZ")@(HZM,"ETHB2"))
 I HB2A D
 .N HB2 F II=1:1:$L(HB2A,",") D
 ..S HB2=$P(HB2A,",",II) Q:'HB2
 ..D ^%S2GLSV($$^W4GL("P1HB2")_"("_HB2_")",FJ)
 ..D ^%S2GLSV($$^W4GL("P1HB2I")_"("_P1DZ_","_HB2_")",FJ)
 ;
 S HB5=+$G(@$$^W4GL("P1HZ")@(HZM,"ETHB5"))
 I HB5 D
 .D ^%S2GLSV($$^W4GL("P1HB5")_"("_HB5_")",FJ)
 .D ^%S2GLSV($$^W4GL("P1HB5I")_"("_P1DZ_","_HB5_")",FJ)
 ;
 S TM=$G(@$$^W4GL("P1HZ")@(HZM,"ETTM"))
 I TM D
 .D ^%S2GLSV($$^W4GL("P1MSH")_"("_HZM_")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1TM")_"("_TM_")",FJ)
 .D ^%S2GLSV($$^W4GL("P1TMI")_"("_P1DZ_","_TM_")",FJ)
 .S PSL=+$P($G(@$$^W4GL("P1HZ")@(HZM,"TM")),"\") Q:'PSL
 .D ^%S2GLSV($$^W4GL("P1MSL")_"("_P1DZ_","_PSL_","_HZM_")",FJ)
 ;
 N LKHN S LKHN="" F  S LKHN=$O(@$$^W4GL("P1HL1I")@(HZM,LKHN)) Q:LKHN=""  D
 .D ^%S2GLSV($$^W4GL("P1HL2I")_"("""_HZM_""","""_LKHN_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL1")_"("""_LKHN_""","""_HZM_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL2")_"("""_LKHN_""","""_HZM_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL3")_"("""_LKHN_""","""_HZM_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL4")_"("""_LKHN_""","""_HZM_""")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HL30")_"("""_LKHN_""","""_HZM_""")",$$^W4FGIB)
 ;
 S LKHN="" F  S LKHN=$O(@$$^W4GL("P1LIMI")@(HZM,LKHN)) Q:LKHN=""  D
 .N YYMM S YYMM="" F  S YYMM=$O(@$$^W4GL("P1LIMI")@(HZM,LKH,YYMM)) Q:YYMM=""  D
 ..D ^%S2GLSV($$^W4GL("P1LIM")_"("""_LKHN_""","""_YYMM_""","""_HZM_""")",$$^W4FGIB)
 ;
 I $G(@$$^W4GL("P1HHI")@(HZM)) D
 .N A S A=$G(^(HZM)) Q:A=""
 .D ^%S2GLSV($$^W4GL("P1HH")_"("""_A_""","_HZM_")",$$^W4FGIB)
 ;
 I $G(@$$^W4GL("P1HTI")@(HZM)) D
 .N A S A=$G(^(HZM)) Q:A=""
 .D ^%S2GLSV($$^W4GL("P1HT")_"("""_A_""","_HZM_")",$$^W4FGIB)
 ;
 I $G(@$$^W4GL("M1HLI")@(HZM)) D
 .N LK S LK=$G(^(HZM)) Q:LK=""
 .D ^%S2GLSV($$^W4GL("M1HL")_"("""_LK_""","_HZM_")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("M1HLI")_"("_HZM_")",$$^W4FGIB)
 ;
 M @$$^W4GL("P1HZ0")@(HZM)=@$$^W4GL("P1HZ")@(HZM)
 S @$$^W4GL("P1HZ0")=$G(@$$^W4GL("P1HZ"))
 L -^TMPJGIB(JB)
 Q
 
 
 
 
 
 
 
 

W4GIBNET
W4GIBNET(GNSM) ; [ 14.07.26 10:20 ] [ 13.05.26 19:46 ] [ 12.05.26 20:48 ] 
 N (GNSM)
 S GDIR=$ZGBLDIR
 D IND
 S $ZT="G ER^W4GIBNET"
 U 0 W !,"--- GIBORD",!
 D GIBORD
TV1 ;
 U 0 W !,"--- GIBMSDR",!
 D GIBMSDR
 ;
 U 0 W !,"--- GIBMSD",!
 D GIBMSD
 ;
 U 0 W !,"--- GIBDT",!
 D GIBDT
 ;
 U 0 W !,"--- GIBALL",!
 D GIBALL
 S ^|$$^W3MAIN|W4GIBNET(+$H,IND)="OK\"_$ZD($H,"DD.MM.YY 24:60")
 ;
 ;
 U 0 W !,"--- PAPDZ",!
 D PAPDZ
 ;
 U 0 W !,"--- ALEXCC",!
 D ALEX
 ;
 U 0 W !,"--- TZCC",!
 ;;D TZCC; ***
 S $ZGBLDIR=GDIR
 Q
 ;
 ;
GIBORD ;
 N FILE,IND,DT,ORD,GL,GLL,GLR,GLI,GLH,CODE,MSD,ASM,ASMU
 D IND
 S FILE="/home/www2order/gib/NGIBO"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 N MO
 F DT=$H-GNSM:1:+$H D
 .F GL="W3LINKDR","W3LINKD" D
 ..S GLL="^"_GL
 ..
 ..S ORD="" F  S ORD=$O(@GLL@(DT,ORD)) Q:ORD=""  D
 ...I $D(MO(ORD)) Q
 ...S GLO="^W3ORD("""_ORD_""")"
 ...N A S A=$G(@GLO) Q:A=""
 ...S MSD=$G(^W3ORD(ORD,"MSD"))
 ...D ^%S3GLSV(GLO,FILE)
 ...S MO(ORD)=""
 ...D
 ....N ASM,ASMU S ASM=$P(A,"~",60),ASMU=""
 ....I ASM["/" S ASMU=$P(ASM,"/",2)
 ....I $L(ASMU) D ^%S3GLSV("^W3LINKU("""_ASMU_""")",FILE)
 ....S ASM=$$SPA^%L1FRM(ASM)
 ....I $L(ASM),MSD D
 .....N GLH S GLH="^W3HZMLAK("""_+MSD_""","""_ASM_""")"
 .....D ^%S3GLSV(GLH,FILE)
 ...
 ...S CODE=$P(A,"~",27) I CODE?.P S CODE=$P(A,"~")
 ...I CODE,MSD,ORD D
 ....S GLI="^W3LINKI("""_CODE_""","""_MSD_""","""_ORD_""")"
 ....D ^%S3GLSV(GLI,FILE)
 ....S GLR="^W3LINKR("""_MSD_""","""_ORD_""")"
 ....D ^%S3GLSV(GLR,FILE)
 ..
 ..S GLL=GLL_"("""_DT_""")"
 ..D ^%S3GLSV(GLL,FILE)
 ; 
 C FILE
 Q
 ;
 ;
GIBMSDR ;
 D IND
 S FILE="/home/www2order/gib/NGIBR"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 S MSDR="" F  S MSDR=$O(^|$$^W3MAIN|W3MSDR(MSDR)) Q:MSDR=""  D
 .F DT=$H-GNSM:1:+$H D
 ..F GL="W4CLKNET","W4DLVTIM","W4GAPNET","W4ITREP","W4LKTN","W4MZB","W4RSTGNET" D
 ...S GLL="^"_GL_"("""_MSDR_""","""_DT_""")"
 ...D ^%S3GLSV(GLL,FILE)
 .
 .S MSD="" F  S MSD=$O(^|$$^W3MAIN|W3MSD(MSD)) Q:MSD=""  D
 ..F DT=$H-GNSM:1:+$H D
 ...F GL="W4NETSND" D
 ....S GLL="^"_GL_"("""_MSDR_""","""_MSD_""","""_DT_""")"
 ....D ^%S3GLSV(GLL,FILE)
 C FILE
 Q
 ;
GIBMSD ;
 D IND
 S FILE="/home/www2order/gib/NGIBM"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 S MSD="" F  S MSD=$O(^|$$^W3MAIN|W3MSD(MSD)) Q:MSD=""  D
 .F DT=$H-GNSM:1:+$H D
 ..F GL="W4MSDMZV" D
 ...S GLL="^"_GL_"("""_MSD_""","""_DT_""")"
 ...D ^%S3GLSV(GLL,FILE)
 C FILE
 Q
 ;
GIBDT ;
 D IND
 S FILE="/home/www2order/gib/NGIBD"_$ZD($H,"YYMMDD")
 S FILE=FILE_"."_IND
 O FILE:(REWIND:WRITE)
 F DT=$H-GNSM:1:+$H D
 .F GL="W4MNYALL","W4MNYZ" D
 ..S GLL="^"_GL_"("""_DT_""")"
 ..D ^%S3GLSV(GLL,FILE)
 C FILE
 Q
 ;
GIBALL ; 
 D IND
 S FILE="/home/www2order/gib/NGIBA"_$ZD($H,"YYMMDD")
 F GL="^W4KVZNET","^W4PRTNET","W4LK","W4MNLNET" D
 .S %L1GS("SV",GL)=GL
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
PAPDZ ;
 S $ZGBLDIR="/home/www2order/app/mumps/papajonsdz/papajonsdz.gld"
 D IND
 S FILE="/home/www2order/gib/NGIBPPDZ"_$ZD($H,"YYMMDD")
 D init^%L1GSEL
 K %ZG,%L1GS
 S %ZG="*" D BDK^%L1GSEL
 N N S N="" F  S N=$O(%ZG(N)) Q:N=""  D
 .I N["ITSSRV" Q
 .I N["PARCAT" Q
 .I N["ITNET" Q 
 .S %L1GS("SV",N)=""
 ;
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
ALEX ;
 S $ZGBLDIR="/home/www2order/app/mumps/alexcc/alexcc.gld"
 D IND
 S FILE="/home/www2order/gib/NGIBALX"_$ZD($H,"YYMMDD")
 F GL="*" D
 .S %L1GS("SV",GL)=GL
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
TZCC ;
 S $ZGBLDIR="/home/www2order/app/mumps/tzahicc/tzahicc.gld"
 D IND
 S FILE="/home/www2order/gib/NGIBTZCC"_$ZD($H,"YYMMDD")
 F GL="*" D
 .S %L1GS("SV",GL)=GL
 S %L1GS("TO")=FILE
 D ^%L1GS
 Q
 ;
IND ;
 I '$G(GNSM) S GNSM=31
 I $$T^%L1TIME($H)<14 S IND=1 Q
 S IND=2
 Q
 ;
ER ;
 S $ZGBLDIR=GDIR
 W "$ZS="_$ZS,!!
 S ^|$$^W3MAIN|W4GIBNET(+$H,IND)=$ZS_"\"_$ZD($H,"DD.MM.YY 24:60")
 Q
 ;
 ; 
TV ; 
 S GDIR=$ZGBLDIR
 D IND
 S $ZT="G ER^W4GIBNET"
 G TV1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GIO
W4GIO(STAM) ; [ 02.09.11 08:02 ] [ 25.11.08 06:49 ] [
 ;;Q "^[$$^W3MAIN]W4INOUT"
 Q "^[$$^W3MAIN]W4INOUT($$^W4DZ)"

W4GL
W4GL(GL,JBB) ; [ 04.06.26 06:14 ] [ 05.12.21 09:06 ] [ 14.02.21 05:28 ] 
 I GL["$$^W3MAIN" Q $S($E(GL)="^":GL,1:"^"_GL)
 I $E(GL,1,2)="^|" Q GL
 I $E(GL,1,2)="^[" Q GL
 S:$E(GL)="^" GL=$E(GL,2,200)
 I $G(JBB)="M" Q "^|"""_$$^W3MAIN_"""|"_GL
 I $G(JBB) N JB S JB=JBB
 N JB0 S JB0=+$G(JB) N JB S JB=$P(JB0,".")
 I '$G(JB) Q "^|"""_$$^W3MAIN_"""|"_GL
 N UCI S UCI=$$^%W1UCI(+JB)
 N MAIN S MAIN=$$^W3MAIN
 I $G(^[MAIN]P1PRM("MM"))'=1 G END
 ;
 N UCI S UCI=$$UCIMM(GL)
 ;
END Q "^|"""_UCI_"""|"_GL
 ;
 ;
UCIMM(GL)
 N NMGL S NMGL=GL
 I GL["|" S NMGL=$P(GL,"|",3)
 I GL["(" S NMGL=$P(GL,"(")
 N UCI S UCI=$$^W3MAIN
 ;
 G:NMGL="" EUCIMM
 N CURREST S CURREST=$$GETP^%W1PRM("CURREST") G:'CURREST EUCIMM
 ;
 I $D(^[UCI]W4MMGL(NMGL)) S UCI=$$TV^%W1UCI(CURREST)
EUCIMM Q UCI
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GLIST
W4GLIST ; [ 31.07.15 14:01 ] [ 20.05.15 10:00 ] [ 19.05.15 19:12 ]
 N (JB,%ARG,%REM)
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" style=""width:80%;font-weight:bold;font-size:"_$$^W3FSZ(12)_""" cellpadding=""8px"">",!
 W "<caption >"_$$^%W1DICT("SIGNGUESTNUMBERS")_"</caption>",!
 N I
 ;
 S PRALL=0
 S NST=$$GETNST($G(%ARG("STID"))) Q:'NST
 S ST=$G(@$$^W4TMPORD@(NST,"GLIST"))
 I ST="*" S PRALL=1
 S ISALL=0
 I $G(%ARG("SOAD"))=$G(%ARG("MAX"))!$$GLISTALL^W4PRM S ISALL=1
 ;
 W "<tr>"
  S CLR="white"
  I PRALL S CLR="yellow"
   W "<td id=""td0"" style=""text-align:center;background-color:"_CLR_";"
    W $S(ISALL:"color:black",1:"color:lightgrey")
   W " "" "_$$^W4TOUCH_"=""Click('0')"" "
  W ">"
   W $$^%W1DICT("ALL")
  W "</td>"
 W "</tr>",!
 ;
 I '$$GLIST D
 .F I=1:1:$G(%ARG("SOAD")) D
 ..W "<tr>"
 .. S CLR="white"
 .. I ","_ST_","[(","_I_",")!PRALL S CLR="yellow"
 .. W "<td id=""td"_I_""" style=""text-align:center;background-color:"_CLR_""" "_$$^W4TOUCH_"=""Click('"_I_"')"">"
 ..  W I
 .. W "</td>"
 ..W "</tr>",!
 ;
 I $$GLIST D
 .N P1GLIST S P1GLIST=$$GLIST
 .F II=1:1:$L(P1GLIST,",") D  ;Q:II>$G(%ARG("SOAD"))  D
 ..S I=$P(P1GLIST,",",II)
 ..W "<tr>"
 .. S CLR="white"
 .. I ","_ST_","[(","_I_",")!PRALL S CLR="yellow"
 .. W "<td id=""td"_II_""" style=""text-align:center;background-color:"_CLR_""" "_$$^W4TOUCH_"=""Click('"_II_"')"">"
 ..  W I
 .. W "</td>"
 ..W "</tr>",!
 ;
 W "</table>",!
 W "<br>"
 W "<input type=""button"" class=""rkvsbm"" style=""width:80%"" value="""_$$^%W1DICT("SUBMIT")_""" id=""sbm"" "_$$^W4TOUCH_"=""Submit()"">",!
 W "<br>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 D PUT^%W3DEB("W4GLIST-SUBMIT","PRM=PRM")
 N SH,LIST,STID,GLIST,GLIST1
 S STID=$P(PRM,";") I STID="" Q 0
 S SH=$$GETNST(STID) I 'SH Q 0
 S GLIST=$P(PRM,";",2,200)
 I $E(GLIST,$L(GLIST))=";" S GLIST=$E(GLIST,1,$L(GLIST)-1)
 S GLIST=$TR(GLIST,";",",")
 I GLIST?.P,GLIST'="*" S GLIST=""
 I GLIST="*" S GLIST1="*" G SUBME
 N P1GLIST S P1GLIST=$$GLIST
 N GLIST1 S GLIST1="" I P1GLIST="" S GLIST1=GLIST
 ;
 N J F J=1:1:$L(GLIST,",") D
 .N IND S IND=$P(GLIST,",",J) Q:IND=""
 .I $P(P1GLIST,",",IND)="" Q
 .S GLIST1=GLIST1_$P(P1GLIST,",",IND)_","
 I $E(GLIST1,$L(GLIST1))="," S GLIST1=$E(GLIST1,1,$L(GLIST1)-1)
 ;
 N ER S ER=0
 I $$LVST^W3HZMST(JB,SH) D  I ER Q ER
 .N SH0,GLIST0 S GLIST0=""
 .S SH0=$$SH0^W3HZMST(JB,SH)
 .I SH0 S GLIST0=$$GLIST^W3HZMST(JB,SH0)
 .;
 .I GLIST0'="" D
 ..N J F J=1:1:$L(GLIST1,",") D  Q:ER
 ...N IND S IND=$P(GLIST1,",",J) Q:IND=""
 ...I (","_GLIST0_",")'[(","_IND_",") S ER=-1
 ;
SUBME ;
 S @$$^W4TMPORD@(SH,"GLIST")=GLIST1
 Q GLIST1
 ;
GLIST(STAM) ;
 Q $G(@$$^W4PRM@("GLIST"))
 ;
GETNST(STID) ;
 N SH
 S SH=$$FINDSH^W4HZORD(STID) I 'SH Q 0
 Q SH

W4GLLIN
W4GLLIN(STAM) ; [ 16.04.12 12:42 ] [
 Q 0

W4GLM
W4GLM(GL) ; [ 16.04.09 15:13 ] [ 08.04.09 18:51 ] [ 09.09.08 15:41 ]
 Q $$UCI_GL
UCI(STAM) ;
 Q "^[^UCI(""MLG"")]"

W4GLS
W4GLS(PRDEL,VD) ; [ 11.02.13 20:35 ] [ 14.10.12 10:04 ] [ 22.02.11 12:23 ]
 S VD=$G(VD)
 N GLS S GLS=""
 S PRDEL=$G(PRDEL)
 ;
 I VD'="IPY" D
 .I $$DEL(PRDEL) S GLS=$$^W4GL("W4INPDEL") Q
 .S GLS=$$^W4GL("W4INP")
 ;
 I VD="IPY" D
 .I $$DEL(PRDEL) S GLS=$$^W4GL("W4TSDEL") Q
 .S GLS=$$^W4GL("W4TSHL")
 Q GLS
 ;
DEL(PRDEL) ;
 I $G(PRDEL)="DEL" Q 1
 Q 0

W4GLSET
W4GLSET(HZM) ; [ 14.07.23 04:52 ] [ 13.07.23 16:38 ] [ 
 Q $$^W4GL("P1SETA")
 ;
ORDSET(HZM)
 I $G(HZM)>0,$D(@$$^W4ORD@(HZM,"SETA")) Q 1
 Q 0
 
 
 
 

W4GNAME
W4GNAME(STAM) ; [ 06.04.22 14:30 ] [ 23.05.09 10:40 ] [
 N GL S GL=$$^W4GL("NAME")
 ;
 I $$MMCC^W4PRM D
 .N UCI,MSD S MSD=$$GETP^%W1PRM("MSD0")  
 .I MSD="",$$GETP^%W1PRM("MSDR0") S MSD=$$GETP^%W1PRM("MSDR0")
 .I MSD="",MSDCUR=8004!(MSDCUR=10080) S MSD=8005
 .Q:'MSD
 .S UCI=^[$$^W3MAIN]UCI(MSD) Q:UCI=""
 .S GL="^|"""_UCI_"""|NAME"
 ;
 Q GL
 

W4GNAME0
W4GNAME(STAM) ; [ 06.11.09 12:01 ] [ 23.05.09 10:40 ] [
 Q $$^W4GL("NAME")

W4GPNTM0
W4GAPNTM ; [ 19.05.24 09:25 ] [ 05.10.21 16:56 ] [ 24.08.21 17:32 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 K %L1PC
 D ^%W1ARG
 I $G(MSDR)="" W "MSDR NOT DEFINED !" Q
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S %REPN="W4GAPNTM"
 S %REPN("PRTN")=$$^%W1JB
 ;
 S TMPSN="^|$$^W3MAIN|TMPSN" K @TMPSN
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @TMPSN@(N)=$$MSD^W3R(N)
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 S MSDR=+$G(MSDR)
 I 'MSDR 
 S TMP=$$^W4MAIN("TMP") K @TMP
 M @TMP=^|$$^W3MAIN|W4GAPNET(MSDR)
 Q
 ;
 ;
DAT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 I DT<$G(MEDAT) S OK=0 Q
 I DT>$G(ADDAT) S OK=2 Q
 Q
 ;
MSD ;
 N MSD1 S MSD1=$G(^|$$^W3MAIN|W3MSD(MSD))
 ;;S ^AA("W4GAPNTM","GLOB",DT,MSD)=GLOB
 ;;S ^AA("W4GAPNTM","GLOB",DT,MSD,"@GLOB")=$G(@GLOB)
 N A S A=$G(@GLOB)
 N DLM S DLM=","
 N J,SETMKR,QN,SUM
 ;
 S M(12)=1
 S M(18)=3
 S M(10)=5
 ;
 F J=25:1:$L(A,",") D
 .S SETMKR=$P(A,",",J)
 .S MKR=$P(SETMKR,"~")
 .S QN=$P(SETMKR,"~",2)
 .S SUM=$P(SETMKR,"~",3) Q:'MKR  Q:'$D(M(MKR))
 .S @("x"_M(MKR))=QN
 .S @("x"_(M(MKR)+1))=$$RKV(SUM)
 Q
 ;
RKV(VL) 
 Q $$RKV^W4GAPNTD(VL) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GR
W4GR ; [ 05.08.23 18:43 ] [ 10.08.21 12:37 ] [ 08.01.19 11:04 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 I $G(%ARG("SHOW"))=0 Q
 ;
 D GL
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 D SORTSUG^W4SPIDK(GL)
 W "<br><br>",!
 ;
 W "<table id=""TblGr"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th>"_$$^%W1DICT("GROUPCODE")_"</th>"
  W "<th>"_$$^%W1DICT("GROUPNAME")_"</th>"
  W "<th>"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 N N,I,TMP S TMP=$$^W4MAIN("TMPGR")
 S GLOBT=$$CRGLOBT^W4SPIDK(GL)
 S N="",N0="",I=0 F  S N0=$O(@GLOBT@(N0)) Q:N0=""  D
 .S N=N0 I '$$^W4VWGR(N) Q
 .I $G(%ARG("SORT"))>1 S N=$G(@GLOBT@(N0)) Q:N=""
 .I $D(@TMP@(N)) Q
 .W "<tr id=""trgr"_N_""" "
 . W $$STYLE^W4FASTGR(N)
 .W ">" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"&nbsp;</td>"
 .
 .N ID,PROC S ID="chgr"_N
 .S PROC="OnClickTbl('"_N_"','TblGr','trgr','chgr')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRMT")
 Q
 ;
GL ;
 S GL=$$^W4GL("PARSUG")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRAPH
W4GRAPH ; [ 20.03.25 18:42 ] [ 08.10.17 21:13 ] [ 
 W "<head>",!
 W "<script src=""./Chart.bundle.js""></script>",!
 W "   <style>",!
 W "   canvas {",!
 D NOSEL^W4CSS1
 W "   }",!
 W "   </style>",!
 W "</head>",!
 ;
 W !
 W "<body>",!
 W " <div id=""container"" style=""width: 96%;height:98%"">",!
 W "   <canvas id=""canvas""></canvas>",!
 W " </div>",!
 W ! 
 W " <script>",!
 W "  var color = Chart.helpers.color;",!
 W !
 W "  var barChartData = {",!
 W "           labels: arrlab1 ,"
 W !
 W "           datasets: [{",!
 W "            label: 'Dataset 1',",!
 W "            backgroundColor: color(window.chartColors.red).alpha(0.5).rgbString(),",!
 W "            borderColor: window.chartColors.red,",!
 W "             borderWidth: 1,",!
 W "             data: arrdata1 ,",!
 W "           },",!
 W !
 W "           {",!
 W "            label: 'Dataset 2',",!
 W "            backgroundColor: color(window.chartColors.blue).alpha(0.5).rgbString(),",!
 W "            borderColor: window.chartColors.blue,",!
 W "            borderWidth: 1,",!
 W "            data: arrdata2 ,",!
 W "           }]",!
 W "          };",!
 W !
 W "      window.onload = function() {",!
 W "      var ctx = document.getElementById(""canvas"").getContext(""2d"");",!
 W "      window.myBar = new Chart(ctx, {",!
 W "                type: 'bar',",!
 W "                data: barChartData,",!
 W "                options: {",!
 W "                          responsive: true,",!
 W "                          legend: {",!
 W "                                   position: 'top',",!
 W "                                  },",!
 W "                          }",!
 W "       });",!
 W "    };",!
 W " </script>",!
 W "   </body>",!
 Q
 
 
 

W4GRAPHM
W4GRPHMP ; [ 10.10.17 11:23 ] [ 
 N (JB,%ARG,%REM)

W4GRDLM
W4GRDLM ; [ 31.12.20 10:17 ] [ 26.10.16 13:15 ] [ 12.01.15 12:51 ] 
 N (JB,%ARG,%REM)
 S GRDLM=$G(@$$^W4PRM@($$IND))
 S NMGR=""
 I GRDLM D
 .S NMGR=$G(@$$^W4GL("PARSUG")@(GRDLM))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br><br>",!
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td align=""center"" >"
   W $$^%W1DICT("GROUPNUMBER")
   W $$NBSP^%L1FRM(3)
   W "<input type=""text"" size=""5"" id=""gr"" "
   W " value="""_GRDLM_""" />",!
  W "</td>",!
  W "<td id=""nmgr"">"
   W $$H2U^%L1FRM(NMGR)
  W "</td>"
  W "<td width=""10%"">&nbsp;</td>" 
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
  W "  </td>",!
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "  </td>",!
  W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>"
 ;
 W "<div style=""position:absolute;top:150px;left:30%;width:40%;height:70%;overflow-y:auto;background-color:white;border:grey solid 2px"" >",!
  W "<table style=""background-color:white"" >",!
  S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
  .N A S A=$G(^(N))
  .W "<tr onClick=""ClickGr('"_N_"')"" style=""cursor:pointer"" "
  . W " onMouseOver=""this.style.backgroundColor='lightgrey'"""
  . W " onMouseOut=""this.style.backgroundColor='white'"""
  .W ">",!
  . W "<td>"
  .   W N
  . W "</td>" 
  . W "<td>"
  .  W $$H2U^%L1FRM(A)
  . W "</td>"
  .W "</tr>",!
 W "</table>"
 W "</div>",!
 Q
 ;
SUBMIT(PRM) ;
 N PIZUL
 S PIZUL=$P(PRM,";",2)
 N GR S GR=$P(PRM,";") Q:GR=""
 S @$$^W4PRM@($S(PIZUL:"DELIMGR",1:"DLMGR"))=GR
 Q
 ;
IND(STAM)
 I $G(%ARG("PIZUL")) Q "DELIMGR"
 Q "DLMGR"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GREMP
W4GREMP ; [ 02.12.21 10:33 ] [ 01.08.21 14:31 ] [ 22.06.20 16:23 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4GREMP","%ARG=[%ARG")
 D GL
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 ;
 I $D(%ARG("NOSHOW")) Q
 I $D(%ARG("CDKV")) D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 ;
 W "<div align=""center"" >",!
 ;;W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("GROUPEMPTABLE")_"</span>",!
 W "<table id=""TblGre"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"">",!
 W "<caption style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("GROUPEMPTABLE")_"</caption>",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""20%"">"_$$^%W1DICT("EMPID")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("EMPNAME")_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .N SUG S SUG=$$SUG(N)
 .I $G(%ARG("CDKV")),%ARG("CDKV")'=SUG Q
 .I $G(%ARG("PAIL")),'$$GET1^W4LEVPR(N,"PAIL") Q
 .W "<tr id=""trgre"_N_""" "
 .I '$$GET1^W4LEVPR(N,"PAIL") W "style=""background-color:pink"" "
 .W ">" S I=I+1
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$^W4NAME(N))_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""checkbox"" id=""chgre"_N_""" onClick=""OnClickTbl('"_N_"','TblGre','trgre','chgre')"" /></td>"
 .W "</tr>",!
 W "</div>",!
 Q
 ;
GL S GL=$$^W4MAIN("TMPEMP")
 Q
 ;
FIRSTGR(STAM) ;
 N N S N=$O(@$$^W4GL("LEVKVZ")@(""))
 Q N
 ;
SAVE(PRM) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GL
 M @$$^W4GNAME=@GL
 D ^%S2GLSV($$^W4GNAME,$$^W4FGIB)
 Q
 ;
MVPR2GRE(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N KV S KV=$P(PRM,";")
 S PRM=$P(PRM,";",2,$L(PRM,";"))
 N OK S OK=0
 I KV="" Q 0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GL@(CD))
 .D SETSUG(CD,KV) S OK=1
 Q OK
 ;
MVKV2EMP(PRM) ;
 ;;S ^AA("MVKV2EMP","PRM")=PRM
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GL@(CD))
 .D SETSUG(CD,"") S OK=1
 Q OK
 ;
 ;
GROUP ;
 W "<select "
 ;
 I FIRSTGR="GRE" D
 .W " id=""grgre"""
 .W " onChange=""AskSave();ShowGre(this.value);ShowEmp()"""
 .W " >",!
 ;
 I FIRSTGR="EMP" D
 .W " id=""gremp"""
 .W " onChange=""ShowEmp(this.value)"""
 .W " >"
 .W "<option value=""NO"" selected=""selected"">"_$$^%W1DICT("NOGROUP")_"</option>",!
 .W "<option value=""ALL"" >"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .D PUT^%W1PRM("KV","NO")
 ;
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("LEVKVZ")@(NN)) Q:NN=""  D
 .S II=II+1
 .W "<option value="""_NN_""""
 .I $G(FIRSTGR)="GRE",II=1 W " selected=""selected"""
 .I FIRSTGR="EMP",$G(%ARG("CDKV")),NN=$G(%ARG("CDKV")) Q
 .W " >"_NN_" "_$$H2U^%L1FRM($G(@$$^W4GL("LEVKVZ")@(NN)))_"</option>",!
 ;
 W "</select>",!
 Q
 ;
EMP2TMP ;
 D GL K @GL
 M @GL=@$$^W4GNAME
 Q
 ;
SUG(OV) ;
 D GL
 Q $P($G(@GL@(OV)),"\")
 ;
SETSUG(OV,SUG) ;
 D GL
 S $P(@GL@(OV),"\")=SUG
 Q
 ;
ACTIVE ;
 W $$^%W1DICT("SHOWACTWORKERSONLY")
 W "&nbsp;&nbsp;<input id=""act"" type=""checkbox"" "
 W " onClick=""ShowActWorkersOnly(this)"" "
 I $G(%ARG("PAIL")) W "checked=""checked"" "
 W ">"
 Q
 
 
 
 
 
 
 
 

W4GRIT
W4GRIT ; [ 13.05.25 17:39 ] [ 12.05.25 13:38 ] [ 25.01.18 12:13 ] 
 Q
INIT ;
 D ^%W1ARG,^W3CSS,^W4CSS
 D KILL^%W1PRM("OPNWND") D INITUR^W4MENU(2)
 ;
 I $G(%ARG("MENU")) D
 .D KILL^%W1PRM("NMB")
 .D PUT^%W1PRM("SHOWRCPT",1)
 Q
 
 

W4GRPHDD
W4GRPHDD ; [ 27.05.18 15:40 ] [ 26.05.18 17:16 ] [ 02.02.18 18:16 ] 
 N (JB,%ARG,%REM)
 I $G(%ARG("SHOW"))=0 Q
 D ^%W1ARG
 D VRM
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 K MDAY S K=0
 F J=1:1:$$LMM^%L1DC($$^%L1DC("01"_MM1_YY1,3)) D
 .S DAT=$TR($J(J,2)," ",0)_"."_MM1_"."_YY1
 .I $$^%L1DC(DAT,8)=D S K=K+1,MDAY(K)=DAT
 ;
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S MM1=$G(%ARG("MM1")) I 'MM1 W "A FIRST MONTH NOT DEFINED !" Q 
 S YY1=$G(%ARG("YY1")) I 'YY1 W "A FIRST YEARM NOT DEFINED !" Q 
 I $L(YY1)=4 S YY1=$E(YY1,3,4)
 ;
 S MM2=$G(%ARG("MM2")) I 'MM2 W "A SECOND MONTH NOT DEFINED !" Q 
 S YY2=$G(%ARG("YY2")) I 'YY2 W "A SECOND YEARM NOT DEFINED !" Q 
 I $L(YY2)=4 S YY2=$E(YY2,3,4)
 ;
 S TKF1=MM2_".20"_YY2
 S TKF2=MM1_".20"_YY1
 ;
 S COLX=5
 S @GLGR@("COLX")=COLX
 ;
 S I1=0
 F I=1:1:COLX D
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=$G(MDAY(I))
 ;
 D PREP(D,IND)
 ;
 S COLG=2
 ;
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @GLGR@("LB",2)=TKF2
 S @GLGR@("BGC",2)="rgba(255,99,132,.4)"
 S @GLGR@("BRDC",2)="rgba(255,99,132,1)" ;
 ;
 S @$$GLGR@("LB",1)=TKF1
 S @$$GLGR@("BGC",1)="rgba(54, 162, 235, .4)"
 S @$$GLGR@("BRDC",1)="rgba(54, 162, 235, 1)"
 ;
 D SHOW
 ;
 Q
 ;
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREP(D,IND) ;
 N (JB,%ARG,D,IND,MM1,MM2,YY1,YY2)
 D VRM
 ;
 S GLGR=$$GLGR
 ;
 F K=1:1:5 D
 .S @GLGR@("VL",2,K)=$G(@VRM@(D,1,K,IND))
 .S @GLGR@("VL",1,K)=$G(@VRM@(D,2,K,IND))
 ;
 Q
 ;
 ;
PREPIN ;
 Q
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=65,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=1
 N SM0 S SM0=60
 ;
 W "<br>",!
 S SMLEFT=30
 I $$1024^W4WDSCR S SMLEFT=22
 W "<p style=""position:absolute;left:"_SMLEFT_"%;top:0;font-size:"_$$^W3FSZ(16)_";font-weight:bold"">",!
   W $$^%W1DICT("COMPAREDD",$$IND(IND)_"<>"_$$^%W1DICT("DAY"_D)_"<>"_MM1_"<>"_YY1_"<>"_MM2_"<>"_YY2)
 ;
 I $G(MESHAA)!$D(ADSHAA) D
 .W "<br>"
 .W " <span style=""font-size:"_$$^W3FSZ(12)_";font-weight:normal"" >",!
 .  W $$^%W1DICT("HOURSRNG",MESHAA_"<>"_ADSHAA)
 .W "</span>",!
 W "</p>",!
 ;
 D NIS^W4GRPHMP(LEFT,TOP+2)
 ;
 D GRAPHKIND^W4GRPHMP(TOP+3,TYPE)
 ;
 N SM1,SM2 S SM1=22
 ;
 D TOTBOT(TOP+HG+7)
 ;
 D DIVBUT
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+9)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
TOTBOT(TOPSM)
 N SMLEFT S SMLEFT=26
 I $$1024^W4WDSCR S SMLEFT=20
 W "<p style=""position:absolute;left:"_SMLEFT_"%;top:"_TOPSM_"%;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">",!
  I IND'="AVMSD" D
  .W $$NBSP^%L1FRM(2)
  . N TOT1,TOT2
  . S TOT1=$$TOT(1)
  . S TOT2=$$TOT(2)
  . W $$^%W1DICT("TOTAL")_" "_TKF1_" : "_$$RKVTOT($J(TOT1,2,2)_" "_$$^%W1DICT("NIS"))
  . W $$NBSP^%L1FRM(10) 
  . W $$^%W1DICT("TOTAL")_" "_TKF2_" : "_$$RKVTOT($J(TOT2,2,2)_" "_$$^%W1DICT("NIS"))
  . W $$NBSP^%L1FRM(10) 
  . S AHUZ=100
  . I TOT1 S AHUZ=TOT2/TOT1*100-100
  . W $$RKVTOT($S(AHUZ>0:"+",1:"")_$J(AHUZ,2,2)_"%","brown")
 W "</p>",!
 Q
 ;
TOT(NG) ;
 N GLGR,MM,TOT S GLGR=$$GLGR
 S TOT=0
 S K="" F  S K=$O(@GLGR@("VL",NG,K)) Q:K=""  D
 .S TOT=TOT+$G(^(K))
 Q TOT
 ;
DIVBUT ;
 W "<div id=""divbut"" style=""position:absolute;left:48%;top:"_(TOP+HG+19)_"%"" >",!
  D ^W4BTN("CLOSE","Close()","red")
 W " </div>",!
 Q
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
RKVTOT(VL,COLOR) ;
 I $G(COLOR)="" S COLOR="darkgreen"
 I VL<0 S COLOR="red"
 N ST S ST="<span dir=""LTR"" style=""color:"_COLOR_";font-size:"_$$^W3FSZ(16)_";font-weight:bold"">"
  S ST=ST_VL_"</span>"
 Q ST
 ;
IND(IND) ; 
 I IND="SD" Q "micerq xtqn" 
 I IND="SMSD" Q "dcrqn zexikn" 
 I IND="SMSH" Q "migelyn zexikn" 
 I IND="SH" Q "zexikn" 
 I IND="AVMSD" Q "creql rvenn" 
 Q ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHMP
W4GRPHMP ; [ 14.04.26 02:39 ] [ 16.09.25 12:01 ] [ 09.06.22 14:32 ] 
 N (JB,%ARG,%REM,Z,SZ)
 I $G(%ARG("SHOW"))=0 Q
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=$$NG
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S DAYS=$G(%ARG("DAYS"))
 ;
 S YY=$G(%ARG("YY")) I 'YY W "A YEAR NOT DEFINED !" Q 
 I $L(YY)=4 S YY=$E(YY,3,4)
 S MM=$G(%ARG("MM")) I 'MM W "A MONTH NOT DEFINED !" Q
 ;
 S COLX=$$MDAYS(YY,MM)
 S @GLGR@("COLX")=COLX
 ;
 S DAT1="01"_MM_YY
 S DAT2=COLX_MM_YY
 ;
 S I1=0
 F I=1:1:COLX D
 .N D,DAY,DAY0 S DAY0=$$^%L1DC($TR($J(I,2)," ",0)_MM_YY,3)
 .S DAY=$$^%L1DC(DAY0,9)
 .S D=$$^%L1DC(DAY0,8)
 .;
 .I DAYS,'$E(DAYS,D) Q
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I_$$H2UG^%L1FRM(DAY)
 .S @GLGR@("MDY",I)=I1
 ;
 D PREP(DAT1,DAT2,NG)
 ;
 S COLG=1
 I NG=4!(NG=7) S COLG=3
 ;
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @$$GLGR@("LB",1)=$$TV^%W1DICT($$^%W1LNG,"TOTSALES")
 S @$$GLGR@("BGC",1)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)" ;
 ;
 S @$$GLGR@("LB",2)=$$TV^%W1DICT($$^%W1LNG,"TOTNETTO")
 S @$$GLGR@("BGC",2)="rgba(54, 162, 235, .4)"
 S @$$GLGR@("BRDC",2)="rgba(54, 162, 235, 1)"
 ;
 S @$$GLGR@("LB",3)=$$TV^%W1DICT($$^%W1LNG,"TOTCREDIT")
 S @$$GLGR@("BGC",3)="rgba(255, 206, 86, .4)"
 S @$$GLGR@("BRDC",3)="rgba(255, 206, 86, 1)"
 ;
 S @$$GLGR@("LB",4)=$$TV^%W1DICT($$^%W1LNG,"TOTREST")
 S @$$GLGR@("BGC",4)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @$$GLGR@("BRDC",4)="rgba(255,99,132,1)" ;
 ;
 S @$$GLGR@("LB",5)=$$TV^%W1DICT($$^%W1LNG,"TOTDLV")
 S @$$GLGR@("BGC",5)="rgba(54, 162, 235, .4)"
 S @$$GLGR@("BRDC",5)="rgba(54, 162, 235, 1)"
 ;
 D SHOW
 Q
 ;
 ;
MDAYS(YY,MM) ;
 N DAT,DT,DD
 I $L(YY)=4 S YY=$E(YY,3,4) 
 S YY=$TR($J(YY,2)," ",0)
 S MM=$TR($J(MM,2)," ",0)
 F DD=31:-1:28 S DT=$$^%L1DC(YY_MM_DD,4) Q:DT
 Q DD 
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREPIN ;
 D ^W4IN
 ;
 S DOP=$G(%ARG("DOP"))
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S SH=0,SHD=0,PRKBL=0
 ;
 D M^W4CAJ
 S V("F"_DOP)="onefn",V("G"_DOP)="d`gnd",V("H"_DOP)="dtwd",V("T"_DOP)=$$TIPPS
 N AA,JJ S AA="IJKLMNOPQ"
 F JJ=1:1:$L(AA) D
 .N LET S LET=$E(AA,JJ) Q:LET=""
 .S V(LET_DOP)=$$U^W4VT(LET)
 ;
 S V("V"_DOP)="`""k k""dq"
 S V("Z"_DOP)="yelz",V("A"_DOP)="oeict",V("MAM"_DOP)="n""rn"
 ;
 S GLOB=$$^W4GL("Z1")_"(DAT)"
 Q
 ;
 ;
PREP(DAT1,DAT2,NG) ;
 N (JB,%ARG,DAT1,DAT2,NG,Z,SZ)
 ;
 D PREPIN
 ;
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 K Z
 F N=DT1:1:DT2 D
 .S DAT=$$^%L1DC(N,2)
 .
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(N,N2)=$G(Z(N,N2))+$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z(N,"MTB",N3)=$G(Z(N,"MTB",N3))+$G(^(N3))
 ..
 ..S Z(N,"V"_DOP)=0 F J=1:1:9 D
 ...I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ...S Z(N,"V"_DOP)=Z(N,"V"_DOP)+$G(@("Z("_N_",""V"_J_DOP_""")"))
 ..S Z(N,"A"_DOP)=$G(Z(N,"F"_DOP))+$G(Z(N,"G"_DOP))+$G(Z(N,"V"_DOP))+$G(Z(N,"MP"_DOP))
 ..
 ..I '$$SHOWTIP(N) S Z(N,"T"_DOP)=""
 ..I '$$^W4TIPPD(N) D
 ...S Z(N,"A"_DOP)=Z(N,"A"_DOP)-$G(Z(N,"T"_DOP))
 ..
 ..S N2="" F  S N2=$O(Z(N,N2)) Q:N2=""  D
 ...I N2'="MTB" S Z(N,N2)=$S(Z(N,N2):$J(Z(N,N2),2,2),1:"")
 ;
 K SZ
 S N="" F  S N=$O(Z(N)) Q:N=""  D
 .S N2="" F  S N2=$O(Z(N,N2)) Q:N2=""  D
 ..S SZ(N2)=$G(SZ(N2))+Z(N,N2)
 ;
 S GLGR=$$GLGR
 ;
 ;
 S DAYS=$G(%ARG("DAYS")) 
 S N="" F  S N=$O(Z(N)) Q:N=""  D
 .S DD=+$ZD(N,"DD")
 .S DAY=$$^%L1DC(N,8)
 .I DAYS,'$E(DAYS,DAY) Q
 .;
 .N DD1 I '$D(@GLGR@("MDY",DD)) Q
 .S DD1=@GLGR@("MDY",DD)
 .I NG=1!(NG=4) S @GLGR@("VL",1,DD1)=$G(Z(N,"A"_DOP))+$G(Z(N,"H"_DOP))
 .I NG=2!(NG=4) S @GLGR@("VL",2,DD1)=$G(Z(N,"A"_DOP))
 .I NG=3!(NG=4) S @GLGR@("VL",3,DD1)=$G(Z(N,"H"_DOP))
 .
 ;
 Q
 ;
SHOWTIP(DD) ;
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=$$NG
 N SM0 S SM0=60 I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 W " <span style=""font-size:"_$$^W3FSZ(16)_""" >",!
   W $$^%W1DICT("MM")_" "_$G(%ARG("MM"))_" "_$$^%W1DICT("YY")_" "_$G(%ARG("YY"))
 W "</span>",!
 ;
 D NIS(LEFT,TOP)
 ;
 D GRAPHKIND(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22 I $$MSL^W4PRM S SM1=5,SM2=20
 ;
 D SHOWTOT(LEFT+SM0+SM1,TOP)
 ;
 I $$MSL^W4PRM D ORDSKIND(LEFT+SM0+SM2,TOP,DOP)
 ;
 D TOTBOT(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("DAYS")
 W " </p>",!
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
DAYS ;
 I $$^W4TABLET=2 Q
 N J F J=1:1:7 D
 .W $$^%W1DICT("DAY"_J)
 .W "<input type=""checkbox"" name=""days"" id=""day"_J_""" checked=""checked"" >",!
 .W "&nbsp;"
 Q
 ;
TOT(NG) ;
 N GLGR,DD,TOT S GLGR=$$GLGR
 S TOT=0
 S DD="" F  S DD=$O(@GLGR@("VL",NG,DD)) Q:DD=""  D
 .S TOT=TOT+$G(^(DD))
 Q TOT
 ;
NG(STAM) ;
 Q $$NG^W4GRPHYP
 ;
NIS(LEFT,TOP)
 W "<p style=""position:absolute;left:"_LEFT_"%;top:"_TOP_"%"">",!
  W $$^%W1DICT("NIS")
 W " </p>",!
 Q 
 ;
GRAPHKIND(TOP,TYPE) ;
 W "<p style=""position:absolute;left:14%;top:"_(TOP-2)_"%"">",!
  W $$^%W1DICT("KINDOFGRAPH")_" "
  W "<select id=""type"" onChange=""OnChangeType()"" >",!
   W "<option value=""bar"" "_$$SELECTED("bar",TYPE)_" >Bar</option>",!
   W "<option value=""line"" "_$$SELECTED("line",TYPE)_" >Line</option>",!
  W "</select>",!
 W " </p>",!
 Q
 ;
ORDSKIND(SM,TOP,DOP) ;
 W "<p style=""position:absolute;left:"_SM_"%;top:"_(TOP-2)_"%"">",!
  W $$^%W1DICT("KINDOFORDERS")_" "
  W "<select id=""dop"" onChange=""OnChangeOrdersType()"" >",!
   W "<option value="""" "_$$SELECTED("",DOP)_" >"_$$^%W1DICT("ALLORDERS")_"</option>",!
   W "<option value=""S"" "_$$SELECTED("S",DOP)_" >"_$$^%W1DICT("RESTORDERS")_"</option>",!
   W "<option value=""L"" "_$$SELECTED("L",DOP)_" >"_$$^%W1DICT("DLVORDERS")_"</option>",!
   W "<option value=""T"" "_$$SELECTED("T",DOP)_" >"_$$^%W1DICT("TAWORDERS")_"</option>",!
  W "</select>",!
 W " </p>",!
 Q
 ;
SHOWTOT(SM,TOP)
 W "<p style=""position:absolute;left:"_SM_"%; top:"_(TOP-2)_"%"">",!
  W "<select id=""NG"" onChange=""OnChangeNG()"" >",!
   W "<option value=""1"" "_$$SELECTED(1,NG)_" >"_$$^%W1DICT("TOTSALES")_"</option>",!
   W "<option value=""2"" "_$$SELECTED(2,NG)_" >"_$$^%W1DICT("TOTNETTO")_"</option>",!
   W "<option value=""3"" "_$$SELECTED(3,NG)_" >"_$$^%W1DICT("TOTCREDIT")_"</option>",!
   W "<option value=""4"" "_$$SELECTED(4,NG)_" >"_$$^%W1DICT("UNITEDGRAPH")_"</option>",!
  W "</select>",!
 W " </p>",!
 Q
 ;
TOTBOT(TOPSM)
 W "<p style=""position:absolute;left:45%;top:"_TOPSM_"%;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">",!
  W $$^%W1DICT("TOTAL")
  W $$NBSP^%L1FRM(2)
  W "<span style=""color:darkgreen;font-size:"_$$^W3FSZ(16)_";font-weight:bold"">"
   W $J($$TOT($S(NG=1!(NG=4):1,1:NG)),2,2)_" "_$$^%W1DICT("NIS")
  W "</span>",!
  ;
  I NG=4 D
  .W "<br>"
  .W "<span style=""color:brown;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT("TOTNETTO")_"</span>",!
  .W $$NBSP^%L1FRM(2)
  .W "<span style=""color:green;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  . W $J($$TOT(2),2,2)_" "_$$^%W1DICT("NIS")
  .W "</span>",!
  .W "<br>"
  .W "<span style=""color:brown;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT("TOTCREDIT")_"</span>",!
  .W $$NBSP^%L1FRM(2)
  .W "<span style=""color:green;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  . W $J($$TOT(3),2,2)_" "_$$^%W1DICT("NIS")
  .W "</span>",!
  .
 W "</p>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHMS
W4GRPHMS ; [ 14.04.26 02:39 ] [ 16.09.25 12:05 ] [ 13.05.18 06:13 ] 
 N (JB,%ARG,%REM,Z,SZ)
 I $G(%ARG("SHOW"))=0 Q
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=$$NG
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S YY1=$G(%ARG("YY1")) I 'YY1 W "A FIRST YEAR NOT DEFINED !" Q 
 I $L(YY1)=4 S YY1=$E(YY1,3,4)
 S MM1=$G(%ARG("MM1")) I 'MM1 W "A FIRST MONTH NOT DEFINED !" Q
 I $L(MM1)<2 S MM1="0"_MM1
 ;
 S YY2=$G(%ARG("YY2")) I 'YY2 W "A SECOND YEAR NOT DEFINED !" Q 
 I $L(YY2)=4 S YY2=$E(YY2,3,4)
 S MM2=$G(%ARG("MM2")) I 'MM2 W "A SECOND MONTH NOT DEFINED !" Q
 I $L(MM2)<2 S MM2="0"_MM2
 ;
 S DATE1=MM1_".20"_YY1
 S DATE2=MM2_".20"_YY2
 ;
 S COLX=$$MDAYS(YY1,MM1)
 S @GLGR@("COLX")=31 ;COLX
 ;
 S DAT11="01"_MM1_YY1
 S DAT12=COLX_MM1_YY1
 S DAT21="01"_MM2_YY2
 S DD2=$$MDAYS(YY2,MM2) ;;I DD2>COLX S DD2=COLX
 I $L(DD2)<2 S DD2="0"_DD2
 S DAT22=DD2_MM2_YY2
 ;
 S I1=0
 F I=1:1:31 D  ; -- WAS COLX
 .N D,DAY,DAY0 S DAY0=$$^%L1DC($TR($J(I,2)," ",0)_MM1_YY1,3)
 .S D=$$^%L1DC(DAY0,8)
 .;
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I
 .S @GLGR@("MDY",I)=I1
 ;
 D PREP(DAT11,DAT12,1)
 ;
 D PREP(DAT21,DAT22,2)
 ;
 S COLG=2
 ;
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @$$GLGR@("LB",1)=DATE1
 S @$$GLGR@("BGC",1)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)" ;
 ;
 S @$$GLGR@("LB",2)=DATE2
 S @$$GLGR@("BGC",2)="rgba(54,162,235,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @$$GLGR@("BRDC",2)="rgba(54,162,235,1)" ;
 ;
 D SHOW
 Q
 ;
 ;
MDAYS(YY,MM) ;
 N DAT,DT,DD
 I $L(YY)=4 S YY=$E(YY,3,4) 
 S YY=$TR($J(YY,2)," ",0)
 S MM=$TR($J(MM,2)," ",0)
 F DD=31:-1:28 S DT=$$^%L1DC(YY_MM_DD,4) Q:DT
 Q DD 
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREPIN ;
 D ^W4IN
 ;
 S DOP=$G(%ARG("DOP"))
 S SH=0,SHD=0,PRKBL=0
 ;
 S V("F"_DOP)="onefn",V("G"_DOP)="d`gnd",V("H"_DOP)="dtwd",V("T"_DOP)=$$TIPPS
 N AA,JJ S AA="IJKLMNOPQ"
 F JJ=1:1:$L(AA) D
 .N LET S LET=$E(AA,JJ) Q:LET=""
 .S V(LET_DOP)=$$U^W4VT(LET)
 S V("V"_DOP)="`""k k""dq"
 S V("O"_DOP)=$$^W4VT(7),V("Q"_DOP)=$$^W4VT(9)
 S V("Z"_DOP)="yelz",V("A"_DOP)="oeict",V("MAM"_DOP)="n""rn"
 ;
 S GLOB=$$^W4GL("Z1")_"(DAT)"
 Q
 ;
 ;
PREP(DAT1,DAT2,NG) ;
 N (JB,%ARG,DAT1,DAT2,NG,SZ)
 ;
 D PREPIN
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 K Z
 F N=DT1:1:DT2 D
 .S DAT=$$^%L1DC(N,2)
 .
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(N,N2)=$G(Z(N,N2))+$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z(N,"MTB",N3)=$G(Z(N,"MTB",N3))+$G(^(N3))
 ..
 ..S Z(N,"V"_DOP)=0 F J=1:1:9 D
 ...I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ...S Z(N,"V"_DOP)=Z(N,"V"_DOP)+$G(@("Z("_N_",""V"_J_DOP_""")"))
 ..S Z(N,"A"_DOP)=$G(Z(N,"F"_DOP))+$G(Z(N,"G"_DOP))+$G(Z(N,"V"_DOP))+$G(Z(N,"MP"_DOP))
 ..
 ..I '$$SHOWTIP(N) S Z(N,"T"_DOP)=""
 ..I '$$^W4TIPPD(N) D
 ...S Z(N,"A"_DOP)=Z(N,"A"_DOP)-$G(Z(N,"T"_DOP))
 ..
 ..S N2="" F  S N2=$O(Z(N,N2)) Q:N2=""  D
 ...I N2'="MTB" S Z(N,N2)=$S(Z(N,N2):$J(Z(N,N2),2,2),1:"")
 ;
 K SZ
 S N="" F  S N=$O(Z(N)) Q:N=""  D
 .S N2="" F  S N2=$O(Z(N,N2)) Q:N2=""  D
 ..S SZ(NG,N2)=$G(SZ(NG,N2))+Z(N,N2)
 ;
 S GLGR=$$GLGR
 ;
 S N="" F  S N=$O(Z(N)) Q:N=""  D
 .S DD=+$ZD(N,"DD")
 .S @GLGR@("VL",NG,DD)=$G(Z(N,"A"_DOP))+$G(Z(N,"H"_DOP))
 ;
 N DD1 F DD1=DD+1:1:31 S @GLGR@("VL",NG,DD1)=0
 ;
 Q
 ;
 ;
SHOWTIP(DD) ;
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=$$NG
 N SM0 S SM0=60 I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 W " <span style=""font-size:"_$$^W3FSZ(16)_""" >",!
   W $$^%W1DICT("MONTHGRAPHCOMPARISON",DATE1_"<>"_DATE2)
 W "</span>",!
 ;
 D NIS(LEFT,TOP)
 ;
 D GRAPHKIND(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22 I $$MSL^W4PRM S SM1=5,SM2=20
 ;
 I $$MSL^W4PRM D ORDSKIND(LEFT+SM0+SM2,TOP,DOP)
 ;
 D TOTBOT(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("DAYS")
 W " </p>",!
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
TOT(NG) ;
 N GLGR,DD,TOT S GLGR=$$GLGR
 S TOT=0
 S DD="" F  S DD=$O(@GLGR@("VL",NG,DD)) Q:DD=""  D
 .S TOT=TOT+$G(^(DD))
 Q TOT
 ;
NG(STAM) ;
 Q $$NG^W4GRPHYP
 ;
NIS(LEFT,TOP)
 W "<p style=""position:absolute;left:"_LEFT_"%;top:"_TOP_"%"">",!
  W $$^%W1DICT("NIS")
 W " </p>",!
 Q 
 ;
GRAPHKIND(TOP,TYPE) ;
 W "<p style=""position:absolute;left:14%;top:"_(TOP-2)_"%"">",!
  W $$^%W1DICT("KINDOFGRAPH")_" "
  W "<select id=""type"" onChange=""OnChangeType()"" >",!
   W "<option value=""bar"" "_$$SELECTED("bar",TYPE)_" >Bar</option>",!
   W "<option value=""line"" "_$$SELECTED("line",TYPE)_" >Line</option>",!
  W "</select>",!
 W " </p>",!
 Q
 ;
ORDSKIND(SM,TOP,DOP) ;
 W "<p style=""position:absolute;left:"_SM_"%;top:"_(TOP-2)_"%"">",!
  W $$^%W1DICT("KINDOFORDERS")_" "
  W "<select id=""dop"" onChange=""OnChangeOrdersType()"" >",!
   W "<option value="""" "_$$SELECTED("",DOP)_" >"_$$^%W1DICT("ALLORDERS")_"</option>",!
   W "<option value=""S"" "_$$SELECTED("S",DOP)_" >"_$$^%W1DICT("RESTORDERS")_"</option>",!
   W "<option value=""L"" "_$$SELECTED("L",DOP)_" >"_$$^%W1DICT("DLVORDERS")_"</option>",!
   W "<option value=""T"" "_$$SELECTED("T",DOP)_" >"_$$^%W1DICT("TAWORDERS")_"</option>",!
  W "</select>",!
 W " </p>",!
 Q
 ;
TOTBOT(TOPSM)
 W "<p style=""position:absolute;left:45%;top:"_TOPSM_"%;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">",!
  ;
  D
  .W "<span style=""color:brown;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT("TOTAL")_" "_DATE1_"</span>",!
  .W $$NBSP^%L1FRM(2)
  .W "<span style=""color:green;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  . N TOT1,TOT2 S TOT1=$$TOT(1),TOT2=$$TOT(2)
  . W $J(TOT1,2,2)_" "_$$^%W1DICT("NIS")
  .W "</span>",!
  .W "<br>"
  .W "<span style=""color:brown;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT("TOTAL")_" "_DATE2_"</span>",!
  .W $$NBSP^%L1FRM(2)
  .W "<span style=""color:green;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  . W $J(TOT2,2,2)_" "_$$^%W1DICT("NIS")
  .W "</span>",!
  . W "<br>",!
  . N SIGN,AHUZ S SIGN="",CLR="",AHUZ=0
  . I TOT1 S AHUZ=$J((TOT2/TOT1)*100-100,2,2)
  . I AHUZ>0 S SIGN="+"
  . I AHUZ<0 S CLR="red"
  . W "<span dir=""LTR"" style=""color:"_CLR_";font-size:"_$$^W3FSZ(14)_""">"
  .  W SIGN_AHUZ_"%"
  . W "</span>"
 W "</p>",!
 Q
 ;
YY1 ; 
 W "<td>"_$$^%W1DICT("COMPAR")_"&nbsp;"
  W "<select id=""DATID1yy"">",!
   D SELYY^W4GRPHYY($$YYNOW^W4GRPHYY)
  W "</select>",!
 W "</td>",!
 Q
 ;
MM1 ;
 W "<td>"
  W "<select id=""DATID1mm"">",!
   N CURMM S CURMM=$ZD($H,"MM")
   D SELMM(CURMM)
  W "</select>",!
 W "</td>"
 Q
 ;
YY2 ; 
 W "<td>"_$$^%W1DICT("COMPARTO")_"&nbsp;"
  W "<select id=""DATID2yy"">",!
   D SELYY^W4GRPHYY($$YYNOW^W4GRPHYY)
  W "</select>",!
 W "</td>",!
 Q
 ; 
MM2 ;
 W "<td>"
  W "<select id=""DATID2mm"">",!
   N PREVMM
   S PREVMM=$ZD($H,"MM")-1
   I PREVMM<1 S PREVMM=1
   D SELMM(PREVMM)
  W "</select>",!
 W "</td>"
 Q
 ;
SELMM(MM) ;
 N I F I=1:1:12 D
 .W "<option value="""_I_""" "_$S(I=+MM:" selected=""selected"" ",1:"")_" >" 
 . W $TR($J(I,2)," ",0)_" "_$$H2U^%L1FRM($$TV^%W1DICT($$^%W1LNG,"MM"_I))
 .W "</option>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHY0
W4GRPHYD ; [ 12.10.21 09:47 ] [ 15.01.19 14:27 ] [ 02.02.18 18:16 ] 
 N (JB,%ARG,%REM)
 I $G(%ARG("SHOW"))=0 Q
 D ^%W1ARG
 S WHAT=$S($G(%ARG("KVZ"))'="":"KVZ",1:"DEP")
 I $G(%ARG("W4TOTYR"))=1 D
 .K @$$^W4MAIN("VRM")
 .M @$$^W4MAIN("VRM")=@$$^W4MAIN("VRMDEP")
 I $G(%ARG("W4TOTYR"))=2 D
 .K @$$^W4MAIN("VRM")
 .M @$$^W4MAIN("VRM")=@$$^W4MAIN("VRMKVZ")
 ;
 D VRM
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=1
 ;
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S YY=$G(%ARG("YY")) I 'YY W "A YEAR NOT DEFINED !" Q 
 I $L(YY)=4 S YY=$E(YY,3,4)
 ;
 S COLX=12
 S @GLGR@("COLX")=COLX
 ;
 S I1=0
 F I=1:1:COLX D
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I
 .S @GLGR@("MDY",I)=I1
 ;
 D PREP($G(@WHAT),MM1,MM2,YY,WHAT)
 ;
 S COLG=1
 ;
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @GLGR@("LB",1)=$$TV^%W1DICT($$^%W1LNG,"TOTSALES")
 S @GLGR@("BGC",1)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @GLGR@("BRDC",1)="rgba(255,99,132,1)" ;
 ;
 D SHOW
 ;
 Q
 ;
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREP(DEP,MM1,MM2,YY,WHAT) ;
 N (JB,%ARG,DEP,MM1,MM2,YY,WHAT)
 D VRM
 ;
 S GLGR=$$GLGR
 ;
 I DEP'="TOT" D
 .F MM=MM1:1:MM2 D
 ..D SUM(+DEP,MM) ; -- SSUM,TOT
 ..S @GLGR@("VL",1,MM)=$J(TOT,2,2)
 ;
 I DEP="TOT" D
 .S DP="" F  S DP=$O(@VRM@(DP)) Q:DP=""  D
 ..S SUM=0
 ..F MM=MM1:1:MM2 D
 ...D SUM(DP,MM)
 .
 .F MM=MM1:1:MM2 D
 ..S @GLGR@("VL",1,MM)=$J($G(SSUM("MM",MM)),2,2)
 ;
 Q
 ;
 ;
SUM(DEP,MM) ;
 N (JB,%ARG,DEP,MM,SSUM,TOT,WHAT)
 S YY=$G(%ARG("YY"))
 I $G(WHAT)="" S WHAT="DEP"
 Q:$G(DEP)=""
 D VRM
 S MM0=$TR($J(MM,2)," ",0)
 S SUM=$G(@VRM@(DEP,WHAT,MM0,"S"))-$G(@VRM@(DEP,WHAT,MM0,"HP"))
 S HNH=$G(@VRM@(DEP,WHAT,MM0,"HNH"))
 S DMS=$G(@VRM@(DEP,WHAT,MM0,"DMS"))
 S TOT=SUM-HNH+DMS
 I $G(%ARG("LMAM")) D
 .N DD,AHMAM S DD="01"_MM0_YY S AHMAM=$$MAMD^W4L(DD)
 .S TOT=$J(TOT*100/(100+AHMAM),2,2)
 S SSUM("DEP",DEP)=$G(SSUM(WHAT,DEP))+TOT
 S SSUM("MM",MM)=$G(SSUM("MM",MM))+TOT
 Q
 ;
PREPIN ;
 Q
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=1
 N SM0 S SM0=60
 ;;I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 W " <span style=""font-size:"_$$^W3FSZ(16)_""" >",!
   W $$^%W1DICT("YY")_" "_$G(%ARG("YY"))_"</span>"
   ;
   I $G(@WHAT) D 
   .W $$NBSP^%L1FRM(5)
   .W " <span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;color:green"" >"
   . I WHAT="DEP" W $$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
   . I WHAT="KVZ" W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KVZ)))
   .W "</span>"
   ;
   I $G(DAYS),DAYS'=1111111 D
   .W $$NBSP^%L1FRM(5)
   .W " [ " D HDDAYS^W4DEPREP(DAYS) W " ] "
 ;
 D NIS^W4GRPHMP(LEFT,TOP)
 ;
 D GRAPHKIND^W4GRPHMP(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22
 ;
 ;;I $$MSL^W4PRM S SM1=5,SM2=20
 ;
 ;;D SHOWTOT^W4GRPHMP(LEFT+SM0+SM1,TOP)
 ;
 ;;I $$MSL^W4PRM D ORDSKIND^W4GRPHMP(LEFT+SM0+SM2,TOP,DOP)
 ;
 D TOTBOT^W4GRPHMP(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("MONTHS")
 W " </p>",!
 ;
 D DIVBUT
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
TOT(NG) ;
 N GLGR,MM,TOT S GLGR=$$GLGR
 S TOT=0
 S MM="" F  S MM=$O(@GLGR@("VL",NG,MM)) Q:MM=""  D
 .S TOT=TOT+$G(^(MM))
 Q TOT
 ;
YY ;
 W "<td>"_$$^%W1DICT("YY")_"&nbsp;"
  W "<select id=""DATIDyy"">",!
   D SELYY^W4GRPHYY($$YYNOW^W4GRPHYY)
  W "</select>",!
 W "</td>",!
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"" style=""position:absolute;left:48%;top:"_(TOP+HG+15)_"%"" >",!
  I '$$PRINT D
  .D ^W4BTN("PREPPRINT","PrepPrint('1')","blue")
  I $$PRINT D
  .D ^W4BTN("PRINT","Print()","blue")
  ;
  W $$NBSP^%L1FRM(5)
  D ^W4BTN("CLOSE","Close()","red")
 W " </div>",!
 Q
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
PRINT(STAM) ; 
 Q $G(%ARG("PRINT")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHYD
W4GRPHYD ; [ 12.10.21 11:13 ] [ 15.01.19 14:27 ] [ 02.02.18 18:16 ] 
 N (JB,%ARG,%REM)
 I $G(%ARG("SHOW"))=0 Q
 D ^%W1ARG
 S WHAT=$S($G(%ARG("KVZ"))'="":"KVZ",1:"DEP")
 ;
 I $G(%ARG("W4TOTYR"))=1 D
 .K @$$^W4MAIN("VRM")
 .M @$$^W4MAIN("VRM")=@$$^W4MAIN("VRMDEP")
 ;
 I $G(%ARG("W4TOTYR"))=2 D
 .K @$$^W4MAIN("VRM")
 .M @$$^W4MAIN("VRM")=@$$^W4MAIN("VRMKVZ")
 ;
 D VRM
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=1
 ;
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S YY=$G(%ARG("YY")) I 'YY W "A YEAR NOT DEFINED !" Q 
 I $L(YY)=4 S YY=$E(YY,3,4)
 ;
 S COLX=12
 S @GLGR@("COLX")=COLX
 ;
 S I1=0
 F I=1:1:COLX D
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I
 .S @GLGR@("MDY",I)=I1
 ;
 D PREP($G(@WHAT),MM1,MM2,YY,WHAT)
 ;
 S COLG=1
 ;
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @GLGR@("LB",1)=$$TV^%W1DICT($$^%W1LNG,"TOTSALES")
 S @GLGR@("BGC",1)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @GLGR@("BRDC",1)="rgba(255,99,132,1)" ;
 ;
 D SHOW
 ;
 Q
 ;
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREP(DEP,MM1,MM2,YY,WHAT) ;
 N (JB,%ARG,DEP,MM1,MM2,YY,WHAT)
 D VRM
 ;
 S GLGR=$$GLGR
 ;
 I DEP'="TOT" D
 .F MM=MM1:1:MM2 D
 ..D SUM(WHAT,+DEP,MM) ; -- SSUM,TOT
 ..S @GLGR@("VL",1,MM)=$J(TOT,2,2)
 ;
 I DEP="TOT" D
 .S DP="" F  S DP=$O(@VRM@(DP)) Q:DP=""  D
 ..S SUM=0
 ..F MM=MM1:1:MM2 D
 ...D SUM(WHAT,DP,MM)
 .
 .F MM=MM1:1:MM2 D
 ..S @GLGR@("VL",1,MM)=$J($G(SSUM("MM",MM)),2,2)
 ;
 Q
 ;
 ;
SUM(WHAT,DEP,MM) ;
 N (JB,%ARG,DEP,MM,SSUM,TOT,WHAT)
 S YY=$G(%ARG("YY"))
 I $G(WHAT)="" S WHAT="DEP"
 Q:$G(DEP)=""
 D VRMG
 S MM0=$TR($J(MM,2)," ",0)
 S TOT=$G(@VRMG@(WHAT,DEP,MM0)) ;; SUM-HNH+DMS
 ;
 S SSUM("DEP",DEP)=$G(SSUM(WHAT,DEP))+TOT
 S SSUM("MM",MM)=$G(SSUM("MM",MM))+TOT
 Q
 ;
PREPIN ;
 Q
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=1
 N SM0 S SM0=60
 ;;I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 W " <span style=""font-size:"_$$^W3FSZ(16)_""" >",!
   W $$^%W1DICT("YY")_" "_$G(%ARG("YY"))_"</span>"
   ;
   I $G(@WHAT) D 
   .W $$NBSP^%L1FRM(5)
   .W " <span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;color:green"" >"
   . I WHAT="DEP" W $$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
   . I WHAT="KVZ" W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KVZ)))
   .W "</span>"
   ;
   I $G(DAYS),DAYS'=1111111 D
   .W $$NBSP^%L1FRM(5)
   .W " [ " D HDDAYS^W4DEPREP(DAYS) W " ] "
 ;
 D NIS^W4GRPHMP(LEFT,TOP)
 ;
 D GRAPHKIND^W4GRPHMP(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22
 ;
 D TOTBOT^W4GRPHMP(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("MONTHS")
 W " </p>",!
 ;
 D DIVBUT
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
TOT(NG) ;
 N GLGR,MM,TOT S GLGR=$$GLGR
 S TOT=0
 S MM="" F  S MM=$O(@GLGR@("VL",NG,MM)) Q:MM=""  D
 .S TOT=TOT+$G(^(MM))
 Q TOT
 ;
YY ;
 W "<td>"_$$^%W1DICT("YY")_"&nbsp;"
  W "<select id=""DATIDyy"">",!
   D SELYY^W4GRPHYY($$YYNOW^W4GRPHYY)
  W "</select>",!
 W "</td>",!
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"" style=""position:absolute;left:48%;top:"_(TOP+HG+15)_"%"" >",!
  I '$$PRINT D
  .D ^W4BTN("PREPPRINT","PrepPrint('1')","blue")
  I $$PRINT D
  .D ^W4BTN("PRINT","Print()","blue")
  ;
  W $$NBSP^%L1FRM(5)
  D ^W4BTN("CLOSE","Close()","red")
 W " </div>",!
 Q
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
VRMG ;
 S VRMG=$$^W4MAIN("VRMG")
 Q
 ;
PRINT(STAM) ; 
 Q $G(%ARG("PRINT")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHYP
W4GRPHYP ; [ 14.04.26 02:39 ] [ 03.01.18 13:25 ] [ 06.11.17 15:04 ] 
 N (JB,%ARG,%REM,Z,SZ)
 I $G(%ARG("SHOW"))=0 Q
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=$$NG
 ;
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S YY=$G(%ARG("YY")) I 'YY W "A YEAR NOT DEFINED !" Q 
 I $L(YY)=4 S YY=$E(YY,3,4)
 ;
 S COLX=12
 S @GLGR@("COLX")=COLX
 ;
 S DAT1="0101"_YY
 S DAT2="3112"_YY
 ;
 S I1=0
 F I=1:1:COLX D
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I
 .S @GLGR@("MDY",I)=I1
 ;
 D PREP(DAT1,DAT2,NG)
 ;
 S COLG=1
 I NG=4 S COLG=3
 ;
 
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @$$GLGR@("LB",1)=$$TV^%W1DICT($$^%W1LNG,"TOTSALES")
 S @$$GLGR@("BGC",1)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)" ;
 ;
 S @$$GLGR@("LB",2)=$$TV^%W1DICT($$^%W1LNG,"TOTNETTO")
 S @$$GLGR@("BGC",2)="rgba(54, 162, 235, .4)"
 S @$$GLGR@("BRDC",2)="rgba(54, 162, 235, 1)"
 ;
 S @$$GLGR@("LB",3)=$$TV^%W1DICT($$^%W1LNG,"TOTCREDIT")
 S @$$GLGR@("BGC",3)="rgba(255, 206, 86, .4)"
 S @$$GLGR@("BRDC",3)="rgba(255, 206, 86, 1)"
 ;
 D SHOW
 Q
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREP(DAT1,DAT2,NG) ;
 N (JB,%ARG,DAT1,DAT2,NG,Z,SZ)
 D PREPIN
 ;
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 K Z
 F N=DT1:1:DT2 D
 .S D=$$^%L1DC(N,8)
 .S DAT=$ZD(N,"YYMMDD")
 .S MM=+$E(DAT,3,4) Q:'MM
 .I $G(%ARG("DAYS")),'$E(%ARG("DAYS"),D) Q
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(MM,N2)=$G(Z(MM,N2))+$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z(MM,"MTB",N3)=$G(Z(MM,"MTB",N3))+$G(^(N3))
 ..
 ..S Z(MM,"V"_DOP)=0 F J=1:1:9 D
 ...I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ...S Z(MM,"V"_DOP)=Z(MM,"V"_DOP)+$G(@("Z("_MM_",""V"_J_DOP_""")"))
 ..S Z(MM,"A"_DOP)=$G(Z(MM,"F"_DOP))+$G(Z(MM,"G"_DOP))+$G(Z(MM,"V"_DOP))+$G(Z(MM,"MP"_DOP))
 ..
 ..I '$$SHOWTIP(N) S Z(MM,"T"_DOP)="" ; -- ???
 ..I '$$^W4TIPPD(N) D
 ...S Z(MM,"A"_DOP)=Z(MM,"A"_DOP)-$G(Z(MM,"T"_DOP))
 ..
 ..S N2="" F  S N2=$O(Z(MM,N2)) Q:N2=""  D
 ...I N2'="MTB" S Z(MM,N2)=$S(Z(MM,N2):$J(Z(MM,N2),2,2),1:"")
 ;
 K SZ
 S MM="" F  S MM=$O(Z(MM)) Q:MM=""  D
 .S N2="" F  S N2=$O(Z(MM,N2)) Q:N2=""  D
 ..S SZ(N2)=$G(SZ(N2))+Z(MM,N2)
 ;
 S GLGR=$$GLGR
 ;
 S MM="" F  S MM=$O(Z(MM)) Q:MM=""  D
 .I NG=1!(NG=4) S @GLGR@("VL",1,MM)=$G(Z(MM,"A"_DOP))+$G(Z(MM,"H"_DOP))
 .I NG=2!(NG=4) S @GLGR@("VL",2,MM)=$G(Z(MM,"A"_DOP))
 .I NG=3!(NG=4) S @GLGR@("VL",3,MM)=$G(Z(MM,"H"_DOP))
 ;
 Q
 ;
 ;
PREPIN ;
 D PREPIN^W4GRPHMP
 Q
 ;
 ;
SHOWTIP(DD) ;
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=$$NG
 N SM0 S SM0=60 I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 W " <span style=""font-size:"_$$^W3FSZ(16)_""" >",!
   W $$^%W1DICT("YY")_" "_$G(%ARG("YY"))
 W "</span>",!
 ;
 D NIS^W4GRPHMP(LEFT,TOP)
 ;
 D GRAPHKIND^W4GRPHMP(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22 I $$MSL^W4PRM S SM1=5,SM2=20
 ;
 D SHOWTOT^W4GRPHMP(LEFT+SM0+SM1,TOP)
 ;
 I $$MSL^W4PRM D ORDSKIND^W4GRPHMP(LEFT+SM0+SM2,TOP,DOP)
 ;
 D TOTBOT^W4GRPHMP(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("MONTHS")
 W " </p>",!
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
TOT(NG) ;
 N GLGR,MM,TOT S GLGR=$$GLGR
 S TOT=0
 S MM="" F  S MM=$O(@GLGR@("VL",NG,MM)) Q:MM=""  D
 .S TOT=TOT+$G(^(MM))
 Q TOT
 ;
NG(STAM) ;
 N NG
 S NG=$G(%ARG("NG")) I NG<1 S NG=1
 Q NG
 ;
YY ;
 W "<td>"_$$^%W1DICT("YY")_"&nbsp;"
  W "<select id=""DATIDyy"">",!
   D SELYY^W4GRPHYY($$YYNOW^W4GRPHYY)
  W "</select>",!
 W "</td>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHYR
W4GRPHYR ; [ 15.01.19 07:52 ] [ 14.01.19 22:59 ] [ 02.02.18 18:16 ] 
 N (JB,%ARG,%REM)
 I $G(%ARG("SHOW"))=0 Q
 D ^%W1ARG
 D VRMG
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=1
 ;
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S YY=$G(%ARG("YY")) I 'YY W "A YEAR NOT DEFINED !" Q 
 I $L(YY)=4 S YY=$E(YY,3,4)
 ;
 S COLX=12
 S @GLGR@("COLX")=COLX
 ;
 S I1=0
 F I=1:1:COLX D
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I
 .S @GLGR@("MDY",I)=I1
 ;
 D PREP(KIND,WHAT,MM1,MM2,YY)
 ;
 S COLG=1
 ;
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @GLGR@("LB",1)=$$TV^%W1DICT($$^%W1LNG,"TOTAL")
 S @GLGR@("BGC",1)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @GLGR@("BRDC",1)="rgba(255,99,132,1)" ;
 ;
 D SHOW
 ;
 Q
 ;
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREP(KIND,WHAT,MM1,MM2,YY) ;
 N (JB,%ARG,MM1,MM2,YY,KIND,WHAT)
 D VRMG
 ;
 S GLGR=$$GLGR
 ;
 F MM=MM1:1:MM2 D
 .D SUM(KIND,WHAT,MM,GLGR)
 ;
 Q
 ;
 ;
SUM(KIND,WHAT,MM,GLGR) ;
 N (JB,%ARG,MM,KIND,WHAT,GLGR)
 I $G(KIND)="" Q
 I $G(WHAT)="" Q
 D VRMG
 S TOT=$G(@VRMG@(KIND,WHAT,+MM))
 S @GLGR@("VL",1,MM)=$J(TOT,2,2)
 Q
 ;
PREPIN ;
 Q
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=1
 N SM0 S SM0=60
 ;;I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 ;
 W $$NBSP^%L1FRM(5)
 W " <span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;color:green"" >"
  W $$KOT
 W "</span>"
   ;
 D NIS^W4GRPHMP(LEFT,TOP)
 ;
 I '$$PRINT D GRAPHKIND^W4GRPHMP(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22
 ;
 I $G(WHAT)'="AVG" D TOTBOT^W4GRPHMP(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("MONTHS")
 W " </p>",!
 ;
 D DIVBUT
 ;
 W "<iframe id=""graph"" src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
TOT(NG) ;
 N GLGR,MM,TOT S GLGR=$$GLGR
 S TOT=0
 S MM="" F  S MM=$O(@GLGR@("VL",NG,MM)) Q:MM=""  D
 .S TOT=TOT+$G(^(MM))
 Q TOT
 ;
YY ;
 W "<td>"_$$^%W1DICT("YY")_"&nbsp;"
  W "<select id=""DATIDyy"">",!
   D SELYY^W4GRPHYY($$YYNOW^W4GRPHYY)
  W "</select>",!
 W "</td>",!
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"" style=""position:absolute;left:48%;top:"_(TOP+HG+15)_"%"" >",!
 I '$$PRINT D
 . D ^W4BTN("PREPPRINT","PrepPrint('1')","blue")
 . W $$NBSP^%L1FRM(5)
 ;
 I $$PRINT D
 . D ^W4BTN("PRINT","Print()","blue")
 .  W $$NBSP^%L1FRM(5)
 ;
 D ^W4BTN("CLOSE","Close()","red")
 W " </div>",!
 Q
 ;
VRMG ;
 S VRMG=$$^W4MAIN("VRMG")
 Q
 ;
KOT(STAM) ; 
 N PRM1,PRM2 S (PRM1,PRM2)=""
 I $G(KIND)="A",WHAT="TOT" S PRM1="zexikn"
 I $G(KIND)="D" S PRM1="migelyn"
 I $G(KIND)="R" S PRM1="dcrqn"
 I $G(WHAT)="TOT" S PRM2=""
 I $G(WHAT)="ORDS" S PRM2="zepnfd itl"
 I $G(WHAT)="GUESTS" S PRM2="micreq itl"
 I $G(WHAT)="AVG" S PRM2="creq rvenn itl"
 Q $$^%W1DICT("GRAPHYEAR",PRM1_"<>"_PRM2_"<>"_$G(%ARG("YY"))_"<>"_$G(%ARG("MM1"))_"<>"_$G(%ARG("MM2")))
 ;
PRINT(STAM) ; 
 Q $G(%ARG("PRINT")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHYS
W4GRPHYS ; [ 14.04.26 02:39 ] [ 09.05.18 12:54 ] [ 07.05.18 12:17 ] 
 N (JB,%ARG,%REM,Z,SZ)
 I $G(%ARG("SHOW"))=0 Q
 D ^%W1ARG
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=$$NG
 ;
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S YY1=$G(%ARG("YY1")) I 'YY1 W "A FIRST YEAR NOT DEFINED !" Q 
 I $L(YY1)=4 S YY1=$E(YY1,3,4)
 S YYYY1="20"_YY1
 ;
 S YY2=$G(%ARG("YY2")) I 'YY2 W "A SECOND YEAR NOT DEFINED !" Q 
 I $L(YY2)=4 S YY2=$E(YY2,3,4)
 S YYYY2="20"_YY2
 ;
 S COLX=12 ; MM2-MM1+1
 S @GLGR@("COLX")=COLX
 ;
 I $L(MM1)<2 S MM1="0"_MM1
 I $L(MM2)<2 S MM2="0"_MM2
 ;
 S LM1=$$MDAYS^W4GRPHMS(YY1,MM2)
 S LM2=$$MDAYS^W4GRPHMS(YY2,MM2)
 ;
 S DAT11="01"_MM1_YY1
 S DAT12=LM1_MM2_YY1
 ;
 S DAT21="01"_MM1_YY2
 S DAT22=LM2_MM2_YY2
 ;
 S I1=0
 F I=1:1:COLX D
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I
 .S @GLGR@("MDY",I)=I1
 ;
 ;;W "DAT11="_DAT11_"  DAT12="_DAT12_"  DAT21="_DAT21_"  DAT22="_DAT22,! ;
 ;
 D PREP(DAT11,DAT12,2)
 D PREP(DAT21,DAT22,1)
 ;
 S COLG=2
 ;
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @$$GLGR@("LB",2)=YYYY1
 S @$$GLGR@("BGC",2)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @$$GLGR@("BRDC",2)="rgba(255,99,132,1)" ;
 ;
 S @$$GLGR@("LB",1)=YYYY2
 S @$$GLGR@("BGC",1)="rgba(54, 162, 235, .4)"
 S @$$GLGR@("BRDC",1)="rgba(54, 162, 235, 1)"
 ;
 ;S @$$GLGR@("LB",3)=$$TV^%W1DICT($$^%W1LNG,"TOTCREDIT")
 ;S @$$GLGR@("BGC",3)="rgba(255, 206, 86, .4)"
 ;S @$$GLGR@("BRDC",3)="rgba(255, 206, 86, 1)"
 ;
 D SHOW
 Q
 ;
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREP(DAT1,DAT2,NG) ;
 N (JB,%ARG,DAT1,DAT2,MM1,MM2,NG,SZ)
 D PREPIN
 ;
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 K Z
 F N=DT1:1:DT2 D
 .S D=$$^%L1DC(N,8)
 .S DAT=$ZD(N,"YYMMDD")
 .S MM=+$E(DAT,3,4) Q:'MM
 .I $G(%ARG("DAYS")),'$E(%ARG("DAYS"),D) Q
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(MM,N2)=$G(Z(MM,N2))+$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z(MM,"MTB",N3)=$G(Z(MM,"MTB",N3))+$G(^(N3))
 ..
 ..S Z(MM,"V"_DOP)=0 F J=1:1:9 D
...I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ...S Z(MM,"V"_DOP)=Z(MM,"V"_DOP)+$G(@("Z("_MM_",""V"_J_DOP_""")"))
 ..
 ..S Z(MM,"A"_DOP)=$G(Z(MM,"F"_DOP))+$G(Z(MM,"G"_DOP))+$G(Z(MM,"V"_DOP))+$G(Z(MM,"MP"_DOP))
 ..
 ..I '$$SHOWTIP(N) S Z(MM,"T"_DOP)="" ; -- ???
 ..I '$$^W4TIPPD(N) D
 ...S Z(MM,"A"_DOP)=Z(MM,"A"_DOP)-$G(Z(MM,"T"_DOP))
 ..
 ..S N2="" F  S N2=$O(Z(MM,N2)) Q:N2=""  D
 ...I N2'="MTB" S Z(MM,N2)=$S(Z(MM,N2):$J(Z(MM,N2),2,2),1:"")
 ;
 K SZ
 S MM="" F  S MM=$O(Z(MM)) Q:MM=""  D
 .S N2="" F  S N2=$O(Z(MM,N2)) Q:N2=""  D
 ..S SZ(N2)=$G(SZ(N2))+Z(MM,N2)
 ;
 S GLGR=$$GLGR
 ;
 S MM="" F  S MM=$O(Z(MM)) Q:MM=""  D
 .S @GLGR@("VL",NG,MM)=$G(Z(MM,"A"_DOP))+$G(Z(MM,"H"_DOP))
 ;
 Q
 ;
 ;
PREPIN ;
 D PREPIN^W4GRPHMP
 Q
 ;
 ;
SHOWTIP(DD) ;
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=$$NG
 N SM0 S SM0=60 I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 ;
 D NIS^W4GRPHMP(LEFT,TOP)
 ;
 D GRAPHKIND^W4GRPHMP(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22 I $$MSL^W4PRM S SM1=5,SM2=20
 ;
 I $$MSL^W4PRM D ORDSKIND^W4GRPHMP(LEFT+SM0+SM2,TOP,DOP)
 ;
 D TOTBOT(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("MONTHS")
 W " </p>",!
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
TOT(NG) ;
 N GLGR,MM,TOT S GLGR=$$GLGR
 S TOT=0
 S MM="" F  S MM=$O(@GLGR@("VL",NG,MM)) Q:MM=""  D
 .S TOT=TOT+$G(^(MM))
 Q TOT
 ;
NG(STAM) ;
 N NG
 S NG=$G(%ARG("NG")) I NG<1 S NG=1
 Q NG
 ;
YY1 ;
 W "<td>"_$$^%W1DICT("COMPAR")_"&nbsp;"
  W "<select id=""DATID1yy"">",!
   D SELYY^W4GRPHYY($$YYNOW^W4GRPHYY)
  W "</select>",!
 W "</td>",!
 Q
 ;
YY2 ;
 W "<td>"_$$^%W1DICT("COMPARTO")_"&nbsp;"
  W "<select id=""DATID2yy"">",!
   D SELYY^W4GRPHYY($ZD($H,"YY")-1)
  W "</select>",!
 W "</td>",!
 Q
 ;
MEADMM ;
 D MEADMM^W4GRPHYY
 Q
 ;
TOTBOT(TOPSM) ; 
 N DATE1,DATE2
 S DATE1=YYYY2
 S DATE2=YYYY1
 D TOTBOT^W4GRPHMS(TOPSM)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPHYY
W4GRPHYY ; [ 14.04.26 02:40 ] [ 02.11.25 14:33 ] [ 09.05.18 11:45 ] 
 N (JB,%ARG,%REM,Z,SZ)
 I $G(%ARG("SHOW"))=0 Q
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S NG=$$NG
 ;
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 S DOP=$G(%ARG("DOP"))
 ;
 S YY1=$G(%ARG("YY1")) I 'YY1 W "A YEAR1 NOT DEFINED !" Q 
 I $L(YY1)=4 S YY1=$E(YY1,3,4)
 S YY2=$G(%ARG("YY2")) I 'YY2 W "A YEAR2 NOT DEFINED !" Q 
 I $L(YY2)=4 S YY2=$E(YY2,3,4)
 ;
 S COLX=YY2-YY1+1
 S @GLGR@("COLX")=COLX
 ;
 S DAT1="0101"_YY1
 S DAT2="3112"_YY2
 ;
 S I1=0
 F I=1:1:COLX D
 .S I1=I1+1
 .S @GLGR@("LAB",I1)=I+YY1-1
 .S @GLGR@("MDY",I+YY1-1)=I1
 ;
 D PREP(DAT1,DAT2,NG)
 ;
 S COLG=1
 I NG=4 S COLG=3
 ;
 
 S @GLGR@("COLG")=COLG
 S @GLGR@("TYPE")="bar"
 ;
 S COLX=I1
 S @GLGR@("COLX")=COLX
 ;
 S @$$GLGR@("LB",1)=$$TV^%W1DICT($$^%W1LNG,"TOTSALES")
 S @$$GLGR@("BGC",1)="rgba(255,99,132,.4)" S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)"
 S @$$GLGR@("BRDC",1)="rgba(255,99,132,1)" ;
 ;
 S @$$GLGR@("LB",2)=$$TV^%W1DICT($$^%W1LNG,"TOTNETTO")
 S @$$GLGR@("BGC",2)="rgba(54, 162, 235, .4)"
 S @$$GLGR@("BRDC",2)="rgba(54, 162, 235, 1)"
 ;
 S @$$GLGR@("LB",3)=$$TV^%W1DICT($$^%W1LNG,"TOTCREDIT")
 S @$$GLGR@("BGC",3)="rgba(255, 206, 86, .4)"
 S @$$GLGR@("BRDC",3)="rgba(255, 206, 86, 1)"
 ;
 D SHOW
 Q
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
 ;
PREP(DAT1,DAT2,NG) ;
 N (JB,%ARG,DAT1,DAT2,NG,Z,SZ)
 D PREPIN^W4GRPHMP
 ;
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 K Z
 F N=DT1:1:DT2 D
 .S DAT=$ZD(N,"YYMMDD")
 .S YY=+$E(DAT,1,2) Q:'YY
 .S MM=$ZD(N,"MM")
 .I $G(%ARG("MM1")),MM<%ARG("MM1") Q
 .I $G(%ARG("MM2")),MM>%ARG("MM2") Q
 .
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(YY,N2)=$G(Z(YY,N2))+$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z(YY,"MTB",N3)=$G(Z(YY,"MTB",N3))+$G(^(N3))
 ..
 ..S Z(YY,"V"_DOP)=0 F J=1:1:9 D
 ...I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ...S Z(YY,"V"_DOP)=Z(YY,"V"_DOP)+$G(@("Z("_YY_",""V"_J_DOP_""")"))
 ..
 ..S Z(YY,"A"_DOP)=$G(Z(YY,"F"_DOP))+$G(Z(YY,"G"_DOP))+$G(Z(YY,"V"_DOP))+$G(Z(YY,"MP"_DOP))
 ..
 ..I '$$SHOWTIP(N) S Z(YY,"T"_DOP)="" ; -- ???
 ..I '$$^W4TIPPD(N) D
 ...S Z(YY,"A"_DOP)=Z(YY,"A"_DOP)-$G(Z(YY,"T"_DOP))
 ..
 ..S N2="" F  S N2=$O(Z(YY,N2)) Q:N2=""  D
 ...I N2'="MTB" S Z(YY,N2)=$S(Z(YY,N2):$J(Z(YY,N2),2,2),1:"")
 ;
 K SZ
 S YY="" F  S YY=$O(Z(YY)) Q:YY=""  D
 .S N2="" F  S N2=$O(Z(YY,N2)) Q:N2=""  D
 ..S SZ(N2)=$G(SZ(N2))+Z(YY,N2)
 ;
 S GLGR=$$GLGR
 ;
 S YY="" F  S YY=$O(Z(YY)) Q:YY=""  D
 .S YY1=$G(@GLGR@("MDY",YY)) Q:'YY1
 .I NG=1!(NG=4) S @GLGR@("VL",1,YY1)=$G(Z(YY,"A"_DOP))+$G(Z(YY,"H"_DOP))
 .I NG=2!(NG=4) S @GLGR@("VL",2,YY1)=$G(Z(YY,"A"_DOP))
 .I NG=3!(NG=4) S @GLGR@("VL",3,YY1)=$G(Z(YY,"H"_DOP))
 ;
 Q
 ;
 ;
SHOWTIP(DD) ;
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"
 ;
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=70,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=$$NG
 S DOP=$G(%ARG("DOP"))
 N SM0 S SM0=60 I $$MSL^W4PRM S SM0=50
 ;
 W "<br>",!
 W " <span style=""font-size:"_$$^W3FSZ(16)_""" >",!
   W $$^%W1DICT("YY1")_" "_$G(%ARG("YY1"))_" "_$$^%W1DICT("YY2")_" "_$G(%ARG("YY2"))
 W "</span>",!
 ;
 D NIS^W4GRPHMP(LEFT,TOP)
 ;
 D GRAPHKIND^W4GRPHMP(TOP,TYPE)
 ;
 N SM1,SM2 S SM1=22 I $$MSL^W4PRM S SM1=5,SM2=20
 ;
 D SHOWTOT^W4GRPHMP(LEFT+SM0+SM1,TOP)
 ;
 I $$MSL^W4PRM D ORDSKIND^W4GRPHMP(LEFT+SM0+SM2,TOP,DOP)
 ;
 D TOTBOT^W4GRPHMP(TOP+HG+5)
 ;
 W "<p style=""position:absolute;left:"_(WD+2)_"%;top:"_(TOP+HG+5)_"%"" >",!
   W $$^%W1DICT("YEARS")
 W " </p>",!
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_$G(%ARG("TYPE"))_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+6)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
SELECTED(VL,PRM) ;
 I VL=PRM Q " selected=""selected"" " 
 Q ""
 ;
TOT(NG) ;
 N GLGR,YY,TOT S GLGR=$$GLGR
 S TOT=0
 S YY="" F  S YY=$O(@GLGR@("VL",NG,YY)) Q:YY=""  D
 .S TOT=TOT+$G(^(YY))
 Q TOT
 ;
NG(STAM) ;
 N NG
 S NG=$G(%ARG("NG")) I NG<1 S NG=1
 Q NG
 ;
 ;
MEAD ;
 W "<td>"_$$^%W1DICT("YY1")_"&nbsp;"
  W "<select id=""DATID1yy"">",!
   D SELYY($$YYNOW-1)
  W "</select>",!
 W "</td>",!
 ;
 W "<td>"
  W $$^%W1DICT("YY2")_"&nbsp;"
  W "<select id=""DATID2yy"">",!
   D SELYY($$YYNOW)
  W "</select>",!
 W "</td>"
 ;
 W "<td>&nbsp;</td>"
 ;
 D MEADMM
 Q
 ;
 ;
MEADMM ;
 W "<td>"
  W $$^%W1DICT("FROMMONTH")_"&nbsp;"
  W "<select id=""DATID1mm"">",!
   D SELMM(1)
  W "</select>",!
 W "</td>"
 ;
 W "<td>"
  W $$^%W1DICT("TOMONTH")_"&nbsp;"
  W "<select id=""DATID2mm"">",!
   D SELMM(12)
  W "</select>",!
 W "</td>"
 ;
 Q
 ;
 ;
SELYY(GG) ;
 N I,YY S YY=$$YYNOW
 I $G(%ARG("YY")) S YY=%ARG("YY")
 F I=YY-15:1:YY D
 .W "<option value="""_(2000+I)_""" "_$S(I=+GG:" selected=""selected"" ",1:"")_" >" 
 . W (2000+I) 
 .W "</option>",!
 Q
 ;
SELMM(MM) ;
 N I F I=1:1:12 D
 .W "<option value="""_I_""" "_$S(I=+MM:" selected=""selected"" ",1:"")_" >" 
 . W $TR($J(I,2)," ",0)_" "_$$H2U^%L1FRM($$TV^%W1DICT($$^%W1LNG,"MM"_I))
 .W "</option>",!
 Q
 ;
YYNOW(STAM) ;
 Q $ZD($H,"YY")
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4GRPOS
W4GRPOS ; [ 05.08.23 06:52 ] [ 16.06.22 14:41 ] [ 10.08.21 12:05 ] 
 N (JB,%ARG)
 S JB=+$G(JB)
 S SRCH="",%ARG("CDKV")=""
 S SUGS=$$SUGS
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""80%"">",!
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 S NMCD="GROUPCODE"
 S NMNM="GROUPNAME"
 ;
 W "<th width=""8%"">"_$$^%W1DICT(NMCD)_"</th>"
 W "<th width=""25%"">"_$$^%W1DICT(NMNM)_"</th>"
 W "<th width=""60%"">"_$$^%W1DICT($$DEF)_"</th>"
 W "<th width=""7%"">"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 ;
 N N,NN,I
 D GLP
 ;
 N I S I=0
 K @GLP
 S SORT=$G(%ARG("SORT"))
 D
 .I SORT=1!'SORT D  Q
 ..S N="" F  S N=$O(@$$GL@(N)) Q:N=""  D LINE(N)
 .;
 .I SORT=2 D  Q
 ..N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 ..N K
 ..S N="",K=0 F  S N=$O(@$$GL@(N)) Q:N=""  D
 ...N NM S NM=$G(^(N))
 ...N IND S IND=$E($$INV^%L1FRM(NM),1,10)
 ...S IND=IND_$J("",10-$L(IND))
 ...F J=1:1 Q:'$D(@VRM@(IND_J))
 ...S @VRM@(IND_J)=N
 ..S N="" F  S N=$O(@VRM@(N)) Q:N=""  S N1=$G(^(N)) D LINE(N1)
 .;
 .I SORT=3 D
 ..N NOM
 ..S N="" F  S N=$O(@$$^W4GL("P1KVZSID")@(N)) Q:N=""  S NOM=$G(^(N)) D LINE(NOM)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
LINE(N) ;
 I $$GL["PARSUG",'$$^W4VWGR(N) Q
 W "<tr "
  W " id=""tr"_N_""" "
  W ">" S I=I+1
  W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
  W "<td align=""center"">&nbsp;"_$$NAME(N)_"&nbsp;</td>"
  W "<td align=""center"">",!
   I '$$SUGS S POS="" F  S POS=$O(@$$^W4PLUK@(POS)) Q:POS=""  D
   .I $G(^(POS))="",$G(@$$^W4GL("PLUK")@(POS,"LP"))="" Q
   .D POS(N,POS)
   I $$SUGS S SUG="" F  S SUG=$O(@$$^W4GL("SUGS")@(SUG)) Q:SUG=""  D POS(N,SUG)
  W "</td>"
  W "<td align=""center"">"
   W "<input type=""checkbox"" disabled=""disabled"" id=""chn"_N_""" >"
  W "</td>"
 W "</tr>",!
 Q
 ;
SAVEND(PRM) ;
 D GLP
 S PRM=$G(PRM)
 N KV,GRMDP
 S KV=$P(PRM,"^") Q:KV=""
 S GRNOPOS=$P(PRM,"^",2,20)
 ;
 D PUTGRNOPOS(KV,GRNOPOS)
 Q
 ;
GLP S GLP="^[$$^W3MAIN]TMPGR(JB)"
 Q
 ;
 ;
POS(N,POS) ;
 W "<span id=""nom"_N_"_"_POS_""" "
 W " style=""color:"_$S($$GRNOPOS(N,POS):"pink",1:"")_""" "
 W " onMouseOver=""ShowPos(this,event)"" "
 W " onMouseOut=""ClosePos()"" "
 W ">"_POS_"</span>"
 W "<input type=""checkbox"" id=""pos"_N_"_"_POS_""" "
 W $S($$GRNOPOS(N,POS):"",1:"checked=""checked"" ")
 W " name=""posn"_N_""" "
 W " onClick=""OnClickPos('"_N_"','"_POS_"')"" "
 W " /> "
 Q
 ;
OPTNAME(N) ;
 I $$SUGS Q "GROUPTABLEKINDSTABLE"
 Q "GROUPPOSITIONSTABLE"
 ;
GL(STAM) ;
 Q $$^W4GL("PARSUG")
 ;
NAME(N) ;
 Q $$^W3SHOWKV(N)
 ;
NP(STAM) ;
 I $$SUGS Q 9
 Q 8
 ;
GRNOPOS(GR,POS) ;
 I $G(GR)="" Q ""
 N MPOS S MPOS=$P($G(@$$GL@(GR,1)),"\",$$NP)
 I '$G(POS) Q MPOS
 I ("^"_MPOS_"^")[("^"_POS_"^") Q 1
 Q 0
 ;
PUTGRNOPOS(GR,VL) ;
 Q:$G(GR)=""
 S $P(@$$GL@(GR,1),"\",$$NP)=VL
 Q
 ;
SORT ;
 W "<select id=""sort"" onChange=""Sort()"" >",!
  W "<option value=""1"" "_$$SELECTED(1)_">"_$$^%W1DICT("NUMBERSORT")_"</option>",!
  W "<option value=""2"" "_$$SELECTED(2)_">"_$$^%W1DICT("ABCSORT")_"</option>",!
  W "<option value=""3"" "_$$SELECTED(3)_">"_$$^%W1DICT("GROUPORDERSORT")_"</option>",!
 W "</select>",!
 Q
 ;
SELECTED(SORT) ;
 I $G(%ARG("SORT"))=SORT Q " selected=""selected"" "
 Q ""
 ;
DEF(STAM) ;
 I $$SUGS Q "TABLEKINDS"
 Q "POSITIONS"
 ;
SUGS(STAM) ;
 Q $$GETP^%W1PRM("SUGS")
 
 
 
 
 
 
 
 
 

W4GRPOS0
W4GRPOS ; [ 01.01.16 14:34 ] [ 31.12.15 18:20 ] [ 30.12.15 05:24 ]
 N (JB,%ARG)
 S JB=+$G(JB)
 S SRCH="",%ARG("CDKV")=""
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""80%"">",!
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 S NMCD="GROUPCODE"
 S NMNM="GROUPNAME"
 ;
 W "<th width=""10%"">"_$$^%W1DICT(NMCD)_"</th>"
 W "<th width=""50%"">"_$$^%W1DICT(NMNM)_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("POSITIONS")_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 ;
 N N,NN,I
 D GLP
 ;
 N I S I=0
 K @GLP
 S SORT=$G(%ARG("SORT"))
 D
 .I SORT=1!'SORT D  Q
 ..S N="" F  S N=$O(@$$GL@(N)) Q:N=""  D LINE(N)
 .;
 .I SORT=2 D  Q
 ..N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 ..N K
 ..S N="",K=0 F  S N=$O(@$$GL@(N)) Q:N=""  D
 ...N NM S NM=$G(^(N))
 ...N IND S IND=$E($$INV^%L1FRM(NM),1,10)
 ...S IND=IND_$J("",10-$L(IND))
 ...F J=1:1 Q:'$D(@VRM@(IND_J))
 ...S @VRM@(IND_J)=N
 ..S N="" F  S N=$O(@VRM@(N)) Q:N=""  S N1=$G(^(N)) D LINE(N1)
 .;
 .I SORT=3 D
 ..N NOM
 ..S N="" F  S N=$O(@$$^W4GL("P1KVZSID")@(N)) Q:N=""  S NOM=$G(^(N)) D LINE(NOM)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
LINE(N) ;
 W "<tr "
  W " id=""tr"_N_""" "
  W ">" S I=I+1
  W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
  W "<td align=""center"">&nbsp;"_$$NAME(N)_"&nbsp;</td>"
  W "<td align=""center"">",!
   S POS="" F  S POS=$O(@$$^W4PLUK@(POS)) Q:POS=""  D
  . W "<span id=""nom"_N_"_"_POS_""" "
  . W " style=""color:"_$S($$GRNOPOS(N,POS):"pink",1:"")_""" "
  . W " onMouseOver=""ShowPos(this,event)"" "
  . W " onMouseOut=""ClosePos()"" "
  . W ">"_POS_"</span>"
  . W "<input type=""checkbox"" id=""pos"_N_"_"_POS_""" "
  . W $S($$GRNOPOS(N,POS):"",1:"checked=""checked"" ")
  . W " name=""posn"_N_""" "
  . W " onClick=""OnClickPos('"_N_"','"_POS_"')"" "
  . W " /> "
  W "</td>"
  W "<td><input type=""checkbox"" disabled=""disabled"" id=""chn"_N_""" ></td>"
 W "</tr>",!
 Q
 ;
SAVEND(PRM) ;
 D GLP
 S PRM=$G(PRM)
 N KV,GRMDP
 S KV=$P(PRM,"^") Q:KV=""
 S GRNOPOS=$P(PRM,"^",2,20)
 ;
 I GRNOPOS'?.P D PUTGRNOPOS(KV,GRNOPOS)
 Q
 ;
GLP S GLP="^[$$^W3MAIN]TMPGR(JB)"
 Q
 ;
 ;
OPTNAME(N) ;
 Q "GROUPPOSITIONSTABLE"
 ;
GL(STAM) ;
 Q $$^W4GL("PARSUG")
 ;
NAME(N) ;
 Q $$^W3SHOWKV(N)
 ;
GRNOPOS(GR,POS) ;
 I $G(GR)="" Q ""
 N MPOS S MPOS=$P($G(@$$GL@(GR,1)),"\",8)
 I '$G(POS) Q MPOS
 I ("^"_MPOS_"^")[("^"_POS_"^") Q 1
 Q 0
 ;
PUTGRNOPOS(GR,VL) ;
 Q:$G(GR)=""
 S $P(@$$^W4GL("PARSUG")@(GR,1),"\",8)=VL
 Q
 ;
SORT ;
 W "<select id=""sort"" onChange=""Sort()"" >",!
  W "<option value=""1"">"_$$^%W1DICT("NUMBERSORT")_"</option>",!
  W "<option value=""2"">"_$$^%W1DICT("ABCSORT")_"</option>",!
  W "<option value=""3"">"_$$^%W1DICT("GROUPORDERSORT")_"</option>",!
 W "</select>",!
 Q

W4GTVCH
W4GTVCH(GLBL,SUG) ;       [ 02.09.26 17:22 ] [ 01.06.26 18:56 ] [ 26.05.26 10:32 ] 
  ; GLBL - DIRECT REFERENCE
  ;  1    2     3    4     5      6    7   8
MZ ;SUM*TIME*WAITER*POS*ODEFMZ*TIPMZ*TRID*ZIC
  ;  1  2    3    4     5    6    7  8  9  10 11   12     13     14    15    16     17    18    19    20    21    22   23    24   25    27       30     31  32  33   34
V ;VTS*NCA*NISKA*SUG21*SUG1*CAVT*CAV*P1*PN*PC*FLP*AUTHNO*MIAUTH*TKFCA*SIBA*OFENCA*SUGMTB*KHVCA*HUZCA*SHEMCA*MOAD*SUGI*ASHTZ*CVV2*CVV4**TIPCA***VERSION*TRID*ZIP*MANP*ZIC
CH ;CHS*NCHECK*TZ*BSN*HESH*DATP*****FLP*TIPCH*****************TIME
HRA ;HRA
    ; 1    2     3    4   5    6    7      8    9    11   12    13     14    15     16     17     18     19    20     21      22     23     24      25    26    27
ASR ;LKHN*LKAH*LKHNH*ASR*HRA1*LKHR*HZMLK*TLUSH*KMTL**FLP*LKHN1*LKHR1*CIBVT*CIBCARD*CIBCID*CIBUID*CIBUIC*TSFMH*TIPAS*TBCARD*TBRECID*COUPNMB*COUPNM*COUPTEL*POS*CIBORD
 N I,ST S ST=$P($T(@SUG),";",2)
 F I=1:1:$L(ST,"*") I $L($P(ST,"*",I)) S @$P(ST,"*",I)=$P(GLBL,"*",I)
 Q
 ;
PUT(GLBL,SUG) ;--- GLBL - INDIRECT REFERECE
 N I,ST S ST=$$GETST(SUG)
 F I=1:1:$L(ST,"*") I $L($P(ST,"*",I)) S $P(@GLBL,"*",I)=$G(@$P(ST,"*",I))
 Q
 ;
GETST(SUG) ;
 Q $P($T(@SUG),";",2)
 ;
GET(HZM,NOM,SUG,RKV) ;
 N STHZ S STHZ=$G(@$$^W4ORD@(HZM,"CB",SUG,NOM))
 Q $$GETSTHZ(SUG,STHZ,RKV) ;
 ;
GETSTHZ(SUG,STHZ,RKV) ;
 N ST S ST=$$GETST(SUG)
 N VL S VL=""
 N I F I=1:1:$L(ST,"*") I $P(ST,"*",I)=RKV S VL=$P(STHZ,"*",I) Q
 Q VL
 ;
SUM(SUG,ST) ;
 I SUG="MZ" Q $$GETSTHZ(SUG,ST,"SUM") ;
 I SUG="V" Q $$GETSTHZ(SUG,ST,"CAV") ;
 I SUG="CH" Q $$GETSTHZ(SUG,ST,"CHS") ;
 I SUG="ASR" Q $$GETSTHZ(SUG,ST,"ASR") ;
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4H
W4H(DT,HZM) ; [ 07.02.24 12:17 ] [ 04.05.22 17:27 ] [ 25.07.11 09:27 ] 
 N MSD
 ;
 N MSP S MSP=$G(@$$^W4GL("P1H")@(DT))+1
 I $G(@$$^W4PRM@("MSPYOM"))>1 S MSP=MSP-.1#@$$^W4PRM@("MSPYOM")+.1
 ;;L +@$$^W4GL("P1H")@(DT):1
 ;;L +@$$^W4GL("P1HI")@(HZM):1
 ;;L +@$$^W4GL("P1H0")@(DT,HZM):1
 ;;L +@$$^W4GL("P1HI0")@(HZM):1
 ;
 S @$$^W4GL("P1H")@(DT)=MSP
 S @$$^W4GL("P1H")@(DT,HZM)=MSP
 S @$$^W4GL("P1HI")@(HZM,DT)=MSP
 S @$$^W4GL("P1H0")@(DT,HZM)=@$$^W4GL("P1H")@(DT,HZM)
 S @$$^W4GL("P1HI0")@(HZM,DT)=@$$^W4GL("P1HI")@(HZM,DT)
 ;
 D ^%S2GLSV($$^W4GL("P1H")_"("_DT_","_HZM_")",$$^W4FGIB)
 D ^%S2GLSV($$^W4GL("P1HI")_"("_HZM_","_DT_")",$$^W4FGIB)
 ;
 L  Q
 
 
 
 

W4HB2LK
W4HB2LK(HZM) ; [ 28.05.25 12:35 ] [ 27.05.25 20:16 ] [ 03.03.25 04:42 ] 
 N (JB,%ARG,%REM,HZM)
 ; ----------------- HADPASAT HESBONIT HELKIT
 S ORIG=+$P(HZM,";",2)
 S HZM=$P(HZM,";") Q:$G(HZM)=""
 I '$$^W4HZFULL(HZM) Q
 I $$^W4ISORD(HZM),'$$^W4CLOSE(HZM),'$$MSL^W4MSL(HZM)!$$DLV^W4CLOSE(HZM) D SETCLOSE^W4HZMST(HZM)
 D ^W4MDPPC,^%L1TS Q:$G(PRINT)=""  N SM S SM=0
 ;;S ^AA("W4HB2LK",HZM,$H)=1
 ;
 D
 .N VT,IND
 .S VT="" F  S VT=$O(@$$^W4ORD@(HZM,"CB",VT)) Q:VT=""  D
 ..Q:VT="ASR"
 ..S IND="" F  S IND=$O(@$$^W4ORD@(HZM,"CB",VT,IND)) Q:IND=""  D
 ...I $D(@$$^W4ORD@(HZM,"TOCUSNAME",VT,IND)) Q
 ...D SETTOCUSNAME^W4HZMST(HZM,VT,IND,IND_"-"_VT)
 ;
 I '$D(@$$^W4ORD@(HZM,"TOCUSNAME")) Q
 ;
 K TOCUST
 S VTS="" F  S VTS=$O(@$$^W4ORD@(HZM,"TOCUSNAME",VTS)) Q:VTS=""  D
 .S NOM="" F  S NOM=$O(@$$^W4ORD@(HZM,"TOCUSNAME",VTS,NOM)) Q:NOM=""  D
 ..S NM=$P($G(^(NOM)),"\") Q:NM&'$$HB2LK^W4PRM  Q:NM?.P  ;;S:NM="" NM=" " ; -- Q - 31/03/18
 ..S SUM=$$SUMIND^W4HZMST(HZM,VTS,NOM)
 ..S TIPI=$$TIPIND^W4HZMST(HZM,VTS,NOM)
 ..
 ..I $D(@$$^W4ORD@(HZM,"TOCUSNAME",VTS,NOM,"MKR")) D  Q
 ...S TOCUST(0,NM)=$G(TOCUST(0,NM))+SUM
 ...S TOCUST(0,NM,"VN")=$G(TOCUST(0,NM,"VN"))_VTS_":"_NOM_";"
 ...S TOCUST(0,NM,"TIP")=$G(TOCUST(0,NM,"TIP"))+TIPI
 ...K @$$^W4ORD@(HZM,"TOCUSNAME",VTS,NOM,"MKR")
 ..;
 ..S NP=$G(@$$^W4ORD@(HZM,"TOCUSNAME",VTS,NOM,"NP")) Q:'NP
 ..S TOCUST(+NP)=$P(NP,"\",2)
 ..S TOCUST(+NP,NM)=$G(TOCUST(+NP,NM))+SUM
 ..S TOCUST(+NP,NM,"TIP")=$G(TOCUST(+NP,NM,"TIP"))+TIPI
 ;
 S NM="" F  S NM=$O(TOCUST(0,NM)) Q:NM=""  D
 .I $G(TOCUST(0,NM))>0 D
 ..N NP S NP=$G(@$$^W4ORD@(HZM,"TOCUSNAME"))+1
 ..S VN=$G(TOCUST(0,NM,"VN")) Q:VN=""
 ..;
 ..F J=1:1:$L(VN,";")-1 D
 ...S ZN=$P(VN,";",J)
 ...S VTS=$P(ZN,":")
 ...S NOM=$P(ZN,":",2)
 ...S @$$^W4ORD@(HZM,"TOCUSNAME",VTS,NOM,"NP")=NP_"\"_$H
 ..S TOCUST(0,NM,"NP")=NP
 ..S @$$^W4ORD@(HZM,"TOCUSNAME")=NP
 ;
 S II=0,NHB=""
 F  S NHB=$O(TOCUST(NHB)) Q:NHB=""  D
 .S MAKOR=(NHB=0)
 .I 'MAKOR,'$$^W4CLOSE(HZM) Q
 .I 'MAKOR,$G(ORIG) Q
 .S NM="" F  S NM=$O(TOCUST(NHB,NM)) Q:NM=""  I $G(TOCUST(NHB,NM))>0,NM'=" " D
 ..D KOT
 ..S TXT=$$CENTR^%L1FRM($G(@$$^W4ORD@(HZM,"ETHB"))_" zipeayg levit",GWPC) D S1
 ..S TXT="" D S1
 ..S TXT=$J("",30)_"ceakl" D S1
 ..N NM1 S NM1=NM
 ..I NM S NM1=" "
 ..S TXT=%MDP("B")_$$CENTRB^%L1FRM(NM1,GWPC)_" "_%MDP("N") D S1
 ..S TXT="" D S1
 ..S TMM=$G(TOCUST(NHB)) I 'TMM S TMM=$H
 ..S TXT=$ZD($P(TMM,","),"DD/MM/YY")_"  "_$$T^%L1TIME($P(TMM,",",2))_" : xewn zwtd zrye jix`z " D S1
 ..I 'MAKOR S TXT=$ZD($P($H,","),"DD/MM/YY")_"  "_$$T^%L1TIME($P($H,",",2))_" : dqtcd zrye jix`z " D S1
 ..S TXT="" D S1
 ..S NHB1=NHB I 'NHB S NHB1=TOCUST(NHB,NM,"NP")
 ..S TXT=%MDP("B")_$$CENTRB^%L1FRM($S(MAKOR:"xewn",1:"wzrd")_"  zipeayg",GWPC)_%MDP("N") D S1
 ..;;S TXT=%MDP("B")_$$CENTRB^%L1FRM($J(+$G(@$$^W4ORD@(HZM,"ETHB5")),5)_"-"_NHB1_" 'qn",GWPC)_%MDP("N"),TXT("R")="" D S1
 ..S TXT=%MDP("B")_$$CENTRB^%L1FRM(HZM_"-"_NHB1_" 'qn",GWPC)_%MDP("N"),TXT("R")="" D S1
 ..;;S TXT=%MDP("B")_$S(MAKOR:"xewn",1:"wzrd")_%MDP("N") D S1
 ..
 ..S TXT=$C(10)_$J("",12)_HZM_" : dpnfd xear "_$C(10) D S1
 ..
 ..N SUM S SUM=TOCUST(NHB,NM)
 ..N TIPI S TIPI=$G(TOCUST(NHB,NM,"TIP"))
 ..D PCSUM(HZM,SUM,TIPI)
 ..D CUT
 ;
 S VT=""
 S IHB5=$O(@$$^W4ORD@(HZM,"ETHB5",99),-1)
 I IHB5 D
 .S HB5=$G(@$$^W4ORD@(HZM,"ETHB5",IHB5))
 .S HB5=$$SPA^%L1FRM(HB5)
 .S VT=$P(HB5,",",2)
 .I $$PTCA^W4HZTM(HZM)!(VT=1),'$$MZSM^W4PRM,$$HZM^W4MSD(HZM)!$$TAKEAWAY^W4HZMST(HZM),'$$MZMK^W4KIOSKO(HZM) D S2($G(%MDP("P"))) D ^W4PTHDLY
 Q
 ;
CUT ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
S1 S %MDP("N")=$G(%MDP("N"))
 S %MDP("B")=$G(%MDP("B"))
 S %MDP("R")=$G(%MDP("R"))
 S %MDP("RL")=$G(%MDP("RL"))
 I $$L^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),%MDP("N"))>40 S TXT=$$RPL^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),"")
 S TXT=%MDP("N")_TXT ;;$$CLST^%L1FRM(TXT,%MDP("B"),%MDP("N"))
S11 N PCN S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 S @$$^W4PC@(PRINT,PCN)=$J("",SM)_$TR(TXT,TS0,TSS)
 K TXT Q
 ;
S2(TXT) N PCN S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 S @$$^W4PC@(PRINT,PCN)=TXT
 Q
 ;
KOT ;
 I '$G(GWPC) S GWPC=40
 I '$D(%MDP("B"))!'$D(%MDP("N")) D ^W4MDPPC
 ;
 I $L(@$$^W4PL@("ESEK",1))'>(GWPC\2) D
 .S TXT=$G(%MDP("B"))_$$CENTRB^%L1FRM(@$$^W4PL@("ESEK",1),GWPC)_$G(%MDP("N")) S TXT("R")="" D S1
 ;
 I $L(@$$^W4PL@("ESEK",1))>(GWPC\2) D
 .S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",1),GWPC) S TXT("R")="" D S1
 ;
 S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",2),GWPC) D S1
 S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",3)_":lh",GWPC) D S1
 S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",4)_":n.r",GWPC) D S1
 Q
 ;
PCSUM(HZM,SUM,TIP) ;
 N AHMAM S AHMAM=$$MAMD^W4L($$^%L1DC($$DATK^W4HZMST(HZM),3))
 N LFMAM S LFMAM=SUM/(100+AHMAM)*100
 N TXT
 S TXT=%MDP("B")_$J(LFMAM,7,2)_" : n""rn iptl"_%MDP("N") D S1
 S TXT=%MDP("B")_$J(SUM-LFMAM,7,2)_" : "_AHMAM_"% n""rn"_%MDP("N") D S1
 S TXT=%MDP("B")_$J(+SUM,7,2)_" : k""dq"_%MDP("N") D S1
 I $G(TIP),$G(@$$^W4PRM@("TIPLK")) D
 .S TXT=%MDP("B")_$J(+TIP,7,2)_" : tih ekeza"_%MDP("N") D S1
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HB5
W4HB5(HZM,MKR) ; [ 11.08.13 19:19 ] [ 19.10.12 05:10 ] [ 15.10.12 16:52 ]
 Q  ; -- OLD ; NEW - W4HB2LK
 ;
 ; ----------------- HADPASAT HESBONIT HELKIT
 D ^W4MDPPC,^%L1TS Q:$G(PRINT)=""  N SM S SM=0
 N TMM,II,TXT,MAKOR
 S TMM="" I $D(@$$^W4ORD@(HZM,"ETHB5"))#2 S TMM=$P(@$$^W4ORD@(HZM,"ETHB5"),"\",3)
 I 'TMM S TMM=$H
 ;
 F II=1:1 Q:'$D(@$$^W4ORD@(HZM,"ETHB5",II))  D
 .S MAKOR=$D(@$$^W4ORD@(HZM,"ETHB5",II,"MKR")) I 'MAKOR,MKR Q
 .I $G(@$$^W4ORD@(HZM,"ETHB5",II))<0 Q
 .I $L(@$$^W4PL@("ESEK",1))'>(GWPC\2) D
 ..S TXT=%MDP("B")_$$CENTRB^%L1FRM(@$$^W4PL@("ESEK",1),GWPC)_%MDP("N") S TXT("R")="" D S1
 .I $L(@$$^W4PL@("ESEK",1))>(GWPC\2) D
 ..S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",1),GWPC) S TXT("R")="" D S1
 .S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",2),GWPC) D S1
 .S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",3)_":lh",GWPC) D S1
 .S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",4)_":n.r",GWPC) D S1
 .S TXT=$$CENTR^%L1FRM($G(@$$^W4ORD@(HZM,"ETHB"))_" zipeayg levit",GWPC) D S1
 .S TXT="" D S1
 .S TXT=$ZD($P(TMM,","),"DD/MM/YY")_"  "_$$T^%L1TIME($P(TMM,",",2))_" : xewn zwtd zrye jix`z " D S1
 .I 'MAKOR S TXT=$ZD($P($H,","),"DD/MM/YY")_"  "_$$T^%L1TIME($P($H,",",2))_" : dqtcd zrye jix`z " D S1
 .S TXT="" D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM("  zipeayg",GWPC)_%MDP("N"),TXT("R")="" D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM($J(+$G(@$$^W4ORD@(HZM,"ETHB5")),5)_"-"_II_" 'qn",GWPC)_%MDP("N"),TXT("R")="" D S1
 .S TXT=%MDP("B")_$S(MAKOR:"xewn",1:"wzrd")_%MDP("N") D S1
 .I $D(@$$^W4ORD@(HZM,"ETHB5",II,"H")) S TXT=$$HBR^%L1FRM(^("H"),38),TXT("R")="" D S1
 .S TXT=$C(10)_$J("",12)_HZM_" : dpnfd xear "_$C(10) D S1
 .N SUM S SUM=$G(@$$^W4ORD@(HZM,"ETHB5",II))
 .N AHMAM S AHMAM=$$MAMD^W4L($$^%L1DC($$DATK^W4HZMST(HZM),3))
 .N LFMAM S LFMAM=SUM/(100+AHMAM)*100
 .S TXT=%MDP("B")_$J(LFMAM,7,2)_" : n""rn iptl"_%MDP("N") D S1
 .S TXT=%MDP("B")_$J(SUM-LFMAM,7,2)_" : "_AHMAM_"% n""rn"_%MDP("N") D S1
 .S TXT=%MDP("B")_$J(+SUM,7,2)_" : k""dq"_%MDP("N") D S1
 .D CUT K @$$^W4ORD@(HZM,"ETHB5",II,"MKR")
 Q
 ;
CUT ;
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
S1 S TXT=%MDP("N")_$$CLST^%L1FRM(TXT,%MDP("B"),%MDP("N"))
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 I $$L^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),%MDP("N"))>40 S TXT=$$RPL^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),"")
S11 N PCN S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 S @$$^W4PC@(PRINT,PCN)=$J("",SM)_$TR(TXT,TS0,TSS)
 K TXT Q

W4HBA
W4HBA ; [ 29.05.10 17:19 ] [
HZ(HBA) Q $P($G(@$$^W4GL("P1HB2")@(HBA)),"\")
DT(HBA) Q $P($G(@$$^W4GL("P1HB2")@(HBA)),"\",2)
ISSUE(HBA) Q $P($G(@$$^W4GL("P1HB2")@(HBA)),"\",3)
LKH(HBA) Q $P($G(@$$^W4GL("P1HB2")@(HBA)),"\",4)
SUM(HBA) Q $P($G(@$$^W4GL("P1HB2")@(HBA)),"\",5)

W4HBLAST
W4HBLAST ; [ 23.01.25 01:53 ] [ 22.01.25 16:33 ] [ 
 S %ARG("VP")="HBLAST"
 S %ARG("VZ")="ASK"
 S %ARG("FIRST")=1
 S %ARG("NOFIND")=1
 D ^W4SCASK
 Q
 ;
CUST ;
 S VL=$TR($G(VL),"-","")
 I $L(VL)<4 S %SC("ER")=1,%SC("ER","MSG")="CUSTOMERNUMBERTOOSHORT" Q
 I VL'?1N.N S %SC("ER")=1,%SC("ER","MSG")="INVALIDNUMBER" Q
 Q
 ;
PCHB(STAM) ;
 N VP,VZ,CUST,GL,MSD
 S MSD=$$GETP^%W1PRM("MSD")
 I 'MSD S MSD=1
 S GL=$$^W4GL("W4LINKI")
 S CUST=$$GET^W4TMPANS("HBLAST","CUSTOMNUMBER") I $L(CUST)<4 Q "CUSTOMERNUMBERTOOSHORT"
 N HZ S HZ=$O(@GL@(CUST,MSD,""),-1) I HZ="" S CUST=$TR(CUST,"-","")
 S HZ=$O(@GL@(CUST,MSD,""),-1) I HZ="" Q "INVOICENOTEXIST"
 N NCAB S NCAB=$$NCAB^W4HZMST(HZ) I 'NCAB Q "INVOICENOTISSUED"
 ;
 D ^W4PCHB(HZ)
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HBMAIL
W4HBMAIL(LKH) ; [ 02.10.19 13:31 ] [ 
 I $$HB2EMAIL^W4PRM>0 Q 1
 I $$HB2EMAIL^W4PRM<0 Q 0
 I '$G(LKH) Q 0
 Q +$$IFHBMAIL^W4L(LKH)
 

W4HBMAS
W4HBMAS(FUNC,PARAM) ; [ 17.06.26 10:55 ] [ 01.06.26 07:33 ] [ 19.11.25 10:01 ] 
 N (JB,%ARG,FUNC,PARAM)
 ;
 ;;S ^AA("W4HBMAS","FUNC")=FUNC
 ;;S ^AA("W4HBMAS","PARAM")=$G(PARAM)
 S SHTRY=0
 D INIT($G(PARAM))
BG ;
 D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 ;
 S @GLPR@(DZ,SH)="W4HBMAS\---------------- "_$ZD($H,"DD.MM.YY 24:60")_"\"_$G(FUNC)_"\"_$G(PARAM)_"\"_$G(HB)_"\"_$G(HZM)
 ;
 I FUNC="GETTOKEN" D GETTOKEN G END
 ;
TKTM ;
 S TOKEN=$$TOKEN
 ;
 S TMPRSP=$$TMPRSP
 ;
 O FILEPRM:(WRITE:NEWVERSION) 
 U FILEPRM
  D PRM(FUNC)
 C FILEPRM
 ;
 D SPACEPR
 N SH S SH=+$O(@GLPR@(DZ,99999),-1)+1
 O FILEPRM:(REWIND:READONLY)
 F  U FILEPRM R ST Q:$ZEOF  D 
 .N GLPR D GLPR
 .N SH1 S SH1=$O(@GLPR@(DZ,SH,"PRM",99999),-1)+1
 .S @GLPR@(DZ,SH,"PRM",SH1)=ST
 C FILEPRM
 ;
 D SPACEPR
 ;
 O FILEDATA:(WRITE:NEWVERSION) 
 U FILEDATA
  D DATA(FUNC,$G(PARAM))
 C FILEDATA
 ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 I $$EXIST^%L1ZOS(FILEOU) ZSY "rm "_FILEOU
 S CMD="curl -m 45 -s -K '"_FILEPRM_"' --url '"_$$URL_"' -d @'"_FILEDATA_"' -o '"_FILEOU_"'"
 ZSY CMD
 ;
 S ER=$ZSY
 ;
 D SETNP(DV)
 ;
 D SPACEPR
 D PROT(CMD,ER)
 I ER G END
 ;
 D SPACEPR
 D READRESP(FILEOU)
END Q
 ;
 ;
INIT(PARAM) ;
 S VUID=$P(PARAM,";")
 S DZ=$P(VUID,"_")
 I DZ="" S DZ=$$^W4DZ
 S DV=$P(VUID,"_",2)
 I DV="" S DV=$$^W4MYDVN
 S SEC=$P(VUID,"_",3)
 S CODDOC=$P(VUID,"_",4)
 S HB=$P(VUID,"_",5)
 S HZ=$P(VUID,"_",6)
 ;
 S OPRTRTZ=$$NUM^%L1FRM($P(PARAM,";",12))
 ;
 S HBSUG=$S(CODDOC="HY":305,CODDOC="H":310,CODDOC="HMK":320,CODDOC="TZ":330,1:"?")
 ;
 D FLNM
 ;
 S CLIENTID=$G(@$$^W4PRM@("HBMAS","ID"))
 S CLIENTPSW=$G(@$$^W4PRM@("HBMAS","PSW"))
 S SOFT=+$G(@$$^W4PRM@("HBMAS","SOFT"),"2")
 I $$VERS>1 S SOFT=219802
 ;
 S FILEPRM=FLNM_".prm"
 S FILEOU=FLNM_".out"
 S FILEDATA=FLNM_".data"
 ;
 C FILEPRM:(DELETE) 
 C FILEDATA:(DELETE) 
 C FILEOU:(DELETE) 
 Q
 ;
 ;
FLNM ;
 S FLNM="/tmp/tmphbmas"_VUID
 Q
 ;
PROT(CMD,ER) ;
 N GLPR D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 S @GLPR@(DZ,SH)=CMD
 S @GLPR@(DZ,SH,"ZSY")=ER_"\"_$ZD($H,"DD.MM.YY 24:60")_"\"_$G(HB)_"\"_$G(HZ)
 Q
 ;
 ;
PRM(FUNC) ;
 D WRITEPRM("POST")
 Q
 ;
 ;
DATA(FUNC,PARAM)
 I FUNC="HBMAS" D AUTHNUMBER(PARAM)
 Q
 ;
 ;-------------------------------- FUNCTIONS ------------------------
 ;
AUTHNUMBER(PARAM) ;
  N POSID,SUM,TRTYPE
  N DBL,DBLPER,WAITCRD
  ;
  D PRS^%L1FRM(PARAM,"VUID;VATNUM;VATUN;VATLK;HBDAT;HBDATPC;SNIF;LKH;LMAM;DISC;MAM",";")
  S POSID=DV
  S LMAM=$$ABS^%L1FRM(LMAM)
  S MAM=$$ABS^%L1FRM(MAM)
  ;
  D RKV1("{")
     I $$VERS=1 D RKV("Invoice_ID",HB,1)
     I $$VERS>1 D RKV("invoice_id",HB,1)
     ;
     I $$VERS=1 D RKV("Invoice_Type",HBSUG)
     I $$VERS>1 D RKV("invoice_type",HBSUG)
     ;
     I $$VERS=1 D RKV("Vat_Number",+VATNUM)
     I $$VERS>1 D RKV("vat_number",+VATNUM)
     ;
     I $G(VATUN) D
     .I $$VERS=1 D RKV("Union_Vat_Number",+VATUN)
     .I $$VERS>1 D RKV("union_vat_number",+VATUN)
     ;
     I $$VERS>1 D
     .D RKV("user_id",+OPRTRTZ)
     .D RKV("invoice_reference_number",HB,1)
     ;
     I $$VERS=1 D RKV("Customer_VAT_Number",+VATLK)
     I $$VERS>1 D RKV("customer_vat_number",+VATLK)
     ;
     I $$VERS=1 D RKV("Invoice_Date",HBDAT,1)
     I $$VERS>1 D RKV("invoice_date",HBDAT,1)
     ;
     I $$VERS=1 D RKV("Invoice_Issuance_Date",HBDATPC,1)
     I $$VERS>1 D RKV("invoice_issuance_date",HBDATPC,1)
     ;
     I $$VERS=1 D RKV("Accounting_Software_Number",SOFT)
     I $$VERS>1 D RKV("accounting_software_number",+SOFT)
     ;
     I $G(LKH) D
     .I $$VERS=1 D RKV("Client_Software_Key",LKH,1)
     .I $$VERS>1 D RKV("client_software_key",LKH,1)
     ; 
     I $$VERS=1 D RKV("Amount_Before_Discount",LMAM-DISC,0,0,"N")
     I $$VERS>1 D RKV("amount_before_discount",LMAM-DISC,0,0,"N")
     ;
     I $$VERS=1 D RKV("Discount",DISC,0,0,"N")
     I $$VERS>1 D RKV("discount",DISC,0,0,"N")
     ; 
     I $$VERS=1 D RKV("Payment_Amount",LMAM,0,0,"N")
     I $$VERS>1 D RKV("payment_amount",LMAM,0,0,"N")
     ;
     I $$VERS=1 D RKV("VAT_Amount",MAM,0,0,"N")
     I $$VERS>1 D RKV("vat_amount",MAM,0,0,"N")
     ; 
     I $$VERS=1 D RKV("Payment_Amount_Including_VAT",LMAM+MAM,0,1,"N")
     I $$VERS>1 D RKV("payment_amount_including_vat",LMAM+MAM,0,1,"N")
     ;
  D RKV1("}")
 Q
 ;
 ;
GETTOKEN ;
 N FUNC S FUNC="GETTOKEN"
 D REFRESH^W4HBMSAU
 S TOKEN="",ER=0
 ;
 S ER=$$GET("httpCode")
 S ERMSG=$$GET("httpMessage")
 ;
 S TOKEN=$$GET("access_token")
 S REFRESH=$$GET("refresh_token")
 S SEC=$$GET("refresh_token_expires_in")
SETTOKEN ;
 I 'ER,ER'=200,$L(TOKEN) D SET^W4HBMSTK(TOKEN,REFRESH)
 Q
 ;
 ;
WRITEPRM(MTD)
 I $G(MTD)="" S MTD="POST"
 W "-X "_MTD,!
 I $G(TOKEN)'="" W "-H ""Authorization: Bearer "_TOKEN_""" ",!
 W "-H ""Content-Type: application/json"" ",!
 W "-H ""accept: application/json"" ",!
 Q
 ;
 ;
RKV(NM,VL,STR,NOZPT,MAX) ;
 N ST S MAX=$G(MAX)
 S ST=""""_NM_""":"
 I $G(STR) S ST=ST_""""
 I MAX S VL=$$HBR^%L1FRM(VL,MAX)
 I MAX="N" S VL=$J(VL,2,2)
 S ST=ST_VL
 I $G(STR) S ST=ST_""""
 I '$G(NOZPT) S ST=ST_","
 W ST,!
 ;
 D PROTRKV(ST)
 Q
 ;
 ;
RKV1(VL)
 N ST S ST=VL
 W ST,!
 D PROTRKV(ST)
 Q
 ;
 ;
PROTRKV(ST) ;
 N GLPR D GLPR
 I '$D(DZ) S DZ=$$^W4DZ
 N SH S SH=+$O(@GLPR@(DZ,99999),-1)
 N SH1 S SH1=$O(@GLPR@(DZ,SH,"CONT",99999),-1)+1
 S @GLPR@(DZ,SH,"CONT",SH1)=ST
 Q
 ;
 ;
READRESP(FILEOU,NOUPR) ;
 S TMPRSP=$$TMPRSP K @TMPRSP
 ;
 I '$$EXIST^%L1ZOS(FILEOU) Q
 N FILEDOS S FILEDOS=FILEOU
 C FILEDOS
 O FILEDOS:(REWIND:READONLY)
 N GLPR D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 N SH1
 S SH1=0
 N DV S DV=$$^W4MYDVN
 ;
 S K0=0
 F  U FILEDOS R A Q:$ZEOF  D
 .S K0=K0+1,^AA("W4HBMAS-REP",K0,"A")=A
 .N K F K=1:1:$L(A,",") D
 ..S SH1=SH1+1
 ..N ST,ST1 S ST=$$SPA^%L1FRM($P(A,",",K))
 ..I ST["token" S ST1=ST
 ..E  S ST1=$P(ST,":")_":"_$$U2H^%L1CNV($P(ST,":",2,250))
 ..S @TMPRSP@(SH1)=$E(ST1,1,3000)
 ..S @GLPR@(DZ,SH,"RESP",DV,+$G(HZM),SH1)=ST1
 ;
 C FILEDOS
 ;
 ;; *************  ZAMNI !!! **********
 ;;K @TMPRSP
 ;;S @TMPRSP@(1)="{ ""httpCode"": 422 }"
 ;; ************* ZMANI ****************
 ;
 I $G(FUNC)="GETTOKEN"!($G(FUNC)="REFRESH") G EREADRESP
 I $$VERS=1 S HBMAS=$$GET("Confirmation_Number")
 I $$VERS>1 S HBMAS=$$GET("confirmation_number")
 ;
 S HBMASRES=""
 I 'HBMAS D HBMASRES ; --> HBMASRES,HBMASMSG
 I HBMASRES=401,SHTRY<2 D GETTOKEN S SHTRY=SHTRY+1 G BG
 ;
 S @$$^W4GL("W4HBMAS")@(CODDOC,HB)=HBMAS
 ;
 I HBMAS,'HBMASRES!(HBMASRES=200),$L($G(OPRTRTZ))>6 D
 .D SETOPRTRTZ^W4LKHPRM(OPRTRTZ)
 ;
 I HBMASRES,HBMASRES'=200 S @$$^W4GL("W4HBMAS")@(CODDOC,HB,"ERROR")=HBMASRES_"*"_HBMASMSG_"*"_$H_"*"_HB_"*"_$G(HZ)
EREADRESP Q
 ;
 ;
TMPRSP() Q $$^W4MAIN("TMPRSP")
 ;
TOKEN() ;
 Q $G(@$$^W4GL("W4HBMAS")@("TOKEN"))
 ;
TOKENTIME() ;
 Q $G(@$$^W4GL("W4HBMAS")@("TOKEN","TIME"))
 ;
SUM() ;
 ;;Q 2  ;   ***
 I $G(@$$^W4PRM@("NOHBMAS")) Q 10000000
 N DZ,DATZ S DZ=$$^W4DZ 
 N YY S YY=$ZD(DZ,"YY")
 I YY=24 Q 25000 
 I YY=25 Q 20000
 I DZ>67570,DZ<67722 Q 10000
 I DZ'<67722 Q 5000
 Q $G(@$$^W4PRM@("HBMAS","SUM"))
 ;
CLID()
 Q "333bdfa3e24412461ece1c22542e6270" ;; -- PRODUCT
 Q "a4b4454e7d99e59533d82adaa07f8efd" ;; - DEVELOPMENT
 ;
CLPSW()
 Q "fe6522db61b58c873d283cecc4bab64f" ;; -- PRODUCT
 Q "4f1e8d25af655638c41cbf984a9ef0dc" ;; -- DEVELOPMENT
 ;
CL64() ;
 Q "MzMzYmRmYTNlMjQ0MTI0NjFlY2UxYzIyNTQyZTYyNzA6ZmU2NTIyZGI2MWI1OGM4NzNkMjgzY2Vj YzRiYWI2NGYK" ;; -- PRODUCT
 Q "YTRiNDQ1NGU3ZDk5ZTU5NTMzZDgyYWRhYTA3ZjhlZmQ6NGYxZThkMjVhZjY1NTYzOGM0MWNiZjk4 NGE5ZWYwZGM=" ;; -- DVLP
 ;
REFRESH() ;
 Q $G(@$$^W4GL("W4HBMAS")@("REFRESH"))
 ;
NP(DV) ;
 Q DZ_"_"_DV_"_"_SEC_"_"_$G(HB)_"_"_+$G(HZ)
 ;
SETNP(DV)
 S @$$^W4GL("W4HBMAS")@("NP")=$$NP(DV)
 Q
 ;
NID(FUNC) ;
 N NP S NP=$$NP(DV)
 N NID S NID=(DV*1000)+NP
 D RKV("id",NID,1)
 Q
 ;
URL()
 ;;Q "https://ita-api.taxes.gov.il/shaam/tsandbox/Invoices/v1/Approval" ; -- develop
 ;;Q "https://ita-api.taxes.gov.il/shaam/tsandbox/Invoices/v2/Approval" ; -- develop
 N VERS S VERS=$$VERS
 Q "https://ita-api.taxes.gov.il/shaam/production/Invoices/v"_VERS_"/Approval"
 ;
GLPR ;
 S GLPR=$$^W4GL("W4HBMASPR")
 Q
 ;
GETPRM(PRM) ;
 N CODDOC,HB
 S CODDOC=$P(PRM,";")
 S HB=$P(PRM,";",2)
 Q $$GETNOM9(HB,CODDOC)_"^"_$$VATLK(HB,CODDOC)
 ;
GETNOM(HB,CODDOC)
 I $G(HB)="" Q "NOHB"
 I $G(CODDOC)="" Q "NOCODDOC"
 Q $G(@$$^W4GL("W4HBMAS")@(CODDOC,HB))
 ;
GETNOM9(HB,CODDOC)
 I $G(HB)="" Q "NOHB"
 I $G(CODDOC)="" Q "NOCODDOC"
 N HBMAS S HBMAS=$$GETNOM(HB,CODDOC)
 Q $$HBR^%L1FRM(HBMAS,9)
 ;
VATLK(HB,CODDOC)
 I $G(HB)="" Q "NOHB"
 I $G(CODDOC)="" Q "NOCODDOC"
 N W4HSB
 N VATLK S VATLK=$G(@$$^W4GL("W4HBMAS")@(CODDOC,HB,"VATLK"))
 I 'VATLK D ^W4HSBGET(HB,CODDOC) S VATLK=$G(W4HSB("TZ"))
 Q VATLK 
 ;
ERROR(HB,CODDOC)
 I $G(HB)="" Q "NOHB"
 I $G(CODDOC)="" Q "NOCODDOC"
 Q $G(@$$^W4GL("W4HBMAS")@(CODDOC,HB,"ERROR"))
 ;
ER(HB,CODDOC)
 I $G(HB)="" Q "NOHB"
 I $G(CODDOC)="" Q "NOCODDOC"
 Q $P($$ERROR(HB,CODDOC),"*")
 ;
ERMSG(HB,CODDOC)
 I $G(HB)="" Q "NOHB"
 I $G(CODDOC)="" Q "NOCODDOC"
 Q $P($$ERROR(HB,CODDOC),"*",2)
 ;
DAT(DT) ;
 N DAT
 I DT'?5N S DT=$$^%L1DC(DT,3)
 S DAT=$ZD(DT,"YYYY-MM-DD")
 Q DAT
 ;
 ;
SPACEPR ;
 N GLPR D GLPR
 N SH S SH=$O(@GLPR@(DZ,99999),-1)+1
 S @GLPR@(DZ,SH)=""
 Q
 ;
HBMASRES ;
 S HBMASRES=$$GET("httpCode")
 S HBMASMSG=$$GET("httpMessage")
 I HBMASRES,HBMASRES'=200 Q
 ;
 N HBMASRES1
 S HBMASRES1=$$GET("CODE")
 I HBMASRES1,HBMASRES1'=200 D  Q
 .S HBMASRES=HBMASRES1
 .S HBMASMSG=$$GET("message")
 ;;I HBMASRES,HBMASRES'=200 Q
 ;
 S HBMASRES=$$GET("status")
 S HBMASMSG=$$GET("message") ;; _" ERROR ID : "_$$GET("error_id")
 Q
 ;
GET(NM) ; 
 Q $$GET^W4EMV4(NM) 
 ;
VERS() ; 
 Q 2
 N DZ,DATZ S DZ=$$^W4DZ 
 N YY S YY=$ZD(DZ,"YY")
 I YY=24 Q 1 
 Q 2
 ;
USSUM(SUM)
 I $$SUM,$$ABS^%L1FRM(SUM)'<$$SUM Q 1
 Q 0
 ;
USTZOPR(SUM)
 I $$USSUM(SUM)&($$VERS>1) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HBMASP
W4EMVNPR(DAT,ORDPR) ; [ 30.04.24 15:11 ] [ 16.04.24 13:18 ] [ 19.10.23 12:33 ] 
 N (JB,%ARG,DAT,ORDPR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 S DT=$$^%L1DC(DAT,3)
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 W "<p style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT("EMVNPR",$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 
 S GL=$$^W4GL("W4EMVNPR")
 S GL0=GL_"("_DT
 ;
 S PRVW=0 I '$G(ORDPR) S PRVW=1
 S N=GL0_")" F  S N=$Q(@N) Q:N=""  Q:N'[GL0  D
 .S IND=N I IND["|" S IND=$P(IND,"|",3)
 .S ST=$G(@N)
 .
 .I ST["\----------" D
 ..I $G(ORDPR) S PRVW=($P(ST,"\",5)=ORDPR)
 ..S ST=$P(ST,"\",1,2)_"\<B>"_$P(ST,"\",3)_"</B>"_"\"_$P(ST,"\",4,20)
 ..I $P(ST,"\",5) S ST=$P(ST,"\",1,4)_" <B>"_$$^%W1DICT("ORDER")_" : "_$P(ST,"\",5)_"</B>"
 ..I PRVW W "<br>",!
 .
 .Q:'PRVW
 .
 .I ST?1"{""key"":".E!(ST?1"""value"":".E)!(ST?1"""report"":".E)!(ST?1"""result_msg"":".E) D
 .. S ST=$P(ST,":")_":"_$$H2U^%L1FRM($P(ST,":",2,200))
 .I IND["""STOUT" D  ;!(IND["""OUT-ANS""") D
 ..S ST=$$H2U^%L1FRM(ST)
 .W IND," = ",ST,"<br>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 

W4HBMSA0
W4HBMSAU ; [ 15.05.24 13:16 ] [ 14.05.24 16:36 ] [ 
 Q
GETTOKEN(PRM) 
 N (JB,%ARG,%REM,PRM)
 S CL=$P(PRM,"&",1)
 S AUTH=$P(PRM,"&",2)
 S RDRURI="https://www.2order.org/mumps-examples/jsp/w4hbmastoken.jsp"
 ;
 S FILE=$ZDIR_"tmp"
 S CMD="curl -X POST -K "_FILE
 
 S CMD=CMD_"'https://openapi.taxes.gov.il/shaam/tsandbox/longtimetoken/oauth2/token' "
 S CMD=CMD_" -H 'Authorization: Basic "_CL_"'"
 S CMD=CMD_" -H 'Content-Type: application/x-www-form-urlencoded '"
 S CMD=CMD_" -d 'grant_type=authorization_code' "
 S CMD=CMD_" -d 'code="_AUTH_"'"
 S CMD=CMD_" -d 'redirect_uri="_RDRURI_"'"
 S CMD=CMD_" -d 'scope=scope'"
 ZSY CMD
 ;
 W $C(10,10)_"CMD="_CMD,!
 W $C(10,10)_"ZSY="_$ZSY,!
 Q $ZSY
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HBMSAU
W4HBMSAU ; [ 02.06.24 18:57 ] [ 30.05.24 13:27 ] [ 26.05.24 11:00 ] 
 Q
 ;
GETTOKEN(PRM) 
 N (JB,%ARG,%REM,PRM)
 S CL64=$$CL64^W4HBMAS
 S AUTH=PRM
 S RDRURI="https://www.2order.org/mumps-examples/jsp/w4hbmastoken.jsp"
 ;;S RDRURI="https://oauth.pstmn.io/v1/callback"
 ;
 S FILE=$ZDIR_"1/tmp/tmphbmsau"_$TR($H,",","_")_"_"_$J
 C FILE:(DELETE)
 O FILE:(REWIND:NEWVERSION)
 U FILE
  W " -X POST",!
  W " -H 'Authorization: Basic "_CL64_"'",!
  W " -H 'Content-Type: application/x-www-form-urlencoded'",!
  W " -d 'grant_type=authorization_code' ",!
  W " -d 'code="_AUTH_"'",!
  W " -d 'redirect_uri="_RDRURI_"'",!
  W " -d 'scope=scope'",!
 C FILE
 S CMD="curl -s -m 45 'https://openapi.taxes.gov.il/shaam/tsandbox/longtimetoken/oauth2/token' -K '"_FILE_"'"
 ZSY CMD
 ;
 W $C(10,10)_"CMD="_CMD,!
 W $C(10,10)_"ZSY="_$ZSY,!
 Q $ZSY
 ;
 ;
REFRESH ;
 N (JB,%ARG,%REM,PRM)
 S CL=$$CLID^W4HBMAS
 S CLPSW=$$CLPSW^W4HBMAS
 ;;S CL64=$$CL64^W4HBMAS
 S REFRESH=$$REFRESH^W4HBMAS
 ;
 S FILE=$ZDIR_"1/tmp/tmphbmsrfr"_$TR($H,",","_")_"_"_$J
 S FILEOU=FILE_".out"
 C FILE:(DELETE)
 ;
 S CMD="curl -m 45 -vvv  -L  https://openapi.taxes.gov.il/shaam/production/longtimetoken/oauth2/token"
 O FILE:(REWIND:NEWVERSION)
 U FILE
  W CMD
  W " -H 'Content-Type:application/x-www-form-urlencoded'"
  W " -d 'client_id="_CL_"'"
  W " -d 'scope=scope'"
  W " -d 'refresh_token="_REFRESH_"'"
  W " -d 'grant_type=refresh_token'"
  W " -d 'client_secret="_CLPSW_"'"
 C FILE
 S CMD="/bin/sh "_FILE_" >"_FILEOU
 ZSY CMD
 ;
 O FILE:(REWIND:READONLY)
 U FILE F  R ST Q:$ZEOF  D PROTRKV^W4HBMAS(ST)
 C FILE
 ;
 S DZ=$$^W4DZ
 D PROT^W4HBMAS(CMD,$ZSY)
 ;
 S FUNC="GETTOKEN"
 ;
 D READRESP^W4HBMAS(FILEOU) 
 ;;W $C(10,10)_"CMD="_CMD,!
 ;;W $C(10,10)_"ZSY="_$ZSY,!
 ;
 Q
 ;
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HBMSLI
W4HBMSLI(CODDOC) ; [ 09.09.25 19:22 ] [ 03.07.25 04:14 ] [ 04.06.25 10:29 ] 
 N (JB,%ARG,%REM,CODDOC)
 S TKF=$G(@$$^W4PRM@("HBMASTKF"),120)
 ;
 S GL=$$^W4GL("KLIN")_"(""DT"",""H"")"
 I CODDOC="HMK" S GL=$$^W4GL("P1HBI")
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 W "<p>"_$$^%W1DICT("ERRORHBMASLIST")_"</p>",!
 ;
 W "<table cellpadding=""5"" cellspacing=""0"" border=""1"" >",!
  W "<tr>" 
   W "<th>"_$$^%W1DICT("INVOICE")_"</th>"
   W "<th>"_$$^%W1DICT("ISSUETIME")_"</th>"
   W "<th>"_$$^%W1DICT("SUM")_"</th>"
   W "<th>"_$$^%W1DICT("ERROR")_"</th>"
   W "<th>"_$$^%W1DICT("ACTION")_"</th>"
  W "</tr>",!
 ;
 S DT="" F  S DT=$O(@GL@(DT),-1) Q:DT=""  Q:DT<($H-TKF)  D
 .S HB="" F  S HB=$O(@GL@(DT,HB)) Q:HB=""  D
 ..N DEL S DEL=0
 ..I CODDOC="HMK" D  Q:DEL
 ...N HZ S HZ=$P($G(@$$^W4GL("P1HB")@(HB)),"\")
 ...I $$DEL^W4DEL(HZ) S DEL=1
 ..
 ..D ^W4HSBGET(HB,CODDOC)
 ..I $G(W4HSB("HBMAS")) Q
 ..I $G(W4HSB("LMAM"))<$$SUM^W4HBMAS Q
 ..;
 ..W "<tr>" 
 .. W "<td>"
 ..  W HB 
 .. W "</td>"
 .. W "<td>"
 ..  W $G(W4HSB("ISSUETIME")) 
 .. W "</td>"
 .. W "<td>"
 ..  W $J($G(W4HSB("TOT")),2,2)
 .. W "</td>"
 .. W "<td>"
 ..  W $$ER^W4HBMAS(HB,CODDOC)_" "_$$ERMSG^W4HBMAS(HB,CODDOC)
 .. W "</td>"
 .. W "<td>" 
 ..  D ^W4BUTTON("show","SHOW","ShowInv('"_HB_"','"_CODDOC_"')","font-size:"_$$^W3FSZ(18)_";color:blue""")
 ..  W $$NBSP^%L1FRM(2)
 ..  D ^W4BUTTON("choice","CHOICE","ChoiceInv('"_HB_"','"_CODDOC_"')","font-size:"_$$^W3FSZ(18)_";color:green""")
 .. W "</td>" 
 ..W "</tr>",!
 ;
 W "</table>",!
 W "<p></p>",!
 D ^W4BCK
 W "</div>",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HBMSPR
W4HBMSPR(DAT,HB,ORDPR) ; [ 05.05.24 15:05 ] [ 30.04.24 15:17 ] [ 16.04.24 13:18 ] 
 N (JB,%ARG,DAT,HB,ORDPR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 S DT=$$^%L1DC(DAT,3)
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 W "<p style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT("HBMASPROT",$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 
 S GL=$$^W4GL("W4HBMASPR")
 S GL0=GL_"("_DT
 ;
 S PRVW=0 I '$G(ORDPR) S PRVW=1
 S N=GL0_")" F  S N=$Q(@N) Q:N=""  Q:N'[GL0  D
 .S IND=N I IND["|" S IND=$P(IND,"|",3)
 .S ST=$G(@N)
 .
 .S VUID=$P($P(ST,"\",4),";")
 .S HBVUID=$P(VUID,"_",5)
 .S HZVUID=$P(VUID,"_",6)
 .I ST["\----------" D
 ..
 ..I $G(ORDPR) S PRVW=(HZVUID=ORDPR)
 ..I $G(HB) S PRVW=(HBVUID=HB)
 ..I HZVUID S ST=ST_" <B>"_$$^%W1DICT("ORDER")_" : "_HZVUID_"</B>"
 ..I HBVUID S ST=ST_" <B>"_$$^%W1DICT("INVOICE")_" : "_HBVUID_"</B>"
 ..I PRVW W "<br>",!
 .
 .Q:'PRVW
 .
 .I ST?1"{""key"":".E!(ST?1"""value"":".E)!(ST?1"""report"":".E)!(ST?1"""result_msg"":".E) D
 .. S ST=$P(ST,":")_":"_$$H2U^%L1FRM($P(ST,":",2,200))
 .W IND," = ",ST,"<br>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HBMSTK
W4HBMSTK ; [ 27.11.24 20:03 ] [ 21.11.24 07:14 ] [ 08.09.24 12:40 ] 
 N (JB,%ARG,%REM)
 S TOKEN=$G(%ARG("access_token"))
 S REFRESH=$G(%ARG("refresh_token"))
 D SET(TOKEN,REFRESH)
 Q
 ;
 ;
SET(TOKEN,REFRESH)
 S TOKEN=$G(TOKEN)
 S REFRESH=$G(REFRESH)
 ;
 S TOKEN=$$CLR(TOKEN)
 S REFRESH=$$CLR(REFRESH)
 ;
 N TIME S TIME=(($H*86400+$P($H,",",2)+14400)\86400)_","_$P($H,",",2)
 ;
 I $L(TOKEN)>20 D
 .S @$$^W4GL("W4HBMAS")@("TOKEN")=TOKEN
 .S @$$^W4GL("W4HBMAS")@("TOKEN","TIME")=TIME
 .S @$$^W4GL("W4HBMAS")@("TOKEN0")=TOKEN
 .S @$$^W4GL("W4HBMAS")@("TOKEN0","TIME")=TIME
 ;
 I $L(REFRESH)>20 D
 .S @$$^W4GL("W4HBMAS")@("REFRESH")=REFRESH
 .S @$$^W4GL("W4HBMAS")@("REFRESH","TIME")=TIME
 .S @$$^W4GL("W4HBMAS")@("REFRESH0")=REFRESH
 .S @$$^W4GL("W4HBMAS")@("REFRESH0","TIME")=TIME
 Q
 ;
 ;
CLR(TOKEN)
 S TOKEN=$G(TOKEN)
 I $E(TOKEN,$L(TOKEN))="," S TOKEN=$E(TOKEN,1,$L(TOKEN)-1)
 I $E(TOKEN)="""" S TOKEN=$E(TOKEN,2,$L(TOKEN))
 I $E(TOKEN,$L(TOKEN))="""" S TOKEN=$E(TOKEN,1,$L(TOKEN)-1)
 Q TOKEN
 ;
 ;
OLD(SUM)
 N OK S OK=0
 I '$$MAM^W4PRM Q OK
 I $$USSUM^W4HBMAS(SUM) D
 .N TKTIME
 .S TKTIME=$$TOKENTIME^W4HBMAS
 .;;I 'TKTIME!($$DIF^%L1TIME(TKTIME,$H)<60) S OK=1
 .I 'TKTIME S OK=1
 Q OK 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HBMSVT
W4HBMSVT ; [ 03.09.24 16:13 ] [ 30.05.24 10:59 ] [ 21.05.24 11:05 ] 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""font-size:"_$$^W3FSZ(18)_"""center"" >",!
  F I=1:1:5 W "<br>",!
  W $$^%W1DICT("HBMASVVTOKEN"),"<br><br>"
  W "<input type=""text"" id=""token"" style=""font-size:"_$$^W3FSZ(11)_""" size=""150"" >"
  F I=1:1:2 W "<br>",!
  W $$^%W1DICT("REFRESH"),"<br><br>"
  W "<input type=""text"" id=""refresh"" style=""font-size:"_$$^W3FSZ(11)_""" size=""150"" >"
  F I=1:1:2 W "<br>",!
  D ^W4SBMBCK
 W "</div>",!
 Q
 ;
 ;
PUT(PRM) ;
 N TOKEN,REFRESH
 S TOKEN=$P(PRM,"<>") 
 S REFRESH=$P(PRM,"<>",2)
 D SET^W4HBMSTK(TOKEN,REFRESH)
 Q 1
 
 
 
 
 
 
 
 
 

W4HBPY
W4HBPY(SPK,NOMPY,SHOW) ; [ 23.06.22 11:16 ] [ 22.06.22 14:57 ] [ 17.09.18 07:29 ] 
 N (JB,%ARG,%REM,SPK,NOMPY,SHOW)
 W "<div align=""center"">",!
 W "<br />",!
 S ETEK=0,EDIT=0
 I '$G(SPK),$G(NOMPY) S SPK=$$SPK^W4PY(NOMPY)
 ;
 I $G(%ARG("PRINT"))!$G(%ARG("VIEWONLY"))!($G(SHOW)=1) S ETEK=1
 I '$G(SHOW),'$G(%ARG("PRINT")),'$G(%ARG("VIEWONLY")),$G(NOMPY) S EDIT=1
 ;
 I $G(NOMPY),EDIT D
 .W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("PAYMENT")_" "_NOMPY_"</span>",!
 .W "<br />",!
 .W "<br />",!
 ;
 S SHHB=0
 D INVOICESLIST
 ;
 W "</div>",!
 ;
 I 'SHHB,'$G(NOMPY) D  Q
 .W "<script>",!
 .W " Back()",!
 .W "</script>",!
 ;
 W "<br />",!
 ;
 I '$G(ETEK) D
 .W "<div id=""divbut"" align=""center"">"
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 .W "<tr>",!
 . W " <td>",!
 .  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_SPK_"','"_NOMPY_"')","color:green",",,,100")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .  W "<td>",!
 .   D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 .  W " </td>",!
 . W "</tr>",!
 .W "</table>",!
 .W "</div>",!
 Q
 ;
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
INVOICESLIST ;
 I $G(SPK)="" Q
 N STRING,TOT S STRING=SPK
 I $G(EDIT)!'$G(NOMPY) D
 .W "<table border=""0""  width=""60%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 .W "  <tr>",!
 .S TOT=$J($$TOT(NOMPY),2,2),TOTPAID=$J($$TOTALPAID(NOMPY),2,2)
 .W "  <td width=""18%""><b>"_$$^%W1DICT("TOTAL4PAY")_" : </b></td>",!
 .W "  <td id=""totalpy"" "_$$STYLEBLACK_" >"_$J(TOT,2,2)_"</td>",!
 .W "  <td width=""16%""><b>"_$$^%W1DICT("TOTALPAID")_" : </b></td>",!
 .W "  <td id=""totalpaid"" "_$$STYLEBLACK_">"_TOTPAID_"</td>",!
 .W "  <td width=""10%""><b>"_$$^%W1DICT("BALANCE")_" : </b></td>",!
 .W "  <td id=""itrapy"" "_$$STYLEBLACK_" >"_$J(TOT-TOTPAID,2,2)_"</td>",!
 .W "</tr>",!
 .W "</table>",!
 .W "<br />",!
 ;
 W "<table id=""listinvoices"" border=""1""  width=""60%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "<caption style=""color:black;font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("INVOICES4PAYMENT")_"</caption>",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("INVOICE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("PAIDBEFORE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("PAIDINPAYMENT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("BALANCE")
 W "   </th>",!
 I '$G(ETEK) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("SIGN")
 .W "   </th>",!
 W "  </tr>",!
 ;
 N GLHB,DIR D GLHB,GLPY,DIR
 ;
 S SHHB=0
 I $G(ETEK)!$G(EDIT) D
 .N HB,A,N,W4HSB
 .S HB="" F  S HB=$O(@GLPY@(NOMPY,"H",HB)) Q:HB=""  D
 ..S CODDOC=$S(HB>0:"IHB",1:"IHBZ")
 ..D ^W4HSBGET(HB,"IHB",SPK) Q:$D(W4HSB)<10
 ..S SHHB=SHHB+1
 ..S N=HB
 ..D TRSTYLE
 ..D LINEINV(HB)
 ..W "</tr>",!
 ;
 I '$G(ETEK)!$G(EDIT) D
 .N N,A D TMPY
 .D
 ..S N="" F  S N=$O(@$$^W4GLS@(SPK,"IHB",N)) Q:N=""  D
 ...I $G(EDIT),$D(@TMPY@("H",N)) Q
 ...D LINEHB(SPK,"IHB",N)
 ..S N="" F  S N=$O(@$$^W4GLS@(SPK,"IHBZ",N)) Q:N=""  D
 ...I $G(EDIT),$D(@TMPY@("H",N)) Q
 ...D LINEHB(SPK,"IHBZ",N)
 ;
 W " </table>",!
 Q
 ;
 ;
LINEHB(SPK,CODDOC,N) ;
 N W4HSB
 N DT1,DT2 S (DT1,DT2)=""
 I $G(%ARG("DAT1")) S DT1=$$^%L1DC(%ARG("DAT1"),3)
 I $G(%ARG("DAT2")) S DT2=$$^%L1DC(%ARG("DAT2"),3)
 ;
 D ^W4HSBGET(N,CODDOC,SPK) Q:$D(W4HSB)<10
 I +W4HSB("TOT")=+W4HSB("PAID"),'$G(EDIT) Q
 ;;W "NPY="_W4HSB("NPY")_"  NOMPY="_NOMPY,!
 I $G(EDIT),+W4HSB("TOT")=+W4HSB("PAID"),+$P($G(W4HSB("NPY")),":",2)'=+NOMPY Q
 N DT S DT=$$^%L1DC(W4HSB("TODATE"),3)
 I DT1,DT<DT1 Q
 I DT2,DT>DT2 Q
 S SHHB=SHHB+1
 D TRSTYLE
 I CODDOC="IHBZ",$E(N)'="-" S N="-"_N
 D LINEINV(N)
 W "</tr>",!
 Q
 ;
LINEINV(N)
 N PAIDPY D TMPY
 S PAIDPY=$$PAIDPY(NOMPY,N)
 W " <td " D SHOWINVOICE(SPK,CODDOC,N) W ">&nbsp;&nbsp;&nbsp;"_N_"</td>"
 W " <td " D SHOWINVOICE(SPK,CODDOC,N) W ">&nbsp;&nbsp;"_W4HSB("TODATE")_"</td>",!
 W " <td " D SHOWINVOICE(SPK,CODDOC,N) W ">&nbsp;"_$J(W4HSB("TOT"),2,2)_"</td>",!
 W " <td " D SHOWINVOICE(SPK,CODDOC,N) W ">&nbsp;"_$J(W4HSB("PAID")-PAIDPY,2,2)_"</td>",!
 W " <td " D SHOWINVOICE(SPK,CODDOC,N) W ">&nbsp;<span id=""paid"_N_""" style=""color:black"">"_PAIDPY_"</span></td>",!
 W " <td " D SHOWINVOICE(SPK,CODDOC,N) W ">&nbsp;<span id=""itrahb"_N_""">"_$J(W4HSB("TOT")-W4HSB("PAID"),2,2)_"</span></td>",!
 I '$G(NOMPY)!$$UPDHB D
 .W " <td align=""center"" >"
 .  W "<input type=""checkbox"" id=""chkbox"_N_""" "
 .   I $D(@TMPY@("H",N)) W " checked=""checked"" "
 .   W "onClick=""ClickChkBox(this,'"_N_"')"" >"
 .W " </td>",!
 Q
 ;
SPAN(STAM) ;
 Q " <span style=""color:black"""
 ;
SHOWINVOICE(SPK,CODDOC,N) ;
 W " style=""cursor:pointer"" onClick=""ShowSupplInvoice('"_SPK_"','"_N_"','ifr','"_CODDOC_"','1')"""
 Q
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold;text-align:right"""
 ;
TOTALPAID(NOMPY) ;
 I '$G(NOMPY) Q $$TOTPAID^W4SPPY(0)
 Q $$TOTPAID^W4PY(NOMPY)
 ;
TOT(NOMPY) ;
 Q $$TOPAY^W4SPPY(NOMPY)
 ;
DAT(NOMPY) ;
 D TMPY
 I '$G(NOMPY) Q $P($G(@TMPY),"\",2)
 Q $$PAYMDAT^W4PY(NOMPY)
 ;
PAIDPY(NOMPY,NOMHB) ;
 I '$G(NOMPY) Q ""
 Q $P($G(@GLPY@(NOMPY,"H",NOMHB)),"\",2)
 ;
GLPY ;
 S GLPY=$$^W4GL("W4TSHL")
 Q
 ;
GLHB ;
 S GLHB=$$^W4GLS
 Q
 ;
DIR S DIR=$$^W4INPDIR
 Q
 ;
 ;
PUT(PRM) ;
 N (PRM,JB,%ARG,%REM)
 N TMPY D TMPY
 ;
 S (STRING,SPK)=$P(PRM,";")
 S NOMPY=$P(PRM,";",2)
 S DAT1=$P(PRM,";",3)
 S DAT2=$P(PRM,";",4)
 S UPDHB=$P(PRM,";",5)
 ;
 I 'SPK Q "SUPPLIERNUMBERISWRONG"
 ;
 S STR=$P(PRM,";",6,$L(PRM,";")-1)
 D PUT^%W3DEB("W4HBPY-PUT","SPK=SPK & NOMPY=NOMPY & STR=STR")
 ;
 N SSUM S SSUM=0
 L +@TMPY@(NOMPY):2
 K @TMPY@("H")
 ;
 F I=1:1:$L(STR,";") D
 .N A,HB,SUM
 .S A=$P(STR,";",I)
 .S HB=$P(A,"~")
 .S SUM=$P(A,"~",2)
 .I 'HB!'SUM Q
 .S SSUM=SSUM+SUM
 .S @TMPY@("H",HB)=SUM
 ;
 S $P(@TMPY,"\")=SPK
 S NAME=$P($G(@TMPY),"\",3)
 I NAME="" S NAME=$$NAME^W4SPK(SPK)
 S $P(@TMPY,"\",3)=NAME
 S $P(@TMPY,"\",5)=DAT1
 S $P(@TMPY,"\",6)=DAT2
 S $P(@TMPY,"\",7)=SSUM
 S AHNIK=$P($G(@TMPY),"\",17)
 I 'AHNIK S AHNIK=$$AHNIKMAS^W4SPK(SPK)
 S $P(@TMPY,"\",17)=AHNIK
 S TOKNIK=$P($G(@TMPY),"\",18)
 I 'TOKNIK S TOKNIK=$$NIKMASAD^W4SPK(SPK)
 S $P(@TMPY,"\",18)=TOKNIK
 S YA=$P($G(@TMPY),"\",19)
 I 'YA S YA=$$SHOTEF^W4SPK(SPK)
 S $P(@TMPY,"\",19)=YA
 ;
 I UPDHB D
 .K @$$GLPY^W4SPPY(NOMPY)@("H")
 .M @$$GLPY^W4SPPY(NOMPY)@("H")=@$$TMPY^W4SPPY@("H")
 .S $P(@$$GLPY^W4SPPY(NOMPY),"\",7)=SSUM
 ;
 L  ;
 Q 1
 ;
TRSTYLE ;
 W "<tr"
 W ">"
 Q
 ;
TMPY S TMPY=$$^W4MAIN("TMPY")
 Q
 ;
INIT ;
 D ^W3CSS,TMPY,GLPY
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 ;
 I $G(%ARG("FIRST")),$G(%ARG("NOMPY")),'$G(%ARG("SHOW")),'$G(%ARG("VIEWONLY")) D
 .N NOM S NOM=%ARG("NOMPY")
 .K @TMPY M @TMPY=@GLPY@(NOM)
 Q
 ;
UPDHB() ; 
 Q +$G(%ARG("UPDHB"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HD
W4HD ; [ 25.08.26 23:06 ] [ 23.07.26 17:18 ] [ 17.06.26 09:55 ] 
 N FIRSTSUG S FIRSTSUG=""
 ;
 I $$HZM^W4MSL(HZM) D
 .I $G(@$$^W4ORD@(HZM,"MKBN"))'="" S MLZR1=$G(^("MKBN")) Q
 .I $G(MLZR1)="" D
 ..N MLZR S MLZR=$$MKBL^W4HZMST(HZM) Q:'MLZR
 ..S MLZR1=$$^W4NAME(MLZR)
 ;
 N STYLE S STYLE="style=""padding-left:10px;padding-right:10px"
 ;
 I '$$DLVORD D
 .N BRDCLR S BRDCLR=$$BRDCLR^W4BGBODY
 .I BRDCLR="" S BRDCLR="#b54800"
 .S STYLE=STYLE_";border-bottom:1px ridge "_BRDCLR
 ;
 I $$CCWEBR^W4PRM!$$MMCC^W4PRM D
 .S STYLE=STYLE_";"_$$BGHD^W3MSD($$GETP^%W1PRM("MSDR"))
 ;
 S HRAED=$$HRAED(HZM)
 ;
 I $$HZM^W4MSL(HZM) D
 .I $$DELORD^W4DLVORD(HZM) D  Q
 ..S STYLE=STYLE_";color:red"" "
 .I $$NIGHT^W4DLVORD(HZM),'$$TAKEAWAY^W4HZMST(HZM),'$$^W4HZMH(HZM) D  Q
 ..S STYLE=STYLE_";color:orange"" "
 .
 .I $D(FGCOLOR) D  Q
 ..S STYLE=STYLE_";color:"_FGCOLOR_""" "
 ;
 S STYLE=STYLE_""""
 ;
 N WD S WD=100
 ;
 I $$FASTGR,$$FULLHD D
 .W "<table border=""0"" dir="""_$$^%W1DIR_""" width="""_WD_"%"" height=""100%"" "
 .W " cellpadding=""0px"" cellspacing=""0px"" "
 .W ">"
 .W "<tr><td width=""95%"">"
 ;
  W "<table border=""0"" dir="""_$$^%W1DIR_""" width="""_WD_"%"" height=""100%"" "
   W "cellpadding=""0"" cellspacing=""0"" class=""hdord"" "
   W STYLE
  W ">",! 
   D SHOWHEAD
END I '$D(W4ORDVHD) D
 .W "</table>",!
 .
 .I $$FASTGR,$$FULLHD D
 ..W "</td>"
 ..W "<td>"
 .. D ^W4BUTTON("showhd","SHOWFASTGR","ShowHd('0')","height:90%;font-size:"_$$^W3FSZ(12)_";font-weight:bold;background-color:red;color:white;border:ridge 3px white")
 ..W "</td></tr></table>",!
 ;
 Q
 ;
SHOWHEAD ;
 I $$DLVORD D DLVORDHD Q  ;  - FROM ^W4DLVORD
 D SHOWHD
 Q
 ;
SHOWRKV(RKV,PRM,FSZ,ID) ;
 N OU,ST
 I $G(RKV)'="" S OU=$S($G(PRM)="H":$$H2U^%L1FRM(RKV),1:RKV)
 I $G(RKV)="" S OU="&nbsp;"
 ;
 I '$$DLVORD D  Q ST
 .S ST="<span class=""hdordrkv"" "_$S($G(PRM)="E":"dir=""LTR""",1:"")
 .S ST=ST_" style="""
 .I $G(FSZ) S ST=ST_"font-size:"_$$^W3FSZ(FSZ)_";"
 .I $G(SHOWRKVCOLOR)'="" S ST=ST_"color:"_SHOWRKVCOLOR_";"
 .S ST=ST_""" "
 .I $L($G(ID)) S ST=ST_" id="""_ID_""" "
 .S ST=ST_" >"_OU_"</span>"
 ;
 I $$DLVORD D  Q ST
 .S ST="<span style=""font-weight:bold"
 .I $G(FSZ) S ST=ST_";font-size:"_$$^W3FSZ(FSZ)
 .I $G(SHOWRKVCOLOR)'="" S ST=ST_";color:"_SHOWRKVCOLOR
 .S ST=ST_""" "_$S($L($G(ID)):" id="""_ID_""" ",1:"")
 .S ST=ST_" >"_OU_"</span>"
 Q ""
 ;
 ;
DLVCSR(STAM) ;
 I $G(HZM)>0,$$HZM^W4MSL(HZM) Q 1
 I $G(NMB) Q $$^W4MSL(NMB)
 Q $$DLV^W4DLVCSR
 ;
DLVORD(STAM) ;
 I $D(W4ORDHD) Q 1
 Q +$G(%ARG("W4DLVORD"))
 ;
 ;
DLVORDHD ; -- FROM ^W4DLVORD ( ORDERS LIST )
  N FSZ S FSZ=12 I $G(SHORTSHOW) S FSZ=16
  W "<tr "
  W ">" 
   W "<td colspan=""2"">"
    W $$TBLST_"<tr>"
    W "<td width=""35%"">"
     I $G(SHORTSHOW) D
     .I $$COMP^W3PRM D
     ..N COMP S COMP=$$COMP^W4HZMST(HZM)
     ..S NAME=COMP
     ..I $$TAKEAWAY^W4HZMST(HZM)!(COMP?.P) S NAME=$$NAME^W4HZMST(HZM) Q
     W "&nbsp;"_$$SHOWRKV(NMB)_" "
     D
     .N SHOWRKVCOLOR S SHOWRKVCOLOR="brown"
     .W $$SHOWRKV($$H2U^%L1FRM($G(NAME)),"",16)
    W "</td>",!
    ;
    W "<td width="""_$S($$WOLT^W4HZMST(HZM):15,1:38)_"%"">"
     W $$SHOWRKV($$H2U^%L1FRM(ADDRESS),"",FSZ)
    ;
    W "</td>",!
    ;
    I $$WOLT^W4HZMST(HZM) D
    . W " <td width=""27%"" "_$$^%W1ALIGN_" >"
    . W "&nbsp;"_$$^%W1DICT("AUTHNO")_" "
    . D
    .  .N SHOWRKVCOLOR S SHOWRKVCOLOR="brown"
    .  . W $$SHOWRKV($G(HZMLAK),"H",10)
    . W "</td>"
    ; 
    W "<td width=""15%"" "_$$INV^%W1ALIGN_" >&nbsp;&nbsp;"
     W $$^%W1DICT("TO-")_"&nbsp;&nbsp;"_$$SHOWRKV($G(DAT),"",FSZ)
    ;
    N SHAA1 S SHAA1=SHAA
    I $$ADSHAA^W4PRM D
    .N ADSHAA S ADSHAA=$$ADSHAA^W4HZMST(HZM)
    .I ADSHAA'?.P,ADSHAA'="00:00" S SHAA1=SHAA_"-"_ADSHAA
    ; 
    W "&nbsp;&nbsp;"_$$SHOWRKV($G(SHAA1),"",FSZ)_"&nbsp;"
    ;
    I $$DELIS^W4PRM,$G(DAT) D
    . N DT S DT=$$^%L1DC(DAT,3)
    . I $$SHAA^W4HZMST(HZM)<$$SHAAZ^W4PRM S DT=DT-1 
    . N A S A=$G(@$$^W4GL("W4SLPLAN")@(DT,HZM)) Q:A=""
    . N TMEXIT S TMEXIT=$P(A,"\",4)
    . W "<br>",!
    . I TMEXIT'="" W "<span style=""color:red;font-weight:bold"">"_$$^%W1DICT("COURIEREXITTIME",TMEXIT)_"&nbsp;&nbsp;</span>"
   ;
   W "</td>",!  
   ;
   D TDTBLEND
   W "</tr>",!
   ;
   N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
   I $L(CMNT)!$$STAGE^W4HZMST(HZM) D
   .W "<tr><td colspan=""3""  style=""text-align:center"" >" 
   . D SHOWCMNT(CMNT)
   .
   .I $$STAGE^W4HZMST(HZM) D
   .. W "</td><td align=""center"" width="""_$S($$1024^W4WDSCR:16,1:11)_"%"">"
   .. W "<span style=""background-color:brown;color:white;font-size:"_$$^W3FSZ(14)_""" >"
   ..  W "&nbsp;"_$$H2U^%L1FRM($$^W3SHOWTS($$CODTS^W4HZMST(HZM)))_"&nbsp;" 
   .. W "</span>",! 
   .W "</td></tr>",!
   ; 
   I $G(SHORTSHOW) G DLVORDHDE
  ;
  ;---------------- LINE 2
  I $$WOLT^W4HZMST(HZM) D  G DLVORDHDE
  .W "<tr><td style=""color:brown"">"
  . S HRAED=$$SPA^%L1FRM(HRAED)
  . I $E(HRAED)=":" S HRAED=$E(HRAED,2,$L(HRAED))
  . W $$NBSP^%L1FRM(4)_$$SHOWRKV($G(HRAED),"H",18)
  .W "</td>",!
  .W " <td width=""35%"">"_$$^%W1DICT("RECEIVED")_" "_$$SHOWRKV(ZMANK)_"</td>",!
  .W "</tr>",! 
  ;
  ;
  W "<tr>",!
   W "<td>"
    W $$TBLST_"<tr>",!
    N DOTSTYLE S DOTSTYLE="style=""border-top:1px dotted black"" "
    W " <td "_DOTSTYLE_" >"
     W "&nbsp;"_$$^%W1DICT("COMPANYNAME")_" "_$$SHOWRKV($$COMP^W4HZMST(HZM),"H")_"</td>",!
    N PELE1 S PELE1=$TR($G(PELE)," -","")
    N TELB1 S TELB1=$TR($$TELB^W4HZMST(HZM),"- ","")
    I PELE1=$$NMBKSK^W4KIOSKO(),TELB1'=PELE1 S PELE1=TELB1
    W " <td "_DOTSTYLE_" >"_$$^%W1DICT("PELE")_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$SHOWRKV(PELE1)_"</td>",!
    W " <td "_DOTSTYLE_" >"_$$^%W1DICT("RECEIVED")_" "_$$SHOWRKV(ZMANK)_"</td>",!
    W " <td "_DOTSTYLE_" >"_$$^%W1DICT("SOAD")_" &nbsp;"_$$SHOWRKV(SOAD)_"</td>",!
   D TDTBLEND
  W "</tr>"
  ; 
  ;---------------- LINE 3
  D
  .W "<tr>"
   .W "<td>"
   . W $$TBLST_"<tr>"
   . W " <td width=""28%"">&nbsp;"_$$^%W1DICT("RECEIVER")_" "_$$NBSP^%L1FRM(2)
   .  W $$SHOWRKV($G(MLZR1),"H")
   . W "</td>",!
   .
   . W " <td >"
   .  D 
   .  . N MKRDLV S MKRDLV=$$MKRDLV^W4HZMST(HZM) I MKRDLV="" W "&nbsp;" Q
   .  . N SHOWRKVCOLOR S SHOWRKVCOLOR="brown"
   .  . N ASM S ASM=$$HZLAKNOM^W4HZMST(HZM)
   .  . I ASM["PWRLNK:" S ASM="PWRLNK"
   .  . W $$SHOWRKV($$^W3MKR(MKRDLV)_" "_ASM,"H")
   .  .I $$POOLED^W4HZMST(HZM) W " <span style=""color:red;font-weight:bold"">"_$$^%W1DICT("CONCENTRATED")_"</span>"
   . W "</td>",!
   .
   . W " <td >&nbsp;"_$$^%W1DICT("AUTHNO")_" "
   . D
   .  .N SHOWRKVCOLOR S SHOWRKVCOLOR="brown"
   .  . W $$SHOWRKV($G(HZMLAK),"H",10)
   . W "</td>"
   .
   . I '$$DLVWEB^W4DLVCSR D
   . .W " <td>" D PSLTM("grey") W "</td>"
   . .I $$MKRDLV^W4PRM D
   . .. N KIND S KIND=$$KINDORD^W4HZMST(HZM)
   . .. W "<td style=""font-size:"_$$^W3FSZ(16)_";color:brown"">"
   . ..  W $S(KIND=1:$$^%W1DICT("PRIVATE"),1:$$^%W1DICT("BUSINESS"))
   . .. W "</td>" 
   . ;
   . I $$^W4MM D  W "</tr></table></td></tr>",! Q
   .. N A S A=$G(@$$^W4GL("W4LINK")@(HZM))
   .. N MSD,MSDN S MSD=$P(A,"~"),MSDN="" Q:MSD=""
   .. S MSDN=$$MSDN^W3R(MSD)
   .. N ORD S ORD=$P(A,"~",6)
   .. S HRAED=$$H2U^%L1FRM($G(HRAED))_"&nbsp;&nbsp;"_$$^%W1DICT("RESTAURANT")_" : <span style=""color:green"">"_MSDN_"</span>"
   .. S HRAED=$G(HRAED)_" &nbsp;&nbsp;&nbsp;"_$$^%W1DICT("NPP")_" <span style=""color:brown"">"_ORD_"</span>"
   .. W " <td style=""color:brown"">"_HRAED_"</td>",!
   .
   .D TDTBLEND W "</tr>",!
   .
   .N CMNTIN S CMNTIN=$$SPA^%L1FRM($$CMNTIN^W4L($$NMB^W4HZMST(HZM)))
   .I $L($G(HRAED))&(HRAED'=$$SPA^%L1FRM($$CMNT^W4HZMST(HZM)))!$L(CMNTIN) D
   ..W "<tr>"
   .. W " <td colspan=""3"" style=""border-top:dotted 1px"" >"
   ..  W "<table>",! 
   ..   W "<tr>"
   ..     W "<td style=""color:brown"">"
   ..      I $L(HRAED),(HRAED'=$$SPA^%L1FRM($$CMNT^W4HZMST(HZM))) D
   ...      W $$NBSP^%L1FRM(4)_$$SHOWRKV($G(HRAED),"H")
   ..     W "</td>",!
   ..
   ..I CMNTIN'?.P D
   ...     W " <td style=""color:red"">"
   ...       W $$SHOWRKV($G(CMNTIN),"H",14)
   ...     W "</td>"
   ..   W "</tr>",!
   ..  W "</table>",!
   ..W "</tr>",!
  ;
DLVORDHDE ;
  D CHKPAYCA(HZM)
  Q
  ;
TBLST(STAM) ;
 Q "<table width=""100%"" dir="""_$$^%W1DIR_""" "_STYLE_" border=""0"" >"
 ;
TDTBLEND ;
 W "</tr></table></td>"
 Q
 ;
 ;----------------------------------------------------------------------
 ;
SHOWHD ; -- FROM CSR
  I $$^W4SMALL,'$$DLVCSR D HDSMALL Q
  ;
  N WD,WD1 S WD="8%",WD1="5%"
  I $D(W4PAYHD) D HDPAY Q
  ;
  I $$FASTGR,'$$FULLHD,$$GETP^%W1PRM("W4MENU") D SHOWFASTGR Q
  ;
  W "<tr>"
   D SHOWORD(HZM,WD,$S($$DLVCSR:"10%",1:"6%"))
   ;
   I '$$DLVCSR D
   .D SHOWTBL(NMB,WD,WD1)
   .D SHOWMLZ($G(MLZR1),WD1)
   .
   .W "<td colspan=""5"">",!
   . W "<table width=""100%"" cellspacing=""0"" cellpadding=""0"" class=""hdord"">",!
   .  W "<tr>"
   .   W "<td>"_$$^%W1DICT("CSRDATE")_"&nbsp;&nbsp;"_$$SHOWRKV($G(DATK))_"</td>",!
   .   W "<td id=""curtime"" "_$$INV^%W1ALIGN_" style=""font-size:"_$$^W3FSZ(10)_""" ></td>"
   .   W "<td>&nbsp;</td>",!
   .  W "</tr>",!
   . W "</table>",!
   .W "</td>",!
   ;
   I $$DLVCSR D
   .W "<td width=""7%"">"_$S($$COMP^W3PRM:$$^%W1DICT("CUSTCODE"),1:$$^%W1DICT("CUSTOMER"))_"</td>"
   .I '$G(NMB) S NMB=$$NMB^W3HZMST(JB)
   .I '$G(NMB),$G(HZM) S NMB=$$NMB^W4HZMST(HZM)
   .N TEL S TEL="" I $$TELB'=NMB D
   ..S TEL=$$^%W1DICT("TEL")_" "_$$TELB
   .N PRBR S PRBR=0
   .;
   .N FAX S FAX=$$FAX I FAX'?." " D
   ..I FAX'=$$TELB,FAX'=NMB,FAX'=PELE S TEL=TEL_$S(PRBR:" , ",1:"<br>")_$$^%W1DICT("FAX")_" "_FAX
   .
   .I $$ISCR^W4L(NMB),$L($G(NAME)) S NAME=NAME_"*"
   .
   .I '$$COMP^W3PRM D
   ..W "<td colspan=""2"" width=""18%"">"
   .. N LK1 S LK1=NMB_" "_$$H2U^%L1FRM($G(NAME))_" "_TEL
   .. W $$SHOWRKV(LK1,"",$S($L(LK1)>26:10,1:""))
   ..W "</td>",!
   .I $$COMP^W3PRM D
   ..W "<td colspan=""2"" width=""22%"">"_$$SHOWRKV(NMB)_" "_TEL_"</td>",!
   .
   .W "<td width=""6%"">"_$$^%W1DICT("ADDRESS")_"</td>"
   .I $G(ADDRESS)="" S ADDRESS=$$KTV^W3HZMST(JB)
   .I $G(ADDRESS)="",$G(HZM) S ADDRESS=$$KTVM^W4HZMST(HZM)
   .W "<td colspan=""2"" width=""18%"">"_$$SHOWRKV($$H2U^%L1FRM(ADDRESS))_"</td>",!
   .W "<td width=""14%"">"_$$^%W1DICT("TODATE")_"&nbsp;&nbsp;"_$$SHOWRKV($G(DAT))_"</td>",!
   .N SHAA1 S SHAA1=$G(SHAA)
   .
   .I $$ADSHAA^W4PRM D
   ..N ADSHAA S ADSHAA=$$ADSHAA^W3HZMST(JB)
   ..I '$$^W4CLOSE(HZM),ADSHAA!$P(ADSHAA,":",2) D  Q
   ...S SHAA1=SHAA_"-"_ADSHAA
   ..S SHAA1=SHAA1_"-"_$$ADSHAA^W4HZMST(HZM)
   .
   .W "<td width=""15%"">"_$$^%W1DICT("TOTIME")
   . W "&nbsp;&nbsp;"_$$SHOWRKV(SHAA1)
   .W "</td>",!
   ;
  W "</tr>",!
  ;
  ;---------------- LINE 2
  I '$G(SOAD) D
  .N DIAPSD S DIAPSD=$$DIAPSD^W4KB
  .N HZM S HZM=$$GET^%W1PRM("HZM") I $$^W4ISORD(HZM) Q
  .I DIAPSD?1N.N D
  ..S SOAD=DIAPSD
  ..D PUT^W3HZMST(JB,"SOAD",SOAD)
  ..I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,$$NMB^W3HZMST(JB),SOAD)
  ;
  D
  .W "<tr>"
  . N MYDVN S MYDVN=$$^W4MYDVN
  . I '$$DLVCSR D
  . .I $G(SOAD)=""&$$SCANER^W4HZTFR S SOAD=1 D PUT^W3HZMST(JB,"SOAD",SOAD)
  . .D SHOWSOAD($G(SOAD))
  . .W "<td>"_$$^%W1DICT("POSNUMBER")_"</td><td>&nbsp;"_$$SHOWRKV(MYDVN)_"</td>",!
  . .W "<td>"_$$^%W1DICT("CLIENT")_"</td>"
  . .W "<td id=""custid"" colspan=""2"">"
  . .I $$^W4ISCDLK(LKHN),$G(LKHN1)="" S LKHN1=$$LKH^W4L(LKHN)
  . .I $$^W4ISCDLK(LKHN),$$^W4MSL(LKHN) W $$SHOWRKV(LKHN)_" "_$$SHOWRKV(LKHN1,"H")
  . .I $L($G(HRAED)) W " [ "_$$H2U^%L1FRM(HRAED)_" ] "
  . .W "</td>",!
  . .D SHOWZMANK(ZMANK)
  . ;
  . I $$DLVCSR D
  . .S COMPANY=$S($G(HZM)>0:$$COMP^W4HZMST(HZM),1:$$COMP^W3HZMST(JB))
  . .W "<td colspan=""2"">"
  . . I $G(PELE)="" S PELE=$$PELE^W3HZMST(JB)
  . . I $G(PELE)="",$G(HZM) S PELE=$$PELE^W4HZMST(HZM)
  . . N PELE1 S PELE1=PELE
  . . I '$$COMP^W3PRM D
  . .. W $$^%W1DICT("PELE")_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$SHOWRKV(PELE)
  . . I $$COMP^W3PRM D
  . .. W $$^%W1DICT("MAZMIN")_"&nbsp;&nbsp;&nbsp;&nbsp;"
  . .. N MAZMIN S MAZMIN=$$NAME^W3HZMST(JB)
  . .. I MAZMIN?.P,$G(HZM)>0 S MAZMIN=$$MAZMIN^W4HZMST(HZM)
  . .. W $$SHOWRKV($$H2U^%L1FRM(MAZMIN)_" "_PELE)
  . .. I $G(COMPANY)?.P,$L(NAME),$$SPA^%L1FRM(NAME)'=$$SPA^%L1FRM(MAZMIN) S COMPANY=NAME
  . .. I $$ISCR^W4L(NMB),$L($G(COMPANY)) S COMPANY=COMPANY_"*"
  . .W "</td>",!
  . .W "<td>"_$$^%W1DICT("COMPANYNAME")_"</td>"
  . .W "<td>"_$$SHOWRKV($G(COMPANY),"H")_"</td>",!
  . .W "<td>&nbsp;</td>",!
  . .W "<td>"_$$^%W1DICT("RECEIVER")_"</td>"
  . .W "<td colspan=""2"">"_$$SHOWRKV($G(MLZR1),"H")_"</td>",!
  . .I $G(DATK)="" S DATK=$$DATK^W3HZMST(JB)
  . .I $G(DATK)="",$G(HZM) S DATK=$$DATK^W4HZMST(HZM)
  . .W "<td colspan=""1"">"_$$^%W1DICT("CSRDATE")_"&nbsp;&nbsp;"_$$SHOWRKV(DATK)_"</td>",!
  . .W "<td >"_$$^%W1DICT("POSNUMBER")_"&nbsp;&nbsp;"_$$SHOWRKV(MYDVN)_"</td>",!
  .W "</tr>",!
  ;
LINE3 ;
  I $$DLVCSR D
  .W "<tr>"
  .W " <td colspan=""1"">"_$$^%W1DICT("RECEIVED")_"</td>",!
  .I $G(ZMANK)="" S ZMANK=$$DATCB^W3HZMST(JB)
  .I $G(ZMANK)="",$G(HZM) S ZMANK=$$DATCB^W4HZMST(HZM)
  .W " <td dir=""LTR"" "_$$^%W1ALIGN_" colspan=""2"">"_$$SHOWRKV(ZMANK)_"</td>",!
  .N COLSPAN,COLSPAN1 S COLSPAN=2,COLSPAN1=2
  .I $L($G(HRAED))>35 S COLSPAN=3,COLSPAN1=1
  .W " <td colspan="""_COLSPAN_""">"_$$SHOWRKV($G(HRAED),"H",10)_"</td>",!
  .
  .I '$$DLVWEB^W4DLVCSR D
  ..W " <td>"_$$^%W1DICT("AUTHNO")_"</td>"
  ..S HZMLAK=$$HZMLAKMKR(HZM,$G(HZMLAK))
  ..W " <td colspan="""_COLSPAN1_""">"_$$SHOWRKV($G(HZMLAK),"H",10)_"</td>",!
  ..S COLSPAN=1 I $$PSL^W4HZMST(HZM)>0 S COLSPAN=2
  ..W "<td colspan="""_COLSPAN_""">" D PSLTM("lightgrey") W "</td>"
  .
  .S COLSPAN=2
  .I $$DLVWEB^W4DLVCSR S COLSPAN=3
  .I $G(SOAD)="" S SOAD=$$SOAD^W3HZMST(JB)
  .I $G(SOAD)="",$G(HZM) S SOAD=$$SOAD^W4HZMST(HZM)
  .S:'SOAD SOAD=1
  .W " <td colspan="""_COLSPAN_""" >"_$$^%W1DICT("SOAD")_" &nbsp;"
  .W "<span id=""soadid"">"_$$SHOWRKV(SOAD)_"</span>"
  .
  .I $$DLVWEB^W4DLVCSR D
  ..N MRKTO S MRKTO=""
  ..I HZM<1,$$GETP^%W1PRM("MRKTO") D
  ...S MRKTO=$$GETP^%W1PRM("MRKTO") Q:'MRKTO
  ..I HZM>0 S MRKTO=$$MSD^W3HZMST(HZM)
  ..W $$NBSP^%L1FRM(3)_"<span style=""color:lightgreen;font-weight:bold"">"_$$NAME^W3MSD(MRKTO)_"</span>"
  ..I $$GETP^%W1PRM("MSDR0")=8005 W "</td><td colspan=""2"">&nbsp</td>" Q  ; --11/05/22
  ..W "</td><td colspan=""2"">"
  ..W " <span style=""color:lightgreen"">"_$$^%W1DICT("SEARCH3")
  ..W "  <input type=""text"" id=""srcid"" name=""SRCH"" size=""12"" onFocus=""Select('srcid')"" onKeyPress=""KeyPress(this.value)"" />",!
  ..W $$NBSP^%L1FRM(5)
  ..D ROUNDBUT^%W1JS("rbtsubmhip",$$^%W1DICT("SEARCH"),"ClickSrch()",$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_";color:black")
  .
  .W "</td>",!
  .W "</tr>",!
  Q  ;
  ;
  ;
SHOWORD(HZM,WD,WD1) ;
  W "<td "
  I $G(WD) W "width="""_WD_""" "
  W "> "_$$^%W1DICT($S($$^W4TABLET:"ORDER",1:"ORDERNUMBER"))_"</td>"
  N ORDNOM S ORDNOM=HZM
  I $$^W4ISPART(HZM) S ORDNOM=$$ORDNOM^W4ISPART(HZM)
  I ORDNOM<0 S ORDNOM=""
  W "<td "
   I $G(WD1) W "width="""_WD1_""" "
  W ">"_$$SHOWRKV(ORDNOM)_"</td>",!
 Q 
 ; 
SHOWMLZ(MLZ1,WD1)
  I $$^W6 W "<td colspan=""3"">&nbsp;</td>" Q
  ;
  W "<td "
  I $G(WD1) W "width="""_WD1_""" "
  W "> "_$$^W4WAITER_"</td>"
  W "<td "
   I $G(COLSPANMLZ) W " colspan="""_COLSPANMLZ_""" " K COLSPANMLZ
   I '$G(COLSPANMLZ) W " width="""_$S($D(HDPAY):22,1:30)_"%"" "
   W " dir="""_$$^%W1DIR_""" " 
   W ">&nbsp;"_$$SHOWRKV(MLZ1,"H")
   ;
   I $$FASTGR,'$$FULLHD,$G(LKHN),$$^W4ISCDLK(LKHN) D
   .I $G(LKHN1)="" S LKHN1=$$LKH^W4L(LKHN)
   .S SP=27 I $$1024^W4WDSCR S SP=10
   .W $$NBSP^%L1FRM(SP)_$$^%W1DICT("CUSTOMER")_$$NBSP^%L1FRM(3)_$$SHOWRKV(LKHN)_" "_$$SHOWRKV(LKHN1,"H")
   ; 
  W "</td>",!
 Q
 ;
SHOWTBL(NMB,WD,WD1) ;
  I $$^W6 W "<td colspan=""3"">&nbsp</td>" Q
  W "<td "
  I $G(WD1) W "width="""_WD1_""" "
  W ">"_$S($$^W4MSD(NMB):$$^W4DICTBL,1:"")_"</td>"
  D SHOWTBL1(NMB,$G(WD))
  Q
  ;
SHOWTBL1(NMB,WD) 
  N NAMETB S NAMETB=$$NMTBL(NMB)
  W "<td "
   ;;I $$DLVCSR W " colspan=""2"" "
   W " colspan=""2"" "
   I $G(WD) W "width="""_(2*WD)_"%"" "
  W ">&nbsp;"_$$SHOWRKV(NMB)_" &nbsp;"_NAMETB_"</td>",!
 Q
 ;
NMTBL(NMB) ;
  N NAMETB S NAMETB=$$LKH^W4L(NMB)
  I $$ISCR^W4L(NMB) S NAMETB=NAMETB_"*"
  I NAMETB?1N.N." "."ogley" S NAMETB=""
  E  S NAMETB=$$H2U^%L1FRM(NAMETB)_" " ;;"<br>"_$$NBSP^%L1FRM(2+($L(NMB)*2))
  I '$$DLVCSR,$$^W4TABLET'=2 S NAMETB=NAMETB_"<span style=""font-size:"_$$^W3FSZ(9)_"""> [ "_$$H2U^%L1FRM($$^W4NM($$SUGL1^W4L(NMB)))_" ]</span>"
  Q NAMETB
  ;
SHOWZMANK(ZMANK)
  I $G(BR)="" S BR=" "
  S BR=$$NBSP^%L1FRM(3)
  W "<td colspan=""3"" "
  W ">"_$$^%W1DICT("RECEIVED")_BR_$$SHOWRKV(ZMANK)_"</td>",!
 Q
 ;
SHOWSOAD(SOAD)
  N MYDVN S MYDVN=$$^W4MYDVN
  I $$KUPA^W4PLUK(MYDVN)!$$^W6 D  Q
  .W "<td colspan=""2"">&nbsp;</td>"
  ;
  W "<td "
  I $G(WDSOAD) W "width="""_WDSOAD_""" "
  W "> "
  I '$$DLVCSR W $$^%W1DICT("GUESTS")_"</td><td id=""soadid"">&nbsp;"_$$SHOWRKV(SOAD,"E")_"</td>",!
  I $$DLVCSR W $$^%W1DICT("GUESTS")_" "_$$SHOWRKV(SOAD,"E")_"</td>",!
 Q
HDSMALL ;
  I $G(HZM)>0 D
  .W "<tr>"
  .W "<td colspan=""7"" align=""center"">"_$$^%W1DICT("ORDERNUMBER")
  .W " "_$$SHOWRKV(HZM)_"</td>",!
  .W "</tr>",!
  ; 
  W "<tr>"
   W "<td width=""20%""> &nbsp;&nbsp;"
    W $$^%W1DICT("POSNUMBER")_" : "_$$^W4MYDVN
   W "</td>"
   ;
   W "<td width=""12%"">"_$$^W4DICTBL_"</td>"
   W "<td width=""10%"">&nbsp;"_$$SHOWRKV(NMB)_"</td>",!
   ;
   W "<td width=""12%"">"_$$^W4WAITER_"</td>"
   W "<td width=""25%"">"_$$SHOWRKV(MLZR1,"H")_"</td>",!
   W "<td width=""12%"">"_$$^%W1DICT("GUESTS")_"</td>"
   ;
   N SOAD S SOAD="" I '$$DLVORD S SOAD=$$SOAD^W3HZMST(JB)
   I 'SOAD S SOAD=$$SOAD^W4HZMST(HZM)
   W "<td id=""soadid"">&nbsp;"_$$SHOWRKV(SOAD,"E")_"</td>",!
  W "</tr>",!
  ;
  Q 
  ;
  ;
HDPAY ;
  N HDPAY S HDPAY=""
  W "<tr>"
   I $$^W6 D  W "</tr>" Q 
   . W "<td width=""15%"">POS # "_$$SHOWRKV($$^W4MYDVN)_"</td>"
   . D SHOWORD(HZM,WD,$S($$DLVCSR:"10%",1:"6%"))
   . W "<td colspan=""6"">&nbsp;</td>"
   . ;;W "<td style=""color:white"">JB "_$G(JB)_"</td>" ; ***
   ;
   D SHOWORD(HZM,WD,"6%")
   ; 
   D SHOWTBL(NMB,WD,WD1)
   ;
   W " <td>"_$$^%W1DICT("SOAD")_" &nbsp;"_$$SHOWRKV(SOAD)_"</td>",!
   ;
   D SHOWMLZ($G(MLZR1),WD1)
   ;
   D
   .W "<td>"
   .D
   ..N NCAB S NCAB=$$NCAB^W4HZMST(HZM)
   ..W $S(NCAB:$$^%W1DICT("INVRCPT")_" "_$$SHOWRKV(NCAB),1:"")
   .W "</td>",!
   .w "<td>&nbsp;</td>",!
   ;
   W "<td colspan=""2"">",!
    W "<table width=""100%"" cellspacing=""0"" cellpadding=""0"" class=""hdord"">",!
     W "<tr>"
      W "<td>"_$$^%W1DICT("CSRDATE")_"&nbsp;&nbsp;"_$$SHOWRKV($G(DATK))_"</td>",!
      W "<td id=""curtime"" "_$$INV^%W1ALIGN_" style=""font-size:"_$$^W3FSZ(10)_""" ></td>"
      W "<td>&nbsp;</td>",!
      W "<td>"_$$^%W1DICT("POSNUMBER")_$$NBSP^%L1FRM(2)_$$SHOWRKV($$^W4MYDVN)_"</td>",!
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!  ; -- 02/11/23
 Q
 ;
 ;
CHKPAYCA(HZM) ;
 I $$CODTS^W4HZMST(HZM)=3,'$$CA^W4HZMST(HZM),$G(@$$^W4ORD@(HZM,"CREDCARD")),$$STAGE^W4HZMST(HZM)'=1 D
 .W "<tr><td colspan=""8"" "
 . W "style=""text-align:center;color:red;font-size:"_$$^W3FSZ(18)_";font-weight:bold"">"
 . W $$^%W1DICT("CREDITPAYMENTFAULT")
 . N OU S OU=$G(@$$^W4ORD@(HZM,"CB","V",1,"STROU"))
 . N STA,STA1 S STA=$E(OU,1,3),STA1=""
 . I STA D
 .. S STA1=$G(@$$^W4GL("KOD")@(+STA))
 .. W "&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("ERROR")_" : "_$$H2U^%L1FRM(STA1)
 .W "</td></tr>",!
 Q
 ;
 ;
PSLTM(COLOR) ;
 N PSL,PSL1 S PSL1=""
 S PSL=$$PSL^W4HZMST(HZM)
 I PSL S PSL1=$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))
 ;
 W $$^%W1DICT("COURIER")_" "_$$SHOWRKV(PSL1)
 I $$REHEV^W4PRM D
 .N REHEV S REHEV=$$REHEV^W4HZMST(HZM) Q:'REHEV
 .W " <span style=""font-size:"_$$^W3FSZ(10-$$1024^W4WDSCR)_";color:"_$G(COLOR)_""">"_$$H2U^%L1FRM($$^W4HZGRHV(HZM))_"</span>"
 ;
 N TM S TM=$$TM^W4HZMST(HZM)
 I TM W "&nbsp;&nbsp;"_$$^%W1DICT("DLVDOC")_" "_$$SHOWRKV(TM)
 Q
 ;
HRAED(HZM) ; 
 I '$$DLVORD,$D(@$$^W4TMPORD)=11!($G(HZM)<1) Q $$CMHD^W3HZMST(JB)
 Q $$HRA^W4HZMST(HZM)
 ;
TELB(STAM) ;
 N TELB S TELB=$$TELB^W3HZMST(JB)
 I '$G(HZM) Q TELB
 I '$$DLVORD,'$$^W4CLOSE(HZM),TELB Q TELB
 Q $$TELB^W4HZMST(HZM)
 ;
PELE(STAM) ;
 N PELE S PELE=$$PELE^W3HZMST(JB)
 I '$G(HZM) Q $S(PELE'?.P:PELE,1:$$PELE^W4L($$NMB^W3HZMST(JB))) 
 I '$$DLVORD,'$$^W4CLOSE(HZM),PELE Q PELE
 S PELE=$$PELE^W4HZMST(HZM)
 Q PELE
 ;
FAX(STAM) ;
 N FAX S FAX=$$FAX^W3HZMST(JB)
 I '$G(HZM) Q FAX
 I '$$DLVORD,'$$^W4CLOSE(HZM),FAX Q FAX
 Q $$FAX^W4HZMST(HZM)
 ;
FASTGRD(STAM)
 Q ($D(@$$^W4GL("W4FASTGR"))>9)
 ;
FASTGR(STAM) ; 
 ;;I $$GRITVW^W4PRM Q 0
 I $$^W4SMALL Q 0  ;; !$$^W4TABLET Q 0 ; -- 15.04.22
 I $$MM^W4PRM Q 0
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$TLMTN^W4L(NMB) Q 0
 I $$^W4DLVNPR(JB) Q 0
 I $$DEP2FAST^W4PRM Q 1
 I '$$EXISTFASTGR Q 0
 I $$UR^W4MENU=1!($$UR^W4MENU=2),'$$DLVCSR!$$GRITMSL^W4PRM,$$FASTGRD Q 1
 Q 0 
 ;
EXISTFASTGR() ;
 N OK S OK=0
 I $D(@$$^W4GL("W4FASTGR"))>9,'$D(@$$^W4GL("W3SUG")) Q 1
 N N S N="" F  S N=$O(@$$^W4GL("W4FASTGR")@(N)) Q:N=""  D
 .I $G(@$$^W4GL("W3SUG")@(N))'=0 S OK=1 Q 
 Q OK
 ;
SHOWFASTGR ; 
 N COLX,COLY,CDKV,SUG1,firstsug
 D COLXY^W4HZTFR 
 N NMB S NMB=$$GETP^%W1PRM("NMB") Q:'NMB
 N SUGS,MSUGS S SUGS=$$SUGS^W4L(NMB)
 N P1DZ S P1DZ=$$^W4DZ
 ;
 N GLOB S GLOB=$$^W4GL("W4FASTGR")
 N CURDEP S CURDEP=$$GETP^%W1PRM("CURDEP")
 I $$DEP2FAST^W4PRM,CURDEP D
 .S GLOB=$$^W4MAIN("TMPFAST")
 .K @GLOB
 .N N S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 ..I $$DEPG^W4P(N)'=CURDEP Q
 ..S @GLOB@(N)=$$SUG1^W4P(N)
 .S FIRSTSUG=$O(@GLOB@(""))
 .I FIRSTSUG="" S GLOB=$$^W4GL("W4FASTGR") Q
 ;
 W "<tr dir="""_$$^%W1DIR_""">"
  S CDKV=""
  I $G(@$$^W4PRM@("FSZGR")) S MFUNC="FSZ:"_$G(@$$^W4PRM@("FSZGR"))
  ;
  N I S I=0 F  D  Q:I'<COLX  Q:CDKV=""
  .S CDKV=$O(@GLOB@(CDKV))
  .I CDKV="" S I=I+1,MFUNC(I,"TO")="ToGroups()" Q
  .I $$NOSUG^W3HZTFR(CDKV,+P1DZ) Q
  .I $G(@$$^W4GL("W3SUG")@(CDKV))=3 Q
  .S MSUGS=$P($G(@$$^W4GL("PARSUG")@(SUGS,1)),"\",9)
  .I MSUGS'?.P,("^"_MSUGS_"^")[("^"_SUGS_"^") Q
  .S SUG1=$G(@$$^W4GL("PARSUG")@(CDKV))
  .I $$TMPENG^%W1LNG S SUG1=$$PARSUGL^W4P(CDKV)
  .S I=I+1 Q:I>COLX
  .S MFUNC(I)=$$H2U^%L1FRM(SUG1)
  .S MFUNC(I,"TO")="ToItems('"_CDKV_"')"
  ; 
  N WD S WD="58%"
  D FUNC^W4SHEET(WD)
  ;
  S MFUNC("EXIT")="SHOWFULLHD"
  S MFUNC("EXIT","TO")="ShowHd('1')"
  D EXIT^W4SHEET("6%")
  ;
  W "<td>&nbsp;</td>"
  W "<td>"
   W "<table width=""100%"" border=""0"">",!
    W "<tr>"
     D
     .N WD S WD="15%",WD1="15%"
     .;;I $$1024^W4WDSCR S WD="25%",WD1="25%"
     .D SHOWORD(HZM,WD,WD1)
     .W "<td colspan=""3"" "_$$INV^%W1ALIGN_">"
     . W $$^%W1DICT("RECEIVED")_$$NBSP^%L1FRM(2)_$$SHOWRKV(ZMANK,,11)
     .W "</td>",!
    W "</tr>"
    ; 
    W "<tr>"
     I '$$DLVCSR D
     .D SHOWTBL(NMB)
     .N WDSOAD S WDSOAD="17%"
     .D SHOWSOAD($G(SOAD))
     ;
     I $$DLVCSR D
     .D SHOWTBL1(NMB)
     .N WDSOAD S WDSOAD="12%"
     .D SHOWSOAD($G(SOAD))
    W "</tr>"
    ;
    I '$$DLVCSR D
    .W "<tr>"
    . S COLSPANMLZ=3
    . D SHOWMLZ($G(MLZR1))
    .W "</tr>"
   W "</table>",!
  W "</td>"
  W "</tr>"
  Q 
  ;
FULLHD(STAM) ; 
 Q +$$GETP^%W1PRM("FULLHD") 
 ;
 ;
SHOWCMNT(CMNT) ;
 I $E(CMNT,$L(CMNT)-69,$L(CMNT))'[" " D
 .S CMNT=$E(CMNT,1,69)_" "_$E(CMNT,70,$L(CMNT))
 ;
 W "<span style=""color:red"">"
 ; 
 D  
 .I CMNT'["{" W $$H2U^%L1FRM(CMNT)_"</span>",! Q
 .
 .W $$H2U^%L1FRM($P(CMNT,"{"))_"</span>"
 .
 .D
 ..W "<span style=""color:red;font-size:"_$$^W3FSZ(18)_""">{"
 ..N TX S TX=$P($P(CMNT,"{",2),"}")
 ..N IC S IC="zeev yi`"
 ..N TX1,TX2 I TX[IC W " "_$$H2U^%L1FRM(IC)
 ..N MN S MN="rexi` ldpn"
 ..I TX[MN W " "_$$H2U^%L1FRM(MN)
 ..S TX2=$$RPL^%L1FRM(TX,IC,"")
 ..S TX2=$$RPL^%L1FRM(TX2,MN,"")
 ..I $L(TX2) W "<span style=""color:black;font-size:"_$$^W3FSZ(18)_""">"_$$H2U^%L1FRM(TX2)_"</span>"
 ..W "}</span>",! 
 .
 .W "<span style=""color:red;font-size:"_$$^W3FSZ(12)_""">"
 . W $$H2U^%L1FRM($P(CMNT,"}",2))
 .W "</span>",! 
 Q
 ;
HZMLAKMKR(HZM,HZMLAK) ;
 N MKR,MKR1 S MKR=$G(@$$^W4ORD@(HZM,"MKRDLV")),MKR1=""
 I MKR S MKR1=$$^W3MKR(MKR)_" "_$$HZLAKNOM^W4HZMST(HZM)
 I $L(MKR1) S HZMLAK=HZMLAK_" "_MKR1
 N HZLAKNOM2 S HZLAKNOM2=$$HZLAKNOM2^W4HZMST(HZM)
 I HZLAKNOM2?1N.N S HZMLAK=HZMLAK_" [ "_HZLAKNOM2_" ]"
 Q HZMLAK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HD0
W4HD ; [ 07.04.15 09:44 ] [ 26.03.15 10:33 ] [ 12.03.15 14:07 ]
 N STYLE S STYLE=""
 I $$HZM^W4MSL(HZM),$$DELORD^W4DLVORD(HZM) D
 .S STYLE=" style=""color:red"" "
 ;
 W "<table border=""0"" dir="""_$$^%W1DIR_""" width=""100%"" height=""100%"" padding=""0px"" cellpadding=""0px"" cellspacing=""0px"" class=""hdord"" "_STYLE_" >",!
   D SHOWHEAD
 ;
END I '$D(W4ORDVHD) W "</table>",!
 Q
 ;
SHOWHEAD ;
 I $$DLVORD D DLVORDHD Q  ;  - FROM ^W4DLVORD
 D SHOWHD
 Q
 ;
SHOWRKV(RKV,PRM) ;
 N OU
 I $G(RKV)'="" S OU=$S($G(PRM)="H":$$H2U^%L1FRM(RKV),1:RKV)
 I $G(RKV)="" S OU="&nbsp;"
 I '$$DLVORD Q "<span class=""hdordrkv"" "_$S($G(PRM)="E":"dir=""LTR""",1:"")_" >"_OU_"</span>"
 I $$DLVORD Q "<span style=""font-weight:bold"">"_OU_"</span>"
 Q ""
 ;
DLVCSR(STAM) ;
 I $G(NMB) Q $$^W4MSL(NMB)
 Q $$DLV^W4DLVCSR
 ;
DLVORD(STAM) ;
 Q +$G(%ARG("W4DLVORD"))
 ;
 ;
DLVORDHD ; -- FROM ^W4DLVORD ( ORDERS LIST )
  W "<tr>"
   W "<td colspan=""3"">&nbsp;"_$$SHOWRKV(NMB_" "_$$H2U^%L1FRM($G(NAME)))_"</td>",!
   W "<td width=""6%"">"_$$^%W1DICT("ADDRESS")_"</td>"
   W "<td colspan=""2"">"_$$SHOWRKV($$H2U^%L1FRM(ADDRESS))_"</td>",!
   W "<td width=""12%"">"_$$^%W1DICT("TODATE")_"&nbsp;&nbsp;"_$$SHOWRKV($G(DAT))_"</td>",!
   W "<td width=""8%"">&nbsp;&nbsp;"_$$^%W1DICT("TOTIME")_"&nbsp;&nbsp;"_$$SHOWRKV($G(SHAA))_"&nbsp;</td>",!
  W "</tr>",!
  ;
  ;---------------- LINE 2
  W "<tr>"
   W " <td colspan=""3"">&nbsp;"_$$^%W1DICT("COMPANYNAME")_" "_$$SHOWRKV($$COMP^W4HZMST(HZM),"H")_"</td>",!
   W " <td colspan=""2"">"_$$^%W1DICT("PELE")_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$SHOWRKV($G(PELE))_"</td>",!
   W " <td colspan=""3"">"_$$^%W1DICT("ZMANK")_" "_$$SHOWRKV(ZMANK)_"</td>",!
  W "</tr>",!
  ;---------------- LINE 3
  D
  .W "<tr>"
   .W " <td>&nbsp;"_$$^%W1DICT("RECEIVER")_"</td>"
   .W " <td colspan=""2"">"_$$SHOWRKV($G(MLZR1),"H")_"</td>",!
   .W " <td colspan=""5"">"_$$SHOWRKV($G(HRAED),"H")_"</td>",!
  .W "</tr>"
  ;
  D CHKPAYCA(HZM)
  Q
  ;
  ;----------------------------------------------------------------------
SHOWHD ; -- FROM CSR
  I $$^W4SMALL D HDSMALL Q
  ;
  W "<tr>"
   N WD S WD="8%"
   W "<td width="""_WD_""">"_$$^%W1DICT("ORDERNUMBER")_"</td>"
   W "<td width="""_WD_""">"_$$SHOWRKV($S(HZM>0:HZM,1:""))_"</td>",!
   ;
   I '$$DLVCSR D
   .W "<td width="""_WD_""">"_$$^W4DICTBL_"</td>"
   .;;N NAMETB S NAMETB=$S($$LKH^W4L(NMB)?1N.N:$$SUGL1^W4L(NMB),1:$$LKH^W4L(NMB))
   .N NAMETB S NAMETB=$$SUGL1^W4L(NMB)
   .W "<td width="""_(2*WD)_"%"">"_$$SHOWRKV(NMB)_" &nbsp;"_$$H2U^%L1FRM(NAMETB)_"</td>",!
   .W "<td width="""_WD_""">"_$$^W4WAITER_"</td>"
   .W "<td>"_$$SHOWRKV($G(MLZR1),"H")_"</td>",!
   .W "<td colspan=""2"" width=""30%"">",!
   . W "<table width=""100%"" cellspacing=""0"" cellpadding=""0"" >",!
   .  W "<tr>"
   .   W "<td style=""font-weight:bold"" >"_$$^%W1DICT("CSRDATE")_"&nbsp;&nbsp;"_$$SHOWRKV($G(DATK))_"</td>",!
   .   W "<td id=""curtime"" "_$$INV^%W1ALIGN_" style=""font-size:"_$$^W3FSZ(10)_""" ></td>"
   .   W "<td>&nbsp;</td>",!
   .  W "</tr>",!
   . W "</table>",!
   .W "</td>",!
   ;
   I $$DLVCSR D
   .I '$$DLVORD W "<td width=""10%"">"_$$^%W1DICT("CUSTOMER")_"</td>"
   .W "<td colspan=""2"">"_$$SHOWRKV(NMB_" "_$$H2U^%L1FRM($G(NAME)))_"</td>",!
   .W "<td width=""6%"">"_$$^%W1DICT("ADDRESS")_"</td>"
   .W "<td colspan=""2"">"_$$SHOWRKV($$H2U^%L1FRM(ADDRESS))_"</td>",!
   .W "<td width=""18%"">"_$$^%W1DICT("TODATE")_"&nbsp;&nbsp;"_$$SHOWRKV($G(DAT))_"</td>",!
   .W "<td width=""8%"">"_$$^%W1DICT("TOTIME")_"&nbsp;&nbsp;"_$$SHOWRKV($G(SHAA))_"</td>",!
   ;
  W "</tr>",!
  ;
  ;---------------- LINE 2
  I '$G(SOAD) D
  .N DIAPSD S DIAPSD=$$DIAPSD^W4KB
  .N HZM S HZM=$$GET^%W1PRM("HZM") I HZM>0 Q
  .I DIAPSD?1N.N D
  ..S SOAD=DIAPSD
  ..D PUT^W3HZMST(JB,"SOAD",SOAD)
  ..I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,$$NMB^W3HZMST(JB),SOAD)
  ;
  W "<tr>"
   I '$$DLVCSR D
   .I $G(SOAD)=""&$$SCANER^W4HZTFR S SOAD=1 D PUT^W3HZMST(JB,"SOAD",SOAD)
   .W "<td>"_$$^%W1DICT("GUESTSQN")_"</td><td id=""soadid"">"_$$SHOWRKV(SOAD,"E")_"</td>",!
   .W "<td>"_$$^%W1DICT("POSNUMBER")_"</td><td>"_$$SHOWRKV($$^W4MYDVN)_"</td>",!
   .W "<td>"_$$^%W1DICT("CLIENT")_"</td>"
   .W "<td id=""custid"" >"
   .I $G(LKHN),$G(LKHN1)="" S LKHN1=$$LKH^W4L(LKHN)
   .I $G(LKHN),$$^W4MSL(LKHN) W $$SHOWRKV(LKHN)_" "_$$SHOWRKV(LKHN1,"H")
   .I $L($G(HRAED)) W " [ "_$$H2U^%L1FRM(HRAED)_" ] "
   .W "</td>",!
   .W "<td>"_$$^%W1DICT("ZMANK")_" "_$$SHOWRKV(ZMANK)_"</td>",!
   ;
   I $$DLVCSR D
   .W "<td colspan=""2"">"_$$^%W1DICT("PELE")_"&nbsp;&nbsp;&nbsp;&nbsp;"_$$SHOWRKV(PELE)_"</td>",!
   .W "<td>"_$$^%W1DICT("COMPANYNAME")_"</td>"
   .W "<td>"_$$SHOWRKV($G(COMPANY),"H")_"</td>",!
   .W "<td>&nbsp;</td>",!
   .W "<td>"_$$^%W1DICT("RECEIVER")_"</td>"
   .W "<td colspan=""2"">"_$$SHOWRKV(MLZR1,"H")_"</td>",!
   .W "<td colspan=""1"">"_$$^%W1DICT("CSRDATE")_"&nbsp;&nbsp;"_$$SHOWRKV(DATK)_"</td>",!
   .W "<td >"_$$^%W1DICT("POSNUMBER")_"&nbsp;&nbsp;"_$$SHOWRKV($$^W4MYDVN)_"</td>",!
  W "</tr>",!
  ;
LINE3 ;
  I $$DLVCSR D
  .W "<tr>"
  .W " <td colspan=""2"">"_$$^%W1DICT("ZMANK")_"</td>",!
  .W " <td colspan=""2"" dir=""LTR"" "_$$^%W1ALIGN_" >"_$$SHOWRKV(ZMANK)_"</td>",!
  .I '$$DLVWEB^W4DLVCSR D
  ..W " <td>&nbsp;</td>",!
  ..W " <td colspan=""4"">"_$$SHOWRKV($G(HRAED),"H")_"</td>",!
  .I $$DLVWEB^W4DLVCSR D
  ..W " <td colspan=""2"">"_$$SHOWRKV($G(HRAED),"H")_"</td>",!
  .I $G(HB) D  ; -- HESHB
  ..W "<td>"_$$^%W1DICT("INVOICE")_"&nbsp;&nbsp;"_$$SHOWRKV(HB)_"</td>",!
  .I '$G(HB) W "<td>&nbsp;</td>",!
  .I $$DLVWEB^W4DLVCSR D
  ..W " <td colspan=""2"">"_$$^%W1DICT("SEARCHNAMEORCODE")
  ..W " <input type=""text"" id=""srcid"" name=""SRCH"" size=""12"" onFocus=""Select('srcid')"" onKeyPress=""KeyPress(this.value)"" /></td>",!
  ..W " <td>" D ROUNDBUT^%W1JS("rbtsubmhip",$$^%W1DICT("SEARCH"),"ClickSrch()",$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_";color:black") W "</td>",!
  .W "</tr>",!
  ;
  N MZMNM S MZMNM=$$MZMNM^W4HZMST(HZM)
  N LL S LL=$$LL^W4HZMST(HZM)
  ;
  I LL!(MZMNM'="") D
  .W "<tr>"
  . W "<td>"_$$^%W1DICT("KINDOFORDER")_"</td>"
  . W "<td>"_$S(LL=1:$$SHOWRKV($$^%W1DICT("STAY")),LL=2:$$^%W1DICT("TAKE"),1:"&nbsp;")_"</td>"
  . W "<td>"_$$^%W1DICT("MAZMIN")_"</td>"
  . W "<td colspan=""2"">"_$$SHOWRKV($$H2U^%L1FRM(MZMNM))_"</td>"
  .W "</tr>",!
  Q  ;
  ;
HDSMALL ;
  W "<tr>"
   W "<td width=""14%"">"_$$^W4DICTBL_"</td>"
   W "<td width=""11%"">&nbsp;"_$$SHOWRKV(NMB)_"</td>",!
   ;
   W "<td width=""13%"">"_$$^W4WAITER_"</td>"
   W "<td width=""32%"">"_$$SHOWRKV(MLZR1,"H")_"</td>",!
   W "<td width=""18%"">"_$$^%W1DICT("GUESTS")_"</td>"
   W "<td id=""soadid"">&nbsp;"_$$SHOWRKV(SOAD,"E")_"</td>",!
  W "</tr>",!
  Q
  ;
CHKPAYCA(HZM) ;
 I $$CODTS^W4HZMST(HZM)=3,'$$CA^W4HZMST(HZM),$G(@$$^W4ORD@(HZM,"CREDCARD")) D
 .W "<tr><td colspan=""8"" "
 . W "style=""text-align:center;color:red;font-size:"_$$^W3FSZ(14)_""">"
 . W $$^%W1DICT("CREDITPAYMENTFAULT")
 . N OU S OU=$G(@$$^W4ORD@(HZM,"CB","V",1,"STROU"))
 . N STA,STA1 S STA=$E(OU,1,3),STA1=""
 . I STA D
 .. S STA1=$G(@$$^W4GL("KOD")@(+STA))
 .. W "&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("ERROR")_" : "_$$H2U^%L1FRM(STA1)
 Q

W4HDHMK
W4HDHMK(PRM) ; [ 11.06.23 19:23 ] [ 09.10.18 12:22 ] [ 30.01.14 11:05 ] 
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4HDHMK","PRM=PRM")
 S NUMBER=+$P(PRM,";")
 S CODDOC=$P(PRM,";",2)
 S ETEK='$P(PRM,";",3)
 S WHO=$P(PRM,";",4)
 ;
 D PUT^%W3DEB("W4HDHMK","PRM=PRM")
 ;
 D ^W4HSBGET(NUMBER,CODDOC,WHO)
 ;
 I '$D(W4HSB("LKH")),$D(W4HSB("SPK")) S W4HSB("LKH")=W4HSB("SPK")
 S STRING=$G(W4HSB("LKH")) I 'STRING Q "CUSTOMERNOTDEFINED"
 ;
 D KOT^W4KOTHSB ;
 ;
 D GETKOT^W4KOTHSB(STRING,NUMBER,CODDOC)
 D DOPKOT^W4KOTHSB(STRING)
 ;
M K %SCV
 ;
 I 'ETEK D
 .I $$HMK^W4PCHMK(CODDOC,NUMBER)=1 D
 ..S $P(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER),"\",7)=$ZD($H,"DD.MM.YY 24:60")
 .I $G(TZ),'$$TZ^W4L(STRING) D PUT^W4L(STRING,TZ,"TZ")
 ;
 S %SCV("SCRN")="HMK"
 I STRING=$$LKHDFLT^W4LKHCSR,CODDOC="HMK" S %SCV("SCRN")="HMKDFLT"
 ;
 S %SCV("SC")=1,%SCV="V"
 ;
 S %SCV("MS1",3)=NUMBER
 ;
 S %SCV("MS1",1)="dlaw/qn zipeayg"
 S CODDOC=$$CODDOC^W4KOTHSB(CODDOC)
 I CODDOC="TM" S %SCV("MS1",1)="gelyn zcerz"
 I CODDOC="H" S %SCV("MS1",1)="qn zipeayg"
 I CODDOC="TZ" S %SCV("MS1",1)="iekif qn zipeayg"
 I CODDOC="HZ" S %SCV("MS1",1)="dpnfd"
 ;
 S %SCV("MS1",2)=MYKTV
 S %SCV("MS1",4)=$$PCNAME(MYNAME)
 S %SCV("MS1",5)=$ZD($H,"DD.MM.YY  24:60")
 S %SCV("MS1",6)=$G(W4HSB("ISSUETIME"))
 S %SCV("MS1",7)=STRING
 S %SCV("MS1",8)=LKHNAME
 ;
 S SIGN=1
 ;
 S LMAM=$G(W4HSB("LMAM"))*SIGN
 S MAM=$G(W4HSB("MAM"))*SIGN
 S TOT=$G(W4HSB("TOT"))*SIGN
 ;
 S %SCV("MS1",71)=MYTEL
 S %SCV("MS1",74)=$$FUNC^%UCASE(MYEMAIL)
 S %SCV("MS1",76)=$$FUNC^%UCASE(MYSITE)
 S %SCV("MS1",77)=MYESEK
 ;
 S %SCV("MS1",73)=LKHKTV
 S %SCV("MS1",75)=LKHTEL
 ;
 S %SCV("MS1",79)=""
 I ETEK S %SCV("MS1",79)=$G(W4HSB("ISSUETIME"))_" : xewn zwtd onf"
 I 'ETEK S %SCV("MS1",78)="xewn"
 E  S %SCV("MS1",78)=" wzrd"
 ;
 D SCH^W4SCV
 ;
 Q 1
 ;
FOOT(NUMBER) ;
 S CODDOC="HMK"
 ;
 D ^W4HSBGET(NUMBER,CODDOC)
 S LMAM=$G(W4HSB("LMAM"))
 S MAM=$G(W4HSB("MAM"))
 S TOT=$G(W4HSB("TOT"))
 ;
 S NOM=$$NOM^W4DOC(+NUMBER_"HMK")
 D TOT^W4DOC(NOM)
 ;
 S %SCV("MS1",11)=DISCPRC
 S %SCV("MS1",12)=$J(DISCA,2,2)
 S %SCV("MS1",13)=$J(DISCNIS,2,2)
 S %SCV("MS1",14)=$J(DMSH,2,2)
 ;
 S %SCV("MS1",15)=$J(IGUL,2,2)
 S %SCV("MS1",16)=$J(LMAM,2,2)
 S %SCV("MS1",18)=$J(MAM,2,2)
 S %SCV("MS1",19)=$J(TOT,2,2)
 ;
 S %SCV("SCRN")="HMKFOOT"
 S %SCV("SC")=1,%SCV="V"
 ;
 D SCH^W4SCV
 Q
 ;
PCNAME(MYNAME) ;
 S MYNAME=$$SPA^%L1FRM(MYNAME)
 ;;I $L(MYNAME)<20 Q "<B>"_$$CENTRB^%L1FRM(MYNAME,20)_"<N>"
 I $L(MYNAME)<20 Q "<B>"_MYNAME_$J("",(33-($L(MYNAME))\2))_"<N>"
 Q $$CENTR^%L1FRM(MYNAME,40)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HFK
W4HFK(DTHFK,NOMHFK) ; [ 23.02.24 08:28 ] [ 15.05.22 16:50 ] [ 26.06.17 12:12 ] 
 N (JB,%ARG,%REM,DTHFK,NOMHFK)
 D DAYBACK
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 N HD S HD=""
 I $G(%ARG("NOMHFK"))>-1 S HD="DEPOSITIONPREPARATION"
 I $G(%ARG("NOMHFK"))=-1&$G(%ARG("VIEW")) S HD="CHECKCLOSINGLIST"
 I $G(%ARG("NOMHFK"))=-1&(+$G(%ARG("VIEW"))=0) S HD="CHECKPOWERCLOSING"
 D ^%W1HD(HD)
 ;
 S VIEW=0
 I $$VIEW S VIEW=1
 ;
 I NOMHFK D
 .I NOMHFK<0 S DTHFK=+$H Q
 .S DTHFK=$$DTHFK(NOMHFK)
 ;
 I $G(VIEW) D KOTVIEW(NOMHFK)
 ;
 I '$G(VIEW) D KOTEDIT
 ;
 W "<br>",!
 W "<br>",!
 ;
 D CHECKLIST
 ;
 W "</div>",!
 ;
 W "<br />",!
 ;
 D DIVBUT
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
 ;
CHECKLIST ;
 D CHBANK
 N TOT,TOTSIGN I '$G(VIEW) D GETTMP
 ;
 I '$G(VIEW) D
 .W "<table border=""0""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 .W "  <tr>",!
 .S TOT=$J($$TOT(0),2,2),TOTSIGN=$J($$TOT(1),2,2)
 .W "  <td width=""18%""><b>"_$$^%W1DICT("TOTALCHECKS")_" : </b></td>",!
 .W "  <td id=""tot"" "_$$STYLEBLACK_" >"_TOT_"</td>",!
 .W "  <td width=""16%""><b>"_$$^%W1DICT("TOTALINDEPOSITION")_" : </b></td>",!
 .W "  <td id=""totsign"" "_$$STYLEBLACK_">"_TOTSIGN_"</td>",!
 .W "  <td width=""10%""><b>"_$$^%W1DICT("BALANCE")_" : </b></td>",!
 .W "  <td id=""itra"" "_$$STYLEBLACK_" >"_$J(TOT-TOTSIGN,2,2)_"</td>",!
 .W "</tr>",!
 .W "</table>",!
 .;
 .W "<br />",!
 ;
 I $G(VIEW) D
 .W "<table width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 .W "  <tr><td colspan=""8"">"
 . W $$^%W1DICT("CASH")_" "_$$RKV($J($$CASH(NOMHFK,DTHFK),2,2))
 .W "</td></tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 W "<table id=""TblChecks"" border=""1""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 D KOT
 ;
 S SHHB=0
 ;
 N RLIST S RLIST=0
 ;
 I '$G(VIEW) D
 .N N,A
 .F I=1:1 Q:'$D(@TMPHFK@(I))  D
 ..S A=$G(^(I))
 ..W "<tr "
 ..W " >",!
 ..W " <td >&nbsp;&nbsp;"_$$SUGDOCTMP1(A)_"</td>"
 ..W " <td "
 .. W " style=""cursor:pointer"" "
 .. W " onClick=""ShowDoc('"_$$SUGDOCTMP(A)_"','"_$$NMBDOCTMP(A)_"')"" "
 .. W ">&nbsp;&nbsp;"_$$NMBDOCTMP(A)_"</td>"
 ..W " <td >&nbsp;&nbsp;"_$$HESHTMP(A)_"</td>"
 ..W " <td >&nbsp;&nbsp;"_$$BANKTMP(A)_"</td>",!
 ..W " <td >&nbsp;&nbsp;"_$$SNIFTMP(A)_"</td>",!
 ..W " <td >&nbsp;&nbsp;"_$$NCHECKTMP(A)_"</td>",!
 ..W " <td >&nbsp;&nbsp;"_$$^%L1DC($$DATPTMP(A),1)_"</td>",!
 ..W " <td id=""chs"_I_""" >&nbsp;"_$J($$SUMTMP(A),2,2)_"</td>",!
 ..S CHECKED="" I $$SIGNEDTMP(A) S CHECKED=" checked=""checked"" "
 ..W " <td align=""center"" >"
 ..W "  <input type=""checkbox"" id=""chkbox"_I_""" "
 ..  W CHECKED_" onClick=""ClickChkBox(this,'"_I_"')"" >"
 ..W " </td>"
 ..W "</tr>",!
 ;
 I $G(VIEW) D
 .N N,A,TOT S TOT=0,RLIST=35,I=0,NPG=1
 .S DATP="" F  S DATP=$O(@CHBANK@(NOMHFK,DATP)) Q:DATP=""  D
 ..S BANK="" F  S BANK=$O(@CHBANK@(NOMHFK,DATP,BANK)) Q:BANK=""  D
 ...S SNIF="" F  S SNIF=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF)) Q:SNIF=""  D
 ....S NCHECK="" F  S NCHECK=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF,NCHECK)) Q:NCHECK=""  I NCHECK D
 .....S A=$G(^(NCHECK))
 .....S I=I+1 I $$PRINT,RLIST,I>RLIST D NEWPAGE S I=0
 .....W "<tr "
 .....W " >",!
 .....I '$$PRINT D
 ......W " <td "
 ...... W " style=""cursor:pointer"" "
 ...... W " onClick=""ShowDoc('"_$$SUGDOC(A)_"','"_$$NMBDOC(A)_"')"" "
 ......W ">&nbsp;&nbsp;"_$$SUGDOC1(A)_"</td>"
 ......W " <td "
 ......D SHOWDOC(A)
 ...... W ">&nbsp;&nbsp;"_$$NMBDOC(A)_"</td>"
 .....I $$PRINT'=1 D
 ......W " <td >&nbsp;&nbsp;"_$$LKH(A)_"</td>"
 ......W " <td >&nbsp;&nbsp;"_$$H2U^%L1FRM($$LKHNM(A))_"</td>"
 .....W " <td >&nbsp;&nbsp;"_$$HESH(A)_"</td>"
 .....W " <td >&nbsp;&nbsp;"_BANK_"</td>",!
 .....W " <td >&nbsp;&nbsp;"_SNIF_"</td>",!
 .....W " <td >&nbsp;&nbsp;"_NCHECK_"</td>",!
 .....W " <td >&nbsp;&nbsp;"_$$^%L1DC(DATP,1)_"</td>",!
 .....W " <td >&nbsp;"_$J($$SUM(A),2,2)_"</td>",!
 .....S TOT=TOT+$$SUM(A)
 .....W "</tr>",!
 .
 .N COLS S COLS=9 I $$PRINT S COLS=$S($$PRINT=1:5,1:7)
 .W "<tr style=""background-color:yellow;font-weight:bold"">"
 . W "<td colspan="""_COLS_""" "_$$INV^%W1ALIGN_" >"
 .  W $$NBSP^%L1FRM(5)_$$^%W1DICT("TOTAL")_$$NBSP^%L1FRM(5)
 . W "</td>"
 . W "<td>"
 .  W " "_$J(TOT,2,2)_" "
 . W "</td>"
 .W "</tr>"
 ;
 W " </table>",!
 Q
 ;
 ;
SPAN(STAM) ;
 Q " <span style=""color:black"""
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold;text-align:right"""
 ;
TOT(SIGN) ;
 N A
 D TMPHFK N N,SUM S SUM=0
 S N="" F  S N=$O(@TMPHFK@(N)) Q:N=""  D
 .S A=$G(^(N)) I $G(SIGN),'$$SIGNEDTMP(A) Q
 .S SUM=SUM+$$SUMTMP(A)
 Q SUM
 ;
 ;
PUT(PRM) ;
 N A,STRING,LKH,NOMHFK,I,K,BANK,SNIF,NCHECK,DATP
 D PUT^%W3DEB("W4HFK-PUT","PRM=PRM")
 ;
 D CHBA,CHBANK,TMPHFK
 N NOMHFK S NOMHFK=$P(PRM,";")
 N DT S DT=$P(PRM,";",2)
 N MYACNT S MYACNT=$P(PRM,";",3) I MYACNT="" Q "0;NOTMYACCOUNT"
 N CASH S CASH=$P(PRM,";",4)
 N EDIT S EDIT=$P(PRM,";",5)
 S LHD=5
 ;
 I 'NOMHFK S NOMHFK=$O(@CHBANK@(999999),-1)+1
 ;
 N MYBANK,MYSNIF,MYHESH,MYDETAILS
 ;
 ;
 S MYDETAILS=$G(@$$^W4GL("W4ACNT")@(MYACNT))
 S MYBANK=$P(MYDETAILS,"\")
 S MYBANKNM=$P(MYDETAILS,"\",2)
 S MYSNIF=$P(MYDETAILS,"\",3)
 S MYHESH=$P(MYDETAILS,"\",4)
 ;
 N SHC,SCH S SHC=0,SCH=0
 ;
 I NOMHFK>0!EDIT D
 .N CHK
 .S DATP="" F  S DATP=$O(@CHBANK@(NOMHFK,DATP)) Q:DATP=""  D
 ..S BANK="" F  S BANK=$O(@CHBANK@(NOMHFK,DATP,BANK)) Q:BANK=""  D
 ...S SNIF="" F  S SNIF=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF)) Q:SNIF=""  D
 ....S CHECK="" F  S CHECK=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF,CHECK)) Q:CHECK=""  D
 .....S $P(@CHBA@(DATP,BANK,SNIF,CHECK),"\",10)=""
 .K @CHBANK@(NOMHFK)
 ;
 F K=LHD+1:1:$L(PRM,";") D
 .N I
 .S I=$P(PRM,";",K) Q:'I
 .S A=$G(@TMPHFK@(I))
 .S BANK=$$BANKTMP(A) Q:BANK=""
 .S SNIF=$$SNIFTMP(A) Q:SNIF=""
 .S NCHECK=$$NCHECKTMP(A) Q:'NCHECK
 .S DATP=$$DATPTMP(A) Q:'DATP
 .S SHC=SHC+1
 .S SCH=SCH+$$SUMTMP(A)
 .S @CHBANK@(NOMHFK,DATP,BANK,SNIF,NCHECK)=$P(A,"\",5,255)
 .S $P(@CHBA@(DATP,BANK,SNIF,NCHECK),"\",10)=NOMHFK
 ;
 S @CHBANK@(NOMHFK)=$ZD(DT,"DD.MM.YY")_"\"_$ZD($H,"DD.MM.YY  24:60")
 S @CHBANK@(NOMHFK)=@CHBANK@(NOMHFK)_"\"_MYACNT_"\"_MYBANK_"\"_MYBANKNM
 S @CHBANK@(NOMHFK)=@CHBANK@(NOMHFK)_"\"_MYSNIF_"\"_MYHESH
 S @CHBANK@(NOMHFK)=@CHBANK@(NOMHFK)_"\"_CASH_"\"_SHC_"\"_SCH
 ;
 D ^%S2GLSV(CHBANK_"("""_NOMHFK_""")",$$^W4FGIB)
 L  ;
 Q NOMHFK
 ;
 ;
TRSTYLE ;
 Q
 ;
CLRHFK(NOMHFK) ;
 Q
 ;
VIEW(STAM) ;
 I $$PRINT Q 1
 I $G(%ARG("VIEW")) Q 1
 I $G(NOMHFK)>0,'$$EDIT Q 1
 Q 0
 ;
PRINT(STAM) ;
 Q +$G(%ARG("PRINT"))
 ;
TMPHFK ;
 S TMPHFK=$$^W4MAIN("TMPHFK")
 Q
 ;
GETTMP ;
 D CHBA,CHBANK,TMPHFK K @TMPHFK
 N I S I=0
 S DATP="" F  S DATP=$O(@CHBA@(DATP)) Q:DATP=""  I $$^%L1DC(DATP,4)'>DTHFK  D GETD(DATP)
 Q
 ;
GETD(DATP) ;
 D CHBA
 D TMPHFK
 S BANK="" F  S BANK=$O(@CHBA@(DATP,BANK)) Q:BANK=""  D
 .S SNIF="" F  S SNIF=$O(@CHBA@(DATP,BANK,SNIF)) Q:SNIF=""  D
 ..S NCHECK="" F  S NCHECK=$O(@CHBA@(DATP,BANK,SNIF,NCHECK)) Q:NCHECK=""  I NCHECK D
 ...S A=$G(^(NCHECK)) Q:A=""
 ...I $P(A,"\",10),$P(A,"\",10)'=NOMHFK Q
 ...I NOMHFK=-1,$P(A,"\",10),'$G(%ARG("VIEW")),'$G(%ARG("EDIT")) Q
 ...S I=I+1
 ...S @TMPHFK@(I)=DATP_"\"_BANK_"\"_SNIF_"\"_NCHECK_"\"_A
 ...I '$G(NOMHFK) D PUTSIGN(I_";"_1)
 ...I $G(NOMHFK),$D(@CHBANK@(NOMHFK,DATP,BANK,SNIF,NCHECK)) D
 ....D PUTSIGN(I_";"_1)
 Q
 ;
PUTSIGN(PRM) ;
 N I,SIGN
 S I=$P(PRM,";")
 S SIGN=$P(PRM,";",2)
 N TMPHFK D TMPHFK
 S $P(@TMPHFK@(I),"\",$$POSSIGN)=SIGN
 Q
 ;
DATPTMP(A) ;
 Q $P(A,"\")
 ;
BANKTMP(A) ;
 Q $P(A,"\",2)
 ;
SNIFTMP(A) ;
 Q $P(A,"\",3)
 ;
NCHECKTMP(A) ;
 Q $P(A,"\",4)
 ;
SUMTMP(A) ;
 Q $P(A,"\",5)
 ;
DATTMP(A) ;
 Q $P(A,"\",6)
 ;
HESHTMP(A) ;
 Q $P(A,"\",7)
 ;
SUGDOCTMP(A) ;
 N SD S SD=$TR($P(A,"\",13),"0123456789","")
 Q SD
 ;
SUGDOCTMP1(A) ;
 N SD S SD=$$SUGDOCTMP(A)
 I SD="" Q $$^%W1DICT("ORDER")
 I SD="CB" Q $$^%W1DICT("RECEIPT")
 I SD="HMK" Q $$^%W1DICT("INVCRCP")
 Q ""
 ;
NMBDOCTMP(A) ;
 Q +$P(A,"\",13)
 ;
POSSIGN(STAM)
 Q 15
 ;
SIGNEDTMP(A) ;
 Q $P(A,"\",$$POSSIGN)
 ;
SUM(A) ;
 Q $P(A,"\")
 ;
DAT(A) ;
 Q $P(A,"\",2)
 ;
HESH(A) ;
 Q $P(A,"\",3)
 ;
NMBDOC(A) ;
 Q +$P(A,"\",9)
 ;
SUGDOC(A) ;
 N SD S SD=$TR($P(A,"\",9),"0123456789","")
 Q SD
 ;
SUGDOC1(A) ;
 N SD S SD=$$SUGDOC(A)
 I SD="" Q $$^%W1DICT("ORDER")
 I SD="CB" Q $$^%W1DICT("RECEIPT")
 I SD="HMK" Q $$^%W1DICT("INVCRCP")
 Q ""
 ;
LKH(A) ;
 N NMBDOC S NMBDOC=$$NMBDOC(A) I NMBDOC="" Q ""
 N SD S SD=$$SUGDOC(A)
 I SD="" Q $$LKHN^W4HZMST(NMBDOC)
 N LKH S LKH=$$LK^W4STRING("CB",+NMBDOC)
 Q LKH
 ;
LKHNM(A) ; 
 N NMBDOC S NMBDOC=$$NMBDOC(A) I NMBDOC="" Q ""
 N LKHNM 
 N LK S LK=$$LKH(A) I LK="" Q ""
 N SD S SD=$$SUGDOC(A)
 I SD="" S LKHNM=$$LKHNM^W4HZMST(NMBDOC) I LKHNM="" Q $$LKH^W4L(LK)
 I SD'="CB" Q ""
 S LKHNM=$$LKHNAME^W4CBGET(LK,NMBDOC)
 Q LKHNM
 ;
CHBA ;
 S CHBA=$$^W4GL("CHBA")
 Q
 ;
CHBANK ;
 S CHBANK=$$^W4GL("CHBANK")
 Q
 ;
RKV(RKV) ;
 Q "<span style=""font-weight:bold"">"_RKV_"</span>"
 ;
MYNOMACNT(NOM) ;
 Q $$NOMACN^W4HFKLS(NOM) ;
 ;
MYBANK(NOM) ;
 Q $$BANK^W4HFKLS(NOM) ;
 ;
MYBANKNM(NOM) ;
 Q $$H2U^%L1FRM($$BANKNM^W4HFKLS(NOM)) ;
 ;
MYSNIF(NOM) ;
 Q $$SNIF^W4HFKLS(NOM) ;
 ;
MYHESH(NOM) ;
 Q $$ACCOUNT^W4HFKLS(NOM) ;
 ;
DATHFK(NOMHFK) ;
 D CHBANK
 Q $P($G(@CHBANK@(NOMHFK)),"\")
 ;
DTHFK(NOMHFK) ;
 Q $$^%L1DC($$DATHFK(NOMHFK),3)
 ;
CASH(NOMHFK,DT1) ;
 I $G(NOMHFK) Q $$CASH^W4HFKLS(NOMHFK) ;
 I '$G(DAYBACK) D DAYBACK
 ;
 N CASH S CASH=0
 N CHBANK D CHBANK
 ;
 I '$$EDIT D
 .;;N LDT S LDT=$$LLDT I 'LDT S LDT=$$LDT I 'LDT S DT0=$$^W4DZ-1 Q
 .N LDT S LDT=$$LDT I 'LDT S DT0=$$^W4DZ-1 Q
 .I LDT S DT0=LDT+1
 .I DT0<($H-DAYBACK) S DT0=$H-DAYBACK
 ;
 I $$EDIT D
 .N LDT S LDT=$$LLDT I 'LDT S LDT=$$LDT
 .I LDT S DT0=LDT+1
 .I DT0<($H-DAYBACK) S DT0=$H-DAYBACK
 ;
 I '$$^W4LKH,'$D(@$$^W4GL("Z")@(DT1)) S DT1=DT1-1 ; -- 20/11/16
 ;
 I $$GLTOT["TOT",'NOMHFK D ^W4SUMDAT(DT0,DT1,JB)
 ;
 N DT,C F DT=DT0:1:DT1 D
 .S DAT=$ZD(DT,"YYMMDD")
 .N GLTOT S GLTOT=$$GLTOT
 .I $$Z D
 ..N N S N="" F  S N=$O(@GLTOT@(DAT,N)) Q:N=""  D
 ...S C=$G(@GLTOT@(DAT,N,"F",1))+$G(@GLTOT@(DAT,N,"FD",1))
 ...S CASH=CASH+C
 .I '$$Z D
 ..S C=$G(@GLTOT@(DAT,"F",1))+$G(@GLTOT@(DAT,"FD",1))
 ..S CASH=CASH+C
 ;
 N LI S LI=$O(@CHBANK@(999999),-1)
 ;;I LI D
 .N NFK F NFK=LI-10:1:LI D
 ..N A S A=$G(@CHBANK@(NFK))
 ..N DTFK S DTFK=$$^%L1DC($P(A,"\"),3)
 ..I DTFK'<DT0,DTFK'>DT1 D
 ...S CASH=CASH-$$CASH^W4HFKLS(NFK) ;
 ...I CASH<0 S CASH=0
 ;
 Q CASH
 ;
 ;
LDT(STAM) ;
 N CHBANK D CHBANK
 N LI S LI=$O(@CHBANK@(999999),-1) I 'LI Q ""
 N A S A=$G(^(LI))
 N DT0
 S DT0=$$^%L1DC($P(A,"\"),3)
 N DATHF S DATHF=$P(A,"\",2)
 N TIM S TIM=$P(DATHF,"  ",2)
 I $P(A,"\")=$P(DATHF,"  "),TIM<12 S DT0=DT0-1
 Q DT0
 ;
LLDT(STAM) ;
 N CHBANK D CHBANK
 N LI S LI=$O(@CHBANK@(999999),-1) I 'LI Q ""
 S LI=$O(@CHBANK@(LI),-1) I 'LI Q ""
 N A S A=$G(^(LI))
 N DT0
 S DT0=$$^%L1DC($P(A,"\"),3)
 Q DT0
 ;
SHOWDOC(A) ;
 W " style=""cursor:pointer"" "
 W " onClick=""ShowDoc('"_$$SUGDOC(A)_"','"_$$NMBDOC(A)_"')"" "
 Q
 ;
 ;
KOTVIEW(NOMHFK) ;
 W "<br>",!
 I NOMHFK>-1 D
 .D FIND
 .W $$NBSP^%L1FRM(5)
 .W "<span dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ_""">"
 . W $$^%W1DICT("DEPOSITIONNUMBER",NOMHFK_"<>"_$ZD(DTHFK,"DD.MM.YY"))
 .W "</span>",!
 ;
 W "<br><br>"
 W $$^%W1DICT("BANK")_" "_$$RKV($$MYBANKNM(NOMHFK))_"&nbsp;&nbsp;"
 W $$^%W1DICT("SNIF")_" "_$$RKV($$MYSNIF(NOMHFK))_"&nbsp;&nbsp;"
 W $$^%W1DICT("ACCOUNT")_" "_$$RKV($$MYHESH(NOMHFK))_"&nbsp;&nbsp;"
 Q
 ;
 ;
KOTEDIT ;
 W "<br>",!
 D FIND W $$NBSP^%L1FRM(5)
 W "<span dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ_""">"
  W $$^%W1DICT("DEPOSITIONDATE")_" "_$ZD(DTHFK,"DD.MM.YY")
 W "</span>",!
 ;
 W "<table dir="""_$$^%W1DIR_""">"
  W "<tr>"
   W "<td colspan=""3"" dir="""_$$^%W1DIR_""" "
    W " style=""text-align:center;color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
     W $$^%W1DICT("SIGNCHECKS4DEPOSITION")
   W "</td>"
  W "</tr>"
  ;
  D LINE
  ;
  W "<tr>"
  N N S N="",I=0 F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  S I=I+1
   W "<td>"
   W $$^%W1DICT("MYACCOUNT")_"&nbsp;&nbsp;"
   W " <select id=""myaccount"">",!
   I I>1 D
   . W " <option value=""0"" >"_$$^%W1DICT("CHOICEACCOUNT")_"</option>",!
  ;
   S N="" F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  D
   . S A=$G(^(N))
   . W " <option value="""_N_""" "
   .  I $G(NOMHFK),N=$$MYNOMACNT(N) W " selected=""selected"" "
   . W " >"
   .  W $$^%W1DICT("BANK")_" "_$$RKV($$H2U^%L1FRM($P(A,"\",2)))_"&nbsp;&nbsp;"
   .  W $$^%W1DICT("SNIF")_" "_$$RKV($P(A,"\",3))_"&nbsp;&nbsp;"
   .  W $$^%W1DICT("ACCOUNT")_" "_$$RKV($P(A,"\",4))
   . W " </option>",!
   W " </select>",!
   W "</td>",!
   ;
   W "<td>"
    W $$^%W1DICT("CASHCSR")_"&nbsp;"
    W $$RKV($J($$CASH(0,DTHFK),2,2))
   W "</td>",!
   ;
   W "<td>"
    W $$^%W1DICT("CASHINDEPOSITION")_"&nbsp;"
    W "<input type=""text"" id=""cash"" size=""7"" maxlength=""8"" "
    W " value="""_$J($$CASH(NOMHFK,DTHFK),2,2)_""" onClick=""this.select()"" />"
   W "</td>",!
   ;
  W "</tr>",!
  W "</table>",!
  Q
  ;
  ;
DIVBUT ;
 W "<div id=""divbut"" align=""center"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 W "<tr>",!
  I $$PRINT G BACK
  W " <td>",!
   I '$G(VIEW) D
   . D ^W4BUTTON("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_+$G(NOMHFK)_"','"_DTHFK_"')","color:green")
   ;
   I $G(VIEW) D
   . I $$LASTHFK(NOMHFK)!(NOMHFK<0) D
   ..  D ^W4BUTTON("Edit",$$^%W1DICT("EDIT"),"Edit('"_NOMHFK_"')","color:blue")
   .. W "</td>"
   .. W "<td>"
   .
   . D ^W4BUTTON("Print",$$^%W1DICT("PRINT2DEPOSIT"),"Print('1')","color:green")
   .
   .W "</td>",!
   .W "<td>&nbsp;</td>",!
   .W "<td>"
   . D ^W4BUTTON("Print1",$$^%W1DICT("PRINT2BOOKKEEPING"),"Print('2')","color:blue")
   .W "</td>",!
   ;
   W "</td>",!
   W "<td>&nbsp;</td>",!
BACK ;
   W "<td align=""center"">",!
    D ^W4BUTTON("Back",$$^%W1DICT("BACK"),"Back()","color:red")
   W " </td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
LASTHFK(NOM) ;
 D CHBANK
 I $O(@CHBANK@(NOM))="" Q 1
 Q 0
 ;
EDIT(STAM) ;
 I $G(%ARG("EDIT")) Q 1
 Q 0
 ;
GLTOT(STAM) ;
 Q $$GLTOT^W4HFKLS
 ;
DAYBACK ;
 D DAYBACK^W4HFKLS
 Q
 ;
Z(STAM) ;
 Q $$Z^W4HFKLS
 ;
KOT ; 
 W "<tr>"
 I '$$PRINT D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("KINDORIGDOC")
 .W "   </th>",!
 .W "   <th>",!
 .W "    "_$$^%W1DICT("ORIGDOCNUMBER")
 .W "   </th>",!
 ;
 I $$PRINT'=1,VIEW D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("CUSTOMNUMBER")
 .W "   </th>",!
 .W "   <th>",!
 .W "    "_$$^%W1DICT("CUSTOMNAME")
 .W "   </th>",!
 ;
 W "   <th>",!
 W "    "_$$^%W1DICT("ACCOUNT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("BANK")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SNIF")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CHECKNUMBER")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 I '$G(VIEW) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("SIGN")
 .W "   </th>",!
 W "  </tr>",!
 Q
 ;
NEWPAGE ; 
 W "</table>",!
 D PGBREAK^W3HZGLK
 S NPG=NPG+1,RLIST=40
 W "<span "_$$INV^%W1ALIGN_">" W $$^%W1DICT("PAGE")_" "_NPG W "</span>",!
 W "<table border=""1""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 D KOT
 Q
 ;
FIND ; 
 W "<img id=""findid"" src=""w4find.png"" alt=""Find"" onClick=""BOSearch('','','1')"" style=""cursor:pointer"" />",!
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HFK0
W4HFK(DTHFK,NOMHFK) ; [ 18.10.16 08:41 ] [ 28.09.16 18:25 ] [ 27.09.16 18:48 ] 
 N (JB,%ARG,%REM,DTHFK,NOMHFK)
 D DAYBACK
 W "<div align=""center"">",!
 I $$VIEW S VIEW=1
 I NOMHFK D
 .I NOMHFK<0 S DTHFK=+$H Q
 .S DTHFK=$$DTHFK(NOMHFK)
 ;
 I $G(VIEW) D KOTVIEW(NOMHFK)
 ;
 I '$G(VIEW) D KOTEDIT
 ;
 W "<br>",!
 W "<br>",!
 ;
 D CHECKLIST
 ;
 W "</div>",!
 ;
 W "<br />",!
 ;
 I '$$PRINT D DIVBUT
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
 ;
CHECKLIST ;
 D CHBANK
 N TOT,TOTSIGN I '$G(VIEW) D GETTMP
 ;
 I '$G(VIEW) D
 .W "<table border=""0""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 .W "  <tr>",!
 .S TOT=$J($$TOT(0),2,2),TOTSIGN=$J($$TOT(1),2,2)
 .W "  <td width=""18%""><b>"_$$^%W1DICT("TOTALCHECKS")_" : </b></td>",!
 .W "  <td id=""tot"" "_$$STYLEBLACK_" >"_TOT_"</td>",!
 .W "  <td width=""16%""><b>"_$$^%W1DICT("TOTALINDEPOSITION")_" : </b></td>",!
 .W "  <td id=""totsign"" "_$$STYLEBLACK_">"_TOTSIGN_"</td>",!
 .W "  <td width=""10%""><b>"_$$^%W1DICT("BALANCE")_" : </b></td>",!
 .W "  <td id=""itra"" "_$$STYLEBLACK_" >"_$J(TOT-TOTSIGN,2,2)_"</td>",!
 .W "</tr>",!
 .W "</table>",!
 .;
 .W "<br />",!
 ;
 I $G(VIEW) D
 .W "<table width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 .W "  <tr><td colspan=""8"">"
 . W $$^%W1DICT("CASH")_" "_$$RKV($J($$CASH(NOMHFK,DTHFK),2,2))
 .W "</td></tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 W "<table id=""TblChecks"" border=""1""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 I '$$PRINT D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("KINDORIGDOC")
 .W "   </th>",!
 .W "   <th>",!
 .W "    "_$$^%W1DICT("ORIGDOCNUMBER")
 .W "   </th>",!
 ;
 W "   <th>",!
 W "    "_$$^%W1DICT("ACCOUNT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("BANK")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SNIF")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CHECKNUMBER")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 I '$G(VIEW) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("SIGN")
 .W "   </th>",!
 W "  </tr>",!
 ;
 S SHHB=0
 ;
 I '$G(VIEW) D
 .N N,A
 .F I=1:1 Q:'$D(@TMPHFK@(I))  D
 ..S A=$G(^(I))
 ..W "<tr "
 ..W " >",!
 ..W " <td >&nbsp;&nbsp;"_$$SUGDOCTMP1(A)_"</td>"
 ..W " <td "
 .. W " style=""cursor:pointer"" "
 .. W " onClick=""ShowDoc('"_$$SUGDOCTMP(A)_"','"_$$NMBDOCTMP(A)_"')"" "
 .. W ">&nbsp;&nbsp;"_$$NMBDOCTMP(A)_"</td>"
 ..W " <td >&nbsp;&nbsp;"_$$HESHTMP(A)_"</td>"
 ..W " <td >&nbsp;&nbsp;"_$$BANKTMP(A)_"</td>",!
 ..W " <td >&nbsp;&nbsp;"_$$SNIFTMP(A)_"</td>",!
 ..W " <td >&nbsp;&nbsp;"_$$NCHECKTMP(A)_"</td>",!
 ..W " <td >&nbsp;&nbsp;"_$$^%L1DC($$DATPTMP(A),1)_"</td>",!
 ..W " <td id=""chs"_I_""" >&nbsp;"_$J($$SUMTMP(A),2,2)_"</td>",!
 ..S CHECKED="" I $$SIGNEDTMP(A) S CHECKED=" checked=""checked"" "
 ..W " <td align=""center"" >"
 ..W "  <input type=""checkbox"" id=""chkbox"_I_""" "
 ..  W CHECKED_" onClick=""ClickChkBox(this,'"_I_"')"" >"
 ..W " </td>"
 ..W "</tr>",!
 ;
 I $G(VIEW) D
 .N N,A
 .S DATP="" F  S DATP=$O(@CHBANK@(NOMHFK,DATP)) Q:DATP=""  D
 ..S BANK="" F  S BANK=$O(@CHBANK@(NOMHFK,DATP,BANK)) Q:BANK=""  D
 ...S SNIF="" F  S SNIF=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF)) Q:SNIF=""  D
 ....S NCHECK="" F  S NCHECK=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF,NCHECK)) Q:NCHECK=""  I NCHECK D
 .....S A=$G(^(NCHECK))
 .....W "<tr "
 .....W " >",!
 .....I '$$PRINT D
 ......W " <td "
 ...... W " style=""cursor:pointer"" "
 ...... W " onClick=""ShowDoc('"_$$SUGDOC(A)_"','"_$$NMBDOC(A)_"')"" "
 ......W ">&nbsp;&nbsp;"_$$SUGDOC1(A)_"</td>"
 ......W " <td "
 ......D SHOWDOC(A)
 ...... W ">&nbsp;&nbsp;"_$$NMBDOC(A)_"</td>"
 .....
 .....W " <td >&nbsp;&nbsp;"_$$HESH(A)_"</td>"
 .....W " <td >&nbsp;&nbsp;"_BANK_"</td>",!
 .....W " <td >&nbsp;&nbsp;"_SNIF_"</td>",!
 .....W " <td >&nbsp;&nbsp;"_NCHECK_"</td>",!
 .....W " <td >&nbsp;&nbsp;"_$$^%L1DC(DATP,1)_"</td>",!
 .....W " <td >&nbsp;"_$J($$SUM(A),2,2)_"</td>",!
 .....W "</tr>",!
 ;
 W " </table>",!
 Q
 ;
 ;
SPAN(STAM) ;
 Q " <span style=""color:black"""
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold;text-align:right"""
 ;
TOT(SIGN) ;
 N A
 D TMPHFK N N,SUM S SUM=0
 S N="" F  S N=$O(@TMPHFK@(N)) Q:N=""  D
 .S A=$G(^(N)) I $G(SIGN),'$$SIGNEDTMP(A) Q
 .S SUM=SUM+$$SUMTMP(A)
 Q SUM
 ;
 ;
PUT(PRM) ;
 N A,STRING,LKH,NOMHFK,I,K,BANK,SNIF,NCHECK,DATP
 D PUT^%W3DEB("W4HFK-PUT","PRM=PRM")
 ;
 D CHBA,CHBANK,TMPHFK
 N NOMHFK S NOMHFK=$P(PRM,";")
 N DT S DT=$P(PRM,";",2)
 N MYACNT S MYACNT=$P(PRM,";",3) I MYACNT="" Q "0;NOTMYACCOUNT"
 N CASH S CASH=$P(PRM,";",4)
 N EDIT S EDIT=$P(PRM,";",5)
 S LHD=5
 ;
 I 'NOMHFK S NOMHFK=$O(@CHBANK@(999999),-1)+1
 ;
 N MYBANK,MYSNIF,MYHESH,MYDETAILS
 ;
 ;
 S MYDETAILS=$G(@$$^W4GL("W4ACNT")@(MYACNT))
 S MYBANK=$P(MYDETAILS,"\")
 S MYBANKNM=$P(MYDETAILS,"\",2)
 S MYSNIF=$P(MYDETAILS,"\",3)
 S MYHESH=$P(MYDETAILS,"\",4)
 ;
 N SHC,SCH S SHC=0,SCH=0
 ;
 I NOMHFK>0!EDIT D
 .N CHK 
 .S DATP="" F  S DATP=$O(@CHBANK@(NOMHFK,DATP)) Q:DATP=""  D
 ..S BANK="" F  S BANK=$O(@CHBANK@(NOMHFK,DATP,BANK)) Q:BANK=""  D
 ...S SNIF="" F  S SNIF=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF)) Q:SNIF=""  D
 ....S CHECK="" F  S CHECK=$O(@CHBANK@(NOMHFK,DATP,BANK,SNIF,CHECK)) Q:CHECK=""  D
 .....S $P(@CHBA@(DATP,BANK,SNIF,CHECK),"\",10)=""
 .K @CHBANK@(NOMHFK)
 ;
 F K=LHD+1:1:$L(PRM,";") D
 .N I
 .S I=$P(PRM,";",K) Q:'I
 .S A=$G(@TMPHFK@(I))
 .S BANK=$$BANKTMP(A) Q:'BANK
 .S SNIF=$$SNIFTMP(A) Q:'SNIF
 .S NCHECK=$$NCHECKTMP(A) Q:'NCHECK
 .S DATP=$$DATPTMP(A) Q:'DATP
 .S SHC=SHC+1
 .S SCH=SCH+$$SUMTMP(A)
 .S @CHBANK@(NOMHFK,DATP,BANK,SNIF,NCHECK)=$P(A,"\",5,255)
 .S $P(@CHBA@(DATP,BANK,SNIF,NCHECK),"\",10)=NOMHFK
 ;
 S @CHBANK@(NOMHFK)=$ZD(DT,"DD.MM.YY")_"\"_$ZD($H,"DD.MM.YY  24:60")
 S @CHBANK@(NOMHFK)=@CHBANK@(NOMHFK)_"\"_MYACNT_"\"_MYBANK_"\"_MYBANKNM
 S @CHBANK@(NOMHFK)=@CHBANK@(NOMHFK)_"\"_MYSNIF_"\"_MYHESH
 S @CHBANK@(NOMHFK)=@CHBANK@(NOMHFK)_"\"_CASH_"\"_SHC_"\"_SCH
 ;
 D ^%S2GLSV(CHBANK_"("""_NOMHFK_""")",$$^W4FGIB)
 L  ;
 Q NOMHFK
 ;
 ;
TRSTYLE ;
 Q
 ;
CLRHFK(NOMHFK) ;
 Q
 ;
VIEW(STAM) ;
 I $$PRINT Q 1
 I $G(%ARG("VIEW")) Q 1
 I $G(NOMHFK)>0,'$$EDIT Q 1
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 Q 0
 ;
TMPHFK ;
 S TMPHFK=$$^W4MAIN("TMPHFK")
 Q
 ;
GETTMP ;
 D CHBA,CHBANK,TMPHFK K @TMPHFK
 N I S I=0
 S DATP="" F  S DATP=$O(@CHBA@(DATP)) Q:DATP=""  I $$^%L1DC(DATP,4)'>DTHFK  D GETD(DATP)
 Q
 ;
GETD(DATP) ;
 D CHBA
 D TMPHFK
 S BANK="" F  S BANK=$O(@CHBA@(DATP,BANK)) Q:BANK=""  D
 .S SNIF="" F  S SNIF=$O(@CHBA@(DATP,BANK,SNIF)) Q:SNIF=""  D
 ..S NCHECK="" F  S NCHECK=$O(@CHBA@(DATP,BANK,SNIF,NCHECK)) Q:NCHECK=""  I NCHECK D
 ...S A=$G(^(NCHECK)) Q:A=""
 ...I $P(A,"\",10),$P(A,"\",10)'=NOMHFK Q
 ...I NOMHFK=-1,$P(A,"\",10),'$G(%ARG("VIEW")),'$G(%ARG("EDIT")) Q
 ...S I=I+1
 ...S @TMPHFK@(I)=DATP_"\"_BANK_"\"_SNIF_"\"_NCHECK_"\"_A
 ...I '$G(NOMHFK) D PUTSIGN(I_";"_1)
 ...I $G(NOMHFK),$D(@CHBANK@(NOMHFK,DATP,BANK,SNIF,NCHECK)) D
 ....D PUTSIGN(I_";"_1)
 Q
 ;
PUTSIGN(PRM) ;
 N I,SIGN
 S I=$P(PRM,";")
 S SIGN=$P(PRM,";",2)
 N TMPHFK D TMPHFK
 S $P(@TMPHFK@(I),"\",$$POSSIGN)=SIGN
 Q
 ;
DATPTMP(A) ;
 Q $P(A,"\")
 ;
BANKTMP(A) ;
 Q $P(A,"\",2)
 ;
SNIFTMP(A) ;
 Q $P(A,"\",3)
 ;
NCHECKTMP(A) ;
 Q $P(A,"\",4)
 ;
SUMTMP(A) ;
 Q $P(A,"\",5)
 ;
DATTMP(A) ;
 Q $P(A,"\",6)
 ;
HESHTMP(A) ;
 Q $P(A,"\",7)
 ;
SUGDOCTMP(A) ;
 N SD S SD=$TR($P(A,"\",13),"0123456789","")
 Q SD
 ;
SUGDOCTMP1(A) ;
 N SD S SD=$$SUGDOCTMP(A)
 I SD="" Q $$^%W1DICT("ORDER")
 I SD="CB" Q $$^%W1DICT("RECEIPT")
 I SD="HMK" Q $$^%W1DICT("INVCRCP")
 Q ""
 ;
NMBDOCTMP(A) ;
 Q +$P(A,"\",13)
 ;
POSSIGN(STAM)
 Q 15
 ;
SIGNEDTMP(A) ;
 Q $P(A,"\",$$POSSIGN)
 ;
SUM(A) ;
 Q $P(A,"\")
 ;
DAT(A) ;
 Q $P(A,"\",2)
 ;
HESH(A) ;
 Q $P(A,"\",3)
 ;
NMBDOC(A) ;
 Q +$P(A,"\",9)
 ;
SUGDOC(A) ;
 N SD S SD=$TR($P(A,"\",9),"0123456789","")
 Q SD
 ;
SUGDOC1(A) ;
 N SD S SD=$$SUGDOC(A)
 I SD="" Q $$^%W1DICT("ORDER")
 I SD="CB" Q $$^%W1DICT("RECEIPT")
 I SD="HMK" Q $$^%W1DICT("INVCRCP")
 Q ""
 ;
CHBA ;
 S CHBA=$$^W4GL("CHBA")
 Q
 ;
CHBANK ;
 S CHBANK=$$^W4GL("CHBANK")
 Q
 ;
RKV(RKV) ;
 Q "<span style=""font-weight:bold"">"_RKV_"</span>"
 ;
MYNOMACNT(NOM) ;
 Q $$NOMACN^W4HFKLS(NOM) ;
 ;
MYBANK(NOM) ;
 Q $$BANK^W4HFKLS(NOM) ;
 ;
MYBANKNM(NOM) ;
 Q $$H2U^%L1FRM($$BANKNM^W4HFKLS(NOM)) ;
 ;
MYSNIF(NOM) ;
 Q $$SNIF^W4HFKLS(NOM) ;
 ;
MYHESH(NOM) ;
 Q $$ACCOUNT^W4HFKLS(NOM) ;
 ;
DATHFK(NOMHFK) ;
 D CHBANK
 Q $P($G(@CHBANK@(NOMHFK)),"\")
 ;
DTHFK(NOMHFK) ;
 Q $$^%L1DC($$DATHFK(NOMHFK),3)
 ;
CASH(NOMHFK,DT1) ;
 I $G(NOMHFK) Q $$CASH^W4HFKLS(NOMHFK) ;
 ;
 N CASH S CASH=0
 N CHBANK D CHBANK
 ;
 I '$$EDIT D
 .N LDT S LDT=$$LLDT I 'LDT S DT0=$$^W4DZ-1 Q
 .I LDT S DT0=LDT ;;+1 : *** LEV 22/09/16
 .I DT0<($H-DAYBACK) S DT0=$H-1
 ;
 I $$EDIT D
 .N LDT S LDT=$$LLDT
 .I LDT S DT0=LDT+1
 .I DT0<($H-DAYBACK) S DT0=$H-DAYBACK
 ;
 ;
 I $$GLTOT["TOT",'NOMHFK D ^W4SUMDAT(DT0,DT1,JB)
 ;
 N DT,C F DT=DT0:1:DT1 D
 .S DAT=$ZD(DT,"YYMMDD")
 .N GLTOT S GLTOT=$$GLTOT
 .I $$Z D
 ..N N S N="" F  S N=$O(@GLTOT@(DAT,N)) Q:N=""  D
 ...S C=$G(@GLTOT@(DAT,N,"F",1))+$G(@GLTOT@(DAT,N,"FD",1))
 ...S CASH=CASH+C
 .I '$$Z D
 ..S C=$G(@GLTOT@(DAT,"F",1))+$G(@GLTOT@(DAT,"FD",1))
 ..S CASH=CASH+C
 ;
 N LI S LI=$O(@CHBANK@(999999),-1)
 I LI D
 .N NFK F NFK=LI-10:1:LI D
 ..N A S A=$G(@CHBANK@(NFK))
 ..N DTFK S DTFK=$$^%L1DC($P(A,"\"),3)
 ..I DTFK'<DT0,DTFK'>DT1 D
 ...S CASH=CASH-$$CASH^W4HFKLS(NFK) ;
 ...I CASH<0 S CASH=0
 ;
 Q CASH
 ;
LDT(STAM) ;
 N CHBANK D CHBANK
 N LI S LI=$O(@CHBANK@(999999),-1) I 'LI Q ""
 N A S A=$G(^(LI))
 N DT0
 S DT0=$$^%L1DC($P(A,"\"),3)
 N DATHF S DATHF=$P(A,"\",2)
 N TIM S TIM=$P(DATHF,"  ",2)
 I $P(A,"\")=$P(DATHF,"  "),TIM<12 S DT0=DT0-1
 Q DT0
 ;
LLDT(STAM) ;
 N CHBANK D CHBANK
 N LI S LI=$O(@CHBANK@(999999),-1) I 'LI Q ""
 S LI=$O(@CHBANK@(LI),-1) I 'LI Q ""
 N A S A=$G(^(LI))
 N DT0
 S DT0=$$^%L1DC($P(A,"\"),3)
 Q DT0
 ;
SHOWDOC(A) ;
 W " style=""cursor:pointer"" "
 W " onClick=""ShowDoc('"_$$SUGDOC(A)_"','"_$$NMBDOC(A)_"')"" "
 Q
 ;
 ;
KOTVIEW(NOMHFK) ;
 W "<br>",!
 I NOMHFK>-1 D
 .W "<span dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ_""">"
 . W $$^%W1DICT("DEPOSITIONNUMBER",NOMHFK_"<>"_$ZD(DTHFK,"DD.MM.YY"))
 .W "</span>",!
 W "<br><br>"
 W $$^%W1DICT("BANK")_" "_$$RKV($$MYBANKNM(NOMHFK))_"&nbsp;&nbsp;"
 W $$^%W1DICT("SNIF")_" "_$$RKV($$MYSNIF(NOMHFK))_"&nbsp;&nbsp;"
 W $$^%W1DICT("ACCOUNT")_" "_$$RKV($$MYHESH(NOMHFK))_"&nbsp;&nbsp;"
 Q
 ;
 ;
KOTEDIT ;
 W "<br>",!
 W "<span dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ_""">"
  W $$^%W1DICT("DEPOSITIONDATE")_" "_$ZD(DTHFK,"DD.MM.YY")
 W "</span>",!
 ;
 W "<table dir="""_$$^%W1DIR_""">"
  W "<tr>"
   W "<td colspan=""3"" dir="""_$$^%W1DIR_""" "
    W " style=""text-align:center;color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
     W $$^%W1DICT("SIGNCHECKS4DEPOSITION")
   W "</td>"
  W "</tr>"
  ;
  D LINE
  ;
  W "<tr>"
  N N S N="",I=0 F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  S I=I+1
   W "<td>"
   W $$^%W1DICT("MYACCOUNT")_"&nbsp;&nbsp;"
   W " <select id=""myaccount"">",!
   I I>1 D
   . W " <option value=""0"" >"_$$^%W1DICT("CHOICEACCOUNT")_"</option>",!
  ;
   S N="" F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  D
   . S A=$G(^(N))
   . W " <option value="""_N_""" "
   .  I $G(NOMHFK),N=$$MYNOMACNT(N) W " selected=""selected"" "
   . W " >"
   .  W $$^%W1DICT("BANK")_" "_$$RKV($$H2U^%L1FRM($P(A,"\",2)))_"&nbsp;&nbsp;"
   .  W $$^%W1DICT("SNIF")_" "_$$RKV($P(A,"\",3))_"&nbsp;&nbsp;"
   .  W $$^%W1DICT("ACCOUNT")_" "_$$RKV($P(A,"\",4))
   . W " </option>",!
   W " </select>",!
   W "</td>",!
   ;
   W "<td>"
    W $$^%W1DICT("CASHCSR")_"&nbsp;"
    W $$RKV($J($$CASH(0,DTHFK),2,2))
   W "</td>",!
   ;
   W "<td>"
    W $$^%W1DICT("CASHINDEPOSITION")_"&nbsp;"
    W "<input type=""text"" id=""cash"" size=""7"" maxlength=""8"" "
    W " value="""_$J($$CASH(NOMHFK,DTHFK),2,2)_""" onClick=""this.select()"" />"
   W "</td>",!
   ;
  W "</tr>",!
  W "</table>",!
  Q
  ;
  ;
DIVBUT ;
 W "<div id=""divbut"" align=""center"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 W "<tr>",!
  W " <td>",!
   I '$G(VIEW) D
   . D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_+$G(NOMHFK)_"','"_DTHFK_"')","color:green",",,,100")
   ;
   I $G(VIEW) D
   . I $$LASTHFK(NOMHFK)!(NOMHFK<0) D
   ..  D ROUNDBUT^%W1JS("Edit",$$^%W1DICT("EDIT"),"Edit('"_NOMHFK_"')","color:blue",",,,100")
   .. W "</td>"
   .. W "<td>"
   .
   . D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   ;
   W "</td>",!
   W "<td>&nbsp;</td>",!
   W "<td>",!
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
LASTHFK(NOM) ;
 D CHBANK
 I $O(@CHBANK@(NOM))="" Q 1
 Q 0
 ;
EDIT(STAM) ;
 I $G(%ARG("EDIT")) Q 1
 Q 0
 ;
GLTOT(STAM) ;
 Q $$GLTOT^W4HFKLS
 ;
DAYBACK ;
 D DAYBACK^W4HFKLS
 Q
 ;
Z(STAM) ;
 Q $$Z^W4HFKLS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HFKLS
W4HFKLS ; [ 12.05.22 15:48 ] [ 19.05.19 15:38 ] [ 27.09.16 13:55 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>",!
 ;W "<span style=""font-size:"_$$^W3FSZ(14)_"""> "
 ; W $$^%W1DICT("DATE")_" "_$ZD($H,"DD.MM.YY"),!
 ;W "</span>",!
 W "<br>",!
 ;
 D CHBANK^W4HFK
 D DAYBACK
 W "<select id=""dathfk"" >",!
 S LHFK=$O(@CHBANK@(99999),-1)
 I 'LHFK S DT0=$H-DAYBACK
 ;
 I LHFK D
 .S LDAT=$P($G(@CHBANK@(LHFK)),"\")
 .S DT0=$$^%L1DC(LDAT,3) ;;+1 ; *** LEV 22/09/16
 .I DT0<($H-DAYBACK) S DT0=$H-DAYBACK
 ;
 S GLTOT=$$GLTOT
 I $$Z S DTF=$O(@$$^W4GL("Z")@(99999),-1)
 I '$$Z!(DTF<($H-3)) S DTF=$H-1
 I DTF<DT0 S DTF=DT0
 F DT=DTF+3:-1:DT0 D
 .W "<option "
 .I DT=DTF W " selected=""selected"" "
 .W ">"
 . W $ZD(DT,"DD.MM.YY")
 .W "</option>",!
 ;
 W "</select>",!
 W "<br><br>",!
 ;
 D ROUNDBUT^%W1JS("newdeposition",$$^%W1DICT("NEWDEPOSITION"),"NewDeposition()","color:green",",,,180,12")
 W $$NBSP^%L1FRM(10)
 D ROUNDBUT^%W1JS("backv",$$^%W1DICT("BACK"),"Back()","color:red",",,,120,12")
 ;
 W "<br><br>",!
 W "<table id=""DeposTable"" border=""1""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("DEPOSITIONNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("DEPOSITIONDATE")_"</th>"
  W "<th>"_$$^%W1DICT("BANK")_"</th>"
  W "<th>"_$$^%W1DICT("SNIF")_"</th>"
  W "<th>"_$$^%W1DICT("ACCOUNT")_"</th>"
  W "<th>"_$$^%W1DICT("CHECKSNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CHECKSTOTAL")_"</th>"
  W "<th>"_$$^%W1DICT("CASHTOTAL")_"</th>"
 W "</tr>",!
 ;
 D CHBANK^W4HFK
 S N="" F  S N=$O(@CHBANK@(N),-1) Q:N<0  Q:N=""  D
 .S A=$G(^(N))
 .W "<tr id=""tr"_N_""" "
 . W " style=""cursor:pointer"" onClick=""ShowDeposition('"_N_"')"" "
 .W ">"
 . W "<td>&nbsp;&nbsp;"_N_"</td>"
 . W "<td>&nbsp;&nbsp;"_$$DATE(N)_"</td>"
 . W "<td>&nbsp;&nbsp;"_$$BANK(N)_"</td>"
 . W "<td>&nbsp;&nbsp;"_$$SNIF(N)_"</td>"
 . W "<td>&nbsp;&nbsp;"_$$ACCOUNT(N)_"</td>"
 . W "<td>&nbsp;&nbsp;"_$$CHKQN(N)_"</td>"
 . W "<td>&nbsp;&nbsp;"_$J($$CHKSUM(N),2,2)_"</td>"
 . W "<td>&nbsp;&nbsp;"_$J($$CASH(N),2,2)_"</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 W "<br>",!
 D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red",",,,90,12")
 W "</div>",!
 Q
 ;
DATE(N) ;
 Q $P($$CHBANK(N),"\")
 ;
NOMACN(N) ;
 Q $P($$CHBANK(N),"\",3)
 ;
BANK(N) ;
 Q $P($$CHBANK(N),"\",4)
 ;
BANKNM(N) ;
 Q $P($$CHBANK(N),"\",5)
 ;
SNIF(N) ;
 Q $P($$CHBANK(N),"\",6)
 ;
ACCOUNT(N) ;
 Q $P($$CHBANK(N),"\",7)
 ;
CASH(N) ;
 Q $P($$CHBANK(N),"\",8)
 ;
CHKQN(N) ;
 Q $P($$CHBANK(N),"\",9)
 ;
CHKSUM(N) ;
 Q $P($$CHBANK(N),"\",10)
 ;
CHBANK(N) ;
 Q $G(@$$^W4GL("CHBANK")@(N))
 ;
GLTOT(STAM) ;
 N GLTOT S GLTOT=$$^W4GL("Z1")
 I '$D(@GLTOT),$$^W4LKH&'$$^W4LKHCSR S GLTOT=$$^W4GL("TOT")
 Q GLTOT
 ;
DAYBACK ;
 S DAYBACK=120
 Q
 ;
Z(STAM) ;
 Q $$GLTOT["Z"
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HIPUS
W4HIPUS ; [ 01.09.22 17:08 ] [ 21.01.17 08:02 ] [ 07.05.16 18:02 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 D ^%W1ARG
 ;
 I '$G(MELKH) S MELKH=""
 I '$G(ADLKH) S ADLKH=99999999999
 I '$G(MESUGL) S MESUGL=""
 I '$G(ADSUGL) S ADSUGL=99999
 I '$G(MESUM) S MESUM=""
 I '$G(ADSUM) S ADSUM=999999999
 I '$G(MENOM) S MENOM=""
 I '$G(ADNOM) S ADNOM=99999999
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 S SUGM1=""
 I $G(SUGM) S SUGM1=$G(@$$^W4GL("W4SUGM")@(SUGM))
 D PCPRM^W4DMANY(%SCRN)
 D PUT^%W1PRM("W4HIPUS",1)
 Q
 ;
 ;
GET ;
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 S SAH=0
 ;
 I SUGM=$$SUGHBC D  Q
 .I $G(%ARG("MENOM")),%ARG("MENOM")=$G(%ARG("ADNOM")) D HIPHBC(+%ARG("MENOM")_"!") Q
 .N DT,DT1,DT2,I,HBC,HZ,I
 .S I=0
 .S DT1=$$^%L1DC(%ARG("DAT1"),3)
 .S DT2=$$^%L1DC(%ARG("DAT2"),3)
 .F DT=DT1:1:DT2 D
 ..S HBC="" F  S HBC=$O(@$$^W4GL("P1HBI")@(DT,HBC)) Q:HBC=""  D
 ...I $G(%ARG("MENOM")),HBC<%ARG("MENOM") Q
 ...I $G(%ARG("MENOM")),HBC>%ARG("ADNOM") Q
 ...D HIPHBC(HBC)
 ;
 I SUGM=$$SUGHBA D  Q
 .I $G(%ARG("MENOM")),%ARG("MENOM")=$G(%ARG("ADNOM")) D HIPHBA(+%ARG("MENOM")_"!") Q
 .N DT,DT1,DT2,I,HBC,HZ,I
 .S I=0
 .S DT1=$$^%L1DC(%ARG("DAT1"),3)
 .S DT2=$$^%L1DC(%ARG("DAT2"),3)
 .F DT=DT1:1:DT2 D
 ..S HBA="" F  S HBA=$O(@$$^W4GL("P1HB2I")@(DT,HBA)) Q:HBA=""  D
 ...I $G(%ARG("MENOM")),HBA<%ARG("MENOM") Q
 ...I $G(%ARG("MENOM")),HBA>%ARG("ADNOM") Q
 ...D HIPHBA(HBA)
 ;
 I SUGM=$$SUGTM D  Q
 .I $G(%ARG("MENOM")),%ARG("MENOM")=$G(%ARG("ADNOM")) D HIPTM(+%ARG("MENOM")_"!") Q
 .N DT,DT1,DT2,I,HBC,HZ,I
 .S I=0
 .S DT1=$$^%L1DC(%ARG("DAT1"),3)
 .S DT2=$$^%L1DC(%ARG("DAT2"),3)
 .F DT=DT1:1:DT2 D
 ..S TM="" F  S TM=$O(@$$^W4GL("P1TMI")@(DT,TM)) Q:TM=""  D
 ...I $G(%ARG("MENOM")),TM<%ARG("MENOM") Q
 ...I $G(%ARG("MENOM")),TM>%ARG("ADNOM") Q
 ...D HIPTM(TM)
 ;
 I SUGM=$$SUGHB D  Q
 .N VD S VD=1
 .D GET^W4DHB
 .N I F I=1:1 Q:'$D(@TMPREP@("G",I))  D
 ..S $P(^(I),"\",5,7)=$P($G(@TMPREP@("G",I)),"\",7)
 .D GTRGTD("W4DHB")
 ;
 I SUGM=$$SUGHBZ D  Q
 .N VD S VD=3
 .N W4HIPUS S W4HIPUS=""
 .D GET^W4DHB
 .N I F I=1:1 Q:'$D(@TMPREP@("G",I))  D
 ..S $P(^(I),"\",5,7)=$P($G(@TMPREP@("G",I)),"\",7)
 .D GTRGTD("W4DHB")
 ;
 I SUGM=$$SUGCB D  Q
 .D GET^W4DCB
 .D GTRGTD("W4CHB")
 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4HIPUS-CHKPRM","SUGM=SUGM& MESUGL=MESUGL&ADSUGL=ADSUGL& MELKH=MELKH & ADLKH=ADLKH & MESUM=MESUM & MENOM=MENOM&ADNOM=ADNOM& DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 I MELKH>ADLKH Q "0;RANGENOTVALID;;MELKH"
 I MESUGL>ADSUGL Q "0;RANGENOTVALID;;MESUGL"
 I MESUM>ADSUM Q "0;RANGENOTVALID;;MESUM"
 I MENOM>ADNOM Q "0;RANGENOTVALID;;MENOM"
 I $G(SUGM) D PUT^%W1PRM("W4REPSCR_W4SUGM",SUGM)
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) ;
 N SUGM S SUGM=$$GET^%W1PRM("W4REPSCR_W4SUGM")
 I SUGM<4 Q "W4HIPUS1"
 Q "W4HIPUS"
 ;
TR ;
 N SUGM
 S SUGM=$$GET^%W1PRM("W4REPSCR_W4SUGM") Q:'SUGM
 I SUGM=$$SUGHB!(SUGM=$$SUGHBZ) D TR^W4DHB Q
 I SUGM=$$SUGCB D TR^W4DCB Q
 ;
 I SUGM=$$SUGHBA!(SUGM=$$SUGTM)!(SUGM=$$SUGHBC) D
 .N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 .N HZ S HZ=$P(A,"\",5)
 .W " style=""cursor:pointer;color:black;font-size:"_$$^W3FSZ(11)
 .W """"
 .W " onClick=""ShowOrder('"_HZ_"','ifr')"""
 Q
 ;
TD ;
 S SUGM=$$GET^%W1PRM("W4REPSCR_W4SUGM") Q:'SUGM
 I SUGM=$$SUGHB D TD^W4DHB Q
 I SUGM=$$SUGCB D TD^W4DCB Q
 I SUGM=$$SUGHBA!(SUGM=$$SUGTM)!(SUGM=$$SUGHBC) D
 .N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 .N SUM S SUM=$P(A,"\",6) Q:SUM'<0
 .W " style=""background-color:pink"""
 Q
 ;
SUGHBC(STAM) Q 1
SUGHBA(STAM) Q 2
SUGTM(STAM) Q 3
SUGHB(STAM) Q 4
SUGHBZ(STAM) Q 5
SUGCB(STAM) Q 6
 ;
SETSUGM ;
 I $G(%ARG("FIRST")) D
 .K @$$^W4GL("W4SUGM")
 .S @$$^W4GL("W4SUGM")="!"
 .D KILL^%W1PRM("W4REPSCR_W4SUGM")
 S @$$^W4GL("W4SUGM")@(1)=$$TV^%W1DICT($$^%W1LNG,"INVOICERECEIPT")
 S @$$^W4GL("W4SUGM")@(2)=$$TV^%W1DICT($$^%W1LNG,"CREDITACCOUNT")
 S @$$^W4GL("W4SUGM")@(3)=$$TV^%W1DICT($$^%W1LNG,"DELIVERYDOC")
 S @$$^W4GL("W4SUGM")@(4)=$$TV^%W1DICT($$^%W1LNG,"INVOICETX")
 S @$$^W4GL("W4SUGM")@(5)=$$TV^%W1DICT($$^%W1LNG,"DEBINVOICES")
 S @$$^W4GL("W4SUGM")@(6)=$$TV^%W1DICT($$^%W1LNG,"RECEIPT")
 Q
 ;
GTRGTD(DOCH) ;
 I $D(@$$^W4MAIN("TMPREP")@("GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=$G(@$$^W4REPSCR@("W4DHB","GTR"))
 M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@("W4DHB","GTD")
 Q
 ;
HIPHBC(HBC) ;
 N PRNOM S PRNOM=0 I HBC["!" S PRNOM=1
 S HBC=+HBC
 N HZ,LKH,LKH1,SUM S I=+$G(I)
 S HZ=$P($G(@$$^W4GL("P1HB")@(HBC)),"\") Q:'$L(HZ)
 N DTH S DTH=$P($G(@$$^W4GL("P1HB")@(HBC)),"\",2)
 S LKH=$$LKHNOM^W4HZMST(HZ)
 I $G(%ARG("MESUGL")),$$SUGL^W4L(LKH)<%ARG("MESUGL") Q
 I $G(%ARG("ADSUGL")),$$SUGL^W4L(LKH)>%ARG("ADSUGL") Q
 I $G(%ARG("MELKH")),$TR(LKH,"-","")<$TR(%ARG("MELKH"),"-","") Q
 I $G(%ARG("ADLKH")),$TR(LKH,"-","")>$TR(%ARG("ADLKH"),"-","") Q
 ;
 I HZ>0 D
 .S LKH1=$$LKHNAME^W4HZMST(HZ)
 .I LKH1="" S LKH1=$$H2U^%L1FRM($$TOCUSNAME^W4HZMST(HZ)_" : ceakl")
 .S SUM=$$TSHL^W4HZMST(HZ)-$$SHULA^W4HZMST(HZ)+$$TIP^W4HZMST(HZ)
 ;
 I $$DOCNOM(HZ) D
 .N NOM S NOM=$$DOCNOM(HZ)
 .S LKH1=$$LKHNAME^W4DOC(NOM)
 .S SUM=$$SUMTD^W4DOC(NOM)
 ;
 I 'PRNOM,$G(%ARG("MESUM")),SUM<%ARG("MESUM") Q
 I 'PRNOM,$G(%ARG("ADSUM")),SUM>%ARG("ADSUM") Q
 ;
 S I=I+1,SAH=SAH+SUM
 S @$$^W4MAIN("TMPREP")@("G",I)=HBC_"\"_$ZD(DTH,"DD.MM.YY")_"\"_LKH_"\"_LKH1
 S @$$^W4MAIN("TMPREP")@("G",I)=@$$^W4MAIN("TMPREP")@("G",I)_"\"_HZ_"\"_SUM
 Q
 ;
HIPHBA(HBA) ;
 N PRNOM S PRNOM=0 I HBA["!" S PRNOM=1
 S HBA=+HBA
 N HZ,LKH,LKH1,SUM S I=+$G(I)
 N A S A=$G(@$$^W4GL("P1HB2")@(HBA))
 S HZ=$$HZ^W4HBA(HBA) Q:'HZ
 S LKH=$$LKH^W4HBA(HBA)
 I 'PRNOM,$G(%ARG("MELKH")),$TR(LKH,"-","")<$TR(%ARG("MELKH"),"-","") Q
 I 'PRNOM,$G(%ARG("ADLKH")),$TR(LKH,"-","")>$TR(%ARG("ADLKH"),"-","") Q
 S LKH1=$$LKH^W4L(LKH)
 S SUM=$$SUM^W4HBA(HBA)
 I 'PRNOM,$G(%ARG("MESUM")),SUM<%ARG("MESUM") Q
 I 'PRNOM,$G(%ARG("ADSUM")),SUM>%ARG("ADSUM") Q
 S I=I+1,SAH=SAH+SUM
 S @$$^W4MAIN("TMPREP")@("G",I)=HBA_"\"_$ZD(DT,"DD.MM.YY")_"\"_LKH_"\"_LKH1
 S @$$^W4MAIN("TMPREP")@("G",I)=@$$^W4MAIN("TMPREP")@("G",I)_"\"_HZ_"\"_SUM
 Q
 ;
HIPTM(TM) ;
 N PRNOM S PRNOM=0 I TM["!" S PRNOM=1
 S TM=+TM
 N HZ,DT,LKH,LKH1,SUM S I=+$G(I)
 N A S A=$G(@$$^W4GL("P1TM")@(TM))
 S HZ=$P(A,"\") Q:'HZ
 S DT=$P(A,"\",2)
 S LKH=$$LKHNOM^W4HZMST(HZ)
 I 'PRNOM,$G(%ARG("MELKH")),$TR(LKH,"-","")<$TR(%ARG("MELKH"),"-","") Q
 I 'PRNOM,$G(%ARG("ADLKH")),$TR(LKH,"-","")>$TR(%ARG("ADLKH"),"-","") Q
 S LKH1=$$LKHNAME^W4HZMST(HZ)
 S SUM=$$TSHL^W4HZMST(HZ)
 I $G(%ARG("MESUM")),SUM<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),SUM>%ARG("ADSUM") Q
 S I=I+1,SAH=SAH+SUM
 S @$$^W4MAIN("TMPREP")@("G",I)=TM_"\"_$ZD(DT,"DD.MM.YY")_"\"_LKH_"\"_LKH1
 S @$$^W4MAIN("TMPREP")@("G",I)=@$$^W4MAIN("TMPREP")@("G",I)_"\"_HZ_"\"_SUM
 Q
 ;
PRINTDOC ;
 S SUGM=$$GET^%W1PRM("W4REPSCR_W4SUGM") Q:'SUGM
 N I F I=1:1 Q:'$D(@TMPREP@("G",I))  D
 .S ND=$P($G(@TMPREP@("G",I)),"\",5)
 .I SUGM=$$SUGHBA!(SUGM=$$SUGTM)!(SUGM=$$SUGHBC) D PRINTORD(ND) Q
 .I SUGM=$$SUGCB D PRINTCB(ND) Q
 .I SUGM=$$SUGHB D PRINTHB(ND)
 Q  ;
 ;
PRINTORD(ND) ;
 Q
 ;
PRINTCB(ND) ;
 Q
PRINTHB(ND) ;
 Q
DOCNOM(HZ) ;
 I $E(HZ)'="W" Q ""
 Q $E(HZ,2,10)
 
 
 
 

W4HISTLK
W4HISTLK(LK) ; [ 21.04.17 14:25 ] [ 
 N (JB,%ARG,LK) ;
 S MSD=$$GETP^%W1PRM("MSD") Q:'MSD
 S N="",I=0 F  S N=$O(@$$^W4GL("W4LINKI")@(LK,MSD,N)) Q:N=""  D
 .S I=I+1 I I>3 Q
 .D ^W4ORDHD(N)
 Q

W4HMH2H0
W4HMH2HZ(ORD) ; [ 16.12.17 07:44 ] [ 14.12.17 15:37 ] [ 13.12.17 14:59 ] 
 N (JB,%ARG,%REM,ORD)
 ;
 I '$$^W4HZMH(ORD) Q "NOTBID"
 ;
 N CDHZMH S CDHZMH=$$HZMH^W3PRM I 'CDHZMH Q "NOTCDBID"
 ;
 S DAT=$$TRH^W4HZMST(ORD)
 I $$^%L1DC(DAT,3)<$$^W4DZ Q "PASTDATE"
 ;
 S GLTMP=$$^W4MAIN("TMP") K @GLTMP S INDHZ=0
 ;
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(ORD)",DLM="\"
 ;
 S OKPZL=0 D
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D  Q:OKPZL
 ..N A S A=$G(^(N))
 ..S CD=$P(A,"\") Q:'CD
 ..I CD=CDHZMH D DEL^%L1GSEQ(GL,N) Q
 ..I $$DELIM(A) S OKPZL=1
 ;
 I $$HZM^W4MSD(ORD) S OKPZL=0
 ;
 S N="",K=0 F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S A0=$$SETNOMOD(A)
 .S A=$$DELNOMOD(A)
 .S @GL@(N)=$S(OKPZL:A0,1:A)
 .
 .I $$DELIM(A) D  Q
 ..S INDHZ=INDHZ+1,K=0
 ..N TM S TM=$$TIME($P(A,"\",8))
 ..S @GLTMP@(INDHZ)=TM
 .
 .I OKPZL S K=K+1,@GLTMP@(INDHZ,K)=A
 .
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S A1=$G(^(N1))
 ..S A10=$$SETNOMOD(A1)
 ..S A1=$$DELNOMOD(A1)
 ..S @GL@(N,N1)=$S(OKPZL:A10,1:A1)
 ..I OKPZL S @GLTMP@(INDHZ,K,N1)=A1
 ..
 ..S N2="" F  S N2=$O(@GL@(N,N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),A20=$$SETNOMOD(A2)
 ...S A2=$$DELNOMOD(A2)
 ...S @GL@(N,N1,N2)=$S(OKPZL:A20,1:A2)
 ...I OKPZL S @GLTMP@(INDHZ,K,N1,N2)=A2
 ;
 I 'OKPZL D
 .I '$$^W4PUTHZ(JB,ORD) Q
 .D ^W4HZM(ORD,JB)
 ;
 J SNDISHUR(JB,ORD,1)
 ;
 I OKPZL D
 .N UCI
 .S UCI=$$UCI(JB) Q:UCI=""
 .N DT S DT=$P($G(^[UCI]W4LINK(ORD)),"~",4) Q:'DT
 .
 .N WB S WB=$$^W4MYDVN ;"HZW"_HZW
 .D THZ^W4NEWHZ(JB)
 .D PUT^%W1PRM("THZ",THZ)
 .D PUT^%W1PRM("THZ1",THZ1)
 .
 .F INDHZ=1:1 Q:'$D(@GLTMP@(INDHZ))  D
 ..S HZM="ycg"
 ..K @THZ,@THZ1
 ..S @THZ=$G(@$$^W4ORD@(ORD))
 ..S $P(@THZ,"\",6)=$G(@GLTMP@(INDHZ))
 ..S $P(@THZ,"\",30)=ORD_" dpnfd levit"
 ..M @THZ1=@GLTMP@(INDHZ)
 ..S HZM=$$^W4PUTHZ(JB,HZM)
 ..S LAST=$O(@$$^W4ORD@(HZM,9999),-1)+1
 ..S SUM=$J($$TSHL^W4HZMST(HZM),2,2)
 ..S @$$^W4ORD@(HZM,LAST)="0\\"_ORD_" dpnfd daieg\"_SUM_"\-1\\"_-SUM
 ..S $P(@$$^W4ORD@(HZM),"\",11)=0
 ..S @$$^W4GL("W4PIZUL")@(ORD,HZM)=$H
 ..S @$$^W4GL("W4PIZULI")@(HZM)=ORD
 ;
 K @GLTMP
 Q 1
 ;
 ;
DELNOMOD(A) ;
 N SMB S SMB=$P(A,"\",10)
 I SMB["!" Q A
 S SMB=$TR(SMB,"@+","")
 S $P(A,"\",10)=SMB
 Q A
 ;
 ;
SNDISHUR(JB,ORD,ISHUR)
 N (JB,%ARG,ORD,ISHUR)
 S @$$^W4ORD@(ORD,"ISHUR")=$ZD($H,"DD.MM.YY  24:60")
 ;
 S EMAIL="" F  S EMAIL=$O(@$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)) Q:EMAIL=""  D
 .I ISHUR S PRM=ORD_";Bid "_ORD_" is approved;"_EMAIL_";HZMH^"_ISHUR
 .I ISHUR=0 S PRM=ORD_";Bid "_ORD_" is canceled;"_EMAIL_";HZMH^"_ISHUR
 .S $P(PRM,";",7)=$G(@$$^W4PRM@("HOWSEND"))
 .S RES=$$EMAILCONT^W4PCHBP(PRM)
 .S @$$^W4GL("W4EMPROT")@($$^W4DZ,ORD,EMAIL)=$H_";"_RES_";"_PRM
 Q
 ;
SETNOMOD(A) ; 
 I $P(A,"\",10)'["@@" S $P(A,"\",10)="@@"
 Q A 
 ;
UCI(JB) ;
 N MSD
 S MSD=$$GETP^%W1PRM("MSD")
 I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q UCI
 Q $$^%W1UCI(JB)
 ;
TIME(TX) ; 
 N TM,J S TM="",J=0
TIMEJ S J=J+1 I J>$L(TX) G TIMEE
 I $E(TX,J)'?1N G TIMEJ
 I $E(TX,J,255)?1N.N1":"2N.E D  G TIMEE
 .S TM=$E(TX,J,J+4)
 .S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J(+$P(TM,":",2),2)," ",0)
 E  G TIMEJ
TIMEE Q TM
 ;
DELIM(A) ;
 N CD S CD=$P(A,"\") I CD="" Q 0
 I '$$DELIM^W4P(CD) Q 0
 N HRP S HRP=$P(A,"\",8)
 I HRP'?.E1N1":"1N.E Q 0
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HMH2H1
W4HMH2HZ(ORD,WHO,CRED) ; [ 29.06.22 21:21 ] [ 16.02.21 13:56 ] [ 19.08.19 14:11 ] 
 N (JB,%ARG,%REM,ORD,WHO,CRED)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I '$$^W4HZMH(ORD) Q "NOTBID"
TV ;
 N CDHZMH S CDHZMH=$$HZMH^W3PRM I 'CDHZMH Q "NOTCDBID"
 ;
 S DAT=$$TRH^W4HZMST(ORD)
 I $$^%L1DC(DAT,3)<$$^W4DZ Q "PASTDATE"
 ;
 S GLTMP=$$^W4MAIN("TMP") K @GLTMP S INDHZ=0
 ;
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(ORD)",DLM="\"
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .S CD=$P(A,"\") Q:'CD
 .I CD=CDHZMH D DEL^%L1GSEQ(GL,N) Q
 ;
 S OKPZL=$$IFPIZUL(ORD)
 ;
 I $$HZM^W4MSD(ORD) S OKPZL=0
 ;
 S N="",K=0 F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S A0=$$SETNOMOD(A)
 .S A=$$DELNOMOD(A)
 .S @GL@(N)=$S(OKPZL:A0,1:A)
 .
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S A1=$G(^(N1))
 ..S A10=$$SETNOMOD(A1)
 ..S A1=$$DELNOMOD(A1)
 ..S @GL@(N,N1)=$S(OKPZL:A10,1:A1)
 ..
 ..S N2="" F  S N2=$O(@GL@(N,N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),A20=$$SETNOMOD(A2)
 ...S A2=$$DELNOMOD(A2)
 ...S @GL@(N,N1,N2)=$S(OKPZL:A20,1:A2)
 ;
 I 'OKPZL D
 .I $$HZM^W4MSL(ORD),$$DLYPRN^W4PRM D ^W4HZM(ORD,JB) Q
 .I $$HZM^W4MSL(ORD),$$FUTUREDT^W4HZMIT(ORD) Q
 .J ^W4HZM(ORD,JB_".1")
 ;
 I OKPZL S @$$^W4GL("W4PIZUL")@(ORD)=""
 ;
 J SNDISHUR(JB,ORD,1,WHO)
 ;
 I $G(CRED) D
 .D PUT^W4HZMST(ORD,"CODTS",4)
 ;
 Q 1
 ;
 ;
DELNOMOD(A) ;
 N SMB S SMB=$P(A,"\",10)
 I SMB["!" Q A
 S SMB=$TR(SMB,"@+","")
 S $P(A,"\",10)=SMB
 Q A
 ;
 ;
SNDISHUR(JB,ORD,ISHUR,WHO)
 N (JB,%ARG,ORD,ISHUR,WHO)
 S @$$^W4ORD@(ORD,"ISHUR")=$ZD($H,"DD.MM.YY  24:60")_"\"_$$INVH^%L1FRM($G(WHO))_"\"_$$^W4MYDVN_"\"_$G(ISHUR)
 ;
 S EMAIL="" F  S EMAIL=$O(@$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)) Q:EMAIL=""  D
 .I ISHUR S PRM=ORD_";"_$S($$SF^W4PRM:"Order ",1:Bid ")_ORD_" is approved;"_EMAIL_";HZMH^"_ISHUR
 .I ISHUR=0 S PRM=ORD_";Order "_ORD_" is canceled;"_EMAIL_";HZMH^"_ISHUR
 .S $P(PRM,";",7)=$G(@$$^W4PRM@("HOWSEND"),3)
 .S RES=$$EMAILCONT^W4PCHBP(PRM)
 .S @$$^W4GL("W4EMPROT")@($$^W4DZ,ORD,EMAIL)=$H_";"_RES_";"_PRM
 Q
 ;
SETNOMOD(A) ; 
 I $P(A,"\",10)'["@@" S $P(A,"\",10)="@@"
 Q A 
 ;
UCI(JB) ;
 N MSD
 S MSD=$$GETP^%W1PRM("MSD")
 I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q UCI
 Q $$^%W1UCI(JB)
 ;
DELIM(A) ;
 N CD S CD=$P(A,"\") I CD="" Q 0
 I '$$DELIM^W4P(CD) Q 0
 N HRP S HRP=$P(A,"\",8)
 I HRP'?.E1N1":"1N.E Q 0
 Q 1
 ;
IFPIZUL(ORD) ;
 N OKPZL S OKPZL=0
 S N="" F  S N=$O(@$$^W4ORD@(ORD,N)) Q:N=""  I $E(N)?1N D  Q:OKPZL
 .N A S A=$G(^(N))
 .I $$DELIM(A) S OKPZL=1
 Q OKPZL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HMH2HZ
W4HMH2HZ(ORD,WHO,CRED) ; [ 03.09.26 10:29 ] [ 22.07.26 14:06 ] [ 15.07.26 11:30 ] 
 N (JB,%ARG,%REM,ORD,WHO,CRED)
 S WHO=$G(WHO)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I '$$^W4HZMH(ORD) Q "NOTBID"
TV ;
 N CDHZMH S CDHZMH=$$HZMH^W3PRM I 'CDHZMH Q "NOTCDBID"
 ;
 S DAT=$$TRH^W4HZMST(ORD)
 I $$^%L1DC(DAT,3)<$$^W4DZ Q "PASTDATE"
 ;
 S GLTMP=$$^W4MAIN("TMP") K @GLTMP S INDHZ=0
 ;
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(ORD)",DLM="\"
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I $E(N)?1N D
 .N A S A=$G(^(N))
 .S CD=$P(A,"\") Q:'CD
 .;;I CD=CDHZMH D DEL^%L1GSEQ(GL,N) Q
 .I CD=CDHZMH D
 ..S @GL@(N)="0\\zxye`n dpnfd"
 ;
 S OKPZL=$$IFPIZUL(ORD)
 ;
 I $$HZM^W4MSD(ORD) S OKPZL=0
 ;
 S N="",K=0 F  S N=$O(@GL@(N)) Q:N=""  I $E(N)?1N D
 .S A=$G(^(N))
 .S A0=$$SETNOMOD(A)
 .I '$$STAGE^W4HZMST(ORD) S A=$$DELNOMOD(A)
 .I $$STAGE^W4HZMST(ORD) S A=$$SETNOMOD(A)
 .S @GL@(N)=$S(OKPZL:A0,1:A)
 .
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S A1=$G(^(N1))
 ..S A10=$$SETNOMOD(A1)
 ..I '$$STAGE^W4HZMST(ORD) S A1=$$DELNOMOD(A1)
 ..I $$STAGE^W4HZMST(ORD) S A1=$$SETNOMOD(A1)
 ..S @GL@(N,N1)=$S(OKPZL:A10,1:A1)
 ..
 ..S N2="" F  S N2=$O(@GL@(N,N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),A20=$$SETNOMOD(A2)
 ...I '$$STAGE^W4HZMST(ORD) S A2=$$DELNOMOD(A2)
 ...I $$STAGE^W4HZMST(ORD) S A2=$$SETNOMOD(A2)
 ...S @GL@(N,N1,N2)=$S(OKPZL:A20,1:A2)
 ;
 I 'OKPZL,'$$VVMSK^W4PRM D
 .I '$$^W4USHZPC(ORD) Q
 .I $$DLYPRN^W4PRM,$$HZM^W4MSL(ORD) D ^W4HZM(HZM,JB) Q
 .J TV^W4HZM(ORD,JB_".1")
 ;
 I OKPZL S @$$^W4GL("W4PIZUL")@(ORD)=""
 ;
 J SNDISHUR(JB,ORD,1,WHO)
 ;
 I $G(CRED) D
 .D PUT^W4HZMST(ORD,"CODTS",4)
 ;
 Q 1
 ;
 ;
DELNOMOD(A) ;
 N SMB S SMB=$P(A,"\",10)
 I SMB["!" Q A
 S SMB=$TR(SMB,"@+","")
 S $P(A,"\",10)=SMB
 Q A
 ;
 ;
SNDISHUR(JB,ORD,ISHUR,WHO)
 N (JB,%ARG,ORD,ISHUR,WHO)
 I $G(ISHUR) D
 .S @$$^W4ORD@(ORD,"ISHUR")=$ZD($H,"DD.MM.YY  24:60")_"\"_$$INVH^%L1FRM($G(WHO))_"\"_$$^W4MYDVN_"\"_$G(ISHUR)
 .S @$$^W4GL("W4ISH")@($$^W4DZ,ORD)=$ZD($H,"DD.MM.YY  24:60")_"\"_$$INVH^%L1FRM($G(WHO))_"\"_$$^W4MYDVN_"\"_$G(ISHUR)
 ;
 I $$PWRLNK^W4PRM J SBMBID^W4PWRLNK(JB,ORD)
 ;
 S EMAIL="" F  S EMAIL=$O(@$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)) Q:EMAIL=""  D SNDISHUR1
 ;
 I $D(@$$^W4ORD@(ORD,"SENT2MAIL"))<10,$G(@$$^W4PRM@("BIDISHWH")) D
 .N PELE S PELE=$$SPA^%L1FRM($$PELE^W4HZMST(ORD)) Q:$L($TR(PELE,"-",""))<10
 .S EMAIL=$$EMAIL^W4HZMST(ORD)
 .N NMB S NMB=$$NMB^W4HZMST(ORD)
 .I EMAIL="",NMB S EMAIL=$$EMAIL^W4L(NMB)
 .D SNDISHUR1
 ;
 Q
 ;
 ;
SNDISHUR1 ;
 I ISHUR S PRM=ORD_";"_$S($$SF^W4PRM:"Order ",1:"Bid ")_ORD_" is approved;"_EMAIL_";HZMH^"_ISHUR
 I ISHUR=0 S PRM=ORD_";Order "_ORD_" is canceled;"_EMAIL_";HZMH^"_ISHUR
 S $P(PRM,";",7)=$G(@$$^W4PRM@("HOWSEND"),3)
 S RES=$$EMAILCONT^W4PCHBP(PRM)
 S @$$^W4GL("W4EMPROT")@($$^W4DZ,ORD,EMAIL)=$H_";"_RES_";"_PRM
 Q
 ;
 ;
SETNOMOD(A) ; 
 I $P(A,"\",10)'["@@" S $P(A,"\",10)="@@"
 Q A 
 ;
UCI(JB) ;
 N MSD
 S MSD=$$GETP^%W1PRM("MSD")
 I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q UCI
 Q $$^%W1UCI(JB)
 ;
DELIM(A) ;
 N CD S CD=$P(A,"\") I CD="" Q 0
 I '$$DELIM^W4P(CD) Q 0
 N HRP S HRP=$P(A,"\",8)
 I HRP'?.E1N1":"1N.E Q 0
 Q 1
 ;
IFPIZUL(ORD) ;
 I $$TSHL^W4HZMST(ORD)'>0 Q 0
 N OKPZL S OKPZL=0
 S N="" F  S N=$O(@$$^W4ORD@(ORD,N)) Q:N=""  I N D  Q:OKPZL
 .N A S A=$G(^(N))
 .I $$DELIM(A) S OKPZL=1
 Q OKPZL
 ;
DO(ORD,WHO,CRED)
 I $$STAGE^W4PRM,$$STAGE^W4HZMST(ORD)=1 D PUT^%W1PRM("HZM",ORD) Q $$SBMSTG^W4MENUBT
 Q $$W4HMH2HZ(ORD,$G(WHO),$G(CRED))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HMKVW
W4HMKVW ; [ 07.01.17 09:51 ] [ 06.01.17 18:18 ] [ 20.04.12 19:08 ] 
 N (JB,%ARG,%REM)
 N NOM S NOM=+$G(%ARG("NOM"))
 I 'NOM S ER="INVALIDINVOICENUMBER" G MSGER
 S KLIN=$$^W4GL("KLIN")
 S W4HSBYVW="",ER=""
 S CODDOC="HMK"
 I '$D(@KLIN@(CODDOC,NOM)) S ER="INVOICENOTEXIST" G MSGER
 ;
 S LK0=$G(^(NOM)) I LK0["+" Q
 S LKH=$$LK^W4LHB(LK0)
 I LKH="" S ER="INVOICENOTEXIST" G MSGER
 S STRING=LKH
 ;
 ;
 I $$HMK=1 D  I $L(ER) G MSGER ;-- YADANI
 .S %ARG("VD")="HMK"
 .D GLHB
 .S A=$G(@GLHB@(NOM,"HB"))
 .I A="" S ER="INVOICENOTEXIST"
 .S DAT=$$^%L1DC($P(A,"\",4),1)
 .D ^W4KOTHSB(NOM,LKH,DAT,$$VD^W4HSBYAD)
 .D GETHSB^W4HSBYVW("HMK",NOM)
 ;
 I $$HMK=2 D  I $L(ER) G MSGER ; --- MEFURETET
 .S NOMDOC=$P(LK0,"W",2) I 'NOMDOC S ER="INVOICENOTEXIST" Q
 .S %ARG("VD")="HMKI"
 .D GLHB
 .S A=$G(@GLHB@(NOMDOC))
 .I A="" S ER="INVOICENOTEXIST"
 .S DAT=$$^%L1DC($P(A,"\",4),1)
 .D ^W4KOTHSB(NOM,LKH,DAT,"HMK")
 ;
 D DAF1
 ;
 S %ARG("NOM")=+NOM_"HMK"
 S %ARG("LKH")=LKH
 D ^W4LCBCR
 ;
 Q
 ;
MSGER ;
 W "<script>",!
 W "MsgA('"_ER_"');",!
 W " Back()",!
 W "</script>",!
 Q
 ;
 ;
TD W "<td width=""30%"">"
 Q
 ;
DAF1 ;
 I $$HMK=1 D DAF1^W4HSBYAD(NOM)
 ;
 I $$HMK=2 D
 .N NOM,DOC S NOM=NOMDOC,DOC="HMK"
 .D DAF1^W4DOCVW
 Q
 ;
 ;
GLHB I $$HMK=1 D GLHB^W4HSBYAD Q
 I $$HMK=2 S GLHB=$$^W4GL("W4DOC")
 Q
 ;
GETHSB(NOM,LKH,DAT) ;
 N I,J,A,KLIN
 K CMNT,BFTAX,AFTAX,SHUM,BFMAM,MAM
 S (SHUM,BFMAM,MAM)=0
 S STRING=LKH
 S KLIN=$$^W4GL("KLIN")
 D GLHB
 F I=1:1 Q:'$D(@GLHB@(NOM,"HB",I))  D
 .S B=$G(^(I))
 .S CMNT(I)=$P(B,"\",2)
 .S BFTAX(I)=$P(B,"\"),BFMAM=BFMAM+BFTAX(I)
 .S AFTAX(I)=$P(B,"\",3),SHUM=SHUM+AFTAX(I)
 ;
 S MAM=SHUM-BFMAM
 Q
 ;
 ;
TBLCOPY ;
 W "<br>"
 N WD,WD1 S WD=55,WD1=30
 I $D(W4DOC) S WD=42,WD1=38
 W "<table width="""_WD_"%"" id=""tblcopy"" border=""0"" style=""visibility:hidden"" dir="""_$$^%W1DIR_""" width=""35%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td width="""_WD1_"%"">"_$$^%W1DICT("INVOICE2DATE")_"</td>",!
   ;
   W "<td>"
     W $$^W4SELDAT($$^%L1DC($H,1))
   W "</td>"
   ;
   I '$D(W4DOC) D
   .W "<td width=""27%"" >"
   .  W $$^%W1DICT("COPYSUMTOO")
   .  W "<input type=""checkbox"" id=""copysum"" >"
   .W "</td>"
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("Do",$$^%W1DICT("DO"),"DoCopy('"_NOM_"')","color:green",",,,100")
   W "</td>"
  W "</tr>"
 W "</table>",!
 Q  ;
 ;
HMK(STAM) ;
 I $G(LK0)["W" Q 2
 Q 1
 
 

W4HNHSHA
W4HNHSHA(PAR,NMB) ; [ 21.08.22 11:12 ] [ 03.02.22 17:30 ] [ 01.08.21 14:32 ] 
 ; OU ---> HN
 N (JB,%ARG,%REM,PAR,ZMANK,LKHN,NMB) D ^W4IN
 S %SCRN=HZSCR
 N SUG,T,A,%TIM
 Q:$G(PAR)="" ""
 Q:$G(NMB)="" ""
 I $D(@$$^W4GL("PRTBH")@(PAR)),'$G(@$$^W4PRM@("HH2PRTBH")) Q ""
 ;
HNHSTV N %TIM,A,I,SUG,T,MESHAA,ADSHAA
 I $G(NMB)="" S NMB=$$NMB^W3HZMST(JB)
 I $G(ZMANK)="" S ZMANK=$$DATCB^W3HZMST(JB)
 I $G(LKHN)="",$$^W4MSL(NMB) S LKHN=NMB
 S HN=0 I '$D(P1DZ) D ^W4IN
 I $$REALTIME^W4PRM S %TIM=$ZD($H,"24:60") S T=$$TIM(%TIM)
 ;;S ^AA=.1
 I '$$REALTIME^W4PRM Q:'$D(ZMANK) ""  S T=$$TIM($P(ZMANK,"  ",2))
 I $$^W4MSL(NMB) S SHAA=$$SHAA^W3HZMST(JB),T=$$TIM(SHAA)
 ;;S ^AA=.2
 S SUG=$$SUG^W4P(PAR) Q:'SUG ""
 N I,A
 F I=1:1 Q:'$D(@$$^W4GL("P1HNHS")@(I))  S A=^(I) D  Q:HN
 .S A=$P(A,"\",1,2)_"\"_$P(A,"\",12)_"\"_$P(A,"\",13)_"\"_$P(A,"\",3,11)_"\"_$P(A,"\",14)
 .N MESUGP,MESUGP1,ADSUGP,ADSUGP1,HN1,SUGS,DAY,MH,MEJOM,ADJOM,THUM,SUGL,SUGL1
 .D G^W4SCV("P1HNS",A)
 .I MESUGP,'ADSUGP S ADSUGP=MESUGP
 .I 'MESUGP,'ADSUGP S ADSUGP=99999
 .;;S ^AA=1
 .I $$^W4MSL(NMB),THUM=1 Q
 .;;S ^AA=2
 .I '$$^W4MSL(NMB),THUM=2 Q
 .;;S ^AA=3
 .I THUM=3,'$$^W4MSL(NMB),'$$TAKEAWAY^W3HZMST(JB) Q
 .;;S ^AA=4
 .I SUG'<MESUGP,SUG'>ADSUGP,T'<$$TIM(MESHAA),T'>$$TIM(ADSHAA) D
 ..I SUGS,$$^W4MSL(NMB) Q
 ..;;S ^AA=5
 ..I SUGS,$$SUGL^W4L(NMB)'=SUGS Q
 ..;;S ^AA=6
 ..I SUGL'<1,'$$^W4ISCDLK(LKHN) Q
 ..;;S ^AA=7
 ..I $$^W4ISCDLK(LKHN),+SUGL=.5,$$SUGL^W4L(LKHN) Q
 ..I $$^W4ISCDLK(LKHN),SUGL'<1,$$SUGL^W4L(LKHN)'=SUGL Q
 ..I $$^W4ISCDLK(LKHN),$G(@$$^W4PRM@("NODBLHR")),$$AH^W4L(LKHN) Q  
 ..;;S ^AA=8
 ..N DAY
 ..I MEJOM,ADJOM D  I DAY<MEJOM!(DAY>ADJOM) Q
 ...;;S ^AA=9
 ...S DAY=(P1DZ-55022#7) S:'DAY DAY=7
 ...I $$^W4MSL(NMB) D
 ....N DT S DT=$$^%L1DC($$DAT^W3HZMST(JB),3)
 ....I T<($$SHAAZ^W4PRM*60) S DT=DT-1
 ....S DAY=$$^%L1DC(DT,8)
 ..S HN=HN1
 Q HN
 ;
TIM(T) Q $P(T,":")*60+$P(T,":",2)
 ;
TV(NMB,PAR)
 I '$G(NMB) Q ""
 I '$G(PAR) Q ""
 G HNHSTV
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HODAV
W4HODAV(HZM) ; [ 17.06.26 11:04 ] [ 21.05.20 15:31 ] [ 10.07.18 16:47 ] 
 ;;M ^AA("W4HODAV",HZM,"P1HZOP")=P1HZOP
 N I,N,N1,MDP,PRINT,MDPS,%MDP,TSS,TS0,SM,GL D ^%L1TS
 S GL=$$^W4ORD_"(HZM)"
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 ;
 F I=1:1 Q:'$D(@GL@(I))  D
 .S N=$P(^(I),"\") D CRMDP(N)
 .S N1="" F  S N1=$O(@GL@(I,N1)) Q:N1=""  D
 ..D CRMDP(N1)
 ;
 ;;M ^AA("W4HODAV",HZM,"MDP")=MDP
 S N="",SM=1 F  S N=$O(MDP(N)) Q:N=""  D
 .D ^W4MDP(MDP(N))
 .L +@$$^W4PC@(N):2
 .D HDAV^W4HZPCHD(N)
 .D ^W4CUT(N,%MDP("CUT"))
 .L -@$$^W4PC@(N)
 Q
 ;
 ;
CRMDP(PAR) ;
 N I,MP,PRINT,PRINT1,PRINTP
 S MP=$$PRINTIG^W3PRMDP(PAR)
 ;
 F I=1:1:$L(MP,"&") S PRINT=+$P(MP,"&",I) I PRINT>0 D
 .S PRINTP=$P($G(@$$^W4PRM@("MDP",PRINT)),"\",3)
 .S PRINT1=$P($G(@$$^W4PRM@("MDP",PRINT)),"\",4)
 .I PRINT1["gah" S MDP(PRINTP)=PRINT
 Q
 
 
 
 
 
 
 

W4HSBGE0
W4HSBGET(NOM,CODDOC,WHO) ; [ 27.12.15 20:37 ] [ 09.12.15 15:06 ] [ 08.12.15 08:13 ]
 I '$G(NOM) Q
 S CODDOC=$$CODDOC^W4KOTHSB(CODDOC)
 I CODDOC="H",NOM<0 S CODDOC="TZ",NOM=-NOM
 ;
 D ^%W3DEB("W4HSBGET","NOM=NOM & CODDOC=CODDOC &WHO=WHO")
 K W4HSB
 ;
 I CODDOC="IPY" D GETPY(NOM) Q
 ;
 I $E(CODDOC)="I" Q:'$G(NOM)  D GETINP(CODDOC,$G(WHO),NOM) Q
 ;
 I CODDOC="HZMHC" D  Q  ; --- HAZAAT MAHIR MAHSHEV
 .N STHB
 .S STHB=$G(@$$^W4GL("HZMHC")@(NOM))
 .S W4HSB("LKH")=$P(STHB,"\",12)
 .I W4HSB("LKH")="",$P(STHB,"\",3) D
 ..S W4HSB("LKH")=$P(STHB,"\",3)
 ..I '$$DEFISLK^W4PRM S W4HSB("LKH")=$TR(W4HSB("LKH"),"-","")
 .N LK S LK=W4HSB("LKH")
 .S W4HSB("LKHNAME")=$P(STHB,"\",2)
 .I W4HSB("LKHNAME")="" S W4HSB("LKHNAME")=$$LKH^W4L(LK)
 .S W4HSB("TEL")=$P(STHB,"\",3)
 .S W4HSB("PELE")=$P(STHB,"\",4)
 .S W4HSB("KTV")=$$KTVMM^W4L(LK)
 .S W4HSB("TOT")=$P(STHB,"\",6)
 .S W4HSB("ISSUETIME")=$P(STHB,"\",8)
 .S W4HSB("TODATE")=$P(W4HSB("ISSUETIME")," ")
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .S W4HSB("MAM")=$P(STHB,"\",7)
 .S W4HSB("AHMAM")=$P(STHB,"\",5)
 .S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 ;
 I CODDOC="HZ"!(CODDOC="HZMH") D  Q  ; -- MEFURETET
 .S STHB=$G(@$$^W4GL("W4ORD")@(NOM))
 .I CODDOC="HZMH" S STHB=$G(@$$^W4GL("W4DOC")@(NOM))
 .S W4HSB("LKH")=$P(STHB,"\",1)
 .S W4HSB("LKHNAME")=$P(STHB,"\",2)
 .S W4HSB("KTV")=$P(STHB,"\",3)
 .S W4HSB("TZ")=$P(STHB,"\",15)
 .S W4HSB("TOT")=$P(STHB,"\",6)
 .S W4HSB("TODATE")=$P(STHB,"\",4)
 .I CODDOC="HZMH" S W4HSB("TODATE")=$P(STHB,"\",8)
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .N MAM S MAM=$P(STHB,"\",7)
 .S W4HSB("MAM")=$J(MAM,2,2)
 .S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 .N DTIS S DTIS=$G(@$$^W4GL("W4ORD")@(NOM,"MKR"))
 .S W4HSB("ISSUETIME")=$$DTM(DTIS)
 .S W4HSB("HRA")=$P(STHB,"\",9)
 .S W4HSB("MTB")=$P(STHB,"\",18)
 .D
 ..S W4HSB("NHB")=""
 ..N NDOCHB S NDOCHB=$P(STHB,"\",20) Q:'NDOCHB
 ..S NHB=$G(@$$^W4GL("W4DOC")@(NDOCHB,"H")) I NHB S W4HSB("NHB")=NHB Q
 ..S NHB=$G(@$$^W4GL("W4DOC")@(NDOCHB,"TM")) I NHB S W4HSB("NHB")=NHB_"T" Q
 .
 .S W4HSB("PRKUP")=$P(STHB,"\",21)
 ;
 ;
 N KLIN,LK,LK0
 S KLIN=$$^W4GL("KLIN")_"("""_CODDOC_""")"
 S LK0=$G(@KLIN@(NOM)) Q:LK0=""
 N LK S LK=$P(LK0,"+")
 S LK=$P(LK,"W")
 S LK=$P(LK,"^")
 ;
 I LK0["+" D  Q  ; -- AUTO
 .N NOM1 S NOM1=NOM I CODDOC="TZ" S NOM1=-NOM
 .N STHB,STHBPR
 .S STHB=$G(@$$^W4GL("P1LHB")@(LK,NOM1))
 .S STHBPR=$G(@$$^W4GL("P1LHB")@(LK,NOM1,"PR"))
 .
 .S W4HSB("IGUL")=$G(@$$^W4GL("P1LHB")@(LK,NOM1,"IGUL"))
 .
 .N DTHB S DTHB=$P(STHB,"\",8)
 .I $D(@$$^W4GL("P1LHB")@(LK,NOM1,"AHMAM"))#2 D
 ..S W4HSB("AHMAM")=$G(@$$^W4GL("P1LHB")@(LK,NOM1,"AHMAM"))
 .I '$D(@$$^W4GL("P1LHB")@(LK,NOM1,"AHMAM"))#2 D
 ..S W4HSB("AHMAM")=$$MAMD^W4L(DTHB)
 .N AHMAM S AHMAM=W4HSB("AHMAM")
 .S W4HSB("LKH")=LK
 .S W4HSB("LKHNAME")=$P(STHBPR,"\",1)
 .I W4HSB("LKHNAME")="" S W4HSB("LKHNAME")=$$LKH^W4L(LK)
 .S W4HSB("KTV")=$P(STHBPR,"\",2)
 .I W4HSB("KTV")="" S W4HSB("KTV")=$$KTVMM^W4L(LK)
 .S W4HSB("TZ")=$P(STHBPR,"\",3)
 .I W4HSB("TZ")="" S W4HSB("TZ")=$$TZ^W4L(LK)
 .S W4HSB("TOT")=$P(STHB,"\",4)
 .S W4HSB("TODATE")=$ZD(DTHB,"DD.MM.YY")
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .S W4HSB("LMAM")=$J(W4HSB("TOT")*100/(100+AHMAM),2,2)
 .S W4HSB("MAM")=$J(W4HSB("TOT")-W4HSB("LMAM"),2,2)
 .S W4HSB("ISSUETIME")=$P(STHB,"\",3)
 .S W4HSB("PAID")=$J($P(STHB,"\",5),2,2)
 .S W4HSB("NCB")=$P(STHB,"\",6)
 .D HBHI
 ;
 I LK0["W" D  Q  ; -- MEFURETET
 .N STHB,DOC S DOC=NOM
 .S DOC=+$P(LK0,"W",2) Q:'DOC
 .S STHB=$G(@$$^W4GL("W4DOC")@(DOC))
 .S W4HSB("LKH")=$P(STHB,"\",1)
 .S W4HSB("LKHNAME")=$P(STHB,"\",2)
 .S W4HSB("KTV")=$P(STHB,"\",3)
 .S W4HSB("TODATE")=$P(STHB,"\",4)
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .S W4HSB("TOT")=$P(STHB,"\",6)
 .N MAM S MAM=$P(STHB,"\",7)
 .S W4HSB("MAM")=$J(MAM,2,2)
 .S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 .N DTIS S DTIS=$G(@$$^W4GL("W4DOC")@(DOC,CODDOC,"MKR"))
 .S W4HSB("ISSUETIME")=$$DTM(DTIS) ;  $P(STHB,"\",8)
 .S W4HSB("HRA")=$P(STHB,"\",9)
 .S W4HSB("TZ")=$P(STHB,"\",15)
 .S W4HSB("MTB")=$P(STHB,"\",18)
 .S W4HSB("PAID")=$J($P(STHB,"\",19),2,2)
 .S W4HSB("NCB")=$P(STHB,"\",20)
 .S W4HSB("PRKUP")=$P(STHB,"\",21)
 .D HBHI
 ;
 ;------------- YADANI
 N STHB
 ;
 S STHB=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM))
 N %ARG I CODDOC="HMK" S %ARG("VD")="HMK"
 I $$HMK^W4LHB S STHB=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM,"HB"))
 S W4HSB("LKH")=LK
 S W4HSB("LKHNAME")=$P(STHB,"\",8)
 I W4HSB("LKHNAME")="" S W4HSB("LKHNAME")=$$LKH^W4L(LK)
 S W4HSB("KTV")=$P(STHB,"\",9)
 I W4HSB("KTV")="" S W4HSB("KTV")=$$KTVMM^W4L(LK)
 S W4HSB("LMAM")=$J($P(STHB,"\",1),2,2)
 S W4HSB("TOT")=$J($P(STHB,"\",2),2,2)
 I CODDOC="TZ" D
 .S W4HSB("TOT")=-W4HSB("TOT")
 .S W4HSB("LMAM")=-W4HSB("LMAM")
 S W4HSB("MAM")=$J(W4HSB("TOT")-W4HSB("LMAM"),2,2)
 S W4HSB("TODATE")=$$^%L1DC($P(STHB,"\",4),1)
 S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 S W4HSB("ISSUETIME")=$S($P(STHB,"\",7):$P(STHB,"\",7),1:W4HSB("TODATE"))
 S W4HSB("HRA")=$G(@$$^W4GL("KLF")@(LK,"HP",NOM))
 I $$HMK^W4LHB S STHB=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM,"HB","HP"))
 S W4HSB("PAID")=$J($P(STHB,"\",5),2,2)
 S W4HSB("NCB")=$P(STHB,"\",6)
 D HBHI
 ;
 Q
 ;
 ;
GETINP(VD,SPK,NDOC) ;
 N DIR,STHB
 I NDOC<0 S VD="IHBZ",NDOC=-NDOC
 ;
 I VD'="ITK" D
 .S STHB=$G(@$$^W4GL("W4INP")@(SPK,VD,NDOC))
 I VD="ITK" D
 .S STHB=$G(@$$GL^W4TKDOC1@(NDOC))
 ;
 S W4HSB("SPK")=$P(STHB,"\",1)
 S W4HSB("SPKNAME")=$P(STHB,"\",2)
 S W4HSB("KTV")=$P(STHB,"\",3)
 S W4HSB("TZ")=$P(STHB,"\",15)
 S W4HSB("DESCR")=$P(STHB,"\",16)
 S W4HSB("PDATE")=$P(STHB,"\",17)
 S W4HSB("TOT")=$P(STHB,"\",6)
 S W4HSB("ISSUETIME")=$P(STHB,"\",8)
 S W4HSB("COMMENT")=$P(STHB,"\",9)
 I W4HSB("ISSUETIME")="" S W4HSB("ISSUETIME")=$ZD($H,"DD.MM.YY  24:60")
 S W4HSB("TODATE")=$P(STHB,"\",4)
 I W4HSB("TODATE")="",$G(DAT) S W4HSB("TODATE")=DAT
 S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 I 'W4HSB("PDATE") D
 .S W4HSB("PDATE")=$$PDATE(SPK,W4HSB("TODATE"))
 N MAM S MAM=$P(STHB,"\",7)
 N AHMAM S AHMAM=$P(STHB,"\",5)
 S W4HSB("MAM")=$J(MAM,2,2)
 S W4HSB("AHMAM")=$J(AHMAM,2,2)
 S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 S W4HSB("DISCNIS")=$P(STHB,"\",13)
 S W4HSB("DMSH")=$P(STHB,"\",14)
 ;
 I VD="IHBZ" D
 .S W4HSB("TOT")=-W4HSB("TOT")
 .S W4HSB("MAM")=-W4HSB("MAM")
 .S W4HSB("LMAM")=-W4HSB("LMAM")
 ;
 S W4HSB("TYPINGTIME")=$P(STHB,"\",8)
 S W4HSB("HRA")=$P(STHB,"\",9)
 S W4HSB("PAID")=$J($P(STHB,"\",19),2,2)
 S W4HSB("NPY")=$P(STHB,"\",20)
 ;
 I VD="ITK" D
 .K W4HSB("MAM"),W4HSB("LMAM")
 .S W4HSB("DEP")=$P($P(STHB,"\",3)," ")
 .S W4HSB("DEPNAME")=$P($P(STHB,"\",3)," ",2,20)
 Q
 ;
 ;
GETPY(NOM) ;
 N DIR,STHB
 ;
 S W4HSB("SPK")=$$SPK^W4PY(NOM)
 S W4HSB("SPKNAME")=$$NAME^W4PY(NOM)
 S W4HSB("KTV")=$$KTVMM^W4SPK(W4HSB("SPK"))
 S W4HSB("TZ")=$$TZ^W4SPK(W4HSB("SPK"))
 S W4HSB("PDATE")=$$PAYMDAT^W4PY(NOM)
 S W4HSB("DT")=$$^%L1DC(W4HSB("PDATE"),3)
 S W4HSB("PAID")=$$TOTPAID^W4PY(NOM)
 S W4HSB("TOT")=W4HSB("PAID")
 S W4HSB("TOPAY")=$$TOPAY^W4PY(NOM)
 ;
 S W4HSB("NPY")=""
 N N S N="" F  S N=$O(@$$^W4GL("W4TSHL")@(NOM,"H",N)) Q:N=""  D
 .N A S A=$G(^(N)) Q:'$P(A,"\",2)
 .S W4HSB("NPY")=W4HSB("NPY")_($P(A,"\",2)_":"_N)_","
 S W4HSB("NPY")=$E(W4HSB("NPY"),1,$L(W4HSB("NPY"))-1)
 ;
 Q
 ;
TOTHSB(LK,NOM) ;
 N SUM S SUM=0
 I $G(LK)="" Q 0
 I $G(NOM)="" Q 0
 N N S N="" F  S N=$O(@$$^W4GL("P1LHB")@(LK,NOM,"HB",N)) Q:N=""  I N?1N.N D
 .S SUM=SUM+$P($G(^(N)),"\",3)
 Q SUM
 ;
PDATE(SPK,DAT) ;
 Q $ZD($$^%L1DC(DAT,3)+$$SHOTEF^W4SPK(SPK),"DD.MM.YY")
 ;
DTM(DTIS) ;
 I '$G(DTIS) S DTIS=$H
 I DTIS?5N1","1N.N S DTIS=$ZD(DTIS,"DD.MM.YY  24:60")
 Q DTIS
 ;
HBHI ;
 S W4HSB("HBHI")=$P(STHB,"\",22)
 S W4HSB("HBHITOT")=$P(STHB,"\",23)
 Q

W4HSBGET
W4HSBGET(NOM,CODDOC,WHO) ; [ 06.05.26 12:56 ] [ 06.07.25 04:50 ] [ 02.07.25 11:25 ] 
 I '$G(NOM) Q
 S CODDOC=$$CODDOC^W4KOTHSB(CODDOC)
 I CODDOC="H"!(CODDOC="TZ"),NOM<0 S CODDOC="TZ",NOM=-NOM
 ;
 D PUT^%W3DEB("W4HSBGET","NOM=NOM & CODDOC=CODDOC &WHO=WHO")
 K W4HSB
 S NOM=+NOM
 ;
 I CODDOC="IPY" D GETPY(NOM) Q
 ;
 I $E(CODDOC)="I" Q:'$G(NOM)  D GETINP(CODDOC,$G(WHO),NOM) Q
 ;
 I CODDOC="HZMHC" D  Q  ; --- HAZAAT MAHIR MAHSHEV
 .N STHB
 .S STHB=$G(@$$^W4GL("HZMHC")@(NOM))
 .S W4HSB("LKH")=$P(STHB,"\",12)
 .I W4HSB("LKH")="",$P(STHB,"\",3) D
 ..S W4HSB("LKH")=$P(STHB,"\",3)
 ..I '$$DEFISLK^W4PRM S W4HSB("LKH")=$TR(W4HSB("LKH"),"-","")
 .N LK S LK=W4HSB("LKH")
 .S W4HSB("LKHNAME")=$P(STHB,"\",2)
 .I W4HSB("LKHNAME")="" S W4HSB("LKHNAME")=$$LKH^W4L(LK)
 .S W4HSB("TEL")=$P(STHB,"\",3)
 .S W4HSB("PELE")=$P(STHB,"\",4)
 .S W4HSB("KTV")=$$KTVMM^W4L(LK)
 .S W4HSB("TOT")=$P(STHB,"\",6)
 .S W4HSB("ISSUETIME")=$P(STHB,"\",8)
 .S W4HSB("TODATE")=$P(W4HSB("ISSUETIME")," ")
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .S W4HSB("MAM")=$P(STHB,"\",7)
 .S W4HSB("AHMAM")=$P(STHB,"\",5)
 .S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 ;
 I CODDOC="HZ" D  Q  ; -- MEFURETET
 .S STHB=$G(@$$^W4GL("W4ORD")@(NOM))
 .S W4HSB("LKH")=$P(STHB,"\",1)
 .S W4HSB("LKHNAME")=$P(STHB,"\",2)
 .S W4HSB("KTV")=$P(STHB,"\",3)
 .S W4HSB("EMAIL")=$$EMAIL^W4HZMST(NOM)
 .S W4HSB("PELE")=$$PELE^W4HZMST(NOM)
 .S W4HSB("TZ")=$P(STHB,"\",15)
 .S W4HSB("TOT")=$P(STHB,"\",6)
 .S W4HSB("TODATE")=$P(STHB,"\",4)
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .N MAM S MAM=$P(STHB,"\",7)
 .S W4HSB("MAM")=$J(MAM,2,2)
 .S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 .N DTIS S DTIS=$G(@$$^W4GL("W4ORD")@(NOM,"MKR"))
 .S W4HSB("OPRTRTZ")=$G(@$$^W4GL("W4ORD")@(NOM,"OPRTRTZ"))
 .I W4HSB("OPRTRTZ")="" S W4HSB("OPRTRTZ")=$$OPRTRTZ
 .S W4HSB("ISSUETIME")=$$DTM(DTIS)
 .S W4HSB("HRA")=$P(STHB,"\",9)
 .S W4HSB("MTB")=$P(STHB,"\",18)
 .S W4HSB("BELONG")=$$^W4BLNORD(NOM)
 ;
 S W4HSB("HBMAS")=""
 I CODDOC="H"!(CODDOC="HMK")!(CODDOC="TZ"),$G(NOM) D
 .S W4HSB("HBMAS")=$$GETNOM9^W4HBMAS(NOM,CODDOC)
 ;
 I CODDOC="HMK" D  Q  ; -- MEFURETET
 .N STHB S STHB=$G(@$$^W4GL("P1HB")@(NOM)) Q:STHB=""
 .N HZ S HZ=$P(STHB,"\")
 .S W4HSB("TOT")=$P(STHB,"\",5)
 .S W4HSB("DT")=$P(STHB,"\",2)
 .S W4HSB("TODATE")=$ZD(W4HSB("DT"),"DD.MM.YY")
 .N DTIS S DTIS=$P(STHB,"\",3)
 .S W4HSB("ISSUETIME")=$$DTM(DTIS)
 .S W4HSB("AHMAM")=$$MAMD^W4L(W4HSB("DT"))
 .
 .I '$$NOMAM^W4PRM D
 ..S W4HSB("LMAM")=W4HSB("TOT")*100/(100+W4HSB("AHMAM"))
 ..S W4HSB("MAM")=W4HSB("TOT")-W4HSB("LMAM")
 .
 .I $$NOMAM^W4PRM,HZ D
 ..N KF S KF=$G(@$$^W4ORD@(HZ,"KMAM"))
 ..I 'KF!(KF=1) D  Q
 ...S W4HSB("LMAM")=W4HSB("TOT")*100/(100+W4HSB("AHMAM"))
 ...S W4HSB("MAM")=W4HSB("TOT")-W4HSB("LMAM")
 ..
 ..N OPRTRTZ S OPRTRTZ="" 
 ..I $G(HZ),$G(@$$^W4ORD@(HZ,"OPRTRTZ")) S OPRTRTZ=^("OPRTRTZ")
 ..S W4HSB("OPRTRTZ")=OPRTRTZ
 ..I W4HSB("OPRTRTZ")="" S W4HSB("OPRTRTZ")=$$OPRTRTZ
 ..N TOT2MAM S TOT2MAM=W4HSB("TOT")*KF
 ..S W4HSB("LMAM")=TOT2MAM*100/(100+W4HSB("AHMAM"))
 ..S W4HSB("MAM")=TOT2MAM-W4HSB("LMAM")
 .
 .S W4HSB("LMAM")=$J(W4HSB("LMAM"),2,2)
 .S W4HSB("MAM")=$J(W4HSB("MAM"),2,2)
 ;
 I CODDOC="HZMH" G W4DOC
 ;
 N KLIN,LK,LK0
 S KLIN=$$^W4GL("KLIN")_"("""_CODDOC_""")"
 S LK0=$G(@KLIN@(NOM)) Q:LK0=""
 N LK S LK=$P(LK0,"+")
 S LK=$P(LK,"W")
 S LK=$P(LK,"^")
 ;
 I LK0["+" D  Q  ; -- AUTO
 .N NOM1 S NOM1=NOM I CODDOC="TZ" S NOM1=-NOM
 .N STHB,STHBPR
 .S STHB=$G(@$$^W4GL("P1LHB")@(LK,NOM1))
 .S STHBPR=$G(@$$^W4GL("P1LHB")@(LK,NOM1,"PR"))
 .
 .S W4HSB("IGUL")=$G(@$$^W4GL("P1LHB")@(LK,NOM1,"IGUL"))
 .
 .N DTHB S DTHB=$P(STHB,"\",8)
 .I $D(@$$^W4GL("P1LHB")@(LK,NOM1,"AHMAM"))#2 D
 ..S W4HSB("AHMAM")=$G(@$$^W4GL("P1LHB")@(LK,NOM1,"AHMAM"))
 .I '$D(@$$^W4GL("P1LHB")@(LK,NOM1,"AHMAM"))#2 D
 ..S W4HSB("AHMAM")=$$MAMD^W4L(DTHB)
 .N AHMAM S AHMAM=$G(W4HSB("AHMAM"))
 .S W4HSB("LKH")=LK
 .S W4HSB("LKHNAME")=$P(STHBPR,"\",1)
 .I W4HSB("LKHNAME")="" S W4HSB("LKHNAME")=$$LKH^W4L(LK)
 .S W4HSB("KTV")=$P(STHBPR,"\",2)
 .I W4HSB("KTV")="" S W4HSB("KTV")=$$KTVMM^W4L(LK)
 .S W4HSB("TZ")=$P(STHBPR,"\",3)
 .I W4HSB("TZ")="" S W4HSB("TZ")=$$TZ^W4L(LK)
 .S W4HSB("TOT")=$P(STHB,"\",4)
 .S W4HSB("TODATE")=$ZD(DTHB,"DD.MM.YY")
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .S W4HSB("SHUMMAM")=$$SHUMMAM(LK,NOM1) ;$G(@$$^W4GL("P1LHB")@(LK,NOM1,"HB","SHUMMAM"))
 .I W4HSB("SHUMMAM")="" S W4HSB("SHUMMAM")=W4HSB("TOT")
 .;;S W4HSB("LMAM")=$J(W4HSB("TOT")*100/(100+AHMAM),2,2)
 .S W4HSB("MAM")=$J(W4HSB("SHUMMAM")*W4HSB("AHMAM")/(100+W4HSB("AHMAM")),2,2)
 .S W4HSB("LMAM")=W4HSB("TOT")-W4HSB("MAM")
 .S W4HSB("ISSUETIME")=$P(STHB,"\",3)
 .S W4HSB("PAID")=$J($P(STHB,"\",5),2,2)
 .S W4HSB("NCB")=$P(STHB,"\",6)
 .S W4HSB("OPRTRTZ")=$G(@$$^W4GL("P1LHB")@(LK,NOM1,"OPRTRTZ"))
 .I W4HSB("OPRTRTZ")="" S W4HSB("OPRTRTZ")=$$OPRTRTZ
 .D HBHI
 ;
W4DOC ;
 I $G(LK0)["W"!(CODDOC="HZMH") D  Q  ; -- MEFURETET
 .N STHB,DOC S DOC=NOM
 .I CODDOC'="HZMH" S DOC=+$P(LK0,"W",2)
 .Q:'DOC
 .S STHB=$G(@$$^W4GL("W4DOC")@(DOC))
 .S W4HSB("COMMENT")=$P(STHB,"\",9)
 .S W4HSB("LKH")=$P(STHB,"\",1)
 .S W4HSB("LKHNAME")=$P(STHB,"\",2)
 .S W4HSB("KTV")=$P(STHB,"\",3)
 .S W4HSB("TODATE")=$P(STHB,"\",4)
 .S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 .S W4HSB("TOT")=$P(STHB,"\",6)
 .N MAM S MAM=$P(STHB,"\",7)
 .S W4HSB("MAM")=$J(MAM,2,2)
 .S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 .N DTIS S DTIS=$G(@$$^W4GL("W4DOC")@(DOC,CODDOC,"MKR"))
 .S W4HSB("ISSUETIME")=$$DTM(DTIS) ;  $P(STHB,"\",8)
 .S W4HSB("HRA")=$P(STHB,"\",9)
 .S W4HSB("TZ")=$P(STHB,"\",15)
 .S W4HSB("MTB")=$P(STHB,"\",18)
 .S W4HSB("PAID")=$J($P(STHB,"\",19),2,2)
 .S W4HSB("NCB")=$P(STHB,"\",20)
 .I W4HSB("NCB")?.P D
 ..S W4HSB("PAID")=0
 ..S $P(@$$^W4GL("W4DOC")@(DOC),"\",19)=0
 .S W4HSB("PRKUP")=$P(STHB,"\",21)
 .D HBHI
 .I CODDOC="HZMH" D
 ..S W4HSB("NHB")=""
 ..N NDOCHB S NDOCHB=$P(STHB,"\",20) Q:'NDOCHB
 ..S NHB=$G(@$$^W4GL("W4DOC")@(NDOCHB,"H")) I NHB S W4HSB("NHB")=NHB Q
 ..S NHB=$G(@$$^W4GL("W4DOC")@(NDOCHB,"TM")) I NHB S W4HSB("NHB")=NHB_"T" Q
 ;
 ;------------- YADANI
 N STHB
 ;
 S STHB=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM))
 N %ARG I CODDOC="HMK" S %ARG("VD")="HMK"
 I $$HMK^W4LHB S STHB=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM,"HB"))
 S W4HSB("LKH")=LK
 S W4HSB("LKHNAME")=$P(STHB,"\",8)
 I W4HSB("LKHNAME")="" S W4HSB("LKHNAME")=$$LKH^W4L(LK)
 S W4HSB("KTV")=$P(STHB,"\",9)
 I W4HSB("KTV")="" S W4HSB("KTV")=$$KTVMM^W4L(LK)
 S W4HSB("LMAM")=$J($P(STHB,"\",1),2,2)
 S W4HSB("TOT")=$J($P(STHB,"\",2),2,2)
 I CODDOC="TZ" D
 .S W4HSB("TOT")=-W4HSB("TOT")
 .S W4HSB("LMAM")=-W4HSB("LMAM")
 S W4HSB("TZ")=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM,"TZ"))
 I W4HSB("TZ")="" S W4HSB("TZ")=$$TZ^W4L(LK)
 S W4HSB("MAM")=$J(W4HSB("TOT")-W4HSB("LMAM"),2,2)
 S W4HSB("TODATE")=$$^%L1DC($P(STHB,"\",4),1)
 S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 S W4HSB("ISSUETIME")=$S($P(STHB,"\",7):$P(STHB,"\",7),1:W4HSB("TODATE"))
 S W4HSB("HRA")=$G(@$$^W4GL("KLF")@(LK,"HP",NOM))
 I $$HMK^W4LHB S STHB=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM,"HB","HP"))
 S W4HSB("PAID")=$J($P(STHB,"\",5),2,2)
 S W4HSB("NCB")=$P(STHB,"\",6)
 S W4HSB("OPRTRTZ")=$G(@$$^W4GL("KLF")@(LK,CODDOC,NOM,"OPRTRTZ"))
 I W4HSB("OPRTRTZ")="" S W4HSB("OPRTRTZ")=$$OPRTRTZ
 D HBHI
 ;
 Q
 ;
 ;
GETINP(VD,SPK,NDOC) ;
 N DIR,STHB
 I NDOC<0 S VD="IHBZ",NDOC=-NDOC
 ;
 I VD'="ITK" D
 .S STHB=$G(@$$^W4GL("W4INP")@(SPK,VD,NDOC))
 I VD="ITK" D
 .S STHB=$G(@$$GL^W4TKDOC1@(NDOC))
 ;
 S W4HSB("SPK")=$P(STHB,"\",1)
 S W4HSB("SPKNAME")=$P(STHB,"\",2)
 S W4HSB("KTV")=$P(STHB,"\",3)
 S W4HSB("TZ")=$P(STHB,"\",15)
 S W4HSB("DESCR")=$P(STHB,"\",16)
 S W4HSB("PDATE")=$P(STHB,"\",17)
 S W4HSB("TOT")=$P(STHB,"\",6)
 S W4HSB("ISSUETIME")=$P(STHB,"\",8)
 S W4HSB("COMMENT")=$P(STHB,"\",9)
 I W4HSB("ISSUETIME")="" S W4HSB("ISSUETIME")=$ZD($H,"DD.MM.YY  24:60")
 S W4HSB("TODATE")=$P(STHB,"\",4)
 I W4HSB("TODATE")="",$G(DAT) S W4HSB("TODATE")=DAT
 S W4HSB("DT")=$$^%L1DC(W4HSB("TODATE"),3)
 I 'W4HSB("PDATE") D
 .S W4HSB("PDATE")=$$PDATE(SPK,W4HSB("TODATE"))
 N MAM S MAM=$P(STHB,"\",7)
 N AHMAM S AHMAM=$P(STHB,"\",5)
 S W4HSB("MAM")=$J(MAM,2,2)
 S W4HSB("AHMAM")=$J(AHMAM,2,2)
 S W4HSB("LMAM")=$J(W4HSB("TOT")-W4HSB("MAM"),2,2)
 S W4HSB("DISCNIS")=$P(STHB,"\",13)
 S W4HSB("DMSH")=$P(STHB,"\",14)
 ;
 I VD="IHBZ" D
 .S W4HSB("TOT")=-W4HSB("TOT")
 .S W4HSB("MAM")=-W4HSB("MAM")
 .S W4HSB("LMAM")=-W4HSB("LMAM")
 ;
 S W4HSB("TYPINGTIME")=$P(STHB,"\",8)
 S W4HSB("HRA")=$P(STHB,"\",9)
 S W4HSB("PAID")=$J($P(STHB,"\",19),2,2)
 ; 
 S W4HSB("NPY")=$P(STHB,"\",20)
 ;
 I W4HSB("NPY")?.P,'W4HSB("PAID"),VD="IHB" D PY2HB(VD,SPK,NDOC)
 ;
 I W4HSB("NPY")?.P D
 .S W4HSB("PAID")=0
 .I VD'="ITK",$D(@$$^W4GL("W4INP")@(SPK,VD,NDOC))=11 D
 ..S $P(@$$^W4GL("W4INP")@(SPK,VD,NDOC),"\",19)=0
 ;
 I VD="ITK" D
 .K W4HSB("MAM"),W4HSB("LMAM")
 .S W4HSB("DEP")=$P($P(STHB,"\",3)," ")
 .S W4HSB("DEPNAME")=$P($P(STHB,"\",3)," ",2,20)
 Q
 ;
 ;
GETPY(NOM) ;
 N DIR,STHB
 ;
 S W4HSB("SPK")=$$SPK^W4PY(NOM)
 S W4HSB("SPKNAME")=$$NAME^W4PY(NOM)
 S W4HSB("KTV")=$$KTVMM^W4SPK(W4HSB("SPK"))
 S W4HSB("TZ")=$$TZ^W4SPK(W4HSB("SPK"))
 S W4HSB("PDATE")=$$PAYMDAT^W4PY(NOM)
 S W4HSB("DT")=$$^%L1DC(W4HSB("PDATE"),3)
 S W4HSB("PAID")=$$TOTPAID^W4PY(NOM)
 S W4HSB("TOT")=W4HSB("PAID")
 S W4HSB("TOPAY")=$$TOPAY^W4PY(NOM)
 ;
 S W4HSB("NPY")=""
 N N S N="" F  S N=$O(@$$^W4GL("W4TSHL")@(NOM,"H",N)) Q:N=""  D
 .N A S A=$G(^(N)) Q:'$P(A,"\",2)
 .S W4HSB("NPY")=W4HSB("NPY")_($P(A,"\",2)_":"_N)_","
 S W4HSB("NPY")=$E(W4HSB("NPY"),1,$L(W4HSB("NPY"))-1)
 ;
 Q
 ;
TOTHSB(LK,NOM) ;
 N SUM S SUM=0
 I $G(LK)="" Q 0
 I $G(NOM)="" Q 0
 N N S N="" F  S N=$O(@$$^W4GL("P1LHB")@(LK,NOM,"HB",N)) Q:N=""  I N?1N.N D
 .S SUM=SUM+$P($G(^(N)),"\",3)
 Q SUM
 ;
PDATE(SPK,DAT) ;
 Q $ZD($$^%L1DC(DAT,3)+$$SHOTEF^W4SPK(SPK),"DD.MM.YY")
 ;
DTM(DTIS) ;
 I '$G(DTIS) S DTIS=$H
 I DTIS?5N1","1N.N S DTIS=$ZD(DTIS,"DD.MM.YY  24:60")
 Q DTIS
 ;
HBHI ;
 N NCB
 S W4HSB("HBHI")=$P(STHB,"\",22)
 S W4HSB("HBHITOT")=$P(STHB,"\",23)
 N HBHI S HBHI=W4HSB("HBHI")
 ;
 I CODDOC="H",HBHI,'$G(W4HSB("PAID")) D
 .N HICB S HICB=$$HICB(HBHI,$G(W4HSB("NCB")),"HI")
 .S W4HSB("NCB")=$P(HICB,"\")
 .S W4HSB("PAID")=$P(HICB,"\",2)
 ;
 I CODDOC="HI",HBHI,'$G(W4HSB("PAID")) D
 .N HICB S HICB=$$HICB(HBHI,$G(W4HSB("NCB")),"H")
 .S W4HSB("NCB")=$P(HICB,"\")
 .S W4HSB("PAID")=$P(HICB,"\",2)
 Q 
 ;
HICB(HBHI,NCB,CODD)
 N (JB,HBHI,NCB,CODD)
 S NCB=$G(NCB),PAID=0
 ;
 F I=1:1:$L(HBHI,",") D
 .S NOM=$P(HBHI,",",I)
 .N KLIN,LK,LK0,STHB
 .S KLIN=$$^W4GL("KLIN")_"("""_CODD_""")"
 .S LK0=$G(@KLIN@(NOM)) Q:LK0=""
 .N LK S LK=$P(LK0,"+")
 .S LK=$P(LK,"W")
 .S LK=$P(LK,"^")
 .;
 .I CODD="H"!(CODD="TZ") D
 ..I LK0["+" D  Q
 ...N NOM1 S NOM1=NOM I CODD="TZ",NOM<0 S NOM1=-NOM
 ...N STHB
 ...S STHB=$G(@$$^W4GL("P1LHB")@(LK,NOM1))
 ...S W4HSB("PAID")=$J($P(STHB,"\",5),2,2)
 ...S W4HSB("NCB")=$P(STHB,"\",6)
 ..
 ..I $G(LK0)["W" D  Q  ; -- MEFURETET
 ...N DOC S DOC=NOM
 ...Q:'DOC
 ...S STHB=$G(@$$^W4GL("W4DOC")@(DOC))
 ...S W4HSB("PAID")=$J($P(STHB,"\",19),2,2)
 ...S W4HSB("NCB")=$P(STHB,"\",20)
 ..;
 ..S STHB=$G(@$$^W4GL("KLF")@(LK,CODD,NOM))
 ..S W4HSB("PAID")=$J($P(STHB,"\",5),2,2)
 ..S W4HSB("NCB")=$P(STHB,"\",6)
 .;
 .I CODD="HI" D
 ..S STHB=$G(@$$^W4GL("KLF")@(LK,CODD,NOM))
 ..S W4HSB("PAID")=$J($P(STHB,"\",5),2,2)
 ..S W4HSB("NCB")=$P(STHB,"\",6)
 .;
 .I $G(W4HSB("NCB")) D
 ..I (","_NCB_",")[(","_W4HSB("NCB")_",") Q
 ..S NCB=NCB_","_W4HSB("NCB")
 .
 .S PAID=PAID+$G(W4HSB("PAID"))
 ;
 I $E(NCB)="," S NCB=$E(NCB,2,$L(NCB))
 Q NCB_"\"_PAID
 ;
SHUMMAM(LK,NOM) ; 
 N SMAM
 S SMAM=$G(@$$^W4GL("P1LHB")@(LK,NOM,"HB","SHUMMAM"))
 N N S N=1 F  S N=$O(@$$^W4GL("P1LHB")@(LK,NOM,"HB",N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .S SMAM=SMAM+$P(A,"\",3)
 Q SMAM 
 ;
 ;
PY2HB(VD,SPK,NDOC)
 N SP,STHB
 S STHB=$G(@$$^W4GL("W4INP")@(SPK,VD,NDOC))
 S SP=$P(STHB,"\")
 N DATHB S DATHB=$P(STHB,"\",4)
 N DTHB S DTHB=$$^%L1DC(DATHB,3)
 I SP'=SPK Q
 ;
 N N,N1,SUM,SSUM,PY S PY="",SSUM=0
 ;
 S N="" F  S N=$O(@$$^W4GL("W4TSHL")@(N)) Q:N=""  D
 .N ST,SP S ST=$G(^(N))
 .S SP=$P(ST,"\") Q:SP'=SPK
 .N DATTS S DATTS=$P(ST,"\",2)
 .N DTTS S DTTS=$$^%L1DC(DATTS,3)
 .I DTTS<(DTHB-180) Q
 .I $D(^(N,"H",NDOC)) D
 ..S SUM=+$G(^(NDOC))
 ..S PY=PY_SUM_":"_N_",",SSUM=SSUM+SUM
 ;
 I $L(PY)>1 D
 .S PY=$E(PY,1,$L(PY)-1)
 .S W4HSB("NPY")=PY
 .S W4HSB("PAID")=SSUM
 .S $P(@$$^W4GL("W4INP")@(SPK,VD,NDOC),"\",19)=SSUM
 .S $P(@$$^W4GL("W4INP")@(SPK,VD,NDOC),"\",20)=PY
 ;
 Q
 ;
 ;
OPRTRTZ() ; 
 N OPRTRTZ S OPRTRTZ=$G(@$$^W4PL@("OPRTRTZ")) 
 I OPRTRTZ="" D
 .N N S N=99999999
 .F  S N=$O(@$$^W4GL("W4HBMAS")@("H",N),-1) Q:N=""  D  Q:OPRTRTZ
 ..S OPRTRTZ=$G(^(N,"OPRTRTZ")) 
 Q OPRTRTZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSBRKZ
W4HSBRKZ(GLB,PR) ;; --- GLB -> ^VRM1($J)   [ 19.01.26 05:30 ] [ 18.01.26 19:47 ] [ 10.01.26 20:48 ] 
 ;-- PR="Q" --> LEFI KAMUT
 N (JB,%ARG,%REM,GLB,PR,HZM)
 D ^W4IN
 K @$$^W4MAIN("VRM0"),@$$^W4MAIN("VRM1")
 N PAR,SUG,PAR1,MH,KAM,TSF,SUM,HRP,CA,PARV,AH,NMPAR
 I $G(PR)="Q" G RKZQ
 I $G(PR)="Q1" G RKZQ1
 ;
 F N1=1:1 Q:'$D(@GLB@(N1))  D
 .D G^W4SCV(HZSCR,^(N1))
 .S NMPAR=$P($G(@GLB@(N1)),"\",3)
 .Q:PAR'>0  Q:$D(@$$^W4GL("P1BLRD")@(PAR))
 .S MH=$J(MH,2,2)
 .S PARMH=PAR_"^"_MH
 .
 .I SUM!$$HINAM!$$OTH($G(HRP)),$E($G(@GLB@(N1+1)))'="-" D
 ..I '$D(@$$^W4MAIN("VRM0")@("P",PARMH)) D
 ...S @$$^W4MAIN("VRM0")@("S",N1)="^"_MH
 ..S @$$^W4MAIN("VRM0")@("P",PARMH)=$G(@$$^W4MAIN("VRM0")@("P",PARMH))+KAM
 .;
 .I SUM!$$HINAM!$$OTH($G(HRP)),$E($G(@GLB@(N1+1)))="-" D
 ..N AH S AH=$P(^(N1+1),"\")
 ..N PARMHAH S PARMHAH=PAR_"^"_MH_AH
 ..I '$D(@$$^W4MAIN("VRM0")@("P",PARMHAH)) D
 ...S @$$^W4MAIN("VRM0")@("S",N1)="^"_MH_AH
 ...S @$$^W4MAIN("VRM0")@("S",N1+1)=""
 ..S @$$^W4MAIN("VRM0")@("P",PARMHAH)=$G(@$$^W4MAIN("VRM0")@("P",PARMHAH))+KAM
 .
 .
 .;-------------------------------- TOSAFOT BETASHLUM
 .I TSF!$$HINAM,$E($G(@GLB@(N1+1)))'="-" D
 ..S N2="" F  S N2=$O(@GLB@(N1,N2)) Q:N2=""  D
 ...N MHT S MHT=$P($G(^(N2)),"\",2)
 ...N QN2 S QN2=$$DEFCT($G(@GLB@(N1)),$G(@GLB@(N1,N2)))
 ...I $D(^(N2))<10 D  Q
 ....Q:'MHT&'$$HINAM  ;-- TOSAFOT HINAM
 ....S @$$^W4MAIN("VRM0")@("P",PARMH,N2)=$G(@$$^W4MAIN("VRM0")@("P",PARMH,N2))+QN2
 ....I '$D(@$$^W4MAIN("VRM0")@("T",PARMH,N2)) D  Q
 .....S @$$^W4MAIN("VRM0")@("T",PARMH,N2)=@GLB@(N1,N2)
 ....I $D(@$$^W4MAIN("VRM0")@("T",PARMH,N2)) D
 .....S $P(@$$^W4MAIN("VRM0")@("T",PARMH,N2),"\",$$POS(N2))=$P(@$$^W4MAIN("VRM0")@("T",PARMH,N2),"\",$$POS(N2))+$P(@GLB@(N1,N2),"\",$$POS(N2))
 ...
 ...S CMT30=1,NM3="",CD3=""
 ...S N3="" F  S N3=$O(@GLB@(N1,N2,N3)) Q:N3=""  D
 ....N ST3 S ST3=$G(^(N3)) Q:ST3?.P
 ....N MH3 S MH3=$P(ST3,"\",7)
 ....I $P(ST3,"\"),'MH3,MHT D
 .....S $P(^(N3),"\",7)=MHT,MH3=MHT,ST3=^(N3) ;-- NEW
 ....S MH3=$P(ST3,"\",7)
 ....S NM3="",CD3=""
 ....N CMT3 I $P(ST3,"\") D
 .....S CMT3=$P(ST3,"\",3)
 .....N QN3 S QN3=$S($G(QN2)<0:-1,1:1)
 .....I 'CMT3,$G(QN2) S $P(^(N3),"\",3)=QN3,CMT3=QN3,ST3=^(N3) ;-- NEW
 .....S CMT30=CMT3,CD3=$P(ST3,"\"),NM3=$P(ST3,"\",2)
 ....I $P(ST3,"\",4) D
 .....;;S CMT3=CMT30,CD3=$P(ST3,"\",4),NM3=$P(ST3,"\",5)
 .....S CMT3=$P(ST3,"\",3),CD3=$P(ST3,"\",4),NM3=$P(ST3,"\",5)
 ....I 'MH3,'$$HINAM Q  ; -- MAHIR
 ....Q:'CD3
 ....S @$$^W4MAIN("VRM0")@("P",PARMH,CD3)=$G(@$$^W4MAIN("VRM0")@("P",PARMH,CD3))+CMT3
 ....I '$D(@$$^W4MAIN("VRM0")@("T",PARMH,CD3)) D  Q
 .....N HNT S HNT=$G(@GLB@(N1,N2,N3,"HNT")) I HNT S MH3=HNT
 .....S @$$^W4MAIN("VRM0")@("T",PARMH,CD3)=NM3_"\"_MH3_"\"_CMT3
 ....I $D(@$$^W4MAIN("VRM0")@("T",PARMH,CD3)) D
 .....S $P(@$$^W4MAIN("VRM0")@("T",PARMH,CD3),"\",3)=$P(@$$^W4MAIN("VRM0")@("T",PARMH,CD3),"\",3)+CMT3
 .;
 .I TSF!$$HINAM,$E($G(@GLB@(N1+1)))="-" D
 ..N AH S AH=$P(^(N1+1),"\")
 ..N PARMHAH S PARMHAH=PARMH_AH
 ..
 ..S N2="" F  S N2=$O(@GLB@(N1,N2)) Q:N2=""  D
 ...N MHT S MHT=$P($G(^(N2)),"\",2)
 ...Q:'MHT&'$$HINAM ; -- MAHIR
 ...S @$$^W4MAIN("VRM0")@("P",PARMHAH,N2)=$G(@$$^W4MAIN("VRM0")@("P",PARMHAH,N2))+$$DEFCT(@GLB@(N1),@GLB@(N1,N2))
 ...I '$D(@$$^W4MAIN("VRM0")@("T",PARMHAH,N2)) D  Q
 ....S @$$^W4MAIN("VRM0")@("T",PARMHAH,N2)=@GLB@(N1,N2)
 ...I $D(@$$^W4MAIN("VRM0")@("T",PARMHAH,N2)) D
 ....S $P(@$$^W4MAIN("VRM0")@("T",PARMHAH,N2),"\",$$POS(N2))=$P(@$$^W4MAIN("VRM0")@("T",PARMHAH,N2),"\",$$POS(N2))+$P(@GLB@(N1,N2),"\",$$POS(N2))
 ...
 ...S CMT30=1,NM3=""
 ...S N3="" F  S N3=$O(@GLB@(N1,N2,N3)) Q:N3=""  D
 ....N ST3 S ST3=$G(^(N3)) Q:ST3?.P
 ....N MH3 S MH3=$P(ST3,"\",7)
 ....I $P(ST3,"\"),'MH3,MHT D
 .....S $P(^(N3),"\",7)=MHT,MH3=MHT,ST3=^(N3) ;-- NEW
 ....S MH3=$P(ST3,"\",7)
 ....S NM3="",CD3=""
 ....N CMT3 I $P(ST3,"\") D
 .....S CMT3=$P(ST3,"\",3)
 .....N QN3 S QN3=$S($G(QN2)<0:-1,1:1)
 .....I 'CMT3,$G(QN2) S $P(^(N3),"\",3)=QN3,CMT3=QN3,ST3=^(N3) ;-- NEW
 .....S CMT30=CMT3,CD3=$P(ST3,"\"),NM3=$P(ST3,"\",2)
 ....I $P(ST3,"\",4) D
 .....S CMT3=CMT30,CD3=$P(ST3,"\",4),NM3=$P(ST3,"\",5)
 ....I 'MH3&'$$HINAM Q  ; -- MAHIR
 ....Q:'CD3
 ....S @$$^W4MAIN("VRM0")@("P",PARMHAH,CD3)=$G(@$$^W4MAIN("VRM0")@("P",PARMHAH,CD3))+CMT3
 ....I '$D(@$$^W4MAIN("VRM0")@("T",PARMHAH,CD3)) D  Q
 .....N HNT S HNT=$G(@GLB@(N1,N2,N3,"HNT")) I HNT S MH3=HNT
 .....S @$$^W4MAIN("VRM0")@("T",PARMHAH,CD3)=NM3_"\"_MH3_"\"_CMT3
 ....I $D(@$$^W4MAIN("VRM0")@("T",PARMHAH,CD3)) D
 .....S $P(@$$^W4MAIN("VRM0")@("T",PARMHAH,CD3),"\",3)=$P(@$$^W4MAIN("VRM0")@("T",PARMHAH,CD3),"\",3)+CMT3
 ;
 ; ----------------------------------------------------
 ;
 ;
 N PARV,AH,CA,MAC1,MAC2,N1,N2,MH,SUMS,SUMT
 ;
 F N1=1:1 Q:'$D(@GLB@(N1))  D
 .D G^W4SCV(HZSCR,^(N1)) S MH=$J(MH,2,2) Q:PAR=""
 .
 .I PAR>0,'$D(@$$^W4GL("P1BLRD")@(PAR)),$D(@$$^W4MAIN("VRM0")@("S",N1)) D  Q
 ..S PARV=PAR,AH=0
 ..I $L($G(@$$^W4MAIN("VRM0")@("S",N1))) D
 ...N MHAH S MHAH=$G(^(N1))
 ...S PARV=PAR_MHAH,AH=$P(MHAH,"-",2)
 ...I $P($P(MHAH,"-"),"^",2)="" S AH=0
 ..
 ..S CA=$G(@$$^W4MAIN("VRM0")@("P",PARV)) Q:'CA  ;--- BDIKA IM ^VRM0 KAJAM
 ..
 ..K @$$^W4MAIN("VRM1")@(N1)
 ..S MAC1=$E(GLB,1,$L(GLB)-1)_",N1)",MAC2=$$BG^W4MAIN("VRM1")_"N1)"
 ..D ^%S1GC1
 ..
 ..I AH D
 ...S MAC1=$E(GLB,1,$L(GLB)-1)_",N1+1)"
 ...S MAC2=$$BG^W4MAIN("VRM1")_"N1+1)" D ^%S1GC1
 ..
 ..S N2="" F  S N2=$O(@$$^W4MAIN("VRM1")@(N1,N2)) Q:N2=""  D
 ...I '$P(^(N2),"\",2)!'$P(^(N2),"\",$$POS(N2)) K ^(N2) ;-- RAK TOSAFOT BTASHLUM
 ..
 ..S $P(@$$^W4MAIN("VRM1")@(N1),"\",5)=CA S SUMS=CA*MH
 ..
 ..;---- TOSAFOT
 ..S N2="",SUMT=0
 ..F  S N2=$O(@$$^W4MAIN("VRM0")@("P",PARV,N2)) Q:N2=""  D
 ...S MHT=$P(@$$^W4MAIN("VRM0")@("T",PARV,N2),"\",2)
 ...I 'MHT,'$$HINAM K @$$^W4MAIN("VRM1")@(N1,N2) Q  ;- RAK TOSAFOT BTASHLUM
 ...S CT=@$$^W4MAIN("VRM0")@("P",PARV,N2)
 ...I 'CT K @$$^W4MAIN("VRM1")@(N1,N2) Q
 ...S SUMT=SUMT+(MHT*CT)
 ...S @$$^W4MAIN("VRM1")@(N1,N2)=$G(@$$^W4MAIN("VRM0")@("T",PARV,N2))
 ...I @$$^W4MAIN("VRM1")@(N1,N2)'["\+\" D
 ....S $P(@$$^W4MAIN("VRM1")@(N1,N2),"\",$$POS(N2))=CT
 ..
 ..S SUMS=SUMS+SUMT
 ..S $P(@$$^W4MAIN("VRM1")@(N1),"\",6)=SUMT
 ..S $P(@$$^W4MAIN("VRM1")@(N1),"\",7)=SUMS
 ..I AH S $P(@$$^W4MAIN("VRM1")@(N1+1),"\",7)=-SUMS*AH*.01
 ..K @$$^W4MAIN("VRM0")@("P",PARV) ;-- LESAYEM IM PARIT ZE
 .;
 .I $L(PAR),$$PAR0(PAR)!($E(PAR)="M")!$D(@$$^W4GL("P1BLRD")@(PAR)),SUM!$$HINAM!$$OTH($G(HRP)) D
 ..S MAC1=$E(GLB,1,$L(GLB)-1)_",N1)",MAC2=$$BG^W4MAIN("VRM1")_"N1)" D ^%S1GC1
 ..I $E($G(@GLB@(N1+1)))="-",$P(^(N1+1),"\",7) D
 ...S MAC1=$E(GLB,1,$L(GLB)-1)_",N1+1)",MAC2=$$BG^W4MAIN("VRM1")_"N1+1)" D ^%S1GC1
 .Q
 ;
 K @$$^W4MAIN("VRM0")
 Q
 ;
 ;
DEFCT(ST,ST2) ;
 N CT,SUGPZ S SUGPZ=$$SUG^W4PIZZA($P(ST,"\",3))
 S CT=$P(ST2,"\",3)
 I SUGPZ,'CT S CT=$L($P(ST2,"\",3,6),"+")-1
 Q CT
 ;
RKZQ ;------------ RIKUZ LEFI KAMUT
 F N1=1:1 Q:'$D(@GLB@(N1))  D
 .D G^W4SCV(HZSCR,^(N1))
 .Q:$G(PAR)=""
 .I $$PAR0(PAR)!($E(PAR)="M")!$D(@$$^W4GL("P1BLRD")@(PAR))!$$OTH(HRP) D  Q
 ..S @$$^W4MAIN("VRM0")@("P",PAR_"-"_N1)=$G(@$$^W4MAIN("VRM0")@("P",PAR_"-"_N1))+KAM
 ..S @$$^W4MAIN("VRM0")@("N",PAR_"-"_N1)=$P($G(@GLB@(N1)),"\",3)
 .
 .Q:PAR'>0
 .
 .I $D(@GLB@(N1))<10 D  Q
 ..S @$$^W4MAIN("VRM0")@("P",PAR)=$G(@$$^W4MAIN("VRM0")@("P",PAR))+KAM
 ..S @$$^W4MAIN("VRM0")@("N",PAR)=$P($G(@GLB@(N1)),"\",3)
 .;
 .I $D(@GLB@(N1))>10,'$$^W4EZAT(PAR) D  Q
 ..S A=$G(@GLB@(N1))
 ..S CODP=$P(A,"\")
 ..S N2="" F  S N2=$O(@GLB@(N1,N2)) Q:N2=""  S CODP=CODP_"^"_N2
 ..S @$$^W4MAIN("VRM0")@("P",CODP)=$G(@$$^W4MAIN("VRM0")@("P",CODP))+$P(A,"\",5)
 ..S @$$^W4MAIN("VRM0")@("N",CODP)=$P($G(@GLB@(N1)),"\",3)
 ..
 ..S N2="" F  S N2=$O(@GLB@(N1,N2)) Q:N2=""  D
 ...S ST=$G(^(N2))
 ...S KAMT=$P(ST,"\",3)
 ...S @$$^W4MAIN("VRM0")@("P",CODP,N2)=$G(@$$^W4MAIN("VRM0")@("P",CODP,N2))+KAMT
 ...S @$$^W4MAIN("VRM0")@("N",CODP,N2)=$P($G(@GLB@(N1,N2)),"\")
 .
 .I $D(@GLB@(N1))>10,$$^W4EZAT(PAR) D RKZA(GLB,N1)
 Q
 ;
RKZA(GLB,N1) ;
 N N2,ST,CODP,KAMT,I
 S N2="" F  S N2=$O(@GLB@(N1,N2)) Q:N2=""  D
 .;
 .I $D(@GLB@(N1,N2))<10 D  Q
 ..S ST=$G(^(N2))
 ..S CODP=$S(N2["A-":$P(N2,"-",3),1:N2)
 ..S KAMT=$P(ST,"\",$S(N2["A-":2,1:3))
 ..S @$$^W4MAIN("VRM0")@("P",CODP)=$G(@$$^W4MAIN("VRM0")@("P",CODP))+KAMT
 ..S @$$^W4MAIN("VRM0")@("N",CODP)=$P($G(@GLB@(N1,N2)),"\")
 .
 .I $D(@GLB@(N1,N2))>9 D
 ..S ST=$G(^(N2)),BG=1,EC=0,CODP=""
CYC3 ..S I=BG-1 F  S I=$O(@GLB@(N1,N2,I)) Q:I=""  D:I  Q:EC
 ...N A S A=$G(^(I))
 ...I I=BG S CODP=$P(A,"\") Q
 ...I '$P(A,"\"),$P(A,"\",4) S CODP=CODP_"^"_$P(A,"\",4)
 ...;
 ...I $P(A,"\"),I>BG D EC3 S EC=1,BG=I Q
 ..I EC S EC=0 G CYC3
 ..D EC3
 Q
 ;
 ;
EC3 ;
 Q:CODP=""
 S KAMT=$P($G(@GLB@(N1,N2,BG)),"\",3)
 ;
 S @$$^W4MAIN("VRM0")@("P",CODP)=$G(@$$^W4MAIN("VRM0")@("P",CODP))+KAMT
 S @$$^W4MAIN("VRM0")@("N",CODP)=$P($G(@GLB@(N1,N2,BG)),"\",2)
 S I1=BG F  S I1=$O(@GLB@(N1,N2,I1)) Q:I1=""  Q:I1'<I&I  S A1=$G(@GLB@(N1,N2,I1)) D
 .S CT=$P(A1,"\",4) Q:CT=""
 .S @$$^W4MAIN("VRM0")@("P",CODP,CT)=$G(@$$^W4MAIN("VRM0")@("P",CODP,CT))+$S(KAMT>0:1,KAMT<0:-1,1:0)
 .S @$$^W4MAIN("VRM0")@("N",CODP,CT)=$P(A1,"\",5)
 Q
 ;
POS(N2) Q 3
 ;
RKZQ1 ;------------ RIKUZ LEFI KAMUT
 N N1,N2,I
 S VRM0=$$^W4MAIN("VRM0")
 S @VRM0=HZM
 ;
 F N1=1:1 Q:'$D(@GLB@(N1))  I ^(N1)'["\@@" D
 .D G^W4SCV(HZSCR,^(N1))
 .Q:PAR=""
 .I $$ZAHI^W4PRM,'$$BASAR(PAR) G RKZQ11 ; -- 29.12.25
 .S MDP=$$PRINT(PAR)
 .
 .I $$PAR0(PAR)!($E(PAR)="M")!$D(@$$^W4GL("P1BLRD")@(PAR))!$$OTH(HRP) D  Q
 ..S @VRM0@(MDP,"P",PAR_"-"_N1)=$G(@VRM0@(MDP,"P",PAR_"-"_N1))+KAM
 ..S @VRM0@(MDP,"N",PAR_"-"_N1)=$P($G(@GLB@(N1)),"\",3)
 ..N RSD S RSD=$P($G(@GLB@(N1)),"\",9)
 ..I $L(RSD) D
 ...N J F J=1:1:$L(RSD,",") S @VRM0@(MDP,"S",PAR_"-"_N1,+$P(RSD,",",J))=""
 .
 .Q:PAR'>0
 .
 .S @VRM0@(MDP,"P",PAR)=$G(@VRM0@(MDP,"P",PAR))+KAM
 .S @VRM0@(MDP,"N",PAR)=$P($G(@GLB@(N1)),"\",3)
 .N RSD S RSD=$P($G(@GLB@(N1)),"\",9)
 .I $L(RSD) D
 ..N J F J=1:1:$L(RSD,",") S @VRM0@(MDP,"S",PAR,+$P(RSD,",",J))=""
 .
RKZQ11 .I $D(@GLB@(N1))>10,'$$^W4EZAT(PAR) D  Q
 ..S A=$G(@GLB@(N1))
 ..S N2="" F  S N2=$O(@GLB@(N1,N2)) Q:N2=""  I ^(N2)'["\@@" D
 ...S ST=$G(^(N2))
 ...S CODP=$S($E(N2,1,2)="A-":$P(N2,"-",3),1:N2)
 ...I $P(CODP,"-") S CODP=$P(CODP,"-")
 ...;
 ...I $$ZAHI^W4PRM,'$$BASAR(CODP) Q
 ...S MDP=$$PRINT(CODP)
 ...S KAMT=$P(ST,"\",3)
 ...S @VRM0@(MDP,"P",CODP)=$G(@VRM0@(MDP,"P",CODP))+KAMT
 ...S @VRM0@(MDP,"N",CODP)=$P($G(@GLB@(N1,N2)),"\")
 .;
 .I $D(@GLB@(N1))>10,$$^W4EZAT(PAR) D
 ..S N2="" F  S N2=$O(@GLB@(N1,N2)) Q:N2=""  I ^(N2)'["\@@" D
 ...
 ...I $D(@GLB@(N1,N2))<10 D  Q
 ....S ST=$G(^(N2))
 ....S CODP=$S(N2["A-":$P(N2,"-",3),1:N2),MDP=$$PRINT(CODP)
 ....I $P(CODP,"-") S CODP=$P(CODP,"-")
 ....I $$ZAHI^W4PRM,'$$BASAR(CODP) Q
 ....S KAMT=$P(ST,"\",$S(N2["A-":2,1:3))
 ....S @VRM0@(MDP,"P",CODP)=$G(@VRM0@(MDP,"P",CODP))+KAMT
 ....S @VRM0@(MDP,"N",CODP)=$P(ST,"\")
 ...
 ...I $D(@GLB@(N1,N2))>9 D
 ....S ST=$G(^(N2)),KAMT=""
 ....S I="" F  S I=$O(@GLB@(N1,N2,I))  Q:I=""  D:I
 .....N A S A=$G(^(I)) Q:A["\@@"
 .....I $P(A,"\") S BG=I,CODP=$P(A,"\"),MDP=$$PRINT(CODP),KAMT=$P(A,"\",3) D EC31 ; -- WAS EC3 ; 27/04/20
 .....I '$P(A,"\"),$P(A,"\",4) S CODP=$P(A,"\",4),MDP=$$PRINT(CODP) D EC31
 ;
 N N S N=0 F  S N=$O(@VRM0@(N)) Q:N=""  D
 .I N,$D(@VRM0@(0)) M @VRM0@(N)=@VRM0@(0)
 .Q  ; -- 05.01.26
 .N PAR,PRINT
 .S PAR="" F  S PAR=$O(@VRM0@(N,"P",PAR)) Q:PAR=""  D
 ..S PRINT=$$PRINT(PAR,1) I PRINT["&" D
 ...N I,NP F I=1:1:$L(PRINT,"&") D
 ....S NP=+$P(PRINT,"&",I) I NP,NP'=N,'$D(@VRM0@(NP,"P",PAR)) D
 .....M @VRM0@(NP,"P",PAR)=@VRM0@(N,"P",PAR)
 .....M @VRM0@(NP,"N",PAR)=@VRM0@(N,"N",PAR)
 Q
 ;
 ;
EC31 ;
 ;
 I $$ZAHI^W4PRM,'$$BASAR(CODP) Q
 I $P(A,"\") S KAMT=$P(A,"\",3)
 I '$G(KAMT) S KAMT=1
 S @VRM0@(MDP,"P",CODP)=$G(@VRM0@(MDP,"P",CODP))+KAMT
 S @VRM0@(MDP,"N",CODP)=$P(A,"\",2)
 Q
 ;
EC310 ;
 I $$ZAHI^W4PRM,'$$BASAR(CODP) Q
 S @VRM0@(MDP,"P",CODP)=$G(@VRM0@(MDP,"P",CODP))+$S($G(KAMT)>0:1,$G(KAMT)<0:-1,1:0)
 S @VRM0@(MDP,"N",CODP)=$P(A,"\",5)
 Q
 ;
BASAR(PAR) ;
 N BSR
 ;;S BSR=",1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,25,53,54,55,56,57,59,60,61,63,64,65,66,82,83,84,85,89,102,1001,9003"
 S BSR="7,12,14,17,19,20"
 N KV S KV=","_$$SUG^W4P(PAR)_","
 I (","_BSR_",")[KV Q 1
 Q 0
 ;
PAR0(PAR) ;
 I $G(PAR)=0 Q 1
 I $E($G(PAR),1,2)="0-" Q 1
 I $E(PAR)="M" Q 1
 Q 0
 ;
HINAM(STAM) ;
 Q ($G(@$$^W4PRM@("HSBRKZ"))'=1)
 ;
OTH(HRP) ;
 I $$^W4OTH(HRP) Q 1
 I HRP["[[",HRP["]]" Q 1
 Q 0
 ;
PRINT(PAR,PR) ;
 N PRN S PRN=$$PRINTIG^W3PRMDP(PAR) 
 I $G(NMB) S PRN=$$^W4DEFMDP(PRN,NMB) 
 I '$G(PR) S PRN=+PRN 
 Q PRN 
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSBSV
W4HSBSV(HB,LKH,DOP,DF,SHUM,CODDOC,FUNC) ; [ 04.02.24 15:20 ] [ 14.02.19 04:27 ] [ 02.02.19 05:26 ] 
 Q:HB<1
 ;
 L +@$$^W4GL("KLF"):1
 L +@$$^W4GL("KLIN"):1
 ;
 I CODDOC="H" D
 .I HB>$P($G(@$$^W4GL("KLF")),"\",2) D
 ..S $P(@$$^W4GL("KLF"),"\",2)=HB
 ;
 I CODDOC="TZ" D
 .I HB>$P($G(@$$^W4GL("KLF")),"\",4) D
 ..S $P(@$$^W4GL("KLF"),"\",4)=HB
 ;
 I CODDOC="HI" D
 .I HB>$P($G(@$$^W4GL("KLF")),"\",5) D
 ..S $P(@$$^W4GL("KLF"),"\",5)=HB
 ;
 S @$$^W4GL("KLIN")@(CODDOC,HB)=LKH_DOP
 S @$$^W4GL("KLIN")@("DT",CODDOC,DF)=HB
 S @$$^W4GL("KLIN")@("DT",CODDOC,DF,HB)=$H
 ;
 D ^%S3GLSV($$^W4GL("KLIN")_"(""DT"","""_CODDOC_""","""_DF_""")",$$^W4FGIB)
 L  ;
 ;
 D ^W4LKHDZ ; -- 24/11/16 *** LEV
 ;
 I CODDOC="HMK" G END
 ;
 D
 .N DATE,CUSN,NUMBER,COD,SUM D ^W4KLINIT
 .S DATE=$ZD(DF,"YYMMDD"),NUMBER=HB,COD=FUNC,SUM=SHUM
 .D
 ..I '$G(@$$^W4GL("P1EZL")@(LKH)) S CUSN=LKH Q
 ..S CUSN=$G(@$$^W4GL("P1EZL")@(LKH))
 .
 .I CODDOC="TMZ" S SUM=-SHUM
 .D ^W4KLUP
 .D ^%S3GLSV($$^W4GL("KLF")_"("""_CUSN_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 ;
END D ^%S3GLSV($$^W4GL("KLIN")_"("""_CODDOC_""","_HB_")",$$^W4FGIB)
 Q
 
 
 
 
 
 
 
 
 
 

W4HSBYAD
W4HSBYAD ; [ 21.11.24 08:27 ] [ 29.08.24 20:54 ] [ 21.05.24 13:50 ] 
 ; ----------- NEW INVOICE ----------
 N (JB,%ARG,%REM)
 S W4LHBNEW=""
 N LKH S LKH=$G(%ARG("LKH"))
 N NOM S NOM=$G(%ARG("NOM"))
 ;
 I $TR(NOM,"0123456789","")="HI" D
 .S NOM=+NOM,%ARG("VD")="HI"
 .D KILL^%W1PRM("HI2HI")
 .I '$$GETP^%W1PRM("HI2HB") D PUT^%W1PRM("HI2HI",1)
 ;
 S DAT=$G(%ARG("DAT"))
 D KILL^%W1PRM("DAT")
 I DAT D PUT^%W1PRM("DAT",DAT)
 ;
 I NOM S COPY=1
 ;
 D KOTHSB(0,LKH,DAT)
 ;
 D DAF1(+NOM)
 ;
 I $$ACNTDOWN^W4PRM D ACNTDOWN^W4PCHBP
 ;
 W "<br/>"
 W "<div id=""divbut"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
   I '$$HMK D
    .I '$$NOBIGMDP^W4PRM D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDPRINT"),"Submit('"_LKH_"','0')","color:green",",,,100")
    .
    .I $$CSR^W4LCBCR D
    ..W "</td>"
    ..W "<td>&nbsp;</td>"
    ..W "<td>"
    .. D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDCSRPRINT"),"Submit('"_LKH_"','1')","color:green",",,,220")
   ; 
   I $$HMK D
    .D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PAY"),"Pay('"_LKH_"')","color:green",",,,100")
   ;
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
KOTHSB(NMB,LKH,DAT) ;
 D ^W4KOTHSB(NMB,LKH,DAT,$$VD)
 Q
 ;
VD(STAM) N VD S VD="HY"
 I $$HBZ S VD="TZ"
 I $$HMK S VD="HMK"
 I $$HI S VD="HI"
 Q VD
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td dir=""LTR"" "_$$^%W1ALIGN
 I $$HBZ,'$$PRINT^W4HSBYVW W " style=""color:red"" "
 Q
 ;
 ;
DAF1(NOM) ;----- CALL ALSO FROM ^W4HMKVW,^W4HSBYVW
 ;-- INPUT CMNT(), BFTAX(), AFTAX() , BFMAM (IF NOT NEW)
 N (JB,%ARG,NOM,W4LHBNEW,COPY)
 ;
 S NOM=$G(NOM)
 I $$HMK,'NOM D GETHSB^W4HSBYVW("HMK",0)
 I NOM D GETHSB^W4HSBYVW($$CODDOC(NOM),+NOM)
 I '$$HMK,'NOM D GETTMP($$TMP)
 ;
 I $G(COPY),NOM D
 .S AHMAM=$$AHMAM
 .I '$G(%ARG("COPYSUM")) D
 ..K BFTAX,AFTAX
 ..S (SHUM,BFMAM,MAM,SHUMLD,SHUMTD,SHUMTDI,DISCNIS,DISCA,DMSH,IGUL)=0 ; DISCPRC
 .N TMP S TMP=$$TMP
 .M @TMP=@$$GLHBN(NOM)
 .S @TMP=$G(DISCPRC)_"\"_$G(DISCNIS)_"\"_$G(DMSH)
 .I '$G(%ARG("COPYSUM")) D
 ..N N S N="" F  S N=$O(@TMP@(N)) Q:N=""  I N D
 ...S $P(^(N),"\")=""
 ...S $P(^(N),"\",3)=""
 .I $G(%ARG("COPYSUM")) D
 ..N N S N="" F  S N=$O(@TMP@(N)) Q:N=""  I N D
 ...S $P(^(N),"\",3)=$J($P($G(^(N)),"\")*(100+AHMAM)*.01,2,2)
 .K %ARG("NOM") S NOM=0 K COPY
 ;
 N WD,WD1 S WD=96,WD1=70
 I '$$^W4MAMHB,$G(NOM) S WD=96,WD1=80
 W "<table id=""TblInvcBd"" dir="""_$$^%W1DIR_""" width="""_WD_"%"" "
 I $G(NOM) W " border=""0"" cellspacing=""3"" "
 E  W " border=""1"" cellspacing=""0"" ",!
 W ">"
  W "<tr>"
   W "<th width="""_WD1_"%"">"_$$^%W1DICT("COMMENT")_"</th>"
   W "<th>"_$$^%W1DICT("BEFORETAX")_"</th>"
   I $$^W4MAMHB!'$G(NOM) D
   .W "<th>"_$$^%W1DICT("AFTERTAX")_"</th>"
  W "</tr>",!
  ;
  D COLST
  ;
  I 'NOM D  ;-- NEW
  .F I=1:1:COLST D
  ..W "<tr>"
  .. W "<td><input type=""text"" size=""60"" id=""cmnt"_I_""" size=""60"" maxlength=""60"" onBlur=""SaveTmp('"_I_"')"" value="""_$$H2U^%L1FRM($G(CMNT(I)),"",1)_"""></td>",!
  .. W "<td "_$$NUM^%W1ALIGN_" ><input type=""text"" size=""8"" id=""bft"_I_""" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"','1')"" value="""_$G(BFTAX(I))_""" onBlur=""OnChangeSum(this,'"_I_"')"" ></td>",!
  .. W "<td "_$$NUM^%W1ALIGN_" ><input type=""text"" size=""8"" id=""aft"_I_""" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"','2')"" value="""_$G(AFTAX(I))_""" onBlur=""OnChangeSum(this,'"_I_"')""></td>",!
  ..W "</tr>",!
  ;
  I NOM D
  .S BFMAM=0
  .F I=1:1:COLST D
  ..I $G(CMNT(I))="",'$G(BFTAX(I)),'$G(AFTAX(I)) Q
  ..W "<tr><td "_$$BORDER_">"_$$H2U^%L1FRM($G(CMNT(I)))_"</td>",!
  .. D TDLTR W $$BORDER_" >"_$J($G(BFTAX(I)),2,2)_"</td>",!
  .. S BFMAM=BFMAM+BFTAX(I)
  ..I $$^W4MAMHB D
  ... D TDLTR W $$BORDER_" >"_$J($G(AFTAX(I)),2,2)_"</td>",!
  ..W "</tr>",!
  .;
  ;
  D SHOWTOT(NOM)
  ;
DAF1E ;
  W "</table>",!
  ;
  ;
  W "<br /><br />"
  W "<div id=""divcmnt"">",!
   D DIVCMNT^W4LCBCR(NOM,0,$$COMMENT(NOM),$$PRV(NOM))
  W "</div>",!
  ;;S SHLN1=0
  ;;W "<p style=""page-break-before:always"">",!
 Q
 ;
 ;
PUT(PRM) ; -- SAVE NEW INVOICE
 N (JB,%ARG,%REM,PRM)
 ;
 ;;S ^AA("W4HSBYAD","PRM0")=PRM
 I $$GETP^%W1PRM("HI2HB") D
 .S %ARG("VD")="H"
 .D PUT^%W1PRM("VD","H")
 ;
 I $$GETP^%W1PRM("HI2HI") D
 .S %ARG("VD")="HI"
 .D PUT^%W1PRM("VD","HI")
 ;
 S CODDOC=$$CODDOC
 ;
 D GLHB,GLHBHR,COLST
 ;
 D GETTMP($$TMP)
 ;
 N GLB
 I '$$HMK D
 .L +@$$^W4GL("KLIN")@(CODDOC):1
 .S NUMBER=$O(@$$^W4GL("KLIN")@(CODDOC,9999999),-1)+1
 .S GLB=$$GLHBN(NUMBER)
 ;
 I $$HMK S GLB=$$TMPHBK
 ;
 S STRING=$TR($P(PRM,";"),"\","/")
 I STRING="" Q "NOCUSTNMB"
 ;
 ;;S ^AA("W4HSBYAD","PRM")=PRM
 S DAT=$P(PRM,";",2) I DAT="" Q "NOTDATE"
 S DAT2=$$^%L1DC(DAT,2)
 S TZ=$TR($P(PRM,";",3),"\","/")
 S HRA=$$CNWEB^%L1FRM($P(PRM,";",4))
 S PRV=$P(HRA,"~",2)
 S TZOPR=$P(PRM,"~",3)
 ;;S ^AA("W4HSBYAD","HRA")=HRA
 ;;S ^AA("W4HSBYAD","TZOPR")=TZOPR
 S HRA=$$INVH^%L1FRM($P(HRA,"~"))
 S HRA=$TR(HRA,"\","/")
 S PRM=$P(PRM,";",5,5+COLST-1)
 ;
 I 'SHUMTDI Q "NOSUM"
 ;
 ;;I '$L(TZ),$$PRMTZMAM,SHUMTDI'<$$PRMTZMAM Q "NOTTZ"
 ;;I TZ?1N.N,TZ,'$$^W4TZ(TZ) Q "ERRTZ"
 I '$$TZ^W4L(STRING),TZ D PUT^W4L(STRING,TZ,"TZ")
 ;
 L +@GLB:1
 N SH1 S SH1=0
 ;
 F SH="" F  S SH=$O(@$$TMP@(SH))  Q:'SH  D
 .N ST S ST=$G(^(SH))
 .S SUMLF=$P(ST,"\")
 .S SUMAF=$P(ST,"\",3)
 .S CMNT=$P(ST,"\",2)
 .I '$L(CMNT),'SUMLF,'SUMAF Q
 .S SH1=SH1+1
 .S @GLB@(SH1)=SUMLF_"\"_CMNT_"\"_SUMAF
 ;
 S @GLB=(SHUMTDI-MAM)_"\"_SHUMTDI_"\"_MAM_"\"_DAT2
 S $P(@GLB,"\",7)=$ZD($H,"DD.MM.YY  24:60")
 S $P(@GLB,"\",8)=$TR($$LKH^W4L(STRING),"\","/")
 S $P(@GLB,"\",9)=$TR($$KTVMM^W4L(STRING),"\","/")
 S $P(@GLB,"\",10)=$J(IGUL,2,2)
 S $P(@GLB,"\",11)=$J(AHMAM,2,2)
 S $P(@GLB,"\",12)=$J(DISCPRC,2,2)
 S $P(@GLB,"\",13)=$J(DISCA,2,2)
 S $P(@GLB,"\",14)=$J(DISCNIS,2,2)
 S $P(@GLB,"\",15)=$J(DMSH,2,2)
 ;
 I $G(TZOPR) S @GLB@("OPRTRTZ")=TZOPR
 ;
 N HI2HB S HI2HB=$$GETP^%W1PRM("HI2HB")
 I HI2HB D
 .S $P(@GLB,"\",22)=HI2HB
 .S $P(@GLB,"\",23)=SUMAF
 .
 .I $D(@$$^W4GL("KLF")@(STRING,"HI",HI2HB)) D
 ..S $P(@$$^W4GL("KLF")@(STRING,"HI",HI2HB),"\",22)=NUMBER
 ..S $P(@$$^W4GL("KLF")@(STRING,"HI",HI2HB),"\",23)=$P($G(@$$^W4GL("KLF")@(STRING,"HI",HI2HB)),"\",23)+SHUMTDI
 ..N NCB S NCB=$P(@$$^W4GL("KLF")@(STRING,"HI",HI2HB),"\",6) Q:'NCB
 ..I $D(@$$^W4GL("P1CHB")@(NCB,"["_HI2HB_"]")) D
 ...N PAID S PAID=$G(^("["_HI2HB_"]"))
 ...K @$$^W4GL("P1CHB")@(NCB,"["_HI2HB_"]")
 ...S @$$^W4GL("P1CHB")@(NCB,NUMBER)=PAID
 ;
 D KILL^%W1PRM("HI2HB")
 D KILL^%W1PRM("HI2HI")
 ;
 I $$HMK D  Q 0
 .S @GLB@("HRA")=$G(HRA)
 .S @GLB@("HRA","PRV")=$G(PRV)
 ;
 D ^%S3GLSV(GLB,$$^W4FGIB)
 ;
 L +@$$GLHBHRN(NUMBER):1
 S @$$GLHBHRN(NUMBER)=HRA
 S @$$GLHBHRN(NUMBER)@("PRV")=$G(PRV)
 D ^%S3GLSV($$GLHBHRN(NUMBER),$$^W4FGIB)
 L  ;
 ;
 D ^%S3GLSV($$^W4GL("KLF")_"("""_STRING_""","""_CODDOC_"P"","""_NUMBER_""")",$$^W4FGIB)
 ;
 N OPER S OPER=$S($$HBZ:"0D",1:"0H")
 D ^W4HSBSV(NUMBER,STRING,"",$$^%L1DC(DAT2,4),SHUMTDI,CODDOC,OPER)
 ;
 I $$USSUM^W4HBMAS($G(SHUMTDI)) D HBMAS^W4LHBNEW(NUMBER,CODDOC)
 ;
 D PUT^%W1PRM("MKRYD",NUMBER_$$VD)
PUTE ;
 Q NUMBER
 ;
 ;
GLHB ;
 S GLHB=$$^W4GL("KLF")_"(STRING,"""_$$CODDOC_""")"
 Q
 ;
GLHBHR ;
 S GLHBHR=$$^W4GL("KLF")_"(STRING,"""_$$CODDOC_"P"")"
 Q
 ;
GLHBN(NOM)
 I '$G(NOM) Q $$TMPHBK
 N CODDOC S CODDOC=$$CODDOC(NOM)
 I NOM[";" D  S NOM=$P(NOM,";")
 .I $P(NOM,";",2) S STRING=$P(NOM,";",2)
 I NOM<0 S NOM=-NOM
 I $G(STRING)="" S STRING=$$LK^W4STRING(CODDOC,+NOM)
 I STRING="" S STRING=0
 I $$HMK!($G(NOM)["HMK") Q $$^W4GL("KLF")_"(STRING,"""_CODDOC_""","""_+NOM_""",""HB"")"
 Q $$^W4GL("KLF")_"(STRING,"""_CODDOC_""","_+NOM_")"
 ;
GLHBHRN(NOM)
 I $G(STRING)="" S STRING=$$LK^W4STRING($$CODDOC(NOM),+NOM)
 I $$HMK!($G(NOM)["HMK") Q $$^W4GL("KLF")_"(STRING,"""_$$CODDOC(NOM)_""","""_+NOM_""",""HB"",""HRA"")"
 Q $$^W4GL("KLF")_"(STRING,"""_$$CODDOC(NOM)_"P"","""_NOM_""")"
 ;
COMMENT(NOM) ;
 I '$G(NOM) Q ""
 Q $G(@$$GLHBHRN(NOM))
 ;
PRV(NOM) ;
 I '$G(NOM) Q ""
 Q $G(@$$GLHBHRN(NOM)@("PRV"))
 ;
HOV(DT) ;
 K KLOST,KLOSTP
 I '$G(@$$^W4PRM@("ITRAHZ")) Q $$CBH^W4KLOST(LKH,DT)
 ;
 N DAT0,DAT2,DD,STRING,NN,BUY,PAY
 S DAT=$$^%L1DC($$^%L1DC(DT,1),2)
 S DAT0=DAT,DAT2=$$^%L1DC($$^%L1DC($H,1),2)
 S DD=$E(DAT,5,6)
 S STRING=LKH D ^W4KLOST
 Q ITRA0
 ;
COLST S COLST=10
 Q
PRMTZMAM(STAM) ;
 Q $G(@$$^W4PRM@("MINTZMAM"))
 ;
HMK(STAM)
 Q $$HMK^W4LHB
 ;
HI(STAM) L
 Q $$HI^W4LHB
 ;
CODDOC(STAM) ;
 I $G(STAM)["HMK" Q "HMK"
 I $G(STAM)["HI" Q "HI"
 ;
 N CODDOC
 I $G(%ARG("VD"))="H" Q "H"
 I $$HBZ Q "TZ"
 I $$HMK Q "HMK"
 I $$HI Q "HI"
 Q "H"
 ;
 ;
HBZ(STAM) ;
 I $G(%ARG("VD"))="H" Q 0
 I $G(%ARG("VD"))="HBZ" Q 1
 I $$GET^%W1PRM("VD")="HBZ" Q 1
 Q 0
 ;
TMP(STAM) ;
 Q $$^W4MAIN("TMPHB")
 ;
TMPHBK(STAM) ;
 Q $$^W4MAIN("TMPHBK")
 ;
GETTMP(TMP) ;
 N I,J,A,B
 K CMNT,BFTAX,AFTAX,SHUM,BFMAM,MAM
 S (SHUM,BFMAM,MAM)=0
 ;
 S AHMAM=$$AHMAM
 S I="" F  S I=$O(@TMP@(I)) Q:I=""   D
 .S B=$G(^(I))
 .S CMNT(I)=$TR($P(B,"\",2),"\*","/X")
 .S BFTAX(I)=$P(B,"\"),BFMAM=BFMAM+BFTAX(I)
 .S AFTAX(I)=$P(B,"\",3)
 .I $G(%ARG("COPYSUM")) S AFTAX(I)=$J(BFTAX(I)*(100+AHMAM*.01),2,2)
 .S SHUM=SHUM+AFTAX(I)
 ;
 S DISCPRC=$P($G(@TMP),"\",1)
 ;;I DISCPRC="",$G(%ARG("LKH")) S DISCPRC=$$AH^W4L(%ARG("LKH"))
 S DISCA=$J(SHUM*DISCPRC*.01,2,2)
 S DISCNIS=$P($G(@TMP),"\",2)
 S DMSH=$P($G(@TMP),"\",3)
 D GETTOT
 Q
 ;
GETTOT ;
 S SHUMTD=SHUM-DISCA-DISCNIS+DMSH
 S SHUMTDI=SHUMTD
 S IGUL=0
 ;
 I $$IGUL D
 .S IGUL=$J(SHUMTD,0,0)-SHUMTD
 .S SHUMTDI=SHUMTD+IGUL
 ;
 ;;W "SHUMTD="_SHUMTD_"  SHUMTDI="_SHUMTDI_"  IGUL="_IGUL_"  $$IGUL="_$$IGUL,! ; ***
 S MAM=$J(SHUMTDI*AHMAM/(100+AHMAM),2,2)
 Q
 ;
 ;
SHOWTOT(NOM)
  ; INPUT : SHUM,DISCA
  I $$IGUL,NOM,'$G(IGUL),'$G(DISCPRC),'$G(DISCNIS),'$G(DMSH) D  G ENDTOT
  .D SHOWMAM
  .D TOTAL(1)
  ;
  I $$IGUL!'NOM!$G(DISCPRC)!$G(DISCNIS)!$G(DMSH) D
  .W "<tr>"
  .D SPACE
  .W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  .D TDLTR W " id=""bftot""><b>"_$J($G(BFMAM),2,2)_"</b></td>"
  .I $$^W4MAMHB D TDSP
  .W "</tr>",!
  .;
  .D AFTERTAX
  ;
  S DISCPRC=$G(DISCPRC)
  I $G(NOM),'DISCPRC G DISCNIS
  ;
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DISCPERCENT")_"&nbsp;"
   I '$G(NOM) D
   .W " <input type=""text"" dir=""LTR"" onFocus=""FocSel(this)"" "
   .W "  style="""_$$RED_""" id=""discprc"" size=""3"" maxlength=""6"" "
   .W "  value="""_$J(DISCPRC,2,2)_""" onKeyUp=""ChangeSum('1')"" "
   .W " onBlur=""SaveTmp('0')"" >"
   I $G(NOM) D
   .W $J(DISCPRC,2,2)
   W " </td>"
   ;
   W " <td id=""disca"" style="""_$$RED_""">"_$G(DISCA)_"</td>"
   I $$^W4MAMHB D TDSP
  W "</tr>",!
  ;
DISCNIS ;
  S DISCNIS=$G(DISCNIS)
  I $G(NOM),'$G(DISCNIS) G DLVPAY
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DISCNIS")_"&nbsp;</td>",!
   W " <td style="""_$$RED_""" >"
   I '$G(NOM) D
   .W "  <input type=""text"" dir=""LTR"" style="""_$$RED_""" "
   .W "   onFocus=""FocSel(this)"" id=""discnis"" size=""6"" maxlength=""6"" "
   .W "   value="""_$J(DISCNIS,2,2)_""" onKeyUp=""ChangeSum('1')"" onBlur=""SaveTmp('0')"" >"
   I $G(NOM) D
   .W $J(DISCNIS,2,2)
   W " </td>"
   I $$^W4MAMHB D TDSP
  W "</tr>",!
 ;
DLVPAY  ;
  S DMSH=$G(DMSH)
  I $G(NOM),'$G(DMSH) G MAMTOT
  ;
  W "<tr>"
  D SPACE
  W " <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("DLVPAY")_"&nbsp;</td>"
  W " <td>"
  ;
   I '$G(NOM) D
   .W " <input type=""text"" onFocus=""FocSel(this)"" "_$$LTR
   .W "  id=""dlvpay"" size=""6"" maxlength=""6"" "
   .W "  value="""_DMSH_""" onKeyUp=""ChangeSum('1')"" onBlur=""SaveTmp('0')"" >"
   ;
   I $G(NOM) W $J(DMSH,2,2)
   W " </td>"
   I $$^W4MAMHB D TDSP
  W "</tr>",!
  ;
MAMTOT ;
  I $$IGUL D
  .W "<tr>"
  . D SPACE
  . W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("IGUL")_"&nbsp;</td>"
  . D TDLTR W " id=""igul""><b>"_$J(IGUL,2,2)_"</b></td>"
  . I $$^W4MAMHB D TDSP
  .W "</tr>",!
  ;
  S SHUMTDI=$G(SHUMTDI)
  D SHOWMAM
  ;
  I $$IGUL D
  .W "<tr>" D SPACE
  . W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTALROUNDED")_"&nbsp;</td>"
  . D TDLTR W " id=""itot""><b>"_$J($J(SHUMTDI,0,0),2,2)_"</b></td>"
  . I $$^W4MAMHB D TDSP
  .W "</tr>",!
  ;
  I '$$IGUL D TOTAL(1)
  ;
ENDTOT Q  ;
  ;
  ;
SHOWMAM ;
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("BEFORETAX")_"&nbsp;</td>"
   D TDLTR W " id=""lmam"">&nbsp;"_$J(SHUMTDI-MAM,2,2)_"</td>"
   I $$^W4MAMHB D TDSP
  W "</tr>",!
  ;
  I AHMAM'["%" S AHMAM=AHMAM_"%"
  W "<tr>"
  D SPACE
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TAX",AHMAM)_"&nbsp;</td>"
   D TDLTR W " id=""tax"" "
   W " style=""font-weight:bold"" "
   W "><b>"_$J($G(MAM),2,2)_"</b></td>"
   I $$^W4MAMHB D TDSP
  W "</tr>",!
  Q
  ;
  ;
AFTERTAX ;
  W "<tr>"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("AFTERTAX")_"&nbsp;</td>"
   D TDLTR W " id=""tot"" "
   W " style=""font-weight:bold"" "
   W "><b>"_$J($G(SHUM),2,2)_"</b></td>"
   I $$^W4MAMHB D TDSP
  W "</tr>",!
 Q
 ;
TOTAL(BOLD) ;
 W "<tr>"
  D SPACE S SHUMTD=$G(SHUMTD)
  W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  D TDLTR W " id=""total"" "
   I $G(BOLD) W " style=""font-weight:bold"" "
   W ">"_$S($G(BOLD):"<b>",1:"")_$J(SHUMTD,2,2)_$S($G(BOLD):"<b>",1:"")_"</td>"
  I $$^W4MAMHB D TDSP
 W "</tr>",!
 Q
 ;
SPACE ;
 Q
TDN W "<td>&nbsp;</td>",!
TDSP W "<td></td>",!
 Q
 ;
RED(STAM) ;
 Q "color:"_$S($$HBZ($G(NOM)):"black",1:"red")
 ;
LTR(STAM) ;
 Q " dir=""LTR"" align=""right"" style=""color:"_$S($$HBZ($G(NOM)):"red",1:"black")_""""
 ;
 ;
SAVETMP(PRM) ;
 N CMNT,BF,AF,SH
 S SH=$P(PRM,";") I 'SH G SAVETMP2
 N PRM1 S PRM1=$P(PRM,";",2)
 S CMNT=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(PRM1,"~",1)))
 S CMNT=$TR(CMNT,"\*","/X")
 S BF=$P(PRM1,"~",2)
 S AF=$P(PRM1,"~",3)
 S @$$TMP@(SH)=BF_"\"_CMNT_"\"_AF
SAVETMP2 N PRM2,DISCPRC,DISCNIS,DMSH
 S PRM2=$P(PRM,";",3)
 S DISCPRC=$P(PRM2,"~")
 S DISCNIS=$P(PRM2,"~",2)
 S DMSH=$P(PRM2,"~",3)
 S @$$TMP=DISCPRC_"\"_DISCNIS_"\"_DMSH
 Q
 ;
AHMAM(STAM) ;
 I '$G(DAT) S DAT=$$GETP^%W1PRM("DAT")
 I $G(DAT) Q $$MAMD^W4L($$^%L1DC(DAT,3))
 Q $$MAM^W4PRM
 ;
BORDER(STAM) ; 
 N STYLE S STYLE="border:1px solid grey"
 I $$HBZ S STYLE=STYLE_";color:red"
 I $$PRINT^W4HSBYVW Q " style="""_STYLE_""" " 
 Q " class=""tdbd"" "
 ;
IGUL(STAM) ; 
 Q '$$^W4NOIGUL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSBYVW
W4HSBYVW ; [ 25.11.24 11:51 ] [ 07.05.24 07:28 ] [ 01.05.24 12:19 ] 
 N (JB,%ARG,%REM)
 I $$^W4NOBACK S %ARG("SHOW")=1
 N NOM S NOM=$G(%ARG("NOM"))
 I 'NOM S ER="INVALIDINVOICENUMBER" G MSGER
 S KLIN=$$^W4GL("KLIN")
 S W4HSBYVW=""
 ;
 S NOM0=NOM
 S CODDOC=$$CODDOC^W4HSBYAD
 I $TR(NOM,"1234567890","")="H"!($TR(NOM,"1234567890","")="HY")!($TR(NOM,"1234567890","")="HBW") D
 .S CODDOC="H",%ARG("VD")="H",NOM=+NOM
 ;
 I $TR(NOM,"1234567890","")="HI" D
 .S CODDOC="HI",%ARG("VD")="HI",NOM=+NOM
 ;
 ;;W "CODDOC="_CODDOC_"  NOM="_NOM,!
 I '$D(@KLIN@(CODDOC,NOM)) S ER="INVOICENOTEXIST" G MSGER
 ;
 S LK0=$G(^(NOM)) I LK0["+" Q
 S LKH=$$LK^W4LHB(LK0)
 ;;W "LKH="_LKH_" ARG(LKH)="_$G(%ARG("LKH")),!
 I $G(%ARG("LKH")),LKH'=%ARG("LKH") D  Q
 .W "<script>",!
 .W "MsgA(""CUSTOMNUMBERISWRONG"")",!
 .W "</script>",!
 I LKH="" S ER="INVOICENOTEXIST" G MSGER
 S STRING=LKH
 ;
 D GLHB
 S A=$G(@$$GLHBN(NOM0))
 ;;W "A="_A_" NOM="_NOM,!
 I A="" S ER="INVOICENOTEXIST" G MSGER
 ;
 S DAT=$$^%L1DC($P(A,"\",4),1)
 ;
 D ^W4KOTHSB(NOM,LKH,DAT,$$VD^W4HSBYAD)
 ;
 D GETHSB(CODDOC,NOM0)
 ;
 W "<br>",!
 D DAF1(NOM)
 ;
 D
 .S TEMPL=$$^W4MAIN("TEMPL")
 .N N,I,A S I=0
 .S N="" F  S N=$O(^KLIN(CODDOC,NOM,LKH,N)) Q:N=""  S A=$G(^(N)) D
 ..S I=I+1
 ..S @TEMPL@(I)=N_"\"_LKH_"\"_$$LKH^W4L(LKH)_"\"_$ZD($P(A,"\",2),"DD.MM.YY")_"\"_$P(A,"\",4)_"\"_$J($P(A,"\"),2,2)
 ;
 D ^W4HSBGET(NOM,CODDOC)
 ;
 I $$HI,$G(W4HSB("HBHI")) D
 .W $$^%W1DICT("INVOICETXLIST")_" : "_W4HSB("HBHI")
 .W "&nbsp;&nbsp;"
 I $$HI D
 .W $$^%W1DICT("INVOICEBALANCE")_" : "_$J(W4HSB("TOT")-W4HSB("HBHITOT"),2,2)
 .W "&nbsp;&nbsp;"
 .W $$^%W1DICT("ITRA2PAY")_" : "_$J(W4HSB("TOT")-W4HSB("PAID"),2,2)
 .W !,"<br><br>",!
 ;
 I '$$HI,$G(W4HSB("HBHI")) D
 .W $$^%W1DICT("DEALINVOICE")_" : "
 .N HI S HI=W4HSB("HBHI")
 .W "<span onClick=""ShowArmInvoice('"_HI_"HI','"_LKH_"','ifr')"" style=""cursor:pointer"" >"
 . W HI
 .W "</span>",!
 .W !,"<br><br>",!
 ;
 D DIVSIGN^W4LHBVW
 ;
 I '$$PRINT D
 .D DIVBUT
 .D TBLCOPY
 ;
 ;;I $$PRINT D DIVSIGN^W4LHBVW
 I $$HI,$G(W4HSB("HBHI")) D
 .W "<p style=""page-break-before:always"">",!
 .D SHOWHBTAX(LKH,NOM)
 ;
 Q
 ;
 ;
MSGER ;
 W "<script>",!
 W "MsgA('"_ER_"');",!
 W " Back()",!
 W "</script>",!
 Q
 ;
 ;
TD W "<td width=""30%"">"
 Q
 ;
DAF1(NOM) ;
 D DAF1^W4HSBYAD(NOM)
 Q
 ;
GLHB D GLHB^W4HSBYAD
 Q
GLHBN(NOM) Q $$GLHBN^W4HSBYAD(NOM)
 ;
SUMHZ(NOM,LKH) ;
 N HZ,SUM
 S HZ="",SUM=0
 F  S HZ=$O(@KLIN@($$CODDOC^W4HSBYAD,NOM,LKH,HZ)) Q:HZ=""  S SUM=SUM+$G(^(HZ))
 Q SUM
 ;
GETHSB(CODDOC,NOM) ; --> CMNT(),BFTAX(),AFTAX(),SHUM,LMAM,MAM,STRING
 ;;Q:'$G(NOM)
 N I,J,A,B,KLIN,LKH,LK0
 I '$G(NOM) S STRING=$G(%ARG("LKH")) G GETHSB1
 S KLIN=$$^W4GL("KLIN")
 S LK0=$G(@KLIN@(CODDOC,+NOM))
 S STRING=$$LK^W4LHB(LK0)
GETHSB1 ;
 K CMNT,BFTAX,AFTAX,SHUM,LMAM,MAM,BFMAM
 N COPYSUM S COPYSUM=+$G(%ARG("COPYSUM"))
 N %ARG S %ARG("VD")=$S(CODDOC="TZ":"HBZ",1:CODDOC)
 S (SHUM,LMAM,MAM)=0
 S I="" F  S I=$O(@$$GLHBN(NOM)@(I))  Q:I=""  I I D
 .S B=$G(^(I))
 .S CMNT(I)=$P(B,"\",2)
 .S BFTAX(I)=$P(B,"\"),LMAM=LMAM+BFTAX(I)
 .I 'COPYSUM D
 ..S AFTAX(I)=$P(B,"\",3)
 .I COPYSUM D
 ..S AFTAX(I)=$J(BFTAX(I)*(100+$G(@$$^W4PRM@("MAM")))*.01,2,2)
 .S SHUM=SHUM+AFTAX(I)
 ;
 S BFMAM=LMAM
 ;
 N HD S HD=$G(@$$GLHBN(NOM))
 S MAM=$P(HD,"\",3)
 S AHMAM=$P(HD,"\",11)
 I HD="" S AHMAM=$G(@$$^W4PRM@("MAM"))
 S DISCPRC=$P(HD,"\",12)
 I HD="",$G(STRING) S DISCPRC=$$AH^W4L(STRING)
 S DISCA=$P(HD,"\",13)
 S DISCNIS=$P(HD,"\",14)
 S DMSH=$P(HD,"\",15)
 S SHUMTDI=$P(HD,"\",2)
 S IGUL=$P(HD,"\",10)
 S SHUMTD=SHUMTDI-IGUL
 ;
 I COPYSUM D
 .S AHMAM=$J($G(@$$^W4PRM@("MAM")),2,2)
 .S SHUMTD=LMAM*(100+AHMAM)*.01
 .S SHUMTD=(SHUMTD*(100-DISCPRC)*.01)-DISCNIS+DMSH
 .S IGUL=0,SHUMTDI=SHUMTD
 .I '$$^W4NOIGUL D
 ..S IGUL=$J($J(SHUMTD,0,0)-$J(SHUMTD,2,2),2,2)
 ..S SHUMTDI=$J($J(SHUMTD,0,0),2,2)
 .S MAM=$J(SHUMTDI*AHMAM/(100+AHMAM),2,2)
 Q
 ;
 ;
TBLCOPY ;
 N WD,WD1 S WD=55,WD1=30
 I $D(W4DOC) S WD=42,WD1=38
 W "<br>",!
 I $$MAILMKR D  Q
 . W "<input type=""button"" id=""printmail"" value="""_$$^%W1DICT("PRINT")_"""  onClick=""Print()"" style=""color:green"" >"
 ;
 W "<table width="""_WD_"%"" id=""tblcopy"" border=""0"" style=""visibility:hidden"" dir="""_$$^%W1DIR_""" width=""35%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   N COPY S COPY=$$^%W1DICT("INVOICE2DATE")
   I $G(%ARG("NUMBER"))["T" S COPY=$$^%W1DICT("DLVDOC2DATE")
   W "<td width="""_WD1_"%"">"_COPY_"</td>",!
   ;
   W "<td>"
     W $$^W4SELDAT($$^%L1DC($H,1))
   W "</td>"
   ;
   I '$D(W4DOC) D
   .W "<td width=""27%"" >"
   .  W $$^%W1DICT("COPYSUMTOO")
   .  W "<input type=""checkbox"" id=""copysum"" >"
   .W "</td>"
   ;
   N NOM1 S NOM1=$$NOM1(NOM)
   W "<td>"
     D ROUNDBUT^%W1JS("Do",$$^%W1DICT("DO"),"DoCopy('"_NOM1_"')","color:green",",,,100")
   W "</td>"
  W "</tr>"
 W "</table>",!
 Q  ;
 ;
 ;
PRINTCSR(PRM) ;
 N (JB,%ARG,%REM,PRM)
 S NUMBER=$P(PRM,";")
 S ETEK='$P(PRM,";",2)
 S CODDOC=$P(PRM,";",3)
 I NUMBER<0 S NUMBER=-NUMBER
 ;
 D GETHSB(CODDOC,NUMBER)
 ;
 I CODDOC="H" S VD="HY"
 I CODDOC="TZ" S VD="HBZ"
 I CODDOC="HI" S VD="HI"
 S %ARG("VD")=VD
 ;
 D ^W4HSBGET(NUMBER,CODDOC)
 S STRING=$G(W4HSB("LKH")) I 'STRING Q -1
 D KOT^W4KOTHSB ;
 D GETKOT^W4KOTHSB(STRING,NUMBER,VD)
 D DOPKOT^W4KOTHSB(STRING)
 ;
M K %L1SCPC
 ;
 I 'ETEK D
 .S $P(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER),"\",7)=$ZD($H,"DD.MM.YY 24:60")
 .I $G(TZ),'$$TZ^W4L(STRING) D PUT^W4L(STRING,TZ,"TZ")
 ;
 S %L1SCPC(3)=NUMBER
 I $G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)=": melyzl dxzi",%L1SCPC(17)=""
 I '$G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)="",%L1SCPC(17)=""
 ;
 S %L1SCPC(1)="qn zipeayg"
 I CODDOC="TZ" S %L1SCPC(1)="iekif qn zipeayg"
 ;
 S %L1SCPC(2)=MYKTV
 D ^W4MDPPC I $G(PRINT)<0 Q -2
 ;
 D ^W4PCESEK(MYNAME,4,GWPC,$G(%MDP("B")),$G(%MDP("N")))
 ;
 S %L1SCPC(5)=$G(W4HSB("TODATE"))
 S %L1SCPC(7)=STRING
 S %L1SCPC(8)=LKHNAME
 ;
 S SIGN=1
 I CODDOC="TZ" S SIGN=-1
 ;
 S LMAM=$G(W4HSB("LMAM"))*SIGN
 S MAM=$G(W4HSB("MAM"))*SIGN
 S TOT=$G(W4HSB("TOT"))*SIGN
 ;
 S %L1SCPC(11)=DISCPRC
 S %L1SCPC(12)=$J(DISCA,2,2)
 S %L1SCPC(13)=$J(DISCNIS,2,2)
 S %L1SCPC(14)=$J(DMSH,2,2)
 ;
 S %L1SCPC(15)=$J(IGUL,2,2)
 S %L1SCPC(16)=$J(LMAM,2,2)
 S %L1SCPC(18)=$J(MAM,2,2)
 S %L1SCPC(19)=$J(TOT,2,2)
 ;
 S %L1SCPC(24)=$G(W4HSB("HBMAS"))_" : d`vwd 'qn"
 I $$USSUM^W4HBMAS($G(W4HSB("LMAM"))),'$G(W4HSB("HBMAS")) D
 .S %L1SCPC(24)="ef zipeayg oiba zeneyz qn zekpl oi`"
 ;
 S %L1SCPC(71)=MYTEL
 S %L1SCPC(74)=$$FUNC^%UCASE(MYEMAIL)
 S %L1SCPC(77)=MYESEK
 ;
 S %L1SCPC(73)=LKHKTV
 S %L1SCPC(75)=LKHTEL
 ;
 S %L1SCPC(79)=""
 I ETEK S %L1SCPC(79)=$G(W4HSB("ISSUETIME"))_" : xewn zwtd onf"
 S PRATIM=$G(@$$GLHBHRN^W4HSBYAD(NUMBER))
 ;
 S %L1SCPC(80)=$$TZ^W4L(STRING)
 ;
 I '$$PRV^W4HSBYAD(NUMBER) D
 .N PRT S PRT=$J(PRATIM,100)
 .S %L1SCPC(70)=$E(PRT,51,100)
 .S %L1SCPC(30)=$E(PRT,1,50)
 ;
 I 'ETEK S %L1SCPC(78)="xewn"
 E  S %L1SCPC(78)=" wzrd"
 ;
 S TMPPC=$$^W4MAIN("TMPSCPC")
 D GLHB
 K @TMPPC
 N SUMLF S SUMLF=0
 N SUMM S SUMM=0
 F I=1:1 Q:'$D(@GLHB@(NUMBER,I))  D
 .N ST S ST=$G(^(I))
 .
 .S ST=$J($P(ST,"\",1),2,2)_"\"_$P(ST,"\",2)_"\"_$J($P(ST,"\",3),2,2)
 .S SUMLF=SUMLF+$P(ST,"\",1)
 .S SUMM=SUMM+$P(ST,"\",3)
 .S @TMPPC@(I)=ST
 ;
 S %L1SCPC(9)=$J(SUMLF,2,2)
 S %L1SCPC(10)=$J(SUMM,2,2)
 ;
 I $$^W4PCMK("TZK1")'="OK" Q -3
 I 'ETEK S ETEK=1 G M
 ;
 Q 1
 ;
 ;
LINESPACE ;
 W "<tr><td colspan='5'>&nbsp;</td></tr>"
 Q 
 ; 
DIVBUT ;
 I $$MAIL Q
 I $$MAILMKR Q
 ;
 W "<div id=""divbut"" align=""center"">"
 D ^W4EMAIL(LKH,+NOM,$S($G(%ARG("VD"))="HBZ":"HBZ",1:"HY"),96)
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""96%"" border=""0"" cellspacing=""0"">",!
  I '$$HI D
  .I $G(W4HSB("HBHI")) D  Q
  .. W "<tr>" D DELDEAL(+NOM,W4HSB("HBHI")) W "</tr>"
  .. D LINESPACE
  .
  .D LINESPACE
  .W "<tr>"
  . D ASC2DEAL(LKH,+NOM)
  .W "</tr>",!
  .D LINESPACE
  ;
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PRINT"),"PrintAndBack('0')","color:green",",,,80")
   W "</td>"
   ;;W "<td>&nbsp;</td>"
   ;
   I $$CSR^W4LCBCR D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("SubmitCSR",$$^%W1DICT("PRINTCSR"),"PrintAndBack('1')","color:green",",,,160")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   ;
   I '$$VIEWONLY^W3PRM,'$G(%ARG("SHOW")),$$HB,$$GETP^%W1PRM("VD")'="HBZ",$G(W4HSB("TOT"))>0 D
   .N NOM1 S NOM1=$$NOM1(NOM)
   .W "<td>"
   .  N C2N S C2N="COPY2NEWINVOICE"
   .  I $$HI S C2N="COPY2NEWDEALINVOICE"
   .  D ROUNDBUT^%W1JS("Copy",$$^%W1DICT(C2N),"Copy2NewInvoice('"_NOM1_"')","color:darkblue",",,,180")
   .W "</td>"
   .I '$$^W4NOBACK D
   ..W "<td>&nbsp;</td>"
   .
   .I $$HI D
   ..I $G(W4HSB("HBHI")) Q
   ..W "<td>"
   ..  D ROUNDBUT^%W1JS("CPHI2HB",$$^%W1DICT("CPHI2HB"),"Copy2NewInvoice('"_+NOM_"','HI2HB')","color:blue",",,,180")
   ..W "</td>"
   ..I $G(W4HSB("PAID")) Q
   ..I '$G(W4HSB("TOT")) Q
   ..W "<td id=""deliska"" >"
   ..  D ROUNDBUT^%W1JS("DELETE",$$^%W1DICT("CANCEL"),"DelIska('"_+NOM_"')","color:red",",,,200")
   ..W "</td>"
   .
   ;
   I $G(W4HSB("TOT"))>0,'$G(W4HSB("PAID")) D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Pay",$$^%W1DICT("PAY"),"Pay('"_NOM_"','"_LKH_"','"_$G(W4HSB("TOT"))_"')","color:blue",",,,80")
   .W "</td>"
   ;
   ;
   I '$$^W4NOBACK D
   .W "<td>&nbsp;</td>"
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
   .W "</td>"
   ;
   W "<td>&nbsp;</td>"
   ;
  W "</tr>",!
 W "</table>",!
 ;
 ;;D CRNEWMAIL^W4EMAIL(LKH,3)
 ;
 W "</div>",!
 Q
 ;
 ;
PRINT(STAM) ;
 Q ($G(%ARG("PRINT"))!$$MAIL)
 ;
MAIL(STAM) ;
 Q $G(%ARG("MAIL"))
 ;
HB(STAM) ;
 I $G(%ARG("VD"))="H"!($$GETP^%W1PRM("VD")="H")!($$GETP^%W1PRM("VD")="") Q 1
 I $$HI Q 1
 Q 0
 ;
HI(STAM) ;
 I $G(%ARG("VD"))="HI"!($TR($G(%ARG("NOM")),"1234567890","")="HI") Q 1
 Q 0
 ;
NOM1(NOM) ;
 N NOM1 S NOM1=+NOM I $G(%ARG("VD"))="HI" S NOM1=NOM_"HI"
 Q NOM1
 ;
 ;
SHOWHBTAX(LKH,HINOM) ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 D
 .W " <span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("DEALINVOICEAPPX",HINOM)_"</span><br>",!
 .
 .W " <span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"_$$^%W1DICT("INVOICETXLIST")_"</span>"
 .I $$^W4ISCDLK($G(LKH)) D
 ..W " <br><span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"_LKH_" "_$$H2U^%L1FRM($$LKH^W4L(LKH))_"</span><br><br>"
 ;
 W "<table id=""TblInvcList"" dir="""_$$^%W1DIR_""" width=""40%"" border=""1"" cellspacing=""0"">",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("INVOICETX")_"</th>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 ;
 N SHB,SHUM,HB,LHB
 S SHB=0,SHUM=0
 S LHB=$G(W4HSB("HBHI"))
 ;
 N W4HSB
 ;
 N I F I=1:1:$L(LHB,",") D
 .S HB=$P(LHB,",",I) Q:HB=""
 .D ^W4HSBGET(HB,"H")
 .N TOT S TOT=$G(W4HSB("TOT")) Q:'TOT
 .W "<tr onClick=""ShowArmInvoice('"_HB_"','"_LKH_"','ifr')"" style=""cursor:pointer"" >"
 .W " <td>"_$$RKV(HB)_"</td>"
 .W " <td>"_$$RKV($G(W4HSB("TODATE")))_"</td>"
 .W " <td dir=""LTR"" align=""right"">"_$$RKV(TOT,"N")_"</td>"
 .S SHUM=SHUM+TOT,SHB=SHB+1
 .W "</tr>",!
 ;
 W "<tr style=""font-weight:bold"">"
  W "<td>"_$$^%W1DICT("TOTALINVOICESTX")
   W " : <span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"_SHB_"</span>"
  W "</td>"
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  W "<td dir=""LTR"" "
   W "style=""color:black;font-size:"_$$^W3FSZ(12)_";text-align:right"">"
   W $$RKV(SHUM,"N")
  W "</td>"
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)["N" Q $S(VL<0!(PR="NZ"):"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0!(PR="NZ"):"</span>",1:"")
 Q VL
 ;
ASC2DEAL(LKH,HB) ;
 N LK,N,TMPHI,W4HSB,I,A,HI,DAT,SUM
 S TMPHI=$$^W4MAIN("TMPHI") K @TMPHI
 D ^W4HSBGET(HB,"H") S SUM=$G(W4HSB("TOT"))
 N DTHB S DTHB=$G(W4HSB("DT"))
 K W4HSB
 ;
 S I=0
 S N="" F  S N=$O(@KLIN@("HI",N)) Q:N=""  D
 .S LK=$G(^(N)) I LK'=LKH Q
 .D ^W4HSBGET(N,"HI")
 .I (","_$G(W4HSB("HBHI"))_",")[(","_HB_",") Q
 .I $G(W4HSB("DT"))>DTHB Q
 .I '($G(W4HSB("TOT"))-$G(W4HSB("HBHITOT"))) Q
 .;;I $G(W4HSB("TOT"))-$G(W4HSB("HBHITOT"))<SUM Q
 .S I=I+1,@TMPHI@(I)=N_"\"_$G(W4HSB("TOT"))_"\"_$G(W4HSB("HBHITOT"))_"\"_$G(W4HSB("TODATE"))
 ;
 I $D(@TMPHI)<10 Q
 ;
 W "<td colspan=""2"">"
  ;;W $$^%W1DICT("DEALINVOICESLIST")_" "
  W "<select id=""asc2deal"">",!
  W "<option value="""">-- "_$$H2U^%L1FRM("jeiyl dwqr zipeayg xga")_" --</option>",!
   F I=1:1 Q:'$D(@TMPHI@(I))  D
   .S A=$G(^(I))
   .S HI=$P(A,"\"),DAT=$P(A,"\",4)
   .W "<option value="""_HI_""">"
   .  W HI_" [ "_DAT_" ]  "_$$H2U^%L1FRM("mekq")_" : "_$J($P(A,"\",2),2,2)_" "_$$H2U^%L1FRM("dxzi")_" : "_$J($P(A,"\",2)-$P(A,"\",3),2,2)
   .W "</option>",!
  W "</select>",!
 W "&nbsp;"
 W "</td>"
 W "<td>"
  D ROUNDBUT^%W1JS("showdeal",$$^%W1DICT("SHOWDEAL"),"ShowDeal()","color:green",",,,100")
 W "</td> "
 W "<td> ",!
  N PROC S PROC="Asc2Deal('"_+NOM_"')"
  D ROUNDBUT^%W1JS("ascdeal",$$^%W1DICT("ASC2DEAL"),PROC,"color:green",",,,100")
 W "</td>",!
 K @TMPHI
 Q
 ;
 ;
SBMASC2DEAL(PRM) ;
 N LK,HB,HI,GLHB,GLHI,W4HSB,SUM,HITOT,HBHI,SUM
 S LK=$P(PRM,";")
 S HB=$P(PRM,";",2)
 S HI=$P(PRM,";",3)
 ;
 D ^W4HSBGET(HB,"H")
 S SUM=$G(W4HSB("TOT"))
 ;
 S GLHI=$$^W4GL("KLF")_"(LK,""HI"","""_HI_""")"
 S GLHB=$$^W4GL("KLF")_"(LK,""H"","""_HB_""")"
 ;
 N HD S HD=$G(@GLHI)
 K W4HSB
 ;
 D ^W4HSBGET(HI,"HI")
 ;
 S HBHI=$G(W4HSB("HBHI"))
 S HITOT=$G(W4HSB("HBHITOT"))
 I $L(HBHI),$E(HBHI,$L(HBHI))'="," S HBHI=HBHI_","
 S HBHI=HBHI_HB
 S HITOT=HITOT+SUM
 ;
 S $P(@GLHI,"\",22)=HBHI
 S $P(@GLHI,"\",23)=HITOT
 S $P(@GLHB,"\",22)=HI
 ;
 N NCB S NCB=$P($G(@GLHI),"\",6)
 I NCB D
 .I $G(W4HSB("TOT"))>0,W4HSB("TOT")>W4HSB("PAID") Q
 .N PYHI S PYHI=$G(@$$^W4GL("P1CHB")@(NCB,"["_HI_"]"))
 .K @$$^W4GL("P1CHB")@(NCB,"["_HI_"]")
 .S @$$^W4GL("P1CHB")@(NCB,HB)=PYHI
 ;
 Q 1
 ;
 ;
HICHK(PRM) ;
 N SUM,W4HSB
 N HB S HB=$P(PRM,";")
 N HI S HI=$P(PRM,";",2)
 D ^W4HSBGET(HB,"H")
 S SUM=$G(W4HSB("TOT"))
 K W4HSB
 D ^W4HSBGET(HI,"HI")
 N ITRA S ITRA=$G(W4HSB("TOT"))-$G(W4HSB("HBHITOT"))
 I ITRA'<SUM Q "OK"
 Q $J(SUM,2,2)_"<>"_$J(ITRA,2,2)
 ;
DELDEAL(MOM,HI) ;
 W "<td>"
  D ROUNDBUT^%W1JS("deldeal",$$^%W1DICT("DELLINK2DEAL"),"DelLink2Deal('"_+NOM_"','"_HI_"')","color:red",",,,180")
 W "</td> "
 Q
 ;
SBMDELDEAL(HB) ;
 N W4HSB,HBHI
 D ^W4HSBGET(HB,"H")
 N LK S LK=$G(W4HSB("LKH")) Q:'LK "CUSTOMNOTDEFINED"
 N SUM S SUM=$G(W4HSB("TOT"))
 N HI,GLHI,GLHB
 S HI=+$G(W4HSB("HBHI")) Q:'HI "DEALNOTDEFINED"
 ;
 S GLHI=$$^W4GL("KLF")_"(LK,""HI"","""_HI_""")"
 S GLHB=$$^W4GL("KLF")_"(LK,""H"","""_HB_""")"
 ;
 K W4HSB
 D ^W4HSBGET(HI,"HI")
 ;
 S HBHI=$G(W4HSB("HBHI"))
 N HBHI1 S HBHI1=","_HBHI_","
 I HBHI1'[(","_HB_",") Q "NOTINVOICETODELETE"
 S HBHI1=$P(HBHI1,","_HB_",")_$P(HBHI1,","_HB_",",2)
 ;
 I $E(HBHI1)="," S HBHI1=$E(HBHI1,2,$L(HBHI1))
 I $E(HBHI1,$L(HBHI1))="," S HBHI1=$E(HBHI1,1,$L(HBHI1)-1)
 ;
 S $P(@GLHI,"\",22)=HBHI1
 S $P(@GLHI,"\",23)=$G(W4HSB("HBHITOT"))-SUM
 ;
 S $P(@GLHB,"\",22)=""
 ;
 N NCB S NCB=$P($G(@GLHI),"\",6)
 I NCB D
 .I $G(W4HSB("TOT"))>0,W4HSB("TOT")>W4HSB("PAID") Q
 .N PYHI S PYHI=$G(@$$^W4GL("P1CHB")@(NCB,HB))
 .S @$$^W4GL("P1CHB")@(NCB,"["_HI_"]")=PYHI
 .K @$$^W4GL("P1CHB")@(NCB,HB)
 Q 1
 ;
DELISKA(NOM) ;
 N I,I1,I2,J,B,CMNT,BFTAX,AFTAX S I1=""
 S I="" F  S I=$O(@$$GLHBN(NOM)@(I))  Q:I=""  I I S I1=I
 ;
 S I="" F  S I=$O(@$$GLHBN(NOM)@(I))  Q:I=""  I I'>I1 D
 .S B=$G(^(I))
 .S CMNT=$P(B,"\",2)
 .S BFTAX=$P(B,"\")
 .S AFTAX=$P(B,"\",3)
 .S I2=I1+I
 .S @$$GLHBN(NOM)@(I2)=-BFTAX_"\"_CMNT_"\"_-AFTAX
 ;
 F J=1,2,3,10,12,13,14,15 S $P(@$$GLHBN(NOM),"\",J)=0
 N STRING S STRING=$$LK^W4STRING("HI",+NOM)
 D PUT^%W1PRM("LHBCUR",NOM_";"_STRING)
 Q 1
 ;
 ;
MAILMKR(STAM) ;
 Q $G(%ARG("MKRYD"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSPART
W4HSPART(HZM) ; [ 21.04.16 18:17 ] [ 
 I $G(HZM)>0,$D(@$$^W4ORD@(HZM,"PART"))>9 Q 1
 Q 0
 

W4HSV
W4HSV ; ----> HASAVSHEVET   [ 16.09.25 10:55 ] [ 09.10.24 13:18 ] [ 15.03.22 09:56 ] 
 N (JB,%ARG,REG)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(REG)="" S REG=2
 
 I $G(%ARG("SHOW"))=0 D SHOWHSV Q  ; -- SHOW PREVIOUS
 ;
 I $G(%ARG("SBM")) S (DT1,DT2)="" G HZGM
 ;
 D ^W4HSVDT ; --> DT1,DT2, ^HSV
 S DT=DT2,DAT1=$$^%L1DC(DT,1),DAT=$$^%L1DC(DAT1,2)
 D ^W4HSVIN ;---> HSB(),TN(),FILE,PATH,GLBL,MRK,REG
 ;
HZGM ;---------------------- HAZAGAT MANA ------------------
 ;
 D ^W4HSVHZG(DT1,DT2)
 ;
END ;
 ;---------------------------------- END OF BODY ----
 Q
 ;
 ;
HV(DT,NP) ;
 N DAT,DAT1,ID
 S DAT1=$$^%L1DC(DT,1)
 S DAT=$$^%L1DC(DAT1,2)
 ;
 S ID=DT
 I $$HSVZ^W4PRM S ID=+$G(@GLBL@("NP"))
 ;
 S ASM=""
 I $G(@$$^W4PRM@("HSVCA")) S ASM=$$ASM(DT)
 ;
 S GMAM=$$MAMD^W4L(DT)
 N TOT S TOT=$G(@GLBL@("F","CMAM"))+$G(@GLBL@("G","CMAM"))+$$SVCMAM
 N TOTMAMPD S TOTMAMPD=$G(@GLBL@("CMAM",1))
 N KFMAM S KFMAM=1 ;; I TOTMAMPD S KFMAM=TOT/TOTMAMPD ; *** 04/07/21
 I KFMAM<1.02!(KFMAM>0.98) S KFMAM=1
 ;;S ^AA("W4HSV","KFMAM")=KFMAM
 N KPH S KPH=$G(@$$^W4PL@("HSV","KPH"))
 ;
 N SG
 S SG="znyex"
 I $G(@$$^W4PL@("HSV","NOHMK")) G HB ; --- NO HMK PARAMETER
 ;
 N SSUM,SSUMMTB S SSUM=0
 K SUM D SUM("F")
 ;
 I '$G(@$$^W4PL@("MATB")) D
 .D HMK("F","onefn")
 ;
 I $G(@$$^W4PL@("MATB")) D
 .S SUMMTB=0
 .N N S N="" F  S N=$O(@$$^W4GL("P1SUGM")@(N)) Q:N=""  Q:N'?1N.N  D
 ..D SUMMTB(N,$P($G(@$$^W4GL("P1SUGM")@(N)),"\",2))
 .K SUM D SUM("F") D HMK("F","wng g""y")
 ;
 I $L($G(HSB("T"))),$$^W4TIPPD(DT) D  ; --- TIPIM IN PIDYON
 .S SUM=SUMT,KM=KMT,SUM1=$J($G(SUM)*100/(100+GMAM),2,2),SUM2=SUM-SUM1
 .I 'KPH D
 ..D ZAP(TN("HFTP"),SUM,HSB("T"),0,0,SUM1,HSB("MH"),SUM2,HSB("MAMMH"),ID,KM,DAT1,DAT1,KM_" "_SG_" mitih")
 .I KPH D
 ..D ZAP(TN("HFTP"),SUM,HSB("T"),0,0,0,0,0,0,ID,KM,DAT1,DAT1,KM_" "_SG_" dtew-mitih") S SSUM=SSUM+SUM
 ;
 K SUM
 D SUM("GO") ; -- ?
 D HMK("GO","wiy")
 ;
 K SUM D SUM("GB")
 D HMK("GB","wpa dxard")
 ;
 K SUM F II="I","V1" D SUM(II)
 D HMK("IK","hxk`xyi","dtew-k`xyi")
 ;
 K SUM F II="J","V2" D SUM(II)
 D HMK("JK","l`k","dtew-l`k")
 ;
 K SUM F II="K","V3" D SUM(II)
 D HMK("KK","qxpiic","dtew-piic")
 ;
 K SUM F II="L","V4" D SUM(II)
 D HMK("LK","AMEX","dtew-AMEX")
 ;
 ;K SUM F II="M","V5" D SUM(II)
 ;D HMK("MK","JCB","dtew-JCB")
 ;
 K SUM F II="N","V6" D SUM(II)
 D HMK("NK","ine`l","dtew-ine`l")
 ;
 K SUM F II="O","V7" D SUM(II)
 D HMK("OK","KK","dtew-mewcx`w")
 ;
 K SUM F II="Q","V9" D SUM(II)
 D HMK("QK","FI","dtew-ihipit")
 ;
 K SUM D SUM("Z") I $L(HSB("ZK")) D
 .D HMK("ZK","iekif")
 ;
 I KPH D
 .N SUM1,SUM2
 .S SUM1=$J($G(SSUM)*100/(100+GMAM),2,2),SUM2=SSUM-SUM1
 .D ZAP(TN("HMK"),0,0,0,0,SUM1,HSB("KUPA"),SUM2,HSB("MAMMH"),ID,KM,DAT1,DAT1,KM_" "_SG_" tew zeqpkd")
 ;
HB ;------------------------ HESHBONIOT MAS & KABALOT -----------
 ;^HSV(DAT,KUP,LKH,SUGDOC-CABN-SUGPL)=SUMPL
 ;          N   N1 SUGTD   TD    VT    VL
 ;---------------------------------------------------------------
 ;
 D HBCB^W4HSVCB ;--- HESHBONIOT MAS & KABALOT
 ;
 ;
 ;--------------------  HESHBONIOT MI SAPAKIM  ------------------
 ;
 I $$^W4IFMLY,'$D(REG) D HSBMLY(DT,MRK)
 ;
 ;---------------------  HAFKADOT  --------------------
 Q:$G(@$$^W4PL@("HSV","NOHFK"))
 ;
 D ^W4HSVFK
 Q
 ;
 ;
HSBMLY(DT,MRK) ;
 N DAT,DAT1
 S DAT1=$$^%L1DC(DT,1)
 S DAT=$$^%L1DC(DAT1,2)
 D ^W4HSVML(MRK) ;
 Q
 ;
 ;
SUM(II) ;
 S KM=0,KMT=0
 N N S:'$D(SUM) SUM=0
 S N="" F  S N=$O(@GLBL@(II,N)) Q:N=""  I N S SUM=SUM+$G(^(N))
 S N="" F  S N=$O(@GLBL@(II_"#",N)) Q:N=""  I N S KM=KM+$G(^(N))
SUMT ;;---- IM TIP HUZAG BDOCH HU YORED MI MEZUMAN
 N TIPMIN
 S SUMT=0
 S TIPMIN=0
 I $$TIPMIN^W4TIPPD(DT)!('$$TIPMIN^W4TIPPD(DT)&$L($G(HSB("T")))),'$$TIPNO^W4TIPPD(DT) S TIPMIN=1
 ;
 I II="F",TIPMIN D  ; -- SUB TIPS FROM CASH
 .N N S N="" F  S N=$O(@GLBL@("T",N)) Q:N=""  I N S SUMT=SUMT+$G(^(N))
 .N N S N="" F  S N=$O(@GLBL@("T#",N)) Q:N=""  I N S KMT=KMT+$G(^(N))
 .S SUM=SUM-SUMT
 .S KM=KM ;;-KMT
 ;
 I $$NOMAM^W4PRM D  Q
 .S SUM1=$J($G(@GLBL@(II,"CMAM"))*KFMAM*100/(100+GMAM),2,2)
 .S SUM2=$J($G(@GLBL@(II,"CMAM"))*KFMAM*GMAM/(100+GMAM),2,2)
 ;
 S SUM1=$J($G(SUM)*100/(100+GMAM),2,2),SUM2=SUM-SUM1
 Q
 ;
 ;
HMK(VT,NVT1,NVT2) ;
 I '$G(SUM),'$G(SUM1),$G(SUM2) Q
 I $G(VT)="" Q
 I '$D(HSB(VT)) Q
 ;
 I $G(NVT2)="" S NVT2="dtew "_NVT1
 ;
 I '$$NOMAM^W4PRM D  Q
 .I '$G(@$$^W4PL@("HSV","KPH")) D
 ..D ZAP(TN("HMK"),SUM,HSB(VT),0,0,SUM1,HSB("MH"),SUM2,HSB("MAMMH"),ID,KM,DAT1,DAT1,KM_" "_SG_" "_NVT1)
 .;
 .I $G(@$$^W4PL@("HSV","KPH")) D
 ..D ZAP(TN("HMK"),SUM,HSB(VT),0,0,0,0,0,0,ID,KM,DAT1,DAT1,KM_" "_SG_" "_NVT2) S SSUM=SSUM+SUM
 ;
 I $$NOMAM^W4PRM D  Q
 .I '$G(@$$^W4PL@("HSV","KPH")) D
 ..D ZAP(TN("HMK"),SUM1+SUM2,HSB(VT),0,0,SUM1,HSB("MH"),SUM2,HSB("MAMMH"),ID,KM,DAT1,DAT1,"nrnl tk "_KM_" "_SG_" "_NVT1)
 ..;;D ZAP(TN("HMK"),SUM-SUM1-SUM2,HSB(VT),0,0,SUM-SUM1-SUM2,HSB("NOMAM"),0,HSB("MAMMH"),ID,KM,DAT1,DAT1,"nrn xeht "_KM_" "_SG_" "_NVT1)
 ..D ZAP("",SUM-SUM1-SUM2,HSB(VT),0,0,SUM-SUM1-SUM2,HSB("NOMAM"),0,"",ID,KM,DAT1,DAT1,"nrn ht "_KM_" "_SG_" "_NVT1)
 .;
 .I $G(@$$^W4PL@("HSV","KPH")) D
 ..D ZAP(TN("HMK"),SUM,HSB(VT),0,0,0,0,0,0,ID,KM,DAT1,DAT1,KM_" "_SG_" "_NVT2) S SSUM=SSUM+SUM
 Q
 ;
 ;
SUMMTB(MB,NM) ;
 N KPH S KPH=$G(@$$^W4PL@("HSV","KPH"))
 S SUM=$P($G(@GLBL@("MTB",MB)),"!",2)
 S SUM1=$J($G(SUM)*100/(100+GMAM),2,2),SUM2=SUM-SUM1
 S SUMMTB=$G(SUMMTB)+$P($G(@GLBL@("MTB",MB)),"!",2)
 ;
 I '$D(HFK) D
 .I 'KPH,SUM D
 ..D ZAP(TN("HMK"),SUM,HSB("F",MB),0,0,SUM1,HSB("MH"),SUM2,HSB("MAMMH"),ID,KM,DAT1,DAT1,"dlaw/qn 'yg "_NM)
 .I KPH,SUM D
 ..D ZAP(TN("HMK"),SUM,HSB("F","MB"),0,0,0,0,0,0,ID,KM,DAT1,DAT1,"dtew <- wng "_NM)
 ;
 I $D(HFK) D
 .I KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("KUPA"),0,0,ID,KM,DAT1,DAT1,"dcwtd "_NM)
 .I 'KPH,$G(HSB("F",MB))'="" D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("F",MB),0,0,ID,KM,DAT1,DAT1,"dcwtd "_NM)
 Q
 ;
 ;
ZAP(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD2,TD1,DAT1,DAT2,TXT) ; -- TD1,TD2 --> TD2,TD1 *** LEV 05/12/15
 I $G(ASM) S TD1=ASM
 D ^W4HSVZP(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD1,TD2,DAT1,DAT2,TXT) ;
 Q
 ;
SHOWHSV ;
 N (JB,%ARG,%REM,REG)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D ^W4BUTTON("new",$$^%W1DICT("CREATENEWFILE2HASHAVSHEVET"),"CreateNewFile('"_$G(REG)_"')")
 W $$NBSP^%L1FRM(5)
 S W4BCK("SZ")=12 D ^W4BCK
 W "<br><br>",!
 ;
 D ^W4HSVHST
 ;
 W "</div>",!
 Q
 ;
 ;
CALC(JB,MEDAT,ADDAT,REG,MEMRK,ADMRK)
 N (JB,%ARG,%REM,MEDAT,ADDAT,REG,MEMRK,ADMRK)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(REG)="" S REG=2
 K @$$^W4MAIN("HHH") S @$$^W4MAIN("HHH")=1,HSV=""
 D PUT^%W3DEB("W4HSV-CALC","JB=JB&MEDAT=MEDAT&ADDAT=ADDAT&REG=REG&MEMRK=MEMRK&ADMRK=ADMRK")
 S %ARG("MEDAT")=$G(MEDAT)
 S %ARG("ADDAT")=$G(ADDAT)
 S %ARG("REG")=REG
 ;;I '$$^W4IFMLY!$G(@$$^W4PL@("HSV","NOMLY")),'$G(@$$^W4PL@("HSV","PAR")) S REG=2 G BG1
 ;
BG1 K @$$^W4MAIN("TMPS111"),@$$^W4MAIN("S222")
 I '$G(ADMRK) S ADMRK=9999
 ;
 D ^W4HSVDT ; --> DT1,DT2, ^HSV
 ;
 S DT=DT2,DAT1=$$^%L1DC(DT,1),DAT=$$^%L1DC(DAT1,2)
 ;
 D ^W4HSVIN ;---> HSB(),TN(),FILE,PATH,GLBL,MRK,REG
 ;
 I REG=1 D  G ENDC
 .N UCIML S UCIML=$G(^[$$^W3MAIN]UCI("MLG")) Q:UCIML=""
 .F DT=DT1:1:DT2 F MRK=MEMRK:1:ADMRK D
 ..I $D(^[UCIML]YZRN(MRK)),$P($G(^[UCIML]YZRN(MRK,10)),"*",2)="k" D
 ...D HSBMLY(DT,MRK)
 ;
 I REG=3 D  G ENDC  ;   ---------------- ITEMS SALES
 .F DT=DT1:1:DT2 D ^W4HSVP(DT)
 ;
 I '$$HSVZ^W4PRM F DT=DT1:1:DT2 D HV(DT) ; ---------------- HMK, HB , CB
 I $$HSVZ^W4PRM D
 .N NP
 .F DT=DT1:1:DT2 D
 ..N DAT S DAT=$ZD(DT,"YYMMDD")
 ..S NP="" F  S NP=$O(@GLBL) Q:NP=""  S @GLBL@("NP")=NP D HV(DT,NP)
 ;
ENDC D PUT^%W1PRM("W4HSV",1)
 Q
 ;
 ;
SVCMAM(STAM) ; 
 N SUM S SUM=0
 N J F J=1:1:6 D
 .S SUM=SUM+$G(@GLBL@("V"_J,"CMAM"))
 Q SUM
 ;
 ;
ASM(DT) ; 
 N DT0,DT1 S DT0=(DT+1)_"000000"
 S DT1=$O(@$$^W4GL("DUMP1")@(DT0)) Q:DT1="" ""
 ;
 I $E(DT1,6,10)>(14*3600) D  Q:DT1="" ""
 .S DT0=DT_"000000"
 .S DT1=$O(@$$^W4GL("DUMP1")@(DT0))
 ;
 N NP S NP=$G(@$$^W4GL("DUMP1")@(DT1)) Q:NP="" ""
 N A S A=$P($G(@$$^W4GL("DUMP")@(NP)),"|",5) Q:A="" ""
 Q A
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSV180
W4HSV180(STAM) ; [ 08.03.12 05:21 ] [
 I $G(@$$^W4PL@("HSV"))="" Q 1
 Q 0

W4HSV90
W4HSV90(STAM) ; [ 08.03.12 05:22 ] [
 I $G(@$$^W4PL@("HSV"))=90 Q 1
 Q 0

W4HSVCB
W4HSVCB ;              [ 15.12.25 02:39 ] [ 04.12.25 13:03 ] [ 16.09.25 10:58 ] 
 ;  INPUT : DAT
 ;------------------ KABALOT MI- LAKOHOT MI- K ------------------------------
CB(VT) ;
 Q:$D(HFK)  ; -- FROM ^W4HSVFK
 I VT="F" D ZAP(TN("CB"),SUM,HSB("F"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"onefn "_TD_" dlaw")
 I VT="GM",$D(HSB("GM")),SUM S:'$G(DATPR) DATPR=DAT1 D ZAP(TN("CB"),SUM,HSB("GM"),0,0,SUM,NHSB,0,0,TD,0,DAT1,$J($TR(DATPR,"./",""),6),"onefn wiy "_TD_" dlaw")
 I VT="G"!(VT="GO") S:'$G(DATPR) DATPR=DAT1 D ZAP(TN("CB"),SUM,HSB("G"),0,0,SUM,NHSB,0,0,TD,0,DAT1,$J($TR(DATPR,"./",""),6),"iegc wiy "_TD_" dlaw")
 I VT="B" D ZAP(TN("CB"),SUM,HSB("BANK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,$J($TR(DATPR,"./",""),6),"zi`wpa dxard "_TD_" dlaw")
 I VT="I" D ZAP(TN("CB"),SUM,HSB("IK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"hxk`xyi "_TD_" dlaw")
 I VT="J" D ZAP(TN("CB"),SUM,HSB("JK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"dfie "_TD_" dlaw")
 I VT="K" D ZAP(TN("CB"),SUM,HSB("KK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"qxpiic "_TD_" dlaw")
 I VT="L" D ZAP(TN("CB"),SUM,HSB("LK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"AM.EXP "_TD_" dlaw")
 I VT="M" D ZAP(TN("CB"),SUM,HSB("MK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"JCB "_TD_" dlaw")
 I VT="N" D ZAP(TN("CB"),SUM,HSB("NK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"ine`l "_TD_" dlaw")
 I VT="O" D ZAP(TN("CB"),SUM,HSB("KK"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"mewcx`w "_TD_" dlaw")
 I VT="MK" D ZAP(TN("CB"),SUM,HSB("MKR"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"xewn qn iekip")
 I VT="Q" D ZAP(TN("CB"),SUM,HSB("FI"),0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,"tipihi "_TD_" dlaw")
 Q
 ;
HBCB ;
 ;------------------------ HESHBONIOT MAS & KABALOT -----------
 ;^HSV(DAT,KUP,LKH,SUGDOC-CABN-SUGPL)=SUMPL
 ;          N   N1 SUGTD   TD    VT    VL
 ;-----------------------------------------
 N N,N1,N2,TD,SUGTD,VT,VL,DATPR,SUM,SUM1,SUM2,NHSB
 ;
 N HSVGL S HSVGL=$$^W4GL("HSV")
 ;
 S N="" F  S N=$O(@HSVGL@(DAT,N)) Q:N=""  D
 .S N1="" F  S N1=$O(@HSVGL@(DAT,N,N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(@HSVGL@(DAT,N,N1,N2)) Q:N2=""  D
 ...S (TD,TD0)=$P(N2,"-",2),SUGTD=$P(N2,"-",1)
 ...S VT=$P(N2,"-",3),DATPR=$P(N2,"-",4) ; --- CABALOT
 ...
 ...S VL=$G(@HSVGL@(DAT,N,N1,N2))
 ...S SUM=+VL,SUM1=SUM-$P(VL,"\",2),SUM2=$P(VL,"\",2)
 ...
 ...I $L(TD)>5,'$$NEWHSV^W4PRM S TD=$E(TD,$L(TD)-4,$L(TD))
 ...I $L(TD)>9,$$NEWHSV^W4PRM S TD=$E(TD,$L(TD)-8,$L(TD))
 ...
 ...S NHSB=$$DEFNHSB(N1)
 ...
 ...;;I $G(@$$^W4PL@("SNIF"))>1 D
 ....S TD=@$$^W4PL@("SNIF")_$TR($J($E(TD,$L(TD)-3,100),4)," ",0)
 ...
 ...I SUGTD="H"!(SUGTD="HBZ") D  ;------------------ HESBONIT MAS
 ....N TZ,HBMAS
 ....S TZ=$$TZ^W4L(N1)
 ....S HBMAS="" I SUGTD="H",$G(TD0) S HBMAS=$$GETNOM9^W4HBMAS(TD0,"H")
 ....I SUGTD="HBZ",$G(TD0) S HBMAS=$$GETNOM9^W4HBMAS(TD0,"TZ")
 ....
 ....I 'GMAM D  Q
 .....D:SUGTD="HBZ" SWAP
 .....D ZAP(TN("HML"),SUM,NHSB,0,0,SUM,HSB("MH"),0,0,TD,0,DAT1,DAT1,TD_" oeayg",TZ,HBMAS)
 ....;
 ....I $G(@$$^W4PL@("USER"))="MAFINS" D  Q
 .....I 'SUM2 D  Q
 ......I SUGTD="HBZ" D ZAP("ftd",SUM1,90015,0,0,SUM,NHSB,0,0,TD,0,DAT1,DAT1,TD_"iekif zipeayg") Q
 ......D ZAP("td",SUM,NHSB,0,0,SUM,90015,0,0,TD,0,DAT1,DAT1,TD_" n""rn `ll zipeayg")
 .....I SUGTD="H" D ZAP("akd",SUM,NHSB,0,0,SUM1,90011,SUM2,HSB("MAMMH"),TD,0,DAT1,DAT1,TD_" qn zipeayg")
 .....;;I SUGTD="HBZ" D ZAP("fkd",SUM,NHSB,0,0,SUM1,90012,SUM2,HSB("MAMMH"),TD,0,DAT1,DAT1,TD_"iekif qn zipeayg")
 .....I SUGTD="HBZ" D ZAP("fkd",SUM1,90012,SUM2,HSB("MAMMH"),SUM,NHSB,0,0,TD,0,DAT1,DAT1,TD_"iekif qn zipeayg")
 ....;
 ....I HSB("MH")="" S SUM1=0
 ....I HSB("MAMMH")="" S SUM2=0
 ....
 ....I SUGTD="H" D
 .....I '$$NOMAM^W4PRM D  Q
 ......D ZAP(TN("HML"),SUM,NHSB,0,0,SUM1,HSB("MH"),SUM2,HSB("MAMMH"),TD,0,DAT1,DAT1,TD_" qn zipeayg",TZ,HBMAS)
 .....
 .....N SUMMAM S SUMMAM=$J(SUM2*(100+GMAM)/GMAM,2,2)
 .....D ZAP(TN("HML"),SUMMAM,NHSB,0,0,SUMMAM-SUM2,HSB("MH"),SUM2,HSB("MAMMH"),TD,0,DAT1,DAT1," nrn tk wlg "_TD_" qn yg",TZ,HBMAS)
 .....D ZAP("",SUM-SUMMAM,NHSB,0,0,SUM-SUMMAM,HSB("NOMAM"),0,"",TD,0,DAT1,DAT1," nrn ht wlg "_TD_" qn yg",TZ,HBMAS)
 ....
 ....I SUGTD="HBZ" D
 .....D SWAP
 .....I '$G(@$$^W4PRM@("HSVZC")) D
 ......D ZAP(TN("HMZ"),SUM,NHSB,0,0,SUM1,HSB("ZC"),SUM2,HSB("MAMZC"),TD,0,DAT1,DAT1,TD_" iekif qn zipeayg",TZ,HBMAS)
 .....I $G(@$$^W4PRM@("HSVZC")) D
 ......D ZAP(TN("HMZ"),SUM1,NHSB,SUM2,HSB("MAMMH"),SUM,HSB("ZC"),0,0,TD,0,DAT1,DAT1,TD_" iekif qn zipeayg",TZ,HBMAS)
 ...
 ...I SUGTD="D" D CB(VT) ;---------- KABALA
 Q
 ;
 ;
ZAP(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD1,TD2,DAT1,DAT2,TXT,TZ,HBMAS) ;--> TD1,TD2 --> TD2,TD1 *** LEV 05/12/15
 D ^W4HSVZP(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD1,TD2,DAT1,DAT2,TXT,$G(TZ),$G(HBMAS)) ;
 Q
 ;
DEFNHSB(N) ;
 N NHSB
 S NHSB=$P($G(^LKH(N,1)),"*",1)
 I NHSB S NHSB=+NHSB
 I $$DELIS^W4PRM Q 20001  ; --14/05/25
 I NHSB?.P!(NHSB=0) S NHSB=N
 I $L(NHSB)>8 S NHSB="9"_$E(NHSB,$L(NHSB)-6,255)
 Q NHSB
 ;
SWAP ;
 I SUGTD="HBZ",HSB("MH")=HSB("ZC"),SUM>0 D
 .S SUM=-SUM,SUM1=-SUM1,SUM2=-SUM2
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVDT
W4HSVDT ;--------> TAARIH HAAVARA   [ 29.03.26 02:13 ] [ 17.09.18 07:30 ] [ 06.02.13 13:54 ] 
 K @$$^W4MAIN("HHH")
 S DT1=$$^%L1DC($G(%ARG("MEDAT")),3)
 S DT2=$$^%L1DC($G(%ARG("ADDAT")),3)
 D SUM(DT1,DT2)
 Q
 ;
SUM(DT1,DT2,PR)
 N DT,DAT
 D ^W4SUMZRO
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .I $G(PR) W DAT,!
 .D ^W4SUM
 Q
 
 
 
 

W4HSVFK
W4HSVFK ;------------------ HAFKADOT -----------------------          [ 17.11.25 11:01 ] [ 16.09.25 11:01 ] [ 11.03.19 10:31 ] 
 ; --- INPUT - DAT
 ;----------------------------------------------------------
 ;^CHBANK(NUM,$$^%L1DC(LPR,2),BANK,SNIF,CHEK)=
 ;  TSH_"\"_DATZ_"\"_HESH_"\\"_TZ_"\"_KUP_"\"_MSHM_"\"_NSID
 ;----------------------------------------------------------
 ;
 I '$G(@$$^W4PL@("HSV","HFKT")) G JASHIR
 ;
 N I
 S NUM=0 F I=1:1 Q:'$D(@$$^W4GL("CHBANK")@(I))  D
 .I DAT=$$^%L1DC($P(^(I),"\",3),2) D HFK(I)
 ;
 G CAJAD
 ;---------------------
 ;
 ;
JASHIR ;
 N KPH S KPH=$G(@$$^W4PL@("HSV","KPH"))
 ;
 I '$G(@$$^W4PL@("MATB")) D
 .K SUM D SUM^W4HSV("F")
 .I KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("KUPA"),0,0,DT,0,DAT1,DAT1,"dcwtd onefn")
 .I 'KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("F"),0,0,DT,0,DAT1,DAT1,"dcwtd onefn")
 .
 .K SUM D SUM^W4HSV("FD")
 .I KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("KUPA"),0,0,DT,0,DAT1,DAT1,"lyz dcwtd onefn")
 .I 'KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("F"),0,0,DT,0,DAT1,DAT1,"lyz dcwtd onefn")
 ;
 I $G(@$$^W4PL@("MATB")) D
 .S SUMMTB=0 N HFK S HFK=""
 .N N S N="" F  S N=$O(@$$^W4GL("P1SUGM")@(N)) Q:N=""  Q:N'?1N.N  D
 ..D SUMMTB^W4HSV(N,$P($G(@$$^W4GL("P1SUGM")@(N)),"\",2))
 .
 .K SUM D SUM^W4HSV("F") S SUM=SUM-SUMMTB N II
 .I KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("KUPA"),0,0,DT,0,DAT1,DAT1,"dcwtd onefn")
 .I 'KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("F"),0,0,DT,0,DAT1,DAT1,"dcwtd onefn")
 .
 .K SUM D SUM^W4HSV("FD")
 .I KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("KUPA"),0,0,DT,0,DAT1,DAT1,"lyz dcwtd onefn")
 .I 'KPH D ZAP(TN("HFMZ"),SUM,HSB("BANK"),0,0,SUM,HSB("F"),0,0,DT,0,DAT1,DAT1,"lyz dcwtd onefn")
 ;
 ;
 K SUM
 D SUM("GO"),SUM("GDO")
 I KPH D ZAP(TN("HFCH"),SUM,HSB("BANK"),0,0,SUM,HSB("KUPA"),0,0,DT,0,DAT1,DAT1,"dcwtd wiy")
 I 'KPH D ZAP(TN("HFCH"),SUM,HSB("BANK"),0,0,SUM,HSB("G"),0,0,DT,0,DAT1,DAT1,"dcwtd wiy")
 ;
 K SUM D SUM("GM"),SUM("GDM")
 I $D(HSB("GM")),SUM D
 .I KPH D ZAP(TN("HFCH"),SUM,HSB("BANK"),0,0,SUM,HSB("KUPA"),0,0,DT,0,DAT1,DAT1,"dcwtd onefn wiy")
 .I 'KPH D ZAP(TN("HFCH"),SUM,HSB("BANK"),0,0,SUM,HSB("GM"),0,0,DT,0,DAT1,DAT1,"dcwtd onefn wiy")
 ;
CAJAD ;--------------------------- CA JAD HAFKADA ----------
 N DAT11 S DAT11=$$DAT11("I",DAT1)
 K SUM D SUM("I"),SUM("ID")
 I HSB("I")'="",HSB("IK")'="" D ZAP(TN("HFIJ"),SUM,HSB("I"),0,0,SUM,HSB("IK"),0,0,DT,0,DAT1,DAT11,"dcwtd 'ci hxk`yi")
 ;
 S DAT11=$$DAT11("J",DAT1)
 K SUM D SUM("J"),SUM("JD")
 I HSB("J")'="",HSB("JK")'="" D ZAP(TN("HFVJ"),SUM,HSB("J"),0,0,SUM,HSB("JK"),0,0,DT,0,DAT1,DAT11,"dcwtd 'ci l`k dfie")
 ;
 S DAT11=$$DAT11("K",DAT1)
 K SUM D SUM("K"),SUM("KD")
 I HSB("K")'="",HSB("KK")'="" D ZAP(TN("HFDJ"),SUM,HSB("K"),0,0,SUM,HSB("KK"),0,0,DT,0,DAT1,DAT11,"dcwtd 'ci qxpiic")
 ;
 S DAT11=$$DAT11("L",DAT1)
 K SUM D SUM("L"),SUM("LD")
 I HSB("L")'="",HSB("LK")'="" D ZAP(TN("HFAEJ"),SUM,HSB("L"),0,0,SUM,HSB("LK"),0,0,DT,0,DAT1,DAT11,"dcwtd 'ci AM.EXP.")
 ;
SHVA ;----------------------- SHVA HAFKADA -----------
 N DAT11 S DAT11=$$DAT11("I",DAT1)
 K SUM D SUM("V1"),SUM("V1D")
 I HSB("I")'="",HSB("IK")'="" D ZAP(TN("HFIA"),SUM,HSB("I"),0,0,SUM,HSB("IK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay hxk`xyi")
 ;
 S DAT11=$$DAT11("J",DAT1)
 K SUM D SUM("V2"),SUM("V2D")
 I HSB("J")'="",HSB("JK")'="" D ZAP(TN("HFVA"),SUM,HSB("J"),0,0,SUM,HSB("JK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay l`k dfie")
 ;
 S DAT11=$$DAT11("K",DAT1)
 K SUM D SUM("V3"),SUM("V3D")
 I HSB("K")'="",HSB("KK")'="" D ZAP(TN("HFDA"),SUM,HSB("K"),0,0,SUM,HSB("KK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay qxpiic")
 ;
 S DAT11=$$DAT11("L",DAT1)
 K SUM D SUM("V4"),SUM("V4D")
 I HSB("L")'="",HSB("LK")'="" D ZAP(TN("HFAEA"),SUM,HSB("L"),0,0,SUM,HSB("LK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay AM.EXP.")
 ;
 S DAT11=$$DAT11("M",DAT1)
 K SUM D SUM("V5"),SUM("V5D")
 I HSB("M")'="",HSB("MK")'="" D ZAP(TN("HFJCA"),SUM,HSB("M"),0,0,SUM,HSB("MK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay JCB")
 ;
 S DAT11=$$DAT11("N",DAT1)
 K SUM D SUM("V6"),SUM("V6D")
 I HSB("N")'="",HSB("NK")'="" D ZAP(TN("HFALA"),SUM,HSB("N"),0,0,SUM,HSB("NK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay ine`l")
 ;
 S DAT11=$$DAT11("O",DAT1)
 K SUM D SUM("V7"),SUM("V7D")
 I HSB("O")'="",HSB("OK")'="" D ZAP(TN("HFKK"),SUM,HSB("O"),0,0,SUM,HSB("OK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay mewcx`w")
 ;
 S DAT11=$$DAT11("Q",DAT1)
 K SUM D SUM("V9"),SUM("V9D")
 I HSB("Q")'="",HSB("QK")'="" D ZAP(TN("HFFI"),SUM,HSB("Q"),0,0,SUM,HSB("QK"),0,0,DT,0,DAT1,DAT11,"dcwtd `ay ihipt")
 Q
 ;
 ;
SUM(II) ;
 N N S:'$D(SUM) SUM=0
 S N="" F  S N=$O(@GLBL@(II,N)) Q:N=""  S SUM=SUM+$G(^(N))
 S SUM1=$J($G(SUM)*100/(100+GMAM),2,2),SUM2=SUM-SUM1
 Q
 ;
ZAP(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD2,TD1,DAT1,DAT2,TXT) ;*** LEV 05/12/15 TD1,TD2 --> TD2,TD1
 D ZAP^W4HSV(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD2,TD1,DAT1,DAT2,TXT)
 Q
 ;
 ;
HFK(NUM) ;
 N DATHF,SUM1,LPR,BANK,SNIF,CHECK,SUMCH
 N CHBANK S CHBANK=$$^W4GL("CHBANK")
 S DATHF=$TR($P(@CHBANK@(NUM),"\",3),"./",""),SUMCH=0
 ;
 S SUM1=$P(^(NUM),"\",4) ;-- MEZUMAN HAFKADA
 D ZAP(TN("HFMZ"),SUM1,HSB("BANK"),0,0,SUM1,HSB("F"),0,0,DT,NUM,DATHF,DATHF,"dcwtd onefn")
 ;
 S LPR="" F  S LPR=$O(@CHBANK@(NUM,LPR)) Q:LPR=""  D  ; ----------- CHECKS
 .S BANK="" F  S BANK=$O(@CHBANK@(NUM,LPR,BANK)) Q:BANK=""  D
 ..S SNIF="" F  S SNIF=$O(@CHBANK@(NUM,LPR,BANK,SNIF)) Q:SNIF=""  D
 ...S CHECK="" F  S CHECK=$O(@CHBANK@(NUM,LPR,BANK,SNIF,CHECK)) Q:CHECK=""  D
 ....N A,SUM1,DATP,BSN,DATZ
 ....S A=^(CHECK) I A D
 .....S SUM1=A
 .....S DATP=$TR($$^%L1DC(LPR,1),".","")
 .....S DATZ=$TR($$^%L1DC($P(A,"\",2),1),".","")
 .....I $$^%L1DC(DATP,3)>$$^%L1DC(DATHF,3) D  ;--- CHECK DACHUJ
 ......S BSN=$TR($J($E(BANK,1,2),2)," ",0)_$TR($J($E(SNIF,1,3),3)," ",0)
 ......D ZAP(TN("HFCH"),SUM1,HSB("BANK"),0,0,SUM1,HSB("G"),0,0,CHECK,BSN,DATZ,DATP,"dcwtd wiy")
 .....I $$^%L1DC(DATP,3)'>$$^%L1DC(DATHF,3) D  ;--- CHECK MEZUMAN
 ......S SUMCH=SUMCH+SUM1
 ;
 D ZAP(TN("HFCH"),SUMCH,HSB("BANK"),0,0,SUMCH,HSB("G"),0,0,DT,NUM,DATHF,DATHF,"dcwtd onefn wiy")
 Q
 ;
 ;
DAT11(SUG,DAT1) ;
 N DAT11
 S DAT1=$TR(DAT1,".","")
 S DAT1=$TR(DAT1,"/","")
 D  Q DAT11
 .S DAT11=$S($E(DAT1,1,2)<16:"02",1:$S(SUG="K":15,1:"08"))
 .S DAT11=DAT11_$TR($J($S($E(DAT1,3,4)<12:$E(DAT1,3,4)+1,1:1),2)," ",0)
 .S DAT11=DAT11_$TR($J($S($E(DAT1,3,4)<12:$E(DAT1,5,6),1:$E(DAT1,5,6)+1),2)," ",0)
 Q
 
 
 
 
 

W4HSVGLA
W4HSVGLA(REG) ; [ 23.02.15 18:39 ] [
 I $G(REG)=2 S REG=""
 Q $$^W4GL("HFKD"_$G(REG))

W4HSVHST
W4HSVHST ; [ 16.11.17 12:29 ] [ 13.09.17 14:43 ] [ 10.09.17 18:04 ] 
 N REG S REG=$$^W4HSVREG
 W "<span>"_$$^%W1DICT("MOVING2HASHAVSHEVETPROTOCOL")_"</span>"
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width="""_$S($$US:"70",1:"40")_"%"" cellspacing=""0"" cellpadding=""0"">",!
 ;
 W "<tr><th>"_$$^%W1DICT("MEDATE")_"</th>"
  W "   <th>"_$$^%W1DICT("ADDATE")_"</th>"
  W "   <th>"_$$^%W1DICT("DOINGTIME")_"</th>"
  ;
  I $$US D
  .W "<th>"_$$^%W1DICT("RVNBEFOREVAT")_"</th>"
  .W "<th>"_$$^%W1DICT("MAM")_"</th>"
  .W "<th>"_$$^%W1DICT("RVNWITHOUTVAT")_"</th>"
  .W "<th>"_$$^%W1DICT("SUMALLPROFIT")_"</th>"
  .W "<th>"_$$^%W1DICT("RVNTOTWITHVAT")_"</th>"
 W "</tr>",!
 ;
 N A,N
 S HSVGL=$$^W4HSVGLA(REG)
 ;
 S N="" F  S N=$O(@HSVGL@(N),-1) Q:N=""  D
 .S A=$G(^(N))
 .S METRH=$ZD($P(A,"\"),"DD.MM.YY")
 .S ADTRH=$ZD($P(A,"\",2),"DD.MM.YY")
 .S ZBIZUA=$ZD($P(A,"\",3),"DD.MM.YY  24:60")
 .W "<tr style=""cursor:pointer"" onClick=""Show('"_N_"')"">"
 . W " <td>"_METRH_"</td><td>"_ADTRH_"</td><td>"_ZBIZUA_"</td>",!
 .I $$US D
 ..D CALC(N)
 ..W "<td>"_$J(SUMLFMAM,2,2)_"</td>"
 ..W "<td>"_$J(MAM,2,2)_"</td>"
 ..W "<td>"_$J(SUMNOMAM,2,2)_"</td>"
 ..W "<td>"_$J(SUMLFMAM+SUMNOMAM,2,2)_"</td>"
 ..W "<td>"_$J(SUMLFMAM+SUMNOMAM+MAM,2,2)_"</td>"
 .W "</tr>",!
 W "</table>",!
 Q
 ;
CALC(DT) ;
 N (JB,%ARG,DT,SUM,SUMLFMAM,SUMNOMAM,MAM)
 K SUM
 S HSHMK=$G(@$$^W4PL@("HSV","HMK"))
 S HSHB=$G(@$$^W4PL@("HSV","HB"))
 S HSNOMAM=$G(@$$^W4PL@("HSV","NOMAM"))
 S HSZIC=$G(@$$^W4PL@("HSV","HBZIC"))
 S HSMAM=$G(@$$^W4PL@("HSV","MAMI"))
 ;
 S GL=$$^W4GL("HFKD")_"("_DT_",""OK"")"
 N I F I=1:1 Q:'$D(@GL@(I))  D
 .S A=$G(^(I))
 .S HH1=$TR($E(A,51,58)," ","")
 .S HH2=$TR($E(A,59,66)," ","")
 .S HZ1=$TR($E(A,67,74)," ","")
 .S HZ2=$TR($E(A,75,82)," ","")
 .S SH1=$TR($E(A,83,94)," ","")
 .S SH2=$TR($E(A,95,106)," ","")
 .S SZ1=$TR($E(A,107,118)," ","")
 .S SZ2=$TR($E(A,119,130)," ","")
 .I SH1,HH1'?.P S SUM(HH1,"H")=$G(SUM(HH1,"H"))+SH1
 .I SH2,HH2'?.P S SUM(HH2,"H")=$G(SUM(HH2,"H"))+SH2
 .I SZ1,HZ1'?.P S SUM(HZ1,"Z")=$G(SUM(HZ1,"Z"))+SZ1
 .I SZ2,HZ2'?.P S SUM(HZ2,"Z")=$G(SUM(HZ2,"Z"))+SZ2
 ;
 S SUMLFMAM=$G(SUM(HSHMK,"Z"))+$G(SUM(HSHB,"Z"))-$G(SUM(HSZIC,"H"))
 S SUMNOMAM=$G(SUM(HSNOMAM,"Z"))-$G(SUM(HSNOMAM,"H"))
 S MAM=$G(SUM(HSMAM,"Z"))-$G(SUM(HSMAM,"H"))
 Q
 ;
US(STAM) ;
 I REG=2,$G(@$$^W4PL@("HSV","HMK"))'=""&($G(@$$^W4PL@("HSV","HB"))'="")&($G(@$$^W4PL@("HSV","HBZIC"))'="") Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVHV
W4HSVHV ;  ---- HAAVARA LE HASHAVSHEVET       [ 21.01.26 13:29 ] [ 15.12.25 15:09 ] [ 14.12.25 15:11 ] 
 ;--- REG = 0 - KUPA
 ;--- REG = 1 - MLY
 ;--- REG = 3 - PRITIM
 ;
 ; DT - TO DATE
 ; DT1 - FROM DATE
 ;-------------------------------------------
ZI N I ;
 D ^%L1TS
 N PRPRM S PRPRM=0
 I $G(REG)=3!($G(REG)=1&$$NEWHSV^W4PRM) S PRPRM=1
 D WFL(FILE,PRPRM)
 ;
 S HFKD=$$^W4HSVGLA(REG)
ARX ;
 K @HFKD@(DT,"OK")
 F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .S @HFKD@(DT,"OK",I)=$G(@$$^W4MAIN("S222")@(I))
 ;
 K @HFKD@(DT,"ER")
 F I=1:1 Q:'$D(@$$^W4MAIN("TMPS111")@(I))  D
 .S @HFKD@(DT,"ER",I)=$G(@$$^W4MAIN("TMPS111")@(I))
 ;
 I $G(DBL) D  K DBL
 .S $P(@HFKD@(DBL),"\",4)=$G(DBL("NAME"))_" i""r aey xared "
 ;
 S @HFKD@(DT)=DT1_"\"_DT_"\"_$H
 ;
 I $G(REG)=3 D  ; -- SAVE PARAMETERS FILE
 .K @$$^W4MAIN("S222")
 .N FL,I,ST
 .S FL=$P(FILE,"/",1,$L(FILE,"/")-1)_"/IMOVEIN.PRM"
 .F I=1:1 S ST=$T(TOHEN+I) Q:ST["Q  ;"  D
 ..S ST=$TR($P(ST,";",2,20),TS0,TSS)
 ..S @$$^W4MAIN("S222")@(I)=ST
 .D WFL(FL,1)
 ;
 I $G(REG)=2,$$NEWHSV^W4PRM D  ; -- SAVE PARAMETERS FILE
 .K @$$^W4MAIN("S222")
 .N FL,I,ST
 .S FL=$P(FILE,"/",1,$L(FILE,"/")-1)_"/MOVEIN.PRM"
 .F I=1:1 S ST=$T(MVPRM+I) Q:ST["Q  ;"  D
 ..S ST=$TR($P(ST,";",2,20),TS0,TSS)
 ..S @$$^W4MAIN("S222")@(I)=ST
 .D WFL(FL,1)
 ;
END K @$$^W4MAIN("S222") Q
 ;
 ;
WFL(FILE,PRM) ;--- PRM=1 ----------- HAAVARAT PRITIM
 C FILE:(DELETE)
 O FILE:(REWIND:NEWVERSION)
 ;
 I 'PRM,$$^W4HSV180 D  ; -- AROH
 .U FILE W "  0"_$J("",175),!
 I 'PRM,$$^W4HSV90 D  ; -- KAZAR
 .U FILE W "  0"_$J("",85),!
 N I
 F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .U FILE W $TR($TR(^(I),"""","'"),TS0,TSS),!
 ;
 I 'PRM,$$^W4HSV180 D
 .U FILE W $TR($J("",178)," ",9),!
 I 'PRM,$$^W4HSV90 D
 .U FILE W $TR($J("",88)," ",9),!
 ;
 S OK=1
 ;
 C FILE
 ;
 H 1
 ;
 I '$ZSY ZSY "zip -j "_$TR(FILE,".","")_" "_FILE
 ;
 N FL S FL=$ZPARSE(FILE,"NAME")
 ;
 I $G(@$$^W4PRM@("MAILHV")) D
 .D PRM^W4MAIL
 .N PATH,KOT,TO,CMD
 .S PATH=$P(FILE,"/",1,$L(FILE,"/")-1)
 .I PATH="" S PATH=$ZDIR
 .I $L(PATH),$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 .S PATH=$$FUNC^%LCASE(PATH)
 .I FILE["/" S FILE=$P(FILE,"/",$L(FILE,"/"))
 .S KOT=$G(@$$^W4PRM@("MAILHV","HEAD"))_"-"_FILE
 .S TO=$G(@$$^W4PRM@("MAILHV","TO")) Q:TO=""
 .S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 .S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 .S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 .;U 0 W $$FUNC^%UCASE(CMD),! H 3
 .ZSY CMD
 ;
EFL Q
 ;
 ;
TOHEN ;
 ;86      ;   dniyx jxe`   1 dxey
 ; 0   0  ;    gewl gztn   2 dxey
 ; 1   5  ;       `zknq`   3 dxey
 ;16  17  ;     jnqn beq   4 dxey
 ; 0   0  ;      gewl my   5 dxey
 ; 0   0  ;      1 zaezk   6 dxey
 ; 0   0  ;      2 zaezk   7 dxey
 ; 0   0  ;     2 `zknq`   8 dxey
 ; 7  14  ; `zknq` jix`z   9 dxey
 ; 0   0  ;    jxr jix`z  10 dxey
 ; 0   0  ;         okeq  11 dxey
 ; 0   0  ;         oqgn  12 dxey
 ; 0   0  ;        mihxt  13 dxey
 ; 0   0  ;   mipal oqgn  14 dxey
 ; 0   0  ;   mipal okeq  15 dxey
 ; 0   0  ; mipal oexign  16 dxey
 ; 0   0  ; zillk dgpd %  17 dxey
 ;80  84  ;       n"rn %  18 dxey
 ; 0   0  ;    miwzer'qn  19 dxey
 ; 0   0  ;         rahn  20 dxey
 ; 0   0  ;          xry  21 dxey
 ;19  30  ;    hixt gztn  22 dxey
 ;58  67  ;         zenk  23 dxey
 ;69  78  ;         xign  24 dxey
 ; 0   0  ;         rahn  25 dxey
 ; 0   0  ;       dgpd %  26 dxey
 ; 0   0  ;          xry  27 dxey
 ;32  56  ;      hixt my  28 dxey
 ; 0   0  ;  zecin zcigi  29 dxey
 ; 0   0  ;   diipw qn %  30 dxey
 ; 0   0  ;   itilg gztn  31 dxey
 ; 0   0  ;       dlnr %  32 dxey
 ; 0   0  ;       zefix`  33 dxey
 Q  ;
 ;
 ;
HV(PRM) ; --- T.VH
 N DT1 S DT1=$$^%L1DC($P(PRM,";"),3)
 N DT S ADDAT=$$^%L1DC($P(PRM,";",2),2)
 S DT=$$^%L1DC(ADDAT,4)
 N REG S REG=$P(PRM,";",3)
 N DIR S DIR=$$DIRL^%W1FREPX
 S FILE=$$FL(DIR,DT,REG)
 ;
 ;;C FILE:(DELETE)
 ;;ZSY "rm "_FILE
 ;
 ;;O FILE:(REWIND:NEWVERSION:WRITE)
 ;
 G ZI
 ;
FL(DIR,DT,REG) ;
 I +$G(REG)=0!($G(REG)=2) S REG=""
 N COD S COD="H"_REG_"-"_$ZD(DT,"YYMMDD")
 N FILE S FILE=DIR_COD
 Q FILE
 ;
MVPRM ; 
 ;    292  ;        dneyx jxe`  1 dxey
 ; 1   3   ;     drepz beq cew  2 dxey
 ; 4   12  ;     dpey`x `zknq`  3 dxey
 ; 13  21  ;     dipy `zknq`    4 dxey
 ; 22  31  ;      `zknq` jix`z  5 dxey
 ; 32  41  ;         jxr jix`z  6 dxey
 ; 0   0   ;         xignz cew  7 dxey
 ; 42  46  ;          rahn cew  8 dxey
 ; 47  96  ;             mihxt  9 dxey
 ; 97 111  ;     1 daeg oeayg  10 dxey
 ;112 126  ;     2 daeg oeayg  11 dxey
 ;127 141  ;     1 zekf oeayg  12 dxey
 ;142 156  ;    2 zekf oeayg   13 dxey
 ;157 168  ; g"ya 1 daeg mekq  14 dxey
 ;169 180  ; g"ya 2 daeg mekq  15 dxey
 ;181 192  ; g"ya 2 zekf mekq  16 dxey
 ;193 204  ; g"ya 2 zekf mekq  17 dxey
 ;205 216  ;g"hna 1 daeg mekq  18 dxey
 ;217 228  ;g"hna 2 daeg mekq  19 dxey
 ;229 240  ;g"hna 1 zekf mekq  20 dxey
 ;241 252  ;g"hna 2 zekf mekq  21 dxey
 ; 0   0   ;          3 jix`z  22 dxey
 ; 0   0   ;         3 `zknq`  23 dxey
 ; 0   0   ;             zenk  24 dxey
 ;253  272 ;             uaew  25 dxey
 ; 0   0   ;     zetqep zexrd  26 dxey
 ; 0   0   ;   2 zetqep zexrd  27 dxey
 ; 0   0   ;             sipq  28 dxey
 ;273 281  ;   dyxen wqr xtqn  29 dxey
 ; 0   0   ;        yeniya `l  30 dxey
 ; 0   0   ;         4 `zknq`  31 dxey
 ; 0   0   ;         5 `zknq`  32 dxey
 ; 0   0   ;          4 jix`z  33 dxey
 ; 0   0   ;          5 jix`z  34 dxey
 ;282  290 ;       d`vwd xtqn  35 dxey
 Q  ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVHZ9
W4HSVHZ9 ; [ 08.03.12 05:48 ] [
 W "<table id=""TblHsv"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""0"">",!
 W "<tr>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("dxey")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("dpey`x `zknq`")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("dzknq` jix`z")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("oerxtl jix`z")_"&nbsp;</th>"
  W " <th width=""20%"">&nbsp;"_$$H2U^%L1FRM("mihxt")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("daeg oeayg")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("zekf oeayg")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("daeg mekq")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("zekf mekq")_"&nbsp;</th>"
 W "</tr>",!
 ;
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .S A=$TR($G(^(I)),TSS,TS0)
 .S HH1=$E(A,1,8) S:HH1="" HH1=" "
 .S HZ1=$E(A,9,16) S:HZ1="" HZ1=" "
 .S SH=$TR($E(A,39,50)," ","")
 .I SH,HH1'?.P S SUM(HH1,"H")=$G(SUM(HH1,"H"))+SH
 .I SH,HZ1'?.P S SUM(HZ1,"Z")=$G(SUM(HZ1,"Z"))+SH
 .S ST=I_"\"_$E(A,17,21)_"\"_$E(A,22,27)_"\"_$E(A,33,38)_"\"_$E(A,54,75)_"\"
 .S ST=ST_HH1_"\"_HZ1_"\"
 .S ST=ST_$S(HH1'?.P:$J(SH,8,2),1:"")_"\"_$S(HZ1'?.P:$J(SH,8,2),1:"")
 .
 .W "<tr>"
 .F J=1:1:$L(ST,"\") D
 ..S B=$P(ST,"\",J)
 ..I $TR(B," ","")="" S B="&nbsp;"
 ..E  I B'?."-"1N.N.".".N S B=$$H2U^%L1FRM(B)
 ..W "<td>&nbsp;"_B_"&nbsp;</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 Q

W4HSVHZG
W4HSVHZG(DT1,DT2) ;  [ 22.12.25 07:38 ] [ 15.12.25 03:45 ] [ 11.02.25 05:09 ] 
 ;---------------------- HAZAGAT MANA ------------------
 ;
 N (JB,%ARG,%REM,DT1,DT2)
 N DT,DAT1,DAT
 D ^%L1TS
 ;
 S (MEDAT,%ARG("MEDAT"))=$$^%L1DC(DT1,1)
 S (ADDAT,%ARG("ADDAT"))=$$^%L1DC(DT2,1)
 ;
 S TMPREP1=$$^W4MAIN("TMPREP1")
 S TMPREP2=$$^W4MAIN("TMPREP2")
 ;
 I $D(@TMPREP1)>9 K @$$^W4MAIN("TMPS111") M @$$^W4MAIN("TMPS111")=@TMPREP1 K @TMPREP1 
 I $D(@TMPREP2)>9 K @$$^W4MAIN("S222") M @$$^W4MAIN("S222")=@TMPREP2 K @TMPREP2
 ;
 I $$SBM D
 .N IND
 .S IND=$G(%ARG("SBM"))
 .N HSVGLA S HSVGLA=$$^W4HSVGLA($$REG)
 .S A=$G(@HSVGLA@(IND))
 .S DT1=$P(A,"\")
 .S DT2=$P(A,"\",2)
 .K @$$^W4MAIN("TMPS111")
 .K @$$^W4MAIN("S222")
 .M @$$^W4MAIN("TMPS111")=@HSVGLA@(IND,"ER")
 .M @$$^W4MAIN("S222")=@HSVGLA@(IND,"OK")
 ;
 S DT=DT2
 S DAT1=$$^%L1DC(DT1,1)
 S DAT2=$$^%L1DC(DT2,1)
 ;
 I $D(@$$^W4MAIN("TMPS111")) D ERRPROT
 ;
 I '$D(@$$^W4MAIN("S222"))  K @$$^W4MAIN("TMPS111") G END
 ;
 D MNREP(MEDAT,ADDAT)
 ;
 W "<br>",!
 I $$SBM D
 .N FLHSV S FLHSV=$$FL^W4HSVHV($$DIRWEB^%W1FREPX,DT2,$$REG)
 .W "<a href="""_FLHSV_".zip"">"_FLHSV_".zip</a>",!
 .
 .I $$REG=2&$$NEWHSV^W4PRM D
 ..N FLHSVPRM S FLHSVPRM=$P(FLHSV,"/",1,$L(FLHSV,"/")-1)_"/MOVEINPRM"
 ..W "<a href="""_FLHSVPRM_".zip"">"_FLHSVPRM_".zip</a>",!
 .
 .I $$REG=3 D
 ..N FLHSVPRM S FLHSVPRM=$P(FLHSV,"/",1,$L(FLHSV,"/")-1)_"/IMOVEINPRM"
 ..W "<a href="""_FLHSVPRM_".zip"">"_FLHSVPRM_".zip</a>",!
 .
 .W "<br>",!
 W "<br>",!
 ;
 W "<span class=""hd"">"_$$^%W1DICT("RECORDSLISTFORHASHAVSHEVET",DAT1_"<>"_DAT2)_"</span>",!
 W "<br>",!
 W ""
 W "<br>",!
 ;
 I $$REG=3 D ^W4HSVPZG(DT1,DT2) G END ; --- ITEMS
 ;
 I $$^W4HSV90 D ^W4HSVHZ9 G TOT
 D DIVEX
 ;
 I $$SBM D CHKOPT
 ;
 W "<table id=""TblHsv"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""0"">",!
 W "<tr>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("dxey")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("drepz beq")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("dpey`x `zknq`")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("dzknq` jix`z")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("oerxtl jix`z")_"&nbsp;</th>"
  W " <th width=""15%"">&nbsp;"_$$H2U^%L1FRM("mihxt")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("1 daeg oeayg")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("2 daeg oeayg")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("1 zekf oeayg")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("2 zekf oeayg")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("1 daeg mekq")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("2 daeg mekq")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("1 zekf mekq")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("2 zekf mekq")_"&nbsp;</th>"
  I $$NEWHSV^W4PRM D
  .W " <th>&nbsp;"_$$H2U^%L1FRM("d`vwd xtqn")_"&nbsp;</th>"
 W "</tr>",!
 ;
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .D FRMST(I)
 .N NOM,HR S NOM=$$SPA^%L1FRM($P(ST,"\",3))
 .S HR=$P(ST,"\",6) 
 .
 .I $$HR(HR)="",$G(%ARG("CHKOPT"))'="",$G(%ARG("CHKOPT"))'[1 Q
 .I $$HR(HR)="HB",$G(%ARG("CHKOPT"))'="",$G(%ARG("CHKOPT"))'[2 Q
 .I $$HR(HR)="TZ",$G(%ARG("CHKOPT"))'="",$G(%ARG("CHKOPT"))'[3 Q
 .I $$HR(HR)="CB",$G(%ARG("CHKOPT"))'="",$G(%ARG("CHKOPT"))'[4 Q
 .
 .I SH1,HH1'?.P S SUM(HH1,"H")=$G(SUM(HH1,"H"))+SH1
 .I SH2,HH2'?.P S SUM(HH2,"H")=$G(SUM(HH2,"H"))+SH2
 .I SZ1,HZ1'?.P S SUM(HZ1,"Z")=$G(SUM(HZ1,"Z"))+SZ1
 .I SZ2,HZ2'?.P S SUM(HZ2,"Z")=$G(SUM(HZ2,"Z"))+SZ2
 .
 .W "<tr "
 .D 
 .. I $$HR(HR)="CB" D  Q
 ... N LK S LK=$G(@$$^W4GL("KLIN")@("CB",+NOM)) Q:LK=""
 ... W $$POINTER(I)_";ShowReceipt('"_+NOM_"','"_LK_"','ifr')"" "
 .. 
 .. I $$HR(HR)="HB" D  Q
 ... N LK S LK=$G(@$$^W4GL("KLIN")@("H",+NOM)) Q:LK=""
 ... W $$POINTER(I)
 ... I LK["+" W "ShowInvoice('"_+NOM_"','"_$P(LK,"+")_"','ifr',this)"" " Q
 ... W "ShowArmInvoice('"_NOM_"','"_LK_"','ifr','',0,this)"" "
 ..
 .. I $$HR(HR)="TZ" D  Q
 ... N LK S LK=$G(@$$^W4GL("KLIN")@("TZ",+NOM)) Q:LK=""
 ... W $$POINTER(I)
 ... I LK["+" W "ShowInvoice('"_+NOM_"','"_$P(LK,"+")_"','ifr',this)"" " Q
 ... W "ShowArmInvoice('"_+NOM_"','"_LK_"','ifr','1',0,this)"" "
 .W ">"
 .F J=1:1:$L(ST,"\") D
 ..S B=$P(ST,"\",J)
 ..I $TR(B," ","")="" S B="&nbsp;"
 ..E  I B'?."-"1N.N.".".N S B=$$H2U^%L1FRM(B)
 ..W "<td>&nbsp;"_B_"&nbsp;</td>"
 .W "</tr>",!
 W "</table>",!
 ;
TOT ;
 W "<br>",!
 ;
 W "<table id=""TblTot"" dir="""_$$^%W1DIR_""" style=""width:50%"" border=""0"" cellspacing=""0"" cellpadding=""0"">",!
 S SUMH=0,SUMZ=0
 S N="" F  S N=$O(SUM(N)) Q:N=""  D
 .W "<tr>"
 .W " <td>&nbsp;"_$$H2U^%L1FRM("daeg k""dq")_"&nbsp;</td>"
 .W " <td>&nbsp;"_$J($$H2U^%L1FRM(N),8)_"&nbsp;</td>"
 .W " <td>&nbsp;"_$J($G(SUM(N,"H")),9,2)_"&nbsp;</td>"
 .W " <td style=""width:15%"">&nbsp;</td>",!
 .W " <td>&nbsp;"_$$H2U^%L1FRM("zekf k""dq ")_"&nbsp;</td>"
 .W " <td>&nbsp;"_$J($$H2U^%L1FRM(N),8)_"&nbsp;</td>"
 .W " <td>&nbsp;"_$J($G(SUM(N,"Z")),9,2)_"&nbsp;</td>"
 .W "</tr>",!
 .S SUMH=SUMH+$G(SUM(N,"H"))
 .S SUMZ=SUMZ+$G(SUM(N,"Z"))
 ;
 W " <tr style=""font-weight:bold"">"
 W "  <td>&nbsp;"_$$H2U^%L1FRM("daeg k""dq")_"&nbsp;</td>"
 W "  <td>&nbsp;</td>"
 W "  <td>&nbsp;"_$J(SUMH,9,2)_"&nbsp;</td>"
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;"_$$H2U^%L1FRM("zekf k""dq")_"&nbsp;</td>"
 W "  <td>&nbsp;</td>"
 W "  <td>&nbsp;"_$J(SUMZ,9,2)_"&nbsp;</td>"
 W " </tr>",!
 W "</table>",!
 W "<br><br>",!
 ;
 D DIVBUT
 ;
END Q
 ;
 ;
FRMST(I) ;
 N A I '$D(TSS) D ^%L1TS
 S A=$TR($G(^(I)),TSS,TS0)
 ;
 I '$$NEWHSV^W4PRM D
 .S HH1=$E(A,51,58) S:HH1="" HH1="&nbsp;"
 .S HH2=$E(A,59,66) S:HH2="" HH2="&nbsp;"
 .S HZ1=$E(A,67,74) S:HZ1="" HZ1="&nbsp;"
 .S HZ2=$E(A,75,82) S:HZ2="" HZ2="&nbsp;"
 .S SH1=$TR($E(A,83,94)," ","")
 .S SH2=$TR($E(A,95,106)," ","")
 .S SZ1=$TR($E(A,107,118)," ","")
 .S SZ2=$TR($E(A,119,130)," ","")
 .S ST=I_"\"_$E(A,1,3)_"\"_$E(A,4,8)_"\"_$E(A,9,14)_"\"_$E(A,20,25)_"\"
 .S ST=ST_$E(A,29,50)_"\"_HH1_"\"_HH2_"\"_HZ1_"\"_HZ2_"\"
 .S ST=ST_$J(SH1,8,2)_"\"_$J(SH2,8,2)_"\"_$J(SZ1,8,2)_"\"_$J(SZ2,8,2)
 ;
 I $$NEWHSV^W4PRM D
 .S HH1=$E(A,97,111) S:HH1="" HH1="&nbsp;"
 .S HH2=$E(A,112,126) S:HH2="" HH2="&nbsp;"
 .S HZ1=$E(A,127,141) S:HZ1="" HZ1="&nbsp;"
 .S HZ2=$E(A,142,156) S:HZ2="" HZ2="&nbsp;"
 .S SH1=$$RKV(A,157,168)
 .S SH2=$$RKV(A,169,180)
 .S SZ1=$$RKV(A,181,192)
 .S SZ2=$$RKV(A,193,204)
 .S HBMAS=$$RKV(A,234,242)
 .I 'HBMAS S HBMAS=""
 .S ST=I_"\"_$E(A,1,3)_"\"_$$RKV(A,4,12)_"\"_$$RKV(A,22,31)_"\"_$$RKV(A,32,41)
 .S ST=ST_"\"_$$RKV(A,47,96)_"\"_HH1_"\"_HH2_"\"_HZ1_"\"_HZ2
 .S ST=ST_"\"_$J(SH1,8,2)_"\"_$J(SH2,8,2)_"\"_$J(SZ1,8,2)_"\"_$J(SZ2,8,2)
 .S ST=ST_"\"_HBMAS
 ;
 Q  ;
 ;
 ;
SBM(STAM) ;
 I $G(%ARG("SBM")) Q 1
 Q 0
 ;
ERRPROT ;
 N A
 W "<span class=""hd"">"_$$^%W1DICT("ERRORSPROTOCOL")_"</span>",!
 W "<br>"
 W "<table dir="""_$$^%W1DIR_""">",!
 N I F I=1:1 Q:'$D(@$$^W4MAIN("TMPS111")@(I))  D
 .S A=$G(^(I))
 .W "<tr>"
 .W " <td>"
 . W $$H2U^%L1FRM(A)
 .W " </td>"
 .W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PRINT"),"Print()","color:black",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   I '$$SBM D
   .W "<td>"
   . D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
REG(STAM) ;
 Q $$^W4HSVREG
 ;
HR(HR) ;
 S HR=$TR(HR,TSS,TS0)
 S HR=$TR(HR,TS1,TS0)
 I HR["dlaw" Q "CB"
 I HR["iekif" Q "TZ"
 I HR["zipeayg" Q "HB"
 Q ""
 ;
POINTER(I) ;
 Q "style=""cursor:pointer"" onClick=""Border('"_I_"');"
 ;
 ;
DIVEX ;
 N HD S HD="dxey*drepz beq*dpey`x `zknq`*dzknq` jix`z*oerxtl jix`z*mihxt*"
 S HD=HD_"1 daeg oeayg*2 daeg oeayg*1 zekf oeayg*2 zekf oeayg*"
 S HD=HD_"1 daeg mekq*2 daeg mekq*1 zekf mekq*2 zekf mekq"
 ;;S HD=$$INVD^%L1FRM(HD,"*","*")
 
 N TMPOUT S TMPOUT=$$^%W1GLPRM K @TMPOUT@("GLOUT")
 S @TMPOUT@("GLOUT",1)=HD
 
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .D FRMST(I)
 .S @TMPOUT@("GLOUT",I+1)=$TR(ST,"\","*")
 
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 W "<table>",!
  W "<tr>",!
   W "<td>"
   D DIVEXC^%W1PC1("W4HSVHZG","%W1PCEX")
   W "</td>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td>"
    W "<img id=""findid"" src=""w4find.png"" alt=""Find"" onClick=""BOSearch('','','1')"" style=""cursor:pointer"" />",!
   W "</td>"
 W "</tr>",!
 W "</table>",! 
 Q
 ;
 ;
CHKOPT ;
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>",! 
   W "<td>"
    W $$^%W1DICT("TNKUP")_$$NBSP^%L1FRM(3)
    D CHKINP(1)
   W "</td>"
   W "<td>"
    W $$^%W1DICT("TNHB")_$$NBSP^%L1FRM(3)
    D CHKINP(2)
   W "</td>"
   W "<td>"
    W $$^%W1DICT("TNHBZ")_$$NBSP^%L1FRM(3)
    D CHKINP(3)
   W "</td>"
   W "<td>"
    W $$^%W1DICT("TNCB")_$$NBSP^%L1FRM(3)
    D CHKINP(4)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
CHKINP(I) ;
 W "<input type=""checkbox"" name=""chkopt"" "_$$CHECKED(I)_" onClick=""ClickOpt('"_I_"')"" />"
 Q
 ;
CHECKED(OPT);
 I $G(%ARG("CHKOPT"))[OPT!($G(%ARG("CHKOPT"))="") Q "checked=""checked"""
 Q ""
 ;
RKV(VL,BG,END) ; 
 S VL=$E(VL,BG,END)
 S VL=$$SPA^%L1FRM(VL)
 Q VL 
 ;
MNREP(MEDAT,ADDAT) ; 
 N TMPREP1,TMPREP2
 S TMPREP1=$$^W4MAIN("TMPREP1") K @TMPREP1
 S TMPREP2=$$^W4MAIN("TMPREP2") K @TMPREP2
 M @TMPREP1=@$$^W4MAIN("TMPS111")
 M @TMPREP2=@$$^W4MAIN("S222")
 
 W "<div id=""manyreps"" align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table>",!
   W "<tr>",!
    ;
    D
    .N MEDAT1 S MEDAT1=MEDAT
    .I MEDAT=ADDAT,ADDAT S MEDAT1="01."_$P(ADDAT,".",2,3)
    .W "<td "_$$^W4TOUCH_"=""MonthZ('"_MEDAT1_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("MONTHZ")
    .W "</td>"
    ;
    W "<td "_$$^W4TOUCH_"=""DetailReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
     W $$^%W1DICT("DETAILREPORT")
    W "</td>"
   ;
    W "<td "_$$^W4TOUCH_"=""Maazan('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
     W $$^%W1DICT("INCOMEREPORT")
    W "</td>"
   ;
   W "</tr>",!
  W "</table>",! 
 W "</div>",! 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVIN
W4HSVIN ; --> HSB(),TN(),PATH,FILE,MRK   [ 16.09.25 11:03 ] [ 04.02.25 11:40 ] [ 03.02.25 16:20 ] 
 N I,N
 D ^%L1TS ;;K @$$^W4MAIN("TMPS111"),@$$^W4MAIN("S222") ; -- 04/02/25 -> COMMENT
 S REG=$$^W4HSVREG
 S MRK=+$G(^MERKAZ)
 ;
 S HSB("F")=$G(@$$^W4PL@("HSV","MZMK"))
 I $G(@$$^W4PL@("MATB")) D
 .S N="" F  S N=$O(@$$^W4GL("P1SUGM")@(N)) Q:N=""  I N?1N.N D
 ..S HSB("F",N)=$G(@$$^W4PL@("HSV","MTB",N))
 ;
 S HSB("GO")=$G(@$$^W4PL@("HSV","CHKK"))
 S HSB("G")=HSB("GO")
 S HSB("GB")=$G(@$$^W4PL@("HSV","CHKKM"))
 ;;S:'$G(HSB("GM")) HSB("GM")=HSB("G")
 S HSB("I")=$G(@$$^W4PL@("HSV","ISR")) ;
 S HSB("J")=$G(@$$^W4PL@("HSV","VISA")) ;
 S HSB("K")=$G(@$$^W4PL@("HSV","DINERS")) ;
 S HSB("L")=$G(@$$^W4PL@("HSV","AMEXP")) ;
 S HSB("M")=$G(@$$^W4PL@("HSV","JCB")) ;
 S HSB("N")=$G(@$$^W4PL@("HSV","ALPHA")) ;
 S HSB("O")=$G(@$$^W4PL@("HSV","KK")) ;
 S HSB("Q")=$G(@$$^W4PL@("HSV","FI")) ;
 S HSB("T")=$G(@$$^W4PL@("HSV","TIP")) ;
 S HSB("Z")=$G(@$$^W4PL@("HSV","Z")) ;
 ;
 S HSB("IK")=$G(@$$^W4PL@("HSV","ISRK")) ;
 S HSB("JK")=$G(@$$^W4PL@("HSV","VISAK")) ;
 S HSB("KK")=$G(@$$^W4PL@("HSV","DINERSK")) ;
 S HSB("LK")=$G(@$$^W4PL@("HSV","AMEXPK")) ;
 S HSB("MK")=$G(@$$^W4PL@("HSV","JCBK")) ;
 S HSB("NK")=$G(@$$^W4PL@("HSV","ALPHAK")) ;
 S HSB("OK")=$G(@$$^W4PL@("HSV","KKK")) ;
 S HSB("QK")=$G(@$$^W4PL@("HSV","FIK")) ;
 S HSB("ZK")=$G(@$$^W4PL@("HSV","ZK")) ;
 ;
 S HSB("KN")=$G(@$$^W4PL@("HSV","HKNIJOT"))
 S HSB("MAMKN")=$G(@$$^W4PL@("HSV","MAMT"))
 S HSB("MH")=$G(@$$^W4PL@("HSV","HMHIROT"))
 S HSB("MAMMH")=$G(@$$^W4PL@("HSV","MAMI"))
 S HSB("NOMAM")=$G(@$$^W4PL@("HSV","NOMAM"))
 S HSB("ZC")=$G(@$$^W4PL@("HSV","HZICMH"))
 S HSB("MAMZC")=$G(@$$^W4PL@("HSV","HZICMHM"))
 S HSB("MKR")=$G(@$$^W4PL@("HSV","HNKMM"))
 ;
 S HSB("KUPA")=$G(@$$^W4PL@("HSV","KUPA"))
 S HSB("BANK")=$G(@$$^W4PL@("HSV","BANK"))
 ;
 K TN
 F I="HMK","HML","HMZ","CB","HMS","HMSB","TSH","HFMZ","HFTP","HFCH","HFIJ","HFVJ","HFDJ","HFAEJ","HFJCJ","HFALJ","HFIA","HFVA","HFDA","HFAEA","HFJCA","HFALA","HFZ" D
 .S TN(I)=$G(@$$^W4PL@("HSV","TN",I))
 ;
 S PATH=$G(@$$^W4PL@("HSV","PATH"))
 I $L(PATH),$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 ;
 N DOP S DOP=$S($G(REG)=2:"",1:$G(REG))
 S DOP=DOP_"-"_$S($G(REG)=2:DAT,1:$E(DAT,3,6))
 ;
 S FILE=PATH_"H"_DOP
 ;
 I '$G(MRK) S GLBL=$$^W4GL("TOT")_"(DAT)"
 I $G(MRK) S GLBL=$$^W4GL("TOT")_"(DAT,MRK)"
 I $$HSVZ^W4PRM S GLBL=$$^W4GL("Z1")_"(DAT,NP)"
 Q
 
 
 
 
 
 
 
 
 

W4HSVL
W4HSVL ; [ 24.02.17 15:13 ] [ 23.02.17 19:57 ] [ 
 N (JB,%ARG,%REM)
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(%ARG("NEW"))!$G(%ARG("IND")) D ^W4HSVLRG($G(%ARG("REG"))) Q
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
  D ^W4BUTTON("new",$$^%W1DICT("CREATENEWFILE2HASHAVSHEVET"),"CreateNewFile('"_$$REG_"')")
 ; 
  W "<br><br>",!
 W "<span>"_$$^%W1DICT("MOVCUST2HSVPROTOCOL")_"</span>"
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""40%"" cellspacing=""0"" cellpadding=""0"">",!
 W "<tr>"
  W "   <th>"_$$^%W1DICT("DOINGTIME")_"</th>"
  W "   <th>"_$$^%W1DICT("FILECONTENT")_"</th>"
 W "</tr>",!
 ;
 N A,N
 S HSVLGL=$$^W4GL("W4HSVL")
 ;
 S ZMAN="" F  S ZMAN=$O(@HSVLGL@(ZMAN),-1) Q:ZMAN=""  D
 .S TM=$E(ZMAN,1,5)_","_+$E(ZMAN,6,10)
 .S ZBIZUA=$ZD(TM,"DD.MM.YY  24:60")
 .S SUGFILE=$G(@HSVLGL@(ZMAN))
 .S SUGFILE1=""
 .I SUGFILE=1 S SUGFILE1=$$^%W1DICT("CUSTOMSWITHCREDIT")
 .I SUGFILE=2 S SUGFILE1=$$^%W1DICT("NEWCUSTOMS")
 .W "<tr style=""cursor:pointer"" onClick=""Show('"_ZMAN_"')"">"
 . W "<td> &nbsp;"_ZBIZUA_" &nbsp;</td><td> &nbsp;"_SUGFILE1_"&nbsp; </td>",!
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
REG(STAM) ;
 Q $G(%ARG("REG"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVLK
W4HSVLK(REG) ;  ---- HAAVARA KOVEZ LAKOHOT [ 06.02.25 15:35 ] [ 03.02.25 16:19 ] [ 30.01.25 11:17 ] 
 N (JB,%ARG,REG)
ARX ;
 K @$$^W4MAIN("S222")
 S FL=$$PATH_"HESHIN.PRM"
 ZSY "rm "_FL
ZI ;
 ;;G ZI1
 ; --------- PARAMETERS FILE --------
 F I=1:1 S ST=$T(TOHEN+I) Q:ST["Q  ;"  S ST=$P(ST,";",2,20) D
 .S COORD=$P(ST,";") I $$SPA^%L1FRM(COORD)="0 0" Q 
 .S @$$^W4MAIN("S222")@(I)=ST
 ;
 D WFL(FL,1)
 ;
 S FLZIP=$TR(FL,".","") I $$EXIST^%L1ZOS(FLZIP) ZSY "rm "_FLZIP
 I '$ZSY ZSY "zip -j "_FLZIP_" "_FL
 ;
ZI1 ; 
 ;--------------- DATA FILE ----------
 S FL=$$PATH_"HESHIN.DAT"
 ZSY "rm "_FL
 K @$$^W4MAIN("S222")
 ;
 D GL(REG)
 ;
 D CREATES2(GL)
 ;
 S IND=$$IND
 ;
 K @$$^W4GL("W4HSVL")@(IND)
 M @$$^W4GL("W4HSVL")@(IND)=@$$^W4MAIN("S222")
 S @$$^W4GL("W4HSVL")@(IND)=REG
 ;
 D WFL(FL,1)
 S FLZIP=$TR(FL,".","") I $$EXIST^%L1ZOS(FLZIP) ZSY "rm "_FLZIP
 I '$ZSY ZSY "zip -j "_FLZIP_" "_FL
 ;
END K @$$^W4MAIN("S222")
 Q
 ;
 ;
WFL(FILE,PRM) ;
 C FILE:(DELETE) D ^%L1TS
 O FILE:(NEWVERSION:WRITE:REWIND)
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .U FILE W $TR($TR(^(I),"""","'"),TS0,TSS),!
 S OK=1 C FILE
EFL Q
 ;
 ;
TOHEN0 ;
 ; 240    ;           dniyx jxe`   
 ; 1   15 ;           oeayg gztn   ACCOUNTKEY
 ; 17  66 ;             oeayg my   FULLNAME
 ; 84 113 ;                oetlh   PHONE
 ; 115 164 ;               zaezk   ADDRESS
 ; 168 187 ;                 qox   CITY
 ; 189 198 ;                cewin  ZIP
 ; 1049 1098 ;              l"`ecEMAIL
 ; 894 908 ;       dyxen wqer 'qn  ASSIGNKEY
 Q  ;
 ;
PATH(STAM) ;
 Q $$DIRL^%W1PCEX
 ;
 N PATH
 S PATH=$G(@$$^W4PL@("HSV","PATH"))
 I $L(PATH),$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 Q PATH
 ;
 ;
IND(STAM) ;
 Q +$H_$TR($J($P($H,",",2),5)," ",0)
 ;
GL(REG)
 D GL^W3L ; -->GL
 I $G(REG)=2 D
 .S GL=$G(@$$^W4GL("VRML"))
 Q
 ;
CREATES2(GL) ;
 N I,II,N,HESB,ST
 K @$$^W4MAIN("S222") S I=0
 S N=999 F II=1:1 S N=$O(@GL@(N)) Q:N=""  D
 .Q:'$$MAZAV^W4L(N)
 .;;Q:'$$ISCR^W4L(N)  ; -- 06/02/25
 .S HESB=$$DEFNHSB^W4HSVCB(N)
 .S ST=$$FRMST(N,HESB)
 .S I=I+1,@$$^W4MAIN("S222")@(I)=ST
 Q
 ;
FRMST(N,HESB) ;
 N ST
 S ST=$$ENG^%L1FRM(HESB,15)_$$HBR^%L1FRM($$LKH^W4L(N),50)
 S ST=ST_$J("",14)
 S ST=ST_$$ENG^%L1FRM($TR($$TELB^W4L(N),"-",""),30) ;  TEL
 S ST=ST_$$HBR^%L1FRM($$KTV^W4L(N),50)  ;  KTV
 S ST=ST_$J("",15) ; -AZOR
 S ST=ST_$$HBR^%L1FRM($$CITY^W4L(N),20)  ;  CITY
 N MIKUD S MIKUD=$TR($J($$MIKUD^W4L(N),5)," ",0)
 I MIKUD'?5N S MIKUD="00000"
 S ST=ST_MIKUD
 S ST=ST_$J("",85)
 S ST=ST_$J(0,9,2)
 S ST=ST_$J(0,9,2)
 S ST=ST_$J(0,9,2)
 S ST=ST_$J(0,9,2)
 S ST=ST_$J(0,9,2)
 S ST=ST_$J("",5)
 S ST=ST_$J(0,9,2)
 S ST=ST_$J("",5) ; MATBEA OBLIGO
 S ST=ST_$J(0,5,2); HANAHA KLALIT
 S ST=ST_$J("",50) ;HODAA LE LAKOH
 S ST=ST_$J("",15) ;HESBON MERAKEZ
 S ST=ST_$J(0,9) ; SOHEN
 S ST=ST_$J(0,5,2) ; AH NIK MAS BE MAKOR
 S ST=ST_$J("",8) ; BE TOKEF AD
 N TZ S TZ=$TR($J($$TZ^W4L(N),9)," ",0)
 S TZ=$$ENG^%L1FRM(TZ,9)
 I TZ'?1N.N S TZ="000000000"
 S ST=ST_TZ
 S ST=ST_$J(0,2)_$J(0,5)_$J(0,20) ; BANK,SNIF,HESHBON
 S ST=ST_$J(0,9,2) ; -- MHIROT SHANA KODEMET
 S ST=ST_$J("",5) ; -- MATB MEHIROT
 S ST=ST_$J(0,9,2) ; -- KNIYOT SHANA KODEMET
 S ST=ST_$J("",5) ; -- MATB KNIYOT
 S ST=ST_$$ENG^%L1FRM($$EMAIL^W4L(N),50)   ; EMAIL
 Q ST
 ;
TOHEN ; 
 ;554
 ;1 15;ACCOUNTKEY
 ;16 65;FULLNAME
 ;66 74;SORTGROUP
 ;75 79;FILTER
 ;80 109;PHONE
 ;110 159;ADDRESS
 ;160 174;NEIGHBORHOOD
 ;175 194;CITY
 ;195 199;ZIP ; ???
 ;200 214;WORF
 ;215 218;ACCPASS
 ;219 268;DETAILS
 ;269 276;DATF1
 ;277 284;DATF2
 ;285 293;SUF1
 ;294 302;SUF2
 ;303 311;SUF3
 ;312 320;SUF4
 ;321 329;MAXCREDIT
 ;330 334;MAXCREDITCURRENCY
 ;335 343;MAXOBLIGO
 ;344 348;MAXOBLIGOCURRENCY
 ;349 353;TFTALDISCOUNT
 ;354 403;CUSTOMERNOTE
 ;404 418;ASSIGNKEY
 ;419 427;AGENT
 ;428 432;DEDUCTIONPRC
 ;433 440;DEDUCTIONVALID
 ;441 449;TAXFILENUM
 ;450 451;BANKCODE
 ;452 456;BRANCHCODE
 ;457 476;BANKACCOUNT
 ;477 485;SALES
 ;486 490;SALESCURRENCY
 ;491 499;PURCHASE
 ;500 504;PURCHASECURRENCY
 ;505 554;EMAIL
 Q  ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVLK0
W4HSVLK(REG) ;  ---- HAAVARA KOVEZ LAKOHOT [ 14.01.25 13:47 ] [ 29.12.21 07:38 ] [ 24.02.17 15:08 ] 
 N (JB,%ARG,REG)
ARX ;
 K ^W4MAIN("S222")
 S FL=$$PATH_"HESHIN.PRM"
ZI ;
 ; --------- PARAMETERS FILE --------
 F I=1:1 S ST=$T(TOHEN+I) Q:ST["Q  ;"  S ST=$P(ST,";",2,20) D
 .S @$$^W4MAIN("S222")@(I)=ST
 ;
 D WFL(FL,1)
 I '$ZSY ZSY "zip -j "_$TR(FL,".","")_" "_FL
 ;
 ;--------------- DATA FILE ----------
 S FL=$$PATH_"HESHIN.DAT"
 ;
 D GL(REG)
 ;
 D CREATES2(GL)
 ;
 S IND=$$IND
 ;
 K @$$^W4GL("W4HSVL")@(IND)
 M @$$^W4GL("W4HSVL")@(IND)=@$$^W4MAIN("S222")
 S @$$^W4GL("W4HSVL")@(IND)=REG
 ;
 D WFL(FL,1)
 I '$ZSY ZSY "zip -j "_$TR(FL,".","")_" "_FL
 ;
END K ^W4MAIN("S222")
 Q
 ;
 ;
WFL(FILE,PRM) ;
 C FILE:(DELETE) D ^%L1TS
 O FILE:(NEWVERSION:WRITE:REWIND)
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .U FILE W $TR($TR(^(I),"""","'"),TS0,TSS),!
 S OK=1 C FILE
EFL Q
 ;
 ;
TOHEN ;
 ; 121    ;           dniyx jxe`   1 dxey
 ; 1   8  ;           oeayg gztn   2 dxey
 ; 10 37  ;             oeayg my   3 dxey
 ; 0   0  ;             oein cew   4 dxey
 ; 0   0  ;                  jzg   5 dxey
 ; 40 49  ;                oetlh   6 dxey
 ; 52 81  ;                zaezk   7 dxey
 ; 0   0  ;                dpeky   8 dxey
 ; 0   0  ;                  xir   9 dxey
 ; 84 88  ;                cewin  10 dxey
 ; 0   0  ;                weqir  11 dxey
 ; 0   0  ;           g"ex dxard  12 dxey
 ; 0   0  ;                mihxt  13 dxey
 ; 0   0  ;         1 sqep jix`z  14 dxey
 ; 0   0  ;         2 sqep jix`z  15 dxey
 ; 0   0  ;          1 sqep mekq  16 dxey
 ; 0   0  ;          2 sqep mekq  17 dxey
 ; 0   0  ;          3 sqep mekq  18 dxey
 ; 0   0  ;          4 sqep mekq  19 dxey
 ; 0   0  ;        i`xy` meniqwn  20 dxey
 ; 0   0  ;       'xy` 'qwn rahn  21 dxey
 ; 0   0  ;       ebilae` 'niqwn  22 dxey
 ; 0   0  ;    ebilae` 'qwn rahn  23 dxey
 ; 0   0  ;               dgpd %  24 dxey
 ; 0   0  ;          gewll drced  25 dxey
 ; 0   0  ;           fkxn oeayg  26 dxey
 ; 0   0  ;                 okeq  27 dxey
 ; 91 95  ;        xekna iekip %  28 dxey
 ; 98 105 ;       jix`z cr sweza  29 dxey
 ; 108 119 ;       dyxen wqer 'qn  30 dxey
 ; 0   0  ;              wpa cew  31 dxey
 ; 0   0  ;             sipq cew  32 dxey
 ; 0   0  ;        wpa oeayg 'qn  33 dxey
 ; 0   0  ;      zncew dpy zexikn 34
 ; 0   0  ; zncew dpy zexikn rahn 35
 ; 0   0  ; zncew dpy zeipw       36
 ; 0   0  ; zncew dpy zeipw rahn  37
 ; 0   0  ;                       38
 ; 0   0  ;                       39
 ; 0   0  ;                       40
 Q  ;
 ;
PATH(STAM) ;
 Q $$DIRL^%W1PCEX
 ;
 N PATH
 S PATH=$G(@$$^W4PL@("HSV","PATH"))
 I $L(PATH),$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 Q PATH
 ;
 ;
IND(STAM) ;
 Q +$H_$TR($J($P($H,",",2),5)," ",0)
 ;
GL(REG)
 D GL^W3L ; -->GL
 I $G(REG)=2 D
 .S GL=$G(@$$^W4GL("VRML"))
 Q
 ;
CREATES2(GL) ;
 N I,II,N,HESB,ST
 K @$$^W4MAIN("S222") S I=0
 S N=999 F II=1:1 S N=$O(@GL@(N)) Q:N=""  D
 .Q:'$$MAZAV^W4L(N)
 .Q:'$$ISCR^W4L(N)
 .;;Q:'$$TZ^W4L(N)
 .S HESB=$$DEFNHSB^W4HSVCB(N)
 .S ST=$$FRMST(N,HESB)
 .S I=I+1,@$$^W4MAIN("S222")@(I)=ST
 Q
 ;
FRMST(N,HESB) ;
 N ST
 S ST=$$ENG^%L1FRM(HESB,8)_" "_$$HBR^%L1FRM($$LKH^W4L(N),28)
 S ST=ST_"  "_$$ENG^%L1FRM($TR($$TELA^W4L(N),"-",""),10) ;  TEL
 S ST=ST_"  "_$$HBR^%L1FRM($$KTVM^W4L(N),30)  ;  KTV
 S ST=ST_"  "_$$ENG^%L1FRM($$MIKUD^W4L(N),5)   ;  MIKUD
 S ST=ST_"  "_$J("",5)  ;  % NIKUJ NAS
 S TKFNIK="      "
 S ST=ST_"  "_$$ENG^%L1FRM($TR(TKFNIK,".","/"),8) ; TOKEF NIKUJ
 S ST=ST_"  "_$$ENG^%L1FRM($$TZ^W4L(N),12) ; ESEK MURSHE
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVLK1
W4HSVLK(REG) ;  ---- HAAVARA KOVEZ LAKOHOT [ 30.01.25 11:09 ] [ 29.01.25 12:19 ] [ 28.01.25 16:12 ] 
 N (JB,%ARG,REG)
ARX ;
 K ^W4MAIN("S222")
 S FL=$$PATH_"HESHIN.PRM"
 ZSY "rm "_FL
ZI ;
 G ZI1
 ; --------- PARAMETERS FILE --------
 F I=1:1 S ST=$T(TOHEN+I) Q:ST["Q  ;"  S ST=$P(ST,";",2,20) D
 .S COORD=$P(ST,";") I $$SPA^%L1FRM(COORD)="0 0" Q 
 .S @$$^W4MAIN("S222")@(I)=ST
 ;
 D WFL(FL,1)
 I '$ZSY ZSY "zip -j "_$TR(FL,".","")_" "_FL
 ;
ZI1 ; 
 ;--------------- DATA FILE ----------
 S FL=$$PATH_"HESHIN.DAT"
 ZSY "rm "_FL
 K ^W4MAIN("S222")
 ;
 D GL(REG)
 ;
 D CREATES2(GL)
 ;
 S IND=$$IND
 ;
 K @$$^W4GL("W4HSVL")@(IND)
 M @$$^W4GL("W4HSVL")@(IND)=@$$^W4MAIN("S222")
 S @$$^W4GL("W4HSVL")@(IND)=REG
 ;
 D WFL(FL,1)
 I '$ZSY ZSY "zip -j "_$TR(FL,".","")_" "_FL
 ;
END K ^W4MAIN("S222")
 Q
 ;
 ;
WFL(FILE,PRM) ;
 C FILE:(DELETE) D ^%L1TS
 O FILE:(NEWVERSION:WRITE:REWIND)
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .U FILE W $TR($TR(^(I),"""","'"),TS0,TSS),!
 S OK=1 C FILE
EFL Q
 ;
 ;
TOHEN0 ;
 ; 240    ;           dniyx jxe`   
 ; 1   15 ;           oeayg gztn   ACCOUNTKEY
 ; 17  66 ;             oeayg my   FULLNAME
 ; 84 113 ;                oetlh   PHONE
 ; 115 164 ;               zaezk   ADDRESS
 ; 168 187 ;                 qox   CITY
 ; 189 198 ;                cewin  ZIP
 ; 1049 1098 ;              l"`ecEMAIL
 ; 894 908 ;       dyxen wqer 'qn  ASSIGNKEY
 Q  ;
 ;
PATH(STAM) ;
 Q $$DIRL^%W1PCEX
 ;
 N PATH
 S PATH=$G(@$$^W4PL@("HSV","PATH"))
 I $L(PATH),$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 Q PATH
 ;
 ;
IND(STAM) ;
 Q +$H_$TR($J($P($H,",",2),5)," ",0)
 ;
GL(REG)
 D GL^W3L ; -->GL
 I $G(REG)=2 D
 .S GL=$G(@$$^W4GL("VRML"))
 Q
 ;
CREATES2(GL) ;
 N I,II,N,HESB,ST
 K @$$^W4MAIN("S222") S I=0
 S N=999 F II=1:1 S N=$O(@GL@(N)) Q:N=""  D
 .Q:'$$MAZAV^W4L(N)
 .Q:'$$ISCR^W4L(N)
 .;;Q:'$$TZ^W4L(N)
 .S HESB=$$DEFNHSB^W4HSVCB(N)
 .S ST=$$FRMST(N,HESB)
 .S I=I+1,@$$^W4MAIN("S222")@(I)=ST
 Q
 ;
FRMST(N,HESB) ;
 N ST
 S ST=$$ENG^%L1FRM(HESB,15)_" "_$$HBR^%L1FRM($$LKH^W4L(N),50)
 S ST=ST_$J("",17)
 S ST=ST_$$ENG^%L1FRM($TR($$TELB^W4L(N),"-",""),30) ;  TEL
 S ST=ST_" "_$$HBR^%L1FRM($$KTV^W4L(N),50)  ;  KTV
 S ST=ST_"   "_$$HBR^%L1FRM($$CITY^W4L(N),20)  ;  CITY
 S ST=ST_" "_$$ENG^%L1FRM($$MIKUD^W4L(N),10)   ;  MIKUD
 S ST=ST_$J("",695)
 S ST=ST_$$ENG^%L1FRM($$TZ^W4L(N),15) ; ESEK MURSHE
 S ST=ST_$J("",140)
 S ST=ST_$$ENG^%L1FRM($$EMAIL^W4L(N),50)   ; EMAIL
 S ST=ST_$J("",1242)
 Q ST
 ;
TOHEN ; 
 ;0
 ;1 15;ACCOUNTKEY
 ;0 0;
 ;17 66;FULLNAME
 ;0 0;
 ;68 76;SORTGROUP
 ;0 0;
 ;78 82;FILTER
 ;0 0;
 ;84 113;PHONE
 ;0 0;
 ;115 164;ADDRESS
 ;0 0;
 ;166 166;NEIGHBORHOOD
 ;0 0;
 ;168 187;CITY
 ;0 0;
 ;189 198;ZIP
 ;0 0;
 ;200 214;WORF
 ;0 0;
 ;216 219;ACCPASS
 ;0 0;
 ;221 470;DETAILS
 ;0 0;
 ;472 481;DATF1
 ;0 0;
 ;483 491;DATF2
 ;0 0;
 ;0 0;
 ;494 513;SUF1
 ;0 0;
 ;515 534;SUF2
 ;0 0;
 ;536 555;SUF3
 ;0 0;
 ;557 576;SUF4
 ;0 0;
 ;578 597;MAXCREDIT
 ;0 0;
 ;599 603;MAXCREDITCURRENCY
 ;0 0;
 ;605 624;MAXOBLIGO
 ;0 0;
 ;626 630;MAXOBLIGOCURRENCY
 ;632 641;TFTALDISCOUNT
 ;643 892;CUSTOMERNOTE
 ;894 908;ASSIGNKEY
 ;0 0;
 ;910 919;AGENT
 ;0 0;
 ;921 930;DEDUCTIONPRC
 ;0 0;
 ;932 941;DEDUCTIONVALID
 ;0 0;
 ;943 962;TAXFILENUM
 ;0 0;
 ;964 966;BANKCODE
 ;0 0;
 ;968 972;BRANCHCODE
 ;0 0;
 ;974 993;BANKACCOUNT
 ;0 0;
 ;995 1014;SALES
 ;0 0;
 ;1016 1020;SALESCURRENCY
 ;0 0;
 ;1022 1041;PURCHASE
 ;0 0;
 ;1043 1047;PURCHASECURRENCY
 ;0 0;
 ;1049 1098;EMAIL
 ;0 0;
 ;1100 1129;FAX
 ;0 0;
 ;1131 1150;COUNTRY
 ;0 0;
 ;1152 1161;CREDITTERM
 ;0 0;
 ;1163 1172;VATEXAMPT
 ;0 0;
 ;1174 1188;DIFFERACC
 ;0 0;
 ;1190 1194;MATCHCURR
 ;0 0;
 ;1196  1205;BALANCECODE
 ;0 0;
 ;1207 1216;AVGLATEPAY
 ;0 0;
 ;1218 1227;MAINACCOUNT
 ;0 0;
 ;1229 1236;COSTCODE
 ;0 0;
 ;1238 1337;EXFILE
 ;0 0;
 ;1339 1368;SPHONE
 ;0 0;
 ;1370 1619;WEBSITE
 ;0 0;
 ;1621 1640;DEDUCTFILE
 ;0 0;
 ;1642 1651;DISTLINE
 ;0 0;
 ;1653 1662;DISTDOC
 ;0 0;
 ;1664 1664;EXPADDRESS
 ;0 0;
 ;1666 1666;SBCARDNO
 ;0 0;
 ;0 0;
 ;0 0;
 ;0 0;
 ;1671 1672;SBYEAR
 ;0 0;
 ;1674 1703;SBID
 ;0 0;
 ;1705 1724;SBPHONE
 ;0 0;
 ;1726 1785;SBCVV
 ;0 0;
 ;1787 1816;SB4DIGITS
 ;0 0;
 ;1818 1827;TAXREPCODE
 ;0 0;
 ;1829 1839;CUSTOMERID1
 ;0 0;
 ;1841 1851;CUSTOMERID2
 ;0 0;
 ;1853 1863;KUPAPHONE1
 ;0 0;
 ;1865 1875;KUPAPHONE2
 ;0 0;
 ;1877 1926;MAINACCOUNTNAME
 ;0 0;
 ;1928 1977;BALANCENAME
 ;0 0;
 ;1979 2078;EXPIC
 ;0 0;
 ;2080 2094;ACCEDI
 ;0 0;
 ;2096 2110;MARKETNETKEY
 ;0 0;
 ;2112 2121;LETMASAVMAIL
 ;0 0;
 ;2123 2222;MASAVEMAIL
 ;0 0;
 ;2224 2233;COMPUTERIZED
 ;0 0;
 ;2235 2244;MAILRECEIPT
 ;0 0;
 ;2246 2255;VARIETYID
 ;0 0;
 ;2257 2276;FIXEDORDERCOST
 ;0 0;
 ;2278 2297;AVERAGESUPPLYPERIOD
 ;0 0;
 ;2299 2318;SDSUPPLYPERIOD
 ;0 0;
 ;2320 2329;VISITPERIOD
 ;0 0;
 ;2331 2340;ROUNDTYPE
 Q  ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVLON
W4HSV180(STAM) ; [ 08.03.12 05:14 ] [
 I $G(@$$^W4PL@("HSV"))="" Q 1
 Q 0

W4HSVLRG
W4HSVLRG(RG) ;  [ 03.02.25 15:17 ] [ 29.01.25 12:09 ] [ 24.02.17 16:36 ] 
 ;---------------------- HAZAGAT MANA ------------------
 ;
 N (JB,%ARG,%REM,RG)
 N DT,DAT1,DAT
 D ^%L1TS
 ;
 S IND=$$IND
 S DATDOING=$ZD($H,"DD.MM.YY  24:60")
 S DT2=+$H
 ;
 D DIVBUT
 ; 
 I IND D
 .N HSVGLA S HSVGLA=$$^W4GL("W4HSVL")
 .S A=$G(@HSVGLA@(IND))
 .K @$$^W4MAIN("S222")
 .M @$$^W4MAIN("S222")=@HSVGLA@(IND)
 .S DT2=$E(IND,1,5)_","_+$E(IND,6,10)
 .S DATDOING=$ZD(DT2,"DD.MM.YY  24:60")
 ;
 I 'IND,$G(%ARG("NEW")) D
 .D GL^W4HSVLK(RG) Q:$G(GL)=""
 .D CREATES2^W4HSVLK(GL)
 ;
 I '$D(@$$^W4MAIN("S222")) G END
 ;
 ;
 W "<br>",!
 ;
 I IND D
 .N FLHSV S FLHSV=$$FL($$DIRWEB^%W1FREPX,DT2,RG)
 .W "<a href="""_FLHSV_".zip"">"_FLHSV_".zip</a>",!
 .D
 ..N FLHSVPRM S FLHSVPRM=$P(FLHSV,"/",1,$L(FLHSV,"/")-1)_"/HESHINPRM"
 ..W "<a href="""_FLHSVPRM_".zip"">"_FLHSVPRM_".zip</a>",!
 .W "<br>",!
 ;
 W "<br>",!
 ;
 W "<span class=""hd"">"_$$^%W1DICT("RECORDSLISTFORHSVL",DATDOING)_"</span>",!
 W "<br>",!
 W ""
 W "<br>",!
 ;
 W "<table id=""TblHsv"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""0"">",!
 W "<tr>"
  W " <th>"_$$H2U^%L1FRM("dxey")_"</th>"
  W " <th>"_$$H2U^%L1FRM("oeayg gztn")_"</th>"
  W " <th>"_$$H2U^%L1FRM("oeayg my")_"</th>"
  W " <th>"_$$H2U^%L1FRM("oetlh")_"</th>"
  W " <th>"_$$H2U^%L1FRM("zaezk")_"</th>"
  W " <th>"_$$H2U^%L1FRM("xir")_"</th>"
  W " <th>"_$$H2U^%L1FRM("cewin")_"</th>"
  W " <th>"_$$H2U^%L1FRM("dyxen wqer")_"</th>"
  W " <th>"_$$H2U^%L1FRM("l""`ec")_"</th>"
 W "</tr>",!
 ;
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .S A=$TR($G(^(I)),TSS,TS0)
 .S ACC=$E(A,1,15),ACC=$$SPA^%L1FRM(ACC)
 .S NAME=$E(A,16,65),NAME=$$SPA^%L1FRM(NAME)
 .S TEL=$E(A,80,109),TEL=$$SPA^%L1FRM(TEL)
 .S ADR=$E(A,110,159),ADR=$$SPA^%L1FRM(ADR)
 .S CITY=$E(A,175,194),CITY=$$SPA^%L1FRM(CITY)
 .S MIKUD=$TR($E(A,195,199)," ","")
 .S ESEK=$TR($E(A,441,449)," ","")
 .S EMAIL=$TR($E(A,505,554)," ","")
 .
 .S ST=I_"\"_ACC_"\"_NAME_"\"_TEL_"\"_ADR_"\"_CITY_"\"
 .S ST=ST_MIKUD_"\"_ESEK_"\"_EMAIL
 .
 .W "<tr>"
 .F J=1:1:$L(ST,"\") D
 ..S B=$P(ST,"\",J)
 ..I $TR(B," ","")="" S B="&nbsp;"
 ..E  I B'?."-"1N.N.".".N S B=$$H2U^%L1FRM(B)
 ..W "<td "
 .. I J=1 W "style=""background-color:lightyellow"" "
 .. W ">&nbsp;"_B_"&nbsp;</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 ;
 D DIVBUT
 ;
END Q
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PRINT"),"Print()","color:black",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   ;
   I '$$IND D
   .W "<td>"
   . D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,160")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
REG(STAM) ;
 Q $G(RG)
 ;
IND(STAM) ;
 Q $G(%ARG("IND"))
 ;
FL(DIR,DT,REG) ;
 N COD ;;S COD="HL"_REG_"-"_$ZD(DT,"YYMMDD")
 S COD="HESHINDAT"
 N FILE S FILE=DIR_COD
 Q FILE
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVP
W4HSVP(DT) ; [ 22.02.15 12:09 ] [ 03.03.12 08:29 ] [ 06/24/99  2:43 PM ]
 S DAT1=$ZD(DT,"DD.MM.YY")
 S DAT=$$^%L1DC(DAT1,2)
 S N="" F  S N=$O(@$$^W4GL("PLUTOT")@(DAT,MRK,N)) Q:N=""  D
 .N A S A=$G(^(N)) Q:'A
 .S ST=DT_" "_$J($TR(DAT1,"/.",""),8)_" 17 "_$J(N,12)_" "_$$HBR^%L1FRM($$SHEM^W4P(N),25)
 .S ST=ST_" "_$J($P(A,"*"),10,3)_" "_$J($P(A,"*",2)-$P(A,"*",4)/$P(A,"*"),10,3)
 .S ST=ST_" "_$J($S($$NOMAM^W4P(N):0,1:$$MAMD^W4L(DT)),5,2)
 .N IND S IND=$O(@$$^W4MAIN("S222")@(99999),-1)+1
 .S @$$^W4MAIN("S222")@(IND)=ST
 Q

W4HSVPZG
W4HSVPZG(DT1,DT2) ; [ 15.06.15 13:16 ] [ 22.02.15 15:24 ] [
 S DT=DT2
 S DAT1=$$^%L1DC(DT1,1)
 S DAT2=$$^%L1DC(DT2,1)
 ;
 W "<table id=""TblHsv"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""0"">",!
 W "<tr>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("dxey")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("jix`z")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("hixt cew")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("hixt my")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("zenk")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("xign")_"&nbsp;</th>"
  W " <th>&nbsp;"_$$H2U^%L1FRM("n""rn")_"&nbsp;</th>"
 W "</tr>",!
 ;
 N I F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D
 .S A=$G(^(I))
 .S ST=I_"\"_$E(A,7,14)_"\"_$TR($E(A,19,30)," ","")_"\"_$$SPA^%L1FRM($E(A,32,56))_"\"
 .S ST=ST_$$NUM($E(A,58,67),8,2)_"\"_$$NUM($E(A,69,78),8,2)_"\"_$$NUM($E(A,80,84),5,2)
 .
 .W "<tr>"
 .N J,B
 .F J=1:1:$L(ST,"\") D
 ..S B=$P(ST,"\",J)
 ..I $TR(B," ","")="" S B="&nbsp;"
 ..E  I B'?."-"1N.N.".".N S B=$$H2U^%L1FRM(B)
 ..W "<td>&nbsp;"_B_"&nbsp;</td>"
 .W "</tr>",!
 W "</table>",!
 ;
TOT ;
 W "<br>",!
 ;
 D DIVBUT^W4HSVHZG
 ;
END Q
 ;
 ;
SBM(STAM) ;
 I $G(%ARG("SBM")) Q 1
 Q 0
 ;
NUM(TX,N1,N2) ;
 Q $J($TR(TX," ",""),N1,N2)

W4HSVREG
W4HSVREG(STAM) ; [ 23.02.15 18:37 ] [
 I $G(%ARG("REG")) Q %ARG("REG")
 Q $$GETP^%W1PRM("HSVREG")

W4HSVZP
W4HSVZP(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD1,TD2,DAT1,DAT2,TXT,TZ,HBMAS) ; [ 16.12.25 14:31 ] [ 15.12.25 15:07 ] [ 14.12.25 16:44 ] 
 ;;W "TXT="_TXT_" TD1="_TD1_"  TD2="_TD2_"  SH1="_SH1_"  SH2="_SH2,!
 I '(SH1+SH2)&'(SZ1+SZ2) Q
 ;
 I $G(@$$^W4PRM@("HSVOLD")),TD2'=0 D  ; -- 15/12/21
 .N TD S TD=TD1,TD1=TD2,TD2=TD
 ;
 N I F I="H1","H2","Z1","Z2" I $TR(@I," ","")=0 S @I=""
 ;
 I DAT1["/"!(DAT1[".") S DAT1=$TR($$^%L1DC(DAT1,1),"/.","")
 I DAT2["/"!(DAT2[".") S DAT2=$TR($$^%L1DC(DAT2,1),"/.","")
 I DAT1?8N S DAT1=$E(DAT1,1,4)_$E(DAT1,7,8)
 I DAT2?8N S DAT2=$E(DAT2,1,4)_$E(DAT2,7,8)
 ;
 I $$NEWHSV^W4PRM D  G MI
 .S TD1=$$NUM(TD1,9)
 .S TD2=$$NUM(TD2,9)
 .S ST=$TR($J(TN,3),TS0,TSS)_TD1
 .S ST=ST_TD2_$J(DAT1,10)_$J(DAT2,10)
 .;;S ST=ST_$J("ILS",5) ; -- ??
 .S ST=ST_$J("",5) ; -- ??
 .S ST=ST_$TR($$HBR^%L1FRM(TXT,50),TS0,TSS)
 .S ST=ST_$J($TR(H1,TS0,TSS),15)_$J($TR(H2,TS0,TSS),15)
 .S ST=ST_$J($TR(Z1,TS0,TSS),15)_$J($TR(Z2,TS0,TSS),15)
 .S ST=ST_$J(SH1,12,2)_$J(SH2,12,2)_$J(SZ1,12,2)_$J(SZ2,12,2)
 .S ST=ST_$J(0,12,2)_$J(0,12,2)_$J(0,12,2)_$J(0,12,2); -- MATAH
 .;;S ST=ST_$J("MOVEIN.DAT",20) ; -- FILE ???
 .S ST=ST_$J("MOVEIN.DOC",20) ; -- FILE ???
 .I $G(TZ)="" S TZ="000000000"
 .S ST=ST_$$NUM($G(TZ),9) ; -- ESEK MURSHE
 .S ST=ST_$$NUM($G(HBMAS),9) ; -- MISPAR HAKZAA
 .D S2
 ;
 ;
 I $$^W4HSV180 D  ; --------- 180
 .S ST=$TR($J(TN,3),TS0,TSS)_$$HBR^%L1FRM(TD1,5)_DAT1
 .S ST=ST_$$HBR^%L1FRM(TD2,5)_DAT2
 .S ST=ST_"  $ "_$TR($$HBR^%L1FRM(TXT,21),TS0,TSS)
 .S ST=ST_$J($TR(H1,TS0,TSS),8)_$J($TR(H2,TS0,TSS),8)
 .S ST=ST_$J($TR(Z1,TS0,TSS),8)_$J($TR(Z2,TS0,TSS),8)
 .S ST=ST_$J(SH1,12,2)_$J(SH2,12,2)_$J(SZ1,12,2)_$J(SZ2,12,2)
 .S ST=ST_$J(0,12,2)_$J(0,12,2)_$J(0,12,2)_$J(0,12,2)
 .D S2
 ;
 I $$^W4HSV90 D  G MI ; ----- 90
 .I SH1,H1'?.P D ST90(H1,SH1,"H") D S2
 .I SH2,H2'?.P D ST90(H2,SH2,"H") D S2
 .I SZ1,Z1'?.P D ST90(Z1,SZ1,"Z") D S2
 .I SZ2,Z2'?.P D ST90(Z2,SZ2,"Z") D S2
 ;
MI I '$$^W4HSV180,'$$NEWHSV^W4PRM G END
 ;---------------------------- ERRORS PROTOCOL --------------
 ;
 S IND=$O(@$$^W4MAIN("S222")@(99999),-1)
 S IND=$J(IND,3)
 I (H1=""!(H1=0))&(H2=""!(H2=0)) D
 .D S1(" daeg oeayg xqeg : "_IND_" dxey")
 ;
 I (Z1=""!(Z1=0))&(Z2=""!(Z2=0)) D
 .D S1(" zekf oeayg xqeg : "_IND_" dxey")
 ;
 I (SH1+SH2)'=(SZ1+SZ2) D
 .D S1(" ( "_$J(SZ1+SZ2,2,2)_" ) zekf k""dq deey `l ( "_$J(SH1+SH2,2,2)_" ) daeg k""dq : "_IND_" dxey")
 ;
 I SH1&SZ1&SZ2!(SH1&SH2&SZ1),TN?.P D
 .D S1(" drpez cew xqeg : "_IND_" dxey")
 ;
END Q
 ;
 ;
ST90(HS,SH,PR) ;
 S HS=$TR(HS,TS0,TSS)
 S ST=$S(PR="H":$J(HS,8),1:$J("",8))_$S(PR="Z":$J(HS,8),1:$J("",8))
 S ST=ST_$$HBR^%L1FRM(TD1,5)_DAT1_$$HBR^%L1FRM(TD2,5)_DAT2
 S ST=ST_$J(SH,12,2)_"  $ "
 S ST=ST_$TR($$HBR^%L1FRM(TXT,21),TS0,TSS)_$J(0,12,2)_" "
 Q
 ;
S1(TXT)
 N IND S IND=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 S @$$^W4MAIN("TMPS111")@(IND)=$J(TXT,78)
 Q
 ;
S2 ;
 N IND
 S IND=$O(@$$^W4MAIN("S222")@(99999),-1)+1
 S @$$^W4MAIN("S222")@(IND)=ST
 Q
 ;
NUM(VL,LN)
 S VL=$TR($J(+VL,LN)," ",0)
 Q $$HBR^%L1FRM(VL,LN) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HSVZP0
W4HSVZP(TN,SH1,H1,SH2,H2,SZ1,Z1,SZ2,Z2,TD1,TD2,DAT1,DAT2,TXT,TZ,HBMAS) ; [ 14.12.25 08:21 ] [ 04.12.25 13:04 ] [ 03.12.25 15:41 ] 
 ;;W "TXT="_TXT_" TD1="_TD1_"  TD2="_TD2_"  SH1="_SH1_"  SH2="_SH2,!
 I '(SH1+SH2)&'(SZ1+SZ2) Q
 ;
 I $G(@$$^W4PRM@("HSVOLD")),TD2'=0 D  ; -- 15/12/21
 .N TD S TD=TD1,TD1=TD2,TD2=TD
 ;
 N I F I="H1","H2","Z1","Z2" I $TR(@I," ","")=0 S @I=""
 ;
 I DAT1["/"!(DAT1[".") S DAT1=$TR($$^%L1DC(DAT1,1),"/.","")
 I DAT2["/"!(DAT2[".") S DAT2=$TR($$^%L1DC(DAT2,1),"/.","")
 I DAT1?8N S DAT1=$E(DAT1,1,4)_$E(DAT1,7,8)
 I DAT2?8N S DAT2=$E(DAT2,1,4)_$E(DAT2,7,8)
 ;
 I $$NEWHSV^W4PRM D  G MI
 .S ST=$TR($J(TN,3),TS0,TSS)_$$HBR^%L1FRM(TD1,9)
 .S ST=ST_$$HBR^%L1FRM(TD2,9)_DAT1_DAT2
 .S ST=ST_$J("",8) ; -- CODE TAMHIR ??
 .S ST=ST_$J("NIS",5) ; -- ??
 .S ST=ST_$TR($$HBR^%L1FRM(TXT,250),TS0,TSS)
 .S ST=ST_$J($TR(H1,TS0,TSS),15)_$J($TR(H2,TS0,TSS),15)
 .S ST=ST_$J($TR(Z1,TS0,TSS),15)_$J($TR(Z2,TS0,TSS),15)
 .S ST=ST_$J(SH1,12,2)_$J(SH2,12,2)_$J(SZ1,12,2)_$J(SZ2,12,2)
 .S ST=ST_$J(0,12,2)_$J(0,12,2)_$J(0,12,2)_$J(0,12,2) ; HOVA & ZHIUT BE MATBEA ZAR
 .S ST=ST_$J("",10)_"000000000"; -- TAARIH 3 & ASMAHTA 3
 .S ST=ST_$J(0,13,3)
 .S ST=ST_$J("",50) ; -- FILE ???
 .S ST=ST_$J("",50) ; -- HEAROT NOSAFOT
 .S ST=ST_$J("",50) ; -- HEAROT NOSAFOT2
 .S ST=ST_$J("",9) ; -- SNJF
 .I $G(TZ)="" S TZ="000000000"
 .S ST=ST_$J($G(TZ),9) ; -- ESEK MURSHE
 .S ST=ST_$J("0",9) ; -- ASM 4
 .S ST=ST_$J("0",9) ; -- ASM 5
 .S ST=ST_$J("",10) ; -- DAT 4
 .S ST=ST_$J("",10) ; -- DAT 5
 .S ST=ST_$J($G(HBMAS),250) ; -- MISPAR HAKZAA
 .D S2
 ;
 ;
 I $$^W4HSV180 D  ; --------- 180
 .S ST=$TR($J(TN,3),TS0,TSS)_$$HBR^%L1FRM(TD1,5)_DAT1
 .S ST=ST_$$HBR^%L1FRM(TD2,5)_DAT2
 .S ST=ST_"  $ "_$TR($$HBR^%L1FRM(TXT,21),TS0,TSS)
 .S ST=ST_$J($TR(H1,TS0,TSS),8)_$J($TR(H2,TS0,TSS),8)
 .S ST=ST_$J($TR(Z1,TS0,TSS),8)_$J($TR(Z2,TS0,TSS),8)
 .S ST=ST_$J(SH1,12,2)_$J(SH2,12,2)_$J(SZ1,12,2)_$J(SZ2,12,2)
 .S ST=ST_$J(0,12,2)_$J(0,12,2)_$J(0,12,2)_$J(0,12,2)
 .D S2
 ;
 I $$^W4HSV90 D  G MI ; ----- 90
 .I SH1,H1'?.P D ST90(H1,SH1,"H") D S2
 .I SH2,H2'?.P D ST90(H2,SH2,"H") D S2
 .I SZ1,Z1'?.P D ST90(Z1,SZ1,"Z") D S2
 .I SZ2,Z2'?.P D ST90(Z2,SZ2,"Z") D S2
 ;
MI I '$$^W4HSV180 G END
 ;---------------------------- ERRORS PROTOCOL --------------
 ;
 S IND=$O(@$$^W4MAIN("S222")@(99999),-1)
 S IND=$J(IND,3)
 I (H1=""!(H1=0))&(H2=""!(H2=0)) D
 .D S1(" daeg oeayg xqeg : "_IND_" dxey")
 ;
 I (Z1=""!(Z1=0))&(Z2=""!(Z2=0)) D
 .D S1(" zekf oeayg xqeg : "_IND_" dxey")
 ;
 I (SH1+SH2)'=(SZ1+SZ2) D
 .D S1(" ( "_$J(SZ1+SZ2,2,2)_" ) zekf k""dq deey `l ( "_$J(SH1+SH2,2,2)_" ) daeg k""dq : "_IND_" dxey")
 ;
 I SH1&SZ1&SZ2!(SH1&SH2&SZ1),TN?.P D
 .D S1(" drpez cew xqeg : "_IND_" dxey")
 ;
END Q
 ;
 ;
ST90(HS,SH,PR) ;
 S HS=$TR(HS,TS0,TSS)
 S ST=$S(PR="H":$J(HS,8),1:$J("",8))_$S(PR="Z":$J(HS,8),1:$J("",8))
 S ST=ST_$$HBR^%L1FRM(TD1,5)_DAT1_$$HBR^%L1FRM(TD2,5)_DAT2
 S ST=ST_$J(SH,12,2)_"  $ "
 S ST=ST_$TR($$HBR^%L1FRM(TXT,21),TS0,TSS)_$J(0,12,2)_" "
 Q
 ;
S1(TXT)
 N IND S IND=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 S @$$^W4MAIN("TMPS111")@(IND)=$J(TXT,78)
 Q
 ;
S2 ;
 N IND
 S IND=$O(@$$^W4MAIN("S222")@(99999),-1)+1
 S @$$^W4MAIN("S222")@(IND)=ST
 Q
 
 
 
 
 
 
 
 
 
 

W4HTOFF
W4HTOFF(ID) ; [ 16.04.09 14:53 ] [
 ZSY "/ht100/rsd/libht "_ID_" 2 0"
 Q

W4HUZ
W4HUZ() ; [ 02.02.23 11:59 ] [ 
 I $G(%ARG("PWRLNKID"))'=""!($$GETP^%W1PRM("PWRLNKID")'="") Q 1
 Q 0

W4HZ2PDF
W4HZ2PDF(ORD) ; [ 16.06.24 11:23 ] [ 10.06.24 06:47 ] [ 
 N (JB,%ARG,%REM,FILE1,ORD)
 N DV S DV=$$^W4MYDVN
 S FILE="/tmp/sndmail"_DV_"_"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  S %ARG("LMAM")=1
  D ECONT^W4PCHBP(ORD,1,1)
 C FILE
 ;
 D PROCFILE^W4EMAIL(FILE,"",3) ; --> FILE1
 Q
 
 
 
 

W4HZAFTP
W4HZAFTP(HZM) ; [ 15.05.25 15:25 ] [ 15.12.24 22:32 ] [ 19.06.23 10:09 ] 
 I '$$HZAFTPAY^W4PRM Q 1
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I $$HZM^W4MSD(HZM),'$$TAW^W4DLPK(NMB) Q 1
 I $$CODTS^W4HZMST(HZM)=1,'$$KIOSK(HZM) Q 1
 I $$CODTS^W4HZMST(HZM)=2,'$$KIOSK(HZM) Q 1
 I $$CODTS^W4HZMST(HZM)=1,$$KIOSK(HZM),$G(@$$^W4PRM@("KSKSGMZ")) Q 1
 I $$ITRA^W4HZMST(HZM)>.1&($$TSHL^W4HZMST(HZM)>0) Q 0
 I $$ITRA^W4HZMST(HZM)<-.1&($$TSHL^W4HZMST(HZM)<0) Q 0
 Q 1
 ;
KIOSK(HZM) ;
 I $$PAPJ^W4PRM,$$NMB^W4HZMST(HZM)=$$NMBKSK^W4KIOSKO Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 

W4HZAIN
W4HZAIN(STPAR) ; [ 30.03.25 13:09 ] [ 25.03.25 14:28 ] [ 13.07.23 09:27 ] 
 N (JB,%ARG,%REM,STPAR)
 D PUT^%W3DEB("W4HZAIN","STPAR=STPAR")
 D COLXY
 ;
 D INIT^W4HZTSFA(4)
 S STPAR4=$$GETP^%W1PRM("STPAR4")
 S STPAR40=STPAR4
 D PUT^%W1PRM("STPAR40",STPAR40)
 ;
 S SHID4=$$GETP^%W1PRM("SHID4")
 S SHID40=SHID4
 D PUT^%W1PRM("SHID40",SHID40)
 ;
 S SET=$P(STPAR4,";")
 S CM0=$P($$^W4RSTPAR,"~",5)
 ;
 D KOT^W4HZTSFA(SET,CM0)
 D T^W4HZPRTN(4,COLX,COLY,KOT)
 ;
 S UR=$$UR^W4MENU
 D PUT^%W3DEB("W4HZAIN","UR="_UR)
 Q
 ;
 ;
CURGRAI(STAM) ;
 N A
 S A=$$GETP^%W1PRM("STPAR40")
 I A?1"A"1N.E Q A
 ;
 N PRT S PRT=$P($$^W4RSTPAR,"~",2)
 I '$G(PRT) Q "NOK"
 ;
 N SET,SET1 S SET1="NOK"
 I $D(@$$^W4GL("P1EZT")@(PRT)) D  I $E(SET1)="A" G ECAI
 .S SET="" F  S SET=$O(@$$^W4GL("P1EZT")@(PRT,SET)) Q:SET=""  D  I SET1?1"A"1N.E Q
 ..S I=$G(@$$^W4GL("P1EZT")@(PRT,SET)) I I=1 S SET1=SET
 ;
 I $D(@$$^W4GL("P1EZA")@(PRT)) D  I $E(SET1)="A" G ECAI
 .S SET="" F  S SET=$O(@$$^W4GL("P1EZA")@(PRT,SET)) Q:SET=""  D  I SET1?1"A"1N.E Q
 ..S I=$G(@$$^W4GL("P1EZA")@(PRT,SET)) I I=1 S SET1=SET
 ;
ECAI ;
 Q SET1_";"_PRT
 ;
INIT(CD) ;
 N STPAR0 S STPAR0=$$GETP^%W1PRM("STPAR0")
 ;
 I STPAR0?1"0~"1N.E D PUT^%W1PRM("STPAR00",STPAR0) Q 1
 Q:$$^W4AIN 1
 N STPAR00 S STPAR00=$$GETP^%W1PRM("STPAR00")
 I STPAR00?1"0~"1N.E Q 1
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 I STPAR?1"0~"1N.E D PUT^%W1PRM("STPAR00",STPAR) Q 1
 Q 1
 ;
DFLT(MAIN) ;
 I $G(MAIN)="" Q ""
 N REF S REF=$$REF^W4EZAT(MAIN) I REF="" Q ""
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N P1SETA S P1SETA=$$^W4GLSET(HZM)
 N GLQNDF S GLQNDF=$$^W4GL("QNDEF")
 ;
 N MVRM,N,NP,NS,QNDEF,SQN S SQN=0
 N SET S SET="" F  S SET=$O(@REF@(SET)) Q:SET=""  D
 .S NS=$E(SET,2,10) Q:'NS
 .S N="" F  S N=$O(@P1SETA@(NS,N)) Q:N=""  D
 ..S NP=$G(^(N))
 ..S QNDEF=$G(@GLQNDF@(MAIN,N)) Q:'QNDEF
 ..S MVRM(NS,NP)=N_";"_QNDEF
 ..S MVRM(NS)=$G(MVRM(NS))+QNDEF
 ..S SQN=SQN+QNDEF
 ;
 N DFLT,ERR S ERR=0,DFLT=0
 I SQN S DFLT=1
 S NS="" F  S NS=$O(MVRM(NS)) Q:NS=""  D
 .N MAX S MAX=$P($G(@P1SETA@(NS)),"\",2)
 .I $G(MVRM(NS))>MAX,MAX'["^",MAX'[">" S ERR=1
 .I $G(MVRM(NS))<MAX,MAX["^"!(MAX[">") S ERR=2
 ;
 I ERR D PUT^%W1PRM("DFLTERR",ERR_";"_MAIN)
 Q DFLT
 ;
 ;
AIDFLT(MAIN) ;
 I $$DFLT(MAIN),'$$EDIT Q 1
 Q 0
 ;
EDIT(STAM) ;
 Q $L($$GETP^%W1PRM("SHID0"))
 ;
 ;
COLXY ;
 I $$^W4SMALL D ^W4SMXYAD Q
 ;
 S COLX=3,COLY=6
 ;
 I $G(@$$^W4PRM@("AIPX")) D
 .S COLX=$G(@$$^W4PRM@("AIPX"))
 ;
 I $$^W4TABLET=1 D
 .S COLX=3,COLY=5
 ;
 D TMPTFUR($$UR^W4MENU)
 ;
 N K,I S K=0,I="" F  S I=$O(@TMPTFUR@(I)) Q:I=""  I I S K=K+1
 ;
 I $G(@$$^W4PRM@("ADDSCRAU")) D
 .I K>18,K<22 S COLY=7
 .I K>21,K<25 S COLX=4,COLY=6
 .I K>25,K<29 S COLX=4,COLY=7
 ;
 I $$AIG D
 .S COLX=2,COLY=6
 .I $$^W4TABLET=1 S COLX=2,COLY=4
 .I $G(@$$^W4PRM@("AIGX")) S COLX=$G(@$$^W4PRM@("AIGX"))
 .I K>12,K<15 S COLY=7
 .I K>14 S COLX=3,COLY=7
 ;
 I $$GRITVW^W4PRM S COLY=5
 ;
 I $$UR^W4MENU=3,'$$^W4AIN S COLY=K\COLX D
 .I K-1#COLX S COLY=COLY+1
 ;
 I $$^W4TABLET=2 S COLX=2,COLY=8
 ;
 I COLY<4 S COLY=4
 Q
 ;
AIG(STAM) ;
 Q $G(%ARG("AIG"))
 ;
AIP(STAM) ;
 Q $G(%ARG("AIP"))
 ;
TMPTFUR(UR) S TMPTFUR="^[$$^W3MAIN]TMPTF($$^%W1JB,"_+UR_")"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZBIT
W4HZBIT(HZMBIT) ;                  [ 15.09.26 09:18 ] [ 02.09.26 18:24 ] [ 19.08.26 09:22 ] 
 N (JB,%ARG,%REM,HZMBIT,NOPC,%BS,W4HZBIT)
BG I '$G(HZMBIT) Q "ER:-1:ORDERNUMBERISWRONG"
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D KILL^%W1PRM("BITZICRES")
 I '$D(@$$^W4ORD@(HZMBIT)) Q "ER:-2:ORDERNOTEXIST"
 S NMB=$$NMB^W4HZMST(HZMBIT) I 'NMB Q "ER:-3:TABLENUMBERISWRONG"
 I $$^W4DEL(HZMBIT),HZMBIT>0 Q "ER:-4:ORDERALREADYDELETED"
 I $$TSHL^W4HZMST(HZMBIT)<0,'$$DELDEL^W4PRM,'$G(%ARG("DELDEL")) Q "ER:-5:NOTDELETINGDELETEDORDER"
 D OVRZIC
 D ^W4IN
 ;
 S HZM=$$NEWHZM^W4NEWHZM
 ;
 I $$^W4ISPART(HZMBIT) D
 .S HZM=HZMBIT_".1"
 .
 L +@$$^W4ORD@(HZM):2
 ;
 D BITHZM(NMB,HZMBIT,HZM)
 ;
 I $$IBON^W4PRM D
 .N ST S ST=$$KOTHZM^W4PCIBON(HZMBIT,2)_"""Items"": [] }"
 .D WRITE^W4PCIBON
 ;
 S RESBIT="OK:"_HZM,%BS=0
 S RESTS="OK",RESASR="OK"
 ;
 ;
 D ^W4HZGT(HZMBIT)
 ;
 I $G(@$$^W4PRM@("LIMIT")) D BITLIM
 ;
 D SIBA
 ;
 S @$$^W4GL("P1DELI")@(HZM)=HZMBIT
 I $D(@$$^W4ORD@(HZMBIT,"CB")) D BITTS(HZMBIT,HZM) ; --> RESTS - BITUL TASHLUMIM
 ;
 I '$D(@$$^W4ORD@(HZMBIT,"CB")),$$BSCARD(HZMBIT) D
 .D CANINV^WBFUNC(HZMBIT)
 ;
 I $D(@$$^W4ORD@(HZM,"CBNOW")) D BITCBNOW(HZM) ; -- HZM OR HZMBIT ?
 ;
 I $$ISDISC^WV(HZMBIT)=1 D BITVCDISC(HZMBIT,HZM)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"HBNOW")) D
 .D HBNOWBIT(HZMBIT,HZM)
 ;
 I $D(@$$^W4ORD@(HZM,"HBNOW")) D
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"HBNOW",N)) Q:N=""  D
 ..N HB S HB=$G(^(N))
 ..N LK S LK=$P($G(@$$^W4ORD@(HZM,"CB","ASR",N)),"*") Q:LK=""
 ..I HB["Z" K @$$^W4GL("P1HL2")@(LK,HZM)
 ;
 L -@$$^W4ORD@(HZM)
 ;
 S ERR=""
 ;
 I $D(@$$^W4ORD@(HZMBIT,"BSL","NKDPAY")) D DELBSLNKDPAY(HZMBIT)
 ;
 I $$BSCARD(HZMBIT) D
 .S @$$^W4ORD@(HZMBIT,"BSL","DEL")=$H
 .I $$BSCARD^W4HZMST(HZMBIT),'$$^W4CLOSE(HZMBIT) D
 ..D ^WBSGINVC(HZMBIT)
 ;
 I $$GCOUPIT^W4HZMST(HZMBIT) D BITTLMTN(HZMBIT,HZM)
 ;
 I $P(@$$^W4ORD@(HZMBIT),"\",8)'["%" D  ; -- 21/1/14 LEV
 .S $P(@$$^W4ORD@(HZM),"\",8)=$$SHNH^W4HZMST(HZM)
 ;
 S SHUL=$$SHUL^W4HZMST(HZM)
 S SHULA=$$SHULA^W4HZMST(HZM)
 S TSHL=$$TSHL^W4HZMST(HZM)
 S TIP=$$TIP^W4HZMST(HZM)
 ;
 I '$$^W4CLOSE(HZM) D
 .I SHUL+SHULA-$G(TIP)+.03<TSHL&(TSHL'<0)!(SHUL+SHULA-$G(TIP)-.03>TSHL&(TSHL'>0)) Q
 .D SETCLOSE^W4HZMST(HZM)
 .D ^W4KORD(JB) ; -- 05.12.22
 L  ;
 ;
 I $$MYCHCLIENT^W4HZMST(HZM) D
 .N CLCOD S CLCOD=$$MYCHCLIENT^W4HZMST(HZM)
 .D MNGTBL^WMCHFUNC(HZM,"cancel",CLCOD)
 ;
 K @$$^W4ORD@(HZM,"TS")
 K @$$^W4ORD@(HZM,"PART")
 ;
 I '$G(@$$^W4GL("P1DEL")@(HZMBIT)),HZMBIT>0 D
 .S @$$^W4GL("P1DEL")@(HZMBIT)=HZM
 .I $D(@$$^W4GL("W4LINK")@(HZMBIT)) D
 ..D ^W4LNKBIT(HZMBIT)
 .
 .D ^%S2GLSV($$^W4GL("P1DEL")_"("_HZMBIT_")",$$^W4FGIB)
 .S @$$^W4GL("P1DELI")@(HZM)=HZMBIT
 .
 .I $D(@$$^W4GL("W4LINK")@(HZM)) D
 ..D ^W4LNKBIT(HZM)
 .D ^%S2GLSV($$^W4GL("P1DELI")_"("_HZM_")",$$^W4FGIB)
 .
 .D CLRDLYPRN^W4PUTHZ(HZMBIT)
 .
 .I $$^W4PIZUL(HZMBIT) D
 ..N N S N="" F  S N=$O(@$$^W4GL("W4PIZUL")@(HZMBIT,N)) Q:N=""  I N D
 ...S @$$^W4GL("P1DEL")@(N)=HZM
 ...I $D(@$$^W4GL("W4LINK")@(N)) D ^W4LNKBIT(N)
 ...I $D(@$$^W4GL("W4LINK")@(HZM)) D ^W4LNKBIT(HZM)
 ...D ^%S2GLSV($$^W4GL("P1DEL")_"("_N_")",$$^W4FGIB)
 ...S @$$^W4GL("P1DELI")@(HZM)=N
 ...D ^%S2GLSV($$^W4GL("P1DELI")_"("_N_")",$$^W4FGIB)
 ;
 I $$^W4MSL(NMB) D
 .D ^W4KHM(HZMBIT)
 .D LIMHR^W4PUTHZ(HZM,-1)
 ;
 D ^W4GIBHZ(HZM)
 ;
 ;;S ^LV("W4HZBIT","PRM")=PRM S ^LV("W4HZBIT","HZM")=HZM
 ;
 I '$G(PRM) D  ;  -- LELO SHIHZUR
 .S RS="OK:"_HZM
 .I '$G(SHULA),'($D(@$$^W4ORD@(HZM,"ETHB"))#2) D ^W4PCHB(HZM,1)
 ;
 I $$HZM^W4MSL(HZMBIT) D  ; -- WAS . -- 12/11/24
 .I $$PWRLNK^W4PRM J DELORD^W4PWRLNK(JB,HZMBIT)
 .I $$TRICKER^W4PRM J ^W4TRICKR(JB,HZMBIT,"DEL")
 .I $$TEAV^W4PRM J ^W4TVSND(JB,HZMBIT,"DEL")
 .I $$DA^W4PRM J ^W4DASND(JB,HZMBIT,"DEL")
 ;
 I $G(HZM)>0,'$$^W4CLOSE(HZM) D  G ENDE
 .;
 .I $$HZM^W4MSL(HZM),$$DLVNOTPAID^W4CLOSE(HZMBIT) S RS="OK:"_HZM Q
 .S RS="ER:"_HZM_":PAYMENTDELETINGERROR"
 .I $$GETP^%W1PRM("NOBITCAJ") D
 ..D KILL^%W1PRM("NOBITCAJ")
 ..S RESTS="ER;NOBITCAJ"
 ..S RS="ER:"_HZM_":NOBITCAJ"
 ;
 ;------------------ SHIHZUR HAZMANA --------------
 I $G(PRM) D  I RS["ER:" G ENDE
 .;;S ^AA("W4HZBIT",HZM,"PRM")=PRM
 .S RS="OK"
 .I $P(PRM,";",2) D  Q  ; -- OPEN ORDERS ITEMS FOR EDIT
 ..D COPYORD^W4MENU(HZMBIT,"REST")
 .
 .S RS=$$COPY(HZMBIT_";"_1)
 ;
END ;
ENDE I $$^W4MSD(NMB),$G(NMB) D ^W4KLFL(NMB)
 ;
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I ITRA<0,$$DELERR0^W4PRM,'$$^W4CLOSE(HZM),-$J($$SCA^W4HZMST(HZMBIT),1,1)=$J(ITRA,1,1) D ADDSTER(HZM)
 ;
 I $$DELPAYM D
 .I $G(RESTS)="OK",$E(RS,1,2)="OK",$E(RESBIT,1,2)="OK",$P(RS,":",2)>0 D
 ..N MORD S MORD=$$GETP^%W1PRM("DELPAYMORD")_","_$P(RESBIT,":",2)_","_$P(RS,":",2)
 ..D PUT^W4TMPANS("FNDORD","MORD",MORD)
 ;
 D PUT^%W3DEB("W4HZBIT","RESBIT=RESBIT&RESTS=RESTS&RESASR=RESASR&RS=RS")
 ;
 I $E(RESBIT,1,2)="OK",RESTS'="OK" D PUT^%W1PRM("ERMSG",RESTS)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"SENT2MAIL")),'$G(PRM) D
 .J SNDISHUR^W4HMH2HZ(JB,HZMBIT,0)
 ;
 I '$G(PRM),$$MAILBIT^W4PRM,$D(@$$^W4ORD@(HZM,"BIT"))>9 D MAILBT^W4HZMIT(HZM)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"ZIC"))>9 D BITZIC(HZMBIT)
 ;
 Q RS
 ;------------------- END BODY -------------------------------------------
 ;
DELBSLNKDPAY(HZMBIT) ;
 N TMPBIT S TMPBIT=$$TMP^WBSTAT
 N CLUB1 S CLUB1=$$BSCLUB1^W4HZMST(HZMBIT)
 N I S I=0
 D SETTMP(HZMBIT_" : øå÷î úðîæä 'ñî")
 D SETTMP(CLUB1_" : ïåãòåî")
 D SETTMP($$BSNAME^W4HZMST(HZMBIT)_" : çå÷ì íù")
 D SETTMP($$BSCARD^W4HZMST(HZMBIT)_" : ñéèøë 'ñî")
 D SETTMP($J($$BSNKDPAY^W4HZMST(HZMBIT),2,2)_" :úåãå÷ð ùåîéî ìåèéá")
 D PC^WBPCBON(TMPBIT,"÷é'âåì ñðæéá úåãå÷ð ùåîéî ìåèéá!",CLUB1,1)
 K @TMPBIT
 S @$$^W4ORD@(HZMBIT,"BSL","NKDPAY","DEL")=$H
 Q
 ;
 ;
BITHZM(NMB,HZMBIT,HZM)
 S P1DZ=$$^W4DZ
 D ^W4H(P1DZ,HZM)
 S @$$^W4GL("P1HL")@(NMB,HZM)=P1DZ
 S @$$^W4GL("P1HL")@(NMB,HZM,"POS")=$$^W4MYDVN
 S @$$^W4GL("P1HL0")@(NMB,HZM)=P1DZ
 S @$$^W4GL("P1HL0")@(NMB,HZM,"POS")=$$^W4MYDVN
 ;
 S @$$^W4ORD@(HZM)=$G(@$$^W4ORD@(HZMBIT))
 ;
 M @$$^W4ORD@(HZM,"LKHAH")=@$$^W4ORD@(HZMBIT,"LKHAH")
 M @$$^W4ORD@(HZM,"MYCH")=@$$^W4ORD@(HZMBIT,"MYCH")
 S @$$^W4ORD@(HZM,"MKRDLV")=$G(@$$^W4ORD@(HZMBIT,"MKRDLV"))
 S @$$^W4ORD@(HZM,"HZMLAK")=$G(@$$^W4ORD@(HZMBIT,"HZMLAK"))
 S @$$^W4ORD@(HZM,"MZMNM")=$G(@$$^W4ORD@(HZMBIT,"MZMNM"))
 S @$$^W4ORD@(HZM,"TRIDMZ")=$G(@$$^W4ORD@(HZMBIT,"TRIDMZ"))
 S @$$^W4ORD@(HZM,"TRIDCA")=$G(@$$^W4ORD@(HZMBIT,"TRIDCA"))
 ;
 D CIBMIN(HZM,HZMBIT)
 ;
 I $P(@$$^W4ORD@(HZM),"\",8)["%",$P(@$$^W4ORD@(HZM),"\",8)'["=" D
 .I $$HNHAH^W4HZMST(HZM) S $P(@$$^W4ORD@(HZM),"\",8)="" Q
 .S $P(@$$^W4ORD@(HZM),"\",22)=$P(@$$^W4ORD@(HZM),"\",8)
 .S $P(@$$^W4ORD@(HZM),"\",8)=""
 ;
 F I=9,10,11,12,17,19,24 D
 .S $P(@$$^W4ORD@(HZM),"\",I)=-$P(@$$^W4ORD@(HZMBIT),"\",I)
 ;
 D NEWTIME(HZM)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"HR2")) D
 .N HR S HR=$G(@$$^W4ORD@(HZMBIT,"HR2"))
 .I $P(HR,"\\")["dpnfd lehia"!($P(HR,"\\")["xard") S $P(HR,"\\")=""
 .S @$$^W4ORD@(HZM,"HR2")=HR
 ;
 D
 .N HZMB S HZMB=HZMBIT
 .I $$DELPAYM D
 ..S HZMB=+$$DELPAYM
 .S $P(@$$^W4ORD@(HZM,"HR2"),"\\",2)=$$TV^%W1DICT($$^%W1LNG,"DELETINGOFORDER",HZMB)
 .;
 .I '$$^W4MSD(NMB) D
 ..S $P(@$$^W4ORD@(HZM,"HR2"),"\\",6)=$$TV^%W1DICT($$^%W1LNG,"DELETINGOFORDER",HZMB)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"TM")) D
 .S @$$^W4ORD@(HZM,"TM")=$P(@$$^W4ORD@(HZMBIT,"TM"),"\",1,2)
 ;
 S SUG=$$GET^W4TMPANS("DEL","EXIT2KITCHEN?")
 S SUG=$P(SUG,"::")
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZMBIT,I))  D
 .S @$$^W4ORD@(HZM,I)=$G(@$$^W4ORD@(HZMBIT,I))
 .
 .I 'SUG D SET^W4ITEND($$PAR^W4HZMST(HZM,I),-$$QN^W4HZMST(HZM,I))
 .
 .N II F II=5:1:7 S $P(@$$^W4ORD@(HZM,I),"\",II)=-$P(@$$^W4ORD@(HZM,I),"\",II)
 .
 .N I1 S I1="" F  S I1=$O(@$$^W4ORD@(HZMBIT,I,I1)) Q:I1=""  D
 ..S @$$^W4ORD@(HZM,I,I1)=$G(@$$^W4ORD@(HZMBIT,I,I1))
 ..I 'SUG D SET^W4ITEND(I1,-$P(@$$^W4ORD@(HZM,I,I1),"\",3))
 ..S $P(^(I1),"\",3)=-$P(@$$^W4ORD@(HZM,I,I1),"\",3)
 ..;
 ..I $D(@$$^W4ORD@(HZMBIT,I,I1))>9 D
 ...N I2 S I2="" F  S I2=$O(@$$^W4ORD@(HZMBIT,I,I1,I2)) Q:I2=""  D
 ....S @$$^W4ORD@(HZM,I,I1,I2)=$G(@$$^W4ORD@(HZMBIT,I,I1,I2))
 ....N PRTT,QNT S PRTT=$P(^(I2),"\"),QNT=$P(@$$^W4ORD@(HZM,I,I1,I2),"\",3)
 ....;;I $L(PRTT) D  ; -- 24/05/21 LEV
 ....I QNT D
 .....S $P(^(I2),"\",3)=-QNT
 .....I 'SUG D SET^W4ITEND(PRTT,-QNT)
 ;
 I $$^W4MSD(NMB) D PLU1^W4HZMPC G P1MLZ
 ;
 I $D(@$$^W4ORD@(HZMBIT,"TM")),'$G(@$$^W4PRM@("MM")) D
 .D PLU1^W4HZMPC
 ;
P1MLZ I $G(@$$^W4GL("P1MLZ")@(HZMBIT)) D
 .S @$$^W4GL("P1MLZ")@(HZM)=@$$^W4GL("P1MLZ")@(HZMBIT)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"MP")) D BITMP(HZMBIT,HZM)
 ;
 I HZM>0 D LINK^W4PUTHZ(HZM)
 ;
 I HZM<0,HZM["." D
 .N HZMAIN S HZMAIN=+$$GETP^%W1PRM("HZMMAIN")
 .N NEWTS S NEWTS=$O(@$$^W4ORD@(HZMAIN,"PART",9999),-1)+1
 .D
 ..N HZMBIT S HZMBIT=$P(HZM,".")
 ..N ORDNOM S ORDNOM=$G(@$$^W4ORD@(HZMBIT,"ORDNOM")) Q:'ORDNOM
 ..N NTS S NTS=$P(ORDNOM,"-",2) Q:'NTS
 ..S @$$^W4ORD@(+ORDNOM,"PART",NTS,"DELBY")=NEWTS
 .
 .S @$$^W4ORD@(HZM,"ORDNOM")=HZMAIN_"-"_NEWTS
 .S @$$^W4ORD@(HZMAIN,"S")=$G(@$$^W4ORD@(HZMAIN,"S"))#2
 .K @$$^W4ORD@(HZMBIT,"TS")
 .D CLRTS(HZMBIT)
 Q
 ;
 ;
BITTS(HZMBIT,HZM) ;
 D KILL^%W1PRM("NOBITCAJ")
 ;
 N N,N1,I
 S:$G(RESTS)="" RESTS="OK"
 S MAC1="@$$^W4ORD@(HZMBIT,""CB"")",MAC2="@$$^W4ORD@(HZM,""CB"")" D ^%S1GC1
 ;
 F I=2,3,4,5,8,9,10,11,13 D
 .S $P(^("CB"),"\",I)=-$P($G(@$$^W4ORD@(HZM,"CB")),"\",I)
 ;
 S $P(^("CB"),"\",6)=P1DZ
 S $P(^("CB"),"\",7)=$H
 D ^W4HZSHAA
 ;
 D CLEARORD(HZM)
 ;
 I $$SHUL^W4HZMST(HZMBIT)!'$$SHULA^W4HZMST(HZMBIT) D
 .S %BS=0
 .L +@$$^W4GL("P1HB"):1
 .N MSP S MSP=$O(@$$^W4GL("P1HB")@(999999),-1)+1 I MSP<1 S MSP=1
 .S $P(@$$^W4ORD@(HZM,"CB"),"\")=MSP
 .L -@$$^W4GL("P1HB")
 ;
 I $D(@$$^W4ORD@(HZMBIT,"BSL")) D BITBSL(HZMBIT)
 ;
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D  Q:$G(%BS)
 .I N="VC" Q
 .
 .I N="MZ"!(N="HNH1") D  ;
 ..I N="MZ",$$TRIDMZ^W4HZMST(HZM)'="" D ^W4MZZIC(HZM,1)
 ..
 ..I N="MZ",$$HZM^W4MSD(HZM)!$$TAKEAWAY^W4HZMST(HZM),$$MZSM^W4PRM D  Q
 ...D KILL^%W1PRM("MZSM")
 ...N RES S RES=0
 ...D ^W4MZSMBK(HZM,1) Q:$G(RES)>300
 ...N I F I=1:1:30 Q:$$GETP^%W1PRM("MZSM")  H 1
 ..
 ..N N2
 ..S N1="",N2="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  S N2=N1
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>N2  D
 ...D BITMZHN(HZM,N,N1,N1)
 .
 .I N="CH" D
 ..N DAT,KUP S DAT=$ZD(P1DZ,"YYMMDD")
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZMBIT,"CB",N,N1)) Q:N1=""  D
 ...N A S A=$G(^(N1)) 
 ...I $$KC^W4KC(A) K @$$^W4ORD@(HZM,"CB","CH",N1) I $$DELKC^W4HZDEL(HZMBIT,N1,HZM) D  Q  ; -- KASHCASH, IF ERROR -> EXIT
 ....S $P(@$$^W4ORD@(HZM,"CB"),"\",3)=$P(@$$^W4ORD@(HZM,"CB"),"\",3)+A
 ....S $P(A,"*")=-$P(A,"*")
 ....S $P(A,"*",12)=-$P(A,"*",12)
 ....S @$$^W4ORD@(HZM,"CB",N,N1)=A
 ....D ^W4GTVCH(A,"CH")
 ....S KUP=901 D ^W4CH
 ..
 ..S N1="",N2="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  S N2=N1
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>N2  D
 ...N A S A=$G(^(N1))  I $$KC^W4KC(A) Q
 ...S $P(^(N1),"*")=-$P($G(@$$^W4ORD@(HZM,"CB",N,N1)),"*")
 ...S $P(^(N1),"*",12)=-$P(^(N1),"*",12)
 ...D ^W4GTVCH(^(N1),"CH")
 ...S KUP=901 D ^W4CH
 .
 .I N="M" D  ; -- MATBEA
 ..N N2 S N1="",N2="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  S N2=N1
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>N2  D
 ...S $P(^(N1),"*")=-$P(^(N1),"*")
 .;
 .I N="V" D BITV(HZM,HZMBIT) I %BS Q
 ;
 I '$G(%BS) D
 .D IDKSHUL^W4IDKCB(HZM)
 .D PUT^W4HZMST(HZM,"SHULA",-$$SHULA^W4HZMST(HZMBIT))
 .D PUT^W4HZMST(HZM,"TSHL",-$$TSHL^W4HZMST(HZMBIT))
 .
 .I '$$SHULA^W4HZMST(HZM),'($D(@$$^W4ORD@(HZM,"ETHB"))#2) D
 ..D ^W4PCHB(HZM,1)
 ..N HB S HB=$G(@$$^W4ORD@(HZM,"ETHB")) Q:'HB
 ..I +$G(@$$^W4GL("P1HB")@(HB))'=HZM Q
 ..I HB S $P(@$$^W4ORD@(HZM,"CB"),"\")=HB
 ;
 I $G(%BS) D
 .S RESTS="ER;ERROR "_%BS
 ;
 I $$SHULA^W4HZMST(HZMBIT) S RESASR=$$BITASR(HZMBIT,HZM)
 I RESTS="OK",RESASR'="OK" S RESTS=RESASR
 ;
 Q
 ;
 ;
CIBMIN(HZM,HZMBIT) ;
 N N,I
 M @$$^W4ORD@(HZM,"CIB")=@$$^W4ORD@(HZMBIT,"CIB")
 ;
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CIB",N)) Q:N=""  D
 .F I=2,3,4,5,7 D
 ..S $P(@$$^W4ORD@(HZM,"CIB",N),"\",I)=-$P(@$$^W4ORD@(HZMBIT,"CIB",N),"\",I)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"CIBHN")) D
 .S @$$^W4ORD@(HZM,"CIBHN")=-@$$^W4ORD@(HZMBIT,"CIBHN")
 Q
 ;
 ;
BITV(HZM,HZMBIT) ;
 D OVRZIC
 N GWUL,GWMIN K @$$^W4ORD@(HZM,"CB","V")
 S GWUL=$G(@$$^W4PL@("GWULZ"),300),GWMIN=100
 S:GWUL<GWMIN GWUL=GWMIN
 N N1 S %BS=0
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZMBIT,"CB","V",N1)) Q:N1=""  I N1 D  I %BS D BACK
 .S SUMCA=0
 .I $D(^(N1,"DEL")) Q
 .D V1(HZM,HZMBIT,N1)
 Q
 ;
OVRZIC ;
 S OVRZIC=$G(@$$^W4PL@("OVRZIC"),129)
 Q
 ;
V(HZMBIT,HZM,N1,SUMCA) ;
 K @$$^W4TMPPAY(3)
 D PUT^W4TMPPAY(3,"SUM",-SUMCA)
 N TOPAY S TOPAY=SUMCA+$P(A,"*",27)
 D PUT^W4TMPPAY(3,"TOPAY",-TOPAY)
 ;
 ;VTS*NCA*NISKA*SUG21*SUG1*CAVT*CAV*P1*PN*PC*FLP*AUTHNO*MIAUTH*TKFCA*SIBA*OFENCA*SUGMTB*KHVCA*HUZCA*SHEMCA*MOAD*SUGI*ASHTZ*CVV2*CVV4**TIPCA***VERSION
 ;
 N RS S RS=$$BITV^W4PAYCA(HZMBIT,HZM,N1,SUMCA)
 N RESTIP
 I $$TIPCB^W4PRM S RESTIP=$$^W4TIPCB(HZM,N1)
 ;
 I $P(RS,";",1,2)'="OK;000" D
 .I RS["NOBITCAJ" S %BS=$P(RS,";",2,3) D PUT^%W1PRM("NOBITCAJ",1) Q
 .S %BS=$P(RS,";",2)
 Q
 ;
 ;
V1(HZM,HZMBIT,N1) ;
 N A,IVZ S IVZ=1
V10 S A=$G(@$$^W4ORD@(HZMBIT,"CB","V",N1)) Q:A=""
 S SUMCA=$P(A,"*",7)
 ; 
 I SUMCA<0&($$TSHL^W4HZMST(HZMBIT)'<0) Q
 I SUMCA>0&($$TSHL^W4HZMST(HZMBIT)<0) Q
 N SUMCA1 S SUMCA1=SUMCA
V101 D V(HZMBIT,HZM,N1,SUMCA1)
 ;
 I '%BS D  Q:SUMCA1<.5  G V101
 .S SUMCA=SUMCA-SUMCA1
 .S SUMCA1=SUMCA
 ;
 I %BS'=OVRZIC S @$$^W4ORD@(HZM,"VERR",N1)=%BS Q
 S SUMCA1=SUMCA1\2 Q:SUMCA1<40
 S %BS=0 S IVZ=IVZ+1 G V101
 Q
 ;
 ;
BACK ;
 S RS="ER:"_HZM_":PAYMENTDELETINGERROR"
 L +@$$^W4ORD@(HZM):1
 ;
 S $P(@$$^W4ORD@(HZM,"CB"),"\",4)=$P($G(@$$^W4ORD@(HZM,"CB")),"\",4)+SUMCA
 S $P(@$$^W4ORD@(HZM),"\",12)=$P($G(@$$^W4ORD@(HZM)),"\",12)+SUMCA
 L -@$$^W4ORD@(HZM)
 Q
 ;
YYMM(H) Q $E($$^%L1DC(H,2),1,4)
 ;
 ;
SIBA N %S,WHO,SIBA,SIBA1,MAC,FLAG,MLZ,SUG
 S SIBA=$$GET^W4TMPANS("DEL","CAUSEDEL")
 S SIBA1=""
 S:SIBA["::" SIBA1=$P(SIBA,"::",2),SIBA=$P(SIBA,"::")
 S SUG=$$GET^W4TMPANS("DEL","EXIT2KITCHEN?")
 S SUG=$P(SUG,"::")
 S WHO=$$^W4WHODEL
 N MLZ
 S MLZ=$G(@$$^W4GL("P1MLZ")@(HZM))
 N MKBL S MKBL=$$MKBL^W4HZMST(HZM)
 I '$G(@$$^W4PRM@("MLZ"))!'$G(@$$^W4GL("P1MLZ")@(HZM)),MKBL S MLZ=MKBL
 ;S ^AA("W4HZBIT-SIBA","WHO")=WHO
 ;S ^AA("W4HZBIT-SIBA","MLZ")=MLZ
 ;S ^AA("W4HZBIT-SIBA","MKBL")=MKBL
 ;S ^AA("W4HZBIT-SIBA","SIBA")=SIBA
 ;S ^AA("W4HZBIT-SIBA","SIBA1")=SIBA1
 ;
 K @$$^W4ORD@(HZM,"BIT")
 ;
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S $P(@$$^W4ORD@(HZM,I),"\",2)=SUG
 .S $P(@$$^W4ORD@(HZM,I),"\",8)=SIBA1
 .I $P(@$$^W4ORD@(HZM,I),"\",5)<0 D
 ..S @$$^W4ORD@(HZM,"BIT",I)=MLZ_"*"_WHO_"*"_SIBA_"*"_$$CNWEB^%L1FRM(SIBA1)_"*"_$H_"*"_SUG_"*"_$$^W4MYDVN
 ;
 D KILL^W4TMPANS("DEL")
 Q
 ;
 ;
BITMZHN(HZM,SUGT,NEWIND,N1)
 N GLTS
 S GLTS=$$^W4ORD_"(HZM,""CB"",SUGT)"
 Q:'($D(@GLTS@(N1))#2)
 L +@GLTS@(NEWIND):1
 N ST S ST=$G(@GLTS@(N1))
 S $P(@GLTS@(NEWIND),"*")=-$P($P(ST,"*"),"!")
 S $P(@GLTS@(NEWIND),"*",2)=$H
 N MLZR S MLZR=$$GETP^%W1PRM("MLZR")
 I MLZR="",$P(ST,"*",3)="INTERNET" S MLZR="INTERNET"
 S $P(@GLTS@(NEWIND),"*",3)=MLZR
 S $P(@GLTS@(NEWIND),"*",4)=$$^W4MYDVN
 N ST5 S ST5=$P(@GLTS@(N1),"*",5)
 I ST5 S ST5=-ST5
 S $P(@GLTS@(NEWIND),"*",5)=ST5
 S $P(@GLTS@(NEWIND),"*",6)=-$P(@GLTS@(N1),"*",6)
 ;
 N A S A=$$GETP^%W1PRM("BITZICRES")
 I A,$G(HZMBIT),SUGT="MZ" D
 .S $P(@$$^W4ORD@(HZMBIT,"CB","MZ",N1),"*",7)=$P(A,"~",4)
 .S $P(@$$^W4ORD@(HZMBIT,"CB","MZ",N1),"*",8)=$P(A,"~",6)
 ;
 L -@GLTS@(NEWIND)
 Q
 ;
NEWTIME(HZM) ;
 S $P(@$$^W4ORD@(HZM),"\",4)=$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))
 S $P(@$$^W4ORD@(HZM),"\",29)=$$^%L1DC(P1DZ,1)
 Q
 ;
TV(PRM) ;
 N (JB,%REM,NOPC,%BS,W4HZBIT,PRM)
 N HZMBIT
 S HZMBIT=$$GETP^%W1PRM("HZM")
 N SHIHZ S SHIHZ=$P(PRM,";")
 N ER,CER S ER="",CER=""
 ;
 I $L(ER) Q "ER:"_HZMBIT_":DELCAER:"_ER
 G BG
 ;
TV1(HZMBIT,PRM) ;
 N (JB,%ARG,%REM,HZMBIT,PRM)
 G BG
 ;
HBNOWBIT(HZMBIT,HZM) ;
 D PUT^%W3DEB("W4HZBIT-HBNOWBIT","HZMBIT=HZMBIT & HZM=HZM")
 S P1DZ=$$^W4DZ
 ;
 K @$$^W4ORD@(HZM,"HBNOW")
 ;
 I $D(@$$^W4ORD@(HZMBIT,"HBNOW"))=1 D
 .N HB
 .S HB=$G(^("HBNOW"))
 .D HBNOWBIT1(HB,HZM)
 ;
 I $D(@$$^W4ORD@(HZMBIT,"HBNOW"))>9 D
 .N HB
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZMBIT,"HBNOW",N)) Q:N=""  D
 ..S HB=$G(^(N)) D HBNOWBIT1(HB,HZM,N)
 Q
 ;
 ;
HBNOWBIT1(HB,HZM,IND) ;
 D PUT^%W3DEB("W4HZBIT-HBNOWBIT1","HB=HB & HZM=HZM & IND=IND")
 N STRING,DAT,TZ,CODDOC,SUM,NCB,%ARG
 S CODDOC=$S(HB["Z"!(HB<0):"HBZ",1:"HB")
 I HB<0 S HB=-HB
 D ^W4HSBGET(+HB,CODDOC)
 S SUM=$G(W4HSB("TOT"))
 S DAT=$$^%L1DC(P1DZ,1)
 S STRING=$G(W4HSB("LKH"))
 S TZ=$G(W4HSB("TZ"))
 D PUT^%W3DEB("W4HZBIT-HBNOWBIT1","HB=HB & HZM=HZM & IND=IND")
 ;
 S HBZ=$$^W4LHBZ(STRING,HZM)
 D PUT^%W3DEB("W4HZBIT-HBNOWBIT1","HBZ=HBZ")
 ;
 I HBZ D
 .S PRNRES=$$PRINT^W4LHBZ(STRING,HBZ,HZM) I PRNRES'="OK" ;;Q "ER;-7;"_PRNRES
 .D PUT^%W3DEB("W4HZBIT-HBNOWBIT1","PRNRES=PRNRES")
 .I HBZ<0 S HBZ=-HBZ
 ;
 N PRM S PRM=STRING_";"_DAT_";"_TZ_";"
 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(HZMBIT)
 S %ARG("VD")=$S(TSHL>0:"HBZ",1:"HB")
 ;
 I '$G(IND) S @$$^W4ORD@(HZM,"HBNOW")=HBZ_$S(CODDOC="HB":"Z",1:"")
 I $G(IND) S @$$^W4ORD@(HZM,"HBNOW",IND)=HBZ_$S(CODDOC="HB":"Z",1:"")
 K @$$^W4MAIN("TMPHB")
 ;
 S NCB=$G(W4HSB("NCB"))
 N NCBN,RESCBN
 ;
 I NCB S NCBN=$$DELETE^W4LCBCR(NCB) I NCBN>0 D
 .I '$G(IND) S @$$^W4ORD@(HZM,"CBNOW")=NCBN
 .I $G(IND) S @$$^W4ORD@(HZM,"CBNOW",IND)=NCBN
 .S $P(@$$^W4GL("KLF")@(STRING,"CB",NCBN),"\",5)=0 ; -- MAKOR
 Q
 ;
 ;
HBZ(HB) ;
 I $G(HB)["Z" Q 1
 Q 0
 ;
 ;
COPY(PRM) ;
 N HZMOLD,NOPRINT,RS
 ;
 S HZMOLD=$P(PRM,";")
 S NOPRINT=$P(PRM,";",2)
 I NOPRINT="C" S NOPRINT='$$GET^W4TMPANS("COPY","ASK")
 D PUT^%W3DEB("W4HZBIT-COPY","HZMOLD=HZMOLD&NOPRINT=NOPRINT")
 ;
 N ER S ER=$$^W4GETHZ(HZMOLD) I ER'=1 D  G ECOPY
 .I ER=-1 S RS="ER:-1:ORDERNOTEXIST" Q
 .I ER=-2 S RS="ER:-2:ORDERISWRONG" Q
 .I +ER=0 S RS="ER:0:ORDERNUMBERISWRONG" Q
 .S RS="ER:"_ER_":ERROR"
 ;
 S $P(@$$^W4TMPORD,"~",4)=$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))
 ;
 D CLEARTMPORD
 ;
 N HZM S HZM=$$^W4NEWHZ(JB,0,NOPRINT)
 ;
 I $$^W4ISORD(HZM) D  G ECOPY
 .S @$$^W4ORD@(HZM,"COPYDEL")=HZMOLD
 .S RS="OK:"_HZM_":R"
 ;
 S RS="ER:"_HZM_":ERROR"
ECOPY Q RS
 ;
 ;
CLEARORD(HZM) ;
 K @$$^W4ORD@(HZM,"S")
 K @$$^W4ORD@(HZM,"CB","ASR")
 K @$$^W4ORD@(HZM,"CB","VC")
 K @$$^W4ORD@(HZM,"ETHB")
 K @$$^W4ORD@(HZM,"ETHB2")
 K @$$^W4ORD@(HZM,"HBNOW")
 Q
 ;
CLEARTMPORD ;
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N'?1N.N D
 .I N="ADSHAA"!(N="HR2")!(N="TELB")!(N="AZRPLGN")!(N="COORD") Q
 .I N="MKRDLV"!(N="EMAIL")!(N="MIKUD")!(N="FAX")!(N="POOLED") Q
 .K @$$^W4TMPORD@(N)
 ;
 N J
 F J=12,17,21,26,29,45,46,48:1:50,52:1:55,60:1:62,67:1:77 D
 .S $P(@$$^W4TMPORD,"\",J)=""
 Q
 ;
BITCAYAD(HZMBIT,HZM,N1) ;
 I $G(HZMBIT)="" Q
 I $G(HZM)="" S HZM=HZMBIT
 N A S A=$G(@$$^W4ORD@(HZMBIT,"CB","V",N1)) Q:A=""
 N A1 S A1=A
 S $P(A1,"*",6)=-$P(A1,"*",6)
 S $P(A1,"*",7)=-$P(A1,"*",7)
 S $P(A1,"*",27)=-$P(A1,"*",27)
 S @$$^W4ORD@(HZM,"CB","V",N1)=A1
 I $$TIPCB^W4PRM S RESTIP=$$^W4TIPCB(HZM,N1)
 Q
 ;
DELVCBON(HZM,HZMBIT) ;
 M @$$^W4ORD@(HZM,"VC",1)=@$$^W4ORD@(HZMBIT,"VC",$$LIBON^WV(HZMBIT))
 I HZM'=HZMBIT S @$$^W4ORD@(HZM,"VC",1,"DISC")=-$G(@$$^W4ORD@(HZMBIT,"VC",1,"DISC"))
 I HZM=HZMBIT S @$$^W4ORD@(HZM,"VC",1,"DISC")=0
 S @$$^W4ORD@(HZM,"VC",1)=$$GET^W4TMPANS("VCARD","STR")
 S @$$^W4ORD@(HZM,"VC",1,"PRINTMSG")=$$GET^W4TMPANS("VCARD","PRINTMSG")
 K @$$^W4ORD@(HZM,"VC",1,"PRM")
 Q
 ;
DELPAYM(STAM) ;
 Q $$GETP^%W1PRM("DELPAYMORD")
 ;
BITLIM ;
 N N,STRING,SUM
 S N="" F  S N=$O(@$$^W4ORD@(HZMBIT,"CB","ASR",N)) Q:N=""  D
 .S STRING=$P(^(N),"*"),SUM=$P(^(N),"*",4) Q:STRING=""
 .
 .I $L($G(STRING))>3,$D(@$$^W4GL("P1EZL")@(STRING)) D
 ..N YYMM S YYMM=$E($$^%L1DC($P(@$$^W4ORD@(HZMBIT),"\",29),2),1,4)
 ..L +@$$^W4GL("P1LIM")@(STRING,YYMM):1
 ..S @$$^W4GL("P1LIM")@(STRING,YYMM)=$G(@$$^W4GL("P1LIM")@(STRING,YYMM))-SUM
 ..S @$$^W4GL("P1LIM")@(STRING,YYMM,HZM)=$G(@$$^W4GL("P1LIM")@(STRING,YYMM,HZM))-SUM
 ..D ^%S2GLSV($$^W4GL("P1LIM")_"("""_STRING_""","""_YYMM_""")",$$^W4FGIB)
 ..S @$$^W4GL("P1LIMI")@(HZM,STRING,YYMM)=""
 ..L -@$$^W4GL("P1LIM")@(STRING,YYMM)
 Q
 ;
 ;
BITMP(HZMBIT,HZM) ;
 N N S N="" F  S N=$O(@$$^W4HZMP(HZMBIT)@(N)) Q:N=""  D
 .N ASM,TRI S ASM=$G(^(N,"ASM"))
 .S RES=$$^WMTRANS("DEL",$$DEL^WMPREPSN(ASM)) I $P(RES,"\")'=0 D  Q
 ..S @$$^W4HZMP(HZM,N,"RES")=RES
 .
 .D ^WMRCV2V("DEL") I $G(RCD) S RES=RCD_"\"_$$^WMERNM("DEL") D  Q
 ..S @$$^W4HZMP(HZM,N,"RES")=RES
 .
 .S @$$^W4HZMP(HZM,N,"RES")=RES
 .S @$$^W4HZMP(HZM,N,"ASM")=TRI
 .
 .I $L($$^WMANS("DEL","MES0")) D  ;-- MAKOR
 ..N TRS,COP,TRI,CRED,HNHMP,KOT
 ..S TRS=-$G(@$$^W4HZMP(HZMBIT,N,"SHUL"))
 ..S COP=$G(@$$^W4HZMP(HZMBIT,N,"COP"))
 ..S TRI=$G(@$$^W4HZMP(HZM,N,"ASM"))
 ..S CRED=$G(@$$^W4HZMP(HZMBIT,N,"CRED"))
 ..S HNHMP=-$G(@$$^W4HZMP(HZMBIT,N,"HNH"))-$G(@$$^W4HZMP(HZMBIT,N,"HNHMPP"))
 ..N IND,SH S SH=N S IND=SH
 ..
 ..S KOT=HZM_"-"_IND_";xewn;"_$S(CRED:" i`xy` oeayg",1:" qn zipeayg")
 ..S KOT=KOT_";"_$G(COP)_";"_TRI_";"_$G(EMP)
 ..
 ..S MSG="{BIG}{RIGHT}"_$J(TRS+HNHMP,2,2)_" : dgpd iptl{NL}"
 ..S MSG=MSG_"{BIG}{RIGHT}"_$J(HNHMP,2,2)_" : dgpd{NL}"
 ..S MSG=MSG_"{BIG}{RIGHT}"_$J(TRS,2,2)_" : mley{SMALL}"
 ..
 ..D ^WMPCMSG($$^WMANS("DEL","MES0"),MSG,KOT,$$^W4HZMP(HZM,N,"PC"))
 ;
 M @$$^W4HZMP(HZM)=@$$^W4HZMP(HZMBIT)
 ;
 N N S N="" F  S N=$O(@$$^W4HZMP(HZM)@(N)) Q:N=""  D
 .N I F I="SHUL","HNH","HNHMP" D
 ..I $D(@$$^W4HZMP(HZM,N,I)) S ^(I)=-^(I)
 Q
 ;
BITASR(HZMBIT,HZM) ;
 N (JB,%ARG,%REM,HZMBIT,HZM)
 S RES="OK"
 S N="",SHULA=0,$P(@$$^W4ORD@(HZM),"\",17)=0
 D PUT^W4HZMST(HZM,"TSHL",-$$TSHL^W4HZMST(HZMBIT)-$$LKHNH^W4HZMST(HZMBIT))
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZMBIT,"CB","ASR",N1)) Q:N1=""  D  I RES!($E(RES,1,2)="ER") Q
 .N LKHN,LKAH,LKHNH,ASR,HRA1,LKHR,HZMLK,TLUSH,KMTL,FLP,LKHN1,LKHR1,CIBVT,CIBCARD,CIBCID,CIBUID,CIBUIC,TSFMH,TIPAS,TBCARD,TBRECID,COUPNMB,COUPNM,COUPTEL
 .D ^W4GTVCH(^(N1),"ASR")
 .N HRA S HRA=$G(HRA1)
 .I $D(@$$^W4ORD@(HZMBIT,"CB","ASR",N1,"DEL")) Q
 .I ASR<0&($$TSHL^W4HZMST(HZMBIT)'<0) Q
 .I ASR>0&($$TSHL^W4HZMST(HZMBIT)<0) Q
 .
 .S ASR=-ASR,LKHNH=-LKHNH,KMTL=-KMTL,TIPAS=-TIPAS,TSFMH=-TSFMH
 .S RES=-.1
 .I LKHN=$$^W4CIBLKH,'$D(@$$^W4ORD@(HZM,"CIB")),$G(CIBCARD) D  Q:RES'="OK"  G BITASRA
 ..N %S,%TO
 ..D  Q:RES
 ...D
 ....I '$$NEWCIB^W4PRM S RES=$$^WCCANC(HZMLK,CIBUID) S:'RES RES="OK" Q
 ....D CNC^WCNPAY(HZMBIT,N1,HZM) S:$G(RES)=0 RES="OK"
 ...H:$O(@$$^W4ORD@(HZMBIT,"CB","ASR",N1))'="" .5
 .
 .I $$IFVC^WV(HZMBIT,N1) D  Q:RES'="OK"  G BITASRA
 ..N %S,%TO
 ..D KILL^W4TMPANS("VCARD")
 ..S RES=$$^WVCANC(HZMBIT,HZM,N1,HZMLK)
 ..;;S ^AA("WVCANC-RES")=RES
 ..D KILL^W4TMPANS("VCARD")
 ..H:$O(@$$^W4ORD@(HZMBIT,"CB","ASR",N1))'="" .5
 .;
 .I LKHN=$$^W4TBLKH D  S:$P(RES,";")=0 RES="OK" Q:RES  G BITASRA  ; --- WAS Q:'RES  06/10/19 LEV
 ..N %S,%TO S RES="OK"
 ..D:TBCARD&ASR
 ...S RES=$$^WTBCANC(HZM,TBCARD,-ASR-LKHNH) Q:RES  ; --- HZM OR HZMBIT ???
 ...S LKHNH=$G(TBVL("DISCORD"))
 ...S HZMLK=$G(TBVL("TRID"))
 ...S TBCARD=$G(TBVL("CARD"))
 ...S TBRECID=$G(TBVL("RECID"))
 .
 .I LKHN=$$LKH^W4COUPPH D DELCPASR(HZMBIT,HZM,N1) S:RES=0 RES="OK" Q:RES  G BITASRA
 .
BITASRA .N KUP,CUSN S RES="OK"
 .S KUP=901,CUSN=LKHN,FLP=""
 .I HRA'["BSL;" S HRA=""
 .N N,N1,PRBIT S PRBIT="" D ^W4ASR
 ;
 D IDKSHULA^W4IDKCB(HZM)
 Q RES
 ;
 ;
BITCBNOW(HZM) ;
 I $D(@$$^W4ORD@(HZM,"CBNOW"))=1 D  Q
 .N NCBN S NCBN=$G(^("CBNOW"))
 .S RESCBN=$$^W4PCCB(NCBN)
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CBNOW",N)) Q:N=""  D
 .N NCBN S NCBN=$G(^(N))
 .S RESCBN=$$^W4PCCB(NCBN)
 Q
 ;
 ;
BITVCDISC(HZMBIT,HZM) ;
 S %ARG("HZMBIT")=1
 D KILL^W4TMPANS("VCARD")
 ;
 N RES S RES=$$^WVCBONUS(HZMBIT)
 ;
 I RES="OK" D DELVCBON(HZM,HZMBIT) Q
 ;
 ; --- DELETING BONUS WAS NOT SUCCESFULL --
 N OK S OK=0
 N I,A S I=999 F  S I=$O(@$$^W4ORD@(HZM,"CB","HNH1",I),-1) Q:I=""  D  Q:OK
 .S A=$G(^(I)) Q:A=""
 .I $P(A,"*",5)["CANCEL VALUECARD BONUS" S OK=-1 Q
 .I $P(A,"*",5)="VALUECARD BONUS" D
 ..S OK=1
 ..N HNHVC,HNH,TSHL S HNHVC=+A
 ..S TSHL=$$TSHL^W4HZMST(HZM)
 ..S HNH=$$HNH^W4HZMST(HZM)
 ..D PUT^W4HZMST(HZM,"TSHL",TSHL+HNHVC)
 ..D PUT^W4HZMST(HZM,"HNH",HNH-HNHVC)
 ..S @$$^W4ORD@(HZM,"VCBITER")=RES_";"_I_";"_A
 ..K @$$^W4ORD@(HZM,"CB","HNH1",I)
 ;
 S @$$^W4ORD@(HZM,"VC",1)=$$GET^W4TMPANS("VCARD","STR")
 S @$$^W4ORD@(HZM,"VC",1,"ERMSG")=$$GET^W4TMPANS("VCARD","ERR")
 ;
 D KILL^W4TMPANS("VCARD")
 Q
 ;
 ;
BITBSL(HZMBIT) ;
 N PRNOCNC S PRNOCNC=0
 I $$BSCARD(HZMBIT),$$^W4CLOSE(HZMBIT) D
 .D CANINV^WBFUNC(HZMBIT)
 .S PRNOCNC=1
 ;
 I $D(@$$^W4ORD@(HZMBIT,"BSL","PAY")) D
 .N ERR,I
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZMBIT,"BSL","PAY",N)) Q:N=""  D BITBSLN(HZMBIT,N,PRNOCNC)
 Q
 ;
BITBSLN(HZMBIT,N,NOCANC) ;
 N TMPBIT S TMPBIT=$$TMP^WBSTAT
 S I=0 K @TMPBIT
 N CARD,ASM,NAME,PAID,CLUB1
 S CARD=$G(@$$^W4ORD@(HZMBIT,"BSL","PAY",N,"CARD")) Q:CARD=""
 S NAME=$G(@$$^W4ORD@(HZMBIT,"BSL","PAY",N,"NAME"))
 S ASM=$G(@$$^W4ORD@(HZMBIT,"BSL","PAY",N,"ASM"))
 S CLUB1=$G(@$$^W4ORD@(HZMBIT,"BSL","PAY",N,"CLUB1"))
 S PAID=$G(@$$^W4ORD@(HZMBIT,"BSL","PAY",N,"PAID")) Q:'PAID
 S @$$^W4ORD@(HZMBIT,"BSL","PAY",N,"DEL")=$H
 ;
 D SETTMP(HZMBIT_" : xewn zpnfd 'qn")
 D SETTMP(NAME_" : gewl my")
 D SETTMP(CLUB1_" : oecren")
 D SETTMP(CARD_" : qihxk 'qn")
 D SETTMP($J(PAID,2,2)_" : lehia mekq")
 D PC^WBPCBON(TMPBIT,"wi'bel qpfia melyz lehia!","",1)
 K @TMPBIT
 ;
 I ASM,'$G(NOCANC) D
 .D CANPPC^WBFUNC(CARD,ASM)
 .S @$$^W4GL("BZLPY")@(HZMBIT,"CANPPC")=$ZD($H,"DD.MM.YY  24:60")
 Q
 ;
 ;
SETTMP(ST) ;
 S I=I+1
 S @TMPBIT@(I)=$$^WBFMT(ST)
 Q
 ;
BSCARD(HZM) ;
 I '$$BSL^W4PRM Q 0
 Q $$BSCARD^W4HZMST(HZM)
 ;
BITTLMTN(HZMBIT,HZM) ;
 K @$$^W4ORD@(HZM,"GCOUP")
 M @$$^W4ORD@(HZM,"GCOUP")=@$$^W4ORD@(HZMBIT,"GCOUP")
 S @$$^W4ORD@(HZM,"GCOUP","SUM")=-$G(@$$^W4ORD@(HZMBIT,"GCOUP","SUM"))
 D SETTLMTN^W4SNDCLS(HZM)
 Q
 ;
CLRTS(HZMBIT)
 N ORDNOM S ORDNOM=$G(@$$^W4ORD@(HZMBIT,"ORDNOM"))
 N HZMAIN S HZMAIN=+ORDNOM
 N NTS S NTS=$P(ORDNOM,"-",2) Q:'NTS
 ;
 D CLRTS1(HZMAIN,NTS)
 Q
 ;
 ;
CLRTS1(HZMAIN,NTS) ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZMAIN,"TS",N)) Q:N=""  I N D
 .K @$$^W4ORD@(HZMAIN,"TS",N,NTS)
 .I N'["-" D
 ..N STS S STS=$P($G(@$$^W4ORD@(HZMAIN,N)),"\",13)
 ..S $P(STS,";",NTS)=""
 ..S $P(@$$^W4ORD@(HZMAIN,N),"\",13)=STS
 .
 .I $L(N,"-")=2 D
 ..N STS S STS=$P($G(@$$^W4ORD@(HZMAIN,+N,+$P(N,"-",2))),"\",13)
 ..S $P(STS,";",NTS)=""
 ..S $P(@$$^W4ORD@(HZMAIN,+N,+$P(N,"-",2)),"\",13)=STS
 .
 .I $L(N,"-")=3 D
 ..N STS S STS=$P($G(@$$^W4ORD@(HZMAIN,+N,+$P(N,"-",2),+$P(N,"-",3))),"\",13)
 ..S $P(STS,";",NTS)=""
 ..S $P(@$$^W4ORD@(HZMAIN,+N,+$P(N,"-",2),+$P(N,"-",3)),"\",13)=STS
 Q
 ;
DELCPASR(HZMBIT,HZM,N1) ;
 S RES=0
 N NOMASR,OKCP S OKCP=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZMBIT,"CPN",N)) Q:N=""  I $G(^(N,"NOMASR"))=N1 S OKCP=N Q
 Q:'OKCP
 N TRID S TRID=$G(@$$^W4ORD@(HZMBIT,"CPN",OKCP,"TRID"))
 Q:'TRID
 N CARD S CARD=$G(@$$^W4ORD@(HZMBIT,"CPN",OKCP,"CARD"))
 N SUM S SUM=$G(@$$^W4ORD@(HZMBIT,"CPN",OKCP,"SUM"))
 N DISC S DISC=$G(@$$^W4ORD@(HZMBIT,"CPN",OKCP,"DISC"))
 ;
 S RES=$$BIT^W4COUPPH(HZM,SUM,DISC,CARD,TRID) Q:RES
 ;
 S LKHNH=-$G(@$$^W4ORD@(HZMBIT,"CPN",OKCP,"DISC"))
 S HZMLK=TRID
 S ASR=-SUM
 Q
 ;
ADDSTER(HZM) 
 N IT,LSH
 S IT=-$J($$ITRA^W4HZMST(HZM),2,2)
 S LSH=$O(@$$^W4ORD@(HZM,9999),-1)+1
 S @$$^W4ORD@(HZM,LSH)="0\\"_$$TV^%W1DICT($$^%W1LNG,"DELETINGERRORR")_"\"_IT_"\1\"_IT
 D ^W4CALC(HZM)
 Q
 ;
BITZIC(HZMBIT) ; 
 N %ARG
 N N S N="" F  S N=$O(@$$^W4ORD@(HZMBIT,"ZIC",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .N HZ S HZ=$P(A,"\") Q:'HZ  Q:HZ=HZMBIT
 .S %ARG("DELDEL")=1
 .N RS S RS=$$W4HZBIT(HZ)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZC
W4HZC ; [ 10.07.23 09:23 ] [ 09.07.23 11:00 ] [ 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 Q:'$D(JB)
 D ^%W1ARG
 ;
 K %L1PC
 S %REPN="W4HZC"
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="GET^W4HZC"
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
DT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 Q
 ;
GET ;
 N DAT1,DAT2
 S DAT1=$ZD(MEDAT,"DD.MM.YY"),DAT2=$ZD(ADDAT,"DD.MM.YY")
 S MEHZM=1,ADHZM=99999999
 S MESUM=MEx1
 S ADSUM=ADx1 
 D GET^W4HZCA
 S %L1PC("CONTINUE")=""
 Q
 ;
IND ;
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZCA
W4HZCA ; [ 14.05.26 12:26 ] [ 14.04.26 01:58 ] [ 02.02.26 15:52 ] 
 ;-- DOCH CA LEFI HAZMANOT
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 D ^%W1ARG
 I '$G(MESUM),'$G(ADSUM) S MESUM=-99999,ADSUM=99999
 S MEHZM="",ADHZM=999999999
 ;
 ;;S DAT1=MEDAT
 ;;S DAT2=ADDAT
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 S SUGM1=""
 D PCPRM^W4DMANY(%SCRN)
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("TMPREPB")
 D KILL^%W1PRM("CURSORT")
 Q
 ;
 ;
GET ;
 N (JB,%ARG,%REM,SCA,SCAH,SCAP,SISR,SISRH,SVIZA,SVIZAH,SDIN,SDINH,SAE,SAEH,SALP,SALPH,SKK,SKKH,SFI,SFIH,SHUM,SHUMH,DAT1,DAT2,MEHZM,ADHZM,MESUM,ADSUM,SUGM,SUGCA,NCA,SUGASR,PRSUMDAT)
 ;
 K @$$^W4MAIN("VRM")
 ;
 D  
 .N I F I=1:1:9 S V(I)=$$^W4VT(I)
 ;
 S V1(0)="il`xyi"
 S V1(1)="xiih"
 S V1(2)="wlc"
 S V1(3)="iciin"
 S V1(4)="orhp"
 ;
 S (SISR,SVIZA,SDIN,SAE,SALP,SKK,SFI)=0
 K SHUM,SHUMH
 ;
 S DT1=$$^%L1DC(DAT1,3),DT2=$$^%L1DC(DAT2,3)
 ;
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @$$^W4MAIN("TMPREPB")
 D KILL^%W1PRM("CURSORT")
 K @TMPREP
 ;
 I '$G(SUGM)!($G(SUGM)=1) D FRMHZ(DT1,DT2),FRMHMK(DT1,DT2)
 I '$G(SUGM)!($G(SUGM)=2) D FRMCB(DT1,DT2)
 ;
 ;
 S I=0
 F DT=DT1:1:DT2 D
 .S SUMD=0,PR=0
 .N VD F VD="HZ","CB","HMK" D
 ..S N="" F  S N=$O(@$$^W4MAIN("VRM")@(DT,VD,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S I=I+1,PR=1
 ...S @$$^W4MAIN("TMPREP")@("G",I)=A
 ...S SUMD=SUMD+$P(A,"\",8)
 .Q:'PR  Q:'$G(PRSUMDAT)
 .N J S A="" F J=1:1:7 S A=A_$TR($J("",10)," ","-")_"\"
 .S A=A_"<B>"_$J(SUMD,2)
 .S I=I+1,@$$^W4MAIN("TMPREP")@("G",I)=A
 .S I=I+1,@$$^W4MAIN("TMPREP")@("G",I)=""
 ;
 S J=0,SCA=0
 F I="SISR","SVIZA","SDIN","SAE","SALP","SKK","SFI" D
 .I I="SKK",$$PAPJ^W4PRM Q
 .S J=$$IND(I)
 .S @I=$J($G(SHUM(J)),2,2),SCA=SCA+$G(SHUM(J))
 ;
 S J=0,SCAH=0,SCAP=0
 F I="SISRH","SVIZAH","SDINH","SAEH","SALPH","SKKH","SFIH" D
 .I I="SKKH",$$PAPJ^W4PRM Q
 .S J=$$INDH(I)
 .S @I=$J($G(SHUMH(J)),2,2),SCAH=SCAH+$G(SHUMH(J))
 ;
 S SCAP=$J(SCA-SCAH,2,2)
 ;;K @$$^W4MAIN("VRM")
 Q
 ;
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4HZCA-CHKPRM","ADHZM=ADHZM & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 ;;I MESUM>ADSUM Q "0;RANGENOTVALID;;MESUM"
 I $G(MEHZM),MEHZM>ADHZM Q "0;RANGENOTVALID;;MEHZM"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) ;
 Q "W4HZCA"
 ;
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HZ S HZ=$P(A,"\",3) Q:'HZ
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 N SUGM S SUGM=$P(A,"\",2)
 I SUGM="dpnfd" W " onClick=""ShowOrder('"_HZ_"','ifr')"""
 I SUGM="dlaw" W " onClick=""ShowReceipt('"_HZ_"','','ifr')"""
 I SUGM="dlaw/qn zipeayg" W " onClick=""ShowArmInvoice('"_HZ_"HMK','','ifr')"""
 Q
 ;
 ;
GTRGTD(DOCH) ;
 I $D(@$$^W4MAIN("TMPREP")@("GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=$G(@$$^W4REPSCR@("W4HZCA","GTR"))
 M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@("W4HZCA","GTD")
 Q
 ;
FRMHZ(DT1,DT2) ;
 N HZ,DAT,N1,TRH,SHAA,ISKA,CA,SUM,SUG,I
 S I=0
 S HZ="" F DT=DT1:1:DT2 I $D(@$$^W4GL("P1H")@(DT)) D
 .S HZ=MEHZM-1 F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  Q:ADHZM&(HZ>ADHZM)  D
 ..I $D(@$$^W4ORD@(HZ,"CB","V")) D
 ...S DAT=$P($G(@$$^W4ORD@(HZ,"CB")),"\",7)
 ...I DAT'?5N1"."1N.N D
 ....N DATCB S DATCB=$$DATCB^W4HZMST(HZ)
 ....S DAT=$$^%L1DC($P(DATCB,"  "),3)_","_($P(DATCB,"  ",2)*3600+($P($P(DATCB,"  ",2),":",2)*60))
 ...
 ...S N1="" F  S N1=$O(@$$^W4ORD@(HZ,"CB","V",N1)) Q:N1=""  D
 ....S A=$G(^(N1))
 ....I $$PAPJ^W4PRM,$P(A,"*")=("$V"_$$GFC^W4VT) Q
 ....S TRH=$$^%L1DC(DAT,1),SHAA=$$T^%L1TIME($P(DAT,",",2))
 ....S ISKA=$P(A,"*",3)
 ....S CA=$$SPA^%L1FRM($P(A,"*",2)),SUM=$P(A,"*",7)
 ....I $G(SUGASR)=1,CA'?1N.N!($L(CA)<5) Q 
 ....I $G(SUGASR)=2,CA?1N.N,$L(CA)>5 Q 
 ....I '$$SUGCA($G(SUGCA),A) Q
 ....I $G(NCA),'$$^W4SRCCA(HZ,NCA) Q 
 ....Q:'SUM  Q:SUM<MESUM  Q:ADSUM&(SUM>ADSUM)
 ....S SUG=$$SUGC(A)
 ....I $G(%ARG("SOLEK")),SUG'=%ARG("SOLEK") Q
 ....I $L(SUG) D
 .....S SHUM(SUG)=$G(SHUM(SUG))+SUM
 .....I 'CA S SHUMH(SUG)=$G(SHUMH(SUG))+SUM
 ....S SUG1=$$SUG1(A)
 ....S ASM=$$ASM(A)
 ....S I=I+1
 ....S @$$^W4MAIN("VRM")@(DT,"HZ",I)=TRH_"\dpnfd\"_HZ_"\"_ISKA_"\"_$$LAST4(CA)_"\"_ASM_"\"_SUG1_"\"_SUM
 Q
 ;
 ;
FRMCB(DT1,DT2)
 N CB,GLCB,CUST,DAT,DT,ISKA,CA,SUM,SUG,SUG1,STRING,I
 S GLCB=$$^W4GL("KLIN")_"(""CB"")"
 N CUST S I=0
 ;
 S CB="" F  S CB=$O(@GLCB@(CB)) Q:CB=""  D
 .S CUST=$G(^(CB)) Q:CUST=""
 .S STRING=CUST
 .N GLCBV S GLCBV=$$GLCBV^W4LCBCR(CB)
 .I '$D(@GLCBV) Q
 .S DAT=$$DAT^W4LCBCR(CB)
 .S DT=$$^%L1DC(DAT,4)
 .I DT<DT1!(DT>DT2) Q
 .
 .I $D(@GLCBV)=1 D 
 ..S ISKA=$$NOMISKA^W4LCBCR(CB)
 ..S CA=$$CANMB^W4LCBCR(CB)
 ..S SUM=$$CA^W4LCBCR(CB)
 ..I SUM<MESUM!(SUM>ADSUM) Q
 ..N A S A=$G(@$$GLCBV^W4LCBCR(CB))
 ..I '$$SUGCA(SUGCA,A) Q
 ..S SUG=$$SUGC(A)
 ..I $G(%ARG("SOLEK")),SUG'=%ARG("SOLEK") Q
 ..S SUG1=$$SUG1(A)
 ..I $L(SUG) S SHUM(SUG)=$G(SHUM(SUG))+SUM
 ..S ASM=$$ASM(A)
 ..S I=I+1
 ..S @$$^W4MAIN("VRM")@(DT,"CB",I)=$$^%L1DC(DAT,1)_"\dlaw\"_CB_"\"_ISKA_"\"_$$LAST4(CA)_"\"_SUG1_"\"_SUM
 .
 .I $D(@GLCBV)>9 D 
 ..N K F K=1:1 Q:'$D(@GLCBV@(K))  D
 ...S ISKA=$$NOMISKA^W4LCBCR(CB,K)
 ...S CA=$$CANMB^W4LCBCR(CB,K)
 ...I $G(NCA),$E(CA,$L(CA)-$L(NCA)+1,$L(CA))'=NCA Q
 ...S SUM=$$CA^W4LCBCR(CB,K)
 ...I SUM<MESUM!(SUM>ADSUM) Q
 ...N A S A=$G(@GLCBV@(K))
 ...I '$$SUGCA(SUGCA,A) Q
 ...S SUG=$$SUGC(A)
 ...I $G(%ARG("SOLEK")),SUG'=%ARG("SOLEK") Q
 ...S SUG1=$$SUG1(A)
 ...I $L(SUG) S SHUM(SUG)=$G(SHUM(SUG))+SUM
 ...S ASM=$$ASM(A)
 ...S I=I+1
 ...S @$$^W4MAIN("VRM")@(DT,"CB",I)=$$^%L1DC(DAT,1)_"\dlaw\"_CB_"\"_ISKA_"\"_$$LAST4(CA)_"\"_ASM_"\"_SUG1_"\"_SUM
 Q
 ;
 ;
FRMHMK(DT1,DT2) ;
 N HMK,GLHMK,CUST,DAT,DT,ISKA,NOMDOC,CA,SUM,SUG,SUG1,STRING,I,%ARG
 S GLHMK=$$^W4GL("KLIN")_"(""HMK"")"
 N CUST S I=0
 ;
 S HMK="" F  S HMK=$O(@GLHMK@(HMK)) Q:HMK=""  D
 .S CUST=$G(^(HMK)) Q:CUST=""
 .I CUST["W" D
 ..S STRING=$P(CUST,"W")
 ..S %ARG("VD")="HMKI"
 ..S NOMDOC=$P(CUST,"W",2)
 ..S DAT=$$DAT^W4DOC(NOMDOC)
 ..S DT=$$^%L1DC(DAT,3)
 .I CUST'["W" D
 ..S STRING=CUST
 ..S %ARG("VD")="HMK"
 ..S DAT=$$DAT^W4LCBCR(HMK)
 ..S DT=$$^%L1DC(DAT,4)
 .I DT<DT1!(DT>DT2) Q
 .N A S A=$G(@$$GLCBV^W4LCBCR(HMK)) Q:A?.P
 .S SUG=$$SUGC(A)
 .S ISKA=$$NOMISKA^W4LCBCR(HMK)
 .;;I $L(ISKA,"-")>2 S ISKA=$P(ISKA,"-",2,3)
 .S CA=$$CANMB^W4LCBCR(HMK)
 .I $G(NCA),$E(CA,$L(CA)-$L(NCA)+1,$L(CA))'=NCA Q
 .I '$$SUGCA(SUGCA,A) Q
 .S SUM=$$CA^W4LCBCR(HMK)
 .I SUM<MESUM!(SUM>ADSUM) Q
 .I $L(SUG) D
 ..S SHUM(SUG)=$G(SHUM(SUG))+SUM
 .S SUG1=$$SUG1(A)
 .S ASM=$$ASM(A)
 .S I=I+1
 .S @$$^W4MAIN("VRM")@(DT,"HMK",I)=$$^%L1DC(DAT,1)_"\dlaw/qn zipeayg\"_HMK_"\"_ISKA_"\"_$$LAST4(CA)_"\"_ASM_"\"_SUG1_"\"_SUM
 Q
 ;
SUGCA(SUGCA,A) ;
 S SUGCA=$G(SUGCA)
 S A=$G(A)
 I SUGCA=""!(A="") Q 1
 I SUGCA=9 Q 1
 I SUGCA=$E(A,119) Q 1
 Q 0
 ;
SUG1(A) 
 N SUG1 S SUG1=""
 I $$SUGC(A),$D(V($$SUGC(A))) S SUG1=V($$SUGC(A))
 N KIND S KIND=$E(A,119)
 I KIND?1N,$D(V1(KIND)) S SUG1=V1(KIND)_" "_SUG1
 Q SUG1
 ;
SUGC(A) ;
 Q $E(A,3)
 ;
ASM(A) ; 
 N ASM S ASM=$P(A,"*",12) 
 I 'ASM S ASM=" "
 Q ASM 
 ;
IND(I) ; 
 I I="SISR" Q 1
 I I="SVIZA" Q 2
 I I="SDIN" Q 3
 I I="SAE" Q 4
 I I="SALP" Q 6
 I I="SKK" Q 7
 I I="SFI" Q 9
 Q 0
 ;
INDH(I) ; 
 I I="SISRH" Q 1
 I I="SVIZAH" Q 2
 I I="SDINH" Q 3
 I I="SAEH" Q 4
 I I="SALPH" Q 6
 I I="SKKH" Q 7
 I I="SFIH" Q 9
 Q 0
 ;
LAST4(CA) ; 
 I CA?1N.N,$L(CA)>3 Q "..."_$E(CA,$L(CA)-3,$L(CA))
 Q CA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZCA1
W4HZCA1 ; [ 02.02.26 16:16 ] [ 27.01.26 14:49 ] [ 23.12.25 11:44 ] 
 ;-- DOCH CA LEFI HAZMANOT
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 D ^%W1ARG
 I '$G(MESUM),'$G(ADSUM) S MESUM=-99999,ADSUM=99999
 S MEHZM="",ADHZM=999999999
 ;
 ;;S DAT1=MEDAT
 ;;S DAT2=ADDAT
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 S SUGM1=""
 D PCPRM^W4DMANY(%SCRN)
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("TMPREPB")
 D KILL^%W1PRM("CURSORT")
 Q
 ;
 ;
GET ;
 N (JB,%ARG,%REM,SCA,SCAH,SCAP,SISR,SISRH,SVIZA,SVIZAH,SDIN,SDINH,SAE,SAEH,SALP,SALPH,SKK,SKKH,SFI,SFIH,SHUM,SHUMH,DAT1,DAT2,MEHZM,ADHZM,MESUM,ADSUM,SUGM,SUGCA,NCA,SUGASR,PRSUMDAT)
 ;
 K @$$^W4MAIN("VRM")
 ;
 D  
 .N I F I=1:1:9 S V(I)=$$^W4VT(I)
 ;
 S V1(0)="il`xyi"
 S V1(1)="xiih"
 S V1(2)="wlc"
 S V1(3)="iciin"
 S V1(4)="orhp"
 ;
 S (SISR,SVIZA,SDIN,SAE,SALP,SKK,SFI)=0
 K SHUM,SHUMH
 ;
 S DT1=$$^%L1DC(DAT1,3),DT2=$$^%L1DC(DAT2,3)
 ;
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @$$^W4MAIN("TMPREPB")
 D KILL^%W1PRM("CURSORT")
 K @TMPREP
 ;
 I '$G(SUGM)!($G(SUGM)=1) D FRMHZ(DT1,DT2),FRMHMK(DT1,DT2)
 I '$G(SUGM)!($G(SUGM)=2) D FRMCB(DT1,DT2)
 ;
 ;
 S I=0
 F DT=DT1:1:DT2 D
 .S SUMD=0,PR=0
 .N VD F VD="HZ","CB","HMK" D
 ..S N="" F  S N=$O(@$$^W4MAIN("VRM")@(DT,VD,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S I=I+1,PR=1
 ...S @$$^W4MAIN("TMPREP")@("G",I)=A
 ...S SUMD=SUMD+$P(A,"\",8)
 .Q:'PR  Q:'$G(PRSUMDAT)
 .N J S A="" F J=1:1:7 S A=A_$TR($J("",10)," ","-")_"\"
 .S A=A_"<B>"_$J(SUMD,2)
 .S I=I+1,@$$^W4MAIN("TMPREP")@("G",I)=A
 .S I=I+1,@$$^W4MAIN("TMPREP")@("G",I)=""
 ;
 S J=0,SCA=0
 F I="SISR","SVIZA","SDIN","SAE","SALP","SKK","SFI" D
 .S J=$$IND(I)
 .S @I=$J($G(SHUM(J)),2,2),SCA=SCA+$G(SHUM(J))
 ;
 S J=0,SCAH=0,SCAP=0
 F I="SISRH","SVIZAH","SDINH","SAEH","SALPH","SKKH","SFIH" D
 .S J=$$INDH(I)
 .S @I=$J($G(SHUMH(J)),2,2),SCAH=SCAH+$G(SHUMH(J))
 ;
 S SCAP=$J(SCA-SCAH,2,2)
 ;;K @$$^W4MAIN("VRM")
 Q
 ;
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4HZCA1-CHKPRM","ADHZM=ADHZM & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 ;;I MESUM>ADSUM Q "0;RANGENOTVALID;;MESUM"
 I $G(MEHZM),MEHZM>ADHZM Q "0;RANGENOTVALID;;MEHZM"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) ;
 Q "W4HZCA1"
 ;
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HZ S HZ=$P(A,"\",3) Q:'HZ
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 N SUGM S SUGM=$P(A,"\",2)
 I SUGM="dpnfd" W " onClick=""ShowOrder('"_HZ_"','ifr')"""
 I SUGM="dlaw" W " onClick=""ShowReceipt('"_HZ_"','','ifr')"""
 I SUGM="dlaw/qn zipeayg" W " onClick=""ShowArmInvoice('"_HZ_"HMK','','ifr')"""
 Q
 ;
 ;
GTRGTD(DOCH) ;
 I $D(@$$^W4MAIN("TMPREP")@("GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=$G(@$$^W4REPSCR@("W4HZCA1","GTR"))
 M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@("W4HZCA1","GTD")
 Q
 ;
FRMHZ(DT1,DT2) ;
 N HZ,DAT,N1,TRH,SHAA,ISKA,CA,SUM,SUG,I
 S I=0
 S HZ="" F DT=DT1:1:DT2 I $D(@$$^W4GL("P1H")@(DT)) D
 .S HZ=MEHZM-1 F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  Q:ADHZM&(HZ>ADHZM)  D
 ..I $D(@$$^W4ORD@(HZ,"CB","V")) D
 ...S DAT=$P($G(@$$^W4ORD@(HZ,"CB")),"\",7)
 ...I DAT'?5N1"."1N.N D
 ....N DATCB S DATCB=$$DATCB^W4HZMST(HZ)
 ....S DAT=$$^%L1DC($P(DATCB,"  "),3)_","_($P(DATCB,"  ",2)*3600+($P($P(DATCB,"  ",2),":",2)*60))
 ...
 ...S N1="" F  S N1=$O(@$$^W4ORD@(HZ,"CB","V",N1)) Q:N1=""  D
 ....S A=$G(^(N1))
 ....S TRH=$$^%L1DC(DAT,1),SHAA=$$T^%L1TIME($P(DAT,",",2))
 ....S ISKA=$P(A,"*",3)
 ....S CA=$$SPA^%L1FRM($P(A,"*",2)),SUM=$P(A,"*",7)
 ....I $G(SUGASR)=1,CA'?1N.N!($L(CA)<5) Q 
 ....I $G(SUGASR)=2,CA?1N.N,$L(CA)>5 Q 
 ....I '$$SUGCA($G(SUGCA),A) Q
 ....I $G(NCA),'$$^W4SRCCA(HZ,NCA) Q 
 ....Q:'SUM  Q:SUM<MESUM  Q:ADSUM&(SUM>ADSUM)
 ....S SUG=$$SUGC(A)
 ....I $G(%ARG("SOLEK")),SUG'=%ARG("SOLEK") Q
 ....I $L(SUG) D
 .....S SHUM(SUG)=$G(SHUM(SUG))+SUM
 .....I 'CA S SHUMH(SUG)=$G(SHUMH(SUG))+SUM
 ....S SUG1=$$SUG1(A)
 ....S ASM=$$ASM(A)
 ....S I=I+1
 ....S @$$^W4MAIN("VRM")@(DT,"HZ",I)=TRH_"\dpnfd\"_HZ_"\"_ISKA_"\"_$$LAST4(CA)_"\"_ASM_"\"_SUG1_"\"_SUM
 Q
 ;
 ;
FRMCB(DT1,DT2)
 N CB,GLCB,CUST,DAT,DT,ISKA,CA,SUM,SUG,SUG1,STRING,I
 S GLCB=$$^W4GL("KLIN")_"(""CB"")"
 N CUST S I=0
 ;
 S CB="" F  S CB=$O(@GLCB@(CB)) Q:CB=""  D
 .S CUST=$G(^(CB)) Q:CUST=""
 .S STRING=CUST
 .N GLCBV S GLCBV=$$GLCBV^W4LCBCR(CB)
 .I '$D(@GLCBV) Q
 .S DAT=$$DAT^W4LCBCR(CB)
 .S DT=$$^%L1DC(DAT,4)
 .I DT<DT1!(DT>DT2) Q
 .
 .I $D(@GLCBV)=1 D 
 ..S ISKA=$$NOMISKA^W4LCBCR(CB)
 ..S CA=$$CANMB^W4LCBCR(CB)
 ..S SUM=$$CA^W4LCBCR(CB)
 ..I SUM<MESUM!(SUM>ADSUM) Q
 ..N A S A=$G(@$$GLCBV^W4LCBCR(CB))
 ..I '$$SUGCA(SUGCA,A) Q
 ..S SUG=$$SUGC(A)
 ..I $G(%ARG("SOLEK")),SUG'=%ARG("SOLEK") Q
 ..S SUG1=$$SUG1(A)
 ..I $L(SUG) S SHUM(SUG)=$G(SHUM(SUG))+SUM
 ..S ASM=$$ASM(A)
 ..S I=I+1
 ..S @$$^W4MAIN("VRM")@(DT,"CB",I)=$$^%L1DC(DAT,1)_"\dlaw\"_CB_"\"_ISKA_"\"_$$LAST4(CA)_"\"_SUG1_"\"_SUM
 .
 .I $D(@GLCBV)>9 D 
 ..N K F K=1:1 Q:'$D(@GLCBV@(K))  D
 ...S ISKA=$$NOMISKA^W4LCBCR(CB,K)
 ...S CA=$$CANMB^W4LCBCR(CB,K)
 ...I $G(NCA),$E(CA,$L(CA)-$L(NCA)+1,$L(CA))'=NCA Q
 ...S SUM=$$CA^W4LCBCR(CB,K)
 ...I SUM<MESUM!(SUM>ADSUM) Q
 ...N A S A=$G(@GLCBV@(K))
 ...I '$$SUGCA(SUGCA,A) Q
 ...S SUG=$$SUGC(A)
 ...I $G(%ARG("SOLEK")),SUG'=%ARG("SOLEK") Q
 ...S SUG1=$$SUG1(A)
 ...I $L(SUG) S SHUM(SUG)=$G(SHUM(SUG))+SUM
 ...S ASM=$$ASM(A)
 ...S I=I+1
 ...S @$$^W4MAIN("VRM")@(DT,"CB",I)=$$^%L1DC(DAT,1)_"\dlaw\"_CB_"\"_ISKA_"\"_$$LAST4(CA)_"\"_ASM_"\"_SUG1_"\"_SUM
 Q
 ;
 ;
FRMHMK(DT1,DT2) ;
 N HMK,GLHMK,CUST,DAT,DT,ISKA,NOMDOC,CA,SUM,SUG,SUG1,STRING,I,%ARG
 S GLHMK=$$^W4GL("KLIN")_"(""HMK"")"
 N CUST S I=0
 ;
 S HMK="" F  S HMK=$O(@GLHMK@(HMK)) Q:HMK=""  D
 .S CUST=$G(^(HMK)) Q:CUST=""
 .I CUST["W" D
 ..S STRING=$P(CUST,"W")
 ..S %ARG("VD")="HMKI"
 ..S NOMDOC=$P(CUST,"W",2)
 ..S DAT=$$DAT^W4DOC(NOMDOC)
 ..S DT=$$^%L1DC(DAT,3)
 .I CUST'["W" D
 ..S STRING=CUST
 ..S %ARG("VD")="HMK"
 ..S DAT=$$DAT^W4LCBCR(HMK)
 ..S DT=$$^%L1DC(DAT,4)
 .I DT<DT1!(DT>DT2) Q
 .N A S A=$G(@$$GLCBV^W4LCBCR(HMK)) Q:A?.P
 .S SUG=$$SUGC(A)
 .S ISKA=$$NOMISKA^W4LCBCR(HMK)
 .;;I $L(ISKA,"-")>2 S ISKA=$P(ISKA,"-",2,3)
 .S CA=$$CANMB^W4LCBCR(HMK)
 .I $G(NCA),$E(CA,$L(CA)-$L(NCA)+1,$L(CA))'=NCA Q
 .I '$$SUGCA(SUGCA,A) Q
 .S SUM=$$CA^W4LCBCR(HMK)
 .I SUM<MESUM!(SUM>ADSUM) Q
 .I $L(SUG) D
 ..S SHUM(SUG)=$G(SHUM(SUG))+SUM
 .S SUG1=$$SUG1(A)
 .S ASM=$$ASM(A)
 .S I=I+1
 .S @$$^W4MAIN("VRM")@(DT,"HMK",I)=$$^%L1DC(DAT,1)_"\dlaw/qn zipeayg\"_HMK_"\"_ISKA_"\"_$$LAST4(CA)_"\"_ASM_"\"_SUG1_"\"_SUM
 Q
 ;
SUGCA(SUGCA,A) ;
 S SUGCA=$G(SUGCA)
 S A=$G(A)
 I SUGCA=""!(A="") Q 1
 I SUGCA=9 Q 1
 I SUGCA=$E(A,119) Q 1
 Q 0
 ;
SUG1(A) 
 N SUG1 S SUG1=""
 I $$SUGC(A),$D(V($$SUGC(A))) S SUG1=V($$SUGC(A))
 N KIND S KIND=$E(A,119)
 I KIND?1N,$D(V1(KIND)) S SUG1=V1(KIND)_" "_SUG1
 Q SUG1
 ;
SUGC(A) ;
 Q $E(A,3)
 ;
ASM(A) ; 
 N ASM S ASM=$P(A,"*",12) 
 I 'ASM S ASM=" "
 Q ASM 
 ;
IND(I) ; 
 I I="SISR" Q 1
 I I="SVIZA" Q 2
 I I="SDIN" Q 3
 I I="SAE" Q 4
 I I="SALP" Q 6
 I I="SKK" Q 7
 I I="SFI" Q 9
 Q 0
 ;
INDH(I) ; 
 I I="SISRH" Q 1
 I I="SVIZAH" Q 2
 I I="SDINH" Q 3
 I I="SAEH" Q 4
 I I="SALPH" Q 6
 I I="SKKH" Q 7
 I I="SFIH" Q 9
 Q 0
 ;
LAST4(CA) ; 
 I CA?1N.N,$L(CA)>3 Q "..."_$E(CA,$L(CA)-3,$L(CA))
 Q CA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZDEL
W4HZDEL(HZM,W4HZDEL) ; [ 02.09.26 17:38 ] [ 29.07.26 13:00 ] [ 03.06.26 07:21 ] 
 ; IN - HZM,MN
 ;------------------------------------------
BG N (JB,%REM,%ARG,HZM,W4HZDEL,MN)
 D KILL^%W1PRM("BITZICRES")
 ;
 D CLRTMPORD
 ;
 D OVRZIC
 ;;I $G(@$$^W4PRM@("NOBITCAJ")),'$$^W4BDCAJ(HZM) D PUT^%W1PRM("ERMSG","ER;NOBITCAJ") Q "ER:"_HZM_":NOBITCAJ"  ; -- 21/04
 ;
 S RS="OK"
 ;
 S MLZ=$$GETP^%W1PRM("MLZR")
 S MN=$$^W4WHODEL
 ;
 S TMPORD=$$^W4TMPORD
 ;
 S @$$^W4ORD@(HZM,"BEFOREDEL")=$$TSHL^W4HZMST(HZM)_"\"_$$HNH^W4HZMST(HZM)_"\"_$$DISCIT^W4HZMST(HZM)_"\"_$$DMSH^W4HZMST(HZM)_"\"_$$SOAD^W4HZMST(HZM)
 ;
 ;;I HZM>0,$D(@TMPORD)<11 D
 ;
 I HZM>0 D
 .S RES=$$^W4GETHZ(HZM)
 ;
 S RS="OK:"_HZM,RES=""
 N I,I1,I2 F I=1:1 Q:'$D(@TMPORD@(I))
 ;
 F I1=1:1:I-1 D
 .I '$$LVST^W3HZMST(JB,I1) D
 ..N W4ITDEL S W4ITDEL=""
 ..S IT0=$$ITRAST^W3HZMST(JB,I1)
 ..I IT0'>0,$$^W4BIT(I1,TMPORD) Q
 ..D DELNOMOD^W4HZORD(I1,IT0,MLZ,MN)
 ;
 I $$HZAFTPAY^W4PRM D P1DEL
 ;
 S RS=$$^W4NEWHZ(JB,HZM)
 ;
 I RS'>0 Q "ER:"_RS
 ;
 I RS>0 D
 .S RS="OK"
 .D CLRDLYPRN^W4PUTHZ(HZM)
 ;
HR I $$^%W1LNG="H" D
 .S HRA2="dpnfd lehia"
 .I $G(SIBA1)["fkxnl dxard" S HRA2=SIBA1
 .D PUT^W4HZMST(HZM,"HRA2",HRA2)
 ;
 I $G(NMB) K @$$^W4GL("P1EZB")@(NMB) D  ;--- BITUL IHUD SHULHANOT BAR
 .N N S N="" F  S N=$O(@$$^W4IORD("P1EZBI")@(N)) Q:N=""  I $G(^(N))=NMB K ^(N)
 ;
 I $D(@$$^W4ORD@(HZM,"CB")) S RS=$$DELCB(HZM)
 ;
 K @$$^W4ORD@(HZM,"GCOUP")
 ;
 K @$$^W4ORD@(HZM,"PART")
 K @$$^W4ORD@(HZM,"TS")
 ;
 I $$^W4ISPART(HZM) D CLRTS^W4HZBIT(HZM)
 ;
 D PUT^W4HZMST(HZM,"HNH,DMSH,MAM,SHUL,SHULA,HNHAH,DMSAH,HNH2,SOAD",0)
 ;
 D ^W4CALC(HZM)
 ;
 N TSHL,HNH
 S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 D P1DEL
 ;
 I $D(@$$^W4ORD@(HZM,"BSL")) D
 .I $D(@$$^W4TMPORD)>9 D ^WBCLRINV(HZM,$$^W4TMPORD)
 .D ^WBCLRINV(HZM,$$^W4ORD_"("_HZM_")")
 .I $D(@$$^W4ORD@(HZM,"INVPC")) D CANINV^WBFUNC(HZM)
 .S @$$^W4ORD@(HZM,"BSL","DEL")=$H
 .;;N A S A=$$^WBSNDORD(HZM)
 .;
 .D BITBSL^W4HZBIT(HZM)
 ;
 I $D(@$$^W4ORD@(HZM,"MP")) D BITMP(HZM)
 ;
 I $$PWRLNK^W4PRM,$$^W4HZMH(HZM) J DELBID^W4PWRLNK(JB,HZM)
 I $$PWRLNK^W4PRM,'$$^W4HZMH(HZM),$$HZM^W4MSL(HZM) J DELORD^W4PWRLNK(JB,HZM)
 I $$TRICKER^W4PRM,'$$^W4HZMH(HZM),$$HZM^W4MSL(HZM) J ^W4TRICKR(JB,HZM,"DEL")
 I $$TEAV^W4PRM,'$$^W4HZMH(HZM),$$HZM^W4MSL(HZM) J ^W4TVSND(JB,HZM,"DEL")
 I $$DA^W4PRM,'$$^W4HZMH(HZM),$$HZM^W4MSL(HZM) J ^W4DASND(JB,HZM,"DEL")
 ;
 I $D(@$$^W4GL("W4POSMSK")) D
 .N DZ S DZ=$$^W4DZ
 .N A,N,GLREF S GLREF=$$^W4GL("W4TMPREF")
 .S N="" F  S N=$O(@GLREF@(DZ,N)) Q:N=""  D
 ..S A=$G(^(N)) Q:$P(A,"\",5)'=HZM
 ..S $P(@GLREF@(DZ,N),"\",5)=""
 ;
 N ITRA S ITRA=$$ITRARL^W4HZMST(HZM)
 I $$US^W4SNDCLS(HZM) S ITRA=$$ITRA^W4HZMST(HZM)
 ;
 I ITRA'>0 D
 .I $G(@$$^W4PRM@("KILLDEL")),$D(@$$^W4ORD@(HZM,"CB"))<10 D  Q
 ..N UCI S UCI=$$^%W1UCI(JB)
 ..N DTOLD S DTOLD=$P($G(^[UCI]W4LINK(HZM)),"~",4)
 ..N DTROLD S DTROLD=+$P($G(^[UCI]W4LINK(HZM)),"~",3)
 ..I DTOLD K ^[UCI]W4LINKD(DTOLD,HZMM)
 ..I DTROLD K ^[UCI]W4LINKDR(DTROLD,HZM)
 ..N DT S DT=$$^W4DZ
 ..K @$$^W4REF@(DT,HZM)
 ..K @$$^W4GL("P1HI")@(HZM,DT)
 ..K @$$^W4ORD@(HZM)
 .
 .D SETCLOSE^W4HZMST(HZM)
 .S @$$^W4ORD@(HZM,"CB")=""
 .I $$HZM^W4MSL(HZM) D LIMHR^W4PUTHZ(HZM,-1)
 ;
 D SIBA^W4HZBIT
 ;
 D ^W4GIBHZ(HZM)
 ;
 I $D(@$$^W4ORD@(HZM,"SENT2MAIL")) D
 .J SNDISHUR^W4HMH2HZ(JB,HZM,0)
 ;
 I '$$ITRA^W4HZMST(HZM),$D(@$$^W4ORD@(HZM,"ZIC"))>9 D BITZIC^W4HZBIT(HZM)
 ;
 Q RS
 ;
 ;
DELCB(HZM) ;
 N (JB,%ARG,%REM,HZM,%BS)
 N N,N1,DAT,KUP D ^W4IN
 D OVRZIC S RS="OK",RES=0
 S ERR=0
 ;
 S SHULO=$$SHUL^W4HZMST(HZM)
 S MZMOO=$$MZM^W4HZMST(HZM)
 S CHKOO=$$CHK^W4HZMST(HZM)
 S SHULAO=$$SHULA^W4HZMST(HZM)
 ;
 K @$$^W4ORD@(HZM,"CBOLD")
 ;
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D
 .S %BS=""
 .I N="MZ"!(N="HNH1") D
 ..I N="MZ",$$TRIDMZ^W4HZMST(HZM)'="" D ^W4MZZIC(HZM,1)
 ..
 ..I N="MZ",$$MZSM^W4PRM,$$HZM^W4MSD(HZM)!$$TAKEAWAY^W4HZMST(HZM) D  Q  ; -- 12/11/24 --> COMMENT
 ...D KILL^%W1PRM("MZSM")
 ...N RES S RES=0
 ...D ^W4MZSMBK(HZM) Q:$G(RES)>300
 ...N I F I=1:1:30 Q:$$GETP^%W1PRM("MZSM")  H 1
 ..
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  D
 ...N A S A=$G(^(N1))
 ...N NEWIND S NEWIND=$$NEW(HZM,N)
 ...I N="HNH1",$P(A,"*",5)="VALUECARD BONUS" Q
 ...D BITMZHN^W4HZBIT(HZM,N,NEWIND,N1)
 .
 .I N="CH" D
 ..S DAT=$ZD(P1DZ,"YYMMDD")
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  D
 ...N A,ERKC S A=$G(^(N1)),ERKC=0 
 ...
 ...I $$KC^W4KC(A) Q:$$DELKC(HZM,N1)
 ...
 ...I '$$KC^W4KC(A) D
 ....N NEWIND S NEWIND=$$NEW(HZM,N)
 ....S ^(NEWIND)=$G(@$$^W4ORD@(HZM,"CB",N,N1))
 ....S $P(^(NEWIND),"*")=-$P(^(N1),"*")
 ....S $P(^(NEWIND),"*",12)=-$P(^(N1),"*",12) ;-- TIPCH
 ...
 ...D ^W4GTVCH(A,"CH")
 ...S KUP=901 D ^W4CH
 .;
 .I N="M" D  ; -- MATBEA
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  D
 ...N NEWIND S NEWIND=$$NEW(HZM,N)
 ...S ^(NEWIND)=$G(@$$^W4ORD@(HZM,"CB",N,N1))
 ...S $P(^($$NEW(HZM,N)),"!")=-$P(^(N1),"!")
 .;
 .
 .I N="V" D  I %BS S ERR=1 Q
 ..N GWUL,GWMIN,CA
 ..S N1="",%BS=0
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  I N1 D  I %BS D BACK(CA) S %BS=0
 ...  S GWUL=$G(@$$^W4PL@("GWULZ"),1000),GWMIN=100
 ...  S:GWUL<GWMIN GWUL=GWMIN
 ...  N A S A=$G(^(N1))
 ...  S CA=$P(A,"*",7)
 ...  I '$$GET^W4GTVCH(HZM,N1,"V","NCA") S GWUL=100000
V1 ...I CA'>GWUL D V(HZM,N1,CA) Q:%BS'=OVRZIC  S GWUL=GWUL\2 Q:GWUL<GWMIN  S %BS=0 G V1
 ...
 ...I CA>GWUL D
 ....N SVZ,IVZ S SVZ=0
 ....F IVZ=1:1 Q:SVZ+GWUL>CA  D V(HZM,N1,GWUL) D:'%BS!(%BS=OVRZIC)  Q:%BS
 .....S:'%BS SVZ=SVZ+GWUL
 .....I %BS=OVRZIC&(GWUL>GWMIN) S GWUL=GWUL\2,%BS=0
 ....I '%BS,CA-SVZ>0 D V(HZM,N1,CA-SVZ)
 ;
 I $D(@$$^W4ORD@(HZM,"CB","ASR")) D DELASR(HZM)
 ;
 I $$ISDISC^WV(HZM) D
 .S RES=$$^WVCBONUS(HZM)
 .I RES="OK" D DELVCBON^W4HZBIT(HZM,HZM) ; *** LEV 26/02/15
 ;
 N MZM,CH,CA,ASR,TL
 S MZM=$$SMZ^W4HZMST(HZM)-$$ODEF^W4HZMST(HZM)
 S CH=$$SCH^W4HZMST(HZM)
 S CA=$$SCA^W4HZMST(HZM)
 S ASR=$$SAS^W4HZMST(HZM)
 S TL=$$TL^W4HZMST(HZM) ; --------- STL - ??????????
 ;
 D PUT^W4HZMST(HZM,"MZM",MZM)
 D PUT^W4HZMST(HZM,"CH",CH)
 D PUT^W4HZMST(HZM,"CA",CA)
 D PUT^W4HZMST(HZM,"ASR,SHULA",ASR)
 D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
 D PUT^W4HZMST(HZM,"ODEF",$$SODEF^W4HZMST(HZM))
 ;
 N SUM S SUM=MZM+CH+CA+ASR+TL
 D PUT^W4HZMST(HZM,"SHUL",SUM)
 ;
 D PUT^W4HZMST(HZM,"TSHL,HNH,HNHAH,DMSH,DMSAH,SOAD",0)
 ;
 S MZM=$$MZM^W4HZMST(HZM)
 S CHK=$$CHK^W4HZMST(HZM)
 S SHUL=$$SHUL^W4HZMST(HZM)
 S SHULA=$$SHULA^W4HZMST(HZM)
 ;
 D PETEK^W4T1
 ;
 I RES,RS["OK" S $P(RS,":",3)=RES
 
 Q RS
 ;
 ;
V(HZM,N1,CA) ;
 K @$$^W4TMPPAY(3)
 D PUT^W4TMPPAY(3,"SUM",-CA)
 N A S A=$G(@$$^W4ORD@(HZM,"CB","V",N1)) Q:A=""
 N TOPAY S TOPAY=CA+$P(A,"*",27)
 D PUT^W4TMPPAY(3,"TOPAY",-TOPAY)
 ; N RS
 S RS=$$BITV^W4PAYCA(HZM,HZM,N1,CA)
 I $P(RS,";",1,2)'="OK;000" D
 .I RS["NOBITCAJ" S %BS=$P(RS,";",2,3) D PUT^%W1PRM("NOBITCAJ",1) D PUT^%W1PRM("ERMSG","ER;NOBITCAJ") S RS=$TR(RS,";",":") Q
 .S %BS=+$P(RS,";",2)
 .D PUT^%W1PRM("ERMSG","ER;PAYMENTDELETINGERROR")
 ;
 Q
 ;
NEW(HZM,IND) ;
 Q $$LAST(HZM,IND)+1
 ;
LAST(HZM,IND) ;
 Q $O(@$$^W4ORD@(HZM,"CB",IND,9999),-1)
 ;
BACK(CA) ;
 S $P(@$$^W4ORD@(HZM,"CB"),"\",4)=$P($G(@$$^W4ORD@(HZM,"CB")),"\",4)+CA
 S $P(@$$^W4ORD@(HZM),"\",12)=$P($G(@$$^W4ORD@(HZM)),"\",12)+CA
 Q
 ;
ITRAT(HZM,NOMCD,QN,IT0,QN0) ;
 I $D(@$$^W4ORD@(HZM,"MRG",NOMCD)) Q $$ITRAST^W4HZMST(HZM,NOMCD)
 I '$G(QN0) Q QN
 I $G(QN)'["*" Q QN
 Q IT0*$P(QN,"*",2)
 ;
TV(STAM) ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 G BG
 ;
OVRZIC ;
 S OVRZIC=$G(@$$^W4PL@("OVRZIC"),129)
 Q
 ;
BITMP(HZM) ;
 N LAST S LAST=$$NEWNP^W4HZMP(HZM)-1
 N N S N="" F  S N=$O(@$$^W4HZMP(HZM)@(N)) Q:N=""  Q:N>LAST  D BITMPN(HZM,N)
 K @$$^W4ORD@(HZM,"MP","ITM")
 Q
 ;
BITMPN(HZM,N) ;
 N NEWIND
 S NEWIND=$$NEWNP^W4HZMP(HZM)
 N ASM,TRI S ASM=$G(@$$^W4HZMP(HZM,N,"ASM"))
 S RES=$$^WMTRANS("DEL",$$DEL^WMPREPSN(ASM)) I $P(RES,"\")'=0 D  Q
 .S @$$^W4HZMP(HZM,NEWIND,"RES")=RES
 D ^WMRCV2V("DEL") I $G(RCD) S RES=RCD_"\"_$$^WMERNM("DEL") D  Q
 .S @$$^W4HZMP(HZM,NEWIND,"RES")=RES
 S @$$^W4HZMP(HZM,NEWIND,"RES")=RES
 S @$$^W4HZMP(HZM,NEWIND,"ASM")=TRI
 S @$$^W4HZMP(HZM,NEWIND,"COP")=COP
 S @$$^W4HZMP(HZM,NEWIND,"LKH")=$G(@$$^W4HZMP(HZM,N,"LKH"))
 I $L($$^WMANS("DEL","MES0")) D  ;-- MAKOR
 .N TRS,COP,TRI,CRED,HNHMP,KOT
 .S TRS=-$G(@$$^W4HZMP(HZM,N,"SHUL"))
 .S COP=$G(@$$^W4HZMP(HZM,N,"COP"))
 .S TRI=$G(@$$^W4HZMP(HZM,NEWIND,"ASM"))
 .S CRED=$G(@$$^W4HZMP(HZM,N,"CRED"))
 .S HNHMP=-$G(@$$^W4HZMP(HZM,N,"HNH"))-$G(@$$^W4HZMP(HZM,N,"HNHMPP"))
 .N IND S IND=N
 .
 .S KOT=HZM_"-"_NEWIND_";xewn;"_$S(CRED:" i`xy` oeayg",1:" qn zipeayg")
 .S KOT=KOT_";"_$G(COP)_";"_TRI_";"_$G(EMP)
 .
 .S MSG="{BIG}{RIGHT}"_$J(TRS+HNHMP,2,2)_" : dgpd iptl{NL}"
 .S MSG=MSG_"{BIG}{RIGHT}"_$J(HNHMP,2,2)_" : dgpd{NL}"
 .S MSG=MSG_"{BIG}{RIGHT}"_$J(TRS,2,2)_" : mley{SMALL}"
 .
 .D ^WMPCMSG($$^WMANS("DEL","MES0"),MSG,KOT,$$^W4HZMP(HZM,NEWIND,"PC"))
 N I F I="SHUL","HNH","HNHMP" D
 .I $D(@$$^W4HZMP(HZM,N,I)) S @$$^W4HZMP(HZM,NEWIND,I)=-@$$^W4HZMP(HZM,N,I)
 ;
 Q
 ;
DELASR(HZM) ;
 N SHULA S RES=0
 S N="",SHULA=0,$P(@$$^W4ORD@(HZM),"\",17)=0
 I $G(@$$^W4ORD@(HZM,"S"))>3 D
 .S @$$^W4ORD@(HZM,"S")=2
 D
 .N MAXN1 S MAXN1=$$LAST(HZM,"ASR")
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB","ASR",N1)) Q:N1=""  Q:N1>MAXN1  D  Q:RES
 ..D ^W4GTVCH(^(N1),"ASR")
 ..N SUM S SUM=ASR
 ..S ASR=-ASR,LKHNH=-LKHNH,KMTL=-KMTL,TIPAS=-TIPAS
 ..
 ..I LKHN=$$^W4CIBLKH,'$D(@$$^W4ORD@(HZM,"CIB")),$G(CIBCARD) D  Q:RES
 ...N %S,%TO
 ...D  Q:RES
 ....I '$$NEWCIB^W4PRM S RES=$$^WCCANC(HZMLK,CIBUID) Q
 ....D CNC^WCNPAY(HZM,N1,HZM)
 ...H:$O(@$$^W4ORD@(HZM,"CB","ASR",N1))'="" 2
 ..
 ..I $$IFVC^WV(HZM,N1) D  Q:RES'="OK"
 ...N %S,%TO
 ...S RES=$$^WVCANC(HZM,"",N1,HZMLK)
 ...H:$O(@$$^W4ORD@(HZM,"CB","ASR",N1))'="" 2
 ..
 ..I LKHN=$$^W4TBLKH D  Q:RES
 ...S RES=0
 ...D:TBCARD&ASR
 ....S RES=$$^WTBCANC(HZM,TBCARD,-ASR-LKHNH) Q:RES
 ....S LKHNH=$G(TBVL("DISCORD"))
 ....S HZMLK=$G(TBVL("TRID"))
 ....S TBCARD=$G(TBVL("CARD"))
 ....S TBRECID=$G(TBVL("RECID"))
 ..
 ..I LKHN=$$LKH^W4COUPPH D  Q:RES
 ...D DELCPASR^W4HZBIT(HZM,HZM,N1)
 ..
 ..S KUP=901,CUSN=LKHN,HRA="",FLP=""
 ..N N,N1,PRBIT S PRBIT="" D ^W4ASR
 Q
 ;
P1DEL ; 
 I '$D(@$$^W4GL("P1DEL")@(HZM)) D
 .S @$$^W4GL("P1DEL")@(HZM)=HZM
 .D ^%S2GLSV($$^W4GL("P1DEL")_"("_HZM_")",$$^W4FGIB)
 .S @$$^W4GL("P1DELI")@(HZM)=HZM
 .D ^%S2GLSV($$^W4GL("P1DELI")_"("_HZM_")",$$^W4FGIB)
 .I $D(@$$^W4GL("W4LINK")@(HZM)) D ^W4LNKBIT(HZM)
 Q
 ;
CLRTMPORD ; 
 N K,L,A,EK S L=$O(@$$^W4TMPORD@(99999),-1),EK=0
 F K=L:-1:1 D  Q:EK
 .S A=$G(@$$^W4TMPORD@(K))
 .I A["~@@" S EK=1 Q
 .K @$$^W4TMPORD@(K)
 .K ^|$$^W3MAIN|TMPORDB(JB,K)
 Q
 ;
DELKC(HZMBIT,IND,HZM) ;
 I $G(HZM)="" S HZM=HZMBIT
 N DELKC S DELKC=""
 N ERKC S ERKC=0
 I '$D(@$$^W4ORD@(HZMBIT,"KC",IND)) G EDELKC
 I $D(@$$^W4ORD@(HZMBIT,"CH",IND,"DEL")) G EDELKC
 N TRID,SUM
 S TRID=$G(@$$^W4ORD@(HZMBIT,"KC",IND,"TRID")) I $L(TRID)<10 G EDELKC
 S SUM=$G(@$$^W4ORD@(HZMBIT,"KC",IND,"SUM")) I SUM'>0 G EDELKC
 N %ARG S %ARG("HZM")=HZM,%ARG("TRID")=TRID,%ARG("SUM")=SUM,%ARG("DEL")=1
 ;
 D ^W4CSHEMV S ERKC=$$GETP^%W1PRM("KCER")
 ;
EDELKC Q ERKC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZDEL0
W4HZDEL(HZM,W4HZDEL) ; [ 04.07.12 06:16 ] [ 02.07.12 12:44 ] [ 14.11.11 15:11 ]
 ; IN - HZM,MN
 ;------------------------------------------
BG N (JB,%REM,%ARG,HZM,W4HZDEL,MN)
 ;
 D OVRZIC
 ;
 S RS="OK"
 ;
 S MLZ=$$MKBL^W4HZMST(HZM)
 I 'MLZ S MLZ=$G(@$$^W4GL("P1MLZ")@(HZM))
 ;
 N TMPHZ S TMPHZ=$$^W4MAIN("TMPHZ")
 K @TMPHZ
 M @TMPHZ=@$$^W4ORD@(HZM)
 I '$$TSTMRG^W4HZMST(HZM) K @TMPHZ@("BIT")
 K @TMPHZ@("CBOLD")
 ;
 N SIBA,SIBA1,SUG
 S SIBA=$$GET^W4TMPANS("DEL","CAUSEDEL")
 S SIBA1=""
 S:SIBA["::" SIBA1=$P(SIBA,"::",2),SIBA=$P(SIBA,"::")
 S SUG=$$GET^W4TMPANS("DEL","EXIT2KITCHEN?")
 S SUG=$P(SUG,"::")
 ;
 S RS="OK:"_HZM,RES=""
 N I,I1,I2 F I=1:1 Q:'$D(@TMPHZ@(I))
 ;
 I $$TSTMRG^W4HZMST(HZM) D  G HR
 .N ITRAST,I2,KF,QN,MH S KF=1
 .F I1=1:1:I-1 D
 ..S ITRAST=$$ITRAST^W4HZMST(HZM,I1)
 ..Q:ITRAST'>0
 ..S PRT=$P($G(@TMPHZ@(I1)),"\",1)
 ..S QN=$P($G(@TMPHZ@(I1)),"\",5) Q:'QN
 ..S MH=$P($G(@TMPHZ@(I1)),"\",4)
 ..S I2=$O(@TMPHZ@(99999),-1)+1
 ..M @TMPHZ@(I2)=@TMPHZ@(I1)
 ..S @TMPHZ@("MRG",I1)=ITRAST+$G(@TMPHZ@("MRG",I1))
 ..S @TMPHZ@(I2)=$P($G(@TMPHZ@(I2)),"\@@")
 ..S @TMPHZ@("BIT",I2)=$S($G(MN):MN_"*"_MLZ,1:MLZ_"*"_MLZ)_"*"_SIBA_"*"_SIBA1_"*"_$H_"*"_SUG_"*"_$$^W4MYDVN
 ..I 'SUG D SET^W4ITEND(PRT,-ITRAST)
 ..S $P(@TMPHZ@(I2),"\",5)=-ITRAST
 ..S $P(@TMPHZ@(I2),"\",8)=SIBA1
 ..N SUMT S SUMT=0
 ..I $D(@TMPHZ@(I2))>9 D
 ...N N S N="" F  S N=$O(@TMPHZ@(I2,N)) Q:N=""  D
 ....N QNTO S QNTO=$P($G(^(N)),"\",3)
 ....N ITRAT
 ....S ITRAT=$$ITRAT(HZM,I1_"-"_N,QNTO,ITRAST,QN)
 ....S $P(@TMPHZ@(I2,N),"\",3)=-ITRAT
 ....S @TMPHZ@("MRG",I1_"-"_N)=$G(@TMPHZ@("MRG",I1_"-"_N))+ITRAT
 ....N A1 S A1=$G(^(N))
 ....N MHT S MHT=$P(A1,"\",2)
 ....I $D(@TMPHZ@(I2,N))<10 D
 .....S SUMT=SUMT-(MHT*ITRAT)
 .....I 'SUG D SET^W4ITEND(N,-ITRAT)
 ....I $D(@TMPHZ@(I2,N))>9 D
 .....N NN S NN="" F  S NN=$O(@TMPHZ@(I2,N,NN)) Q:NN=""  D
 ......N A2,PRTT,TSFT,MH3 S A2=$G(^(NN))
 ......S PRTT=$P(A2,"\"),TSFT=$P(A2,"\",4),MH3=$P(A2,"\",7)
 ......I PRTT S QNO3=$P(A2,"\",3)
 ......E  S QNO3=$P(A2,"\",5)
 ......N QN3 S QN3=$$ITRAT(HZM,I1_"-"_N_"-"_NN,QNO3,ITRAST,QN)
 ......I PRTT S $P(^(NN),"\",3)=-QN3 I 'SUG D SET^W4ITEND(PRTT,-QN3)
 ......I TSFT S $P(^(NN),"\",5)=-QN3 ;I 'SUG D SET^W4ITEND(TSFT,-QN3)
 ......S SUMT=SUMT-(QN3*MH3)
 ......S @TMPHZ@("MRG",I1_"-"_N_"-"_NN)=$G(@TMPHZ@("MRG",I1_"-"_N_"-"_NN))+QN3
 ..
 ..S $P(@TMPHZ@(I2),"\",6)=SUMT
 ..S $P(@TMPHZ@(I2),"\",7)=-ITRAST*MH+SUMT
 ;
 N I2
 F I1=1:1:I-1 D
 .S I2=I1+I-1
 .M @TMPHZ@(I2)=@TMPHZ@(I1)
 .S @TMPHZ@(I2)=$P($G(@TMPHZ@(I2)),"\@@")
 ;
 N OLDI ;
 F I2=I:1 Q:'$D(@TMPHZ@(I2))  D  I $P(@TMPHZ@(I2),"\",5)<0 S @TMPHZ@("BIT",I2)=$S($G(MN):MN_"*"_MLZ,1:MLZ_"*"_MLZ)_"*"_SIBA_"*"_SIBA1_"*"_$H_"*"_SUG_"*"_$$^W4MYDVN
 .S OLDI=I2-I+1
 .S ST=$G(^(I2))
 .S $P(ST,"\",2)=SUG ; - YAZA OR LO
 .S $P(ST,"\",9)=""
 .I 'SUG D SET^W4ITEND($P(ST,"\"),-$P(ST,"\",5))
 .S @TMPHZ@("MRG",OLDI)=$G(@TMPHZ@("MRG",OLDI))+$P(ST,"\",5)
 .S $P(ST,"\",5)=-$P(ST,"\",5)
 .S $P(ST,"\",7)=-$P(ST,"\",7)
 .S $P(ST,"\",6)=-$P(ST,"\",6)
 .S $P(ST,"\",8)=SIBA1
 .S @TMPHZ@(I2)=ST
 .I $P(ST,"\")>0,$D(@TMPHZ@(I2))>9 D
 ..N N S N="" F  S N=$O(@TMPHZ@(I2,N)) Q:N=""  D
 ...S ^(N)=$P(^(N),"\@@")
 ...N QNT S QNT=-$P(^(N),"\",3)
 ...S $P(^(N),"\",3)=QNT
 ...S @TMPHZ@("MRG",OLDI_"-"_N)=$G(@TMPHZ@("MRG",OLDI_"-"_N))-QNT
 ...I $D(@TMPHZ@(I2,N))<10,'$G(SUG) D
 ....D SET^W4ITEND(N,QNT)
 ...I $D(@TMPHZ@(I2,N))>9 D
 ....N NN S NN="" F  S NN=$O(@TMPHZ@(I2,N,NN)) Q:NN=""  D
 .....S ^(NN)=$P($G(^(NN)),"\@@")
 .....N A2 S A2=^(NN)
 .....N PRTT,TSFT S PRTT=$P(A2,"\"),TSFT=$P(A2,"\",4)
 .....I PRTT D
 ......N QN3 S QN3=$P(A2,"\",3)
 ......S $P(^(NN),"\",3)=-QN3
 ......I '$G(SUG) D SET^W4ITEND(PRTT,-QN3)
 ......S @TMPHZ@("MRG",OLDI_"-"_N_"-"_NN)=$G(@TMPHZ@("MRG",OLDI_"-"_N_"-"_NN))+QN3
 .....I TSFT D
 ......N QN3 S QN3=$P(A2,"\",5)
 ......S $P(^(NN),"\",5)=-QN3
 ......I '$G(SUG) D SET^W4ITEND(TSFT,-QN3)
 ......S @TMPHZ@("MRG",OLDI_"-"_N_"-"_NN)=$G(@TMPHZ@("MRG",OLDI_"-"_N_"-"_NN))+QN3
 ;
HR I $$^%W1LNG="H" D
 .S HRA2="dpnfd lehia"
 .I $G(SIBA1)["fkxnl dxard" S HRA2=SIBA1
 .S $P(@TMPHZ@("HR2"),"\\")=HRA2
 ;
 K @$$^W4ORD@(HZM)
 M @$$^W4ORD@(HZM)=@TMPHZ K @TMPHZ
 ;
 I $G(NMB) K @$$^W4GL("P1EZB")@(NMB) D  ;--- BITUL IHUD SHULHANOT BAR
 .N N S N="" F  S N=$O(@$$^W4IORD("P1EZBI")@(N)) Q:N=""  I $G(^(N))=NMB K ^(N)
 ;
 I $D(@$$^W4ORD@(HZM,"CB")) S RS=$$DELCB(HZM)
 ;
 D PUT^W4HZMST(HZM,"HNH,DMSH,MAM,SHUL,SHULA,HNHAH,DMSAH,HNH2,SOAD",0)
 D ^W4CALC(HZM)
 N TSHL,HNH
 S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 I TSHL D
 .S HNH=TSHL,TSHL=0
 .D PUT^W4HZMST(HZM,"HNH",HNH)
 .D PUT^W4HZMST(HZM,"TSHL",TSHL)
 ;
 S @$$^W4GL("P1DEL")@(HZM)=HZM
 D ^%S2GLSV($$^W4GL("P1DEL")_"("_HZM_")",$$^W4FGIB)
 S @$$^W4GL("P1DELI")@(HZM)=HZM
 D ^%S2GLSV($$^W4GL("P1DELI")_"("_HZM_")",$$^W4FGIB)
 ;
 I '$$ITRA^W4HZMST(HZM) D
 .D SETCLOSE^W4HZMST(HZM)
 .S @$$^W4ORD@(HZM,"CB")=""
 ;
 D ^W4GIBHZ(HZM)
 Q RS
 ;
 ;
DELCB(HZM) ;
 N (JB,%ARG,%REM,HZM,%BS)
 N N,N1,DAT,KUP D ^W4IN
 D OVRZIC S RS="OK",RES=0
 ;
 S SHULO=$$SHUL^W4HZMST(HZM)
 S MZMOO=$$MZM^W4HZMST(HZM)
 S CHKOO=$$CHK^W4HZMST(HZM)
 S SHULAO=$$SHULA^W4HZMST(HZM)
 ;
 K @$$^W4ORD@(HZM,"CBOLD")
 ;
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D
 .I N="MZ"!(N="HNH1") D
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  D
 ...N A S A=$G(^(N1))
 ...N NEWIND S NEWIND=$$NEW(HZM,N)
 ...I N="HNH1",$P(A,"*",5)="VALUECARD BONUS" Q
 ...D BITTS^W4HZBIT(HZM,N,NEWIND,N1)
 .
 .I N="CH" D
 ..S DAT=$ZD(P1DZ,"YYMMDD")
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  D
 ...N NEWIND S NEWIND=$$NEW(HZM,N)
 ...S ^(NEWIND)=$G(@$$^W4ORD@(HZM,"CB",N,N1))
 ...S $P(^(NEWIND),"*")=-$P(^(N1),"*")
 ...D ^W4GTVCH(^(N1),"CH")
 ...S KUP=901 D ^W4CH
 .;
 .I N="M" D  ; -- MATBEA
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  D
 ...N NEWIND S NEWIND=$$NEW(HZM,N)
 ...S ^(NEWIND)=$G(@$$^W4ORD@(HZM,"CB",N,N1))
 ...S $P(^($$NEW(HZM,N)),"!")=-$P(^(N1),"!")
 .;
 .
 .I N="V" D  I %BS Q
 ..N GWUL,GWMIN,CA
 ..S GWUL=$G(@$$^W4PL@("GWULZ"),300),GWMIN=100
 ..S:GWUL<GWMIN GWUL=GWMIN
 ..S N1="",%BS=0
 ..N MAXN1 S MAXN1=$$LAST(HZM,N)
 ..F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  Q:N1>MAXN1  D  I %BS D BACK(CA) S %BS=0
 ...  N A S A=$G(^(N1))
 ...  S CA=$P(A,"*",7)
V1 ...I CA'>GWUL D V(HZM,N1,CA) Q:%BS'=OVRZIC  S GWUL=GWUL\2 Q:GWUL<GWMIN  S %BS=0 G V1
 ...
 ...I CA>GWUL D
 ....N SVZ,IVZ S SVZ=0
 ....F IVZ=1:1 Q:SVZ+GWUL>CA  D V(HZM,N1,GWUL) D:'%BS!(%BS=OVRZIC)  Q:%BS
 .....S:'%BS SVZ=SVZ+GWUL
 .....I %BS=OVRZIC&(GWUL>GWMIN) S GWUL=GWUL\2,%BS=0
 ....I CA-SVZ>0 D V(HZM,N1,CA-SVZ)
 ;
 ;;I '$G(%BS) D
 .S GLBV=$$^W4ORD_"("_HZM_")"
 .N P1HZTM,P1HZHB2,P1HZHB,P1HZHB1,IET,ITS,SHM
 .S IET="ETHB",ITS=2,SHM="NCAB",P1HZHB="",SHET=1
 .D ^W4MDPPC
 .D P1^W4HZTM
 ;
 I $D(@$$^W4ORD@(HZM,"CB","ASR")) D
 .N SHULA
 .S N="",SHULA=0,$P(@$$^W4ORD@(HZM),"\",17)=0
 .I $G(@$$^W4ORD@(HZM,"S"))>3 D
 ..S @$$^W4ORD@(HZM,"S")=2
 .D
 ..N MAXN1 S MAXN1=$$LAST(HZM,"ASR")
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB","ASR",N1)) Q:N1=""  Q:N1>MAXN1  D  Q:RES
 ...D ^W4GTVCH(^(N1),"ASR")
 ...S ASR=-ASR,LKHNH=-LKHNH,KMTL=-KMTL
 ...
 ...I LKHN=$$^W4CIBLKH,'$D(@$$^W4ORD@(HZM,"CIB")) D  Q:RES
 ....N %S,%TO
 ....D  Q:RES
 .....S RES=$$^WCCANC(HZMLK,CIBUID)
 .....H:$O(@$$^W4ORD@(HZM,"CB",N,N1))'="" 2
 ...
 ...I $$IFVC^WV(HZM,N1) D  Q:RES'="OK"
 ....N %S,%TO
 ....S RES=$$^WVCANC(HZM,"",N1,HZMLK)
 ....H:$O(@$$^W4ORD@(HZM,"CB","ASR",N1))'="" 2
 ...
 ...I LKHN=$$^W4TBLKH D  Q:RES
 ....N %S,%TO S RES=-1
 ....D:TBCARD&ASR  Q:RES
 .....S RES=$$^WTBCANC(HZM,TBCARD,-ASR-LKHNH) Q:RES
 .....S LKHNH=$G(TBVL("DISCORD"))
 .....S HZMLK=$G(TBVL("TRID"))
 .....S TBCARD=$G(TBVL("CARD"))
 .....S TBRECID=$G(TBVL("RECID"))
 ...
 ...S KUP=901,CUSN=LKHN,HRA="",FLP=""
 ...N N,N1,PRBIT S PRBIT="" D ^W4ASR
 ..
 ;
 ;
 I $$ISDISC^WV(HZM) D
 .S RES=$$^WVCBONUS(HZM)
 ;
 N MZM,CH,CA,ASR,TL
 S MZM=$$SMZ^W4HZMST(HZM)-$$ODEF^W4HZMST(HZM)
 S CH=$$SCH^W4HZMST(HZM)
 S CA=$$SCA^W4HZMST(HZM)
 S ASR=$$SAS^W4HZMST(HZM)
 S TL=$$TL^W4HZMST(HZM) ; --------- STL - ??????????
 ;
 D PUT^W4HZMST(HZM,"MZM",MZM)
 D PUT^W4HZMST(HZM,"CH",CH)
 D PUT^W4HZMST(HZM,"CA",CA)
 D PUT^W4HZMST(HZM,"ASR,SHULA",ASR)
 ;
 N SUM S SUM=MZM+CH+CA+ASR+TL
 D PUT^W4HZMST(HZM,"SHUL",SUM)
 ;
 D PUT^W4HZMST(HZM,"TSHL,HNH,HNHAH,DMSH,DMSAH,SOAD",0)
 ;
 S MZM=$$MZM^W4HZMST(HZM)
 S CHK=$$CHK^W4HZMST(HZM)
 S SHUL=$$SHUL^W4HZMST(HZM)
 S SHULA=$$SHULA^W4HZMST(HZM)
 ;
 D PETEK^W4T1
 ;
 I RES,RS["OK" S $P(RS,":",3)=RES
 Q RS
 ;
 ;
V(HZM,N1,CA) ;
 N RS S RS=$$BITV^W4PAYCA(HZM,HZM,N1,CA)
 I RS'="OK;000" S %BS=+$P(RS,";",2)
 Q
 ;
NEW(HZM,IND) ;
 Q $$LAST(HZM,IND)+1
 ;
LAST(HZM,IND) ;
 Q $O(@$$^W4ORD@(HZM,"CB",IND,9999),-1)
 ;
BACK(CA) ;
 S $P(@$$^W4ORD@(HZM,"CB"),"\",4)=$P($G(@$$^W4ORD@(HZM,"CB")),"\",4)+CA
 S $P(@$$^W4ORD@(HZM),"\",12)=$P($G(@$$^W4ORD@(HZM)),"\",12)+CA
 Q
 ;
ITRAT(HZM,NOMCD,QN,IT0,QN0) ;
 I $D(@$$^W4ORD@(HZM,"MRG",NOMCD)) Q $$ITRAST^W4HZMST(HZM,NOMCD)
 I '$G(QN0) Q QN
 I $G(QN)'["*" Q QN
 Q IT0*$P(QN,"*",2)
 ;
TV(STAM) ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 G BG
 ;
OVRZIC ;
 S OVRZIC=$G(@$$^W4PL@("OVRZIC"),129)
 Q

W4HZFIRE
W4HZFIRE(HZM) ; [ 12.11.24 18:43 ] [ 05.09.13 13:20 ] [
 N I,LAST,FIRE
 S LAST=$O(@$$^W4ORD@(HZM,9999),-1)
 F I=LAST:-1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:FIRE
 .S ST=$G(^(I))
 .S FIRE=$$FIRE(ST)
 Q
 ;
FIRE(ST) ;
 N PAR S PAR=$P(ST,"\") I '$$ISNUM^%L1FRM(PAR) Q 0
 I $$SHEM^W4P(PAR)["UP!" Q 1
 I $$SHEM^W4P(PAR)["CLOSED!" Q 1
 Q 0
 

W4HZFR
W4HZFR(NMB) ; [ 17.12.23 12:00 ] [ 17.03.21 08:49 ] [ 27.09.16 18:18 ] 
 N (JB,%ARG,%REM,NMB)
 I '$G(NMB) Q 0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 ;
 N GLMSK S GLMSK=$$^W4GL("W4TMP")
 N GLMSKREF S GLMSKREF=$$^W4GL("W4TMPREF")
 N DV S DV=$$^W4MYDVN
 ;
 N OKMSK S OKMSK=0
 I $$^W4POSMSK(NMB) D  Q OKMSK_"M"
 .N N S N=9999999 F  S N=$O(@GLMSKREF@(P1DZ,N),-1) Q:N=""  D  Q:OKMSK
 ..N A S A=$G(^(N))
 ..N EMDA S EMDA=$P(A,"\")
 ..I EMDA=NMB,$D(@GLMSK@(N,"ZMANI")) S OKMSK=N
 ;
 N HZM S HZM=$O(@$$^W4GL("P1HL")@(NMB,9999999),-1)
 ;
 I HZM="ycg"!(HZM="NEW") Q -1
 ;
 I HZM<0,'($D(@$$^W4GL("P1HL")@(NMB,HZM))#2) D  Q ""
 .K @$$^W4GL("P1HL")@(NMB,HZM)
 ;
 N DTL S DTL=$O(@$$^W4GL("P1H")@(+$H),-1)
 N DTK S DTK=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 ;
 I DTK<P1DZ,'$$Z24^W4PRM S HZM=""
 I DTK<DTL,$$Z24^W4PRM S HZM=""
 I HZM="" Q 0
 N GLORD D GLORD^W4HZMST
 ;
 I $G(@GLORD@("S"))>1 Q 0
 Q HZM
 
 
 
 
 
 
 
 
 
 
 
 

W4HZFULL
W4HZFULL(HZM) ; [ 16.01.22 11:11 ] [ 13.08.15 03:34 ] [
 I $G(HZM)="" Q 0
 I $D(@$$^W4ORD@(HZM))'=11 Q 0
 I '$D(@$$^W4ORD@(HZM,1)) Q 0
 Q 1
 

W4HZGMLZ
W4HZGMLZ ; -- HAZAGAT MELZARIM [ 06.05.26 12:15 ] [ 16.04.26 08:23 ] [ 14.12.25 16:20 ] 
 N (JB,%ARG,%REM)
 ;
 D PUT^%W3DEB("W4HZGMLZ","ARG=[%ARG")
 ;
 I $$^W6 D  Q
 .I $$W6SCR&'$G(%ARG("KIOSKNAME")) D W6OPNSCR Q
 .D INPUTMAZMIN Q
 ;
 I '$$DLVCSR,$$GETP^%W1PRM("DLVCSR")="" D PUT^%W1PRM("DLVCSR",0)
 ;
 I $$DLVCSR D
 .I $$TELEPHONE^W4PRM D PUT^%W1PRM("DLVCSR",2) Q
 .I $$^W4MM D PUT^%W1PRM("DLVCSR",1) Q  ;; - MM
 .D PUT^%W1PRM("DLVCSR",$$DLVCSR) Q  ;; - MM
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 J CLEARFLAG^W4HZGSH(JB)
 S ^[$$^W3MAIN]POSJB(MYDVN)=JB
 S ^[$$^W3MAIN]POSJBI(JB)=MYDVN
 ;
 N LASTDZ S LASTDZ=$O(@$$^W4GL("Z")@(99999),-1)
 I $$^W4SNDEMV,'$$NOBDKTRN^W4PRM,LASTDZ,$G(@$$^W4GL("W4ERRTRN")@(LASTDZ)),'$D(^(LASTDZ,"ISHUR")) D MSGERTR Q
 ;
 D TMP
 N COLX,COLY,SH
 S COLX=6,COLY=7
 I $G(@$$^W4PRM@("COLXMLZ"))>2 S COLX=@$$^W4PRM@("COLXMLZ")
 I $G(@$$^W4PRM@("COLYMLZ"))>2 S COLY=@$$^W4PRM@("COLYMLZ")
 I $$^W4TABLET=2 S COLY=7 I COLX>5 S COLX=5
 ;
 I $$^W4SMALL D
 .S COLX=$$COLXMLZ^W4PRM,COLY=$$COLYMLZ^W4PRM
 .D PUT^%W1PRM("POSMALL",1)
 ;
 I $$NEW!'$G(@TMP@("PG")) D
 .D PUT^%W1PRM("URMENU",0)
 .K @TMP
 .S (LAST,@TMP@("LAST"))=0
 .S (GR,@TMP@("GR"))="ALL"
 .S (PG,@TMP@("PG"))=1
 ;
 I '$$NEW D
 .S LAST=+$G(@TMP@("LAST"))
 .S GR=$G(@TMP@("GR"))
 .S PG=$G(@TMP@("PG"))
 ;
LOOP ;
 W "<div align=""center"">",!
 D KOT ;
 ;
 I $G(%ARG("MGRBIO")) D BRBR,BRBR,^W4BIO G P10
 ;
 ;
 I '$$CHANGEWAITER,'$$MOVEFROM,'$$ASKWAITERNUMBER D MGR ; -- SHOW MANAGER BUTTON
 ;
 I '$$CHANGEWAITER,'$$MOVEFROM,$$ASKWAITERNUMBER D INPUTWAITER G P10
 ;
 D BODY
 ;
 I $$REST,'$$^W4SMALL D GROUP
 ;
 D FUNCTIONS
 ;
P1 D VIEW
P10 W !,"</div>",!
P2 ;
 D ^W4PCACNT
END ;
 Q
 ;
 ;
VIEW ;
 N GLHOV S GLHOV=$$GLHOV
 I $G(@GLHOV)?6N S @GLHOV=$$^%L1DC(@GLHOV,3)
 I $G(@GLHOV),$G(@GLHOV)>$H D
 .N KAMA S KAMA=@GLHOV-$H Q:KAMA>14
 .W "<div dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("CALL2PROGRAMMDESIGNER",KAMA)_"</div>"
 ;
 I $G(@GLHOV),$G(@GLHOV)'>$H D  Q
 .W "<div style=""font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("TIMEEXPIRED")_"</div>"
 ;
 S KOT=$$KOTTIME(KOT)
 ;
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 N TOP S TOP="" ;;"60px;500px"
 S KOT("MSD")="",KOT("MRQ")=""
 I $G(@GLHOV),$G(@GLHOV)>$H S KOT("MRQ")=$$^%W1DICT("CALL2PROGRAMMDESIGNER",@GLHOV-$H)
 ;
 N SUPER S SUPER="" I $$MNCUR^W4PRM S SUPER="SUPER"
 D ^W4SHEET(.KOT,$G(@TMP@("GR")),"",TOP,"74","",SUPER)
 D ^W4STAMP
 Q
 ;
 ;
PGDN(PRM) ;
 N LAST,PG,N
 D TMP
 S PG=$G(@TMP@("PG")) ;; I 'PG Q "END"
 I 'PG S PG=1
 S LAST=$G(@TMP@("LAST"))
 S @TMP@("LAST",PG)=LAST
 S PG=PG+1
 S @TMP@("PG")=PG
 Q 1
 ;
PGUP(PRM) ;
 N LAST,PG,N
 D TMP
 S PG=$G(@TMP@("PG"))
 I PG<2 Q "START"
 S @TMP@("PG")=PG-1
 S @TMP@("LAST")=$G(@TMP@("LAST",PG-1))
 Q 1
 ;
TMP S TMP="^[$$^W3MAIN]TMPMLZ(JB)"
 Q
 ;
KOT ;
 S KOT=$$CHOICE^W4WAITER
 I $$MOVEFROM D
 .S KOT=$$^%W1DICT("MOVINGITEMSFROMTABLE",$$MOVEFROM)_" : "_KOT
 I $$CHANGEWAITER D
 .S KOT=$$^%W1DICT("CHANGEWAITER",$$CHANGEWAITER)_" : "_KOT
 Q
 ;
MGR ;
 K MTXT
 I '$$^W4SMALL D
 .S MTXT(1,1)=$$^%W1DICT("MGR")
 .S MTXT(1,1,"TO")="ChoiceMgr()"
 .S MTXT(1,1,"FG")="red"
 .S MTXT(1,1,"BG")="white"
 .S J=1
 Q
 ;
TOMGRBIO ;
 D ^W4BIO
 Q
 ;
DRG(PRM) ; 
 S:PRM="" PRM=0 N DRG
 S DRG=$P($G(@$$^W4GL("W4PSWDRG")@(PRM)),"\") S:DRG="" DRG=0
 Q DRG
 ;
BODY ;
 N N,PG D TMP
 N K,K1 S K=0
 S I=1 S:'$D(J) J=0
 N CURGR S CURGR=$G(@TMP@("GR"))
 S N=LAST
 S PG=+$G(@TMP@("PG"))
 I 'PG S PG=1
 S K1=(PG-1)*(COLX*COLY-1)
 ;;S ^AA("W4HZGMLZ","LAST")=LAST
 F  S N=$O(@$$^W4GNAME@(N)) Q:N=""  D
 .I '$$SHOW(N) Q
 .S K=K+1 I K'>K1 Q
 .I I>COLY Q
 .S J=J+1 I J>COLX S J=1,I=I+1 Q:I>COLY
 .S MTXT(I,J)="&nbsp;"_$$H2U^%L1FRM($$GET1^W4LEVPR(N,"SHEM"))
 .S MTXT(I,J,"I")=N
 .S MTXT(I,J,"TO")="ChoiceWaiter('"_N_"',"_I_","_J_")"
 .S MTXT(I,J,"BG")="white"
 .S K1=K1+1
 ;
 S @TMP@("LAST")=N
 S @TMP@("LASTK1")=K1
 S @TMP@("LASTK")=K
 Q
 ;
 ;
GROUP ;
 K MGROUP
 S MGROUP(1)=$$^%W1DICT("ALLKINDS")
 S MGROUP(1,"I")="ALL"
 S MGROUP(1,"TO")="ChoiceGroup('ALL',0)"
 ;
 N LEVKVZ
 N I1 S I1=1
 S LEVKVZ="" F I=2:1:COLY-1 S LEVKVZ=$O(@$$^W4GL("LEVKVZ")@(LEVKVZ)) Q:LEVKVZ=""  D
 .I '$$SUGTIP(LEVKVZ) Q
 .S I1=I1+1
 .S MGROUP(I1)=$$H2U^%L1FRM($G(@$$^W4GL("LEVKVZ")@(LEVKVZ)))
 .S MGROUP(I1,"I")=LEVKVZ
 .S MGROUP(I1,"TO")="ChoiceGroup('"_LEVKVZ_"',"_(I-1)_")"
 Q
 ;
SUGTIP(KVZ) ;
 N OK S OK=0
 N OV S OV="" F  S OV=$O(@$$^W4GNAME@(OV)) Q:OV=""  D  Q:OK
 .I $$SUG^W4LEVSUG(OV)'=KVZ Q
 .I $$OVTIP(OV) S OK=1
 Q OK
 ;
OVTIP(N) ;
 I $$GETP^%W1PRM("MMCC") Q 1
 I $$GET1^W4LEVPR(N,"MTIP") Q 1
 I $$MNL^W4SETSUG(N) Q 1
 Q 0
 ;
SETCURGR(GR) ;
 D TMP
 S @TMP@("GR")=GR
 Q
 ;
FUNCTIONS ;
 K MFUNC
 N NF S NF=0
 N MAX S MAX=$G(@TMP@("LASTK"))
 ;
 I MAX>((COLX*COLY-1)*$G(@TMP@("PG"))) D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PGDN")
 .S MFUNC(NF,"TO")="PageDown()"
 ;
 I $G(@TMP@("PG"))>1 D
 .S NF=NF+1 
 .S MFUNC(NF)=$$^%W1DICT("PGUP")
 .S MFUNC(NF,"TO")="PageUp()"
 ;
 I $$GETP^%W1PRM("MMCC") D  Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PRESENTWATCH")
 .S MFUNC(NF,"TO")="PresentWatch()"
 ;
 ;
 I $$^W4SMALL S MFUNC("NOEXIT")=""
 ;
FUNC1 ;
 I '$$^W4SMALL D
 .I $$DLV^W4DLVCSR,'$$CALLCENTER^W4PRM D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("WORKPROGRAMM")
 ..S MFUNC(NF,"TO")="WorkProgramm()"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 ..
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("WORKPROGRAMM2DISPATH")
 ..S MFUNC(NF,"TO")="WorkProgramm2Dispath('0')"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 ..
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("WORKPROGRAMM2DISPATHDEP")
 ..S MFUNC(NF,"TO")="WorkProgramm2Dispath('1')"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 ..
 ..D
 ...I '$$PAPJ^W4PRM D
 ....S NF=NF+1
 ....S MFUNC(NF)=$$^%W1DICT("DMNREPORT")
 ....S MFUNC(NF,"TO")="DmnReport()"
 ....S MFUNC(NF,"BG")="orange"
 ....S MFUNC(NF,"FG")="black"
 ...
 ...I $$DPS^W4PRM!$$DELIS^W4PRM D
 ....S NF=NF+1
 ....S MFUNC(NF)=$$^%W1DICT("DPSREPORT")
 ....S MFUNC(NF,"TO")="DepositReport()"
 ....S MFUNC(NF,"BG")="orange"
 ....S MFUNC(NF,"FG")="black"
 ..
 .I '$$DLVWEB^W4DLVCSR D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("MISC")
 ..S MFUNC(NF,"TO")="Misc()"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 .
 .I $$KUPA^W4PLUK D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("FINDORDER")
 ..S MFUNC(NF,"TO")="FindOrder()"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 .
 .I '$$^W4DLVCSR&$$MSL^W4PRM D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("TODLV")
 ..S MFUNC(NF,"TO")="ToDlv()"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 .
 .I $$DLV^W4DLVCSR,'$$CALLCENTER^W4PRM,'$$MM^W4PRM,$$MSDT^W4PRM D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("TOREST")
 ..S MFUNC(NF,"TO")="ToRest()"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 ;
 I '$$HUTIM^W4PRM,$$SUPER^W3PRM=1!$$TAW^W4PRM!$$CREDFUNC^W4PRM D CREDFUNC^W4HZGSH
 ;
 I $$HUTIM^W4PRM D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("DAYCLOSING")
 .S MFUNC(NF,"TO")="DayClosing()"
 .S MFUNC(NF,"BG")="lightblue"
 .S MFUNC(NF,"FG")="black"
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("ZREPORT")
 .S MFUNC(NF,"TO")="ZReport()"
 .S MFUNC(NF,"BG")="lightblue"
 .S MFUNC(NF,"FG")="black"
 ;
 I '$$SHAONMGR^W4PRM D  ; -- WAS I $$CLKVWMLZ^W4PRM
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PRESENTWATCH")
 .S MFUNC(NF,"TO")="Shaon()"
 .S MFUNC(NF,"BG")="yellow"
 .S MFUNC(NF,"FG")="black"
 ;
 I $$MNCUR^W4PRM D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("DIARY")
 .S MFUNC(NF,"TO")="Diary()"
 .S MFUNC(NF,"BG")="darkgreen"
 .S MFUNC(NF,"FG")="white"
 ;
 I $$USBIO^W4PRM D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("MANAGER")
 .S MFUNC(NF,"TO")="ToMgrBio()"
 .S MFUNC(NF,"BG")="red"
 .S MFUNC(NF,"FG")="white"
 ;
 I $$NEWMLY^W3PRM D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("ITEMCARD")
 .S MFUNC(NF,"TO")="ItemCard()"
 .S MFUNC(NF,"BG")="darkgreen"
 .S MFUNC(NF,"FG")="white"
 .
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("SUPPLSYSTEMMLY")
 .S MFUNC(NF,"TO")="ToMly()"
 .S MFUNC(NF,"BG")="darkgreen"
 .S MFUNC(NF,"FG")="white"
 .
 .I $$DELIS^W4PRM D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("MLYSTATUS")
 ..S MFUNC(NF,"TO")="MzvMly()"
 ..S MFUNC(NF,"BG")="darkgreen"
 ..S MFUNC(NF,"FG")="white"
 ;
 I $$TIPMZM^W4PRM&'$$SG^W4KOTMLZ&'$$NOTIPALL^W4PRM D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("TIPMZ")
 .S MFUNC(NF,"TO")="ToTipMz()"
 .S MFUNC(NF,"BG")="yellow"
 .S MFUNC(NF,"FG")="red"
 ;
 Q
 ;
MOVEFROM(STAM) ;
 Q $$^W4MVFROM
 ;
CHANGEWAITER(STAM) ;
 Q $$^W4CHNWTR
 ;
 ;
KOTTIME(KOT) ;
 N KOT0 S KOT0=KOT
 I $$^W4SMALL Q $$^%W1DICT("POSNUMBER")_" : "_$$^W4MYDVN
 ;
 D ^W4IN
 ;;I $$^%L1DC(P1DZ,1)="01.08.12" S @$$^W4PRM@("MAM")=17
 ;
 N TM S TM=$$KOTTM
 ;
 I KOT'[$$^%W1DICT("CSRDATE") D
 .N FS S FS=14 I $$1024^W4WDSCR S FS=12
 .S KOT=TM_"<td style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(FS)_";text-align:center"">"
 .S KOT=KOT_KOT0_"</td><td width=""15%"">&nbsp;</td>"
 ;
 S KOT="<table dir="""_$$^%W1DIR_""" WIDTH=""100%""><tr>"_KOT_"</tr></table>"
 I $$^W4TABLET=2 S KOT="<br>"_KOT
 Q KOT
 ;
 ;
KOTTM() ;
 N SPC S SPC=$$NBSP^%L1FRM(3)
 N TM S TM="<td style=""width:"_$S($$1024^W4WDSCR:50,1:45)_"%;color:black;font-size:"_$$^W3FSZ(10)
 S TM=TM_";text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")
 S TM=TM_""">&nbsp;"
 S TM=TM_"SID "_JB_SPC
 S TM=TM_$$^%W1DICT("DATE")_" "_$ZD($H,"DD.MM.YY")_SPC
 I '$$DLVWEB^W4DLVCSR S TM=TM_$$^%W1DICT("CSRDATE")_" "_$ZD(P1DZ,"DD.MM.YY")_SPC
 I $$DLVWEB^W4DLVCSR S TM=TM_$$RPL^%L1FRM($J("",30)," ","&nbsp;")
 S TM=TM_$$^%W1DICT("POSNUMBER")_" : "_$$^W4MYDVN_SPC_"</td>"
 Q TM
 ;
REST(STAM) ;
 I '$$TAW^W4PRM&'$$MSD^W4PRM Q 0
 I $$^W4DLVCSR Q 0
 I $$POS^W4MTAW Q 0
 I $$^W4MTAW Q 0
 Q 1
 ;
NEW(STAM) ;
 I $G(%ARG("NEW"))!$G(%ARG("NEWPAGE")) Q 1
 Q 0
 ;
NOSG(STAM) ;
 I $G(@$$^W4PRM@("SETDZ")),$$^W4DZ<$H,$P($H,",",2)\3600>($$SHAAZ^W4PRM-1) D SETDZ
 I $G(@$$^W4PRM@("NOMSGSGZ")),$H-$$^W4DZ<2 Q 0
 ;
 I $H-$$^W4DZ>1 Q 1
 ; 
 I $H-$$^W4DZ=1,$P($H,",",2)\3600>($$SHAAZ^W4PRM-1) Q 1
 Q 0
 ;
SETDZ ;
 N LDAT S LDAT=$O(@$$^W4GL("Z1")@(999999),-1) Q:'LDAT
 N NP S NP=$O(@$$^W4GL("Z1")@(LDAT,999),-1) Q:'NP
 N A S A=$G(@$$^W4GL("Z1")@(LDAT,NP))
 N DAT,TM,DT S DAT=$P(A,"\"),TM=$P(A,"\",2)
 S DT=$$^%L1DC(DAT,3)
 I +DT=+$H S @$$^W4GL("P1DZ")=+$H
 Q
 ;
WRONGDATE(STAM) ;
 N LD S LD=$O(@$$^W4GL("Z")@(99999),-1) I 'LD Q 0
 N DTZ S DTZ=$G(@$$^W4PRM@("DATEZ"))
 I DTZ?5N S DTZ=$ZD(DTZ,"DD.MM.YY")
 I $H<LD,DTZ'=$ZD($H,"DD.MM.YY") Q 1
 Q 0
 ;
COLITGR(STAM) ;
 N NN,II S NN="",II=0
 F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D
 .I '$$^W4VWGR(NN) Q
 .S II=II+1
 Q II
FIRSTITGR(STAM) ;
 N NN,NN1,II
 S NN="",NN1="",II=0
 F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D  Q:NN1
 .I '$$^W4VWGR(NN) Q
 .S NN1=NN
 Q NN1
 ;
IN ;
 I $$MMCC^W4PRM,$$GETP^%W1PRM("MSDR0") D PUT^%W1PRM("MSDR",$$GETP^%W1PRM("MSDR0"))
 I $$MMCC^W4PRM,$$GETP^%W1PRM("MSD0") D PUT^%W1PRM("MSD",$$GETP^%W1PRM("MSD0"))
 Q
 ;
INIT ;
 N MYDVN S MYDVN=$$^W4MYDVN
 D ^W4BGBODY
 D PUT^%W1PRM("KUP",1)
 ;
 I $$TMPENG^%W1LNG D PUT^%W1PRM("LNG","H")
 ;
 I $L($G(%ARG("SMALL"))) D PUT^%W1PRM("SMALL",%ARG("SMALL"))
 I $G(%ARG("MSD")) S MSD=$G(%ARG("MSD"))
 D:+$G(MSD) PUT^%W1PRM("MSD",MSD)
 S:+$G(MSD)=0 MSD=$$GETP^%W1PRM("MSD")
 D:$D(%ARG("PR800")) PUT^%W1PRM("PR800",%ARG("PR800"))
 D:$G(%REM) PUT^%W1PRM("REM",%REM)
 ;
 D KILL^%W1PRM("W4BO")
 D KILL^%W1PRM("NMB")
 D KILL^%W1PRM("MZVHSB")
 D KILL^%W1PRM("PRSNLSET")
 D KILL^%W1PRM("PRSNLMENU")
 D KILL^%W1PRM("PRSNLCUR")
 D KILL^%W1PRM("MNL")
 ;
 D ^W4CLEAR
 K ^[$$^W3MAIN]TMPMKBL(MYDVN)
 K ^[$$^W3MAIN]TMPORDC(JB)
 ;
 ;;K @$$^W4PARCAT; -- 06.05.26
 ;
 I '$$MOVEFROM K ^[$$^W3MAIN]TMPS(JB)
 ;
 ;;I $$NOSND^W4SNDEMV,'$G(@$$^W4GL("W4REP4")@(+$H)),$P($H,",",2)>15000 D  ; -- 06/08/25
 I $$EMV4^W4SNDEMV,'$$OLDSND4^W4SNDEMV,'$G(@$$^W4GL("W4REP4")@(+$H)),$P($H,",",2)>15000 D
 .S @$$^W4GL("W4REP4")@(+$H)=$H
 .;;D CRREP4^W4CRTRN(+$H,$H-1)
 .D ^W4REPEMV(+$H-1,+$H)
 ;
 I $$PAPJ^W4PRM,$P($H,",",2)>20000,'$G(@$$^W4GL("W4RSTG")@(+$H)) D
 .D SNDWORK^W4RSTGSN($H-1,1)
 .;;D SNDWORK^W4RSTGSN(+$H,1)
 .S @$$^W4GL("W4RSTG")@(+$H)=$H
 ;
 I '$$CHANGEWAITER,'$G(%ARG("JUMP")) D
 .D KILL^%W1PRM("MLZR")
 ;
 I '$$MOVEFROM,'$$CHANGEWAITER D
 .D KILL^W4TMPPAY
 .D KILL^W4TMPANS("","")
 ;
 D SCANER
 ;
 I $G(MSD),$$GETP^%W1PRM("LNG")="" D
 .S %W1LNG=$$LNG^W3PRM(MSD)
 .D PUT^%W1PRM("LNG",%W1LNG)
 ;
 I $G(DLVCSR)?1N D PUT^%W1PRM("DLVCSR",DLVCSR)
 I $$^W4DLVCSR D INIT^W4DLVCSR
 ;
 D INITPOS
 Q
 ;
INITPOS ;
 D INIT^W4MYDVN
 Q
 ;
DLVCSR(STAM) ;
 I $G(%ARG("DLVCSR")) Q %ARG("DLVCSR")
 I $$GETP^%W1PRM("DLVCSR") Q $$GETP^%W1PRM("DLVCSR")
 Q 0
 ;
 ;
SHOW(N) ; 
 ;;I $$GETP^%W1PRM("MMCC") Q 1 ;  -- 02.07.24
 I N,N=$G(@$$^W4PRM@("PSW")) Q 2  ; MANAGER
 ;
 S N=$$DOP^W4NAME(N)
 ;
 N RES S RES=$$CHKRCVR(N) I 'RES Q RES
 ;
 N OKNH S OKNH=1
 ;
 I $G(@$$^W4PRM@("BDNOCH")) D  I 'OKNH Q "NOPRESENTINWORK"
 .I $$MNL^W4SETSUG(N),$$NOBDNOCHMNL^W4PRM S OKNH=1 Q
 .I $G(@$$^W4GL("FILE")@(N,"CIO"))'="I" S OKNH=0
 .I $$OLDDATIN(N) S OKNH=0
 ;
 I $$^W4CHNWTR>0,+$$MKBL^W4HZMST(+$$^W4CHNWTR)=+N Q "SAMEWORKER"
 D PUT^%W1PRM(N,"MLZR")
 Q 1
 ;
 ;
CHKRCVR(N) ;
 S N=$$DOP^W4NAME(N)
 I '$$GET1^W4LEVPR(N,"PAIL") Q "WORKERNOTACTIVE"  
 I $G(CURGR),$$SUG^W4LEVSUG(N)'=+$G(CURGR) Q "WORKERNOTINGROUP"
 ;
 I '$$OVTIP(N),'$$MNL^W4SETSUG(N) Q "NOWAITER"
 I $$DLV^W4DLVCSR,'$$MKBL^W4SETSUG(N) Q "NORECEIVER"
 I '$$DLV^W4DLVCSR,$$POS^W4MTAW!($$^W4DLVCSR=0&$$^W4MTAW),'$$CASHIER^W4SETSUG(N) Q "NOCASHIER"
 Q 1
 ;
 ;
OLDDATIN(N) ;
 N OK S OK=0
 N LDAT S LDAT=$O(@$$^W4GL("FILE")@(N,999999),-1) I LDAT="" Q OK
 N LD S LD=$$^%L1DC(LDAT,4)
 I LD<$$^W4DZ,'$G(@$$^W4PRM@("WORKAFTZ")) S OK=1
 Q OK 
 ;
ASKWAITERNUMBER(STAM) ; 
 Q $$ASKWAITERNUMBER^W4PRM 
 ;
INPUTWAITER ; 
 N P1DZ S P1DZ=$$^W4DZ
 ;
 I $$USBIO^W4PRM D  Q
 .W "<table width=""100%"" align=""center""><tr>"_$$KOTTM_"</tr></table>",!
 .D IW1
 .D BRBR,BRBR
 .D ^W4BIO
 ;
 S %ARG("MAXL")=18
 S %ARG("WIDTH")=30
 S %ARG("PSW")=1
 S %ARG("ASKWAITERNUMBER")=1
 N SPC S SPC=$$NBSP^%L1FRM(3)
 ;
  W "<table width=""100%"" hight=""100%"" cellspacing=""0"" style=""border:ridge lightgrey"" dir="""_$$^%W1DIR_""" >",!
   W "<tr class=""sheetheader"" >"
    W "<td width=""30%"" style=""color:grey;font-size:"_$$^W3FSZ(11)_""">"
       W $$^%W1DICT("DATE")_" "_$ZD($H,"DD.MM.YY")_SPC
       W $$^%W1DICT("CSRDATE")_" "_$ZD(P1DZ,"DD.MM.YY")_SPC
    W "</td>"
    W "<td style=""text-align:center;padding:2px;width:40%"">"
     W $$^%W1DICT("TYPEWAITERNUMBER")
    W "</td>",!
    N PADTD S PADTD=$S($$^%W1DIR="LTR":"padding-right:10px",1:"padding-left:10px")
    W "<td style=""color:grey;font-size:"_$$^W3FSZ(11)_";"_PADTD_""" "_$$INV^%W1ALIGN_">"
     W "SID "_JB
    W "</td>" 
   W "</tr>",!
  W "</table>",!
 ;
 W "<br><br><br><br>",!
 D ^W4KB
 D BRBR
 D IW1
 Q
 ;
IW1 ;
 N NF S NF=0
 D FUNC1
 N COLX S COLX=1
 N WDF S WDF=$S($$1024^W4WDSCR:90,1:60)
 W !,"<table width="""_WDF_"%"" height="""_$S($D(HZGULM):6,1:12)_"%"" "
  W " style=""text-align:center"
  W """ "
  W "border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 W "<tr>",!
  D FUNC^W4SHEET(WDF)
 W "</tr>",! 
 W "</table>",! 
 Q
 ;
BRBR ;
 W "<br><br><br><br><br><br>",!
 Q
 ;
BR ;
 W "<br><br><br><br>",!
 Q
 ;
GLHOV(STAM) ;
 Q $$^W4GL("HOV") 
 ;
SCANER ; 
 I $$SCANER^W4PRM D
 .N MYDVN S MYDVN=$$^W4MYDVN
 .I $G(@$$^W4PRM@("SCANER",MYDVN))=0 D PUT^%W1PRM("SCANER",0) Q
 .I +$G(@$$^W4PRM@("SCANER",MYDVN))'=.5 D PUT^%W1PRM("SCANER",1) Q
 Q
 ;
 ;
INPUTMAZMIN ; 
 ;;S ^AA("NOSGPRM")=$$NOSG^W4PRM
 ;;S ^AA("NOSG")=$$NOSG
 ;
 I +$$NOSG^W4PRM=0,$$NOSG D NOSGMSG Q
 ;
 D PUT^%W1PRM("W6","TFR")
 N VL S VL=$G(%ARG("VL"))
 N %ARG
 S %ARG("VL")=VL
 S TXT="~~<MAZMINNAME"
 S %ARG("FSZ")=21
 S %ARG("SZ")=21
 S %ARG("HGTR")=60
 S %ARG("NODIGIT")=1
 I '$$W6SCR S %ARG("NOBACK")=1
 S %ARG("CELLSPC")=7
 S %ARG("NOCAPS")=1
 ;
 W "POS "_$$^W4MYDVN,!
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""height:100%"">",!
 I '$$W6ENG^W4PRM F I=1:1:6 W "<br>"
 I $$W6ENG^W4PRM,'$$W6SCR D
 .W "<br>",!
 .D
 ..I $$ENG!($$^%W1LNG="E") D ^W4BTN("HEBREW","English('0')","red","",16,7) Q
 ..D ^W4BTN("!English","English('1')","red","",16,7) Q
 .W "<br><br><br>",!
 .
 ;
 D ^W4ABC(TXT)
 W "</div>",!
 Q
 ;
W6NEWORD(MAZMIN) ;
 S NMB=+$$W6NMB^W4PRM 
 S MLZR=$$W6MKBL^W4PRM 
 S SOAD=+$$W6SOAD^W4PRM 
 D PUT^%W1PRM("NMB",NMB) 
 D PUT^%W1PRM("MLZR",MLZR) 
 D PUT^W3HZMST(JB,"MKBL",MLZR)
 D PUT^W3HZMST(JB,"NMB",NMB)
 D PUT^W3HZMST(JB,"SOAD",SOAD)
 S @$$^W4TMPORD@("MZMNM")=$$INVH^%L1FRM($$CNWEB^%L1FRM(MAZMIN))
 D NEWORD^W4MENUHD
 Q 1
 ;
DECROV(SISMA) 
 N BG,OV S OV=SISMA 
 I $$PSWDRG^W4PRM D 
 .S BG=$$BGPSW^W4PRM 
 .S OV=$$DECR($E(SISMA,BG+1,BG+5)) 
 Q OV 
 ; 
DECR(OV) ; 
 Q $$DECR^W4SSM(OV) 
 ;
SETISHUR() ; 
 N LASTDZ S LASTDZ=$O(@$$^W4GL("Z")@(99999),-1)
 I LASTDZ,$D(@$$^W4GL("W4ERRTRN")@(LASTDZ)) S ^(LASTDZ,"ISHUR")=$H Q 1
 Q 0
 ;
ENG() ; 
 I $G(%ARG("ENG")) Q 1
 I $$GETP^%W1PRM("LNG")="E" Q 1
 Q 0 
 ;
W6OPNSCR ; 
 N PIC S PIC="./"_$$W6PICSCR
 W "<img src="""_PIC_""" width=""100%"" height=""100%"">",!
 W "<button style=""position:absolute;padding:14px;top:10%;left:70%;font-size:"_$$^W3FSZ(28)_""" onClick=""ToKiosk('1')"" >"
  W "English"
 W "</button>",!
 ;
 W "<button style=""position:absolute;padding:14px;top:10%;left:15%;font-size:"_$$^W3FSZ(28)_""" onClick=""ToKiosk('0')"">"
  W $$^%W1DICT("HEBREW")
 W "</button>",!
 Q
 ;
 ;
W6SCR() ; 
 Q $$EXIST^%L1ZOS($$WEBL^W3MAIN_$$W6PICSCR)
 Q $G(@$$^W4PRM@("W6OPNSCR")) 
 ;
W6PICSCR() ;
 Q "1/itp/w6opnscr.png"
 ;
NOSGMSG ;
 N I
 F I=1:1:5 W "<br>",! 
 W "<div style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
 F I=1:1:3 W "<br>",! 
 W $$^%W1DICT("CLOSEDAY",$ZD($$^W4DZ,"DD.MM.YY"))
 F I=1:1:3 W "<br>",! 
 D ^W4BTN("TRYAGAIN","TryAgain()","","","",7)
 W "</div>",!
 Q
 ;
NOSGSL() ;
 N GLAU S GLAU=$$GLAU^W4AUTOUT
 N DT S DT=$$^W4DZ
 N MSG  S MSG=""
 N N S N="" F  S N=$O(@GLAU@(DT,N)) Q:N=""  I $$SL^W4LEVPR(N) D
 . I $$ITRASL^W4CLKVW(N)<1 Q
 .N NMSL S NMSL=$$^W4NAME(N)
 .S MSG=MSG_$$TV^%W1DICT($$^%W1LNG,"TAKEMANYFROMCOURIER",NMSL)_$C(10)
 Q MSG
 ;
 ; 
MSGERTR ;
 W "<div align=""center"" width=""100%"" >",!
 N I F I=1:1:8 W "<br>",!
 W "<div align=""center"" dir="""_$$^%W1DIR_""" ",!
  W " style=""background-color:yellow;color:red;font-size:"_$$^W3FSZ(18)
  W ";border:2px black solid" 
  W ";"_$$RAD^W3CSM(8)
  W ";width:"_$$^W4KF(500)_";height:"_$$^W4KF(350)_""" " 
 W ">",!  
  W "<p>&nbsp;</p>",!
  W $$^%W1DICT("CREDCARDSTRANSMISSIONFAILED"),!
  W "<p>&nbsp;</p>",! 
  D ^W4BTN("DOTRNCA","DoTrnCA()","darkblue","",18,5,"180")
  W "<p></p>",!
  D ^W4BTN("CONTINUEWORK","ContinueWork()","darkblue","",18,5,"180")
  W "</select>",!
 W "<p>&nbsp;</p>",!
 W "</div>",!
 W "</div>",! 
 Q
 ;
CLRPSL ; 
 K BADSL
 D ^W4CLRSL
 ;
 I $D(BADSL)>9,'$D(@$$^W4GL("W4BADSL")@(P1DZ)) D 
 .W "<div dir="""_$$^%W1DIR_" align=""center"">",!
 .W "<p style=""font-size:"_$$^W3FSZ(14)_";color:brown"">",!
 .  W $$^%W1DICT("DOUBLECOURIERLIST")
 .W "</p>",! 
 .W "<p></p>",!
 .W "<table>",!
 .W "<tr>",! 
 . W "<th>"_$$^%W1DICT("COURIERNUMBER")_"</th>"
 . W "<th>"_$$^%W1DICT("COURIERNAME")_"</th>"
 .W "</tr>",! 
 .
 .S N="" F  S N=$O(BADSL(N)) Q:N=""  D
 ..W "<tr>" 
 .. W "<td>"_N_"</td>"
 .. N SL1 S SL1=$G(@GL@(N))
 .. W "<td>"_$$H2U^%L1FRM(SL1)_"</td>"
 ..W "</tr>",!
 .
 .W "</table>",!
 .W "</div>",!
 .W "<p></p>",!
 .D ^W4BTN("CONTINUEWORK","self.location.reload()","darkblue","",18,5,"180")
 .M @$$^W4GL("W4BADSL")@(P1DZ)=BADSL 
 Q
 
 
 
 
 
 

W4HZGRHV
W4HZGRHV(HZ) ; [ 01.05.25 06:43 ] [ 
 N REHEV S REHEV=$$REHEV^W4HZMST(HZ) I 'REHEV Q ""
 Q $$REHEV(REHEV)
 ;
REHEV(REHEV) ;
 Q REHEV_" "_$$H2U^%L1FRM($$SUGRHV1(REHEV))
 ;
SUGRHV1(REHEV) ;
 N SUGRHV,SUGRHV1 S SUGRHV=$G(@$$^W4GL("W4CAR")@(REHEV)),SUGRHV1=""
 I SUGRHV S SUGRHV1=$G(@$$^W4GL("W4SUGRHV")@(SUGRHV))
 Q SUGRHV1
 
 
 

W4HZGSH
W4HZGSH ; [ 08.09.25 04:44 ] [ 13.08.25 11:03 ] [ 11.08.25 15:05 ] 
 N (JB,%ARG,%BS,%REM)
 D INIT
 D SCANER^W4HZGMLZ
 ;
 S SHULH=$$SHULH
 S MLZR=$$MLZR I 'MLZR D  Q
 .W "<script>",!
 . W "Exit()",!
 .W "</script>",!
 ;
 S TAWSH=$$TAWSH
 S PG=$$PG I PG<1 S PG=1
 S BEG=$$BEG
 ;
 I $G(%ARG("NEW")) D SETCURSUG(MLZR)
 ;
 S CURSUG=$$CURSUG
 ;
 S LASTSHUL=$O(@$$^W4GL("LKH")@(1000),-1)
 ;
 I $D(SHULH),SHULH>999 K SHULH
 I $D(SHULH),SHULH>LASTSHUL K SHULH
 ;
 I $$ULAM^W4PRM,'$$GETP^%W1PRM("OLDSHOW"),'$$^W4SMALL D  Q  ;,'$$^W4TABLET
 .I $$MGR D ALL
 .D ^W4HZGULM
 ;
 S COLX=7,COLY=5,SH=1,US="1=1"
 I $$^W4SMALL D
 .S COLX=$$COLXSH^W4PRM
 .S COLY=$$COLYSH^W4PRM
 ;
 I $$^W4TABLET=1 D
 .S COLX=7
 .S COLY=4
 ;
 I $$^W4TABLET=2 D
 .S COLX=5
 .S COLY=8
 ;
 S SUGSV=0
 ;
 K BARMAN
 I $D(@$$^W4GL("P1BARMAN")@(MLZR)),$G(@$$^W4PRM@("MSD")) D  Q
 .S BARMAN="" D ^W4HZGSHB
 ;
LOOP K MTXT S I=1,J=0,N=BEG
 S SHULH=$$SHULH
 ;
 D KOT
 ;
 F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  Q:N>999  D:$$^W4MSD(N)  Q:I>COLY
 .N HZM S HZM=$$HZ(N)
 .I $$W6NMB(N) Q
 .I $$MOVEFROM,N=$$MOVEFROM Q
 .I $$STATUS="FREE",HZM Q
 .I $$STATUS="BUSY",'HZM Q
 .I $$^W4ISORD(HZM),'$$MGR,'$$MNL,$$MLZRONLY,$$MKBL^W4HZMST(HZM)'=$$MLZR Q  ; POK-T TOLKO SHULH ETOGO MELZ
 .S SUGSH=$$SUGS^W4L(N)
 .I $TR($$CURSUG,",",""),(","_$$CURSUG_",")'[(","_SUGSH_",") Q  ; - POK-T TOLKO VYBR SUG SHULH
 .I $$ME,N<$$ME Q
 .I $$AD,N>$$AD Q
 .
 .S J=J+1 I J>COLX S J=1,I=I+1 Q:I>COLY
 .S LSH=N,LASTI=I,LASTJ=J
 .S MTXT(I,J,"I")=N
 .S MTXT(I,J,"TO")="ClickTable('"_N_"')"
 .
LHZG .I $$HZ(N) D  Q  ; -- OTKR HAZM
 ..N HZM,H,MLZ,MLZ1,SOAD
 ..S HZM=$$HZ(N),H=$G(@GLORD),MLZ1=""
 ..S MLZ=$P(H,"\",18) I MLZ S MLZ1=$$SHORT^W4NAME(MLZ)
 ..S SOAD=$P(H,"\",24)
 ..D MTXT(N,"BUSY")
 ..S MTXT(I,J,"STAT")=HZM_";"_SUGSH_";"_MLZ
 ..S MTXT(I,J,"BG")="white"
 ..I $$NOPAID(HZM) D
 ...S MTXT(I,J,"BORDER")="5px red solid"
 .
 .I '$$HZ(N),'$D(@$$^W4GL("FLAG")@(N)) D  Q  ;-- FREE
 ..D MTXT(N,"FREE")
 ..S MTXT(I,J,"STAT")="0;"_SUGSH
 .
 .I '$$HZ(N),$D(@$$^W4GL("FLAG")@(N)) D  Q  ;-- NEW
 ..D MTXT(N,"FREE")
 ..S MTXT(I,J,"STAT")="0;"_SUGSH
 ..S MTXT(I,J,"BORDER")="3px green solid"
 ;
MET ;
 I $L($G(LSH))>3 S LSH=""
 S LAST=$G(LSH)
 I N=""!($L(N)>3) S LAST=""
 I $G(PG) D
 .S @TMPS@("PG")=PG
 .S @TMPS@("LSH",PG)=LAST
 S @TMPS@("LSH")=LAST
 S @TMPS@("LASTI")=$G(LASTI)
 S @TMPS@("LASTJ")=$G(LASTJ)
 ;
 I $G(%ARG("NEW")),$G(SHULH),SHULH>LSH,SHULH<LASTSHUL,LAST'="" D  G LOOP
 .S (BEG,@TMPS@("BEG"))=LAST
 .S PG=PG+1,@TMPS@("PG")=PG
 ;
 D GROUP
 ;
 D FUNC
 ;
P1 ;
 D VIEW
 ;
 D ^W4PCACNT
 ;
 I '$$MOVEFROM D
 .W "<script>",!
 .W " TestStatus()",!
 .W "</script>",!
END ;
 Q
 ;
 ;
KOT ;
 S KOTMLZ=$$^W4KOTMLZ
 I $$^W4SMALL S KOTMLZ=KOTMLZ_$$NBSP^%L1FRM(10)_$$KOTTIME^W4HZGMLZ(KOTMLZ) Q
 ;
 I $$MOVEFROM D
 .S KOTMLZ=KOTMLZ_" - "_$$^%W1DICT("MOVINGITEMSFROMTABLE",$$MOVEFROM)_" : "_$$^%W1DICT("CHOICETABLE")
 ;
 I '$$MOVEFROM D
 .S KOTMLZ=$$KOTTIME^W4HZGMLZ(KOTMLZ)
 ;
 I $$MGR D
 .N SSSUM,SSSUMS,SSSOAD,SSSOADS
 .D FRMSHOW0
 .
 .N TB S TB="" ;;I '$$SYS^W4DLVCSR S TB="<hr>"
 .S TB=TB_"<table width=""98%"" align=""center"" style=""border-top:solid grey 1px"">"
 .
 .D SHOW(0)
 .I $$SYS^W4DLVCSR D SHOW(1)
 .
 .S TB=TB_"</table>"
 .S KOTMLZ(1)=TB
 .S KOTMLZ("ALIGN")="center"
 Q
 ;
 ;
MTXT(N,STAT) ;
 N HESH,FIRE
 S MTXT(I,J)="<table id=""tbl"_N_""" dir="""_$$^%W1DIR_""" "
 S MTXT(I,J)=MTXT(I,J)_" width=""100%"" height=""100%"""
 ;
 N STYLE S STYLE=""
 S STYLE=STYLE_$$RAD^W3CSM("5px")_";"
 I $$BGCOLOR(N)'="" S STYLE=STYLE_"background-color:"_$$BGCOLOR(N)_";"
 I $$FGCOLOR(N)'="" S STYLE=STYLE_"color:"_$$FGCOLOR(N)_";"
 ;
 I N=$$GETP^%W1PRM("LASTNMB") D
 .S STYLE=STYLE_";border:solid 1px red"
 I N'=$$GETP^%W1PRM("LASTNMB") D
 .S STYLE=STYLE_";border:solid 1px lightgrey"
 ;
 I STAT="BUSY" D
 .I STYLE="" S STYLE="background-color:#eaeaea"
 ;
 S MTXT(I,J)=MTXT(I,J)_" style="""_STYLE_""""
 S MTXT(I,J)=MTXT(I,J)_">"
 ;
 S MTXT(I,J)=MTXT(I,J)_"<tr><td colspan=""2"" class=""cellhd"""
 ;
 I +N=+$G(SHULH) D
 .S MTXT(I,J)=MTXT(I,J)_" style=""text-decoration:underline"""
 ;
 S HESH=""
 I $$HSBP^W4HZMST(HZM) D
 .N CLR S CLR="red"
 .I $$BGCOLOR(N)="red"!($$FUNC^%UCASE($$BGCOLOR(N))["FF0000") S CLR="white"
 .S HESH="&nbsp;<span style=""font-size:"_$$^W3FSZ(7)_";color:"_CLR_";text-decoration:underline"">"_$$^%W1DICT("ACNT")_" "_$$T^%L1TIME($$HSBP^W4HZMST(HZM))_"</span>"
 ;
 S FIRE=""
 I $$FIRE^W4HZMST(HZM)'="" D
 .N CLR S CLR="red"
 .I $$BGCOLOR(N)="red"!($$FUNC^%UCASE($$BGCOLOR(N))["FF0000") S CLR="white"
 .S FIRE="<img src=""w4fire.jpg"" style=""width:9px;height:12px"">"
 .S FIRE=FIRE_"&nbsp;<span style=""font-size:"_$$^W3FSZ(8)_";color:"_CLR_";text-decoration:underline"">"
 .S FIRE=FIRE_$P($$FIRE^W4HZMST(HZM),"[")_"</span>"
 ;
 N DESC S DESCR=$$DESCR(N)
 ;
 I FIRE'=""!(HESH'="") D
 .S MTXT(I,J)=MTXT(I,J)_" ><table><tr>"
 .S MTXT(I,J)=MTXT(I,J)_"<td width=""46%"">"_FIRE_"</td>"
 .S MTXT(I,J)=MTXT(I,J)_"<td>"_N_"</td>"
 .S MTXT(I,J)=MTXT(I,J)_"<td width=""44%"">"_HESH_"</td>"
 .S MTXT(I,J)=MTXT(I,J)_"</tr></table></td></tr>"
 ;
 I FIRE="",HESH="" D
 .S MTXT(I,J)=MTXT(I,J)_" > "_" "_N_" "_DESCR_" </td></tr>"
 ;
 I STAT="BUSY" D
 .S MTXT(I,J)=MTXT(I,J)_"<tr class=""busy""><td colspan=""2"" align=""center"">"
 .N COLOR S COLOR=";color:brown"
 .S MTXT(I,J)=MTXT(I,J)_"<span style=""font-weight:bold"_COLOR_""">"_$$H2U^%L1FRM(MLZ1)_"</span>"
 .S MTXT(I,J)=MTXT(I,J)_" "_$$^%W1DICT("SOAD")_": <span class=""celldata"">"_SOAD_"</span></td></tr>"
 .Q:$$^W4SMALL  ;
 .S MTXT(I,J)=MTXT(I,J)_"<tr class=""busy""><td>&nbsp;"_$$^%W1DICT("TOPAY")
 . S MTXT(I,J)=MTXT(I,J)_" </td><td class=""celldata"">"
 . S MTXT(I,J)=MTXT(I,J)_$J($$TSHL^W4HZMST(HZM),6,1)
 . S MTXT(I,J)=MTXT(I,J)_"</td></tr>"
 .I +$$TSHL^W4HZMST(HZM)'=+$$ITRA^W4HZMST(HZM) D
 ..S MTXT(I,J)=MTXT(I,J)_"<tr class=""busy""><td>&nbsp;"_$$^%W1DICT("ITRA")
 .. S MTXT(I,J)=MTXT(I,J)_" </td><td class=""celldata"">"
 .. S MTXT(I,J)=MTXT(I,J)_$J($$ITRA^W4HZMST(HZM),6,1)
 .. S MTXT(I,J)=MTXT(I,J)_"</td></tr>"
 .I $$HRAED^W4HZMST(HZM)'?.P D  Q
 ..S MTXT(I,J)=MTXT(I,J)_"<tr><td colspan=""2"" class=""celldata"" style=""color:"_$$CUSTCOLOR($$BGCOLOR(N))_"""> [ "_$$H2U^%L1FRM($$HRAED^W4HZMST(HZM))_" ] </td></tr>"
 .I +$$TSHL^W4HZMST(HZM)=+$$ITRA^W4HZMST(HZM),'$$FAST^W4MTAW(N) D  ; -- LO SHULAM
 ..S SOAD=$$SOAD^W4HZMST(HZM) I 'SOAD D  Q
 ...S MTXT(I,J)=MTXT(I,J)_"<tr><td>&nbsp;</td></tr>"
 ..S MTXT(I,J)=MTXT(I,J)_"<tr class=""busy""><td>&nbsp;"_$$^%W1DICT("AVMSD")_" </td>"
 ..S MTXT(I,J)=MTXT(I,J)_"<td class=""celldata"">"_$J($$TSHL^W4HZMST(HZM)/SOAD,2,2)_"</td></tr>"
 .I +$$TSHL^W4HZMST(HZM)=+$$ITRA^W4HZMST(HZM),$$FAST^W4MTAW(N) D  ; -- LO SHULAM
 ..S MTXT(I,J)=MTXT(I,J)_"<tr class=""busy""><td>&nbsp;"_$$^%W1DICT("QNITEMS")_" </td>"
 ..S MTXT(I,J)=MTXT(I,J)_"<td class=""celldata"">"_$J($$TOTQN^W4HZMST(HZM),2)_"</td></tr>"
 ;
 I STAT="FREE",'$$^W4SMALL D
 .I $L($$ORDPLC(N)) D
 ..S MTXT(I,J)=MTXT(I,J)_"<tr><td style=""font-size:"_$$^W3FSZ(8)_""" >"
 ..S MTXT(I,J)=MTXT(I,J)_"<img src=""w3telblack.jpg"" width=""20"" height=""20"" />"
 ..S MTXT(I,J)=MTXT(I,J)_$$^%W1DICT("ORDEREDTO",$$ORDPLC(N))
 ..S MTXT(I,J)=MTXT(I,J)_"</td></tr>"
 .
 .I '$$MGR S MTXT(I,J)=MTXT(I,J)_"<tr><td>&nbsp;</td></tr>"
 .
 .S MTXT(I,J)=MTXT(I,J)_"<tr><td>&nbsp;</td></tr>"
 .I $$MGR D
 ..N LHL S LHL=$O(@$$^W4GL("P1HL")@(+N,99999999),-1)
 ..Q:'LHL
 ..I +$G(@$$^W4GL("P1HL")@(+N,LHL))'=P1DZ Q
 ..S MTXT(I,J)=MTXT(I,J)_"<tr><td style=""text-align:center;font-weight:bold"">"_$$^%W1DICT("SHOWHISTORY")_"</td></tr>"
 .
 .I '$L($$ORDPLC(N)) D
 ..S MTXT(I,J)=MTXT(I,J)_"<tr><td>&nbsp;</td></tr>"
 ;
 S MTXT(I,J)=MTXT(I,J)_"</table>"
 ;;S ^MTXT(I,J)=$E(MTXT(I,J),1,400)
 Q
 ;
 ;
GROUP ;
 S MGROUP(1,"I")="ALL"
 S MGROUP(1)=$$^%W1DICT("ALLKINDS")
 S MGROUP(1,"TO")="ClickGroup('ALL')"
 ;
 N COLOR,SUGS S COLOR=0
 S SUGS="" F I=2:1 S SUGS=$O(@$$^W4GL("SUGS")@(SUGS)) Q:SUGS=""  D
 .N BGCOLOR S BGCOLOR=$$BGCOLORS(SUGS)
 .N FGCOLOR S FGCOLOR=$$FGCOLORS(SUGS)
 .I $L(BGCOLOR),BGCOLOR'="FFFFFF" S COLOR=1
 .I $L(FGCOLOR),FGCOLOR'="000000" S COLOR=1
 D
 .S SUGS="" F I=2:1 S SUGS=$O(@$$^W4GL("SUGS")@(SUGS)) Q:SUGS=""  D
 ..N SUGS1 S SUGS1=$G(@$$^W4GL("SUGS")@(SUGS))
 ..D
 ...I $$TMPENG^%W1LNG,SUGS1["=" S SUGS1=$$SPA^%L1FRM($P(SUGS1,"=")),MGROUP(I)=SUGS1 Q
 ...I SUGS1["=",$L($P(SUGS1,"=",2,20)) S SUGS1=$P(SUGS1,"=",2,20)
 ...S MGROUP(I)=$$H2U^%L1FRM(SUGS1)
 ..S MGROUP(I,"I")=SUGS
 ..S MGROUP(I,"TO")="ClickGroup('"_SUGS_"')"
 ..I COLOR D
 ...S MGROUP(I,"BG")=$$BGCOLORS(SUGS)
 ...S MGROUP(I,"FG")=$$FGCOLORS(SUGS)
 Q
 ;
 ;
FUNC ;
 N NF S NF=0
 I '$D(HZGULM) D
 .I $G(@TMPS@("LSH"))="" Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PGDN")
 .S MFUNC(NF,"TO")="PageDown()"
 .I $G(@TMPS@("PG"))<2 Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PGUP")
 .S MFUNC(NF,"TO")="PageUp()"
 ;
 I $D(HZGULM),'$$GETP^%W1PRM("OLDSHOW") D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("OLDSHOW")
 .S MFUNC(NF,"TO")="OldShow()"
 .S MFUNC(NF,"BG")="orange"
 .S MFUNC(NF,"FG")="black"
 ;
 I $$ULAM^W4PRM,$$GETP^%W1PRM("OLDSHOW") D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("HOWEVERSHOW")
 .S MFUNC(NF,"TO")="HoweverShow()"
 .S MFUNC(NF,"BG")="orange"
 .S MFUNC(NF,"FG")="black"
 ;
 I '$$MOVEFROM,'$$^W4SMALL D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("SEARCHORDER")
 .S MFUNC(NF,"TO")="FindOrder()"
 .S MFUNC(NF,"I")="FIND"
 .
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PRESENTWATCH")
 .S MFUNC(NF,"TO")="Shaon()"
 .
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("MISC")
 .S MFUNC(NF,"TO")="Misc()"
 .S MFUNC(NF,"BG")="orange"
 .S MFUNC(NF,"FG")="black"
 ;
 I '$$POS^W4MTAW D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("FREETABLES")
 .S MFUNC(NF,"TO")="FreeTables()"
 .S MFUNC(NF,"I")="FREE"
 .I $$STATUS="FREE" D
 ..S MFUNC(NF,"FG")=$$DAGESH
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("BUSYTABLES")
 .S MFUNC(NF,"TO")="BusyTables()"
 .S MFUNC(NF,"I")="BUSY"
 .I $$STATUS="BUSY" D
 ..S MFUNC(NF,"FG")=$$DAGESH
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("ALLTABLES")
 .S MFUNC(NF,"I")="ALL"
 .S MFUNC(NF,"TO")="AllTables()"
 .I $$STATUS="ALL" D
 ..S MFUNC(NF,"FG")=$$DAGESH
 ;
 I $$SUPER^W3PRM!$$TAW^W4PRM!$$CREDFUNC^W4PRM D CREDFUNC
 ;
 I $$MGR,'$G(@$$^W4PRM@("NOCLSMGR")) D  Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("DAYCLOSING")
 .S MFUNC(NF,"TO")="CloseDay()"
 .S MFUNC(NF,"BG")="red"
 .S MFUNC(NF,"FG")="white"
 ;
 I $$MSL^W4PRM D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("TAKEAWAYORDERS")
 .S MFUNC(NF,"TO")="TakeAwayOrders()"
 .S MFUNC(NF,"BG")="orange"
 .S MFUNC(NF,"FG")="black"
 ;
 I $$MKBL^W4SETSUG(MLZR),'$$^W4SMALL,$$SYS^W4DLVCSR D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("TODLV")
 .S MFUNC(NF,"TO")="ToDlv('"_MLZR_"')"
 .S MFUNC(NF,"BG")="orange"
 .S MFUNC(NF,"FG")="black"
 ;
 Q
 ;
CREDFUNC ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("ISSUEINVOICE")
 S MFUNC(NF,"TO")="IssueInvoice()"
 S MFUNC(NF,"BG")="lightblue"
 S MFUNC(NF,"FG")="black"
 ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("PAY4CREDIT")
 S MFUNC(NF,"TO")="Pay4Credit()"
 S MFUNC(NF,"BG")="lightblue"
 S MFUNC(NF,"FG")="black"
 ;
 I $G(@$$^W4PRM@("TMLAK")) D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("DELIVERYDOC")
 .S MFUNC(NF,"TO")="ShippingRecord()"
 .S MFUNC(NF,"BG")="lightblue"
 .S MFUNC(NF,"FG")="black"
 ;
 I $G(@$$^W4PRM@("SPKKUP")) D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("BACK2MLY")
 .S MFUNC(NF,"TO")="Back2Mly()"
 .S MFUNC(NF,"BG")="lightblue"
 .S MFUNC(NF,"FG")="black"
 Q
 ;
DAGESH(STAM) ;
 Q "red;text-decoration:underline"
 ;
TMPS ;
 S TMPS="^[$$^W3MAIN]TMPS(JB)"
 Q
 ;
TMPSB ;
 S TMPSB="^[$$^W3MAIN]TMPSB(JB)"
 Q
 ;
VIEW ;
 N HG S HG=75
 I $$MGR S HG=69
 I '$$MGR S KOTMLZ("MSD")=""
 S KOTMLZ("MRQ")=""
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 I $$^W4TABLET,'$$MGR K KOTMLZ
 D ^W4SHEET(.KOTMLZ,$$CURSUG,"","",HG)
 I '$$^W4SMALL D ^W4STAMP
 I $D(MTXT)<10,'$$MGR^W4KOTMLZ D
 .W "<script>",!
 .W "MsgI('THISKINDOFTABLENOTFINDED')",!
 .W "</script>",!
 Q
 ;
PG(STAM) D TMPS
 I $G(@TMPS@("PG"))="" Q 1
 Q $G(@TMPS@("PG"))
 ;
PGDN(PRM) ;
 N LAST,PG
 D TMPS
 S PG=$G(@TMPS@("PG"))
 I PG<1 S PG=1
 S LAST=$G(@TMPS@("LSH"))
 I LAST="" Q "END"
 S @TMPS@("BEG")=LAST
 S PG=PG+1
 S @TMPS@("PG")=PG
 Q 1
 ;
PGUP(PRM) ;
 N LAST,PG,N
 D TMPS
 S PG=$G(@TMPS@("PG"))
 I PG<2 Q "START"
 S @TMPS@("PG")=PG-1
 S @TMPS@("BEG")=$G(@TMPS@("LSH",PG-2))
 Q 1
 ;
 ;
PGBG ;
 S N=PG(PG)-1
 Q N
 ;
ESC K %L1SC(HZSCR)
 S %BS=1 G END
 ;
FREE ;
 D TMPS,TMPSB
 S @TMPS@("STATUS")="FREE"
 S @TMPSB@("STATUS")="FREE"
 S @TMPS@("PG")=1
 K @TMPS@("LSH")
 Q
BUSY ;
 D TMPS,TMPSB
 S @TMPS@("STATUS")="BUSY"
 S @TMPSB@("STATUS")="BUSY"
 S @TMPS@("PG")=1
 K @TMPS@("LSH")
 Q
ALL ;
 D TMPS,TMPSB
 S @TMPS@("STATUS")="ALL"
 S @TMPSB@("STATUS")="ALL"
 S @TMPS@("PG")=1
 K @TMPS@("LSH")
 Q
SETRNG ;
 I $$HZGSHALL^W4PRM D ALL Q
 D BUSY
 Q
 ;
HZ(NMB) ;
 N HZ S HZ=$$^W4HZFR(NMB)
 N HZM S HZM=$O(@$$^W4GL("P1HL")@(NMB,""),-1)
 I HZM="ycg"!(HZM="NEW"),$G(@$$^W4GL("P1HL")@(NMB,HZM,"POS"))=$$^W4MYDVN D  Q 0
 .K @$$^W4GL("P1HL")@(NMB,HZM)
 Q HZ
 ;
FIND ;
 S @TMPS@("STATUS")="FIND"
 S @TMPS@("PG")=1
 K @TMPS@("LSH")
 Q
 ;
HISTORY ;
 Q
 ;
SHULH(STAM) D TMPS
 Q $G(@TMPS@("SHULH"))
 ;
BEG(STAM) D TMPS
 Q $G(@TMPS@("BEG"))
 ;
LASTI(STAM) D TMPS
 Q $G(@TMPS@("LASTI"))
 ;
LASTJ(STAM) D TMPS
 Q $G(@TMPS@("LASTJ"))
 ;
TAWSH(STAM) D TMPS
 Q $G(@TMPS@("TAWSH"))
 ;
STATUS(STAM) D TMPS
 Q $G(@TMPS@("STATUS"))
 ;
MLZRONLY(STAM)
 D TMPS
 Q $G(@TMPS@("MLZRONLY"))
 ;
MLZR(STAM)
 I $G(%ARG("MLZR")) Q %ARG("MLZR")
 Q $$GET^%W1PRM("MLZR")
 ;
MGR(STAM) ;
 I +$$MLZR=+$G(@$$^W4PRM@("PSW")) Q 1
 Q 0
 ;
MNL(STAM) ;
 N OV S OV=$$GETP^%W1PRM("MLZR") I 'OV Q 0
 I $$MNL^W4SETSUG(OV) Q 1
 Q 0 
 ;
CURSUG(STAM)
 D TMPS
 I $G(@TMPS@("CURSUG"))="" Q "ALL"
 Q $G(@TMPS@("CURSUG"))
 ;
SETSUG(GR,PR)
 D TMPS
 I '$G(PR) S @TMPS@("CURSUG")=GR
 I $G(PR) S @TMPS@("CURSUG")=$G(@TMPS@("CURSUG"))_","_GR
 S @TMPS@("PG")=1
 K @TMPS@("LSH")
 K @TMPS@("BEG")
 K @TMPS@("LASTI")
 K @TMPS@("LASTJ")
 K @TMPS@("SHULH")
 Q
 ;
SETCURSUG(MLZR) ;
 D ^W4SETSUG(MLZR)
 Q
 ;
POS(STAM)
 Q %REM
 ;
ME(STAM)
 Q $G(@$$^W4GL("P1MSMKS")@($$POS))
 ;
AD(STAM)
 Q $G(@$$^W4GL("P1MSMKS")@($$POS,"AD"))
 ;
CLEARFLAG(JB) ;
 D CLEARPOS^W4KLFL
 N MYDV S MYDV=$$^W4MYDVN
 N N S N="" F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  Q:N>999  D
 .N HZN S HZN=$$HZ(N)
 .I 'HZN K @$$^W4GL("W4TBSTAT")@(MYDV,N) Q
 .S @$$^W4GL("W4TBSTAT")@(MYDV,N)=HZN
 Q
 ;
CHANGE(MYDV) ;
 I $G(MYDV)="" Q 0
 N TMPS D TMPS
 N TB S TB=""
 N OK S OK=0
 N LAST S LAST=$G(@TMPS@("LSH"))
 I 'LAST S LAST=999
 N PG S PG=$G(@TMPS@("PG")) I PG<1 S PG=1
 N PREVLAST S PREVLAST=$G(@TMPS@("LSH",PG-1))
 ;
 N N S N=PREVLAST F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  Q:N>999  Q:N>LAST  D
 .N HZN S HZN=$$HZ(N)
 .I 'HZN,'$D(@$$^W4GL("W4TBSTAT")@(MYDV,N)) Q
 .I HZN,$G(@$$^W4GL("W4TBSTAT")@(MYDV,N))=HZN Q
 .S OK=1
 ;
 Q OK
 ;
 ;;F  S TB=$O(@$$^W4GL("W4TBSTAT")@(MYDV,TB)) Q:TB=""  D  Q:OK
 .I TB'>LAST&(TB>PREVLAST) S OK=1
 Q OK
 ;
MOVEFROM(STAM) ;
 Q $$^W4MVFROM
 ;
MVALLFREE(NMBTO) ;
 I '$G(NMBTO) Q -1
 N A,ORD,ORDTO,NMBFROM,MLZFROM,MLZTO
 S ORD=$$ORD^W4MVFROM I 'ORD Q $$MVERR(-2)
 S MLZFROM=$$MLZ^W4MVFROM I 'MLZFROM Q $$MVERR(-2.5)
 S NMBFROM=$$^W4MVFROM I 'NMBFROM Q $$MVERR(-2.7)
 S MLZTO=$$GETP^%W1PRM("MLZR") I 'MLZTO Q $$MVERR(-3)
 N LASTHZ S LASTHZ=$O(@$$^W4GL("P1HL")@(NMBTO,99999999),-1)
 ;
 I LASTHZ>ORD D  Q $S(A>0:A,1:$$MVERR(A))
 .S A=$$^W4GETHZ(ORD) I A<0 S A=A-10 Q
 .D PUT^%W1PRM("NMB",NMBTO)
 .N A1 S A1=$$GETP^%W1PRM("MOVEFROM") S $P(A1,";",4)=2
 .D PUT^%W1PRM("MOVEFROM",A1)
 .D PUT^%W1PRM("HZM",0)
 .D PUT^%W1PRM("DELROW",1)
 .S A=$$TVMVAB^W4ORDVFN(ORD,MLZFROM) I A<1 S A=A-50 Q
 .S $P(@$$^W4MAIN("TMPMV")@("HD"),"~",1)=NMBTO
 .S $P(@$$^W4MAIN("TMPMV")@("HD"),"~",18)=MLZTO
 .S ORDTO=$$MVFROM^W4ORDVFN(3) ; 2
 .I ORDTO<0 S A=ORDTO-100 Q
 .S A="9;"_ORDTO
 ;
 D KILL^W4MVFROM
 D KILLVD0^W4MVFROM
 Q $$^W4MVTBA(ORD,NMBFROM,NMBTO,MLZTO)
 ;
 ;
MVERR(ER)
 D KILL^W4MVFROM
 D KILLVD0^W4MVFROM
 Q ER
 ;
SETMLZR ;
 Q:'$G(%ARG("MLZR"))
 N OV S OV=%ARG("MLZR")
 N MLZRO S MLZRO=$$GET^%W1PRM("MLZR")
 I MLZRO'=OV D
 .D KILL^%W1PRM("HZM")
 .D KILL^%W1PRM("NMB")
 D PUT^%W1PRM("MLZR",$$DOP^W4NAME(OV))
 N LNGDF S LNGDF=$$^W4GL("W1LNG")
 I LNGDF=""!(LNGDF="H") D PUT^%W1PRM("LNG","H")
 I $D(@$$^W4GL("W4WRKENG")@(OV)) D PUT^%W1PRM("LNG","E")
 Q
 ;
DESCR(N) ;
 N DESCR S DESCR=$$SPA^%L1FRM($$LKH^W4L(N))
 I '$L(DESCR) Q ""
 I DESCR?1N.N Q ""
 N TBL S TBL=$$TV^%W1DICT($$^%W1LNG,"SHULHAN")
 I $$^W4SMALL!$$MTAW^W4MTAW,$P(DESCR," ")?1N.N,$P(DESCR," ",2)=TBL Q ""
 I $$^W4SMALL!$$MTAW^W4MTAW,$P(DESCR," ",2)?1N.N,$P(DESCR," ",1)=TBL Q ""
 I DESCR?1TBL Q ""
 I $$^%W1LNG'="H" Q ""
 Q "<span style=""font-size:"_$$^W3FSZ(8)_";color:black"">"_$$H2U^%L1FRM(DESCR)_"</span>"
 ;
BGCOLOR(SHULH) ;
 N SUGS S SUGS=$$SUGS^W4L(SHULH)
 I SUGS="" Q ""
 Q $$BGCOLORS(SUGS)
 ;
BGCOLORS(SUGS) N CV S CV=$P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\")
 Q $$^W1CV(CV)
 ;
 ;
FGCOLOR(SHULH) ;
 N SUGS S SUGS=$$SUGS^W4L(SHULH)
 I SUGS="" Q ""
 Q $$FGCOLORS(SUGS)
 ;
FGCOLORS(SUGS) N FG S FG=$P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",2)
 I FG="",$L($$BGCOLORS(SUGS)) S FG="000000"
 Q $$^W1CV(FG)
 ;
RKV(RKV,COLOR) ;
 I $G(COLOR)="" S COLOR="green"
 Q "&nbsp;&nbsp;<span style=""color:"_COLOR_";font-weight:bold"">"_RKV_"</span>"
 ;
INIT ;
 N MYDVN S MYDVN=$$^W4MYDVN
 D ^W4IN
 D TMPS,TMPSB
 D GLORD^W4HZMST
 K @$$^W4GL("W4TBSTAT")@(MYDVN)
 ;
 J CLEARFLAG(JB)
 D KILL^%W1PRM("PRSNLSET")
 D KILL^%W1PRM("PRSNLMENU")
 D KILL^%W1PRM("PRSNLCUR")
 ;
 I '$$VOZVR2MLZ,'$$PSWDRG^W4PRM,'$$ASKWAITERNUMBER^W4PRM D
 .D KILL^%W1PRM("MNL")
 ;
 D ^W4CLEAR
 I $G(%ARG("NEW")) K ^[$$^W3MAIN]TMPS(JB)
 ;
 D GETTBL^W4ORDPLC($$^W4DZ)
 ;
 I $G(%ARG("FIRST")) K @TMPSB
 D PUT^%W1PRM("MZVHSB",+$G(%ARG("MZVHSB")))
 ;
 I $G(%ARG("NEW")) D
 .D KILL^%W1PRM("WASPSW")
 .K @TMPS
 .S (SHULH,@TMPS@("SHULH"))=""
 .N OLDSHOW S OLDSHOW=$$GETP^%W1PRM("OLDSHOW")
 .;;S STATDFLT=$S($$ULAM^W4PRM&(OLDSHOW=2!(OLDSHOW=1&'$$HZGSHALL^W4PRM)):"BUSY",'$$ULAM^W4PRM&'$$HZGSHALL^W4PRM:"BUSY",1:"ALL")
 .S STATDFLT=$S($$ULAM^W4PRM&(OLDSHOW=2!(OLDSHOW=1&'$$HZGSHALL^W4PRM)):"BUSY",$G(@$$^W4PRM@("DFLTBUSY")):"BUSY",1:"ALL")
 .I OLDSHOW=2 D PUT^%W1PRM("OLDSHOW",1)
 .;;S STATDFLT="ALL"
 .S (GR,@TMPS@("STATUS"))=STATDFLT
 .S (CURSUG,@TMPS@("CURSUG"))=STATDFLT
 .N POSGRT S POSGRT=+$G(@$$^W4GL("W4POSGRT")@(MYDVN))
 .I POSGRT D SETSUG(POSGRT)
 .I $$ALL^W4MVFROM=1!($$ALL^W4MVFROM=3) D FREE
 .I $$ALL^W4MVFROM=2 D BUSY
 .I $$MGR D
 ..I $L($G(@TMPSB@("STATUS"))) S @TMPS@("STATUS")=@TMPSB@("STATUS") Q
 ..D BUSY
 .S (PG,@TMPS@("PG"))=1
 .N HZM S HZM=$$GET^%W1PRM("HZM")
 .I $$^W4ISORD(HZM),'$$MOVEFROM S SHULH=$$NMB^W4HZMST(HZM) S @TMPS@("SHULH")=SHULH
 .I '$G(@$$^W4PRM@("MLZ")) S @TMPS@("MLZRONLY")=1
 .
 ;
 I $$ZAHI^W4PRM=2,'$$MGR^W4KOTMLZ D
 .S %ARG("MLZR")=$G(@$$^W4GL("W4POSWTR")@(MYDVN))
 .I '%ARG("MLZR") S %ARG("MLZR")="00001"
 .D PUT^%W1PRM("MLZR",%ARG("MLZR"))
 ;
 Q
 ;
JUMP(NMB) ;
 ;;S ^AA("W4HZGSH-JUMP","NMB")=NMB
 N %ARG,MLZ
 S %ARG("NEW")=1,%ARG("JUMP")=1
 D INIT^W4HZGMLZ D INIT^W4HZGSH
 ;;S NMB=$$^W4PRMSRV(NMB)
 S MLZ=""
 I NMB[";" S MLZ=$P(NMB,";",2),NMB=$P(NMB,";")
 D:NMB PUT^%W1PRM("NMB",NMB),PUT^%W1PRM("LASTNMB",NMB)
 I MLZ S MLZ=$TR($J(MLZ,5)," ",0) D PUT^%W1PRM("MLZR",MLZ)
 D SET^W4KLFL(NMB)
 Q $$^W4HZFR(NMB)
 ;
 ;
SHOW(PRMSL) ;
 N QNORD,QNORDS,SSUM,SSUMS,SSOAD,SSOADS,AVRG,AVRGS
 D FRMSHOW
 ;
 S TB=TB_"<tr><td>"
 N OPORD S OPORD="QNOPENORDERS"
 I PRMSL S OPORD="QNOPENDLVORDERS"
 S TB=TB_$$^%W1DICT(OPORD)_"</td><td>"_$$RKV(QNORD)_"</td>"
 S TB=TB_"<td>"_$$^%W1DICT("TOSUM")_"</td><td>"_$$RKV($J(SSUM,2,2))_"</td>"
 ;
 I 'PRMSL D
 .S TB=TB_"<td>"_$$^%W1DICT("GUESTSQN")_"</td><td>"_$$RKV(SSOAD)_"</td>"
 .S TB=TB_"<td>"_$$^%W1DICT("AVMSD")_"</td><td>"_$$RKV($J(AVRG,2,2))_"</td>"
 ;
 I PRMSL D
 .S TB=TB_"<td>&nbsp;</td><td>&nbsp;</td>"
 .S TB=TB_"<td>&nbsp;</td><td>&nbsp;</td>"
 ;
 S TB=TB_"<td>&nbsp;</td>"
 I 'PRMSL D
 .S TB=TB_"<td style=""font-weight:bold"">"_$$^%W1DICT("TOTMANY")_"</td>"
 .S TB=TB_"<td> "_$$RKV($J(SSSUM+SSSUMS,2,2),"brown")_"</td>"
 ;
 I PRMSL D
 . S TB=TB_"<td style=""font-weight:bold"">"_$$^%W1DICT("TOTCLORDERS")_"</td>"
 . S TB=TB_"<td>"_$$RKV($J(SSSUMS,2,2),"brown")_"</td>"
 ;
 S TB=TB_"</tr>"
 ;
 N CLORD S CLORD="QNCLOSEORDERS"
 I PRMSL S CLORD="QNCLOSEDLVORDERS"
 S TB=TB_"<tr><td>"
 S TB=TB_$$^%W1DICT(CLORD)_"</td><td>"_$$RKV(QNORDS)_"</td>"
 S TB=TB_"<td>"_$$^%W1DICT("TOSUM")_"</td><td>"_$$RKV($J(SSUMS,2,2))_"</td>"
 ;
 I 'PRMSL D
 .S TB=TB_"<td>"_$$^%W1DICT("GUESTSQN")_"</td><td>"_$$RKV(SSOADS)_"</td>"
 .S TB=TB_"<td>"_$$^%W1DICT("AVMSD")_"</td><td>"_$$RKV($J(AVRGS,2,2))_"</td>"
 ;
 I PRMSL D
 .S TB=TB_"<td>&nbsp;</td><td>&nbsp;</td>"
 .S TB=TB_"<td>&nbsp;</td><td>&nbsp;</td>"
 ;
 S TB=TB_"<td>&nbsp;</td>"
 ;
 I 'PRMSL,SSSOAD+SSSOADS D
 . S TB=TB_"<td style=""font-weight:bold"">"_$$^%W1DICT("TOTAVMSD")_"</td>"
 . S TB=TB_"<td>"_$$RKV($J((SSSUM+SSSUMS)/(SSSOAD+SSSOADS),2,2),"brown")_"</td>"
 ;
 I 'PRMSL,'(SSSOAD+SSSOADS) D
 . S TB=TB_"<td>&nbsp;</td>"
 ;
 S TB=TB_"</tr>"
 Q
 ;
ORDPLC(NMB) ;
 Q $G(TBLORD(NMB))
 ;
CUSTCOLOR(BGCLR) ;
 I $E(BGCLR)="F" Q "black"
 Q "red"
 ;
NOPAID(HZ) ; 
 N PAIDTIME
 S PAIDTIME=$$PAIDTIME^W4PRM
 I 'PAIDTIME Q 0
 N LASTJB
 S LASTJB=$O(@$$^W4ORD@(HZ,"JB",9999999999),-1) 
 I 'LASTJB Q 0
 N LASTTIME S LASTTIME=$G(@$$^W4ORD@(HZ,"JB",LASTJB))
 S LASTTIME=$P(LASTTIME,"  ",2) 
 N H S H=LASTTIME*3600+($P(LASTTIME,":",2)*60)
 N RZN S RZN=$P($H,",",2)-H
 I RZN>(PAIDTIME*60)!(RZN<0) Q 1 
 Q 0 
 ;
FRMSHOW0 ;
 S (SSSUM,SSSUMS,SSSOAD,SSSOADS)=0
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 N N S N="" F  S N=$O(@$$^W4GL("P1H")@(P1DZ,N)) Q:N=""  D
 .I '$$TSHL^W4HZMST(N) Q
 .I '$$^W4CLOSE(N) D
 ..S SSSUM=SSSUM+$$TSHL^W4HZMST(N)
 ..S SSSOAD=SSSOAD+$$SOAD^W4HZMST(N)
 .I $$^W4CLOSE(N) D
 ..S SSSUMS=SSSUMS+$$TSHL^W4HZMST(N)
 ..S SSSOADS=SSSOADS+$$SOAD^W4HZMST(N)
 Q
 ;
FRMSHOW ; 
 S (QNORD,QNORDS,SSUM,SSUMS,SSOAD,SSOADS)=0,(AVRG,AVRGS)=""
 S PRMSL=+$G(PRMSL)
 N N S N="" F  S N=$O(@$$^W4GL("P1H")@(P1DZ,N)) Q:N=""  D
 .I 'PRMSL,$$HZM^W4MSL(N) Q
 .I PRMSL,'$$HZM^W4MSL(N) Q
 .I '$$^W4CLOSE(N) D
 ..S QNORD=QNORD+1
 ..S SSUM=SSUM+$$TSHL^W4HZMST(N)
 ..S SSOAD=SSOAD+$$SOAD^W4HZMST(N)
 .I $$^W4CLOSE(N) D
 ..S QNORDS=QNORDS+1
 ..S SSUMS=SSUMS+$$TSHL^W4HZMST(N)
 ..S SSOADS=SSOADS+$$SOAD^W4HZMST(N)
 I SSOAD S AVRG=SSUM/SSOAD
 I SSOADS S AVRGS=SSUMS/SSOADS
 Q
 ;
MZVHSB() ; 
 I $G(%ARG("MZVHSB")) Q 1
 ;;I $$GETP^%W1PRM("MZVHSB") Q 1
 Q 0 
 ;
PCHSB(PRM)
 N HZM S HZM=$$^W4HZFR(PRM)
 I HZM<1 Q "NOTORDER"
 D PUT^%W1PRM("HSBENG",0)
 Q $$PCHSB^W4MENUBT(HZM)
 ;
MZVFIRE() ; 
 I $G(%ARG("MZVFIRE")) Q 1
 Q 0 
 ;
PCFIRE(PRM)
 N HZM S HZM=$$^W4HZFR(PRM)
 I HZM<1 Q "NOTORDER"
 Q $$PCHSB^W4MENUBT(HZM)
 ;
W6NMB(NMB) ; 
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("W6")@(N)) Q:N=""  D  Q:OK
 .I $G(^(N,"NMB"))=NMB S OK=1 
 Q OK
 ;
VOZVR2MLZ()
 I $$POS^W4MTAW!$$TOITEMS^W4PAYFN Q 2
 I $$MGR^W4KOTMLZ!$$TOTABLES^W4PAYFN Q 1
 Q 0 
 ;
 
 
 
 
 
 
 
 

W4HZGSHB
W4HZGSHB ; [ 08.12.20 07:33 ] [ 19.02.12 11:34 ] [ 03.04.10 13:23 ] 
 N (JB,%ARG,%REM,MLZR,%BS,TAWSH,SHULH)
 I $D(SHULH),SHULH>999 K SHULH
 I $D(SHULH),SHULH>$O(@$$^W4GL("LKH")@(1000),-1) K SHULH
 D GLORD^W4HZMST
 ;
 S COLX=7,COLY=7,SH=1,US="1=1"
 S PG=1,PG(PG)=1,STATUS="ALL",SUGSV=0
 ;
 S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  I ^(N)="xa" S SUGSV=N Q
 ;
BGL S %TO="",N="",PG=1
LOOP K MTXT S I=1,J=0
 S MTXT("DOUBLE")="",COLY=6 ; -- NAJAT 2 RAZA
 S MTXT("KOT")="D KOT^W4HZGSH(MTXT(""KOT"",""KOT""))"
 S MTXT("KOT","MLZR")=MLZR
 S MTXT("KOT","BARMAN")=""
 S KOTMLZ=$$H2U^%L1FRM($$^W4NAME(MTXT("KOT","MLZR"))_" : onxa ")
 ;
 I $G(INDEX) S MTXT("KOT","KOT")=$$HB(INDEX_" : ogley ")
 I $G(IHUD)  S MTXT("KOT","KOT")=$$HB(IHUD_" : iy`x ogley  - zepgley ceg` ")
 I '$G(IHUD) S MTXT("KOT","KOT")=$G(MTXT("KOT","KOT"))_KOTMLZ
 ;
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  Q:$$^W4MSL(N)  D  Q:I>(COLY-1)
 .N HZM S HZM=$$HZ(N)
 .
 .I STATUS="FREE",HZM Q
 .I STATUS="BUSY",'HZM Q
 .I HZM>0,$$^W4MLZCRD'="",$$MKBL^W4HZMST(HZM)'=MLZR Q  ; POK-T TOLKO SHULH ETOGO MELZ
 .I SUGSV,$$SUGS^W4L(N)'=SUGSV Q  ; - POK-T TOLKO VYBR SUG SHULH
 .I $D(IHUD),HZM Q
 .I $D(IHUD),$D(@$$^W4GL("P1EZBI")@(N)),^(N)'=IHUD Q  ; POK-T TOLKO SHULH MEUHADIM
 .I $D(HEARA),'HZM Q
 .I $D(HEARA),HZM,$P($G(@GLORD@("HR2")),"\\")'[HEARA Q
 .I $G(@$$^W4GL("P1MSKS")@(MYDVN)),N<^(MYDVN) Q
 .I $G(@$$^W4GL("P1MSKS")@(MYDVN,"AD")),N>^("AD") Q
 .S J=J+1 I J>(COLX-1) S J=1,I=I+1 Q:I>(COLY-1)
 .
LHZG .I $$HZ(N) D  Q
 ..S HZM=$$HZ(N),H=$G(@GLORD),MLZ1=""
 ..S MLZ=$P(H,"\",18) I MLZ S MLZ1=$$^W4NAME(MLZ)
 ..S SOAD=$P(H,"\",24)
 ..S MTXT(I,J)=$$HBR^%L1FRM($P($G(@GLORD@("HR2")),"\\"),10)_$$HBR^%L1FRM(MLZ1,10)
 ..S MTXT(I,J,"I")=N
 ..;;S MTXT(I,J,"BT")=%CV("CB")
 ..;;I MLZ=MLZR S MTXT(I,J,"BT")=%CV("GB")
 .
 .I '$$HZ(N) D  Q
 ..S MTXT(I,J)=N_" ogley"
 ..I $$SUGL1^W4L(N)["OTH",$$LKH^W4L(N)'["ogley" S MTXT(I,J)=$$LKH^W4L(N)_" "_MTXT(I,J)
 ..S MTXT(I,J,"I")=N
 ..;;S MTXT(I,J,"BT")=%CV("WB")
 ..I $D(IHUD),$G(@W4GL("P1EZBI")@(N))=IHUD ;;S MTXT(I,J,"BT")=%CV("CB")
 ..I $D(@$$^W4GL("P1EZBI")@(N)) D
 ...S MTXT(I,J)=" --> "_$$H2U^%L1FRM(^(N)_" "_MTXT(I,J))_" "
 ..;;S MTXT(I,J,"F")=%CV("BF")
 ;
MET S LSH=N,LASTI=I,LASTJ=J
 ;
 I $D(SHULH),SHULH'<LSH G PGDN
 ;
 I $D(SHULH) D
 .N II,JJ,OKS S OKS=0
 .F II=1:1:COLY-1 D  Q:OKS
 ..F JJ=1:1:COLX-1 D  Q:OKS
 ...I $D(MTXT(II,JJ,"I")),MTXT(II,JJ,"I")=SHULH S OKS=II-1*COLX+JJ
 .I OKS S SH=OKS
 ;
 I $$^W4MSL(LSH) S LSH=""
 ;
 S X0=2,Y0=4
 S MGROUP(1)="mibeqd lk"
 S MGROUP(1,"TO")="#0"
 ;
 F I=1:1:COLY-1 F J=1:1:COLX-1 D  ; -- CVETA IND SHULH
 .Q:'$D(MTXT(I,J))
 .S SUGS=$$SUGS^W4L(MTXT(I,J,"I")) Q:SUGS=""
 .;;S MTXT(I,J,"BI")=$G(@$$^W4GL("SUGS")@(SUGS,"BI"),%CV("CB"))
 .;;S MTXT(I,J,"FI")=$G(@$$^W4GL("SUGS")@(SUGS,"FI"),%CV("BF"))
 ;
 D
 .S MFNC1(1)="dxrd zclwd"
 .S MFNC1(1,"TO")="F1"
 .S MFNC1(2)="dxrd yetig"
 .S MFNC1(2,"TO")="F6"
 .S MFNC1(3)="ogley ly dixehqid"
 .S MFNC1(3,"TO")="F5"
 .S MFNC1(4)="zepgley cegi`"
 .S MTXT(4,"TO")="INS"
 ;
 S MFNC2(1)="dpnfd yetig"
 S MFNC2(1,"TO")="FIND"
 S MFNC2(2)="`ad sc"
 S MFNC2(2,"TO")="PGDN"
 S MFNC2(3)="mcew sc"
 S MFNC2(3,"TO")="PGUP"
 S MFNC2(4)="miept zepgley"
 S MFNC2(4,"TO")="FREE"
 S MFNC2(5)="miqetz zepgley"
 S MFNC2(5,"TO")="BUSY"
 ;;S MFNC2(6,"BT")=%CV("MB")
 S MFNC2(7)="zepgleyd lk"
 S MFNC2(7,"TO")="ALL"
 ;;S MFNC2(8,"BT")=%CV("MB")
 S MFNC2(9)="d`ivi"
 S MFNC2(9,"TO")="ESC"
 ;
P1 D VIEW
 Q
 ;
VIEW ;
 D ^W4SHEET(KOTMLZ,$$CURSUG^W4HZGSH,$$STATUS^W4HZGSH)
 Q
 ;
CHOICE(%TO) ; INDEX - SHULHAN
 ;
 I '$D(GLORD) D GLORD^W4HZMST
 I %TO="",'$D(IHUD),$G(INDEX),$G(OLDINDEX)=INDEX,$G(OLDTO)="" D  G END
 .S %L1SC(HZSCR,"NMB")=$S($G(@$$^W4GL("P1EZBI")@(INDEX)):^(INDEX),1:INDEX)
 ;
 S OLDTO=%TO
 I %TO="" D:$G(INDEX)  S OLDINDEX=$G(INDEX) G:$D(IHUD) BGL G P1
 .N HZM,I S HZM=$$HZ(INDEX)
 .I 'HZM K MTXT("HEADN") F I=1,4 S MTXT(I,COLX,"DIS")=""
 .I $D(IHUD),'$D(@$$^W4GL("P1EZB")@(IHUD,INDEX)) D  Q
 ..S @$$^W4GL("P1EZB")@(IHUD,INDEX)="",@$$^W4GL("P1EZBI")@(INDEX)=IHUD
 .;;**;;I $D(IHUD),$D(@$$^W4GL("P1EZB")@(IHUD,INDEX)) S %GET("IS")=" ceg`n ogley i`vedl " D IS^%L1GET I YES K @$$^W4GL("P1EZB")@(IHUD,INDEX),@$$^W4GL("P1EZBI")@(INDEX) Q
 .
 .I HZM D
 ..F I=1:1:COLY K MTXT(I,COLX,"DIS")
 ..S NMB=$P($G(@GLORD),"\") Q:'NMB
 ..S MTXT("HEADN")="D HRA^W4HZGSH"
 ..S MTXT("HEADN","HZM")=HZM
 ..S MTXT("HEADN","NMB")=NMB
 ;
 I $E(%TO)["#" S SUGSV=$E(%TO,2,8) G BGL
 ;
 I $E(%TO)="&" R INDEX S INDEX=+INDEX G PGBG
 ;
 I %TO?1U.E,$T(@%TO)'="" G @%TO
 ;
 I %TO?1N.N R INDEX S INDEX=%TO_INDEX G PGBG
 G P1
END I $G(%L1SC(HZSCR,"NMB")) D ^W4KLNEW(%L1SC(HZSCR,"NMB"))
 Q
 ;
HRA ;
 I '$D(GLORD) D GLORD^W4HZMST
 N HZM S HZM=$G(MTXT("HEADN","HZM")) Q:HZM=""
 ;;**;;S %SAY=$$HBR^%L1FRM($P($G(@GLORD@("HR2")),"\\"),18)_" : "_MTXT("HEADN","NMB")_" ogleyl dxrd " X %XMSGN
 Q
 ;
PGDN ;
 N STAT S STAT=""
 I LSH="" S STAT="END",N=PG(PG)-1 G PGDNE
 S PG=PG+1,PG(PG)=LSH
 S N=LSH-1
PGDNE Q N_";"_STAT
 ;
PGUP ;
 I PG=1 S STAT="BEG",N=PG(PG)-1 G PGUPE
 S PG=PG-1,N=PG(PG)-1
PGUPE Q N_";"_STAT
 ;
PGBG ;
 S N=PG(PG)-1
 Q N
 ;
ESC K %L1SC(HZSCR)
 I $D(HEARA) K HEARA G BGL
 I $D(IHUD) K IHUD G BGL
 S %BS=1 G END
 ;
FREE ;
 S STATUS="FREE" Q
BUSY ;
 S STATUS="BUSY" Q
ALL ;
 S STATUS="ALL" Q
HZ(NMB) ;
 Q $$^W4HZFR(NMB)
 ;
FIND ;
 I '$D(GLORD) D GLORD^W4HZMST
 G:'HZM PGBG
 N MKBL S MKBL=$$MKBL^W4HZMST(HZM) I $$^W4HZPROT(MKBL,MLZR) G PGBG
 I '$$^W4CLOSE(HZM) S %L1SC(HZSCR,"NMB")=$P($G(@GLORD),"\") G END
 G PGBG
 ;
HB(TXT) ;
 Q $$H2U^%L1FRM(TXT)
 

W4HZGSPK
W4HZGSPK ; [ 01.06.17 13:12 ] [ 06.02.11 13:50 ] [ 05.02.11 20:51 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4HZGSPK")
 D PUT^%W3DEB("W4HZGSPK","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 S MSD=$G(%ARG("MSD"))
 I 'MSD S MSD=$$GET^%W1PRM("MSD")
 I 'MSD W " Restaurant number is not defined ! " Q
 ;
 W "<div align=""center"" >",!
 W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("SUPPLLIST")_"</span>",!
 W "<br />",!
 W "<table id=""TblLkh"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""95%"">",!
 W "<tr id=""trth"" style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)
 W """ >"
 W " <th width=""5%"">"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
 W " <th>"_$$^%W1DICT("SPKNUMBER")_"</th>"
 W " <th>"_$$^%W1DICT("SPKNAME")_"</th>"
 I '$$NOCOLEMAIL D
 .W " <th>"
 .W "  "_$$^%W1DICT("EMAIL")
 .W " </th>"
 I '$$NOCOLTEL1 D
 .W " <th>"
 .W "  "_$$^%W1DICT("TEL1")
 .W " </th>"
 I '$$NOCOLTEL2 D
 .W " <th>"
 .W "  "_$$^%W1DICT("TEL2")
 .W " </th>"
 I '$$NOCOLADR D
 .W " <th>"
 .W "  "_$$^%W1DICT("ADDRESS")
 .W " </th>"
 I '$$NOCOLCITY D
 .W " <th>"
 .W "  "_$$^%W1DICT("CITY")
 .W " </th>"
 W "</tr>"
 ;
 S I=0
 I $G(%ARG("SPK")),$D(@$$^W4MAIN("VRM")@(%ARG("SPK"))) D HZGSP(%ARG("SPK")) G BUT
 ;
 S SSPK1=$$SRCH($G(%ARG("SPK1")),"H")
 S SIR=$$SRCH($G(%ARG("IR")),"H")
 S SSTREET=$$SRCH($G(%ARG("STREET")),"H")
 S SCOMP=$$SRCH($G(%ARG("COMP")),"H")
 S STEL=$$SRCH($G(%ARG("TEL")),"TEL")
 S SPELE=$$SRCH($G(%ARG("PELE")),"TEL")
 S SCITY=$$SRCH($G(%ARG("CITY")),"H")
 S SHOME=$$SRCH($G(%ARG("HOME")))
 S SFLAT=$$SRCH($G(%ARG("FLAT")))
 ;
 D PUT^%W3DEB("W4HZGSPK","SSPK1=SSPK1 & SIR=SIR & STEL=STEL& SCITY=SCITY")
 ;
 S N="" F  S N=$O(@$$^W4MAIN("VRM")@(N)) Q:N=""  D
 .S SPK1=$$NAME^W4SPK(N)
 .S OK=1
 .I SSPK1'?." " D  Q:'OK
 ..I SPK1'[SSPK1 S OK=0
 .
 .S IR=$$IR^W4SPK(N)
 .I SIR'?." " D  Q:'OK
 ..I IR'=SIR S OK=0
 .
 .I $L(STEL) D  Q:'OK
 ..S TELA=$TR($$TELA^W4SPK(N),"-","")
 ..I TELA=STEL Q
 ..S TELB=$TR($$TELB^W4SPK(N),"-","")
 ..I TELB=STEL Q
 ..S PELE=$TR($$PELE^W4SPK(N),"-","")
 ..I PELE'=STEL S OK=0
 .
 .I $L(SPELE) D  Q:'OK
 ..S TELA=$TR($$TELA^W4SPK(N),"-","")
 ..I TELA=SPELE Q
 ..S TELB=$TR($$TELB^W4SPK(N),"-","")
 ..I TELB=SPELE Q
 ..S PELE=$TR($$PELE^W4SPK(N),"-","")
 ..I PELE'=SPELE S OK=0
 .
 .S CITY=$$IR^W4SPK(N)
 .I $L(SCITY) D  Q:'OK
 ..I CITY'=SCITY S OK=0
 .
 .S HOME=$$BAIT^W4SPK(N)
 .I $L(SHOME) D  Q:'OK
 ..I HOME'=SHOME S OK=0
 .
 .S FLAT=$$DIRA^W4SPK(N)
 .I $L(SFLAT) D  Q:'OK
 ..I FLAT'=SFLAT S OK=0
 .
 .D HZGSP(N)
 ;
 W "</table>",!
 W "</div>",!
 W "<br />",!
 W "<br />",!
BUT ;
 W "<div id=""divbut"" align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr><td>"
  D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
 W "</td>"
 W "<td>"
  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 W "</td>"
 W "</tr>",!,"</table>",!
 W "</div>",!
 ;
 Q
HZGSP(N) ;
 S I=I+1
 W "<tr"
 D
 .W " onClick=""OpenSuppl('"_N_"')"" "
 .W " style=""cursor:pointer"" "
 W ">"
 W " <td style=""background-color:#fafad2"">"
 W "     "_I
 W " </td>"
 ;
 W " <td id=""spk"_N_""" >"
 W "     "_N
 W " </td>"
 ;
 W " <td>"
 W "   "_$$RKV($$NAME^W4SPK(N),"H")
 W " </td>"
 ;
 I '$$NOCOLEMAIL D
 .W " <td dir=""LTR"">"
 .W "   "_$$RKV($$EMAIL^W4SPK(N))
 .W " </td>"
 ;
 I '$$NOCOLTEL1 D
 .W " <td dir=""LTR"">"
 .W "   "_$$RKV($$TELB^W4SPK(N))
 .W " </td>"
 ;
 I '$$NOCOLTEL2 D
 .W " <td dir=""LTR"">"
 .W "   "_$$RKV($$PELE^W4SPK(N))
 .W " </td>"
 ;
 I '$$NOCOLADR D
 .W " <td>"
 .W "   "_$$RKV($$KTV2^W4SPK(N),"H")
 .W " </td>"
 ;
 I '$$NOCOLCITY D
 .W " <td>"
 .W "   "_$$RKV($$IR^W4SPK(N),"H")
 .W " </td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
RKV(RKV,PR) ;
 I $G(RKV)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(RKV)
 Q RKV
 ;
SRCH(SRCH,PR)
 S SRCH=$$CNWEB^%L1FRM(SRCH) I $L(SRCH) D
 .S SRCH=$$SPA^%L1FRM(SRCH)
 .I $G(PR)="TEL" S SRCH=$TR(SRCH,"-!\/_ ","")
 .I $G(PR)="H" S SRCH=$$INVH^%L1FRM(SRCH)
 Q SRCH
 ;
NOCOLCOMP(STAM) ;
 Q $G(%ARG("NOCOL1"))
 ;
NOCOLEMAIL(STAM) ;
 Q $G(%ARG("NOCOL2"))
 ;
NOCOLTEL1(STAM) ;
 Q $G(%ARG("NOCOL3"))
 ;
NOCOLTEL2(STAM) ;
 Q $G(%ARG("NOCOL4"))
 ;
NOCOLADR(STAM) ;
 Q $G(%ARG("NOCOL5"))
 ;
NOCOLCITY(STAM) ;
 Q $G(%ARG("NOCOL6"))
 ;
 ;
SELCITY ;
 W "<select id=""city"">",!
 W "<option value="""">"_$$^%W1DICT("ALLCITIES")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4MAIN("VRMCITY")@(N)) Q:N=""  D
 .W "<option value="""_$$CLWEB^%L1FRM(N)_""">"_$$H2U^%L1FRM($$INVH^%L1FRM(N))_"</option>",!
 W "</select>",!
 Q
 ;
COL ;
 W "<tr><td>"_$$^%W1DICT("EMAIL")_"<td><td><input type=""checkbox"" id=""col2"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TEL1")_"<td><td><input type=""checkbox"" id=""col3"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("TEL2")_"<td><td><input type=""checkbox"" id=""col4"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDRESS")_"<td><td><input type=""checkbox"" id=""col5"" checked=""checked"" /></td></tr>",!
 W "<tr><td>"_$$^%W1DICT("CITY")_"<td><td><input type=""checkbox"" id=""col6"" checked=""checked"" /></td></tr>",!
 Q
 ;
KILLVRM ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMCITY")
 Q
 ;
INIT ;
 D KILLVRM
 ;
 D ^W3CSS
 ;
 K @$$^W4MAIN("VRM")
 D
 .N N,GL D GL
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..M @$$^W4MAIN("VRM")@(N)=@GL@(N)
EIN Q
 ;
GL ;
 S GL=$$^W4GL("W4SPK")
 Q
 

W4HZGT
W4HZGT(HZM) ; GET HAZMANA (P1HZ --> THZ($P))                 [ 09.02.21 11:20 ] [ 14.09.18 17:39 ] [ 15.04.18 10:54 ] 
GET Q:'HZM
 N I,L,MAC1,MAC2,%FNAME
 K @$$^W4MAIN("THZ"),@$$^W4MAIN("THZ1") S %FNAME="HZM"
 S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4THZ D ^%S1GC1
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .K @$$^W4THZ@(I)
 .S MAC1=$$^W4ORD_"(HZM,I)",MAC2=$$BG^W4THZ1_"I)" D ^%S1GC1
 ;
 I '$D(HZSCR) D ^W4IN
 ;
 ;;D ^W4SETHN1(HZM)
 ;
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 S SHUL1=SHUL+ODEF+ODEFTL
 ;
 S OTL="" I 'ODEF,ODEFTL S ODEF=ODEFTL,OTL="yelz"
 S NMB1=$$^W4NMTB(NMB)
 ;
 ;;I $G(@$$^W4PRM@("HNH")) S HNHAH=""
 I 'HNHAH,HNH S HNHAH=""
 ;
 I $$^W4MSL(NMB) D
 .S MSD=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",3)
 .I $$^W4CLOSE(HZM) S CODTS=""
 .S MSD1="" I MSD S MSD1=$G(@$$^W4GL("P1MSD")@(MSD))
 .S CODTS1="" I CODTS S CODTS1=$G(@$$^W4GL("P1CODTS")@(CODTS))
 .S AZOR=$$AZOR^W4HZMST(HZM)
 .F L="IR","MIKUD","PELE" D
 ..X "S "_L_"=$$"_L_"^W4HZMST(HZM)"
 ..I $G(@L)="" X "S "_L_"=$$"_L_"^W4L(NMB)"
 .
 .D HRL,KHZ
 ;
 S TM=$G(@$$^W4ORD@(HZM,"ETTM"))
 S PSL1="" I $G(PSL) S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 S ARZ1="" I $G(ARZ) S ARZ1=$G(@$$^W4GL("P1ARZ")@(ARZ))
 S HOVA=$$ITRA^W4L(NMB)
 I $G(NMB),$D(@$$^W4GL("P1EZL")@(NMB)),$G(@$$^W4PRM@("LIMIT")) D
 .S HOVA=$G(@$$^W4GL("P1LIM")@(NMB,$E($$^%L1DC(P1DZ,2),1,4)))
 ;
 S ITRA=TSHL+$G(TIP)-$G(SHUL)-$G(SHULA)
 I ITRA>.1!(ITRA<-.1),$$^W4CLOSE(HZM),$$^%L1DC(DATK,3)=P1DZ D
 .S @$$^W4ORD@(HZM,"S")=($G(@$$^W4ORD@(HZM,"S"))#2)
 ;
 S HSB2=$G(@$$^W4ORD@(HZM,"ETHB2"))
 ;
 S:'$D(HNH2) HNH2=0
 ;
 I $D(@$$^W4ORD@(HZM,"CB","ASR",1)),'$D(@$$^W4ORD@(HZM,"CB","ASR",2)) D
 .S LKHN=$P(^(1),"*")
 ;
 S LKHN1="" I $$^W4ISCDLK(LKHN) S LKHN1=$$LKH^W4L(LKHN)
 S MKBL1="" D
 .I $L($G(@$$^W4ORD@(HZM,"MKBN"))) S MKBL1=$G(^("MKBN")) Q
 .I $G(MKBL) S MKBL1=$G(@$$^W4GL("NAME")@(MKBL,1))
 ;
 I '$$^W4MSL(NMB) D
 .I $G(@$$^W4PRM@("HNH")) D GA^W4SCREF("P1HNHES",$$^W4ORD_"(HZM,""HNH"")")
 .S ZMANI=$$^%L1TM(LASTU) I ZMANI=" 0:00" S ZMANI=""
 .S MLZR1=MKBL1,MLZR=MKBL
 .S MSOAD="" I '$$^W4MSL($G(NMB)),$G(SOAD)>0,$G(TSHL)>0 S MSOAD=$J(TSHL/SOAD,2,2)
 ;
 I $D(@$$^W4ORD@(HZM,"DMSAH")) S VVDMSAH=""
 Q
 ;
 ;
HRL ;
 S HRL=""
 I NMB D
 .N %SCRN,%L1SCREF S %SCRN="LKHP"
 .S %L1SCREF("N")=3
 .S %L1SCREF("S")=$G(@$$^W4GL("LKH")@(NMB,2))
 .D ^W4SCREF
 ;
 I $G(IHZM)="l" S HRL="! dpnfd lawl `l" Q
 I $G(ICH)="l" S HRL="! wiy lawl `l" Q
 I $G(ICR)="l" S HRL="! dtwdl xey` oi`" Q
 Q
 ;
KHZ Q:'$G(NMB)  Q:'$$^W4MSL(NMB)
 N N,I S N="",I=0 F  S N=$O(@$$^W4GL("P1HL")@(NMB,N)) Q:N=""   D
 .I N'>HZM!(HZM=$$NEW^W4KLNEW) S I=I+1
 S KHZ=I+$G(@$$^W4GL("P1CHZM")@(NMB))
 Q
 
 
 
 
 
 
 
 

W4HZGULM
W4HZGULM ; [ 04.12.18 17:19 ] [ 27.06.18 17:40 ] [ 24.06.18 13:53 ] 
 N (JB,%ARG,%REM,MLZR,TAWSH,CURSUG)
 S MYDVN=$$^W4MYDVN
 S ULAM=$$ULAM
 ;
 D IN^W4CRULAM
 D INIT^W4CRULAM
 ;
 I ULAM D PUT^%W1PRM("CRULAM",ULAM)
 ; 
 D KOT^W4HZGSH
 S HZGULM=""
 I '$$MZVHSB,'$$MZVFIRE D FUNC^W4HZGSH
 ;
 D GETTBL^W4ORDPLC($$^W4DZ)
 S KOTMLZ("MSD")="",KOTMLZ("MRQ")=""
 I $$^W4TABLET,'$$MGR^W4HZGSH K KOTMLZ
 D ^W4SHEET(.KOTMLZ,"","","",.1)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" "
 W ">",!
 ;
 S I=0
 S N=0 F  S N=$O(@$$^W4GL("W4ULAM")@(N)) Q:N=""  I $D(^(N))>9 S I=I+1
 S MAXU=I
 ;
 D
 .W "<table cellpadding=""5px"" cellspacing=""10px"" >",!
 .W " <tr height=""40px"">",!
 .N N,NI S N="",NI=0
 .F  S N=$O(@$$^W4GL("W4ULAM")@(N)) S:N NI=NI+1 Q:N=""
 .N SM S SM=$S(NI>2:10,NI=2:20,1:30)
 .W "<td width="""_(20+SM)_"%"">&nbsp;</td>",!
 .
 .S N=0 F  S N=$O(@$$^W4GL("W4ULAM")@(N)) Q:N=""  D
 ..I $D(^(N))<10 Q
 ..W "<td "_$$^W4TOUCH_"=""ClickUlam('"_N_"')"" "
 ..W " width=""13%"" "
 ..W " style=""font-weight:bold;border:2px brown solid;text-align:center;cursor:pointer;"
 ..W " background-color:"_$S(N=$$CURULAM:"white",1:"lightgrey")_""" "
 ..W ">"_$$ULAMNAME(N)_"</td>"
 .W "<td width="""_SM_"%"">&nbsp;</td>",!
 .W "<td width=""10%"" align=""center"" "
 .I $$^W4MVFROM W "&nbsp;</td></td></table>" Q
 .
 .I '$$MZVFIRE D
 .. I '$$MZVHSB W " style=""cursor:pointer;border:dotted 2px red;font-weight:bold;background-color:yellow"" ",! Q
 .. I $$MZVHSB W "style=""cursor:pointer;border:solid 2px black;font-weight:bold;"_$$GRAD1^W3CSM("#FFD51E","LIGHTYELLOW")_""" " Q
 . W " "_$$^W4TOUCH_"=""GoBill()"" "
 .W ">"
 . I '$$MZVHSB,'$$MZVFIRE W $$^%W1DICT("PRINTBILL")
 . I $$MZVHSB,'$$MZVFIRE W $$^%W1DICT("ISSUEBILLOPTION")
 .W "</td>",!
 .
 .I '$$MZVHSB D
 ..W "<td width="""_$S($$MZVFIRE:15,1:10)_"%"" align=""center"" "
 .. I '$$MZVFIRE W " style=""cursor:pointer;border:solid 2px yellow;font-weight:bold;background-color:red;color:yellow"" ",!
 .. I $$MZVFIRE W "style=""cursor:pointer;border:solid 2px black;color:black;font-weight:bold;"_$$GRAD1^W3CSM("#FF0000","LIGHTYELLOW")_""" "
 .. W " "_$$^W4TOUCH_"=""GoFire()"" "
 ..W ">"
 .. I '$$MZVFIRE W "FIRE"
 .. I $$MZVFIRE W $$^%W1DICT("FIREOPTION")
 ..W "</td>"
 .
 .W "</tr></table>",!
 ;
 I ULAM W "<br>",!
 ;
 S %ARG("ULAM")=ULAM
 D SHOWULAM^W4CRULAM(0)
 ;
 D ^W4PCACNT
 ;
 W "</div>",!
 ;
 I '$$^W4MVFROM D
 .W "<script>",!
 .W " TestStatus()",!
 .W "</script>",!
 Q
 ;
CURULAM(STAM) ;
 Q +$$GETP^%W1PRM("CRULAM")
 ;
ULAMNAME(ULAM) ;
 N NM S NM=$$ULAMNAME^W4POSULM(N)
 I NM="" Q $$^%W1DICT("ULAM")_" "_ULAM
 Q $$H2U^%L1FRM(NM)
 ;
MZVHSB() ;
 Q $$MZVHSB^W4HZGSH
 ;
MZVFIRE() ;
 Q $$MZVFIRE^W4HZGSH
 ;
ULAM(STAM) ;
 N ULAM
 I $G(%ARG("ULAM")) Q %ARG("ULAM")
 S ULAM=$G(@$$^W4GL("W4POSULM")@(MYDVN))
 I ULAM,'$G(%ARG("ULAM")) S %ARG("ULAM")=ULAM
 Q ULAM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZHC
W4HZHC ; DOCH HAZMANOT;   [ 20.05.26 10:10 ] [ 09.02.26 13:59 ] [ 17.11.25 09:54 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K ^D
 I '$D(@$$^W4GL("P1IR")@(0)),$D(@$$^W4GL("P1IR"))>9 D
 .S @$$^W4GL("P1IR")@(0)="TAKEAWAY"
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")=$G(%ARG("REPN"))
 ;
 N TMPAZ S TMPAZ="^|$$^W3MAIN|TMPAZ" K @TMPAZ
 N N S N="" F  S N=$O(@$$^W4GL("W4PLGN")@(1,"DESCR",N)) Q:N=""  D
 .S @TMPAZ@(N)=$G(^(N))
 ;
 S TMPIR=$$^W4MAIN("TMPIR") K @TMPIR
 N IRS S IRS="" F  S IRS=$O(@$$^W4GL("P1IR")@(IRS)) Q:IRS=""  D
 .N IR1 S IR1=$G(^(IRS))
 .I $L(IR1) D
 ..S @TMPIR@(IR1)=IRS
 ..I IR1="dewz gzt" S IR1="deewz gzt" S @TMPIR@(IR1)=IRS
 Q
 ;
TRH ;-- NOT IN USE
 I %REPN="HZH"!(%REPN="HZH1")!(%REPN="HZHQ"),DATH<(METRH-120) S OK=0 Q
 I %REPN="HZHM",DATH<METRH S OK=0 Q
 I DATH>ADTRH S OK=0 Q
 Q
 ;
 ;
HZM ;
 N PRMSD,PRMSL,PRMSH
 S PRMSD=0,PRMSL=0,PRMSH=0
 ;
 ;
 I $$^W4HZMH(HZM) S OK=0 Q
 I $$I^W4PIZUL(HZM) S OK=0 Q
 ;
 N SUGS
 ;
 I %REPN="HZH"!(%REPN="HZH1")!(%REPN="HZHQ")!(%REPN="HZMKR") S PRMSL=1
 I %REPN="HZHM" S PRMSD=1
 ;
 S TMPIR=$$^W4MAIN("TMPIR")
 S %SCRN=$S(PRMSL:"P1HZ",1:"P1HZMS")
 ;
 I '$$TAKEAWAY^W4HZMST(HZM),$$HZM^W4MSL(HZM) S PRMSH=1
 I $$TAKEAWAY^W4HZMST(HZM),$$HZM^W4MSL(HZM) S PRMSH=2
 I $G(MESUGH),MESUGH>PRMSH S OK=0 Q
 I $G(ADSUGH),ADSUGH<PRMSH S OK=0 Q
 ;
 D GA^W4SCREF(%SCRN,$$^W4ORD_"(HZM)")
 I '$$DELIS^W4PRM S MKR=$$MKRDLV^W4HZMST(HZM)
 I $$DELIS^W4PRM S MKR=$$MKRDLV1^W4HZMST(HZM)
 ;
 S HZMMKR=$$HZLAKNOM^W4HZMST(HZM)
 I $E(HZMLAK)="W" S HZMLAK=$E(HZMLAK,2,20)
 S BAIT=$$BAIT^W4HZMST(HZM),DIRA=$$DIRA^W4HZMST(HZM)
 I BAIT,DIRA S BAIT=BAIT_"/"_DIRA
 S ADR=BAIT_" "_$$KTV^W4HZMST(HZM)
 ;
 S IR=$$IR^W4HZMST(HZM)
 S IR=$$RPL^%L1FRM(IR,"HD_","")
 ;
 S (AZOR,AZOR1)=""
 ;
 D
 .N MAP
 .S AZOR=$$AZOR^W4HZMST(HZM)
 .I AZOR S AZOR1=$G(^|$$^W3MAIN|TMPAZ(AZOR))
 ;
 S SOAD=$$^W4SOAD(HZM)
 ;
 I $$SF^W4PRM,$$DEL^W4DEL(HZM) S OK=0 Q  ; *** -- 25/08/19 LEV
 ;
 I PRMSL D  S:$$^W4MSD(NMB) OK=0 Q:OK'=1  ; -- MISHLOHIM
 .S SHAA=$P($P(SHAA,":",1,2)," ")
 .I $$GET^%W1PRM("NOSHOWDELZIC"),$$DEL^W4DEL(HZM)!($$TSHL^W4HZMST(HZM)<0) S OK=0
 ;
 I PRMSD D  S:$$^W4MSL(NMB) OK=0 Q:OK'=1  ; ---- MISSADA
 .S TRH=$P(ZMANK,"  ")
 .S SHAA=$P(ZMANK,"  ",2)
 ;
 N DTH S DTH=$$^%L1DC(TRH,3)
 D D(.1)
 I DTH<METRH S OK=0 Q
 D D(.2)
 I DTH>(ADTRH+1) S OK=0 Q
 D D(.3)
 I DTH=(ADTRH+1),SHAA'<$$SHAAZ^W4PRM!'$$^W4SHAAZ S OK=0 Q
 I DTH=METRH,SHAA<$$SHAAZ^W4PRM S OK=0 Q
 D D(.4)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DTH,8)) S OK=0 Q
 ;
 I $$^W4ISCDLK(LKHN) S NMB=LKHN
 N NMB1 S NMB1=$TR(NMB,"-","")
 D D(.5)
 I NMB1<$TR(MENMB,"-","")!(NMB1>$TR(ADNMB,"-","")) S OK=0 Q
 ;
 D D(.6)
 S SUGS=$$SUGL^W4L(NMB)
 I $$TAW^W4DLPK(NMB) S SUGS=$$TAW
 I $G(ADSUGS),SUGS<MESUGS!(SUGS>ADSUGS) S OK=0 Q
 D D(.7)
 S SUGS1=$$SUGL1^W4L(NMB)
 D D(1)
 I PRMSL,$G(MEPSL),PSL<MEPSL!(PSL>$G(ADPSL)) S OK=0 Q
 ;
 S IR=$$SPA^%L1FRM($G(IR))
 I $$^W4MSL(NMB),IR="" S IR="TAKEAWAY"
 I IR="eti aia` lz" S IR="aia` lz"
 I IR["milyexi" S IR="milyexi"
 ;
 I $$^W4MSL(NMB),$G(MEIR)=0,ADIR=0,'$$TAKEAWAY(IR) S OK=0 Q
 I $G(MEIR)=1,$G(ADIR),ADIR=$O(@$$^W4GL("P1IR")@(999999),-1),'$$TAKEAWAY(IR) G VIBMKBL
 I '$G(MEIR),$G(ADIR),ADIR=$O(@$$^W4GL("P1IR")@(999999),-1)!(ADIR>99999) G VIBMKBL
 I $G(MEIR)?1N.N,$G(ADIR)?1N.N,$L(IR),$G(@TMPIR@(IR))<MEIR!($G(@TMPIR@(IR))>ADIR) S OK=0 Q
 ;
VIBMKBL ;
 D D(2)
 I $G(MEMKBL),$G(ADMKBL),MKBL<MEMKBL!(MKBL>ADMKBL) S OK=0 Q
 I $G(MEMKR),$G(ADMKR),MKR<MEMKR!(MKR>ADMKR) S OK=0 Q
 ;
 I ADSHAA>24,ADSHAA<40,$$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM,$$^%L1DC($P(ZMANK,"  "),3)=METRH S OK=0 Q
 I MESHAA[":"!(ADSHAA[":"),MESHAA<40,ADSHAA<40 S OK=$$VIBTIME^%W1PCP(MESHAA,ADSHAA,SHAA) Q:'OK
 I MESHAA'[":",ADSHAA'[":" D
 .S SHAA1=$S($$^W4SHAAZ&(SHAA<$$SHAAZ^W4PRM)&(ADSHAA>24):SHAA+24,1:SHAA)
 .I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 D D(3)
 ;
 N STS,I D MVT
 S QUERY=$G(QUERY)
 ;
 S SUGT="",STS=$G(@$$^W4ORD@(HZM,"CB"))
 F I=2:1:5 I $P(STS,"\",I) S SUGT=SUGT_(I-1)_","
 I $P(STS,"\",9) S SUGT=SUGT_"5,"
 I SUGT'[4,$D(@$$^W4ORD@(HZM,"CB","ASR")) S SUGT=SUGT_"4,"
 D
 .N NN S NN="" F  S NN=$O(@$$^W4ORD@(HZM,"CB","ASR",NN)) Q:NN=""  I NN D
 ..N A S A=$G(^(NN))
 ..I $$LKCIB,$P(A,"*")=$$LKCIB S SUGT=SUGT_"8,"
 ..I $$LKTNB,$P(A,"*")=$$LKTNB S SUGT=SUGT_"10,"
 ;
 S SUGT=$E(SUGT,1,$L(SUGT)-1)
 ;
TS ;
 S MESUGT=$G(MESUGT)
 I '$G(ADSUGT) S ADSUGT=99999
 ;
 D D(5)
 I MESUGT>0 S OK=0 F I=MESUGT:1:ADSUGT I SUGT[I S OK=1 Q
 I MESUGT>0 Q:'OK
 ;
 ;
 D D(6)
 S SHL=$G(%ARG("SHL"))
 I SHL=1&(SHUL<TSHL)!(SHL=2&(SHUL'<TSHL)) S OK=0 Q
 ;
 S SHAASG=$ZD($$MKRTIME^W4HZMST(HZM),"24:60")
 S TRLK=$$CMNT^W4HZMST(HZM)
 ;
 D D(7)
 N TS
 S TS=TSHL
 ;
 I $G(MESUGT) D
 .N SUGTA
 .S SUGTA="",TS=0
 .N J F J=1:1:$L(SUGT,",") D 
 ..N SGT S SGT=$P(SUGT,",",J)
 ..I SGT<MESUGT!(SGT>$G(ADSUGT)) Q
 ..S SUGTA=SUGTA_SGT_","
 .S TS=$$SUMTS(HZM,SUGTA)
 .S SUGT=SUGTA
 ;
 I PRMSL D  Q
 .I $G(%REPN)="HZHQ" S x1=$$QN(HZM,TSHL) Q
 .S x1=DMSH,x2=TS,x3=$$QN(HZM,TSHL),x4=$$TIP^W4HZMST(HZM)
 .
 .I %REPN="HZH1",'$$TAKEAWAY^W4HZMST(HZM) D
 ..S x5=$$KTV^W4HZMST(HZM)
 ..S x6=$$HRA^W4HZMST(HZM)
 ;
 S x1=-$$SBIT^W4HZMST(HZM),x2=-$$SHNHP^W4HZMST(HZM)
 S x3=$$SHNH^W4HZMST(HZM)+$$IGUL^W4HZMST(HZM)
 S x4=DMSH,x5=TS,x7=$G(SOAD)
 ;
 S x7=$$^W4SOAD(HZM)
 ;
 S x6=""
 I x2+x3+TS'<1 S x6=$J((x2+x3/(TS+x2+x3))*100,2,2) ; -- TS OR TSHL ??
 Q
 ;
 ;
TAW(STAM) ;
 N N,OK S N="",OK=0
 F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D  Q:OK
 .I $TR(^(N),". ","")="TAW"!($TR(^(N),". ","")="TAKEAWAY") S OK=1
 Q N
 ;
 ;
MVT ;
 S MVT(1)="onefn"
 S MVT(2)="wiy"
 S MVT(3)="`-k"
 S MVT(4)="dtwd"
 S MVT(5)="yelz"
 Q
 ;
 ;
PRM ;
 S MENMB=$G(%ARG("MENMB"))
 S ADNMB=$G(%ARG("ADNMB")) I 'ADNMB S ADNMB=999
 S MESUGS=$G(%ARG("MESUGS"))
 S ADSUGS=$G(%ARG("ADSUGS")) I 'ADSUGS S ADSUGS=99999
 S MEPSL=$G(%ARG("MEPSL"))
 S ADPSL=$G(%ARG("ADPSL")) I 'ADPSL S ADPSL=9999
 S MEMKBL=$G(%ARG("MEMKBL"))
 S ADMKBL=$G(%ARG("ADMKBL")) I 'ADMKBL S ADMKBL=99999
 S MEMKR=$G(%ARG("MEMKR"))
 S ADMKR=$G(%ARG("ADMKR")) I 'ADMKR S ADMKR=99999
 S MESHAA=$G(%ARG("MESHAA"))
 S ADSHAA=$G(%ARG("ADSHAA"))
 I 'ADSHAA S ADSHAA=99
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 S MESUGT=$G(%ARG("MESUGT"))
 S ADSUGT=$G(%ARG("ADSUGT")) I 'ADSUGT S ADSUGT=99
 Q
 ;
TAKEAWAY(IR) ;
 I $TR(IR," .","")'="TAKEAWAY",$TR(IR," .","")'="TAW" Q 0
 Q 1
 ;
D(NOM) ; 
 ;;S ^D(HZM)=NOM 
 Q 
 ;
QN(HZM,TSHL) ; 
 N HZMI S HZMI=$$I^W4DEL(HZM)
 I HZMI,HZMI'=HZM Q -1
 I HZMI,HZMI=HZM Q 0 
 I 'HZMI,TSHL<-.9 Q 0
 I $$^W4PIZUL(HZM) Q 2
 Q 1 
 ;
SUGT1(SUGT) 
 ;;S ^AA("W1PCP","SUGT",SUGT)=""
 N DLM S DLM=" "
 N SUGT1
 N J S SUGT1="" F J=1:1:$L(SUGT,DLM) D
 .N SUG S SUG=$P(SUGT,DLM,J) Q:'SUG
 .S SUGT1=$G(@$$^W4GL("W3SUGTS")@(SUG))_" "_SUGT1
 Q SUGT1
 ;
LKCIB(STAM)
 I $G(@$$^W4PRM@("CIBUS")) Q ^("CIBUS")
 I $G(@$$^W4PRM@("WEB","CIBUS")) Q ^("CIBUS")
 Q ""
 ; 
LKTNB(STAM)
 I $G(@$$^W4PRM@("10BIS")) Q ^("10BIS")
 I $G(@$$^W4PRM@("WEB","10BIS")) Q ^("10BIS")
 Q ""
 ;
SUMTS(HZM,SUGT) ; 
 N TS,TSCIB,TSTNB
 S TS=0 
 S SUGT=","_SUGT_","
 I SUGT[",1," S TS=TS+$$MZM^W4HZMST(HZM)
 I SUGT[",2," S TS=TS+$$CHK^W4HZMST(HZM)
 I SUGT[",3," S TS=TS+$$CA^W4HZMST(HZM)
 ;
 I SUGT[",8," D
 .N SUM S SUM=0
 .N NN S NN="" F  S NN=$O(@$$^W4ORD@(HZM,"CB","ASR",NN)) Q:NN=""  I NN D
 ..N A S A=$G(^(NN))
 ..I $$LKCIB,$P(A,"*")=$$LKCIB S SUM=SUM+$P(A,"*",4)
 .S TSCIB=SUM
 .S TS=TS+TSCIB
 ;
 I SUGT[",10," D
 .N SUM S SUM=0
 .N NN S NN="" F  S NN=$O(@$$^W4ORD@(HZM,"CB","ASR",NN)) Q:NN=""  I NN D
 ..N A S A=$G(^(NN))
 ..I $$LKTNB,$P(A,"*")=$$LKTNB S SUM=SUM+$P(A,"*",4)
 ..S TSTNB=SUM
 ..S TS=TS+TSTNB
 ;
 I SUGT[",4," S TS=TS+$$ASR^W4HZMST(HZM)
 I SUGT[",4,",SUGT[",8," S TS=TS-TSCIB
 I SUGT[",4,",SUGT[",10," S TS=TS-TSTNB
 Q TS
 ;
 ; 
MKR ; 
 S MKR1=$G(@$$^W4GL("W3MKR")@(MKR))
 I $$DELIS^W4PRM S MKR1=$G(@$$^W4GL("W3MKR1")@(MKR))
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZHC1
W4HZHC1 ; DOCH HAZMANOT;   [ 27.12.18 06:16 ] [ 26.12.18 12:51 ] [ 20.12.18 19:35 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K ^D
 I '$D(@$$^W4GL("P1IR")@(0)),$D(@$$^W4GL("P1IR"))>9 D
 .S @$$^W4GL("P1IR")@(0)="TAKEAWAY"
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")=$G(%ARG("REPN"))
 ;
 S TMPIR=$$^W4MAIN("TMPIR") K @TMPIR
 N IRS S IRS="" F  S IRS=$O(@$$^W4GL("P1IR")@(IRS)) Q:IRS=""  D
 .N IR1 S IR1=$G(^(IRS)) I $L(IR1) S @TMPIR@(IR1)=IRS
 Q
 ;
TRH ;
 I DATH<(METRH-60) S OK=0 Q
 I %REPN="HZHM",DATH<METRH S OK=0 Q
 I DATH>ADTRH S OK=0 Q
 Q
 ;
 ;
HZM ;
 S PRMSD=0,PRMSL=0
 ;
 S PRMSL=1
 ;
 S TMPIR=$$^W4MAIN("TMPIR")
 S %SCRN=$S(PRMSL:"P1HZ",1:"P1HZMS")
 ;
 D GA^W4SCREF(%SCRN,$$^W4ORD_"(HZM)")
 ;
 S BAIT=$$BAIT^W4HZMST(HZM),DIRA=$$DIRA^W4HZMST(HZM)
 I BAIT,DIRA S BAIT=BAIT_"/"_DIRA
 S ADR=BAIT_" "_$$KTV^W4HZMST(HZM)
 ;
 S IR=$$IR^W4HZMST(HZM)
 ;
 S SOAD=$$^W4SOAD(HZM)
 ;
 I PRMSL D  S:$$^W4MSD(NMB) OK=0 Q:OK'=1  ; -- MISHLOHIM
 .S SHAA=$P($P(SHAA,":",1,2)," ")
 ;
 I PRMSD D  S:$$^W4MSL(NMB) OK=0 Q:OK'=1  ; ---- MISSADA
 .S TRH=$P(ZMANK,"  ")
 .S SHAA=$P(ZMANK,"  ",2)
 ;
 N DTH S DTH=$$^%L1DC(TRH,3)
 D D(.1)
 I DTH<METRH S OK=0 Q
 D D(.2)
 I DTH>(ADTRH+1) S OK=0 Q
 D D(.3)
 I DTH=(ADTRH+1),SHAA'<$$SHAAZ^W4PRM!$$^W4SHAAZ S OK=0 Q
 D D(.4)
 ;
 I $$^W4ISCDLK(LKHN) S NMB=LKHN
 N NMB1 S NMB1=$TR(NMB,"-","")
 D D(.5)
 ;
 D D(.6)
 S SUGS=$$SUGL^W4L(NMB)
 I $$TAW^W4DLPK(NMB) S SUGS=$$TAW
 I $G(ADSUGS),SUGS<MESUGS!(SUGS>ADSUGS) S OK=0 Q
 D D(.7)
 S SUGS1=$$SUGL1^W4L(NMB)
 D D(1)
 I PRMSL,$G(MEPSL),PSL<MEPSL!(PSL>$G(ADPSL)) S OK=0 Q
 ;
 S IR=$$SPA^%L1FRM($G(IR))
 I $$^W4MSL(NMB),IR="" S IR="TAKEAWAY"
 I IR="eti aia` lz" S IR="aia` lz"
 ;
 I $$^W4MSL(NMB),$G(MEIR)=0,ADIR=0,'$$TAKEAWAY(IR) S OK=0 Q
 I $G(MEIR)=1,$G(ADIR),ADIR=$O(@$$^W4GL("P1IR")@(999999),-1),'$$TAKEAWAY(IR) G VIBMKBL
 I '$G(MEIR),$G(ADIR),ADIR=$O(@$$^W4GL("P1IR")@(999999),-1)!(ADIR>99999) G VIBMKBL
 I $G(MEIR)?1N.N,$G(ADIR)?1N.N,$L(IR),$G(@TMPIR@(IR))<MEIR!($G(@TMPIR@(IR))>ADIR) S OK=0 Q
 ;
VIBMKBL ;
 D D(2)
 I $G(MEMKBL),$G(ADMKBL),MKBL<MEMKBL!(MKBL>ADMKBL) S OK=0 Q
 ;
 I ADSHAA>24,$$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM,$$^%L1DC($P(ZMANK,"  "),3)=METRH S OK=0 Q
 S SHAA1=$S($$^W4SHAAZ&(SHAA<$$SHAAZ^W4PRM)&(ADSHAA>24):SHAA+24,1:SHAA)
 I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 D D(3)
 ;
 N STS,I D MVT
 S QUERY=$G(QUERY)
 I QUERY["melyz",QUERY["opkezn" S SUGT=CODTS D  G TS
 .S SUGT1=$G(MVT(SUGT))
 .S SUGT=SUGT_" "_SUGT1
 ;
 S SUGT="",STS=$G(@$$^W4ORD@(HZM,"CB"))
 F I=2:1:5 I $P(STS,"\",I) S SUGT=SUGT_(I-1)_","
 I $P(STS,"\",9) S SUGT=SUGT_"5,"
 I SUGT'[4,$D(@$$^W4ORD@(HZM,"CB","ASR")) S SUGT=SUGT_"4,"
 S SUGT=$E(SUGT,1,$L(SUGT)-1)
 ;
TS ;
 S MESUGT=$G(MESUGT)
 I '$G(ADSUGT) S ADSUGT=99999
 ;
 D D(5)
 I MESUGT>0 S OK=0 F I=MESUGT:1:ADSUGT I SUGT[I S OK=1 Q
 I MESUGT>0 Q:'OK
 ;
 D
 .S SUGT1=""
 .N I,S F I=1:1:$L(SUGT,",") S S=$P(SUGT,",",I),SUGT1=SUGT1_$G(MVT(S))_";"
 S SUGT1=$E(SUGT1,1,$L(SUGT1)-1)
 ;
 D D(6)
 S SHL=$G(%ARG("SHL"))
 I SHL=1&(SHUL<TSHL)!(SHL=2&(SHUL'<TSHL)) S OK=0 Q
 ;
 S SHAASG=$ZD($$MKRTIME^W4HZMST(HZM),"24:60")
 S TRLK=$$HRAED^W4HZMST(HZM)
 ;
 D D(7)
 I PRMSL D  Q
 .S x1=$S(TSHL<0:-1,1:1) Q
 ;
 S x1=-$$SBIT^W4HZMST(HZM),x2=-$$SHNHP^W4HZMST(HZM)
 S x3=$$SHNH^W4HZMST(HZM)+$$IGUL^W4HZMST(HZM)
 S x4=DMSH,x5=TSHL,x7=$G(SOAD)
 ;
 I TSHL+HNH,'$G(SOAD),$G(NMB),$$^W4MSD(NMB),$$^W4DLPK(NMB) D
 .I $G(@$$^W4PRM@("MSPSD"))=1 S x7=1
 ;
 S x6=""
 I x2+x3+TSHL'<1 S x6=$J((x2+x3/(TSHL+x2+x3))*100,2,2)
 Q
 ;
 ;
TAW(STAM) ;
 N N,OK S N="",OK=0
 F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D  Q:OK
 .I $TR(^(N),". ","")="TAW"!($TR(^(N),". ","")="TAKEAWAY") S OK=1
 Q N
 ;
 ;
MVT ;
 S MVT(1)="onefn"
 S MVT(2)="wiy"
 S MVT(3)="`-k"
 S MVT(4)="dtwd"
 S MVT(5)="yelz"
 Q
 ;
 ;
PRM ;
 S MESUGS=$G(%ARG("MESUGS"))
 S ADSUGS=$G(%ARG("ADSUGS")) I 'ADSUGS S ADSUGS=99999
 S MEPSL=$G(%ARG("MEPSL"))
 S ADPSL=$G(%ARG("ADPSL")) I 'ADPSL S ADPSL=9999
 S MEMKBL=$G(%ARG("MEMKBL"))
 S ADMKBL=$G(%ARG("ADMKBL")) I 'ADMKBL S ADMKBL=99999
 S MESHAA=$G(%ARG("MESHAA"))
 S ADSHAA=$G(%ARG("ADSHAA"))
 I 'ADSHAA S ADSHAA=99
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 S MESUGT=$G(%ARG("MESUGT"))
 S ADSUGT=$G(%ARG("ADSUGT")) I 'ADSUGT S ADSUGT=99
 Q
 ;
TAKEAWAY(IR) ;
 I $TR(IR," .","")'="TAKEAWAY",$TR(IR," .","")'="TAW" Q 0
 Q 1
 ;
D(NOM) ; 
 ;;S ^D(HZM)=NOM 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZHC2
W4HZHC2 ; DOCH HAZMANOT LEFI SHLIHIM ( CSR ) [ 27.12.18 06:16 ] [ 26.12.18 12:52 ] [ 20.12.18 19:34 ] 
 N (JB,%ARG,%REM)
 ;;S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 ;
 D PRM
 ;
 S GLRF=$$^W4GL("W4LINKD")
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 S TMPS111=$$^W4MAIN("TMPS111") K @TMPS111
 S SH=0,SM=1
 S %SCRN="P1HZ"
 ;
 I $$PRINT D ^W4MDPPC
 ;
 F DT=MEDT:1:ADDT D
 .S N="" F  S N=$O(@GLRF@(DT,N)) Q:N=""  D
 ..D HZM(N)
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 I $$VP="XMENU" D BACKBUT^W4SGYOM
 ;
 W " <table width=""60%"">",!
 ;
 K SSUM
 S DTH="" F  S DTH=$O(@VRM@(DTH)) Q:DTH=""  I $D(^(DTH))>9 D
 .I $G(%ARG("DOP")),$D(@VRM@(DTH,%ARG("DOP")))<10 Q
 .D TRSP,TRSP,TRHR,TRHR
 .W "<tr><td colspan=""2"" "
 . W " style=""font-size:"_$$^W3FSZ(16)_";text-decoration:underlined"" "
 . W ">"
 .  W $$^%W1DICT("DATE")_" : "_$ZD(DTH,"DD.MM.YY")
 .  S TX=$ZD(DTH,"DD.MM.YY")_" : jix`z",L=$L(TX)
 .  D KAV("","*")
 .  S ST="" D S1
 .  S ST=$G(%MDP("BB"))_TX_$G(%MDP("N")) D S1
 . W "</td>"
 .W "</tr>",!
 .
 .S PSL="" F  S PSL=$O(@VRM@(DTH,PSL)) Q:PSL=""  D
 ..I $G(%ARG("DOP")),+PSL'=+%ARG("DOP") Q
 ..S PRPSL=1
 ..D TRSP
 ..W "<tr><td colspan=""2"">"
 .. W "<hr><span style=""color:green;font-weight:bold"">"
 ..  S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 ..  S TX=PSL1_" "_PSL,L=$L(TX)
 ..  S ST="" D S1
 ..  D KAV("","=")
 ..  S ST=$G(%MDP("B"))_TX_$G(%MDP("N")) D S1
 ..  D KAV("","=")
 ..  W PSL_" "_$$H2U^%L1FRM(PSL1)
 .. W "<hr>"
 ..W "</td></tr>",!
 ..
 ..S SHAA="" F  S SHAA=$O(@VRM@(DTH,PSL,SHAA)) Q:SHAA=""  D
 ...S HZM="" F  S HZM=$O(@VRM@(DTH,PSL,SHAA,HZM)) Q:HZM=""  D
 ....S A=$G(^(HZM))
 ....D GA^W4SCREF(%SCRN,$$^W4ORD_"(HZM)")
 ....D PRS^%L1FRM(A,"NMB\NAME\ADR\IR\SOAD\TSHL\DMSH\SHUL\SHULA\SUGT1\TIP\ITRA","\")
 ....S TRH=$$TRH^W4HZMST(HZM)
 ....I PRPSL=0 D KAV,TRHR
 ....I PRPSL=1 S PRPSL=0
 ....S ST=TRH_" ^ jix`z" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("jix`z")_"</td><td>"_TRH_"<td></tr>",!
 ....S ST=SHAA_" ^ dry" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("dry")_"</td><td>"_SHAA_"<td></tr>",!
 ....S ST=HZM_" ^ dpnfd" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("dpnfd")_"</td><td style=""font-weight:bold;cursor:pointer"" onClick=""ShowOrder('"_HZM_"')"">"_HZM_"<td></tr>",!
 ....S ST=NAME_" ^ gewl" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("gewl")_"</td><td>"_$$H2U^%L1FRM(NAME)_"<td></tr>",!
 ....S ST=ADR_" ^ zaezk" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("zaezk")_"</td><td>"_$$H2U^%L1FRM(ADR)_"<td></tr>",!
 ....D SSUM(DTH,PSL,"DMSH",DMSH)
 ....S ST=$J(DMSH,2,2)_" ^ gelyn inc" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("gelyn inc")_"</td><td>"_$J(DMSH,2,2)_"<td></tr>",!
 ....D SSUM(DTH,PSL,"TSHL",TSHL)
 ....S ST=$J(TSHL,2,2)_" ^ melyzl" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("melyzl")_"</td><td>"_$J(TSHL,2,2)_"<td></tr>",!
 ....S ST=SUGT1_" ^ melyz beq" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("melyz beq")_"</td><td>"_$$H2U^%L1FRM(SUGT1)_"<td></tr>",!
 ....D SSUM(DTH,PSL,"SHUL",SHUL)
 ....S ST=$J(SHUL,2,2)_" ^ mley" D ST
 ....W "<tr><td>"_$$H2U^%L1FRM("mley")_"</td><td>"_$J(SHUL,2,2)_"<td></tr>",!
 ....S ST=$J(SHULA,2,2)_" ^ dtwd" D ST
 ....D SSUM(DTH,PSL,"SHULA",SHULA)
 ....I $G(SHULA) W "<tr><td>"_$$H2U^%L1FRM("dtwd")_"</td><td>"_$J(SHULA,2,2)_"<td></tr>",!
 ....D SSUM(DTH,PSL,"TIP",TIP)
 ....I $G(TIP) S ST=$J(TIP,2,2)_" ^ tih" D ST
 ....I $G(TIP) W "<tr><td>"_$$H2U^%L1FRM("tih")_"</td><td>"_$J(TIP,2,2)_"<td></tr>",!
 ....S ITRA=TSHL+TIP-SHUL-SHULA
 ....S ST=$J(ITRA,2,2)_" ^ dxzi" D ST
 ....D SSUM(DTH,PSL,"ITRA",ITRA)
 ....W "<tr><td>"_$$H2U^%L1FRM("dxzi")_"</td><td>"_$J(ITRA,2,2)_"<td></tr>",!
 ..D TOT("P",PSL)
 .D TOT("D",DTH)
 ;
 I MEDT'=ADDT D TOT("A","ALL")
 ;
 W "</table>",!
 I $$VP="XMENU" W "<br><br>" D BACKBUT^W4SGYOM
 W "</div>",!
 ;
 I $$PRINT D
 .N N S N="" F  S N=$O(@TMPS111@(N)) Q:N=""  I N D PC($G(^(N)))
 .I $$VP'="XMENU" D
 ..D ^W4CUT($G(PRINT),$G(%MDP("CUT")))
 ;
 K @TMPS111,@VRM
 Q
 ;
 ;
HZM(HZM) ;
 S %SCRN="P1HZ"
 ;
 I $$HZM^W4MSD(HZM) Q 
 ;
 D GA^W4SCREF(%SCRN,$$^W4ORD_"(HZM)")
 I PSL="" S OK=0 Q
 ;
 N DTH S DTH=$$^%L1DC(TRH,3) Q:'DTH
 ;
 I DTH<MEDT S OK=0 Q
 I DTH>(ADDT+1) S OK=0 Q
 I DTH=(ADDT+1),SHAA'<$$SHAAZ^W4PRM!$$NIGHT^W4PRM!'$$^W4SHAAZ S OK=0 Q
 ;
 S BAIT=$$BAIT^W4HZMST(HZM),DIRA=$$DIRA^W4HZMST(HZM)
 I BAIT,DIRA S BAIT=BAIT_"/"_DIRA
 ;;S ADR=BAIT_" "_$$KTV^W4HZMST(HZM)
 S ADR=$$KTVM^W4HZMST(HZM)
 ;
 S IR=$$IR^W4HZMST(HZM)
 ;
 S SOAD=$$^W4SOAD(HZM)
 ;
 S SHAA=$P($P(SHAA,":",1,2)," ")
 ;
 I $$^W4ISCDLK(LKHN) S NMB=LKHN
 N NMB1 S NMB1=$TR(NMB,"-","")
 S SUGS=$$SUGL^W4L(NMB)
 D D(1)
 ;
 I $G(MEPSL),PSL<MEPSL!(PSL>$G(ADPSL)) S OK=0 Q
 ;
 S IR=$$SPA^%L1FRM($G(IR))
 I $$^W4MSL(NMB),IR="" S IR="TAKEAWAY"
 I IR="eti aia` lz" S IR="aia` lz"
 ;
VIBMKBL ;
 D D(2)
 ;
 N STS,I D MVT
 ;
 S SUGT="",STS=$G(@$$^W4ORD@(HZM,"CB"))
 F I=2:1:5 I $P(STS,"\",I) S SUGT=SUGT_(I-1)_","
 I $P(STS,"\",9) S SUGT=SUGT_"5,"
 I SUGT'[4,$D(@$$^W4ORD@(HZM,"CB","ASR")) S SUGT=SUGT_"4,"
 S SUGT=$E(SUGT,1,$L(SUGT)-1)
 ;
TS ;
 S MESUGT=$G(MESUGT)
 I '$G(ADSUGT) S ADSUGT=99999
 ;
 D D(5)
 I MESUGT>0 S OK=0 F I=MESUGT:1:ADSUGT I SUGT[I S OK=1 Q
 I MESUGT>0 Q:'OK
 ;
 D
 .S SUGT1=""
 .N I,S F I=1:1:$L(SUGT,",") S S=$P(SUGT,",",I),SUGT1=SUGT1_$G(MVT(S))_";"
 S SUGT1=$E(SUGT1,1,$L(SUGT1)-1)
 ;
 S SHAASG=$ZD($$MKRTIME^W4HZMST(HZM),"24:60")
 ;
 D D(7)
 ;
 S ITRA=TSHL+TIP-SHUL-SHULA
 I ITRA'>0 S ITRA=0
 I SHAA="" S SHAA=0
 S @VRM@(DTH,PSL,SHAA,HZM)=NMB_"\"_NAME_"\"_ADR_"\"_IR_"\"_SOAD_"\"_TSHL_"\"_DMSH_"\"_SHUL_"\"_SHULA_"\"_SUGT1_"\"_TIP_"\"_ITRA
 Q
 ;
 ;
TAW(STAM) ;
 N N,OK S N="",OK=0
 F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D  Q:OK
 .I $TR(^(N),". ","")="TAW"!($TR(^(N),". ","")="TAKEAWAY") S OK=1
 Q N
 ;
 ;
MVT ;
 S MVT(1)="onefn"
 S MVT(2)="wiy"
 S MVT(3)="`-k"
 S MVT(4)="dtwd"
 S MVT(5)="yelz"
 Q
 ;
 ;
PRM ;
 I $G(%ARG("MEDATE"))="" S %ARG("MEDATE")=$ZD($$^W4DZ,"DD.MM.YY")
 I $G(%ARG("ADDATE"))="" S %ARG("ADDATE")=$ZD($$^W4DZ,"DD.MM.YY")
 ;
 I $$VP="XMENU" D
 .S %ARG("MEDATE")=$ZD($$^W4DZ,"DD.MM.YY")
 .S %ARG("ADDATE")=$ZD($$^W4DZ,"DD.MM.YY")
 .N PSL
 .I $$VP="XMENU" S PSL=$$GET^W4TMPANS("XMENU","CHOICEMESSENGER")
 .I PSL S %ARG("DOP")=PSL
 ;
 I $$VP="TELMENU" D
 .S PSL=$$GET^W4TMPANS("TELMENU","CHOICEMESSENGER")
 .I PSL?.E1"_".P1N.N.E S PSL=$$SPA^%L1FRM($P(PSL,"_",2))
 .S %ARG("MEDATE")=$$GET^W4TMPANS("TELMENU","MEDATE")
 .S %ARG("ADDATE")=$$GET^W4TMPANS("TELMENU","ADDATE")
 .I PSL S %ARG("DOP")=PSL
 .;;ZWR %ARG
 ;
 S MEDT=$$^%L1DC(%ARG("MEDATE"),3)
 S ADDT=$$^%L1DC(%ARG("ADDATE"),3)
 ;
 S MEPSL=$G(%ARG("MEPSL"))
 S ADPSL=$G(%ARG("ADPSL")) I 'ADPSL S ADPSL=9999
 ;
 S MESHAA=$G(%ARG("MESHAA"))
 S ADSHAA=$G(%ARG("ADSHAA"))
 I 'ADSHAA S ADSHAA=99
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 ;
 S MESUGT=$G(%ARG("MESUGT"))
 S ADSUGT=$G(%ARG("ADSUGT")) I 'ADSUGT S ADSUGT=99
 Q
 ;
 ;
TAKEAWAY(IR) ;
 I $TR(IR," .","")'="TAKEAWAY",$TR(IR," .","")'="TAW" Q 0
 Q 1
 ;
D(NOM) ; 
 ;;S ^D(HZM)=NOM 
 Q 
 ;
TRHR ; 
 W "<tr><td colspan=""2""><hr></td></tr>",! 
 Q 
 ;
TRSP ; 
 W "<tr><td colspan=""2"">&nbsp;</td></tr>",! 
 Q 
 ;
TRBOLD(STAM) ; 
 Q "<tr style=""font-weight:bold"">" 
 ; 
S1 ; 
 S SH=$O(@TMPS111@(9999),-1)+1 
 S @TMPS111@(SH)=$J(ST,$$WD)
 Q
 ;
ST ; 
 N RK,RK1
 S RK=$P(ST,"^")
 S RK1=$P(ST,"^",2)
 S SH=$O(@TMPS111@(9999),-1)+1 
 S @TMPS111@(SH)=$$HBR^%L1FRM(RK,20)_" : "_$$HBR^%L1FRM(RK1,15)
 Q 
 ;
ST1 ; 
 N RK,RK1
 S RK=$P(ST,":")
 S RK1=$P(ST,":",2)
 S SH=$O(@TMPS111@(9999),-1)+1 
 S @TMPS111@(SH)=$$HBR^%L1FRM(RK,10)_" : "_$$HBR^%L1FRM(RK1,25)
 Q 
 ;
KAV(L,SMB) ;
 I '$G(L) S L=$$WD
 I $G(SMB)="" S SMB="-"
 S SH=$O(@TMPS111@(9999),-1)+1 
 S @TMPS111@(SH)=$TR($J("",L)," ",SMB)
 Q 
 ;
WD(STAM) ; 
 Q 38 
 ;
PC(TXT) I '$G(PRINT) G EPC
 I $$GETP^%W1PRM("NOPC") G EPC
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 I '$G(SM) S SM=0
 N ST S ST=$J("",SM)_$TR(TXT,TS0,TSS)
S11 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=$E(ST,1,255)
EPC K TXT
 Q
 ;
PRINT(STAM) ;
 Q $G(%ARG("PRINT"))
 ;
TOT(PR,PSL) ;
 I $G(PR)="" Q
 I $G(PSL)="" Q
 ;
 I PR="D"!(PR="A"),MEDT=ADDT Q
 ;;I PR="P",$G(%ARG("DOP")),MEDT=ADDT Q
 ;
 D KAV N PSL1
 D TRHR,TRSP
 ;
 I $G(PR)="P" D
 .S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 .S ST=$G(%MDP("B"))_PSL_" gily itl k""dq"_$G(%MDP("N")) D S1
 .W $$TRBOLD_"<td colspan=""2"" style=""color:green"">"_$$H2U^%L1FRM(PSL1_" gily itl k""dq")_"</td><td>&nbsp;<td></tr>",!
 ;
 I $G(PR)="D" D
 .S PSL1=$ZD(PSL,"DD.MM.YY")_" jix`z itl k""dq"
 .S ST=$G(%MDP("B"))_PSL1_$G(%MDP("N")) D S1
 .W $$TRBOLD_"<td colspan=""2"" style=""color:green"">"_$$H2U^%L1FRM(PSL1)_"</td><td>&nbsp;<td></tr>",!
 ;
 I $G(PR)="A" D
 .S PSL1=": dtewzl k""dq"
 .S ST=$G(%MDP("B"))_PSL1_$G(%MDP("N")) D S1
 .W $$TRBOLD_"<td colspan=""2"" style=""color:green"">"_$$H2U^%L1FRM(PSL1)_"</td><td>&nbsp;<td></tr>",!
 ;
 S ST=$J($G(SSUM(PSL,"DMSH")),2,2)_" : gelyn inc k""dq" D ST1
 W $$TRBOLD_"<td>"_$$H2U^%L1FRM("gelyn inc k""dq")_"</td><td>"_$J($G(SSUM(PSL,"DMSH")),2,2)_"<td></tr>",!
 S ST=$J($G(SSUM(PSL,"TSHL")),2,2)_" : melyzl k""dq" D ST1
 W $$TRBOLD_"<td>"_$$H2U^%L1FRM("melyzl k""dq")_"</td><td>"_$J($G(SSUM(PSL,"TSHL")),2,2)_"<td></tr>",!
 S ST=$J($G(SSUM(PSL,"SHUL")),2,2)_" : mley k""dq" D ST1
 W $$TRBOLD_"<td>"_$$H2U^%L1FRM("mley k""dq")_"</td><td>"_$J($G(SSUM(PSL,"SHUL")),2,2)_"<td></tr>",!
 S ST=$J($G(SSUM(PSL,"SHULA")),2,2)_" : dtwd k""dq" D ST1
 W $$TRBOLD_"<td>"_$$H2U^%L1FRM("dtwd k""dq")_"</td><td>"_$J($G(SSUM(PSL,"SHULA")),2,2)_"<td></tr>",!
 S ST=$J($G(SSUM(PSL,"TIP")),2,2)_" : tih k""dq" D ST1
 W $$TRBOLD_"<td>"_$$H2U^%L1FRM("tih k""dq")_"</td><td>"_$J($G(SSUM(PSL,"TIP")),2,2)_"<td></tr>",!
 S ST=$J($G(SSUM(PSL,"ITRA")),2,2)_" : dxzi k""dq" D ST1
 W $$TRBOLD_"<td>"_$$H2U^%L1FRM("dxzi k""dq")_"</td><td>"_$J($G(SSUM(PSL,"ITRA")),2,2)_"<td></tr>",!
 Q
 ;
SSUM(DTH,PSL,RKV,VL)
 S SSUM(PSL,RKV)=$G(SSUM(PSL,RKV))+VL
 S SSUM(DTH,RKV)=$G(SSUM(DTH,RKV))+VL
 S SSUM("ALL",RKV)=$G(SSUM("ALL",RKV))+VL
 Q
 ;
VP(STAM) ;
 Q $$VP^W4SCASK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZHL
W4HZHL ; [ 21.02.22 07:32 ] [ 04.01.22 17:10 ] [ 03.08.20 16:49 ] 
 K %L1PC
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$D(JB)
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4HZHL"
 S %REPN="HZHL"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S @$$^%W1GLPRM@("REPN")=%REPN
 K @$$^W4MAIN("MMM")
 ;
 N LNG S LNG=$$^%W1LNG
 S @$$^W4GL("W4SUGORD")@(1)=$$TV^%W1DICT(LNG,"RESTAURANT")
 S @$$^W4GL("W4SUGORD")@(2)=$$TV^%W1DICT(LNG,"DELIVERY")
 S @$$^W4GL("W4SUGORD")@(3)=$$TV^%W1DICT(LNG,"TAKEAWAY")
 Q
 ;
 ;
TRH ;
 N DT,HZM,STIP,TIPMZ,TIPCH,TIPCA,TIPAS,MEDATH,ADDATH
 ;
 D ^%W1PCVRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 S:'$G(MEHZM) MEHZM=""
 S:'$G(ADHZM) ADHZM="99999999"
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 S:HZM<0 HZM="" D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM,"CB","ASR"))>9 D
 ..N J S J="" F  S J=$O(@$$^W4ORD@(HZM,"CB","ASR",J)) Q:J=""  I J D
 ...S @VRM@(DT_"-"_HZM_"-"_J)=""
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
NHB ;
 N NOM
 N DT S DT=$P(NHB,"-") S TRH=$ZD(DT,"DD.MM.YY")
 S HZM=$P(NHB,"-",2) Q:'HZM
 S NOM=$P(NHB,"-",3)
 S HB=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",NOM)
 I HB="" S HB=$P(NHB,"-",2,3)
 S SUGORD=$S($$HZM^W4MSD(HZM):1,$$TAKEAWAY^W4HZMST(HZM):3,1:2)
 I ADSUGORD,SUGORD<MESUGORD!(SUGORD>ADSUGORD) Q
 N STA S STA=$G(@$$^W4ORD@(HZM,"CB","ASR",NOM))
 S LKH=$P(STA,"*")
 S LKH1=$P(STA,"*",12)
 I LKH1="" S LKH1=$$LKH^W4L(LKH)
 S LKHR=$P(STA,"*",6)
 S LKHR1=$P(STA,"*",13)
 I LKHR1="" S LKHR1=$$LKH^W4L(LKHR)
 S LKHN=LKH I $L(LKHR) S LKHN=LKHR
 S x2=$P(STA,"*",3) ;-- LKHNH
 S x4=$P(STA,"*",4) ;-- ASR
 ;
 I 'LKHR,LKH,$D(@$$^W4GL("P1EZLI")@(LKH))>9 S LKHR=LKH
 ;
 S SUGL=$$SUGL^W4L(LKHN)
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 S ASM=$P($P(HRAED,"mley ",2)," ")
 ;;S SUGORD1=""
 ;;I SUGORD S SUGORD1=$$TV^%W1DICT($$^%W1LNG,$G(@$$^W4GL("W4SUGORD")@(SUGORD)))
 ;
 I MESUGL,SUGL<MESUGL S OK=0 Q
 I ADSUGL,SUGL>ADSUGL S OK=0 Q
 I MELKH,LKH<MELKH S OK=0 Q
 I ADLKH,LKH>ADLKH S OK=0 Q
 I MELKHR,LKHR<MELKHR S OK=0 Q
 I ADLKHR,LKHR>ADLKHR S OK=0 Q
 ;
 D
 .N SH
 .S SH=$O(^AA1(HZM,999),-1)+1
 ;
 S OK=1
 S x3=0 ; -- DMSH
 I '$D(@$$^W4MAIN("MMM")@(HZM)) D
 .S x3=$$DMSH^W4HZMST(HZM)
 .S (@$$^W4MAIN("MMM")@(HZM))=""
 S x1=x4+x2-x3
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZHL1
W4HZHL1 ; [ 05.10.16 19:16 ] [ 17.05.14 15:49 ] [ 18.05.14 15:30 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S %REPN="HZHL1"
 S @$$^%W1GLPRM@("REPN")=%REPN
 Q
 ;
DT ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=0 Q
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
HZ ;
 S OK=0
 N ST,STA,OKHB
 S STA=$G(@$$^W4MAIN("VRM")@(DT,HZM,NP))
 S LKH=$P(STA,"*")
 S LKH1=$P(STA,"*",12)
 I LKH1="" S LKH1=$$LKH^W4L(LKH)
 S LKHR=$P(STA,"*",6)
 S LKHR1=$P(STA,"*",13)
 I LKHR1="" S LKHR1=$$LKH^W4L(LKHR)
 S LKHN=LKH I $L(LKHR) S LKHN=LKHR
 S SUGL=$$SUGL^W4L(LKHN)
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 S ASM=$P($P(HRAED,"mley ",2)," ")
 ;
 I SUGL<MESUGL Q
 I SUGL>ADSUGL Q
 I LKH<MELKH Q
 I LKH>ADLKH Q
 I LKHR<MELKHR Q
 I LKHR>ADLKHR Q
 ;
 S OK=1
 S x2=$P(STA,"*",3) ;-- LKHNH
 S x4=$P(STA,"*",4) ;-- ASR
 S x3=0 ; -- DMSH
 I '$D(@$$^W4MAIN("MMM")@(HZM)) D
 .S x3=$$DMSH^W4HZMST(HZM)
 .S (@$$^W4MAIN("MMM")@(HZM))=""
 S x1=x4+x2-x3
 Q
 
 
 
 

W4HZHL2
W4HZHL2 ; [ 21.02.22 07:34 ] [ 26.07.21 15:49 ] [ 08.10.12 17:42 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S %REPN="HZHL2"
 S @$$^%W1GLPRM@("REPN")=%REPN
 Q
 ;
HZM ;
 S DT=$G(@GLOB)
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=0 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 I LKH<MELKH S OK=0 Q
 I LKH>ADLKH S OK=0 Q
 S SUGL=$$SUGL^W4L(LKH)
 I SUGL<MESUGL S OK=0 Q
 I SUGL>ADSUGL S OK=0 Q
 I HZM<MEHZM S OK=0 Q
 I HZM>ADHZM S OK=0 Q
 S TRH=$$^%L1DC(DT,1)
 I $$HSB(LKH,HZM) S OK=0 Q
 S OK=0
 N ST,STA
 S (SUM,HN)=0
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S STA=$G(^(N))
 .I $P(STA,"*")=LKH D
 ..S LKH1=$P(STA,"*",12)
 ..S LKHR=$P(STA,"*",6)
 ..S LKHR1=$P(STA,"*",13)
 ..I LKHR<MELKHR Q
 ..I LKHR>ADLKHR Q
 ..S SUM=SUM+$P(STA,"*",4)
 ..S HN=HN+$P(STA,"*",3)
 ;
 S OK=1
 S x2=HN
 S x3=SUM
 S x1=x3+x2
 Q
 ;
 ;
HSB(LKH,HZM) ;
 I $G(LKH)=""!($G(HZM)="") Q 0
 N N1,OK S OK=0
 S N1="" F  S N1=$O(@$$^W4GL("P1HL1")@(LKH,HZM,N1)) Q:N1=""  D  Q:OK
 .I $D(@$$^W4GL("P1HL1")@(LKH,HZM,N1,"HSB")) S OK=1
 Q OK
 
 
 
 

W4HZHLO
W4HZHL ; [ 04.01.22 14:29 ] [ 03.08.20 16:49 ] [ 11.08.19 12:47 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$D(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S %REPN="HZHL"
 S @$$^%W1GLPRM@("REPN")=%REPN
 K @$$^W4MAIN("MMM")
 ;;D PUT^%W1PRM("HRFREP","w4dpars.jsp?JB="_JB)
 Q
 ;
DT ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=0 Q
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
HB ;
 S OK=2
 N ST,STA,OKHB
 S ST=$G(@$$^W4GL("P1HB2")@(HB)) Q:ST=""
 S HZM=$P(ST,"\") Q:HZM=""
 S SUGORD=$S($$HZM^W4MSL(HZM):2,1:1)
 I ADSUGORD,SUGORD<MESUGORD!(SUGORD>ADSUGORD) Q
 S SUGORD1=""
 I SUGORD S SUGORD1=$G(@$$^W4GL("W4SUGORD")@(SUGORD))
 S OKHB=0
 F J=1:1:$L($G(@$$^W4ORD("P1HZ")@(HZM,"ETHB2")),",") I $P($G(^("ETHB2")),",",J)=HB S OKHB=1 Q
 S LKH1=""
 I 'OKHB S LKH=$P(ST,"\",4),LKHR=LKH,LKHR1="",x2="",x4=$P(ST,"\",5)
 I OKHB D
 .S STA=$G(@$$^W4ORD("P1HZ")@(HZM,"CB","ASR",J))
 .S LKH=$P(STA,"*")
 .S LKH1=$P(STA,"*",12)
 .I LKH1="" S LKH1=$$LKH^W4L(LKH)
 .S LKHR=$P(STA,"*",6)
 .S LKHR1=$P(STA,"*",13)
 .I LKHR1="" S LKHR1=$$LKH^W4L(LKHR)
 .S LKHN=LKH I $L(LKHR) S LKHN=LKHR
 .S x2=$P(STA,"*",3) ;-- LKHNH
 .S x4=$P(STA,"*",4) ;-- ASR
 ;
 I 'LKHR,LKH,$D(@$$^W4GL("P1EZLI")@(LKH))>9 S LKHR=LKH
 ;
 S SUGL=$$SUGL^W4L(LKHN)
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 S ASM=$P($P(HRAED,"mley ",2)," ")
 ;
 I MESUGL,SUGL<MESUGL S OK=0 Q
 I ADSUGL,SUGL>ADSUGL S OK=0 Q
 I MELKH,LKH<MELKH S OK=0 Q
 I ADLKH,LKH>ADLKH S OK=0 Q
 I MELKHR,LKHR<MELKHR S OK=0 Q
 I ADLKHR,LKHR>ADLKHR S OK=0 Q
 ;
 D
 .N SH
 .S SH=$O(^AA1(HZM,999),-1)+1
 ;
 S OK=1
 S x3=0 ; -- DMSH
 I '$D(@$$^W4MAIN("MMM")@(HZM)) D
 .S x3=$$DMSH^W4HZMST(HZM)
 .S (@$$^W4MAIN("MMM")@(HZM))=""
 S x1=x4+x2-x3
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZHNHP
W4HZHNHP(HZM) ; [ 29.03.12 14:28 ] [ 29.06.05 12:39 PM ] [
 N I,IND,ST,ST0,STI
 K @$$^W4ORD@(HZM,"HNHP")
 F I=2:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S ST=$G(^(I)),ST0=$G(^(I-1))
 .S AH=$$AH^W4AHP(ST),HNP=-$P(ST,"\",7),HRP=$P(ST,"\",8)
 .I AH,ST0'="",HNP D
 ..S STI=(I-1)_"\"_$P(ST0,"\")_"\"_$P(ST0,"\",3)_"\"
 ..S STI=STI_$P(ST0,"\",5)_"\"_$P(ST0,"\",4)_"\"_AH_"\"_HNP_"\"_HRP
 ..S @$$^W4ORD@(HZM,"HNHP",I-1)=STI
 Q

W4HZM
W4HZM(HZM,JB,BGJ) ; [ 02.06.26 14:53 ] [ 29.12.25 12:12 ] [ 23.08.23 17:21 ] 
 I $$HZM^W4MSL(HZM),$$SNDDLVKTC^W4PRM Q
 I '$$DLYPRN^W4PRM,$$HZM^W4MSL(HZM),$$FUTUREDT^W4HZMIT(HZM) Q
 I $$DLYPRN^W4PRM,$$HZM^W4MSL(HZM) D ^W4DLYPRN(HZM,JB) Q
 G BG
 ;
TV1(HZM)
 ;
BG ; 
 N (JB,%ARG,%REM,HZM)
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 ;
 I JB[".1" D
 .I $G(%REM) D PUT^%W1PRM("REM",%REM) Q
 .N JB0 S JB0=JB
 .N REM,JB S JB=$P(JB0,".")
 .S REM=$$GETP^%W1PRM("REM")
 .S JB=JB0
 .I $G(REM) D PUT^%W1PRM("REM",REM)
 ;
 I $$SNDY^W4PRM=1,'$$HZAFTPAY^W4PRM,'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM) D CR^WQDLV(HZM)
 ;
 S @$$^W4ORD@(HZM,"LASTPC")=$H
 I '$D(@$$^W4ORD@(HZM,"FIRSTPC")) S @$$^W4ORD@(HZM,"FIRSTPC")=$H
 ;
 N GLBV,GLBV1,P3PCHZ D ^W4IN
 N GLORD D GLORD^W4HZMST
 S (GLBV,GLBV1)=GLORD
 ;
 I HZM["\" D
 .S P3PCHZ=$P(HZM,"\",2)
 .S P1HZOP=$S($P(HZM,"\",3):"BIT",1:"BIT1")
 .S HZM=+HZM
 ;
 I HZM[">" D
 .S P1HZOP=$S($P(HZM,">",2)<0:"NOPC",1:"")
 .S HZM=+HZM K:P1HZOP="" P1HZOP
 ;
 D PUT^%W3DEB("W4HZM","HZM=HZM & P1HZOP=[P1HZOP")
 ;
 I $G(@$$^W4PRM@("CLRHZ")),'$$^W4CLOSE(HZM) D ^W4CLRHZ(HZM)
 ;
IT D ^W4HZMIT
 Q
 ;
TV(HZM,JB) ;
 G BG 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMC
W4HZMC ; [ 29.03.10 14:34 ] [ 06.02.10 21:14 ] [ 16.01.10 19:26 ]
 W "<div align=""center"">",!
 W "<br><br><br>",!
 D ROUNDBUT^%W1JS("newdoc",$$^%W1DICT("NEWDOCUMENT"),"NewDocument()","color:green","wh,22")
 W "&nbsp;"
 D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 ;
 W "<br /><br />",!
 D LIST
 W "</div>",!
 Q
 ;
LIST ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("PRICEOFFERLIST")_"</span>"
 W "<table id=""listinvoices"" border=""1""  width=""80%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DOCNUMBER")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DESCRIPTION")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL1")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL2")
 W "   </th>",!
 W "  </tr>",!
 ;
 D GL^W4HZMHC
 S N="" F  S N=$O(@GL@(N),-1) Q:N=""  D
 .W "<tr style=""cursor:pointer"
 .I $G(%ARG("CURLINE")),N=%ARG("CURLINE") D
 ..W ";background-color:yellow;color:black"
 .W """ onClick=""ShowDoc('"_N_"')"">"
 .W " <td>"_N_"</td>"
 .W " <td>"_$$RKV($$DAT^W4HZMHC(N))_"</td>"
 .W " <td>"_$$RKV($$DESCR^W4HZMHC(N))_"</td>"
 .W " <td>"_$$RKV($$LKHNAME^W4HZMHC(N))_"</td>"
 .W " <td>"_$$RKV($$TEL1^W4HZMHC(N))_"</td>"
 .W " <td>"_$$RKV($$TEL2^W4HZMHC(N))_"</td>"
 .W "</tr>",!
 W "</table>",!
 Q
RKV(TXT) ;
 I TXT="" Q "&nbsp;"
 Q TXT

W4HZMH
W4HZMH(HZM) ; [ 20.08.23 07:55 ] [ 10.06.18 08:02 ] [ 28.12.16 11:46 ] 
 N (JB,%ARG,%REM,HZM)
 I '$$HZM^W4MSL(HZM) Q 0
 ;
 N CDHZMH S CDHZMH=$$HZMH^W3PRM I 'CDHZMH Q 0
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(HZM)",DLM="\"
 F I=1:1 Q:'$D(@GL@(I))  S PAR=$P(^(I),DLM) I $L(PAR),PAR=CDHZMH S OK=1 Q
 Q OK
 
 
 
 
 
 

W4HZMHC
W4HZMHC ; [ 26.03.16 09:31 ] [ 29.09.15 10:28 ] [ 25.07.11 09:34 ] 
 N (JB,%ARG,%REM)
 S NOM=+$G(%ARG("NOM"))
 I NOM,$G(%ARG("LKH"))'=$$LKH(NOM) S %ARG("NEWCUST")=1
 S LKH=$$GETLKH(NOM)
 S DAT=$$DAT(NOM)
 D GL K @$$^W4MAIN("TMPHD")
 ;
 I $G(%ARG("FIRST")),NOM D
 .K @$$^W4MAIN("TMPHM")
 .S I="" F  S I=$O(@GL@(NOM,I)) Q:I=""  I I?1N.N D
 ..M @$$^W4MAIN("TMPHM")@(I)=@GL@(NOM,I)
 ;
 I $G(NOM) D
 .W "<br />",!
 .W " <span style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" >"
 .  W $$^%W1DICT("PRCOFRNMB")_" "_NOM
 .  I $G(%ARG("NEWDOC")) D
 .  .W " - "_$$^%W1DICT("COPY2NEWDOC")
 .W "</span>",!
 .W "<br />",!
 ;
 D CUSTCARD^W4LHB(LKH)
 ;
 ;;D KOTHSB(NOM,LKH,DAT)
 ;
 ;;W "<span style=""font-weight:bold;font-size:"_$$^W3FSZ(18)_""">"_$$^%W1DICT("HZMH")_"</span>",!
 ;
 W "</table>",!
 W "<br/>"
 ;
 D DESCKOT
 ;
 D DAF1
 ;
 I $G(%ARG("NEWDOC")),NOM D
 .S @$$^W4MAIN("TMPHD")=$G(@GL@(NOM))
 .K %ARG("NOM") S NOM=0
 ;
 W "<br/>"
 ;
 D DIVBUT
 Q
 ;
KOTHSB(NOM,LKH,DAT) ;
 D ^W4KOTHSB(NOM,LKH,DAT,"HZMHC")
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDPRINT"),"Submit('"_NOM_"')","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td dir=""LTR"" "_$$^%W1ALIGN
 Q
TDN W "<td>&nbsp;</td>",!
 Q
 ;
 ;
DAF1 ;
 N (JB,%ARG,LKH,DAT,NOM)
 ;
 I '$D(NOM) S NOM=0
 ;
 W "<table id=""TblInvcBd"" dir="""_$$^%W1DIR_""" width=""95%"" border=""1"" cellspacing=""0"">",!
  ;
  W "<tr>"
  W " <th>"_$$^%W1DICT("TYPE")_"</th>",!
  W " <th>"_$$^%W1DICT("FOREIGNTYPE")_"</th>",!
  W " <th>"_$$^%W1DICT("ITEMNAME")_"</th>",!
  W " <th>"_$$^%W1DICT("COSTINGPRICE")_"</th>",!
  W " <th>"_$$^%W1DICT("PROFITPERCENT")_"</th>",!
  W " <th>"_$$^%W1DICT("CLIENTPRICE")_"</th>",!
  W "</tr>",!
  ;
  S COLST=$$COLST
  ;
  N ONCHANGE
  F I=1:1:COLST D
  .S ONCHANGE=" onChange=""OnChange('"_I_"')"" "
  .W "<tr>"
  .W " <td><input type=""text"" size=""12"" "_ONCHANGE_"id=""type"_I_""" maxlength=""12"" value="""_$$TYPE(NOM,I)_"""></td>",!
  .W " <td><input type=""text"" "_ONCHANGE_" dir=""LTR"" "_$$^%W1ALIGN_" size=""12"" id=""typef"_I_""" "
  . ;;W " onKeyUp=""EnglishOnly(event,'typef"_I_"')"" "
  . W "  maxlength=""12"" value="""_$$TYPEF(NOM,I)_"""></td>",!
  .S DIRNAME=$$DIRNAME
  .N NAME S NAME=$$SHOWNAME($$NAME(NOM,I))
  .N KEYUP S KEYUP=""
  .;;I DIRNAME="LTR" S KEYUP=" onKeyUp=""EnglishOnly(event,'name"_I_"')"" "
  .W " <td><input type=""text"" dir="""_DIRNAME_""" "_ONCHANGE_" size=""55"" id=""name"_I_""" size=""60"" maxlength=""60"" "_KEYUP_" value="""_NAME_"""></td>",!
  .W " <td><input type=""text"" dir=""RTL"" "_ONCHANGE_" size=""7"" id=""bft"_I_""" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"','1')"" onBlur=""OnChangeSum(this)"" value="""_$$BFTAX(NOM,I)_"""></td>",!
  .W " <td><input type=""text"" dir=""RTL"" "_ONCHANGE_" size=""6"" id=""percent"_I_""" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"','1')"" onBlur=""OnChangeSum(this)"" value="""_$J($$PERCENT(NOM,I),2,2)_"""></td>",!
  .W " <td><input type=""text"" dir=""RTL"" "_ONCHANGE_" size=""8"" id=""aft"_I_""" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"','2')"" onBlur=""OnChangeSum(this)"" value="""_$$AFTAX(NOM,I)_"""></td>",!
  .W "</tr>",!
  ;
  S MAM=$$MAM(NOM)
  S SHUM=$$SUMTD(NOM)
  ;
  W "<tr>"
  D TDN,TDN
  W "<td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  D TDLTR W " id=""bftot""><b>"_$J(SHUM-MAM,2,2)_"</b></td>"
  D TDLTR W " >&nbsp;</td>"
  D TDLTR W " id=""aftot""><b>"_$J(SHUM,2,2)_"</b></td>"
  W "</tr>",!
  ;
  G ET
  ;
  S DT=$$^%L1DC(DAT,3)
  S AHMAM=$$AHMAM(NOM)_"%"
  W "<tr>"
  D TDN,TDN,TDN
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TAX",AHMAM)_"&nbsp;</td>"
   D TDLTR W " id=""tax""><b>"_$J($G(MAM),2,2)_"</b></td>"
   W "<td></td>"
  W "</tr>",!
  ;
  W "<tr>"
   D TDN,TDN,TDN
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("AFTERTAX")_"&nbsp;</td>"
   D TDLTR W " id=""tot""><b>"_$J($G(SHUM),2,2)_"</b></td>"
   W "<td></td>"
  W "</tr>",!
  ;
  W "<tr>"
   D TDN,TDN,TDN
   W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("IGUL")_"&nbsp;</td>"
   D TDLTR W " id=""igul""><b>"_$J($J(SHUM,0,0)-$J($G(SHUM),2,2),2,2)_"</b></td>"
   W "<td></td>"
  W "</tr>",!
  ;
  W "<tr>" D TDN,TDN,TDN
   W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
   D TDLTR W " id=""itot""><b>"_$J($J(SHUM,0,0),2,2)_"</b></td>"
   W "<td></td>"
  W "</tr>",!
  ;
ET ;
  W "</table>",!
  ;
  W "<br /><br />"
  W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
   W $$^%W1DICT("COMMENT")_" : "
   W "<input type=""text"" size=""70"" id=""cmnt"" value="""_$$CMNT(NOM)_""">",!
  W "</div>",!
 Q
 ;
 ;
PUTST(PRM) ;
 N SH,ST,TYPE,TYPEF,NAME,SUMBF,SUMAF
 S SH=$P(PRM,";") I 'SH Q 0
 S ST=$P(PRM,";",2)
 S TYPE=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(ST,"~",1)))
 S TYPEF=$$CNWEB^%L1FRM($P(ST,"~",2))
 S NAME=$$CNWEB^%L1FRM($P(ST,"~",3))
 I $$DIRNAME="RTL" S NAME=$$INVH^%L1FRM(NAME)
 S SUMBF=$P(ST,"~",4)
 S SUMAF=$P(ST,"~",5)
 S PERCENT=$P(ST,"~",6)
 S @$$^W4MAIN("TMPHM")@(SH)=TYPE_"\"_TYPEF_"\"_NAME_"\"_SUMBF_"\"_SUMAF_"\"_PERCENT
 Q 1
 ;
PUT(PRM) ; -- SAVE NEW
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4HZMHC-PUT","PRM=PRM")
 D GL,GLHR S COLST=$$COLST
 ;
 S NOM=$P(PRM,";",1)
 ;
 S LKHDET=$P(PRM,";",2)
 ;
 D IFNEWLKH^W4LHB(LKHDET)
 ;
 D GETDETLKH^W4LHB(LKHDET)
 ;
 S LKH=$$^W4CDLK($P(LKHDET,"~"))
 ;
 S DESCR=$P(PRM,";",3)
 S DESCR=$$CNWEB^%L1FRM(DESCR)
 S DESCR=$$INVH^%L1FRM(DESCR)
 ;
 S HRA=$P(PRM,";",4)
 S HRA=$$CNWEB^%L1FRM(HRA)
 S HRA=$$INVH^%L1FRM(HRA)
 ;
 I 'NOM S NUMBER=$$LASTNOM+1
 I NOM D
 .S NUMBER=NOM
 .K @GL@(NUMBER)
 ;
 S (SSUMBF,SSUMAF)=0
 L +@GL@(NUMBER):1
 ;
 N TMPHM S TMPHM=$$^W4MAIN("TMPHM")
 S SH="" F  S SH=$O(@TMPHM@(SH))  Q:SH=""  I SH?1N.N D
 .N ST S ST=$G(^(SH))
 .S SUMBF=$P(ST,"\",4),SSUMBF=SSUMBF+SUMBF
 .S SUMAF=$P(ST,"\",5),SSUMAF=SSUMAF+SUMAF
 ;
 S IGUL=$J($J(SSUMAF,0,0)-$J(SSUMAF,2,2),2,2)
 S SUMTD=$J(SSUMAF,0,0)
 ;
 S SH="" F  S SH=$O(@TMPHM@(SH))  Q:SH=""  I SH?1N.N D
 .S @GL@(NUMBER,SH)=$G(@TMPHM@(SH))
 ;
 S AHMAM=$$AHMAM(0)
 S MAM=SUMTD*AHMAM/(100+AHMAM)
 S MAM=$J(MAM,2,2)
 ;
 S @GL@(NUMBER)=DESCR_"\"_W4LKH1_"\"_W4TEL_"\"_W4PELE_"\"_AHMAM_"\"_SUMTD_"\"_MAM_"\"_$ZD($H,"DD.MM.YY")_"\"_HRA
 S $P(@GL@(NUMBER),"\",10)=IGUL
 S $P(@GL@(NUMBER),"\",11)=W4FAX
 S $P(@GL@(NUMBER),"\",12)=LKH
 D ^%S2GLSV(GL_"("_NUMBER_")",$$^W4FGIB)
 L -@GL@(NUMBER)
 ;
 S @$$^W4GL("W4HZMHC")@(LKH,NUMBER)=$H
 D ^%S2GLSV($$^W4GL("W4HZMHC")_"("""_LKH_""","""_NUMBER_""")",$$^W4FGIB)
PUTE ;
 K @$$^W4MAIN("TMPHM")
 Q NUMBER
 ;
GL ;
 S GL=$$^W4GL("HZMHC")
 Q
 ;
GLHR ;
 S GLHR=$$^W4GL("HZMHC")_"(NUMBER,""CMNT"")"
 Q
 ;
COLST(STAM) Q 25
 ;
TYPE(NOM,SH) ;
 D GL
 N ST S ST=$G(@GL@(NOM,SH))
 Q $$H2U^%L1FRM($P(ST,"\",1))
 ;
TYPEF(NOM,SH) ;
 D GL
 N ST S ST=$G(@GL@(NOM,SH))
 Q $P(ST,"\",2)
 ;
NAME(NOM,SH) ;
 D GL
 N ST S ST=$G(@GL@(NOM,SH))
 Q $P(ST,"\",3)
 ;
BFTAX(NOM,SH) ;
 D GL
 N ST S ST=$G(@GL@(NOM,SH))
 Q $P(ST,"\",4)
 ;
PERCENT(NOM,SH) ;
 N PERCENT
 D GL
 N ST S ST=$G(@GL@(NOM,SH))
 S PERCENT=$P(ST,"\",6)
 N BFTAX S BFTAX=$$BFTAX(NOM,SH)
 I 'PERCENT,'NOM!'BFTAX S PERCENT=$G(@$$^W4PRM@("PROFIT"))
 I 'PERCENT,NOM,BFTAX D
 .S PERCENT=$$AFTAX(NOM,SH)/$$BFTAX(NOM,SH)
 .S PERCENT=PERCENT*100/(100+$$MAMD^W4L($$^%L1DC($$DAT(NOM),3)))
 .S PERCENT=$J((PERCENT-1)*100,2,2)
 Q PERCENT
 ;
AFTAX(NOM,SH) ;
 D GL
 N ST S ST=$G(@GL@(NOM,SH))
 Q $P(ST,"\",5)
 ;
LASTNOM(STAM)
 Q $O(@GL@(999999),-1)
 ;
DESCR(NOM) ;
 Q $$H2U^%L1FRM(DSCR(NOM)) ;
 ;
DSCR(NOM) ;
 I '$G(NOM) Q ""
 D GL
 Q $P($G(@GL@(NOM)),"\",1)
 ;
LKH(NOM) ;
 I '$G(NOM) Q ""
 D GL
 N LKH
 S LKH=$P($G(@GL@(NOM)),"\",12)
 I LKH="" D
 .S LKH=$$^W4CDLK($$TEL1(NOM))
 Q LKH
 ;
LKHNAME(NOM) ;
 Q $$H2U^%L1FRM($$LKHNM(NOM))
 ;
LKHNM(NOM)
 I '$G(NOM) Q ""
 D GL
 Q $P($G(@GL@(NOM)),"\",2)
 ;
TEL1(NOM) ;
 I '$G(NOM) Q ""
 D GL
 Q $P($G(@GL@(NOM)),"\",3)
 ;
TEL2(NOM) ;
 I '$G(NOM) Q ""
 D GL
 Q $P($G(@GL@(NOM)),"\",4)
 ;
AHMAM(NOM) ;
 I '$G(NOM) Q $G(@$$^W4PRM@("MAM"))
 D GL
 Q $P($G(@GL@(NOM)),"\",5)
 ;
SUMTD(NOM) ;
 I '$G(NOM) Q ""
 D GL
 Q $P($G(@GL@(NOM)),"\",6)
 ;
MAM(NOM) ;
 I '$G(NOM) Q ""
 D GL
 Q $P($G(@GL@(NOM)),"\",7)
 ;
DAT(NOM) ;
 I '$G(NOM) Q $ZD($H,"DD.MM.YY")
 D GL
 Q $P($G(@GL@(NOM)),"\",8)
 ;
CMNT(NOM) ;
 I '$G(NOM) Q ""
 D GL
 Q $$H2U^%L1FRM($P($G(@GL@(NOM)),"\",9))
 ;
IGUL(NOM) ;
 I '$G(NOM) Q ""
 D GL
 Q $P($G(@GL@(NOM)),"\",10)
 ;
DIRNAME()
 Q $$DIRNAME^W3PRM
 ;
SHOWNAME(NAME) ;
 I $$DIRNAME="RTL" Q $$H2U^%L1FRM(NAME)
 Q NAME
 ;
DESCKOT ;
 W "<table dir="""_$$^%W1DIR_""" width=""40%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"_$$^%W1DICT("DESCRIPTION")_"</td>"
   W " <td colspan=""3""><input type=""text"" size=""38"" id=""descr"" value="""_$$DESCR(NOM)_"""></td>",!
  W "</tr>",!
  ;
  ;D OLDKOT
 ;
 W "</table>",!
 W "<br />",!
 Q
 ;
OLDKOT ;
  W "<tr>"
   W " <td>"_$$^%W1DICT("CUSTOMNAME")_"</td>"
   W " <td colspan=""3""><input type=""text"" size=""38"" id=""lkh"" value="""_$$LKHNAME(NOM)_"""></td>",!
  W "</tr>",!
  W "<tr>"
   W " <td>"_$$^%W1DICT("TEL1")_"</td>"
   W " <td><input type=""text"" size=""11"" maxlength=""11"" id=""tel1"" value="""_$$TEL1(NOM)_"""></td>",!
   W " <td>"_$$^%W1DICT("TEL2")_"</td>"
   W " <td><input type=""text"" size=""11"" maxlength=""11"" id=""tel2"" value="""_$$TEL2(NOM)_"""></td>",!
  W "</tr>",!
  Q
  ;
GETLKH(NOM) ;
 I $G(%ARG("LKH")) Q %ARG("LKH")
 I $G(NOM) Q $$LKH(NOM)
 Q ""
 
 

W4HZMHCV
W4HZMHCV ; [ 24.01.11 11:19 ] [ 12.01.11 18:34 ] [ 08.01.11 16:17 ]
 N (JB,%ARG,%REM)
 S NOM=+$G(%ARG("NOM")) Q:'NOM
 S LKH=$$LKH^W4HZMHC(NOM)
 ;
 S DAT=$$DAT(NOM)
 D KOTHSB(NOM,LKH,DAT)
 ;
 ;W "<table dir="""_$$^%W1DIR_""" width=""40%"" border=""0"" cellspacing=""0"">",!
  ;W "<tr>"
  ; W " <td>"_$$^%W1DICT("DESCRIPTION")_"</td>"
  ; W " <td colspan=""3"">"_$$DESCR(NOM)_"</td>",!
  ;W "</tr>",!
  ;W "<tr>"
  ; W " <td>"_$$^%W1DICT("CUSTOMNAME")_"</td>"
  ; W " <td colspan=""3"">"_$$LKHNAME(NOM)_"</td>",!
  ;W "</tr>",!
  ;W "<tr>"
  ; W " <td>"_$$^%W1DICT("TEL1")_"</td>"
  ; W " <td>"_$$TEL1(NOM)_"</td>",!
  ; W " <td>"_$$^%W1DICT("TEL2")_"</td>"
  ; W " <td>"_$$TEL2(NOM)_"</td>",!
  ;W "</tr>",!
 ;W "</table>",!
 ;
 W "<br />",!
 ;
 D DAF1
 ;
 I '$G(%ARG("PRINT")) W "<br />" D DIVBUT
 Q
 ;
KOTHSB(NOM,LKH,DAT) ;
 D ^W4KOTHSB(NOM,LKH,DAT,"HZMHC")
 Q
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td dir=""LTR"" "_$$^%W1ALIGN
 Q
TDN W "<td>&nbsp;</td>",!
 Q
 ;
DAF1 ;
 N (JB,%ARG,NOM)
 ;
 W "<table id=""TblInvcBd"" dir="""_$$^%W1DIR_""" width=""95%"" border=""1"" cellspacing=""0"">",!
  ;
  D COLST
  ;
  W "<tr>"
  W " <th>"_$$^%W1DICT("TYPE")_"</th>",!
  W " <th width=""50%"">"_$$^%W1DICT("ITEMNAME")_"</th>",!
  W " <th>"_$$^%W1DICT("FOREIGNTYPE")_"</th>",!
  W "</tr>",!
  ;
  F I=1:1:COLST D
  .;;I $$NO($$TYPE(NOM,I)),$$NO($$NAME(NOM,I)),$$NO($$TYPEF(NOM,I)) Q
  .I $$NO($$NAME(NOM,I)) Q
  .W "<tr>"
  .W " <td>"_$$TYPE(NOM,I)_"</td>",!
  .W " <td dir="""_$$DIRNAME^W4HZMHC_""" width=""70%"">"_$$SHOWNAME^W4HZMHC($$NAME(NOM,I))_"</td>",!
  .W " <td dir=""LTR"">"_$$TYPEF(NOM,I)_"</td>",!
  .W "</tr>",!
  ;
  W "</table>",!
  ;
  W "<br />",!
  ;
  W "<table id=""TblTot"" dir="""_$$^%W1DIR_""" width=""70%"" border=""0"">",!
  W "<tr style=""font-size:"_$$^W3FSZ(16)_";color:black"">"
   W "<td "_$$INV^%W1ALIGN_" width=""20%"">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
   D TDLTR W " ><b>"_$J($$SUMTD(NOM),2,2)_"</b></td>"
  W "</tr>",!
  ;
  S AHMAM=$$AHMAM(NOM)_"%"
  W "<tr>"
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TAX",AHMAM)_"&nbsp;</td>"
   D TDLTR W " id=""tax""><b>"_$J($$MAM(NOM),2,2)_"</b></td>"
   W "<td></td>"
  W "</tr>",!
  ;
  W "<tr>"
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("BEFORETAX")_"&nbsp;</td>"
   D TDLTR W " id=""bftot""><b>"_$J($$SUMTD(NOM)-$$MAM(NOM),2,2)_"</b></td>"
   W "<td></td>"
  W "</tr>",!
  ;
  W "<tr>" D TDN,TDN,TDN W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$^%W1DICT("COMMENT")_" : </td>"
   W "<td>"_$$CMNT(NOM)_"</td>"
   W "</tr>",!
  W "</table>",!
  ;
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:black",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Edit",$$^%W1DICT("EDIT"),"Edit('"_NOM_"')","color:darkblue",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("New",$$^%W1DICT("CREATENEWDOC"),"NewDoc('"_NOM_"')","color:green",",,,180")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("DELETE"),"Delete('"_NOM_"')","color:darkred",",,,180")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GL ;
 D GL^W4HZMHC
 Q
 ;
COLST S COLST=$$COLST^W4HZMHC
 Q
 ;
TYPE(NOM,SH) ;
 Q $$TYPE^W4HZMHC(NOM,SH)
 ;
TYPEF(NOM,SH) ;
 Q $$TYPEF^W4HZMHC(NOM,SH)
 ;
NAME(NOM,SH) ;
 Q $$NAME^W4HZMHC(NOM,SH)
 ;
DESCR(NOM) ;
 Q $$DESCR^W4HZMHC(NOM)
 ;
LKH(NOM)
 Q $$LKH^W4HZMHC(NOM)
 ;
LKHNAME(NOM) ;
 Q $$LKHNAME^W4HZMHC(NOM)
 ;
TEL1(NOM) ;
 Q $$TEL1^W4HZMHC(NOM)
 ;
TEL2(NOM) ;
 Q $$TEL2^W4HZMHC(NOM)
 ;
AHMAM(NOM) ;
 Q $$AHMAM^W4HZMHC(NOM)
 ;
SUMTD(NOM) ;
 Q $$SUMTD^W4HZMHC(NOM)
 ;
MAM(NOM) ;
 Q $$MAM^W4HZMHC(NOM)
 ;
DAT(NOM) ;
 Q $$DAT^W4HZMHC(NOM)
 ;
CMNT(NOM) ;
 Q $$CMNT^W4HZMHC(NOM)
 ;
IGUL(NOM) ;
 Q $$IGUL^W4HZMHC(NOM)
 ;
NO(RKV) ;
 I $G(RKV)="" Q 1
 I $G(RKV)="&nbsp;" Q 1
 I $G(RKV)["<UNDEF" Q 1
 I $G(RKV)?." " Q 1
 Q 0
 ;
DELETE(PRM) ;
 I $G(PRM)="" Q 0
 D GL
 K @GL@(PRM)
 Q 1

W4HZMIT
W4HZMIT ;-- SEND PRINT TO KITCHEN (MISSADA)            [ 24.09.26 09:53 ] [ 29.12.25 12:10 ] [ 20.08.25 12:06 ] 
 ; INPUT : ^THZ1(%L3MYDVN),GLBV,GLBV1,HZM
 ;------------------------------------
 N I,P1HZMM,I,P1HZMET,P1HZMET0,SHZM,NMB,HZMMSL
 S NMB=$$NMB^W4HZMST(HZM)
 ;
 S P1HZMM=1
 ;; -- 23/05/12
 F I=$O(@GLORD@(99999),-1):-1:0 Q:$G(^(I))["\@@"&($G(^(I))'["@@!")
 ;;S P1HZMM=I+1 I P1HZMM<1 S P1HZMM=1
 ;
 I $G(@$$^W4PRM@("HZMDBL")) D
 .S P1HZMET0=$S(I<1:1,1:I)
 ;
 D PUT^%W3DEB("W4HZMIT","P1HZMM=P1HZMM & P1HZMET0=P1HZMET0")
 ;
 D ^W4HZMPC S %SCRN=HZSCR ; -- !!!
 ;
 I $$MAILBIT^W4PRM,$D(@$$^W4ORD@(HZM,"BIT"))>9 D MAILBT(HZM)
 ;
 S %SCRN=HZSCR
 I $G(P1HZOP)="NOPC" K P1HZOP D CLEAR G END
 ;
 N KET S KET=$G(@$$^W4PRM@("HZMDBL","ET"),1)
 ;
 I $G(@$$^W4PRM@("HZMDBL")) F SHZM=1:1:KET D
 .K P1HZMET I SHZM<KET S P1HZMET("SHZM")=""
 .S P1HZMET=$G(P1HZMET0)
 .S P1HZMET("DBL")=""
 .D ^W4HZMPC
 ;
 D CLEAR
 ;
 I $$IFHZMMSL(HZM,NMB),'$$^W4HZMH(HZM),'$$VVMSK^W4PRM,'$$^W4PIZUL(HZM) D HZMMSL
 I $$IFHZMMSL(HZM,NMB),$$^W4HZMH(HZM),$$VVMSK^W4PRM,'$$^W4PIZUL(HZM) D HZMMSL
 ;
 I $$TLBIT^W4PRM D
 .N N,OK S OK=0,N=""
 .F  S N=$O(@GLORD@("BIT",N)) Q:N=""  D  Q:OK
 ..N A S A=$G(^(N))
 ..I '$$AVAR^W4HZMST(HZM,N),'$D(@$$^W4ORD@(HZM,"BIT",N,"PC")) S OK=1
 .Q:'OK
 .D ^%L1TS
 .N SHM,ITS,IET,P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR
 .N N1,SM,PRINT,SUG,%MDP
 .S SHM="HB1",ITS=3,IET="ETHB1"
 .S P1HZHB1="B",N1=1,SM=1
 .D ^W4MDPPC
 .N P1HZMSL
 .I '$D(%MDP("B")) D ^W4MDPPC
 .D P2^W4HZTM
 ;
 I $$TLHNH^W4PRM D
 .N N,OK S OK=0,N=""
 .F  S N=$O(@GLORD@("HNH",N)) Q:N=""  I '$D(@GLORD@("HNH",N,"PC")) S OK=1 Q
 .Q:'OK
 .D ^%L1TS
 .N SHM,ITS,IET,P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR
 .N N1,SM,PRINT,SUG,%MDP
 .S SHM="HB1",ITS=3,IET="ETHB1"
 .S P1HZHB1="H",N1=1,SM=1
 .D ^W4MDPPC
 .N P1HZMSL
 .I '$D(%MDP("B")) D ^W4MDPPC
 .D P2^W4HZTM
 ;
END D KILL^%W1PRM("PCMV","",$P(JB,"."))
 Q
 ;
 ;
HZMMSL ;
 I $G(HZM)<1 Q
 I $$^W4HZMH(HZM) Q
 D ^%L1TS
 N SHM,ITS,IET,P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR
 N N1,SM,PRINT,SUG,%MDP
 ;
 S SHM="HB1",ITS=3,IET="ETHB1"
 S P1HZHB1="M",N1=1,SM=1
 N P1HZMSL
 ;
 D ^W4MDPPC
 ;
 I $G(P1HZHB1)="M",$$MDPMSL^W4PRM>2 D
 .D ^W4MDPMSL(1)
 .S P1HZHB1("MSL")=1,P1HZMSL=""
 .I $$DELIS^W4PRM S @$$^W4GL("W4PCDOC")@(HZM)=$H_"\"_$$^W4MYDVN_"\"_JB
 ;
 ;;I $$TMMSL^W4PRM,'$$TAKEAWAY^W4HZMST(HZM)!$D(W4BONVW) D  Q:'$$ITRA^W4HZMST(HZM); -- 20.08.25
 I $$TMMSL^W4PRM D  Q:'$$ITRA^W4HZMST(HZM); -- 20/08/25
 .I $$NOTM^W4PRM,'$$ITRA^W4HZMST(HZM) D  Q
 ..N P1TNOPR,BLIPR
 ..S %ARG("PRINTPORT")=PRINT
 ..I $$SHUL^W4HZMST(HZM) D ^W4PCHB(HZM,1)
 ..I $$SHULA^W4HZMST(HZM),'$$SHUL^W4HZMST(HZM) D ^W4PCHB2(HZM)
 ..I '$$SHUL^W4HZMST(HZM),'$$SHULA^W4HZMST(HZM) D ^W4PCHB(HZM,1) ; -- 02.05.23
 ..K %ARG("PRINT")
 .
 .D PUTTM^W4DLVORD(HZM,9999)
 ;
 D P2^W4HZTM
 S @$$^W4ORD@(HZM,"PCMSL")=$H
 ;
 N MDPMSL S MDPMSL=$$MDPMSL^W4PRM
 I $D(P1HZMSL),MDPMSL>2,MDPMSL["," D
 .S ^LEVD("W4HZMIT-HZMMSL",2)=""
 .S P1HZHB1="M",P1HZHB1("MSL")=2
 .D ^W4MDPMSL(2)
 .I '$D(%MDP("B")) D ^W4MDPPC
 .D P2^W4HZTM
 ;
 K P1HZHB1
 Q
 ;
 ;
CLEAR ;
 N N,N1
 S N="" F  S N=$O(@GLORD@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLORD@(N,N1)) Q:N1=""  D
 ..I N1["A-00-" K ^(N1)
 Q
 ;
IFHZMMSL(HZM,NMB) ;
 I $$PAPJ^W4PRM Q 0  ; -- HADPASA BE MADBEKOT
 N HZMMSL S HZMMSL=$G(@$$^W4PRM@("HZMMSL"))
 I '$G(P1HZMM) Q 0
 I '$D(@GLBV1@(P1HZMM)) Q 0
 I $G(@$$^W4PRM@("SND2MSL")),'$$SND2MSL(HZM) Q 0 
 I $$TAKEAWAY^W4HZMST(HZM),$G(@$$^W4PRM@("NOMSLTAW")) Q 0
 I $$^W4MSL(NMB),HZMMSL Q 1
 I HZMMSL=2&$$^W4MSD(NMB) Q 1
 I $$TAWM^W4DLPK(NMB)&(HZMMSL=3) Q 1
 I $$TAW^W4DLPK(NMB)&$G(@$$^W4PRM@("TAW2MSL"))&(HZMMSL=3) Q 1
 I HZMMSL=4 Q 1
 Q 0
 ;
FUTUREDT(HZM) 
 I $G(@$$^W4PRM@("NOFUTDT")) Q 0
 N TRH,EX S TRH=$$TRH^W4HZMST(HZM),EX=0 
 N DTH S DTH=$$^%L1DC(TRH,3) 
 N SHAAHZ S SHAAHZ=$$SHAA^W4HZMST(HZM) 
 N SECHZ S SECHZ=SHAAHZ*3600+($P(SHAAHZ,":",2)*60)
 I $$DIF^%L1TIME(DTH_","_SECHZ,$H)<120 Q 0
 N SHAAZ S SHAAZ=$$SHAAZ^W4PRM
 N DZ S DZ=$$^W4DZ
 I DZ=($H-1),$P($H,",",2)>(SHAAZ*3600) S DZ=+$H
 I DTH'>DZ Q 0
 I +DTH=(DZ+1),$$SHAA^W4HZMST(HZM)<SHAAZ Q 0
 I $$SF^W4PRM,$$^%L1DC(DZ,8)=5,DTH=(DZ+3),$ZD($H,"24:60")>14 Q 0  ; *** 12/01/20 LEV
 I DTH>(DZ+1) Q 1
 I '$$SF^W4PRM Q 1
 ;
 I DTH=(DZ+1),+$H=DZ D 
 .I $$TSHL^W4HZMST(HZM)<1 S EX=0 Q  ;-- LEHADPIS BITULIM 
 .N FUTHR S FUTHR=$G(@$$^W4PRM@("FUTHR"))
 .I 'FUTHR S FUTHR=11
 .I $$SHAA^W4HZMST(HZM)>FUTHR S EX=1 Q 
 .I $P($H,",",2)<(16*3600) S EX=1 Q 
 ;
 Q EX 
 ;
 ;
SND2MSL(HZM) ;
 I '$$HZM^W4MSL(HZM) Q 0
 ;
 N CDSNDNOW S CDSNDNOW=$G(@$$^W4PRM@("SND2MSL")) I 'CDSNDNOW Q 0
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(HZM)",DLM="\"
 F I=1:1 Q:'$D(@GL@(I))  S PAR=$P(^(I),DLM) I $L(PAR),PAR=CDSNDNOW S OK=1 Q
 Q OK
 ;
MAILBT(HZM) ;
 N OKB,N S OKB=0
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .I '$$AVAR^W4HZMST(HZM,N),'$D(@$$^W4ORD@(HZM,"BIT",N,"MAIL")) S OKB=1
 Q:'OKB
 Q:$G(@$$^W4PRM@("MAILBTTO"))=""
 J ^W4MAILBT(HZM,"B",JB)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMIT0
W4HZMIT ;-- SEND PRINT TO KITCHEN (MISSADA)            [ 12.11.19 08:06 ] [ 10.11.19 10:16 ] [ 08.08.18 11:23 ] 
 ; INPUT : ^THZ1(%L3MYDVN),GLBV,GLBV1,HZM
 ;------------------------------------
 N I,P1HZMM,I,P1HZMET,P1HZMET0,SHZM,NMB,HZMMSL
 S NMB=$$NMB^W4HZMST(HZM)
 K ^LEVD("W4HZMIT-HZMMSL")
 ;
 S P1HZMM=1
 ;; -- 23/05/12
 F I=$O(@GLORD@(99999),-1):-1:0 Q:$G(^(I))["\@@"&($G(^(I))'["@@!")
 ;;S P1HZMM=I+1 I P1HZMM<1 S P1HZMM=1
 ;
 I $G(@$$^W4PRM@("HZMDBL")) D
 .S P1HZMET0=$S(I<1:1,1:I)
 ;
 D PUT^%W3DEB("W4HZMIT","P1HZMM=P1HZMM & P1HZMET0=P1HZMET0")
 ;
 D ^W4HZMPC S %SCRN=HZSCR
 ;
 I $$MAILBIT^W4PRM,$D(@$$^W4ORD@(HZM,"BIT"))>9 D
 .N OKB,N S OKB=0
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 ..I '$$AVAR^W4HZMST(HZM,N),'$D(@$$^W4ORD@(HZM,"BIT",N,"PC")) S OKB=1
 .Q:'OKB
 .Q:$G(@$$^W4PRM@("MAILBTTO"))=""
 .J ^W4MAILBT(HZM,"B",JB)
 ;
 S %SCRN=HZSCR
 I $G(P1HZOP)="NOPC" K P1HZOP D CLEAR G END
 ;
 N KET S KET=$G(@$$^W4PRM@("HZMDBL","ET"),1)
 ;
 I $G(@$$^W4PRM@("HZMDBL")) F SHZM=1:1:KET D
 .K P1HZMET I SHZM<KET S P1HZMET("SHZM")=""
 .S P1HZMET=$G(P1HZMET0)
 .S P1HZMET("DBL")=""
 .D ^W4HZMPC
 ;
 D CLEAR
 ;
 I $$IFHZMMSL(HZM,NMB),'$$^W4HZMH(HZM),'$$^W4PIZUL(HZM) D HZMMSL  ;--- LE MESHALEAH
 ;
 I $G(@$$^W4PRM@("TLBIT")) D
 .N N,OK S OK=0,N=""
 .F  S N=$O(@GLORD@("BIT",N)) Q:N=""  D  Q:OK
 ..N A S A=$G(^(N))
 ..I '$$AVAR^W4HZMST(HZM,N),'$D(@$$^W4ORD@(HZM,"BIT",N,"PC")) S OK=1
 .Q:'OK
 .D ^%L1TS
 .N SHM,ITS,IET,P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR
 .N N1,SM,PRINT,SUG,%MDP
 .S SHM="HB1",ITS=3,IET="ETHB1"
 .S P1HZHB1="B",N1=1,SM=1
 .D ^W4MDPPC
 .N P1HZMSL
 .I '$D(%MDP("B")) D ^W4MDPPC
 .D P2^W4HZTM
 ;
 I $G(@$$^W4PRM@("TLHNH")) D
 .N N,OK S OK=0,N=""
 .F  S N=$O(@GLORD@("HNH",N)) Q:N=""  I '$D(@GLORD@("HNH",N,"PC")) S OK=1 Q
 .Q:'OK
 .D ^%L1TS
 .N SHM,ITS,IET,P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR
 .N N1,SM,PRINT,SUG,%MDP
 .S SHM="HB1",ITS=3,IET="ETHB1"
 .S P1HZHB1="H",N1=1,SM=1
 .D ^W4MDPPC
 .N P1HZMSL
 .I '$D(%MDP("B")) D ^W4MDPPC
 .D P2^W4HZTM
 ;
END D KILL^%W1PRM("PCMV")
 Q
 ;
 ;
HZMMSL ;
 D ^%L1TS
 N SHM,ITS,IET,P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR
 N N1,SM,PRINT,SUG,%MDP
 ;;I $$FUTUREDT(HZM) Q
 ;
 S SHM="HB1",ITS=3,IET="ETHB1"
 S P1HZHB1="M",N1=1,SM=1
 N P1HZMSL
 ;
 D ^W4MDPPC
 ;
 I $G(P1HZHB1)="M",$G(@$$^W4PRM@("MDPMSL"))>2 D
 .D ^W4MDPMSL(1)
 .S P1HZHB1("MSL")=1,P1HZMSL=""
 ;
 S ^LEVD("W4HZMIT-HZMMSL",1)=""
 D P2^W4HZTM
 ;
 I $D(P1HZMSL),$G(@$$^W4PRM@("MDPMSL"))>2,^("MDPMSL")["," D
 .S ^LEVD("W4HZMIT-HZMMSL",2)=""
 .S P1HZHB1="M",P1HZHB1("MSL")=2
 .D ^W4MDPMSL(2)
 .I '$D(%MDP("B")) D ^W4MDPPC
 .D P2^W4HZTM
 ;
 K P1HZHB1
 Q
 ;
 ;
CLEAR ;
 N N,N1
 S N="" F  S N=$O(@GLORD@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLORD@(N,N1)) Q:N1=""  D
 ..I N1["A-00-" K ^(N1)
 Q
 ;
IFHZMMSL(HZM,NMB) ;
 N HZMMSL S HZMMSL=$G(@$$^W4PRM@("HZMMSL"))
 I '$G(P1HZMM) Q 0
 I '$D(@GLBV1@(P1HZMM)) Q 0
 I $G(@$$^W4PRM@("SND2MSL")),'$$SND2MSL(HZM) Q 0 
 I $$^W4MSL(NMB),HZMMSL Q 1
 I HZMMSL=2&$$^W4MSD(NMB) Q 1
 I $$TAWM^W4DLPK(NMB)&(HZMMSL=3) Q 1
 I $$TAW^W4DLPK(NMB)&$G(@$$^W4PRM@("TAW2MSL"))&(HZMMSL=3) Q 1
 I HZMMSL=4 Q 1
 Q 0
 ;
FUTUREDT(HZM) 
 N TRH,EX S TRH=$$TRH^W4HZMST(HZM),EX=0 
 N DTH S DTH=$$^%L1DC(TRH,3) 
 I DTH>($H+1) Q 1
 I DTH=($H+1) D 
 .I $$TSHL^W4HZMST(HZM)<1 S EX=0 Q  ;-- LEHADPIS BITULIM 
 .N FUTHR S FUTHR=$G(@$$^W4PRM@("FUTHR"))
 .I 'FUTHR S FUTHR=14
 .I $$SHAA^W4HZMST(HZM)>FUTHR S EX=1 Q 
 .I $P($H,",",2)<((FUTHR+1)*3600) S EX=1 Q 
 Q EX 
 ;
 ;
SND2MSL(HZM) ;
 I '$$HZM^W4MSL(HZM) Q 0
 ;
 N CDSNDNOW S CDSNDNOW=$G(@$$^W4PRM@("SND2MSL")) I 'CDSNDNOW Q 0
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(HZM)",DLM="\"
 F I=1:1 Q:'$D(@GL@(I))  S PAR=$P(^(I),DLM) I $L(PAR),PAR=CDSNDNOW S OK=1 Q
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMMCC
W4HZMMCC ; DOCH HAZMANOT;   [ 13.06.23 16:56 ] [ 10.04.22 15:44 ] [ 21.02.22 06:35 ] 
 N (JB,%ARG,%REPN)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K ^D
 I '$D(@$$^W4GL("P1IR")@(0)),$D(@$$^W4GL("P1IR"))>9 D
 .S @$$^W4GL("P1IR")@(0)="TAKEAWAY"
 ;
 S %REPN=$G(%ARG("REPN")) Q:%REPN=""
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")=%REPN
 ;
 S TMPIR=$$^W4MAIN("TMPIR") K @TMPIR
 N IRS S IRS="" F  S IRS=$O(@$$^W4GL("P1IR")@(IRS)) Q:IRS=""  D
 .N IR1 S IR1=$G(^(IRS))
 .I $L(IR1) D
 ..S @TMPIR@(IR1)=IRS
 ..I IR1="dewz gzt" S IR1="deewz gzt" S @TMPIR@(IR1)=IRS
 Q
 ;
 ;
TRH ;
 S ^|$$^W3MAIN|DD("METRH")=METRH
 S ^|$$^W3MAIN|DD("ADTRH")=ADTRH
 I DATH<METRH S OK=0 Q
 I DATH>ADTRH S OK=2 Q
 Q
 ;
 ;
HZM ;
 S ^|$$^W3MAIN|DD(HZM)=""
 S TMPIR=$$^W4MAIN("TMPIR")
 S MSDHZ=$G(@GLOB)
 ;
 S MSDR=$$GETP^%W1PRM("MSDR")
 ;
 S MKR=$$MKR^W3HZMST(HZM) I MKR'=98 S OK=0 Q
 ;
 S ^|$$^W3MAIN|DD(HZM,"MSDHZ")=MSDHZ
 S ^|$$^W3MAIN|DD(HZM,"MSDR")=MSDR
 I MSDR,'$$BELONG2MSDR^W3ORDLS(MSDR,MSDHZ) S OK=0 Q
 ;
 S BAIT=$$HOME^W3HZMST(HZM),DIRA=$$FLOOR^W3HZMST(HZM)
 I BAIT,DIRA S BAIT=BAIT_"/"_DIRA
 S ADR=BAIT_" "_$$KTV^W3HZMST(HZM)
 ;
 S IR=$$CITY^W3HZMST(HZM)
 S IR=$$RPL^%L1FRM(IR,"HD_","")
 ;
 S (AZOR,AZOR1)=""
 ;
 S NMB=$$NMB^W3HZMST(HZM)
 S TRH=$$DAT^W3HZMST(HZM)
 S SHAA=$$SHAA^W3HZMST(HZM)
 S SHAA=$P($P(SHAA,":",1,2)," ")
 ;
 S LKHN=$$LKHN^W3HZMST(HZM)
 I 'LKHN S LKHN=$$NMB^W3HZMST(HZM)
 S MKBL=$$MKBL^W3HZMST(HZM)
 S ZMANK=$$DATCB^W3HZMST(HZM)
 S SUGT=$$CODTS^W3HZMST(HZM)
 S DMSH=$$DMSH^W3HZMST(HZM)
 S TSHL=$$TSHL^W3HZMST(HZM)
 ;
 N DTH S DTH=$$^%L1DC(TRH,3)
 I SHAA<6 S DTH=DTH-1
 I METRH,DTH<METRH S OK=0 Q
 I ADTRH,TRH>ADTRH S OK=0 Q
 ;D D(.1)
 ;I DTH<METRH S OK=0 Q
 ;D D(.2)
 ;I DTH>(ADTRH+1) S OK=0 Q
 ;D D(.3)
 ;I DTH=(ADTRH+1),SHAA'<$$SHAAZ^W4PRM!'$$^W4SHAAZ S OK=0 Q
 ;I DTH=METRH,SHAA<6 S OK=0 Q
 ;D D(.4)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 S ^DD(HZM,"REPDAYS")=REPDAYS
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DTH,8)) S OK=0 Q
 ;
 I $$^W4ISCDLK(LKHN) S NMB=LKHN
 N NMB1 S NMB1=$TR(NMB,"-","")
 D D(.5)
 I $$TAW^W4DLPK(NMB) S SUGS=$$TAW
 ;
 S IR=$$SPA^%L1FRM($G(IR))
 I IR="" S IR="TAKEAWAY"
 I IR="eti aia` lz" S IR="aia` lz"
 I IR["milyexi" S IR="milyexi"
 ;
VIBMKBL ;
 D D(2)
 I $G(MEMKBL),$G(ADMKBL),MKBL<MEMKBL!(MKBL>ADMKBL) S OK=0 Q
 S MKBL1=$$^W4GNAME(MKBL)
 ;
 I ADSHAA>24,ADSHAA<40,$$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM,$$^%L1DC($P(ZMANK,"  "),3)=METRH S OK=0 Q
 I MESHAA[":"!(ADSHAA[":"),MESHAA<40,ADSHAA<40 S OK=$$VIBTIME^%W1PCP(MESHAA,ADSHAA,SHAA) Q:'OK
 I MESHAA'[":",ADSHAA'[":" D
 .S SHAA1=$S($$^W4SHAAZ&(SHAA<$$SHAAZ^W4PRM)&(ADSHAA>24):SHAA+24,1:SHAA)
 .I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 D D(3)
 ;
 N STS,I D MVT
 S QUERY=$G(QUERY)
 ;
TS ;
 D D(7)
 S x1=DMSH,x2=TSHL,x3=1
 Q
 ;
 ;
TAW(STAM) ;
 N N,OK S N="",OK=0
 F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D  Q:OK
 .I $TR(^(N),". ","")="TAW"!($TR(^(N),". ","")="TAKEAWAY") S OK=1
 Q N
 ;
 ;
MVT ;
 S MVT(1)="onefn"
 S MVT(2)="wiy"
 S MVT(3)="`-k"
 S MVT(4)="dtwd"
 S MVT(5)="yelz"
 Q
 ;
 ;
PRM ;
 S MENMB=$G(%ARG("MENMB"))
 S ADNMB=$G(%ARG("ADNMB")) I 'ADNMB S ADNMB=999
 S MESUGS=$G(%ARG("MESUGS"))
 S ADSUGS=$G(%ARG("ADSUGS")) I 'ADSUGS S ADSUGS=99999
 S MEMKBL=$G(%ARG("MEMKBL"))
 S ADMKBL=$G(%ARG("ADMKBL")) I 'ADMKBL S ADMKBL=99999
 S MEMKR=$G(%ARG("MEMKR"))
 S ADMKR=$G(%ARG("ADMKR")) I 'ADMKR S ADMKR=99999
 S MESHAA=$G(%ARG("MESHAA"))
 S ADSHAA=$G(%ARG("ADSHAA"))
 I 'ADSHAA S ADSHAA=99
 I ADSHAA<MESHAA S ADSHAA=ADSHAA+24
 S MESUGT=$G(%ARG("MESUGT"))
 S ADSUGT=$G(%ARG("ADSUGT")) I 'ADSUGT S ADSUGT=99
 Q
 ;
TAKEAWAY(IR) ;
 I $TR(IR," .","")'="TAKEAWAY",$TR(IR," .","")'="TAW" Q 0
 Q 1
 ;
D(NOM) ; 
 S ^|$$^W3MAIN|D(HZM)=NOM 
 Q 
 ;
SUGT1(SUGT) 
 ;;S ^AA("W1PCP","SUGT",SUGT)=""
 N DLM S DLM=" "
 N SUGT1
 N J S SUGT1="" F J=1:1:$L(SUGT,DLM) D
 .N SUG S SUG=$P(SUGT,DLM,J) Q:'SUG
 .S SUGT1=$G(@$$^W4GL("W3SUGTS")@(SUG))_" "_SUGT1
 Q SUGT1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMP
W4HZMP(HZM,NP,RKV) ; [ 27.09.15 07:03 ] [
 I $G(NP)="" Q $$^W4ORD_"("_HZM_",""MP"",""PAY"")"
 I $G(RKV)="" Q $$^W4ORD_"("_HZM_",""MP"",""PAY"","_NP_")"
 Q $$^W4ORD_"("_HZM_",""MP"",""PAY"","_NP_","""_RKV_""")"
 ;
NEWNP(HZM) ;
 Q $O(@$$W4HZMP(HZM)@(999),-1)+1

W4HZMPC
W4HZMPC ; HAZAGAT HAZMANA LMADPESET MITBAH [ 22.09.26 22:33 ] [ 17.09.26 14:29 ] [ 14.09.26 12:29 ] 
 N (JB,%ARG,%REM,HZM,LKHN,NMB,GLBV,GLBV1,P1HZOP,P1HZMET,P3PCHZ,NOPCMDB)
 K %ARG("GLORD")
 I $$NOPCLOAZ^W4PRM S NOPCLOAZ=""
 ;
 S TMPBON=$$^W4MAIN("TMPBON") K @TMPBON
 S EX=0
 ;
 S @$$^W4PRM@("HZPCSP")=0 ; --- 19/08/20 *** LEV
 S @$$^W4PRM@("BIGFONT")=0 ; --- 16/09/20 *** LEV
 ;
 I $$HZAFTPAY^W4PRM,$$^W4DEL(HZM)=HZM,'$$WASPRN(HZM) G EBODY
 ;
 I $G(NOPCMDB)=-1,'$$MDBYAD^W4PRM!$D(P1HZMET("ETEK")) D  G EBODY  ; -- MADBEKOT BILVAD
 .N BG S BG=1
 .D ^W4MDBPC(HZM)
 ;
 I $G(@$$^W4PRM@("NOPCWOLT")),$$WOLT^W4HZMST(HZM) G EBODY
 ;
 I $$HZAFTPAY^W4PRM,'$D(@$$^W4ORD@(HZM,"PCAFTPAY")) D
 .L +@$$^W4ORD@(HZM):1
 .S @$$^W4ORD@(HZM,"PCAFTPAY")=$H
 .L -@$$^W4ORD@(HZM)
 .
 .I $$SNDY^W4PRM=1,'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM) D CR^WQDLV(HZM)
 ;
 K PRHDST
 I $D(@$$^W4ORD@(HZM,"SETA")) S PRHDST=1
 ;
 I $$PRMANA(HZM)=2 D ^W4SETCHP(HZM)
 ;
 I $$IBON^W4PRM D  G EBODY
 .N BG S BG=1
 .I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")) D COMPBG(HZM)
 .D ^W4PCIBON(HZM)
 ;
 D ^W4IN,^W4INP
 S SHB=0,BONTM=+$H_$TR($J($P($H,",",2),5)," ",0)
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S NOPCTAW=$$NOPCTAW
 D PUT^%W3DEB("W4HZMPC","HZM=HZM & NMB=NMB & P1HZOP=P1HZOP & P3PCHZ=P3PCHZ & P1HZMET=P1HZMET& NOPCTAW=NOPCTAW&NOPCMDB=NOPCMDB")
 ;
 I $$SUPER^W3PRM G EBODY
 I $$^W4HZMH(HZM),$$STAGE^W4HZMST(HZM)'=1,'$$VVMSK^W4PRM G EBODY
 I $$VVMSK^W4PRM,'$$^W4HZMH(HZM) G EBODY
 I $$^W4PIZUL(HZM) G EBODY
 ;
 I $$ZAHI^W4PRM=2,$$STAGE^W4HZMST(HZM)'=1 G EBODY
 ;;I $$STAGE^W4HZMST(HZM),$$STAGE^W4HZMST(HZM)'=1 G EBODY
 ;
 ;;S ^AA("PC","HZMH")=$$^W4HZMH(HZM)
 ;;S ^AA("PC","VVMSK")=$$VVMSK^W4PRM
 ; 
 S MKRDLV=$$MKRDLV^W4HZMST(HZM)
 S TNB=$$TNB^W4HZMST(HZM)
 S CIB=$$CIB^W4HZMST(HZM)
 ;
 I TNB,$$HZM^W4MSL(HZM),$G(@$$^W4PRM@("NOPCTNB")) G EBODY
 I CIB,$$HZM^W4MSL(HZM),$G(@$$^W4PRM@("NOPCCIB")) G EBODY
 ;
 ;;S ^AA("W4HZMPC","NOPCMDB")=$G(NOPCMDB)
 ;
 S SF=$$SF^W4PRM
 ;
 N EX S EX=0
 ;
 S ERMDP=0,NP=0 S DAT=$$^%L1DC(P1DZ,2),MANA=0,FRPC=1,PRBIT=0
 S OLDMANA=""
 S DTHZ=P1DZ
 S DLT=$$DLPAR,DLT2=$$DLTSF,DLT2H=18,III=0
 S LINEPC="S TXT="""" D S1"
 ;
 I $$MYCHECK^W4PRM,'$D(P1HZMET) D ^WMCHORD(HZM,JB) ; -- MY CHECK ; J ^
 ;
2 ;
 I $$HZMRKZ^W4PRM D
 .D ^W4HSBRKZ($$^W4ORD_"(HZM)","Q1")
 ;
 N BG S BG=1
 I $D(P1HZMET("DBL"))!$D(P1HZMET("ETEK")) D CLRSMB ; -- OCHISTKA OT "+" & 3-GO
 ;
 I $$PCQN1 D ORD2ORD1(HZM)
 ;
 I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")) D COMPBG(HZM)
 ;
 ;
 S %SCRN=HZSCR,I=0,SM=1 K PRINTF
 ;
 K @$$^W4PC1
 ;
 ;------ BDIKA IM HISTAEMA HADPASA KODEMET ---
 ;
 I $$BONSCR^W4PRM G T
 ;
 D
 .I $G(@$$^W4PRM@("LOCKOLD")) D  Q
 ..F I=1:1:1 Q:'$G(@$$^W4GL("P1LOCK")@("PCHZ"))  Q:@$$^W4GL("P1LOCK")@("PCHZ")=$$^W4MYDVN  H 1
 ..S @$$^W4GL("P1LOCK")@("PCHZ")=$$^W4MYDVN
 ;; --17.09.26 --> COMMENT
 ;;I $D(@$$^W4GL("P1LOCK")@("PCHZ",HZM)),$G(@$$^W4GL("P1LOCK")@("PCHZ",HZM))'=$J G EBODY
 ;;S @$$^W4GL("P1LOCK")@("PCHZ",HZM)=$J
 ;
T S TAWMSL=$$^W4TAWMSL(HZM)
 S FBAR=0 S NMB=$$NMB^W4HZMST(HZM)
 ;
 ; --------- BDIKA IM ESH BE HAZMANA MADBEKOT & HADPASA LE MADPESET BAR
 ;
 I $$^W4MSL(NMB) S FBAR=0
 ;
 ;------------ ZAPROS PECH NA MADP BAR ----
 ;
 K MDPMAINB
 ;
 S P1PCBIT=$G(@$$^W4PRM@("HZMBIT"))
 I 'P1PCBIT,$G(@$$^W4PRM@("HZMHV")) S P1PCBIT=.5
 ;
 N N0,N1,N2,N3,ST
 S N0=1 I $G(P1HZMET) S N0=P1HZMET
 ;
BODY ; ------------------------------------- BODY ----------------------
 S SQN=0
 F N1=1:1 Q:'$D(@$$^W4ORD@(HZM,N1))  S SQN=SQN+$P($G(^(N1)),"\",5)
 ;
 ;;S ^AA("W4HZMPC","NOPCMDB")=$G(NOPCMDB)
 ;;M ^AA("W4HZMPC","P1HZMET")=P1HZMET
 I '$G(NOPCMDB),'$$MDBYAD^W4PRM!$D(P1HZMET("ETEK")) D  ; -- MADBEKOT
 .D ^W4MDBPC(HZM)
 ;
 I '$G(NOPCMDB),$$MDBYAD^W4PRM,'$D(P1HZMET("ETEK")) D  ; -- MADBEKOT
 .I $$^W4GETHZ(HZM,"","",1),'$G(@$$^W4ORD@(HZM,"NOPCBNMDB")) D
 ..D ^W4MDBPC(HZM)
 ..S @$$^W4ORD@(HZM,"NOPCBNMDB")=$H
 ;
 I $$PRMANA(HZM)'=3 D
 .S NN="" F  S NN=$O(@$$W4ORD(HZM)@(NN)) Q:NN=""  I NN S N1=NN D PCLN(HZM,N1) ; -- WAS N1=N0
 .S N1=N1+1
 ;
 I $$PRMANA(HZM)=3 D  ; -- KVUZOT & PRITIM
 .N N,N0,KV,PAR S N0="",N1=0
 .N TMPHZ S TMPHZ=$$^W4MAIN("TMPHZ") K @TMPHZ
 .S N=N0 F  S N=$O(@$$W4ORD(HZM)@(N)) Q:N=""  I N D
 ..S PAR=$P($G(^(N)),"\") Q:PAR["%"  Q:PAR[":"
 ..S KV=+$$SUG^W4P(PAR)
 ..M @TMPHZ@(KV,PAR,N)=@$$W4ORD(HZM)@(N)
 .
 .S KV="" F  S KV=$O(@TMPHZ@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@TMPHZ@(KV,PAR)) Q:PAR=""  D
 ...S N="" F  S N=$O(@TMPHZ@(KV,PAR,N)) Q:N=""  D
 ....D PCLN(HZM,N) I N>N1 S N1=N
 .S N1=N1+1 K @TMPHZ
 ;
 I $G(MDPMAINB) D  ;  --- LEDAVEAH AL HADPASA LE MADPESET BAR MUVHERET
 .N LS S LS=$O(@$$^W4ORD@(HZM,99999),-1)+1
 .S @$$^W4ORD@(HZM,LS)="<-0\\---------------\\\\\"_$P($G(@$$^W4PRM@("MDP",MDPMAINB)),"\",4)_" <- xa hixt\\@@!"
 ;
 I N1'>1 G EBODY
 I N1>1 S @$$^W4ORD@(HZM,"H")=N1-1
 ;
 S PRINT="" F  S PRINT=$O(PRINTF(PRINT)) Q:PRINT=""  D
 .I $$BONSCR^W4HZPCHD(PRINT) D BON2BON(HZM,PRINT,BONTM)
 ;
 I $$PRMANA(HZM)=1,$D(@$$^W4PC1)>9 D PC1
 ;
 I $$PRMANA(HZM)=2,$D(@$$^W4PC1)>9 D PC2
 ;
 I $$PRMANA(HZM)=3,$D(@$$^W4PC1)>9 D PC3
 ;
 I $$MVALL^W4HZPCFN!($G(P1HZOP)="BIT")!($G(P1HZOP)="NOPC")!($G(P1HZOP)["BIT"&'P1PCBIT) G EBD0
 ;
 I $$HZMRKZ^W4PRM,$$HZMRKZ^W4PRM'=2 D ^W4HZMR
 ;
 S pc=""
 S PRINT="" F  S PRINT=$O(PRINTF(PRINT)) Q:PRINT=""  D  D HEADN
 .S @$$^W4ORD@(HZM,"PRINT",PRINT)=$H
 ;
 S PRINT="" F  S PRINT=$O(PRINTF1(PRINT)) Q:PRINT=""  D
 .S @$$^W4ORD@(HZM,"PRINT",PRINT)=$H
 .I '$D(PRINTF(PRINT)) D HEADN
 ;
EBD0 K PRINTF,PRINTF1,pc
 S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4GL("P1HZ0")_"(HZM)" D ^%S1GC1
 ;
 I $G(HZM) K @$$^W4GL("P1LOCK")@("PCHZ",HZM)
 S @$$^W4GL("P1LOCK")@("PCHZ")=""
EBODY L  ;
 Q
 ;
 ;
GLSET(HZM) ;
 Q $$^W4GLSET($G(HZM))
 ;
 ;
COMPBG(HZM) ;
 N N1
 D
 .S N1=9999 F  S N1=$O(@$$W4ORD(HZM)@(N1),-1) Q:N1=""  S A=$G(^(N1))  I A["@@",A'["@@!" Q
 .S BG=N1+1
 Q
 ;
 ;
PCLN(HZM,N1) ;
 N ADOM,MDPMAIN,MDP,N2,N2V,N23,N3,MDPMAIN,MDPMAIN1,ST,REF,REF0,PAR,NN
 S ST=$G(@$$W4ORD(HZM)@(N1))
 ;
 I $D(P1HZMET),$$ITRAST^W4HZMST(HZM,N1,$$W4ORD(HZM))'>0 Q
 S (REF,REF0)=$$W4ORDPC(HZM)_",N1)",N2=""
 ;
 K DBL D LINE D
 .I $G(MDP) S MDPMAIN=MDP ; *** 08/09/20
 .D DBL1 K DBL
 .N P1H11 S P1H11=1
 .S PAR=$P($G(@$$W4ORD(HZM)@(N1)),"\")
 .N DELAY S DELAY=$G(@$$^W4PRM@("HZMPCDELAY"))
 .I DELAY,$$^W4EZAT(PAR) H DELAY
 .I $$PCQN1 S %ARG("GLORD")=$$W4ORDPC(HZM)_")"
 .D ^W4N2V(HZM,N1)
 .N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 .S N2V="" K N2,N23,N3,PRINTF1
 .
 .F P1H=1:1 S N2V=$O(@VRMHZ@(N2V)) Q:N2V=""  D
 ..S N2=$G(^(N2V)) Q:N2=""
 ..S ST=$G(@$$W4ORD(HZM)@(N1,N2))
 ..
 ..N REF S REF=$$W4ORDPC(HZM)_",N1,N2)"
 ..N DLT2,DLT20 S (DLT2,DLT20)=$$DLTSF
 ..
 ..N DBL,COL0,CODP3,SUGTSF,PRTSF,N3,N23,MDP
 ..D LINE2 D:$D(@REF)=1 DBL2 K DBL ; -- 22/09/20
 ..
 ..N PAR,MDPMAIN1 S FRPC=1
 ..S N3="" F P1H1=1:1 S N3=$O(@$$W4ORD(HZM)@(N1,N2,N3)) Q:N3=""  D
 ...K DBL N MDP S FRPC=(P1H1=1) D LINE3 S FRPC=(P1H1=1) D DBL3 K DBL
 .;;M ^AA(N1)=@VRMHZ
 .K @VRMHZ
 
 Q
 ;
 ;
DLPAR(STAM) Q 16
DLTSF(STAM) Q 15
ISDLTSF(DL) Q ($G(DL)<($$DLTSF+1))
 ;
 ;
SMB(ST) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@!" Q "!"
 I NOMOD["@@?" Q "?"
 I NOMOD["@@+" Q "+"  ; -- 30/09/09
 Q ""
 ;
CODP(ST) ;
 N CD S CD=$P(ST,"\")
 I $$^W4CDSRV(CD)=11 Q " "
 Q CD
 ;
NM(ST) Q $P(ST,"\",3)
QN(ST) Q $P(ST,"\",5)
 ;
HRP(ST) N HRP S HRP=$P(ST,"\",8)
 S HRP=$$^W4CLRMVC(HRP)
 Q $$CLRHR(HRP)
 ;
NOMOD(ST,PR) Q $P(ST,"\",10)
 ;
SETNOMOD(REF,VL,PR) ;
 I $G(HZM)>0,$$STAGE^W4HZMST(HZM)=1,VL["@@" Q
 S $P(@REF,"\",10)=VL
 ;
 N IND3 S IND3=$$^%L1IND(REF,3)
 I $$^%L1IND(REF,2)="PC1",IND3!($E(IND3)?1U) D
 .N ST S ST=$G(@REF)
 .N IND S IND=+$P(ST,"\",15) Q:'IND
 .N REF0 S REF0=$$RPL^%L1FRM(REF,",""PC1"",",",")
 .S IND=""""_IND_""""
 .S $P(REF0,",",2)=IND
 .I $E(REF0,$L(REF0))="," S REF0=$E(REF0,1,$L(REF0)-1)_")"
 .I $E(REF0,$L(REF0))'=")" S REF0=REF0_")"
 .S $P(@REF0,"\",10)=VL
 Q
 ;
 ;
SETNOMODST(VL) ;
 I $$STAGE^W4PRM,$G(HZM)'<1,$$STAGE^W4HZMST(HZM)=1 Q
 I $$VVMSK^W4PRM Q
 S $P(ST,"\",10)=VL
 Q
 ;
WASPRN(HZM) ;
 N BG D COMPBG(HZM) 
 I BG>1 Q 1
 Q 0
 ;
TSF(CDT) ;
 I $G(CDT)="" Q 0
 N UR S UR=$S($G(N3):$S(N3=1:3.5,1:3),1:2)
 N PAR S PAR=$P($G(@$$W4ORD(HZM)@(N1)),"\")
 N CDT1 S CDT1=""
 I UR=2,$D(@$$^W4GL("P1EZI")@(PAR,CDT)) Q 1
 I UR=2,$G(N1),'$$DD^W4EZA(PAR),$$TSFORD(N1,CDT) Q 1
 I UR=2,$D(@$$^W4GL("P1EZK")@(CDT)) Q 1
 I UR=2,$$EZT(PAR,CDT),$$TSFTIED=1.5 Q 1
 I UR=3 S CDT1=$P($G(@$$W4ORD(HZM)@(N1,N2,1)),"\")
 I UR=3.5,CDT1,$D(@$$^W4GL("P1EZI")@(CDT1,CDT)) Q 1
 Q 0
 ;
TSFORD(N1,CDT)
 N OK S OK=0
 I $G(N1)="" Q 0
 I $G(CDT)="" Q 0
 I $D(@$$W4ORD(HZM)@(N1,CDT))#2 S OK=1
 Q OK
 ;
DBL1 ;
 I $G(MDP)'["&" Q
 N LASTDBL S LASTDBL=$L(MDP,"&")
 N DBL F DBL=2:1:LASTDBL D
 .N PAR
 .S OK=0,SUMHN=0,PAR=$P(ST,"\"),ERMDP=0,MIN=0 Q:PAR=""
 .D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 .D LINE
 Q
 ;
DBL2 ;
 N PAR S PAR=$P(@$$W4ORD(HZM)@(N1),"\")
 ;
 I '$$LINETL,$G(P1H1)>1 D
 .N NOPC I '$$PRNST(N1) S NOPC=""
 .D DEFPRN(PAR)
 ;
 I $$TSFTIED=2,$$TSF(N2) Q
 I $$TSFTIED,$$TSF(N2),$L($G(MDPMAIN)) S MDP=MDPMAIN
 ;
 I $G(MDP)["&" D
 .N LASTDBL S LASTDBL=$L(MDP,"&")
 .
 .N DBL F DBL=2:1:LASTDBL D
 ..D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 ..N CODP3,SUGTSF,PRTSF D LINE2
 Q
 ;
 ;
DBL3 ;
 N PAR S PAR=$P(@$$W4ORD(HZM)@(N1),"\")
 I $$TSFTIED=2,$$TSF(N2) Q
 I $$TSFTIED D
 .I $$DD^W4EZA(PAR) Q
 .I $$EZT(PAR,N2),$$TSFTIED=1.5,$L($G(MDPMAIN)) S MDP=MDPMAIN Q
 .I $L($G(MDPMAIN1)) S MDP=MDPMAIN1 Q
 .S MDP=$G(MDPMAIN)
 ;
 I $G(MDP)["&" D
 .N LASTDBL S LASTDBL=$L(MDP,"&")
 .N DBL F DBL=2:1:LASTDBL D
 ..D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 ..N CODP3,SUGTSF,PRTSF D LINE3
 Q
 ;
HEAD D ^W4HZPCHD(HZM)
 Q
 ;
 ;
HEAD1 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 ;
 N pc S pc=""
 ;
 I $G(P1HZOP)="BIT" D  Q
 .D PCBC("   !!! dlhea dpnfd "_%MDP("N"))
 .S TXT=$C(10,10,10,10,10,10)_%MDP("CUT")_$C(10,10,10,10),TXT("NOTR")=""
 .D S2 K TXT
 ;
 I '$$LINE^W4PRM D KAV^W4HZPCHD
 S PRSP="" ; -- 04/08/23
 Q
 ;
 ;
HEAD2 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 S TXT=" 4 : 3 : 2 : 1 :--- zetqez xe`z ---:" D S1
 I $G(PRINT) S PRHEAD(PRINT)=2
 Q
 ;
HEAD3 ;
 Q
 ;
HEAD4 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 Q:$$PRMANA(HZM)<2
 N TXT S TXT=": zenk :----------- ziwqr dgex` ----:" D S1
 I $G(PRINT) S PRHEAD(PRINT)=4
 Q
 ;
 ;
MDPCUT(PRINT) ;
 I $$MDPS(PRINT)=6!($$MDPS(PRINT)=8) Q 1
 Q 0
 ;
MDPS(PRINT) ;
 N MDPS,OK S MDPS=6,OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S A=$G(^(N)) D  Q:OK
 .I +$P(A,"\",3)=+PRINT S MDPS=$P(A,"\"),OK=1
 ;;Q $$MDPS^W4MDP(PRINT)
 Q MDPS
 ;
HEADN ;
 D HEADN^W4HZPCHD
 Q
 ;
 ;
HZMDBL(STAM) ;
 Q $$HZMDBL^W4PRM
 ;
CUT(PRINT) ;
 I $G(PRINT) K %MDP D DEFMDP(PRINT)
 N TXT S TXT=$C(10,10,10,10,10)_$G(%MDP("CUT"))_$C(10,10,10) D S2
 Q
 ;
SUGMDP(NP) ;
 Q $$LPSUG^W4PLUK(NP)
 ;
SUGDEV(PRN) ;
 N A S A=$G(@$$^W4DEV@(+PRN,"H"))
 Q $P(A,"\",2)
 ;
 ;
DEFMDP(PRINT) ;
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
DEFMDP1 D DEFMDP1^W4DEFPRN
 Q
 ;
 ;
LINE ; --- HADPASAT PARIT ROSHI / RAGIL
 S ERMDP=0,OK=0,MIN=0,FLAG="",SUMHN=0,PAR=$P(ST,"\")
 S HD0=""
 K SUGTSF,PRTSF,CODP3,N2,N23
 ;
 Q:$E(PAR)?.P
 Q:PAR=""  N PRT
 ;
 ;;K PRHDST
 ;
 N ST0 S ST0=ST
 ;
 S PRMAIN=$P(ST,"\",5)
 ;
 I PAR="0" Q:$$NOPRINT(ST)  D  G EL
 .N MDP,MDP1,PRINT,%MDP
 .S MDP=$P(ST,"\",11)
 .I MDP="",$$NODLVORD^W4PRM S MDP=$$ALLPRN^W4DEFPRN
 .I MDP="",'$$NODLVORD^W4PRM S MDP=0
 .
 .I MDP D  Q
 ..N DBL F DBL=1:1:$L(MDP,"&")  D
 ...Q:'$P(MDP,"&",DBL)
 ...D LINEPRN(MDP) Q:$G(MDP1)=""
 ...I $$QN(ST)<0 D  Q:$G(ERMDP)
 ....I '$G(P1PCBIT) S ERMDP=2 Q
 ....I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ...D PCHD ; --- ???
 ...D PCLP
 .Q  ;
 ;
 I $$NOPRINT(ST) Q
 Q:PAR=""
 ;
 D  ;--> %MDP,ERMDP
 .N PRINT,MDPS S MDP=$$PRINTIG^W3PRMDP(PAR) I MDP="" Q
 .D LINEPRN(MDP) Q:$G(MDP1)=""
 ;
 I $$DD^W4EZA(PAR),$$PRMANA(HZM)=1!($$PRMANA(HZM)=3) S SUMHN=$$SUMHN(HZM,N1) G EL
 ;
 I $P(ST,"\",2)[">",$G(P1HZOP)="BIT1",P1PCBIT'=2 S ERMDP=2
 ;
 I $$QN(ST)<0 D
 .I '$G(P1PCBIT) S ERMDP=2 Q
 .I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ;
 D:'ERMDP DEFPRN(PAR) I ERMDP,ERMDP'=2 Q
 ;
 I ERMDP=2 S SUMHN=$$SUMHN(HZM,N1) G:$G(MDP) EL
 ;
LINEP ;
 I $E($G(MDP))=0,$E($G(MDP),2)'?1N G EL
 I '$D(%MDP)!'$G(PRINT) Q
 Q:ERMDP
 ;
LINEP1 I $$QN(ST)<0 S TXT("R")=1,ADOM=1
 S SUMHN=$$SUMHN(HZM,N1)
 D PCLP
 I $G(PRINT) S FIRSTHD(PRINT)=0
 ;
 I $P($G(@$$^W4ORD@(HZM,N1+1)),"\")="-100%" D
 .N SIBA S SIBA=$P($G(@$$^W4ORD@(HZM,"HNH",N1)),"*",4) Q:SIBA=""
 .N TXT S TXT="[ "_SIBA_" ]" D S1
 ;
EL ;
 I $G(PRINT) K PRHEAD(PRINT)
 I $$SETWASPRINT(REF) Q
 S OK=1
 ;;N RF S RF=$G(@REF) I $$^W4MSD(NMB)!TAWMSL D PLU2
 N RF S RF=$G(@REF) D PLU2
 Q
 ;
 ;
LINEPRN(MDP) ;--> PRINT,%MDP
 D DEFMDP1 Q:MDP1=""
 D HZ^W4MDP(MDP1) ; --> %MDP
 Q
 ;
KAV ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT S TXT=""
 I $$HZPCSP^W4PRM!$D(SPKAV) S TXT=$C(10)
 S TXT=TXT_"  "_$TR($J("",$$WD)," ","-") D S1 ; --- WAS S2 ; 14/06/18
 K SPKAV Q
 ;
KAV1(PRN) ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT
 S TXT=""
 S TXT=TXT_$TR($J("",$$WD)," ","-") S PRKAV=1
 D SETPC(PRN,TXT)
 Q
 ;
 ;
KAV3 ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT
 S TXT=$TR($J("",$$WD)," ",".")
 D S1
 Q
 ;
 ;
PCLP ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) D BONSCR Q
 ;
 N PCLP S PCLP=""
 N NAME2 S NAME2=""
 N NAME3 S NAME3=""
 ;
 N QN S QN=$$QN(ST) I QN=0 Q
 ;
 N CDPAR S CDPAR=$$CODP(ST)
 ;
 S QPAR(PRINT)=$G(QPAR(PRINT))+QN
 ;
 S SHEM=$$NM(ST),HR=$$HRP(ST)
 ;
 N HR0 S HR0=HR
 D DEFMANA(HR)
 ;
 I $$PCHZKV^W4PRM D
 .N KV S KV=$$SUG^W4P(CDPAR)
 .S MANA=MANA_"-"_$TR($J(KV,5)," ",0)
 ;
 I $$LINE^W4PRM D
 .I $$LINE^W4PRM=1 D PCHRKAV Q
 .N SPKAV S SPKAV="" D KAV
 ;
 S TXT=""
 I '$$LINE^W4PRM D
 .I $D(PRSP) K PRSP Q
 .S TXT=$C(10)
 ;
 I $$^W4CDSRV(CDPAR)=11 S QN=" "
 ;
 S TXT=TXT_$$PCCAM(QN) ; -- 2 SMB
 I QN<0 S TXT("R")=""
 ;
 I $$CDNM,CDPAR,$D(@$$^W4GL("PAR")@(CDPAR)),$$SHEM^W4P(CDPAR)'="" D
 .S SHEM=$$SHEM^W4P(CDPAR)
 ;
 I '$$NOPCLOAZ^W4PRM,CDPAR,$D(@$$^W4GL("PAR")@(CDPAR)),$$SHEML^W4P(CDPAR)'="" D
 .S SHEM=$$SHEML(CDPAR)
 ;
 I CDPAR,$D(@$$^W4GL("W4ITDGSH")@(CDPAR)),$D(%MDP("BB")) D  G PCLPHR ; -- ATTN !
 .D KAV^W4HZPCHD
 .S TXT=%MDP("BB")_$S(QN>1:QN_" ",1:"")_$$HBR^%L1FRM(SHEM,$$WD-2\2*$$KFPC)_%MDP("N") D S1
 .D KAV^W4HZPCHD
 ;
 N DL S DL=$$DLPAR
 ;
 I QN[".",$P(QN,".",2)!$$MSK^W4P(CDPAR) S DL=DL-4
 ;
 I '$$BIGNMB!$$NOHZMPAR D  ; -- !!!!!!
 .I '$$NOHZMPAR S DL=DL-2
 .S TXT=TXT_$$NAME(SHEM,QN,DL,"")
 .I '$$NOHZMPAR D
 ..S TXT=TXT_$J($P(ST,"\",2)_" "_$$CODP(ST),5)
 .D S1
 ;
 I $$BIGNMB,'$$NOHZMPAR D
 .S DL=DL-3
 .S TXT=TXT_$$NAME(SHEM,QN,DL,"")
 .S TXT=TXT_" "_$$BIGMDPCD_$J($$CODP(ST),4)_%MDP("N") D S1
 ;
 S ^AA("W4HZMPC-NAME2","DL")=DL
 N DOPDL S DOPDL=$L($$NM2(NAME2))-$L($$NM21(NAME2)) ; -- WAS 5
 I $$BIGNAME^W4PRM S DOPDL=DOPDL*2
 ;
 I $L(NAME2) S TXT=$J($$NM2(NAME2),DL+DOPDL) D S1
 I $L(NAME3) S TXT=$J($$NM2(NAME3),DL+DOPDL) D S1
 ;
PCLPHR ;
 N NOSPACE I $$TAWHRLINE S NOSPACE=""
 I HR'?." ",'$D(P1HZOP)!($G(P1HZHB1)="B") D
 .S HR=$$^W4CLRMVC(HR)
 .N HR1 S HR1=$$^W4CLRCMN(HR)
 .S HR1=$$^W4CLRMN(HR1)
 .I $$SPA^%L1FRM(HR1)=";" Q
 .I $$SPA^%L1FRM(HR1)="" Q
 .D PCHR(HR,DLT2H,"<")
 ;
 I '$D(P1HZOP)!($G(P1HZOP)["BIT"),$$QN(ST)<0,$G(P1HZHB1)'="B" D
 .S PRBIT=1
 .I '$$PRMV(HR) S TXT=%MDP("B")_"CANCELED lhea"_%MDP("N") D S1
 ;
 I $P(ST,"\",9)'?.P,'$D(P1HZOP) D
 .S TXT=$$SOADIM($P(ST,"\",9)) D S1
 ;
 I $$TAWHRLINE D
 .S TXT=%MDP("B")_@$$^W4PRM@("TAWHR")_%MDP("N") D S1
 .S TXT="" D S1
 ;
 Q
 ;
 ;
PCHRKAV ;
 N WD S WD=$$WD-1 ; -- 13/06/21 --> -1
 N TX,TXT S TX=$J("",WD)
 I $$USPCMN,$G(MANA) D
 .N MN S MN=$$GETI^W4DEFMN(+MANA)
 .N SP S SP=$J("",(WD-$L(MN))\2)
 .S TX=SP_MN_SP
 ;
 I '$G(@$$^W4PRM@("NORVHKAV")) S TX=$C(10)_TX
 S TXT=$C(27)_"!"_$C(136)_TX D S2
 Q
 ;
USPCMN(STAM) ;
 I $D(@$$^W4PRM@("PCMN",+$P($G(PRINT),"-",2))) Q 1
 Q 0
 ;
BIGMDPCD(STAM) ;
 N B S B=$G(%MDP("B"))
 I $$BIGNMB=2,$L($G(%MDP("BB"))) S B=%MDP("BB")
 Q B
 ;
BIGNMB(STAM)
 Q $G(@$$^W4PRM@("BIGNMB"))
 ;
NOHZMPAR(STAM) ;
 Q $G(@$$^W4PRM@("NOHZMPAR"))
 ;
TAWHRLINE(STAM) ;
 I $$TAW^W4DLPK(NMB)!$$TAKEAWAY^W4HZMST(HZM),'$G(@$$^W4PRM@("TAWHRKOT")),$L($G(@$$^W4PRM@("TAWHR"))) Q 1
 Q 0
 ;
CLMANA(DLM) ;
 Q:'$D(MANA)  N OLDMANA
 S OLDMANA=MANA,MANA=0
 D DEFMANA($P(ST,"\",DLM))
 I MANA,$$PRMANA(HZM) D
 .S $P(ST,"\",DLM)=$$^W4CLRMN($P(ST,"\",DLM))
 I 'MANA S MANA=OLDMANA
 I $$PRMANA(HZM)>1,DLM=8 S MANA=0 ; -- MIUN LEFI TOSAFOT
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
QNT(ST) Q $P(ST,"\",3)
HRT(ST) Q $$CLRHR($P(ST,"\",4))
 ;
CLRHR(HR)
 S HR=$G(HR)
 I HR'["[[" Q HR
 Q $$CLRHR^W4HZTH(HR)
 ;
RAVBR(CD) ;
 I CD?1N.N1"-"1N.N Q 1
 Q 0
 ;
 ;
LINE2 ; --
 S PRMAIN=0
 N P1EZT,II,UR
 S UR=$S($D(N23):3,1:2)
 ;;I $D(N23) S N2=N23 ; *** 24/08/20
 ;
 N HDST S HDST=$P($G(@REF),"\",18)
 ;
 I UR=2,$L(HDST) D
 .I $G(@$$^W4PRM@("NOHDST")) Q
 .N HD S HD=$P(HDST,"^",2)
 .I $L($G(HD0)),HD0=HD Q
 .S HD0=HD
 .N PAR S PAR=$P(@$$W4ORD(HZM)@(N1),"\")
 .D DEFPRN($S($$TSFTIED&'$$DD^W4EZA(PAR):$G(PAR),1:N2))
 .S TXT="" D S1
 .S TXT=$$CENTR^%L1FRM("-- "_HD_" --",$$WD) D S1
 .S PRHDST=1
 ;
 I UR=2,$D(@REF@(1)) Q
 ;
 S NP=NP+1,OK=0,ERMDP=0
 I $$NOPRINT(ST,UR) Q
 ;
 I $G(P1HZOP)="BIT" S ERMDP=2
 ;
 I $$ROLI^W4PRM,$$NMSET(PAR,N2)["cva" S ERMDP=2 G LN2
 ;
 I UR=3,$G(PAR0) S PAR=PAR0
 ;
 I $L($G(PAR)),$$^W4EZAT(PAR) D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .Q:ERMDP
 .I $$DD^W4EZT(PAR)!$G(@$$^W4PRM@("AINIFRAD")) S P1EZT="" ; -- FOR DEFPRN
 .
 .I $$TSFTIED D  Q
 ..I $G(PAR),$$EZT(PAR,N2),$$TSFTIED=1.5 D DEFPRN(PAR) Q
 ..I $G(CODP3) D DEFPRN(N2) Q  ; -- AI
 ..I '$G(CODP3),$G(N23) D DEFPRN(N23) Q  ; -- AI OR ( EZT IF TSFTIED=1 )
 ..D DEFPRN(N2)
 .
 .D DEFPRN(N2)
 ;
 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I UR=3,$G(@$$^W4PRM@("AINIFRAD")),$G(CODP3) S P1EZT=""
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .Q:ERMDP
 .I $G(PAR),$$TSFTIED,'$$DD^W4EZA(PAR) D DEFPRN(PAR) Q  ; *** 8/09/20
 .D DEFPRN(N2)
 ;
LINE21 ;
 I $D(PRINT),'$D(PRINTF1(PRINT)) D  S PRINTF1(PRINT)=1
 .D HEAD3
 ;
 ;--------------------- AI -------------------------
 ;
PT D PCLT ; --- !!!! -- PRINT LINE
 ;
 I '$D(P1HZOP)!($G(P1HZOP)["BIT"),$$QNT(ST)<0,$G(P1HZHB1)'="B" D
 .N HR S HR=$$HRT(ST)
 .I $$PRMV(HR) Q
 .D PCBC("CANCELED lhea")
 ;
 ;
LN2 ;
 I $$SETWASPRINT(REF,UR) Q
 ;
 I UR=3 D SUM3($G(@REF)) G LN21 ; --- LEV 3 ADDONS
 ;
 S COLP=$P($G(@($P(REF,",",1,2+$$PCQN1)_")")),"\",5)
 N RF S RF=$G(@REF) N PAR S PAR=N2
 ;
 D PLU3 S OK=1
 ;
LN21 ;
 Q
 ;
 ;
REDADD(STAM) ;
 Q +$G(@$$^W4PRM@("REDADD"))
 ; 
 ;
PCLT ;
 ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) D BONSCR Q
 ;
 N SUGTSF ; -- 1 - EZT, 2 - EZA , 3 - TSF
 S SUGTSF=3
 I UR=3 S SUGTSF=$G(CODP3) S:'SUGTSF SUGTSF=3 
 ;
 I $G(P1H)=1,$$BIGNAME^W4PRM=2,SUGTSF=3 S TXT="" D S1
 ;
 I SUGTSF<3 D
 .I $$PRMANA(HZM)=1,SUGTSF=1 Q  ; *** 23/05/21 LEV
 .N CMT S CMT=$P(ST,"\",4)
 .N REF1 S REF1=$$W4ORDPC(HZM)_",N1,N2)"
 .N CMT1 S CMT1=$P($G(@REF1),"\",4)
 .I CMT'["I",CMT'["V",CMT'["X",CMT1["I"!(CMT1["V")!(CMT1["X"),CMT1["-" S CMT=CMT1
 .D DEFMANA(CMT)
 .I $$PCHZKV^W4PRM D
 ..N KV S KV=$$SUG^W4P(N2)
 ..S MANA=MANA_"-"_$TR($J(KV,5)," ",0)
 ;
 N PRBASAR S PRBASAR=0
 I $$BASAR(N2) S PRBASAR=1
 N PRLEHEM S PRLEHEM=0
 I $$LEHEM(N2) S PRLEHEM=1
 ;
 N TXT,REDADD
 ;
 I SUGTSF<3 D
 .I $$LINE^W4PRM=2!(SUGTSF=2) D PCHRKAV Q  ; -- SUGTSF=2 (AI) 03/12/25
 .I $D(PRSP) K PRSP Q
 .I SUGTSF=1,$G(@$$^W4PRM@("NOSPACE2")),'PRBASAR,'PRLEHEM Q
 .S TXT="" D S1
 ;
 K PRSP
 S REDADD=$$REDADD
 S TXT=""
 D
 .N QNT,QNSUG S QNT=$$QNT(ST),QNSUG=$$QNPZ^W4PIZZA(QNT)
 .
 .I QNSUG D  Q
 ..N QNPZ S QNPZ=$$QN^W4PIZZA(QNT)
 ..N J I QNSUG=4 D  Q
 ...F J=1:1:4 S TXT=TXT_$E(QNPZ,J)
 ..N J I QNSUG=2 D  Q
 ...F J=1:1:2 S TXT=TXT_%MDP("B")_$E(QNPZ,J)_%MDP("N")_" "
 .
 .I SUGTSF=3,$G(@$$^W4PRM@("NOPCQADD")) S TXT=TXT_"    " Q
 .S TXT=TXT_$$PCCAM($S(QNT="":"",1:+QNT))
 ;
 S HR=$$HRT(ST)
 I HR["<",HR[">" S HR=$P(HR,"<") ; -- LENAKOT SHEM HAMAZMIN
 S HR=$$^W4CLRCMN(HR)
 N HR0 S HR0=HR
 S HR=$$^W4CLRMN(HR)
 S HR=$$SPA^%L1FRM(HR)
 ;
 I $$SBR(HR),$$QNT(ST)=1 S TXT=$J("",5)
 ;
 N DL S DL=$$DEFDLT2
 I $$BIGNMB,'$$NOHZMPAR S DL=DL-4
 I '$$BIGNMB,'$$NOHZMPAR S DL=DL-2
 ;;S ^AA("W4HZMPC","DL",N2)=DL
 ;
 N NAME S NAME=$P(ST,"\") ;;$$HBR^%L1FRM($P(ST,"\"),DL)
 N NAME2 S NAME2=""
 N NAME3 S NAME3=""
 ;
 I $$CDNM,N2,$D(@$$^W4GL("PAR")@(N2)),$$SHEM^W4P(N2)'="" D
 .S NAME=$$SHEM^W4P(N2)
 ;
 I '$$NOPCLOAZ^W4PRM,N2,$D(@$$^W4GL("PAR")@(N2)),$$SHEML^W4P(N2)'="" D
 .N NAME1 S NAME1=$E($$SHEML(N2),1,DL)
 .I $TR(NAME1," ","")'="" S NAME=NAME1
 ;
 S NAME=$$NAME(NAME,$P(ST,"\",3),DL,HR)
 ;
 I '$$BIGNMB!$$NOHZMPAR!(N2["-") D
 .I '$$NOHZMPAR,N2'["-" S TXT=TXT_NAME_" "_$J(N2,4) Q
 .S TXT=TXT_"  "_NAME
 ;
 I $$BIGNMB,'$$NOHZMPAR,N2'["-" D
 .S TXT=TXT_NAME_" "_$$BIGMDPCD_$J(N2,4)_%MDP("N")
 ;
 D S1
 ;
 I $L(NAME2) S TXT=$J("",6)_$$NM2(NAME2) D S1
 I $L(NAME3) S TXT=$J("",6)_$$NM2(NAME3) D S1
 ;
 N NOSPACE
 I HR'?." ",'$$SBR(HR) D
 .I DLT2=$$DLPAR,$$TAWHRLINE S NOSPACE=""
 .D PCHR(HR,DLT2H,"") ; ------- HEARA
 ;
 I $P(ST,"\",6)'?.P D
 .S TXT=$$SOADIM($P(ST,"\",6)) D S1
 .I DLT2=$$DLPAR,$$TAWHRLINE Q
 .S TXT="" D S1
 ;
 I DLT2=$$DLPAR,$$TAWHRLINE D
 .S TXT=%MDP("B")_@$$^W4PRM@("TAWHR")_%MDP("N") D S1
 .S TXT="" D S1
 ;
 I $G(PRBASAR) D
 .N N21 S N21=""
 .I $G(N2V) D
 ..N IND S IND=$O(@VRMHZ@(N2V)) Q:IND=""
 ..S N21=$G(@VRMHZ@(IND))
 .I N21,$$BASAR(N21) Q
 .S TXT="" D S1
 Q
 ;
 ;
NOPCDEL(ST) ;
 I $$QNT(ST)<0,'P1PCBIT Q 1
 I $$QNT(ST)<0,P1PCBIT<1,'$$PRMV($$HRT(ST)) Q 1
 ;;I '$$QNT(ST) Q 1  ; --> COMMENT 14/12/21
 Q 0
 ;
CODTT3(ST) Q $P(ST,"\",4)
NMT3(ST) Q $P(ST,"\",2)
NMTT3(ST) Q $P(ST,"\",5)
MHT3(ST) Q $P(ST,"\",7)
HRT3(ST) Q $P(ST,"\",6)
QNT3(ST) Q $P(ST,"\",3)
 ;
 ;
LINE3 ;
 N N23,REF,DLT2 S N23=N2,DLT2=$$DLTSF
 N ST
 S REF=$$W4ORDPC(HZM)_",N1,N23,N3)",ST=$G(@REF)
 N PAR0 S PAR0=$P($G(@$$W4ORD(HZM)@(N1)),"\")
 I $$CODP(ST)'="" S PAR=$$CODP(ST),COL0=$$QNT3(ST)
 N COL3 S COL3=$$QNT3(ST)
 ;
 I $$NOPRINT(ST,3) Q
 ;
 S CODP3=0
 ;
 I $$CODP(ST)'="" D  S FRPC=1 D LINE2 S:$L($G(MDP)) MDPMAIN1=MDP Q
 .D
 ..I $$TSFTIED=1.5,'$$D^W4EZA(PAR0) D DEFPRN(PAR0) Q  ; -- 12/06/25
 ..D DEFPRN(N23)
 .
 .S MDPMAIN1=""
 .S ST=$$NMT3(ST)_"\"_$$MHT3(ST)_"\"_COL0_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 .D SETHR3
 .S CODP3=$S($$DD^W4EZA(PAR0):2,1:1)
 .Q:'$$^W4EZAT(PAR0)
 .
 .N STT S STT=$G(@$$W4ORD(HZM)@(N1,N23,N3+1)) Q:STT=""
 .I $$CODP(STT)="",$$CODTT3(STT)'="" S DLT2=$$DLPAR ;  - KMO ACMAI
 ;
 ;--- PRINT ADDONS LEV 2
 N N2,PRUR S PRUR=2
 S N2=$$CODTT3(ST)
 ;
 D DEFPRN(N2)
 S ST=$$NMTT3(ST)_"\"_$$MHT3(ST)_"\"_$G(COL3,1)_$$DOP^W4PIZZA($$QNT3(ST))_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 ;
 D SETHR3
 S DLT2=$$DLTSF D LINE2
 Q
 ;
 ;
SETHR3 ;
 N REF2,ST2
 S REF2=$$W4ORDPC(HZM)_",N1,N23)",ST2=$G(@REF)
 I '$$^W4DEFMN($P(ST,"\",6)),$$^W4DEFMN($P(ST2,"\",4)) D
 .S $P(ST,"\",6)=$P(ST2,"\",4)_" "_$P(ST,"\",6)
 Q
 ;
SUM3(ST) ;
 N PAR,COL,PRC,SUM
 I $P(ST,"\") D  Q
 .S PAR=$P(ST,"\")_"-T"
 .S COL=$P(ST,"\",3)
 .S PRC=$P(ST,"\",7)
 .S SUM=COL*PRC
 .D PLT
 ;
 S PAR=$P(ST,"\",4)_"-T"
 S COL=$P(ST,"\",3)
 S PRC=$P(ST,"\",7)
 S SUM=COL*PRC
 D PLT
 Q
 ;
RSDAI ;
 I $D(REF0),$G(@$$^W4PRM@("SD")),$$PRMANA(HZM) D
 .N RSD S RSD=$P($G(@REF0),"\",9) I RSD'?.P D
 ..S TXT=$$SOADIM(RSD) D S1 S TXT="" D S1
 Q
 ;
 ;
BONSCR ;
 N REF1,SHB S REF1=$P(REF,"(")_"("
 N J F J=1:1:$L(REF,",") D
 .N IND S IND=$P(REF,",",J)
 .I IND["(" S IND=$P(IND,"(",2)
 .I IND[")" S IND=$P(IND,")")
 .D
 ..I $E(IND)?1U S IND=""""_$G(@IND)_"""" Q
 ..I $E(IND)'="""" S IND=""""_IND_""""
 .S REF1=REF1_IND_","
 S REF1=$E(REF1,1,$L(REF1)-1)_")"
 ;
 N MANA
 ;
 N CODP
 N IND1,IND2,IND3,IND4
 S IND1=$$^%L1IND(REF1,1)
 S IND2=$$^%L1IND(REF1,2+$$PCQN1)
 S IND3=$$^%L1IND(REF1,3+$$PCQN1)
 S IND4=$$^%L1IND(REF1,4+$$PCQN1)
 ;
 N CODP,CMNT S CODP="",CMNT=""
 ;
 I IND1,IND2 D
 .N ST S ST=$G(@$$W4ORD(IND1)@(IND2))
 .S CODP=$P(ST,"\")
 .S CMNT=$P(ST,"\",8)
 ;
 I IND1,IND2,IND3 D
 .N ST S ST=$G(@$$W4ORD(IND1)@(IND2,IND3))
 .S CMNT=$P(ST,"\",4)
 ;
 I $TR(CODP,".","")'?1N.N Q
 ;
 N STR S STR=$G(@REF1)
 ;
 S MANA=$$^W4DEFMN(CMNT)
 I 'MANA S MANA=$G(OLDMANA)
 I 'MANA S MANA=1
 I $G(PRHDST) S MANA=0 ; -- 24/03/23
 ;
 N KV S KV=$$SUG^W4P(CODP) I KV="" S KV=0
 ;
 I $$PCHZKV^W4PRM,'$G(PRHDST) D
 .S MANA=MANA_"-"_$TR($J(KV,5)," ",0)
 ;
 I $$PRMANA(HZM)=1 D  G EBONSCR
 .S SHB=$O(@TMPBON@(PRINT,MANA,CODP,99999),-1)+1
 .S @TMPBON@(PRINT,MANA,CODP,SHB)=REF1
 ;
 I $$PRMANA(HZM)=2 D  G EBONSCR
 .S SHB=$O(@TMPBON@(PRINT,CODP,MANA,99999),-1)+1
 .S @TMPBON@(PRINT,CODP,MANA,SHB)=REF1
 ;
 I $$PRMANA(HZM)=3 D  G EBONSCR
 .S SHB=$O(@TMPBON@(PRINT,KV,CODP,MANA,99999),-1)+1
 .S @TMPBON@(PRINT,KV,CODP,MANA,SHB)=REF1
 ;
 S SHB=$O(@$$^W4BON@(P1DZ,PRINT,BONTM,HZM,99999),-1)+1
 S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,SHB)=REF1
EBONSCR S OLDMANA=$G(MANA) Q
 ;
BONSCRMSG(MSG) ;
 S SHB=$O(@$$^W4BON@(P1DZ,PRINT,BONTM,HZM,99999),-1)+1
 S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,SHB)="!"_MSG
 Q
 ;
 ;
PLU N DAT,DTHZ
 D ^W4IN
PLU1 N N1,PAR,RF,SSUM,SHNH,PLU1,COLP,SUMHN S SSUM=0,SHNH=0
 ;
 S PLU1="" ;
 D
 .S DTHZ=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 .N TRH S TRH=$$TRH^W4HZMST(HZM) I TRH S DTHZ=$$^%L1DC(TRH,3) I $$SHAA^W4HZMST(HZM)<$$SHAAZ^W4PRM S DTHZ=DTHZ-1
 .I 'DTHZ S DTHZ=P1DZ
 ;
PLU11 S DAT=$ZD(DTHZ,"YYMMDD")
 ;
 I $$^W4HZMH(HZM) Q
 I $$I^W4PIZUL(HZM) Q
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N1)) Q:N1=""  I N1 D
 .S PAR=$P(@$$^W4ORD@(HZM,N1),"\") Q:'$L(PAR)  S RF=^(N1)
 .S SUMHN=$$SUMHN(HZM,N1) D PLU2 S SUMHN=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N1,N)) Q:N=""  I N D
 ..S RF=$G(^(N)),PAR=N I $D(@$$^W4ORD@(HZM,N1,N))<9 D PLU3 Q
 ..N N3 S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N,N3)) Q:N3=""  I N3 D SUM3($G(^(N3)))
 ;
 Q
 ;
 ;
PLU2 ;
 ;--- INPUT : HZM,RF,PAR,N1
 N COL,PRC,SUM,ST,SUG,N,MIN
 S SUG=$P(RF,"\",2),COL=$P(RF,"\",5),PRC=$P(RF,"\",4),SUM=$J(PRC*COL,2,2)
 S MIN=$$EX2KITCH^W4HZMST(HZM,N1)
 ;
 S COLP=COL D PLT
 ;
 I $G(HZM),$G(N1),'$D(@$$^W4ORD@(HZM,"ST",N1)) D
 .N MLZL,MLZBG S MLZL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .S MLZBG=$$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"MKBL")
 .I (MLZBG&$$MLZBGPAR^W4PRM)!(MLZL="") S MLZL=MLZBG
 .Q:MLZL=""  Q:PAR=""
 .N DV S DV=$$^W4MYDVN
 .S @$$^W4ORD@(HZM,"ST",N1)=MLZL_"\"_$$^%L1TM($P($H,",",2))_"\"_DV_"\JB="_$G(JB)_"\"_$H
 Q
 ;
 ;
PLU3 ;
 ;--- INPUT : RF,PAR,COLP
 N ST0,COL,PRC,SUM,PARO,SUMHN,MIN
 S ST0=$P(RF,"\",2,25)
 S PRC=$P(ST0,"\")
 ;
 S COL=+$P(ST0,"\",2) S SUM=PRC*COL
 ;
 S PARO=PAR,PAR=PAR_"-T"
 D PLT S PAR=PARO
 ;
 Q
 ;
 ;
PLT ;
 ;-- INPUT: PAR,COL,SSUM,SHNH,DAT,MRK,HZM,P1DZ,N1
 ;
 I $G(DBL) Q
 ;
 I '$D(MRK) D MRK^W4IN
 ;
 N ST,SHAA Q:PAR["%"  Q:PAR=""
 I '$G(DAT) S DAT=$$^%L1DC(P1DZ,2)
 ;
 I PAR?1":"1N.N,$G(@$$^W4PRM@("MM"))!$G(@$$^W4PRM@("MMZZ")) D  Q
 .S @$$^W4GL("P1MLZ")@(HZM)=$E(PAR,2,4)
 ;
 D
 .L +@$$^W4GL("P1MLZ")@(HZM):1
 .N MLZL S MLZL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .N IND1 S IND1=N1 ;; $$IND(N1) ; -- 17.02.23
 .I $G(HZM),$G(IND1),$D(@$$^W4ORD@(HZM,"ST",IND1))#2 S MLZL=$P(^(IND1),"\")
 .I MLZL="" S MLZL=$$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"MKBL")
 .Q:MLZL=""  Q:PAR=""
 .S ST=$G(@$$^W4GL("P1MLZ")@(HZM,MLZL,PAR))
 .D SUMST
 .S @$$^W4GL("P1MLZ")@(HZM,MLZL,PAR)=ST
 .L -@$$^W4GL("P1MLZ")@(HZM)
 ;
 I $$HZM^W4MSL(HZM),'$D(PLU1),'$D(W4MLREST) Q
 ;
 L +@$$^W4GL("PLUTOT")@(DAT,MRK,PAR):1
 L +@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR):1
 ;
 S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) D SUMST
 S SSUM=$G(SSUM)+SUM,SHNH=$G(SHNH)+$G(SUMHN)
 S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR)=ST
 S @$$^W4GL("PLUTOTI")@(PAR,MRK,DAT)=""
 S ST=$G(@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)) D SUMST
 S @$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)=ST
 ;
 D
 .D SHAA
 .S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)) D SUMST
 .S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)=ST
 .;
 .I $G(W4MLREST)'="C" D
 ..I $$MLY^W4PLUK,'$$NEWMLY^W3PRM,'$G(MIN) D
 ...D ^W4MLY(MRK,DAT,PAR,COL,$J($S('COL:SUM,1:SUM/COL),2,2),$G(SUMHN))
 ..;
 ..I $$NEWMLY^W3PRM,'$G(MIN) D
 ...D SETMLY^W4SETMLY(2,DTHZ,$$^W4PK(PAR),"O",$S('$G(LKHN):0,1:LKHN),"ORD",HZM,COL)
 .
 .
 .I $G(NMB),$D(@$$^W4GL("P1ARZ")@(PAR)),$$SUGL1^W4L(NMB)="TAW"!$$^W4MSL(NMB),$G(W4MLREST)'="C" D
 ..N ARIZA
 ..S ARIZA=$P(@$$^W4GL("P1ARZ")@(PAR),"\",3) Q:ARIZA=""
 ..S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,ARIZA,SHAA)) D SUMST
 ..S @$$^W4GL("PLUTOT")@(DAT,MRK,ARIZA,SHAA)=ST
 ..I $$MLY^W4PLUK,'$$NEWMLY^W3PRM,'$G(MIN) D
 ...D ^W4MLY(MRK,DAT,ARIZA,COL,$J(0,2,2),"")
 ..I $$NEWMLY^W3PRM,'$G(MIN) D
 ...D SETMLY^W4SETMLY(2,DTHZ,ARIZA,"O",$S('$G(LKHN):0,1:LKHN),"ORD",HZM,COL)
 ;
 L -@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)
 L -@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)
 Q
 ;
 ;
SHAA ;
 I $$MSL^W4HZMST(HZM) S SHAA=$$SHAA^W4HZMST(HZM) G ESHAA
 S SHAA=""
 N IND1 S IND1=N1 ;;$$IND(N1)
 I $G(HZM),$G(IND1),$G(@$$^W4ORD@(HZM,"ST",IND1)) S SHAA=$P(^(IND1),"\",2)
 I SHAA=""!$$^W4PPG("") D
 .S SHAA=$TR($P($$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"ZMANK"),"  ",2)," ","")
 S:SHAA="" SHAA=$$T^%L1TIME($P($H,",",2))
ESHAA S SHAA=+$TR(SHAA," ","")
 Q
 ;
 ;
DEFPRN(PRT) ;
 D ^W4DEFPRN(HZM,PRT)
 Q
 ;
 ;
PCHD ;
 I '$D(PRINTF(PRINT))!($$NIFRAD^W4MDP(MDP1)&$G(PRMAIN))!($G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT)),'$G(ERMDP)!($G(P1HZOP)="BIT") D
 .I $G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT),'$G(@$$^W4PRM@("MANATL")) D
 ..D CUT(PRINT) ; ----- LO HEADN ??
 .D BEEP
 .D HEAD,HEAD1
 .S PRINTF(PRINT)=1
 Q
 ;
 ;
SUMST ;
 S $P(ST,"*",1)=$P(ST,"*",1)+COL
 S $P(ST,"*",2)=$P(ST,"*",2)+SUM
 S $P(ST,"*",3)=PRC
 S $P(ST,"*",4)=$P(ST,"*",4)+$G(SUMHN)
 I COL<0 D
 .I $G(MIN) D
 ..S $P(ST,"*",5)=$P(ST,"*",5)+COL
 ..S $P(ST,"*",7)=$P(ST,"*",7)+SUM
 .I '$G(MIN) D
 ..S $P(ST,"*",6)=$P(ST,"*",6)+COL
 ..S $P(ST,"*",8)=$P(ST,"*",8)+SUM
 Q
 ;
SUMHN(HZM,NN) ;
 N SUMHN,A S SUMHN=0
 F NN=NN+1:1 Q:'$D(@$$^W4ORD@(HZM,NN))  S A=^(NN) Q:$P(A,"\")'["%"  D
 .S SUMHN=$G(SUMHN)-$P(A,"\",7)
 Q SUMHN
 ;
DEFMANA(CMT) ;
 S MANA=$$^W4DEFMN(CMT)
 I $G(PRHDST) S MANA=0
 Q
 ;
 ;
PC1 N N,PRN,CHP,CHP0,%MDP,CUTPRG,PRTSF,PRCHP,PCCHP
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .;;M ^PC1(PRN)=@$$^W4PC1@(PRN) ; *** 30.10.24
 .L +@$$^W4PC@(PRN):1 S PRCHP=0,PRKAV=1 ;
 .S CHP="",CHP0="",ICHP=0
 .F  S CHP=$O(@$$^W4PC1@(PRN,CHP)) Q:CHP=""  D  S CHP0=CHP
 ..K FLMN I CHP>0,+CHP'=+$G(CHP0) I $$CHLD(PRN,CHP) D PCCHP(PRN,CHP) S PRCHP=1,PCCHP(PRN)=""
 ..S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,CHP,NOM)) Q:NOM=""  D
 ...S N="" F  S N=$O(@$$^W4PC1@(PRN,CHP,NOM,N)) Q:N=""  S TXT=$G(^(N)) I $L(TXT) D
 ....D SETPC(PRN,TXT)
 ....S PRCHP=0,PRKAV=0
 .L -@$$^W4PC@(PRN)
 ;
 K @$$^W4PC1
 Q
 ;
 ;
PC2 N N,PRN,CHP,CHP0,%MDP,CUTPRG,NOM,TXT,PRCHP,PCCHP
 ;
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .S PRCHP=0,PRCHP1=0
 .L +@$$^W4PC@(PRN):1 S PRKAV=1
 .S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,NOM)) Q:NOM=""  D
 ..K FLMN D
 ...D DEFMDP(PRN)
 ...N PRINT,pc S PRINT=PRN
 ..;
 ..N PRCHP1 S PRCHP1=0
 ..S CHP="" F  S CHP=$O(@$$^W4PC1@(PRN,NOM,CHP)) Q:CHP=""  D  S CHP0=CHP
 ...I CHP,$$CHILD(PRN,NOM,CHP) I +CHP'=+$G(CHP0) D PCSET(PRN,CHP,NOM) S PRCHP=1,PCCHP(PRN)="",PRCHP1=1
 ...S N="" F  S N=$O(@$$^W4PC1@(PRN,NOM,CHP,N)) Q:N=""  S TXT=$G(^(N)) D
 ....I $$HZPCSP^W4PRM D SETPC(PRN,"")
 ....D SETPC(PRN,TXT) S PRKAV=0
 ..I PRCHP1 D SETPC(PRN,$TR($J("",$$WD-3)," ","-")) S PRCHP1=0
 .
 .L -@$$^W4PC@(PRN)
 .
 K @$$^W4PC1
 Q
 ;
 ;
PC3 N N,PRN,CHP,CHP0,%MDP,CUTPRG,NOM,TXT,KV,PRCHP,PCCHP
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .S PRCHP=0
 .L +@$$^W4PC@(PRN):1 S PRKAV=1
 .S KV="" F  S KV=$O(@$$^W4PC1@(PRN,KV)) Q:KV=""  D
 ..S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,KV,NOM)) Q:NOM=""  D
 ...K FLMN D
 ....D DEFMDP(PRN)
 ....N PRINT,pc S PRINT=PRN
 ...;
 ...S CHP="" F ICHP=1:1 S CHP=$O(@$$^W4PC1@(PRN,KV,NOM,CHP)) Q:CHP=""  D
 ....I CHP,$$CHILD3(PRN,KV,NOM,CHP) D PCCHP(PRN,CHP) S PRCHP=1,PCCHP(PRN)=""
 ....S N="" F  S N=$O(@$$^W4PC1@(PRN,KV,NOM,CHP,N)) Q:N=""  S TXT=$G(^(N)) D
 .....I $$HZPCSP^W4PRM D SETPC(PRN,"")
 .....D SETPC(PRN,TXT) S PRKAV=0
 ..
 ..;;I $$LINE^W4PRM,'PRKAV D KAV1(PRN) ; -- 26.08
 .L -@$$^W4PC@(PRN)
 ;
 K @$$^W4PC1
 Q
 ;
 ;
IFMDP(ST) ;
 N OK S OK=0
 N N S N="" F  S N=$O(%MDP(N)) Q:N=""  I ST=%MDP(N) S OK=1 Q
 I ST=($C(27)_"p"_$C(1)_$C(64)_$C(255)) S OK=1
 Q OK
 ;
 ;
CHLD(PRN,CHP) ;
 I $D(@$$^W4PC1@(PRN,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,CHP,NN)) Q:NN=""  D
 .N NN1 S NN1="" F  S NN1=$O(@$$^W4PC1@(PRN,CHP,NN,NN1)) Q:NN1=""  D
 ..N ST S ST=$G(^(NN1))
 ..I ST'?.P,'$$IFMDP(ST) S OK=1
 Q OK
 ;
 ;
CHILD(PRN,NOM,CHP) ;
 I $D(@$$^W4PC1@(PRN,NOM,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,NOM,CHP,NN)) Q:NN=""  D
 .N ST S ST=$G(^(NN))
 .I ST'?.P,'$$IFMDP(ST) S OK=1
 Q OK
 ;
CHILD3(PRN,KV,NOM,CHP) ;
 I $D(@$$^W4PC1@(PRN,KV,NOM,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,KV,NOM,CHP,NN)) Q:NN=""  D
 .N ST S ST=$G(^(NN))
 .I ST'?.P,'$$IFMDP(ST) S OK=1
 Q OK
 ;
PMANA(CHP) ;
 I $G(PRHDST) Q 0
 I $G(CHP)="" Q ""
 S CHP=+CHP
 N TXT,FMANA S TXT="",FMANA=""
 I CHP>0,CHP<13 S FMANA=$$FMANA(CHP)
 I CHP="T" S TXT=$$FMANA1("zetqez")
 I $L(FMANA) S TXT=%MDP("B")_FMANA_%MDP("N")
 Q TXT
 ;
FMANA(CHP) ;
 I $G(PRHDST) Q ""
 S CHP=+$G(CHP)
 N MANA S MANA=$$GETI^W4DEFMN(CHP)
 S MANA=$E(MANA,2,$L(MANA)-1)
 I $G(PRHDST) S MANA=0
 Q $$FMANA1(MANA)
 ;
FMANA1(MANA)
 I $G(PRHDST) Q ""
 N LN S LN=26 I $$OLDPC S LN=19
 N KAV S KAV=$TR($J("",(LN-$L(MANA)-2)\2*$$KFPC)," ","-")
 Q KAV_" "_MANA_" "_KAV
 ;
PCCHP(PRN,CHP,GL) ;
 I CHP["T",$$NOROMA^W4PRM Q
 I $G(PRHDST) Q
 D DEFMDP(PRN)
 ;
 ;;Q:$G(CHP0(PRN))'?1N.N  Q:CHP0(PRN)'<CHP
 N PRINT,pc S PRINT=PRN
 ;
 I $G(@$$^W4PRM@("MANATL")),$D(PCCHP(PRN)) D
 .N pc s pc="" D HEADN
 .K PRINTF(PRINT)
 .N pc S pc="" D HEAD,HEAD1 S FLMN(PRN)=""
 .S PRINTF(PRINT)=1
 ;
 N PMANA S PMANA=$$PMANA(CHP)
 N SMB S SMB=$C(10) ;; "" -- 18.03.21
 N TXT S TXT=SMB_$J("",SM)_PMANA
 ;
 I '$G(@$$^W4PRM@("MANABLKV")),PMANA'?.P D SETPC(PRN,TXT)
 Q
 ;
 ;
PCSET(PRN,CHP,NOM) ;
 I $G(PRHDST) Q
 D ^%L1TS
 D DEFMDP(PRN)
 ;
 N PRINT,pc S PRINT=PRN
 ;
 I $G(@$$^W4PRM@("MANATL")),$D(PCCHP(PRN)) D
 .N pc s pc="" D HEADN
 .K PRINTF(PRINT)
 .N pc S pc="" D HEAD,HEAD1 S FLMN(PRN)=""
 .S PRINTF(PRINT)=1
 ;
 N CD S CD=$P(@$$W4ORD(HZM)@(NOM),"\") Q:'CD
 N GLEZ S GLEZ=$$REF^W4EZAT(CD) I GLEZ="" Q
 N OK S OK=0
 N SET S SET="" F  S SET=$O(@GLEZ@(SET)) Q:SET=""  I +$G(^(SET))=+CHP S OK=1 Q
 Q:'OK  Q:SET=""
 N NS S NS=$E(SET,2,10)
 N PMANA S PMANA=$P($G(@$$GLSET(HZM)@(NS)),"\")
 N LKAV S LKAV=($$WD-$L(PMANA))\2-2
 N KAV S KAV=$TR($J("",LKAV)," ","-")
 N TXT S TXT=$C(10)_KAV_" "_$TR(PMANA,TS0,TSS)_" "_KAV ;;_$C(10)
 ;
 I '$G(@$$^W4PRM@("MANABLKV")),PMANA'?.P D SETPC(PRN,TXT)
 Q
 ;
QNPIZZA(C) ;
 Q $$QNPZ^W4PIZZA(C)
 ;
PCCAM(C) ;
 N CM S CM=$S('$G(@$$^W4PRM@("SCANER"))!'$P(C,".",2):$J(C,2),1:$J(C,3,3))
 ;
 N B S B=$$B
 I $L($P(CM,".",2)),$P(CM,".",2) Q B_$J(CM,6,3)_$G(%MDP("N"))_" "  ; -- 21/07/26 --> COMMENT
 ;
 I '$P(CM,".",2) D
 .S CM=$P(CM,".")
 .I +$TR(CM," ","")=1,$$NOQ1^W4PRM S CM="  "
 Q B_CM_$G(%MDP("N"))_" "
 ;
 ;
NAME(TXT,C,DL,HR) ;
 N PRTSF S PRTSF=0
 ;
 N B S B=$$B
 ;
 I B="" S DL=DL*2
 ;
 S TXT=$$SPA^%L1FRM(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"()","")
 S TXT=$$RPL^%L1FRM(TXT,")(","")
 S TXT=$$RPL^%L1FRM(TXT,"[]","")
 ;
 N ENG I $TR(TXT," ","")?.E3U.E!($TR(TXT," ","")?.U1N.N.U.N),$$SHEML^W4PRM,'$$NOPCLOAZ^W4PRM S ENG=1
 E  S ENG=0
 ;
 S HR=$$^W4CLRMN(HR)
 S HR=$$^W4CLRCMN(HR)
 ;
 I $G(PRBASAR) D
 .S TXT=$G(%MDP("B"))_TXT_$G(%MDP("N")),DL=DL-$S($L(TXT)>10:6,1:-2)
 ;
 I $G(PRLEHEM) D
 .S TXT=$C(27,45,2)_TXT_$C(27,45,0),DL=DL+6
 ;
 I $$SBR(HR),ENG S TXT=$$SPA^%L1FRM(HR)_" "_TXT
 I $$SBR(HR),'ENG S TXT=TXT_" "_$$SPA^%L1FRM(HR)
 ;
 N SMBT S SMBT="+"
 I $G(@$$^W4PRM@("SMBT"))'="" S SMBT=^("SMBT")
 ;
 I C>1,'ENG,$$B="",'$G(@$$^W4PRM@("NMBLIKAV")) D  Q TXT
 .S TXT=" <-"_$TR($J("",DL-4-$L(TXT))," ","-")_" "_TXT
 ;
 I $G(SUGTSF)=3 S TXT=TXT_SMBT
 I $G(SUGTSF)=1,$$TSFTIED=1.5 S TXT=TXT_SMBT
 ;
 D DLG^%L1FRM(TXT,DL)
 ;
 I 'ENG D
 .S TXT=$J(%CHAST(1,1),DL)
 .I $L($G(%CHAST(1,2))) S NAME2=%CHAST(1,2)
 .I $L($G(%CHAST(1,3))) S NAME3=%CHAST(1,3)
 ;
 I ENG D
 .N CH1,CH2,CH3 S CH1=$$SPA^%L1FRM($G(%CHAST(1,1)))
 .S CH2=$$SPA^%L1FRM($G(%CHAST(1,2)))
 .S CH3=$$SPA^%L1FRM($G(%CHAST(1,3)))
 .I $L(CH3) D  Q
 ..S TXT=CH3_$J("",DL-$L(CH3)),NAME2=CH2,NAME3=CH1
 .I $L(CH2) D
 ..S TXT=CH2_$J("",DL-$L(CH2)),NAME2=CH1
 ;
 N B S B=$$B
 S TXT=B_TXT_%MDP("N")
 Q TXT
 ;
 ;
NM2(TXT) ;
 N B S B=$$B
 ;
 S TXT=$$NM21(TXT)
 N ENG I $TR(TXT," ","")?.E3U.E!($TR(TXT," ","")?.U1N.N.U.N),$$SHEML^W4PRM,'$$NOPCLOAZ^W4PRM S ENG=1
 E  S ENG=0
 ;
 S TXT=B_TXT_%MDP("N")
 Q TXT
 ;
 ;
NM21(TXT) ;
 S TXT=$$SPA^%L1FRM(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"()","")
 S TXT=$$RPL^%L1FRM(TXT,")(","")
 S TXT=$$RPL^%L1FRM(TXT,"[]","")
 Q TXT
 ;
B(STAM) ;
 N B S B=""
 I $$BIGNAME^W4PRM,'$G(SUGTSF) S B=$S($$BIGNAME^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=1 S:$$BIGNMEZT^W4PRM B=$S($$BIGNMEZT^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=2 S:$$BIGNMEZA^W4PRM B=$S($$BIGNMEZA^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=3 S:$$BIGNMEZI^W4PRM B=$S($$BIGNMEZI^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 Q B
 ;
SHEML(CD) ;
 N SHEML S SHEML=""
 I '$$NOPCLOAZ^W4PRM S SHEML=$$SHEML^W4P(CD)
 I $L(SHEML) Q $S($P(CD,"-",2):$G(@$$^W4GL("P1SBR")@($P(CD,"-",2)))_" ",1:"")_SHEML
 Q $$SHEM^W4P(CD)_$S($P(CD,"-",2):" "_$G(@$$^W4GL("P1SBR")@($P(CD,"-",2))),1:"")
 ;
 ;
SBR(HR) ;
 S HR=$$^W4CLRMN(HR)
 S HR=$TR(HR,";"," ")
 S HR=$$SPA^%L1FRM(HR)
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  I $$SPA^%L1FRM(^(N))=HR S OK=1 Q
 Q OK
 ;
 ;
MYDEV(STAM) ;
 Q $$^W4MYDVN
 ;
 ;
PCHR(HR,DLT2H,PR) ;
 N J,TXT,TXT0,PRMV,HRAV
 N PRMV,HRAV S PRMV=0,HRAV=""
 ;
 D PREPHR(HR)
 ;
 N HEB S HEB=$$HEB(HR)
 ;
 ;;M ^AA("W4HZMPC","CHAST")=%CHAST
 ;
 I HEB F J=1:1 Q:'$D(%CHAST(1,J))  D
 .N ST S ST=%CHAST(1,J)
 .D
 ..I $$HRSP^W4HZPCFN S ST=$$SP(ST) Q
 ..S ST=$G(%MDP("B"))_ST
 .S TXT=$S(J=1:$C(10),1:"")_ST_%MDP("N") D S1
 ;
 I 'HEB F J=$O(%CHAST(1,99),-1):-1:1 D
 .I J=$O(%CHAST(1,99),-1) S TXT="" D S1 S PRSP=""
 .N ST S ST=$G(%MDP("B"))_%CHAST(1,J) I $$HRSP^W4HZPCFN S ST=$$SP(ST)
 .S TXT=ST_%MDP("N") D S1
 ;
 I $L($G(HRAV)) S TXT=HRAV D S1
 Q
 ;
 ;
HEB(HR) ;
 Q $$HEB^W4HZPCFN(HR)
 ;
SP(TX)
 Q $$SP^W4HZPCFN(TX)
 ;
FBAR(PRT) ;
 N MDP S MDP=$$PRINTIG^W3PRMDP(PRT)
 I MDP'?1N.N.E Q 0
 I $$PRINT1^W4P(PRT)["xa" Q 1
 Q 0
 ;
 ;
 ;
NOPRINT(ST,UR) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@"&'$D(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@!"  Q 1
 I $G(P1HZMET("ETEK"))=2 Q 0
 I NOMOD["@@@"&$G(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@@"&$D(P1HZMET("ETEK"))&'$G(DBL) Q 1
 I NOMOD["@@+"&$G(DBL)&'$G(P1HZMET) Q 1
 I NOMOD["@@@+" Q 1
 Q 0
 ;
 ;
SETWASPRINT(REF,UR) ;
 ;
 N REFC S REFC=$G(@REF)
 N SMB S SMB=$$SMB(REFC)
 S UR=$G(UR)
 ;
 I $G(P1HZMET),'$G(DBL),$$NOMOD(REFC)["@@@" Q 1
 ;
 I $G(P1HZMET),'$D(P1HZMET("SHZM")),$$NOMOD(REFC,UR)'["@@!" D
 .D SETNOMOD(REF,"@@@"_SMB,UR)
 ;
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@" D SETNOMOD(REF,"@@+",UR)
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@@" D SETNOMOD(REF,"@@@+",UR)
 ;;W "REF="_REF_"  @REF="_@REF,!
 I $$NOMOD(REFC,UR)["@@" Q 1
 ;
 D SETNOMOD(REF,"@@"_$S($G(P1HZOP):"@",1:""),UR)
 Q 0
 ;
 ;
 ;
PRMANA(HZM) ;
 Q $$PRMANA^W4HZPCFN(HZM)
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
BEEP ;
 N TXT S TXT=$G(%MDP("BEEP")) D S2
 Q
 ;
LINETL(STAM) ;
 Q $G(@$$^W4PRM@("LINETL"))
 ;
 ;
BBNAME(STAM) ; 
 I $D(PCLP),$G(@$$^W4PRM@("BIGNAME"))=1 Q 1
 Q 0
 ;
DEFDLT2(STAM)
 N DLT2 S DLT2=$$DLTSF
 D
 .N PAR S PAR=$P($G(@$$W4ORD(HZM)@(N1)),"\") I PAR="" Q
 .I $$DD^W4EZA(PAR),$$PRMANA(HZM)=1 S DLT2=$$DLPAR Q
 ;
 Q DLT2
 ;
 ;
SOADIM(VL) ;
 Q $J(VL_" : micreq",$$WD)
 ;
NMSET(PAR,N2) ; 
 N NM S NM="" I $G(PAR)="" Q ""
 ;;S ^AA(HZM,"PAR")=PAR
 ;;S ^AA(HZM,"N2")=N2
 N GL S GL=$$REF^W4EZAT(PAR) I GL="" Q ""
 N SET,NSET S SET="" F  S SET=$O(@GL@(SET)) Q:SET=""  D
 .S NSET=$E(SET,2,20)
 .I $D(@$$GLSET(HZM)@(NSET,N2)) S NM=$P($G(@$$GLSET(HZM)@(NSET)),"\")
 Q NM 
 ;
S1 ; 
 D S1^W4HZPCFN
 Q 
 ;
S2 ; 
 D S2^W4HZPCFN
 Q 
 ;
WD(STAM) Q 39
 ; 
SETPC(PRINT,TXT) ;
 D SETPC^W4HZPCFN($G(PRINT),$G(TXT))
 Q 
 ;
OLDPC(STAM) ;
 Q $$OLDPC^W4HZPCFN
 ;
NEWPC(STAM)
 Q '$$OLDPC^W4PRM
 ;
PCBC(TX,BB)
 D PCBC^W4HZPCFN($G(TX),$G(BB))
 Q 
 ; 
KFPC(STAM) ;
 Q $$KFPC^W4HZPCFN
 ;
PRMV(HR) ;
 Q $$PRMV^W4HZPCFN(HR)
 ;
ATTN(STAM) ; 
 Q $$ATTN^W4HZPCFN(HR)  
 ;
PREPHR(HR) ;
 D PREPHR^W4HZPCFN(HR)
 Q 
 ;
TSFTIED(STAM) ; 
 Q $G(@$$^W4PRM@("TSFTIED")) 
 ;
 ;
CLRSMB ;
 N A,A1,A2,A3,BGBON,N1,N2 S BGBON=0
 ;
 I $G(P1HZMET("ETEK"))="LAST" D
 .N LAST,TIME,TIME1 S LAST=9999
 .S N2=$O(@$$^W4ORD@(HZM,"ST",LAST),-1) Q:N2=""  Q:BGBON
 .S TIME=$P($G(@$$^W4ORD@(HZM,"ST",N2)),"\",2)
 .S TIME=$TR(TIME," ","")
 .
 .I '$D(@$$^W4ORD@(HZM,"ST")) D COMPBG(HZM)
 .
 .I $D(@$$^W4ORD@(HZM,"ST"))>9 D
 ..F  S N2=$O(@$$^W4ORD@(HZM,"ST",N2),-1) Q:N2=""  D  Q:BGBON
 ...S TIME1=$P($G(@$$^W4ORD@(HZM,"ST",N2)),"\",2)
 ...S TIME1=$TR(TIME1," ","")
 ...I TIME1'=TIME S BGBON=1 Q
 ...S BG=N2
 ;
 I $G(P1HZMET),$D(P1HZMET("DBL")) S BG=+P1HZMET+1
 ;
 F N1=BG:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .S A1=$G(@$$^W4ORD@(HZM,N1))
 .N SMB S SMB=$$SMB(A1) I SMB="+" S SMB=""
 .
 .I $$NOMOD(A1)["@@" D
 ..N NOMOD S NOMOD=$$NOMOD(A1)
 ..I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1)","@@"_SMB)
 ..I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1)",$TR(NOMOD,"+",""))
 .
 .N N2 S N2="" F J2=1:1 S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ..S A2=$G(^(N2))
 ..S SMB=$$SMB(A2) I SMB="+" S SMB=""
 ..I $$NOMOD(A2)["@@" D
 ...N NOMOD S NOMOD=$$NOMOD(A2)
 ...I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1,N2)","@@"_SMB)
 ...I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1,N2)",$TR(NOMOD,"+",""))
 ..
 ..N N3 S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ...S A3=$G(^(N3))
 ...S SMB=$$SMB(A3) I SMB="+" S SMB=""
 ...I $$NOMOD(A3)["@@" D
 ....N NOMOD S NOMOD=$$NOMOD(A3)
 ....I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1,N2,N3)","@@"_SMB)
 ....I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1,N2,N3)",$TR(NOMOD,"+",""))
 Q
 ;
 ;
EZT(PAR,CDT) ; 
 N OK S OK=0
 I $G(PAR)="" Q 0
 I $G(CDT)="" Q 0
 ;;I $G(PRHDST) Q 0; -- 27/05/25 --> COMMENT
 I $$DD^W4EZT(PAR) Q 1 
 Q 0
 ;
PRNST(N) ;
 N ST S ST=$G(@$$W4ORD(HZM)@(N))
 I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")),$$NOMOD(ST)["@@" Q 0
 Q 1
 ;
CDNM(STAM) ; 
 I $$^W6,$$NOPCLOAZ^W4PRM Q 1
 Q $$CDNM^W4MDBPC 
 ;
 ;
BON2BON(HZM,PRINT,BONTM) ;
 N MN,KV,CODP,SHB
 ;
 S K=0
 ;;M @$$^W4MAIN("TMPBON0")=@TMPBON
 ;
 I $$PRMANA(HZM)=1 D
 .S MN="" F  S MN=$O(@TMPBON@(PRINT,MN)) Q:MN=""  D
 ..I MN D
 ...S K=K+1
 ...N KAV S KAV=$TR($J("",12)," ","-")
 ...I $$BONNEW^W4PRM S KAV=""
 ...N MSG S MSG=KAV_" "_$$GETI^W4DEFMN(MN)_" "_KAV
 ...S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)="!"_MSG
 ..S CODP="" F  S CODP=$O(@TMPBON@(PRINT,MN,CODP)) Q:CODP=""  D
 ...S SHB="" F  S SHB=$O(@TMPBON@(PRINT,MN,CODP,SHB)) Q:SHB=""  D
 ....S K=K+1
 ....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)=$G(@TMPBON@(PRINT,MN,CODP,SHB))
 ;
 ;
 I $$PRMANA(HZM)=2 D
 .S CODP="" F  S CODP=$O(@TMPBON@(PRINT,CODP)) Q:CODP=""  D
 ..S MN="" F  S MN=$O(@TMPBON@(PRINT,CODP,MN)) Q:MN=""  D
 ...S MSG=""
 ...I $$^W4EZAT(CODP) D
 ....N GL S GL=$S($$DD^W4EZT(CODP):"P1EZT",1:"P1EZA")
 ....S K=K+1
 ....N J,N,OK S OK="" 
 ....S N="" F  S N=$O(@$$^W4GL(GL)@(CODP,N)) Q:N=""  D  Q:$L(OK)
 .....I MN=$G(^(N)) S OK=N 
 ....Q:'$L(OK)
 ....N NS S NS=""
 ....S:$E(OK)="A" NS=$E(OK,2,7)
 ....Q:'NS
 ....N NMSET S NMSET=$P($G(@$$GLSET(HZM)@(NS)),"\")
 ....N KAV S KAV=" ---- "
 ....I $$BONNEW^W4PRM S KAV=""  
 ....S MSG=KAV_$$HBR^%L1FRM(NMSET,32)_KAV
 ...
 ...S SHB="" F  S SHB=$O(@TMPBON@(PRINT,CODP,MN,SHB)) Q:SHB=""  D
 ....N RF S RF=$G(^(SHB))
 ....I $L(RF),$L(MSG),MN,'$$AI^W4BONNEW(RF) D
 .....S K=K+1
 .....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)="!"_MSG S MSG=""
 ....
 ....S K=K+1
 ....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)=$G(@TMPBON@(PRINT,CODP,MN,SHB))
 ;
 I $$PRMANA(HZM)=3 D
 .S KV="" F  S KV=$O(@TMPBON@(PRINT,KV)) Q:KV=""  D
 ..S CODP="" F  S CODP=$O(@TMPBON@(PRINT,KV,CODP)) Q:CODP=""  D
 ...S MN="" F  S MN=$O(@TMPBON@(PRINT,KV,CODP,MN)) Q:MN=""  D
 ....S SHB="" F  S SHB=$O(@TMPBON@(PRINT,KV,CODP,MN,SHB)) Q:SHB=""  D
 .....S K=K+1
 .....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)=$G(@TMPBON@(PRINT,KV,CODP,MN,SHB))
 ;
 K @TMPBON@(PRINT) ; ***
 Q
 ;;
ORD2ORD1(HZM) ;
 N K S K=0 
 K @$$^W4ORD@(HZM,"PC1")
 I $$BONSCR^W4PRM,$D(P1HZMET) D
 .D CLEARBON(HZM,$$^W4GL("W4BON"))
 .D CLEARBON(HZM,$$^W4GL("W4BONA"))
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D  D SETWAS(HZM,N)
 .N ST S ST=$G(^(N)) 
 .N QN S QN=$P(ST,"\",5) 
 .I $D(P1HZMET) S QN=$$ITRAST^W4HZMST(HZM,N) ; -- 20/06/23
 .
 .I QN'>1 D  Q 
 ..S K=K+1 
 ..D SETPC1(HZM,N,K,QN)
 . 
 .N I F I=1:1:QN D 
 ..S K=K+1 
 ..D SETPC1(HZM,N,K,1)
 Q
 ;
 ;
CLEARBON(HZM,GL) ;
 N DT,PRN,TIM
 S DT=$$^W4DZ
 S PRN="" F  S PRN=$O(@GL@(DT,PRN)) Q:PRN=""  D
 .S TIM="" F  S TIM=$O(@GL@(DT,PRN,TIM)) Q:TIM=""  D
 ..K @GL@(DT,PRN,TIM,HZM)
 Q
 ;
SETPC1(HZM,N,K,QN)
 N A,A1,A2
 S A=$G(@$$^W4ORD@(HZM,N))
 M @$$^W4ORD@(HZM,"PC1",K)=@$$^W4ORD@(HZM,N) 
 S $P(@$$^W4ORD@(HZM,"PC1",K),"\",5)=QN 
 S $P(@$$^W4ORD@(HZM,"PC1",K),"\",15)=N 
 N A S A=$G(@$$^W4ORD@(HZM,"PC1",K))
 ;
 N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"PC1",K,N1)) Q:N1=""  D
 .N A1,QNT,QNT1,AI S AI=0
 .S A1=$G(^(N1)),QNT=$P(A1,"\",3)
 .I $D(^(N1))=11 S AI=1
 .
 .I $G(QN)>1 D
 ..S QNT1=$S(QNT["*":$P(QNT,"*",2),'$$PZQN(QNT)&'(QNT#QN):QNT\QN,1:QNT)
 ..I 'QNT1 S QNT1=1
 ..S $P(@$$^W4ORD@(HZM,"PC1",K,N1),"\",3)=QNT1
 .
 .Q:'AI
 .
 .
 .N N2 S N2="" F  S N2=$O(@$$^W4ORD@(HZM,"PC1",K,N1,N2)) Q:N2=""  D
 ..N A2 S A2=$G(^(N2))  
 ..N QNT2 S QNT2=$P(A2,"\",3)
 ..N QNT21 S QNT21=$S(QNT2["*":$P(QNT2,"*",2),'$$PZQN(QNT2)&'(QNT2#QN):QNT2\QN,1:QNT2)
 ..I 'QNT21 S QNT21=1
 ..S $P(@$$^W4ORD@(HZM,"PC1",K,N1,N2),"\",3)=QNT21
 Q 
 ;
 ;
SETWAS(HZM,N) ;
 N N1,N2 Q:'N
 D SETWAS1($$^W4ORD_"(HZM,N)")
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N,N1)) Q:N1=""  I N1 D
 .D SETWAS1($$^W4ORD_"(HZM,N,N1)")
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N,N1,N2)) Q:N2=""  I N2 D
 ..D SETWAS1($$^W4ORD_"(HZM,N,N1,N2)")
 Q
 ;
SETWAS1(GL) 
 I $G(@GL)="" Q
 I $P(@GL,"\",10)["@@" Q
 S $P(@GL,"\",10)="@@"
 Q
 ; 
PZQN(QN) ;
 I QN["|",QN["+" Q 1
 Q 0
 ;
W4ORD(HZM) ; 
 I '$$PCQN1 Q $$^W4ORD_"("""_HZM_""")"
 Q $$^W4ORD_"("""_HZM_""",""PC1"")"
 ;
W4ORDPC(HZM) ; 
 I '$$PCQN1 Q $$^W4ORD_"("""_HZM_""""
 Q $$^W4ORD_"("""_HZM_""",""PC1"""
 ;
IND(N1) ; 
 I '$$PCQN1 Q N1
 Q $P($G(@$$^W4ORD@(HZM,"PC1",N1)),"\",15)
 ;
PCQN1() ; 
 Q +$$PCQN1^W4PRM
 ;
BASAR(CD) ; 
 I $$ZAHI^W4PRM'=1 Q 0
 I $$BASAR^W4HSBRKZ(CD) Q 1 
 N OK S OK=0
 N I F I=2,8,11,12 D 
 .I $D(@$$^W4GL("P1SETA")@(I,CD)) S OK=1 
 Q OK
 ; 
LEHEM(CD) ; 
 I $$ZAHI^W4PRM'=1,$$ZAHI^W4PRM'=3 Q 0
 N OK S OK=0
 N I F I=1,3,7 D 
 .I $D(@$$^W4GL("P1SETA")@(I,CD)) S OK=1 
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMPC0
W4HZMPC ; HAZAGAT HAZMANA LMADPESET MITBAH [ 22.09.26 22:14 ] [ 17.09.26 14:29 ] [ 14.09.26 12:29 ] 
 N (JB,%ARG,%REM,HZM,LKHN,NMB,GLBV,GLBV1,P1HZOP,P1HZMET,P3PCHZ,NOPCMDB)
 K %ARG("GLORD")
 I $$NOPCLOAZ^W4PRM S NOPCLOAZ=""
 ;
 S TMPBON=$$^W4MAIN("TMPBON") K @TMPBON
 S EX=0
 ;
 S @$$^W4PRM@("HZPCSP")=0 ; --- 19/08/20 *** LEV
 S @$$^W4PRM@("BIGFONT")=0 ; --- 16/09/20 *** LEV
 ;
 I $$HZAFTPAY^W4PRM,$$^W4DEL(HZM)=HZM,'$$WASPRN(HZM) G EBODY
 ;
 I $G(NOPCMDB)=-1,'$$MDBYAD^W4PRM!$D(P1HZMET("ETEK")) D  G EBODY  ; -- MADBEKOT BILVAD
 .N BG S BG=1
 .D ^W4MDBPC(HZM)
 ;
 I $G(@$$^W4PRM@("NOPCWOLT")),$$WOLT^W4HZMST(HZM) G EBODY
 ;
 I $$HZAFTPAY^W4PRM,'$D(@$$^W4ORD@(HZM,"PCAFTPAY")) D
 .L +@$$^W4ORD@(HZM):1
 .S @$$^W4ORD@(HZM,"PCAFTPAY")=$H
 .L -@$$^W4ORD@(HZM)
 .
 .I $$SNDY^W4PRM=1,'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM) D CR^WQDLV(HZM)
 ;
 K PRHDST
 I $D(@$$^W4ORD@(HZM,"SETA")) S PRHDST=1
 ;
 I $$PRMANA(HZM)=2 D ^W4SETCHP(HZM)
 ;
 I $$IBON^W4PRM D  G EBODY
 .N BG S BG=1
 .I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")) D COMPBG(HZM)
 .D ^W4PCIBON(HZM)
 ;
 D ^W4IN,^W4INP
 S SHB=0,BONTM=+$H_$TR($J($P($H,",",2),5)," ",0)
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S NOPCTAW=$$NOPCTAW
 D PUT^%W3DEB("W4HZMPC","HZM=HZM & NMB=NMB & P1HZOP=P1HZOP & P3PCHZ=P3PCHZ & P1HZMET=P1HZMET& NOPCTAW=NOPCTAW&NOPCMDB=NOPCMDB")
 ;
 I $$SUPER^W3PRM G EBODY
 I $$^W4HZMH(HZM),$$STAGE^W4HZMST(HZM)'=1,'$$VVMSK^W4PRM G EBODY
 I $$VVMSK^W4PRM,'$$^W4HZMH(HZM) G EBODY
 I $$^W4PIZUL(HZM) G EBODY
 ;
 I $$ZAHI^W4PRM=2,$$STAGE^W4HZMST(HZM)'=1 G EBODY
 ;;I $$STAGE^W4HZMST(HZM),$$STAGE^W4HZMST(HZM)'=1 G EBODY
 ;
 ;;S ^AA("PC","HZMH")=$$^W4HZMH(HZM)
 ;;S ^AA("PC","VVMSK")=$$VVMSK^W4PRM
 ; 
 S MKRDLV=$$MKRDLV^W4HZMST(HZM)
 S TNB=$$TNB^W4HZMST(HZM)
 S CIB=$$CIB^W4HZMST(HZM)
 ;
 I TNB,$$HZM^W4MSL(HZM),$G(@$$^W4PRM@("NOPCTNB")) G EBODY
 I CIB,$$HZM^W4MSL(HZM),$G(@$$^W4PRM@("NOPCCIB")) G EBODY
 ;
 ;;S ^AA("W4HZMPC","NOPCMDB")=$G(NOPCMDB)
 ;
 S SF=$$SF^W4PRM
 ;
 N EX S EX=0
 ;
 S ERMDP=0,NP=0 S DAT=$$^%L1DC(P1DZ,2),MANA=0,FRPC=1,PRBIT=0
 S OLDMANA=""
 S DTHZ=P1DZ
 S DLT=$$DLPAR,DLT2=$$DLTSF,DLT2H=18,III=0
 S LINEPC="S TXT="""" D S1"
 ;
 I $$MYCHECK^W4PRM,'$D(P1HZMET) D ^WMCHORD(HZM,JB) ; -- MY CHECK ; J ^
 ;
2 ;
 I $$HZMRKZ^W4PRM D
 .D ^W4HSBRKZ($$^W4ORD_"(HZM)","Q1")
 ;
 N BG S BG=1
 I $D(P1HZMET("DBL"))!$D(P1HZMET("ETEK")) D CLRSMB ; -- OCHISTKA OT "+" & 3-GO
 ;
 I $$PCQN1 D ORD2ORD1(HZM)
 ;
 I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")) D COMPBG(HZM)
 ;
 ;
 S %SCRN=HZSCR,I=0,SM=1 K PRINTF
 ;
 K @$$^W4PC1
 ;
 ;------ BDIKA IM HISTAEMA HADPASA KODEMET ---
 ;
 I $$BONSCR^W4PRM G T
 ;
 D
 .I $G(@$$^W4PRM@("LOCKOLD")) D  Q
 ..F I=1:1:1 Q:'$G(@$$^W4GL("P1LOCK")@("PCHZ"))  Q:@$$^W4GL("P1LOCK")@("PCHZ")=$$^W4MYDVN  H 1
 ..S @$$^W4GL("P1LOCK")@("PCHZ")=$$^W4MYDVN
 ;; --17.09.26 --> COMMENT
 ;;I $D(@$$^W4GL("P1LOCK")@("PCHZ",HZM)),$G(@$$^W4GL("P1LOCK")@("PCHZ",HZM))'=$J G EBODY
 ;;S @$$^W4GL("P1LOCK")@("PCHZ",HZM)=$J
 ;
T S TAWMSL=$$^W4TAWMSL(HZM)
 S FBAR=0 S NMB=$$NMB^W4HZMST(HZM)
 ;
 ; --------- BDIKA IM ESH BE HAZMANA MADBEKOT & HADPASA LE MADPESET BAR
 ;
 I $$^W4MSL(NMB) S FBAR=0
 ;
 ;------------ ZAPROS PECH NA MADP BAR ----
 ;
 K MDPMAINB
 ;
 S P1PCBIT=$G(@$$^W4PRM@("HZMBIT"))
 I 'P1PCBIT,$G(@$$^W4PRM@("HZMHV")) S P1PCBIT=.5
 ;
 N N0,N1,N2,N3,ST
 S N0=1 I $G(P1HZMET) S N0=P1HZMET
 ;
BODY ; ------------------------------------- BODY ----------------------
 S SQN=0
 F N1=1:1 Q:'$D(@$$^W4ORD@(HZM,N1))  S SQN=SQN+$P($G(^(N1)),"\",5)
 ;
 ;;S ^AA("W4HZMPC","NOPCMDB")=$G(NOPCMDB)
 ;;M ^AA("W4HZMPC","P1HZMET")=P1HZMET
 I '$G(NOPCMDB),'$$MDBYAD^W4PRM!$D(P1HZMET("ETEK")) D  ; -- MADBEKOT
 .D ^W4MDBPC(HZM)
 ;
 I '$G(NOPCMDB),$$MDBYAD^W4PRM,'$D(P1HZMET("ETEK")) D  ; -- MADBEKOT
 .I $$^W4GETHZ(HZM,"","",1),'$G(@$$^W4ORD@(HZM,"NOPCBNMDB")) D
 ..D ^W4MDBPC(HZM)
 ..S @$$^W4ORD@(HZM,"NOPCBNMDB")=$H
 ;
 I $$PRMANA(HZM)'=3 D
 .S NN="" F  S NN=$O(@$$W4ORD(HZM)@(NN)) Q:NN=""  I NN S N1=NN D PCLN(HZM,N1) ; -- WAS N1=N0
 .S N1=N1+1
 ;
 I $$PRMANA(HZM)=3 D  ; -- KVUZOT & PRITIM
 .N N,N0,KV,PAR S N0="",N1=0
 .N TMPHZ S TMPHZ=$$^W4MAIN("TMPHZ") K @TMPHZ
 .S N=N0 F  S N=$O(@$$W4ORD(HZM)@(N)) Q:N=""  I N D
 ..S PAR=$P($G(^(N)),"\") Q:PAR["%"  Q:PAR[":"
 ..S KV=+$$SUG^W4P(PAR)
 ..M @TMPHZ@(KV,PAR,N)=@$$W4ORD(HZM)@(N)
 .
 .S KV="" F  S KV=$O(@TMPHZ@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@TMPHZ@(KV,PAR)) Q:PAR=""  D
 ...S N="" F  S N=$O(@TMPHZ@(KV,PAR,N)) Q:N=""  D
 ....D PCLN(HZM,N) I N>N1 S N1=N
 .S N1=N1+1 K @TMPHZ
 ;
 I $G(MDPMAINB) D  ;  --- LEDAVEAH AL HADPASA LE MADPESET BAR MUVHERET
 .N LS S LS=$O(@$$^W4ORD@(HZM,99999),-1)+1
 .S @$$^W4ORD@(HZM,LS)="<-0\\---------------\\\\\"_$P($G(@$$^W4PRM@("MDP",MDPMAINB)),"\",4)_" <- xa hixt\\@@!"
 ;
 I N1'>1 G EBODY
 I N1>1 S @$$^W4ORD@(HZM,"H")=N1-1
 ;
 S PRINT="" F  S PRINT=$O(PRINTF(PRINT)) Q:PRINT=""  D
 .I $$BONSCR^W4HZPCHD(PRINT) D BON2BON(HZM,PRINT,BONTM)
 ;
 I $$PRMANA(HZM)=1,$D(@$$^W4PC1)>9 D PC1
 ;
 I $$PRMANA(HZM)=2,$D(@$$^W4PC1)>9 D PC2
 ;
 I $$PRMANA(HZM)=3,$D(@$$^W4PC1)>9 D PC3
 ;
 I $$MVALL^W4HZPCFN!($G(P1HZOP)="BIT")!($G(P1HZOP)="NOPC")!($G(P1HZOP)["BIT"&'P1PCBIT) G EBD0
 ;
 I $$HZMRKZ^W4PRM,$$HZMRKZ^W4PRM'=2 D ^W4HZMR
 ;
 S pc=""
 S PRINT="" F  S PRINT=$O(PRINTF(PRINT)) Q:PRINT=""  D  D HEADN
 .S @$$^W4ORD@(HZM,"PRINT",PRINT)=$H
 ;
 S PRINT="" F  S PRINT=$O(PRINTF1(PRINT)) Q:PRINT=""  D
 .S @$$^W4ORD@(HZM,"PRINT",PRINT)=$H
 .I '$D(PRINTF(PRINT)) D HEADN
 ;
EBD0 K PRINTF,PRINTF1,pc
 S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4GL("P1HZ0")_"(HZM)" D ^%S1GC1
 ;
 I $G(HZM) K @$$^W4GL("P1LOCK")@("PCHZ",HZM)
 S @$$^W4GL("P1LOCK")@("PCHZ")=""
EBODY L  ;
 Q
 ;
 ;
GLSET(HZM) ;
 Q $$^W4GLSET($G(HZM))
 ;
 ;
COMPBG(HZM) ;
 N N1
 D
 .S N1=9999 F  S N1=$O(@$$W4ORD(HZM)@(N1),-1) Q:N1=""  S A=$G(^(N1))  I A["@@",A'["@@!" Q
 .S BG=N1+1
 Q
 ;
 ;
PCLN(HZM,N1) ;
 N ADOM,MDPMAIN,MDP,N2,N2V,N23,N3,MDPMAIN,MDPMAIN1,ST,REF,REF0,PAR,NN
 S ST=$G(@$$W4ORD(HZM)@(N1))
 ;
 I $D(P1HZMET),$$ITRAST^W4HZMST(HZM,N1,$$W4ORD(HZM))'>0 Q
 S (REF,REF0)=$$W4ORDPC(HZM)_",N1)",N2=""
 ;
 K DBL D LINE D
 .I $G(MDP) S MDPMAIN=MDP ; *** 08/09/20
 .D DBL1 K DBL
 .N P1H11 S P1H11=1
 .S PAR=$P($G(@$$W4ORD(HZM)@(N1)),"\")
 .N DELAY S DELAY=$G(@$$^W4PRM@("HZMPCDELAY"))
 .I DELAY,$$^W4EZAT(PAR) H DELAY
 .I $$PCQN1 S %ARG("GLORD")=$$W4ORDPC(HZM)_")"
 .D ^W4N2V(HZM,N1)
 .N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 .S N2V="" K N2,N23,N3,PRINTF1
 .
 .F P1H=1:1 S N2V=$O(@VRMHZ@(N2V)) Q:N2V=""  D
 ..S N2=$G(^(N2V)) Q:N2=""
 ..S ST=$G(@$$W4ORD(HZM)@(N1,N2))
 ..
 ..N REF S REF=$$W4ORDPC(HZM)_",N1,N2)"
 ..N DLT2,DLT20 S (DLT2,DLT20)=$$DLTSF
 ..
 ..N DBL,COL0,CODP3,SUGTSF,PRTSF,N3,N23,MDP
 ..D LINE2 D:$D(@REF)=1 DBL2 K DBL ; -- 22/09/20
 ..
 ..N PAR,MDPMAIN1 S FRPC=1
 ..S N3="" F P1H1=1:1 S N3=$O(@$$W4ORD(HZM)@(N1,N2,N3)) Q:N3=""  D
 ...K DBL N MDP S FRPC=(P1H1=1) D LINE3 S FRPC=(P1H1=1) D DBL3 K DBL
 .;;M ^AA(N1)=@VRMHZ
 .K @VRMHZ
 
 Q
 ;
 ;
DLPAR(STAM) Q 16
DLTSF(STAM) Q 15
ISDLTSF(DL) Q ($G(DL)<($$DLTSF+1))
 ;
 ;
SMB(ST) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@!" Q "!"
 I NOMOD["@@?" Q "?"
 I NOMOD["@@+" Q "+"  ; -- 30/09/09
 Q ""
 ;
CODP(ST) ;
 N CD S CD=$P(ST,"\")
 I $$^W4CDSRV(CD)=11 Q " "
 Q CD
 ;
NM(ST) Q $P(ST,"\",3)
QN(ST) Q $P(ST,"\",5)
 ;
HRP(ST) N HRP S HRP=$P(ST,"\",8)
 S HRP=$$^W4CLRMVC(HRP)
 Q $$CLRHR(HRP)
 ;
NOMOD(ST,PR) Q $P(ST,"\",10)
 ;
SETNOMOD(REF,VL,PR) ;
 I $G(HZM)>0,$$STAGE^W4HZMST(HZM)=1,VL["@@" Q
 S $P(@REF,"\",10)=VL
 ;
 N IND3 S IND3=$$^%L1IND(REF,3)
 I $$^%L1IND(REF,2)="PC1",IND3!($E(IND3)?1U) D
 .N ST S ST=$G(@REF)
 .N IND S IND=+$P(ST,"\",15) Q:'IND
 .N REF0 S REF0=$$RPL^%L1FRM(REF,",""PC1"",",",")
 .S IND=""""_IND_""""
 .S $P(REF0,",",2)=IND
 .I $E(REF0,$L(REF0))="," S REF0=$E(REF0,1,$L(REF0)-1)_")"
 .I $E(REF0,$L(REF0))'=")" S REF0=REF0_")"
 .S $P(@REF0,"\",10)=VL
 Q
 ;
 ;
SETNOMODST(VL) ;
 I $$STAGE^W4PRM,$G(HZM)'<1,$$STAGE^W4HZMST(HZM)=1 Q
 I $$VVMSK^W4PRM Q
 S $P(ST,"\",10)=VL
 Q
 ;
WASPRN(HZM) ;
 N BG D COMPBG(HZM) 
 I BG>1 Q 1
 Q 0
 ;
TSF(CDT) ;
 I $G(CDT)="" Q 0
 N UR S UR=$S($G(N3):$S(N3=1:3.5,1:3),1:2)
 N PAR S PAR=$P($G(@$$W4ORD(HZM)@(N1)),"\")
 N CDT1 S CDT1=""
 I UR=2,$D(@$$^W4GL("P1EZI")@(PAR,CDT)) Q 1
 I UR=2,$G(N1),'$$DD^W4EZA(PAR),$$TSFORD(N1,CDT) Q 1
 I UR=2,$D(@$$^W4GL("P1EZK")@(CDT)) Q 1
 I UR=2,$$EZT(PAR,CDT),$$TSFTIED=1.5 Q 1
 I UR=3 S CDT1=$P($G(@$$W4ORD(HZM)@(N1,N2,1)),"\")
 I UR=3.5,CDT1,$D(@$$^W4GL("P1EZI")@(CDT1,CDT)) Q 1
 Q 0
 ;
TSFORD(N1,CDT)
 N OK S OK=0
 I $G(N1)="" Q 0
 I $G(CDT)="" Q 0
 I $D(@$$W4ORD(HZM)@(N1,CDT))#2 S OK=1
 Q OK
 ;
DBL1 ;
 I $G(MDP)'["&" Q
 N LASTDBL S LASTDBL=$L(MDP,"&")
 N DBL F DBL=2:1:LASTDBL D
 .N PAR
 .S OK=0,SUMHN=0,PAR=$P(ST,"\"),ERMDP=0,MIN=0 Q:PAR=""
 .D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 .D LINE
 Q
 ;
DBL2 ;
 N PAR S PAR=$P(@$$W4ORD(HZM)@(N1),"\")
 ;
 I '$$LINETL,$G(P1H1)>1 D
 .N NOPC I '$$PRNST(N1) S NOPC=""
 .D DEFPRN(PAR)
 ;
 I $$TSFTIED=2,$$TSF(N2) Q
 I $$TSFTIED,$$TSF(N2),$L($G(MDPMAIN)) S MDP=MDPMAIN
 ;
 I $G(MDP)["&" D
 .N LASTDBL S LASTDBL=$L(MDP,"&")
 .
 .N DBL F DBL=2:1:LASTDBL D
 ..D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 ..N CODP3,SUGTSF,PRTSF D LINE2
 Q
 ;
 ;
DBL3 ;
 N PAR S PAR=$P(@$$W4ORD(HZM)@(N1),"\")
 I $$TSFTIED=2,$$TSF(N2) Q
 I $$TSFTIED D
 .I $$DD^W4EZA(PAR) Q
 .I $$EZT(PAR,N2),$$TSFTIED=1.5,$L($G(MDPMAIN)) S MDP=MDPMAIN Q
 .I $L($G(MDPMAIN1)) S MDP=MDPMAIN1 Q
 .S MDP=$G(MDPMAIN)
 ;
 I $G(MDP)["&" D
 .N LASTDBL S LASTDBL=$L(MDP,"&")
 .N DBL F DBL=2:1:LASTDBL D
 ..D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 ..N CODP3,SUGTSF,PRTSF D LINE3
 Q
 ;
HEAD D ^W4HZPCHD(HZM)
 Q
 ;
 ;
HEAD1 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 ;
 N pc S pc=""
 ;
 I $G(P1HZOP)="BIT" D  Q
 .D PCBC("   !!! dlhea dpnfd "_%MDP("N"))
 .S TXT=$C(10,10,10,10,10,10)_%MDP("CUT")_$C(10,10,10,10),TXT("NOTR")=""
 .D S2 K TXT
 ;
 I '$$LINE^W4PRM D KAV^W4HZPCHD
 S PRSP="" ; -- 04/08/23
 Q
 ;
 ;
HEAD2 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 S TXT=" 4 : 3 : 2 : 1 :--- zetqez xe`z ---:" D S1
 I $G(PRINT) S PRHEAD(PRINT)=2
 Q
 ;
HEAD3 ;
 Q
 ;
HEAD4 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 Q:$$PRMANA(HZM)<2
 N TXT S TXT=": zenk :----------- ziwqr dgex` ----:" D S1
 I $G(PRINT) S PRHEAD(PRINT)=4
 Q
 ;
 ;
MDPCUT(PRINT) ;
 I $$MDPS(PRINT)=6!($$MDPS(PRINT)=8) Q 1
 Q 0
 ;
MDPS(PRINT) ;
 N MDPS,OK S MDPS=6,OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S A=$G(^(N)) D  Q:OK
 .I +$P(A,"\",3)=+PRINT S MDPS=$P(A,"\"),OK=1
 ;;Q $$MDPS^W4MDP(PRINT)
 Q MDPS
 ;
HEADN ;
 D HEADN^W4HZPCHD
 Q
 ;
 ;
HZMDBL(STAM) ;
 Q $$HZMDBL^W4PRM
 ;
CUT(PRINT) ;
 I $G(PRINT) K %MDP D DEFMDP(PRINT)
 N TXT S TXT=$C(10,10,10,10,10)_$G(%MDP("CUT"))_$C(10,10,10) D S2
 Q
 ;
SUGMDP(NP) ;
 Q $$LPSUG^W4PLUK(NP)
 ;
SUGDEV(PRN) ;
 N A S A=$G(@$$^W4DEV@(+PRN,"H"))
 Q $P(A,"\",2)
 ;
 ;
DEFMDP(PRINT) ;
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
DEFMDP1 D DEFMDP1^W4DEFPRN
 Q
 ;
 ;
LINE ; --- HADPASAT PARIT ROSHI / RAGIL
 S ERMDP=0,OK=0,MIN=0,FLAG="",SUMHN=0,PAR=$P(ST,"\")
 S HD0=""
 K SUGTSF,PRTSF,CODP3,N2,N23
 ;
 Q:$E(PAR)?.P
 Q:PAR=""  N PRT
 ;
 ;;K PRHDST
 ;
 N ST0 S ST0=ST
 ;
 S PRMAIN=$P(ST,"\",5)
 ;
 I PAR="0" Q:$$NOPRINT(ST)  D  G EL
 .N MDP,MDP1,PRINT,%MDP
 .S MDP=$P(ST,"\",11)
 .I MDP="",$$NODLVORD^W4PRM S MDP=$$ALLPRN^W4DEFPRN
 .I MDP="",'$$NODLVORD^W4PRM S MDP=0
 .
 .I MDP D  Q
 ..N DBL F DBL=1:1:$L(MDP,"&")  D
 ...Q:'$P(MDP,"&",DBL)
 ...D LINEPRN(MDP) Q:$G(MDP1)=""
 ...I $$QN(ST)<0 D  Q:$G(ERMDP)
 ....I '$G(P1PCBIT) S ERMDP=2 Q
 ....I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ...D PCHD ; --- ???
 ...D PCLP
 .Q  ;
 ;
 I $$NOPRINT(ST) Q
 Q:PAR=""
 ;
 D  ;--> %MDP,ERMDP
 .N PRINT,MDPS S MDP=$$PRINTIG^W3PRMDP(PAR) I MDP="" Q
 .D LINEPRN(MDP) Q:$G(MDP1)=""
 ;
 I $$DD^W4EZA(PAR),$$PRMANA(HZM)=1!($$PRMANA(HZM)=3) S SUMHN=$$SUMHN(HZM,N1) G EL
 ;
 I $P(ST,"\",2)[">",$G(P1HZOP)="BIT1",P1PCBIT'=2 S ERMDP=2
 ;
 I $$QN(ST)<0 D
 .I '$G(P1PCBIT) S ERMDP=2 Q
 .I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ;
 D:'ERMDP DEFPRN(PAR) I ERMDP,ERMDP'=2 Q
 ;
 I ERMDP=2 S SUMHN=$$SUMHN(HZM,N1) G:$G(MDP) EL
 ;
LINEP ;
 I $E($G(MDP))=0,$E($G(MDP),2)'?1N G EL
 I '$D(%MDP)!'$G(PRINT) Q
 Q:ERMDP
 ;
LINEP1 I $$QN(ST)<0 S TXT("R")=1,ADOM=1
 S SUMHN=$$SUMHN(HZM,N1)
 D PCLP
 I $G(PRINT) S FIRSTHD(PRINT)=0
 ;
 I $P($G(@$$^W4ORD@(HZM,N1+1)),"\")="-100%" D
 .N SIBA S SIBA=$P($G(@$$^W4ORD@(HZM,"HNH",N1)),"*",4) Q:SIBA=""
 .N TXT S TXT="[ "_SIBA_" ]" D S1
 ;
EL ;
 I $G(PRINT) K PRHEAD(PRINT)
 I $$SETWASPRINT(REF) Q
 S OK=1
 ;;N RF S RF=$G(@REF) I $$^W4MSD(NMB)!TAWMSL D PLU2
 N RF S RF=$G(@REF) D PLU2
 Q
 ;
 ;
LINEPRN(MDP) ;--> PRINT,%MDP
 D DEFMDP1 Q:MDP1=""
 D HZ^W4MDP(MDP1) ; --> %MDP
 Q
 ;
KAV ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT S TXT=""
 I $$HZPCSP^W4PRM!$D(SPKAV) S TXT=$C(10)
 S TXT=TXT_"  "_$TR($J("",$$WD)," ","-") D S1 ; --- WAS S2 ; 14/06/18
 K SPKAV Q
 ;
KAV1(PRN) ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT
 S TXT=""
 S TXT=TXT_$TR($J("",$$WD)," ","-") S PRKAV=1
 D SETPC(PRN,TXT)
 Q
 ;
 ;
KAV3 ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT
 S TXT=$TR($J("",$$WD)," ",".")
 D S1
 Q
 ;
 ;
PCLP ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) D BONSCR Q
 ;
 N PCLP S PCLP=""
 N NAME2 S NAME2=""
 N NAME3 S NAME3=""
 ;
 N QN S QN=$$QN(ST) I QN=0 Q
 ;
 N CDPAR S CDPAR=$$CODP(ST)
 ;
 S QPAR(PRINT)=$G(QPAR(PRINT))+QN
 ;
 S SHEM=$$NM(ST),HR=$$HRP(ST)
 ;
 N HR0 S HR0=HR
 D DEFMANA(HR)
 ;
 I $$PCHZKV^W4PRM D
 .N KV S KV=$$SUG^W4P(CDPAR)
 .S MANA=MANA_"-"_$TR($J(KV,5)," ",0)
 ;
 I $$LINE^W4PRM D
 .I $$LINE^W4PRM=1 D PCHRKAV Q
 .N SPKAV S SPKAV="" D KAV
 ;
 S TXT=""
 I '$$LINE^W4PRM D
 .I $D(PRSP) K PRSP Q
 .S TXT=$C(10)
 ;
 I $$^W4CDSRV(CDPAR)=11 S QN=" "
 ;
 S TXT=TXT_$$PCCAM(QN) ; -- 2 SMB
 I QN<0 S TXT("R")=""
 ;
 I $$CDNM,CDPAR,$D(@$$^W4GL("PAR")@(CDPAR)),$$SHEM^W4P(CDPAR)'="" D
 .S SHEM=$$SHEM^W4P(CDPAR)
 ;
 I '$$NOPCLOAZ^W4PRM,CDPAR,$D(@$$^W4GL("PAR")@(CDPAR)),$$SHEML^W4P(CDPAR)'="" D
 .S SHEM=$$SHEML(CDPAR)
 ;
 I CDPAR,$D(@$$^W4GL("W4ITDGSH")@(CDPAR)),$D(%MDP("BB")) D  G PCLPHR ; -- ATTN !
 .D KAV^W4HZPCHD
 .S TXT=%MDP("BB")_$S(QN>1:QN_" ",1:"")_$$HBR^%L1FRM(SHEM,$$WD-2\2*$$KFPC)_%MDP("N") D S1
 .D KAV^W4HZPCHD
 ;
 N DL S DL=$$DLPAR
 ;
 I QN[".",$P(QN,".",2)!$$MSK^W4P(CDPAR) S DL=DL-4
 ;
 I '$$BIGNMB!$$NOHZMPAR D  ; -- !!!!!!
 .I '$$NOHZMPAR S DL=DL-2
 .S TXT=TXT_$$NAME(SHEM,QN,DL,"")
 .I '$$NOHZMPAR D
 ..S TXT=TXT_$J($P(ST,"\",2)_" "_$$CODP(ST),5)
 .D S1
 ;
 I $$BIGNMB,'$$NOHZMPAR D
 .S DL=DL-3
 .S TXT=TXT_$$NAME(SHEM,QN,DL,"")
 .S TXT=TXT_" "_$$BIGMDPCD_$J($$CODP(ST),4)_%MDP("N") D S1
 ;
 S ^AA("W4HZMPC-NAME2","DL")=DL
 N DOPDL S DOPDL=$L($$NM2(NAME2))-$L($$NM21(NAME2))+2 ; -- WAS 5
 I $$BIGNAME^W4PRM S DOPDL=DOPDL*2
 ;
 I $L(NAME2) S TXT=$J($$NM2(NAME2),DL+DOPDL) D S1
 I $L(NAME3) S TXT=$J($$NM2(NAME3),DL+DOPDL) D S1
 ;
PCLPHR ;
 N NOSPACE I $$TAWHRLINE S NOSPACE=""
 I HR'?." ",'$D(P1HZOP)!($G(P1HZHB1)="B") D
 .S HR=$$^W4CLRMVC(HR)
 .N HR1 S HR1=$$^W4CLRCMN(HR)
 .S HR1=$$^W4CLRMN(HR1)
 .I $$SPA^%L1FRM(HR1)=";" Q
 .I $$SPA^%L1FRM(HR1)="" Q
 .D PCHR(HR,DLT2H,"<")
 ;
 I '$D(P1HZOP)!($G(P1HZOP)["BIT"),$$QN(ST)<0,$G(P1HZHB1)'="B" D
 .S PRBIT=1
 .I '$$PRMV(HR) S TXT=%MDP("B")_"CANCELED lhea"_%MDP("N") D S1
 ;
 I $P(ST,"\",9)'?.P,'$D(P1HZOP) D
 .S TXT=$$SOADIM($P(ST,"\",9)) D S1
 ;
 I $$TAWHRLINE D
 .S TXT=%MDP("B")_@$$^W4PRM@("TAWHR")_%MDP("N") D S1
 .S TXT="" D S1
 ;
 Q
 ;
 ;
PCHRKAV ;
 N WD S WD=$$WD-1 ; -- 13/06/21 --> -1
 N TX,TXT S TX=$J("",WD)
 I $$USPCMN,$G(MANA) D
 .N MN S MN=$$GETI^W4DEFMN(+MANA)
 .N SP S SP=$J("",(WD-$L(MN))\2)
 .S TX=SP_MN_SP
 ;
 I '$G(@$$^W4PRM@("NORVHKAV")) S TX=$C(10)_TX
 S TXT=$C(27)_"!"_$C(136)_TX D S2
 Q
 ;
USPCMN(STAM) ;
 I $D(@$$^W4PRM@("PCMN",+$P($G(PRINT),"-",2))) Q 1
 Q 0
 ;
BIGMDPCD(STAM) ;
 N B S B=$G(%MDP("B"))
 I $$BIGNMB=2,$L($G(%MDP("BB"))) S B=%MDP("BB")
 Q B
 ;
BIGNMB(STAM)
 Q $G(@$$^W4PRM@("BIGNMB"))
 ;
NOHZMPAR(STAM) ;
 Q $G(@$$^W4PRM@("NOHZMPAR"))
 ;
TAWHRLINE(STAM) ;
 I $$TAW^W4DLPK(NMB)!$$TAKEAWAY^W4HZMST(HZM),'$G(@$$^W4PRM@("TAWHRKOT")),$L($G(@$$^W4PRM@("TAWHR"))) Q 1
 Q 0
 ;
CLMANA(DLM) ;
 Q:'$D(MANA)  N OLDMANA
 S OLDMANA=MANA,MANA=0
 D DEFMANA($P(ST,"\",DLM))
 I MANA,$$PRMANA(HZM) D
 .S $P(ST,"\",DLM)=$$^W4CLRMN($P(ST,"\",DLM))
 I 'MANA S MANA=OLDMANA
 I $$PRMANA(HZM)>1,DLM=8 S MANA=0 ; -- MIUN LEFI TOSAFOT
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
QNT(ST) Q $P(ST,"\",3)
HRT(ST) Q $$CLRHR($P(ST,"\",4))
 ;
CLRHR(HR)
 S HR=$G(HR)
 I HR'["[[" Q HR
 Q $$CLRHR^W4HZTH(HR)
 ;
RAVBR(CD) ;
 I CD?1N.N1"-"1N.N Q 1
 Q 0
 ;
 ;
LINE2 ; --
 S PRMAIN=0
 N P1EZT,II,UR
 S UR=$S($D(N23):3,1:2)
 ;;I $D(N23) S N2=N23 ; *** 24/08/20
 ;
 N HDST S HDST=$P($G(@REF),"\",18)
 ;
 I UR=2,$L(HDST) D
 .I $G(@$$^W4PRM@("NOHDST")) Q
 .N HD S HD=$P(HDST,"^",2)
 .I $L($G(HD0)),HD0=HD Q
 .S HD0=HD
 .N PAR S PAR=$P(@$$W4ORD(HZM)@(N1),"\")
 .D DEFPRN($S($$TSFTIED&'$$DD^W4EZA(PAR):$G(PAR),1:N2))
 .S TXT="" D S1
 .S TXT=$$CENTR^%L1FRM("-- "_HD_" --",$$WD) D S1
 .S PRHDST=1
 ;
 I UR=2,$D(@REF@(1)) Q
 ;
 S NP=NP+1,OK=0,ERMDP=0
 I $$NOPRINT(ST,UR) Q
 ;
 I $G(P1HZOP)="BIT" S ERMDP=2
 ;
 I $$ROLI^W4PRM,$$NMSET(PAR,N2)["cva" S ERMDP=2 G LN2
 ;
 I UR=3,$G(PAR0) S PAR=PAR0
 ;
 I $L($G(PAR)),$$^W4EZAT(PAR) D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .Q:ERMDP
 .I $$DD^W4EZT(PAR)!$G(@$$^W4PRM@("AINIFRAD")) S P1EZT="" ; -- FOR DEFPRN
 .
 .I $$TSFTIED D  Q
 ..I $G(PAR),$$EZT(PAR,N2),$$TSFTIED=1.5 D DEFPRN(PAR) Q
 ..I $G(CODP3) D DEFPRN(N2) Q  ; -- AI
 ..I '$G(CODP3),$G(N23) D DEFPRN(N23) Q  ; -- AI OR ( EZT IF TSFTIED=1 )
 ..D DEFPRN(N2)
 .
 .D DEFPRN(N2)
 ;
 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I UR=3,$G(@$$^W4PRM@("AINIFRAD")),$G(CODP3) S P1EZT=""
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .Q:ERMDP
 .I $G(PAR),$$TSFTIED,'$$DD^W4EZA(PAR) D DEFPRN(PAR) Q  ; *** 8/09/20
 .D DEFPRN(N2)
 ;
LINE21 ;
 I $D(PRINT),'$D(PRINTF1(PRINT)) D  S PRINTF1(PRINT)=1
 .D HEAD3
 ;
 ;--------------------- AI -------------------------
 ;
PT D PCLT ; --- !!!! -- PRINT LINE
 ;
 I '$D(P1HZOP)!($G(P1HZOP)["BIT"),$$QNT(ST)<0,$G(P1HZHB1)'="B" D
 .N HR S HR=$$HRT(ST)
 .I $$PRMV(HR) Q
 .D PCBC("CANCELED lhea")
 ;
 ;
LN2 ;
 I $$SETWASPRINT(REF,UR) Q
 ;
 I UR=3 D SUM3($G(@REF)) G LN21 ; --- LEV 3 ADDONS
 ;
 S COLP=$P($G(@($P(REF,",",1,2+$$PCQN1)_")")),"\",5)
 N RF S RF=$G(@REF) N PAR S PAR=N2
 ;
 D PLU3 S OK=1
 ;
LN21 ;
 Q
 ;
 ;
REDADD(STAM) ;
 Q +$G(@$$^W4PRM@("REDADD"))
 ; 
 ;
PCLT ;
 ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) D BONSCR Q
 ;
 N SUGTSF ; -- 1 - EZT, 2 - EZA , 3 - TSF
 S SUGTSF=3
 I UR=3 S SUGTSF=$G(CODP3) S:'SUGTSF SUGTSF=3 
 ;
 I $G(P1H)=1,$$BIGNAME^W4PRM=2,SUGTSF=3 S TXT="" D S1
 ;
 I SUGTSF<3 D
 .I $$PRMANA(HZM)=1,SUGTSF=1 Q  ; *** 23/05/21 LEV
 .N CMT S CMT=$P(ST,"\",4)
 .N REF1 S REF1=$$W4ORDPC(HZM)_",N1,N2)"
 .N CMT1 S CMT1=$P($G(@REF1),"\",4)
 .I CMT'["I",CMT'["V",CMT'["X",CMT1["I"!(CMT1["V")!(CMT1["X"),CMT1["-" S CMT=CMT1
 .D DEFMANA(CMT)
 .I $$PCHZKV^W4PRM D
 ..N KV S KV=$$SUG^W4P(N2)
 ..S MANA=MANA_"-"_$TR($J(KV,5)," ",0)
 ;
 N PRBASAR S PRBASAR=0
 I $$BASAR(N2) S PRBASAR=1
 N PRLEHEM S PRLEHEM=0
 I $$LEHEM(N2) S PRLEHEM=1
 ;
 N TXT,REDADD
 ;
 I SUGTSF<3 D
 .I $$LINE^W4PRM=2!(SUGTSF=2) D PCHRKAV Q  ; -- SUGTSF=2 (AI) 03/12/25
 .I $D(PRSP) K PRSP Q
 .I SUGTSF=1,$G(@$$^W4PRM@("NOSPACE2")),'PRBASAR,'PRLEHEM Q
 .S TXT="" D S1
 ;
 K PRSP
 S REDADD=$$REDADD
 S TXT=""
 D
 .N QNT,QNSUG S QNT=$$QNT(ST),QNSUG=$$QNPZ^W4PIZZA(QNT)
 .
 .I QNSUG D  Q
 ..N QNPZ S QNPZ=$$QN^W4PIZZA(QNT)
 ..N J I QNSUG=4 D  Q
 ...F J=1:1:4 S TXT=TXT_$E(QNPZ,J)
 ..N J I QNSUG=2 D  Q
 ...F J=1:1:2 S TXT=TXT_%MDP("B")_$E(QNPZ,J)_%MDP("N")_" "
 .
 .I SUGTSF=3,$G(@$$^W4PRM@("NOPCQADD")) S TXT=TXT_"    " Q
 .S TXT=TXT_$$PCCAM($S(QNT="":"",1:+QNT))
 ;
 S HR=$$HRT(ST)
 I HR["<",HR[">" S HR=$P(HR,"<") ; -- LENAKOT SHEM HAMAZMIN
 S HR=$$^W4CLRCMN(HR)
 N HR0 S HR0=HR
 S HR=$$^W4CLRMN(HR)
 S HR=$$SPA^%L1FRM(HR)
 ;
 I $$SBR(HR),$$QNT(ST)=1 S TXT=$J("",5)
 ;
 N DL S DL=$$DEFDLT2
 I $$BIGNMB,'$$NOHZMPAR S DL=DL-4
 I '$$BIGNMB,'$$NOHZMPAR S DL=DL-2
 ;;S ^AA("W4HZMPC","DL",N2)=DL
 ;
 N NAME S NAME=$P(ST,"\") ;;$$HBR^%L1FRM($P(ST,"\"),DL)
 N NAME2 S NAME2=""
 N NAME3 S NAME3=""
 ;
 I $$CDNM,N2,$D(@$$^W4GL("PAR")@(N2)),$$SHEM^W4P(N2)'="" D
 .S NAME=$$SHEM^W4P(N2)
 ;
 I '$$NOPCLOAZ^W4PRM,N2,$D(@$$^W4GL("PAR")@(N2)),$$SHEML^W4P(N2)'="" D
 .N NAME1 S NAME1=$E($$SHEML(N2),1,DL)
 .I $TR(NAME1," ","")'="" S NAME=NAME1
 ;
 S NAME=$$NAME(NAME,$P(ST,"\",3),DL,HR)
 ;
 I '$$BIGNMB!$$NOHZMPAR!(N2["-") D
 .I '$$NOHZMPAR,N2'["-" S TXT=TXT_NAME_" "_$J(N2,4) Q
 .S TXT=TXT_"  "_NAME
 ;
 I $$BIGNMB,'$$NOHZMPAR,N2'["-" D
 .S TXT=TXT_NAME_" "_$$BIGMDPCD_$J(N2,4)_%MDP("N")
 ;
 D S1
 ;
 I $L(NAME2) S TXT=$J("",6)_$$NM2(NAME2) D S1
 I $L(NAME3) S TXT=$J("",6)_$$NM2(NAME3) D S1
 ;
 N NOSPACE
 I HR'?." ",'$$SBR(HR) D
 .I DLT2=$$DLPAR,$$TAWHRLINE S NOSPACE=""
 .D PCHR(HR,DLT2H,"") ; ------- HEARA
 ;
 I $P(ST,"\",6)'?.P D
 .S TXT=$$SOADIM($P(ST,"\",6)) D S1
 .I DLT2=$$DLPAR,$$TAWHRLINE Q
 .S TXT="" D S1
 ;
 I DLT2=$$DLPAR,$$TAWHRLINE D
 .S TXT=%MDP("B")_@$$^W4PRM@("TAWHR")_%MDP("N") D S1
 .S TXT="" D S1
 ;
 I $G(PRBASAR) D
 .N N21 S N21=""
 .I $G(N2V) D
 ..N IND S IND=$O(@VRMHZ@(N2V)) Q:IND=""
 ..S N21=$G(@VRMHZ@(IND))
 .I N21,$$BASAR(N21) Q
 .S TXT="" D S1
 Q
 ;
 ;
NOPCDEL(ST) ;
 I $$QNT(ST)<0,'P1PCBIT Q 1
 I $$QNT(ST)<0,P1PCBIT<1,'$$PRMV($$HRT(ST)) Q 1
 ;;I '$$QNT(ST) Q 1  ; --> COMMENT 14/12/21
 Q 0
 ;
CODTT3(ST) Q $P(ST,"\",4)
NMT3(ST) Q $P(ST,"\",2)
NMTT3(ST) Q $P(ST,"\",5)
MHT3(ST) Q $P(ST,"\",7)
HRT3(ST) Q $P(ST,"\",6)
QNT3(ST) Q $P(ST,"\",3)
 ;
 ;
LINE3 ;
 N N23,REF,DLT2 S N23=N2,DLT2=$$DLTSF
 N ST
 S REF=$$W4ORDPC(HZM)_",N1,N23,N3)",ST=$G(@REF)
 N PAR0 S PAR0=$P($G(@$$W4ORD(HZM)@(N1)),"\")
 I $$CODP(ST)'="" S PAR=$$CODP(ST),COL0=$$QNT3(ST)
 N COL3 S COL3=$$QNT3(ST)
 ;
 I $$NOPRINT(ST,3) Q
 ;
 S CODP3=0
 ;
 I $$CODP(ST)'="" D  S FRPC=1 D LINE2 S:$L($G(MDP)) MDPMAIN1=MDP Q
 .D
 ..I $$TSFTIED=1.5,'$$D^W4EZA(PAR0) D DEFPRN(PAR0) Q  ; -- 12/06/25
 ..D DEFPRN(N23)
 .
 .S MDPMAIN1=""
 .S ST=$$NMT3(ST)_"\"_$$MHT3(ST)_"\"_COL0_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 .D SETHR3
 .S CODP3=$S($$DD^W4EZA(PAR0):2,1:1)
 .Q:'$$^W4EZAT(PAR0)
 .
 .N STT S STT=$G(@$$W4ORD(HZM)@(N1,N23,N3+1)) Q:STT=""
 .I $$CODP(STT)="",$$CODTT3(STT)'="" S DLT2=$$DLPAR ;  - KMO ACMAI
 ;
 ;--- PRINT ADDONS LEV 2
 N N2,PRUR S PRUR=2
 S N2=$$CODTT3(ST)
 ;
 D DEFPRN(N2)
 S ST=$$NMTT3(ST)_"\"_$$MHT3(ST)_"\"_$G(COL3,1)_$$DOP^W4PIZZA($$QNT3(ST))_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 ;
 D SETHR3
 S DLT2=$$DLTSF D LINE2
 Q
 ;
 ;
SETHR3 ;
 N REF2,ST2
 S REF2=$$W4ORDPC(HZM)_",N1,N23)",ST2=$G(@REF)
 I '$$^W4DEFMN($P(ST,"\",6)),$$^W4DEFMN($P(ST2,"\",4)) D
 .S $P(ST,"\",6)=$P(ST2,"\",4)_" "_$P(ST,"\",6)
 Q
 ;
SUM3(ST) ;
 N PAR,COL,PRC,SUM
 I $P(ST,"\") D  Q
 .S PAR=$P(ST,"\")_"-T"
 .S COL=$P(ST,"\",3)
 .S PRC=$P(ST,"\",7)
 .S SUM=COL*PRC
 .D PLT
 ;
 S PAR=$P(ST,"\",4)_"-T"
 S COL=$P(ST,"\",3)
 S PRC=$P(ST,"\",7)
 S SUM=COL*PRC
 D PLT
 Q
 ;
RSDAI ;
 I $D(REF0),$G(@$$^W4PRM@("SD")),$$PRMANA(HZM) D
 .N RSD S RSD=$P($G(@REF0),"\",9) I RSD'?.P D
 ..S TXT=$$SOADIM(RSD) D S1 S TXT="" D S1
 Q
 ;
 ;
BONSCR ;
 N REF1,SHB S REF1=$P(REF,"(")_"("
 N J F J=1:1:$L(REF,",") D
 .N IND S IND=$P(REF,",",J)
 .I IND["(" S IND=$P(IND,"(",2)
 .I IND[")" S IND=$P(IND,")")
 .D
 ..I $E(IND)?1U S IND=""""_$G(@IND)_"""" Q
 ..I $E(IND)'="""" S IND=""""_IND_""""
 .S REF1=REF1_IND_","
 S REF1=$E(REF1,1,$L(REF1)-1)_")"
 ;
 N MANA
 ;
 N CODP
 N IND1,IND2,IND3,IND4
 S IND1=$$^%L1IND(REF1,1)
 S IND2=$$^%L1IND(REF1,2+$$PCQN1)
 S IND3=$$^%L1IND(REF1,3+$$PCQN1)
 S IND4=$$^%L1IND(REF1,4+$$PCQN1)
 ;
 N CODP,CMNT S CODP="",CMNT=""
 ;
 I IND1,IND2 D
 .N ST S ST=$G(@$$W4ORD(IND1)@(IND2))
 .S CODP=$P(ST,"\")
 .S CMNT=$P(ST,"\",8)
 ;
 I IND1,IND2,IND3 D
 .N ST S ST=$G(@$$W4ORD(IND1)@(IND2,IND3))
 .S CMNT=$P(ST,"\",4)
 ;
 I $TR(CODP,".","")'?1N.N Q
 ;
 N STR S STR=$G(@REF1)
 ;
 S MANA=$$^W4DEFMN(CMNT)
 I 'MANA S MANA=$G(OLDMANA)
 I 'MANA S MANA=1
 I $G(PRHDST) S MANA=0 ; -- 24/03/23
 ;
 N KV S KV=$$SUG^W4P(CODP) I KV="" S KV=0
 ;
 I $$PCHZKV^W4PRM,'$G(PRHDST) D
 .S MANA=MANA_"-"_$TR($J(KV,5)," ",0)
 ;
 I $$PRMANA(HZM)=1 D  G EBONSCR
 .S SHB=$O(@TMPBON@(PRINT,MANA,CODP,99999),-1)+1
 .S @TMPBON@(PRINT,MANA,CODP,SHB)=REF1
 ;
 I $$PRMANA(HZM)=2 D  G EBONSCR
 .S SHB=$O(@TMPBON@(PRINT,CODP,MANA,99999),-1)+1
 .S @TMPBON@(PRINT,CODP,MANA,SHB)=REF1
 ;
 I $$PRMANA(HZM)=3 D  G EBONSCR
 .S SHB=$O(@TMPBON@(PRINT,KV,CODP,MANA,99999),-1)+1
 .S @TMPBON@(PRINT,KV,CODP,MANA,SHB)=REF1
 ;
 S SHB=$O(@$$^W4BON@(P1DZ,PRINT,BONTM,HZM,99999),-1)+1
 S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,SHB)=REF1
EBONSCR S OLDMANA=$G(MANA) Q
 ;
BONSCRMSG(MSG) ;
 S SHB=$O(@$$^W4BON@(P1DZ,PRINT,BONTM,HZM,99999),-1)+1
 S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,SHB)="!"_MSG
 Q
 ;
 ;
PLU N DAT,DTHZ
 D ^W4IN
PLU1 N N1,PAR,RF,SSUM,SHNH,PLU1,COLP,SUMHN S SSUM=0,SHNH=0
 ;
 S PLU1="" ;
 D
 .S DTHZ=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 .N TRH S TRH=$$TRH^W4HZMST(HZM) I TRH S DTHZ=$$^%L1DC(TRH,3) I $$SHAA^W4HZMST(HZM)<$$SHAAZ^W4PRM S DTHZ=DTHZ-1
 .I 'DTHZ S DTHZ=P1DZ
 ;
PLU11 S DAT=$ZD(DTHZ,"YYMMDD")
 ;
 I $$^W4HZMH(HZM) Q
 I $$I^W4PIZUL(HZM) Q
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N1)) Q:N1=""  I N1 D
 .S PAR=$P(@$$^W4ORD@(HZM,N1),"\") Q:'$L(PAR)  S RF=^(N1)
 .S SUMHN=$$SUMHN(HZM,N1) D PLU2 S SUMHN=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N1,N)) Q:N=""  I N D
 ..S RF=$G(^(N)),PAR=N I $D(@$$^W4ORD@(HZM,N1,N))<9 D PLU3 Q
 ..N N3 S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N,N3)) Q:N3=""  I N3 D SUM3($G(^(N3)))
 ;
 Q
 ;
 ;
PLU2 ;
 ;--- INPUT : HZM,RF,PAR,N1
 N COL,PRC,SUM,ST,SUG,N,MIN
 S SUG=$P(RF,"\",2),COL=$P(RF,"\",5),PRC=$P(RF,"\",4),SUM=$J(PRC*COL,2,2)
 S MIN=$$EX2KITCH^W4HZMST(HZM,N1)
 ;
 S COLP=COL D PLT
 ;
 I $G(HZM),$G(N1),'$D(@$$^W4ORD@(HZM,"ST",N1)) D
 .N MLZL,MLZBG S MLZL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .S MLZBG=$$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"MKBL")
 .I (MLZBG&$$MLZBGPAR^W4PRM)!(MLZL="") S MLZL=MLZBG
 .Q:MLZL=""  Q:PAR=""
 .N DV S DV=$$^W4MYDVN
 .S @$$^W4ORD@(HZM,"ST",N1)=MLZL_"\"_$$^%L1TM($P($H,",",2))_"\"_DV_"\JB="_$G(JB)_"\"_$H
 Q
 ;
 ;
PLU3 ;
 ;--- INPUT : RF,PAR,COLP
 N ST0,COL,PRC,SUM,PARO,SUMHN,MIN
 S ST0=$P(RF,"\",2,25)
 S PRC=$P(ST0,"\")
 ;
 S COL=+$P(ST0,"\",2) S SUM=PRC*COL
 ;
 S PARO=PAR,PAR=PAR_"-T"
 D PLT S PAR=PARO
 ;
 Q
 ;
 ;
PLT ;
 ;-- INPUT: PAR,COL,SSUM,SHNH,DAT,MRK,HZM,P1DZ,N1
 ;
 I $G(DBL) Q
 ;
 I '$D(MRK) D MRK^W4IN
 ;
 N ST,SHAA Q:PAR["%"  Q:PAR=""
 I '$G(DAT) S DAT=$$^%L1DC(P1DZ,2)
 ;
 I PAR?1":"1N.N,$G(@$$^W4PRM@("MM"))!$G(@$$^W4PRM@("MMZZ")) D  Q
 .S @$$^W4GL("P1MLZ")@(HZM)=$E(PAR,2,4)
 ;
 D
 .L +@$$^W4GL("P1MLZ")@(HZM):1
 .N MLZL S MLZL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .N IND1 S IND1=N1 ;; $$IND(N1) ; -- 17.02.23
 .I $G(HZM),$G(IND1),$D(@$$^W4ORD@(HZM,"ST",IND1))#2 S MLZL=$P(^(IND1),"\")
 .I MLZL="" S MLZL=$$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"MKBL")
 .Q:MLZL=""  Q:PAR=""
 .S ST=$G(@$$^W4GL("P1MLZ")@(HZM,MLZL,PAR))
 .D SUMST
 .S @$$^W4GL("P1MLZ")@(HZM,MLZL,PAR)=ST
 .L -@$$^W4GL("P1MLZ")@(HZM)
 ;
 I $$HZM^W4MSL(HZM),'$D(PLU1),'$D(W4MLREST) Q
 ;
 L +@$$^W4GL("PLUTOT")@(DAT,MRK,PAR):1
 L +@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR):1
 ;
 S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) D SUMST
 S SSUM=$G(SSUM)+SUM,SHNH=$G(SHNH)+$G(SUMHN)
 S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR)=ST
 S @$$^W4GL("PLUTOTI")@(PAR,MRK,DAT)=""
 S ST=$G(@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)) D SUMST
 S @$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)=ST
 ;
 D
 .D SHAA
 .S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)) D SUMST
 .S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)=ST
 .;
 .I $G(W4MLREST)'="C" D
 ..I $$MLY^W4PLUK,'$$NEWMLY^W3PRM,'$G(MIN) D
 ...D ^W4MLY(MRK,DAT,PAR,COL,$J($S('COL:SUM,1:SUM/COL),2,2),$G(SUMHN))
 ..;
 ..I $$NEWMLY^W3PRM,'$G(MIN) D
 ...D SETMLY^W4SETMLY(2,DTHZ,$$^W4PK(PAR),"O",$S('$G(LKHN):0,1:LKHN),"ORD",HZM,COL)
 .
 .
 .I $G(NMB),$D(@$$^W4GL("P1ARZ")@(PAR)),$$SUGL1^W4L(NMB)="TAW"!$$^W4MSL(NMB),$G(W4MLREST)'="C" D
 ..N ARIZA
 ..S ARIZA=$P(@$$^W4GL("P1ARZ")@(PAR),"\",3) Q:ARIZA=""
 ..S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,ARIZA,SHAA)) D SUMST
 ..S @$$^W4GL("PLUTOT")@(DAT,MRK,ARIZA,SHAA)=ST
 ..I $$MLY^W4PLUK,'$$NEWMLY^W3PRM,'$G(MIN) D
 ...D ^W4MLY(MRK,DAT,ARIZA,COL,$J(0,2,2),"")
 ..I $$NEWMLY^W3PRM,'$G(MIN) D
 ...D SETMLY^W4SETMLY(2,DTHZ,ARIZA,"O",$S('$G(LKHN):0,1:LKHN),"ORD",HZM,COL)
 ;
 L -@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)
 L -@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)
 Q
 ;
 ;
SHAA ;
 I $$MSL^W4HZMST(HZM) S SHAA=$$SHAA^W4HZMST(HZM) G ESHAA
 S SHAA=""
 N IND1 S IND1=N1 ;;$$IND(N1)
 I $G(HZM),$G(IND1),$G(@$$^W4ORD@(HZM,"ST",IND1)) S SHAA=$P(^(IND1),"\",2)
 I SHAA=""!$$^W4PPG("") D
 .S SHAA=$TR($P($$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"ZMANK"),"  ",2)," ","")
 S:SHAA="" SHAA=$$T^%L1TIME($P($H,",",2))
ESHAA S SHAA=+$TR(SHAA," ","")
 Q
 ;
 ;
DEFPRN(PRT) ;
 D ^W4DEFPRN(HZM,PRT)
 Q
 ;
 ;
PCHD ;
 I '$D(PRINTF(PRINT))!($$NIFRAD^W4MDP(MDP1)&$G(PRMAIN))!($G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT)),'$G(ERMDP)!($G(P1HZOP)="BIT") D
 .I $G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT),'$G(@$$^W4PRM@("MANATL")) D
 ..D CUT(PRINT) ; ----- LO HEADN ??
 .D BEEP
 .D HEAD,HEAD1
 .S PRINTF(PRINT)=1
 Q
 ;
 ;
SUMST ;
 S $P(ST,"*",1)=$P(ST,"*",1)+COL
 S $P(ST,"*",2)=$P(ST,"*",2)+SUM
 S $P(ST,"*",3)=PRC
 S $P(ST,"*",4)=$P(ST,"*",4)+$G(SUMHN)
 I COL<0 D
 .I $G(MIN) D
 ..S $P(ST,"*",5)=$P(ST,"*",5)+COL
 ..S $P(ST,"*",7)=$P(ST,"*",7)+SUM
 .I '$G(MIN) D
 ..S $P(ST,"*",6)=$P(ST,"*",6)+COL
 ..S $P(ST,"*",8)=$P(ST,"*",8)+SUM
 Q
 ;
SUMHN(HZM,NN) ;
 N SUMHN,A S SUMHN=0
 F NN=NN+1:1 Q:'$D(@$$^W4ORD@(HZM,NN))  S A=^(NN) Q:$P(A,"\")'["%"  D
 .S SUMHN=$G(SUMHN)-$P(A,"\",7)
 Q SUMHN
 ;
DEFMANA(CMT) ;
 S MANA=$$^W4DEFMN(CMT)
 I $G(PRHDST) S MANA=0
 Q
 ;
 ;
PC1 N N,PRN,CHP,CHP0,%MDP,CUTPRG,PRTSF,PRCHP,PCCHP
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .;;M ^PC1(PRN)=@$$^W4PC1@(PRN) ; *** 30.10.24
 .L +@$$^W4PC@(PRN):1 S PRCHP=0,PRKAV=1 ;
 .S CHP="",CHP0="",ICHP=0
 .F  S CHP=$O(@$$^W4PC1@(PRN,CHP)) Q:CHP=""  D  S CHP0=CHP
 ..K FLMN I CHP>0,+CHP'=+$G(CHP0) I $$CHLD(PRN,CHP) D PCCHP(PRN,CHP) S PRCHP=1,PCCHP(PRN)=""
 ..S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,CHP,NOM)) Q:NOM=""  D
 ...S N="" F  S N=$O(@$$^W4PC1@(PRN,CHP,NOM,N)) Q:N=""  S TXT=$G(^(N)) I $L(TXT) D
 ....D SETPC(PRN,TXT)
 ....S PRCHP=0,PRKAV=0
 .L -@$$^W4PC@(PRN)
 ;
 K @$$^W4PC1
 Q
 ;
 ;
PC2 N N,PRN,CHP,CHP0,%MDP,CUTPRG,NOM,TXT,PRCHP,PCCHP
 ;
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .S PRCHP=0,PRCHP1=0
 .L +@$$^W4PC@(PRN):1 S PRKAV=1
 .S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,NOM)) Q:NOM=""  D
 ..K FLMN D
 ...D DEFMDP(PRN)
 ...N PRINT,pc S PRINT=PRN
 ..;
 ..N PRCHP1 S PRCHP1=0
 ..S CHP="" F  S CHP=$O(@$$^W4PC1@(PRN,NOM,CHP)) Q:CHP=""  D  S CHP0=CHP
 ...I CHP,$$CHILD(PRN,NOM,CHP) I +CHP'=+$G(CHP0) D PCSET(PRN,CHP,NOM) S PRCHP=1,PCCHP(PRN)="",PRCHP1=1
 ...S N="" F  S N=$O(@$$^W4PC1@(PRN,NOM,CHP,N)) Q:N=""  S TXT=$G(^(N)) D
 ....I $$HZPCSP^W4PRM D SETPC(PRN,"")
 ....D SETPC(PRN,TXT) S PRKAV=0
 ..I PRCHP1 D SETPC(PRN,$TR($J("",$$WD-3)," ","-")) S PRCHP1=0
 .
 .L -@$$^W4PC@(PRN)
 .
 K @$$^W4PC1
 Q
 ;
 ;
PC3 N N,PRN,CHP,CHP0,%MDP,CUTPRG,NOM,TXT,KV,PRCHP,PCCHP
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .S PRCHP=0
 .L +@$$^W4PC@(PRN):1 S PRKAV=1
 .S KV="" F  S KV=$O(@$$^W4PC1@(PRN,KV)) Q:KV=""  D
 ..S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,KV,NOM)) Q:NOM=""  D
 ...K FLMN D
 ....D DEFMDP(PRN)
 ....N PRINT,pc S PRINT=PRN
 ...;
 ...S CHP="" F ICHP=1:1 S CHP=$O(@$$^W4PC1@(PRN,KV,NOM,CHP)) Q:CHP=""  D
 ....I CHP,$$CHILD3(PRN,KV,NOM,CHP) D PCCHP(PRN,CHP) S PRCHP=1,PCCHP(PRN)=""
 ....S N="" F  S N=$O(@$$^W4PC1@(PRN,KV,NOM,CHP,N)) Q:N=""  S TXT=$G(^(N)) D
 .....I $$HZPCSP^W4PRM D SETPC(PRN,"")
 .....D SETPC(PRN,TXT) S PRKAV=0
 ..
 ..;;I $$LINE^W4PRM,'PRKAV D KAV1(PRN) ; -- 26.08
 .L -@$$^W4PC@(PRN)
 ;
 K @$$^W4PC1
 Q
 ;
 ;
IFMDP(ST) ;
 N OK S OK=0
 N N S N="" F  S N=$O(%MDP(N)) Q:N=""  I ST=%MDP(N) S OK=1 Q
 I ST=($C(27)_"p"_$C(1)_$C(64)_$C(255)) S OK=1
 Q OK
 ;
 ;
CHLD(PRN,CHP) ;
 I $D(@$$^W4PC1@(PRN,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,CHP,NN)) Q:NN=""  D
 .N NN1 S NN1="" F  S NN1=$O(@$$^W4PC1@(PRN,CHP,NN,NN1)) Q:NN1=""  D
 ..N ST S ST=$G(^(NN1))
 ..I ST'?.P,'$$IFMDP(ST) S OK=1
 Q OK
 ;
 ;
CHILD(PRN,NOM,CHP) ;
 I $D(@$$^W4PC1@(PRN,NOM,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,NOM,CHP,NN)) Q:NN=""  D
 .N ST S ST=$G(^(NN))
 .I ST'?.P,'$$IFMDP(ST) S OK=1
 Q OK
 ;
CHILD3(PRN,KV,NOM,CHP) ;
 I $D(@$$^W4PC1@(PRN,KV,NOM,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,KV,NOM,CHP,NN)) Q:NN=""  D
 .N ST S ST=$G(^(NN))
 .I ST'?.P,'$$IFMDP(ST) S OK=1
 Q OK
 ;
PMANA(CHP) ;
 I $G(PRHDST) Q 0
 I $G(CHP)="" Q ""
 S CHP=+CHP
 N TXT,FMANA S TXT="",FMANA=""
 I CHP>0,CHP<13 S FMANA=$$FMANA(CHP)
 I CHP="T" S TXT=$$FMANA1("zetqez")
 I $L(FMANA) S TXT=%MDP("B")_FMANA_%MDP("N")
 Q TXT
 ;
FMANA(CHP) ;
 I $G(PRHDST) Q ""
 S CHP=+$G(CHP)
 N MANA S MANA=$$GETI^W4DEFMN(CHP)
 S MANA=$E(MANA,2,$L(MANA)-1)
 I $G(PRHDST) S MANA=0
 Q $$FMANA1(MANA)
 ;
FMANA1(MANA)
 I $G(PRHDST) Q ""
 N LN S LN=26 I $$OLDPC S LN=19
 N KAV S KAV=$TR($J("",(LN-$L(MANA)-2)\2*$$KFPC)," ","-")
 Q KAV_" "_MANA_" "_KAV
 ;
PCCHP(PRN,CHP,GL) ;
 I CHP["T",$$NOROMA^W4PRM Q
 I $G(PRHDST) Q
 D DEFMDP(PRN)
 ;
 ;;Q:$G(CHP0(PRN))'?1N.N  Q:CHP0(PRN)'<CHP
 N PRINT,pc S PRINT=PRN
 ;
 I $G(@$$^W4PRM@("MANATL")),$D(PCCHP(PRN)) D
 .N pc s pc="" D HEADN
 .K PRINTF(PRINT)
 .N pc S pc="" D HEAD,HEAD1 S FLMN(PRN)=""
 .S PRINTF(PRINT)=1
 ;
 N PMANA S PMANA=$$PMANA(CHP)
 N SMB S SMB=$C(10) ;; "" -- 18.03.21
 N TXT S TXT=SMB_$J("",SM)_PMANA
 ;
 I '$G(@$$^W4PRM@("MANABLKV")),PMANA'?.P D SETPC(PRN,TXT)
 Q
 ;
 ;
PCSET(PRN,CHP,NOM) ;
 I $G(PRHDST) Q
 D ^%L1TS
 D DEFMDP(PRN)
 ;
 N PRINT,pc S PRINT=PRN
 ;
 I $G(@$$^W4PRM@("MANATL")),$D(PCCHP(PRN)) D
 .N pc s pc="" D HEADN
 .K PRINTF(PRINT)
 .N pc S pc="" D HEAD,HEAD1 S FLMN(PRN)=""
 .S PRINTF(PRINT)=1
 ;
 N CD S CD=$P(@$$W4ORD(HZM)@(NOM),"\") Q:'CD
 N GLEZ S GLEZ=$$REF^W4EZAT(CD) I GLEZ="" Q
 N OK S OK=0
 N SET S SET="" F  S SET=$O(@GLEZ@(SET)) Q:SET=""  I +$G(^(SET))=+CHP S OK=1 Q
 Q:'OK  Q:SET=""
 N NS S NS=$E(SET,2,10)
 N PMANA S PMANA=$P($G(@$$GLSET(HZM)@(NS)),"\")
 N LKAV S LKAV=($$WD-$L(PMANA))\2-2
 N KAV S KAV=$TR($J("",LKAV)," ","-")
 N TXT S TXT=$C(10)_KAV_" "_$TR(PMANA,TS0,TSS)_" "_KAV ;;_$C(10)
 ;
 I '$G(@$$^W4PRM@("MANABLKV")),PMANA'?.P D SETPC(PRN,TXT)
 Q
 ;
QNPIZZA(C) ;
 Q $$QNPZ^W4PIZZA(C)
 ;
PCCAM(C) ;
 N CM S CM=$S('$G(@$$^W4PRM@("SCANER"))!'$P(C,".",2):$J(C,2),1:$J(C,3,3))
 ;
 N B S B=$$B
 I $L($P(CM,".",2)),$P(CM,".",2) Q B_$J(CM,6,3)_$G(%MDP("N"))_" "  ; -- 21/07/26 --> COMMENT
 ;
 I '$P(CM,".",2) D
 .S CM=$P(CM,".")
 .I +$TR(CM," ","")=1,$$NOQ1^W4PRM S CM="  "
 Q B_CM_$G(%MDP("N"))_" "
 ;
 ;
NAME(TXT,C,DL,HR) ;
 N PRTSF S PRTSF=0
 ;
 N B S B=$$B
 ;
 I B="" S DL=DL*2
 ;
 S TXT=$$SPA^%L1FRM(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"()","")
 S TXT=$$RPL^%L1FRM(TXT,")(","")
 S TXT=$$RPL^%L1FRM(TXT,"[]","")
 ;
 N ENG I $TR(TXT," ","")?.E3U.E!($TR(TXT," ","")?.U1N.N.U.N),$$SHEML^W4PRM,'$$NOPCLOAZ^W4PRM S ENG=1
 E  S ENG=0
 ;
 S HR=$$^W4CLRMN(HR)
 S HR=$$^W4CLRCMN(HR)
 ;
 I $G(PRBASAR) D
 .S TXT=$G(%MDP("B"))_TXT_$G(%MDP("N")),DL=DL-$S($L(TXT)>10:6,1:-2)
 ;
 I $G(PRLEHEM) D
 .S TXT=$C(27,45,2)_TXT_$C(27,45,0),DL=DL+6
 ;
 I $$SBR(HR),ENG S TXT=$$SPA^%L1FRM(HR)_" "_TXT
 I $$SBR(HR),'ENG S TXT=TXT_" "_$$SPA^%L1FRM(HR)
 ;
 N SMBT S SMBT="+"
 I $G(@$$^W4PRM@("SMBT"))'="" S SMBT=^("SMBT")
 ;
 I C>1,'ENG,$$B="",'$G(@$$^W4PRM@("NMBLIKAV")) D  Q TXT
 .S TXT=" <-"_$TR($J("",DL-4-$L(TXT))," ","-")_" "_TXT
 ;
 I $G(SUGTSF)=3 S TXT=TXT_SMBT
 I $G(SUGTSF)=1,$$TSFTIED=1.5 S TXT=TXT_SMBT
 ;
 D DLG^%L1FRM(TXT,DL)
 ;
 I 'ENG D
 .S TXT=$J(%CHAST(1,1),DL)
 .I $L($G(%CHAST(1,2))) S NAME2=%CHAST(1,2)
 .I $L($G(%CHAST(1,3))) S NAME3=%CHAST(1,3)
 ;
 I ENG D
 .N CH1,CH2,CH3 S CH1=$$SPA^%L1FRM($G(%CHAST(1,1)))
 .S CH2=$$SPA^%L1FRM($G(%CHAST(1,2)))
 .S CH3=$$SPA^%L1FRM($G(%CHAST(1,3)))
 .I $L(CH3) D  Q
 ..S TXT=CH3_$J("",DL-$L(CH3)),NAME2=CH2,NAME3=CH1
 .I $L(CH2) D
 ..S TXT=CH2_$J("",DL-$L(CH2)),NAME2=CH1
 ;
 N B S B=$$B
 S TXT=B_TXT_%MDP("N")
 Q TXT
 ;
 ;
NM2(TXT) ;
 N B S B=$$B
 ;
 S TXT=$$NM21(TXT)
 N ENG I $TR(TXT," ","")?.E3U.E!($TR(TXT," ","")?.U1N.N.U.N),$$SHEML^W4PRM,'$$NOPCLOAZ^W4PRM S ENG=1
 E  S ENG=0
 ;
 S TXT=B_TXT_%MDP("N")
 Q TXT
 ;
 ;
NM21(TXT) ;
 S TXT=$$SPA^%L1FRM(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"()","")
 S TXT=$$RPL^%L1FRM(TXT,")(","")
 S TXT=$$RPL^%L1FRM(TXT,"[]","")
 Q TXT
 ;
B(STAM) ;
 N B S B=""
 I $$BIGNAME^W4PRM,'$G(SUGTSF) S B=$S($$BIGNAME^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=1 S:$$BIGNMEZT^W4PRM B=$S($$BIGNMEZT^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=2 S:$$BIGNMEZA^W4PRM B=$S($$BIGNMEZA^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=3 S:$$BIGNMEZI^W4PRM B=$S($$BIGNMEZI^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 Q B
 ;
SHEML(CD) ;
 N SHEML S SHEML=""
 I '$$NOPCLOAZ^W4PRM S SHEML=$$SHEML^W4P(CD)
 I $L(SHEML) Q $S($P(CD,"-",2):$G(@$$^W4GL("P1SBR")@($P(CD,"-",2)))_" ",1:"")_SHEML
 Q $$SHEM^W4P(CD)_$S($P(CD,"-",2):" "_$G(@$$^W4GL("P1SBR")@($P(CD,"-",2))),1:"")
 ;
 ;
SBR(HR) ;
 S HR=$$^W4CLRMN(HR)
 S HR=$TR(HR,";"," ")
 S HR=$$SPA^%L1FRM(HR)
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  I $$SPA^%L1FRM(^(N))=HR S OK=1 Q
 Q OK
 ;
 ;
MYDEV(STAM) ;
 Q $$^W4MYDVN
 ;
 ;
PCHR(HR,DLT2H,PR) ;
 N J,TXT,TXT0,PRMV,HRAV
 N PRMV,HRAV S PRMV=0,HRAV=""
 ;
 D PREPHR(HR)
 ;
 N HEB S HEB=$$HEB(HR)
 ;
 ;;M ^AA("W4HZMPC","CHAST")=%CHAST
 ;
 I HEB F J=1:1 Q:'$D(%CHAST(1,J))  D
 .N ST S ST=%CHAST(1,J)
 .D
 ..I $$HRSP^W4HZPCFN S ST=$$SP(ST) Q
 ..S ST=$G(%MDP("B"))_ST
 .S TXT=$S(J=1:$C(10),1:"")_ST_%MDP("N") D S1
 ;
 I 'HEB F J=$O(%CHAST(1,99),-1):-1:1 D
 .I J=$O(%CHAST(1,99),-1) S TXT="" D S1 S PRSP=""
 .N ST S ST=$G(%MDP("B"))_%CHAST(1,J) I $$HRSP^W4HZPCFN S ST=$$SP(ST)
 .S TXT=ST_%MDP("N") D S1
 ;
 I $L($G(HRAV)) S TXT=HRAV D S1
 Q
 ;
 ;
HEB(HR) ;
 Q $$HEB^W4HZPCFN(HR)
 ;
SP(TX)
 Q $$SP^W4HZPCFN(TX)
 ;
FBAR(PRT) ;
 N MDP S MDP=$$PRINTIG^W3PRMDP(PRT)
 I MDP'?1N.N.E Q 0
 I $$PRINT1^W4P(PRT)["xa" Q 1
 Q 0
 ;
 ;
 ;
NOPRINT(ST,UR) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@"&'$D(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@!"  Q 1
 I $G(P1HZMET("ETEK"))=2 Q 0
 I NOMOD["@@@"&$G(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@@"&$D(P1HZMET("ETEK"))&'$G(DBL) Q 1
 I NOMOD["@@+"&$G(DBL)&'$G(P1HZMET) Q 1
 I NOMOD["@@@+" Q 1
 Q 0
 ;
 ;
SETWASPRINT(REF,UR) ;
 ;
 N REFC S REFC=$G(@REF)
 N SMB S SMB=$$SMB(REFC)
 S UR=$G(UR)
 ;
 I $G(P1HZMET),'$G(DBL),$$NOMOD(REFC)["@@@" Q 1
 ;
 I $G(P1HZMET),'$D(P1HZMET("SHZM")),$$NOMOD(REFC,UR)'["@@!" D
 .D SETNOMOD(REF,"@@@"_SMB,UR)
 ;
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@" D SETNOMOD(REF,"@@+",UR)
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@@" D SETNOMOD(REF,"@@@+",UR)
 ;;W "REF="_REF_"  @REF="_@REF,!
 I $$NOMOD(REFC,UR)["@@" Q 1
 ;
 D SETNOMOD(REF,"@@"_$S($G(P1HZOP):"@",1:""),UR)
 Q 0
 ;
 ;
 ;
PRMANA(HZM) ;
 Q $$PRMANA^W4HZPCFN(HZM)
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
BEEP ;
 N TXT S TXT=$G(%MDP("BEEP")) D S2
 Q
 ;
LINETL(STAM) ;
 Q $G(@$$^W4PRM@("LINETL"))
 ;
 ;
BBNAME(STAM) ; 
 I $D(PCLP),$G(@$$^W4PRM@("BIGNAME"))=1 Q 1
 Q 0
 ;
DEFDLT2(STAM)
 N DLT2 S DLT2=$$DLTSF
 D
 .N PAR S PAR=$P($G(@$$W4ORD(HZM)@(N1)),"\") I PAR="" Q
 .I $$DD^W4EZA(PAR),$$PRMANA(HZM)=1 S DLT2=$$DLPAR Q
 ;
 Q DLT2
 ;
 ;
SOADIM(VL) ;
 Q $J(VL_" : micreq",$$WD)
 ;
NMSET(PAR,N2) ; 
 N NM S NM="" I $G(PAR)="" Q ""
 ;;S ^AA(HZM,"PAR")=PAR
 ;;S ^AA(HZM,"N2")=N2
 N GL S GL=$$REF^W4EZAT(PAR) I GL="" Q ""
 N SET,NSET S SET="" F  S SET=$O(@GL@(SET)) Q:SET=""  D
 .S NSET=$E(SET,2,20)
 .I $D(@$$GLSET(HZM)@(NSET,N2)) S NM=$P($G(@$$GLSET(HZM)@(NSET)),"\")
 Q NM 
 ;
S1 ; 
 D S1^W4HZPCFN
 Q 
 ;
S2 ; 
 D S2^W4HZPCFN
 Q 
 ;
WD(STAM) Q 39
 ; 
SETPC(PRINT,TXT) ;
 D SETPC^W4HZPCFN($G(PRINT),$G(TXT))
 Q 
 ;
OLDPC(STAM) ;
 Q $$OLDPC^W4HZPCFN
 ;
NEWPC(STAM)
 Q '$$OLDPC^W4PRM
 ;
PCBC(TX,BB)
 D PCBC^W4HZPCFN($G(TX),$G(BB))
 Q 
 ; 
KFPC(STAM) ;
 Q $$KFPC^W4HZPCFN
 ;
PRMV(HR) ;
 Q $$PRMV^W4HZPCFN(HR)
 ;
ATTN(STAM) ; 
 Q $$ATTN^W4HZPCFN(HR)  
 ;
PREPHR(HR) ;
 D PREPHR^W4HZPCFN(HR)
 Q 
 ;
TSFTIED(STAM) ; 
 Q $G(@$$^W4PRM@("TSFTIED")) 
 ;
 ;
CLRSMB ;
 N A,A1,A2,A3,BGBON,N1,N2 S BGBON=0
 ;
 I $G(P1HZMET("ETEK"))="LAST" D
 .N LAST,TIME,TIME1 S LAST=9999
 .S N2=$O(@$$^W4ORD@(HZM,"ST",LAST),-1) Q:N2=""  Q:BGBON
 .S TIME=$P($G(@$$^W4ORD@(HZM,"ST",N2)),"\",2)
 .S TIME=$TR(TIME," ","")
 .
 .I '$D(@$$^W4ORD@(HZM,"ST")) D COMPBG(HZM)
 .
 .I $D(@$$^W4ORD@(HZM,"ST"))>9 D
 ..F  S N2=$O(@$$^W4ORD@(HZM,"ST",N2),-1) Q:N2=""  D  Q:BGBON
 ...S TIME1=$P($G(@$$^W4ORD@(HZM,"ST",N2)),"\",2)
 ...S TIME1=$TR(TIME1," ","")
 ...I TIME1'=TIME S BGBON=1 Q
 ...S BG=N2
 ;
 I $G(P1HZMET),$D(P1HZMET("DBL")) S BG=+P1HZMET+1
 ;
 F N1=BG:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .S A1=$G(@$$^W4ORD@(HZM,N1))
 .N SMB S SMB=$$SMB(A1) I SMB="+" S SMB=""
 .
 .I $$NOMOD(A1)["@@" D
 ..N NOMOD S NOMOD=$$NOMOD(A1)
 ..I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1)","@@"_SMB)
 ..I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1)",$TR(NOMOD,"+",""))
 .
 .N N2 S N2="" F J2=1:1 S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ..S A2=$G(^(N2))
 ..S SMB=$$SMB(A2) I SMB="+" S SMB=""
 ..I $$NOMOD(A2)["@@" D
 ...N NOMOD S NOMOD=$$NOMOD(A2)
 ...I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1,N2)","@@"_SMB)
 ...I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1,N2)",$TR(NOMOD,"+",""))
 ..
 ..N N3 S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ...S A3=$G(^(N3))
 ...S SMB=$$SMB(A3) I SMB="+" S SMB=""
 ...I $$NOMOD(A3)["@@" D
 ....N NOMOD S NOMOD=$$NOMOD(A3)
 ....I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1,N2,N3)","@@"_SMB)
 ....I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1,N2,N3)",$TR(NOMOD,"+",""))
 Q
 ;
 ;
EZT(PAR,CDT) ; 
 N OK S OK=0
 I $G(PAR)="" Q 0
 I $G(CDT)="" Q 0
 ;;I $G(PRHDST) Q 0; -- 27/05/25 --> COMMENT
 I $$DD^W4EZT(PAR) Q 1 
 Q 0
 ;
PRNST(N) ;
 N ST S ST=$G(@$$W4ORD(HZM)@(N))
 I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")),$$NOMOD(ST)["@@" Q 0
 Q 1
 ;
CDNM(STAM) ; 
 I $$^W6,$$NOPCLOAZ^W4PRM Q 1
 Q $$CDNM^W4MDBPC 
 ;
 ;
BON2BON(HZM,PRINT,BONTM) ;
 N MN,KV,CODP,SHB
 ;
 S K=0
 ;;M @$$^W4MAIN("TMPBON0")=@TMPBON
 ;
 I $$PRMANA(HZM)=1 D
 .S MN="" F  S MN=$O(@TMPBON@(PRINT,MN)) Q:MN=""  D
 ..I MN D
 ...S K=K+1
 ...N KAV S KAV=$TR($J("",12)," ","-")
 ...I $$BONNEW^W4PRM S KAV=""
 ...N MSG S MSG=KAV_" "_$$GETI^W4DEFMN(MN)_" "_KAV
 ...S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)="!"_MSG
 ..S CODP="" F  S CODP=$O(@TMPBON@(PRINT,MN,CODP)) Q:CODP=""  D
 ...S SHB="" F  S SHB=$O(@TMPBON@(PRINT,MN,CODP,SHB)) Q:SHB=""  D
 ....S K=K+1
 ....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)=$G(@TMPBON@(PRINT,MN,CODP,SHB))
 ;
 ;
 I $$PRMANA(HZM)=2 D
 .S CODP="" F  S CODP=$O(@TMPBON@(PRINT,CODP)) Q:CODP=""  D
 ..S MN="" F  S MN=$O(@TMPBON@(PRINT,CODP,MN)) Q:MN=""  D
 ...S MSG=""
 ...I $$^W4EZAT(CODP) D
 ....N GL S GL=$S($$DD^W4EZT(CODP):"P1EZT",1:"P1EZA")
 ....S K=K+1
 ....N J,N,OK S OK="" 
 ....S N="" F  S N=$O(@$$^W4GL(GL)@(CODP,N)) Q:N=""  D  Q:$L(OK)
 .....I MN=$G(^(N)) S OK=N 
 ....Q:'$L(OK)
 ....N NS S NS=""
 ....S:$E(OK)="A" NS=$E(OK,2,7)
 ....Q:'NS
 ....N NMSET S NMSET=$P($G(@$$GLSET(HZM)@(NS)),"\")
 ....N KAV S KAV=" ---- "
 ....I $$BONNEW^W4PRM S KAV=""  
 ....S MSG=KAV_$$HBR^%L1FRM(NMSET,32)_KAV
 ...
 ...S SHB="" F  S SHB=$O(@TMPBON@(PRINT,CODP,MN,SHB)) Q:SHB=""  D
 ....N RF S RF=$G(^(SHB))
 ....I $L(RF),$L(MSG),MN,'$$AI^W4BONNEW(RF) D
 .....S K=K+1
 .....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)="!"_MSG S MSG=""
 ....
 ....S K=K+1
 ....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)=$G(@TMPBON@(PRINT,CODP,MN,SHB))
 ;
 I $$PRMANA(HZM)=3 D
 .S KV="" F  S KV=$O(@TMPBON@(PRINT,KV)) Q:KV=""  D
 ..S CODP="" F  S CODP=$O(@TMPBON@(PRINT,KV,CODP)) Q:CODP=""  D
 ...S MN="" F  S MN=$O(@TMPBON@(PRINT,KV,CODP,MN)) Q:MN=""  D
 ....S SHB="" F  S SHB=$O(@TMPBON@(PRINT,KV,CODP,MN,SHB)) Q:SHB=""  D
 .....S K=K+1
 .....S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,K)=$G(@TMPBON@(PRINT,KV,CODP,MN,SHB))
 ;
 K @TMPBON@(PRINT) ; ***
 Q
 ;;
ORD2ORD1(HZM) ;
 N K S K=0 
 K @$$^W4ORD@(HZM,"PC1")
 I $$BONSCR^W4PRM,$D(P1HZMET) D
 .D CLEARBON(HZM,$$^W4GL("W4BON"))
 .D CLEARBON(HZM,$$^W4GL("W4BONA"))
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D  D SETWAS(HZM,N)
 .N ST S ST=$G(^(N)) 
 .N QN S QN=$P(ST,"\",5) 
 .I $D(P1HZMET) S QN=$$ITRAST^W4HZMST(HZM,N) ; -- 20/06/23
 .
 .I QN'>1 D  Q 
 ..S K=K+1 
 ..D SETPC1(HZM,N,K,QN)
 . 
 .N I F I=1:1:QN D 
 ..S K=K+1 
 ..D SETPC1(HZM,N,K,1)
 Q
 ;
 ;
CLEARBON(HZM,GL) ;
 N DT,PRN,TIM
 S DT=$$^W4DZ
 S PRN="" F  S PRN=$O(@GL@(DT,PRN)) Q:PRN=""  D
 .S TIM="" F  S TIM=$O(@GL@(DT,PRN,TIM)) Q:TIM=""  D
 ..K @GL@(DT,PRN,TIM,HZM)
 Q
 ;
SETPC1(HZM,N,K,QN)
 N A,A1,A2
 S A=$G(@$$^W4ORD@(HZM,N))
 M @$$^W4ORD@(HZM,"PC1",K)=@$$^W4ORD@(HZM,N) 
 S $P(@$$^W4ORD@(HZM,"PC1",K),"\",5)=QN 
 S $P(@$$^W4ORD@(HZM,"PC1",K),"\",15)=N 
 N A S A=$G(@$$^W4ORD@(HZM,"PC1",K))
 ;
 N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"PC1",K,N1)) Q:N1=""  D
 .N A1,QNT,QNT1,AI S AI=0
 .S A1=$G(^(N1)),QNT=$P(A1,"\",3)
 .I $D(^(N1))=11 S AI=1
 .
 .I $G(QN)>1 D
 ..S QNT1=$S(QNT["*":$P(QNT,"*",2),'$$PZQN(QNT)&'(QNT#QN):QNT\QN,1:QNT)
 ..I 'QNT1 S QNT1=1
 ..S $P(@$$^W4ORD@(HZM,"PC1",K,N1),"\",3)=QNT1
 .
 .Q:'AI
 .
 .
 .N N2 S N2="" F  S N2=$O(@$$^W4ORD@(HZM,"PC1",K,N1,N2)) Q:N2=""  D
 ..N A2 S A2=$G(^(N2))  
 ..N QNT2 S QNT2=$P(A2,"\",3)
 ..N QNT21 S QNT21=$S(QNT2["*":$P(QNT2,"*",2),'$$PZQN(QNT2)&'(QNT2#QN):QNT2\QN,1:QNT2)
 ..I 'QNT21 S QNT21=1
 ..S $P(@$$^W4ORD@(HZM,"PC1",K,N1,N2),"\",3)=QNT21
 Q 
 ;
 ;
SETWAS(HZM,N) ;
 N N1,N2 Q:'N
 D SETWAS1($$^W4ORD_"(HZM,N)")
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N,N1)) Q:N1=""  I N1 D
 .D SETWAS1($$^W4ORD_"(HZM,N,N1)")
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N,N1,N2)) Q:N2=""  I N2 D
 ..D SETWAS1($$^W4ORD_"(HZM,N,N1,N2)")
 Q
 ;
SETWAS1(GL) 
 I $G(@GL)="" Q
 I $P(@GL,"\",10)["@@" Q
 S $P(@GL,"\",10)="@@"
 Q
 ; 
PZQN(QN) ;
 I QN["|",QN["+" Q 1
 Q 0
 ;
W4ORD(HZM) ; 
 I '$$PCQN1 Q $$^W4ORD_"("""_HZM_""")"
 Q $$^W4ORD_"("""_HZM_""",""PC1"")"
 ;
W4ORDPC(HZM) ; 
 I '$$PCQN1 Q $$^W4ORD_"("""_HZM_""""
 Q $$^W4ORD_"("""_HZM_""",""PC1"""
 ;
IND(N1) ; 
 I '$$PCQN1 Q N1
 Q $P($G(@$$^W4ORD@(HZM,"PC1",N1)),"\",15)
 ;
PCQN1() ; 
 Q +$$PCQN1^W4PRM
 ;
BASAR(CD) ; 
 I $$ZAHI^W4PRM'=1 Q 0
 I $$BASAR^W4HSBRKZ(CD) Q 1 
 N OK S OK=0
 N I F I=2,8,11,12 D 
 .I $D(@$$^W4GL("P1SETA")@(I,CD)) S OK=1 
 Q OK
 ; 
LEHEM(CD) ; 
 I $$ZAHI^W4PRM'=1,$$ZAHI^W4PRM'=3 Q 0
 N OK S OK=0
 N I F I=1,3,7 D 
 .I $D(@$$^W4GL("P1SETA")@(I,CD)) S OK=1 
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMPC1
W4HZMPC ; HAZAGAT HAZMANA LMADPESET MITBAH [ 23.08.20 19:37 ] [ 21.08.20 16:28 ] [ 19.08.20 16:21 ] 
 N (JB,%ARG,%REM,HZM,LKHN,NMB,GLBV,GLBV1,P1HZOP,P1HZMET,P3PCHZ,NOPCMDB)
 ;
 ;;S @$$^W4PRM@("LINE")=0 ; --- 16/08/20 *** LEV
 S @$$^W4PRM@("HZPCSP")=0 ; --- 19/08/20 *** LEV
 ;
 I $G(NOPCMDB)=-1 D  Q  ; -- MADBEKOT BILVAD
 .N BG S BG=1
 .D ^W4MDBPC(HZM)
 ;
 I $$IBON^W4PRM D ^W4PCIBON(HZM) Q
 ;
 D ^W4IN,^W4INP
 S SHB=0,BONTM=+$H_$TR($J($P($H,",",2),5)," ",0)
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S NOPCTAW=$$NOPCTAW
 D PUT^%W3DEB("W4HZMPC","HZM=HZM & NMB=NMB & P1HZOP=P1HZOP & P3PCHZ=P3PCHZ & P1HZMET=P1HZMET& NOPCTAW=NOPCTAW&NOPCMDB=NOPCMDB")
 ;
 I $$SUPER^W3PRM Q
 I $$^W4HZMH(HZM) Q
 I $$^W4PIZUL(HZM) Q
 ;
 S MKRDLV=$$MKRDLV^W4HZMST(HZM)
 S TNB=$$TNB^W4HZMST(HZM)
 S CIB=$$CIB^W4HZMST(HZM)
 ;
 ;;S ^AA("W4HZMPC","NOPCMDB")=$G(NOPCMDB)
 ;
 S SF=$$SF^W4PRM
 ;;I SF,TNB!CIB Q
 ;;I SF,MKRDLV=30!(MKRDLV=31) Q  ; -- PAIDIT
 ;
 N EX S EX=0
 ;
 ;;I $$HZM^W4MSL(HZM),'$D(P1HZMET),$$FUTUREDT^W4HZMIT(HZM) Q
 ;
 S ERMDP=0,NP=0 S DAT=$$^%L1DC(P1DZ,2),MANA=0,FRPC=1,PRBIT=0
 S DTHZ=P1DZ
 S DLT=$$DLPAR,DLT2=$$DLTSF,DLT2H=18,III=0
 S LINEPC="S TXT="""" D S1"
 ;
 I $$MYCHECK^W4PRM,'$D(P1HZMET) D ^WMCHORD(HZM,JB) ; -- MY CHECK ; J ^
 ;
2 ;
 I $$HZMRKZ^W4PRM D
 .D ^W4HSBRKZ($$^W4ORD_"(HZM)","Q1")
 ;
 N BG S BG=1
 ;
 I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")) D COMPBG(HZM)
 ;
 ;
 I $D(P1HZMET("DBL"))!$D(P1HZMET("ETEK")) D  ; -- OCHISTKA OT "+" & 3-GO "@" PRI PECH ETEKA (F2?)
 .N A,A1,A2,A3,BGBON,N1,N2 S BGBON=0
 .
 .I $G(P1HZMET("ETEK"))="LAST" D
 ..N LAST,TIME,TIME1 S LAST=9999
 ..S N2=$O(@$$^W4ORD@(HZM,"ST",LAST),-1) Q:N2=""  Q:BGBON
 ..S TIME=$P($G(@$$^W4ORD@(HZM,"ST",N2)),"\",2)
 ..S TIME=$TR(TIME," ","")
 ..
 ..I '$D(@$$^W4ORD@(HZM,"ST")) D COMPBG(HZM)
 ..
 ..I $D(@$$^W4ORD@(HZM,"ST"))>9 D
 ...F  S N2=$O(@$$^W4ORD@(HZM,"ST",N2),-1) Q:N2=""  D  Q:BGBON
 ....S TIME1=$P($G(@$$^W4ORD@(HZM,"ST",N2)),"\",2)
 ....S TIME1=$TR(TIME1," ","")
 ....I TIME1'=TIME S BGBON=1 Q
 ....S BG=N2
 .
 .I $G(P1HZMET),$D(P1HZMET("DBL")) S BG=+P1HZMET+1
 .;
 .F N1=BG:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 ..S A1=$G(@$$^W4ORD@(HZM,N1))
 ..N SMB S SMB=$$SMB(A1) I SMB="+" S SMB=""
 ..
 ..I $$NOMOD(A1)["@@" D
 ...N NOMOD S NOMOD=$$NOMOD(A1)
 ...I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1)","@@"_SMB)
 ...I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1)",$TR(NOMOD,"+",""))
 ..
 ..N N2 S N2="" F J2=1:1 S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2))
 ...S SMB=$$SMB(A2) I SMB="+" S SMB=""
 ...I $$NOMOD(A2)["@@" D
 ....N NOMOD S NOMOD=$$NOMOD(A2)
 ....I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1,N2)","@@"_SMB)
 ....I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1,N2)",$TR(NOMOD,"+",""))
 ...
 ...N N3 S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....S A3=$G(^(N3))
 ....S SMB=$$SMB(A3) I SMB="+" S SMB=""
 ....I $$NOMOD(A3)["@@" D
 .....N NOMOD S NOMOD=$$NOMOD(A3)
 .....I $D(P1HZMET("ETEK")) D SETNOMOD($$^W4ORD_"(HZM,N1,N2,N3)","@@"_SMB)
 .....I $D(P1HZMET("DBL")),NOMOD'["@@@" D SETNOMOD($$^W4ORD_"(HZM,N1,N2,N3)",$TR(NOMOD,"+",""))
 .;
 ;
 S %SCRN=HZSCR,I=0,SM=1 K PRINTF
 ;
 K @$$^W4PC1
 ;
 ;------ BDIKA IM HISTAEMA HADPASA KODEMET ---
 F I=1:1:5 Q:'$D(@$$^W4GL("P1LOCK")@("PCHZ"))  Q:@$$^W4GL("P1LOCK")@("PCHZ")=$$^W4MYDVN  H 1
 ;
 S @$$^W4GL("P1LOCK")@("PCHZ")=$$^W4MYDVN
 ;
 S TAWMSL=$$^W4TAWMSL(HZM)
 S FBAR=0 S NMB=$$NMB^W4HZMST(HZM)
 ;
 ; --------- BDIKA IM ESH BE HAZMANA MADBEKOT & HADPASA LE MADPESET BAR
 ;
 I $$^W4MSL(NMB) S FBAR=0
 ;
 ;------------ ZAPROS PECH NA MADP BAR ----
 ;
 K MDPMAINB
 ;
 S P1PCBIT=$G(@$$^W4PRM@("HZMBIT"))
 I 'P1PCBIT,$G(@$$^W4PRM@("HZMHV")) S P1PCBIT=.5
 ;
 N N0,N1,N2,N3,ST
 S N0=1 I $G(P1HZMET) S N0=P1HZMET
 ;
BODY ; ------------------------------------- BODY ----------------------
 S SQN=0
 F N1=1:1 Q:'$D(@$$^W4ORD@(HZM,N1))  S SQN=SQN+$P($G(^(N1)),"\",5)
 ;
 ;;S ^BB(HZM)=0
 I '$G(NOPCMDB) D
 .D ^W4MDBPC(HZM)
 ;
 F N1=1:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D  ; -- WAS N1=N0
 .S ST=$G(^(N1)) K ADOM,DBL,MDPMAIN,MDP
 .I $D(P1HZMET),$$ITRAST^W4HZMST(HZM,N1)'>0 Q
 .S (REF,REF0)=$$^W4ORD_"(HZM,N1)",N2=""
 .K DBL D LINE D
 ..I $G(MDP) S MDPMAIN=MDP
 ..D DBL1 K DBL
 ..N P1H11 S P1H11=1
 ..S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 ..N DELAY S DELAY=$G(@$$^W4PRM@("HZMPCDELAY"))
 ..I DELAY,$$^W4EZAT(PAR) H DELAY
 ..
 ..D ^W4N2V(HZM,N1)
 ..N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 ..S N2V="" K PRINTF1 F P1H=1:1 S N2V=$O(@VRMHZ@(N2V)) Q:N2V=""  D
 ...S N2=$G(^(N2V)) Q:N2=""
 ...S ST=$G(@$$^W4ORD@(HZM,N1,N2))
 ...
 ...N REF S REF=$$^W4ORD_"(HZM,N1,N2)"
 ...N DLT2,DLT20 S (DLT2,DLT20)=$$DLTSF
 ...
 ...;;S DLT2=$$DEFDLT2
 ...
 ...N DBL,COL0,CODP3,SUGTSF,PRTSF N MDP D LINE2 D DBL2 K DBL
 ...
 ...N PAR,MDPMAIN1 S FRPC=1
 ...S N3="" F P1H1=1:1 S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....K DBL N MDP S FRPC=(P1H1=1) D LINE3 S FRPC=(P1H1=1) D DBL3 K DBL
 ..K @VRMHZ
 ;
 I $G(MDPMAINB) D  ;  --- LEDAVEAH AL HADPASA LE MADPESET BAR MUVHERET
 .N LS S LS=$O(@$$^W4ORD@(HZM,99999),-1)+1
 .S @$$^W4ORD@(HZM,LS)="<-0\\---------------\\\\\"_$P($G(@$$^W4PRM@("MDP",MDPMAINB)),"\",4)_" <- xa hixt\\@@!"
 ;
 I N1'>1 G EBODY
 I N1>1 S @$$^W4ORD@(HZM,"H")=N1-1
 ;
 I $$PRMANA=1,$D(@$$^W4PC1)>9 D PC1
 I $$PRMANA=2,$D(@$$^W4PC1)>9 D PC2
 I $$PRMANA=3,$D(@$$^W4PC1)>9 D PC3
 ;
 I $$MVALL^W4HZPCFN!($G(P1HZOP)="BIT")!($G(P1HZOP)="NOPC")!($G(P1HZOP)["BIT"&'P1PCBIT) G EBD0
 ;
 I $$HZMRKZ^W4PRM D ^W4HZMR
 ;
 S pc=""
 S PRINT="" F  S PRINT=$O(PRINTF(PRINT)) Q:PRINT=""  D HEADN
 ;
 S PRINT="" F  S PRINT=$O(PRINTF1(PRINT)) Q:PRINT=""  D
 .I '$D(PRINTF(PRINT)) D HEADN
 ;
EBD0 K PRINTF,PRINTF1,pc
 S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4GL("P1HZ0")_"(HZM)" D ^%S1GC1
EBODY L  K @$$^W4GL("P1LOCK")@("PCHZ")
 Q
 ;
 ;
COMPBG(HZM) ;
 N N1
 D  ;I '$D(@$$^W4ORD@(HZM,"ST")) D
 .S N1=9999 F  S N1=$O(@$$^W4ORD@(HZM,N1),-1) Q:N1=""  S A=$G(^(N1))  I A["@@",A'["@@!" Q
 .S BG=N1+1
 Q
 ;
DLPAR(STAM) Q 16
DLTSF(STAM) Q 15
ISDLTSF(DL) Q ($G(DL)<($$DLTSF+1))
 ;
 ;
SMB(ST) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@!" Q "!"
 I NOMOD["@@?" Q "?"
 I NOMOD["@@+" Q "+"  ; -- 30/09/09
 Q ""
 ;
CODP(ST) Q $P(ST,"\")
NM(ST) Q $P(ST,"\",3)
QN(ST) Q $P(ST,"\",5)
 ;
HRP(ST) N HRP S HRP=$P(ST,"\",8)
 S HRP=$$RPL^%L1FRM(HRP,"dry itl dgpd")
 Q $$CLRHR(HRP)
 ;
NOMOD(ST,PR) Q $P(ST,"\",10)
 ;
SETNOMOD(REF,VL,PR) S $P(@REF,"\",10)=VL
 Q
 ;
SETNOMODST(VL) ;
 S $P(ST,"\",10)=VL
 Q
 ;
DBL1 ;
 I $G(MDP)'["&" Q
 N LASTDBL S LASTDBL=$L(MDP,"&")
 N DBL F DBL=2:1:LASTDBL D
 .N PAR
 .S OK=0,SUMHN=0,PAR=$P(ST,"\"),ERMDP=0,MIN=0 Q:PAR=""
 .D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 .D LINE
 Q
 ;
DBL2 I $G(MDP)["&" D
 .N PAR S PAR=$P(@$$^W4ORD@(HZM,N1),"\")
 .I $G(@$$^W4PRM@("TSFTIED"))=2,$D(@$$^W4GL("P1EZ")@(PAR))!$D(@$$^W4GL("P1EZRI")@(PAR))!$D(@$$^W4GL("P1EZK")@(PAR)) Q
 .N LASTDBL S LASTDBL=$L(MDP,"&")
 .
 .N DBL F DBL=2:1:LASTDBL D
 ..I '$$LINETL,$G(P1H1)>1 D DEFPRN(PAR)
 ..D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 ..N CODP3,SUGTSF,PRTSF D LINE2
 Q
 ;
DBL3 I $G(MDP)["&" D
 .N LASTDBL S LASTDBL=$L(MDP,"&")
 .N DBL F DBL=2:1:LASTDBL D
 ..D:$$NOMOD(ST)'["@@" SETNOMODST("@@")
 ..N CODP3,SUGTSF,PRTSF D LINE3
 Q
 ;
HEAD D ^W4HZPCHD(HZM)
 Q
 ;
 ;
HEAD1 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 ;
 N pc S pc=""
 ;
 I $G(P1HZOP)="BIT" D  Q
 .D PCBC("   !!! dlhea dpnfd "_%MDP("N"))
 .S TXT=$C(10,10,10,10,10,10)_%MDP("CUT")_$C(10,10,10,10),TXT("NOTR")=""
 .D S2 K TXT
 ;
 D KAV^W4HZPCHD
 ;
 Q
 ;
 ;
HEAD2 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 S TXT=" 4 : 3 : 2 : 1 :--- zetqez xe`z ---:" D S1
 I $G(PRINT) S PRHEAD(PRINT)=2
 Q
 ;
HEAD3 ;
 Q
 ;
HEAD4 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 Q:$$PRMANA<2
 N TXT S TXT=": zenk :----------- ziwqr dgex` ----:" D S1
 I $G(PRINT) S PRHEAD(PRINT)=4
 Q
 ;
 ;
MDPCUT(PRINT) ;
 I $$MDPS(PRINT)=6!($$MDPS(PRINT)=8) Q 1
 Q 0
 ;
MDPS(PRINT) ;
 N MDPS,OK S MDPS=6,OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S A=$G(^(N)) D  Q:OK
 .I +$P(A,"\",3)=+PRINT S MDPS=$P(A,"\"),OK=1
 ;;Q $$MDPS^W4MDP(PRINT)
 Q MDPS
 ;
HEADN ;
 D HEADN^W4HZPCHD
 Q
 ;
 ;
HZMDBL(STAM) ;
 Q $$HZMDBL^W4PRM
 ;
CUT(PRINT) ;
 I $G(PRINT) K %MDP D DEFMDP(PRINT)
 N TXT S TXT=$C(10,10,10,10,10)_$G(%MDP("CUT"))_$C(10,10,10) D S2
 Q
 ;
SUGMDP(NP) ;
 Q $$LPSUG^W4PLUK(NP)
 ;
SUGDEV(PRN) ;
 N A S A=$G(@$$^W4DEV@(+PRN,"H"))
 Q $P(A,"\",2)
 ;
 ;
DEFMDP(PRINT) ;
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
DEFMDP1 D DEFMDP1^W4DEFPRN
 Q
 ;
LINE ; --- HADPASAT PARIT ROSHI / RAGIL
 S ERMDP=0,OK=0,MIN=0,FLAG="",SUMHN=0,PAR=$P(ST,"\")
 K SUGTSF,PRTSF,CODP3,N2,N23
 Q:$E(PAR)?.P
 Q:PAR=""  N PRT
 ;
 N ST0 S ST0=ST
 ;
 S PRMAIN=$P(ST,"\",5)
 ;
 I PAR="0" Q:$$NOPRINT(ST)  D  G EL
 .N MDP,MDP1,PRINT,%MDP
 .S MDP=$P(ST,"\",11)
 .I MDP="",$$NODLVORD^W4PRM S MDP=$$ALLPRN^W4DEFPRN
 .I MDP="",'$$NODLVORD^W4PRM S MDP=0
 .I MDP D  Q
 ..N DBL F DBL=1:1:$L(MDP,"&")  D
 ...Q:'$P(MDP,"&",DBL)
 ...D LINEPRN(MDP) Q:$G(MDP1)=""
 ...D PCHD
 ...D PCLP
 .Q  ;
 ;
 I $$NOPRINT(ST) Q
 Q:PAR=""
 ;
 D  ;--> %MDP,ERMDP
 .N PRINT,MDPS S MDP=$$PRINTIG^W3PRMDP(PAR) I MDP="" Q
 .D LINEPRN(MDP) Q:$G(MDP1)=""
 ;
 I $$D^W4EZA(PAR),$$PRMANA=1 S SUMHN=$$SUMHN(HZM,N1) G EL
 ;
 I $P(ST,"\",2)[">",$G(P1HZOP)="BIT1",P1PCBIT'=2 S ERMDP=2
 ;
 I $$QN(ST)<0 D
 .I '$G(P1PCBIT) S ERMDP=2 Q
 .I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ;
 D:'ERMDP DEFPRN(PAR) I ERMDP,ERMDP'=2 Q
 ;
 I ERMDP=2 S SUMHN=$$SUMHN(HZM,N1) G:$G(MDP) EL
 ;
LINEP ;
 ;
 I $G(MDP)=0 G EL
 I '$D(%MDP)!'$G(PRINT) Q
 Q:ERMDP
 ;
 D CLMANA(8)
 ;
 ;;I $G(PRINT),$D(FIRSTHD(PRINT)) G LINEP1
 I '$$PRMANA,PRINT,$$LINE^W4PRM,'$G(PRHEAD(PRINT)),$E(PAR)'="-" D KAV G LINEP1
 I '$G(PRHEAD(PRINT)) X LINEPC
 ;
LINEP1 I $$QN(ST)<0 S TXT("R")=1,ADOM=1
 S SUMHN=$$SUMHN(HZM,N1)
 ;
 D PCLP
 I $G(PRINT) S FIRSTHD(PRINT)=0
 ;
 I $P($G(@$$^W4ORD@(HZM,N1+1)),"\")="-100%" D
 .N SIBA S SIBA=$P($G(@$$^W4ORD@(HZM,"HNH",N1)),"*",4) Q:SIBA=""
 .N TXT S TXT="[ "_SIBA_" ]" D S1
 ;
EL ;
 I $G(PRINT) K PRHEAD(PRINT)
 I $$SETWASPRINT(REF) Q
 S OK=1
 N RF S RF=@REF I $$^W4MSD(NMB)!TAWMSL D PLU2
 Q
 ;
 ;
LINEPRN(MDP) ;--> PRINT,%MDP
 D DEFMDP1 Q:MDP1=""  D HZ^W4MDP(MDP1)
 Q
 ;
KAV ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT S TXT=""
 I $$HZPCSP^W4PRM S TXT=$C(10)
 S TXT=TXT_"  "_$TR($J("",$$WD)," ","-") D S1 ; --- WAS S2 ; 14/06/18
 Q
 ;
KAV1(PRN) ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT
 S TXT=""
 S TXT=TXT_$TR($J("",$$WD)," ","-") S PRKAV=1
 D SETPC(PRN,TXT)
 Q
 ;
 ;
KAV3 ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) Q
 N TXT
 S TXT=$TR($J("",$$WD)," ",".")
 D S1
 Q
 ;
 ;
PCLP ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) D BONSCR Q
 ;
 N PCLP S PCLP=""
 N NAME2 S NAME2=""
 N NAME3 S NAME3=""
 ;
 N QN S QN=$$QN(ST)
 ;
 S TXT="" D S1 ; *** 23/08/20 
 ;
 S QPAR(PRINT)=$G(QPAR(PRINT))+QN
 ;
 S TXT=$$PCCAM(QN) ; -- 2 SMB
 ;
 S SHEM=$$NM(ST),HR=$$HRP(ST)
 I QN<0 S TXT("R")=""
 N CDPAR S CDPAR=$$CODP(ST)
 ;
 I '$$NOPCLOAZ^W4PRM,CDPAR,$D(@$$^W4GL("PAR")@(CDPAR)),$$SHEML^W4P(CDPAR)'="" D
 .S SHEM=$$SHEML(CDPAR)
 ;
 I CDPAR,$D(@$$^W4GL("W4ITDGSH")@(CDPAR)),$D(%MDP("BB")) D  G PCLPHR ; -- ATTN !
 .D KAV^W4HZPCHD
 .S TXT=%MDP("BB")_$$HBR^%L1FRM(SHEM,$$WD\2*$$KFPC)_%MDP("N") D S1
 .D KAV^W4HZPCHD
 ;
 N DL S DL=$$DLPAR
 I '$$BIGNMB!$$NOHZMPAR D
 .I '$$NOHZMPAR S DL=DL-4
 .S TXT=TXT_" "_$$NAME(SHEM,QN,DL,"")
 .I '$$NOHZMPAR D
 ..S TXT=TXT_$J($P(ST,"\",2)_" "_$$CODP(ST),5)
 .D S1
 ;
 I $$BIGNMB,'$$NOHZMPAR D
 .S DL=DL-4
 .S TXT=TXT_$$NAME(SHEM,QN,DL,"")
 .S TXT=TXT_" "_$$BIGMDPCD_$J($$CODP(ST),4)_%MDP("N") D S1
 ;
 I $L(NAME2) S TXT=$J("",6)_$$NAME(NAME2,"",DL,"") D S1
 I $L(NAME3) S TXT=$J("",6)_$$NAME(NAME3,"",DL,"") D S1
 ;
PCLPHR ;
 N NOSPACE I $$TAWHRLINE S NOSPACE=""
 I HR'?." ",'$D(P1HZOP)!($G(P1HZHB1)="B") D
 .S HR=$$RPL^%L1FRM(HR,";dry itl dgpd","")
 .S HR=$$RPL^%L1FRM(HR,"dry itl dgpd","")
 .I $$SPA^%L1FRM(HR)=";" Q
 .D PCHR(HR,DLT2H,"<")
 ;
 I '$D(P1HZOP)!($G(P1HZOP)["BIT"),$$QN(ST)<0,$G(P1HZHB1)'="B" D
 .S PRBIT=1
 .I '$$PRMV(HR) S TXT=%MDP("B")_"CANCELLED lhea"_%MDP("N") D S1
 ;
 I $P(ST,"\",9)'?.P,'$D(P1HZOP) D
 .S TXT=$$SOADIM($P(ST,"\",9)) D S1
 ;
 I $$TAWHRLINE D
 .S TXT=%MDP("B")_@$$^W4PRM@("TAWHR")_%MDP("N") D S1
 .S TXT="" D S1
 ;
 I '$$PRMANA!$$HZPCSP^W4PRM!$$BBNAME S TXT="" D S1
 Q
 ;
 ;
BIGMDPCD(STAM) ;
 N B S B=$G(%MDP("B"))
 I $$BIGNMB=2,$L($G(%MDP("BB"))) S B=%MDP("BB")
 Q B
 ;
BIGNMB(STAM)
 Q $G(@$$^W4PRM@("BIGNMB"))
 ;
NOHZMPAR(STAM) ;
 Q $G(@$$^W4PRM@("NOHZMPAR"))
 ;
TAWHRLINE(STAM) ;
 I $$TAW^W4DLPK(NMB)!$$TAKEAWAY^W4HZMST(HZM),'$G(@$$^W4PRM@("TAWHRKOT")),$L($G(@$$^W4PRM@("TAWHR"))) Q 1
 Q 0
 ;
CLMANA(DLM) ;
 Q:'$D(MANA)  N OLDMANA
 S OLDMANA=MANA,MANA=0
 D DEFMANA($P(ST,"\",DLM))
 I MANA,$$PRMANA D
 .S $P(ST,"\",DLM)=$$^W4CLRMN($P(ST,"\",DLM))
 I 'MANA S MANA=OLDMANA
 I $$PRMANA>1,DLM=8 S MANA=0 ; -- MIUN LEFI TOSAFOT
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
QNT(ST) Q $P(ST,"\",3)
HRT(ST) Q $$CLRHR($P(ST,"\",4))
 ;
CLRHR(HR)
 S HR=$G(HR)
 I HR'["[[" Q HR
 Q $$CLRHR^W4HZTH(HR)
 ;
RAVBR(CD) ;
 I CD?1N.N1"-"1N.N Q 1
 Q 0
 ;
LINE2 ; --
 S PRMAIN=0
 N P1EZT,II,UR
 S UR=$S($D(N23):3,1:2)
 ;
 I UR=2,$D(@REF@(1)) Q
 ;
 S NP=NP+1,OK=0,ERMDP=0
 I $$NOPRINT(ST,UR) Q
 ;
 I $G(P1HZOP)="BIT" S ERMDP=2
 ;
 I $$ROLI^W4PRM,$$NMSET(PAR,N2)["cva" S ERMDP=2 G LN2
 ;
 I UR=3,$G(PAR0) S PAR=PAR0
 ;
 I $L($G(PAR)),$$^W4EZAT(PAR) S PRMAIN=0 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .N P1EZT I $$D^W4EZT(PAR)!$G(@$$^W4PRM@("AINIFRAD")) S P1EZT=""
 .
 .D DEFPRN(N2)
 ;
 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I UR=3,$G(@$$^W4PRM@("AINIFRAD"))&($G(DLT2)>20) S P1EZT=""
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .D:'ERMDP DEFPRN(N2)
 ;
LINE21 ;
 I $D(PRINT),'$D(PRINTF1(PRINT)) D  S PRINTF1(PRINT)=1
 .D HEAD3
 .Q
 ;
 ;--------------------- AI -------------------------
 ;
PT D PCLT ; --- !!!! -- PRINT LINE
 ;
 I '$D(P1HZOP)!($G(P1HZOP)["BIT"),$$QNT(ST)<0,$G(P1HZHB1)'="B" D
 .N HR S HR=$$HRT(ST)
 .I $$PRMV(HR) Q
 .D PCBC("CANCELLED lhea")
 ;
 I '$$PRMANA,PRINT,$$LINE^W4PRM D KAV3
 ;
LN2 ;
 I $$SETWASPRINT(REF,UR) Q
 ;
 I UR=3 D SUM3($G(@REF)) G LN21 ; --- LEV 3 ADDONS
 ;
 S COLP=$P(@($P(REF,",",1,2)_")"),"\",5)
 N RF S RF=$G(@REF) N PAR S PAR=N2
 ;
 D:$$^W4MSD(NMB)!TAWMSL PLU3 S OK=1
 ;
LN21 ;
 Q
 ;
 ;
REDADD(STAM) ;
 Q +$G(@$$^W4PRM@("REDADD"))
 ; 
 ;
PCLT ;
 I $$BONSCR^W4HZPCHD($G(PRINT)) D BONSCR Q
 ;
 N SUGTSF ; -- 1 - EZT, 2 - EZA , 3 - TSF
 S SUGTSF=3
 I UR=3 S SUGTSF=$G(CODP3) S:'SUGTSF SUGTSF=3 
 D
 .I SUGTSF<3,'$G(@$$^W4PRM@("NOSPACE2")) X LINEPC Q
 .I $$DEFDLT2=$$DLPAR X LINEPC
 ;
 N TXT,REDADD S REDADD=$$REDADD
 S TXT=""
 D
 .N QNT,QNSUG S QNT=$$QNT(ST),QNSUG=$$QNPZ^W4PIZZA(QNT)
 .I QNSUG D  Q
 ..N QNPZ S QNPZ=$$QN^W4PIZZA(QNT)
 ..N J I QNSUG=4 D  Q
 ...F J=1:1:4 S TXT=TXT_$E(QNPZ,J)
 ..N J I QNSUG=2 D  Q
 ...F J=1:1:2 S TXT=TXT_%MDP("B")_$E(QNPZ,J)_%MDP("N")_" "
 .
 .S TXT=$$PCCAM($S(QNT="":"",1:+QNT))
 .I $$RAVBR(N2)!$G(@$$^W4PRM@("NOPCQADD")) S TXT="    "
 ;
 D CLMANA(4)
 ;
 S HR=$$HRT(ST)
 ;
 I $$SBR(HR),$$QNT(ST)=1 S TXT=$J("",5)
 I HR["<",HR[">" S HR=$P(HR,"<") ; -- LENAKOT SHEM HAMAZMIN
 ;
 N DL S DL=$$DEFDLT2
 I $$BIGNMB,'$$NOHZMPAR S DL=DL-4
 I '$$BIGNMB,'$$NOHZMPAR S DL=DL-2
 S ^AA("W4HZMPC","DL",N2)=DL
 ;
 N NAME S NAME=$P(ST,"\") ;;$$HBR^%L1FRM($P(ST,"\"),DL)
 N NAME2 S NAME2=""
 N NAME3 S NAME3=""
 ;
 I '$$NOPCLOAZ^W4PRM,N2,$D(@$$^W4GL("PAR")@(N2)),$$SHEML^W4P(N2)'="" D
 .N NAME1 S NAME1=$E($$SHEML(N2),1,DL)
 .I $TR(NAME1," ","")'="" S NAME=NAME1
 ;
 S NAME=$$NAME(NAME,$P(ST,"\",3),DL,HR)
 ;
 I '$$BIGNMB!$$NOHZMPAR!(N2["-") D
 .I '$$NOHZMPAR,N2'["-" S TXT=TXT_NAME_" "_$J(N2,4) Q
 .S TXT=TXT_"  "_NAME
 ;
 I $$BIGNMB,'$$NOHZMPAR,N2'["-" D
 .S TXT=TXT_NAME_" "_$$BIGMDPCD_$J(N2,4)_%MDP("N")
 ;
 D S1
 ;
 I $L(NAME2) S TXT=$J("",6)_$$NAME(NAME2,"",DL,"") D S1
 I $L(NAME3) S TXT=$J("",6)_$$NAME(NAME3,"",DL,"") D S1
 ;
 N NOSPACE
 I HR'?." ",'$$SBR(HR) D
 .I DLT2=$$DLPAR,$$TAWHRLINE S NOSPACE=""
 .D PCHR(HR,DLT2H) ; ------- HEARA
 ;
 I $P(ST,"\",6)'?.P D
 .S TXT=$$SOADIM($P(ST,"\",6)) D S1
 .I DLT2=$$DLPAR,$$TAWHRLINE Q
 .S TXT="" D S1
 ;
 I DLT2=$$DLPAR,$$TAWHRLINE D
 .S TXT=%MDP("B")_@$$^W4PRM@("TAWHR")_%MDP("N") D S1
 .S TXT="" D S1
 Q
 ;
 ;
NOPCDEL(ST) ;
 I $$QNT(ST)<0,'P1PCBIT Q 1
 I $$QNT(ST)<0,P1PCBIT<1,'$$PRMV($$HRT(ST)) Q 1
 I '$$QNT(ST) Q 1
 Q 0
 ;
CODTT3(ST) Q $P(ST,"\",4)
NMT3(ST) Q $P(ST,"\",2)
NMTT3(ST) Q $P(ST,"\",5)
MHT3(ST) Q $P(ST,"\",7)
HRT3(ST) Q $P(ST,"\",6)
QNT3(ST) Q $P(ST,"\",3)
 ;
 ;
LINE3 ;
 N N23,REF,DLT2 S N23=N2,DLT2=$$DLTSF
 N ST
 S REF=$$^W4ORD_"(HZM,N1,N23,N3)",ST=$G(@REF)
 N PAR0 S PAR0=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 I $$CODP(ST)'="" S PAR=$$CODP(ST),COL0=$$QNT3(ST)
 N COL3 S COL3=$$QNT3(ST)
 ;
 I $$NOPRINT(ST,3) Q
 ;
 S CODP3=0
 ;
 I $$CODP(ST)'="" D  S FRPC=1 D LINE2 S:$G(MDP) MDPMAIN1=MDP Q
 .S MDPMAIN1=""
 .S ST=$$NMT3(ST)_"\"_$$MHT3(ST)_"\"_COL0_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 .D SETHR3
 .S CODP3=$S($$D^W4EZA(PAR0):2,1:1)
 .Q:'$$^W4EZAT(PAR0)
 .;;S DLT2=$$DEFDLT2
 .
 .N STT S STT=$G(@$$^W4ORD@(HZM,N1,N23,N3+1)) Q:STT=""
 .I $$CODP(STT)="",$$CODTT3(STT)'="" S DLT2=$$DLPAR ;  - KMO ACMAI
 ;
 ;--- PRINT ADDONS LEV 2
 N N2,PRUR S PRUR=2
 S N2=$$CODTT3(ST)
 ;
 S ST=$$NMTT3(ST)_"\"_$$MHT3(ST)_"\"_$G(COL3,1)_$$DOP^W4PIZZA($$QNT3(ST))_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 ;
 D SETHR3
 S DLT2=$$DLTSF D LINE2
 Q
 ;
 ;
SETHR3 ;
 N REF2,ST2
 S REF2=$$^W4ORD_"(HZM,N1,N23)",ST2=$G(@REF)
 I '$$^W4DEFMN($P(ST,"\",6)),$$^W4DEFMN($P(ST2,"\",4)) D
 .S $P(ST,"\",6)=$P(ST2,"\",4)_" "_$P(ST,"\",6)
 Q
 ;
SUM3(ST) ;
 N PAR
 I $$CODP(ST)'="" Q
 S PAR="A-"_$$CODTT3(ST)
 S COL=$G(COL0),PRC=0,SUM=0 D PLT
 Q
 ;
RSDAI ;
 I $D(REF0),$G(@$$^W4PRM@("SD")),$$PRMANA D
 .N RSD S RSD=$P($G(@REF0),"\",9) I RSD'?.P D
 ..S TXT=$$SOADIM(RSD) D S1 S TXT="" D S1
 Q
 ;
BONSCR ;
 S SHB=$O(@$$^W4BON@(P1DZ,PRINT,BONTM,HZM,99999),-1)+1
 N REF1 S REF1=$P(REF,"(")_"("
 N J F J=1:1:$L(REF,",") D
 .N IND S IND=$P(REF,",",J)
 .I IND["(" S IND=$P(IND,"(",2)
 .I IND[")" S IND=$P(IND,")")
 .S IND=@IND
 .I $E(IND)'="""" S IND=""""_IND_""","
 .S REF1=REF1_IND
 S REF1=$E(REF1,1,$L(REF1)-1)_")"
 S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,SHB)=REF1
 Q
 ;
BONSCRMSG(MSG) ;
 S SHB=$O(@$$^W4BON@(P1DZ,PRINT,BONTM,HZM,99999),-1)+1
 S @$$^W4BON@(P1DZ,PRINT,BONTM,HZM,SHB)="!"_MSG
 Q
 ;
PLU N DAT,DTHZ
 D ^W4IN
 ;;S DAT=$$^%L1DC(P1DZ,2),DTHZ=P1DZ
PLU1 N N1,PAR,RF,SSUM,SHNH,PLU1,COLP,SUMHN S SSUM=0,SHNH=0
 ;
 D
 .S DTHZ=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 .N TRH S TRH=$$TRH^W4HZMST(HZM) I TRH S DTHZ=$$^%L1DC(TRH,3)
 .I 'DTHZ S DTHZ=P1DZ
 ;
PLU11 S DAT=$ZD(DTHZ,"YYMMDD")
 ;
 I $$^W4HZMH(HZM) Q
 I $$I^W4PIZUL(HZM) Q
 ;
 S PLU1="" ;
 F N1=1:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .S PAR=$P(@$$^W4ORD@(HZM,N1),"\") Q:'$L(PAR)  S RF=^(N1)
 .S SUMHN=$$SUMHN(HZM,N1) D PLU2 S SUMHN=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N1,N)) Q:N=""  D
 ..S RF=$G(^(N)),PAR=N D PLU3
 ..N N3 S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N,N3)) Q:N3=""  D SUM3($G(^(N3)))
 ;
 Q
 ;
 ;
PLU2 ;
 ;--- INPUT : HZM,RF,PAR,N1
 N COL,PRC,SUM,ST,SUG,N,MIN
 S SUG=$P(RF,"\",2),COL=$P(RF,"\",5),PRC=$P(RF,"\",4),SUM=$J(PRC*COL,2,2)
 ;;S MIN=$S($TR(SUG," ","")[">":1,1:0)
 S MIN=$$EX2KITCH^W4HZMST(HZM,N1)
 ;
 S COLP=COL D PLT
 ;
 I $G(HZM),$G(N1),'$D(@$$^W4ORD@(HZM,"ST",N1)) D
 .N MLZL,MLZBG S MLZL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .S MLZBG=$$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"MKBL")
 .I (MLZBG&$$MLZBGPAR^W4PRM)!(MLZL="") S MLZL=MLZBG
 .Q:MLZL=""  Q:PAR=""
 .S @$$^W4ORD@(HZM,"ST",N1)=MLZL_"\"_$$^%L1TM($P($H,",",2))
 Q
 ;
 ;
PLU3 ;
 ;--- INPUT : RF,PAR,COLP
 N ST0,COL,PRC,SUM,PARO,SUMHN,MIN S ST0=$P(RF,"\",2,25)
 ;
 I $E(PAR,1,2)="A-" D  Q
 .S COL=+ST0,SUM=0,PRC=0,PARO=PAR,PAR="A-"_$P(PAR,"-",3)
 .S MIN=$P(ST0,"\",2)[">"
 .D PLT S PAR=PARO
 ;
 S PRC=$P(ST0,"\")
 ;
 I ST0["\+\" S COL=($L(ST0,"+\")-1)*COLP S SUM=$P(ST0,"\",6)*COLP
 I ST0'["\+\" S COL=$P(ST0,"\",2) S SUM=PRC*COL
 ;
 D PLT
 ;
 Q
 ;
 ;
PLT ;
 ;-- INPUT: PAR,COL,SSUM,SHNH,DAT,MRK,HZM,P1DZ,N1
 ;
 I '$D(MRK) D MRK^W4IN
 ;
 N ST,SHAA Q:PAR["%"  Q:PAR=""
 I '$G(DAT) S DAT=$$^%L1DC(P1DZ,2)
 ;
 I PAR?1":"1N.N,$G(@$$^W4PRM@("MM"))!$G(@$$^W4PRM@("MMZZ")) D  Q
 .S @$$^W4GL("P1MLZ")@(HZM)=$E(PAR,2,4)
 ;
 D
 .L +@$$^W4GL("P1MLZ")@(HZM):1
 .N MLZL S MLZL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .I $G(HZM),$G(N1),$D(@$$^W4ORD@(HZM,"ST",N1))#2 S MLZL=$P(^(N1),"\")
 .I MLZL="" S MLZL=$$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"MKBL")
 .Q:MLZL=""  Q:PAR=""
 .S ST=$G(@$$^W4GL("P1MLZ")@(HZM,MLZL,PAR))
 .D SUMST
 .S @$$^W4GL("P1MLZ")@(HZM,MLZL,PAR)=ST
 .L -@$$^W4GL("P1MLZ")@(HZM)
 ;
 L +@$$^W4GL("PLUTOT")@(DAT,MRK,PAR):1
 L +@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR):1
 ;
 S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) D SUMST
 S SSUM=$G(SSUM)+SUM,SHNH=$G(SHNH)+$G(SUMHN)
 S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR)=ST
 S @$$^W4GL("PLUTOTI")@(PAR,MRK,DAT)=""
 S ST=$G(@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)) D SUMST
 S @$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)=ST
 ;
 D
 .D SHAA
 .S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)) D SUMST
 .S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)=ST
 .
 .I $$MLY^W4PLUK,'$$NEWMLY^W3PRM,'$G(MIN),'$D(PLU1)!$D(W4MLREST) D
 ..D ^W4MLY(MRK,DAT,PAR,COL,$J($S('COL:SUM,1:SUM/COL),2,2),$G(SUMHN))
 .
 .I $$NEWMLY^W3PRM,'$G(MIN),'$D(PLU1)!$D(W4MLREST) D
 ..D SETMLY^W4SETMLY(2,DTHZ,$$^W4PK(PAR),"O",$S('$G(LKHN):0,1:LKHN),"ORD",HZM,COL)
 .
 .
 .I $G(NMB),$D(@$$^W4GL("P1ARZ")@(PAR)),$$SUGL1^W4L(NMB)="TAW"!$$^W4MSL(NMB) D
 ..N ARIZA
 ..S ARIZA=$P(@$$^W4GL("P1ARZ")@(PAR),"\",3) Q:ARIZA=""
 ..S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,ARIZA,SHAA)) D SUMST
 ..S @$$^W4GL("PLUTOT")@(DAT,MRK,ARIZA,SHAA)=ST
 ..I $$MLY^W4PLUK,'$$NEWMLY^W3PRM,'$G(MIN),'$D(PLU1)!$D(W4MLREST) D
 ...D ^W4MLY(MRK,DAT,ARIZA,COL,$J(0,2,2),"")
 ..I $$NEWMLY^W3PRM,'$G(MIN),'$D(PLU1)!$D(W4MLREST) D
 ...D SETMLY^W4SETMLY(2,DTHZ,ARIZA,"O",$S('$G(LKHN):0,1:LKHN),"ORD",HZM,COL)
 ;
 L -@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)
 L -@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)
 Q
 ;
 ;
SHAA ;
 I $$MSL^W4HZMST(HZM) S SHAA=$$SHAA^W4HZMST(HZM) G ESHAA
 S SHAA=""
 I $G(HZM),$G(N1),$G(@$$^W4ORD@(HZM,"ST",N1)) S SHAA=$P(^(N1),"\",2)
 I SHAA=""!$$^W4PPG("") D
 .S SHAA=$TR($P($$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"ZMANK"),"  ",2)," ","")
 S:SHAA="" SHAA=$$T^%L1TIME($P($H,",",2))
ESHAA S SHAA=+$TR(SHAA," ","")
 Q
 ;
 ;
DEFPRN(PRT) ;
 D ^W4DEFPRN(HZM,PRT)
 Q
 ;
 ;
PCHD ;
 I '$D(PRINTF(PRINT))!($$NIFRAD^W4MDP(MDP1)&$G(PRMAIN))!($G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT)),'$G(ERMDP)!($G(P1HZOP)="BIT") D
 .I $G(@$$^W4PRM@("AINIFRAD"))&$D(P1EZT),'$G(@$$^W4PRM@("MANATL")) D CUT(PRINT)
 .D BEEP
 .D HEAD,HEAD1
 .S PRINTF(PRINT)=1
 Q
 ;
 ;
SUMST ;
 S $P(ST,"*",1)=$P(ST,"*",1)+COL
 S $P(ST,"*",2)=$P(ST,"*",2)+SUM
 S $P(ST,"*",3)=PRC
 S $P(ST,"*",4)=$P(ST,"*",4)+$G(SUMHN)
 I COL<0 D
 .I $G(MIN) D
 ..S $P(ST,"*",5)=$P(ST,"*",5)+COL
 ..S $P(ST,"*",7)=$P(ST,"*",7)+SUM
 .I '$G(MIN) D
 ..S $P(ST,"*",6)=$P(ST,"*",6)+COL
 ..S $P(ST,"*",8)=$P(ST,"*",8)+SUM
 Q
 ;
SUMHN(HZM,NN) ;
 N SUMHN,A S SUMHN=0
 F NN=NN+1:1 Q:'$D(@$$^W4ORD@(HZM,NN))  S A=^(NN) Q:$P(A,"\")'["%"  D
 .S SUMHN=$G(SUMHN)-$P(A,"\",7)
 Q SUMHN
 ;
DEFMANA(CMT) ;
 S MANA=$$^W4DEFMN(CMT)
 Q
 ;
 ;
PC1 N N,PRN,CHP,CHP0,%MDP,CUTPRG,PRTSF,PRCHP,PCCHP
 N LAST S LAST=$O(^PC2(999999),-1)+1
 M ^PC2(LAST)=@$$^W4PC1
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .L +@$$^W4PC@(PRN):2 S PRCHP=0,PRKAV=1 ;
 .S CHP="",CHP0="",ICHP=0
 .F  S CHP=$O(@$$^W4PC1@(PRN,CHP)) Q:CHP=""  D  S CHP0=+CHP
 ..K FLMN I CHP>0 I $$CHLD(PRN,CHP),+CHP'=CHP0 D PCCHP(PRN,CHP) S PRCHP=1,PCCHP(PRN)=""
 ..S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,CHP,NOM)) Q:NOM=""  D
 ...;;I $$HZPCSP^W4PRM,'$$LINE^W4PRM!PRKAV D SETPC(PRN,"")
 ...;;I $$LINE^W4PRM,'$D(PRCHP(PRN)),'PRKAV D KAV1(PRN)
 ...S N="" F  S N=$O(@$$^W4PC1@(PRN,CHP,NOM,N)) Q:N=""  S TXT=$G(^(N)) I $L(TXT) D
 ....D SETPC(PRN,TXT)
 ....S PRCHP=0,PRKAV=0
 .L -@$$^W4PC@(PRN)
 ;
 K @$$^W4PC1
 Q
 ;
 ;
PC2 N N,PRN,CHP,CHP0,%MDP,CUTPRG,NOM,TXT,PRCHP,PCCHP
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .S PRCHP=0
 .L +@$$^W4PC@(PRN):2 S PRKAV=1
 .S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,NOM)) Q:NOM=""  D
 ..K FLMN D
 ...D DEFMDP(PRN)
 ...N PRINT,pc S PRINT=PRN
 ..;
 ..I $$LINE^W4PRM,'PRKAV D KAV1(PRN)
 ..
 ..S CHP="" F  S CHP=$O(@$$^W4PC1@(PRN,NOM,CHP)) Q:CHP=""  D
 ...I CHP,$$CHILD(PRN,NOM,CHP) D PCCHP(PRN,CHP) S PRCHP=1,PCCHP(PRN)=""
 ...S N="" F  S N=$O(@$$^W4PC1@(PRN,NOM,CHP,N)) Q:N=""  S TXT=$G(^(N)) D
 ....I $$HZPCSP^W4PRM D SETPC(PRN,"")
 ....D SETPC(PRN,TXT) S PRKAV=0
 .
 .L -@$$^W4PC@(PRN)
 .I $$LINE^W4PRM,'PRKAV D KAV1(PRN)
 K @$$^W4PC1
 Q
 ;
 ;
PC3 N N,PRN,CHP,CHP0,%MDP,CUTPRG,NOM,TXT,KV,PRCHP,PCCHP
 S PRN="" F  S PRN=$O(@$$^W4PC1@(PRN)) Q:PRN=""  D
 .S PRCHP=0
 .L +@$$^W4PC@(PRN):2 S PRKAV=1
 .S KV="" F  S KV=$O(@$$^W4PC1@(PRN,KV)) Q:KV=""  D
 ..S NOM="" F  S NOM=$O(@$$^W4PC1@(PRN,KV,NOM)) Q:NOM=""  D
 ...K FLMN D
 ....D DEFMDP(PRN)
 ....N PRINT,pc S PRINT=PRN
 ...;
 ...I $$LINE^W4PRM,'PRKAV D KAV1(PRN)
 ...
 ...S CHP="" F ICHP=1:1 S CHP=$O(@$$^W4PC1@(PRN,KV,NOM,CHP)) Q:CHP=""  D
 ....I CHP,$$CHILD3(PRN,KV,NOM,CHP) D PCCHP(PRN,CHP) S PRCHP=1,PCCHP(PRN)=""
 ....S N="" F  S N=$O(@$$^W4PC1@(PRN,KV,NOM,CHP,N)) Q:N=""  S TXT=$G(^(N)) D
 .....I $$HZPCSP^W4PRM D SETPC(PRN,"")
 .....D SETPC(PRN,TXT) S PRKAV=0
 ..
 ..I $$LINE^W4PRM,'PRKAV D KAV1(PRN)
 .L -@$$^W4PC@(PRN)
 ;
 K @$$^W4PC1
 Q
 ;
 ;
CHLD(PRN,CHP) ;
 I $D(@$$^W4PC1@(PRN,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,CHP,NN)) Q:NN=""  D
 .N NN1 S NN1="" F  S NN1=$O(@$$^W4PC1@(PRN,CHP,NN,NN1)) Q:NN1=""  D
 ..I $G(^(NN1))'?.P S OK=1
 Q OK
 ;
 ;
CHILD(PRN,NOM,CHP) ;
 I $D(@$$^W4PC1@(PRN,NOM,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,NOM,CHP,NN)) Q:NN=""  I $G(^(NN))'?.P S OK=1
 Q OK
 ;
CHILD3(PRN,KV,NOM,CHP) ;
 I $D(@$$^W4PC1@(PRN,KV,NOM,CHP))<10 Q 0
 N OK S OK=0
 N NN S NN=""
 F  S NN=$O(@$$^W4PC1@(PRN,KV,NOM,CHP,NN)) Q:NN=""  I $G(^(NN))'?.P S OK=1
 Q OK
 ;
PMANA(CHP) ;
 I $G(CHP)="" Q ""
 N TXT,FMANA S TXT="",FMANA=""
 S CHP=+CHP
 I CHP>0,CHP<13 S FMANA=$$FMANA(CHP)
 I CHP="T" S TXT=$$FMANA1("zetqez")
 I $L(FMANA) S TXT=%MDP("B")_FMANA_%MDP("N")
 Q TXT
 ;
FMANA(CHP) ;
 N MANA S MANA=$$GETI^W4DEFMN(CHP)
 S MANA=$E(MANA,2,$L(MANA)-1)
 Q $$FMANA1(MANA)
 ;
FMANA1(MANA)
 N LN S LN=26 I $$OLDPC S LN=19
 N KAV S KAV=$TR($J("",(LN-$L(MANA)-2)\2*$$KFPC)," ","-")
 Q KAV_" "_MANA_" "_KAV
 ;
PCCHP(PRN,CHP,GL) ;
 I CHP["T",$$NOROMA^W4PRM Q
 S CHP=+$G(CHP)
 D DEFMDP(PRN)
 ;
 ;;Q:$G(CHP0(PRN))'?1N.N  Q:CHP0(PRN)'<CHP
 N PRINT,pc S PRINT=PRN
 ;
 I $G(@$$^W4PRM@("MANATL")),$D(PCCHP(PRN)) D
 .N pc s pc="" D HEADN
 .K PRINTF(PRINT)
 .N pc S pc="" D HEAD,HEAD1 S FLMN(PRN)=""
 .S PRINTF(PRINT)=1
 ;
 N PMANA S PMANA=$$PMANA(CHP)
 N SMB S SMB=""
 N TXT S TXT=SMB_$J("",SM)_PMANA
 ;
 I '$G(@$$^W4PRM@("MANABLKV")),PMANA'?.P D SETPC(PRN,TXT)
 Q
 ;
 ;
QNPIZZA(C) ;
 Q $$QNPZ^W4PIZZA(C)
 ;
PCCAM(C) ;
 N CM S CM=$S('$G(@$$^W4PRM@("SCANER"))!'$P(C,".",2):$J(C,2),1:$J(C,3,3))
 ;
 I $L($P(CM,".",2))=3,$P(CM,".",2) Q $J(CM,7,3)_" "
 ;
 I '$P(CM,".",2) D
 .S CM=$P(CM,".")
 .I +$TR(CM," ","")=1,$$NOQ1^W4PRM S CM="  "
 ;
 N B S B=$$B
 Q B_CM_$G(%MDP("N"))_" "
 ;
 ;
NAME(TXT,C,DL,HR) ;
 N PRTSF S PRTSF=0
 ;
 N B S B=$$B
 ;
 I B="" S DL=DL*2
 ;
 S TXT=$$SPA^%L1FRM(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"()","")
 S TXT=$$RPL^%L1FRM(TXT,")(","")
 S TXT=$$RPL^%L1FRM(TXT,"[]","")
 N ENG I $TR(TXT," ","")?.E3U.E!($TR(TXT," ","")?.U1N.N.U.N),$$SHEML^W4PRM S ENG=1
 E  S ENG=0 I $G(SUGTSF)=3 S TXT=TXT_"+"
 ;
 I $$SBR(HR),ENG S TXT=$$SPA^%L1FRM(HR)_" "_TXT
 I $$SBR(HR),'ENG S TXT=TXT_" "_$$SPA^%L1FRM(HR)
 ;
 I C>1,'ENG,$$B="" D  Q TXT
 .S TXT=" <-"_$TR($J("",DL-4-$L(TXT))," ","-")_" "_TXT
 ;
 ;;I $G(N2) S ^AA("SUGTSF",N2)=$G(SUGTSF)
 D DLG^%L1FRM(TXT,DL)
 ;
 I 'ENG D
 .S TXT=$J(%CHAST(1,1),DL)
 .I $L($G(%CHAST(1,2))) S NAME2=%CHAST(1,2)
 .I $L($G(%CHAST(1,3))) S NAME3=%CHAST(1,3)
 ;
 I ENG D
 .N CH1,CH2,CH3 S CH1=$$SPA^%L1FRM($G(%CHAST(1,1)))
 .S CH2=$$SPA^%L1FRM($G(%CHAST(1,2)))
 .S CH3=$$SPA^%L1FRM($G(%CHAST(1,3)))
 .I $L(CH3) D  Q
 ..S TXT=CH3_$J("",DL-$L(CH3)),NAME2=CH2,NAME3=CH1
 .I $L(CH2) D
 ..S TXT=CH2_$J("",DL-$L(CH2)),NAME2=CH1
 ;
 N B S B=$$B
 S TXT=B_TXT_%MDP("N")
 Q TXT
 ;
 ;
B(STAM) ;
 N B S B=""
 I $$BIGNAME^W4PRM,'$G(SUGTSF) S B=$S($$BIGNAME^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=1 S:$$BIGNMEZT^W4PRM B=$S($$BIGNMEZT^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=2 S:$$BIGNMEZA^W4PRM B=$S($$BIGNMEZA^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 I $G(SUGTSF)=3 S:$$BIGNMEZI^W4PRM B=$S($$BIGNMEZI^W4PRM=2:%MDP("BB"),1:%MDP("B")) Q B
 Q B
 ;
SHEML(CD) ;
 N SHEML S SHEML=""
 I '$$NOPCLOAZ^W4PRM S SHEML=$$SHEML^W4P(CD)
 I $L(SHEML) Q $S($P(CD,"-",2):$G(@$$^W4GL("P1SBR")@($P(CD,"-",2)))_" ",1:"")_SHEML
 Q $$SHEM^W4P(CD)_$S($P(CD,"-",2):" "_$G(@$$^W4GL("P1SBR")@($P(CD,"-",2))),1:"")
 ;
 ;
SBR(HR) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  I $$SPA^%L1FRM(^(N))=$$SPA^%L1FRM(HR) S OK=1 Q
 Q OK
 ;
 ;
MYDEV(STAM) ;
 Q $$^W4MYDVN
 ;
 ;
PCHR(HR,DLT2H,PR) ;
 N J,TXT,TXT0,PRMV,HRAV
 N PRMV,HRAV S PRMV=0,HRAV=""
 ;
 D PREPHR(HR)
 ;
 N HEB S HEB=$$HEB(HR)
 ;
 ;;M ^AA("W4HZMPC","CHAST")=%CHAST
 ;
 I HEB F J=1:1 Q:'$D(%CHAST(1,J))  D
 .N ST S ST=%CHAST(1,J) I $$HRSP^W4HZPCFN S ST=$$SP(ST)
 .S TXT=$S(J=1:$C(10),1:"")_$G(TXT0)_ST_%MDP("N") D S1
 ;
 I 'HEB F J=$O(%CHAST(1,99),-1):-1:1 D
 .I J=$O(%CHAST(1,99),-1) S TXT="" D S1
 .N ST S ST=%CHAST(1,J) I $$HRSP^W4HZPCFN S ST=$$SP(ST)
 .S TXT=TXT0_ST_%MDP("N") D S1
 ;
 I $L($G(HRAV)) S TXT=HRAV D S1
 ;;I '$D(NOSPACE) S TXT="" D S1
 Q
 ;
 ;
HEB(HR) ;
 Q $$HEB^W4HZPCFN(HR)
 ;
SP(TX)
 Q $$SP^W4HZPCFN(TX)
 ;
FBAR(PRT) ;
 N MDP S MDP=$$PRINTIG^W3PRMDP(PRT)
 I MDP'?1N.N.E Q 0
 I $$PRINT1^W4P(PRT)["xa" Q 1
 Q 0
 ;
 ;
 ;
NOPRINT(ST,UR) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@"&'$D(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@!"  Q 1
 I NOMOD["@@@"&$G(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@@"&$D(P1HZMET("ETEK"))&'$G(DBL) Q 1
 I NOMOD["@@+"&$G(DBL)&'$G(P1HZMET) Q 1
 I NOMOD["@@@+" Q 1
 Q 0
 ;
 ;
SETWASPRINT(REF,UR) ;
 N REFC S REFC=$G(@REF)
 N SMB S SMB=$$SMB(REFC)
 S UR=$G(UR)
 ;
 I $G(P1HZMET),'$G(DBL),$$NOMOD(REFC)["@@@" Q 1
 ;
 I $G(P1HZMET),'$D(P1HZMET("SHZM")),$$NOMOD(REFC,UR)'["@@!" D
 .D SETNOMOD(REF,"@@@"_SMB,UR)
 ;
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@" D SETNOMOD(REF,"@@+",UR)
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@@" D SETNOMOD(REF,"@@@+",UR)
 ;;W "REF="_REF_"  @REF="_@REF,!
 I $$NOMOD(REFC,UR)["@@" Q 1
 ;
 D SETNOMOD(REF,"@@"_$S($G(P1HZOP):"@",1:""),UR)
 Q 0
 ;
 ;
 ;
PRMANA(STAM) ;
 Q $$MANA^W4PRM
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
BEEP ;
 N TXT S TXT=$G(%MDP("BEEP")) D S2
 Q
 ;
LINETL(STAM) ;
 Q $G(@$$^W4PRM@("LINETL"))
 ;
 ;
BBNAME(STAM) ; 
 I $D(PCLP),$G(@$$^W4PRM@("BIGNAME"))=1 Q 1
 Q 0
 ;
DEFDLT2(STAM)
 N DLT2 S DLT2=$$DLTSF
 D
 .N PAR S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\") I PAR="" Q
 .I $$D^W4EZA(PAR),$$PRMANA=1 S DLT2=$$DLPAR Q
 ;
 Q DLT2
 ;
 ;
SOADIM(VL) ;
 Q $J(VL_" : micreq",$$WD)
 ;
NMSET(PAR,N2) ; 
 N NM S NM="" I $G(PAR)="" Q ""
 ;;S ^AA(HZM,"PAR")=PAR
 ;;S ^AA(HZM,"N2")=N2
 N GL S GL=$$REF^W4EZAT(PAR) I GL="" Q ""
 N SET,NSET S SET="" F  S SET=$O(@GL@(SET)) Q:SET=""  D
 .S NSET=$E(SET,2,20)
 .I $D(@$$^W4GL("P1SETA")@(NSET,N2)) S NM=$P($G(@$$^W4GL("P1SETA")@(NSET)),"\")
 Q NM 
 ;
S1 ; 
 D S1^W4HZPCFN
 Q 
 ;
S2 ; 
 D S2^W4HZPCFN
 Q 
 ;
WD(STAM) Q 39 
 ; 
SETPC(PRINT,TXT) ;
 D SETPC^W4HZPCFN($G(PRINT),$G(TXT))
 Q 
 ;
OLDPC(STAM) ;
 Q $$OLDPC^W4HZPCFN
 ;
NEWPC(STAM)
 Q '$$OLDPC^W4PRM
 ;
PCBC(TX,BB)
 D PCBC^W4HZPCFN($G(TX),$G(BB))
 Q 
 ; 
KFPC(STAM) ;
 Q $$KFPC^W4HZPCFN
 ;
PRMV(HR) ;
 Q $$PRMV^W4HZPCFN(HR)
 ;
ATTN(STAM) ; 
 Q $$ATTN^W4HZPCFN(HR)  
 ;
PREPHR(HR) ;
 D PREPHR^W4HZPCFN(HR)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMR
W4HZMR ;             [ 04.01.26 21:00 ] [ 29.12.25 13:18 ] [ 19.06.24 10:04 ] 
 N HZM,MDP,PRINT,SM
 S HZM=$G(@$$^W4MAIN("VRM0")) Q:'HZM
 ;
 ;;I $$HZM^W4MSD(HZM),$$ZAHI^W4PRM Q  ; -- 04.01.26--> COMMENT
 ;
 N FIRST,BSR S FIRST=1,BSR=0
 ;
 S MDP="" F  S MDP=$O(@$$^W4MAIN("VRM0")@(MDP)) Q:MDP=""  I MDP D
 .D ^W4MDP(MDP) S SM=0
 .
 .I $$RKZPRM  D
 ..S PRINT=$$PORT^W4P(MDP) I PRINT<-1 S PRINT=-PRINT
 .
 .I $$RKZ2MDP D
 ..S PRINT=$$PRMRKZ
 .
 .D PC(PRINT)
 ;
 ;
 I $$RKZ2MDP,'FIRST D SOFRIKUZ
 ;
 K @$$^W4MAIN("VRM0")
 Q
 ;
 ;
VRM0 S VRM0=$$^W4MAIN("VRM0")
 Q
 ;
 ;
PC(PRINT) ;
 D VRM0
 ;
 ;;S ^AA("W4HZMR-PC",PRINT)=1_"\"_$G(MDP)
 ;
 Q:$D(@VRM0@(MDP,"P"))<10
 ;;S ^AA("W4HZMR-PC",PRINT)=2
 N N1,N2,N3,NN,A,A2,A3,CD,CD2,CD3,OK,MIN,SM,TXT
 S MIN=1 I $$RKZ2MDP S MIN=0
 ;
 S N1="",OK=0 F  S N1=$O(@VRM0@(MDP,"P",N1)) Q:N1=""  I $G(^(N1))>MIN S OK=1 Q
 Q:'OK
 ;;S ^AA("W4HZMR-PC",PRINT)=3
 ;
 S SM=0
 ;
 I $$HZMRKZ^W4PRM=1 D
 .S TXT="" D S1 S TXT=%MDP("B")_"** mihixt fekix **" D S1
 .S TXT="" D S1
 .S TXT=%MDP("B")_"** "_$J(HZM,6)_" dpnfd **" D S1 S TXT="" D S1
 .D KAV
 ;
 I $$HZMRKZ^W4PRM=2 D
 .S TXT="" D S1 S TXT=%MDP("B")_"*** mihixt fekix ***" D S1
 .S TXT="" D S1 S SM=2 D KAV
 ;
 S N1="" F  S N1=$O(@VRM0@(MDP,"P",N1)) Q:N1=""  D
 .S A=$G(^(N1)),CD=$P(N1,"^") Q:A=""
 .I $G(FIRST),$$RKZ2MDP D SHP S FIRST=0
 .S TXT="" D S1
 .;
 .D LINER(CD,$G(@VRM0@(MDP,"N",N1)),+A,22)
 .
 .I $D(@VRM0@(MDP,"S",N1))>9 D  D S1
 ..S TXT="" N NN S NN=""
 ..F  S NN=$O(@VRM0@(MDP,"S",N1,NN)) Q:NN=""  S TXT=TXT_NN_","
 ..S TXT=$E(TXT,1,$L(TXT)-1)
 ;
 S TXT="" D S1
 D KAV
 ;
 I $$HZMRKZ^W4PRM=1 D SOFRIKUZ
 ;
 Q
 ;
 ;
LINER(CODP,SHEM,KAM,OFF) ; --
 I KAM S TXT=%MDP("B")_$J(KAM,2)_%MDP("N")_" <----"
 E  S TXT=$J("",10)
 S TXT=TXT_$$HBR^%L1FRM($G(SHEM),OFF)_" "
 I '$G(@$$^W4PRM@("NOHZMPAR")) S TXT=TXT_$J($P(CODP,"-"),5)
 D S1
 Q
 ;
S1 ;
 S TXT=$$CLST^%L1FRM(TXT,%MDP("B"),%MDP("N"))
 I $$L^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),%MDP("N"))>40,%MDP("GWPC")'>40 S TXT=$$RPL^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),"")
S11 Q:$G(PRINT)=""
 N PCN,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 S ST=%MDP("N")_$J("",SM)_$TR(TXT,TS0,TSS)
 S ST=$$RPL^%L1FRM(ST,$TR(%MDP("B"),TS0,TSS),%MDP("B"))
 S ST=$$RPL^%L1FRM(ST,$TR(%MDP("N"),TS0,TSS),%MDP("N"))
 S @$$^W4PC@(PRINT,PCN)=ST
ES11 K TXT Q
 ;
CUT ;
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
SHP ; 
 S PRINT=$$PRMRKZ
 D TV^W4MDP(6)
 S TXT="" D S1 S TXT=%MDP("B")_"** mihixt fekix **" D S1
 S TXT="" D S1
 S TXT=%MDP("B")_"** "_$J(HZM,6)_" dpnfd **" D S1 S TXT="" D S1
 S TXT="" D S1
 N TIME S TIME=$ZD($H,"24:60")
 S TXT=%MDP("B")_"**     "_TIME_"    **" D S1 S TXT="" D S1
 Q
 ;
PRMRKZ(STAM) ;
 Q $G(@$$^W4PRM@("HZMRKZ"))
 ;
RKZPRM(STAM) ;
 Q ($$PRMRKZ<3)
 ;
RKZ2MDP(STAM) ;
 Q ($$PRMRKZ>2)
 ;
KAV ;
 S:'$D(SM) SM=0
 N TXT S TXT=$TR($J("",$G(%MDP("GWPC"),40)-3)," ","-") D S1
 Q
 ;
SOFRIKUZ ;
 D SOFRKZ
 D CUT
 Q
 ;
SOFRKZ ;
 N TXT,SM S SM=0
 S TXT="" D S1 S TXT=$G(%MDP("B"))_"**  fekix ly seq **"_$G(%MDP("N")) D S1
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMS0
W4HZMST(HZM) ; [ 05.01.17 12:45 ] [ 04.01.17 17:02 ] [ 23.10.16 10:36 ] 
 ;
NAME(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,2)
 ;
COMP(HZM) I $G(HZM)="" Q ""
 I $L($$MAZMIN(HZM)) Q $$NAME(HZM)
 Q ""
 ;
LKHNM(HZM) I $G(HZM)="" Q ""
 I $L($$MAZMIN(HZM)) Q $$MAZMIN(HZM)
 Q $$NAME(HZM)
 ;
KTV(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,3)
 ;
CMNT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,7)
 ;
BAIT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,15)
 ;
DIRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,14)
 ;
IR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",4)
 ;
TAKEAWAY(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $TR($$IR(HZM)," ","")="TAKEAWAY"
 ;
HRAED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",6)
 ;
KOMA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,13)
 ;
CNISA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,16)
 ;
KTVM(HZM) ;
 N KTV
 I '$G(HZM) Q ""
 D GL
 N STREET,BAIT,DIRA,IR
 S STREET=$$KTV(HZM)
 S BAIT=$$BAIT(HZM)
 S DIRA=$$DIRA(HZM)
 S IR=$$IR(HZM)
 N HMFL S HMFL=BAIT I DIRA S HMFL=BAIT_"/"_DIRA
 I IR="TAKEAWAY",STREET?1N.N S KTV=$$SNIFA^W3SNIF(STREET)
 I IR="TAKEAWAY",STREET'?1N.N S KTV=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY!")
 I IR'="TAKEAWAY" S KTV=$$SPA^%L1FRM(IR)_" "_$$SPA^%L1FRM(HMFL)_" "_$$SPA^%L1FRM(STREET)
 Q KTV
 ;
PELE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",7)
 ;
TSHL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 ;
 Q $P($G(@GL),DLM,11)
 ;
CURTSHL(HZM) I $G(HZM)="" Q ""
 I '$G(JB) Q $$TSHL(HZM)
 I $$D^W3TMPORD(JB)<11 Q $$TSHL(HZM)
 Q $$TSHL^W3HZMST(JB)-$$SHNHO(HZM)
 ;
SHUL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,12)
 ;
SHULA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,17)
 ;
ITRA(HZM) ;
 N ITRA S ITRA=$$ITRARL(HZM)-$$HNH2(HZM)
 I ITRA<.05&(ITRA>-.05) S ITRA=0
 I ITRA>0.04&($$TSHL(HZM)'<0)!(ITRA<-0.04&($$TSHL(HZM)<0)) Q $J(ITRA,2,2)
 Q 0
 ;
ITRARL(HZM) ;
 N ITRA S ITRA=$$TOTORD(HZM)-$$SSHUL(HZM)-$$SHULA(HZM)+$$SODEF(HZM)+$$STIP(HZM)+$$HNH2(HZM)
 Q ITRA
 ;
NMB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM)
 ;
MSL(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)>3 Q 1
 Q 0
 ;
MSD(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)<4 Q 1
 Q 0
 ;
ZMANK(HZM) ;
 Q $$DATCB(HZM)
 ;
DATCB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,4)
 ;
TRH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,5)
 ;
SHAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,6)
 ;
SHAAT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,25)
 ;
DISCIT(HZM) I $G(HZM)="" Q ""
 N GL,SUM D GL S SUM=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GL)
 .I $E(PAR)="-",PAR["%" D
 ..S SUM=SUM+$$SUM(HZM,N,GL)
 Q -SUM
 ;
HNH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N A S A=$P($G(@GL),DLM,8)
 I A'["%" Q A
 Q $$HNHA(HZM)
 ;
HNH2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,19)
 ;
HNHALL(HZM)
 I $G(HZM)="" Q ""
 Q $$HNH(HZM)+$$HNH2(HZM)
 ;
DMSH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,9)
 ;
MAM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N MAM ;S MAM=$P($G(@GL),"\",10)
 N DTK S DTK=$$^%L1DC($$DATK(HZM),3)
 N AHMAM S AHMAM=$$MAMD^W4L(DTK)
 Q $J($$TSHL(HZM)*AHMAM/(100+AHMAM),2,2)
 ;
MKBL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $TR($J(+$P($G(@GL),DLM,18),5)," ",0)
 ;
LASTMLZ(HZM) I $G(HZM)="" Q ""
 I $G(@$$^W4GL("P1MLZ")@(HZM)) Q ^(HZM)
 Q $$MKBL(HZM)
 ;
CODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,21)
 ;
RCODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N RCODTS S RCODTS=""
 I $$MZM(HZM) S RCODTS=RCODTS_"1:"_$J($$MZM(HZM),2,2)
 I $$CHK(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"2:"_$J($$CHK(HZM),2,2)
 I $$CA(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"3:"_$J($$CA(HZM),2,2)
 I $$ASR(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"4:"_$J($$ASR(HZM),2,2)
 I $$TL(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"5:"_$J($$TL(HZM),2,2)
 Q RCODTS
 ;
HNHAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,22)
 N GL D GL
 ;
HNHA(HZM) I $G(HZM)="" Q ""
 Q $J($$TOTHN(HZM)*$$HNHAH(HZM)*.01,2,2)
 ;
HNH1(HZM) I $G(HZM)="" Q ""
 Q $$SHNH1^W4PAYVW(HZM)
 ;
LKHNH(HZM) I $G(HZM)="" Q ""
 Q $$SLKHNH^W4PAYVW(HZM)
 ;
SHNH(HZM) I $G(HZM)="" Q ""
 Q $$HNHA(HZM)+$$SHNHO(HZM)
 ;
SHNHO(HZM) I $G(HZM)="" Q ""
 Q $$HNH1(HZM)+$$LKHNH(HZM) ;;+$$IGUL(HZM)
 ;
SHNHP(HZM) I $G(HZM)="" Q ""
 N SHNHP,GL S SHNHP=0 D GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .I $$ISHNHP($$PAR(HZM,N,GL)) S SHNHP=SHNHP+$$SUM(HZM,N,GL)
 Q SHNHP
 ;
SBIT(HZM) I $G(HZM)="" Q ""
 S SBIT=0 N GL D GL
 N N S N="" F  S N=$O(@GL@("BIT",N)) Q:N=""  D
 .I $$AVAR(HZM,N) Q
 .S SBIT=SBIT+$$SUM(HZM,N,GL)+$$SUMHNHP(HZM,N)
 Q SBIT
 ;
IGUL(HZM) ;
 Q $$HNH2($G(HZM))
 ;
DMSAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,23)
 ;
SOAD(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,24)
 ;
LASTU(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,26)
 ;
DATK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,29)
 ;
HZMLAK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,30)
 ;
LKHN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N LKHN S LKHN=$P($G(@GL),DLM,27)
 I '$$^W4ISCDLK(LKHN),$$HZM^W4MSL(HZM) S LKHN=$$NMB(HZM)
 I $L(LKHN)<4 S LKHN=""
 Q LKHN
 ;
LKHN1(HZM) ;
 N LKHN S LKHN=$$LKHN(HZM)
 I LKHN="" Q ""
 Q $$LKH^W4L(LKHN)
 ;
LKHNOM(HZM) I $G(HZM)="" Q ""
 I $$LKHN(HZM) Q $$LKHN(HZM)
 I $$^W4MSL($$NMB(HZM)) Q $$NMB(HZM)
 Q ""
 ;
LKHNAME(HZM) ;
 N LKHNAME S LKHNAME=""
 I $$LKHNOM(HZM) S LKHNAME=$$LKH^W4L($$LKHNOM(HZM))
 Q LKHNAME
 ;
LL(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"LL"))
 ;
MZMNM(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MZMNM"))
 ;
EMAIL(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"EMAIL"))
 ;
MIKUD(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MIKUD"))
 ;
FAX(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"FAX"))
 ;
TELB(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"TELB"))
 ;
MZM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",2)
 ;
CHK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",3)
 ;
CA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",4)
 ;
ASR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$SAS(HZM) ;;$P($G(@GL@("CB")),"\",5)
 ;
MKRTIME(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",7)
 ;
 ;
ODEF(HZM) I $G(HZM)="" Q ""
 I $G(HZM)="" Q ""
 Q $$SODEF(HZM)  ; -- 15/06/15 *** LEV
 ;
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",8)
 ;
SODEF(HZM) I $G(HZM)="" Q ""
 N SODEF,GLORD S SODEF=$$SODEFMZ(HZM)-$$STIPVT(HZM,"MZ")
 Q SODEF  ;; --- 15.06.15 *** LEV
 ;;
 I SODEF Q SODEF
 ;
 N TSHL S TSHL=$$TSHL(HZM)
 ;
 N OD S OD=$$SSHUL(HZM)+$$SAS(HZM)-TSHL-$$TIP(HZM)-$$ODEFTL(HZM)
 I OD<0&(TSHL>0) S OD=0
 I OD>0&(TSHL<0) S OD=0
 Q OD
 ;
SODEFMZ(HZM)
 N SODEF,GLORD S SODEF=0 D GLORD
 N N S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S SODEF=SODEF+$P(A,"*",5)
 Q SODEF
 ;
STIPVT(HZM,PRMVP)
 S OKSTIPVT=0
 N STIP,GLORD S STIP=0 D GLORD
 N VP S VP="" F  S VP=$O(@GLORD@("CB",VP)) Q:VP=""  D
 .I $G(PRMVP)'="",VP'=PRMVP Q
 .N N S N="" F  S N=$O(@GLORD@("CB",VP,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I VP="MZ" S STIP=STIP+$P(A,"*",6) I $P(A,"*",6) S OKSTIPVT=1
 ..I VP="CH" S STIP=STIP+$P(A,"*",12) I $P(A,"*",12) S OKSTIPVT=1
 ..I VP="V" S STIP=STIP+$P(A,"*",27) I $P(A,"*",27) S OKSTIPVT=1
 ..I VP="ASR" S STIP=STIP+$P(A,"*",20) I $P(A,"*",20) S OKSTIPVT=1
 Q STIP
 ;
STIP(HZM) I $G(HZM)="" Q ""
 N STIP,GLORD S STIP=$$STIPVT(HZM)
 I 'OKSTIPVT S STIP=$$TIP(HZM)
 I STIP<0&($$TSHL(HZM)'<0) Q 0
 I STIP>0&($$TSHL(HZM)'>0) Q 0
 Q STIP
 ;
SSHUL(HZM) I $G(HZM)="" Q ""
 Q $$SMZ(HZM)+$$SCH(HZM)+$$SCA(HZM)+$$STL(HZM)
 ;
TL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",9)
 ;
TIP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",10)
 ;
ODEFTL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",11)
 ;
POS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",14)
 ;
POSVT(HZM,VT,IND) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB",VT,IND)),"*",26)
 ;
BSPAYCARD(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CARD"))
 ;
BSPAYNAME(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"NAME"))
 ;
BSPAYCLUB(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB"))
 ;
BSPAYCLUB1(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB1"))
 ;
BSPAYSUM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"PAID"))
 ;
BSPAYASM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"ASM"))
 ;
HESH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,20)
 ;
HSBP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("HSB"))
 ;
NCAB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\")
 ;
HSB2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("ETHB2"))
 ;
HRA2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",1)
 ;
HODAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",2)
 ;
FIRE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("FIRE"))
 ;
MAZMIN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",5)
 ;
PSL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\")
 ;
ZMANS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",2)
 ;
TM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",5)
 ;
MYCHCLIENT(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("MYCH","CLIENT"))
 ;
MKRDLV(HZM) ;
 I $G(HZM)="" Q ""
 N MKRDLV S MKRDLV=$G(@$$^W4ORD@(+HZM,"MKRDLV"))
 I MKRDLV Q MKRDLV
 N ORD S ORD=+$G(@$$^W4GL("HZLINKW")@(HZM))
 Q $P($G(@$$^W4GL("W3ORDA")@(ORD)),"~",51)
 ;
CLOSE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))
 ;
SETCLOSE(HZM,PR) I $G(HZM)="" Q
 N GL,DLM D GL
 N ITRA S ITRA=$$ITRA(HZM)
 I ITRA<-.1!(ITRA>.1) Q
 I $$CLOSE(HZM)<2 D
 .I $$SHUL(HZM)!'$$TSHL(HZM) S @GL@("S")=$G(@GL@("S"))+2 D
 ..I '($D(@$$^W4ORD@(HZM,"ETHB"))#2) D ^W4SGHB(HZM)
 .I $$SHULA(HZM) S @GL@("S")=$G(@GL@("S"))+4
 .J ^W4SNDCLS(HZM,JB) ; D ^
 .D ^W4HZSHAA
 .D ^W4GIBHZ(HZM)
 Q
 ;
CLOSECRED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))>3
 ;
CRCARDS(HZM) I $G(HZM)="" Q ""
 N N,CRCARDS S CRCARDS=""
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  I N D
 .S CRCARDS=CRCARDS_$P($G(^(N)),"*",2)_","
 Q CRCARDS
 ;
CRHZMLK(HZM) I $G(HZM)="" Q ""
 N N,CRHZMLK S CRHZMLK=$$HZMLAK(HZM)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  I N D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",7)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",12)_","
 Q CRHZMLK
 ;
SUGTS(HZM) I $G(HZM)="" Q ""
 N N,SUGTS S SUGTS=""
 N A S A=$G(@$$^W4ORD@(HZM,"CB"))
 N I F I=2:1:5 I $P(A,"\",I) S SUGTS=SUGTS_(I-1)_","
 I $P(A,"\",9) S SUGTS=SUGTS_"5,"
 Q $E(SUGTS,1,$L(SUGTS)-1)
 ;
SMZ(HZM,PART) I $G(HZM)="" Q ""
 N N,N1,SMZ S SMZ=0
 N GLORD D GLORD
 N MZ S MZ=$$MZM(HZM)+$$ODEF(HZM)
 I '$D(@GLORD@("CB","MZ")),'$G(PART) Q MZ
 I '$D(@GLORD@("CB","MZ")),$G(PART) Q $S($$POS(HZM)=PART:MZ,1:0)
 ;
 S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",4)'=PART Q
 .S SMZ=SMZ+$P(A,"*")
 .S N1=N
 ;
 I $G(PART),PART=$$POS(HZM) S SMZ=SMZ-$$ODEF(HZM)
 ;
 Q SMZ
 ;
 ;
SCH(HZM,PART) I $G(HZM)="" Q ""
 N N,SCH S SCH=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","CH",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SCH=SCH+$P(A,"*")
 Q SCH
 ;
SCA(HZM,PART) I $G(HZM)="" Q ""
 N N,SCA S SCA=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","V",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SCA=SCA+$P(A,"*",7)
 Q SCA
 ;
SAS(HZM,PART) I $G(HZM)="" Q ""
 N N,SAS S SAS=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SAS=SAS+$P(A,"*",4)
 Q SAS
 ;
STL(HZM,PART) I $G(HZM)="" Q ""
 N N,STL S STL=0
 N GLORD D GLORD
 I '$D(@GLORD@("CB","TL")) Q $P($G(@GLORD@("CB")),"\",9)
 S N="" F  S N=$O(@GLORD@("CB","TL",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S STL=STL+$P(A,"*")
 Q STL
 ;
NEWIND(HZM,VT) I $G(HZM)="" Q ""
 Q $$LASTIND(HZM,VT)+1
 ;
LASTIND(HZM,VT) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,99999),-1)
 ;
NEXTIND(HZM,VT,IND) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
 ;
SETIND(HZM,VT,IND,VL,NRZ) I $G(HZM)="" Q
 I $G(VT)=""!($G(IND)="") Q
 I $G(NRZ) S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",NRZ)=VL Q
 ;
 I $G(NRZ)?1U.E D  Q
 .N MC S MC=$$GETST^W4GTVCH(VT)
 .N II F II=1:1:$L(MC,"*") I $P(MC,"*",II)=NRZ S @$P(MC,"*",II)=VL Q
 ;
 S @$$^W4ORD@(HZM,"CB",VT,IND)=VL
 Q
 ;
DEFIND(HZM,VT,IND) I $G(HZM)="" Q ""
 I '$G(IND) Q $D(@$$^W4ORD@(HZM,"CB",VT))
 Q $D(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
SUMIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=6
 I VT="MZ"!(VT="CH") S NRZ=1
 I VT="ASR" S NRZ=4
 I '$G(NRZ) Q ""
 N SUM S SUM=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 I VT="MZ" S SUM=SUM-$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",5)
 Q SUM
 ;
TIPIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=27
 I VT="MZ" S NRZ=6
 I VT="CH" S NRZ=12
 I VT="ASR" S NRZ=20
 I '$G(NRZ)!'$G(IND) Q ""
 N TIP S TIP=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 Q TIP
 ;
SETPOS(HZM,VT,IND) I $G(HZM)="" Q ""
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",26)=$$^W4MYDVN
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",28)=$$LASTMLZ^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",29)=$H
 Q
 ;
TOCUSNAME(HZM,VT,NOM) I $G(HZM)="" Q ""
 I $G(VT)="",'$G(NOM) Q $P($G(@$$^W4ORD@(HZM,"TOCUSNAME")),"\")
 Q $P($G(@$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)),"\")
 ;
SETTOCUSNAME(HZM,VT,NOM,VL) I $G(HZM)="" Q
 I '$G(VT),'$G(NOM) S @$$^W4ORD@(HZM,"TOCUSNAME")=VL_"\"_$H
 Q:$G(VT)=""  Q:$G(NOM)=""
 I '$D(@$$^W4ORD@(HZM,"CB",VT,NOM)) Q
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)=VL_"\"_$H
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM,"MKR")=$H
 Q
 ;
HZMDEL1(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",4)
 ;
HZMDEL2(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",5)
 ;
BSCARD(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CARD"))
 ;
BSCLUB(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB"))
 ;
BSCLUB1(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB1"))
 ;
BSNAME(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NAME"))
 ;
BSASM(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","ASM"))
 ;
BSHNH(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","HNH"))
 ;
BSNKD(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKD"))
 ;
BSPAY(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","PAY"))
 ;
BSNKDPAY(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKDPAY"))
 ;
BSDEL(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","DEL"))
 ;
PAR(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\")
 ;
PAR1(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$CNWEB^%L1FRM($P($G(@GL@(I)),"\",3))
 ;
MH(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",4)
 ;
QN(HZM,I,GL) ;
 N QN
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 I I'["-" Q $P($G(@GL@(I)),"\",5)
 ;
 I $L(I,"-")=2 D
 .N CD,CDT S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .I CD=""!(CDT="") Q ""
 .S QN=$P($G(@GL@(CD,CDT)),"\",3)
 ;
 I $L(I,"-")>2 D
 .N CD,CDT,I3 S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .S I3=$P(I,"-",3)
 .I CD=""!(CDT="")!(I3="") Q ""
 .N ST S ST=$G(@GL@(CD,CDT,I3))
 .N PRTT,TSFT
 .S PRTT=$P(ST,"\"),TSFT=$P(ST,"\",4)
 .I PRTT S QN=$P(ST,"\",3)
 .E  S QN=$P(ST,"\",5)
 Q QN
 ;
 ;
MRG(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $G(@GL@("MRG",I))
 ;
ITRAST(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$QN(HZM,I,GL)-$$MRG(HZM,I,GL)
 ;
TSF(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",6)
 ;
SUM(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",7)
 ;
HRP(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",8)
 ;
AVAR(HZM,I) ;
 I $G(HZM)="" Q ""
 N AVAR S AVAR="ogleyl xa"
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",I)),"*",4)[AVAR
 ;
GLIST(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",9)
 ;
EX2KITCH(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",6)
 ;
DELPOS(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",7)
 ;
WHODEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",2)
 ;
WHODEL1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N WHO S WHO=$$WHODEL(HZM,IND)
 I WHO="" Q ""
 Q $$SHORT^W4NAME(WHO)
 ;
SIBA(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",3)
 ;
SIBA1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",4)
 ;
TIMEDEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N TM S TM=$P($G(@GL@("BIT",IND)),"*",5)
 Q $$T^%L1TIME(TM)
 ;
WHOHNH(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("HNH",IND)),"*",2)
 ;
SIBHNH(HZM,IND) ;
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",3)
 ;
SIBHNH1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",4)
 ;
MNLH(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",6)
 ;
SSUMHNHP(HZM) ;
 Q -$$SHNHP(HZM)
 ;
 N SHNHP S SHNHP=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .N CD S CD=$P(A,"\")
 .I $E(CD)'="-",CD'["%" S SHNHP=SHNHP-$$SUMHNHP(HZM,N)
 Q SHNHP
 ;
SUMHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 N ST S ST=$G(@GL@(IND+1))
 I $$ISHNHP($P(ST,"\")) Q $P(ST,"\",7)
 S ST=$G(@GL@(IND))
 N SUM S SUM=$P(ST,"\",7)
 N AH S AH=$$AHNHP(HZM,IND,GL)
 Q $J(AH*SUM*.01,2,2)
 ;
AHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 S IND=$$INDHNH(HZM,IND)
 N AH S AH=+$G(@GL@("HNH",IND))
 Q AH
 ;
NOMOD(HZM,I,CDT)
 I $G(HZM)="" Q ""
 Q $$CLOSEST(HZM,I,CDT)
 ;
CLOSEST(HZM,I,CDT)
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N OK S OK=0
 I '$G(I) Q " "
 I $L($G(CDT)) D  Q OK
 .I $G(@GL@(I,CDT))["\@@" S OK=1
 I $G(@GL@(I))["\@@" S OK=1
 Q OK
 ;
GL S GL=$$^W4GL("P1HZ")_"(HZM)",DLM="\"
 I $G(HZM),HZM>0,HZM["-" D
 .N NTS,HZMAIN S HZMAIN=+HZM,NTS=$P(HZM,"-",2)
 .S GL=$$^W4GL("P1HZ")_"("_HZMAIN_",""PART"","_NTS_")"
 .S DLM="~"
 Q
GLORD N GL,DLM D GL
 S GLORD=GL
 Q
 ;
PUT(HZM,NM,VL) ;
 I $G(HZM)="" Q
 N GL,DLM D GL
 L +@GL:1
 I NM="NMB" S $P(@GL,"\",1)=VL
 I NM="NAME" S $P(@GL,"\",2)=VL
 I NM="KTV" S $P(@GL,"\",3)=VL
 I NM="ZMANK" S $P(@GL,"\",4)=VL
 I NM="TRH" S $P(@GL,"\",5)=VL
 I NM="SHAA" S $P(@GL,"\",6)=VL
 I NM="HNH" S $P(@GL,"\",8)=VL
 I NM="DMSH" S $P(@GL,"\",9)=VL
 I NM="MAM" S $P(@GL,"\",10)=VL
 I NM="TSHL" S $P(@GL,"\",11)=VL
 I NM="SHUL" S $P(@GL,"\",12)=VL
 I NM="KOMA" S $P(@GL,"\",13)=VL
 I NM="DIRA" S $P(@GL,"\",14)=VL
 I NM="BAIT" S $P(@GL,"\",15)=VL
 I NM="CNISA" S $P(@GL,"\",16)=VL
 I NM="SHULA" S $P(@GL,"\",17)=VL
 I NM="MKBL" S $P(@GL,"\",18)=VL
 I NM="HNH2" S $P(@GL,"\",19)=VL
 I NM="HESH" S $P(@GL,"\",20)=VL
 I NM="CODTS" S $P(@GL,"\",21)=VL
 I NM="HNHAH" S $P(@GL,"\",22)=VL
 I NM="DMSAH" S $P(@GL,"\",23)=VL
 I NM="SOAD" S $P(@GL,"\",24)=VL
 I NM="LASTU" S $P(@GL,"\",26)=VL
 I NM="LKHN" S $P(@GL,"\",27)=VL
 I NM="DATK" S $P(@GL,"\",29)=VL
 I NM="HZMLAK" S $P(@GL,"\",30)=VL
 ;
 I NM="PSL" S $P(@GL@("TM"),"\",1)=VL
 I NM="ZMANS" S $P(@GL@("TM"),"\",2)=VL
 I NM="TM" S $P(@GL@("TM"),"\",5)=VL
 ;
 I NM="HRA2" S $P(@GL@("HR2"),"\\",1)=VL
 I NM="HODAA" S $P(@GL@("HR2"),"\\",2)=VL
 ;
 I NM="IR" S $P(@GL@("HR2"),"\\",4)=VL
 I NM="MAZMIN" S $P(@GL@("HR2"),"\\",5)=VL
 I NM="HRAED" S $P(@GL@("HR2"),"\\",6)=VL
 I NM="PELE" S $P(@GL@("HR2"),"\\",7)=VL
 I NM="FIRE" S @GL@("FIRE")=VL
 ;
 I NM="NCAB" S $P(@GL@("CB"),"\",1)=VL
 I NM="MZM" S $P(@GL@("CB"),"\",2)=VL
 I NM="CH" S $P(@GL@("CB"),"\",3)=VL
 I NM="CA" S $P(@GL@("CB"),"\",4)=VL
 I NM="ASR" S $P(@GL@("CB"),"\",5)=VL
 I NM="ODEF" S $P(@GL@("CB"),"\",8)=VL
 I NM="TL" S $P(@GL@("CB"),"\",9)=VL
 I NM="TIP" S $P(@GL@("CB"),"\",10)=VL
 I NM="POS" S $P(@GL@("CB"),"\",14)=VL
 ;
 I NM["," D
 .N II F II=1:1:$L(NM,",") D
 ..N NMFLD S NMFLD=$P(NM,",",II) D PUT(HZM,NMFLD,VL)
 L -@GL
 Q
 ;
TOT(HZM) ;
 I $G(HZM)="" Q 0
 N A,I,T,SUM
 S T=0
 N GL D GL
 S I="" 
 F  S I=$O(@GL@(I)) Q:I=""  I I D
 .S A=$G(^(I))
 .S SUM=$$SUM(HZM,I,GL)
 .S T=T+SUM
 Q T
 ;
TOTQN(HZM,PR) ;
 I $G(HZM)="" Q ""
 N I,T,QN,GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .S QN=$S($G(PR)=0:$P(A,"\",5),1:$$QN(HZM,I,GL))
 .I $$MSK^W4P($P(A,"\")) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .S T=T+QN
 Q T
 ;
 ;
TOTHN(HZM) ;
 N I,T,PR,PRAH S PR=0,PRAH=0
 N PARBHNH
 ;
 N GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .N SUM S SUM=$$SUM(HZM,I,GL)
 .N PAR S PAR=$$PAR(HZM,I,GL)
 .I $$ISPAR(PAR) S PRAH=0
 .I '$D(PARBHNH(PAR)) S PARBHNH(PAR)=$$PARBHNH(PAR)
 .I $$ISPAR(PAR),$G(PARBHNH(PAR)) D  Q
 ..S SUM=0,PRAH=1 I '$$TSFBHNH^W4PRM S SUM=$$TSF(HZM,I,GL),PRAH=0
 ..S T=T+SUM
 .I PAR'="",'PRAH S T=T+SUM
 Q T
 ;
TOTDMS(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N DMSH S DMSH=$$DMSH(HZM)
 ;;I $$DMSAH(HZM) S DMSH=TOT*$$DMSAH(HZM)*.01
 Q DMSH
 ;
TOTORD(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N IGUL S IGUL=$$IGUL(HZM)
 S TOT=TOT-$$SHNH(HZM)+$$TOTDMS(HZM)
 ;
 I '$$CLOSE(HZM) D
 .N TSHL,HNH2 S TSHL=TOT D ^W4IGUL
 .S IGUL=HNH2
 .D PUT(HZM,"HNH2",HNH2)
 .D PUT(HZM,"TSHL",TSHL)
 ;
 S TOT=TOT-IGUL
 Q TOT
 ;
TSTMRG(HZM) ; - SDEL = SAH QN DEL
 I $D(@$$^W4ORD@(HZM,"MRG"))>9 Q 1
 Q 0
 ;
INDHNH(HZM,IND) ;
 N ST,GL D GL
 S ST=$G(@GL@(IND))
 N CD S CD=$P(ST,"\")
 I $$ISHNHP(CD) Q IND-1
 Q IND
 ;
ISHNHP(CD) ;
 I CD?1"-"1N.N.".".N.N1"%" Q 1
 Q 0
 ;
ISPAR(CD) ;
 I CD?1N.N.".".N Q 1
 Q 0
 ;
PARBHNH(PAR) ;
 I $L($$SMB^W4BLNMVC(PAR)) Q 1
 Q 0
 ;
COLSH0(HZM,GLORD) ;
 N I S I=0
 I $G(GLORD)="" S GLORD=$$^W4ORD
 N N S N="" F  S N=$O(@GLORD@(HZM,N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GLORD_"("_HZM_")")
 .I PAR'?1N.N.".".N Q
 .I $$^W4CDSRV(PAR) Q
 .S I=I+1
 Q I
 ;
GCOUPIT(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 I $D(@GL@("GCOUP"))>9 Q 1
 Q 0
 ;
GCOUPPAYER(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERNAME"))
 ;
GCOUPTEL(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERTEL"))
 ;
GCOUPRCP(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","RECIPIENTNAME"))
 ;
GCOUPSUM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","SUM"))
 ;
GCOUPTLM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","TLM"))
 ;
WASVCBON(HZM)
 N OK S OK=0
 N N S N=999 F  S N=$O(@$$^W4ORD@(HZM,"VC",N),-1) Q:N=""  D  Q:OK
 .I $$ISDISC^WV(HZM,N) S OK=1 Q
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMS00
W4HZMST(HZM) ; [ 05.01.17 12:48 ] [ 04.01.17 16:59 ] [ 23.10.16 10:36 ] 
 ;
NAME(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,2)
 ;
COMP(HZM) I $G(HZM)="" Q ""
 I $L($$MAZMIN(HZM)) Q $$NAME(HZM)
 Q ""
 ;
LKHNM(HZM) I $G(HZM)="" Q ""
 I $L($$MAZMIN(HZM)) Q $$MAZMIN(HZM)
 Q $$NAME(HZM)
 ;
KTV(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,3)
 ;
CMNT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,7)
 ;
BAIT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,15)
 ;
DIRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,14)
 ;
IR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",4)
 ;
TAKEAWAY(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $TR($$IR(HZM)," ","")="TAKEAWAY"
 ;
HRAED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",6)
 ;
KOMA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,13)
 ;
CNISA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,16)
 ;
KTVM(HZM) ;
 N KTV
 I '$G(HZM) Q ""
 D GL
 N STREET,BAIT,DIRA,IR,KOMA
 S STREET=$$KTV(HZM)
 S BAIT=$$BAIT(HZM)
 S DIRA=$$DIRA(HZM)
 S KOMA=$$KOMA(HZM)
 S IR=$$IR(HZM)
 N HMFL S HMFL=BAIT I DIRA S HMFL=BAIT_"/"_DIRA
 I $L(KOMA),KOMA'="ihxt" S HMFL=KOMA_" 'w "_HMFL
 I IR="TAKEAWAY",STREET?1N.N S KTV=$$SNIFA^W3SNIF(STREET)
 I IR="TAKEAWAY",STREET'?1N.N S KTV=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY!")
 I IR'="TAKEAWAY" S KTV=$$SPA^%L1FRM(IR)_" "_$$SPA^%L1FRM(HMFL)_" "_$$SPA^%L1FRM(STREET)
 Q KTV
 ;
PELE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",7)
 ;
TSHL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 ;
 Q $P($G(@GL),DLM,11)
 ;
CURTSHL(HZM) I $G(HZM)="" Q ""
 I '$G(JB) Q $$TSHL(HZM)
 I $$D^W3TMPORD(JB)<11 Q $$TSHL(HZM)
 Q $$TSHL^W3HZMST(JB)-$$SHNHO(HZM)
 ;
SHUL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,12)
 ;
SHULA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,17)
 ;
ITRA(HZM) ;
 N ITRA S ITRA=$$ITRARL(HZM)-$$HNH2(HZM)
 I ITRA<.05&(ITRA>-.05) S ITRA=0
 I ITRA>0.04&($$TSHL(HZM)'<0)!(ITRA<-0.04&($$TSHL(HZM)<0)) Q $J(ITRA,2,2)
 Q 0
 ;
ITRARL(HZM) ;
 N ITRA S ITRA=$$TOTORD(HZM)-$$SSHUL(HZM)-$$SHULA(HZM)+$$SODEF(HZM)+$$STIP(HZM)+$$HNH2(HZM)
 Q ITRA
 ;
NMB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM)
 ;
MSL(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)>3 Q 1
 Q 0
 ;
MSD(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)<4 Q 1
 Q 0
 ;
ZMANK(HZM) ;
 Q $$DATCB(HZM)
 ;
DATCB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,4)
 ;
TRH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,5)
 ;
SHAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,6)
 ;
SHAAT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,25)
 ;
DISCIT(HZM) I $G(HZM)="" Q ""
 N GL,SUM D GL S SUM=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GL)
 .I $E(PAR)="-",PAR["%" D
 ..S SUM=SUM+$$SUM(HZM,N,GL)
 Q -SUM
 ;
HNH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N A S A=$P($G(@GL),DLM,8)
 I A'["%" Q A
 Q $$HNHA(HZM)
 ;
HNH2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,19)
 ;
HNHALL(HZM)
 I $G(HZM)="" Q ""
 Q $$HNH(HZM)+$$HNH2(HZM)
 ;
DMSH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,9)
 ;
MAM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N MAM ;S MAM=$P($G(@GL),"\",10)
 N DTK S DTK=$$^%L1DC($$DATK(HZM),3)
 N AHMAM S AHMAM=$$MAMD^W4L(DTK)
 Q $J($$TSHL(HZM)*AHMAM/(100+AHMAM),2,2)
 ;
MKBL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $TR($J(+$P($G(@GL),DLM,18),5)," ",0)
 ;
LASTMLZ(HZM) I $G(HZM)="" Q ""
 I $G(@$$^W4GL("P1MLZ")@(HZM)) Q ^(HZM)
 Q $$MKBL(HZM)
 ;
CODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,21)
 ;
RCODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N RCODTS S RCODTS=""
 I $$MZM(HZM) S RCODTS=RCODTS_"1:"_$J($$MZM(HZM),2,2)
 I $$CHK(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"2:"_$J($$CHK(HZM),2,2)
 I $$CA(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"3:"_$J($$CA(HZM),2,2)
 I $$ASR(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"4:"_$J($$ASR(HZM),2,2)
 I $$TL(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"5:"_$J($$TL(HZM),2,2)
 Q RCODTS
 ;
HNHAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,22)
 N GL D GL
 ;
HNHA(HZM) I $G(HZM)="" Q ""
 Q $J($$TOTHN(HZM)*$$HNHAH(HZM)*.01,2,2)
 ;
HNH1(HZM) I $G(HZM)="" Q ""
 Q $$SHNH1^W4PAYVW(HZM)
 ;
LKHNH(HZM) I $G(HZM)="" Q ""
 Q $$SLKHNH^W4PAYVW(HZM)
 ;
SHNH(HZM) I $G(HZM)="" Q ""
 Q $$HNHA(HZM)+$$SHNHO(HZM)
 ;
SHNHO(HZM) I $G(HZM)="" Q ""
 Q $$HNH1(HZM)+$$LKHNH(HZM) ;;+$$IGUL(HZM)
 ;
SHNHP(HZM) I $G(HZM)="" Q ""
 N SHNHP,GL S SHNHP=0 D GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .I $$ISHNHP($$PAR(HZM,N,GL)) S SHNHP=SHNHP+$$SUM(HZM,N,GL)
 Q SHNHP
 ;
SBIT(HZM) I $G(HZM)="" Q ""
 S SBIT=0 N GL D GL
 N N S N="" F  S N=$O(@GL@("BIT",N)) Q:N=""  D
 .I $$AVAR(HZM,N) Q
 .S SBIT=SBIT+$$SUM(HZM,N,GL)+$$SUMHNHP(HZM,N)
 Q SBIT
 ;
IGUL(HZM) ;
 Q $$HNH2($G(HZM))
 ;
DMSAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,23)
 ;
SOAD(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,24)
 ;
LASTU(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,26)
 ;
DATK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,29)
 ;
HZMLAK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,30)
 ;
LKHN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N LKHN S LKHN=$P($G(@GL),DLM,27)
 I '$$^W4ISCDLK(LKHN),$$HZM^W4MSL(HZM) S LKHN=$$NMB(HZM)
 I $L(LKHN)<4 S LKHN=""
 Q LKHN
 ;
LKHN1(HZM) ;
 N LKHN S LKHN=$$LKHN(HZM)
 I LKHN="" Q ""
 Q $$LKH^W4L(LKHN)
 ;
LKHNOM(HZM) I $G(HZM)="" Q ""
 I $$LKHN(HZM) Q $$LKHN(HZM)
 I $$^W4MSL($$NMB(HZM)) Q $$NMB(HZM)
 Q ""
 ;
LKHNAME(HZM) ;
 N LKHNAME S LKHNAME=""
 I $$LKHNOM(HZM) S LKHNAME=$$LKH^W4L($$LKHNOM(HZM))
 Q LKHNAME
 ;
LL(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"LL"))
 ;
MZMNM(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MZMNM"))
 ;
EMAIL(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"EMAIL"))
 ;
MIKUD(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MIKUD"))
 ;
FAX(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"FAX"))
 ;
TELB(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"TELB"))
 ;
MZM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",2)
 ;
CHK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",3)
 ;
CA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",4)
 ;
ASR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$SAS(HZM) ;;$P($G(@GL@("CB")),"\",5)
 ;
MKRTIME(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",7)
 ;
 ;
ODEF(HZM) I $G(HZM)="" Q ""
 I $G(HZM)="" Q ""
 Q $$SODEF(HZM)  ; -- 15/06/15 *** LEV
 ;
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",8)
 ;
SODEF(HZM) I $G(HZM)="" Q ""
 N SODEF,GLORD S SODEF=$$SODEFMZ(HZM)-$$STIPVT(HZM,"MZ")
 Q SODEF  ;; --- 15.06.15 *** LEV
 ;;
 I SODEF Q SODEF
 ;
 N TSHL S TSHL=$$TSHL(HZM)
 ;
 N OD S OD=$$SSHUL(HZM)+$$SAS(HZM)-TSHL-$$TIP(HZM)-$$ODEFTL(HZM)
 I OD<0&(TSHL>0) S OD=0
 I OD>0&(TSHL<0) S OD=0
 Q OD
 ;
SODEFMZ(HZM)
 N SODEF,GLORD S SODEF=0 D GLORD
 N N S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S SODEF=SODEF+$P(A,"*",5)
 Q SODEF
 ;
STIPVT(HZM,PRMVP)
 S OKSTIPVT=0
 N STIP,GLORD S STIP=0 D GLORD
 N VP S VP="" F  S VP=$O(@GLORD@("CB",VP)) Q:VP=""  D
 .I $G(PRMVP)'="",VP'=PRMVP Q
 .N N S N="" F  S N=$O(@GLORD@("CB",VP,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I VP="MZ" S STIP=STIP+$P(A,"*",6) I $P(A,"*",6) S OKSTIPVT=1
 ..I VP="CH" S STIP=STIP+$P(A,"*",12) I $P(A,"*",12) S OKSTIPVT=1
 ..I VP="V" S STIP=STIP+$P(A,"*",27) I $P(A,"*",27) S OKSTIPVT=1
 ..I VP="ASR" S STIP=STIP+$P(A,"*",20) I $P(A,"*",20) S OKSTIPVT=1
 Q STIP
 ;
STIP(HZM) I $G(HZM)="" Q ""
 N STIP,GLORD S STIP=$$STIPVT(HZM)
 I 'OKSTIPVT S STIP=$$TIP(HZM)
 I STIP<0&($$TSHL(HZM)'<0) Q 0
 I STIP>0&($$TSHL(HZM)'>0) Q 0
 Q STIP
 ;
SSHUL(HZM) I $G(HZM)="" Q ""
 Q $$SMZ(HZM)+$$SCH(HZM)+$$SCA(HZM)+$$STL(HZM)
 ;
TL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",9)
 ;
TIP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",10)
 ;
ODEFTL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",11)
 ;
POS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",14)
 ;
POSVT(HZM,VT,IND) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB",VT,IND)),"*",26)
 ;
BSPAYCARD(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CARD"))
 ;
BSPAYNAME(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"NAME"))
 ;
BSPAYCLUB(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB"))
 ;
BSPAYCLUB1(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB1"))
 ;
BSPAYSUM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"PAID"))
 ;
BSPAYASM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"ASM"))
 ;
HESH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,20)
 ;
HSBP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("HSB"))
 ;
NCAB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\")
 ;
HSB2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("ETHB2"))
 ;
HRA2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",1)
 ;
HODAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",2)
 ;
FIRE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("FIRE"))
 ;
MAZMIN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",5)
 ;
PSL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\")
 ;
ZMANS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",2)
 ;
TM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",5)
 ;
MYCHCLIENT(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("MYCH","CLIENT"))
 ;
MKRDLV(HZM) ;
 I $G(HZM)="" Q ""
 N ORD S ORD=+$G(@$$^W4GL("HZLINKW")@(HZM))
 Q $P($G(@$$^W4GL("W3ORDA")@(ORD)),"~",51)
 ;
CLOSE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))
 ;
SETCLOSE(HZM,PR) I $G(HZM)="" Q
 N GL,DLM D GL
 N ITRA S ITRA=$$ITRA(HZM)
 I ITRA<-.1!(ITRA>.1) Q
 I $$CLOSE(HZM)<2 D
 .I $$SHUL(HZM)!'$$TSHL(HZM) S @GL@("S")=$G(@GL@("S"))+2 D
 ..I '($D(@$$^W4ORD@(HZM,"ETHB"))#2) D ^W4SGHB(HZM)
 .I $$SHULA(HZM) S @GL@("S")=$G(@GL@("S"))+4
 .J ^W4SNDCLS(HZM,JB) ; D ^
 .D ^W4HZSHAA
 .D ^W4GIBHZ(HZM)
 Q
 ;
CLOSECRED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))>3
 ;
CRCARDS(HZM) I $G(HZM)="" Q ""
 N N,CRCARDS S CRCARDS=""
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  I N D
 .S CRCARDS=CRCARDS_$P($G(^(N)),"*",2)_","
 Q CRCARDS
 ;
CRHZMLK(HZM) I $G(HZM)="" Q ""
 N N,CRHZMLK S CRHZMLK=$$HZMLAK(HZM)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  I N D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",7)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",12)_","
 Q CRHZMLK
 ;
SUGTS(HZM) I $G(HZM)="" Q ""
 N N,SUGTS S SUGTS=""
 N A S A=$G(@$$^W4ORD@(HZM,"CB"))
 N I F I=2:1:5 I $P(A,"\",I) S SUGTS=SUGTS_(I-1)_","
 I $P(A,"\",9) S SUGTS=SUGTS_"5,"
 Q $E(SUGTS,1,$L(SUGTS)-1)
 ;
SMZ(HZM,PART) I $G(HZM)="" Q ""
 N N,N1,SMZ S SMZ=0
 N GLORD D GLORD
 N MZ S MZ=$$MZM(HZM)+$$ODEF(HZM)
 I '$D(@GLORD@("CB","MZ")),'$G(PART) Q MZ
 I '$D(@GLORD@("CB","MZ")),$G(PART) Q $S($$POS(HZM)=PART:MZ,1:0)
 ;
 S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",4)'=PART Q
 .S SMZ=SMZ+$P(A,"*")
 .S N1=N
 ;
 I $G(PART),PART=$$POS(HZM) S SMZ=SMZ-$$ODEF(HZM)
 ;
 Q SMZ
 ;
 ;
SCH(HZM,PART) I $G(HZM)="" Q ""
 N N,SCH S SCH=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","CH",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SCH=SCH+$P(A,"*")
 Q SCH
 ;
SCA(HZM,PART) I $G(HZM)="" Q ""
 N N,SCA S SCA=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","V",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SCA=SCA+$P(A,"*",7)
 Q SCA
 ;
SAS(HZM,PART) I $G(HZM)="" Q ""
 N N,SAS S SAS=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SAS=SAS+$P(A,"*",4)
 Q SAS
 ;
STL(HZM,PART) I $G(HZM)="" Q ""
 N N,STL S STL=0
 N GLORD D GLORD
 I '$D(@GLORD@("CB","TL")) Q $P($G(@GLORD@("CB")),"\",9)
 S N="" F  S N=$O(@GLORD@("CB","TL",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S STL=STL+$P(A,"*")
 Q STL
 ;
NEWIND(HZM,VT) I $G(HZM)="" Q ""
 Q $$LASTIND(HZM,VT)+1
 ;
LASTIND(HZM,VT) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,99999),-1)
 ;
NEXTIND(HZM,VT,IND) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
 ;
SETIND(HZM,VT,IND,VL,NRZ) I $G(HZM)="" Q
 I $G(VT)=""!($G(IND)="") Q
 I $G(NRZ) S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",NRZ)=VL Q
 ;
 I $G(NRZ)?1U.E D  Q
 .N MC S MC=$$GETST^W4GTVCH(VT)
 .N II F II=1:1:$L(MC,"*") I $P(MC,"*",II)=NRZ S @$P(MC,"*",II)=VL Q
 ;
 S @$$^W4ORD@(HZM,"CB",VT,IND)=VL
 Q
 ;
DEFIND(HZM,VT,IND) I $G(HZM)="" Q ""
 I '$G(IND) Q $D(@$$^W4ORD@(HZM,"CB",VT))
 Q $D(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
SUMIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=6
 I VT="MZ"!(VT="CH") S NRZ=1
 I VT="ASR" S NRZ=4
 I '$G(NRZ) Q ""
 N SUM S SUM=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 I VT="MZ" S SUM=SUM-$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",5)
 Q SUM
 ;
TIPIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=27
 I VT="MZ" S NRZ=6
 I VT="CH" S NRZ=12
 I VT="ASR" S NRZ=20
 I '$G(NRZ)!'$G(IND) Q ""
 N TIP S TIP=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 Q TIP
 ;
SETPOS(HZM,VT,IND) I $G(HZM)="" Q ""
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",26)=$$^W4MYDVN
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",28)=$$LASTMLZ^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",29)=$H
 Q
 ;
TOCUSNAME(HZM,VT,NOM) I $G(HZM)="" Q ""
 I $G(VT)="",'$G(NOM) Q $P($G(@$$^W4ORD@(HZM,"TOCUSNAME")),"\")
 Q $P($G(@$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)),"\")
 ;
SETTOCUSNAME(HZM,VT,NOM,VL) I $G(HZM)="" Q
 I '$G(VT),'$G(NOM) S @$$^W4ORD@(HZM,"TOCUSNAME")=VL_"\"_$H
 Q:$G(VT)=""  Q:$G(NOM)=""
 I '$D(@$$^W4ORD@(HZM,"CB",VT,NOM)) Q
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)=VL_"\"_$H
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM,"MKR")=$H
 Q
 ;
HZMDEL1(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",4)
 ;
HZMDEL2(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",5)
 ;
BSCARD(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CARD"))
 ;
BSCLUB(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB"))
 ;
BSCLUB1(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB1"))
 ;
BSNAME(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NAME"))
 ;
BSASM(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","ASM"))
 ;
BSHNH(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","HNH"))
 ;
BSNKD(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKD"))
 ;
BSPAY(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","PAY"))
 ;
BSNKDPAY(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKDPAY"))
 ;
BSDEL(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","DEL"))
 ;
PAR(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\")
 ;
PAR1(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$CNWEB^%L1FRM($P($G(@GL@(I)),"\",3))
 ;
MH(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",4)
 ;
QN(HZM,I,GL) ;
 N QN
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 I I'["-" Q $P($G(@GL@(I)),"\",5)
 ;
 I $L(I,"-")=2 D
 .N CD,CDT S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .I CD=""!(CDT="") Q ""
 .S QN=$P($G(@GL@(CD,CDT)),"\",3)
 ;
 I $L(I,"-")>2 D
 .N CD,CDT,I3 S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .S I3=$P(I,"-",3)
 .I CD=""!(CDT="")!(I3="") Q ""
 .N ST S ST=$G(@GL@(CD,CDT,I3))
 .N PRTT,TSFT
 .S PRTT=$P(ST,"\"),TSFT=$P(ST,"\",4)
 .I PRTT S QN=$P(ST,"\",3)
 .E  S QN=$P(ST,"\",5)
 Q QN
 ;
 ;
MRG(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $G(@GL@("MRG",I))
 ;
ITRAST(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$QN(HZM,I,GL)-$$MRG(HZM,I,GL)
 ;
TSF(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",6)
 ;
SUM(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",7)
 ;
HRP(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",8)
 ;
AVAR(HZM,I) ;
 I $G(HZM)="" Q ""
 N AVAR S AVAR="ogleyl xa"
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",I)),"*",4)[AVAR
 ;
GLIST(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",9)
 ;
EX2KITCH(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",6)
 ;
DELPOS(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",7)
 ;
WHODEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",2)
 ;
WHODEL1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N WHO S WHO=$$WHODEL(HZM,IND)
 I WHO="" Q ""
 Q $$SHORT^W4NAME(WHO)
 ;
SIBA(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",3)
 ;
SIBA1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",4)
 ;
TIMEDEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N TM S TM=$P($G(@GL@("BIT",IND)),"*",5)
 Q $$T^%L1TIME(TM)
 ;
WHOHNH(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("HNH",IND)),"*",2)
 ;
SIBHNH(HZM,IND) ;
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",3)
 ;
SIBHNH1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",4)
 ;
MNLH(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",6)
 ;
SSUMHNHP(HZM) ;
 Q -$$SHNHP(HZM)
 ;
 N SHNHP S SHNHP=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .N CD S CD=$P(A,"\")
 .I $E(CD)'="-",CD'["%" S SHNHP=SHNHP-$$SUMHNHP(HZM,N)
 Q SHNHP
 ;
SUMHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 N ST S ST=$G(@GL@(IND+1))
 I $$ISHNHP($P(ST,"\")) Q $P(ST,"\",7)
 S ST=$G(@GL@(IND))
 N SUM S SUM=$P(ST,"\",7)
 N AH S AH=$$AHNHP(HZM,IND,GL)
 Q $J(AH*SUM*.01,2,2)
 ;
AHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 S IND=$$INDHNH(HZM,IND)
 N AH S AH=+$G(@GL@("HNH",IND))
 Q AH
 ;
NOMOD(HZM,I,CDT)
 I $G(HZM)="" Q ""
 Q $$CLOSEST(HZM,I,CDT)
 ;
CLOSEST(HZM,I,CDT)
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N OK S OK=0
 I '$G(I) Q " "
 I $L($G(CDT)) D  Q OK
 .I $G(@GL@(I,CDT))["\@@" S OK=1
 I $G(@GL@(I))["\@@" S OK=1
 Q OK
 ;
GL S GL=$$^W4GL("P1HZ")_"(HZM)",DLM="\"
 I $G(HZM),HZM>0,HZM["-" D
 .N NTS,HZMAIN S HZMAIN=+HZM,NTS=$P(HZM,"-",2)
 .S GL=$$^W4GL("P1HZ")_"("_HZMAIN_",""PART"","_NTS_")"
 .S DLM="~"
 Q
GLORD N GL,DLM D GL
 S GLORD=GL
 Q
 ;
PUT(HZM,NM,VL) ;
 I $G(HZM)="" Q
 N GL,DLM D GL
 L +@GL:1
 I NM="NMB" S $P(@GL,"\",1)=VL
 I NM="NAME" S $P(@GL,"\",2)=VL
 I NM="KTV" S $P(@GL,"\",3)=VL
 I NM="ZMANK" S $P(@GL,"\",4)=VL
 I NM="TRH" S $P(@GL,"\",5)=VL
 I NM="SHAA" S $P(@GL,"\",6)=VL
 I NM="HNH" S $P(@GL,"\",8)=VL
 I NM="DMSH" S $P(@GL,"\",9)=VL
 I NM="MAM" S $P(@GL,"\",10)=VL
 I NM="TSHL" S $P(@GL,"\",11)=VL
 I NM="SHUL" S $P(@GL,"\",12)=VL
 I NM="KOMA" S $P(@GL,"\",13)=VL
 I NM="DIRA" S $P(@GL,"\",14)=VL
 I NM="BAIT" S $P(@GL,"\",15)=VL
 I NM="CNISA" S $P(@GL,"\",16)=VL
 I NM="SHULA" S $P(@GL,"\",17)=VL
 I NM="MKBL" S $P(@GL,"\",18)=VL
 I NM="HNH2" S $P(@GL,"\",19)=VL
 I NM="HESH" S $P(@GL,"\",20)=VL
 I NM="CODTS" S $P(@GL,"\",21)=VL
 I NM="HNHAH" S $P(@GL,"\",22)=VL
 I NM="DMSAH" S $P(@GL,"\",23)=VL
 I NM="SOAD" S $P(@GL,"\",24)=VL
 I NM="LASTU" S $P(@GL,"\",26)=VL
 I NM="LKHN" S $P(@GL,"\",27)=VL
 I NM="DATK" S $P(@GL,"\",29)=VL
 I NM="HZMLAK" S $P(@GL,"\",30)=VL
 ;
 I NM="PSL" S $P(@GL@("TM"),"\",1)=VL
 I NM="ZMANS" S $P(@GL@("TM"),"\",2)=VL
 I NM="TM" S $P(@GL@("TM"),"\",5)=VL
 ;
 I NM="HRA2" S $P(@GL@("HR2"),"\\",1)=VL
 I NM="HODAA" S $P(@GL@("HR2"),"\\",2)=VL
 ;
 I NM="IR" S $P(@GL@("HR2"),"\\",4)=VL
 I NM="MAZMIN" S $P(@GL@("HR2"),"\\",5)=VL
 I NM="HRAED" S $P(@GL@("HR2"),"\\",6)=VL
 I NM="PELE" S $P(@GL@("HR2"),"\\",7)=VL
 I NM="FIRE" S @GL@("FIRE")=VL
 ;
 I NM="NCAB" S $P(@GL@("CB"),"\",1)=VL
 I NM="MZM" S $P(@GL@("CB"),"\",2)=VL
 I NM="CH" S $P(@GL@("CB"),"\",3)=VL
 I NM="CA" S $P(@GL@("CB"),"\",4)=VL
 I NM="ASR" S $P(@GL@("CB"),"\",5)=VL
 I NM="ODEF" S $P(@GL@("CB"),"\",8)=VL
 I NM="TL" S $P(@GL@("CB"),"\",9)=VL
 I NM="TIP" S $P(@GL@("CB"),"\",10)=VL
 I NM="POS" S $P(@GL@("CB"),"\",14)=VL
 ;
 I NM["," D
 .N II F II=1:1:$L(NM,",") D
 ..N NMFLD S NMFLD=$P(NM,",",II) D PUT(HZM,NMFLD,VL)
 L -@GL
 Q
 ;
TOT(HZM) ;
 I $G(HZM)="" Q 0
 N A,I,T,SUM
 S T=0
 N GL D GL
 ;
 S I=""
 F  S I=$O(@GL@(I)) Q:I=""  I I D
 .S A=$G(^(I))
 .S SUM=$$SUM(HZM,I,GL)
 .S T=T+SUM
 Q T
 ;
TOTQN(HZM,PR) ;
 I $G(HZM)="" Q ""
 N I,T,QN,GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .S QN=$S($G(PR)=0:$P(A,"\",5),1:$$QN(HZM,I,GL))
 .I $$MSK^W4P($P(A,"\")) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .S T=T+QN
 Q T
 ;
 ;
TOTHN(HZM) ;
 N I,T,PR,PRAH S PR=0,PRAH=0
 N PARBHNH
 ;
 N GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .N SUM S SUM=$$SUM(HZM,I,GL)
 .N PAR S PAR=$$PAR(HZM,I,GL)
 .I $$ISPAR(PAR) S PRAH=0
 .I '$D(PARBHNH(PAR)) S PARBHNH(PAR)=$$PARBHNH(PAR)
 .I $$ISPAR(PAR),$G(PARBHNH(PAR)) D  Q
 ..S SUM=0,PRAH=1 I '$$TSFBHNH^W4PRM S SUM=$$TSF(HZM,I,GL),PRAH=0
 ..S T=T+SUM
 .I PAR'="",'PRAH S T=T+SUM
 Q T
 ;
TOTDMS(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N DMSH S DMSH=$$DMSH(HZM)
 ;;I $$DMSAH(HZM) S DMSH=TOT*$$DMSAH(HZM)*.01
 Q DMSH
 ;
TOTORD(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N IGUL S IGUL=$$IGUL(HZM)
 S TOT=TOT-$$SHNH(HZM)+$$TOTDMS(HZM)
 ;
 I '$$CLOSE(HZM) D
 .N TSHL,HNH2 S TSHL=TOT D ^W4IGUL
 .S IGUL=HNH2
 .D PUT(HZM,"HNH2",HNH2)
 .D PUT(HZM,"TSHL",TSHL)
 ;
 S TOT=TOT-IGUL
 Q TOT
 ;
TSTMRG(HZM) ; - SDEL = SAH QN DEL
 I $D(@$$^W4ORD@(HZM,"MRG"))>9 Q 1
 Q 0
 ;
INDHNH(HZM,IND) ;
 N ST,GL D GL
 S ST=$G(@GL@(IND))
 N CD S CD=$P(ST,"\")
 I $$ISHNHP(CD) Q IND-1
 Q IND
 ;
ISHNHP(CD) ;
 I CD?1"-"1N.N.".".N.N1"%" Q 1
 Q 0
 ;
ISPAR(CD) ;
 I CD?1N.N.".".N Q 1
 Q 0
 ;
PARBHNH(PAR) ;
 I $L($$SMB^W4BLNMVC(PAR)) Q 1
 Q 0
 ;
COLSH0(HZM,GLORD) ;
 N I S I=0
 I $G(GLORD)="" S GLORD=$$^W4ORD
 N N S N="" F  S N=$O(@GLORD@(HZM,N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GLORD_"("_HZM_")")
 .I PAR'?1N.N.".".N Q
 .I $$^W4CDSRV(PAR) Q
 .S I=I+1
 Q I
 ;
GCOUPIT(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 I $D(@GL@("GCOUP"))>9 Q 1
 Q 0
 ;
GCOUPPAYER(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERNAME"))
 ;
GCOUPTEL(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERTEL"))
 ;
GCOUPRCP(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","RECIPIENTNAME"))
 ;
GCOUPSUM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","SUM"))
 ;
GCOUPTLM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","TLM"))
 ;
WASVCBON(HZM)
 N OK S OK=0
 N N S N=999 F  S N=$O(@$$^W4ORD@(HZM,"VC",N),-1) Q:N=""  D  Q:OK
 .I $$ISDISC^WV(HZM,N) S OK=1 Q
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMST
W4HZMST(HZM) ; [ 15.09.26 10:26 ] [ 14.09.26 14:22 ] [ 16.07.26 18:12 ] 
 ;
NAME(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,2)
 ;
HZMAIN(HZM)
 N HZMAIN S HZMAIN=""
 I HZM>0,HZM'["-" Q +HZM
 I HZM>0,HZM["-" Q +HZM
 I HZM<0 S HZMAIN=+$G(@$$^W4ORD@(HZM,"ORDNOM"))
 Q HZMAIN
 ;
COMP(HZM) I $G(HZM)="" Q ""
 N MAZMIN S MAZMIN=$$SPA^%L1FRM($$MAZMIN(HZM))
 N NAME S NAME=$$SPA^%L1FRM($$NAME(HZM))
 I $L(MAZMIN),MAZMIN'=NAME Q NAME
 ;;I $L($$MAZMIN(HZM)),$$COMP^W3PRM Q $$NAME(HZM)
 Q ""
 ;
LKHNM(HZM) I $G(HZM)="" Q ""
 I $L($$MAZMIN(HZM)) Q $$MAZMIN(HZM)
 Q $$NAME(HZM)
 ;
KTV(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N ST S ST=$P($G(@GL),DLM,3)
 Q $TR(ST,"\*","/X")
 ;
HRA(HZM) ;
 N CMNT S CMNT=$$CMNT(HZM)
 N HRAED S HRAED=$$HRAED(HZM)
 I $$POOLED(HZM) S HRAED=HRAED_" <<zfkexn dpnfd>>"
 N HRA S HRA=""
 S CMNT=$$CLRDLM^%L1FRM(CMNT,"{","}")
 S CMNT=$$CLRDLM^%L1FRM(CMNT,"}","{")
 D
 .I $L(CMNT),$L(HRAED) S HRA=CMNT_" [ "_HRAED_" ]" Q
 .I '$L(HRAED) S HRA=CMNT
 .I '$L(CMNT) S HRA=HRAED
 Q HRA
 ;
CMNT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$SPA^%L1FRM($P($G(@GL),DLM,7))
 ;
BAIT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,15)
 ;
DIRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM,DIRA D GL
 S DIRA=$P($G(@GL),DLM,14)
 Q $E(DIRA,1,7)
 ;
IR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$SPA^%L1FRM($P($G(@GL@("HR2")),"\\",4))
 ;
TAKEAWAY(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N IR S IR=$TR($$IR(HZM)," .","")
 N KTV S KTV=$TR($$KTV(HZM)," .","")
 I IR="TAKEAWAY"!(IR="TAW") Q 1
 I KTV="TAKEAWAY"!(KTV="TAW") Q 1
 I KTV["zgwle`eai" Q 1
 I KTV["invrseqi`" Q 1
 I IR="",KTV="",$$HZM^W4MSL(HZM) Q 1  ; -- 12.4.21 LEV
 Q 0
 ;
AZOR(HZM) ;
 N MAP,AZOR
 S AZOR=$G(@$$^W4ORD@(HZM,"AZRPLGN"))
 S MAP=$P(AZOR,";"),AZOR=$P(AZOR,";",2)
 I AZOR="" D
 .N COUNTRY,CITY,STREET,HOME
 .S COUNTRY=$$COUNTRY^W3R($$GETP^%W1PRM("MSD"))
 .S CITY=$$IR(HZM)
 .S STREET=$$KTV(HZM)
 .S HOME=$$BAIT(HZM)
 .S AZOR=$$AZOR^W3AZR(COUNTRY,CITY,STREET,HOME)
 Q AZOR
 ;
HRAED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N ST S ST=$P($G(@GL@("HR2")),"\\",6)
 S ST=$$SP1^%L1FRM(ST)
 I ST["NULL :" S ST=$$RPL^%L1FRM(ST,"NULL :","")
 Q ST
 ;
KOMA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,13)
 ;
CNISA(HZM) I $G(HZM)="" Q ""
 N GL,DLM,CNISA D GL
 S CNISA=$P($G(@GL),DLM,16)
 N DIRA,BAIT
 S BAIT=$$BAIT(HZM)
 S DIRA=$$DIRA(HZM)
 ; 
 N LK S LK=$$NMB^W4HZMST(HZM)
 I $$^W4MSL(LK),CNISA?." ",BAIT=$$BAIT^W4L(LK),DIRA=$$DIRA^W4L(LK) D
 .S CNISA=$$CNISA^W4L(LK)
 Q CNISA
 ;
KTVM(HZM,NOIR) ;
 N KTV
 I '$G(HZM) Q ""
 D GL
 N STREET,BAIT,DIRA,IR,KOMA,MIKUD
 S STREET=$$KTV(HZM)
 S BAIT=$$BAIT(HZM)
 S DIRA=$$DIRA(HZM)
 S KOMA=$$KOMA(HZM)
 S IR=$$IR(HZM)
 S MIKUD=$$MIKUD(HZM)
 ;
 I $TR(IR," .","")="TAKEAWAY"!($TR(IR," .","")="TAW") Q "zgwl e`eai"
 ;
 N HMFL S HMFL=$E(BAIT,1,7) I DIRA S HMFL=$E(BAIT,1,7)_"/"_$E(DIRA,1,7)
 I $L(KOMA),KOMA'="ihxt",$G(NOIR)<2 S HMFL=KOMA_" 'w "_HMFL
 N CN S CN=$$CNISA(HZM) I $L(CN),$G(NOIR)<2 S HMFL=CN_" 'k "_HMFL
 ;
 I IR="TAKEAWAY",STREET?1N.N S KTV=$$SNIFA^W3SNIF(STREET)
 I IR="TAKEAWAY",STREET'?1N.N S KTV=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY!")
 ;
 I IR'="TAKEAWAY" D
 .S KTV=""
 .I '$G(NOIR) S KTV=$S($L(MIKUD):MIKUD_" , ",1:"")
 .I $G(NOIR)<1,$L($G(IR)) S KTV=KTV_$$SPA^%L1FRM(IR)
 .S KTV=KTV_" "_$$SPA^%L1FRM(HMFL)_" "_$$SPA^%L1FRM(STREET)
 ;
 S KTV=$$CLRDLM^%L1FRM(KTV,"&#",";")
 ;
 Q KTV
 ;
PELE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N PELE S PELE=$P($G(@GL@("HR2")),"\\",7)
 N LKHN S LKHN=$$LKHN(HZM)
 I PELE="",$L(LKHN)>3,LKHN'=$$NMBKSK^W4KIOSKO,'$D(MAIL2SMS) S PELE=$$PELE^W4L(LKHN)
 Q PELE
 ;
TSHL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,11)
 ;
CURTSHL(HZM) I $G(HZM)="" Q ""
 Q $$TSHL(HZM)
 ;;I '$G(JB) Q $$TSHL(HZM)
 ;;I $$D^W3TMPORD(JB)<11 Q $$TSHL(HZM)
 ;;Q $$TSHL^W3HZMST(JB)-$$SHNHO(HZM)
 ;
TSHSTAGE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("TSHSTAGE"))
 ;
SHUL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,12)
 ;
SHULA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,17)
 ;
ITRA(HZM,NOCOMP) ;
 N ITRA S ITRA=$$ITRARL(HZM,$G(NOCOMP))-$$HNH2(HZM)
 I ITRA<.05&(ITRA>-.05) S ITRA=0
 I $$NOCLDLVZ^W4PRM Q $J(ITRA,2,2)
 I ITRA>0.04&($$TSHL(HZM)'<0)!(ITRA<-0.04&($$TSHL(HZM)<0)) Q $J(ITRA,2,2)
 Q 0
 ;
ITRARL(HZM,NOCOMP) ;
 N TOPAY ;;S TOPAY=$$TOTORD(HZM) ; -- 24/06/21
 ;;I $$CLOSE(HZM) S TOPAY=$$TSHL(HZM) ; -- 24/06/21 --> CMNT
 I '$$CLOSE(HZM),'$G(NOCOMP) D ^W4CALC(HZM) ; -- 18/11/21
 S TOPAY=$$TSHL(HZM)
 N ITRA S ITRA=TOPAY-$$SSHUL(HZM)-$$SHULA(HZM)+$$STIP(HZM)+$$HNH2(HZM)
 Q ITRA
 ;
NMB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM)
 ;
MSL(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)>3 Q 1
 Q 0
 ;
MSD(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)<4 Q 1
 Q 0
 ;
MSDHZM(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 N MSD S MSD=+$G(@GL@("MSD")) I MSD Q MSD
 S MSD=$P($G(@GL@("HR2")),"\\",3) I MSD Q MSD
 Q $P($G(@GL@("DBF")),"\",3)
 ;
ZMANK(HZM) ;
 Q $$DATCB(HZM)
 ;
DATCB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,4)
 ;
TRH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,5)
 ;
SHAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,6)
 ;
ADSHAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("ADSHAA")),"\")
 ;
MEADSHAA(HZM) ;
 Q $$SHAA(HZM)_" - "_$$ADSHAA(HZM)
 ;
SHAAT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,25)
 ;
DISCIT(HZM) I $G(HZM)="" Q ""
 N GL,SUM D GL S SUM=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GL)
 .I $E(PAR)="-",PAR["%" D
 ..S SUM=SUM+$$SUM(HZM,N,GL)
 Q -SUM
 ;
HNH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N HNHAH S HNHAH=$$HNHAH(HZM)
 N HNH S HNH=$P($G(@GL),DLM,8)
 I HNHAH'?1N.E,HNH'["%" Q HNH
 Q $$SHNH(HZM)
 ;
HNH2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,19)
 ;
HNHALL(HZM)
 I $G(HZM)="" Q ""
 Q $$HNH(HZM)+$$HNH2(HZM)
 ;
DMSH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,9)
 ;
AHMAM(HZM) ;
 N DTK S DTK=$$^%L1DC($$DATK(HZM),3)
 N AHMAM S AHMAM=$$MAMD^W4L(DTK)
 Q AHMAM
 ;
MAM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N MAM,AHMAM
 N AHMAM S AHMAM=$$AHMAM(HZM)
 Q $J($$TSHL(HZM)*AHMAM/(100+AHMAM),2,2)
 ;
MKBL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $TR($J(+$P($G(@GL),DLM,18),5)," ",0)
 ;
LASTMLZ(HZM) I $G(HZM)="" Q ""
 I $G(@$$^W4GL("P1MLZ")@(HZM)) Q ^(HZM)
 Q $$MKBL(HZM)
 ;
CODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,21)
 ;
RCODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N RCODTS S RCODTS=""
 I $$MZM(HZM) S RCODTS=RCODTS_"1:"_$J($$MZM(HZM),2,2)
 I $$CHK(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"2:"_$J($$CHK(HZM),2,2)
 I $$CA(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"3:"_$J($$CA(HZM),2,2)
 I $$ASR(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"4:"_$J($$ASR(HZM),2,2)
 I $$TL(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"5:"_$J($$TL(HZM),2,2)
 Q RCODTS
 ;
HNHAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 I HZM>0,HZM["-" Q $P($G(@$$^W4ORD@(+HZM)),"\",22)
 ;
 N HNHAH S HNHAH="-"
 I HZM<0 D  I HNHAH'="-" Q HNHAH 
 .N HZMAIN S HZMAIN=$$HZMAIN(+HZM) Q:'HZMAIN 
 .S HNHAH=$P($G(@$$^W4ORD@(HZMAIN)),"\",22)
 ;
 Q $P($G(@GL),DLM,22)
 N GL D GL
 ;
 ;
HNHA(HZM) I $G(HZM)="" Q ""
 Q $J($$TOTHN(HZM)*$$HNHAH(HZM)*.01,2,2)
 ;
HNH1(HZM) I $G(HZM)="" Q ""
 Q $$SHNH1^W4PAYVW(HZM)
 ;
LKHNH(HZM) I $G(HZM)="" Q ""
 Q $$SLKHNH^W4PAYVW(HZM)
 ;
SHNH(HZM) I $G(HZM)="" Q ""
 Q $$HNHA(HZM)+$$SHNHO(HZM)
 ;
SHNHO(HZM) I $G(HZM)="" Q ""
 Q $$HNH1(HZM)+$$LKHNH(HZM) ;;+$$IGUL(HZM)
 ;
SHNHP(HZM) I $G(HZM)="" Q ""
 N SHNHP,GL S SHNHP=0 D GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .I $$ISHNHP($$PAR(HZM,N,GL)) S SHNHP=SHNHP+$$SUM(HZM,N,GL)
 Q SHNHP
 ;
SBIT(HZM) I $G(HZM)="" Q ""
 S SBIT=0 N GL D GL
 N N S N="" F  S N=$O(@GL@("BIT",N)) Q:N=""  D
 .I $$AVAR(HZM,N) Q
 .S SBIT=SBIT+$$SUM(HZM,N,GL)+$$SUMHNHP(HZM,N)
 Q SBIT
 ;
IGUL(HZM) ;
 Q $$HNH2($G(HZM))
 ;
DMSAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,23)
 ;
SOAD(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,24)
 ;
LASTU(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,26)
 ;
LASTUPD(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $O(@GL@("SVTIME1",""),-1)
 ;
DATK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N DATK S DATK=$P($G(@GL),DLM,29)
 ;
 I DATK="",$D(@$$^W4GL("W4LINK")@(HZM)) D
 .N DT,A S A=$G(^(HZM)),DT=$P(A,"~",6)
 .I DT="" S DT=$$^W4DZ
 .S DATK=$ZD(DT,"DD.MM.YY")
 ;
 Q DATK ;
 ;
 ;
HZMLAK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N ASM S ASM=$P($G(@GL),DLM,30)
 Q ASM
 ;
HZMLAKNOM(HZM) ;
 N HZL S HZL=$G(@$$^W4ORD@(HZM,"HZMLAK"))
 Q HZL
 ;
HZLAKNOM(HZM) ;
 N HZL S HZL=$P($$HZMLAKNOM(HZM),"^")
 Q HZL
 ;
HZLAKNOM2(HZM) ;
 N HZL S HZL=$P($$HZMLAKNOM(HZM),"^",2)
 Q HZL
 ;
MKRNOM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N ASM S ASM=$P($G(@GL),DLM,33)
 Q ASM
 ;
LKHN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N LKHN S LKHN=$P($G(@GL),DLM,27)
 I '$$^W4ISCDLK(LKHN),$$HZM^W4MSL(HZM) S LKHN=$$NMB(HZM)
 I $L(LKHN)<4 S LKHN=""
 Q LKHN
 ;
LKHN1(HZM) ;
 N LKHN S LKHN=$$LKHN(HZM)
 I LKHN="" Q ""
 Q $$LKH^W4L(LKHN)
 ;
LKHNOM(HZM) I $G(HZM)="" Q ""
 I $$LKHN(HZM) Q $$LKHN(HZM)
 I $$^W4MSL($$NMB(HZM)) Q $$NMB(HZM)
 Q ""
 ;
LKHNAME(HZM) ;
 N LKHNAME S LKHNAME=""
 I $$LKHNOM(HZM) S LKHNAME=$$LKH^W4L($$LKHNOM(HZM))
 Q LKHNAME
 ;
POOLED(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"POOLED"))
 ;
KINDORD(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"KINDORD"))
 ;
MYDISC(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MYDISC"))
 ;
LL(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"LL"))
 ;
MZMNM(HZM) I $G(HZM)="" Q ""
 N MAZM S MAZM=$G(@$$^W4ORD@(HZM,"MZMNM"))
 I $$HZM^W4MSL(HZM) S MAZM=$$MAZMIN(HZM)
 Q $$SPA^%L1FRM(MAZM)
 ;
EMAIL(HZM) I $G(HZM)="" Q ""
 N EMAIL S EMAIL=$P($G(@$$^W4ORD@(HZM,"EMAIL")),"~")
 S EMAIL=$$FUNC^%UCASE(EMAIL)
 Q EMAIL
 ;
EMAILTIME(HZM) I $G(HZM)="" Q ""
 N TIME S TIME=$P($G(@$$^W4ORD@(HZM,"EMAIL")),"~",2) Q TIME
 ;
EMAILTRY(HZM) ;
 Q $P($P($G(@$$^W4ORD@(HZM,"DBF")),"\",10),"~")
 ;
EMAILTRYTM(HZM) ;
 Q $P($P($G(@$$^W4ORD@(HZM,"DBF")),"\",10),"~",3)
 ;
EMAILERR(HZM) ;
 Q $P($P($G(@$$^W4ORD@(HZM,"DBF")),"\",10),"~",2)
 ;
MIKUD(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MIKUD"))
 ;
FAX(HZM) I $G(HZM)="" Q ""
 N FAX S FAX=$P($G(@$$^W4ORD@(HZM,"FAX")),"~") Q FAX
 ;
FAXTIME(HZM) I $G(HZM)="" Q ""
 N TIME S TIME=$P($G(@$$^W4ORD@(HZM,"FAX")),"~",2) Q TIME
 ;
FAXTRY(HZM) ;
 Q $P($P($G(@$$^W4ORD@(HZM,"DBF")),"\",4),"~")
 ;
FAXTRYTM(HZM) ;
 Q $P($P($G(@$$^W4ORD@(HZM,"DBF")),"\",4),"~",3)
 ;
FAXERR(HZM) ;
 Q $P($P($G(@$$^W4ORD@(HZM,"DBF")),"\",4),"~",2)
 ;
FAXTIMETRY(HZM) I $G(HZM)="" Q ""
 Q $P($G(@$$^W4ORD@(HZM,"DBF")),"\",2)
 ;
TELB(HZM) I $G(HZM)="" Q ""
 N TELB
 S TELB=$G(@$$^W4ORD@(HZM,"TELB"))
 S TELB=$TR(TELB,"CMNT","") I TELB Q TELB
 N CODE S CODE=$$NMB(HZM) I $L(CODE)<4 Q TELB
 I $$TELEPHONE^W4PRM,$$TELB^W3L(CODE) S TELB=$$TELB^W3L(CODE)
 I 'TELB,$$TELB^W4L(CODE) S TELB=$$TELB^W4L(CODE)
 I 'TELB S TELB=CODE
 Q TELB
 ;
VIDU(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("VIDU")),"\")
 ;
VIDUHRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("VIDU")),"\",2)
 ;
READY(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("READY")),"\")
 ;
READYHRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("READY")),"\",2)
 ;
TAKED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TAKED")),"\")
 ;
TAKEDHRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TAKED")),"\",2)
 ;
PREP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("PREP")),"\")
 ;
SUPPLIED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("SUPPLIED")),"\")
 ;
SUPPLIEDHRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("SUPPLIED")),"\",2)
 ;
MZM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",2)
 ;
CHK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",3)
 ;
CA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",4)
 ;
GIFT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N GIFT S GIFT=0
 I '$$PAPJ^W4PRM Q 0
 N N S N="" F  S N=$O(@GL@("CB","V",N)) Q:N=""  D
 .N A S A=$G(^(N)) I $P(A,"*")="$V7" D
 ..S GIFT=GIFT+$P(A,"*",7)
 Q GIFT
 ;
ASR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$SAS(HZM) ;;$P($G(@GL@("CB")),"\",5)
 ;
MKRTIME(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",7)
 ;
WEBORD(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$HZMLAK(HZM)?1"W"1N.N
 ;
ODEF(HZM) I $G(HZM)="" Q ""
 I $G(HZM)="" Q ""
 Q $$SODEF(HZM)  ; -- 15/06/15 *** LEV
 ;
SODEF(HZM) I $G(HZM)="" Q ""
 N SODEF,GLORD S SODEF=$$SODEFMZ(HZM)-$$STIPVT(HZM,"MZ")
 Q SODEF  ;; --- 15.06.15 *** LEV
 ;
SODEFMZ(HZM)
 N SODEF,GLORD S SODEF=0 D GLORD
 N N S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S SODEF=SODEF+$P(A,"*",5)
 Q SODEF
 ;
STIPVT(HZM,PRMVP)
 S OKSTIPVT=0
 N STIP,GLORD S STIP=0 D GLORD
 N VP S VP="" F  S VP=$O(@GLORD@("CB",VP)) Q:VP=""  D
 .I $G(PRMVP)'="",VP'=PRMVP Q
 .N N S N="" F  S N=$O(@GLORD@("CB",VP,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I VP="MZ" S STIP=STIP+$P(A,"*",6) I $P(A,"*",6) S OKSTIPVT=1
 ..I VP="CH" S STIP=STIP+$P(A,"*",12) I $P(A,"*",12) S OKSTIPVT=1
 ..I VP="V" S STIP=STIP+$P(A,"*",27) I $P(A,"*",27) S OKSTIPVT=1
 ..I VP="ASR" S STIP=STIP+$P(A,"*",20) I $P(A,"*",20) S OKSTIPVT=1
 Q STIP
 ;
STIP(HZM) I $G(HZM)="" Q ""
 N STIP,GLORD S STIP=$$STIPVT(HZM)
 I 'OKSTIPVT S STIP=$$TIP(HZM)
 I STIP<0&($$TSHL(HZM)>0) Q 0
 I STIP>0&($$TSHL(HZM)<0) Q 0
 Q STIP
 ;
SSHUL(HZM) I $G(HZM)="" Q ""
 N SUM S SUM=$$SMZ(HZM)+$$SCH(HZM)+$$SCA(HZM)+$$STL(HZM)-$$SODEF(HZM)
 Q SUM
 ;
HASPARTS(HZM)
 Q ($D(@$$^W4ORD@(HZM,"PART"))>9)
 ;
WASPAYPART(HZM)
 I $G(HZM)="" Q 0
 N OK S OK=0
 N TS
 S TS="" F  S TS=$O(@$$^W4ORD@(HZM,"PART",TS)) Q:TS=""  D  Q:OK
 .I $D(@$$^W4ORD@(HZM,"PART",TS,"CB")) S OK=1
 Q OK
 ;
TL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",9)
 ;
TIP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",10)
 ;
ODEFTL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",11)
 ;
POS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",14)
 ;
POSVT(HZM,VT,IND) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB",VT,IND)),"*",26)
 ;
TRIDCA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("TRIDCA"))
 ;
TRIDMZ(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("TRIDMZ"))
 ;
STAGE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("STAGE"))
 ;
TRID(HZM,VT,IND) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB",VT,IND)),"*",31)
 ;
BSPAYCARD(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CARD"))
 ;
BSPAYNAME(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"NAME"))
 ;
BSPAYCLUB(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB"))
 ;
BSPAYCLUB1(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB1"))
 ;
BSPAYSUM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"PAID"))
 ;
BSPAYASM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"ASM"))
 ;
CPCARD(HZM,NPAY) ;
 N GL,DLM,OK D GL
 I $E(NPAY,1,2)="NA" D
 .N NP S NP=$E(NPAY,3,20)
 .S OK=0
 .N N1 S N1="" F  S N1=$O(@GL@("CPN",N1)) Q:N1=""  I $G(^(N1,"NOMASR"))=NP S OK=N1 Q
 .S NPAY=OK
 I '$G(NPAY) Q ""
 Q $G(@GL@("CPN",NPAY,"CARD"))
 ;
HESH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,20)
 ;
HSBP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("HSB"))
 ;
NCAB(HZM) I $G(HZM)="" Q ""
 N GL,DLM,NCAB D GL
 S NCAB=$G(@GL@("ETHB"))
 I 'NCAB S NCAB=$P($G(@GL@("CB")),"\")
 Q NCAB
 ;
HSB2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("ETHB2"))
 ;
HRA2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",1)
 ;
HODAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",2)
 ;
FIRE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("FIRE"))
 ;
COORD(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("COORD"))
 ;
MAZMIN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 I $G(@GL@("MZMNM"))'?.P Q ^("MZMNM")
 I $P($G(@GL@("HR2")),"\\",5)'?.P Q $P($G(@GL@("HR2")),"\\",5)
 I '$$COMP^W3PRM Q $$NAME(HZM)
 Q ""  ; -- 13.07.21
 Q $P($G(@GL@("HR2")),"\\",6)
 ;
PSL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\")
 ;
ZMANS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",2)
 ;
TM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",5)
 ;
REHEV(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",6)
 ;
MYCHCLIENT(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("MYCH","CLIENT"))
 ;
MKRDLV(HZM) ;
 I $G(HZM)="" Q ""
 I $$DELIS^W4PRM Q $$MKRDLV1(HZM)
 N MKRDLV S MKRDLV=$G(@$$^W4ORD@(+HZM,"MKRDLV"))
 I MKRDLV=99,$$HZMLAK(HZM)?1"W"1N.N S MKRDLV=98
 I MKRDLV Q $$MKR^W3MKR(MKRDLV)
 N ORD S ORD=+$G(@$$^W4GL("HZLINKW")@(HZM))
 Q $$MKR^W3MKR($P($G(@$$^W4GL("W3ORDA")@(ORD)),"~",51))
 ;
 ;
MKRDLV1(HZM) ;
 I $$MKRDLV^W4PRM'=2,'$$DELIS^W4PRM Q $$MKRDLV(HZM)
 ;
 I $G(HZM)="" Q ""
 N MKRDLV1 S MKRDLV1=$G(@$$^W4ORD@(+HZM,"MKRDLV1"))
 Q MKRDLV1
 ;
 ;
WOLT(HZM) ;
 I $$MKRDLV(HZM)=18 Q 1
 Q 0
 ;
WOLTNMB(HZM) ;
 I '$G(HZM) Q ""
 N ST S ST=$$HRAED(HZM)
 N HZMLAKNOM S HZMLAKNOM=$$HZMLAKNOM(HZM)
 I ST["WOLT",HZMLAKNOM,HZMLAKNOM["^" Q +HZMLAKNOM
 N WOLTNMB S WOLTNMB=$P(ST,"WOLT :",2)
 S WOLTNMB=$$SPA^%L1FRM(WOLTNMB)
 S WOLTNMB=$P(WOLTNMB," ")
 Q WOLTNMB
 ;
HAAT(HZM) ;
 I $$MKRDLV(HZM)=66 Q 1
 Q 0
 ;
HAATNMB(HZM)
 N HNMB S HNMB=$$HZMLAKNOM(HZM)
 S HNMB=$E(HNMB,$L(HNMB)-2,$L(HNMB))
 Q HNMB
 ;
TNB(HZM) Q ($$MKRDLV(HZM)=10)
 ;
CIB(HZM) Q ($$MKRDLV(HZM)=8!($$MKRDLV(HZM)=5))
 ;
CLOSE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))
 ;
LKMCARD(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("LKM","CARD"))
 ;
LKMNAME(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("LKM","NAME"))
 ;
LKMBON(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("LKM","BON"))
 ;
LKMNKD0(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("LKM","NKD0"))
 ;
LKMNKDHZ(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N LKMCARD S LKMCARD=$$LKMCARD(HZM) I 'LKMCARD Q 0
 N NKDHZ S NKDHZ=$$TSHL(HZM)  
 Q NKDHZ
 ;
LKMNKD(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N LKMCARD S LKMCARD=$$LKMCARD(HZM)
 I 'LKMCARD Q 0
 N NKD0,GLLM S GLLM=$$GL^WLKM 
 S NKD0=$$LKMNKD^W4L(LKMCARD,GLLM)-$$LKMBON^W4L(LKMCARD,GLLM)
 Q (NKD0+$$LKMNKDHZ(HZM))
 ;
 ;
SETCLOSE(HZM,PR) I $G(HZM)="" Q
 N GL,DLM D GL
 N ITRA S ITRA=$$ITRA(HZM)
 I ITRA<-.1!(ITRA>.1) Q
 ;
 I $$TEAV^W4PRM,$$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM),'$$I^W4DEL(HZM) D
 .I $G(@$$^W4GL("W4TVH2O")@(HZM,"TIME"))'="" Q
 .N DTTV S DTTV=$$^%L1DC($$TRH^W4HZMST(HZM),3) Q:DTTV<$$^W4DZ
 .D SETTV^W3SETHD(HZM)
 ;
 I $$CLOSE(HZM)<2 D
 .D PUT^%W1PRM("SAVEORD",HZM)
 .N TSHL S TSHL=$$TSHL(HZM)
 .N SHUL S SHUL=$$SHUL(HZM)
 .N SHULA S SHULA=$$SHULA(HZM)
 .N TIP S TIP=$$TIP(HZM)
 .D PCAFT^W4T1(HZM)
 .I ITRA>0&(TSHL>0)!(ITRA<0&(TSHL<0)) D  ; -- 15/10/20
 ..N HNH2 S HNH2=$$HNH2(HZM)
 ..D PUT(HZM,"HNH2",HNH2+ITRA)
 ..D PUT(HZM,"TSHL",TSHL-ITRA)
 .
 .I $$SHUL(HZM)!'$$TSHL(HZM) D
 ..I '($D(@$$^W4ORD@(HZM,"ETHB"))#2) D ^W4SGHB(HZM)
 ..I '$$^W4CLOSE(HZM),$$NCAB^W4HZMST(HZM) S @GL@("S")=$G(@GL@("S"))+2
 .
 .I $$SHULA(HZM),$G(@GL@("S"))<4 D
 ..S @GL@("S")=$G(@GL@("S"))+4
 ..D SETPOS^W4MKR(HZM)
 ..D CLHMK^W4MKR(HZM)
 .
 .D SETPOS^W4MKR(HZM)
 .
 .;; ------- MOADON
 .D MOADL(HZM)
 Q
 ;
CLOSECRED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))>3
 ;
CRCARDS(HZM) I $G(HZM)="" Q ""
 N N,CRCARDS S CRCARDS=""
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  I N D
 .S CRCARDS=CRCARDS_$P($G(^(N)),"*",2)_","
 Q CRCARDS
 ;
CRHZMLK(HZM) I $G(HZM)="" Q ""
 N N,CRHZMLK S CRHZMLK=$$HZMLAK(HZM)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  I N D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",7)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",12)_","
 Q CRHZMLK
 ;
SUGTS(HZM) I $G(HZM)="" Q ""
 N N,SUGTS S SUGTS=""
 N A S A=$G(@$$^W4ORD@(HZM,"CB"))
 N I F I=2:1:5 I $P(A,"\",I) S SUGTS=SUGTS_(I-1)_","
 I $P(A,"\",9) S SUGTS=SUGTS_"5,"
 Q $E(SUGTS,1,$L(SUGTS)-1)
 ;
SMZ(HZM,PART) I $G(HZM)="" Q ""
 N N,N1,SMZ S SMZ=0
 N GLORD D GLORD
 N MZ S MZ=$$MZM(HZM)+$$ODEF(HZM)
 I '$D(@GLORD@("CB","MZ")),'$G(PART) Q MZ
 I '$D(@GLORD@("CB","MZ")),$G(PART) Q $S($$POS(HZM)=PART:MZ,1:0)
 ;
 S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",4)'=PART Q
 .S SMZ=SMZ+$P(A,"*")
 .S N1=N
 ;
 I $G(PART),PART=$$POS(HZM) S SMZ=SMZ-$$ODEF(HZM) ; --?
 ;
 Q SMZ
 ;
 ;
SCH(HZM,PART) I $G(HZM)="" Q ""
 N N,SCH S SCH=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","CH",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SCH=SCH+$P(A,"*")
 Q SCH
 ;
SCA(HZM,PART) I $G(HZM)="" Q ""
 N N,SCA S SCA=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","V",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .;;I $$PAPJ^W4PRM,$P(A,"*")[("V"_$$GFC^W4VT) Q  ; -- *** 11.05.26
 .S SCA=SCA+$P(A,"*",7)
 Q SCA
 ;
SAS(HZM,PART) I $G(HZM)="" Q ""
 N N,SAS S SAS=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SAS=SAS+$P(A,"*",4)
 Q SAS
 ;
STL(HZM,PART) I $G(HZM)="" Q ""
 N N,STL S STL=0
 N GLORD D GLORD
 I '$D(@GLORD@("CB","TL")) Q $P($G(@GLORD@("CB")),"\",9)
 S N="" F  S N=$O(@GLORD@("CB","TL",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S STL=STL+$P(A,"*")
 Q STL
 ;
NEWIND(HZM,VT) I $G(HZM)="" Q ""
 Q $$LASTIND(HZM,VT)+1
 ;
LASTIND(HZM,VT) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,99999),-1)
 ;
NEXTIND(HZM,VT,IND) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
 ;
SETIND(HZM,VT,IND,VL,NRZ) I $G(HZM)="" Q
 I $G(VT)=""!($G(IND)="") Q
 I $G(NRZ) S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",NRZ)=VL Q
 ;
 I $G(NRZ)?1U.E D  Q
 .N MC S MC=$$GETST^W4GTVCH(VT)
 .N II F II=1:1:$L(MC,"*") I $P(MC,"*",II)=NRZ S @$P(MC,"*",II)=VL Q
 ;
 S @$$^W4ORD@(HZM,"CB",VT,IND)=VL
 Q
 ;
DEFIND(HZM,VT,IND) I $G(HZM)="" Q ""
 I '$G(IND) Q $D(@$$^W4ORD@(HZM,"CB",VT))
 Q $D(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
SUMIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=6
 I VT="MZ"!(VT="CH") S NRZ=1
 I VT="ASR" S NRZ=4
 I '$G(NRZ) Q ""
 N SUM S SUM=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 I VT="MZ" S SUM=SUM-$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",5)
 Q SUM
 ;
TIPIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=27
 I VT="MZ" S NRZ=6
 I VT="CH" S NRZ=12
 I VT="ASR" S NRZ=20
 I '$G(NRZ)!'$G(IND) Q ""
 N TIP S TIP=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 Q TIP
 ;
SETPOS(HZM,VT,IND) I $G(HZM)="" Q ""
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",26)=$$^W4MYDVN
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",28)=$$LASTMLZ^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",29)=$H
 Q
 ;
TOCUSNAME(HZM,VT,NOM) I $G(HZM)="" Q ""
 N LKHNAME
 I $G(VT)="",'$G(NOM) D  Q LKHNAME
 .S LKHNAME=$P($G(@$$^W4ORD@(HZM,"TOCUSNAME")),"\")
 .I LKHNAME?.P!(LKHNAME?.N),$D(@$$^W4ORD@(HZM,"TOCUSNAME","V",1)),'$D(@$$^W4ORD@(HZM,"TOCUSNAME","V",2)) D
 ..S LKHNAME=$P($G(@$$^W4ORD@(HZM,"TOCUSNAME","V",1)),"\")
 .I LKHNAME?.P!(LKHNAME?.N),$D(@$$^W4ORD@(HZM,"TOCUSNAME","MZ",1)),'$D(@$$^W4ORD@(HZM,"TOCUSNAME","MZ",2)) D
 ..S LKHNAME=$P($G(@$$^W4ORD@(HZM,"TOCUSNAME","MZ",1)),"\")
 .I LKHNAME?.P!(LKHNAME?.N),$$HZM^W4MSL(HZM) S LKHNAME=$$NAME(HZM)
 .I LKHNAME?.P!(LKHNAME?.N) S LKHNAME=$$LKHN1(HZM)
 ;
 Q $P($G(@$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)),"\")
 ;
 ;
SETTOCUSNAME(HZM,VT,NOM,VL) I $G(HZM)="" Q
 I '$G(VT),'$G(NOM) S @$$^W4ORD@(HZM,"TOCUSNAME")=VL_"\"_$H
 Q:$G(VT)=""  Q:$G(NOM)=""
 I '$D(@$$^W4ORD@(HZM,"CB",VT,NOM)) Q
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)=VL_"\"_$H
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM,"MKR")=$H
 Q
 ;
HZMDEL1(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",4)
 ;
HZMDEL2(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",5)
 ;
BSCARD(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CARD"))
 ;
BSCLUB(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB"))
 ;
BSCLUB1(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB1"))
 ;
BSNAME(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NAME"))
 ;
BSASM(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","ASM"))
 ;
BSHNH(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","HNH"))
 ;
BSNKD(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKD"))
 ;
BSPAY(HZM) ;
 I $G(HZM)="" Q ""
 N SUM S SUM=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BSL","PAY",N)) Q:N=""  I N D
 .S SUM=SUM+$G(@$$^W4ORD@(HZM,"BSL","PAY",N,"PAID"))
 Q SUM
 ;
BSNKDPAY(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKDPAY"))
 ;
BSDEL(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","DEL"))
 ;
COMPENSREASON(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"PIZUIM","SIBA"))
 ; 
COMPENSUPTO(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"PIZUIM","AD"))
 ; 
COMPENSORD(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"PIZUIM","ORD"))
 ; 
PIZUIM(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"PIZUIM"))
 ; 
DETNOTES(HZM) ;
 I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"DETNOTES"),-1)>3
 ; 
COMPENSSOURCE(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MIMUSHPZM"))
 ; 
PAR(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $$SPA^%L1FRM($P($G(@GL@(I)),"\"))
 ;
PAR1(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$CNWEB^%L1FRM($P($G(@GL@(I)),"\",3))
 ;
MH(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",4)
 ;
QN(HZM,I,GL) ;
 N QN
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 I I'["-" Q $P($G(@GL@(I)),"\",5)
 ;
 I $L(I,"-")=2 D
 .N CD,CDT S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .I CD=""!(CDT="") Q ""
 .S QN=$P($G(@GL@(CD,CDT)),"\",3)
 ;
 I $L(I,"-")>2 D
 .N CD,CDT,I3 S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .S I3=$P(I,"-",3)
 .I CD=""!(CDT="")!(I3="") Q ""
 .N ST S ST=$G(@GL@(CD,CDT,I3))
 .N PRTT,TSFT
 .S PRTT=$P(ST,"\"),TSFT=$P(ST,"\",4)
 .I PRTT S QN=$P(ST,"\",3)
 .E  S QN=$P(ST,"\",5)
 Q QN
 ;
 ;
MRG(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $G(@GL@("MRG",I))
 ;
ITRAST(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $$QN(HZM,I,GL)-$$MRG(HZM,I,GL)
 ;
TSF(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",6)
 ;
SUM(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",7)
 ;
HRP(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",8)
 ;
AVAR(HZM,I) ;
 I $G(HZM)="" Q ""
 N AVAR S AVAR="ogleyl xa"
 N GL,DLM D GL
 I $G(@GL@("MVTO",I)) Q 1
 Q $P($G(@GL@("BIT",I)),"*",4)[AVAR
 ;
GLIST(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",9)
 ;
STGIT(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",19)
 ;
EX2KITCH(HZM,IND,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@("BIT",IND)),"*",6)
 ;
DELPOS(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",7)
 ;
WHODEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",2)
 ;
WHODEL1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N WHO S WHO=$$WHODEL(HZM,IND)
 I WHO="" Q ""
 Q $$SHORT^W4NAME(WHO)
 ;
SIBA(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",3)
 ;
SIBA1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",4)
 ;
TIMEDEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N TM S TM=$P($G(@GL@("BIT",IND)),"*",5)
 Q $$T^%L1TIME(TM)
 ;
ZMANDEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N TM S TM=$P($G(@GL@("BIT",IND)),"*",5)
 Q $ZD(TM,"DD.MM.YY 24:60")
 ;
WHOHNH(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("HNH",IND)),"*",2)
 ;
SIBHNH(HZM,IND) ;
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",3)
 ;
SIBHNH1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",4)
 ;
MNLH(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",6)
 ;
SSUMHNHP(HZM) ;
 Q -$$SHNHP(HZM)
 ;
 N SHNHP S SHNHP=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .N CD S CD=$P(A,"\")
 .I $E(CD)'="-",CD'["%" S SHNHP=SHNHP-$$SUMHNHP(HZM,N)
 Q SHNHP
 ;
SUMHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 N ST S ST=$G(@GL@(IND+1))
 I $$ISHNHP($P(ST,"\")) Q $P(ST,"\",7)
 S ST=$G(@GL@(IND))
 N SUM S SUM=$P(ST,"\",7)
 N AH S AH=$$AHNHP(HZM,IND,GL)
 Q $J(AH*SUM*.01,2,2)
 ;
AHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 S IND=$$INDHNH(HZM,IND)
 N AH S AH=+$G(@GL@("HNH",IND))
 Q AH
 ;
NOMOD(HZM,I,CDT)
 I $G(HZM)="" Q ""
 Q $$CLOSEST(HZM,I,$G(CDT))
 ;
CLOSEST(HZM,I,CDT)
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N OK S OK=0
 I '$G(I) Q " "
 I $L($G(CDT)) D  Q OK
 .I $G(@GL@(I,CDT))["\@@" S OK=1
 I $G(@GL@(I))["\@@" S OK=1
 Q OK
 ;
GL S GL=$$^W4GL("P1HZ")_"(HZM)",DLM="\"
 I $G(HZM),HZM>0,HZM["-" D
 .N NTS,HZMAIN S HZMAIN=+HZM,NTS=$P(HZM,"-",2)
 .S GL=$$^W4GL("P1HZ")_"("_HZMAIN_",""PART"","_NTS_")"
 .S DLM="~"
 Q
 ;
GLORD N GL,DLM D GL
 S GLORD=GL
 Q
 ;
PUT(HZM,NM,VL) ;
 I $G(HZM)="" Q
 S VL=$TR($G(VL),"\","/")
 N GL,DLM D GL
 L +@GL:1
 I NM="NMB" S $P(@GL,"\",1)=VL
 I NM="NAME" S $P(@GL,"\",2)=VL
 I NM="KTV" S $P(@GL,"\",3)=VL
 I NM="ZMANK" S $P(@GL,"\",4)=VL
 I NM="TRH" S $P(@GL,"\",5)=VL
 I NM="SHAA" S $P(@GL,"\",6)=VL
 I NM="HNH" S $P(@GL,"\",8)=$$NUM(VL)
 I NM="DMSH" S $P(@GL,"\",9)=VL
 I NM="MAM" S $P(@GL,"\",10)=VL
 I NM="TSHL" S $P(@GL,"\",11)=$$NUM(VL)
 I NM="SHUL" S $P(@GL,"\",12)=$$NUM(VL)
 I NM="KOMA" S $P(@GL,"\",13)=VL
 I NM="DIRA" S $P(@GL,"\",14)=VL
 I NM="BAIT" S $P(@GL,"\",15)=VL
 I NM="CNISA" S $P(@GL,"\",16)=VL
 I NM="SHULA" S $P(@GL,"\",17)=$$NUM(VL)
 I NM="MKBL" S $P(@GL,"\",18)=VL
 I NM="HNH2" S $P(@GL,"\",19)=$$NUM(VL)
 I NM="HESH" S $P(@GL,"\",20)=VL
 I NM="CODTS" S $P(@GL,"\",21)=VL
 I NM="HNHAH" S $P(@GL,"\",22)=VL
 I NM="DMSAH" S $P(@GL,"\",23)=VL
 I NM="SOAD" S $P(@GL,"\",24)=VL
 I NM="LASTU" S $P(@GL,"\",26)=VL
 I NM="LKHN" S $P(@GL,"\",27)=VL
 I NM="DATK" S $P(@GL,"\",29)=VL
 I NM="HZMLAK" S $P(@GL,"\",30)=VL
 I NM="MKRNOM" S $P(@GL,"\",33)=VL
 ;
 I NM="PSL" S $P(@GL@("TM"),"\",1)=VL
 I NM="ZMANS" S $P(@GL@("TM"),"\",2)=VL
 I NM="TM" S $P(@GL@("TM"),"\",5)=VL
 I NM="REHEV" S $P(@GL@("TM"),"\",6)=VL
 ;
 I NM="HRA2" S $P(@GL@("HR2"),"\\",1)=VL
 I NM="HODAA" S $P(@GL@("HR2"),"\\",2)=VL
 ;
 I NM="IR" S $P(@GL@("HR2"),"\\",4)=VL
 I NM="MAZMIN" S $P(@GL@("HR2"),"\\",5)=VL
 I NM="HRAED" S $P(@GL@("HR2"),"\\",6)=VL
 I NM="PELE" S $P(@GL@("HR2"),"\\",7)=VL
 I NM="FIRE" S @GL@("FIRE")=VL
 I NM="COORD" S @GL@("COORD")=VL
 ;
 I NM="NCAB" S $P(@GL@("CB"),"\",1)=VL
 I NM="MZM" S $P(@GL@("CB"),"\",2)=$$NUM(VL)
 I NM="CH" S $P(@GL@("CB"),"\",3)=$$NUM(VL)
 I NM="CA" S $P(@GL@("CB"),"\",4)=$$NUM(VL)
 I NM="ASR" S $P(@GL@("CB"),"\",5)=$$NUM(VL)
 I NM="ODEF" S $P(@GL@("CB"),"\",8)=$$NUM(VL)
 I NM="TL" S $P(@GL@("CB"),"\",9)=$$NUM(VL)
 I NM="TIP" S $P(@GL@("CB"),"\",10)=$$NUM(VL)
 I NM="POS" S $P(@GL@("CB"),"\",14)=VL
 ;
 I NM["," D
 .N II F II=1:1:$L(NM,",") D
 ..N NMFLD S NMFLD=$P(NM,",",II) D PUT(HZM,NMFLD,VL)
 L -@GL
 Q
 ;
TOT(HZM) ;
 I $G(HZM)="" Q 0
 N A,I,T,SUM
 S T=0
 N GL D GL
 S I="" 
 F  S I=$O(@GL@(I)) Q:I=""  I I D
 .S A=$G(^(I))
 .S SUM=$$SUM(HZM,I,GL)
 .S T=T+SUM
 Q T
 ;
TOTQN(HZM,PR,TRAYS) ;
 I $G(HZM)="" Q ""
 N I,T,QN,GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .N CD S CD=$P(A,"\") I $E(CD)="-"!(CD[":")!(CD["%")!(CD="") Q
 .I $D(@$$^W4GL("W4NOITCN")@(CD)) Q
 .I $$^W4CDSRV(CD) Q
 .S QN=$S($G(PR)=0:$P(A,"\",5),1:$$QN(HZM,I,GL))
 .I $$MSK^W4P(CD)!$P(QN,".",2) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .I $$SF^W4PRM,'$P(A,"\",4) Q
 .I $$DELIS^W4PRM,CD="0" Q
 .
 .I $G(PR)=2 D
 ..N KF S KF=$G(@$$^W4GL("W4KFM")@(CD))
 ..I KF S QN=QN*KF
 ..I 'KF S QN=0
 .
 .I $G(PR)=3 D
 ..N KF S KF=$G(@$$^W4GL("W4KFM2")@(CD))
 ..I KF S QN=QN*KF
 ..I 'KF S QN=0
 . 
 .I $G(TRAYS),$$SUG^W4P(CD)'["iybn" S QN=0
 .S T=T+QN
 .
 .I $$DD^W4EZA(CD) D
 ..N A,N1 S N1="" F  S N1=$O(@GL@(I,N1)) Q:N1=""  S A=$G(^(N1)) D
 ...I $D(@$$^W4GL("W4NOITCN")@(N1)) Q
 ...S QN=$P(A,"\",3)
 ...
 ...I $G(PR)=2 D
 ....N KF S KF=$G(@$$^W4GL("W4KFM")@(N1))
 ....I KF S QN=QN*KF
 ....I 'KF S QN=0
 ... 
 ...I $G(PR)=3 D
 ....N KF S KF=$G(@$$^W4GL("W4KFM2")@(N1))
 ....I KF S QN=QN*KF
 ....I 'KF S KF=0
 ...
 ...S T=T+QN
 ;
 I T["." S T=$J(T,3,3)
 Q T
 ;
 ;
TOTQNP(HZM,PR) ;
 I $G(HZM)="" Q ""
 N I,T,QN,GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .N CD S CD=$P(A,"\") I $E(CD)="-"!(CD[":")!(CD["%")!(CD="") Q
 .S QN=$P(A,"\",5)
 .N NM S NM=$$SHEM^W4P(CD) I '$$DD^W4EZA(CD),NM["()"!(NM["[]") D
 ..S T=T+QN
 .
 .I $$DD^W4EZA(CD) D
 ..N A,A2,N1,N2 S N1="" F  S N1=$O(@GL@(I,N1)) Q:N1=""  S A=$G(^(N1)) D
 ...S N2="" F  S N2=$O(@GL@(I,N1,N2)) Q:N2=""  I N2 S A2=$G(^(N2)) D
 ....N CDT S CDT=$P(A2,"\") Q:'CDT
 ....N NM S NM=$$SHEM^W4P(CDT) I NM'["()",NM'["[]" Q
 ....S QN=$P(A2,"\",3)
 ....S T=T+QN
 Q T
 ;
 ;
TOTQNPAR(HZM,NMGL,PR) ;
 I $G(HZM)="" Q ""
 N I,T,QN,GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .N CD S CD=$P(A,"\") I $E(CD)="-"!(CD[":")!(CD["%")!(CD="") Q
 .S QN=$P(A,"\",5)
 .I $D(@$$^W4GL(NMGL)@(CD)) D
 ..I $G(PR),NMGL'="W4NOITCN",$D(@$$^W4GL("W4NOITCN")@(CD)) Q
 ..S T=T+QN
 .
 .I $$^W4EZAT(CD) D
 ..N A,A2,N1,N2 S N1="" F  S N1=$O(@GL@(I,N1)) Q:N1=""  S A=$G(^(N1)) D
 ...S N2="" F  S N2=$O(@GL@(I,N1,N2)) Q:N2=""  I N2 S A2=$G(^(N2)) D
 ....N CDT S CDT=$P(A2,"\") Q:'CDT
 ....I $D(@$$^W4GL(NMGL)@(CDT)) D
 .....I $G(PR),NMGL'="W4NOITCN",$D(@$$^W4GL("W4NOITCN")@(CDT)) Q
 .....S QN=$P(A2,"\",3)
 .....S T=T+QN
 Q T
 ;
 ;
TOTHN(HZM) ;
 N I,T,PR,PRAH S PR=0,PRAH=0
 N PARBHNH
 ;
 N GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .N SUM S SUM=$$SUM(HZM,I,GL)
 .N PAR S PAR=$$PAR(HZM,I,GL)
 .I $$ISPAR(PAR) S PRAH=0
 .I '$D(PARBHNH(PAR)) S PARBHNH(PAR)=$$PARBHNH(PAR)
 .I $$ISPAR(PAR),$G(PARBHNH(PAR)) D  Q
 ..S SUM=0,PRAH=1 I '$$TSFBHNH^W4PRM S SUM=$$TSF(HZM,I,GL),PRAH=0
 ..S T=T+SUM
 .I PAR'="",'PRAH S T=T+SUM
 Q T
 ;
TOTDMS(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N DMSH S DMSH=$$DMSH(HZM)
 ;;I $$DMSAH(HZM) S DMSH=TOT*$$DMSAH(HZM)*.01
 Q DMSH
 ;
TOTORD(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N IGUL S IGUL=$$IGUL(HZM)
 S TOT=TOT-$$SHNH(HZM)+$$TOTDMS(HZM)
 S TOT=TOT-IGUL
 Q TOT
 ;
TSTMRG(HZM) ; - SDEL = SAH QN DEL
 I $D(@$$^W4ORD@(HZM,"MRG"))>9 Q 1
 Q 0
 ;
INDHNH(HZM,IND) ;
 N ST,GL D GL
 S ST=$G(@GL@(IND))
 N CD S CD=$P(ST,"\")
 I $$ISHNHP(CD) Q IND-1
 Q IND
 ;
ISHNHP(CD) ;
 I CD?1"-"1N.N.".".N.N1"%" Q 1
 Q 0
 ;
ISPAR(CD) ;
 I $$ISNUM^%L1FRM(CD) Q 1
 Q 0
 ;
PARBHNH(PAR) ;
 I $L($$SMB^W4BLNMVC(PAR)) Q 1
 Q 0
 ;
COLSH0(HZM,GLORD) ;
 N I S I=0
 I $G(GLORD)="" S GLORD=$$^W4ORD
 N N S N="" F  S N=$O(@GLORD@(HZM,N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GLORD_"("_HZM_")")
 .I '$$ISNUM^%L1FRM(PAR) Q
 .I $$^W4CDSRV(PAR) Q
 .S I=I+1
 Q I
 ;
GCOUPIT(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 I $D(@GL@("GCOUP"))>9 Q 1
 Q 0
 ;
GCOUPPAYER(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERNAME"))
 ;
GCOUPTEL(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERTEL"))
 ;
GCOUPRCP(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","RECIPIENTNAME"))
 ;
GCOUPSUM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","SUM"))
 ;
GCOUPTLM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","TLM"))
 ;
WASVCBON(HZM)
 N OK S OK=0
 N N S N=999 F  S N=$O(@$$^W4ORD@(HZM,"VC",N),-1) Q:N=""  D  Q:OK
 .I $$ISDISC^WV(HZM,N) S OK=1 Q
 Q OK
 ;
 ;
MOADL(HZM) 
 I '$$LKM^W4PRM Q
 N LKMCARD,NKDHZ,BON
 S LKMCARD=$$LKMCARD(HZM)
 S NKDHZ=$$LKMNKDHZ(HZM)
 S BON=$J($$LKMBON(HZM),0,0)
 S NKD0=$$LKMNKD0(HZM)
 N NKD S NKD=$J(NKD0+NKDHZ-BON,0,0)
 N RKV S RKV=NKD_"~"_NKDHZ_"~"_BON_"~"_HZM_"~"_$$^W4DZ_"~"_$H
 ;
 I LKMCARD,NKDHZ D
 .I $$LKMLOCAL^W4PRM D  Q
 ..N GLLM S GLLM=$$GL^WLKM
 ..D PUT^W4L(LKMCARD,RKV,"LKMNKD",GLLM)
 ;
 I LKMCARD,NKDHZ!BON D
 .D ^W4SNDSRV("UPD","w3anslkm","CODE="_LKMCARD_"<>LKMNKD="_RKV,.STANS,.ER)
 Q
 ;
NKDHZ(HZM) ; 
 Q $J($$TSHL(HZM),0,0)
 ;
NKD0(HZM) ; 
 D GL
 Q
 ; 
NUM(VL) ; 
 I '$G(VL) Q VL
 Q $J(VL,2,2) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMST0
W4HZMST(HZM) ; [ 10.01.17 18:43 ] [ 07.01.17 14:43 ] [ 05.01.17 12:51 ] 
 ;
NAME(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,2)
 ;
COMP(HZM) I $G(HZM)="" Q ""
 I $L($$MAZMIN(HZM)) Q $$NAME(HZM)
 Q ""
 ;
LKHNM(HZM) I $G(HZM)="" Q ""
 I $L($$MAZMIN(HZM)) Q $$MAZMIN(HZM)
 Q $$NAME(HZM)
 ;
KTV(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,3)
 ;
CMNT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,7)
 ;
BAIT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,15)
 ;
DIRA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,14)
 ;
IR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",4)
 ;
TAKEAWAY(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $TR($$IR(HZM)," ","")="TAKEAWAY"
 ;
HRAED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",6)
 ;
KOMA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,13)
 ;
CNISA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,16)
 ;
KTVM(HZM) ;
 N KTV
 I '$G(HZM) Q ""
 D GL
 N STREET,BAIT,DIRA,IR,KOMA
 S STREET=$$KTV(HZM)
 S BAIT=$$BAIT(HZM)
 S DIRA=$$DIRA(HZM)
 S KOMA=$$KOMA(HZM)
 S IR=$$IR(HZM)
 N HMFL S HMFL=BAIT I DIRA S HMFL=BAIT_"/"_DIRA
 I $L(KOMA),KOMA'="ihxt" S HMFL=KOMA_" 'w "_HMFL
 I $$CODTS^W4HZMST(HZM)=8 D
 .S NMFL=NMFL_" "_$$HRAED^W4HZMST(HZM)
 I IR="TAKEAWAY",STREET?1N.N S KTV=$$SNIFA^W3SNIF(STREET)
 I IR="TAKEAWAY",STREET'?1N.N S KTV=$$TV^%W1DICT($$^%W1LNG,"TAKEAWAY!")
 I IR'="TAKEAWAY" S KTV=$$SPA^%L1FRM(IR)_" "_$$SPA^%L1FRM(HMFL)_" "_$$SPA^%L1FRM(STREET)
 Q KTV
 ;
PELE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",7)
 ;
TSHL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 ;
 Q $P($G(@GL),DLM,11)
 ;
CURTSHL(HZM) I $G(HZM)="" Q ""
 I '$G(JB) Q $$TSHL(HZM)
 I $$D^W3TMPORD(JB)<11 Q $$TSHL(HZM)
 Q $$TSHL^W3HZMST(JB)-$$SHNHO(HZM)
 ;
SHUL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,12)
 ;
SHULA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,17)
 ;
ITRA(HZM) ;
 N ITRA S ITRA=$$ITRARL(HZM)-$$HNH2(HZM)
 I ITRA<.05&(ITRA>-.05) S ITRA=0
 I ITRA>0.04&($$TSHL(HZM)'<0)!(ITRA<-0.04&($$TSHL(HZM)<0)) Q $J(ITRA,2,2)
 Q 0
 ;
ITRARL(HZM) ;
 N ITRA S ITRA=$$TOTORD(HZM)-$$SSHUL(HZM)-$$SHULA(HZM)+$$SODEF(HZM)+$$STIP(HZM)+$$HNH2(HZM)
 Q ITRA
 ;
NMB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM)
 ;
MSL(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)>3 Q 1
 Q 0
 ;
MSD(HZM) ;
 N A S A=$$NMB(HZM)
 I A="" Q ""
 I $L(A)<4 Q 1
 Q 0
 ;
ZMANK(HZM) ;
 Q $$DATCB(HZM)
 ;
DATCB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,4)
 ;
TRH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,5)
 ;
SHAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,6)
 ;
SHAAT(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,25)
 ;
DISCIT(HZM) I $G(HZM)="" Q ""
 N GL,SUM D GL S SUM=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GL)
 .I $E(PAR)="-",PAR["%" D
 ..S SUM=SUM+$$SUM(HZM,N,GL)
 Q -SUM
 ;
HNH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N A S A=$P($G(@GL),DLM,8)
 I A'["%" Q A
 Q $$HNHA(HZM)
 ;
HNH2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,19)
 ;
HNHALL(HZM)
 I $G(HZM)="" Q ""
 Q $$HNH(HZM)+$$HNH2(HZM)
 ;
DMSH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,9)
 ;
MAM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N MAM ;S MAM=$P($G(@GL),"\",10)
 N DTK S DTK=$$^%L1DC($$DATK(HZM),3)
 N AHMAM S AHMAM=$$MAMD^W4L(DTK)
 Q $J($$TSHL(HZM)*AHMAM/(100+AHMAM),2,2)
 ;
MKBL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $TR($J(+$P($G(@GL),DLM,18),5)," ",0)
 ;
LASTMLZ(HZM) I $G(HZM)="" Q ""
 I $G(@$$^W4GL("P1MLZ")@(HZM)) Q ^(HZM)
 Q $$MKBL(HZM)
 ;
CODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,21)
 ;
RCODTS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N RCODTS S RCODTS=""
 I $$MZM(HZM) S RCODTS=RCODTS_"1:"_$J($$MZM(HZM),2,2)
 I $$CHK(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"2:"_$J($$CHK(HZM),2,2)
 I $$CA(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"3:"_$J($$CA(HZM),2,2)
 I $$ASR(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"4:"_$J($$ASR(HZM),2,2)
 I $$TL(HZM) S RCODTS=RCODTS_$S($L(RCODTS):",",1:"")_"5:"_$J($$TL(HZM),2,2)
 Q RCODTS
 ;
HNHAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,22)
 N GL D GL
 ;
HNHA(HZM) I $G(HZM)="" Q ""
 Q $J($$TOTHN(HZM)*$$HNHAH(HZM)*.01,2,2)
 ;
HNH1(HZM) I $G(HZM)="" Q ""
 Q $$SHNH1^W4PAYVW(HZM)
 ;
LKHNH(HZM) I $G(HZM)="" Q ""
 Q $$SLKHNH^W4PAYVW(HZM)
 ;
SHNH(HZM) I $G(HZM)="" Q ""
 Q $$HNHA(HZM)+$$SHNHO(HZM)
 ;
SHNHO(HZM) I $G(HZM)="" Q ""
 Q $$HNH1(HZM)+$$LKHNH(HZM) ;;+$$IGUL(HZM)
 ;
SHNHP(HZM) I $G(HZM)="" Q ""
 N SHNHP,GL S SHNHP=0 D GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .I $$ISHNHP($$PAR(HZM,N,GL)) S SHNHP=SHNHP+$$SUM(HZM,N,GL)
 Q SHNHP
 ;
SBIT(HZM) I $G(HZM)="" Q ""
 S SBIT=0 N GL D GL
 N N S N="" F  S N=$O(@GL@("BIT",N)) Q:N=""  D
 .I $$AVAR(HZM,N) Q
 .S SBIT=SBIT+$$SUM(HZM,N,GL)+$$SUMHNHP(HZM,N)
 Q SBIT
 ;
IGUL(HZM) ;
 Q $$HNH2($G(HZM))
 ;
DMSAH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,23)
 ;
SOAD(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,24)
 ;
LASTU(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,26)
 ;
DATK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,29)
 ;
HZMLAK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,30)
 ;
LKHN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 N LKHN S LKHN=$P($G(@GL),DLM,27)
 I '$$^W4ISCDLK(LKHN),$$HZM^W4MSL(HZM) S LKHN=$$NMB(HZM)
 I $L(LKHN)<4 S LKHN=""
 Q LKHN
 ;
LKHN1(HZM) ;
 N LKHN S LKHN=$$LKHN(HZM)
 I LKHN="" Q ""
 Q $$LKH^W4L(LKHN)
 ;
LKHNOM(HZM) I $G(HZM)="" Q ""
 I $$LKHN(HZM) Q $$LKHN(HZM)
 I $$^W4MSL($$NMB(HZM)) Q $$NMB(HZM)
 Q ""
 ;
LKHNAME(HZM) ;
 N LKHNAME S LKHNAME=""
 I $$LKHNOM(HZM) S LKHNAME=$$LKH^W4L($$LKHNOM(HZM))
 Q LKHNAME
 ;
LL(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"LL"))
 ;
MZMNM(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MZMNM"))
 ;
EMAIL(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"EMAIL"))
 ;
MIKUD(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"MIKUD"))
 ;
FAX(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"FAX"))
 ;
TELB(HZM) I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"TELB"))
 ;
MZM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",2)
 ;
CHK(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",3)
 ;
CA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",4)
 ;
ASR(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$SAS(HZM) ;;$P($G(@GL@("CB")),"\",5)
 ;
MKRTIME(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",7)
 ;
 ;
ODEF(HZM) I $G(HZM)="" Q ""
 I $G(HZM)="" Q ""
 Q $$SODEF(HZM)  ; -- 15/06/15 *** LEV
 ;
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",8)
 ;
SODEF(HZM) I $G(HZM)="" Q ""
 N SODEF,GLORD S SODEF=$$SODEFMZ(HZM)-$$STIPVT(HZM,"MZ")
 Q SODEF  ;; --- 15.06.15 *** LEV
 ;;
 I SODEF Q SODEF
 ;
 N TSHL S TSHL=$$TSHL(HZM)
 ;
 N OD S OD=$$SSHUL(HZM)+$$SAS(HZM)-TSHL-$$TIP(HZM)-$$ODEFTL(HZM)
 I OD<0&(TSHL>0) S OD=0
 I OD>0&(TSHL<0) S OD=0
 Q OD
 ;
SODEFMZ(HZM)
 N SODEF,GLORD S SODEF=0 D GLORD
 N N S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S SODEF=SODEF+$P(A,"*",5)
 Q SODEF
 ;
STIPVT(HZM,PRMVP)
 S OKSTIPVT=0
 N STIP,GLORD S STIP=0 D GLORD
 N VP S VP="" F  S VP=$O(@GLORD@("CB",VP)) Q:VP=""  D
 .I $G(PRMVP)'="",VP'=PRMVP Q
 .N N S N="" F  S N=$O(@GLORD@("CB",VP,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I VP="MZ" S STIP=STIP+$P(A,"*",6) I $P(A,"*",6) S OKSTIPVT=1
 ..I VP="CH" S STIP=STIP+$P(A,"*",12) I $P(A,"*",12) S OKSTIPVT=1
 ..I VP="V" S STIP=STIP+$P(A,"*",27) I $P(A,"*",27) S OKSTIPVT=1
 ..I VP="ASR" S STIP=STIP+$P(A,"*",20) I $P(A,"*",20) S OKSTIPVT=1
 Q STIP
 ;
STIP(HZM) I $G(HZM)="" Q ""
 N STIP,GLORD S STIP=$$STIPVT(HZM)
 I 'OKSTIPVT S STIP=$$TIP(HZM)
 I STIP<0&($$TSHL(HZM)'<0) Q 0
 I STIP>0&($$TSHL(HZM)'>0) Q 0
 Q STIP
 ;
SSHUL(HZM) I $G(HZM)="" Q ""
 Q $$SMZ(HZM)+$$SCH(HZM)+$$SCA(HZM)+$$STL(HZM)
 ;
TL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",9)
 ;
TIP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",10)
 ;
ODEFTL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",11)
 ;
POS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\",14)
 ;
POSVT(HZM,VT,IND) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB",VT,IND)),"*",26)
 ;
BSPAYCARD(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CARD"))
 ;
BSPAYNAME(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"NAME"))
 ;
BSPAYCLUB(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB"))
 ;
BSPAYCLUB1(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"CLUB1"))
 ;
BSPAYSUM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"PAID"))
 ;
BSPAYASM(HZM,NPAY) ;
 N GL,DLM D GL
 Q $G(@GL@("BSL","PAY",NPAY,"ASM"))
 ;
HESH(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL),DLM,20)
 ;
HSBP(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("HSB"))
 ;
NCAB(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("CB")),"\")
 ;
HSB2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("ETHB2"))
 ;
HRA2(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",1)
 ;
HODAA(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",2)
 ;
FIRE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("FIRE"))
 ;
MAZMIN(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("HR2")),"\\",5)
 ;
PSL(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\")
 ;
ZMANS(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",2)
 ;
TM(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("TM")),"\",5)
 ;
MYCHCLIENT(HZM) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("MYCH","CLIENT"))
 ;
MKRDLV(HZM) ;
 I $G(HZM)="" Q ""
 N MKRDLV S MKRDLV=$G(@$$^W4ORD@(+HZM,"MKRDLV"))
 I MKRDLV Q MKRDLV
 N ORD S ORD=+$G(@$$^W4GL("HZLINKW")@(HZM))
 Q $P($G(@$$^W4GL("W3ORDA")@(ORD)),"~",51)
 ;
CLOSE(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))
 ;
SETCLOSE(HZM,PR) I $G(HZM)="" Q
 N GL,DLM D GL
 N ITRA S ITRA=$$ITRA(HZM)
 I ITRA<-.1!(ITRA>.1) Q
 I $$CLOSE(HZM)<2 D
 .D PUT^%W1PRM("SAVEORD",HZM)
 .I $$SHUL(HZM)!'$$TSHL(HZM) S @GL@("S")=$G(@GL@("S"))+2 D
 ..I '($D(@$$^W4ORD@(HZM,"ETHB"))#2) D ^W4SGHB(HZM)
 .I $$SHULA(HZM) S @GL@("S")=$G(@GL@("S"))+4
 .J ^W4SNDCLS(HZM,JB) ; D ^
 .D ^W4HZSHAA
 .D ^W4GIBHZ(HZM)
 Q
 ;
CLOSECRED(HZM) I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $G(@GL@("S"))>3
 ;
CRCARDS(HZM) I $G(HZM)="" Q ""
 N N,CRCARDS S CRCARDS=""
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  I N D
 .S CRCARDS=CRCARDS_$P($G(^(N)),"*",2)_","
 Q CRCARDS
 ;
CRHZMLK(HZM) I $G(HZM)="" Q ""
 N N,CRHZMLK S CRHZMLK=$$HZMLAK(HZM)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  I N D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",7)_","
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S CRHZMLK=CRHZMLK_$P($G(^(N)),"*",12)_","
 Q CRHZMLK
 ;
SUGTS(HZM) I $G(HZM)="" Q ""
 N N,SUGTS S SUGTS=""
 N A S A=$G(@$$^W4ORD@(HZM,"CB"))
 N I F I=2:1:5 I $P(A,"\",I) S SUGTS=SUGTS_(I-1)_","
 I $P(A,"\",9) S SUGTS=SUGTS_"5,"
 Q $E(SUGTS,1,$L(SUGTS)-1)
 ;
SMZ(HZM,PART) I $G(HZM)="" Q ""
 N N,N1,SMZ S SMZ=0
 N GLORD D GLORD
 N MZ S MZ=$$MZM(HZM)+$$ODEF(HZM)
 I '$D(@GLORD@("CB","MZ")),'$G(PART) Q MZ
 I '$D(@GLORD@("CB","MZ")),$G(PART) Q $S($$POS(HZM)=PART:MZ,1:0)
 ;
 S N="" F  S N=$O(@GLORD@("CB","MZ",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",4)'=PART Q
 .S SMZ=SMZ+$P(A,"*")
 .S N1=N
 ;
 I $G(PART),PART=$$POS(HZM) S SMZ=SMZ-$$ODEF(HZM)
 ;
 Q SMZ
 ;
 ;
SCH(HZM,PART) I $G(HZM)="" Q ""
 N N,SCH S SCH=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","CH",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SCH=SCH+$P(A,"*")
 Q SCH
 ;
SCA(HZM,PART) I $G(HZM)="" Q ""
 N N,SCA S SCA=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","V",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SCA=SCA+$P(A,"*",7)
 Q SCA
 ;
SAS(HZM,PART) I $G(HZM)="" Q ""
 N N,SAS S SAS=0
 N GLORD D GLORD
 S N="" F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S SAS=SAS+$P(A,"*",4)
 Q SAS
 ;
STL(HZM,PART) I $G(HZM)="" Q ""
 N N,STL S STL=0
 N GLORD D GLORD
 I '$D(@GLORD@("CB","TL")) Q $P($G(@GLORD@("CB")),"\",9)
 S N="" F  S N=$O(@GLORD@("CB","TL",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;Q:$D(^(N,"DEL"))
 .I $G(PART),$P(A,"*",26)'=PART Q
 .S STL=STL+$P(A,"*")
 Q STL
 ;
NEWIND(HZM,VT) I $G(HZM)="" Q ""
 Q $$LASTIND(HZM,VT)+1
 ;
LASTIND(HZM,VT) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,99999),-1)
 ;
NEXTIND(HZM,VT,IND) I $G(HZM)="" Q ""
 Q $O(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
 ;
SETIND(HZM,VT,IND,VL,NRZ) I $G(HZM)="" Q
 I $G(VT)=""!($G(IND)="") Q
 I $G(NRZ) S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",NRZ)=VL Q
 ;
 I $G(NRZ)?1U.E D  Q
 .N MC S MC=$$GETST^W4GTVCH(VT)
 .N II F II=1:1:$L(MC,"*") I $P(MC,"*",II)=NRZ S @$P(MC,"*",II)=VL Q
 ;
 S @$$^W4ORD@(HZM,"CB",VT,IND)=VL
 Q
 ;
DEFIND(HZM,VT,IND) I $G(HZM)="" Q ""
 I '$G(IND) Q $D(@$$^W4ORD@(HZM,"CB",VT))
 Q $D(@$$^W4ORD@(HZM,"CB",VT,IND))
 ;
SUMIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=6
 I VT="MZ"!(VT="CH") S NRZ=1
 I VT="ASR" S NRZ=4
 I '$G(NRZ) Q ""
 N SUM S SUM=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 I VT="MZ" S SUM=SUM-$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",5)
 Q SUM
 ;
TIPIND(HZM,VT,IND)
 N NRZ
 I VT="V" S NRZ=27
 I VT="MZ" S NRZ=6
 I VT="CH" S NRZ=12
 I VT="ASR" S NRZ=20
 I '$G(NRZ)!'$G(IND) Q ""
 N TIP S TIP=$P($G(@$$^W4ORD@(HZM,"CB",VT,IND)),"*",NRZ)
 Q TIP
 ;
SETPOS(HZM,VT,IND) I $G(HZM)="" Q ""
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",26)=$$^W4MYDVN
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",28)=$$LASTMLZ^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB",VT,IND),"*",29)=$H
 Q
 ;
TOCUSNAME(HZM,VT,NOM) I $G(HZM)="" Q ""
 I $G(VT)="",'$G(NOM) Q $P($G(@$$^W4ORD@(HZM,"TOCUSNAME")),"\")
 Q $P($G(@$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)),"\")
 ;
SETTOCUSNAME(HZM,VT,NOM,VL) I $G(HZM)="" Q
 I '$G(VT),'$G(NOM) S @$$^W4ORD@(HZM,"TOCUSNAME")=VL_"\"_$H
 Q:$G(VT)=""  Q:$G(NOM)=""
 I '$D(@$$^W4ORD@(HZM,"CB",VT,NOM)) Q
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM)=VL_"\"_$H
 S @$$^W4ORD@(HZM,"TOCUSNAME",VT,NOM,"MKR")=$H
 Q
 ;
HZMDEL1(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",4)
 ;
HZMDEL2(HZM,VT,IND) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB",VT,IND,"DEL"))
 Q $P(A,"\",5)
 ;
BSCARD(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CARD"))
 ;
BSCLUB(HZM)
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB"))
 ;
BSCLUB1(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","CLUB1"))
 ;
BSNAME(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NAME"))
 ;
BSASM(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","ASM"))
 ;
BSHNH(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","HNH"))
 ;
BSNKD(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKD"))
 ;
BSPAY(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","PAY"))
 ;
BSNKDPAY(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","NKDPAY"))
 ;
BSDEL(HZM) ;
 I $G(HZM)="" Q ""
 Q $G(@$$^W4ORD@(HZM,"BSL","DEL"))
 ;
PAR(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\")
 ;
PAR1(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$CNWEB^%L1FRM($P($G(@GL@(I)),"\",3))
 ;
MH(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",4)
 ;
QN(HZM,I,GL) ;
 N QN
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 I I'["-" Q $P($G(@GL@(I)),"\",5)
 ;
 I $L(I,"-")=2 D
 .N CD,CDT S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .I CD=""!(CDT="") Q ""
 .S QN=$P($G(@GL@(CD,CDT)),"\",3)
 ;
 I $L(I,"-")>2 D
 .N CD,CDT,I3 S CD=$P(I,"-")
 .S CDT=$P(I,"-",2)
 .S I3=$P(I,"-",3)
 .I CD=""!(CDT="")!(I3="") Q ""
 .N ST S ST=$G(@GL@(CD,CDT,I3))
 .N PRTT,TSFT
 .S PRTT=$P(ST,"\"),TSFT=$P(ST,"\",4)
 .I PRTT S QN=$P(ST,"\",3)
 .E  S QN=$P(ST,"\",5)
 Q QN
 ;
 ;
MRG(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $G(@GL@("MRG",I))
 ;
ITRAST(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $$QN(HZM,I,GL)-$$MRG(HZM,I,GL)
 ;
TSF(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",6)
 ;
SUM(HZM,I,GL) ;
 I $G(HZM)="" Q ""
 N DLM I $G(GL)="" D GL
 Q $P($G(@GL@(I)),"\",7)
 ;
HRP(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",8)
 ;
AVAR(HZM,I) ;
 I $G(HZM)="" Q ""
 N AVAR S AVAR="ogleyl xa"
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",I)),"*",4)[AVAR
 ;
GLIST(HZM,I) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@(I)),"\",9)
 ;
EX2KITCH(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",6)
 ;
DELPOS(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",7)
 ;
WHODEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",2)
 ;
WHODEL1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N WHO S WHO=$$WHODEL(HZM,IND)
 I WHO="" Q ""
 Q $$SHORT^W4NAME(WHO)
 ;
SIBA(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",3)
 ;
SIBA1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 Q $P($G(@GL@("BIT",IND)),"*",4)
 ;
TIMEDEL(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N TM S TM=$P($G(@GL@("BIT",IND)),"*",5)
 Q $$T^%L1TIME(TM)
 ;
WHOHNH(HZM,IND) ;
 N GL,DLM D GL
 Q $P($G(@GL@("HNH",IND)),"*",2)
 ;
SIBHNH(HZM,IND) ;
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",3)
 ;
SIBHNH1(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",4)
 ;
MNLH(HZM,IND) ;
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 S IND=$$INDHNH(HZM,IND)
 Q $P($G(@GL@("HNH",IND)),"*",6)
 ;
SSUMHNHP(HZM) ;
 Q -$$SHNHP(HZM)
 ;
 N SHNHP S SHNHP=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .N CD S CD=$P(A,"\")
 .I $E(CD)'="-",CD'["%" S SHNHP=SHNHP-$$SUMHNHP(HZM,N)
 Q SHNHP
 ;
SUMHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 N ST S ST=$G(@GL@(IND+1))
 I $$ISHNHP($P(ST,"\")) Q $P(ST,"\",7)
 S ST=$G(@GL@(IND))
 N SUM S SUM=$P(ST,"\",7)
 N AH S AH=$$AHNHP(HZM,IND,GL)
 Q $J(AH*SUM*.01,2,2)
 ;
AHNHP(HZM,IND,GL) ;
 N DLM I $G(GL)="" D GL
 S IND=$$INDHNH(HZM,IND)
 N AH S AH=+$G(@GL@("HNH",IND))
 Q AH
 ;
NOMOD(HZM,I,CDT)
 I $G(HZM)="" Q ""
 Q $$CLOSEST(HZM,I,CDT)
 ;
CLOSEST(HZM,I,CDT)
 I $G(HZM)="" Q ""
 N GL,DLM D GL
 N OK S OK=0
 I '$G(I) Q " "
 I $L($G(CDT)) D  Q OK
 .I $G(@GL@(I,CDT))["\@@" S OK=1
 I $G(@GL@(I))["\@@" S OK=1
 Q OK
 ;
GL S GL=$$^W4GL("P1HZ")_"(HZM)",DLM="\"
 I $G(HZM),HZM>0,HZM["-" D
 .N NTS,HZMAIN S HZMAIN=+HZM,NTS=$P(HZM,"-",2)
 .S GL=$$^W4GL("P1HZ")_"("_HZMAIN_",""PART"","_NTS_")"
 .S DLM="~"
 Q
GLORD N GL,DLM D GL
 S GLORD=GL
 Q
 ;
PUT(HZM,NM,VL) ;
 I $G(HZM)="" Q
 N GL,DLM D GL
 L +@GL:1
 I NM="NMB" S $P(@GL,"\",1)=VL
 I NM="NAME" S $P(@GL,"\",2)=VL
 I NM="KTV" S $P(@GL,"\",3)=VL
 I NM="ZMANK" S $P(@GL,"\",4)=VL
 I NM="TRH" S $P(@GL,"\",5)=VL
 I NM="SHAA" S $P(@GL,"\",6)=VL
 I NM="HNH" S $P(@GL,"\",8)=VL
 I NM="DMSH" S $P(@GL,"\",9)=VL
 I NM="MAM" S $P(@GL,"\",10)=VL
 I NM="TSHL" S $P(@GL,"\",11)=VL
 I NM="SHUL" S $P(@GL,"\",12)=VL
 I NM="KOMA" S $P(@GL,"\",13)=VL
 I NM="DIRA" S $P(@GL,"\",14)=VL
 I NM="BAIT" S $P(@GL,"\",15)=VL
 I NM="CNISA" S $P(@GL,"\",16)=VL
 I NM="SHULA" S $P(@GL,"\",17)=VL
 I NM="MKBL" S $P(@GL,"\",18)=VL
 I NM="HNH2" S $P(@GL,"\",19)=VL
 I NM="HESH" S $P(@GL,"\",20)=VL
 I NM="CODTS" S $P(@GL,"\",21)=VL
 I NM="HNHAH" S $P(@GL,"\",22)=VL
 I NM="DMSAH" S $P(@GL,"\",23)=VL
 I NM="SOAD" S $P(@GL,"\",24)=VL
 I NM="LASTU" S $P(@GL,"\",26)=VL
 I NM="LKHN" S $P(@GL,"\",27)=VL
 I NM="DATK" S $P(@GL,"\",29)=VL
 I NM="HZMLAK" S $P(@GL,"\",30)=VL
 ;
 I NM="PSL" S $P(@GL@("TM"),"\",1)=VL
 I NM="ZMANS" S $P(@GL@("TM"),"\",2)=VL
 I NM="TM" S $P(@GL@("TM"),"\",5)=VL
 ;
 I NM="HRA2" S $P(@GL@("HR2"),"\\",1)=VL
 I NM="HODAA" S $P(@GL@("HR2"),"\\",2)=VL
 ;
 I NM="IR" S $P(@GL@("HR2"),"\\",4)=VL
 I NM="MAZMIN" S $P(@GL@("HR2"),"\\",5)=VL
 I NM="HRAED" S $P(@GL@("HR2"),"\\",6)=VL
 I NM="PELE" S $P(@GL@("HR2"),"\\",7)=VL
 I NM="FIRE" S @GL@("FIRE")=VL
 ;
 I NM="NCAB" S $P(@GL@("CB"),"\",1)=VL
 I NM="MZM" S $P(@GL@("CB"),"\",2)=VL
 I NM="CH" S $P(@GL@("CB"),"\",3)=VL
 I NM="CA" S $P(@GL@("CB"),"\",4)=VL
 I NM="ASR" S $P(@GL@("CB"),"\",5)=VL
 I NM="ODEF" S $P(@GL@("CB"),"\",8)=VL
 I NM="TL" S $P(@GL@("CB"),"\",9)=VL
 I NM="TIP" S $P(@GL@("CB"),"\",10)=VL
 I NM="POS" S $P(@GL@("CB"),"\",14)=VL
 ;
 I NM["," D
 .N II F II=1:1:$L(NM,",") D
 ..N NMFLD S NMFLD=$P(NM,",",II) D PUT(HZM,NMFLD,VL)
 L -@GL
 Q
 ;
TOT(HZM) ;
 I $G(HZM)="" Q 0
 N A,I,T,SUM
 S T=0
 N GL D GL
 S I="" 
 F  S I=$O(@GL@(I)) Q:I=""  I I D
 .S A=$G(^(I))
 .S SUM=$$SUM(HZM,I,GL)
 .S T=T+SUM
 Q T
 ;
TOTQN(HZM,PR) ;
 I $G(HZM)="" Q ""
 N I,T,QN,GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .S QN=$S($G(PR)=0:$P(A,"\",5),1:$$QN(HZM,I,GL))
 .I $$MSK^W4P($P(A,"\")) S QN=$S(QN>0:1,+QN=0:0,1:-1)
 .S T=T+QN
 Q T
 ;
 ;
TOTHN(HZM) ;
 N I,T,PR,PRAH S PR=0,PRAH=0
 N PARBHNH
 ;
 N GL D GL
 S T=0
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .N SUM S SUM=$$SUM(HZM,I,GL)
 .N PAR S PAR=$$PAR(HZM,I,GL)
 .I $$ISPAR(PAR) S PRAH=0
 .I '$D(PARBHNH(PAR)) S PARBHNH(PAR)=$$PARBHNH(PAR)
 .I $$ISPAR(PAR),$G(PARBHNH(PAR)) D  Q
 ..S SUM=0,PRAH=1 I '$$TSFBHNH^W4PRM S SUM=$$TSF(HZM,I,GL),PRAH=0
 ..S T=T+SUM
 .I PAR'="",'PRAH S T=T+SUM
 Q T
 ;
TOTDMS(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N DMSH S DMSH=$$DMSH(HZM)
 ;;I $$DMSAH(HZM) S DMSH=TOT*$$DMSAH(HZM)*.01
 Q DMSH
 ;
TOTORD(HZM) ;
 N TOT S TOT=$$TOT(HZM)
 N IGUL S IGUL=$$IGUL(HZM)
 S TOT=TOT-$$SHNH(HZM)+$$TOTDMS(HZM)
 ;
 I '$$CLOSE(HZM) D
 .N TSHL,HNH2 S TSHL=TOT D ^W4IGUL
 .S IGUL=HNH2
 .D PUT(HZM,"HNH2",HNH2)
 .D PUT(HZM,"TSHL",TSHL)
 ;
 S TOT=TOT-IGUL
 Q TOT
 ;
TSTMRG(HZM) ; - SDEL = SAH QN DEL
 I $D(@$$^W4ORD@(HZM,"MRG"))>9 Q 1
 Q 0
 ;
INDHNH(HZM,IND) ;
 N ST,GL D GL
 S ST=$G(@GL@(IND))
 N CD S CD=$P(ST,"\")
 I $$ISHNHP(CD) Q IND-1
 Q IND
 ;
ISHNHP(CD) ;
 I CD?1"-"1N.N.".".N.N1"%" Q 1
 Q 0
 ;
ISPAR(CD) ;
 I CD?1N.N.".".N Q 1
 Q 0
 ;
PARBHNH(PAR) ;
 I $L($$SMB^W4BLNMVC(PAR)) Q 1
 Q 0
 ;
COLSH0(HZM,GLORD) ;
 N I S I=0
 I $G(GLORD)="" S GLORD=$$^W4ORD
 N N S N="" F  S N=$O(@GLORD@(HZM,N)) Q:N=""  I N D
 .N PAR S PAR=$$PAR(HZM,N,GLORD_"("_HZM_")")
 .I PAR'?1N.N.".".N Q
 .I $$^W4CDSRV(PAR) Q
 .S I=I+1
 Q I
 ;
GCOUPIT(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 I $D(@GL@("GCOUP"))>9 Q 1
 Q 0
 ;
GCOUPPAYER(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERNAME"))
 ;
GCOUPTEL(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","PAYERTEL"))
 ;
GCOUPRCP(HZM) ;
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","RECIPIENTNAME"))
 ;
GCOUPSUM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","SUM"))
 ;
GCOUPTLM(HZM)
 I $G(HZM)="" Q ""
 N GL D GL
 Q $G(@GL@("GCOUP","TLM"))
 ;
WASVCBON(HZM)
 N OK S OK=0
 N N S N=999 F  S N=$O(@$$^W4ORD@(HZM,"VC",N),-1) Q:N=""  D  Q:OK
 .I $$ISDISC^WV(HZM,N) S OK=1 Q
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMVC1
W4HZMVC1(HZM,PRPC) ;  [ 31.08.23 13:16 ] [ 06.03.23 14:00 ] [ 02.03.23 10:20 ] 
 N (JB,%ARG,%REM,HZM,HSBENG,PRPC) S P1DZ=$$^W4DZ
 ;
 I $G(HZM)<1 Q
 I $$^W4CLOSE(HZM) D PCET(HZM) Q
 ;
 D GL
 I '$D(@GLMVC) Q
 I '$D(@GLSET) Q
 I '$D(@GLORD) Q
 ;
 D GETHNH(HZM)
 ;
 D LASTMVC1
 ;
 I $D(@GLTMP)<10 D
 .D CLR(HZM)
 ;
 S MVC="" F  S MVC=$O(@GLTMP@(MVC)) Q:MVC=""  D
 .S GETHNH=$G(^(MVC))
 .D CLR(HZM,MVC)
 .D SETIND(HZM,MVC,GETHNH)
 .I $G(PRPC) D PC(HZM,MVC,GETHNH)
 ;
 D PUT^W4HZMST(HZM,"HNH",$$SHNH^W4HZMST(HZM))
 S TSHL=$$TOTORD^W4HZMST(HZM)
 K @GLTMP
 Q
 ;
 ;
GETHNH(HZM) ;
 N (JB,%ARG,%REM,HZM)
 S DZ=$$^W4DZ
 D GL
 S I="" F  S I=$O(@GLORD@(I)) Q:I=""  I I?1N.N D
 .S PAR=$$PAR(HZM,I) Q:'PAR
 .S QN=$$QN(HZM,I)
 .S MHORD=$$MH(HZM,I)
 .S MVC="" F  S MVC=$O(@GLMVC@(MVC)) Q:MVC=""  D
 ..S A=$G(^(MVC,1))
 ..S DT1=$$GETMVC(MVC,"DT1")
 ..S DT2=$$GETMVC(MVC,"DT2")
 ..I DZ<DT1!(DZ>DT2) Q
 ..S SET=$$GETMVC(MVC,"SET") Q:'SET
 ..S MVCQN(MVC)=$$GETMVC(MVC,"QN")
 ..I $D(@GLSET@(SET,PAR)) D
 ...S PARSET(MVC)=$G(PARSET(MVC))+QN
 ...S PARSETS(SET,MVC)=$G(PARSETS(SET,MVC))+QN
 ...S PARSETS(SET,MVC,PAR,+MHORD)=$G(PARSETS(SET,MVC,PAR,+MHORD))+QN
 ;
 K QNMAX,MVCMAX,DIFMIN
 S DIFMIN=99999
 S SET="" F  S SET=$O(PARSETS(SET)) Q:SET=""  D
 .S MVC="" F  S MVC=$O(PARSETS(SET,MVC)) Q:MVC=""  D
 ..S DIF=PARSETS(SET,MVC)-$G(MVCQN(MVC))
 ..I DIF<0 Q
 ..I DIF<DIFMIN K RZN
 ..S RZN(SET,MVC)=DIF,DIFMIN=DIF 
 ;
 S SET="" F  S SET=$O(PARSETS(SET)) Q:SET=""  D
 .S MVC="" F  S MVC=$O(PARSETS(SET,MVC)) Q:MVC=""  D
 ..I '$D(RZN(SET,MVC)) D
 ...K PARSETS(SET,MVC)
 ...K PARSET(MVC)
 ;
 K @GLTMP
 S MVC="" F  S MVC=$O(PARSET(MVC)) Q:MVC=""  D
 .S QNORD=PARSET(MVC) Q:'QNORD
 .;
 .S MVC1=$G(@GLMVC@(MVC))
 .S SETMVC=$$GETMVC(MVC,"SET") I 'SETMVC Q
 .S SETMVC1=$G(@GLSET@(SETMVC))
 .S QNMVC=$$GETMVC(MVC,"QN") I 'QNMVC Q
 .I QNORD<QNMVC Q
 .S HNHMVC=0
 .D
 ..N MHMVC S MHMVC=$$GETMVC(MVC,"MH")
 ..I MHMVC D  Q
 ...S HNH=0
 ...N PAR,MH,QN
 ...S PAR="" F  S PAR=$O(PARSETS(SETMVC,MVC,PAR)) Q:PAR=""  D
 ....S MH="" F  S MH=$O(PARSETS(SETMVC,MVC,PAR,MH)) Q:MH=""  D
 .....I MHMVC<MH D 
 ......S QN=$G(PARSETS(SETMVC,MVC,PAR,MH))
 ......S HNH=HNH+(QN*(MH-MHMVC))
 ..
 ..S HNHMVC=$$GETMVC(MVC,"HNH") Q:'HNHMVC
 ..S HNH=$J(HNHMVC*(QNORD\QNMVC),2,2)
 .
 .S @GLTMP@(MVC)=HNH_";"_MVC1_";"_QNORD_";"_SETMVC_";"_SETMVC1_";"_QNMVC_";"_HNHMVC
 Q
 ;
 ;
GL ;
 S GLORD=$$^W4ORD_"(HZM)"
 S GLMVC=$$^W4GL("W4MVC1")
 S GLSET=$$^W4GL("P1SETM")
 S GLTMP=$$^W4MAIN("TMPM")
 Q
 ;
PAR(HZM,I)
 D GL
 Q $P($G(@GLORD@(I)),"\")
 ;
QN(HZM,I) ;
 D GL
 Q $P($G(@GLORD@(I)),"\",5)
 ;
MH(HZM,I) ;
 D GL
 N MH S MH=$P($G(@GLORD@(I)),"\",4)
 N AH S AH=$P($G(@GLORD@(I+1)),"\")
 I $E(AH)="-",AH["%" S MH=MH*(100+AH)*.01
 Q $J(MH,2,2)
 ;
GETMVC(MVC,PRM) ;
 N A S A=$G(@GLMVC@(MVC,1))
 I PRM="SET" Q $P(A,"\",1)
 I PRM="QN" Q $P(A,"\",2)
 I PRM="HNH" Q $P(A,"\",3)
 I PRM="DT1" Q $$^%L1DC($P(A,"\",4),3)
 I PRM="DT2" Q $$^%L1DC($P(A,"\",5),3)
 I PRM="MH" Q +$P(A,"\",6)
 Q ""
 ;
CLR(HZM,MVC) ;
 N N,A,WHO
 S N="" F  S N=$O(@GLORD@("CB","HNH1",N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I $G(MVC) I $P(WHO,"-",1,2)=("MVC1-"_MVC) K @GLORD@("CB","HNH1",N)
 .I '$G(MVC) I WHO["MVC1-" K @GLORD@("CB","HNH1",N)
 Q
 ;
SETIND(HZM,MVC,GETHNH) ;
 N N,A,WHO,HNH
 S IND=$O(@GLORD@("CB","HNH1",9999),-1)+1
 S HNH=$J(GETHNH,2,2)
 S @GLORD@("CB","HNH1",IND)=HNH_"*"_$H_"*MVC1-"_MVC_"-"_GETHNH
 S @GLORD@("MVC1")=$ZD($H,"DD.MM.YY  24:60")
 Q
 ;
PC(HZM,MVC,GETHNH) ;
 D ^W4MDPPC Q:'$D(%MDP("B"))
 D PRS^%L1FRM(GETHNH,"HNH;MVC1;QNORD;SETMVC;SETMVC1;QNMVC;HNHMVC",";")
 D KAV(20)
 I '$D(HSBENG) D
 .N GWPC S GWPC=40
 .I '$G(@$$^W4PRM@("MVCSHORT")) S TXT=%MDP("B")_$$CENTRB^%L1FRM(MVC1,GWPC)_%MDP("N") D S1
 .N WORD S WORD="zecigi"
 .I QNORD#1 S WORD="b""w",QNORD=$J(QNORD,3,3)
 .I '$G(@$$^W4PRM@("MVCSHORT")) S TXT=%MDP("BB")_$$CENTRB^%L1FRM("!!! rvana !!!",GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM(WORD_" "_QNORD_" zipw",GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM(SETMVC1,GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM("dgpd g""y "_HNH_" law",GWPC)_%MDP("N") D S1
 ;
 I $D(HSBENG) D
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM("COGRAGULATIONS - SALE !!!",GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM("GET "_HNH_" NIS DISCOUNT",GWPC)_%MDP("N") D S1
 D KAV(20)
 Q
 ;
KAV(WD) ;
 I '$G(WD) S WD=19
 S TXT=%MDP("B")_$TR($J("",WD)," ","*")_%MDP("N") D S1
 Q
 ;
S1 ;
 D S1^W4HZTH
 Q
 ;
PCET(HZM) ;
 N (JB,%ARG,%REM,HZM,HSBENG)
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I WHO["MVC1-" D
 ..S MVC=$P(WHO,"-",2)
 ..S GETHNH=$P(WHO,"-",3)
 ..D PC(HZM,MVC,GETHNH)
 Q
 ;
LASTMVC1
 N N,A,WHO,OKMVC1 S OKMVC1=0
 S N="" F  S N=$O(@GLORD@("CB","HNH1",N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I WHO["MVC1-" S OKMVC1=1
 ;
 I OKMVC1 S @GLORD@("LASTMVC1")=$O(@GLORD@(99999),-1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMVC3
W4HZMVC3(HZM,PRPC) ;  [ 24.11.21 16:22 ] [ 18.11.21 13:48 ] [ 23.02.21 19:02 ] 
 N (JB,%ARG,%REM,HZM,HSBENG,PRPC) S P1DZ=$$^W4DZ
 ;
 I $G(HZM)<1 Q
 I $$^W4CLOSE(HZM) D PCET(HZM) Q
 ;
 D GL
 I '$D(@GLMVC) Q
 I '$D(@GLSET) Q
 I '$D(@GLORD) Q
 ;
 D GETMTN(HZM)
 ;
 D LASTMVC3
 ;
 I $D(@GLTMP)<10 D
 .D CLR(HZM)
 ;
 S MVC="" F  S MVC=$O(@GLTMP@(MVC)) Q:MVC=""  D
 .S GETMTN=$G(^(MVC))
 .D CLR(HZM,MVC)
 .D SETMTN(HZM,MVC,GETMTN)
 .I $G(PRPC) D PC(HZM,MVC,GETMTN)
 ;
 S TSHL=$$TOTORD^W4HZMST(HZM)
 K @GLTMP
 Q
 ;
 ;
GETMTN(HZM) ;
 D GL
 K PARSET,PARSETS
 S I="" F  S I=$O(@GLORD@(I)) Q:I=""  I I?1N.N D
 .S PAR=$$PAR(HZM,I) Q:'PAR
 .S QN=$$QN(HZM,I)
 .S MVC="" F  S MVC=$O(@GLMVC@(MVC)) Q:MVC=""  D
 ..S A=$G(^(MVC,1))
 ..S DT1=$$GETMVC(MVC,"DT1")
 ..S DT2=$$GETMVC(MVC,"DT2")
 ..I P1DZ<DT1!(P1DZ>DT2) Q
 ..S SET=$$GETMVC(MVC,"SET") Q:'SET
 ..I $D(@GLSET@(SET,PAR)) D
 ...S PARSET(MVC)=$G(PARSET(MVC))+QN
 ...S PARSETS(SET,MVC)=$G(PARSETS(SET,MVC))+QN
 ;
 K QNMAX,MVCMAX
 S SET="" F  S SET=$O(PARSETS(SET)) Q:SET=""  D
 .S MVC="" F  S MVC=$O(PARSETS(SET,MVC)) Q:MVC=""  D
 ..I PARSETS(SET,MVC)>$G(QNMAX(SET)) D
 ...S QNMAX(SET)=PARSETS(SET,MVC)
 ...S MVCMAX(SET)=MVC
 ;
 S SET="" F  S SET=$O(PARSETS(SET)) Q:SET=""  D
 .S MVC="" F  S MVC=$O(PARSETS(SET,MVC)) Q:MVC=""  D
 ..I $G(MVCMAX(SET)),MVC'=MVCMAX(SET) D
 ...K PARSET(MVC)
 ...K PARSETS(SET,MVC)
 ;
 K @GLTMP
 S MVC="" F  S MVC=$O(PARSET(MVC)) Q:MVC=""  D
 .S QNORD=PARSET(MVC) Q:'QNORD
 .;
 .S MVC3=$G(@GLMVC@(MVC))
 .S SETMVC=$$GETMVC(MVC,"SET") I 'SETMVC Q
 .S SETMVC3=$G(@GLSET@(SETMVC))
 .S QNMVC=$$GETMVC(MVC,"QN") I 'QNMVC Q
 .I QNORD<QNMVC Q
 .S HNHMVC=$$GETMVC(MVC,"HNH") Q:'HNHMVC
 .S HNH=$J(HNHMVC*(QNORD\QNMVC),2,2)
 .S @GLTMP@(MVC)=HNH_";"_MVC3_";"_QNORD_";"_SETMVC_";"_SETMVC3_";"_QNMVC_";"_HNHMVC
 Q
 ;
 ;
GL ;
 S GLORD=$$^W4ORD_"(HZM)"
 S GLMVC=$$^W4GL("W4MVC3")
 S GLSET=$$^W4GL("P1SETM")
 S GLTMP=$$^W4MAIN("TMPM")
 Q
 ;
PAR(HZM,I)
 D GL
 Q $P($G(@GLORD@(I)),"\")
 ;
QN(HZM,I) ;
 D GL
 Q $P($G(@GLORD@(I)),"\",5)
 ;
GETMVC(MVC,PRM) ;
 N A S A=$G(@GLMVC@(MVC,1))
 I PRM="SET" Q $P(A,"\",1)
 I PRM="QN" Q $P(A,"\",2)
 I PRM="HNH" Q $P(A,"\",3)
 I PRM="DT1" Q $$^%L1DC($P(A,"\",4),3)
 I PRM="DT2" Q $$^%L1DC($P(A,"\",5),3)
 Q ""
 ;
CLR(HZM,MVC) ;
 N N,A,WHO
 S N="" F  S N=$O(@GLORD@("CB","HNH1",N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I $G(MVC) I $P(WHO,"-",1,2)=("MVC3-"_MVC) K @GLORD@("CB","HNH1",N)
 .I '$G(MVC) I WHO["MVC3-" K @GLORD@("CB","HNH1",N)
 Q
 ;
SETMTN(HZM,MVC,GETMTN) ;
 N N,A,WHO,HNH
 S IND=$O(@GLORD@("CB","HNH1",9999),-1)+1
 S HNH=$J(GETMTN,2,2)
 S @GLORD@("CB","HNH1",IND)=HNH_"*"_$H_"*MVC3-"_MVC_"-"_GETMTN
 S @GLORD@("MVC3")=$ZD($H,"DD.MM.YY  24:60")
 Q
 ;
PC(HZM,MVC,GETMTN) ;
 D ^W4MDPPC Q:'$D(%MDP("B"))
 D PRS^%L1FRM(GETMTN,"HNH;MVC3;QNORD;SETMVC;SETMVC3;QNMVC;HNHMVC",";")
 D KAV(20)
 I '$D(HSBENG) D
 .N GWPC S GWPC=40
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM(MVC3,GWPC)_%MDP("N") D S1
 .N WORD S WORD="zecigi"
 .I QNORD#1 S WORD="b""w",QNORD=$J(QNORD,3,3)
 .S TXT=%MDP("BB")_$$CENTRB^%L1FRM("!!! rvana !!!",GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM(WORD_" "_QNORD_" zipw",GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM(SETMVC3,GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM("dgpd g""y "_HNH_" law",GWPC)_%MDP("N") D S1
 ;
 I $D(HSBENG) D
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM("COGRAGULATIONS - SALE !!!",GWPC)_%MDP("N") D S1
 .S TXT=%MDP("B")_$$CENTRB^%L1FRM("GET "_HNH_" NIS DISCOUNT",GWPC)_%MDP("N") D S1
 D KAV(20)
 Q
 ;
KAV(WD) ;
 I '$G(WD) S WD=19
 S TXT=%MDP("B")_$TR($J("",WD)," ","*")_%MDP("N") D S1
 Q
 ;
S1 ;
 D S1^W4HZTH
 Q
 ;
PCET(HZM) ;
 N (JB,%ARG,%REM,HZM,HSBENG)
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I WHO["MVC3-" D
 ..S MVC=$P(WHO,"-",2)
 ..S GETMTN=$P(WHO,"-",3)
 ..D PC(HZM,MVC,GETMTN)
 Q
 ;
LASTMVC3
 N N,A,WHO,OKMVC3 S OKMVC3=0
 S N="" F  S N=$O(@GLORD@("CB","HNH1",N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I WHO["MVC3-" S OKMVC3=1
 ;
 I OKMVC3 S @GLORD@("LASTMVC3")=$O(@GLORD@(99999),-1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZMVCS
W4PRNLST ; [ 14.11.21 15:02 ] [ 01.09.13 11:36 ] [ 15.08.13 15:30 ] [
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" align=""center"">",!
 D KOT
 ;
 N A,N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .W "<tr>"
 .S A=$G(^(N))
 .W "<td style=""color:brown;font-weight:bold"">"_N_"</td> "
 .W "<td>"_$$H2U^%L1FRM($P(A,"\",4))_"</td>"
 .W "<td style=""color:grey"">"
 . W "[ "_$P(A,"\",3)_" ]"
 .W "</td>"
 .W "</tr>",!
 W "</table>",!
 Q
 ;
KOT ;
 Q
 W "<tr>"
  W "<th>"_$$^%W1DICT("PRINTERNUMBER")_"</th>",!
 W "</tr>",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("PRINTERNAME")_"</th>",!
 W "</tr>",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "</tr>",!
 Q
 ;
 ;
DEV ;
 N DEV S DEV=$$^W4DEV
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" align=""center"">",!
 ;
 N A,N S N="" F  S N=$O(@DEV@(N)) Q:N=""  D
 .W "<tr style=""cursor:pointer"" id=""tr"_N_""" "
 .W " onClick=""ClickPrn('"_N_"')"" "
 .W ">"
 .S A=$G(^(N))
 .W "<td style=""color:brown;font-weight:bold"">"_N_"</td> "
 .W "<td id=""td"_N_""" "
 .W " onMouseOver=""LightLine('"_N_"')"" "
 .W " onMouseOut=""NormalLine('"_N_"')"" "
 .W ">"_A_"</td>"
 .W "</tr>",!
 W "</table>",!
 Q
 

W4HZORD
W4HZORD(TXT) ; [ 14.09.26 10:26 ] [ 11.09.26 17:23 ] [ 10.09.26 14:17 ] 
 N (JB,%ARG,TXT,BACK,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 S MSD=$$GET^%W1PRM("MSD")
 S NMB=$$GET^%W1PRM("NMB")
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;
 I '$$CHNORD D KILL^%W1PRM("CHNORD1")
 I '$$CHNORD^W4PRM D KILL^%W1PRM("CHNORD"),KILL^%W1PRM("CHNORD1")
 ;
 I $G(%ARG("CHNORD"))?1N D
 .D PUT^%W1PRM("CHNORD",%ARG("CHNORD"))
 ;
 S COLSPAN=$S($$ZAG:5,$$^W4AIN:6,$$CONDORD(NMB):7,$$PRMANA1&'$$^W4SMALL:8,1:7)
 ;
 D PUT^%W3DEB("W4HZORD","TXT=TXT & MSD=MSD & %ARG=[%ARG")
 ;
 N W3HZORD S W3HZORD=""
 ;
 I '$$ZAG S ^[$$^W3MAIN]devpi($$^W4MYDVN)=JB
 I $$ZAG D INIT^W4ZAG
 ;
 K TXT
 ;
 S CUR=0
 D TMPORD
 D TMPORD1 K @TMPORD1
 ;
 D PUT^%W1PRM("SHOWORD",1)
 ;
VIEW ;
 D NOSELECT^%W1JS
 S FIRSTADD=-1,OPENADD=$$OPENADD^W4PRM ; WAS 0
 I $$ZAG S OPENADD=1
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;
 I HZM>0,$$VVMSK^W4PRM,$$GETP^%W1PRM("CLRORD")=HZM,$$^W4HZMH(HZM) D
 .N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  K ^(N)
 .S $P(@$$^W4TMPORD,"~",11)=0
 ;
 D KILL^%W1PRM("CLRORD")
 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 W "<div id=""DivOrd"" align=""center"" ",!
 W ">"
 ;
 ;;W "<br><br>",!
 ;
 I $$ZAG,$G(%ARG("JBFROM")) S JB=$G(%ARG("JBFROM")) ; ***
 ;
 I $$AIN D
 .N STPAR0 S STPAR0=$$^W4RSTPAR
 .D AINMAIN(+$$QNV(STPAR0))
 ;
 I $$DELMAINAI D
 .N SH,QNDEL,MLZ
 .S MLZ=$$GETP^%W1PRM("MLZR")
 .S MN=$$^W4WHOSBM
 .S SH=$$DELMAINAI
 .S QNDEL=$$ITRAST^W3HZMST(JB,SH)
 .D DELNOMOD(SH,QNDEL,MLZ,MN)
 .D KILL^%W1PRM("DELMAINAI")
 ;
HDORD
 I '$$AIN D ^W4HZORHD(HZM) ; --> COLSPAN
 ;
 F J=1:1:$G(W4HZORHDSM) D
 .W "<br><br>",!
 ;
 S BGC="#eaeaea"
 ;
 S WDTBL=100
 I $$1024^W4WDSCR,$$^W4TABLET'=2 S WDTBL=100
 I $$ZAG S WDTBL=98
 ;
 I $G(%ARG("HZMSK")) D
 .N HZMSK S HZMSK=$G(%ARG("HZMSK"))
 .N %ARG
 .W "<p dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(20)_""" >",! 
 . W $$^%W1DICT("WEIGHTORDER",HZMSK)
 .W $$NBSP^%L1FRM(3)
 .D ^W4BCK
 .W "</p>",!
 ;
 ;
 W "<table id=""TblOrd"" border=0 "
   W " width="""_WDTBL_"%"" class=""bgtblord"" "
   I $$^W4TABLET=2 W $$INV^%W1ALIGN
   W " style="""
    W "left:"_($$LEFT^W4HZORHD-1)_";"
    ;;I '$$^W4SMALL W "table-layout:fixed;"
    W "background-color:"_BGC_";"
    W $$RAD^W3CSM_";"
    W $$BOXSHADOW^W3CSM("0px",$$KF(6)_"px",".4")
    W "border:grey "_$$KF(1)_"px solid"
   W """ "
   W " cellspacing=""0"""
   W " dir="""_$$^%W1DIR_""" "
 W ">",!
  ;
  D TRTH(1); -- <tr><th> ...
  ;
 S FLA=0,FLED=0,PRT=""
 ;
 D SETOP
 ;
 S IDMAIN="",AHST="",NOTSFMVC=""
 D MN^W4MANA
 N I,IO,CMST,HNST,HNST1 S (HNST,HNST1,CMST)=""
 ;
 S CURLN=$$GETP^%W1PRM("CURLN")
 N TSHL S TSHL=$$TSHL^W3HZMST(JB)
 N W4AIN S W4AIN=$$^W4AIN
 N QN0,CD0 S (QN0,CD0)=""
 ;
 N RESMVC S RESMVC=$$MVC3
 ;
 K MHVAR
 M MHVAR=^|$$^W3MAIN|TMPORD0(JB)
 K ^|$$^W3MAIN|TMPORD0(JB) ; ***
 ;;I $D(MHVAR) ZWR MHVAR
 ;
 S I="" F  S I=$O(@TMPORD@(I))  Q:I=""  I I?1N.N D  D FIRE(I,COLSPAN)
 .N A S A=$G(^(I))
 .N CD S CD=$$CD(A)
 .S $P(@TMPORD@(I),"~",10)=I
 .
 .I $$LV(A)=0 D  ; --------------------------  ITEMS
 ..S FLA=0,FLED=0,ITRA0=$$ITRAST^W3HZMST(JB,I),QN21=""
 ..S (CMST,HNST,HNST1)=""
 ..S FIRSTADD=-1
 ..S OPENADD=$$OPENADD(I) I $$ZAG S OPENADD=1
 ..I $$EDITLINE(I) S FLED=1
 ..I $$QNV(A)<0&(TSHL'<0!W4AIN),$$^W4BIT(I,TMPORD) Q
 ..D SENDED(I,COLSPAN) ; -- SENDED2PRINT
 ..
 ..S BGC=$$BGCOLOR(I)
 ..
 ..W $$TRLV0(I_"^"_A)
 ..
 ..S PRT=CD,IDMAIN="LV0"_I
 ..N MRG S MRG=$$MRG^W3HZMST(JB,I)
 ..S QN0=$$QNR^W3HZMST(JB,I)
 ..S CD0=$$CDST^W3HZMST(JB,I)
 ..
 ..I '$$ZAG(NMB) D TDCD ; --- CODE
 ..
 ..D TDNAME
 ..
 ..I $$CDSRV(A),$$CDSRV(A)'=12,$$QNV(A)>0 G ETR ; -- IF SERVIS CODE VIEW NAME ONLY
 ..
 ..D TDQN
 ..
 ..D TDMH
 ..
 ..S HNST=$J($$HNST^W3HZMST(JB,I),$$DR,$$DR),AHST=HNST
 ..S NOTSFMVC=$P($G(@$$^W3TMPORD@(JB,I)),"~",8)
 ..I '$$^W4POSMSK(NMB),'$$^W4AIN,'$$NODISCST D TDDISC
 ..
 ..I '$$CONDORD(NMB) D  ; -------------- GLIST
 ...D TDGLIST(0,I)
 ..
 ..I '$$CONDORD(NMB)!$$^W4AIN,$$PRMANA1 D TDMANA
 ..;;I '$$SUPER^W3PRM,$$PRMANA1 D TDMANA
 ..
 ..I $$CONDORD(NMB),'$$^W4AIN D TDSUM ;
 ..
 ..I '$$ZAG D TDIMG
 ..
ETR ..W "</tr>",!
 ..
 ..
 ..I 'OPENADD D  Q
 ...N I1 S I1=I+1
 ...I $$CDCI(I1) D TRCMNT ; --- COMMENT
 ...Q:'$$HASADD(I)
 ...D TRADD
 .
 .
 .I $$LV(A) D  ; -------------- ADDITIONS ---------
 ..N MHT
 ..
 ..I $G(ITRA0)<0 Q
 ..
 ..I $$QN1($$QN(A))<0 Q
 ..I $$QN1^W3HZMST(JB,I)<0 Q
 ..
 ..I 'OPENADD Q
 ..I FIRSTADD=-1 S FIRSTADD=1
 ..
 ..I $$CDA(A) D
 ...S FLA=1
 ...I $$GET^%W1PRM("SHID4")=("LV1"_I) S FLED=2
 ..
 ..W "<tr style=""color:"_$$COLORADD^W4CSS($$LV(A))
 .. D BGC1(I)
 .. W """ height="""_$$KF(40)_"px"" id="""_$S($$CDC(A):"CM1",1:"LV1")_I_""""
 ..W " >",!
 ..
 ..I '$$ZAG(NMB) D TDTCD
 ..D TDTNAME
 ..D TDTQN
 ..D TDTMH
 ..
 ..S HNST1=$J($$HNST^W3HZMST(JB,I),$$DR,$$DR)
 ..I '$$^W4POSMSK(NMB),'$$^W4AIN,'$$NODISCST D DISCCMST(MHT)
 ..
 ..I '$$CONDORD(NMB) D
 ...D TDGLIST(1,I)
 ..
 ..I '$$SUPER^W3PRM,'$$CONDORD(NMB)!$$^W4AIN,$$PRMANA1 D TDTMANA
 ..
 ..I $$CONDORD(NMB),'$$^W4AIN D TDSUM
 ..
 ..I '$$ZAG D TDTIMG
 ..
 ..W "</tr>",!
 ;
 D SENDED(99999,COLSPAN)
 ;
 I $G(%ARG("HZMH")),'$D(@TMPORD@(1)),'$$^W4SMALL,'$$AIN D
 .D INIT^W3PRCOFR(JB)
 ;
 ;
 I '$O(@TMPORD@(99999),-1),'$$^W4SMALL,'$$AIN,'$$ZAG,'$$^W6 D  ; -- TABLE HISTORY
 . W "<tr><td colspan=""8"">"
 .  W "<input type=""button"" "
 .  W "style=""height:"_$$KF(50)_"px;width:100%;text-align:center;color:darkred;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"" "
 .  W "value="""_$$^W4DICTHS($$GETP^%W1PRM("NMB"))_""" "
 .  W $$^W4TOUCH_"=""TableHistory()"" >"
 . W "</td></tr>",!
 ;
 I $$^W4TABLET'=2,$$VL^W4SMALL'=2 W "</table>",!
 ;
 W "</div>",!
 ;
 D SCROLLDOWN
 ;
 I $$ZAG S JB=$G(%ARG("JB")) ; ***
 ;
 Q
 ;
 ;
MVC3() ; 
 N (JB,%ARG)
 N GL S GL=$$^W4GL("W4MVC3")
 I $D(@GL)<10 Q 0
 N HZM S HZM=$$GETP^%W1PRM("HZM") 
 ;
 I HZM>0,$$CLOSE^W4HZMST(HZM) Q 0
 I HZM>0,$$^W4HZMH(HZM) Q 0
 I HZM>0,$$DEL^W4DEL(HZM) Q 0
 I HZM>0,$$^W4PIZUL(HZM) Q 0
 ;
 S MVC=3 D PUT^%W1PRM("MVC",MVC)
 ;
 S OK=0
 N N,SET S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I '$$USVIB^W4SALE(N,MVC) Q
 .S A=$G(@GL@(N,1))
 .S SET2=$$GET^W4SALE("SET2",A,MVC) I SET2="" Q
 .S PRC=$$GET^W4SALE("PRC",A,MVC) I PRC'<0,PRC'["=" Q
 .N GLSET S GLSET=$$^W4GL("P1SETM")
 .N CDSET S CDSET=$O(@GLSET@(SET2,"")) I 'CDSET Q
 .I $O(@GLSET@(SET2,CDSET))'="" Q
 .N IND S IND=N_"-"_CDSET_";"
 .N RES S RES=$$ADDMVC^W4SALE(IND) I RES S OK=1
 ;
 Q OK
 ;
 ;
ZAG(STAM) ;
 Q $$^W4ZAG
 ;
KF(NUM) ;
 Q $$^W4KF(NUM)
 ;
DR(STAM) ;
 Q 2
 I $G(@$$^W4PRM@("ORDDR2")) Q 2
 Q 1
 ;
TRLV0(PRM) ;
 N I,A
 S I=$P(PRM,"^")
 S A=$P(PRM,"^",2)
 ;
 N BGC S BGC=$$BGCOLOR(I)
 N HG S HG=$$KF(40)
 N ST
 S ST="<tr id=""LV0"_I_""" "
 I I'=+$$GETP^%W1PRM("TOAI") S ST=ST_" class="""_$S($$NOMOD(I):"wasprinted",1:"forecolor")_""" "
 S ST=ST_" style=""height:"_HG_"px"
 I $$HZMSKONL^W4MENU S ST=ST_";font-size:"_$$^W3FSZ(16)
 N CLRBG S CLRBG=BGC
 I I=+$$GETP^%W1PRM("TOAI") S CLRBG="yellow"
 I $$TOAICD^W4PRM,$$TOAICD^W4PRM=$$CD(A) S CLRBG="lightblue"
 I $$CDSRV(A),$$QNV(A)>0 S CLRBG="lightblue"
 K PRMVL
 I $D(@$$^W4TMPORD@(I,"MVL")) D
 .S CLRBG=$$BGCMVL
 .K @$$^W4TMPORD@(I,"MVL")
 .S PRMVL=""
 ; 
TRLV01 S ST=ST_"; background-color:"_CLRBG
 I $$CHNORD,'$$NOMOD^W3HZMST(JB,I) D
 .S ST=ST_";cursor:pointer"
 S ST=ST_""""
 ;
 I $$CHNORD,'$$NOMOD^W3HZMST(JB,I) D
 .S ST=ST_" "_$$^W4TOUCH_"=""ClickChnLine('"_I_"')"" "
 S ST=ST_">"
TRLV0E Q ST
 ;
 ;
IFMRG(I) ;
 Q 1
 ;
AINMAIN(QN) ;
 N STPAR0,CD S STPAR0=$$^W4RSTPAR
 S OPENADD=1
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr><td class=""sheetheader"" style=""border:solid 2px brown"" >"
  S CD=$$CD(STPAR0)
  W "&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(CD))_"&nbsp;"
  W "</td>",!
  W "<td>&nbsp;</td>"
  W "<td class=""hdaiqnb"">"
  W $$^%W1DICT("QUANTITY")_"&nbsp;"
  W " <span id=""qnpar0"" style=""color:green"">"_QN_"</span>"
  W "</td>"
  ;
  W "<td class=""hdaiqnb"">&nbsp;"
  W $$^%W1DICT("PRICE")_"&nbsp;"
  I $G(NMB) S PRMHNMB=NMB
  S MH=$$MH^W4P(CD)
  W " <span id=""mhpar0"" style=""color:green"">"_$J(MH,$$DR,$$DR)_"</span>"
  W "</td>",!
  D
  .W "<td class=""hdaiqnb"">&nbsp;"
  .W $$^%W1DICT("TOTAL")_"&nbsp;"
  .W " <span id=""totpar0"" style=""color:green"">"_$J(QN*MH,$$DR,$$DR)_"</span>"
  .W "</td>",!
AINMAINE ;
 W "</tr>",!
 W "</table>",!
 W "<br>",!
 Q
 ;
TRTH(VSBL) ;
 D TRTH^W4HZORHD(VSBL)
 Q
 ;
SETOP ;--------------------- SET TMPOP --------------------
 D TMPOP
 N N S N="" F  S N=$O(@TMPOP@(N)) Q:N=""  I N,N>$$LASTI0^W3HZMST(JB) K @TMPOP@(N)
 ;
 N I S I="" F  S I=$O(@TMPORD@(I))  Q:I=""  I I?1N.N D
 .I $$LVI(I)=0,I=$$LASTI0^W3HZMST(JB),'$$NOMOD(I) S @TMPOP@(I)=9 Q
 .I $$LVI(I)=0,I<$$LASTI0^W3HZMST(JB),$$OPENADD(I)=9 S @TMPOP@(I)=0 Q
 .I $$LVI(I)=0,'$D(@TMPOP@(I)) S @TMPOP@(I)=0
 Q
 ;
VWCD(CD) ;
 N CD1 S CD1=$G(CD)
 I $L(CD1)>4 D
 .N LCD S LCD=$L(CD1)
 .N FSZ S FSZ=$S(LCD=5:10,LCD=6:8,1:7)
 .S CD1="<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(FSZ)_""">"_CD1_"</span>"
 Q CD1
 ;
 ;
TDCD ;
 W "  <td style=""text-align:center"" "
 N CD S CD=$$CD(A)
 N CD1 S CD1=$$SMB^W4BLNMVC(CD)_CD
 N VL,VL0 S VL0=$$VWCD(CD1),VL=VL0
 ;
 I $$CDSRV(A) G TDCDE
 ;
 I $$CDA(A) S VL="&nbsp;" G TDCDE
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$NOMOD(I),'$$PREZAT(A),'$$MSK^W4P($$CD(A)) D
 .S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold"
 .D
 ..I $$CDMVC3(CD)!$$CDMVC4(CD)!$$USMVC5(CD) S VL=VL_""">"_$$H2U^%L1FRM("n") Q
 ..S VL=VL_";cursor:pointer""> -"
 .S VL=VL_"</span><br>"_VL0
 .Q:$$CDMVC3(CD)!$$CDMVC4(CD)!$$USMVC5(CD)
 .W " "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',-1)"""
 ;
TDCDE ;
 W " >"_VL_"</td>",!
 Q
 ;
 ;
TDINS(PRM)
 N I,A,ZAG
 ;;S ^AA("W4HZORD-TDINS","PRM")=PRM
 S I=$P(PRM,"^")
 S ZAG=$P(PRM,"^",2)
 S %ARG("ZAG")=ZAG
 S A=$P(PRM,"^",3,200)
 N NMB S NMB=$$GET^%W1PRM("NMB")
 ;
 N CD S CD=$$CD(A)
 N CD1 S CD1=$$SMB^W4BLNMVC(CD)_CD
 N VL S VL=$$VWCD(CD1)
 ;
 I ZAG S ST="" G TDINS2
 ;
 S ST="<td style=""text-align:center"" "
 ;
 I $$CDSRV(A) G TDINS1
 ;
 I $$CDA(A) S VL="&nbsp;"
 ;
 I '$$CDA(A) D
 .I $$CDMVC3(CD)!$$CDMVC4(CD)!$$USMVC5(CD) S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold;cursor:pointer"">"_$$H2U^%L1FRM("n")_"</span><br>"_VL Q
 .S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold;cursor:pointer"">-</span><br>"_VL
 .S ST=ST_" "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',-1)"" "
 ;
TDINS1
 S ST=ST_">"_VL_"</td>"
 ;
TDINS2 ; 
 S ST=ST_$$TDNAMEST(A,I)
 ;
 I $$CDSRV(A),$$QNV(A)>0 G TDINSE
 ;
 S ST=ST_$$TDQNST(JB,A,I)
 S ST=ST_$$TDMHST(A,I)
 ;
 N HNST,AHST S HNST=$J($$HNST^W3HZMST(JB,I),$$DR,$$DR),AHST=HNST
 N NOTSFMVC
 S NOTSFMVC=$P($G(@$$^W3TMPORD@(JB,I)),"~",8)
 ;
 I '$$^W4SMALL,'$$^W4POSMSK(NMB),'$$NODISCST D
 .N TDDISCST S TDDISCST=$$TDDISCST(A,I)
 .S ST=ST_TDDISCST
 ;
 D MN^W4MANA
 I '$$CONDORD(NMB) D  ; -------------- DISCOUNT, GLIST , MANA
 .S ST=ST_$$TDGLISTST(0,A,I)
 ;
 I '$$CONDORD(NMB)!$$^W4AIN,$$PRMANA1 S ST=ST_$$TDMANAST(A,I)
 ;;I '$$SUPER^W3PRM,$$PRMANA1 S ST=ST_$$TDMANAST(A,I)
 ;
 I $$CONDORD(NMB),'$$^W4AIN S ST=ST_$$TDSUMST(JB,A,I)
 ;
 I 'ZAG S ST=ST_$$TDIMGST(JB,A,I)
TDINSE ;
 N A S A=I_"<>"_$$^W4GETSUM(JB,1)_"<>"_ST
 ;;S ^AA("W4HZORD-TDINS","A")=A
 Q A
 ;
 ;
TDNAME ;
 W $$TDNAMEST(A,I)
 Q
 ;
TDNAMEST(A,I)
 ;;S ^AA("W4HZORD-TDNAMEST","A")=A
 ;;S ^AA("W4HZORD-TDNAMEST","I")=I
 N ST S ST="  <td "
   I $$CDSRV(A),$$CDSRV(A)'=12,$$QNV(A)>0 S ST=ST_" colspan=""6"" "
   ;
   I '$$NOEDITMOD(I) D
   .I $$DD^W4EZA($$CD(A)),$$MANA^W4PRM=1,'$$^W4AIN Q
   .;;S ST=ST_" style="""_$$CMNTBORDER(I,$$BGCOLOR^W4CSS)_""" " ; -- 23/01/24 - STYLE
   ;
   I '$$ZAG,'$$^W4AIN,$$CUR(I) D
   .D KILL^%W1PRM("CURLN")
   .S ST=ST_" class=""cur"" style=""text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""" "
   ; 
   I $$CDA(A) S ST=ST_" class=""hdgr"" "
   ;
   S ST=ST_"><table width=""100%""><tr>"
   ;
   I '$$ZAG,$$DD^W4EZA($$CD(A)),'$$^W4AIN,$$^W4MULTY,'$$NOMAM^W4PRM D
   .I $$PAPJ^W4PRM,$$NOMOD(I) S ST=ST_"<td>&nbsp;</td>" Q  ; -- 25/11/25
   .S ST=ST_"<td><img src=""w4del20.png"" "
   .S ST=ST_"height="""_$$^W4KF(30)_"px"" " 
   .S ST=ST_"width="""_$$^W4KF(30)_"px"" " 
   .S ST=ST_"alt="""_$$^%W1DICT("DELETE")_""" "
   .I $$NOEDITMOD(I) S ST=ST_" "_$$^W4TOUCH_"=""DelRowOrd('LV0"_I_"','1')""> "
   .I '$$NOEDITMOD(I) S ST=ST_" "_$$^W4TOUCH_"=""DelYesNo('LV0"_I_"')"" >"
   .S ST=ST_"</td>"
   ;
   S ST=ST_"<td "
   I '$$NOEDITMOD(I) D
   .I $$DD^W4EZA($$CD(A)),$$MANA^W4PRM=1,'$$^W4AIN Q
   .S ST=ST_" "_$$^W4TOUCH_"=""Comment('LV0"_I_"')"""
   ;
   N FSZNM S FSZNM=12 I $$HZMSKONL^W4MENU S FSZNM=16
   S ST=ST_" style=""font-size:"_$$^W3FSZ(FSZNM)
   I $$1700^W4WDSCR S ST=ST_";font-weight:bold"
    I $$CDA(A) S ST=ST_";color:brown;font-weight:bold"
   S ST=ST_""">"
   S ST=ST_$$NAM(A)_"</td></tr></table>"
   ;
 S ST=ST_"  </td>"
 ;;S ^AA("W4HZORD-TDNAMEST","ST")=ST
 Q ST
 ;
CUR(I) ;
 N CURLN S CURLN=$$GETP^%W1PRM("CURLN")
 I $L(CURLN),CURLN=("LV0"_I) S WASCUR=1 Q 1
 ;;N LASTI0 S LASTI0=$$LASTI0^W3HZMST(JB) ; *** 23/01/24
 ;;I LASTI0=I,'$G(WASCUR) Q 1  ; -- 23/01/24
 Q 0
 ;
TDQN ;
 W $$TDQNST(JB,A,I)
 Q
 ;
 ;
TDQNST(JB,A,I) ;
 N ST
 S ST="  <td style=""width:15%;text-align:center;vertical-align:middle"" "
  I $$MULTYPOSSIBLE(I) D
  . S ST=ST_" "_$$^W4TOUCH_"=""MultyLine('LV0"_I_"')"" "
 S ST=ST_">"
 ;
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 I $$CDSRV(A)=12 S ST=ST_$$QN^W3HZMST(A) G TDQNE
 I $$CDA(A)!$$CDC(A)!$$CDSRV(A) S ST=ST_"&nbsp;" G TDQNE
 ;
 I $$MVC^W3HZMST(JB,I)["MVC"!$$USMVC5($$CD^W3HZMST(A)) D  G TDQNE
 .N VL S VL=$$QN^W3HZMST(A)
 .S ST=ST_"  <span dir=""LTR"" style=""font-size:"_$$^W3FSZ(14)_";color:"_$S(VL<0:"red",1:"black")_""">"_VL_"</span>"
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$CDA(A) D QNINP
 ;
 I MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$CDA(A) D
 . S ST=ST_" <table dir=""LTR"" width=""100%"" height=""100%"" cellpadding=""0"" cellspacing=""0"" >"
 . N HG S HG=$$KF(30)
 . S ST=ST_"  <tr height="""_HG_"px""><td>" D QNINP S ST=ST_"</td></tr>"
 . S ST=ST_"  <tr><td"
 .   S ST=ST_" style=""background-color:white;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)
 .   S ST=ST_";text-align:right"">"_+$$QNV(A)_"-"_MRG_"="_$G(ITRA0)_"</td></tr>"
 . S ST=ST_" </table>"
 ;
 I $$EDIT!$$NOIMG!$$OTH!$$CHNORD,'$$CDA(A) D
 .N VL S VL=$$ITRAST^W3HZMST(JB,I)
 .S ST=ST_"  <span dir=""LTR"" style=""font-size:"_$$^W3FSZ(14)_";color:"_$S(VL<0:"red",1:"black")_""">"_VL_"</span>"
 ;
TDQNE ;
 S ST=ST_"  </td>"
 Q ST
 ;
 ;
TDMH ;
 W $$TDMHST(A,I)
 Q
 ;
 ;
TDMHST(A,I) ;
 S MRG=$G(MRG)
 N VL S VL=$$MH(A)
 I VL<0 S VL="<span dir=""LTR"" style=""color:red"">"_VL_"</span>"
 N ST S ST="  <td style=""text-align:center"""
 ;
 I $$CDSRV(A)=12 G TDMHE
 I $$CDA(A)!$$CDC(A)!$$CDSRV(A),($$CDSRV(A)'=3) S VL="&nbsp;" G TDMHE
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$NOMOD(I),'$$PREZAT(A),'$$MSK^W4P($$CD(A)),'$$CDMVC3($$CD(A)),'$$CDMVC4($$CD(A)),'$$USMVC5(CD) D
 .S ST=ST_" "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',1)"""
 .S VL="<span style=""color:green;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"">+</span><br>"_VL
 ;
 I '$$AIN,'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,$$NOMOD(I),'$$PREZAT(A),$$CD(A),'$$CDSRV(A) D
 .I $$SUPER^W3PRM!$$TAW^W4PRM Q
 .S ST=ST_" "_$$^W4TOUCH_"=""Associate('"_I_"')"""
 .S VL=VL_"<br><span style=""font-size:"_$$^W3FSZ(7)_";color:green"">"_$$^%W1DICT("TOASCPRESSHERE")_"</span>"
 ;
TDMHE ;
 S ST=ST_">"_VL_"</td>"
 Q ST
 ;
 ;
TDSUM ;
 W $$TDSUMST(JB,A,I)
 Q
TDSUMST(JB,A,I) ;
 N ST
 N VL S VL=$J($$MH(A)*$$QNMH^W3HZMST(A)*(100-$$HNST^W3HZMST(JB,I))*.01,2,2)
 I $$LV(A),'NOTSFMVC S VL=$J(VL*(100-AHST)*.01,2,2)
 I $$CDA(A)!$$CDC(A) S VL="&nbsp;"
 S ST="  <td id=""idsum"_I_""" style=""width:14%;text-align:center"
 I VL<0 S ST=ST_";color:red"
 S ST=ST_""""
 S ST=ST_" dir=""LTR"" "
 S ST=ST_">"_VL_"</td>"
 Q ST
 ;
TDDISC ;---- ITEM DISCOUNT
 W $$TDDISCST(A,I)
 Q
 ;
TDDISCST(A,I) ;
  N ST S ST="<td id='LV0"_I_"disc' class=""disc"""
  ;
  I $$CDA(A)!$$CDSRV(A) S ST=ST_">&nbsp;" G TDDISCE
  N CD S CD=$$CD(A)
  I CD'="",$$^W4PRTBH(CD) S ST=ST_">&nbsp;" G TDDISCE
  ;
  S ST=ST_" dir=""LTR"" "
  I '$$TS(I) S ST=ST_$$^W4TOUCH_"=""ClickDiscSt('LV0"_I_"')"" "
  S ST=ST_" >"
  ;
  N HNST1 S HNST1=""
  I HNST S HNST1=HNST
  ;
  I '$$MHA($G(A)) S HNST1=""
  ;
  S ST=ST_$S($G(HNST1):HNST1,1:"&nbsp;")
  ;
  S CMST=$P($G(@$$^W3TMPORD@(JB,I)),"~",7)
  ;
  I $$LVI(I)=0,$D(@TMPORD@("HNH",I)) D
  .N SB1 S SB1=$P($G(^(I)),"*",4) Q:$TR(SB1," ","")=""
  .I '$$MHA($G(A)) S SB1=""
  .S CMST=$S($L(CMST):CMST_";",1:"")_SB1
  ;
TDDISC1 ;
  I $L(CMST) D
  . I HNST1 S ST=ST_"<br>"
  . S ST=ST_"<span class=""disccmst"">"_$$H2U^%L1FRM(CMST)_"</span>"
  ;
TDDISCE ;
 S ST=ST_"</td>"
 Q ST
 ;
 ;
TDSP W "<td>&nbsp;</td>",! Q
 ;
TDGLIST(UR,I) ;
 I $$LVI(I)>1 D TDSP Q
 I $$^W4AIN D TDSP Q
 I $$LVI(I),'$$EZAT^W3HZMST(JB,I) D TDSP Q
 ;
 W $$TDGLISTST(UR,A,I)
 Q
 ;
TDGLISTST(UR,A,I)
 N ST
 S ST="<td id='LV"_UR_I_"glist' class=""glist"" " ;---- GUESTS LIST
 I '$$NOMOD(I) S ST=ST_" dir=""LTR"" "_$$^W4TOUCH_"=""ClickGList('LV"_UR_I_"')"" "
 S ST=ST_">"
  S GLIST=$$GLIST^W3HZMST(JB,I)
  S ST=ST_$S(GLIST:GLIST,GLIST="*":$$^%W1DICT("ALL"),1:"&nbsp;")
 S ST=ST_"</td>"
 Q ST
 ;
TDMANA ;
 W $$TDMANAST(A,I)
 Q
 ;
TDMANAST(A,I) ;
 N ST
 S ST="<td id='LV0"_I_"mana' class=""mana"" " ;---- MANA
 I $$CDA(A)!$$CDSRV(A) S ST=ST_">&nbsp;" G TDMANAE
 I '$$NOMOD(I),$$PRMANA1 D
 .S ST=ST_" dir=""LTR"" "_$$^W4TOUCH_"=""ClickMana('LV0"_I_"')"" "
 S ST=ST_">"
  S MANA=$$MANA^W3HZMST(JB,I)
  S ST=ST_$S(MANA:$G(MN(MANA)),1:"&nbsp;")
TDMANAE ;
 S ST=ST_"</td>"
 Q ST
 ;
 ;
TDIMG ;
 W $$TDIMGST(JB,A,I)
 Q
 ;
TDIMGST(JB,A,I) ;
 N ST S ST=""
 I $$CDI(I),$$^W4CDSRV($$CDI(I)) S ST="<td>&nbsp;</td>" Q ST
 I $$MVC^W3HZMST(JB,I)["MVC" S ST="<td>&nbsp;</td>" Q ST
 I $$CHNORD S ST="<td>&nbsp;</td>" Q ST
 ;
 I $$OTH,'$$TS(I) D  Q ST
  .S ST="   <td align=""center"">"
  .I +$$HNST^W3HZMST(JB,I)=100!(+$$ITRAST^W3HZMST(JB,I)=0) S ST=ST_"&nbsp;</td>" Q
  .
  .S ST=ST_"    <input type=""checkbox"" name=""chk"" id=""chk"_I_""" "
  .        I $$MOTH(I) D
  ..         S ST=ST_" checked=""checked"" "
  .S ST=ST_"     onClick=""ClickOTH('chk"_I_"','lb"_I_"','lbnm"_I_"','chk',false)"" >"
  .
  .S ST=ST_"    <label for=""chk"_I_""" id=""lb"_I_""" name=""lb"" "
  .;;S ST=ST_"     class=""bgbtn"" "
  .S ST=ST_"     style=""cursor:pointer"">"
  . D
  . .;;I $$MOTH(I) S ST=ST_$$SHOWV^W3CSM Q
  . .;;S ST=ST_$$SHOWO^W3CSM
  . . N IMGV S IMGV="w4bonrnd.png"
  . . I $$MOTH(I) S IMGV="w4bonrndfull.png"
  . . S ST=ST_"<img src="""_IMGV_""" >"
  .S ST=ST_"    </label>"
  .S ST=ST_"</td>"
 ;
 I $$EDIT,'$$CONDORD(NMB) D  Q ST
 .S ST="  <td align=""center"" style=""width:15%"" >"
 .S ST=ST_"&nbsp;"
 .S ST=ST_"  </td>"
 ;
 I '$D(GORD) D GORD
 N A S A=$G(@GORD@(I))
 ;
 I '$$EDIT,$$ITRAST^W3HZMST(JB,I) D  Q ST
 .S ST="  <td id=""IMG"_I_""" align=""center"" >"
 .D
 ..I $$CDA(A)!$$CDH(A) S ST=ST_"&nbsp;" Q
 ..I $$DELETED(I) S ST=ST_"&nbsp;" Q
 ..I $$TS(I)>0 D  Q
 ...N SUBBILL S SUBBILL=""
 ...N J S J="" F  S J=$O(@GORD@("TS",I,J)) Q:J=""  S SUBBILL=SUBBILL_J_","
 ...S ST=ST_"<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(7)_""">"
 ... S ST=ST_$$^%W1DICT("SUBBILL")_" "_$E(SUBBILL,1,$L(SUBBILL)-1)
 ...S ST=ST_"</span>"
 ..I $$ITRAST^W3HZMST(JB,I,"",1)'>0 S ST=ST_"&nbsp;" Q
 ..I $$QNV(A)<0 S ST=ST_"&nbsp;" Q
 ..D IMGED(I) Q
 .S ST=ST_"  </td>"
 ;
 S ST=ST_"<td>&nbsp;</td>"
 Q ST
 ;
 ;
TRCMNT ;
 W "<tr style=""color:red"
 I $L($G(BGC)) W ";background-color:"_BGC
 W """ id=""CM1"_(I1)_""" height="""_$$KF(40)_"px"">"
  W "<td>&nbsp;</td>"
  W "<td style=""font-weight:bold"" >"
   N NM S NM=$$NAMI(I1)
   W $$^W4CLRCMN(NM,1)
  W "</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  ;
  I '$$^W4SMALL D
  .W "<td>&nbsp;</td>"
  ;
  I $$CONDORD(NMB),'$$^W4AIN D
  .W "<td>&nbsp;</td>"
  ;
  I '$$CONDORD(NMB) D
  .W "<td>&nbsp;</td>"
  I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D
  .W "<td>&nbsp;</td>"
  ;
  W "<td>&nbsp;</td>"
 W "</tr>",!
 S I1=I1+1
 Q
 ;
 ;
BGC1(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 I $D(PRMVL) W ";background-color:"_$$BGCMVL G BGC1E
 N CD1 S CD1=$$CD(A)
 I $$EZAT^W3HZMST(JB,I),'$$^W4AIN W ";background-color:"_$$BGCOLOR(I) Q
 I $$LV(A)>0,$$QNIT1^W3HZMST(JB,I)=0,'$$CDA(A),'$$CDC(A) D  Q
 .W ";background-color:pink"
 I $L($G(BGC)) W ";background-color:"_BGC
BGC1E Q
 ;
 ;
TRADD ;----------- TOSAFOT BE ZURA MERUKEZET
 N SUMADD S SUMADD=$J($$SUMADD(I1),$$DR,$$DR)
 W "<tr style=""color:green"
 I $L($G(BGC)) W ";background-color:"_BGC
 ;
 W """ id=""AD1"_I1_""" height="""_$$KF(40)_"px"">"
  I '$$ZAG(NMB) W "<td>&nbsp;</td>"
  W "<td>"_$$^%W1DICT("ADDITIONS")_"</td>"
  W "<td>&nbsp;</td>"
  I '$$^W4AIN D
  .W "<td style=""text-align:center"">"_SUMADD_"</td>"
  I '$$^W4SMALL,'$$NODISCST D
  .N CMST S CMST=""
  .D DISCCMST(SUMADD)
  ;
  I $$CONDORD(NMB),'$$^W4AIN D
  .W "<td>"_SUMADD_"</td>"
  ;
  I '$$CONDORD(NMB) D
  .W "<td>&nbsp;</td>",! ; -- mishbezet soadim
  I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D
  .W "<td>&nbsp;</td>",! ; -- mishbezet MANA
  ;
  I '$$ZAG W "<td align=""center"">"_$$IMGOPENADD(I)_"</td>"
 W "</tr>",!
 Q
 ;
 ;
TDTCD ;
 W "  <td>"_$S($$CDA(A)!$$CDH(A)!$$CDC(A):"&nbsp;",1:$$VWCD(CD))_"</td>",!
 Q
 ;
TDTNAME ;
 W "<td"_$S($$CDA(A):" class='hdgr'",$$CDC(A):" style=""color:red;font-weight:bold""",I=CUR:" class='cur'",1:"")
      I $$CDA(A) W " id='"_$G(IDMAIN)_$$CD(A)_"'"
      I '$$NOEDITMOD(I) D
       .W " "_$$^W4TOUCH_"=""Comment('LV1"_I_"')"" "
       .W " style="""_$$CMNTBORDER(I,"green")
       .I $$1700^W4WDSCR W ";font-weight:bold"
       .W """ "
 W " >"
         W $S(I=CUR:"<span>*</span>",1:"&nbsp;")
         W $$NAM(A)
     D
     .N QN S QN=$$QN2(A)
     .W "<br>"_$$^W4SHOWPZ(QN)
 W "</td>",!
 Q
 ;
MULTY(PRT)
 I $$^W4MULTY Q 1
 Q 0
 ;
 ;
TDTQN ;
 I $$CDC(A)!$$CDA(A) W "<td>&nbsp;</td>" Q
 ;
 N QN2 S QN2=$$QN2(A)
 I QN2[":" S QN2=$P(QN2,":")
 I QN2["|" S QN2=$P(QN2,"|")
 ;
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 N QNV S QNV=$$QNV(A)
 ;
 I QN2,$$LV(A)=1 D
 .S QN21=QN2
 .I QNV["*" D  S QN21=QN2 Q
 ..I QNV["*" D  Q
 ...S QN2=+$G(ITRA0)_"*"_QN2
 .I $$^W4MULTY,$G(ITRA0) D
 ..S QN2=+$G(ITRA0)_"*"_QN2
 ..S QN21=$$^W4QNR(QN2)
 .Q
 ;
 I $$LV(A)=2 D
 .N QNIT1
 .S QNIT1=$$QNIT1^W3HZMST(JB,I)
 .N QNST S QNST=$$QNST^W3HZMST(JB,I)
 .I $$MULTY D  Q
 ..I $L(QNST,"*")>2,$G(QN21) S QN2=QN21_"*"_$P(QNST,"*",3) Q
 ..I $L(QNST,"*")=2,$G(QN21) S QN2=QN21_"*"_$P(QNST,"*",2) Q
 ..S QN2=QN21_"*"_QNST Q
 .
 .S QN2=QNIT1_"*"_QN2 Q
 ;
 N QN2R S QN2R=$$^W4QNR(QN2)
 N QNVR S QNVR=$$^W4QNR($$QNV(A))
 W "  <td dir=""LTR"" align=""center"""
 W ">"_$S(QN2R&'MRG:$P(QN2,"|"),QN2R&MRG:QNVR-MRG,1:"&nbsp;")
 ;
 I MRG D
  .W "<span style=""background-color:white;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)
  .W ";text-align:right"">"_"="_QNVR_"-"_MRG_"</span>"
 W "</td>",!
 Q
 ;
 ;
TDTMH ;
 S MHT=$S($$CDH(A)!$$CDC(A)!$$CDA(A):"&nbsp;",1:$$MH(A))
 I MHT<0 S MHT="<span dir=""LTR"" style=""color:red"">"_MHT_"</span>"
 ;
 W "  <td align=""center"">"_MHT_"</td>",!
 Q
 ;
TDTMANA ;
 W "<td id='LV1"_I_"mana' class=""mana"" " ;---- MANA
  W " dir=""LTR"" "_$$^W4TOUCH_"=""ClickMana('LV1"_I_"')"" "
  I '$$NOMOD(I) W " dir=""LTR"" "
 W ">"
  S MANA=$$MANA^W3HZMST(JB,I)
  W $S(MANA:$G(MN(MANA)),1:"&nbsp;")
 W "</td>",!
 Q
 ;
TDTIMG ;-- ICON + OR -
 W "  <td align=""center"""
 W ">"
  I '$$EDIT,'$$^W4AIN,'$$OTH,'$$CHNORD D
 . I $G(FIRSTADD)=1,$$CDCI(I)!$$CDHI(I) W "&nbsp;" Q
 . I $G(FIRSTADD)=1,$$CDCI(I-1)!$$CDHI(I-1) W $$IMGOPENADD(I-2) S FIRSTADD=0 Q
 . I $G(FIRSTADD)=1,'$$CDCI(I),'$$CDHI(I),$$LVI(I-1)=0 W $$IMGOPENADD(I-1) S FIRSTADD=0 Q
 W "&nbsp;"
 W "  </td>",!
 Q
 ;
 ;
SCROLLDOWN ;
 W "<script>",!
 W " ScrollDown()",!
 W "</script>",!
 Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
TMPORD1 S TMPORD1="^[$$^W3MAIN]TMPORD1(JB)"
 Q
 ;
TMPOP S TMPOP=$$^W4MAIN("TMPOP")
 Q
 ;
CMNTBORDER(I,COLOR)
 I '$$ZAG,'$$NOEDITMOD(I),'$$EDIT Q "border:"_$G(COLOR,$$BGCOLOR^W4CSS)_" solid 2px;cursor:pointer"
 Q ""
 ;
BGCOLOR(I) ;
 N BGC,A D TMPORD,TMPOP S A=$G(@TMPORD@(I))
 S BGC="#e5e5e5"
 ;;S BGC="rgb(191,191,191,0.2)"
 I $$OPENADD(I)=2 S @TMPOP@(I)=1 Q "lightyellow"
 I $G(FLED) Q "lightyellow"
 I $$NOMOD(I) S BGC="white"
 I $$DELETED(I) Q "pink"
 I $$QNV(A)>0,$$ITRAST^W3HZMST(JB,I)<$$QNV(A) Q "#FFE8E8" ; -- PINK
 N CDPAR S CDPAR=$$CD($$GETP^%W1PRM("STPAR"))
 Q BGC
 ;
DELETED(I) ;
 N A D TMPORD S A=$G(@TMPORD@(I))
 I $$QN1(A)<0 Q 1
 I $$QN1(A)>0,$$ITRAST^W3HZMST(JB,I)'>0,'$$CDC(A),'$$CDA(A) Q 1
 Q 0
 ;
TSF(I) ;
 N CD S CD=$$CDI(I)
 I $$TSF^W4HZPRTN(CD) Q 1
 I $$LVI(I)=0&($$LVI(I+1)=1&'$$CDCI(I+1)) Q 1
 I $$LVI(I)=0&($$LVI(I+2)=1&$$CDCI(I+1)) Q 1
 I $$LVI(I)=1&($$LVI(I+1)>1&'$$CDCI(I+1)) Q 1
 I $$LVI(I)=1&($$LVI(I+2)>1&$$CDCI(I+1)) Q 1
 Q 0
 ;
NOIMG(STAM) ;
 I $$ZAG Q 1
 I $G(%ARG("NOIMG")) Q 1
 Q 0
 ;
OTH(STAM) ;
 I $$GETP^%W1PRM("MOTH") Q 1
 Q 0
 ;
MOTH(N) ;
 I $D(@$$^W4MAIN("TMPOTH")@(N)) Q 1
 Q 0
 ;
SETOTH(I) ;
 I '$D(@$$^W4MAIN("TMPOTH")@(I)) S ^(I)="" Q 1
 K @$$^W4MAIN("TMPOTH")@(I)
 Q 0
 ;
CHNORD(STAM) ;
 Q $$CHNORDOPT^W4HZORHD
 ;
EDIT(STAM) ;
 I $$GETP^%W1PRM("SHID")["LV" Q 1
 Q 0
 ;
EDITLINE(I) ;
 I $$GETP^%W1PRM("SHID")=("LV0"_I) Q 1
 Q 0
 ;
IMGED(I) ;
 S ST=$G(ST)
 I $$NOIMG S ST=ST_"&nbsp;" Q
 I $$MRGMULTY(I) S ST=ST_"&nbsp;" Q
 ;;I $$PAPJ^W4PRM,$$NOMOD(I) S ST=ST_"&nbsp;" Q; -- 25/11/25
 D TMPORD
 I $$BSLPAR($$CDI(I)) S ST=ST_"&nbsp;" Q
 ;
 N WD,HG S WD=$$KF($$SZIMG),HG=$$KF($$SZIMG)
 ;
 I $$SMALL^W3FSZ S WD=90,HG=90
 ;
 N IMG S IMG="w4del20.png"
 I $$SMALL^W3FSZ S IMG="w4del21.png"
 ;
 I $$USEDIT(I) D
 .S IMG="w4edit.jpg"
 .I $$SMALL^W3FSZ S IMG="w4edit1.jpg"
 ;
 D IMGED1(I,IMG,WD,HG)
 Q
 ;
IMGED1(I,IMG,WD,HG) ;
 I $$PAPJ^W4PRM,$$NOMOD(I),IMG["w4del" S ST=ST_"&nbsp;" Q  ; -- 25/11/25
 S ST=$G(ST)_"    <img src="""_IMG_"""  style=""width:"_WD_"px;height:"_HG_"px"" "
 S ST=ST_"alt="""_$$^%W1DICT("EDIT")_"""  "_$$^W4TOUCH_"=""EditRowOrd('LV0"_I_"')"" >"
 Q
 ;
SZIMG(STAM)
 I $$^W4SMALL Q 25
 I $$1024^W4WDSCR Q 30
 Q 35
 ;
USEDIT(I) ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSD(NMB),$$TSF(I),$$NOTSFMSD^W4PRM Q 0
 I $$^W4MSD(NMB),$$EZATI(I),$$NOTSFMSD^W4PRM=1 Q 0
 I $$MRGMULTY(I) Q 0
 I '$$^W4SMALL,'$$NOMOD(I)!($$EZATI(I)&'$$^W4AIN),$$TSF(I)!$$EZATI(I) Q 1
 I $$^W4SMALL,$$EZATI(I),'$$^W4AIN Q 1
 Q 0
 ;
MRGMULTY(I) ;
 I $$NOMOD(I),$$EZATI(I),'$$^W4AIN,$$^W4MULTY,$$MRG^W3HZMST(JB,I) Q 1
 Q 0
 ;
CDMVC3(CD) ;
 N OK,N,N1,STM,SET,DZ,DT1,DT2 S OK=0
 S DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4GL("W4MVC3")@(N)) Q:N=""  D  Q:OK
 .S STM=$G(@$$^W4GL("W4MVC3")@(N,1))
 .S DT1=$$^%L1DC($P(STM,"\",5),3)
 .S DT2=$$^%L1DC($P(STM,"\",6),3)
 .I DZ<DT1!(DZ>DT2) Q
 .S SET=$P(STM,"\") Q:SET=""
 .I $D(@$$^W4GL("P1SETM")@(SET,CD)) S OK=1
 Q OK
 ;
CDMVC4(CD)
 I $G(CD)="" Q 0
 N GL S GL=$$^W4GL("W4MVC4")
 I '$D(@GL@(CD)),'$D(@GL@(+CD)) Q 0
 N A S A=$G(@GL@(CD))
 N MEDAT,ADDAT
 ;
 N MAX S MAX=$P(A,"\") I 'MAX Q 0
 S MEDAT=$P(A,"\",2),MEDT=$$^%L1DC(MEDAT,3)
 S ADDAT=$P(A,"\",3),ADDT=$$^%L1DC(ADDAT,3)
 N DZ S DZ=$$^W4DZ
 I DZ<MEDT!(DZ>ADDT) Q 0
 Q MAX
 ;
 ;
CDMVC5(CD)
 I $G(CD)="" Q 0
 N GL S GL=$$^W4GL("W4MVC5")
 N OK S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .N A S A=$G(^(N))
 .N NSET S NSET=$P(A,"\",2) Q:'NSET
 .I '$D(@$$^W4GL("P1SETM")@(NSET,CD)) Q
 .N MH S MH=$P(A,"\",3)
 .N MEDAT,ADDAT
 .N MAX S MAX=$P(A,"\",4) I 'MAX Q
 .S MEDAT=$P(A,"\",5),MEDT=$$^%L1DC(MEDAT,3)
 .S ADDAT=$P(A,"\",6),ADDT=$$^%L1DC(ADDAT,3)
 .N DZ S DZ=$$^W4DZ
 .I DZ<MEDT!(DZ>ADDT) Q
 .S OK=MAX_"\"_NSET_"\"_MH
 Q OK
 ;
 ;
USMVC5(CD) ;
 I $$CDMVC5(CD)&($$SQN5("0~"_CD)["MH") Q 1
 Q 0
 ;
EZATI(I) ;
 D:'$D(TMPORD) TMPORD
 N A S A=$G(@TMPORD@(I))
 I $$^W4AIN Q 0
 Q $$EZAT(A)
 ;
EZAT(A) ;
 I $$LV(A) Q 0
 S CD=$$CD(A)
 I $$^W4EZAT(CD) Q 1
 Q 0
 ;
HASADD(I) ;
 D:'$D(TMPORD) TMPORD
 N A S A=$G(@TMPORD@(I+1))
 I A="" Q 0
 I $$LV(A)=0 Q 0
 I $$CDC(A)!$$CDH(A),'$$LVI(I+2) Q 0
 Q 1
 ;
OPENADD(I) ;
 I $$OPENADD^W4PRM Q 1
 I $$^W4AIN Q 1
 I '$$NOMOD^W3HZMST(JB,I) Q 1
 I $G(CURLN)'="",+$E(CURLN,3,7)=I Q 1
 Q +$G(@$$^W4MAIN("TMPOP")@(I))
 ;
SUMADD(I) ;
 N QNIT0,COMPDEL
 S COMPRDEL=1
 Q $$MHADD^W4ORDVW(I,1)
 ;
IMGOPENADD(I) ;
 I $$EDIT Q "&nbsp;"
 I I=$$LASTI0^W3HZMST(JB),'$$NOMOD(I) Q "&nbsp;"
 N HG,WD
 S HG=$$KF($$SZIMG),WD=$$KF($$SZIMG)
 I '$$OPENADD(I) Q "<img src=""w4openadd.jpg"" height="""_HG_"px"" width="""_WD_"px"" onClick=""OpenAdd('LV0"_I_"')"" />"
 Q "<img src=""w4closeadd.jpg"" height="""_HG_"px"" width="""_WD_"px"" onClick=""CloseAdd('LV0"_I_"')"" />"
 ;
LV(A) ;
 N LV
 S LV=$P(A,"~",1)
 Q LV
 ;
LVI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$LV(A)
 ;
CODE(STID) ;
 N CD S CD=$P($$TXT(STID),"~",2)
 Q CD
 ;
TXT(STID)
 N SH S SH=$$FINDSH(STID)
 I SH="" Q "NOK"
 D TMPORD
 Q $G(@TMPORD@(SH))
 ;
TXTNEXT(STID)
 N SH S SH=$$FINDSH(STID)
 I SH="" Q "NOK"
 D TMPORD
 Q $G(@TMPORD@(SH+1))
 ;
CD(A) ;
 N CD
 S CD=$P(A,"~",2)
 I CD="" Q "&nbsp;"
 Q CD
 ;
CDI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CD(A)
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 Q 0
 ;
CDSRV(A) ;
 N CD S CD=$$CD(A) I 'CD Q 0
 Q $$^W4CDSRV(CD)
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CDHI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CDH(A)
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDCI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CDC(A)
 ;
NAM(A) ;
 N NM S NM=$$CNWEB^%L1FRM($P(A,"~",3))
 I NM["{{" S NM=$$^W4CLRCMN(NM)
 S NM=$$IT^W4NM($$CD(A),NM,1)
 S NM=$$RPL^%L1FRM(NM,"))",")")
 S NM=$$RPL^%L1FRM(NM,"((","(")
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAMI(I)
 N A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$NAM(A)
 ;
MH(A) ;
 N MH
 S MH=$$MHA(A)
 I MH="" Q "&nbsp;"
 Q $J(MH,$$DR,$$DR)
 ;
 ;
MHA(A) ;
 N CD S CD=$P(A,"~",2)
 N MH S MH=$P(A,"~",4)
 I CD,$G(I),$D(@$$^W4GL("P1BLRD")@(CD)) D
 .N B S B=$G(MHVAR(I)) Q:B=""
 .I $P(B,"~",2)'=CD Q
 .S MH=$P(B,"~",4)
 .S $P(@$$^W4TMPORD@(I),"~",4)=MH
 Q MH
 ;
QN(A) ;
 I $$CDC(A) Q "&nbsp;"
 I $$CDH(A) Q "&nbsp;"
 N QN
 S QN=$$QNV(A)
 I QN["*",$P(QN,"*")=1 S QN=$P(QN,"*",2)
 I 'QN Q "&nbsp;"
 Q QN
 ;
QN1(QN) ;
 I QN["*" Q QN*$P(QN,"*",2)
 Q +QN
 ;
QN2(A) N QNV S QNV=$$QNV(A)
 I QNV["*" Q $P(QNV,"*",$L(QNV,"*"))
 Q QNV
 ;
TS(I) ;
 N OK S OK=0
 I '$D(GORD) D GORD
 N N S N="" F  S N=$O(@GORD@("TS",I,N)) Q:N=""  I $G(^(N)) S OK=1 Q
 Q OK
 ;
QNV(A) Q $P(A,"~",5)
 ;
QNDIF(A) Q $P(A,"~",11)
 ;
 ;
QNINP ;
 N VL S VL=$$ITRAST^W3HZMST(JB,I)
 ;;W "I="_I_"  VL="_VL,! ; ***
 I VL?1"."1N.N S VL="0"_VL
 N CDST S CDST=$$CDST^W3HZMST(JB,I)
 ;
 I $$CDMVC4(CDST) D  Q
 .S ST=ST_"<span style=""text-align:center;font-weight:bold"" >"
 . S ST=ST_VL
 .S ST=ST_"</span>"
 ;
 I $$MULTYPOSSIBLE(I) D  Q
 .S ST=ST_"<span style=""text-align:center;font-weight:bold"" "_$$^W4TOUCH_"=""MultyLine('LV0"_I_"')"" >"
 . S ST=ST_VL
 .S ST=ST_"</span><br>"
 .S ST=ST_"<span style=""font-size:"_$$^W3FSZ(7)_";color:darkblue;font-weight:bold;text-decorated:underline"">"
 . S ST=ST_$$^%W1DICT("FORMULTYPRESSHERE")
 .S ST=ST_"</span>"
 ;
 I $$MSK(I,VL)!$$VVMSK^W4PRM S VL=$J(VL,3,3)
 ;
 S ST=ST_"<input type=""text"" dir=""LTR"" "
 ;
 I '$$MSK(I,VL) D
 .S ST=ST_"size=""3"" maxlength=""3"""
 ; 
 I $$MSK(I,VL) D
 .S ST=ST_"size=""6"" maxlength=""6"""
 ;
 S ST=ST_" name="""_$$QNTD(I)_""""
 N HG,WD
 S HG=$$KF(35),WD=$$KF(35)
 I $$MSK(I,VL) S WD=$$KF(70)
 I $$^W4SMALL S (HG,WD)=40
 ;
 S ST=ST_" style=""font-size:"_$$^W3FSZ($S($$MSK(I,VL):10,1:14))_";text-align:center;"
   S ST=ST_"height:"_HG_"px;width:"_WD_"px"
   I $$1024^W4WDSCR S ST=ST_";position:relative;top:2px;"
   I $$PREZAT(A)!$$NOMOD(I),VL>0 S ST=ST_";color:grey"
   I VL<0 S ST=ST_";color:red"
   I '$$NOMOD(I),'$$PREZAT(A),'$$^W4AIN S ST=ST_";cursor:pointer"
 S ST=ST_""""
 ;
 S ST=ST_" id="""_$$QNTDI(I)_""""
 S ST=ST_" onFocus=""this.style.background-color:lightyellow;"
 S ST=ST_""" "
 I $$^W4SMALL!$$^W4TABLET!$$PREZAT(A)!$$NOMOD(I) D
 .S ST=ST_" readonly=""readonly"" "
 S ST=ST_" value="""_VL_""" "
 ;
 I '$$PREZAT(A),'$$^W4SMALL D
 .I VL>0,'$$NOMOD(I),'$$^W4AIN D
 ..S ST=ST_" "_$$^W4TOUCH_"=""Click('"_$$QNTDI(I)_"')"""
 ;
 S ST=ST_" />&nbsp;"
 Q
 ;
 ;
MSK(I,VL) ;
 I $$MSKI(I) Q 1
 I $$GETP^%W1PRM("STAGE")=1 Q 1
 I VL["." Q 1
 Q 0
 ;
MSKI(I) ;
 I $$MSK^W4P($$CDI(I)) Q 1
 Q 0
 ;
QNTD(SH) ;
 Q "QN"_SH
 ;
QNTDI(SH) ;
 Q "QNID"_SH
 ;
MULTYPOSSIBLE(I) ;
 I $$SUPER^W3PRM Q 0
 N A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 I $$CDA(A)!$$CDSRV(A) Q 0
 I $$ITRAST^W3HZMST(JB,I)'>0 Q 0
 I $$EDIT Q 0
 I $$NOIMG Q 0
 I $$CHNORD Q 0
 I $$OTH Q 0
 I $G(@$$^W4PRM@("NOMULTYPOSSIBLE")) Q 0
 I $$NOMOD(I),$$LVI(I)=0,'$$^W4AIN,'$$MSKI(I),'$$^W4SMALL Q 1
 Q 0
 ;
NMTDD(SH) ;
 Q "DL"_SH
 ;
NMTDDI(SH) ;
 Q "DLID"_SH
 ;
 ;
HASCMNT(PRM) ;
 N GORD D GORD
 N OKC S OKC=0
 S SH=$$FINDSH(PRM) I SH="" Q "0;ROWNUMBERISWRONG"
 I $$LVI(SH)'=0 Q "0;ISNOTMAINITEM"
 N N S N=SH F  S N=$O(@GORD@(N)) Q:N=""  I N Q:$$LVI(N)=0  D  Q:OKC
 .I $$CDI(N)["-C" S OKC=1
 Q OKC
 ;
 ;
MULTYROW(PRM) ;
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-MULTYROW","PRM=PRM")
 I '$D(GORD) D GORD
 N CMN S CMN=$P(PRM,";",2)
 N PRDEL S PRDEL=$P(PRM,";",3)
 S PRM=$P(PRM,";")
 S SH=$$FINDSH(PRM) I SH="" Q "0;ROWNUMBERISWRONG"
 ;
 N LAST S LAST=$O(@GORD@(9999),-1)
 I SH=LAST S PRL=1 ; LAST LINE
 ;
 I $$LV($G(@GORD@(SH)))'=0 Q "0;ISNOTMAINITEM"
 ;
 N MULTYROW S MULTYROW=1
 I CMN S MULTYROW=2
 N I1,I2 S I2=0
 D GREST K @GREST
 ;
 N LV,QNO,A,ITRA,ITRA1,QN,QNO,QN1,QN2
 S QN1=""
 N CD0 S CD0=$$CDI(SH)
 N ITRA0 S ITRA0=$$ITRAST^W3HZMST(JB,SH) ;;I ITRA0'>0 Q
 N QN0 S QN0=$$QNR^W3HZMST(JB,SH) I QN0'>0 Q
 ;
 F I1=SH:1:LAST Q:'$D(@GORD@(I1))  S A=$G(^(I1)) S LV=$$LV(A) Q:LV=0&(I1>SH)  D
 .I $$CDCI(I1),'CMN Q
 .
 .S ITRA=$$ITRAST^W3HZMST(JB,I1)
 .I ITRA<0 Q
 .I 'ITRA,'$$CDC(A),'$$CDA(A),$G(PRDEL) Q
 .N QNST S QNST=$$QNST^W3HZMST(JB,I1)
 .S I2=I2+1
 .M @GREST@(I2)=@GORD@(I1)
 .
 .N QNREST S QNREST=1
 .I PRDEL S QNREST=-ITRA0
 .
 .I LV=0 S $P(@GREST@(I2),"~",5)=QNREST
 .
 .I LV=1 D
 ..S QN1=$$^W4QNR(ITRA)
 ..
 ..I '$$^W4EZAT(CD0)!$$^W4MULTY!($$DLVMOUSE^W4PRM&$$^W4DLVCSR) D  Q
 ...I ITRA0 D
 ....S QN=QN1\ITRA0
 ....S QN1=ITRA
 ....S $P(@GREST@(I2),"~",5)=$S('PRDEL:"1*"_QN,QNST["*":QNREST_"*"_$P(QNST,"*",2),1:QNREST_"*"_QN)
 ..
 ..S $P(@GREST@(I2),"~",5)=QNREST
 .
 .
 .I LV=2 D
 ..I $G(QN1) S QN=ITRA\QN1
 ..I 'PRDEL S $P(@GREST@(I2),"~",5)="1*"_QN
 ..I PRDEL S $P(@GREST@(I2),"~",5)=QNREST_"*"_$P(QNST,"*",$L(QNST,"*"))
 .
 .D CLRMOD(GREST,I2) ; --- UBRAT NOMOD V NOV STR ( BIT)
 .D CLRQNDIF(GREST,I2) ; --- ZA4ISTIT QNDIF V NOV STR
 ;
 D RESTNOMOD(SH,1,LAST)
 ;
 I PRDEL D
 .N N1 S N1=LAST F  S N1=$O(@GORD@(N1)) Q:N1=""  I N1 D
 ..;;S $P(^(N1),"~",5)=-$P(^(N1),"~",5)
 ..I $P(^(N1),"~",1)=0 D
 ...S @GORD@("FROM",N1)=SH
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 N A S A=$G(@TMPORD@(LAST))
 I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
MULTYROWE ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 D KILL3^W4MENU
 Q 1
 ;
 ;
DELROW(PRM) ; DELETE ITEM ROW WITH SETS (PRM=ID LV0) OR SET (PRM=ID LV1)
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-DELROW","PRM=PRM")
 ;
 I PRM="BSL" D  G DELROWE
 .N HZM S HZM=$$GETP^%W1PRM("HZM")
 .I $$^W4ISORD(HZM),$D(@$$^W4ORD@(HZM,"BSL","NKDPAY"))!$D(@$$^W4ORD@(HZM,"BSL","NKD"))!$$^WBISBON(HZM,$$^W4TMPORD) D
 ..D CANINV^WBFUNC(HZM)
 .D ^WBCLRINV($$GETP^%W1PRM("HZM"),$$^W4TMPORD,1)
 .K @$$^W4TMPORD@("BSL")
 ;
 D PUT^%W1PRM("DELROW",1)
 ;
 N GORD D GORD
 N QNDEL
 ;
 I PRM[";" S QNDEL=$P(PRM,";",2),PRM=$P(PRM,";")
 ;
 S SH=$$FINDSH(PRM) I SH="" D PUT^%W1PRM("DELROW",-.5) Q
 ;
 N LAST S LAST=$O(@GORD@(9999),-1)
 I SH=LAST S PRL=1 ; LAST LINE
 ;
 I PRM["LV0",$$LV($G(@GORD@(SH)))'=0 D PUT^%W1PRM("DELROW",-1) G DELROWE
 I PRM["LV1",$$LV($G(@GORD@(SH)))'=1 D PUT^%W1PRM("DELROW",-2) G DELROWE
 ;
 I '$G(QNDEL) S QNDEL=$$ITRAST^W3HZMST(JB,SH)
 ;
 N DELERR S DELERR=0
 ;
 N NPMVC S NPMVC=""
 I PRM["LV0" D  I DELERR,$$NOMOD(SH) D PUT^%W1PRM("DELROW",DELERR) G DELROWE
 .S NPMVC=$$ITWASMVC^W4SALE(SH) ;;I NPMVC S DELERR=-6 ; -- 01/07/23 - > COMMENT
 ;
 I PRM["LV0" D DEL^W4SET11(SH)
 ;
 ;
 I $$NOMOD(SH),PRM["LV0" D  G DELROWE  ; -- DELETE ITEM WAS PRINTED
 .D DELNOMOD(SH,QNDEL,$$GET^%W1PRM("MLZR"),$$^W4WHODEL)
 .
 .Q:$$GET^%W1PRM("DELROW")<1
 .
 .I $$SHIHZUR D
 ..D RESTNOMOD(SH,QNDEL,LAST) ;- BATEL & SHAHZER
 ;
 ; ----------- NO NOMOD
 I PRM["LV0" D  D DELSEQ(GORD,SH) ; -- DEL MAIN
 .I NPMVC D DELMVC(GORD,NPMVC)
 .D SETSH^W4ITEND(SH,"-")
 ;
 F  Q:$G(@GORD@(SH))=""  Q:$P($G(@GORD@(SH)),"~")=0  D  ; -- DEL ADDONS
 .D SETSH^W4ITEND(SH,"-")
 .D DELSEQ(GORD,SH)
 ;
DELROWE ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 D SAVE1^W4TMPORD
 Q
 ;
 ;
DELSEQ(GORD,SH)
 N MYDVN S MYDVN=$$^W4MYDVN
 N A S A=$G(@GORD@(SH))
 S $P(A,"~",5)=-$P(A,"~",5)
 N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
 D ^W4DELST(GORD,SH)
 Q
 ;
SETQN(GLREF,IND,VL)
 S $P(@GLREF@(IND),"~",5)=VL
 Q
 ;
 ;
SQN4(ST) ;
 N A,CDST,LVST,SQ S CD=$$CD(ST) I 'CD Q 0
 N MAX S MAX=$$CDMVC4(CD) Q:'MAX 0
 ;
 N LVST,CDST,QNST
 S SQ=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N)),LVST=$$LV(A),CDST=$$CD(A)
 .I CDST'=CD,CDST'=+CD Q
 .I LVST=0 S QNST=$$QN(A),SQ=SQ+QNST
 ;
 I SQ>MAX Q "MAX:"_MAX_":"_CD_":"_$$SHEM^W4P(CD)_":"_SQ
 Q SQ
 ;
 ;
SQN5(ST) ;
 N A,CDST,LVST,SQ S CD=$$CD(ST) I 'CD Q 0
 N A S A=$$CDMVC5(CD) Q:'A 0
 N MAX,NSET,MH
 S MAX=$P(A,"\"),NSET=$P(A,"\",2),MH=$P(A,"\",3)
 I 'MAX!'NSET Q 0
 ;
 N LVST,CDST,QNST
 S SQ=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D
 .N A S A=$G(^(N)),LVST=$$LV(A),CDST=$$CD(A) Q:'CDST
 .I '$D(@$$^W4GL("P1SETM")@(NSET,CDST)) Q
 .I LVST=0 S QNST=$$QN(A),SQ=SQ+QNST
 ;
 I SQ'>MAX D  Q "MH:"_$J(MH,2,2)
 .N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1) Q:'LAST
 .S $P(@$$^W4TMPORD@(LAST),"~",4)=$J(MH,2,2)
 ;
 Q SQ
 ;
 ;
DELNOMOD(SH,QNDEL,MLZ,MN,MV) ; - "DELROW" - DELETE ERROR CODE
 ; SH - IND STR LV=0
 D PUT^%W3DEB("W4HZORD-DELNOMOD","SH=SH&QNDEL=QNDEL&MLZ=MLZ&MN=MN&MV=MV&W4ITDEL=W4ITDEL")
 N TMPORD,GORD,SUG,LV D TMPORD
 ;
 N TMPORDD S TMPORDD=$$^W4MAIN("TMPORDD") K @TMPORDD
 M @TMPORDD=@TMPORD
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 ;
 S SUG=$$GET^W4TMPANS("DEL","EXIT2KITCHEN?")
 S SUG=$P(SUG,"::") ; -- VYSHEL S MITB
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 D
 .N A S A=$G(@TMPORD@(SH))
 .S LV=$P(A,"~")
 .S $P(A,"~",5)=-QNDEL
 .N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 .I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
 ;
 N PREZA
 ;
 S PREZA=$$PREZATI^W3HZMST(JB,SH,QNDEL)
 D PUT^%W3DEB("W4HZORD-DELNOMOD","PREZA=PREZA")
 I $$^W4AIN S PREZA=0
 ;
 N OK S OK=1,SUM=0
 I HZM,$$^W4HZFULL(HZM),'$$SHIHZUR D CHKDEL
 ;
 I OK'=1 D PUT^%W1PRM("DELROW",OK) G DELNOMODEND
 ;
 N ITRA0 S ITRA0=$$ITRAST^W3HZMST(JB,SH)
 N MRG0 S MRG0=$$MRG^W3HZMST(JB,SH)
 N CD0 S CD0=$$CDST^W3HZMST(JB,SH)
 ;
 I ITRA0'>0,$$^W4BIT(SH,TMPORD) Q
 ;
 N QN0 S QN0=$$QNR^W3HZMST(JB,SH,TMPORDD)
 ;
 I QN0<0,$$^W4BIT(SH,TMPORDD) Q
 ;
 D DELNOMODMAIN
 I $G(SH1) D DELNOMODADD
 ;
DELNOMODEND ;
 I '$$SHIHZUR K @TMPORDD
 Q
 ;
 ;
CHKDEL ;--> OK,SUM
 N ITRA,AHST,NOTSFMVC,SUMST
 ;
 S ITRA=$$CURTSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
 S SUM=0,AHST=0
 ;
 I $$LVST^W3HZMST(JB,SH)=0 S AHST=$$AHST^W3HZMST(JB,SH) D
 .N SUMST S SUMST=QNDEL*$$MHST^W3HZMST(JB,SH)*(100-$$AHUZ^W3HZMST(JB))*.01
 .S NOTSFMVC=$$NOTSFMVC^W3HZMST(JB,SH)
 .S SUMST=SUMST*(100-AHST)*.01
 .S SUM=SUM+SUMST
 ;
 N SH1,A
 S SH1=SH F  S SH1=$O(@TMPORD@(SH1)) Q:SH1=""  I SH1 S A=$G(@TMPORD@(SH1)) Q:'$$LV(A)  D
 .N SUMST S SUMST=$S($$QNV(A)["*":QNDEL*$$QN2(A),1:QNDEL)
 .S SUMST=SUMST*$$MHST^W3HZMST(JB,SH1)*(100-$$AHUZ^W3HZMST(JB))*.01
 .I '$G(NOTSFMVC) S SUMST=SUMST*(100-AHST)*.01
 .S SUM=SUM+SUMST
 ;W "SUM="_SUM_" ITRA="_ITRA,!
 D PUT^%W3DEB("W4HZORD-DELNOMOD","SUM=SUM & ITRA=ITRA")
 D PUT^%W1PRM("DELROW","1:"_SUM)
 Q
 ;
 ;
DELNOMODMAIN ;
 N SIBA,SIBA1,I
 S SIBA=$$GET^W4TMPANS("DEL","CAUSEDEL")
 S SIBA1=""
 S:SIBA["::" SIBA1=$P(SIBA,"::",2),SIBA=$P(SIBA,"::")
 ;
 D PUT^%W3DEB("W4HZORD-DELNOMODMAIN","SH=SH & QNDEL=QNDEL & SIBA=SIBA & SIBA1=SIBA1 & SUG=SUG")
 ;
 D GORD,GMOVE,GREST K @GREST S SHREST=0
 ;
 I $$MYCHECK^W4PRM,$$CDST^W3HZMST(JB,SH)=$$MYCHECK^W4PRM D ^WMCCLDEL(SH,$$GETP^%W1PRM("HZM")) S SH1=0 Q
 ;
 S LAST=$O(@GORD@(99999),-1)
 S SHL=LAST+1
 N SHMV S SHMV=$O(@GMOVE@(99999),-1)+1
 ;
 I $G(MV) D
 .I $$BSLPAR($$CDST^W3HZMST(JB,SH)) Q
 .S @GMOVE@(SHMV)=$G(@GORD@(SH))
 ;
 I $$SHIHZUR D
 .S SHREST=SHREST+1
 .S @GREST@(SHREST)=$G(@GORD@(SH))
 ;
 I $$^W4QNR(QNDEL)=0 S QNDEL=0
 ;
 I '$$W4TS,'$$^W4CP D
 .S @GORD@(SHL)=$G(@GORD@(SH)) ; --- COPY MAIN ITEM
 .D SETQN(GORD,SHL,-QNDEL) ; -- MINUS MAIN ITEM IN NEW LINE
 .I 'SUG,'$G(MV) D SET^W4ITEND($$CD($G(@GORD@(SH))),-QNDEL) ; -- VERN V POOL ESLI NE VYSH S MITB I NE HAAVARA
 .D CLRMOD(GORD,SHL) ; --- UBRAT NOMOD V NOV STR ( BIT)
 .D CLRQNDIF(GORD,SHL) ; --- ZA4ISTIT QNDIF V NOV STR
 ;
 I $G(MV) D
 .D SETQN(GMOVE,SHMV,+QNDEL) ; -- NEW QN IN GMOVE
 .D CLRMODMV(GMOVE,SHMV)
 .D CLRQNDIF(GMOVE,SHMV)
 ;
 I $$SHIHZUR D
 .D SETQN(GREST,SHREST,+QNDEL) ; -- NEW QN IN GMOVE
 .D CLRMOD(GREST,SHREST)
 .D CLRQNDIF(GREST,SHREST)
 ;
 D BITMRG(SH,SHL,QNDEL)
 S SH1=SH+1
 I $$CDSTC^W3HZMST(JB,SH1) D CPCMNT
 ;
 N NPMVC
 S NPMVC=$$ITWASMVC^W4SALE(SH)
 I NPMVC D DELMVC(GORD,NPMVC)
 ;
 D CLRMVC2^W3MVC; -- 08/09/25
 D CLRMVC^WLMSALE; -- 08/09/25
 Q
 ;
 ;
W4TS(STAM) ;
 Q $G(W4ITDEL)
 ;
 ;
CPCMNT ;
 I '$$W4TS D
 .S SHL=SHL+1
 .S @GORD@(SHL)=$G(@GORD@(SH1)) ; --- COPY MAIN ITEM
 .D SETNOMOD(GORD,SHL,"")
 ;
 I $G(MV) D
 .S SHMV=SHMV+1
 .S @GMOVE@(SHMV)=$G(@GORD@(SH1))
 .D CLRMODMV(GMOVE,SHMV)
 .D CLRQNDIF(GMOVE,SHMV)
 ;
 I $$SHIHZUR D
 .S SHREST=SHREST+1
 .S @GREST@(SHREST)=$G(@GORD@(SH1))
 .D CLRMOD(GREST,SHREST)
 .D CLRQNDIF(GREST,SHREST)
 ;
 S SH1=SH1+1
 Q
 ;
 ;
SH1NEXT ;
 N SH2 F SH2=SH1+1:1:LAST Q:$$LVST^W3HZMST(JB,SH2)<2&'$$CDSTC^W3HZMST(JB,SH2)
 S SH1=SH2
 Q
 ;
 ;
DELNOMODADD ;
 ;------------------------- DEL ADDONS ----------------------------
 ; INPUT :
 ;      PREZA=2 - MOVE OR DEL PART OF MAIN ITEMS ( NOMULTY )
 ;      PREZA=1 - MOVE OR DEL MAIN ALL MAIN ITEMS
 ;      PREZA=0 - MULTY
 ;      SH - DELETED LINE NUMBER, SH1 - DELETED LINE ADDONS COUNTER
 ;      MV - MOVING ORDER
 ;      W4ITDEL - FROM ^W4ITDEL ( CHOICED ITEMS )
 ;         IF DELETING ALL AI ( PREZA=1 ) QNDIF NOT !
 ;-----------------------------------------------------------------
 ;
 D PUT^%W3DEB("W4HZORD-DELNOMODADD","PREZA=PREZA & SH=SH & SH1=SH1 & MV=MV & W4ITDEL=W4ITDEL ")
 D GORD,GMOVE,GREST
 N QNDIF,QNDIF1,QNDELT S (QNDIF1,QNDELT)=""
 ;
 N SHL S SHL=$O(@GORD@(99999),-1)
 N SHMV S SHMV=$O(@GMOVE@(99999),-1)
 N SHREST S SHREST=$O(@GREST@(99999),-1)
 ; ---- QNDIF - IF ITEM CHOICED FOR DELETING
 ; ---- IF NOT W4ITDEL ( CHOICED ITEMS ) NO LEVEL 2 ! ( W4AIN: 0 & 1 )
 N A
 ;
 F  Q:'($D(@GORD@(SH1))#2)  S A=$G(^(SH1)) Q:SH1>LAST  Q:$$LVST^W3HZMST(JB,SH1)=0  D  ; - TOSAFOT TO DELETED LINE
 .I $$CDC(A) S SH1=SH1+1 Q
 .N LVA S LVA=$$LV(A)
 .;
 .S QNDIF=$$QNDIF(A) ; --- QNDIF < 0 ;-- HOW MUCH ADDONS TO BE DEL (W4ITDEL)
 .;
 .I $D(W4ITDEL),$$EZI($G(CD0),SH)=1,QNDIF="" S PREZA=1
 .I $D(W4ITDEL),'QNDIF,PREZA'=1 D SH1NEXT Q  ; -- 24/11/18 LEV
 .;
 .N ITRA1 S ITRA1=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 .;
 .I $$^W4QNR(ITRA1)'>0 S SH1=SH1+1 Q
 .I $$QNR^W3HZMST(JB,SH1,TMPORDD)'>0 S SH1=SH1+1 Q
 .
 .;;I $$LV(A)=1,'$$^W4AIN S QNDELT=$$ITRAST^W3HZMST(JB,SH1,TMPORDD) ; - ???
 .
 .I LVA=1 S QNDIF1=QNDIF
 .I LVA=2 S SH1=SH1+1 Q
 .
 .I $D(W4ITDEL),PREZA=2,QNDIF1'<0 S SH1=SH1+1 Q
 .
 .I '$$W4TS D
 ..S SHL=SHL+1
 ..S @GORD@(SHL)=$G(@GORD@(SH1)) ; -- COPY ADDONS LINE TO END
 .
 .I $G(MV) D
 ..S SHMV=SHMV+1
 ..S @GMOVE@(SHMV)=$G(@GORD@(SH1))
 ..D CLRMODMV(GMOVE,SHMV)
 ..D CLRQNDIF(GMOVE,SHMV)
 .I $$SHIHZUR D
 ..S SHREST=SHREST+1
 ..S @GREST@(SHREST)=$G(@GORD@(SH1))
 ..D CLRMOD(GREST,SHREST)
 ..D CLRQNDIF(GREST,SHREST)
 .;
 .N QNL S QNL=$$QNV($G(@GORD@(SHL))) ; - ADDONS QN BEFORE DEL
 .N QND S QND=QNDEL ; -- DEL UR 0
 .N MRG S MRG=$G(@GORD@("MRG",SH1))
 .;
 .I $$^W4EZI(CD0) D
 ..I QNL["*" S MRG=$G(MRG0)*$P(QNL,"*",2) Q
 ..S MRG=$G(MRG0)*(QNL\QN0) ; -- WAS \ITRA0
 .;
 .S QNL=$$^W4QNR(QNL)
 .;
 .I $G(ITRA0) S QNL=QND*((QNL-MRG)\ITRA0)
 .
 .I '$D(W4ITDEL) S QNDIF=$S(QNL>0:-QNL,Q:QNL)
 .
 .;
 .I '$$W4TS D
 ..D CLRMOD(GORD,SHL) ;-- DELETE @@ IN NEW LINE
 ..D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF IN NEW LINE
 .
 .D DELNOMODEZA D SH1NEXT Q  ;-- DEL ALL ADDONS ^W4ITDEL
 Q
 ;
 ;
DELNOMODEZA ;--- UD-E ADDONS TO AI
 ; INPUT : SH1,
 ;         SHL
 ;----------------------------------------------------------------------------
 N A1
 ;
 I PREZA=2!(PREZA=0) D  Q  ; -- CHAST UD-E
 .N QNA S QNA=+QNDIF
 .;;S ^AA("W4HZOD-DELNOMODEZA","QNA")=QNA
 .;;S ^AA("W4HZOD-DELNOMODEZA","QND")=QND
 .N QNMV S QNMV=-QNA
 .;
 .N QNAR S QNAR=$$^W4QNR(QNA)
 .I QNAR=0 S QNA=0,QNMV=0
 .
 .I '$$W4TS D
 ..D SETQN(GORD,SHL,QNA) ; -- VSTAV MIN QN ( QNDIF < 0 )
 ..I $G(MV) D SETQN(GMOVE,SHMV,QNMV)
 ..I $$SHIHZUR D SETQN(GREST,SHREST,QNMV)
 ..I 'SUG,'$G(MV),'$$SHIHZUR D
 ...D SET^W4ITEND($$CD($G(@GORD@(SH1))),QNAR) ; -- VOZVR V POOL
 ..D CLRQNDIF(GORD,SHL)
 .
 .I '$$SHIHZUR D
 ..D CLRQNDIF(GORD,SH1)
 .I $G(CD0),'$$^W4EZAT(CD0)!$$^W4AIN Q
 .I QNAR<0 S QNAR=-QNAR
 .D BITMRG(SH1,SHL,QNAR)
 .I $$CDCI(SH1+1) D CPCMNT1 ; -- COMMENT
 .D DELNOMODC2(SH1,QNA) ; -- DEL SONS
 ;
 ;
 I PREZA=1 D  Q  ; -- DEL / MOVE ALL ADDONS
 .N ITRAT S ITRAT=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 .I '$$^W4QNR(ITRAT) S ITRAT=0
 .I '$$W4TS D
 ..D SETQN(GORD,SHL,-ITRAT) ; --- ZAMINUSOVAT V NEW
 ..I $G(MV) D SETQN(GMOVE,SHMV,ITRAT)
 ..I $$SHIHZUR D SETQN(GREST,SHREST,ITRAT)
 ..I 'SUG,'$G(MV),'$$SHIHZUR D
 ...D SET^W4ITEND($$CD($G(@GORD@(SH1))),-ITRAT) ; -- VOZVR V POOL
 ..D CLRQNDIF(GORD,SHL)
 .
 .I $$CDCI(SH1+1) D CPCMNT1 ; -- COMMENT
 .I $G(CD0),'$$^W4EZAT(CD0)!$$^W4AIN Q
 .
 .D BITMRG(SH1,SHL,ITRAT)
 .D DELNOMODC2(SH1,ITRAT)
 Q
 ;
 ;
PROCQN2(SH2,A2,QNDELT) ;
 ; -- QND,QNDEL - QN DEL LV=0
 N QN2,QN20,QN21
 S QN2=$$QNV(A2),QN20=QN2
 I '$$^W4QNR(QN2) Q 0
 ;
 I QN20["*" S QN2=$P(QN20,"*",$L(QN20,"*"))
 ;
 I QN20'["*" D
 .N I1 S I1=$$PREVSH1^W3HZMST(JB,SH2,GORD)
 .N QN1 S QN1=$$QNST^W3HZMST(JB,I1,GORD)
 .I QN2\QN1*QN1=+QN2 S QN2=QN2\QN1
 ;
 S QN21=QNDELT_"*"_QN2
 I $E(QNDELT)'="-",$E(QN2)'="-",$E($P(QN2,"*",2))'="-" D
 .S QN21="-"_QN21
 ;
 I '$$^W4QNR(QN21) Q 0
 Q QN21
 ;
 ;
CPCMNT1 ;
 S SHL=SHL+1
 S @GORD@(SHL)=$G(@GORD@(SH1+1))
 D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF
 D CLRMOD(GORD,SHL) ;-- DELETE @@
 ;
 I $G(MV) D
 .S SHMV=SHMV+1
 .S @GMOVE@(SHMV)=$G(@GORD@(SH1+1))
 .D CLRMODMV(GMOVE,SHMV) ;-- DELETE @@
 .D CLRQNDIF(GMOVE,SHMV) ;--- CLEAR QNDIF
 ;
 I $$SHIHZUR D
 .S SHREST=SHREST+1
 .S @GREST@(SHMV)=$G(@GREST@(SH1+1))
 .D CLRMOD(GREST,SHREST) ;-- DELETE @@
 .D CLRQNDIF(GREST,SHREST) ;--- CLEAR QNDIF
 ;
 S SH1=SH1+1
 Q
 ;
 ;
DELNOMODC2(SH1,QNDELT) ;--- DEL LEVEL 2 & COMMENTS
 N SH10 S SH10=SH1
 ;
 N SH2,QN2,QN20,QN21,A2
 ;
 S SH2=SH1 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 .Q:$$LV(A2)<2
 .I $$QNR^W3HZMST(JB,SH2)'>0 S SH1=SH1+1 Q
 .
 .I '$$W4TS D
 ..S SHL=SHL+1
 ..S @GORD@(SHL)=$G(@GORD@(SH2))
 ..D CLRMOD(GORD,SHL) ;-- DELETE @@
 ..D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF
 ..;
 ..S QN21=$$PROCQN2(SH2,A2,QNDELT)
 ..
 ..I '$$CDC(A2),'$$CDA(A2) D
 ...D SETQN(GORD,SHL,QN21)
 .
 .S SH1=SH1+1
 ;
 ;
 I $G(MV) D
 .I $$QNR^W3HZMST(JB,SH10)'>0 Q
 .
 .S SH2=SH10 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 ..S SHMV=SHMV+1
 ..S @GMOVE@(SHMV)=$G(@GORD@(SH2))
 ..D CLRMODMV(GMOVE,SHMV) ;-- DELETE @@
 ..D CLRQNDIF(GMOVE,SHMV) ;--- CLEAR QNDIF
 ..S QN21=$$PROCQN2(SH2,A2,QNDELT)
 ..S QN21=$TR(QN21,"-","")
 ..I '$$CDC(A2),'$$CDA(A2) D
 ...D SETQN(GMOVE,SHMV,QN21)
 ;
 I $$SHIHZUR D
 .I $$QNR^W3HZMST(JB,SH10)'>0 Q
 .
 .S SH2=SH10 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 ..S SHREST=SHREST+1
 ..S @GREST@(SHREST)=$G(@GORD@(SH2))
 ..D CLRMOD(GREST,SHREST) ;-- DELETE @@
 ..D CLRQNDIF(GREST,SHREST) ;--- CLEAR QNDIF
 ..S QN21=$$PROCQN2(SH2,A2,QNDELT)
 ..S QN21=$TR(QN21,"-","")
 ..I '$$CDC(A2),'$$CDA(A2) D
 ...D SETQN(GREST,SHREST,QN21)
 Q
 ;
 ;
BITMRG(SH,SHL,QNDEL)
 Q:'$G(QNDEL)
 N TS S TS=$$W4TS
 ;;W "SH="_SH_"  SHL="_SHL_"  QNDEL="_QNDEL ; ***
 I TS D  Q
 .S @GORD@("TS",SH,TS)=$G(@GORD@("TS",SH,TS))+QNDEL
 .S @GORD@("TS",SH)=$G(@GORD@("TS",SH))+QNDEL
 ;
 I '$$^W4CP D
 .S @GORD@("MRG",SH)=$G(@GORD@("MRG",SH))+QNDEL
 .S @GORD@("BIT",SHL)=$S($G(MN):$G(MLZ)_"*"_MN,1:$G(MLZ)_"*"_$G(MLZ))_"*"_$G(SIBA)_"*"_$$CNWEB^%L1FRM($G(SIBA1))_"*"_$H_"*"_$G(SUG)_"*"_$$^W4MYDVN_"*"_SH_":"_@GORD@("MRG",SH)
 Q
 ;
 ;
RESTNOMOD(SH,QNDEL,LAST) ;
 D PUT^%W3DEB("W4HZORD-RESTNOMOD","SH=SH & QNDEL=QNDEL & LAST=LAST")
 D GREST
 N SHL S SHL=$O(@GORD@(99999),-1)
 N I S I="" F  S I=$O(@GREST@(I)) Q:I=""  I I D
 .S SHL=SHL+1
 .M @GORD@(SHL)=@GREST@(I)
 K @GREST
 Q
 ;
 ;
EDITROW(SH) ;
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-EDITROW","SH=SH")
 ;
 N GORD D GORD
 S SH=$$FINDSH(SH) Q:SH=""
 I SH=$O(@GORD@(9999),-1) S PRL=1
 I $P($G(@GORD@(SH)),"~")'=0 Q
 ;
 N GT S GT="^[$$^W3MAIN]TMPTF($$^%W1JB,3)"
 K @GT
 Q
 ;
 ;
CHANGE(SHCM) ;
 D TMPORD
 N SH,SH1,CM
 S SH=$P(SHCM,"~")
 S CM=$P(SHCM,"~",2) ; -- !!
 ;
 S SH=$$FINDSH(SH) Q:SH="" ""
 D PUT^%W3DEB("W4HZORD-CHANGE","SH=SH & CM=CM")
 ;
 N QNO S QNO=$$QNST^W3HZMST(JB,SH)
 D SETSH^W4ITEND(SH,CM)
 D SETQN(TMPORD,SH,CM) ; CM --> ST UR 0
 ;
 N CDM S CDM=$$CDI(SH)
 ;
 I $$LVI(SH)=0 D  ; --- HAZAGAT PARIT AL DISPLAY
 .N A S A=$G(@TMPORD@(SH))
 .N MYDVN S MYDVN=$$^W4MYDVN
 .N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 .Q:'PORTDISP
 .D PCPAR^W4TX2DSP(PORTDISP,A)
 ;
 I $$LVI(SH)=0 D
 .N CD,LVI,CM1OLD S CD=$$CDI(SH),CM1OLD=""
 .
 .S SH1=SH F  S SH1=$O(@TMPORD@(SH1)) Q:SH1=""  I SH1 S LVI=$$LVI(SH1) Q:LVI=0  D
 ..N A S A=$G(^(SH1))
 ..I $$CDA(A) Q
 ..I $$CDC(A) Q
 ..I $$CDH(A) Q
 ..
 ..N CM1 S CM1=$$QNST^W3HZMST(JB,SH1)
 ..D
 ...I CM1["*" S CM1=CM_"*"_$P(CM1,"*",2,3) Q
 ...I CM1'["*" D  Q
 ....I LVI=1,'$$^W4EZAT(CD),'$$^W4AIN,$G(QNO) S CM1=CM_"*"_(CM1\QNO) Q
 ....S CM1=CM
 ..
 ..I LVI=1 S CM1OLD=CM1
 ..
 ..N MAIN S MAIN=$$MAIN^W4ITM(A)
 ..D PUT^W4ITM("QNM",CM,"A")
 ..S @TMPORD@(SH1)=A
 ..D SETSH^W4ITEND(SH1,CM1)
 ..D SETQN(TMPORD,SH1,CM1)
 ;
 N ST S ST=$G(@TMPORD@(SH))
 Q $J($$MH(ST)*$$QN1($$QNV(ST)),2,2)
 ;
 ;
CDIT(NS)
 D TMPORD
 N SH,CD,IT
 S SH=$$FINDSH(NS) Q:SH="" ";"
 S CD=$$CDI(SH) I CD="" Q ";"
 S IT=$$^W4ITEND(CD)
 Q CD_";"_IT
 ;
LAST0(STAM) ;
 D TMPORD
 N N S N=$O(@TMPORD@(9999),-1) I N="" Q ""
 I $P($G(^(N)),"~")=0 Q ^(N)
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  Q:$P(^(N),"~")=0
 I N="" Q ""
 Q $G(@TMPORD@(N))
 ;
 ;
LASTAI(STAM)
 N TX S TX=$$LAST0 I TX="" Q 0
 N CD S CD=$P(TX,"~",2) I CD="" Q 0
 I $$DD^W4EZA(CD)!$$DD^W4EZT(CD) Q 1
 Q 0
 ;
 ;
BDIKA(TXT) ;
 Q:'$G(JB) 1
 N LI
 N STPAR S STPAR=$$LAST0^W3HZMST(JB) I STPAR="" Q 1
 S LI=$$LI^W3HZMST(JB) Q:'LI 1
 ;
 N VA
 I $P(TXT,"~")=0 S VA=$$^W3VLDADD(TXT) S:VA="" VA=0 I 'VA Q VA
 Q 1
 ;
 ;
STADD(TXT) ;
 Q $$STADD^W4STADD($G(TXT))
 ;
GETQN(STID)
 N IND S IND=$$FINDSH(STID) I 'IND Q "NOK"
 Q $$QNR^W3HZMST(JB,IND)
 ;
FINDSH(STID) ; -- STID = LV...
 ;;D PUT^%W3DEB("W4HZORD-FINDSH","STID=STID")
 D TMPORD
 N SH S SH=$E(STID,4,8) I SH="" Q "NOK"
 Q $$SHORD(SH)
 ;
SHORD(SH)
 N N S N=SH
 I $P($G(@TMPORD@(SH)),"~",10)="" Q SH
 I $P($G(@TMPORD@(SH)),"~",10)'=SH D
 .S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N Q:$P($G(^(N)),"~",10)=SH
 Q N
 ;
NOMOD(I) ;
 D TMPORD
 N A S A=$G(@TMPORD@(I))
 Q $$NOMODST(A)
 ;
NOMODST(A) ;
 I $$GETNOMOD(A)["@@" Q 1
 Q 0
 ;
CLRMOD(GORD,SHL) ;
 N CLR S CLR=""
 I $G(MV) S CLR=$S($$PCMV:"",1:"HZ")
 D SETNOMOD(GORD,SHL,CLR) ; --- UBRAT NOMOD V NOV STR ( BIT)
 Q
 ;
PCMV(STAM) ;
 I $$^W4CP Q 1
 I $G(@$$^W4PRM@("HZMHV"))=1 Q 1
 I $G(@$$^W4PRM@("HZMHV"))=3,$$GETP^%W1PRM("PCMV") Q 1
 Q 0
 ;
CLRMODMV(GMOVE,SHMV)
 N CLR S CLR="HZ"
 D SETNOMOD(GMOVE,SHMV,CLR)
 Q
 ;
SETNOMOD(GL,SH,VL)
 S VL=$G(VL)
 I $G(VL)'="HZ" S $P(@GL@(SH),"~",12)=VL
 I VL=""!(VL="HZ") S $P(@GL@(SH),"~",13)=""
 Q
 ;
GETNOMOD(A)
 Q $P(A,"~",12)
 ;
NOLASTMOD(STAM)
 N STPAR
 I $$^W4AIN D  Q $$NOMODST(STPAR)
 .S STPAR=$$GETP^%W1PRM("STPAR0")
 ;
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1) I 'LAST Q 0
 Q $$NOMOD(LAST)
 ;
NOMODADD(PRM) ;
 D PUT^%W3DEB("W4HZORD-NOMODADD","PRM=PRM")
 N NST,CDADD
 S CDADD=$P($P(PRM,";",2),"~",2)
 I CDADD="" Q "NOK"
 S NST=$P(PRM,";")
 N NOM S NOM=$$FINDSH(NST) I 'NOM Q "NOK"
 N OK S OK=0
 N I F I=NOM+1:1 Q:'$$LVI(I)  I $$CDI(I)=CDADD S OK=I Q
 I 'OK Q "NOK"
 Q $$NOMOD(I)
 ;
CLRQNDIF(GLREF,IND) ;
 S $P(@GLREF@(IND),"~",11)=""
 Q
 ;
NOEDITMOD(I) ;
 N RES S RES=0
 N NOMOD S NOMOD=$$NOMOD(I) I NOMOD S RES=1
 I $$OTH S RES=1
 I $$CHNORD S RES=1
 I $$QNST^W3HZMST(JB,I)<0 S RES=2+NOMOD
 I $$ITRAST^W3HZMST(JB,I)'>0 S RES=4+NOMOD
 I 'RES,$$ZAG S RES=1
 Q RES
 ;
SVCMNT(PRM) ;
 N CD,CDCMNT
 S CDCMNT=$P(PRM,"-C",2)
 S CD=$P(PRM,"-")
 I CDCMNT="" Q
 I CD="" Q
 D PUT^%W1PRM("CDCMNT",CDCMNT_";;0;"_CD)
 Q
 ;
EZH(CD) ;
 I $G(CD)="" Q 0
 I $$D^W4EZH(CD) Q 1
 Q 0
 ;
PARENT(ID) ;
 I $G(ID)="" Q " "
 D TMPORD
 N SH S SH=$$FINDSH(ID)
 I 'SH Q " "
 N I F I=SH:-1:0 Q:$$LV($G(@TMPORD@(I)))=0
 I I=0 Q " "
 N A
 S A=$G(@TMPORD@(I))
 Q $P(A,"~",2)_";"_I_";"_$P(A,"~",10)
 ;
PARENTSET(ID) ;
 I $G(ID)="" Q " "
 I ID'["LV1" Q " "
 D TMPORD
 N SH S SH=$$FINDSH(ID)
 I 'SH Q " "
 N I F I=SH:-1:0 Q:$$LV($G(@TMPORD@(I)))=0  Q:$$CDA($G(@TMPORD@(I)))
 I I=0 Q " "
 I '$$CDA($G(@TMPORD@(I))) Q " "
 N A
 S A=$G(@TMPORD@(I))
 Q $P(A,"~",2)_";"_I_";"_$P(A,"~",10)
 ;
HNH(STAM) ;
 Q $$HNH^W4GETSUM(JB)
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I '$$^W4ISORD(HZM) Q $J($$TOTHN*$$AHUZ^W3HZMST(JB)*.01,$$DR,$$DR)
 I $$D^W3TMPORD(JB)<11 Q $$HNH^W4HZMST(HZM)
 ;
 N HNHAH,HNH,HNH0
 I $$^W4ISORD(HZM) S HNHAH=$$AHUZ^W3HZMST(JB)
 I $G(HNHAH)="" S HNHAH=$$AHUZ^W4MENUBT
 ;
 S HNH=$$TOTHN*HNHAH*.01
 I $$^W4ISORD(HZM) D
 .S HNH=HNH+$$SLKHNH^W4PAYVW(HZM)+$$SHNH1^W4PAYVW(HZM) ;+$$HNH2^W4HZMST(HZM)
 Q $J(HNH,2,2)
 ;
TOTHN(STAM) ;
 Q $$TOTORD^W3HZMST(JB,"D")
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
GORDD ;
 S GORDD=$$^W4MAIN("TMPORDD")
 Q
 ;
GMOVE ;
 S GMOVE=$$^W4MAIN("TMPMV")
 Q
 ;
GREST ;
 S GREST=$$^W4MAIN("TMPRS")
 Q
 ;
HNHSHAA(CD) ;
 N NMB
 S HNHSHAA=""
 I '$G(CD) Q ""
 S NMB=$$GET^%W1PRM("NMB") Q:'NMB ""
 N ZMANK S ZMANK=$$DATCB^W3HZMST(JB)
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 Q $$^W4HNHSHA(CD,NMB)
 ;
DISCCMST(MHT) ;
 W "<td class=""disccmst"">"
  D
  .I $L($G(A)),$$CDA(A)!$$CDH(A)!$$CDC(A) W "&nbsp;" Q
  .I $$^W4PRTBH($$CD(A)) W "&nbsp;" Q
  .I $G(HNST)!$G(HNST1) D
  ..N HNST0 S HNST0=HNST I $G(NOTSFMVC) S HNST0=""
  ..W $S($G(HNST0)&$G(HNST1):HNST0_"*"_HNST1,$G(HNST1):HNST1,$G(HNST0):HNST,1:"&nbsp;")
  ..W "<br>",!
  .W $S('$G(NOTSFMVC)&$L($G(CMST))&MHT:$$H2U^%L1FRM(CMST),1:"&nbsp;")
 W "</td>",! ; --- DISCOUNT PLACE
 Q
 ;
 ;
NODISCST()
 Q +$G(@$$^W4PRM@("NODISCST"))
 ;
PREPEDIT(NS) ;
 N NST
 S NST=+$$FINDSH^W4HZORD(NS)
 N TMPORD S TMPORD=$$^W4TMPORD
 N ST S ST=$G(@TMPORD@(NST))
 D PUT^%W1PRM("STPAR",ST)
 N CD S CD=$$CD(ST)
 ;
 D PUT^%W1PRM("SHID",NS)
 ;
 I $$^W4AIN&$$TSF(NST) D  Q
 .N STA,A S STA="",A=""
 .F I=NST-1:-1:1 S A=$G(@$$^W4TMPORD@(I)) Q:$$CDA(A)
 .I $$CDA(A) S STA=$$CD(A)_";"_$$CD($$^W4RSTPAR)_";"_$$QNV(A)_";"_$$MH(A)
 .I STA'="" D PUT^%W1PRM("STPAR40",STA)
 .D INITUR^W4MENU(5)  ; -- EDIT INTO AI ITEM+ADDONS
 ;
 I $$^W4AIN D  Q
 .D INITUR^W4MENU(4)  ; -- EDIT ITEM INTO AI
 ;
 I $$^W4EZAT(CD),$$LV(ST)=0,'$$^W4AIN D
 .D PUT^%W1PRM("STPAR00",ST)
 ;
 I $$^W4EZAT(CD) D  Q
 .D PUT^%W1PRM("SHID0",NS)
 .D KILL^%W1PRM("SHID")
 .D INITUR^W4MENU(3)
 .I $$SAVEIT^W4HZTSF(ST) ; -- !!!
 ;
 I $$TSF^W4HZORD(NST) D
 .D INITUR^W4MENU(3)
 ;
 Q
 ;
 ;
SHIHZUR(STAM) ;
 I +$$GET^W4TMPANS("DEL","DELETE?")=2 Q 1
 Q 0
 ;
MV(STAM) ;
 I $G(MV) Q 1
 I $$SHIHZUR Q 1
 Q 0
 ;
SENDED(I,COL) ;
 I '$G(COL) S COL=7
 D TMPORD
 N DATO,TIMEO,TIMEN,TIMEFIRE,I0
 N IO S IO=$O(@TMPORD@(I),-1) Q:'IO
 F I0=IO:-1:0 Q:'$$LVI(I0)
 I 'I0 Q
 I '$$NOMOD(I0),$$ZAHI^W4PRM'=2 Q
 S TIMEO=$P($G(@TMPORD@("ST",I0)),"\",2)
 S DATO=$P($G(@TMPORD@("ST",I0)),"\",5)
 I DATO S DATO=$ZD(DATO,"DD.MM.YY")
 N MLZRO S MLZRO=$P($G(@TMPORD@("ST",I0)),"\",1)
 S TIMEN=""
 I I D
 .S TIMEN=$P($G(@TMPORD@("ST",I)),"\",2)
 .S TIMEFIRE=$P($G(@TMPORD@("ST",I)),"\",3)
 ;
 ;
 I $L(TIMEO),TIMEO'=TIMEN D
 .W "<tr style=""text-align:center;background-color:grey;color:white;font-weight:bold"" >"
 . W "<td colspan="""_COL_""">"_$$^%W1DICT("SENDED2PRINT",TIMEO_" "_DATO)_$$NBSP^%L1FRM(3)
 . W "<span style=""font-size:"_$$^W3FSZ(10)_""">"_$$H2U^%L1FRM($$^W4NAME(MLZRO))_"</span>"
 .W "</tr>",!
 Q
 ;
 ;
FIRE(I,COL) ;
 I '$G(COL) S COL=7
 D TMPORD
 N A S A=$G(@TMPORD@("FIRE","SH",I))
 N TIMEFIRE S TIMEFIRE=$P(A,";")
 N FIREIND S FIREIND=$P(A,";",2)
 S A=$G(@TMPORD@("NOFIRE","SH",I))
 N NOTIMEFIRE S NOTIMEFIRE=$P(A,";")
 N NOFIREIND S NOFIREIND=$P(A,";",2)
 ;
 I FIREIND,FIREIND<NOFIREIND!'NOFIREIND D PRINTFIRE I NOFIREIND D PRINTNOFIRE
 I NOFIREIND,NOFIREIND<FIREIND!'FIREIND D PRINTNOFIRE I FIREIND D PRINTFIRE
 ;
 Q
 ;
 ;
NAMEMDP(MDP) ;
 Q $P($G(@$$^W4PRM@("MDP",MDP)),"\",4)
 ;
PRINTFIRE ;
 I TIMEFIRE'="" D
 .W "<tr style=""text-align:center;background-color:red;color:white;font-weight:bold"" >"
 . W "<td colspan="""_COL_""">"_$$^%W1DICT("FIRE",TIMEFIRE)
 . I FIREIND S MDPL=$$SPA^%L1FRM($G(@TMPORD@("FIRE","TIME",FIREIND))) I $L(MDPL) D
 ..N J F J=1:1:$L(MDPL,",") D
 ...N MDP S MDP=$P(MDPL,",",J) Q:MDP=""
 ...W "&nbsp;&nbsp;&nbsp;" ; W "<br>"
 ...W "<span style=""font-size:"_$$^W3FSZ(8)_""" >"_$$H2U^%L1FRM($$NAMEMDP(MDP))_"</span>"
 . W "</td>",!
 .W "</tr>",!
 Q
 ;
PRINTNOFIRE ;
 I NOTIMEFIRE'="" D
 .W "<tr style=""text-align:center;background-color:black;color:yellow;font-weight:bold"" >"
 . W "<td colspan="""_COL_""">"_$$^%W1DICT("NOFIRE",NOTIMEFIRE)
 . I NOFIREIND S MDPL=$$SPA^%L1FRM($G(@TMPORD@("NOFIRE","TIME",NOFIREIND))) I $L(MDPL) D
 ..N J F J=1:1:$L(MDPL,",") D
 ...N MDP S MDP=$P(MDPL,",",J) Q:MDP=""
 ...W "&nbsp;&nbsp;&nbsp;" ; W "<br>"
 ...W "<span style=""font-size:"_$$^W3FSZ(8)_""" >"_$$H2U^%L1FRM($$NAMEMDP(MDP))_"</span>"
 . W "</td>",!
 .W "</tr>",!
 Q
 ;
FIRSTNEW(STAM) ;
 I $$GET^%W1PRM("FIRSTNEW") Q 1
 Q 0
 ;
CONDORD(NMB)
 Q $$CONDORD^W4HZORHD(NMB)
 ;
PRMANA1(STAM) ;
 Q $$PRMANA1^W4HZORHD
 ;
AIN(STAM) ;
 Q $$^W4AIN
 ;
PREZAT(A) ;
 I $$PREZAT^W3HZMST(A),'$$^W4AIN Q 1
 Q 0
 ;
DELMAINAI(STAM) ;
 N PRM S PRM=$$GETP^%W1PRM("DELMAINAI")
 Q +PRM
 ;
BSLPAR(PAR) ;
 Q $$BSLPAR^W4CDSRV(PAR)
 ;
SETCHNLINE(I) ; 
 N (JB,%ARG,I)
 N RES
 I $$GETP^%W1PRM("CHNORD1")="" D  Q 1
 .D PUT^%W1PRM("CHNORD1",I)
 ; 
 S MVLN=$$GETP^%W1PRM("CHNORD1")
 S RES=$$SWAP^W4MVLINE("LV0"_I_";LV0"_MVLN)
 D KILL^%W1PRM("CHNORD1")
 Q 2
 ;
BGCMVL(STAM) ;
 Q "#FFFB88" 
 ;
EZI(CD,SH) ; 
 N EZI S EZI=$$^W4EZI(CD)
 I EZI Q EZI
 N LV S LV=$P($G(@$$^W4TMPORD@(SH)),"~")
 N NXST S NXST=$G(@$$^W4TMPORD@(SH+1)) 
 N NXLV S NXLV=$P(NXST,"~")
 N NXCD S NXCD=$P(NXST,"~",2)
 N NXST2 S NXST2=$G(@$$^W4TMPORD@(SH+2)) 
 N NXLV2 S NXLV2=$P(NXST2,"~")
 I NXLV>LV,NXCD'["-C" Q 1
 I NXLV>LV,NXCD["-C",NXLV2>LV Q 1
 Q 0
 ;
 ;
CHNQNMVC(PRM)
 N QNNEW S QNNEW=1 
 I PRM[";" S QNNEW=$P(PRM,";",2)
 S PRM=$P(PRM,";")
 ;
 N LAST,IND,SH,ST
 S SH=$$FINDSH(PRM) I SH="" Q -.5
 S ST=$G(@TMPORD@(SH))
 ;
 ;;S ^AA("W4HZORD-CHNQNMVC","PRM")=PRM
 ;;S ^AA("W4HZORD-CHNQNMVC","SH")=SH
 ;
 I PRM["LV0" D
 .N GORD D GORD
 .N NPMVC S NPMVC=$$ITWASMVC^W4SALE(SH)
 .S ^AA("W4HZORD-CHNQNMVC","NPMVC")=NPMVC
 .I NPMVC D DELMVC(GORD,NPMVC)
 .
 .I '$$NOMOD^W3HZMST(JB,SH) D  Q
 ..S $P(@GORD@(SH),"~",5)=QNNEW
 ..D SETSH^W4ITEND(SH,"-")
 .
 .D DELROW(PRM)
 .D NEWST^W4HZTSF(ST,QNNEW)
 Q 1
 ;
 ; 
DELMVC(GORD,NPMVC)
DELMVC1 N A1 S A1=$G(@GORD@(NPMVC+1))
 I $$CDC(A1) D DELSEQ(GORD,NPMVC+1)
 D DELSEQ(GORD,NPMVC)
 K @GORD@("MVC"_$$GETP^%W1PRM("MVC"))
 S NPMVC=$$ITWASMVC^W4SALE(NPMVC)
 I 'NPMVC Q 
 G DELMVC1
 ;
QNSTG(NS) ;
 I '$$GETP^%W1PRM("STAGE") Q 0
 D TMPORD
 N IND I $E(NS,1,2)="LV" S IND=+$E(NS,4,8)
 I $E(NS,1,2)="QN" S IND=+$E(NS,5,9)
 N SH S SH=$$SHORD(IND)
 ;;S ^AA("W4HZORD-QNSTG","SH")=SH
 I 'SH Q 0
 N STGIT S STGIT=$$STGIT^W3HZMST(JB,SH)
 ;;S ^AA("W4HZORD-QNSTG","STGIT")=STGIT
 I 'STGIT Q 0
 Q $J(STGIT,3,3)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZORD0
W4HZORD(TXT) ;    [ 03.05.26 09:43 ] [ 18.12.25 17:05 ] [ 01.12.25 14:38 ] 
 N (JB,%ARG,TXT,BACK,%REM)
 S A="&lt;&nbsp;&&gt;"
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 S MSD=$$GET^%W1PRM("MSD")
 S NMB=$$GET^%W1PRM("NMB")
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;
 I '$$CHNORD D KILL^%W1PRM("CHNORD1")
 I '$$CHNORD^W4PRM D KILL^%W1PRM("CHNORD"),KILL^%W1PRM("CHNORD1")
 ;
 I $G(%ARG("CHNORD"))?1N D
 .D PUT^%W1PRM("CHNORD",%ARG("CHNORD"))
 ;
 S COLSPAN=$S($$ZAG:5,$$^W4AIN:6,$$CONDORD(NMB):7,$$PRMANA1&'$$^W4SMALL:8,1:7)
 ;
 D PUT^%W3DEB("W4HZORD","TXT=TXT & MSD=MSD & %ARG=[%ARG")
 ;
 N W3HZORD S W3HZORD=""
 ;
 I '$$ZAG S ^[$$^W3MAIN]devpi($$^W4MYDVN)=JB
 I $$ZAG D INIT^W4ZAG
 ;
 K TXT
 ;
 S CUR=0
 D TMPORD
 D TMPORD1 K @TMPORD1
 ;
 D PUT^%W1PRM("SHOWORD",1)
 ;
VIEW ;
 D NOSELECT^%W1JS
 S FIRSTADD=-1,OPENADD=$$OPENADD^W4PRM ; WAS 0
 I $$ZAG S OPENADD=1
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;
 I HZM>0,$$VVMSK^W4PRM,$$GETP^%W1PRM("CLRORD")=HZM,$$^W4HZMH(HZM) D
 .N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  K ^(N)
 .S $P(@$$^W4TMPORD,"~",11)=0
 ;
 D KILL^%W1PRM("CLRORD")
 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 W "<div id=""DivOrd"" align=""center"" ",!
 W ">"
 ;
 ;;W "<br><br>",!
 ;
 I $$ZAG,$G(%ARG("JBFROM")) S JB=$G(%ARG("JBFROM")) ; ***
 ;
 I $$AIN D
 .N STPAR0 S STPAR0=$$^W4RSTPAR
 .D AINMAIN(+$$QNV(STPAR0))
 ;
 I $$DELMAINAI D
 .N SH,QNDEL,MLZ
 .S MLZ=$$GETP^%W1PRM("MLZR")
 .S MN=$$^W4WHOSBM
 .S SH=$$DELMAINAI
 .S QNDEL=$$ITRAST^W3HZMST(JB,SH)
 .D DELNOMOD(SH,QNDEL,MLZ,MN)
 .D KILL^%W1PRM("DELMAINAI")
 ;
HDORD
 I '$$AIN D ^W4HZORHD(HZM) ; --> COLSPAN
 ;
 F J=1:1:$G(W4HZORHDSM) D
 .W "<br><br>",!
 ;
 S BGC="#eaeaea"
 ;
 S WDTBL=100
 I $$1024^W4WDSCR,$$^W4TABLET'=2 S WDTBL=100
 I $$ZAG S WDTBL=98
 ;
 I $G(%ARG("HZMSK")) D
 .N HZMSK S HZMSK=$G(%ARG("HZMSK"))
 .N %ARG
 .W "<p dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(20)_""" >",! 
 . W $$^%W1DICT("WEIGHTORDER",HZMSK)
 .W $$NBSP^%L1FRM(3)
 .D ^W4BCK
 .W "</p>",!
 ;
 ;
 W "<table id=""TblOrd"" border=0 "
   W " width="""_WDTBL_"%"" class=""bgtblord"" "
   I $$^W4TABLET=2 W $$INV^%W1ALIGN
   W " style="""
    W "left:"_($$LEFT^W4HZORHD-1)_";"
    ;;I '$$^W4SMALL W "table-layout:fixed;"
    W "background-color:"_BGC_";"
    W $$RAD^W3CSM_";"
    W $$BOXSHADOW^W3CSM("0px",$$KF(6)_"px",".4")
    W "border:grey "_$$KF(1)_"px solid"
   W """ "
   W " cellspacing=""0"""
   W " dir="""_$$^%W1DIR_""" "
 W ">",!
  ;
  D TRTH(1); -- <tr><th> ...
  ;
 S FLA=0,FLED=0,PRT=""
 ;
 D SETOP
 ;
 S IDMAIN="",AHST="",NOTSFMVC=""
 D MN^W4MANA
 N I,IO,CMST,HNST,HNST1 S (HNST,HNST1,CMST)=""
 ;
 S CURLN=$$GETP^%W1PRM("CURLN")
 N TSHL S TSHL=$$TSHL^W3HZMST(JB)
 N W4AIN S W4AIN=$$^W4AIN
 N QN0,CD0 S (QN0,CD0)=""
 ;
 N RESMVC S RESMVC=$$MVC3
 ;
 K MHVAR
 M MHVAR=^|$$^W3MAIN|TMPORD0(JB)
 K ^|$$^W3MAIN|TMPORD0(JB) ; ***
 ;;I $D(MHVAR) ZWR MHVAR
 ;
 S I="" F  S I=$O(@TMPORD@(I))  Q:I=""  I I?1N.N D  D FIRE(I,COLSPAN)
 .N A S A=$G(^(I))
 .N CD S CD=$$CD(A)
 .S $P(@TMPORD@(I),"~",10)=I
 .
 .I $$LV(A)=0 D  ; --------------------------  ITEMS
 ..S FLA=0,FLED=0,ITRA0=$$ITRAST^W3HZMST(JB,I),QN21=""
 ..S (CMST,HNST,HNST1)=""
 ..S FIRSTADD=-1
 ..S OPENADD=$$OPENADD(I) I $$ZAG S OPENADD=1
 ..I $$EDITLINE(I) S FLED=1
 ..I $$QNV(A)<0&(TSHL'<0!W4AIN),$$^W4BIT(I,TMPORD) Q
 ..D SENDED(I,COLSPAN) ; -- SENDED2PRINT
 ..
 ..S BGC=$$BGCOLOR(I)
 ..
 ..W $$TRLV0(I_"^"_A)
 ..
 ..S PRT=CD,IDMAIN="LV0"_I
 ..N MRG S MRG=$$MRG^W3HZMST(JB,I)
 ..S QN0=$$QNR^W3HZMST(JB,I)
 ..S CD0=$$CDST^W3HZMST(JB,I)
 ..
 ..I '$$ZAG(NMB) D TDCD ; --- CODE
 ..
 ..D TDNAME
 ..
 ..I $$CDSRV(A),$$CDSRV(A)'=12,$$QNV(A)>0 G ETR ; -- IF SERVIS CODE VIEW NAME ONLY
 ..
 ..D TDQN
 ..
 ..D TDMH
 ..
 ..S HNST=$J($$HNST^W3HZMST(JB,I),$$DR,$$DR),AHST=HNST
 ..S NOTSFMVC=$P($G(@$$^W3TMPORD@(JB,I)),"~",8)
 ..I '$$^W4POSMSK(NMB),'$$^W4AIN,'$$NODISCST D TDDISC
 ..
 ..I '$$CONDORD(NMB) D  ; -------------- GLIST
 ...D TDGLIST(0,I)
 ..
 ..I '$$CONDORD(NMB)!$$^W4AIN,$$PRMANA1 D TDMANA
 ..;;I '$$SUPER^W3PRM,$$PRMANA1 D TDMANA
 ..
 ..I $$CONDORD(NMB),'$$^W4AIN D TDSUM ;
 ..
 ..I '$$ZAG D TDIMG
 ..
ETR ..W "</tr>",!
 ..
 ..
 ..I 'OPENADD D  Q
 ...N I1 S I1=I+1
 ...I $$CDCI(I1) D TRCMNT ; --- COMMENT
 ...Q:'$$HASADD(I)
 ...D TRADD
 .
 .
 .I $$LV(A) D  ; -------------- ADDITIONS ---------
 ..N MHT
 ..
 ..I $G(ITRA0)<0 Q
 ..
 ..I $$QN1($$QN(A))<0 Q
 ..I $$QN1^W3HZMST(JB,I)<0 Q
 ..
 ..I 'OPENADD Q
 ..I FIRSTADD=-1 S FIRSTADD=1
 ..
 ..I $$CDA(A) D
 ...S FLA=1
 ...I $$GET^%W1PRM("SHID4")=("LV1"_I) S FLED=2
 ..
 ..W "<tr style=""color:"_$$COLORADD^W4CSS($$LV(A))
 .. D BGC1(I)
 .. W """ height="""_$$KF(40)_"px"" id="""_$S($$CDC(A):"CM1",1:"LV1")_I_""""
 ..W " >",!
 ..
 ..I '$$ZAG(NMB) D TDTCD
 ..D TDTNAME
 ..D TDTQN
 ..D TDTMH
 ..
 ..S HNST1=$J($$HNST^W3HZMST(JB,I),$$DR,$$DR)
 ..I '$$^W4POSMSK(NMB),'$$^W4AIN,'$$NODISCST D DISCCMST(MHT)
 ..
 ..I '$$CONDORD(NMB) D
 ...D TDGLIST(1,I)
 ..
 ..I '$$SUPER^W3PRM,'$$CONDORD(NMB)!$$^W4AIN,$$PRMANA1 D TDTMANA
 ..
 ..I $$CONDORD(NMB),'$$^W4AIN D TDSUM
 ..
 ..I '$$ZAG D TDTIMG
 ..
 ..W "</tr>",!
 ;
 D SENDED(99999,COLSPAN)
 ;
 I $G(%ARG("HZMH")),'$D(@TMPORD@(1)),'$$^W4SMALL,'$$AIN D
 .D INIT^W3PRCOFR(JB)
 ;
 ;
 I '$O(@TMPORD@(99999),-1),'$$^W4SMALL,'$$AIN,'$$ZAG,'$$^W6 D  ; -- TABLE HISTORY
 . W "<tr><td colspan=""8"">"
 .  W "<input type=""button"" "
 .  W "style=""height:"_$$KF(50)_"px;width:100%;text-align:center;color:darkred;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"" "
 .  W "value="""_$$^W4DICTHS($$GETP^%W1PRM("NMB"))_""" "
 .  W $$^W4TOUCH_"=""TableHistory()"" >"
 . W "</td></tr>",!
 ;
 I $$^W4TABLET'=2,$$VL^W4SMALL'=2 W "</table>",!
 ;
 W "</div>",!
 ;
 D SCROLLDOWN
 ;
 I $$ZAG S JB=$G(%ARG("JB")) ; ***
 ;
 Q
 ;
 ;
MVC3() ; 
 N (JB,%ARG)
 N GL S GL=$$^W4GL("W4MVC3")
 I $D(@GL)<10 Q 0
 N HZM S HZM=$$GETP^%W1PRM("HZM") 
 ;
 I HZM>0,$$CLOSE^W4HZMST(HZM) Q 0
 I HZM>0,$$^W4HZMH(HZM) Q 0
 I HZM>0,$$DEL^W4DEL(HZM) Q 0
 I HZM>0,$$^W4PIZUL(HZM) Q 0
 ;
 S MVC=3 D PUT^%W1PRM("MVC",MVC)
 ;
 S OK=0
 N N,SET S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I '$$USVIB^W4SALE(N,MVC) Q
 .S A=$G(@GL@(N,1))
 .S SET2=$$GET^W4SALE("SET2",A,MVC) I SET2="" Q
 .S PRC=$$GET^W4SALE("PRC",A,MVC) I PRC'<0,PRC'["=" Q
 .N GLSET S GLSET=$$^W4GL("P1SETM")
 .N CDSET S CDSET=$O(@GLSET@(SET2,"")) I 'CDSET Q
 .I $O(@GLSET@(SET2,CDSET))'="" Q
 .N IND S IND=N_"-"_CDSET_";"
 .N RES S RES=$$ADDMVC^W4SALE(IND) I RES S OK=1
 ;
 Q OK
 ;
 ;
ZAG(STAM) ;
 Q $$^W4ZAG
 ;
KF(NUM) ;
 Q $$^W4KF(NUM)
 ;
DR(STAM) ;
 Q 2
 I $G(@$$^W4PRM@("ORDDR2")) Q 2
 Q 1
 ;
TRLV0(PRM) ;
 N I,A
 S I=$P(PRM,"^")
 S A=$P(PRM,"^",2)
 ;
 N BGC S BGC=$$BGCOLOR(I)
 N HG S HG=$$KF(40)
 N ST
 S ST="<tr id=""LV0"_I_""" "
 I I'=+$$GETP^%W1PRM("TOAI") S ST=ST_" class="""_$S($$NOMOD(I):"wasprinted",1:"forecolor")_""" "
 S ST=ST_" style=""height:"_HG_"px"
 I $$HZMSKONL^W4MENU S ST=ST_";font-size:"_$$^W3FSZ(16)
 N CLRBG S CLRBG=BGC
 I I=+$$GETP^%W1PRM("TOAI") S CLRBG="yellow"
 I $$TOAICD^W4PRM,$$TOAICD^W4PRM=$$CD(A) S CLRBG="lightblue"
 I $$CDSRV(A),$$QNV(A)>0 S CLRBG="lightblue"
 K PRMVL
 I $D(@$$^W4TMPORD@(I,"MVL")) D
 .S CLRBG=$$BGCMVL
 .K @$$^W4TMPORD@(I,"MVL")
 .S PRMVL=""
 ; 
TRLV01 S ST=ST_"; background-color:"_CLRBG
 I $$CHNORD,'$$NOMOD^W3HZMST(JB,I) D
 .S ST=ST_";cursor:pointer"
 S ST=ST_""""
 ;
 I $$CHNORD,'$$NOMOD^W3HZMST(JB,I) D
 .S ST=ST_" "_$$^W4TOUCH_"=""ClickChnLine('"_I_"')"" "
 S ST=ST_">"
TRLV0E Q ST
 ;
 ;
IFMRG(I) ;
 Q 1
 ;
AINMAIN(QN) ;
 N STPAR0,CD S STPAR0=$$^W4RSTPAR
 S OPENADD=1
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr><td class=""sheetheader"" style=""border:solid 2px brown"" >"
  S CD=$$CD(STPAR0)
  W "&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(CD))_"&nbsp;"
  W "</td>",!
  W "<td>&nbsp;</td>"
  W "<td class=""hdaiqnb"">"
  W $$^%W1DICT("QUANTITY")_"&nbsp;"
  W " <span id=""qnpar0"" style=""color:green"">"_QN_"</span>"
  W "</td>"
  ;
  W "<td class=""hdaiqnb"">&nbsp;"
  W $$^%W1DICT("PRICE")_"&nbsp;"
  I $G(NMB) S PRMHNMB=NMB
  S MH=$$MH^W4P(CD)
  W " <span id=""mhpar0"" style=""color:green"">"_$J(MH,$$DR,$$DR)_"</span>"
  W "</td>",!
  D
  .W "<td class=""hdaiqnb"">&nbsp;"
  .W $$^%W1DICT("TOTAL")_"&nbsp;"
  .W " <span id=""totpar0"" style=""color:green"">"_$J(QN*MH,$$DR,$$DR)_"</span>"
  .W "</td>",!
AINMAINE ;
 W "</tr>",!
 W "</table>",!
 W "<br>",!
 Q
 ;
TRTH(VSBL) ;
 D TRTH^W4HZORHD(VSBL)
 Q
 ;
SETOP ;--------------------- SET TMPOP --------------------
 D TMPOP
 N N S N="" F  S N=$O(@TMPOP@(N)) Q:N=""  I N,N>$$LASTI0^W3HZMST(JB) K @TMPOP@(N)
 ;
 N I S I="" F  S I=$O(@TMPORD@(I))  Q:I=""  I I?1N.N D
 .I $$LVI(I)=0,I=$$LASTI0^W3HZMST(JB),'$$NOMOD(I) S @TMPOP@(I)=9 Q
 .I $$LVI(I)=0,I<$$LASTI0^W3HZMST(JB),$$OPENADD(I)=9 S @TMPOP@(I)=0 Q
 .I $$LVI(I)=0,'$D(@TMPOP@(I)) S @TMPOP@(I)=0
 Q
 ;
VWCD(CD) ;
 N CD1 S CD1=$G(CD)
 I $L(CD1)>4 D
 .N LCD S LCD=$L(CD1)
 .N FSZ S FSZ=$S(LCD=5:10,LCD=6:8,1:7)
 .S CD1="<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(FSZ)_""">"_CD1_"</span>"
 Q CD1
 ;
 ;
TDCD ;
 W "  <td style=""text-align:center"" "
 N CD S CD=$$CD(A)
 N CD1 S CD1=$$SMB^W4BLNMVC(CD)_CD
 N VL,VL0 S VL0=$$VWCD(CD1),VL=VL0
 ;
 I $$CDSRV(A) G TDCDE
 ;
 I $$CDA(A) S VL="&nbsp;" G TDCDE
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$NOMOD(I),'$$PREZAT(A),'$$MSK^W4P($$CD(A)) D
 .S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold"
 .D
 ..I $$CDMVC3(CD)!$$CDMVC4(CD)!$$USMVC5(CD) S VL=VL_""">"_$$H2U^%L1FRM("n") Q
 ..S VL=VL_";cursor:pointer""> -"
 .S VL=VL_"</span><br>"_VL0
 .Q:$$CDMVC3(CD)!$$CDMVC4(CD)!$$USMVC5(CD)
 .W " "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',-1)"""
 ;
TDCDE ;
 W " >"_VL_"</td>",!
 Q
 ;
 ;
TDINS(PRM)
 N I,A,ZAG
 ;;S ^AA("W4HZORD-TDINS","PRM")=PRM
 S I=$P(PRM,"^")
 S ZAG=$P(PRM,"^",2)
 S %ARG("ZAG")=ZAG
 S A=$P(PRM,"^",3,200)
 N NMB S NMB=$$GET^%W1PRM("NMB")
 ;
 N CD S CD=$$CD(A)
 N CD1 S CD1=$$SMB^W4BLNMVC(CD)_CD
 N VL S VL=$$VWCD(CD1)
 ;
 I ZAG S ST="" G TDINS2
 ;
 S ST="<td style=""text-align:center"" "
 ;
 I $$CDSRV(A) G TDINS1
 ;
 I $$CDA(A) S VL="&nbsp;"
 ;
 I '$$CDA(A) D
 .I $$CDMVC3(CD)!$$CDMVC4(CD)!$$USMVC5(CD) S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold;cursor:pointer"">"_$$H2U^%L1FRM("n")_"</span><br>"_VL Q
 .S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold;cursor:pointer"">-</span><br>"_VL
 .S ST=ST_" "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',-1)"" "
 ;
TDINS1
 S ST=ST_">"_VL_"</td>"
 ;
TDINS2 ; 
 S ST=ST_$$TDNAMEST(A,I)
 ;
 I $$CDSRV(A),$$QNV(A)>0 G TDINSE
 ;
 S ST=ST_$$TDQNST(JB,A,I)
 S ST=ST_$$TDMHST(A,I)
 ;
 N HNST,AHST S HNST=$J($$HNST^W3HZMST(JB,I),$$DR,$$DR),AHST=HNST
 N NOTSFMVC
 S NOTSFMVC=$P($G(@$$^W3TMPORD@(JB,I)),"~",8)
 ;
 I '$$^W4SMALL,'$$^W4POSMSK(NMB),'$$NODISCST D
 .N TDDISCST S TDDISCST=$$TDDISCST(A,I)
 .S ST=ST_TDDISCST
 ;
 D MN^W4MANA
 I '$$CONDORD(NMB) D  ; -------------- DISCOUNT, GLIST , MANA
 .S ST=ST_$$TDGLISTST(0,A,I)
 ;
 I '$$CONDORD(NMB)!$$^W4AIN,$$PRMANA1 S ST=ST_$$TDMANAST(A,I)
 ;;I '$$SUPER^W3PRM,$$PRMANA1 S ST=ST_$$TDMANAST(A,I)
 ;
 I $$CONDORD(NMB),'$$^W4AIN S ST=ST_$$TDSUMST(JB,A,I)
 ;
 I 'ZAG S ST=ST_$$TDIMGST(JB,A,I)
TDINSE ;
 N A S A=I_"<>"_$$^W4GETSUM(JB,1)_"<>"_ST
 ;;S ^AA("W4HZORD-TDINS","A")=A
 Q A
 ;
 ;
TDNAME ;
 W $$TDNAMEST(A,I)
 Q
 ;
TDNAMEST(A,I)
 ;;S ^AA("W4HZORD-TDNAMEST","A")=A
 ;;S ^AA("W4HZORD-TDNAMEST","I")=I
 N ST S ST="  <td "
   I $$CDSRV(A),$$CDSRV(A)'=12,$$QNV(A)>0 S ST=ST_" colspan=""6"" "
   ;
   I '$$NOEDITMOD(I) D
   .I $$DD^W4EZA($$CD(A)),$$MANA^W4PRM=1,'$$^W4AIN Q
   .;;S ST=ST_" style="""_$$CMNTBORDER(I,$$BGCOLOR^W4CSS)_""" " ; -- 23/01/24 - STYLE
   ;
   I '$$ZAG,'$$^W4AIN,$$CUR(I) D
   .D KILL^%W1PRM("CURLN")
   .S ST=ST_" class=""cur"" style=""text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""" "
   ; 
   I $$CDA(A) S ST=ST_" class=""hdgr"" "
   ;
   S ST=ST_"><table width=""100%""><tr>"
   ;
   I '$$ZAG,$$DD^W4EZA($$CD(A)),'$$^W4AIN,$$^W4MULTY,'$$NOMAM^W4PRM D
   .I $$PAPJ^W4PRM,$$NOMOD(I) S ST=ST_"<td>&nbsp;</td>" Q  ; -- 25/11/25
   .S ST=ST_"<td><img src=""w4del20.png"" "
   .S ST=ST_"height="""_$$^W4KF(30)_"px"" " 
   .S ST=ST_"width="""_$$^W4KF(30)_"px"" " 
   .S ST=ST_"alt="""_$$^%W1DICT("DELETE")_""" "
   .I $$NOEDITMOD(I) S ST=ST_" "_$$^W4TOUCH_"=""DelRowOrd('LV0"_I_"','1')""> "
   .I '$$NOEDITMOD(I) S ST=ST_" "_$$^W4TOUCH_"=""DelYesNo('LV0"_I_"')"" >"
   .S ST=ST_"</td>"
   ;
   S ST=ST_"<td "
   I '$$NOEDITMOD(I) D
   .I $$DD^W4EZA($$CD(A)),$$MANA^W4PRM=1,'$$^W4AIN Q
   .S ST=ST_" "_$$^W4TOUCH_"=""Comment('LV0"_I_"')"""
   ;
   N FSZNM S FSZNM=12 I $$HZMSKONL^W4MENU S FSZNM=16
   S ST=ST_" style=""font-size:"_$$^W3FSZ(FSZNM)
   I $$1700^W4WDSCR S ST=ST_";font-weight:bold"
    I $$CDA(A) S ST=ST_";color:brown;font-weight:bold"
   S ST=ST_""">"
   S ST=ST_$$NAM(A)_"</td></tr></table>"
   ;
 S ST=ST_"  </td>"
 ;;S ^AA("W4HZORD-TDNAMEST","ST")=ST
 Q ST
 ;
CUR(I) ;
 N CURLN S CURLN=$$GETP^%W1PRM("CURLN")
 I $L(CURLN),CURLN=("LV0"_I) S WASCUR=1 Q 1
 ;;N LASTI0 S LASTI0=$$LASTI0^W3HZMST(JB) ; *** 23/01/24
 ;;I LASTI0=I,'$G(WASCUR) Q 1  ; -- 23/01/24
 Q 0
 ;
TDQN ;
 W $$TDQNST(JB,A,I)
 Q
 ;
 ;
TDQNST(JB,A,I) ;
 N ST
 S ST="  <td style=""width:15%;text-align:center;vertical-align:middle"" "
  I $$MULTYPOSSIBLE(I) D
  . S ST=ST_" "_$$^W4TOUCH_"=""MultyLine('LV0"_I_"')"" "
 S ST=ST_">"
 ;
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 I $$CDSRV(A)=12 S ST=ST_$$QN^W3HZMST(A) G TDQNE
 I $$CDA(A)!$$CDC(A)!$$CDSRV(A) S ST=ST_"&nbsp;" G TDQNE
 ;
 I $$MVC^W3HZMST(JB,I)["MVC"!$$USMVC5($$CD^W3HZMST(A)) D  G TDQNE
 .N VL S VL=$$QN^W3HZMST(A)
 .S ST=ST_"  <span dir=""LTR"" style=""font-size:"_$$^W3FSZ(14)_";color:"_$S(VL<0:"red",1:"black")_""">"_VL_"</span>"
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$CDA(A) D QNINP
 ;
 I MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$CDA(A) D
 . S ST=ST_" <table dir=""LTR"" width=""100%"" height=""100%"" cellpadding=""0"" cellspacing=""0"" >"
 . N HG S HG=$$KF(30)
 . S ST=ST_"  <tr height="""_HG_"px""><td>" D QNINP S ST=ST_"</td></tr>"
 . S ST=ST_"  <tr><td"
 .   S ST=ST_" style=""background-color:white;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)
 .   S ST=ST_";text-align:right"">"_+$$QNV(A)_"-"_MRG_"="_$G(ITRA0)_"</td></tr>"
 . S ST=ST_" </table>"
 ;
 I $$EDIT!$$NOIMG!$$OTH!$$CHNORD,'$$CDA(A) D
 .N VL S VL=$$ITRAST^W3HZMST(JB,I)
 .S ST=ST_"  <span dir=""LTR"" style=""font-size:"_$$^W3FSZ(14)_";color:"_$S(VL<0:"red",1:"black")_""">"_VL_"</span>"
 ;
TDQNE ;
 S ST=ST_"  </td>"
 Q ST
 ;
 ;
TDMH ;
 W $$TDMHST(A,I)
 Q
 ;
 ;
TDMHST(A,I) ;
 S MRG=$G(MRG)
 N VL S VL=$$MH(A)
 I VL<0 S VL="<span dir=""LTR"" style=""color:red"">"_VL_"</span>"
 N ST S ST="  <td style=""text-align:center"""
 ;
 I $$CDSRV(A)=12 G TDMHE
 I $$CDA(A)!$$CDC(A)!$$CDSRV(A),($$CDSRV(A)'=3) S VL="&nbsp;" G TDMHE
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$NOMOD(I),'$$PREZAT(A),'$$MSK^W4P($$CD(A)),'$$CDMVC3($$CD(A)),'$$CDMVC4($$CD(A)),'$$USMVC5(CD) D
 .S ST=ST_" "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',1)"""
 .S VL="<span style=""color:green;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"">+</span><br>"_VL
 ;
 I '$$AIN,'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,$$NOMOD(I),'$$PREZAT(A),$$CD(A),'$$CDSRV(A) D
 .I $$SUPER^W3PRM!$$TAW^W4PRM Q
 .S ST=ST_" "_$$^W4TOUCH_"=""Associate('"_I_"')"""
 .S VL=VL_"<br><span style=""font-size:"_$$^W3FSZ(7)_";color:green"">"_$$^%W1DICT("TOASCPRESSHERE")_"</span>"
 ;
TDMHE ;
 S ST=ST_">"_VL_"</td>"
 Q ST
 ;
 ;
TDSUM ;
 W $$TDSUMST(JB,A,I)
 Q
TDSUMST(JB,A,I) ;
 N ST
 N VL S VL=$J($$MH(A)*$$QNMH^W3HZMST(A)*(100-$$HNST^W3HZMST(JB,I))*.01,2,2)
 I $$LV(A),'NOTSFMVC S VL=$J(VL*(100-AHST)*.01,2,2)
 I $$CDA(A)!$$CDC(A) S VL="&nbsp;"
 S ST="  <td id=""idsum"_I_""" style=""width:14%;text-align:center"
 I VL<0 S ST=ST_";color:red"
 S ST=ST_""""
 S ST=ST_" dir=""LTR"" "
 S ST=ST_">"_VL_"</td>"
 Q ST
 ;
TDDISC ;---- ITEM DISCOUNT
 W $$TDDISCST(A,I)
 Q
 ;
TDDISCST(A,I) ;
  N ST S ST="<td id='LV0"_I_"disc' class=""disc"""
  ;
  I $$CDA(A)!$$CDSRV(A) S ST=ST_">&nbsp;" G TDDISCE
  N CD S CD=$$CD(A)
  I CD'="",$$^W4PRTBH(CD) S ST=ST_">&nbsp;" G TDDISCE
  ;
  S ST=ST_" dir=""LTR"" "
  I '$$TS(I) S ST=ST_$$^W4TOUCH_"=""ClickDiscSt('LV0"_I_"')"" "
  S ST=ST_" >"
  ;
  N HNST1 S HNST1=""
  I HNST S HNST1=HNST
  ;
  I '$$MHA($G(A)) S HNST1=""
  ;
  S ST=ST_$S($G(HNST1):HNST1,1:"&nbsp;")
  ;
  S CMST=$P($G(@$$^W3TMPORD@(JB,I)),"~",7)
  ;
  I $$LVI(I)=0,$D(@TMPORD@("HNH",I)) D
  .N SB1 S SB1=$P($G(^(I)),"*",4) Q:$TR(SB1," ","")=""
  .I '$$MHA($G(A)) S SB1=""
  .S CMST=$S($L(CMST):CMST_";",1:"")_SB1
  ;
TDDISC1 ;
  I $L(CMST) D
  . I HNST1 S ST=ST_"<br>"
  . S ST=ST_"<span class=""disccmst"">"_$$H2U^%L1FRM(CMST)_"</span>"
  ;
TDDISCE ;
 S ST=ST_"</td>"
 Q ST
 ;
 ;
TDSP W "<td>&nbsp;</td>",! Q
 ;
TDGLIST(UR,I) ;
 I $$LVI(I)>1 D TDSP Q
 I $$^W4AIN D TDSP Q
 I $$LVI(I),'$$EZAT^W3HZMST(JB,I) D TDSP Q
 ;
 W $$TDGLISTST(UR,A,I)
 Q
 ;
TDGLISTST(UR,A,I)
 N ST
 S ST="<td id='LV"_UR_I_"glist' class=""glist"" " ;---- GUESTS LIST
 I '$$NOMOD(I) S ST=ST_" dir=""LTR"" "_$$^W4TOUCH_"=""ClickGList('LV"_UR_I_"')"" "
 S ST=ST_">"
  S GLIST=$$GLIST^W3HZMST(JB,I)
  S ST=ST_$S(GLIST:GLIST,GLIST="*":$$^%W1DICT("ALL"),1:"&nbsp;")
 S ST=ST_"</td>"
 Q ST
 ;
TDMANA ;
 W $$TDMANAST(A,I)
 Q
 ;
TDMANAST(A,I) ;
 N ST
 S ST="<td id='LV0"_I_"mana' class=""mana"" " ;---- MANA
 I $$CDA(A)!$$CDSRV(A) S ST=ST_">&nbsp;" G TDMANAE
 I '$$NOMOD(I),$$PRMANA1 D
 .S ST=ST_" dir=""LTR"" "_$$^W4TOUCH_"=""ClickMana('LV0"_I_"')"" "
 S ST=ST_">"
  S MANA=$$MANA^W3HZMST(JB,I)
  S ST=ST_$S(MANA:$G(MN(MANA)),1:"&nbsp;")
TDMANAE ;
 S ST=ST_"</td>"
 Q ST
 ;
 ;
TDIMG ;
 W $$TDIMGST(JB,A,I)
 Q
 ;
TDIMGST(JB,A,I) ;
 N ST S ST=""
 I $$CDI(I),$$^W4CDSRV($$CDI(I)) S ST="<td>&nbsp;</td>" Q ST
 I $$MVC^W3HZMST(JB,I)["MVC" S ST="<td>&nbsp;</td>" Q ST
 I $$CHNORD S ST="<td>&nbsp;</td>" Q ST
 ;
 I $$OTH,'$$TS(I) D  Q ST
  .S ST="   <td align=""center"">"
  .I +$$HNST^W3HZMST(JB,I)=100!(+$$ITRAST^W3HZMST(JB,I)=0) S ST=ST_"&nbsp;</td>" Q
  .
  .S ST=ST_"    <input type=""checkbox"" name=""chk"" id=""chk"_I_""" "
  .        I $$MOTH(I) D
  ..         S ST=ST_" checked=""checked"" "
  .S ST=ST_"     onClick=""ClickOTH('chk"_I_"','lb"_I_"','lbnm"_I_"','chk',false)"" >"
  .
  .S ST=ST_"    <label for=""chk"_I_""" id=""lb"_I_""" name=""lb"" "
  .;;S ST=ST_"     class=""bgbtn"" "
  .S ST=ST_"     style=""cursor:pointer"">"
  . D
  . .;;I $$MOTH(I) S ST=ST_$$SHOWV^W3CSM Q
  . .;;S ST=ST_$$SHOWO^W3CSM
  . . N IMGV S IMGV="w4bonrnd.png"
  . . I $$MOTH(I) S IMGV="w4bonrndfull.png"
  . . S ST=ST_"<img src="""_IMGV_""" >"
  .S ST=ST_"    </label>"
  .S ST=ST_"</td>"
 ;
 I $$EDIT,'$$CONDORD(NMB) D  Q ST
 .S ST="  <td align=""center"" style=""width:15%"" >"
 .S ST=ST_"&nbsp;"
 .S ST=ST_"  </td>"
 ;
 I '$D(GORD) D GORD
 N A S A=$G(@GORD@(I))
 ;
 I '$$EDIT,$$ITRAST^W3HZMST(JB,I) D  Q ST
 .S ST="  <td id=""IMG"_I_""" align=""center"" >"
 .D
 ..I $$CDA(A)!$$CDH(A) S ST=ST_"&nbsp;" Q
 ..I $$DELETED(I) S ST=ST_"&nbsp;" Q
 ..I $$TS(I)>0 D  Q
 ...N SUBBILL S SUBBILL=""
 ...N J S J="" F  S J=$O(@GORD@("TS",I,J)) Q:J=""  S SUBBILL=SUBBILL_J_","
 ...S ST=ST_"<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(7)_""">"
 ... S ST=ST_$$^%W1DICT("SUBBILL")_" "_$E(SUBBILL,1,$L(SUBBILL)-1)
 ...S ST=ST_"</span>"
 ..I $$ITRAST^W3HZMST(JB,I,"",1)'>0 S ST=ST_"&nbsp;" Q
 ..I $$QNV(A)<0 S ST=ST_"&nbsp;" Q
 ..D IMGED(I) Q
 .S ST=ST_"  </td>"
 ;
 S ST=ST_"<td>&nbsp;</td>"
 Q ST
 ;
 ;
TRCMNT ;
 W "<tr style=""color:red"
 I $L($G(BGC)) W ";background-color:"_BGC
 W """ id=""CM1"_(I1)_""" height="""_$$KF(40)_"px"">"
  W "<td>&nbsp;</td>"
  W "<td style=""font-weight:bold"" >"
   N NM S NM=$$NAMI(I1)
   W $$^W4CLRCMN(NM,1)
  W "</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  ;
  I '$$^W4SMALL D
  .W "<td>&nbsp;</td>"
  ;
  I $$CONDORD(NMB),'$$^W4AIN D
  .W "<td>&nbsp;</td>"
  ;
  I '$$CONDORD(NMB) D
  .W "<td>&nbsp;</td>"
  I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D
  .W "<td>&nbsp;</td>"
  ;
  W "<td>&nbsp;</td>"
 W "</tr>",!
 S I1=I1+1
 Q
 ;
 ;
BGC1(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 I $D(PRMVL) W ";background-color:"_$$BGCMVL G BGC1E
 N CD1 S CD1=$$CD(A)
 I $$EZAT^W3HZMST(JB,I),'$$^W4AIN W ";background-color:"_$$BGCOLOR(I) Q
 I $$LV(A)>0,$$QNIT1^W3HZMST(JB,I)=0,'$$CDA(A),'$$CDC(A) D  Q
 .W ";background-color:pink"
 I $L($G(BGC)) W ";background-color:"_BGC
BGC1E Q
 ;
 ;
TRADD ;----------- TOSAFOT BE ZURA MERUKEZET
 N SUMADD S SUMADD=$J($$SUMADD(I1),$$DR,$$DR)
 W "<tr style=""color:green"
 I $L($G(BGC)) W ";background-color:"_BGC
 ;
 W """ id=""AD1"_I1_""" height="""_$$KF(40)_"px"">"
  I '$$ZAG(NMB) W "<td>&nbsp;</td>"
  W "<td>"_$$^%W1DICT("ADDITIONS")_"</td>"
  W "<td>&nbsp;</td>"
  I '$$^W4AIN D
  .W "<td style=""text-align:center"">"_SUMADD_"</td>"
  I '$$^W4SMALL,'$$NODISCST D
  .N CMST S CMST=""
  .D DISCCMST(SUMADD)
  ;
  I $$CONDORD(NMB),'$$^W4AIN D
  .W "<td>"_SUMADD_"</td>"
  ;
  I '$$CONDORD(NMB) D
  .W "<td>&nbsp;</td>",! ; -- mishbezet soadim
  I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D
  .W "<td>&nbsp;</td>",! ; -- mishbezet MANA
  ;
  I '$$ZAG W "<td align=""center"">"_$$IMGOPENADD(I)_"</td>"
 W "</tr>",!
 Q
 ;
 ;
TDTCD ;
 W "  <td>"_$S($$CDA(A)!$$CDH(A)!$$CDC(A):"&nbsp;",1:$$VWCD(CD))_"</td>",!
 Q
 ;
TDTNAME ;
 W "<td"_$S($$CDA(A):" class='hdgr'",$$CDC(A):" style=""color:red;font-weight:bold""",I=CUR:" class='cur'",1:"")
      I $$CDA(A) W " id='"_$G(IDMAIN)_$$CD(A)_"'"
      I '$$NOEDITMOD(I) D
       .W " "_$$^W4TOUCH_"=""Comment('LV1"_I_"')"" "
       .W " style="""_$$CMNTBORDER(I,"green")
       .I $$1700^W4WDSCR W ";font-weight:bold"
       .W """ "
 W " >"
         W $S(I=CUR:"<span>*</span>",1:"&nbsp;")
         W $$NAM(A)
     D
     .N QN S QN=$$QN2(A)
     .W "<br>"_$$^W4SHOWPZ(QN)
 W "</td>",!
 Q
 ;
MULTY(PRT)
 I $$^W4MULTY Q 1
 Q 0
 ;
 ;
TDTQN ;
 I $$CDC(A)!$$CDA(A) W "<td>&nbsp;</td>" Q
 ;
 N QN2 S QN2=$$QN2(A)
 I QN2[":" S QN2=$P(QN2,":")
 I QN2["|" S QN2=$P(QN2,"|")
 ;
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 N QNV S QNV=$$QNV(A)
 ;
 I QN2,$$LV(A)=1 D
 .S QN21=QN2
 .I QNV["*" D  S QN21=QN2 Q
 ..I QNV["*" D  Q
 ...S QN2=+$G(ITRA0)_"*"_QN2
 .I $$^W4MULTY,$G(ITRA0) D
 ..S QN2=+$G(ITRA0)_"*"_QN2
 ..S QN21=$$^W4QNR(QN2)
 .Q
 ;
 I $$LV(A)=2 D
 .N QNIT1
 .S QNIT1=$$QNIT1^W3HZMST(JB,I)
 .N QNST S QNST=$$QNST^W3HZMST(JB,I)
 .I $$MULTY D  Q
 ..I $L(QNST,"*")>2,$G(QN21) S QN2=QN21_"*"_$P(QNST,"*",3) Q
 ..I $L(QNST,"*")=2,$G(QN21) S QN2=QN21_"*"_$P(QNST,"*",2) Q
 ..S QN2=QN21_"*"_QNST Q
 .
 .S QN2=QNIT1_"*"_QN2 Q
 ;
 N QN2R S QN2R=$$^W4QNR(QN2)
 N QNVR S QNVR=$$^W4QNR($$QNV(A))
 W "  <td dir=""LTR"" align=""center"""
 W ">"_$S(QN2R&'MRG:$P(QN2,"|"),QN2R&MRG:QNVR-MRG,1:"&nbsp;")
 ;
 I MRG D
  .W "<span style=""background-color:white;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)
  .W ";text-align:right"">"_"="_QNVR_"-"_MRG_"</span>"
 W "</td>",!
 Q
 ;
 ;
TDTMH ;
 S MHT=$S($$CDH(A)!$$CDC(A)!$$CDA(A):"&nbsp;",1:$$MH(A))
 I MHT<0 S MHT="<span dir=""LTR"" style=""color:red"">"_MHT_"</span>"
 ;
 W "  <td align=""center"">"_MHT_"</td>",!
 Q
 ;
TDTMANA ;
 W "<td id='LV1"_I_"mana' class=""mana"" " ;---- MANA
  W " dir=""LTR"" "_$$^W4TOUCH_"=""ClickMana('LV1"_I_"')"" "
  I '$$NOMOD(I) W " dir=""LTR"" "
 W ">"
  S MANA=$$MANA^W3HZMST(JB,I)
  W $S(MANA:$G(MN(MANA)),1:"&nbsp;")
 W "</td>",!
 Q
 ;
TDTIMG ;-- ICON + OR -
 W "  <td align=""center"""
 W ">"
  I '$$EDIT,'$$^W4AIN,'$$OTH,'$$CHNORD D
 . I $G(FIRSTADD)=1,$$CDCI(I)!$$CDHI(I) W "&nbsp;" Q
 . I $G(FIRSTADD)=1,$$CDCI(I-1)!$$CDHI(I-1) W $$IMGOPENADD(I-2) S FIRSTADD=0 Q
 . I $G(FIRSTADD)=1,'$$CDCI(I),'$$CDHI(I),$$LVI(I-1)=0 W $$IMGOPENADD(I-1) S FIRSTADD=0 Q
 W "&nbsp;"
 W "  </td>",!
 Q
 ;
 ;
SCROLLDOWN ;
 W "<script>",!
 W " ScrollDown()",!
 W "</script>",!
 Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
TMPORD1 S TMPORD1="^[$$^W3MAIN]TMPORD1(JB)"
 Q
 ;
TMPOP S TMPOP=$$^W4MAIN("TMPOP")
 Q
 ;
CMNTBORDER(I,COLOR)
 I '$$ZAG,'$$NOEDITMOD(I),'$$EDIT Q "border:"_$G(COLOR,$$BGCOLOR^W4CSS)_" solid 2px;cursor:pointer"
 Q ""
 ;
BGCOLOR(I) ;
 N BGC,A D TMPORD,TMPOP S A=$G(@TMPORD@(I))
 S BGC="#e5e5e5"
 ;;S BGC="rgb(191,191,191,0.2)"
 I $$OPENADD(I)=2 S @TMPOP@(I)=1 Q "lightyellow"
 I $G(FLED) Q "lightyellow"
 I $$NOMOD(I) S BGC="white"
 I $$DELETED(I) Q "pink"
 I $$QNV(A)>0,$$ITRAST^W3HZMST(JB,I)<$$QNV(A) Q "#FFE8E8" ; -- PINK
 N CDPAR S CDPAR=$$CD($$GETP^%W1PRM("STPAR"))
 Q BGC
 ;
DELETED(I) ;
 N A D TMPORD S A=$G(@TMPORD@(I))
 I $$QN1(A)<0 Q 1
 I $$QN1(A)>0,$$ITRAST^W3HZMST(JB,I)'>0,'$$CDC(A),'$$CDA(A) Q 1
 Q 0
 ;
TSF(I) ;
 N CD S CD=$$CDI(I)
 I $$TSF^W4HZPRTN(CD) Q 1
 I $$LVI(I)=0&($$LVI(I+1)=1&'$$CDCI(I+1)) Q 1
 I $$LVI(I)=0&($$LVI(I+2)=1&$$CDCI(I+1)) Q 1
 I $$LVI(I)=1&($$LVI(I+1)>1&'$$CDCI(I+1)) Q 1
 I $$LVI(I)=1&($$LVI(I+2)>1&$$CDCI(I+1)) Q 1
 Q 0
 ;
NOIMG(STAM) ;
 I $$ZAG Q 1
 I $G(%ARG("NOIMG")) Q 1
 Q 0
 ;
OTH(STAM) ;
 I $$GETP^%W1PRM("MOTH") Q 1
 Q 0
 ;
MOTH(N) ;
 I $D(@$$^W4MAIN("TMPOTH")@(N)) Q 1
 Q 0
 ;
SETOTH(I) ;
 I '$D(@$$^W4MAIN("TMPOTH")@(I)) S ^(I)="" Q 1
 K @$$^W4MAIN("TMPOTH")@(I)
 Q 0
 ;
CHNORD(STAM) ;
 Q $$CHNORDOPT^W4HZORHD
 ;
EDIT(STAM) ;
 I $$GETP^%W1PRM("SHID")["LV" Q 1
 Q 0
 ;
EDITLINE(I) ;
 I $$GETP^%W1PRM("SHID")=("LV0"_I) Q 1
 Q 0
 ;
IMGED(I) ;
 S ST=$G(ST)
 I $$NOIMG S ST=ST_"&nbsp;" Q
 I $$MRGMULTY(I) S ST=ST_"&nbsp;" Q
 ;;I $$PAPJ^W4PRM,$$NOMOD(I) S ST=ST_"&nbsp;" Q; -- 25/11/25
 D TMPORD
 I $$BSLPAR($$CDI(I)) S ST=ST_"&nbsp;" Q
 ;
 N WD,HG S WD=$$KF($$SZIMG),HG=$$KF($$SZIMG)
 ;
 I $$SMALL^W3FSZ S WD=90,HG=90
 ;
 N IMG S IMG="w4del20.png"
 I $$SMALL^W3FSZ S IMG="w4del21.png"
 ;
 I $$USEDIT(I) D
 .S IMG="w4edit.jpg"
 .I $$SMALL^W3FSZ S IMG="w4edit1.jpg"
 ;
 D IMGED1(I,IMG,WD,HG)
 Q
 ;
IMGED1(I,IMG,WD,HG) ;
 I $$PAPJ^W4PRM,$$NOMOD(I),IMG["w4del" S ST=ST_"&nbsp;" Q  ; -- 25/11/25
 S ST=$G(ST)_"    <img src="""_IMG_"""  style=""width:"_WD_"px;height:"_HG_"px"" "
 S ST=ST_"alt="""_$$^%W1DICT("EDIT")_"""  "_$$^W4TOUCH_"=""EditRowOrd('LV0"_I_"')"" >"
 Q
 ;
SZIMG(STAM)
 I $$^W4SMALL Q 25
 I $$1024^W4WDSCR Q 30
 Q 35
 ;
USEDIT(I) ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSD(NMB),$$TSF(I),$$NOTSFMSD^W4PRM Q 0
 I $$^W4MSD(NMB),$$EZATI(I),$$NOTSFMSD^W4PRM=1 Q 0
 I $$MRGMULTY(I) Q 0
 I '$$^W4SMALL,'$$NOMOD(I)!($$EZATI(I)&'$$^W4AIN),$$TSF(I)!$$EZATI(I) Q 1
 I $$^W4SMALL,$$EZATI(I),'$$^W4AIN Q 1
 Q 0
 ;
MRGMULTY(I) ;
 I $$NOMOD(I),$$EZATI(I),'$$^W4AIN,$$^W4MULTY,$$MRG^W3HZMST(JB,I) Q 1
 Q 0
 ;
CDMVC3(CD) ;
 N OK,N,N1,STM,SET,DZ,DT1,DT2 S OK=0
 S DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4GL("W4MVC3")@(N)) Q:N=""  D  Q:OK
 .S STM=$G(@$$^W4GL("W4MVC3")@(N,1))
 .S DT1=$$^%L1DC($P(STM,"\",5),3)
 .S DT2=$$^%L1DC($P(STM,"\",6),3)
 .I DZ<DT1!(DZ>DT2) Q
 .S SET=$P(STM,"\") Q:SET=""
 .I $D(@$$^W4GL("P1SETM")@(SET,CD)) S OK=1
 Q OK
 ;
CDMVC4(CD)
 I $G(CD)="" Q 0
 N GL S GL=$$^W4GL("W4MVC4")
 I '$D(@GL@(CD)),'$D(@GL@(+CD)) Q 0
 N A S A=$G(@GL@(CD))
 N MEDAT,ADDAT
 ;
 N MAX S MAX=$P(A,"\") I 'MAX Q 0
 S MEDAT=$P(A,"\",2),MEDT=$$^%L1DC(MEDAT,3)
 S ADDAT=$P(A,"\",3),ADDT=$$^%L1DC(ADDAT,3)
 N DZ S DZ=$$^W4DZ
 I DZ<MEDT!(DZ>ADDT) Q 0
 Q MAX
 ;
 ;
CDMVC5(CD)
 I $G(CD)="" Q 0
 N GL S GL=$$^W4GL("W4MVC5")
 N OK S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .N A S A=$G(^(N))
 .N NSET S NSET=$P(A,"\",2) Q:'NSET
 .I '$D(@$$^W4GL("P1SETM")@(NSET,CD)) Q
 .N MH S MH=$P(A,"\",3)
 .N MEDAT,ADDAT
 .N MAX S MAX=$P(A,"\",4) I 'MAX Q
 .S MEDAT=$P(A,"\",5),MEDT=$$^%L1DC(MEDAT,3)
 .S ADDAT=$P(A,"\",6),ADDT=$$^%L1DC(ADDAT,3)
 .N DZ S DZ=$$^W4DZ
 .I DZ<MEDT!(DZ>ADDT) Q
 .S OK=MAX_"\"_NSET_"\"_MH
 Q OK
 ;
 ;
USMVC5(CD) ;
 I $$CDMVC5(CD)&($$SQN5("0~"_CD)["MH") Q 1
 Q 0
 ;
EZATI(I) ;
 D:'$D(TMPORD) TMPORD
 N A S A=$G(@TMPORD@(I))
 I $$^W4AIN Q 0
 Q $$EZAT(A)
 ;
EZAT(A) ;
 I $$LV(A) Q 0
 S CD=$$CD(A)
 I $$^W4EZAT(CD) Q 1
 Q 0
 ;
HASADD(I) ;
 D:'$D(TMPORD) TMPORD
 N A S A=$G(@TMPORD@(I+1))
 I A="" Q 0
 I $$LV(A)=0 Q 0
 I $$CDC(A)!$$CDH(A),'$$LVI(I+2) Q 0
 Q 1
 ;
OPENADD(I) ;
 I $$OPENADD^W4PRM Q 1
 I $$^W4AIN Q 1
 I '$$NOMOD^W3HZMST(JB,I) Q 1
 I $G(CURLN)'="",+$E(CURLN,3,7)=I Q 1
 Q +$G(@$$^W4MAIN("TMPOP")@(I))
 ;
SUMADD(I) ;
 N QNIT0,COMPDEL
 S COMPRDEL=1
 Q $$MHADD^W4ORDVW(I,1)
 ;
IMGOPENADD(I) ;
 I $$EDIT Q "&nbsp;"
 I I=$$LASTI0^W3HZMST(JB),'$$NOMOD(I) Q "&nbsp;"
 N HG,WD
 S HG=$$KF($$SZIMG),WD=$$KF($$SZIMG)
 I '$$OPENADD(I) Q "<img src=""w4openadd.jpg"" height="""_HG_"px"" width="""_WD_"px"" onClick=""OpenAdd('LV0"_I_"')"" />"
 Q "<img src=""w4closeadd.jpg"" height="""_HG_"px"" width="""_WD_"px"" onClick=""CloseAdd('LV0"_I_"')"" />"
 ;
LV(A) ;
 N LV
 S LV=$P(A,"~",1)
 Q LV
 ;
LVI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$LV(A)
 ;
CODE(STID) ;
 N CD S CD=$P($$TXT(STID),"~",2)
 Q CD
 ;
TXT(STID)
 N SH S SH=$$FINDSH(STID)
 I SH="" Q "NOK"
 D TMPORD
 Q $G(@TMPORD@(SH))
 ;
TXTNEXT(STID)
 N SH S SH=$$FINDSH(STID)
 I SH="" Q "NOK"
 D TMPORD
 Q $G(@TMPORD@(SH+1))
 ;
CD(A) ;
 N CD
 S CD=$P(A,"~",2)
 I CD="" Q "&nbsp;"
 Q CD
 ;
CDI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CD(A)
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 Q 0
 ;
CDSRV(A) ;
 N CD S CD=$$CD(A) I 'CD Q 0
 Q $$^W4CDSRV(CD)
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CDHI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CDH(A)
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDCI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CDC(A)
 ;
NAM(A) ;
 N NM S NM=$$CNWEB^%L1FRM($P(A,"~",3))
 I NM["{{" S NM=$$^W4CLRCMN(NM)
 S NM=$$IT^W4NM($$CD(A),NM,1)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAMI(I)
 N A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$NAM(A)
 ;
MH(A) ;
 N MH
 S MH=$$MHA(A)
 I MH="" Q "&nbsp;"
 Q $J(MH,$$DR,$$DR)
 ;
 ;
MHA(A) ;
 N CD S CD=$P(A,"~",2)
 N MH S MH=$P(A,"~",4)
 I CD,$G(I),$D(@$$^W4GL("P1BLRD")@(CD)) D
 .N B S B=$G(MHVAR(I)) Q:B=""
 .I $P(B,"~",2)'=CD Q
 .S MH=$P(B,"~",4)
 .S $P(@$$^W4TMPORD@(I),"~",4)=MH
 Q MH
 ;
QN(A) ;
 I $$CDC(A) Q "&nbsp;"
 I $$CDH(A) Q "&nbsp;"
 N QN
 S QN=$$QNV(A)
 I QN["*",$P(QN,"*")=1 S QN=$P(QN,"*",2)
 I 'QN Q "&nbsp;"
 Q QN
 ;
QN1(QN) ;
 I QN["*" Q QN*$P(QN,"*",2)
 Q +QN
 ;
QN2(A) N QNV S QNV=$$QNV(A)
 I QNV["*" Q $P(QNV,"*",$L(QNV,"*"))
 Q QNV
 ;
TS(I) ;
 N OK S OK=0
 I '$D(GORD) D GORD
 N N S N="" F  S N=$O(@GORD@("TS",I,N)) Q:N=""  I $G(^(N)) S OK=1 Q
 Q OK
 ;
QNV(A) Q $P(A,"~",5)
 ;
QNDIF(A) Q $P(A,"~",11)
 ;
 ;
QNINP ;
 N VL S VL=$$ITRAST^W3HZMST(JB,I)
 ;;W "I="_I_"  VL="_VL,! ; ***
 I VL?1"."1N.N S VL="0"_VL
 N CDST S CDST=$$CDST^W3HZMST(JB,I)
 ;
 I $$CDMVC4(CDST) D  Q
 .S ST=ST_"<span style=""text-align:center;font-weight:bold"" >"
 . S ST=ST_VL
 .S ST=ST_"</span>"
 ;
 I $$MULTYPOSSIBLE(I) D  Q
 .S ST=ST_"<span style=""text-align:center;font-weight:bold"" "_$$^W4TOUCH_"=""MultyLine('LV0"_I_"')"" >"
 . S ST=ST_VL
 .S ST=ST_"</span><br>"
 .S ST=ST_"<span style=""font-size:"_$$^W3FSZ(7)_";color:darkblue;font-weight:bold;text-decorated:underline"">"
 . S ST=ST_$$^%W1DICT("FORMULTYPRESSHERE")
 .S ST=ST_"</span>"
 ;
 I $$MSK(I,VL)!$$VVMSK^W4PRM S VL=$J(VL,3,3)
 ;
 S ST=ST_"<input type=""text"" dir=""LTR"" "
 I '$$MSK(I,VL) D
 .S ST=ST_"size=""3"" maxlength=""3"""
 I $$MSK(I,VL) D
 .S ST=ST_"size=""6"" maxlength=""6"""
 ;
 S ST=ST_" name="""_$$QNTD(I)_""""
 N HG,WD
 S HG=$$KF(35),WD=$$KF(35)
 I $$^W4SMALL S (HG,WD)=40
 ;
 S ST=ST_" style=""font-size:"_$$^W3FSZ($S($$MSK(I,VL):10,1:14))_";text-align:center;"
   S ST=ST_"height:"_HG_"px;width:"_WD_"px"
   I $$1024^W4WDSCR S ST=ST_";position:relative;top:2px;"
   I $$PREZAT(A)!$$NOMOD(I),VL>0 S ST=ST_";color:grey"
   I VL<0 S ST=ST_";color:red"
   I '$$NOMOD(I),'$$PREZAT(A),'$$^W4AIN S ST=ST_";cursor:pointer"
 S ST=ST_""""
 ;
 S ST=ST_" id="""_$$QNTDI(I)_""""
 S ST=ST_" onFocus=""this.style.background-color:lightyellow;"
 S ST=ST_""" "
 I $$^W4SMALL!$$^W4TABLET!$$PREZAT(A)!$$NOMOD(I) D
 .S ST=ST_" readonly=""readonly"" "
 S ST=ST_" value="""_VL_""" "
 ;
 I '$$PREZAT(A),'$$^W4SMALL D
 .I VL>0,'$$NOMOD(I),'$$^W4AIN D
 ..S ST=ST_" "_$$^W4TOUCH_"=""Click('"_$$QNTDI(I)_"')"""
 ;
 S ST=ST_" />&nbsp;"
 Q
 ;
 ;
MSK(I,VL) ;
 I $$MSKI(I) Q 1
 I VL["." Q 1
 Q 0
 ;
MSKI(I) ;
 I $$MSK^W4P($$CDI(I)) Q 1
 Q 0
 ;
QNTD(SH) ;
 Q "QN"_SH
 ;
QNTDI(SH) ;
 Q "QNID"_SH
 ;
MULTYPOSSIBLE(I) ;
 I $$SUPER^W3PRM Q 0
 N A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 I $$CDA(A)!$$CDSRV(A) Q 0
 I $$ITRAST^W3HZMST(JB,I)'>0 Q 0
 I $$EDIT Q 0
 I $$NOIMG Q 0
 I $$CHNORD Q 0
 I $$OTH Q 0
 I $G(@$$^W4PRM@("NOMULTYPOSSIBLE")) Q 0
 I $$NOMOD(I),$$LVI(I)=0,'$$^W4AIN,'$$MSKI(I),'$$^W4SMALL Q 1
 Q 0
 ;
NMTDD(SH) ;
 Q "DL"_SH
 ;
NMTDDI(SH) ;
 Q "DLID"_SH
 ;
 ;
HASCMNT(PRM) ;
 N GORD D GORD
 N OKC S OKC=0
 S SH=$$FINDSH(PRM) I SH="" Q "0;ROWNUMBERISWRONG"
 I $$LVI(SH)'=0 Q "0;ISNOTMAINITEM"
 N N S N=SH F  S N=$O(@GORD@(N)) Q:N=""  I N Q:$$LVI(N)=0  D  Q:OKC
 .I $$CDI(N)["-C" S OKC=1
 Q OKC
 ;
 ;
MULTYROW(PRM) ;
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-MULTYROW","PRM=PRM")
 I '$D(GORD) D GORD
 N CMN S CMN=$P(PRM,";",2)
 N PRDEL S PRDEL=$P(PRM,";",3)
 S PRM=$P(PRM,";")
 S SH=$$FINDSH(PRM) I SH="" Q "0;ROWNUMBERISWRONG"
 ;
 N LAST S LAST=$O(@GORD@(9999),-1)
 I SH=LAST S PRL=1 ; LAST LINE
 ;
 I $$LV($G(@GORD@(SH)))'=0 Q "0;ISNOTMAINITEM"
 ;
 N MULTYROW S MULTYROW=1
 I CMN S MULTYROW=2
 N I1,I2 S I2=0
 D GREST K @GREST
 ;
 N LV,QNO,A,ITRA,ITRA1,QN,QNO,QN1,QN2
 S QN1=""
 N CD0 S CD0=$$CDI(SH)
 N ITRA0 S ITRA0=$$ITRAST^W3HZMST(JB,SH) ;;I ITRA0'>0 Q
 N QN0 S QN0=$$QNR^W3HZMST(JB,SH) I QN0'>0 Q
 ;
 F I1=SH:1:LAST Q:'$D(@GORD@(I1))  S A=$G(^(I1)) S LV=$$LV(A) Q:LV=0&(I1>SH)  D
 .I $$CDCI(I1),'CMN Q
 .
 .S ITRA=$$ITRAST^W3HZMST(JB,I1)
 .I ITRA<0 Q
 .I 'ITRA,'$$CDC(A),'$$CDA(A),$G(PRDEL) Q
 .N QNST S QNST=$$QNST^W3HZMST(JB,I1)
 .S I2=I2+1
 .M @GREST@(I2)=@GORD@(I1)
 .
 .N QNREST S QNREST=1
 .I PRDEL S QNREST=-ITRA0
 .
 .I LV=0 S $P(@GREST@(I2),"~",5)=QNREST
 .
 .I LV=1 D
 ..S QN1=$$^W4QNR(ITRA)
 ..
 ..I '$$^W4EZAT(CD0)!$$^W4MULTY!($$DLVMOUSE^W4PRM&$$^W4DLVCSR) D  Q
 ...I ITRA0 D
 ....S QN=QN1\ITRA0
 ....S QN1=ITRA
 ....S $P(@GREST@(I2),"~",5)=$S('PRDEL:"1*"_QN,QNST["*":QNREST_"*"_$P(QNST,"*",2),1:QNREST_"*"_QN)
 ..
 ..S $P(@GREST@(I2),"~",5)=QNREST
 .
 .
 .I LV=2 D
 ..I $G(QN1) S QN=ITRA\QN1
 ..I 'PRDEL S $P(@GREST@(I2),"~",5)="1*"_QN
 ..I PRDEL S $P(@GREST@(I2),"~",5)=QNREST_"*"_$P(QNST,"*",$L(QNST,"*"))
 .
 .D CLRMOD(GREST,I2) ; --- UBRAT NOMOD V NOV STR ( BIT)
 .D CLRQNDIF(GREST,I2) ; --- ZA4ISTIT QNDIF V NOV STR
 ;
 D RESTNOMOD(SH,1,LAST)
 ;
 I PRDEL D
 .N N1 S N1=LAST F  S N1=$O(@GORD@(N1)) Q:N1=""  I N1 D
 ..;;S $P(^(N1),"~",5)=-$P(^(N1),"~",5)
 ..I $P(^(N1),"~",1)=0 D
 ...S @GORD@("FROM",N1)=SH
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 N A S A=$G(@TMPORD@(LAST))
 I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
MULTYROWE ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 D KILL3^W4MENU
 Q 1
 ;
 ;
DELROW(PRM) ; DELETE ITEM ROW WITH SETS (PRM=ID LV0) OR SET (PRM=ID LV1)
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-DELROW","PRM=PRM")
 ;
 I PRM="BSL" D  G DELROWE
 .N HZM S HZM=$$GETP^%W1PRM("HZM")
 .I $$^W4ISORD(HZM),$D(@$$^W4ORD@(HZM,"BSL","NKDPAY"))!$D(@$$^W4ORD@(HZM,"BSL","NKD"))!$$^WBISBON(HZM,$$^W4TMPORD) D
 ..D CANINV^WBFUNC(HZM)
 .D ^WBCLRINV($$GETP^%W1PRM("HZM"),$$^W4TMPORD,1)
 .K @$$^W4TMPORD@("BSL")
 ;
 D PUT^%W1PRM("DELROW",1)
 ;
 N GORD D GORD
 N QNDEL
 ;
 I PRM[";" S QNDEL=$P(PRM,";",2),PRM=$P(PRM,";")
 ;
 S SH=$$FINDSH(PRM) I SH="" D PUT^%W1PRM("DELROW",-.5) Q
 ;
 N LAST S LAST=$O(@GORD@(9999),-1)
 I SH=LAST S PRL=1 ; LAST LINE
 ;
 I PRM["LV0",$$LV($G(@GORD@(SH)))'=0 D PUT^%W1PRM("DELROW",-1) G DELROWE
 I PRM["LV1",$$LV($G(@GORD@(SH)))'=1 D PUT^%W1PRM("DELROW",-2) G DELROWE
 ;
 I '$G(QNDEL) S QNDEL=$$ITRAST^W3HZMST(JB,SH)
 ;
 N DELERR S DELERR=0
 ;
 N NPMVC S NPMVC=""
 I PRM["LV0" D  I DELERR,$$NOMOD(SH) D PUT^%W1PRM("DELROW",DELERR) G DELROWE
 .S NPMVC=$$ITWASMVC^W4SALE(SH) ;;I NPMVC S DELERR=-6 ; -- 01/07/23 - > COMMENT
 ;
 I PRM["LV0" D DEL^W4SET11(SH)
 ;
 ;
 I $$NOMOD(SH),PRM["LV0" D  G DELROWE  ; -- DELETE ITEM WAS PRINTED
 .D DELNOMOD(SH,QNDEL,$$GET^%W1PRM("MLZR"),$$^W4WHODEL)
 .
 .Q:$$GET^%W1PRM("DELROW")<1
 .
 .I $$SHIHZUR D
 ..D RESTNOMOD(SH,QNDEL,LAST) ;- BATEL & SHAHZER
 ;
 ; ----------- NO NOMOD
 I PRM["LV0" D  D DELSEQ(GORD,SH) ; -- DEL MAIN
 .I NPMVC D DELMVC(GORD,NPMVC)
 .D SETSH^W4ITEND(SH,"-")
 ;
 F  Q:$G(@GORD@(SH))=""  Q:$P($G(@GORD@(SH)),"~")=0  D  ; -- DEL ADDONS
 .D SETSH^W4ITEND(SH,"-")
 .D DELSEQ(GORD,SH)
 ;
DELROWE ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 D SAVE1^W4TMPORD
 Q
 ;
 ;
DELSEQ(GORD,SH)
 N MYDVN S MYDVN=$$^W4MYDVN
 N A S A=$G(@GORD@(SH))
 S $P(A,"~",5)=-$P(A,"~",5)
 N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
 D ^W4DELST(GORD,SH)
 Q
 ;
SETQN(GLREF,IND,VL)
 S $P(@GLREF@(IND),"~",5)=VL
 Q
 ;
 ;
SQN4(ST) ;
 N A,CDST,LVST,SQ S CD=$$CD(ST) I 'CD Q 0
 N MAX S MAX=$$CDMVC4(CD) Q:'MAX 0
 ;
 N LVST,CDST,QNST
 S SQ=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N)),LVST=$$LV(A),CDST=$$CD(A)
 .I CDST'=CD,CDST'=+CD Q
 .I LVST=0 S QNST=$$QN(A),SQ=SQ+QNST
 ;
 I SQ>MAX Q "MAX:"_MAX_":"_CD_":"_$$SHEM^W4P(CD)_":"_SQ
 Q SQ
 ;
 ;
SQN5(ST) ;
 N A,CDST,LVST,SQ S CD=$$CD(ST) I 'CD Q 0
 N A S A=$$CDMVC5(CD) Q:'A 0
 N MAX,NSET,MH
 S MAX=$P(A,"\"),NSET=$P(A,"\",2),MH=$P(A,"\",3)
 I 'MAX!'NSET Q 0
 ;
 N LVST,CDST,QNST
 S SQ=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D
 .N A S A=$G(^(N)),LVST=$$LV(A),CDST=$$CD(A) Q:'CDST
 .I '$D(@$$^W4GL("P1SETM")@(NSET,CDST)) Q
 .I LVST=0 S QNST=$$QN(A),SQ=SQ+QNST
 ;
 I SQ'>MAX D  Q "MH:"_$J(MH,2,2)
 .N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1) Q:'LAST
 .S $P(@$$^W4TMPORD@(LAST),"~",4)=$J(MH,2,2)
 ;
 Q SQ
 ;
 ;
DELNOMOD(SH,QNDEL,MLZ,MN,MV) ; - "DELROW" - DELETE ERROR CODE
 ; SH - IND STR LV=0
 D PUT^%W3DEB("W4HZORD-DELNOMOD","SH=SH&QNDEL=QNDEL&MLZ=MLZ&MN=MN&MV=MV&W4ITDEL=W4ITDEL")
 N TMPORD,GORD,SUG,LV D TMPORD
 ;
 N TMPORDD S TMPORDD=$$^W4MAIN("TMPORDD") K @TMPORDD
 M @TMPORDD=@TMPORD
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 ;
 S SUG=$$GET^W4TMPANS("DEL","EXIT2KITCHEN?")
 S SUG=$P(SUG,"::") ; -- VYSHEL S MITB
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 D
 .N A S A=$G(@TMPORD@(SH))
 .S LV=$P(A,"~")
 .S $P(A,"~",5)=-QNDEL
 .N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 .I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
 ;
 N PREZA
 ;
 S PREZA=$$PREZATI^W3HZMST(JB,SH,QNDEL)
 D PUT^%W3DEB("W4HZORD-DELNOMOD","PREZA=PREZA")
 I $$^W4AIN S PREZA=0
 ;
 N OK S OK=1,SUM=0
 I HZM,$$^W4HZFULL(HZM),'$$SHIHZUR D CHKDEL
 ;
 I OK'=1 D PUT^%W1PRM("DELROW",OK) G DELNOMODEND
 ;
 N ITRA0 S ITRA0=$$ITRAST^W3HZMST(JB,SH)
 N MRG0 S MRG0=$$MRG^W3HZMST(JB,SH)
 N CD0 S CD0=$$CDST^W3HZMST(JB,SH)
 ;
 I ITRA0'>0,$$^W4BIT(SH,TMPORD) Q
 ;
 N QN0 S QN0=$$QNR^W3HZMST(JB,SH,TMPORDD)
 ;
 I QN0<0,$$^W4BIT(SH,TMPORDD) Q
 ;
 D DELNOMODMAIN
 I $G(SH1) D DELNOMODADD
 ;
DELNOMODEND ;
 I '$$SHIHZUR K @TMPORDD
 Q
 ;
 ;
CHKDEL ;--> OK,SUM
 N ITRA,AHST,NOTSFMVC,SUMST
 ;
 S ITRA=$$CURTSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
 S SUM=0,AHST=0
 ;
 I $$LVST^W3HZMST(JB,SH)=0 S AHST=$$AHST^W3HZMST(JB,SH) D
 .N SUMST S SUMST=QNDEL*$$MHST^W3HZMST(JB,SH)*(100-$$AHUZ^W3HZMST(JB))*.01
 .S NOTSFMVC=$$NOTSFMVC^W3HZMST(JB,SH)
 .S SUMST=SUMST*(100-AHST)*.01
 .S SUM=SUM+SUMST
 ;
 N SH1,A
 S SH1=SH F  S SH1=$O(@TMPORD@(SH1)) Q:SH1=""  I SH1 S A=$G(@TMPORD@(SH1)) Q:'$$LV(A)  D
 .N SUMST S SUMST=$S($$QNV(A)["*":QNDEL*$$QN2(A),1:QNDEL)
 .S SUMST=SUMST*$$MHST^W3HZMST(JB,SH1)*(100-$$AHUZ^W3HZMST(JB))*.01
 .I '$G(NOTSFMVC) S SUMST=SUMST*(100-AHST)*.01
 .S SUM=SUM+SUMST
 ;W "SUM="_SUM_" ITRA="_ITRA,!
 D PUT^%W3DEB("W4HZORD-DELNOMOD","SUM=SUM & ITRA=ITRA")
 D PUT^%W1PRM("DELROW","1:"_SUM)
 Q
 ;
 ;
DELNOMODMAIN ;
 N SIBA,SIBA1,I
 S SIBA=$$GET^W4TMPANS("DEL","CAUSEDEL")
 S SIBA1=""
 S:SIBA["::" SIBA1=$P(SIBA,"::",2),SIBA=$P(SIBA,"::")
 ;
 D PUT^%W3DEB("W4HZORD-DELNOMODMAIN","SH=SH & QNDEL=QNDEL & SIBA=SIBA & SIBA1=SIBA1 & SUG=SUG")
 ;
 D GORD,GMOVE,GREST K @GREST S SHREST=0
 ;
 I $$MYCHECK^W4PRM,$$CDST^W3HZMST(JB,SH)=$$MYCHECK^W4PRM D ^WMCCLDEL(SH,$$GETP^%W1PRM("HZM")) S SH1=0 Q
 ;
 S LAST=$O(@GORD@(99999),-1)
 S SHL=LAST+1
 N SHMV S SHMV=$O(@GMOVE@(99999),-1)+1
 ;
 I $G(MV) D
 .I $$BSLPAR($$CDST^W3HZMST(JB,SH)) Q
 .S @GMOVE@(SHMV)=$G(@GORD@(SH))
 ;
 I $$SHIHZUR D
 .S SHREST=SHREST+1
 .S @GREST@(SHREST)=$G(@GORD@(SH))
 ;
 I $$^W4QNR(QNDEL)=0 S QNDEL=0
 ;
 I '$$W4TS,'$$^W4CP D
 .S @GORD@(SHL)=$G(@GORD@(SH)) ; --- COPY MAIN ITEM
 .D SETQN(GORD,SHL,-QNDEL) ; -- MINUS MAIN ITEM IN NEW LINE
 .I 'SUG,'$G(MV) D SET^W4ITEND($$CD($G(@GORD@(SH))),-QNDEL) ; -- VERN V POOL ESLI NE VYSH S MITB I NE HAAVARA
 .D CLRMOD(GORD,SHL) ; --- UBRAT NOMOD V NOV STR ( BIT)
 .D CLRQNDIF(GORD,SHL) ; --- ZA4ISTIT QNDIF V NOV STR
 ;
 I $G(MV) D
 .D SETQN(GMOVE,SHMV,+QNDEL) ; -- NEW QN IN GMOVE
 .D CLRMODMV(GMOVE,SHMV)
 .D CLRQNDIF(GMOVE,SHMV)
 ;
 I $$SHIHZUR D
 .D SETQN(GREST,SHREST,+QNDEL) ; -- NEW QN IN GMOVE
 .D CLRMOD(GREST,SHREST)
 .D CLRQNDIF(GREST,SHREST)
 ;
 D BITMRG(SH,SHL,QNDEL)
 S SH1=SH+1
 I $$CDSTC^W3HZMST(JB,SH1) D CPCMNT
 ;
 N NPMVC
 S NPMVC=$$ITWASMVC^W4SALE(SH)
 I NPMVC D DELMVC(GORD,NPMVC)
 ;
 D CLRMVC2^W3MVC; -- 08/09/25
 D CLRMVC^WLMSALE; -- 08/09/25
 Q
 ;
 ;
W4TS(STAM) ;
 Q $G(W4ITDEL)
 ;
 ;
CPCMNT ;
 I '$$W4TS D
 .S SHL=SHL+1
 .S @GORD@(SHL)=$G(@GORD@(SH1)) ; --- COPY MAIN ITEM
 .D SETNOMOD(GORD,SHL,"")
 ;
 I $G(MV) D
 .S SHMV=SHMV+1
 .S @GMOVE@(SHMV)=$G(@GORD@(SH1))
 .D CLRMODMV(GMOVE,SHMV)
 .D CLRQNDIF(GMOVE,SHMV)
 ;
 I $$SHIHZUR D
 .S SHREST=SHREST+1
 .S @GREST@(SHREST)=$G(@GORD@(SH1))
 .D CLRMOD(GREST,SHREST)
 .D CLRQNDIF(GREST,SHREST)
 ;
 S SH1=SH1+1
 Q
 ;
 ;
SH1NEXT ;
 N SH2 F SH2=SH1+1:1:LAST Q:$$LVST^W3HZMST(JB,SH2)<2&'$$CDSTC^W3HZMST(JB,SH2)
 S SH1=SH2
 Q
 ;
 ;
DELNOMODADD ;
 ;------------------------- DEL ADDONS ----------------------------
 ; INPUT :
 ;      PREZA=2 - MOVE OR DEL PART OF MAIN ITEMS ( NOMULTY )
 ;      PREZA=1 - MOVE OR DEL MAIN ALL MAIN ITEMS
 ;      PREZA=0 - MULTY
 ;      SH - DELETED LINE NUMBER, SH1 - DELETED LINE ADDONS COUNTER
 ;      MV - MOVING ORDER
 ;      W4ITDEL - FROM ^W4ITDEL ( CHOICED ITEMS )
 ;         IF DELETING ALL AI ( PREZA=1 ) QNDIF NOT !
 ;-----------------------------------------------------------------
 ;
 D PUT^%W3DEB("W4HZORD-DELNOMODADD","PREZA=PREZA & SH=SH & SH1=SH1 & MV=MV & W4ITDEL=W4ITDEL ")
 D GORD,GMOVE,GREST
 N QNDIF,QNDIF1,QNDELT S (QNDIF1,QNDELT)=""
 ;
 N SHL S SHL=$O(@GORD@(99999),-1)
 N SHMV S SHMV=$O(@GMOVE@(99999),-1)
 N SHREST S SHREST=$O(@GREST@(99999),-1)
 ; ---- QNDIF - IF ITEM CHOICED FOR DELETING
 ; ---- IF NOT W4ITDEL ( CHOICED ITEMS ) NO LEVEL 2 ! ( W4AIN: 0 & 1 )
 N A
 ;
 F  Q:'($D(@GORD@(SH1))#2)  S A=$G(^(SH1)) Q:SH1>LAST  Q:$$LVST^W3HZMST(JB,SH1)=0  D  ; - TOSAFOT TO DELETED LINE
 .I $$CDC(A) S SH1=SH1+1 Q
 .N LVA S LVA=$$LV(A)
 .;
 .S QNDIF=$$QNDIF(A) ; --- QNDIF < 0 ;-- HOW MUCH ADDONS TO BE DEL (W4ITDEL)
 .;
 .I $D(W4ITDEL),$$EZI($G(CD0),SH)=1,QNDIF="" S PREZA=1
 .I $D(W4ITDEL),'QNDIF,PREZA'=1 D SH1NEXT Q  ; -- 24/11/18 LEV
 .;
 .N ITRA1 S ITRA1=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 .;
 .I $$^W4QNR(ITRA1)'>0 S SH1=SH1+1 Q
 .I $$QNR^W3HZMST(JB,SH1,TMPORDD)'>0 S SH1=SH1+1 Q
 .
 .;;I $$LV(A)=1,'$$^W4AIN S QNDELT=$$ITRAST^W3HZMST(JB,SH1,TMPORDD) ; - ???
 .
 .I LVA=1 S QNDIF1=QNDIF
 .I LVA=2 S SH1=SH1+1 Q
 .
 .I $D(W4ITDEL),PREZA=2,QNDIF1'<0 S SH1=SH1+1 Q
 .
 .I '$$W4TS D
 ..S SHL=SHL+1
 ..S @GORD@(SHL)=$G(@GORD@(SH1)) ; -- COPY ADDONS LINE TO END
 .
 .I $G(MV) D
 ..S SHMV=SHMV+1
 ..S @GMOVE@(SHMV)=$G(@GORD@(SH1))
 ..D CLRMODMV(GMOVE,SHMV)
 ..D CLRQNDIF(GMOVE,SHMV)
 .I $$SHIHZUR D
 ..S SHREST=SHREST+1
 ..S @GREST@(SHREST)=$G(@GORD@(SH1))
 ..D CLRMOD(GREST,SHREST)
 ..D CLRQNDIF(GREST,SHREST)
 .;
 .N QNL S QNL=$$QNV($G(@GORD@(SHL))) ; - ADDONS QN BEFORE DEL
 .N QND S QND=QNDEL ; -- DEL UR 0
 .N MRG S MRG=$G(@GORD@("MRG",SH1))
 .;
 .I $$^W4EZI(CD0) D
 ..I QNL["*" S MRG=$G(MRG0)*$P(QNL,"*",2) Q
 ..S MRG=$G(MRG0)*(QNL\QN0) ; -- WAS \ITRA0
 .;
 .S QNL=$$^W4QNR(QNL)
 .;
 .I $G(ITRA0) S QNL=QND*((QNL-MRG)\ITRA0)
 .
 .I '$D(W4ITDEL) S QNDIF=$S(QNL>0:-QNL,Q:QNL)
 .
 .;
 .I '$$W4TS D
 ..D CLRMOD(GORD,SHL) ;-- DELETE @@ IN NEW LINE
 ..D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF IN NEW LINE
 .
 .D DELNOMODEZA D SH1NEXT Q  ;-- DEL ALL ADDONS ^W4ITDEL
 Q
 ;
 ;
DELNOMODEZA ;--- UD-E ADDONS TO AI
 ; INPUT : SH1,
 ;         SHL
 ;----------------------------------------------------------------------------
 N A1
 ;
 I PREZA=2!(PREZA=0) D  Q  ; -- CHAST UD-E
 .N QNA S QNA=+QNDIF
 .;;S ^AA("W4HZOD-DELNOMODEZA","QNA")=QNA
 .;;S ^AA("W4HZOD-DELNOMODEZA","QND")=QND
 .N QNMV S QNMV=-QNA
 .;
 .N QNAR S QNAR=$$^W4QNR(QNA)
 .I QNAR=0 S QNA=0,QNMV=0
 .
 .I '$$W4TS D
 ..D SETQN(GORD,SHL,QNA) ; -- VSTAV MIN QN ( QNDIF < 0 )
 ..I $G(MV) D SETQN(GMOVE,SHMV,QNMV)
 ..I $$SHIHZUR D SETQN(GREST,SHREST,QNMV)
 ..I 'SUG,'$G(MV),'$$SHIHZUR D
 ...D SET^W4ITEND($$CD($G(@GORD@(SH1))),QNAR) ; -- VOZVR V POOL
 ..D CLRQNDIF(GORD,SHL)
 .
 .I '$$SHIHZUR D
 ..D CLRQNDIF(GORD,SH1)
 .I $G(CD0),'$$^W4EZAT(CD0)!$$^W4AIN Q
 .I QNAR<0 S QNAR=-QNAR
 .D BITMRG(SH1,SHL,QNAR)
 .I $$CDCI(SH1+1) D CPCMNT1 ; -- COMMENT
 .D DELNOMODC2(SH1,QNA) ; -- DEL SONS
 ;
 ;
 I PREZA=1 D  Q  ; -- DEL / MOVE ALL ADDONS
 .N ITRAT S ITRAT=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 .I '$$^W4QNR(ITRAT) S ITRAT=0
 .I '$$W4TS D
 ..D SETQN(GORD,SHL,-ITRAT) ; --- ZAMINUSOVAT V NEW
 ..I $G(MV) D SETQN(GMOVE,SHMV,ITRAT)
 ..I $$SHIHZUR D SETQN(GREST,SHREST,ITRAT)
 ..I 'SUG,'$G(MV),'$$SHIHZUR D
 ...D SET^W4ITEND($$CD($G(@GORD@(SH1))),-ITRAT) ; -- VOZVR V POOL
 ..D CLRQNDIF(GORD,SHL)
 .
 .I $$CDCI(SH1+1) D CPCMNT1 ; -- COMMENT
 .I $G(CD0),'$$^W4EZAT(CD0)!$$^W4AIN Q
 .
 .D BITMRG(SH1,SHL,ITRAT)
 .D DELNOMODC2(SH1,ITRAT)
 Q
 ;
 ;
PROCQN2(SH2,A2,QNDELT) ;
 ; -- QND,QNDEL - QN DEL LV=0
 N QN2,QN20,QN21
 S QN2=$$QNV(A2),QN20=QN2
 I '$$^W4QNR(QN2) Q 0
 ;
 I QN20["*" S QN2=$P(QN20,"*",$L(QN20,"*"))
 ;
 I QN20'["*" D
 .N I1 S I1=$$PREVSH1^W3HZMST(JB,SH2,GORD)
 .N QN1 S QN1=$$QNST^W3HZMST(JB,I1,GORD)
 .I QN2\QN1*QN1=+QN2 S QN2=QN2\QN1
 ;
 S QN21=QNDELT_"*"_QN2
 I $E(QNDELT)'="-",$E(QN2)'="-",$E($P(QN2,"*",2))'="-" D
 .S QN21="-"_QN21
 ;
 I '$$^W4QNR(QN21) Q 0
 Q QN21
 ;
 ;
CPCMNT1 ;
 S SHL=SHL+1
 S @GORD@(SHL)=$G(@GORD@(SH1+1))
 D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF
 D CLRMOD(GORD,SHL) ;-- DELETE @@
 ;
 I $G(MV) D
 .S SHMV=SHMV+1
 .S @GMOVE@(SHMV)=$G(@GORD@(SH1+1))
 .D CLRMODMV(GMOVE,SHMV) ;-- DELETE @@
 .D CLRQNDIF(GMOVE,SHMV) ;--- CLEAR QNDIF
 ;
 I $$SHIHZUR D
 .S SHREST=SHREST+1
 .S @GREST@(SHMV)=$G(@GREST@(SH1+1))
 .D CLRMOD(GREST,SHREST) ;-- DELETE @@
 .D CLRQNDIF(GREST,SHREST) ;--- CLEAR QNDIF
 ;
 S SH1=SH1+1
 Q
 ;
 ;
DELNOMODC2(SH1,QNDELT) ;--- DEL LEVEL 2 & COMMENTS
 N SH10 S SH10=SH1
 ;
 N SH2,QN2,QN20,QN21,A2
 ;
 S SH2=SH1 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 .Q:$$LV(A2)<2
 .I $$QNR^W3HZMST(JB,SH2)'>0 S SH1=SH1+1 Q
 .
 .I '$$W4TS D
 ..S SHL=SHL+1
 ..S @GORD@(SHL)=$G(@GORD@(SH2))
 ..D CLRMOD(GORD,SHL) ;-- DELETE @@
 ..D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF
 ..;
 ..S QN21=$$PROCQN2(SH2,A2,QNDELT)
 ..
 ..I '$$CDC(A2),'$$CDA(A2) D
 ...D SETQN(GORD,SHL,QN21)
 .
 .S SH1=SH1+1
 ;
 ;
 I $G(MV) D
 .I $$QNR^W3HZMST(JB,SH10)'>0 Q
 .
 .S SH2=SH10 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 ..S SHMV=SHMV+1
 ..S @GMOVE@(SHMV)=$G(@GORD@(SH2))
 ..D CLRMODMV(GMOVE,SHMV) ;-- DELETE @@
 ..D CLRQNDIF(GMOVE,SHMV) ;--- CLEAR QNDIF
 ..S QN21=$$PROCQN2(SH2,A2,QNDELT)
 ..S QN21=$TR(QN21,"-","")
 ..I '$$CDC(A2),'$$CDA(A2) D
 ...D SETQN(GMOVE,SHMV,QN21)
 ;
 I $$SHIHZUR D
 .I $$QNR^W3HZMST(JB,SH10)'>0 Q
 .
 .S SH2=SH10 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 ..S SHREST=SHREST+1
 ..S @GREST@(SHREST)=$G(@GORD@(SH2))
 ..D CLRMOD(GREST,SHREST) ;-- DELETE @@
 ..D CLRQNDIF(GREST,SHREST) ;--- CLEAR QNDIF
 ..S QN21=$$PROCQN2(SH2,A2,QNDELT)
 ..S QN21=$TR(QN21,"-","")
 ..I '$$CDC(A2),'$$CDA(A2) D
 ...D SETQN(GREST,SHREST,QN21)
 Q
 ;
 ;
BITMRG(SH,SHL,QNDEL)
 Q:'$G(QNDEL)
 N TS S TS=$$W4TS
 ;;W "SH="_SH_"  SHL="_SHL_"  QNDEL="_QNDEL ; ***
 I TS D  Q
 .S @GORD@("TS",SH,TS)=$G(@GORD@("TS",SH,TS))+QNDEL
 .S @GORD@("TS",SH)=$G(@GORD@("TS",SH))+QNDEL
 ;
 I '$$^W4CP D
 .S @GORD@("MRG",SH)=$G(@GORD@("MRG",SH))+QNDEL
 .S @GORD@("BIT",SHL)=$S($G(MN):$G(MLZ)_"*"_MN,1:$G(MLZ)_"*"_$G(MLZ))_"*"_$G(SIBA)_"*"_$$CNWEB^%L1FRM($G(SIBA1))_"*"_$H_"*"_$G(SUG)_"*"_$$^W4MYDVN_"*"_SH_":"_@GORD@("MRG",SH)
 Q
 ;
 ;
RESTNOMOD(SH,QNDEL,LAST) ;
 D PUT^%W3DEB("W4HZORD-RESTNOMOD","SH=SH & QNDEL=QNDEL & LAST=LAST")
 D GREST
 N SHL S SHL=$O(@GORD@(99999),-1)
 N I S I="" F  S I=$O(@GREST@(I)) Q:I=""  I I D
 .S SHL=SHL+1
 .M @GORD@(SHL)=@GREST@(I)
 K @GREST
 Q
 ;
 ;
EDITROW(SH) ;
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-EDITROW","SH=SH")
 ;
 N GORD D GORD
 S SH=$$FINDSH(SH) Q:SH=""
 I SH=$O(@GORD@(9999),-1) S PRL=1
 I $P($G(@GORD@(SH)),"~")'=0 Q
 ;
 N GT S GT="^[$$^W3MAIN]TMPTF($$^%W1JB,3)"
 K @GT
 Q
 ;
 ;
CHANGE(SHCM) ;
 D TMPORD
 N SH,SH1,CM
 S SH=$P(SHCM,"~")
 S CM=$P(SHCM,"~",2) ; -- !!
 ;
 S SH=$$FINDSH(SH) Q:SH="" ""
 D PUT^%W3DEB("W4HZORD-CHANGE","SH=SH & CM=CM")
 ;
 N QNO S QNO=$$QNST^W3HZMST(JB,SH)
 D SETSH^W4ITEND(SH,CM)
 D SETQN(TMPORD,SH,CM) ; CM --> ST UR 0
 ;
 N CDM S CDM=$$CDI(SH)
 ;
 I $$LVI(SH)=0 D  ; --- HAZAGAT PARIT AL DISPLAY
 .N A S A=$G(@TMPORD@(SH))
 .N MYDVN S MYDVN=$$^W4MYDVN
 .N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 .Q:'PORTDISP
 .D PCPAR^W4TX2DSP(PORTDISP,A)
 ;
 I $$LVI(SH)=0 D
 .N CD,LVI,CM1OLD S CD=$$CDI(SH),CM1OLD=""
 .
 .S SH1=SH F  S SH1=$O(@TMPORD@(SH1)) Q:SH1=""  I SH1 S LVI=$$LVI(SH1) Q:LVI=0  D
 ..N A S A=$G(^(SH1))
 ..I $$CDA(A) Q
 ..I $$CDC(A) Q
 ..I $$CDH(A) Q
 ..
 ..N CM1 S CM1=$$QNST^W3HZMST(JB,SH1)
 ..D
 ...I CM1["*" S CM1=CM_"*"_$P(CM1,"*",2,3) Q
 ...I CM1'["*" D  Q
 ....I LVI=1,'$$^W4EZAT(CD),'$$^W4AIN,$G(QNO) S CM1=CM_"*"_(CM1\QNO) Q
 ....S CM1=CM
 ..
 ..I LVI=1 S CM1OLD=CM1
 ..
 ..N MAIN S MAIN=$$MAIN^W4ITM(A)
 ..D PUT^W4ITM("QNM",CM,"A")
 ..S @TMPORD@(SH1)=A
 ..D SETSH^W4ITEND(SH1,CM1)
 ..D SETQN(TMPORD,SH1,CM1)
 ;
 N ST S ST=$G(@TMPORD@(SH))
 Q $J($$MH(ST)*$$QN1($$QNV(ST)),2,2)
 ;
 ;
CDIT(NS)
 D TMPORD
 N SH,CD,IT
 S SH=$$FINDSH(NS) Q:SH="" ";"
 S CD=$$CDI(SH) I CD="" Q ";"
 S IT=$$^W4ITEND(CD)
 Q CD_";"_IT
 ;
LAST0(STAM) ;
 D TMPORD
 N N S N=$O(@TMPORD@(9999),-1) I N="" Q ""
 I $P($G(^(N)),"~")=0 Q ^(N)
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  Q:$P(^(N),"~")=0
 I N="" Q ""
 Q $G(@TMPORD@(N))
 ;
 ;
LASTAI(STAM)
 N TX S TX=$$LAST0 I TX="" Q 0
 N CD S CD=$P(TX,"~",2) I CD="" Q 0
 I $$DD^W4EZA(CD)!$$DD^W4EZT(CD) Q 1
 Q 0
 ;
 ;
BDIKA(TXT) ;
 Q:'$G(JB) 1
 N LI
 N STPAR S STPAR=$$LAST0^W3HZMST(JB) I STPAR="" Q 1
 S LI=$$LI^W3HZMST(JB) Q:'LI 1
 ;
 N VA
 I $P(TXT,"~")=0 S VA=$$^W3VLDADD(TXT) S:VA="" VA=0 I 'VA Q VA
 Q 1
 ;
 ;
STADD(TXT) ;
 Q $$STADD^W4STADD($G(TXT))
 ;
GETQN(STID)
 N IND S IND=$$FINDSH(STID) I 'IND Q "NOK"
 Q $$QNR^W3HZMST(JB,IND)
 ;
FINDSH(STID) ; -- STID = LV...
 ;;D PUT^%W3DEB("W4HZORD-FINDSH","STID=STID")
 D TMPORD
 N SH S SH=$E(STID,4,8) I SH="" Q "NOK"
 Q $$SHORD(SH)
 ;
SHORD(SH)
 N N S N=SH
 I $P($G(@TMPORD@(SH)),"~",10)="" Q SH
 I $P($G(@TMPORD@(SH)),"~",10)'=SH D
 .S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N Q:$P($G(^(N)),"~",10)=SH
 Q N
 ;
NOMOD(I) ;
 D TMPORD
 N A S A=$G(@TMPORD@(I))
 Q $$NOMODST(A)
 ;
NOMODST(A) ;
 I $$GETNOMOD(A)["@@" Q 1
 Q 0
 ;
CLRMOD(GORD,SHL) ;
 N CLR S CLR=""
 I $G(MV) S CLR=$S($$PCMV:"",1:"HZ")
 D SETNOMOD(GORD,SHL,CLR) ; --- UBRAT NOMOD V NOV STR ( BIT)
 Q
 ;
PCMV(STAM) ;
 I $$^W4CP Q 1
 I $G(@$$^W4PRM@("HZMHV"))=1 Q 1
 I $G(@$$^W4PRM@("HZMHV"))=3,$$GETP^%W1PRM("PCMV") Q 1
 Q 0
 ;
CLRMODMV(GMOVE,SHMV)
 N CLR S CLR="HZ"
 D SETNOMOD(GMOVE,SHMV,CLR)
 Q
 ;
SETNOMOD(GL,SH,VL)
 S VL=$G(VL)
 I $G(VL)'="HZ" S $P(@GL@(SH),"~",12)=VL
 I VL=""!(VL="HZ") S $P(@GL@(SH),"~",13)=""
 Q
 ;
GETNOMOD(A)
 Q $P(A,"~",12)
 ;
NOLASTMOD(STAM)
 N STPAR
 I $$^W4AIN D  Q $$NOMODST(STPAR)
 .S STPAR=$$GETP^%W1PRM("STPAR0")
 ;
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1) I 'LAST Q 0
 Q $$NOMOD(LAST)
 ;
NOMODADD(PRM) ;
 D PUT^%W3DEB("W4HZORD-NOMODADD","PRM=PRM")
 N NST,CDADD
 S CDADD=$P($P(PRM,";",2),"~",2)
 I CDADD="" Q "NOK"
 S NST=$P(PRM,";")
 N NOM S NOM=$$FINDSH(NST) I 'NOM Q "NOK"
 N OK S OK=0
 N I F I=NOM+1:1 Q:'$$LVI(I)  I $$CDI(I)=CDADD S OK=I Q
 I 'OK Q "NOK"
 Q $$NOMOD(I)
 ;
CLRQNDIF(GLREF,IND) ;
 S $P(@GLREF@(IND),"~",11)=""
 Q
 ;
NOEDITMOD(I) ;
 N RES S RES=0
 N NOMOD S NOMOD=$$NOMOD(I) I NOMOD S RES=1
 I $$OTH S RES=1
 I $$CHNORD S RES=1
 I $$QNST^W3HZMST(JB,I)<0 S RES=2+NOMOD
 I $$ITRAST^W3HZMST(JB,I)'>0 S RES=4+NOMOD
 I 'RES,$$ZAG S RES=1
 Q RES
 ;
SVCMNT(PRM) ;
 N CD,CDCMNT
 S CDCMNT=$P(PRM,"-C",2)
 S CD=$P(PRM,"-")
 I CDCMNT="" Q
 I CD="" Q
 D PUT^%W1PRM("CDCMNT",CDCMNT_";;0;"_CD)
 Q
 ;
EZH(CD) ;
 I $G(CD)="" Q 0
 I $$D^W4EZH(CD) Q 1
 Q 0
 ;
PARENT(ID) ;
 I $G(ID)="" Q " "
 D TMPORD
 N SH S SH=$$FINDSH(ID)
 I 'SH Q " "
 N I F I=SH:-1:0 Q:$$LV($G(@TMPORD@(I)))=0
 I I=0 Q " "
 N A
 S A=$G(@TMPORD@(I))
 Q $P(A,"~",2)_";"_I_";"_$P(A,"~",10)
 ;
PARENTSET(ID) ;
 I $G(ID)="" Q " "
 I ID'["LV1" Q " "
 D TMPORD
 N SH S SH=$$FINDSH(ID)
 I 'SH Q " "
 N I F I=SH:-1:0 Q:$$LV($G(@TMPORD@(I)))=0  Q:$$CDA($G(@TMPORD@(I)))
 I I=0 Q " "
 I '$$CDA($G(@TMPORD@(I))) Q " "
 N A
 S A=$G(@TMPORD@(I))
 Q $P(A,"~",2)_";"_I_";"_$P(A,"~",10)
 ;
HNH(STAM) ;
 Q $$HNH^W4GETSUM(JB)
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I '$$^W4ISORD(HZM) Q $J($$TOTHN*$$AHUZ^W3HZMST(JB)*.01,$$DR,$$DR)
 I $$D^W3TMPORD(JB)<11 Q $$HNH^W4HZMST(HZM)
 ;
 N HNHAH,HNH,HNH0
 I $$^W4ISORD(HZM) S HNHAH=$$AHUZ^W3HZMST(JB)
 I $G(HNHAH)="" S HNHAH=$$AHUZ^W4MENUBT
 ;
 S HNH=$$TOTHN*HNHAH*.01
 I $$^W4ISORD(HZM) D
 .S HNH=HNH+$$SLKHNH^W4PAYVW(HZM)+$$SHNH1^W4PAYVW(HZM) ;+$$HNH2^W4HZMST(HZM)
 Q $J(HNH,2,2)
 ;
TOTHN(STAM) ;
 Q $$TOTORD^W3HZMST(JB,"D")
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
GORDD ;
 S GORDD=$$^W4MAIN("TMPORDD")
 Q
 ;
GMOVE ;
 S GMOVE=$$^W4MAIN("TMPMV")
 Q
 ;
GREST ;
 S GREST=$$^W4MAIN("TMPRS")
 Q
 ;
HNHSHAA(CD) ;
 N NMB
 S HNHSHAA=""
 I '$G(CD) Q ""
 S NMB=$$GET^%W1PRM("NMB") Q:'NMB ""
 N ZMANK S ZMANK=$$DATCB^W3HZMST(JB)
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 Q $$^W4HNHSHA(CD,NMB)
 ;
DISCCMST(MHT) ;
 W "<td class=""disccmst"""
  D
  .I $L($G(A)),$$CDA(A)!$$CDH(A)!$$CDC(A) W "&nbsp;" Q
  .I $$^W4PRTBH($$CD(A)) W "&nbsp;" Q
  .I $G(HNST)!$G(HNST1) D
  ..N HNST0 S HNST0=HNST I $G(NOTSFMVC) S HNST0=""
  ..W $S($G(HNST0)&$G(HNST1):HNST0_"*"_HNST1,$G(HNST1):HNST1,$G(HNST0):HNST,1:"&nbsp;")
  ..W "<br",!
  .W $S('$G(NOTSFMVC)&$L($G(CMST))&MHT:$$H2U^%L1FRM(CMST),1:"&nbsp;")
 W "</td",! ; --- DISCOUNT PLACE
 Q
 ;
 ;
NODISCST()
 Q +$G(@$$^W4PRM@("NODISCST"))
 ;
PREPEDIT(NS) ;
 N NST
 S NST=+$$FINDSH^W4HZORD(NS)
 N TMPORD S TMPORD=$$^W4TMPORD
 N ST S ST=$G(@TMPORD@(NST))
 D PUT^%W1PRM("STPAR",ST)
 N CD S CD=$$CD(ST)
 ;
 D PUT^%W1PRM("SHID",NS)
 ;
 I $$^W4AIN&$$TSF(NST) D  Q
 .N STA,A S STA="",A=""
 .F I=NST-1:-1:1 S A=$G(@$$^W4TMPORD@(I)) Q:$$CDA(A)
 .I $$CDA(A) S STA=$$CD(A)_";"_$$CD($$^W4RSTPAR)_";"_$$QNV(A)_";"_$$MH(A)
 .I STA'="" D PUT^%W1PRM("STPAR40",STA)
 .D INITUR^W4MENU(5)  ; -- EDIT INTO AI ITEM+ADDONS
 ;
 I $$^W4AIN D  Q
 .D INITUR^W4MENU(4)  ; -- EDIT ITEM INTO AI
 ;
 I $$^W4EZAT(CD),$$LV(ST)=0,'$$^W4AIN D
 .D PUT^%W1PRM("STPAR00",ST)
 ;
 I $$^W4EZAT(CD) D  Q
 .D PUT^%W1PRM("SHID0",NS)
 .D KILL^%W1PRM("SHID")
 .D INITUR^W4MENU(3)
 .I $$SAVEIT^W4HZTSF(ST) ; -- !!!
 ;
 I $$TSF^W4HZORD(NST) D
 .D INITUR^W4MENU(3)
 ;
 Q
 ;
 ;
SHIHZUR(STAM) ;
 I +$$GET^W4TMPANS("DEL","DELETE?")=2 Q 1
 Q 0
 ;
MV(STAM) ;
 I $G(MV) Q 1
 I $$SHIHZUR Q 1
 Q 0
 ;
SENDED(I,COL) ;
 I '$G(COL) S COL=7
 D TMPORD
 N TIMEO,TIMEN,TIMEFIRE,I0
 N IO S IO=$O(@TMPORD@(I),-1) Q:'IO
 F I0=IO:-1:0 Q:'$$LVI(I0)
 I 'I0 Q
 I '$$NOMOD(I0) Q
 S TIMEO=$P($G(@TMPORD@("ST",I0)),"\",2)
 N MLZRO S MLZRO=$P($G(@TMPORD@("ST",I0)),"\",1)
 S TIMEN=""
 I I D
 .S TIMEN=$P($G(@TMPORD@("ST",I)),"\",2)
 .S TIMEFIRE=$P($G(@TMPORD@("ST",I)),"\",3)
 ;
 I $L(TIMEO),TIMEO'=TIMEN D
 .W "<tr style=""text-align:center;background-color:grey;color:white;font-weight:bold"" "
 . W "<td colspan="""_COL_""""_$$^%W1DICT("SENDED2PRINT",TIMEO)_$$NBSP^%L1FRM(3)
 . W "<span style=""font-size:"_$$^W3FSZ(10)_""""_$$H2U^%L1FRM($$^W4NAME(MLZRO))_"</span"
 .W "</tr",!
 Q
 ;
 ;
FIRE(I,COL) ;
 I '$G(COL) S COL=7
 D TMPORD
 N A S A=$G(@TMPORD@("FIRE","SH",I))
 N TIMEFIRE S TIMEFIRE=$P(A,";")
 N FIREIND S FIREIND=$P(A,";",2)
 S A=$G(@TMPORD@("NOFIRE","SH",I))
 N NOTIMEFIRE S NOTIMEFIRE=$P(A,";")
 N NOFIREIND S NOFIREIND=$P(A,";",2)
 ;
 I FIREIND,FIREIND<NOFIREIND!'NOFIREIND D PRINTFIRE I NOFIREIND D PRINTNOFIRE
 I NOFIREIND,NOFIREIND<FIREIND!'FIREIND D PRINTNOFIRE I FIREIND D PRINTFIRE
 ;
 Q
 ;
 ;
NAMEMDP(MDP) ;
 Q $P($G(@$$^W4PRM@("MDP",MDP)),"\",4)
 ;
PRINTFIRE ;
 I TIMEFIRE'="" D
 .W "<tr style=""text-align:center;background-color:red;color:white;font-weight:bold"" "
 . W "<td colspan="""_COL_""""_$$^%W1DICT("FIRE",TIMEFIRE)
 . I FIREIND S MDPL=$$SPA^%L1FRM($G(@TMPORD@("FIRE","TIME",FIREIND))) I $L(MDPL) D
 ..N J F J=1:1:$L(MDPL,",") D
 ...N MDP S MDP=$P(MDPL,",",J) Q:MDP=""
 ...W "&nbsp;&nbsp;&nbsp;" ; W "<br"
 ...W "<span style=""font-size:"_$$^W3FSZ(8)_""" "_$$H2U^%L1FRM($$NAMEMDP(MDP))_"</span"
 . W "</td",!
 .W "/tr",!
 Q
 ;
PRINTNOFIRE ;
 I NOTIMEFIRE'="" D
 .W "tr style=""text-align:center;background-color:black;color:yellow;font-weight:bold"" "
 . W "td colspan="""_COL_""""_$$^%W1DICT("NOFIRE",NOTIMEFIRE)
 . I NOFIREIND S MDPL=$$SPA^%L1FRM($G(@TMPORD@("NOFIRE","TIME",NOFIREIND))) I $L(MDPL) D
 ..N J F J=1:1:$L(MDPL,",") D
 ...N MDP S MDP=$P(MDPL,",",J) Q:MDP=""
 ...W "&nbsp;&nbsp;&nbsp;" ; W "br"
 ...W "span style=""font-size:"_$$^W3FSZ(8)_""" "_$$H2U^%L1FRM($$NAMEMDP(MDP))_"/span"
 . W "/td",!
 .W "/tr",!
 Q
 ;
FIRSTNEW(STAM) ;
 I $$GET^%W1PRM("FIRSTNEW") Q 1
 Q 0
 ;
CONDORD(NMB)
 Q $$CONDORD^W4HZORHD(NMB)
 ;
PRMANA1(STAM) ;
 Q $$PRMANA1^W4HZORHD
 ;
AIN(STAM) ;
 Q $$^W4AIN
 ;
PREZAT(A) ;
 I $$PREZAT^W3HZMST(A),'$$^W4AIN Q 1
 Q 0
 ;
DELMAINAI(STAM) ;
 N PRM S PRM=$$GETP^%W1PRM("DELMAINAI")
 Q +PRM
 ;
BSLPAR(PAR) ;
 Q $$BSLPAR^W4CDSRV(PAR)
 ;
SETCHNLINE(I) ; 
 N (JB,%ARG,I)
 N RES
 I $$GETP^%W1PRM("CHNORD1")="" D  Q 1
 .D PUT^%W1PRM("CHNORD1",I)
 ; 
 S MVLN=$$GETP^%W1PRM("CHNORD1")
 S RES=$$SWAP^W4MVLINE("LV0"_I_";LV0"_MVLN)
 D KILL^%W1PRM("CHNORD1")
 Q 2
 ;
BGCMVL(STAM) ;
 Q "#FFFB88" 
 ;
EZI(CD,SH) ; 
 N EZI S EZI=$$^W4EZI(CD)
 I EZI Q EZI
 N LV S LV=$P($G(@$$^W4TMPORD@(SH)),"~")
 N NXST S NXST=$G(@$$^W4TMPORD@(SH+1)) 
 N NXLV S NXLV=$P(NXST,"~")
 N NXCD S NXCD=$P(NXST,"~",2)
 N NXST2 S NXST2=$G(@$$^W4TMPORD@(SH+2)) 
 N NXLV2 S NXLV2=$P(NXST2,"~")
 I NXLVLV,NXCD'["-C" Q 1
 I NXLVLV,NXCD["-C",NXLV2LV Q 1
 Q 0
 ;
 ;
CHNQNMVC(PRM)
 N QNNEW S QNNEW=1 
 I PRM[";" S QNNEW=$P(PRM,";",2)
 S PRM=$P(PRM,";")
 ;
 N LAST,IND,SH,ST
 S SH=$$FINDSH(PRM) I SH="" Q -.5
 S ST=$G(@TMPORD@(SH))
 ;
 ;;S ^AA("W4HZORD-CHNQNMVC","PRM")=PRM
 ;;S ^AA("W4HZORD-CHNQNMVC","SH")=SH
 ;
 I PRM["LV0" D
 .N GORD D GORD
 .N NPMVC S NPMVC=$$ITWASMVC^W4SALE(SH)
 .S ^AA("W4HZORD-CHNQNMVC","NPMVC")=NPMVC
 .I NPMVC D DELMVC(GORD,NPMVC)
 .
 .I '$$NOMOD^W3HZMST(JB,SH) D  Q
 ..S $P(@GORD@(SH),"~",5)=QNNEW
 ..D SETSH^W4ITEND(SH,"-")
 .
 .D DELROW(PRM)
 .D NEWST^W4HZTSF(ST,QNNEW)
 Q 1
 ;
 ; 
DELMVC(GORD,NPMVC)
DELMVC1 N A1 S A1=$G(@GORD@(NPMVC+1))
 I $$CDC(A1) D DELSEQ(GORD,NPMVC+1)
 D DELSEQ(GORD,NPMVC)
 K @GORD@("MVC"_$$GETP^%W1PRM("MVC"))
 S NPMVC=$$ITWASMVC^W4SALE(NPMVC)
 I 'NPMVC Q 
 G DELMVC1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZORD1
W4HZORD(TXT) ; [ 16.09.18 12:58 ] [ 28.08.18 13:35 ] [ 20.08.18 16:56 ] 
 N (JB,%ARG,TXT,BACK,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 S MSD=$$GET^%W1PRM("MSD")
 S NMB=$$GET^%W1PRM("NMB")
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM'<1,'$$CLOSE^W4HZMST(HZM) D
 .D CLRMVC2^W3MVC
 .K @$$^W4TMPORD@("MVC2")
 ;
 I '$$CHNORD D KILL^%W1PRM("CHNORD1")
 I '$$CHNORD^W4PRM D KILL^%W1PRM("CHNORD"),KILL^%W1PRM("CHNORD1")
 ;
 I $G(%ARG("CHNORD"))?1N D
 .D PUT^%W1PRM("CHNORD",%ARG("CHNORD"))
 ;
 S COLSPAN=$S($$^W4AIN:6,$$CONDORD(NMB):7,$$PRMANA1&'$$^W4SMALL:8,1:7)
 ;
 D PUT^%W3DEB("W4HZORD","TXT=TXT & MSD=MSD & %ARG=[%ARG")
 ;
 N W3HZORD S W3HZORD=""
 ;
 K TXT
 ;
 S CUR=0
 D TMPORD
 D TMPORD1 K @TMPORD1
 ;
 D PUT^%W1PRM("SHOWORD",1)
 ;
VIEW ;
 D NOSELECT^%W1JS
 S FIRSTADD=-1,OPENADD=$$OPENADD^W4PRM ; WAS 0
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 W "<div id=""DivOrd"" align=""center"" >",!
 ;
 W "<br><br>",!
 ;
 I $$AIN D
 .N STPAR0 S STPAR0=$$^W4RSTPAR
 .D AINMAIN(+$$QNV(STPAR0))
 ;
 I $$DELMAINAI D
 .N SH,QNDEL,MLZ
 .S MLZ=$$GETP^%W1PRM("MLZR")
 .S MN=$$^W4WHOSBM
 .S SH=$$DELMAINAI
 .S QNDEL=$$ITRAST^W3HZMST(JB,SH)
 .D DELNOMOD(SH,QNDEL,MLZ,MN)
 .D KILL^%W1PRM("DELMAINAI")
 ;
 I '$$AIN D ^W4HZORHD(HZM)
 ;
 I $$BSL^W4PRM,'$$^W4AIN,'$$^W4SMALL W "<br><br>",!
 ;
 S BGC="#eaeaea"
 ;
 S WDTBL=98
 I $$1024^W4WDSCR,$$^W4TABLET'=2 S WDTBL=100
 ;
 W "<table id=""TblOrd"" border=0 "
   W " width="""_WDTBL_"%"" class=""bgtblord"" "
   I $$^W4TABLET=2 W $$INV^%W1ALIGN
   W " style="""
    W "left:0;"
    I '$$^W4SMALL W "table-layout:fixed;"
    W "background-color:"_BGC_";"
    W $$RAD^W3CSM_";"
    W $$BOXSHADOW^W3CSM("0px",$$KF(6)_"px",".4")
    W "border:grey "_$$KF(1)_"px solid"
   W """ "
   W " cellspacing=""0"""
   W " dir="""_$$^%W1DIR_""" "
 W ">",!
  ;
  D TRTH(0)
  ;
 S FLA=0,FLED=0,PRT=""
 ;
 D SETOP
 ;
 S IDMAIN="",AHST="",NOTSFMVC=""
 D MN^W4MANA
 N I,IO,CMST,HNST,HNST1 S (HNST,HNST1,CMST)=""
 ;
 S CURLN=$$GETP^%W1PRM("CURLN")
 N TSHL S TSHL=$$TSH^W3HZMST(JB)
 N W4AIN S W4AIN=$$^W4AIN
 ;
 S I="" F  S I=$O(@TMPORD@(I))  Q:I=""  I I?1N.N D  D FIRE(I,COLSPAN)
 .N A S A=$G(^(I))
 .N CD S CD=$$CD(A)
 .S $P(@TMPORD@(I),"~",10)=I
 .
 .I $$LV(A)=0 D  ; --------------------------  ITEMS
 ..S FLA=0,FLED=0,ITRA0=$$ITRAST^W3HZMST(JB,I)
 ..S (CMST,HNST,HNST1)=""
 ..S FIRSTADD=-1
 ..S OPENADD=$$OPENADD(I)
 ..I $$EDITLINE(I) S FLED=1
 ..I $$QNV(A)<0&(TSHL'<0!W4AIN) Q
 ..D SENDED(I,COLSPAN) ; -- SENDED2PRINT
 ..
 ..S BGC=$$BGCOLOR(I)
 ..
 ..W $$TRLV0(I_"^"_A)
 ..
 ..S PRT=CD,IDMAIN="LV0"_I
 ..N MRG S MRG=$$MRG^W3HZMST(JB,I)
 ..
 ..D TDCD ; --- CODE
 ..
 ..D TDNAME
 ..
 ..I $$CDSRV(A),$$QNV(A)>0,$G(TSHL)'<0 G ETR ; -- IF SERVIS CODE VIEW NAME ONLY
 ..I $$CDSRV(A),$$QNV(A)<0,$G(TSHL)<0 G ETR
 ..
 ..D TDQN
 ..
 ..D TDMH
 ..
 ..S HNST=$J($$HNST^W3HZMST(JB,I),1,1),AHST=HNST
 ..S NOTSFMVC=$P($G(@$$^W3TMPORD@(JB,I)),"~",8)
 ..I '$$^W4SMALL D TDDISC
 ..
 ..I '$$CONDORD(NMB) D  ; -------------- DISCOUNT, GLIST , MANA
 ...D TDGLIST(0,I)
 ..I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D TDMANA
 ..
 ..I $$CONDORD(NMB),'$$^W4AIN D TDSUM ; -------------- DISCOUNT, GLIST , MANA
 ..
 ..D TDIMG
 ..
ETR ..W "</tr>",!
 ..
 ..
 ..I 'OPENADD D  Q
 ...N I1 S I1=I+1
 ...I $$CDCI(I1) D TRCMNT ; --- COMMENT
 ...Q:'$$HASADD(I)
 ...D TRADD
 .
 .
 .I $$LV(A) D  ; -------------- ADDITIONS ---------
 ..N MHT
 ..
 ..I $G(ITRA0)<0&($G(TSHL)'<0) Q
 ..I $G(ITRA0)>0&($G(TSHL)<0) Q
 ..
 ..I $$QN1($$QN(A))<0,$G(TSHL)'<0 Q
 ..I $$QN1^W3HZMST(JB,I)<0,$G(TSHL)'<0 Q
 ..I $$QN1($$QN(A))>0,$G(TSHL)<0 Q
 ..I $$QN1^W3HZMST(JB,I)>0,$G(TSHL)<0 Q
 ..
 ..I 'OPENADD Q
 ..I FIRSTADD=-1 S FIRSTADD=1
 ..
 ..I $$CDA(A) D
 ...S FLA=1
 ...I $$GET^%W1PRM("SHID4")=("LV1"_I) S FLED=2
 ..
 ..S ^AA("W4HZORD",I)=$D(PRMVL)
 ..W "<tr style=""color:"_$$COLORADD^W4CSS($$LV(A))
 .. D BGC1(I)
 .. W """ height="""_$$KF(40)_"px"" id="""_$S($$CDC(A):"CM1",1:"LV1")_I_""""
 ..W " >",!
 ..
 ..D TDTCD
 ..D TDTNAME
 ..D TDTQN
 ..D TDTMH
 ..
 ..S HNST1=$J($$HNST^W3HZMST(JB,I),1,1)
 ..I '$$^W4SMALL D DISCCMST(MHT)
 ..
 ..I '$$CONDORD(NMB) D
 ...D TDGLIST(1,I)
 ..I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D TDTMANA
 ..
 ..I $$CONDORD(NMB),'$$^W4AIN D TDSUM
 ..
 ..D TDTIMG
 ..
 ..W "</tr>",!
 ;
 D SENDED(99999,COLSPAN)
 ;
 I $G(%ARG("HZMH")),'$D(@TMPORD@(1)),'$$^W4SMALL,'$$AIN D
 .D INIT^W3PRCOFR(JB)
 ;
 I '$D(@TMPORD@(1)),'$$^W4SMALL,'$$AIN D  ; -- TABLE HISTORY
 . W "<tr><td colspan=""8"">"
 .  W "<input type=""button"" "
 .  W "style=""height:"_$$KF(50)_"px;width:100%;text-align:center;color:darkred;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"" "
 .  W "value="""_$$^W4DICTHS($$GET^%W1PRM("NMB"))_""" "
 .  W ""_$$^W4TOUCH_"=""TableHistory()"" >"
 . W "</td></tr>",!
 ;
 I $$^W4TABLET'=2,$$VL^W4SMALL'=2 W "</table>",!
 ;
 W "</div>",!
 ;
 D SCROLLDOWN
 Q
 ;
 ;
KF(NUM) ;
 Q $$^W4KF(NUM)
 ;
TRLV0(PRM) ;
 N I,A
 S I=$P(PRM,"^")
 S A=$P(PRM,"^",2)
 N BGC S BGC=$$BGCOLOR(I)
 N HG S HG=$$KF(40)
 N ST
 S ST="<tr id=""LV0"_I_""" "
 I I'=+$$GETP^%W1PRM("TOAI") S ST=ST_" class="""_$S($$NOMOD(I):"wasprinted",1:"forecolor")_""" "
 S ST=ST_" style=""height:"_HG_"px"
 N CLRBG S CLRBG=BGC
 I I=+$$GETP^%W1PRM("TOAI") S CLRBG="yellow"
 I $$TOAICD^W4PRM,$$TOAICD^W4PRM=$$CD(A) S CLRBG="lightblue"
 I $$CDSRV(A),$$QNV(A)>0 S CLRBG="lightblue"
 K PRMVL
 I $D(@$$^W4TMPORD@(I,"MVL")) D
 .S CLRBG=$$BGCMVL
 .K @$$^W4TMPORD@(I,"MVL")
 .S PRMVL=""
 ; 
TRLV01 S ST=ST_"; background-color:"_CLRBG
 I $$CHNORD,'$$NOMOD^W3HZMST(JB,I) D
 .S ST=ST_";cursor:pointer"
 S ST=ST_""""
 ;
 I $$CHNORD,'$$NOMOD^W3HZMST(JB,I) D
 .S ST=ST_" "_$$^W4TOUCH_"=""ClickChnLine('"_I_"')"" "
 S ST=ST_">"
TRLV0E Q ST
 ;
 ;
IFMRG(I) ;
 Q 1
 ;
AINMAIN(QN) ;
 N STPAR0,CD S STPAR0=$$^W4RSTPAR
 S OPENADD=1
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr><td class=""sheetheader"" style=""border:solid 2px brown"" >"
  S CD=$$CD(STPAR0)
  W "&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(CD))_"&nbsp;"
  W "</td>",!
  W "<td>&nbsp;</td>"
  W "<td class=""hdaiqnb"">"
  W $$^%W1DICT("QUANTITY")_"&nbsp;"
  W " <span id=""qnpar0"" style=""color:green"">"_QN_"</span>"
  W "</td>"
  ;
  W "<td class=""hdaiqnb"">&nbsp;"
  W $$^%W1DICT("PRICE")_"&nbsp;"
  I $G(NMB) S PRMHNMB=NMB
  S MH=$$MH^W4P(CD)
  W " <span id=""mhpar0"" style=""color:green"">"_$J(MH,1,1)_"</span>"
  W "</td>",!
  D
  .W "<td class=""hdaiqnb"">&nbsp;"
  .W $$^%W1DICT("TOTAL")_"&nbsp;"
  .W " <span id=""totpar0"" style=""color:green"">"_$J(QN*MH,1,1)_"</span>"
  .W "</td>",!
AINMAINE ;
 W "</tr>",!
 W "</table>",!
 W "<br>",!
 Q
 ;
TRTH(VSBL) ;
 D TRTH^W4HZORHD(VSBL)
 Q
 ;
SETOP ;--------------------- SET TMPOP --------------------
 D TMPOP
 N N S N="" F  S N=$O(@TMPOP@(N)) Q:N=""  I N,N>$$LASTI0^W3HZMST(JB) K @TMPOP@(N)
 ;
 N I S I="" F  S I=$O(@TMPORD@(I))  Q:I=""  I I?1N.N D
 .I $$LVI(I)=0,I=$$LASTI0^W3HZMST(JB),'$$NOMOD(I) S @TMPOP@(I)=9 Q
 .I $$LVI(I)=0,I<$$LASTI0^W3HZMST(JB),$$OPENADD(I)=9 S @TMPOP@(I)=0 Q
 .I $$LVI(I)=0,'$D(@TMPOP@(I)) S @TMPOP@(I)=0
 Q
 ;
VWCD(CD) ;
 N CD1 S CD1=$G(CD)
 I $L(CD1)>4 D
 .N LCD S LCD=$L(CD1)
 .N FSZ S FSZ=$S(LCD=5:10,LCD=6:8,1:7)
 .S CD1="<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(FSZ)_""">"_CD1_"</span>"
 Q CD1
 ;
 ;
TDCD ;
 W "  <td style=""text-align:center"" "
 N CD S CD=$$CD(A)
 N CD1 S CD1=$$SMB^W4BLNMVC(CD)_CD
 N VL S VL=$$VWCD(CD1)
 ;
 I $$CDSRV(A) G TDCDE
 ;
 I $$CDA(A) S VL="&nbsp;"
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$NOMOD(I),'$$PREZAT(A),'$$CDA(A),'$$MSK^W4P($$CD(A)) D
 .S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold;cursor:pointer"">-</span><br>"_VL
 .W " "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',-1)"""
 ;
TDCDE ;
 W " >"_VL_"</td>",!
 Q
 ;
 ;
TDINS(PRM)
 N I,A
 S I=$P(PRM,"^")
 S A=$P(PRM,"^",2,200)
 N NMB S NMB=$$GET^%W1PRM("NMB")
 ;
 N CD S CD=$$CD(A)
 N CD1 S CD1=$$SMB^W4BLNMVC(CD)_CD
 N VL S VL=$$VWCD(CD1)
 ;
 S ST="<td style=""text-align:center"" "
 ;
 I $$CDSRV(A) G TDINS1
 ;
 I $$CDA(A) S VL="&nbsp;"
 ;
 I '$$CDA(A) D
 .S VL="<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";font-weight:bold;cursor:pointer"">-</span><br>"_VL
 .S ST=ST_" "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',-1)"" "
 ;
TDINS1
 S ST=ST_">"_VL_"</td>"
 ;
 S ST=ST_$$TDNAMEST(A,I)
 ;
 I $$CDSRV(A),$$QNV(A)>0 G TDINSE
 ;
 S ST=ST_$$TDQNST(JB,A,I)
 S ST=ST_$$TDMHST(A,I)
 ;
 N HNST,AHST S HNST=$J($$HNST^W3HZMST(JB,I),1,1),AHST=HNST
 N NOTSFMVC
 S NOTSFMVC=$P($G(@$$^W3TMPORD@(JB,I)),"~",8)
 ;
 I '$$^W4SMALL D
 .N TDDISCST S TDDISCST=$$TDDISCST(A,I)
 .S ST=ST_TDDISCST
 ;
 I '$$CONDORD(NMB) D  ; -------------- DISCOUNT, GLIST , MANA
 .S ST=ST_$$TDGLISTST(0,A,I)
 I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 S ST=ST_$$TDMANAST(A,I)
 ;
 I $$CONDORD(NMB),'$$^W4AIN S ST=ST_$$TDSUMST(JB,A,I) ; -------------- DISCOUNT, GLIST , MANA
 ;
 S ST=ST_$$TDIMGST(JB,A,I)
TDINSE ;
 Q ST
 ;
 ;
TDNAME ;
 W $$TDNAMEST(A,I)
 Q
 ;
TDNAMEST(A,I)
 N ST S ST="  <td "
   I $$CDSRV(A),$$QNV(A)>0 S ST=ST_" colspan=""6"" "
   I '$$NOEDITMOD(I) D
   .I $$D^W4EZA($$CD(A)),$$MANA^W4PRM=1,'$$^W4AIN Q
   .S ST=ST_$$CMNTBORDER(I,$$BGCOLOR^W4CSS)
   ;
   I '$$^W4AIN,$$CUR(I) S ST=ST_" class=""cur"" " D KILL^%W1PRM("CURLN")
   I $$CDA(A) S ST=ST_" class=""hdgr"" "
   ;
   I '$$NOEDITMOD(I) D
   .I $$D^W4EZA($$CD(A)),$$MANA^W4PRM=1,'$$^W4AIN Q
   .S ST=ST_" "_$$^W4TOUCH_"=""Comment('LV0"_I_"')"""
   S ST=ST_" >"
   ;
   S ST=ST_"<span style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;"_$$NAM(A)_"</span>"
   ; 
 S ST=ST_"  </td>"
 Q ST
 ;
CUR(I) ;
 N CURLN S CURLN=$$GETP^%W1PRM("CURLN")
 I $L(CURLN),CURLN=("LV0"_I) S WASCUR=1 Q 1
 N LASTI0 S LASTI0=$$LASTI0^W3HZMST(JB)
 I LASTI0=I,'$G(WASCUR) Q 1
 Q 0
 ;
TDQN ;
 W $$TDQNST(JB,A,I)
 Q
 ;
TDQNST(JB,A,I) ;
 N ST
 S ST="  <td style=""width:15%"" align=""center"" style=""vertical-align:middle"" "
  I $$MULTYPOSSIBLE(I) D
  . S ST=ST_" "_$$^W4TOUCH_"=""MultyLine('LV0"_I_"')"" "
 S ST=ST_">"
 ;
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 I $$CDA(A)!$$CDC(A)!$$CDSRV(A) S ST=ST_"&nbsp;" G TDQNE
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$CDA(A) D QNINP
 ;
 I MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$CDA(A) D
 . S ST=ST_" <table dir=""LTR"" width=""100%"" height=""100%"" cellpadding=""0"" cellspacing=""0"" >"
 . N HG S HG=$$KF(30)
 . S ST=ST_"  <tr height="""_HG_"px""><td>" D QNINP S ST=ST_"</td></tr>"
 . S ST=ST_"  <tr><td"
 .   S ST=ST_" style=""background-color:white;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)
 .   S ST=ST_";text-align:right"">"_+$$QNV(A)_"-"_MRG_"="_$G(ITRA0)_"</td></tr>"
 . S ST=ST_" </table>"
 ;
 I $$EDIT!$$NOIMG!$$OTH!$$CHNORD,'$$CDA(A) D
 .N VL S VL=$$ITRAST^W3HZMST(JB,I)
 .S ST=ST_"  <span dir=""LTR"" style=""font-size:"_$$^W3FSZ(14)_";color:"_$S(VL<0:"red",1:"black")_""">"_VL_"</span>"
 ;
TDQNE ;
 S ST=ST_"  </td>"
 Q ST
 ;
 ;
TDMH ;
 W $$TDMHST(A,I)
 Q
 ;
 ;
TDMHST(A,I) ;
 S MRG=$G(MRG)
 N VL S VL=$$MH(A)
 I VL<0 S VL="<span dir=""LTR"" style=""color:red"">"_VL_"</span>"
 N ST S ST="  <td style=""text-align:center"""
 ;
 I $$CDA(A)!$$CDSRV(A),($$CDSRV(A)'=3) S VL="&nbsp;" G TDMHE
 ;
 I 'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,'$$NOMOD(I),'$$PREZAT(A),'$$MSK^W4P($$CD(A)) D
 .S ST=ST_" "_$$^W4TOUCH_"=""Plus('"_$$QNTDI(I)_"',1)"""
 .S VL="<span style=""color:green;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer"">+</span><br>"_VL
 ;
 I '$$AIN,'MRG,'$$EDIT,'$$NOIMG,'$$OTH,'$$CHNORD,$$NOMOD(I),'$$PREZAT(A),$$CD(A),'$$CDSRV(A) D
 .S ST=ST_" "_$$^W4TOUCH_"=""Associate('"_I_"')"""
 .S VL=VL_"<br><span style=""font-size:"_$$^W3FSZ(7)_";color:green"">"_$$^%W1DICT("TOASCPRESSHERE")_"</span>"
 ;
TDMHE ;
 S ST=ST_">"_VL_"</td>"
 Q ST
 ;
 ;
TDSUM ;
 W $$TDSUMST(JB,A,I)
 Q
TDSUMST(JB,A,I) ;
 N ST
 N VL S VL=$J($$MH(A)*$$QNMH^W3HZMST(A)*(100-$$HNST^W3HZMST(JB,I))*.01,2,2)
 I $$LV(A),'NOTSFMVC S VL=$J(VL*(100-AHST)*.01,2,2)
 I $$CDA(A) S VL="&nbsp;"
 S ST="  <td id=""idsum"_I_""" style=""width:14%;text-align:center"
 I VL<0 S ST=ST_";color:red"
 S ST=ST_""""
 S ST=ST_" dir=""LTR"" "
 S ST=ST_">"_VL_"</td>"
 Q ST
 ;
TDDISC ;---- ITEM DISCOUNT
 W $$TDDISCST(A,I)
 Q
 ;
TDDISCST(A,I) ;
  N ST S ST="<td id='LV0"_I_"disc' class=""disc"""
  ;
  I $$CDA(A)!$$CDSRV(A) S ST=ST_">&nbsp;" G TDDISCE
  N CD S CD=$$CD(A)
  I CD'="",$$^W4PRTBH(CD) S ST=ST_">&nbsp;" G TDDISCE
  ;
  S ST=ST_" dir=""LTR"" "
  I '$$TS(I) S ST=ST_""_$$^W4TOUCH_"=""ClickDiscSt('LV0"_I_"')"" "
  S ST=ST_" >"
  ;
  N HNST1 S HNST1=""
  I HNST S HNST1=HNST
  ;
  I '$$MHA($G(A)) S HNST1=""
  ;
  S ST=ST_$S($G(HNST1):HNST1,1:"&nbsp;")
  ;
  S CMST=$P($G(@$$^W3TMPORD@(JB,I)),"~",7)
  ;
  I $$LVI(I)=0,$D(@TMPORD@("HNH",I)) D
  .N SB1 S SB1=$P($G(^(I)),"*",4) Q:$TR(SB1," ","")=""
  .I '$$MHA($G(A)) S SB1=""
  .S CMST=$S($L(CMST):CMST_";",1:"")_SB1
  ;
TDDISC1 ;
  I $L(CMST) D
  . I HNST1 S ST=ST_"<br>"
  . S ST=ST_"<span class=""disccmst"">"_$$H2U^%L1FRM(CMST)_"</span>"
  ;
TDDISCE ;
 S ST=ST_"</td>"
 Q ST
 ;
 ;
TDSP W "<td>&nbsp;</td>",! Q
 ;
TDGLIST(UR,I) ;
 I $$LVI(I)>1 D TDSP Q
 I $$^W4AIN D TDSP Q
 I $$LVI(I),'$$EZAT^W3HZMST(JB,I) D TDSP Q
 ;
 W $$TDGLISTST(UR,A,I)
 Q
 ;
TDGLISTST(UR,A,I)
 N ST
 S ST="<td id='LV"_UR_I_"glist' class=""glist"" " ;---- GUESTS LIST
 I '$$NOMOD(I) S ST=ST_" dir=""LTR"" "_$$^W4TOUCH_"=""ClickGList('LV"_UR_I_"')"" "
 S ST=ST_">"
  S GLIST=$$GLIST^W3HZMST(JB,I)
  S ST=ST_$S(GLIST:GLIST,GLIST="*":$$^%W1DICT("ALL"),1:"&nbsp;")
 S ST=ST_"</td>"
 Q ST
 ;
TDMANA ;
 W $$TDMANAST(A,I)
 Q
 ;
TDMANAST(A,I) ;
 N ST
 S ST="<td id='LV0"_I_"mana' class=""mana"" " ;---- MANA
 I $$CDA(A)!$$CDSRV(A) S ST=ST_">&nbsp;" G TDMANAE
 I '$$NOMOD(I),$$PRMANA1 D
 .S ST=ST_" dir=""LTR"" "_$$^W4TOUCH_"=""ClickMana('LV0"_I_"')"" "
 S ST=ST_">"
  S MANA=$$MANA^W3HZMST(JB,I)
  S ST=ST_$S(MANA:$G(MN(MANA)),1:"&nbsp;")
TDMANAE ;
 S ST=ST_"</td>"
 Q ST
 ;
 ;
TDIMG ;
 W $$TDIMGST(JB,A,I)
 Q
 ;
TDIMGST(JB,A,I) ;
 I '$G(TSHL) N TSHL S TSHL=$$TSH^W3HZMST(JB)
 N ST S ST=""
 I $$CDI(I),$$^W4CDSRV($$CDI(I)) S ST="<td>&nbsp;</td>" Q ST
 I $$CHNORD S ST="<td>&nbsp;</td>" Q ST
 ;
 I $$OTH,'$$TS(I) D  Q ST
  .S ST="   <td align=""center"">"
  .I +$$HNST^W3HZMST(JB,I)=100!(+$$ITRAST^W3HZMST(JB,I)=0) S ST=ST_"&nbsp;</td>" Q
  .
  .S ST=ST_"    <input type=""checkbox"" name=""chk"" id=""chk"_I_""" "
  .        I $$MOTH(I) D
  ..         S ST=ST_" checked=""checked"" "
  .S ST=ST_"     onClick=""ClickOTH('chk"_I_"','lb"_I_"','lbnm"_I_"','chk',false)"" >"
  .
  .S ST=ST_"    <label for=""chk"_I_""" id=""lb"_I_""" name=""lb"" "
  .S ST=ST_"     class=""bgbtn"" "
  .S ST=ST_"     style=""cursor:pointer"">"
  . D
  . .I $$MOTH(I) S ST=ST_$$SHOWV^W3CSM Q
  . .S ST=ST_$$SHOWO^W3CSM
  .S ST=ST_"    </label>"
  .S ST=ST_"</td>"
 ;
 I $$EDIT,'$$CONDORD(NMB) D  Q ST
 .S ST="  <td align=""center"" style=""width:15%"" >"
 .S ST=ST_"&nbsp;"
 .S ST=ST_"  </td>"
 ;
 I '$D(GORD) D GORD
 N A S A=$G(@GORD@(I))
 ;
 I '$$EDIT,$$ITRAST^W3HZMST(JB,I) D  Q ST
 .S ST="  <td id=""IMG"_I_""" align=""center"" >"
 .D
 ..I $$CDA(A)!$$CDH(A) S ST=ST_"&nbsp;" Q
 ..I $$DELETED(I) S ST=ST_"&nbsp;" Q
 ..I $$TS(I)>0 D  Q
 ...N SUBBILL S SUBBILL=""
 ...N J S J="" F  S J=$O(@GORD@("TS",I,J)) Q:J=""  S SUBBILL=SUBBILL_J_","
 ...S ST=ST_"<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(7)_""">"
 ... S ST=ST_$$^%W1DICT("SUBBILL")_" "_$E(SUBBILL,1,$L(SUBBILL)-1)
 ...S ST=ST_"</span>"
 ..I $$ITRAST^W3HZMST(JB,I,"",1)'>0,$G(TSHL)'<0 S ST=ST_"&nbsp;" Q
 ..I $$ITRAST^W3HZMST(JB,I,"",1)>0,$G(TSHL)<0 S ST=ST_"&nbsp;" Q
 ..I $$QNV(A)<0,$G(TSHL)'<0 S ST=ST_"&nbsp;" Q
 ..I $$QNV(A)>0,$G(TSHL)<0 S ST=ST_"&nbsp;" Q
 ..D IMGED(I) Q
 .S ST=ST_"  </td>"
 ;
 S ST=ST_"<td>&nbsp;</td>"
 Q ST
 ;
 ;
TRCMNT ;
 W "<tr style=""color:red"
 I $L($G(BGC)) W ";background-color:"_BGC
 W """ id=""CM1"_(I1)_""" height="""_$$KF(40)_"px"">"
  W "<td>&nbsp;</td>"
  W "<td style=""font-weight:bold"" >"
  W $$NAMI(I1)
  W "</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  ;
  I '$$^W4SMALL D
  .W "<td>&nbsp;</td>"
  ;
  I $$CONDORD(NMB),'$$^W4AIN D
  .W "<td>&nbsp;</td>"
  ;
  I '$$CONDORD(NMB) D
  .W "<td>&nbsp;</td>"
  I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D
  .W "<td>&nbsp;</td>"
  ;
  W "<td>&nbsp;</td>"
 W "</tr>",!
 S I1=I1+1
 Q
 ;
 ;
BGC1(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 I $D(PRMVL) W ";background-color:"_$$BGCMVL G BGC1E
 N CD1 S CD1=$$CD(A)
 I $$EZAT^W3HZMST(JB,I),'$$^W4AIN W ";background-color:"_$$BGCOLOR(I) Q
 I $$LV(A)>0,$$QNIT1^W3HZMST(JB,I)=0,'$$CDA(A),'$$CDC(A) D  Q
 .W ";background-color:pink"
 I $L($G(BGC)) W ";background-color:"_BGC
BGC1E Q
 ;
 ;
TRADD ;----------- TOSAFOT BE ZURA MERUKEZET
 N SUMADD S SUMADD=$J($$SUMADD(I1),1,1)
 W "<tr style=""color:green"
 I $L($G(BGC)) W ";background-color:"_BGC
 ;
 W """ id=""AD1"_I1_""" height="""_$$KF(40)_"px"">"
  W "<td>&nbsp;</td>"
  W "<td>"_$$^%W1DICT("ADDITIONS")_"</td>"
  W "<td>&nbsp;</td>"
  I '$$^W4AIN D
  .W "<td style=""text-align:center"">"_SUMADD_"</td>"
  I '$$^W4SMALL D
  .N CMST S CMST=""
  .D DISCCMST(SUMADD)
  ;
  I $$CONDORD(NMB),'$$^W4AIN D
  .W "<td>"_SUMADD_"</td>"
  ;
  I '$$CONDORD(NMB) D
  .W "<td>&nbsp;</td>",! ; -- mishbezet soadim
  I '$$CONDORD(NMB)!$$^W4SMALL,$$PRMANA1 D
  .W "<td>&nbsp;</td>",! ; -- mishbezet MANA
  ;
  W "<td align=""center"">"_$$IMGOPENADD(I)_"</td>"
 W "</tr>",!
 Q
 ;
 ;
TDTCD ;
 W "  <td>"_$S($$CDA(A)!$$CDH(A)!$$CDC(A):"&nbsp;",1:$$VWCD(CD))_"</td>",!
 Q
 ;
TDTNAME ;
 W "<td"_$S($$CDA(A):" class='hdgr'",$$CDC(A):" style=""color:red;font-weight:bold""",I=CUR:" class='cur'",1:"")
      I $$CDA(A) W " id='"_$G(IDMAIN)_$$CD(A)_"'"
      I '$$NOEDITMOD(I) W " "_$$^W4TOUCH_"=""Comment('LV1"_I_"')"" style="""_$$CMNTBORDER(I,"green")_""""
 W " >"
         W $S(I=CUR:"<span>*</span>",1:"&nbsp;")
         W $$NAM(A)
     D
     .N QN S QN=$$QN2(A)
     .W "<br>"_$$^W4SHOWPZ(QN)
 W "</td>",!
 Q
 ;
TDTQN ;
 I $$CDC(A)!$$CDA(A) W "<td>&nbsp;</td>" Q
 ;
 N QN2 S QN2=$$QN2(A)
 I QN2[":" S QN2=$P(QN2,":")
 I QN2["|" S QN2=$P(QN2,"|")
 ;
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 ;
 I QN2,$$^W4MULTY!'$$^W4EZAT($G(PRT)) D
 .S QN2=+$G(ITRA0)_"*"_QN2
 ;
 I QN2,'$$^W4MULTY,$$^W4EZAT($G(PRT)),$$LV(A)=1 D
 .S QN2=$$QNV(A)-MRG
 ;
 I $$LV(A)=2 D
 .N QNIT1
 .S QNIT1=$$QNIT1^W3HZMST(JB,I)
 .S QN2=QNIT1_"*"_QN2
 ;
 W "  <td dir=""LTR"" align=""center"""
 W ">"_$S('QN2&'MRG:"&nbsp;",1:QN2)
 I MRG D
  .W "<span style=""background-color:white;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)
  .W ";text-align:right"">"_"="_$$QNV(A)_"-"_MRG_"</span>"
 W "</td>",!
 Q
 ;
 ;
TDTMH ;
 S MHT=$S($$CDH(A)!$$CDC(A)!$$CDA(A):"&nbsp;",1:$$MH(A))
 I MHT<0 S MHT="<span dir=""LTR"" style=""color:red"">"_MHT_"</span>"
 ;
 W "  <td align=""center"">"_MHT_"</td>",!
 Q
 ;
TDTMANA ;
 W "<td id='LV1"_I_"mana' class=""mana"" " ;---- MANA
  W " dir=""LTR"" "_$$^W4TOUCH_"=""ClickMana('LV1"_I_"')"" "
  I '$$NOMOD(I) W " dir=""LTR"" "
 W ">"
  S MANA=$$MANA^W3HZMST(JB,I)
  W $S(MANA:$G(MN(MANA)),1:"&nbsp;")
 W "</td>",!
 Q
 ;
TDTIMG ;-- ICON + OR -
 W "  <td align=""center"""
 W ">"
  I '$$EDIT,'$$^W4AIN,'$$OTH,'$$CHNORD D
 . I $G(FIRSTADD)=1,$$CDCI(I)!$$CDHI(I) W "&nbsp;" Q
 . I $G(FIRSTADD)=1,$$CDCI(I-1)!$$CDHI(I-1) W $$IMGOPENADD(I-2) S FIRSTADD=0 Q
 . I $G(FIRSTADD)=1,'$$CDCI(I),'$$CDHI(I),$$LVI(I-1)=0 W $$IMGOPENADD(I-1) S FIRSTADD=0 Q
 W "&nbsp;"
 W "  </td>",!
 Q
 ;
 ;
SCROLLDOWN ;
 W "<script>",!
 W " ScrollDown()",!
 W "</script>",!
 Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
TMPORD1 S TMPORD1="^[$$^W3MAIN]TMPORD1(JB)"
 Q
 ;
TMPOP S TMPOP=$$^W4MAIN("TMPOP")
 Q
 ;
CMNTBORDER(I,COLOR)
 I '$$NOEDITMOD(I),'$$EDIT Q "border:"_$G(COLOR,$$BGCOLOR^W4CSS)_" solid 2px;cursor:pointer"
 Q ""
 ;
BGCOLOR(I) ;
 N BGC,A D TMPORD,TMPOP S A=$G(@TMPORD@(I))
 S BGC="e5e5e5" ;"#eaeaea"
 I $$OPENADD(I)=2 S @TMPOP@(I)=1 Q "lightyellow"
 I $G(FLED) Q "lightyellow"
 I $$NOMOD(I) S BGC="white"
 I $$DELETED(I) Q "pink"
 I $$QNV(A)>0,$$ITRAST^W3HZMST(JB,I)<$$QNV(A) Q "#FFE8E8" ; -- PINK
 N CDPAR S CDPAR=$$CD($$GETP^%W1PRM("STPAR"))
 ;;I $L(CDPAR),$$CDST^W3HZMST(JB,I)=CDPAR Q "lightyellow"
 Q BGC
 ;
DELETED(I) ;
 N A D TMPORD S A=$G(@TMPORD@(I))
 N TSHL S TSHL=$$TSH^W3HZMST(JB)
 I $$QN1(A)<0,TSHL'<0 Q 1
 I $$QN1(A)>0,TSHL<0 Q 1
 I TSHL'<0,$$QN1(A)>0,$$ITRAST^W3HZMST(JB,I)'>0,'$$CDC(A),'$$CDA(A) Q 1
 I TSHL<0,$$QN1(A)<0,$$ITRAST^W3HZMST(JB,I)'<0,'$$CDC(A),'$$CDA(A) Q 1
 Q 0
 ;
TSF(I) ;
 N CD S CD=$$CDI(I)
 I $$TSF^W4HZPRTN(CD) Q 1
 I $$LVI(I)=0&($$LVI(I+1)=1&'$$CDCI(I+1)) Q 1
 I $$LVI(I)=0&($$LVI(I+2)=1&$$CDCI(I+1)) Q 1
 I $$LVI(I)=1&($$LVI(I+1)>1&'$$CDCI(I+1)) Q 1
 I $$LVI(I)=1&($$LVI(I+2)>1&$$CDCI(I+1)) Q 1
 Q 0
 ;
NOIMG(STAM) ;
 I $G(%ARG("NOIMG")) Q 1
 Q 0
 ;
OTH(STAM) ;
 I $$GETP^%W1PRM("MOTH") Q 1
 Q 0
 ;
MOTH(N) ;
 I $D(@$$^W4MAIN("TMPOTH")@(N)) Q 1
 Q 0
 ;
SETOTH(I) ;
 I '$D(@$$^W4MAIN("TMPOTH")@(I)) S ^(I)="" Q 1
 K @$$^W4MAIN("TMPOTH")@(I)
 Q 0
 ;
CHNORD(STAM) ;
 Q $$CHNORDOPT^W4HZORHD
 ;
EDIT(STAM) ;
 I $$GETP^%W1PRM("SHID")["LV" Q 1
 Q 0
 ;
EDITLINE(I) ;
 I $$GETP^%W1PRM("SHID")=("LV0"_I) Q 1
 Q 0
 ;
IMGED(I) ;
 S ST=$G(ST)
 I $$NOIMG S ST=ST_"&nbsp;" Q
 D TMPORD
 I $$BSLPAR($$CDI(I)) S ST=ST_"&nbsp;" Q
 N WD,HG S WD=$$KF($$SZIMG),HG=$$KF($$SZIMG)
 ;
 I $$SMALL^W3FSZ S WD=90,HG=90
 ;
 N IMG S IMG="w4del20.png"
 I $$SMALL^W3FSZ S IMG="w4del21.png"
 I $$USEDIT(I) D
 .S IMG="w4edit.jpg"
 .I $$SMALL^W3FSZ S IMG="w4edit1.jpg"
 S ST=ST_"    <img src="""_IMG_""" ";;style=""width:"_WD_"px;height:"_HG_""" "
 S ST=ST_"alt="""_$$^%W1DICT("EDIT")_"""  "_$$^W4TOUCH_"=""EditRowOrd('LV0"_I_"')"" >"
 Q
 ;
SZIMG(STAM)
 I $$^W4SMALL Q 25
 Q 35
 ;
USEDIT(I) ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSD(NMB),$$TSF(I),$$NOTSFMSD^W4PRM Q 0
 I $$^W4MSD(NMB),$$EZATI(I),$$NOTSFMSD^W4PRM=1 Q 0
 I '$$^W4SMALL,'$$NOMOD(I)!($$EZATI(I)&'$$^W4AIN),$$TSF(I) Q 1
 I $$^W4SMALL,$$EZATI(I),'$$^W4AIN Q 1
 Q 0
 ;
EZATI(I) ;
 D:'$D(TMPORD) TMPORD
 N A S A=$G(@TMPORD@(I))
 I $$^W4AIN Q 0
 Q $$EZAT(A)
 ;
EZAT(A) ;
 I $$LV(A) Q 0
 S CD=$$CD(A)
 I $$^W4EZAT(CD) Q 1
 Q 0
 ;
HASADD(I) ;
 D:'$D(TMPORD) TMPORD
 N A S A=$G(@TMPORD@(I+1))
 I A="" Q 0
 I $$LV(A)=0 Q 0
 I $$CDC(A)!$$CDH(A),'$$LVI(I+2) Q 0
 Q 1
 ;
OPENADD(I) ;
 I $$OPENADD^W4PRM Q 1
 I $$^W4AIN Q 1
 I '$$NOMOD^W3HZMST(JB,I) Q 1
 I $G(CURLN)'="",+$E(CURLN,3,7)=I Q 1
 Q +$G(@$$^W4MAIN("TMPOP")@(I))
 ;
SUMADD(I) ;
 N QNIT0,COMPDEL
 S COMPRDEL=1
 Q $$MHADD^W4ORDVW(I,1)
 ;
IMGOPENADD(I) ;
 I $$EDIT Q "&nbsp;"
 I I=$$LASTI0^W3HZMST(JB),'$$NOMOD(I) Q "&nbsp;"
 N HG,WD
 S HG=$$KF($$SZIMG),WD=$$KF($$SZIMG)
 I '$$OPENADD(I) Q "<img src=""w4openadd.jpg"" height="""_HG_"px"" width="""_WD_"px"" onClick=""OpenAdd('LV0"_I_"')"" />"
 Q "<img src=""w4closeadd.jpg"" height="""_HG_"px"" width="""_WD_"px"" onClick=""CloseAdd('LV0"_I_"')"" />"
 ;
LV(A) ;
 N LV
 S LV=$P(A,"~",1)
 Q LV
 ;
LVI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$LV(A)
 ;
CODE(STID) ;
 N CD S CD=$P($$TXT(STID),"~",2)
 Q CD
 ;
TXT(STID)
 N SH S SH=$$FINDSH(STID)
 I SH="" Q "NOK"
 D TMPORD
 Q $G(@TMPORD@(SH))
 ;
TXTNEXT(STID)
 N SH S SH=$$FINDSH(STID)
 I SH="" Q "NOK"
 D TMPORD
 Q $G(@TMPORD@(SH+1))
 ;
CD(A) ;
 N CD
 S CD=$P(A,"~",2)
 I CD="" Q "&nbsp;"
 Q CD
 ;
CDI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CD(A)
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 Q 0
 ;
CDSRV(A) ;
 N CD S CD=$$CD(A) I 'CD Q 0
 Q $$^W4CDSRV(CD)
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CDHI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CDH(A)
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDCI(I) ;
 N LV,A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$CDC(A)
 ;
NAM(A) ;
 N NM
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAMI(I)
 N A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 Q $$NAM(A)
 ;
MH(A) ;
 N MH
 S MH=$$MHA(A)
 I MH="" Q "&nbsp;"
 ;;D
 .N DT S DT=$$^%L1DC($$DATK^W3HZMST(JB),3)
 .N AHMAM S AHMAM=$$MAMD^W4L(DT)
 .I $$^W4MSL($$GETP^%W1PRM("NMB"))&$$LMAM^W4PRM S MH=$J(MH*100/(100+AHMAM),2,2)
 Q $J(MH,1,1)
 ;
 ;
MHA(A) Q $P(A,"~",4)
 ;
QN(A) ;
 I $$CDC(A) Q "&nbsp;"
 I $$CDH(A) Q "&nbsp;"
 N QN
 S QN=$$QNV(A)
 I QN["*",$P(QN,"*")=1 S QN=$P(QN,"*",2)
 I 'QN Q "&nbsp;"
 Q QN
 ;
QN1(QN) ;
 I QN["*" Q QN*$P(QN,"*",2)
 Q +QN
 ;
QN2(A) I $$QNV(A)["*" Q $P($$QNV(A),"*",2)
 Q $$QNV(A)
 ;
MRG(I) ;
 I '$D(GORD) D GORD
 Q $G(@GORD@("MRG",I))
 ;
TS(I) ;
 N OK S OK=0
 I '$D(GORD) D GORD
 N N S N="" F  S N=$O(@GORD@("TS",I,N)) Q:N=""  I $G(^(N)) S OK=1 Q
 Q OK
 ;
QNV(A) Q $P(A,"~",5)
 ;
QNDIF(A) Q $P(A,"~",11)
 ;
 ;
QNINP ;
 N VL S VL=$$ITRAST^W3HZMST(JB,I)
 ;;W "I="_I_"  VL="_VL,! ; ***
 I VL?1"."1N.N S VL="0"_VL
 ;
 I $$MULTYPOSSIBLE(I) D  Q
 .S ST=ST_"<span "_$$^W4TOUCH_"=""MultyLine('LV0"_I_"')"" >"
 . S ST=ST_VL
 .S ST=ST_"</span><br>"
 .S ST=ST_"<span style=""font-size:"_$$^W3FSZ(7)_";color:darkblue"">"
 . S ST=ST_$$^%W1DICT("FORMULTYPRESSHERE")
 .S ST=ST_"</span>"
 ;
 I $$MSKI(I) S VL=$J(VL,3,3)
 ;
 S ST=ST_"<input type=""text"" dir=""LTR"" "
 I '$$MSKI(I) D
 .S ST=ST_"size=""2"" maxlength=""2"""
 I $$MSKI(I) D
 .S ST=ST_"size=""5"" maxlength=""5"""
 ;
 S ST=ST_" name="""_$$QNTD(I)_""""
 N HG,WD
 S HG=$$KF(35),WD=$$KF(35)
 I $$^W4SMALL S (HG,WD)=40
 ;
 S ST=ST_" style=""font-size:"_$$^W3FSZ($S($$MSKI(I):10,1:16))_";text-align:center;"
   S ST=ST_"zIndex:1;"
   S ST=ST_"height:"_HG_"px;width:"_WD_"px"
   I $$1024^W4WDSCR S ST=ST_";position:relative;top:2px;"
   I $$PREZAT(A)!$$NOMOD(I),VL>0 S ST=ST_";color:grey"
   I VL<0 S ST=ST_";color:red"
   I '$$NOMOD(I),'$$PREZAT(A),'$$^W4AIN S ST=ST_";cursor:pointer"
 S ST=ST_""""
 ;
 S ST=ST_" id="""_$$QNTDI(I)_""""
 S ST=ST_" onFocus=""this.style.background-color:lightyellow;"
 S ST=ST_""" "
 I $$^W4SMALL!$$^W4TABLET S ST=ST_" readonly=""readonly"" "
 S ST=ST_" dir =""LTR"" value="""_VL_""" "
 ;
 I '$$PREZAT(A),'$$^W4SMALL D
 .I VL>0,'$$NOMOD(I),'$$^W4AIN D
 ..S ST=ST_" "_$$^W4TOUCH_"=""Click('"_$$QNTDI(I)_"')"""
 ;
 S ST=ST_" />&nbsp;"
 Q
 ;
 ;
MSKI(I) ;
 I $$MSK^W4P($$CDI(I)) Q 1
 Q 0
 ;
QNTD(SH) ;
 Q "QN"_SH
 ;
QNTDI(SH) ;
 Q "QNID"_SH
 ;
MULTYPOSSIBLE(I) ;
 N A D:'$D(TMPORD) TMPORD
 S A=$G(@TMPORD@(I))
 I $$CDA(A)!$$CDSRV(A) Q 0
 I $$ITRAST^W3HZMST(JB,I)'>0,$$TSH^W3HZMST(JB,I)'<0 Q 0
 I $$ITRAST^W3HZMST(JB,I)>0,$$TSH^W3HZMST(JB,I)<0 Q 0
 I $$EDIT Q 0
 I $$NOIMG Q 0
 I $$CHNORD Q 0
 I $$OTH Q 0
 I $G(@$$^W4PRM@("NOMULTYPOSSIBLE")) Q 0
 I $$NOMOD(I),$$LVI(I)=0,'$$^W4AIN,'$$MSKI(I),'$$^W4SMALL Q 1
 Q 0
 ;
NMTDD(SH) ;
 Q "DL"_SH
 ;
NMTDDI(SH) ;
 Q "DLID"_SH
 ;
 ;
HASCMNT(PRM) ;
 N GORD D GORD
 N OKC S OKC=0
 S SH=$$FINDSH(PRM) I SH="" Q "0;ROWNUMBERISWRONG"
 I $$LVI(SH)'=0 Q "0;ISNOTMAINITEM"
 N N S N=SH F  S N=$O(@GORD@(N)) Q:N=""  I N Q:$$LVI(N)=0  D  Q:OKC
 .I $$CDI(N)["-C" S OKC=1
 Q OKC
 ;
 ;
MULTYROW(PRM) ;
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-MULTYROW","PRM=PRM")
 I '$D(GORD) D GORD
 N CMN S CMN=$P(PRM,";",2)
 S PRM=$P(PRM,";")
 S SH=$$FINDSH(PRM) I SH="" Q "0;ROWNUMBERISWRONG"
 ;
 N LAST S LAST=$O(@GORD@(9999),-1)
 I SH=LAST S PRL=1 ; LAST LINE
 ;
 I $$LV($G(@GORD@(SH)))'=0 Q "0;ISNOTMAINITEM"
 ;
 N TMPORDD S TMPORDD=$$^W4MAIN("TMPORDD") K @TMPORDD
 M @TMPORDD=@TMPORD
 N MULTYROW S MULTYROW=1
 I CMN S MULTYROW=2
 D RESTNOMOD(SH,1,LAST)
 N PORTDISP S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
 N A S A=$G(@TMPORD@(LAST))
 I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
MULTYROWE ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 D KILL3^W4MENU
 Q 1
 ;
 ;
DELROW(PRM) ; DELETE ITEM ROW WITH SETS (PRM=ID LV0) OR SET (PRM=ID LV1)
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-DELROW","PRM=PRM")
 ;
 I PRM="BSL" D  G DELROWE
 .N HZM S HZM=$$GETP^%W1PRM("HZM")
 .I $$^W4ISORD(HZM),$D(@$$^W4ORD@(HZM,"BSL","NKDPAY"))!$D(@$$^W4ORD@(HZM,"BSL","NKD"))!$$^WBISBON(HZM,$$^W4TMPORD) D
 ..D CANINV^WBFUNC(HZM)
 .D ^WBCLRINV($$GETP^%W1PRM("HZM"),$$^W4TMPORD,1)
 .K @$$^W4TMPORD@("BSL")
 ;
 D PUT^%W1PRM("DELROW",1)
 ;
 N GORD D GORD
 N QNDEL
 ;
 I PRM[";" S QNDEL=$P(PRM,";",2),PRM=$P(PRM,";")
 ;
 S SH=$$FINDSH(PRM) Q:SH=""
 ;
 N LAST S LAST=$O(@GORD@(9999),-1)
 I SH=LAST S PRL=1 ; LAST LINE
 ;
 I PRM["LV0",$$LV($G(@GORD@(SH)))'=0 D PUT^%W1PRM("DELROW",-1) G DELROWE
 I PRM["LV1",$$LV($G(@GORD@(SH)))'=1 D PUT^%W1PRM("DELROW",-2) G DELROWE
 ;
 I '$G(QNDEL) S QNDEL=$$ITRAST^W3HZMST(JB,SH)
 ;
 I PRM["LV0" D DEL^W4SET11(SH)
 ;
 I $$NOMOD(SH),PRM["LV0" D  G DELROWE  ; -- DELETE ITEM WAS PRINTED
 .D DELNOMOD(SH,QNDEL,$$GET^%W1PRM("MLZR"),$$^W4WHODEL)
 .Q:$$GET^%W1PRM("DELROW")<1
 .I $$SHIHZUR D
 ..D RESTNOMOD(SH,QNDEL,LAST) ;- BATEL & SHAHZER
 ;
 ; ----------- NO NOMOD
 I PRM["LV0" D  D DELSEQ(GORD,SH) ; -- DEL MAIN
 .D SETSH^W4ITEND(SH,"-")
 ;
 F  Q:$G(@GORD@(SH))=""  Q:$P($G(@GORD@(SH)),"~")=0  D  ; -- DEL ADDONS
 .D SETSH^W4ITEND(SH,"-")
 .D DELSEQ(GORD,SH)
 ;
DELROWE ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 D SAVE1^W4TMPORD
 Q
 ;
 ;
DELSEQ(GORD,SH)
 N A S A=$G(@GORD@(SH))
 S $P(A,"~",5)=-$P(A,"~",5)
 N PORTDISP S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
 I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
 D ^W4DELST(GORD,SH)
 Q
 ;
SETQN(GLREF,IND,VL)
 S $P(@GLREF@(IND),"~",5)=VL
 Q
 ;
 ;
DELNOMOD(SH,QNDEL,MLZ,MN,MV) ; - "DELROW" - DELETE ERROR CODE
 ; SH - IND STR LV=0
 D PUT^%W3DEB("W4HZORD-DELNOMOD","SH=SH&QNDEL=QNDEL&MLZ=MLZ&MN=MN&MV=MV&W4ITDEL=W4ITDEL")
 N TMPORD,GORD,SUG D TMPORD
 ;
 N TMPORDD S TMPORDD=$$^W4MAIN("TMPORDD") K @TMPORDD
 M @TMPORDD=@TMPORD
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 ;
 S SUG=$$GET^W4TMPANS("DEL","EXIT2KITCHEN?")
 S SUG=$P(SUG,"::") ; -- VYSHEL S MITB
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 N TSHL S TSHL=$$TSH^W3HZMST(JB)
 ;
 D
 .N A S A=$G(@TMPORD@(SH))
 .S $P(A,"~",5)=-QNDEL
 .N PORTDISP S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
 .I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,A)
 ;
 N PREZA
 S PREZA=$$PREZATI^W3HZMST(JB,SH,QNDEL)
 D PUT^%W3DEB("W4HZORD-DELNOMOD","PREZA=PREZA")
 I $$^W4AIN S PREZA=0
 ;
 N OK S OK=1,SUM=0
 ;;S ^LV("DELNOMOD","HZM")=HZM
 I HZM,$$^W4HZFULL(HZM),'$$SHIHZUR D CHKDEL
 ;;S ^LV("DELNOMOD","OK")=OK
 ;
 I OK'=1 D PUT^%W1PRM("DELROW",OK) G DELNOMODEND
 ;
 N ITRA0 S ITRA0=$$ITRAST^W3HZMST(JB,SH)
 ;
 I ITRA0'>0,TSHL'<0 Q
 I ITRA0'<0,TSHL<0 Q
 .;;S ^LV("DELNOMOD","ITRA0")=ITRA0
 ;
 I $$QNR^W3HZMST(JB,SH,TMPORDD)<0,TSHL'<0 Q
 I $$QNR^W3HZMST(JB,SH,TMPORDD)>0,TSHL<0 Q
 .;;S ^LV("DELNOMOD","QNR")=$$QNR^W3HZMST(JB,SH,TMPORDD)
 ;
 D DELNOMODMAIN
 ;
 I $G(SH1) D DELNOMODADD
 ;
 I $$^W4AIN D
 .N CD0 S CD0=$$CD($$^W4RSTPAR) Q:CD0=""
 .D ^W4SBR(CD0)
 ;
DELNOMODEND ;
 I '$$SHIHZUR K @TMPORDD
 Q
 ;
 ;
CHKDEL ;--> OK,SUM
 N ITRA,AHST,NOTSFMVC,SUMST
 ;
 S ITRA=$$CURTSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
 S SUM=0,AHST=0
 ;
 I $$LVST^W3HZMST(JB,SH)=0 S AHST=$$AHST^W3HZMST(JB,SH) D
 .N SUMST S SUMST=QNDEL*$$MHST^W3HZMST(JB,SH)*(100-$$AHUZ^W3HZMST(JB))*.01
 .S NOTSFMVC=$$NOTSFMVC^W3HZMST(JB,SH)
 .S SUMST=SUMST*(100-AHST)*.01
 .S SUM=SUM+SUMST
 ;
 N SH1,A
 S SH1=SH F  S SH1=$O(@TMPORD@(SH1)) Q:SH1=""  I SH1 S A=$G(@TMPORD@(SH1)) Q:'$$LV(A)  D
 .N SUMST S SUMST=$S($$QNV(A)["*":QNDEL*$$QN2(A),1:QNDEL)
 .S SUMST=SUMST*$$MHST^W3HZMST(JB,SH1)*(100-$$AHUZ^W3HZMST(JB))*.01
 .I '$G(NOTSFMVC) S SUMST=SUMST*(100-AHST)*.01
 .S SUM=SUM+SUMST
 ;W "SUM="_SUM_" ITRA="_ITRA,!
 D PUT^%W3DEB("W4HZORD-DELNOMOD","SUM=SUM & ITRA=ITRA")
 D PUT^%W1PRM("DELROW","1:"_SUM)
 Q
 ;
 ;
DELNOMODMAIN ;
 N SIBA,SIBA1,I
 S SIBA=$$GET^W4TMPANS("DEL","CAUSEDEL")
 S SIBA1=""
 S:SIBA["::" SIBA1=$P(SIBA,"::",2),SIBA=$P(SIBA,"::")
 ;
 D PUT^%W3DEB("W4HZORD-DELNOMODMAIN","SH=SH & QNDEL=QNDEL & SIBA=SIBA & SIBA1=SIBA1 & SUG=SUG")
 ;
 D GORD,GMOVE
 ;
 I $$MYCHECK^W4PRM,$$CDST^W3HZMST(JB,SH)=$$MYCHECK^W4PRM D ^WMCCLDEL(SH,$$GETP^%W1PRM("HZM")) S SH1=0 Q
 .N FUNC S FUNC="cancel"
 .N NMNX S NMNX=$$CMNST^W3HZMST(JB,SH)
 .N CLN S CLN=$$SPA^%L1FRM($$CLRCOUPLE^%L1FRM(NMNX,"[","]"))
 .Q:CLN=""
 .
 .I $G(@$$^W4TMPORD@("MYCH","CLIENT"))=CLN D
 ..K ^("CLIENT")
 ..S @$$^W4TMPORD@("MYCH","CLIENTDEL",CLN)=$ZD($H,"DD.MM.YY  24:60")
 ..N HZM S HZM=$$GETP^%W1PRM("HZM")
 ..I $$^W4ISORD(HZM) D
 ...K @$$^W4ORD@(HZM,"MYCH","CLIENT")
 ...S @$$^W4ORD@(HZM,"MYCH","CLIENTDEL",CLN)=$ZD($H,"DD.MM.YY  24:60")
 .
 .D MNGTBL^WMCHFUNC(HZM,FUNC,CLN)
 .N IND S IND=$$^W4DZ
 .S @$$CL2HZA^WMCGL@(IND,CLN)=@$$CL2HZ^WMCGL@(CLN)
 .K @$$CL2HZ^WMCGL@(CLN)
 ;
 S LAST=$O(@GORD@(99999),-1)
 S SHL=LAST+1
 N SHMV S SHMV=$O(@GMOVE@(99999),-1)+1
 ;
 I $G(MV) D
 .I $$BSLPAR($$CDST^W3HZMST(JB,SH)) Q
 .;
 .S @GMOVE@(SHMV)=$G(@GORD@(SH))
 ;
 I '$$W4TS D
 .S @GORD@(SHL)=$G(@GORD@(SH)) ; --- COPY MAIN ITEM
 .D SETQN(GORD,SHL,-QNDEL) ; -- MINUS MAIN ITEM IN NEW LINE
 .I 'SUG,'$G(MV) D SET^W4ITEND($$CD($G(@GORD@(SH))),-QNDEL) ; -- VERN V POOL ESLI NE VYSH S MITB I NE HAAVARA
 .D CLRMOD(GORD,SHL) ; --- UBRAT NOMOD V NOV STR ( BIT)
 .D CLRQNDIF(GORD,SHL) ; --- ZA4ISTIT QNDIF V NOV STR
 ;
 I $G(MV) D
 .D SETQN(GMOVE,SHMV,+QNDEL) ; -- NEW QN IN GMOVE
 .D CLRMODMV(GMOVE,SHMV)
 .D CLRQNDIF(GMOVE,SHMV)
 ;
 D BITMRG(SH,SHL,QNDEL)
 S SH1=SH+1
 I $$CDSTC^W3HZMST(JB,SH1) D CPCMNT
 Q
 ;
 ;
W4TS(STAM) ;
 Q $G(W4ITDEL)
 ;
CPCMNT D
 I '$$W4TS D
 .S SHL=SHL+1
 .S @GORD@(SHL)=$G(@GORD@(SH1)) ; --- COPY MAIN ITEM
 .D SETNOMOD(GORD,SHL,"")
 I $G(MV) D
 .S SHMV=SHMV+1
 .S @GMOVE@(SHMV)=$G(@GORD@(SH1))
 .D CLRMODMV(GMOVE,SHMV)
 .D CLRQNDIF(GMOVE,SHMV)
 S SH1=SH1+1
 Q
 ;
 ;
DELNOMODADD ;
 ;------------------------- DEL ADDONS ----------------------------
 ; INPUT :
 ;      PREZA=2 - MOVE OR DEL PART OF MAIN ITEMS
 ;      PREZA=1 - MOVE OR DEL MAIN ALL MAIN ITEMS
 ;      SH - DELETED LINE NUMBER, SH1 - DELETED LINE ADDONS COUNTER
 ;      MV - MOVING ORDER
 ;      W4ITDEL - FROM ^W4ITDEL ( CHOICED ITEMS )
 ;         IF DELETING ALL AI ( PREZA=1 ) QNDIF NOT !
 ;-----------------------------------------------------------------
 ;
 D PUT^%W3DEB("W4HZORD-DELNOMODADD","PREZA=PREZA & SH=SH & SH1=SH1 & MV=MV & W4ITDEL=W4ITDEL ")
 D GORD,GMOVE
 N QNDIF,QNDIF1,QNDELT S (QNDIF1,QNDELT)=""
 ;
 N SHL S SHL=$O(@GORD@(99999),-1)
 N SHMV S SHMV=$O(@GMOVE@(99999),-1)
 ; ---- QNDIF - IF ITEM CHOICED FOR DELETING
 ; ---- IF NOT W4ITDEL ( CHOICED ITEMS ) NO LEVEL 2 ! ( W4AIN: 0 & 1 )
 N A
 F  Q:'($D(@GORD@(SH1))#2)  S A=$G(^(SH1)) Q:SH1>LAST  Q:$$LVST^W3HZMST(JB,SH1)=0  D  ; - TOSAFOT TO DELETED LINE
 .I $$CDC(A) S SH1=SH1+1 Q
 .S QNDIF=$P(A,"~",11) ; --- QNDIF < 0 ;-- HOW MUCH ADDONS TO BE DEL (W4ITDEL)
 .;
 .N ITRA1 S ITRA1=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 .;
 .I 'ITRA1,$P(A,"~",5)'["*" S SH1=SH1+1 Q
 .I ITRA1<0,$G(TSHL)'<0 S SH1=SH1+1 Q
 .I ITRA1>0,$G(TSHL)<0 S SH1=SH1+1 Q
 .I $G(TSHL)'<0,$$QNR^W3HZMST(JB,SH1,TMPORDD)<0 S SH1=SH1+1 Q
 .I $G(TSHL)<0,$$QNR^W3HZMST(JB,SH1,TMPORDD)>0 S SH1=SH1+1 Q
 .
 .I $$LV(A)=1,'$$^W4AIN S QNDELT=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 .
 .I $$LV(A)=1 S QNDIF1=QNDIF
 .;
 .I $D(W4ITDEL),PREZA=1,$$LV(A)=2 S SH1=SH1+1 Q
 .I $D(W4ITDEL),PREZA=2,QNDIF1'<0,$G(TSHL)'<0 S SH1=SH1+1 Q
 .I $D(W4ITDEL),PREZA=2,QNDIF1<0,$G(TSHL)<0 S SH1=SH1+1 Q
 .I $D(W4ITDEL),PREZA=2,$$LV(A)=2,QNDIF1<0,$G(TSHL)'<0 S SH1=SH1+1 Q
 .I $D(W4ITDEL),PREZA=2,$$LV(A)=2,QNDIF1>0,$G(TSHL)<0 S SH1=SH1+1 Q
 .
 .I '$$W4TS D
 ..S SHL=SHL+1
 ..S @GORD@(SHL)=$G(@GORD@(SH1)) ; -- COPY ADDONS LINE TO END
 .
 .I $G(MV) D
 ..S SHMV=SHMV+1
 ..S @GMOVE@(SHMV)=$G(@GORD@(SH1))
 ..D CLRMODMV(GMOVE,SHMV)
 ..D CLRQNDIF(GMOVE,SHMV)
 .
 .N QNL S QNL=$$QNV($G(@GORD@(SHL))) ; - ADDONS QN
 .;
 .I $D(W4ITDEL),PREZA=1 D DELNOMODEZA D  Q  ;-- DEL ADDONS FROM AI (^W4ITDEL )
 ..N SH2 F SH2=SH1+1:1:LAST Q:$$LVST^W3HZMST(JB,SH2)<2&'$$CDSTC^W3HZMST(JB,SH2)
 ..S SH1=SH2
 .
 .I $D(W4ITDEL),PREZA,$$LV(A)=1,'$$^W4AIN,'$$CDA(A) D  ; -- IF ITEM WITH ADDONS LEVEL 2
 ..I QNDIF,QNL'["*" Q  ; -- FROM ^W4ITDEL
 ..I PREZA=2 Q
 ..D BITMRG(SH1,SHL,$$QNV(A)) Q
 .
 .I '$$W4TS D
 ..D CLRMOD(GORD,SHL) ;-- DELETE @@ IN NEW LINE
 ..D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF IN NEW LINE
 .
 .I $$CDA(A) S SH1=SH1+1 Q  ; -- PROPUSTIT A-STROKU
 .;
 .I QNL'["*" D  S SH1=SH1+1 Q
 ..I $D(W4ITDEL),PREZA=2,QNDIF D DELNOMODEZA Q  ;-- DEL ADDONS FROM AI (^W4ITDEL )
 ..;----- NORMAL ITEM OR NEW AI ( DEL FROM ORDER UPDATING )
 ..I $$W4TS Q
 ..D SETQN(GORD,SHL,-QNL) ; --- CHANGE QN SIGN IN NEW LINE ( BITUL )
 ..I 'SUG,'$G(MV),'$$SHIHZUR D SET^W4ITEND($$CD($G(@GORD@(SHL))),-QNL) ; VERNUT V POOL
 .
 .; ------------------ WITH * ------------------
 .N QND S QND=QNDEL
 .I $$LV(A)=2 S QND=QNDELT
 .I $$LV(A)=1 S QND=QNDEL
 .;
 .I $$LV(A)=1,$D(W4ITDEL),PREZA=2 D  Q  ;-- DEL ADDONS FROM AI (^W4ITDEL )
 ..N QNDIF
 ..S QNDIF=+QND D DELNOMODEZA
 .
 .I '$$W4TS D
 ..D SETQN(GORD,SHL,-QND_"*"_$P(QNL,"*",2))
 ..N QNLR S QNLR=-QND*$P(QNL,"*",2)
 ..I 'SUG,'$G(MV),'$$SHIHZUR D SET^W4ITEND($$CD($G(@GORD@(SHL))),QNLR)
 .
 .I $G(MV) D
 ..D SETQN(GMOVE,SHMV,QND_"*"_$P(QNL,"*",2))
 .
 .S SH1=SH1+1
 .I $$CDSTC^W3HZMST(JB,SH1) D CPCMNT
 Q
 ;
 ;
DELNOMODEZA ;--- UD-E ADDONS TO AI
 ; INPUT : SH1,
 ;         SHL
 ;----------------------------------------------------------------------------
 N A1
 I PREZA=2 D  Q  ; -- CHAST UD-E
 .I '$$W4TS D
 ..D SETQN(GORD,SHL,+QNDIF) ; -- VSTAV MIN QN ( QNDIF < 0 )
 ..D CLRQNDIF(GORD,SHL)
 ..
 ..I '$$SHIHZUR D
 ...D CLRQNDIF(GORD,SH1)
 .
 .D BITMRG(SH1,SHL,-QNDIF)
 .
 .D DELNOMODC2(SH1,-QNDIF) ; -- DEL SONS
 ;
 ;
 I PREZA=1 D  Q  ; -- DEL / MOVE ALL ADDONS
 .;
 .N ITRAT S ITRAT=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 .I '$$W4TS D
 ..D SETQN(GORD,SHL,-ITRAT) ; --- ZAMINUSOVAT V NEW
 ..I 'SUG,'$G(MV),'$$SHIHZUR D
 ...D SET^W4ITEND($$CD($G(@GORD@(SH1))),-ITRAT) ; -- VOZVR V POOL
 ..D CLRQNDIF(GORD,SHL)
 .
 .D BITMRG(SH1,SHL,ITRAT)
 .
 .D DELNOMODC2(SH1,ITRAT)
 Q
 ;
 ;
DELNOMODC2(SH1,QNDELT) ;--- DEL LEVEL 2 & COMMENTS
 N SH10 S SH10=SH1
 I '$D(TSHL) N TSHL S TSHL=$$TSH^W3HZMST(JB)
 ;
 I $$CDCI(SH1+1) D  ; -- COMMENT
 .I '$$W4TS D 
 ..S SHL=SHL+1
 ..S @GORD@(SHL)=@GORD@(SH1+1)
 ..D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF
 ..D CLRMOD(GORD,SHL) ;-- DELETE @@
 .S SH1=SH1+1
 ;
 N SH2,QN2,A2
 ;
 S SH2=SH1 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  Q:SH2>LAST  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 .I $$QNR^W3HZMST(JB,SH2)'>0,TSHL'<0 Q
 .I $$QNR^W3HZMST(JB,SH2)'<0,TSHL<0 Q
 .I '$$W4TS D
 ..S SHL=SHL+1
 ..S @GORD@(SHL)=$G(@GORD@(SH2))
 ..D CLRMOD(GORD,SHL) ;-- DELETE @@
 ..D CLRQNDIF(GORD,SHL) ;--- CLEAR QNDIF
 ..
 ..S QN2=$$QNV(A2) I QN2["*" S QN2=$P(QN2,"*",2)
 ..I '$$CDC(A2),'$$CDA(A2) D
 ...D SETQN(GORD,SHL,-QNDELT_"*"_QN2)
 .S SH1=SH1+1
 ;
 ;
 I $G(MV) D
 .I $$QNR^W3HZMST(JB,SH10)'>0,$G(TSHL)'<0 Q
 .I $$QNR^W3HZMST(JB,SH10)'<0,$G(TSHL)<0 Q
 .
 .D SETQN(GMOVE,SHMV,QNDELT)
 .I $$CDCI(SH10+1) D  ; -- COMMENT
 ..S SHMV=SHMV+1
 ..S @GMOVE@(SHMV)=@GORD@(SH10+1)
 ..D CLRMODMV(GMOVE,SHMV) ;-- DELETE @@
 ..D CLRQNDIF(GMOVE,SHMV) ;--- CLEAR QNDIF
 ..S SH10=SH10+1
 .;
 .S SH2=SH10 F  S SH2=$O(@GORD@(SH2)) Q:SH2=""  I SH2 S A2=$G(@GORD@(SH2)) Q:$$LV(A2)<2&'$$CDC(A2)  D
 ..S SHMV=SHMV+1
 ..S @GMOVE@(SHMV)=$G(@GORD@(SH2))
 ..D CLRMODMV(GMOVE,SHMV) ;-- DELETE @@
 ..D CLRQNDIF(GMOVE,SHMV) ;--- CLEAR QNDIF
 ..S QN2=$$QNV(A2) I QN2["*" S QN2=$P(QN2,"*",2)
 ..D SETQN(GMOVE,SHMV,QNDELT_"*"_QN2)
 ;
 Q
 ;
 ;
BITMRG(SH,SHL,QNDEL)
 Q:'$G(QNDEL)
 N TS S TS=$$W4TS
 ;
 I TS D  Q
 .S @GORD@("TS",SH,TS)=$G(@GORD@("TS",SH,TS))+QNDEL
 .S @GORD@("TS",SH)=$G(@GORD@("TS",SH))+QNDEL
 ;
 S @GORD@("MRG",SH)=$G(@GORD@("MRG",SH))+QNDEL
 S @GORD@("BIT",SHL)=$S($G(MN):$G(MLZ)_"*"_MN,1:$G(MLZ)_"*"_$G(MLZ))_"*"_$G(SIBA)_"*"_$$CNWEB^%L1FRM($G(SIBA1))_"*"_$H_"*"_$G(SUG)_"*"_$$^W4MYDVN_"*"_SH_":"_@GORD@("MRG",SH)
 Q
 ;
 ;
RESTNOMOD(SH,QNDEL,LAST) ;
 D PUT^%W3DEB("W4HZORD-RESTNOMOD","SH=SH & QNDEL=QNDEL & LAST=LAST")
 ;
 N PREZA,QNDIF S PREZA=$$PREZATI^W3HZMST(JB,SH,QNDEL)
 I $$NEWAI^W4PRM S PREZA=0
 ;
 N GORD D GORD
 N GORDD D GORDD
 N SHL S SHL=$O(@GORD@(99999),-1)+1
 ;
 ;
 M @GORD@(SHL)=@GORDD@(SH) ; --- COPY MAIN ITEM
 ;
 D SETQN(GORD,SHL,QNDEL) ;
 D REST^W4SRVTO(GORDD,SH,GORD,SHL)
 ;
 D CLRQNDIF(GORD,SHL)
 D SETNOMOD(GORD,SHL,"") ;-- BITUL NOMOD IN NEW LINE
 ;
 N TSHL S TSHL=$$TSH^W3HZMST(JB)
 ;
 N A,SH1 S SH1=SH+1
 ;
 F  Q:$O(@GORD@(SH1))<1  Q:SH1>LAST  Q:$$LVI(SH1)=0  D  ; - TOSAFOT
 .S A=$G(^(SH1))
 .S QNDIF=$P(A,"~",11)
 .I PREZA=2,QNDIF'<0,TSHL'<0 S SH1=SH1+1 Q
 .I PREZA=2,QNDIF>0,TSHL<0 S SH1=SH1+1 Q
 .
 .I $G(MULTYROW)=1,$$CDCI(SH1) S SH1=SH1+1 Q
 .
 .S SHL=SHL+1
 .M @GORD@(SHL)=@GORDD@(SH1) ; --- COPY ADDONS
 .D SETNOMOD(GORD,SHL,"")
 .D CLRQNDIF(GORD,SHL)
 .D REST^W4SRVTO(GORDD,SH1,GORD,SHL)
 .
 .N QNL S QNL=$$QNV($G(@GORD@(SHL)))
 .
 .I PREZA=2 D  S SH1=SH1+1 Q
 ..N QNOLD S QNOLD=$$QNV(SHL)
 ..D SETQN(GORD,SHL,-QNDIF_$$DOP^W4PIZZA(QNOLD))
 ..D CLRQNDIF(GORD,SH1)
 ..I $$CDCI(SH+1) D
 ...S SHL=SHL+1
 ...M @GORD@(SHL)=@GORDD@(SH1+1)
 ...S SH1=SH1+1
 ...D REST^W4SRVTO(GORDD,SH1,GORD,SHL)
 .
 .I PREZA=1 D  S SH1=SH1+1 Q
 ..N QNOLD S QNOLD=$$QNV(SHL)
 ..N ITRAT S ITRAT=$$ITRAST^W3HZMST(JB,SH1,TMPORDD)
 ..D SETQN(GORD,SHL,ITRAT_$$DOP^W4PIZZA(QNOLD))
 ..I $$CDCI(SH+1) D
 ...S SHL=SHL+1
 ...;;S @GORD@(SHL)=@GORD@(SH1+1)
 ...M @GORD@(SHL)=@GORDD@(SH1+1)
 ...S SH1=SH1+1
 ...D REST^W4SRVTO(GORDD,SH1,GORD,SHL)
 .
 .; ----- WITH *
 .N NEWQN S NEWQN=$S(QNL["*":QNDEL_"*"_$P(QNL,"*",2),1:QNDEL_$$DOP^W4PIZZA(QNL))
 .D SETQN(GORD,SHL,NEWQN)
 .S SH1=SH1+1
 Q
 ;
 ;
EDITROW(SH) ;
 N PRL,A,LV,I S PRL=0
 D PUT^%W3DEB("W4HZORD-EDITROW","SH=SH")
 ;
 N GORD S GORD="^[$$^W3MAIN]TMPORD(JB)"
 S SH=$$FINDSH(SH) Q:SH=""
 I SH=$O(@GORD@(9999),-1) S PRL=1
 I $P($G(@GORD@(SH)),"~")'=0 Q
 ;
 N GT S GT="^[$$^W3MAIN]TMPTF($$^%W1JB,3)"
 K @GT
 Q
 ;
CHANGE(SHCM) ;
 D TMPORD
 N SH,SH1,CM S SH=$P(SHCM,"~"),CM=$P(SHCM,"~",2)
 S SH=$$FINDSH(SH) Q:SH="" ""
 D PUT^%W3DEB("W4HZORD-CHANGE","SH=SH & CM=CM")
 ;
 D SETSH^W4ITEND(SH,CM)
 D SETQN(TMPORD,SH,CM)
 N CDM S CDM=$$CDI(SH)
 ;
 I $$LVI(SH)=0 D
 .N A S A=$G(@TMPORD@(SH))
 .N PORTDISP S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
 .Q:'PORTDISP
 .D PCPAR^W4TX2DSP(PORTDISP,A)
 .
 ;
 I $$LVI(SH)=0 D
 .N CD S CD=$$CDI(SH)
 .S SH1=SH F  S SH1=$O(@TMPORD@(SH1)) Q:SH1=""  I SH1 Q:$$LVI(SH1)=0  D
 ..N A S A=$G(^(SH1))
 ..I $$CDA(A) Q
 ..I $$CDC(A) Q
 ..I $$CDH(A) Q
 ..N CM1OLD
 ..N CM1 S CM1=$$QNST^W3HZMST(JB,SH1),CM1OLD=CM1
 ..I CM1["*" S CM1=CM_"*"_$P(CM1,"*",2)
 ..I CM1'["*",$$^W4MULTY!'$$^W4EZAT(CDM) S CM1=CM_"*"_CM1
 ..I CM1["*",$P(CM1,"*",2),$P(CM1,"*")=1 S CM1=$P(CM1,"*",2)
 ..N MAIN S MAIN=$$MAIN^W4ITM(A)
 ..D PUT^W4ITM("QNM",CM,"A")
 ..S @TMPORD@(SH1)=A
 ..D SETSH^W4ITEND(SH1,CM1)
 ..D SETQN(TMPORD,SH1,CM1)
 ;
 N ST S ST=$G(@TMPORD@(SH))
 Q $J($$MH(ST)*$$QN1($$QNV(ST)),2,2)
 ;
 ;
CDIT(NS)
 D TMPORD
 N SH,CD,IT
 S SH=$$FINDSH(NS) Q:SH="" ";"
 S CD=$$CDI(SH) I CD="" Q ";"
 S IT=$$^W4ITEND(CD)
 Q CD_";"_IT
 ;
LAST0(STAM) ;
 D TMPORD
 N N S N=$O(@TMPORD@(9999),-1) I N="" Q ""
 I $P($G(^(N)),"~")=0 Q ^(N)
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  Q:$P(^(N),"~")=0
 I N="" Q ""
 Q $G(@TMPORD@(N))
 ;
 ;
LASTAI(STAM)
 N TX S TX=$$LAST0 I TX="" Q 0
 N CD S CD=$P(TX,"~",2) I CD="" Q 0
 I $D(^[$$^%W1UCI(JB)]P1EZA(CD))!$D(^[$$^%W1UCI(JB)]P1EZT(CD)) Q 1
 Q 0
 ;
 ;
BDIKA(TXT) ;
 Q:'$G(JB) 1
 N LI
 N STPAR S STPAR=$$LAST0^W3HZMST(JB) I STPAR="" Q 1
 S LI=$$LI^W3HZMST(JB) Q:'LI 1
 ;
 N VA
 I $P(TXT,"~")=0 S VA=$$^W3VLDADD(TXT) S:VA="" VA=0 I 'VA Q VA
 Q 1
 ;
 ;
STADD(TXT) ;
 Q $$STADD^W4STADD($G(TXT))
 ;
GETQN(STID)
 N IND S IND=$$FINDSH(STID) I 'IND Q "NOK"
 Q $$QNR^W3HZMST(JB,IND)
 ;
FINDSH(STID) ; -- STID = LV...
 ;;D PUT^%W3DEB("W4HZORD-FINDSH","STID=STID")
 D TMPORD
 N SH S SH=$E(STID,4,8) I SH="" Q "NOK"
 Q $$SHORD(SH)
 ;
SHORD(SH)
 N N S N=SH
 I $P($G(@TMPORD@(SH)),"~",10)="" Q SH
 I $P($G(@TMPORD@(SH)),"~",10)'=SH D
 .S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N Q:$P($G(^(N)),"~",10)=SH
 Q N
 ;
NOMOD(I) ;
 D TMPORD
 N A S A=$G(@TMPORD@(I))
 Q $$NOMODST(A)
 ;
NOMODST(A) ;
 I $$GETNOMOD(A)["@@" Q 1
 Q 0
 ;
CLRMOD(GORD,SHL) ;
 N CLR S CLR=""
 I $G(MV) S CLR=$S($$PCMV:"",1:"HZ")
 D SETNOMOD(GORD,SHL,CLR) ; --- UBRAT NOMOD V NOV STR ( BIT)
 Q
 ;
PCMV(STAM) ;
 I $G(@$$^W4PRM@("HZMHV"))=1 Q 1
 I $G(@$$^W4PRM@("HZMHV"))=3,$$GETP^%W1PRM("PCMV") Q 1
 Q 0
 ;
CLRMODMV(GMOVE,SHMV)
 N CLR S CLR="HZ"
 D SETNOMOD(GMOVE,SHMV,CLR)
 Q
 ;
SETNOMOD(GL,SH,VL)
 I $G(VL)'="HZ" S $P(@GL@(SH),"~",12)=VL
 I VL=""!(VL="HZ") S $P(@GL@(SH),"~",13)=""
 Q
 ;
GETNOMOD(A)
 Q $P(A,"~",12)
 ;
NOLASTMOD(STAM)
 N STPAR
 I $$^W4AIN D  Q $$NOMODST(STPAR)
 .S STPAR=$$GETP^%W1PRM("STPAR0")
 ;
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1) I 'LAST Q 0
 Q $$NOMOD(LAST)
 ;
NOMODADD(PRM) ;
 D PUT^%W3DEB("W4HZORD-NOMODADD","PRM=PRM")
 N NST,CDADD
 S CDADD=$P($P(PRM,";",2),"~",2)
 I CDADD="" Q "NOK"
 S NST=$P(PRM,";")
 N NOM S NOM=$$FINDSH(NST) I 'NOM Q "NOK"
 N OK S OK=0
 N I F I=NOM+1:1 Q:'$$LVI(I)  I $$CDI(I)=CDADD S OK=I Q
 I 'OK Q "NOK"
 Q $$NOMOD(I)
 ;
CLRQNDIF(GLREF,IND) ;
 S $P(@GLREF@(IND),"~",11)=""
 Q
 ;
NOEDITMOD(I) ;
 N RES S RES=0
 N NOMOD S NOMOD=$$NOMOD(I) I NOMOD S RES=1
 I $$OTH S RES=1
 I $$CHNORD S RES=1
 I $$QNST^W3HZMST(JB,I)<0,$G(TSHL)'<0 S RES=2+NOMOD
 I $$ITRAST^W3HZMST(JB,I)'>0,$G(TSHL)'<0 S RES=4+NOMOD
 I $$QNST^W3HZMST(JB,I)>0,$G(TSHL)<0 S RES=2+NOMOD
 I $$ITRAST^W3HZMST(JB,I)'<0,$G(TSHL)<0 S RES=4+NOMOD
 Q RES
 ;
SVCMNT(PRM) ;
 N CD,CDCMNT
 S CDCMNT=$P(PRM,"-C",2)
 S CD=$P(PRM,"-")
 I CDCMNT="" Q
 I CD="" Q
 D PUT^%W1PRM("CDCMNT",CDCMNT_";;0;"_CD)
 Q
 ;
EZH(CD) ;
 I $G(CD)="" Q 0
 I $$D^W4EZH(CD) Q 1
 Q 0
 ;
PARENT(ID) ;
 I $G(ID)="" Q " "
 D TMPORD
 N SH S SH=$$FINDSH(ID)
 I 'SH Q " "
 N I F I=SH:-1:0 Q:$$LV($G(@TMPORD@(I)))=0
 I I=0 Q " "
 N A
 S A=$G(@TMPORD@(I))
 Q $P(A,"~",2)_";"_I_";"_$P(A,"~",10)
 ;
PARENTSET(ID) ;
 I $G(ID)="" Q " "
 I ID'["LV1" Q " "
 D TMPORD
 N SH S SH=$$FINDSH(ID)
 I 'SH Q " "
 N I F I=SH:-1:0 Q:$$LV($G(@TMPORD@(I)))=0  Q:$$CDA($G(@TMPORD@(I)))
 I I=0 Q " "
 I '$$CDA($G(@TMPORD@(I))) Q " "
 N A
 S A=$G(@TMPORD@(I))
 Q $P(A,"~",2)_";"_I_";"_$P(A,"~",10)
 ;
HNH(STAM) ;
 Q $$HNH^W4GETSUM(JB)
 ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I '$$^W4ISORD(HZM) Q $J($$TOTHN*$$AHUZ^W3HZMST(JB)*.01,1,1)
 I $$D^W3TMPORD(JB)<11 Q $$HNH^W4HZMST(HZM)
 ;
 N HNHAH,HNH,HNH0
 I $$^W4ISORD(HZM) S HNHAH=$$AHUZ^W3HZMST(JB)
 I $G(HNHAH)="" S HNHAH=$$AHUZ^W4MENUBT
 ;
 S HNH=$$TOTHN*HNHAH*.01
 I $$^W4ISORD(HZM) D
 .S HNH=HNH+$$SLKHNH^W4PAYVW(HZM)+$$SHNH1^W4PAYVW(HZM) ;+$$HNH2^W4HZMST(HZM)
 Q $J(HNH,2,2)
 ;
TOTHN(STAM) ;
 Q $$TOTORD^W3HZMST(JB,"D")
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
GORDD ;
 S GORDD=$$^W4MAIN("TMPORDD")
 Q
 ;
GMOVE ;
 S GMOVE=$$^W4MAIN("TMPMV")
 Q
 ;
HNHSHAA(CD) ;
 N NMB
 S HNHSHAA=""
 I '$G(CD) Q ""
 S NMB=$$GET^%W1PRM("NMB") Q:'NMB ""
 N ZMANK S ZMANK=$$DATCB^W3HZMST(JB)
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 Q $$^W4HNHSHA(CD,NMB)
 ;
DISCCMST(MHT) ;
 W "<td class=""disccmst"">"
  D
  .I $L($G(A)),$$CDA(A)!$$CDH(A)!$$CDC(A) W "&nbsp;" Q
  .I $$^W4PRTBH($$CD(A)) W "&nbsp;" Q
  .I $G(HNST)!$G(HNST1) D
  ..N HNST0 S HNST0=HNST I $G(NOTSFMVC) S HNST0=""
  ..W $S($G(HNST0)&$G(HNST1):HNST0_"*"_HNST1,$G(HNST1):HNST1,$G(HNST0):HNST,1:"&nbsp;")
  ..W "<br>",!
  .W $S('$G(NOTSFMVC)&$L($G(CMST))&MHT:$$H2U^%L1FRM(CMST),1:"&nbsp;")
 W "</td>",! ; --- DISCOUNT PLACE
 Q
 ;
 ;
PREPEDIT(NS) ;
 N NST
 S NST=+$$FINDSH^W4HZORD(NS)
 N TMPORD S TMPORD=$$^W4TMPORD
 N ST S ST=$G(@TMPORD@(NST))
 D PUT^%W1PRM("STPAR",ST)
 N CD S CD=$$CD(ST)
 ;
 D PUT^%W1PRM("SHID",NS)
 ;
 I $$^W4AIN&$$TSF(NST) D  Q
 .N STA,A S STA="",A=""
 .F I=NST-1:-1:1 S A=$G(@$$^W4TMPORD@(I)) Q:$$CDA(A)
 .I $$CDA(A) S STA=$$CD(A)_";"_$$CD($$^W4RSTPAR)_";"_$$QNV(A)_";"_$$MH(A)
 .I STA'="" D PUT^%W1PRM("STPAR40",STA)
 .D INITUR^W4MENU(5)  ; -- EDIT INTO AI ITEM+ADDONS
 ;
 I $$^W4AIN D  Q
 .D INITUR^W4MENU(4)  ; -- EDIT ITEM INTO AI
 ;
 I $$^W4EZAT(CD),$$LV(ST)=0,'$$^W4AIN D
 .D PUT^%W1PRM("STPAR00",ST)
 ;
 I $$^W4EZAT(CD) D  Q
 .D PUT^%W1PRM("SHID0",NS)
 .D KILL^%W1PRM("SHID")
 .D INITUR^W4MENU(3)
 .I $$SAVEIT^W4HZTSF(ST) ; -- !!!
 ;
 I $$TSF^W4HZORD(NST) D
 .D INITUR^W4MENU(3)
 ;
 Q
 ;
 ;
SHIHZUR(STAM) ;
 I +$$GET^W4TMPANS("DEL","DELETE?")=2 Q 1
 Q 0
 ;
SENDED(I,COL) ;
 I '$G(COL) S COL=7
 D TMPORD
 N TIMEO,TIMEN,TIMEFIRE,I0
 N IO S IO=$O(@TMPORD@(I),-1) Q:'IO
 F I0=IO:-1:0 Q:'$$LVI(I0)
 I 'I0 Q
 I '$$NOMOD(I0) Q
 S TIMEO=$P($G(@TMPORD@("ST",I0)),"\",2)
 N MLZRO S MLZRO=$P($G(@TMPORD@("ST",I0)),"\",1)
 S TIMEN=""
 I I D
 .S TIMEN=$P($G(@TMPORD@("ST",I)),"\",2)
 .S TIMEFIRE=$P($G(@TMPORD@("ST",I)),"\",3)
 ;
 I $L(TIMEO),TIMEO'=TIMEN D
 .W "<tr style=""text-align:center;background-color:grey;color:white;font-weight:bold"" >"
 . W "<td colspan="""_COL_""">"_$$^%W1DICT("SENDED2PRINT",TIMEO)_$$NBSP^%L1FRM(3)
 . W "<span style=""font-size:"_$$^W3FSZ(10)_""">"_$$H2U^%L1FRM($$^W4NAME(MLZRO))_"</span>"
 .W "</tr>",!
 Q
 ;
FIRE(I,COL) ;
 I '$G(COL) S COL=7
 D TMPORD
 N A S A=$G(@TMPORD@("FIRE","SH",I))
 N TIMEFIRE S TIMEFIRE=$P(A,";")
 N FIREIND S FIREIND=$P(A,";",2)
 S A=$G(@TMPORD@("NOFIRE","SH",I))
 N NOTIMEFIRE S NOTIMEFIRE=$P(A,";")
 N NOFIREIND S NOFIREIND=$P(A,";",2)
 I FIREIND,FIREIND<NOFIREIND!'NOFIREIND D PRINTFIRE I NOFIREIND D PRINTNOFIRE
 I NOFIREIND,NOFIREIND<FIREIND!'FIREIND D PRINTNOFIRE I FIREIND D PRINTFIRE
 ;
 Q
 ;
 ;
NAMEMDP(MDP) ;
 Q $P($G(@$$^W4PRM@("MDP",MDP)),"\",4)
 ;
PRINTFIRE ;
 I TIMEFIRE'="" D
 .W "<tr style=""text-align:center;background-color:red;color:white;font-weight:bold"" >"
 . W "<td colspan="""_COL_""">"_$$^%W1DICT("FIRE",TIMEFIRE)
 . I FIREIND S MDPL=$$SPA^%L1FRM($G(@TMPORD@("FIRE","TIME",FIREIND))) I $L(MDPL) D
 ..N J F J=1:1:$L(MDPL,",") D
 ...N MDP S MDP=$P(MDPL,",",J) Q:MDP=""
 ...W "&nbsp;&nbsp;&nbsp;" ; W "<br>"
 ...W "<span style=""font-size:"_$$^W3FSZ(8)_""" >"_$$H2U^%L1FRM($$NAMEMDP(MDP))_"</span>"
 . W "</td>",!
 .W "</tr>",!
 Q
 ;
PRINTNOFIRE ;
 I NOTIMEFIRE'="" D
 .W "<tr style=""text-align:center;background-color:black;color:yellow;font-weight:bold"" >"
 . W "<td colspan="""_COL_""">"_$$^%W1DICT("NOFIRE",NOTIMEFIRE)
 . I NOFIREIND S MDPL=$$SPA^%L1FRM($G(@TMPORD@("NOFIRE","TIME",NOFIREIND))) I $L(MDPL) D
 ..N J F J=1:1:$L(MDPL,",") D
 ...N MDP S MDP=$P(MDPL,",",J) Q:MDP=""
 ...W "&nbsp;&nbsp;&nbsp;" ; W "<br>"
 ...W "<span style=""font-size:"_$$^W3FSZ(8)_""" >"_$$H2U^%L1FRM($$NAMEMDP(MDP))_"</span>"
 . W "</td>",!
 .W "</tr>",!
 Q
 ;
FIRSTNEW(STAM) ;
 I $$GET^%W1PRM("FIRSTNEW") Q 1
 Q 0
 ;
CONDORD(NMB)
 Q $$CONDORD^W4HZORHD(NMB)
 ;
PRMANA1(STAM) ;
 Q $$PRMANA1^W4HZORHD
 ;
AIN(STAM) ;
 Q $$^W4AIN
 ;
PREZAT(A) ;
 I $$PREZAT^W3HZMST(A),'$$^W4AIN Q 1
 Q 0
 ;
DELMAINAI(STAM) ;
 N PRM S PRM=$$GETP^%W1PRM("DELMAINAI")
 Q +PRM
 ;
BSLPAR(PAR) ;
 Q $$BSLPAR^W4CDSRV(PAR)
 ;
SETCHNLINE(I) ; 
 N (JB,%ARG,I)
 N RES
 I $$GETP^%W1PRM("CHNORD1")="" D  Q 1
 .D PUT^%W1PRM("CHNORD1",I)
 ; 
 S MVLN=$$GETP^%W1PRM("CHNORD1")
 S RES=$$SWAP^W4MVLINE("LV0"_I_";LV0"_MVLN)
 D KILL^%W1PRM("CHNORD1")
 Q 2
 ;
BGCMVL(STAM) ;
 Q "#FFFB88" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZORHD
W4HZORHD(HZM) ; [ 10.08.25 10:46 ] [ 06.04.25 01:07 ] [ 24.03.25 11:38 ] 
 N (JB,%ARG,HZM,W4HZORHDSM,COLSPAN)
 S W4HZORHDSM=0
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 N TSHL S TSHL=$$TSHL^W3HZMST(JB)
 ;
 W "<div dir="""_$$^%W1DIR_""" >",!
 ;
 S TOP=0
 N MKRPZM S MKRPZM=0
 S MKRPZM=$$MAGIAPIZUIM
 ;
 I $$TMP^W4PNOHN(JB) D
 .W "<span dir="""_$$^%W1DIR_""" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""">"
 . W $$^%W1DICT("MSGDISC*")
 .W "</span>",!
 .;;S W4HZORHDSM=W4HZORHDSM+1
 ;
INITHD ;
 G:$$^W4SMALL INITHDE
 ;
 I $$SHOWBSL D BSL S W4HZORHDSM=W4HZORHDSM+1
 I $$SHOWLKM D LKM S W4HZORHDSM=W4HZORHDSM+1
 I MKRPZM D
 .S WDPZM="96"
 .D SHOWPIZUIM(MKRPZM)
 .S W4HZORHDSM=W4HZORHDSM+1
INITHDE ;
 ;;D OPTBL("inithd")
 D TRTH(0)
 ;;W "</table>",!
END W "</div>",! Q
 ;
 ;
TRTH(VSBL) ;
 N HG S HG=40
 I '$G(VSBL) S COLSPAN=0
 I '$D(NMB) S NMB=$$GETP^%W1PRM("NMB")
 ;
 I '$G(VSBL) G TRTH1
 ;
 W:$G(VSBL) "<thead class=""hdfix"">",! 
 I $$CHNORD^W4PRM,'$$^W4AIN,'$$OTH,'$$ZAG,$$LASTNOTPRINTED D CHNORD
 W "<tr"
 ;;W " style=""background-color:"_$$FNFG^W4CSS_";" ; ***
 ;;W " color:white" ; ***
 ;;I $G(VSBL)=0 W ";visibility:hidden;height:1px" ; ***
 ;;W """" ; ***
 W ">",!
 ;
TRTH1 ;
 ;;I $G(VSBL) W "<style>th {border-right:1px lightgrey solid}</style>",! ; ***
 I '$$ZAG D:$G(VSBL)  D ADDCOL
 .W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>",!
 W:$G(VSBL) " <th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>",! D ADDCOL
 W:$G(VSBL) " <th width=""10%"">"_$$^%W1DICT("QUANT")_"</th>",! D ADDCOL
 W:$G(VSBL) " <th>"_$$^%W1DICT("PRICE")_"</th>",! D ADDCOL
 ;
 I '$$^W4SMALL,'$$^W4POSMSK(NMB),'$$^W4AIN,'$$NODISCST D
 .W:$G(VSBL) " <th width=""10%"">"_$$^%W1DICT("DISCOUNT")_"</th>",! D ADDCOL
 ;
 I '$$CONDORD(NMB) D
 .W:$G(VSBL) " <th>"_$$^%W1DICT("GST")_"</th>",! D ADDCOL
 ;
 ;;I '$$CONDORD(NMB)!$$^W4SMALL!$$^W4AIN,$$PRMANA1 D
 I '$$SUPER^W3PRM,'$$CONDORD(NMB)!$$^W4AIN,$$PRMANA1 D
 .W:$G(VSBL) " <th>"_$$^%W1DICT("DISH")_"</th>",! D ADDCOL
 ;
 I $$CONDORD(NMB),'$$^W4AIN D
 .W:$G(VSBL) " <th>"_$$^%W1DICT("SUM")_"</th>",! D ADDCOL
 ;
 I '$$ZAG W:$G(VSBL) " <th width=""12%"">"_$$^%W1DICT("UPDATE")_"</th>",! D ADDCOL
 W:$G(VSBL) "</tr>",!
 W:$G(VSBL) "</thead>",!
 I $G(VSBL) S TOP=$G(TOP)+HG
 ;
 Q
 ;
 ;
WDTBL(STAM) ;
 N WDTBL S WDTBL=97
 I $$1024^W4WDSCR,$$^W4TABLET'=2 S WDTBL=98
 Q WDTBL_"%"
 ;
BSLPAR(PAR) ;
 Q $$BSLPAR^W4CDSRV(PAR)
 ;
OTH(STAM) ;
 I $$GETP^%W1PRM("MOTH") Q 1
 Q 0
 ;
ZAG(STAM) Q $$^W4ZAG
 ;
CONDORD(NMB)
 I $$ZAG Q 1
 I $$^W4POSMSK(NMB) Q 1
 N MYDVN S MYDVN=$$^W4MYDVN
 ;;I $$^W4MSL(NMB)!$$SCANER^W4HZTFR!$$KUPA^W4PLUK(MYDVN)!$$MSK^W4PRM!$$^W4SMALL Q 1
 I $$^W4MSL(NMB) Q 1
 I $$SCANER^W4HZTFR Q 2 
 I $$KUPA^W4PLUK(MYDVN) Q 3
 I $$MSK^W4PRM Q 4
 I $$^W4SMALL Q 5
 Q 0
 ;
PRMANA1(STAM) ;
 I $$NOVWMANA^W4PRM Q 0
 I $$MANA^W4PRM Q 1
 Q 0
 ;
MYCHVC ;
 I $$^W4ISORD(HZM),$$^W4CLOSE(HZM)!(TSHL<0) Q
 
 W "<input type=""button"" "
 W " style=""height:50px;width:100%;text-align:center;"
  W " color:darkred;background-color:#eaeaea;"_$$FONTFM^W3CSS
  W ";font-size:"_$$^W3FSZ(14)_";cursor:pointer;"
  W $$RAD^W3CSM_";"
  W $$BOXSHADOW^W3CSM("5px","15px",".4")
 W """ "
 
 I $$MYCHECK^W4PRM W " value=""My Check"" "_$$^W4TOUCH_"=""ClickMyCheck()"" "
 
 I $$VCARD^W4POSPRM D
 . W " value=""Value Card"
 . I $G(@$$^W4TMPORD@("VC",1,"CARD")) W " : "_^("CARD") 
 . W """ "
 . W " "_$$^W4TOUCH_"=""ClickValueCard()"" "
 
 W ">"
 W "<br><br>",!
 Q 
 ;
SHOWBSL(STAM) ;
 I $$BSL^W4PRM,'$$OTH,'$$ZAG Q 1
 Q 0 
 ;
 ;
SHOWLKM(STAM) ;
 I $$LKM^W4PRM,'$$OTH,'$$ZAG Q 1
 Q 0 
 ;
OPTBCARD ;
 W "<table width="""_$$WDTBL_""" border=1 class=""bgtblord"""
 W " style=""left:"_$$LEFT_"px;table-layout:fixed;text-align:center;zIndex:100"
  W ";position:absolute;top:"_TOP_"px"
  W ";"_$$GRAD1^W3CSM("lightgrey","#FFFFFF")
  W ";"_$$RAD^W3CSM(6)
  W ";border:1px solid grey"
 W """ "
 W " cellspacing=""0"""
 W " dir="""_$$^%W1DIR_""" id=""initbl"" ",!
 W ">",!
 Q
 ;
 ;
BSL ; 
 D OPTBCARD
 N HG S HG=40
 ;
 W "<tr height="""_HG_"px"">"
  N BSCARD S BSCARD=$$BSCARD^W3HZMST(JB)
  ;
  I 'BSCARD D  G BSLE
  .W "<td align=""center"" "_$$^W4TOUCH_"=""BLCard('"_BSCARD_"')"" "
  .W ">"
  .W $$^%W1DICT("PRESS4BSLCARD")
  .W "</td>",!
 ;
  S WD="90%"
  I $$^WBISBON($$GETP^%W1PRM("HZM"),$$^W4TMPORD) S WD="50%"
  W "<td width="""_WD_""" "_$$^W4TOUCH_"=""BLCard('"_BSCARD_"')"" "
  W ">"_$$H2U^%L1FRM($$BSCLUB1^W3HZMST(JB))_"<br>"
  W BSCARD_" "_$$H2U^%L1FRM($$BSNAME^W3HZMST(JB))
  W "</td>"
  ;
  I $$^WBISBON($$GETP^%W1PRM("HZM"),$$^W4TMPORD) D
  . W "<td "_$$^W4TOUCH_"=""BLShowBonus()"" >"_$$^%W1DICT("SHOWBONUS")_"</td>"
  W "<td width=""9%"" "_$$^W4TOUCH_"=""DelBslCard()""><img src=""w4del.jpg""></td>",!
  ;
BSLE ;
 W "</tr>",!
 W "</table>",!
 S TOP=TOP+HG
 Q
 ;
 ;
LKM ; 
 N HG S HG=40
 D OPTBCARD
 
 W "<tr height="""_HG_"px"">"
  N LKMCARD S LKMCARD=$$LKMCARD^W3HZMST(JB)
 ;
  I 'LKMCARD D  Q
  .W "<td align=""center"" "_$$^W4TOUCH_"=""LKMCard('"_LKMCARD_"')"" "
  .W ">"
  . W $$^%W1DICT("PRESS4LKMCARD")
  .W "</td>",!
 
  S WD="90%"
  W "<td width="""_WD_""" "_$$^W4TOUCH_"=""LKMCard('"_LKMCARD_"')"" "
  W ">"
   W LKMCARD_" "_$$H2U^%L1FRM($$LKMNAME^W3HZMST(JB))
  W "</td>"
  ;
  W "<td width=""9%"" "_$$^W4TOUCH_"=""DelLkmCard()""><img src=""w4del.jpg""></td>",!
  ;
 W "</tr>",!
 ;
 W "</table>",!
 S TOP=TOP+HG
 Q
 ;
 ;
MAGIAPIZUIM(STAM) ; 
 N (JB,%ARG,HZM)  
 S GLPZM="W4PIZUIM"
 I $$DLVWEB S GLPZM="W3PIZUIM"
 ;
 S OK=0
 S DZ=$$^W4DZ
 S IND=$$INDPZM I IND="" Q "NOTFOUND"
 I '$D(@$$^W4GL(GLPZM)@(IND)),$D(@$$^W4GL(GLPZM)@($E(IND,1,20))) S IND=$E(IND,1,20)
 ;
 S ORD=$$GETP^%W1PRM("HZM")
 I ORD>0,'$$DLVWEB,$$^W4CLOSE(ORD) Q "CLOSEDORD"
 I ORD>0,$$DLVWEB,$$CLOSE^W3HZMST(ORD) Q "CLOSEDORD"
 ;
 I '$D(@$$^W4GL(GLPZM)@(IND)) D
 .N INDN S INDN=$O(@$$^W4GL(GLPZM)@(IND))
 .I +INDN=+IND,$E(INDN,1,2)="05" S IND=INDN
 ;
 S N="" F  S N=$O(@$$^W4GL(GLPZM)@(IND,N),-1) Q:N=""  D  Q:OK
 .S A=$G(@$$^W4GL(GLPZM)@(IND,N))
 .S DT=$P(A,"\",2) I DT'?5N S DT=$$^%L1DC(DT,3)
 .I DZ>DT Q  ; DT
 .I $P(A,"\",3) Q  ; MEMUMASH
 .I '$$DLVWEB S PIZUIM=$G(@$$^W4ORD@(N,"PIZUIM")) I PIZUIM?.P Q
 .I $$DLVWEB S PIZUIM=$G(@$$^W3ORD@(N,"PIZUIM")) I PIZUIM?.P Q
 .S OK=N
 ;
 Q OK
 ;
 ;
SHOWPIZUIM(MKRPZM) ; 
 N WD S WD="100%"
 I $G(WDPZM) S WD=+WDPZM_"%"
 W "<table width="""_WD_""" border=1 cellpadding=""1"" class=""bgtblord"" ",!
  I $G(TOP) W " style=""position:absolute;top:"_TOP_"px;left:"_$$LEFT_"px"" "
 W ">",!
  W "<tr>"
   W "<td colspan=""8"">"
    W "<input type=""button"" value="""_$$^%W1DICT("MAGIAPIZUIM")_""" " 
     W " style=""cursor:pointer;height:40px;width:100%;background-color:red;color:yellow;font-size:"_$$^W3FSZ(14)_""" " 
     W " onClick=""ShowPizuim('"_MKRPZM_"')"" "
    W "/>"
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q 
 ;
INDPZM(STAM) ; 
 N NMB,PELE,MAZMIN
 S NMB=$$NMB^W3HZMST(JB)
 S PELE=$$PELE^W3HZMST(JB)
 I PELE?.P S PELE=NMB
 S NMB=$TR(NMB,"- ","")
 S PELE=$TR(PELE,"- ","")
 S MAZMIN=$$SPA^%L1FRM($$NAME^W3HZMST(JB))
 Q $$ENG^%L1FRM(NMB,10)_$$ENG^%L1FRM(PELE,10)_MAZMIN
 ;
LEFT(STAM) ; 
 I $$1024^W4WDSCR Q 2
 Q 7 
 ;
DLVWEB(STAM) ; 
 Q $$DLVWEB^W4DLVCSR
 ;
CHNORD ; 
 N HG S HG=40
 W "<tr height="""_HG_"px"" "
  W "style=""text-align:center;color:white;font-size:"_$$^W3FSZ(14)_""" "
 W ">"
  W "<td colspan="""_COLSPAN_""" align=""center"" id=""chnord"" "_$$^W4TOUCH_"=""ChnOrd('"_(1-$$CHNORDOPT)_"')"" "
   W "style=""background-color:grey"" " 
  W ">"
  N OPT S OPT=$S($$CHNORDOPT:"SIGNITEMORBACK2NORMAL",1:"PRESS2CHANGEORDER")
  W $$^%W1DICT(OPT)
  W "</td>",!
 W "</tr>",!
 S TOP=$G(TOP)+HG
 S W4HZORHDSM=$G(W4HZORHDSM)+2
 Q
 ;
CHNORDOPT(STAM) ;
 I $G(%ARG("CHNORD"))?1N Q +%ARG("CHNORD")
 Q +$$GETP^%W1PRM("CHNORD")
 ;
LASTNOTPRINTED() ;
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1)
 I 'LAST Q 0 
 I LAST=1,$$NOMOD^W3HZMST(JB,LAST) Q 0
 I $$NOMOD^W3HZMST(JB,LAST),$$NOMOD^W3HZMST(JB,LAST-1) Q 0
 Q 1 
 ;
ADDCOL ; 
 I '$G(VSBL) S COLSPAN=$G(COLSPAN)+1 
 Q 
 ; 
 ;
OPTBL(ID) ; 
 ;;W "<br><br>",!
 W "<table id="""_ID_""" width="""_$$WDTBL_""" border=""1"" "
 W " class=""bgtblord"" "
 S LEFT=$$LEFT I $$ZAG S LEFT=23
 I $$^%W1LNG="H" D
 .W "style=""position:absolute;top:"_$G(TOP)_"px;left:"_LEFT_"px;"" "
 W " cellspacing=""0"""
 W " dir="""_$$^%W1DIR_""" ",!
 W ">",!
 Q 
 ;
NODISCST()
 Q +$G(@$$^W4PRM@("NODISCST"))
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZPCF1
W4HZPCFN ; [ 23.08.20 19:37 ] [ 21.08.20 16:28 ] [ 19.08.20 08:49 ] 
S1 Q:'$G(PRINT)
 I PRINT<0 Q
 I $G(P1HZMET),'$$ETEK(PRINT) Q
 I '$D(TXT("NOTR")) S TXT=$TR(TXT,TS0,TSS)
 ;
 I $D(%MDP("B")),$D(%MDP("N")),$D(TS0),$D(TSS) D
 .S TXT=$$RPL^%L1FRM(TXT,$TR(%MDP("B"),TS0,TSS),%MDP("B"))
 .S TXT=$$RPL^%L1FRM(TXT,$TR(%MDP("N"),TS0,TSS),%MDP("N"))
 ;
 S:$D(TXT("R")) TXT=%MDP("R")_TXT
 ;
 N N11 S N11=+$G(N1)
 N PAR S PAR=$P($G(@$$^W4ORD@(N11)),"\")
 N KV S KV=$$KV(PAR)
 ;;I $$PCHZKV^W4PRM S N11=$TR($J(KV,5)," ",0)_"-"_$TR($J(PAR,8)," ",0)
 ;
 N MN S MN=+$G(MANA)
 I $$PCHZKV^W4PRM D
 .I $G(N2),$$PCHZKV^W4PRM D  Q
 ..S KV=$$KV(N2)
 ..S MN=MN_"-"_$TR($J(KV,5)," ",0)
 .S KV=$$KV(PAR)
 .S MN=MN_"-"_$TR($J(KV,5)," ",0)
 ;
 I $$PRMANA=1,'$D(pc),'$D(NOTIME) D  G ES1
 .D FRMPC($$BG^W4PC1_"PRINT,MN,N11)",$$^W4PCTM_"(HZM,PRINT,TIME,MN,+$G(N1))",SM,$G(N1),$G(N2))
 ;
 I $$PRMANA=2,'$D(pc),'$D(NOTIME) D  G ES1
 .D FRMPC($$BG^W4PC1_"PRINT,N11,MN)",$$^W4PCTM_"(HZM,PRINT,TIME,+$G(N1),MN)",SM,$G(N1),$G(N2))
 ;
 I $$PRMANA=3,'$D(pc),'$D(NOTIME) D  G ES1
 .N KV,PAR S KV=0,PAR=""
 .I $G(N1) S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 .S KV=$$KV(PAR)
 .D FRMPC($$BG^W4PC1_"PRINT,"""_KV_""",N11,+$G(MANA))",$$^W4PCTM_"(HZM,PRINT,TIME,"""_KV_""",+$G(N1),+$G(MANA))",SM,$G(N1),$G(N2))
 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) D  G ES1
 .D FRMPC("",$$^W4PCTM_"(HZM,PRINT,TIME)",SM,N11,$G(N2))
 ;
 N PREPPC S PREPPC=""
 D SETPC(PRINT,$J("",SM)_TXT)
 ;
ES1 K TXT Q
 ;
 ;
S2 Q:'$G(PRINT)
 I $$PRMANA=1,'$D(pc),'$D(NOTIME) D  G ES2
 .D FRMPC($$BG^W4PC1_"PRINT,+$G(MANA),+$G(PAR))",$$^W4PCTM_"(HZM,PRINT,TIME,+$G(MANA),+$G(PAR))",0,$G(N1),$G(N2))
 ;
 I $$PRMANA=2,'$D(pc),'$D(NOTIME) D  G ES2
 .D FRMPC($$BG^W4PC1_"PRINT,+$G(N1),+$G(MANA))",$$^W4PCTM_"(HZM,PRINT,TIME,+$G(N1),+$G(MANA))",0,$G(N1),$G(N2))
 ;
 I $$PRMANA=3,'$D(pc),'$D(NOTIME) D  G ES2
 .N KV,PAR S KV=0,PAR=""
 .I $G(N1) S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 .S KV=$$KV(PAR)
 .D FRMPC($$BG^W4PC1_"PRINT,"""_KV_""",+$G(N1),+$G(MANA))",$$^W4PCTM_"(HZM,PRINT,TIME,"""_KV_""",+$G(N1),+$G(MANA))",0,$G(N1),$G(N2))
 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) D  G ES2
 .D FRMPC("",$$^W4PCTM_"(HZM,PRINT,TIME)",0,$G(N1),$G(N2))
 ;
 D SETPC(PRINT,TXT)
ES2 K TXT Q
 ;
 ;
SETRED ;
 I $G(REDADD) D
 .I $G(%MDP("RL"))'="",TXT[%MDP("RL") S TXT=$$RPL^%L1FRM(TXT,%MDP("RL"),"") 
 .S TXT=%MDP("R")_TXT
 Q
 ;
FRMPC(GLB,GLBT,SM,N1,N2) ;
 ;;D PUT^%W3DEB("W4HZMPC-FRMPC","GLB=GLB & GLBT=GLBT & SM=SM & N1=N1 & N2=N2")
 N GLBP
 S GLBP=$$^W4PCTM_"(HZM,PRINT,TIME)"
 I $G(MANA)="" S MANA=0
 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) D  K TXT Q
 .N PAR
 .I '$D(N23) S PAR=$$PAR(+$G(N1)) I PAR="" Q
 .I $D(N23) S PAR=N1
 .N TIME S TIME=$$TIME(PAR,N2)
 .I $D(P1HZOP) M @GLBP@("P1HZOP")=P1HZOP
 .I $D(P1HZMET) M @GLBP@("P1HZMET")=P1HZMET
 .I $D(N1) M @GLBP@("N1")=N1
 .I $D(P1HZHB1) M @GLBP@("P1HZHB1")=P1HZHB1
 .L +@GLBT:1
 .D SETRED
 .S @GLBT@($ZP(@GLBT@(999999))+1)=$J("",SM)_TXT
 .L -@GLBT
 ;
 Q:$G(GLB)=""
 ;
 L +@GLB:1
 D SETRED
 N IND S IND=$ZP(@GLB@(999999))+1
 ;
 S @GLB@(IND)=$J("",SM)_TXT
 L -@GLB
 K TXT Q
 ;
ETEK(PRINT) ;
 N N,ETEK S ETEK=0
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  I +PRINT=+$P($G(^(N)),"\",3) D  Q:ETEK
 .S ETEK=$P(^(N),"\",6)
 Q ETEK
 ;
PRMANA(STAM) ;
 Q $$MANA^W4PRM
 ;
KAV N TXT S TXT=""
 I $$HZPCSP^W4PRM S TXT=$C(10)
 S TXT=TXT_"  "_$TR($J("",$$WD)," ","-") D S1 ; --- WAS S2 ; 14/06/18
 Q
 ;
KV(PRT) ;
 I $G(PRT)="" Q 0
 Q $$SUG^W4P(PRT)
 ;
PAR(N1) ;
 I $G(HZM)="" Q ""
 Q $P($G(@$$^W4ORD@(HZM,N1)),"\")
 ;
SETPC(PRINT,TXT) ;
 L +@$$^W4PC@(PRINT):4
 S TXT=$G(%MDP("N"))_TXT
 ;
 I $$REDADD D
 .S TXT=$$RPL^%L1FRM(TXT,"<R>",$G(%MDP("R")))
 .I $G(%MDP("R"))'="",$G(%MDP("RL"))'="",TXT'[%MDP("R") D
 ..S TXT=$$RPL^%L1FRM(TXT,%MDP("RL"),"")
 ..S TXT=%MDP("RL")_TXT
 .I $G(%MDP("R"))'="",$G(%MDP("RL"))'="",TXT[%MDP("R") D
 ..S TXT=$$RPL^%L1FRM(TXT,%MDP("R"),"")
 ..S TXT=$$RPL^%L1FRM(TXT,%MDP("RL"),"")
 ..S TXT=%MDP("R")_TXT
 ;
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=TXT
 L -@$$^W4PC@(PRINT)
 Q
 ;
TIME(PAR,N2) N SMTM S SMTM=$$SMTM($G(PAR),$G(N2))*60
 Q ($P($H,",",2)+SMTM)#86400
 ;
WD(STAM) ;
 Q 39
 ;
REDADD(STAM) ;
 Q +$G(@$$^W4PRM@("REDADD"))
 ;
SMTM(PAR,N2) ;
 I $G(PAR)=""!($G(N2)="") Q 0
 N SET S SET=$$SET(PAR,N2) I SET="" Q 0
 I $E(SET)="A" Q $G(@$$^W4GL("PCTIME")@("SET",PAR,SET))
 Q $G(@$$^W4GL("PCTIME")@("TSF",PAR,SET))
 ;
SET(PAR,N2) ;
 N N,NS,NS1,NSP,OK,GL
 I $G(PAR)="" Q 0
 S OK=0 S GL=$$^W4EZA_"("""_PAR_""")"
 N GLSETA S GLSETA=$$^W4GL("P1SETA")
 S NS="" F  S NS=$O(@GL@(NS)) Q:NS=""  D  Q:OK
 .S NS1=$E(NS,2,25) Q:NS1=""
 .I $D(@GLSETA@(NS1,N2)) S OK=1 Q
 ;
 I 'OK S GL=$$^W4EZT_"("""_PAR_""")" D
 .S NS="" F  S NS=$O(@GL@(NS)) Q:NS=""  D  Q:OK
 ..S NS1=$E(NS,2,25) Q:NS1=""
 ..I $D(@GLSETA@(NS1,N2)) S OK=1 Q
 ;
 I 'OK,$D(@$$^W4GL("P1EZI")@(PAR,N2)) S NS=N2
 Q NS
 ;
PC(PRN,TXT,PRM) ;
 I $$SNBC,TXT=$C(12),$G(PRM)=0 Q
 N SOF S SOF="" I $$SNBC S SOF=$C(13,10)
 S TXT=TXT_SOF
 I $G(PRM)=0 S @$$^W4PC@(PRN,$ZP(@$$^W4PC@(PRN,""))+1)=TXT Q
 ;
 D
 .S TXT=$TR(TXT,TS0,TSS)
 ;
 N SM S SM=$$SM(TXT)
 ;
 I $G(PRM)["B" D
 .S SM=$$SMBIG(TXT) ;
 .S TXT=%MDP("B")_TXT_%MDP("N")
 ;
 D SETPC(PRN,$S(TXT="":"",1:$J("",SM)_TXT))
 Q
PCBR(TX,BB,DOPSM)
 N TXT I '$D(NOCLRSP) S TX=$$SPA^%L1FRM($G(TX))
 N SM S SM=$$SMBIG(TX)+$G(DOPSM)
 D PCSTB(TX,$G(BB))
 Q
 ;
 ;
PCB(TX,BB)
 N TXT
 N SM S SM=1
 D PCSTB(TX,$G(BB))
 Q
 ;
PCBC(TX,BB)
 N TXT
 N SM S SM=$J($$SMBIG(TX)/2,0,0)
 D PCSTB(TX,$G(BB))
 Q
 ;
PCSTB(TX,BB)
 N TXT,MDPB
 S MDPB=$S($G(BB):%MDP("BB"),1:%MDP("B"))
 S TXT=MDPB_TX_%MDP("N")
 I $G(PRINV) S TXT=$G(%MDP("I"))_TXT_$G(%MDP("IE"))
 D S1
 Q
 ;
SMBIG(TX) ;
 Q $$WD+$G(@$$^W4PRM@("MDBSM"))-$J($L(TX)*2/$$KFPC,0,0)
 ;
OLDPC(STAM) ;
 I $$XPMOD($G(PRINT)) Q 1
 Q $$OLDPC^W4PRM
 ;
NEWPC(STAM)
 Q '$$OLDPC^W4PRM
 ;
XPMOD(PRINT) ;
 I $G(PRINT),$$MDPS^W4MDP(PRINT)=8 Q 1
 Q 0
 ;
KFPC(STAM) ;
 I $$OLDPC Q 1
 Q $J(40/28,3,3)
 ;
SM(TX) ;
 N SM
 S SM=$$WD+$G(@$$^W4PRM@("MDBSM"))-$J($L(TX)/$$KFPC,0,0)
 I $$SNBC S SM=SM+8
 Q SM
 ;
SNBC(STAM)
 Q $$SNBC^W4PRM
 ;
OPSNBC(PRINT) ;
 D PC(PRINT,$C(27,64,27,76),0)
 Q
 ;
CLSNBC(PRINT) ;
 D PC(PRINT,$C(27,12,27,83),0)
 Q
 ;
CLOPSNBC(PRINT)
 D CLSNBC(PRINT)
 D OPSNBC(PRINT)
 Q
 ;
MVALL(STAM) ;
 I $G(P1HZOP)&$G(P1HZOP("ALL")) Q 1
 Q 0
 ;
HEB(HR) ;
 N HEB S HEB=0
 N I F I=1:1:$L(HR) I $A($E(HR,I))>95 S HEB=1
 Q HEB
 ;
PREPHR(HR) ;
 N TXT,BIG,DLG,J S DLG=$$WD,BIG=0
 ;
 ;;S TXT0="" I $$OLDPC,'$G(@$$^W4PRM@("NOBIGHRA")) D
 .S TXT0=$C(27)_"!"_$C(168),BIG=1,DLG=$$WD\2*$$KFPC
 ;
 ;;I $$NEWPC,'$G(@$$^W4PRM@("NOBIGHRA")) D
 .S TXT0=$C(27)_"!"_$C(168),BIG=1,DLG=$$WD\2*$$KFPC
 ;
 S TXT0="" I $$OLDPC D
 .S TXT0=$C(27)_"!"_$C(168),BIG=1,DLG=$$WD\2*$$KFPC
 ;
 I $$NEWPC D
 .S TXT0=$C(27)_"!"_$C(168),BIG=1,DLG=$$WD\2*$$KFPC
 ;
 I $$HRSP S TXT0=$C(27)_"!"_$C(136)
 ;
 S HR=$$SPA^%L1FRM(HR),HR1=""
 S HR=$$CLEARMANA(HR)
 ;
 I $G(PR)="<" D
 .S:$P(HR,"<",2)?1N.N.E HR=$P(HR,"<")_" < "_+$P(HR,"<",2)_" ogleyn xared"
 ;
 I $$PRMV(HR),HR[";" D
 .S HRAV=$P(HR,";",$L(HR,";"))
 .S HR=$P(HR,";",1,$L(HR,";")-1)
 ;
 S HR=$$RPL^%L1FRM(HR,";dry itl dgpd","")
 S HR=$$RPL^%L1FRM(HR,"dry itl dgpd","")
 ;
 S HR=$$RPL^%L1FRM(HR,"[ ","-")
 S HR=$$RPL^%L1FRM(HR," ]","-")
 ;
 D DLG^%L1FRM(HR,DLG)
 Q
 ;
 ;
ATTN(HR) ;
 Q $$BBNAME
 ;
BBNAME(STAM) ; 
 I $D(PCLP),$G(@$$^W4PRM@("BIGNAME"))=1 Q 1
 Q 0
 ;
HRSP(STAM) ;
 Q $G(@$$^W4PRM@("NOBIGHRA"))
 Q '$G(@$$^W4PRM@("NOHRSP"))
 ;
SP(TX)
 ;;I $$HRSP,'$G(@$$^W4PRM@("NOBIGHRA")) Q $$SPC^%L1FRM(TX)
 I $$HRSP Q $$SPC^%L1FRM(TX)
 Q TX
 ;
CLEARMANA(CMNT) ;
 N MN,N
 D MN^W4MANA
 S N="" F  S N=$O(MN(N)) Q:N=""  I $L(MN(N)) D
 .I CMNT[MN(N) D
 ..S CMNT=$$RPL^%L1FRM(CMNT,MN(N),"")
 Q CMNT
 ;
PRMV(HR) ;
 I $G(HR)["ogleyl xar" Q 1
 Q 0
 ;
CUT(PRINT) ;
 I $G(PRINT) K %MDP D DEFMDP(PRINT)
 N TXT S TXT=$C(10,10,10,10,10)_$G(%MDP("CUT"))_$C(10,10,10) D S2
 Q
 ;
DEFMDP(PRINT) ;
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZPCFN
W4HZPCFN ; [ 11.01.26 14:50 ] [ 15.03.24 11:01 ] [ 13.10.23 13:08 ] 
S1 Q:'$G(PRINT)
 I PRINT<0 Q
 I $D(W4HZTMPC) D S1^W4HZTM Q
 I $D(W4HZTH) D S1^W4HZTH  Q
 ;
 I $G(P1HZMET),'$$ETEK(PRINT) Q
 I '$D(TXT("NOTR")) S TXT=$TR(TXT,TS0,TSS)
 ;
 I $D(%MDP("B")),$D(%MDP("N")),$D(TS0),$D(TSS) D
 .S TXT=$$RPL^%L1FRM(TXT,$TR(%MDP("B"),TS0,TSS),%MDP("B"))
 .S TXT=$$RPL^%L1FRM(TXT,$TR(%MDP("N"),TS0,TSS),%MDP("N"))
 ;
 S:$D(TXT("R")) TXT=%MDP("R")_TXT
 ;
 I $D(TXT("BOLD")) D
 .S TXT=$C(27,45,1)_TXT_$C(27,45,0)
 ;
 I $$SNBC,$E(TXT,$L(TXT)-1,$L(TXT))'=$C(13,10) S TXT=TXT_$C(13,10) ; *** 15.03.24
 N N11 S N11=+$G(N1)
 N KV,PAR S KV=0,PAR=""
 I $G(N1) S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 S KV=$$KV(PAR)
 N MN S MN=$G(MANA) I MN="" S MN=0
 ;
 I $$PRMANA(HZM)=1,'$D(pc),'$D(NOTIME) D  G ES1
 .D FRMPC($$BG^W4PC1_"PRINT,MN,N11)",$$^W4PCTM_"(HZM,PRINT,TIME,MN,N11)",SM,$G(N1),$G(N2))
 ;
 I $$PRMANA(HZM)=2,'$D(pc),'$D(NOTIME) D  G ES1
 .D FRMPC($$BG^W4PC1_"PRINT,N11,MN)",$$^W4PCTM_"(HZM,PRINT,TIME,N11,MN)",SM,$G(N1),$G(N2))
 ;
 I $$PRMANA(HZM)=3,'$D(pc),'$D(NOTIME) D  G ES1
 .N KV,PAR S KV=0,PAR=""
 .I $G(N1) S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 .S KV=$$KV(PAR)
 .D FRMPC($$BG^W4PC1_"PRINT,"""_KV_""",N11,+$G(MANA))",$$^W4PCTM_"(HZM,PRINT,TIME,"""_KV_""",N11,+$G(MANA))",SM,$G(N1),$G(N2))
 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) D  G ES1
 .D FRMPC("",$$^W4PCTM_"(HZM,PRINT,TIME)",SM,N11,$G(N2))
 ;
 N PREPPC S PREPPC=""
 D SETPC(PRINT,$J("",SM)_TXT)
 ;
ES1 K TXT Q
 ;
 ;
S2 Q:'$G(PRINT)
 N MN S MN=$G(MANA) I MN="" S MN=0
 I $$PRMANA(HZM)=1,'$D(pc),'$D(NOTIME) D  G ES2
 .D FRMPC($$BG^W4PC1_"PRINT,MN,+$G(N1))",$$^W4PCTM_"(HZM,PRINT,TIME,MN,+$G(N1))",0,$G(N1),$G(N2))
 ;
 I $$PRMANA(HZM)=2,'$D(pc),'$D(NOTIME) D  G ES2
 .D FRMPC($$BG^W4PC1_"PRINT,+$G(N1),MN)",$$^W4PCTM_"(HZM,PRINT,TIME,+$G(N1),MN)",0,$G(N1),$G(N2))
 ;
 I $$PRMANA(HZM)=3,'$D(pc),'$D(NOTIME) D  G ES2
 .N KV,PAR S KV=0,PAR=""
 .I $G(N1) S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 .S KV=$$KV(PAR)
 .D FRMPC($$BG^W4PC1_"PRINT,"""_KV_""",+$G(N1),+$G(MANA))",$$^W4PCTM_"(HZM,PRINT,TIME,"""_KV_""",+$G(N1),+$G(MANA))",0,$G(N1),$G(N2))
 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) D  G ES2
 .D FRMPC("",$$^W4PCTM_"(HZM,PRINT,TIME)",0,$G(N1),$G(N2))
 ;
 D SETPC(PRINT,TXT)
ES2 K TXT Q
 ;
 ;
SETRED ;
 I $G(REDADD) D
 .I $G(%MDP("RL"))'="",TXT[%MDP("RL") S TXT=$$RPL^%L1FRM(TXT,%MDP("RL"),"") 
 .S TXT=%MDP("R")_TXT
 Q
 ;
FRMPC(GLB,GLBT,SM,N1,N2) ;
 N GLBP
 S GLBP=$$^W4PCTM_"(HZM,PRINT,TIME)"
 I $G(MANA)="" S MANA=0
 ;
 I $$PCTIME^W4PRM,'$D(NOTIME) D  K TXT Q
 .N PAR
 .I '$D(N23) S PAR=$$PAR(+$G(N1)) I PAR="" Q
 .I $D(N23) S PAR=N1
 .N TIME S TIME=$$TIME(PAR,N2)
 .I $D(P1HZOP) M @GLBP@("P1HZOP")=P1HZOP
 .I $D(P1HZMET) M @GLBP@("P1HZMET")=P1HZMET
 .I $D(N1) M @GLBP@("N1")=N1
 .I $D(P1HZHB1) M @GLBP@("P1HZHB1")=P1HZHB1
 .L +@GLBT:1
 .D SETRED
 .S @GLBT@($ZP(@GLBT@(999999))+1)=$J("",SM)_TXT
 .L -@GLBT
 ;
 Q:$G(GLB)=""
 ;
 L +@GLB:1
 D SETRED
 N IND S IND=$ZP(@GLB@(999999))+1
 ;
 S @GLB@(IND)=$J("",SM)_TXT
 ;
 L -@GLB
 K TXT Q
 ;
ETEK(PRINT) ;
 N N,ETEK S ETEK=0
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  I +PRINT=+$P($G(^(N)),"\",3) D  Q:ETEK
 .S ETEK=$P(^(N),"\",6)
 Q ETEK
 ;
PRMANA(HZM) ;
 I $$HZM^W4MSL(HZM),$$MANAM^W4PRM Q $$MANAM^W4PRM
 Q $$MANA^W4PRM
 ;
KAV N TXT S TXT=""
 I $$HZPCSP^W4PRM S TXT=$C(10)
 S TXT=TXT_"  "_$TR($J("",$$WD)," ","-") D S1 ; --- WAS S2 ; 14/06/18
 Q
 ;
KV(PRT) ;
 I $G(PRT)="" Q 0
 Q $$SUG^W4P(PRT)
 ;
PAR(N1) ;
 I $G(HZM)="" Q ""
 Q $P($G(@$$^W4ORD@(HZM,N1)),"\")
 ;
SETPC(PRINT,TXT) ;
 L +@$$^W4PC@(PRINT):4
 S TXT=$G(%MDP("N"))_TXT
 ;
 I $$REDADD D
 .S TXT=$$RPL^%L1FRM(TXT,"<R>",$G(%MDP("R")))
 .I $G(%MDP("R"))'="",$G(%MDP("RL"))'="",TXT'[%MDP("R") D
 ..S TXT=$$RPL^%L1FRM(TXT,%MDP("RL"),"")
 ..S TXT=%MDP("RL")_TXT
 .I $G(%MDP("R"))'="",$G(%MDP("RL"))'="",TXT[%MDP("R") D
 ..S TXT=$$RPL^%L1FRM(TXT,%MDP("R"),"")
 ..S TXT=$$RPL^%L1FRM(TXT,%MDP("RL"),"")
 ..S TXT=%MDP("R")_TXT
 ;
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=TXT
 L -@$$^W4PC@(PRINT)
 Q
 ;
TIME(PAR,N2) N SMTM S SMTM=$$SMTM($G(PAR),$G(N2))*60
 Q ($P($H,",",2)+SMTM)#86400
 ;
WD(STAM) ;
 Q 39
 ;
REDADD(STAM) ;
 Q +$G(@$$^W4PRM@("REDADD"))
 ;
SMTM(PAR,N2) ;
 I $G(PAR)=""!($G(N2)="") Q 0
 N SET S SET=$$SET(PAR,N2) I SET="" Q 0
 I $E(SET)="A" Q $G(@$$^W4GL("PCTIME")@("SET",PAR,SET))
 Q $G(@$$^W4GL("PCTIME")@("TSF",PAR,SET))
 ;
 ;
SET(PAR,N2) ;
 N N,NS,NS1,NSP,OK,GL
 I $G(PAR)="" Q 0
 S OK=0 S GL=$$^W4EZA_"("""_PAR_""")"
 N GLSETA S GLSETA=$$^W4GLSET($G(HZM))
 S NS="" F  S NS=$O(@GL@(NS)) Q:NS=""  D  Q:OK
 .S NS1=$E(NS,2,25) Q:NS1=""
 .I $D(@GLSETA@(NS1,N2)) S OK=1 Q
 ;
 I 'OK S GL=$$^W4EZT_"("""_PAR_""")" D
 .S NS="" F  S NS=$O(@GL@(NS)) Q:NS=""  D  Q:OK
 ..S NS1=$E(NS,2,25) Q:NS1=""
 ..I $D(@GLSETA@(NS1,N2)) S OK=1 Q
 ;
 I 'OK,$D(@$$^W4GL("P1EZI")@(PAR,N2)) S NS=N2
 Q NS
 ;
PC(PRN,TXT,PRM) ;
 I $$SNBC,TXT=$C(12),$G(PRM)=0 Q
 N SOF S SOF="" I $$SNBC S SOF=$C(13,10)
 S TXT=TXT_SOF
 I $G(PRM)=0 S @$$^W4PC@(PRN,$ZP(@$$^W4PC@(PRN,""))+1)=TXT Q
 ;
 D
 .S TXT=$TR(TXT,TS0,TSS)
 ;
 N SM S SM=$$SM(TXT)
 ;
 I $G(PRM)["B" D
 .S SM=$$SMBIG(TXT) ;
 .S TXT=%MDP("B")_TXT_%MDP("N")
 ;
 D SETPC(PRN,$S(TXT="":"",1:$J("",SM)_TXT))
 Q
PCBR(TX,BB,DOPSM)
 N TXT I '$D(NOCLRSP) S TX=$$SPA^%L1FRM($G(TX))
 N SM S SM=$$SMBIG(TX)+$G(DOPSM)
 D PCSTB(TX,$G(BB))
 Q
 ;
 ;
PCB(TX,BB)
 N TXT
 N SM S SM=1
 D PCSTB(TX,$G(BB))
 Q
 ;
PCBC(TX,BB)
 N TXT
 N SM S SM=$J($$SMBIG(TX)/2,0,0)
 D PCSTB(TX,$G(BB))
 Q
 ;
PCSTB(TX,BB)
 N TXT,MDPB
 S MDPB=$S($G(BB):$G(%MDP("BB")),1:$G(%MDP("B")))
 S TXT=MDPB_TX_$G(%MDP("N"))
 I $G(PRINV) S TXT=$G(%MDP("I"))_TXT_$G(%MDP("IE"))
 D S1
 Q
 ;
SMBIG(TX) ;
 S TX=$TR(TX,$C(10),"")
 Q $$WD+$G(@$$^W4PRM@("MDBSM"))-$J($L(TX)*2/$$KFPC,0,0)
 ;
OLDPC(STAM) ;
 I $$XPMOD($G(PRINT)) Q 1
 Q $$OLDPC^W4PRM
 ;
NEWPC(STAM)
 Q '$$OLDPC^W4PRM
 ;
XPMOD(PRINT) ;
 I $G(PRINT),$$MDPS^W4MDP(PRINT)=8 Q 1
 Q 0
 ;
KFPC(STAM) ;
 I $$OLDPC Q 1
 Q $J(40/28,3,3)
 ;
SM(TX) ;
 N SM
 S SM=$$WD+$G(@$$^W4PRM@("MDBSM"))-$J($L(TX)/$$KFPC,0,0)
 ;;I $$SNBC S SM=SM+8 ; *** 15/03/24 --> COMMENT
 Q SM
 ;
SNBC(STAM)
 Q $$SNBC^W4PRM
 ;
OPSNBC(PRINT) ;
 D PC(PRINT,$C(27,64,27,76),0)
 Q
 ;
CLSNBC(PRINT) ;
 D PC(PRINT,$C(27,12,27,83),0)
 Q
 ;
CLOPSNBC(PRINT)
 D CLSNBC(PRINT)
 D OPSNBC(PRINT)
 Q
 ;
MVALL(STAM) ;
 I $G(P1HZOP)&$G(P1HZOP("ALL")) Q 1
 Q 0
 ;
HEB(HR) ;
 N HEB S HEB=0
 N I F I=1:1:$L(HR) I $A($E(HR,I))>95 S HEB=1
 Q HEB
 ;
PREPHR(HR) ;
 N TXT,BIG,DLG,J
 S BIG=1,DLG=$$WD\2*$$KFPC
 ;
 S TXT0=$C(27)_"!"_$C(168)
 I HR?.E1U.E S TXT0=$G(%MDP("B"))
 I $$HRSP S TXT0=$C(27)_"!"_$C(136) ; -- RAZRYADKA ?
 ;
 S HR=$$SPA^%L1FRM(HR),HR1=""
 S HR=$$CLEARMANA(HR)
 ;
 I $G(PR)="<" D
 .S:$P(HR,"<",2)?1N.N.E HR=$P(HR,"<")_" < "_+$P(HR,"<",2)_" ogleyn xared"
 ;
 I $$PRMV(HR),HR[";" D
 .S HRAV=$P(HR,";",$L(HR,";"))
 .S HR=$P(HR,";",1,$L(HR,";")-1)
 ;
 S HR=$$^W4CLRMVC(HR)
 ;
 S HR=$$RPL^%L1FRM(HR,"[ ","-")
 S HR=$$RPL^%L1FRM(HR," ]","-")
 ;
 D DLG^%L1FRM(HR,DLG)
 Q
 ;
 ;
USPCMN(STAM) ;
 Q 1
 ;
ATTN(HR) ;
 Q $$BBNAME
 ;
BBNAME(STAM) ; 
 I $D(PCLP),$G(@$$^W4PRM@("BIGNAME"))=1 Q 1
 Q 0
 ;
HRSP(STAM) ;
 Q $G(@$$^W4PRM@("NOBIGHRA"))
 ;
SP(TX)
 ;;I $$HRSP,'$G(@$$^W4PRM@("NOBIGHRA")) Q $$SPC^%L1FRM(TX)
 I $$HRSP Q $$SPC^%L1FRM(TX)
 Q TX
 ;
CLEARMANA(CMNT) ;
 N MN,N
 D MN^W4MANA
 S N="" F  S N=$O(MN(N)) Q:N=""  I $L(MN(N)) D
 .I CMNT[MN(N) D
 ..S CMNT=$$RPL^%L1FRM(CMNT,MN(N),"")
 Q CMNT
 ;
PRMV(HR) ;
 I $G(HR)["ogleyl xar" Q 1
 Q 0
 ;
CUT(PRINT) ;
 I $G(PRINT) K %MDP D DEFMDP(PRINT)
 N TXT S TXT=$C(10,10,10,10,10)_$G(%MDP("CUT"))_$C(10,10,10) D S2
 Q
 ;
DEFMDP(PRINT) ;
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZPCH0
W4HZPCHD(HZM) ; [ 31.05.20 13:37 ] [ 27.05.20 18:34 ] [ 22.05.20 11:25 ] 
HEAD ;
 I $$XPMOD($G(PRINT)) D PCB("")
 I $$MVALL!($G(P1HZOP)="NOPC") Q
 I $G(P1HZOP)="NOPC" Q
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 S LINEPC="N TXT S TXT="""" D S1"
 N pc S pc="" ; ---
 ;
 I $$DISPATH D
 .D PCB(" ! glynl ")
 ;
 I '$$DISPATH,$$^W4MSL(NMB),$G(@$$^W4PRM@("MSD"))!$G(@$$^W4PRM@("MTAW")) D
 .D PCHDMSL
 ;
 N RAZD,STR,IND
 S STR=@$$^W4SCR@(HZSCR,"P","REF",1,"STR")
 S RAZD=^("RZD")
 ;
 N I1 F I1=1:1:$L(STR,RAZD) D
 .S IND=$P(STR,RAZD,I1)
 .I IND?1U.E S %SCV("MS",IND)=$P($G(@$$^W4ORD@(HZM)),RAZD,I1)
 ;
 S %SCV("MS","HZM")=HZM
 ;
 I $$^W4MSL(NMB) D
 .N IR S IR=$$IR^W4L(NMB)
 .N SHA S SHA=%SCV("MS","SHAA")
 .I $H<$$^%L1DC(%SCV("MS","TRH"),3)!(SHA*60+$P(SHA,":",2)-($P($H,",",2)\60)-90>$$DAKOT(IR)),SHA>$$SHAAZ^W4PRM D
 ..N TX S TX="diegc dpnfd" D PCB(TX,1)
 ..S P1HZDH=""
 ;
 I $D(P1HZMET) D PCETEK
 ;
 I $G(P1HZOP) Q:'$G(@$$^W4PRM@("HZMHV"))  D  G HEADE
 .D HDAV($G(PRINT))
 ;
 I $$MSPYOM^W4PRM,$$^W4MSD(NMB)!'$$ZAHI^W4PRM D MSPYOM
 ;
 I $G(PRINT) S FIRSTHD(PRINT)=1
 ;
 I $G(@$$^W4PRM@("PCULNM")) D PCULNM
 ;
 I $$^W4MSL(NMB),'$G(@$$^W4PRM@("MSD")),'$G(@$$^W4PRM@("MTAW")) D
 .D PCBR(" !!  DELIVERY !! ")
 ;
 I N1>1 D PCBR("-----  jynd  -----")
 ;
 I $$PCKAV D KAV
 D PCNOMORD
 ;
 ;;S ^AA("W4HZPCHD","PRINT",HZM,+$G(PRINT))=""
 ;
 ;;S ^AA("W4HZPCHD","PRINT",HZM,+$G(PRINT),"STEP")=1
 ;
 I $$PAIDIT(HZM)!($$SF^W4PRM&(+$G(PRINT)'=63)) D  G HEADE1
 .D PCHBR($$NAME^W4HZMST(HZM),1)
 .Q:$$PAIDIT(HZM)
 .D PCTOSHAA
 .Q
 .D KTV
 .N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 .I $L(CMNT) D PCCMNT(CMNT,$$WD)
 ;
 I '$$SF^W4PRM D ZMANK
 ;
 ;;S ^AA("W4HZPCHD","PRINT",HZM,+$G(PRINT),"STEP")=2
 I $$NOHDORD G HEADE1
 ;
 I $$COMPANY^W4SHPORD D
 .I $$PCKAV D KAV
 .D PCCOMPN
 ;
TBL ;
 S ^AA("W4HZPCHD","PRINT",HZM,+$G(PRINT),"STEP")=3
 D PCTBLK ;-- PRINT TABLE OR CUSTOMER NUMBER
 ;
 D PCHRA
 ;
 I $$HZM^W4MSD(HZM)&'$$TAW^W4MSD(HZM) D
 .Q:$$SF^W4PRM
 .D PCSD
 ;
 I $$^W4MSL(NMB) D
 .I '$$COMPANY^W4SHPORD D PCLK1
 .;;S ^AA("W4HZPCHD","PRINT",HZM,+$G(PRINT),"STEP")=4
 .I '$G(@$$^W4PRM@("BONADDR")) G TOSHAA
 .
 .D KTV
 .S ^AA("W4HZPCHD","PRINT",HZM,+$G(PRINT),"STEP")=5
 .
 .N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 .I $L(CMNT) D PCCMNT(CMNT,$$WD)
 .X LINEPC
 .
 .I $$SF^W4PRM G TOSHAA
 . 
TOSHAA .
 .D PCTOSHAA
 .I $$PCKAV D KAV
 .
 .I $$SOAD^W4HZMST(HZM),$$MSLSD^W4PRM D PCSD
 ;
 I $$SF^W4PRM G HEADE1
 ;
HEADE ;
 D PRINTTIME
 ;
HEADE1 S:$G(PRINT)="" PRINT="-"
 ;
 I $G(@$$^W4PRM@("NOPRNNM")) Q
 D PCNMPRN
 ;
 X LINEPC
 Q
 ;
 ;
S1 D S1^W4HZMPC
 Q
 ;
PCHDMSL ;
 N HD S HD="DELIVERY !"
 I $$TAKEAWAY^W4HZMST(HZM)!$$TAWDLV^W4PRM S HD="TAKE AWAY !"
 I $$SF^W4PRM,$$PAIDIT(HZM) S HD="PAIDIT !"
 D PCBC(HD)
 Q
 ;
MSPYOM ;
 N PRINV S PRINV=1
 N MSP S MSP=$$^W4MSPYOM(HZM)
 D PCBC($J("",19),1)
 D PCBC($J("",8)_$J(MSP,3)_$J("",8),1)
 D PCBC($J("",19),1)
 K PRINV
 D PCBC("")
 Q
 ;
PCULNM ;
 N ULAM S ULAM=$G(@$$^W4MAIN("VRMSU")@(NMB)) Q:'ULAM
 N ULAMNAME S ULAMNAME=$$SPA^%L1FRM($$ULAMNAME^W4POSULM(ULAM))
 I ULAMNAME="" S ULAMNAME=$$SPA^%L1FRM(ULAM_" mle`")
 D PCBC(ULAMNAME)
 Q
 ;
 ;
PCNOMORD ;
 N ORDBIG S ORDBIG=$G(@$$^W4PRM@("ORDBIG"))
 ;
 S TXT=" "_$G(%SCV("MS","HZM"))_" 'qn dpnfd "
 I $$REDADD S TXT="<R>"_TXT
 I $G(@$$^W4PRM@("INVHZ")),$$HZM^W4MSL(HZM) S PRINV=1
 ;
 I ORDBIG D
 .N NOCLRSP S NOCLRSP=""
 .D PCBR(TXT,ORDBIG=1)
 .X LINEPC
 ;
 K PRINV
 ;
 I 'ORDBIG S TXT=$J(TXT,$$WD) D S1
 Q
 ;
 ;
ZMANK S TXT=$J(%SCV("MS","ZMANK"),20)_" :dpnfd zlaw onf" D S1
 Q
 ;
PCCOMPN ;
 D PCHBR($$COMP^W4HZMST(HZM)_" : dxag")
 Q
 ;
PCTBLK ;
 S TXT=$J(%SCV("MS","NMB"),3)
 S TXT=TXT_" :"_$S($$^W4MSL(NMB):"  xtqn",1:$$PC^W4DICTBL)
 N BIG
 S BIG=$G(@$$^W4PRM@("TBLBIG"))
 D
 .I BIG=0 S TXT=$J(TXT,$$WD-1) D S1 Q
 .I BIG=2 S BIG=0
 .I $$^W4MSD(NMB),$$INVSH^W4PRM D
 ..S TXT=$G(%MDP("I"))_"    "_TXT_$J("",4)_$G(%MDP("IE"))
 .D PCBR(TXT,BIG)
 ;
 I $$^W4MSD(NMB) D  ; -- SHEM SHULHAN
 .N LKH1 S LKH1=$$^W4SHULHN(NMB)
 .I $L(LKH1) D PCHBR(LKH1)
 .
 .I $$^W4MSL($G(LKHN)),$G(@$$^W4PRM@("HZMLKHN")) D
 ..D PCBR($J(LKHN,10*$$KFPC)_" : gewld")
 ..D PCHBR($$LKH^W4L(LKHN))
 ..X LINEPC
 ;
 I $$^W4MSL(NMB) D
 .N MAZMIN S MAZMIN=$$MAZMIN^W4HZTH(HZM)
 .I MAZMIN'="",'$$LL^W4HZMST(HZM) D
 ..N DL,TX S DL=10*$$KFPC
 ..S TX=$$HBR^%L1FRM(MAZMIN,DL)_" :oinfnd"
 ..D PCBR(TX)
 .D PCTEL
 .I $$PCKAV D KAV
 Q
 ;
 ;
PCHRA ;
 N TEUR S TEUR=$$SPA^%L1FRM($$HRAED^W4HZMST(HZM))
 I $L(TEUR) D
 .D PCBR("")
 .D PCCMNT(TEUR,$$WD)
 .I $$PCKAV D KAV
 Q
 ;
PCVIP ;
 I $$SUGL1^W4L(NMB)["VIP" D
 .N TX S TX="!!!   VIP   !!!"
 .D PCBC(TX)
 Q
 ;
PCLK1 ;
 N LK1 S LK1=$$NAME^W4HZMST(HZM)
 I LK1="" S LK1=$$LKH^W4L(NMB)
 D PCHBR(LK1)
 Q
 ;
PCTOSHAA ; 
 ;;I '$$SF^W4PRM S TXT=$J("",10)_":a gewll ribdl dxen` dpnfd" D S1
 ;;I $$SF^W4PRM S TXT=$J("",10)_": dryl" D S1 
 ;
 S TXT=%SCV("MS","SHAA")
 I $D(P1HZDH) S TXT=TXT_" "_%SCV("MS","TRH")
 S TXT=TXT_" -l"
 D PCBR(TXT,1)
 X LINEPC
 Q
 ;
 ;
PCNMPRN ;
 S TXT=$$MDPNAME($G(PRINT))_" : zqtcn my"
 S TXT=$C(10)_$J(TXT,$$WD)
 D S1
 Q
 ;
 I '$G(@$$^W4PRM@("NMPRNSML")) S TXT=$C(10)_$$HBR^%L1FRM($$MDPNAME($G(PRINT)),8)_" : zqtcn my" D PCBR(TXT)
 I $G(@$$^W4PRM@("NMPRNSML")) D
 .S TXT=$$MDPNAME($G(PRINT))_" : zqtcn my"
 .S TXT=$C(10)_$J(TXT,$$WD)
 .D S1
 Q
 ;
PCETEK ;
 N I1
 F I1=1:1:3 D PCB("!!! wzrd")
 Q
 ;
 ;
PCSD ;
 N SOAD S SOAD=$G(%SCV("MS","SOAD")) Q:'SOAD
 S TXT=$J(SOAD,3)_" : micreq 'qn"
 N BIG
 S BIG=$G(@$$^W4PRM@("SOADBIG"))
 ;
 I BIG=0 D  Q
 .S TXT=$J("",$$WD-$L(TXT)-1)_TXT D S1
 ;
 D PCBR(TXT,2-BIG)
 Q
 ;
 ;
PRINTTIME ;
 S %TIM=$ZD($H,"24:60")
 N TX S TX=%TIM_" dqtcd onf"
 I $G(@$$^W4PRM@("BIGTIME")) D PCBR(TX,$S($G(@$$^W4PRM@("BIGTIME"))=1:1,1:0))
 I '$G(@$$^W4PRM@("BIGTIME")) S TXT=$J("",21)_%TIM_" dqtcd onf" D S1
 Q
 ;
PCBR(TX,BB,DOPSM)
 D PCBR^W4HZMPC(TX,$G(BB),$G(DOPSM))
 Q
 ;
PCHBR(TX,BB)
 S TX=$$HBR^%L1FRM(TX,$$WDBIG)
 D PCBR(TX,$G(BB))
 Q
 ;
SETPC(PRINT,TXT) ;
 D SETPC^W4HZMPC($G(PRINT),$G(TXT))
 Q
 ;
WD(STAM) ;
 Q $$WD^W4HZMPC
 ;
 ;
PCTEL ;
 N PELE S PELE=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",7)
 N TEL S TEL=$$TEL(NMB)
 I PELE?.P,TEL'?.P S PELE=TEL
 I PELE'?.P D PCBR(PELE_": 'lh") X LINEPC
 Q
 ;
KTV ; 
 N IR S IR=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",4)
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 N BAIT S BAIT=$P(@$$^W4ORD@(HZM),"\",15)
 N DIRA S DIRA=$P(@$$^W4ORD@(HZM),"\",14)
 N KTV S KTV=$P(@$$^W4ORD@(HZM),"\",3)
 N CNISA S CNISA=$P(@$$^W4ORD@(HZM),"\",16)
 N KOMA S KOMA=$P(@$$^W4ORD@(HZM),"\",13)
 ;
 I HRAED["SODEXO" D PCCMNT(KTV,$$WD) G PCIR
 
 I '$$BAITDIRA^W4PRM!$$SF^W4PRM D PCHBR(BAIT_$S(DIRA:"/"_DIRA,1:"")_" "_KTV)
 I $$BAITDIRA^W4PRM,'$$SF^W4PRM D
 .D PCHBR(KTV)
 .D PCHBR(DIRA_" : dxic  "_BAIT_" : zia")
 ;
PCIR I KTV'["TAKEAWAY" D
 .I CNISA'=""!(KOMA'="") D
 ..D PCBR(CNISA_":dqipk "_KOMA_" :dnew")
 .D PCBR(IR_": xir") X LINEPC
 ;
 I $$PCKAV D KAV
 Q
 ;
PCCMNT(CMNT,LN) ;
 I $G(CMNT)="" Q
 N LINEPC S LINEPC="S TXT="""" D S1"
 N TXT N SM S SM=0
 ;
 I $L(CMNT)<(LN\2+1) D  Q
 .D PCBR(CMNT) X LINEPC
 ;
 ;;I $L(CMNT)'>LN S TXT=$J(CMNT,LN) D S1 X LINEPC Q
 ;
 D DLG^%L1FRM(CMNT,LN\2)
 ;
 N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 .N TXT S TXT=$G(%MDP("B"))_%CHAST(1,I)_$G(%MDP("N")) D S1
 ;
 X LINEPC
 Q
 ;
 ;
HEADN ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 S %MDP("N")=$G(%MDP("N"))
 S %MDP("B")=$G(%MDP("B"))
 S %MDP("BB")=$G(%MDP("BB"))
 S %MDP("RL")=$G(%MDP("RL"))
 S %MDP("CUT")=$G(%MDP("CUT"))
 ;
 I $$QNPARHZ^W4PRM D
 .D KAV2
 .D PCBR($J(QPAR(PRINT),7)_" :  oeaa mihixt")
 ;
 N MKLD S MKLD="" K %MDP D DEFMDP(PRINT) Q:'$D(%MDP)
 I $G(%SCV("MS","MKBL"))'="" D
 .S MKLD=$G(@$$^W4GL("NAME")@(%SCV("MS","MKBL"),1))
 ;
 I $G(@$$^W4PRM@("MLZ")) D
 .N A S A=$G(@$$^W4GL("P1MLZ")@(HZM)) Q:A=""
 .S MKLD=$G(@$$^W4GL("NAME")@(A,1))
 ;
 D LL
 ;
 S TXT="" D S1 S TXT=$$HBR^%L1FRM(MKLD,24) D S1
 ;
 D
 .I $$^W4MSD(NMB) D
 ..D PCBR($J(NMB,3)_" :"_$$PC^W4DICTBL,"",1)
 ..
 ..I $L($$MZMNM^W4HZMST(HZM)),'$$LL^W4HZMST(HZM) D
 ...N MZMNM S MZMNM=$$MZMNM^W4HZMST(HZM)
 ...I $TR(MZMNM,"[] ","")=$TR($$HRAED^W4HZMST(HZM),"[] ","") Q
 ...N TX S TX=$J(MZMNM,9*$$KFPC)_" : oinfnd"
 ...D PCBR(TX)
 ...S @$$^W4ORD@(HZM,"MZMNM","PC")=""
 .
 .X LINEPC
 .I $$PAIDIT(HZM)!$$SF^W4PRM D PCHBR($$NAME^W4HZMST(HZM),1) Q
 .
 .I $$^W4MSL(NMB),'$$NOHDORD D
 ..D
 ...N TX S TX=NMB_" : gewl"
 ...D PCBR(TX)
 ..
 ..D PCHBR($$NAME^W4HZMST(HZM)) Q
 ;
 ;;I $G(PRBIT) S TXT=$C(10,10,10)_"       ___________ : dnizg " D S1
 ;
 I $D(P1HZDH) F I1=1:1:3 D PCB("diegc dpnfd") K P1HZDH
 ;
 I $$TAW^W4DLPK(NMB),$G(@$$^W4PRM@("TAWHRKOT")),$L($G(@$$^W4PRM@("TAWHR"))) D TAWHRKOT
 ;
 I $D(P1HZMET) X LINEPC D PCETEK
 ;
 D CUT(PRINT)
 Q
 ;
 ; 
MDPNAME(PRINT) ;
 I $G(PRINT)="" Q ""
 N N,MDPNAME,IND S MDPNAME=""
 D GMDP
 S N="" F  S N=$O(@GMDP@(N)) Q:N=""  D  Q:$L(MDPNAME)
 .I PRINT'["-",PRINT=$P($G(^(N)),"\",3) S MDPNAME=$P($G(^(N)),"\",4) Q
 .S IND=$P(PRINT,"-",2) Q:'IND
 .S MDPNAME=$P($G(^(IND)),"\",4) Q
 Q MDPNAME
 ;
NOHDORD(STAM) ;
 I $$DISPATH Q 0
 N MDPNM S MDPNM=$$MDPNAME($G(PRINT))
 S MDPNM=$TR(MDPNM,"'","")
 I MDPNM["glyn"!(MDPNM["xwv") Q 0
 I '$G(@$$^W4PRM@("NOHDORD")) Q 0
 Q 1
 ;
PCB(TX,BB)
 D PC^W4HZMPC(TX,$G(BB))
 Q
 ;
PCBC(TX,BB)
 D PCBC^W4HZMPC(TX,$G(BB))
 Q
 ;
PCSTB(TX,BB)
 D PCSTB^W4HZMPC(TX,$G(BB))
 Q
 ;
PAIDIT(HZM) ; 
 I $$SF^W4PRM,$$NMB^W4HZMST(HZM)="0500000000" Q 1 
 Q 0 
 ;
KFPC(STAM) ;
 Q $$KFPC^W4HZMPC
 ;
HDAV(PRINT) ;
 Q:'$G(@$$^W4PRM@("HZMHV"))
 N pc s pc=""
 I $$NEWPC N SM S SM=5
 S TXT=$G(%MDP("BEEP"))_%MDP("B")_$$TS("  !!!   d x a r d ")_%MDP("N") D SETPC(PRINT,TXT)
 S TXT="" D SETPC(PRINT,TXT)
 S TXT=$J("",15)_%MDP("B")_$J(NMB,3)_%MDP("N")_$$TS(" ogleyl ") D SETPC(PRINT,TXT)
 N TOSH,FROMSH
 S TOSH=$$^W4SHULHN(NMB)
 S FROMSH=$$^W4SHULHN($G(P1HZOP))
 ;
 I TOSH'="" D
 .S TXT=$J("",10)_%MDP("B")_$$TS(TOSH)_%MDP("N") D SETPC(PRINT,TXT)
 S TXT=$J("",15)_%MDP("B")_$J($G(P1HZOP),3)_%MDP("N")_$$TS(" ogleyn") D SETPC(PRINT,TXT)
 I FROMSH'="" D
 .S TXT=$J("",10)_%MDP("B")_$$TS(FROMSH)_%MDP("N") D SETPC(PRINT,TXT)
 S TXT="" D SETPC(PRINT,TXT)
 ;
 S TXT=$J("",5)_$J(HZM,5)_$$TS(" dpnfdl ")_$J($G(P1HZOP("HZ")),5)_$$TS(" dpnfdn")
 D SETPC(PRINT,TXT)
 S TXT="" D SETPC(PRINT,TXT)
 S TXT=$J("",10)_%MDP("B")_$$TS($G(P1HZOP("SD")))_%MDP("N")_$$TS(" micreq exar ")
 D SETPC(PRINT,TXT)
 Q
 ;
TS(TXT) Q $TR(TXT,TS0,TSS)
 ;
LL ;
 Q:$G(SQN)'>0
 I $$LL^W4HZMST(HZM) D
 .N ZW,LL,LL1,MZMNM
 .S LL=$$LL^W4HZMST(HZM)
 .S MZMNM=$$MZMNM^W4HZMST(HZM)
 .S LL1=$S(LL=1:"zayl",LL=2:"zgwl",LL=3:"ybnd lr",1:"    ")
 .N COLZW S COLZW=$$WDBIG
 .S ZW=$TR($J("",COLZW)," ","*")
 .S TXT=$C(10,10) D S1
 .D PCBR(ZW)
 .D PCBR(LL1)
 .D PCBR(MZMNM)
 .D PCBR(ZW)
 .S @$$^W4ORD@(HZM,"LL","PC")=""
 .S @$$^W4ORD@(HZM,"MZMNM","PC")=""
 Q
 ;
DAKOT(IR) ;
 I '$L($G(IR)) G ENDDK
 N INDIR S INDIR=$$INDIR(IR)
 I INDIR,$P($G(@$$^W4GL("P1IR")@(INDIR,1)),"\",2) Q $P($G(@$$^W4GL("P1IR")@(INDIR,1)),"\",2)
ENDDK Q $G(@$$^W4PRM@("TIMEHZ"),30)
 ;
TEL(NMB)
 Q $$TEL^W4HZTM($S($$TELA^W4L(NMB):$$TELA^W4L(NMB),$$TELB^W4L(NMB):$$TELB^W4L(NMB),1:NMB))
 ;
TAWHRKOT ;
 N TXT
 S TXT="" D S1
 S TXT=%MDP("BB")_"!!!  "_@$$^W4PRM@("TAWHR")_"  !!!"_%MDP("N") D S1
 S TXT="" D S1
 Q
 ;
KAV2 N TXT S TXT=""
 I $$HZPCSP^W4PRM S TXT=$C(10)
 S TXT=TXT_"  "_$TR($J("",$$WD)," ","=") D S1 ; --- WAS S2 ; 14/06/18
 Q
 ;
GMDP ;
 S GMDP=$$^W4PRM_"(""MDP"")"
 Q
 ;
WDBIG(STAM) ;
 Q $J(($$WD/2)*$$KFPC,0,0)
 ;
INDIR(IR0) N N S N="" I $G(IR0)="" Q " "
 I IR0[")" S IR0=$P(IR0,")",2,25)
 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  I $TR(NI," ","")=$TR(IR0," ","") Q
 .S NI=^(N) S:NI[")" NI=$P(NI,")",2)
 Q N
 ;
XPMOD(PRINT) ;
 Q $$XPMOD^W4HZMPC($G(PRINT))
 ;
MVALL(STAM)
 Q $$MVALL^W4HZMPC
 ;
REDADD(STAM) ;
 Q $$REDADD^W4HZMPC
 ;
DEFMDP(PRINT) ;
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
CUT(PRINT) ;
 D CUT^W4HZMPC($G(PRINT))
 Q
 ;
NEWPC(STAM)
 Q '$$OLDPC^W4PRM
 ;
DISPATH(STAM) ;
 Q ($G(P1HZHB1)="M")
 ;
PCKAV(STAM) ; 
 Q $G(@$$^W4PRM@("PCHDKAV"))
 ; 
KAV(STAM) ; 
 N TXT
 S TXT=$G(%MDP("B"))_$TR($J("",$$WD\2+1)," ","-")_$G(%MDP("N"))
 D S1 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZPCHD
W4HZPCHD(HZM) ; [ 22.09.26 19:51 ] [ 14.08.26 11:35 ] [ 21.07.26 09:45 ] 
HEAD ;
 I '$G(N1) S N1=1
 I '$G(SM) S SM=1
 I '$D(HZSCR) D ^W4IN
 D ^%L1TS
 S NMB=$$NMB^W4HZMST(HZM)
 I $$BONSCR($G(PRINT)) Q
 ;
 N %MDP D DEFMDP(PRINT)
 I $$XPMOD($G(PRINT)) D PCB("")
 I $$MVALL!($G(P1HZOP)="NOPC") Q
 I $G(P1HZOP)="NOPC" Q
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 S LINEPC="N TXT S TXT="""" D S1"
 N pc S pc="" ; ---
 ;
 I $$DISPATH D
 .D PCB(" ! glynl ")
 ;
 I '$$DISPATH,$$^W4MSL(NMB)!$$TAKEAWAY^W4HZMST(HZM),$$MSD^W4PRM!$$TAW^W4PRM,'$$WOLT(HZM) D
 .D PCHDMSL ; -- DELIVERY
 .X LINEPC
 ;
 N RAZD,STR,IND
 S STR=$G(@$$^W4SCR@(HZSCR,"P","REF",1,"STR"))
 S RAZD=$G(^("RZD")) S:RAZD="" RAZD="\"
 ;
 N I1 F I1=1:1:$L(STR,RAZD) D
 .S IND=$P(STR,RAZD,I1)
 .I IND?1U.E S %SCV("MS",IND)=$P($G(@$$^W4ORD@(HZM)),RAZD,I1)
 ;
 S %SCV("MS","HZM")=HZM
 ;
 I $$^W4MSL(NMB) D
 .I $$DAHUY(HZM) D
 ..N TX S TX="diegc dpnfd" D PCB(TX,1)
 ..S P1HZDH=""
 .X LINEPC
 ;
 I $D(P1HZMET) D PCETEK
 ;
 I $G(P1HZOP) Q:'$$PCMV^W4PRM  D  G HEADE
 .D HDAV($G(PRINT))
 ;
 I $$MSPYOM^W4PRM,$$^W4MSD(NMB)!'$$ZAHI^W4PRM D MSPYOM
 ;
 I $G(PRINT) S FIRSTHD(PRINT)=1
 ;
 I $G(@$$^W4PRM@("PCULNM")) D PCULNM
 ;
 I $$^W4MSL(NMB),'$$MSD^W4PRM,'$$TAW^W4PRM,$$STAGE^W4HZMST'=1 D  ; -- SYSTEM DELIVERY ONLY 
 .D PCBR("!!!   DELIVERY  !!!")
 ;
 I $$^W4MSL(NMB),$$STAGE^W4HZMST(HZM)=1 D 
 .D PCBR("!!! lwyn zpnfd !!!")
 .D PCB("")
 ;
 D KILL^%W1PRM("CONTINORD")
 ;
 I $G(PRINT)'="",$D(@$$^W4ORD@(HZM,"PRINT",PRINT)) D
 .D PCB("")
 .D PCBR("------  jynd  -----")
 .D PCB("")
 .D PUT^%W1PRM("CONTINORD",1)
 ;
 I $$PCKAV,'$$INVHZ D KAV
 D PCNOMORD
 I $$PCKAV,'$$INVHZ D KAV
 ;
 I $$^W4MSL(NMB) D
 .D
 ..I $$WOLT(HZM) D PCWOLT(HZM) D KAV Q
 ..N MKR,MKR1 S MKR=$$MKRDLV^W4HZMST(HZM),MKR1=""
 ..I MKR D
 ...N MKR1 S MKR1=$$MKR1^W3MKR(MKR)
 ...N BB S BB=0 I $G(@$$^W4PRM@("MKRBIG")) S BB=1 
 ...I MKR1'?.P D PCBR(MKR1_" : xewn",BB) D KAV Q
 .
 .I '$$DISPATH,$$COMPANY^W4SHPORD D
 ..N MAZMIN S MAZMIN=$$MAZMIN^W4HZTH(HZM)
 ..I MAZMIN'="",'$$LL^W4HZMST(HZM) D
 ...N TX S TX=MAZMIN
 ...D PCBR(TX,1)
 ...D KAV
 ...X LINEPC
 ;
 I $$PAIDIT(HZM),$$NAME^W4HZMST(HZM)'?.P D  G HEADE1
 .D PCHBR($$NAME^W4HZMST(HZM),1)
 ;
 D
 .D ZMANK
 .D PRINTTIME I $$PCKAV D KAV
 ;
 I $$^W4KIOSKO(HZM) D PCLK1 G HEADE1 ; -- 24/04/26
 ;
 I $$NOHDORD,$$HZM^W4MSL(HZM) D  G HEADE1
 .D PCTOSHAA,KAV,PCLK1,KAV
 ;
 I $$COMPANY^W4SHPORD,'$$^W4MSD(NMB) D
 .D PCCOMPN
 ;
TBL ;
 I '$G(@$$^W4PRM@("NOPCTBLK")) D PCTBLK ;-- PRINT TABLE OR CUSTOMER NUMBER
 ;
 I $$HZM^W4MSD(HZM)&'$$TAW^W4MSD(HZM),'$$TAW^W4DLPK(NMB) D
 .Q:$G(@$$^W4PRM@("NOPCSD"))
 .D PCSD
 ;
 I $$^W4MSL(NMB) D
 .I '$$COMPANY^W4SHPORD D PCLK1
 .
 .I '$G(@$$^W4PRM@("BONADDR")) D KAV G TOSHAA
 .
 .I $$TAKEAWAY^W4HZMST(HZM) D KAV G TOSHAA
 .
 .D KAV X LINEPC
 .N IR S IR=$$IR^W4HZMST(HZM)
 .I IR'?.P D PCBR($$IR^W4HZMST(HZM),1,-1) X LINEPC
 .D KTV
 .I '$$PCKAV D KAV
 .
 .N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 .I CMNT'?.P X LINEPC D PCCMNT(CMNT,$$WD) X LINEPC
 .
TOSHAA .
 .D PCTOSHAA
 .I $$PCKAV D KAV
 .
 .I $$SOAD^W4HZMST(HZM),$$MSLSD^W4PRM,'$G(@$$^W4PRM@("NOPCSD")) D PCSD
 ;
HEADE ;
 I $$^W4MSL(NMB) D PCHRA
 ;
HEADE1 S:$G(PRINT)="" PRINT="-"
 ;
 I $G(@$$^W4PRM@("NOPRNNM")) G END
 D PCNMPRN
 ;
 ;;X LINEPC
END D NOSHULAM(HZM) Q
 ;
 ;
S1 D S1^W4HZPCFN
 Q
 ;
PCHDMSL ;
 N HD S HD="DELIVERY !"
 I $G(@$$^W4PRM("DLVHBRY"))!$G(@$$^W4PRM@("LLNET")) S HD="gelyn"
 ;
 I $$TAKEAWAY^W4HZMST(HZM)!$$TAWDLV^W4PRM S HD="TAKE AWAY !" D
 .I $G(@$$^W4PRM("DLVHBRY")) S HD="zgwl e`eai"
 .I $G(@$$^W4PRM@("LLNET")) D
 ..N HRA S HRA=$$HRA^W4HZMST(HZM)
 ..I $TR(HRA,"_-","")["DINEIN" S HD="zayl" Q
 ..S HD="zgwl"
 ; 
 I $$SF^W4PRM,$$PAIDIT(HZM) S HD="PAIDIT !"
 I $$STAGE^W4HZMST(HZM) S HD="gelyn zpnfd"
 D PCBC(HD,1)
 Q
 ;
MSPYOM ;
 N PRINV S PRINV=0 I '$G(@$$^W4PRM@("NOIKOT")) S PRINV=1
 N MSP S MSP=$$^W4MSPYOM(HZM)
 D PCNOM(MSP)
 Q
 ;
PCNOM(MSP) ;
 I '$G(MSP) D PCBC("") Q
 I $$BIGINV D PCBC($J("",19),1)
 D PCBC($J("",8)_$J(MSP,3)_$J("",8),1)
 I $$BIGINV D PCBC($J("",19),1)
 K PRINV
 D PCBC("")
 Q
 ;
PCULNM ;
 N ULAM S ULAM=$G(@$$^W4MAIN("VRMSU")@(NMB)) Q:'ULAM
 N ULAMNAME S ULAMNAME=$$SPA^%L1FRM($$ULAMNAME^W4POSULM(ULAM))
 I ULAMNAME="" S ULAMNAME=$$SPA^%L1FRM(ULAM_" mle`")
 D PCBC(ULAMNAME)
 Q
 ;
 ;
PCNOMORD ;
 N ORDBIG S ORDBIG=$G(@$$^W4PRM@("ORDBIG"))
 ;
 S TXT=" "_$G(%SCV("MS","HZM"))_" 'qn dpnfd "
 I $$REDADD S TXT="<R>"_TXT
 ;
 I '$$MSPYOM^W4PRM,$$INVHZ D  Q
 .S PRINV=1
 .N RV S RV=$J("",(20-$L(HZM))\2*$$KFPC)
 .N NOM S NOM=RV_HZM_RV
 .N SP S SP=$J("",$L(NOM))
 .I $$BIGINV D PCBC(SP,1) ; -- 16.09.20
 .D PCBC(NOM,1)
 .I $$BIGINV D PCBC(SP,1) ; -- 16.09.20
 .K PRINV
 .D PCBC("")
 ;
 I ORDBIG D
 .N NOCLRSP S NOCLRSP=""
 .D PCBR(TXT,ORDBIG=1)
 .X LINEPC
 ;
 K PRINV
 ;
 I 'ORDBIG S TXT=$J(TXT,$$WD) D S1
 Q
 ;
 ;
ZMANK
 N TX,TXT S TX=" :dpnfd zlaw onf"
 S TXT=$J(%SCV("MS","ZMANK"),$$WD-$L(TX)-1)_TX D S1
 Q
 ;
PCCOMPN ;
 D PCHBR($$COMP^W4HZMST(HZM)_" :  dxag")
 Q
 ;
PCTBLK ;
 I $$HZM^W4MSL(HZM),$$NOHDORD Q
 ;
 S TXT=$J(%SCV("MS","NMB"),3)
 S TXT=TXT_" :"_$S($$^W4MSL(NMB):"  xtqn",1:$$PC^W4DICTBL)
 N BIG
 S BIG=$G(@$$^W4PRM@("TBLBIG"))
 D
 .I BIG=0 S TXT=$J(TXT,$$WD-1) D S1 Q
 .I BIG=2 S BIG=0
 .I $$^W4MSD(NMB),BIG=3 D
 ..S TXT=$G(%MDP("I"))_"    "_TXT_$J("",5)_$G(%MDP("IE"))
 .D PCBR(TXT,BIG)
 ;
 I $$^W4MSD(NMB) D  ; -- SHEM SHULHAN
 .N LKH1 S LKH1=$$^W4SHULHN(NMB)
 .I $L(LKH1),'$$POS^W4MTAW D PCHBR(LKH1) X LINEPC
 .I $$^W4MSL($G(LKHN)),$G(@$$^W4PRM@("HZMLKHN")) D
 ..D PCBR($J(LKHN,10*$$KFPC)_" : gewld")
 ..D PCHBR($$LKH^W4L(LKHN))
 ..X LINEPC
 .N HRA S HRA=$$SPA^%L1FRM($$HRA^W4HZMST(HZM))
 .I $L(HRA),HRA'=$$SPA^%L1FRM($$MAZMIN^W4HZTH(HZM)) D
 ..D PCBR($$HRA^W4HZMST(HZM))
 ;
 D
 .N MAZMIN S MAZMIN=$$MAZMIN^W4HZTH(HZM)
 .D  I $$HZM^W4MSD(HZM) Q
 ..D PCMAZMIN(MAZMIN)
 ..I $$HZM^W4MSD(HZM) D:$$PCKAV KAV
 .
 .I $$^W4KIOSKO(HZM) Q
 .I $G(@$$^W4PRM@("NOPCTEL")) Q
 .X LINEPC
 .D PCTEL
 .;;I $$PCKAV D KAV ; -- 01/12/23
 Q
 ;
 ;
PCHRA ;
 N TEUR S TEUR=$$SPA^%L1FRM($$HRAED^W4HZMST(HZM))
 I $TR(TEUR," ","")?1":WOLT:"1N.N Q
 I TEUR["10B" S TEUR=$$RPL^%L1FRM(TEUR,"10B"," qia oz 'qn")
 I TEUR["MSH" S TEUR=$$RPL^%L1FRM(TEUR,"MSH","dgelyn 'qn")
 I $G(TEUR)'?.P D
 .I $$PCKAV D KAV
 .D PCBR("")
 .D PCCMNT(TEUR,$$WD)
 .I $$PCKAV D KAV
 Q
 ;
PCVIP ;
 I $$SUGL1^W4L(NMB)["VIP" D
 .N TX S TX="!!!   VIP   !!!"
 .D PCBC(TX)
 Q
 ;
PCLK1 ;
 N LK1 S LK1=$$NAME^W4HZMST(HZM)
 I LK1="" S LK1=$$LKH^W4L(NMB)
 ;;D PCHBR(LK1,1)
 D PCBC(LK1,1)
 Q
 ;
PCTOSHAA ; 
 S TXT=%SCV("MS","SHAA")
 I $D(P1HZDH) S TXT=TXT_" "_%SCV("MS","TRH")
 S TXT=TXT_" -l"
 D PCBR(TXT,1)
 ;;X LINEPC; -- 23/06/26 --> COMMENT
 Q
 ;
 ;
PCNMPRN ;
 S TXT=$$MDPNAME($G(PRINT))_" : zqtcn my"
 S TXT=$C(10)_$J(TXT,$$WD)
 D S1
 Q
 ;
 I '$G(@$$^W4PRM@("NMPRNSML")) S TXT=$C(10)_$$HBR^%L1FRM($$MDPNAME($G(PRINT)),8)_" : zqtcn my" D PCBR(TXT)
 I $G(@$$^W4PRM@("NMPRNSML")) D
 .S TXT=$$MDPNAME($G(PRINT))_" : zqtcn my"
 .S TXT=$C(10)_$J(TXT,$$WD)
 .D S1
 Q
 ;
PCETEK ;
 N I1
 F I1=1:1:3 D PCB("!!! wzrd")
 Q
 ;
 ;
PCSD ;
 N SOAD S SOAD=$G(%SCV("MS","SOAD")) Q:'SOAD
 S TXT=$J(SOAD,3)_" : micreq 'qn"
 N BIG
 S BIG=$G(@$$^W4PRM@("SOADBIG"))
 ;
 I BIG=0 D  Q
 .S TXT=$J("",$$WD-$L(TXT)-1)_TXT D S1
 ;
 D PCBR(TXT,2-BIG)
 Q
 ;
 ;
NOMWOLT(HZM) ;
 N NOMWOLT S NOMWOLT=$$HZLAKNOM^W4HZMST(HZM)
 I 'NOMWOLT D
 .N TX S TX=$$SPA^%L1FRM($$HRAED^W4HZMST(HZM))
 .I TX["WOLT" S NOMWOLT=$$SPA^%L1FRM($P(TX,":",3))
 Q NOMWOLT
 ;
PCWOLT(HZM) ; 
 N NOMWOLT S NOMWOLT=$$NOMWOLT(HZM)
 Q:'NOMWOLT
 N TXT S TXT=NOMWOLT_" : WOLT"
 D PCBR(TXT,1)
 Q
 ;
PRINTTIME ;
 S %TIM=$ZD($H,"24:60")
 N TX S TX=%TIM_" dqtcd onf"
 I $G(@$$^W4PRM@("BIGTIME")) D PCBR(TX,$S($G(@$$^W4PRM@("BIGTIME"))=1:1,1:0))
 I '$G(@$$^W4PRM@("BIGTIME")) S TXT=$J("",$$WD-$L(TX)-1)_TX D S1
 Q
 ;
PCBR(TX,BB,DOPSM)
 I $G(BIGHDN),$G(BB)'=0 S BB=1
 D PCBR^W4HZPCFN(TX,$G(BB),$G(DOPSM))
 Q
 ;
PCHBR(TX,BB)
 I $G(BIGHDN),$G(BB)'=0 S BB=1
 S TX=$$HBR^%L1FRM(TX,$$WDBIG)
 D PCBR(TX,$G(BB))
 Q
 ;
SETPC(PRINT,TXT) ;
 D SETPC^W4HZPCFN($G(PRINT),$G(TXT))
 Q
 ;
WD(STAM) ;
 Q $$WD^W4HZPCFN
 ;
 ;
PCTEL ;
 N PELE S PELE=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",7)
 N TEL S TEL=$$TEL(NMB)
 I PELE?.P,TEL'?.P S PELE=TEL
 I PELE'?.P D PCBR(PELE_":   'lh") X LINEPC
 Q
 ;
KTV ; 
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR="TAKEAWAY"!($TR(IR,".","")="TAW") Q
 ;
 N HRAED S HRAED=$$HRAED^W4HZMST(HZM)
 N BAIT S BAIT=$$BAIT^W4HZMST(HZM)
 N DIRA S DIRA=$$DIRA^W4HZMST(HZM)
 N KTV S KTV=$$KTV^W4HZMST(HZM)
 N CNISA S CNISA=$$CNISA^W4HZMST(HZM)
 N KOMA S KOMA=$$KOMA^W4HZMST(HZM)
 ;
 S KTV=$$SPA^%L1FRM(KTV)
 ;
 I HRAED["SODEXO" D PCCMNT(KTV,$$WD) G PCIR
 ;
 I '$$BAITDIRA^W4PRM!$$SF^W4PRM D
 .N ADR S ADR=BAIT_$S(DIRA:"/"_DIRA,1:"")_" "_KTV
 .Q:ADR?.P
 .D PCCMNT(ADR,$$WD)
 ;
 I $$BAITDIRA^W4PRM,'$$SF^W4PRM D
 .I KTV'?.P D PCCMNT(KTV,$$WD)
 .I $L(BAIT)!$L(DIRA) D PCCMNT(DIRA_" : dxic  "_BAIT_" : zia",$$WD)
 ;
PCIR I KTV'["TAKEAWAY",IR'="TAKEAWAY",$TR(IR,".","")'="TAW" D
 .I CNISA'=""!(KOMA'="") D
 ..D PCCMNT(CNISA_":dqipk "_KOMA_" :dnew",$$WD)
 ;
 Q
 ;
 ;
PCCMNT(CMNT,LN,SMALL) ;
 I $G(CMNT)="" Q
 N LINEPC S LINEPC="S TXT="""" D S1"
 N TXT N SM S SM=0
 ;
 N LN1 S LN1=LN\2 I $G(SMALL) S LN1=LN
 D DLG^%L1FRM(CMNT,LN1*$$KFPC)
 ;
 N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 .I '$G(SMALL) S TXT=$G(%MDP("B"))_%CHAST(1,I)_$G(%MDP("N")) D S1 Q
 .S TXT=%CHAST(1,I) D S1 Q
 ;
 X LINEPC
 Q
 ;
 ;
HEADN ;
 I $$PCTIME^W4PRM,'$D(NOTIME) Q
 I $$BONSCR($G(PRINT)) Q
 ;
 N BIGHDN S BIGHDN=$G(@$$^W4PRM@("BIGHDN"))
 ;
 S %MDP("N")=$G(%MDP("N"))
 S %MDP("B")=$G(%MDP("B"))
 S %MDP("BB")=$G(%MDP("BB"))
 S %MDP("RL")=$G(%MDP("RL"))
 S %MDP("CUT")=$G(%MDP("CUT"))
 ;
 D KAV2
 ;
 N %MDP D DEFMDP(PRINT)
 ;
 I $$HZMRKZ^W4PRM=2 D
 .Q:PRINT'["-"
 .N MDP S MDP=$P(PRINT,"-",2)
 .D PC^W4HZMR(PRINT)
 ;
 I $$QNPARHZ^W4PRM,$G(QPAR(PRINT)) D
 .;;D PCBR(QPAR(PRINT)_" : oeaa mihixt")
 .N TXT S TXT=$$HBR^%L1FRM(QPAR(PRINT)_" : oeaa zepn",$$WD\2*$$KFPC)
 .S TXT=$G(%MDP("B"))_TXT_$G(%MDP("N")) D S1
 ;
 N MKLD S MKLD=""
 I $G(%SCV("MS","MKBL"))'="" D
 .S MKLD=$G(@$$^W4GL("NAME")@(%SCV("MS","MKBL"),1))
 ;
 I $G(@$$^W4PRM@("MLZ")) D
 .N A S A=$G(@$$^W4GL("P1MLZ")@(HZM)) Q:A=""
 .S MKLD=$G(@$$^W4GNAME@(A,1))
 ;
 D LL
 ;
 S TXT=$$HBR^%L1FRM(MKLD,$$WD-1) D S1
 ;
 I $$^W4MSD(NMB) D
 .D PCBR($J(NMB,3)_" :"_$$PC^W4DICTBL)
 .N MAZMIN S MAZMIN=$$MAZMIN^W4HZTH(HZM)
 .I $G(@$$^W4PRM@("MAZMINDN")) D PCMAZMIN(MAZMIN)
 ;
 D
 .X LINEPC
 .I $$PAIDIT(HZM)!$$SF^W4PRM D PCHBR($$NAME^W4HZMST(HZM),1) Q
 .
 .I $$^W4MSL(NMB),'$$NOHDORD D
 ..D
 ...N TX S TX=NMB_" : gewl"
 ...D PCBR(TX)
 ..
 ..D PCHBR($$NAME^W4HZMST(HZM)) Q
 ;
 I $$MSPYOM^W4PRM,$$^W4MSD(NMB)!'$$ZAHI^W4PRM D MSPYOM
 ;
 I $$ITRA^W4HZMST(HZM)>1,$$HZAFTPAY^W4PRM!$G(@$$^W4PRM@("HZLOSHUL")),'$$^W4HZMH(HZM) D
 .D PCB("! dnley `l dpnfd !",1)
 ;
 I $$^W4MSL(NMB),$$WOLT(HZM) D PCWOLT(HZM) ; -- 16/02/23
 ;
 I $D(P1HZDH) F I1=1:1:3 D PCB("diegc dpnfd") K P1HZDH
 ;
 I $$TAW^W4DLPK(NMB),$G(@$$^W4PRM@("TAWHRKOT")),$L($G(@$$^W4PRM@("TAWHR"))) D TAWHRKOT
 ;
 I $$GETP^%W1PRM("CONTINORD") D
 .D PCB("")
 .D PCBR("------  jynd  -----")
 .D KILL^%W1PRM("CONTINORD")
 ;
 I $D(P1HZMET) X LINEPC D PCETEK
 ;
 D CUT(PRINT)
 Q
 ;
 ; 
MDPNAME(PRINT) ;
 I $G(PRINT)="" Q ""
 N N,MDPNAME,IND S MDPNAME=""
 D GMDP
 S N="" F  S N=$O(@GMDP@(N)) Q:N=""  D  Q:$L(MDPNAME)
 .I PRINT'["-",PRINT=$P($G(^(N)),"\",3) S MDPNAME=$P($G(^(N)),"\",4) Q
 .S IND=$P(PRINT,"-",2) Q:'IND
 .S MDPNAME=$P($G(^(IND)),"\",4) Q
 Q MDPNAME
 ;
NOHDORD(STAM) ;
 I $$DISPATH Q 0
 N MDPNM S MDPNM=$$MDPNAME($G(PRINT))
 S MDPNM=$TR(MDPNM,"'","")
 I MDPNM["glyn"!(MDPNM["xwv") Q 0
 I '$G(@$$^W4PRM@("NOHDORD")) Q 0
 Q 1
 ;
PCB(TX,BB)
 D PCB^W4HZPCFN(TX,$G(BB))
 Q
 ;
PCBC(TX,BB)
 D PCBC^W4HZPCFN(TX,$G(BB))
 Q
 ;
PCSTB(TX,BB)
 D PCSTB^W4HZPCFN(TX,$G(BB))
 Q
 ;
KIOSK(HZM) ;
 Q $$PAIDIT(HZM)
 ;
PAIDIT(HZM) ; 
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 Q $$PAIDITN(NMB)
 ;
PAIDITN(NMB) ;
 I $$^W4KIOSKO(NMB) Q 1 
 Q 0 
 ;
WOLT(HZM) ; 
 I $$WOLT^W4HZMST(HZM) Q 1
 N TX S TX=$$SPA^%L1FRM($$HRAED^W4HZMST(HZM))
 I $$SPA^%L1FRM($P(TX,":",2))="WOLT" Q 1
 Q 0
 ;
KFPC(STAM) ;
 Q $$KFPC^W4HZPCFN
 ;
HDAV(PRINT) ;
 Q:'$G(@$$^W4PRM@("HZMHV"))
 N pc s pc=""
 I $$NEWPC N SM S SM=5
 S TXT=$G(%MDP("BEEP"))_%MDP("B")_$$TS("  !!!   d x a r d ")_%MDP("N") D SETPC(PRINT,TXT)
 S TXT="" D SETPC(PRINT,TXT)
 S TXT=$J("",15)_%MDP("B")_$J(NMB,3)_%MDP("N")_$$TS(" ogleyl ") D SETPC(PRINT,TXT)
 N TOSH,FROMSH
 S TOSH=$$^W4SHULHN(NMB)
 S FROMSH=$$^W4SHULHN($G(P1HZOP))
 ;
 I TOSH'="" D
 .S TXT=$J("",10)_%MDP("B")_$$TS(TOSH)_%MDP("N") D SETPC(PRINT,TXT)
 S TXT=$J("",15)_%MDP("B")_$J($G(P1HZOP),3)_%MDP("N")_$$TS(" ogleyn") D SETPC(PRINT,TXT)
 I FROMSH'="" D
 .S TXT=$J("",10)_%MDP("B")_$$TS(FROMSH)_%MDP("N") D SETPC(PRINT,TXT)
 S TXT="" D SETPC(PRINT,TXT)
 ;
 S TXT=$J("",5)_$J(HZM,5)_$$TS(" dpnfdl ")_$J($G(P1HZOP("HZ")),5)_$$TS(" dpnfdn")
 D SETPC(PRINT,TXT)
 S TXT="" D SETPC(PRINT,TXT)
 S TXT=$J("",10)_%MDP("B")_$$TS($G(P1HZOP("SD")))_%MDP("N")_$$TS(" micreq exar ")
 D SETPC(PRINT,TXT)
 Q
 ;
TS(TXT) Q $TR(TXT,TS0,TSS)
 ;
LL ;
 Q:$G(SQN)'>0
 I $$LL^W4HZMST(HZM) D
 .N ZW,LL,LL1,MZMNM
 .S LL=$$LL^W4HZMST(HZM)
 .S MZMNM=$$MZMNM^W4HZMST(HZM)
 .S LL1=$S(LL=1:"zayl",LL=2:"zgwl",LL=3:"ybnd lr",1:"    ")
 .N COLZW S COLZW=$$WDBIG
 .S ZW=$TR($J("",COLZW)," ","*")
 .S TXT=$C(10,10) D S1
 .D PCBR(ZW)
 .D PCBR(LL1)
 .D PCBR(MZMNM)
 .D PCBR(ZW)
 .S @$$^W4ORD@(HZM,"LL","PC")=""
 .S @$$^W4ORD@(HZM,"MZMNM","PC")=""
 Q
 ;
DAKOT(IR,AZOR) ;
 N DAKOT
 I $G(AZOR),$D(@$$^W4GL("W4PLGN")@(1,"DESCR",AZOR))#2 D  Q DAKOT
 .S DAKOT=$P($G(@$$^W4GL("W4PLGN")@(1,"DESCR",AZOR,1)),"\",2)
 ;
 I '$L($G(IR)) G ENDDK
 N INDIR S INDIR=$$INDIR(IR)
 I INDIR,$P($G(@$$^W4GL("P1IR")@(INDIR,1)),"\",2) Q $P($G(@$$^W4GL("P1IR")@(INDIR,1)),"\",2)
ENDDK Q $G(@$$^W4PRM@("TIMEHZ"),30)
 ;
 ;
TEL(NMB)
 Q $$TEL^W4HZTM($S($$TELA^W4L(NMB):$$TELA^W4L(NMB),$$TELB^W4L(NMB):$$TELB^W4L(NMB),1:NMB))
 ;
TAWHRKOT ;
 N TXT
 S TXT="" D S1
 S TXT=%MDP("BB")_"!!!  "_@$$^W4PRM@("TAWHR")_"  !!!"_%MDP("N") D S1
 S TXT="" D S1
 Q
 ;
KAV2 ;
 I $$BONSCR($G(PRINT)) Q
 N TXT S TXT=""
 S TXT="" D S1
 S TXT=$TR($J("",$$WD)," ","=") D S1 ; --- WAS S2 ; 14/06/18
 Q
 ;
GMDP ;
 S GMDP=$$^W4PRM_"(""MDP"")"
 Q
 ;
WDBIG(STAM) ;
 Q $J(($$WD/2)*$$KFPC,0,0)
 ;
INDIR(IR0) N N S N="" I $G(IR0)="" Q " "
 I IR0[")" S IR0=$P(IR0,")",2,25)
 F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  I $TR(NI," ","")=$TR(IR0," ","") Q
 .S NI=$G(^(N)) S:NI[")" NI=$P(NI,")",2)
 Q N
 ;
XPMOD(PRINT) ;
 Q $$XPMOD^W4HZPCFN($G(PRINT))
 ;
MVALL(STAM)
 Q $$MVALL^W4HZPCFN
 ;
REDADD(STAM) ;
 Q $$REDADD^W4HZPCFN
 ;
DEFMDP(PRINT) ;
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
CUT(PRINT) ;
 D CUT^W4HZPCFN($G(PRINT))
 Q
 ;
NEWPC(STAM)
 Q '$$OLDPC^W4PRM
 ;
DISPATH(STAM) ;
 Q ($G(P1HZHB1)="M")
 ;
PCKAV(STAM) ; 
 Q '$G(@$$^W4PRM@("NOHDKAV"))
 ; 
KAV(STAM) ; 
 I $$BONSCR($G(PRINT)) Q
 N TXT
 S TXT=$G(%MDP("B"))_$TR($J("",$$WD\2*$$KFPC)," ","-")_$G(%MDP("N"))
 D S1 
 Q 
 ;
NOSHULAM(HZM) ; 
 N HZML S HZML=$$HZMLAK^W4HZMST(HZM)
 I $E(HZML)="W",$$CODTS^W4HZMST(HZM)=3,$$ITRA^W4HZMST(HZM)>.5,'$P($G(@$$^W4ORD@(HZM,"CB")),"\",4),'$$^W4HZMH(HZM) D
 .N TXT D KAV 
 .D PCBC("! dnley  `l  dpnfd",1)
 .D PCBC("")
 .D PCBC("! xeyi` lawl dpkdl",1)
 ;
 Q 
 ;
BONSCR(PRINT) ; 
 I $$BONSCR^W4PRM,$G(PRINT),$$SUGDEV^W4HZMPC(PRINT)=0 Q 1
 Q 0 
 ;
BIGINV(STAM) ; 
 Q $G(@$$^W4PRM@("BIGINV")) 
 ;
DAHUY(HZM) ;
 N IR S IR=$$IR^W4HZMST(HZM)
 N AZOR S AZOR=$$AZOR^W4HZMST(HZM)
 N SHA S SHA=$$SHAA^W4HZMST(HZM)
 N TVAH
 S TVAH=60 
 I $G(@$$^W4PRM@("TVHKZR")) S TVAH=5
 I $H<$$^%L1DC($$TRH^W4HZMST(HZM),3)!(SHA*60+$P(SHA,":",2)-($P($H,",",2)\60)-TVAH>$$DAKOT(IR,AZOR)),SHA>$$SHAAZ^W4PRM Q 1
 Q 0
 ;
INVHZ() ; 
 Q $$INVHZ^W4PRM 
 ;
 ;
PCMAZMIN(MAZMIN) ; 
 I $G(MAZMIN)="" Q
 I $$HZM^W4MSL(HZM),'$$COMPANY^W4SHPORD Q
 N DL,TX S DL=10*$$KFPC
 X LINEPC 
 S TX=$$HBR^%L1FRM(MAZMIN,DL)_" :oinfnd"
 D PCBR(TX)
 ;
 I $G(@$$^W4PRM@("QUESMS")) D
 .N PELE S PELE=$$LKHN^W4HZMST(HZM) Q:PELE?.P
 .S TX=$$HBR^%L1FRM(PELE,DL)
 .D PCBR(TX)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZPIZA
W4HZPIZA ; [ 11.04.17 09:19 ] [ 22.06.14 09:46 ] [ 12.06.14 15:35 ] [
 S SELPAR=0
 W "<td>"
 W " <table dir=""LTR"">",!
 W "  <tr id=""pizza"_I_""">",!
 N QNPIZZA S QNPIZZA=$$QN(I)
 N CHC N J F J=1:1:4 I $E(QNPIZZA,J)="+" S CHC(J)="c",SELPAR=1
 I $D(CHC(1)),$D(CHC(2)),$D(CHC(3)),$D(CHC(4)) S CHC(5)="c"
 F J=1:1:5 D
 .N TDID S TDID="pizza"_I_"img"_J
 .W " <td id="""_TDID_""">"
 . W " <img src=""w4pizza"_J_$G(CHC(J))_".jpg"" "
 . W "  onClick=""ClickPizza('"_TDID_"',"_J_",'"_$G(CHC(J))_"',"_+BGA_","_+PRA_")"" />"
 .W "</td>",!
 W "  </tr>",!
 W " </table>",!
 W "</td>",!
 Q
 ;
HALF ;
 S SELPAR=0
 W "<td>"
 W " <table dir=""LTR"">",!
 W "  <tr id=""pizza"_I_""">",!
 N QNPIZZA S QNPIZZA=$$QN(I)
 N CHC,J
 F J=1:1:2 I $E(QNPIZZA,J)="+" S CHC(J)="c",SELPAR=1
 I $D(CHC(1)),$D(CHC(2)) S CHC(3)="c"
 N SMB
 F J=1:1:3 D
 .N TDID S TDID="pizza"_I_"img"_J
 .W " <td id="""_TDID_""">"
 . S SMB=$S(J=1:"l",J=2:"r",1:5)
 . W " <img src=""w4pizzah"_SMB_$G(CHC(J))_".jpg"" "
 . W "  onClick=""ClickPizza('"_TDID_"',"_J_",'"_$G(CHC(J))_"',"_+BGA_","_+PRA_")"" />"
 .W "</td>",!
 W "  </tr>",!
 W " </table>",!
 W "</td>",!
 Q
 ;
QN(I) ;
 N TMPTF S TMPTF=$$^W4MAIN("TMPTF")
 N UR S UR=$$UR^W4MENU
 Q $G(@TMPTF@(UR,"QN"))
 ;
SETPIZZA(PRM) ;
 N PRZ,LN,COL,ST
 S PRZ=$P(PRM,";",2)
 S PRM=$P(PRM,";")
 S LN=+$P(PRM,"pizza",2)
 S COL=+$P(PRM,"img",2)
 S ST=$$QN(LN)
 S $E(ST,COL)=$S(PRZ="c":"-",1:"+")
 I COL=5,PRZ="" S ST="++++"
 I COL=5,PRZ="c" S ST="----"
 D SETQN(LN,ST)
 Q $$QNPIZZA(ST)
 ;
SETQN(NOM,ST) ;
 N TMPTF S TMPTF=$$^W4MAIN("TMPTF")
 N UR S UR=$$UR^W4MENU
 S @TMPTF@(UR,"QN")=ST
 Q
 ;
QNPIZZA(QN) ;
 N QNPIZZA S QNPIZZA=0
 N J F J=1:1:4 I $E(QN,J)="+" S QNPIZZA=QNPIZZA+1
 Q QNPIZZA
 

W4HZPROT
W4HZPROT(MKBL,MLZR) ; [ 06.04.22 14:36 ] [ 28.10.12 11:35 ] [ 12.09.08 01:13 ] 
 N MLZP S MLZP=+$G(@$$^W4PRM@("MLZ")) ; --IF 1 EIN HAGANA MI MELZAR AHER
 N GLORD D GLORD^W4HZMST
 I HZSCR["P1HZMS",MLZR,MLZP,$G(@GLORD@("S"))<2,$D(@$$^W4GNAME@(MLZR)),'$$MLZBGPAR^W4PRM S @$$^W4GL("P1MLZ")@(HZM)=MLZR
 I HZSCR["P1HZMS",MKBL,MLZR,MKBL'=MLZR,'$$^W4ADM(MLZR) Q:MLZP 0  S %SC("ST")=1 Q MKBL
 Q 0
 

W4HZPRT0
W4HZPRTN(CDKV) ; [ 02.07.18 11:33 ] [ 28.06.18 14:12 ] [ 31.05.18 11:22 ] 
 ; IN: N - COD KVUZA
 ;     ITEMSHOW - SHOW ITEM PICTURE
 ; ---------------------------------------------------------
 N (JB,%REM,NMB,CDKV,HZM,MLZR,LKHN,SRCH,%ARG,ITEMSHOW,SCRY,MENU)
 ;;S GLRY=1
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I '$G(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 Q:$G(%ARG("SHOW"))=0
 ;
 D KILL^%W3DEB("W4HZPRTN")
 K @$$^W4MAIN("TMPCLICK")
 S MSD=$$GET^%W1PRM("MSD")
 D GETNMB
 S SRCH=$TR($G(SRCH),"\","/")
 I SRCH["<UNDEF" S SRCH=""
 D PUT^%W3DEB("W4HZPRTN","NMB=NMB & MSD=MSD & SRCH=SRCH &CDKV=CDKV & ARG=[%ARG")
 D SVKV
 D UR2
 D PUT^%W1PRM("SRCH",SRCH)
 D PUT^%W1PRM("NEWPRT",1)
 S PR800=$$GET^%W1PRM("PR800")
 ;;W !,"CDKV="_CDKV,! ; ***
 I '$G(CDKV),'$L($G(SRCH)) Q
 ;
 K @$$^W4MAIN("TMPTF")@(2),@$$^W4MAIN("TMPTF")@(3)
 D PUT^%W1PRM("SHID","")
 ;
P ;
 D INIT^W3HZTFR
 ;
 S LASTCD="",CURCD=""
 N LASTST S LASTST=$$LASTST^W4SMALHD
 I LASTST'="NOK" S LASTCD=$P($P(LASTST,";",3),"~",2)
 ;
 I '$$CATOLD^W4PRM,KVZ["PARCAT",'$G(@$$^W4PARCAT) D
 .N JJ F JJ=1:1:20 Q:$G(@$$^W4PARCAT)  H .1
 ;
 I $G(CDKV)=.1 D CRFASTGR
 ;
 D SHOWGR($G(CDKV))
 ;
 D ^W4PCACNT
 ;
 I $$^W4SMALL,$G(CURCD) D
 .W "<script>",!
 .W " parent.hd.location.replace(""w4smallhd.jsp?JB="_JB_""")",!
 .W "</script>",!
 Q
 ;
CTF2 ;
 S ZMANK=$$ZMANK
 N MH,NMB
 D GETNMB
 I '$$P1HZTF^W4PARUS(N2) Q
 I $$NOPAR^W4PRTVW(N2) Q
 I $G(CDKV),$D(@$$^W4GL("W4TATSUG")@(CDKV))>9,$$GETP^%W1PRM("SUBGR")'="",$$TATSUG^W4P(N2)'=$$GETP^%W1PRM("SUBGR") Q
 S I1=I1+1
 S MH=$$MH($G(NMB),N2)
 N SHEM S SHEM=$$HBR^%L1FRM($$SPA^%L1FRM($$SHEM^W4P(N2)),24)
 I $D(@$$^W4GL("PRTBH")@(N2)) S SHEM=SHEM_"*"
 S @$$^W4MAIN("TMPTF")@(2,I1)=N2_"~"_SHEM_"~"_$S(MH["%":MH,1:$J(MH,2,2))
 Q
 ;
INV(KVZ,GL,KV) ;
 D INV^W3SIDKVZ(KVZ,GL,KV)
 Q
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK,MH
 S ZMANK=$$ZMANK I ZMANK="" K ZMANK
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 S PRMHNMB=NMB S MH=$$MH^W4P(COD)
 I $$^W4AIN!(MH'["%") S MH=$J(MH,2,2)
 ;
 I $$^W4AIN D
 .I $$UR^W4MENU>4 S:$G(@$$^W4PRM@("AINOTSF"))!$G(@$$^W4PRM@("AINOTSFMH")) MH=0 Q
 .N CD0 S CD0=$$CD^W3HZMST($$^W4RSTPAR) Q:CD0=""
 .S MH=$J($$MHT^W4HZTSF(CD0,COD),2,2)
 ;
 Q MH
 ;
 ;
ZMANK(STAM) ;
 N ZMANK
 S ZMANK=$$DATCB^W3HZMST(JB)
 I 'ZMANK Q $ZD($H,"DD.MM.YY  24:60")
 Q ZMANK
 ;
TSF(PAR) ;
 I $$UR^W4MENU>2,$$^W4EZAT(PAR) Q 0
 I $$NOTSFMSD^W4PRM,$$^W4MSD($$GETP^%W1PRM("NMB")) Q 0
 Q $$^W4TSF(PAR)
 ;
TBWAS ;
 N I,ST K MMOD
 S I="" F  S I=$O(^[$$^W3MAIN]TMPORD(JB,I))  Q:I=""  I I D
 .S ST=$G(^(I)) Q:$P(ST,"~")'=0
 .N CD S CD=$P(ST,"~",2)
 .Q:'CD  Q:$$NOMOD^W4HZORD(I)
 .S MMOD(CD)=$G(MMOD(CD))+$P(ST,"~",5)
 Q
 ;
SHOWGR(CDKV) ;
 D UR2
 D COLXY
 ;
 I $L($G(SRCH)),'$$SRCODE(SRCH) D  S KOT=$$^%W1DICT("SEARCHITEMBYNAME")_" &nbsp;<span style=""color:green"">"""_$$H2U^%L1FRM($$INVH^%L1FRM(SRCH))_"""</span>" G SHOWIN
 .D INITUR^W4MENU(2)
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 .I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 ;
 I $$SRCODE($G(SRCH)) D
 .S SRCH=$P(SRCH,"*")
 .D FNDKV(SRCH) D UR2 Q:$G(CDKV)=""
 .;S SRCH=""
 .D SVKV
 ;
 I $G(CDKV)="" D  Q
 .W "<script>",!
 .W " MsgI(""NODATA!"")",!
 .W " Sleep(2)",!
 .W " var to=""w4hztfr.jsp?JB="_JB_"&FIRST=1"" ",!
 .W " self.location.replace(to)",!
 .W " GetId(""itemcode"",parent.bot).value="""" ",!
 .W " GetId(""itemcode"",parent.bot).focus() ",!
 .W "</script>",!
 ;
 S KOT=$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(CDKV)))
 ;
 I '$$GRITVW^W4PRM,$$PG^W4MENUBT(2) D
 .S KOT=KOT_"&nbsp;&nbsp;&nbsp;&nbsp;<span style="""_$$FONTFM^W3CSS_";color:black;font-size:"_$$^W3FSZ(11)_""">"
 .S KOT=KOT_$$^%W1DICT("PAGE",$$PG^W4MENUBT(2))_"</span>"
 ;
 S KOT=KOT_"<ALGN=center"
 ;
SHOWIN N NP,NM,MH,IHTML,I,N
 S N=CDKV
 S I=0
 S TF=2
 ;
 ;;W "SRCH="_$G(SRCH)_" L="_$L($G(SRCH)),!
 I $L($G(SRCH)) D  S TF=2,SRCH="" N CDKV G TVW
 .I $$SRCODE(SRCH),$D(@$$^W4GL("PAR")@($P(SRCH,"*"))) D  Q
 ..N I1 S I1=0 S N2=SRCH D CTF2
 .N KV,PAR,I1,N2 S I1=0
 .S KV="" F  S KV=$O(@$$^W4PARCAT@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@$$^W4PARCAT@(KV,PAR)) Q:PAR=""  D
 ...I '$$SRCH(SRCH,$$SHEM^W4P(PAR)) Q
 ...S N2=PAR D CTF2
 ;
 ;
 I $G(CDKV),$D(@$$^W4GL("W4TATSUG")@(CDKV))>9 D
 .I $$GETP^%W1PRM("SUBGR")="" D
 ..N FIRST S FIRST=$O(@$$^W4GL("W4TATSUG")@(CDKV,""))
 ..Q:'FIRST
 ..D PUT^%W1PRM("SUBGR",FIRST)
 .D SUBGR(CDKV)
 ;
 I $D(@$$^W4GL("P1PARSID"))>9 D  G TVW
 .N NP,PRT,MMM,I1,N2
 .S NP=""
 .S I1=0 F  S NP=$O(@$$^W4GL("P1PARSID")@(CDKV,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(CDKV,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 .S N2="" F  S N2=$O(@$$^W4PARCAT@(CDKV,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 ;
 I $G(@$$^W4PRM@("HFNUM"))=2 D  G TVW ; --- SIDUR NUMERY
 .N N1,N2,I1 S N1="",I1=0 F  S N1=$O(@KVZ@(CDKV,N1)) Q:N1=""  D
 ..S N2=N1 I KVZ["P1TFR" S N2=$P($G(^(N1)),"\")
 ..D CTF2
 ;
 D INV(KVZ,$$^W4GL("PAR"),CDKV) ; ---->  ^TMPTF1($$^%W1JB) ; ----- SIDUR A-B
 ;
 N NN,N2,I1 S NN="",I1=0
 F  S NN=$O(@$$^W4MAIN("TMPTF1")@(NN)) Q:NN=""  S N1=^(NN) D
 .S N2=N1
 .D CTF2
 ;
TVW ;
 ;;W "T" ; ***
 ;
 D T(2,COLX,COLY,KOT) ; ??? 2 ???
 Q
 ;
 ;
T(UR,COLX,COLY,KOT) ;
 I $$^W4SMALL D ^W4TMP2QN
 ;
 D PUT^%W3DEB("W4HZPRT","TMPTF=^[$$^W3MAIN]TMPTF($$^%W1JB)")
 N (JB,%ARG,%REM,UR,COLX,COLY,KOT,MGROUP)
 D TMPS,GETNMB
 K @$$^W4MAIN("TMPTF1")
 I $D(MGROUP)=11 N COLX1 S COLX1=COLX N COLX S COLX=COLX1-1
 ;
 S K=1,L=0 D TBWAS
 ;
 I $$SRCODE($G(%ARG("SRCH"))),$G(SRCH)="" D
 .N PGSZPR S PGSZPR=COLX*COLY
 .D CRTMPS(UR,%ARG("SRCH"),PGSZPR)
 ;
 S I0=$G(@TMPS@(UR,"LAST"))
 I $$GRITVW^W4PRM,'$$^W4AIN S I0=1
 I I0<1 S I0=1
 ;
 N WJB S WJB=$$^%W1JB
 N I S I=I0-1 F  S I=$O(@$$^W3TMPTF@(WJB,UR,I)) Q:I=""  I I D  Q:K>COLY
 .N TXT S TXT=$G(^(I)),CD=$P(TXT,"~")
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .D VIEWGRP(CD,I)
 ;
 S I0=$S(I="":"END",1:I)
 S @TMPS@(UR,"LAST")=I0
 ;
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 D ^W4SHEET(KOT,"","","","","",$$SHEETBG)
 Q
 ;
 ;
COLXY ;
 S COLX=5,COLY=7
 ;
 I $$COLXPRT^W4PRM S COLX=$$COLXPRT^W4PRM
 I $$COLYPRT^W4PRM S COLY=$$COLYPRT^W4PRM
 ;
 I $$^W4SMALL S COLX=$$COLXPRTMSF^W4PRM,COLY=$$COLYPRTMSF^W4PRM Q
 I $$^W4TABLET=1 D  S COLY=5 Q  ;S COLX=6,COLY=5 Q
 .I COLX>6 S COLX=6
 I $$^W4TABLET=2 D  S COLY=6 Q  ;S COLX=5,COLY=6 Q
 .I COLX>5 S COLX=5
 ;
 I $$AUTOIT^W4PRM,'$$GRITVW^W4PRM D  Q
 .N N,I,TMPTF S TMPTF=$$^W3TMPTF
 .S N="",I=0 F  S N=$O(@TMPTF@(2,N))  Q:N=""  I N S I=I+1
 .I I>35 S COLX=7,COLY=7
 .I $$AUTOIT^W4PRM D
 ..I I>90,I<101 S COLX=10,COLY=10 Q
 ..I I>80,I<91 S COLX=9,COLY=10 Q
 ..I I>72,I<81 S COLX=9,COLY=9 Q
 ..I I>64,I<73 S COLX=8,COLY=9 Q
 ..I I>56,I<65 S COLX=8,COLY=8 Q
 ..I I>49,I<57 S COLX=7,COLY=8 Q
 ..I I>42,I<50 S COLX=7,COLY=7 Q
 ..I I>36,I<43 S COLX=6,COLY=7 Q
 ..S COLX=5,COLY=7
 ;
 S:'COLX COLX=5 S:'COLY COLY=7
 ;
 I $$GRITVW^W4PRM,COLX<6 S COLX=6
 ;
 I $$GRITVW1^W4PRM,$$GETP^%W1PRM("FULLFAST") D
 .S COLY=COLY*2 S:COLY>8 COLY=8
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSL(NMB),$$GRITVW2^W4PRM S COLX=6,COLY=6 
 Q
 ;
 ;
VIEWGRP(NP,I) ;
 Q:$G(NP)=""
 I $G(NMB)="" S NMB=$$^W4NMB($$GETP^%W1PRM("NMB"))
 N NM,MH,IHTML,QNER,TXT S QNER=""
 I $G(CDKV),$$SUG^W4P(NP)'=CDKV,'$L($G(SRCH)) Q
 ;;I '$$P1HZTF^W4PARUS(NP) Q
 ;;I $$NOPAR^W4PRTVW(NP) Q
 ;
 S TOSHOW=$$TOSHOW(NP) ; --> NM
 ;
 S @$$^W4MAIN("TMPCLICK")@(+$G(NMB),NP)=TOSHOW
 ;
 ; --------- NAME
MTXT K MTXT(K,L,"BG")
 N ITRA S ITRA=$$^W4ITEND(NP)
 ;
 N BG,FG S BG=$$BGIT^W4P(NP),FG=$$FGIT^W4P(NP)
 I BG'="" S MTXT(K,L,"BG")=BG
 I BG="" S MTXT(K,L,"BG")="white"
 N WAS S WAS=0
 ;
 I $G(MMOD(NP))>0 S MTXT(K,L,"BORDER")="3px ridge"
 ;
 I ITRA'="NO",'ITRA D
 .S MTXT(K,L,"BG")="pink"
 .S MTXT(K,L,"BORDER")="3px red solid"
 ;
 N COLOR S COLOR=$S($L(FG)&'WAS:FG,1:"black")
 ;
 N UND S UND=0
 I $$SRCODE($G(%ARG("SRCH"))),NP=$P(%ARG("SRCH"),"*") S UND=1
 E  I $G(LASTCD),NP=LASTCD S UND=1 S CURCD=NP
 ;
 S MTXT(K,L)=""
 ;
 I $$INPCODE^W4PRM,$$UR^W4MENU=2 D
 .S MTXT(K,L)=MTXT(K,L)_"<span style=""color:darkblue;font-size:"_$$^W3FSZ(8)_"""> "_NP_" </span>"
 ;
 S MTXT(K,L)=MTXT(K,L)_"<span id=""nmit"_NP_""" style=""color:"_COLOR_";font-weight:bold"
 I UND S MTXT(K,L)=MTXT(K,L)_";text-decoration:underline"
 D SZ
 S MTXT(K,L)=MTXT(K,L)_""">"_$$H2U^%L1FRM(NM)_"</span>"
 ;
 I '$$^W4ASKPRC,'$$^W4SMALL,'$$NOHZGPRC^W4PRM D
 .N MH1 S MH1=MH
 .I $G(HNST) S MH1=MH1_"<span style=""font-size:"_$$^W3FSZ(9)_";color:red"">-"_+HNST_"%"_"</span>"
 .N DECOR S DECOR="" I MH,$$UR^W4MENU>2 S DECOR=";text-decoration:underline"
 .S MTXT(K,L)=MTXT(K,L)_" <span style=""color:"_$S(FG=""!(BG="rgb(255, 255, 255)")!WAS:"green",1:FG)_DECOR_""" >"_MH1_"</span>"
 .I ITRA'="NO" S MTXT(K,L)=MTXT(K,L)_"<br><span id=""itend"_NP_""" style=""color:red;font-size:"_$$^W3FSZ(9)_""">["_ITRA_"]</span>"
 .S MTXT(K,L)=MTXT(K,L)_"</span>"
 .I $$^W4MSL(NMB),$L(NM) D
 ..S MTXT(K,L,"ASK")=""
 ..S MTXT(K,L,"PAR")=""
 ;
 I $$^W4SMALL D
 .S MTXT(K,L)=MTXT(K,L)_" <span dir=""LTR"" id=""qnp"_NP_""" "
 .S MTXT(K,L)=MTXT(K,L)_" style=""color:"_$S(FG=""!WAS:"brown",1:FG)_""">"
 .N QNV S QNV="&nbsp;"_$$QNHIST(NP)
 .
 S MTXT(K,L,"I")=NP
 S MTXT(K,L,"ID")="it"_NP
 S MTXT(K,L,"TO")=TOSHOW
 Q
 ;
 ;
TOSHOW(NP)
 N (JB,%ARG,NP,NM,MH,HNST,CMST)
 S NMB=$$GETP^%W1PRM("NMB")
 S B=$G(@$$^W4GL("PAR")@(NP))
 S NM=$P(B,"**"),MH=$$MH($G(NMB),NP)
 I $D(@$$^W4GL("PRTBH")@(NP)) S NM=NM_"*"
 S HNST=""
 S CMST=""
 ;
 I MH["-",MH["%" D
 .S HNST=$P(MH,"-",2),MH=+MH
 .S CMST="[[!rvan]]"
 ;
 S MH=$J(MH,2,2)
 ;
 S TXT="0~"_NP_"~"_$$CLWEB^%L1FRM(NM)_"~"_MH
 I HNST S $P(TXT,"~",6)=+HNST
 I $L(CMST) S $P(TXT,"~",7)=CMST
 S TO=JB_",'"_NMB_"','"_TXT_"'"
 N MSK S MSK=$$MSK(NP)
 S TOSHOW="OrdShow("_TO_",this"
 I MSK S TOSHOW=TOSHOW_",'1'"
 S TOSHOW=TOSHOW_")"
 ;
 N UR S UR=$$UR^W4MENU
 ;
 I $$TSF(NP)'<1!($$^W4EZAT(NP)&(UR<3)) D
 .I $$^W4MSD(NMB),$$TSF(NP)&$$NOTSFMSD^W4PRM Q  ;
 .I $$^W4MSD(NMB),$$^W4EZAT(NP)&(UR<3),$$NOTSFMSD^W4PRM=1 Q  ;
 .N OK S OK=1
 .I UR=2 D
 ..D CRTMP^W4HZTSF(NP,$$^W3TMPTF,3)
 ..I $D(@$$^W3TMPTF@($$^%W1JB,3))<10 K @$$^W3TMPTF@($$^%W1JB,3) S OK=0 Q
 ..K @$$^W3TMPTF@($$^%W1JB,3) S OK=1
 .Q:'OK
 .S TOSHOW="ShowAdd("_TO_")"
 ;
 I $$PROTECT(NP) D
 .S TOSHOW="Protect('"_$$CLWEB^%L1FRM(TOSHOW)_"')"
 ;
 Q TOSHOW
 ;
 ;
PROTECT(CD) ;
 I $D(@$$^W4GL("PRTMB")@(CD)) Q 1
 Q 0
 ;
SRCH(SRCH,NM)
 I $$^%W1DIR="RTL" S NM=$$INV^%L1FRM(NM)
 I $$^%W1DIR="LTR" S NM=$$FUNC^%LCASE(NM)
 I $E(NM,1,$L(SRCH))=SRCH Q 1
 I (" "_NM_" ")[(" "_SRCH_" ") Q 1
 N J,OK,MF S OK=1 F J=1:1:$L(SRCH," ") D  Q:'OK
 .N SRCW S SRCW=$P(SRCH," ",J)
 .I SRCW["qpceeiu" S SRCW="qpc"
 .I SRCW["qpceiu" S SRCW="qpc"
 .N FND,FND1 S FND=$F(" "_NM," "_SRCW) I FND<1 S OK=0 Q
 .S FND1=FND-$L(SRCW)
 .I $D(MF(FND1)) S FND=$F(" "_NM," "_SRCW,MF(FND1)) I FND<1 S OK=0 Q
 .S MF(FND1)=FND
 Q OK
 ;
 ;
UR2 ;
 D PUT^%W1PRM("URMENU",2)
 D TMPS
 S @TMPS@("UR")=2
 Q
 ;
FNDKV(SRCH) ; --> CDKV
 N KV S CDKV=""
 N TMPS D TMPS K @TMPS
 S KV="" F  S KV=$O(@$$^W4PARCAT@(KV)) Q:KV=""  Q:$D(^(KV,SRCH))
 S CDKV=KV Q:'CDKV
 N PGSZKV S PGSZKV=$$GET^%W1PRM("PGSZKV")
 I 'PGSZKV Q
 D CRTMPS(1,CDKV,PGSZKV)
 Q
 ;
CRTMPS(UR,CD,PGSZ) ;
 N TMPS D TMPS
 S @TMPS@("UR")=UR
 S @TMPS@(UR,"PG")=1
 N OK S OK=0
 N N,I S N="" F I=1:1 S N=$O(@$$^W4MAIN("TMPTF")@(UR,N)) Q:N=""  D  Q:OK
 .N A S A=$G(^(N))
 .I $$COD(A,UR)=$P(CD,"*") S OK=1 D  Q
 ..D PUT^%W1PRM("FNDCODE",CD)
 .I '(I-1#PGSZ),I>1 D
 ..N PG S PG=I\PGSZ
 ..S @TMPS@(UR,"PG")=PG+1
 ..S @TMPS@(UR,"LAST",PG)=I
 ..S @TMPS@(UR,"LAST")=I
 Q
 ;
COD(NM,UR) ;
 N CD
 I UR=2 S CD=$P(NM,"~") Q CD
 S NM=$$SPA^%L1FRM(NM)
 S CD=$P(NM," ",$L(NM," "))
 Q CD
 ;
PUTZERO(MDP) ;
 N SH
 I $$GET^%W1PRM("ZERONAME")["<UNDEF"!($$GET^%W1PRM("ZEROPRICE")["<UNDEF") Q
 I $$GETP^%W1PRM("ZERONAME")="",'$$GETP^%W1PRM("ZEROPRICE") Q
 S SH=$O(@$$^W4TMPORD@(99999),-1)+1
 S @$$^W4TMPORD@(SH)="0~0~"_$$GET^%W1PRM("ZERONAME")_"~"_$J($$GET^%W1PRM("ZEROPRICE"),2,2)_"~1"
 S $P(@$$^W4TMPORD@(SH),"~",14)=MDP
 D KILL^%W1PRM("ZERONAME")
 D KILL^%W1PRM("ZEROPRICE")
 Q
 ;
 ;
PUTPRICE(MH) ;
 N CR,CD,TXT
 I MH[";" S CR=$P(MH,";",2),MH=$P(MH,";",1)
 N SH
 S SH=$O(@$$^W4TMPORD@(99999),-1)+1
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR") I STPAR="" Q "0:NODATA!"
 S CD=$P(STPAR,"~",2)
 S TXT="0~"_$P(STPAR,"~",2,3)_"~"_$J(MH,2,2)_"~1"
 ;
 N RES S RES=$$STADD^W4STADD(TXT) I 'RES Q RES
 I '$$^W4AIN D SETTMPQN^W4STADD(TXT)
 ;
 I CR,CD?1N.N.".".N S $P(@$$^W4GL("PAR")@(CD),"**",2)=$J(MH,2,2)
 ;
 Q RES
 ;
 ;
PUTMYCHCODE(MYCHCODE) ;
 N CD,NM,TXT,MYCHNAME
 N SH
 S SH=$O(@$$^W4TMPORD@(99999),-1)+1
 S CD=$$MYCHECK^W4PRM
 I 'CD Q "0:NOMYCHCODE"
 S NM=$$SHEM^W4P(CD)
 S TXT="0~"_CD_"~"_NM_"~~1~"
 S $P(TXT,"~",12)="@@@!"
 N RES S RES=$$STADD^W4STADD(TXT)
 ;
 S TXT="1~"_CD_"-C~"_MYCHCODE
 S MYCHNAME=$G(@$$^W4TMPORD@("MYCH","CLIENT",2))
 S MYCHNAME=$P(MYCHNAME,":")
 S TXT=TXT_" [ "_MYCHNAME_" ]~~~"
 S RES=$$STADD^W4STADD(TXT)
 Q RES
 ;
 ;
QNP(NP) ;
 N I,QNP,ST S QNP=0
 S I="" F  S I=$O(@$$^W4TMPORD@(I)) Q:I=""  I I D
 .S ST=$G(^(I)) I $P(ST,"~",2)'=NP Q
 .S QNP=QNP+$P(ST,"~",5)
 I 'QNP S QNP=""
 Q QNP
 ;
 ;
QNHIST(CD) ;
 N HIST,N S HIST=""
 S N="" F  S N=$O(@$$^W4MAIN("TMPQN")@(CD,N)) Q:N=""  D
 .S HIST=HIST_$S($L(HIST):"+",1:"")_$G(^(N))
 Q HIST
 ;
STADD(TXT) ;
 Q $$^W4STADD($G(TXT))
 ;
INIT ;
 D KILL^%W1PRM("SMALLHD")
 D KILLTMPCI^W4MENU(2)
 D INITUR^W4MENU(2)
 K @$$^W4MAIN("TMPQN")
 Q
 ;
SRCODE(SRCH) ;
 S SRCH=$G(SRCH)
 I SRCH?1N.N.".".N."*".N Q 1
 Q 0
 ;
SVKV ;
 D PUT^%W1PRM("CDKV",$G(CDKV))
 D PUT^%W1PRM("CURKV",$G(CDKV))
 Q
 ;
TMPS D TMPS^W4MENU
 Q
 ;
GETNMB ;
 S NMB=$$GET^%W1PRM("NMB")
 Q
 ;
MSK(CD) ;
 I $$MSK^W4P(CD)&$$MSK^W4POSPRM Q 1
 Q 0
 ;
SZ ;
 N SZ S SZ=$S(COLX<7:11,COLX<9:10,COLX<11:9,1:8)
 S MTXT(K,L)=MTXT(K,L)_";font-size:"_$$^W3FSZ(SZ)
 Q
 ;
SHEETBG(STAM) ; 
 I '$$SHEETBG^W4PRM Q ""
 N CDKV S CDKV=$G(%ARG("CDKV"))
 I 'CDKV Q ""
 N BG
 S BG=$P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",2)
 I BG="" Q "" 
 I BG="FFFFFF" Q ""
 Q BG
 ;
CRFASTGR ; 
 N TMPTFR S TMPTFR="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 K @TMPTFR@(2)
 N PRMHNMB
 I $$GETP^%W1PRM("NMB") S PRMHNMB=$$GETP^%W1PRM("NMB"),NMB=PRMHNMB
 N I S I=0
 N N S N="" F  S N=$O(@$$^W4GL("W4ITFAST")@(N)) Q:N=""  D
 .I '$$P1HZTF^W4PARUS(N,$G(NMB)) Q
 .I $$NOPAR^W4PRTVW(N) Q
 .S I=I+1
 .S @TMPTFR@(2,I)=N_"~"_$$SHEM^W4P(N)_"~"_$$MH^W4P(N)
 Q
 ;
SUBGR(GR) 
 S MGROUP=1
 N M
 ;
 N TATSUG
 N PAR S PAR="" F  S PAR=$O(@$$^W4PARCAT@(GR,PAR)) Q:PAR=""  D
 .S TATSUG=$$TATSUG^W4P(PAR)
 .S M(+TATSUG)=""
 ;
 N COLOR,SUBGR,I S COLOR=0,I=0
 D
 .S SUBGR="" F  S SUBGR=$O(@$$^W4GL("W4TATSUG")@(GR,SUBGR)) Q:SUBGR=""  D
 ..Q:'$D(M(SUBGR))
 ..S I=I+1
 ..S MGROUP(I)=$$H2U^%L1FRM($G(@$$^W4GL("W4TATSUG")@(GR,SUBGR)))
 ..S MGROUP(I,"I")=SUBGR
 ..S MGROUP(I,"TO")="ClickSubGr('"_SUBGR_"')"
 ..I SUBGR=$$GETP^%W1PRM("SUBGR") D
 ...S MGROUP(I,"BG")="YELLOW"
 ...S MGROUP(I,"FG")="BROWN"
 ;
 I $D(M(0)) D
 .S I=I+1
 .S MGROUP(I)=$$^%W1DICT("RESTITEMS")
 .S MGROUP(I,"I")=0
 .S MGROUP(I,"TO")="ClickSubGr('0')"
 .I $O(M(0))="" D PUT^%W1PRM("SUBGR",0)
 .I $$GETP^%W1PRM("SUBGR")=0 D
 ..S MGROUP(I,"BG")="YELLOW"
 ..S MGROUP(I,"FG")="BROWN"
 Q
 ;
SETSUBGR(PRM) ;
 N UR
 S UR=$$UR^W4MENU
 N TMPS D TMPS K @TMPS
 S @TMPS@("UR")=UR
 S @TMPS@(UR,"PG")=1
 D PUT^%W1PRM("SUBGR",PRM)
 Q
 
 
 
 
 
 
 
 
 

W4HZPRTN
W4HZPRTN(CDKV) ; [ 15.06.26 14:32 ] [ 10.06.26 13:32 ] [ 10.02.26 15:10 ] 
 ; IN: N - COD KVUZA
 ;     ITEMSHOW - SHOW ITEM PICTURE
 ; ---------------------------------------------------------
 N (JB,%REM,NMB,CDKV,HZM,MLZR,LKHN,SRCH,%ARG,ITEMSHOW,SCRY,MENU)
 ;;S GLRY=1
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I '$G(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 Q:$G(%ARG("SHOW"))=0
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;;I HZM'<1,$$STAGE^W4HZMST(HZM)=1 Q
 ;
 D KILL^%W3DEB("W4HZPRTN")
 K @$$^W4MAIN("TMPCLICK")
 S MSD=$$GET^%W1PRM("MSD")
 D GETNMB
 S SRCH=$TR($G(SRCH),"\","/")
 I SRCH["<UNDEF" S SRCH=""
 D PUT^%W3DEB("W4HZPRTN","NMB=NMB & MSD=MSD & SRCH=SRCH &CDKV=CDKV & ARG=[%ARG")
 D SVKV
 D UR2
 D PUT^%W1PRM("SRCH",SRCH)
 D PUT^%W1PRM("NEWPRT",1)
 S PR800=$$GET^%W1PRM("PR800")
 ;;W !,"CDKV="_CDKV,! ; ***
 I '$G(CDKV),'$L($G(SRCH)) Q
 ;
 K @$$^W4MAIN("TMPTF")@(2),@$$^W4MAIN("TMPTF")@(3)
 D PUT^%W1PRM("SHID","")
 ;
P ;
 D INIT^W3HZTFR
 ;
 S LASTCD="",CURCD=""
 N LASTST S LASTST=$$LASTST^W4SMALHD
 I LASTST'="NOK" S LASTCD=$P($P(LASTST,";",3),"~",2)
 ;
 I '$$CATOLD^W4PRM,KVZ["PARCAT",'$G(@$$^W4PARCAT) D
 .N JJ F JJ=1:1:20 Q:$G(@$$^W4PARCAT)  H .1
 ;
 I $G(CDKV)=.1 D CRFASTGR
 ;
 D SHOWGR($G(CDKV))
 ;
 D ^W4PCACNT
 ;
 I $$^W4SMALL,$G(CURCD) D
 .W "<script>",!
 .W " parent.hd.location.replace(""w4smallhd.jsp?JB="_JB_""")",!
 .W "</script>",!
 Q
 ;
CTF2 ;
 S ZMANK=$$ZMANK
 N MH,NMB
 D GETNMB
 I '$$P1HZTF^W4PARUS(N2) Q
 I $$NOPAR^W4PRTVW(N2) Q
 I '$L($G(SRCH)),$G(CDKV),$D(@$$^W4GL("W4TATSUG")@(CDKV))>9,$$GETP^%W1PRM("SUBGR")'="",$$TATSUG^W4P(N2)'=$$GETP^%W1PRM("SUBGR") Q
 S I1=I1+1
 S MH=$$MH($G(NMB),N2)
 N SHEM S SHEM=$$HBR^%L1FRM($$SPA^%L1FRM($$SHEM^W4P(N2)),24)
 I $D(@$$^W4GL("PRTBH")@(N2)) S SHEM=SHEM_"*"
 S @$$^W4MAIN("TMPTF")@(2,I1)=N2_"~"_SHEM_"~"_$S(MH["%":MH,1:$J(MH,2,2))
 Q
 ;
INV(KVZ,GL,KV) ;
 D INV^W3SIDKVZ(KVZ,GL,KV)
 Q
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK,MH
 S ZMANK=$$ZMANK I ZMANK="" K ZMANK
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 S PRMHNMB=NMB S MH=$$MH^W4P(COD)
 I $$^W4AIN!(MH'["%") S MH=$J(MH,2,2)
 ;
 I $$^W4AIN D
 .I $$UR^W4MENU>4 S:$G(@$$^W4PRM@("AINOTSF"))!$G(@$$^W4PRM@("AINOTSFMH")) MH=0 Q
 .N CD0 S CD0=$$CD^W3HZMST($$^W4RSTPAR) Q:CD0=""
 .S MH=$J($$MHT^W4HZTSF(CD0,COD),2,2)
 ;
 Q MH
 ;
 ;
ZMANK(STAM) ;
 N ZMANK
 S ZMANK=$$DATCB^W3HZMST(JB)
 I 'ZMANK Q $ZD($H,"DD.MM.YY  24:60")
 Q ZMANK
 ;
TSF(PAR) ;
 I $$UR^W4MENU>2,$$^W4EZAT(PAR) Q 0
 I $$NOTSFMSD^W4PRM,$$^W4MSD($$GETP^%W1PRM("NMB")) Q 0
 Q $$^W4TSF(PAR)
 ;
TBWAS ;
 N I,ST K MMOD
 S I="" F  S I=$O(^[$$^W3MAIN]TMPORD(JB,I))  Q:I=""  I I D
 .S ST=$G(^(I)) Q:$P(ST,"~")'=0
 .N CD S CD=$P(ST,"~",2)
 .Q:'CD  Q:$$NOMOD^W4HZORD(I)
 .S MMOD(CD)=$G(MMOD(CD))+$P(ST,"~",5)
 Q
 ;
SHOWGR(CDKV) ;
 D UR2
 D COLXY
 ;
 I $L($G(SRCH)),'$$SRCODE(SRCH) D  S KOT=$$^%W1DICT("SEARCHITEMBYNAME")_" &nbsp;<span style=""color:green"">"""_$$H2U^%L1FRM($$INVH^%L1FRM(SRCH))_"""</span>" G SHOWIN
 .D INITUR^W4MENU(2)
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 .I $$^%W1DIR="LTR" S SRCH=$$FUNC^%LCASE(SRCH)
 ;
 I $$SRCODE($G(SRCH)) D
 .S SRCH=$P(SRCH,"*")
 .D FNDKV(SRCH) D UR2 Q:$G(CDKV)=""
 .;S SRCH=""
 .D SVKV
 ;
 I $G(CDKV)="" D  Q
 .W "<script>",!
 .W " MsgI(""NODATA!"")",!
 .W " Sleep(2)",!
 .W " var to=""w4hztfr.jsp?JB="_JB_"&FIRST=1"" ",!
 .W " self.location.replace(to)",!
 .W " GetId(""itemcode"",parent.bot).value="""" ",!
 .W " GetId(""itemcode"",parent.bot).focus() ",!
 .W "</script>",!
 ;
 N PRKOT S PRKOT=0
 N KOT0 S KOT0=""
 S KOT="<span style=""color:red"" >"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(CDKV)))_"</span>",PRKOT=1,KOT0=KOT
 ;
 I '$$GRITVW^W4PRM,$$PG^W4MENUBT(2) D
 .S KOT=KOT_"&nbsp;&nbsp;&nbsp;&nbsp;<span style="""_$$FONTFM^W3CSS_";color:black;font-size:"_$$^W3FSZ(11)_""">"
 .S KOT=KOT_$$^%W1DICT("PAGE",$$PG^W4MENUBT(2))_"</span>"
 .S PRKOT=0
 ;
 S KOT=KOT_"<ALGN=center"
 ;
SHOWIN N NP,NM,MH,IHTML,I,N
 S N=CDKV
 S I=0
 S TF=2
 ;
 ;;W "SRCH="_$G(SRCH)_" L="_$L($G(SRCH)),!
 I $L($G(SRCH)) D  S TF=2,SRCH="" N CDKV G TVW
 .I $$SRCODE(SRCH),$D(@$$^W4GL("PAR")@($P(SRCH,"*"))) D  Q
 ..N I1 S I1=0 S N2=SRCH D CTF2
 .N KV,PAR,I1,N2 S I1=0
 .
 .I $G(@$$^W4PRM@("SRCWIDE")) D  Q
 ..S PAR="" F  S PAR=$O(@$$^W4GL("PAR")@(PAR)) Q:PAR=""  D
 ...Q:$$NOPAR^W4PRTVW(PAR)
 ...I $$^W1SRCH(SRCH,PAR) S N2=PAR D CTF2
 .
 .I $$SUPER^W3PRM D SRCHSUPER(SRCH) Q
 .
 .S KV="" F  S KV=$O(@$$^W4PARCAT@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@$$^W4PARCAT@(KV,PAR)) Q:PAR=""  D
 ...I '$$SRCH(SRCH,$$SHEM^W4P(PAR)) Q
 ...S N2=PAR D CTF2
 ;
 ;
 I $G(CDKV),$D(@$$^W4GL("W4TATSUG")@(CDKV))>9 D
 .I $$GETP^%W1PRM("SUBGR")="" D
 ..N FIRST S FIRST=$O(@$$^W4GL("W4TATSUG")@(CDKV,""))
 ..Q:'FIRST
 ..D PUT^%W1PRM("SUBGR",FIRST)
 .D SUBGR(CDKV)
 ;
 I $D(@$$^W4GL("P1PARSID"))>9 D  G TVW
 .N NP,PRT,MMM,I1,N2
 .S NP=""
 .S I1=0 F  S NP=$O(@$$^W4GL("P1PARSID")@(CDKV,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(CDKV,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 .S N2="" F  S N2=$O(@$$^W4PARCAT@(CDKV,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 ;
 I $G(@$$^W4PRM@("HFNUM"))=2 D  G TVW ; --- SIDUR NUMERY
 .N N1,N2,I1 S N1="",I1=0 F  S N1=$O(@KVZ@(CDKV,N1)) Q:N1=""  D
 ..S N2=N1 I KVZ["P1TFR" S N2=$P($G(^(N1)),"\")
 ..D CTF2
 ;
 D INV(KVZ,$$^W4GL("PAR"),CDKV) ; ---->  ^TMPTF1($$^%W1JB) ; ----- SIDUR A-B
 ;
 N NN,N2,I1 S NN="",I1=0
 F  S NN=$O(@$$^W4MAIN("TMPTF1")@(NN)) Q:NN=""  S N1=^(NN) D
 .S N2=N1
 .D CTF2
 ;
TVW ;
 ;;W "T" ; ***
 ;
 I $G(@$$^W4PRM@("SIDMLITR")) D SIDMLITR
 ;
 I $G(PRKOT) D
 .S KOT=""
 .W "<div style=""text-align:center;font-size:"_$$^W3FSZ(12)_""" >"_KOT0_"</div>",!
 ;
 D T(2,COLX,COLY,KOT) ; ??? 2 ???
 Q
 ;
 ;
T(UR,COLX,COLY,KOT) ;
 I $$^W4SMALL D ^W4TMP2QN
 ;
 D PUT^%W3DEB("W4HZPRT","TMPTF=^[$$^W3MAIN]TMPTF($$^%W1JB)")
 N (JB,%ARG,%REM,UR,COLX,COLY,KOT,MGROUP)
 D TMPS,GETNMB
 K @$$^W4MAIN("TMPTF1")
 I $D(MGROUP)=11 N COLX1 S COLX1=COLX N COLX S COLX=COLX1-1
 ;
 S K=1,L=0 D TBWAS
 ;
 I $$SRCODE($G(%ARG("SRCH"))),$G(SRCH)="" D
 .N PGSZPR S PGSZPR=COLX*COLY
 .D CRTMPS(UR,%ARG("SRCH"),PGSZPR)
 ;
 S I0=$G(@TMPS@(UR,"LAST"))
 I $$GRITVW^W4PRM,'$$^W4AIN S I0=1
 I I0<1 S I0=1
 ;
 N WJB S WJB=$$^%W1JB
 ;
 N I S I=I0-.1 F  S I=$O(@$$^W3TMPTF@(WJB,UR,I)) Q:I=""  I I D  Q:K>COLY
 .N TXT S TXT=$G(^(I)),CD=$P(TXT,"~")
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .D VIEWGRP(CD,I)
 ;
 S I0=$S(I="":"END",1:I)
 S @TMPS@(UR,"LAST")=I0
 ;
 I $$DEP2FAST^W4PRM D GROUP^W4HZTFR
 ;
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 D ^W4SHEET(KOT,"","","","","",$$SHEETBG)
 Q
 ;
 ;
COLXY ;
 S COLX=5,COLY=7
 ;
 I $$COLXPRT^W4PRM S COLX=$$COLXPRT^W4PRM
 I $$COLYPRT^W4PRM S COLY=$$COLYPRT^W4PRM
 ;
 I $$^W4SMALL S COLX=$$COLXPRTMSF^W4PRM,COLY=$$COLYPRTMSF^W4PRM Q
 I $$^W4TABLET=1 D  S COLY=5 Q  ;S COLX=6,COLY=5 Q
 .I COLX>6 S COLX=6
 ;
 I $$^W4TABLET=2 D  Q  ;S COLX=5,COLY=6 Q
 .I COLX>4 S COLX=4
 .I '$$GRITVW^W4PRM S COLY=8 Q  ;S COLX=5,COLY=6 Q
 .S COLY=6
 ;
 I $$AUTOIT^W4PRM,'$$GRITVW^W4PRM D  Q
 .N N,I,TMPTF S TMPTF=$$^W3TMPTF
 .S N="",I=0 F  S N=$O(@TMPTF@(2,N))  Q:N=""  I N S I=I+1
 .I I>35 S COLX=7,COLY=7
 .I $$AUTOIT^W4PRM D
 ..I I>42 S COLX=7,COLY=7 Q
 ..I I>36,I<43 S COLX=6,COLY=7 Q
 ..S COLX=5,COLY=7
 ;
 S:'COLX COLX=5 S:'COLY COLY=7-$$1024^W4WDSCR
 ;
 I $$GRITVW^W4PRM,COLX<5 S COLX=5
 ;
 I $$GRITVW1^W4PRM,$$GETP^%W1PRM("FULLFAST") D
 .;;S COLY=COLY*2 S:COLY>7 COLY=7
 .S COLY=7-$$1024^W4WDSCR
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSL(NMB),$$GRITVW2^W4PRM,'$$GRITMSL^W4PRM D
 .S COLX=6,COLY=7-$$1024^W4WDSCR 
 Q
 ;
 ;
VIEWGRP(NP,I) ;
 Q:$G(NP)=""
 I $G(NMB)="" S NMB=$$^W4NMB($$GETP^%W1PRM("NMB"))
 N NM,MH,IHTML,QNER,TXT S QNER=""
 I $G(CDKV),$$SUG^W4P(NP)'=CDKV,'$L($G(SRCH)) Q
 ;;I '$$P1HZTF^W4PARUS(NP) Q
 ;;I $$NOPAR^W4PRTVW(NP) Q
 ;
 S TOSHOW=$$TOSHOW(NP) ; --> NM
 ;
 S @$$^W4MAIN("TMPCLICK")@(+$G(NMB),NP)=TOSHOW
 ;
 ; --------- NAME
MTXT K MTXT(K,L,"BG")
 N ITRA S ITRA=$$^W4ITEND(NP)
 ;
 N BG,FG S BG=$$BGIT^W4P(NP),FG=$$FGIT^W4P(NP)
 I BG'="" S MTXT(K,L,"BG")=BG
 I BG="" S MTXT(K,L,"BG")="white"
 N WAS S WAS=0
 ;
 I $G(MMOD(NP))>0 S MTXT(K,L,"BORDER")="3px ridge"
 ;
 I ITRA'="NO",'ITRA D
 .S MTXT(K,L,"BG")="pink"
 .S MTXT(K,L,"BORDER")="3px red solid"
 ;
 D
 .N PIC
 .S PIC=$$GETP^%W1PRM("MSD")_"/itp/pic"_NP_".jpg"
 .I $$PICIT^W4PRM,$$EXIST^%L1ZOS($$WEBL^W3MAIN_PIC) S MTXT(K,L,"PIC")=PIC
 ;
 N COLOR S COLOR=$S($L(FG)&'WAS:FG,1:"black")
 ;
 N UND S UND=0
 I $$SRCODE($G(%ARG("SRCH"))),NP=$P(%ARG("SRCH"),"*") S UND=1
 E  I $G(LASTCD),NP=LASTCD S UND=1 S CURCD=NP
 ;
 S MTXT(K,L)=""
 ;
 I '$G(@$$^W4PRM@("NOVWCODE")),$$UR^W4MENU=2 D
 .S MTXT(K,L)=MTXT(K,L)_"<span style=""color:darkblue;font-size:"_$$^W3FSZ(8)
 .D BGPIC
 .S MTXT(K,L)=MTXT(K,L)_"""> "_NP_" </span>"
 ;
 N MLITRA S MLITRA=$$^W4GETMLY(NP)
 I $$NEWMLY^W3PRM,MLITRA'>0,COLOR="black" S COLOR="grey" 
 ;
 S MTXT(K,L)=MTXT(K,L)_"<span id=""nmit"_NP_""" style=""color:"_COLOR_";font-weight:bold"
 I $D(MTXT(K,L,"PIC")) D BGPIC
 I UND S MTXT(K,L)=MTXT(K,L)_";text-decoration:underline"
 D SZ
 S NM=$$RPL^%L1FRM(NM,"()","")
 S NM=$$RPL^%L1FRM(NM,"[]","")
 I NM["+",NM'[" + " S NM=$$RPL^%L1FRM(NM,"+"," + ")
 I NM["(",NM'[" (" S NM=$$RPL^%L1FRM(NM,"("," (")
 I NM[")",NM'[") " S NM=$$RPL^%L1FRM(NM,")",") ")
 ;
 I $$SPA^%L1FRM(NM)?1"-"."-" D
 .S NM=$E(NM,1,$L(NM)\2)
 S MTXT(K,L)=MTXT(K,L)_""">"_$$H2U^%L1FRM(NM)_"</span>"
 ;
 I '$$^W4ASKPRC,'$$^W4SMALL,'$$NOHZGPRC^W4PRM D
 .N MH1 S MH1=MH
 .I $G(HNST) S MH1=MH1_"<span style=""font-size:"_$$^W3FSZ(9)_";color:red"">-"_+HNST_"%"_"</span>"
 .N DECOR S DECOR="" I MH,$$UR^W4MENU>2 S DECOR=";text-decoration:underline"
 .S MTXT(K,L)=MTXT(K,L)_" <span style=""color:"_$S(FG=""!(BG="rgb(255, 255, 255)")!WAS:"green",1:FG)
 .D BGPIC
 .S MTXT(K,L)=MTXT(K,L)_DECOR_""" >"_MH1_"</span>"
 D
 .N BR S BR="<br>"
 .I $$GRITVW^W4PRM S BR=" "
 .I ITRA'="NO" S MTXT(K,L)=MTXT(K,L)_BR_"<span id=""itend"_NP_""" style=""color:red;font-size:"_$$^W3FSZ(9)_""">[ "_ITRA_" ]</span>" Q
 .I $$NEWMLY^W3PRM,$$ONEGLPAR^W3PRM,$G(@$$^W4PRM@("VWMLIT")) D
 ..S MTXT(K,L)=MTXT(K,L)_BR_"<span id=""itend"_NP_""" style=""color:darkblue;font-size:"_$$^W3FSZ(9)_""">[ "_MLITRA_" ]</span>" Q
 ;
 I $$^W4MSL(NMB) D
 .I $$GETP^%W1PRM("SHOWRCPT") Q
 .I '$L(NM) Q
 .S MTXT(K,L,"ASK")=""
 .S MTXT(K,L,"PAR")=""
 ;
 I $$GETP^%W1PRM("SHOWRCPT"),$$EX^W4RCPIMG(NP) D
 .S MTXT(K,L,"RCPT")=""
 ;
 I $$^W4SMALL D
 .S MTXT(K,L)=MTXT(K,L)_" <span dir=""LTR"" id=""qnp"_NP_""" "
 .S MTXT(K,L)=MTXT(K,L)_" style=""color:"_$S(FG=""!WAS:"brown",1:FG)_""">"
 .N QNV S QNV="&nbsp;"_$$QNHIST(NP)
 .
 S MTXT(K,L,"I")=NP
 S MTXT(K,L,"ID")="it"_NP
 S MTXT(K,L,"TO")=TOSHOW
 Q
 ;
 ;
BGPIC ;
 I $D(MTXT(K,L,"PIC")) D
 .N OPCT
 .S OPCT=$G(@$$^W4PRM@("OPCTY"))
 .I 'OPCT!(OPCT>1) S OPCT="0.6"
 .I $G(@$$^W4PRM@("NOOPCTY")) S OPCT=1
 .S MTXT(K,L)=MTXT(K,L)_";background-color:rgba(255,255,255,"_OPCT_")"
 Q
 ;
TOSHOW(NP)
 N (JB,%ARG,NP,NM,MH,HNST,CMST)
 S NMB=$$GETP^%W1PRM("NMB")
 S B=$G(@$$^W4GL("PAR")@(NP))
 ;;S NM=$P(B,"**")
 S NM=$$SHEM^W4P(NP)
 I $$^%W1LNG="E"!($$TMPENG^%W1LNG) S NM=$$FUNC^%UCASE($E(NM))_$$FUNC^%LCASE($E(NM,2,$L(NM)))
 S MH=$$MH($G(NMB),NP)
 I $D(@$$^W4GL("PRTBH")@(NP)) S NM=NM_"*"
 S HNST=""
 S CMST=""
 ;
 I MH["-",MH["%" D
 .S HNST=$P(MH,"-",2),MH=+MH
 .S CMST="[[!rvan]]"
 ;
 S MH=$J(MH,2,2)
 ;
 S TXT="0~"_NP_"~"_$$CLWEB^%L1FRM(NM)_"~"_MH
 I HNST S $P(TXT,"~",6)=+HNST
 I $L(CMST) S $P(TXT,"~",7)=CMST
 S TO=JB_",'"_NMB_"','"_TXT_"'"
 N MSK S MSK=$$MSK(NP)
 S TOSHOW="OrdShow("_TO_",this"
 I MSK S TOSHOW=TOSHOW_",'1'"
 S TOSHOW=TOSHOW_")"
 ;
 N UR S UR=$$UR^W4MENU
 ;
 I $$TSF(NP)'<1!($$^W4EZAT(NP)&(UR<3)) D
 .I $$^W4MSD(NMB),$$TSF(NP)&$$NOTSFMSD^W4PRM Q  ;
 .I $$^W4MSD(NMB),$$^W4EZAT(NP)&(UR<3),$$NOTSFMSD^W4PRM=1 Q  ;
 .N OK S OK=1
 .I UR=2 D
 ..D CRTMP^W4HZTSF(NP,$$^W3TMPTF,3)
 ..I $D(@$$^W3TMPTF@($$^%W1JB,3))<10 K @$$^W3TMPTF@($$^%W1JB,3) S OK=0 Q
 ..K @$$^W3TMPTF@($$^%W1JB,3) S OK=1
 .Q:'OK
 .S TOSHOW="ShowAdd("_TO_")"
 ;
 I $$PROTECT(NP) D
 .S TOSHOW="Protect('"_$$CLWEB^%L1FRM(TOSHOW)_"')"
 ;
 Q TOSHOW
 ;
 ;
PROTECT(CD) ;
 I $D(@$$^W4GL("PRTMB")@(CD)) Q 1
 Q 0
 ;
SRCH(SRCH,NM)
 Q $$SRCH^W1SRCH(NM,SRCH)
 ;
 ;
UR2 ;
 D PUT^%W1PRM("URMENU",2)
 D TMPS
 S @TMPS@("UR")=2
 Q
 ;
FNDKV(SRCH) ; --> CDKV
 N KV S CDKV=""
 N TMPS D TMPS K @TMPS
 S KV="" F  S KV=$O(@$$^W4PARCAT@(KV)) Q:KV=""  Q:$D(^(KV,SRCH))
 S CDKV=KV Q:'CDKV
 N PGSZKV S PGSZKV=$$GET^%W1PRM("PGSZKV")
 I 'PGSZKV Q
 D CRTMPS(1,CDKV,PGSZKV)
 Q
 ;
CRTMPS(UR,CD,PGSZ) ;
 N TMPS D TMPS
 S @TMPS@("UR")=UR
 S @TMPS@(UR,"PG")=1
 N OK S OK=0
 N N,I S N="" F I=1:1 S N=$O(@$$^W4MAIN("TMPTF")@(UR,N)) Q:N=""  D  Q:OK
 .N A S A=$G(^(N))
 .I $$COD(A,UR)=$P(CD,"*") S OK=1 D  Q
 ..D PUT^%W1PRM("FNDCODE",CD)
 .I '(I-1#PGSZ),I>1 D
 ..N PG S PG=I\PGSZ
 ..S @TMPS@(UR,"PG")=PG+1
 ..S @TMPS@(UR,"LAST",PG)=I
 ..S @TMPS@(UR,"LAST")=I
 Q
 ;
COD(NM,UR) ;
 N CD
 I UR=2 S CD=$P(NM,"~") Q CD
 S NM=$$SPA^%L1FRM(NM)
 S CD=$P(NM," ",$L(NM," "))
 Q CD
 ;
PUTZERO(MDP) ;
 N SH
 I $$GET^%W1PRM("ZERONAME")["<UNDEF"!($$GET^%W1PRM("ZEROPRICE")["<UNDEF") Q
 I $$GETP^%W1PRM("ZERONAME")="",'$$GETP^%W1PRM("ZEROPRICE") Q
 S SH=$O(@$$^W4TMPORD@(99999),-1)+1
 S @$$^W4TMPORD@(SH)="0~0~"_$$GET^%W1PRM("ZERONAME")_"~"_$J($$GET^%W1PRM("ZEROPRICE"),2,2)_"~1"
 S $P(@$$^W4TMPORD@(SH),"~",14)=MDP
 D KILL^%W1PRM("ZERONAME")
 D KILL^%W1PRM("ZEROPRICE")
 Q
 ;
 ;
PUTPRICE(MH) ;
 N CR,CD,TXT
 I MH[";" S CR=$P(MH,";",2),MH=$P(MH,";",1)
 N SH
 S SH=$O(@$$^W4TMPORD@(99999),-1)+1
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR") I STPAR="" Q "0:NODATA!"
 S CD=$P(STPAR,"~",2)
 S TXT="0~"_$P(STPAR,"~",2,3)_"~"_$J(MH,2,2)_"~1"
 ;
 N RES S RES=$$STADD^W4STADD(TXT) I 'RES Q RES
 I '$$^W4AIN D SETTMPQN^W4STADD(TXT)
 ;
 I CR,$$ISNUM^%L1FRM(CD) S $P(@$$^W4GL("PAR")@(CD),"**",2)=$J(MH,2,2)
 ;
 Q RES
 ;
 ;
PUTMYCHCODE(MYCHCODE) ;
 N CD,NM,TXT,MYCHNAME
 N SH
 S SH=$O(@$$^W4TMPORD@(99999),-1)+1
 S CD=$$MYCHECK^W4PRM
 I 'CD Q "0:NOMYCHCODE"
 S NM=$$SHEM^W4P(CD)
 S TXT="0~"_CD_"~"_NM_"~~1~"
 S $P(TXT,"~",12)="@@@!"
 N RES S RES=$$STADD^W4STADD(TXT)
 ;
 S TXT="1~"_CD_"-C~"_MYCHCODE
 S MYCHNAME=$G(@$$^W4TMPORD@("MYCH","CLIENT",2))
 S MYCHNAME=$P(MYCHNAME,":")
 S TXT=TXT_" [ "_MYCHNAME_" ]~~~"
 S RES=$$STADD^W4STADD(TXT)
 Q RES
 ;
 ;
QNP(NP) ;
 N I,QNP,ST S QNP=0
 S I="" F  S I=$O(@$$^W4TMPORD@(I)) Q:I=""  I I D
 .S ST=$G(^(I)) I $P(ST,"~",2)'=NP Q
 .S QNP=QNP+$P(ST,"~",5)
 I 'QNP S QNP=""
 Q QNP
 ;
 ;
QNHIST(CD) ;
 N HIST,N S HIST=""
 S N="" F  S N=$O(@$$^W4MAIN("TMPQN")@(CD,N)) Q:N=""  D
 .S HIST=HIST_$S($L(HIST):"+",1:"")_$G(^(N))
 Q HIST
 ;
STADD(TXT) ;
 Q $$^W4STADD($G(TXT))
 ;
INIT ;
 D KILL^%W1PRM("SMALLHD")
 D KILLTMPCI^W4MENU(2)
 D INITUR^W4MENU(2)
 K @$$^W4MAIN("TMPQN")
 Q
 ;
SRCODE(SRCH) ;
 S SRCH=$G(SRCH)
 I $$SRCWIDE^W4PRM Q 0
 I SRCH?1N.N.".".N."*".N Q 1
 I SRCH?1"."1N.N."*".N Q 1
 Q 0
 ;
SVKV ;
 D PUT^%W1PRM("CDKV",$G(CDKV))
 D PUT^%W1PRM("CURKV",$G(CDKV))
 Q
 ;
TMPS D TMPS^W4MENU
 Q
 ;
GETNMB ;
 S NMB=$$GET^%W1PRM("NMB")
 Q
 ;
MSK(CD) ;
 I $$MSK^W4P(CD)&$$MSK^W4POSPRM Q 1
 Q 0
 ;
SZ ;
 N COLX1 S COLX1=COLX+($D(MGROUP)'=0)
 N SZ S SZ=$S(COLX1<6:14,COLX1<8:12,COLX1<10:11,COLX1<11:10,1:9)
 I $G(@$$^W4PRM@("FSZIT"))>8 S SZ=^("FSZIT")
 I $$1024^W4WDSCR S SZ=SZ-1
 S MTXT(K,L)=MTXT(K,L)_";font-size:"_$$^W3FSZ(SZ)
 Q
 ;
SHEETBG(STAM) ; 
 I '$$SHEETBG^W4PRM Q ""
 I $$SUPER^W3PRM Q "SUPER"
 N CDKV S CDKV=$G(%ARG("CDKV"))
 I 'CDKV Q ""
 N BG
 S BG=$P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",2)
 I BG="" Q "" 
 I BG="FFFFFF" Q ""
 Q BG
 ;
CRFASTGR ; 
 N TMPTFR S TMPTFR="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 K @TMPTFR@(2)
 N PRMHNMB
 I $$GETP^%W1PRM("NMB") S PRMHNMB=$$GETP^%W1PRM("NMB"),NMB=PRMHNMB
 N I S I=0
 N N S N="" F  S N=$O(@$$^W4GL("W4ITFAST")@(N)) Q:N=""  D
 .I '$$P1HZTF^W4PARUS(N,$G(NMB)) Q
 .I $$NOPAR^W4PRTVW(N) Q
 .S I=I+1
 .S @TMPTFR@(2,I)=N_"~"_$$SHEM^W4P(N)_"~"_$$MH^W4P(N)
 Q
 ;
SUBGR(GR) 
 S MGROUP=1
 N M
 ;
 N TATSUG
 N PAR S PAR="" F  S PAR=$O(@$$^W4PARCAT@(GR,PAR)) Q:PAR=""  D
 .S TATSUG=$$TATSUG^W4P(PAR)
 .S M(+TATSUG)=""
 ;
 N COLOR,SUBGR,I S COLOR=0,I=0
 D
 .S SUBGR="" F  S SUBGR=$O(@$$^W4GL("W4TATSUG")@(GR,SUBGR)) Q:SUBGR=""  D
 ..Q:'$D(M(SUBGR))
 ..S I=I+1
 ..S MGROUP(I)=$$H2U^%L1FRM($G(@$$^W4GL("W4TATSUG")@(GR,SUBGR)))
 ..S MGROUP(I,"I")=SUBGR
 ..S MGROUP(I,"TO")="ClickSubGr('"_SUBGR_"')"
 ..I SUBGR=$$GETP^%W1PRM("SUBGR") D
 ...S MGROUP(I,"BG")="YELLOW"
 ...S MGROUP(I,"FG")="BROWN"
 ;
 I $D(M(0)) D
 .S I=I+1
 .S MGROUP(I)=$$^%W1DICT("RESTITEMS")
 .S MGROUP(I,"I")=0
 .S MGROUP(I,"TO")="ClickSubGr('0')"
 .I $O(M(0))="" D PUT^%W1PRM("SUBGR",0)
 .I $$GETP^%W1PRM("SUBGR")=0 D
 ..S MGROUP(I,"BG")="YELLOW"
 ..S MGROUP(I,"FG")="BROWN"
 Q
 ;
SETSUBGR(PRM) ;
 N UR
 S UR=$$UR^W4MENU
 N TMPS D TMPS K @TMPS
 S @TMPS@("UR")=UR
 S @TMPS@(UR,"PG")=1
 D PUT^%W1PRM("SUBGR",PRM)
 Q
 ;
SRCHSUPER(SRCH)
 N N,N1,W,OK,WORD,PAR,N2,TMPW,M,MW
 S TMPW=$$^W4MAIN("TMPWRD")
 I $D(@TMPW)<10 D ^W4TMPWRD(JB)
 N K
 F K=1:1:$L(SRCH," ") D
 .S WORD=$P(SRCH," ",K) Q:WORD=""
 .N W1 S W1=$TR(WORD,"=","")
 .N W2 S W2=W1 ;;$$INVH^%L1FRM(W1)
 .S MW(W2)=""
 .D SRCHSUPER1(WORD)
 .S W=W2 F  S W=$O(@TMPW@(W)) Q:W=""  Q:$E(W,1,$L(WORD))'=W2  D
 ..D SRCHSUPER1(W)
 ;
 N N S N="" F  S N=$O(M(N)) Q:N=""  D
 .S OK=1,SHEM=" "_$$INVH^%L1FRM($$SHEM^W4P(N))_" "
 .S N2="" F  S N2=$O(MW(N2)) Q:N2=""  I SHEM'[(" "_N2) S OK=0 
 .Q:'OK
 .S N2=N D CTF2
 Q
 ;
SRCHSUPER1(W)
 I $G(W)="" Q
 N N2,PAR
 I $E(W,$L(W))="=",$E(W,1,$L(W)-1)?1N.N S W=$E(W,1,$L(W)-1)
 I $E(W)="=",$E(W,2,$L(W))?1N.N S W=$E(W,2,$L(W))
 S PAR="" F  S PAR=$O(@$$^W4MAIN("TMPWRD")@(W,PAR)) Q:PAR=""  D
 .I '$$^W1SRCH(W,PAR) Q
 .S M(PAR,W)=""
 Q
 ;
SIDMLITR ; 
 N A,A1,ITRA,NP,N,II
 N TMP S TMP=$$^W4MAIN("TMPTF")
 N NEWTMP S NEWTMP=$$^W4MAIN("NEWTMPF") K @NEWTMP
 N W S W=2
 ;
 N II S II="" F  S II=$O(@TMP@(W,II)) Q:II=""  D
 .S A=$G(^(II)) 
 .S NP=$P(A,"~")
 .S ITRA=$P(+$$^W4GETMLY(NP),".")
 .I ITRA<0 S ITRA=0
 .S @NEWTMP@($J(ITRA,8)_"~"_NP)=A
 ;
 K @TMP S II=0
 S N="" F  S N=$O(@NEWTMP@(N),-1) Q:N=""  D
 .S A1=$G(^(N))
 .S II=II+1 
 .S @TMP@(W,II)=A1
 ;
 K @NEWTMP 
 Q
 ;
 ;
RCPTIMG(CD) ; 
 I '$G(CD) Q 0
 Q $$EX^W4RCPIMG(CD)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZSHAA
W4HZSHAA ; -- SHAA SGIRAT HAZMANA [ 12.09.08 00:57 ] [ 10.06.03 14:46 ] [ 11/06/96  9:41 AM ]
 N GLORD D GLORD^W4HZMST
 S %TIM=$ZD($H,"24:60")
 S SHAAT=%TIM D PUT^W4SCREF(GLORD,"P1HZMS",1,"SHAAT")
 Q

W4HZTFR
W4HZTFR ; [ 15.06.26 14:32 ] [ 10.06.26 13:31 ] [ 10.12.25 12:45 ] 
 N (JB,%ARG,NMB,CODE,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ; -------------------------- IF MOVING FROM OTHER TAME - MVFROM (ONLOAD)
 I $G(TXT)'="BACK" K TXT
 D KILL^%W3DEB("W4HZTFR")
 K @$$^W4MAIN("TMPCLICK")
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 ;;I HZM'<1,$$STAGE^W4HZMST(HZM)=1 Q
 I $$SCANER D ^W4SCANER Q
 ;
 I $G(%ARG("FIRST")),$$GETP^%W1PRM("CURDEP")="",$G(@$$^W4PRM@("DEPDFLT")) D
 .D PUT^%W1PRM("CURDEP",@$$^W4PRM@("DEPDFLT"))
 ;
 S MSD=$$GET^%W1PRM("MSD")
 S NMB=$$GET^%W1PRM("NMB")
 ;
 D PUT^%W3DEB("W4HZTFR","JB=JB & MLZR=MLZR & NMB=NMB & ARG=[%ARG")
 Q:'$G(JB)
 D COLXY
 D PUT^%W1PRM("PGSZKV",COLX*COLY)
 D TMPTFR
 ;
 D TMPS^W4MENU
 ;
 I $G(@TMPS@("UR"))>1 S @TMPS@(1,"LAST")=""
 S @TMPS@("UR")=1
 D PUT^%W1PRM("URMENU",1)
 ;
 S PG=$$PG^W4MENUBT(1) S:PG<1 PG=1
 S N=$G(@TMPS@(1,"BEG",PG))
 I 'N S N=""
 K @TMPS@(2,"LAST")
 S @TMPS@(2,"PG")=1
 ;
 I $D(@$$^W3TMPORD@(JB,1)) D  ; -- 31/08/21
 .W "<script>",!
 .W " var term=PBot().document.getElementById(""termid"")",!
 .W " if (term !==null && term !==undefined) {term.style.visibility='visible'}",!
 .W "</script>",!
 ;
 D ^W4IN
 ;
BG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D TMPTFR
 D HEAD
 ;
BGI D CRTMPTF
 D COLXY
 S SH=1,TF=1,(CWND,CWNDOLD,CWNDOLD(TF))=1
 S CURTF=TF,FL10=1,(PG,PGOLD(TF))=1
 ;
 D BODY
 ;
H D VIEW
 D ^W4PCACNT
 Q
 ;
 ;
COLXY ;
 S COLX=5,COLY=7
 I $$COLXGR^W4PRM S COLX=$$COLXGR^W4PRM
 I $$COLYGR^W4PRM S COLY=$$COLYGR^W4PRM
 ;
 I $$^W4SMALL S COLX=$$COLXGRMSF^W4PRM,COLY=$$COLYGRMSF^W4PRM Q
 ;
 I $$^W4TABLET=1 D  S COLY=5 Q  ;;S COLX=5,COLY=5 Q
 .I COLX>7 S COLX=7
 ;
 I $$^W4TABLET=2 D  Q  ;;S COLX=4,COLY=6 Q
 .I COLX>4 S COLX=4
 .I '$$GRITVW^W4PRM S COLY=8
 .S COLY=6
 ;
 D TMPTFR
 ;
 I $$AUTOGR^W4PRM,'$$GRITVW^W4PRM D  Q
 .N N,I
 .S N="",I=0 F  S N=$O(@TMPTFR@(1,N))  Q:N=""  I N S I=I+1
 .I I>36 S COLX=7,COLY=7
 .I $$AUTOGR^W4PRM D
 ..I I>90,I<101 S COLX=10,COLY=10
 ..I I>80,I<91 S COLX=9,COLY=10
 ..I I>72,I<81 S COLX=9,COLY=9
 ..I I>64,I<73 S COLX=8,COLY=9
 ..I I>56,I<65 S COLX=8,COLY=8
 ..I I>49,I<57 S COLX=7,COLY=8
 ..I I>42,I<50 S COLX=7,COLY=7
 ..I I>36,I<43 S COLX=6,COLY=7
 ;
 S:'COLX COLX=5 S:'COLY COLY=7
 I $$GRITVW^W4PRM,COLX<5 S COLX=5
 I $$GRITVW^W4PRM,COLY>4 S COLY=4
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSL(NMB),$$GRITVW2^W4PRM,'$$GRITMSL^W4PRM S COLX=6,COLY=6 
 ;
 Q
 ;
TMPTFR ;
 S TMPTFR="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
 ;
BODY ;
 N I,K,L,N0 S K=1,L=0 K MTXT
 S N0=""
 ;
 S @TMPS@(1,"BEG")=N
 ;
 F  S N=$O(@TMPTFR@(1,N))  Q:N=""  D  Q:K>COLY  S N0=N
 .N A,CDKV S A=$G(^(N)),CDKV=$G(^(N,"KV")) Q:CDKV=""  ;; $TR($E(A,$L(A)-LCOD+1,$L(A))," ","")
 .I $$FASTGR^W4HD,'$$FULLHD^W4HD,$D(@$$^W4GL("W4FASTGR")@(CDKV)) Q
 .N CURDEP S CURDEP=$$GETP^%W1PRM("CURDEP")
 .I CURDEP,$$DEPG^W4P(CDKV)'=CURDEP Q
 .I $E(CDKV,1,2)="<>" I $G(@TMPTFR@(1,N-1,"KV"))'["<>",L>0 S L=COLX
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .S NMKV=$E(A,1,$L(A)-LCOD) ;; +1
 .I NMKV["+",NMKV'[" + " S NMKV=$$RPL^%L1FRM(NMKV,"+"," + ")
 .I $E(CDKV,1,2)="<>" D
 ..N IND
 ..I $$^%W1DIR="RTL" S IND=$P(A," ",$L(A," ")) Q:IND=""
 ..I $$^%W1DIR="LTR" S IND=$P(A," ") Q:IND=""
 ..S CDKV="<>"_IND
 .
 .N TX S TX="<table width=""100%""><tr>"
 .I $$CDKV^W3PRM S TX=TX_"<td>"_CDKV_"</td>"
 .
 .N PIC
 .S PIC=$$GETP^%W1PRM("MSD")_"/grp/w4grp"_CDKV_".jpg"
 .I '$$^W4SMALL,$$GRPIC^W4PRM,$$EXIST^%L1ZOS($$WEBL^W3MAIN_PIC) S MTXT(K,L,"PIC")=PIC
 .S TX=TX_"<td "
 .
 .S TX=TX_" class=""cellhd"" style=""" D
 ..I '$$GETP^%W1PRM("SHOWRCPT") D
 ...I $L($$FGCOLOR(CDKV)) S TX=TX_"color:"_$$FGCOLOR(CDKV)_";"
 ...N BGC S BGC=$$BGCOLOR(CDKV)
 ...I BGC="" S BGC="rgba(255,255,255,0.5)"
 ...S TX=TX_"background-color:"_BGC
 ..I CDKV=$$CURGR S TX=TX_";text-decoration:underline"
 ..I $$^W4TABLET=2 S TX=TX_";font-weight:bold"
 ..D SZ
 .S TX=TX_""">"_$$H2U^%L1FRM(NMKV)_"</td>"
 .
 .S TX=TX_"</tr></table>"
 .
 .S MTXT(K,L)=TX
 .
 .S MTXT(K,L,"TO")="TfrClick('"_NMB_"','"_CDKV_"')"
 .S MTXT(K,L,"I")=CDKV
 .I $L($$BGCOLOR(CDKV)) S MTXT(K,L,"BG")=$$BGCOLOR(CDKV)
 .I '$L($$BGCOLOR(CDKV)) S MTXT(K,L,"BG")="white"
 .I CDKV=$$CURGR S MTXT(K,L,"BORDER")="2px brown solid"
 ;
 D TMPS^W4MENU
 S @TMPS@(1,"LAST")=$S(N="":"END",1:N0)
 Q
 ;
 ;
VIEW ;
 I $$HZGDEP^W4PRM D GROUP
 N KOT S KOT=$$^%W1DICT("MENU")
 N HG S HG=92
 I $$GRITVW^W4PRM S KOT="",HG=100
 I $$^W4SMALL!(COLY>7) S KOT="",HG=100
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 D ^W4SHEET(KOT,"","","",HG,"","")
 Q
 ;
SIDKVZ ;
 D ^W3SIDKVZ
 Q
 ;
KKVZ(N) K @KVZ@(N)
 Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
 ;
 ;
INIT ;
 S LCOD=6 I $$SCANER^W4PRM!($$SUPER^W3PRM&'$$NOCD8^W3PRM) S LCOD=8
 I $G(@$$^W4PRM@("LCOD")) S LCOD=^("LCOD")
 ;
 S KVZ=$$^W4PARCAT K MTXT
 Q
 ;
 ;
CRSUG N NCRSUG N N,SUG,VWSUG
 I '$D(NMB) S NMB=$$GET^%W1PRM("NMB")
 N SUGS S SUGS="" I $G(NMB) S SUGS=$$SUGS^W4L(NMB)
 N MSUG
 ;
 I $G(@$$^W4PARCAT),$D(@$$^W4PARCAT)=11 Q
 ;
 K @$$^W4PARCAT
 N MENUDAY S MENUDAY=0
 N N
 S N="" F  S N=$O(@$$^W4GL("W3PAR")@(N)) Q:N=""  D
 .K ^(N,"DAYS"),^("SHAA")
 ;
 N P1DZ,DTY I '$D(P1DZ) S P1DZ=$$^W4DZ
 S DTY=$$^%L1DC(P1DZ,8)
 ;
 I $G(@$$^W4GL("W3PRTHRD")@(+DTY)) D  ; ---------  TAFRIT YOMI
 .N A S A=$G(^(+DTY)) Q:'A
 .N N1 S N1="" F  S N1=$O(@$$^W4GL("W3PARM")@(A,N1)) Q:N1=""  D
 ..I $G(@$$^W4GL("W3PARM")@(A,N1,"DAYS"))'="" S @$$^W4GL("W3PAR")@(N1,"DAYS")=$G(@$$^W4GL("W3PARM")@(A,N1,"DAYS"))
 ..I $G(@$$^W4GL("W3PARM")@(A,N1,"SHAA"))'="" S @$$^W4GL("W3PAR")@(N1,"SHAA")=$G(@$$^W4GL("W3PARM")@(A,N1,"SHAA"))
 ;
 S SUG="" F  S SUG=$O(@$$^W4GL("PARSUG")@(SUG)) Q:SUG=""  D
 .I $$NOSUG^W3HZTFR(SUG,P1DZ) Q
 .S MSUG=$P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",9)
 .I MSUG'?.P,("^"_MSUG_"^")[("^"_SUGS_"^") Q
 .I SUGS,$G(@$$^W4GL("W4NOSUGS")@(SUG,SUGS)) Q
 .I $$^W4MM,$P(SUG,"-")'=$$GETP^%W1PRM("MSD") Q
 .S VWSUG=$G(@$$^W4GL("W3SUG")@(SUG))
 .I $$^W4MSL(NMB),VWSUG=2 Q
 .I $$^W4MSD(NMB),VWSUG=3 Q
 .S @$$^W4PARCAT@(SUG)=""
 ;
 I '$$GRITVW^W4PRM,'$$^W4TABLET!$$FASTITTB D
 .N IT S IT="" F  S IT=$O(@$$^W4GL("W4ITFAST")@(IT)) Q:IT=""  D
 ..N IND S IND=$G(^(IT))
 ..S @$$^W4PARCAT@("<>"_(IND+10000))=IT
 ;
 ;
 D
 .;;I $$SUPER^W3PRM J ^W4CRCAT(JB) Q  ; ???
 .D ^W4CRCAT(JB)
 Q
 ;
 ;
CRSUG0 N NCRSUG N N,SUG,VWSUG
 I '$D(NMB) S NMB=$$GET^%W1PRM("NMB")
 I $G(@$$^W4PARCAT),$D(@$$^W4PARCAT)=11 Q
 K @$$^W4PARCAT
 N SUGS S SUGS="" I $G(NMB) S SUGS=$$SUGS^W4L(NMB)
 N MSUG
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I $$NOPAR^W4PRTVW(N) Q
 .
 .I $$P1HZTF^W4PARUS(N,$G(NMB)) D
 ..S SUG=+$$SUG^W4P(N) Q:SUG=""
 ..Q:$$NOSUG^W3HZTFR(SUG,P1DZ)
 ..I SUG S MSUG=$P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",9) I ("^"_MSUG_"^")[("^"_SUGS_"^") Q
 ..S VWSUG=$G(@$$^W4GL("W3SUG")@(SUG))
 ..I $$^W4MSL(NMB),VWSUG=2 Q
 ..I $$^W4MSD(NMB),VWSUG=3 Q
 ..S @$$^W4PARCAT@(SUG,N)=""
 ;
 S @$$^W4PARCAT=1
 Q
 ;
 ;
HEAD ;
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:$$^W3MENU  Q:$$CLOSEORD(JB)
 N I,T,R,HD,FLD,REG
 S T=$$T^W3HZHD
 S R=$$R^W3HZHD
 S HD=""
 ;
 I $$AHUZ^W3HZMST(JB)="" D PUT^W3HZMST(JB,"AHUZ",$$AHUZ)
 I $$^W4MSD(+$$GET^%W1PRM("NMB")) Q
 ;
 F I=1:1:70 S $P(HD,"~",I)="#"
 F I=1:1:$L(T,";") D
 .S FLD=$P(T,";",I) I FLD?.P Q
 .I FLD[":" S FLD=$P(FLD,":")
 .S REG=$$SPA^%L1FRM($P(R,";",I))
 .I $D(@FLD) S $P(HD,"~",I)=$$FLD(FLD,REG)
 ;
 I '$G(CODE) S CODE=$TR($$GET^%W1PRM("NMB"),"!-","")
 S CODE=$P(CODE,"~")
 I $G(CODE),$L(CODE)>3 S $P(HD,"~",27)=CODE
 ;
 I $P(HD,"~",6)'?2N1":"2N D
 .S $P(HD,"~",6)=$P(HD,"~",42)_":"_$P(HD,"~",43)
 ;
 F I=1:1:$L(HD,"~") D
 .I $P(HD,"~",I)?.P,$P(HD,"~",I)'="`" Q
 .S $P(@$$^W3TMPORD@(JB),"~",I)=$P(HD,"~",I)
 ;
 D PUT^%W3DEB("W4HZTFR-HEAD","HD=HD")
 ;
 Q
 ;
 ;
FLD(F,RG) ;
 Q $$FLD^W3HZTFR(F,$G(RG))
 ;
 N ST,ST1,IND S ST=$TR($G(@F),$C(160),"")
 I $E(ST)="?" S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 I RG="H",$$^%W1LNG="H" D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" D  Q
 ...S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND=""
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .S ST1=$$INVH^%L1FRM(ST1)
 Q ST1
 ;
AHUZ(STAM) ;
 Q $$AHUZ^W4MENUBT
 ;
CLOSEORD(JB) Q $$CLOSE^W3HZMST(JB)
 ;
CURGR(STAM) ;
 S KV=$$GET^%W1PRM("CURKV")
 Q KV
 ;
 ;
CRTMPTF ;
 D INIT
 ;
 I KVZ[$$^W4PARCAT D
 .N P1HZTF S P1HZTF=""
 .I $$CATOLD D CRSUG0 Q
 .D CRSUG
 ;
 I $$TFRM D
 .S KVZ=$$^W4GL("W3TFRM")_"(JB)" ;-- MISSADOT
 ;
 I $$TFRM!$$CATOLD,'$G(@$$^W4PRM@("CRPARCAT")) D
 .N N S N="" F  S N=$O(@KVZ@(N)) Q:N=""  I $D(@KVZ@(N))<10 D KKVZ(N)
 ;
 ;--------------- SIDUR KVUZOT
 D SIDKVZ K SH0L
 ;
 I $D(@$$^W4GL("W4ITFAST"))>9,$$GRITVW^W4PRM!($$^W4TABLET&'$$FASTITTB) D
 .I $$SF^W4PRM,$$^W4MYDVN'=15,$$^W4MYDVN'=51 Q  ; -- 12/12/19 LEV
 .N TMPTFR D TMPTFR
 .S @TMPTFR@(1,.1)=$$TV^%W1DICT($$^%W1LNG,"MOSTINUSE")_$J(.1,7)
 .S @TMPTFR@(1,.1,"KV")=.1
 .
 .D PUT^%W1PRM("CDKV",.1)
 Q
 ;
 ;
CATOLD(STAM) ;
 Q $$CATOLD^W4PRM
 ;
TFRM(STAM) ;
 I $D(@$$^W4GL("W3TFRM")@(JB))=11,@$$^W4GL("W3TFRM")@(JB) Q 1
 Q 0
 ;
MVFROM(STAM) ;
 Q $$MVFROM^W4ORDVFN(1)
 ;
START ;
 D KILL^%W1PRM("SRCH"),KILL^%W1PRM("ABC")
 D KILL^%W1PRM("CDKV")
 D KILL^%W1PRM("NEWPRT")
 D INITUR^W4MENU(1)
 Q
 ;
BGCOLOR(CDKV) ;
 I CDKV=".1" Q "#FF6A00<>#FFF960"
 N CV S CV=$P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",2)
 I CV'["<>" Q $$^W1CV(CV)
 Q $$^W1CV($P(CV,"<>"))_"<>"_$$^W1CV($P(CV,"<>",2))
 ;
FGCOLOR(CDKV) ;
 N FG
 S FG=$P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",3)
 I FG="" S FG=$$BGCOLOR^W4CSS
 S FG=$$^W1CV(FG)
 Q FG
 ;
DEFSD(STAM) ;
 I $$SCANER Q 1
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$KUPA^W4PLUK(MYDVN) Q 1
 I $$^W6 Q 1
 N NMB S NMB=$$GET^%W1PRM("NMB") I 'NMB Q ""
 N SUGS S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q ""
 N SD S SD=$G(@$$^W4PRM@("DIAPSD",SUGS))
 I SD?." " S SD=$P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",4)
 I SD?." " Q ""
 I SD["-" Q ""
 I SD?1N.N Q SD
 ;
 I SD?1N.N Q 1_";"_SD
 Q ""
 ;
STADD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4HZTFR-STADD","PRM=PRM")
 S NMB=$$GETP^%W1PRM("NMB")
 S CD=$P(PRM,";")
 S QN=$P(PRM,";",2)
 I $$SUPER^W3PRM S CD=$$^W4CDSUPR(CD)
 I $$GETP^%W1PRM("NMB") S PRMHNMB=$$GETP^%W1PRM("NMB")
 S TXT="0~"_CD_"~"_$$SHEM^W4P(CD)_"~"_$$MH^W4P(CD)_"~"_QN
 S RES=$$^W4STADD(TXT)
 I 'RES Q RES
 Q $$^W4CLWTXT(TXT)
 ;
 ;
SCANER(STAM) ;
 Q +$$GETP^%W1PRM("SCANER")
 ;
SZ ;
 N SZ S SZ=$S(COLX<6:14,COLX<8:12,COLX<9:11,1:10)
 I $$1024^W4WDSCR S SZ=SZ-1
 I $G(@$$^W4PRM@("FSZGR"))>8 S SZ=^("FSZGR")
 ;;I $$^W4TABLET=1 S SZ=SZ+1
 I $$^W4TABLET=2 S SZ=SZ+2
 S TX=TX_";font-size:"_$$^W3FSZ(SZ)_";"
 Q
 ;
 ;
GROUP ;
 S MGROUP=1
 ;
 N I0 S I0=0
 ;
 I '$G(@$$^W4PRM@("NOALLDEP")) D
 .S I0=I0+1
 .S MGROUP(I0,"I")="ALL"
 .S MGROUP(I0)=$$^%W1DICT("ALLDEPS")
 .S MGROUP(I0,"TO")="ClickDep('ALL')"
 .I '$$GET^%W1PRM("CURDEP") D
 ..S MGROUP(I0,"BG")="YELLOW"
 ..S MGROUP(I0,"FG")="BROWN"
 ;
 N COLOR,DEP,I S COLOR=0 S I0=I0+1
 D
 .S DEP="" F I=I0:1 S DEP=$O(@$$^W4GL("DEP")@(DEP)) Q:DEP=""  D
 ..N DEP1 S DEP1=$G(@$$^W4GL("DEP")@(DEP))
 ..S DEP1=$$^W4NM(DEP1)
 ..S MGROUP(I)=$S($$TMPENG^%W1LNG:DEP1,1:$$H2U^%L1FRM(DEP1))
 ..S MGROUP(I,"I")=DEP
 ..S MGROUP(I,"TO")="ClickDep('"_DEP_"')"
 ..I DEP=$$GETP^%W1PRM("CURDEP") D
 ...S MGROUP(I,"BG")="YELLOW"
 ...S MGROUP(I,"FG")="BROWN"
 Q
 ;
SETDEP(DEP) ; 
 D PUT^%W1PRM("CURDEP",$G(DEP))
 Q 
 ;
FASTITTB() ; 
 I '$$^W4TABLET Q 0
 Q $G(@$$^W4PRM@("FASTITTB"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZTFR0
W4HZTFR ; [ 07.08.12 05:43 ] [ 05.07.12 13:08 ] [ 19.06.12 19:13 ]
 N (JB,%ARG,NMB,CODE,%REM)
 ; -------------------------- IF MOVING FROM OTHER TAME - MVFROM (ONLOAD)
 I $G(TXT)'="BACK" K TXT
 D KILL^%W3DEB("W4HZTFR")
 I $$SCANER D ^W4SCANER Q
 ;
 S MSD=$$GET^%W1PRM("MSD")
 S NMB=$$GET^%W1PRM("NMB")
 ;
 D PUT^%W3DEB("W4HZTFR","JB=JB & MLZR=MLZR & NMB=NMB & ARG=[%ARG")
 Q:'$G(JB)
 S COLX=5,COLY=7
 I $$^W4SMALL S COLX=4,COLY=5
 D PUT^%W1PRM("PGSZKV",COLX*COLY)
 D TMPTFR
 ;
 D TMPS^W4MENUBT
 ;
 I $G(@TMPS@("UR"))>1 S @TMPS@(1,"LAST")=""
 S @TMPS@("UR")=1
 D PUT^%W1PRM("URMENU",1)
 ;
 ;;S N=$G(@TMPS@(1,"LAST",$G(@TMPS@(1,"PG"))-1))
 S N=$G(@TMPS@(1,"LAST"))-1
 I 'N S N=""
 K @TMPS@(2,"LAST")
 S @TMPS@(2,"PG")=1
 ;
 I $D(@$$^W3TMPORD@(JB,1)) D
 .W "<script>",!
 .W " var term=parent.bot.document.getElementById(""termid"")",!
 .W " if (term !==null && term !==undefined) {term.style.visibility='visible'}",!
 .W "</script>",!
 ;
 D ^W4IN
 ;
BG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D TMPTFR
 D HEAD
 ;
BGI D CRTMPTF
 D
 .N N,I
 .S N="" F I=1:1 S N=$O(@TMPTFR@(1,N))  Q:N=""
 .I I>35,'$$^W4SMALL S COLX=7
 ;
M S SH=1,TF=1,(CWND,CWNDOLD,CWNDOLD(TF))=1
 S CURTF=TF,FL10=1,(PG,PGOLD(TF))=1
 ;
 D BODY
 ;
H D VIEW
 Q
 ;
 ;
TMPTFR ;
 S TMPTFR="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
 ;
BODY ;
 N I,K,L,N0 S K=1,L=0 K MTXT
 S N0=""
 F  S N=$O(@TMPTFR@(1,N))  Q:N=""  D  Q:K>COLY
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .S N0=N
 .N A,CDKV S A=$G(^(N)),CDKV=$TR($E(A,$L(A)-LCOD+1,$L(A))," ","")
 .S NMKV=$E(A,1,$L(A)-LCOD+1)
 .N TX S TX="<table>"
 .S TX=TX_"  <tr>"
 .
 .I $$CDKV^W3PRM S TX=TX_"<td>"_CDKV_"</td>"
 .S TX=TX_"<td "
 .S TX=TX_" class=""cellhd"" style=""" D
 ..I $L($$FGCOLOR(CDKV)) S TX=TX_"color:"_$$FGCOLOR(CDKV)_";"
 ..I CDKV=$$CURGR S TX=TX_"text-decoration:underline;"
 .S TX=TX_""">"_$$H2U^%L1FRM(NMKV)_"</td>"
 .
 .S TX=TX_"</tr></table>"
 .
 .S MTXT(K,L)=TX
 .S MTXT(K,L,"TO")="TfrClick('"_NMB_"','"_CDKV_"')"
 .I $L($$BGCOLOR(CDKV)) S MTXT(K,L,"BG")=$$BGCOLOR(CDKV)
 ;
 D TMPS^W4MENUBT
 S @TMPS@(1,"LAST")=$S(N="":"END",1:N0)
 Q
 ;
 ;
VIEW ;
 N KOT S KOT=$$^%W1DICT("MENU")
 I $$^W4SMALL S KOT=""
 D ^W4SHEET(KOT,"","")
 Q
 ;
SIDKVZ ;
 D ^W3SIDKVZ
 Q
 ;
KKVZ K @KVZ
 Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
 ;
 ;
INIT ;
 S LCOD=5 I $$SCANER^W4PRM S LCOD=8
 ;
 S KVZ="@$$^W4PARCAT@(N)" K MTXT
 I $D(@$$^W4GL("P1TFR"))=11,$G(@$$^W4GL("P1TFR")) D
 .S KVZ="^[$$^%W1UCI(JB)]P1TFR(N)" ;--- TAFRIT JOMI
 Q
 ;
 ;
CRSUG N NCRSUG N N,SUG,VWSUG
 I '$D(NMB) S NMB=$$GET^%W1PRM("NMB")
 K @$$^W4PARCAT
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .;;I $L(N)>6,$D(P1HZTF) Q
 .I $G(@$$^W4GL("W3PAR")@(N))=0 Q
 .I $$P1HZTF^W4PARUS(N,$G(NMB)) D
 ..S SUG=+$$SUG^W4P(N) Q:SUG=""
 ..Q:$$NOSUG^W3HZTFR(SUG,P1DZ)
 ..S VWSUG=$G(@$$^W4GL("W3SUG")@(SUG))
 ..I $$^W4MSL(NMB),VWSUG=2 Q
 ..I $$^W4MSD(NMB),VWSUG=3 Q
 ..S @$$^W4PARCAT@(SUG,N)=""
 Q
 ;
 ;
HEAD ;
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:$$^W3MENU  Q:$$CLOSEORD(JB)
 N I,T,R,HD,FLD,REG
 S T=$$T^W3HZHD
 S R=$$R^W3HZHD
 S HD=""
 ;
 I $$AHUZ^W3HZMST(JB)="" D PUT^W3HZMST(JB,"AHUZ",$$AHUZ)
 I $$^W4MSD(+$$GET^%W1PRM("NMB")) Q
 ;
 F I=1:1:50 S $P(HD,"~",I)="#"
 F I=1:1:$L(T,";") D
 .S FLD=$P(T,";",I) I FLD?.P Q
 .S REG=$$SPA^%L1FRM($P(R,";",I))
 .I $D(@FLD) S $P(HD,"~",I)=$$FLD(FLD,REG)
 ;
 I '$G(CODE) S CODE=$TR($$GET^%W1PRM("NMB"),"!-","")
 S CODE=$P(CODE,"~")
 I $G(CODE),$L(CODE)>3 S $P(HD,"~",27)=CODE
 ;
 I $P(HD,"~",6)'?2N1":"2N D
 .S $P(HD,"~",6)=$P(HD,"~",42)_":"_$P(HD,"~",43)
 ;
 F I=1:1:$L(HD,"~") D
 .I $P(HD,"~",I)?.P,$P(HD,"~",I)'="`" Q
 .S $P(@$$^W3TMPORD@(JB),"~",I)=$P(HD,"~",I)
 ;
 D PUT^%W3DEB("W4HZTFR-HEAD","HD=HD")
 ;
 Q
 ;
 ;
FLD(F,RG) ;
 N ST,ST1,IND S ST=$TR($G(@F),$C(160),"")
 I $E(ST)="?" S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 I RG="H",$$^%W1LNG="H" D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" D  Q
 ...S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND=""
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .S ST1=$$INVH^%L1FRM(ST1)
 Q ST1
 ;
AHUZ(STAM) ;
 Q $$AHUZ^W4MENUBT
 ;
CLOSEORD(JB) Q $$CLOSE^W3HZMST(JB)
 ;
CURGR(STAM) ;
 S KV=$$GET^%W1PRM("CURKV")
 Q KV
 ;
 ;
CRTMPTF ;
 D INIT
 I KVZ["^[$$^W3MAIN]PARCAT" D
 .N P1HZTF S P1HZTF=""
 .D CRSUG
 ;
 I $D(^[$$^%W1UCI(JB)]W3TFRM(JB))=11,^[$$^%W1UCI(JB)]W3TFRM(JB) D
 .S KVZ="^[$$^%W1UCI(JB)]W3TFRM(JB,N)" ;-- MISSADOT
 ;
 N N S N="" F  S N=$O(@KVZ) Q:N=""  I $D(@KVZ)<10 D KKVZ
 ;
 ;--------------- SIDUR KVUZOT
 D SIDKVZ K SH0L
 Q
 ;
MVFROM(STAM) ;
 Q $$MVFROM^W4ORDVFN(1)
 ;
START ;
 D KILL^%W1PRM("SRCH"),KILL^%W1PRM("ABC")
 D KILL^%W1PRM("CDKV")
 D INITUR^W4MENUBT(1)
 Q
 ;
BGCOLOR(CDKV) ;
 Q $P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",2)
 ;
FGCOLOR(CDKV) ;
 N FG
 S FG=$P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",3)
 I FG="" S FG=$$BGCOLOR^W4CSS
 Q FG
 ;
DEFSD(STAM) ;
 I $$SCANER Q 1
 N NMB S NMB=$$GET^%W1PRM("NMB") I 'NMB Q 0
 N SUGS S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q 0
 N SD S SD=$G(@$$^W4PRM@("DIAPSD",SUGS))
 I SD="" Q 0
 I SD["-" Q 0
 I SD?1N.N Q 1_";"_SD
 Q 0
 ;
STADD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4HZTFR-STADD","PRM=PRM")
 S NMB=$$GETP^%W1PRM("NMB")
 S CD=$P(PRM,";")
 S QN=$P(PRM,";",2)
 S TXT="0~"_CD_"~"_$$SHEM^W4P(CD)_"~"_$$MH^W4P(CD)_"~"_QN
 S RES=$$STADD^W4HZPRTN(TXT)
 I 'RES Q RES
 Q $$CLWEB^%L1FRM(TXT)
 ;
 ;
SCANER(STAM) ;
 Q +$$GETP^%W1PRM("SCANER")

W4HZTFR1
W4HZTFR ; [ 18.06.23 10:10 ] [ 25.05.23 12:12 ] [ 30.04.23 12:59 ] 
 N (JB,%ARG,NMB,CODE,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ; -------------------------- IF MOVING FROM OTHER TAME - MVFROM (ONLOAD)
 I $G(TXT)'="BACK" K TXT
 D KILL^%W3DEB("W4HZTFR")
 K @$$^W4MAIN("TMPCLICK")
 I $$SCANER D ^W4SCANER Q
 ;
 I $G(%ARG("FIRST")),$$GETP^%W1PRM("CURDEP")="",$G(@$$^W4PRM@("DEPDFLT")) D
 .D PUT^%W1PRM("CURDEP",@$$^W4PRM@("DEPDFLT"))
 ;
 S MSD=$$GET^%W1PRM("MSD")
 S NMB=$$GET^%W1PRM("NMB")
 ;
 D PUT^%W3DEB("W4HZTFR","JB=JB & MLZR=MLZR & NMB=NMB & ARG=[%ARG")
 Q:'$G(JB)
 D COLXY
 D PUT^%W1PRM("PGSZKV",COLX*COLY)
 D TMPTFR
 ;
 D TMPS^W4MENU
 ;
 I $G(@TMPS@("UR"))>1 S @TMPS@(1,"LAST")=""
 S @TMPS@("UR")=1
 D PUT^%W1PRM("URMENU",1)
 ;
 S PG=$$PG^W4MENUBT(1) S:PG<1 PG=1
 S N=$G(@TMPS@(1,"BEG",PG))
 I 'N S N=""
 K @TMPS@(2,"LAST")
 S @TMPS@(2,"PG")=1
 ;
 I $D(@$$^W3TMPORD@(JB,1)) D  ; -- 31/08/21
 .W "<script>",!
 .W " var term=PBot().document.getElementById(""termid"")",!
 .W " if (term !==null && term !==undefined) {term.style.visibility='visible'}",!
 .W "</script>",!
 ;
 D ^W4IN
 ;
BG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D TMPTFR
 D HEAD
 ;
BGI D CRTMPTF
 D COLXY
 S SH=1,TF=1,(CWND,CWNDOLD,CWNDOLD(TF))=1
 S CURTF=TF,FL10=1,(PG,PGOLD(TF))=1
 ;
 D BODY
 ;
H D VIEW
 D ^W4PCACNT
 Q
 ;
 ;
COLXY ;
 S COLX=5,COLY=7
 I $$COLXGR^W4PRM S COLX=$$COLXGR^W4PRM
 I $$COLYGR^W4PRM S COLY=$$COLYGR^W4PRM
 ;
 I $$^W4SMALL S COLX=$$COLXGRMSF^W4PRM,COLY=$$COLYGRMSF^W4PRM Q
 ;
 I $$^W4TABLET=1 D  S COLY=5 Q  ;;S COLX=5,COLY=5 Q
 .I COLX>7 S COLX=7
 ;
 I $$^W4TABLET=2 D  S COLY=8 Q  ;;S COLX=4,COLY=6 Q
 .I COLX>4 S COLX=4
 ;
 D TMPTFR
 ;
 I $$AUTOGR^W4PRM,'$$GRITVW^W4PRM D  Q
 .N N,I
 .S N="",I=0 F  S N=$O(@TMPTFR@(1,N))  Q:N=""  I N S I=I+1
 .I I>36 S COLX=7,COLY=7
 .I $$AUTOGR^W4PRM D
 ..I I>90,I<101 S COLX=10,COLY=10
 ..I I>80,I<91 S COLX=9,COLY=10
 ..I I>72,I<81 S COLX=9,COLY=9
 ..I I>64,I<73 S COLX=8,COLY=9
 ..I I>56,I<65 S COLX=8,COLY=8
 ..I I>49,I<57 S COLX=7,COLY=8
 ..I I>42,I<50 S COLX=7,COLY=7
 ..I I>36,I<43 S COLX=6,COLY=7
 ;
 S:'COLX COLX=5 S:'COLY COLY=7
 I $$GRITVW^W4PRM,COLX<5 S COLX=5
 I $$GRITVW^W4PRM,COLY>4 S COLY=4
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSL(NMB),$$GRITVW2^W4PRM,'$$GRITMSL^W4PRM S COLX=6,COLY=6 
 ;
 Q
 ;
TMPTFR ;
 S TMPTFR="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
 ;
BODY ;
 N I,K,L,N0 S K=1,L=0 K MTXT
 S N0=""
 ;
 S @TMPS@(1,"BEG")=N
 ;
 I $D(@TMPTFR@(1,.1)) D 
 .N N1 S N1="" F  S N1=$O(@TMPTFR@(1,N1)) Q:N1=""  D
 ..N A S A=$G(^(N1,"KV"))
 ..I $E(A,1,2)="<>" K @TMPTFR@(1,N1,"KV")
 ;
 F  S N=$O(@TMPTFR@(1,N))  Q:N=""  D  Q:K>COLY  S N0=N
 .N A,CDKV S A=$G(^(N)),CDKV=$G(^(N,"KV")) Q:CDKV=""  ;; $TR($E(A,$L(A)-LCOD+1,$L(A))," ","")
 .I $$FASTGR^W4HD,'$$FULLHD^W4HD,$D(@$$^W4GL("W4FASTGR")@(CDKV)) Q
 .N CURDEP S CURDEP=$$GETP^%W1PRM("CURDEP")
 .I CURDEP,$$DEPG^W4P(CDKV)'=CURDEP Q
 .I $E(CDKV,1,2)="<>" I $G(@TMPTFR@(1,N-1,"KV"))'["<>",L>0 S L=COLX
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .S NMKV=$E(A,1,$L(A)-LCOD) ;; +1
 .
 .I $E(CDKV,1,2)="<>" D
 ..N IND
 ..I $$^%W1DIR="RTL" S IND=$P(A," ",$L(A," ")) Q:IND=""
 ..I $$^%W1DIR="LTR" S IND=$P(A," ") Q:IND=""
 ..S CDKV="<>"_IND
 .
 .N TX S TX="<table width=""100%""><tr>"
 .I $$CDKV^W3PRM S TX=TX_"<td>"_CDKV_"</td>"
 .
 .N PIC
 .S PIC=$$GETP^%W1PRM("MSD")_"/grp/w4grp"_CDKV_".jpg"
 .I '$$^W4SMALL,$$GRPIC^W4PRM,$$EXIST^%L1ZOS($$WEBL^W3MAIN_PIC) S MTXT(K,L,"PIC")=PIC
 .S TX=TX_"<td "
 .
 .S TX=TX_" class=""cellhd"" style=""" D
 ..I $L($$FGCOLOR(CDKV)) S TX=TX_"color:"_$$FGCOLOR(CDKV)_";"
 ..N BGC S BGC=$$BGCOLOR(CDKV)
 ..I BGC="" S BGC="rgba(255,255,255,0.5)"
 ..S TX=TX_"background-color:"_BGC
 ..I CDKV=$$CURGR S TX=TX_";text-decoration:underline"
 ..I $$^W4TABLET=2 S TX=TX_";font-weight:bold"
 ..D SZ
 .S TX=TX_""">"_$$H2U^%L1FRM(NMKV)_"</td>"
 .
 .S TX=TX_"</tr></table>"
 .
 .S MTXT(K,L)=TX
 .
 .S MTXT(K,L,"TO")="TfrClick('"_NMB_"','"_CDKV_"')"
 .S MTXT(K,L,"I")=CDKV
 .I $L($$BGCOLOR(CDKV)) S MTXT(K,L,"BG")=$$BGCOLOR(CDKV)
 .I '$L($$BGCOLOR(CDKV)) S MTXT(K,L,"BG")="white"
 .I CDKV=$$CURGR S MTXT(K,L,"BORDER")="2px brown solid"
 ;
 D TMPS^W4MENU
 S @TMPS@(1,"LAST")=$S(N="":"END",1:N0)
 S @TMPS@(1,"REALLN")=$O(MTXT(9999),-1)
 Q
 ;
 ;
FREELINE()
 I '$D(COLY) D COLXY
 D TMPS^W4MENU
 N REAL S REAL=$G(@TMPS@(1,"REALLN"))
 N IT,IT1 S IT="",IT1=0
 F  S IT=$O(@$$^W4GL("W4ITFAST")@(IT)) Q:IT=""  S IT1=IT1+1
 ;
 N ITLN S ITLN=IT1\COLX+$S(IT1#COLX:1,1:0)
 I REAL+ITLN>COLY Q 0
 Q 1
 ;
 ;
VIEW ;
 I $$HZGDEP^W4PRM D GROUP
 N KOT S KOT=$$^%W1DICT("MENU")
 N HG S HG=92
 I $$GRITVW^W4PRM S KOT="",HG=100
 I $$^W4SMALL!(COLY>7) S KOT="",HG=100
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 D ^W4SHEET(KOT,"","","",HG,"","SUPER")
 Q
 ;
SIDKVZ ;
 D ^W3SIDKVZ
 Q
 ;
KKVZ(N) K @KVZ@(N)
 Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
 ;
 ;
INIT ;
 S LCOD=6 I $$SCANER^W4PRM!($$SUPER^W3PRM&'$$NOCD8^W3PRM) S LCOD=8
 I $G(@$$^W4PRM@("LCOD")) S LCOD=^("LCOD")
 ;
 S KVZ=$$^W4PARCAT K MTXT
 Q
 ;
 ;
CRSUG N NCRSUG N N,SUG,VWSUG
 I '$D(NMB) S NMB=$$GET^%W1PRM("NMB")
 N SUGS S SUGS="" I $G(NMB) S SUGS=$$SUGS^W4L(NMB)
 N MSUG
 ;
 I $G(@$$^W4PARCAT),$D(@$$^W4PARCAT)=11 Q
 ;
 K @$$^W4PARCAT
 N MENUDAY S MENUDAY=0
 N N
 S N="" F  S N=$O(@$$^W4GL("W3PAR")@(N)) Q:N=""  D
 .K ^(N,"DAYS"),^("SHAA")
 ;
 N P1DZ,DTY I '$D(P1DZ) S P1DZ=$$^W4DZ
 S DTY=$$^%L1DC(P1DZ,8)
 ;
 I $G(@$$^W4GL("W3PRTHRD")@(+DTY)) D  ; ---------  TAFRIT YOMI
 .N A S A=$G(^(+DTY)) Q:'A
 .N N1 S N1="" F  S N1=$O(@$$^W4GL("W3PARM")@(A,N1)) Q:N1=""  D
 ..I $G(@$$^W4GL("W3PARM")@(A,N1,"DAYS"))'="" S @$$^W4GL("W3PAR")@(N1,"DAYS")=$G(@$$^W4GL("W3PARM")@(A,N1,"DAYS"))
 ..I $G(@$$^W4GL("W3PARM")@(A,N1,"SHAA"))'="" S @$$^W4GL("W3PAR")@(N1,"SHAA")=$G(@$$^W4GL("W3PARM")@(A,N1,"SHAA"))
 ;
 S SUG="" F  S SUG=$O(@$$^W4GL("PARSUG")@(SUG)) Q:SUG=""  D
 .I $$NOSUG^W3HZTFR(SUG,P1DZ) Q
 .S MSUG=$P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",9)
 .I MSUG'?.P,("^"_MSUG_"^")[("^"_SUGS_"^") Q
 .I SUGS,$G(@$$^W4GL("W4NOSUGS")@(SUG,SUGS)) Q
 .I $$^W4MM,$P(SUG,"-")'=$$GETP^%W1PRM("MSD") Q
 .S VWSUG=$G(@$$^W4GL("W3SUG")@(SUG))
 .I $$^W4MSL(NMB),VWSUG=2 Q
 .I $$^W4MSD(NMB),VWSUG=3 Q
 .S @$$^W4PARCAT@(SUG)=""
 ;
 ;;I '$$GRITVW^W4PRM D  ; ***
 .N IT S IT="" F  S IT=$O(@$$^W4GL("W4ITFAST")@(IT)) Q:IT=""  D
 ..N IND S IND=$G(^(IT))
 ..S @$$^W4PARCAT@("<>"_(IND+10000))=IT
 ;
 ;
 D
 .;;I $$SUPER^W3PRM J ^W4CRCAT(JB) Q  ; ???
 .D ^W4CRCAT(JB)
 Q
 ;
 ;
CRSUG0 N NCRSUG N N,SUG,VWSUG
 I '$D(NMB) S NMB=$$GET^%W1PRM("NMB")
 I $G(@$$^W4PARCAT),$D(@$$^W4PARCAT)=11 Q
 K @$$^W4PARCAT
 N SUGS S SUGS="" I $G(NMB) S SUGS=$$SUGS^W4L(NMB)
 N MSUG
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I $$NOPAR^W4PRTVW(N) Q
 .
 .I $$P1HZTF^W4PARUS(N,$G(NMB)) D
 ..S SUG=+$$SUG^W4P(N) Q:SUG=""
 ..Q:$$NOSUG^W3HZTFR(SUG,P1DZ)
 ..I SUG S MSUG=$P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",9) I ("^"_MSUG_"^")[("^"_SUGS_"^") Q
 ..S VWSUG=$G(@$$^W4GL("W3SUG")@(SUG))
 ..I $$^W4MSL(NMB),VWSUG=2 Q
 ..I $$^W4MSD(NMB),VWSUG=3 Q
 ..S @$$^W4PARCAT@(SUG,N)=""
 ;
 S @$$^W4PARCAT=1
 Q
 ;
 ;
HEAD ;
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:$$^W3MENU  Q:$$CLOSEORD(JB)
 N I,T,R,HD,FLD,REG
 S T=$$T^W3HZHD
 S R=$$R^W3HZHD
 S HD=""
 ;
 I $$AHUZ^W3HZMST(JB)="" D PUT^W3HZMST(JB,"AHUZ",$$AHUZ)
 I $$^W4MSD(+$$GET^%W1PRM("NMB")) Q
 ;
 F I=1:1:70 S $P(HD,"~",I)="#"
 F I=1:1:$L(T,";") D
 .S FLD=$P(T,";",I) I FLD?.P Q
 .I FLD[":" S FLD=$P(FLD,":")
 .S REG=$$SPA^%L1FRM($P(R,";",I))
 .I $D(@FLD) S $P(HD,"~",I)=$$FLD(FLD,REG)
 ;
 I '$G(CODE) S CODE=$TR($$GET^%W1PRM("NMB"),"!-","")
 S CODE=$P(CODE,"~")
 I $G(CODE),$L(CODE)>3 S $P(HD,"~",27)=CODE
 ;
 I $P(HD,"~",6)'?2N1":"2N D
 .S $P(HD,"~",6)=$P(HD,"~",42)_":"_$P(HD,"~",43)
 ;
 F I=1:1:$L(HD,"~") D
 .I $P(HD,"~",I)?.P,$P(HD,"~",I)'="`" Q
 .S $P(@$$^W3TMPORD@(JB),"~",I)=$P(HD,"~",I)
 ;
 D PUT^%W3DEB("W4HZTFR-HEAD","HD=HD")
 ;
 Q
 ;
 ;
FLD(F,RG) ;
 Q $$FLD^W3HZTFR(F,$G(RG))
 ;
 N ST,ST1,IND S ST=$TR($G(@F),$C(160),"")
 I $E(ST)="?" S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 I RG="H",$$^%W1LNG="H" D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" D  Q
 ...S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND=""
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .S ST1=$$INVH^%L1FRM(ST1)
 Q ST1
 ;
AHUZ(STAM) ;
 Q $$AHUZ^W4MENUBT
 ;
CLOSEORD(JB) Q $$CLOSE^W3HZMST(JB)
 ;
CURGR(STAM) ;
 S KV=$$GET^%W1PRM("CURKV")
 Q KV
 ;
 ;
CRTMPTF ;
 D INIT
 ;
 I KVZ[$$^W4PARCAT D
 .N P1HZTF S P1HZTF=""
 .I $$CATOLD D CRSUG0 Q
 .D CRSUG
 ;
 I $$TFRM D
 .S KVZ=$$^W4GL("W3TFRM")_"(JB)" ;-- MISSADOT
 ;
 I $$TFRM!$$CATOLD D
 .N N S N="" F  S N=$O(@KVZ@(N)) Q:N=""  I $D(@KVZ@(N))<10 D KKVZ(N)
 ;
 ;--------------- SIDUR KVUZOT
 D SIDKVZ K SH0L
 ;
 I $D(@$$^W4GL("W4ITFAST"))>9,$$GRITVW^W4PRM!'$$FREELINE D
 .N TMPTFR D TMPTFR
 .S @TMPTFR@(1,.1)=$$TV^%W1DICT($$^%W1LNG,"MOSTINUSE")_$J(.1,7)
 .S @TMPTFR@(1,.1,"KV")=.1
 .
 .D PUT^%W1PRM("CDKV",.1)
 Q
 ;
 ;
CATOLD(STAM) ;
 Q $$CATOLD^W4PRM
 ;
TFRM(STAM) ;
 I $D(@$$^W4GL("W3TFRM")@(JB))=11,@$$^W4GL("W3TFRM")@(JB) Q 1
 Q 0
 ;
MVFROM(STAM) ;
 Q $$MVFROM^W4ORDVFN(1)
 ;
START ;
 D KILL^%W1PRM("SRCH"),KILL^%W1PRM("ABC")
 D KILL^%W1PRM("CDKV")
 D KILL^%W1PRM("NEWPRT")
 D INITUR^W4MENU(1)
 Q
 ;
BGCOLOR(CDKV) ;
 I CDKV=".1" Q "#FF6A00<>#FFF960"
 Q $P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",2)
 ;
FGCOLOR(CDKV) ;
 N FG
 S FG=$P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",3)
 I FG="" S FG=$$BGCOLOR^W4CSS
 Q FG
 ;
DEFSD(STAM) ;
 I $$SCANER Q 1
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$KUPA^W4PLUK(MYDVN) Q 1
 I $$^W6 Q 1
 N NMB S NMB=$$GET^%W1PRM("NMB") I 'NMB Q ""
 N SUGS S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q ""
 N SD S SD=$G(@$$^W4PRM@("DIAPSD",SUGS))
 I SD?." " S SD=$P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",4)
 I SD?." " Q ""
 I SD["-" Q ""
 I SD?1N.N Q SD
 ;
 I SD?1N.N Q 1_";"_SD
 Q ""
 ;
STADD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4HZTFR-STADD","PRM=PRM")
 S NMB=$$GETP^%W1PRM("NMB")
 S CD=$P(PRM,";")
 S QN=$P(PRM,";",2)
 I $$SUPER^W3PRM S CD=$$^W4CDSUPR(CD)
 I $$GETP^%W1PRM("NMB") S PRMHNMB=$$GETP^%W1PRM("NMB")
 S TXT="0~"_CD_"~"_$$SHEM^W4P(CD)_"~"_$$MH^W4P(CD)_"~"_QN
 S RES=$$^W4STADD(TXT)
 I 'RES Q RES
 Q $$^W4CLWTXT(TXT)
 ;
 ;
SCANER(STAM) ;
 Q +$$GETP^%W1PRM("SCANER")
 ;
SZ ;
 N SZ S SZ=$S(COLX<6:14,COLX<7:12,COLX<9:11,COLX<11:10,1:9)
 I $$^W4TABLET=1 S SZ=SZ+1
 I $$^W4TABLET=2 S SZ=SZ+2
 S TX=TX_";font-size:"_$$^W3FSZ(SZ)_";"
 Q
 ;
 ;
GROUP ;
 S MGROUP=1
 ;
 N I0 S I0=0
 ;
 I '$G(@$$^W4PRM@("NOALLDEP")) D
 .S I0=I0+1
 .S MGROUP(I0,"I")="ALL"
 .S MGROUP(I0)=$$^%W1DICT("ALLDEPS")
 .S MGROUP(I0,"TO")="ClickDep('ALL')"
 .I '$$GET^%W1PRM("CURDEP") D
 ..S MGROUP(I0,"BG")="YELLOW"
 ..S MGROUP(I0,"FG")="BROWN"
 ;
 N COLOR,DEP,I S COLOR=0 S I0=I0+1
 D
 .S DEP="" F I=I0:1 S DEP=$O(@$$^W4GL("DEP")@(DEP)) Q:DEP=""  D
 ..S MGROUP(I)=$$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
 ..S MGROUP(I,"I")=DEP
 ..S MGROUP(I,"TO")="ClickDep('"_DEP_"')"
 ..I DEP=$$GETP^%W1PRM("CURDEP") D
 ...S MGROUP(I,"BG")="YELLOW"
 ...S MGROUP(I,"FG")="BROWN"
 Q
 ;
SETDEP(DEP) ; 
 D PUT^%W1PRM("CURDEP",$G(DEP))
 Q 
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZTH
W4HZTH ; HAZAGAT TEUDAT MISHLOAH & HESBONIT  [ 31.08.26 11:43 ] [ 12.08.26 08:21 ] [ 15.07.26 02:52 ] 
 N (JB,%ARG,%REM,HZM,GLBV,GLBV1,%SCV,USK,P1HZHB,P1HZTM,P1HZHB1,P1HZHB2,P1HZHB3,P1HZHB5,BLIPR,MAKOR,TMASR,HSBENG,P1HZMM,PRBIT,ARGHSBRKZ,%W1LNG,NOPCLOAZ)
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 ;
 D ^W4IN,^W4INP D MDPPC
 ;
 I $G(PRINT)="L" G END
 ;
 I $$TODISPATH,$$MDPMSL^W4PRM>1 D
 .I $G(@$$^W4PRM@("MSLLOC")),$$HZMLAK^W4HZMST(HZM)'["W" Q
 .D ^W4MDPMSL($G(P1HZHB1("MSL")))
 ;
 I $D(P1HZHB1),P1HZHB1=1 D ^W4MDPJRF($P(@$$^W4ORD@(HZM),"\"))
 ;
 S LINEPC="S TXT="""" D S11"
 I '$D(%MDP) G END
 ;
 I $G(PRINT)'="" L +@$$^W4GL("P1LOCK")@("PCHZ",PRINT):5
 ;
 I $$MDP("SUG")=7!($$MDP("SUG")=5) D  S ST=$$MDP("NOCOND") D S12
 .S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ;
 S %SCRN=HZSCR S I=0,SM=0 K PRINTF L +@$$^W4PC@(PRINT):2
 I $$MDP("GWPC")=80 S SM=10
 ;
 I $G(@$$^W4PRM@("LOGOMDP")) D
 .;;S @$$^W4MAIN("TMPS111")@(.1)=$C(28)_"p"_$C(1)_$C(1)
 .S @$$^W4MAIN("TMPS111")@(.1)=$C(28)_"p00"
 ;
 I $$^W6,$G(@$$^W4PRM@("HBHBR")) S NOPCLOAZ=""
 I $D(P1HZHB),$G(@$$^W4ORD@(HZM,"HSBENG")) S HSBENG=""
 I $$ENG D ENG^%W1LNG
 ;
 I $$INTERNET(HZM),'$$SF^W4PRM D
 .I $$TODISPATH,$$MSLKZR^W4PRM Q
 .I '$$ENG S TXT=$$MDP("B")_"!! hpxhpi` zpnfd !!"_$$MDP("N") D S1
 .I $$ENG S TXT=$$MDP("B")_"!! Order from Internet !!"_$$MDP("N") D S1
 ;
 I $$TAKEAWAY^W4HZMST(HZM),'$$SF^W4PRM D
 .N HR S HR=$$HRA^W4HZMST(HZM)
 .N GW S GW=40 ; 38
 .I '$$ENG S TXT=$J("! zgwl e`eaii",GW\2)
 .I $$ENG S TXT=$J("! Take Away",GW\2)
 .I $TR(HR,"-_","")["DINEIN" S TXT=$J("DINE IN",GW\2)
 .S TXT=$$MDP("B")_TXT_$$MDP("N")
 .D S1
 ;
 D ST ;-- PRINT HEADER ( FROM P1HZTM )
 ;
 K @$$^W4MAIN("TMPS111")
 S SM=0
 ;
 I $$MDP("GWPC")=80 D
 .S (TXT,TXT1)="      dxrd        :  mekq  :  xign  : zenk :         hixt xe`ze cew        "
 .S TXT=$TR($J("",$L(TXT1))," ","-") D S1
 .S TXT=TXT1 D S1
 .S TXT=$TR($J("",$L(TXT1))," ","-") D S1
 ;
 S ERMDP=0,NP=0 S NMB=$P($G(@$$^W4ORD@(HZM)),"\")
 N NOMHTM S NOMHTM=$$GETP^%W1PRM("NOMHTM")
 I NOMHTM="" D
 .N BLIMH S BLIMH=$$TMBLIMH^W4L(NMB)
 .I $$^W4MSL(NMB),$D(P1HZTM)!$D(P1HZHB2) S NOMHTM=$S('BLIMH:$$NOMHTM^W4PRM,BLIMH=1:1,1:0)
 ;
 S NOMH=0 I $D(P1HZTM),$$^W4MSL(NMB),NOMHTM S NOMH=1
 I $$DELIS^W4PRM,$$TODISPATH S NOMH=1
 I $G(@$$^W4PRM("NOMHHZMH")),$$^W4HZMH(HZM) S NOMH=1 ; -- 20/11/24
 ;;I $G(TMASR) S NOMH=1
 S DOPDL=0 I NOMH!NOMHTM S DOPDL=2
 ;
2 ;
21 G:$D(BLIPR) 22
 ;
 I $D(P1HZHB1("R")) D RIKUZQ G END ;------- RIKUZ LEFI KAMUT (BE-52)
 ;
 ;------- HADPASAT HESHBONIT RIKUZ -----
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$RKZ(HZM),'$$PCDET(HZM),$G(P1HZHB1)'="B",$G(P1HZHB1)'="H",'$$KUPA^W4PLUK(MYDVN) D PCHSBRKZ G 210
 ;
 ;--------- HADPASAT TLUSH BITUL
 I $G(P1HZHB1)="B" D PCTLBIT G END
 I $G(P1HZHB1)="H" D PCTLHNH G END
 ;
 ;--------- HADPASAT HESB. RAGILA
 ;
 I $$TODISPATH D NOSHULAM(HZM)
 ;
 S SHNHP=0
 ;
 I '$$PCKV D
 .F N1=$S($$TODISPATH&$G(P1HZMM):P1HZMM,1:1):1 Q:'$D(@$$^W4ORD@(HZM,N1))  S OKPAR=1 D PCLN(HZM,N1) Q:ERMDP
 ;
 I $$PCKV D
 .N N,N0,KV0,PAR0 S N0=$S($$TODISPATH&$G(P1HZMM):P1HZMM,1:1),KV0=" ",PAR0=" "
 .
 .N TMPHZ S TMPHZ=$$^W4MAIN("TMPHZ") K @TMPHZ
 .S N0=$S(N0>1:N0-1,1:"")
 .S N=N0 F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ..N PAR S PAR=$P($G(^(N)),"\")
 ..N KV S KV=+$$SUG^W4P(PAR)
 ..I $E(PAR)="-" S KV=KV0,PAR=PAR0
 ..M @TMPHZ@(KV,PAR,N)=@$$^W4ORD@(HZM,N)
 ..S KV0=KV,PAR0=PAR
 .
 .S ERMDP=0
 .S KV="" F  S KV=$O(@TMPHZ@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@TMPHZ@(KV,PAR)) Q:PAR=""  D
 ...S N="" F  S N=$O(@TMPHZ@(KV,PAR,N)) Q:N=""  D
 ....S OKPAR=1 D PCLN(HZM,N)
 .K @TMPHZ
 ;
210 ;--------------- HEARA ----------------------------
 I $D(P1HZTM)!$D(P1HZHB1),$$^W4MSL(NMB)!$G(@$$^W4PRM@("HRA2")) D
 .S HRA2=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\") Q:'$L(HRA2)
 .S TXT("R")="",TXT=$TR($J("",$$WDKAV)," ","-") D S1
 .S TXT("R")="",TXT=$J(HRA2,33) D S1
 ;
 I $$HBHR D
 .S HRA2=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\") Q:'$L(HRA2)
 .S TXT("R")="",TXT=$TR($J("",$$WDKAV)," ","-") D S1
 .S TXT("R")="",TXT=$J(HRA2,33) D S1
 ;
 S TXT("R")="",TXT=$TR($J("",$$WDKAV)," ","-") D S1
 ;
 S OKBH=0 D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:OKBH
 ..S PAR=$P($G(^(I)),"\") I $L($$SMB^W4BLNMVC(PAR)) S OKBH=1
 .I OKBH,$$HNHAH^W4HZMST(HZM) D
 ..I '$$ENG S TXT="* dgpd `ll - ziakeka mipneqn mihixt *" D S1
 ..I $$ENG S TXT="* Items marked by asterisk - without discount *" D S1
 ..S TXT="" D S1
 ;
 ;-------------- HELEK TAHTON - HANAHOT, TOTALS, TASHLUMIM -----------------
 ;
 D
 .I $$PAPJ^W4PRM,$$HBMSL(HZM),$$PAPJ^W4PRM,'$D(P1HZHB1("R")) D RIKUZQ1(HZM) Q
 ;
22 D HEADN
 ;
 I $D(@$$^W4ORD@(HZM,"PCMVC")) D ^W4PCMVC ; -- HADPASAT TLUSHEY MIVCAIM
 ;
 I $D(P1HZHB)!$D(P1HZHB2),$$^W4DLPK(NMB),'$G(PRTAWS) D  G:$G(PRTAWS) 2 ;--- SEFAH
 .I $$^W4CLOSE(HZM),$D(BLIPR) Q
 .S MZMNM=$$MAZMIN(HZM)
 .I $G(@$$^W4PRM@("TAWS")) D
 ..K BLIPR,P1HZHB,P1HZHB2 S PRTAWS=1
 ..S P1HZTM="S",NOMH=1 D HEADS,HEAD4
 ;
 I $G(P1HZTM)="S" K P1HZTM
 ;
END ;
 D KILL^%W1PRM("HSBPOS")
 I $G(PRINT)'="" L -@$$^W4GL("P1LOCK")@("PCHZ",PRINT)
 L  Q
 ;-------------------- END OF BODY -----------------
 ;
HBMSL(HZM) ;
 ;;I $D(P1HZHB)!$D(P1HZHB2),$$TMMSL^W4PRM,$$NOTM^W4PRM,$$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM) Q 1
 I $D(P1HZHB)!$D(P1HZHB2),$$TMMSL^W4PRM,$$NOTM^W4PRM,$$HZM^W4MSL(HZM) Q 1
 Q 0
 ;
 ;
PCLN(HZM,N1) ;
 N ST,STHZ,ADOM,SUMT,REF,N2,N3,N2V,TXT,P1H,P1H1
 S (ST,STHZ)=$G(@$$^W4ORD@(HZM,N1))
 K ADOM S SUMT=0,ERMDP=0 S REF=$$^W4ORD_"(HZM,N1)"
 N PAR S PAR=$P(STHZ,"\")
 ;
 I $D(^(N1))>9,'$$PAR2KITCH(PAR) X LINEPC
 ;
 D LINE Q:ERMDP
 S N2="" K PRINTF1,N3
 ;
 D ^W4N2V(HZM,N1)
 ;
 S N2V="" F P1H=1:1 S N2V=$O(@$$^W4MAIN("VRMHZ")@(N2V)) Q:N2V=""  D
 .S N2=$G(^(N2V)) Q:N2=""
 .S OKPAR2=0
 .S ST=$G(@$$^W4ORD@(HZM,N1,N2)) D:$D(^(N2))<10 LINE2
 .S N3="" F P1H1=1:1 S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  S ST=$G(^(N3)) D LINE3
 ;
 I $D(PRINTF1) D
 .S TXT=$TR($J("",$$MDP("GWPC")-7)," ","-") D S1
 ;
 I P1H>1!($G(P1H1)>1),$G(PAR),$G(OKPAR) S TXT="" D S1
 K @$$^W4MAIN("VRMHZ")
 Q
 ;
 ;
PCKV(STAM) ;
 I $$PCHZKV^W4PRM Q 1
 I $$MANA^W4PRM=3 Q 1
 Q 0
 ;
MDP(IND) ;
 I $G(IND)="" Q ""
 Q $G(%MDP(IND))
 ;
HEAD2 ;
 I '$$ENG S TXT=" 4 : 3 : 2 : 1 :--- zetqez xe`z ---"
 I $$ENG S TXT="--- Supplements ---: 1 : 2 : 3 : 4 "
 D S1
 Q
 ;
HEAD3 ;
 Q:$G(@$$^W4PRM@("NOKOTTSF"))
 S TXT=":----------- zetqez -------------:"
 I $$MDP("GWPC")=80 S TXT="-------------------------------   zetqez   ------------------------------"
 I $$ENG S TXT=":----------- Supplements ---------:"
 D S1
 Q
 ;
HEAD4 ;
 S TXT=": ---------- dgex` hexit ----------:"
 I $$MDP("GWPC")=80 S TXT="------------------------------- dgex` hexit ------------------------------"
 I $$ENG S TXT=":--------- Lunch Items ------:  Sum  "
 D S1
 Q
 ;
 ;
HEADS ;----------------------- PRINT SEFAH -----------
 I $G(@$$^W4PRM@("MDPSEF")) D  ; -- TO SPECIAL PRINTER
 .S PRINT=@$$^W4PRM@("MDPSEF")
 .N SUG S SUG=$G(@$$^W4PRM@("MDPSEF","SUG"),6)
 .S %MDP("SUG")=SUG
 .D TV^W4MDP(SUG)
 .N PCN,TXT,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 .S TXT=$$MDP("BEEP")_$$MDP("BEEP"),ST=TXT D S11
 ;
 I '$$ENG S TXT=$$MDP("B")_$$MDP("R")_"* * *  g t q  * * *"_$$MDP("RL")_$$MDP("N") D S11
 S TXT="" D S11
 ;
 I $G(@$$^W4ORD@(HZM,"ETHB")) D
 .I '$$ENG S TXT=$$MDP("B")_$J($G(@$$^W4ORD@(HZM,"ETHB")),6)_" zipeaygl "_$$MDP("N") D S11
 .I $$ENG S TXT=$$MDP("B")_"To Invoice "_$J($G(@$$^W4ORD@(HZM,"ETHB")),6)_$$MDP("N") D S11
 ;
 I $G(@$$^W4ORD@(HZM,"ETHB2")) D
 .I '$$ENG S TXT=$$MDP("B")_$J(+$G(@$$^W4ORD@(HZM,"ETHB2")),6)_" i`xy` oeaygl "_$$MDP("N") D S11
 .I $$ENG S TXT=$$MDP("B")_"To Credit Bill "_$J(+$G(@$$^W4ORD@(HZM,"ETHB2")),6)_$$MDP("N") D S11
 ;
 I '$$ENG S TXT=$$MDP("B")_$J($$HZM(HZM),9)_" dpnfd"_$$MDP("N") D S11
 I $$ENG S TXT=$$MDP("B")_"Order "_$J($$HZM(HZM),9)_$$MDP("N") D S11
 S TXT="" D S11
 ;
 I $L($G(MZMNM)),$$SEFAHNM^W4PRM,$$TAW^W4DLPK($$NMB^W4HZMST(HZM)) D
 .I $$^%W1HB S TXT=$$MDP("B")_"<H>"_$J(MZMNM,12)_": oinfnd"_$$MDP("N") D S11
 .I '$$^%W1HB S TXT=$$MDP("B")_"Customer : "_$$ENG^%L1FRM(MZMNM,12)_$$MDP("N") D S11
 .S TXT="" D S11
 ;
 I $G(MKBL) D
 .I $$^%W1HB S TXT=$$MDP("B")_"<H>"_$J($$SHORT^W4NAME(MKBL),12)_": cilwnd"_$$MDP("N") D S11
 .I '$$^%W1HB S TXT=$$MDP("B")_"Typed by : "_$$ENG^%L1FRM($$SHORT^W4NAME(MKBL),12)_$$MDP("N") D S11
 .S TXT="" D S11
 ;
 N %TIM
 S %TIM=$ZD($H,"24:60") D
 .I '$$ENG S TXT=%TIM_" "_$$^%L1DC($H,1)_" : dwtd onf"
 .I $$ENG S TXT="Issue Time : "_$$^%L1DC($H,1)_" "_%TIM
 .D S11
 Q
 ;
 ;
HEADN ;----------------- HAZAGAT TASHLUMIM & KOTERET TAHTONA
 ;
 I $D(P1TNOPR) Q
 ;
 D GET(HZSCR,GLBV)
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$KUPA^W4PLUK(MYDVN)!$$TODISPATH!$D(P1HZTM) D
 .N QNACS,QNIU
 .S QNACS=$$TOTQNPAR^W4HZMST(HZM,"W4ITACS",1)
 .S QN1U=$$TOTQNPAR^W4HZMST(HZM,"W4IT1USE",1)
 .
 .I $$NOPCCNT^W4PRM D
 ..S QN=$G(@$$^W4GL("W4SAHMDB")@(HZM,"ALL"))
 .
 .I '$$NOPCCNT^W4PRM D
 ..S QN=$$TOTQN^W4HZMST(HZM,1)
 ..S ^AA("W4HZTH-HEADN","QN0")=QN
 ..S ^AA("W4HZTH-HEADN","QNACS")=QNACS
 ..S ^AA("W4HZTH-HEADN","QN1U")=QN1U
 ..I $$DELIS^W4PRM S QN=QN-QNACS-QN1U ;;S ^AA("W4HZTH-HEADN","QN")=QN
 .
 .I '$$ENG,QN S TXT=$$MDP("B")_$J(QN,5)_" :dpnfda mihixt"_$$MDP("N") D S1 S TXT="" D S1
 .I $$ENG,QN S TXT=$$MDP("B")_"Items amount : "_$J(QN,5)_$$MDP("N") D S1 S TXT="" D S1
 .
 .I $$NOPCCNT^W4PRM,$$TODISPATH D
 ..N QN S QN=$$TOTQNP^W4HZMST(HZM,1)
 ..I '$$ENG S TXT=$$MDP("B")_$J(QN,5)_" : zevit k""dq"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG S TXT=$$MDP("B")_"Pizza amount : "_$J(QN,5)_$$MDP("N") D S1 S TXT="" D S1
 ..
 ..S QN=$G(@$$^W4GL("W4SAHMDB")@(HZM)) ;;$$TOTQNP^W4HZMST(HZM,2) ; -- 15/11
 ..I '$$ENG S TXT=$$MDP("B")_$J(QN,5)_" : xepza k""dq"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG S TXT=$$MDP("B")_"Owen amount : "_$J(QN,5)_$$MDP("N") D S1 S TXT="" D S1
 .
 .I $$DELIS^W4PRM D
 ..I '$$ENG,QN1U S TXT=$$MDP("B")_$J(QN1U,5)_" : inrt cg"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG,QN1U S TXT=$$MDP("B")_"One Use Items : "_$J(QN1U,5)_$$MDP("N") D S1 S TXT="" D S1
 ..
 ..I '$$ENG,QNACS S TXT=$$MDP("B")_$J(QNACS,5)_" :fixeqqw`"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG,QNACS S TXT=$$MDP("B")_"Accessories : "_$J(QNACS,5)_$$MDP("N") D S1 S TXT="" D S1
 ..
 ;
 I $$MDP("GWPC")=80 S SM=14
 I $D(P1HZHB2),$G(TMASR) G HEADNA
 I NOMH D SLH,CUT Q
 N %SCRN S %SCRN=HZSCR
 ;
 N T S T=0 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  ; -- T - SUM BE HAZMANA
 .S T=T+$P(^(I),"\",7)
 ;
 I $G(SHNHP) D
 .I '$$ENG D
 ..S TXT=$$MDP("B")_$J(T-SHNHP,7,2)_" :zegpd iptl"_$$MDP("N") D S1
 ..S TXT=$$MDP("B")_$J(SHNHP,7,2)_" :zepnl zegpd"_$$MDP("N") D S1
 .I $$ENG S TXT=$$MDP("N")_"Total dish discounts : "_$J(SHNHP,14,2)_$$MDP("N") D S1
 ;
 ;;I $$MSLKZR^W4PRM,$$TODISPATH D CUT Q
 ;
 N KOLEL
 I $D(P1HZHB1)!($D(P1HZHB2)&'$D(BLIPR))!$D(P1HZHB3)!$$^W4DLPK(NMB)!$D(P1HZTM)!($D(P1HZHB)) D
 .D PCHNTOT
 ;
 ;
 N VT S VT=$J("",5)
 ;
 I SHUL!SHULA,SHUL+SHULA'<TSHL D SHULAM1 ;--- SHULAM BSUG TASHLUM EHAD
 ;
 I $D(P1HZHB3)!$D(P1HZHB)!$D(P1HZHB1),'$G(KOLEL) D PCIGUL
 ;
 I SHUL!'SHULA D  ; ------------- LE TASHLUM ----
 .I '$$ENG S TXT=$$MDP("B")_$J(TSHL,7,2)_" : melyzl"
 .I $$ENG S TXT=$$MDP("B")_"Due     : "_$J(TSHL,7,2)_$$MDP("N")_" NIS"
 .D S1
 ;
 ;
 ;
 I $D(P1HZHB3),TSHL-SHULA+TIP D FICTHB ;---- FIKTIV. HMK (MISHLOHIM) - SUGEI TASHLUM
 ;
 I '$D(P1HZTM),'$D(P1HZHB3),SHUL+ODEF+ODEFTL D EREHHB ; -- HESBON OR HESBONIT
 ;
 I $D(P1HZHB)!$D(P1HZHB1)!($D(P1HZHB5)&'$D(P1HZHB))!$D(P1HZTM)!$$TODISPATH!($D(P1HZHB2)&$$NOTM^W4PRM) D PCSUGT S TXT="" D S1 ;-------- HESBONIT ! HESHBON (NE ASHRAJ)
 ;
HEADNA ;
 I TSHL>(SHUL+SHULA),$D(P1HZHB1) D
 .I '$$ENG D
 ..S TXT=$$MDP("B")_$J(TSHL-SHUL-SHULA,7,2)
 ..N TXITRA S TXITRA="dxzi"
 ..I $$CODTS^W4HZMST(HZM)=1 S TXITRA="onefna "_TXITRA
 ..S TXT=TXT_" :"_TXITRA_$$MDP("N") D S1
 .
 .I $$ENG D
 ..S TXT=$$MDP("B")_"Balance : "
 ..S TXT=TXT_$J(TSHL-SHUL-SHULA,7,2)_$$MDP("N")_" NIS"
 ..D S1
 ;
 S TXT="" D S1
 ;
 D HODAA ; --> CUT
 ;
 I $D(P1HZHB)!$D(P1HZHB3),'$D(P1TNOPR) D  ;
 .I CA S DCM="`ay" D  ; ---------- HADPASAT K-A
 ..N DD S DD=$P($G(@$$^W4ORD@(HZM,"CB")),"\",7)
 ..S DTCB=$$^%L1DC(DD,1),TTCB=$$T^%L1TIME($P(DD,",",2))
 ..N I S I="" F  S I=$O(@$$^W4ORD@(HZM,"CB","V",I)) Q:I=""  D
 ...N A S A=$G(^(I)) Q:A=""
 ...D ^W4GTVCH(A,"V") D CA(I)
 ;
 ;
 I $$RKZSUG D RIKUZQ1(HZM); -- HALLO TEIMAN
 ;
 I $$SHULA^W4HZMST(HZM) D  Q:$G(@$$^W4PRM@("ASR"))=1!$G(TMASR) ; -- TL HAKAFA
 .I '$G(MAKOR) D
 ..I $D(@$$^W4ORD@(HZM,"TB","PC")),'$$SF^W4PRM D PCTBETEK
 ..I $D(@$$^W4ORD@(HZM,"CB","VC")),'$$SF^W4PRM D PCVCETEK
 .I $D(P1HZHB)!$D(P1HZHB2) D ASRWR
 .I $G(TMASR),'$D(P1TNOPR) S TXT=$C(10,10,10,10,10) D S1
 ;
 I $$GCOUPIT^W4HZMST(HZM) D
 .D PC^W4TLMTN(HZM)
 ;
 ;;I $G(ODEFTL),$D(P1HZHB) D ^W4ODTL(TLN,NCAB,ODEFTL,DHB,MAKOR)
 ;
 I $G(@$$^W4PRM@("CARD")),$D(P1HZHB) D PCCARD ; -- HADPASAT KARTISIM
 ;
 I $$BSL^W4PRM,$$BSCARD^W4HZMST(HZM),$D(P1HZHB1) D PCBSL
 ;
 Q  ;----------------------- END KOT TAHTONA -------------
 ;
 ;
PCHNTOT ;
 S KOLEL=0
 ;;D ^W4HZMVC1(HZM,1); -- 02.03.23
 D PCET^W4HZMVC1(HZM)
 ;
 I '$$ENG D  ; -- HEBREW
 .S TXT=$$MDP("B")_$J(T,7,2)_" : k""dq"_$$MDP("N") D S1
 .
 .I DMSH D
 ..S TXT=$$MDP("B")_$J(DMSH,7,2)_" : "_$S($$^W4MSL(NMB):"gelyn ",1:"zexiy ")
 ..S TXT=TXT_$S($G(DMSAH):$J(DMSAH,1,1)_"%",1:"inc")_$$MDP("N") D S1
 ..S KOLEL=1
 .
 .I HNHAH D
 ..N HNHA S HNHA=$$HNHA^W4HZMST(HZM) I HNHA<0 S HNHA=-HNHA
 ..S TXT=$$MDP("B")_$J(-HNHA,6,2)_" = "_$J($S(HNHAH>0:HNHAH,1:-HNHAH),4,1)_"% "
 ..I HNHA>0 S TXT=TXT_"dgpd"_$$MDP("N")
 ..I HNHA<0 S TXT=TXT_"zexiy inc"_$$MDP("N")
 ..S KOLEL=1
 ..D S1
 .
 .I $$LKHNH^W4HZMST(HZM) D  ; -- HANAHAT LAKUAH
 ..N LKHNH S LKHNH=$$LKHNH^W4HZMST(HZM)
 ..S TXT=$$MDP("B")_$J(-LKHNH,7,2)_" : "
 ..S TXT=TXT_"dtwd zegpd"_$$MDP("N"),TXT("R")=1 D S1
 ..S KOLEL=1
 .
 .I $$HNH1^W4HZMST(HZM) D  ; -- HANAHOT NOSAFOT
 ..N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 ..S TXT=$$MDP("B")_$J(-HNH1,7,2)_" : "
 ..S TXT=TXT_"ztqep dgpd"_$$MDP("N") D S1
 ..S KOLEL=1
 .
 .I $G(TIP),$$^W4TIPPD($$DTK(HZM)) D TIP(TIP) S KOLEL=2
 .
 .I KOLEL D
 ..D PCIGUL   
 ..S TXT=$$MDP("B")_$J(TSHL+$S(KOLEL=2:$G(TIP),1:0),7,2)
 ..S TXT=TXT_" : llek k""dq"_$$MDP("N") D S1
 ..I $G(TIP),KOLEL'=2 D TIP(TIP)
 ;
 ;
 I $$ENG D  ; ----- ENGLISH
 .S TXT=$$MDP("B")_"Total   : "_$J(T,7,2)_$$MDP("N")_" NIS" D S1
 .
 .I DMSH S TXT=$$MDP("B")_"Service : "_$J(DMSH,7,2)_" NIS"_$$MDP("N") D S1 S KOLEL=1
 .
 .I HNHAH D
 ..S TXT=$$MDP("B")_"Discount "_$J(HNHAH,4,1)_"% = "_$J(-$$HNHA^W4HZMST(HZM),7,2)_$$MDP("N") D S1 S KOLEL=1
 .
 .I $$HNH1^W4HZMST(HZM) D
 ..N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 ..S TXT=$$MDP("B")_$S(HNH>0:"Discount",1:" Add.     ")_" : "
 ..S TXT=TXT_$J($S(HNH1>0:-HNH1,1:HNH1),7,2)_$$MDP("N")_" NIS" D S1
 ..S KOLEL=1
 .
 .I $G(TIP) D TIP(TIP) S KOLEL=1
 .I KOLEL S TXT=$$MDP("B")_"To pay  : "_$J(TSHL,7,2)_$$MDP("N")_" NIS" D S1
 Q
 ;
MVB(STAM) ;
 I $P($G(@$$^W4ORD@(HZM,"CB","CH",1)),"*",2)="B" Q 1
 Q 0
 ;
SHULAM1 ;
 I SHUL'>(MZM+ODEF),SHUL'<0,'SHULA S VT=$S($$ENG:"Cash",1:"onefn")
 I SHUL=CHK,'SHULA S VT=$S($$CODTS^W4HZMST(HZM)=12:" PAIDIT ",$$MVB:" "_$$BANK_" ",'$$ENG:"  wiy",1:"Check") Q
 I SHUL=CA,'SHULA S VT=$S($$ENG:"Cr.Card ",1:"  `""k") Q
 I SHUL=TL,'SHULA S VT=$S($$ENG:"Coupon ",1:" yelz") Q
 I SHULA,'SHUL S VT=$S($$ENG:"Credit ",1:" dtwd") Q
 Q
 ;
 ;
BANK(STAM) ;
 I $$ENG Q "BANK"
 Q " zi`wpa dxard"
 ;
PCIGUL ;
 I $G(MAKOR)!$D(P1HZHB1),$G(@$$^W4PRM@("IGUL")),+TSHL\1'=+TSHL&($G(@$$^W4PRM@("IGUL"))=1)!($G(@$$^W4PRM@("IGUL"))=2&(+TSHL'=$J(TSHL,1,1))),TSHL-SHUL-SHULA<-1!(TSHL-SHUL-SHULA>1) D
 .N PUTHNH D ^W4IGUL I HNH2 D
 ..N HNH S HNH=$$HNH^W4HZMST(HZM)+HNH2
 ..F PUTHNH="HNH2","HNH","TSHL" D
 ...D PUT^W4SCREF($$^W4ORD_"(HZM)","P1HZMS",1,PUTHNH)
 ..I $$D^W3TMPORD(JB)=11 D  ; -- ???
 ...F PUTHNH="HNH","TSHL" D
 ....D PUT^W3HZMST(HZM,PUTHNH,$G(@PUTHNH))
 ;
 I $G(HNH2),'SHUL!'SHULA!'$D(P1HZHB) D
 .S TXT=$$MDP("B")
 .I '$$ENG S TXT=TXT_$J(-HNH2,7,2)_" : lebir"
 .I $$ENG S TXT="Rounded : "_$J(-HNH2,7,2)
 .S TXT=TXT_$$MDP("N") D S1
 Q
 ;
 ;
 ;
FICTHB ;
 S TXT="" D S1
 I '$$SHUL^W4HZMST(HZM)<.5 Q  ; -- 25/11/25
 ;
 I '$$ENG D
 .N PAID S PAID=TSHL-SHULA+TIP
 .I $$SHUL^W4HZMST(HZM) S PAID=$$SHUL^W4HZMST(HZM)
 .S TXT=$C(10)_$$MDP("B")_$J(PAID,7,2)_" : mley"_$$MDP("N") D S1
 .N VT S VT="     "
 .I $G(CA) S VT="  `""k",TXT=$J("",18)_$J(CA,7,2)_" "_VT D S1P
 .
 .I TSHL-SHULA-$G(CA)>0.5 D
 ..S VT=$S($G(CODTS)=2&$$MVB:$$BANK,$G(CODTS)=2:"  wiy",1:"onefn")
 ..N SUM S SUM=TSHL-SHULA-$G(CA)
 ..D
 ...I VT["onefn",$$SMZ^W4HZMST(HZM)>0 S SUM=$$SMZ^W4HZMST(HZM)+SUM Q
 ...I $$SCH^W4HZMST(HZM)>0 S SUM=$$SCH^W4HZMST(HZM)
 ..S TXT=$J("",18)_$J(SUM,7,2)_" "_VT D S1P
 .
 .I $$SHUL^W4HZMST(HZM) D
 ..S TXT=$$MDP("B")_$J(TSHL-SHULA+TIP-$$SHUL^W4HZMST(HZM),7,2)_" : dxzi"_$$MDP("N")
 ..D S1
 ;
 I $$ENG D
 .S TXT=$$MDP("B")_"Paid       : "_$J(TSHL-SHULA+TIP,7,2)_$$MDP("N") D S1
 .N VT S VT="     "
 .I $G(CA) S VT="Credit Crad",TXT=$J(CA,7,2)_" "_VT D S1P
 .I TSHL-SHULA-$G(CA)>0.5 D
 ..S VT=$S($G(CODTS)=2:"Check      ",1:"Cash       ")
 ..S TXT=VT_" "_$J(TSHL-SHULA-$G(CA),7,2) D S1P
 Q
 ;
 ;
EREHHB ;
 N SUM,ZG S SUM=SHUL+ODEF+ODEFTL
 ;
 I '$$ENG D
 .I '$D(P1HZHB) D
 ..S TXT=$$MDP("B")_$J(SUM,7,2)_" : "_$$MDP("N") ; -- SUM
 ..S TXT=TXT_$G(VT)_" "_$$MDP("B")_"mley"_$$MDP("N") D S1
 .
 .I $D(P1HZHB) D
 ..S SUM=SHUL I '$$^W4TIPPD($$DTK(HZM))!$$^W4TIPCBU($$DTK(HZM)) S SUM=SUM-$G(TIP)
 ..N SUMHB S SUMHB=$$TSHL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
 ..I '$G(TIP),SUM>SUMHB S SUM=SUMHB
 ..S TXT=$$MDP("B")_$J(SUM,7,2)_" : "_$$MDP("N") ; -- SUM
 ..S TXT=TXT_$$MDP("B")_"z-ayg jxr"_$$MDP("N") D S1
 ..D PCMAM
 ..S TXT=$$MDP("B")_$J("",7)_" : mley"_$$MDP("N") D S1
 ;
 I $$ENG D
 .I '$D(P1HZHB) D
 ..S TXT=$$MDP("B")_"Paid "_VT_$$MDP("N")_VT_$$MDP("B")_$J(SUM,7,2)_$$MDP("N") D S1
 .
 .I $D(P1HZHB) D
 ..S SUM=SHUL I '$$^W4TIPPD($$DTK(HZM))!$$^W4TIPCBU($$DTK(HZM)) S SUM=SUM-$G(TIP)
 ..S TXT=$G(TXT)_$$MDP("B")_"Inv.value:"
 ..S TXT=TXT_$J(SUM,7,2)_$$MDP("N") D S1 ; -- SUM
 ..D PCMAM
 ..S TXT=$$MDP("B")_"Paid    "_$$MDP("N") D S1
 Q
 ;
 ;
PCSUGT ;
 I $$BIGVT!MZM S TXT="" D S1
 I CHK D
 .I $D(@$$^W4ORD@(HZM,"CB","CH"))#2 D ^W4GTVCH(^("CH"),"CH") D CH
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","CH",I))  D ^W4GTVCH(^(I),"CH") D CH
 ;
 N CODTS S CODTS=$$CODTS^W4HZMST(HZM)
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 ;
 I MZM!ITRA,MZM<SHUL!SHULA!$D(P1HZHB)!$$BIGVT!$D(P1HZTM)!$$TODISPATH D
 .I 'MZM,'ITRA Q
 .I MZM D  Q
 ..S TXT=$J("",15)_$S($$ENG:" Cash",1:" onefn ")_$J(MZM+ODEF,7,2) D S1P
 .I $$HZM^W4MSD(HZM) Q
 .I $D(P1HZHB1) Q
 .I $$TODISPATH,'$$HZAFTPAY^W4PRM Q
 .S TXT=$J("",15)_$S($$ENG:" Cash",1:" onefn ")_$J(ITRA,7,2) D S1P Q
 ;
 I $G(@$$^W4PL@("MATB")),$D(@$$^W4ORD@(HZM,"CB","M")) D  ; ----MATBEA
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","M",N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I N>1 D
 ...S TXT="   g""y "_$J(A*$P(A,"!",2),7,2)_"  = "
 ...S TXT=TXT_$J($P(A,"!",2),6,3)_" * "_$P($G(@$$^W4GL("P1SUGM")@(N)),"\",2)
 ...S TXT=TXT_" "_$J(A,6,2) D S1
 ;
 I TL D
 .I '$$ENG S TXT=$J("",15)_"  yelz "_$J(TL+ODEFTL,7,2) D S1P
 .I $$ENG S TXT="Coupon   "_$J(TL+ODEFTL,7,2) D S1P
 ;
 I CA D
 .I '$$ENG S TXT=$J("",15)_"   `""k "_$J(CA,7,2) D S1P
 .I $$ENG S TXT=$J(CA,7,2)_" Cr.Card" D S1P
 ;
 I SHULA D
 .I '$$ENG S TXT=$J("",15)_"  dtwd "_$J(SHULA,7,2) D S1P
 .I $$ENG S TXT=$J(SHULA,7,2)_" Credit" D S1P
 ;
 D  ;  ---------- TIP, ODEF --------------
 .I $G(TIP),'$$^W4TIPPD($$DTK(HZM)) D TIP(TIP)
 .I $G(ODEFTL)>0 D ODEFTL(ODEFTL) Q
 .;;S ODEF=SHUL+SHULA-TSHL-$G(TIP)
 .;
 .I TSHL>0&(ODEF>0)!(TSHL<0&(ODEF<0)) D ODEF(ODEF) Q
 .;;I MZM,MZM<SHUL,MZM<0 D ODEF(-MZM) Q
 .I TL,TL<(SHUL+SHULA),TSHL<0,TL<0 D ODEFTL(-TL) Q
 .;;I TSHL+$G(TIP)<SHUL,TSHL>0 D ODEF(SHUL+SHULA-TSHL-$G(TIP)) Q
 Q
 ;
 ;
HODAA ;
 ;
 S MZMNM=$$MAZMIN(HZM)
 ;
 I FLAGSHVA<0,$D(P1HZHB1) D
 .I '$$ENG S TXT="       i`xy` iqihxk milawn `l ",TXT("R")=1 D S1
 .I $$ENG S TXT=" Don't accept credit cards ",TXT("R")=1 D S1
 ;
 I '$$TODISPATH,'$G(DMSH)!$$^W4MSL(NMB),'$$TAW(NMB),'$$^W4TAWMSL(HZM),'$D(P1HZHB)!$G(@$$^W4PRM@("BOTHB")),'$G(@$$^W4PRM@("NOHDSRV")) D
 .I '$$ENG S TXT=$$MDP("B")_" zexiy llek `l xignd"_$$MDP("N") D S1
 .S TXT=$$MDP("B")_"SERVICE NOT INCLUDED"_$$MDP("N") D S1
 ;
 I $D(P1HZHB)!$D(P1HZHB2),$$SUPER^W3PRM D
 .N ATAV,A S ATAV=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ..S A=$G(^(N)) I $P(A,"\",7)<0,$P(A,"\",5)'<0 S ATAV=ATAV-$P(A,"\",7)
 .I ATAV>0,'$$ENG D
 ..S TXT=$J("! g""y "_$J(ATAV,2,2)_" zkqg ef dipwa,xwi gewl",39) D S1
 .I ATAV>0,$$ENG D
 ..S TXT="Dear customer in this purchase you saved "_$J(ATAV,2,2)_" NIS" D S1
 ;  
 I $D(P1HZTM) D SLH
 ;
 I $$WOLT^W4HZPCHD(HZM) D
 .I $D(P1HZHB)!$D(P1HZHB2) Q
 .S TXT=$$MDP("BB")_$J($$NOMWOLT^W4HZPCHD(HZM),13)_" : WOLT"_$G(%MDP("N"))
 .D S1
 ;
 I $$HLTM G HODAA1
 ;
 D KAV2
 ;
 I '$$ENG S TXT=$$MDP("B")_$J(HZM,14)_" dpnfd"_$$MDP("N") D S1
 I $$ENG S TXT=$$MDP("B")_"Order "_$J(HZM,14)_$$MDP("N") D S1
 ;
 I MZMNM'="",$$SEFAHNM^W4PRM,$$TAW^W4DLPK(NMB) D
 .I '$$ENG S TXT=$$MDP("B")_$J(MZMNM,12)_" oinfn"_$$MDP("N") D S1
 .I $$ENG S TXT=$$MDP("B")_"Cust "_$J(MZMNM,12)_$$MDP("N") D S1
 .S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 ;
HODAA1 ;
 I '$D(P1HZTM) D
 .I $G(@$$^W4PRM@("LAST")) N MKBL S MKBL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .I $L($G(MKBL)) D
 ..S TXT=$$MDP("B")
 ..N TAFKID S TAFKID=$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):" onxa",1:$$PC^W4WAITER)
 ..I $$^%W1HB S TXT=TXT_"<H>"_$$HBNAME($$SHORT^W4NAME(MKBL),18-$L(TAFKID))_" :"_TAFKID_"<H>"_$$MDP("N")
 ..I '$$^%W1HB S TXT=TXT_$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):"Barman",1:"Waiter")_" "_$$ENGNAME($$SHORT^W4NAME(MKBL),12)_$$MDP("N")
 ..D S1
 ;
 I $$MSPYOM^W4PRM,$G(MAKOR),'$$ZAHI^W4PRM D
 .N NOM S NOM=$$^W4MSPYOM(HZM)
 .N TXT S TXT="" D S1
 .N RV1,RV2 S RV1=$J("",20-$L(NOM)\2)
 .S RV2=$J("",20-$L(NOM)-$L(RV1))
 .S TXT=$$MDP("I")_$$MDP("BB")_RV1_NOM_RV2_$$MDP("IE")_$$MDP("N")
 .D S1
 ;
 S SHEEL=0
 I $D(@$$^W4GL("P1HOD")@("D")),'$$PCDET(HZM)!$G(@$$^W4PRM@("KOTDMSL")) D KOTD ;---------------- SHEELON
 ;
 I $D(P1HZHB)!$D(P1HZHB3),$G(CA),$G(@$$^W4PRM@("NOCUTFIRST")) Q
 ;
 I $D(P1HZHB2),$G(@$$^W4PRM@("NOCUTFIRST")) Q  ;
 ;
 D CUT
 Q
 ;
 ;
TAW(NMB) ;
 I $$^W4DLPK(NMB) Q 1
 Q 0
 ;
KOTD ;
 N SD,ST,ST1,HESHBON
 N SOAD1 S SOAD1=SOAD I $G(@$$^W4PRM@("SHEELSD1")) S SOAD1=1
 ;
 F SD=1:1:SOAD1 D
 .K SS Q:SD>1&'SHEEL
 .N SS F I=1:1:25 Q:'$D(@$$^W4GL("P1HOD")@("D",I))  S ST=$G(^(I)) Q:ST?.P1"*".P  Q:ST="?"&'$D(P1HZHB1)  D
 ..I ST?1"?".P,$G(P1HZHB1),'$$HEADNHZ D  S SHEEL=I Q
 ...N PCN,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ...S ST=$C(10,10,10,10,10)_$$MDP("CUT") D S12
 ...S TXT=$J("",5)_$$MDP("B")_$$MDP("R")_" *** "_$S($$ENG:"Service Feedback",1:"zexy aeyn")_" *** "_$$MDP("RL")_$$MDP("N") D S1
 ...S TXT="" D S1
 ...S TXT=$$T^%L1TIME($P($H,",",2))_" "_$$^%L1DC($H,1) D S1
 ...I '$$ENG D
 ....S TXT=$J("",23)_$J($$SHORT^W4NAME(MKBL),8)_$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):" onxa",1:$$PC^W4WAITER) D S1
 ....S TXT=$J("",5)_$$MDP("B")_$J($$HZM(HZM),6)_$$MDP("N")_" dpnfd "_$$MDP("B")_$J(NMB,3)_$$MDP("N")_" "_$$PC^W4DICTBL D S1
 ...I $$ENG D
 ....S TXT=$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):"Barman",1:$$PC^W4WAITER)_" "_$J($$SHORT^W4NAME(MKBL),8) D S1
 ....S TXT=$$PC^W4DICTBL_$$MDP("B")_$J(NMB,3)_$$MDP("N")_" Order "_$$MDP("B")_$J($$HZM(HZM),6)_$$MDP("N") D S1
 ...S TXT="" D S1
 ...S SS=""
 ..
 ..Q:SD>1&'$D(SS)
 ..
 ..S ST1=$$SPA^%L1FRM(ST),HESHBON=0
 ..;
 ..I ST1["$" D
 ...S HESHBON=1
 ...S ST1=$TR(ST1,"$","")
 ..;
 ..I SHEEL,'$D(P1HZHB1) Q
 ..I SHEEL,HESHBON Q
 ..I 'SHEEL,HESHBON,'$D(P1HZHB1) Q
 ..I 'SHEEL,'HESHBON,$D(P1HZHB1),'$G(@$$^W4PRM@("KOTDMSL")) Q
 ..;
 ..S TXT=ST1_$J("",GWPC-$$L^%L1FRM(ST1,"#","#")\2) D PCST(TXT) Q
 .
 .D SETHEADN
 Q
 ;
 ;
CA(IND) ;------- CARTISEJ ASHRAJ
 N I D MDPPC
 D PUT^%W3DEB("W4HZTH-CA","HZM-HZM & FLP=FLP & MAKOR=MAKOR & PRINT=PRINT")
 I $G(HZM),FLP,MAKOR Q
 I MAKOR,$G(@$$^W4ORD@(HZM,"CB","V",IND,"NOCAPC")) Q
 ;
 N MAS S %TIM=$ZD($H,"24:60") S MAS(1)=$$^%L1DC($H,1)_" "_%TIM
CA1 ;--- T.VX FROM P1TZ
 Q:$D(P1TNOPR)
 I '$D(TSS) D ^%L1TS
 Q:$G(PRINT)<3
 I $L($G(NCA))<6!'$G(NCA) Q
 ;;I $G(HZM),$D(@$$^W4ORD@(HZM,"EMV")) D PCCAEMV(HZM,IND) Q   ; 03/03/19 -> COMMENT
 ;
 ;
 K NOCUT
 ;;**;;I $G(PRINT)<3 S %SAY=" ! dxcbed `l dtew zqtcn z`f dcnrl " X %XMSGV(1) Q
 S VVTS=VTS S:$E(VVTS)="$" VVTS=$E(VVTS,2,10)
 ;
 S MAS(2)=$$RPL^%L1FRM(SHEMCA,"Cal","CAL")
 S MAS(2)=$$RPL^%L1FRM(SHEMCA,"laC","CAL")
 S MAS(2)=$$RPL^%L1FRM(MAS(2),$TR("Cal",TS0,TSS),"CAL")
 S MAS(2)=$$RPL^%L1FRM(MAS(2),$TR("laC",TS0,TSS),"CAL")
 ;
 N PRM S PRM=$G(@$$^W4SG("PARMNEW"))
 S MAS(3)=$S('$G(MAKOR):"wzrd",1:"")
 S MAS(4)=NCAB
 S MAS(5)=$E($G(PRM),46,60)
 N VER S VER=$G(@$$^W4SG("VERSION"))
 S MAS(10)="ABS-"_$E(VER,1,3)
 S MAS(10)=MAS(10)_"-6S"
 S MAS(15)=$E($G(@$$^W4SG("START")),1,7)
 S MAS(5)=""
 S MAS(15)=$G(@$$^W4PRM@("ASH","MASOF"))
 ;
 S MAS(20)=$S(VVTS="V1"!(VVTS="V5"):$E(PRM,101,107),VVTS="V2":$E(PRM,136,142),VVTS="V3":$E(PRM,171,177),VVTS="V4":$E(PRM,206,212),VVTS="V6":$E(PRM,241,247),1:"       ")
 I $G(@$$^W4SG("VERSION"))<570,VVTS="V6",$E($G(@$$^W4SG("PARMA")))=1 D
 .S MAS(20)=$E(PRM,136,142)
 ;
 S MAS(25)=""
 I $G(MAKOR) S MAS(25)=$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))
 I '$G(MAKOR),$G(DTCB) D
 .S MAS(25)=DTCB_"  "_$G(TTCB)
 ;
 S MAS(30)=$$SPA^%L1FRM(MAS(2)) ;I '$L(MAS(30)) S MAS(30)=MAS(2)
 I NCA D
 .S MAS(35)="..."_$E(NCA,$L(NCA)-3,$L(NCA))
 .S MAS(351)=$E(+NCA,1,4)_"-"_$E(+NCA,5,8)_"-"_$E(+NCA,9,12)_"-"_$E(+NCA,13,20)
 S MAS(351)=MAS(35) ; -- 24/11/24
 I 'NCA S (MAS(35),MAS(351))=""
 S MAS(40)=$E(TKFCA,1,2)_"/"_$S($E(TKFCA,3,4)<19:20,1:"")_$E(TKFCA,3,4)
 S MAS(45)=NISKA ;-- ADD N FILE
 S MAS(47)=$S($$^W4ZHUT(SUG21):"iekif",1:"aeig")
 I $G(HUZCA),MAS(47)="aeig",$G(OFENCA)<50 S MAS(47)="MSR"
 S MAS(50)=$S(MIAUTH=1:"`ay",MIAUTH=2:"dxag",MIAUTH=3:"ipci",1:"")_"  "
 S SIBA=$G(SIBA)
 S MAS(50)=MAS(50)_$S(SIBA=7:"0",SIBA=1:"`",SIBA=2:"z",SIBA=3:"n",SIBA=4:"y",SIBA=8:"i",SIBA=6:"g",1:"")_"  "_$G(AUTHNO)
 S MAS(53)=$G(MOAD)
 S MAS(55)=$S(OFENCA="00":"libx",OFENCA="01":"invr zexy",OFENCA="02":"wlc zepgz",OFENCA="03":"zvle`n",OFENCA=50:"zipetlh dwqr",OFENCA=51:"cala dnizg",1:"")
 S MAS(60)=$S(SUGMTB=1:$S(HUZCA:"NIS",1:"g""y"),SUGMTB=2:"USD",SUGMTB=4:"xlec cenv",SUGMTB=8:"ccn cenv",1:"")
 S MAS(65)=""
 I VVTS="V1" S MAS(65)=$S(SUG1=2:"hicxw`xyi",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=5:"hicxwxteq",SUG1=6:"minelyza hicxw",SUG1=8:"minelyz",SUG1=9:"minelya oecren",1:"")
 I VVTS="V2"!(VVTS="V3") S MAS(65)=$S(SUG1=2:"30+/sicr",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=6:$S($E(NCA)=3:"hicxw qxpiic",1:"hicxw"),SUG1=8:"minelyz",1:"")
 I VVTS="V4" S MAS(65)=$S(SUG1=2:"hicxw qwn`",SUG1=4:"oecren",SUG1=5:"hicxwxteq",SUG1=6:"minelyza hicxw",SUG1=8:"minelyz",9:"minelyza oecren",1:"")
 I VVTS="V6" S MAS(65)=$S(SUG1=2:"30+/sicr",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=5:"hicxw xteq",SUG1=6:"hicxw",SUG1=8:"minelyz",1:"")
 I SUG1=1 S MAS(65)="libx"
 S MAS(70)=$J(CAV-KHVCA,8,2)
 S MAS(72)="" I KHVCA S MAS(72)=$J(KHVCA,8,2)_" miakeka mekq"
 I P1 S MAS(75)=$J(P1*.01,8,2)
 I PN S MAS(80)=$S(P1:"mitqep",1:"")_" minelyz "_PN_$S(P1:" cere",1:"")
 I PC S MAS(85)=$J(PC*.01,8,2)
 S MAS(90)="" I $G(HZM) S MAS(90)=$$HZM(HZM)_" dpnfd"
 I $G(TZK) S MAS(90)=$J(TZK,5)_" iekif 'z"
 I $G(DCM)["dlaw" S MAS(90)=$J(NCAB,5)_" dlaw"
 I $D(PRG) S MAS("PRG")=1 ;-- PROGON V KONCE
 N NMB I $G(HZM) S NMB=$P(@$$^W4ORD@(HZM),"\")
 ;
 I $G(HZM),$G(NMB),'$G(DMSH)!$$^W4MSL(NMB),'$$TAW(NMB),'$$^W4TAWMSL(HZM),'$D(P1HZHB)!$G(@$$^W4PRM@("BOTHB")),$G(@$$^W4PRM@("HDSRV")) D
 .S MAS(95)="    zexy llek `l "
 .S MAS(96)="   SERVICE NOT INCLUDED"
 .;;S MAS(97)="INCLUDED"
 ;
 I $G(HZM),$G(NMB),$$^W4MSD(NMB),$G(MAKOR) D
 .N MLZ S MLZ=$P($G(@$$^W4ORD@(HZM)),"\",18)
 .I $G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)) S MLZ=@$$^W4GL("P1MLZ")@(HZM)
 .S MAS(91)=$$SHORT^W4NAME(MLZ)_" "_$$PC^W4WAITER
 ;
 I $G(HZM),$G(TIPCA) S MAS(98)=TIPCA
 ;
 S MAS("NOPTH")=1
 S LAB="SHV96"
 ;;S ^PETEK=5.4
 D ^W4CB K PRG
CACUT I '$$^W6 D CUT ; -- 25/10/23 $$^W6
 Q
 ;
 ;
CH ;
 N SUGPAY S SUGPAY=$S($$CODTS^W4HZMST(HZM)=12:"PAIDIT",$$MVB:$$BANK,$$ENG:"Check",1:" wiy")
 S TXT=$J("",15)_$J(SUGPAY,6)_" "_$J(CHS,7,2)
 I $$ENG S TXT=SUGPAY_" "_$J(CHS,7,2)
 D S1
 Q
 ;
PCTBETEK ;
 N RECID,TXT S RECID=""
 F  S RECID=$O(@$$^W4ORD@(HZM,"TB","PC",RECID)) Q:RECID=""  D
 .S TXT=$$MDP("B")_$S($$ENG:"Copy",1:"wzrd")_$$MDP("N") D S1
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"TB","PC",RECID,N)) Q:N=""  D
 ..S TXT=$G(^(N)) D S1
 .D CUT
 Q
 ;
 ;
PCVCETEK ;
 N RECID,TXT S RECID=""
 F  S RECID=$O(@$$^W4ORD@(HZM,"VC",RECID)) Q:RECID=""  D
 .S TXT=$$MDP("B")_$S($$ENG:"Copy",1:"wzrd")_$$MDP("N") D S1
 .S TXT=$$GETBON^WV(HZM,RECID,"PRINTMSG")
 .D ^WVPC(TXT,1,1)
 Q
 ;
 ;
PCBSL ;
 I $$BSNOPCHB^W4PRM Q
 N A,TMP S TMP=$$TMP^WBSTAT K @TMP
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"BSL","INVPC",I))  D
 .S A=$G(^(I))
 .S @TMP@(I)=A
 D PCTL^WBSTAT($$HDFUNC^WBSTAT("STAT")_"!")
 Q
 ;
 ;
ASRWR ;
 N MAKOR0 S MAKOR0=$G(MAKOR)
 N LKHN,LKAH,LKHNH,ASR,HRA1,LKHR,HZMLK,TLUSH,KMTL,FLP,LKHN1,LKHR1,CIBVT,CIBCARD,CIBCID,CIBUID,CIBUIC,TSFMH,TIPAS,TBCARD,TBRECID,COUPNMB,COUPNM,COUPTEL,MAKOR
 I '$D(HZSCR) D ^W4IN
 ;
 D GET(HZSCR,GLBV) Q:'SHULA
 ;
 I SHULA D
 .N I S I="" F  S I=$O(@$$^W4ORD@(HZM,"CB","ASR",I)) Q:I=""  D  Q:$L($G(LKHN))<4
 ..D ^W4GTVCH(^(I),"ASR") Q:$L($G(LKHN))<4
 ..S MAKOR=$S($P($G(@$$^W4ORD@(HZM,"ETHB2")),",",I):0,1:1)
 ..I 'FLP!('MAKOR&'$D(PRBIT)) D
 ...I 'FLP,$D(PRBIT) N MAKOR S MAKOR=1
 ...D ASR(I) Q:$D(P1TNOPR)
 ...S $P(@$$^W4ORD@(HZM,"CB","ASR",I),"*",11)=1 ; -- PECH
 Q
 ;
 ;
ASR(MSAS) ;
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 N HBASR I '$D(P1DZ) D ^W4IN
 D PUT^%W3DEB("W4HZTH-ASR","MSAS=MSAS & FLP=FLP & MAKOR=MAKOR & LKHN=LKHN & HZM=HZM")
 ;
 I FLP,$G(MAKOR0),'$$HBNOW(LKHN)!$D(@$$^W4ORD@(HZM,"HBNOW")) Q
 I FLP,$G(MAKOR0) S HBASR=$$^W4LHBZ(LKHN,HZM) I HBASR D  Q  ; -- HB MIYAD HELKIT
 .N RESPRN S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR,HZM)
 .S @$$^W4ORD@(HZM,"HBNOW")=HBASR
 .S @$$^W4ORD@(HZM,"HBNOW",MSAS)=HBASR
 ;
 N MAS,MSP,OK,HNH
 S %TIM=$ZD($H,"24:60") S MAS(1)=$$^%L1DC($H,1)_"  "_%TIM
 ;
 I MAKOR D
 .N HB2 S HB2=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",MSAS)
 .I HB2 Q  ;,$P($G(@$$^W4GL("P1HB2")@(HB2)),"\")=HZM Q
 .S (MAS(2),MSP)=$O(@$$^W4GL("P1HB2")@(9999999),-1)+1
 .I MSP<1 S MSP=1
 .S $P(@$$^W4ORD,"\",4)=MSP
 .D SETHB2
 ;
 I 'MAKOR S MAS(2)=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",MSAS)
 ;
 ;;S ^AA("W4HZTH","MAKOR")=MAKOR
 I '$$HBNOW(LKHN)!'MAKOR Q:$D(P1TNOPR)
 ;
 I $$^W4TBLKH,$D(@$$^W4ORD@(HZM,"TB"))>9 Q  ; -- WAS LKHN=$$^W4TBLKH
 ;
 I 'MAKOR,$$HBNOW(LKHN),'$$HBNOWBIG^W4PRM D PCHBNOWETEK
 ;
 ;;S ^AA("W4HZTH","HBNOWBIG")=$$HBNOWBIG^W4PRM
 I MAKOR,$$HBNOW(LKHN),'$$HBNOWBIG^W4PRM D  ; PRINT HESB MIYADIT
 .I $$BSL^W4PAYVW("ASR",MSAS) Q
 .N P1TNOPR
 .;;S ^AA("W4HZTH","HBASR")=$G(HBASR)
 .I $G(HBASR) S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR,HZM)
 .
 .I $$TSHL^W4HZMST(HZM)'<0 Q
 .; --- BITUL
 .N PRM S PRM=+$G(@$$^W4ORD@(HZM,"HBNOW",MSAS))_";1;TZ"
 .S RESPCHB=$$PRINTCSR^W4HSBYVW(PRM) ; ---- ?????
 ;
 Q:$D(P1TNOPR)
 ;
 I $$^WVLKH,LKHN=$$^WVLKH,$G(@$$^W4PRM@("VCARD")) Q
 ;
 I $$HBNOW(LKHN) Q
 ;
 ; ---------------------- PRINT TLUSH ASHRAI --------------
 S MAS(3)=LKHN,MAS(4)=$$HBR^%L1FRM($$LKH^W4L(LKHN),16)
 N LKHR S LKHR=$$LKHR^W4L(LKHN)
 N LKHR1 S LKHR1=$$LKHR1^W4L(LKHN)
 I $G(LKHR) D
 .S MAS(20)=LKHR,MAS(21)=$$HBR^%L1FRM(LKHR1,16)
 ;
 I $G(@$$^W4PRM@("ASRITRA")) D
 .I 'MAKOR S MAS(5)="" Q
 .S MAS(5)=$J($$ITRA^W4L(LKHN),2,2)
 ;
 S MAS(6)=+LKAH
 S HNH=LKHNH ;$P(@$$^W4ORD@(HZM),"\",8)
 S MAS(7)=$J(ASR+HNH,2,2)
 I MAS(6)<100,$J(MAS(7),1,1)'=$J(100*ASR/(100-MAS(6)),1,1) S MAS(6)=0
 S MAS(8)=$J(HNH,2,2)
 I '$$ENG S MAS(10)=$S('$G(MAKOR):"wzrd",1:"xewn")
 I $$ENG S MAS(10)=$S('$G(MAKOR):"Copy",1:"Original")
 S MAS(11)=HZM
 S (MAS(12),MAS(35))=$S($L($G(HZMLK)):HZMLK,$L($G(HZMLAK)):HZMLAK,1:"")
 S MAS(13)=$$TOCUSNAME^W4HZMST(HZM)
 S MAS(15)=$J(ASR,2,2)
 I $G(CIBCARD) S MAS(25)=$$^WCKBCARD(CIBCARD)
 I '$G(CIBCARD),$G(CIBUID) S MAS(25)=CIBUID
 I $G(CIBCID) S MAS(30)=CIBCID
 I $$TIP^W4HZMST(HZM) S MAS(98)=$$TIP^W4HZMST(HZM)
 I $G(@$$^W4PRM@("ASR"))=1 S MAS("EHAD")=""
 S MAS("NOPTH")=1
 ;
 I '$G(TMASR) S LAB="ASR",OK=1 D  D:OK>0 ^W4CB,SIGNPC(HZM,"ETHB2",MSAS) D:OK>0 CUT Q  ;-- OK>0 BIMKOM OK - 25/05/25 ;; CUT - 07/08/17
 .I $G(@$$^W4PRM@("ASR"))=-1 S OK=-1 Q
 .I $$IFVC^WV(HZM,MSAS),$$VCNOPC^W4PRM Q
 .I $D(@$$^W4ORD@(HZM,"CB","ASR",1)) D
 ..S TLUSH=$P(^(1),"*",8),KMTL=$P(^(1),"*",9)
 ..I TLUSH,KMTL>0,'$G(@$$^W4PRM@("PCTL")) S OK=0
 ;
 Q  ; ---- 24/07/22
 Q:$L($G(LKHN))=0&($$LKHN1^W4HZMST(HZM)?.P)
 ;
 ;---------------- TM --?
 S TXT=$$MDP("B")_$J(LKHN_" 'qn gewl",GWPC-2\2)_$$MDP("N") D S1
 S TXT=$$MDP("B")_$J($$LKH^W4L(LKHN),GWPC-2\2)_$$MDP("N") D S1
 I $G(MAKOR) D PROGON^W4CUT(PRINT,$$MDP("CUT")) Q
 S TXT="" D S1
 S TXT=$$MDP("B")_$J("_________ : dnizg",GWPC-2\2)_$$MDP("N") D S1
 ;
 D CUT
 Q
 ;
 ;
SETHB2 ;
 L +@$$^W4ORD@(HZM):1
 S @$$^W4ORD@(HZM,"ETHB2")=$G(@$$^W4ORD@(HZM,"ETHB2"))_MSP_","
 S $P(@$$^W4ORD@(HZM,"CB","ASR",MSAS),"*",10)=MSP
 ;
 D
 .N HZM1 S HZM1=HZM
 .I HZM1<0 S HZM1=+$G(@$$^W4ORD@(HZM,"ORDNOM"))
 .S @$$^W4GL("P1HB2")@(MSP)=HZM1_"\"_P1DZ_"\"_$H_"\"_LKHN_"\"_ASR_"\"_$G(@$$^W4GL("P1EZL")@(LKHN))_"\"_$G(TLUSH)_"\"_$G(KMTL)
 .S @$$^W4GL("P1HB2I")@(P1DZ,MSP)=$H
 ;
 N NOW S NOW=$$HBNOW(LKHN)
 ;
 I NOW S HBASR=$$^W4LHBZ(LKHN,HZM) I HBASR D
 .S @$$^W4ORD@(HZM,"HBNOW")=HBASR
 .S @$$^W4ORD@(HZM,"HBNOW",MSAS)=HBASR
 ;
 D PUT^%W3DEB("W4HZTH-ASR","NOW=NOW & HBASR=HBASR")
 L  ;
 Q
 ;
 ;
PCHBNOWETEK ;
 S MAS(2)=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",MSAS)
 ;
 I $D(@$$^W4ORD@(HZM,"HBNOW"))=1 D  Q
 .S HBASR=$G(@$$^W4ORD@(HZM,"HBNOW"))
 .D PCHBCBNOW(HZM,HBASR,MAKOR)
 ;
 I $D(@$$^W4ORD@(HZM,"HBNOW"))>9 D  Q
 .Q:'$G(MSAS)
 .S HBASR=$G(@$$^W4ORD@(HZM,"HBNOW",MSAS))
 .D PCHBCBNOW(HZM,HBASR,MAKOR,MSAS)
 Q
 ;
 ;
HBNOW(LKH) ;
 I $D(HBNOW) Q 1
 I $$GET^%W1PRM("HBNOW") Q 1
 I $$HBNOW^W4L(LKH)>1 Q 1
 I $$HBNOWMONTH^W4PRM Q 0
 I $$HBNOW^W4L(LKH)=1 Q 1
 I $$HBNOWDFL^W4PRM,$$HBNOW^W4L(LKH)="" Q 1
 Q 0
 ;
PCHBCBNOW(HZM,HBASR,MAKOR,IND) ;
 Q:'$G(HBASR)
 I $$TSHL^W4HZMST(HZM)'<0 D  Q
 .S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR,HZM)
 .D ^W4HSBGET(HBASR,"HB")
 .D PUT^%W3DEB("W4HZTH","W4HSB=[W4HSB")
 .N CB S CB=$G(W4HSB("NCB")) Q:'CB
 .N RESCB S RESCB=$$^W4PCCB(CB)
 ;
 S RESPCHB=$$PRINTCSR^W4HSBYVW(HBASR_";"_MAKOR_";TZ")
 D ^W4HSBGET(HBASR,"TZ")
 N CB I '$G(IND) S CB=$G(@$$^W4ORD@(HZM,"CBNOW")) Q:CB'>0
 I $G(IND) S CB=$G(@$$^W4ORD@(HZM,"CBNOW",IND)) Q:CB'>0
 N RESCB S RESCB=$$^W4PCCB(CB)
 Q
 ;
 ;
SIGNPC(HZM,IET,NOM) ;
 Q:$D(P1HZHB3)
 Q:'$G(NOM)
 S @$$^W4ORD@(HZM,IET,NOM,"PC")=$H_"*"_$$^W4MYDVN
 I IET="ETHB2" D SETIND^W4HZMST(HZM,"ASR",NOM,1,"FLP")
 Q
 ;
 ;
LINE ; --
 N (JB,%ARG,%REM,%MBG,ADOM,NP,ST,PRINT,%MDP,TS0,TSS,SM,KAM,SUMT,P1HZHB,P1HZTM,P1HZHB1,P1HZHB2,NOMH,HSBENG,P1HZMM,REF,NMB,HZM,SHNHP,N1,PRTAWS,ARGHSBRKZ,%W1LNG,OKPAR,DOPDL) D ^W4IN
 S LINEPC="S TXT="""" D S11"
 S NP=NP+1
 F I=1:1 Q:'$D(@$$^W4SCR@(HZSCR,"G","NM",I))  D
 .S NM=^(I) S @NM=$P(ST,"\",I)
 ;
 S OKPAR=1
 ;
 I PAR?1":"1N.N S TXT="" D S1 S TXT("R")=1
 ;
 I $L($G(HRP)) S HRP=$$^W4CLRMN(HRP) ; -- BEZ -I-
 ;
 I PAR["%",$E(PAR)="-" D  Q
 .N AHP S AHP=+$E(PAR,2,5)
 .S SHNHP=$G(SHNHP)+$G(SUM)
 .
 .I $TR(HRP," ","")="",+AHP=100,$$NOMHOTHP(N1-1) D  Q
 ..N HRPC S HRPC=$S('$$ENG:" * ziad oeayg lr *",1:"* On The House *")
 ..D PCHR(HRPC,$$WDHR)
 .
 .S TXT("R")=1,ADOM=1
 .;
 .I '$$ENG D
 ..S TXT=$S('NOMH:$J(SUM,7,2)_" ",1:$J("",8))
 ..S TXT=$$MDP("B")_TXT_"="_AHP_"% "_$S(AHP=100&'$$DELIS^W4PRM:"O.T.H",1:"dgpd")_%MDP("N")_$J("",5)
 ..;;I $$NOSUMOTH^W4PRM,+AHP=100 S TXT=" O.T.H zgpd"
 .I $$ENG D
 ..S TXT=$S(AHP=100:" O.T.H Discount",1:"Discount")_" = "_AHP_"% "
 ..S TXT=TXT_$S('NOMH:$J(SUM,7,2)_" ",1:$J("",8))
 ..;;I $$NOSUMOTH^W4PRM,+AHP=100 S TXT=" O.T.H Discount"
 .D S1
 .
 .I $$PCHRHB(HRP) D  Q
 ..S HRP=$$CLRHRHB(HRP) I HRP?.P Q
 ..D PCHRP(HRP,$$WDHR)
 .;
 .S HRP=$$CLRHR(HRP)
 .S HRP=$$SPA^%L1FRM(HRP)
 .I HRP'?.P D PCHRP(HRP,$$WDHR)
 ;
 I PAR,PAR=$$PRMSHEMZ D  Q
 .X LINEPC S TXT=$$MDP("B")_"--- "_$S('$$ENG:$$HBR^%L1FRM(HRP,8),1:$$ENG^%L1FRM(HRP,8))_" ---"_$$MDP("N") D S1
 ;
 I HRP["dqtcd `ll" S HRP=$$RPL^%L1FRM(HRP,"[dqtcd `ll]","")
 I $$PRMSHEMZ,HRP["<" S HRP=$P(HRP,"<")
 ;
 I $G(REF)["VRM1(",'$$^W4OTH(HRP),HRP'["[[",HRP'["]]" S HRP=""
 ;
 I +KAM=0,'SUM G LINEND
 ;
 I $$PAR2KITCH(PAR) S OKPAR=0 G LINEND
 ;
 I $$TODISPATH S TXT="" D S1
 ;
 I $$USROLI(PAR,$G(PAR1),HRP) S TXT("I")=""
 ;
 I KAM["." S KAM=$J(KAM,3,3)
 ;
 I NOMH,'$$ENG S TXT=$J(KAM,4)_"  "_$$PAR(PAR) D S1 D  G LINEH
 .I $L($G(NMPAR2)) S TXT=$J("",4)_NMPAR2_$J("",8) D S1
 ;
 I NOMH,$$ENG S TXT=$$PAR(PAR)_"  "_$J(KAM,4) D S1 D  G LINEH
 .I $L($G(NMPAR2)) S TXT=$J("",8)_NMPAR2_$J("",4) D S1
 ;
 N AHP S AHP=$$AHNHP^W4HZMST(HZM,N1)
 ;;I +AHP=100!(+AHP=-100),$$NOSUMOTH^W4PRM S MH=0
 ;
 I $$MDP("GWPC")=80 D  Q
 .S TXT=$$HBR^%L1FRM(HRP,18)_" "_$J(MH*KAM,8,2)_" "_$J(MH,7,2)_" "_$J(KAM,5)_"  "_$$PAR(PAR) D S1
 ;
 N NMPAR,NMPAR1,NMPAR2
 S NMPAR2="",NMPAR3=""
 S NMPAR1=$$PAR(PAR)
 ;
 I KAM=1!(KAM=-1) D  G LINEH; -- WAS +KAM=1
 .I '$$ENG D
 ..S TXT=$S(MH&'$$NOMHOTHP(N1):$J(MH*KAM,7,2),1:$J(MH,7,2))_" "_NMPAR1 D S1
 ..I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 .
 .I $$ENG D
 ..S TXT=NMPAR1_" "_$S(MH&'$$NOMHOTHP(N1):$J(MH*KAM,7,2),1:$J(MH,7,2)) D S1
 ..I $L(NMPAR2) S TXT=NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=NMPAR3 D S1
 .
 .I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 ;
 I +KAM'=0,KAM'=1,KAM'=-1 D  G LINEH; -- WAS +KAM=-1
 .N KM S KM=$J(KAM,3)
 .I $$TODISPATH S KM=$$MDP("B")_KAM_$$MDP("N") S TXT="" D S1
 .
 .I '$$ENG D
 ..S TXT=$J("",7)_" "_NMPAR1 D S1
 ..I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 .
 .I $$ENG S TXT=NMPAR1 D S1
 .I $L(NMPAR2) S TXT=NMPAR2 D S1
 .I $L(NMPAR3) S TXT=NMPAR3 D S1
 .
 .D  D S1
 ..I '$$ENG D
 ...I MH,'$$NOMHOTHP(N1) S TXT=$J(MH*KAM,7,2)_" = "_$J(MH,5,2)_" X "_KM Q
 ...S TXT=$J("",18)_KM
 ..I $$ENG D
 ...I MH,'$$NOMHOTHP(N1) S TXT=$J("",17)_$J(MH,5,2)_" X "_$J(KM,2)_" = "_$J(MH*KAM,7,2) Q
 ...S TXT=KM
 ;
LINEH ;
 ;;S ^AA("W4HZTH-HBHR")=$$HBHR
 ;;S ^AA("W4HZTH-HRP")=HRP
 ;
 I $$HBHR,$L($$SPA^%L1FRM(HRP)),KAM'<0 D  G LINEND
 .S HRP=$$SPA^%L1FRM(HRP)
 .I HRP'?.P D
 ..D PCHRP(HRP,$$WDHR)
 ;
 N HRPC S HRPC=$$CLRHR(HRP)
 I HRPC'?.P,'$D(P1HZHB),'$D(P1HZHB1)!$$DETAIL!$$^W4OTH(HRP)!$$PCHRHB(HRP),'$D(P1HZHB2) D
 .I $$PCHRHB(HRP),HRP["1+1" Q
 .D PCHRP(HRPC,$$WDHR)
 ;
 I $$PCHRHB(HRP) D
 .S HRP=$$CLRHRHB(HRP)
 .D PCHRP(HRP,$$WDHR)
 ;
 I KAM<0,$$DETAIL S HRP="CANCELED - lhea" D PCHR(HRP,$$WDHR)
 ;
LINEND Q
 ;
 ;
PCHRHB(HRP) ;
 I HRP["[[",HRP["]]" Q 1
 I $$HBHR Q 1
 Q 0
 ;
CLRHRHB(HRP) ;
 S HRP=$$^W4CLRMN(HRP)
 S HRP=$P($P(HRP,"[[",2),"]]")
 Q HRP
 ;
CLRHR(HRP) ;
 S HRP=$$^W4CLRMN(HRP)
 I HRP'["[[" Q HRP
 N BG S BG=$P(HRP,"[[") I $L(BG),$E($L(BG))'=" " S BG=BG_" "
 S HRP=BG_$P(HRP,"]]",2)
 Q HRP
 ;
ERMDP ;
 S ERMDP=1
 Q
 ;
PCDET(HZM) ;
 I $$TODISPATH!$G(PRTAWS) Q 1
 I $$DETTM^W4PRM,$D(P1HZTM) Q 1 
 I $$PRINTDET^W4PRM,$D(P1HZHB)!$D(P1HZHB2) Q 1
 I '$G(@$$^W4PRM@("HSBRKZ")),$D(P1HZHB1) Q 1
 I $G(HZM),$$HZM^W4MSL(HZM),$$NOTM^W4PRM,$$DETTM^W4PRM!$$TMMSL^W4PRM,$D(P1HZHB)!$D(P1HZHB2) Q 1 
 I $$HBHR Q 1
 Q 0
 ;
 ;
PAR(PAR) ;
 S PAR=$G(PAR),PAR1=$$SPA^%L1FRM($G(PAR1))
 I $$SHEM^W4P(PAR)'="",$$CDNM^W4MDBPC S PAR1=$$SHEM^W4P(PAR)
 N SMB S SMB=$$SMB^W4BLNMVC(PAR)
 ;
 I '$$ENG D  G PARH
 .N A S A="" I PAR S A=$$SPA^%L1FRM($P($G(@$$^W4GL("PAR")@(PAR)),"**"))
 .I $$CDNM^W4MDBPC,PAR,PAR1'="" S PAR1=A
 ;
 N SHEML S SHEML=$$SHEML^W4P(PAR)
 I SHEML?.P!'$$ENG S SHEML=PAR1
 S SHEML=$$SPA^%L1FRM(SHEML)
 S PAR=$$PRTCD^W4ORDVW(PAR)
 I SHEML'?.E1U.E,$$^%W1HB S SHEML="<H>"_SHEML 
 ;
 ;;I $$HBHBR^W4PRM S SHEML=$P($G(@$$^W4GL("PAR")@(PAR)),"**"),PAR1=SHEML
 I $$NOMAM^W4P(PAR),SHEML'["**" S SHEML="**"_SHEML
 ;
 N NMPAR1,ST,ST0,DL S DL=31+$G(DOPDL)
 ;
 I '$G(@$$^W4PRM@("NOHZMPAR")) D  Q ST
 .S ST0=SMB_PAR_" "_SHEML
 .D DLG(ST0,DL) ; --> NMPAR1,2,3
 .S ST=$$ENG^%L1FRM(NMPAR1,DL)
 ;
 S ST0=SMB_SHEML D DLG(ST0,DL)
 D DLG(ST0,DL) ; --> NMPAR1,2,3
 Q NMPAR1
 ;
 ;
DLG(ST0,DL) ;
 I '$$ENGST(ST0) D  Q
 .D DLG^%L1FRM(ST0,DL)
 .S NMPAR1=$G(%CHAST(1,1))
 .S NMPAR2=$G(%CHAST(1,2))
 .S NMPAR3=$G(%CHAST(1,3))
 ;
 I $$ENGST(ST0) D  Q
 .D DLGE^%L1FRM(ST0,DL)
 .S NMPAR1=$G(%CHAST(1,1))
 .S NMPAR2=$G(%CHAST(1,2))
 .S NMPAR3=$G(%CHAST(1,3))
 Q
 ;
 ;
PARH ;
 N NMP,ST
 I $G(PAR),$$NOMAM^W4P(PAR),$E(PAR1,$L(PAR1)-1,$L(PAR))'="**"  S PAR1=PAR1_"**"
 ;
 I '$G(@$$^W4PRM@("NOHZMPAR")) D  Q ST
 .I $$BIGNMIT(PAR) D  Q
 ..N DLN S DLN=12
 ..D DLG(PAR1,DLN)
 ..S ST=$$MDP("B")_$$HBR^%L1FRM(%CHAST(1,1),DLN)_$$MDP("N")_" "_$J($G(SUG)_" "_PAR_SMB,7)
 ..N J F J=2:1 Q:'$D(%CHAST(1,J))  D
 ...N C S C=$$SPA^%L1FRM(%CHAST(1,J))
 ...S ST=ST_$C(10)_$$DOPSP_$$MDP("B")_$$HBR^%L1FRM(C,DLN)_$$MDP("N")
 .
 .N DL S DL=24+$G(DOPDL)
 .D DLG(PAR1,DL)
 .S ST=$$HBR^%L1FRM(NMPAR1,DL)_" "_$J($G(SUG)_" "_PAR_SMB,7)
 ;
 ;
 I $$BIGNMIT(PAR) D  Q ST
 .N DLN S DLN=15
 .D DLG^%L1FRM(PAR1,DLN)
 .S ST=$$MDP("B")_$$HBR^%L1FRM(%CHAST(1,1),DLN)_$$MDP("N")
 .N J F J=2:1 Q:'$D(%CHAST(1,J))  D
 ..N C S C=$$SPA^%L1FRM(%CHAST(1,J))
 ..S ST=ST_$C(10)_$$DOPSP_$$MDP("B")_$$HBR^%L1FRM(C,DLN)_$$MDP("N")
 ;
 N DL S DL=31+$G(DOPDL)
 D DLG(PAR1_SMB,DL)
 Q %CHAST(1,1)
 ;
 ;
BIGNMIT(PAR) ;
 I $$BIGNMIT^W4PRM,$D(P1HZTM)!$$TODISPATH Q 1 
 I $G(PAR),$D(@$$^W4GL("W4ITDGSH")@(PAR)),$D(P1HZTM)!$$TODISPATH!$$NOTM^W4PRM Q 1
 Q 0
 ;
DOPSP(STAM) ;
 Q $J("",8)
 ;
 ;
LINE2 ; --
 N (JB,%ARG,%REM,ADOM,NP,PRINT,PRINTF1,ST,HZM,N1,N2,N23,N3,%MDP,TS0,TSS,SM,SUMT,REF,KAM,NOMH,P1HZHB1,P1HZHB2,P1HZTM,HSBENG,LINEPC,NMB,HZM,LINE3,PRTAWS,ARGHSBRKZ,%W1LNG,OKPAR,OKPAR2,DOPDL)
 S DLT2=22 I $D(LINE3) S DLT2=18
 S PAR=$P($G(@REF),"\")
 I '$G(N23) S OKPAR2=0
LINE21 ;;
 S NP=NP+1
 ;
 I $G(PRINT)="" Q
 N OKPCT S OKPCT=1
 ;
 N PAR S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 ;
 I '$$PAR2KTCH^W4PRM G LINE21N
 ;
 N PR31 I $L(REF,",")=4,$P($G(@REF),"\") S PR31=""
 I $G(PAR),'$$DD^W4EZA(PAR),$$TODISPATH,'$G(OKPAR) Q 
 I $G(PAR),$$DD^W4EZA(PAR),$G(N2),'$G(N23),$$PAR2KITCH(N2) Q 
 I $G(PAR),$$DD^W4EZA(PAR),$G(N23),$D(PR31),$$PAR2KITCH(N23) Q 
 ;
 I $D(PR31) S OKPAR2=1
 ;
 I '$D(PR31),$G(N23),'$G(OKPAR2) Q
 ;
LINE21N ;
 N NMT S NMT=$P(ST,"\")
 N QNT S QNT=$P(ST,"\",3)
 ;
 N OKPC S OKPC=1
 ;
 I $G(N1) D
 .N ST0 S ST0=$G(@$$^W4ORD@(HZM,N1))
 .N NMPAR S NMPAR=$P(ST0,"\",3)
 .S SUGPZ=$$SUG^W4PIZZA(NMPAR)
 ;
 I '$$ENG,$G(N2) D
 .I '$$CDNM^W4MDBPC Q
 .S NMT=$P($G(@$$^W4GL("PAR")@(N2)),"**")
 
 I $$MDP("GWPC")=80,$D(P1HZTM) D MDP80 Q
 ;
 N QNPIZZA
 ;
 S KAM2=+QNT
 I QNT["+" D
 .S QNPIZZA=$$QN^W4PIZZA(QNT)
 .S KAM2=+QNT_" ["_QNPIZZA_"]"
 ;
 S MHT=$P(ST,"\",2)
 N NOPC S NOPC=0
 ;
 I 'MHT,$$RKZ(HZM) D
 .I $$RKZ(HZM)=1&'$$PCDET S NOPC=1 Q
 .I '$D(P1HZHB1),'$$PCDET S NOPC=1
 Q:NOPC
 ;
 I '$D(PRINTF1(PRINT)) Q:PAR=""  D
 .D @$S($$DD^W4EZA(PAR):"HEAD4",1:"HEAD3")
 .S PRINTF1(PRINT)=1
 ;
 I $D(PR31) X LINEPC
 ;
 I 'KAM2,KAM S KAM2=KAM
 ;
 N HNT S HNT="" D
 .I MHT[";",$P(MHT,";",2) S HNT=MHT Q
 .I $D(REF),$G(N1)'="",$G(N23)'="",$G(N3)'="" S HNT=$G(@REF@("HNT"))
 ;
 I $$USROLI(N2,NMT,$P(ST,"\",4)) S TXT("I")=""
 I $$ROLI^W4PRM,$$TODISPATH,MHT S TXT("I")=""
 ;
 I +KAM2=1!NOMH,KAM2'["+" D  S SUMT=SUMT+MHT Q  ; ---- KAMUT=1 OR LO LEHAZIG MAHIR
 .;;I HNT,$P(HNT,";",2) S MHT=$P(HNT,";",2); --- 17.05.26 --> COMMENT
 .S TXT=""
 .
 .I '$$ENG D
 ..S TXT=$S(NOMH&(+KAM2'=1):$J(KAM2,7),NOMH:$J("",7),1:$J(MHT,7,2))
 ..I 'MHT,$$PCDET,KAM2'["+" S TXT=$J("",7)
 ..S TXT=TXT_" "
 ..
 ..I '$G(@$$^W4PRM@("NOHZMPAR")) D
 ...S TXT=TXT_$$PAR2(NMT,N2,21) ; --- DLT2
 ...S TXT=TXT_$S(N2?1N.N1"-"1N.N:"",1:" "_$J(N2,4)) D S1
 ..
 ..S:$G(N2)="" N2=0
 ..
 ..I $G(@$$^W4PRM@("NOHZMPAR")) S TXT=TXT_$$PAR2(NMT,N2,26) D S1 ; -- DLT2+5
 ..I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 ..I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 .
 .I $$ENG D
 ..I '$G(@$$^W4PRM@("NOHZMPAR")) D
 ...S TXT=$S(N2?1N.N1"-"1N.N:"",1:$J(N2,4)_" ")
 ...S TXT=TXT_$$PAR2(NMT,N2,DLT2)
 ..
 ..I $G(@$$^W4PRM@("NOHZMPAR")) S TXT=TXT_$$PAR2(NMT,N2,DLT2+5)
 ..
 ..S TXT=TXT_" "_$S(NOMH&(+KAM2'=1):$J(KAM2,7),NOMH:$J("",7),1:$J(MHT,7,2))
 ..D S1
 ..I $L(NMPAR2) S TXT=NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=NMPAR3 D S1
 ..I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 .
 .I HNT,'$$PCDET D PCHNT
 .
 .N HRPT S HRPT=$P(ST,"\",4)
 .I $$PRMSHEMZ,HRPT["<" S $P(ST,"\",4)=$P(HRPT,"<")
 .
 .N HRPTC S HRPTC=$$CLRHR(HRPT)
 .;
 .I $$PCDET,HRPTC'?.P D
 ..I '$$ENG S TXT=$$HBR^%L1FRM(HRPTC,20) D S1
 ..I $$ENG S TXT=$$ENG^%L1FRM(HRPTC,20) D S1
 .
 .I $$PCHRHB(HRPT) D
 ..S HRPT=$$CLRHRHB(HRPT)
 ..I '$L(HRPT) Q
 ..D PCHRP(HRPT,$$WDHR)
 ;
 ;---------- KAM2>1
 S TXT=""
 N HRPT S HRPT=$P(ST,"\",4)
 I 'MHT,+KAM2'=1 S TXT=$S($$ENG:" X "_$J(KAM2,8),1:$J(KAM2,8)_" X ")
 I MHT,+KAM2'=1,KAM2'["+" S TXT=$J("",11)
 I KAM2["+" S TXT=$J(KAM2,11)
 ;
 I '$G(@$$^W4PRM@("NOHZMPAR")) D
 .I '$$ENG D
 ..S TXT=TXT_$$PAR2(NMT,N2,16)_" "_$J(N2,5) D S1
 .I $$ENG S TXT=$J(N2,5)_" "_$$PAR2(NMT,N2,16)_TXT D S1 ;  -- 14
 ;
 I $G(@$$^W4PRM@("NOHZMPAR")) D
 .I '$$ENG S TXT=TXT_$$PAR2(NMT,N2,22) D S1
 .I $$ENG S TXT=$J("",3)_$$PAR2(NMT,N2,22)_TXT D S1 ;  -- 14
 ;
 I '$$ENG D
 .I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 .I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 .I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 ;
 I $$ENG D
 .I $L(NMPAR2) S TXT=NMPAR2 D S1
 .I $L(NMPAR3) S TXT=NMPAR3 D S1
 .I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 ;
 I $G(HNT) S MHT=$P(HNT,";",2)
 I $G(NOMH) S MHT=""
 ;
 I MHT D
 .I '$$ENG S TXT=$J(MHT*KAM2,7,2)_$S(KAM2>1!(KAM2<-1):" = "_$J(MHT,5,2)_" X  "_$J(+KAM2,3),1:"")
 .I $$ENG S TXT=$S(KAM2>1!(KAM2<-1):$J("",17)_$J(+KAM2,3)_" X "_$J(MHT,5,2)_" = ",1:"")_$J(MHT*KAM2,7,2)
 .D S1
 .I HNT,'$$PCDET D PCHNT
 ;
 I $$PRMSHEMZ,ST["<" S $P(ST,"\",4)=$P($P(ST,"\",4),"<")
 ;
 I $$PCDET,$$CLRHR(HRPT)'?.P D
 .S TXT("R")=1,TXT=$$HBR^%L1FRM($$CLRHR(HRPT),20) D S1
 ;
 I $$PCHRHB(HRPT) D
 .S HRPT=$$CLRHRHB(HRPT)
 .I '$L(HRPT) Q
 .D PCHRP(HRPT,$$WDHR)
 ;
 I MHT,'NOMH S SUMT=SUMT+(MHT*KAM2)
 Q
 ;
 ;
MDP80 ;
 I '$D(PRINTF1(PRINT)) Q:PAR=""  D
 .D @$S($$DD^W4EZA(PAR):"HEAD4",1:"HEAD3")
 .S PRINTF1(PRINT)=1
 N HRP,MH,KAM,SUG,PAR1,PAR
 S PAR=N2 D PAR^W4P
 S HRP=$S(N2["A-":QNT,1:$P(ST,"\",4))
 I $G(REF)["VRM1(" S HRP=""
 I $$PRMSHEMZ,HRP["<" S HRP=$P(HRP,"<")
 S MH=$P(ST,"\",2)
 S KAM=+QNT
 S SUG="",PAR1=$P(ST,"\")
 I '$$ENG D
 .S TXT=$$HBR^%L1FRM(HRP,18)_" "_$J(MH*KAM,8,2)
 .S TXT=TXT_" "_$J(MH,7,2)_" "_$J(KAM,5)_"  "_$$PAR(PAR) D S1
 I $$ENG D
 .S TXT=$$PAR(PAR)_"  "_$J(KAM,5)_" "_$J(MH,7,2)_" "
 .S TXT=$J(MH*KAM,8,2)_" "_$$ENG^%L1FRM(HRP,18) D S1
 Q
 ;
 ;
PRMSHEMZ(STAM) ;
 Q $G(@$$^W4PRM@("SHEMZ"))
 ;
LINE22 N (JB,%ARG,%REM,ADOM,NP,PRINT,PRINTF1,ST,HZM,N1,N2,%MDP,TS0,TSS,SM,SUMT,REF,KAM,NOMH,P1HZHB1,P1HZTM,HSBENG,PAR,N23,N3,LINEPC,DLT2,PRTAWS,ARGHSBRKZ,%W1LNG,OKPAR,OKPAR2,DOPDL)
 G LINE21
 ;
 ;
LINE3 ;
 N PR31
 N N23,DLT2,REF,REF2,ST,PAR,MHT,CD,COL0
 S DLT2=16 S N23=N2
 S REF=$$^W4ORD_"(HZM,N1,N23,N3)",ST=$G(@REF)
 S REF2=$$^W4ORD_"(HZM,N1,N23)"
 ;
 S COL0=1
 I $P(ST,"\")'="" S PAR=$P(ST,"\"),COL0=$P(ST,"\",3) D  S PR31="" D LINE22 K PR31 Q
 .N N2
 .I '$P(ST,"\",3) S $P(ST,"\",3)=$P($G(@REF2),"\",3)
 .S ST=$P(ST,"\",2)_"\"_$P(ST,"\",7)_"\"_$P(ST,"\",3)_"\"_$P(ST,"\",6)
 .S N2=PAR
 ;
 S CD=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 S PAR=$P(ST,"\",4)
 S MHT=$P(ST,"\",7)
 ;
 S ST=$P(ST,"\",5)_"\"_MHT_"\"_$P(ST,"\",3)_"\"_$P(ST,"\",6)
 N N2 S N2=PAR
 D LINE22
 Q
 ;
 ;
PCHNT ;
 N TXT
 S TXT=$J(-MHT*HNT*.01,6,2)_" = "_$J(HNT,6,2)_"% dgpd" D S1
 Q
 ;
PAR2(NP,CD,DL) ;
 N SHEML
 I $$ENG S SHEML=$$SPA^%L1FRM($$SHEML^W4P(CD)) D  Q NMPAR1
 .I SHEML="" S SHEML=NP
 .D DLG(SHEML,DL)
 .I $$^%W1HB,SHEML'?.E1U.E S SHEML="<H>"_SHEML
 ;
 I $$LEHEM^W4HZMPC(CD) D
 .S NP=$C(27,45,2)_NP_$C(27,45,0),DL=DL+6
 ;
 D DLG(NP,DL)
 Q NMPAR1
 ;
 ;
LINER(CODP,SHEM,KAM,OFF) ; --
 ;;I $$PAPJ^W4PRM,$D(PRTSF),$P(CODP,"-")=3038,KAM>1 S KAM=KAM\2 ; -- SAKIT LAKOAH
 I $$PAPJ^W4PRM,$P(CODP,"-")=3038,KAM>1 S KAM=KAM\2 ; -- SAKIT LAKOAH
 ;
 I '$$ENG D
 .I $$RKZSUG D  Q
 ..S TXT=$$MDP("B")_$J(KAM,2)_$$MDP("N")_"  "_$$MDP("B")_$$HBR^%L1FRM($G(SHEM),16)_$$MDP("N")
 .
 .I KAM S TXT=$$MDP("B")_$J(KAM,2)_$$MDP("N")_" <----"
 .I 'KAM S TXT=$J("",10)
 .S TXT=TXT_$$HBR^%L1FRM($G(SHEM),OFF)_" "
 .S TXT=TXT_$S('$G(@$$^W4PRM@("NOHZMPAR")):$J($P(CODP,"-"),5),1:"")
 ;
 I $$ENG D
 .S TXT=$S('$G(@$$^W4PRM@("NOHZMPAR")):$J($P(CODP,"-"),5),1:"")
 .S TXT=TXT_$$ENG^%L1FRM($G(SHEM),OFF)_" "
 .I KAM S TXT=TXT_" ----> "_$$MDP("B")_$J(KAM,2)_$$MDP("N")
 .I 'KAM S TXT=TXT_$J("",10)
 D S1
 Q
 ;
TXT(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"<I>",$$MDP("I"))
 S TXT=$$RPL^%L1FRM(TXT,"<IE>",$$MDP("IE"))
 S TXT=$$RPL^%L1FRM(TXT,"<B>",$$MDP("B"))
 S TXT=$$RPL^%L1FRM(TXT,"<BB>",$$MDP("BB"))
 S TXT=$$RPL^%L1FRM(TXT,"<N>",$$MDP("N"))
 S TXT=$$RPL^%L1FRM(TXT,"<U>",$$MDP("U"))
 S TXT=$$RPL^%L1FRM(TXT,"<UE>",$$MDP("UE"))
 Q TXT
 ;
TXT1(TXT) ;
 N TXT1 S TXT1=TXT
 S TXT1=$$RPL^%L1FRM(TXT1,"<I>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<IE>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<B>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<BB>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<N>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<U>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<UE>","")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("B"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("BB"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("N"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("U"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("UE"),"")
 Q TXT1
 ;
S1 ;
 Q:$G(PRINT)<3
 Q:$D(P1TNOPR)
 ;
 N TXT1 S TXT1=$$TXT1(TXT)
 S TXT=$$TXT(TXT)
 ;
 ;;W "S1.TXT="_TXT,!
 ;
S11 Q:$G(PRINT)<3
 Q:$D(P1TNOPR)
 S SM=+$G(SM)
 N PCN,ST S PCN=$O(@$$^W4PC@(PRINT,999999),-1)+1
 ;
 I TXT'["<H>",'$D(TS0)!'$D(TSS) D ^%L1TS
 ;
 I TXT["<H>" N TSS,TS1 D TSS^%L1TS S TXT=$$RPL^%L1FRM(TXT,"<H>","")
 ;
 S ST=$$MDP("N")_$J("",SM)_$TR(TXT,TS0,TSS)
 ;
 I TS0'=TSS D
 .S ST=$$RPL^%L1FRM(ST,$TR($$MDP("B"),TS0,TSS),$$MDP("B"))
 .S ST=$$RPL^%L1FRM(ST,$TR($$MDP("BB"),TS0,TSS),$$MDP("BB"))
 ;
 I TS0'=TSS S ST=$$RPL^%L1FRM(ST,$TR($$MDP("N"),TS0,TSS),$$MDP("N"))
 ;
 I $D(TXT("I")) D
 .S ST=$$MDP("I")_ST_$$MDP("IE")
 ;
S12 Q:$G(PRINT)<3  I PRINT=54,$$^%L1T2P(ST) G ES11
 Q:$D(P1TNOPR)
 I '$D(PCN) S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ;
 ;;W "N="_$G(N)_"  PCN="_$G(PCN)_"  ST="_$G(ST),!
 S @$$^W4PC@(PRINT,PCN)=ST
ES11 K TXT L -@$$^W4PC@(PRINT) Q
 ;
 ;
S1VT ;
 I $$BIGVT S TXT=$$MDP("BB")_TXT_$$MDP("N")
 D S1
 Q
 ;
S1P ;
 I $$BIGVT D
 .N MDPI,MDPIE S (MDPI,MDPIE)=""
 .I $$HZM^W4MSL(HZM) S MDPI=$$MDP("I"),MDPIE=$$MDP("IE") 
 .N VL S VL=$$SPA^%L1FRM(TXT) D
 ..I VL?.E1N.N.1"."1N.E S VL=$J(VL,14) S TXT=MDPI_$$MDP("BB")_VL_$$MDP("N")_MDPIE Q
 ..S TXT=$J("",14)_MDPI_$$MDP("BB")_" "_VL_" "_$$MDP("N")_MDPIE
 D S1
 Q
 ;
ST ;
 N N,ST,SOF,SK,OK S N="",SK=0 S:'$D(SM) SM=0
 ; --- DO 1 ? - SLUJ INF
 F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  Q:N'<1  S ST=$G(^(N)) D
 .L +@$$^W4PC@(PRINT):1
 .D S12
 ;
 S N=.9 F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  D
 .S ST=$G(^(N)),OK=1
 .I $L($$MDP("CUT")),ST[$$MDP("CUT") H:$D(W4DELAY) 1 D S12 H:$D(W4DELAY) .5 Q
 .;
 .I $TR(ST," <BN>","")="",$D(@$$^W4MAIN("TMPS111")@(N,"MAS")) Q
 .S TXT=$J("",SM)_$$SPR^%L1FRM(ST)
 .S SOF=$E(TXT,$L(TXT)-1,$L(TXT))
 .I SOF["_"!(SOF["@") D
 ..S TXT=$E(TXT,1,$L(TXT)-2)
 ..I SOF["@" S SK=SK+1 I '$D(USK(SK)) S OK=0
 .I OK D S1
 Q
 ;
CUT ;
 I $D(NOCUT) K NOCUT Q
 I $D(P1TNOPR) Q
 I '$D(%MDP("CUT")) D MDPPC
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
ODEF(ODF) ;
 I '$$ENG S TXT=$C(10)_$$MDP("B")_$J(ODF,7,2)_" : scer"_$$MDP("N"),TXT("R")="" D S1
 I $$ENG S TXT=$$MDP("B")_"Change : "_$J(ODF,7,2)_$$MDP("N"),TXT("R")="" D S1
 Q
ODEFTL(ODF) ;
 I '$$ENG S TXT=$$MDP("B")_$J(ODF,7,2)_" : yelza scer"_$$MDP("N"),TXT("R")="" D S1
 I $$ENG S TXT=$$MDP("B")_"Change by coupon : "_$J(ODF,7,2)_$$MDP("N"),TXT("R")="" D S1
 Q
 ;
TIP(ODF) ;
 I '$$ENG S TXT=$$MDP("B")_$J(ODF,7,2)_" : "_$$TIPPS_$$MDP("N") D S1
 I $$ENG S TXT=$$MDP("B")_"Tip     : "_$J(ODF,7,2)_$$MDP("N") D S1
 Q
 ;
TIPPS(STAM)
 I $G(@$$^W4PRM@("TIPPSHB")) Q $G(@$$^W4PRM@("TIPPS"))
 I '$$ENG Q "tih"
 Q "Tip"
 ;
EQ(MC1,MC2) ;
 N N,OK S OK=1
 S N="" F  S N=$O(@MC1@(N)) Q:N=""  I '$D(@MC2@(N)) S OK=0 Q
 I 'OK Q OK
 S N="" F  S N=$O(@MC2@(N)) Q:N=""  I '$D(@MC1@(N)) S OK=0 Q
 Q OK
 ;
INDTSF(MC,IND) ;
 N N,IND1 S IND1=$G(IND)
 S N="" F  S N=$O(@MC@(N)) Q:N=""  S IND1=$G(IND1)_"+"_N
 Q IND1
 ;
HSBRKZ(GLB) ; --- GLB -> ^VRM1($J)
 D ^W4HSBRKZ(GLB,"")
 Q
 ;
 ;
SLH ;
 Q:$G(P1HZTM)="S"  ; --- SEFAH
 Q:$D(P1TNOPR)
 S (TLUSH,KMTL)=0
 ;
 I $D(@$$^W4ORD@(HZM,"CB","ASR",1)) D
 .S TLUSH=$P(^(1),"*",8),KMTL=$P(^(1),"*",9)
 ;
 I $$TLUSH^W4L(NMB),'TLUSH S TLUSH=$$TLUSH^W4L(NMB)
 ;
 N AS S AS=$G(SHULA) I 'AS S AS=TSHL
 I 'KMTL,TLUSH S KMTL=AS\TLUSH+(AS#TLUSH>(TLUSH/3))
 I KMTL,TLUSH D
 .I '$$ENG S TXT=" g""y "_$J(TLUSH,2,2)_" ieeya miyelz "_KMTL_" ribn gilyl" D S1
 .I $$ENG S TXT="To courier do owe "_KMTL_" coupons in amount "_$J(TLUSH,2,2)_" NIS" D S1
 ;
 N PSL S PSL=$P($G(@$$^W4ORD@(HZM,"TM")),"\") ;;Q:'PSL
 I PSL S TXT=$J($G(@$$^W4GL("P1SL")@(PSL))_" gily",36) D S1
 
 I $D(@$$^W4ORD@(HZM,"ETTM")) D
 .S TXT="" D S1
 .I '$$ENG S TXT=$J("",15)_" _________ dnizg" D S1
 .I $$ENG S TXT="Sign _________" D S1
 .S TXT="" D S1
 Q
 ;
PCHRP(HR,DLT2H) ;
 N SMALL S SMALL=0 I $G(@$$^W4PRM@("NOBIGHRA")) S SMALL=1
 I $TR(HRP," ","")="" D  Q
 .I $G(REF)'="" D 
 ..N ST S ST=$G(@REF) ;;S ^AA("W4HZTH","REF")=REF_"~"_$G(@REF)
 ..I $P(ST,"\",14)["MVC" S TXT="" D S1
 ;
 D PCHR(HRP,$$WDHR,SMALL) S TXT="" D S1
 Q
 ;
 ;
PCHR(HR,DLT2H,SMALL) ;
 S HR=$G(HR)
 S HR=$$^W4CLRMN(HR)
 N %CHAST
 S HR=$$SPA^%L1FRM(HR)
 S HR=$$RPL^%L1FRM(HR,"[ ","-")
 S HR=$$RPL^%L1FRM(HR," ]","-")
 I $G(SMALL) S DLT2H=DLT2H*2
 D DLG^%L1FRM(HR,DLT2H)
 ;
 N N,TXT S N="" F  S N=$O(%CHAST(1,N)) Q:N=""  D
 .I '$G(SMALL) S TXT=$$MDP("B")_%CHAST(1,N)_$$MDP("N") D S11 Q
 .S TXT=%CHAST(1,N) D S11 Q
 Q
 ;
 ;
WDHR(STAM) ;
 Q 16 ; 19
 ;
DETAIL(DUMP) ;
 I $$TODISPATH Q 1
 I $G(P1HZHB1)="B" Q 1
 I $G(P1HZHB1)="H" Q 1
 I $G(P1HZTM)="S"&($G(@$$^W4PRM@("TAWS"))<3) Q 1
 I $G(@$$^W4PRM@("DETAIL")) Q 1
 Q 0
 ;
GET(HZSCR,GLBV)
 D GA^W4SCREF(HZSCR,GLBV)
 Q
 ;
HEADNHZ(STAM)
 Q $D(@$$^W4MAIN("THZ")@("HEADN"))#2
 ;
SETHEADN ;
 S @$$^W4MAIN("THZ")@("HEADN")="" ;---------------- SHEELON
 Q
 ;
PCST(ST) ;
 S %L1STPC("RIGHT")="",%L1STPC("NOSHP")=""
 D ^%L1STPC(ST,$$^W4PC_"(PRINT)","%MDP")
 Q
 ;
KHZ Q:'$G(NMB)  Q:$$^W4MSD(NMB)
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("P1HL")@(NMB,N)) Q:N=""   I N'>HZM!(HZM=$$NEW^W4KLNEW) S I=I+1
 S KHZ=I+$G(@$$^W4GL("P1CHZM")@(NMB))
 Q
 ;
WEBSRV(STAM) ;
 I $$^W4SRVWIN(JB)=2 Q 1
 Q 0
 ;
RIKUZQ ;-- RIKUZ LEFI KAMUT
 D ^W4HSBRKZ($$^W4ORD_"("_HZM_")","Q")
 ;
 N N1,N2,N3,A,A2,A3,CD,CD2,CD3,FIRST
 ;
 I $D(@$$^W4MAIN("VRM0")@("P"))<10 Q
 ;
 D
 .I '$$ENG S TXT=$$MDP("B")_" ** "_$S($$PAPJ^W4PRM:"   fekix   ",1:"mihixt fekix")_" **" D S1
 .I $$ENG S TXT=$$MDP("B")_"** Items Concentration **" D S1
 ;
 I $$PAPJ^W4PRM D SORTRKZSUG
 ;
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM0")@("P",N1)) Q:N1=""  S A=$G(^(N1)),CD=$P(N1,"^") D
 .N DL S DL=23+$G(DOPDL)
 .I A S TXT="" D S1 D LINER(CD,$G(@$$^W4MAIN("VRM0")@("N",N1)),+A,DL) D
 ..S N2="",FIRST=1
 ..F  S N2=$O(@$$^W4MAIN("VRM0")@("P",N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),CD2=$P(N2,"^")
 ...I '$$USVIB($P(CD2,"-")) Q
 ...N PRTSF S PRTSF=""
 ...N DL S DL=19+$G(DOPDL)
 ...D LINER(CD2,$G(@$$^W4MAIN("VRM0")@("N",N1,N2)),$S($G(@$$^W4PRM@("TSFNEW")):"",1:+A2),DL)
 ;
 S SM=0 S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 S TXT="" D S1
 S TXT="" D S1
 K @$$^W4MAIN("VRM0"),@$$^W4MAIN("VRM1") 
 Q
 ;
 ;
RIKUZQ1(HZM) ;-- RIKUZ LEFI KAMUT
 N N1,N2,N3,A,A2,A3,CD,CD2,CD3,CDT,FIRST,QN,QNT
 ;
 N VRM0 S VRM0=$$^W4MAIN("VRM0") K @VRM0
 N CD
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N1)) Q:N1=""  I N1 D
 .S CD=$P($G(^(N1)),"\"),QN=$P($G(^(N1)),"\",5) Q:CD=""
 .D SETRKZ(CD,QN)
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  I N2 D
 ..I $D(^(N2))<10 D  Q
 ...S CDT=N2,QNT=$P($G(^(N2)),"\",3) Q:CDT=""
 ...D SETRKZ(CDT,QNT)
 ..
 ..S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  I N3 D
 ...N A S A=$G(^(N3))
 ...S CDT=$P(A,"\")
 ...I CDT D  Q
 ....S QNT=$P(A,"\",3)
 ....D SETRKZ(CDT,QNT)
 ...
 ...S CDT=$P(A,"\",4) Q:'CDT
 ...S QNT=$P(A,"\",3)
 ...D SETRKZ(CDT,QNT)
 ;
 I $D(@VRM0@("P"))<10 Q
 ;
 I $$PAPJ^W4PRM D SORTRKZSUG
 ;
 D
 .I $$RKZSUG D  Q; -- HALLO TEIMAN 
 ..S TXT=$$MDP("B")_$J(HZM,7)_" : dpnfd 'qn"_$$MDP("N") D S1
 ..D KAV
 .
 .I '$$ENG S TXT=$$MDP("B")_"** "_$S($$PAPJ^W4PRM:"   fekix   ",1:"mihixt fekix")_" **" D S1
 .I $$ENG S TXT=$$MDP("B")_"** Items Concentration **" D S1
 ;
 N IND
 S IND="" F  S IND=$O(@VRM0@("P",IND)) Q:IND=""  D
 .S QN=$G(^(IND)) Q:'QN
 .S CD=IND I IND["^" S CD=$$SPA^%L1FRM($P(CD,"^",2))
 .S TXT="" D S1 D LINER(CD,$$SHEM^W4P(CD),QN,22)
 ;
 S SM=0 S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 D
 .S TXT="" D S1
 .S TXT="" D S1
 ; 
 I $$RKZSUG D
 .D KAV
 .N TIME S TIME=$$DATCB^W4HZMST(HZM)
 .S TXT=$$MDP("B")_"    "_TIME_$$MDP("N") D S1
 .D CUT
 ;;K @$$^W4MAIN("VRM0")
 Q
 ;
 ;
HLTM()
 Q $$TAIMAN^W4PRM
 ;
PCHSBRKZ ;
 N P1HZTH,N1,N2,N3,REF,P1H,P1H1,ADOM
 S P1HZTH="" D HSBRKZ($$^W4ORD_"("_HZM_")")
 N HSBRKZ S HSBRKZ=$$RKZ(HZM)
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM1")@(N1)) Q:N1=""  D
 .K ADOM S SUMT=0,ERMDP=0,(ST,STHZ)=$G(^(N1))
 .S REF=$$BG^W4MAIN("VRM1")_"N1)" D LINE I 'ERMDP D
 ..S N2="" K PRINTF1
 ..;
 ..F P1H=1:1 S N2=$O(@$$^W4MAIN("VRM1")@(N1,N2)) Q:N2=""  S ST=$G(^(N2)) D
 ...S REF1=$$BG^W4MAIN("VRM1")_"N1,N2)" D:$D(@REF1)<10!HSBRKZ LINE2 ; -- WAS !HSBRKZ
 ...Q:HSBRKZ
 ...S N3="" F P1H1=1:1 S N3=$O(@$$^W4MAIN("VRM1")@(N1,N2,N3)) Q:N3=""  D
 ....S ST=$G(^(N3)) D LINE3
 ..
 ..I $D(PRINTF1) D
 ...I $$DD^W4EZA(+$P(STHZ,"\")) D  Q
 ....S TXT=$TR($J("",$$WDKAV-2)," ","-") D S1
 ...I '$G(@$$^W4PRM@("NOKOTTSF")) D
 ....S TXT=$TR($J("",$$MDP("GWPC")-7)," ","-") D S1
 ..
 ..I P1H>1 S TXT="" D S1
 ;
 K @$$^W4MAIN("VRM0"),@$$^W4MAIN("VRM1")
 Q
 ;
 ;
PCTLBIT ;
 N DLT,DLT2,DLT2H,ERMDP,LINEPC,ST,N1,N2,N3,TXT,PAR,OUT,MANA
 S DLT=23,DLT2=19,DLT2H=18,OUT=0
 S SUMB=0,SUMT=0,ERMDP=0
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"BIT",N1)) Q:N1=""  D
 .Q:$D(@$$^W4ORD@(HZM,"BIT",N1,"PC"))
 .S ST=$G(@$$^W4ORD@(HZM,N1)),REF=$$^W4ORD_"(HZM,N1)",PAR=$P(ST,"\")
 .N HR S HR=$P(ST,"\",8) I HR["ïçìåùì øáò" Q
 .I $P(ST,"\",2)[">" S OUT=1
 .S SUMB=SUMB+$P(ST,"\",7)
 .S LINEPC="S TXT="""" D S2" D LINE
 .S LINEPC="S TXT="""" D S11"
 .S @$$^W4ORD@(HZM,"BIT",N1,"PC")=""
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ..S ST=$G(@$$^W4ORD@(HZM,N1,N2)) D:$D(^(N2))<10 LINE2 D
 ...S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....S ST=$G(@$$^W4ORD@(HZM,N1,N2,N3)) D LINE3
 .I '$$ENG S TXT=$J(": lehia zaiq ---",GWPC-4) D S11
 .I $$ENG S TXT="Cancellation reason ---" D S11
 .S TXT=$J("<B>"_$$SIBA1^W4HZMST(HZM,N1),GWPC-4/2)_"<N>" D S1
 .N EX S EX=$$EX2KITCH^W4HZMST(HZM,N1)
 .I '$$ENG S TXT=$J("<B>"_$S(EX:"ok",1:"`l")_"<N>: gahndn `vi m`d ---",GWPC-6) D S1
 .I $$ENG S TXT="Out from kitchen : <B>"_$S(EX:"Yes",1:"No")_"<N>" D S1
 ;
 I '$$ENG D
 .S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 .S TXT=$$MDP("B")_$J(-SUMB,7,2)_$$MDP("N")_" : mekqa lhea k""dq" D S11
 .S TXT="" D S11
 .S TXT=$C(10,10)_"        ________ dnizg " D S11
 .I OUT S TXT="  * gahndn `vi hixty onqn '>' oniq * " D S11
 ;
 I $$ENG D
 .S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 .S TXT=$$MDP("B")_"Total of cancellations : "_$J(-SUMB,7,2)_$$MDP("N") D S11
 .S TXT="" D S11
 .S TXT=$C(10,10)_"Sign  ________ " D S11
 .;
 .I OUT S TXT="  * Symbol ">" show that dish out from kitchen * " D S11
 ;
 D CUT
 Q
 ;
 ;
PCTLHNH ;
 N DLT,DLT2,DLT2H,ERMDP,LINEPC,ST,N1,N2,N3,TXT,PAR,SUMH,TXT,HNP,AHP
 S DLT=23,DLT2=19,DLT2H=18,OUT=0
 S SUMH=0,ERMDP=0
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"HNH",N1)) Q:N1=""  D
 .Q:$D(@$$^W4ORD@(HZM,"HNH",N1,"PC"))
 .S ST=$G(@$$^W4ORD@(HZM,N1)),REF=$$^W4ORD_"(HZM,N1)",PAR=$P(ST,"\")
 .S STH=$G(@$$^W4ORD@(HZM,N1+1)),REFH=$$^W4ORD_"(HZM,N1+1)"
 .S HNP=$P(STH,"\",7)
 .S AHP=$P(STH,"\",1)
 .I $$HNHSHAA^W4DPHNH(STH) Q
 .S SUMH=SUMH+$P(STH,"\",7)
 .D LINE
 .I '$$ENG S TXT=$$MDP("B")_$J(HNP,7,2)_" = "_AHP_" dgpd" D S1
 .I $$ENG S TXT=$$MDP("B")_"Discount "_AHP_" = "_$J(HNP,7,2) D S1
 .S LINEPC="S TXT="""" D S11"
 .S @$$^W4ORD@(HZM,"HNH",N1,"PC")=""
 ;
 I '$G(GWPC) S GWPC=40
 S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 I '$$ENG S TXT=$$MDP("B")_$J(SUMH,7,2)_$$MDP("N")_" : mekqa zepnl zegpd k""dq" D S11
 I $$ENG S TXT="Total of dish discounts "_$$MDP("B")_$J(SUMH,7,2)_$$MDP("N") D S11
 S TXT="" D S11
 ;
 N HNHA S HNHA=$$HNHA^W4HZMST(HZM) I HNHA D
 .N HNHAH S HNHAH=$$HNHAH^W4HZMST(HZM)
 .I '$$ENG S TXT=$J(-HNHA,7,2)_$S(HNHAH:" = "_$J(HNHAH,5,2)_"%",1:"")_" :   %-a dgpd " D S11
 .I $$ENG S TXT="Discount in %  :"_$S(HNHAH:$J(HNHAH,5,2)_"%",1:"")_$J(-HNHA,7,2) D S11
 .S TXT="" D S11
 ;
 N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 I HNH1 D
 .I '$$ENG S TXT=$J(-HNH1,7,2)_$J("",5)_" :  g""ya zegpd" D S1
 .I $$ENG S TXT="Discount   :  "_$J(-HNH1,7,2)
 ;
 S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 I '$$ENG S TXT=$J(SUMH-HNHA-HNH1,7,2)_"     : ldpn zegpd k""dq" D S11
 I $$ENG S TXT="Total of discounts : "_$J(SUMH-HNHA-HNH1,7,2) D S11
 ;
 S TXT="" D S11
 I '$$ENG S TXT=$C(10,10)_"   ___________ dnizg" D S11
  I $$ENG S TXT=$C(10,10)_"    __________ oetlh" D S11
 ;
 D CUT
 Q
 ;
 ;
PCCARD ;
 N P1HZTH
 S P1HZTH="" D HSBRKZ($$^W4ORD_"(HZM)") K P1HZTH
 N N1,KAM,II,TXT,DAT
 S DAT=$$^%L1DC(P1DZ,1)
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM1")@(N1)) Q:N1=""  K ADOM S ST=$G(^(N1)) D
 .N PRT S PRT=$P(ST,"\") Q:'PRT  I '$G(@$$^W4PRM@("CARD",PRT)) Q
 .S KAM=$P(ST,"\",5) Q:KAM'>0
 .F II=1:1:KAM D  D CUT
 ..S TXT=$$MDP("B")_" "_$TR($J("",19)," ","*")_$$MDP("N") D S1 S TXT="" D S1
 ..I '$$ENG D
 ...S TXT=$$MDP("B")_"   '"_$$^%L1DC(P1DZ,9)_" mei "_DAT D S1 S TXT="" D S1
 ...S TXT=$$MDP("B")_" "_$$CENTRB^%L1FRM($$SPA^%L1FRM($P(ST,"\",3)),40)_$$MDP("N") D S1
 ..I $$ENG D
 ...S TXT=$$MDP("B")_"Date   "_DAT D S1 S TXT="" D S1
 ...S TXT=$$MDP("B")_" "_$$CENTRB^%L1FRM($$SPA^%L1FRM($P(ST,"\",3)),40)_$$MDP("N") D S1
 ..S TXT="" D S1
 ..S TXT=$$MDP("B")_" "_$TR($J("",19)," ","*")_$$MDP("N") D S1
 Q
 ;
 ;
PCMAM ;
 N TOMAM,LMAM,MAM
 N DTK S DTK=$$DTK(HZM)
 I $$NCAB^W4HZMST(HZM) S TOMAM=$S(SHUL>TSHL:TSHL+$S($$^W4TIPPD(DTK)&'$$^W4TIPCBU(DTK):$G(TIP),1:""),1:SHUL)
 I '$$NCAB^W4HZMST(HZM) S TOMAM=TSHL
 N AHMAM S AHMAM=$$MAMD^W4L(DTK)
 S MAM=$J((TOMAM*AHMAM)/(100+AHMAM),2,2)
 S LMAM=TOMAM-MAM
 ;
 I $$NOMAM^W4PRM D
 .N SUMCMAM,SUMNOMAM
 .N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 .;
 .D SMAM^W4DMAM(DT,HZM)
 .N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM"))
 .I KMAM<1 D
 ..S NOMAM=TOMAM-(TOMAM*KMAM)
 ..S MAM=MAM*KMAM
 ..S LMAM=TOMAM*KMAM-MAM
 ..I '$$ENG S TXT=$J(NOMAM,14,2)_"  : n""rn `ll" D S1
 ..I $$ENG S TXT="Before VAT : "_$J(NOMAM,14,2) D S1
 ;
 I $$NOMAM^W4L(NMB) S MAM=0
 ;
 I SHUL D
 .I '$G(@$$^W4PRM@("NOPCMAM")) D
 ..I '$$ENG D
 ...S TXT=$J(LMAM,14,2)_"  : n""rn iptl" D S1
 ...S TXT=$J(MAM,14,2)_"  : "_AHMAM_"% n""rn " D S1
 ..I $$ENG D
 ...S TXT="Before VAT : "_$J(LMAM,14,2) D S1
 ...S TXT="VAT "_$$MAMD^W4L($$DTK(HZM))_"%    : "_$J(MAM,14,2) D S1
 ;
 Q
 ;
DTK(HZM) ;
 Q $$^%L1DC($$DATK^W4HZMST(HZM),3)
 ;
INTERNET(HZM) ;
 I $E($$HZMLAK^W4HZMST(HZM))="W" Q 1
 Q 0
 ;
TODISPATH(STAM) ;
 I $G(P1HZHB1)="M" Q 1
 Q 0
 ;
MAZMIN(HZM) ;
 N MZMNM
 S MZMNM=$G(@$$^W4ORD@(HZM,"MZMNM"))
 I MZMNM?.P S MZMNM=$$MAZMIN^W4HZMST(HZM)
 I MZMNM?.P,$$HZM^W4MSL(HZM) S MZMNM=$$MAZMIN^W4HZMST(HZM)
 I MZMNM?.P,$$HZM^W4MSL(HZM) S MZMNM=$$NAME^W4HZMST(HZM)
 Q MZMNM
 ;
NOMHOTH(STAM) ;
 Q $G(@$$^W4PRM@("NOMHOTH"))
 ;
NOMHOTHP(IND) ;
 I '$$NOMHOTH Q 0
 N ST S ST=$G(@$$^W4ORD@(HZM,IND+1))
 N AHP S AHP=$P(ST,"\")
 I AHP'="-100%" Q 0
 Q 1
 ;
HZM(HZM) ;
 I $G(HZM)<0 D
 .S HZM=+$G(@$$^W4ORD@(HZM,"NOMORD"))
 Q HZM
 ;
RKZ(HZM) 
 I $G(HZM),$$HZM^W4MSL(HZM),$D(P1HZHB)!$D(P1HZHB2),$$TMMSL^W4PRM Q 0
 I $G(ARGHSBRKZ)?1N Q ARGHSBRKZ
 Q $G(@$$^W4PRM@("HSBRKZ"))
 ;
ENG(STAM) ; 
 I $D(HSBENG) Q 1
 I $D(NOPCLOAZ) Q 0
 ;;I $$^W6,$G(@$$^W4PRM@("HBHBR")) S NOPCLOAZ="" Q 0  ; -- 20/10/24
 I $G(@$$^W4PRM@("HBHBR")) S NOPCLOAZ="" Q 0  ; -- 20/10/24
 I $$^%W1LNG="E" Q 1 
 Q 0 
 ;
MDPPC ; 
 D MDPPC^W4HZTM 
 Q 
 ;
PC(TXT) ; 
 N ST1,ST2
 S ST1=$P(TXT,":",1,$L(TXT,":")-1),ST2=$P(TXT,":",$L(TXT,":"))
 I ST2["=" S ST2=$P(ST2,"=")
 Q $$PC1(ST1,25)_" : "_$$PC1($$HBR^%L1FRM(ST2,11))
 ;
PC1(ST,LN) ;
 I '$G(LN) S LN=$L(ST)
 I $E(ST)?1U S ST=$$FUNC^%UCASE(ST)
 S ST=$TR(ST,TS0,TSS) 
 S ST=$J(ST,LN)
 Q ST
 ;
PCCAEMV(HZM,IND)
 I '$$PCCA1^W4PRM!($$PCCA1^W4PRM=2) D
 .D ^%L1TS
 .N N,A,ST S N="" F  S N=$O(@$$^W4ORD@(HZM,"EMV",IND,1,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S TXT=$$PC(A)
 ..D S11
 .D CUT
 ;
 I '$$PCCA1^W4PRM!($$PCCA1^W4PRM=1) D
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,"EMV",IND,2,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S TXT=$$PC(A)
 ..D S11
 .S TXT=$C(10,10)_"___________ 'lh" D S11
 .S TXT=$C(10,10)_"___________ dnizg" D S11
 .D CUT
 Q
 ;
ENGNAME(TX,LN) ; 
 S TX=$$ENG^%L1FRM(TX,LN)
 I TX["-" D
 .N TX1 S TX1=$$SPA^%L1FRM($P(TX,"-",1))
 .I $E(TX1)?1U S TX=TX1
 Q TX
 ;
HBNAME(TX,LN) ;
 S TX=$$HBR^%L1FRM(TX,LN)
 I TX["-" D
 .N TX1 S TX1=$$SPA^%L1FRM($P(TX,"-",1))
 .I $E(TX1)?1U S TX=$P(TX,"-",2,20)
 Q TX
 ;
BIGVT(STAM) ; 
 Q $G(@$$^W4PRM@("BIGVT"))
 ;
ROLI(STAM) ; 
 ;I $G(@$$^W4PRM@("ASH","MASOF"))=5070647015 Q 1
 I $G(@$$^W4PRM@("ROLI"))=1 Q 1
 Q 0 
 ; 
USROLI(CD,NM,HR) ;
 I '$G(@$$^W4PRM@("ROLI")) Q 0
 I '$$TODISPATH Q 0
 N PR S PR=0
 N CAD S CAD="cva"
 I NM[CAD!($G(HR)[CAD) S PR=1  
 N SUG1 S SUG1=$$SUG1^W4P(CD)
 I SUG1["dizy"!(SUG1["diizy") S PR=1
 I SUG1["gepiw" S PR=1
 ;;I SUG1[CAD S PR=1
 I NM["gepiw" S PR=1
 I NM["min" S PR=1
 I NM["dizy" S PR=1
 I NM["dcpenil" S PR=1
 Q PR  
 ;
KAV ; 
 N SM,TXT S SM=0 S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 Q
KAV2 ; 
 N SM,TXT S SM=0 S TXT=$TR($J("",$$WDKAV)," ","=") D S1
 Q
KAVB ; 
 N SM,TXT S SM=0 S TXT=$$MDP("B")_$TR($J("",$$MDP("GWPC")\2)," ","-")_$$MDP("N") D S1
 Q
KAV2B ; 
 N SM,TXT S SM=0 S TXT=$$MDP("B")_$TR($J("",$$MDP("GWPC")\2)," ","=")_$$MDP("N") D S1
 Q
 ;
NOSHULAM(HZM) ; 
 N HZML S HZML=$$HZMLAK^W4HZMST(HZM)
 I $E(HZML)="W",$$CODTS^W4HZMST(HZM)=3,$$ITRA^W4HZMST(HZM)>.5,'$P($G(@$$^W4ORD@(HZM,"CB")),"\",4) D
 .N TXT D KAV 
 .S TXT=$$MDP("BB")_"! dnley  `l  dpnfd"_$$MDP("N") D S1
 .S TXT="" D S1
 .S TXT=$$MDP("BB")_"! xeyi` lawl dpkdl"_$$MDP("N") D S1
 .D KAV
 Q 
 ;
WDKAV(STAM) ; 
 Q 40 ; 39 
 ;
USVIB(PAR) ;
 I $G(PAR),$$CONC(PAR) Q 1
 Q 0
 ;
CONC(PAR) ; 
 I $$PAPJ^W4PRM,PAR=648 Q 0
 N SUGP S SUGP=$$SUG^W4P(PAR)
 I $$PAPJ^W4PRM,SUGP=6!(SUGP=48) Q 1
 I $$PAPJ^W4PRM,SUGP=8!(SUGP=5)!(SUGP=53) Q 1
 I $$PAPJ^W4PRM Q 0
 ;
 N SUGC S SUGC=$G(@$$^W4PRM@("RKZSUG"))
 I SUGC,(","_SUGC_",")[(","_SUGP_",") Q 1
 ;
 I $G(PAR)="" Q 0
 I $D(@$$^W4GL("W4ITCNC")@(PAR)) Q 1
 Q 0  
 ;
SETRKZ(CD,QN) 
 I $G(CD)="" Q
 I 'QN Q
 I '$$USVIB(CD) Q
 S @VRM0@("P",CD)=$G(@VRM0@("P",CD))+QN
 Q 
 ;
HBHR(STAM) ;
 I '$G(HZM) Q 0
 I $$HBHR^W4PRM=2,$$HZM^W4MSL(HZM),$D(P1HZHB)!$D(P1HZHB2) Q 1
 I $$HBHR^W4PRM=1,$D(P1HZHB)!$D(P1HZHB2) Q 1
 I $$NOTM^W4PRM,$$TMMSL^W4PRM,$$HZM^W4MSL(HZM),$D(P1HZHB)!$D(P1HZHB2) Q 1
 Q 0 
 ;
ENGST(ST) ; 
 I $$^%W1LNG'="H" Q 1
 N I,OK S OK=1
 F I=1:1:$L(ST) I $A(ST,I)>96,$A(ST,I)<123 S OK=0 Q 
 Q OK
 ;
PAR2KITCH(PAR) ;
 I $G(@$$^W4PRM@("PAR2KTCH")),$$TODISPATH,$$PRINTIG^W3PRMDP(PAR) Q 1
 Q 0
 ;
 ;
SORTRKZSUG ;
 N N1,CD
 N VRM00 S VRM00=$$^W4MAIN("VRM00") K @VRM00
 ;
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM0")@("P",N1)) Q:N1=""  S A=$G(^(N1)),CD=$P(N1,"^") D
 .N SUG S SUG=+$$SUG^W4P(CD)
 .N IND S IND=$J(SUG,5)_"^"_$J(N1,9)
 .M @VRM00@("P",IND)=@$$^W4MAIN("VRM0")@("P",N1)
 .M @VRM00@("N",IND)=@$$^W4MAIN("VRM0")@("N",N1)
 ;
 K @$$^W4MAIN("VRM0")@("P"),@$$^W4MAIN("VRM0")@("N")
 ;
 M @$$^W4MAIN("VRM0")@("P")=@VRM00@("P")
 M @$$^W4MAIN("VRM0")@("N")=@VRM00@("N")
 K @VRM00
 Q
 ;
 ;
RKZSUG() ; 
 I $G(@$$^W4PRM@("RKZSUG"))?.E1N.E Q 1
 Q 0  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZTH0
W4HZTH ; HAZAGAT TEUDAT MISHLOAH & HESBONIT  [ 01.07.26 10:34 ] [ 30.06.26 11:43 ] [ 23.06.26 15:28 ] 
 N (JB,%ARG,%REM,HZM,GLBV,GLBV1,%SCV,USK,P1HZHB,P1HZTM,P1HZHB1,P1HZHB2,P1HZHB3,P1HZHB5,BLIPR,MAKOR,TMASR,HSBENG,P1HZMM,PRBIT,ARGHSBRKZ,%W1LNG,NOPCLOAZ)
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 ;
 D ^W4IN,^W4INP D MDPPC
 ;
 I $G(PRINT)="L" G END
 ;
 I $$TODISPATH,$$MDPMSL^W4PRM>1 D
 .I $G(@$$^W4PRM@("MSLLOC")),$$HZMLAK^W4HZMST(HZM)'["W" Q
 .D ^W4MDPMSL($G(P1HZHB1("MSL")))
 ;
 I $D(P1HZHB1),P1HZHB1=1 D ^W4MDPJRF($P(@$$^W4ORD@(HZM),"\"))
 ;
 S LINEPC="S TXT="""" D S11"
 I '$D(%MDP) G END
 ;
 I $G(PRINT)'="" L +@$$^W4GL("P1LOCK")@("PCHZ",PRINT):5
 ;
 I $$MDP("SUG")=7!($$MDP("SUG")=5) D  S ST=$$MDP("NOCOND") D S12
 .S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ;
 S %SCRN=HZSCR S I=0,SM=0 K PRINTF L +@$$^W4PC@(PRINT):2
 I $$MDP("GWPC")=80 S SM=10
 ;
 I $G(@$$^W4PRM@("LOGOMDP")) D
 .;;S @$$^W4MAIN("TMPS111")@(.1)=$C(28)_"p"_$C(1)_$C(1)
 .S @$$^W4MAIN("TMPS111")@(.1)=$C(28)_"p00"
 ;
 I $$^W6,$G(@$$^W4PRM@("HBHBR")) S NOPCLOAZ=""
 I $D(P1HZHB),$G(@$$^W4ORD@(HZM,"HSBENG")) S HSBENG=""
 I $$ENG D ENG^%W1LNG
 ;
 I $$INTERNET(HZM),'$$SF^W4PRM D
 .I $$TODISPATH,$$MSLKZR^W4PRM Q
 .I '$$ENG S TXT=$$MDP("B")_"!! hpxhpi` zpnfd !!"_$$MDP("N") D S1
 .I $$ENG S TXT=$$MDP("B")_"!! Order from Internet !!"_$$MDP("N") D S1
 ;
 I $$TAKEAWAY^W4HZMST(HZM),'$$SF^W4PRM D
 .N HR S HR=$$HRA^W4HZMST(HZM)
 .N GW S GW=38
 .I '$$ENG S TXT=$J("! zgwl e`eaii",GW\2)
 .I $$ENG S TXT=$J("! Take Away",GW\2)
 .I $TR(HR,"-_","")["DINEIN" S TXT=$J("DINE IN",GW\2)
 .S TXT=$$MDP("B")_TXT_$$MDP("N")
 .D S1
 ;
 D ST ;-- PRINT HEADER ( FROM P1HZTM )
 ;
 K @$$^W4MAIN("TMPS111")
 S SM=0
 ;
 I $$MDP("GWPC")=80 D
 .S (TXT,TXT1)="      dxrd        :  mekq  :  xign  : zenk :         hixt xe`ze cew        "
 .S TXT=$TR($J("",$L(TXT1))," ","-") D S1
 .S TXT=TXT1 D S1
 .S TXT=$TR($J("",$L(TXT1))," ","-") D S1
 ;
 S ERMDP=0,NP=0 S NMB=$P($G(@$$^W4ORD@(HZM)),"\")
 N NOMHTM S NOMHTM=$$GETP^%W1PRM("NOMHTM")
 I NOMHTM="" D
 .N BLIMH S BLIMH=$$TMBLIMH^W4L(NMB)
 .I $$^W4MSL(NMB),$D(P1HZTM)!$D(P1HZHB2) S NOMHTM=$S('BLIMH:$$NOMHTM^W4PRM,BLIMH=1:1,1:0)
 ;
 S NOMH=0 I $D(P1HZTM)!$D(P1HZHB2),$$^W4MSL(NMB),NOMHTM S NOMH=1
 I $$DELIS^W4PRM,$$TODISPATH S NOMH=1
 I $G(@$$^W4PRM("NOMHHZMH")),$$^W4HZMH(HZM) S NOMH=1 ; -- 20/11/24
 ;;I $G(TMASR) S NOMH=1
 ;
2 ;
21 G:$D(BLIPR) 22
 ;
 I $D(P1HZHB1("R")) D RIKUZQ G END ;------- RIKUZ LEFI KAMUT (BE-52)
 ;
 ;------- HADPASAT HESHBONIT RIKUZ -----
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$RKZ(HZM),'$$PCDET(HZM),$G(P1HZHB1)'="B",$G(P1HZHB1)'="H",'$$KUPA^W4PLUK(MYDVN) D PCHSBRKZ G 210
 ;
 ;--------- HADPASAT TLUSH BITUL
 I $G(P1HZHB1)="B" D PCTLBIT G END
 I $G(P1HZHB1)="H" D PCTLHNH G END
 ;
 ;--------- HADPASAT HESB. RAGILA
 ;
 I $$TODISPATH D NOSHULAM(HZM)
 ;
 S SHNHP=0
 ;
 I '$$PCKV D
 .F N1=$S($$TODISPATH&$G(P1HZMM):P1HZMM,1:1):1 Q:'$D(@$$^W4ORD@(HZM,N1))  S OKPAR=1 D PCLN(HZM,N1) Q:ERMDP
 ;
 I $$PCKV D
 .N N,N0,KV0,PAR0 S N0=$S($$TODISPATH&$G(P1HZMM):P1HZMM,1:1),KV0=" ",PAR0=" "
 .
 .N TMPHZ S TMPHZ=$$^W4MAIN("TMPHZ") K @TMPHZ
 .S N0=$S(N0>1:N0-1,1:"")
 .S N=N0 F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ..N PAR S PAR=$P($G(^(N)),"\")
 ..N KV S KV=+$$SUG^W4P(PAR)
 ..I $E(PAR)="-" S KV=KV0,PAR=PAR0
 ..M @TMPHZ@(KV,PAR,N)=@$$^W4ORD@(HZM,N)
 ..S KV0=KV,PAR0=PAR
 .
 .S ERMDP=0
 .S KV="" F  S KV=$O(@TMPHZ@(KV)) Q:KV=""  D
 ..S PAR="" F  S PAR=$O(@TMPHZ@(KV,PAR)) Q:PAR=""  D
 ...S N="" F  S N=$O(@TMPHZ@(KV,PAR,N)) Q:N=""  D
 ....S OKPAR=1 D PCLN(HZM,N)
 .K @TMPHZ
 ;
210 ;--------------- HEARA ----------------------------
 I $D(P1HZTM)!$D(P1HZHB1),$$^W4MSL(NMB)!$G(@$$^W4PRM@("HRA2")) D
 .S HRA2=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\") Q:'$L(HRA2)
 .S TXT("R")="",TXT=$TR($J("",$$WDKAV)," ","-") D S1
 .S TXT("R")="",TXT=$J(HRA2,33) D S1
 ;
 I $$HBHR D
 .S HRA2=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\") Q:'$L(HRA2)
 .S TXT("R")="",TXT=$TR($J("",$$WDKAV)," ","-") D S1
 .S TXT("R")="",TXT=$J(HRA2,33) D S1
 ;
 S TXT("R")="",TXT=$TR($J("",$$WDKAV)," ","-") D S1
 ;
 S OKBH=0 D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:OKBH
 ..S PAR=$P($G(^(I)),"\") I $L($$SMB^W4BLNMVC(PAR)) S OKBH=1
 .I OKBH,$$HNHAH^W4HZMST(HZM) D
 ..I '$$ENG S TXT="* dgpd `ll - ziakeka mipneqn mihixt *" D S1
 ..I $$ENG S TXT="* Items marked by asterisk - without discount *" D S1
 ..S TXT="" D S1
 ;
 ;-------------- HELEK TAHTON - HANAHOT, TOTALS, TASHLUMIM -----------------
 ;
 D
 .I $$PAPJ^W4PRM,$$HBMSL(HZM),$$PAPJ^W4PRM,'$D(P1HZHB1("R")) D RIKUZQ1(HZM) Q
 ;
22 D HEADN
 ;
 I $D(@$$^W4ORD@(HZM,"PCMVC")) D ^W4PCMVC ; -- HADPASAT TLUSHEY MIVCAIM
 ;
 I $D(P1HZHB)!$D(P1HZHB2),$$^W4DLPK(NMB),'$G(PRTAWS) D  G:$G(PRTAWS) 2 ;--- SEFAH
 .I $$^W4CLOSE(HZM),$D(BLIPR) Q
 .S MZMNM=$$MAZMIN(HZM)
 .I $G(@$$^W4PRM@("TAWS")) D
 ..K BLIPR,P1HZHB,P1HZHB2 S PRTAWS=1
 ..S P1HZTM="S",NOMH=1 D HEADS,HEAD4
 ;
 I $G(P1HZTM)="S" K P1HZTM
 ;
END ;
 D KILL^%W1PRM("HSBPOS")
 I $G(PRINT)'="" L -@$$^W4GL("P1LOCK")@("PCHZ",PRINT)
 L  Q
 ;-------------------- END OF BODY -----------------
 ;
HBMSL(HZM) ;
 ;;I $D(P1HZHB)!$D(P1HZHB2),$$TMMSL^W4PRM,$$NOTM^W4PRM,$$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM) Q 1
 I $D(P1HZHB)!$D(P1HZHB2),$$TMMSL^W4PRM,$$NOTM^W4PRM,$$HZM^W4MSL(HZM) Q 1
 Q 0
 ;
 ;
PCLN(HZM,N1) ;
 N ST,STHZ,ADOM,SUMT,REF,N2,N3,N2V,TXT,P1H,P1H1
 S (ST,STHZ)=$G(@$$^W4ORD@(HZM,N1))
 K ADOM S SUMT=0,ERMDP=0 S REF=$$^W4ORD_"(HZM,N1)"
 N PAR S PAR=$P(STHZ,"\")
 ;
 I $D(^(N1))>9,'$$PAR2KITCH(PAR) X LINEPC
 ;
 D LINE Q:ERMDP
 S N2="" K PRINTF1,N3
 ;
 D ^W4N2V(HZM,N1)
 ;
 S N2V="" F P1H=1:1 S N2V=$O(@$$^W4MAIN("VRMHZ")@(N2V)) Q:N2V=""  D
 .S N2=$G(^(N2V)) Q:N2=""
 .S OKPAR2=0
 .S ST=$G(@$$^W4ORD@(HZM,N1,N2)) D:$D(^(N2))<10 LINE2
 .S N3="" F P1H1=1:1 S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  S ST=$G(^(N3)) D LINE3
 ;
 I $D(PRINTF1) D
 .S TXT=$TR($J("",$$MDP("GWPC")-7)," ","-") D S1
 ;
 I P1H>1!($G(P1H1)>1),$G(PAR),$G(OKPAR) S TXT="" D S1
 K @$$^W4MAIN("VRMHZ")
 Q
 ;
 ;
PCKV(STAM) ;
 I $$PCHZKV^W4PRM Q 1
 I $$MANA^W4PRM=3 Q 1
 Q 0
 ;
MDP(IND) ;
 I $G(IND)="" Q ""
 Q $G(%MDP(IND))
 ;
HEAD2 ;
 I '$$ENG S TXT=" 4 : 3 : 2 : 1 :--- zetqez xe`z ---"
 I $$ENG S TXT="--- Supplements ---: 1 : 2 : 3 : 4 "
 D S1
 Q
 ;
HEAD3 ;
 Q:$G(@$$^W4PRM@("NOKOTTSF"))
 S TXT=":----------- zetqez -------------:"
 I $$MDP("GWPC")=80 S TXT="-------------------------------   zetqez   ------------------------------"
 I $$ENG S TXT=":----------- Supplements ---------:"
 D S1
 Q
 ;
HEAD4 ;
 S TXT=": ---------- dgex` hexit ----------:"
 I $$MDP("GWPC")=80 S TXT="------------------------------- dgex` hexit ------------------------------"
 I $$ENG S TXT=":--------- Lunch Items ------:  Sum  "
 D S1
 Q
 ;
 ;
HEADS ;----------------------- PRINT SEFAH -----------
 I $G(@$$^W4PRM@("MDPSEF")) D  ; -- TO SPECIAL PRINTER
 .S PRINT=@$$^W4PRM@("MDPSEF")
 .N SUG S SUG=$G(@$$^W4PRM@("MDPSEF","SUG"),6)
 .S %MDP("SUG")=SUG
 .D TV^W4MDP(SUG)
 .N PCN,TXT,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 .S TXT=$$MDP("BEEP")_$$MDP("BEEP"),ST=TXT D S11
 ;
 I '$$ENG S TXT=$$MDP("B")_$$MDP("R")_"* * *  g t q  * * *"_$$MDP("RL")_$$MDP("N") D S11
 S TXT="" D S11
 ;
 I $G(@$$^W4ORD@(HZM,"ETHB")) D
 .I '$$ENG S TXT=$$MDP("B")_$J($G(@$$^W4ORD@(HZM,"ETHB")),6)_" zipeaygl "_$$MDP("N") D S11
 .I $$ENG S TXT=$$MDP("B")_"To Invoice "_$J($G(@$$^W4ORD@(HZM,"ETHB")),6)_$$MDP("N") D S11
 ;
 I $G(@$$^W4ORD@(HZM,"ETHB2")) D
 .I '$$ENG S TXT=$$MDP("B")_$J(+$G(@$$^W4ORD@(HZM,"ETHB2")),6)_" i`xy` oeaygl "_$$MDP("N") D S11
 .I $$ENG S TXT=$$MDP("B")_"To Credit Bill "_$J(+$G(@$$^W4ORD@(HZM,"ETHB2")),6)_$$MDP("N") D S11
 ;
 I '$$ENG S TXT=$$MDP("B")_$J($$HZM(HZM),9)_" dpnfd"_$$MDP("N") D S11
 I $$ENG S TXT=$$MDP("B")_"Order "_$J($$HZM(HZM),9)_$$MDP("N") D S11
 S TXT="" D S11
 ;
 I $L($G(MZMNM)),$$SEFAHNM^W4PRM,$$TAW^W4DLPK($$NMB^W4HZMST(HZM)) D
 .I $$^%W1HB S TXT=$$MDP("B")_"<H>"_$J(MZMNM,12)_": oinfnd"_$$MDP("N") D S11
 .I '$$^%W1HB S TXT=$$MDP("B")_"Customer : "_$$ENG^%L1FRM(MZMNM,12)_$$MDP("N") D S11
 .S TXT="" D S11
 ;
 I $G(MKBL) D
 .I $$^%W1HB S TXT=$$MDP("B")_"<H>"_$J($$SHORT^W4NAME(MKBL),12)_": cilwnd"_$$MDP("N") D S11
 .I '$$^%W1HB S TXT=$$MDP("B")_"Typed by : "_$$ENG^%L1FRM($$SHORT^W4NAME(MKBL),12)_$$MDP("N") D S11
 .S TXT="" D S11
 ;
 N %TIM
 S %TIM=$ZD($H,"24:60") D
 .I '$$ENG S TXT=%TIM_" "_$$^%L1DC($H,1)_" : dwtd onf"
 .I $$ENG S TXT="Issue Time : "_$$^%L1DC($H,1)_" "_%TIM
 .D S11
 Q
 ;
 ;
HEADN ;----------------- HAZAGAT TASHLUMIM & KOTERET TAHTONA
 ;
 I $D(P1TNOPR) Q
 ;
 D GET(HZSCR,GLBV)
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$KUPA^W4PLUK(MYDVN)!$$TODISPATH!$D(P1HZTM) D
 .N QNACS,QNIU
 .S QNACS=$$TOTQNPAR^W4HZMST(HZM,"W4ITACS",1)
 .S QN1U=$$TOTQNPAR^W4HZMST(HZM,"W4IT1USE",1)
 .
 .I $$NOPCCNT^W4PRM D
 ..S QN=$G(@$$^W4GL("W4SAHMDB")@(HZM,"ALL"))
 .
 .I '$$NOPCCNT^W4PRM D
 ..S QN=$$TOTQN^W4HZMST(HZM,1)
 ..S ^AA("W4HZTH-HEADN","QN0")=QN
 ..S ^AA("W4HZTH-HEADN","QNACS")=QNACS
 ..S ^AA("W4HZTH-HEADN","QN1U")=QN1U
 ..I $$DELIS^W4PRM S QN=QN-QNACS-QN1U ;;S ^AA("W4HZTH-HEADN","QN")=QN
 .
 .I '$$ENG,QN S TXT=$$MDP("B")_$J(QN,5)_" :dpnfda mihixt"_$$MDP("N") D S1 S TXT="" D S1
 .I $$ENG,QN S TXT=$$MDP("B")_"Items amount : "_$J(QN,5)_$$MDP("N") D S1 S TXT="" D S1
 .
 .I $$NOPCCNT^W4PRM,$$TODISPATH D
 ..N QN S QN=$$TOTQNP^W4HZMST(HZM,1)
 ..I '$$ENG S TXT=$$MDP("B")_$J(QN,5)_" : zevit k""dq"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG S TXT=$$MDP("B")_"Pizza amount : "_$J(QN,5)_$$MDP("N") D S1 S TXT="" D S1
 ..
 ..S QN=$G(@$$^W4GL("W4SAHMDB")@(HZM)) ;;$$TOTQNP^W4HZMST(HZM,2) ; -- 15/11
 ..I '$$ENG S TXT=$$MDP("B")_$J(QN,5)_" : xepza k""dq"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG S TXT=$$MDP("B")_"Owen amount : "_$J(QN,5)_$$MDP("N") D S1 S TXT="" D S1
 .
 .I $$DELIS^W4PRM D
 ..I '$$ENG,QN1U S TXT=$$MDP("B")_$J(QN1U,5)_" : inrt cg"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG,QN1U S TXT=$$MDP("B")_"One Use Items : "_$J(QN1U,5)_$$MDP("N") D S1 S TXT="" D S1
 ..
 ..I '$$ENG,QNACS S TXT=$$MDP("B")_$J(QNACS,5)_" :fixeqqw`"_$$MDP("N") D S1 S TXT="" D S1
 ..I $$ENG,QNACS S TXT=$$MDP("B")_"Accessories : "_$J(QNACS,5)_$$MDP("N") D S1 S TXT="" D S1
 ..
 ;
 I $$MDP("GWPC")=80 S SM=14
 I $D(P1HZHB2),$G(TMASR) G HEADNA
 I NOMH D SLH,CUT Q
 N %SCRN S %SCRN=HZSCR
 ;
 N T S T=0 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  ; -- T - SUM BE HAZMANA
 .S T=T+$P(^(I),"\",7)
 ;
 I $G(SHNHP) D
 .I '$$ENG D
 ..S TXT=$$MDP("B")_$J(T-SHNHP,7,2)_" :zegpd iptl"_$$MDP("N") D S1
 ..S TXT=$$MDP("B")_$J(SHNHP,7,2)_" :zepnl zegpd"_$$MDP("N") D S1
 .I $$ENG S TXT=$$MDP("N")_"Total dish discounts : "_$J(SHNHP,14,2)_$$MDP("N") D S1
 ;
 ;;I $$MSLKZR^W4PRM,$$TODISPATH D CUT Q
 ;
 N KOLEL
 I $D(P1HZHB1)!($D(P1HZHB2)&'$D(BLIPR))!$D(P1HZHB3)!$$^W4DLPK(NMB)!$D(P1HZTM)!($D(P1HZHB)) D
 .D PCHNTOT
 ;
 ;
 N VT S VT=$J("",5)
 ;
 I SHUL!SHULA,SHUL+SHULA'<TSHL D SHULAM1 ;--- SHULAM BSUG TASHLUM EHAD
 ;
 I $D(P1HZHB3)!$D(P1HZHB)!$D(P1HZHB1),'$G(KOLEL) D PCIGUL
 ;
 I SHUL!'SHULA D  ; ------------- LE TASHLUM ----
 .I '$$ENG S TXT=$$MDP("B")_$J(TSHL,7,2)_" : melyzl"
 .I $$ENG S TXT=$$MDP("B")_"Due     : "_$J(TSHL,7,2)_$$MDP("N")_" NIS"
 .D S1
 ;
 ;
 ;
 I $D(P1HZHB3),TSHL-SHULA+TIP D FICTHB ;---- FIKTIV. HMK (MISHLOHIM) - SUGEI TASHLUM
 ;
 I '$D(P1HZTM),'$D(P1HZHB3),SHUL+ODEF+ODEFTL D EREHHB ; -- HESBON OR HESBONIT
 ;
 I $D(P1HZHB)!$D(P1HZHB1)!($D(P1HZHB5)&'$D(P1HZHB))!$D(P1HZTM)!$$TODISPATH!($D(P1HZHB2)&$$NOTM^W4PRM) D PCSUGT S TXT="" D S1 ;-------- HESBONIT ! HESHBON (NE ASHRAJ)
 ;
HEADNA ;
 I TSHL>(SHUL+SHULA),$D(P1HZHB1) D
 .I '$$ENG D
 ..S TXT=$$MDP("B")_$J(TSHL-SHUL-SHULA,7,2)
 ..N TXITRA S TXITRA="dxzi"
 ..I $$CODTS^W4HZMST(HZM)=1 S TXITRA="onefna "_TXITRA
 ..S TXT=TXT_" :"_TXITRA_$$MDP("N") D S1
 .
 .I $$ENG D
 ..S TXT=$$MDP("B")_"Balance : "
 ..S TXT=TXT_$J(TSHL-SHUL-SHULA,7,2)_$$MDP("N")_" NIS"
 ..D S1
 ;
 S TXT="" D S1
 ;
 D HODAA ; --> CUT
 ;
 I $D(P1HZHB)!$D(P1HZHB3),'$D(P1TNOPR) D  ;
 .I CA S DCM="`ay" D  ; ---------- HADPASAT K-A
 ..N DD S DD=$P($G(@$$^W4ORD@(HZM,"CB")),"\",7)
 ..S DTCB=$$^%L1DC(DD,1),TTCB=$$T^%L1TIME($P(DD,",",2))
 ..N I S I="" F  S I=$O(@$$^W4ORD@(HZM,"CB","V",I)) Q:I=""  D
 ...N A S A=$G(^(I)) Q:A=""
 ...D ^W4GTVCH(A,"V") D CA(I)
 ;
 ;
 I $$RKZSUG D RIKUZQ1(HZM); -- HALLO TEIMAN
 ;
 I $$SHULA^W4HZMST(HZM) D  Q:$G(@$$^W4PRM@("ASR"))=1!$G(TMASR) ; -- TL HAKAFA
 .I '$G(MAKOR) D
 ..I $D(@$$^W4ORD@(HZM,"TB","PC")),'$$SF^W4PRM D PCTBETEK
 ..I $D(@$$^W4ORD@(HZM,"CB","VC")),'$$SF^W4PRM D PCVCETEK
 .I $D(P1HZHB)!$D(P1HZHB2) D ASRWR
 .I $G(TMASR),'$D(P1TNOPR) S TXT=$C(10,10,10,10,10) D S1
 ;
 I $$GCOUPIT^W4HZMST(HZM) D
 .D PC^W4TLMTN(HZM)
 ;
 ;;I $G(ODEFTL),$D(P1HZHB) D ^W4ODTL(TLN,NCAB,ODEFTL,DHB,MAKOR)
 ;
 I $G(@$$^W4PRM@("CARD")),$D(P1HZHB) D PCCARD ; -- HADPASAT KARTISIM
 ;
 I $$BSL^W4PRM,$$BSCARD^W4HZMST(HZM),$D(P1HZHB1) D PCBSL
 ;
 Q  ;----------------------- END KOT TAHTONA -------------
 ;
 ;
PCHNTOT ;
 S KOLEL=0
 ;;D ^W4HZMVC1(HZM,1); -- 02.03.23
 D PCET^W4HZMVC1(HZM)
 ;
 I '$$ENG D  ; -- HEBREW
 .S TXT=$$MDP("B")_$J(T,7,2)_" : k""dq"_$$MDP("N") D S1
 .
 .I DMSH D
 ..S TXT=$$MDP("B")_$J(DMSH,7,2)_" : "_$S($$^W4MSL(NMB):"gelyn ",1:"zexiy ")
 ..S TXT=TXT_$S($G(DMSAH):$J(DMSAH,1,1)_"%",1:"inc")_$$MDP("N") D S1
 ..S KOLEL=1
 .
 .I HNHAH D
 ..N HNHA S HNHA=$$HNHA^W4HZMST(HZM) I HNHA<0 S HNHA=-HNHA
 ..S TXT=$$MDP("B")_$J(-HNHA,6,2)_" = "_$J($S(HNHAH>0:HNHAH,1:-HNHAH),4,1)_"% "
 ..I HNHA>0 S TXT=TXT_"dgpd"_$$MDP("N")
 ..I HNHA<0 S TXT=TXT_"zexiy inc"_$$MDP("N")
 ..S KOLEL=1
 ..D S1
 .
 .I $$LKHNH^W4HZMST(HZM) D  ; -- HANAHAT LAKUAH
 ..N LKHNH S LKHNH=$$LKHNH^W4HZMST(HZM)
 ..S TXT=$$MDP("B")_$J(-LKHNH,7,2)_" : "
 ..S TXT=TXT_"dtwd zegpd"_$$MDP("N"),TXT("R")=1 D S1
 ..S KOLEL=1
 .
 .I $$HNH1^W4HZMST(HZM) D  ; -- HANAHOT NOSAFOT
 ..N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 ..S TXT=$$MDP("B")_$J(-HNH1,7,2)_" : "
 ..S TXT=TXT_"ztqep dgpd"_$$MDP("N") D S1
 ..S KOLEL=1
 .
 .I $G(TIP),$$^W4TIPPD($$DTK(HZM)) D TIP(TIP) S KOLEL=2
 .
 .I KOLEL D
 ..D PCIGUL   
 ..S TXT=$$MDP("B")_$J(TSHL+$S(KOLEL=2:$G(TIP),1:0),7,2)
 ..S TXT=TXT_" : llek k""dq"_$$MDP("N") D S1
 ..I $G(TIP),KOLEL'=2 D TIP(TIP)
 ;
 ;
 I $$ENG D  ; ----- ENGLISH
 .S TXT=$$MDP("B")_"Total   : "_$J(T,7,2)_$$MDP("N")_" NIS" D S1
 .
 .I DMSH S TXT=$$MDP("B")_"Service : "_$J(DMSH,7,2)_" NIS"_$$MDP("N") D S1 S KOLEL=1
 .
 .I HNHAH D
 ..S TXT=$$MDP("B")_"Discount "_$J(HNHAH,4,1)_"% = "_$J(-$$HNHA^W4HZMST(HZM),7,2)_$$MDP("N") D S1 S KOLEL=1
 .
 .I $$HNH1^W4HZMST(HZM) D
 ..N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 ..S TXT=$$MDP("B")_$S(HNH>0:"Discount",1:" Add.     ")_" : "
 ..S TXT=TXT_$J($S(HNH1>0:-HNH1,1:HNH1),7,2)_$$MDP("N")_" NIS" D S1
 ..S KOLEL=1
 .
 .I $G(TIP) D TIP(TIP) S KOLEL=1
 .I KOLEL S TXT=$$MDP("B")_"To pay  : "_$J(TSHL,7,2)_$$MDP("N")_" NIS" D S1
 Q
 ;
MVB(STAM) ;
 I $P($G(@$$^W4ORD@(HZM,"CB","CH",1)),"*",2)="B" Q 1
 Q 0
 ;
SHULAM1 ;
 I SHUL'>(MZM+ODEF),SHUL'<0,'SHULA S VT=$S($$ENG:"Cash",1:"onefn")
 I SHUL=CHK,'SHULA S VT=$S($$CODTS^W4HZMST(HZM)=12:" PAIDIT ",$$MVB:" "_$$BANK_" ",'$$ENG:"  wiy",1:"Check") Q
 I SHUL=CA,'SHULA S VT=$S($$ENG:"Cr.Card ",1:"  `""k") Q
 I SHUL=TL,'SHULA S VT=$S($$ENG:"Coupon ",1:" yelz") Q
 I SHULA,'SHUL S VT=$S($$ENG:"Credit ",1:" dtwd") Q
 Q
 ;
 ;
BANK(STAM) ;
 I $$ENG Q "BANK"
 Q " zi`wpa dxard"
 ;
PCIGUL ;
 I $G(MAKOR)!$D(P1HZHB1),$G(@$$^W4PRM@("IGUL")),+TSHL\1'=+TSHL&($G(@$$^W4PRM@("IGUL"))=1)!($G(@$$^W4PRM@("IGUL"))=2&(+TSHL'=$J(TSHL,1,1))),TSHL-SHUL-SHULA<-1!(TSHL-SHUL-SHULA>1) D
 .N PUTHNH D ^W4IGUL I HNH2 D
 ..N HNH S HNH=$$HNH^W4HZMST(HZM)+HNH2
 ..F PUTHNH="HNH2","HNH","TSHL" D
 ...D PUT^W4SCREF($$^W4ORD_"(HZM)","P1HZMS",1,PUTHNH)
 ..I $$D^W3TMPORD(JB)=11 D  ; -- ???
 ...F PUTHNH="HNH","TSHL" D
 ....D PUT^W3HZMST(HZM,PUTHNH,$G(@PUTHNH))
 ;
 I $G(HNH2),'SHUL!'SHULA!'$D(P1HZHB) D
 .S TXT=$$MDP("B")
 .I '$$ENG S TXT=TXT_$J(-HNH2,7,2)_" : lebir"
 .I $$ENG S TXT="Rounded : "_$J(-HNH2,7,2)
 .S TXT=TXT_$$MDP("N") D S1
 Q
 ;
 ;
 ;
FICTHB ;
 S TXT="" D S1
 I '$$SHUL^W4HZMST(HZM)<.5 Q  ; -- 25/11/25
 ;
 I '$$ENG D
 .N PAID S PAID=TSHL-SHULA+TIP
 .I $$SHUL^W4HZMST(HZM) S PAID=$$SHUL^W4HZMST(HZM)
 .S TXT=$C(10)_$$MDP("B")_$J(PAID,7,2)_" : mley"_$$MDP("N") D S1
 .N VT S VT="     "
 .I $G(CA) S VT="  `""k",TXT=$J("",18)_$J(CA,7,2)_" "_VT D S1P
 .
 .I TSHL-SHULA-$G(CA)>0.5 D
 ..S VT=$S($G(CODTS)=2&$$MVB:$$BANK,$G(CODTS)=2:"  wiy",1:"onefn")
 ..N SUM S SUM=TSHL-SHULA-$G(CA)
 ..D
 ...I VT["onefn",$$SMZ^W4HZMST(HZM)>0 S SUM=$$SMZ^W4HZMST(HZM)+SUM Q
 ...I $$SCH^W4HZMST(HZM)>0 S SUM=$$SCH^W4HZMST(HZM)
 ..S TXT=$J("",18)_$J(SUM,7,2)_" "_VT D S1P
 .
 .I $$SHUL^W4HZMST(HZM) D
 ..S TXT=$$MDP("B")_$J(TSHL-SHULA+TIP-$$SHUL^W4HZMST(HZM),7,2)_" : dxzi"_$$MDP("N")
 ..D S1
 ;
 I $$ENG D
 .S TXT=$$MDP("B")_"Paid       : "_$J(TSHL-SHULA+TIP,7,2)_$$MDP("N") D S1
 .N VT S VT="     "
 .I $G(CA) S VT="Credit Crad",TXT=$J(CA,7,2)_" "_VT D S1P
 .I TSHL-SHULA-$G(CA)>0.5 D
 ..S VT=$S($G(CODTS)=2:"Check      ",1:"Cash       ")
 ..S TXT=VT_" "_$J(TSHL-SHULA-$G(CA),7,2) D S1P
 Q
 ;
 ;
EREHHB ;
 N SUM,ZG S SUM=SHUL+ODEF+ODEFTL
 ;
 I '$$ENG D
 .I '$D(P1HZHB) D
 ..S TXT=$$MDP("B")_$J(SUM,7,2)_" : "_$$MDP("N") ; -- SUM
 ..S TXT=TXT_$G(VT)_" "_$$MDP("B")_"mley"_$$MDP("N") D S1
 .
 .I $D(P1HZHB) D
 ..S SUM=SHUL I '$$^W4TIPPD($$DTK(HZM))!$$^W4TIPCBU($$DTK(HZM)) S SUM=SUM-$G(TIP)
 ..N SUMHB S SUMHB=$$TSHL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
 ..I '$G(TIP),SUM>SUMHB S SUM=SUMHB
 ..S TXT=$$MDP("B")_$J(SUM,7,2)_" : "_$$MDP("N") ; -- SUM
 ..S TXT=TXT_$$MDP("B")_"z-ayg jxr"_$$MDP("N") D S1
 ..D PCMAM
 ..S TXT=$$MDP("B")_$J("",7)_" : mley"_$$MDP("N") D S1
 ;
 I $$ENG D
 .I '$D(P1HZHB) D
 ..S TXT=$$MDP("B")_"Paid "_VT_$$MDP("N")_VT_$$MDP("B")_$J(SUM,7,2)_$$MDP("N") D S1
 .
 .I $D(P1HZHB) D
 ..S SUM=SHUL I '$$^W4TIPPD($$DTK(HZM))!$$^W4TIPCBU($$DTK(HZM)) S SUM=SUM-$G(TIP)
 ..S TXT=$G(TXT)_$$MDP("B")_"Inv.value:"
 ..S TXT=TXT_$J(SUM,7,2)_$$MDP("N") D S1 ; -- SUM
 ..D PCMAM
 ..S TXT=$$MDP("B")_"Paid    "_$$MDP("N") D S1
 Q
 ;
 ;
PCSUGT ;
 I $$BIGVT!MZM S TXT="" D S1
 I CHK D
 .I $D(@$$^W4ORD@(HZM,"CB","CH"))#2 D ^W4GTVCH(^("CH"),"CH") D CH
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","CH",I))  D ^W4GTVCH(^(I),"CH") D CH
 ;
 N CODTS S CODTS=$$CODTS^W4HZMST(HZM)
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 ;
 I MZM!ITRA,MZM<SHUL!SHULA!$D(P1HZHB)!$$BIGVT!$D(P1HZTM)!$$TODISPATH D
 .I 'MZM,'ITRA Q
 .I MZM D  Q
 ..S TXT=$J("",15)_$S($$ENG:" Cash",1:" onefn ")_$J(MZM+ODEF,7,2) D S1P
 .I $$HZM^W4MSD(HZM) Q
 .I $D(P1HZHB1) Q
 .I $$TODISPATH,'$$HZAFTPAY^W4PRM Q
 .S TXT=$J("",15)_$S($$ENG:" Cash",1:" onefn ")_$J(ITRA,7,2) D S1P Q
 ;
 I $G(@$$^W4PL@("MATB")),$D(@$$^W4ORD@(HZM,"CB","M")) D  ; ----MATBEA
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","M",N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I N>1 D
 ...S TXT="   g""y "_$J(A*$P(A,"!",2),7,2)_"  = "
 ...S TXT=TXT_$J($P(A,"!",2),6,3)_" * "_$P($G(@$$^W4GL("P1SUGM")@(N)),"\",2)
 ...S TXT=TXT_" "_$J(A,6,2) D S1
 ;
 I TL D
 .I '$$ENG S TXT=$J("",15)_"  yelz "_$J(TL+ODEFTL,7,2) D S1P
 .I $$ENG S TXT="Coupon   "_$J(TL+ODEFTL,7,2) D S1P
 ;
 I CA D
 .I '$$ENG S TXT=$J("",15)_"   `""k "_$J(CA,7,2) D S1P
 .I $$ENG S TXT=$J(CA,7,2)_" Cr.Card" D S1P
 ;
 I SHULA D
 .I '$$ENG S TXT=$J("",15)_"  dtwd "_$J(SHULA,7,2) D S1P
 .I $$ENG S TXT=$J(SHULA,7,2)_" Credit" D S1P
 ;
 D  ;  ---------- TIP, ODEF --------------
 .I $G(TIP),'$$^W4TIPPD($$DTK(HZM)) D TIP(TIP)
 .I $G(ODEFTL)>0 D ODEFTL(ODEFTL) Q
 .;;S ODEF=SHUL+SHULA-TSHL-$G(TIP)
 .;
 .I TSHL>0&(ODEF>0)!(TSHL<0&(ODEF<0)) D ODEF(ODEF) Q
 .;;I MZM,MZM<SHUL,MZM<0 D ODEF(-MZM) Q
 .I TL,TL<(SHUL+SHULA),TSHL<0,TL<0 D ODEFTL(-TL) Q
 .;;I TSHL+$G(TIP)<SHUL,TSHL>0 D ODEF(SHUL+SHULA-TSHL-$G(TIP)) Q
 Q
 ;
 ;
HODAA ;
 ;
 S MZMNM=$$MAZMIN(HZM)
 ;
 I FLAGSHVA<0,$D(P1HZHB1) D
 .I '$$ENG S TXT="       i`xy` iqihxk milawn `l ",TXT("R")=1 D S1
 .I $$ENG S TXT=" Don't accept credit cards ",TXT("R")=1 D S1
 ;
 I '$$TODISPATH,'$G(DMSH)!$$^W4MSL(NMB),'$$TAW(NMB),'$$^W4TAWMSL(HZM),'$D(P1HZHB)!$G(@$$^W4PRM@("BOTHB")),'$G(@$$^W4PRM@("NOHDSRV")) D
 .I '$$ENG S TXT=$$MDP("B")_" zexiy llek `l xignd"_$$MDP("N") D S1
 .S TXT=$$MDP("B")_"SERVICE NOT INCLUDED"_$$MDP("N") D S1
 ;
 I $D(P1HZHB)!$D(P1HZHB2),$$SUPER^W3PRM D
 .N ATAV,A S ATAV=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ..S A=$G(^(N)) I $P(A,"\",7)<0,$P(A,"\",5)'<0 S ATAV=ATAV-$P(A,"\",7)
 .I ATAV>0,'$$ENG D
 ..S TXT=$J("! g""y "_$J(ATAV,2,2)_" zkqg ef dipwa,xwi gewl",39) D S1
 .I ATAV>0,$$ENG D
 ..S TXT="Dear customer in this purchase you saved "_$J(ATAV,2,2)_" NIS" D S1
 ;  
 I $D(P1HZTM) D SLH
 ;
 I $$WOLT^W4HZPCHD(HZM) D
 .I $D(P1HZHB)!$D(P1HZHB2) Q
 .S TXT=$$MDP("BB")_$J($$NOMWOLT^W4HZPCHD(HZM),13)_" : WOLT"_$G(%MDP("N"))
 .D S1
 ;
 I $$HLTM G HODAA1
 ;
 D KAV2
 ;
 I '$$ENG S TXT=$$MDP("B")_$J(HZM,14)_" dpnfd"_$$MDP("N") D S1
 I $$ENG S TXT=$$MDP("B")_"Order "_$J(HZM,14)_$$MDP("N") D S1
 ;
 I MZMNM'="",$$SEFAHNM^W4PRM,$$TAW^W4DLPK(NMB) D
 .I '$$ENG S TXT=$$MDP("B")_$J(MZMNM,12)_" oinfn"_$$MDP("N") D S1
 .I $$ENG S TXT=$$MDP("B")_"Cust "_$J(MZMNM,12)_$$MDP("N") D S1
 .S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 ;
HODAA1 ;
 I '$D(P1HZTM) D
 .I $G(@$$^W4PRM@("LAST")) N MKBL S MKBL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .I $L($G(MKBL)) D
 ..S TXT=$$MDP("B")
 ..N TAFKID S TAFKID=$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):" onxa",1:$$PC^W4WAITER)
 ..I $$^%W1HB S TXT=TXT_"<H>"_$$HBNAME($$SHORT^W4NAME(MKBL),18-$L(TAFKID))_" :"_TAFKID_"<H>"_$$MDP("N")
 ..I '$$^%W1HB S TXT=TXT_$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):"Barman",1:"Waiter")_" "_$$ENGNAME($$SHORT^W4NAME(MKBL),12)_$$MDP("N")
 ..D S1
 ;
 I $$MSPYOM^W4PRM,$G(MAKOR),'$$ZAHI^W4PRM D
 .N NOM S NOM=$$^W4MSPYOM(HZM)
 .N TXT S TXT="" D S1
 .N RV1,RV2 S RV1=$J("",20-$L(NOM)\2)
 .S RV2=$J("",20-$L(NOM)-$L(RV1))
 .S TXT=$$MDP("I")_$$MDP("BB")_RV1_NOM_RV2_$$MDP("IE")_$$MDP("N")
 .D S1
 ;
 S SHEEL=0
 I $D(@$$^W4GL("P1HOD")@("D")),'$$PCDET(HZM)!$G(@$$^W4PRM@("KOTDMSL")) D KOTD ;---------------- SHEELON
 ;
 I $D(P1HZHB)!$D(P1HZHB3),$G(CA),$G(@$$^W4PRM@("NOCUTFIRST")) Q
 ;
 I $D(P1HZHB2),$G(@$$^W4PRM@("NOCUTFIRST")) Q  ;
 ;
 D CUT
 Q
 ;
 ;
TAW(NMB) ;
 I $$^W4DLPK(NMB) Q 1
 Q 0
 ;
KOTD ;
 N SD,ST,ST1,HESHBON
 N SOAD1 S SOAD1=SOAD I $G(@$$^W4PRM@("SHEELSD1")) S SOAD1=1
 ;
 F SD=1:1:SOAD1 D
 .K SS Q:SD>1&'SHEEL
 .N SS F I=1:1:25 Q:'$D(@$$^W4GL("P1HOD")@("D",I))  S ST=$G(^(I)) Q:ST?.P1"*".P  Q:ST="?"&'$D(P1HZHB1)  D
 ..I ST?1"?".P,$G(P1HZHB1),'$$HEADNHZ D  S SHEEL=I Q
 ...N PCN,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ...S ST=$C(10,10,10,10,10)_$$MDP("CUT") D S12
 ...S TXT=$J("",5)_$$MDP("B")_$$MDP("R")_" *** "_$S($$ENG:"Service Feedback",1:"zexy aeyn")_" *** "_$$MDP("RL")_$$MDP("N") D S1
 ...S TXT="" D S1
 ...S TXT=$$T^%L1TIME($P($H,",",2))_" "_$$^%L1DC($H,1) D S1
 ...I '$$ENG D
 ....S TXT=$J("",23)_$J($$SHORT^W4NAME(MKBL),8)_$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):" onxa",1:$$PC^W4WAITER) D S1
 ....S TXT=$J("",5)_$$MDP("B")_$J($$HZM(HZM),6)_$$MDP("N")_" dpnfd "_$$MDP("B")_$J(NMB,3)_$$MDP("N")_" "_$$PC^W4DICTBL D S1
 ...I $$ENG D
 ....S TXT=$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):"Barman",1:$$PC^W4WAITER)_" "_$J($$SHORT^W4NAME(MKBL),8) D S1
 ....S TXT=$$PC^W4DICTBL_$$MDP("B")_$J(NMB,3)_$$MDP("N")_" Order "_$$MDP("B")_$J($$HZM(HZM),6)_$$MDP("N") D S1
 ...S TXT="" D S1
 ...S SS=""
 ..
 ..Q:SD>1&'$D(SS)
 ..
 ..S ST1=$$SPA^%L1FRM(ST),HESHBON=0
 ..;
 ..I ST1["$" D
 ...S HESHBON=1
 ...S ST1=$TR(ST1,"$","")
 ..;
 ..I SHEEL,'$D(P1HZHB1) Q
 ..I SHEEL,HESHBON Q
 ..I 'SHEEL,HESHBON,'$D(P1HZHB1) Q
 ..I 'SHEEL,'HESHBON,$D(P1HZHB1),'$G(@$$^W4PRM@("KOTDMSL")) Q
 ..;
 ..S TXT=ST1_$J("",GWPC-$$L^%L1FRM(ST1,"#","#")\2) D PCST(TXT) Q
 .
 .D SETHEADN
 Q
 ;
 ;
CA(IND) ;------- CARTISEJ ASHRAJ
 N I D MDPPC
 D PUT^%W3DEB("W4HZTH-CA","HZM-HZM & FLP=FLP & MAKOR=MAKOR & PRINT=PRINT")
 I $G(HZM),FLP,MAKOR Q
 I MAKOR,$G(@$$^W4ORD@(HZM,"CB","V",IND,"NOCAPC")) Q
 ;
 N MAS S %TIM=$ZD($H,"24:60") S MAS(1)=$$^%L1DC($H,1)_" "_%TIM
CA1 ;--- T.VX FROM P1TZ
 Q:$D(P1TNOPR)
 I '$D(TSS) D ^%L1TS
 Q:$G(PRINT)<3
 I $L($G(NCA))<6!'$G(NCA) Q
 ;;I $G(HZM),$D(@$$^W4ORD@(HZM,"EMV")) D PCCAEMV(HZM,IND) Q   ; 03/03/19 -> COMMENT
 ;
 ;
 K NOCUT
 ;;**;;I $G(PRINT)<3 S %SAY=" ! dxcbed `l dtew zqtcn z`f dcnrl " X %XMSGV(1) Q
 S VVTS=VTS S:$E(VVTS)="$" VVTS=$E(VVTS,2,10)
 ;
 S MAS(2)=$$RPL^%L1FRM(SHEMCA,"Cal","CAL")
 S MAS(2)=$$RPL^%L1FRM(SHEMCA,"laC","CAL")
 S MAS(2)=$$RPL^%L1FRM(MAS(2),$TR("Cal",TS0,TSS),"CAL")
 S MAS(2)=$$RPL^%L1FRM(MAS(2),$TR("laC",TS0,TSS),"CAL")
 ;
 N PRM S PRM=$G(@$$^W4SG("PARMNEW"))
 S MAS(3)=$S('$G(MAKOR):"wzrd",1:"")
 S MAS(4)=NCAB
 S MAS(5)=$E($G(PRM),46,60)
 N VER S VER=$G(@$$^W4SG("VERSION"))
 S MAS(10)="ABS-"_$E(VER,1,3)
 S MAS(10)=MAS(10)_"-6S"
 S MAS(15)=$E($G(@$$^W4SG("START")),1,7)
 S MAS(5)=""
 S MAS(15)=$G(@$$^W4PRM@("ASH","MASOF"))
 ;
 S MAS(20)=$S(VVTS="V1"!(VVTS="V5"):$E(PRM,101,107),VVTS="V2":$E(PRM,136,142),VVTS="V3":$E(PRM,171,177),VVTS="V4":$E(PRM,206,212),VVTS="V6":$E(PRM,241,247),1:"       ")
 I $G(@$$^W4SG("VERSION"))<570,VVTS="V6",$E($G(@$$^W4SG("PARMA")))=1 D
 .S MAS(20)=$E(PRM,136,142)
 ;
 S MAS(25)=""
 I $G(MAKOR) S MAS(25)=$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))
 I '$G(MAKOR),$G(DTCB) D
 .S MAS(25)=DTCB_"  "_$G(TTCB)
 ;
 S MAS(30)=$$SPA^%L1FRM(MAS(2)) ;I '$L(MAS(30)) S MAS(30)=MAS(2)
 I NCA D
 .S MAS(35)="..."_$E(NCA,$L(NCA)-3,$L(NCA))
 .S MAS(351)=$E(+NCA,1,4)_"-"_$E(+NCA,5,8)_"-"_$E(+NCA,9,12)_"-"_$E(+NCA,13,20)
 S MAS(351)=MAS(35) ; -- 24/11/24
 I 'NCA S (MAS(35),MAS(351))=""
 S MAS(40)=$E(TKFCA,1,2)_"/"_$S($E(TKFCA,3,4)<19:20,1:"")_$E(TKFCA,3,4)
 S MAS(45)=NISKA ;-- ADD N FILE
 S MAS(47)=$S($$^W4ZHUT(SUG21):"iekif",1:"aeig")
 I $G(HUZCA),MAS(47)="aeig",$G(OFENCA)<50 S MAS(47)="MSR"
 S MAS(50)=$S(MIAUTH=1:"`ay",MIAUTH=2:"dxag",MIAUTH=3:"ipci",1:"")_"  "
 S SIBA=$G(SIBA)
 S MAS(50)=MAS(50)_$S(SIBA=7:"0",SIBA=1:"`",SIBA=2:"z",SIBA=3:"n",SIBA=4:"y",SIBA=8:"i",SIBA=6:"g",1:"")_"  "_$G(AUTHNO)
 S MAS(53)=$G(MOAD)
 S MAS(55)=$S(OFENCA="00":"libx",OFENCA="01":"invr zexy",OFENCA="02":"wlc zepgz",OFENCA="03":"zvle`n",OFENCA=50:"zipetlh dwqr",OFENCA=51:"cala dnizg",1:"")
 S MAS(60)=$S(SUGMTB=1:$S(HUZCA:"NIS",1:"g""y"),SUGMTB=2:"USD",SUGMTB=4:"xlec cenv",SUGMTB=8:"ccn cenv",1:"")
 S MAS(65)=""
 I VVTS="V1" S MAS(65)=$S(SUG1=2:"hicxw`xyi",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=5:"hicxwxteq",SUG1=6:"minelyza hicxw",SUG1=8:"minelyz",SUG1=9:"minelya oecren",1:"")
 I VVTS="V2"!(VVTS="V3") S MAS(65)=$S(SUG1=2:"30+/sicr",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=6:$S($E(NCA)=3:"hicxw qxpiic",1:"hicxw"),SUG1=8:"minelyz",1:"")
 I VVTS="V4" S MAS(65)=$S(SUG1=2:"hicxw qwn`",SUG1=4:"oecren",SUG1=5:"hicxwxteq",SUG1=6:"minelyza hicxw",SUG1=8:"minelyz",9:"minelyza oecren",1:"")
 I VVTS="V6" S MAS(65)=$S(SUG1=2:"30+/sicr",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=5:"hicxw xteq",SUG1=6:"hicxw",SUG1=8:"minelyz",1:"")
 I SUG1=1 S MAS(65)="libx"
 S MAS(70)=$J(CAV-KHVCA,8,2)
 S MAS(72)="" I KHVCA S MAS(72)=$J(KHVCA,8,2)_" miakeka mekq"
 I P1 S MAS(75)=$J(P1*.01,8,2)
 I PN S MAS(80)=$S(P1:"mitqep",1:"")_" minelyz "_PN_$S(P1:" cere",1:"")
 I PC S MAS(85)=$J(PC*.01,8,2)
 S MAS(90)="" I $G(HZM) S MAS(90)=$$HZM(HZM)_" dpnfd"
 I $G(TZK) S MAS(90)=$J(TZK,5)_" iekif 'z"
 I $G(DCM)["dlaw" S MAS(90)=$J(NCAB,5)_" dlaw"
 I $D(PRG) S MAS("PRG")=1 ;-- PROGON V KONCE
 N NMB I $G(HZM) S NMB=$P(@$$^W4ORD@(HZM),"\")
 ;
 I $G(HZM),$G(NMB),'$G(DMSH)!$$^W4MSL(NMB),'$$TAW(NMB),'$$^W4TAWMSL(HZM),'$D(P1HZHB)!$G(@$$^W4PRM@("BOTHB")),$G(@$$^W4PRM@("HDSRV")) D
 .S MAS(95)="    zexy llek `l "
 .S MAS(96)="   SERVICE NOT INCLUDED"
 .;;S MAS(97)="INCLUDED"
 ;
 I $G(HZM),$G(NMB),$$^W4MSD(NMB),$G(MAKOR) D
 .N MLZ S MLZ=$P($G(@$$^W4ORD@(HZM)),"\",18)
 .I $G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)) S MLZ=@$$^W4GL("P1MLZ")@(HZM)
 .S MAS(91)=$$SHORT^W4NAME(MLZ)_" "_$$PC^W4WAITER
 ;
 I $G(HZM),$G(TIPCA) S MAS(98)=TIPCA
 ;
 S MAS("NOPTH")=1
 S LAB="SHV96"
 ;;S ^PETEK=5.4
 D ^W4CB K PRG
CACUT I '$$^W6 D CUT ; -- 25/10/23 $$^W6
 Q
 ;
 ;
CH ;
 N SUGPAY S SUGPAY=$S($$CODTS^W4HZMST(HZM)=12:"PAIDIT",$$MVB:$$BANK,$$ENG:"Check",1:" wiy")
 S TXT=$J("",15)_$J(SUGPAY,6)_" "_$J(CHS,7,2)
 I $$ENG S TXT=SUGPAY_" "_$J(CHS,7,2)
 D S1
 Q
 ;
PCTBETEK ;
 N RECID,TXT S RECID=""
 F  S RECID=$O(@$$^W4ORD@(HZM,"TB","PC",RECID)) Q:RECID=""  D
 .S TXT=$$MDP("B")_$S($$ENG:"Copy",1:"wzrd")_$$MDP("N") D S1
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"TB","PC",RECID,N)) Q:N=""  D
 ..S TXT=$G(^(N)) D S1
 .D CUT
 Q
 ;
 ;
PCVCETEK ;
 N RECID,TXT S RECID=""
 F  S RECID=$O(@$$^W4ORD@(HZM,"VC",RECID)) Q:RECID=""  D
 .S TXT=$$MDP("B")_$S($$ENG:"Copy",1:"wzrd")_$$MDP("N") D S1
 .S TXT=$$GETBON^WV(HZM,RECID,"PRINTMSG")
 .D ^WVPC(TXT,1,1)
 Q
 ;
 ;
PCBSL ;
 I $$BSNOPCHB^W4PRM Q
 N A,TMP S TMP=$$TMP^WBSTAT K @TMP
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"BSL","INVPC",I))  D
 .S A=$G(^(I))
 .S @TMP@(I)=A
 D PCTL^WBSTAT($$HDFUNC^WBSTAT("STAT")_"!")
 Q
 ;
 ;
ASRWR ;
 N MAKOR0 S MAKOR0=$G(MAKOR)
 N LKHN,LKAH,LKHNH,ASR,HRA1,LKHR,HZMLK,TLUSH,KMTL,FLP,LKHN1,LKHR1,CIBVT,CIBCARD,CIBCID,CIBUID,CIBUIC,TSFMH,TIPAS,TBCARD,TBRECID,COUPNMB,COUPNM,COUPTEL,MAKOR
 I '$D(HZSCR) D ^W4IN
 ;
 D GET(HZSCR,GLBV) Q:'SHULA
 ;
 I SHULA D
 .N I S I="" F  S I=$O(@$$^W4ORD@(HZM,"CB","ASR",I)) Q:I=""  D  Q:$L($G(LKHN))<4
 ..D ^W4GTVCH(^(I),"ASR") Q:$L($G(LKHN))<4
 ..S MAKOR=$S($P($G(@$$^W4ORD@(HZM,"ETHB2")),",",I):0,1:1)
 ..I 'FLP!('MAKOR&'$D(PRBIT)) D
 ...I 'FLP,$D(PRBIT) N MAKOR S MAKOR=1
 ...D ASR(I) Q:$D(P1TNOPR)
 ...S $P(@$$^W4ORD@(HZM,"CB","ASR",I),"*",11)=1 ; -- PECH
 Q
 ;
 ;
ASR(MSAS) ;
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 N HBASR I '$D(P1DZ) D ^W4IN
 D PUT^%W3DEB("W4HZTH-ASR","MSAS=MSAS & FLP=FLP & MAKOR=MAKOR & LKHN=LKHN & HZM=HZM")
 ;
 I FLP,$G(MAKOR0),'$$HBNOW(LKHN)!$D(@$$^W4ORD@(HZM,"HBNOW")) Q
 I FLP,$G(MAKOR0) S HBASR=$$^W4LHBZ(LKHN,HZM) I HBASR D  Q  ; -- HB MIYAD HELKIT
 .N RESPRN S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR,HZM)
 .S @$$^W4ORD@(HZM,"HBNOW")=HBASR
 .S @$$^W4ORD@(HZM,"HBNOW",MSAS)=HBASR
 ;
 N MAS,MSP,OK,HNH
 S %TIM=$ZD($H,"24:60") S MAS(1)=$$^%L1DC($H,1)_"  "_%TIM
 ;
 I MAKOR D
 .N HB2 S HB2=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",MSAS)
 .I HB2 Q  ;,$P($G(@$$^W4GL("P1HB2")@(HB2)),"\")=HZM Q
 .S (MAS(2),MSP)=$O(@$$^W4GL("P1HB2")@(9999999),-1)+1
 .I MSP<1 S MSP=1
 .S $P(@$$^W4ORD,"\",4)=MSP
 .D SETHB2
 ;
 I 'MAKOR S MAS(2)=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",MSAS)
 ;
 ;;S ^AA("W4HZTH","MAKOR")=MAKOR
 I '$$HBNOW(LKHN)!'MAKOR Q:$D(P1TNOPR)
 ;
 I $$^W4TBLKH,$D(@$$^W4ORD@(HZM,"TB"))>9 Q  ; -- WAS LKHN=$$^W4TBLKH
 ;
 I 'MAKOR,$$HBNOW(LKHN),'$$HBNOWBIG^W4PRM D PCHBNOWETEK
 ;
 ;;S ^AA("W4HZTH","HBNOWBIG")=$$HBNOWBIG^W4PRM
 I MAKOR,$$HBNOW(LKHN),'$$HBNOWBIG^W4PRM D  ; PRINT HESB MIYADIT
 .I $$BSL^W4PAYVW("ASR",MSAS) Q
 .N P1TNOPR
 .;;S ^AA("W4HZTH","HBASR")=$G(HBASR)
 .I $G(HBASR) S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR,HZM)
 .
 .I $$TSHL^W4HZMST(HZM)'<0 Q
 .; --- BITUL
 .N PRM S PRM=+$G(@$$^W4ORD@(HZM,"HBNOW",MSAS))_";1;TZ"
 .S RESPCHB=$$PRINTCSR^W4HSBYVW(PRM) ; ---- ?????
 ;
 Q:$D(P1TNOPR)
 ;
 I $$^WVLKH,LKHN=$$^WVLKH,$G(@$$^W4PRM@("VCARD")) Q
 ;
 I $$HBNOW(LKHN) Q
 ;
 ; ---------------------- PRINT TLUSH ASHRAI --------------
 S MAS(3)=LKHN,MAS(4)=$$HBR^%L1FRM($$LKH^W4L(LKHN),16)
 ;
 I $G(@$$^W4PRM@("ASRITRA")) D
 .I 'MAKOR S MAS(5)="" Q
 .S MAS(5)=$J($$ITRA^W4L(LKHN),2,2)
 ;
 S MAS(6)=+LKAH
 S HNH=LKHNH ;$P(@$$^W4ORD@(HZM),"\",8)
 S MAS(7)=$J(ASR+HNH,2,2)
 I MAS(6)<100,$J(MAS(7),1,1)'=$J(100*ASR/(100-MAS(6)),1,1) S MAS(6)=0
 S MAS(8)=$J(HNH,2,2)
 I '$$ENG S MAS(10)=$S('$G(MAKOR):"wzrd",1:"xewn")
 I $$ENG S MAS(10)=$S('$G(MAKOR):"Copy",1:"Original")
 S MAS(11)=HZM
 S (MAS(12),MAS(35))=$S($L($G(HZMLK)):HZMLK,$L($G(HZMLAK)):HZMLAK,1:"")
 S MAS(13)=$$TOCUSNAME^W4HZMST(HZM)
 S MAS(15)=$J(ASR,2,2)
 I $G(CIBCARD) S MAS(25)=$$^WCKBCARD(CIBCARD)
 I '$G(CIBCARD),$G(CIBUID) S MAS(25)=CIBUID
 I $G(CIBCID) S MAS(30)=CIBCID
 I $$TIP^W4HZMST(HZM) S MAS(98)=$$TIP^W4HZMST(HZM)
 I $G(@$$^W4PRM@("ASR"))=1 S MAS("EHAD")=""
 S MAS("NOPTH")=1
 ;
 I '$G(TMASR) S LAB="ASR",OK=1 D  D:OK>0 ^W4CB,SIGNPC(HZM,"ETHB2",MSAS) D:OK>0 CUT Q  ;-- OK>0 BIMKOM OK - 25/05/25 ;; CUT - 07/08/17
 .I $G(@$$^W4PRM@("ASR"))=-1 S OK=-1 Q
 .I $$IFVC^WV(HZM,MSAS),$$VCNOPC^W4PRM Q
 .I $D(@$$^W4ORD@(HZM,"CB","ASR",1)) D
 ..S TLUSH=$P(^(1),"*",8),KMTL=$P(^(1),"*",9)
 ..I TLUSH,KMTL>0,'$G(@$$^W4PRM@("PCTL")) S OK=0
 ;
 Q  ; ---- 24/07/22
 Q:$L($G(LKHN))=0&($$LKHN1^W4HZMST(HZM)?.P)
 ;
 ;---------------- TM --?
 S TXT=$$MDP("B")_$J(LKHN_" 'qn gewl",GWPC-2\2)_$$MDP("N") D S1
 S TXT=$$MDP("B")_$J($$LKH^W4L(LKHN),GWPC-2\2)_$$MDP("N") D S1
 I $G(MAKOR) D PROGON^W4CUT(PRINT,$$MDP("CUT")) Q
 S TXT="" D S1
 S TXT=$$MDP("B")_$J("_________ : dnizg",GWPC-2\2)_$$MDP("N") D S1
 ;
 D CUT
 Q
 ;
 ;
SETHB2 ;
 L +@$$^W4ORD@(HZM):1
 S @$$^W4ORD@(HZM,"ETHB2")=$G(@$$^W4ORD@(HZM,"ETHB2"))_MSP_","
 S $P(@$$^W4ORD@(HZM,"CB","ASR",MSAS),"*",10)=MSP
 ;
 D
 .N HZM1 S HZM1=HZM
 .I HZM1<0 S HZM1=+$G(@$$^W4ORD@(HZM,"ORDNOM"))
 .S @$$^W4GL("P1HB2")@(MSP)=HZM1_"\"_P1DZ_"\"_$H_"\"_LKHN_"\"_ASR_"\"_$G(@$$^W4GL("P1EZL")@(LKHN))_"\"_$G(TLUSH)_"\"_$G(KMTL)
 .S @$$^W4GL("P1HB2I")@(P1DZ,MSP)=$H
 ;
 N NOW S NOW=$$HBNOW(LKHN)
 ;
 I NOW S HBASR=$$^W4LHBZ(LKHN,HZM) I HBASR D
 .S @$$^W4ORD@(HZM,"HBNOW")=HBASR
 .S @$$^W4ORD@(HZM,"HBNOW",MSAS)=HBASR
 ;
 D PUT^%W3DEB("W4HZTH-ASR","NOW=NOW & HBASR=HBASR")
 L  ;
 Q
 ;
 ;
PCHBNOWETEK ;
 S MAS(2)=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",MSAS)
 ;
 I $D(@$$^W4ORD@(HZM,"HBNOW"))=1 D  Q
 .S HBASR=$G(@$$^W4ORD@(HZM,"HBNOW"))
 .D PCHBCBNOW(HZM,HBASR,MAKOR)
 ;
 I $D(@$$^W4ORD@(HZM,"HBNOW"))>9 D  Q
 .Q:'$G(MSAS)
 .S HBASR=$G(@$$^W4ORD@(HZM,"HBNOW",MSAS))
 .D PCHBCBNOW(HZM,HBASR,MAKOR,MSAS)
 Q
 ;
 ;
HBNOW(LKH) ;
 I $D(HBNOW) Q 1
 I $$GET^%W1PRM("HBNOW") Q 1
 I $$HBNOW^W4L(LKH)>1 Q 1
 I $$HBNOWMONTH^W4PRM Q 0
 I $$HBNOW^W4L(LKH)=1 Q 1
 I $$HBNOWDFL^W4PRM,$$HBNOW^W4L(LKH)="" Q 1
 Q 0
 ;
PCHBCBNOW(HZM,HBASR,MAKOR,IND) ;
 Q:'$G(HBASR)
 I $$TSHL^W4HZMST(HZM)'<0 D  Q
 .S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR,HZM)
 .D ^W4HSBGET(HBASR,"HB")
 .D PUT^%W3DEB("W4HZTH","W4HSB=[W4HSB")
 .N CB S CB=$G(W4HSB("NCB")) Q:'CB
 .N RESCB S RESCB=$$^W4PCCB(CB)
 ;
 S RESPCHB=$$PRINTCSR^W4HSBYVW(HBASR_";"_MAKOR_";TZ")
 D ^W4HSBGET(HBASR,"TZ")
 N CB I '$G(IND) S CB=$G(@$$^W4ORD@(HZM,"CBNOW")) Q:CB'>0
 I $G(IND) S CB=$G(@$$^W4ORD@(HZM,"CBNOW",IND)) Q:CB'>0
 N RESCB S RESCB=$$^W4PCCB(CB)
 Q
 ;
 ;
SIGNPC(HZM,IET,NOM) ;
 Q:$D(P1HZHB3)
 Q:'$G(NOM)
 S @$$^W4ORD@(HZM,IET,NOM,"PC")=$H_"*"_$$^W4MYDVN
 I IET="ETHB2" D SETIND^W4HZMST(HZM,"ASR",NOM,1,"FLP")
 Q
 ;
 ;
LINE ; --
 N (JB,%ARG,%REM,%MBG,ADOM,NP,ST,PRINT,%MDP,TS0,TSS,SM,KAM,SUMT,P1HZHB,P1HZTM,P1HZHB1,P1HZHB2,NOMH,HSBENG,P1HZMM,REF,NMB,HZM,SHNHP,N1,PRTAWS,ARGHSBRKZ,%W1LNG,OKPAR) D ^W4IN
 S LINEPC="S TXT="""" D S11"
 S NP=NP+1
 F I=1:1 Q:'$D(@$$^W4SCR@(HZSCR,"G","NM",I))  D
 .S NM=^(I) S @NM=$P(ST,"\",I)
 ;
 S OKPAR=1
 ;
 I PAR?1":"1N.N S TXT="" D S1 S TXT("R")=1
 ;
 I $L($G(HRP)) S HRP=$$^W4CLRMN(HRP) ; -- BEZ -I-
 ;
 I PAR["%",$E(PAR)="-" D  Q
 .N AHP S AHP=+$E(PAR,2,5)
 .S SHNHP=$G(SHNHP)+$G(SUM)
 .
 .I $TR(HRP," ","")="",+AHP=100,$$NOMHOTHP(N1-1) D  Q
 ..N HRPC S HRPC=$S('$$ENG:" * ziad oeayg lr *",1:"* On The House *")
 ..D PCHR(HRPC,$$WDHR)
 .
 .S TXT("R")=1,ADOM=1
 .;
 .I '$$ENG D
 ..S TXT=$S('NOMH:$J(SUM,7,2)_" ",1:$J("",8))
 ..S TXT=$$MDP("B")_TXT_"="_AHP_"% "_$S(AHP=100&'$$DELIS^W4PRM:"O.T.H",1:"dgpd")_%MDP("N")
 ..;;I $$NOSUMOTH^W4PRM,+AHP=100 S TXT=" O.T.H zgpd"
 .I $$ENG D
 ..S TXT=$S(AHP=100:" O.T.H Discount",1:"Discount")_" = "_AHP_"% "
 ..S TXT=TXT_$S('NOMH:$J(SUM,7,2)_" ",1:$J("",8))
 ..;;I $$NOSUMOTH^W4PRM,+AHP=100 S TXT=" O.T.H Discount"
 .D S1
 .
 .I $$PCHRHB(HRP) D  Q
 ..S HRP=$$CLRHRHB(HRP) I HRP?.P Q
 ..D PCHRP(HRP,$$WDHR)
 .;
 .S HRP=$$CLRHR(HRP)
 .S HRP=$$SPA^%L1FRM(HRP)
 .I HRP'?.P D PCHRP(HRP,$$WDHR)
 ;
 I PAR,PAR=$$PRMSHEMZ D  Q
 .X LINEPC S TXT=$$MDP("B")_"--- "_$S('$$ENG:$$HBR^%L1FRM(HRP,8),1:$$ENG^%L1FRM(HRP,8))_" ---"_$$MDP("N") D S1
 ;
 I HRP["dqtcd `ll" S HRP=$$RPL^%L1FRM(HRP,"[dqtcd `ll]","")
 I $$PRMSHEMZ,HRP["<" S HRP=$P(HRP,"<")
 ;
 I $G(REF)["VRM1(",'$$^W4OTH(HRP),HRP'["[[",HRP'["]]" S HRP=""
 ;
 I +KAM=0,'SUM G LINEND
 ;
 I $$PAR2KITCH(PAR) S OKPAR=0 G LINEND
 ;
 I $$TODISPATH S TXT="" D S1
 ;
 I $$USROLI(PAR,$G(PAR1),HRP) S TXT("I")=""
 ;
 I KAM["." S KAM=$J(KAM,3,3)
 ;
 I NOMH,'$$ENG S TXT=$J(KAM,4)_"  "_$$PAR(PAR) D S1 D  G LINEH
 .I $L($G(NMPAR2)) S TXT=$J("",4)_NMPAR2_$J("",8) D S1
 ;
 I NOMH,$$ENG S TXT=$$PAR(PAR)_"  "_$J(KAM,4) D S1 D  G LINEH
 .I $L($G(NMPAR2)) S TXT=$J("",8)_NMPAR2_$J("",4) D S1
 ;
 N AHP S AHP=$$AHNHP^W4HZMST(HZM,N1)
 ;;I +AHP=100!(+AHP=-100),$$NOSUMOTH^W4PRM S MH=0
 ;
 I $$MDP("GWPC")=80 D  Q
 .S TXT=$$HBR^%L1FRM(HRP,18)_" "_$J(MH*KAM,8,2)_" "_$J(MH,7,2)_" "_$J(KAM,5)_"  "_$$PAR(PAR) D S1
 ;
 N NMPAR,NMPAR1,NMPAR2
 S NMPAR2="",NMPAR3=""
 S NMPAR1=$$PAR(PAR)
 ;
 I +KAM=1!(+KAM=-1) D  G LINEH
 .I '$$ENG D
 ..S TXT=$S(MH&'$$NOMHOTHP(N1):$J(MH*KAM,7,2),1:$J(MH,7,2))_" "_NMPAR1 D S1
 ..I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 .
 .I $$ENG D
 ..S TXT=NMPAR1_" "_$S(MH&'$$NOMHOTHP(N1):$J(MH*KAM,7,2),1:$J(MH,7,2)) D S1
 ..I $L(NMPAR2) S TXT=NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=NMPAR3 D S1
 .
 .I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 ;
 I +KAM'=0,+KAM'=1,+KAM'=-1 D  G LINEH
 .N KM S KM=$J(KAM,3)
 .I $$TODISPATH S KM=$$MDP("B")_KAM_$$MDP("N") S TXT="" D S1
 .
 .I '$$ENG D
 ..S TXT=$J("",7)_" "_NMPAR1 D S1
 ..I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 .
 .I $$ENG S TXT=NMPAR1 D S1
 .I $L(NMPAR2) S TXT=NMPAR2 D S1
 .I $L(NMPAR3) S TXT=NMPAR3 D S1
 .
 .D  D S1
 ..I '$$ENG D
 ...I MH,'$$NOMHOTHP(N1) S TXT=$J(MH*KAM,7,2)_" = "_$J(MH,5,2)_" X "_KM Q
 ...S TXT=$J("",18)_KM
 ..I $$ENG D
 ...I MH,'$$NOMHOTHP(N1) S TXT=$J("",17)_$J(MH,5,2)_" X "_$J(KM,2)_" = "_$J(MH*KAM,7,2) Q
 ...S TXT=KM
 ;
LINEH ;
 ;;S ^AA("W4HZTH-HBHR")=$$HBHR
 ;;S ^AA("W4HZTH-HRP")=HRP
 ;
 I $$HBHR,$L($$SPA^%L1FRM(HRP)),KAM'<0 D  G LINEND
 .S HRP=$$SPA^%L1FRM(HRP)
 .I HRP'?.P D
 ..D PCHRP(HRP,$$WDHR)
 ;
 N HRPC S HRPC=$$CLRHR(HRP)
 I HRPC'?.P,'$D(P1HZHB),'$D(P1HZHB1)!$$DETAIL!$$^W4OTH(HRP)!$$PCHRHB(HRP),'$D(P1HZHB2) D
 .I $$PCHRHB(HRP),HRP["1+1" Q
 .D PCHRP(HRPC,$$WDHR)
 ;
 I $$PCHRHB(HRP) D
 .S HRP=$$CLRHRHB(HRP)
 .D PCHRP(HRP,$$WDHR)
 ;
 I KAM<0,$$DETAIL S HRP="CANCELED - lhea" D PCHR(HRP,$$WDHR)
 ;
LINEND Q
 ;
 ;
PCHRHB(HRP) ;
 I HRP["[[",HRP["]]" Q 1
 I $$HBHR Q 1
 Q 0
 ;
CLRHRHB(HRP) ;
 S HRP=$$^W4CLRMN(HRP)
 S HRP=$P($P(HRP,"[[",2),"]]")
 Q HRP
 ;
CLRHR(HRP) ;
 S HRP=$$^W4CLRMN(HRP)
 I HRP'["[[" Q HRP
 N BG S BG=$P(HRP,"[[") I $L(BG),$E($L(BG))'=" " S BG=BG_" "
 S HRP=BG_$P(HRP,"]]",2)
 Q HRP
 ;
ERMDP ;
 S ERMDP=1
 Q
 ;
PCDET(HZM) ;
 I $$TODISPATH!$G(PRTAWS) Q 1
 I $$DETTM^W4PRM,$D(P1HZTM) Q 1 
 I $$PRINTDET^W4PRM,$D(P1HZHB)!$D(P1HZHB2) Q 1
 I '$G(@$$^W4PRM@("HSBRKZ")),$D(P1HZHB1) Q 1
 I $G(HZM),$$HZM^W4MSL(HZM),$$NOTM^W4PRM,$$DETTM^W4PRM!$$TMMSL^W4PRM,$D(P1HZHB)!$D(P1HZHB2) Q 1 
 I $$HBHR Q 1
 Q 0
 ;
 ;
PAR(PAR) ;
 S PAR=$G(PAR),PAR1=$$SPA^%L1FRM($G(PAR1))
 I $$SHEM^W4P(PAR)'="",$$CDNM^W4MDBPC S PAR1=$$SHEM^W4P(PAR)
 N SMB S SMB=$$SMB^W4BLNMVC(PAR)
 ;
 I '$$ENG D  G PARH
 .N A S A="" I PAR S A=$$SPA^%L1FRM($P($G(@$$^W4GL("PAR")@(PAR)),"**"))
 .I $$CDNM^W4MDBPC,PAR,PAR1'="" S PAR1=A
 ;
 N SHEML S SHEML=$$SHEML^W4P(PAR)
 I SHEML?.P!'$$ENG S SHEML=PAR1
 S SHEML=$$SPA^%L1FRM(SHEML)
 S PAR=$$PRTCD^W4ORDVW(PAR)
 I SHEML'?.E1U.E,$$^%W1HB S SHEML="<H>"_SHEML 
 ;
 ;;I $$HBHBR^W4PRM S SHEML=$P($G(@$$^W4GL("PAR")@(PAR)),"**"),PAR1=SHEML
 I $$NOMAM^W4P(PAR),SHEML'["**" S SHEML="**"_SHEML
 ;
 N NMPAR1,ST,ST0,DL S DL=30
 ;
 I '$G(@$$^W4PRM@("NOHZMPAR")) D  Q ST
 .S ST0=SMB_PAR_" "_SHEML
 .D DLG(ST0,DL) ; --> NMPAR1,2,3
 .S ST=$$ENG^%L1FRM(NMPAR1,DL)
 ;
 S ST0=SMB_SHEML D DLG(ST0,DL)
 D DLG(ST0,DL) ; --> NMPAR1,2,3
 Q NMPAR1
 ;
 ;
DLG(ST0,DL) ;
 I '$$ENGST(ST0) D  Q
 .D DLG^%L1FRM(ST0,DL)
 .S NMPAR1=$G(%CHAST(1,1))
 .S NMPAR2=$G(%CHAST(1,2))
 .S NMPAR3=$G(%CHAST(1,3))
 ;
 I $$ENGST(ST0) D  Q
 .D DLGE^%L1FRM(ST0,DL)
 .S NMPAR1=$G(%CHAST(1,1))
 .S NMPAR2=$G(%CHAST(1,2))
 .S NMPAR3=$G(%CHAST(1,3))
 Q
 ;
 ;
PARH ;
 N NMP,ST
 I $G(PAR),$$NOMAM^W4P(PAR),$E(PAR1,$L(PAR1)-1,$L(PAR))'="**"  S PAR1=PAR1_"**"
 ;
 I '$G(@$$^W4PRM@("NOHZMPAR")) D  Q ST
 .I $$BIGNMIT(PAR) D  Q
 ..N DLN S DLN=12
 ..D DLG(PAR1,DLN)
 ..S ST=$$MDP("B")_$$HBR^%L1FRM(%CHAST(1,1),DLN)_$$MDP("N")_" "_$J($G(SUG)_" "_PAR_SMB,7)
 ..N J F J=2:1 Q:'$D(%CHAST(1,J))  D
 ...N C S C=$$SPA^%L1FRM(%CHAST(1,J))
 ...S ST=ST_$C(10)_$$DOPSP_$$MDP("B")_$$HBR^%L1FRM(C,DLN)_$$MDP("N")
 .
 .N DL S DL=23
 .D DLG(PAR1,DL)
 .S ST=$$HBR^%L1FRM(NMPAR1,DL)_" "_$J($G(SUG)_" "_PAR_SMB,7)
 ;
 ;
 I $$BIGNMIT(PAR) D  Q ST
 .N DLN S DLN=15
 .D DLG^%L1FRM(PAR1,DLN)
 .S ST=$$MDP("B")_$$HBR^%L1FRM(%CHAST(1,1),DLN)_$$MDP("N")
 .N J F J=2:1 Q:'$D(%CHAST(1,J))  D
 ..N C S C=$$SPA^%L1FRM(%CHAST(1,J))
 ..S ST=ST_$C(10)_$$DOPSP_$$MDP("B")_$$HBR^%L1FRM(C,DLN)_$$MDP("N")
 ;
 N DL S DL=30
 D DLG(PAR1_SMB,DL)
 Q %CHAST(1,1)
 ;
 ;
BIGNMIT(PAR) ;
 I $$BIGNMIT^W4PRM,$D(P1HZTM)!$$TODISPATH Q 1 
 I $G(PAR),$D(@$$^W4GL("W4ITDGSH")@(PAR)),$D(P1HZTM)!$$TODISPATH!$$NOTM^W4PRM Q 1
 Q 0
 ;
DOPSP(STAM) ;
 Q $J("",8)
 ;
 ;
LINE2 ; --
 N (JB,%ARG,%REM,ADOM,NP,PRINT,PRINTF1,ST,HZM,N1,N2,N23,N3,%MDP,TS0,TSS,SM,SUMT,REF,KAM,NOMH,P1HZHB1,P1HZHB2,P1HZTM,HSBENG,LINEPC,NMB,HZM,LINE3,PRTAWS,ARGHSBRKZ,%W1LNG,OKPAR,OKPAR2)
 S DLT2=22 I $D(LINE3) S DLT2=18
 S PAR=$P($G(@REF),"\")
 I '$G(N23) S OKPAR2=0
LINE21 ;;
 S NP=NP+1
 ;
 I $G(PRINT)="" Q
 N OKPCT S OKPCT=1
 ;
 N PAR S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 ;
 I '$$PAR2KTCH^W4PRM G LINE21N
 ;
 N PR31 I $L(REF,",")=4,$P($G(@REF),"\") S PR31=""
 I $G(PAR),'$$DD^W4EZA(PAR),$$TODISPATH,'$G(OKPAR) Q 
 I $G(PAR),$$DD^W4EZA(PAR),$G(N2),'$G(N23),$$PAR2KITCH(N2) Q 
 I $G(PAR),$$DD^W4EZA(PAR),$G(N23),$D(PR31),$$PAR2KITCH(N23) Q 
 ;
 I $D(PR31) S OKPAR2=1
 ;
 I '$D(PR31),$G(N23),'$G(OKPAR2) Q
 ;
LINE21N ;
 N NMT S NMT=$P(ST,"\")
 N QNT S QNT=$P(ST,"\",3)
 ;
 N OKPC S OKPC=1
 ;
 I $G(N1) D
 .N ST0 S ST0=$G(@$$^W4ORD@(HZM,N1))
 .N NMPAR S NMPAR=$P(ST0,"\",3)
 .S SUGPZ=$$SUG^W4PIZZA(NMPAR)
 ;
 I '$$ENG,$G(N2) D
 .I '$$CDNM^W4MDBPC Q
 .S NMT=$P($G(@$$^W4GL("PAR")@(N2)),"**")
 
 I $$MDP("GWPC")=80,$D(P1HZTM) D MDP80 Q
 ;
 N QNPIZZA
 ;
 S KAM2=+QNT
 I QNT["+" D
 .S QNPIZZA=$$QN^W4PIZZA(QNT)
 .S KAM2=+QNT_" ["_QNPIZZA_"]"
 ;
 S MHT=$P(ST,"\",2)
 N NOPC S NOPC=0
 ;
 I 'MHT,$$RKZ(HZM) D
 .I $$RKZ(HZM)=1&'$$PCDET S NOPC=1 Q
 .I '$D(P1HZHB1),'$$PCDET S NOPC=1
 Q:NOPC
 ;
 I '$D(PRINTF1(PRINT)) Q:PAR=""  D
 .D @$S($$DD^W4EZA(PAR):"HEAD4",1:"HEAD3")
 .S PRINTF1(PRINT)=1
 ;
 I $D(PR31) X LINEPC
 ;
 I 'KAM2,KAM S KAM2=KAM
 ;
 N HNT S HNT="" D
 .I MHT[";",$P(MHT,";",2) S HNT=MHT Q
 .I $D(REF),$G(N1)'="",$G(N23)'="",$G(N3)'="" S HNT=$G(@REF@("HNT"))
 ;
 I $$USROLI(N2,NMT,$P(ST,"\",4)) S TXT("I")=""
 I $$ROLI^W4PRM,$$TODISPATH,MHT S TXT("I")=""
 ;
 I +KAM2=1!NOMH,KAM2'["+" D  S SUMT=SUMT+MHT Q  ; ---- KAMUT=1 OR LO LEHAZIG MAHIR
 .;;I HNT,$P(HNT,";",2) S MHT=$P(HNT,";",2); --- 17.05.26 --> COMMENT
 .S TXT=""
 .
 .I '$$ENG D
 ..S TXT=$S(NOMH&(+KAM2'=1):$J(KAM2,7),NOMH:$J("",7),1:$J(MHT,7,2))
 ..I 'MHT,$$PCDET,KAM2'["+" S TXT=$J("",7)
 ..S TXT=TXT_" "
 ..
 ..I '$G(@$$^W4PRM@("NOHZMPAR")) D
 ...S TXT=TXT_$$PAR2(NMT,N2,21) ; --- DLT2
 ...S TXT=TXT_$S(N2?1N.N1"-"1N.N:"",1:" "_$J(N2,4)) D S1
 ..
 ..S:$G(N2)="" N2=0
 ..
 ..I $G(@$$^W4PRM@("NOHZMPAR")) S TXT=TXT_$$PAR2(NMT,N2,26) D S1 ; -- DLT2+5
 ..I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 ..I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 .
 .I $$ENG D
 ..I '$G(@$$^W4PRM@("NOHZMPAR")) D
 ...S TXT=$S(N2?1N.N1"-"1N.N:"",1:$J(N2,4)_" ")
 ...S TXT=TXT_$$PAR2(NMT,N2,DLT2)
 ..
 ..I $G(@$$^W4PRM@("NOHZMPAR")) S TXT=TXT_$$PAR2(NMT,N2,DLT2+5)
 ..
 ..S TXT=TXT_" "_$S(NOMH&(+KAM2'=1):$J(KAM2,7),NOMH:$J("",7),1:$J(MHT,7,2))
 ..D S1
 ..I $L(NMPAR2) S TXT=NMPAR2 D S1
 ..I $L(NMPAR3) S TXT=NMPAR3 D S1
 ..I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 .
 .I HNT,'$$PCDET D PCHNT
 .
 .N HRPT S HRPT=$P(ST,"\",4)
 .I $$PRMSHEMZ,HRPT["<" S $P(ST,"\",4)=$P(HRPT,"<")
 .
 .N HRPTC S HRPTC=$$CLRHR(HRPT)
 .;
 .I $$PCDET,HRPTC'?.P D
 ..I '$$ENG S TXT=$$HBR^%L1FRM(HRPTC,20) D S1
 ..I $$ENG S TXT=$$ENG^%L1FRM(HRPTC,20) D S1
 .
 .I $$PCHRHB(HRPT) D
 ..S HRPT=$$CLRHRHB(HRPT)
 ..I '$L(HRPT) Q
 ..D PCHRP(HRPT,$$WDHR)
 ;
 ;---------- KAM2>1
 S TXT=""
 N HRPT S HRPT=$P(ST,"\",4)
 I 'MHT,+KAM2'=1 S TXT=$S($$ENG:" X "_$J(KAM2,8),1:$J(KAM2,8)_" X ")
 I MHT,+KAM2'=1,KAM2'["+" S TXT=$J("",11)
 I KAM2["+" S TXT=$J(KAM2,11)
 ;
 I '$G(@$$^W4PRM@("NOHZMPAR")) D
 .I '$$ENG D
 ..S TXT=TXT_$$PAR2(NMT,N2,16)_" "_$J(N2,5) D S1
 .I $$ENG S TXT=$J(N2,5)_" "_$$PAR2(NMT,N2,16)_TXT D S1 ;  -- 14
 ;
 I $G(@$$^W4PRM@("NOHZMPAR")) D
 .I '$$ENG S TXT=TXT_$$PAR2(NMT,N2,22) D S1
 .I $$ENG S TXT=$J("",3)_$$PAR2(NMT,N2,22)_TXT D S1 ;  -- 14
 ;
 I '$$ENG D
 .I $L(NMPAR2) S TXT=$J("",7)_NMPAR2 D S1
 .I $L(NMPAR3) S TXT=$J("",7)_NMPAR3 D S1
 .I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 ;
 I $$ENG D
 .I $L(NMPAR2) S TXT=NMPAR2 D S1
 .I $L(NMPAR3) S TXT=NMPAR3 D S1
 .I $L(NMPAR2)!$L(NMPAR3) S TXT="" D S1
 ;
 I $G(HNT) S MHT=$P(HNT,";",2)
 I $G(NOMH) S MHT=""
 ;
 I MHT D
 .I '$$ENG S TXT=$J(MHT*KAM2,7,2)_$S(KAM2>1!(KAM2<-1):" = "_$J(MHT,5,2)_" X  "_$J(+KAM2,3),1:"")
 .I $$ENG S TXT=$S(KAM2>1!(KAM2<-1):$J("",17)_$J(+KAM2,3)_" X "_$J(MHT,5,2)_" = ",1:"")_$J(MHT*KAM2,7,2)
 .D S1
 .I HNT,'$$PCDET D PCHNT
 ;
 I $$PRMSHEMZ,ST["<" S $P(ST,"\",4)=$P($P(ST,"\",4),"<")
 ;
 I $$PCDET,$$CLRHR(HRPT)'?.P D
 .S TXT("R")=1,TXT=$$HBR^%L1FRM($$CLRHR(HRPT),20) D S1
 ;
 I $$PCHRHB(HRPT) D
 .S HRPT=$$CLRHRHB(HRPT)
 .I '$L(HRPT) Q
 .D PCHRP(HRPT,$$WDHR)
 ;
 I MHT,'NOMH S SUMT=SUMT+(MHT*KAM2)
 Q
 ;
 ;
MDP80 ;
 I '$D(PRINTF1(PRINT)) Q:PAR=""  D
 .D @$S($$DD^W4EZA(PAR):"HEAD4",1:"HEAD3")
 .S PRINTF1(PRINT)=1
 N HRP,MH,KAM,SUG,PAR1,PAR
 S PAR=N2 D PAR^W4P
 S HRP=$S(N2["A-":QNT,1:$P(ST,"\",4))
 I $G(REF)["VRM1(" S HRP=""
 I $$PRMSHEMZ,HRP["<" S HRP=$P(HRP,"<")
 S MH=$P(ST,"\",2)
 S KAM=+QNT
 S SUG="",PAR1=$P(ST,"\")
 I '$$ENG D
 .S TXT=$$HBR^%L1FRM(HRP,18)_" "_$J(MH*KAM,8,2)
 .S TXT=TXT_" "_$J(MH,7,2)_" "_$J(KAM,5)_"  "_$$PAR(PAR) D S1
 I $$ENG D
 .S TXT=$$PAR(PAR)_"  "_$J(KAM,5)_" "_$J(MH,7,2)_" "
 .S TXT=$J(MH*KAM,8,2)_" "_$$ENG^%L1FRM(HRP,18) D S1
 Q
 ;
 ;
PRMSHEMZ(STAM) ;
 Q $G(@$$^W4PRM@("SHEMZ"))
 ;
LINE22 N (JB,%ARG,%REM,ADOM,NP,PRINT,PRINTF1,ST,HZM,N1,N2,%MDP,TS0,TSS,SM,SUMT,REF,KAM,NOMH,P1HZHB1,P1HZTM,HSBENG,PAR,N23,N3,LINEPC,DLT2,PRTAWS,ARGHSBRKZ,%W1LNG,OKPAR,OKPAR2)
 G LINE21
 ;
 ;
LINE3 ;
 N PR31
 N N23,DLT2,REF,REF2,ST,PAR,MHT,CD,COL0
 S DLT2=16 S N23=N2
 S REF=$$^W4ORD_"(HZM,N1,N23,N3)",ST=$G(@REF)
 S REF2=$$^W4ORD_"(HZM,N1,N23)"
 ;
 S COL0=1
 I $P(ST,"\")'="" S PAR=$P(ST,"\"),COL0=$P(ST,"\",3) D  S PR31="" D LINE22 K PR31 Q
 .N N2
 .I '$P(ST,"\",3) S $P(ST,"\",3)=$P($G(@REF2),"\",3)
 .S ST=$P(ST,"\",2)_"\"_$P(ST,"\",7)_"\"_$P(ST,"\",3)_"\"_$P(ST,"\",6)
 .S N2=PAR
 ;
 S CD=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 S PAR=$P(ST,"\",4)
 S MHT=$P(ST,"\",7)
 ;
 S ST=$P(ST,"\",5)_"\"_MHT_"\"_$P(ST,"\",3)_"\"_$P(ST,"\",6)
 N N2 S N2=PAR
 D LINE22
 Q
 ;
 ;
PCHNT ;
 N TXT
 S TXT=$J(-MHT*HNT*.01,6,2)_" = "_$J(HNT,6,2)_"% dgpd" D S1
 Q
 ;
PAR2(NP,CD,DL) ;
 N SHEML
 I $$ENG S SHEML=$$SPA^%L1FRM($$SHEML^W4P(CD)) D  Q NMPAR1
 .I SHEML="" S SHEML=NP
 .D DLG(SHEML,DL)
 .I $$^%W1HB,SHEML'?.E1U.E S SHEML="<H>"_SHEML
 ;
 I $$LEHEM^W4HZMPC(CD) D
 .S NP=$C(27,45,2)_NP_$C(27,45,0),DL=DL+6
 ;
 D DLG(NP,DL)
 Q NMPAR1
 ;
 ;
LINER(CODP,SHEM,KAM,OFF) ; --
 ;;I $$PAPJ^W4PRM,$D(PRTSF),$P(CODP,"-")=3038,KAM>1 S KAM=KAM\2 ; -- SAKIT LAKOAH
 I $$PAPJ^W4PRM,$P(CODP,"-")=3038,KAM>1 S KAM=KAM\2 ; -- SAKIT LAKOAH
 ;
 I '$$ENG D
 .I $$RKZSUG D  Q
 ..S TXT=$$MDP("B")_$J(KAM,2)_$$MDP("N")_"  "_$$MDP("B")_$$HBR^%L1FRM($G(SHEM),16)_$$MDP("N")
 .
 .I KAM S TXT=$$MDP("B")_$J(KAM,2)_$$MDP("N")_" <----"
 .I 'KAM S TXT=$J("",10)
 .S TXT=TXT_$$HBR^%L1FRM($G(SHEM),OFF)_" "
 .S TXT=TXT_$S('$G(@$$^W4PRM@("NOHZMPAR")):$J($P(CODP,"-"),5),1:"")
 ;
 I $$ENG D
 .S TXT=$S('$G(@$$^W4PRM@("NOHZMPAR")):$J($P(CODP,"-"),5),1:"")
 .S TXT=TXT_$$ENG^%L1FRM($G(SHEM),OFF)_" "
 .I KAM S TXT=TXT_" ----> "_$$MDP("B")_$J(KAM,2)_$$MDP("N")
 .I 'KAM S TXT=TXT_$J("",10)
 D S1
 Q
 ;
TXT(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"<I>",$$MDP("I"))
 S TXT=$$RPL^%L1FRM(TXT,"<IE>",$$MDP("IE"))
 S TXT=$$RPL^%L1FRM(TXT,"<B>",$$MDP("B"))
 S TXT=$$RPL^%L1FRM(TXT,"<BB>",$$MDP("BB"))
 S TXT=$$RPL^%L1FRM(TXT,"<N>",$$MDP("N"))
 S TXT=$$RPL^%L1FRM(TXT,"<U>",$$MDP("U"))
 S TXT=$$RPL^%L1FRM(TXT,"<UE>",$$MDP("UE"))
 Q TXT
 ;
TXT1(TXT) ;
 N TXT1 S TXT1=TXT
 S TXT1=$$RPL^%L1FRM(TXT1,"<I>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<IE>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<B>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<BB>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<N>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<U>","")
 S TXT1=$$RPL^%L1FRM(TXT1,"<UE>","")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("B"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("BB"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("N"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("U"),"")
 S TXT1=$$RPL^%L1FRM(TXT1,$$MDP("UE"),"")
 Q TXT1
 ;
S1 ;
 Q:$G(PRINT)<3
 Q:$D(P1TNOPR)
 ;
 N TXT1 S TXT1=$$TXT1(TXT)
 S TXT=$$TXT(TXT)
 ;
 ;;W "S1.TXT="_TXT,!
 ;
S11 Q:$G(PRINT)<3
 Q:$D(P1TNOPR)
 S SM=+$G(SM)
 N PCN,ST S PCN=$O(@$$^W4PC@(PRINT,999999),-1)+1
 ;
 I TXT'["<H>",'$D(TS0)!'$D(TSS) D ^%L1TS
 ;
 I TXT["<H>" N TSS,TS1 D TSS^%L1TS S TXT=$$RPL^%L1FRM(TXT,"<H>","")
 ;
 S ST=$$MDP("N")_$J("",SM)_$TR(TXT,TS0,TSS)
 ;
 I TS0'=TSS D
 .S ST=$$RPL^%L1FRM(ST,$TR($$MDP("B"),TS0,TSS),$$MDP("B"))
 .S ST=$$RPL^%L1FRM(ST,$TR($$MDP("BB"),TS0,TSS),$$MDP("BB"))
 ;
 I TS0'=TSS S ST=$$RPL^%L1FRM(ST,$TR($$MDP("N"),TS0,TSS),$$MDP("N"))
 ;
 I $D(TXT("I")) D
 .S ST=$$MDP("I")_ST_$$MDP("IE")
 ;
S12 Q:$G(PRINT)<3  I PRINT=54,$$^%L1T2P(ST) G ES11
 Q:$D(P1TNOPR)
 I '$D(PCN) S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ;
 ;;W "N="_$G(N)_"  PCN="_$G(PCN)_"  ST="_$G(ST),!
 S @$$^W4PC@(PRINT,PCN)=ST
ES11 K TXT L -@$$^W4PC@(PRINT) Q
 ;
 ;
S1VT ;
 I $$BIGVT S TXT=$$MDP("BB")_TXT_$$MDP("N")
 D S1
 Q
 ;
S1P ;
 I $$BIGVT D
 .N MDPI,MDPIE S (MDPI,MDPIE)=""
 .I $$HZM^W4MSL(HZM) S MDPI=$$MDP("I"),MDPIE=$$MDP("IE") 
 .N VL S VL=$$SPA^%L1FRM(TXT) D
 ..I VL?.E1N.N.1"."1N.E S VL=$J(VL,14) S TXT=MDPI_$$MDP("BB")_VL_$$MDP("N")_MDPIE Q
 ..S TXT=$J("",14)_MDPI_$$MDP("BB")_" "_VL_" "_$$MDP("N")_MDPIE
 D S1
 Q
 ;
ST ;
 N N,ST,SOF,SK,OK S N="",SK=0 S:'$D(SM) SM=0
 ; --- DO 1 ? - SLUJ INF
 F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  Q:N'<1  S ST=$G(^(N)) D
 .L +@$$^W4PC@(PRINT):1
 .D S12
 ;
 S N=.9 F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  D
 .S ST=$G(^(N)),OK=1
 .I $L($$MDP("CUT")),ST[$$MDP("CUT") H:$D(W4DELAY) 1 D S12 H:$D(W4DELAY) .5 Q
 .;
 .I $TR(ST," <BN>","")="",$D(@$$^W4MAIN("TMPS111")@(N,"MAS")) Q
 .S TXT=$J("",SM)_$$SPR^%L1FRM(ST)
 .S SOF=$E(TXT,$L(TXT)-1,$L(TXT))
 .I SOF["_"!(SOF["@") D
 ..S TXT=$E(TXT,1,$L(TXT)-2)
 ..I SOF["@" S SK=SK+1 I '$D(USK(SK)) S OK=0
 .I OK D S1
 Q
 ;
CUT ;
 I $D(NOCUT) K NOCUT Q
 I $D(P1TNOPR) Q
 I '$D(%MDP("CUT")) D MDPPC
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
ODEF(ODF) ;
 I '$$ENG S TXT=$C(10)_$$MDP("B")_$J(ODF,7,2)_" : scer"_$$MDP("N"),TXT("R")="" D S1
 I $$ENG S TXT=$$MDP("B")_"Change : "_$J(ODF,7,2)_$$MDP("N"),TXT("R")="" D S1
 Q
ODEFTL(ODF) ;
 I '$$ENG S TXT=$$MDP("B")_$J(ODF,7,2)_" : yelza scer"_$$MDP("N"),TXT("R")="" D S1
 I $$ENG S TXT=$$MDP("B")_"Change by coupon : "_$J(ODF,7,2)_$$MDP("N"),TXT("R")="" D S1
 Q
 ;
TIP(ODF) ;
 I '$$ENG S TXT=$$MDP("B")_$J(ODF,7,2)_" : "_$$TIPPS_$$MDP("N") D S1
 I $$ENG S TXT=$$MDP("B")_"Tip     : "_$J(ODF,7,2)_$$MDP("N") D S1
 Q
 ;
TIPPS(STAM)
 I $G(@$$^W4PRM@("TIPPSHB")) Q $G(@$$^W4PRM@("TIPPS"))
 I '$$ENG Q "tih"
 Q "Tip"
 ;
EQ(MC1,MC2) ;
 N N,OK S OK=1
 S N="" F  S N=$O(@MC1@(N)) Q:N=""  I '$D(@MC2@(N)) S OK=0 Q
 I 'OK Q OK
 S N="" F  S N=$O(@MC2@(N)) Q:N=""  I '$D(@MC1@(N)) S OK=0 Q
 Q OK
 ;
INDTSF(MC,IND) ;
 N N,IND1 S IND1=$G(IND)
 S N="" F  S N=$O(@MC@(N)) Q:N=""  S IND1=$G(IND1)_"+"_N
 Q IND1
 ;
HSBRKZ(GLB) ; --- GLB -> ^VRM1($J)
 D ^W4HSBRKZ(GLB,"")
 Q
 ;
 ;
SLH ;
 Q:$G(P1HZTM)="S"  ; --- SEFAH
 Q:$D(P1TNOPR)
 S (TLUSH,KMTL)=0
 ;
 I $D(@$$^W4ORD@(HZM,"CB","ASR",1)) D
 .S TLUSH=$P(^(1),"*",8),KMTL=$P(^(1),"*",9)
 ;
 I $$TLUSH^W4L(NMB),'TLUSH S TLUSH=$$TLUSH^W4L(NMB)
 ;
 N AS S AS=$G(SHULA) I 'AS S AS=TSHL
 I 'KMTL,TLUSH S KMTL=AS\TLUSH+(AS#TLUSH>(TLUSH/3))
 I KMTL,TLUSH D
 .I '$$ENG S TXT=" g""y "_$J(TLUSH,2,2)_" ieeya miyelz "_KMTL_" ribn gilyl" D S1
 .I $$ENG S TXT="To courier do owe "_KMTL_" coupons in amount "_$J(TLUSH,2,2)_" NIS" D S1
 ;
 N PSL S PSL=$P($G(@$$^W4ORD@(HZM,"TM")),"\") ;;Q:'PSL
 I PSL S TXT=$J($G(@$$^W4GL("P1SL")@(PSL))_" gily",36) D S1
 
 I $D(@$$^W4ORD@(HZM,"ETTM")) D
 .S TXT="" D S1
 .I '$$ENG S TXT=$J("",15)_" _________ dnizg" D S1
 .I $$ENG S TXT="Sign _________" D S1
 .S TXT="" D S1
 Q
 ;
PCHRP(HR,DLT2H) ;
 N SMALL S SMALL=0 I $G(@$$^W4PRM@("NOBIGHRA")) S SMALL=1
 I $TR(HRP," ","")="" D  Q
 .I $G(REF)'="" D 
 ..N ST S ST=$G(@REF) ;;S ^AA("W4HZTH","REF")=REF_"~"_$G(@REF)
 ..I $P(ST,"\",14)["MVC" S TXT="" D S1
 ;
 D PCHR(HRP,$$WDHR,SMALL) S TXT="" D S1
 Q
 ;
 ;
PCHR(HR,DLT2H,SMALL) ;
 S HR=$G(HR)
 S HR=$$^W4CLRMN(HR)
 N %CHAST
 S HR=$$SPA^%L1FRM(HR)
 S HR=$$RPL^%L1FRM(HR,"[ ","-")
 S HR=$$RPL^%L1FRM(HR," ]","-")
 I $G(SMALL) S DLT2H=DLT2H*2
 D DLG^%L1FRM(HR,DLT2H)
 ;
 N N,TXT S N="" F  S N=$O(%CHAST(1,N)) Q:N=""  D
 .I '$G(SMALL) S TXT=$$MDP("B")_%CHAST(1,N)_$$MDP("N") D S11 Q
 .S TXT=%CHAST(1,N) D S11 Q
 Q
 ;
 ;
WDHR(STAM) ;
 Q 19
 ;
DETAIL(DUMP) ;
 I $$TODISPATH Q 1
 I $G(P1HZHB1)="B" Q 1
 I $G(P1HZHB1)="H" Q 1
 I $G(P1HZTM)="S"&($G(@$$^W4PRM@("TAWS"))<3) Q 1
 I $G(@$$^W4PRM@("DETAIL")) Q 1
 Q 0
 ;
GET(HZSCR,GLBV)
 D GA^W4SCREF(HZSCR,GLBV)
 Q
 ;
HEADNHZ(STAM)
 Q $D(@$$^W4MAIN("THZ")@("HEADN"))#2
 ;
SETHEADN ;
 S @$$^W4MAIN("THZ")@("HEADN")="" ;---------------- SHEELON
 Q
 ;
PCST(ST) ;
 S %L1STPC("RIGHT")="",%L1STPC("NOSHP")=""
 D ^%L1STPC(ST,$$^W4PC_"(PRINT)","%MDP")
 Q
 ;
KHZ Q:'$G(NMB)  Q:$$^W4MSD(NMB)
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("P1HL")@(NMB,N)) Q:N=""   I N'>HZM!(HZM=$$NEW^W4KLNEW) S I=I+1
 S KHZ=I+$G(@$$^W4GL("P1CHZM")@(NMB))
 Q
 ;
WEBSRV(STAM) ;
 I $$^W4SRVWIN(JB)=2 Q 1
 Q 0
 ;
RIKUZQ ;-- RIKUZ LEFI KAMUT
 D ^W4HSBRKZ($$^W4ORD_"("_HZM_")","Q")
 ;
 N N1,N2,N3,A,A2,A3,CD,CD2,CD3,FIRST
 ;
 I $D(@$$^W4MAIN("VRM0")@("P"))<10 Q
 ;
 D
 .I '$$ENG S TXT=$$MDP("B")_" ** "_$S($$PAPJ^W4PRM:"   fekix   ",1:"mihixt fekix")_" **" D S1
 .I $$ENG S TXT=$$MDP("B")_"** Items Concentration **" D S1
 ;
 I $$PAPJ^W4PRM D SORTRKZSUG
 ;
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM0")@("P",N1)) Q:N1=""  S A=$G(^(N1)),CD=$P(N1,"^") D
 .N DL S DL=22
 .I A S TXT="" D S1 D LINER(CD,$G(@$$^W4MAIN("VRM0")@("N",N1)),+A,DL) D
 ..S N2="",FIRST=1
 ..F  S N2=$O(@$$^W4MAIN("VRM0")@("P",N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),CD2=$P(N2,"^")
 ...I '$$USVIB($P(CD2,"-")) Q
 ...N PRTSF S PRTSF=""
 ...N DL S DL=18
 ...D LINER(CD2,$G(@$$^W4MAIN("VRM0")@("N",N1,N2)),$S($G(@$$^W4PRM@("TSFNEW")):"",1:+A2),DL)
 ;
 S SM=0 S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 S TXT="" D S1
 S TXT="" D S1
 K @$$^W4MAIN("VRM0"),@$$^W4MAIN("VRM1") 
 Q
 ;
 ;
RIKUZQ1(HZM) ;-- RIKUZ LEFI KAMUT
 N N1,N2,N3,A,A2,A3,CD,CD2,CD3,CDT,FIRST,QN,QNT
 ;
 N VRM0 S VRM0=$$^W4MAIN("VRM0") K @VRM0
 N CD
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N1)) Q:N1=""  I N1 D
 .S CD=$P($G(^(N1)),"\"),QN=$P($G(^(N1)),"\",5) Q:CD=""
 .D SETRKZ(CD,QN)
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  I N2 D
 ..I $D(^(N2))<10 D  Q
 ...S CDT=N2,QNT=$P($G(^(N2)),"\",3) Q:CDT=""
 ...D SETRKZ(CDT,QNT)
 ..
 ..S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  I N3 D
 ...N A S A=$G(^(N3))
 ...S CDT=$P(A,"\")
 ...I CDT D  Q
 ....S QNT=$P(A,"\",3)
 ....D SETRKZ(CDT,QNT)
 ...
 ...S CDT=$P(A,"\",4) Q:'CDT
 ...S QNT=$P(A,"\",3)
 ...D SETRKZ(CDT,QNT)
 ;
 I $D(@VRM0@("P"))<10 Q
 ;
 I $$PAPJ^W4PRM D SORTRKZSUG
 ;
 D
 .I $$RKZSUG D  Q; -- HALLO TEIMAN 
 ..S TXT=$$MDP("B")_$J(HZM,7)_" : dpnfd 'qn"_$$MDP("N") D S1
 ..D KAV
 .
 .I '$$ENG S TXT=$$MDP("B")_"** "_$S($$PAPJ^W4PRM:"   fekix   ",1:"mihixt fekix")_" **" D S1
 .I $$ENG S TXT=$$MDP("B")_"** Items Concentration **" D S1
 ;
 N IND
 S IND="" F  S IND=$O(@VRM0@("P",IND)) Q:IND=""  D
 .S QN=$G(^(IND)) Q:'QN
 .S CD=IND I IND["^" S CD=$$SPA^%L1FRM($P(CD,"^",2))
 .S TXT="" D S1 D LINER(CD,$$SHEM^W4P(CD),QN,22)
 ;
 S SM=0 S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 D
 .S TXT="" D S1
 .S TXT="" D S1
 ; 
 I $$RKZSUG D
 .D KAV
 .N TIME S TIME=$$DATCB^W4HZMST(HZM)
 .S TXT=$$MDP("B")_"    "_TIME_$$MDP("N") D S1
 .D CUT
 ;;K @$$^W4MAIN("VRM0")
 Q
 ;
 ;
HLTM()
 Q $$TAIMAN^W4PRM
 ;
PCHSBRKZ ;
 N P1HZTH,N1,N2,N3,REF,P1H,P1H1,ADOM
 S P1HZTH="" D HSBRKZ($$^W4ORD_"("_HZM_")")
 N HSBRKZ S HSBRKZ=$$RKZ(HZM)
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM1")@(N1)) Q:N1=""  D
 .K ADOM S SUMT=0,ERMDP=0,(ST,STHZ)=$G(^(N1))
 .S REF=$$BG^W4MAIN("VRM1")_"N1)" D LINE I 'ERMDP D
 ..S N2="" K PRINTF1
 ..;
 ..F P1H=1:1 S N2=$O(@$$^W4MAIN("VRM1")@(N1,N2)) Q:N2=""  S ST=$G(^(N2)) D
 ...S REF1=$$BG^W4MAIN("VRM1")_"N1,N2)" D:$D(@REF1)<10!HSBRKZ LINE2 ; -- WAS !HSBRKZ
 ...Q:HSBRKZ
 ...S N3="" F P1H1=1:1 S N3=$O(@$$^W4MAIN("VRM1")@(N1,N2,N3)) Q:N3=""  D
 ....S ST=$G(^(N3)) D LINE3
 ..
 ..I $D(PRINTF1) D
 ...I $$DD^W4EZA(+$P(STHZ,"\")) D  Q
 ....S TXT=$TR($J("",$$WDKAV-2)," ","-") D S1
 ...I '$G(@$$^W4PRM@("NOKOTTSF")) D
 ....S TXT=$TR($J("",$$MDP("GWPC")-7)," ","-") D S1
 ..
 ..I P1H>1 S TXT="" D S1
 ;
 K @$$^W4MAIN("VRM0"),@$$^W4MAIN("VRM1")
 Q
 ;
 ;
PCTLBIT ;
 N DLT,DLT2,DLT2H,ERMDP,LINEPC,ST,N1,N2,N3,TXT,PAR,OUT,MANA
 S DLT=23,DLT2=19,DLT2H=18,OUT=0
 S SUMB=0,SUMT=0,ERMDP=0
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"BIT",N1)) Q:N1=""  D
 .Q:$D(@$$^W4ORD@(HZM,"BIT",N1,"PC"))
 .S ST=$G(@$$^W4ORD@(HZM,N1)),REF=$$^W4ORD_"(HZM,N1)",PAR=$P(ST,"\")
 .N HR S HR=$P(ST,"\",8) I HR["ïçìåùì øáò" Q
 .I $P(ST,"\",2)[">" S OUT=1
 .S SUMB=SUMB+$P(ST,"\",7)
 .S LINEPC="S TXT="""" D S2" D LINE
 .S LINEPC="S TXT="""" D S11"
 .S @$$^W4ORD@(HZM,"BIT",N1,"PC")=""
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ..S ST=$G(@$$^W4ORD@(HZM,N1,N2)) D:$D(^(N2))<10 LINE2 D
 ...S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....S ST=$G(@$$^W4ORD@(HZM,N1,N2,N3)) D LINE3
 .I '$$ENG S TXT=$J(": lehia zaiq ---",GWPC-4) D S11
 .I $$ENG S TXT="Cancellation reason ---" D S11
 .S TXT=$J("<B>"_$$SIBA1^W4HZMST(HZM,N1),GWPC-4/2)_"<N>" D S1
 .N EX S EX=$$EX2KITCH^W4HZMST(HZM,N1)
 .I '$$ENG S TXT=$J("<B>"_$S(EX:"ok",1:"`l")_"<N>: gahndn `vi m`d ---",GWPC-6) D S1
 .I $$ENG S TXT="Out from kitchen : <B>"_$S(EX:"Yes",1:"No")_"<N>" D S1
 ;
 I '$$ENG D
 .S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 .S TXT=$$MDP("B")_$J(-SUMB,7,2)_$$MDP("N")_" : mekqa lhea k""dq" D S11
 .S TXT="" D S11
 .S TXT=$C(10,10)_"        ________ dnizg " D S11
 .I OUT S TXT="  * gahndn `vi hixty onqn '>' oniq * " D S11
 ;
 I $$ENG D
 .S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 .S TXT=$$MDP("B")_"Total of cancellations : "_$J(-SUMB,7,2)_$$MDP("N") D S11
 .S TXT="" D S11
 .S TXT=$C(10,10)_"Sign  ________ " D S11
 .;
 .I OUT S TXT="  * Symbol ">" show that dish out from kitchen * " D S11
 ;
 D CUT
 Q
 ;
 ;
PCTLHNH ;
 N DLT,DLT2,DLT2H,ERMDP,LINEPC,ST,N1,N2,N3,TXT,PAR,SUMH,TXT,HNP,AHP
 S DLT=23,DLT2=19,DLT2H=18,OUT=0
 S SUMH=0,ERMDP=0
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"HNH",N1)) Q:N1=""  D
 .Q:$D(@$$^W4ORD@(HZM,"HNH",N1,"PC"))
 .S ST=$G(@$$^W4ORD@(HZM,N1)),REF=$$^W4ORD_"(HZM,N1)",PAR=$P(ST,"\")
 .S STH=$G(@$$^W4ORD@(HZM,N1+1)),REFH=$$^W4ORD_"(HZM,N1+1)"
 .S HNP=$P(STH,"\",7)
 .S AHP=$P(STH,"\",1)
 .I $$HNHSHAA^W4DPHNH(STH) Q
 .S SUMH=SUMH+$P(STH,"\",7)
 .D LINE
 .I '$$ENG S TXT=$$MDP("B")_$J(HNP,7,2)_" = "_AHP_" dgpd" D S1
 .I $$ENG S TXT=$$MDP("B")_"Discount "_AHP_" = "_$J(HNP,7,2) D S1
 .S LINEPC="S TXT="""" D S11"
 .S @$$^W4ORD@(HZM,"HNH",N1,"PC")=""
 ;
 I '$G(GWPC) S GWPC=40
 S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 I '$$ENG S TXT=$$MDP("B")_$J(SUMH,7,2)_$$MDP("N")_" : mekqa zepnl zegpd k""dq" D S11
 I $$ENG S TXT="Total of dish discounts "_$$MDP("B")_$J(SUMH,7,2)_$$MDP("N") D S11
 S TXT="" D S11
 ;
 N HNHA S HNHA=$$HNHA^W4HZMST(HZM) I HNHA D
 .N HNHAH S HNHAH=$$HNHAH^W4HZMST(HZM)
 .I '$$ENG S TXT=$J(-HNHA,7,2)_$S(HNHAH:" = "_$J(HNHAH,5,2)_"%",1:"")_" :   %-a dgpd " D S11
 .I $$ENG S TXT="Discount in %  :"_$S(HNHAH:$J(HNHAH,5,2)_"%",1:"")_$J(-HNHA,7,2) D S11
 .S TXT="" D S11
 ;
 N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 I HNH1 D
 .I '$$ENG S TXT=$J(-HNH1,7,2)_$J("",5)_" :  g""ya zegpd" D S1
 .I $$ENG S TXT="Discount   :  "_$J(-HNH1,7,2)
 ;
 S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 I '$$ENG S TXT=$J(SUMH-HNHA-HNH1,7,2)_"     : ldpn zegpd k""dq" D S11
 I $$ENG S TXT="Total of discounts : "_$J(SUMH-HNHA-HNH1,7,2) D S11
 ;
 S TXT="" D S11
 I '$$ENG S TXT=$C(10,10)_"   ___________ dnizg" D S11
  I $$ENG S TXT=$C(10,10)_"    __________ oetlh" D S11
 ;
 D CUT
 Q
 ;
 ;
PCCARD ;
 N P1HZTH
 S P1HZTH="" D HSBRKZ($$^W4ORD_"(HZM)") K P1HZTH
 N N1,KAM,II,TXT,DAT
 S DAT=$$^%L1DC(P1DZ,1)
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM1")@(N1)) Q:N1=""  K ADOM S ST=$G(^(N1)) D
 .N PRT S PRT=$P(ST,"\") Q:'PRT  I '$G(@$$^W4PRM@("CARD",PRT)) Q
 .S KAM=$P(ST,"\",5) Q:KAM'>0
 .F II=1:1:KAM D  D CUT
 ..S TXT=$$MDP("B")_" "_$TR($J("",19)," ","*")_$$MDP("N") D S1 S TXT="" D S1
 ..I '$$ENG D
 ...S TXT=$$MDP("B")_"   '"_$$^%L1DC(P1DZ,9)_" mei "_DAT D S1 S TXT="" D S1
 ...S TXT=$$MDP("B")_" "_$$CENTRB^%L1FRM($$SPA^%L1FRM($P(ST,"\",3)),40)_$$MDP("N") D S1
 ..I $$ENG D
 ...S TXT=$$MDP("B")_"Date   "_DAT D S1 S TXT="" D S1
 ...S TXT=$$MDP("B")_" "_$$CENTRB^%L1FRM($$SPA^%L1FRM($P(ST,"\",3)),40)_$$MDP("N") D S1
 ..S TXT="" D S1
 ..S TXT=$$MDP("B")_" "_$TR($J("",19)," ","*")_$$MDP("N") D S1
 Q
 ;
 ;
PCMAM ;
 N TOMAM,LMAM,MAM
 N DTK S DTK=$$DTK(HZM)
 I $$NCAB^W4HZMST(HZM) S TOMAM=$S(SHUL>TSHL:TSHL+$S($$^W4TIPPD(DTK)&'$$^W4TIPCBU(DTK):$G(TIP),1:""),1:SHUL)
 I '$$NCAB^W4HZMST(HZM) S TOMAM=TSHL
 N AHMAM S AHMAM=$$MAMD^W4L(DTK)
 S MAM=$J((TOMAM*AHMAM)/(100+AHMAM),2,2)
 S LMAM=TOMAM-MAM
 ;
 I $$NOMAM^W4PRM D
 .N SUMCMAM,SUMNOMAM
 .N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 .;
 .D SMAM^W4DMAM(DT,HZM)
 .N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM"))
 .I KMAM<1 D
 ..S NOMAM=TOMAM-(TOMAM*KMAM)
 ..S MAM=MAM*KMAM
 ..S LMAM=TOMAM*KMAM-MAM
 ..I '$$ENG S TXT=$J(NOMAM,14,2)_"  : n""rn `ll" D S1
 ..I $$ENG S TXT="Before VAT : "_$J(NOMAM,14,2) D S1
 ;
 I $$NOMAM^W4L(NMB) S MAM=0
 ;
 I SHUL D
 .I '$G(@$$^W4PRM@("NOPCMAM")) D
 ..I '$$ENG D
 ...S TXT=$J(LMAM,14,2)_"  : n""rn iptl" D S1
 ...S TXT=$J(MAM,14,2)_"  : "_AHMAM_"% n""rn " D S1
 ..I $$ENG D
 ...S TXT="Before VAT : "_$J(LMAM,14,2) D S1
 ...S TXT="VAT "_$$MAMD^W4L($$DTK(HZM))_"%    : "_$J(MAM,14,2) D S1
 ;
 Q
 ;
DTK(HZM) ;
 Q $$^%L1DC($$DATK^W4HZMST(HZM),3)
 ;
INTERNET(HZM) ;
 I $E($$HZMLAK^W4HZMST(HZM))="W" Q 1
 Q 0
 ;
TODISPATH(STAM) ;
 I $G(P1HZHB1)="M" Q 1
 Q 0
 ;
MAZMIN(HZM) ;
 N MZMNM
 S MZMNM=$G(@$$^W4ORD@(HZM,"MZMNM"))
 I MZMNM?.P S MZMNM=$$MAZMIN^W4HZMST(HZM)
 I MZMNM?.P,$$HZM^W4MSL(HZM) S MZMNM=$$MAZMIN^W4HZMST(HZM)
 I MZMNM?.P,$$HZM^W4MSL(HZM) S MZMNM=$$NAME^W4HZMST(HZM)
 Q MZMNM
 ;
NOMHOTH(STAM) ;
 Q $G(@$$^W4PRM@("NOMHOTH"))
 ;
NOMHOTHP(IND) ;
 I '$$NOMHOTH Q 0
 N ST S ST=$G(@$$^W4ORD@(HZM,IND+1))
 N AHP S AHP=$P(ST,"\")
 I AHP'="-100%" Q 0
 Q 1
 ;
HZM(HZM) ;
 I $G(HZM)<0 D
 .S HZM=+$G(@$$^W4ORD@(HZM,"NOMORD"))
 Q HZM
 ;
RKZ(HZM) 
 I $G(HZM),$$HZM^W4MSL(HZM),$D(P1HZHB)!$D(P1HZHB2),$$TMMSL^W4PRM Q 0
 I $G(ARGHSBRKZ)?1N Q ARGHSBRKZ
 Q $G(@$$^W4PRM@("HSBRKZ"))
 ;
ENG(STAM) ; 
 I $D(HSBENG) Q 1
 I $D(NOPCLOAZ) Q 0
 ;;I $$^W6,$G(@$$^W4PRM@("HBHBR")) S NOPCLOAZ="" Q 0  ; -- 20/10/24
 I $G(@$$^W4PRM@("HBHBR")) S NOPCLOAZ="" Q 0  ; -- 20/10/24
 I $$^%W1LNG="E" Q 1 
 Q 0 
 ;
MDPPC ; 
 D MDPPC^W4HZTM 
 Q 
 ;
PC(TXT) ; 
 N ST1,ST2
 S ST1=$P(TXT,":",1,$L(TXT,":")-1),ST2=$P(TXT,":",$L(TXT,":"))
 I ST2["=" S ST2=$P(ST2,"=")
 Q $$PC1(ST1,25)_" : "_$$PC1($$HBR^%L1FRM(ST2,11))
 ;
PC1(ST,LN) ;
 I '$G(LN) S LN=$L(ST)
 I $E(ST)?1U S ST=$$FUNC^%UCASE(ST)
 S ST=$TR(ST,TS0,TSS) 
 S ST=$J(ST,LN)
 Q ST
 ;
PCCAEMV(HZM,IND)
 I '$$PCCA1^W4PRM!($$PCCA1^W4PRM=2) D
 .D ^%L1TS
 .N N,A,ST S N="" F  S N=$O(@$$^W4ORD@(HZM,"EMV",IND,1,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S TXT=$$PC(A)
 ..D S11
 .D CUT
 ;
 I '$$PCCA1^W4PRM!($$PCCA1^W4PRM=1) D
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,"EMV",IND,2,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S TXT=$$PC(A)
 ..D S11
 .S TXT=$C(10,10)_"___________ 'lh" D S11
 .S TXT=$C(10,10)_"___________ dnizg" D S11
 .D CUT
 Q
 ;
ENGNAME(TX,LN) ; 
 S TX=$$ENG^%L1FRM(TX,LN)
 I TX["-" D
 .N TX1 S TX1=$$SPA^%L1FRM($P(TX,"-",1))
 .I $E(TX1)?1U S TX=TX1
 Q TX
 ;
HBNAME(TX,LN) ;
 S TX=$$HBR^%L1FRM(TX,LN)
 I TX["-" D
 .N TX1 S TX1=$$SPA^%L1FRM($P(TX,"-",1))
 .I $E(TX1)?1U S TX=$P(TX,"-",2,20)
 Q TX
 ;
BIGVT(STAM) ; 
 Q $G(@$$^W4PRM@("BIGVT"))
 ;
ROLI(STAM) ; 
 ;I $G(@$$^W4PRM@("ASH","MASOF"))=5070647015 Q 1
 I $G(@$$^W4PRM@("ROLI"))=1 Q 1
 Q 0 
 ; 
USROLI(CD,NM,HR) ;
 I '$G(@$$^W4PRM@("ROLI")) Q 0
 I '$$TODISPATH Q 0
 N PR S PR=0
 N CAD S CAD="cva"
 I NM[CAD!($G(HR)[CAD) S PR=1  
 N SUG1 S SUG1=$$SUG1^W4P(CD)
 I SUG1["dizy"!(SUG1["diizy") S PR=1
 I SUG1["gepiw" S PR=1
 ;;I SUG1[CAD S PR=1
 I NM["gepiw" S PR=1
 I NM["min" S PR=1
 I NM["dizy" S PR=1
 I NM["dcpenil" S PR=1
 Q PR  
 ;
KAV ; 
 N SM,TXT S SM=0 S TXT=$TR($J("",$$WDKAV)," ","-") D S1
 Q
KAV2 ; 
 N SM,TXT S SM=0 S TXT=$TR($J("",$$WDKAV)," ","=") D S1
 Q
KAVB ; 
 N SM,TXT S SM=0 S TXT=$$MDP("B")_$TR($J("",$$MDP("GWPC")\2)," ","-")_$$MDP("N") D S1
 Q
KAV2B ; 
 N SM,TXT S SM=0 S TXT=$$MDP("B")_$TR($J("",$$MDP("GWPC")\2)," ","=")_$$MDP("N") D S1
 Q
 ;
NOSHULAM(HZM) ; 
 N HZML S HZML=$$HZMLAK^W4HZMST(HZM)
 I $E(HZML)="W",$$CODTS^W4HZMST(HZM)=3,$$ITRA^W4HZMST(HZM)>.5,'$P($G(@$$^W4ORD@(HZM,"CB")),"\",4) D
 .N TXT D KAV 
 .S TXT=$$MDP("BB")_"! dnley  `l  dpnfd"_$$MDP("N") D S1
 .S TXT="" D S1
 .S TXT=$$MDP("BB")_"! xeyi` lawl dpkdl"_$$MDP("N") D S1
 .D KAV
 Q 
 ;
WDKAV(STAM) ; 
 Q 39 
 ;
USVIB(PAR) ;
 I $G(PAR),$$CONC(PAR) Q 1
 Q 0
 ;
CONC(PAR) ; 
 I $$PAPJ^W4PRM,PAR=648 Q 0
 N SUGP S SUGP=$$SUG^W4P(PAR)
 I $$PAPJ^W4PRM,SUGP=6!(SUGP=48) Q 1
 I $$PAPJ^W4PRM,SUGP=8!(SUGP=5)!(SUGP=53) Q 1
 I $$PAPJ^W4PRM Q 0
 ;
 N SUGC S SUGC=$G(@$$^W4PRM@("RKZSUG"))
 I SUGC,(","_SUGC_",")[(","_SUGP_",") Q 1
 ;
 I $G(PAR)="" Q 0
 I $D(@$$^W4GL("W4ITCNC")@(PAR)) Q 1
 Q 0  
 ;
SETRKZ(CD,QN) 
 I $G(CD)="" Q
 I 'QN Q
 I '$$USVIB(CD) Q
 S @VRM0@("P",CD)=$G(@VRM0@("P",CD))+QN
 Q 
 ;
HBHR(STAM) ;
 I '$G(HZM) Q 0
 I $$HBHR^W4PRM=2,$$HZM^W4MSL(HZM),$D(P1HZHB)!$D(P1HZHB2) Q 1
 I $$HBHR^W4PRM=1,$D(P1HZHB)!$D(P1HZHB2) Q 1
 I $$NOTM^W4PRM,$$TMMSL^W4PRM,$$HZM^W4MSL(HZM),$D(P1HZHB)!$D(P1HZHB2) Q 1
 Q 0 
 ;
ENGST(ST) ; 
 I $$^%W1LNG'="H" Q 1
 N I,OK S OK=1
 F I=1:1:$L(ST) I $A(ST,I)>96,$A(ST,I)<123 S OK=0 Q 
 Q OK
 ;
PAR2KITCH(PAR) ;
 I $G(@$$^W4PRM@("PAR2KTCH")),$$TODISPATH,$$PRINTIG^W3PRMDP(PAR) Q 1
 Q 0
 ;
 ;
SORTRKZSUG ;
 N N1,CD
 N VRM00 S VRM00=$$^W4MAIN("VRM00") K @VRM00
 ;
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM0")@("P",N1)) Q:N1=""  S A=$G(^(N1)),CD=$P(N1,"^") D
 .N SUG S SUG=+$$SUG^W4P(CD)
 .N IND S IND=$J(SUG,5)_"^"_$J(N1,9)
 .M @VRM00@("P",IND)=@$$^W4MAIN("VRM0")@("P",N1)
 .M @VRM00@("N",IND)=@$$^W4MAIN("VRM0")@("N",N1)
 ;
 K @$$^W4MAIN("VRM0")@("P"),@$$^W4MAIN("VRM0")@("N")
 ;
 M @$$^W4MAIN("VRM0")@("P")=@VRM00@("P")
 M @$$^W4MAIN("VRM0")@("N")=@VRM00@("N")
 K @VRM00
 Q
 ;
 ;
RKZSUG() ; 
 I $G(@$$^W4PRM@("RKZSUG"))?.E1N.E Q 1
 Q 0  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZTH00
W4HZTH ; HAZAGAT TEUDAT MISHLOAH & HESBONIT                                                  [ 31.10.12 10:19 ] [ 30.08.12 17:44 ] [ 29.08.12 08:49 ]
 N (JB,%ARG,%REM,HZM,GLBV,GLBV1,%SCV,USK,P1HZHB,P1HZTM,P1HZHB1,P1HZHB2,P1HZHB3,P1HZHB5,BLIPR,MAKOR,TMASR,HSBENG,P1HZMM,PRBIT)
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 ;
 D ^W4IN,^W4INP D ^W4MDPPC
 ;
 I $G(P1HZHB1)="M",$G(@$$^W4PRM@("MDPMSL")) D ^W4MDPMSL($G(P1HZHB1("MSL")))
 ;
 I $D(P1HZHB1),P1HZHB1=1 D ^W4MDPJRF($P(@$$^W4ORD@(HZM),"\"))
 ;
 S LINEPC="S TXT="""" D S11"
 I '$D(%MDP) Q
 ;;**;; I '$D(%MDP) U 0 S %SAY=" ! "_$P_" seqnl zxcben `l zqtcn " X %XMSGV(1) K @$$^W4MAIN("TMPS111") Q
 ;
 I $G(%MDP("SUG"))=7!($G(%MDP("SUG"))=5) D  S ST=$G(%MDP("NOCOND")) D S12
 .S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ;
 S %SCRN=HZSCR S I=0,SM=0 K PRINTF L +@$$^W4PC@(PRINT):2
 I %MDP("GWPC")=80 S SM=10
 ;
 I $G(@$$^W4PRM@("LOGOMDP")) D
 .S @$$^W4MAIN("TMPS111")@(.1)=$C(28)_"p"_$C(1)_$C(1)
 ;
 I $E($$HZMLAK^W4HZMST(HZM))="W" D
 .S TXT=$G(%MDP("B"))_"!! hpxhpi` zpnfd !!"_$G(%MDP("N")) D S1
 ;
 D ST ;-- PRINT HEADER ( FROM P1HZTM )
 K @$$^W4MAIN("TMPS111") S SM=0
 ;
 I %MDP("GWPC")=80 D
 .S (TXT,TXT1)="      dxrd        :  mekq  :  xign  : zenk :         hixt xe`ze cew        "
 .S TXT=$TR($J("",$L(TXT1))," ","-") D S1
 .S TXT=TXT1 D S1
 .S TXT=$TR($J("",$L(TXT1))," ","-") D S1
 ;
 S ERMDP=0,NP=0 S NMB=$P(@$$^W4ORD@(HZM),"\")
 S NOMH=0 I $D(P1HZTM),$$^W4MSL(NMB),$$SHIVUK^W4L(NMB) S NOMH=1
 I $G(TMASR) S NOMH=1
 I $D(P1HZHB),$G(@$$^W4ORD@(HZM,"HSBENG")) S HSBENG=""
 ;
2 ;
21 G:$D(BLIPR) 22
 ;
 I $D(P1HZHB1("R")) D RIKUZQ G END ;------- RIKUZ LEFI KAMUT (BE-52)
 ;
 ;------- HADPASAT HESHBONIT RIKUZ -----
 ;
 I $G(@$$^W4PRM@("HSBRKZ")),$G(P1HZHB1)'="M",$G(P1HZHB1)'="B" D PCHSBRKZ G 210
 ;
 ;--------- HADPASAT TLUSH BITUL
 I $G(P1HZHB1)="B" D PCTLBIT G END
 ;
 ;--------- HADPASAT HESB. RAGILA
 ;
 F N1=$S($G(P1HZHB1)="M"&$G(P1HZMM):P1HZMM,1:1):1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .S (ST,STHZ)=$G(^(N1))
 .K ADOM S SUMT=0,ERMDP=0 S REF=$$^W4ORD_"(HZM,N1)"
 .I $D(^(N1))>9 X LINEPC
 .D LINE Q:ERMDP
 .S N2="" K PRINTF1,N3
 .
 .F P1H=1:1 S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  S ST=$G(^(N2)) D:$D(^(N2))<10 LINE2 D
 ..S N3="" F P1H1=1:1 S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  S ST=$G(^(N3)) D LINE3
 .
 .I $D(PRINTF1) D
 ..I $D(@$$^W4GL("P1EZA")@(+$P(STHZ,"\"))) D  Q
 ...S TXT=$TR($J("",%MDP("GWPC")-7)," ","-") D S1
 ..I '$G(@$$^W4PRM@("NOKOTTSF")) S TXT=$TR($J("",%MDP("GWPC")-7)," ","-") D S1
 ..I '$$NOPIZA^W4P(+$P(STHZ,"\")) D
 ...S TXT=$J(KAM*SUMT,7,2)
 ...S TXT=TXT_$S(KAM>1!(KAM<-1):" ="_$J(SUMT,6,2)_" X "_$J(KAM,3),1:"")
 ...S TXT=TXT_": zetqez k""dq" D S1
 .
 .I P1H>1!($G(P1H1)>1) S TXT="" D S1
 ;
 ;
210 ;--------------- HEARA ----------------------------
 I $D(P1HZTM)!$D(P1HZHB1),$$^W4MSL(NMB)!$G(@$$^W4PRM@("HRA2")) D
 .S HRA2=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\") Q:'$L(HRA2)
 .S TXT("R")="",TXT=$TR($J("",%MDP("GWPC")-3)," ","-") D S1
 .S TXT("R")="",TXT=$J(HRA2,33) D S1
 ;
 S TXT("R")="",TXT=$TR($J("",%MDP("GWPC")-3)," ","-") D S1
 ;
 I $D(@$$^W4GL("PRTBH")) S OKBH=0 D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:OKBH
 ..S PAR=$P($G(^(I)),"\") I $L(PAR),$D(@$$^W4GL("PRTBH")@(PAR)) S OKBH=1
 .I OKBH S TXT="* dgpd `ll - ziakeka mipneqn mihixt *" D S1 S TXT="" D S1
 ;
 ;------------------ HELEK TAHTON ----------------------
 ;
22 D HEADN
 ;
 I $D(@$$^W4ORD@(HZM,"PCMVC")) D ^W4PCMVC
 ;
 ;;S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4GL("P1HZ0")_"(HZM)" D ^%S1GC1 ; -- GIBUY
 ;;S @$$^W4GL("P1HZ0")=$G(@$$^W4ORD)
 ;
 I $D(P1HZHB)!$D(P1HZHB2),$$^W4DLPK(NMB) D  I $G(@$$^W4PRM@("TAWS")) K BLIPR,P1HZHB,P1HZHB2 S P1HZTM="S",NOMH=1 D HEADS,HEAD4 G 2 ;--- SEFAH
 .S MZMNM=$G(@$$^W4ORD@(HZM,"MZMNM"))
 .;;**;;I $G(@$$^W4PRM@("SEFAHNM")),$G(@$$^W4ORD@(HZM,"MZMNM"))="" S %GET="oinfnd my++24,60,HH,,,C#++12,H,I" D ^%L1GET S MZMNM=%S I %S'="",%TO="" S @$$^W4ORD@(HZM,"MZMNM")=%S
 ;
 I $G(P1HZTM)="S" K P1HZTM
 ;
END L  Q
 ;-------------------- END OF BODY -----------------
 ;
 ;
HEAD2 ;
 S TXT=" 4 : 3 : 2 : 1 :--- ztqez xe`z ---:"
 I $D(HSBENG) S TXT=" 4 : 3 : 2 : 1 :--- SUPPLEMENTS --:"
 D S1
 Q
 ;
HEAD3 ;
 Q:$G(@$$^W4PRM@("NOKOTTSF"))
 S TXT=":------------------ ztqez xe`z ---:"
 I %MDP("GWPC")=80 S TXT="-------------------------------   zetqez   ------------------------------"
 I $D(HSBENG) S TXT=":----------- SUPPLEMENTS ---------:"
 D S1
 Q
 ;
HEAD4 ;
 S TXT=": zenk :----------- dgex` hext -----:"
 I %MDP("GWPC")=80 S TXT="------------------------------- dgex` hexit ------------------------------"
 I $D(HSBENG) S TXT=": QUAN :--------- LUNCH ITEMS ------:"
 D S1
 Q
 ;
 ;
HEADS ;----------------------- PRINT SEFAH -----------
 I $G(@$$^W4PRM@("MDPSEF")) D  ; -- TO SPECIAL PRINTER
 .S PRINT=@$$^W4PRM@("MDPSEF")
 .N SUG S SUG=$G(@$$^W4PRM@("MDPSEF","SUG"),6)
 .S %MDP("SUG")=SUG
 .D TV^W4MDP(SUG)
 .N PCN,TXT,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 .S TXT=$G(%MDP("BEEP"))_$G(%MDP("BEEP")),ST=TXT D S11
 ;
 S TXT=%MDP("B")_%MDP("R")_"* * *  g t q  * * *"_%MDP("RL")_%MDP("N") D S11
 S TXT="" D S11
 ;
 I $G(@$$^W4ORD@(HZM,"ETHB")) D
 .S TXT=%MDP("B")_$J($G(@$$^W4ORD@(HZM,"ETHB")),6)_" zipeaygl "_%MDP("N") D S11
 ;
 I $G(@$$^W4ORD@(HZM,"ETHB2")) D
 .S TXT=%MDP("B")_$J(+$G(@$$^W4ORD@(HZM,"ETHB2")),6)_" i`xy` oeaygl "_%MDP("N") D S11
 ;
 S TXT=%MDP("B")_$J(HZM,9)_" dpnfd"_%MDP("N") D S11 S TXT="" D S11
 ;
 I $L($G(MZMNM)) D
 .S TXT=%MDP("B")_$J(MZMNM,12)_": oinfnd"_%MDP("N") D S11 S TXT="" D S11
 ;
 I $G(MKBL) D
 .S TXT=%MDP("B")_$J($$SHORT^W4NAME(MKBL),12)_": cilwnd"_%MDP("N") D S11
 .S TXT="" D S11
 ;
 N %TIM
 S %TIM=$ZD($H,"24:60") S TXT=%TIM_" "_$$^%L1DC($H,1)_" : dwtd onf" D S11
 Q
 ;
 ;
HEADN ;----------------- HAZAGAT TASHLUMIM & KOTERET TAHTONA
 D GET(HZSCR,GLBV)
 I %MDP("GWPC")=80 S SM=14
 I $D(P1HZHB2),$G(TMASR) G HEADNA
 I NOMH D SLH,CUT Q
 N %SCRN S %SCRN=HZSCR
 ;
 N T S T=0 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S T=T+$P(^(I),"\",7)
 ;
 I $D(P1HZHB1)!($D(P1HZHB2)&'$D(BLIPR))!$D(P1HZHB3)!$$^W4DLPK(NMB)!$D(P1HZTM)!($D(P1HZHB)&'$D(BLIPR)) D
 .I '$D(HSBENG) D  ; -- HEBREW
 ..S TXT=%MDP("B")_$J(T,7,2)_" :  k""dq"_%MDP("N") D S1
 ..
 ..I DMSH D
 ...S TXT=%MDP("B")_$J(DMSH,7,2)_" : "_$S($$^W4MSL(NMB):"gelyn ",1:"zexiy ")
 ...S TXT=TXT_$S($G(DMSAH):$J(DMSAH,1,1)_"%",1:"inc")_%MDP("N") D S1
 ..
 ..I HNHAH D
 ...N HNHA S HNHA=$$HNHA^W4HZMST(HZM) I HNHA<0 S HNHA=-HNHA
 ...S TXT=%MDP("B")_$J(HNHA,7,2)_" = "_$J($S(HNHAH>0:HNHAH,1:-HNHAH),6,1)_"% "
 ...I HNH>0 S TXT=TXT_"dgpd"_%MDP("N")
 ...I HNH<0 S TXT=TXT_"zexiy inc"_%MDP("N")
 ...S TXT("R")=1 D S1
 ..
 ..I $$LKHNH^W4HZMST(HZM) D  ; -- HANAHAT LAKUAH
 ...N LKHNH S LKHNH=$$LKHNH^W4HZMST(HZM)
 ...S TXT=%MDP("B")_$J(LKHNH,7,2)_" :(g""y)"
 ...S TXT=TXT_" dtwd zegpd"_%MDP("N"),TXT("R")=1 D S1
 ..
 ..I $$HNH1^W4HZMST(HZM) D  ; -- HANAHOT NOSAFOT
 ...N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 ...S TXT=%MDP("B")_$J(HNH1,7,2)_" :(g""y)"
 ...S TXT=TXT_"ztqep dgpd"_%MDP("N"),TXT("R")=1 D S1
 ..
 ..I HNH!DMSH S TXT=%MDP("B")_$J(TSHL,7,2)_" : llek k""dq"_%MDP("N") D S1
 .
 .
 .I $D(HSBENG) D  ; ----- ENGLISH
 ..S TXT=%MDP("B")_"TOTAL : "_$J(T,7,2)_" NIS"_%MDP("N") D S1
 ..
 ..I DMSH S TXT=%MDP("B")_"NIS "_$J(DMSH,7,2)_" : SERVICE"_%MDP("N") D S1
 ..
 ..I HNHAH D
 ...S TXT=%MDP("B")_"DISCOUNT "_$J(HNHAH,6,1)_"% = "_$$HNHA^W4HZMST(HZM)_" NIS",TXT("R")=1 D S1
 ..
 ..I $$HNH1^W4HZMST(HZM) D
 ...N HNH1 S HNH1=$$HNH1^W4HZMST(HZM)
 ...S TXT=$S(HNH>0:"DISCOUNT",1:"ADDIT.")_%MDP("N"),TXT("R")=1 D S1
 ...S TXT=%MDP("B")_$J($S(HNH1>0:HNH1,1:-HNH1),7,2)_" NIS "
 ..
 ..I DMSH!HNH S TXT=%MDP("B")_$J(TSHL,7,2)_" NIS "
 ;
 ;
 N VT S VT=$J("",5)
 ;
 I SHUL!SHULA,SHUL+SHULA'<TSHL D  ;--- SHULAM BSUG TASHLUM EHAD
 .I SHUL'>(MZM+ODEF),SHUL'<0,'SHULA S VT=$S($D(HSBENG):"CASH",1:"onefn")
 .I SHUL=CHK,'SHULA S VT=$S($D(HSBENG):"  wiy",1:"CHECK")
 .I SHUL=CA,'SHULA S VT=$S($D(HSBENG):"CR.CARD",1:"  `""k")
 .I SHUL=TL,'SHULA S VT=" yelz"
 .I SHULA,'SHUL S VT=$S($D(HSBENG):"CREDIT",1:" dtwd")
 ;
 ;
 I $D(P1HZHB3)!$D(P1HZHB)!$D(P1HZHB1) D  ;--- HESBON OR HESHBONIT
 .;----------- IGUL ---------------
 .I $G(MAKOR)!$D(P1HZHB1),$G(@$$^W4PRM@("IGUL")),+TSHL\1'=+TSHL&($G(@$$^W4PRM@("IGUL"))=1)!($G(@$$^W4PRM@("IGUL"))=2&(+TSHL'=$J(TSHL,1,1))),TSHL-SHUL-SHULA<-1!(TSHL-SHUL-SHULA>1) D
 ..N PUTHNH D ^W4IGUL I HNH2 D
 ...N HNH S HNH=$$HNH^W4HZMST(HZM)+HNH2
 ...F PUTHNH="HNH2","HNH","TSHL" D
 ....D PUT^W4SCREF($$^W4ORD_"(HZM)","P1HZMS",1,PUTHNH)
 ...I $$D^W3TMPORD(JB)=11 D  ; -- ???
 ....F PUTHNH="HNH","TSHL" D
 .....D PUT^W3HZMST(HZM,PUTHNH,$G(@PUTHNH))
 .
 .I $G(HNH2),'SHUL!'SHULA!'$D(P1HZHB) D
 ..S TXT=%MDP("B")_$J(-HNH2,7,2)_" : "_$S($D(HSBENG):"ROUND.",1:"lebir")_%MDP("N") D S1
 .
 .Q:$D(P1HZHB1)
 .
 .;----------------- HAKAFA, LIFN MAM ------
 ;
 I SHUL!'SHULA D  ; ------------- LE TASHLUM ----
 .;;S TXT=%MDP("B")_$J(TSHL-SHULA+TIP,7,2)_$S($D(HSBENG):" : DUE",1:" :  melyzl")_%MDP("N") D S1
 .S TXT=%MDP("B")_$J(TSHL+TIP,7,2)_$S($D(HSBENG):" : DUE",1:" :  melyzl")_%MDP("N") D S1
 ;
 ;
 I $D(P1HZTM),'$G(NOMH) D  ; -------------- TEUDAT MISHLOAH
 .I SHULA S TXT=$J("",15)_$J(SHULA,7,2)_" dtwd" D S1
 .I $G(CA),CA<TSHL S TXT=$J("",15)_$J(CA,7,2)_"     `""k" D S1
 .N VT S VT=$S($G(CODTS)=2:"  wiy",1:"onefn")
 .I TSHL-SHULA-$G(CA)>0 D
 ..S TXT=$J("",15)_$J(TSHL-SHULA-$G(CA),7,2)_" "_VT D S1
 ;
 I $D(P1HZHB3),TSHL-SHULA+TIP D  ;---- FIKTIV. HMK (MISHLOHIM) - SUGEI TASHLUM
 .S TXT=%MDP("B")_$J(TSHL-SHULA+TIP,7,2)_" : "_%MDP("N")_VT_%MDP("B")_" mley"_%MDP("N") D S1
 .I $G(CA) S TXT=$J("",18)_$J(CA,7,2)_"     `""k" D S1
 .N VT I $G(CODTS)=1 S VT="  onefn"
 .I $G(CODTS)=2 S VT="    wiy"
 .I TSHL-SHULA-$G(CA)>0.5 D
 ..S TXT=$J("",18)_$J(TSHL-SHULA-$G(CA),7,2)_"   "_VT D S1
 ;
 ;
 I '$D(P1HZTM),'$D(P1HZHB3),SHUL+ODEF+ODEFTL D  ; -- HESBON OR HESBONIT
 .I '$D(HSBENG) D
 ..S TXT=%MDP("B")_$J(SHUL+ODEF+ODEFTL,7,2)_" : "_%MDP("N")
 ..N ZG S ZG="mley"
 ..I $D(P1HZHB) S ZG="z-ayg jxr",VT=""
 ..E  S VT=VT_" "
 ..S TXT=TXT_VT_%MDP("B")_ZG_%MDP("N") D S1
 ..I $D(P1HZHB) D
 ...D PCMAM
 ...S TXT=%MDP("B")_$J(": mley",19)_%MDP("N") D S1
 .I $D(HSBENG) D
 ..N ZG S ZG="PAID"
 ..I $D(P1HZHB) S ZG="INVOICE VALUE",VT=""
 ..S TXT=%MDP("B")_$J(SHUL+ODEF+ODEFTL,7,2)_" : "_ZG_VT_%MDP("N") D S1
 ..I $D(P1HZHB) S TXT=%MDP("B")_$J(": PAID",19)_%MDP("N") D S1
 ;
 ;
 I $D(P1HZHB)!$D(P1HZHB1)!($D(P1HZHB5)&'$D(P1HZHB)) D  ;-------- HESBONIT ! HESHBON (NE ASHRAJ)
 .I CHK D
 ..I $D(@$$^W4ORD@(HZM,"CB","CH"))#2 D ^W4GTVCH(^("CH"),"CH") D CH
 ..N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","CH",I))  D ^W4GTVCH(^(I),"CH") D CH
 .
 .I MZM,MZM<SHUL!SHULA!$D(P1HZHB) D
 ..S TXT=$J("",15)_$S($D(HSBENG):" CASH",1:" onefn ")_$J(MZM+ODEF,7,2) D S1
 .
 .I $G(@$$^W4PL@("MATB")),$D(@$$^W4ORD@(HZM,"CB","M")) D  ; ----MATBEA
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","M",N)) Q:N=""  D
 ...N A S A=$G(^(N))
 ...I N>1 D
 ....S TXT="   g""y "_$J(A*$P(A,"!",2),7,2)_"  = "
 ....S TXT=TXT_$J($P(A,"!",2),6,3)_" * "_$P($G(@$$^W4GL("P1SUGM")@(N)),"\",2)
 ....S TXT=TXT_" "_$J(A,6,2) D S1
 .
 .I TL,TL<SHUL!SHULA,TL>0 S TXT=$J("",15)_"  yelz "_$J(TL+ODEFTL,7,2) D S1
 .I TL,TL>SHUL!SHULA,TL<0 S TXT=$J("",15)_"  yelz "_$J(TL+ODEFTL,7,2) D S1
 .
 .I CA S TXT=$J("",15)_$S($D(HSBENG):" CR.CARD ",1:"   `""k ")_$J(CA,7,2) D S1
 .
 .I SHULA,SHUL D
 ..D  Q
 ...S TXT=$J("",15)_$S($D(HSBENG):" CREDIT",1:"  dtwd ")_$J(SHULA,7,2) D S1
 .
 .D  ;  ---------- TIP, ODEF --------------
 ..I $G(TIP) D TIP(TIP)
 ..I ODEF>0 D ODEF(ODEF) Q
 ..I ODEFTL>0 D ODEFTL(ODEFTL) Q
 ..I MZM,MZM<SHUL,MZM<0 D ODEF(-MZM) Q
 ..I TL,TL<SHUL,TL<0 D ODEFTL(-TL) Q
 ..I TSHL+$G(TIP)<SHUL,TSHL>0 D ODEF(SHUL+SHULA-TSHL-$G(TIP)) Q
 ..I TSHL>SHUL,TSHL<0 D ODEF(SHUL+SHULA-TSHL-$G(TIP)) Q
 ;
 ;;I MAKOR,$D(P1HZHB) D
 .N SUM5 S SUM5=$$SUM5^W4T1(HZM)
 .I SUM5,TSHL-SUM5-SHULA>.9 D
 ..S P1HZHB5(1)=TSHL-SUM5-SHULA D MSP5^W4MKR
 ;
HEADNA ;
 I TSHL>(SHUL+SHULA),$D(P1HZHB1) D
 .S TXT=%MDP("B")_$J(TSHL-SHUL-SHULA,7,2)
 .S TXT=TXT_$S($D(HSBENG):" : BALANCE",1:" :  dxzi")_%MDP("N") D S1
 ;
 S TXT="" D S1
 ;
 I FLAGSHVA<0,$D(P1HZHB1) S TXT="       i`xy` iqihxk milawn `l ",TXT("R")=1 D S1
 ;
 I '$G(DMSH)!$$^W4MSL(NMB),HZSCR'="P1HZTA",HZSCR'="P1HZT1",'$$^W4TAWMSL(HZM),'$D(P1HZHB)!$G(@$$^W4PRM@("BOTHB")),'$G(@$$^W4PRM@("NOHDSRV")) D
 .S TXT=%MDP("B")_" zexiy llek `l xignd"_%MDP("N"),TXT("R")=1 D S1
 .S TXT=%MDP("B")_"SERVICE NOT INCLUDED"_%MDP("N"),TXT("R")=1 D S1
 ;
 I '$$HEADNHZ S SM=0 S TXT=$TR($J("",%MDP("GWPC")-3)," ","=") D S1
 I $E($G(@$$^W4SG("START")),1,7)=2520400 D  ;--- PAPAGAYO T-A 2
 .S TXT="" D S1 S TXT=%MDP("B")_"** "_$J(HZM,6)_" dpnfd **" D S1 S TXT="" D S1
 ;
 I '$D(P1HZTM) D
 .I $G(@$$^W4PRM@("LAST")) N MKBL S MKBL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .I $$^W4MSD(NMB),$L($G(MKBL)) D
 ..S TXT=$J("",8)_%MDP("B")_$$SHORT^W4NAME(MKBL)
 ..S TXT=TXT_$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):" onxa",1:$$PC^W4WAITER)_%MDP("N")
 ..D S1
 ;
 S SHEEL=0
 I $D(@$$^W4GL("P1HOD")@("D")),'$$HEADNHZ D  ;---------------- SHEELON
 .Q:$G(P1HZHB1)="M" ; --- LE HESHBON BILVAD
 .N SOAD1 S SOAD1=SOAD I $G(@$$^W4PRM@("SHEELSD1")) S SOAD1=1
 .N SD F SD=1:1:SOAD1 D
 ..K SS Q:SD>1&'SHEEL
 ..N SS F I=1:1:25 Q:'$D(@$$^W4GL("P1HOD")@("D",I))  Q:^(I)?.P1"*".P  Q:^(I)="?"&'$D(P1HZHB1)  D
 ...I @$$^W4GL("P1HOD")@("D",I)?1"?".P,$G(P1HZHB1) D  S SHEEL=I Q
 ....N PCN,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 ....S ST=$C(10,10,10,10,10)_%MDP("CUT") D S12
 ....S TXT=$J("",5)_%MDP("B")_%MDP("R")_" *** zexy aeyn *** "_%MDP("RL")_%MDP("N") D S1
 ....S TXT="" D S1
 ....S TXT=$$T^%L1TIME($P($H,",",2))_" "_$$^%L1DC($H,1) D S1
 ....S TXT=$J("",23)_$J($$SHORT^W4NAME(MKBL),8)_$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):" onxa",1:$$PC^W4WAITER) D S1
 ....S TXT=$J("",5)_%MDP("B")_$J(HZM,6)_%MDP("N")_" dpnfd "_%MDP("B")_$J(NMB,3)_%MDP("N")_" "_$$PC^W4DICTBL D S1
 ....S TXT="" D S1
 ....S SS=""
 ...Q:SD>1&'$D(SS)
 ...S TXT=$G(@$$^W4GL("P1HOD")@("D",I))_$J("",GWPC-$$L^%L1FRM(^(I),"#","#")\2) D PCST(TXT) Q
 ..D SETHEADN
 ;
 I $D(P1HZHB)!$D(P1HZHB3),'$D(P1TNOPR) D  ; ----------- HESHBONIT --------------
 .D:SHEEL CUT
 .
 .I CA S DCM="`ay" D  ; ---------- HADPASAT K-A
 ..N DD S DD=$P($G(@$$^W4ORD@(HZM,"CB")),"\",7)
 ..S DTCB=$$^%L1DC(DD,1),TTCB=$$T^%L1TIME($P(DD,",",2))
 ..N I S I="" F  S I=$O(@$$^W4ORD@(HZM,"CB","V",I)) Q:I=""  D
 ...D ^W4GTVCH(^(I),"V") D CA
 ...I 'FLP!'MAKOR,I<$O(@$$^W4ORD@(HZM,"CB","V",9999),-1) D CUT
 .
 .I $G(TIP) D TIP(TIP)
 ;
 ;
 I $$SHULA^W4HZMST(HZM) D  Q:$G(@$$^W4PRM@("ASR"))=1!$G(TMASR) ; -- TL HAKAFA
 .I '$D(P1TNOPR) D:SHEEL CUT
 .D ASRWR
 .I $G(TMASR),'$D(P1TNOPR) S TXT=$C(10,10,10,10,10) D S1
 ;
 ;;I '$D(P1HZTM) D
 .I $G(@$$^W4PRM@("LAST")) N MKBL S MKBL=$G(@$$^W4GL("P1MLZ")@(HZM))
 .I $$^W4MSD(NMB),$L($G(MKBL)) D
 ..S TXT=$J("",8)_%MDP("B")_$$SHORT^W4NAME(MKBL)
 ..S TXT=TXT_$S($D(@$$^W4GL("P1BARMAN")@(MKBL)):" onxa",1:$$PC^W4WAITER)_%MDP("N")
 ..D S1
 ;
 I $D(P1HZTM) D SLH ;----- SHALIAH,HATIMA
 ;
 I $G(P1HZHB1)="M",$G(@$$^W4PRM@("MM"))!$G(@$$^W4PRM@("MMZZ")) D
 .S TXT=%MDP("B")_$J($G(@$$^W4GL("P1CODTS")@(CODTS)),7)_" : melyz zxev"_%MDP("N") D S1
 .D KHZ
 .S TXT=%MDP("B")_$J(KHZ,7)_" : zepnfd k""dq"_%MDP("N") D S1
 ;
 D CUT
 ;
 I $G(ODEFTL),$D(P1HZHB) D ^W4ODTL(TLN,NCAB,ODEFTL,DHB,MAKOR)
 ;
 I $G(@$$^W4PRM@("CARD")),$D(P1HZHB) D PCCARD ; -- HADPASAT KARTISIM
 ;
 ;;I '$D(P1HZHB2),'$G(MAKOR),'$D(PRBIT),$G(TSHL)>0 D
 .I '$D(P1HZHB3),$G(@$$^W4ORD@(HZM,"ETHB5")) D ^W4HB5(HZM,MAKOR) ;--------- PICUL HESBONIT
 Q  ;----------------------- END KOT TAHTONA -------------
 ;
 ;
KOTD ;
 N SS F I=1:1:25 Q:'$D(@$$^W4GL("P1HOD")@("D",I))  Q:^(I)?.P1"*".P  Q:^(I)="?"  D
 .S TXT=$G(@$$^W4GL("P1HOD")@("D",I))_$J("",GWPC-$$L^%L1FRM(^(I),"#","#")\2) D PCST(TXT) Q
 Q
 ;
CA ;------- CARTISEJ ASHRAJ
 I $G(HZM),FLP,MAKOR Q
 N MAS S %TIM=$ZD($H,"24:60") S MAS(1)=$$^%L1DC($H,1)_" "_%TIM
CA1 ;--- T.VX FROM P1TZ
 Q:$D(P1TNOPR)
 I '$D(TSS) D ^%L1TS
 Q:$G(PRINT)<3
 ;;**;;I $G(PRINT)<3 S %SAY=" ! dxcbed `l dtew zqtcn z`f dcnrl " X %XMSGV(1) Q
 S VVTS=VTS S:$E(VVTS)="$" VVTS=$E(VVTS,2,10)
 ;
 S MAS(2)=$$RPL^%L1FRM(SHEMCA,"Cal","CAL")
 S MAS(2)=$$RPL^%L1FRM(MAS(2),$TR("Cal",TS0,TSS),"CAL")
 I SUG1="" S TXT=$J("",16)_$J(MAS(2),7)_" "_$J(CAV,2,2) D S1 Q  ; JADANI
 ;
 N PRM S PRM=$G(@$$^W4SG("PARMNEW"))
 S MAS(3)=$S('$G(MAKOR):"wzrd",1:"")
 S MAS(4)=NCAB
 S MAS(5)=$E($G(PRM),46,60)
 N VER S VER=$G(@$$^W4SG("VERSION"))
 S MAS(10)="ABS-"_$E(VER,1,3)
 S MAS(10)=MAS(10)_$S(VER>595:"-6S",1:"-4S")
 S MAS(15)=$E($G(@$$^W4SG("START")),1,7)
 I $$WEBSRV D
 .S MAS(5)=""
 .S MAS(15)=$G(@$$^W4PRM@("ASH","MASOF"))
 ;
 S MAS(20)=$S(VVTS="V1"!(VVTS="V5"):$E(PRM,101,107),VVTS="V2":$E(PRM,136,142),VVTS="V3":$E(PRM,171,177),VVTS="V4":$E(PRM,206,212),VVTS="V6":$E(PRM,241,247),1:"       ")
 I $G(@$$^W4SG("VERSION"))<570,VVTS="V6",$E($G(@$$^W4SG("PARMA")))=1 D
 .S MAS(20)=$E(PRM,136,142)
 ;
 S MAS(25)=""
 I $G(MAKOR) S MAS(25)=$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))
 I '$G(MAKOR),$G(DTCB) D
 .S MAS(25)=DTCB_"  "_$G(TTCB)
 ;
 S MAS(30)=$$SPA^%L1FRM(MAS(2)) ;I '$L(MAS(30)) S MAS(30)=MAS(2)
 S MAS(35)="..."_$E(NCA,$L(NCA)-3,$L(NCA))
 ;;S MAS(351)=$E(+NCA,1,4)_"-"_$E(+NCA,5,8)_"-"_$E(+NCA,9,12)_"-"_$E(+NCA,13,20)
 S MAS(351)=MAS(35)
 S MAS(40)=$E(TKFCA,1,2)_"/"_$S($E(TKFCA,3,4)<19:20,1:"")_$E(TKFCA,3,4)
 S MAS(45)=NISKA ;-- ADD N FILE
 S MAS(47)=$S($$^W4ZHUT(SUG21):"iekif",1:"aeig")
 I $G(HUZCA),MAS(47)="aeig",$G(OFENCA)<50 S MAS(47)="MSR"
 S MAS(50)=$S(MIAUTH=1:"`ay",MIAUTH=2:"dxag",MIAUTH=3:"ipci",1:"")_"  "
 S SIBA=$G(SIBA)
 S MAS(50)=MAS(50)_$S(SIBA=7:"0",SIBA=1:"`",SIBA=2:"z",SIBA=3:"n",SIBA=4:"y",SIBA=8:"i",SIBA=6:"g",1:"")_"  "_$G(AUTHNO)
 S MAS(53)=$G(MOAD)
 S MAS(55)=$S(OFENCA="00":"libx",OFENCA="01":"invr zexy",OFENCA="02":"wlc zepgz",OFENCA="03":"zvle`n",OFENCA=50:"zipetlh dwqr",OFENCA=51:"cala dnizg",1:"")
 S MAS(60)=$S(SUGMTB=1:$S(HUZCA:"NIS",1:"g""y"),SUGMTB=2:"USD",SUGMTB=4:"xlec cenv",SUGMTB=8:"ccn cenv",1:"")
 S MAS(65)=""
 I VVTS="V1" S MAS(65)=$S(SUG1=2:"hicxw`xyi",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=5:"hicxwxteq",SUG1=6:"minelyza hicxw",SUG1=8:"minelyz",SUG1=9:"minelya oecren",1:"")
 I VVTS="V2"!(VVTS="V3") S MAS(65)=$S(SUG1=2:"30+/sicr",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=6:$S($E(NCA)=3:"hicxw qxpiic",1:"hicxw"),SUG1=8:"minelyz",1:"")
 I VVTS="V4" S MAS(65)=$S(SUG1=2:"hicxw qwn`",SUG1=4:"oecren",SUG1=5:"hicxwxteq",SUG1=6:"minelyza hicxw",SUG1=8:"minelyz",9:"minelyza oecren",1:"")
 I VVTS="V6" S MAS(65)=$S(SUG1=2:"30+/sicr",SUG1=3:"iciin aeig",SUG1=4:"oecren",SUG1=5:"hicxw xteq",SUG1=6:"hicxw",SUG1=8:"minelyz",1:"")
 I SUG1=1 S MAS(65)="libx"
 S MAS(70)=$J(CAV-KHVCA,8,2)
 S MAS(72)="" I KHVCA S MAS(72)=$J(KHVCA,8,2)_" miakeka mekq"
 I P1 S MAS(75)=$J(P1*.01,8,2)
 I PN S MAS(80)=$S(P1:"mitqep",1:"")_" minelyz "_PN_$S(P1:" cere",1:"")
 I PC S MAS(85)=$J(PC*.01,8,2)
 S MAS(90)="" I $G(HZM) S MAS(90)=HZM_" dpnfd"
 I $G(TZK) S MAS(90)=$J(TZK,5)_" iekif 'z"
 I $G(DCM)["dlaw" S MAS(90)=$J(NCAB,5)_" dlaw"
 I $D(PRG) S MAS("PRG")=1 ;-- PROGON V KONCE
 N NMB I $G(HZM) S NMB=$P(@$$^W4ORD@(HZM),"\")
 ;
 I $G(HZM),$G(NMB),'$G(DMSH)!$$^W4MSL(NMB),HZSCR'="P1HZTA",HZSCR'="P1HZT1",'$$^W4TAWMSL(HZM),'$D(P1HZHB)!$G(@$$^W4PRM@("BOTHB")),'$G(@$$^W4PRM@("NOHDSRV")) D
 .S MAS(95)=" zexy llek `l "
 .S MAS(96)="SERVICE NOT"
 .S MAS(97)="INCLUDED"
 ;
 I $G(HZM),$G(NMB),$$^W4MSD(NMB),$G(MAKOR) D
 .N MLZ S MLZ=$P($G(@$$^W4ORD@(HZM)),"\",18)
 .I $G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)) S MLZ=@$$^W4GL("P1MLZ")@(HZM)
 .S MAS(91)=$$SHORT^W4NAME(MLZ)_" "_$$PC^W4WAITER
 ;
 S MAS("NOPTH")=1
 S LAB="SHV96"
 D ^W4CB K PRG
 Q
 ;
 ;
CH S TXT=$J("",15)_"   wiy "_$J(CHS,7,2)
 I $D(HSBENG) S TXT=$J("",15)_" CHECK "_$J(CHS,7,2)
 D S1
 Q
 ;
ASRWR ;
 D GET(HZSCR,GLBV) Q:'SHULA
 I SHULA D
 .N I S I="" F  S I=$O(@$$^W4ORD@(HZM,"CB","ASR",I)) Q:I=""  D  Q:'$G(LKHN)
 ..D ^W4GTVCH(^(I),"ASR") Q:'$G(LKHN)
 ..I 'FLP!('MAKOR&'$D(PRBIT)) D
 ...I 'FLP,$D(PRBIT) N MAKOR S MAKOR=1
 ...D ASR(I) Q:$D(P1TNOPR)
 ...S $P(@$$^W4ORD@(HZM,"CB","ASR",I),"*",11)=1 ; -- PECH
 ..I I<$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1),$G(@$$^W4PRM@("ASR"))'=1 D
 ...I '$D(P1TNOPR) D CUT
 Q
 ;
ASR(MSAS) ;
 K HBASR I '$D(P1DZ) D ^W4IN
 D PUT^%W3DEB("W4HZTH-ASR","MSAS=MSAS & FLP=FLP & MAKOR=MAKOR & LKHN=LKHN & HZM=HZM")
 I FLP,MAKOR Q
 N MAS,MSP,OK,HNH
 S %TIM=$ZD($H,"24:60") S MAS(1)=$$^%L1DC($H,1)_"  "_%TIM
 ;
 I MAKOR S (MAS(2),MSP)=$P($G(@$$^W4ORD),"\",4)+1 S $P(@$$^W4ORD,"\",4)=MSP D
 .L +@$$^W4ORD@(HZM):1
 .S @$$^W4ORD@(HZM,"ETHB2")=$G(@$$^W4ORD@(HZM,"ETHB2"))_MSP_","
 .S $P(@$$^W4ORD@(HZM,"CB","ASR",MSAS),"*",10)=MSP
 .S @$$^W4GL("P1HB2")@(MSP)=HZM_"\"_P1DZ_"\"_$H_"\"_LKHN_"\"_ASR_"\"_$G(@$$^W4GL("P1EZL")@(LKHN))_"\"_$G(TLUSH)_"\"_$G(KMTL)
 .S @$$^W4GL("P1HB2I")@(P1DZ,MSP)=$H
 .N NOW S NOW=$$HBNOW(LKHN)
 .I NOW S HBASR=$$^W4LHBZ(LKHN,HZM) I HBASR>0 D
 ..S @$$^W4ORD@(HZM,"HBNOW")=HBASR
 ..S @$$^W4ORD@(HZM,"HBNOW",MSAS)=HBASR
 .D PUT^%W3DEB("W4HZTH-ASR","NOW=NOW & HBASR=HBASR")
 .L  ;
 ;
 Q:$D(P1TNOPR)
 ;
 I $$^W4TBLKH,LKHN=$$^W4TBLKH,$D(@$$^W4PRM@("10BIS"))>9 Q
 I MAKOR,$G(HBASR),$$HBNOW(LKHN) S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR) Q
 I $$^WVLKH,LKHN=$$^WVLKH,$G(@$$^W4PRM@("VCARD")) Q
 ;
 I 'MAKOR D  Q:$G(HBASR)
 .S MAS(2)=$P($G(@$$^W4ORD@(HZM,"ETHB2")),",",MSAS)
 .I $D(@$$^W4ORD@(HZM,"HBNOW"))=1 D  Q
 ..S HBASR=$G(@$$^W4ORD@(HZM,"HBNOW"))
 ..I HBASR S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR) Q
 .I $D(@$$^W4ORD@(HZM,"HBNOW"))>9 D  Q
 ..S HBASR=$G(@$$^W4ORD@(HZM,"HBNOW",MSAS))
 ..I HBASR S RESPRN=$$PRINT^W4LHBZ(LKHN,HBASR) Q
 ;
 S MAS(3)=LKHN,MAS(4)=$$HBR^%L1FRM($$LKH^W4L(LKHN),16)
 ;
 I $G(@$$^W4PRM@("ASRITRA")) D
 .I 'MAKOR S MAS(5)="" Q
 .S MAS(5)=$J($$ITRA^W4L(LKHN),2,2)
 ;
 S MAS(6)=LKAH
 S HNH=LKHNH ;$P(@$$^W4ORD@(HZM),"\",8)
 S MAS(7)=$J(ASR+HNH,2,2)
 I MAS(6)<100,$J(MAS(7),1,1)'=$J(100*ASR/(100-MAS(6)),1,1) S MAS(6)=0
 S MAS(8)=$J(HNH,2,2)
 S MAS(10)=$S('$G(MAKOR):"wzrd",1:"xewn")
 S MAS(11)=HZM
 S (MAS(12),MAS(35))=$S($L($G(HZMLK)):HZMLK,$L($G(HZMLAK)):HZMLAK,1:"")
 S MAS(15)=$J(ASR,2,2)
 I $G(CIBCARD) S MAS(25)=$$^WCKBCARD(CIBCARD)
 I '$G(CIBCARD),$G(CIBUID) S MAS(25)=CIBUID
 I $G(CIBCID) S MAS(30)=CIBCID
 I $G(@$$^W4PRM@("ASR"))=1 S MAS("EHAD")=""
 S MAS("NOPTH")=1
 ;
 I '$G(TMASR) S LAB="ASR",OK=1 D  D:OK ^W4CB,SIGNPC(HZM,"ETHB2",MSAS) Q
 .I $G(@$$^W4PRM@("ASR"))=-1 S OK=0 Q
 .I $D(@$$^W4ORD@(HZM,"CB","ASR",1)) D
 ..S TLUSH=$P(^(1),"*",8),KMTL=$P(^(1),"*",9)
 ..I TLUSH,KMTL>0,'$G(@$$^W4PRM@("PCTL")) S OK=0
 ;
 Q:'$G(LKHN)
 ;
 ;---------------- TM --?
 S TXT=%MDP("B")_$J(LKHN_" 'qn gewl",GWPC-2\2)_%MDP("N") D S1
 S TXT=%MDP("B")_$J($$LKH^W4L(LKHN),GWPC-2\2)_%MDP("N") D S1
 I $G(MAKOR) D PROGON^W4CUT(PRINT,%MDP("CUT")) Q
 S TXT="" D S1
 S TXT=%MDP("B")_$J("_________ : dnizg",GWPC-2\2)_%MDP("N") D S1
 ;
 D PROGON^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
 ;
HBNOW(LKH) ;
 I $D(HBNOW) Q 1
 I $$HBNOW^W4L(LKH) Q 1
 I $$GET^%W1PRM("HBNOW") Q 1
 Q 0
 ;
 ;
SIGNPC(HZM,IET,NOM) ;
 S @$$^W4ORD@(HZM,IET,NOM,"PC")=$H_"*"_$$^W4MYDVN
 I IET="ETHB2" D SETIND^W4HZMST(HZM,"ASR",NOM,1,"FLP")
 Q
 ;
LINE ; --
 N (JB,%ARG,%REM,%MBG,ADOM,NP,ST,PRINT,%MDP,TS0,TSS,SM,KAM,SUMT,P1HZHB,P1HZTM,P1HZHB1,P1HZHB2,NOMH,HSBENG,P1HZMM,REF,NMB,HZM) D ^W4IN
 S LINEPC="S TXT="""" D S11"
 S NP=NP+1
 F I=1:1 Q:'$D(@$$^W4SCR@(HZSCR,"G","NM",I))  D
 .S NM=^(I) S @NM=$P(ST,"\",I)
 ;
 I $G(REF)["VRM1(",'$$^W4OTH(HRP) S HRP=""
 I PAR?1":"1N.N S TXT="" D S1 S TXT("R")=1
 ;
 I PAR,PAR=$G(@$$^W4PRM@("SHEMZ")) D  Q
 .X LINEPC S TXT=%MDP("B")_"--- "_$$HBR^%L1FRM(HRP,8)_" ---"_%MDP("N") D S1
 ;
 I PAR["%" D  Q
 .S TXT("R")=1,ADOM=1
 .S TXT=$S('NOMH:$J(SUM,7,2)_" ",1:$J("",8))_$$PAR(PAR)
 .I PAR="-100%" S TXT="O.T.H.  "_TXT
 .D S1
 .I HRP'?.P,HRP["dry itl" S TXT=HRP,TXT("R")=1 D S1
 .S TXT="" D S1
 ;
 I HRP["dqtcd `ll" S HRP=""
 I $G(@$$^W4PRM@("SHEMZ")) S HRP=$P(HRP,"<")
 I KAM<0!(PAR["%") S TXT("R")=2,ADOM=1
 ;
 I NOMH S TXT=$J(KAM,4)_"  "_$$PAR(PAR) D S1 G LINEH
 ;
 I %MDP("GWPC")=80 D  Q
 .S TXT=$$HBR^%L1FRM(HRP,18)_" "_$J(MH*KAM,8,2)_" "_$J(MH,7,2)_" "_$J(KAM,5)_"  "_$$PAR(PAR) D S1
 ;
 I +KAM=1!(+KAM=-1) D
 .S TXT=$S(MH:$J(MH*KAM,7,2),1:$J("",7))_" "_$$PAR(PAR) D S1
 ;
 I +KAM'=0,+KAM'=1,+KAM'=-1 D  D S1
 .S TXT=$J("",7)_" "_$$PAR(PAR) D S1
 .I MH S TXT=$J(MH*KAM,7,2)_" = "_$J(MH,5,2)_" X "_$J(KAM,3) Q
 .S TXT=$J("",18)_$J(KAM,3)
 ;
LINEH I HRP'?.P,'$D(P1HZHB),'$D(P1HZHB1)!$$DETAIL!$$^W4OTH(HRP),'$D(P1HZHB2) D
 .I $$^W4OTH(HRP) S HRP=$S('$D(HSBENG):" * ziad oeayg lr *",1:"* ON THE HOUSE *")
 .D PCHR(HRP,18)
 Q
 ;
 ;
ERMDP ;;**;;I HZSCR'="P1HZTA",HZSCR'="P1HZT1" S %SAY=$$SHEM^W4P(PAR)_" "_PAR_" hixtl zexcben `l gahn zqtcn mixhnxt " U 0 X %XMSGV(1)
 S ERMDP=1
 Q
 ;
PAR(PAR) ;
 N SMB S SMB="" I $L(PAR),$D(@$$^W4GL("PRTBH")@(PAR)) S SMB="*"
 I '$D(HSBENG) G PARH
 N SHEML S SHEML=$$SHEML^W4P(PAR)
 I '$G(@$$^W4PRM@("NOHZMPAR")) Q " "_SHEML_$J(SUG_" "_PAR_SMB,30-$L(SHEML))
 Q " "_SHEML_SMB
 ;
PARH I '$G(@$$^W4PRM@("NOHZMPAR")) Q $$HBR^%L1FRM(PAR1,25)_$J(SUG_" "_PAR_SMB,5)
 Q $$HBR^%L1FRM(PAR1_SMB,30)
 ;
 ;
LINE2 ; --
 N (JB,%ARG,%REM,ADOM,NP,PRINT,PRINTF1,ST,HZM,N1,N2,%MDP,TS0,TSS,SM,SUMT,REF,KAM,NOMH,P1HZHB1,P1HZTM,HSBENG,LINEPC,NMB,HZM,LINE3)
 S DLT2=22 I $D(LINE3) S DLT2=18
 S PAR=$P($G(@REF),"\") N N1
LINE21 ;;**;;I $G(PRINT)=54 D ^%L1C
 S NP=NP+1
 I $G(PRINT)="" Q
 ;
 I '$D(PRINTF1(PRINT)) Q:PAR=""  D
 .D @$S($$D^W4EZA(PAR):"HEAD4",$$NOPIZA^W4P(PAR):"HEAD3",1:"HEAD2")
 .S PRINTF1(PRINT)=1
 ;
 I %MDP("GWPC")=80,$D(P1HZTM) D  Q
 .N HRP,MH,KAM,SUG,PAR1,PAR
 .S PAR=N2 D PAR^W4P
 .S HRP=$S(N2["A-":$P(ST,"\",3),1:$P(ST,"\",4))
 .I $G(REF)["VRM1(" S HRP=""
 .I $G(@$$^W4PRM@("SHEMZ")) S HRP=$P(HRP,"<")
 .S MH=$S(N2["A-":"",1:$P(ST,"\",2))
 .S KAM=$S(N2["A-":$P(ST,"\",2),1:$P(ST,"\",3))
 .S SUG="",PAR1=$P(ST,"\")
 .
 .S TXT=$$HBR^%L1FRM(HRP,18)_" "_$J(MH*KAM,8,2)
 .S TXT=TXT_" "_$J(MH,7,2)_" "_$J(KAM,5)_"  "_$$PAR(PAR) D S1
 ;
 S KAM2=0 I ST["\+\" S KAM2=$L(ST,"+\")-1
 S MHT=$P(ST,"\",2)
 ;
 S TXT=""
 I KAM2 F I=6:-1:3 S TXT=TXT_$$CENTR^%L1FRM($P(ST,"\",I),3)_" " ; - PIZA
 ;
 I 'KAM2 S TXT=$J("",16) S KAM2=$P(ST,"\",3) S:'KAM2 KAM2=KAM
 I $G(ADOM)!(KAM2<0) S TXT("R")=2
 ;
 I +KAM2=1!NOMH D  S SUMT=SUMT+MHT Q
 .S TXT=$S(NOMH&(+KAM2'=1):$J(KAM2,7),NOMH:$J("",7),1:$J(MHT,7,2))
 .I 'MHT,$G(P1HZHB1)="M" S TXT=$J("",5)
 .
 .I '$G(@$$^W4PRM@("NOHZMPAR")) D
 ..S TXT=TXT_$$PAR2($P(ST,"\"),N2,DLT2)
 ..S TXT=TXT_$S(N2?1N.N1"-"1N.N:"",1:" "_$J(N2,4)) D S1
 .
 .I $G(@$$^W4PRM@("NOHZMPAR")) S TXT=TXT_$$PAR2($P(ST,"\"),N2,DLT2+5) D S1
 .
 .I $G(@$$^W4PRM@("SHEMZ")) S $P(ST,"\",4)=$P($P(ST,"\",4),"<")
 .
 .I $G(P1HZHB1)="M",$P(ST,"\",4)'?.P,ST'["\+\" D
 ..S TXT("R")=1,TXT=$$HBR^%L1FRM($P(ST,"\",4),20) D S1
 ;
 ;
 I '$G(@$$^W4PRM@("NOHZMPAR")) D
 .S TXT=TXT_$$PAR2($P(ST,"\"),N2,14)_" "_$J(N2,4) D S1
 ;
 I $G(@$$^W4PRM@("NOHZMPAR")) S TXT=TXT_$$PAR2($P(ST,"\"),N2,19) D S1
 ;
 I 'MHT,$G(P1HZHB1)="M" S TXT=$J("",19)_$J(KAM2,3) D S1
 ;
 I MHT S TXT=$J(MHT*KAM2,7,2)_$S(KAM2>1!(KAM2<-1):" = "_$J(MHT,5,2)_" X  "_$J(KAM2,3),1:"") D S1
 ;
 I $G(@$$^W4PRM@("SHEMZ")) S $P(ST,"\",4)=$P($P(ST,"\",4),"<")
 ;
 I $G(P1HZHB1)="M",$P(ST,"\",4)'?.P,ST'["\+\" D
 .S TXT("R")=1,TXT=$$HBR^%L1FRM($P(ST,"\",4),20) D S1
 ;
 I MHT,'NOMH D:'$G(@$$^W4PRM@("MM"))  S SUMT=SUMT+(MHT*KAM2)
 .;;S TXT="" D S1
 Q
 ;
 ;
LINE22 N (JB,%ARG,%REM,ADOM,NP,PRINT,PRINTF1,ST,HZM,N2,%MDP,TS0,TSS,SM,SUMT,REF,KAM,NOMH,P1HZHB1,P1HZTM,HSBENG,PAR,N23,N3,LINEPC,DLT2)
 G LINE21
 ;
 ;
LINE3 ;
 Q:$G(@$$^W4PRM@("HSBRKZ"))&($G(P1HZHB1)'="M")
 ;
 N N23,DLT2,REF,REF2,ST,PAR,MHT,CD,COL0
 S DLT2=16 S N23=N2
 S REF=$$^W4ORD_"(HZM,N1,N23,N3)",ST=$G(@REF)
 S REF2=$$^W4ORD_"(HZM,N1,N23)"
 ;
 S COL0=1
 I $P(ST,"\") S PAR=$P(ST,"\"),COL0=$P(ST,"\",3) D  X LINEPC D LINE22 Q
 .N N2
 .I '$P(ST,"\",3) S $P(ST,"\",3)=$P($G(@REF2),"\",3)
 .S ST=$P(ST,"\",2)_"\"_$P(ST,"\",7)_"\"_$P(ST,"\",3)_"\"_$P(ST,"\",6)
 .S N2=PAR
 ;
 S CD=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 S PAR=$P(ST,"\",4)
 S MHT=$P(ST,"\",7)
 S ST=$P(ST,"\",5)_"\"_MHT_"\"_$G(COL0,1)_"\"_$P(ST,"\",6)
 N N2 S N2=PAR
 D LINE22
 Q
 ;
 ;
PAR2(NP,CD,DL) ;
 N SHEML
 I $D(HSBENG) S SHEML=$$SHEML^W4P(CD) Q "     "_SHEML_$J("",DL-$L(SHEML))
 Q $$HBR^%L1FRM(NP,DL)
 ;
LINER(CODP,SHEM,KAM,OFF) ; --
 I KAM S TXT=%MDP("B")_$J(KAM,2)_%MDP("N")_" <----"
 I 'KAM S TXT=$J("",10)
 S TXT=TXT_$$HBR^%L1FRM($G(SHEM),OFF)_" "
 S TXT=TXT_$S('$G(@$$^W4PRM@("NOHZMPAR")):$J($P(CODP,"-"),5),1:"")
 D S1
 Q
 ;
 ;
S1 ;
 Q:$G(PRINT)<3
 S TXT=$$RPL^%L1FRM(TXT,"<B>",%MDP("B"))
 S TXT=$$RPL^%L1FRM(TXT,"<N>",%MDP("N"))
 ;
 I $$L^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),%MDP("N"))>40,%MDP("GWPC")'>40 D
 .S TXT=$$RPL^%L1FRM($$SPA^%L1FRM(TXT),%MDP("B"),"")
 ;
 I $G(TXT("R"))>1 S TXT=%MDP("R")_TXT_%MDP("RL")
 ;
S11 Q:$G(PRINT)<3
 L +@$$^W4PC@(PRINT):1
 N PCN,ST S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 S ST=%MDP("N")_%MDP("RL")_$J("",SM)_$TR(TXT,TS0,TSS)
 S ST=$$RPL^%L1FRM(ST,$TR(%MDP("B"),TS0,TSS),%MDP("B"))
 S ST=$$RPL^%L1FRM(ST,$TR(%MDP("N"),TS0,TSS),%MDP("N"))
S12 Q:$G(PRINT)<3  I PRINT=54,$$^%L1T2P(ST) G ES11
 I '$D(PCN) S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 S @$$^W4PC@(PRINT,PCN)=ST
 ;;S ^AA(PRINT,PCN)=$$CLST^%L1FRM(ST)
ES11 K TXT L -@$$^W4PC@(PRINT) Q
 ;
ST ;
 N N,ST,SOF,SK,OK S N="",SK=0 S:'$D(SM) SM=0
 ; --- DO 1 ? - SLUJ INF
 F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  Q:N'<1  S ST=$G(^(N)) D
 .L +@$$^W4PC@(PRINT):1
 .D S12
 ;
 S N=.9 F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  D
 .S ST=$G(^(N)),OK=1 S TXT=$J("",SM)_$$SPR^%L1FRM(ST)
 .S SOF=$E(TXT,$L(TXT)-1,$L(TXT)) D:SOF["_"!(SOF["@")  I OK D S1
 ..S TXT=$E(TXT,1,$L(TXT)-2)
 ..I SOF["@" S SK=SK+1 I '$D(USK(SK)) S OK=0
 Q
 ;
CUT ;
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
ODEF(ODF) ;
 S TXT=%MDP("B")_$J(ODF,7,2)_" : scer"_%MDP("N"),TXT("R")="" D S1
 Q
ODEFTL(ODF) ;
 S TXT=%MDP("B")_$J(ODF,7,2)_" : yelza scer"_%MDP("N"),TXT("R")="" D S1
 Q
TIP(ODF) ;
 S TXT=$J("",8)_%MDP("B")_$J(ODF,7,2)_": tih"_%MDP("N"),TXT("R")="" D S1
 Q
 ;
EQ(MC1,MC2) ;
 N N,OK S OK=1
 S N="" F  S N=$O(@MC1@(N)) Q:N=""  I '$D(@MC2@(N)) S OK=0 Q
 I 'OK Q OK
 S N="" F  S N=$O(@MC2@(N)) Q:N=""  I '$D(@MC1@(N)) S OK=0 Q
 Q OK
 ;
INDTSF(MC,IND) ;
 N N,IND1 S IND1=$G(IND)
 S N="" F  S N=$O(@MC@(N)) Q:N=""  S IND1=$G(IND1)_"+"_N
 Q IND1
 ;
HSBRKZ(GLB) ; --- GLB -> ^VRM1($J)
 D ^W4HSBRKZ(GLB,"")
 Q
 ;
 ;
SLH ;
 Q:$G(P1HZTM)="S"  ; --- SEFAH
 Q:'$D(P1TNOPR)
 S (TLUSH,KMTL)=0
 ;
 I $D(@$$^W4ORD@(HZM,"CB","ASR",1)) D
 .S TLUSH=$P(^(1),"*",8),KMTL=$P(^(1),"*",9)
 ;
 I $$TLUSH^W4L(NMB),'TLUSH S TLUSH=$$TLUSH^W4L(NMB)
 ;
 N AS S AS=$G(SHULA) I 'AS S AS=TSHL
 I 'KMTL,TLUSH S KMTL=AS\TLUSH+(AS#TLUSH>(TLUSH/3))
 I KMTL,TLUSH S TXT=" g""y "_$J(TLUSH,2,2)_" ieeya miyelz "_KMTL_" ribn gilyl" D S1
 N PSL S PSL=$P($G(@$$^W4ORD@(HZM,"TM")),"\") ;;Q:'PSL
 I PSL S TXT=$J("",22)_$G(@$$^W4GL("P1SL")@(PSL))_" gily" D S1
 I '$G(MAKOR) S TXT="" D S1 S TXT=$J("",15)_" _________ dnizg" D S1 S TXT="" D S1
 Q
 ;
PCHR(HR,DLT2H) ;
 S TXT="" I '$G(@$$^W4PRM@("NOBIGHRA")) S TXT=%MDP("B")
 S HR=$$SPA^%L1FRM(HR),HR1=""
 ;
 I $L(HR)>DLT2H,'$G(@$$^W4PRM@("NOBIGHRA")) D
 .S HR1=$E(HR,$L(HR)-(2*DLT2H)+1,$L(HR)-DLT2H)
 ;
 I $L(HR1) S HR=$E(HR,$L(HR)-DLT2H+1,$L(HR))
 ;
 S TXT=TXT_HR_%MDP("N") D S11
 I $L(HR1) S TXT=%MDP("B")_$J(HR1,DLT2H)_%MDP("N") D S11
 Q
 ;
 ;
DETAIL(DUMP) ;
 I $G(P1HZHB1)="M" Q 1
 I $G(P1HZHB1)="B" Q 1
 I $G(P1HZTM)="S"&($G(@$$^W4PRM@("TAWS"))<3) Q 1
 Q 0
 ;
GET(HZSCR,GLBV)
 D GA^W4SCREF(HZSCR,GLBV)
 Q
 ;
HEADNHZ(STAM)
 Q $D(@$$^W4MAIN("THZ")@("HEADN"))#2
 ;
SETHEADN ;
 S @$$^W4MAIN("THZ")@("HEADN")="" ;---------------- SHEELON
 Q
 ;
PCST(ST) ;
 S %L1STPC("RIGHT")="",%L1STPC("NOSHP")=""
 D ^%L1STPC(ST,$$^W4PC_"(PRINT)","%MDP")
 Q
 ;
KHZ Q:'$G(NMB)  Q:$$^W4MSD(NMB)
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("P1HL")@(NMB,N)) Q:N=""   I N'>HZM!(HZM=$$NEW^W4KLNEW) S I=I+1
 S KHZ=I+$G(@$$^W4GL("P1CHZM")@(NMB))
 Q
 ;
WEBSRV(STAM) ;
 I $$^W4SRVWIN(JB)=2 Q 1
 Q 0
 ;
RIKUZQ ;-- RIKUZ LEFI KAMUT
 D ^W4HSBRKZ($$^W4ORD_"("_HZM_")","Q")
 N N1,N2,N3,A,A2,A3,CD,CD2,CD3,FIRST
 ;
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM0")@("P",N1)) Q:N1=""  S A=$G(^(N1)),CD=$P(N1,"^") D
 .I A S TXT="" D S1 D LINER(CD,$G(@$$^W4MAIN("VRM0")@("N",N1)),+A,22) D
 ..S N2="",FIRST=1
 ..F  S N2=$O(@$$^W4MAIN("VRM0")@("P",N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),CD2=$P(N2,"^")
 ...D LINER(CD2,$G(@$$^W4MAIN("VRM0")@("N",N1,N2)),$S($G(@$$^W4PRM@("TSFNEW")):"",1:+A2),18)
 ;
 S SM=0 S TXT=$TR($J("",%MDP("GWPC")-3)," ","=") D S1
 S TXT="" D S1 S TXT=%MDP("B")_"** mihixt fekix **" D S1
 S TXT="" D S1 S TXT=%MDP("B")_"** "_$J(HZM,6)_" dpnfd **" D S1 S TXT="" D S1
 K @$$^W4MAIN("VRM0"),@$$^W4MAIN("VRM1") D CUT
 Q
 ;
 ;
PCHSBRKZ ;
 N P1HZTH,N1,N2,N3,REF,P1H,P1H1,ADOM
 S P1HZTH="" D HSBRKZ($$^W4ORD_"("_HZM_")")
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM1")@(N1)) Q:N1=""  D
 .K ADOM S SUMT=0,ERMDP=0,(ST,STHZ)=$G(^(N1))
 .S REF=$$BG^W4MAIN("VRM1")_"N1)" D LINE I 'ERMDP D
 ..S N2="" K PRINTF1
 ..F P1H=1:1 S N2=$O(@$$^W4MAIN("VRM1")@(N1,N2)) Q:N2=""  S ST=$G(^(N2)) D
 ...S REF1=$$BG^W4MAIN("VRM1")_"N1,N2)" D LINE2
 ...S N3="" F P1H1=1:1 S N3=$O(@$$^W4MAIN("VRM1")@(N1,N2,N3)) Q:N3=""  D
 ....S ST=$G(^(N3)) D LINE3
 ..
 ..I $D(PRINTF1) D
 ...I $$D^W4EZA(+$P(STHZ,"\")) D  Q
 ....S TXT=$TR($J("",%MDP("GWPC")-4)," ","-") D S1
 ...I '$G(@$$^W4PRM@("NOKOTTSF")) D
 ....S TXT=$TR($J("",%MDP("GWPC")-7)," ","-") D S1
 ..
 ..I P1H>1 S TXT="" D S1
 ;
 K @$$^W4MAIN("VRM0"),@$$^W4MAIN("VRM1")
 Q
 ;
 ;
PCTLBIT ;
 N DLT,DLT2,DLT2H,ERMDP,LINEPC,ST,N1,N2,N3,TXT,PAR,OUT,MANA
 S DLT=23,DLT2=19,DLT2H=18,OUT=0
 S SUMB=0,SUMT=0,ERMDP=0
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"BIT",N1)) Q:N1=""  D
 .Q:$D(@$$^W4ORD@(HZM,"BIT",N1,"PC"))
 .S ST=$G(@$$^W4ORD@(HZM,N1)),REF=$$^W4ORD_"(HZM,N1)",PAR=$P(ST,"\")
 .I $P(ST,"\",2)[">" S OUT=1
 .S SUMB=SUMB+$P(ST,"\",7)
 .S LINEPC="S TXT="""" D S2" D PCLP^W4HZMPC
 .S TXT=$J($P(ST,"\",4)*$P(ST,"\",5),7,2) D S1
 .S LINEPC="S TXT="""" D S11"
 .S @$$^W4ORD@(HZM,"BIT",N1,"PC")=""
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ..S ST=$G(@$$^W4ORD@(HZM,N1,N2)) D:$D(^(N2))<10 LINE2 D
 ...S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....S ST=$G(@$$^W4ORD@(HZM,N1,N2,N3)) D LINE3
 ;
 S TXT="  "_$TR($J("",GWPC-4)," ","-") D S11
 S TXT=%MDP("B")_$J(SUMB,7,2)_%MDP("N")_" : mekql lhea k""dq" D S11
 S TXT="" D S11
 ;
 I OUT S TXT="  * gahndn `vi hixty onqn '>' oniq * " D S11
 S TXT=$C(10,10) D S11
 Q
 ;
PCCARD ;
 N P1HZTH
 S P1HZTH="" D HSBRKZ($$^W4ORD_"(HZM)") K P1HZTH
 N N1,KAM,II,TXT,DAT
 S DAT=$$^%L1DC(P1DZ,1)
 S N1="" F  S N1=$O(@$$^W4MAIN("VRM1")@(N1)) Q:N1=""  K ADOM S ST=$G(^(N1)) D
 .I $D(@$$^W4PRM@("CARD"))=1 N PRT S PRT=$P(ST,"\") Q:'PRT  I '$D(@$$^W4PRM@("CARD",PRT)) Q
 .S KAM=$P(ST,"\",5) Q:KAM'>0
 .F II=1:1:KAM D  D KOTD,CUT
 ..S TXT=%MDP("B")_" "_$TR($J("",19)," ","*")_%MDP("N") D S1 S TXT="" D S1
 ..S TXT=%MDP("B")_"   '"_$$^%L1DC(P1DZ,9)_" mei "_DAT D S1 S TXT="" D S1
 ..S TXT=%MDP("B")_" "_$$CENTRB^%L1FRM($$SPA^%L1FRM($P(ST,"\",3)),40)_%MDP("N") D S1
 ..S TXT="" D S1
 ..S TXT=%MDP("B")_" "_$TR($J("",19)," ","*")_%MDP("N") D S1
 Q
 ;
 ;
PCMAM ;
 N TOMAM S TOMAM=$S(SHUL>TSHL:TSHL+$G(TIP),1:SHUL)
 N MAM S MAM=$J(TOMAM*@$$^W4PRM@("MAM")/(100+@$$^W4PRM@("MAM")),2,2)
 I $$NOMAM^W4L(NMB) S MAM=0
 ;;S TXT="" D S1
 ;
 I '$D(HSBENG),SHUL D
 .I '$G(@$$^W4PRM@("NOPCMAM")) D
 ..S TXT=$J(TOMAM-MAM,14,2)_"  : n""rn iptl" D S1
 ..S TXT=$J(MAM,14,2)_"  : n""rn " D S1
 ;
 I $D(HSBENG),SHUL D
 .I '$G(@$$^W4PRM@("NOPCMAM")) D
 ..S TXT=$J(TSHL-MAM-SHULA+TIP,14,2)_"  : BEFORE TAX" D S1
 ..S TXT=$J(MAM,14,2)_"  : TAX " D S1
 Q

W4HZTM
W4HZTM ;  [ 23.08.26 10:23 ] [ 18.06.26 10:05 ] [ 04.03.26 18:02 ] 
 N IET,ITS,SHM,FRST,%FNAME,%GETIN,I,USK,%W1LNG
 I $$ENG D ENG^%W1LNG
 ;-------------- TM ----------------------
 S IET="ETTM",ITS=1,SHM="TM",P1HZTM=""
 I '$G(TM) S TM=$G(@$$^W4ORD)+1
 I $G(@$$^W4PRM@("MM")) S P1TNOPR=""
 ;
 F I=1:1:4 S USK(I)=1
 I $D(@$$^W4ORD@(HZM,"ETTM")) G P1 ;----- HAETEK
 S @$$^W4ORD@(HZM,"TM")=$G(@$$^W4THZ@("TM")) D ^W4KHM(HZM) ;-- BITUL STAR. TM
 ;
 ;------ T.VX.--------------------------------------
P1 D MDPPC
P2 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$^W6,$$NOPCLOAZ^W4PRM D PUT^%W1PRM("LNG","H") 
 ;
 I $$WOLT^W4HZMST(HZM),$$NOPCWOLT,'$$ETEK(HZM) S P1TNOPR=""
 I $$^W4KIOSKO(HZM),'$G(%ARG("PCHB")),$G(@$$^W4PRM@("NOKSKHB")),$G(P1HZHB1)'="M",'$$ETEK(HZM) S P1TNOPR=""
 I $$^W4KIOSKO(HZM),$G(@$$^W4PRM@("NOKSKHB"))=2,$G(P1HZHB1)="M" S P1TNOPR=""
 I $G(@$$^W4PRM@("NOPCMKR")),'$$^W4CLOSE(HZM) S P1TNOPR=""
 I $G(@$$^W4PRM@("NOPCDLV")),'$$^W4CLOSE(HZM),$$HZM^W4MSL(HZM),$$WEBORD^W4HZMST(HZM),$D(P1HZHB)!$D(P1HZHB2) S P1TNOPR=""
 I $G(P1HZHB1)="M",$$TMMSL^W4PRM S P1TNOPR=""
 I $G(@$$^W4PRM@("ASR"))=-1,$D(P1HZHB2),'$G(@$$^W4ORD@(HZM,"ETHB2")) S P1TNOPR=""
 ;
 I $G(@$$^W4PRM@("NOPCWEB")),$D(P1HZHB)!$D(P1HZHB2)!$D(P1HZHB3),$$WEBORD^W4HZMST(HZM) D
 .I $$ETEK(HZM) Q
 .S P1TNOPR=""
 ;
 S (GLBV,GLBV1)=$$^W4ORD_"(HZM)"
 I $$HSBHBR^W4PRM,'$D(HSBENG) S %W1LNG="H"
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 S I=0 N MAKOR
 K @$$^W4MAIN("TMPS111")
 ;
 ;;S ^AA("W4HZTM",HZM,"PTM")=0
 I '$$^W4CLOSE(HZM) D
 .;;S ^AA("W4HZTM",HZM,"PTM")=.5
 .I $D(P1HZHB)&($$PTCA(HZM)!$$MZM^W4HZMST(HZM))!($D(P1HZHB2)&'$G(@$$^W4PRM@("NOPTASR"))) D
 ..;;S ^AA("W4HZTM",HZM,"PTM")=1
 ..Q:$D(P1TNOPR)
 ..I $P($G(@$$^W4ORD@(HZM,"CB")),"\",4),$$^W4KIOSKO(HZM) Q
 ..I $G(@$$^W4PRM@("AUTOMZM")),$$MZM^W4HZMST(HZM),$E($$HZMLAK^W4HZMST(HZM))="W" Q
 ..;;I $$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM)!($D(@$$^W4ORD@(HZM,"SGMZAUTO"))),'$$GETP^%W1PRM("CLSDAY") Q
 ..I $$HZM^W4MSL(HZM),$D(@$$^W4ORD@(HZM,"SGMZAUTO")),'$$GETP^%W1PRM("CLSDAY") Q
 ..I $$HZM^W4MSL(HZM),$$MZMK^W4KIOSKO(HZM) Q
 ..;;S ^AA("W4HZTM",HZM,"PTM",$H)=1.5
 ..I $G(@$$^W4PRM@("NOPTDEL")),$$TSHL^W4HZMST(HZM)'>0 Q
 ..I $L(PRINT),'$$MZSM^W4PRM D ^W4SETPC(PRINT,$G(%MDP("P"))) D ^W4PTHDLY
 ;
 I $G(P1HZHB1)="B" D  G END ;-- TLUSH BITUL
 .N MLZR,MNL,MAKOR,N S MAKOR=0
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  I '$D(@$$^W4ORD@(HZM,"BIT",N,"PC")) D  Q
 ..S MNL=$P(@$$^W4ORD@(HZM,"BIT",N),"*",2)
 ..S MLZR=$P(@$$^W4ORD@(HZM,"BIT",N),"*",1)
 ..I MLZR=""!(MLZR=MNL) S MLZR=MNL,MNL=""
 .I MLZR="" S MLZR=$$^W4MLZR(HZM)
 .
 .I '$$ENG D
 ..D W("lehia yelz   ",1)
 ..D W($$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))_" dqtcd onf    ",0)
 ..D W(HZM_" 'qn dpnfd",1) D W("",0)
 ..D W($$SHORT^W4NAME(MLZR)_" "_MLZR_$$PC^W4WAITER,1)
 ..I MNL'="" D W($$SHORT^W4NAME(MNL)_" "_MNL_" ldpn",1)
 ..D W("",0)
 ..D W(NMB_" "_$$PC^W4DICTBL,1)
 .
 .I $$ENG D
 ..D W("Cancelling coupon",1)
 ..D W("Issue time "_$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2)),0)
 ..D W("Order No."_HZM,1) D W("",0)
 ..D W($$PC^W4WAITER_MLZR_" "_$$SHORT^W4NAME(MLZR),1)
 ..I MNL'="" D W("Manager "_MNL_" "_$$SHORT^W4NAME(MNL),1)
 ..D W("",0)
 ..D W($$PC^W4DICTBL_" "_NMB,1)
 .
 .D W("",0)
 .D ^W4HZTH
 ;
 ;
 I $G(P1HZHB1)="H" D  G END ;-- TLUSH HANAHA
 .N MLZR,MAKOR,N S MAKOR=0
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,"HNH",N)) Q:N=""  I '$D(@$$^W4ORD@(HZM,"HNH",N,"PC")) D  Q
 ..S MLZR=$P(@$$^W4ORD@(HZM,"HNH",N),"*",2)
 .I MLZR="" S MLZR=$$^W4MLZR(HZM)
 .
 .I '$$ENG D
 ..D W("dgpd yelz   ",1)
 ..D W($$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))_" dqtcd onf    ",0)
 ..D W(HZM_" 'qn dpnfd",1) D W("",0)
 ..D W($$SHORT^W4NAME(MLZR)_" "_MLZR_$$PC^W4WAITER,1)
 ..D W("",0)
 ..D W(NMB_" "_$$PC^W4DICTBL,1)
 .
 .I $$ENG D
 ..D W("Discount coupon   ",1)
 ..D W("Issue time "_$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2)),0)
 ..D W("Order No. "_HZM,1) D W("",0)
 ..D W($$PC^W4WAITER_MLZR_" "_$$SHORT^W4NAME(MLZR),1)
 ..D W("",0)
 ..D W(NMB_" "_$$PC^W4DICTBL,1)
 .;
 .D W("",0)
 .D ^W4HZTH
 ;
 ;
 N TMASR 
 S TMASR=0
 I $D(P1HZHB2),$$TMASR^W4PRM S TMASR=1
 ;
 I $D(P1TNOPR) G:$D(P1HZTM)&$$NOTM^W4PRM HMK D  G END
 .D ASRWR^W4HZTH
 ;
 ;;I $D(P1HZHB2) S ^AA("W4HZTM","P1HZHB2-KOT",HZM)="" ; ***
 ;;I $D(P1HZHB2),$D(BLIPR) S ^AA("W4HZTM","P1HZHB2-BLIPR",HZM)="" ; ***
 ;
 D KOT ;---> ^W4MKR
 ;
 I '$D(BLIPR) D KOTT
 ;
 S %SCRN=HZSCR
 ;
 I $D(P1HZHB2),"2367"[+$$CLOSE^W4HZMST(HZM),'$G(TMASR),'$$NOTM^W4PRM!'$$MSL^W4HZMST(HZM) D  G END  ;-- HESBON ASHRAI ONLY
 .S ^LEVD("TM",3)=""
 .S SM=1 S:$$CLOSE^W4HZMST(HZM)<4!($G(P3T)=3) MAKOR=1
 .D ^W4INP,HEADNA^W4HZTH K P1HZHB2
 ;
 ;
 D ^W4HZTH
 ;
HMK ;
 I $D(P1HZTM),'$$ITRA^W4HZMST(HZM),$$NOTM^W4PRM,$$TMMSL^W4PRM G END
 I $D(P1HZTM),$$SHULA^W4HZMST(HZM)&'$$SHUL^W4HZMST(HZM),'$G(@$$^W4PRM@("NOPCASTM")) D PCHB2 G END
HMK1 ;
 I $D(P1HZTM),$$SHULA^W4HZMST(HZM)<$$TSHL^W4HZMST(HZM) D PCHB ;-- HADP HMK ( IF MEZ - FICT )
 ;
END I $G(HZM) D ^W4GIBHZ(HZM)
 ;
 K P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1HZHB5
 Q
 ;
 ;
KOT ;------------  KOTERET SHEL MISMACH  --------
 N %SCRN,IJ,T
 N GW,GW1 S GW=40,GW1=20
 D MDPPC
 ;
 D KOTPRM
 ;
 S %SCV("SCRN")=$S($$^W4MSL(NMB):"KOT",1:"KOTMS")
 S %SCV("SC")=$G(I,1),%SCV="V"
 I $D(P1HZTM)!($G(P1HZHB1)="M"&$$^W4MSL(NMB))!($$NOTM^W4PRM&$$^W4MSL(NMB)) D
 .S %SCV("SHP")="KOTTMv"
 .I $$DELIS^W4PRM D
 ..N TRH,DT S TRH=$$TRH^W4HZMST(HZM) Q:'TRH
 ..S DT=$$^%L1DC(TRH,3)
 ..N SL,SL1 S SL=$P($G(@$$^W4GL("W4SLPLAN")@(DT,HZM)),"\") Q:'SL
 ..S SL1=$$SPA^%L1FRM($G(@$$^W4GL("P1SL")@(SL)))
 ..I SL1?1N.N1" ".E D
 ...S SL1=$$SP1^%L1FRM(SL1)
 ...S SL1=$P(SL1," ",2,20)
 ..S %SCV("MS1",7)=" "_SL1_" "
 ;
 N SHP S SHP=$S($G(%SCV("SHP"))["KOTTM":"KOTTM",1:%SCV("SCRN"))
 I SHP="KOTTM",'$$ENG D
 .I $G(P1HZHB1)="M",$$MSLKZR^W4PRM S SHP="MSLKZR" Q
 .I $$SHORTPC^W4PRM S SHP="KOTTMS"
 ;
 I SHP="KOTMS",$$ENG S SHP="KOTMSE"
 ;
 N MSD S MSD=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",3)
 I $G(MSD) D
 .S %SCV("MS1",37)=$G(MSD)
 .S %SCV("MS1",38)=$G(@$$^W4GL("P1MSD")@(MSD))
 ;
 S %SCV("MS","THPK")=$$^%L1DC($H,1)
 S %TIM=$ZD($H,"24:60") S %SCV("MS","SHPK")=%TIM
 D ^W4IN
 ;
 ;
 I $D(P1HZHB)!$D(P1HZHB2)!$D(P1HZHB1),'$$MSL^W4HZMST(HZM) D
 .N T S T=$P($G(@$$^W4ORD@(HZM,"CB")),"\",7)
 .S %SCV("MS1",27)=$S(T:$$T^%L1TIME($P(T,",",2))_" "_$$^%L1DC(T,1),1:%TIM_"  "_$$^%L1DC($H,1))
 ;
 I '$$^W4CLOSE(HZM) S MAKOR=$S($D(P1HZTM):2,1:1) G SCV
 I $G(MAKOR)=2 G SCV
 ;
 I $D(IET) S MAKOR='$D(@$$^W4ORD@(HZM,IET))
 ;
 I $D(P1HZHB2),$$CLOSE^W4HZMST(HZM)<4 S MAKOR=1 G SCV
 ;
 S MAKOR=0
 ;
SCV I $D(P1HZTM),'$G(TM) S TM=$$TM^W4HZMST(HZM)
 I 'MAKOR D
 .S %SCV("MS","MKET")=$S($$ENG:"Copy",1:"wzrd")
 .S MAKOR=0
 .S %SCV("MS","MISPAR")=$G(@SHM)
 ;
 I $G(MAKOR)=2 D
 .S %SCV("MS","MKET")=$S($$ENG:"Original",1:"xewn"),MAKOR=0
 .S %SCV("MS","MISPAR")=$G(@SHM)
 ;
 I MAKOR D ^W4MKR ;---------  MAKOR ----- ( P1HZTM FROM ^W4DLVORD)
 ;
 I $D(P1HZHB2) S %SCV("MS","MISPAR")="",%SCV("MS","MKET")=""
 ;
 I '$G(NMB) S NMB=$$NMB^W4HZMST(HZM)
 ;
 I $$NOTM^W4PRM,$D(P1HZTM),$$CODTS^W4HZMST(HZM)'=4 G TM1
 ;
 D DAHUI(HZM)
 ;
 D
 .I $$HZM^W4MSL(HZM) D
 ..S %SCV("MS1",26)=$$TRH^W4HZMST(HZM)
 ..S %SCV("MS1",27)=$$SHAA^W4HZMST(HZM)
 ..I $$ADSHAA^W4PRM S %SCV("MS1",27)=$$MEADSHAA^W4HZMST(HZM)
 .S %SCV("MS1",33)=$S($$ENG:"No.",1:"'qn")
 .S %SCV("MS","NDOC")=""
 .I $D(P1HZTM) D
 ..S %SCV("MS","NDOC")=$S($$ENG:"Delivery Sertificate",1:"gelyn zcerz")
 .;
 .I $D(P1HZHB),$$SHUL^W4HZMST(HZM) D  Q
 ..I '$$ENG S %SCV("MS","NDOC")="dlaw"_$S($G(@$$^W4ORD@(HZM,"ETHBL")):"",1:"/qn zipeayg")
 ..I $$ENG S %SCV("MS","NDOC")=$S($G(@$$^W4ORD@(HZM,"ETHBL")):"",1:"Tax Invoice/")_"Receipt"
 ..S %SCV("MS1",31)=$$TOCUSNAME^W4HZMST(HZM)
 .;
 .I $D(P1HZHB1) D
 ..I P1HZHB1="M",$G(@$$^W4PRM@("MSPYOM")) S %SCV("MS1",58)=$$^W4MSPYOM(HZM)
 ..N ORDNOM S ORDNOM=$$HZM^W4ORD(HZM)
 ..S %SCV("MS","NDOC")=$S(P1HZHB1="M":$S($D(P1HZHB1("R")):"glynl mihixt fekix",1:"glynl"),1:ORDNOM_" dpnfd mekiq")
 ..I $$ENG,%SCV("MS","NDOC")["dpnfd mekiq" S %SCV("MS","NDOC")="Bill to Order "_ORDNOM Q
 ..I $$ENG S %SCV("MS","NDOC")=$S(P1HZHB1="M":$S($D(P1HZHB1("R")):"Item concentration to Dispatcher",1:"To Dispatcher"),1:"Bill to Order "_ORDNOM)
 .
 .S %SCV("MS1",32)=$$DLG($$COMP^W4HZMST(HZM),19)
 .
 .I $D(P1HZHB2)!$D(P1HZHB),'$$SHUL^W4HZMST(HZM),$$SHULA^W4HZMST(HZM) D  Q
 ..S %SCV("MS1",33)=""
 ..S %SCV("MS","MISPAR")=""
 ..I '$$ENG S %SCV("MS","NDOC")="i`xy` oeayg"
 ..I $$ENG S %SCV("MS","NDOC")="Credit Bill"
 ..I $G(TMASR) D NDOCTMASR
 ..S %SCV("MS1",31)=$$TOCUSNAME^W4HZMST(HZM)
 .
 .I $D(P1HZHB2),$G(TMASR) D NDOCTMASR Q
 .
 .I $D(P1HZHB2),$$SHUL^W4HZMST(HZM) D  Q
 ..I '$$ENG S %SCV("MS","NDOC")="dlaw/qn zipeayg"
 ..I $$ENG S %SCV("MS","NDOC")="Tax Invoice/Receipt"
 .
 .I $D(P1HZHB3) D
 ..I '$$ENG S %SCV("MS","NDOC")=$S($$ITRA^W4HZMST(HZM):"zipeayg",1:"dlaw/qn zipeayg")
 ..I $$ENG S %SCV("MS","NDOC")=$S($$ITRA^W4HZMST(HZM):"Invoice",1:"Tax Invoice/Receipt")
 ;
 I $G(P1HZHB1)="M"&($L(NMB)<4) D
 .I '$$ENG S %SCV("MS","NDOC")="xw'vl"
 .I $$ENG S %SCV("MS","NDOC")="To Dispatcher"
 ;
TM1 ;
 F IJ="TRH","NMB","NAME","KTV","BAIT","DIRA","KOMA","CNISA","SHAA","CMNT" D
 .S %SCV("MS",IJ)=$G(@IJ)
 ;
 S %SCV("MS","HZM")=$$HZM^W4ORD(HZM)
 ;
 N MKRDLV S MKRDLV=$$MKRDLV^W4HZMST(HZM)
 S %SCV("MS1",44)=$$MKR1^W3MKR(MKRDLV)
 N ASM S ASM=$$HZMLAKNOM^W4HZMST(HZM)
 I ASM["/" S ASM=$P(ASM,"/",2)
 I ASM["^" S ASM=$P(ASM,"^")
 I $$NEW^W4TRICKR(HZM) S ASM=$$HZLAKNOM2^W4HZMST(HZM)
 S %SCV("MS1",45)=ASM
 ;
 S %SCV("MS1",46)=""
 I $$SAHHZMLK^W4PRM,$$HZM^W4MSL(HZM) D
 .N SHZ Q:$G(NMB)=""
 .S SHZ=0
 .N N S N="" F  S N=$O(@$$^W4GL("W4LINKI")@(NMB,1,N)) Q:N=""  D
 ..I $$DEL^W4DEL(N) Q
 ..I $$^W4HZMH(N) Q
 ..S SHZ=SHZ+1
 .S %SCV("MS1",46)=SHZ
 ;
 S %SCV("MS1",51)=$$NMB^W4HZMST(HZM)
 S %SCV("MS1",52)=""
 N NMTBL S NMTBL=$$^W4SHULHN($$NMB^W4HZMST(HZM))
 I $L(NMTBL) S %SCV("MS1",52)=NMTBL
 S %SCV("MS1",53)=$$SOAD^W4HZMST(HZM)
 ;
 S %SCV("MS1",55)=$$DLG($$LKHN1^W4HZMST(HZM),19)
 I $$HZM^W4MSL(HZM) D
 .S %SCV("MS1",55)=$$DLG($$LKHNM^W4HZMST(HZM),19)
 ;
 I $P($G(@$$^W4ORD@(HZM,"HR2")),"\\",8),$$MSL^W4HZMST(HZM) D
 .I '$$ENG S %SCV("MS1",56)=$$HBR^%L1FRM($P($G(@$$^W4ORD@(HZM,"HR2")),"\\",8),5)_" : meid zligzn" ;-- MIS HAZMANA MI THILAT HAJOM
 .I $$ENG S %SCV("MS1",56)="From start day : "_$$ENG^%L1FRM($P($G(@$$^W4ORD@(HZM,"HR2")),"\\",8),5) ;-- MIS HAZMANA MI THILAT HAJOM
 ;
 I $$HZM^W4MSL(HZM) D
 .S %SCV("MS1",59)=$$MAZMIN^W4HZTH(HZM)
 .S %SCV("MS1",75)="",%SCV("MS1",77)=""
 .I $$NOTEL S %SCV("MS1",51)=""
 .I '$$NOTEL D
 ..S %SCV("MS1",75)=$$TEL($S($$TELB^W4HZMST(HZM):$$TELB^W4HZMST(HZM),$$TELA^W4L(NMB):$$TELA^W4L(NMB),$$TELB^W4L(NMB):$$TELB^W4L(NMB),1:NMB))
 ..S %SCV("MS1",77)=""
 ..I $$PELE^W4HZMST(HZM)'=$$NMBKSK^W4KIOSKO S %SCV("MS1",77)=$$TEL($$PELE^W4HZMST(HZM)) ;-- PELE
 .
 .I '$$NOADR D
 ..S %SCV("MS1",62)=$$SPA^%L1FRM($$KOMA^W4HZMST(HZM))
 ..S %SCV("MS1",64)=$$SPA^%L1FRM($$CNISA^W4HZMST(HZM))
 ..S (IR,%SCV("MS1",65))=$$SPA^%L1FRM($$IR^W4HZMST(HZM))
 ..S %SCV("MS1",67)="" I $L(IR) S %SCV("MS1",67)=$$AZOR(HZM)
 ..D
 ...N TX S TX=$$KTVM^W4HZMST(HZM,2)
 ...I $$BAITDIRA^W4PRM!$$SHORTPC^W4PRM D
 ....S TX=$$KTV^W4HZMST(HZM)
 ....I $$ENG S TX="St' "_TX
 ....I '$$ENG S TX=TX_" 'gx"
 ....S %SCV("MS1",61)=$$BAIT^W4HZMST(HZM)
 ....S %SCV("MS1",63)=$$DIRA^W4HZMST(HZM)
 ...S %SCV("MS1",60)=$$DLG(TX,19)
 .
 .I $$NOADR,'$$TAKEAWAY^W4HZMST(HZM) D
 ..S %SCV("MS1",60)=$$DLG("gelyn",19)
 ;
 ;
 N CMNT S CMNT=$$CMNT^W4HZMST(HZM)
 S %SCV("MS1",83)=""
 S %SCV("MS1",84)=""
 I '$D(P1HZTM)&'($G(P1HZHB1)="M"),'($$NOTM^W4PRM&$$HZM^W4MSL(HZM)) D
 .S %SCV("MS1",83)=$E(CMNT,$L(CMNT)-37,$L(CMNT))
 .S %SCV("MS1",84)=$E(CMNT,$L(CMNT)-75,$L(CMNT)-38)
 ;
 S HRAED=$$HRAED^W4HZMST(HZM)
 S HRAED=$$SPA^%L1FRM(HRAED) ; --- 08.11.22
 ;
 I $$HZM^W4MSD(HZM) S HRAED=""
 S %SCV("MS1",81)=$E(HRAED,$L(HRAED)-37,$L(HRAED))
 S %SCV("MS1",82)=$E(HRAED,$L(HRAED)-75,$L(HRAED)-38)
 ;
 I $$MSPYOM^W4PRM D
 .N GW S GW=$G(%MDP("GWPC"),40)
 .N MSPYOM S MSPYOM=$J($$^W4MSPYOM(HZM),2)
 .N WOLTNMB S WOLTNMB=$$WOLTNMB^W4HZMST(HZM)
 .I WOLTNMB S MSPYOM=WOLTNMB_" WL"
 .S %SCV("MS1",85)=MSPYOM
 ;
 I $D(P1HZHB),$$SHUL^W4HZMST(HZM) D
 .N SUM S SUM=$$TSHL^W4HZMST(HZM)
 .N HB S HB=$$NCAB^W4HZMST(HZM) Q:'HB
 .D ^W4HSBGET(HB,"HMK")
 .N SUML S SUML=$G(W4HSB("LMAM"))
 .I SUML>0,$$USSUM^W4HBMAS(SUML) D
 ..N NOM S NOM=$$GETNOM^W4HBMAS(HB,"HMK")
 ..S NOM=$E(NOM,$L(NOM)-8,$L(NOM))
 ..N TX S TX=""
 ..I 'NOM S TX="ef zipeayg oiba zeneyz qn zekpl oi`"
 ..I NOM S TX=NOM_" : d`vwd xtqn"
 ..S %SCV("MS1",36)=TX
 ;
 ; -------------- NOT FROM ^SHP !!!!!!!!!!!!!!!!!!!!!!!! ---------------------
 ;;M ^AA=%SCV
 D ^W4SHPORD(SHP)
 ;
 D SCH^W4SCV
 S I=$ZP(@$$^W4MAIN("TMPS111")@(99999)) K %SCV
 Q
 ;
 ;
NDOCTMASR ;
 S %SCV("MS","NDOC")=$S($$ENG:"Delivery Sertificate",1:"gelyn zcerz")
 Q
 ;
KOTPRM ; --> %SCV("MS","NESEK"),%SCV("MS","KTESEK"),%SCV("MS","TESEK")
 ;           %SCV("MS1",3) , %SCV("MS1",12), %SCV("MS1",16)
 ;           
 N GW,GW1 S GW=40,GW1=20
 N NESEK S NESEK=$$SPA^%L1FRM($TR($G(@$$^W4PL@("ESEK",1)),"#_",""))
 S NESEK=$$PREP(NESEK)
 ;
 N NIK S NIK=$$SPA^%L1FRM($TR($G(@$$^W4PL@("ESEK",1.5)),"#_",""))
 D
 .I $L(NIK)<GW1 S NIK=$$CENTRB^%L1FRM(NIK,GW) Q
 .I $L(NIK)>(GW1-1),$E(NIK)'?1U S NIK=$E(NIK,$L(NIK)-19,$L(NIK)) Q
 .I $L(NIK)>(GW1-1),$E(NIK)?1U S NIK=$E(NIK,1,GW1)
 ;
 I $L(NIK) D
 .S NIK=$$PREP(NIK)
 .S %SCV("MS1",3)=$G(%MDP("BB"))_NIK_$G(%MDP("N"))
 .S %SCV("MS","NESEK")=$$CENTR^%L1FRM(NESEK,GW)
 ;
 I '$L(NIK) D
 .I $L(NESEK)<GW1 S %SCV("MS","NESEK")=$G(%MDP("BB"))_$$CENTRB^%L1FRM(NESEK,GW)_$G(%MDP("N"))
 .I $L(NESEK)>(GW1-1) S %SCV("MS","NESEK")=$$CENTR^%L1FRM(NESEK,GW)
 ;
 I '$$ENG S %SCV("MS1",12)=$S(NESEK["n""ra":".t.g",1:".n.r")
 ;
 S %SCV("MS1",16)=$$MEUHAD^W4PRM
 ;
 S %SCV("MS","KTESEK")=$$PREP($G(@$$^W4PL@("ESEK",2)))
 S %SCV("MS","TESEK")=$G(@$$^W4PL@("ESEK",3))
 S %SCV("MS","MESEK")=$G(@$$^W4PL@("ESEK",4))
 Q
 ;
 ;
KOTT ;
 N GW S GW=$G(%MDP("GWPC")) I GW<40 S GW=40
 ;
 I $G(@$$^W4PRM@("MM")),$G(P1HZHB1)="M" D
 .I '$$ENG S TXT=$TR($J("",14)," ","-")_" zecrqn "_$TR($J("",14)," ","-")_" _" D S1
 .I $$ENG S TXT=$TR($J("",14)," ","-")_" Restaurants "_$TR($J("",14)," ","-") D S1
 .I $$MSD1(HZM,$$^W4ORD_"(HZM)")
 .N N S N="" F  S N=$O(MMSD(N)) Q:N=""  S TXT=%CLI_$J(MMSD(N),18)_%CCL D S1
 .K MMSD
 ;
 D
 .N LKHN S LKHN=$$LKHN^W4HZMST(HZM)
 .I LKHN,$L(LKHN)>3,$$HZM^W4MSD(HZM),'$$SHULA^W4HZMST(HZM) D
 ..I '$$ENG D
 ...S TXT="<B>"_$J($$LKHN^W4HZMST(HZM)_" : gewl 'qn",GW-2\2)_"<N>" D S1
 ...S TXT="<B>"_$J($$LKHN1^W4HZMST(HZM)_" : gewl my",GW-2\2)_"<N>" D S1
 ..I $$ENG D
 ...S TXT="<B>"_"Cust. No. :"_$J($$LKHN^W4HZMST(HZM),GW-2\2)_"<N>" D S1
 ...S TXT="<B>"_"Cust.Name :"_$J($$LKHN1^W4HZMST(HZM),GW-2\2)_"<N>" D S1
 ;
 I $D(P1HZTM)!($G(P1HZHB1)="M")!($$NOTM^W4PRM&($D(P1HZHB)!$D(P1HZHB2)!$D(P1HZHB3))&$$HZM^W4MSL(HZM)) D
 .N CMNT,HRAED
 .N GW1 S GW1=GW-2
 .S CMNT=$$CMNT^W4HZMST(HZM)
 .
 .I CMNT'="" D  D KAV
 ..I '$$ENG S TXT="<B>"_$J(": zaezkl zexrd",GW1\2)_"<N>" D S1
 ..I $$ENG S TXT="<B>"_$J("Comments to address :",GW1\2)_"<N>" D S1
 ..S TXT="" D S1
 ..I $G(@$$^W4PRM@("HRKTVBIG")) D  Q
 ...D DLG^%L1FRM(CMNT,GW1\2)
 ...N J F J=1:1 Q:'$D(%CHAST(1,J))  D
 ....S TXT="<B>"_%CHAST(1,J)_"<N>" D S1
 ...S TXT="" D S1
 ..
 ..D DLG^%L1FRM(CMNT,GW1)
 ..N J F J=1:1 Q:'$D(%CHAST(1,J))  D
 ...S TXT=%CHAST(1,J) D S1
 ..S TXT="" D S1
 . 
 .N CMNTIN S CMNTIN=$$CMNTIN^W4L(NMB)
 .
 .I $$SPA^%L1FRM(CMNTIN)'="" D  D KAV
 ..I '$$ENG S TXT="<B>"_$J(": gewl lr zexrd",GW1\2)_"<N>" D S1
 ..I $$ENG S TXT="<B>"_$J("Comments about customer :",GW1\2)_"<N>" D S1
 ..S TXT="" D S1
 ..D DLG^%L1FRM("!! "_CMNTIN,GW1\2)
 ..N J F J=1:1 Q:'$D(%CHAST(1,J))  D
 ...S TXT="<B>"_%CHAST(1,J)_"<N>" D S1
 ..S TXT="" D S1
 . 
 .I $$DELIS^W4PRM,$G(P1HZHB1)="M"!$D(P1HZTM) Q
 .
 .S HRAED=$$HRAED^W4HZMST(HZM)
 .S HRAED=$$SPA^%L1FRM(HRAED)
 .;;I HRAED[": WOLT " S HRAED=$P(HRAED,": WOLT") ; -- 13/10/23 --> COMMENT
 .
 .I $L(HRAED) D  D KAV
 ..I '$$ENG S TXT="<B>"_$J(": dpnfdl zexrd",GW1\2)_"<N>" D S1
 ..I $$ENG S TXT="<B>"_$J("Comments to order :",GW1\2)_"<N>" D S1
 ..S TXT="" D S1
 ..
 ..I $G(@$$^W4PRM@("HRKTVBIG")) D  Q
 ...D DLG^%L1FRM(HRAED,GW1\2)
 ...N J F J=1:1 Q:'$D(%CHAST(1,J))  D
 ....S TXT=$G(%MDP("B"))_%CHAST(1,J)_$G(%MDP("N")) D S1
 ...S TXT="" D S1
 ..
 ..D DLG^%L1FRM(HRAED,GW1)
 ..N J F J=1:1 Q:'$D(%CHAST(1,J))  D
 ...S TXT=%CHAST(1,J) D S1
 ;
 Q
 ;
 ;
KAV ;
 N SM,TXT S SM=0 S TXT=$TR($J("",39)," ","-") D S1
 Q
 ;
S1 ;
 S @$$^W4MAIN("TMPS111")@($O(@$$^W4MAIN("TMPS111")@(99999),-1)+1)=TXT
 K TXT Q
 ;
PTCA(HZM) ;
 N SHUL,CA
 S SHUL=$$SHUL^W4HZMST(HZM) I 'SHUL Q 0
 S CA=$P($G(@$$^W4ORD@(HZM,"CB")),"\",4) I 'CA Q 1
 ;;I SHUL'>CA,$G(@$$^W4PRM@("NOPTCA"))=1 Q 0
 I $G(@$$^W4PRM@("NOPTCA"))=1 Q 0
 Q 1
 ;
W(TXT,PR) ;
 Q:$D(P1TNOPR)
 S PR=$G(PR)
 I '$G(GWPC) S GWPC=40
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 D ^W4SETPC($G(PRINT),$S(PR:$G(%MDP("B")),1:$G(%MDP("N")))_$J($TR(TXT,TS0,TSS),GWPC-2\(1+PR))_$G(%MDP("N")))
 Q
 ;
MSD1(HZM,GLB) N N,MM K MMSD S N="",MM="",MS=""
 F  S N=$O(@GLB@(N)) Q:N=""  I N?1N.N D
 .I $P($G(^(N)),"\")?1":"1N.N S MS=$E($P(^(N),"\"),2,4) I MS,'$D(MMSD(MS)) D
 ..S MMSD(MS)=$G(@$$^W4GL("P1MSD")@(MS))
 ..S MM=MM_$G(@$$^W4GL("P1MSD")@(MS))_" "_MS_";"
 Q $E(MM,1,$L(MM)-1)
 ;
PCHB2 ;
 N P1HZTM,P1HZHB,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR,SM,HB2,NCAB,MAKOR
 S SM=1,MAKOR=0 S:$$CLOSE^W4HZMST(HZM)<4!($G(P3T)=3) MAKOR=1
 S P1HZHB2="",SHM="HB2",ITS=4,IET="ETHB2"
 D KOT
 I $$NOTM^W4PRM,$$HZM^W4MSL(HZM) D KOTT
 D ^W4HZTH
 Q
 ;
TOCUSNAME ;
 I $$CUSTNAMES^W4PAYFN Q
 N TOCUS,VT S TOCUS=$P($G(@$$^W4ORD@(HZM,"TOCUSNAME")),"\")
 ;;N TOCUS,VT S TOCUS=""
 ;
 N TO S TO=" 'akl"
 I $$ENG S TO="To "
 I TOCUS'?.P D  Q
 .I '$$ENG S %SCV("MS1",80)=TOCUS_TO
 .I $$ENG S %SCV("MS1",80)=TO_TOCUS
 ;
 S TOCUS=$S($$HRA2^W4HZMST(HZM)[TO:$$HRA2^W4HZMST(HZM),1:"")
 ;
 I TOCUS?.P,$$LKHN1^W4HZMST(HZM)'?.P D
 .S TOCUS=$$LKHN1^W4HZMST(HZM)
 ;
 S %SCV("MS1",80)=$$RPL^%L1FRM(TOCUS,TO,"")
 I $L(%SCV("MS1",80)) D
 .I '$$ENG S %SCV("MS1",80)=%SCV("MS1",80)_TO
 .I $$ENG S %SCV("MS1",80)=TO_%SCV("MS1",80)
 Q
 ;
 ;
PCHB ; 
 ;;S ^AA("W4HZTM","PCHB")=""
 I '$D(%MDP) D MDPPC
  ;---- HADP HMK ----
 N IET,ITS,SHM,FRST,%FNAME,%GETIN,I,P1HZTM,P1HZHB,P1HZHB2,P1HZHB3,MAKOR
 N P1TNOPR,BLIPR
 S IET="ETHB",ITS=2,SHM="HB",SHET=1,MAKOR=0
 I '$$ITRA^W4HZMST(HZM) S P1HZHB=""
 I $$ITRA^W4HZMST(HZM) S P1HZHB3=""
 S HB=$S($G(@$$^W4ORD@(HZM,IET)):^(IET),1:$O(@$$^W4GL("P1HB")@(9999999),-1)+1)
 I HB<1 S HB=1
 ;;Q:$D(@$$^W4ORD@(HZM,IET,"PC")) ; -- 13/12/20 --> COMMENT
 I '$D(@$$^W4ORD@(HZM,IET)) S MAKOR=1
 I $D(@$$^W4ORD@(HZM,IET)),'$D(@$$^W4ORD@(HZM,IET,"PC")) S MAKOR=2
 ;
 D KOT,KOTT
 D ^W4HZTH
 I '$D(P1HZHB3),$G(@$$^W4ORD@(HZM,IET)) S @$$^W4ORD@(HZM,IET,"PC")=""
 K P1HZHB3
 Q
 ;
ENG(STAM) ; 
 I $D(HSBENG) Q 1
 I $$^W6,$G(@$$^W4PRM@("HBHBR")) Q 0
 I $$^%W1LNG="E" Q 1 
 Q 0 
 ;
PREP(TX) ; 
 I $$^%W1HB,$D(HSBENG),TX'="<H>" S TX="<H>"_$$SPA^%L1FRM(TX)
 Q TX 
 ;
MDPPC ; 
 N %BIGFONT S %BIGFONT=$G(@$$^W4PRM@("BIGFONT"))
 I %BIGFONT=2 G MDPPCE
 I $D(P1HZHB)!$D(P1HZHB1)!$D(P1HZHB2)!$D(P1HZHB3) S %BIGFONT=0
 I $D(P1HZTM) S %BIGFONT=$S(%BIGFONT=3:3,1:0)
MDPPCE ;
 D ^W4MDPPC 
 Q 
 ;
TEL(TEL) ; 
 S TEL=$$SPA^%L1FRM($G(TEL))
 I $G(TEL)="" Q TEL 
 I TEL["-" Q TEL 
 I $E(TEL)'=0 Q TEL 
 I $E(TEL,1,2)="05" Q $E(TEL,1,3)_"-"_$E(TEL,4,14) 
 Q $E(TEL,1,2)_"-"_$E(TEL,3,14) 
 ;
AZOR(HZM) ; 
 Q $$AZOR^W4HZMST(HZM)
 ;
DLG(TX,DL) ;
 I $G(SHP)'["KOTTM" Q TX
 D DLG^%L1FRM(TX,DL) 
 N ST,J
 I '$D(%CHAST(1,2)) Q $C(10)_%CHAST(1,1)_$C(10)
 S ST=$C(10)
 F J=1:1 Q:'$D(%CHAST(1,J))  D
 .S ST=ST_%CHAST(1,J)_$C(10) 
 Q ST 
 ;
DAHUI(HZM) ; 
 I $$HZM^W4MSL(HZM),$$DAHUY^W4HZPCHD(HZM) D
 .N TXT S TXT=$$MDP("BB")_"!!! diegc dpnfd !!!"_$$MDP("N") D S1
 .S TXT="" D S1
 Q
 ;
MDP(IND) ;
 I $G(IND)="" Q ""
 Q $G(%MDP(IND))
 ;
TAIMAN(STAM) ; 
 I $G(@$$^W4PRM@("ASH","MASOF"))=1410996 Q 1
 Q 0 
 ;
ETEK(HZM) ; 
 I $D(P1HZHB),$D(@$$^W4ORD@(HZM,"ETHB")) Q 1
 I $D(P1HZHB2),$D(@$$^W4ORD@(HZM,"ETHB2")) Q 1
 Q 0 
 ;
NOPCWOLT() ; 
 I $G(@$$^W4PRM@("NOPCWOLT")) Q 1 
 I $G(@$$^W4PRM@("NOHBWOLT")) Q 1 
 Q 0 
 ;
NOADR() ; 
 I $G(@$$^W4PRM@("NOPCADR")) Q 1 
 Q 0 
 ; 
NOTEL() ; 
 I $G(@$$^W4PRM@("NOPCTEL")) Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZTM0
W4HZTM ;                                                               [ 24.08.15 13:34 ] [ 22.05.15 10:34 ] [ 31.03.15 12:34 ]
 N IET,ITS,SHM,FRST,%FNAME,%GETIN,I,USK
 ;-------------- TM ----------------------
 S IET="ETTM",ITS=1,SHM="TM",P1HZTM=""
 I '$G(TM) S TM=$G(@$$^W4ORD)+1
 I $G(@$$^W4PRM@("MM")) S P1TNOPR=""
 F I=1:1:4 S USK(I)=1
 I $D(@$$^W4ORD@(HZM,"ETTM")) G P1 ;----- HAETEK
 ;;**;;S %SCRN=HZSCR,FRST=1,%FNAME="PSL",%FNAME("END")="ZMANS" D GETF^%L1SC Q:%BS
 S @$$^W4ORD@(HZM,"TM")=@$$^W4THZ@("TM") D ^W4KHM(HZM) ;-- BITUL STAR. TM
 ;
 ;------ T.VX.--------------------------------------
P1 D ^W4MDPPC
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
P2 S (GLBV,GLBV1)=$$^W4ORD_"(HZM)"
 S NMB=$$NMB^W4HZMST(HZM)
 S I=0 N MAKOR
 K @$$^W4MAIN("TMPS111")
 ;
 I '$$^W4CLOSE(HZM) D
 .I $D(P1HZHB)&$$PTCA(HZM)!($D(P1HZHB2)&'$G(@$$^W4PRM@("NOPTASR"))) D
 ..I $L(PRINT) D ^W4SETPC(PRINT,$G(%MDP("P")))
 ;
 I $G(P1HZHB1)="B" D  G END ;-- TLUSH BITUL
 .N MLZR,MNL,MAKOR,N S MAKOR=0
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  I '$D(@$$^W4ORD@(HZM,"BIT",N,"PC")) D  Q
 ..S MNL=$P(@$$^W4ORD@(HZM,"BIT",N),"*",2)
 ..S MLZR=$P(@$$^W4ORD@(HZM,"BIT",N),"*",1)
 ..I MLZR=""!(MLZR=MNL) S MLZR=MNL,MNL=""
 .I MLZR="" S MLZR=$$^W4MLZR(HZM)
 .D W("lehia yelz   ",1)
 .D W($$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))_" dqtcd onf    ",0)
 .D W(HZM_" 'qn dpnfd",1) D W("",0)
 .D W($$SHORT^W4NAME(MLZR)_" "_MLZR_$$PC^W4WAITER,1)
 .I MNL'="" D W($$SHORT^W4NAME(MNL)_" "_MNL_" ldpn",1)
 .D W("",0)
 .D W(NMB_" "_$$PC^W4DICTBL,1)
 .D W("",0)
 .D ^W4HZTH
 ;
 I $G(P1HZHB1)="H" D  G END ;-- TLUSH HANAHA
 .N MLZR,MAKOR,N S MAKOR=0
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,"HNH",N)) Q:N=""  I '$D(@$$^W4ORD@(HZM,"HNH",N,"PC")) D  Q
 ..S MLZR=$P(@$$^W4ORD@(HZM,"HNH",N),"*",2)
 .I MLZR="" S MLZR=$$^W4MLZR(HZM)
 .D W("dgpd yelz   ",1)
 .D W($$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))_" dqtcd onf    ",0)
 .D W(HZM_" 'qn dpnfd",1) D W("",0)
 .D W($$SHORT^W4NAME(MLZR)_" "_MLZR_$$PC^W4WAITER,1)
 .D W("",0)
 .D W(NMB_" "_$$PC^W4DICTBL,1)
 .D W("",0)
 .D ^W4HZTH
 ;
 K ^LEVD("TM")
 ;
 I $D(P1TNOPR) G:$D(P1HZTM)&$G(@$$^W4PRM@("NOTM")) HMK D  G END
 .D ASRWR^W4HZTH
 ;
 D KOT ;---> ^W4MKR
 I '$D(BLIPR) D KOTT
 ;
 S %SCRN=HZSCR
 ;
 I $D(P1HZHB2),"2367"[+$$CLOSE^W4HZMST(HZM),'$G(TMASR),'$G(@$$^W4PRM@("NOTM"))!'$$MSL^W4HZMST(HZM) D  G END  ;-- HESBON ASHRAI ONLY
 .S ^LEVD("TM",3)=""
 .S SM=1 S:$$CLOSE^W4HZMST(HZM)<4!($G(P3T)=3) MAKOR=1
 .D ^W4INP,HEADNA^W4HZTH K P1HZHB2
 ;
 S ^LEVD("TM",4)=""
 D ^W4HZTH
 ;
HMK ;I $D(P1HZTM),$$CLOSE^W4HZMST(HZM)>4 D  ;---- HADP HAETEK H-A AHAREJ TM
 .I %MDP("GWPC")=80 Q
 .S ^LEVD("TM",5)=""
 .N IET,ITS,SHM,FRST,%FNAME,%GETIN,I,P1HZTM,P1HZHB,P1HZHB2
 .S IET="ETHB2",ITS=4,SHM="NCAB",P1HZHB2=""
 .Q:$D(@$$^W4ORD@(HZM,IET,"PC"))
 .S SM=1,MAKOR=0
 .D ^W4INP,HEADNA^W4HZTH
 .S @$$^W4ORD@(HZM,IET,"PC")="" K P1HZHB23
 ;
 I $D(P1HZTM),$$SHULA^W4HZMST(HZM)&'$$SHUL^W4HZMST(HZM) D PCHB2 G END
 ;
 ;;I $D(P1HZTM),$$CLOSE^W4HZMST(HZM)=1,$$CODTS^W4HZMST(HZM)=4 D
 .I %MDP("GWPC")=80 S P1TNOPR=""
 .I $G(@$$^W4PRM@("DMSHMZ")) D  ;-- DMEJ SHERUT --> MEZUMAN OTOMATI
 ..N NOPETEK,SUGT,MZM,NCAB,NOV
 ..S NCAB=$S($G(@$$^W4ORD@(HZM,"ETHB")):^("ETHB"),1:$ZP(@$$^W4GL("P1HB")@(999999))+1)
 ..D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 ..S MZM=DMSH,SUGT=1
 ..S (HNHS,HNHO)=HNH,NOPETEK="",NOV=""
 ..D P1^W4T
 .;
 .K %SC("END") I '$G(SHULA) S %SC("END")="F4"
 .D ^W4T(HZM,1)
 ;
 ;
HMK1 ;;I $D(P1HZTM),$$CLOSE^W4HZMST(HZM)<4!($$CLOSE^W4HZMST(HZM)>5) D  ;-- HADP HMK ( IF MEZ - FICT )
 I $D(P1HZTM),$$SHULA^W4HZMST(HZM)<$$TSHL^W4HZMST(HZM) D  ;-- HADP HMK ( IF MEZ - FICT )
 .I '$D(%MDP) D ^W4MDPPC
 .;;I $$CLOSE^W4HZMST(HZM)=3,'$$DEFIND^W4HZMST(HZM,"V") Q
 .
 .S ^LEVD("TM",6)=""
 . ;---- HADP HMK ----
 .N IET,ITS,SHM,FRST,%FNAME,%GETIN,I,P1HZTM,P1HZHB,P1HZHB2,P1HZHB3,MAKOR
 .;;I $G(@$$^W4PRM@("NOTM")) N P1TNOPR,BLIPR
 .N P1TNOPR,BLIPR
 .S IET="ETHB",ITS=2,SHM="HB",SHET=1,MAKOR=0
 .I '$$ITRA^W4HZMST(HZM) S P1HZHB=""
 .I $$ITRA^W4HZMST(HZM) S P1HZHB3=""
 .S HB=$S($G(@$$^W4ORD@(HZM,IET)):^(IET),1:$O(@$$^W4GL("P1HB")@(9999999),-1)+1)
 .Q:$D(@$$^W4ORD@(HZM,IET,"PC"))
 .I '$D(@$$^W4ORD@(HZM,IET)) S MAKOR=1
 .I $D(@$$^W4ORD@(HZM,IET)),'$D(@$$^W4ORD@(HZM,IET,"PC")) S MAKOR=2
 .
 .D KOT,KOTT
 .D ^W4HZTH
 .I '$D(P1HZHB3) S @$$^W4ORD@(HZM,IET,"PC")=""
 .K P1HZHB3
 ;
END I $G(HZM) D ^W4GIBHZ(HZM)
 ;
 K P1HZTM,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3,P1HZHB5
 Q
 ;
 ;
KOT ;------------  KOTERET SHEL MISMACH  --------
 N %SCRN,IJ,T
 D ^W4MDPPC
 ;
 N GW S GW=40
 N NESEK S NESEK=$$SPA^%L1FRM($TR($G(@$$^W4PL@("ESEK",1)),"#_",""))
 S %SCV("MS","NESEK")=$G(%MDP("BB"))_$$CENTRB^%L1FRM(NESEK,GW)_$G(%MDP("N"))
 I $L(NESEK)>19 S %SCV("MS","NESEK")=$$CENTR^%L1FRM(NESEK,GW)
 ;
 S %SCV("MS","KTESEK")=$G(@$$^W4PL@("ESEK",2))
 S %SCV("MS","TESEK")=$G(@$$^W4PL@("ESEK",3))
 S %SCV("MS","MESEK")=$G(@$$^W4PL@("ESEK",4))
 ;
 N MSD S MSD=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",3)
 I $G(MSD) D
 .S %SCV("MS1",37)=$G(MSD)
 .S %SCV("MS1",38)=$G(@$$^W4GL("P1MSD")@(MSD))
 ;
 S %SCV("MS","THPK")=$$^%L1DC($H,1)
 S %TIM=$ZD($H,"24:60") S %SCV("MS","SHPK")=%TIM
 D ^W4IN
 ;
 ;
 I $D(P1HZHB)!$D(P1HZHB2)!$D(P1HZHB1),'$$MSL^W4HZMST(HZM) D
 .N T S T=$P($G(@$$^W4ORD@(HZM,"CB")),"\",7)
 .S %SCV("MS1",27)=$S(T:$$T^%L1TIME($P(T,",",2))_" "_$$^%L1DC(T,1),1:%TIM_"  "_$$^%L1DC($H,1))
 ;
 I '$$^W4CLOSE(HZM) S MAKOR=$S($D(P1HZTM):2,1:1) G SCV
 I $G(MAKOR)=2 G SCV
 ;
 I $D(IET) S MAKOR='$D(@$$^W4ORD@(HZM,IET))
 ;
 I $D(P1HZHB2),$$CLOSE^W4HZMST(HZM)<4 S MAKOR=1 G SCV
 ;
 S MAKOR=0
 ;
SCV I $D(P1HZTM),'$G(TM) S TM=$$TM^W4HZMST(HZM)
 I 'MAKOR D
 .S %SCV("MS","MKET")="wzrd",MAKOR=0
 .S %SCV("MS","MISPAR")=$G(@SHM)
 ;
 I $G(MAKOR)=2 D
 .S %SCV("MS","MKET")="xewn",MAKOR=0
 .S %SCV("MS","MISPAR")=$G(@SHM)
 ;
 I MAKOR D ^W4MKR ;---------  MAKOR ----- ( P1HZTM FROM ^W4DLVORD)
 ;
 I $D(P1HZHB2) S %SCV("MS","MISPAR")="",%SCV("MS","MKET")=""
 ;
 I '$G(NMB) S NMB=$$NMB^W4HZMST(HZM)
 ;
 I $G(@$$^W4PRM@("NOTM")),$D(P1HZTM),$$CODTS^W4HZMST(HZM)'=4 Q
 ;
 D
 .I $$HZM^W4MSL(HZM) D
 ..S %SCV("MS1",26)=$$TRH^W4HZMST(HZM)
 ..S %SCV("MS1",27)=$$SHAA^W4HZMST(HZM)
 .S %SCV("MS1",33)="'qn"
 .S %SCV("MS","NDOC")=""
 .I $D(P1HZTM)!$G(TMASR) S %SCV("MS","NDOC")="gelyn zcerz" Q
 .
 .I $D(P1HZHB),$$SHUL^W4HZMST(HZM) S %SCV("MS","NDOC")="dlaw"_$S($G(@$$^W4ORD@(HZM,"ETHBL")):"",1:"/qn zipeayg") Q
 .
 .I $D(P1HZHB1) S %SCV("MS","NDOC")=$S(P1HZHB1="M":$S($D(P1HZHB1("R")):"glynl mihixt fekix",1:"glynl"),1:HZM_" dpnfd mekiq") Q
 .
 .I $D(P1HZHB2)!$D(P1HZHB),'$$SHUL^W4HZMST(HZM),$$SHULA^W4HZMST(HZM) D  Q
 ..S %SCV("MS1",33)=""
 ..S %SCV("MS","MISPAR")=""
 ..S %SCV("MS","NDOC")="i`xy` oeayg"
 .
 .I $D(P1HZHB2),$$SHUL^W4HZMST(HZM) D  Q
 ..S %SCV("MS","NDOC")="dlaw/qn zipeayg"
 .
 .I $D(P1HZHB3) S %SCV("MS","NDOC")=$S($$ITRA^W4HZMST(HZM):"zipeayg",1:"dlaw/qn zipeayg")
 ;
 I $G(P1HZHB1)="M"&($L(NMB)<4) S %SCV("MS","NDOC")="xw'vl"
 ;
 F IJ="TRH","NMB","NAME","KTV","BAIT","DIRA","KOMA","CNISA","SHAA","CMNT","HZM" D
 .S %SCV("MS",IJ)=$G(@IJ)
 ;
 S %SCV("MS1",51)=$$NMB^W4HZMST(HZM)
 S %SCV("MS1",53)=$$SOAD^W4HZMST(HZM)
 S %SCV("MS1",55)=$$LKHN1^W4HZMST(HZM)
 ;
 I $P($G(@$$^W4ORD@(HZM,"HR2")),"\\",8),$$MSL^W4HZMST(HZM) D
 .S %SCV("MS1",56)=$$HBR^%L1FRM($P($G(@$$^W4ORD@(HZM,"HR2")),"\\",8),5)_" : meid zligzn" ;-- MIS HAZMANA MI THILAT HAJOM
 ;
 I $$HZM^W4MSL(HZM) D
 .S %SCV("MS1",59)=$$MAZMIN^W4HZTH(HZM)
 .S %SCV("MS1",75)=$S($$TELA^W4L(NMB):$$TELA^W4L(NMB),$$TELB^W4L(NMB):$$TELB^W4L(NMB),1:NMB)
 .S %SCV("MS1",77)=$$PELE^W4HZMST(HZM) ;-- PELE
 .S %SCV("MS1",60)=$$KTV^W4HZMST(HZM)
 .S %SCV("MS1",61)=$$BAIT^W4HZMST(HZM)
 .S %SCV("MS1",62)=$$KOMA^W4HZMST(HZM)
 .S %SCV("MS1",63)=$$DIRA^W4HZMST(HZM)
 .S %SCV("MS1",64)=$$CNISA^W4HZMST(HZM)
 .S (IR,%SCV("MS1",65))=$$IR^W4HZMST(HZM)
 .S %SCV("MS1",67)="" I $L(IR) S %SCV("MS1",67)=$$AZOR^W4HZGT(NMB)
 ;
 D TOCUSNAME
 ;
 S HRAED=$$HRAED^W4HZMST(HZM)
 I $$HZM^W4MSD(HZM) S HRAED=""
 S %SCV("MS1",81)=$E(HRAED,$L(HRAED)-37,$L(HRAED))
 S %SCV("MS1",82)=$E(HRAED,$L(HRAED)-75,$L(HRAED)-38)
 ;
 S %SCV("SCRN")=$S($$^W4MSL(NMB):"KOT",1:"KOTMS")
 S %SCV("SC")=$G(I,1),%SCV="V"
 ;
 I $$POS^W4MTAW S %SCV("SHP")="KOTMS5v"
 ;
 I %SCV("SCRN")="KOTMS",$L($G(@$$^W4GL("PL")@("ESEK",1)))>20,$G(%MDP("GWPC"))'>40 D
 .I $$POS^W4MTAW S %SCV("SHP")="KOTMS6v" Q
 .S %SCV("SHP")="KOTMS1v" Q
 ;
 I $G(@$$^W4PRM@("MSPYOM")),$L(NMB)<4 D
 .S %SCV("MS1",85)=$G(%MDP("BB"),%MDP("B"))_" "_$P($G(@$$^W4GL("P1H")@(P1DZ,HZM)),",")_" : inei 'qn "_%MDP("N")
 .S %SCV("SHP")="KOTMS3v"
 ;
 I $D(P1HZTM)!($G(P1HZHB1)="M"&$$^W4MSL(NMB))!($G(@$$^W4PRM@("NOTM"))&$$^W4MSL(NMB)) D
 .S %SCV("SHP")="KOTTMv"
 ;
 N SHP S SHP=$S($G(%SCV("SHP"))["KOTTM":"KOTTM",1:%SCV("SCRN"))
 ; -------------- NOT FROM ^SHP !!!!!!!!!!!!!!!!!!!!!!!! ---------------------
 D ^W4SHPORD(SHP)
 ;
 D SCH^W4SCV
 S I=$ZP(@$$^W4MAIN("TMPS111")@(99999)) K %SCV
 Q
 ;
 ;
KOTT ;
 N GW S GW=$G(%MDP("GWPC")) I GW<40 S GW=40
 ;
 I $G(@$$^W4PRM@("MM")),$G(P1HZHB1)="M" D
 .S TXT=$TR($J("",14)," ","-")_" zecrqn "_$TR($J("",14)," ","-")_" _" D S1
 .I $$MSD1(HZM,$$^W4ORD_"(HZM)")
 .N N S N="" F  S N=$O(MMSD(N)) Q:N=""  S TXT=%CLI_$J(MMSD(N),18)_%CCL D S1
 .K MMSD
 ;
 D
 .N LKHN S LKHN=$$LKHN^W4HZMST(HZM)
 .I LKHN,$L(LKHN)>3,$$HZM^W4MSD(HZM),'$$SHULA^W4HZMST(HZM) D
 ..S TXT="<B>"_$J($$LKHN^W4HZMST(HZM)_" : gewl 'qn",GW-2\2)_"<N>" D S1
 ..S TXT="<B>"_$J($$LKHN1^W4HZMST(HZM)_" : gewl my",GW-2\2)_"<N>" D S1
 ;
 I $D(P1HZTM) D
 .N CMNT,HRAED
 .N GW1 S GW1=GW-2
 .S CMNT=$$CMNT^W4HZMST(HZM)
 .I CMNT'="" D
 ..S TXT="<B>"_$J(": zaezkl zexrd",GW1\2)_"<N>" D S1
 ..D DLG^%L1FRM(CMNT,GW1)
 ..N J F J=1:1 Q:'$D(%CHAST(1,J))  D
 ...S TXT=%CHAST(1,J) D S1
 ..S TXT="" D S1
 .S HRAED=$$HRAED^W4HZMST(HZM)
 .I $L(HRAED) D
 ..S TXT="<B>"_$J(": dpnfdl zexrd",GW1\2)_"<N>" D S1
 ..D DLG^%L1FRM(HRAED,GW1)
 ..N J F J=1:1 Q:'$D(%CHAST(1,J))  D
 ...S TXT=%CHAST(1,J) D S1
 ;
 I GW<80 D
 .S TXT=$S($G(TMASR)!$D(P1HZHB1("R")):" zenk ",1:" mekq ")
 .S TXT=TXT_":------- hixt xe`ze cew -------:"
 .D S1
 Q
 ;
S1 ;
 S @$$^W4MAIN("TMPS111")@($O(@$$^W4MAIN("TMPS111")@(99999),-1)+1)=TXT
 K TXT Q
 ;
PTCA(HZM) ;
 N SHUL,CA
 S SHUL=$$SHUL^W4HZMST(HZM) I 'SHUL Q 0
 S CA=$P($G(@$$^W4ORD@(HZM,"CB")),"\",4) I 'CA Q 1
 I SHUL'>CA,$G(@$$^W4PRM@("NOPTCA"))=1 Q 0
 Q 1
 ;
W(TXT,PR) ;
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 D ^W4SETPC($G(PRINT),$S(PR:$G(%MDP("B")),1:$G(%MDP("N")))_$J($TR(TXT,TS0,TSS),GWPC-2\(1+PR))_$G(%MDP("N")))
 Q
 ;
MSD1(HZM,GLB) N N,MM K MMSD S N="",MM="",MS=""
 F  S N=$O(@GLB@(N)) Q:N=""  I N?1N.N D
 .I $P($G(^(N)),"\")?1":"1N.N S MS=$E($P(^(N),"\"),2,4) I MS,'$D(MMSD(MS)) D
 ..S MMSD(MS)=$G(@$$^W4GL("P1MSD")@(MS))
 ..S MM=MM_$G(@$$^W4GL("P1MSD")@(MS))_" "_MS_";"
 Q $E(MM,1,$L(MM)-1)
 ;
PCHB2 ;
 N P1HZTM,P1HZHB,P1HZHB2,P1HZHB3,P1TNOPR,BLIPR,SM,HB2,NCAB,MAKOR
 S SM=1,MAKOR=0 S:$$CLOSE^W4HZMST(HZM)<4!($G(P3T)=3) MAKOR=1
 S P1HZHB2="",SHM="HB2",ITS=4,IET="ETHB2"
 D KOT,^W4HZTH
 Q
 ;
TOCUSNAME ;
 N TOCUS,VT S TOCUS=""
 I $G(@$$^W4ORD@(HZM,"TOCUSNAME"))=1 D
 .N VT S VT="" F  S VT=$O(@$$^W4ORD@(HZM,"TOCUSNAME",VT)) Q:VT=""  D
 ..S TOCUS=$P($G(^(VT,1)),"\")
 ;
 I TOCUS'?.P S %SCV("MS1",80)=TOCUS_" 'akl" Q
 ;
 S TOCUS=$S($$HRA2^W4HZMST(HZM)["'akl":$$HRA2^W4HZMST(HZM),1:"")
 I TOCUS?.P,$$LKHN1^W4HZMST(HZM)'?.P D
 .S TOCUS=$$LKHN1^W4HZMST(HZM)
 S %SCV("MS1",80)=$$RPL^%L1FRM(TOCUS,"'akl","")
 I $L(%SCV("MS1",80)) S %SCV("MS1",80)=%SCV("MS1",80)_" 'akl"
 Q

W4HZTSF
W4HZTSF(STPAR) ; [ 24.06.26 08:59 ] [ 13.04.26 09:46 ] [ 19.03.26 15:36 ] 
 N (JB,%REM,NMB,STPAR,FOCUS,%ARG)
 ;; STPAR - OR 0~PRT~....
 ;;         OR SET;PRT;CM;MH --> W4HZAIN
 ;----------------------------------------------------------------------
 I $G(%ARG("SHOW"))=0 Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(NMB) S NMB=$$GETP^%W1PRM("NMB")
 ;
 ;;S ^AA("W4HZTSF","STPAR")=STPAR
 ;
 N UR S UR=$$UR^W4MENU
 ;
 I $$^W4AIN,UR=4,$E(STPAR)'="A" D  ; --- 30/08/22
 .S UR=5
 .D SETUR^W4MENU(UR)
 ;
 D TMPTFUR(UR)
 ;
 I 'UR D RESTUR^W4SCASK
 D PUT^%W3DEB("W4HZTSF","UR0=UR&STPAR=STPAR")
 ;
 D TMPS^W4MENU
 I '$$^W4AIN!(UR'=3) D
 .D PUT^%W1PRM("URMENU",UR)
 ;
 I $$AIP D
 .D COLXY
 .D PUT^%W1PRM("TXT2",$G(STPAR))
 .
 ;
 I STPAR="STPAR0" S STPAR=$$^W4RSTPAR
 I STPAR="STPAR" S STPAR=$$GETP^%W1PRM("STPAR")
 I STPAR="STPAR4" S STPAR=$$GETP^%W1PRM("STPAR4")
 I STPAR="STPAR40" S STPAR=$$GETP^%W1PRM("STPAR40")
 ;
 D PUT^%W3DEB("W4HZTSF-1","STPAR=STPAR & UR=UR")
 ;
 S STPAR=$$CNWEB^%L1FRM(STPAR)
 S SHEDIT=0
 S SHID=$$SHID
 I SHID'="" S SHEDIT=$$FINDSH^W4HZORD(SHID)
 D GORD
 ;
 D PUT^%W3DEB("W4HZTSF-2","SHEDIT=SHEDIT")
 ;
 ;
 I $E(STPAR)="A",UR<5 D ^W4HZAIN(STPAR) Q  ; --- SHOW AIP FOR AI !!!!!!!!!!!!!!
 ;
 N PRA,EQA,CDA S PRA=0,EQA=0,CDA=""
 Q:'$G(JB)
 I $L($G(NMB))<4 S NMB=$$NMB^W3HZMST(JB)
 ;
 D KILL^%W3DEB("W4HZTSF")
 D PUT^%W3DEB("W4HZTSF-3","JB=JB & STPAR0=STPAR &NMB=NMB & ARG=[%ARG")
 Q:$G(STPAR)=""
 N I,N2,MH
 N W3HZTSF S W3HZTSF="" D INIT^W3HZTFR
 ;
 N PRT S PRT=$$CD(STPAR)
 D PUT^%W3DEB("W4HZTSF-4","PRT=PRT")
 Q:PRT=""
 ;
 S KOT(3)=$$SHEM^W4P(PRT)_"~"_PRT
 ;
 I '$G(%ARG("BACK")),$G(UR)'="",$$FIRST!($D(@$$^W3TMPTF@($$^%W1JB,UR))<10) D
 .D CRTMP(PRT,$$^W3TMPTF,UR)
 ;
 I $$AIG D
 .D CRTMPIND(STPAR)
 .
 .I $D(@$$^W4MAIN("TMPORDIT"))>9,'$D(@$$^W4TMPORD@("OLD")) D
 ..M @$$^W4TMPORD@("OLD")=@$$^W4MAIN("TMPORDIT")
 .;
 .I $D(@$$^W4MAIN("TMPORDIT"))<10,$D(@$$^W4TMPORD@("OLD"))>9 D
 ..M @$$^W4MAIN("TMPORDIT")=@$$^W4TMPORD@("OLD")
 ..K @$$^W4MAIN("TMPORDIT")@("OLD")
 ;
 D TMPTFUR(UR)
 ;
 I '$G(%ARG("BACK")),$G(SHEDIT),$G(@TMPTFUR)'="QN" D SETQN(SHEDIT,UR) ; ^TMPORD --> QN --> ^TMPTF
 I '$G(%ARG("BACK")),'$G(SHEDIT),$G(@TMPTFUR)'="QN",UR=3,'$$^W4EZAT(PRT) D SETFIRST(PRT) ; ^TMPORD --> QN --> ^TMPTF
 ;
 D VIEW(UR,STPAR)
 ;
 I $$FIRST,$$GETP^%W1PRM("SHID0")="",$$^W4EZAT(PRT),UR<5 D  ; -- KAMA AI LEHAZMIN
 .I $$GETP^%W1PRM("QNAT") Q
 .D PUT^%W1PRM("NOFUNC",1)
 .W "<script>",!
 .W " QnEzat('"_PRT_"')",!
 .W "</script>",!
 .S %ARG("FIRST")=0
 ;
 Q
 ;
 ;
COLXY ;
 D COLXY^W4HZAIN
 Q
 ;
CRTMPIND(STPAR) ;
 D PUT^%W1PRM("TXT1",$G(STPAR))
 D NEWSET(STPAR)
 D ^W4INDSET($$CD^W3HZMST($$^W4RSTPAR))
 Q
 ;
CRTMP(PRT,GL,UR) ;
 ;;S ^AA("W4HZTSF-CRTMP","UR")=UR
 ;;S ^AA("W4HZTSF-CRTMP","GL")=GL
 ;;S ^AA("W4HZTSF-CRTMP","PRT")=PRT
 ;
 N I,K,MH,N2,KOT,OK S I=0,K=0,OK=""
 I $G(PRT)="" Q
 ;
 N PRMHNMB D PRMHNMB
 ;
 K @GL@($$^%W1JB,UR)
 S @GL@($$^%W1JB,UR)=PRT
 ;
 N DLT S DLT=30
 ;
 I $$OLDMVC11^W4PRM,$D(@$$^W4GL("W4MVC11")),'$$^W4AIN D  Q:$L(OK)&(OK'["!")
 .S OK=$$BELONG11^W4TSF(PRT) Q:OK=""  Q:OK["!"
 .D CRTMP11(PRT,OK)
 ;
 I $D(@$$^W4GL("P1EZT")@(PRT))>9 D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZT")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..I '$$D^W3SETA(N2) Q
 ..S I=+$G(@$$^W4GL("P1EZT")@(PRT,N2))
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$NM^W3SETA(N2),DLT)_"~"
 ;
 I $D(@$$^W4GL("P1EZA")@(PRT))>9 D  Q
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZA")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..I '$$D^W3SETA(N2) Q
 ..S I=+$G(@$$^W4GL("P1EZA")@(PRT,N2))
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$NM^W3SETA(N2),DLT)_"~"
 ;
 K @$$^W4MAIN("VRM")
 ;
 I $D(@$$^W4GL("P1EZI")@(PRT))>9 D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .;
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZI")@(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2) ;
 ..S K=+$G(@$$^W4GL("P1EZI")@(PRT,N2)) Q:'K
 ..S @$$^W4MAIN("VRM")@(K)=N2
 .
 .S K="" F  S K=$O(@$$^W4MAIN("VRM")@(K)) Q:K=""  D
 ..S N2=$G(^(K))
 ..S MH=+$$MH($G(NMB),N2,PRT)
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),DLT)_"~"_$J(MH,2,2)
 .K @$$^W4MAIN("VRM")
 ;
 I $$P1EZKI(PRT) D  Q
 .N SUGP S SUGP=+$$SUG^W4P(PRT)
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZKI")@(SUGP,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S K=$G(@$$^W4GL("P1EZKI")@(SUGP,N2))
 ..S @$$^W4MAIN("VRM")@(K)=N2
 .
 .S K="" F  S K=$O(@$$^W4MAIN("VRM")@(K)) Q:K=""  D
 ..S N2=$G(^(K))
 ..S MH=+$$MH(+$G(NMB),N2,"G"_SUGP)
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),DLT)_"~"_$J(MH,2,2)
 ;
 Q
 ;
 ;
CRTMP11(PAR,BELONG) ;
 K @$$^W4MAIN("VRM")
 N PRMHNMB D PRMHNMB
 N MHPAR S MHPAR=$$MH^W4P(PAR)
 ;
 I $E(BELONG)="S" D  Q
 .N SET S SET=$E(BELONG,2,20) Q:SET=""
 .N CD,MH,IND,N
 .
 .S CD="" F  S CD=$O(@$$^W4GL("P1SETM")@(SET,CD))  Q:CD=""  D
 ..S MH=$$MH^W4P(CD)
 ..I MH>MHPAR Q
 ..S IND=$J(MH,7,2)_$J(CD,8)
 ..S @$$^W4MAIN("VRM")@(IND)=CD_"\"_MH
 .
 .D CRTMP111
 ;
 I $E(BELONG)="G" D  Q
 .N I,CD,MH,IND
 .S I="" F  S I=$O(@$$^W3TMPTF@($$^%W1JB,2,I)) Q:I=""  I I D
 ..S TXT=$G(^(I))
 ..S CD=$P(TXT,"~") Q:'CD  ;;Q:CD=PAR
 ..S MH=$P(TXT,"~",3)
 ..I MH>MHPAR Q
 ..S IND=$J(MH,7,2)_$J(CD,8)
 ..S @$$^W4MAIN("VRM")@(IND)=CD_"\"_MH
 .
 .D CRTMP111
 Q
 ;
 ;
CRTMP111 ;
 N I,K,CD,MH
 N DLT S DLT=20
 S I=0
 S K="" F  S K=$O(@$$^W4MAIN("VRM")@(K),-1) Q:K=""  D
 .S CD=$P($G(^(K)),"\")
 .S MH=$P($G(^(K)),"\",2)
 .S I=I+1,@GL@($$^%W1JB,3,I)=CD_"~"_$$HBR^%L1FRM($$SHEM^W4P(CD),DLT)_"~0.00 ["_$J(MH,2,2)_"]"
 ;
 S @GL@($$^%W1JB,3)="1+1"
 K @$$^W4MAIN("VRM")
 Q
 ;
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
 ;
SETQN(SHED,UR) ; -- SHED -- NOM STROKI NACH SETA
 D PUT^%W3DEB("W4HZTSF-SETQN","SHED=SHED")
 N GORD,A,MQN,MCMNT
 D TMPTFUR(UR)
 D GORD
 ;
 S LVO=""
 ;
 N SH F SH=SHED+1:1 Q:'$D(@GORD@(SH))  S A=$G(^(SH)) Q:$P(A,"~")=0  Q:$$CDA($$CD(A))  D
 .S CD=$$CD(A)
 .S QN=$$QN(A)
 .I QN["*" S QN=$P(QN,"*",2)
 .I CD["-C",'QN S QN=1
 .I CD["-C",LVO=1 S MCMNT($P(CD,"-C"))=CD_"~"_$$NM(A)
 .S CMNT=$$GETP^%W1PRM("CMNT")
 .I CD["-C",LVO=0,CMNT="",'$$EZAT^W3HZMST(JB,SH) D PUT^%W1PRM("CMNT",$$NM(A))
 .S MQN(CD)=QN-$G(@GORD@("MRG",SH))
 .I MQN(CD) S MQN(CD)=$$QNP(QN)
 .S LVO=$P(A,"~")
 ;
 D PUT^%W3DEB("W4HZTSF-SETQN-1","MQN=[MQN")
 ;
 ;;M ^AA("SETQN","MQN")=MQN
 ;
 N I,CDT
 S I="" F  S I=$O(@TMPTFUR@(I)) Q:I=""  I I D
 .S CDT=$$CDI(I,UR)
 .I $D(MQN(CDT)) S @TMPTFUR@(I,"QN")=MQN(CDT) D
 ..I $D(MCMNT(CDT)) S @TMPTFUR@(I,"CMNT")=MCMNT(CDT)
 ;
 S @TMPTFUR="QN"
 K MQN,MCMNT
 Q
 ;
 ;
SETFIRST(PRT)
 I $G(PRT)="" Q
 N A,MQN,CD,QN,TMPTFUR,UR
 S UR=3
 D TMPTFUR(UR)
 N MQN,N
 N NM S NM=$$SHEM^W4P(PRT)
 N PRPZ S PRPZ=0
 N N S N="" F  S N=$O(@$$^W4GL("QNDEF")@(PRT,N)) Q:N=""  D
 .I $G(^(N)) D
 ..S MQN(N)=^(N)
 ;
 N I,CDT S I="" F  S I=$O(@TMPTFUR@(I)) Q:'I  I I D
 .S CDT=$$CDI(I,UR)
 .I $D(MQN(CDT)) S @TMPTFUR@(I,"QN")=MQN(CDT)
 Q
 ;
 ;
QNP(QN) ;
 Q $$QNP^W4PIZZA(QN)
 ;
NOHZG(N2) ;
 I '$D(@$$^W4GL("PAR")@(N2)) Q 1
 I $$NOPAR^W4PRTVW(N2) Q 1
 Q 0
 ;
 ;
PRMHNMB ;
 S PRMHNMB=$$GETP^%W1PRM("NMB")
 Q
 ;
PROCMH(MH) ;
 I $G(PRMHNMB),$$AH^W4L(PRMHNMB),$$^W4MSD(PRMHNMB),$$^W4PRMAHP(PRMHNMB) D
 .S MH=$J(MH*(100-$$AH^W4L(PRMHNMB))*.01,2,2)
 Q MH
 ;
MHT(PRT,SUB)
 I $G(PRT)="" Q ""
 I $G(SUB)="" Q ""
 N MH
 N PRMHNMB D PRMHNMB
 I PRT?1"G"1N.E D  Q $$PROCMH(MH)
 .S MH=$G(@$$^W4GL("MHTG")@($E(PRT,2,20),SUB))
 ;
 S MH=$G(@$$^W4GL("MHT")@(PRT,SUB))
 I MH'="" Q $$PROCMH(MH)
 N GR S GR=$$SUG^W4P(PRT)
 I GR S MH=$$PROCMH($G(@$$^W4GL("MHTG")@(GR,SUB)))
 Q MH
 ;
 ;
LI(STAM) D TMPTFUR(UR)
 Q $O(@TMPTFUR@(99999),-1)
 ;
SHID(STAM) ;
 N A
 S A=$$GETP^%W1PRM("SHID")
 I A'["LV" Q ""
 Q A
 ;
HASCMNT(I,UR) ;
 D TMPTFUR(UR)
 I $D(@TMPTFUR@(I,"CMNT")) Q 1
 Q 0
 ;
COMMENT(I,UR) ;
 D TMPTFUR(UR)
 Q $P($G(@TMPTFUR@(I,"CMNT")),"~",2)
 ;
 ;
VIEW(UR,STPAR) ;
 D TMPTFUR(UR)
 K MTOT,MQ,NEWGR
 N PRT S PRT=$$CD(STPAR)
 N QNPRT S QNPRT=$$QN($$GETP^%W1PRM("STPAR0"))
 ;
 D TMPS^W4MENU
 ;
 I '$$^W4AIN!(UR'=3),$$FIRST D
 .D TMPSNEW^W4MENUBT
 ;
 I '$$^W4AIN&(UR=3),$$^W4PIZZA(PRT) D  Q
 .S %ARG("CSR")=1
 .D ^W3HZTSF(STPAR)
 ;
 I $$^W4AIN,UR=5,$$^W4PIZZA(PRT) D  Q
 .S %ARG("CSR")=1
 .D ^W3HZTSF(STPAR)
 ;
 N KOT,TXT
 N COMMENT S COMMENT=$P($$CMNT(PRT),"~",3)
 ;
 S KOT=$$H2U^%L1FRM($$SHEM^W4P(PRT))
 ;
 I $$^W4SMALL,QNPRT D
 .S KOT=KOT_$$NBSP^%L1FRM(3)_"<span style=""color:green"">"_QNPRT_"</span>"
 ;
 I $L(COMMENT) D
 .S KOT=KOT_" <span style=""font-size:"_$$^W3FSZ(10)_""">"
 .S KOT=KOT_$$H2U^%L1FRM(COMMENT)_"</span>"
 .I $L($$SHID) S KOT=KOT_"<CP-"_$$SHID
 ;
 N PRCMT,BGA S BGA=0,PRCMT=0 S SELPAR=0
 ;
 D COLXY
 ;
 N K,L,I0 S K=1,L=0
 S I0=$$LASTUR(UR)
 I I0<1 S I0=1
 ;
 N I,CD S I=I0-.5 S:I<0 I=""
 F  S I=$O(@TMPTFUR@(I)) Q:I=""  D  Q:K>COLY
 .N VALUE,TXT,HRF S TXT=$G(@TMPTFUR@(I)) S HRF=0
 .S CD=$P(TXT,"~")
 .I '$P(TXT,"~"),'$$P1EZAT(PRT) Q
 .I $P(TXT,"~"),$$P1EZAT(PRT) Q
 .I $G(%ARG("AIG")),CD Q
 .I $G(%ARG("AIP")),'CD Q
 .N TXT1 S TXT1=$$^W4CLWTXT(TXT)
 .S TXT1="1~"_TXT1
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .N MAX S MAX=$$MAXADD(PRT)
 .D SHOWADD(TXT,PRT,I,MAX,UR)
 ;
 S I0=$S(I="":"END",1:I)
 I UR'="" S @TMPS@(UR,"LAST")=I0
 ;
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 S KOT("NOTIME")=""
 I '$$OPNWND D ^W4SHEET(.KOT,"","")
 I $$OPNWND D ^W4SHEET(.KOT,"","",0,80)
 Q
 ;
 ;
OPNWND(STAM) I $G(%ARG("OPNWND")) Q 1
 I $$^W4OPNWND Q 1
 Q 0
 ;
TMPTFUR(UR) S TMPTFUR="^[$$^W3MAIN]TMPTF($$^%W1JB,"_+UR_")"
 Q
 ;
 ;
SHOWADD(TXT,PRT,I,MAX,UR) ;
 N FSZ S FSZ=12 I $$1700^W4WDSCR S FSZ=FSZ+2
 D PUT^%W3DEB("W4HZTSF-SHOWADD","TXT=TXT & PRT=PRT & I=I & MAX=MAX")
 N NM,MH,CD,QN,ST
 S CD=$P(TXT,"~",1)
 S NM=$P(TXT,"~",2)
 ;
 S MH=$P(TXT,"~",3)
 I MH'["[" S MH=$J(MH,2,2)
 I MH["[" D
 .S MH=$J(MH,2,2)_"<span style=""color:brown;font-size:"_$$^W3FSZ(FSZ-3)_"""><br>["_$P($P(MH,"[",2),"]")_"]</span>"
 ;
 S QN=$$QNDEF(CD,PRT,I,UR)
 ;;W "CD="_CD_"  PRT="_PRT_"  I="_I_"  UR="_UR_" QN="_QN_" ",! ; ***
 I QN["*" S QN=$P(QN,"*",2)
 ; --------- NAME
 S ST="<table dir="""_$$^%W1DIR_""" width=""100%"" height=""100%"" border=""0"">"
 S ST=ST_"<tr>"
 ;
 I $$CDA(CD)&($$UR^W4MENU<5) D  ; ---- P1EZA & P1EZT - SUBGROUPS
 .S ST=ST_"<td id=""tdid"_CD_""""
 .S ST=ST_" "_$$^W4TOUCH_"=""ClickTree('"_CD_";"_PRT_";"_$$CM0(STPAR)_";"_$$MHPAR(STPAR)_"')"""
 .N COLOR S COLOR=$$BGCOLOR^W4CSS
 .I $$FGADDCOLOR(CD) S COLOR=$$FGIT^W4P(CD)
 .S ST=ST_" style=""color:"_COLOR_";font-weight:bold"
 .S ST=ST_" ;font-size:"_$$^W3FSZ(FSZ)
 .I $$CHOICESET(CD,SHEDIT),'$$ADDCOLOR S ST=ST_";background-color:#eaeaea"
 .I $$BGADDCOLOR(CD) S ST=ST_";background-color:"_$$BGIT^W4P(CD)
 .D
 ..N STSET S STSET=$P($$CURGRAI^W4HZAIN,";")
 ..I CD=STSET S ST=ST_";border:solid 2px red"
 .S ST=ST_";cursor:pointer"
 .
 .S ST=ST_""" >"_$$H2U^%L1FRM(NM)_"</td>"
 ;
 I '$$CDA(CD) D  ; ---- NORMAL ADDITIONS
 .S ST=ST_"<td id=""tdid"_CD_""""
 .S ST=ST_" "_$$^W4TOUCH_"=""ClickAdd('"_CD_"','+','"_$G(MAX)_"')"""
 .N COLOR S COLOR="black"
 .I $$FGADDCOLOR(CD) S COLOR=$$FGIT^W4P(CD)
 .S ST=ST_" style=""color:"_COLOR_";font-weight:bold;cursor:pointer"
 .S ST=ST_" ;font-size:"_$$^W3FSZ(FSZ)
 .I $$BGADDCOLOR(CD) S ST=ST_";background-color:"_$$BGIT^W4P(CD)
 .I $G(SHEDIT),QN,'$$ADDCOLOR S ST=ST_";background-color:#eaeaea"
 .S ST=ST_""" >"_$$H2U^%L1FRM(NM)
 .
 .I $$HASCMNT(I,UR) D
 ..S ST=ST_"<br /><span style=""color:red;font-size:"_$$^W3FSZ(FSZ-3)_";font-weight:normal"">"_$$H2U^%L1FRM($$COMMENT(I,UR))_"</span>"
 .S ST=ST_"</td>"
 .
 .S ST=ST_"<td width=""22%"" style=""color:black;font-weight:bold;background-color:#eaeaea;cursor:pointer"" align=""center"""
 .S ST=ST_" "_$$^W4TOUCH_"=""ClickAdd('"_CD_"','-')"""
 .S ST=ST_"><input type=""text"" size="""_$S($$^W4TABLET=2:1,1:2)_""" style=""font-size:"_$$^W3FSZ(FSZ)_""" maxlength=""3"" readonly=""readonly"" id=""qnid"_CD_""" value="""_QN_""" />"
 .S ST=ST_"<br /><span style=""font-size:"_$$^W3FSZ(22)_";color:red;text-align:center"">--</span></td>"
 .
 .D
 ..S ST=ST_"<td id=""mhid"_CD_""" width=""25%"" "
 ..S ST=ST_" style=""color:green;font-size:"_$$^W3FSZ(FSZ)_";font-weight:bold;"
 ..S ST=ST_" background-color:"_$S(MH:"lightgreen",1:"white")_";text-align:center"" "
 ..I $$SHOWCMNT(CD) S ST=ST_" "_$$^W4TOUCH_"=""ShowCmn("_JB_",'1~"_$P(TXT,"~")_"','"_$$SHID_"')"""
 ..S ST=ST_">"_MH
 ..I '$$SHOWCMNT(CD) S ST=ST_"</td>" Q
 ..S ST=ST_"<br/><span id=""cmnt"_CD_""" "
 ..S ST=ST_"style=""color:red"
 ..S ST=ST_$S('$$HIDECMNT(CD,QN):";visibility:visible;cursor:pointer",1:";visibility:hidden;cursor:default")_""">"
 ..S ST=ST_$$^%W1DICT("COMMENT")_"</span></td>"
 ;
 S ST=ST_"</tr></table>"
 ;
 K MTXT(K,L,"BG") ;
 N ITRAT S ITRAT=$$^W4ITEND(CD)
 S MTXT(K,L)=ST
 S MTXT(K,L,"I")=CD
 N BGC S BGC="white"
 N BG,FG S BG=$$BGIT^W4P(CD),FG=$$FGIT^W4P(CD)
 ;;I BG'="" S BGC=BG
 ;;I FG'="" S MTXT(K,L,"FG")=FG
 I $$AIG S BGC="#FFD51E<>#FFFFFF"
 S MTXT(K,L,"BG")=BGC
 I ITRAT'="NO",'ITRAT S MTXT(K,L,"BG")="pink"
 Q
 ;
 ;
CHOICESET(CD,SHED) ;
 N GORD,A D GORD
 S SHED=$G(SHED)
 I $$GET^%W1PRM("NEWPRT")'=0&'SHED Q 0
 N OK S OK=0
 I SHED D
 .N I1 F I1=SHED:1 Q:'$D(@GORD@(I1))  S A=$G(@GORD@(I1)) Q:$P(A,"~")=0&(I1>SHED)  D
 ..I $$CD(A)=CD S OK=1 Q
 I 'SHED D
 .N LI S LI=$O(@GORD@(9999),-1)
 .F I1=LI:-1:1 S A=$G(@GORD@(I1)) Q:$P(A,"~")=0  I $$CD(A)=CD S OK=1 Q
 Q OK
 ;
QNDEF(CD,PRT,I,UR) ;
 D TMPTFUR(UR)
 Q $G(@TMPTFUR@(I,"QN"))
 ;;I $G(SHEDIT)!$G(%ARG("BACK")) Q $G(@TMPTFUR@(I,"QN"))
 Q ""
 ;
MH(NMB,COD,MAIN) ;
 N PRTSF S PRTSF=""
 N PRMHNMB,ZMANK,LKHN,MH,CD0,PRMHNMB
 S ZMANK=$$DATCB^W3HZMST(JB)
 I 'ZMANK S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 I ZMANK="" K ZMANK
 S LKHN=$$LKHN^W3HZMST(JB)
 S PRMHNMB=NMB S MH=$$MH^W4P(COD)
 ;
 I '$$^W4AIN,$G(COD) D
 .S CD0=$G(MAIN) Q:CD0=""
 .I $E(CD0)'="G" D  Q
 ..I $$MHT(CD0,COD)'="" S MH=$J($$MHT(CD0,COD),2,2)
 .N SUGP S SUGP=$E(MAIN,2,20) Q:SUGP=""
 .I $G(@$$^W4GL("MHTG")@(SUGP,COD))'="" S MH=$$PROCMH($G(^(COD)))
 ;
 I MH'["%" S MH=$J(MH,2,2)
 ;
 I $$^W4AIN D
 .N CD0 S CD0=$$CD^W3HZMST($$^W4RSTPAR) Q:CD0=""
 .
 .I $$UR^W4MENU>4,$G(COD) D  Q
 ..I $G(@$$^W4PRM@("AINOTSF"))!$G(@$$^W4PRM@("AINOTSFMH")) S MH=0 Q
 ..I $$MHT(CD0,MAIN)[";NO" S MH=0 Q
 ..N MHT S MHT=$$MHT(MAIN,COD)
 ..I MHT=""!(MAIN="") S MH=$$MH^W4P(COD) Q
 ..S MH=$J(MHT,2,2)
 .
 .S MH=$J($$MHT(CD0,COD),2,2)
 ;
 Q MH
 ;
 ;
MHVIEW(TXT) ;
 N MH S MH=$$MH^W3TMPTF(TXT)
 I 'MH,$$NOMHTSF^W3PRM S MH=""
 Q MH
 ;
ORDERED(I1)
 I $G(@$$^W3TMPTF@($$^%W1JB,UR,I1,"QN")) Q 1
 Q 0
 ;
P1EZKI(COD) ;
 Q $$^W4EZKI(COD)
 ;
P1EZAT(COD) ;
 I $D(@$$^W4GL("P1EZA")@(COD))>9 Q 1
 I $D(@$$^W4GL("P1EZT")@(COD))>9 Q 1
 Q 0
 ;
 ;
SETVL(PRM) ;
 N UR S UR=$$UR^W4MENU
 N CD,VL,I
 D TMPTFUR(UR)
 S CD=$P(PRM,";")
 S I=$$GETI(CD,UR) I 'I Q 0
 S VL=$P(PRM,";",2)
 S @TMPTFUR@(I,"QN")=VL
 N N,SQN S SQN=0
 S N="" F  S N=$O(@TMPTFUR@(N)) Q:N=""  I $D(@TMPTFUR@(N,"QN")) D
 .S SQN=SQN+@TMPTFUR@(N,"QN")
 Q SQN
 ;
GETI(CD,UR) ;
 D TMPTFUR(UR)
 S I="" F  S I=$O(@TMPTFUR@(I)) Q:I=""  I I,$P(^(I),"~")=CD Q
 I I="" Q 0
 I '$D(@TMPTFUR@(I)) Q 0
 Q I
 ;
CDI(I,UR) ;
 D TMPTFUR(UR)
 Q $P($G(@TMPTFUR@(I)),"~")
 ;
CDA(CD) ;
 I $E(CD)="A" Q 1
 Q 0
 ;
GRA(TXT) I $E(TXT)="A" Q 1
 Q 0
CMT(TXT) I $P(TXT,"~")["-C" Q 1
 Q 0
 ;
TMPTFI(I,UR) Q "^[$$^W3MAIN]TMPTF($$^%W1JB,"_UR_","_I_")"
 ;
 ;
SETGR(PRM); --- AFTER SUBMIT (AI OR ADDONS) ;
 ; --- PRM =  SHID ("LV0"+N)
 D PUT^%W3DEB("W4HZTSF-SETGR","PRM=PRM")
 ;
 ;;S ^AA("W4HZTSF","PRM")=PRM
 ;
 N GORD D GORD
 N I,LI S LI=0
 ;
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 S PRT=$$CD^W3HZMST(STPAR)
 ;
 N EDIT S EDIT=0
 N FLRZB S FLRZB=0
 N CMNT0 S CMNT0=""
 ;
 I $$LV^W3HZMST(STPAR)=0,$$CD^W3HZMST(STPAR) D
 .S CMNT0=$$CMNT^W4HZTSF(PRT)
 ;
 I $$EDIT(PRM) D  I LI<1 Q "0:NOTEDITLINE"
 .S LI=$$FINDSH^W3HZORD(PRM) Q:LI=""
 .S CMNT0=$$CMST0^W3HZMST(JB,LI)
 .S STPAR=$G(@GORD@(LI))
 .S EDIT=1
 .I $$NOMOD(LI),$$EZATI(LI),'$$^W4AIN S EDIT=2
 ;
 ;;S ^AA("W4HZTSF","STPAR")=STPAR
 I STPAR'?1"0~"1N.E Q "0:ISNOTITEM"
 ;
 N CDPAR S CDPAR=$$CD(STPAR)
 I CDPAR="" Q "0:NOTITEMCODE"
 ;
 N ITRA S ITRA=$$^W4ITEND(CDPAR)
 ;
 N CM0 S CM0=$$CM0(STPAR)
 S ITM=$$^W4ITM(STPAR)
 I 'CM0 S CM0=1,$P(ITM,"^",5)=1
 I $L($G(CMNT0)) D SETMAIN^W4ITM("ITM","CMNT",$P(CMNT0,"~",3))
 D PUT^%W3DEB("W4HZTSF-SETGR-1","CMNT0=CMNT0 & ITM=ITM")
 ;
 N OK S OK=0
 ;
 N MSG S MSG=""
 ;
 ;;S ^AA("W4HZTSF-SETGR","UR")=$$UR^W4MENU
 I $$UR^W4MENU>3 G SETGRED
 ;
 N QNADD S QNADD=$$QNADD
 N MAX S MAX=$$MAXADD(CDPAR)
 N MAXN S MAXN=$$QNMAXNA^W3SET(MAX) ; -- *CM0 ?
 N EQ S EQ=$$EQA^W3SET(MAX)
 D PUT^%W3DEB("W4HZTSF","MAX=MAX&MAXN=MAXN&EQ=EQ")
 ;
 I MAXN,QNADD<MAXN,EQ=2 Q "0:CHOICEMINIMUM;"_MAXN
 I MAXN,QNADD'=MAXN,EQ=1 Q "0:CHOICEEXACTLY;"_MAXN
 I MAXN,QNADD>MAXN,'EQ Q "0:QNTOOMUCH"
 ;
SETGRED ;
 I EDIT,'$$^W4AIN D  ; ------------- ITEM EDIT -----------
 .N CMOLD S CMOLD=$$QNST^W3HZMST(JB,LI)
 .N ST S ST=$P(STPAR,"~",1,4)_"~"_CM0_"~"_$P(STPAR,"~",6,20)
 .S ITM=$$^W4ITM(ST,LI)
 .S MSG=$$MSG^W4ITEND("SH="_LI,CM0) I MSG'="" Q
 .D SETSH^W4ITEND(LI,CM0)
 .I $P($G(@GORD@(LI+1)),"~",2)["-C" D
 ..D PUT^%W1PRM("CMNT",$P(^(LI+1),"~",3))
 .N GLIST S GLIST=$G(@GORD@(LI,"GLIST"))
 .N MANA S MANA=$G(@GORD@(LI,"MANA"))
 .D DELROW^W3HZORD(PRM) ; -- DEL KOLEL TOSAFOT
 .I EDIT=2 S $P(ST,"~",12)=$P($G(@$$^W4TMPORD@(LI)),"~",12)
 .D ADD^%L1GSEQ(GORD,LI,ST,1) ;-- DOBAV GLAV STROKU
 .I $L(GLIST) S @GORD@(LI,"GLIST")=GLIST
 .I $L(MANA) S @GORD@(LI,"MANA")=MANA
 .
 .N CMNT S CMNT=$$CMNT(CDPAR)
 .I $L(CMNT) D
 ..S LI=LI+1
 ..D ADD^%L1GSEQ(GORD,LI,CMNT,1)
 ..;;S @GORD@(LI)=CMNT
 ;
 I $L(MSG) Q "0:"_MSG
 ;
 N NOCHK S NOCHK=0
 ;
 I EDIT,$$^W4AIN D
 .I '$$NOMOD(LI) D
 ..;;S ^AA("W4HZTSF","LI")=LI
 ..D SET^W4ITEND(LI,-$$QNR^W3HZMST(JB,LI))
 ..D DELROW^W3HZORD(PRM)
 ..
 ..I $L($G(CMNT0)) D PUT^%W1PRM("CMNT",CMNT0) D
 ...I $P($G(@GORD@(LI+1)),"~",2)["-C",$P($G(@GORD@(LI+1)),"~",3)?.P,$L($G(CMNT0)) D
 ....S $P(@GORD@(LI+1),"~",3)=CMNT0
 .
 .I $$UR^W4MENU>4 S NOCHK=1
 .S EDIT=0 ; --> NEWST
 .D PUT^%W1PRM("NEWPRT",1)
 ;
 ;;S ^AA("W4HZTSF-SETGR","NEWPRT")=$$GETP^%W1PRM("NEWPRT")
 I 'EDIT,$$GETP^%W1PRM("NEWPRT")!$$^W4AIN D NEWST(STPAR,CM0,NOCHK) ; -- NEW PRT - FIRST ADD-S
 ;
 I $L(MSG) Q "0:"_MSG
 ;
 D SETGR3($$UR^W4MENU,$G(ITM))
 ;
 I FLRZB D
 .D SBR(STPAR,$G(CM0))
 ;
 D KILLCMNT
 Q 1
 ;
 ;
NEWST(STPAR,CM0,NOCHK) ;
 D GORD
 N CDPAR S CDPAR=$$CD(STPAR)
 D PUT^%W3DEB("W4HZTSF-NEWST","STPAR=STPAR&CM0=CM0&NOCHK=NOCHK&CDPAR=CDPAR&GORD=GORD")
 I CDPAR="" G NEWSTE
 ;
 I $$^W4AIN D
 .D RZB S FLRZB=1; --> ^TMPORD -- ^TMPA
 ;
 S LI=$O(@GORD@(9999),-1)
 D PUT^%W3DEB("W4HZTSF-NEWST","LI=LI")
 ;
 N NEWST S NEWST=STPAR S $P(NEWST,"~",5)=CM0
 ;
 ;;S ^AA("W4HZTSF","NEWST")=NEWST
 ;
 I '$G(NOCHK) S MSG=$$MSG^W4ITEND("CD="_$$CD(STPAR),CM0) I MSG'="" G NEWSTE
 ;
 I $G(LI),$$NOMOD(LI),'$$^W4AIN D PUT^%W1PRM("FIRSTNEW",1)
 I '$G(LI),'$$^W4AIN D PUT^%W1PRM("FIRSTNEW",1)
 ;
 I $P(NEWST,"~")=0,$$^W4AIN D
 .N STPAR0 S STPAR0=$$^W4RSTPAR
 .Q:STPAR0=""
 .;;S ^AA("W4HZTSF","STPAR0")=STPAR0
 .S STPAR0=$TR(STPAR0,"~","^")
 .S $P(NEWST,"~",15)=STPAR0
 ;
 I $P(NEWST,"~") D  ; ADDONS
 .N SH0 S SH0=$$SH0^W3HZMST(JB) Q:'SH0
 .N ITM S ITM=$$^W4ITM($G(@GORD@(SH0)),SH0)
 .N CMNT S CMNT=$P($$CMNT(CDPAR),"~",3)
 .S $P(ITM,"^",7)=CMNT
 .;;S ^AA("W4HZTSF","ITM")=ITM
 .D SET^W4ITM("NEWST",ITM)
 ;
 S @GORD@(LI+1)=NEWST ; --- !!!!
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 S PORTDISP=$$DISP^W4PLUK(MYDVN)
 I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,NEWST)
 ;
 I $$PRMANA1^W4HZORD,'$$^W4AIN D
 .N DEFMANA
 .S DEFMANA=$$DEFMANA^W4P(CDPAR)
 .I DEFMANA S @GORD@(LI+1,"MANA")=DEFMANA
 ;
 I '$G(FLRZB) D SET^W4ITEND(CDPAR,CM0)
 ;
 I $P(STPAR,"~")=0,'$$^W4AIN D SETHNHSHAA^W3HZMST(LI+1)
 ;
 N CMNT S CMNT=$$CMNT(CDPAR)
 I $L(CMNT) D
 .S LI=LI+2
 .S @GORD@(LI)=CMNT
 ;
NEWSTE D KILLCMNT
 Q
 ;
 ;
KILLCMNT ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 Q
 ;
CMNT(CDPAR) ;
 S CMNT=$$SPA^%L1FRM($$GETP^%W1PRM("CMNT"))
 N HRA S HRA=$$SPA^%L1FRM($$HRA^W4P(CDPAR))
 I '$L(CMNT),$L(HRA) S CMNT=HRA
 ;;D KILL^%W1PRM("CMNT")
 I $L(CMNT) Q "1~"_CDPAR_"-C0~"_CMNT
 ;
 N CDCMNT S CDCMNT=$$GETP^%W1PRM("CDCMNT")
 ;;D KILL^%W1PRM("CDCMNT")
 S CDCMNT=$P(CDCMNT,";")
 I '$L(CDCMNT) Q ""
 N CMNT S CMNT=$G(@$$^W4GL("P1CODH")@(CDCMNT))
 Q "1~"_CDPAR_"-C"_CDCMNT_"~"_CMNT
 ;
 ;
CM0(STPAR) ;
 I $$QNR($G(STPAR)) Q $$QNR(STPAR)
 N STP S STP=$$GET^%W1PRM("STPAR")
 Q $P(STP,"~",5)
 ;
MHPAR(STPAR)
 Q $P(STPAR,"~",4)
 ;
THISGR(I) ;
 D GORD
 I $P($G(@GORD@(I)),"~",1)=0 Q 0
 I $$CDA($$CD($G(@GORD@(I)))) Q 0
 Q 1
 ;
EDIT(PRM) ;
 I PRM["LV" Q 1
 Q 0
 ;
 ;
SETGR3(UR,ITM) ; -- CENA ???  AHST ???
 ; -- INP: LI - LAST IND
 ;         CM0 - KOL-VO GL PARITA
 ;------------------------------------
 D PUT^%W3DEB("W4HZTSF-SETGR3","UR=UR&ITM=ITM")
 ;
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 N CDPAR S CDPAR=$P(STPAR,"~",2)
 N NMPAR S NMPAR=$P(STPAR,"~",3)
 N DIV S DIV=$S(NMPAR["()":2,NMPAR["[]":4,1:1)
 ;
 N MXHINAM S MXHINAM=$$ADDSFREE(CDPAR)
 ;
 N I,STT,QN,QN1,K,MSG
 S K=0 S MSG=""
 D TMPTFUR(UR)
 ;
 N PRPRC S I="",K1=0,PRPRC=1
 N SQN S SQN=0
 ;
 ;;S ^AA("W4HZTSF-SETGR3","UR")=UR
 ;;S ^AA("W4HZTSF-SETGR3","TMPTFUR")=TMPTFUR
 ;
 F  S I=$O(@TMPTFUR@(I)) Q:I=""  I I S STT=$G(^(I)) I $G(^(I,"QN"))!($G(^("QN"))["+") D
 .S QN=$G(^("QN"))
 .S CMNTCDTXT=$G(^("CMNT"))
 .;;S ^AA("W4HZTSF-SETGR3",I,"QN")=QN
 .
 .I QN["+",QN'[$$RZD(DIV) D
 ..N J,J1 S J1=0 F J=1:1:DIV I $E(QN,J)="+" S J1=J1+1,K1=K1+1
 ..S PRPRC=1 I '$$WEBORD^W3HZMST(JB),MXHINAM,K1'>(MXHINAM*DIV) S PRPRC=0
 ..S QN=J1_$S(DIV=4:":",1:"|")_$TR(QN_$J("",DIV-$L(QN))," ","-")
 .
 .S QN1=QN
 .
 .I $$^W4MULTY!('$$^W4EZAT(CDPAR)&'$$^W4AIN)!$$^W4AIN D
 ..S QN1=CM0_"*"_QN
 .
 .;;S ^AA("W4HZTSF-SETGR3",I,"QN1")=QN1
 .
 .N LV S LV=1
 .
 .S K=K+1
 .
 .I QN'["+" D
 ..S SQN=SQN+QN
 ..I QN>1,MXHINAM,SQN-QN'>MXHINAM,SQN>MXHINAM D  Q
 ...N MHO S MHO=$P(STT,"~",3)
 ...N MHN S MHN=MHO*(SQN-MXHINAM)/QN
 ...S $P(STT,"~",3)=$J(MHN,4,4)
 ..
 ..I SQN'>MXHINAM S $P(STT,"~",3)=0
 .
 .I QN["+",'PRPRC S $P(STT,"~",3)=0
 .
 .N ST S ST=LV_"~"_$P(STT,"~",1,3)_"~"_QN1
 .I $L($G(ITM)) D SET^W4ITM("ST",ITM)
 .D PUT^%W3DEB("W4HZTSF-SETGR3","CM0=CM0 & QN=QN & QN1=QN1")
 .
 .I 'EDIT D  Q  ;-- NOT EDIT
 ..I $P(ST,"~",4)["[" D  ; 1+1
 ...N MHN S MHN=$P($P($P(ST,"~",4),"[",2),"]")
 ...N CMNT11 S CMNT11="[["_$$TV^%W1DICT($$^%W1LNG,"SALE1+1",MHN)_"]]"
 ...I CMNTCDTXT'="" D
 ....S $P(CMNTCDTXT,"~",2)=CMNT11_$P(CMNTCDTXT,"~",2)
 ...I CMNTCDTXT="" D
 ....S CMNTCDTXT=$P(ST,"~",2)_"-C0~"_CMNT11
 ....S @TMPTFUR@(I,"CMNT")=1
 ...S $P(ST,"~",4)=0
 ..
 ..N NEWSH S NEWSH=$O(@GORD@(99999),-1)+1
 ..S @GORD@(NEWSH)=ST
 ..D SETMANA(NEWSH)
 ..D SET^W4ITEND($$CD(ST),$$QNR(ST))
 ..
 ..I $D(@TMPTFUR@(I,"CMNT"))#2 D
 ...I $P(@TMPTFUR@(I,"CMNT"),"~")["-CNO" Q
 ...S @GORD@($O(@GORD@(99999),-1)+1)="1~"_CMNTCDTXT
 ...K @TMPTFUR@(I,"CMNT")
 .
 .;------------------ EDIT ---------------
 .
 .I EDIT=2 D
 ..S QNDIF=$$QNDIF(ST,CMNTCDTXT)
 ..S $P(ST,"~",11)=QNDIF
 ..S STO=$$STO(ST)
 ..I STO'="" S $P(ST,"~",12)=$P(STO,"~",12)
 ..D PUT^%W3DEB("W4HZTSF-SETGR3","STO=STO & ST=ST & QNDIF=QNDIF")
 .;
 .D ADD^%L1GSEQ(GORD,LI+K,ST,1)
 .D SETMANA(LI+K)
 .D SET^W4ITEND($$CD(ST),$$QNR(ST))
 .
 .I $D(@TMPTFUR@(I,"CMNT"))#2 D
 ..I $P(@TMPTFUR@(I,"CMNT"),"~")["-CNO" Q
 ..S K=K+1
 ..D ADD^%L1GSEQ(GORD,LI+K,"1~"_CMNTCDTXT)
 ..K @TMPTFUR@(I,"CMNT")
 ;
 ;-------- LEHORID OLD ( OLD AI )
 I $D(@$$^W4MAIN("TMPOAI")) D DELOLD
 Q
 ;
 ;
LV0(SH) ;
 I $$LVI^W4HZORD(SH)=0 Q 1
 Q 0
 ;
RZD(DIV)
 I $G(DIV)=4 Q ":"
 Q "|"
 ;
NOMOD(SH) Q $$NOMOD^W4HZORD(SH)
EZATI(SH) Q $$EZATI^W4HZORD(SH)
 ;
FINDCMNT(PRM) ;
 D PUT^%W3DEB("W4HZTSF-FINDCMNT","PRM=PRM")
 N RES S RES="NOK"
 N SHID S SHID=$P(PRM,";") I SHID="" Q RES
 N ST S ST=$P(PRM,";",2) I ST="" Q RES
 N CD S CD=$$CD(ST) I CD="" Q RES
 N SH S SH=$$FINDSH^W4HZORD(SHID) I 'SH Q RES
 N SH1 F SH1=SH+1:1 Q:'$D(@$$^W4TMPORD@(SH1))  Q:$$LVST^W3HZMST(JB,SH1)=0  D  Q:RES'="NOK"
 .I $$CDST^W3HZMST(JB,SH1)=CD S RES=$$CMST^W3HZMST(JB,SH1) S:RES="" RES="NOK"
 Q RES
 ;
FNDCMNT3(PRM,UR) ;
 D PUT^%W3DEB("W4HZTSF-FNDCMNT3","PRM=PRM")
 D TMPTFUR(UR)
 N CD S CD=$$CD(PRM)
 N RES S RES="NOK"
 S I="" F  S I=$O(@TMPTFUR@(I)) Q:I=""  I I,$P(^(I),"~")=CD,$$HASCMNT(I,UR) S RES=$$COMMENT(I,UR) Q
 I RES="" S RES="NOK"
 Q RES
 ;
 ;
QNAT(QN) ;
 N RES,STPAR
 ;
 S STPAR=$$GETP^%W1PRM("STPAR0")
 ;
 I STPAR["<UNDEF" Q "0:LUNCHNOTSAVED"
 I $E(STPAR,1,2)'="0~" Q "0:LUNCHNOTSAVED"
 I $G(QN)<1 Q "QNNOTVALID"
 N MSG S MSG=$$MSG^W4ITEND("CD="_$P(STPAR,"~",2),QN,"NOCHK")
 I MSG'="" Q "0:"_MSG
 ;
 S $P(STPAR,"~",5)=QN
 ;
 S RES=1
 ;
 ;
 D  Q RES
 .I $$MXOVR^W4AIMAX(QN) S RES="0:AIMAXOVR;"_QN Q
 .D PROCQN
 .I $$ISSTPAR0^W4RSTPAR(STPAR) D
 ..D PUT^%W1PRM("STPAR0",STPAR)
 ..D PUT^%W1PRM("STPAR00",STPAR)
 ;
 Q 1
 ;
 ;
QNDA(PRM)
 D PUT^%W1PRM("W4HZTSF-QNDA","PRM=PRM")
 N QND,QNO,QN0,QNNEW,IND
 S QND=$P(PRM,";") ; -- SK UD-T'
 S IND=$P(PRM,";",2)
 I 'QND!'IND Q 0
 S STPAR=$$GET^%W1PRM("STPAR")
 S QNO=$P(STPAR,"~",5) ; -- SK BYLO
 N QN0 S QN0=""
 I QNO["*" S QN0=+QNO,QNO=$P(QNO,"*",2)
 S QNNEW=QNO-QND
 ;
 I '$$^W4MULTY,'$$QNCHKGR(IND,QNNEW) Q "QNNOTMATCH2GROUPS"
 ;
 D KILL3^W4MENU
 I QN0 S QNNEW=QN0_"*"_QNNEW
 D PUT^%W1PRM("W4HZTSF-QNDA","IND=IND& QNO=QNO & QND=QND & QNNEW=QNNEW")
 D GORD
 D SETSH^W4ITEND(IND,QNNEW)
 S $P(@GORD@(IND),"~",5)=QNNEW
 ;;I $$NOMOD(IND) S $P(@GORD@(IND),"~",11)=-QND
 Q "OK"
 ;
 ;
QNCHKGR(IND,QNP) ;
 N A,SH,QN,SQN,SET
 D GORD S SET=""
 N QNM S QNM=$$QNR($G(@GORD@(IND)))
 D PUT^%W3DEB("W4HZTSF-QNCHKGR","IND=IND & QNP=QNP & QNM=QNM")
 I $E(QNP,$L(QNP))="-" S QNP=QNM-QNP
 ;
 F SH=IND+1:1 Q:'$D(@GORD@(SH))  S A=$G(^(SH)) Q:$P(A,"~")=0  D
 .S CD=$$CD(A)
 .I $$CDA(CD) S SET=CD Q
 .S QN=$$QN(A)
 .I QN["*" S QN=$P(QN,"*",2)
 .I $L(SET) S SQN(SET)=$G(SQN(SET))+QN
 ;
 N OK S OK=1
 N N S N="" F  S N=$O(SQN(N)) Q:N=""  D  Q:'OK
 .I SQN(SET)>($$MAXSET^W4HZTSFA(N)*QNP) S OK=0
 ;
 Q OK
 ;
 ;
QNDIF(ST,CMNTCDTXT) ;
 N A,A1,CD,I,QN,QN1,QNO,QNO1,QNDIF
 S QNDIF=""
 S CD=$$CD^W4HZORD(ST)
 S QN=$$QNV^W4HZORD(ST)
 S QN1=QN
 I QN["*" S QN1=QN*$P(QN,"*",2)
 ;
 N OK S OK=0
 S I="" F  S I=$O(@$$^W4MAIN("TMPOAI")@(I)) Q:I=""  I I D  Q:OK
 .S A=$G(^(I))
 .S A1=$G(^(I+1))
 .S CDO=$$CD(A) Q:CDO'=CD
 .S CMNTO="" I $$CD(A1)[(CDO_"-C") S CMNTO=$P(A1,"~",3)
 .S QNO=$$QN(A)
 .S QNO1=QNO
 .I QNO["*" S QNO1=QNO*$P(QNO,"*",2)
 .I $J(QNO1,0)=$J(QN1,0) Q
 .I QN'["*",QNO'["*" S QNDIF=QN-QNO G QNDE
 .I QN["*",QNO["*" S QNDIF=$P(QN,"*",2)-$P(QNO,"*",2) G QNDE
 .I (QN["*"&(QNO'["*"))!(QN'["*"&(QNO["*")) D  G QNDE
 ..S QNDIF=QN1-QNO1
QNDE .S OK=1
 .S QNDIF=QNDIF_";"_$$SPA^%L1FRM($P(CMNTCDTXT,"~",2))
 ;
 Q QNDIF
 ;
 ;
STO(ST) ;
 N A,OK,I,STO S OK=0,STO=""
 S I="" F I=$O(@$$^W4MAIN("TMPOAI")@(I)) Q:I=""  I I D  Q:OK
 .S A=$G(^(I))
 .I $$CD(A)=$$CD(ST) S STO=A,OK=1
 ;
 Q STO
 ;
SHOWCMNT(CD) ;
 I $G(CD)="" Q 0
 ;;I $$^W4SMALL,'$$D^W4EZH(CD) Q 0
 Q 1
 ;
HIDECMNT(CD,QN)
 I '$G(QN) Q 1
 N I,OK S OK=0,A=""
 S I="" F  S I=$O(@$$^W4MAIN("TMPOAI")@(I)) Q:I=""  I I D  Q:OK
 .S A=$G(^(I)) I $$CD(A)=CD S OK=1
 ;
 I OK,$P(A,"~",12)["@@",$G(QN)'>$$QNR(A) Q 1
 Q 0
 ;
LV(A) Q $P(A,"~",1)
CD(A) Q $P(A,"~",2)
CDC(A) Q $$CD(A)["-C"
NM(A) Q $P(A,"~",3)
PRC(A) Q $P(A,"~",4)
QN(A) Q $P(A,"~",5)
 ;
ONESET(STAM) ;
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 N CD S CD=$$CD(STPAR)
 I '$$^W4EZAT(CD) Q 0
 N N,I,CDA S N="",I=0,CDA=""
 F  S N=$O(@$$^W4GL("P1EZA")@(CD,N)) Q:N=""  S I=I+1,CDA=N
 I I=1,$L(CDA) Q CDA_";"_CD_";"_$$QN(STPAR)_";"_$$PRC(STPAR)
 Q 0
 ;
ALLSETS(STAM) ;
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 N CD S CD=$$CD(STPAR)
 I '$$^W4EZAT(CD) Q 0
 N N,OK S N="",OK=1
 F  S N=$O(@$$^W4GL("P1EZA")@(CD,N)) Q:N=""  D
 .I '$$CHOICESET(N,0) S OK=0
 Q OK
 ;
 ;
SETMANA(SH) ;
 N MANA S MANA=$$^W4DMANA(SH,$$^W4TMPORD)
 I MANA S @$$^W4TMPORD@(SH,"MANA")=MANA
 Q
 ;
SAVEIT(TXT) ;
 D PUT^%W3DEB("W4HZTSF-SAVEIT","TXT=TXT")
 N STPAR
 S STPAR=$$CNWEB^%L1FRM(TXT)
 D PUT^%W1PRM("STPAR",STPAR)
 N UR S UR=$$UR^W4MENU
 ;
 I UR<4,$$^W4EZAT($$CD(STPAR)) D
 .N SHED S SHED=$$GET^%W1PRM("SHID0")
 .D PUT^%W3DEB("W4HZTSF-SAVEIT","UR=UR& SHED=SHED")
 .D SAVEIT3(STPAR,SHED)
 Q UR
 ;
 ;
SAVEIT3(STPAR,SHED) ;--- AI -> NEW ^TMPORD
 ;;S ^AA("SAVEIT3","STPAR")=STPAR
 ;;S ^AA("SAVEIT3","SHED")=SHED
 N TMPORDIT S TMPORDIT=$$^W4MAIN("TMPORDIT")
 D PROCQN
 ;
 I $$ISSTPAR0^W4RSTPAR(STPAR) D
 .D PUT^%W1PRM("STPAR0",STPAR)
 .D PUT^%W1PRM("STPAR00",STPAR)
 ;
 K @TMPORDIT
 M @TMPORDIT=@$$^W4TMPORD
 K @TMPORDIT@("OLD")
 K @$$^W4TMPORD
 ;
 S @$$^W4TMPORD=$G(@TMPORDIT)
 ;
 I $E(SHED,1,2)="LV" D
 .N I,I0 S I0=$$SHORD^W4HZORD(+$E(SHED,4,6))
 .N QN0 S QN0=$$QN(STPAR)
 .;
 .N ITRA0 S ITRA0=$$ITRAST^W3HZMST(JB,I0,TMPORDIT)
 .N K,ST,END,LV,ST1,QN1
 .S K=0,END=0,ST1="",QN1=""
 .N MULTY S MULTY=$$^W4MULTY
 .;
 .F I=I0+1:1 Q:'$D(@TMPORDIT@(I))  D  Q:END
 ..S ST=$G(@TMPORDIT@(I))
 ..I I=(I0+1),$$CDC(ST) D  Q
 ...D PUT^%W1PRM("COMMENT0",ST)
 ..S LV=$$LV(ST) I LV=0 S END=1 Q
 ..N CD S CD=$$CD(ST)
 ..N QN S QN=$$QN(ST)
 ..S K=K+1
 ..M @$$^W4TMPORD@(K)=@TMPORDIT@(I)
 ..;;M ^AA("TMPORD",K)=@TMPORDIT@(I)
 ..;;S ^AA("TMPORD",K,"LV")=LV
 ..I LV=1 S QN1=$$^W4QNR(QN)_$$DOP^W4PIZZA(QN) ; *** 02/08/20
 ..I QN["*" D
 ...I LV=2,$L(QN,"*")=3 S QN=$P(QN,"*",2,3) Q
 ...I LV=2,$L(QN,"*")=2,$G(QN1) S QN=QN1*$P(QN,"*",2)_$$DOP^W4PIZZA(QN) Q
 ...I MULTY S QN=$P(QN,"*",2,3) Q
 ..;;S ^AA("TMPORD",K,"QN")=QN
 ..S $P(ST,"~",5)=QN
 ..
 ..I $P(ST,"~")=1 D
 ...I $$CDC(ST) Q
 ...S ST1=ST,$P(ST,"~",15)=$TR(STPAR,"~","^")
 ..
 ..I $P(ST,"~")=2 D
 ...I $$CDC(ST) Q
 ...S $P(ST,"~",15)=$TR(ST1,"~","^")
 ..
 ..S @$$^W4TMPORD@(K)=ST
 ..
 ..D ^W4SRVTO(TMPORDIT,I,$$^W4TMPORD,K)
 ..I MULTY D
 ...N MRG S MRG=$G(@$$^W4TMPORD@("MRG",K))
 ...I $G(ITRA0) S @$$^W4TMPORD@("MRG",K)=MRG\ITRA0
 ..
 ..N LVN S LVN=$$LV(ST)-1
 ..I $$CDC(ST),LVN=0 S LVN=1
 ..S $P(@$$^W4TMPORD@(K),"~")=LVN
 Q
 ;
 ;
AIG(STAM) ;
 Q $G(%ARG("AIG"))
 ;
AIP(STAM) ;
 Q $G(%ARG("AIP"))
 ;
NEWSET(STPAR) ;
 S ^AA("W4HZTSF-NEWSET")=STPAR
 N SET S SET=$P(STPAR,";")
 I SET["^" S SET=$P(SET,"^")
 N OLDSET S OLDSET=$P(STPAR,"^",2)
 ;
 N OK S OK=0
 N I S I="" F  S I=$O(@$$^W4TMPORD@(I)) Q:I=""  I I D  Q:OK
 .I $P($G(^(I)),"~",2)=SET S OK=1
 Q:OK
 D PUT^%W1PRM("NEWSET",1)
 Q
 ;
TMPA(STAM) Q $$^W4MAIN("TMPA")
 ;
INDSET ;
 N N,TMPIND K IND
 S TMPIND=$$^W4MAIN("TMPIND")
 S N="" F  S N=$O(@TMPIND@(N)) Q:N=""  D
 .S SET=$P($G(^(N)),"~") Q:$E(SET)'="A"
 .S IND(SET)=N
 Q
 ;
RZB ;
 N A,TMPA,I,IND
 S TMPA=$$TMPA K @TMPA
 N TMPORD S TMPORD=$$^W4TMPORD
 N TMPIND S TMPIND=$$^W4MAIN("TMPIND")
 ;
 D ^W4INDSET($$CD^W3HZMST($$^W4RSTPAR))
 ;
 D INDSET
 ;
 N N S N="" F  S N=$O(@TMPIND@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S @TMPA@(N)="0~"_A
 ;
 N K,CDA,SET,I S IND="",K=0
 S I="" F  S I=$O(@TMPORD@(I)) Q:I=""  I I D
 .S A=$G(^(I))
 .I $$CDA($$CD(A)) S K=0 Q
 .I $$LV(A)=0 D
 ..S SET="A"_$$NSET($$CD(A))
 ..I SET?1"A"1N.N S IND=$G(IND(SET))
 .Q:IND=""
 .S K=K+1
 .M @TMPA@(IND,K)=@TMPORD@(I)
 .S @TMPA@(IND,K,"I")=I
 ;
 N SET S SET=$P($$GET^%W1PRM("STPAR40"),";") Q:SET=""
 S IND=$G(IND(SET)) Q:IND=""
 S GORD=$E(TMPA,1,$L(TMPA)-1)_","""_IND_""")"
 Q
 ;
 ;
SBR(STPAR,QN) ;
 ;;S ^AA("W4HZTSF-SBR","STPAR")=STPAR
 ;;S ^AA("W4HZTSF-SBR","QN")=QN
 N TMPA S TMPA=$$TMPA 
 ;
 ;;I '$D(@TMPA@(1,1)) Q
 ;
 N OK S OK=0 
 N A,N S N="" F  S N=$O(@TMPA@(N)) Q:N=""  S A=$G(^(N)) D
 .I $E($P(A,"~",2))="A",$D(@TMPA@(N))>9 S OK=1 Q
 .I $P(A,"~")=0,$P(A,"~",2) S OK=1
 ;;S ^AA("W4HZTSF-SBR","OK")=OK
 Q:'OK
 ;
 N TMPORD S TMPORD=$$^W4TMPORD
 N TMPORDS S TMPORDS=$$^W4MAIN("TMPORDS") K @TMPORDS
 M @TMPORDS=@TMPORD
 K @TMPORD
 N N,N1,K,IND
 ;
 D SBRA
TV S K=0
 ;
 S N="" F  S N=$O(@TMPA@(N)) Q:N=""  D
 .Q:$D(@TMPA@(N))<10
 .S K=K+1,@TMPORD@(K)=$G(@TMPA@(N))
 .S N1="" F  S N1=$O(@TMPA@(N,N1)) Q:N1=""  D
 ..S K=K+1,@TMPORD@(K)=$G(@TMPA@(N,N1))
 ..N IO S IO=$G(@TMPA@(N,N1,"I"))
 ..;
 ..I $L(IO) D ^W4SRVTO(TMPORDS,IO,TMPORD,K)
 ;
 K @TMPORD@("OLD")
 M @TMPORD@("OLD")=@TMPORDS@("OLD")
 K @TMPA,@TMPORDS
 ;
 I $L($G(STPAR)) D
 .N CD S CD=$$CD(STPAR) Q:'CD
 .D SET^W4ITEND(CD,QN)
 Q
 ;
SBRA ;
 N N,N1,K,K1,IND,TMPA1,A,SET,NSET
 S TMPA1=$$^W4MAIN("TMPA1")
 K @TMPA1 S K=0,K1=0
 ;
 S N="" F  S N=$O(@TMPA@(N)) Q:N=""  D
 .S @TMPA1@(N)=$G(@TMPA@(N))
 .S A=$G(^(N)),SET=$$CD(A),NSET=$E(SET,2,6)
 .S N1="" F  S N1=$O(@TMPA@(N,N1)) Q:N1=""  D
 ..I $$LV($G(^(N1)))=0 D  Q
 ...D SBRAIND($G(^(N1)),NSET)
 ...S K1=1
 ...M @TMPA1@(N,IND,K1)=@TMPA@(N,N1)
 ..Q:'K1
 ..S K1=K1+1
 ..M @TMPA1@(N,IND,K1)=@TMPA@(N,N1)
 ;
 K @TMPA
 S N="" F  S N=$O(@TMPA1@(N)) Q:N=""  D
 .S K=0
 .S @TMPA@(N)=$G(@TMPA1@(N))
 .S IND="" F  S IND=$O(@TMPA1@(N,IND)) Q:IND=""  D
 ..S K1="" F  S K1=$O(@TMPA1@(N,IND,K1)) Q:K1=""  I K1 D
 ...S K=K+1 M @TMPA@(N,K)=@TMPA1@(N,IND,K1)
 ;
 K @TMPA1
 Q
 ;
 ;
SBRAIND(A,NSET) ;
 N LV,CD
 S LV=$$LV(A)
 S CD=$$CD(A)
 I LV'=0 Q
 I 'NSET!'CD D SBRAINDK Q
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 S IND=$G(@$$^W4GLSET(HZM)@(NSET,CD))
 I 'IND D SBRAINDK Q
 I $D(@TMPA1@(N,IND)) D  Q
 .N IND1 F IND1=IND:.01 Q:'$D(@TMPA1@(N,IND1))
 .S IND=IND1
 Q
 ;
SBRAINDK ;
 S K=K+1,IND=100+K
 Q
 ;
DELOLD ;
 N A,A1,I,J,OK,CD,CMA,STT
 S I="" F  S I=$O(@$$^W4MAIN("TMPOAI")@(I)) Q:I=""  I I D
 .S A=$G(^(I))
 .S A1=$G(^(I+1))
 .S CD=$$CD(A),CMA=$$QNR(A) Q:'CMA
 .S CMNTA=""
 .I $$CD(A1)[($$CD(A)_"-C") S CMNTA=$P(A1,"~",3)
 .S OK=0
 .F J=1:1 Q:'$D(@TMPTFUR@(J))  S STT=$G(^(J)) I $G(^(J,"QN")) D  Q:OK
 ..I $P(STT,"~")=CD S OK=1
 .I 'OK D
 ..S K=K+1
 ..S ST=A
 ..S $P(ST,"~",11)=-CMA_";"_CMNTA
 ..S $P(ST,"~",5)=0
 ..D ADD^%L1GSEQ(GORD,LI+K,ST,1)
 ;
 K @$$^W4MAIN("TMPOAI")
 Q
 ;
QNR(A)
 N QN S QN=$$QN(A)
 I QN["*" S QN=QN*$P(QN,"*",2)
 Q QN
 ;
NSET(CD) ;
 N SETOK S SETOK=""
 N STPAR0 S STPAR0=$$^W4RSTPAR
 N CD0 S CD0=$$CD(STPAR0)
 N REF S REF=$$REF^W4EZAT(CD0)
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N SET,NSET S SET="" F  S SET=$O(@REF@(SET)) Q:SET=""  D  Q:SETOK
 .S NSET=$E(SET,2,6) Q:NSET=""
 .I $D(@$$^W4GLSET(HZM)@(NSET,CD)) S SETOK=NSET
 Q SETOK
 ;
PROCQN ;
 N SHED,SH
 S SHED=$$GETP^%W1PRM("SHID0")
 I SHED="" Q
 S SH=$P(SHED,";")
 I SH'["LV0" Q
 S SH=$E(SH,4,6) I 'SH Q
 N QN,IT
 S QN=$$QNST^W3HZMST(JB,SH)
 S IT=$$ITRAST^W3HZMST(JB,SH)
 I +IT'=+QN S $P(STPAR,"~",5)=IT_"/"_QN
 Q
 ;
MAXADD(MAIN) ;
 I '$G(UR) S UR=$$UR^W4MENU
 D TMPTFUR(UR)
 N MAX I $G(MAIN)="" Q 0
 I $G(@TMPTFUR)="1+1" Q 1
 N NM
 I $D(@$$^W4GL("P1EZI")@(MAIN))=11 S MAX=$$MAX($G(@$$^W4GL("P1EZI")@(MAIN))) I MAX Q MAX
 Q $$MAX($$G^W4EZKI(MAIN))
 ;
MAX(ST) ;
 N QNMAX S QNMAX=$$SPA^%L1FRM($P(ST,"\"))
 Q $TR(QNMAX,"!^<> ","")_$TR(QNMAX,"1234567890","")
 ;
ADDSFREE(MAIN)
 I '$G(MAIN) Q ""
 N NM,AF
 I $D(@$$^W4GL("P1EZI")@(MAIN))=11 S AF=$$AF($G(@$$^W4GL("P1EZI")@(MAIN))) I AF Q AF
 Q $$AF($$G^W4EZKI(MAIN))
 ;
AF(ST) ;
 N AF S AF=$$SPA^%L1FRM($P(ST,"\",4))
 Q AF
 ;
QNADD(STAM) ;
 N (JB)
 N UR S UR=$$UR^W4MENU
 D TMPTFUR(UR)
 S QNADD=0
 S I="" F  S I=$O(@TMPTFUR@(I)) Q:I=""  I I S STT=$G(^(I)) I $G(^(I,"QN")) D
 .S QN=$G(^("QN"))
 .S QNADD=QNADD+QN
 Q QNADD
 ;
 ;
LASTUR(UR) ;
 N TMPS D TMPS^W4MENU
 S:UR="" UR=0
 Q $G(@TMPS@(UR,"LAST"))
 ;
FIRST(STAM) ;
 Q +$G(%ARG("FIRST"))
 ;
TOAI(PRM) ;
 ;N FIRST,AIP
 ;S FIRST=$P(PRM,";")
 ;S AIP=$P(PRM,";",2)
 S OKTOAI=0
 ;
 I '$$TOAICD^W4PRM Q 0
 N TOAI S TOAI=$$GETP^%W1PRM("TOAI") I 'TOAI Q 0
 I $$GETP^%W1PRM("WASTOAI") Q 0
 ;
 I $D(@$$^W4MAIN("TMPORDIT"))>9,'$D(@$$^W4TMPORD@("OLD")) D
 .M @$$^W4TMPORD@("OLD")=@$$^W4MAIN("TMPORDIT")
 ;
 N TMPOLD S TMPOLD="^[$$^W3MAIN]TMPORD(JB,""OLD"")"
 N CDFROM S CDFROM=$$CDST^W3HZMST(JB,TOAI,TMPOLD)
 ;
 N NMFROM S NMFROM=$$NMST^W3HZMST(JB,TOAI,TMPOLD) Q:NMFROM="" 0
 N QNFROM S QNFROM=$$QNST^W3HZMST(JB,TOAI,TMPOLD) Q:QNFROM'>0 0
 ;
 N BDAIA S BDAIA=$$^W4BDAIA(CDFROM,QNFROM)
 ;
 N RES
 ;
 I $L($$GETP^%W1PRM("SHID0"))!$$GETP^%W1PRM("QNAT"),$$UR^W4MENU<5,BDAIA!$$BDMAX(BDAIA) D  Q RES
 .S RES="1;"_$$CLWEB^%L1FRM(NMFROM) 
 .N QN S QN=QNFROM
 .I $$BDMAX(BDAIA) S QN=$$BDMAX(BDAIA)
 .S RES=RES_";"_QN
 Q 0
 ;
 ;
BDMAX(BDAIA) ; 
 I $E(BDAIA,1,3)="MAX",$E(BDAIA,4,10) Q $E(BDAIA,4,10) 
 Q 0
 ;
ADDWND ; 
 N UR S UR=$$UR^W4MENU
 W "<table id=""TblBtn"" dir="""_$$^%W1DIR_""" width=""90%"" >",!
  
  W "<tr height="""_$$^W4KF(80)_"px"" align=""center"" >",!
   D PGUPDN(UR)
   W "<td onClick=""SubmitAdd()"" style=""width:25%;background-color:green;color:white;font-size:"_$$^W3FSZ(14)_";border:3px white ridge"" >"
    W $$^%W1DICT("SUBMIT")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td onClick=""Exit()"" style=""width:25%;background-color:red;color:white;font-size:"_$$^W3FSZ(14)_";border:3px white ridge"" >"
    W $$^%W1DICT("BACK")
   W "</td>",!
  W "</tr></table>",!
 Q
 ;
ADDWNDPZ ;
 W "<table id=""TblBtn"" dir="""_$$^%W1DIR_""" width=""90%"" >",!
  W "<tr height="""_$$^W4KF(80)_"px"" >",!
   W "<td onClick=""SubmitAdd()"" style=""text-align:center;background-color:green;color:white;font-size:"_$$^W3FSZ(14)_";border:3px white ridge"" >"
    W $$^%W1DICT("SUBMIT")
   W "</td>"
  W "</tr>",!
  ;
  W "<tr height="""_$$^W4KF(80)_"px"" >",!
   W " <td onClick=""Exit()"" style=""text-align:center;background-color:red;color:white;font-size:"_$$^W3FSZ(14)_";border:3px white ridge"" >"
    W $$^%W1DICT("BACK")
   W " </td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
PGUPDN(UR) ;
 I $$ORDSMALLAIN^W4MENU Q
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 N CD S CD=$$CD^W3HZMST(STPAR)
 I $$^W4PIZZA(CD),UR>2 Q
 ;
 N TMPS D TMPS
 I $G(@TMPS@(UR,"LAST"))'="END",'$$^W4DLVNPR(JB) D
 .I UR<3,$$GRITVW^W4PRM Q
 .W "<td "_$$^W4TOUCH_"=""PageDown()"" "
 . W "style=""width:25%;background-color:yellow;color:brown;font-size:"_$$^W3FSZ(14)_";border:3px brown ridge"" "
 .W ">"
 . W $$^%W1DICT("PGDN")
 .W "</td>"
 .W "<td>&nbsp;</td>"
 ;
 I $G(@TMPS@(UR,"PG"))'=1!$$^W4SMALL D
 .W "<td>&nbsp;</td>"
 .W "<td "_$$^W4TOUCH_"=""PageUp()"" "
 . W "style=""width:25%;background-color:yellow;color:brown;font-size:"_$$^W3FSZ(14)_";border:3px brown ridge"" "
 .W ">"
 . W $$^%W1DICT("PGUP")
 .W "</td>"
 .W "<td>&nbsp;</td>"
 Q
 ;
TMPS ;
 S TMPS="^[$$^W3MAIN]TMPS(JB)"
 Q
 ;
ADDCOLOR(STAM) ;  
 Q $G(@$$^W4PRM@("ADDCOLOR")) 
 ;
BGADDCOLOR(CD) ; 
 I '$$ADDCOLOR Q 0 
 I $$BGIT^W4P(CD)="" Q 0 
 Q 1 
 ;
FGADDCOLOR(CD) ; 
 I '$$ADDCOLOR Q 0 
 I $$FGIT^W4P(CD)="" Q 0 
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZTSF0
W4HZTSF(STPAR) ; [ 01.05.16 17:47 ] [ 02.02.16 19:28 ] [ 01.02.16 18:44 ] 
 N (JB,%REM,NMB,STPAR,FOCUS,%ARG)
 ;; STPAR - OR 0~PRT~....
 ;;         OR SET;PRT;CM;MH --> W4HZAIN
 ;----------------------------------------------------------------------
 I $G(%ARG("SHOW"))=0 Q
 ;
 N UR S UR=$$UR^W4MENUBT
 D TMPTFUR(UR)
 ;
 I 'UR D RESTUR^W4SCASK
 D PUT^%W3DEB("W4HZTSF","UR0=UR&STPAR=STPAR")
 ;
 D TMPS^W4MENUBT
 I '$$^W4AIN!(UR'=3) D
 .D PUT^%W1PRM("URMENU",UR)
 ;
 I $$AIP D
 .D COLXY
 .D PUT^%W1PRM("TXT2",$G(STPAR))
 .
 ;
 I STPAR="STPAR0" S STPAR=$$^W4RSTPAR
 I STPAR="STPAR" S STPAR=$$GETP^%W1PRM("STPAR")
 I STPAR="STPAR4" S STPAR=$$GETP^%W1PRM("STPAR4")
 I STPAR="STPAR40" S STPAR=$$GETP^%W1PRM("STPAR40")
 ;
 D PUT^%W3DEB("W4HZTSF-1","STPAR=STPAR & UR=UR")
 ;
 S STPAR=$$CNWEB^%L1FRM(STPAR)
 S SHEDIT=0
 S SHID=$$SHID
 I SHID'="" S SHEDIT=$$FINDSH^W4HZORD(SHID)
 D GORD
 ;
 D PUT^%W3DEB("W4HZTSF-2","SHEDIT=SHEDIT")
 ;
 ;
 I $E(STPAR)="A",UR<5 D ^W4HZAIN(STPAR) Q
 ;
 N PRA,EQA,CDA S PRA=0,EQA=0,CDA=""
 Q:'$G(JB)
 I $L($G(NMB))<4 S NMB=$$NMB^W3HZMST(JB)
 ;
 D KILL^%W3DEB("W4HZTSF")
 D PUT^%W3DEB("W4HZTSF-3","JB=JB & STPAR0=STPAR &NMB=NMB & ARG=[%ARG")
 Q:$G(STPAR)=""
 N I,N2,MH
 N W3HZTSF S W3HZTSF="" D INIT^W3HZTFR
 ;
 N PRT S PRT=$$CD(STPAR)
 D PUT^%W3DEB("W4HZTSF-4","PRT=PRT")
 Q:PRT=""
 ;
 S KOT(3)=$$SHEM^W4P(PRT)_"~"_PRT
 ;
 I '$G(%ARG("BACK")),$G(UR)'="",$$FIRST!($D(@$$^W3TMPTF@($$^%W1JB,UR))<10) D
 .D CRTMP(PRT,$$^W3TMPTF,UR)
 ;
 I $$AIG D
 .D CRTMPIND(STPAR)
 .
 .I $D(@$$^W4MAIN("TMPORDIT"))>9,'$D(@$$^W4TMPORD@("OLD")) D
 ..M @$$^W4TMPORD@("OLD")=@$$^W4MAIN("TMPORDIT")
 .;
 .I $D(@$$^W4MAIN("TMPORDIT"))<10,$D(@$$^W4TMPORD@("OLD"))>9 D
 ..M @$$^W4MAIN("TMPORDIT")=@$$^W4TMPORD@("OLD")
 ..K @$$^W4MAIN("TMPORDIT")@("OLD")
 ;
 D TMPTFUR(UR)
 ;
 I '$G(%ARG("BACK")),$G(SHEDIT),$G(@TMPTFUR)'="QN" D SETQN(SHEDIT,UR) ; ^TMPORD --> QN --> ^TMPTF
 ;
 D VIEW(UR,STPAR)
 ;
 I $$FIRST,$$GETP^%W1PRM("SHID0")="",$$^W4EZAT(PRT),UR<5 D  ; -- KAMA AI LEHAZMIN
 .D PUT^%W1PRM("NOFUNC",1)
 .W "<script>",!
 .W " QnEzat('"_PRT_"')",!
 .W "</script>",!
 .S %ARG("FIRST")=0
 ;
 Q
 ;
 ;
COLXY ;
 D COLXY^W4HZAIN
 Q
 ;
CRTMPIND(STPAR) ;
 D PUT^%W1PRM("TXT1",$G(STPAR))
 D NEWSET(STPAR)
 D ^W4INDSET($$CD^W3HZMST($$^W4RSTPAR))
 Q
 ;
 S TMPIND=$$^W4MAIN("TMPIND")
 K @TMPIND ;
 N A,N
 S N="" F  S N=$O(@$$^W4MAIN("TMPTF")@(3,N)) Q:N=""  D
 .S A=$G(^(N)) I A'?1"A"1N.E Q
 .S @TMPIND@(N)=A
 Q
 ;
 ;
CRTMP(PRT,GL,UR) ;
 N I,K,MH,N2,KOT,OK S I=0,K=0,OK=""
 I $G(PRT)="" Q
 ;
 K @GL@($$^%W1JB,UR)
 S @GL@($$^%W1JB,UR)=PRT
 ;
 I $$OLDMVC11^W4PRM,$D(@$$^W3GL("W4MVC11")),'$$^W4AIN D  Q:$L(OK)&(OK'["!")
 .S OK=$$BELONG11^W4TSF(PRT) Q:OK=""  Q:OK["!"
 .D CRTMP11(PRT,OK)
 ;
 I $D(@$$^W3GL("P1EZT")@(PRT)) D  Q
 .S N2="" F  S N2=$O(@$$^W3GL("P1EZT")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..I '$$D^W3SETA(N2) Q
 ..S I=$G(@$$^W3GL("P1EZT")@(PRT,N2))
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$NM^W3SETA(N2),20)_"~"
 ;
 I $D(@$$^W3GL("P1EZA")@(PRT)) D  Q
 .S N2="" F  S N2=$O(@$$^W3GL("P1EZA")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D
 ..I '$$D^W3SETA(N2) Q
 ..S I=$G(@$$^W3GL("P1EZA")@(PRT,N2))
 ..S @GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$NM^W3SETA(N2),20)_"~"
 ;
 I $D(^[$$^%W1UCI(JB)]P1EZR(PRT)) D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .S N2="" F  S N2=$O(^[$$^%W1UCI(JB)]P1EZR(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S MH=0 ;+$$MH($G(NMB),N2)
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),20)_"~"_$J(MH,2,2)
 ;
 K @$$^W4MAIN("VRM")
 ;
 I $D(^[$$^%W1UCI(JB)]P1EZI(PRT)) D  Q
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .;
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZI")@(PRT,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2) ;
 ..S K=$G(@$$^W4GL("P1EZI")@(PRT,N2)) Q:'K
 ..S @$$^W4MAIN("VRM")@(K)=N2
 .
 .S K="" F  S K=$O(@$$^W4MAIN("VRM")@(K)) Q:K=""  D
 ..S N2=$G(^(K))
 ..S MH=+$$MH($G(NMB),N2,PRT)
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),20)_"~"_$J(MH,2,2)
 .K @$$^W4MAIN("VRM")
 ;
 I $$P1EZKI(PRT) D  Q
 .N SUGP S SUGP=+$$SUG^W4P(PRT)
 .S I=I+1
 .S @GL@($$^%W1JB,UR,I)="A~"_$$TV^%W1DICT($$^%W1LNG,"ADDITIONS")
 .
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZKI")@(SUGP,N2)) Q:N2=""  D
 ..Q:$$NOHZG(N2)
 ..S K=$G(@$$^W4GL("P1EZKI")@(SUGP,N2))
 ..S @$$^W4MAIN("VRM")@(K)=N2
 .
 .S K="" F  S K=$O(@$$^W4MAIN("VRM")@(K)) Q:K=""  D
 ..S N2=$G(^(K))
 ..S MH=+$$MH(+$G(NMB),N2,"G"_SUGP)
 ..S I=I+1,@GL@($$^%W1JB,UR,I)=N2_"~"_$$HBR^%L1FRM($$SHEM^W4P(N2),20)_"~"_$J(MH,2,2)
 ;
 Q
 ;
 ;
CRTMP11(PAR,BELONG) ;
 K @$$^W4MAIN("VRM")
 N MHPAR S MHPAR=$$MH^W4P(PAR)
 ;
 I $E(BELONG)="S" D  Q
 .N SET S SET=$E(BELONG,2,20) Q:SET=""
 .N CD,MH,IND,N
 .
 .S CD="" F  S CD=$O(@$$^W4GL("P1SETM")@(SET,CD))  Q:CD=""  D
 ..;;Q:CD=PAR
 ..S MH=$$MH^W4P(CD)
 ..I MH>MHPAR Q
 ..S IND=$J(MH,7,2)_$J(CD,8)
 ..S @$$^W4MAIN("VRM")@(IND)=CD_"\"_MH
 .
 .D CRTMP111
 ;
 I $E(BELONG)="G" D  Q
 .N I,CD,MH,IND
 .F I=1:1 Q:'$D(@$$^W3TMPTF@($$^%W1JB,2,I))  D
 ..S TXT=$G(^(I))
 ..S CD=$P(TXT,"~") Q:'CD  ;;Q:CD=PAR
 ..S MH=$P(TXT,"~",3)
 ..I MH>MHPAR Q
 ..S IND=$J(MH,7,2)_$J(CD,8)
 ..S @$$^W4MAIN("VRM")@(IND)=CD_"\"_MH
 .
 .D CRTMP111
 Q
 ;
 ;
CRTMP111 ;
 N I,K,CD,MH
 S I=0
 S K="" F  S K=$O(@$$^W4MAIN("VRM")@(K),-1) Q:K=""  D
 .S CD=$P($G(^(K)),"\")
 .S MH=$P($G(^(K)),"\",2)
 .S I=I+1,@GL@($$^%W1JB,3,I)=CD_"~"_$$HBR^%L1FRM($$SHEM^W4P(CD),20)_"~0.00 ["_$J(MH,2,2)_"]"
 ;
 S @GL@($$^%W1JB,3)="1+1"
 K @$$^W4MAIN("VRM")
 Q
 ;
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
 ;
SETQN(SHED,UR) ; -- SHED -- NOM STROKI NACH SETA
 D PUT^%W3DEB("W4HZTSF-SETQN","SHED=SHED")
 N GORD,A,MQN,MCMNT
 D TMPTFUR(UR)
 D GORD
 ;
 S LVO=""
 ;
 N SH F SH=SHED+1:1 Q:'$D(@GORD@(SH))  S A=$G(^(SH)) Q:$P(A,"~")=0  Q:$$CDA($$CD(A))  D
 .S CD=$$CD(A)
 .S QN=$$QN(A)
 .I QN["*" S QN=$P(QN,"*",2)
 .I CD["-C",'QN S QN=1
 .I CD["-C",LVO=1 S MCMNT($P(CD,"-C"))=CD_"~"_$$NM(A)
 .S CMNT=$$GETP^%W1PRM("CMNT")
 .I CD["-C",LVO=0,CMNT="",'$$EZAT^W3HZMST(JB,SH) D PUT^%W1PRM("CMNT",$$NM(A))
 .S MQN(CD)=QN-$G(@GORD@("MRG",SH))
 .I MQN(CD) S MQN(CD)=$$QNP(QN)
 .S LVO=$P(A,"~")
 ;
 D PUT^%W3DEB("W4HZTSF-SETQN-1","MQN=[MQN")
 ;
 N I,CDT F I=1:1 Q:'$D(@TMPTFUR@(I))  D
 .S CDT=$$CDI(I,UR)
 .I $D(MQN(CDT)) S @TMPTFUR@(I,"QN")=MQN(CDT) D
 ..I $D(MCMNT(CDT)) S @TMPTFUR@(I,"CMNT")=MCMNT(CDT)
 ;
 S @TMPTFUR="QN"
 K MQN,MCMNT
 Q
 ;
 ;
QNP(QN) ;
 Q $$QNP^W4PIZZA(QN)
 ;
NOHZG(N2) ;
 I '$D(@$$^W4GL("PAR")@(N2)) Q 1
 I $G(@$$^W4GL("W3PAR")@(N2))=0 Q 1
 Q 0
 ;
 ;
MHT(PRT,SUB)
 I $G(PRT)="" Q ""
 I $G(SUB)="" Q ""
 Q $G(@$$^W4GL("MHT")@(PRT,SUB))
 ;
 ;
LI(STAM) D TMPTFUR(UR)
 Q $O(@TMPTFUR@(99999),-1)
 ;
SHID(STAM) ;
 N A S A=$$GETP^%W1PRM("SHID")
 I A'["LV" Q ""
 Q A
 ;
HASCMNT(I,UR) ;
 D TMPTFUR(UR)
 I $D(@TMPTFUR@(I,"CMNT")) Q 1
 Q 0
 ;
COMMENT(I,UR) ;
 D TMPTFUR(UR)
 Q $P($G(@TMPTFUR@(I,"CMNT")),"~",2)
 ;
 ;
VIEW(UR,STPAR) ;
 D TMPTFUR(UR)
 K MTOT,MQ,NEWGR
 N PRT S PRT=$$CD(STPAR)
 ;
 D TMPS^W4MENUBT
 ;
 I '$$^W4AIN!(UR'=3),$$FIRST D
 .D TMPSNEW^W4MENUBT
 ;
 I '$$^W4AIN&(UR=3)!(UR=5),$$^W4PIZZA(PRT) D  Q
 .S %ARG("CSR")=1
 .D ^W3HZTSF(STPAR)
 ;
 N KOT,TXT
 N COMMENT S COMMENT=$P($$CMNT(PRT),"~",3)
 S KOT=$$H2U^%L1FRM($$SHEM^W4P(PRT))
 ;
 I $L(COMMENT) D
 .S KOT=KOT_" <span style=""font-size:"_$$^W3FSZ(10)_""">"
 .S KOT=KOT_$$H2U^%L1FRM(COMMENT)_"</span>"
 .I $L($$SHID) S KOT=KOT_"<CP-"_$$SHID
 ;
 N PRCMT,BGA S BGA=0,PRCMT=0 S SELPAR=0
 ;
 D COLXY
 ;
 N K,L,I0,IL S K=1,L=0
 S I0=$$LASTUR(UR)
 I I0<1 S I0=1
 ;
 N K,L,I0 S K=1,L=0
 S I0=$$LASTUR(UR)
 I I0<1 S I0=1
 ;
 N I S I=I0-.5 S:I<0 I=""
 F  S I=$O(@TMPTFUR@(I)) Q:I=""  D  Q:K>COLY
 .N VALUE,TXT,HRF S TXT=$G(@TMPTFUR@(I)) S HRF=0
 .I '$P(TXT,"~"),'$$P1EZAT(PRT) Q
 .I $P(TXT,"~"),$$P1EZAT(PRT) Q
 .N TXT1 S TXT1=$$CLWEB^%L1FRM(TXT)
 .S TXT1="1~"_TXT1
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .N MAX S MAX=$$MAXADD(PRT)
 .D SHOWADD(TXT,PRT,I,MAX,UR)
 ;
 S I0=$S(I="":"END",1:I)
 S @TMPS@(UR,"LAST")=I0
 ;
 S KOT("NOTIME")=""
 D ^W4SHEET(.KOT,"","")
 Q
 ;
 ;
TMPTFUR(UR) S TMPTFUR="^[$$^W3MAIN]TMPTF($$^%W1JB,"_+UR_")"
 Q
 ;
 ;
SHOWADD(TXT,PRT,I,MAX,UR) ;
 D PUT^%W3DEB("W4HZTSF-SHOWADD","TXT=TXT & PRT=PRT & I=I & MAX=MAX")
 N NM,MH,CD,QN,ST
 S CD=$P(TXT,"~",1)
 S NM=$P(TXT,"~",2)
 ;
 S MH=$P(TXT,"~",3)
 I MH'["[" S MH=$J(MH,2,2)
 I MH["[" D
 .S MH=$J(MH,2,2)_"<span style=""color:brown;font-size:"_$$^W3FSZ(9)_"""><br>["_$P($P(MH,"[",2),"]")_"]</span>"
 ;
 S QN=$$QNDEF(CD,PRT,I,UR)
 I QN["*" S QN=$P(QN,"*",2)
 ; --------- NAME
 S ST="<table dir="""_$$^%W1DIR_""" width=""98%"" height=""100%"" border=""0"">"
 S ST=ST_"<tr>"
 ;
 I $$CDA(CD)&($$UR^W4MENUBT<5) D  ; ---- P1EZA & P1EZT - SUBGROUPS
 .S ST=ST_"<td id=""tdid"_CD_""""
 .S ST=ST_" onMouseUp=""ClickTree('"_CD_";"_PRT_";"_$$CM0(STPAR)_";"_$$MHPAR(STPAR)_"')"""
 .S ST=ST_" style=""color:"_$$BGCOLOR^W4CSS_";font-weight:bold"
 .S ST=ST_" ;font-size:"_$$^W3FSZ(12)
 .I $$CHOICESET(CD,SHEDIT) S ST=ST_";background-color:#eaeaea"
 .D
 ..N STSET S STSET=$P($$CURGRAI^W4HZAIN,";")
 ..I CD=STSET S ST=ST_";border:solid 2px red"
 .S ST=ST_";cursor:pointer"
 .
 .S ST=ST_""" >"_$$H2U^%L1FRM(NM)_"</td>"
 ;
 I '$$CDA(CD) D  ; ---- NORMAL ADDITIONS
 .S ST=ST_"<td id=""tdid"_CD_""""
 .S ST=ST_" onMouseUp=""ClickAdd('"_CD_"','+','"_$G(MAX)_"')"""
 .S ST=ST_" style=""color:black;font-weight:bold;cursor:pointer"
 .S ST=ST_" ;font-size:"_$$^W3FSZ(12)
 .I $G(SHEDIT),QN S ST=ST_";background-color:#eaeaea"
 .S ST=ST_""" >"_$$H2U^%L1FRM(NM)
 .
 .I $$HASCMNT(I,UR) D
 ..S ST=ST_"<br /><span style=""color:red;font-size:"_$$^W3FSZ(9)_";font-weight:normal"">"_$$H2U^%L1FRM($$COMMENT(I,UR))_"</span>"
 .S ST=ST_"</td>"
 .
 .S ST=ST_"<td width=""27%"" style=""color:black;font-weight:bold;background-color:#eaeaea;cursor:pointer"" align=""center"""
 .S ST=ST_" onMouseUp=""ClickAdd('"_CD_"','-')"""
 .S ST=ST_"><input type=""text"" size=""2"" style=""font-size:"_$$^W3FSZ(12)_""" maxlength=""2"" id=""qnid"_CD_""" value="""_QN_""" />"
 .S ST=ST_"<br /><span style=""font-size:"_$$^W3FSZ(22)_";color:red;text-align:center"">--</span></td>"
 .
 .D
 ..S ST=ST_"<td id=""mhid"_CD_""" width=""27%"" "
 ..S ST=ST_" style=""color:green;font-size:"_$$^W3FSZ(12)_";font-weight:bold;"
 ..S ST=ST_" background-color:"_$S(MH:"lightgreen",1:"white")_";text-align:center"" "
 ..I $$SHOWCMNT(CD) S ST=ST_" onMouseUp=""ShowCmnt("_JB_",'1~"_$P(TXT,"~")_"','"_$$SHID_"')"""
 ..S ST=ST_">"_MH
 ..I '$$SHOWCMNT(CD) S ST=ST_"</td>" Q
 ..S ST=ST_"<br/><span id=""cmnt"_CD_""" "
 ..S ST=ST_"style=""color:red"
 ..S ST=ST_$S('$$HIDECMNT(CD,QN):";visibility:visible;cursor:pointer",1:";visibility:hidden;cursor:default")_""">"
 ..S ST=ST_$$^%W1DICT("COMMENT")_"</span></td>"
 ;
 S ST=ST_"</tr></table>"
 ;
 K MTXT(K,L,"BG") ;
 N ITRAT S ITRAT=$$^W4ITEND(CD)
 I ITRAT'="NO",'ITRAT S MTXT(K,L,"BG")="pink"
 ;;I ITRAT S MTXT(K,L,"BG")="lightyellow"
 S MTXT(K,L)=ST
 S MTXT(K,L,"I")=CD
 Q
 ;
 ;
CHOICESET(CD,SHED) ;
 N GORD,A D GORD
 S SHED=$G(SHED)
 I $$GET^%W1PRM("NEWPRT")'=0&'SHED Q 0
 N OK S OK=0
 I SHED D
 .N I1 F I1=SHED:1 Q:'$D(@GORD@(I1))  S A=$G(@GORD@(I1)) Q:$P(A,"~")=0&(I1>SHED)  D
 ..I $$CD(A)=CD S OK=1 Q
 I 'SHED D
 .N LI S LI=$O(@GORD@(9999),-1)
 .F I1=LI:-1:1 S A=$G(@GORD@(I1)) Q:$P(A,"~")=0  I $$CD(A)=CD S OK=1 Q
 Q OK
 ;
QNDEF(CD,PRT,I,UR) ;
 D TMPTFUR(UR)
 I $G(SHEDIT)!$G(%ARG("BACK")) Q $G(@TMPTFUR@(I,"QN"))
 Q ""
 ;
MH(NMB,COD,MAIN) ;
 N PRTSF S PRTSF=""
 N PRMHNMB,ZMANK,LKHN,MH,CD0,PRMHNMB
 S ZMANK=$$DATCB^W3HZMST(JB)
 I 'ZMANK S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 I ZMANK="" K ZMANK
 S LKHN=$$LKHN^W3HZMST(JB)
 S PRMHNMB=NMB S MH=$$MH^W4P(COD)
 ;
 I '$$^W4AIN D
 .S CD0=$G(MAIN) Q:CD0=""
 .I $E(CD0)'="G" D  Q
 ..I $$MHT(CD0,COD)'="" S MH=$J($$MHT(CD0,COD),2,2)
 .N SUGP S SUGP=$E(MAIN,2,20) Q:SUGP=""
 .I $G(@$$^W4GL("MHTG")@(SUGP,COD))'="" S MH=$G(^(COD))
 ;
 I MH'["%" S MH=$J(MH,2,2)
 ;
 I $$^W4AIN D
 .I $$UR^W4MENUBT>4 D  Q
 ..I $G(@$$^W4PRM@("AINOTSF"))!$G(@$$^W4PRM@("AINOTSFMH")) S MH=0 Q
 ..I $$MHT(MAIN,COD)=""!'MAIN S MH=$$MH^W4P(COD) Q
 ..S MH=$J($$MHT(MAIN,COD),2,2)
 .
 .S CD0=$$CD^W3HZMST($$^W4RSTPAR) Q:CD0=""
 .S MH=$J($$MHT(CD0,COD),2,2)
 ;
 Q MH
 ;
 ;
MHVIEW(TXT) ;
 N MH S MH=$$MH^W3TMPTF(TXT)
 I 'MH,$$NOMHTSF^W3PRM S MH=""
 Q MH
 ;
ORDERED(I1)
 I $G(@$$^W3TMPTF@($$^%W1JB,UR,I1,"QN")) Q 1
 Q 0
 ;
P1EZKI(COD) ;
 Q $$^W4EZKI(COD)
 ;
P1EZAT(COD) ;
 I $D(@$$^W3GL("P1EZA")@(COD))>9 Q 1
 I $D(@$$^W3GL("P1EZT")@(COD))>9 Q 1
 Q 0
 ;
 ;
SETVL(PRM) ;
 N UR S UR=$$UR^W4MENUBT
 N CD,VL,I
 D TMPTFUR(UR)
 S CD=$P(PRM,";")
 S I=$$GETI(CD,UR) I 'I Q 0
 S VL=$P(PRM,";",2)
 S @TMPTFUR@(I,"QN")=VL
 N N,SQN S SQN=0
 S N="" F  S N=$O(@TMPTFUR@(N)) Q:N=""  I $D(@TMPTFUR@(N,"QN")) D
 .S SQN=SQN+@TMPTFUR@(N,"QN")
 Q SQN
 ;
GETI(CD,UR) ;
 D TMPTFUR(UR)
 F I=1:1 Q:'$D(@TMPTFUR@(I))  I $P(^(I),"~")=CD Q
 I '$D(@TMPTFUR@(I)) Q 0
 Q I
 ;
CDI(I,UR) ;
 D TMPTFUR(UR)
 Q $P($G(@TMPTFUR@(I)),"~")
 ;
CDA(CD) ;
 I $E(CD)="A" Q 1
 Q 0
 ;
GRA(TXT) I $E(TXT)="A" Q 1
 Q 0
CMT(TXT) I $P(TXT,"~")["-C" Q 1
 Q 0
 ;
TMPTFI(I,UR) Q "^[$$^W3MAIN]TMPTF($$^%W1JB,"_UR_","_I_")"
 ;
 ;
SETGR(PRM); --- AFTER SUBMIT (AI OR ADDONS) ;
 ; --- PRM =  SHID ("LV0"+N)
 D PUT^%W3DEB("W4HZTSF-SETGR","PRM=PRM")
 N GORD D GORD
 N I,LI S LI=0
 ;
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 S PRT=$$CD^W3HZMST(STPAR)
 ;
 N EDIT S EDIT=0
 N FLRZB S FLRZB=0
 N CMNT0 S CMNT0=""
 ;
 I $$LV^W3HZMST(STPAR)=0,$$CD^W3HZMST(STPAR) D
 .S CMNT0=$$CMNT^W4HZTSF(PRT)
 ;
 I $$EDIT(PRM) D  I LI<1 Q "0:NOTEDITLINE"
 .S LI=$$FINDSH^W3HZORD(PRM) Q:LI=""
 .S CMNT0=$$CMST0^W3HZMST(JB,LI)
 .S STPAR=@GORD@(LI)
 .S EDIT=1
 .I $$NOMOD(LI),$$EZATI(LI),'$$^W4AIN S EDIT=2
 ;
 I STPAR'?1"0~"1N.E Q "0:ISNOTITEM"
 ;
 N CDPAR S CDPAR=$$CD(STPAR)
 I CDPAR="" Q "0:NOTITEMCODE"
 ;
 N ITRA S ITRA=$$^W4ITEND(CDPAR)
 ;
 N CM0 S CM0=$$CM0(STPAR)
 S ITM=$$^W4ITM(STPAR)
 I 'CM0 S CM0=1,$P(ITM,"^",5)=1
 I $L($G(CMNT0)) D SETMAIN^W4ITM("ITM","CMNT",$P(CMNT0,"~",3))
 D PUT^%W3DEB("W4HZTSF-SETGR-1","CMNT0=CMNT0 & ITM=ITM")
 ;
 N OK S OK=0
 ;
 N MSG S MSG=""
 ;
 I $$UR^W4MENUBT>3 G SETGRED
 ;
 N QNADD S QNADD=$$QNADD
 N MAX S MAX=$$MAXADD(CDPAR)
 N MAXN S MAXN=$$QNMAXNA^W3SET(MAX) ; -- *CM0 ?
 N EQ S EQ=$$EQA^W3SET(MAX)
 D PUT^%W3DEB("W4HZTSF","MAX=MAX&MAXN=MAXN&EQ=EQ")
 ;
 I MAXN,QNADD<MAXN,EQ=2 Q "0:CHOICEMINIMUM;"_MAXN
 I MAXN,QNADD'=MAXN,EQ=1 Q "0:CHOICEEXACTLY;"_MAXN
 I MAXN,QNADD>MAXN,'EQ Q "0:QNTOOMUCH"
 ;
SETGRED ;
 I EDIT,'$$^W4AIN D  ; ------------- ITEM EDIT -----------
 .N CMOLD S CMOLD=$$QNST^W3HZMST(JB,LI)
 .N ST S ST=$P(STPAR,"~",1,4)_"~"_CM0_"~"_$P(STPAR,"~",6,20)
 .S ITM=$$^W4ITM(ST,LI)
 .S MSG=$$MSG^W4ITEND("SH="_LI,CM0) I MSG'="" Q
 .D SETSH^W4ITEND(LI,CM0)
 .I $P($G(@GORD@(LI+1)),"~",2)["-C" D
 ..D PUT^%W1PRM("CMNT",$P(^(LI+1),"~",3))
 .N GLIST S GLIST=$G(@GORD@(LI,"GLIST"))
 .N MANA S MANA=$G(@GORD@(LI,"MANA"))
 .D DELROW^W3HZORD(PRM) ; -- DEL KOLEL TOSAFOT
 .I EDIT=2 S $P(ST,"~",12)=$P($G(@$$^W4TMPORD@(LI)),"~",12)
 .D ADD^%L1GSEQ(GORD,LI,ST,1) ;-- DOBAV GLAV STROKU
 .I $L(GLIST) S @GORD@(LI,"GLIST")=GLIST
 .I $L(MANA) S @GORD@(LI,"MANA")=MANA
 .
 .N CMNT S CMNT=$$CMNT(CDPAR)
 .I $L(CMNT) D
 ..S LI=LI+1
 ..D ADD^%L1GSEQ(GORD,LI,CMNT,1)
 ..;;S @GORD@(LI)=CMNT
 ;
 I $L(MSG) Q "0:"_MSG
 ;
 N NOCHK S NOCHK=0
 ;
 I EDIT,$$^W4AIN D
 .I '$$NOMOD(LI) D
 ..D SET^W4ITEND(LI,-$$QNR^W3HZMST(JB,LI))
 ..D DELROW^W3HZORD(PRM)
 ..
 ..I $L($G(CMNT0)) D PUT^%W1PRM("CMNT",CMNT0)
 ...I $P($G(@GORD@(LI+1)),"~",2)["-C",$P($G(@GORD@(LI+1)),"~",3)?.P,$L($G(CMNT0)) D
 ....S $P(@GORD@(LI+1),"~",3)=CMNT0
 .
 .I $$UR^W4MENUBT>4 S NOCHK=1
 .S EDIT=0 ; --> NEWST
 .D PUT^%W1PRM("NEWPRT",1)
 ;
 I 'EDIT,$$GETP^%W1PRM("NEWPRT") D NEWST(STPAR,CM0,NOCHK) ; -- NEW PRT - FIRST ADD-S
 ;
 I $L(MSG) Q "0:"_MSG
 ;
 D SETGR3($$UR^W4MENUBT,$G(ITM))
 ;
 I FLRZB D
 .D SBR(STPAR,$G(CM0))
 ;
 D KILLCMNT
 Q 1
 ;
 ;
NEWST(STPAR,CM0,NOCHK) ;
 D GORD
 N CDPAR S CDPAR=$$CD(STPAR)
 D PUT^%W3DEB("W4HZTSF-NEWST","STPAR=STPAR&CM0=CM0&NOCHK=NOCHK&CDPAR=CDPAR&GORD=GORD")
 I CDPAR="" G NEWSTE
 ;
 I $$^W4AIN D
 .D RZB S FLRZB=1; --> ^TMPORD -- ^TMPA
 ;
 S LI=$O(@GORD@(9999),-1)
 D PUT^%W3DEB("W4HZTSF-NEWST","LI=LI")
 ;
 N NEWST S NEWST=STPAR S $P(NEWST,"~",5)=CM0
 ;
 I '$G(NOCHK) S MSG=$$MSG^W4ITEND("CD="_$$CD(STPAR),CM0) I MSG'="" G NEWSTE
 ;
 I $G(LI),$$NOMOD(LI),'$$^W4AIN D PUT^%W1PRM("FIRSTNEW",1)
 I '$G(LI),'$$^W4AIN D PUT^%W1PRM("FIRSTNEW",1)
 ;
 I $P(NEWST,"~")=0,$$^W4AIN D
 .N STPAR0 S STPAR0=$$^W4RSTPAR
 .Q:STPAR0=""
 .S STPAR0=$TR(STPAR0,"~","^")
 .S $P(NEWST,"~",15)=STPAR0
 ;
 I $P(NEWST,"~") D  ; ADDONS
 .N SH0 S SH0=$$SH0^W3HZMST(JB) Q:'SH0
 .N ITM S ITM=$$^W4ITM($G(@GORD@(SH0)),SH0)
 .N CMNT S CMNT=$P($$CMNT(CDPAR),"~",3)
 .S $P(ITM,"^",7)=CMNT
 .D SET^W4ITM("NEWST",ITM)
 ;
 S @GORD@(LI+1)=NEWST
 ;
 I $$PRMANA1^W4HZORD D
 .N DEFMANA S DEFMANA=$$DEFMANA^W4P(CDPAR)
 .I DEFMANA S @GORD@(LI+1,"MANA")=DEFMANA
 ;
 I '$G(FLRZB) D SET^W4ITEND(CDPAR,CM0)
 ;
 I $P(STPAR,"~")=0,'$$^W4AIN D SETHNHSHAA^W3HZMST(LI+1)
 ;
 N CMNT S CMNT=$$CMNT(CDPAR)
 I $L(CMNT) D
 .S LI=LI+2
 .S @GORD@(LI)=CMNT
 ;
NEWSTE D KILLCMNT
 Q
 ;
 ;
KILLCMNT ;
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("CDCMNT")
 Q
 ;
CMNT(CDPAR) ;
 S CMNT=$$SPA^%L1FRM($$GETP^%W1PRM("CMNT"))
 N HRA S HRA=$$SPA^%L1FRM($$HRA^W4P(CDPAR))
 I '$L(CMNT),$L(HRA) S CMNT=HRA
 ;;D KILL^%W1PRM("CMNT")
 I $L(CMNT) Q "1~"_CDPAR_"-C0~"_CMNT
 ;
 N CDCMNT S CDCMNT=$$GETP^%W1PRM("CDCMNT")
 ;;D KILL^%W1PRM("CDCMNT")
 S CDCMNT=$P(CDCMNT,";")
 I '$L(CDCMNT) Q ""
 N CMNT S CMNT=$G(@$$^W4GL("P1CODH")@(CDCMNT))
 Q "1~"_CDPAR_"-C"_CDCMNT_"~"_CMNT
 ;
 ;
CM0(STPAR) ;
 I $$QNR($G(STPAR)) Q $$QNR(STPAR)
 N STP S STP=$$GET^%W1PRM("STPAR")
 Q $P(STP,"~",5)
 ;
MHPAR(STPAR)
 Q $P(STPAR,"~",4)
 ;
THISGR(I) ;
 D GORD
 I $P($G(@GORD@(I)),"~",1)=0 Q 0
 I $$CDA($$CD($G(@GORD@(I)))) Q 0
 Q 1
 ;
EDIT(PRM) ;
 I PRM["LV" Q 1
 Q 0
 ;
 ;
SETGR3(UR,ITM) ; -- CENA ???  AHST ???
 ; -- INP: LI - LAST IND
 ;         CM0 - KOL-VO GL PARITA
 ;------------------------------------
 D PUT^%W3DEB("W4HZTSF-SETGR3","UR=UR&ITM=ITM")
 N I,STT,QN,QN1,K,MSG
 S K=0 S MSG=""
 D TMPTFUR(UR)
 ;
 F I=1:1 Q:'$D(@TMPTFUR@(I))  S STT=$G(^(I)) I $G(^(I,"QN"))!($G(^("QN"))["+") D
 .S QN=$G(^("QN"))
 .I QN["+" D
 ..N DIV S DIV=$L(QN)
 ..N J,K S K=0 F J=1:1:DIV I $E(QN,J)="+" S K=K+1
 ..S QN=K_$S(DIV=4:":",1:"|")_$TR(QN_$J("",DIV-$L(QN))," ","-")
 .S CMNTCDTXT=$G(^("CMNT"))
 .S QN1=QN
 .
 .I CM0>1!(CM0<-1) D
 ..I $$^W4MULTY!'$$^W4EZAT($G(PRT))!$$^W4AIN D
 ...S QN1=CM0_"*"_QN
 .
 .N LV S LV=1
 .N ST S ST=LV_"~"_$P(STT,"~",1,3)_"~"_QN1
 .I $L($G(ITM)) D SET^W4ITM("ST",ITM)
 .D PUT^%W3DEB("W4HZTSF-SETGR3","CM0=CM0 & QN=QN & QN1=QN1")
 .S K=K+1
 .
 .I 'EDIT D  Q  ;-- NOT EDIT
 ..I $P(ST,"~",4)["[" D  ; 1+1
 ...N MHN S MHN=$P($P($P(ST,"~",4),"[",2),"]")
 ...N CMNT11 S CMNT11="[["_$$TV^%W1DICT($$^%W1LNG,"SALE1+1",MHN)_"]]"
 ...I CMNTCDTXT'="" D
 ....S $P(CMNTCDTXT,"~",2)=CMNT11_$P(CMNTCDTXT,"~",2)
 ...I CMNTCDTXT="" D
 ....S CMNTCDTXT=$P(ST,"~",2)_"-C0~"_CMNT11
 ....S @TMPTFUR@(I,"CMNT")=1
 ...S $P(ST,"~",4)=0
 ..
 ..N NEWSH S NEWSH=$O(@GORD@(99999),-1)+1
 ..S @GORD@(NEWSH)=ST
 ..D SETMANA(NEWSH)
 ..D SET^W4ITEND($$CD(ST),$$QNR(ST))
 ..
 ..I $D(@TMPTFUR@(I,"CMNT"))#2 D
 ...I $P(@TMPTFUR@(I,"CMNT"),"~")["-CNO" Q
 ...S @GORD@($O(@GORD@(99999),-1)+1)="1~"_CMNTCDTXT
 ...K @TMPTFUR@(I,"CMNT")
 .
 .;------------------ EDIT ---------------
 .
 .I EDIT=2 D
 ..S QNDIF=$$QNDIF(ST,CMNTCDTXT)
 ..S $P(ST,"~",11)=QNDIF
 ..S STO=$$STO(ST)
 ..I STO'="" S $P(ST,"~",12)=$P(STO,"~",12)
 ..D PUT^%W3DEB("W4HZTSF-SETGR3","STO=STO & ST=ST & QNDIF=QNDIF")
 .
 .D ADD^%L1GSEQ(GORD,LI+K,ST,1)
 .D SETMANA(LI+K)
 .D SET^W4ITEND($$CD(ST),$$QNR(ST))
 .
 .I $D(@TMPTFUR@(I,"CMNT"))#2 D
 ..I $P(@TMPTFUR@(I,"CMNT"),"~")["-CNO" Q
 ..S K=K+1
 ..D ADD^%L1GSEQ(GORD,LI+K,"1~"_CMNTCDTXT)
 ..K @TMPTFUR@(I,"CMNT")
 ;
 ;-------- LEHORID OLD ( OLD AI )
 I $D(@$$^W4MAIN("TMPOAI")) D DELOLD
 Q
 ;
 ;
LV0(SH) ;
 I $$LVI^W4HZORD(SH)=0 Q 1
 Q 0
 ;
NOMOD(SH) Q $$NOMOD^W4HZORD(SH)
EZATI(SH) Q $$EZATI^W4HZORD(SH)
 ;
FINDCMNT(PRM) ;
 D PUT^%W3DEB("W4HZTSF-FINDCMNT","PRM=PRM")
 N RES S RES="NOK"
 N SHID S SHID=$P(PRM,";") I SHID="" Q RES
 N ST S ST=$P(PRM,";",2) I ST="" Q RES
 N CD S CD=$$CD(ST) I CD="" Q RES
 N SH S SH=$$FINDSH^W4HZORD(SHID) I 'SH Q RES
 N SH1 F SH1=SH+1:1 Q:'$D(@$$^W4TMPORD@(SH1))  Q:$$LVST^W3HZMST(JB,SH1)=0  D  Q:RES'="NOK"
 .I $$CDST^W3HZMST(JB,SH1)=CD S RES=$$CMST^W3HZMST(JB,SH1) S:RES="" RES="NOK"
 Q RES
 ;
FNDCMNT3(PRM,UR) ;
 D PUT^%W3DEB("W4HZTSF-FNDCMNT3","PRM=PRM")
 D TMPTFUR(UR)
 N CD S CD=$$CD(PRM)
 N RES S RES="NOK"
 F I=1:1 Q:'$D(@TMPTFUR@(I))  I $P(^(I),"~")=CD,$$HASCMNT(I,UR) S RES=$$COMMENT(I,UR) Q
 I RES="" S RES="NOK"
 Q RES
 ;
QNAT(QN) ;
 N RES,STPAR
 ;
 S STPAR=$$GETP^%W1PRM("STPAR0")
 ;
 I STPAR["<UNDEF" Q "0:LUNCHNOTSAVED"
 I $E(STPAR,1,2)'="0~" Q "0:LUNCHNOTSAVED"
 I $G(QN)<1 Q "QNNOTVALID"
 N MSG S MSG=$$MSG^W4ITEND("CD="_$P(STPAR,"~",2),QN,"NOCHK")
 I MSG'="" Q "0:"_MSG
 S $P(STPAR,"~",5)=QN
 ;
 S RES=1
 ;
 ;
 D  Q RES
 .I $$MXOVR^W4AIMAX(QN) S RES="0:AIMAXOVR;"_QN Q
 .D PROCQN
 .I $$ISSTPAR0^W4RSTPAR(STPAR) D
 ..D PUT^%W1PRM("STPAR0",STPAR)
 ..D PUT^%W1PRM("STPAR00",STPAR)
 ;
 Q 1
 ;
QNDA(PRM)
 D PUT^%W1PRM("W4HZTSF-QNDA","PRM=PRM")
 N QND,QNO,QN0,QNNEW,IND
 S QND=$P(PRM,";") ; -- SK UD-T'
 S IND=$P(PRM,";",2)
 I 'QND!'IND Q 0
 S STPAR=$$GET^%W1PRM("STPAR")
 S QNO=$P(STPAR,"~",5) ; -- SK BYLO
 N QN0 S QN0=""
 I QNO["*" S QN0=+QNO,QNO=$P(QNO,"*",2)
 S QNNEW=QNO-QND
 ;
 I '$$^W4MULTY,'$$QNCHKGR(IND,QNNEW) Q "QNNOTMATCH2GROUPS"
 ;
 D KILL3^W4MENUBT
 I QN0 S QNNEW=QN0_"*"_QNNEW
 D PUT^%W1PRM("W4HZTSF-QNDA","IND=IND& QNO=QNO & QND=QND & QNNEW=QNNEW")
 D GORD
 D SETSH^W4ITEND(IND,QNNEW)
 S $P(@GORD@(IND),"~",5)=QNNEW
 ;;I $$NOMOD(IND) S $P(@GORD@(IND),"~",11)=-QND
 Q "OK"
 ;
 ;
QNCHKGR(IND,QNP) ;
 N A,SH,QN,SQN,SET
 D GORD S SET=""
 N QNM S QNM=$$QNR($G(@GORD@(IND)))
 D PUT^%W3DEB("W4HZTSF-QNCHKGR","IND=IND & QNP=QNP & QNM=QNM")
 I $E(QNP,$L(QNP))="-" S QNP=QNM-QNP
 ;
 F SH=IND+1:1 Q:'$D(@GORD@(SH))  S A=$G(^(SH)) Q:$P(A,"~")=0  D
 .S CD=$$CD(A)
 .I $$CDA(CD) S SET=CD Q
 .S QN=$$QN(A)
 .I QN["*" S QN=$P(QN,"*",2)
 .I $L(SET) S SQN(SET)=$G(SQN(SET))+QN
 ;
 N OK S OK=1
 N N S N="" F  S N=$O(SQN(N)) Q:N=""  D  Q:'OK
 .I SQN(SET)>($$MAXSET^W4HZTSFA(N)*QNP) S OK=0
 ;
 Q OK
 ;
 ;
QNDIF(ST,CMNTCDTXT) ;
 N A,A1,CD,I,QN,QN1,QNO,QNO1,QNDIF
 S QNDIF=""
 S CD=$$CD^W4HZORD(ST)
 S QN=$$QNV^W4HZORD(ST)
 S QN1=QN
 I QN["*" S QN1=QN*$P(QN,"*",2)
 ;
 N OK S OK=0
 F I=1:1 Q:'$D(@$$^W4MAIN("TMPOAI")@(I))  D  Q:OK
 .S A=$G(^(I))
 .S A1=$G(^(I+1))
 .S CDO=$$CD(A) Q:CDO'=CD
 .S CMNTO="" I $$CD(A1)[(CDO_"-C") S CMNTO=$P(A1,"~",3)
 .S QNO=$$QN(A)
 .S QNO1=QNO
 .I QNO["*" S QNO1=QNO*$P(QNO,"*",2)
 .I $J(QNO1,0)=$J(QN1,0) Q
 .I QN'["*",QNO'["*" S QNDIF=QN-QNO G QNDE
 .I QN["*",QNO["*" S QNDIF=$P(QN,"*",2)-$P(QNO,"*",2) G QNDE
 .I (QN["*"&(QNO'["*"))!(QN'["*"&(QNO["*")) D  G QNDE
 ..S QNDIF=QN1-QNO1
QNDE .S OK=1
 .S QNDIF=QNDIF_";"_$$SPA^%L1FRM($P(CMNTCDTXT,"~",2))
 ;
 Q QNDIF
 ;
 ;
STO(ST) ;
 N A,OK,I,STO S OK=0,STO=""
 F I=1:1 Q:'$D(@$$^W4MAIN("TMPOAI")@(I))  D  Q:OK
 .S A=$G(^(I))
 .I $$CD(A)=$$CD(ST) S STO=A,OK=1
 ;
 Q STO
 ;
SHOWCMNT(CD) ;
 I $G(CD)="" Q 0
 ;;I $$^W4SMALL,'$$D^W4EZH(CD) Q 0
 Q 1
 ;
HIDECMNT(CD,QN)
 I '$G(QN) Q 1
 N I,OK S OK=0,A=""
 F I=1:1 Q:'$D(@$$^W4MAIN("TMPOAI")@(I))  D  Q:OK
 .S A=$G(^(I)) I $$CD(A)=CD S OK=1
 ;
 I OK,$P(A,"~",12)["@@",$G(QN)'>$$QNR(A) Q 1
 Q 0
 ;
LV(A) Q $P(A,"~",1)
CD(A) Q $P(A,"~",2)
CDC(A) Q $$CD(A)["-C"
NM(A) Q $P(A,"~",3)
PRC(A) Q $P(A,"~",4)
QN(A) Q $P(A,"~",5)
 ;
ONESET(STAM) ;
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 N CD S CD=$$CD(STPAR)
 I '$$^W4EZAT(CD) Q 0
 N N,I,CDA S N="",I=0,CDA=""
 F  S N=$O(@$$^W4GL("P1EZA")@(CD,N)) Q:N=""  S I=I+1,CDA=N
 I I=1,$L(CDA) Q CDA_";"_CD_";"_$$QN(STPAR)_";"_$$PRC(STPAR)
 Q 0
 ;
ALLSETS(STAM) ;
 N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 N CD S CD=$$CD(STPAR)
 I '$$^W4EZAT(CD) Q 0
 N N,OK S N="",OK=1
 F  S N=$O(@$$^W4GL("P1EZA")@(CD,N)) Q:N=""  D
 .I '$$CHOICESET(N,0) S OK=0
 Q OK
 ;
 ;
SETMANA(SH) ;
 N MANA S MANA=$$^W4DMANA(SH,$$^W4TMPORD)
 I MANA S @$$^W4TMPORD@(SH,"MANA")=MANA
 Q
 ;
SAVEIT(TXT) ;
 D PUT^%W3DEB("W4HZTSF-SAVEIT","TXT=TXT")
 N STPAR
 S STPAR=$$CNWEB^%L1FRM(TXT)
 D PUT^%W1PRM("STPAR",STPAR)
 N UR S UR=$$UR^W4MENUBT
 ;
 I UR<4,$$^W4EZAT($$CD(STPAR)) D
 .N SHED S SHED=$$GET^%W1PRM("SHID0")
 .D PUT^%W3DEB("W4HZTSF-SAVEIT","UR=UR& SHED=SHED")
 .D SAVEIT3(STPAR,SHED)
 Q UR
 ;
 ;
SAVEIT3(STPAR,SHED) ;--- AI -> NEW ^TMPORD
 N TMPORDIT S TMPORDIT=$$^W4MAIN("TMPORDIT")
 D PROCQN
 ;
 I $$ISSTPAR0^W4RSTPAR(STPAR) D
 .D PUT^%W1PRM("STPAR0",STPAR)
 .D PUT^%W1PRM("STPAR00",STPAR)
 ;
 K @TMPORDIT
 M @TMPORDIT=@$$^W4TMPORD
 K @TMPORDIT@("OLD")
 K @$$^W4TMPORD
 ;
 S @$$^W4TMPORD=$G(@TMPORDIT)
 ;
 I $E(SHED,1,2)="LV" D
 .N I,I0 S I0=+$E(SHED,4,6)
 .N K,ST,END,LV,ST1 S K=0,END=0,ST1=""
 .
 .F I=I0+1:1 Q:'$D(@TMPORDIT@(I))  D  Q:END
 ..S ST=$G(@TMPORDIT@(I))
 ..I I=(I0+1),$$CDC(ST) D  Q
 ...D PUT^%W1PRM("COMMENT0",ST)
 ..I $$LV(ST)=0 S END=1 Q
 ..S K=K+1
 ..M @$$^W4TMPORD@(K)=@TMPORDIT@(I)
 ..I $P(ST,"~")=1 D
 ...I $$CDC(ST) Q
 ...S ST1=ST,$P(ST,"~",15)=$TR(STPAR,"~","^")
 ..I $P(ST,"~")=2 D
 ...I $$CDC(ST) Q
 ...S $P(ST,"~",15)=$TR(ST1,"~","^")
 ..S @$$^W4TMPORD@(K)=ST
 ..D ^W4SRVTO(TMPORDIT,I,$$^W4TMPORD,K)
 ..N LVN S LVN=$$LV(ST)-1
 ..I $$CDC(ST),LVN=0 S LVN=1
 ..S $P(@$$^W4TMPORD@(K),"~")=LVN
 Q
 ;
 ;
AIG(STAM) ;
 Q $G(%ARG("AIG"))
 ;
AIP(STAM) ;
 Q $G(%ARG("AIP"))
 ;
NEWSET(STPAR) ;
 N SET S SET=$P(STPAR,";")
 I SET["^" S SET=$P(SET,"^")
 N OLDSET S OLDSET=$P(STPAR,"^",2)
 ;
 N OK S OK=0
 N I F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D  Q:OK
 .I $P($G(^(I)),"~",2)=SET S OK=1
 Q:OK
 D PUT^%W1PRM("NEWSET",1)
 Q
 ;
TMPA(STAM) Q $$^W4MAIN("TMPA")
 ;
INDSET ;
 N N,TMPIND K IND
 S TMPIND=$$^W4MAIN("TMPIND")
 S N="" F  S N=$O(@TMPIND@(N)) Q:N=""  D
 .S SET=$P($G(^(N)),"~") Q:$E(SET)'="A"
 .S IND(SET)=N
 Q
 ;
RZB ;
 N A,TMPA,I,IND
 S TMPA=$$TMPA K @TMPA
 N TMPORD S TMPORD=$$^W4TMPORD
 N TMPIND S TMPIND=$$^W4MAIN("TMPIND")
 ;
 D ^W4INDSET($$CD^W3HZMST($$^W4RSTPAR)) ; ***
 ;
 D INDSET
 ;
 N N S N="" F  S N=$O(@TMPIND@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S @TMPA@(N)="0~"_A
 ;
 N K,CDA,SET S IND="",K=0
 F I=1:1 Q:'$D(@TMPORD@(I))  D
 .S A=$G(^(I))
 .I $$CDA($$CD(A)) S K=0 Q
 .I $$LV(A)=0 D
 ..S SET="A"_$$NSET($$CD(A))
 ..I SET?1"A"1N.N S IND=$G(IND(SET))
 .Q:IND=""
 .S K=K+1
 .M @TMPA@(IND,K)=@TMPORD@(I)
 .S @TMPA@(IND,K,"I")=I
 ;
 N SET S SET=$P($$GET^%W1PRM("STPAR40"),";") Q:SET=""
 S IND=$G(IND(SET)) Q:IND=""
 S GORD=$E(TMPA,1,$L(TMPA)-1)_","""_IND_""")"
 Q
 ;
 ;
SBR(STPAR,QN) ;
 D PUT^%W3DEB("W4HZTSF-SBR","STPAR=STPAR & QN=QN")
 N TMPA S TMPA=$$TMPA I $D(@TMPA)<10 Q
 N TMPORD S TMPORD=$$^W4TMPORD
 N TMPORDS S TMPORDS=$$^W4MAIN("TMPORDS") K @TMPORDS
 M @TMPORDS=@TMPORD
 K @TMPORD
 N N,N1,K,IND
 ;
 D SBRA
TV S K=0
 S N="" F  S N=$O(@TMPA@(N)) Q:N=""  D
 .Q:$D(@TMPA@(N))<10
 .S K=K+1,@TMPORD@(K)=$G(@TMPA@(N))
 .S N1="" F  S N1=$O(@TMPA@(N,N1)) Q:N1=""  D
 ..S K=K+1,@TMPORD@(K)=@TMPA@(N,N1)
 ..N IO S IO=$G(@TMPA@(N,N1,"I"))
 ..;
 ..I $L(IO) D ^W4SRVTO(TMPORDS,IO,TMPORD,K)
 ;
 M @TMPORD@("OLD")=@TMPORDS@("OLD")
 K @TMPA,@TMPORDS
 ;
 I $L($G(STPAR)) D
 .N CD S CD=$$CD(STPAR) Q:'CD
 .D SET^W4ITEND(CD,QN)
 Q
 ;
SBRA ;
 N N,N1,K,K1,IND,TMPA1,A,SET,NSET
 S TMPA1=$$^W4MAIN("TMPA1")
 K @TMPA1 S K=0,K1=0
 ;
 S N="" F  S N=$O(@TMPA@(N)) Q:N=""  D
 .S @TMPA1@(N)=$G(@TMPA@(N))
 .S A=$G(^(N)),SET=$$CD(A),NSET=$E(SET,2,6)
 .S N1="" F  S N1=$O(@TMPA@(N,N1)) Q:N1=""  D
 ..I $$LV($G(^(N1)))=0 D  Q
 ...D SBRAIND($G(^(N1)),NSET)
 ...S K1=1
 ...M @TMPA1@(N,IND,K1)=@TMPA@(N,N1)
 ..Q:'K1
 ..S K1=K1+1
 ..M @TMPA1@(N,IND,K1)=@TMPA@(N,N1)
 ;
 K @TMPA
 S N="" F  S N=$O(@TMPA1@(N)) Q:N=""  D
 .S K=0
 .S @TMPA@(N)=$G(@TMPA1@(N))
 .S IND="" F  S IND=$O(@TMPA1@(N,IND)) Q:IND=""  D
 ..S K1="" F  S K1=$O(@TMPA1@(N,IND,K1)) Q:K1=""  I K1 D
 ...S K=K+1 M @TMPA@(N,K)=@TMPA1@(N,IND,K1)
 ;
 K @TMPA1
 Q
 ;
 ;
SBRAIND(A,NSET) ;
 N LV,CD
 S LV=$$LV(A)
 S CD=$$CD(A)
 I LV'=0 Q
 I 'NSET!'CD D SBRAINDK Q
 S IND=$G(@$$^W4GL("P1SETA")@(NSET,CD))
 I 'IND D SBRAINDK Q
 I $D(@TMPA1@(N,IND)) D  Q
 .N IND1 F IND1=IND:.01 Q:'$D(@TMPA1@(N,IND1))
 .S IND=IND1
 Q
 ;
SBRAINDK ;
 S K=K+1,IND=100+K
 Q
 ;
DELOLD ;
 N A,A1,I,J,OK,CD,CMA,STT
 F I=1:1 Q:'$D(@$$^W4MAIN("TMPOAI")@(I))  D
 .S A=$G(^(I))
 .S A1=$G(^(I+1))
 .S CD=$$CD(A),CMA=$$QNR(A) Q:'CMA
 .S CMNTA=""
 .I $$CD(A1)[($$CD(A)_"-C") S CMNTA=$P(A1,"~",3)
 .S OK=0
 .F J=1:1 Q:'$D(@TMPTFUR@(J))  S STT=$G(^(J)) I $G(^(J,"QN")) D  Q:OK
 ..I $P(STT,"~")=CD S OK=1
 .I 'OK D
 ..S K=K+1
 ..S ST=A
 ..S $P(ST,"~",11)=-CMA_";"_CMNTA
 ..S $P(ST,"~",5)=0
 ..D ADD^%L1GSEQ(GORD,LI+K,ST,1)
 ;
 K @$$^W4MAIN("TMPOAI")
 Q
 ;
QNR(A)
 N QN S QN=$$QN(A)
 I QN["*" S QN=QN*$P(QN,"*",2)
 Q QN
 ;
NSET(CD) ;
 N SETOK S SETOK=""
 N STPAR0 S STPAR0=$$^W4RSTPAR
 N CD0 S CD0=$$CD(STPAR0)
 N REF S REF=$$REF^W4EZAT(CD0)
 N SET,NSET S SET="" F  S SET=$O(@REF@(SET)) Q:SET=""  D  Q:SETOK
 .S NSET=$E(SET,2,6) Q:NSET=""
 .I $D(@$$^W4GL("P1SETA")@(NSET,CD)) S SETOK=NSET
 Q SETOK
 ;
PROCQN ;
 N SHED,SH
 S SHED=$$GETP^%W1PRM("SHID0")
 I SHED="" Q
 S SH=$P(SHED,";")
 I SH'["LV0" Q
 S SH=$E(SH,4,6) I 'SH Q
 N QN,IT
 S QN=$$QNST^W3HZMST(JB,SH)
 S IT=$$ITRAST^W3HZMST(JB,SH)
 I +IT'=+QN S $P(STPAR,"~",5)=IT_"/"_QN
 Q
 ;
MAXADD(MAIN) ;
 I '$G(UR) S UR=$$UR^W4MENUBT
 D TMPTFUR(UR)
 N MAX I $G(MAIN)="" Q 0
 I $G(@TMPTFUR)="1+1" Q 1
 N NM
 S MAX=$G(@$$^W3GL("P1EZI")@(MAIN)) I MAX Q +MAX
 Q +$$G^W4EZKI(MAIN)
 ;
QNADD(STAM) ;
 N (JB)
 N UR S UR=$$UR^W4MENUBT
 D TMPTFUR(UR)
 S QNADD=0
 F I=1:1 Q:'$D(@TMPTFUR@(I))  S STT=$G(^(I)) I $G(^(I,"QN")) D
 .S QN=$G(^("QN"))
 .S QNADD=QNADD+QN
 Q QNADD
 ;
 ;
LASTUR(UR) ;
 N TMPS D TMPS^W4MENUBT
 Q $G(@TMPS@(UR,"LAST"))
 ;
FIRST(STAM) ;
 Q +$G(%ARG("FIRST"))
 ;
TOAI(PRM) ;
 ;N FIRST,AIP
 ;S FIRST=$P(PRM,";")
 ;S AIP=$P(PRM,";",2)
 S OKTOAI=0
 I '$$TOAICD^W4PRM Q 0
 N TOAI S TOAI=$$GETP^%W1PRM("TOAI") I 'TOAI Q 0
 I $$GETP^%W1PRM("WASTOAI") Q 0
 ;
 I $D(@$$^W4MAIN("TMPORDIT"))>9,'$D(@$$^W4TMPORD@("OLD")) D
 .M @$$^W4TMPORD@("OLD")=@$$^W4MAIN("TMPORDIT")
 ;
 N TMPOLD S TMPOLD="^[$$^W3MAIN]TMPORD(JB,""OLD"")"
 N CDFROM S CDFROM=$$CDST^W3HZMST(JB,TOAI,TMPOLD)
 ;
 N NMFROM S NMFROM=$$NMST^W3HZMST(JB,TOAI,TMPOLD) Q:NMFROM="" 0
 N QNFROM S QNFROM=$$QNST^W3HZMST(JB,TOAI,TMPOLD) Q:QNFROM'>0 0
 ;
 N BDAIA S BDAIA=$$^W4BDAIA(CDFROM,QNFROM)
 ;
 I $L($$GETP^%W1PRM("SHID0"))!$$GETP^%W1PRM("QNAT"),$$UR^W4MENUBT<5,BDAIA Q "1;"_$$CLWEB^%L1FRM(NMFROM)
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4HZTSFA
W4HZTSFA(STPAR) ; [ 17.11.18 12:46 ] [ 07.10.18 17:10 ] [ 02.10.18 10:28 ] 
 Q
 ;
INIT(UR) ;
 S NMB=$$GET^%W1PRM("NMB")
 D PUT^%W1PRM("STPAR4",STPAR)
 ;
 N PRA,EQA,CDA S PRA=0,EQA=0,CDA=""
 D KILL^%W3DEB("W4HZTSFA")
 D PUT^%W3DEB("W4HZTSFA","JB=JB & STPAR4=STPAR & SHEDIT4=SHEDIT")
 Q:$G(STPAR)=""
 ;
 D GORD
 ;
 N I,N2,MH
 ;
 N W3HZTSF S W3HZTSF="" D INIT^W3HZTFR
 ;
 S SET=$$GETSET(STPAR) Q:SET=""
 S NSET=$$NSET(SET) Q:NSET=""
 S PRT=$$PRT(STPAR) Q:PRT=""
 S CM0=$$CM0(STPAR) S:'CM0 CM0=1
 ;
 I $$OPTEDIT D
 .N ED S ED=$$SHID4($$SHID_";"_SET) ; -- ID SET ?
 .S SHEDIT=$P(ED,";")
 .S SHID=$P(ED,";",2)
 .D PUT^%W1PRM("SHID4",SHID)
 .D PUT^%W3DEB("W4HZTSFA","SHID4=SHID")
 .
 ;
 I $$GET^%W1PRM("NEWPRT")=0&'$L($$SHID) D  ; -- EDIT MIYADI POSLE VVODA SETA
 .N N,A S N=9999 F  S N=$O(@GORD@(N),-1) Q:N=""  S A=$G(^(N)) Q:$P(A,"~")=0  D  Q:$G(SHEDIT)
 ..I $P(A,"~",2)=SET D
 ...S SHEDIT=N
 ...N I S I=$P(A,"~",10) D PUT^%W1PRM("SHID4","LV1"_I)
 ;
 D TMPS^W4MENU
 S @TMPS@("UR")=4
 ;
 I '$G(%ARG("BACK")),$$FIRST D CRTMP(SET,$$^W3TMPTF,UR)
 ;
 I '$G(%ARG("BACK")),$G(SHEDIT),$$FIRST D SETQN(SHEDIT,UR) ; ^TMPORD --> QN --> ^TMPTF
 Q
 ;
 ;
CRTMP(SET,GL,UR) ;
 K @GL@($$^%W1JB,UR)
 S @GL@($$^%W1JB,UR)=SET_"~"_$$MAXSET(SET)
 D SET(SET,GL,UR)
 D SBORKA(GL,UR)
 Q
 ;
SET(SET,GL,UR) ;
 N NSET S NSET=$$NSET(SET)
 N PART,I1 S PART="",I1=0
 F  S PART=$O(@$$^W4GL("P1SETA")@(NSET,PART)) Q:PART=""  D
 .Q:$$NOHZG(PART)
 .N I1 S I1=$G(@$$^W4GL("P1SETA")@(NSET,PART))
CHKIND .I $D(@GL@($$^%W1JB,UR,I1)) S I1=I1+1 G CHKIND
 .S @GL@($$^%W1JB,UR,I1)=PART_"~"_$$SHEM^W4P(PART)_"~"_$$MHT(PRT,PART)
 Q
 ;
GORD ;
 S GORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
SETQN(SHED,UR)
 D SETQN^W4HZTSF(SHED,UR)
 Q
 ;
NOHZG(N2) ;
 Q $$NOHZG^W4HZTSF(N2)
 ;
 ;
MHT(PRT,SUB)
 Q $$MHT^W4HZTSF(PRT,SUB)
 ;
LI(UR) Q $O(@GL@($$^%W1JB,UR,99999),-1)
 ;
 ;
SBORKA(GL,UR) ;
 N GL3,GL30,I S I=0
 S GL3=GL_"($$^%W1JB,"_+UR_")"
 S GL30=GL_"($$^%W1JB,"_+UR_"0)"
 K @GL30
 N N S N="" F  S N=$O(@GL3@(N)) Q:N=""  D
 .S I=I+1
 .M @GL30@(I)=@GL3@(N)
 K @GL3
 M @GL3=@GL30
 K @GL30
 Q
 ;
 ;
TMPTFUR(UR) D TMPTFUR^W4HZTSF(UR)
 Q
 ;
UR(STAM) ;
 D TMPS^W4MENU
 Q +$G(@TMPS@("UR"))
 ;
GETSET(STPAR) ;
 Q $P(STPAR,";")
 ;
PRT(STPAR) ;
 Q $P(STPAR,";",2)
 ;
CM0(STPAR) ;
 N STP S STP=$$GET^%W1PRM("STPAR")
 I $P(STP,"~",5) Q $P(STP,"~",5)
 ;
 N CM S CM=$P(STPAR,";",3)
 I 'CM S CM=1
 Q CM
 ;
MH(STPAR) ;
 Q $P(STPAR,";",4)
 ;
NSET(SET)
 Q $E($P(SET,";"),2,10)
 ;
SHEMSET(NSET)
 I NSET[";" S NSET=$P(NSET,";")
 I $E(NSET)="A" S NSET=$$NSET(NSET)
 I NSET="" Q ""
 Q $P($G(@$$^W4GL("P1SETA")@(NSET)),"\")
 ;
MAXSET(NSET)
 I NSET[";" S NSET=$P(NSET,";")
 I $E(NSET)="A" S NSET=$$NSET(NSET)
 Q $$QNMAX^W3SET(NSET)
 ;
SHID(STAM) ;
 N A S A=$$GET^%W1PRM("SHID")
 I A'["LV" Q ""
 Q A
 ;
SHID4(PRM) ;
 I $G(PRM)="" Q "NOK"
 N SHID,SET D GORD
 S SHID=$P(PRM,";")
 S SET=$P(PRM,";",2)
 I $G(SHID)'["LV0"!(SET'?1"A"1N.E) Q "NOK"
 N SHEDIT,SHID4
 S SHEDIT=0,SHID4=""
 ;
 N I,OK S OK=0
 F I=1:1 Q:'$D(@GORD@(I))  D  Q:OK
 .N A S A=$G(^(I))
 .I +$P(A,"~",10)=+$E(SHID,4,8) S OK=1
 I 'OK Q "NOK"
 ;
 N I0 S I0=I
 N I1 F I1=I0:1 Q:'$D(@GORD@(I1))  S A=$G(^(I1))  Q:$P(A,"~")=0&(I1>I)  D  Q:SHEDIT
 .I $P(A,"~",2)=SET D
 ..S SHEDIT=I1
 ..S SHID4="LV1"_$P(A,"~",10)
 ;
 I 'SHEDIT S SHID4=SHID
 ;
 Q SHEDIT_";"_SHID4
 ;
 ;
OPTEDIT(STAM) I $$SHID="" Q 0
 Q 1
 ;
QNDEF(CD,PRT,I,UR) ;
 Q $$QNDEF^W4HZTSF(CD,PRT,I,UR)
 ;
MHVIEW(TXT) ;
 Q $$MHVIEW^W4HZTSF(TXT)
 ;
ORDERED(I1,UR)
 I $G(@$$^W3TMPTF@($$^%W1JB,UR,I1,"QN")) Q 1
 Q 0
 ;
NOOD(NSET)
 I $$TOTGR(NSET)'<$$MAXSET(NSET) Q 1
 Q 0
 ;
P1EZKI(COD) ;
 Q $$^W4EZKI(COD)
 ;
 ;
SETVL(PRM,UR) ;
 N CD,VL,I
 D TMPTFUR(UR)
 S CD=$P(PRM,";")
 S I=$$GETI(CD) I 'I Q 0
 S VL=$P(PRM,";",2)
 S @TMPTFUR@(I,"QN")=VL
 Q 1
 ;
GETI(CD,UR) ;
 D TMPTFUR(UR)
 F I=1:1 Q:'$D(@TMPTFUR@(I))  I $P(^(I),"~")=CD Q
 I '$D(@TMPTFUR@(I)) Q 0
 Q I
 ;
CDI(I,UR) ;
 D TMPTFUR(UR)
 Q $P($G(@TMPTFUR@(I)),"~")
 ;
CDA(CD) ;
 I $E(CD)="A" Q 1
 Q 0
 ;
GETBG(I)
 Q 1
 ;
GETEND(I,UR)
 D TMPTFUR(UR)
 Q $O(@TMPTFUR@(99999),-1)
 ;
TOTGR(NSET,UR)
 N BG,END
 S BG=$$GETBG
 S END=$$GETEND
 D TMPTFUR(UR)
 N N,TOT S N=BG-1,TOT=0
 F  S N=$O(@TMPTFUR(N)) Q:N=""  Q:N>END  I N D
 .S TOT=TOT+$G(@TMPTFUR@(N,"QN"))
 Q TOT
 ;
GRA(TXT) I $E(TXT)="A" Q 1
 Q 0
CMT(TXT) I $P(TXT,"~")["-C" Q 1
 Q 0
CMTY(TXT,I,UR) I '$$CMT(TXT) Q 0
 N NN S NN=I-1
 F  S NN=$O(@$$^W3TMPTF@($$^%W1JB,UR,I),-1) Q:NN=""  Q:'$$CMT(@$$^W3TMPTF@($$^%W1JB,UR,I))
 I NN="" Q 0
 I '$D(@$$^W3TMPTF@($$^%W1JB,UR,I,1)) Q 0
 Q 1
 ;
TMPTFI(I,UR) Q "^[$$^W3MAIN]TMPTF($$^%W1JB,UR,"_I_")"
 ;
 ;
SETGR4(PRM); --- AFTER SUBMIT (PRM - SET ID (LV1<NS>) )
 S PRM=$G(PRM)
 D KILL^%W3DEB("W4HZTSFA-SETGR4")
 D PUT^%W3DEB("W4HZTSFA-SETGR4","PRM=PRM")
 I PRM'["LV" S PRM=""
 I PRM["LV" S PRM="LV"_$P(PRM,"LV",2)
 ;
 N STPAR S STPAR=$$GET^%W1PRM("STPAR4")
 I STPAR["A" S STPAR="A"_$P(STPAR,"A",2,20)
 D PUT^%W3DEB("W4HZTSFA-SETGR4","PRM=PRM & STPAR=STPAR")
 ;
 N CM0 S CM0=$$CM0(STPAR)
 N PRT S PRT=$$PRT(STPAR)
 N GORD D GORD
 ;
 I $$^W4AIN D RZB^W4HZTSF
 ;
 N I,LI
 S LI=$O(@GORD@(9999),-1)
 ;
 S EDIT=$$EDIT(PRM)
 ;
 I EDIT D  I LI<1 Q -1  ; -- HIPUS PARIT ROSHI (PRT)
 .S LI=$$FINDSH^W4HZORD(PRM) Q:'LI
 .N I F I=LI:-1:1 Q:$P($G(@GORD@(I)),"~")=0
 .N STP S STP=$G(@GORD@(I))
 .D PUT^%W3DEB("W4HZTSFA-EDIT","STP=STP&I=I")
 .S ITM=$$^W4ITM(STP,I)
 .S PRT=$P(STP,"~",2)
 .S CM0=$P(STP,"~",5)
 .I $$NOMOD^W4HZORD(I) S EDIT=2
 ;
 I 'EDIT,'$$CDA(STPAR) Q -2
 ;
 D TMPTFUR(4)
 ;
 N OK S OK=0
 ;
 D PUT^%W3DEB("W4HZTSFA","EDIT=EDIT")
 ;
 N MSG S PR=""
 I '$$GET^%W1PRM("NEWPRT") S PR=1 ; -- NOMAIN
 S MSG=$$MSG^W4ITEND($S(EDIT:"SH="_LI,1:"CD="_PRT),CM0,PR) I MSG'="" Q "0:"_MSG
 ;
 I EDIT,PRM["LV1" D  ;-- BITUL SET KAYAM
 .D ^W4DELST(GORD,LI) ;D DEL^%L1GSEQ(GORD,LI)
 .N SH,II S SH=LI
 .F II=1:1:1000 Q:'$D(@GORD@(SH))  Q:$P($G(@GORD@(SH)),"~")=0  Q:$E($P($G(@GORD@(SH)),"~",2))="A"  D
 ..D ^W4DELST(GORD,SH) ;D DEL^%L1GSEQ(GORD,SH)
 ;
 I EDIT,PRM["LV0" D  ;; -- NEW GROUP
 .N SH F SH=LI+1:1 Q:'$D(@GORD@(SH))  Q:$P($G(@GORD@(SH)),"~")=0
 .S LI=SH
 ;
 ;
 I 'EDIT D
 .I $$GET^%W1PRM("NEWPRT") D
 ..S:'CM0 CM0=1
 ..D PUT^%W1PRM("NEWPRT",0)
 ..I $$^W4AIN,$E(PRT)="A" Q
 ..N ST0 S ST0="0~"_PRT_"~"_$$SHEM^W4P(PRT)_"~"_$$MH(STPAR)_"~"_CM0
 ..S @GORD@(LI+1)=ST0
 ..S ITM=$$^W4ITM(ST0)
 ..N CMNT S CMNT=$$CMNT^W4HZTSF(PRT)
 ..D PUT^%W3DEB("W4HZTSFA-SETGR4","CMNT=CMNT")
 ..D SETMAIN^W4ITM("ITM","CMNT",$P(CMNT,"~",3))
 ..D SET^W4ITEND(PRT,CM0)
 ..S LI=LI+1
 ..I $L(CMNT) D
 ...S @GORD@(LI)=CMNT
 ...S LI=LI+1
 .
 .Q:$E(STPAR)'="A"
 .Q:$$^W4AIN
 .S @GORD@(LI+1)="1~"_$$GETSET(STPAR)_"~"_$$SHEMSET(STPAR)
 ;
 ;
 N I,STT,QN,K S K=0
 ;
 I EDIT D  ; -- NEW SET
 .Q:$E(STPAR)'="A"
 .N ST S ST="1~"_$$GETSET(STPAR)_"~"_$$SHEMSET(STPAR)
 .D ADD^%L1GSEQ(GORD,LI,ST,1) S K=K+1
 ;
 D SETGR3^W4HZTSF(UR,ITM)
 I $$^W4AIN D SBR^W4HZTSF(STPAR,$G(CM0))
 ;
 Q 1
 ;
 ;
EDIT(PRM) ;
 I PRM["LV1" Q 1
 I PRM["LV0" Q 1
 Q 0
 ;
HASCMNT(I) ;
 Q $$HASCMNT^W4HZTSD(I)
 Q 0
 ;
COMMENT(I,UR) ;
 Q $$COMMENT^W4HZTSF(I,UR)
 ;
KOT(SET,CM0) ;
 N TXTMAX S TXTMAX=""
 N MAXSET,MAXSET0,MAX S MAXSET=$$MAXSET(SET)
 S MAXSET0=MAXSET
 I '$$^W4MULTY,$G(CM0) S MAXSET=MAXSET*CM0
 I MAXSET>0,+MAXSET=MAXSET0 S TXTMAX=$$^W3MSG("QNMAX~"_+MAXSET)
 I MAXSET0="1!",+MAXSET=1 S TXTMAX=$$^%W1DICT("QNEXACTLY1")
 I MAXSET>1,MAXSET0["!" S TXTMAX=$$^W3MSG("ITEMSEXACTLY~"_+MAXSET)
 I MAXSET>1,MAXSET0["^" S TXTMAX=$$^W3MSG("UNTILITEMS~"_+MAXSET)
 ;
 S KOT=$$H2U^%L1FRM($$SHEMSET($$NSET(SET)))
 S KOT=KOT_" <span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"
 S KOT=KOT_TXTMAX_"</span>"
 Q
 ;
FIRST(STAM) ;
 Q +$G(%ARG("FIRST"))
 
 
 
 
 
 

W4IBNPRM
W4IBNPRM ; [ 05.07.20 17:27 ] [ 02.07.20 13:22 ] [ 28.06.20 09:39 ] 
GET ;
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 I '$G(STORYID) S %SC("ER")=1
 S @$$^W4PRM@("IBON")=PRM
 S @$$^W4PRM@("IBON","MAIN")=MAIN
 S @$$^W4PRM@("IBON","STORE")=STORE
 S @$$^W4PRM@("IBON","DIR")=DIR
 S @$$^W4PRM@("IBON","URL")=URL
 Q 1
 ;
END Q
 
 
 
 
 
 
 
 
 
 
 
 

W4IBON
W4IBON(PRM) ; [ 01.07.20 07:44 ] [ 01.04.20 13:54 ] [ 30.03.20 17:07 ] 
 Q $$^W4GL("W4IBON")
 
 
 
 

W4IDKCB
W4IDKCB(HZM) ; [ 22.11.13 08:51 ] [ 12.04.09 19:52 ] [ 24.01.09 12:07 ] [
 D IDKSHUL(HZM)
 D IDKSHULA(HZM)
 Q
IDKSHUL(HZM) ;
 N MZM,CH,CA,TL
 I $$^W4CLOSE(HZM) Q
 S MZM=$$SMZ^W4HZMST(HZM)-$$ODEF^W4HZMST(HZM)
 S CH=$$SCH^W4HZMST(HZM)
 S CA=$$SCA^W4HZMST(HZM)
 S TL=$$TL^W4HZMST(HZM) ; --------- STL - ??????????
 ;
 D PUT^W4HZMST(HZM,"MZM",MZM)
 D PUT^W4HZMST(HZM,"CH",CH)
 D PUT^W4HZMST(HZM,"CA",CA)
 ;
 N SUM S SUM=MZM+CH+CA+TL
 D PUT^W4HZMST(HZM,"SHUL",SUM)
 Q
 ;
IDKSHULA(HZM) ;
 I $$^W4CLOSE(HZM) Q
 N ASR
 S ASR=$$SAS^W4HZMST(HZM)
 D PUT^W4HZMST(HZM,"ASR,SHULA",ASR)
 Q

W4IDKMLP
W4IDKMLP(JB) ; [ 20.02.26 14:03 ] [ 10.02.26 14:34 ] [ 05.02.26 13:50 ] 
 N (JB,%ARG)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$NEWMLY^W4PRM,$G(@$$^W4GL("W3PRM")@("NOVWOLD")) D CRTMPPAR^W4MAIN(JB)
 K @$$^W4MAIN("TMPPARI")
 S GL=$$^W4GL("MLPAR")
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S NAME=$G(^(N)) Q:NAME=""
 .D SET(N,NAME,$G(%ARG("CLOSED")))
 Q
 ;
SET(N,NAME,CLS)
 N CLOSED S CLOSED=$$MLMAZAV^W4MLPRT(N) I CLOSED,'$G(CLS) Q
 S NAME=$TR(NAME,""".&-","")
 I NAME?1N.N Q
 N I F I=1:1:$L(NAME," ") D
 .S WORD=$P(NAME," ",I)
 .S WORD=$TR(WORD,"""()#+.-&","")
 .I WORD?.P Q
 .N NMI S NMI=$E($$INVH^%L1FRM(WORD),1,10)
 .S NMI=NMI_$J("",10-$L(NMI))
 .N JJ F JJ=1:1 Q:'$D(@$$^W4MAIN("TMPPARI")@(NMI_JJ))
 .S @$$^W4MAIN("TMPPARI")@(NMI_JJ)=N
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4IFDEL
W4IFDEL(HZM) ; [ 13.11.09 10:56 ] [ 28.01.09 11:54 ] [
 I $G(@$$^W4GL("P1DEL")@(HZM)) Q ^(HZM)
 Q 0

W4IFITRA
W4IFITRA(HZM) ; [ 06.03.25 07:45 ] [ 
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 I ITRA<-.1&(TSHL<0) Q 1
 I ITRA>.1&(TSHL'<0) Q 1
 Q 0
 ;
IFITRA(ITRA) I ITRA<-.1!(ITRA>.1) Q 1
 Q 0

W4IFMLY
W4IFMLY(STAM) ; [ 27.02.12 09:35 ] [
 I $G(@$$^W4GL("PLUK"))["MLY" Q 1
 Q 0

W4IGUL
W4IGUL ;         [ 24.06.21 10:09 ] [ 08.02.21 06:51 ] [ 15.02.17 14:07 ] 
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM,$$HZM^W4MSL(HZM) N HZMLAK S HZMLAK=$$HZMLAK^W4HZMST(HZM) I HZMLAK?1"W"1N.E S HNH2=0 Q
 N TSHLO
 S TSHLO=TSHL
 ;
 S TSHL=$$IGUL(TSHL)
 S HNH2=TSHLO-TSHL
 Q
 ;
 ;
IGUL(TSHL)
 I $G(@$$^W4PRM@("IGUL"))=1 D
 .I $$DOWN S TSHL=TSHL\1 Q
 .I TSHL>-1&(TSHL<1) S TSHL=0 Q
 .S TSHL=$S($E($P(TSHL,".",2))>4:TSHL\1+$S(TSHL>0:1,1:-1),1:TSHL\1)
 ;
 I $G(@$$^W4PRM@("IGUL"))=2 D
 .I $$DOWN D  Q
 ..S TSHL=$J(TSHL,2,2)
 ..S TSHL=$P(TSHL,".")_"."_$E($P(TSHL,".",2),1)
 .S TSHL=$J(TSHL,1,1)
 ;
 I $G(@$$^W4PRM@("IGUL"))=3 S TSHL=$$IG5(TSHL)
 Q TSHL
 ;
 ;
IG5(TSHL) ;
 I $$DOWN D  Q TSHL
 .S TSHL=$J(TSHL,3,3)
 .N DR,DR1 S DR=$E($P(TSHL,".",2),2,3)
 .S DR1=$E($P(TSHL,".",2))
 .S DR=$S(DR>50:5,1:"0")
 .S TSHL=$P(TSHL,".")_"."_DR1_DR
 ;
 N R S R=$J(TSHL,1,1)-TSHL
 I 'R!(+R=.05)!(+R=-.05) Q TSHL
 I R>0.02 S TSHL=$J(TSHL,1,1)-.05
 I R'>0.02,R>0 S TSHL=$J(TSHL,1,1)
 I R'<-0.02,R<0 S TSHL=$J(TSHL,1,1)
 I R<-0.02,R<0 S TSHL=$J(TSHL,1,1)+.05
 Q TSHL
 ;
IG50(TSHL) ;
 I 'TSHL Q TSHL
 I $$DOWN,TSHL>0 D  Q TSHL
 .S TSHL=$J(TSHL,2,2)
 .N DR S DR=$P(TSHL,".",2)
 .S DR=$S(DR>50:50,1:"00")
 .S TSHL=$P(TSHL,".")_"."_DR
 ;
 I TSHL>0 Q TSHL\.5*.5+$S(TSHL#.5>.25:.5,1:0)
 Q -$$IG50(-TSHL)
 ;
DOWN(STAM) ;
 Q $$RNDOWN^W4PRM
 ;
 ;
SUM(SUM,IGUL) ;
 I $G(IGUL)=1 D
 .S SUM=$S($E($P(SUM,".",2))>4:SUM\1+$S(SUM>0:1,1:-1),1:SUM\1)
 ;
 I $G(IGUL)=2 D
 .S SUM=$J(SUM,1,1)
 ;
 I $G(IGUL)=3 S SUM=$$IG5(SUM)
 I $G(IGUL)=4 S SUM=$$IG50(SUM)
 Q SUM
 
 
 
 
 
 
 

W4IHBTM
W4IHBTM ; [ 20.12.23 21:11 ] [ 05.12.22 18:52 ] [ 10.01.19 19:33 ] 
 N (JB,%ARG,%REM,W4LHBNEW)
 N $ZT S $ZT="G SVER^%L1X"
 N SPK S SPK=$G(%ARG("SPK"))
 S DAT=$G(%ARG("DAT"))
 ;
 I $G(%ARG("NOM")) D KOTHSB($G(%ARG("NOM")),SPK,DAT)
 ;
 D PUT^%W3DEB("W4IHBTM","%ARG=[%ARG")
 ;
 D DEFTEMPS
 K @TEMPS
 S IT=0
 ;
 D HSBS(SPK)
 ;
BDK I '$D(@TEMPS) D  Q
 .W "<script>",!
 .W "MsgA('NODATA!');",!
 .W " Back()",!
 .W "</script>",!
 ;
 D DAF
 ;
 W "<br/>",!
 W "<div id=""divbut"" align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr align=""center"" >"
   I '$$VIEWTM D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_SPK_"')","color:green",",,,100")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
KOTHSB(NOM,SPK,DAT) ;
 D ^W4KOTHSB(NOM,SPK,DAT,"IHB")
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
 ;
DAF ;
 ;-- INPUT IT, SHUM
 ;         ^TEMPS
 ;  1       2      3      4      5
 ; ORDER ; CUST ; NAME ; DATE ; SUM ;
 D DEFTEMPS
 ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT($S($$IHBZTM:"DLVBACKDOCLIST",1:"DLVDOCLIST"))_"</span>",!
 ;
 I '$$VIEWTM D
 .W "<table dir="""_$$^%W1DIR_""" width=""70%"" border=""0"" cellspacing=""0"">",!
 .W " <tr><td colspan=""6"" "_$$INV^%W1ALIGN_" >"
 . W $$^%W1DICT("SIGNALL")_"&nbsp;&nbsp;"
  .W "<input type=""checkbox"" id=""SignAll"" "_$S($G(%ARG("FIRST")):"checked=""checked"" ",1:"")_""" onClick=""SignOrDeleteAll(this)"">",!
 .W " </td></tr>",!
 .W "</table>",!
 ;
 W "<table id=""TblOrd"" dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">",!
 W "<tr>"
  W "<th width=""12%"">"_$$^%W1DICT($S($$IHBZTM:"DLVBACKDOC",1:"DELIVERYDOC"))_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("SPKNUMBER")_"</th>"
  W "<th width=""28%"">"_$$^%W1DICT("SPKNAME")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("DATE")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("BEFORETAX")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("AFTERTAX")_"</th>"
  I '$$VIEWTM W "<th width=""12%"">"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 N IT,SLMAM,SAMAM S IT=0,SAMAM=0,SLMAM=0
 F I=1:1 Q:'$D(@TEMPS@(I))  D
 .N A S A=$G(^(I))
 .N ND S ND=$P(A,"\")
 .W "<tr>"
 .W " <td " D STYLE W ">"_$$RKV(ND)_"</td>"
 .W " <td " D STYLE W ">"_$$RKV($P(A,"\",2))_"</td>" ; -- SPK
 .W " <td " D STYLE W ">"_$$RKV($P(A,"\",3),"H")_"</td>" ; -- SPK NAME
 .W " <td align=""center"" " D STYLE W ">"_$$RKV($P(A,"\",4))_"</td>" ;-- DATE
 .S LMAM=$P(A,"\",5)
 .S AMAM=$P(A,"\",6)
 .W " <td dir=""LTR"" align=""right"" " D STYLE W ">"_$$RKV(LMAM,"N")_"</td>" ; SUM
 .W " <td dir=""LTR"" align=""right"" " D STYLE W ">"_$$RKV(AMAM,"N")_"</td>" ; SUM
 .I $D(@$$^W4MAIN("VRM")@(ND))!$$VIEWTM D
 ..S SLMAM=SLMAM+LMAM
 ..S SAMAM=SAMAM+AMAM
 ..S IT=IT+1
 .I '$$VIEWTM D
 ..W " <td align=""center""><input type=""checkbox"" id=""chk"_I_""" "
 ..W $S($G(%ARG("FIRST"))!$D(@$$^W4MAIN("VRM")@(ND)):"checked=""checked"" ",1:"")_" "
 ..W " onClick=""Sign(this,'"_I_"')"" />"
 ..W " </td>"
 .W "</tr>",!
 ;
 W "<tr style=""font-weight:bold"">",!
  W "<td colspan=""2"" id=""it"">"_$$^%W1DICT($S($$IHBZTM:"TOTALDLVBACKDOCS",1:"TOTALDLVDOCS"))_" : <span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"_IT_"</span></td>",!
  W "<td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>",!
  W "<td id=""lmam"" dir=""LTR"" style=""color:black;font-size:"_$$^W3FSZ(12)_";text-align:right"">"_$$RKV(SLMAM,"N")_"</td>",!
  W "<td id=""amam"" dir=""LTR"" style=""color:black;font-size:"_$$^W3FSZ(12)_";text-align:right"">"_$$RKV(SAMAM,"N")_"</td>"
  I '$$VIEWTM W "<td>&nbsp;</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
HSBS(SPK) ;--- POISK HAZM I FORM-E HESHB
 I $G(SPK)="" Q
 N DATF,DF,N,GL,IT,DT
 S DATF=DAT,DF=$$^%L1DC(DATF,3)
 S SLMAM=0,SAMAM=0
 D DEFTEMPS
 ;
 S GLFREE=$$^W4GL("W4FREEDOC")
 S IT=0
 N VRMTM S VRMTM=$$^W4MAIN("VRMTM") K @VRMTM
 ;
 I '$$VIEWTM D
 .N VDTM F VDTM="ITM","ITZ" D
 ..I $$IHBZTM,VDTM="ITM" Q
 ..S N="" F  S N=$O(@GLFREE@(SPK,VDTM,N)) Q:N=""  D
 ...N A S A=$G(^(N))
 ...N DTM S DTM=$$^%L1DC($P($G(@$$^W4GL("W4INP")@(SPK,VDTM,N)),"\",4),3)
 ...;;W "N="_N_" DTM="_DTM_" DF="_DF,!
 ...I N>0,DTM>DF Q
 ...I $$IHB^W4SPDOC(SPK,VDTM,N) D  Q
 ....K @GLFREE@(SPK,VDTM,N)
 ...S DT=$P(A,"\")
 ...S @VRMTM@(SPK,DT,VDTM,N)=""
 ;
 I $$VIEWTM D
 .S N="" F  S N=$O(@$$^W4GL("W4INP")@(SPK,"IHB",+$G(%ARG("NUMBER")),"ITM",N)) Q:N=""  D
 ..N VD S VD="ITM"
 ..N TM S TM=+N I TM<0 S TM=-TM,VD="ITZ"
 ..N A S A=$G(@$$^W4GL("W4INP")@(SPK,VD,TM)) Q:A=""
 ..S DT=$$^%L1DC($P(A,"\",4),3) Q:'DT
 ..S @VRMTM@(SPK,DT,VD,N)=""
 ;
 S DT="" F  S DT=$O(@VRMTM@(SPK,DT)) Q:DT=""  D
 .F VDTM="ITM","ITZ" D
 ..S N="" F  S N=$O(@VRMTM@(SPK,DT,VDTM,N)) Q:N=""  D
 ...D HSBITM(SPK,VDTM,N) ;
 ;
 K @VRMTM
 Q
 ;
 ;
HSBITM(SPK,VD,ND) ;
 ;INP: SPK,ITM, SPKO,FLST
 ;----------------------------------
 N (JB,%ARG,%REM,SPK,SLMAM,SAMAM,IT,VD,ND)
 ;
 ;;S GLINP=$$^W4GL("W4INP")_"("""_SPK_""","""_VD_""","""_ND_""")"
 D ^W4HSBGET(ND,VD,SPK) Q:$D(W4HSB)<10
 D DEFTEMPS
 ;
 S IT=IT+1
 S SUML=$G(W4HSB("LMAM"))
 S SUMA=$G(W4HSB("TOT"))
 I VD="ITZ",'$$IHBZTM S ND=-ND,SUML=-SUML,SUMA=-SUMA
 S @TEMPS@(IT)=ND_"\"_SPK_"\"_W4HSB("SPKNAME")_"\"_W4HSB("TODATE")_"\"_$J(SUML,2,2)_"\"_$J(SUMA,2,2)
 S SLMAM=SLMAM+SUML
 S SAMAM=SAMAM+SUMA
 Q
 ;
 ;
DEFTEMPS ;
 S TEMPS=$$^W4MAIN("TEMPS")
 Q
 ;
CRVRM(PRM) ;
 N TM,FLAG
 D PUT^%W3DEB("W4IHBTM-CRVRM","PRM=PRM")
 S TM=$P(PRM,";")
 S FLAG=$P(PRM,";",2)
 I FLAG S @$$^W4MAIN("VRM")@(TM)=""
 I 'FLAG K @$$^W4MAIN("VRM")@(TM)
 Q
 ;
CRALL(FUNC) ;
 N A,I,TEMPS,ND
 D DEFTEMPS
 ;
 K @$$^W4MAIN("VRM")
 ;
 I 'FUNC G CRALLE
 F I=1:1 Q:'$D(@TEMPS@(I))  S A=$G(^(I)) D
 .S ND=$P(A,"\")
 .S @$$^W4MAIN("VRM")@(ND)=""
CRALLE Q
 ;
 ;
STYLE ;
 N NOMD S NOMD=ND_"ITM"
 I ND<0,'$$IHBZTM S NOMD=-ND_"ITZ"
 I $$IHBZTM S NOMD=ND_"ITZ"
 W " style=""cursor:pointer"
 I $$IHBZTM W ";color:red"
 W """ onClick=""ShowSupplInvoice('"_SPK_"','"_NOMD_"','ifr','','1')"" "
 Q
 ;
FRMTMP(PRM) ;
 N (JB,%ARG,%REM,PRM)
 S (SHNH,SDMSH,SSUM,SMAM)=0
 S SPK=$P(PRM,";")
 S DAT=$P(PRM,";",2)
 S IHBZTM=($P(PRM,";",3)="IHBZTM")
 I '$G(SPK) Q "0;NOTSUPPLIER"
 N VRM,GLTMP S VRM=$$^W4MAIN("VRM")
 D GLTMP^W4DOC K @GLTMP
 N VRM1 S VRM1=$$^W4MAIN("VRM1") K @VRM1
 N VD
 ;
 N N S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S HD=$G(@$$INP(SPK,N,IHBZTM))
 .S HNAH=$P(HD,"\",12)
 .S SUM=$P(HD,"\",6)
 .S MAM=$P(HD,"\",7)
 .S HNH=$P(HD,"\",13)
 .S DMSH=$P(HD,"\",14)
 .I N<0,'IHBZTM S SUM=-SUM,MAM=-MAM,HNH=-HNH,DMSH=-DMSH
 .S DISCA=$J((SUM+HNH-DMSH)*100/(100-HNAH),2,2)-(SUM+HNH-DMSH)
 .S SHNH=SHNH+HNH+DISCA
 .S SDMSH=SDMSH+DMSH
 .S SSUM=SSUM+SUM
 .S SMAM=SMAM+MAM
 .S DLM="^"
 .N N1 S N1="" F  S N1=$O(@$$INP(SPK,N,IHBZTM)@(N1)) Q:N1=""  I N1 D
 ..S A=$G(^(N1))
 ..S CD=$P(A,"\")
 ..S MH=$J($P(A,"\",3),2,2)
 ..S QN=+$P(A,"\",4)
 ..I N<0 S QN=-QN
 ..S EM=$P(A,"\",7)
 ..S SER=$P(A,"\",8)
 ..S DISC=+$P(A,"\",5)
 ..S @VRM1@(CD_DLM_EM_DLM_MH_DLM_DISC_DLM_SER)=$G(@VRM1@(CD_DLM_EM_DLM_MH_DLM_DISC_DLM_SER))+QN
 .
 .S @GLTMP@("ITM",N)=""
 ;
 ;
 S I=0,AHMAM=$$MAM^W4PRM
 S DLM="^"
 S N="" F  S N=$O(@VRM1@(N)) Q:N=""  D
 .S QN=$G(^(N)) Q:'QN
 .S CD=$P(N,DLM),EM=$P(N,DLM,2),MH=$P(N,DLM,3),DISC=$P(N,DLM,4)
 .S SER=$P(N,DLM,5)
 .S I=I+1,@GLTMP@(I)=CD_"\"_$$MLNAME^W4MLPRT(CD)_"\"_MH_"\"_QN_"\"_DISC
 .S $P(^(I),"\",7)=EM
 .S $P(^(I),"\",8)=SER
 ;
 S $P(@GLTMP,"\")=SPK
 S $P(@GLTMP,"\",2)=$$NAME^W4SPK(SPK)
 S $P(@GLTMP,"\",3)=$$KTVM^W4SPK(SPK)
 S $P(@GLTMP,"\",4)=$$^%L1DC(DAT,".")
 S $P(@GLTMP,"\",5)=$$MAM^W4PRM
 S $P(@GLTMP,"\",6)=SSUM
 S $P(@GLTMP,"\",7)=SMAM
 S $P(@GLTMP,"\",13)=SHNH
 S $P(@GLTMP,"\",14)=SDMSH
 ;
 K @VRM1
 Q 1
 ;
 ;
INP(SPK,ND,IHBZTM) ;
 N NOMD S NOMD=ND I ND<0 S NOMD=-ND
 N INP S INP=$$^W4GL("W4INP")_"("""_SPK_""",""ITM"","""_NOMD_""")"
 I ND<0 S INP=$$^W4GL("W4INP")_"("""_SPK_""",""ITZ"","""_NOMD_""")"
 I $G(IHBZTM) S INP=$$^W4GL("W4INP")_"("""_SPK_""",""ITZ"","""_NOMD_""")"
 Q INP
 ;
IHBZTM(STAM) ;
 I $G(%ARG("VD"))="IHBZTM" Q 1
 Q 0
 ;
SHOWNAME(CD) ;
 I $G(CD)="" Q "&nbsp;"
 Q $$H2U^%L1FRM($$MLNAME^W4MLPRT(CD))
 ;
VIEWTM(STAM) ; 
 Q +$G(%ARG("VIEWTM")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4IHTPPS
W4IHTPPS(STAM) ; [ 13.09.16 12:09 ] [ 
 I $$^W4LKH Q " -k"
 Q ""

W4IN
W4IN ; INIT      [ 01.03.14 18:41 ] [ 21.03.09 05:19 ] [ 11.11.08 04:02 ]
 N GLPRM,GLPL
 D MRK
 S P1DZ=$$^W4DZ
 D GLPRM,GLPL
 S DSH=$G(@GLPRM@("DSH"))
 S RMAM=$G(@GLPRM@("MAM"),15.5)
 S HZSCR=$G(@GLPRM@("HZM",+$G(JB)))
 I HZSCR="" S HZSCR=$G(@GLPRM@("HZM"))
 I HZSCR="" S HZSCR="P1HZMS" ;$S(%ENGLISH:"P1HZME",1:"P1HZMS")
 I $G(@GLPRM@("MTAW")),HZSCR="P1HZMS" S HZSCR="P1HZTA"
 I $G(@GLPRM@("SD")),HZSCR="P1HZMS" S HZSCR="P1HZMS1"
 S MISHL=$G(@GLPRM@("MSL"))
 S PATHM=$G(@GLPL@("PATHM"))
 S FLAGSHVA=+$G(@GLPRM@("SHVA"))
 Q
MRK ;
 S MRK=$G(@$$^W4GL("MERKAZ")) I 'MRK S MRK=0
 Q
GLPRM ;
 S GLPRM=$$^W4GL("P1PRM")
 Q
GLPL ;
 S GLPL=$$^W4GL("PL")
 Q
P1DZ(STAM) ;
 Q $$^W4DZ

W4INDSET
W4INDSET(PAR) ; [ 13.07.23 09:32 ] [ 19.10.15 14:10 ] [ 03.10.14 16:07 ] [
 I '$$^W4EZAT(PAR) Q
 N TMPIND S TMPIND=$$^W4MAIN("TMPIND")
 K @TMPIND
 N REF S REF=$$REF^W4EZAT(PAR)
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N N,NP,NSET
 N K S K=0
 ;
 S N="" F  S N=$O(@REF@(N)) Q:N=""  D
 .S K=K+1
 .S NP=$G(^(N))
 .I $E(N)'="A" Q
 .S NSET=$E(N,2,10)
 .S NMSET=$P($G(@$$^W4GLSET(HZM)@(NSET)),"\")
 .S @TMPIND@(NP)=N_"~"_NMSET_"~"
 Q
 

W4INIT
W4INIT ;                                            [ 26.03.24 12:06 ] [ 08.10.14 09:07 ] [ 18.06.12 20:14 ] 
 N (JB,%REM,%ARG)
 D ^W4IN
 D KILL
 I $G(@$$^W4PRM@("SHVA"))<0 S @$$^W4PRM@("SHVA")=-@$$^W4PRM@("SHVA")
 S @$$^W4GL("P1LOAD")@($H)=""
 ;
 I '$D(@$$^W4GL("PLUTOTI")) D
 .S DAT="" F  S DAT=$O(@$$^W4GL("PLUTOT")@(DAT)) Q:DAT=""  D
 ..S MRK="" F  S MRK=$O(@$$^W4GL("PLUTOT")@(DAT,MRK)) Q:MRK=""  D
 ...S PAR="" F  S PAR=$O(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) Q:PAR=""  D
 ....I '$D(@$$^W4GL("PLUTOTI")@(PAR,MRK,DAT)) S ^(DAT)=""
 ;
 S FIRST=1
 ;
 F I=-99:1:-1 K @$$^W4PC@(I)
 S N="" F  S N=$O(@$$^W4GL("P1JRN")@(N)) Q:N=""  I N<($H-30) K @$$^W4GL("P1JRN")@(N)
 ;
 I $G(@$$^W4GL("VIZA")@("DT"))'=+$H S N="" F  S N=$O(@$$^W4GL("VIZA")@(N)) Q:N=""  D
 .I $$^%L1DC($P(^(N),"?"),4)<($H-100) K @$$^W4GL("VIZA")@(N)
 S @$$^W4GL("VIZA")@("DT")=+$H
 ;
 I $D(@$$^W4PRM@("MRKZ")) D ^W4CRMRK
 ;
 ;--------------------
 S N=$H-100 F  S N=$O(@$$^W4GL("P1H")@(N)) Q:N=""  D
 .S VRD=$H-N
 .I VRD>40 K @$$^W4GL("OKVIZ")@(N)
 .I VRD>20 K @$$^W4GL("VIZER")@(N),@$$^W4GL("VIZLAST")@(N)
 .I VRD>40 K @$$^W4GL("TBAKDAT")@(N) ; ---------
 .Q
 ;
 I $D(@$$^W4GL("TRAN"))<10 S @$$^W4GL("UPD")=1
 S PATH=""
 S PATHM=$G(@$$^W4PL@("PATHM"))
 ;
O3 ;
 I $G(@$$^W4PRM@("JOMHL")) D ^W4JOMHL
 S DB=$$^%L1FLP($$DBNAME_"b.dat"),DTGIB=$P(DB,"^",3)
 I '$P(DB,"^",2) S DTGIB=0 ; LOF=0
 I DTGIB,$H-DTGIB<2 D
 .;-a rvea oexg` ieaib
 I $H-DTGIB>2 D
 .I DTGIB D
 ..;! eiykr ieaib rval `p . "_$$^%L1DC(DTGIB,1)_"-a rvea oexg` ieaib ++16,65,HH,I,R" X %XMSG
 ..;;I 'DTGIB S %SAY="   ! eiykr ieaib rval `p . `vnp `l ieaib uaew ++16,65,HH,I,R" X %XMSG
 .I '$D(@$$^W4GL("TRAN")),'$D(@$$^W4GL("P1BACKUP")@(+$H)),$P["/tty1" D ^W4BCKUP(JB)
O31 ;
 S REZ=0,H1=+$H
 ;
 I $G(@$$^W4PRM@("SHVA"))=2 D
 .K @$$^W4GL("HOSER")@(H1)
 .S PATH=$G(@$$^W4GL("PATH"))
 .D ^A2BLACK
 .N GL S GL=$$^W4GL("A2BLACK")
 .I $D(@$$^W4GL("HOSER")@(H1))!(REZ<0)!($G(@GL)'="OK") D  Q
 ..;;S %SAY="   ! DOS-n `ay mixhnxt zxarda d`iby ++10,57,HH,I" X %XMSG
 ..;;S %SAY="             `ayl xeciy aey rval `p ++11,57,HH,I" X %XMSG
 ..;;D TV^%L1RBUA(10,20,13,60)
 ..;;S %GET=" <ENTER> " D N^%L1GET Q
 .I REZ'<0 D
 ..S IN=-1 F  S IN=$N(@$$^W4GL("PLUK")@(IN)) Q:IN=-1  D
 ...S KUP=^(IN) S FITR=PATHM_"#TRAN."_$TR($J(KUP,3)," ",0)
 ...I $$^%L1ZOS(10,FITR)>0 O FITR C FITR:DELETE
 .S KUP=-1 F  S KUP=$N(@$$^W4GL("TRAN")@(KUP)) Q:KUP=-1  D
 ..S FITR=PATHM_"#TRAN."_$TR($J(KUP,3)," ",0) D OPEN Q:REZ<0
 ..S NN=-1 F  S NN=$N(@$$^W4GL("TRAN")@(KUP,NN)) Q:NN=-1  D  Q:$ZC>0
 ..U FITR S STR=$P(@$$^W4GL("TRAN")@(KUP,NN),"~",1) W STR_$C(13)
 .C FITR
 ;
 I '$D(@$$^W4GL("P1DZ")),$D(@$$^W4GL("TOTAL")) D
 .N SAH,LD,NP,SZ
 .S SAH=$TR($E(@$$^W4GL("TOTAL"),89,100)," ","")-$TR($E(@$$^W4GL("TOTAL"),107,118)," ","")*.01
 .S LD=$O(@$$^W4GL("Z1")@(""),-1) Q:'LD
 .S NP=$O(@$$^W4GL("Z1")@(LD,9999999),-1) Q:'NP
 .S SZ=$G(@$$^W4GL("Z1")@(LD,NP,"V",1))+$G(@$$^W4GL("Z1")@(LD,NP,"VD",1))
 .I +SZ'=+SAH D
 ..;;S %SAY=" "_$J(SAH,8,2)_" :             oexg` xeciya `""k  k""dq ++19,57,HH,I" X %XMSG
 ..;;S %SAY=" "_$J(SZ,8,2)_" : "_$$^%L1DC(LD,1)_"-n Z -a `""k k""dql mi`zn `l ++20,57,HH,I" X %XMSG
 ..;;S %SAY="              03-5225075 'lh c.y.x-l xywzdl `p ++21,57,HH,I" X %XMSG
 ..;;D TV^%L1RBUA(19,10,23,58)
 ..;;I '$$HZGTOUCH^%L2MOUSE,'$$^P1SSM(2) Q
 ..;;D ^%L1PRESS("jiyndl",23,72,24,78)
 ;
EN ;
 Q
KILL ;
 K @$$^W4GL("FLAG"),@$$^W4GL("KLINC"),@$$^W4GL("HBFL")
 K @$$^W4GL("P1RCVF"),@$$^W4PC@(54),@$$^W4PC@(-1)
 K @$$^W4GL("PC"),@$$^W4GL("mlyshl")
 K @$$^W4GL("PLUK")@(4)
 K @$$^W4GL("flag"),@$$^W4GL("flagio")
 K @$$^W4GL("STLOOP"),@$$^W4GL("A2TRAN"),@$$^W4GL("msgesi")
 K @$$GL^W4RSTRN
 Q
 ;
OPEN ;
 I $$^%L1ZOS(10,FITR)<0 S REZ=-1 Q
 S REZ=0 O FITR:(WRITE:NEWVERSION)
 Q
DBNAME(STAM) ;
 N GLD,DB S GLD=$$^%L1GLD
 S DB=$P(GLD,".gld")
 N PATH
 I $G(@$$^W4PRM@("DBB"))="" S PATH=$P(DB,"/",1,$L(DB,"/")-1)
 E  S PATH=@$$^W4PRM@("DBB")
 I DB["esi" Q PATH_"/user"
 Q DB
 

W4INOUT
W4INOUT(STRIN) ; [ 31.10.11 07:55 ] [ 19.01.11 09:35 ] [ 05.06.10 17:40 ]
 N (STRIN,JB,%REM)
 D GL
 L +@GL:1
 S IND=$O(@GL@(99999999),-1)+1
 L -@GL
 S %BS=0
 S MYDVN=$$^W4MYDVN
 ;I 'MYDVN S ER="NODEFMYDVN" G END
 I 'MYDVN S MYDVN=$G(%REM)
 I 'MYDVN S MYDVN=$J
 ;
 D CLEAR(MYDVN)
 ;
 L +@GL@(IND):1
 S @GL@(IND,"IN")=MYDVN_":"_JB_"~"_STRIN
 L -@GL@(IND)
 ;
 S (SOUT,TRAN,STA)="",ER="OK"
 ;
 I $G(@$$^W4PRM@("SHVA"))<0 S ER="NOPRMSHVA" G END
 ;;I $G(@$$^W4SG("A2BLACK"))'="OK" S ER="BLACKNOTOK" G END
 ;
 F J=1:1:120 Q:$D(@GL@(IND,"OUT"))  H 1
 ;
 I '$D(@GL@(IND,"OUT")) S ER="NOTOUT",STA="--9",@GL@(IND,"ER")=ER G END
 I $P(@GL@(IND,"OUT"),"~")'=(MYDVN_":"_JB) S ER="NOTMYOUT",STA="-9",@GL@(IND,"ER")=ER G END
 ;
 S ST=$P($G(@GL@(IND,"OUT")),"~",2,200) G END1
 ;
END ;
 N ST S ST=$G(ER)_"~"_$G(STA)_"~"_$G(%BS)_"~"_$G(SOUT)_"~"_$G(TRAN)
END1 S @$$^W4SA@("ST")=ST
 Q ST
 ;
GL S GL=$$^W4GIO
 Q
CLEAR(MYDVN) ;
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $P($P($G(^(N,"IN")),"~"),":")=MYDVN K @GL@(N)
 Q

W4INOUT1
W4INOUT1 ; [ 18.07.12 09:46 ] [ 31.10.11 08:26 ] [ 05.06.10 17:40 ]
 ;--------- NE WEB SERVIS !!!
 N
 S P3INOUT1="" N $ZT
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 D GL
 ;
CYC I $$^%L1FLAG("^[$$^W3MAIN]flagio(254)") Q
 I '$D(@GL) H 1 G CYC
 ;
 L +@GL:2
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $D(@GL@(N,"IN")),'$D(@GL@(N,"OUT")),'$D(@GL@(N,"ER")) D
 ..S PART=$P($G(@GL@(N,"IN")),"~") Q:'PART  Q:'$P(PART,":",2)
 ..S STRIN=$G(@GL@(N,"IN"))
 ..S @GL@(N,"ER")="NOK"
 ..
 ..S A=PART_"~"_$$INOUT($G(@$$^W4DEV@($P(PART,":"))),STRIN)
 ..
 ..S @GL@(N,"OUT")=A
 ..I $P(A,"~",3)="000" K @GL@(N,"ER")
 L -@GL
 ;
 H 1
 G CYC
 ;
 ;
INOUT(%REM,STRIN)
 N (JB,%REM,STRIN)
 N $ZT S $ZT="ZG "_$ZL_":ERRIN^W4INOUT1"
 ;
 S @$$^W4SA@("IN")=STRIN
 S @$$^W4SA@("IN","H")=$H
 ;
 S PART=$P(STRIN,"~")
 S STRIN=$P(STRIN,"~",2,20)
 S JB=$P(PART,":",2)
 ;
 N I,INTIN,INTOT,INTRAN,PATH,SOUT,STA,TRAN
 S TRAN="",SOUT="",INTOT="",STA="",%BS=0,ER="OK"
 S PATH=$G(@$$^W4GL("PATH"))
 ;
 S STRIN=$P(STRIN,"J")_"J1"_$E($P(STRIN,"J",2),2,255) ; --- 1' TIME WITHOUT TEST
 S SOUT=""
 ;
 I $$^W4SRVWIN(JB) D SERV G CONTIN
 ;
 F I=1:1:60 Q:$$^W4ZOS(10,PATH_"int_lock")<0  H 1
 ;
 I $$^W4ZOS(2,PATH_"int_lock")
 I $$^W4ZOS(2,PATH_"int_ot")
 I $$^W4ZOS(2,PATH_"tran")
 ;
 S INTIN=PATH_"int_in"
 I $$^W4ZOS(2,INTIN)
 ;
 C INTIN O INTIN:(WRITE:NEWVERSION):2 E  S ER="ERINTINOPEN",%BS=1 G END
 U INTIN W STRIN_$C(13,10) C INTIN
 ;
 D ^W4DOS("ashbat.bat",,,"B")
 ;
 I $$^W4ZOS(10,PATH_"int_ot")<0 S ER="INTOTNOTEXIST",STA="--9" G END
 ;
 S INTOT=PATH_"int_ot"
 O INTOT:(REWIND:READONLY)
 U INTOT R SOUT
 C INTOT
 ;
CONTIN ;
 I $$^W4MYDVN D
 .D GLIO
 .S @GLIO@("SOUT0")=SOUT
 ;
 S SOUTOLD=SOUT
 S AUTHNO="0000000"
 S STA=$E(SOUT,1,3)
 ;
 I STA<41!(STA>46),+STA'=3,STA'=129 G M ;--- FATAL ERROR OR OK
 ;
 ; ---------------------- SHEILTA ------------------
 I $G(@$$^W4PL@("J"))=1 S STA="003",$E(SOUT,1,3)=STA G END
 ;
 I $$^W4ASKM(JB)  I 'AUTHNO!STA S ER="CRCARDTESTFAILED" G END
 .N MUTAG,COMP,VIZ,MMYY
 .S STA="003"
 .S COMP=$E(SOUT,60)
 .N MMYY S MMYY=$E(SOUT,30,33)
 .S MUTAG=$E(SOUT,24) I 'MUTAG S MUTAG=COMP
 .S VIZ=$E(SOUT,5,23)
 .Q:'$G(COMP)  Q:'$G(VIZ)
 .
 .D ^W4S(STRIN,COMP_0,VIZ,MMYY)
 .
 .S STA=$G(@$$^W4SA@("STA")) S:STA="" STA="-9"
 .S $E(SOUT,1,3)=$TR($J(STA,3)," ",0) Q:STA
 .S AUTHNO=$TR($G(@$$^W4SA@("AUTHNO")),%TBIG,"")
 .I AUTHNO,AUTHNO?7N
 ;
 S STRIN=$P(STRIN,"J")_"J4"_$E($P(STRIN,"J",2),2,255)
 S STRIN=$P(STRIN,"E")_"E"_$TR($J(AUTHNO,7)," ",0)_$E($P(STRIN,"E",2),8,255)
 ;
 I $$^W4SRVWIN(JB) D SERV G M
 ;
 I $$^W4ZOS(2,INTIN)
 I $$^W4ZOS(2,PATH_"int_ot")
 I $$^W4ZOS(2,PATH_"tran")
 ;
 C INTIN O INTIN:(WRITE:NEWVERSION):2 E  S ER="ERINTINOPEN",%BS=1 G END
 U INTIN W STRIN_$C(13,10) C INTIN
 ;
 D ^W4DOS("ashbat.bat",,,"B") ; --- WITH AUTHNO
 ;
 I $$^W4ZOS(10,PATH_"int_ot")<0 S ER="INTOTNOTEXIST",STA="034" G END
 ;
 S INTOT=PATH_"int_ot"
 C INTOT O INTOT:(REWIND:READONLY)
 U INTOT R SOUT
 C INTOT
 ;
M S @$$^W4SA@("SOUT")=SOUT
 S @$$^W4SA@("SOUT","H")=$H
 S STA=$E(SOUT,1,3) I STA'="000" G END
 ;
 I $$^W4SRVWIN(JB) G END
 ;
 I $$^W4ZOS(10,PATH_"tran")<0 S STA="099" G END
 ;
 S INTRAN=PATH_"tran"
 C INTRAN O INTRAN:(REWIND:READONLY)
 U INTRAN R TRAN
 I TRAN'="" S $E(TRAN,1,3)=901
 C INTRAN
 S @$$^W4SA@("TRAN")=TRAN
 I $$^W4ZOS(2,PATH_"tran")
 ;
END ;
 S $ZT=""
 I '$$^W4SRVWIN(JB) I $$^W4ZOS(2,$G(PATH)_"int_lock")
 N ST S ST=$G(ER)_"~"_$G(STA)_"~"_$G(%BS)_"~"_$G(SOUT)_"~"_$G(TRAN)
 Q ST
 ;
GL S GL=$$^W4GIO
 Q
GLIO S GLIO=$$^W4GL("W4IO")_"($$^W4MYDVN)"
 Q
 ;
ERRIN D SVER^%L1X
 S ER="PROGRAMMERROR"
 S STA=999
 S %BS=1
 S SOUT=999
 S TRAN=""
 G END
 ;
SERV ;
 S SOUT=""
 S ADDR="192.168.0.2"
 N PORTN,US,ERC
 S PORTN="SCK$"_$J,PORT=7777
 S US="U PORTN:(NOECHO:NOWRAP)"
 S ERC=$$^%L2NALAN(ADDR,PORT)
 I ERC S ER="NOCOMM",SOUT="009" Q
 X US
 W STRIN,!
 R SOUT:30 E  S ER="NOOUT",SOUT="009" Q
 C PORTN
 Q

W4INP
W4INP ; [ 16.09.25 12:07 ] [ 21.04.12 04:54 ] [ 15.11.08 10:54 ] 
 S TS=$C(68) F J=69:1:94 S TS=TS_$C(J)
 S TS0=$C(96) F J=97:1:122 S TS0=TS0_$C(J)
 S TS1=$C(224) F J=225:1:250 S TS1=TS1_$C(J)
 S TSS=$C(128) F J=129:1:154 S TSS=TSS_$C(J)
 S TSE=$C(64) F J=65:1:90 S TSE=TSE_$C(J)
 S NOITRA=+$G(@$$^W4PL@("NOITRA")) ; LO LATET ITRA LE MADPESET
 S AHMAM=+$G(@$$^W4PL@("MAM"))
 S SHIDUR=+$G(@$$^W4PL@("SHIDUR")) ; SHIDUR B MUMPS
 S PICUL=+$G(@$$^W4PL@("PICUL")) ;
 S DLL=+$G(@$$^W4PL@("DLL"))
 S PATHM=$G(@$$^W4PL@("PATHM")) ;PATH LE SER KUPA
 S PLTOTM=+$G(@$$^W4PL@("TOT"))
 S MRK=+$G(^MERKAZ) ;
 S MRKC=$G(@$$^W4GL("MERKAZ")@("C")) S:'MRKC MRKC=MRK
 S LAN=$G(@$$^W4PL@("LAN"),1) I LAN>1 S %XMSG(0)=LAN
 S LPLN=8
 S MATB=+$G(@$$^W4PL@("MATB"))
 S USER=$G(@$$^W4PL@("USER"),1)
 S UCIKP=$ZG
 K MNAME S MNAME("F")="onefn"
 S MNAME("G")="d`gnd"
 S MNAME("H")="i`xy`"
 S MNAME("J")="ipci dfie"
 S MNAME("I")="ipci hxkxyi"
 S MNAME("K")="ipci qxpiic"
 S MNAME("L")="ipci AM.EX."
 S MNAME("D")="lawzd"
 S MNAME("E")="mley"
 S MNAME("S")="ipevig yelz"
 S MNAME("T")="inipt yelz"
 S MNAME("Z")="iekif 'z"
 S MNAME("V2")="dfie"
 N I F I=1:1:9 D
 .S MNAME("V"_I)=$$^W4VT(I)
 S MNAME("VD")="`""k lawzd"
 S MNAME("FD")="fn lawzd"
 S MNAME("GD")="wy lawzd"
 Q
 

W4INPDIR
W4INPDIR(STAM) ; [ 04.02.24 15:40 ] [ 03.06.18 09:38 ] [ 17.10.14 12:17 ] 
 Q $$^W4GL("W4INPDIR")
 ;
KILL(DT,ORG,VDOC,NOM) ;
 N (JB,%ARG,DT,ORG,VDOC,NOM)
 S NOM=+NOM
 N NP S NP="" F  S NP=$O(@$$^W4GL("W4INP")@(ORG,VDOC,NOM,NP)) Q:NP=""  I NP D
 .S A=$G(^(NP))
 .S PAR=$P(A,"\") I PAR=""!(DT="")!(VDOC="")!(NOM="") Q
 .K @$$I@(PAR,DT,ORG,VDOC,NOM)
 .D ^%S3GLSV($$I_"("""_PAR_""","""_DT_""","""_ORG_""","""_VDOC_""","""_NOM_""")",$$^W4FGIB,"K")
 .
 K @$$^W4INPDIR@(DT,ORG,VDOC,NOM)
 D ^%S3GLSV($$^W4INPDIR_"("""_DT_""","""_ORG_""","""_VDOC_""","""_NOM_""")",$$^W4FGIB,"K")
 Q
 ;
 ;
SET(DT,ORG,VDOC,NOM) ;
 N (JB,%ARG,DT,ORG,VDOC,NOM)
 S NOM=+NOM
 I ORG=""!(VDOC="")!(NOM="") Q
 N NP S NP="" F  S NP=$O(@$$^W4GL("W4INP")@(ORG,VDOC,NOM,NP)) Q:NP=""  I NP D
 .S A=$G(^(NP))
 .S PAR=$P(A,"\") Q:PAR=""
 .S EM=$P(A,"\",7)
 .S QN=$P(A,"\",4) Q:'QN
 .S @$$I@(PAR,DT,ORG,VDOC,NOM)=QN*$$KF^W4SETMLY(PAR,EM)_"\"_EM_"\"_QN
 .D ^%S3GLSV($$I_"("""_PAR_""","""_DT_""","""_ORG_""","""_VDOC_""","""_NOM_""")",$$^W4FGIB)
 .
 I VDOC="ITM"!(VDOC="ITZ") D
 .I $D(@$$^W4INPDIR@(DT,ORG,VDOC,NOM)) Q
 .S @$$^W4GL("W4FREEDOC")@(ORG,VDOC,NOM)=DT_"\"_$ZD($H,"DD.MM.YY  24:60")
 ;
 S @$$^W4INPDIR@(DT,ORG,VDOC,NOM)=$H
 D ^%S3GLSV($$^W4INPDIR_"("""_DT_""","""_ORG_""","""_VDOC_""","""_NOM_""")",$$^W4FGIB)
 ;
 Q
 ;
 ;
I(STAM) ;
 Q $$^W4GL("W4INPI")
 
 
 

W4ISCDLK
W4ISCDLK(LKH) ; [ 17.08.25 13:31 ] [ 29.09.15 10:36 ] [
 S LKH=$G(LKH)
 I $L(LKH)<4 Q "SHORT"
 I $TR(LKH,"-.","")?1N.N Q 1
 I $TR(LKH,"-","")?1U.U1N.N Q 1
 Q 0
 
 
 
 

W4ISLINK
W4ISLINK(PAR,TSF,PR) ; [ 13.07.23 09:33 ] [ 06.01.22 15:37 ] [ 01.12.16 18:34 ] 
 I $G(PAR)=""!$G(TSF)="" Q 0
 I $D(@$$^W4GL("P1EZI")@(PAR,TSF)) Q 1
 N SUG S SUG=$$SUG^W4P(PAR)
 I SUG'="",$D(@$$^W4GL("P1EZKI")@(SUG,TSF)) Q 2
 I '$G(PR),$$DD^W4EZA(PAR) Q $$LINK(PAR,TSF,"P1EZA")
 I '$G(PR),$$DD^W4EZT(PAR) Q $$LINK(PAR,TSF,"P1EZT")
 Q 0
 ;
LINK(PAR,TSF,NMGL)
 N N,N1,SET,OK,OK1 S OK=0,OK1=0
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N P1SETA S P1SETA=$$^W4GLSET(HZM)
 S N="" F  S N=$O(@$$^W4GL(NMGL)@(PAR,N)) Q:N=""  D  Q:OK
 .S SET=$E(N,2,10) Q:SET=""
 .I $D(@P1SETA@(SET,TSF)) S OK=1 Q
 .Q
 I OK Q $S(NMGL="P1EZA":3,1:4)
 Q OK1
 ;
 ;
LINK2(PAR,TSF)
 I '$$^W4EZAT(PAR) Q 0
 I $$DD^W4EZT(PAR) S NMGL="P1EZT"
 I $$DD^W4EZA(PAR) S NMGL="P1EZA"
 N N,N1,SET,OK,OK1
 S OK=0,OK1=0
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N P1SETA S P1SETA=$$^W4GLSET(HZM)
 ;
 S N="" F  S N=$O(@$$^W4GL(NMGL)@(PAR,N)) Q:N=""  D  Q:OK
 .S SET=$E(N,2,10) Q:SET=""
 .N N1 S N1="" F  S N1=$O(@P1SETA@(SET,N1)) Q:N1=""  D
 ..I $D(@$$^W4GL("P1EZI")@(N1,TSF)) S OK1=.1
 ..N SUG S SUG=$$SUG^W4P(N1) Q:'SUG
 ..I $D(@$$^W4GL("P1EZKI")@(SUG,TSF)) S OK1=.2
 I OK Q $S(NMGL="P1EZA":3,1:4)
 Q OK1
 
 
 
 
 

W4ISORD
W4ISORD(HZM) ; [ 22.04.16 18:24 ] [ 
 I $G(HZM)>0 Q 1
 I $$^W4ISPART(HZM) Q 1
 Q 0

W4ISPART
W4ISPART(HZ) ; [ 21.04.16 18:19 ] [ 
 I $G(HZ)="" S HZ=$$GETP^%W1PRM("HZM")
 N HZMAIN S HZMAIN=$$GETP^%W1PRM("HZMMAIN")
 I HZ<-20&(HZMAIN>0)&(HZMAIN["-") Q 1
 Q 0
 ;
ORDNOM(HZ) ;
 I $G(HZ)="" S HZ=$$GETP^%W1PRM("HZM")
 Q $G(@$$^W4ORD@(HZ,"ORDNOM"))
 
 
 
 

W4IT4WEB
W4IT4WEB ; [ 05.03.21 12:38 ] [ 19.10.20 12:22 ] [ 26.08.20 21:42 ] 
 Q
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("IT4WEB")
 I MSD D
 .I SRVADR="" S SRVADR="2order.org"
 .S @$$^W4PRM@("IT4WEB","MSDR")=MSDR
 .S @$$^W4PRM@("IT4WEB","MSD")=MSD
 .S @$$^W4PRM@("IT4WEB","SRVADR")=SRVADR
 .S @$$^W4PRM@("IT4WEB","PSW")=PSW
 .S @$$^W4PRM@("IT4WEB","Z")=Z
 S @$$^W4PRM@("IT4WEB")=1
 Q RES
 
 
 
 
 
 
 
 

W4ITCNC
W4ITCNC ; [ 23.11.22 13:12 ] [ 09.11.22 15:04 ] [ 26.05.22 13:06 ] 
 N (JB,%ARG,%REM)
 S TMPRKZ=$$^W4MAIN("TMPRKZ")
 W "<table id=""TblCnc"" dir="""_$$^%W1DIR_""" width=""100%"" "
  I +$$BONNEW^W4PRM=0 D
  .W "style=""font-size:"_$$^W3FSZ(12)_""" "
  I +$$BONNEW^W4PRM D
  .W "class=""tblcnc"" "
 W ">",!
  D KOT
  S N="" F  S N=$O(@TMPRKZ@(N)) Q:N=""  D TR(N)
 W "</table>",!
 Q
 ;
 ;
KOT ;
 W "<tr >",!
  ;;W "<td width=""10%""></td>"
  W "<td style=""text-align:center;font-size:"_$$^W3FSZ(16)_";font-weight:bold;color:brown"">"
  W $$^%W1DICT("ITCONC")
  W "</td>",!
  W "<td width=""10%"">"
   W "<img src=""w4bonrndx.png"" "_$$^W4TOUCH_"='Close()'/>"
  W "<td>" 
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>"
 Q
 ;
TR(N) ;
 W "<tr >"
  ;;W "<td>"_N_"</td>",!
  N QN S QN=$G(@TMPRKZ@(N)) 
  W "<td>"_$$H2U^%L1FRM($$SHEM(N))_"</td>"
  W "<td>"_QN_"</td>"
 W "</tr>",!
 ;
 W "<tr><td colspan=""3"">"
  W "<hr style=""color:lightgrey;border-style:dotted"">",!
 W "</td></tr>",!
 Q
 ;
 ; 
SHEM(CD) ; 
 I $$KVZRKZ^W4BONNEW Q $G(@$$^W4GL("W4GRC")@(CD))
 Q $$SHEM^W4P(CD) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ITDEL
W4ITDEL(ORD) ; [ 30.06.22 13:34 ] [ 29.06.22 21:22 ] [ 30.06.21 08:43 ] 
 ;----------------------------------------------------------------------------
 ; K - POR NOM V TBL
 ; I - NOM ST V ^TMPORD
 ;----------------------------------------------------------------------------
 N (%ARG,JB,ORD,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W4ITDEL")
 D PUT^%W3DEB("W4ITDEL","W3ORDLS=W3ORDLS & ARG=[%ARG")
 Q:'$G(ORD)
 ;
 I $$NEW Q:$$^W4GETHZ(ORD)'=1  ; --- IF FIRST VIEW THEN ORDER --> ^TMPORD
 ;
 I $$MOVEFROM D
 .K @$$^W4MAIN("TMPMVD0")
 .M @$$^W4MAIN("TMPMVD0")=@$$^W4TMPORD
 ;
 D NOSELECT^%W1JS
 D TMPS
 ;
 D W("<div align=""center"">")
 ;
 D W("<table width=""100%"" cellspacing=""0"" class=""vw"" border=""1"" ")
 D W(" dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""" ")
 D W(" id=""TblOrdVw"" name=""TblOrdVw"" >")
 ;
 N TR S TR="<tr style=""background-color:"_$$FNFG^W4CSS_";color:white"">"
 D W(TR)
 S CC=0
 S CC=CC+1 D W("  <th style=""width:5%"">"_$$^%W1DICT("NPP")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:24%"">"_$$^%W1DICT("ITEMNAME")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("DISCPERCENT")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("QUANT")_"</th>")
 S CC=CC+1  D W("  <th>"_$$^%W1DICT("COMMENT2KITCHEN")_"</th>")
 S CC=CC+1 D W("  <th style=""width:15%"">"_$$^%W1DICT($S($$TS:"QN2PAY",$$MOVEFROM:"MVQUANT",1:"DELQUANT"))_"</th>")
 D W(" </tr>")
 ;
 W ! S PR0=0
 N L,K,K0,IL,ITRA
 S L=$$BEG S:L<1 L=1 S K=L
 ;
 S CUR=1
 I '$$NEW S CUR=$$IND($$CUR)
 ;
 S SIZEPAGE=470,RSIZE=0
 I $$^W4TABLET S SIZEPAGE=400
 ;
 S IL=L I L>1 S IL=$$IND(L) ; -- NP TBL --> IND TMPORD
 ;
 S K0=K,FIRSTSIZE=1,ITRA=0,FLCUR=0,FLCUR0=0,FLDEL=0,PRT=""
 N ITMP S ITMP=0
 N TMPDEL S TMPDEL=$$^W4MAIN("TMPDEL") K @TMPDEL
 ;
 N I F I=IL:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .N A,AT S A=$G(^(I)),AT=A
 .I $$NEW S @TMPS@($$UR,K)=I
 .N QNDELI S QNDELI=$$QNDEL(I)
 .
 .I $$LV(A)=0 D  ; --------------- MAIN ITEM
 ..S ITRA=$$ITRAST(I)
 ..I ITRA'>0 S PR0=0 Q
 ..I $$^W4CDSRV($$CD^W3HZMST(A)) S PR0=0 Q
 ..S PR0=1,QNIT1=""
 ..I RSIZE+40>SIZEPAGE,FIRSTSIZE D SETLAST(K0) S FIRSTSIZE=0
 ..S RSIZE=RSIZE+40
 ..
 ..S FLCUR=0 I I=CUR S FLCUR=1
 ..S PRFULL=0
 ..I I=$$IND($$CUR),$$ITRAST(I)-$$QNDEL(I)<1 S PRFULL=1
 ..S FLDEL=0 I $$QNDEL(I) S FLDEL=1
 ..
 ..S ST="<tr id=""LV0"_I_""" name=""LV0"_I_""" "
 ..S ST=ST_" class="""_$S(K=1&$$NEW!(I=CUR):"vwc",$$QNDEL(I):"vwd",1:"vw0")_""""
 ..S ST=ST_" style=""height:"_$$^W4KF(40)_"px"" "
 ..S ST=ST_" "_$$^W4TOUCH_"=""SetCur('"_$$INDK(I)_"')"">"
 ..D W(ST)
 ..S K0=K D K ; -- SHOW K
 ..
 ..S PRT=$$CD(A)
 ..
 ..D W("  <td>&nbsp;"_PRT_"</td>")
 ..
 ..D W("   <td style='font-size:"_$$^W3FSZ_"'>&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N MH S MH=$$MH(A)
 ..D W("   <td align=""center"" dir=""LTR"">&nbsp;"_MH_"</td>")
 ..D W("   <td align=""center"" dir=""LTR"">&nbsp;"_$$AHP(A)_"</td>")
 ..
 ..D W("   <td align=""center"" dir=""LTR"">&nbsp;"_ITRA_"</td>")
 ..
 ..D CMTD ; ---- SHOW COMMENT
 ..
 ..D W("   <td align=""center"" dir=""LTR"" >")
 ..D W("     <input type=""text"" id=""QND"_I_""" size=""2"" value="""_QNDELI_""" style=""font-size:"_$$^W3FSZ(12)_";text-align:center"" readonly=""readonly"" />")
 ..D W("   </td>")
 ..S ITMP=ITMP+1
 ..D
 ...S $P(A,"~",5)=QNDELI
 ...S @TMPDEL@(ITMP)=A
 ..
 ..I '$$DEL(I) S @$$^W4TMPORD@("DEL",I)=""
 ..
 ..D W("</tr>")
 .
 .
 .I $$LV(A)>0 D  ; --------------- ADDONS ---------
 ..I $$CDA(A) Q
 ..I $$CDC(A) Q
 ..Q:'PR0
 ..Q:$$QNR(A)'>0
 ..S ITRAT=$$ITRAST(I)
 ..I $$LV(A)=1 S QNIT1=+ITRAT
 ..I ITRAT'>0 Q
 ..I ITRAT,'ITRA S ITRAT=""
 ..S ITRAT=ITRAT_$$DOP^W4PIZZA($$QNST^W3HZMST(JB,I))
 ..
 ..N PREZAT S PREZAT=0
 ..
 ..I $$^W4EZAT(PRT) D
 ...I $$^W4MULTY S PREZAT=0
 ...I '$$^W4MULTY S PREZAT=$S(ITRA>1:2,1:1)
 ..
 ..I PREZAT D
 ...S FLCUR=0 I I=CUR S FLCUR=1
 ...I $$LV(A)=2,$$IND1(I)=CUR S FLCUR=1
 ...S FLDEL=0 I $$QNDEL(I) S FLDEL=1
 ..;
 ..I PRFULL S FLCUR=1
 ..
 ..I 'PREZAT,$$LV(A)=1,ITRA>1!$$QNPZ^W4PIZZA(ITRAT) D
 ...S:ITRAT["*" ITRAT=$P(ITRAT,"*",2)
 ...N IT S IT=ITRAT I ITRAT\ITRA*ITRA=ITRAT S IT=ITRAT\ITRA
 ...S ITRAT=ITRA_"*"_IT_$$PCQN^W4PIZZA(ITRAT)
 ..
 ..S RSIZE=RSIZE+25
 ..
 ..S ST="<tr style=""background-color:"
 ..S ST=ST_$S(FLCUR:"yellow",FLDEL:"lightyellow",1:"white")_";color:"_$$COLORADD^W4CSS($$LV(A))_""""
 ..S ST=ST_" id=""LV1"_I_""" name=""LV1"_I_""" "
 ..I PREZAT S ST=ST_" "_$$^W4TOUCH_"=""SetCur('"_$$INDK(I)_"')"" "
 ..S ST=ST_">"
 ..D W(ST)
 ..
 ..D K
 ..D W("    <td>&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..
 ..D W("   <td") ; --- NAME
 ..I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N ST S ST="   <td dir=""LTR"" style=""text-align:center" ; --- MH
 ..N MH S MH=$$MH(A)
 ..I MH S ST=ST_";color:black"
 ..S ST=ST_""""
 ..S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:MH)_"</td>"
 ..D W(ST)
 ..
 ..S ST="<td>&nbsp;</td>" D W(ST)
 ..;
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ITRAT)_"</td>"
 ..S ITMP=ITMP+1
 ..S $P(AT,"~",5)=ITRAT
 ..S @TMPDEL@(ITMP)=AT
 ..D W(ST)
 ..
 ..D CMTD ; -- SHOW COMMENT
 ..
 ..I PREZAT&($$LV(A)=1),'PRFULL D
 ...D W("   <td align=""center"" dir=""LTR"" >")
 ...S ST="     <input type=""text"" id=""QND"_I_""" size=""2"" "
 ...S ST=ST_" value="""_$$QNDEL(I)_""""
 ...S ST=ST_" style=""font-size:"_$$^W3FSZ(12)_";text-align:center"" readonly=""readonly"" >"
 ...D W(ST)
 ...D W("   </td>")
 ...I '$$DEL(I) S @$$^W4TMPORD@("DELT",I)=""
 ..
 ..I 'PREZAT!($$LV(A)=2)!PRFULL D
 ...D W("   <td dir=""LTR"" style=""text-align:center"">&nbsp;</td>")
 ..
 ..D W("  </tr>")
 ;
 W !
 ;
 D W("</table>")
 D W("</div>")
 D W("<br>")
 D PUT^%W1PRM("W4ITDELNEW",0)
 Q
 ;
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
LV(A) Q $P(A,"~")
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(ORD) N JB S JB=+ORD
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CD(A) ;
 N NM
 S NM=$P(A,"~",2)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 Q $J(MH,2,2)
 ;
QN(A) ;-- SK OSTALOS
 N QN
 S QN=$P(A,"~",5)
 I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN["*" Q ITRA_"*"_$P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNR(A) ;
 N QN S QN=$$QN(A)
 I QN["*" Q $P(QN,"*")*$P(QN,"*",2)
 Q QN
 ;
AHP(A) ;
 N AHP
 S AHP=$P(A,"~",6)
 I AHP="" Q "&nbsp;"
 Q AHP
 ;
QNST(I) ;-- PERVONACH K-VO
 N QNST
 S QNST=$$QNST^W3HZMST(JB,I)
 I QNST["*" Q $P(QNST,"*",$L(QNST,"*"))
 Q QNST
 ;
MHST(I) ;
 Q $$MHST^W3HZMST(JB,I)
 ;
LVST(I) ;
 Q $$LVST^W3HZMST(JB,I)
 ;
 ;
QNDEL(I) ;--- SK UDALILI
 N QN S QN=$$QNST^W3HZMST(JB,I)
 N QND,QNDM,I0,I1
 ;
 F I0=I:-1:1 Q:$$LVST(I0)=0
 ;
 S QNDM=+$G(@$$^W4TMPORD@("DEL",I0))
 I $$LVST(I)=0 Q QNDM
 I 'QNDM Q 0
 ;
 N ITRASTI S ITRASTI=+$$ITRAST(I)
 I +QNDM=+$$ITRAST(I0),$$LVST(I)>0 Q ITRASTI
 ;
 I QN["*",$$LVST(I)=1,$$^W4MULTY D  Q QND
 .S QND=QNDM*$P(QN,"*",2) 
 ;
 I $$LVST(I)=1 D  Q QND
 .S QND=+$G(@$$^W4TMPORD@("DELT",I))
 .I QND>0,QN<0 S QND=-QND
 ;
 N QND
 ;
 I $$LVST(I)=2 D  Q QND
 .N QN2,A S QN2=$$QNSTA^W3HZMST(JB,I)
 .N I1 S I1=$$PREVSH1^W3HZMST(JB,I) I 'I1 Q 0
 .N QN1 S QN1=0
 .I $$LVST(I1)=1 S QN1=+$G(@$$^W4TMPORD@("DELT",I1))
 .S QND=QN1*QN2
 ;
 S QND=+$G(@$$^W4TMPORD@("DEL",I))
 Q QND
 ;
 ;
QNDELT(I,LV,QNDM) ;--- SK UDALILI
 I 'QNDM Q 0
 N QN S QN=$$QNST^W3HZMST(JB,I)
 N QNR S QNR=$$QNR^W3HZMST(JB,I)
 S QND=QNDM
 ;
 S I0=$$PREVSH0^W3HZMST(JB,I)
 I 'I0 Q 0
 N CD0 S CD0=$$CDST^W3HZMST(I0)
 N ITRAST0 S ITRAST0=$$^W4QNR($$ITRAST(I0))
 N ITRASTI S ITRASTI=$$^W4QNR($$ITRAST(I)) ;I ITRASTI'>0 Q 0
 ;
 I +QNDM=+ITRAST0,$$LVST(I)>0 Q ITRASTI
 ;
 I LV=1,'$G(@$$^W4TMPORD@("DELT",I)),$$^W4EZAT(CD0) Q 0
 ;
 I LV=1,QN["*" D  Q QND
 .N QN2 S QN2=$P(QN,"*",2)
 .I ITRAST0,ITRASTI\ITRAST0*ITRAST0=+ITRASTI D
 ..S QN2=ITRASTI\ITRAST0
 .S QND=QNDM*QN2
 ;
 I LV=1 D  Q QND
 .S QND=+$G(@$$^W4TMPORD@("DELT",I))
 ;
 N QND
 ;
 I LV=2 D  Q QND
 .N QN2,A S QN2=$$QNSTA^W3HZMST(JB,I) I QN2<0 S QND=0 Q 
 .N I1 S I1=$$PREVSH1^W3HZMST(JB,I) I 'I1 S QND=0 Q
 .N QN1,QN1T S QN1=0,QN1T=1
 .N LV1 S LV1=$$LVST(I1) I LV1'=1 S QND=0 Q
 .I '$G(@$$^W4TMPORD@("DELT",I1)) S QND=0 Q
 .I LV1=1 D
 ..N ITRA1 S ITRA1=$$ITRAST(I1)
 ..N ITRA2 S ITRA2=$$ITRAST(I)
 ..I ITRA1,ITRA2\ITRA1*ITRA1=+ITRA2 S QN2=ITRA2\ITRA1
 ..S QN1T=+$G(@$$^W4TMPORD@("DELT",I1))
 .S QND=QN1T*QN2
 .Q
 ;
 Q QND
 ;
 ;
SUM(A) Q $J($$QNR(A)*$$MH(A)*(100-$$AHP(A))*.01,2,2)
 ;
NMTD(SH) ;
 Q "QN"_SH
 ;
NMTDI(SH) ;
 Q "QNID"_SH
 ;
CMTD ;
 D W("   <td id=""cmtd"_I_""" class=""hdgr"" style=""font-size:11pt;text-align:center"" >&nbsp;")
 W $$H2U^%L1FRM($$CMST^W3HZMST(JB,I))
 D W("   </td>")
 Q
 ;
HD ;
 Q
 ;
IND0(I) ;
 N A S A=""
 N I1 F I1=I-1:-1:1 Q:'$D(@$$^W4TMPORD@(I1))  S A=$G(^(I1)) I '$$LV(A) Q
 I $$LV(A)=0 Q I1
 Q ""
 ;
IND1(I) ;
 N A S A=""
 N I1 S I1=I F  S I1=$O(@$$^W4TMPORD@(I1),-1) Q:I1=""  I I1 S A=$G(^(I1)) I $$LV(A)<2&'$$CDC(A) Q
 I $$LV(A)=1&'$$CDC(A) Q I1
 Q ""
 ;
K ;
 D W("  <td style=""text-align:center;background-color:yellow"">"_K_"</td>")
 S K=K+1
 Q
 ;
CUR(STAM) D TMPS Q $G(@TMPS@($$UR,"CUR"))
 ;
W(TXT)
 W TXT,!
 Q
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
 ;
KB(ORD) ; ---- TOP & BOTTOM BUTTONS ----------------
 W "<div align=""left"" style=""position:absolute;top:0px;height:"_$$^W4KF(80)_"px;width:99%"">"
 D HEAD^W4PAYHD(ORD)
 W "</div>",!
 ;
 N SZ S SZ=$S($$^W4TABLET=1:510,1:630) ;;
 N TOP S TOP=$$^W4KF(SZ)
 W "<div align=""left"" style=""position:absolute;top:"_TOP_"px;width:99%"">"
 D BOTTOM(ORD)
 W "<br />",!
 D W("<table width=""100%"" cellspacing=""0"" class=""vw"" border=""0"" dir="""_$$^%W1DIR_""" >")
 N OKTSF S OKTSF=0
 D W("<tr>")
  D W("<td width=""11%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNDN")_""" "_$$^W4TOUCH_"=""LineDown()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNUP")_""" "_$$^W4TOUCH_"=""LineUp()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" style=""width:70%"" value=""+"" "_$$^W4TOUCH_"=""DelPlus('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" style=""width:70%"" value=""-"" "_$$^W4TOUCH_"=""DelMin('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("QNALL")_""" "_$$^W4TOUCH_"=""DelAll('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""12%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGDN")_""" "_$$^W4TOUCH_"=""PageDown()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGUP")_""" "_$$^W4TOUCH_"=""PageUp()"") />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" style=""color:green;width:80%"" value="""_$$^%W1DICT("SUBMIT")_""" "_$$^W4TOUCH_"=""Submit('"_ORD_"')"") />")
  D W("</td>")
  ;
  D W("<td width=""16%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" style=""color:red;width:95%"" value="""_$$^%W1DICT("CANCELACTION")_""" "_$$^W4TOUCH_"=""Back()"") />")
  D W("</td>")
  ;
 D W("</tr>")
 D W("</table>")
 W "</div>"
 Q
 ;
 ;
BOTTOM(ORD) ;----------- BOTTOM INFORMATION ---
 W "<table border=""0"" dir="""_$$^%W1DIR_""" width=""100%"" cellpadding="""_$$^W4KF(7)_"px"" class=""hdord"">",!
  W "<tr>"
   W "<td width=""10%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    N AHUZ S AHUZ=+$$HNHAH^W4HZMST(ORD)
    I $J($$TOTHN^W4HZORD(ORD)*AHUZ*.01,0,0)'=$J($$HNH^W4HZMST(ORD),0,0) S AHUZ=""
    W $$^%W1DICT("DISC",+AHUZ_"%")
   W "</td>",!
   ;
   W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT("TOPAY")_"</td><td width=""11%"" align=""center"">"
    W $$SHOWRKV($$TSHL^W4HZMST(ORD),"tsh",".")
   W "</td>",!
   ;
   W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""" >"
    W $$^%W1DICT("PAID")_"</td>"
    W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""">"
    W $$SHOWRKV($$SHUL^W4HZMST(ORD)+$$SHULA^W4HZMST(ORD),"shul",".")
   W "</td>",!
   ;
   W "<td width=""14%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT("ITRA2PAY")_"</td><td width=""11%"" align=""center"">"
    W $$SHOWRKV($$ITRA^W4HZMST(ORD),"i2p",".")
   W "</td>",!
   ;
   W "<td width=""14%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT($S($$TS:"TOTINBILL",$$MOVEFROM:"TOTMOVE",1:"TOTDEL"))_"</td>"
    W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
    W $$SHOWRKV($$TOTDEL(ORD),"totdel",".","color:red")
   W "</td>",!
   ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
SUBMIT(HZM) ;
 N RES
 D PUT^%W3DEB("W4ITDEL-SUBMIT","HZM=HZM")
 ;;S ^AA("W4ITDEL-SUBMIT")=HZM
 D PUT^%W1PRM("DELROW",1)
 ;
 N MV S MV=$P(HZM,";",2)
 N TS S TS=$P(HZM,";",3)
 N TBDEL S TBDEL=$P(HZM,";",4)
 I TS S MV=1
 ;
 S HZM=$P(HZM,";")
 ;
 N MLZ S MLZ=$$MKBL^W4HZMST(HZM)
 S MNL=$$^W4WHODEL
 ;
 I 'MV,'TBDEL,$$CLOSE^W4HZMST(HZM) D  Q RES  ; --- BITUL HELKI LE HAZMANA SGURA
 .N TMPD S TMPD=$$^W4MAIN("TMPD") K @TMPD
 .I '$D(@$$^W4TMPORD@("DEL")),'$D(@$$^W4TMPORD@("DELT")) S RES="NOITEMS4DEL" G EHLK
 .M @TMPD=@$$^W4TMPORD@("DEL")
 .M @TMPD=@$$^W4TMPORD@("DELT")
 .N OK S OK=0
 .N N S N="" F  S N=$O(@TMPD@(N)) Q:N=""  I N,$G(^(N)) S OK=1 Q  
 .I 'OK S RES="NOITEMS4DEL" G EHLK
 .S RES=$$^W4BITHLK(HZM)
 .S ^AA("W4ITDEL-SUBMIT","RES")=RES
EHLK .K @TMPD K @$$^W4TMPORD
 .D KILL^%W1PRM("DELROW")
 .I RES<1 Q
 .S RES="BITHLK:"_RES
 ;
 I TBDEL D
 .S MNL=MLZ
 .S MV=$$NMB^W4HZMST(HZM)
 .N (JB,%ARG,HZM,MLZ,MV)
 .S PRM=MV_";"_HZM_";"_MLZ_";0"
 .D PUT^%W1PRM("MOVEFROM",PRM)
 ;
 N I,LAST,N
 S LAST=$O(@$$^W4TMPORD@(999999),-1)
 ;
 I $$MOVEFROM,'TBDEL D
 .K @$$^W4MAIN("TMPMV")
 .S @$$^W4MAIN("TMPMV")=LAST+1
 ;
 N TMPORD D TMPORD
 N CD,ER S ER=""
 ;
 S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""   S QNDEL=$G(^(N)) I QNDEL D  Q:$$GET^%W1PRM("DELROW")<1
 .S CD=$$CDST^W3HZMST(JB,N)
 .
 .I $$^W4EZAT(CD),$$LVST(N)=0,QNDEL<$$ITRAST(N) D
 ..N N1,OK S OK=0
 ..F N1=N+1:1 Q:'$D(@$$^W4TMPORD@(N1))  Q:'$$LVST(N1)  D
 ...I $G(@$$^W4TMPORD@("DELT",N1)) S OK=1
 ..I 'OK S ER=ER_N_","
 ;
 D PUT^%W3DEB("W4ITDEL-SUBMIT","ER=ER")
 I ER D PUT^%W1PRM("DELROW",-4.5) Q +$$GET^%W1PRM("DELROW")
 ;
 ;
 S N="" F  S N=$O(@TMPORD@("DELT",N)) Q:N=""  S QNDELT=$G(^(N)) I QNDELT,N D
 .I '$$LVST(N) Q
 .S $P(@TMPORD@(N),"~",11)=-QNDELT
 ;
 K @TMPORD@("DELT")
 ;
 K @$$TMPD(JB)
 M @$$TMPD(JB)=^TMPORD(JB)
 ;
 D DEL2MV(HZM)
 ;
 K @TMPORD@("DEL")
 ;
 I 'TS K @$$TMPD1(JB) M @$$TMPD1(JB)=^TMPORD(JB)
 ;
 I $$MOVEFROM!TS,$D(@$$^W4MAIN("TMPMV"))<10 D PUT^%W1PRM("DELROW",-4.1)
 ;
 I $D(@$$^W4TMPORD)<10 D PUT^%W1PRM("DELROW",-4.2)
 ;
 I 'TS,$$GETP^%W1PRM("DELROW")<1 D KILLDEL Q +$$GETP^%W1PRM("DELROW")
 ;
 I '$$TOTORD^W3HZMST(JB),'$$TOTQN^W3HZMST(JB) D
 .D PUT^W3HZMST(JB,"HNH",0)
 .D PUT^W3HZMST(JB,"HNH2",0)
 .D PUT^W3HZMST(JB,"DMSH",0)
 .D PUT^W3HZMST(JB,"SOAD",0)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,$$NMB^W3HZMST(JB),0)
 ;
 I 'TS,'$$MOVEFROM D  I HZM<1 Q -9+HZM
 .S HZM=$$^W4NEWHZ(JB,HZM)
 ;
 I 'TS,$$MOVEFROM D
 .K @$$^W4MAIN("TMPMVD")
 .M @$$^W4MAIN("TMPMVD")=@$$^W4TMPORD
 ;
 I TS D NEWPART(HZM)
 ;
 I TBDEL D
 .N (JB,%ARG,HZM,MLZ)
 .S TBLDEL=$$TBDEL^W4PRM Q:'TBLDEL
 .S NEWHZ=+$$^W4HZFR(TBLDEL)
 .D PUT^%W1PRM("MVSD",0)
 .D PUT^%W1PRM("HZM",NEWHZ)
 .D PUT^%W1PRM("NMB",TBLDEL)
 .;
 .S RES=$$MVFROM^W4ORDVFN(3)
 .D KILL^%W1PRM("MVFROM")
 .D KILL^%W1PRM("MVSD")
 .D KILL^%W1PRM("HZM")
 .D KILL^%W1PRM("NMB")
 .D PUT^%W1PRM("DELROW",RES)
 ;
 Q +$$GETP^%W1PRM("DELROW")
 ;
 ;
QNTS(IND,NTS,FULL) ;
 I $G(FULL) S TS=$$ITRAST(IND) Q TS
 ;
 N INDO S INDO=IND
 N GL S GL=$$^W4TMPORD
 N A S A=$G(@GL@(IND))
 N QN S QN=1
 N TS S TS=$G(@$$^W4TMPORD@("TS",IND,NTS))
 ;
 N LV S LV=$$LV(A)
 ;
 I 'TS,LV=1 D  ; -- TOSAFOT RAGILOT
 .N QN1
 .N MRG S MRG=$$MRG^W3HZMST(JB,IND)
 .S QN1=$$QNST^W3HZMST(JB,IND,GL)
 .S QN=$S(QN1["*":$P(QN1,"*",2),1:QN1)
 .N I S I=IND F  S I=$O(@GL@(I),-1) Q:I=""  I I Q:'$$LVST(I)
 .Q:'I
 .N A0 S A0=$G(@GL@(I)),QN0=$P(A0,"~",5)
 .N CD0 S CD0=$$CDST^W3HZMST(JB,I,GL) I '$$^W4EZI(CD0),'MULTY Q
 .I QN1'["*",QN0,QN1\QN0*QN0=+QN1 S QN=QN1\QN0
 .I QN1["*" D
 ..N QN1R S QN1R=$$^W4QNR(QN1)
 ..I QN0 S QN=(QN1R-MRG)\QN0
 .S IND=I
 ;
 N QNR S QNR=$G(@$$^W4TMPORD@("TS",IND,NTS))*QN
 Q QNR
 ;
 ;
NEWPART(HZM,FULL)
 N MULTY S MULTY=$$^W4MULTY
 N NTS S NTS=$$NTS
 N TMPMV S TMPMV=$$^W4MAIN("TMPMV") K @TMPMV
 N K,K2,A,A1,QN,KP
 ;
 S K=0,K2=0,A1="",KP=1
 ;
 N PREZA S PREZA=0
 N A0 S A0=""
 ;
 N I S I="" F  S I=$O(@$$^W4TMPORD@(I)) Q:I=""  I I D
 .S A=$G(@$$^W4TMPORD@(I))
 .I $P(A,"~")=0 S K2=0,A1="",K=K+1 D  S A0=A
 ..I $P(A0,"~",6) S K=K+1
 .I $P(A,"~")=1,'$P(A,"~",2) S K2=0
 .D SETK2
 .;
 .S QN=$$QNTS(I,NTS,$G(FULL)) ;$G(@$$^W4TMPORD@("TS",I,NTS))
 .;
 .Q:QN'>0
 .N QN1,ST,N11
 .
 .I $P(A,"~")=0 D  Q
 ..S N11=I
 ..N PAR S PAR=$P(A,"~",2) S PREZA=$$^W4EZAT(PAR)
 ..;
 ..D SETTS(HZM,NTS,K,I,QN)
 ..
 ..I $$ITRAST(I)'>0 D  Q  ; -- IF FULL QN SIGNED
 ...N ITRA0 S ITRA0=""
 ...N N1 S N1=I
 ...F  S N1=$O(@$$^W4TMPORD@(N1)) Q:N1=""  S A=$G(^(N1)) Q:'$$LVST(N1)  S N11=N1 I $P(A,"~")=1,$P(A,"~",2) D
 ....D SETK2
 ....S QN1=$$ITRAST(N1) Q:QN1'>0
 ....S QN1=$$^W4QNR(QN1)
 ....S N11=$$SETTS1(HZM,NTS,A,N1,QN1)
 ..S I=N11
 .
 .I $P(A,"~")=1,$P(A,"~",2) D
 ..S I=$$SETTS1(HZM,NTS,A,I,QN)
 ;
 K @$$^W4ORD@(HZM,"PART",NTS)
 M @$$^W4ORD@(HZM,"PART",NTS)=@TMPMV
 S @$$^W4ORD@(HZM,"PART",NTS)=$G(@$$^W4TMPORD)
 ;
 N J F J=8,9,12,17 S $P(@$$^W4ORD@(HZM,"PART",NTS),"~",J)=""
 S $P(@$$^W4ORD@(HZM,"PART",NTS),"~",11)=$$TOTORD^W3HZMST(JB,"",TMPMV)
 K @TMPMV
 K @$$^W4MAIN("TMPMVD")
 I '$$PCBILLPART(HZM,NTS) D PUT^%W1PRM("DELROW",-4.9)
 Q
 ;
 ;
SETK2 ;
 I $P(A,"~") D
 .I $P(A,"~")=1,$P(A,"~",1,2)'=$P(A1,"~",1,2),$P(A,"~",2) S K2=1,A1=A Q
 .I $P(A,"~")=2 S K2=K2+1
 Q
 ;
SETI ;
 S STS=$P(ST,"\",13)
 I '$G(I) S $P(STS,";",NTS)=""
 E  S $P(STS,";",NTS)=QN_":"_I
 Q
 ;
 ;
SETTS(HZM,NTS,K,I,QN) ;
 ;W "SETTS: NTS="_NTS_" K="_K_" I="_I,! ; ***
 D SETTSORD(HZM,NTS,K,I,QN)
 ;
 N ST
 ;
 I $G(QN) D
 .S KP=KP+1 I $D(@TMPMV@(KP)) K ITRA0 Q
 .S ST=$G(@$$^W4TMPORD@(I))
 .S $P(ST,"~",5)=QN
 .S @TMPMV@(KP)=ST
 .S @$$^W4TMPORD@("TS",I,NTS)=QN
 Q
 ;
 ;
SETTSORD(HZM,NTS,K,I,QN) ;
 I '$D(@$$^W4ORD@(HZM,+K)) Q
 S I=$G(I),QN=$G(QN)
 ;
 I I,QN D
 .S @$$^W4ORD@(HZM,"TS",K,NTS)=QN
 .S @$$^W4ORD@(HZM,"TS",K,"O2T")=I
 ;
 I K'["-" D 
 .N ST,STS S ST=$G(@$$^W4ORD@(HZM,K)) Q:ST=""
 .D SETI
 .S $P(@$$^W4ORD@(HZM,K),"\",13)=STS
 ;
 I $L(K,"-")=2,$P(K,"-",2) D
 .N ST S ST=$G(@$$^W4ORD@(HZM,+K,+$P(K,"-",2))) Q:ST=""
 .N STS D SETI
 .S $P(@$$^W4ORD@(HZM,+K,$P(K,"-",2)),"\",13)=STS
 ;
 I $L(K,"-")=3,$P(K,"-",3) D
 .N ST S ST=$G(@$$^W4ORD@(HZM,+K,+$P(K,"-",2),+$P(K,"-",3))) Q:ST=""
 .N STS D SETI
 .S $P(@$$^W4ORD@(HZM,+K,$P(K,"-",2),+$P(K,"-",3)),"\",13)=STS
 Q
 ;
 ;
SETTS1(HZM,NTS,A,I,QN1) ;
 I '$G(QN1) Q I
 ;W "SETTS1: NTS="_NTS_" A="_A_" I="_I,!
 S K=+K_"-"_$P(A,"~",2)
 I $G(PREZA) S K=K_"-"_K2
 D SETTS(HZM,NTS,K,I,QN1)
 N QN
 S A1=A
 N N2,N21,QN20 S N21=I
 S N2=I
 F  S N2=$O(@$$^W4TMPORD@(N2)) Q:N2=""  I N2 S A=$G(^(N2)) Q:$$LVST(N2)<2&'$$CDC(A)  D
 .Q:$$LVST(N2)<2
 .S N21=N2
 .S QN2=$$QNST^W3HZMST(JB,N2),QN20=QN2
 .I QN2["*" S QN2=$P(QN2,"*",$L(QN2,"*"))
 .D SETK2 S K=$P(K,"-",1,2) I $G(PREZA) S K=K_"-"_K2
 .D
 ..S QN=QN2
 ..I QN20["*" S QN=QN1*QN Q
 ..I QN2\QN1*QN1=+QN2 S QN=QN1*(QN2\QN1)
 .I 'QN Q 
 .D SETTS(HZM,NTS,K,N2,QN)
 ;
 Q N21
 ;
 ;
PCBILLPART(HZM,NTS) ;
 N HZ S HZ=$$^W4PARTGT(HZM,NTS)
 ;
 N RES
 S RES=$$PCHSB^W4MENUBT(-JB)
 K @$$^W4ORD@(-JB)
 D KORD^W4TMPORD(JB)
 Q RES
 ;
KILLDEL ;
 D KILLUR^W4MENU("ITD")
 ;;I '$$MOVEFROM D KORD^W4TMPORD(JB)
 Q
 ;
LNDN(STAM) ;
 D TMPS
 N K S K=+$$CUR+1
LNDN1 I '$D(@$$^W4TMPORD@($$IND(K))) Q -1
 I '$$DELK(K) S K=K+1 G LNDN1
 ;
 N II
 I $$LVST($$IND(K))=0,$$LVST($$IND(K)+1) D  I $$INDK(II)>$$LAST D SETBEG(K) G LNDN2
 .F II=$$IND(K)+1:1 Q:'$D(@$$^W4TMPORD@(II))  Q:'$$LVST(II)
 .I '$D(@$$^W4TMPORD@(II)) S II=II-1
 ;
 I K>$$LAST D SETBEG(K-$$RL+1)
LNDN2 ;
 D SETCUR(K)
 Q 1
 ;
 ;
LNUP(STAM) ;
 D TMPS
 N K S K=$$CUR-1
LNUP1 I K<1 Q -1
 I '$$DELK(K) S K=K-1 G LNUP1
 I K'>$$PREVLAST D SETBEG(K) G LNUP2
LNUP2 ;
 D SETCUR(K)
 Q 1
 ;
 ;
PGDN(STAM) ;
 D TMPS
 N K S K=$$BEG+$$RL ;;$$LAST+1
 I '$D(@$$^W4TMPORD@($$IND(K))) Q -2
 I '$$DELK(K) F  S K=K-1 Q:$$DELK(K)=1
 D SETBEG(K)
 I $$DELK(K)=1 D SETCUR(K)
 Q 1
 ;
PGUP(STAM) ;
 D TMPS
 N II,K
 S K=$$BEG-$$RL
 I K<1 S K=1
 D SETBEG(K)
 ;;S K=K+$$RL-2
 I '$$DELK(K) F  S K=K+1 Q:$$DELK(K)=1
 I $$DELK(K)=1 D SETCUR(K)
 Q 1
 ;
 ;
PLUS(ORD) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 ;
 N A S A=$G(@$$^W4TMPORD@(CURI))
 N LVI S LVI=$$LVST^W3HZMST(JB,CURI)
 N SH0 S SH0=$$SH0^W3HZMST(JB,CURI) I 'SH0 Q -2.1
 I LVI=1,'$G(@$$^W4TMPORD@("DEL",SH0)) Q -2.5
 N QNOLD S QNOLD=$$QNDEL(CURI)
 N ITRAST S ITRAST=$$ITRAST(CURI)
 I QNOLD'<ITRAST Q -3
 ;
 ;;N CHKQN S CHKQN=$$CHKQN(CURI)
 ;;S ^AA("W4ITDEL-PLUS","CHKQN")=CHKQN
 ;;I $$LV(A),'CHKQN Q -3
 ;;I $$LV(A),CHKQN<0 Q CHKQN
 ;
 N ITRAHZ,TOTDEL
 S ITRAHZ=$$ITRA^W4HZMST(ORD)
 ;;W "ITRAHZ="_ITRAHZ,!
 N QNDEL S QNDEL=QNOLD+1 I QNDEL>ITRAST S QNDEL=ITRAST
 ;
 D SETDEL(CURI,QNDEL)
 S TOTDEL=$$TOTDEL(ORD)
 D PUT^%W3DEB("W4ITDEL-PLUS","ITRAHZ=ITRAHZ & TOTDEL = TOTDEL")
 ;
 ;;S ^AA("W4ITDEL","TOTDEL")=TOTDEL
 ;;S ^AA("W4ITDEL","ITRAHZ")=ITRAHZ
 I TOTDEL-.1>ITRAHZ,'$$^W4CLOSE(ORD) D  Q -5
 .D SETDEL(CURI,QNOLD,1)
 Q CURI
 ;
 ;
MIN(STAM) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 I $$QNDEL(CURI)<1 Q -4
 D SETDEL(CURI,$$QNDEL(CURI)-1)
 Q CURI
 ;
ALL(ORD) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 N QNOLD S QNOLD=$$QNDEL(CURI)
 N IST S IST=$$ITRAST(CURI)
 D SETDEL(CURI,IST)
 N ITRAHZ,TOTDEL
 S ITRAHZ=$$ITRA^W4HZMST(ORD)
 S TOTDEL=$$TOTDEL(ORD)
 D PUT^%W3DEB("W4ITDEL-ALL","ITRAHZ=ITRAHZ & TOTDEL = TOTDEL")
 I TOTDEL-.1>ITRAHZ D  Q -5
 .D SETDEL(CURI,QNOLD,1)
 Q CURI
 ;
UR(STAM) Q "ITD"
 ;
SETLAST(K) ;
 D TMPS
 S @TMPS@($$UR,"LAST")=K
 Q
 ;
SETBEG(K) ;
 D TMPS
 S @TMPS@($$UR,"BEG")=K
 Q
 ;
SETCUR(K) ;
 D TMPS
 I '$$DELK(K) D
 .F  S K=K-1 Q:K<2  Q:$$DELK(K)
 I K<$$BEG D SETBEG(K)
 S @TMPS@($$UR,"CUR")=K
 Q
 ;
LAST(STAM)
 D TMPS
 Q $G(@TMPS@($$UR,"LAST"))
 ;
BEG(STAM)
 D TMPS
 Q $G(@TMPS@($$UR,"BEG"))
 ;
PREVLAST(STAM) ;
 D TMPS
 Q $$BEG-1
 ;
ENDPAGE(STAM)
 I '$D(@$$^W4TMPORD@($$IND($$LAST+$$RL))) Q 1
 Q 0
 ;
FIRSTPAGE(STAM) ;-- IF THE FIRST PAGE
 I '$D(@$$^W4TMPORD@($$IND($$LAST-$$RL))) Q 1
 Q 0
 ;
RL(STAM) ;---- RAZMER LISTA ( SK STROK)
 D TMPS
 Q $G(@TMPS@($$UR,"RL"))
 ;
IND(K) ; K --> I
 D TMPS
 Q +$G(@TMPS@($$UR,+K))
 ;
INDK(I) ; I --> K
 D TMPS
 N KK F KK=1:1 Q:'$D(@TMPS@($$UR,KK))  I ^(KK)=I Q
 I '$D(@TMPS@($$UR,KK)) Q 0
 Q KK
 ;
DEL(I) ;
 I $D(@$$^W4TMPORD@("DEL",I)) Q 1
 I $D(@$$^W4TMPORD@("DELT",I)) Q 2
 Q 0
 ;
DELK(K) ;
 Q $$DEL($$IND(K))
 ;
QNDELK(K) ;
 Q $$QNDEL($$IND(K))
 ;
 ;
SETDEL(I,VL,CNC) ;
 N K
 I $$LVST(I)>0 D  Q
 .N LV S LV=$$LVST(I)
 .N QN S QN=$$QNST(I) Q:$$^W4QNR(QN)'>0
 .S @$$^W4TMPORD@("DELT",I)=VL
 ;
 ;-- LV=0
 N CD0 S CD0=$$CDST^W3HZMST(JB,I)
 N IT0 S IT0=$$ITRAST(I)
 S @$$^W4TMPORD@("DEL",I)=VL
 N PRADD S PRADD=0 I $$^W4EZI(CD0)=1 S PRADD=1
 I $$^W4MULTY!(+VL=+IT0)!$G(CNC)!PRADD,VL>0 D SETDEL1(I,VL,IT0) Q
 ;
 Q
 ;
 ;
SETDEL1(I,VL,IT0) ;
 I '$G(IT0) Q
 N I1,VL1 S I1=I F  S I1=$O(@$$^W4TMPORD@(I1)) Q:I1=""  I I1 Q:'$$LVST(I1)  D
 .N A S A=$G(^(I1))
 .N IT1 S IT1=$$ITRAST(I1)
 .N QNT S QNT=$P(A,"~",5),VL1=VL
 .I VL=0 S @$$^W4TMPORD@("DELT",I1)=0 Q
 .
 .I +VL=+IT0 D  Q
 ..S VL1=$$^W4QNR(IT1)
 ..S @$$^W4TMPORD@("DELT",I1)=VL1
 .
 .N QN2 S QN2=IT1\IT0
 .I $P(A,"~")'=1 Q
 .I $$^W4QNR(QNT)'>0 Q
 .S VL1=$$^W4QNR(+VL_"*"_QN2)
 .I VL1'>0 Q
 .S @$$^W4TMPORD@("DELT",I1)=VL1
 Q
 ;
SETDELK(K,VL) ;
 D SETDEL($$IND(K),VL)
 Q
 ;
NEW(STAM) ;
 I $$GET^%W1PRM("W4ITDELNEW") Q 1
 Q 0
 ;
TMPS ;
 D TMPS^W4MENU
 Q
 ;
ITRAST(I)
 Q $$ITRAST^W3HZMST(JB,I,"",1)
 ;
TOTDEL(ORD) ;  -- HOW MUCH DELETED (NIS)
 N SUM,QNDEL,MH,TSF,A,DISCP S SUM=0,DISCP=0
 ;
 N N S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""  D
 .S QNDEL=$G(@$$^W4TMPORD@("DEL",N))
 .S A=$G(@$$^W4TMPORD@(N))
 .S MH=$$MH(A),TSF=$$TSF(N,QNDEL)
 .I $$LVST(N)=0 S DISCP=$$AHST^W3HZMST(JB,N)
 .S SUM=SUM+((QNDEL*MH+TSF)*(100-DISCP)*.01)
 ;
 I $$HNHAH^W4HZMST(ORD) S SUM=SUM*(100-$$HNHAH^W4HZMST(ORD))*.01
 Q $J(SUM,2,2)
 ;
 ;
TSF(N,QNDM) ; -- SUM TSF NA ED
 N A,N1,TSF,LV S TSF=0
 N PREZAT S PREZAT=$$PREZATI(N,$$QNDEL(N))
 S N1=N
 F  S N1=$O(@$$^W4TMPORD@(N1)) Q:N1=""  I N1 S LV=$$LVST(N1) Q:LV=0  D
 .S A=$G(^(N1))
 .N QND,MHD
 .I $$ITRAST(N1)'>0 Q
 .S QND=$$QNDELT(N1,LV,QNDM) I QND<0 Q
 .S MHD=$$MHST(N1)
 .;;W "N1="_N1_"  A="_A_" QND="_QND_"  MHD="_MHD,! ; ***
 .S TSF=TSF+(QND*MHD) D  Q
 ..;;W "TSF="_TSF,!! ; ***
 .I PREZAT,'$$QNDEL(N1) Q
 .I PREZAT S TSF=TSF+(QND*MHD) Q  ; -- AI NOMULTY
 .S TSF=TSF+(QNDM*$$QNST(N1)*$$MHST(N1))
 Q TSF
 ;
SHOWRKV(RKV,ID,PRM,STYLE) ;
 N OU S PRM=$G(PRM)
 S OU=$G(RKV)
 I $G(RKV)'="" S OU=$S($G(PRM)="H":$$H2U^%L1FRM(RKV),1:RKV)
 I $G(PRM)["." S OU=$J(OU,2,2)
 N ST
 S ST="<input type=""text"" size=""6"" readonly=""readonly"""
 S ST=ST_" style=""font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_";text-align:center;"_$G(STYLE)_""""
 S ST=ST_" id="""_ID_""" "
 S ST=ST_$S(PRM="N"!(PRM["."):"dir=""LTR""",PRM="H":"dir=""LTR""",1:"")
 S ST=ST_" value="""_OU_""" "
 Q ST
 ;
MOVEFROM(STAM) ;
 Q $$^W4MVFROM
 ;
TS(STAM) ;
 Q $G(%ARG("TS"))
 ;
PREZATI(IND,QNDEL) ;
 Q $$PREZATI^W3HZMST(JB,IND,QNDEL)=2
 ;
 ;
CHKQN(IND) ;
 N TMPTF,TMPORD,SQN,A,N,BGSET,SQNDEL,CD,STMAIN,STSET,PAR,QNPAR,NSET
 ;
 S TMPORD=$$^W4TMPORD
 ;
 S QNDELPAR=$$QNDELPAR(IND) I QNDELPAR="" Q 1
 ;
 I 'QNDELPAR Q -4.4
 ;
 S NSET=$$NSET(IND)
 I NSET="" Q 1
 ;
 S MAX=$P($G(@$$^W4GL("P1SETA")@(NSET)),"\",2)
 I 'MAX Q 1
 ;
 K MQN,CD
 S SQNDEL=0
 S N=$$FNDA(IND)
 ;
 F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0  Q:$$CDA(A)  D
 .I $$LV(A)'=1 Q
 .N QND S QND=$$QNDEL(N)
 .S SQNDEL=SQNDEL+QND
 .;;W " QND="_QND_"  SQNDEL="_SQNDEL,!
 ;
 ;;W " QNDELPAR="_QNDELPAR_"  MAX="_MAX,!
 I (SQNDEL+1)>(QNDELPAR*MAX) Q 0
 Q 1
 ;
 ;
QNDELPAR(IND)
 N A,N
 S A="" D TMPORD
 S N=IND F  S N=$O(@TMPORD@(N),-1) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0
 I N="" Q N
 Q $$QNDEL(N)
 ;
 ;
NSET(IND) ;
 D TMPORD
 N A,N,STA,STSET,NSET
 S A=""
 S N=IND
 S N=$$FNDA(IND) I N="" Q ""
 S A=$G(@TMPORD@(N))
 ;
 S STSET=A
 S NSET=$E($$CD(STSET),2,6)
 Q NSET
 ;
 ;
FNDA(IND)
 N A,N D TMPORD
 S N=IND
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0  Q:$$CDA(A)
 I '$$CDA(A) Q ""
 Q N
 ;
TMPORD ;
 S TMPORD=$$^W4TMPORD
 Q
 ;
NTS(STAM) ;
 Q $O(@$$^W4ORD@(HZM,"PART",999),-1)+1
 ;
DEL2MV(HZM) ;
 N N,QNDEL
 I '$G(MLZ) S MLZ=$$MKBL^W4HZMST(HZM)
 ;
 S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""  S QNDEL=$G(^(N)) I QNDEL D  Q:$$GETP^%W1PRM("DELROW")<1
 .I $$LVST(N) Q
 .N W4ITDEL S W4ITDEL="" ; -- VIB UD-E TOSAFOT PO QNDIF
 .I $G(TS) S W4ITDEL=$$NTS(HZM)
 .D DELNOMOD^W4HZORD(N,QNDEL,MLZ,$G(MNL),MV) ; -- MNL NOT DEFINED ??
 Q
 ;
 ;
INIT ; 
 D ^%W1ARG,^W4CSS
 ;
 I $G(%ARG("NEW")) D
 .D INITUR^W4MENU("ITD")
 .S @TMPS@("ITD","RL")=14
 .K @$$^W4TMPORD@("DEL"),@$$^W4TMPORD@("DELT")
 .D PUT^%W1PRM("W4ITDELNEW",1)
 Q 
 ;
 ;
TMPD(JB) ; 
 Q "^|"""_$$^W3MAIN_"""|TMPD("_JB_")"
 ; 
TMPD1(JB) ; 
 Q "^|"""_$$^W3MAIN_"""|TMPD1("_JB_")"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ITDEL0
W4ITDEL(ORD) ; [ 09.08.15 09:00 ] [ 19.04.15 15:55 ] [ 14.02.15 09:06 ]
 ;----------------------------------------------------------------------------
 ; K - POR NOM V TBL
 ; I - NOM ST V ^TMPORD
 ;----------------------------------------------------------------------------
 N (%ARG,JB,ORD,%REM)
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W4ITDEL")
 D PUT^%W3DEB("W4ITDEL","W3ORDLS=W3ORDLS & ARG=[%ARG")
 Q:'$G(ORD)
 ;
 I $$NEW Q:$$^W4GETHZ(ORD)'=1  ; --- IF FIRST VIEW THEN ORDER --> ^TMPORD
 ;
 I $$MOVEFROM D
 .K @$$^W4MAIN("TMPMVD0")
 .M @$$^W4MAIN("TMPMVD0")=@$$^W4TMPORD
 ;
 D NOSELECT^%W1JS
 D TMPS
 ;
 D W("<div align=""center"">")
 ;
 D W("<table width=""100%"" cellspacing=""0"" class=""vw"" border=""1"" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >")
 N TR S TR="<tr style=""background-color:"_$$FNFG^W4CSS_";color:white"">"
 D W(TR)
 S CC=0
 S CC=CC+1 D W("  <th style=""width:5%"">"_$$^%W1DICT("NPP")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:24%"">"_$$^%W1DICT("ITEMNAME")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("QUANT")_"</th>")
 S CC=CC+1  D W("  <th>"_$$^%W1DICT("COMMENT2KITCHEN")_"</th>")
 S CC=CC+1 D W("  <th style=""width:15%"">"_$$^%W1DICT($S($$MOVEFROM:"MVQUANT",1:"DELQUANT"))_"</th>")
 D W(" </tr>")
 ;
 W ! S PR0=0
 N L,K,K0,IL,ITRA
 S L=$$BEG S:L<1 L=1 S K=L
 ;
 S CUR=1
 I '$$NEW S CUR=$$IND($$CUR)
 ;
 S SIZEPAGE=470,RSIZE=0
 ;
 S IL=L I L>1 S IL=$$IND(L) ; -- NP TBL --> IND TMPORD
 ;
 S K0=K,FIRSTSIZE=1,ITRA=0,FLCUR=0,FLCUR0=0,FLDEL=0,PRT=""
 ;
 N I F I=IL:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .N A S A=$G(^(I))
 .I $$NEW S @TMPS@($$UR,K)=I
 .
 .I $$LV(A)=0 D  ; --------------- MAIN ITEM
 ..S ITRA=$$ITRAST(I)
 ..I ITRA'>0 S PR0=0 Q
 ..I $$^W4CDSRV($$CD^W3HZMST(A)) S PR0=0 Q
 ..S PR0=1,QNIT1=""
 ..I RSIZE+40>SIZEPAGE,FIRSTSIZE D SETLAST(K0) S FIRSTSIZE=0
 ..S RSIZE=RSIZE+40
 ..
 ..S FLCUR=0 I I=CUR S FLCUR=1
 ..S PRFULL=0
 ..I I=$$IND($$CUR),$$ITRAST^W3HZMST(JB,I)-$$QNDEL(I)<1 S PRFULL=1
 ..S FLDEL=0 I $$QNDEL(I) S FLDEL=1
 ..
 ..S ST="<tr id=""LV0"_I_""" name=""LV0"_I_""" "
 ..S ST=ST_" class="""_$S(K=1&$$NEW!(I=CUR):"vwc",$$QNDEL(I):"vwd",1:"vw0")_""""
 ..S ST=ST_" style=""height:40px"" "
 ..S ST=ST_" onMouseUp=""SetCur('"_$$INDK(I)_"')"">"
 ..D W(ST)
 ..S K0=K D K ; -- SHOW K
 ..
 ..S PRT=$$CD(A)
 ..
 ..D W("  <td>&nbsp;"_PRT_"</td>")
 ..
 ..D W("   <td style='font-size:"_$$^W3FSZ_"'>&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N MH S MH=$$MH(A)
 ..D W("   <td align=""center"" dir=""LTR"">&nbsp;"_MH_"</td>")
 ..
 ..D W("   <td align=""center"" dir=""LTR"">&nbsp;"_ITRA_"</td>")
 ..
 ..D CMTD ; ---- SHOW COMMENT
 ..
 ..D W("   <td align=""center"" dir=""LTR"" >")
 ..D W("     <input type=""text"" id=""QND"_I_""" size=""2"" value="""_$$QNDEL(I)_""" style=""text-align:center"" readonly=""readonly""/>")
 ..D W("   </td>")
 ..
 ..I '$$DEL(I) S @$$^W4TMPORD@("DEL",I)=""
 ..
 ..D W("</tr>")
 .
 .I $$LV(A)>0 D  ; --------------- ADDONS ---------
 ..I $$CDA(A) Q
 ..I $$CDC(A) Q
 ..Q:'PR0
 ..Q:$$QNR(A)'>0
 ..S ITRAT=$$ITRAST^W3HZMST(JB,I)
 ..I ITRAT'>0 Q
 ..I ITRAT,'ITRA S ITRAT=""
 ..S ITRAT=ITRAT_$$DOP^W4PIZZA($$QNST^W3HZMST(JB,I))
 ..
 ..I $$LV(A)=1 S QNIT1=$$QNIT1^W3HZMST(JB,I)
 ..
 ..I $$LV(A)=2 D  I QNIT1'>0 Q
 ...I 'QNIT1 S QNIT1=1
 ...N QN2 S QN2=$$QNST^W3HZMST(JB,I)
 ...D
 ....I QN2["*" S QN2=QNIT1_"*"_+$P(QN2,"*",2)_$$PCQN^W4PIZZA(QN2) Q
 ....I QN2>QNIT1 S QN2=QN2\QNIT1_$$PCQN^W4PIZZA(QN2) Q
 ....S QN2=QNIT1_"*"_+QN2_$$PCQN^W4PIZZA(QN2)
 ...;
 ...S ITRAT=QN2
 ..
 ..N PREZAT S PREZAT=0
 ..I $$^W4EZAT(PRT) D
 ...I $$^W4MULTY S PREZAT=0
 ...I '$$^W4MULTY S PREZAT=$S(ITRA>1:2,1:1)
 ..
 ..I PREZAT D
 ...S FLCUR=0 I I=CUR S FLCUR=1
 ...I $$LV(A)=2,$$IND1(I)=CUR S FLCUR=1
 ...S FLDEL=0 I $$QNDEL(I) S FLDEL=1
 ..;
 ..I PRFULL S FLCUR=1
 ..
 ..I 'PREZAT,$$LV(A)=1,ITRA>1!$$QNPZ^W4PIZZA(ITRAT) D
 ...S:ITRAT["*" ITRAT=$P(ITRAT,"*",2)
 ...S ITRAT=ITRA_"*"_(ITRAT\ITRA)_$$PCQN^W4PIZZA(ITRAT)
 ..
 ..S RSIZE=RSIZE+25
 ..
 ..S ST="<tr style=""background-color:"
 ..S ST=ST_$S(FLCUR:"yellow",FLDEL:"lightyellow",1:"white")_";color:"_$$COLORADD^W4CSS($$LV(A))_""""
 ..S ST=ST_" id=""LV1"_I_""" name=""LV1"_I_""" "
 ..I PREZAT S ST=ST_" onMouseUp=""SetCur('"_$$INDK(I)_"')"" "
 ..S ST=ST_">"
 ..D W(ST)
 ..
 ..D K
 ..D W("    <td>&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..
 ..D W("   <td") ; --- NAME
 ..I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N ST S ST="   <td dir=""LTR"" style=""text-align:center" ; --- MH
 ..N MH S MH=$$MH(A)
 ..I MH S ST=ST_";color:black"
 ..S ST=ST_""""
 ..S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:MH)_"</td>"
 ..D W(ST)
 ..;
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ITRAT)_"</td>"
 ..D W(ST)
 ..
 ..D CMTD ; -- SHOW COMMENT
 ..
 ..I PREZAT&($$LV(A)=1),'PRFULL D
 ...D W("   <td align=""center"" dir=""LTR"" >")
 ...S ST="     <input type=""text"" id=""QND"_I_""" size=""2"" "
 ...S ST=ST_" value="""_$$QNDEL(I)_""""
 ...S ST=ST_" style=""text-align:center"" readonly=""readonly"" >"
 ...D W(ST)
 ...D W("   </td>")
 ...I '$$DEL(I) S @$$^W4TMPORD@("DELT",I)=""
 ..
 ..I 'PREZAT!($$LV(A)=2)!PRFULL D
 ...D W("   <td dir=""LTR"" style=""text-align:center"">&nbsp;</td>")
 ..
 ..D W("  </tr>")
 ;
 W !
 ;
 D W("</table>")
 D W("</div>")
 D W("<br>")
 D PUT^%W1PRM("W4ITDELNEW",0)
 Q
 ;
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
LV(A) Q $P(A,"~")
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(ORD) N JB S JB=+ORD
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CD(A) ;
 N NM
 S NM=$P(A,"~",2)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 Q $J(MH,2,2)
 ;
QN(A) ;-- SK OSTALOS
 N QN
 S QN=$P(A,"~",5)
 I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN["*" Q ITRA_"*"_$P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNR(A) ;
 N QN S QN=$$QN(A)
 I QN["*" Q $P(QN,"*")*$P(QN,"*",2)
 Q QN
 ;
AHP(A) ;
 N AHP
 S AHP=$P(A,"~",6)
 I AHP="" Q "&nbsp;"
 Q AHP
 ;
QNST(I) ;-- PERVONACH K-VO
 N QNST
 S QNST=$$QNST^W3HZMST(JB,I)
 I QNST["*" Q $P(QNST,"*",2)
 Q QNST
 ;
MHST(I) ;
 Q $$MHST^W3HZMST(JB,I)
 ;
LVST(I) ;
 Q $$LVST^W3HZMST(JB,I)
 ;
QNDEL(I) ;--- SK UDALILI
 N QN S QN=$$QNST^W3HZMST(JB,I)
 N QNDM,I1
 F I0=I:-1:1 Q:$$LVST^W3HZMST(JB,I0)=0
 S QNDM=+$G(@$$^W4TMPORD@("DEL",I0))
 I $$LVST(I)=0 Q QNDM
 I 'QNDM Q 0
 ;
 I +QNDM=+$$ITRAST^W3HZMST(JB,I0),$$LVST(I)>0 Q +$$ITRAST^W3HZMST(JB,I)
 ;
 I QN["*",$$LVST(I)=1 Q QNDM*$P(QN,"*",2)
 ;
 I $$LVST(I)=1 Q +$G(@$$^W4TMPORD@("DELT",I))
 ;
 N QND
 I $$LVST(I)=2 D  Q QND
 .N QN2 S QN2=$$QNSTA^W3HZMST(JB,I)
 .N I1 F I1=I-1:-1:1 Q:$$LVST^W3HZMST(JB,I1)<2
 .N QN1 S QN1=0
 .I $$LVST^W3HZMST(JB,I1)=1 S QN1=+$G(@$$^W4TMPORD@("DELT",I1))
 .;;W "I="_I_"  I1="_I1_"  QN1="_QN1_" QN2="_QN2,!
 .S QND=QN1*QN2
 ;
 S QND=+$G(@$$^W4TMPORD@("DEL",I))
 Q QND
 ;
 ;
SUM(A) Q $J($$QNR(A)*$$MH(A)*(100-$$AHP(A))*.01,2,2)
 ;
NMTD(SH) ;
 Q "QN"_SH
 ;
NMTDI(SH) ;
 Q "QNID"_SH
 ;
CMTD ;
 D W("   <td id=""cmtd"_I_""" class=""hdgr"" style=""font-size:"_$$^W3FSZ_";text-align:center"" >&nbsp;")
 W $$H2U^%L1FRM($$CMST^W3HZMST(JB,I))
 D W("   </td>")
 Q
 ;
HD ;
 Q
 ;
IND0(I) ;
 N A S A=""
 N I1 F I1=I-1:-1:1 Q:'$D(@$$^W4TMPORD@(I1))  S A=$G(^(I1)) I '$$LV(A) Q
 I $$LV(A)=0 Q I1
 Q ""
 ;
IND1(I) ;
 N A S A=""
 N I1 F I1=I-1:-1:1 Q:'$D(@$$^W4TMPORD@(I1))  S A=$G(^(I1)) I $$LV(A)<2&'$$CDC(A) Q
 I $$LV(A)=1&'$$CDC(A) Q I1
 Q ""
 ;
K ;
 D W("  <td style=""text-align:center;background-color:yellow"">"_K_"</td>")
 S K=K+1
 Q
 ;
CUR(STAM) D TMPS Q $G(@TMPS@($$UR,"CUR"))
 ;
W(TXT)
 W TXT,!
 Q
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
 ;
KB(ORD) ; ---- TOP & BOTTOM BUTTONS ----------------
 W "<div align=""left"" style=""position:absolute;top:0px;height:80px;width:99%"">"
 D HEAD^W4PAYHD(ORD)
 W "</div>",!
 ;
 W "<div align=""left"" style=""position:absolute;top:630px;width:99%"">"
 D BOTTOM(ORD)
 W "<br />",!
 D W("<table width=""100%"" cellspacing=""0"" class=""vw"" border=""0"" dir="""_$$^%W1DIR_""" >")
 N OKTSF S OKTSF=0
 D W("<tr>")
  D W("<td width=""11%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNDN")_""" onMouseUp=""LineDown()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNUP")_""" onMouseUp=""LineUp()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" style=""width:70%"" value=""+"" onMouseUp=""DelPlus('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" style=""width:70%"" value=""-"" onMouseUp=""DelMin('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("QNALL")_""" onMouseUp=""DelAll('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""12%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGDN")_""" onMouseUp=""PageDown()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGUP")_""" onMouseUp=""PageUp()"") />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" style=""color:green;width:80%"" value="""_$$^%W1DICT("SUBMIT")_""" onMouseUp=""Submit('"_ORD_"')"") />")
  D W("</td>")
  ;
  D W("<td width=""16%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" style=""color:red;width:95%"" value="""_$$^%W1DICT("CANCELACTION")_""" onMouseUp=""Back()"") />")
  D W("</td>")
  ;
 D W("</tr>")
 D W("</table>")
 W "</div>"
 Q
 ;
 ;
BOTTOM(ORD) ;----------- BOTTOM INFORMATION ---
 W "<table border=""0"" dir="""_$$^%W1DIR_""" width=""100%"" cellpadding=""7px"" class=""hdord"">",!
  W "<tr>"
   W "<td width=""10%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    N AHUZ S AHUZ=+$$HNHAH^W4HZMST(ORD)
    I $J($$TOTHN^W4HZORD(ORD)*AHUZ*.01,0,0)'=$J($$HNH^W4HZMST(ORD),0,0) S AHUZ=""
    W $$^%W1DICT("DISC",+AHUZ_"%")
   W "</td>",!
   ;
   W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT("TOPAY")_"</td><td width=""11%"" align=""center"">"
    W $$SHOWRKV($$TSHL^W4HZMST(ORD),"tsh",".")
   W "</td>",!
   ;
   W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""" >"
    W $$^%W1DICT("PAID")_"</td>"
    W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""">"
    W $$SHOWRKV($$SHUL^W4HZMST(ORD)+$$SHULA^W4HZMST(ORD),"shul",".")
   W "</td>",!
   ;
   W "<td width=""14%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT("ITRA2PAY")_"</td><td width=""11%"" align=""center"">"
    W $$SHOWRKV($$ITRA^W4HZMST(ORD),"i2p",".")
   W "</td>",!
   ;
   W "<td width=""14%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT($S($$MOVEFROM:"TOTMOVE",1:"TOTDEL"))_"</td>"
    W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
    W $$SHOWRKV($$TOTDEL(ORD),"totdel",".","color:red")
   W "</td>",!
   ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
SUBMIT(HZM) ;
 D PUT^%W3DEB("W4ITDEL-SUBMIT","HZM=HZM")
 D KILL^%W1PRM("DELROW") ; -- DELETE ERROR CODE
 ;
 N MV S MV=$P(HZM,";",2)
 ;
 S HZM=$P(HZM,";")
 ;
 N MLZ S MLZ=$$MKBL^W4HZMST(HZM)
 S MNL=$$^W4WHODEL
 ;
 N I,LAST,N
 S LAST=$O(@$$^W4TMPORD@(999999),-1)
 ;
 I $$MOVEFROM D
 .K @$$^W4MAIN("TMPMV")
 .S @$$^W4MAIN("TMPMV")=LAST+1
 ;
 N TMPORD D TMPORD
 N CD,ER S ER=""
 S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""   S QNDEL=$G(^(N)) I QNDEL D  Q:$$GET^%W1PRM("DELROW")<1
 .S CD=$$CDST^W3HZMST(JB,N)
 .I $$^W4EZAT(CD),$$LVST^W3HZMST(JB,N)=0,QNDEL<$$ITRAST^W3HZMST(JB,N) D
 ..N N1,OK S OK=0
 ..F N1=N+1:1 Q:'$D(@$$^W4TMPORD@(N1))  Q:'$$LVST^W3HZMST(JB,N1)  D
 ...I $G(@$$^W4TMPORD@("DELT",N1)) S OK=1
 ..I 'OK S ER=ER_N_","
 ;
 I ER D PUT^%W1PRM("DELROW",-4.5) Q +$$GET^%W1PRM("DELROW")
 ;
 S N="" F  S N=$O(@TMPORD@("DELT",N)) Q:N=""  S QNDELT=$G(^(N)) I QNDELT,N D
 .I '$$LVST^W3HZMST(JB,N) Q
 .S $P(@TMPORD@(N),"~",11)=-QNDELT
 ;
 K @TMPORD@("DELT")
 ;
 M ^TMPD(JB)=^TMPORD(JB)
 ;
 S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""   S QNDEL=$G(^(N)) I QNDEL D  Q:$$GET^%W1PRM("DELROW")<1
 .I $$LVST^W3HZMST(JB,N) Q
 .N W4ITDEL S W4ITDEL="" ; -- VIB UD-E TOSAFOT PO QNDIF
 .D DELNOMOD^W4HZORD(N,QNDEL,MLZ,$G(MNL),MV) ; -- MNL NOT DEFINED ??
 ;
 K @TMPORD@("DEL")
 ;
 M ^TMPD1(JB)=^TMPORD(JB)
 ;
 I $$MOVEFROM,$D(@$$^W4MAIN("TMPMV"))<10 D PUT^%W1PRM("DELROW",-4.1)
 ;
 I $D(@$$^W4TMPORD)<10 D PUT^%W1PRM("DELROW",-4.2)
 ;
 I $$GETP^%W1PRM("DELROW")<1 D KILLDEL Q +$$GETP^%W1PRM("DELROW")
 ;
 I '$$TOTORD^W3HZMST(JB),'$$TOTQN^W3HZMST(JB) D
 .D PUT^W3HZMST(JB,"HNH",0)
 .D PUT^W3HZMST(JB,"HNH2",0)
 .D PUT^W3HZMST(JB,"DMSH",0)
 .D PUT^W3HZMST(JB,"SOAD",0)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,$$NMB^W3HZMST(JB),0)
 ;
 I '$$MOVEFROM D  I HZM<1 Q -9+HZM
 .S HZM=$$^W4NEWHZ(JB,HZM)
 .Q  ; *** LEV 19/04/15
 .I HZM>0,'$$TOTORD^W4HZMST(HZM),'$$TOTQN^W4HZMST(HZM),'$$^W4CLOSE(HZM) D
 ..D SETCLOSE^W4HZMST(HZM)
 ;
 I $$MOVEFROM D
 .K @$$^W4MAIN("TMPMVD")
 .M @$$^W4MAIN("TMPMVD")=@$$^W4TMPORD
 ;
 Q +$$GETP^%W1PRM("DELROW")
 ;
 ;
KILLDEL ;
 D KILLUR^W4MENUBT("ITD")
 ;;I '$$MOVEFROM D KORD^W4TMPORD(JB)
 Q
 ;
LNDN(STAM) ;
 D TMPS
 N K S K=+$$CUR+1
LNDN1 I '$D(@$$^W4TMPORD@($$IND(K))) Q -1
 I '$$DELK(K) S K=K+1 G LNDN1
 ;
 N II
 I $$LVST($$IND(K))=0,$$LVST($$IND(K)+1) D  I $$INDK(II)>$$LAST D SETBEG(K) G LNDN2
 .F II=$$IND(K)+1:1 Q:'$D(@$$^W4TMPORD@(II))  Q:'$$LVST(II)
 .I '$D(@$$^W4TMPORD@(II)) S II=II-1
 ;
 I K>$$LAST D SETBEG(K-$$RL+1)
LNDN2 ;
 D SETCUR(K)
 Q 1
 ;
 ;
LNUP(STAM) ;
 D TMPS
 N K S K=$$CUR-1
LNUP1 I K<1 Q -1
 I '$$DELK(K) S K=K-1 G LNUP1
 I K'>$$PREVLAST D SETBEG(K) G LNUP2
LNUP2 ;
 D SETCUR(K)
 Q 1
 ;
 ;
PGDN(STAM) ;
 D TMPS
 N K S K=$$BEG+$$RL ;;$$LAST+1
 I '$D(@$$^W4TMPORD@($$IND(K))) Q -2
 I '$$DELK(K) F  S K=K-1 Q:$$DELK(K)=1
 D SETBEG(K)
 I $$DELK(K)=1 D SETCUR(K)
 Q 1
 ;
PGUP(STAM) ;
 D TMPS
 N II,K
 S K=$$BEG-$$RL
 I K<1 S K=1
 D SETBEG(K)
 ;;S K=K+$$RL-2
 I '$$DELK(K) F  S K=K+1 Q:$$DELK(K)=1
 I $$DELK(K)=1 D SETCUR(K)
 Q 1
 ;
 ;
PLUS(ORD) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 ;
 N A S A=$G(@$$^W4TMPORD@(CURI))
 N QNOLD S QNOLD=$$QNDEL(CURI)
 N ITRAST S ITRAST=$$ITRAST(CURI)
 I QNOLD'<ITRAST Q -3
 ;
 N CHKQN S CHKQN=$$CHKQN(CURI)
 I $$LV(A),'CHKQN Q -3
 I $$LV(A),CHKQN<0 Q CHKQN
 ;
 N ITRAHZ,TOTDEL
 S ITRAHZ=$$ITRA^W4HZMST(ORD)
 ;;W "ITRAHZ="_ITRAHZ,!
 N QNDEL S QNDEL=QNOLD+1 I QNDEL>ITRAST S QNDEL=ITRAST
 D SETDEL(CURI,QNDEL)
 S TOTDEL=$$TOTDEL(ORD)
 D PUT^%W3DEB("W4ITDEL-PLUS","ITRAHZ=ITRAHZ & TOTDEL = TOTDEL")
 I TOTDEL-.1>ITRAHZ D  Q -5
 .D SETDEL(CURI,QNOLD)
 Q CURI
 ;
 ;
MIN(STAM) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 I $$QNDEL(CURI)<1 Q -4
 D SETDEL(CURI,$$QNDEL(CURI)-1)
 Q CURI
 ;
ALL(ORD) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 N QNOLD S QNOLD=$$QNDEL(CURI)
 N IST S IST=$$ITRAST(CURI)
 D SETDEL(CURI,IST)
 N ITRAHZ,TOTDEL
 S ITRAHZ=$$ITRA^W4HZMST(ORD)
 S TOTDEL=$$TOTDEL(ORD)
 D PUT^%W3DEB("W4ITDEL-ALL","ITRAHZ=ITRAHZ & TOTDEL = TOTDEL")
 I TOTDEL-.1>ITRAHZ D  Q -5
 .D SETDEL(CURI,QNOLD)
 Q CURI
 ;
UR(STAM) Q "ITD"
 ;
SETLAST(K) ;
 D TMPS
 S @TMPS@($$UR,"LAST")=K
 Q
 ;
SETBEG(K) ;
 D TMPS
 S @TMPS@($$UR,"BEG")=K
 Q
 ;
SETCUR(K) ;
 D TMPS
 I '$$DELK(K) D
 .F  S K=K-1 Q:K<2  Q:$$DELK(K)
 I K<$$BEG D SETBEG(K)
 S @TMPS@($$UR,"CUR")=K
 Q
 ;
LAST(STAM)
 D TMPS
 Q $G(@TMPS@($$UR,"LAST"))
 ;
BEG(STAM)
 D TMPS
 Q $G(@TMPS@($$UR,"BEG"))
 ;
PREVLAST(STAM) ;
 D TMPS
 Q $$BEG-1
 ;
ENDPAGE(STAM)
 I '$D(@$$^W4TMPORD@($$IND($$LAST+$$RL))) Q 1
 Q 0
 ;
FIRSTPAGE(STAM) ;-- IF THE FIRST PAGE
 I '$D(@$$^W4TMPORD@($$IND($$LAST-$$RL))) Q 1
 Q 0
 ;
RL(STAM) ;---- RAZMER LISTA ( SK STROK)
 D TMPS
 Q $G(@TMPS@($$UR,"RL"))
 ;
IND(K) ; K --> I
 D TMPS
 Q +$G(@TMPS@($$UR,+K))
 ;
INDK(I) ; I --> K
 D TMPS
 N KK F KK=1:1 Q:'$D(@TMPS@($$UR,KK))  I ^(KK)=I Q
 I '$D(@TMPS@($$UR,KK)) Q 0
 Q KK
 ;
DEL(I) ;
 I $D(@$$^W4TMPORD@("DEL",I)) Q 1
 I $D(@$$^W4TMPORD@("DELT",I)) Q 2
 Q 0
 ;
DELK(K) ;
 Q $$DEL($$IND(K))
 ;
QNDELK(K) ;
 Q $$QNDEL($$IND(K))
 ;
SETDEL(I,VL) ;
 N K
 I $$LVST(I)>0 D  Q
 .N LV S LV=$$LVST(I)
 .S @$$^W4TMPORD@("DELT",I)=VL
 ;
 S @$$^W4TMPORD@("DEL",I)=VL
 Q
 ;
SETDELK(K,VL) ;
 D SETDEL($$IND(K),VL)
 Q
 ;
NEW(STAM) ;
 I $$GET^%W1PRM("W4ITDELNEW") Q 1
 Q 0
 ;
TMPS ;
 D TMPS^W4MENUBT
 Q
 ;
ITRAST(I)
 Q $$ITRAST^W3HZMST(JB,I)
 ;
TOTDEL(ORD) ;  -- HOW MUCH DELETED (NIS)
 N SUM,QNDEL,MH,TSF,A,DISCP S SUM=0,DISCP=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""  D
 .S QNDEL=$G(@$$^W4TMPORD@("DEL",N))
 .S A=$G(@$$^W4TMPORD@(N))
 .S MH=$$MH(A),TSF=$$TSF(N,QNDEL)
 .I $$LVST^W3HZMST(JB,N)=0 S DISCP=$$AHST^W3HZMST(JB,N)
 .S SUM=SUM+((QNDEL*MH+TSF)*(100-DISCP)*.01)
 .;;W "N="_N_" QNDEL="_QNDEL_" MH="_MH_" TSF="_TSF_"  SUM="_SUM,!
 I $$HNHAH^W4HZMST(ORD) S SUM=SUM*(100-$$HNHAH^W4HZMST(ORD))*.01
 Q $J(SUM,2,2)
 ;
 ;
TSF(N,QNDM) ; -- SUM TSF NA ED
 N N1,TSF S TSF=0,N1=N
 N PREZAT S PREZAT=$$PREZATI(N,$$QNDEL(N))
 ;
 F  S N1=$O(@$$^W4TMPORD@(N1)) Q:N1=""  Q:$$LVST(N1)=0  D
 .N QND,MHD
 .S QND=$$QNDEL(N1)
 .S MHD=$$MHST(N1)
 .S TSF=TSF+(QND*MHD) Q
 .I PREZAT,'$$QNDEL(N1) Q
 .I PREZAT S TSF=TSF+(QND*MHD) Q  ; -- AI NOMULTY
 .S TSF=TSF+(QNDM*$$QNST(N1)*$$MHST(N1))
 Q TSF
 ;
SHOWRKV(RKV,ID,PRM,STYLE) ;
 N OU S PRM=$G(PRM)
 S OU=$G(RKV)
 I $G(RKV)'="" S OU=$S($G(PRM)="H":$$H2U^%L1FRM(RKV),1:RKV)
 I $G(PRM)["." S OU=$J(OU,2,2)
 N ST
 S ST="<input type=""text"" size=""6"" readonly=""readonly"""
 S ST=ST_" style=""font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_";text-align:center;"_$G(STYLE)_""""
 S ST=ST_" id="""_ID_""" "
 S ST=ST_$S(PRM="N"!(PRM["."):"dir=""LTR""",PRM="H":"dir=""LTR""",1:"")
 S ST=ST_" value="""_OU_""" "
 Q ST
 ;
MOVEFROM(STAM) ;
 Q $$^W4MVFROM
 ;
PREZATI(IND,QNDEL) ;
 Q $$PREZATI^W3HZMST(JB,IND,QNDEL)=2
 ;
 ;
CHKQN(IND) ;
 N TMPTF,TMPORD,SQN,A,N,BGSET,SQNDEL,CD,STMAIN,STSET,PAR,QNPAR,NSET
 ;
 S TMPORD=$$^W4TMPORD
 ;
 S QNDELPAR=$$QNDELPAR(IND) I QNDELPAR="" Q 1
 ;
 I 'QNDELPAR Q -4.4
 ;
 S NSET=$$NSET(IND)
 I NSET="" Q 1
 ;
 S MAX=$P($G(@$$^W4GL("P1SETA")@(NSET)),"\",2)
 I 'MAX Q 1
 ;
 K MQN,CD
 S SQNDEL=0
 S N=$$FNDA(IND)
 ;
 F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0  Q:$$CDA(A)  D
 .N QND S QND=$$QNDEL(N)
 .S SQNDEL=SQNDEL+QND
 .;;W " QND="_QND_"  SQNDEL="_SQNDEL,!
 ;
 ;;W " QNDELPAR="_QNDELPAR_"  MAX="_MAX,!
 I (SQNDEL+1)>(QNDELPAR*MAX) Q 0
 Q 1
 ;
 ;
QNDELPAR(IND)
 N A,N
 S A="" D TMPORD
 S N=IND F  S N=$O(@TMPORD@(N),-1) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0
 I N="" Q N
 Q $$QNDEL(N)
 ;
 ;
NSET(IND) ;
 D TMPORD
 N A,N,STA,STSET,NSET
 S A=""
 S N=IND
 S N=$$FNDA(IND) I N="" Q ""
 S A=$G(@TMPORD@(N))
 ;
 S STSET=A
 S NSET=$E($$CD(STSET),2,6)
 Q NSET
 ;
 ;
FNDA(IND)
 N A,N D TMPORD
 S N=IND
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0  Q:$$CDA(A)
 I '$$CDA(A) Q ""
 Q N
 ;
TMPORD ;
 S TMPORD=$$^W4TMPORD
 Q

W4ITDELO
W4ITDEL(ORD) ; [ 12.05.16 06:41 ] [ 11.05.16 19:06 ] [ 10.05.16 12:54 ] 
 ;----------------------------------------------------------------------------
 ; K - POR NOM V TBL
 ; I - NOM ST V ^TMPORD
 ;----------------------------------------------------------------------------
 N (%ARG,JB,ORD,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W4ITDEL")
 D PUT^%W3DEB("W4ITDEL","W3ORDLS=W3ORDLS & ARG=[%ARG")
 Q:'$G(ORD)
 ;
 I $$NEW Q:$$^W4GETHZ(ORD)'=1  ; --- IF FIRST VIEW THEN ORDER --> ^TMPORD
 ;
 I $$MOVEFROM D
 .K @$$^W4MAIN("TMPMVD0")
 .M @$$^W4MAIN("TMPMVD0")=@$$^W4TMPORD
 ;
 D NOSELECT^%W1JS
 D TMPS
 ;
 D W("<div align=""center"">")
 ;
 D W("<table width=""100%"" cellspacing=""0"" class=""vw"" border=""1"" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >")
 N TR S TR="<tr style=""background-color:"_$$FNFG^W4CSS_";color:white"">"
 D W(TR)
 S CC=0
 S CC=CC+1 D W("  <th style=""width:5%"">"_$$^%W1DICT("NPP")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:24%"">"_$$^%W1DICT("ITEMNAME")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("QUANT")_"</th>")
 S CC=CC+1  D W("  <th>"_$$^%W1DICT("COMMENT2KITCHEN")_"</th>")
 S CC=CC+1 D W("  <th style=""width:15%"">"_$$^%W1DICT($S($$MOVEFROM:"MVQUANT",1:"DELQUANT"))_"</th>")
 D W(" </tr>")
 ;
 W ! S PR0=0
 N L,K,K0,IL,ITRA
 S L=$$BEG S:L<1 L=1 S K=L
 ;
 S CUR=1
 I '$$NEW S CUR=$$IND($$CUR)
 ;
 S SIZEPAGE=470,RSIZE=0
 ;
 S IL=L I L>1 S IL=$$IND(L) ; -- NP TBL --> IND TMPORD
 ;
 S K0=K,FIRSTSIZE=1,ITRA=0,FLCUR=0,FLCUR0=0,FLDEL=0,PRT=""
 ;
 N I F I=IL:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .N A S A=$G(^(I))
 .I $$NEW S @TMPS@($$UR,K)=I
 .
 .I $$LV(A)=0 D  ; --------------- MAIN ITEM
 ..S ITRA=$$ITRAST(I)
 ..I ITRA'>0 S PR0=0 Q
 ..I $$^W4CDSRV($$CD^W3HZMST(A)) S PR0=0 Q
 ..S PR0=1,QNIT1=""
 ..I RSIZE+40>SIZEPAGE,FIRSTSIZE D SETLAST(K0) S FIRSTSIZE=0
 ..S RSIZE=RSIZE+40
 ..
 ..S FLCUR=0 I I=CUR S FLCUR=1
 ..S PRFULL=0
 ..I I=$$IND($$CUR),$$ITRAST(I)-$$QNDEL(I)<1 S PRFULL=1
 ..S FLDEL=0 I $$QNDEL(I) S FLDEL=1
 ..
 ..S ST="<tr id=""LV0"_I_""" name=""LV0"_I_""" "
 ..S ST=ST_" class="""_$S(K=1&$$NEW!(I=CUR):"vwc",$$QNDEL(I):"vwd",1:"vw0")_""""
 ..S ST=ST_" style=""height:40px"" "
 ..S ST=ST_" "_$$^W4TOUCH_"=""SetCur('"_$$INDK(I)_"')"">"
 ..D W(ST)
 ..S K0=K D K ; -- SHOW K
 ..
 ..S PRT=$$CD(A)
 ..
 ..D W("  <td>&nbsp;"_PRT_"</td>")
 ..
 ..D W("   <td style='font-size:"_$$^W3FSZ_"'>&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N MH S MH=$$MH(A)
 ..D W("   <td align=""center"" dir=""LTR"">&nbsp;"_MH_"</td>")
 ..
 ..D W("   <td align=""center"" dir=""LTR"">&nbsp;"_ITRA_"</td>")
 ..
 ..D CMTD ; ---- SHOW COMMENT
 ..
 ..D W("   <td align=""center"" dir=""LTR"" >")
 ..D W("     <input type=""text"" id=""QND"_I_""" size=""2"" value="""_$$QNDEL(I)_""" style=""text-align:center"" readonly=""readonly""/>")
 ..D W("   </td>")
 ..
 ..I '$$DEL(I) S @$$^W4TMPORD@("DEL",I)=""
 ..
 ..D W("</tr>")
 .
 .I $$LV(A)>0 D  ; --------------- ADDONS ---------
 ..I $$CDA(A) Q
 ..I $$CDC(A) Q
 ..Q:'PR0
 ..Q:$$QNR(A)'>0
 ..S ITRAT=$$ITRAST(I)
 ..I ITRAT'>0 Q
 ..I ITRAT,'ITRA S ITRAT=""
 ..S ITRAT=ITRAT_$$DOP^W4PIZZA($$QNST^W3HZMST(JB,I))
 ..
 ..I $$LV(A)=1 S QNIT1=$$QNIT1^W3HZMST(JB,I,"",1)
 ..
 ..I $$LV(A)=2 D  I QNIT1'>0 Q
 ...I 'QNIT1 S QNIT1=1
 ...N QN2 S QN2=$$QNST^W3HZMST(JB,I)
 ...D
 ....I QN2["*" S QN2=QNIT1_"*"_+$P(QN2,"*",2)_$$PCQN^W4PIZZA(QN2) Q
 ....I QN2>QNIT1 S QN2=QN2\QNIT1_$$PCQN^W4PIZZA(QN2) Q
 ....S QN2=QNIT1_"*"_+QN2_$$PCQN^W4PIZZA(QN2)
 ...;
 ...S ITRAT=QN2
 ..
 ..N PREZAT S PREZAT=0
 ..I $$^W4EZAT(PRT) D
 ...I $$^W4MULTY S PREZAT=0
 ...I '$$^W4MULTY S PREZAT=$S(ITRA>1:2,1:1)
 ..
 ..I PREZAT D
 ...S FLCUR=0 I I=CUR S FLCUR=1
 ...I $$LV(A)=2,$$IND1(I)=CUR S FLCUR=1
 ...S FLDEL=0 I $$QNDEL(I) S FLDEL=1
 ..;
 ..I PRFULL S FLCUR=1
 ..
 ..I 'PREZAT,$$LV(A)=1,ITRA>1!$$QNPZ^W4PIZZA(ITRAT) D
 ...S:ITRAT["*" ITRAT=$P(ITRAT,"*",2)
 ...S ITRAT=ITRA_"*"_(ITRAT\ITRA)_$$PCQN^W4PIZZA(ITRAT)
 ..
 ..S RSIZE=RSIZE+25
 ..
 ..S ST="<tr style=""background-color:"
 ..S ST=ST_$S(FLCUR:"yellow",FLDEL:"lightyellow",1:"white")_";color:"_$$COLORADD^W4CSS($$LV(A))_""""
 ..S ST=ST_" id=""LV1"_I_""" name=""LV1"_I_""" "
 ..I PREZAT S ST=ST_" "_$$^W4TOUCH_"=""SetCur('"_$$INDK(I)_"')"" "
 ..S ST=ST_">"
 ..D W(ST)
 ..
 ..D K
 ..D W("    <td>&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..
 ..D W("   <td") ; --- NAME
 ..I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N ST S ST="   <td dir=""LTR"" style=""text-align:center" ; --- MH
 ..N MH S MH=$$MH(A)
 ..I MH S ST=ST_";color:black"
 ..S ST=ST_""""
 ..S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:MH)_"</td>"
 ..D W(ST)
 ..;
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ITRAT)_"</td>"
 ..D W(ST)
 ..
 ..D CMTD ; -- SHOW COMMENT
 ..
 ..I PREZAT&($$LV(A)=1),'PRFULL D
 ...D W("   <td align=""center"" dir=""LTR"" >")
 ...S ST="     <input type=""text"" id=""QND"_I_""" size=""2"" "
 ...S ST=ST_" value="""_$$QNDEL(I)_""""
 ...S ST=ST_" style=""text-align:center"" readonly=""readonly"" >"
 ...D W(ST)
 ...D W("   </td>")
 ...I '$$DEL(I) S @$$^W4TMPORD@("DELT",I)=""
 ..
 ..I 'PREZAT!($$LV(A)=2)!PRFULL D
 ...D W("   <td dir=""LTR"" style=""text-align:center"">&nbsp;</td>")
 ..
 ..D W("  </tr>")
 ;
 W !
 ;
 D W("</table>")
 D W("</div>")
 D W("<br>")
 D PUT^%W1PRM("W4ITDELNEW",0)
 Q
 ;
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
LV(A) Q $P(A,"~")
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(ORD) N JB S JB=+ORD
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
CD(A) ;
 N NM
 S NM=$P(A,"~",2)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 Q $J(MH,2,2)
 ;
QN(A) ;-- SK OSTALOS
 N QN
 S QN=$P(A,"~",5)
 I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN["*" Q ITRA_"*"_$P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNR(A) ;
 N QN S QN=$$QN(A)
 I QN["*" Q $P(QN,"*")*$P(QN,"*",2)
 Q QN
 ;
AHP(A) ;
 N AHP
 S AHP=$P(A,"~",6)
 I AHP="" Q "&nbsp;"
 Q AHP
 ;
QNST(I) ;-- PERVONACH K-VO
 N QNST
 S QNST=$$QNST^W3HZMST(JB,I)
 I QNST["*" Q $P(QNST,"*",2)
 Q QNST
 ;
MHST(I) ;
 Q $$MHST^W3HZMST(JB,I)
 ;
LVST(I) ;
 Q $$LVST^W3HZMST(JB,I)
 ;
QNDEL(I) ;--- SK UDALILI
 N QN S QN=$$QNST^W3HZMST(JB,I)
 N QNDM,I1
 F I0=I:-1:1 Q:$$LVST(I0)=0
 S QNDM=+$G(@$$^W4TMPORD@("DEL",I0))
 I $$LVST(I)=0 Q QNDM
 I 'QNDM Q 0
 ;
 I +QNDM=+$$ITRAST(I0),$$LVST(I)>0 Q +$$ITRAST(I)
 ;
 I QN["*",$$LVST(I)=1 Q QNDM*$P(QN,"*",2)
 ;
 I $$LVST(I)=1 Q +$G(@$$^W4TMPORD@("DELT",I))
 ;
 N QND
 I $$LVST(I)=2 D  Q QND
 .N QN2 S QN2=$$QNSTA^W3HZMST(JB,I)
 .N I1 F I1=I-1:-1:1 Q:$$LVST(I1)<2
 .N QN1 S QN1=0
 .I $$LVST(I1)=1 S QN1=+$G(@$$^W4TMPORD@("DELT",I1))
 .;;W "I="_I_"  I1="_I1_"  QN1="_QN1_" QN2="_QN2,!
 .S QND=QN1*QN2
 ;
 S QND=+$G(@$$^W4TMPORD@("DEL",I))
 Q QND
 ;
 ;
SUM(A) Q $J($$QNR(A)*$$MH(A)*(100-$$AHP(A))*.01,2,2)
 ;
NMTD(SH) ;
 Q "QN"_SH
 ;
NMTDI(SH) ;
 Q "QNID"_SH
 ;
CMTD ;
 D W("   <td id=""cmtd"_I_""" class=""hdgr"" style=""font-size:"_$$^W3FSZ_";text-align:center"" >&nbsp;")
 W $$H2U^%L1FRM($$CMST^W3HZMST(JB,I))
 D W("   </td>")
 Q
 ;
HD ;
 Q
 ;
IND0(I) ;
 N A S A=""
 N I1 F I1=I-1:-1:1 Q:'$D(@$$^W4TMPORD@(I1))  S A=$G(^(I1)) I '$$LV(A) Q
 I $$LV(A)=0 Q I1
 Q ""
 ;
IND1(I) ;
 N A S A=""
 N I1 F I1=I-1:-1:1 Q:'$D(@$$^W4TMPORD@(I1))  S A=$G(^(I1)) I $$LV(A)<2&'$$CDC(A) Q
 I $$LV(A)=1&'$$CDC(A) Q I1
 Q ""
 ;
K ;
 D W("  <td style=""text-align:center;background-color:yellow"">"_K_"</td>")
 S K=K+1
 Q
 ;
CUR(STAM) D TMPS Q $G(@TMPS@($$UR,"CUR"))
 ;
W(TXT)
 W TXT,!
 Q
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
 ;
KB(ORD) ; ---- TOP & BOTTOM BUTTONS ----------------
 W "<div align=""left"" style=""position:absolute;top:0px;height:80px;width:99%"">"
 D HEAD^W4PAYHD(ORD)
 W "</div>",!
 ;
 W "<div align=""left"" style=""position:absolute;top:630px;width:99%"">"
 D BOTTOM(ORD)
 W "<br />",!
 D W("<table width=""100%"" cellspacing=""0"" class=""vw"" border=""0"" dir="""_$$^%W1DIR_""" >")
 N OKTSF S OKTSF=0
 D W("<tr>")
  D W("<td width=""11%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNDN")_""" "_$$^W4TOUCH_"=""LineDown()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNUP")_""" "_$$^W4TOUCH_"=""LineUp()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" style=""width:70%"" value=""+"" "_$$^W4TOUCH_"=""DelPlus('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" style=""width:70%"" value=""-"" "_$$^W4TOUCH_"=""DelMin('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("QNALL")_""" "_$$^W4TOUCH_"=""DelAll('"_ORD_"')"" />")
  D W("</td>")
  ;
  D W("<td width=""12%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGDN")_""" "_$$^W4TOUCH_"=""PageDown()"" />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGUP")_""" "_$$^W4TOUCH_"=""PageUp()"") />")
  D W("</td>")
  ;
  D W("<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" style=""color:green;width:80%"" value="""_$$^%W1DICT("SUBMIT")_""" "_$$^W4TOUCH_"=""Submit('"_ORD_"')"") />")
  D W("</td>")
  ;
  D W("<td width=""16%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">")
   D W("<input type=""button"" class=""btn"" style=""color:red;width:95%"" value="""_$$^%W1DICT("CANCELACTION")_""" "_$$^W4TOUCH_"=""Back()"") />")
  D W("</td>")
  ;
 D W("</tr>")
 D W("</table>")
 W "</div>"
 Q
 ;
 ;
BOTTOM(ORD) ;----------- BOTTOM INFORMATION ---
 W "<table border=""0"" dir="""_$$^%W1DIR_""" width=""100%"" cellpadding=""7px"" class=""hdord"">",!
  W "<tr>"
   W "<td width=""10%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    N AHUZ S AHUZ=+$$HNHAH^W4HZMST(ORD)
    I $J($$TOTHN^W4HZORD(ORD)*AHUZ*.01,0,0)'=$J($$HNH^W4HZMST(ORD),0,0) S AHUZ=""
    W $$^%W1DICT("DISC",+AHUZ_"%")
   W "</td>",!
   ;
   W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT("TOPAY")_"</td><td width=""11%"" align=""center"">"
    W $$SHOWRKV($$TSHL^W4HZMST(ORD),"tsh",".")
   W "</td>",!
   ;
   W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""" >"
    W $$^%W1DICT("PAID")_"</td>"
    W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""">"
    W $$SHOWRKV($$SHUL^W4HZMST(ORD)+$$SHULA^W4HZMST(ORD),"shul",".")
   W "</td>",!
   ;
   W "<td width=""14%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT("ITRA2PAY")_"</td><td width=""11%"" align=""center"">"
    W $$SHOWRKV($$ITRA^W4HZMST(ORD),"i2p",".")
   W "</td>",!
   ;
   W "<td width=""14%"" align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
    W $$^%W1DICT($S($G(%ARG("TS")):"TOTINBILL",$$MOVEFROM:"TOTMOVE",1:"TOTDEL"))_"</td>"
    W "<td width=""11%"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
    W $$SHOWRKV($$TOTDEL(ORD),"totdel",".","color:red")
   W "</td>",!
   ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
SUBMIT(HZM) ;
 ;
 D PUT^%W3DEB("W4ITDEL-SUBMIT","HZM=HZM")
 D KILL^%W1PRM("DELROW") ; -- DELETE ERROR CODE
 ;
 N MV S MV=$P(HZM,";",2)
 N TS S TS=$P(HZM,";",3)
 I TS S MV=1
 ;
 S HZM=$P(HZM,";")
 ;
 N MLZ S MLZ=$$MKBL^W4HZMST(HZM)
 S MNL=$$^W4WHODEL
 ;
 N I,LAST,N
 S LAST=$O(@$$^W4TMPORD@(999999),-1)
 ;
 I $$MOVEFROM D
 .K @$$^W4MAIN("TMPMV")
 .S @$$^W4MAIN("TMPMV")=LAST+1
 ;
 N TMPORD D TMPORD
 N CD,ER S ER=""
 S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""   S QNDEL=$G(^(N)) I QNDEL D  Q:$$GET^%W1PRM("DELROW")<1
 .S CD=$$CDST^W3HZMST(JB,N)
 .I $$^W4EZAT(CD),$$LVST(N)=0,QNDEL<$$ITRAST(N) D
 ..N N1,OK S OK=0
 ..F N1=N+1:1 Q:'$D(@$$^W4TMPORD@(N1))  Q:'$$LVST(N1)  D
 ...I $G(@$$^W4TMPORD@("DELT",N1)) S OK=1
 ..I 'OK S ER=ER_N_","
 ;
 D PUT^%W3DEB("W4ITDEL-SUBMIT","ER=ER")
 I ER D PUT^%W1PRM("DELROW",-4.5) Q +$$GET^%W1PRM("DELROW")
 ;
 S N="" F  S N=$O(@TMPORD@("DELT",N)) Q:N=""  S QNDELT=$G(^(N)) I QNDELT,N D
 .I '$$LVST(N) Q
 .S $P(@TMPORD@(N),"~",11)=-QNDELT
 ;
 K @TMPORD@("DELT")
 ;
 M ^TMPD(JB)=^TMPORD(JB)
 ;
 S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""   S QNDEL=$G(^(N)) I QNDEL D  Q:$$GET^%W1PRM("DELROW")<1
 .I $$LVST(N) Q
 .N W4ITDEL S W4ITDEL="" ; -- VIB UD-E TOSAFOT PO QNDIF
 .I TS S W4ITDEL=$$NTS(HZM)
 .;
 .D DELNOMOD^W4HZORD(N,QNDEL,MLZ,$G(MNL),MV) ; -- MNL NOT DEFINED ??
 ;
 K @TMPORD@("DEL")
 ;
 I 'TS M ^TMPD1(JB)=^TMPORD(JB)
 ;
 I $$MOVEFROM!TS,$D(@$$^W4MAIN("TMPMV"))<10 D PUT^%W1PRM("DELROW",-4.1)
 ;
 I $D(@$$^W4TMPORD)<10 D PUT^%W1PRM("DELROW",-4.2)
 ;
 I $$GETP^%W1PRM("DELROW")<1 D KILLDEL Q +$$GETP^%W1PRM("DELROW")
 ;
 I '$$TOTORD^W3HZMST(JB),'$$TOTQN^W3HZMST(JB) D
 .D PUT^W3HZMST(JB,"HNH",0)
 .D PUT^W3HZMST(JB,"HNH2",0)
 .D PUT^W3HZMST(JB,"DMSH",0)
 .D PUT^W3HZMST(JB,"SOAD",0)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,$$NMB^W3HZMST(JB),0)
 ;
 I 'TS,'$$MOVEFROM D  I HZM<1 Q -9+HZM
 .S HZM=$$^W4NEWHZ(JB,HZM)
 ;
 I 'TS,$$MOVEFROM D
 .K @$$^W4MAIN("TMPMVD")
 .M @$$^W4MAIN("TMPMVD")=@$$^W4TMPORD
 ;
 I TS D NEWPART(HZM)
 ;
 Q +$$GETP^%W1PRM("DELROW")
 ;
 ;
NEWPART(HZM)
 N NTS S NTS=$$NTS
 N TMPMV S TMPMV=$$^W4MAIN("TMPMV")
 N K,K2,A,A1,QN,KP S K=0,K2=0,A1="",KP=1
 ;
 N I S I="" F  S I=$O(@$$^W4TMPORD@(I)) Q:I=""  I I D
 .S A=$G(@$$^W4TMPORD@(I))
 .I $P(A,"~")=0 S K2=0,A1="",K=K+1
 .I $P(A,"~")=1,'$P(A,"~",2) S K2=0
 .D SETK2
 .S QN=$G(@$$^W4TMPORD@("TS",I,NTS))
 .Q:'QN
 .N QN1,ST
 .;
 .I $P(A,"~")=0 D SETTS(NTS,K,I,QN) D  Q
 ..I $$ITRAST^W3HZMST(JB,I,"",1)'>0 D  Q
 ...N ITRA0 S ITRA0=""
 ...N N1 S N1=I F  S N1=$O(@$$^W4TMPORD@(N1)) Q:N1=""  S A=$G(^(N1)) Q:'$$LVST(N1)  D
 ....D SETK2
 ....I $P(A,"~")'=1!'$P(A,"~",2) Q
 ....S QN1=$$ITRAST^W3HZMST(JB,N1,"",1) Q:QN1'>0
 ....D SETTS1(NTS,A,N1,QN1)
 ...
 .I $P(A,"~")=1,$P(A,"~",2) D
 ..D SETTS1(NTS,A,I,QN)
 ;
 M @$$^W4ORD@(HZM,"PART",NTS)=@TMPMV
 S @$$^W4ORD@(HZM,"PART",NTS)=$G(@$$^W4TMPORD)
 N J F J=8,9,12,17 S $P(@$$^W4ORD@(HZM,"PART",NTS),"~",J)=""
 S $P(@$$^W4ORD@(HZM,"PART",NTS),"~",11)=$$TOTORD^W3HZMST(JB,"",TMPMV)
 K @TMPMV
 K @$$^W4MAIN("TMPMVD")
 I '$$PCBILLPART(HZM,NTS) D PUT^%W1PRM("DELROW",-4.9)
 Q
 ;
 ;
SETK2 ;
 I $P(A,"~") D
 .I $P(A,"~")=1,$P(A,"~",1,2)'=$P(A1,"~",1,2),$P(A,"~",2) S K2=1,A1=A Q
 .I $P(A,"~",2) S K2=K2+1
 Q
 ;
SETTS(NTS,K,I,QN) ;
 ;;W "SETTS: NTS="_NTS_" K="_K_" I="_I,!
 M @$$^W4ORD@(HZM,"TS",K,NTS)=QN
 S @$$^W4ORD@(HZM,"TS",K,"O2T")=I
 N ST
 I $D(ITRA0) D
 .S KP=KP+1
 .S ST=$G(@$$^W4TMPORD@(I))
 .S $P(ST,"~",5)=QN
 .S @TMPMV@(KP)=ST
 Q
 ;
SETTS1(NTS,A,I,QN1) ;
 ;;W "SETTS1: NTS="_NTS_" A="_A_" I="_I,!
 S K=+K_"-"_$P(A,"~",2)_"-"_K2
 D SETTS(NTS,K,I,QN1)
 N QN
 S A1=A
 N N2 F N2=I+1:1 Q:'$D(@$$^W4TMPORD@(N2))  Q:$$LVST(N2)<2  D
 .S QN2=$$QNSTA^W3HZMST(JB,I)
 .D SETK2 S K=$P(K,"-",1,2)_"-"_K2
 .S QN=QN1*QN2
 .I 'QN  
 .D SETTS(NTS,K,N2,QN)
 Q 
 ;
PCBILLPART(HZM,NTS) ;
 N HZ S HZ=$$^W4PARTGT(HZM,NTS)
 ;
 N RES
 S RES=$$PCHSB^W4MENUBT(-JB)
 K @$$^W4ORD@(-JB)
 D KORD^W4TMPORD(JB)
 Q RES
 ;
KILLDEL ;
 D KILLUR^W4MENUBT("ITD")
 ;;I '$$MOVEFROM D KORD^W4TMPORD(JB)
 Q
 ;
LNDN(STAM) ;
 D TMPS
 N K S K=+$$CUR+1
LNDN1 I '$D(@$$^W4TMPORD@($$IND(K))) Q -1
 I '$$DELK(K) S K=K+1 G LNDN1
 ;
 N II
 I $$LVST($$IND(K))=0,$$LVST($$IND(K)+1) D  I $$INDK(II)>$$LAST D SETBEG(K) G LNDN2
 .F II=$$IND(K)+1:1 Q:'$D(@$$^W4TMPORD@(II))  Q:'$$LVST(II)
 .I '$D(@$$^W4TMPORD@(II)) S II=II-1
 ;
 I K>$$LAST D SETBEG(K-$$RL+1)
LNDN2 ;
 D SETCUR(K)
 Q 1
 ;
 ;
LNUP(STAM) ;
 D TMPS
 N K S K=$$CUR-1
LNUP1 I K<1 Q -1
 I '$$DELK(K) S K=K-1 G LNUP1
 I K'>$$PREVLAST D SETBEG(K) G LNUP2
LNUP2 ;
 D SETCUR(K)
 Q 1
 ;
 ;
PGDN(STAM) ;
 D TMPS
 N K S K=$$BEG+$$RL ;;$$LAST+1
 I '$D(@$$^W4TMPORD@($$IND(K))) Q -2
 I '$$DELK(K) F  S K=K-1 Q:$$DELK(K)=1
 D SETBEG(K)
 I $$DELK(K)=1 D SETCUR(K)
 Q 1
 ;
PGUP(STAM) ;
 D TMPS
 N II,K
 S K=$$BEG-$$RL
 I K<1 S K=1
 D SETBEG(K)
 ;;S K=K+$$RL-2
 I '$$DELK(K) F  S K=K+1 Q:$$DELK(K)=1
 I $$DELK(K)=1 D SETCUR(K)
 Q 1
 ;
 ;
PLUS(ORD) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 ;
 N A S A=$G(@$$^W4TMPORD@(CURI))
 N QNOLD S QNOLD=$$QNDEL(CURI)
 N ITRAST S ITRAST=$$ITRAST(CURI)
 I QNOLD'<ITRAST Q -3
 ;
 N CHKQN S CHKQN=$$CHKQN(CURI)
 I $$LV(A),'CHKQN Q -3
 I $$LV(A),CHKQN<0 Q CHKQN
 ;
 N ITRAHZ,TOTDEL
 S ITRAHZ=$$ITRA^W4HZMST(ORD)
 ;;W "ITRAHZ="_ITRAHZ,!
 N QNDEL S QNDEL=QNOLD+1 I QNDEL>ITRAST S QNDEL=ITRAST
 D SETDEL(CURI,QNDEL)
 S TOTDEL=$$TOTDEL(ORD)
 D PUT^%W3DEB("W4ITDEL-PLUS","ITRAHZ=ITRAHZ & TOTDEL = TOTDEL")
 I TOTDEL-.1>ITRAHZ D  Q -5
 .D SETDEL(CURI,QNOLD)
 Q CURI
 ;
 ;
MIN(STAM) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 I $$QNDEL(CURI)<1 Q -4
 D SETDEL(CURI,$$QNDEL(CURI)-1)
 Q CURI
 ;
ALL(ORD) ;
 N CUR S CUR=$$CUR
 I '$$DELK(CUR) Q -1
 N CURI S CURI=$$IND(CUR) I 'CURI Q -2
 N QNOLD S QNOLD=$$QNDEL(CURI)
 N IST S IST=$$ITRAST(CURI)
 D SETDEL(CURI,IST)
 N ITRAHZ,TOTDEL
 S ITRAHZ=$$ITRA^W4HZMST(ORD)
 S TOTDEL=$$TOTDEL(ORD)
 D PUT^%W3DEB("W4ITDEL-ALL","ITRAHZ=ITRAHZ & TOTDEL = TOTDEL")
 I TOTDEL-.1>ITRAHZ D  Q -5
 .D SETDEL(CURI,QNOLD)
 Q CURI
 ;
UR(STAM) Q "ITD"
 ;
SETLAST(K) ;
 D TMPS
 S @TMPS@($$UR,"LAST")=K
 Q
 ;
SETBEG(K) ;
 D TMPS
 S @TMPS@($$UR,"BEG")=K
 Q
 ;
SETCUR(K) ;
 D TMPS
 I '$$DELK(K) D
 .F  S K=K-1 Q:K<2  Q:$$DELK(K)
 I K<$$BEG D SETBEG(K)
 S @TMPS@($$UR,"CUR")=K
 Q
 ;
LAST(STAM)
 D TMPS
 Q $G(@TMPS@($$UR,"LAST"))
 ;
BEG(STAM)
 D TMPS
 Q $G(@TMPS@($$UR,"BEG"))
 ;
PREVLAST(STAM) ;
 D TMPS
 Q $$BEG-1
 ;
ENDPAGE(STAM)
 I '$D(@$$^W4TMPORD@($$IND($$LAST+$$RL))) Q 1
 Q 0
 ;
FIRSTPAGE(STAM) ;-- IF THE FIRST PAGE
 I '$D(@$$^W4TMPORD@($$IND($$LAST-$$RL))) Q 1
 Q 0
 ;
RL(STAM) ;---- RAZMER LISTA ( SK STROK)
 D TMPS
 Q $G(@TMPS@($$UR,"RL"))
 ;
IND(K) ; K --> I
 D TMPS
 Q +$G(@TMPS@($$UR,+K))
 ;
INDK(I) ; I --> K
 D TMPS
 N KK F KK=1:1 Q:'$D(@TMPS@($$UR,KK))  I ^(KK)=I Q
 I '$D(@TMPS@($$UR,KK)) Q 0
 Q KK
 ;
DEL(I) ;
 I $D(@$$^W4TMPORD@("DEL",I)) Q 1
 I $D(@$$^W4TMPORD@("DELT",I)) Q 2
 Q 0
 ;
DELK(K) ;
 Q $$DEL($$IND(K))
 ;
QNDELK(K) ;
 Q $$QNDEL($$IND(K))
 ;
SETDEL(I,VL) ;
 N K
 I $$LVST(I)>0 D  Q
 .N LV S LV=$$LVST(I)
 .S @$$^W4TMPORD@("DELT",I)=VL
 ;
 S @$$^W4TMPORD@("DEL",I)=VL
 Q
 ;
SETDELK(K,VL) ;
 D SETDEL($$IND(K),VL)
 Q
 ;
NEW(STAM) ;
 I $$GET^%W1PRM("W4ITDELNEW") Q 1
 Q 0
 ;
TMPS ;
 D TMPS^W4MENUBT
 Q
 ;
ITRAST(I)
 Q $$ITRAST^W3HZMST(JB,I,"",1)
 ;
TOTDEL(ORD) ;  -- HOW MUCH DELETED (NIS)
 N SUM,QNDEL,MH,TSF,A,DISCP S SUM=0,DISCP=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@("DEL",N)) Q:N=""  D
 .S QNDEL=$G(@$$^W4TMPORD@("DEL",N))
 .S A=$G(@$$^W4TMPORD@(N))
 .S MH=$$MH(A),TSF=$$TSF(N,QNDEL)
 .I $$LVST(N)=0 S DISCP=$$AHST^W3HZMST(JB,N)
 .S SUM=SUM+((QNDEL*MH+TSF)*(100-DISCP)*.01)
 .;;W "N="_N_" QNDEL="_QNDEL_" MH="_MH_" TSF="_TSF_"  SUM="_SUM,!
 I $$HNHAH^W4HZMST(ORD) S SUM=SUM*(100-$$HNHAH^W4HZMST(ORD))*.01
 Q $J(SUM,2,2)
 ;
 ;
TSF(N,QNDM) ; -- SUM TSF NA ED
 N N1,TSF S TSF=0,N1=N
 N PREZAT S PREZAT=$$PREZATI(N,$$QNDEL(N))
 ;
 F  S N1=$O(@$$^W4TMPORD@(N1)) Q:N1=""  Q:$$LVST(N1)=0  D
 .N QND,MHD
 .S QND=$$QNDEL(N1)
 .S MHD=$$MHST(N1)
 .S TSF=TSF+(QND*MHD) Q
 .I PREZAT,'$$QNDEL(N1) Q
 .I PREZAT S TSF=TSF+(QND*MHD) Q  ; -- AI NOMULTY
 .S TSF=TSF+(QNDM*$$QNST(N1)*$$MHST(N1))
 Q TSF
 ;
SHOWRKV(RKV,ID,PRM,STYLE) ;
 N OU S PRM=$G(PRM)
 S OU=$G(RKV)
 I $G(RKV)'="" S OU=$S($G(PRM)="H":$$H2U^%L1FRM(RKV),1:RKV)
 I $G(PRM)["." S OU=$J(OU,2,2)
 N ST
 S ST="<input type=""text"" size=""6"" readonly=""readonly"""
 S ST=ST_" style=""font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_";text-align:center;"_$G(STYLE)_""""
 S ST=ST_" id="""_ID_""" "
 S ST=ST_$S(PRM="N"!(PRM["."):"dir=""LTR""",PRM="H":"dir=""LTR""",1:"")
 S ST=ST_" value="""_OU_""" "
 Q ST
 ;
MOVEFROM(STAM) ;
 Q $$^W4MVFROM
 ;
PREZATI(IND,QNDEL) ;
 Q $$PREZATI^W3HZMST(JB,IND,QNDEL)=2
 ;
 ;
CHKQN(IND) ;
 N TMPTF,TMPORD,SQN,A,N,BGSET,SQNDEL,CD,STMAIN,STSET,PAR,QNPAR,NSET
 ;
 S TMPORD=$$^W4TMPORD
 ;
 S QNDELPAR=$$QNDELPAR(IND) I QNDELPAR="" Q 1
 ;
 I 'QNDELPAR Q -4.4
 ;
 S NSET=$$NSET(IND)
 I NSET="" Q 1
 ;
 S MAX=$P($G(@$$^W4GL("P1SETA")@(NSET)),"\",2)
 I 'MAX Q 1
 ;
 K MQN,CD
 S SQNDEL=0
 S N=$$FNDA(IND)
 ;
 F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0  Q:$$CDA(A)  D
 .I $$LV(A)'=1 Q
 .N QND S QND=$$QNDEL(N)
 .S SQNDEL=SQNDEL+QND
 .;;W " QND="_QND_"  SQNDEL="_SQNDEL,!
 ;
 ;;W " QNDELPAR="_QNDELPAR_"  MAX="_MAX,!
 I (SQNDEL+1)>(QNDELPAR*MAX) Q 0
 Q 1
 ;
 ;
QNDELPAR(IND)
 N A,N
 S A="" D TMPORD
 S N=IND F  S N=$O(@TMPORD@(N),-1) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0
 I N="" Q N
 Q $$QNDEL(N)
 ;
 ;
NSET(IND) ;
 D TMPORD
 N A,N,STA,STSET,NSET
 S A=""
 S N=IND
 S N=$$FNDA(IND) I N="" Q ""
 S A=$G(@TMPORD@(N))
 ;
 S STSET=A
 S NSET=$E($$CD(STSET),2,6)
 Q NSET
 ;
 ;
FNDA(IND)
 N A,N D TMPORD
 S N=IND
 F  S N=$O(@TMPORD@(N),-1) Q:N=""  S A=$G(^(N)) Q:$$LV(A)=0  Q:$$CDA(A)
 I '$$CDA(A) Q ""
 Q N
 ;
TMPORD ;
 S TMPORD=$$^W4TMPORD
 Q
 ;
NTS(STAM) ;
 Q $O(@$$^W4ORD@(HZM,"PART",999),-1)+1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ITEND
W4ITEND(CD) ; [ 19.01.23 19:13 ] [ 23.11.18 12:28 ] [ 22.11.18 11:54 ] 
 I $G(CD)="" Q "NO"
 N DT S DT=$$^W4DZ
 I $G(@$$^W4GL("PRTEND")@(DT,CD))'?1N.N Q "NO"
 Q $G(@$$^W4GL("PRTEND")@(DT,CD))
 ;
SET(CD,QN)
 D PUT^%W3DEB("W4ITEND-SET","CD=CD & QN=QN")
 I $G(CD)="" Q
 N DT S DT=$$^W4DZ
 I $G(@$$^W4GL("PRTEND")@(DT,CD))'?1N.N Q
 N VL S VL=$G(@$$^W4GL("PRTEND")@(DT,CD))
 N RM S RM=VL-QN I RM<0 S RM=0
 S @$$^W4GL("PRTEND")@(DT,CD)=RM
 Q
 ;
SETSH(SH,QN) ;
 D PUT^%W3DEB("W4ITEND-SETSH","SH=SH & QN=QN")
 N EX2K S EX2K=$$EX2KITCH^W3HZMST(JB,SH)
 D PUT^%W3DEB("W4ITEND-SETSH","EX2K=EX2K")
 I $$QN1(QN)<0,EX2K Q
 N CD S CD=$$CDST^W3HZMST(JB,SH)
 N QNOLD S QNOLD=$$QNST^W3HZMST(JB,SH)
 D PUT^%W3DEB("W4ITEND-SETSH","CD=CD & QNOLD=QNOLD")
 I CD="" Q
 I QN="-" S QN=0
 D SET(CD,$$QN1(QN)-$$QN1(QNOLD))
 Q
 ;
MSG(PRM,QNNEW,NOMAIN) ;
 D PUT^%W3DEB("W4ITEND-MSG","PRM=PRM & QNNEW=QNNEW & NOMAIN=NOMAIN")
 N A,CD,CD1,CDT,QNOLD,QNO,QN1,ITRA1,ITRAT,STOLD
 S MSG="",QNOLD=0
 N UR S UR=$$UR^W4MENU
 N TMPTFUR D TMPTFUR^W4HZTSF(UR)
 I QNNEW["*" S QNNEW=$$^W4QNR(QNNEW)
 ;
 I $$^W4AIN,$G(NOMAIN)'="NOCHK" D CHKQN(PRM,QNNEW) I MSG'="" Q MSG
 ;
 I PRM["CD=" D
 .S CD=$P(PRM,"CD=",2)
 ;
 I PRM["SH=" D
 .S SH=$P(PRM,"SH=",2)
 .S CD=$$CDST^W3HZMST(JB,SH)
 ;
 I PRM["SH=" D
 .S QNOLD=$$QNST^W3HZMST(JB,SH)
 .S QNOLD=$$QN1(QNOLD)
 .S SH1=SH F  S SH1=$O(@$$^W4TMPORD@(SH1)) Q:SH1=""  I SH1 S A=$G(^(SH1)) Q:'$$LV^W4HZTSF(A)  D
 ..S OLD($$CD^W4HZTSF(A))=$$QN1(A)
 .
 .I $D(@TMPTFUR)<10,$D(OLD)>9 D
 ..F SH1=SH+1:1 Q:'$D(@$$^W4TMPORD@(SH1))  S A=$G(^(SH1)) Q:'$$LV^W4HZTSF(A)  D
 ...S QNO=$P(A,"~",5),CDT=$P(A,"~",2)
 ...S ITRAT=$$W4ITEND(CDT) Q:ITRAT="NO"
 ...I QNO["*",(QNNEW-QNOLD)*$P(QNO,"*",2)>ITRAT S MSG(CDT)=ITRAT
 ...I QNO'["*",'$$PREZATI^W3HZMST(JB,SH1)!$$^W4MULTY,(QNNEW-QNOLD)*QNO>ITRAT S MSG(CDT)=ITRAT
 ;
 I $G(CD)="" Q ""
 ;
 I '$G(NOMAIN) D
 .S QNNEW=$$QN1(QNNEW)
 .N ITRA S ITRA=$$^W4ITEND(CD) I ITRA="NO" Q
 .I QNNEW-QNOLD>ITRA S MSG(CD)=ITRA 
 ;
 N N S N="" F  S N=$O(@TMPTFUR@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD1=$P(A,"~"),QN1=$G(^(N,"QN")) Q:'QN1
 .S ITRA1=$$W4ITEND(CD1) Q:ITRA1="NO"
 .I QN1-$G(OLD(CD1))>ITRA1 S MSG(CD1)=ITRA1
 ;
 I $D(MSG)>9 D
 .S MSG="ITEMREMAINDER;"
 .S N="" F  S N=$O(MSG(N)) Q:N=""  D
 ..S MSG=MSG_"&PRT"_N_"="_MSG(N)
 ;
 Q MSG
 ;
 ;
QN1(QN) ;
 I QN["*" D
 .N QN1,QN2,QN3
 .S QN1=$P(QN,"*")
 .S QN2=$P(QN,"*",2) I QN2="" S QN2=1
 .S QN3=$P(QN,"*",3)
 .I QN3="" S QN3=1
 .S QN=QN1*QN2*QN3
 Q QN
 ;
SHOW ;
 W "<div align=""center"" >",!
 W "<span "
 W " style=""font-size:"_$$^W3FSZ(14)_""""
 W ">"_$$^%W1DICT("ITEMSLISTTOBEENDED")_"</span>",!
 W "<br>",!
 ;
 W " <table dir="""_$$^%W1DIR_""" width=""80%"">",!
 ;
 W "  <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W "  ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W "  >"
 W "   <th width=""15%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "   <th width=""65%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "   <th width=""20%"">"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 ;
 N N,ITRA,CD
 S N="" F  S N=$O(%ARG(N)) Q:N=""  D
 .S CD=$P(N,"PRT",2) Q:'CD
 .D SHOWLINE(CD,$G(%ARG(N)),1)
 ;
 N P1DZ S P1DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4GL("PRTEND")@(P1DZ,N)) Q:N=""  D
 .I $D(%ARG("PRT"_N)) Q
 .S ITRA=$G(^(N))
 .D SHOWLINE(N,ITRA)
 W " </table>",!
 W "<br>"
 W "<input type=""button"" class=""btn"" value="""_$$^%W1DICT("CLOSE")_""" "_$$^W4TOUCH_"=""CloseRm()"" />",!
 W "</div>",!
 Q
 ;
SHOWLINE(CD,ITRA,PR) ;
 N STYLE S STYLE=""
 I $G(PR) S STYLE=" style=""border:solid 2px red;font-weight:bold"" "
 E  S STYLE=" style=""font-weight:bold"" "
 W "  <tr "
 W " >"
  W " <td "_STYLE_"> "_CD_" </td>"
  W " <td "_STYLE_"> "_$$H2U^%L1FRM($$SHEM^W4P(CD))_" </td>"
  W " <td align=""center"" "_STYLE_"> "_ITRA_" </td>"
 W "  </tr>",!
 Q
 ;
CHKQN(PRM,QN) ;
 N (JB,%ARG,%REM,PRM,QN,MSG)
 D PUT^%W3DEB("W4ITEND-CHKQN","PRM=PRM & QN=QN")
 S MSG="",NSET=""
 N STPAR0 S STPAR0=$$^W4RSTPAR
 N QN0 S QN0=+$P(STPAR0,"~",5)
 N I0 S I0=1
 ;
 I PRM["CD=" D
 .S STPAR40=$$GET^%W1PRM("STPAR40")
 .S SET=$P(STPAR40,";") Q:$E(SET)'="A"
 .S NSET=$E(SET,2,10) Q:NSET'?1N.N
 ;
 I PRM["SH=" D
 .N SH S SH=$P(PRM,"SH=",2)
 .F I=SH:-1:0 Q:'$D(@$$^W4TMPORD@(I))  Q:$P($G(^(I)),"~",2)?1"A"1N.N
 .N SET S SET=$P($G(^(I)),"~",2) Q:$E(SET)'="A"
 .S NSET=$E(SET,2,10)
 ;
 Q:'NSET
 ;
 ;
 N MAXQN S MAXQN=$$QNMAXN^W3SET(NSET) Q:'MAXQN
 S EQ=$$EQ^W3SET(NSET)
 I '$$^W4MULTY S MAXQN=QN0*MAXQN
 D PUT^%W3DEB("W4ITEND-CHKQN","MAXQN=MAXQN&EQ=EQ")
 ;
 N TOTQN S TOTQN=0,CD="-"
 ;
 N A,I,QNORD
 F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .S A=$G(^(I))
 .N CDORD S CDORD=$P(A,"~",2) Q:CDORD=""
 .Q:$$LV^W3HZMST(A)>0
 .I $$QNR^W3HZMST(JB,I)<0 Q
 .Q:$E(CDORD)="A"  Q:CDORD["-C"
 .S QNORD=$$ITRAST^W3HZMST(JB,I)
 .I QNORD["*" S QNORD=QNORD*$P(QNORD,"*",2)
 .;
 .I $D(@$$^W4GL("P1SETA")@(NSET,CDORD)) S TOTQN=TOTQN+QNORD ;;S ^DB(CDORD)=QNORD_"\"_TOTQN
 ;
 I TOTQN+QN>MAXQN,EQ'=2 S MSG="QNTOOMUCH"
 D PUT^%W3DEB("W4ITEND-CHKQN","MSG=MSG")
 Q
 ;
STATUS(STAM) ;
 N N,DT,ST,A S DT=$$^W4DZ,ST=""
 S N="" F  S N=$O(@$$^W4GL("PRTEND")@(DT,N)) Q:N=""  D
 .S A=$G(^(N))
 .S ST=ST_N_":"_A_";"
 S ST=$E(ST,1,$L(ST)-1)
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ITFAST
W4ITFAST(GLNM) ; [ 29.05.24 17:57 ] [ 10.08.23 14:37 ] [ 05.08.23 20:54 ] 
 N (JB,%ARG,%REM,GLNM) S P1DZ=$$^W4DZ
 S JB=+$G(JB)
 D KILL^%W3DEB(GLNM)
 D PUT^%W3DEB(GLNM,"%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width=""80%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""5%"">"_$$^%W1DICT("NPP")_"</th>"
 W "  <th width=""16%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "  <th width=""25%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 ;
 W "  <th width=""25%"">"_$$^%W1DICT("ITEMSGROUP")_"</th>"
 W "  <th width=""12%"">"_$$^%W1DICT("PRICE")_"</th>"
 ;
 I GLNM="W4SPECIT" D
 .W "  <th width=""37%"">"_$$^%W1DICT("COMMENT")_"</th>"
 ;
 I GLNM="W4BCODE" D
 .W "  <th width=""18%"">"_$$^%W1DICT("BCODE")_"</th>"
 ;
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 N I,N,N1,GLTMP1
 S GLTMP1=$$^W4MAIN("TMPFAST1") K @GLTMP1
 ;
 S N="" F I=1:1 S N=$O(@$$^W4GL(GLNM)@(N)) Q:N=""  D
 .N IND S IND=$G(^(N)) I 'IND!(IND?2N1"."2N1"."2N) S IND=I
 .I $D(@GLTMP1@(IND)) S IND=9999+IND
 .S @GLTMP1@(IND)=N
 ;
 S N1="" S N1=$O(@GLTMP1@(N1)) G:N1="" END D
 .S N=$G(^(N1)) Q:'N
 .S I=1
 .S @GLTMP@(N)=N1
 .S @GLTMP@(N,"I")=I
 .W "<tr id=""trid"_1_""""
 . I '$$^W4PRTVW(N) W "style=""background-color:pink"" "
 .W ">" W $$LINE(GLNM_";1;"_N) W "</tr>",!
 ;
 F  S N1=$O(@GLTMP1@(N1)) Q:N1=""  D
 .S N=$G(^(N1)) Q:'N
 .S I=I+1
 .S @GLTMP@(N)=N1
 .S @GLTMP@(N,"I")=I
 .W "<tr id=""trid"_I_""" "
 .W ">" W $$LINE(GLNM_";"_I_";"_N) W "</tr>",!
 ;
 K @GLTMP1
END ;
 W "</table>",!
 W "</div>",!
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
SAVEND(GLNM) ;
 N N,PARHR,NOK,GLTMP
 D GLTMP
 ;
 K @$$^W4GL(GLNM)
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .N IND S IND=$G(^(N,"I"))
 .I $D(@GLTMP@(N,"DEL")) Q
 .
 .I GLNM="W4BCODE" D  Q
 ..N BC S BC=$G(@GLTMP@(N,"NM")) Q:BC=""
 ..S @$$^W4GL(GLNM)@(N)=BC
 ..S @$$^W4GL("W4BCODEI")@(BC)=N
 .
 .I GLNM="W4SPECIT" D  Q
 ..S @$$^W4GL(GLNM)@(N)=$G(@GLTMP@(N,"NM"))
 .
 .S @$$^W4GL(GLNM)@(N)=IND ; $ZD($H,"DD.MM.YY")
 ;
 K @GLTMP
 ;
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMPFAST")
 Q
 ;
 ;
LINE(PRM) ;
 N GLNM,I,PAR,DOP
 S GLNM=$P(PRM,";")
 S I=$P(PRM,";",2)
 S PAR=$P(PRM,";",3)
 S DOP=$P(PRM,";",4)
 N GLTMP D GLTMP
 N ST
 S ST=""
 S ST=ST_" <td align=""center"" >"
  ;
 S ST=$$ST^W4PLMIN(I,"","NewLine")
 ;;S ST=ST_"  <span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
 ;;S ST=ST_"   onClick=""NewLine('"_I_"')""> + "
 ;; S ST=ST_"  </span><br />"
 ;; S ST=ST_"  <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
 ;; S ST=ST_"   onClick=""DeleteRow('"_I_"')"" > - </span>"
 ;; S ST=ST_" </td>"
  ;
  S ST=ST_" <td style=""text-align:center"" >"
   S ST=ST_$$VVPRT(I_";"_PAR)
  S ST=ST_"  </td>"
  ;
  N PARNAME S PARNAME=$$SHEM^W4P(PAR)
  S ST=ST_"  <td "_$$^%W1ALIGN_" id=""itemnm"_I_""" >"
   S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(PARNAME)
  S ST=ST_"  </td>"
  ;
  N GR,GRNAME S GR=$$SUG^W4P(PAR),GRNAME=""
  I GR S GRNAME=$G(@$$^W4GL("PARSUG")@(GR))
  ;
  D
  .S ST=ST_"  <td "_$$^%W1ALIGN_" id=""gr"_I_""" >"
  . S ST=ST_"&nbsp;&nbsp;"_GR_"&nbsp;&nbsp;"_$$H2U^%L1FRM(GRNAME)
  .S ST=ST_"  </td>"
  .;
  .S ST=ST_"  <td "_$$^%W1ALIGN_" id=""prc"_I_""" >"
  . S ST=ST_"&nbsp;&nbsp;"_$$MH^W4P(PAR)
  .S ST=ST_"  </td>"
  ;
  I GLNM="W4BCODE" D
  .S ST=ST_"  <td "_$$^%W1ALIGN_" >"
  . S ST=ST_"&nbsp;&nbsp;"
  . N A S A="<input type=""text"" size=""13"" maxlength=""13"" "
  . S A=A_"id=""bcode_"_I_""" "
  . S A=A_"onChange=""ChangeDop(this)"" "
  . I $G(PAR) D
  . .N NM S NM=$G(@$$^W4GL("W4BCODE")@(PAR))
  . .S @GLTMP@(PAR,"NM")=NM
  . .S A=A_"value="""_NM_""" "
  . S A=A_">"
  .S ST=ST_A_"  </td>"
  ;
  I GLNM="W4SPECIT" D
  .S ST=ST_"  <td "_$$^%W1ALIGN_" >"
  . S ST=ST_"&nbsp;&nbsp;"
  . N A S A="<input type=""text"" size=""30"" maxlength=""30"" "
  . S A=A_"id=""bcode_"_I_""" "
  . S A=A_"onChange=""ChangeDop(this)"" "
  . I $G(PAR) D 
  . .N NM S NM=$G(@$$^W4GL("W4SPECIT")@(PAR))
  . .S @GLTMP@(PAR,"NM")=NM
  . .S A=A_"value="""_$$H2U^%L1FRM(NM)_""" "
  . S A=A_">"
  .S ST=ST_A_"  </td>"
 Q ST
 ;
 ;
SETPRT(PRM)
 D PUT^%W3DEB("W4ITFAST-SETPRT","PRM=PRM")
 N PAR,I,VL,BC
 S PAR=$P(PRM,";")
 I PAR="" Q "CODENOTEXIST"
 S I=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 ;
 N GLTMP D GLTMP
 ;
 I $G(@GLTMP@(PAR,"I")),^("I")'=I Q "SAMECODE"
 I '$D(@$$^W4GL("PAR")@(PAR)) Q "CODENOTEXIST"
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .I $G(^(N,"I"))=I,N'=PAR K @GLTMP@(N)
 ;
 S @GLTMP@(PAR)=VL
 S @GLTMP@(PAR,"I")=I
 ;
 N PAR1 S PAR1=$$SHEM^W4P(PAR)
 N GR,GR1 S GR1="",GR=$$SUG^W4P(PAR)
 I GR S GR1=$G(@$$^W4GL("PARSUG")@(GR))
 Q "OK~"_$$CLWEB^%L1FRM($$H2U^%L1FRM(PAR1))_"~"_$$CLWEB^%L1FRM($$H2U^%L1FRM(GR1))_"~"_$$MH^W4P(PAR)
 ;
 ;
SETDOP(PRM)
 D PUT^%W3DEB("W4ITFAST-SETDOP","PRM=PRM")
 N PAR,I,VL,BC
 S PAR=$P(PRM,"~")
 I PAR="" Q "CODENOTEXIST"
 S VL=$P(PRM,"~",2)
 N GLTMP D GLTMP
 S @GLTMP@(PAR,"NM")=$$INVH^%L1FRM(VL)
 Q 1
 ;
 ;
DELROW(PAR) ;
 Q:$G(PAR)=""
 N GLTMP D GLTMP
 I '$D(@GLTMP@(PAR,"DEL")) S @GLTMP@(PAR,"DEL")=1 Q
 K @GLTMP@(PAR,"DEL")
 Q
 ;
VVPRT(PRM) ;
 N I,VL,IDCD,IDNM
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S IDCD="itemcd"_I
 S IDNM="itemnm"_I
 S PROC="SetPar(\'"_I_"\',\'"_IDCD_"\',\'"_IDNM_"\')"
 N FIND S FIND="Find('"_I_"','"_IDCD_"','"_IDNM_"','"_PROC_"')"
 N A
 S A="<div style='display:inline-flex'><input type=""text"" size=""14"" maxlength=""14"" "
 S A=A_"id=""itemcd"_I_""" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"onFocus='this.select()' "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img id=""filter"" src=""w3filter.jpg"" width="""_$$^W4KF(24)_"px"" "
 S A=A_" onClick="""_FIND_"""></div>"
 Q A
 ;
HD(GLNM) ; 
 I GLNM="W4ITFAST" Q "ITFASTTABLE"
 I GLNM="W4ITDGSH" Q "ITDGSHTABLE"
 I GLNM="W4BCODE" Q "BCODETABLE"
 I GLNM="W4SPECIT" Q "SPECDLVITEMSTABLE"
 Q "" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ITM
W4ITM(ST,LI) ; [ 14.03.14 10:22 ] [ 13.03.14 18:43 ] [ 12.03.14 04:23 ]
 N ITM S ITM=$TR(ST,"~","^")
 I $G(LI) D
 .N CMNT0 S CMNT0=$P($$CMST0^W3HZMST(JB,LI),"~",3)
 .D SETMAIN("ITM","CMNT",CMNT0)
 Q ITM
 ;
SET(%AAA,ITM) ;
 I $G(%AAA)="" Q
 I $G(ITM)="" Q
 S $P(@%AAA,"~",15)=ITM
 Q
 ;
MAIN(A) ;
 Q $P(A,"~",15)
 ;
CDM(A) ;
 Q $P($$MAIN(A),"^",2)
 ;
NMM(A) ;
 Q $P($$MAIN(A),"^",3)
 ;
MHM(A) ;
 Q $P($$MAIN(A),"^",4)
 ;
QNM(A) ;
 Q $P($$MAIN(A),"^",5)
 ;
PUT(RKV,VL,%A) ;
 N MAIN S MAIN=$$MAIN(@%A)
 D SETMAIN("MAIN",RKV,VL)
 S $P(@%A,"~",15)=MAIN
 Q
 ;
SETMAIN(%MN,RKV,VL)
 I $G(%MN)="" Q ""
 I RKV="CDM" S $P(@%MN,"^",2)=VL
 I RKV="NMM" S $P(@%MN,"^",3)=VL
 I RKV="MHM" S $P(@%MN,"^",4)=VL
 I RKV="QNM" S $P(@%MN,"^",5)=VL
 I RKV="CMNT" S $P(@%MN,"^",7)=VL
 Q

W4ITREP
W4ITREP ;  [ 29.01.25 06:20 ] [ 26.09.24 18:20 ] [ 16.08.22 12:12 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 S GLMSD=$$^W4GL("TMPMSD") K @GLMSD
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @GLMSD@(N)=$G(^|$$^W3MAIN|W3MSD(N))
 ;
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="ITREP"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
DAT ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 S TRH=$ZD(DT,"DD.MM.YY")
 S YYMM=$ZD(DT,"YYMM")
 D PUT^%W1PRM("PCPDAT",TRH)
 Q
 ;
MSD ;
 I '$G(MSD) Q
 ;;I $D(^|$$^W3MAIN|W4ITREP(MSDR,DT,MSD))<10 D  ; ***
 .D ^W4NETUPD(MSDR,DT,DT,MSD)
 S MSD1=$$MSD^W3R(MSD)
 N GAPNET S GAPNET=$$GAPNET^W4MNYALL(DT,MSD)
 N MNYALL S MNYALL=$G(^|$$^W3MAIN|W4MNYALL(DT,MSD))
 N PD1 S PD1=$P(MNYALL,"\")
 N CR1 S CR1=$P(MNYALL,"\",2)
 N TOT S TOT=PD1+CR1
 ;
 ;;I +GAPNET'=+TOT!'TOT D  ; ***
 .D ^W4NETUPD(MSDR,DT,DT,MSD)
 Q
 ;
 ;
PAR ;
 S OK=1
 ;;I $G(MEPRT),PAR<MEPRT S OK=0 Q
 ;;I $G(ADPRT),PAR>ADPRT S OK=2 Q
 ;
 S PRT1=$$PRT1(PAR)
 Q:OK'=1
 ;
 N A S A=$G(@GLOB)
 N J F J=1:1:2 S @("x"_J)=$P(A,"*",J)
 Q
 ;
PRT1(PAR) ;
 N CD,CD1,CD2,PRT1
 S CD1=$P(PAR,"-")
 S CD2=$P(PAR,"-",2)
 ;
 I 'CD2 D
 .S PRT=CD1,PRT1=$$SHEM^W4P(CD1)
 .S SUG=$$SUG^W4P(PRT)
 .S SUG1=$$SUG1^W4P(PRT)
 ;
 I CD2 D
 .S PRT=CD2
 .S PRT1=$$SHEM^W4P(PRT)
 .S SUG=$$SUG^W4P(PRT)
 .S SUG1=$$SUG1^W4P(PRT)
 ;
 I SUG<MESUG!(SUG>ADSUG) S OK=0 Q ""
 I PRT<MEPRT!(PRT>ADPRT) S OK=0 Q ""
 ;
 S PRT1=$$RPL^%L1FRM(PRT1,"()"," ")
 S PRT1=$$RPL^%L1FRM(PRT1,"[]"," ")
 Q PRT1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4JOB
W4JOB ; [ 31.07.25 14:31 ] [ 17.01.24 07:12 ] [ 06.11.23 20:17 ] 
 N (JB,%ARG,%REM)
 D KILL
 I '$G(JB) S JB=$$^%W1SsID("W4JOB")
 J ^W4PCDOS(JB)
 ;
 J RCVGIB^W4GIB(JB)
 J GIB^W4GIB(JB)
 ;
 S MSD=+$G(@$$^W4PRM@("WEB","MSD")) I 'MSD S MSD=1
 I $G(@$$^W4PRM@("REMGIB")),MSD J ^W4REMGIB(MSD,JB)
 I '$D(@$$^W4GL("W4MHRB")) D ^W4MHRB
 ;;I $$MYCHECK^W4PRM J ^WMCRDPY(-100)
 I $$SNDY^W4PRM J ^WQLOOP(+$G(JB))
 F I=-99:1:-1 K @$$^W4PC@(I)
 K @$$^W4PC@(54)
 ;
TV ;
 I $D(@$$^W4PRM@("WEB"))>9 J ^W4WEB
 ;
 S N="" F  S N=$O(@$$PLUK@(N)) Q:N=""  D
 .I $G(@$$PLUK@(N,"LP")) S PORT=^("LP") D JPC(PORT)
 .I $G(@$$PLUK@(N,"DISP")) D
 ..N DISP S DISP=$G(^("DISP"))
 ..D INIT^W4TX2DSP(DISP)
 ;
 I $D(@$$PRM@("MDPMSL")) N I D
 .N MDPMSL S MDPMSL=$$MDPMSL^W4PRM
 .F I=1:1:$L(MDPMSL,",") D
 ..S PORT=$P(MDPMSL,",",I) S:PORT<-1 PORT=-PORT D JPC(PORT)
 ;
 S N="" F  S N=$O(@$$PRM@("MDP",N)) Q:N=""  D
 .S PORT=$P($G(^(N)),"\",3) I PORT D JPC(PORT)
 ;
 I $$DLYPRN^W4PRM J ^W4QUEPRN
 I $$CHKPC^W4PRM J ^W4CHKPC
 Q
 ;
 ;
JPC(PORT) ;
 Q:$D(@$$^W4GL("VIEWONLY"))
 S PORTN=PORT
 Q:PORT<3  Q:PORT=54
 N N,PC S N=+PORTN
 ;;S PC(N,1)=$C(27,51,80) D JPW^W4PCPROG
 J JPC^W4PCPROG(N,JB)
 Q
 ;
PLUK(STAM) Q $$^W4PLUK
 Q
PRM(STAM) Q $$^W4PRM
 ;
CLEARJSP(JB) ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $D(^[$$^W3MAIN]ClearJSP(+$H)) Q
 N N S N=""
 F  S N=$O(^[$$^W3MAIN]CacheTempJSP(N)) Q:N=""  Q:$E(N,1,5)>($H-1)  D
 .I $E(N,1,5)<+$H K ^(N)
 ;
 F  S N=$O(^[$$^W3MAIN]AJ(N)) Q:N=""  Q:N>($H-10)  K ^(N)
 F  S N=$O(^[$$^W3MAIN]A(N)) Q:N=""  Q:N>($H-10)  K ^(N)
 S ^[$$^W3MAIN]ClearJSP(+$H)=$ZD($H,"DD.MM.YY  24:60")
 ;
 Q
 ;
 ;
KILL ;
 D CLEARPOS^W4KLFL
 K @$$^W4GL("KLINC"),@$$^W4GL("HBFL")
 K @$$^W4GL("P1RCVF")
 K @$$^W4PC@(54),@$$^W4PC@(-1)
 K @$$^W4GL("PC"),@$$^W4GL("mlyshl")
 K @$$^W4flag,@$$^W4GL("flagio")
 K @$$^W4GL("STLOOP")
 Q
 ;
TIKITRA(JB) ;
 N (JB,%ARG)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N DT S DT=+$H ;$$^W4DZ
 N N,ITRA,KLOSTP
 S N=999 F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  D
 .S KLOSTP("HZ")=""
 .S ITRA=$$CBH^W4KLOST(N,DT,1)
 .D PUT^W4L(N,ITRA,"ITRA")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4JOB0
W4JOB ; [ 04.01.13 13:05 ] [ 17.08.12 10:33 ] [ 08.08.12 17:25 ]
 D KILL
 J ^P1PCDOS
 S MSD=$G(^P1PRM("WEB","MSD")) I 'MSD S MSD=1
 I $G(^P1PRM("REMGIB")),MSD J ^W4REMGIB(MSD)
 F I=-99:1:-1 K @$$^W4PC@(I)
 K @$$^W4PC@(54)
 ;;D CLEARJSP
TV ;
 S N="" F  S N=$O(@$$PLUK@(N)) Q:N=""  I $G(@$$PLUK@(N,"LP")) S PORT=^("LP") D JPC(PORT)
 I $D(@$$PRM@("MDPMSL")) N I F I=1:1:$L($G(@$$PRM@("MDPMSL")),",") S PORT=$P(@$$PRM@("MDPMSL"),",",I) S:PORT<-1 PORT=-PORT D JPC(PORT)
 S N="" F  S N=$O(@$$PRM@("MDP",N)) Q:N=""  S PORT=$P($G(^(N)),"\",3) I PORT D JPC(PORT)
 ;;I $G(@$$^W4GL("LEV")@("LP")) D JPC(@$$^W4GL("LEV")@("LP"))
 ;;I '$D(@$$^W4GL("P1INIT")@(+$H)),'$D(P3LOADPC) D
 .D ^W4INIT S ^P1INIT(+$H)=$P($H,",",2)
 Q
 ;
JPC(PORT) ;
 Q:$D(^VIEWONLY)
 S PORTN=PORT ;$G(^PORT(PORT)) Q:PORTN=""
 Q:PORT<3  Q:PORT=54
 J JPC^P1PC(PORTN)
 Q
PLUK(STAM) Q "^PLUK"
 Q
PRM(STAM) Q "^P1PRM"
 ;
CLEARJSP ;
 I $D(^[$$^W3MAIN]ClearJSP(+$H)) Q
 N N S N=""
 F  S N=$O(^[$$^W3MAIN]CacheTempJSP(N)) Q:N=""  Q:$E(N,1,5)>($H-2)  D
 .I $E(N,1,5)<($H-1) K ^(N)
 F  S N=$O(^[$$^W3MAIN]AJ(N)) Q:N=""  Q:N>($H-2)  D
 .I N<($H-1) K ^(N)
 S ^[$$^W3MAIN]ClearJSP(+$H)=$ZD($H,"DD.MM.YY  24:60")
 Q
 ;
KILL ;
 K ^FLAG,^KLINC,^HBFL
 K ^P1RCVF,^pc(54),^pc(-1)
 K ^PC,^mlyshl
 K ^flag,^flagio
 K ^STLOOP
 Q

W4JOMHL
W4JOMHL ;  [ 27.03.10 12:48 ] [ 16.04.09 15:23 ] [
 D
 .N %MDP,JS S JS=36,SM=0 D ^W4MDPPC Q:$G(PRINT)=""  Q:'$D(%MDP)
 .S TXT=$J("zcled mei mdl yiy zegewl zniyx",JS) D S1
 .S TXT=$J("------------------------------",JS) D S1
 .N N,I S N="",I=0 F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  I '$$^W4MSD(N) D
 ..S DTH=$P($$JOMH^W4L(N),".",1,2)_"."_$$GG^%L1DC($H)
 ..S DTH=$$^%L1DC(DTH,3)
 ..I DTH'<$H,DTH-$H<3 D
 ...S TXT=$$HBR^%L1FRM($$LKH^W4L(N),24)_" "_$J(N,11) D S1
 ...S TXT=$J($P($$^%L1DC(DTH,1),".",1,2)_": zcled mei",JS) D S1
 ...S TXT="" D S1
 .I $L($G(PRINT)),$D(%MDP("CUT")) D ^W4CUT(PRINT,%MDP("CUT"))
 Q
S1 ;
 D S1^W4HZTH
 Q

W4KAKA
W4HZTFR ; [ 05.03.17 03:01 ] [ 04.03.17 22:56 ] [ 03.03.17 11:38 ] 
 N (JB,%ARG,NMB,CODE,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ; -------------------------- IF MOVING FROM OTHER TAME - MVFROM (ONLOAD)
 I $G(TXT)'="BACK" K TXT
 D KILL^%W3DEB("W4HZTFR")
 K @$$^W4MAIN("TMPCLICK")
 I $$SCANER D ^W4SCANER Q
 ;
 I $G(%ARG("FIRST")),$$GETP^%W1PRM("CURDEP")="",$G(@$$^W4PRM@("DEPDFLT")) D
 .D PUT^%W1PRM("CURDEP",@$$^W4PRM@("DEPDFLT"))
 ;
 S MSD=$$GET^%W1PRM("MSD")
 S NMB=$$GET^%W1PRM("NMB")
 ;
 D PUT^%W3DEB("W4HZTFR","JB=JB & MLZR=MLZR & NMB=NMB & ARG=[%ARG")
 Q:'$G(JB)
 D COLXY
 D PUT^%W1PRM("PGSZKV",COLX*COLY)
 D TMPTFR
 ;
 D TMPS^W4MENUBT
 ;
 I $G(@TMPS@("UR"))>1 S @TMPS@(1,"LAST")=""
 S @TMPS@("UR")=1
 D PUT^%W1PRM("URMENU",1)
 ;
 ;;S N=$G(@TMPS@(1,"LAST",$G(@TMPS@(1,"PG"))-1))
 ;
 ;;S N=$G(@TMPS@(1,"LAST"))-1
 S PG=$$PG^W4MENUBT(1) S:PG<1 PG=1
 S N=$G(@TMPS@(1,"BEG",PG))
 I 'N S N=""
 K @TMPS@(2,"LAST")
 S @TMPS@(2,"PG")=1
 ;
 I $D(@$$^W3TMPORD@(JB,1)) D
 .W "<script>",!
 .W " var term=parent.bot.document.getElementById(""termid"")",!
 .W " if (term !==null && term !==undefined) {term.style.visibility='visible'}",!
 .W "</script>",!
 ;
 D ^W4IN
 ;
BG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D TMPTFR
 D HEAD
 ;
BGI D CRTMPTF
 D COLXY
M S SH=1,TF=1,(CWND,CWNDOLD,CWNDOLD(TF))=1
 S CURTF=TF,FL10=1,(PG,PGOLD(TF))=1
 ;
 D BODY
 ;
H D VIEW
 D ^W4PCACNT
 Q
 ;
 ;
COLXY ;
 I $$^W4SMALL S COLX=$$COLXGRMSF^W4PRM,COLY=$$COLYGRMSF^W4PRM Q
 ;
 S COLX=5,COLY=7
 D TMPTFR
 I $$AUTOGR^W4PRM D  Q
 .N N,I
 .S N="",I=0 F  S N=$O(@TMPTFR@(1,N))  Q:N=""  I N S I=I+1
 .I I>36 S COLX=7,COLY=7
 .I $$AUTOGR^W4PRM D
 ..I I>90,I<101 S COLX=10,COLY=10
 ..I I>80,I<91 S COLX=9,COLY=10
 ..I I>72,I<81 S COLX=9,COLY=9
 ..I I>64,I<73 S COLX=8,COLY=9
 ..I I>56,I<65 S COLX=8,COLY=8
 ..I I>49,I<57 S COLX=7,COLY=8
 ..I I>42,I<50 S COLX=7,COLY=7
 ..I I>36,I<43 S COLX=6,COLY=7
 ;
 I $$COLXGR^W4PRM S COLX=$$COLXGR^W4PRM
 I $$COLYGR^W4PRM S COLY=$$COLYGR^W4PRM
 S:'COLX COLX=5 S:'COLY COLY=7
 ;
 Q
 ;
TMPTFR ;
 S TMPTFR="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
 ;
BODY ;
 N I,K,L,N0 S K=1,L=0 K MTXT
 S N0=""
 ;
 S @TMPS@(1,"BEG")=N
 ;
 F  S N=$O(@TMPTFR@(1,N))  Q:N=""  D  Q:K>COLY  S N0=N
 .N A,CDKV S A=$G(^(N)),CDKV=$G(^(N,"KV")) ;; $TR($E(A,$L(A)-LCOD+1,$L(A))," ","")
 .N CURDEP S CURDEP=$$GETP^%W1PRM("CURDEP")
 .I CURDEP,$$DEPG^W4P(CDKV)'=CURDEP Q
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .S NMKV=$E(A,1,$L(A)-LCOD+1)
 .N TX S TX="<table>"
 .S TX=TX_"  <tr>"
 .
 .I $$CDKV^W3PRM S TX=TX_"<td>"_CDKV_"</td>"
 .S TX=TX_"<td "
 .S TX=TX_" class=""cellhd"" style=""" D
 ..I $L($$FGCOLOR(CDKV)) S TX=TX_"color:"_$$FGCOLOR(CDKV)_";"
 ..I CDKV=$$CURGR S TX=TX_"text-decoration:underline;"
 ..D SZ
 .S TX=TX_""">"_$$H2U^%L1FRM(NMKV)_"</td>"
 .
 .S TX=TX_"</tr></table>"
 .
 .S MTXT(K,L)=TX
 .S MTXT(K,L,"TO")="TfrClick('"_NMB_"','"_CDKV_"')"
 .I $L($$BGCOLOR(CDKV)) S MTXT(K,L,"BG")=$$BGCOLOR(CDKV)
 ;
 D TMPS^W4MENUBT
 S @TMPS@(1,"LAST")=$S(N="":"END",1:N0)
 Q
 ;
 ;
VIEW ;
 I $$HZGDEP^W4PRM D GROUP
 N KOT S KOT=$$^%W1DICT("MENU")
 N HG S HG=92
 I $$^W4SMALL!(COLY>7) S KOT="",HG=100
 D ^W4KAKA1(KOT,"","","",HG)
 Q
 ;
SIDKVZ ;
 D ^W3SIDKVZ
 Q
 ;
KKVZ(N) K @KVZ@(N)
 Q
 ;
INV(KVZ,GL) ;
 D INV^W3SIDKVZ(KVZ,GL)
 Q
 ;
 ;
INIT ;
 S LCOD=6 I $$SCANER^W4PRM S LCOD=8
 I $G(@$$^W4PRM@("LCOD")) S LCOD=^("LCOD")
 ;
 S KVZ="^[$$^W3MAIN]PARCAT($$^%W1JB)" K MTXT
 I $D(@$$^W4GL("P1TFR"))=11,$G(@$$^W4GL("P1TFR")) D
 .S KVZ="^[$$^%W1UCI(JB)]P1TFR" ;--- TAFRIT JOMI
 Q
 ;
 ;
CRSUG N NCRSUG N N,SUG,VWSUG
 I '$D(NMB) S NMB=$$GET^%W1PRM("NMB")
 N SUGS S SUGS="" I $G(NMB) S SUGS=$$SUGS^W4L(NMB)
 N MSUG
 I $G(@$$^W4PARCAT),$D(@$$^W4PARCAT)=11 Q
 K @$$^W4PARCAT
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 ;
 S SUG="" F  S SUG=$O(@$$^W4GL("PARSUG")@(SUG)) Q:SUG=""  D
 .Q:$$NOSUG^W3HZTFR(SUG,P1DZ)
 .S MSUG=$P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",9)
 .I MSUG'?.P,("^"_MSUG_"^")[("^"_SUGS_"^") Q
 .I $$^W4MM,$P(SUG,"-")'=$$GETP^%W1PRM("MSD") Q
 .S VWSUG=$G(@$$^W4GL("W3SUG")@(SUG))
 .I $$^W4MSL(NMB),VWSUG=2 Q
 .I $$^W4MSD(NMB),VWSUG=3 Q
 .;;I $G(@$$^W4PRM@("ONLY")),$D(@$$^W4GL("P1PARTAW"))>9,$G(NMB),$L(NMB)<4,$$^W4DLPK(NMB),'$D(@$$^W4GL("P1PARTAW")@(SUG)) Q
 .;;I $D(@$$^W4GL("P1PARTAW"))>9,$G(NMB),SUG,'$$^W4DLPK(NMB),$D(@$$^W4GL("P1PARTAW")@(SUG)) Q
 .;;I $G(@$$^W4PRM@("ONLY")),$D(@$$^W4GL("P1PARMSL"))>9,$G(NMB),$L(NMB)>3,'$D(@$$^W4GL("P1PARMSL")@(SUG)) Q
 .I $D(@$$^W4GL("P1PARMSL"))>9,$G(NMB),$L(NMB)<4,$D(@$$^W4GL("P1PARMSL")@(SUG)) Q
 .S @$$^W4PARCAT@(SUG)=""
 J ^W4CRCAT(JB)
 Q
 ;
CRSUG0 N NCRSUG N N,SUG,VWSUG
 I '$D(NMB) S NMB=$$GET^%W1PRM("NMB")
 I $G(@$$^W4PARCAT),$D(@$$^W4PARCAT)=11 Q
 K @$$^W4PARCAT
 N SUGS S SUGS="" I $G(NMB) S SUGS=$$SUGS^W4L(NMB)
 N MSUG
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .;;I $L(N)>6,$D(P1HZTF) Q
 .I $$NOPAR^W4PRTVW(N) Q
 .
 .I $$P1HZTF^W4PARUS(N,$G(NMB)) D
 ..S SUG=+$$SUG^W4P(N) Q:SUG=""
 ..Q:$$NOSUG^W3HZTFR(SUG,P1DZ)
 ..I SUG S MSUG=$P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",9) I ("^"_MSUG_"^")[("^"_SUGS_"^") Q
 ..S VWSUG=$G(@$$^W4GL("W3SUG")@(SUG))
 ..I $$^W4MSL(NMB),VWSUG=2 Q
 ..I $$^W4MSD(NMB),VWSUG=3 Q
 ..S @$$^W4PARCAT@(SUG,N)=""
 S @$$^W4PARCAT=1
 Q
 ;
 ;
HEAD ;
 I '$D(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:$$^W3MENU  Q:$$CLOSEORD(JB)
 N I,T,R,HD,FLD,REG
 S T=$$T^W3HZHD
 S R=$$R^W3HZHD
 S HD=""
 ;
 I $$AHUZ^W3HZMST(JB)="" D PUT^W3HZMST(JB,"AHUZ",$$AHUZ)
 I $$^W4MSD(+$$GET^%W1PRM("NMB")) Q
 ;
 F I=1:1:50 S $P(HD,"~",I)="#"
 F I=1:1:$L(T,";") D
 .S FLD=$P(T,";",I) I FLD?.P Q
 .I FLD[":" S FLD=$P(FLD,":")
 .S REG=$$SPA^%L1FRM($P(R,";",I))
 .I $D(@FLD) S $P(HD,"~",I)=$$FLD(FLD,REG)
 ;
 I '$G(CODE) S CODE=$TR($$GET^%W1PRM("NMB"),"!-","")
 S CODE=$P(CODE,"~")
 I $G(CODE),$L(CODE)>3 S $P(HD,"~",27)=CODE
 ;
 I $P(HD,"~",6)'?2N1":"2N D
 .S $P(HD,"~",6)=$P(HD,"~",42)_":"_$P(HD,"~",43)
 ;
 F I=1:1:$L(HD,"~") D
 .I $P(HD,"~",I)?.P,$P(HD,"~",I)'="`" Q
 .S $P(@$$^W3TMPORD@(JB),"~",I)=$P(HD,"~",I)
 ;
 D PUT^%W3DEB("W4HZTFR-HEAD","HD=HD")
 ;
 Q
 ;
 ;
FLD(F,RG) ;
 Q $$FLD^W3HZTFR(F,$G(RG))
 ;
 N ST,ST1,IND S ST=$TR($G(@F),$C(160),"")
 I $E(ST)="?" S ST=$E(ST,2,255)
 N FL S FL=0,ST1=ST,IND=""
 I RG="H",$$^%W1LNG="H" D
 .S ST1=""
 .N J F J=1:1:$L(ST) D
 ..I $E(ST,J)="&",$E(ST,J+1)="#" S FL=1,J=J+1 Q
 ..I FL,$E(ST,J)=";" D  Q
 ...S FL=0 S:IND>1392&(IND<(1392+123)) ST1=ST1_$C(IND-1392) S IND=""
 ..I FL S IND=IND_$E(ST,J) Q
 ..S ST1=ST1_$E(ST,J)
 .S ST1=$$INVH^%L1FRM(ST1)
 Q ST1
 ;
AHUZ(STAM) ;
 Q $$AHUZ^W4MENUBT
 ;
CLOSEORD(JB) Q $$CLOSE^W3HZMST(JB)
 ;
CURGR(STAM) ;
 S KV=$$GET^%W1PRM("CURKV")
 Q KV
 ;
 ;
CRTMPTF ;
 D INIT
 I KVZ["^[$$^W3MAIN]PARCAT" D
 .N P1HZTF S P1HZTF=""
 .I $$CATOLD D CRSUG0 Q
 .D CRSUG
 ;
 I $$TFRM D
 .S KVZ="^[$$^%W1UCI(JB)]W3TFRM(JB)" ;-- MISSADOT
 ;
 I $$TFRM!$$CATOLD D
 .N N S N="" F  S N=$O(@KVZ@(N)) Q:N=""  I $D(@KVZ@(N))<10 D KKVZ(N)
 ;
 ;--------------- SIDUR KVUZOT
 D SIDKVZ K SH0L
 Q
 ;
 ;
CATOLD(STAM) ;
 Q $$CATOLD^W4PRM
 ;
TFRM(STAM) ;
 I $D(^[$$^%W1UCI(JB)]W3TFRM(JB))=11,^[$$^%W1UCI(JB)]W3TFRM(JB) Q 1
 Q 0
 ;
MVFROM(STAM) ;
 Q $$MVFROM^W4ORDVFN(1)
 ;
START ;
 D KILL^%W1PRM("SRCH"),KILL^%W1PRM("ABC")
 D KILL^%W1PRM("CDKV")
 D INITUR^W4MENUBT(1)
 Q
 ;
BGCOLOR(CDKV) ;
 Q $P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",2)
 ;
FGCOLOR(CDKV) ;
 N FG
 S FG=$P($G(@$$^W4GL("PARSUG")@(CDKV,1)),"\",3)
 I FG="" S FG=$$BGCOLOR^W4CSS
 Q FG
 ;
DEFSD(STAM) ;
 I $$SCANER Q 1
 I $$KUPA^W4PLUK($$^W4MYDVN) Q 1
 N NMB S NMB=$$GET^%W1PRM("NMB") I 'NMB Q ""
 N SUGS S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q ""
 N SD S SD=$G(@$$^W4PRM@("DIAPSD",SUGS))
 I SD="" S SD=$P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",4)
 I SD="" Q ""
 I SD["-" Q ""
 I SD?1N.N Q SD
 ;
 I SD?1N.N Q 1_";"_SD
 Q 0
 ;
STADD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4HZTFR-STADD","PRM=PRM")
 S NMB=$$GETP^%W1PRM("NMB")
 S CD=$P(PRM,";")
 S QN=$P(PRM,";",2)
 S TXT="0~"_CD_"~"_$$SHEM^W4P(CD)_"~"_$$MH^W4P(CD)_"~"_QN
 S RES=$$^W4STADD(TXT)
 I 'RES Q RES
 Q $$CLWEB^%L1FRM(TXT)
 ;
 ;
SCANER(STAM) ;
 Q +$$GETP^%W1PRM("SCANER")
 ;
SZ ;
 N SZ S SZ=$S(COLX<7:11,COLX<9:10,COLX<11:9,1:8)
 S TX=TX_";font-size:"_$$^W3FSZ(SZ)
 Q
 ;
GROUP ;
 S MGROUP=1
 ;
 S MGROUP(1,"I")="ALL"
 S MGROUP(1)=$$^%W1DICT("ALLKINDS")
 S MGROUP(1,"TO")="ClickGroup('ALL')"
 I '$$GET^%W1PRM("CURDEP") D
 .S MGROUP(1,"BG")="YELLOW"
 .S MGROUP(1,"FG")="BROWN"
 ;
 N COLOR,DEP S COLOR=0
 S DEP="" F I=2:1 S DEP=$O(@$$^W4GL("DEP")@(DEP)) Q:DEP=""  D
 D
 .S DEP="" F I=2:1 S DEP=$O(@$$^W4GL("DEP")@(DEP)) Q:DEP=""  D
 ..S MGROUP(I)=$$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
 ..S MGROUP(I,"I")=DEP
 ..S MGROUP(I,"TO")="ClickGroup('"_DEP_"')"
 ..I DEP=$$GETP^%W1PRM("CURDEP") D
 ...S MGROUP(I,"BG")="YELLOW"
 ...S MGROUP(I,"FG")="BROWN"
 Q
 ;
SETDEP(DEP) ; 
 D PUT^%W1PRM("CURDEP",$G(DEP))
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KAKA1
W4KAKA1(KOT,GROUP,STATUS,TOP,HG) ; [ 05.03.17 03:32 ] [ 04.03.17 23:17 ] [ 22.01.17 20:48 ] 
 N I,J,TOPABS
 ;;D PUT^%W3DEB("W4SHEET","KOT=KOT & GROUP=GROUP & STATUS=STATUS & TOP=TOP & HG=HG")
 ; -------------- KOT
 D NOSELECT^%W1JS
 D CLEARSEL^%W1JS
 ;;W "<div align=""center"" "_$$^W4TOUCH_"=""clearSelection()"""
 W "<div align=""center"" height=""99%"" "
 W "  style=""background-image:url('w4bgbody.jpg')""",!
 W " >",!
 N HGB S HGB=100 I $G(TOP) S HGB=HGB-(TOP*5)
 I $L($G(KOT)) D KOT(.KOT) S HGB=HGB-8
 I $D(MFUNC) S HGB=HGB-$G(%ARG("HGFUNC"),15)
 I $G(HG) S HGB=HG
 ;
 I $G(TOP),TOP'["px" F I=1:1:TOP W "<br />"
 ;;W "HGB="_HGB,!
 W !,"<table id=""TblSheet""  height="""_HGB_"%"" width=""100%"" "
 W "border=""0"" dir="""_$$^%W1DIR_""" padding=""0px"" "
 W "style=""text-align:center"
 ;
 W """>",!
 W "<tr>",!
 ;
 I $D(MGROUP),$G(MGROUP)=1 D GROUP
 ;
 I $G(COLX),$G(COLY) D
 .D BODY(COLX,COLY,$S($D(MGROUP):$S($$^W4SMALL:"82%",1:"85%"),1:"100%"))
 ;
 I $D(MGROUP),$G(MGROUP)'=1 D GROUP
 ;
 W "</tr></table>",!
 ;
 ;;W "MFUNC:",! ZWR MFUNC
 ;--------------- VIEW FUNCTIONS
 I $D(MFUNC) D FUNCTIONS
 ;
 W "</div>",!
 Q
 ;
KOT(KOT) ;
 N SHID,CMNT S SHID="",CMNT=""
 ;
 I KOT["<ALGN=" D
 .S KOT("ALIGN")=$P(KOT,"<ALGN=",2)
 .I KOT("ALIGN")["<" S KOT("ALIGN")=$P(KOT("ALIGN"),"<")
 .S KOT=$P(KOT,"<ALGN=")
 ;
 I KOT["<CP-",KOT["<span" D
 .S SHID=$P(KOT,"<CP-",2)
 .S KOT=$P(KOT,"<CP-")
 ;
 I $D(KOT("MSD")),'$$^W4SMALL D KOTMSD
 ;
 W !,"<table width=""100%"" "
 ;;W "  style=""background-image:url('w4bgbody.jpg')""",!
 W ">",!
 W " <tr"
 W " >"
  W "<td>"
  W "<table width=""100%"" hight=""100%"" "
   W " style=""border:solid;border-style:ridge;color:lightgrey"" "
   W " dir="""_$$^%W1DIR_""" ",!
  W ">",!
   W "<tr><td width=""90%"" class=""sheetheader"" style=""text-align:"_$S($D(KOT("ALIGN")):KOT("ALIGN"),1:"center")_";padding:2px"">"
    W KOT
    I $D(KOT(1)) W "<br>"_KOT(1),!
   W "</td>",!
   ;
   I '$$^W4SMALL,'$D(KOT("NOTIME")) D
   .W "<td id=""curtime"" class=""sheetheader"" "
   . W " style=""font-size:"_$$^W3FSZ(12)_""">"
   .W "</td>"
   W "</tr>"
   ;
  W "</tr>"
  W "</table>",!
 W "</td></tr>",!
 I $D(KOT("MRQ")),'$$^W4SMALL D KOTMRQ
 W "</table>",!
 Q
 ;
KOTMSD ;
 W !,"<table width=""100%"" style=""position:absolute;top:0px;left:0px"" "
 W " cellspacing=""0"" cellpadding=""3px"" border=""0"" dir="""_$$^%W1DIR_""" ",!
 W ">"
 W !,"<tr "
 W ">"
  W "<td style=""background-color:#990000;color:yellow;text-align:center;font-weight:bold;font-size:"_$$^W3FSZ(12)_";border-bottom:ridge 3px lightgrey"">"
   S MSD=$$GETP^%W1PRM("MSD") I MSD D
   .W $$H2U^%L1FRM($$^W3MSDG(MSD))
  W "</td>",!
 W "</tr>",!
 W "</table>",!
 W "<br>",!
 Q
 ;
KOTMRQ ;
 W "<tr><td dir="""_$$^%W1DIR_""">"
 W "  <marquee id=""msgbrd"" style=""font-size:"_$$^W3FSZ(11)_""" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
 W "  </marquee>",!
 W "</tr>",!
 Q
 ;
BODY(COLX,COLY,WD) ;
  W "<td width="""_WD_""" >"
   W "<table id=""TblBody"" cellpadding=""3"" width=""100%"" height=""100%"" "
    W " class=""sheetbody"" border=""0"" "
    W " cellspacing=""5px"""
   W ">",!
   ;
   N I,I
   F I=1:1:COLY W "<tr height="""_$$HGBD(COLY)_""">" D  W "</tr>",!
   .F J=1:1:COLX D
   ..W "<td width="""_$$WDBD(COLX)_""" >",!
   .. D DIV(.MTXT)
   ..W "</td>",!
   W "</table>",!
  W "</td>",!
 Q
 ;
 ;
DIV(MTXT) ;
 W "<div ",!
  W " class=""divsheet"" "
  ;
  I '$D(MTXT(I,J)) W " onMouseDown=""ifrHide('MUST')"" >&nbsp;</div>" Q
  ;
  I '$D(MTXT(I,J,"TO")) D
  .I '$D(MTXT(I,J,"BG")),'$D(MTXT(I,J,"FG")) Q
  .W " style="""
  .I $D(MTXT(I,J,"BG")) W "background-color:"_MTXT(I,J,"BG")
  .I $D(MTXT(I,J,"FG")) W ";color:"_MTXT(I,J,"FG")
  .I $D(MTXT(I,J,"BORDER")) W ";border:"_MTXT(I,J,"BORDER")
  .W """"
  
  I $D(MTXT(I,J,"ID")) W " id="""_MTXT(I,J,"ID")_""" "
  
  I $D(MTXT(I,J,"TO")) D
  .N ACT S ACT=""_$$^W4TOUCH_""
  .I $D(MTXT(I,J,"TO","ACT")) S ACT=MTXT(I,J,"TO","ACT")
  .W " "_ACT_"="""_MTXT(I,J,"TO")_""" style=""cursor:pointer"
  .I $D(MTXT(I,J,"BG")) W ";background-color:"_MTXT(I,J,"BG")
  .I $D(MTXT(I,J,"FG")) W ";color:"_MTXT(I,J,"FG")
  .I $D(MTXT(I,J,"BORDER")) W ";border:"_MTXT(I,J,"BORDER")
  .W ";text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")
  .W """"
  .W " onMouseDown=""this.style.backgroundColor='gray'"""
  ;
  I $D(MTXT(I,J,"ASK")),'$$^W4SMALL D
  .N CD S CD=$G(MTXT(I,J,"I"))
  .I $D(MTXT(I,J,"PAR")),CD,$$DESC^W4P(CD)?.P W "&nbsp;&nbsp;" Q
  .W "<img src=""w3ask2.png"" "
  .W " onMouseOver=""openDesc('"_CD_"')"""
  .W " onMouseOut=""closeDesc('"_CD_"')"""
  ;
  W ">"
   W "<table width=""100%"" height=""100%"" ",!
     W "cellpadding=""10px"" "
   W ">",!
    W "<tr>"
     W "<td>" 
      W $G(MTXT(I,J))
     W "</td>"
    W "</tr>",!
   W "</table>",!
  W "</div>",!
 Q
 ;
HGBD(COLY)
 I $G(MTXT("HG")) Q MTXT("HG")
 I '$G(COLY) Q "15%"
 Q (100\COLY)_"%"
WDBD(COLX)
 I $G(MTXT("WD")) Q MTXT("WD")
 I '$G(COLX) Q "15%"
 Q (100\COLX)_"%"
 ;
GROUP ;
  N COLGR S COLGR=$O(MGROUP(99),-1)
  I $G(COLY),COLGR<COLY S COLGR=COLY
  I '$G(COLY) S COLY=COLGR
  W "<td valign=""top"">"
  W " <table width=""100%"" id=""TblGr"" "
  W "  height="""_$S($D(MGROUP("HG")):MGROUP("HG"),1:"100%")_""" "
  W " cellpadding=""3"" "
  W " border=""1"" class=""sheetgroups"" >",!
  ;
  N COLOR S COLOR=0
  F I=1:1:COLGR D
  .I $L($G(MGROUP(I,"BG"))),MGROUP(I,"BG")'="FFFFFF" S COLOR=1 Q
  .I $L($G(MGROUP(I,"FG"))),MGROUP(I,"FG")'="000000" S COLOR=1 Q
  ;
  F I=1:1:COLGR W "<tr height="""_(100\COLGR)_"%"">" D  W "</tr>",!
   .S COLOR=0
   .D
   ..I $L($G(MGROUP(I,"BG"))),MGROUP(I,"BG")'="FFFFFF" S COLOR=1 Q
   ..I $L($G(MGROUP(I,"FG"))),MGROUP(I,"FG")'="000000" S COLOR=1 Q
   .W "<td "
   .I '$D(MGROUP(I)) W ">&nbsp;</td>" Q
   .
   .I $D(MGROUP(I,"TO")) D
   ..W " "_$$^W4TOUCH_"="""_MGROUP(I,"TO")_""""
   ..W " style=""cursor:pointer"
   ..
   ..I $G(MGROUP)["CENTER"!$$^W4SMALL W ";text-align:center"
   ..I $G(MGROUP)["FSZ" W ";font-size:"_$$^W3FSZ($P($P(MGROUP,"FSZ",2),":"))
   ..
   ..I $G(MGROUP(I,"I"))=GROUP,'COLOR D
   ...W ";color:"_$$GRCURFG^W4CSS
   ...W ";background-color:"_$$GRCURBG^W4CSS
   ..
   ..I COLOR D
   ...W ";color:"_$G(MGROUP(I,"FG"))
   ...W ";background-color:"_$G(MGROUP(I,"BG"))
   ...I $G(MGROUP(I,"I"))=GROUP W ";text-decoration:underline;"
   ...
   ..W """"
   .W " >",!
   .;;W "&nbsp;"_$$H2U^%L1FRM(MGROUP(I))
   .W "&nbsp;"_MGROUP(I)
   .W "</td>",!
  W "</table></td>",!
 Q
HGGR(COLY)
 I $G(MGROUP("HG")) Q MGROUP("HG")
 I '$G(COLY) Q "15%"
 Q (100\COLY)_"%"
 ;
FUNC(WD) ;
 N COLFN S COLFN=$O(MFUNC(99),-1)
 I $G(COLX),COLFN<COLX,COLFN S COLFN=COLX
 ;
 W "<td width="""_WD_""">"
 ;
 I 'COLFN W "&nbsp;</td>" Q
 ;
 W !,"<table width=""100%"" id=""TblFnc"" height=""100%"" border=""1"" class=""sheetfunctions"">",!
 W "<tr>" D  W "</tr>",!
 .I 'COLFN W "<td style=""background-color:"_$$BGCOLOR^W4CSS_""">&nbsp;</td>" Q
 .F J=1:1:COLFN D
 ..W "<td width="""_$$WDFN(COLFN,J)_""" "
 ..I '$D(MFUNC(J)) W ">&nbsp;</td>" Q
 ..I $D(MFUNC(J,"TO")) D
 ...W " "_$$^W4TOUCH_"="""_MFUNC(J,"TO")_""" style=""cursor:pointer"
 ...I $G(MFUNC)["CENTER" W ";text-align:center"
 ...I $G(MFUNC)["FSZ" W ";font-size:"_$$^W3FSZ($P($P(MGROUP,"FSZ",2),":"))
 ...I $L($G(STATUS)),$G(MFUNC(J,"I"))=STATUS D
 ....W ";background-color:"_$$GRCURFG^W4CSS
 ....W ";color:"_$$GRCURBG^W4CSS
 ....W """"
 ...I '$L($G(STATUS))!($G(MFUNC(J,"I"))'=STATUS) D
 ....I $D(MFUNC(J,"BG")) W ";background-color:"_MFUNC(J,"BG")
 ....I $D(MFUNC(J,"FG")) W ";color:"_MFUNC(J,"FG")
 ....W """"
 ..W ">"
 ..;;W $$H2U^%L1FRM(MFUNC(J))
 ..W MFUNC(J)
 ..W "</td>",!
 W "</table></td>",!
 Q
 ;
WDFN(COL,J)
 I $G(J),$G(MFUNC(J,"WD")) Q +MFUNC(J,"WD")_"%"
 I $G(MFUNC("WD")) Q +MFUNC("WD")_"%"
 I $G(COL) Q (100\COL)_"%"
 Q "15%"
 ;
EXIT(WD) ;
 W "<td>",! ;;  width="""_WD_""">"
 W !,"<table width=""100%"" height=""100%"" border=""1"">",!
 W "<tr><td "
 I '$D(MFUNC("EXIT","TO")) W ""_$$^W4TOUCH_"=""Exit()"" "
 I $D(MFUNC("EXIT","TO")) W ""_$$^W4TOUCH_"="""_MFUNC("EXIT","TO")_""""
 W " class=""sheetexit"" "
 W " style="""
 I $D(MFUNC("EXIT","BG")) W "background-color:"_MFUNC("EXIT","BG")_";"
 I $D(MFUNC("EXIT","FG")) W "color:"_MFUNC("EXIT","FG")_";"
 W """"
 W ">"
 I '$D(MFUNC("EXIT")) W $$H2U^%L1FRM($$^%W1DICT("EXIT"))
 I $D(MFUNC("EXIT")) W $$^%W1DICT(MFUNC("EXIT"))
 W "</td></tr>",!
 W "</table></td>",!
 Q
 ;
FUNCTIONS ;
 W !,"<table width=""100%"" height="""_$S($D(HZGULM):6,1:12)_"%"" "
  W " style=""text-align:center"
  ;
  W """ "
  W "border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 W "<tr>",!
 N WDFN S WDFN="85%"
 I $$^W4SMALL S WDFN="82%"
 I '$D(MFUNC("INV")) D
 .D FUNC(WDFN)
 .D EXIT("100%")
 I $D(MFUNC("INV")) D
 .D EXIT("100%")
 .D FUNC(WDFN)
 W "</tr></table>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KB
W4KB ; [ 27.01.26 03:58 ] [ 02.09.25 19:34 ] [ 25.08.25 08:25 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S MAXL=8
 D PUT^%W3DEB("W4KB","%ARG=[%ARG")
 I $G(%ARG("MAXL")) D
 .S MAXL=+%ARG("MAXL")
 .I %ARG("MAXL")["!" S %ARG("PSW")=1
 ;
 I $G(%ARG("HEAD"))="QUANTITY",$$VVMSK^W4PRM D
 .S %ARG("MAXL")=14 S MAXL=%ARG("MAXL")
 ;
 S VL=$G(%ARG("VL"))
 I $P($G(%ARG("PLUSMIN")),";",2) S VL=$P($G(%ARG("PLUSMIN")),";",2)
 D KB(MAXL,VL)
 Q
 ;
 ;
KB(MAXL,VL) ;
 I $G(%ARG("CALC"))=1 S MAXL=999
 D PUT^%W3DEB("W4KB","MAXL=MAXL & VL=VL")
 D NOSELECT^%W1JS ; ***
 ;
 I $$^W4SMALL G SMALL ; --- !!!!!!!!!!!!!!!!!!!!!
 ;
 W "<div align=""center"" id=""kbid"" height=""100%"" >",!
 N WD S WD=$$^W4KF(300,2)_"px"
 D
 .I $G(%ARG("WIDTH"))["%" S WD=%ARG("WIDTH") Q
 .I $G(%ARG("WIDTH"))>20&($G(%ARG("WIDTH"))<101) S WD=%ARG("WIDTH")_"%" Q
 .I $G(%ARG("WIDTH"))>100 S WD=%ARG("WIDTH") Q
 ; 
 I $G(%ARG("VT"))=3,$G(%ARG("VZ"))="SUM",$$EMV^W4PRM,'$$EMVARM^W4PAYKB D CHKARM
 I $G(%ARG("VT"))=7,$G(%ARG("VZ"))="SUM",$$GETP^%W1PRM("NP")=1,$$CIBEMV^W4PRM,'$$EMVARM^W4PAYKB D CHKARM
 I $G(%ARG("VT"))=9,$G(%ARG("VZ"))="SUM",$$GETP^%W1PRM("NP")=1,'$$EMVARM^W4PAYKB D CHKARM
 I $G(%ARG("VT"))=10,$G(%ARG("VZ"))="SUM",$$GETP^%W1PRM("NP")=1,$$TNBEMV^W4PRM,'$$EMVARM^W4PAYKB D CHKARM
 ;
 I $G(%ARG("VT"))=3,$G(%ARG("VZ"))="SUM",$$ASKCAPC^W4PRM D
 .N RZ S RZ=40
 .W "<input type=""checkbox"" id=""capc"" style=""display:none"" onClick=""ChangeCaPc('"_RZ_"')"" />"
 . W "<label id =""lbcapc"" for=""capc"" >"
 .  W "<img src=""w4chkboxn.png"" height="""_RZ_"px"" width="""_RZ_"px"">"
 . W "</label>",!
 .
 .W "<span style=""color:green;text-decoration:underline;font-size:"_$$^W3FSZ(12)_""">"
 . W $$^%W1DICT("PRINTCARD?")_" &nbsp;&nbsp;"
 .W "</span><br>",!
 ;
 W "<table id=""tbkb"" width="""_WD_""" border=""0"">",!
  D DISPLAY
  ;
  I $$^W4TABLET=2 D SPACE
  D SUBMITKB
  ;
  I $$^W4TABLET=2!($G(%ARG("VT"))'=1!($G(%ARG("VZ"))'="SUM")) D
  .I $$^W4TABLET'=1 D SPACE
  I $$^W4TABLET=2 D SPACE
  ;
  I $L($G(%ARG("PLUSMIN"))) D PLUSMIN G CNC
  ;
  D NUMPAD
  ;
CNC I $G(%ARG("VP"))="GCOUP"!($$GETP^%W1PRM("VP")="GCOUP"),$G(%ARG("VZ"))="PAY",$$GCOUPIT^W4PRM,$$GETP^%W1PRM("NP")=1,'$G(%ARG("W4OPT")) G EKB
  ;
  I $G(%ARG("VP"))="FNDORD",$G(%ARG("VZ"))="ORDNMB" D MYORDERS
  ;
  I $G(%ARG("BACK")) D BACK G EKB
  ;
  I '$G(%ARG("NOBACK")) D
  .I $G(%ARG("HEAD"))'="SOADIM" D BACK
  .I $G(%ARG("HEAD"))="SOADIM",$$D^W3TMPORD(JB)<10,'$G(VL) D BACK
  ;
  I $$TEMPCRED^W4PRM,$G(%ARG("VZ"))="CUST" D ACKCREDIT
  ;
EKB ;
  I $L($G(%ARG("FOOT"))) D
  .W "<tr><td align=""center"">"
  .W "<span style=""color:darkblue;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  . W $$^%W1DICT(%ARG("FOOT"))
  .W "</span>",! 
  .W "</td></tr>" 
  W "</table>",!
  ;
  W "<script>",!
   W "FocSelTO('rkvid')",!
  W "</script>",!
 W "</div>",!
 Q
 ;
 ;
SBM(PRM) ;
 D PUT^%W3DEB("W4KB-SBM","PRM=PRM")
 N VL,NM,DL,SUG,IND,ER
 S VL=$P(PRM,";")
 S NM=$P(PRM,";",2)
 S DL=$P(PRM,";",3)
 S SUG=$P(PRM,";",4)
 S IND=$P(PRM,";",5)
 S DIAP=$P(PRM,";",6)
 S ER=$$VLD(VL,DL,SUG)
 I ER'=0 Q ER
 D PUT^W4TMPORD(NM,VL,IND)
 Q 0
 ;
VLD(VL,DL,SUG)
 ;;S ^AA("W4KB","VL")=VL
 ;;S ^AA("W4KB","DL")=DL
 ;;S ^AA("W4KB","SUG")=SUG
 N ER S ER=0
 I $G(DL),DL'[":",$L(VL)>DL Q -1
 I DL[":",$L(VL)<DL Q -2
 I DL[":",$L(VL)>$P(DL,";",2) Q -1
 I $G(SUG)="N",VL'?.N Q -3
 I $G(SUG)="N.",VL'?."+-"1N.N.".".N Q -4
 I $G(DIAP),DIAP["-",VL<$P(DIAP,"-")!(VL>$P(DIAP,"-",2)) Q -5
 Q ER
 ;
 ;
DIGIT(K,MAXL,COLOR,PROC,FSZ) ;
 I '$G(FSZ) S FSZ=$S($D(W4ABC):22,1:20)
 I $$1024^W4WDSCR S FSZ=FSZ-3
 N K1 S K1=K
 I K?.P,K'=" " S K1="\"_K
 I $G(PROC)="" S PROC="ClickDigit('"_K1_"',"_+$G(MAXL)_")"
 W "<td class=""digit"""
 D
 .I (+K=200)!(+K=100)!(+K=50) W " padding=""0px"" " Q
 .I (+K=20)!(+K=10) W " padding=""0px"" " Q
 .N PAD S PAD=$G(%ARG("PAD")) I PAD<7 S PAD=$S($$1024^W4WDSCR:3,1:7)
 .W " padding="""_PAD_"px"" "
 ;
 I $G(SPAN) W " colspan="""_SPAN_""" "
 ;
 I '$$^W4SMALL,$$^W4TABLET'=2,'$D(W4ABC),$L($G(COLOR))!$D(PRTIPAH) D  G DIGIT1
 .W " style="""
 .I $L($G(COLOR)) W " color:"_COLOR
 .I $D(PRTIPAH) W ";font-size:"_$$^W3FSZ(FSZ)
 .W """"
 ;
 I $$^W4TABLET=2 D  G DIGIT1
 .W " style="""
 .I $L($G(COLOR)) W ";color:"_COLOR
 .W ";font-size:"_$$^W3FSZ(30)_";height:"_$$HG_";width:80px"
 .W """"
 ;
 I $$^W4SMALL,$D(W4ABC) D  G DIGIT1
 .W " style=""font-size:"_$$^W3FSZ(14)
 .I $L($G(COLOR)) W ";color:"_COLOR
 .W """"
 ;
 I $$^W4SMALL,'$D(W4ABC) D  G DIGIT1
 .W " style=""font-size:"_$$^W3FSZ(40)
 .I $L($G(COLOR)) W ";color:"_COLOR
 .W """"
 ;
 ;;I '$$^W4SMALL,$D(W4ABC) D  G DIGIT1
 I '$$^W4SMALL D  G DIGIT1
 .W " style=""font-size:"_$$^W3FSZ(FSZ)
 .I $L($G(COLOR)) W ";color:"_COLOR
 .W """"
 ;
DIGIT1 ;
 N BC S BC="#eaeaea"
 I $$ARROW(K) S BC="lightblue"
 ;
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='grey'"""
 W " onMouseDown=""this.style.backgroundColor='grey'"""
 N ACT S ACT="this.style.backgroundColor='"_BC_"';"_PROC
 I $L($G(%ARG("ELTO"))) S ACT="DigitElTo('"_$G(%ARG("ELTO"))_"');"_ACT
 W " "_$$^W4TOUCH_"="""_ACT_""" "
 W " onMouseOut=""this.style.backgroundColor='"_BC_"'"""
 W ">"
 I $L(K)=1 W "&nbsp;&nbsp;"_K_"&nbsp;&nbsp;"
 E  D
 .I K="Up" W "<img src=""w4up.jpg"" />" Q
 .I K="Down" W "<img src=""w4down.jpg"" />" Q
 .I +K=200 W "<img src=""w4200.png"" width=""100%"" height=""80%""/>" Q
 .I +K=100 W "<img src=""w4100.png"" width=""100%"" height=""80%""/>" Q
 .I +K=50 W "<img src=""w450.png"" width=""100%"" height=""80%""/>" Q
 .I K="20+" W "<img src=""w420.png"" width="""_$$^W4KF(50)_"px"" height="""_$$^W4KF(36)_"px"" />" Q
 .I K="10+" W "<img src=""w410.png"" width="""_$$^W4KF(40)_"px"" height="""_$$^W4KF(40)_"px"" />" Q
 .W K
 W "</td>"
 Q
 ;
DISPLAY ;
  I '$G(%ARG("TOPAY")) D
  .W "<tr>"
  . W "<td align=""center"" dir="""_$$^%W1DIR_""" class=""rkvhd"" >"
  .  D
  .  .I $G(%ARG("VP"))="VCARD"&($G(%ARG("VZ"))="DETAILS")&($G(%ARG("HD"))="GETDETAILSCARD")&$$SUPER^W3PRM D
  .  .. W $$^%W1DICT("CARDNUMBER")
  .  .. I $G(@$$^W4TMPORD@("VC",1,"CARD")) D
  .  ... W "<br><span style=""font-size:"_$$^W3FSZ(9)_";color:darkblue"">"_$$^%W1DICT("TODELPREVCARDPRESSSUBMIT")_"</span>",!
  .  .
  .  .N HD S HD=$G(%ARG("HEAD")) I HD["-" S HD=$P(HD,"-") Q:HD="" 
  .  .I HD="" S HD=$G(%ARG("VZ"))
  .  .D 
  .  ..I $E(HD)="!" W $$H2U^%L1FRM($E(HD,2,255)) Q
  .  ..I $G(%ARG("VZ"))="SUM",$G(%ARG("VT"))=1 S HD="CASHSUM"
  .  ..W $$^%W1DICT(HD)
  .  .I HD["CUST"!(HD="LKHN")!(HD="COMPANYNUMBER"),'$G(%ARG("NOFIND")) D
  .  ..W "<br><span style=""font-size:"_$$^W3FSZ(10)_";color:darkblue"">"_$$^%W1DICT("TOFINDTYPEBEGNAME")_"</span>",!
  . W "</td>"
  .W "</tr>",!
  ;
  W "<tr><td>"
  W " <table dir="""_$$^%W1DIR_""" style=""width:100%;height:100%"">",!
   I $G(%ARG("TOPAY")) D
   .W "<tr >"
   . W "<td style=""font-weight:bold"">"
   .  D
   .  .N TOPAY S TOPAY="TOPAY"
   .  .I $G(%ARG("VZ"))="SUM",$G(%ARG("VT"))=1 S TOPAY="CASHSUM"
   .  .W $$^%W1DICT(TOPAY)_"<br>"
   .
   .  S HZM=$$GETP^%W1PRM("HZM") 
   .  D
   .  .I HZM S VL1=$$ITRA^W4HZMST(HZM) Q
   .  .S VL1=VL 
   .  D DISPINP(VL1,"topayid","white","black")
   . W "</td>"
   .W "</tr>",!
   ;
   W "<tr>"
    W "<td style=""font-weight:bold"">"
     I $G(%ARG("TOPAY")) W $$^%W1DICT("PAY")_"<br>"
     S VL1=VL
     I $$PRDIV S VL1=$$DIV(VL,2)
     D DISPINP(VL1,"rkvid")
    W "</td>"
   W "</tr>",!
  W "</table></td></tr>",!
  Q
  ;
PRDIV(STAM) ;
 I $G(%ARG("DIV")) Q 1
 I $G(%ARG("VT"))>1,$G(%ARG("VT"))'=6,$G(%ARG("VT"))'=5,$G(%ARG("VZ"))="SUM",$P($$GETP^%W1PRM("DIV"),";",2) Q 1
 Q 0
  ;
DIV(VL,NRZ) ;
 N VL1,VL10
 S VL10=$$GETP^%W1PRM("DIV")
 S VL1=$P(VL10,";",NRZ)
 N HZM S HZM=+$$GETP^%W1PRM("HZM")
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 ;
 I NRZ=1 D
 .S VL1=ITRA
 .I $P(VL10,";",3)>1 S VL1=$P(VL10,";")
 .I VL1>ITRA S VL1=ITRA
 ;
 I NRZ=2 D
 .I ITRA>0,VL1>ITRA,VL1-1'>ITRA S VL1=VL1-1
 .I ITRA<0,VL1<ITRA,VL1+1'<ITRA S VL1=VL1+1
 ;
 ;;I (VL1+1)'<ITRA&(ITRA>0)!((VL1-1)'>ITRA&(ITRA<0)) D
 .S VL1=$J(ITRA,2,2)
 .I NRZ=2 S VL1=$P(VL10,";",2)
 Q VL1
 ;
 ;
DISPINP(VL,RKVID,BGC,FGC) ;
 I $G(BGC)="" S BGC="lightblue"
 I $G(FGC)="" S FGC="black" ; -- WAS WHITE 12/10/19
 ;
 S DISPTYPE="text"
 I $G(%ARG("PSW")) S DISPTYPE="password"
 ;
 W "<input type="""_DISPTYPE_""" class=""rkv"" id="""_RKVID_""" "
   W " dir=""LTR"" "
   W " onKeyPress=""OnKeyPress(event)"" "
   I $$^W4MHNKD W " onInput=""OnInput('"_RKVID_"',event)"" "
   W " size=""28"" "
   I $G(%ARG("CALC"))'=1 W "maxlength="""_MAXL_""""
   ;;I '$G(%ARG("BACK")),'$$^W4SMALL W " onClick=""this.select()"" onFocus=""SetRkvFocus(this)"" onBlur=""LostRkvFocus(this)"" "
   I '$G(%ARG("BACK")),'$$^W4SMALL W " onClick=""this.select();SetRkvFocus(this)"" "
   I $G(%ARG("BACK"))!$$^W4TBTABC D
   .W " readonly=""readonly"" "
   W " value="""_$G(VL)_""""
   ;
   I $L($G(VL))!(MAXL>8) D
   .D
   ..I $G(%ARG("VZ"))="SUM" W " style=""font-size:"_$$FSZ(14) Q
   ..I MAXL<9 W " style=""font-size:"_$$FSZ(14) Q
   ..I MAXL>8,MAXL<13 W " style=""font-size:"_$$FSZ(12) Q
   ..I MAXL>12 W " style=""font-size:"_$$FSZ(10) Q
   .Q:$G(%ARG("BACK"))
   .I $L($G(VL)),MAXL>8 W ";background-color:"_BGC_";color:"_FGC
   .I $L($G(VL)),MAXL<9 W " style=""background-color:"_BGC_";color:"_FGC
   .I $G(%ARG("COLOR")) W "color:"_%ARG("COLOR")
   .W """"
   W " />"
 Q
 ;
 ;
SUBMITKB ;
  N SUBMIT
  W "<tr "
   I $$^W4TABLET=2 W "height=""80px"" "
  W ">"
   W "<td align=""center"" >"
    S SUBMIT=$$^%W1DICT("SUBMIT")
    I $G(%ARG("CALC"))=1 S SUBMIT="="
    N HG S HG=$$HG I $$^W4TABLET=1 S HG=45
     W "<input type=""button"" class=""rkvsbm"" style=""height:"_HG_"px"" value="""_SUBMIT_""" "
      W " id=""sbm"" "
      W " "_$$^W4TOUCH_"=""Sbm()"" "
     W ">"
   W "</td>"
  W "</tr>",!
  Q
  ;
MYORDERS ;
  D SPACE
  W "<tr>"
   W "<td align=""center"">"
   N CONT,PRM S CONT="MYORDERS",PRM=0
   I $$MGR^W4KOTMLZ S CONT="DAYORDERS",PRM=1
   W "<input type=""button"" class=""rkvsbm"" "
    W " style=""color:brown;height:"_$$^W4KF(46)_""" "
    W " value="""_$$^%W1DICT(CONT)_""" "
    W $$^W4TOUCH_"=""OrdersList('"_PRM_"')"" >"
   W "</td>"
  W "</tr>",!
  Q
  ;
PLUSMIN ;
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" width=""100%""><tr>",!
    N MAX,MIN
    S MIN=$P(%ARG("PLUSMIN"),":",1)
    S MAX=$P(%ARG("PLUSMIN"),":",2)
    D PLMIN("+",MAX)
    D PLMIN("-",MIN)
    W "</tr></table></td>",!
  W "</tr>",!
  W "<tr><td>&nbsp;</td></tr>",!
  Q
  ;
NUMPAD ;
  I $$^W4TABLET,$G(@$$^W4PRM@("NOTBLTKB")) Q
  ;
  I '$D(VZ),$G(%ARG("VZ"))'="" S VZ=%ARG("VZ")
  W "<tr "
   D TRDGSTYLE
  W ">"
   W "<td align=""center"">"
   N PAD S PAD=4 ;;5
   ;
    W "<table class=""tblbut"" border=""0"" "
     W "cellpadding="""_PAD_""" width=""100%"" height=""100%"" "
     W " cellspacing="""_$S($$^W4TABLET=2:16,1:4)_""" " 
    W ">",!
     S K=0
     F I=1:1:3 D
     .D TRHG
     .F J=1:1:3 D
     ..S K=K+1
     ..D DIGIT(K,MAXL)
     .W "</tr>",!
     ;
     D TRHG
      D
      .N NKD S NKD="." I $G(%ARG("ZW")) S NKD="*"
      .I $$^W4MHNKD S NKD="00"
      .D DIGIT(NKD,MAXL),DIGIT(0,MAXL),DIGIT("Del",MAXL,"red","DelDigit()")
     W "</tr>",!
     ;
     I $G(VT)=1,$G(VZ)="SUM" D
     .D TRHG
     . D DIGIT("200+",MAXL),DIGIT("100+",MAXL),DIGIT("50+",MAXL)
     .W "</tr>",!
     .I $$^W4TABLET'=1 D
     ..D TRHG
     .. D DIGIT("20+",MAXL),DIGIT("10+",MAXL),DIGIT("+",MAXL)
     ..W "</tr>",!
     ;
     N TIPAH S TIPAH=$$^W4GL("W4TIPAH")
     N COLTIPAH S COLTIPAH=0
     I $G(%ARG("CALC")),$G(VZ)="SUM",$D(@TIPAH)>9,'$$NOTIPALL^W4PRM D
     .;;I $G(@$$^W4PRM@("TIPFREE")),$$^W4TABLET=1 Q
     .D TRHG
     . N I,VL F I=1:1:3 D
     . . S VL=$G(@TIPAH@(I))
     . . I 'VL D DIGIT("",MAXL) Q
     . . N PRTIPAH S PRTIPAH=""
     . . S COLTIPAH=COLTIPAH+1
     . . D DIGIT("+"_VL_"%",MAXL,"green")
     .W "</tr>",!
     ;
     I $G(%ARG("CALC")),'COLTIPAH!$G(@$$^W4PRM@("TIPFREE")) D
     .D TRHG
     . D DIGIT("+",MAXL),DIGIT("-",MAXL)
     . I '$$^W4MHNKD D DIGIT("%",MAXL)
     . I $$^W4MHNKD D DIGIT("00",MAXL)
     .W "</tr>",!
     .D TRHG
     . D DIGIT("*",MAXL)
     . D DIGIT("/",MAXL)
     . D DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
     ;
     I $G(%ARG("CALC")),COLTIPAH,'$G(@$$^W4PRM@("TIPFREE")) D
     .D TRHG
     . D DIGIT("-",MAXL),DIGIT("/",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
     ;
     I $G(%ARG("MINUS")),'$G(%ARG("CALC")) D
     .D TRHG
     . S SPAN=2 D DIGIT("-",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
     ;
     I $G(%ARG("PROC")) D
     .N PROC S PROC=%ARG("PROC")
     .D TRHG
     .D
     .. I PROC=1 D DIGIT("+",MAXL),DIGIT("%",MAXL),DIGIT("-",MAXL) Q
     .. I PROC=2 D DIGIT("-",MAXL,"red"),DIGIT("%",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()") Q
     .. I PROC=3 S SPAN=2 D DIGIT("%",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  Q
  ;
PLMIN(SIGN,LIM) ;
 W "<td width=""50%"" class=""digit"""
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';ClickSign('"_SIGN_"',"_+LIM_")"""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 W "&nbsp;&nbsp;"_SIGN_"&nbsp;&nbsp;"
 W "</td>"
 Q
SPACE ;
 ;;W "<tr><td>"_$S($$^W4TABLET=1:"",1:"&nbsp;")_"</td></tr>",!
 W "<tr><td></td></tr>",!
 Q
 ;
BACK ;
 I $G(%ARG("VT"))'=1,$$^W4TABLET'=1 D
 .W "<tr><td>"_$S($$^W4TABLET=1:"",1:"&nbsp;")_"</td></tr>",!
 ;
 N HG S HG=$$HG
 I $$^W4TABLET=1 S HG=40
 W "<tr>"
  W "<td align=""center"" >"
   W "<input type=""button"" class=""rkvsbm"" style=""color:red;height:"_HG_""" "
   N BACK S BACK=$$^%W1DICT("BACK")
   I $G(%ARG("CALC"))=1 S BACK=$$^%W1DICT("CLOSE")
   W "value="""_BACK_""" "_$$^W4TOUCH_"=""Cnc()"" >"
  W "</td>"
 W "</tr>",!
 Q
 ;
 ;
SMALL ;
 N HD S HD=$G(%ARG("HEAD"))
 I HD["-" S HD=$P(HD,"-")
 ;
 W "<div align=""center"" id=""kbid"" width=""90%"" >",!
 W "<table>",!
  W "<tr>"
   W "<td>"
    W "<table>"
      W "<tr>"
        W "<td align=""center"" dir="""_$$^%W1DIR_""" class=""rkvhd"" >"
         W $$^%W1DICT(HD)
        W "</td>"
      W "</tr>",!
      ;
      I $G(HD)="SOADIM" S VL=""
      ;
      W "<tr>"
       W "<td align=""center"">"
        W "<input type=""text"" class=""rkv"" id=""rkvid"""
         W " size="""_(MAXL-1)_""" maxlength="""_MAXL_""""
         ;;W " onFocus=""this.value=''"""
         W " value="""_$G(VL)_""""
         I $G(HD)["QNAT" W " readonly=""readonly"" "
         W " style="""
         I $L($G(VL)) W "background-color:lightblue;color:black"
         I MAXL>5,MAXL<13 W ";font-size:"_$$FSZ(12)
         I MAXL>12 W ";font-size:"_$$FSZ(10)
         W """"
         W " />"
       W "</td>"
      W "</tr>",!
      ;
      ;;W "<tr><td>&nbsp;</td></tr>",!
      ;
      W "<tr>"
       W "<td align=""center"">"
        W "<input type=""button"" class=""rkvsbm"" value="""_$$^%W1DICT("SUBMIT")_""" "_$$^W4TOUCH_"=""Sbm()"" >"
       W "</td>"
      W "</tr>",!
      ;
      ;;W "<tr><td>&nbsp;</td></tr>",!
      ;
      I $L($G(%ARG("PLUSMIN"))) D  G CNCSMALL
      .W "<tr>"
      .W "<td align=""center"">"
      . W "<table border=""1"" width=""100%""><tr>",!
      . N MAX,MIN
      . S MIN=$P(%ARG("PLUSMIN"),":",1)
      . S MAX=$P(%ARG("PLUSMIN"),":",2)
      . D PLMIN("+",MAX) D PLMIN("-",MIN)
      . W "</tr></table></td>",!
      .W "</tr>",!
      .W "<tr><td>&nbsp;</td></tr>",!
      ;
      I $$^W4SIMUL D TRSP D KBRD D TRSP ; -- ???
CNCSMALL
      I HD'="SOADIM" D BACK
      I HD="SOADIM",$$D^W3TMPORD(JB)<10,'$G(VL) D BACK
      ;
      W "</table>",!
     W "</td>",!
     ;
     I $L($G(%ARG("PLUSMIN"))) G ESMALL
ESMALL ;
 W " </tr>",!
 W "</table>",!
 ;
 W "<br>"
 W "<div id=""cmnt"" align=""center"" dir="""_$$^%W1DIR_""">",!
 W "</div>",!
 W "</div>",!
 Q
 ;
 ;
KBRD ;
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""0"" >",!
     S K=0
     F I=1:1:3 D
     .W "<tr>",!
     .F J=1:1:3 D
     ..S K=K+1
     ..D DIGIT(K,MAXL)
     .W "</tr>",!
     W "<tr>"
     D DIGIT(".",MAXL) D DIGIT(0,MAXL)
     W "<td class=""digit"" style=""color:red"" "_$$^W4TOUCH_"=""DelDigit()"""
     W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
     W " onMouseDown=""this.style.backgroundColor='gray'"""
     W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
     W ">Del</td></tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
 Q
 ;
CHECKREMAIND(PRM) ;
 N SH,QN,MSG,ER,CD
 S SH=$P(PRM,";")
 S QN=$P(PRM,";",2)
 S ER=""
 S CD=$$CDST^W3HZMST(JB,SH)
 I CD,'$$^W4AIN,$$UR^W4MENU<3,$L($$BELONG11^W4TSF(CD)) S ER="0:BELONG11"
 I $L(ER) Q ER
 ;
 S MSG=$$MSG^W4ITEND("SH="_SH,QN)
 I MSG'="" Q "0:"_MSG
 Q 1
 ;
DIAPSD(STAM) ;
 N NMB S NMB=$$GET^%W1PRM("NMB")
 N SUGS S SUGS=$$SUGS^W4L(NMB) I SUGS="" Q ""
 I $L($G(@$$^W4PRM@("DIAPSD",SUGS))) Q $G(^(SUGS))
 Q "0-999"
 ;
SETDMSH(VL) ;
 D PUT^%W3DEB("W4KB-SETDMSH","VL=VL")
 N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'$$^W4ISORD(HZM)
 D PUT^W4HZMST(HZM,"DMSAH",VL)
 I $$DTMPORD D
 .D PUT^W3HZMST(JB,"DMSAH",VL)
 N DMSH S DMSH=$$TOT^W4HZMST(HZM)*VL*.01
 D PUT^W4HZMST(HZM,"DMSH",DMSH)
 I $$DTMPORD D
 .D PUT^W3HZMST(JB,"DMSH",DMSH)
 N DMSHOLD
 S DMSHOLD=$$DMSH^W4HZMST(HZM)
 N NEWTSHL S NEWTSHL=$J($$TSHL^W4HZMST(HZM)+DMSH-DMSHOLD,2,2)
 D PUT^W4HZMST(HZM,"TSHL",NEWTSHL)
 I $$DTMPORD D
 .D PUT^W3HZMST(JB,"TSHL",NEWTSHL)
 Q
 ;
DTMPORD(STAM) ;
 Q $D(@$$^W4TMPORD)=11
 ;
CHNDLV(VL) ;
 D PUT^%W3DEB("W4KB-CHNDLV","VL=VL")
 D PUT^%W1PRM("SAVEORD",.5)
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I $$^W4ISORD(HZM),$$CLOSE^W4HZMST(HZM) Q
 ;;I $D(@$$^W4TMPORD)<11,'$P($G(@$$^W4TMPORD),"~",9) Q  ; -- 22.10.20 -> COMMENT
 N NEWTSHL
 ;
 N DMSH
 ;
 I VL["%" D  Q
 .N TOT S TOT=$$TOTORD^W3HZMST(JB)
 .D PUT^W3HZMST(JB,"DMSAH",$$FIX(VL))
 .S DMSH=$J(TOT*VL*.01,2,2)
 .D PUT^W3HZMST(JB,"DMSH",$J(DMSH,2,2))
 .S NEWTSHL=$$TOTORD^W3HZMST(JB)-$$HNH^W3HZMST(JB)+DMSH
 .N TSHL S TSHL=NEWTSHL D ^W4IGUL S NEWTSHL=TSHL
 .D PUT^W3HZMST(JB,"TSHL",$J(NEWTSHL,2,2))
 .D PUT^W3HZMST(JB,"HNH2",$J(HNH2,2,2))
 .I $$^W4ISORD(HZM) D
 ..D PUT^W4HZMST(HZM,"DMSAH",$$FIX(VL))
 ..D PUT^W4HZMST(HZM,"DMSH",$J(DMSH,2,2))
 ..D PUT^W4HZMST(HZM,"TSHL",$J(NEWTSHL,2,2))
 ..D PUT^W4HZMST(HZM,"HNH2",$J(HNH2,2,2))
 ;
 S NEWTSHL=$$TOTORD^W3HZMST(JB)-$$HNH^W3HZMST(JB)+VL
 D
 .N TSHL S TSHL=NEWTSHL D ^W4IGUL S NEWTSHL=TSHL
 .D PUT^W3HZMST(JB,"HNH2",$J(HNH2,2,2))
 ;
 D PUT^W3HZMST(JB,"DMSAH","-")
 D PUT^W3HZMST(JB,"DMSH",$$FIX(VL))
 D PUT^W3HZMST(JB,"TSHL",$J(NEWTSHL,2,2))
 ;
 I $$^W4ISORD(HZM) D
 .D PUT^W4HZMST(HZM,"DMSAH","-")
 .D PUT^W4HZMST(HZM,"DMSH",$$FIX(VL))
 .D PUT^W4HZMST(HZM,"TSHL",$J(NEWTSHL,2,2))
 .D PUT^W4HZMST(HZM,"HNH2",$J(HNH2,2,2))
 Q
 ;
FIX(VL) ;
 Q $J(VL,2,2)_"!"
 ;
ARROW(VL) ;
 I VL="Up"!(VL="Down") Q 1
 Q 0
 ;
ACKCREDIT ;
 N HZM,LK
 S HZM=+$$GETP^%W1PRM("HZM")
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I $$^W4MSD(NMB) Q
 I $$ISCR^W4L(NMB) Q
 D SPACE
 W "<tr>"
 W " <td align=""center"">"
 W "  <input type=""button"" class=""rkvsbm"" style=""color:brown"" "
 N CR S CR=$$^%W1DICT("ACKCREDIT")
 I $$TEMPCRED^W4PRM S CR=$$^%W1DICT("ACKTEMPCREDIT")
 W "  value="""_CR_""" "_$$^W4TOUCH_"=""AckCredit()"" >"
 W " </td>"
 W "</tr>",!
 Q
 ;
HG(STAM) ; 
 Q $S($$^W4TABLET=1:$S($G(%ARG("VZ"))="SUM":30,1:45),$$^W4TABLET=2:"60",$$1024^W4WDSCR:"46",1:"55")
 ;
TRSP ; 
 W "<tr><td>&nbsp;</td></tr>",! 
 Q 
 ;
FSZ(NOM) ; 
 I $$^W4TABLET S NOM=NOM+2
 Q $$^W3FSZ(NOM) 
 ;
TRHG ;
 W "<tr style=""height:"_$$HG_"px"" >",!
 Q 
 ;
CHKARM ;
 N RZ S RZ=40
 W "<input type=""checkbox"" id=""arm"" style=""display:none"" onClick=""ChangeArm('"_RZ_"')"" />"
  W "<label id =""lbarm"" for=""arm"" >"
   W "<img src=""w4chkboxn.png"" height="""_RZ_"px"" width="""_RZ_"px"">"
  W "</label>",!
 
 W "<span style=""color:green;text-decoration:underline;font-size:"_$$^W3FSZ(12)_""">"
  W $$^%W1DICT("TYPECARD")_" &nbsp;&nbsp;"
 W "</span><br>",!
 Q
 ;
SVTMPORD() 
 K ^|$$^W3MAIN|TMPORD0(JB)
 M ^|$$^W3MAIN|TMPORD0(JB)=^|$$^W3MAIN|TMPORD(JB)
 Q 1 
 ;
TRDGSTYLE ; 
  W "style=""height:"_$$^W4KF($S($$^W4TABLET=1:"45",$$^W4TABLET=2:"60",$$1024^W4WDSCR:48,1:"55"))_"px"_""" "
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KB0
W4KB ; [ 27.05.15 13:04 ] [ 06.04.15 21:17 ] [ 25.12.14 13:16 ]
 N (JB,%ARG,%REM)
 S MAXL=8
 D PUT^%W3DEB("W4KB","%ARG=[%ARG")
 I $G(%ARG("MAXL")) D
 .S MAXL=+%ARG("MAXL")
 .I %ARG("MAXL")["!" S %ARG("PSW")=1
 S VL=$G(%ARG("VL"))
 I $G(%ARG("PLUSMIN"))[";" S VL=$P($G(%ARG("PLUSMIN")),";",2)
 D KB(MAXL,VL)
 Q
 ;
KB(MAXL,VL) ;
 D PUT^%W3DEB("W4KB","MAXL=MAXL & VL=VL")
 D NOSELECT^%W1JS
 I $$^W4SMALL G SMALL
 W "<div align=""center"" id=""kbid"" >",!
 N WD S WD=96 I $G(%ARG("WIDTH"))>20&($G(%ARG("WIDTH"))<101) S WD=%ARG("WIDTH")
 W "<table width="""_WD_"%"" >",!
  D DISPLAY
  ;
  D SUBMITKB
  ;
  I $L($G(%ARG("PLUSMIN"))) D PLUSMIN G CNC
  ;
  D NUMPAD
  ;
CNC  I $G(%ARG("BACK")) D BACK G EKB
  ;
  I '$G(%ARG("NOBACK")) D
  .I $G(%ARG("HEAD"))'="SOADIM" D BACK
  .I $G(%ARG("HEAD"))="SOADIM",$$D^W3TMPORD(JB)<10,'$G(VL) D BACK
  ;
EKB W "</table>",!
 W "</div>",!
 Q
 ;
SBM(PRM) ;
 D PUT^%W3DEB("W4KB-SBM","PRM=PRM")
 N VL,NM,DL,SUG,IND,ER
 S VL=$P(PRM,";")
 S NM=$P(PRM,";",2)
 S DL=$P(PRM,";",3)
 S SUG=$P(PRM,";",4)
 S IND=$P(PRM,";",5)
 S DIAP=$P(PRM,";",6)
 S ER=$$VLD(VL,DL,SUG)
 I ER'=0 Q ER
 D PUT^W4TMPORD(NM,VL,IND)
 Q 0
 ;
VLD(VL,DL,SUG)
 N ER S ER=0
 I $G(DL),DL'[":",$L(VL)>DL Q -1
 I DL[":",$L(VL)<DL Q -2
 I DL[":",$L(VL)>$P(DL,";",2) Q -1
 I $G(SUG)="N",VL'?.N Q -3
 I $G(SUG)="N.",VL'?."+-"1N.N.".".N Q -4
 I $G(DIAP),DIAP["-",VL<$P(DIAP,"-")!(VL>$P(DIAP,"-",2)) Q -5
 Q ER
 ;
DIGIT(K,MAXL,COLOR,PROC) ;
 N K1 S K1=K
 I K?.P S K1="\"_K
 I $G(PROC)="" S PROC="ClickDigit('"_K1_"',"_+$G(MAXL)_")"
 W "<td class=""digit"""
 I $G(SPAN) W " colspan="""_SPAN_""" "
 I '$$^W4SMALL,'$D(W4ABC),$L($G(COLOR))!$D(PRTIPAH) D
 .W " style="""
 .I $L($G(COLOR)) W " color:"_COLOR
 .I $D(PRTIPAH) W ";font-size:"_$$^W3FSZ
 .W """"
 I $$^W4SMALL,$D(W4ABC) D
 .W " style=""font-size:"_$$^W3FSZ(14)
 .I $L($G(COLOR)) W ";color:"_COLOR
 .W """"
 I '$$^W4SMALL,$D(W4ABC) D
 .W " style=""font-size:"_$$^W3FSZ(22)
 .I $L($G(COLOR)) W ";color:"_COLOR
 .W """"
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='grey'"""
 W " onMouseDown=""this.style.backgroundColor='grey'"""
 W " onMouseUp=""this.style.backgroundColor='#eaeaea';"_PROC_""""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 I $L(K)=1 W "&nbsp;&nbsp;"_K_"&nbsp;&nbsp;"
 E  W K
 W "</td>"
 Q
 ;
DISPLAY ;
  I '$G(%ARG("TOPAY")) D
  .W "<tr>"
  . W "<td align=""center"" dir="""_$$^%W1DIR_""" class=""rkvhd"" >"
  .  N HD S HD=$G(%ARG("HEAD")) I HD["-" S HD=$P(HD,"-")
  .  W $$^%W1DICT(HD)
  .  I HD["CUST"!(HD="LKHN")!(HD="COMPANYNUMBER") D
  .  .W "<br><span style=""font-size:10pt;color:darkblue"">"_$$^%W1DICT("TOFINDTYPEBEGNAME")_"</span>",!
  .  .;;I HD["CUSTOMNUMBER" D
  .  ..W "<br><span style=""font-size:10pt;color:red"">"_$$^%W1DICT("TOCUSTERASEPRESS0")_"</span>",!
  . W "</td>"
  .W "</tr>",!
  ;
  W "<tr><td>"
  W " <table dir="""_$$^%W1DIR_""" style=""width:100%;height:100%"">",!
   I $G(%ARG("TOPAY")) D
   .W "<tr >"
   . W "<td style=""font-weight:bold"">"
   .  W $$^%W1DICT("TOPAY")_"<br>"
   .  S VL1=VL I $G(%ARG("DIV")) D
   . . S VL1=$P($$GETP^%W1PRM("DIV"),";")
   . . N HZM S HZM=+$$GETP^%W1PRM("HZM")
   . . N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
   . . I VL1>ITRA&(ITRA>0)!(VL1<ITRA&(ITRA<0)) S VL1=$J(ITRA,2,2)
   .  D DISPINP(VL1,"topayid","white","black")
   . W "</td>"
   .W "</tr>",!
   ;
   W "<tr>"
    W "<td style=""font-weight:bold"">"
     I $G(%ARG("TOPAY")) W $$^%W1DICT("PAY")_"<br>"
     S VL1=VL I $G(%ARG("DIV")) S VL1=$P($$GETP^%W1PRM("DIV"),";",2)
     D DISPINP(VL1,"rkvid")
    W "</td>"
   W "</tr>",!
  W "</table></td></tr>",!
  Q
  ;
  ;
DISPINP(VL,RKVID,BGC,FGC) ;
 I $G(BGC)="" S BGC="darkblue"
 I $G(FGC)="" S FGC="white"
 ;
 S DISPTYPE="text"
 I $G(%ARG("PSW")) S DISPTYPE="password"
 ;
 W "<input type="""_DISPTYPE_""" class=""rkv"" id="""_RKVID_""" "
   W " dir=""LTR"" "
   W " onKeyPress=""OnKeyPress(event)"" "
   W " size=""25"" maxlength="""_MAXL_""""
   I '$G(%ARG("BACK")) W " onClick=""this.select()"" onFocus=""SetRkvFocus(this)"" onBlur=""LostRkvFocus(this)"" "
   I $G(%ARG("BACK")) W " readonly=""readonly"" "
   W " value="""_$G(VL)_""""
   I $L($G(VL))!(MAXL>8) D
   .I MAXL>8,MAXL<13 W " style=""font-size:"_$$^W3FSZ(12)
   .I MAXL>12 W " style=""font-size:"_$$^W3FSZ(10)
   .Q:$G(%ARG("BACK"))
   .I $L($G(VL)),MAXL>8 W ";background-color:"_BGC_";color:"_FGC
   .I $L($G(VL)),MAXL<9 W " style=""background-color:"_BGC_";color:"_FGC
   .I $G(%ARG("COLOR")) W "color:"_%ARG("COLOR")
   .W """"
   W " />"
 Q
SUBMITKB ;
  N SUBMIT
  W "<tr>"
   W "<td align=""center"">"
   S SUBMIT=$$^%W1DICT("SUBMIT")
   I $G(%ARG("CALC"))=1 S SUBMIT="="
   W "<input type=""button"" class=""rkvsbm"" value="""_SUBMIT_""" "
    W " id=""sbm"" "
    W " onKeyPress=""OnKeyPress(event)"" "
    W "onMouseUp=""Sbm()"" >"
   W "</td>"
  W "</tr>",!
  Q
  ;
PLUSMIN ;
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" width=""100%""><tr>",!
    N MAX,MIN
    S MIN=$P(%ARG("PLUSMIN"),":",1)
    S MAX=$P(%ARG("PLUSMIN"),":",2)
    D PLMIN("+",MAX) D PLMIN("-",MIN)
    W "</tr></table></td>",!
  W "</tr>",!
  Q
  ;
NUMPAD ;
  W "<tr "
   W "style=""height:50px"" "
  W ">"
   W "<td align=""center"">"
   N PAD S PAD=5
   ;;I $$LINUX^W4POSPRM S PAD=0
   ;
    W "<table border=""1"" cellpadding="""_PAD_""" width=""100%"" height=""100%"">",!
     S K=0
     F I=1:1:3 D
     .W "<tr>",!
     .F J=1:1:3 D
     ..S K=K+1
     ..D DIGIT(K,MAXL)
     .W "</tr>",!
     ;
     W "<tr>"
      D DIGIT(".",MAXL),DIGIT(0,MAXL),DIGIT("Del",MAXL,"red","DelDigit()")
     W "</tr>",!
     ;
     I $G(VT)=1,$G(VZ)="SUM" D
     .W "<tr>"
     . D DIGIT("200",MAXL),DIGIT(100,MAXL),DIGIT("50",MAXL)
     .W "</tr>",!
     ;
     N TIPAH S TIPAH=$$^W4GL("W4TIPAH")
     N COLTIPAH S COLTIPAH=0
     I $G(%ARG("CALC")),$G(VZ)="SUM",$D(@TIPAH)>9 D
     .W "<tr style=""height:50px"">"
     . N I,VL F I=1:1:3 D
     . . S VL=$G(@TIPAH@(I))
     . . I 'VL D DIGIT("",MAXL) Q
     . . N PRTIPAH S PRTIPAH=""
     . . S COLTIPAH=COLTIPAH+1
     . . D DIGIT("+"_VL_"%",MAXL,"green")
     ;
     I $G(%ARG("CALC")),'COLTIPAH!$G(@$$^W4PRM@("TIPFREE")) D
     .W "<tr>"
     . D DIGIT("+",MAXL),DIGIT("-",MAXL),DIGIT("%",MAXL)
     .W "</tr>",!
     .W "<tr>"
     . D DIGIT("*",MAXL),DIGIT("/",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
     ;
     I $G(%ARG("CALC")),COLTIPAH,'$G(@$$^W4PRM@("TIPFREE")) D
     .W "<tr>"
     . D DIGIT("-",MAXL),DIGIT("/",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
     ;
     I $G(%ARG("MINUS")) D
     .W "<tr>"
     . S SPAN=2 D DIGIT("-",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
     ;
     I $G(%ARG("PROC")) D
     .N PROC S PROC=%ARG("PROC")
     .W "<tr>"
     .D
     . I PROC=1 D DIGIT("+",MAXL),DIGIT("%",MAXL),DIGIT("-",MAXL) Q
     . I PROC=2 D DIGIT("-",MAXL,"red"),DIGIT("%",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()") Q
     . I PROC=3 S SPAN=2 D DIGIT("%",MAXL),DIGIT("C",MAXL,"red","ClearDisplay()")
     .W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  Q
  ;
PLMIN(SIGN,LIM) ;
 W "<td width=""50%"" class=""digit"""
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " onMouseUp=""this.style.backgroundColor='#eaeaea';ClickSign('"_SIGN_"',"_+LIM_")"""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 W "&nbsp;&nbsp;"_SIGN_"&nbsp;&nbsp;"
 W "</td>"
 Q
BACK ;
 W "<tr>"
  W "<td align=""center"">"
  W "<input type=""button"" class=""rkvsbm"" style=""color:red"" "
  N BACK S BACK=$$^%W1DICT("BACK")
  I $G(%ARG("CALC"))=1 S BACK=$$^%W1DICT("CLOSE")
  W "value="""_BACK_""" onMouseUp=""Cnc()"" >"
  W "</td>"
 W "</tr>",!
 Q
 ;
SMALL ;
 N HD S HD=$G(%ARG("HEAD"))
 I HD["-" S HD=$P(HD,"-")
 W "<div align=""center"" id=""kbid"">",!
 W "<table>",!
  W "<tr>"
   W "<td>"
    W "<table>"
      W "<tr>"
        W "<td align=""center"" dir="""_$$^%W1DIR_""" class=""rkvhd"" >"
         W $$^%W1DICT(HD)
        W "</td>"
      W "</tr>",!
      ;
      I $G(HD)="SOADIM" S VL=""
      W "<tr>"
       W "<td align=""center"">"
        W "<input type=""text"" class=""rkv"" id=""rkvid"""
         W " size="""_(MAXL-1)_""" maxlength="""_MAXL_""""
         W " onClick=""this.select()"""
         W " value="""_$G(VL)_""""
         I $L($G(VL))!(MAXL>8) D
         .I MAXL>8,MAXL<13 W " style=""font-size:"_$$^W3FSZ(12)
         .I MAXL>12 W " style=""font-size:"_$$^W3FSZ(10)
         .I $L($G(VL)),MAXL>8 W ";background-color:darkblue;color:white"
         .I $L($G(VL)),MAXL<9 W " style=""background-color:darkblue;color:white"
         .W """"
         W " />"
       W "</td>"
      W "</tr>",!
      ;
      W "<tr><td>&nbsp;</td></tr>",!
      ;
      W "<tr>"
       W "<td align=""center"">"
        W "<input type=""button"" class=""rkvsbm"" value="""_$$^%W1DICT("SUBMIT")_""" onMouseUp=""Sbm()"" >"
       W "</td>"
      W "</tr>",!
      ;
      W "<tr><td>&nbsp;</td></tr>",!
      W "<tr><td>&nbsp;</td></tr>",!
      W "<tr><td>&nbsp;</td></tr>",!
      ;
      I $L($G(%ARG("PLUSMIN"))) D  G CNCSMALL
      .W "<tr>"
      .W "<td align=""center"">"
      . W "<table border=""1"" width=""100%""><tr>",!
      . N MAX,MIN
      . S MIN=$P(%ARG("PLUSMIN"),":",1)
      . S MAX=$P(%ARG("PLUSMIN"),":",2)
      . D PLMIN("+",MAX) D PLMIN("-",MIN)
      . W "</tr></table></td>",!
      .W "</tr>",!
      ;
CNCSMALL
      I HD'="SOADIM" D BACK
      I HD="SOADIM",$$D^W3TMPORD(JB)<10,'$G(VL) D BACK
      ;
      W "</table>",!
     W "</td>",!
     ;
     I $L($G(%ARG("PLUSMIN"))) G ESMALL
     W "<td>"
      W "<table height=""100%"" width=""100%"">"
       D KBRD
      W "</table>",!
     W "</td>",!
ESMALL ;
 Q
 ;
KBRD ;
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" >",!
     S K=0
     F I=1:1:3 D
     .W "<tr>",!
     .F J=1:1:3 D
     ..S K=K+1
     ..D DIGIT(K,MAXL)
     .W "</tr>",!
     W "<tr>"
     D DIGIT(".",MAXL) D DIGIT(0,MAXL)
     W "<td class=""digit"" style=""color:red"" onMouseUp=""DelDigit()"""
     W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
     W " onMouseDown=""this.style.backgroundColor='gray'"""
     W " onMouseUp=""this.style.backgroundColor='#eaeaea';DelDigit()"""
     W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
     W ">Del</td></tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
 Q
 ;
CHECKREMAIND(PRM) ;
 N SH,QN,MSG,ER,CD
 S SH=$P(PRM,";")
 S QN=$P(PRM,";",2)
 S ER=""
 S CD=$$CDST^W3HZMST(JB,SH)
 I CD,'$$^W4AIN,$$UR^W4MENUBT<3,$L($$BELONG11^W4TSF(CD)) S ER="0:BELONG11"
 I $L(ER) Q ER
 ;
 S MSG=$$MSG^W4ITEND("SH="_SH,QN)
 I MSG'="" Q "0:"_MSG
 Q 1
 ;
DIAPSD(STAM) ;
 N NMB S NMB=$$GET^%W1PRM("NMB")
 N SUGS S SUGS=$$SUGS^W4L(NMB) I SUGS="" Q ""
 I $L($G(@$$^W4PRM@("DIAPSD",SUGS))) Q $G(^(SUGS))
 Q "0-99"
 ;
SETDMSH(VL) ;
 D PUT^%W3DEB("W4KB-SETDMSH","VL=VL")
 N HZM S HZM=$$GETP^%W1PRM("HZM") Q:HZM<1
 D PUT^W4HZMST(HZM,"DMSAH",VL)
 I $$DTMPORD D
 .D PUT^W3HZMST(JB,"DMSAH",VL)
 N DMSH S DMSH=$$TOT^W4HZMST(HZM)*VL*.01
 D PUT^W4HZMST(HZM,"DMSH",DMSH)
 I $$DTMPORD D
 .D PUT^W3HZMST(JB,"DMSH",DMSH)
 N DMSHOLD
 S DMSHOLD=$$DMSH^W4HZMST(HZM)
 N NEWTSHL S NEWTSHL=$J($$TSHL^W4HZMST(HZM)+DMSH-DMSHOLD,2,2)
 D PUT^W4HZMST(HZM,"TSHL",NEWTSHL)
 I $$DTMPORD D
 .D PUT^W3HZMST(JB,"TSHL",NEWTSHL)
 Q
 ;
DTMPORD(STAM) ;
 Q $D(@$$^W4TMPORD)=11
 ;
CHNDLV(VL) ;
 D PUT^%W3DEB("W4KB-CHNDLV","VL=VL")
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0,$$CLOSE^W4HZMST(HZM) Q
 I $D(@$$^W4TMPORD)<11 Q
 N NEWTSHL
 ;
 N DMSH
 ;
 I VL["%" D  Q
 .N TOT S TOT=$$TOTORD^W3HZMST(JB)
 .D PUT^W3HZMST(JB,"DMSAH",$$FIX(VL))
 .S DMSH=$J(TOT*VL*.01,2,2)
 .D PUT^W3HZMST(JB,"DMSH",$J(DMSH,2,2))
 .S NEWTSHL=$$TOTORD^W3HZMST(JB)-$$HNH^W3HZMST(JB)+DMSH
 .N TSHL S TSHL=NEWTSHL D ^W4IGUL S NEWTSHL=TSHL
 .D PUT^W3HZMST(JB,"TSHL",$J(NEWTSHL,2,2))
 .D PUT^W3HZMST(JB,"HNH2",$J(HNH2,2,2))
 .I HZM>0 D
 ..D PUT^W4HZMST(HZM,"DMSAH",$$FIX(VL))
 ..D PUT^W4HZMST(HZM,"DMSH",$J(DMSH,2,2))
 ..D PUT^W4HZMST(HZM,"TSHL",$J(NEWTSHL,2,2))
 ..D PUT^W4HZMST(HZM,"HNH2",$J(HNH2,2,2))
 ;
 S NEWTSHL=$$TOTORD^W3HZMST(JB)-$$HNH^W3HZMST(JB)+VL
 D
 .N TSHL S TSHL=NEWTSHL D ^W4IGUL S NEWTSHL=TSHL
 .D PUT^W3HZMST(JB,"HNH2",$J(HNH2,2,2))
 D PUT^W3HZMST(JB,"DMSAH","-")
 D PUT^W3HZMST(JB,"DMSH",$$FIX(VL))
 D PUT^W3HZMST(JB,"TSHL",$J(NEWTSHL,2,2))
 ;
 I HZM>0 D
 .D PUT^W4HZMST(HZM,"DMSAH","-")
 .D PUT^W4HZMST(HZM,"DMSH",$$FIX(VL))
 .D PUT^W4HZMST(HZM,"TSHL",$J(NEWTSHL,2,2))
 .D PUT^W4HZMST(HZM,"HNH2",$J(HNH2,2,2))
 Q
 ;
FIX(VL) ;
 Q $J(VL,2,2)_"!"

W4KBABC
W4KBABC ; [ 31.03.25 21:45 ] [ 06.11.23 12:11 ] [ 15.06.23 11:28 ] 
 N (JB,%ARG,%REM)
 N SZ S SZ="36"
 N FSZ S FSZ=12
 ;
 D KBABC("H")
 D KBABC("E1")
 D KBABC("E0")
 ;
 Q
 ;
 ;
KBABC(LNG) ;
 N CAPS S CAPS=$E(LNG,2),LNG=$E(LNG)
 D DEF(LNG,CAPS)
 W "<style>",!
 W "   div[id^=""kbid""] td {",!
 W "      padding: 5px;",!
 W "  }",!
 W "</style>",!
 ;
 W "<div align=""center"" id=""kbid"_LNG_CAPS_""" dir="""_$$^%W1DIR_""""
  W " style=""position:fixed;width:99%;display:none;background-color:grey;"_$$RAD^W3CSM_""" "
 W ">",! 
  N CELLSPC S CELLSPC=$S($$1024^W4WDSCR:3,1:5)
  ;;I $G(%ARG("CELLSPC")) S CELLSPC=$G(%ARG("CELLSPC"))
  I $$^W4SMALL!($$^W4TABLET=1&'$G(@$$^W4PRM@("TABLETABC"))!($$^W4TABLET=2)) Q
  ;
  W "<table align=""center"" border=""0"" dir="""_$$^%W1DIR_""" width=""98%"">",!
  W "<tr >"
   ;
   I $$HB D
   .W "<td width=""30%"">"
   . D KBNMB
   .W "</td>"
   ; 
   W "<td align=""center"" >"
    W "<table border=""0"" align=""center"" dir="""_$$^%W1DIR_""" ",!
     W " width=""100%"" "
     W " cellspacing="""_$$^W4KF(CELLSPC)_""" "
    W ">",!
     S K=0,W4ABC=""
     ;
     F I=1:1:4 D
     .W "<tr "_$$HEIGHT(HGTR)_" >",!
     .F J=1:1:10 D
     ..S K=K+1
     ..
     ..I I=4 D  S J=10 Q
     ...I '$$HB D  Q
     ....S SPAN=3 D DIGIT(" ") K SPAN
     ....D DIGIT("<"),DIGIT(">"),DIGIT(""""),DIGIT(":"),DIGIT(";"),DIGIT(","),DIGIT("Del","red")
     ...
     ...I $$HB D  Q
     ....I LNG="E" D  Q
     .....D DEL
     .....D DIGIT(","),DIGIT(";")
     .....S SPAN=2 D DIGIT(" ") K SPAN
     .....D DIGIT(":"),DIGIT(""""),DIGIT(">"),DIGIT("<")
     .....S SPAN=2 D DIGIT("Hebrew","green") K SPAN 
     ....; --- LNG="H"
     ....D DEL
     ....D DIGIT(","),DIGIT(";")
     ....S SPAN=2 D DIGIT(" ") K SPAN
     ....D DIGIT(":"),DIGIT(""""),DIGIT(">"),DIGIT("<")
     ....S SPAN=2 D DIGIT("English","green") K SPAN
     .. ;; --- END I=4
     ..
     ..I '$$HB,I=2,J=1 D DIGIT("Tab","darkblue") Q
     ..I '$$HB,I=3,J=1 D DIGIT("Caps","darkblue") Q
     ..I $$HB,I=1,J=10,LNG="H" D DIGIT("Tab","darkblue") Q
     ..I $$HB,I=2,J=10,LNG="E" D DIGIT("Tab","darkblue") Q
     ..I $$HB,I=3,J=10,LNG="E" D DIGIT("Caps","darkblue") Q
     ..
     ..D LETTER(K)
     .W "</tr>",!
    ;
    W "</table>",!
   W "</td>"
   ;
   I '$$HB D
   .W "<td width=""30%"">"
   . D KBNMB
   .W "</td>"
   ; 
  W "</tr>",!
  ;
  W "</table>",!  
 W "</div>",!
 ;
 D KBVIS
 Q
 ;
 ;
LETTER(K,PRDIG,COLOR) ;
 N VL
 I $G(PRDIG) S VL=K
 I '$G(PRDIG) S VL=$G(ABC(K))
 S COLOR=$G(COLOR)
 ;
 W "<td class=""digit"" "
 D STYLE(COLOR)
 I VL="" W ">&nbsp;</td>" Q
 N PROC
 S PROC="ClickLet('"_VL_"')"
 I $G(PRDIG) D
 .I VL="Tab" S PROC="ClickTab()" Q
 .I VL="Caps" S PROC="Caps()" Q
 .I VL="Del" S PROC="DelLet()" Q
 .I VL="C",$G(COLOR)="RED" S PROC="ClearInputText()" Q
 .I VL="English" S PROC="ToEnglish()" Q
 .I VL="Hebrew" S PROC="ToHebrew()" Q
 .I VL="UpDn" S PROC="VRTUpDn()" Q
 .D
 ..I VL["""" S PROC="ClickLet('&quot','1')" Q
 ..S PROC="ClickLet('"_VL_"','1')"
 ;
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaa';"
 W PROC_""""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 D
 .I $G(PRDIG) D  Q
 ..I VL="UpDn"!(VL="English")!(VL="Hebrew") W VL Q
 ..W "&nbsp;&nbsp;"_VL_"&nbsp;&nbsp;" Q
 .N SPC S SPC=$$NBSP^%L1FRM(2)
 .I $$1024^W4WDSCR S SPC="&nbsp;"
 .W SPC_"&#"_VL_";"_SPC
 W "</td>"
 Q
 ;
DIGIT(K,COLOR) ;
 D LETTER(K,1,$G(COLOR))
 Q
 ;
STYLE(COLOR) ;
 S COLOR=$G(COLOR)
 W "style=""" 
 D
 .I COLOR'="" W "color:"_$G(COLOR)_";"
 .I $$^W4SMALL W "font-size:"_$$^W3FSZ Q
 .I $$^W4TABLET W "font-size:"_$$^W3FSZ(22) Q
 .W "font-size:"_$$^W3FSZ(20) Q
 W """"
 Q
 ;
INIT D ^W4CSS
 I $G(%ARG("FIRST")) D KILL,CHKENG
 Q
 ;
KILL ;
 D KILL^%W1PRM("ABC")
 D KILL^%W1PRM("W4ABC")
 D KILL^%W1PRM("ABCLNG")
 D KILL^%W1PRM("ABCCAPS")
 Q
 ;
 ;
DEF(LNG,CAPS) ;
 K ABC
 S HGTR=40
 ;;S CAPS=0
 ;;I $$GET^%W1PRM("ABCCAPS") S CAPS=1
 ;;I $$^%W1LNG="H",LNG="E" S CAPS=1
 ;
 I $G(@$$^W4PRM@("ABC")) D
 .I LNG="E",'CAPS D
 ..F I=97:1:122 S ABC(I-96)=I
 .I LNG="E",CAPS D
 ..F I=65:1:90 S ABC(I-64)=I
 .I LNG="H" D
 ..F I=1488:1:1514 S ABC(I-1487)=I
 .I LNG="R" D
 ..F I=1135:1:1166 S ABC(I-1134)=I
 ;
 I '$G(@$$^W4PRM@("ABC")) D
 .N I
 .I '$$HB D  Q
 ..I 'CAPS D 
 ...N ST S ST="qwertyuiop"
 ...S ST=ST_" asdfghjkl"
 ...S ST=ST_" zxcvbnm@!"
 ...F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 ..I CAPS D 
 ...N ST S ST="QWERTYUIOP"
 ...S ST=ST_" ASDFGHJKL"
 ...S ST=ST_" ZXCVBNM@!"
 ...F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 .; ---------------- END '$$HB ---
 .
 .I LNG="E",'CAPS D
 ..N ST S ST="poiuytrewq"
 ..S ST=ST_"lkjhgfdsa "
 ..S ST=ST_"mnbvcxz@!"
 ..F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 . 
 .I LNG="E",CAPS D
 ..N ST S ST="POIUYTREWQ"
 ..S ST=ST_"LKJHGFDSA "
 ..S ST=ST_"MNBVCXZ@!"
 ..F I=1:1:$L(ST) S ABC(I)=$A(ST,I)
 .
 .I LNG="H" D
 ..S ST="tmoeh`xw! "
 ..S ST=ST_"sjlgirkbcy"
 ..S ST=ST_"uzvnpdaqf@"
 ..F I=1:1:$L(ST) D
 ...I $E(ST,I)=" " S ABC(I)=32 Q 
 ...I $E(ST,I)="@" S ABC(I)=64 Q 
 ...I $E(ST,I)="!" S ABC(I)=33 Q 
 ...S ABC(I)=1392+$A(ST,I)
 ;
 S MAXLETTERS=$O(ABC(999),-1)
 Q
 ;
 ;
CHKENG ;
 I $$ABCENG^W4PRM D ^W4SETENG
 Q
 ;
HB(STAM) ; 
 I $$^%W1LNG="H" Q 1 
 Q 0 
 ;
DEL ; 
  W "<td class=""digit"" "
  D STYLE("RED")
  W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
  W " onMouseDown=""this.style.backgroundColor='gray'"""
  W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea';DelLet()"""
  W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
  W " >Del</td>"
 Q
 ;
STLBUT(STAM) ; 
 Q "width:100%;height:100%;border:2px ridge lightgrey"
 ;
HEIGHT(HGTR) ; 
 I '$G(HGTR) S HGTR=40
 Q "height="""_$$^W4KF(HGTR)_""" " 
 ;
KBNMB ;
  W "<table border=""0"" dir=""LTR"" ",!
   W " width=""100%"" "
   W " cellspacing="""_$$^W4KF(CELLSPC)_""" "
  W ">",!
   W "<tr>",!
    F J=1:1:3 D DIGIT(J)
    D DIGIT("-"),DIGIT("+")
   W "</tr>",!
 ;
   W "<tr>",!
    F J=4:1:6 D DIGIT(J)
    D DIGIT("*"),DIGIT("/")
   W "</tr>",!
 ;
   W "<tr>",!
    F J=7:1:9 D DIGIT(J)
    D DIGIT("("),DIGIT(")")
   W "</tr>",!
   W "<tr>",!
    N UPDN S UPDN="UpDn" ;;
    D DIGIT(0),DIGIT("."),DIGIT("C","RED"),DIGIT("%"),DIGIT(UPDN,"green")
   W "</tr>",!
  W "</table>",!
 Q  ;
 ;
 ;
KBVIS ;
 W "<div id=""vrtkbvis"" "
  N LF S LF=$$^W4WDSCR-62
  W "style=""position:fixed;text-align:center;font-size:"_$$^W3FSZ(22)
   W ";width:60px;height:40px;left:"_LF_";"_$$RAD^W3CSM
   W ";display:none;cursor:pointer;background-color:white;color:blue;opacity:0.6"" "
  W " "_$$^W4TOUCH_"=""VRTHide()"" "
 W ">",!
  W "Kb"
 W "</div>",!
 Q
 ;
 ;
GETPRM() ; 
 N LNG,CAPS,TOP
 S LNG=$$GETP^%W1PRM("ABCLNG") 
 I LNG="" S LNG=$$^%W1LNG
 S CAPS=$$GETP^%W1PRM("ABCCAPS") 
 I CAPS="" S CAPS=1 
 S TOP=$$GETP^%W1PRM("ABCTOP") 
 I TOP="" S TOP=$$TOPDN
 D PUT^%W1PRM("ABCTOP",TOP)
 I LNG="H" S CAPS=""
 Q LNG_";"_CAPS_";"_TOP
 ;
TOP() ; 
 Q $$GETP^%W1PRM("ABCTOP") 
 ;
TOPDN() ; 
 I $$GETP^%W1PRM("ABCTOPDN") Q $$GETP^%W1PRM("ABCTOPDN") 
 Q $S($$1024^W4WDSCR:535,1:660)
 ;
TOPUP() ; 
 Q 0
 ;
SETTOP(TOP) ; 
 S TOP=+$G(TOP)
 D PUT^%W1PRM("ABCTOP",TOP) 
 Q 
 ;
TOPDNKBVIS() ; 
 I $$GETP^%W1PRM("ABCTOPDNVIS") Q $$GETP^%W1PRM("ABCTOPDNVIS") 
 Q $S($$1024^W4WDSCR:690,1:850)
 ;
TOPUPKBVIS() ; 
 Q 2
 ;
SETTOPVIS(TOP) ; 
 S TOP=+$G(TOP)
 D PUT^%W1PRM("ABCTOPDNVIS",TOP) 
 Q 
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KBABCL
W4KBABCL ; [ 14.06.23 14:57 ] [ 10.06.23 18:15 ] [ 
 D ^W4KBABC
 D SVFOC
 Q
 ;
SVFOC ;
 W "<script>",!
  W "var textInputElements = document.querySelectorAll('input[type=""text""], textarea');",!
  W " textInputElements.forEach((element) => {",!
  W "   element.addEventListener('focus', handleFocus);",!
  W " });",!
  W "KbVrtShow()",!
 W "</script>",!
 Q
 
 
 

W4KC
W4KC(HZM,IND) ; [ 22.04.25 15:04 ] [ 
 N A S A=$G(@$$^W4ORD@(HZM,"CB","CH",IND))
 Q $$KC(A)
 ;
KC(A) I $P(A,"*",3)="KC" Q 1
 Q 0

W4KF
W4KF(NUM,PR) ; [ 11.08.25 09:59 ] [ 30.03.25 15:13 ] [ 25.03.25 03:35 ] 
 I NUM["%" Q NUM
 I '$G(NUM) Q 0
 I $$^W4TABLET=2 Q NUM*$S($G(PR)["!":"1.6",1:2.4) ;;2.2
 I $$^W4TABLET=1 Q NUM ;;*1.1 ;;2.2
 I $$^W4SMALL Q NUM*1.6
 I +$G(PR)<2,$$1024^W4WDSCR Q NUM*.85
 I +$G(PR)=2,$$1024^W4WDSCR Q NUM*.7
 Q NUM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KFM
W4KFM ; [ 21.07.25 05:10 ] [ 17.07.25 03:06 ] [ 05.08.23 20:57 ] 
 N (JB,%ARG,%REM) S P1DZ=$$^W4DZ
 D KILL^%W1PRM("GLOB")
 I $G(%ARG("GLOB"))'="" D PUT^%W1PRM("GLOB",%ARG("GLOB"))
 S JB=+$G(JB)
 D KILL^%W3DEB("W4KFM")
 D PUT^%W3DEB("W4KFM","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width="""_$S($$^W4TABLET=2:100,1:80)_"%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""8%"">"_$$^%W1DICT("NPP")_"</th>"
 W "  <th width=""12%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("ITEMSGROUP")_"</th>"
 W "  <th width=""20%"">"_$$^%W1DICT("QNUNITS")_"</th>"
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 N I,N
 ;
 S N="" F I=1:1 S N=$O(@$$GLOB@(N)) Q:N=""  D
 .S @GLTMP@(N)=$G(@$$GLOB@(N))
 .S @GLTMP@(N,"I")=I
 ;
 S N="" S N=$O(@GLTMP@(N)) W "<tr id=""trid"_1_""">" W $$LINE("1;"_N) W "</tr>",!
 F I=2:1 S N=$O(@GLTMP@(N)) Q:N=""  W "<tr id=""trid"_I_""">" W $$LINE(I_";"_N) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
SAVEND(STAM) ;
 N N,PARHR,NOK
 D GLTMP
 S NOK=0
 ;
 N N,I S N="",I=0 F  S N=$O(@GLTMP@(N)) Q:N=""  I '$D(^(N,"DEL")) S I=I+1
 K @$$GLOB
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .S VL=$G(@GLTMP@(N))
 .I $D(@GLTMP@(N,"DEL")) Q
 .S @$$GLOB@(N)=VL
 .
 K @GLTMP
 ;
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMPEND")
 Q
 ;
 ;
LINE(PRM) ;
 N I,PAR S I=$P(PRM,";")
 S PAR=$P(PRM,";",2)
 N GLTMP D GLTMP
 N ST
 S ST=$$ST^W4PLMIN(I)
 ;
 S ST=ST_" <td style=""text-align:center"" width=""25%"">"
  S ST=ST_$$VVPRT(I_";"_PAR)
 S ST=ST_"  </td>"
 ;
 N PARNAME S PARNAME=$$SHEM^W4P(PAR)
 S ST=ST_"  <td "_$$^%W1ALIGN_" id=""itemnm"_I_""" >"
  S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(PARNAME)
 S ST=ST_"  </td>"
 ;
 N GR,GRNAME S GR=$$SUG^W4P(PAR),GRNAME=""
 I GR S GRNAME=$G(@$$^W4GL("PARSUG")@(GR))
 S ST=ST_"  <td "_$$^%W1ALIGN_" id=""gr"_I_""" >"
  S ST=ST_"&nbsp;&nbsp;"_GR_"&nbsp;&nbsp;"_$$H2U^%L1FRM(GRNAME)
 S ST=ST_"  </td>"
 ;
 S ST=ST_"  <td align=""center"" >"
  S ST=ST_"<input type=""text"" size=""4"" maxlength=""4"" id=""itra"_I_""" onClick=""this.select()"" "
  N QNUN S QNUN=""
   I $G(PAR) S QNUN=$G(@GLTMP@(PAR))
   S ST=ST_" value="""_QNUN_""" "
   S ST=ST_" onKeyUp=""SetQnUn('"_I_"',this)"" "
  S ST=ST_"  </td>"
 Q ST
 ;
 ;
SETPRT(PRM)
 N PAR,I,VL
 S PAR=$P(PRM,";")
 I PAR="" Q "CODENOTEXIST"
 S I=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 N GLTMP D GLTMP
 ;
 I $G(@GLTMP@(PAR,"I")),^("I")'=I Q "SAMECODE"
 I '$D(@$$^W4GL("PAR")@(PAR)) Q "CODENOTEXIST"
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .I $G(^(N,"I"))=I,N'=PAR K @GLTMP@(N)
 S @GLTMP@(PAR)=VL
 S @GLTMP@(PAR,"I")=I
 N PAR1 S PAR1=$$SHEM^W4P(PAR)
 N GR,GR1 S GR1="",GR=$$SUG^W4P(PAR)
 I GR S GR1=$G(@$$^W4GL("PARSUG")@(GR))
 Q "OK~"_$$H2U^%L1FRM(PAR1)_"~"_$$H2U^%L1FRM(GR1)
 ;
SETQNUN(PRM)
 N PAR,I,VL
 S PAR=$P(PRM,";")
 I PAR="" Q "CODENOTEXIST"
 S VL=$P(PRM,";",2)
 N GLTMP D GLTMP
 I '$D(@$$^W4GL("PAR")@(PAR)) Q "CODENOTEXIST"
 I VL'?1N.N Q "NUMBERONLY"
 S @GLTMP@(PAR)=VL
 Q "OK"
 ;
DELROW(PAR) ;
 Q:$G(PAR)=""
 N GLTMP D GLTMP
 I '$D(@GLTMP@(PAR,"DEL")) S @GLTMP@(PAR,"DEL")=1 Q
 K @GLTMP@(PAR,"DEL")
 Q
 ;
VVPRT(PRM) ;
 N I,VL,IDCD,IDNM
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S IDCD="itemcd"_I
 S IDNM="itemnm"_I
 S PROC="SetPar(\'"_I_"\',\'"_IDCD_"\',\'"_IDNM_"\')"
 N FIND S FIND="Find('"_I_"','"_IDCD_"','"_IDNM_"','"_PROC_"')"
 N A
 S A="<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"id=""itemcd"_I_""" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"onFocus='this.select()' "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img id=""filter"" src=""w3filter.jpg"" "
 S A=A_" onClick="""_FIND_""">"
 Q A
 ;
GLOB() ; 
 N GL S GL=$$GETP^%W1PRM("GLOB")
 I GL'="" Q $$^W4GL(GL) 
 Q $$^W4GL("W4KFM") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KHM
W4KHM(HZM) ; [ 25.07.11 05:56 ] [ 10.11.08 16:53 ] [ 07.11.08 15:47 ]
 N N
 S N=$H-6_"00000" F  S N=$O(@$$^W4GL("P1HM")@(N)) Q:N=""  D
 .K @$$^W4GL("P1HM")@(N,HZM)
 .D ^%S2GLSV($$^W4GL("P1HM")_"("_N_","_HZM_")",$$^W4FGIB,"K")
 Q

W4KILM
W4KILM ; [ 16.04.09 14:51 ] [ 09.04.09 14:50 ] [ 30.05.04 13:36 ]
 N (JB,%REM,%ARG)
 I '$D(P1KILM) S P1KILM="K"
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N %NMF,A,SH,MSF,PPID
 S %NMF="l1kill"_$J
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC libht > "_%NMF
 I $$^%L1ZOS(10,%NMF)<0 G END
 O %NMF:(REWIND:READONLY)
 K @$$^W4MAIN("TMPS111")
 F  U %NMF R A Q:$ZEOF  D
 .S SH=$O(@$$^W4MAIN("TMPS111")@(9999),-1)+1
 .S PID=$TR($E(A,9,14)," ","") Q:'PID
 .S PPID=$TR($E(A,16,20)," ","")
 .S MSF=$P($E(A,50,120)," ",2)
 .S @$$^W4MAIN("TMPS111")@(SH)=MSF_" oetqn"
 .S @$$^W4MAIN("TMPS111")@(SH,"PID")=PID
 .S @$$^W4MAIN("TMPS111")@(SH,"PPID")=PPID
 .S @$$^W4MAIN("TMPS111")@(SH,"MSF")=MSF
 C %NMF
 I $$^%L1ZOS(2,%NMF)
END Q

W4KIOSKO
W4KIOSKO(HZM) ; [ 29.09.26 14:26 ] [ 21.07.25 04:32 ] [ 28.05.25 12:34 ] 
 I $$NMB(HZM) Q 1
 ;;I $$SF^W4PRM!$$TAIMAN,$$NMB(HZM) Q 1
 Q 0
 ;
NMB(HZM)
 I $$NMB^W4HZMST(HZM)=$$NMBKSK Q 1
 Q 0
 ;
TAIMAN()
 Q $$TAIMAN^W4PRM
 ;
NMBKSK() 
 Q "0500000000"
 ;
MZMK(HZM)
 I $G(@$$^W4ORD@(HZM,"KIOSKMZM")) Q 1
 Q 0
 
 

W4KLFL
W4KLFL(NMB) ; [ 07.04.22 12:07 ] [ 05.06.17 15:08 ] [ 14.02.17 20:07 ] 
 I $G(NMB),$G(@$$^W4GL("FLAG")@(NMB))=$$^W4MYDVN D
 .D KILLFLAG(NMB)
 Q
 ;
SET(NMB) ;
 Q:'$G(NMB)
 S @$$^W4GL("FLAG")@(NMB)=$$^W4MYDVN
 D ^W4CHANGE($$^W4MYDVN,NMB)
 Q
 ;
BUSY(NMB)
 N FLAG
 I '$G(NMB) Q 0
 I $$^W4MSL(NMB),$G(@$$^W4PRM@("NODLVBSY")) Q 0
 S FLAG=$G(@$$^W4GL("FLAG")@(NMB))
 I '$L(FLAG) Q 0
 I FLAG=0 Q 0
 I FLAG>300,FLAG<100000 Q 0
 I $G(NMB),FLAG'=$$^W4MYDVN Q FLAG
 Q 0
 ;
KILLFLAG(NMB) ;
 Q:'$G(NMB)
 K @$$^W4GL("FLAG")@(NMB) D ^W4KLNEW(NMB)
 D ^W4CHANGE($$^W4MYDVN,NMB)
 Q
 ;
SETALL ;
 N N S N="" F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  Q:N>999  I $L(N)<4 D SET(N)
 Q
 ;
CLEARALL ;
 N N S N="" F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  Q:N>999  I $L(N)<4 D KILLFLAG(N)
 Q
 ;
CLEARPOS ;
 N N S N=""
 F  S N=$O(@$$^W4GL("FLAG")@(N)) Q:N=""  I $G(^(N))=$$^W4MYDVN D
 .D KILLFLAG(N)
 Q
 
 
 

W4KLFNEW
W4KLFNEW ; [ 01.05.10 13:02 ] [ 30.04.10 18:59 ] [
 K ^KLF1
 S STRING="" F  S STRING=$O(^KLF(STRING)) Q:STRING=""  D
 .S VD="" F  S VD=$O(^KLF(STRING,VD)) Q:VD=""  I VD="KP"!(VD="KPM") D
 ..S IN1="" F  S IN1=$O(^KLF(STRING,VD,IN1)) Q:IN1=""  D
 ...I $E(IN1,1,2)=19!($E(IN1,1,2)=20) Q
 ...I $E(IN1)>8 S IN11=19_IN1
 ...E  S IN11=20_IN1
 ...M ^KLF1(STRING,VD,IN11)=^KLF(STRING,VD,IN1)
 ...K ^KLF(STRING,VD,IN1)
 M ^KLF=^KLF1
 ;K ^KLF1
 Q

W4KLHZG
KLHZG ;                 [ 27.10.09 18:22 ] [ 19.10.09 09:45 ] [ 05.06.09 15:46 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,CODDOC,KLHZG,NUMBER,STRING,FLAG)
 S MAC="^KLIN(CODDOC)" N LKH,DAT,SUM,NAME,CB
 K %L1 S %L1("T1")="  mekq  |  dwtd  |  jix`zl |      gewl  my      |   gewl   | 'qn  "
 ;
 I CODDOC="H" D
 .S %L1("T2")="S %SAY=""  ipci ote`a ewtedy zeipeayg onqn '+' ++3,58,HH,I"" X %XMSG"
 .S %L1("DO")="N HESB,NMB S HESB=INDEX_$S(%NXS[""^MLY"":""<"",%NXS[""+M"":""M"",%NXS[""+"":"" "",1:""+""),NMB=$P($P(%NXS,""+""),""^"") D HESB1^P1DHB"
 .S %L1("DO","CODDOC")=CODDOC
 ;
 I CODDOC="CB" D
 .S %L1("DO")="N HESB,NMB S NUMBER=INDEX,NMB=$P(%NXS,""+""),%OLDTO="""",NRZD=6,%SCRN=""KLINC"" D NUMBER^KLINC"
 .S %L1("DO","CODDOC")=CODDOC
 ;
 S %L1("EU")=2,%L1("BE")=7
 S %L1("SET")="S LKH=$G(^KLIN(CODDOC,%NXN)) I $L(LKH) D EXT^KLHZG"
 S %L1("US")="$G(LKH)",%L1("REV")=""
 I $D(KLHZG("LKH")) S %L1("US")="$P($P($G(^KLIN(CODDOC,%NXN)),""+""),""^"")=KLHZG(""LKH"")"
 S %L1("TXT1")="SUM<>9,2\/DATHFK<>8\/DAT<>9\/NAME<>20H\/$P($P(LKH,""+""),""^"")<>10\/%NXN_$S(LKH[""^MLY"":""<"",LKH[""+M"":""M"",LKH[""+""!(CODDOC'=""H""):"" "",1:""+"")<>7"
 D ^%L1NU I FLAG="" S NUMBER=INDEX,STRING=^KLIN(CODDOC,NUMBER) Q
 K ^MBG($P)
 Q
EXT ;
 S %NXS=$S(LKH'["+":$G(^KLF($P(LKH,"^"),CODDOC,%NXN)),1:$G(@$$^W4GL("P1LHB")@($P(LKH,"+"),%NXN)))
 ;
 I LKH'["+" D  ;--- JAD,CB
 .I LKH["^MLY" D  Q
 ..S SUM=0,(DAT,DATHFK,NAME)=""
 ..N A S A=$G(@("^["""_^UCI("MLG")_"""]"_$P(LKH,"^",2))) Q:A=""
 ..S SUM=$P(A,"*",10)
 ..S DAT=$$^%L1DC($P(A,"*",15),1)
 ..S DATHFK=DAT
 ..S NAME=$G(^LKH($P(LKH,"^")))
 .
 .S %NXS=$G(^KLF(LKH,CODDOC,%NXN))
 .S SUM=$S(CODDOC="CB":$P(%NXS,"\",1),1:$P(%NXS,"\",2))
 .S DAT=$$^%L1DC($P(%NXS,"\",4),1)
 .S DATHFK=$S(CODDOC="CB":DAT,1:$P($P(%NXS,"\",9)," "))
 .S NAME=$G(^LKH(LKH))
 ;
 I LKH["+" D
 .S %NXS=$G(@$$^W4GL("P1LHB")@($P(LKH,"+"),%NXN))
 .S SUM=$P(%NXS,"\",4),DAT=$$^%L1DC($P(%NXS,"\",8),1) ;;DAT=$P($P(%NXS,"\",3)," ")
 .S DATHFK=$P($P(%NXS,"\",3)," ")
 .S NAME=$G(@$$^W4GL("LKH")@($P(LKH,"+")))
 Q

W4KLIN
W4KLIN(STAM) ; [ 07.08.09 18:53 ] [
 Q $$^W4GL("KLIN")

W4KLINIT
W4KLINIT S DLSP=14 ;  [ 19.11.08 02:27 ] [ 13.10.02 11:36 AM ] [ 06/13/2002   1:15 PM ]
 N MM S MM=$G(@$$^W4PRM@("MAM"),18) S KMAM=1/(100+MM)*MM
 S CODPAY="0D",CODBUY="0H"
 N GL D GL^W4L
 S KLN("STRING")=GL_"(STRING)"
 S KLN("NAME")=KLN("STRING")
 S KLN("ADDR")="S ADDR=$$KTV2^W4L(STRING)"
 S KLN("TZ")="S TZ=$$TZ^W4L(STRING)"
 S KLN("TEL")="S TEL=$J($$TELB^W4L(STRING),10)_""a ""_$J($$TELA^W4L(STRING),10)_""r"""
 S KLN("TELB")="S TELB=$J($$TELB^W4L(STRING),10)"
 S KLN("ITRA")="S ITRA=$$ITRA^W4L(STRING)"
 S DLL=+$G(@$$^W4GL("KL")@("DLL")),DLNH=7
 Q

W4KLNEW
W4KLNEW(NMB,JBB) ; [ 03.04.10 18:52 ] [
 Q:'$G(NMB)
 I '$G(JBB) Q:'$G(JB)  S JBB=JB
 K @$$^W4GL("P1HL",JBB)@(NMB,"ycg")
 K @$$^W4GL("P1HL",JBB)@(NMB,"NEW")
 Q
NEW(STAM) Q "ycg"

W4KLOST
W4KLOST ; [ 28.03.24 15:15 ] [ 19.09.21 08:30 ] [ 05.11.20 16:35 ] 
 ;-------- HISHUV ITROT LEFI HAZMANOT
 ; INPUT: STRING, DAT0 , DAT2 ( DAT0 - DATA, NA KOT TREB. ITRA,DAT2 - TODAY)
 ; OUTPUT: ITRA0 - SOF JOM DAT0
 ;         ITRA1 - THILAT JOM DAT2 - TASHLUMIM HABAIM
 ;
 N (JB,%ARG,%REM,STRING,DAT0,DAT2,ITRA0,ITRA1)
 S KLOSTP("HZ")="" S (ITRA0,ITRA1)=0
 I $G(DAT0) S ITRA0=$$CBH(STRING,$$^%L1DC(DAT0,4),$G(KLOSTP("PR")))
 I $G(DAT2) S ITRA1=$$CBH(STRING,$$^%L1DC(DAT2,4),1)
 K KLOSTP("HZ")
 Q
 ;
BDK ;
 S OK=1 Q:'$D(KLOSTP("CD"))!'$D(KLOSTP("N"))
 I $D(@$$^W4GL("KLF")@(STRING,"KP",N,KLOSTP("CD"),KLOSTP("N"))) S OK=0 Q
 S N1=$O(@$$^W4GL("KLF")@(STRING,"KP",N,""))
 I N1'="" S N2=$O(@$$^W4GL("KLF")@(STRING,"KP",N,N1,"")) I N2'="" S S=^(N2)
 Q
 ;
CBH(LKH,DT,PR) ;-- ITRA LEFI HESBONIOT & KABALOT
 ;-- PR=1 - LAKAHAT BE HESHBON TASHLUMIM HABAIM
 ;   KLOSTP("CD") & KLOSTP("N") - SUG & NOM DOC PRI KOT NADO PREKR HISHUV
 ;-----------------------------------------------------------------------
 N D,DOC,NOM,HOV,END S HOV=0,END=0
 S (LASTPAYMDATE,LASTPAYMSUM)="&nbsp;"
 I $G(LKH)="" Q ""
 ;
 S DT=$$^%L1DC(DT,3)
 ;
 I $D(@$$^W4GL("KLPTCH")@(LKH))#2 S HOV=HOV+$P(^(LKH),"*")-$P(^(LKH),"*",2) ;-- PTIHA
 ;
 S D="" F  S D=$O(@$$^W4GL("KLF")@(LKH,"KP",D)) Q:D=""  D  Q:END
 .N DTK S DTK=$$DT(D)
 .I '$G(PR),DTK>DT Q
 .I '$G(PR),'$D(KLOSTP("CD"))!'$G(KLOSTP("N")),$D(KLOSTCP("<")),DTK'<DT Q
 .S DOC="" F  S DOC=$O(@$$^W4GL("KLF")@(LKH,"KP",D,DOC)) Q:DOC=""  D  Q:END
 ..S NOM="" F  S NOM=$O(@$$^W4GL("KLF")@(LKH,"KP",D,DOC,NOM)) Q:NOM=""  D  Q:END
 ...I '$G(PR),$D(KLOSTP("CD")),$G(KLOSTP("N")),DOC=KLOSTP("CD"),NOM=KLOSTP("N"),DTK'<DT S END=1 Q
 ...S A=$G(^(NOM)) I DOC="CB" D  Q
 ....I $G(%ARG("CBAD")),DTK>$$^%L1DC($G(%ARG("CBAD")),3) Q
 ....S HOV=HOV-A
 ....D DEB(DOC,NOM,A,HOV)
 ....S LASTPAYMDATE=$ZD(DTK,"DD.MM.YY")
 ....S LASTPAYMSUM=A
 ...
 ...I $G(PR)=1,DOC="H"!(DOC="TZ"),DTK>DT Q
 ...I $G(PR)=2,DOC="H",DTK>DT Q
 ...I DOC="H",$P(A,"\",2) S HOV=HOV+$P(A,"\",2) D DEB(DOC,NOM,$P(A,"\",2),HOV) Q  ;-- JAD
 ...I DOC="H",$P(A,"\",3) S HOV=HOV+$P(A,"\",3) D DEB(DOC,NOM,$P(A,"\",3),HOV) Q  ;-- OT
 ...I DOC="TZ" S HOV=HOV-$S($P(A,"\",3):$P(A,"\",3),1:A) D DEB(DOC,NOM,A,HOV) Q
 ...I DOC="HZ",$D(KLOSTP("HZ")),$P(A,"\",2),'$P(A,"\") D
 ....I $D(@$$^W4GL("P1HL2")@(LKH,NOM))!$D(@$$^W4GL("P1HL3")@(LKH,NOM)) D  Q
 .....S HOV=HOV+$P(A,"\",2) D DEB(DOC,NOM,$P(A,"\",2),HOV)
 ....I $D(@$$^W4GL("P1HL4")@(LKH,NOM)) D  Q
 .....S HOV=HOV+$P(A,"\",2) D DEB(DOC,NOM,+$P(A,"\",2),HOV)
 Q HOV
 ;
DEB(DOC,NOM,SUM,HOV) ;
 ;;W "DOC="_DOC_"  NOM="_NOM_"  SUM="_SUM_"  HOV="_HOV,!
 Q
 ;
DT(DAT) ;
 Q $$DT^W4DTL(DAT)
 ;
HOVHZ(LKH,D1,D2) ;
 N (JB,%ARG,%REM,LKH,D1,D2)
 S END=0,HOV=0
 S D="" F  S D=$O(^KLF(LKH,"KP",D)) Q:D=""  D  Q:END
 .I D'?12N Q
 .S DT=$$^%L1DC($E(D,3,8),4) I DT>D2 S END=1 Q
 .I DT'<D1 D
 ..S NOM="" F  S NOM=$O(^KLF(LKH,"KP",D,"HZ",NOM)) Q:NOM=""  I NOM D
 ...S HOV=HOV+$P($G(^(NOM)),"\",2)
 Q HOV
 ;
HOVHZH(LKH,D1,D2) ;
 N (JB,%ARG,%REM,LKH,D1,D2)
 S HOV=0
 F D=D1:1:D2 D
 .S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  D
 ..I '$D(@$$^W4ORD@(N,"CB","ASR")) Q 
 ..S N1="" F  S N1=$O(@$$^W4ORD@(N,"CB","ASR",N1)) Q:N1=""  I N1 D
 ...S A=$G(^(N1))
 ...S LK=$P(A,"*") Q:$TR(LK,"-","")'=$TR(LKH,"-","")
 ...S HOV=HOV+$P(A,"*",4)
 Q HOV
 
 

W4KLOST0
W4KLOST ; [ 02.06.10 12:44 ] [ 15.05.10 09:43 ] [ 13.05.10 15:29 ]
 ;-------- HISHUV ITROT LEFI HAZMANOT
 ; INPUT: STRING, DAT0 , DAT2 ( DAT0 - DATA, NA KOT TREB. ITRA,DAT2 - TODAY)
 ; OUTPUT: ITRA0 - SOF JOM DAT0
 ;         ITRA1 - THILAT JOM DAT2 - TASHLUMIM HABAIM
 ;
 N (JB,%ARG,%REM,STRING,DAT0,DAT2,ITRA0,ITRA1)
 I $G(@$$^W4PRM@("ITRAHZ")) G BG
 S KLOSTP("HZ")="" S (ITRA0,ITRA1)=0
 I $G(DAT0) S ITRA0=$$CBH(STRING,$$^%L1DC(DAT0,4),$G(KLOSTP("PR")))
 I $G(DAT2) S ITRA1=$$CBH(STRING,$$^%L1DC(DAT2,4),1)
 K KLOSTP("HZ")
 Q
 ;
BG S ITRA0=0,ITRA1=0
 S DAT0=$$^W4DTL(DAT0),DAT2=$$^W4DTL(DAT2)
 N DAT00,DAT20
 S DAT00=$$CR^W4DTL(DAT0)
 S DAT20=$$CR^W4DTL(DAT2)
 N DT0,DT2
 S DT0=$$^%L1DC(DAT0,4)
 S DT2=$$^%L1DC(DAT2,4)
 N N,S,M0,M2,OK
 S M0=$$CRYYMM^W4DTL(DAT0)
 S M2=$$CRYYMM^W4DTL(DAT2)
 ;
 S N="" F  S N=$O(@$$^W4GL("KLF")@(STRING,"KPM",N)) Q:N=""  D
 .I N<M0 S ITRA0=ITRA0+^(N)-$P(^(N),"*",2)
 .I N<M2 S ITRA1=ITRA1+^(N)-$P(^(N),"*",2)
 ;
 ;
 S N=M0_"00"
 F  S N=$O(@$$^W4GL("KLF")@(STRING,"KP",N)) Q:N=""  I N?10N.N D
 .S S=$G(^(N)) Q:$$DT(N)>DT0  D
 ..S ITRA0=ITRA0+S
 ..W !,"DT="_$$DT(N)_" DT0="_DT0_" S="_S_" ITRA0="_ITRA0,!
 ;
 S N=M2_"00"
 F  S N=$O(@$$^W4GL("KLF")@(STRING,"KP",N)) Q:N=""  I N?10N.N D
 .S S=$G(^(N)) Q:$$DT(N)'<DT2  S ITRA1=ITRA1+S
 ;
 S N=$$CR^W4DTL(DAT2)_$S($D(KLOSTP):"0000",1:"")
 ;
 F  S N=$O(@$$^W4GL("KLF")@(STRING,"KP",N)) Q:N=""  Q:$$DT(N)>DT2  D
 .S S="\"_$G(^(N)) D BDK Q:'OK
 .S ITRA1=ITRA1+$P(S,"\",2)-$P(S,"\",1)
 ;
 S ITRA0=$J(ITRA0,2,2),ITRA1=$J(ITRA1,2,2)
 K KLOSTP Q:'$D(KLOST)
 N DAT21,DAT01
 S DAT21=$E(DAT2,5,6)_"."_$E(DAT2,3,4)_"."_$E(DAT2,1,2)
 S DAT01=$E(DAT0,5,6)_"."_$E(DAT0,3,4)_"."_$E(DAT0,1,2)
LOOK ;
 Q
 ;
BDK ;
 S OK=1 Q:'$D(KLOSTP("CD"))!'$D(KLOSTP("N"))
 I $D(@$$^W4GL("KLF")@(STRING,"KP",N,KLOSTP("CD"),KLOSTP("N"))) S OK=0 Q
 S N1=$O(@$$^W4GL("KLF")@(STRING,"KP",N,""))
 I N1'="" S N2=$O(@$$^W4GL("KLF")@(STRING,"KP",N,N1,"")) I N2'="" S S=^(N2)
 Q
 ;
CBH(LKH,DT,PR) ;-- ITRA LEFI HESBONIOT & KABALOT
 ;-- PR=1 - LAKAHAT BE HESHBON TASHLUMIM HABAIM
 ;   KLOSTP("CD") & KLOSTP("N") - SUG & NOM DOC PRI KOT NADO PREKR HISHUV
 ;-----------------------------------------------------------------------
 N D,DOC,NOM,HOV,END S HOV=0,END=0
 ;
 I $D(@$$^W4GL("KLPTCH")@(LKH))#2 S HOV=HOV+$P(^(LKH),"*")-$P(^(LKH),"*",2) ;-- PTIHA
 ;
 S D="" F  S D=$O(@$$^W4GL("KLF")@(LKH,"KP",D)) Q:D=""  D  Q:END
 .N DTK S DTK=$$DT(D)
 .I '$G(PR),DTK>DT Q
 .I '$G(PR),'$D(KLOSTP("CD"))!'$G(KLOSTP("N")),$D(KLOSTCP("<")),DTK'<DT Q
 .S DOC="" F  S DOC=$O(@$$^W4GL("KLF")@(LKH,"KP",D,DOC)) Q:DOC=""  D  Q:END
 ..S NOM="" F  S NOM=$O(@$$^W4GL("KLF")@(LKH,"KP",D,DOC,NOM)) Q:NOM=""  D  Q:END
 ...I '$G(PR),$D(KLOSTP("CD")),$G(KLOSTP("N")),DOC=KLOSTP("CD"),NOM=KLOSTP("N"),DTK'<DT S END=1 Q
 ...S A=$G(^(NOM)) I DOC="CB" D  Q
 ....S HOV=HOV-A
 ....S LASTPAYMDATE=$ZD(DTK,"DD.MM.YY")
 ....S LASTPAYMSUM=A
 ...
 ...I $G(PR)=1,DOC="H"!(DOC="TZ"),DTK>DT Q
 ...I DOC="H",$P(A,"\",2) S HOV=HOV+$P(A,"\",2) Q  ;-- JAD
 ...I DOC="H",$P(A,"\",3) S HOV=HOV+$P(A,"\",3) Q  ;-- OT
 ...I DOC="TZ",A S HOV=HOV-A Q
 ...I DOC="HZ",$D(KLOSTP("HZ")),$P(A,"\",2),'$P(A,"\") D
 ....I $D(@$$^W4GL("P1HL2")@(LKH,NOM))!$D(@$$^W4GL("P1HL3")@(LKH,NOM)) D  Q
 .....S HOV=HOV+$P(A,"\",2)
 Q HOV
 ;
DB(NOM,SUM,HOV) Q
 ;
DT(DAT) ;
 Q $$DT^W4DTL(DAT)

W4KLUP
W4KLUP ; UPDATE    [ 05.02.24 15:12 ] [ 04.02.24 15:11 ] [ 14.02.19 05:19 ] 
 ; FUNCTION : CREATE USER CREDIT TRANZACTION FILE ^KLF
 ;            UPDATE USER REMAINDER
 ;
 ; INPUT    : TRANZACTION'S DATA (DATE - YYMMDD)
 ;            TRANZACTION'S CODE (COD)
 ;            KIND OF DOCUMENT (CODDOC)
 ;            TRANZACTION'S NUMBER (NUMBER)
 ;            USER CODE (CUSN)
 ;            SHUM - SUM
 ; OUTPUT   : GLOBAL ^KLF(USER CODE,"KP",DATA,CODE,NUMBER)
 ;---------------------------------------------------------
 N N,KLN,DLL,DLHN,KMAM
 I DATE'?6N.N S OK=0,ER=7 Q
 D ^W4KLINIT
 ;;I $$^W4CIBLKH,$G(CUSN)=$$^W4CIBLKH Q  ; *** LEV 21/09/16
 ;;I $$^W4TBLKH,$G(CUSN)=$$^W4TBLKH Q  ;   *** LEV 21/09/16
 ;;I $$^WVLKH,$G(CUSN)=$$^WVLKH Q  ; *** LEV 02/01/19
 ;
 D PUT^%W3DEB("W4KLUP","DATE=DATE & CODDOC=CODDOC & COD=COD & NUMBER=NUMBER & SUM=SUM")
 I CODDOC="TSHL"!(CODDOC="HZ") G M
 ;
M N KLDATE S KLDATE=DATE
 N DATE S DATE=$$CR^W4DTL(KLDATE)_"0001"
 I '$$DEFISLK^W4PRM S CUSN=$$CLR^W4CDLK(CUSN)
 ;
 N FDATE S FDATE=$$FULL^W4DTL(DATE)
 N NXIND S NXIND=$O(@$$^W4GL("KLF")@(CUSN,"KP",FDATE_"0000"))
 ;
 I $$FULL^W4DTL(NXIND)=FDATE D
 .S KLDATE=$O(@$$^W4GL("KLF")@(CUSN,"KP",FDATE_9999),-1)
 .S DATE=$$FULL^W4DTL(KLDATE)_$TR($J($$NP^W4DTL(KLDATE)+1,4)," ",0)
 ;
 N DATEOLD,SUMOLD,SUM1
 S SUMBUY=0,SUMPAY=0
 ;
 N FYYMM S FYYMM=$$FYYMM^W4DTL(DATE)
 S FDATE=$$FULL^W4DTL(DATE)
 ;
 I COD=CODBUY,+SUM'=0 D
 .D SETKLF(2)
 ;
 I COD=CODPAY,+SUM'=0 D SETKLF(1)
 ;
 N GL D GL^W4L
 ;
 I COD=CODPAY!(COD=CODBUY) D
 .N DT,DT1 S DT=FDATE,DT1=FYYMM
 .N ITRA0,ITRA1
 .S ITRA0=0,ITRA1=0
 .
 .S N="" F  S N=$O(@$$^W4GL("KLF")@(CUSN,"KPM",N)) Q:N=""  D
 ..I N'>DT1 S ITRA0=ITRA0+^(N)-$P(^(N),"*",2)
 ..S ITRA1=ITRA1+^(N)-$P(^(N),"*",2)
 .
 .D  ; I $G(@$$^W4PRM@("ITRAHZ")) D
 ..S $P(@GL@(CUSN,2),"*",4)=ITRA1
 .
 .;;I '$G(@$$^W4PRM@("ITRAHZ")) D
 ..N STRING,DAT0 S STRING=CUSN,DAT0=DT,DAT2=$$^%L1DC(+$H,2) D ^W4KLOST
 ..S $P(@GL@(CUSN,2),"*",4)=ITRA1
 .
 .S $P(@GL@(CUSN,1),"*",11)=$$DT^W4DTL(DT)
 .Q
 ;
 I COD="A" I +SUM'=0,$G(NUMBER) D
 .S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",3)=SUM
 .D KLFILE("\\"_SUM)
 .D ^%S3GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 Q
 ;
 ;
SETKLF(IND) ;
 L +@$$^W4GL("KLF")@(CUSN):1
 S $P(@$$^W4GL("KLF")@(CUSN,"KPM",FYYMM),"*",3-IND)=$P($G(@$$^W4GL("KLF")@(CUSN,"KPM",FYYMM)),"*",3-IND)+SUM
 S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",IND)=SUM
 D
 .D KLFILE($S(IND=1:SUM_"\",IND=2:"\"_SUM))
 .D ^%S3GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 .S @$$^W4GL("KLF")@(CUSN,"KP",FDATE)=$G(@$$^W4GL("KLF")@(CUSN,"KP",FDATE))+$S(IND=2:SUM,IND=1:-SUM,1:0)
 L -@$$^W4GL("KLF")@(CUSN)
 Q
 ;
KLFILE(SUMSUM) ;
 N KLFILE S KLFILE="#KLF"
 O KLFILE:(APPEND) U KLFILE
  W "S @$$^W4GL(""KLF"")@("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")="_SUMSUM,!
 C KLFILE
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KLUP0
W4KLUP ; UPDATE    [ 01.05.10 11:54 ] [ 25.12.08 18:34 ] [ 19.11.08 02:40 ]
 ; FUNCTION : CREATE USER CREDIT TRANZACTION FILE ^KLF
 ;            UPDATE USER REMAINDER
 ; INPUT    : TRANZACTION'S DATA (DATE - YYMMDD)
 ;            TRANZACTION'S CODE (CODDOC)
 ;            TRANZACTION'S NUMBER (NUMBER)
 ;            USER CODE (CUSN)
 ; OUTPUT   : GLOBAL ^KLF(USER CODE,"KP",DATA,CODE,NUMBER)
 ;---------------------------------------------------------
 N N
 I DATE'?6N.N S OK=0,ER=7 Q
 I CODDOC="TSHL"!(CODDOC="HZ") G M
M N KLDATE S KLDATE=DATE N DATE S DATE=$E(KLDATE,1,6)_"0001"
 I $E($O(@$$^W4GL("KLF")@(CUSN,"KP",$E(DATE,1,6)_"0000")),1,6)=$E(DATE,1,6) D
 .S KLDATE=$O(^($E(DATE,1,6)_9999),-1)
 .S DATE=$E(KLDATE,1,6)_$TR($J($E(KLDATE,7,10)+1,4)," ",0)
 ;
 N DATEOLD,SUMOLD,SUM1
 S SUMBUY=0,SUMPAY=0
 ;
 I COD=CODBUY,+SUM'=0 D
 .S $P(@$$^W4GL("KLF")@(CUSN,"KPM",$E(DATE,1,4)),"*",1)=$P($G(@$$^W4GL("KLF")@(CUSN,"KPM",$E(DATE,1,4))),"*",1)+SUM
 .S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",2)=SUM
 .O "#KLF":(APPEND) U "#KLF" W "S $P(@$$^W4GL(""KLF"")@("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",2)="_SUM,! C "#KLF"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 .S @$$^W4GL("KLF")@(CUSN,"KP",$E(DATE,1,6))=$G(@$$^W4GL("KLF")@(CUSN,"KP",$E(DATE,1,6)))+SUM
 ;
 I COD=CODPAY,+SUM'=0 D
 .S $P(@$$^W4GL("KLF")@(CUSN,"KPM",$E(DATE,1,4)),"*",2)=$P($G(@$$^W4GL("KLF")@(CUSN,"KPM",$E(DATE,1,4))),"*",2)+SUM
 .S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",1)=SUM ;+$P($G(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER)),"\",1)
 .O "#KLF":APPEND U "#KLF" W "S $P(@$$^W4GL(""KLF"")@("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",1)="_SUM,! C "#KLF"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 .S @$$^W4GL("KLF")@(CUSN,"KP",$E(DATE,1,6))=$G(@$$^W4GL("KLF")@(CUSN,"KP",$E(DATE,1,6)))-SUM
 ;
 N GL D GL^W4L
 I COD=CODPAY!(COD=CODBUY) D
 .N DT,DT1 S DT=$E(DATE,1,6) S DT1=$E(DT,1,4) I DT1<9000 S DT1=DT1+10000
 .S ITRA0=0
 .
 .S N="" F  S N=$O(@$$^W4GL("KLF")@(CUSN,"KPM",N)) Q:N=""  D
 ..I N'>DT1 S ITRA0=ITRA0+^(N)-$P(^(N),"*",2)
 .
 .I $G(@$$^W4PRM@("ITRAHZ")) D
 ..S $P(@GL@(CUSN,2),"*",4)=ITRA0
 .
 .I '$G(@$$^W4PRM@("ITRAHZ")) D
 ..N STRING,DAT0 S STRING=CUSN,DAT0=DT D ^W4KLOST
 ..S $P(@GL@(CUSN,2),"*",4)=ITRA0
 .
 .S $P(@GL@(CUSN,1),"*",11)=$$^%L1DC(DT,4)
 .Q
 ;
 I COD'="A",COD'=CODBUY&(COD'=CODPAY),+SUM'=0 D  Q
 .S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",1)=SUM ;+$P($G(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER)),"\",1)
 .S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",2)=SUM ;+$P($G(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER)),"\",2)
 .S @$$^W4GL("KLF")@(CUSN,"KP",$E(DATE,1,6))=$G(@$$^W4GL("KLF")@(CUSN,"KP",$E(DATE,1,6)))+0
 .O "#KLF":APPEND U "#KLF" W "S $P(@$$^W4GL(""KLF"")@("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",2)="_SUM_"\"_SUM,! C "#KLF"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 ;
 I COD="A" I +SUM'=0,$G(NUMBER) D
 .S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",3)=SUM
 .O "#KLF":APPEND U "#KLF" W "S $P(@$$^W4GL(""KLF"")@("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_"""),""\"",2)="_SUM_"\"_SUM,! C "#KLF"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 Q

W4KLUP1
W4KLUP ; UPDATE    [ 01.05.10 11:53 ] [ 30.04.10 20:09 ] [ 25.12.08 18:34 ]
 ; FUNCTION : CREATE USER CREDIT TRANZACTION FILE ^KLF
 ;            UPDATE USER REMAINDER
 ; INPUT    : TRANZACTION'S DATA (DATE - YYMMDD)
 ;            TRANZACTION'S CODE (CODDOC)
 ;            TRANZACTION'S NUMBER (NUMBER)
 ;            USER CODE (CUSN)
 ; OUTPUT   : GLOBAL ^KLF(USER CODE,"KP",DATA,CODE,NUMBER)
 ;---------------------------------------------------------
 N N
 I DATE'?6N.N S OK=0,ER=7 Q
 I CODDOC="TSHL"!(CODDOC="HZ") G M
M N KLDATE S KLDATE=DATE
 N DATE S DATE=$$CR^W4DTL(KLDATE)_"0001"
 ;
 N FDATE S FDATE=$$FULL^W4DTL(DATE)
 N NXIND S NXIND=$O(@$$^W4GL("KLF")@(CUSN,"KP",FDATE_"0000"))
 ;
 I $$FULL^W4DTL(NXIND)=FDATE D
 .S KLDATE=$O(@$$^W4GL("KLF")@(CUSN,"KP",FDATE_9999),-1)
 .S DATE=$$FULL^W4DTL(KLDATE)_$TR($J($$NP^W4DTL(KLDATE)+1,4)," ",0)
 ;
 N DATEOLD,SUMOLD,SUM1
 S SUMBUY=0,SUMPAY=0
 ;
 N FYYMM S FYYMM=$$FYYMM^W4DTL(DATE)
 S FDATE=$$FULL^W4DTL(DATE)
 ;
 I COD=CODBUY,+SUM'=0 D SETKLF(2)
 ;
 I COD=CODPAY,+SUM'=0 D SETKLF(1)
 ;
 N GL D GL^W4L
 ;
 I COD=CODPAY!(COD=CODBUY) D
 .N DT,DT1 S DT=FDATE,DT1=FYYMM
 .S ITRA0=0
 .
 .S N="" F  S N=$O(@$$^W4GL("KLF")@(CUSN,"KPM",N)) Q:N=""  D
 ..I N'>DT1 S ITRA0=ITRA0+^(N)-$P(^(N),"*",2)
 .
 .I $G(@$$^W4PRM@("ITRAHZ")) D
 ..S $P(@GL@(CUSN,2),"*",4)=ITRA0
 .
 .I '$G(@$$^W4PRM@("ITRAHZ")) D
 ..N STRING,DAT0 S STRING=CUSN,DAT0=DT D ^W4KLOST
 ..S $P(@GL@(CUSN,2),"*",4)=ITRA0
 .
 .S $P(@GL@(CUSN,1),"*",11)=$$DT^W4DTL(DT)
 .Q
 ;
 I COD'="A",COD'=CODBUY&(COD'=CODPAY),+SUM'=0 D  Q
 .S @$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER)=SUM_"\"_SUM
 .S @$$^W4GL("KLF")@(CUSN,"KP",FDATE)=$G(@$$^W4GL("KLF")@(CUSN,"KP",FDATE))+0
 .D KLFILE(SUM_"\"_SUM)
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 ;
 I COD="A" I +SUM'=0,$G(NUMBER) D
 .S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",3)=SUM
 .D KLFILE("\\"_SUM)
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 Q
 ;
SETKLF(IND) ;
 S $P(@$$^W4GL("KLF")@(CUSN,"KPM",FYYMM),"*",3-IND)=$P($G(@$$^W4GL("KLF")@(CUSN,"KPM",FYYMM)),"*",3-IND)+SUM
 S $P(@$$^W4GL("KLF")@(CUSN,"KP",DATE,CODDOC,NUMBER),"\",IND)=SUM
 .D KLFILE($S(IND=1:SUM_"\",IND=2:"\"_SUM))
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 .S @$$^W4GL("KLF")@(CUSN,"KP",FDATE)=$G(@$$^W4GL("KLF")@(CUSN,"KP",FDATE))+$S(IND=2:SUM,IND=1:-SUM,1:0)
 Q
KLFILE(SUMSUM) ;
 N KLFILE S KLFILE="#KLF"
 O KLFILE:(APPEND) U KLFILE
  W "S @$$^W4GL(""KLF"")@("""_CUSN_""",""KP"","""_DATE_""","""_CODDOC_""","""_NUMBER_""")="_SUMSUM,!
 C KLFILE
 Q

W4KORD
W4KORD(HZ) ; [ 29.11.18 16:01 ] [ 10.07.18 16:31 ] [ 24.08.17 15:28 ] 
 D KORD^W4NEWHZ($G(HZ))
 D CLR
 Q
 ;
CLR ;
 D CLRTMP
 ;
 ;;D KILL^%W1PRM("HZM") ; 29/11/18 --> COMMENT
 D KILL^%W1PRM("CODE"),KILL^%W1PRM("FUTDAT")
 D KILL^%W1PRM("SHIDH")
 I '$$^W4MVFROM D
 .D KILL^%W1PRM("PCMV")
 N NMB S NMB=$$GET^%W1PRM("NMB")
 I NMB D ^W4KLNEW(NMB)
 I $$^W4DLVCSR D KILL^%W1PRM("NMB")
 Q
 ;
CLRTMP ;
 D ^W4KTMPHZ ; --> K ^TMPORD
 ;
 K @$$^W4MAIN("TMPOP")
 ;
 I '$$^W4MVFROM D
 .K @$$^W4MAIN("TMPMV")
 .K @$$^W4MAIN("TMPMVD")
 .K @$$^W4MAIN("TMPMVD0")
 .K @$$^W4MAIN("TMPANS")
 ;
 D KILL^%W1PRM("DELROW")
 D PUT^%W1PRM("URMENU",0)
 Q
 
 
 
 
 

W4KOTD
W4KOTD ; [ 21.04.12 05:45 ] [ 22.03.12 11:13 ] [ 18.12.09 14:26 ] [
 W "<div align=""center"">",!
 W "<br />"
 ;
 W $$^%W1DICT("MSGRULE1")_"<br />",!
 W $$^%W1DICT("MSGRULE2")_"<br />",!
 ;
 W "<br />",!
 W "<table id=""TblPrm"" dir="""_$$^%W1DIR_""" width=""35%"" border=""1"" cellspacing=""0"" style="""_$$FONTFM^W3CSS_""" onMouseDown=""ifrHide('MUST')"" >",!
 ;
 F K=1:1:10 D
 .W "<tr>"
 .W " <td width=""100%"" align=""center"" >"
 .W "  <input type=""text"" id=""TXT"_K_""" size=""39"" maxlength=""39"" value="""_$$VL(K)_""">"
 .W " </td>",!
 .W "</tr>",!
 ;
 W "</table></div>",!
 ;
 Q
 ;
VL(K) ;
 N A S A=$G(@$$^W4GL("P1HOD")@("D",K))
 Q $$H2U^%L1FRM(A)
 ;
SAVE(PRM) ;
 N (%ARG,JB,PRM)
 D PUT^%W3DEB("W4KOTD-SAVE","PRM=PRM")
 K @$$^W4GL("P1HOD")@("D")
 F I=$L(PRM,";"):-1:1 Q:$TR($P(PRM,";",I)," ","")'=""
 S LAST=I
 F I=1:1:LAST D
 .S VL=$P(PRM,";",I)
 .S VL=$$CNWEB^%L1FRM(VL)
 .S VL=$$INVH^%L1FRM(VL)
 .S @$$^W4GL("P1HOD")@("D",I)=VL
 Q 1

W4KOTHS0
W4KOTHSB(NUMBER,LKH,DAT,PR,PELE) ; [ 10.07.19 18:38 ] [ 31.01.19 07:13 ] [ 30.01.19 14:08 ] 
  D PUT^%W3DEB("W4KOTHSB","NUMBER=NUMBER&LKH=LKH&DAT=DAT&PR=PR&PELE=PELE")
  N STRING S STRING=LKH
  S PR=$G(PR)
  ;
  N CODDOC S CODDOC=$$CODDOC(PR)
  ;
  I $E(CODDOC)="I" D ^W4KOTINP(NUMBER,LKH,DAT,PR,0) Q
  ;
  ;;D GLHB,KOT
  ;
  W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  ;
  I $G(@$$^W4PRM@("MSDNAME")) D MSDNAME^W4PCHBP
  ;
  D MYDETAILS
  ;
  ;;W "<br>",!
  ;
  W "<table border=""0"" width=""98%"" dir="""_$$^%W1DIR_""" >",!
  ;
  N MSD S MSD=$$GET^%W1PRM("MSD")
  I $$DEMO^W3PRM(MSD) D STDEMO
  ;
  D DOCNMB
  ;
  D LINE
  ;
  I $G(LKH)="",$G(NUMBER),$$HZMHC S LKH=$$LKH^W4HZMHC(NUMBER)
  ;
  ;;W "LKH="_LKH_"  NUMBER="_NUMBER_" PR="_PR,!
  ;
  I NUMBER D GETKOT(LKH,NUMBER,$G(PR))
  ;
  I '$$NOISSUETIME^W3PRM,'$$HZMHC D ISSUETIME D LINE
  ;
  D DOPKOT(LKH)
  ;
  D LKHDET
 ;
 ;;W "<tr><td colspan=""2"">&nbsp;</td></tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
MYDETAILS ;
  ;---------------------- ESEK DETAILS ------------------
 D GLHB,KOT
 W "<div id=""mydet"" width=""98%"" >",!
 I $$LOGODET^W4PRM D LOGODET W "</div>",! Q
 ;
 I $$LOGO,'$$NOHD^W4PRM D PICLOGO
 ;
 I $$NOHD^W4PRM D
 .F I=1:1:$$NOHD^W4PRM W "<br>",!
 ;
 I $$NOMYDETS=1 Q
 ;
 W "<table width=""96%"" dir="""_$$^%W1DIR_""" border=""0"" "
  I $$LOGO W "style=""font-size:"_$$^W3FSZ(11)_""" "
 W ">",!
 ;
 I $$NOMYDETS'=2 D
  .W "<tr>"
  . D TDFULL
  .  W $$^%W1ALIGN_" >"
  .  W $$H2U^%L1FRM(MYKTV)
  . W "</td>"
  .I '$$LOGO W "</tr>",!
  .I $$LOGO D TDSP
  .;
  .I $L(MYDOAR),MYDOAR'=MYKTV D
  ..I '$$LOGO W "<tr>"
  ..   W "<td "_$$^%W1ALIGN_" colspan=""2"">"_$$^%W1DICT("POSTADDRESS")_" : "_$$H2U^%L1FRM(MYDOAR)_"</td>"
  ..I '$$LOGO W "</tr>",!
  ..I $$LOGO D TDSP
  ;
  I '$$LOGO W "<tr>"
   D TDFULL W ">",$$^%W1DICT("MYESEK")
   W " "_MYESEK_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   ;
  I $$NOMYDETS'=2 D
   .D TDFULL W ">" W $$^%W1DICT("TEL")
   .W " : "_MYTEL
   .I $L(MYPELE) D
   ..W "<BR>"_$$^%W1DICT("PELE")
   ..W " : "_MYPELE
   .;
   .I MYFAX D
   ..W "<BR>"_$$^%W1DICT("FAX")
   ..W " : "_MYFAX
   .W "</td>",!
  ;
  W "<td colspan=""6"" "_$$^%W1ALIGN_" >"
  ;
  I $G(MEUHAD) D
  .W $$^%W1DICT("MEUHAD")
  .W " "_MEUHAD_$$NBSP^%L1FRM(14)
   ;
  I $L($G(MYEMAIL)) D
   . W $$^%W1DICT("EMAIL")
   . W " : <a href='mailto:"_MYEMAIL_"'>"_MYEMAIL_"</a>"
   . W "&nbsp;&nbsp;&nbsp;&nbsp;"
  ;
  I $L($G(MYSITE)) D
  .  W $$^%W1DICT("SITE")
  .  W " : "_MYSITE
   W "</td>",!
  W "</tr>",!
  ;
  I $$KOTACNT^W4PRM,$D(@$$^W4GL("W4ACNT")) D
  .N AC S AC="" F  S AC=$O(@$$^W4GL("W4ACNT")@(AC)) Q:AC=""  D
  ..N A S A=$G(^(AC))
  ..W "<tr>"
  .. W "<td>"_$$^%W1DICT("BANK")_" : "_$P(A,"\")_" "_$$H2U^%L1FRM($P(A,"\",2))_"</td>"
  .. W "<td>"_$$^%W1DICT("SNIF")_" : "_$P(A,"\",3)_"</td>"
  .. W "<td>"_$$^%W1DICT("ACCOUNT")_" : "_$P(A,"\",4)_"</td>"
  ..W "</tr>",!
 W "</table>",!
 W "<hr>"
 W "</dev>",!
 Q
 ;
 ;
KOT ;
 S MYNAME=$$MYNAME
 I $L($$LOGO^W3PRM) S MYLOGO=$$LOGO^W3PRM,MYNAME=""
 S MYKTV=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",2))),"#",""),"_")
 S MYTEL=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",3))),"#",""),"_")
 I MYTEL,MYTEL'["-",MYTEL'["," S MYTEL=$E(MYTEL,1,2)_"-"_$E(MYTEL,3,20)
 S MYESEK=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",4))),"#",""),"_")
 S MEUHAD=$$SPA^%L1FRM($$MEUHAD^W4PRM)
 S MYFAX=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",5))),"#",""),"_")
 I MYFAX,MYFAX'["-",MYFAX'["," S MYFAX=$E(MYFAX,1,2)_"-"_$E(MYFAX,3,20)
 S MYEMAIL=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",6))),"#",""),"_")
 S MYPELE=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",7))),"#",""),"_")
 I MYPELE,MYPELE'["-",MYPELE'["," S MYPELE=$E(MYPELE,1,3)_"-"_$E(MYPELE,4,20)
 S MYSITE=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",8))),"#",""),"_")
 S MYDOAR=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",9))),"#",""),"_")
 S MYEMAIL=$$FUNC^%LCASE(MYEMAIL)
 S MYSITE=$$FUNC^%LCASE(MYSITE)
 Q
 ;
MYNAME(STAM) ;
 N HD
 S HD=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",1))),"#",""),"_")
 ;;I $G(@$$^W4GL("PLUK"))["MLY" S HD=$G(@$$^W4GLM("YZRN")@(1000))
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I $$DEMO^W3PRM(MSD) S HD="DEMO - "_HD
 Q HD
 ;
 ;
DOCNMB ;
  ;------------ MAKOR OR ETEK , NAZV DOC, NOMER
  ;
  I $G(PR)="HB"!($G(PR)="HY")!($G(PR)="HBW")!($G(PR)="TZ")!($G(PR)="HMK")!($G(PR)="HMKI")!($G(PR)="TM")!($G(PR)="TMZ")!($G(PR)="HZ")!($G(PR)="HZMH")!(PR="HI") D
  .N HZM S HZM=$$GETP^%W1PRM("HZM")
  .I $G(PR)="HMK",HZM,$$TOCUSNAME^W4HZMST(HZM)'="" D
  ..W "<tr>"
  ..W "<td width=""10%"">",!
  .. W $$^%W1DICT("TOCUSNAME")
  ..W "</td>"
  ..W "<td>"
  .. W "&nbsp;"
  ..W "</td>",!
  ..W "</tr>",!
  ..W "<tr>"
  ..W "<td width=""30%"" style=""font-weight:bold"">",!
  .. W $$H2U^%L1FRM($$TOCUSNAME^W4HZMST(HZM))
  ..W "</td>"
  ..W "<td>"
  .. W "&nbsp;"
  ..W "</td>",!
  ..W "</tr>",!
  .
  .W "<tr>"
  .W "<tr>"
  .D TDFULL1
  .W "   style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""""
  .W "   id=""invoicenumber"">"
  .N NMDOC
  .S NMDOC=$S(PR="TZ"!(NUMBER<0):"DEBINVOICENMB",PR="HMK"!(PR="HMKI"):"INVRCPNMB",PR="TM":"DLVDOCNMB",PR="TMZ":"DLVBACKDOCNMB",PR="HZ":"ORDER",PR="HZMH":"PRICEOFFER",PR="HI"&'$$GETP^%W1PRM("HI2HB"):"DEALINVOICE",1:"INVOICENMB")
  .W $$^%W1DICT(NMDOC)_" "
  .W "   "_$S(NUMBER<0:-NUMBER,NUMBER:NUMBER,1:"")_"</td>",!
  .W " <td id=""makor"" style=""color:gray;font-size:"_$$^W3FSZ(18)_""">"
  .D
  ..I $G(PR)="HZMH"!($G(PR)="HZ") W "&nbsp;" Q
  ..N ET S ET=$$^%W1DICT("ORIGINAL")
  ..I '$$MAKOR(NUMBER,$G(PR)) D
  ...I $G(@$$^W4PRM@("EQORIG")) S ET=$$^%W1DICT("EQORIG") Q
  ...S ET=$$^%W1DICT("THECOPY")
  ..W "   "_ET
  .W " </td>"
  .W "</tr>",!
  ;
  I $G(PR)="CB" D
  .W "<tr>"
  .D TDFULL1 W " style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""receiptnumber"">"
  . I '$$HMK^W4LHB D
  ..  W $$^%W1DICT("RECEIPTNMB")_" "_$S(NUMBER:NUMBER,1:"")
  . I $$HMK^W4LHB!$$SUMHB^W4CUST D
  ..  N SUM S SUM=$P($G(@$$^W4MAIN("TMP")),"\",2)
  ..  I $$SUMHB^W4CUST S SUM=$$SUMHB^W4CUST
  ..  W "<br><br><span style=""font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("TOPAY")_" : <span id=""topay"" style=""color:green;font-size:"_$$^W3FSZ(16)_""">"_$J(SUM,2,2)_"</span> "_$$^%W1DICT("NIS")_"</span>"
  .W " </td>",!
  .W " <td id=""makor"" style=""color:gray;font-size:"_$$^W3FSZ(18)_""">"
  . I $G(PR)="HZMH" Q
  . W $S($$MAKOR(NUMBER,$G(PR)):$$^%W1DICT("ORIGINAL"),1:$$^%W1DICT("THECOPY"))
  .W " </td>",!
  .W "</tr>",!
  ;
  I $$SRV D
  .W "<tr>",!
  .D TDFULL1 W " style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""srvcardnumber"">"
  .  W $$^%W1DICT("SRVCARDNMB")_" "_$S(NUMBER:NUMBER,1:"")
  .W " </td>",!
  .W "</tr>",!
  ;
  I $$HZMHC D
  .W "<tr>",!
  .D TDFULL1 W " style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""prcofrnumber"">"
  .  W $$^%W1DICT("PRCOFRNMB")_" "_$S(NUMBER&'$G(%ARG("NEWDOC")):NUMBER,1:"")
  .W " </td>",!
  .W "</tr>",!
  ;
  ;;I $$PY,$G(NUMBER) D  ; -- > ^W4KOTINP !!
  .W "<tr>",!
  .D TDFULL1 W "style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""prcofrnumber"">"
  .  W $$^%W1DICT("PAYMENT")_" "_NUMBER
  .W " </td>",!
  .W "</tr>",!
  ;
  Q
 ;
 ;
ISSUETIME ;
  W "<tr>"
  W " <td colspan=""2"">"_$$^%W1DICT("ISSUETIME")_" "_$ZD($H,"DD.MM.YY  24:60")_"</td>"
  I $G(NUMBER)>0 D
  .N ORGTIME
  .D GETKOT(LKH,NUMBER,PR)
  .I '$$MAKOR(NUMBER,$G(PR)) D
  ..W " <td colspan=""2"">"_$$^%W1DICT("ORIGINALTIME")_" "_$G(ORGTIME)_"</td>"
  W "</tr>",!
  ;
 Q
 ;
 ;
GETKOT(STRING,NUMBER,PR) ;
 ;
 I $G(PR)="CB" D GETKOT^W4LCBCR(STRING,NUMBER) Q
 ;
 D GLHB
 ;
 I $G(PR)="HZ" D  Q
 .Q:$G(LKH)=""
 .N NOM S NOM=$$^W4ORDD(STRING,+NUMBER)
 .D ^W4HSBGET(NOM,$$CODDOC($G(PR)))
 ;
 I $$CODDOC($G(PR))="H"!($G(PR)="HI")!($G(PR)="TZ")!($G(PR)["HMK")!($G(PR)="TM")!($G(PR)="TMZ")!$$HZMH!$$HZMHC D  Q
 .D ^W4HSBGET(NUMBER,$$CODDOC($G(PR)))
 .S ORGTIME=$G(W4HSB("ISSUETIME"))
 .S LKHNAME=$G(W4HSB("LKHNAME"))
 .S LKHKTV=$G(W4HSB("KTV"))
 .S LKHTZ=$G(W4HSB("TZ"))
 .I $$HZMH S LKHPELE=$$TEL2^W4HZMHC(NUMBER)
 ;
 I $$SRV D  Q
 .N A S A=$G(@GLHB@(NUMBER))
 .S ORGTIME=$P(A,"\",15)
 .S LKHNAME=$P(A,"\",3)
 .S LKHKTV=$P(A,"\",4)
 .S LKHPELE=$P(A,"\",5)
 ;
 Q
 ;
 ;
DOPKOT(LKH) ;
 I $G(LKHNAME)="" S LKHNAME=$$LKH^W4L(LKH)
 I $G(LKHKTV)="" S LKHKTV=$$KTVMM^W4L(LKH)
 I '$G(LKHTZ) S LKHTZ=$$TZ^W4L(LKH)
 I $G(LKHTEL)="" S LKHTEL=$$TEL^W4L(LKH)
 I LKHTEL="",$L(LKH)>6 S LKHTEL=$$TEL^W4LHB(LKH)
 I $G(LKHPELE)="" S LKHPELE=$$PELE^W4L(LKH)
 ;
 I $G(LKHEMAIL)="" S LKHEMAIL=$$EMAIL^W4L(LKH)
 I $G(LKHFAX)="" S LKHFAX=$$FAX^W4L(LKH)
 Q
 ;
LINE ;
 W "<tr>"
 D TDFULL1 W ">&nbsp;</td></tr>"
 Q
 ;
STYLERKV(FSZ,COLOR) ;
 I '$G(FSZ) S FSZ=12
 I $G(COLOR)="" S COLOR="black"
 Q "color:"_COLOR_";font-weight:bold;font-size:"_$$^W3FSZ(FSZ)
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
GLHB ;
 I $$HZMHC S GLHB=$$^W4GL("HZMHC") Q
 I $$SRV S GLHB=$$^W4GL("SRVC") Q
 S GLHB=$$^W4GL("KLF")_"(STRING,""H"")"
 Q
 ;
SRV(STAM) ;
 I $G(PR)="SRVC" Q 1
 Q 0
 ;
MAKOR(NUMBER,PR) ;
 I '$G(NUMBER) Q 1
 I $G(%ARG("MKRYD")) Q 1
 I $$GET^%W1PRM("MKRYD")=(NUMBER_$G(PR)) Q 1
 Q 0
 ;
STDEMO ;
  W "<tr><td colspan=""3"">&nbsp;</td>",!
  S DEMO="&nbsp;"
  N MSD S MSD=$$GET^%W1PRM("MSD")
  I $$DEMO^W3PRM(MSD) D
  .W " <td style=""color:red;font-size:"_$$^W3FSZ(18)_""">"
  .W $$^%W1DICT("DRAFT")
  .W "</td>",!
  I '$$DEMO^W3PRM(MSD) W "<td>&nbsp;</TD>",!
  W "</tr>",!
  Q
  ;
CODDOC(PR) ;
  N CODDOC S CODDOC=PR
  I $G(PR)="HB"!($G(PR)="HY")!($G(PR)="HBW")!($G(PR)="") S CODDOC="H"
  I $G(PR)="HMK"!($G(PR)="HMKI") S CODDOC="HMK"
  I $G(PR)="HBZ" S CODDOC="TZ"
  I $G(PR)="TZ"!($G(PR)="TM")!($G(PR)="TMZ")!($G(PR)="CB")!($G(PR)="HZMHC") S CODDOC=PR
  Q CODDOC
  ;
HZMH(STAM) ;
 I $G(PR)="HZMH" Q 1
 Q 0
 ;
HZMHC(STAM) ;
 I $G(PR)="HZMHC" Q 1
 Q 0
 ;
PY(STAM) ;
 I $G(PR)="IPY" Q 1
 Q 0
 ;
LKHDET ;
  D TRHR
  W "<tr>"
     W "<td width=""15%"">"_$$^%W1DICT("CUSTOMNAME")_"</td>"
     W "<td width=""45%"" id=""lkh1"" align=""right"" style="""_$$STYLERKV()_""">"
      W $$H2U^%L1FRM(LKHNAME)
     W "</td>"
     N ZNMB
     S ZNMB="CUSTOMNUMBER"
     I $E($G(PR))="I" S ZNMB="SPKNUMBER"
     W "<td width=""15%"">" W $$^%W1DICT(ZNMB)_"</td>"
     W "<td id=""lkh"" style="""_$$STYLERKV_""" >"_LKH_"</td>"
  W "</tr>",!
  ;
  I $L($G(LKHFOR)) D
  .W "<tr>"
  .   W "<td width=""15%"">" W $$^%W1DICT("LKHFOR")_"</td>"
  .   W "<td id=""lkhfor"" align=""right"" style="""_$$STYLERKV()_""">"
  .    W $$H2U^%L1FRM(LKHFOR)
  .   W "</td>"
  .   W "<td>&nbsp;</td>"
  .   W "<td>&nbsp;</td>"
  .W "</tr>",!
  ;
  I $$HZMH!($G(PR)="HZ") D
  .W "<tr>"
  .   W "<td width=""15%"">" W $$^%W1DICT("MAZMIN")_"</td>"
  .   W "<td id=""lkhfor"" align=""right"" style="""_$$STYLERKV()_""">"
  .    W $$H2U^%L1FRM($$MAZMIN^W4HZMST(NUMBER))
  .    I $L($G(LKHPELE)),LKHPELE'=$G(LKHTEL) W " "_LKHPELE
  .   W "</td>"
  .   W "<td colspan=""2"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  .     W $$^%W1DICT("COMMENT")_" : "_$$H2U^%L1FRM($$CMNT^W4HZMST(NUMBER))
  .   W "</td>"
  .W "</tr>",!
  ;
  W "<tr>",!
     W "<td>" W $$^%W1DICT("ADDR")_" </td>"
     W "<td id=""ktv"" >"_$$H2U^%L1FRM(LKHKTV)_"</td>"
     W "<td>"_$$^%W1DICT("TEL")_"</td><td id=""tel"">"_LKHTEL_"</td>"
  W "</tr>",!
  ;
  W "<tr>",!
     W "<td>" W $$^%W1DICT("EMAIL")_" </td>"
     ;
     W "<td id=""email"" >"_$$H2U^%L1FRM($G(LKHEMAIL))_"</td>"
     W "<td>"_$$^%W1DICT("FAX")_"</td><td id=""fax"">"_$G(LKHFAX)_"</td>"
  W "</tr>",!
  ;
  W "<tr>",!
    I '$$SRV,'$$HZMHC D
    .W "<td>" W $$^%W1DICT("TODATE")_" </td>"
    I $$SRV!$$HZMHC D
    .W "<td>" W $$^%W1DICT("DATE")_" </td>"
    ;
    W "<td id=""todate"" "_$$^%W1ALIGN_" style="""_$$STYLERKV(16,"BROWN")_""">"
     W DAT
     D TIME(PR,NUMBER)
    W "</td>"
    ;
    I '$$SRV,'$$HZMHC D
    .W "<td>"_$$^%W1DICT("BUSINESSID")_"</td>"
    .I $$MAKOR(NUMBER,$G(PR))&'$G(NUMBER) D
    ..;;W "<td><input type=""text"" id=""TZ"" value="""_LKHTZ_""" maxlength=""12"" size=""9"" "_$S(LKHTZ:" readonly=""readonly""",1:"")_" ></td>"
    ..W "<td><input type=""text"" id=""TZ"" value="""_LKHTZ_""" maxlength=""12"" size=""9"" ></td>"
    .I '$$MAKOR(NUMBER,$G(PR))!$G(NUMBER) D
    ..W "<td id=""TZ"">"_LKHTZ_"</td>"
    ;
    I $$SRV!$$HZMHC D
    .W "<td>"_$$^%W1DICT("PELE")_"</td><td id=""pele"">"_$G(LKHPELE)_"</td>",!
 W "</tr>",!
 ;
 I $$HZMHC D TRHR
 ;
 I '$$HZMHC,'$$HZMH,$$ITRA^W4PRM D
 .W "<tr>"
 .W " <td>"_$$^%W1DICT("ITRALKH")_"</td>"
 .W " <td id=""itra"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"
 . W $J($$ITRA^W4L(LKH),2,2)_" "_$$^W4SMBMTB
 . W "</td>"
 .W "</tr>",!
 ;
 I $$HZMH!($G(PR)="HZ") D
 .W "<tr>"
 .W " <td>"_$$^%W1DICT("SOADIM")_"</td>"
 .W " <td id=""soadim"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"
 .  W $$SOAD^W4HZMST(NUMBER)
 .W " </td>"
 .
 .W " <td>"_$$^%W1DICT("RECEIVER")_"</td>"
 .W " <td>"
 .  W $$H2U^%L1FRM($$^W4NAME($$MKBL^W4HZMST(NUMBER)))
 .W " </td>"
 .
 .W "</tr>",!
 .
 .I $G(HZM)>0,$$HZMLAK^W4HZMST(HZM)'?.P D
 ..W "<tr>"
 ..W " <td>"_$$^%W1DICT("AUTHNO")_"</td>"
 ..W " <td>"_$$H2U^%L1FRM($$HZMLAK^W4HZMST(HZM))_"</td>"
 ..W "</tr>",!
 ;
 ;
 Q
 ;
 ;
TDFULL ;
 I $$LOGO W "<td " Q
 D TDFULL1
 Q
TDFULL1 ;
 W "<td colspan=""4"" "
 Q
 ;
LOGO(STAM) ;
 ;;I $G(%ARG("MAIL")) Q 0
 I $G(@$$^W4PL@("LOGO"))?1E.E1"."1A.A Q 1
 Q 0
 ;
PICLOGO ;
 N PICLOGO S PICLOGO=@$$^W4PL@("LOGO") Q:PICLOGO=""
 N WEB S WEB="" I $G(%ARG("MAIL")) S WEB=$$WEB^W3MAIN
 W "<img src="""_WEB_PICLOGO_""" "
 I $G(@$$^W4PL@("LOGO","HEIGHT")) W " height="""_^("HEIGHT")_""" "
 I $G(@$$^W4PL@("LOGO","WIDTH")) W " width="""_^("WIDTH")_""" "
 W " />"
 Q
 ;
TDSP ;
 W "<td>"_$$NBSP^%L1FRM(4)_"</td>"
 Q
 ;
TRHR ;
 W "<tr><td colspan=""10""><hr style=""height:1px;border-style:dotted""></td>"
 Q
 ;
NOMYDETS(STAM) ; 
 I '$G(%ARG("PRINT")) Q 0
 Q $$NOMYDETS^W4PRM 
 ;
LK4HSB 
 S ORGTIME=$G(W4HSB("ISSUETIME"))
 S LKHTEL=$G(W4HSB("TEL"))
 S LKHPELE=$G(W4HSB("PELE"))
 S LKHNAME=$G(W4HSB("LKHNAME"))
 S LKHKTV=$G(W4HSB("KTV"))
 S LKHTZ=$G(W4HSB("TZ"))
 S LKHEMAIL=$G(W4HSB("EMAIL"))
 S LKHFAX=$G(W4HSB("FAX"))
 Q
 ;
TIME(PR,NUMBER) ; 
 I $$ELPOSDOC(PR) D
 .N NUMBER S NUMBER=$$GETP^%W1PRM("HZM")
 .I '$$ADSHAA^W4HZMST(NUMBER) D  Q
 ..W "&nbsp;&nbsp;"_$$^%W1DICT("TOTIME")_" "_$$SHAA^W4HZMST(NUMBER)
 .W "&nbsp;&nbsp;"_$$^%W1DICT("TOPERIOD")_" "_$$ADSHAA^W4HZMST(NUMBER)_" - "_$$SHAA^W4HZMST(NUMBER)
 Q
 ;
ELPOSDOC(PR) ;
 I $$HZMH!(PR="HZ")!(PR="HMK"),$$^W4ELPOS Q 1
 Q 0 
 ;
 ;
LOGODET ;
 N WD S WD=$G(%ARG("LOGODETWD"),98)
 W "<table width="""_WD_"%"" dir="""_$$^%W1DIR_""" border=""0"" "
  W ">",!
 W " <tr><td width=""50%"">"
  W " <table width=""100%"" ",!
  W ">",! 
   ;
   W " <tr><td width=""40%"">"_$$^%W1DICT("ADDRESS")_"</td>"
    W "<td>"_$$H2U^%L1FRM(MYKTV)_"</td>"
   W "</tr>",!
 
 I $L(MYDOAR),MYDOAR'=MYKTV D
 . W " <tr>"
 .  W " <td >"_$$^%W1DICT("POSTADDRESS")_"</td>"
 .  W " <td>"_$$H2U^%L1FRM(MYDOAR)_"</td>"
 . W " </tr>",!
 
   W " <tr>"
   W "  <td>",$$^%W1DICT("MYESEK")_"</td>"
    W " <td>"_MYESEK_"</td>"
   W " </tr>",!
 
   W " <tr>"
   W "  <td>",$$^%W1DICT("TEL")_"</td>"
    W " <td>"_MYTEL_"</td>"
   W " </tr>",!
 
   I MYFAX D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("FAX")_"</td>"
   . W " <td>"_MYFAX_"</td>"
   .W " </tr>",!
 
   I $G(MEUHAD) D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("MEUHAD")_"</td>"
   . W " <td>"_MEUHAD_"</td>"
   .W " </tr>",!
   ;
   I $L($G(MYEMAIL)) D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("EMAIL")_"</td>"
   . W " <td><a href='mailto:"_MYEMAIL_"'>"_MYEMAIL_"</a></td>"
   .W " </tr>",!
   ;
  I $L($G(MYSITE)) D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("SITE")_"</td>"
   . W " <td><a href='"_MYSITE_"'>"_MYSITE_"</a></td>"
   .W " </tr>",!
  W "</table>",!
  W "</td>"
  ;
  W "<td width=""50%"" "_$$INV^%W1ALIGN_" >"
   D PICLOGO
  W "</td>",!
  ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KOTHSB
W4KOTHSB(NUMBER,LKH,DAT,PR,PELE) ; [ 10.08.26 15:41 ] [ 19.02.26 03:17 ] [ 26.11.25 08:57 ] 
  D PUT^%W3DEB("W4KOTHSB","NUMBER=NUMBER&LKH=LKH&DAT=DAT&PR=PR&PELE=PELE")
  N STRING S STRING=LKH
  S PR=$G(PR)
  ;
  N CODDOC S CODDOC=$$CODDOC(PR)
  ;
  I $E(CODDOC)="I" D ^W4KOTINP(NUMBER,LKH,DAT,PR,0) Q
  ;
  ;;D GLHB,KOT
  ;
  W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  ;
  I $G(@$$^W4PRM@("MSDNAME")) D MSDNAME^W4PCHBP
  ;
  D MYDETAILS
  ;
  ;;W "<br>",!
  ;
  W "<table border=""0"" width=""98%"" dir="""_$$^%W1DIR_""" >",!
  ;
  N MSD S MSD=$$GET^%W1PRM("MSD")
  I $$DEMO^W3PRM(MSD) D STDEMO
  ;
  D DOCNMB
  ;
  D LINE
  ;
  I $G(LKH)="",$G(NUMBER),$$HZMHC S LKH=$$LKH^W4HZMHC(NUMBER)
  ;
  ;;W "LKH="_LKH_"  NUMBER="_NUMBER_" PR="_PR,!
  ;
  I NUMBER D GETKOT(LKH,NUMBER,$G(PR))
  ;
  I '$$NOISSUETIME^W3PRM,'$$HZMHC D ISSUETIME D LINE
  ;
  D DOPKOT(LKH)
  ;
  D LKHDET($$ORD(NUMBER,$G(PR)))
 ;
 ;;W "<tr><td colspan=""2"">&nbsp;</td></tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
MYDETAILS ;
  ;---------------------- ESEK DETAILS ------------------
 D GLHB,KOT
 W "<div id=""mydet"" width=""98%"" >",!
 I $$LOGODET^W4PRM D LOGODET W "</div>",! Q
 ;
 I $$LOGO,'$$NOHD^W4PRM D PICLOGO
 ;
 I $$NOHD^W4PRM D
 .F I=1:1:$$NOHD^W4PRM W "<br>",!
 ;
 I $$NOMYDETS=1 Q
 ;
 W "<table width=""96%"" dir="""_$$^%W1DIR_""" border=""0"" "
  I $$LOGO W "style=""font-size:"_$$^W3FSZ(11)_""" "
 W ">",!
 ;
 I $$NOMYDETS'=2 D
  .W "<tr>"
  . D TDFULL
  .  W $$^%W1ALIGN_" >"
  .  W $$H2U^%L1FRM(MYKTV)
  . W "</td>"
  .I '$$LOGO W "</tr>",!
  .I $$LOGO D TDSP
  .;
  .I $L(MYDOAR),MYDOAR'=MYKTV D
  ..I '$$LOGO W "<tr>"
  ..   W "<td "_$$^%W1ALIGN_" colspan=""2"">"_$$^%W1DICT("POSTADDRESS")_" : "_$$H2U^%L1FRM(MYDOAR)_"</td>"
  ..I '$$LOGO W "</tr>",!
  ..I $$LOGO D TDSP
  ;
  I '$$LOGO W "<tr>"
   D TDFULL W ">",$$^%W1DICT("MYESEK")
   W " "_MYESEK_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   ;
  I $$NOMYDETS'=2 D
   .D TDFULL W ">" W $$^%W1DICT("TEL")
   .W " : "_MYTEL
   .I $L(MYPELE) D
   ..W "<BR>"_$$^%W1DICT("PELE")
   ..W " : "_MYPELE
   .;
   .I MYFAX D
   ..W "<BR>"_$$^%W1DICT("FAX")
   ..W " : "_MYFAX
   .W "</td>",!
  ;
  W "<td colspan=""4"" "_$$^%W1ALIGN_" >"
  ;
  I $G(MEUHAD) D
  .W $$^%W1DICT("MEUHAD")
  .W " "_MEUHAD_$$NBSP^%L1FRM(14)
   ;
  I $L($G(MYEMAIL)) D
   . W $$^%W1DICT("EMAIL")
   . W " : <a href='mailto:"_MYEMAIL_"'>"_MYEMAIL_"</a>"
   . W "&nbsp;&nbsp;&nbsp;&nbsp;"
  ;
  I $L($G(MYSITE)) D
  .  W $$^%W1DICT("SITE")
  .  W " : "_MYSITE
   W "</td>",!
  W "</tr>",!
  ;
  I $$KOTACNT^W4PRM,$D(@$$^W4GL("W4ACNT")),'$$KOTACNTD^W4PRM D
  .N AC S AC="" F  S AC=$O(@$$^W4GL("W4ACNT")@(AC)) Q:AC=""  D
  ..N A S A=$G(^(AC))
  ..W "<tr>"
  .. W "<td>"_$$^%W1DICT("BANK")_" : "_$P(A,"\")_" "_$$H2U^%L1FRM($P(A,"\",2))_"</td>"
  .. W "<td>"_$$^%W1DICT("SNIF")_" : "_$P(A,"\",3)_"</td>"
  .. W "<td colspan=""4"">"_$$^%W1DICT("ACCOUNT")_" : "_$P(A,"\",4)_"</td>"
  ..W "</tr>",!
  .D KOTACNTTX
 W "</table>",!
 W "<hr>"
 W "</dev>",!
 ;
 I $$KOTACNT^W4PRM,$$KOTACNTD^W4PRM,$D(@$$^W4GL("W4ACNT")) D KOTACNTD
 Q
 ;
 ;
KOT ;
 S MYNAME=$$MYNAME
 I $L($$LOGO^W3PRM) S MYLOGO=$$LOGO^W3PRM,MYNAME=""
 S MYKTV=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",2))),"#",""),"_")
 S MYTEL=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",3))),"#",""),"_")
 I MYTEL,MYTEL'["-",MYTEL'["," S MYTEL=$E(MYTEL,1,2)_"-"_$E(MYTEL,3,20)
 S MYESEK=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",4))),"#",""),"_")
 S MEUHAD=$$SPA^%L1FRM($$MEUHAD^W4PRM)
 S MYFAX=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",5))),"#",""),"_")
 I MYFAX,MYFAX'["-",MYFAX'["," S MYFAX=$E(MYFAX,1,2)_"-"_$E(MYFAX,3,20)
 S MYEMAIL=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",6))),"#",""),"_")
 S MYPELE=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",7))),"#",""),"_")
 I MYPELE,MYPELE'["-",MYPELE'["," S MYPELE=$E(MYPELE,1,3)_"-"_$E(MYPELE,4,20)
 S MYSITE=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",8))),"#",""),"_")
 S MYDOAR=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",9))),"#",""),"_")
 S MYEMAIL=$$FUNC^%LCASE(MYEMAIL)
 S MYSITE=$$FUNC^%LCASE(MYSITE)
 Q
 ;
MYNAME(STAM) ;
 N HD
 S HD=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",1))),"#",""),"_")
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) S MSD=%ARG("MSD")
 I $$CCWEBR^W4PRM!$$MMCC^W4PRM S HD=$$MSD^W3R(MSD)
 I $$DEMO^W3PRM(MSD) S HD="DEMO - "_HD
 Q HD
 ;
 ;
DOCNMB ;
  ;------------ MAKOR OR ETEK , NAZV DOC, NOMER
  ;
  I $G(PR)="HB"!($G(PR)="HY")!($G(PR)="HBW")!($G(PR)="TZ")!($G(PR)="HMK")!($G(PR)="HMKI")!($G(PR)="TM")!($G(PR)="TMZ")!($G(PR)="HZ")!($G(PR)="HZMH")!(PR="HI") D
  .N HZM S HZM=$$GETP^%W1PRM("HZM")
  .
  .I $G(PR)="HMK",HZM,$$TOCUSNAME^W4HZMST(HZM)'="" D
  ..W "<tr>"
  ..W "<td width=""10%"">",!
  .. W $$^%W1DICT("TOCUSNAME")
  ..W "</td>"
  ..W "<td>"
  .. W "&nbsp;"
  ..W "</td>",!
  ..W "</tr>",!
  ..W "<tr>"
  ..W "<td width=""30%"" style=""font-weight:bold"">",!
  .. W $$H2U^%L1FRM($$TOCUSNAME^W4HZMST(HZM))
  ..W "</td>"
  ..W "<td>"
  .. W "&nbsp;"
  ..W "</td>",!
  ..W "</tr>",!
  .
  .W "<tr>"
  .D TDFULL1
  .W "   style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""""
  .W "   id=""invoicenumber"">"
  .N NMDOC
  .S NMDOC=$S(PR="TZ"!(NUMBER<0):"DEBINVOICENMB",PR="HMK"!(PR="HMKI"):"INVRCPNMB",PR="TM":"DLVDOCNMB",PR="TMZ":"DLVBACKDOCNMB",PR="HZ":"ORDER",PR="HZMH":"PRICEOFFER",PR="HI"&'$$GETP^%W1PRM("HI2HB"):"DEALINVOICE",1:"INVOICENMB")
  .W $$^%W1DICT(NMDOC)_" "
  .W "   "_$S(NUMBER<0:-NUMBER,NUMBER:NUMBER,1:"")_"</td>",!
  .W " <td id=""makor"" style=""color:gray;font-size:"_$$^W3FSZ(18)_""">"
  .D
  ..I $G(PR)="HZMH"!($G(PR)="HZ") W "&nbsp;" Q
  ..N ET S ET=$$^%W1DICT("ORIGINAL")
  ..I '$$MAKOR(NUMBER,$G(PR)) D
  ...I $G(@$$^W4PRM@("EQORIG")) S ET=$$^%W1DICT("EQORIG") Q
  ...S ET=$$^%W1DICT("THECOPY")
  ..W "   "_ET
  .W " </td>"
  .W "</tr>",!
  ;
  I $G(NUMBER),$G(PR)="HB"!($G(PR)="HY")!($G(PR)="HBW")!($G(PR)="TZ")!($G(PR)="HMK") D
  .W "<tr>",!
  . N CDOC S CDOC=$S(PR="HB"!(PR="HY")!(PR="HBW"):"H",1:PR)
  . N HBMAS S HBMAS=$$GETNOM^W4HBMAS(NUMBER,CDOC)
  . S HBMAS=$$HBR^%L1FRM(HBMAS,9)
  . W "<td colspan=""6"" align=""center"">"_$$^%W1DICT("HBMAS",HBMAS)_$$NBSP^%L1FRM(18)_"</td>"
  .W "</tr>",!
  I $G(PR)="CB" D
  .W "<tr>"
  .D TDFULL1 W " style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""receiptnumber"">"
  . I '$$HMK^W4LHB D
  ..  W $$^%W1DICT("RECEIPTNMB")_" "_$S(NUMBER:NUMBER,1:"")
  . I $$HMK^W4LHB!$$SUMHB^W4CUST D
  ..  N SUM S SUM=$P($G(@$$^W4MAIN("TMP")),"\",2)
  ..  I $$SUMHB^W4CUST S SUM=$$SUMHB^W4CUST
  ..  W "<br><br><span style=""font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("TOPAY")_" : <span id=""topay"" style=""color:green;font-size:"_$$^W3FSZ(16)_""">"_$J(SUM,2,2)_"</span> "_$$^%W1DICT("NIS")_"</span>"
  .W " </td>",!
  .W " <td id=""makor"" style=""color:gray;font-size:"_$$^W3FSZ(18)_""">"
  . I $G(PR)="HZMH" Q
  . W $S($$MAKOR(NUMBER,$G(PR)):$$^%W1DICT("ORIGINAL"),1:$$^%W1DICT("THECOPY"))
  .W " </td>",!
  .W "</tr>",!
  ;
  I $$SRV D
  .W "<tr>",!
  .D TDFULL1 W " style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""srvcardnumber"">"
  .  W $$^%W1DICT("SRVCARDNMB")_" "_$S(NUMBER:NUMBER,1:"")
  .W " </td>",!
  .W "</tr>",!
  ;
  I $$HZMHC D
  .W "<tr>",!
  .D TDFULL1 W " style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""prcofrnumber"">"
  .  W $$^%W1DICT("PRCOFRNMB")_" "_$S(NUMBER&'$G(%ARG("NEWDOC")):NUMBER,1:"")
  .W " </td>",!
  .W "</tr>",!
  ;
  ;;I $$PY,$G(NUMBER) D  ; -- > ^W4KOTINP !!
  .W "<tr>",!
  .D TDFULL1 W "style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""prcofrnumber"">"
  .  W $$^%W1DICT("PAYMENT")_" "_NUMBER
  .W " </td>",!
  .W "</tr>",!
  ;
  Q
 ;
 ;
ISSUETIME ;
  W "<tr>"
  W " <td colspan=""2"">"_$$^%W1DICT("ISSUETIME")_" "_$ZD($H,"DD.MM.YY  24:60")_"</td>"
  I $G(NUMBER)>0 D
  .N ORGTIME
  .D GETKOT(LKH,NUMBER,PR)
  .I '$$MAKOR(NUMBER,$G(PR)) D
  ..W " <td colspan=""2"">"_$$^%W1DICT("ORIGINALTIME")_" "_$G(ORGTIME)_"</td>"
  W "</tr>",!
  ;
 Q
 ;
 ;
GETKOT(STRING,NUMBER,PR) ;
 ;
 I $G(PR)="CB" D GETKOT^W4LCBCR(STRING,NUMBER) Q
 ;
 D GLHB
 ;
 I $G(PR)="HZ" D  Q
 .Q:$G(LKH)=""
 .N NOM S NOM=$$^W4ORDD(STRING,+NUMBER)
 .D ^W4HSBGET(NOM,$$CODDOC($G(PR)))
 ;
 I $$CODDOC($G(PR))="H"!($G(PR)="HI")!($G(PR)="TZ")!($G(PR)["HMK")!($G(PR)="TM")!($G(PR)="TMZ")!$$HZMH!$$HZMHC D  Q
 .D ^W4HSBGET(NUMBER,$$CODDOC($G(PR)))
 .S ORGTIME=$G(W4HSB("ISSUETIME"))
 .S LKHNAME=$G(W4HSB("LKHNAME"))
 .S LKHKTV=$G(W4HSB("KTV"))
 .S LKHTZ=$G(W4HSB("TZ"))
 .I $$HZMH S LKHPELE=$$TEL2^W4HZMHC(NUMBER)
 ;
 I $$SRV D  Q
 .N A S A=$G(@GLHB@(NUMBER))
 .S ORGTIME=$P(A,"\",15)
 .S LKHNAME=$P(A,"\",3)
 .S LKHKTV=$P(A,"\",4)
 .S LKHPELE=$P(A,"\",5)
 ;
 Q
 ;
 ;
DOPKOT(LKH) ;
 I $G(LKHNAME)="" S LKHNAME=$$LKH^W4L(LKH)
 I $G(LKHKTV)="" S LKHKTV=$$KTVMM^W4L(LKH)
 I '$G(LKHTZ) S LKHTZ=$$TZ^W4L(LKH)
 I $G(LKHTEL)="" S LKHTEL=$$TEL^W4L(LKH)
 I LKHTEL="",$L(LKH)>6 S LKHTEL=$$TEL^W4LHB(LKH)
 I $G(LKHPELE)="" S LKHPELE=$$PELE^W4L(LKH)
 ;
 I $G(LKHEMAIL)="" S LKHEMAIL=$$EMAIL^W4L(LKH)
 I $G(LKHFAX)="" S LKHFAX=$$FAX^W4L(LKH)
 Q
 ;
LINE ;
 W "<tr>"
 D TDFULL1 W ">&nbsp;</td></tr>"
 Q
 ;
STYLERKV(FSZ,COLOR) ;
 I '$G(FSZ) S FSZ=12
 I $G(COLOR)="" S COLOR="black"
 Q "color:"_COLOR_";font-weight:bold;font-size:"_$$^W3FSZ(FSZ)
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
GLHB ;
 I $$HZMHC S GLHB=$$^W4GL("HZMHC") Q
 I $$SRV S GLHB=$$^W4GL("SRVC") Q
 S GLHB=$$^W4GL("KLF")_"(STRING,""H"")"
 Q
 ;
SRV(STAM) ;
 I $G(PR)="SRVC" Q 1
 Q 0
 ;
MAKOR(NUMBER,PR) ;
 I '$G(NUMBER) Q 1
 I $G(%ARG("MKRYD")) Q 1
 I $$GET^%W1PRM("MKRYD")=(NUMBER_$G(PR)) Q 1
 Q 0
 ;
STDEMO ;
  W "<tr><td colspan=""3"">&nbsp;</td>",!
  S DEMO="&nbsp;"
  N MSD S MSD=$$GET^%W1PRM("MSD")
  I $$DEMO^W3PRM(MSD) D
  .W " <td style=""color:red;font-size:"_$$^W3FSZ(18)_""">"
  .W $$^%W1DICT("DRAFT")
  .W "</td>",!
  I '$$DEMO^W3PRM(MSD) W "<td>&nbsp;</TD>",!
  W "</tr>",!
  Q
  ;
CODDOC(PR) ;
  N CODDOC S CODDOC=PR
  I $G(PR)="HB"!($G(PR)="HY")!($G(PR)="HBW")!($G(PR)="") S CODDOC="H"
  I $G(PR)="HMK"!($G(PR)="HMKI") S CODDOC="HMK"
  I $G(PR)="HBZ" S CODDOC="TZ"
  I $G(PR)="TZ"!($G(PR)="TM")!($G(PR)="TMZ")!($G(PR)="CB")!($G(PR)="HZMHC") S CODDOC=PR
  Q CODDOC
  ;
HZMH(STAM) ;
 I $G(PR)="HZMH" Q 1
 Q 0
 ;
HZMHC(STAM) ;
 I $G(PR)="HZMHC" Q 1
 Q 0
 ;
PY(STAM) ;
 I $G(PR)="IPY" Q 1
 Q 0
 ;
LKHDET(ORD) ;
  D TRHR
  W "<tr>"
     W "<td width=""15%"">"_$$^%W1DICT("CUSTOMNAME")_"</td>"
     W "<td width=""45%"" id=""lkh1"" align=""right"" style="""_$$STYLERKV()_""">"
      W $$H2U^%L1FRM(LKHNAME)
     W "</td>"
     N ZNMB
     S ZNMB="CUSTOMNUMBER"
     I $E($G(PR))="I" S ZNMB="SPKNUMBER"
     W "<td width=""15%"">" W $$^%W1DICT(ZNMB)_"</td>"
     W "<td id=""lkh"" style="""_$$STYLERKV_""" >"_LKH_"</td>"
  W "</tr>",!
  ;
  I $L($G(LKHFOR)) D
  .W "<tr>"
  .   W "<td width=""15%"">" W $$^%W1DICT("LKHFOR")_"</td>"
  .   W "<td id=""lkhfor"" align=""right"" style="""_$$STYLERKV()_""">"
  .    W $$H2U^%L1FRM(LKHFOR)
  .   W "</td>"
  .   W "<td>&nbsp;</td>"
  .   W "<td>&nbsp;</td>"
  .W "</tr>",!
  ;
  I $L($G(MAZMIN)) D
  .S MAZMIN=$$SPA^%L1FRM($G(MAZMIN))
  .I $L(MAZMIN),MAZMIN'=$$SPA^%L1FRM($G(LKHNAME)) D
  ..W "<tr>"
  ..   W "<td width=""15%"">" W $$^%W1DICT("MAZMIN")_"</td>"
  ..   W "<td id=""lkhfor"" align=""right"" style="""_$$STYLERKV()_""">"
  ..    W $$H2U^%L1FRM(MAZMIN)
  ..   W "</td>"
  ..   W "<td>&nbsp;</td>"
  ..   W "<td>&nbsp;</td>"
  ..W "</tr>",!
  ;
  W "<tr>",!
     W "<td>" W $$^%W1DICT("ADDR")_" </td>"
     W "<td id=""ktv"" >"_$$H2U^%L1FRM(LKHKTV)_"</td>"
     W "<td>"_$$^%W1DICT("TEL")_"</td><td id=""tel"">"_LKHTEL_"</td>"
  W "</tr>",!
  ;
  I $$HZMH!($G(PR)="HZ")!($G(PR)="HMK"&$$MM^W4PRM) D
  .W "<tr>"
  .   ;;W "<td colspan=""2"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  .   W "<td>"_$$^%W1DICT("COMMENT")_"</td>"
  .   W "<td style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  .   D 
  .    .I $$DELIS^W4PRM W $$H2U^%L1FRM($$CMNT^W4HZMST(ORD)) Q
  .    .W $$H2U^%L1FRM($$HRA(ORD))
  .   W "</td>"
  .   W "<td width=""15%"">" W $$^%W1DICT("MAZMIN")_"</td>"
  .   W "<td id=""lkhfor"" align=""right"" style="""_$$STYLERKV()_""">"
  .    W $$H2U^%L1FRM($$MAZMIN^W4HZMST(ORD))
  .    I $L($G(LKHPELE)),LKHPELE'=$G(LKHTEL) W " "_LKHPELE
  .   W "</td>"
  .W "</tr>",!
  ;
  W "<tr>",!
     W "<td>" W $$^%W1DICT("EMAIL")_" </td>"
     ;
     W "<td id=""email"" >"_$$H2U^%L1FRM($G(LKHEMAIL))_"</td>"
     W "<td>"_$$^%W1DICT("FAX")_"</td><td id=""fax"">"_$G(LKHFAX)_"</td>"
  W "</tr>",!
  ;
  W "<tr>",!
    I '$$SRV,'$$HZMHC D
    .W "<td>" W $$^%W1DICT("TODATE")_" </td>"
    I $$SRV!$$HZMHC D
    .W "<td>" W $$^%W1DICT("DATE")_" </td>"
    ;
    W "<td id=""todate"" "_$$^%W1ALIGN_" style="""_$$STYLERKV(16,"BROWN")_""">"
     W DAT
     D TIME(PR,NUMBER)
    W "</td>"
    ;
    I '$$SRV,'$$HZMHC D
    .W "<td>"_$$^%W1DICT("BUSINESSID")_"</td>"
    .I $$MAKOR(NUMBER,$G(PR))&'$G(NUMBER) D
    ..;;W "<td><input type=""text"" id=""TZ"" value="""_LKHTZ_""" maxlength=""12"" size=""9"" "_$S(LKHTZ:" readonly=""readonly""",1:"")_" ></td>"
    ..W "<td><input type=""text"" id=""TZ"" value="""_LKHTZ_""" maxlength=""12"" size=""9"" ></td>"
    .I '$$MAKOR(NUMBER,$G(PR))!$G(NUMBER) D
    ..W "<td id=""TZ"">"_LKHTZ_"</td>"
    ;
    I $$SRV!$$HZMHC D
    .W "<td>"_$$^%W1DICT("PELE")_"</td><td id=""pele"">"_$G(LKHPELE)_"</td>",!
 W "</tr>",!
 ;
 I $$HZMHC D TRHR
 ;
 ;;I '$$HZMHC,'$$HZMH,$$ITRA^W4PRM D
 .W "<tr>"
 .W " <td>"_$$^%W1DICT("ITRALKH")_"</td>"
 .W " <td id=""itra"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"
 . W $J($$CBH^W4KLOST(LKH,DAT),2,2)_" "_$$^W4SMBMTB
 . W "</td>"
 .W "</tr>",!
 ;
 I $$HZMH!($G(PR)="HZ") D
 .W "<tr>"
 .W " <td>"_$$^%W1DICT("SOADIM")_"</td>"
 .W " <td id=""soadim"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"
 .  W $$SOAD^W4HZMST(ORD)
 .W " </td>"
 .
 .W " <td>"_$$^%W1DICT("RECEIVER")_"</td>"
 .W " <td>"
 .  W $$H2U^%L1FRM($$^W4NAME($$MKBL^W4HZMST(ORD)))
 .W " </td>"
 .
 .W "</tr>",!
 .
 .I $G(ORD)>0,$$HZMLAK^W4HZMST(ORD)'?.P D
 ..W "<tr>"
 ..W " <td>"_$$^%W1DICT("AUTHNO")_"</td>"
 ..W " <td>"_$$H2U^%L1FRM($$HZMLAK^W4HZMST(ORD))_"</td>"
 ..W "</tr>",!
 ;
 ;
 Q
 ;
 ;
TDFULL ;
 I $$LOGO W "<td " Q
 D TDFULL1
 Q
TDFULL1 ;
 W "<td colspan=""4"" "
 Q
 ;
LOGO(STAM) ;
 ;;I $G(%ARG("MAIL")) Q 0
 I $G(@$$^W4PL@("LOGO"))?1E.E1"."1A.A Q 1
 Q 0
 ;
PICLOGO ;
 N PICLOGO S PICLOGO=$G(@$$^W4PL@("LOGO")) Q:PICLOGO=""
 N WEB ;;S WEB="" I $G(%ARG("MAIL")) S WEB=$$WEB^W3MAIN
 S WEB=$$WEB^W3MAIN(1)
 I $G(%ARG("MAIL")) S WEB=$$WEBL^W3MAIN
 W "<img src="""_WEB_PICLOGO_""" "
 I $G(@$$^W4PL@("LOGO","HEIGHT")) W " height="""_^("HEIGHT")_""" "
 I $G(@$$^W4PL@("LOGO","WIDTH")) W " width="""_^("WIDTH")_""" "
 W " />"
 Q
 ;
TDSP ;
 W "<td>"_$$NBSP^%L1FRM(4)_"</td>"
 Q
 ;
TRHR ;
 W "<tr><td colspan=""10""><hr style=""height:1px;border-style:dotted""></td>"
 Q
 ;
NOMYDETS(STAM) ; 
 I '$G(%ARG("PRINT")) Q 0
 Q $$NOMYDETS^W4PRM 
 ;
LK4HSB 
 S ORGTIME=$G(W4HSB("ISSUETIME"))
 S LKHTEL=$G(W4HSB("TEL"))
 S LKHPELE=$G(W4HSB("PELE"))
 S LKHNAME=$G(W4HSB("LKHNAME"))
 S LKHKTV=$G(W4HSB("KTV"))
 S LKHTZ=$G(W4HSB("TZ"))
 S LKHEMAIL=$G(W4HSB("EMAIL"))
 S LKHFAX=$G(W4HSB("FAX"))
 Q
 ;
TIME(PR,NUMBER) ; 
 I $$ELPOSDOC(PR) D
 .N NUMBER S NUMBER=$$GETP^%W1PRM("HZM")
 .I '$$ADSHAA^W4HZMST(NUMBER) D  Q
 ..W "&nbsp;&nbsp;"_$$^%W1DICT("TOTIME")_" "_$$SHAA^W4HZMST(NUMBER)
 .W "&nbsp;&nbsp;"_$$^%W1DICT("TOPERIOD")_" "_$$ADSHAA^W4HZMST(NUMBER)_" - "_$$SHAA^W4HZMST(NUMBER)
 Q
 ;
ELPOSDOC(PR) ;
 I $$HZMH!(PR="HZ")!(PR="HMK"),$$^W4ELPOS Q 1
 Q 0 
 ;
 ;
LOGODET ;
 N WD S WD=$G(%ARG("LOGODETWD"),98)
 W "<table width="""_WD_"%"" dir="""_$$^%W1DIR_""" border=""0"" "
  W ">",!
 W " <tr><td width=""50%"">"
  W " <table width=""100%"" ",!
  W ">",! 
   ;
   W " <tr><td width=""40%"">"_$$^%W1DICT("ADDRESS")_"</td>"
    W "<td>"_$$H2U^%L1FRM(MYKTV)_"</td>"
   W "</tr>",!
 
 I $L(MYDOAR),MYDOAR'=MYKTV D
 . W " <tr>"
 .  W " <td >"_$$^%W1DICT("POSTADDRESS")_"</td>"
 .  W " <td>"_$$H2U^%L1FRM(MYDOAR)_"</td>"
 . W " </tr>",!
 
   W " <tr>"
   W "  <td>",$$^%W1DICT("MYESEK")_"</td>"
    W " <td>"_MYESEK_"</td>"
   W " </tr>",!
 
   W " <tr>"
   W "  <td>",$$^%W1DICT("TEL")_"</td>"
    W " <td>"_MYTEL_"</td>"
   W " </tr>",!
 
   I MYFAX D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("FAX")_"</td>"
   . W " <td>"_MYFAX_"</td>"
   .W " </tr>",!
 
   I $G(MEUHAD) D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("MEUHAD")_"</td>"
   . W " <td>"_MEUHAD_"</td>"
   .W " </tr>",!
   ;
   I $L($G(MYEMAIL)) D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("EMAIL")_"</td>"
   . W " <td><a href='mailto:"_MYEMAIL_"'>"_MYEMAIL_"</a></td>"
   .W " </tr>",!
   ;
  I $L($G(MYSITE)) D
   .W " <tr>"
   .W "  <td>",$$^%W1DICT("SITE")_"</td>"
   . W " <td><a href='"_MYSITE_"'>"_MYSITE_"</a></td>"
   .W " </tr>",!
  W "</table>",!
  W "</td>"
  ;
  W "<td width=""50%"" "_$$INV^%W1ALIGN_" >"
   D PICLOGO
  W "</td>",!
  ;
  W "</tr>",!
 W "</table>",!
 Q
 ;
KOTACNTD ;
 W "<dev id=""divacnt"" align=""center"" style=""display:none;position:absolute;left:0;top:985px;width:100%"" >",! ; -- WAS 1035
 W "<hr>",!
 W "<table width=""100%"">",!
 N AC S AC="" F  S AC=$O(@$$^W4GL("W4ACNT")@(AC)) Q:AC=""  D
 .N A S A=$G(^(AC))
 .W "<tr>"
 . W "<td>"_$$^%W1DICT("BANK")_" : "_$P(A,"\")_" "_$$H2U^%L1FRM($P(A,"\",2))_"</td>"
 . W "<td>"_$$^%W1DICT("SNIF")_" : "_$P(A,"\",3)_"</td>"
 . W "<td>"_$$^%W1DICT("ACCOUNT")_" : "_$P(A,"\",4)_"</td>"
 .W "</tr>",!
 D KOTACNTTX
 W "</table>",!
 W "</dev>",!
 Q
 ;
KOTACNTTX ;
 I $G(@$$^W4PRM@("KOTACNTT"))'="" D
 .W "<tr>"
 .W "<td colspan=""6"">"
 . W $$H2U^%L1FRM($G(@$$^W4PRM@("KOTACNTT")))
 .W "</td>"
 .W "</tr>",!
 Q
 ;
ORD(NOM,PR) ;
 N ORD I '$G(NOM) Q $$GETP^%W1PRM("HZM")
 I $E(PR,1,2)="HZ" Q NOM
 I PR="HMK" S ORD=$P($G(@$$^W4GL("P1HB")@(NOM)),"\")
 I PR="TM" S ORD=$P($G(@$$^W4GL("P1TM")@(NOM)),"\")
 I $$GETP^%W1PRM("HZM") Q $$GETP^%W1PRM("HZM")
 Q NOM
 ;
HRA(ORD) ; 
 N HRA S HRA=$$HRA^W4HZMST(ORD)
 I HRA'["[" Q HRA
 S HRA1=$P(HRA,"[")
 ;
 N J S J=$F(HRA,":MSH") I J<0 Q HRA
 I $G(@$$^W4PRM@("SHOWHRA")) D
 .S HRA1=HRA1_" ["_$E(HRA,J,$L(HRA))
 Q HRA1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KOTINP
W4KOTINP(NUMBER,SPK,DAT,VD,EDIT) ; [ 18.08.15 09:30 ] [ 08.02.14 18:32 ] [ 21.01.14 09:23 ]
  D PUT^%W3DEB("W4KOTINP","NUMBER=NUMBER&SPK=SPK&DAT=DAT&VD=VD&EDIT=EDIT")
  I $G(SPK)="" Q
  I $G(VD)="" Q
  ;
  N STRING S STRING=SPK
  ;
  N CODDOC S CODDOC=$$CODDOC(VD)
  ;
  D GLHB(VD,SPK)
  D GETINP^W4HSBGET(CODDOC,SPK,NUMBER)
  ;
  D MYKOT
  ;
  W "<div align=""center"">",!
  W "<table border=""0"" width=""90%"" dir="""_$$^%W1DIR_""">",!
  D LINE
  ;
  D MYDETAILS
  ;
  N MSD S MSD=$$GET^%W1PRM("MSD")
  I $$DEMO^W3PRM(MSD) D STDEMO
  ;
  D DOCNAME
  ;
  W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
  ;
  I $G(NUMBER) D
  .D TYPINGTIME
  .D GETKOT(SPK,NUMBER,$G(VD))
  ;
  I $G(SPKNAME)="" S SPKNAME=$$NAME^W4SPK(SPK)
  I $G(SPKKTV)="" S SPKKTV=$$KTVMM^W4SPK(SPK)
  I $G(SPKTZ)=""!($$FUNC^%UCASE(SPKTZ)="UNDEFINED") S SPKTZ=$$TZ^W4SPK(SPK)
  S SPKTEL=$$TEL^W4SPK(SPK)
  I $G(SPKPELE)="" S SPKPELE=$$PELE^W4SPK(SPK)
  ;
  S SPKEMAIL=$$EMAIL^W4SPK(SPK)
  S SPKFAX=$$FAX^W4SPK(SPK)
  ;
  W "<tr>",!
   W "<td>" W $$^%W1DICT("TODATE")_" </td>",!
   W "<td id=""todate"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"_DAT_"</td>",!
    ;
   W "<td>" W $$^%W1DICT("TYPINGTIME")_" </td>",!
   W "<td id=""typingdate"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"_$G(W4HSB("ISSUETIME"))_"</td>",!
  W "</tr>",!
  ;
  I VD["IHB" D
  .W "<tr>",!
  . W "<td>" W $$^%W1DICT("PAYMENTDATE")_" </td>",!
  . W "<td id=""paymentdate"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"_$G(W4HSB("PDATE"))_"</td>",!
  .  ;
  . W "<td>" W $$^%W1DICT("PAID")_" </td>",!
  . W "<td id=""paid"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"_$G(W4HSB("PAID"))_"</td>",!
  .W "</tr>",!
  ;
  I $G(SPK) D
  .W "<tr>"
  .   W "<td width=""12%"">"_$$^%W1DICT("NAME")_"</td>"
  .   W "<td id=""spk1"" align=""right"" style="""_$$STYLERKV()_""">"_$$SPKNAME_"</td>"
  .   W "<td width=""15%"">" W $$^%W1DICT("SPKNUMBER")_"</td>"
  .   W "<td id=""spk"" style="""_$$STYLERKV_""">"_SPK_"</td>"
  .W "</tr>",!
  ;
  I VD="ITK" D  G KOTE
  .N DEP,DEPNAME S (DEP,DEPNAME)=""
  .I $G(W4HSB("DEP")) S DEP=W4HSB("DEP")
  .I $G(%ARG("DEP")) S DEP=%ARG("DEP")
  .I $L($G(W4HSB("DEPNAME"))) S DEPNAME=W4HSB("DEPNAME")
  .I DEPNAME="",DEP S DEPNAME=$G(@$$^W4GL("DEP")@(DEP))
  .I DEP D
  ..W "<tr>"
  ..   W "<td width=""15%"">" W $$^%W1DICT("DEPNUMBER")_"</td>"
  ..   W "<td id=""spk"" style="""_$$STYLERKV_""">"_DEP_"</td>"
  ..   W "<td width=""12%"">"_$$^%W1DICT("NAME")_"</td>"
  ..   W "<td id=""spk1"" align=""right"" style="""_$$STYLERKV()_""">"_$$H2U^%L1FRM(DEPNAME)_"</td>"
  ..W "</tr>",!
  ;
  W "<tr>",!
     W "<td>" W $$^%W1DICT("ADDR")_" </td>"
     W "<td id=""ktv"" >"_$$SPKKTV_"</td>"
     W "<td>"_$$^%W1DICT("TEL")_"</td><td id=""tel"">"_SPKTEL_"</td>"
  W "</tr>",!
  ;
  W "<tr>",!
    W "<td>"_$$^%W1DICT("BUSINESSID")_"</td>"
    W "<td id=""TZ"">"_$$SPKTZ_"</td>"
    ;
    W "<td>"_$$^%W1DICT("PELE")_"</td><td id=""pele"">"_$G(SPKPELE)_"</td>",!
  W "</tr>",!
 ;
  W "<tr>",!
    W "<td>"_$$^%W1DICT("EMAIL")_"</td>"
    W "<td id=""email"">"_$G(SPKEMAIL)_"</td>"
    ;
    W "<td>"_$$^%W1DICT("FAX")_"</td><td id=""fax"">"_$G(SPKFAX)_"</td>",!
  W "</tr>",!
 ;
 ;
KOTE ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
MYDETAILS ;
  I $$NOMYDETS^W4PRM Q
  ;---------------------- ESEK DETAILS ------------------
  W "<tr>"
     W "<td colspan=""4"" align=""center"" style="""_$$STYLERKV()_""">"
      W $$H2U^%L1FRM(MYKTV)
     W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
     W "<td width=""10%"">" W $$^%W1DICT("TEL")_"</td>"
     W "<td style="""_$$STYLERKV_""" width=""40%"">"_MYTEL_"</td>"
     W "<td width=""20%"">"_$$^%W1DICT("MYESEK")_"</td>",!
     W "<td align=""right"" style="""_$$STYLERKV()_""">"_MYESEK_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
     W "<td>" W $S($L(MYFAX):$$^%W1DICT("FAX"),1:"&nbsp;")_"</td>"
     W "<td style="""_$$STYLERKV_""">"_MYFAX_"</td>"
     W "<td>"_$S($L(MYEMAIL):$$^%W1DICT("EMAIL"),1:"&nbsp;")_"</td>",!
     W "<td align=""right"" style="""_$$STYLERKV()_""">"_MYEMAIL_"</td>"
  W "</tr>",!
 Q
 ;
 ;
MYKOT ;
 I $G(@$$^W4GL("PLUK"))'["MLY" G MYKOT1
 N MRK S MRK=$G(@$$^W4GLM("STAT(""MLY"",""EM"",""MRKZ"")"))
 S MYNAME=$$MYNAME
 I $G(@$$^W4PL@("LOGO")) S MYLOGO=@$$^W4PL@("LOGO"),MYNAME=""
 S MYKTV=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*")
 S MYTEL=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",5)
 S MYESEK=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",12)
 S MYFAX=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",11)
 S MYEMAIL=$P($G(@$$^W4GLM("YZRN")@(MRK,4)),"*",3)
 Q
 ;
MYKOT1 ;
 S MYNAME=$$MYNAME
 I $G(@$$^W4PL@("LOGO")) S MYLOGO=@$$^W4PL@("LOGO"),MYNAME=""
 S MYKTV=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",2))),"#",""),"_")
 S MYTEL=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",3))),"#",""),"_")
 S MYESEK=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",4))),"#",""),"_")
 S MYFAX=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",5))),"#",""),"_")
 S MYEMAIL=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",6))),"#",""),"_")
 Q
 ;
MYNAME(STAM) ;
 N HD
 S HD=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",1))),"#",""),"_")
 ;;I $G(@$$^W4GL("PLUK"))["MLY" S HD=$G(@$$^W4GLM("YZRN")@(1000))
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I $$DEMO^W3PRM(MSD) S HD="DEMO - "_HD
 Q HD
 ;
DOCNAME ;
  ;------------ MAKOR OR ETEK , NAZV DOC, NOMER
  I $G(VD)="IHB"!($G(VD)="ITM")!($G(VD)="IHBZ")!($G(VD)="ITZ")!(VD="ITK")!(VD="IHZ") D
  .W "<tr>"
  .W " <td colspan=""4"" "
  .W "   style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""""
  .W "   id=""invoicenumber"">"
  .W $S(VD="IHBZ":$$^%W1DICT("SUPPLDEBINVOICE"),VD="ITM":$$^%W1DICT("SUPPLDLVDOC"),VD="ITZ":$$^%W1DICT("INCOMEDLVBACKDOC"),VD="IHZ":$$^%W1DICT("ORDER2SUPPLIER"),VD="ITK":$$^%W1DICT("TKDOC"),1:$$^%W1DICT("SUPPLINVOICE"))_" "
  .I NUMBER W " "_$$^%W1DICT("NPP")_" &nbsp;"_NUMBER
  .W "</td>",!
  .;W " <td>"
  .;W "&nbsp;"
  .;W " </td>"
  .W "</tr>",!
  ;
  I $G(VD)="IPY" D
  .W "<tr>",!
  .W " <td colspan=""4"" style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""prcofrnumber"">"
  .  W $$^%W1DICT("PAYMENT")_" "_$G(NUMBER)
  .W " </td>",!
  .W "</tr>",!
  .Q
  .W "<tr>"
  .W " <td colspan=""3"" style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""paymntnumber"">"
  .  W $$^%W1DICT("PAYMENTNMB")_" "_$S(NUMBER:NUMBER,1:"")
  .W " </td>",!
  .W " <td>"
  .W "&nbsp;"
  .W " </td>",!
  .W "</tr>",!
  ;
  Q
 ;
 ;
TYPINGTIME ;
  Q
  I $G(NUMBER)>0 D
  .W "<tr>"
  .W " <td>&nbsp;</td><td>&nbsp;</td>"
  .N ORGTIME
  .D GETKOT(SPK,NUMBER,VD)
  .W " <td colspan=""2"">"_$$^%W1DICT("ORIGINALTIME")_" "_ORGTIME_"</td>"
  .W "</tr>",!
  ;
 Q
 ;
 ;
GETKOT(STRING,NUMBER,VD) ;
 ;
 D GLHB(VD,STRING)
 ;
 D ^W4HSBGET(NUMBER,$$CODDOC($G(VD)),STRING)
 S ORGTIME=$G(W4HSB("TYPINGTIME"))
 S SPKNAME=$G(W4HSB("SPKNAME"))
 S SPKKTV=$G(W4HSB("KTV"))
 S SPKTZ=$G(W4HSB("TZ"))
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>"
 Q
 ;
STYLERKV() ;
 Q "color:black;font-weight:bold;font-size:"_$$^W3FSZ(12)
 ;
RKV(VL,VD) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(VD)="H" Q $$H2U^%L1FRM(VL)
 I $G(VD)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
STDEMO ;
  W "<tr><td colspan=""3"">&nbsp;</td>",!
  S DEMO="&nbsp;"
  N MSD S MSD=$$GET^%W1PRM("MSD")
  I $$DEMO^W3PRM(MSD) D
  .W " <td style=""color:red;font-size:"_$$^W3FSZ(18)_""">"
  .W $$^%W1DICT("DRAFT")
  .W "</td>",!
  I '$$DEMO^W3PRM(MSD) W "<td>&nbsp;</TD>",!
  W "</tr>",!
  Q
  ;
CODDOC(VD) ;
  Q VD
  ;
GLHB(VD,SPK)
 S GLHB=$$^W4GLS Q:GLHB=""
 S GLHB=GLHB_"("""_SPK_""","""_VD_""")"
 Q
 ;
SPKNAME(STAM) ;
 Q $$H2U^%L1FRM(SPKNAME)
 ;
SPKKTV(STAM) ;
 Q $$H2U^%L1FRM(SPKKTV)
 ;
SPKTZ(STAM) ;
 Q $$H2U^%L1FRM(SPKTZ)
 ;

W4KOTMLZ
W4KOTMLZ(STAM) ; [ 30.05.24 11:10 ] [ 27.09.16 22:06 ] [ 07.07.16 18:41 ] 
 N MLZR,KOTMLZ S MLZR=$$GET^%W1PRM("MLZR")
 I $$MGR(MLZR) S KOTMLZ=$$^%W1DICT("MANAGER") Q KOTMLZ
 S KOTMLZ=$$SHOW(MLZR,10)
 Q KOTMLZ
 ;
MGR(WAITER) ;
 I '$G(WAITER) S WAITER=$$GET^%W1PRM("MLZR")
 I +$G(@$$^W4PRM@("PSW"))=0 S @$$^W4PRM@("PSW")=99999
 I +WAITER=+$G(@$$^W4PRM@("PSW")) Q 1
 Q 0
 ;
SHOW(MLZR,SZ) ;
 I '$G(SZ) S SZ=10
 N ST S ST="<span style=""color:black;font-size:"_$$^W3FSZ(+SZ)
 I SZ["B" S ST=ST_";font-weight:bold"
 S ST=ST_""">"_$$^W4WAITER_"</span> "_$$H2U^%L1FRM($$^W4NAME(MLZR))
 Q ST
 ;
SG(WAITER) ;
 I $$MGR($G(WAITER)) Q 1
 N DV S DV=$$^W4MYDVN
 I $$DELIS^W4PRM,DV=20!(DV=22) Q 1
 I $G(@$$^W4PRM@("SGYOMMLZ")) Q 1
 Q 0
 
 
 

W4KSHCSH
W4KSHCSH ; [ 14.04.25 14:58 ] [ 21.10.24 10:13 ] [ 30.09.24 09:26 ] 
GET ;
 S KSHCSH=$G(@$$^W4PRM@($$KOD))
 F I="USRNAME","PSW","BSNID","VNDID","URL","VER" D
 .S @I=$G(@$$^W4PRM@($$KOD,I))
 Q
 ;
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@($$KOD)
 S @$$^W4PRM@($$KOD)=KSHCSH
 N I F I="USRNAME","PSW","BSNID","VNDID","URL","VER" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@($$KOD,I)=$G(@I)
 Q RES
 ;
 ;
KOD() ; 
 Q "KSHCSH" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KTMPHZ
W4KTMPHZ ; [ 17.05.17 15:26 ] [ 11.04.17 09:26 ] [ 27.04.16 17:22 ] 
 K @$$^W4TMPANS
 D KILLUR^W4MENU(1)
 K @$$^W4TMPORD
 D KILL^W4TMPHD ; -- NEW
 ;;D CLEARFLAG^W4HZGSH
 Q
 
 
 

W4KVZNET
W4KVZNET ; [ 14.11.24 19:42 ] [ 01.08.23 11:33 ] [ 13.06.23 16:58 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S MSDR=$G(%ARG("MSDR"))
 I 'MSDR W " MSDR parameter is not defined ! " Q
 D MMRKZ^W4MRKG(MSDR)
 ;
 S N="" F I=1:1 S N=$O(MMRKZ(N)) Q:N=""  
 S MAX=I+1
 ;
 S %ARG("MSD")=$O(MMRKZ(""))
 S MSD=%ARG("MSD")
 I MSD="" W " MSDR array is empty ! " Q
 D PUT^%W1PRM("MSDNET",MSD)
 ;
 S W3PRTPC=""
 S PG=0,I=0
 ;
 S LCOD=8,RSIZE=10
 ;
 W "<div align=""center"" >",!
 ;
 I $$PRINT D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 I $$SNDMAIL!$$PRINT G BODY
 ;
 D DIVBUT
 ;
 D DIVSEND
 ;
 W "<br />" D VOSC
 ;
 ;
BODY ;
 S BORD=0
 ;
 W "<div style=""height:80%;overflow-y:scroll"">",!
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border="""_BORD_""" cellspacing=""0"" width=""100%"">" D VOSC
 ;
 W "<thead style=""position:sticky;top:0;z-index:10"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:white;font-size:"_$$^W3FSZ($S($G(MAX)>15:10,1:11))_";font-weight:bold"
 W """ >"
  W "<th width=""5%"">"_$$^%W1DICT("GROUPCODE")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("GROUPNAME")_"</th>"
  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
  .S MRKZ1=MMRKZ(N)
  .W "<th>"
  . W N_" "_$$H2U^%L1FRM(MRKZ1)
  .W "</th>",!
 W "</tr>" D VOSC
 W "</thead>",!
 ;
 S KV="" F  S KV=$O(@$$^W4GL("PARSUG")@(KV)) Q:KV=""  D
 .D STR(KV)
 .W "<tr><td colspan="""_MAX_"""><hr></td></tr>" D VOSC
 ;
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
 ;
SHEM(KV) ;
 I $G(KV)="" Q ""
 Q $G(@$$^W4GL("PARSUG")@(KV))
 ;
KVZNET(STAM) ;
 Q "^|$$^W3MAIN|W4KVZNET"
 ;
 ;
STR(KV) ;
 W "<tr style=""font-size:"_$$^W3FSZ(12)_""" id=""tr"_KV_""" >"
 W " <td id=""cd"_KV_""">"
  W "<input type=""checkbox"" id=""pail"_KV_""" "
    W $S($$PAILALL(KV):"checked=""checked""",1:"")
    W " onClick=""ClearAll('"_KV_"')"" "
  W " />"
  W "&nbsp;"_KV_"&nbsp;"
 W "</td>"
 ;
 W " <td align=""center"">"
  W $$H2U^%L1FRM($$SHEM(KV))
 W "</td>"
 ;
 N N S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .W "<td id=""td"_N_"-"_KV_""" >"
 . W "<input type=""checkbox"" id=""act"_N_"-"_KV_""" "_$S($$PAIL(N,KV):"checked=""checked""",1:"")_" onClick=""ChangeAct(this)"" />"
 .W "</td>",!
 ;
 W "</tr>" D VOSC
 Q
 ;
 ;
CLOSETBL ;
 W "</table>",!
 Q
 ;
OPTION(VL,KV) ;
 Q "<option value="""_VL_""" "_$S(VL=KV&$L(KV):"selected=""selected""",1:"")_" >"
 ;
VOSC ;
 I '$$SNDMAIL W !
 Q
 ;
SNDMAIL(STAM) ;
 I $G(%ARG("SNDMAIL")) Q 1
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 Q 0
 ;
INIT ;
 N N,N1
 K @$$^W4MAIN("TMPMA")
 S MSDR=$G(%ARG("MSDR"))
 I 'MSDR W " MSDR parameter is not defined ! " Q
 D MMRKZ^W4MRKG(MSDR)
 N MSDF S MSDF=$O(MMRKZ("")) Q:MSDF=""
 ;
 N UCI S UCI=$G(^|$$^W3MAIN|UCI(MSDF))
 ;
 N N S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .I $L(UCI) D
 ..S N1="" F  S N1=$O(^|UCI|PARSUG(N1)) Q:N1=""  D
 ...N ACT S ACT=$P($G(^|UCI|W3SUG(N1)),"\") S:ACT="" ACT=1
 ...S $P(@$$^W4MAIN("TMPMA")@(N,N1),"\",2)=ACT
 .
 .M @$$^W4MAIN("TMPMA")@(N)=@$$KVZNET@(N)
 Q
 ;
 ;
SVACT(PRM) ;
 N SNIF,KV,ACT
 S SNIF=$P(PRM,";") I SNIF="" Q "NOSNIF"
 S KV=$P(PRM,";",2) I KV="" Q "NOKV"
 S ACT=$P(PRM,";",3)
 S $P(@$$^W4MAIN("TMPMA")@(SNIF,KV),"\",2)=+ACT
 Q 1
 ;
 ;
SAVE(MSDR) ;
 N N,N1,MH
 D MMRKZ^W4MRKG(MSDR)
 N UCI,MSDF
 S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 ;
 N N,II S N="" F II=1:1 S N=$O(MMRKZ(N)) Q:N=""  D
 .M ^[$$^W3MAIN]W4KVZNETO(N)=@$$KVZNET@(N)
 .S N1="" F  S N1=$O(@$$^W4MAIN("TMPMA")@(N,N1)) Q:N1=""  D
 ..N A,A0 S A=$G(^(N1))
 ..S A0=$G(@$$KVZNET@(N,N1))
 ..I $P(A,"\")'="" S $P(A0,"\")=$P(A,"\")
 ..I $P(A,"\",2)'="" S $P(A0,"\",2)=$P(A,"\",2)
 ..M @$$KVZNET@(N,N1)=@$$^W4MAIN("TMPMA")@(N,N1)
 ..S @$$KVZNET@(N,N1)=A0
 ..;;I II=1,UCI'="",$P(A,"\",2)?1N D
 ...S ^|UCI|W3SUG(N1)=$P(A,"\",2)
 .
 .S N1="" F  S N1=$O(@$$KVZNET@(N,N1)) Q:N1=""  D
 ..I $P($G(@$$KVZNET@(N,N1)),"\",2)="" S $P(^(N1),"\",2)=1
 ;
 K @$$^W4MAIN("TMPMA")
 Q
 ;
 ;
PAIL(SNIF,KV) ;
 N PAIL
 S PAIL=$P($G(@$$KVZNET@(SNIF,KV)),"\",2)
 I PAIL="" S PAIL=1
 Q PAIL
 ;
PAILALL(KV) ;
 N PAIL,P,OK S PAIL=0
 N SNIF S SNIF="" F  S SNIF=$O(MMRKZ(SNIF)) Q:SNIF=""  I SNIF'=99999 D
 .S P=$$PAIL(SNIF,KV) I P S PAIL=1 
 Q PAIL
 ;
DIVBUT ;
 W "<div id=""divbut"" "_$$INV^%W1ALIGN_" >"
 W "JB="_JB,!
 W "<br />" D VOSC
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">" D VOSC
  W "<tr>"
   ;
   ;;W "<td width=""11%"""_$$^%W1ALIGN_" >"
   ;; W $$^%W1DICT("ALLBRANCH")
   ;; W "<input type=""checkbox"" id=""allbr"" checked=""checked"" onClick=""AllBranch()"" >"
   ;;W "</td>" D VOSC
   ;
   W " <td>"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("SAVE"),"Save()","color:blue",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
   W "<td>"
    D ROUNDBUT^%W1JS("ToItems",$$^%W1DICT("TOITEMS"),"ToItems()","color:blue",",,,150")
   W " </td>"
  W "</tr>" D VOSC
 W "</table>",!
 W "</div>" D VOSC
 Q
 ;
SID(STAM) ;
 Q $G(%ARG("SID"))
 ;
 ;
DIVSEND ; 
 Q
 N N,MRKZ1
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>",!
 S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .S MRKZ1=MMRKZ(N)
 .W "<td>"
 . W $$H2U^%L1FRM(MRKZ1)_"&nbsp;"
 . W "<input type=""checkbox"" name=""chkmsd"" id=""chk"_N_""" checked=""checked"" >" 
 .W "</td>"
 .W "<td>&nbsp;</td>"
 ; 
 ;;W "<td width=""18%"">&nbsp;</td>"
 ;
 W "<td>"
  D ROUNDBUT^%W1JS("Send",$$^%W1DICT("SEND"),"Send()","background-color:darkgreen;color:white;font-weight:bold",",,,100")
 W "</td>"
 ;
 W "</tr>"
 W "</table>",!
 Q
 ;
 ;
SENDS(PRM) ;
 ;;S ^AA("W4KVZNET-SENDS","PRM")=PRM
 N MSD,MSDR
 S MSDR=$P(PRM,";")
 I MSDR="" Q "NOMSDR"
 ;
 N DIR S DIR="/tmp/"
 N UCI,MSDF
 S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 I UCI="" Q "UCINOTFOUND"
 
 N I F I=2:1:$L(PRM,";") D 
 .S MSD=$P(PRM,";",I) 
 .S FL=DIR_"w4it4web."_MSDR_"-"_MSD
 .C FL:(DELETE)
 .O FL:(WRITE:NEWVERSION) U FL
 .D WRITEFLGR^W3ANSIT(UCI,MSD) ;
 .C FL
 ;
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KVZREP
W4KVZREP ; [ 12.02.25 16:07 ] [ 07.06.22 08:51 ] [ 12.10.21 11:24 ] 
 N (JB,%ARG)
 D ^%W1ARG
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 I '$G(%ARG("TOTYR")) D TBMAM
 D TMPREP K @TMPREP S DLM=","
 S PRM=$G(%ARG("YY"))_"<>"_$G(%ARG("MM1"))_"<>"_$G(%ARG("MM2"))
 S KOT="GROUPREPORTPERMONTH2YEAR"
 S HD=$$TV^%W1DICT($$^%W1LNG,KOT,PRM)
 S @TMPREP@("HD0",1)="  "_HD_"  "
 I $G(DAYS),DAYS'=1111111 W "<br>" D HDDAYS(DAYS)
 ;
 W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"_$$^%W1DICT(KOT,PRM)_"</span>",!
 ;
 W "<br><br>",!
 S WD=80
 I $$PRINT S WD=100
 S K=0
 ;
 W "<table width="""_WD_"%"" cellpadding=""3px"" border=""1"" cellspacing=""0"" >",!
  W "<tr>"
   I '$$PRINT,$$^W4TABLET'=1 W "<th>"_$$^%W1DICT("GRAPHS")_"</th>"
   W "<th>"_$$^%W1DICT("GROUP")_"</th>"
   S @TMPREP@("HD")=$$TV^%W1DICT($$^%W1LNG,"GROUP")
   F I=MM1:1:MM2 D
   .W "<th>"_$$^%W1DICT("MM"_I)_"</th>"
   .S @TMPREP@("HD")=@TMPREP@("HD")_DLM_$$TV^%W1DICT($$^%W1LNG,"MM"_I)
   W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
   S @TMPREP@("HD")=@TMPREP@("HD")_DLM_$$TV^%W1DICT($$^%W1LNG,"TOTAL")
  W "</tr>",!
  ;
  K SSUM
  S VRM=$$^W4MAIN("VRM")
  S VRMG=$$^W4MAIN("VRMG") K @VRMG@("KVZ")
  S KVZ="" F I=1:1 S KVZ=$O(@VRM@(KVZ)) Q:KVZ=""  D
  .W "<tr "
  . I '(I#2) W " style=""background-color:white"" "
  .W ">"
  . I '$$PRINT,$$^W4TABLET'=1 D
  . .W "<td align=""center"">" D ^W4BUTTON("graph"_KVZ,"GRAPH","GrGraph('"_KVZ_"','"_YY_"','"_MM1_"','"_MM2_"','"_$G(DAYS)_"',this)","font-weight:bold;color:green")
  .
  . W "<td style=""background-color:lightgrey;font-weight:bold"">"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KVZ)))_"</td>"
  . S K=K+1,@TMPREP@(K)=$TR($G(@$$^W4GL("PARSUG")@(KVZ)),DLM," ")
  . F MM=MM1:1:MM2 D
  . .S MM0=$TR($J(MM,2)," ",0)
  . .S SUM=$G(@VRM@(KVZ,"KVZ",MM0,"S"))-$G(@VRM@(KVZ,"KVZ",MM0,"HP"))
  . .S HNH=$G(@VRM@(KVZ,"KVZ",MM0,"HNH"))
  . .S DMS=$G(@VRM@(KVZ,"KVZ",MM0,"DMS"))
  ..S TOT=SUM
  . .I '$$NODMS S TOT=SUM-HNH+DMS
  . .I '$$KVZNOMAM(KVZ),$$LMAM S TOT=$J(TOT*100/(100+$$AHMAM(MM0,YY)),5,5)
  . .N TOTN S TOTN=TOT
  . .S SSUM("MM",MM)=$G(SSUM("MM",MM))+TOT
  . .S SSUM("KVZ",KVZ)=$G(SSUM("KVZ",KVZ))+TOT
  . .W "<td>"_$$RKVN(TOT)_"</td>"
  . .S @VRMG@("KVZ",KVZ,MM0)=TOT
  . .S @TMPREP@(K)=@TMPREP@(K)_DLM_$J(TOT,2,2)
  . W "<td "_$$STYLETOT_" >"_$$RKVN($G(SSUM("KVZ",KVZ)))_"</td>"
  . S @TMPREP@(K)=@TMPREP@(K)_DLM_$J($G(SSUM("KVZ",KVZ)),2,2)
  .W "</tr>",!
  ;
  W "<tr "_$$STYLETOT_" >"
   I '$$PRINT,$$^W4TABLET'=1 D
   .W "<td align=""center"">"
   . D ^W4BUTTON("graphtot","GRAPH","GrGraph('TOT','"_YY_"','"_MM1_"','"_MM2_"','"_$G(DAYS)_"')","font-weight:bold;color:green")
   .W "</td>"
   W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
   S SSUM=0
   F MM=MM1:1:MM2 D
   .S SSUM=SSUM+$G(SSUM("MM",MM))
   .W "<td>"_$$RKVN($G(SSUM("MM",MM)))_"</td>"
   W "<td style=""color:brown;font-size:"_$$^W3FSZ(14)_";font-weight:bold"" >"_$$RKVN(SSUM)_"</td>"
  W "</tr>",! 
  ;
 W "</table>",!
 W "</div>",!
 ;
 D SVEX^W4DEPREP("W4KVZREP")
 Q
 ;
 ;
PREP(MM1,MM2,YY,DAYS,JB)
 N (JB,%ARG,%REM,MM1,MM2,YY,DAYS)
 I $L(YY)=4 S YY=$E(YY,3,4)
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 S MM1=$TR($J(MM1,2)," ",0)
 S MM2=$TR($J(MM2,2)," ",0)
 S D1=$$^%L1DC("01"_MM1_YY,3)
 S D2=$$LM^%L1DC("01"_MM2_YY)
 S PRMONTH=""
 D PRTSUM(D1,D2)
 D PUT^%W1PRM("W4KVZREP",1)
 Q
 ;
INIT ;
 Q
 ;
SELYY ;
 W $$^%W1DICT("CHOICEYEAR")_"&nbsp;"
 W "<select id=""YY"">",!
 N I F I=2011:1:2025 D
 .W "<option "
 .I I=$ZD($H,"YEAR") W "selected=""selected"" "
 .W ">"_I_"</option>",!
 W "</select>",!
 Q
 ;
SELMM(ID,TXT) ;
 W $$^%W1DICT(TXT)_"&nbsp;"
 W "<select id="""_ID_""">",!
 N I F I=1:1:12 D
 .W "<option value="""_I_""" "
 .I I=+$ZD($H,"MM") W "selected=""selected"" "
 .W ">"_$$^%W1DICT("MM"_I)_"</option>",!
 W "</select>",!
 Q
 ;
STYLETOT(SZ) ;
 I $G(SZ)<12 S SZ=12
 Q "style=""font-size:"_$$^W3FSZ(SZ)_";font-weight:bold;background-color:yellow"" "
 ;
HDDAYS(DAYS,COLOR) ;
 D HDDAYS^W4DEPREP(DAYS,$G(COLOR))
 Q
 ;
 ;
PRTSUM(DT1,DT2) ;
 N WHAT S WHAT="KVZ"
 D PRTSUM^W4MAAZAN(DT1,DT2)
 Q
 ;
 N (DT1,DT2,JB,%ARG,%REM,RKZ,DAYS,PRMONTH)
 K @$$^W4MAIN("VRM")
 ;
 F DT=DT1:1:DT2 D
 .I $G(DAYS),'$E(DAYS,$$^%L1DC(DT,8)) Q
 .
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D PRTSUMHZ^W4MAAZAN(DT,HZ,"KVZ")
 Q
 ;
PRINT(STAM) ; 
 Q $G(%ARG("PRINT")) 
 ;
TMPREP ;
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
RKVN(NUM) ; 
 Q $$ZPTN^%L1FRM(NUM) 
 ;
AHMAM(MM,YY) ; 
 S MM=$TR($J(MM,2)," ",0)
 S:$L(YY)=4 YY=$E(3,4) 
 N DT S DT=$$^%L1DC("01"_MM_YY,3)
 Q $$MAMD^W4L(DT)
 ;
KVZNOMAM(KVZ) ; 
 I $G(KVZ)="" Q 0
 N DEP S DEP=$P($G(@$$^W4GL("PARSUG")@(KVZ,1)),"\")
 I DEP="" Q 0
 I $P($G(@$$^W4GL("DEP")@(DEP,1)),"\")=0 Q 1
 Q 0
 ;
LMAM(STAM) ; 
 Q $G(%ARG("LMAM")) 
 ;
TBMAM ; 
 D TBMAM^W4DEPREP
 Q 
 ;
NODMS() ; 
 Q +$G(%ARG("NODMS")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4KVZSND
W4KVZSND ; [ 05.06.19 09:59 ] [ 01.05.18 18:11 ] [ 30.03.18 16:55 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4KVZSND")
 D PUT^%W3DEB("W4KVZSND","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 S SRCH=$G(%ARG("SRCH"))
 ;
 I $G(%ARG("CDKV"))="" S %ARG("CDKV")="ALL"
 I SRCH="" D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 D SORTSUG^W4SPIDK
 W "<br><br>",!
 ;
 W " <table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""70%"">",!
 W "  <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
      W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
 W "   <th width=""10%"">"_$$^%W1DICT("GROUPCODE")_"</th>"
 W "   <th width=""25%"">"_$$^%W1DICT("GROUPNAME")_"</th>"
 ;
 S N="" F  S N=$O(@$$GLMRK@(N)) Q:N=""  D
 .W "<th> "_N_" "_$$H2U^%L1FRM($G(^(N)))_"</th>"
 ;
 W "  </tr>",!
 N N,NN,I
 D GLP
 ;
 N I S I=0
 K @GLP
 ;
 S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 .I $$NOSHOWGR(N) Q
 .;
 .S MRK="" F  S MRK=$O(@$$GLMRK@(MRK)) Q:MRK=""  D
 ..I $G(@$$^W4GL("W4KVZSND")@(N,MRK))=0 S @GLP@(N,MRK)=0 Q
 ..S @GLP@(N,MRK)=1
 ;
 ;
 S GLOBT=$$CRGLOBT^W4SPIDK($$^W4GL("PARSUG"))
 ;
 S N0="",I=0 F  S N0=$O(@GLOBT@(N0)) Q:N0=""  D
 .S N=N0
 .I $G(%ARG("SORT"))>1 S N=$G(@GLOBT@(N0)) Q:N=""
 .I $$NOSHOWGR(N) Q
 .W "<tr id=""tr"_N_""""
 .W " >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(N)))_"&nbsp;</td>"
 .
 .S MRK="" F  S MRK=$O(@$$GLMRK@(MRK)) Q:MRK=""  D
 ..W "<td align=""center"" >"
 .. W "<input type=""checkbox"" id=""g"_N_"m"_MRK_""" "
 ..  W $S($G(@GLP@(N,MRK))'=0:"checked=""checked"" ",1:"")
 ..  W " onClick=""Change('"_N_"','"_MRK_"')"" "
 .. W "/>"
 ..W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 ;;K @$$^W4MAIN("VRMT")
 Q
 ;
 ;
CHANGE(PRM) ;
 N GLP,CD,MRK,VL D GLP
 S CD=$P(PRM,";") I CD="" Q 0
 S MRK=$P(PRM,";",2) I MRK="" Q 0
 S VL=$P(PRM,";",3)
 S @GLP@(CD,MRK)=VL
 Q 1
 ;
SAVEND ;
 N GLP D GLP
 N N,N1
 K @$$^W4GL("W4KVZSND")
 K @$$^W4GL("W4KVZSNI")
 ;
 S N="" F  S N=$O(@GLP@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLP@(N,N1)) Q:N1=""  D
 ..I $G(@GLP@(N,N1))=0 D
 ...S @$$^W4GL("W4KVZSND")@(N,N1)=0
 ...S @$$^W4GL("W4KVZSNI")@(N1,N)=0
 ;
 K @GLP
 Q
 ;
 ;
GLP S GLP=$$^W4MAIN("TMPKVZ")
 Q
 ;
GLMRK(STAM) ;
 Q $$^W4GL("W4MRK")
 ;
NOSHOWGR(GR) ;
 I $G(@$$^W4GL("W3SUG")@(GR))=0 Q 1
 I $G(@$$^W4GL("W3SUG")@(GR))=2 Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4L
W4L ; PARAMETRIM LAKOHOT (PIZZERIA)                       [ 02.08.26 13:50 ] [ 23.07.26 14:36 ] [ 16.04.26 13:31 ] 
SHIVUK(LKH) Q 0
LKH(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $G(LKH)="-" Q ""
 D GL
 I '($$D(LKH,GL)#2) S LKH=$TR(LKH,"-","")
 I '($$D(LKH,GL)#2) Q ""
 N LKH1 S LKH1=$P(@GL@(LKH),"*")
 I '$D(W4CUSTTB) S LKH1=$$^W4NM(LKH1)
 Q LKH1
 ;
D(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH))
 ;
D1(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,1))
 ;
D2(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,2))
 ;
D3(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,3))
 ;
DC(LKH,GL) ;
 S GL=$G(GL)
 I $$D(LKH,GL),$$D1(LKH,GL),$$D2(LKH,GL),$L(LKH)>3 Q 1
 Q 0
 ;
KTV(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,1),"*",5))
 ;
KTV1(LKH,GL) D GL N KTV S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV G KTV11
 I $$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_" "_KTV
KTV11 ;
 I $L($$IR(LKH,GL)) S KTV=$$IR(LKH,GL)_","_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTV2(LKH,GL) D GL N KTV S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV Q KTV
 I $$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_" "_KTV Q KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTVM(LKH,GL) ;
 N KTV D GL
 I $G(LKH)="" Q ""
 I '($$D1(LKH,GL)#2) Q ""
 S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$L($$BAIT(LKH,GL)) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV G KTVM1
 I $L($$BAIT(LKH,GL)) S KTV=$$BAIT(LKH,GL)_" "_KTV
KTVM1 I $$KOMA(LKH,GL) S KTV=$$KOMA(LKH,GL)_" dnew "_KTV
 I $L($$CITY(LKH,GL)) S KTV=$$CITY(LKH,GL)_" , "_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTVMM(LKH,GL) ;
 N KTV D GL S KTV=$$KTVM(LKH,GL) Q:KTV?.P $$MIKUD(LKH,GL)
 I $$MIKUD(LKH,GL) S KTV=$$MIKUD(LKH,GL)_" "_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
CONTACTMAN(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $P($G(@GL@(LKH,1)),"*",21)
 ;
SHLUHA(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $P($G(@GL@(LKH,1)),"*",22)
 ;
CONTACTMAN1(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $P($G(@GL@(LKH,4)),"*",1)
 ;
PRIVATE(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $P($G(@GL@(LKH,4)),"*",6)
 ;
ITRA(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $$HBNOW^W4L(LKH) Q $$CBH^W4KLOST(LKH,+$H)
 Q $P(@GL@(LKH,2),"*",4)
 ;
GDCR(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",3)'>0 Q 9999999
 Q +$P(@GL@(LKH,2),"*",3)
 ;
ISCR(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q $S($G(@$$^W4GL("P1PRM")@("ISCRY")):1,1:0)
 I $P(@GL@(LKH,2),"*",2)="k"!($P(@GL@(LKH,2),"*",2)=1) Q 1
 Q 0
 ;
ISCH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",1)="k"!($P(@GL@(LKH,2),"*",1)=1) Q 1
 Q 0
 ;
IFHBMAIL(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q +$P($G(@GL@(LKH,4)),"*",5)
 ;
CADETS(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",10)
 ;
CADFLT(LKH,GL) ;
 Q $P($$CADETS(LKH,$G(GL)),"^")
 ;
MMCA(LKH,GL) ;
 Q $P($$CADETS(LKH,$G(GL)),"^",2)
 ;
YYCA(LKH,GL) ;
 Q $P($$CADETS(LKH,$G(GL)),"^",3)
 ;
CVV(LKH,GL) ;
 Q $P($$CADETS(LKH,$G(GL)),"^",4)
 ;
TZCA(LKH,GL) ;
 Q $P($$CADETS(LKH,$G(GL)),"^",5)
 ;
DMSH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",1)="k"!($P(@GL@(LKH,2),"*",1)=1) Q 1
 Q 0
 ;
SHOTEF(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",14)
 ;
EMAIL(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $$^W4MSD(LKH) Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 N EM S EM=$$SPA^%L1FRM($P(@GL@(LKH,2),"*",22))
 S EM=$TR(EM,"'","")
 S EM=$TR(EM,"""","")
 Q $$FUNC^%UCASE(EM)
 ;
 ;
EMAIL1(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $$^W4MSD(LKH) Q ""
 D GL
 N EM S EM=$$SPA^%L1FRM($P($G(@GL@(LKH,4)),"*",4))
 S EM=$TR(EM,"'","")
 S EM=$TR(EM,"""","")
 Q EM
 ;
COMP(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $L(LKH)<4 Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",23))
 ;
GDAY(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",24)
 ;
LKMNKD(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,1),"*",23)
 ;
LKMBON(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,1),"*",24)
 ;
BAR(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $L(LKH)>3 Q 0
 D GL
 N SUGL1 S SUGL1=$$SUGL1(LKH,GL)
 Q (SUGL1["xa"!(SUGL1["BAR"))
 ;
MAM(LKH,DT,GL) ;
 S GL=$G(GL)
 I $$NOMAM(LKH,GL) Q 0
 G MAM1
MAMD(DT) ;
MAM1 I '$G(DT) Q $$PMAM
 I $G(@$$^W4GL("P1PRM")@("MAM"))=0 Q 0
 ;
 I DT<$$^%L1DC("15.06.02",3) Q 17
 I DT<$$^%L1DC("01.03.04",3) Q 18
 I DT<$$^%L1DC("01.09.05",3) Q 17
 I DT<$$^%L1DC("01.07.06",3) Q 16.5
 I DT<$$^%L1DC("01.07.09",3) Q 15.5
 I DT<$$^%L1DC("01.01.10",3) Q 16.5
 I DT<$$^%L1DC("01.09.12",3) Q 16
 I DT<$$^%L1DC("02.06.13",3) Q 17
 I DT<$$^%L1DC("01.10.15",3) Q 18
 I DT<$$^%L1DC("01.01.25",3) Q 17
 G MAM21
MAM2(DT) ;
MAM21 I $D(@$$^W4GL("P1MAM")@(DT)) Q @$$^W4GL("P1MAM")@(DT)
 I $O(@$$^W4GL("P1MAM")@(DT))'="" Q $G(@$$^W4GL("P1MAM")@($O(@$$^W4GL("P1MAM")@(DT))))
 Q $$PMAM
 ;
PMAM(STAM) ;
 N MAM S MAM=$G(@$$^W4GL("P1PRM")@("MAM"))
 I MAM="" S MAM=$G(^|$$^W3MAIN|P1PRM("MAM"))
 Q MAM
 ;
NOMAM(LKH,GL) ;
 I '$G(@$$^W4GL("P1PRM")@("MAM")) Q 1
 I $G(LKH)="" Q ""
 I $L(LKH)<4 Q 0
 Q 0
 D GL
 Q $$IR(LKH,GL)["zli`"
 ;
ASM(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",12)="k"!($P(@GL@(LKH,2),"*",12)=1) Q 1
 ;;I $$DELIS^W4PRM,$$LASTMKR^W3ORDDET(LKH)=10 Q 1
 Q 0
 ;
HBNOW(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 I $P($G(@GL@(LKH,3)),"*",5)="k" Q 1
 Q +$P($G(@GL@(LKH,3)),"*",5)
 Q 0
 ;
BIGTM(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 Q +$P($G(@GL@(LKH,3)),"*",12)
 ;
CHKTZ(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 Q +$P($G(@GL@(LKH,3)),"*",13)
 ;
TMBLIMH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 Q +$P($G(@GL@(LKH,3)),"*",14)
 ;
ORDLIST(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 I $P($G(@GL@(LKH,3)),"*",10)="" Q 1
 Q $P($G(@GL@(LKH,3)),"*",10)
 ;
ORDCONT(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 I $P($G(@GL@(LKH,3)),"*",11)="" Q 0
 Q $P($G(@GL@(LKH,3)),"*",11)
 ;
MAZAV(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 N MAZAV S MAZAV=$P(@GL@(LKH,2),"*",18)
 I MAZAV="d" Q 0.5
 I +MAZAV=0.5 Q 0.5
 I MAZAV=0 Q 0
 Q 1
 ;
CLOSED(LKH,GL) ;
 I '$$D(LKH,$G(GL)) Q 0
 I $G(LKH),$G(%REM)["192.168.",$G(@$$^W4GL("W4LKHOUT")@(LKH)) Q 1
 I $$MAZAV(LKH,$G(GL))="" Q 0
 I $$MAZAV(LKH,$G(GL))<1 Q 1
 Q 0
 ;
HALL(LKH) I $G(LKH)="" Q ""
 Q +$G(@$$^W4GL("P1HLDRI")@(LKH))
 ;
PELE(LKH,GL) ;
 I $G(LKH)="" Q ""
 I LKH=$$NMBKSK^W4KIOSKO Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",19))
 ;
PELE1(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,4)),"*",3))
 ;
ROLE(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",6))
 ;
DEP(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",7))
 ;
DMSHNIS(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",9))
 ;
ROLE1(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,4)),"*",2))
 ;
MZM(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q ($P(@GL@(LKH,2),"*",15)="k")
 ;
 ;
DATPTH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",13)
 ;
HESB(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,1),"*",1)
 ;
HNH(LKH,GL) Q:$G(LKH)="" ""  D GL Q:$$SUGL(LKH,GL)="" ""
 N LKHR S LKHR=$$LKHR(LKH)
 I 'LKHR Q $$HN(LKH,GL)
 I $G(@$$^W4GL("P1PRM")@("LKHR"))!'$$HN(LKH,GL) Q $$HN(LKHR,GL)
 Q $$HN(LKH,GL)
 ;
HN(LKH,GL) Q $TR($G(@$$^W4GL("SUGL")@(+$$SUGL(LKH,GL),1))," ","")
 ;
TZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",2))
 ;
BAIT(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",3))
 ;
DIRA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($E($P($G(@GL@(LKH,1)),"*",6),1,7))
 ;
KOMA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",4))
 ;
TEL(LKH,GL) ;
 Q $$TELB(LKH,$G(GL))
 ;
TELB(LKH,GL) Q:$G(LKH)="" ""
 I LKH=$$NMBKSK^W4KIOSKO Q ""
 D GL N TELB
 S TELB=$$SPA^%L1FRM($S($P($G(@GL@(LKH,1)),"*",7):$P($G(@GL@(LKH,1)),"*",7),$$TELA(LKH,GL):$$TELA(LKH,GL),1:$$PELE(LKH,GL)))
 Q $$RPL^%L1FRM(TELB,"CMNT","")
 ;
TELA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",8))
 ;
IHZM(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",8)="k"
 ;
FAX(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",15))
 ;
MODEM(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",19))
 ;
CNISA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 N ST S ST=$P($G(@GL@(LKH,1)),"*",9)
 I $L(ST)>5 S $P(@GL@(LKH,1),"*",9)="",ST=""
 Q ST
 ;
CMNT(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",10))
 ;
CMNTIN(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",12))
 ;
IR(LKH,GL) Q:$G(LKH)="" ""  N IR
 D GL
 S IR=$$CITY(LKH,GL)
 S:IR="" IR=$G(@$$^W4GL("P1PRM")@("IR"))
 Q $$SPA^%L1FRM(IR)
 ;
CITY(LKH,GL) Q:$G(LKH)="" ""  N CITY
 D GL
 S CITY=$P($G(@GL@(LKH,1)),"*",13)
 Q $$SPA^%L1FRM(CITY)
 ;
MIKUD(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",14))
 ;
JOMH(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",17)
 ;
JOMHBZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",20)
 ;
JOMNS(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",21)
 ;
MIKZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",18)
 ;
MIKZ1(LKH,GL) D GL I $$MIKZ(LKH,GL) Q $G(^MIKZ($$MIKZ(LKH)))
 Q ""
 ;
AZOR(LKH,GL) Q:$G(LKH)="" ""  N IR,KTV,BAIT
 D GL
 S IR=$$IR(LKH,GL),KTV=$$KTV(LKH,GL),BAIT=$$BAIT(LKH,GL)
 Q $$AZOR^W3AZR("IS",IR,KTV,BAIT)
 ;
AH(LKH,GL) Q:$G(LKH)="" ""
 D GL N HN
 ;;D PUT^%W3DEB("AH^W4L","LKH=LKH & GL=GL")
 I $L(LKH)>3,$$SUGL(LKH,GL)?1N.N S HN=$$HNH(LKH,GL) Q HN
 N LKHR
 S LKHR=$$LKHR(LKH)
 I $L(LKH)>3,LKHR Q $P($G(@GL@(LKHR,2)),"*",7)
 Q $P($G(@GL@(LKH,2)),"*",7)
 ;
MHKV(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",11)
 Q ""
 ;
TLUSH(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I $P($G(@GL@(LKH,2)),"*",17) Q $P($G(@GL@(LKH,2)),"*",17)
 I $G(@$$^W4GL("P1EZL")@(LKH)) Q $P($G(@GL@(@$$^W4GL("P1EZL")@(LKH),2)),"*",17)
 Q ""
 ;
TRHMDL(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",16)
 Q ""
 ;
SUGL(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",5))
 ;
SUGL1(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I LKH>999 Q:$$SUGL(LKH,GL)="" ""  Q $G(@$$^W4GL("SUGL")@(+$$SUGL(LKH,GL)))
 Q:'$$SUGL(LKH,GL) ""
 Q $G(@$$^W4GL("SUGS")@(+$$SUGL(LKH,GL)))
 ;
SUGS(LKH,GL) D GL N SUGS S SUGS=+$$SUGL(LKH,GL)
 S:'SUGS SUGS=1
 Q SUGS
 ;
CAREMOTE(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $P($G(@GL@(LKH,4)),"*",7)
 ;
SUGOTH(LKH,GL) I $G(LKH)="" Q 0
 I $L(LKH)>3 Q 0
 D GL
 N SUGL1 S SUGL1=$$SUGL1(LKH,GL)
 Q $$^W4OTH(SUGL1)
 ;
INTERES(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,3)),"*",2)
 ;
HAGAA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,3)),"*",1)
 ;
LKHR(LKH) Q:$G(LKH)="" ""
 Q $$SPA^%L1FRM($G(@$$^W4GL("P1EZL")@(LKH)))
 ;
LKHR1(LKH,GL) Q:$G(LKH)="" ""
 D GL
 N LKHR S LKHR=$$LKHR(LKH) I LKHR="" Q ""
 Q $$LKH(LKHR,GL)
 ;
MAINCUST(LKH,GL)
 N LKHR S LKHR=$$LKHR(LKH)
 I LKHR="" Q ""
 Q LKHR_";~;"_$$LKHR1(LKH)
 ;
PSW(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",3))
 ;
PUT(LKH,RKV,PRZ,GL) ;
PUT1
 I $G(GL)="" D GL
 S RKV=$TR(RKV,"*\","X/")
 I RKV="-" Q  ; -- 22/05/11 *** LEV
 I PRZ="LKH" D  Q
 .N FILE,STRING
 .S FILE="^[$$^W3MAIN]LKH",STRING=LKH D KF^%L1SCSV
 .S @GL@(LKH)=RKV S FILE="^[$$^W3MAIN]LKH",STRING=LKH D SF^%L1SCSV
 I PRZ="HESB" S $P(@GL@(LKH,1),"*",1)=RKV Q
 I PRZ="TZ",RKV'="" S $P(@GL@(LKH,1),"*",2)=RKV Q
 I PRZ="KTV" S $P(@GL@(LKH,1),"*",5)=RKV D SF("^[$$^W3MAIN]LKH",LKH,RKV,1) Q
 I PRZ="TELB" S $P(@GL@(LKH,1),"*",7)=RKV D LKHT(RKV,LKH) Q
 I PRZ="TELA" S $P(@GL@(LKH,1),"*",8)=RKV D LKHT(RKV,LKH) Q
 I PRZ="KOMA" S $P(@GL@(LKH,1),"*",4)=RKV Q
 I PRZ="DIRA" S $P(@GL@(LKH,1),"*",6)=RKV Q
 I PRZ="BAIT" S $P(@GL@(LKH,1),"*",3)=RKV D SF("^[$$^W3MAIN]LKH",LKH,$$INV^%L1FRM(RKV),1) Q
 I PRZ="CNISA" S $P(@GL@(LKH,1),"*",9)=RKV Q
 I PRZ="CMNT" S $P(@GL@(LKH,1),"*",10)=RKV Q
 I PRZ="CMNTIN" S $P(@GL@(LKH,1),"*",12)=RKV Q
 I PRZ="IR" S $P(@GL@(LKH,1),"*",13)=RKV Q
 I PRZ="MIKUD" S $P(@GL@(LKH,1),"*",14)=RKV Q
 I PRZ="FAX" S $P(@GL@(LKH,1),"*",15)=RKV D LKHT(RKV,LKH) Q
 I PRZ="JOMH" S $P(@GL@(LKH,1),"*",17)=RKV Q
 I PRZ="CONTACTMAN" S $P(@GL@(LKH,1),"*",21)=RKV Q
 I PRZ="SHLUHA" S $P(@GL@(LKH,1),"*",22)=RKV Q
 I PRZ="LKMNKD" S $P(@GL@(LKH,1),"*",23)=+RKV D  Q
 .N HZ,H,NKD,NKDHZ,BON,HZ,DZ
 .S DZ=$$^W4DZ
 .D PRS^%L1FRM(RKV,"NKD~NKDHZ~BON~HZ~H","~")
 .S @GL@(LKH,"LKMNKD",DZ,+HZ)=NKDHZ_"*"_BON_"*"_H
 ;
 I PRZ="LKMBON" S $P(@GL@(LKH,1),"*",24)=RKV Q
 I PRZ="ISCH" S $P(@GL@(LKH,2),"*",1)=RKV Q
 I PRZ="ISCR" S $P(@GL@(LKH,2),"*",2)=RKV Q
 I PRZ="GDCR" S $P(@GL@(LKH,2),"*",3)=RKV Q
 I PRZ="GDAY" S $P(@GL@(LKH,2),"*",24)=RKV Q
 I PRZ="ITRA" S $P(@GL@(LKH,2),"*",4)=RKV Q
 I PRZ="SUGL" S $P(@GL@(LKH,2),"*",5)=RKV Q
 I PRZ="CADFLT" S $P(@GL@(LKH,2),"*",10)=RKV Q
 I PRZ="ASM" S $P(@GL@(LKH,2),"*",12)=RKV Q
 I PRZ="DATPTH" S $P(@GL@(LKH,2),"*",13)=RKV Q
 I PRZ="SHOTEF" S $P(@GL@(LKH,2),"*",14)=RKV Q
 I PRZ="TRHMDL" S $P(@GL@(LKH,2),"*",16)=RKV Q
 I PRZ="MAZAV" S $P(@GL@(LKH,2),"*",18)=RKV Q
 I PRZ="PELE" S $P(@GL@(LKH,2),"*",19)=RKV D LKHT(RKV,LKH) Q
 I PRZ="PELE1" S $P(@GL@(LKH,4),"*",3)=RKV D LKHT(RKV,LKH) Q
 I PRZ="JOMHBZ" S $P(@GL@(LKH,2),"*",20)=RKV Q
 I PRZ="JOMNS" S $P(@GL@(LKH,2),"*",21)=RKV Q
 I PRZ="EMAIL" S $P(@GL@(LKH,2),"*",22)=$$FUNC^%UCASE(RKV) Q
 I PRZ="EMAIL1" S $P(@GL@(LKH,4),"*",4)=$$FUNC^%UCASE(RKV) Q
 I PRZ="CONTACTMAN1" S $P(@GL@(LKH,4),"*",1)=RKV Q
 I PRZ="ROLE1" S $P(@GL@(LKH,4),"*",2)=RKV Q
 I PRZ="IFHBMAIL" S $P(@GL@(LKH,4),"*",5)=RKV Q
 I PRZ="COMP" S $P(@GL@(LKH,2),"*",23)=RKV Q
 I PRZ="PSW" S $P(@GL@(LKH,3),"*",3)=RKV Q
 I PRZ="HBNOW" S $P(@GL@(LKH,3),"*",5)=RKV Q
 I PRZ="ROLE" S $P(@GL@(LKH,3),"*",6)=RKV Q
 I PRZ="DEP" S $P(@GL@(LKH,3),"*",7)=RKV Q
 I PRZ="DMSHNIS" S $P(@GL@(LKH,3),"*",9)=RKV Q
 I PRZ="ORDLIST" S $P(@GL@(LKH,3),"*",10)=RKV Q
 I PRZ="ORDCONT" S $P(@GL@(LKH,3),"*",11)=RKV Q
 I PRZ="BIGTM" S $P(@GL@(LKH,3),"*",12)=RKV Q
 I PRZ="CHKTZ" S $P(@GL@(LKH,3),"*",13)=RKV Q
 I PRZ="TMBLIMH" S $P(@GL@(LKH,3),"*",14)=RKV Q
 I PRZ="PRIVATE" S $P(@GL@(LKH,4),"*",6)=RKV Q
 I PRZ="CAREMOTE" S $P(@GL@(LKH,4),"*",7)=RKV Q
 Q
 ;
PUT2(LKH,PRZ,GL) ;
 I PRZ["=" N PRZ1,PRZ2,I S PRZ1=PRZ F I=1:1:$L(PRZ1,"<>") D
 .S PRZ2=$P(PRZ1,"<>",I),PRZ=$P(PRZ2,"="),RKV=$P(PRZ2,"=",2,20) I PRZ'?.P D PUT1
 Q
 ;
SF(FILE,STRING,SSS,NRFR) ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  S FILEi
 N IN,IN1,I,JJ
 Q:STRING=""
 Q:'$D(@(FILE_"(STRING)"))  I SSS'="" D
 .D KF(FILE,STRING,SSS,NRFR)
 .F I=1:1:$L(SSS," ") S IN=$P(SSS," ",I) I IN'="" D
 ..S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 ..S @(FILE_"i"_NRFR_"(IN1,STRING)")=""
 Q
KF(FILE,STRING,RFRS,NRFR) ;
 ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  K FILEi
 N IN,IN1,I,JJ Q:STRING=""
 F I=1:1:$L(RFRS," ") S IN=$P(RFRS," ",I) I IN'="" D
 .S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 .Q:IN1=""  K @(FILE_"i"_NRFR_"(IN1,STRING)")
 ;K STRINGOLD
 Q
 ;
LKHT(TEL,LKH) ;
 Q:$G(TEL)=""
 N TEL1 S TEL1=$TR(TEL,"-","") Q:TEL1=""
 S @$$^W4GL("KLLKTH")@(TEL1,LKH)=""
 Q
 ;
GL ;
 D GL^W3L
 Q
 ;
ITRAYOM(LK,DT)
 I $G(LK)=""!($G(DT)="") Q ""
 Q +$G(@$$^W4GL("W4ITRAYOM")@(LK,DT))
 ;
TLMTN(NMB) ;
 I $G(NMB)="" Q 0
 N SUGS1 S SUGS1=$$SUGL1(NMB)
 I SUGS1["dpzn",SUGS1["yelz"!(SUGS1["xaey")!(SUGS1["oetew") Q 1
 Q 0
 ;
PROTECT(LKH) ;
 I $G(LKH)="" Q 0
 N LKH1 S LKH1=$$LKH(LKH)
 I LKH1["qeaiq" Q 1
 I LKH1["SODEXO" Q 1
 I LKH1["qia oz" Q 1
 I LKH1["qiapz" Q 1
 Q 0
 ;
MULTYADR(LKH) ; 
 I '$$MULTYADR^W4PRM Q 0
 I $$GETP^%W1PRM("PWRLNKID")'="" Q 0
 N GL,OK D GL S OK=0
 I $D(@GL@(LKH,"A"))>9 D
 .N IND S IND=$O(@GL@(LKH,"A","")) Q:IND=""
 .I $O(@GL@(LKH,"A",IND))'="" S OK=1 Q
 .N CITY,STREET,HOME,FLAT
 .D PRS^%L1FRM(IND,"CITY\STREET\HOME\FLAT","\")
 .I $$SP(CITY)'=$$SP($$IR^W4L(LKH)) S OK=1 Q
 .I $$SP(STREET)'=$$SP($$KTV^W4L(LKH)) S OK=1 Q
 .I $$SP(HOME)'=$$SP($$BAIT^W4L(LKH)) S OK=1 Q
 .I $$SP(FLAT)'=$$SP($$DIRA^W4L(LKH)) S OK=1 Q
 Q OK 
 ;
SP(TX) ; 
 Q $$SPA^%L1FRM(TX) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4L0
W4L ; PARAMETRIM LAKOHOT (PIZZERIA)                       [ 29.09.15 16:30 ] [ 21.09.15 08:54 ] [ 16.12.14 14:04 ]
SHIVUK(LKH) Q 0
LKH(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $G(LKH)="-" Q ""
 D GL
 I '($$D(LKH,GL)#2) S LKH=$TR(LKH,"-","")
 I '($$D(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH),"*")
 ;
D(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH))
 ;
D1(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,1))
 ;
D2(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,2))
 ;
D3(LKH,GL) I $G(LKH)="" Q 0
 D GL
 Q $D(@GL@(LKH,3))
 ;
DC(LKH,GL) ;
 S GL=$G(GL)
 I $$D(LKH,GL),$$D1(LKH,GL),$$D2(LKH,GL),$L(LKH)>3 Q 1
 Q 0
 ;
KTV(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,1),"*",5))
 ;
KTV1(LKH,GL) D GL N KTV S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV G KTV11
 I $$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_" "_KTV
KTV11 ;
 I $L($$IR(LKH,GL)) S KTV=$$IR(LKH,GL)_","_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTV2(LKH,GL) D GL N KTV S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV Q KTV
 I $$BAIT(LKH,GL) S KTV=$$BAIT(LKH,GL)_" "_KTV Q KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTVM(LKH,GL) ;
 N KTV D GL
 I $G(LKH)="" Q ""
 I '($$D1(LKH,GL)#2) Q ""
 S KTV=$$KTV(LKH,GL)
 I $$DIRA(LKH,GL),$L($$BAIT(LKH,GL)) S KTV=$$BAIT(LKH,GL)_"/"_$$DIRA(LKH,GL)_" "_KTV G KTVM1
 I $L($$BAIT(LKH,GL)) S KTV=$$BAIT(LKH,GL)_" "_KTV
KTVM1 I $$KOMA(LKH,GL) S KTV=$$KOMA(LKH,GL)_" dnew "_KTV
 I $L($$CITY(LKH,GL)) S KTV=$$CITY(LKH,GL)_" , "_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTVMM(LKH,GL) ;
 N KTV D GL S KTV=$$KTVM(LKH,GL) Q:KTV?.P $$MIKUD(LKH,GL)
 I $$MIKUD(LKH,GL) S KTV=$$MIKUD(LKH,GL)_" "_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
CONTACTMAN(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $P($G(@GL@(LKH,1)),"*",21)
 ;
SHLUHA(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $P($G(@GL@(LKH,1)),"*",22)
 ;
CONTACTMAN1(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $P($G(@GL@(LKH,4)),"*",1)
 ;
ITRA(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",4)
 ;
GDCR(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",3)'>0 Q 9999999
 Q +$P(@GL@(LKH,2),"*",3)
 ;
ISCR(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q $S($G(@$$^W4GL("P1PRM")@("ISCRY")):1,1:0)
 I $P(@GL@(LKH,2),"*",2)="k"!($P(@GL@(LKH,2),"*",2)=1) Q 1
 Q 0
 ;
ISCH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",1)="k"!($P(@GL@(LKH,2),"*",1)=1) Q 1
 Q 0
 ;
CADFLT(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",10)
 ;
DMSH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",1)="k"!($P(@GL@(LKH,2),"*",1)=1) Q 1
 Q 0
 ;
SHOTEF(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",14)
 ;
EMAIL(LKH,GL) ;
 I $G(LKH)="" Q ""
 ;;I $L(LKH)<4 Q ""
 D GL
 ;
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",22))
 ;
EMAIL1(LKH,GL) ;
 I $G(LKH)="" Q ""
 ;;I $L(LKH)<4 Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,4)),"*",4))
 ;
COMP(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $L(LKH)<4 Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",23))
 ;
GDAY(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",24)
 ;
BAR(LKH,GL) ;
 I $G(LKH)="" Q ""
 I $L(LKH)>3 Q 0
 D GL
 N SUGL1 S SUGL1=$$SUGL1(LKH,GL)
 Q (SUGL1["xa"!(SUGL1["BAR"))
 ;
MAM(LKH,DT,GL) ;
 S GL=$G(GL)
 I $$NOMAM(LKH,GL) Q 0
 G MAM1
MAMD(DT) ;
MAM1 I '$G(DT) Q @$$^W4GL("P1PRM")@("MAM")
 I DT<$$^%L1DC("15.06.02",3) Q 17
 I DT<$$^%L1DC("01.03.04",3) Q 18
 I DT<$$^%L1DC("01.09.05",3) Q 17
 I DT<$$^%L1DC("01.07.06",3) Q 16.5
 I DT<$$^%L1DC("01.07.09",3) Q 15.5
 I DT<$$^%L1DC("01.01.10",3) Q 16.5
 I DT<$$^%L1DC("01.09.12",3) Q 16
 I DT<$$^%L1DC("02.06.13",3) Q 17
 I DT<$$^%L1DC("01.10.15",3) Q 18
 G MAM21
MAM2(DT) ;
MAM21 I $D(@$$^W4GL("P1MAM")@(DT)) Q @$$^W4GL("P1MAM")@(DT)
 I $O(@$$^W4GL("P1MAM")@(DT))'="" Q $G(@$$^W4GL("P1MAM")@($O(@$$^W4GL("P1MAM")@(DT))))
 Q $G(@$$^W4GL("P1PRM")@("MAM"))
 ;
NOMAM(LKH,GL) ;
 I '$G(@$$^W4GL("P1PRM")@("MAM")) Q 1
 I $G(LKH)="" Q ""
 I $L(LKH)<4 Q 0
 D GL
 Q $$IR(LKH,GL)["zli`"
 ;
ASM(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 I $P(@GL@(LKH,2),"*",12)="k"!($P(@GL@(LKH,2),"*",12)=1) Q 1
 Q 0
 ;
HBNOW(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 I $P($G(@GL@(LKH,3)),"*",5)="k"!($P($G(@GL@(LKH,3)),"*",5)=1) Q 1
 Q 0
 ;
ORDLIST(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 I $P($G(@GL@(LKH,3)),"*",10)="" Q 1
 Q $P($G(@GL@(LKH,3)),"*",10)
 ;
ORDCONT(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D3(LKH,GL)#2) Q ""
 I $P($G(@GL@(LKH,3)),"*",11)="" Q 0
 Q $P($G(@GL@(LKH,3)),"*",11)
 ;
MAZAV(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 N MAZAV S MAZAV=$P(@GL@(LKH,2),"*",18)
 I MAZAV="d" Q 0.5
 I +MAZAV=0.5 Q 0.5
 I MAZAV=0 Q 0
 Q 1
 ;
CLOSED(LKH,GL) ;
 I '$$D(LKH,$G(GL)) Q 0
 I $$MAZAV(LKH,$G(GL))="" Q 0
 I $$MAZAV(LKH,$G(GL))<1 Q 1
 Q 0
 ;
HALL(LKH) I $G(LKH)="" Q ""
 Q +$G(@$$^W4GL("P1HLDRI")@(LKH))
 ;
PELE(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",19))
 ;
PELE1(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,4)),"*",3))
 ;
ROLE(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",6))
 ;
DEP(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",7))
 ;
DMSHNIS(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",9))
 ;
ROLE1(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,4)),"*",2))
 ;
MZM(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q ($P(@GL@(LKH,2),"*",15)="k")
 ;
 ;
DATPTH(LKH,GL) ;
 I $G(LKH)="" Q ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,2),"*",13)
 ;
HESB(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I '($$D1(LKH,GL)#2) Q ""
 Q $P(@GL@(LKH,1),"*",1)
 ;
HNH(LKH,GL) Q:$G(LKH)="" ""  D GL Q:$$SUGL(LKH,GL)="" ""
 N LKHR S LKHR=$$LKHR(LKH)
 I '$$^W4ISCDLK(LKHR) Q $$HN(LKH,GL)
 I $G(@$$^W4GL("P1PRM")@("LKHR"))!'$$HN(LKH,GL) Q $$HN(LKHR,GL)
 Q $$HN(LKH,GL)
 ;
HN(LKH,GL) Q $TR($G(@$$^W4GL("SUGL")@(+$$SUGL(LKH,GL),1))," ","")
 ;
TZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",2))
 ;
BAIT(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",3))
 ;
DIRA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",6))
 ;
KOMA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",4))
 ;
TEL(LKH,GL) ;
 Q $$TELB(LKH,$G(GL))
 ;
TELB(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($S($P($G(@GL@(LKH,1)),"*",7):$P($G(@GL@(LKH,1)),"*",7),$$TELA(LKH,GL):$$TELA(LKH,GL),1:$$PELE(LKH,GL)))
 ;
TELA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",8))
 ;
IHZM(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",8)="k"
 ;
FAX(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",15))
 ;
MODEM(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",19))
 ;
CNISA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",9)
 ;
CMNT(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",10))
 ;
IR(LKH,GL) Q:$G(LKH)="" ""  N IR
 D GL
 S IR=$$CITY(LKH,GL)
 S:IR="" IR=$G(@$$^W4GL("P1PRM")@("IR"))
 Q $$SPA^%L1FRM(IR)
 ;
CITY(LKH,GL) Q:$G(LKH)="" ""  N CITY
 D GL
 S CITY=$P($G(@GL@(LKH,1)),"*",13)
 Q $$SPA^%L1FRM(CITY)
 ;
MIKUD(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,1)),"*",14))
 ;
JOMH(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",17)
 ;
JOMHBZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",20)
 ;
JOMNS(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",21)
 ;
MIKZ(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,1)),"*",18)
 ;
MIKZ1(LKH,GL) D GL I $$MIKZ(LKH,GL) Q $G(^MIKZ($$MIKZ(LKH)))
 Q ""
 ;
AZOR(LKH,GL) Q:$G(LKH)="" ""  N IR,KTV,BAIT
 D GL
 S IR=$$IR(LKH,GL),KTV=$$KTV(LKH,GL),BAIT=$$BAIT(LKH,GL)
 Q $$AZOR^W4HZGT(LKH)
 ;
AH(LKH,GL) Q:$G(LKH)="" ""
 D GL N HN
 ;;D PUT^%W3DEB("AH^W4L","LKH=LKH & GL=GL")
 I $L(LKH)>3,$$SUGL(LKH,GL) S HN=$$HNH(LKH,GL) Q HN
 N LKHR
 S LKHR=$$LKHR(LKH)
 I $L(LKH)>3,LKHR Q $P($G(@GL@(LKHR,2)),"*",7)
 Q $P($G(@GL@(LKH,2)),"*",7)
 ;
MHKV(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",11)
 Q ""
 ;
TLUSH(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I $P($G(@GL@(LKH,2)),"*",17) Q $P($G(@GL@(LKH,2)),"*",17)
 I $G(@$$^W4GL("P1EZL")@(LKH)) Q $P($G(@GL@(@$$^W4GL("P1EZL")@(LKH),2)),"*",17)
 Q ""
 ;
TRHMDL(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,2)),"*",16)
 Q ""
 ;
SUGL(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I '($$D2(LKH,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(LKH,2),"*",5))
 ;
SUGL1(LKH,GL) Q:$G(LKH)="" ""
 D GL
 I LKH>999 Q:'$$SUGL(LKH,GL) ""  Q $G(@$$^W4GL("SUGL")@(+$$SUGL(LKH,GL)))
 Q:'$$SUGL(LKH,GL) ""
 Q $G(@$$^W4GL("SUGS")@(+$$SUGL(LKH,GL)))
 ;
SUGS(LKH,GL) D GL N SUGS S SUGS=+$$SUGL(LKH,GL)
 S:'SUGS SUGS=1
 Q SUGS
 ;
SUGOTH(LKH,GL) I $G(LKH)="" Q 0
 I $L(LKH)>3 Q 0
 D GL
 N SUGL1 S SUGL1=$$SUGL1(LKH,GL)
 Q $$^W4OTH(SUGL1)
 ;
INTERES(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,3)),"*",2)
 ;
HAGAA(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $P($G(@GL@(LKH,3)),"*",1)
 ;
LKHR(LKH) Q:$G(LKH)="" ""
 Q $$SPA^%L1FRM($G(@$$^W4GL("P1EZL")@(LKH)))
 ;
LKHR1(LKH,GL) Q:$G(LKH)="" ""
 D GL
 N LKHR S LKHR=$$LKHR(LKH) I LKHR="" Q ""
 Q $$LKH(LKHR,GL)
 ;
MAINCUST(LKH,GL)
 N LKHR S LKHR=$$LKHR(LKH)
 I LKHR="" Q ""
 Q LKHR_";~;"_$$LKHR1(LKH)
 ;
PSW(LKH,GL) Q:$G(LKH)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(LKH,3)),"*",3))
 ;
PUT(LKH,RKV,PRZ,GL) ;
PUT1
 I $G(GL)="" D GL
 S RKV=$TR(RKV,"*\","X/")
 I RKV="-" Q  ; -- 22/05/11 *** LEV
 I PRZ="LKH" D  Q
 .N FILE,STRING
 .S FILE="^[$$^W3MAIN]LKH",STRING=LKH D KF^%L1SCSV
 .S @GL@(LKH)=RKV S FILE="^[$$^W3MAIN]LKH",STRING=LKH D SF^%L1SCSV
 I PRZ="HESB" S $P(@GL@(LKH,1),"*",1)=RKV Q
 I PRZ="TZ" S $P(@GL@(LKH,1),"*",2)=RKV Q
 I PRZ="KTV" S $P(@GL@(LKH,1),"*",5)=RKV D SF("^[$$^W3MAIN]LKH",LKH,RKV,1) Q
 I PRZ="TELB" S $P(@GL@(LKH,1),"*",7)=RKV D LKHT(RKV,LKH) Q
 I PRZ="TELA" S $P(@GL@(LKH,1),"*",8)=RKV D LKHT(RKV,LKH) Q
 I PRZ="KOMA" S $P(@GL@(LKH,1),"*",4)=RKV Q
 I PRZ="DIRA" S $P(@GL@(LKH,1),"*",6)=RKV Q
 I PRZ="BAIT" S $P(@GL@(LKH,1),"*",3)=RKV D SF("^[$$^W3MAIN]LKH",LKH,$$INV^%L1FRM(RKV),1) Q
 I PRZ="CNISA" S $P(@GL@(LKH,1),"*",9)=RKV Q
 I PRZ="CMNT" S $P(@GL@(LKH,1),"*",10)=RKV Q
 I PRZ="IR" S $P(@GL@(LKH,1),"*",13)=RKV Q
 I PRZ="MIKUD" S $P(@GL@(LKH,1),"*",14)=RKV Q
 I PRZ="FAX" S $P(@GL@(LKH,1),"*",15)=RKV D LKHT(RKV,LKH) Q
 I PRZ="JOMH" S $P(@GL@(LKH,1),"*",17)=RKV Q
 I PRZ="CONTACTMAN" S $P(@GL@(LKH,1),"*",21)=RKV Q
 I PRZ="SHLUHA" S $P(@GL@(LKH,1),"*",22)=RKV Q
 I PRZ="ISCH" S $P(@GL@(LKH,2),"*",1)=RKV Q
 I PRZ="ISCR" S $P(@GL@(LKH,2),"*",2)=RKV Q
 I PRZ="GDCR" S $P(@GL@(LKH,2),"*",3)=RKV Q
 I PRZ="GDAY" S $P(@GL@(LKH,2),"*",24)=RKV Q
 I PRZ="ITRA" S $P(@GL@(LKH,2),"*",4)=RKV Q
 I PRZ="SUGL" S $P(@GL@(LKH,2),"*",5)=RKV Q
 I PRZ="CADFLT" S $P(@GL@(LKH,2),"*",10)=RKV Q
 I PRZ="ASM" S $P(@GL@(LKH,2),"*",12)=RKV Q
 I PRZ="DATPTH" S $P(@GL@(LKH,2),"*",13)=RKV Q
 I PRZ="SHOTEF" S $P(@GL@(LKH,2),"*",14)=RKV Q
 I PRZ="TRHMDL" S $P(@GL@(LKH,2),"*",16)=RKV Q
 I PRZ="MAZAV" S $P(@GL@(LKH,2),"*",18)=RKV Q
 I PRZ="PELE" S $P(@GL@(LKH,2),"*",19)=RKV D LKHT(RKV,LKH) Q
 I PRZ="PELE1" S $P(@GL@(LKH,4),"*",3)=RKV D LKHT(RKV,LKH) Q
 I PRZ="JOMHBZ" S $P(@GL@(LKH,2),"*",20)=RKV Q
 I PRZ="JOMNS" S $P(@GL@(LKH,2),"*",21)=RKV Q
 I PRZ="EMAIL" S $P(@GL@(LKH,2),"*",22)=$$FUNC^%UCASE(RKV) Q
 I PRZ="EMAIL1" S $P(@GL@(LKH,4),"*",4)=$$FUNC^%UCASE(RKV) Q
 I PRZ="COMP" S $P(@GL@(LKH,2),"*",23)=RKV Q
 I PRZ="PSW" S $P(@GL@(LKH,3),"*",3)=RKV Q
 I PRZ="HBNOW" S $P(@GL@(LKH,3),"*",5)=RKV Q
 I PRZ="ROLE" S $P(@GL@(LKH,3),"*",6)=RKV Q
 I PRZ="DEP" S $P(@GL@(LKH,3),"*",7)=RKV Q
 I PRZ="DMSHNIS" S $P(@GL@(LKH,3),"*",9)=RKV Q
 I PRZ="ORDLIST" S $P(@GL@(LKH,3),"*",10)=RKV Q
 I PRZ="ORDCONT" S $P(@GL@(LKH,3),"*",11)=RKV Q
 I PRZ="CONTACTMAN1" S $P(@GL@(LKH,4),"*",1)=RKV Q
 I PRZ="ROLE1" S $P(@GL@(LKH,4),"*",2)=RKV Q
 Q
PUT2(LKH,PRZ,GL) ;
 I PRZ["=" N PRZ1,PRZ2,I S PRZ1=PRZ F I=1:1:$L(PRZ1,"<>") D
 .S PRZ2=$P(PRZ1,"<>",I),PRZ=$P(PRZ2,"="),RKV=$P(PRZ2,"=",2) I PRZ'?.P D PUT1
 Q
SF(FILE,STRING,SSS,NRFR) ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  S FILEi
 N IN,IN1,I,JJ
 Q:STRING=""
 Q:'$D(@(FILE_"(STRING)"))  I SSS'="" D
 .D KF(FILE,STRING,SSS,NRFR)
 .F I=1:1:$L(SSS," ") S IN=$P(SSS," ",I) I IN'="" D
 ..S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 ..S @(FILE_"i"_NRFR_"(IN1,STRING)")=""
 Q
KF(FILE,STRING,RFRS,NRFR) ;
 ;--- INPUT: FILE,STRING,RZD
 ;---- OUTPUT:  K FILEi
 N IN,IN1,I,JJ Q:STRING=""
 F I=1:1:$L(RFRS," ") S IN=$P(RFRS," ",I) I IN'="" D
 .S IN1="" F JJ=1:1:$L(IN) S IN1=$E(IN,JJ)_IN1
 .Q:IN1=""  K @(FILE_"i"_NRFR_"(IN1,STRING)")
 ;K STRINGOLD
 Q
 ;
LKHT(TEL,LKH) ;
 Q:$G(TEL)=""
 S @$$^W4GL("KLLKTH")@(TEL,LKH)=""
 Q
 ;
GL ;
 D GL^W3L
 Q
 ;
ITRAYOM(LK,DT)
 I $G(LK)=""!($G(DT)="") Q ""
 Q +$G(@$$^W4GL("W4ITRAYOM")@(LK,DT))

W4LASTLK
W4LASTLK(STAM) ; [ 26.05.22 08:20 ] [ 24.05.22 15:20 ] [ 05.01.17 08:58 ] 
 N (JB,%ARG)
 Q $$GETP^%W1PRM("LASTLK")
 ;
 S DZ=$$^W4DZ,OK=0
 S N="" F  S N=$O(@$$^W4REF@(DZ,N),-1) Q:N=""  I N D  Q:OK
 .I '$$HZM^W4MSL(N) Q
 .S LJ=$O(@$$^W4ORD@(N,"JB",""),-1) Q:'LJ
 .S POS=$P($G(@$$^W4ORD@(N,"JB",LJ)),"\",2)
 .I POS=$$^W4MYDVN S OK=1
 I 'OK Q "<PUSTO>" 
 Q $$NMB^W4HZMST(N)
 
 
 
 

W4LBLCHK
W4LBLCHK(IDL,IDC,CHK,RZ) ; [ 16.01.23 18:42 ] [ 18.11.21 05:45 ] [ 17.11.21 13:55 ] 
 W "<input type=""checkbox"" id="""_IDC_""" style=""display:none"" "
 I $G(CHK) W "checked=""checked"" "
 W ">"
 I '$G(RZ) S RZ=30
 W "<label id ="""_IDL_""" for="""_IDC_""" onClick=""ClickLabelChk('"_IDL_"','"_IDC_"','"_RZ_"')"""">"
  I '$G(CHK) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
  I $G(CHK) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
 W "</label>"
 Q
 
 
 
 
 

W4LBLRAD
W4LBLRAD(IDL,IDC,CHK,RZ,NM) ; [ 14.09.25 10:40 ] [ 07.09.25 11:11 ] [ 26.11.21 05:35 ] 
 I $G(NM)="" S NM="lblrad"
 W "<input type=""radio"" name="""_NM_""" id="""_IDC_""" style=""display:none"" checked="""" >"
 I '$G(RZ) S RZ=30
 W "<label id ="""_IDL_""" for="""_IDC_""" onClick=""ClickLabelRadio('"_IDL_"','"_IDC_"','"_RZ_"')"" >"
  I '$G(CHK) W "<img src=""w4radn.png"" height="""_RZ_""" width="""_RZ_"px"">"
  I $G(CHK) W "<img src=""w4radc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
 W "</label>"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LCBCR
W4LCBCR ; [ 29.01.26 12:43 ] [ 27.11.24 12:51 ] [ 26.11.24 12:49 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S (STRING,LKH)=$$LK^W4LHB($G(%ARG("LKH")))
 ;
 D PUT^%W3DEB("W4LCBCR","ARG=[%ARG")
 ;
 I $$^W4NOBACK S %ARG("SHOW")=1
 ;
 S CODDOC=$$CODDOC($$NOM)
 S NOM=+$$NOM
 I NOM,$L(CODDOC) S (STRING,LKH)=$$LK^W4STRING(CODDOC,NOM)
 ;
 D ^W4MDPPC
 I $G(%ARG("DEL")) D PUT^%W1PRM("MKRYD",NOM_"CB")
 ;
 I NOM,$$HMK(NOM),$G(PRINT),$$PRINT,$G(%ARG("DEL")) D  Q  ; -- BITUL LE MADP KUPA
 .K %ARG("PRINT")
 .D PUT^%W1PRM("MKRYD","DELCB")
 .S A=$$^W4PCCB(NOM)
 ;
 D GLCBHB^W4CBHB
 ;
 D KOTCB(LKH)
 ;
 D DAF1
 ;
 I '$$HMK($$NOM) D
 .W "<br><br>",!
 .I $D(@GLCBHB@(NOM))>9 D
 ..W "<div dir="""_$$^%W1DIR_""" style=""font-weight:bold;"_$$FONTFM^W3CSS_""" >"
 ..W $$^%W1DICT("PAIDINVOICES")_" : "
 ..N N S N="" F  S N=$O(@GLCBHB@(NOM,N)) Q:N=""  D
 ...W N I $O(@GLCBHB@(NOM,N))'="" W " , "
 ..W "</div>",!
 .
 .I $$PRINT D
 ..W "<br><br><br>",!
 ..W "<div id=""divsign"" >"
 ..W "<table dir="""_$$^%W1DIR_""">"
 .. W "<tr>"
 ..  W "<td width=""16%"">&nbsp; </td>",!
 ..  W "<td>"_$$^%W1DICT("SIGNATURE")_"&nbsp;&nbsp;________________</td>",!
 ..  W "<td width=""54%"">&nbsp; </td>",!
 .. W "</tr>",!
 ..W "</table>"
 ..W "</div>",!
 ;
 I NOM,$$PRINT,'$$HMK($$NOM),$D(@GLCBHB@(NOM))>9 D
 .I $G(@$$^W4PRM@("NOPCCBHB")) Q
 .W "<p style=""page-break-before:always"">",!
 .D ^W4CBHB(LKH,NOM,1)
 ;
 W "<br/>"
 ;
 I '$$PRINT D DIVBUT
 ;
 Q
 ;
 ;
KOTCB(LKH) ;
  N DAT I '$$NOM S DAT=$$NEWDAT
  ;
  I $$HMK($$NOM) D  G EKCB
  .W "<br>",!
  .I '$$PRINT,'$$NOM D
  ..N ITRA
  ..W "<div align=""center"">",!
  .. W "<table dir="""_$$^%W1DIR_""" border=""0"" style=""font-size:"_$$^W3FSZ(16)_";font-weight:bold"">",!
  ..  W "<tr>"
  ..   W "<td>"
  ..    W $$^%W1DICT("TOPAY")_" : "_$J($$TOPAY($$NOM),2,2)
  ..   W "</td>",!
  ..   W "<td>&nbsp;</td>"
  ..   W "<td>"
  ..    W $$^%W1DICT("PAID")_" : <span id=""idpaid"">"_$J($$PAID,2,2)_"</span>",!
  ..   W "</td>",!
  ..   W "<td>&nbsp;</td>"
  ..   S ITRA=$J($$TOPAY($$NOM)-$$PAID,2,2)
  ..   I ITRA'<0 D
  ...   W "<td>"
  ...    W $$^%W1DICT("ITRA")_" : <span id=""iditra"" style=""color:red"">"_$J($$TOPAY($$NOM)-$$PAID,2,2)_"</span>",!
  ...   W "</td>",!
  ..   I ITRA<0 D
  ...   W "<td>"
  ...    W $$^%W1DICT("ODEF")_" : <span id=""idodef"" style=""color:red"">"_$J(-ITRA,2,2)_"</span>",!
  ...   W "</td>",!
  ..  W "</tr>",!
  .. W "</table>",!
  ..W "</div>",!
  ..W "<br><br>",!
  ;
  I $$NOM S DAT=$$^%L1DC($$DAT($$NOM),1)
  ;
  D ^W4KOTHSB($$NOM,LKH,DAT,"CB")
EKCB Q
  ;
TD W "<td width=""30%"">"
 Q
 ;
 ;
DAF1 ;
 N (JB,%ARG,LKH,DAT,CMNT,BFTAX,AFTAX,SHUM,LMAM)
 S STRING=LKH
 D TMPCB
 S NOM=$$NOM
 ;
 I '$$PRINT,'NOM D
 .W "<table width=""96%"" id=""divchkdet"" dir="""_$$^%W1DIR_""">",!
 . W "<tr>"
 . W "<td width=""15%"">"
 .  N HOV S HOV=$J($$CBH^W4KLOST(LKH,+$H),2,2)
 .  W $$^%W1DICT("HOVHBC")
 . W "</td>"
 . W "<td dir=""LTR"" "_$$^%W1ALIGN_" style=""font-weight:bold;font-size:"_$$^W3FSZ(12)_$S(HOV<0:";color:red",1:"")_""">"
 .  W HOV
 . W "</td>"
 . W "<td width=""10%"">&nbsp;</td>",!
 . W "<td>"
 . W $$^%W1DICT("MAXCHECKSNUMBER")
 . W " <select id=""colst"" onChange=""ChangeColst()"" >",!
 . N I F I=3:1:36 D
 .. W "  <option "
 .. I I=+$G(%ARG("COLST")) W " selected=""selected"" "
 .. W "  >"_I_"</option>",!
 . W " </select>",!
 . W " </td>"
 . N CHECKED
 . S CHECKED=""
 . I $$CHKDET S CHECKED=" checked=""checked"" "
 . W "<td>&nbsp;</td>"
 . W "<td>"
 .  W $$^%W1DICT("CHECKCHECKDETAILS")_" <input type=""checkbox"" id=""chkdet"" "_CHECKED_" onClick=""ChangeCheckCheck()"" >"
 . W "</td>"
 . W "<td>"
 . N CHKTZ
 . S CHKTZ=""
 . I $$GET^%W1PRM("CHKTZ") S CHKTZ=" checked=""checked"" "
 .  W $$^%W1DICT("CHECKID")_" <input type=""checkbox"" id=""chktz"" "_CHKTZ_" onClick=""ChangeCheckTz()"" >"
 . W "</td>"
 . W "</tr>",!
 .W "</table>",!
 ;
 W "<br>"
 W "<table id=""TblRcpBd"" dir="""_$$^%W1DIR_""" width=""96%"" "
  I '$G(NOM) W "border=""1"" cellspacing=""0"" "
  I $G(NOM) W "border=""1"" cellspacing=""3"" "
  W ">",!
  W "<tr>",!
   W "<th>"_$$^%W1DICT("SUM")_"</th>",!
   W "<th>"_$$^%W1DICT("BANK")_"</th>",!
   W "<th>"_$$^%W1DICT("SNIF")_"</th>",!
   W "<th>"_$$^%W1DICT("TZ")_"</th>",!
   W "<th>"_$$^%W1DICT("ACCOUNT")_"</th>",!
   W "<th>"_$$^%W1DICT("CHECK")_"</th>",!
   W "<th>"_$$^%W1DICT("PRAON")_"</th>",!
  W "</tr>",!
  ;
  D COLST
  S SUMCH=0
  ;
  I '$$NOM D  ;-- NEW
  .F I=1:1:COLST D
  ..S SUMCH=SUMCH+$$SUMT(I)
  ..W "<tr>",!
  ..W "<td dir=""LTR"" "_$$^%W1ALIGN_"><input type=""text"" size=""10"" id=""sum"_I_""" maxlength=""10"" onClick=""SvSt('"_I_"'); FocSel(this)"" onKeyUp=""ChangeSum('"_I_"')"" onChange=""ChangeValue(this)"" value="""_$$SUMT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""2"" id=""bank"_I_""" maxlength=""2"" onFocus=""ShowAccounts(this,'"_I_"')"" value="""_$$BANKT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""5"" id=""snif"_I_""" maxlength=""5"" onClick=""FocSel(this)"" value="""_$$SNIFT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""9"" id=""tz"_I_""" maxlength=""9"" onClick=""SetTz('"_I_"');FocSel(this)"" value="""_$$TZT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""10"" id=""hesh"_I_""" maxlength=""10"" onClick=""FocSel(this)"" value="""_$$HESHT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""10"" id=""chk"_I_""" maxlength=""10"" onClick=""FocSel(this)"" value="""_$$CHKT(I)_"""></td>",!
  ..W "<td dir=""LTR"" align=""center"">" S %W1DAT("NODAY")=1 D ^%W1DAT("DATPR"_I,$$DATPRT(I)) W "</td>",!
  ..W "</tr>",!
  ;
  I $$NOM D
  .I $$PRINT S $P(@$$GLCB(NOM),"\",5)=$P($G(@$$GLCB(NOM)),"\",5)+1
  .F I=1:1 Q:'$D(@$$GLCB(NOM)@(I))  D
  ..W "<tr>",!
  ..W " <td "_$$BORDER_" dir=""LTR"" "_$$^%W1ALIGN_" >"_$$RKV($$SUM(NOM,I),"N")_"&nbsp;&nbsp;&nbsp;</td>",! S SUMCH=SUMCH+$$SUM(NOM,I)
  ..W " <td "_$$BORDER_" >"_$$RKV($$BANK(NOM,I))_"</td>",!
  ..W " <td "_$$BORDER_" >"_$$RKV($$SNIF(NOM,I))_"</td>",!
  ..W " <td "_$$BORDER_" >"_$$RKV($$TZ(NOM,I))_"</td>",!
  ..W " <td "_$$BORDER_" >"_$$RKV($$HESH(NOM,I))_"</td>",!
  ..W " <td "_$$BORDER_" >"_$$RKV($$CHK(NOM,I))_"</td>",!
  ..W " <td "_$$BORDER_" align=""center"" >"_$$RKV($$DATPR(NOM,I))_"</td>",!
  ..W "</tr>",!
  .;
  .
  W "<tr><td "_$$BORDER_" "_$$^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"&nbsp; "_$$SPANBLACK(SUMCH)_" id=""sumch"">"_$J(SUMCH,2,2)_"</span></td>"
  W "</tr>",!
  ;
  W "</table>",!
  ;
  W "<br />"
  W "<table id=""TblRcpBt"" dir="""_$$^%W1DIR_""" width=""96%"" border=""0"" cellspacing=""0"">",!
   W "<tr>",!
   W " <td>"
    W $$^%W1DICT("PAIDCASH")_" : "
    I '$$NOM W "<input type=""text"" size=""8"" id=""cash"" onClick=""FocSel(this)"" maxlength=""8"" onKeyUp=""ChangeSum('CASH')"" onChange=""ChangeValue(this)"" value="""_$$MZT_""">"
    I $$NOM W $$SPANBLACK($$MZ(NOM))_" id=""summz"" >"_$$VW($J($$MZ(NOM)+$$ODEF(NOM),2,2))_"</span>"
   W " </td>",!
   ;
   W " <td>"
    W $$^%W1DICT("NIKMAS")_" : "
    I '$$NOM W "<input type=""text"" size=""8"" id=""nikmas"" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('NIKMAS')"" onChange=""ChangeValue(this)"" value="""_$$NIKMAST_""">"
    I $$NOM W $$SPANBLACK($$NIKMAS(NOM))_" id=""nikmas""> "_$$VW($$NIKMAS(NOM))_"</span>"
   W " </td>",!
   ;
   I '$$NOM D
   . W "<td>",!
   .  D ROUNDBUT^%W1JS("PayCrCard",$$^%W1DICT("PAYCRCARD"),"PayCrCard()","color:green",",,,180")
   . W "</td>",!
   . I $$CAJ^W4PRM=2 D
   .. W "<td>",!
   ..  D ROUNDBUT^%W1JS("PayCrCard",$$^%W1DICT("PAIDOUT"),"PayCrCardOut()","color:green",",,,220")
   .. W "</td>",!
   .W "</tr>",!
   ;
   S GLCBV=$$GLCBV(NOM)
   ;
   I $$NOM!$D(@GLCBV)!$L($$GETP^%W1PRM("S21")) D
   .I '$$NOM,$L($$GETP^%W1PRM("S21")) D
   ..D SETS21(STRING)
   .
   .W "</tr>",!
   .I $D(@GLCBV)=1 D SHOWCA(NOM)
   .I $D(@GLCBV)>9 N N S N="" F  S N=$O(@GLCBV@(N)) Q:N=""  D SHOWCA(NOM,N)
  ;
  W "<tr>",!
  W " <td style=""font-size:"_$$^W3FSZ(14)_""">"
   N ZN
   W $$^%W1DICT("TOTALPAID")_" : <b>"
   ;
   S ZN=$S($$NOM:$J($$TOT(NOM)+$$ODEF(NOM),2,2),1:$J($$PAID,2,2))
   W $$SPANBLACK(ZN)_" id=""total"">"
   W ZN
   W "</span></b>",!
  W " </td>",!
  ;
  I '$$HMK($$NOM) D
  .W "<td>&nbsp;</td>",!
  ;
  I $$HMK($$NOM) D
  .I '$$NOM D  Q
  ..N ITRA,TOPAY,PAID
  ..S TOPAY=$$TOPAY(0),PAID=$$PAID
  ..S ITRA=TOPAY-PAID
  ..D PUT^%W3DEB("W4LCBCR-HMK","ITRA=ITRA & TOPAY=TOPAY & PAID=PAID")
  ..D
  ...W "<td>"
  ...W $$^%W1DICT("ITRA")_" : "
  ... W "<span id=""iditra1"" style=""color:red;font-weight:bold"">"
  ...  I ITRA'<0 W $J(ITRA,2,2)
  ...  E  W "&nbsp;"
  ... W "</span>",!
  ...W "</td>",!
  ..D
  ...W "<td>"
  ... W $$^%W1DICT("ODEF")_" : <span id=""idodef1"" style=""color:red;font-weight:bold"">"
  ... I ITRA<0 W $J(-ITRA,2,2)
  ... W "&nbsp;"
  ...W "</td>",!
  .
  .I $$NOM,$$ODEF($$NOM) D
  ..W "<td>"
  .. W $$^%W1DICT("ODEF")_" : <span id=""idodef1"" style=""color:red;font-weight:bold"">"_$J($$ODEF($$NOM),2,2)_"</span>",!
  ..W "</td>",!
  ;
  ;
  W "<td>&nbsp;</td>",!
  W "</table>",!
  W "<br />",!
  ;
  D DIVCMNT($$NOM,$$PRINT,$S($$NOM:$$COMMENT(NOM),1:$$COMMENTT),$$PRIVATEINF($$NOM))
 Q
 ;
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
VW(VL) ;
 I 'VL Q VL
 Q "<b>"_VL_"</b>"
 ;
BORDER(STAM) ;
 Q " style=""border:1px solid grey"" " 
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 I $$NOM D ^W4EMAIL(LKH,+NOM,"CB")
 ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$S($$CSR:90,1:70)_"%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   ;
   W "<td>"
   I '$$NOM D
   .
   .    I '$$NOBIG D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDPRINT"),"Submit('"_LKH_"','0')","color:green",",,,100")
   .    I $$CSR D
   ..    W "</td><td>"
   ..     D ROUNDBUT^%W1JS("SubmitCSR",$$^%W1DICT("SUBMITANDCSRPRINT"),"Submit('"_LKH_"','1')","color:green",",,,200")
   ..  W "</td>"
   ; 
   I '$$NOBIG D
   .I $$NOM,'$$HMK($$NOM) D
   .. D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_LKH_"','"_$$NOM_"')","color:green",",,,100")
   .I $$NOM,$$HMK($$NOM) D
   .. D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"PrintAndBack()","color:green",",,,100")
   W "</td>",!
   ;
   W "<td>&nbsp;</td>",!
   I $$NOM,$$CSR D
   .  W "<td>"
   .    D ROUNDBUT^%W1JS("CSRPrint",$$^%W1DICT("CSRPRINT"),"CSRPrint('"_$$NOM_"')","color:green",",,,180")
   .  W "</td>"
   W "<td>&nbsp;</td>",!
   ;
   I $$NOM,'$$^W4DELCB($$NOM) D
   . I $G(%ARG("SHOW"))<1 D
   ..  W "<td>"
   ..   D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("CANCEL"),"Delete()","color:black",",,,100")
   ..  W "</td>",!
   .  W "<td>&nbsp;</td>",!
   ;
   I $$NOM,$D(@GLCBHB@(NOM))>9,'$$HMK($$NOM) D
   .  W "<td>"
   .   D ROUNDBUT^%W1JS("ShowInvoices",$$^%W1DICT("SHOWINVOICES"),"ShowInvoices('"_LKH_"','"_$$NOM_"')","color:darkblue",",,,200")
   .  W "</td>",!
   .  W "<td>&nbsp;</td>",!
   ;
   I $$NOM,'$$HMK($$NOM),$G(%ARG("SHOW"))<1 D
   . N CLINV S CLINV=$$^%W1DICT("CLOSEINVOICES")
   . I '$$ITRACB($$NOM) S CLINV=$$^%W1DICT("RECLOSEINVOICES")
   . W "<td>"
   .  D ROUNDBUT^%W1JS("CloseInvoices",CLINV,"CloseInvoices('"_+$$NOM_"')","color:darkblue",",,,200")
   . W "</td>",!
   ;
  D TMPCB
  I '$D(@TMPCB@("S21")),'$L($$GETP^%W1PRM("S21")) D
  . W "<td>&nbsp;</td>",!
  . W "<td>"
  .  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
  . W "</td>",!
  ;
  W "</tr>",!
  W "</table>",!
  ;
  W "</div>",!
  Q
  ;
  ;
PUTTMP(PRM) ;
 N (JB,%ARG,PRM)
 D PUT^%W3DEB("W4LCBCR-PUTTMP","PRM=PRM")
 D ^W4IN
 N TMPCB D TMPCB
 ;;K @TMPCB
 S STRING=$P(PRM,";")
 I STRING="" Q "NOCUSTNMB"
 S MZ=$P(PRM,";",2)
 S NIKMAS=$P(PRM,";",3)
 S HRA=$P(PRM,";",4)
 S NOZERO=$P(PRM,";",5)
 S BDIKA=$P(PRM,";",6)
 S PRV=$P(PRM,";",7)
 ;
 S PRM=$P(PRM,";",8,200)
 ;
 S SUMCH=0
 S SUMB=0
 ;
 S ER=""
 S MC="BANK~SNIF~TZ~HESH~CHECK~DATPR"
 S ID="bank~snif~tz~hesh~chk~DATPR"
 ;
 F SH=1:1:$L(PRM,";") D  Q:$L(ER)
 .N ST S ST=$P(PRM,";",SH)
 .S ST=$$CNWEB^%L1FRM(ST)
 .I $P(ST,"~") D  Q:ER
 ..F J=1:1:$L(MC,"~") D  Q:$L(ER)
 ...N VL S VL=$P(ST,"~",J+1),IDJ=$P(ID,"~",J) I BDIKA D
 ....I VL="" S ER="NO"_$P(MC,"~",J)_";"_IDJ_SH_$S(IDJ["DAT":"IDdd",1:"") Q
 ....I $P(MC,"~",J)="TZ",$$CHKTZ,'$$^W4TZ(VL) S ER="IDNUMBERISWRONG"_";"_IDJ_SH Q
 ....I $P(MC,"~",J)="DATPR",$E(VL,1,2)<1!($E(VL,1,2)>31)!($E(VL,1,2)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDdd" Q
 ....I $P(MC,"~",J)="DATPR",$E(VL,4,5)<1!($E(VL,4,5)>12)!($E(VL,4,5)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDmm" Q
 ....I $P(MC,"~",J)="DATPR",$E(VL,7,8)'?2N S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDyy" Q
 ....I $P(MC,"~",J)="DATPR",'$$^%L1DC(VL,3) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDdd" Q
 .
 .I '$P(ST,"~"),$P(PRM,";",SH+1),NOZERO S ER="NOSUM;sum"_SH Q
 .
 .I $P(ST,"~",6)["B"!($P(ST,"~",6)["a")!($P(ST,"~",6)="b") D
 ..S $P(ST,"~",6)="BANK"
 ..S SUMB=SUMB+ST
 .
 .S @TMPCB@(SH)=$TR(ST,"~","\")
 .
 .S SUMCH=SUMCH+ST
 ;
 I $L(ER) Q ER
PUTTMP1 ;
 N SUMCA S SUMCA=0
 N S21 S S21=$$GETP^%W1PRM("S21")
 I $L(S21) S SUMCA=$P(S21,"*",7)
 S SUM=SUMCH+MZ+$$SUMCA+SUMCA
 I 'SUM,NOZERO Q "NOSUM;sum1"
 D PUTTMP2
 Q 1
 ;
SUMCA(STAM) ;
 N TMPCB D TMPCB
 I $D(@TMPCB@("S21"))=1 Q $P($G(@TMPCB@("S21",N)),"*",7)
 ;
 N SUMCA S SUMCA=0
 N N S N="" F  S N=$O(@TMPCB@("S21",N)) Q:N=""  D
 .S SUMCA=SUMCA+$P($G(^(N)),"*",7)
 Q SUMCA
 ;
 ;
PUTTMP2 ;
 N TMPCB D TMPCB
 S SUM=SUMCH+MZ+$$SUMCA
 S @TMPCB=$J(SUM,2,2)_"\"_$J(MZ,2,2)
 S $P(@TMPCB,"\",6)=$J(SUMCH,2,2)
 S $P(@TMPCB,"\",8)=$J(SUMB,2,2)
 S $P(@TMPCB,"\",7)=$J(SUMCH-SUMB,2,2)
 S $P(@TMPCB,"\",9)=$J(NIKMAS,2,2)
 S @TMPCB@("HR")=$TR($$INVH^%L1FRM($$CNWEB^%L1FRM(HRA)),"\","/")
 I $G(PRV) S @TMPCB@("HR","PRV")=1
 S @TMPCB@("LKH")=STRING
 I $L($G(%ARG("LKHNAME"))) S @TMPCB@("LKHNAME")=$TR(%ARG("LKHNAME"),"\","/")
 I $L($G(%ARG("RCPNAME"))) S @TMPCB@("FOR")=$TR(%ARG("RCPNAME"),"\","/")
 ;
 ;;D SETS21(STRING)
 Q
 ;
 ;
SETS21(STRING) ;
 N TMPCB D TMPCB
 ;
 I $L($$GETP^%W1PRM("S21")) D
 .N NEWV S NEWV=$O(@TMPCB@("S21",999),-1)+1
 .S @TMPCB@("S21",NEWV)=$$GETP^%W1PRM("S21")
 .D KILL^%W1PRM("S21")
 .I $L($$GETP^%W1PRM("SOUT")) D
 ..S @TMPCB@("S21",NEWV,"SOUT")=$$GETP^%W1PRM("SOUT")
 ..D KILL^%W1PRM("SOUT")
 .I $L($$GETP^%W1PRM("TRAN")) D
 ..S @TMPCB@("S21",NEWV,"TRAN")=$$GETP^%W1PRM("TRAN")
 ..D KILL^%W1PRM("TRAN")
 .I $L($$GETP^%W1PRM("UID")) D
 ..S @TMPCB@("S21",NEWV,"UID")=$$GETP^%W1PRM("UID")
 ..D KILL^%W1PRM("UID")
 .I $D(@$$^W4MAIN("TMPEMV")) D
 ..M @TMPCB@("S21",NEWV,"EMV")=@$$^W4MAIN("TMPEMV")
 ..K @$$^W4MAIN("TMPEMV")
 .N GL D GL^W4L
 .
 .I $G(STRING),$D(@GL@(STRING))=11 D
 ..N S21 S S21=$G(@TMPCB@("S21",NEWV))
 ..N VIZ S VIZ=$P(S21,"*",2)_"^"_$E($P(S21,"*",14),1,2)_"^"_$E($P(S21,"*",14),3,4)_"^"_$P(S21,"*",24)_"^"_$P(S21,"*",23)
 ..D PUT^W4L(STRING,VIZ,"CADFLT")
 Q
 ;
 ;
VLD(STRING) ;
 N TZ S TZ=$P(STRING,";",2)
 D PUT^%W1PRM("TZ",TZ)
 S STRING=$P(STRING,";")
 ;
 I $G(STRING)="" Q "NOCUSTNMB"
 S LK0=STRING
 S STRING=$$LK^W4LHB(LK0)
 ;
 D TMPCB I '$D(@TMPCB)="" Q "NODATA!"
 ;
 Q 1
 ;
 ;
PUT(STRING) ; -- SAVE NEW RECEIPT
 N (JB,%ARG,%REM,STRING)
 ;
 S KLIN=$$^W4KLIN
 D PUT^%W3DEB("W4LCBCR-PUT","STRING=STRING")
 ;
 N TZ S TZ=$P(STRING,";",2)
 S STRING=$P(STRING,";")
 ;
 I $G(STRING)="" Q "NOCUSTNMB"
 S LK0=STRING
 S STRING=$$LK^W4LHB(LK0)
 ;
 D TMPCB I '$D(@TMPCB)="" Q "NODATA!"
 ;
 N N S N="" F  S N=$O(@TMPCB@("S21",N)) Q:N=""  D
 .S S21=$G(^(N))
 .I $E(S21,1,2)'="$V" S S21=""
 .S VZ=$P(S21,"*",7)
 .N SOUT,TRAN
 .S SOUT=$G(@TMPCB@("S21",N,"SOUT"))
 .;;I $L(SOUT)<20 S SOUT=$$GETP^%W1PRM("SOUT") D KILL^%W1PRM("SOUT")
 .S TRAN=$G(@TMPCB@("S21",N,"TRAN"))
 .;;I $L(TRAN)<20 S TRAN=$$GETP^%W1PRM("TRAN") D KILL^%W1PRM("TRAN")
 .;
 .I $L(S21) D ZAPCA(S21,SOUT,TRAN)
 ;
 S CODDOC=$$CODDOC
 S SUM=$$PAID
 I 'SUM Q "NOSUM!"
 ;
 ;;W "SUM="_SUM_"  TOPAY="_$$TOPAY($$NOM)_"  HMK="_$$HMK(0),!
 ;
 S NOM=$$NOM,TOPAY=$$TOPAY(NOM)
 D PUT^%W3DEB("W4LCBCR-PUT","NOM=NOM & TOPAY=TOPAY & SUM=SUM")
 ;
 S RES="",ODEF=0
 ;
 I $$HMK(NOM),$J(SUM,1,1)'=$J(TOPAY,1,1) D  I RES'="" Q RES
 .I 'NOM D  Q:ODEF>0&(TOPAY'<0)!(ODEF<0&(TOPAY<0))
 ..N MZ S MZ=$$MZT
 ..I SUM-TOPAY>0,SUM-TOPAY'>MZ S ODEF=SUM-TOPAY
 .S RES="PAYMENTNOTEQCREDIT"
 ;
 I '$D(@$$^W4GL("P1DZ")) S @$$^W4GL("P1DZ")=+$H
 ;
 D ^W4IN
 ;
 I $$HMK($$NOM)'=2 D
 .L +@KLIN@(CODDOC):1
 .S NUMBER=$O(@KLIN@(CODDOC,9999999),-1)+1
 ;
 I $$HMK($$NOM)=2 D
 .N NMB S NMB=$$PUTHMK^W4DOC ; ----------- !!!! --> MLY
 .S NUMBER=$P(NMB,";",2)
 ;
 L +@$$GLCB(NUMBER):1
 ;
 N GLCBV S GLCBV=$$GLCBV(NUMBER)
 L +@GLCBV:1
 M @GLCBV=@TMPCB@("S21") ; -------------------- !!!!!!!!!!!!!!!!!!
 K @TMPCB@("S21")
 L -@GLCBV
 ;
 M @$$GLCB(NUMBER)=@TMPCB ; <---  SUM,MZ,SUMCH,NIKMAS
 ;
 M @$$GLCBHR(NUMBER)=@TMPCB@("HR")
 ;
 S N=9999 F  S N=$O(@$$GLCB(NUMBER)@(N),-1) Q:N=""  D
 .I '$G(^(N)) D DEL^%L1GSEQ($$GLCB(NUMBER),N)
 ;
 D PUTZAP(STRING,SUM) ; --> KLUP
 ;
 S $P(@$$GLCB(NUMBER),"\")=$J(SUM,2,2)
 S $P(@$$GLCB(NUMBER),"\",3)=$J($$VZ,2,2)
 S $P(@$$GLCB(NUMBER),"\",4)=$$^%L1DC($$NEWDAT,2)
 S $P(@$$GLCB(NUMBER),"\",11)=$TR($$LKH^W4L(STRING),"\","/")
 S $P(@$$GLCB(NUMBER),"\",13)=$H
 ;
 I $$VCARD(STRING) D
 .S @$$GLCB(NUMBER)@("VC")=$$GET^W4TMPANS("VCARD","STR")
 .S @$$GLCB(NUMBER)@("VC","CARD")=$$GET^W4TMPANS("VCARD","CARDNUMBER")
 .S @$$GLCB(NUMBER)@("VC","NAME")=$TR($$GET^W4TMPANS("VCARD","NAME"),"\","/")
 .S @$$GLCB(NUMBER)@("VC","ASM")=$$GET^W4TMPANS("VCARD","ASM")
 ;
 I $G(%ARG("WBCARD")) D
 .S @$$GLCB(NUMBER)@("WB","LKH")=$G(%ARG("BSLKH"))
 .S @$$GLCB(NUMBER)@("WB","CARD")=$G(%ARG("BSCARD"))
 .S @$$GLCB(NUMBER)@("WB","NAME")=$TR($G(%ARG("BSNAME")),"\","/")
 .S @$$GLCB(NUMBER)@("WB","CLUB")=$G(%ARG("BSCLUB"))
 .S @$$GLCB(NUMBER)@("WB","ASM")=$G(%ARG("BSASM"))
 ;
 I $G(%ARG("WMCARD")) D
 .S @$$GLCB(NUMBER)@("MP","CARD")=$G(%ARG("MPCARD"))
 .S @$$GLCB(NUMBER)@("MP","NAME")=$G(%ARG("MPNAME"))
 .S @$$GLCB(NUMBER)@("MP","ASM")=$G(%ARG("MPASM"))
 .S @$$GLCB(NUMBER)@("MP","ARM")=$G(%ARG("MPARM"))
 ;
 I $G(ODEF),ODEF>0&(TOPAY'<0)!(ODEF<0&(TOPAY<0)) D
 .S $P(@$$GLCB(NUMBER),"\",2)=$P($G(@$$GLCB(NUMBER)),"\",2)-ODEF
 .S $P(@$$GLCB(NUMBER),"\",1)=$P($G(@$$GLCB(NUMBER)),"\",1)-ODEF
 .S $P(@$$GLCB(NUMBER),"\",15)=ODEF
 ;
 L  ;
 D ^%S3GLSV($$GLCB(NUMBER),$$^W4FGIB)
 D ^%S3GLSV($$GLCBHR(NUMBER),$$^W4FGIB)
 D ^%S3GLSV($$GLCBV(NUMBER),$$^W4FGIB)
 ;
 I '$$TZ^W4L(STRING),TZ D PUT^W4L(STRING,TZ,"TZ")
 ;
 I $$HMK($$NOM)'=2 D  ;--- HMK YAD
 .S NRZD=$S($$CODDOC="HMK":7,1:6)
 .L +@$$^W4GL("KLF"):1
 .I NUMBER>$P($G(@$$^W4GL("KLF")),"\",NRZD) D
 ..S $P(@$$^W4GL("KLF"),"\",NRZD)=NUMBER
 .L +@$$^W4KLIN@(CODDOC):1
 .S @$$^W4KLIN@(CODDOC,NUMBER)=STRING
 L  ;
 ;
 I $$HMK($$NOM)=1 D
 .M @$$GLHB(NUMBER)=@$$TMPHB
 .D ^%S3GLSV($$GLHB(NUMBER),$$^W4FGIB)
 ;
PUTE ;
 D CRACNTN^W4ACNT(STRING,NUMBER,CODDOC)
 ;
 D
 .K @TMPCB
 .K @$$TMPHB
 .D CLEAR^W4PAYKB
 .D CLEAR
 ;
 D PUT^%W1PRM("MKRYD",NUMBER_CODDOC)
 I $$HMK($$NOM)'=2 D
 .;;D PUT^%W1PRM("MKRYD",NUMBER_CODDOC)
 .D ^%S3GLSV($$^W4KLIN_"("""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 ;
 D ^W4SETCH(CODDOC,NUMBER)
 ;
 I $G(ODEF),ODEF>0&($G(TOPAY)'<0)!(ODEF<0&($G(TOPAY)<0)),NUMBER'[";" S NUMBER=NUMBER_";"_ODEF
 Q NUMBER
 ;
 ;
PUTZAP(CUSN,SUM) ;
 N DATE,COD,KLN,P1DZ,KMAM,DLL,DLNH
 D ^W4KLINIT,^W4IN
 S DATE=$$^%L1DC($$NEWDAT,2)
 S CODDOC=$$CODDOC
 S COD="A"
 I '$$HMK(0) S COD=CODPAY
 D PUT^%W3DEB("W4LCBCR-PUTZAP","CUSN=CUSN&DATE=DATE&CODDOC=CODDOC&COD=COD")
 D ^W4KLUP
 Q
 ;
 ;
DELETE(NOMCB) ;
 N (JB,%REM,NOMCB)
 S KLIN=$$^W4KLIN
 S CODDOC=$$CODDOC(NOMCB)
 S STRING=$G(@KLIN@(CODDOC,+NOMCB))
 D PUT^%W3DEB("W4LCBCR-DELETE","NOMCB=NOMCB & KLIN=KLIN & CODDOC=CODDOC")
 S LK0=STRING
 S STRING=$$LK^W4LHB(LK0)
 I STRING="" Q "NOCUSTNMB"
 ;------------- BITIL TASHLUMIM
 N TMPCB
 D TMPCB K @TMPCB
 M @TMPCB=@$$GLCB(NOMCB)
 S A=$G(@TMPCB)
 F J=1,2,3,6,7,8,9,15 S $P(A,"\",J)=-$P(A,"\",J)
 S @TMPCB=A
 F I=1:1 Q:'$D(@TMPCB@(I))  D
 .S $P(^(I),"\")=-$P(^(I),"\")
 ;
 S OK="ERROR"
 N GLBV S GLCBV=$$GLCBV(NOMCB)
 ;
 I $D(@GLCBV)=1 D  I OK'="OK;000" Q OK
 .N S21 S S21=$G(@GLCBV) Q:'$L(S21)
 .S STRIN=$G(@GLCBV@("STRIN"))
 .I STRIN="" S STRIN=$$^W4S212IN(S21)
 .S $P(S21,"*",6)=-$P(S21,"*",6)
 .S $P(S21,"*",7)=-$P(S21,"*",7)
 .S OK=$P($$BIT^W4PAYCBA(STRIN),";",1,2)
 .I OK'="OK;000" S OK=$$ERROR(OK)
 ;
 I $D(@$$GLCBV(NOMCB))>9 D  I OK'="OK;000" Q OK
 .N TM S TM=$P($G(@$$GLCB(NOMCB)),"\",13)
 .N N S N="" F  S N=$O(@GLCBV@(N)) Q:N=""  D
 ..N S21 S S21=$G(^(N)) Q:'$L(S21)
 ..S STRIN=$G(@GLCBV@(N,"STRIN"))
 ..I STRIN="" S STRIN=$$^W4S212IN(S21)
 ..N STOUT S STOUT=$G(@GLCBV@(N,"SOUT"))
 ..D PUT^%W1PRM("STOUTBIT",STOUT)
 ..S UID=$G(@GLCBV@(N,"UID"))
 ..I $$^W4WASSND(TM) S UID=""
 ..S $P(S21,"*",6)=-$P(S21,"*",6)
 ..S $P(S21,"*",7)=-$P(S21,"*",7)
 ..N VID S VID=$E($P(S21,"*"),3)
 ..S OK=$P($$BIT^W4PAYCBA(STRIN,UID),";",1,2) ; ---------- !!!!!!!!!!!!!!!!!!
 ..I OK'="OK;000" S OK=$$ERROR(OK) Q
 ..D SETS21(STRING)
 ;
 ;
 S A=1
 I $$VCARD(STRING) D  I A'=1 Q "ERROR;"_A
 .N CARD,TRID
 .S CARD=$G(@$$GLCB(NOMCB)@("VC","CARD"))
 .S TRID=$G(@$$GLCB(NOMCB)@("VC","ASM"))
 .I CARD=""!(TRID="") Q
 .S A=$$DEL^WVVOID(0,CARD,TRID)
 ;
 S @TMPCB@("HR")=$$TV^%W1DICT($$^%W1LNG,"DELETINGRECEIPT",+NOMCB)
 ;
 I $$HMK(NOMCB)=1 D
 .S @TMPCB@("HR")=$$TV^%W1DICT($$^%W1LNG,"DELETINGINVCRCP",+NOMCB)
 .K @$$TMPHB
 .M @$$TMPHB=@$$GLHB(NOMCB)
 .N A S A=$G(@$$TMPHB)
 .N J F J=1,2,3,10 S $P(A,"\",J)=-$P(A,"\",J)
 .S $P(A,"\",4)=$ZD($H,"DD.MM.YY")
 .S $P(A,"\",7)=$ZD($H,"DD.MM.YY  24:60")
 .S @$$TMPHB=A
 .N I F I=1:1 Q:'$D(@$$TMPHB@(I))  D
 ..S $P(^(I),"\")=-$P(^(I),"\")
 ..S $P(^(I),"\",3)=-$P(^(I),"\",3)
 ;
 I $$HMK(NOMCB)=2 D  ; MEFURAT
 .S @TMPCB@("HR")=$$TV^%W1DICT($$^%W1LNG,"DELETINGINVCRCP",+NOMCB)
 .D DELHB($$GLHB(NOMCB))
 .
 .S DT=+$H,VDOC="HMK"
 ;
 S %ARG("NOM")=NOMCB
 ;
 S NEWCB=$$PUT(STRING) ; -- !!!! --> FOR HMK --> PUTHMK^W4DOC --> MLY
 ;
 I NEWCB>0,'$$HMK(NOMCB) D
 .D GLCBHB^W4CBHB
 .D CLRHB(+NOMCB,"D")
 .K @GLCBHB@(+NOMCB)
 .D ^%S3GLSV(GLCBHB_"(+NOMCB)",$$^W4FGIB,"K")
 .L +@$$GLCBHR(NOMCB):1
 .L +@$$^W4GL("W4DELCB")@(+NOMCB)
 .S @$$^W4GL("W4DELCB")@(+NOMCB)=NEWCB
 .D ^%S3GLSV($$^W4GL("W4DELCB")_"("_+NOMCB_")",$$^W4FGIB)
 .S @$$GLCBHR(+NOMCB)=$$TV^%W1DICT($$^%W1LNG,"DELETEDBYRECEIPT",+NEWCB)
 .S @$$GLCBHR(+NEWCB)=$$TV^%W1DICT($$^%W1LNG,"DELETINGRECEIPT",+NOMCB)
 .L  ;
 ;
 I NEWCB>0,$$HMK(NOMCB) D
 .L +@$$GLCBHR(+NOMCB):1
 .L +@$$^W4GL("W4DELHMK")@(+NOMCB)
 .S @$$^W4GL("W4DELHMK")@(+NOMCB)=+NEWCB
 .D ^%S3GLSV($$^W4GL("W4DELHMK")_"("_+NOMCB_")",$$^W4FGIB)
 .S @$$GLCBHR(+NOMCB)=$$TV^%W1DICT($$^%W1LNG,"DELETEDBYINVCRCP",+NEWCB)
 .S @$$GLCBHR(+NEWCB)=$$TV^%W1DICT($$^%W1LNG,"DELETINGINVCRCP",+NOMCB)
 .L  ;
 .N NOM S NOM=$P(LK0,"W",2) Q:'NOM
 .Q:'$D(@$$^W4GL("W4DOC")@(NOM,"HMK"))
 .S @$$^W4GL("W4DOC")@(NOM,"HMK","DELETED")=$H_"\"_NEWCB
 .N NEWNOM S NEWNOM=$P($G(@$$^W4KLIN@("HMK",+NEWCB)),"W",2)
 .Q:'NEWNOM
 .Q:'$D(@$$^W4GL("W4DOC")@(+NEWNOM,"HMK"))
 .S @$$^W4GL("W4DOC")@(+NEWNOM,"HMK","DELETED")=$H_"\"_NOMCB
 ;
 D ^%S3GLSV($$GLCBHR(NOMCB),$$^W4FGIB)
 ;
 D PUT^%W1PRM("MKRYD",NEWCB_$S($$HMK(NOMCB):"HMK",1:"CB"))
 ;
 ;;I $$HMK(NOMCB),$$DOCCSR^W4LKHCSR D ^W4PCHMK(NEWCB)
 ;
ECB Q NEWCB
 ;
 ;
ERROR(OK) ;
 ;;W "  VID="_VID,! ; ***
 D PUT^%W1PRM("S21","")
 N STA S STA=$P(OK,";",2)
 S OK="ERROR;"_STA_";" I STA S OK=OK_$G(@$$^W4GL("KOD")@(+STA))
 I +STA=3,$G(VID) S OK=OK_";"_$$TELCA^W4OPT(+VID)
 Q OK
 ;
GLCB(NOM) ;
 I $L($G(STRING))<4 S STRING=$$STRING(NOM) S:STRING="" STRING=" "
 I $$HMK(NOM)=1 Q $$^W4GL("KLF")_"("""_STRING_""",""HMK"","_+NOM_",""CB"")"
 I $$HMK(NOM)=2 Q $$^W4GL("W4DOC")_"("_+$$NOMDOC(NOM)_",""HMK"",""CB"")"
 Q $$^W4GL("KLF")_"("""_STRING_""",""CB"","_+NOM_")"
 ;
GLHB(NOM) ;
 I $L($G(STRING))<4 S STRING=$$STRING(NOM)
 I $$HMK(NOM)=1 Q $$^W4GL("KLF")_"("""_STRING_""",""HMK"","_+NOM_",""HB"")"
 S NOM=$$NOMDOC(NOM) Q $$^W4GL("W4DOC")_"("_+NOM_")"
 ;
GLCBHR(NOM) ;
 I $L($G(STRING))<4 S STRING=$$STRING(NOM)
 I $$HMK(NOM)=1 Q $$^W4GL("KLF")_"("""_STRING_""",""HMK"","_+NOM_",""CBP"")"
 I $$HMK(NOM)=2 Q $$^W4GL("W4DOC")_"("_+$$NOMDOC(NOM)_",""HMK"",""CBP"")"
 Q $$^W4GL("KLF")_"(STRING,""CBP"","_+NOM_")"
 ;
GLCBV(NOM) ;
 N TMPCB
 I $L($G(STRING))<4 S STRING=$$STRING(NOM)
 I '$G(NOM) D TMPCB Q $E(TMPCB,1,$L(TMPCB)-1)_",""S21"")"
 ;
 I $$HMK(NOM)=1 Q $$^W4GL("KLF")_"(STRING,""HMK"","_+NOM_",""CBV"")"
 I $$HMK(NOM)=2 Q $$^W4GL("W4DOC")_"("_+$$NOMDOC(NOM)_",""HMK"",""CBV"")"
 Q $$^W4GL("KLF")_"(STRING,""CBV"","_+NOM_")"
 ;
 ;
HOV(DT) ;
 K KLOST,KLOSTP
 I '$G(@$$^W4PRM@("ITRAHZ")) Q $$CBH^W4KLOST(LKH,DT)
 ;
 N DAT0,DAT2,DD,STRING,NN,BUY,PAY
 S DAT=$$^%L1DC($$^%L1DC(DT,1),2)
 S DAT0=DAT,DAT2=$$^%L1DC($$^%L1DC($H,1),2)
 S DD=$E(DAT,5,6)
 S STRING=LKH D ^W4KLOST
 Q ITRA0
 ;
COLST S COLST=$G(%ARG("COLST"))
 N TMPCB,MIN D TMPCB
 S MIN=$O(@TMPCB@(99999),-1)
 I COLST<MIN S COLST=MIN
 I COLST<3 S COLST=3
 Q
 ;
 ;
GETKOT(STRING,NOM) ;
 N A S A=$G(@$$GLCB(NOM))
 S ORGTIME=$ZD($P(A,"\",13),"DD.MM.YY  24:60")
 I ORGTIME="" S ORGTIME=$$^%L1DC($P(A,"\",4),1)
 S LKHNAME=$$LKHNAME^W4CBGET(STRING,NOM)
 I STRING=$$^WVLKH,$$SPA^%L1FRM(LKHNAME)'=$$SPA^%L1FRM($$LKH^W4L(STRING)) D
 .S LKHNAME="[ "_LKHNAME_" ] "_$$SPA^%L1FRM($$LKH^W4L(STRING))
 S LKHFOR=""
 I $L($G(@$$GLCB(NOM)@("FOR"))) S LKHFOR=^("FOR")
 S LKHKTV=$P(A,"\",14)
 I LKHKTV="" S LKHKTV=$$KTVM^W4L(STRING)
 Q
 ;
SUM(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)@(I)),"\",1)
 ;
BANK(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)@(I)),"\",2)
 ;
SNIF(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)@(I)),"\",3)
 ;
TZ(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)@(I)),"\",4)
 ;
HESH(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)@(I)),"\",5)
 ;
CHK(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)@(I)),"\",6)
 ;
DATPR(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)@(I)),"\",7)
 ;
SUMT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",1)
 ;
BANKT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",2)
 ;
SNIFT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",3)
 ;
TZT(I) ;
 N TZ
 D TMPCB
 S TZ=$P($G(@TMPCB@(I)),"\",4)
 ;;I TZ="",$$SUMT(I),$G(%ARG("LKH")) S TZ=$$TZ^W4L(%ARG("LKH"))
 Q TZ
 ;
HESHT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",5)
 ;
CHKT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",6)
 ;
DATPRT(I) ;
 D TMPCB
 N A
 S A=$P($G(@TMPCB@(I)),"\",7)
 I A="" S A="-"
 Q A
 ;
CA(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 I $D(@GLCBV)=1 Q $J($P($G(@GLCBV),"*",7),2,2)
 I '$G(I) S I=1
 Q $J($P($G(@GLCBV@(I)),"*",7),2,2)
 ;
CANMB(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 I $D(@GLCBV)=1 Q $P($G(@GLCBV),"*",2)
 I '$G(I) S I=1
 Q $P($G(@GLCBV@(I)),"*",2)
 ;
NOMISKA(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 I $D(@GLCBV)=1 Q $P($G(@GLCBV),"*",3)
 I '$G(I) S I=1
 Q $P($G(@GLCBV@(I)),"*",3)
 ;
CASUGI(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 I $D(@GLCBV)=1 Q $P($G(@GLCBV),"*",4)
 I '$G(I) S I=1
 Q $P($G(@GLCBV@(I)),"*",4)
 ;
CASUGI1(NOM,I,NOWEB) ;
 N SI S SI=$$CASUGI(NOM,$G(I)) I 'SI Q $S($G(NOWEB):"",1:"&nbsp;")
 Q $$SUGI1(SI)
 ;
SUGI1(SI)
 I $G(SI)="" Q "?"
 N SI1 S SI1=$G(^[$$^W3MAIN]W4PAYS($$COUNTRY^W3PRM,"SI",SI))
 I $G(NOWEB) Q SI1
 Q $$H2U^%L1FRM(SI1)
 ;
CASUGA(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 I $D(@GLCBV)=1 Q $P($G(@GLCBV),"*",5)
 I '$G(I) S I=1
 Q $P($G(@GLCBV@(I)),"*",5)
 ;
CASUGA1(NOM,I,NOWEB) ;
 N SA S SA=$$CASUGA(NOM,$G(I)) I 'SA Q $S($G(NOWEB):"",1:"&nbsp;")
 Q $$SUGA1(SA)
 ;
SUGA1(SA)
 S SA=+$G(SA)
 N SA1 S SA1=$G(^[$$^W3MAIN]W4PAYS($$COUNTRY^W3PRM,"SA",SA))
 I $G(NOWEB) Q SA1
 Q $$H2U^%L1FRM(SA1)
 ;
CATSN(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 N A S A=""
 I $D(@GLCBV)=1 S A=$P($G(@$$GLCBV(NOM)),"*",9)
 ;
 I $D(@GLCBV)>9 D
 .I '$G(I) S I=1
 .S A=$P($G(@GLCBV@(I)),"*",9)
 ;
 I 'A Q ""
 Q A
 ;
 ;
CATS1(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 N A S A="" I $D(@GLCBV)=1 S A=$P($G(@GLCBV),"*",8)
 I $D(@GLCBV)>9 D
 .I '$G(I) S I=1
 .S A=$P($G(@GLCBV@(I)),"*",8)
 I 'A Q ""
 Q $J(A*.01,2,2)
 ;
CATS2(NOM,I) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 N GLCBV S GLCBV=$$GLCBV(NOM)
 N A S A=""
 I $D(@GLCBV)=1 S A=$P($G(@$$GLCBV(NOM)),"*",10)
 I $D(@GLCBV)>9 D
 .I '$G(I) S I=1
 .S A=$P($G(@GLCBV@(I)),"*",10)
 I 'A Q ""
 Q $J(A*.01,2,2)
 ;
 ;
NEWDAT(STAM) ;
 I '$$^W4LKH D ^W4IN Q $ZD(P1DZ,"DD.MM.YY")
 Q $ZD($H,"DD.MM.YY")
 ;
MZ(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $J($P($G(@$$GLCB(NOM)),"\",2),2,2)
 ;
ODEF(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $J($P($G(@$$GLCB(NOM)),"\",15),2,2)
 ;
SUMCH(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $J($P($G(@$$GLCB(NOM)),"\",6),2,2)
 ;
SUMB(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $J($P($G(@$$GLCB(NOM)),"\",8),2,2)
 ;
NIKMAS(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $J($P($G(@$$GLCB(NOM)),"\",9),2,2)
 ;
TOT(NOM) ;
 I '$G(NOM) Q $$PAID
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 D PUT^%W3DEB("W4LCBCR-TOT","STRING=STRING & NOM=NOM")
 Q $J($P($G(@$$GLCB(NOM)),"\",1),2,2)
 ;
DAT(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $P($G(@$$GLCB(NOM)),"\",4)
 ;
COMMENT(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $G(@$$GLCBHR(NOM))
 ;
PRIVATEINF(NOM) ;
 I $G(NOM)="" Q ""
 N STRING S STRING=$$STRING(NOM) I STRING="" Q ""
 Q $G(@$$GLCBHR(NOM)@("PRV"))
 ;
 ;
MZT(STAM) ;
 D TMPCB
 Q $J($P($G(@TMPCB),"\",2),2,2)
 ;
NIKMAST(STAM) ;
 D TMPCB
 Q $J($P($G(@TMPCB),"\",9),2,2)
 ;
TOTT(STAM) ;
 D TMPCB
 Q $J($P($G(@TMPCB),"\",1),2,2)
 ;
COMMENTT(STAM) ;
 D TMPCB
 Q $G(@TMPCB@("HR"))
 ;
NOM(STAM) ;
 I $G(%ARG("NOM")) Q %ARG("NOM")
 Q 0
 ;
TMPCB ;
 S TMPCB=$$^W4MAIN("TMPCB")
 Q
 ;
TMPHB(STAM) Q $$^W4MAIN("TMPHBK")
 ;
SPANBLACK(VL) ;
 Q "<span dir=""LTR"" "_$$^%W1ALIGN_" style=""color:"_$S($G(VL)<0:"red",1:"black")_""""
 ;
STRING(NOM) ;
 N LK
 I '$G(NOM) D  Q LK
 .I $G(%ARG("LKH")) S LK=%ARG("LKH") Q
 .D TMPCB
 .S LK=$G(@TMPCB@("LKH"))
 ;
 N CODDOC
 S CODDOC=$$CODDOC(NOM)
 ;
 Q $$LK^W4STRING(CODDOC,+NOM)
 ;
 ;
CLEAR ;
 D KILL^%W1PRM("S21")
 D KILL^%W1PRM("TRAN")
 D KILL^%W1PRM("SOUT")
 D KILL^%W1PRM("CBCRED")
 D KILL^%W1PRM("STRIN")
 D KILL^%W1PRM("CB")
 D KILL^%W1PRM("LKH")
 D KILL^%W1PRM("NOMCB")
 D KILL^%W1PRM("STOUTBIT")
 K @$$^W4MAIN("TMPEMV")
 D KILL^W4TMPPAY
 Q
 ;
ITRACB(NOMCB) ;
 Q $$TOTCB(NOMCB)-$$SUMPAID(NOMCB)
 ;
TOTCB(NOMCB) ;
 D GLCBHB^W4CBHB
 I $D(@GLCBHB@(NOMCB))>9 D
 .S $P(@GLCBHB@(NOMCB),"\",4)=$$SUMPAID(NOMCB)
 Q $P($G(@$$GLCB(NOMCB)),"\")
 ;
 ;
SUMPAID(NOMCB) ;
 D GLCBHB^W4CBHB
 N N,SUMPAID S SUMPAID=0
 S N="" F  S N=$O(@GLCBHB@(NOMCB,N)) Q:N=""  S SUMPAID=SUMPAID+$G(^(N))
 Q SUMPAID
 ;
CLRHB(NOMCB,PR) ;
 I $G(PR)="" S PR="D"
 N W4CB
 D GLCBHB^W4CBHB
 N LK,A,CBO
 ;
 N HB S HB="" F  S HB=$O(@GLCBHB@(NOMCB,HB)) Q:HB=""  D
 .N SUM S SUM=$G(^(HB))
 .S LK=$G(@$$^W4GL("KLIN")@("H",HB)) Q:LK=""
 .
 .I LK["+" D  Q
 ..S LK=$P(LK,"+")
 ..S A=$G(@$$^W4GL("P1LHB")@(LK,HB)) Q:A=""
 ..S @$$^W4GL("P1LHB")@(LK,HB)=$$UPDHB(SUM,A,NOMCB,5,6,PR)
 ..D ^%S3GLSV($$^W4GL("P1LHB")_"("""_LK_""","""_HB_""")",$$^W4FGIB)
 .
 .I $$ARM^W4LHB(LK)=1 D  Q  ; -- YAD
 ..S A=$G(@$$^W4GL("KLF")@(LK,"H",HB)) Q:A=""
 ..S @$$^W4GL("KLF")@(LK,"H",HB)=$$UPDHB(SUM,A,NOMCB,5,6,PR)
 ..D ^%S3GLSV($$^W4GL("KLF")_"("""_LK_""",""H"","""_HB_""")",$$^W4FGIB)
 .
 .I $$ARM^W4LHB(LK)=2 D  Q  ; -- MEFURETET
 ..N NOMDOC S NOMDOC=$P(LK,"W",2)
 ..S LK=$P(LK,"W")
 ..S A=$G(@$$^W4GL("W4DOC")@(NOMDOC)) Q:A=""
 ..S @$$^W4GL("W4DOC")@(NOMDOC)=$$UPDHB(SUM,A,NOMCB,19,20,PR)
 ..D ^%S3GLSV($$^W4GL("W4DOC")_"("""_NOMDOC_""")",$$^W4FGIB)
 Q
 ;
 ;
UPDHB(SUM,A,NOMCB,NDLM1,NDLM2,PR) ;
 I PR="D" D
 .N CBO,SUMO
 .S CBO=$P(A,"\",NDLM2)
 .S SUMO=$P(A,"\",NDLM1)
 .S CBO=","_CBO_","
 .S CBO=$P(CBO,","_NOMCB_",")_","_$P(CBO,","_NOMCB_",",2)
 .S:$E(CBO)="," CBO=$E(CBO,2,120)
 .S:$E(CBO,$L(CBO))="," CBO=$E(CBO,1,$L(CBO)-1)
 .S $P(A,"\",NDLM1)=$J(SUMO-SUM,2,2)
 .S $P(A,"\",NDLM2)=CBO
 ;
 I PR="S" D
 .N CBO,SUMO
 .S CBO=$P(A,"\",NDLM2)
 .S SUMO=$P(A,"\",NDLM1)
 .S CBO=","_CBO_","
 .I CBO'[(","_NOMCB_",") S CBO=CBO_NOMCB
 .S:$E(CBO)="," CBO=$E(CBO,2,120)
 .S:$E(CBO,$L(CBO))="," CBO=$E(CBO,1,$L(CBO)-1)
 .S $P(A,"\",NDLM1)=$J(SUMO+SUM,2,2)
 .S $P(A,"\",NDLM2)=CBO
 ;
 Q A
 ;
CODDOC(STAM) ;
 I $G(STAM)["HMK" Q "HMK"
 I $$HMK($$NOM) Q "HMK"
 Q "CB"
 ;
TOPAY(NOM) ;
 N HMK S HMK=$$HMK(NOM)
 D PUT^%W3DEB("W4LCBCR-TOPAY","NOM=NOM & HMK=HMK")
 I HMK=2 Q $P($G(@$$TMPHB),"\",6)
 Q $P($G(@$$TMPHB),"\",2)
 ;
PAID(STAM) ;
 N A,S21,SUM,TMPCB
 D TMPCB
 S A=$G(@TMPCB)
 S SUM=$P(A,"\",6)+$P(A,"\",2)+$P(A,"\",9)+$$VZ
 Q SUM
 ;
VZ(STAM) N S21,VZ
 S S21=$$GET^%W1PRM("S21")
 I $E(S21,1,2)'="$V" S S21=""
 S VZ=$P(S21,"*",7)
 Q (VZ+$$SUMCA)
 ;
HMK(NOM) ;
 N OK
 I $G(NOM)["HMK" D  Q OK
 .N LK0
 .S LK0=$$^W4STRING("HMK",+NOM)
 .I LK0="" S OK=0 Q
 .I LK0["W" S OK=2 Q
 .S OK=1
 ;
 N LK0
 I '$$HMK^W4LHB Q 0
 I '$G(NOM) Q $$HMK^W4LHB
 I $G(LK0)="" S LK0=$$^W4STRING("HMK",NOM)
 I $G(LK0)["W" Q 2
 Q 1
 ;
NOMDOC(NOM) ;
 N LK0,NOMDOC
 S LK0=""
 S NOMDOC=0
 I NOM S LK0=$G(@$$^W4KLIN@($$CODDOC(NOM),+NOM))
 I $$HMK(NOM)=2 S NOMDOC=$P(LK0,"W",2)
 Q NOMDOC
 ;
INIT ;
 D CLEAR
 D CLEAR^W4PAYKB
 D TMPCB
 K:+$$HMK^W4LHB=0 @TMPCB
 D PUT^%W1PRM("CHKDET",1)
 D PUT^%W1PRM("CHKTZ",1)
 I $G(%ARG("NOMHB")) D PUT^%W1PRM("NOMHB",%ARG("NOMHB"))
 I $G(%ARG("SUMHB")) D PUT^%W1PRM("SUMHB",%ARG("SUMHB"))
 Q
 ;
CHKDET(STAM) ;
 Q $$GETP^%W1PRM("CHKDET")
 ;
CHKTZ(STAM) ;
 Q $$GETP^%W1PRM("CHKTZ")
 ;
CSRPRINT(NOMCB) ;
 Q $$^W4PCCB(NOMCB)
 ;
CSR(STAM) ;
 I '$$^W4LKH Q 1
 I $$^W4LKHCSR Q 1
 Q 0
 ;
DIVCMNT(NOM,PRINT,COMMENT,PRV,SHOW) ;
  W "<table dir="""_$$^%W1DIR_""" width=""96%"" border=""0"" cellspacing=""0"">",!
  I $G(PRV),PRINT G ETB
  W " <tr>",!
  W "<td width=""10%"">"_$$^%W1DICT("COMMENT")_" :</td>",!
  I '$G(NOM) S SHOW=0
  I $G(NOM),'$$INP^W4DOC,'$D(EDITCMNT) S SHOW=1
  I '$G(SHOW) D
  .W "  <td width=""60%"">"
  .;;W "   <input type=""text"" size=""75"" maxlength=""75"" id=""comment"" value="""_$$H2U^%L1FRM(COMMENT)_""">",!
  .W "   <textarea cols=""75"" rows=""2"" id=""comment"" >"_$$H2U^%L1FRM(COMMENT)_"</textarea>",!
  .W "  </td>",!
  .W "  <td "_$$^%W1ALIGN_" ><input type=""checkbox"" id=""chkprv"" >"_$$^%W1DICT("PRIVATEINF")_"</td>"
  I $G(SHOW) D
  .W "  <td id=""tdcmnt"" style=""color:black;font-weight:bold"">"_$$H2U^%L1FRM(COMMENT)_"</td>",!
  .I PRV W "<td id=""tdprv"">["_$$^%W1DICT("PRIVATEINF")_"]</td>"
  W " </tr>",!
ETB ;
  W "</table>",!
 Q
 ;
PRINT(STAM) ;
 Q $G(%ARG("PRINT"))!$G(%ARG("MAIL"))
 ;
DELHB(GLHB) ;
 N TMPHB
 S TMPHB=$$TMPHB
 K @TMPHB
 ;
 S @TMPHB=$G(@GLHB)
 ;
 N I F I=1:1 Q:'$D(@GLHB@(I))  S @TMPHB@(I)=$G(@GLHB@(I))
 N A S A=$G(@TMPHB)
 N J F J=6,7,10,13,14 S $P(A,"\",J)=-$P(A,"\",J)
 S $P(A,"\",4)=$ZD($H,"DD.MM.YY")
 S $P(A,"\",8)=$ZD($H,"DD.MM.YY  24:60")
 S @TMPHB=A
 F I=1:1 Q:'$D(@TMPHB@(I))  D
 .F J=4 D
 ..S $P(^(I),"\",J)=-$P(^(I),"\",J)
 Q
 ;
SETPAID(NOMCB)
 D CLRHB(NOMCB,"S")
 Q
 ;
CADFLT(PRM) ;
 N ITRA,CRCARD
 S ITRA=$P(PRM,";")
 N LK S LK=$P(PRM,";",2)
 D PUT^%W1PRM("CBCRED",1)
 D CLEAR^W4PAYKB
 D PUT^W4TMPPAY(3,"SUM",ITRA)
 ;
 I '$$EMV^W4PRM,LK,$$CADFLT^W4L(LK) D
 .D PUT^W4TMPPAY(3,"CREDITCARDNUMBER",$$CADFLT^W4L(LK))
 .D PUT^W4TMPPAY(3,"MM",$$MMCA^W4L(LK))
 .D PUT^W4TMPPAY(3,"YY",$$YYCA^W4L(LK))
 .D PUT^W4TMPPAY(3,"IDNUMBER",$$TZCA^W4L(LK))
 .D PUT^W4TMPPAY(3,"CVV",$$CVV^W4L(LK))
 Q 1
 ;
 ;
VCARD(STRING) ;
 I $$^WVLKH,STRING=$$^WVLKH,$G(@$$^W4PRM@("VCARD")) Q 1
 Q 0
 ;
ZAPCA(S21,SOUT,TRAN) ; 
 D DOS1^W4TRAN(SOUT,TRAN)
 Q 
 ;
NOBIG(STAM) ; 
 Q $$NOBIGMDP^W4PRM 
 ;
SHOWCA(NOM,I) ;
  S I=+$G(I)
  W "<tr>",!
  W " <td>",!
   W $$^%W1DICT("PAIDCRCARD")_" : "
   W $$SPANBLACK($$CA(NOM,I))_" id=""sumca""> "_$$VW($$CA(NOM,I))_"</span>"
   W " </td>",!
   W " <td colspan=""2"">",!
    W $$^%W1DICT("CRCARDNUMBER")_" : "
    N CANMB S CANMB=$$CANMB(NOM,I)
    D
    .I CANMB?5N.N S CANMB="... "_$E(CANMB,$L(CANMB-3),$L(CANMB)) Q
    .I CANMB?1N S CANMB=$$H2U^%L1FRM($$V^W3SHOWTS(CANMB))
    ;
    W $$SPANBLACK_" > <b>"_CANMB_"</b></span>"
   W " </td>",!
   W "</tr>",!
   W "<tr>",!
   W " <td>",!
    W $$^%W1DICT("NOMISKA")_" : "
    W $$SPANBLACK_" > "_$$NOMISKA(NOM,I)_"</span>"
   W " </td>",!
   W " <td>",!
    W $$^%W1DICT("SUGISKA")_" : "
    W $$SPANBLACK_" > "_$$CASUGI1(NOM,I)_"</span>"
   W " </td>",!
   W " <td>",!
    W $$^%W1DICT("SUGASR")_" : "
    W $$SPANBLACK_" > "_$$CASUGA1(NOM,I)_"</span>"
   W " </td>",!
  W "</tr>",!
  W "<tr>",!
   W " <td>",!
    W $$^%W1DICT("QNPAY")_" : "
    N CATSN S TACSN=$$CATSN(NOM,I) I TACSN S TACSN=TACSN+1
    W $$SPANBLACK_" > "_TACSN_"</span>"
   W " </td>",!
   W " <td>",!
    W $$^%W1DICT("FIRSTPAY")_" : "
    W $$SPANBLACK_" > "_$$CATS1(NOM,I)_"</span>",!
   W " </td>",!
   W " <td>",!
    W $$^%W1DICT("NEXTPAY")_" : "
    W $$SPANBLACK_" > "_$$CATS2(NOM)_"</span>"
   W " </td>",!
   W "</tr>",!
   W "<tr><td colspan=""8""><hr></td></tr>",!
  Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LCBCR0
W4LCBCR ; [ 12.12.09 09:31 ] [ 28.09.09 09:44 ] [ 27.09.09 20:23 ]
 N (JB,%ARG,%REM)
 S (STRING,LKH)=$G(%ARG("LKH"))
 D PUT^%W3DEB("W4LCBCR","ARG=[%ARG")
 ;
 D KOTCB(LKH)
 ;
 D DAF1
 ;
 D GLCBHB^W4CBHB
 ;
 I $$NOM,$G(%ARG("PRINT")),$D(@GLCBHB@($$NOM))>9 D
 .W "<p style=""page-break-before:always"">",!
 .D ^W4CBHB(LKH,$$NOM,1)
 ;
 W "<br/>"
 ;
 I '$G(%ARG("PRINT")) D
 .W "<div id=""divbut"">"
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 . W "<tr>"
 .  W "<td>"
 .  I '$$NOM D
 ..    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDPRINT"),"Submit('"_LKH_"')","color:green",",,,100")
 .  I $$NOM D
 ..    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_LKH_"','"_$$NOM_"')","color:green",",,,100")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .
 . I $$NOM,'$$^W4DELCB($$NOM) D
 .. I '$G(%ARG("SHOW")) D
 ...  W "<td>"
 ...   D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("CANCEL"),"Delete()","color:black",",,,100")
 ...  W "</td>",!
 ..  W "<td>&nbsp;</td>",!
 .
 . I $D(@GLCBHB@($$NOM))>9 D
 ..  W "<td>"
 ..   D ROUNDBUT^%W1JS("ShowInvoices",$$^%W1DICT("SHOWINVOICES"),"ShowInvoices('"_LKH_"','"_$$NOM_"')","color:darkblue",",,,200")
 ..  W "</td>",!
 ..  W "<td>&nbsp;</td>",!
 .
 . I $$ITRACB($$NOM) D
 . . W "<td>"
 . .  D ROUNDBUT^%W1JS("CloseInvoices",$$^%W1DICT("CLOSEINVOICES"),"CloseInvoices('"_$$NOM_"')","color:darkblue",",,,200")
 . . W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .  W "<td>"
 .   D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 .  W "</td>",!
 . W "</tr>",!
 .W "</table>",!
 .W "</div>",!
 Q
 ;
 ;
KOTCB(LKH) ;
  N DAT
  I '$G(%ARG("W4LKH")) D ^W4IN S DAT=$ZD(P1DZ,"DD.MM.YY")
  I $G(%ARG("W4LKH")) S DAT=$ZD($H,"DD.MM.YY")
  D ^W4KOTHSB(LKH,DAT,"CB")
  Q
  ;
  N STRING S STRING=LKH
  D ^W4IN
  N DAT S DAT=$ZD(P1DZ,"DD.MM.YY")
  D GLCB,KOT
  W "<div align=""center"">",!
  W "<table border=""0"" width=""60%"" dir="""_$$^%W1DIR_""">",!
  D LINE
  W "<tr>"
     W "<td colspan=""4"" align=""center"" style="""_$$STYLERKV()_""">"_$$H2U^%L1FRM(MYKTV)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
     W "<td width=""15%"">" W $$^%W1DICT("TEL")_"</td>"
     W "<td style="""_$$STYLERKV_""">"_MYTEL_"</td>"
     W "<td>"_$$^%W1DICT("MYESEK")_"</td>",!
     W "<td align=""right"" style="""_$$STYLERKV()_""">"_MYESEK_"</td>"
  W "</tr>",!
  ;
  W "<tr><td colspan=""3"" style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""" id=""receiptnumber"">"_$$^%W1DICT("RECEIPTNMB")_" "_$G(%ARG("NOM"))_"</td>",!
  W "<td id=""makor"" style=""color:gray;font-size:"_$$^W3FSZ(18)_""">"_$S($G(%ARG("MAKOR"))!'$$NOM:$$^%W1DICT("ORIGINAL"),1:$$^%W1DICT("THECOPY"))_"</td>"
  W "</tr>",!
  ;
  S LKHNAME=$$LKH^W4L(LKH)
  S LKHKTV=$$KTVM^W4L(LKH)
  S LKHTEL=$$TEL^W4L(LKH)
  I LKHTEL="",$L(LKH)>6 S LKHTEL=$$TEL^W4LHB(LKH)
  ;
  I $$NOM,'$G(%ARG("MAKOR")) D
  .W "<tr>"
  .W " <td>&nbsp;</td><td>&nbsp;</td>"
  .N ORGTIME
  .N NOM S NOM=$$NOM
  .D GETKOT(LKH,NOM)
  .W " <td colspan=""2"">"_$$^%W1DICT("ORIGINALTIME")_" "_ORGTIME_"</td>"
  .W "</tr>",!
  ;
  W "<tr>"
  W " <td>&nbsp;</td><td>&nbsp;</td>"
  W " <td colspan=""2"">"_$$^%W1DICT("ISSUETIME")_" "_$ZD($H,"DD.MM.YY  24:60")_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
     W "<td width=""20%"">" W $$^%W1DICT("CUSTOMNUMBER")_"</td>"
     W "<td style="""_$$STYLERKV_""">"_LKH_"</td>"
     W "<td>"_$$^%W1DICT("NAME")_"</td>"
     W "<td align=""right"" style="""_$$STYLERKV()_""">"_$$H2U^%L1FRM(LKHNAME)_"</td>"
  W "</tr>",!
  ;
  W "<tr>",!
     W "<td>" W $$^%W1DICT("ADDR")_" </td>"
     W "<td colspan=""2"">"_$$H2U^%L1FRM(LKHKTV)_"</td>"
     W "<td>"_$$^%W1DICT("TEL")_" "_$$TEL^W4LHB(LKHTEL)_"</td>"
  W "</tr>",!
  ;
  W "<tr>",!
    W "<td>" W $$^%W1DICT("TODATE")_" </td>"
    W "<td id=""todate"" dir=""LTR"" "_$$^%W1ALIGN_" style="""_$$STYLERKV_""">"_DAT_"</td>"
    W "<td colspan=""2"">&nbsp;</td>"
 W "</tr>",!
 ;
 W "<tr><td colspan=""2"">&nbsp;</td></tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
 ;
DAF1 ;
 N (JB,%ARG,LKH,DAT,CMNT,BFTAX,AFTAX,SHUM,LMAM)
 S STRING=LKH
 W "<table id=""TblRcpBd"" dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">",!
  W "<tr>",!
   W "<th>"_$$^%W1DICT("SUM")_"</th>",!
   W "<th>"_$$^%W1DICT("BANK")_"</th>",!
   W "<th>"_$$^%W1DICT("SNIF")_"</th>",!
   W "<th>"_$$^%W1DICT("TZ")_"</th>",!
   W "<th>"_$$^%W1DICT("ACCOUNT")_"</th>",!
   W "<th>"_$$^%W1DICT("CHECK")_"</th>",!
   W "<th>"_$$^%W1DICT("PRAON")_"</th>",!
  W "</tr>",!
  ;
  D COLST
  S SUMCH=0
  ;
  I '$$NOM D  ;-- NEW
  .F I=1:1:COLST D
  ..S SUMCH=SUMCH+$$SUMT(I)
  ..W "<tr>",!
  ..W "<td dir=""LTR"" "_$$^%W1ALIGN_"><input type=""text"" size=""10"" id=""sum"_I_""" maxlength=""10"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"')"" onChange=""ChangeValue(this)"" value="""_$$SUMT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""2"" id=""bank"_I_""" maxlength=""2"" onClick=""FocSel(this)"" value="""_$$BANKT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""3"" id=""snif"_I_""" maxlength=""3"" onClick=""FocSel(this)"" value="""_$$SNIFT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""9"" id=""tz"_I_""" maxlength=""9"" onClick=""FocSel(this)"" value="""_$$TZT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""10"" id=""hesh"_I_""" maxlength=""10"" onClick=""FocSel(this)"" value="""_$$HESHT(I)_"""></td>",!
  ..W "<td><input type=""text"" size=""10"" id=""chk"_I_""" maxlength=""10"" onClick=""FocSel(this)"" value="""_$$CHKT(I)_"""></td>",!
  ..W "<td dir=""LTR"" align=""center"">" S %W1DAT("NODAY")=1 D ^%W1DAT("DATPR"_I,$$DATPRT(I)) W "</td>",!
  ..W "</tr>",!
  ;
  I $$NOM S NOM=$$NOM
  ;
  I $$NOM D
  .D GLCB
  .F I=1:1 Q:'$D(@GLCB@(NOM,I))  D
  ..W "<tr>",!
  ..W " <td dir=""LTR"" "_$$^%W1ALIGN_" >"_$$RKV($$SUM(NOM,I),"N")_"&nbsp;&nbsp;&nbsp;</td>",! S SUMCH=SUMCH+$$SUM(NOM,I)
  ..W " <td>"_$$RKV($$BANK(NOM,I))_"</td>",!
  ..W " <td>"_$$RKV($$SNIF(NOM,I))_"</td>",!
  ..W " <td>"_$$RKV($$TZ(NOM,I))_"</td>",!
  ..W " <td>"_$$RKV($$HESH(NOM,I))_"</td>",!
  ..W " <td>"_$$RKV($$CHK(NOM,I))_"</td>",!
  ..W " <td align=""center"" >"_$$RKV($$DATPR(NOM,I))_"</td>",!
  ..W "</tr>",!
  .;
  .
  W "<tr><td "_$$^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"&nbsp; "_$$SPANBLACK(SUMCH)_" id=""sumch"">"_$J(SUMCH,2,2)_"</span></td>"
  W "</tr>",!
  ;
  W "</table>",!
  ;
  W "<br />"
  W "<table id=""TblRcpBt"" dir="""_$$^%W1DIR_""" width=""70%"" border=""0"" cellspacing=""0"">",!
   W "<tr>",!
   W " <td>"
    W $$^%W1DICT("PAIDCASH")_" : "
    I '$$NOM W "<input type=""text"" size=""8"" id=""cash"" maxlength=""8"" onKeyUp=""ChangeSum('CASH')"" onChange=""ChangeValue(this)"" value="""_$$MZT_""">"
    I $$NOM W $$SPANBLACK($$MZ(NOM))_" >"_$$MZ(NOM)_"</span>"
   W " </td>",!
   ;
   W " <td>"
    W $$^%W1DICT("NIKMAS")_" : "
    I '$$NOM W "<input type=""text"" size=""8"" id=""nikmas"" maxlength=""8"" onKeyUp=""ChangeSum('NIKMAS')"" onChange=""ChangeValue(this)"" value="""_$$NIKMAST_""">"
    I $$NOM W $$SPANBLACK($$NIKMAS(NOM))_" > "_$$NIKMAS(NOM)_"</span>"
   W " </td>",!
   ;
   I '$$NOM D
   . W "<td>",!
   .  D ROUNDBUT^%W1JS("PayCrCard",$$^%W1DICT("PAYCRCARD"),"PayCrCard()","color:green",",,,180")
   . W "</td>",!
   .W "</tr>",!
   ;
   I $$NOM D
   .W "</tr>",!
   .W "<tr>",!
   .W " <td>",!
   . W $$^%W1DICT("PAIDCRCARD")_" : "
   . W $$SPANBLACK($$CA(NOM))_" > "_$$CA(NOM)_"</span>"
   .W " </td>",!
   .W " <td colspan=""2"">",!
   . W $$^%W1DICT("CRCARDNUMBER")_" : "
   . W $$SPANBLACK_" > "_$$CANMB(NOM)_"</span>"
   .W " </td>",!
   .W "</tr>",!
   .W "<tr>",!
   .W " <td>",!
   . W $$^%W1DICT("NOMISKA")_" : "
   . W $$SPANBLACK_" > "_$$NOMISKA(NOM)_"</span>"
   .W " </td>",!
   .W " <td>",!
   . W $$^%W1DICT("SUGISKA")_" : "
   . W $$SPANBLACK_" > "_$$CASUGI1(NOM)_"</span>"
   .W " </td>",!
   .W " <td>",!
   . W $$^%W1DICT("SUGASR")_" : "
   . W $$SPANBLACK_" > "_$$CASUGA1(NOM)_"</span>"
   .W " </td>",!
  .W "</tr>",!
  .W "<tr>",!
  . W " <td>",!
  .  W $$^%W1DICT("QNPAY")_" : "
  .  W $$SPANBLACK_" > "_$$CATSN(NOM)_"</span>"
  . W " </td>",!
  . W " <td>",!
  .  W $$^%W1DICT("FIRSTPAY")_" : "
  .  W $$SPANBLACK_" > "_$$CATS1(NOM)_"</span>",!
  . W " </td>",!
  . W " <td>",!
  .  W $$^%W1DICT("NEXTPAY")_" : "
  .  W $$SPANBLACK_" > "_$$CATS2(NOM)_"</span>"
  . W " </td>",!
  . W "</tr>",!
  ;
  W "<tr>",!
  W " <td>"
   W $$^%W1DICT("TOTAL")_" : <b>"
   N ZN S ZN=$S($$NOM:$$TOT(NOM),1:$J(SUMCH+$$MZT+$$NIKMAST,2,2))
   W $$SPANBLACK(ZN)_" id=""total"">"
   W ZN
   W "</span></b>",!
  W " </td>",!
  W "<td>&nbsp;</td>",!
  W "<td>&nbsp;</td>",!
  W "</table>",!
  W "<br />",!
  ;
  W "<table dir="""_$$^%W1DIR_""" width=""70%"" border=""0"" cellspacing=""0"">",!
  W " <tr>",!
  W "<td width=""10%"">"_$$^%W1DICT("COMMENT")_" :</td>",!
  I '$$NOM D
  .W "  <td><input type=""text"" size=""75"" maxlength=""75"" id=""comment"" value="""_$$H2U^%L1FRM($$COMMENTT)_"""></td>",!
  I $$NOM D
  .W "  <td style=""color:black;font-weight:bold"">"_$$H2U^%L1FRM($$COMMENT(NOM))_"</td>",!
  W " </tr>",!
  W "</table>",!
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>"
 Q
 ;
STYLERKV() ;
 Q "color:black;font-weight:bold;font-size="_$$^W3FSZ(12)
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
PUTTMP(PRM) ;
 N (JB,PRM)
 D PUT^%W3DEB("W4LCBCR-PUTTMP","PRM=PRM")
 D COLST,^W4IN
 N TMPCB D TMPCB
 K @TMPCB
 S STRING=$P(PRM,";")
 I STRING="" Q "NOCUSTNMB"
 S MZ=$P(PRM,";",2)
 S NIKMAS=$P(PRM,";",3)
 S HRA=$P(PRM,";",4)
 S PRM=$P(PRM,";",8,8+COLST-1)
 ;
 S SUMCH=0
 ;
 S ER=""
 S MC="BANK~SNIF~TZ~HESH~CHECK~DATPR"
 S ID="bank~snif~tz~hesh~chk~DATPR"
 F SH=1:1:$L(PRM,";")-1 D  Q:$L(ER)
 .N ST S ST=$P(PRM,";",SH)
 .I $P(ST,"~") D  Q:ER
 ..F J=1:1:$L(MC,"~") D  Q:$L(ER)
 ...N VL S VL=$P(ST,"~",J+1),IDJ=$P(ID,"~",J)
 ...I VL="" S ER="NO"_$P(MC,"~",J)_";"_IDJ_SH_$S(IDJ["DAT":"IDdd",1:"") Q
 ...I $P(MC,"~",J)="TZ",'$$^W4TZ(VL) S ER="IDNUMBERISWRONG"_";"_IDJ_SH Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,1,2)<1!($E(VL,1,2)>31)!($E(VL,1,2)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDdd" Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,4,5)<1!($E(VL,4,5)>12)!($E(VL,4,5)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDmm" Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,7,8)'?2N S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDyy" Q
 .
 .I '$P(ST,"~"),$P(PRM,";",SH+1) S ER="NOSUM;sum"_SH Q
 .
 .S @TMPCB@(SH)=$TR(ST,"~","\")
 .S SUMCH=SUMCH+ST
 ;
 I $L(ER) Q ER
 ;
 S SUM=SUMCH+MZ
 S @TMPCB=$J(SUM,2,2)_"\"_$J(MZ,2,2)
 S $P(@TMPCB,"\",6)=$J(SUMCH,2,2)
 S $P(@TMPCB,"\",9)=$J(NIKMAS,2,2)
 S @TMPCB@("HR")=$$INVH^%L1FRM($$CNWEB^%L1FRM(HRA))
 S @TMPCB@("LKH")=STRING
 Q 1
 ;
PUT(STRING) ; -- SAVE NEW RECEIPT
 N (JB,%REM,STRING)
 ;
 S KLIN=$$^W4KLIN
 D PUT^%W3DEB("W4LCBCR-PUT","STRING=STRING")
 ;
 S S21=$$GET^%W1PRM("S21")
 I $E(S21,1,2)'="$V" S S21=""
 S VZ=$P(S21,"*",7)
 ;
 I $G(STRING)="" Q "NOCUSTNMB"
 D TMPCB I '$D(@TMPCB)="" Q "NODATA!"
 ;
 S CODDOC="CB"
 D GLCB,GLCBV,GLCBHR,COLST
 D ^W4IN
 ;
 S NUMBER=$O(@KLIN@(CODDOC,9999999),-1)+1
 ;
 M @GLCB@(NUMBER)=@TMPCB
 ;
 S N=9999 F  S N=$O(@GLCB@(NUMBER,N),-1) Q:N=""  D
 .I '$G(^(N)) D DEL^%L1GSEQ($E(GLCB,1,$L(GLCB)-1)_","_NUMBER_")",N)
 ;
 S A=$G(@TMPCB)
 S SUM=$P(A,"\",6)+$P(A,"\",2)+$P(A,"\",9)+VZ
 ;
 D PUTZAP(STRING,SUM) ; --> KLUP
 ;
 S $P(@GLCB@(NUMBER),"\")=$J(SUM,2,2)
 S $P(@GLCB@(NUMBER),"\",3)=$J(VZ,2,2)
 S $P(@GLCB@(NUMBER),"\",4)=$ZD(P1DZ,"YYMMDD")
 S $P(@GLCB@(NUMBER),"\",11)=$$LKH^W4L(STRING)
 S $P(@GLCB@(NUMBER),"\",13)=$H
 ;
 S @GLCBHR@(NUMBER)=$G(@TMPCB@("HR"))
 ;
 I S21'="" S @GLCBV@(NUMBER)=S21 D
 .N STRIN S STRIN=$$GET^%W1PRM("STRIN") Q:STRIN["UNDEF"
 .S @GLCBV@(NUMBER,"STRIN")=STRIN
 ;
 D ^%S2GLSV($$^W4GL("KLF")_"("""_STRING_""","""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
 D ^%S2GLSV($$^W4GL("KLF")_"("""_STRING_""","""_CODDOC_"P"","""_NUMBER_""")",$$^W4FGIB)
 D ^%S2GLSV($$^W4GL("KLF")_"("""_STRING_""","""_CODDOC_"V"","""_NUMBER_""")",$$^W4FGIB)
 ;
 S NRZD=6
 I NUMBER>$P($G(@$$^W4GL("KLF")),"\",NRZD) D
 .S $P(@$$^W4GL("KLF"),"\",NRZD)=NUMBER
 S @$$^W4KLIN@(CODDOC,NUMBER)=STRING
 ;
 D ^%S2GLSV($$^W4KLIN_"("""_CODDOC_""","""_NUMBER_""")",$$^W4FGIB)
PUTE ;
 K @TMPCB
 D CLEAR^W4PAYKB
 D CLEAR
 ;
 Q NUMBER
 ;
 ;
PUTZAP(CUSN,SUM) ;
 N DATE,COD,KLN,P1DZ
 D ^W4KLINIT,^W4IN
 S DATE=$ZD(P1DZ,"YYMMDD"),COD=CODPAY
 D ^W4KLUP
 Q
 ;
DELETE(NOMCB) ;
 N (JB,NOMCB)
 S KLIN=$$^W4KLIN
 S STRING=$G(@KLIN@("CB",NOMCB))
 I STRING="" Q "NOCUSTNMB"
 N TMPCB,GLCB
 D TMPCB K @TMPCB
 D GLCB
 M @TMPCB=@GLCB@(NOMCB)
 S A=$G(@TMPCB)
 F J=1,2,3,6,7,8,9 S $P(A,"\",J)=-$P(A,"\",J)
 S @TMPCB=A
 F I=1:1 Q:'$D(@TMPCB@(I))  D
 .S $P(^(I),"\")=-$P(^(I),"\")
 ;
 N GLCBV D GLCBV
 I $L($G(@GLCBV@(NOMCB))) D
 .N S21 S S21=$G(@GLCBV@(NOMCB)) Q:'$L(S21)
 .S $P(S21,"*",6)=-$P(S21,"*",6)
 .S $P(S21,"*",7)=-$P(S21,"*",7)
 .S STRIN=$G(@GLCBV@(NOMCB,"STRIN"))
 .S OK=$$BIT^W4PAYCBA(STRIN)
 .I OK'="OK;000" S S21="" D PUT^%W1PRM("S21","")
 ;
 S @TMPCB@("HR")=$$^%W1DICT("DELETINGRECEIPT",NOMCB)
 ;
 S NEWCB=$$PUT(STRING) ; -- !!
 ;
 I NEWCB>0 D
 .D GLCBHR
 .D GLCBHB^W4CBHB
 .K @GLCBHB@(NOMCB)
 .S @$$^W4GL("W4DELCB")@(NOMCB)=NEWCB
 .S @GLCBHR@(NOMCB)=$$^%W1DICT("DELETEDBYRECEIPT",NEWCB)
 ;
 Q NEWCB
 ;
 ;
GLCB ;
 S GLCB=$$^W4GL("KLF")_"(STRING,""CB"")"
 Q
 ;
GLCBHR ;
 S GLCBHR=$$^W4GL("KLF")_"(STRING,""CBP"")"
 Q
 ;
GLCBV ;
 S GLCBV=$$^W4GL("KLF")_"(STRING,""CBV"")"
 Q
 ;
HOV(DT) ;
 K KLOST,KLOSTP
 I '$G(@$$^W4PRM@("ITRAHZ")) Q $$CBH^W4KLOST(LKH,DT)
 ;
 N DAT0,DAT2,DD,STRING,NN,BUY,PAY
 S DAT=$$^%L1DC($$^%L1DC(DT,1),2)
 S DAT0=DAT,DAT2=$$^%L1DC($$^%L1DC($H,1),2)
 S DD=$E(DAT,5,6)
 S STRING=LKH D ^W4KLOST
 Q ITRA0
 ;
COLST S COLST=10
 Q
 ;
KOT ;
 I $G(@$$^W4GL("PLUK"))'["MLY" G KOT1
 N MRK S MRK=$G(@$$^W4GLM("STAT(""MLY"",""EM"",""MRKZ"")"))
 S MYNAME=$$MYNAME
 I $G(@$$^W4PL@("LOGO")) S MYLOGO=@$$^W4PL@("LOGO"),MYNAME=""
 S MYKTV=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*")
 S MYTEL=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",5)
 S MYESEK=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",12)
 Q
KOT1 ;
 S MYNAME=$$MYNAME
 I $G(@$$^W4PL@("LOGO")) S MYLOGO=@$$^W4PL@("LOGO"),MYNAME=""
 S MYKTV=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",2))),"#",""),"_")
 S MYTEL=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",3))),"#",""),"_")
 S MYESEK=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",4))),"#",""),"_")
 Q
MYNAME(STAM) ;
 I $G(@$$^W4GL("PLUK"))'["MLY" Q $P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",1))),"#",""),"_")
 Q $G(@$$^W4GLM("YZRN")@(MRK))
 ;
GETKOT(STRING,NOM) ;
 D GLCB
 N A S A=$G(@GLCB@(NOM))
 S ORGTIME=$ZD($P(A,"\",13),"DD.MM.YY  24:60")
 I ORGTIME="" S ORGTIME=$$^%L1DC($P(A,"\",4),1)
 S LKHNAME=$P(A,"\",11)
 I LKHNAME="" S LKHNAME=$$LKH^W4L(STRING)
 S LKHKTV=$P(A,"\",14)
 I LKHKTV="" S LKHKTV=$$KTVM^W4L(STRING)
 Q
SUM(NOM,I) ;
 D GLCB
 Q $P($G(@GLCB@(NOM,I)),"\",1)
BANK(NOM,I) ;
 D GLCB
 Q $P($G(@GLCB@(NOM,I)),"\",2)
SNIF(NOM,I) ;
 D GLCB
 Q $P($G(@GLCB@(NOM,I)),"\",3)
TZ(NOM,I) ;
 D GLCB
 Q $P($G(@GLCB@(NOM,I)),"\",4)
HESH(NOM,I) ;
 D GLCB
 Q $P($G(@GLCB@(NOM,I)),"\",5)
CHK(NOM,I) ;
 D GLCB
 Q $P($G(@GLCB@(NOM,I)),"\",6)
DATPR(NOM,I) ;
 D GLCB
 Q $P($G(@GLCB@(NOM,I)),"\",7)
 ;
SUMT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",1)
BANKT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",2)
SNIFT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",3)
TZT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",4)
HESHT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",5)
CHKT(I) ;
 D TMPCB
 Q $P($G(@TMPCB@(I)),"\",6)
DATPRT(I) ;
 D TMPCB
 N A
 S A=$P($G(@TMPCB@(I)),"\",7)
 I A="" S A="-"
 Q A
 ;
CA(NOM) ;
 D GLCBV
 Q $J($P($G(@GLCBV@(NOM)),"*",7),2,2)
 ;
CANMB(NOM) ;
 D GLCBV
 Q $P($G(@GLCBV@(NOM)),"*",2)
 ;
NOMISKA(NOM) ;
 D GLCBV
 Q $P($G(@GLCBV@(NOM)),"*",3)
 ;
CASUGI(NOM) ;
 D GLCBV
 Q $P($G(@GLCBV@(NOM)),"*",4)
 ;
CASUGI1(NOM) ;
 N SI S SI=$$CASUGI(NOM) I 'SI Q "&nbsp;"
 Q $$H2U^%L1FRM($G(^[$$^W3MAIN]W4PAYS($$COUNTRY^W3PRM,"SI",SI)))
 ;
CASUGA(NOM) ;
 D GLCBV
 Q $P($G(@GLCBV@(NOM)),"*",5)
 ;
CASUGA1(NOM) ;
 N SA S SA=$$CASUGA(NOM) I 'SA Q "&nbsp;"
 Q $$H2U^%L1FRM($G(^[$$^W3MAIN]W4PAYS($$COUNTRY^W3PRM,"SA",SA)))
 ;
CATSN(NOM) ;
 D GLCBV
 N A S A=$P($G(@GLCBV@(NOM)),"*",9)
 I 'A Q ""
 Q A
 ;
CATS1(NOM) ;
 D GLCBV
 N A S A=$P($G(@GLCBV@(NOM)),"*",8)
 I 'A Q ""
 Q $J(A*.01,2,2)
 ;
CATS2(NOM) ;
 D GLCBV
 N A S A=$P($G(@GLCBV@(NOM)),"*",10)
 I 'A Q ""
 Q $J(A*.01,2,2)
 ;
 ;
MZ(NOM) ;
 D GLCB
 N STRING S STRING=$$STRING(NOM)
 Q $J($P($G(@GLCB@(NOM)),"\",2),2,2)
 ;
NIKMAS(NOM) ;
 D GLCB
 N STRING S STRING=$$STRING(NOM)
 Q $J($P($G(@GLCB@(NOM)),"\",9),2,2)
 ;
TOT(NOM) ;
 D GLCB
 N STRING S STRING=$$STRING(NOM)
 Q $J($P($G(@GLCB@(NOM)),"\",1),2,2)
 ;
DAT(NOM) ;
 D GLCB
 N STRING S STRING=$$STRING(NOM)
 Q $P($G(@GLCB@(NOM)),"\",4)
 ;
COMMENT(NOM) ;
 D GLCBHR
 N STRING S STRING=$$STRING(NOM)
 Q $G(@GLCBHR@(NOM))
 ;
 ;
MZT(STAM) ;
 D TMPCB
 Q $J($P($G(@TMPCB),"\",2),2,2)
 ;
NIKMAST(STAM) ;
 D TMPCB
 Q $J($P($G(@TMPCB),"\",9),2,2)
 ;
TOTT(STAM) ;
 D TMPCB
 Q $J($P($G(@TMPCB),"\",1),2,2)
 ;
COMMENTT(STAM) ;
 D TMPCB
 Q $G(@TMPCB@("HR"))
 ;
NOM(STAM) ;
 I $G(%ARG("NOM")) Q %ARG("NOM")
 Q 0
 ;
TMPCB ;
 S TMPCB=$$^W4MAIN("TMPCB")
 Q
 ;
SPANBLACK(VL) ;
 Q "<span dir=""LTR"" "_$$^%W1ALIGN_" style=""color:"_$S($G(VL)<0:"red",1:"black")_""""
 ;
STRING(NOM) ;
 Q $$^W4STRING("CB",NOM)
 ;
CLEAR ;
 D KILL^%W1PRM("S21")
 D KILL^%W1PRM("STRIN")
 D KILL^%W1PRM("CB")
 D KILL^%W1PRM("LKH")
 D KILL^%W1PRM("NOMCB")
 Q
 ;
ITRACB(NOMCB) ;
 Q $$TOTCB(NOMCB)-$$SUMPAID(NOMCB)
 ;
TOTCB(NOMCB) ;
 D GLCBHB^W4CBHB
 S $P(@GLCBHB@(NOMCB),"\",4)=$$SUMPAID(NOMCB)
 Q $P($G(@GLCBHB@(NOMCB)),"\",3)
 ;
SUMPAID(NOMCB) ;
 D GLCBHB^W4CBHB
 N N,SUMPAID S SUMPAID=0
 S N="" F  S N=$O(@GLCBHB@(NOMCB,N)) Q:N=""  S SUMPAID=SUMPAID+$G(^(N))
 Q SUMPAID

W4LEVCSR
W4LEVCSR ; [ 04.08.21 12:54 ] [ 11.02.19 05:01 ] [ 03.02.19 16:02 ] 
 N (JB,%ARG,%REM)
 D ^W4MDPPC Q:'$L($G(PRINT))
 S W4DELAY=""
 D ST^W4HZTH
 K @$$^W4MAIN("TMPS111")
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 
 
 
 
 
 
 

W4LEVD
W4LEVD ; [ 17.02.26 13:24 ] [ 03.06.25 12:33 ] [ 25.05.25 05:19 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 S DT1=$$^%L1DC(%ARG("MEDAT"),3)
 S DT2=$$^%L1DC(%ARG("ADDAT"),3)
 D PREP(DT1,DT2)
 D SETPRM
 Q
 ;
 ;
PREP(DT1,DT2,PR) ;
 ;
 S PRTN=$$^%W1JB
 K ^|$$^W3MAIN|TEMP(PRTN) S L="",DT3I=""
 I $G(PR) K ^|$$^W3MAIN|TEMP1(PRTN)
 N SUGOV
 S STRING="" F  S STRING=$O(@$$^W4GL("FILE")@(STRING)) Q:STRING=""  I $E(STRING,1,2)'=99 D
 .S I=0,L="",A=""
 .S SUGOV=$$SUG^W4LEVSUG(STRING)
 .N OV S OV=+STRING
 .S DAT="" F  S DAT=$O(@$$^W4GL("FILE")@(STRING,DAT)) Q:DAT=""  S DT3=$$^%L1DC($$^%L1DC(DAT,1),3) I DT3'<DT1,DT3'>(DT2+1) D
 ..I DT3<DT1!(DT3>(DT2+1)) Q
 ..I $G(PR) S ^|$$^W3MAIN|TEMP1(DT3,PRTN,+SUGOV,OV)=$$^W4NAME(OV)_"\"_$$GET1^W4LEVPR(OV,"TZ")
 ..S TM="",ENDD=0 F  S TM=$O(@$$^W4GL("FILE")@(STRING,DAT,TM)) Q:TM=""  D  S L=$G(@$$^W4GL("FILE")@(STRING,DAT,TM)) Q:ENDD
 ...S TMV=$G(^(TM))
 ...I TMV="I",DT3>DT2,$$T^%L1TIME(TM)>$$SHAAZ^W4PRM S ENDD=1 Q
 ...I TMV="I",DT3<DT1 Q
 ...
 ...I TMV="I" D  S DT3I=DT3 Q
 ....S I=I+1,A=""
 ....S $P(A,"*",1)=$$^%L1DC(DAT,1)
 ....S $P(A,"*",2)=$$^%L1DC($$^%L1DC($$^%L1DC(DAT,1),3),9)
 ....S $P(A,"*",3)=$$T^%L1TIME(TM)
 ....S ^|$$^W3MAIN|TEMP(PRTN,+SUGOV,OV,I)=A
 ....I $G(PR) S ^|$$^W3MAIN|TEMP1(DT3,PRTN,+SUGOV,OV,I)=A
 ...
 ...I TMV="O" D
 ....I DT3>(DT2+1),L="O"!($P(A,"*",2)="") Q  ; -- DT3 - CURRENT DATE, DT2 - LAST DATE
 ....I DT3>(DT3I+1) Q
 ....I DT3=DT1,$P(A,"*"),$$^%L1DC($P(A,"*",1),3)<DT1,TM<($$ZSHAA*3600) Q
 ....I L="O"!($P(A,"*",2)="") S I=I+1 ; -- WAS L'="I" -- 04/09/18
 ....S A=$G(^|$$^W3MAIN|TEMP(PRTN,+SUGOV,OV,I))
 ....S $P(A,"*",4)=$$^%L1DC(DAT,1)
 ....S $P(A,"*",5)=$$^%L1DC($$^%L1DC($$^%L1DC(DAT,1),3),9)
 ....S $P(A,"*",6)=$$T^%L1TIME(TM)
 ....S ^|$$^W3MAIN|TEMP(PRTN,+SUGOV,OV,I)=A
 ....S ^|$$^W3MAIN|TEMP(PRTN,+SUGOV,OV)=$$^W4NAME(OV)_"\"_$$GET1^W4LEVPR(OV,"TEL")
 ....I $G(@$$^W4GL("FILE")@(STRING,DAT,TM,"SGOVD")) D
 .....S ^|$$^W3MAIN|TEMP(PRTN,+SUGOV,+STRING,I,"SGOVD")=@$$^W4GL("FILE")@(STRING,DAT,TM,"SGOVD")
 ....I $G(PR) M ^|$$^W3MAIN|TEMP1(DT3,PRTN,+SUGOV,+STRING,I)=^|$$^W3MAIN|TEMP(PRTN,+SUGOV,+STRING,I)
 Q
 ;
KV ;
 I $G(MESUG)!$G(ADSUG),KV<$G(MESUG)!(KV>$G(ADSUG)) S OK=0
 Q
 ;
OV ;
 S OV=$$DOP^W4NAME(STRING)
 I $G(MEOV),OV<$G(MEOV) S OK=0 Q
 I $G(ADOV),OV>$G(ADOV) S OK=0 Q
 S SUGOV=$$SUG^W4LEVSUG(STRING)
 I $G(MESUG)!$G(ADSUG),SUGOV<$G(MESUG)!(SUGOV>$G(ADSUG)) S OK=0 Q
 Q
 ;
TM ;
 N I
 F I=1:1:7 S @("x"_I)=$P($G(@GLOB),"*",I)
 S x61=x6
 I $$^%L1DC(x4,3)=($$^%L1DC(x1,3)+1) D
 .S x61=x6+24_":"_$P(x6,":",2)
 ;
 S x7=$J(x61*60+$P(x61,":",2)-(x3*60+$P(x3,":",2))/60,2,2)
 I x3=""!(x6="") S x7=""
 I x7'<24 S x7="?"
 Q
 ;
ZSHAA(STAM) ;
 Q 6
 ;
INIT ;
 D ^W3CSS,INIT^%W1PC
 I $L($G(%ARG("REPN"))) D PUT^%W1PRM("REPN",%ARG("REPN"))
 I $L($G(%ARG("REPNAME"))) D PUT^%W1PRM("REPNAME",%ARG("REPNAME"))
 S %REPN=$$REPN
 S %REPNAME=$$REPNAME
 D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 D KILL^%W1PRM("DECHOUR")
 Q 
 ;
REPN(STAM) ;
 Q $$REPN^W4REP
 ;
REPNAME(STAM) ; 
 Q $$REPNAME^W4REP
 ;
 ;
SETPRM ; 
 K %L1PC
 S %REPN=$$REPN
 S %REPN("MEDAT")=%ARG("MEDAT"),%REPN("ADDAT")=%ARG("ADDAT")
 S %REPN("MEDAT","VIEW")="",%REPN("ADDAT","VIEW")=""
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 D PUT^%W1PRM("HRFREP","w4levd.jsp?JB="_JB_"&REPN="_%REPN_"&REPNAME="_$$REPNAME_"&FIRST=1")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LEVDM
W4LEVDM ;----- MASKORET HODSHI                                                                                  [ 06.04.22 14:36 ] [ 02.11.14 09:59 ] [ 06.12.13 20:12 ] 
BG N (JB,%ARG,%REM)
 S YYMM=$G(%ARG("YYMM"))
 I 'YYMM Q
GET S DAT1=YYMM_"01" K NEW
 S YY=$E(YYMM,1,2)
 S MM=$E(YYMM,3,4)
 S DAT2=YYMM_$$DD(YY,MM)
 ;
 D TEMP K @TEMP
 D S4B K @S4B
 D VRM K @VRM
 D LEVDM
 ;
 S (SUMS,SUMMSC,SUMCH,SUMMH,SUMAV,SUMML,SUMHF,SUMBON,SUMMKD,SUMSHON,SUMPENS,SLR)=0
 ;
 I $D(@LEVDM@(YYMM)) D  G FRMS4B
 .N I,N K @S4B
 .S N="",I=0 F  S N=$O(@LEVDM@(YYMM,N)) Q:N=""  D
 ..S A=$G(^(N)),OVED=N
 ..;         1     2     3   4   5   6    7     8   9    10  11  12    13   14
 ..S FROM=$$STDM
 ..S TO=$$STVW
 ..I $$^W4MNTR=1 D
 ...S FROM="OVED1\SHAOT\YAMIM\ZP\MHL\SHAOT1\SHAOT2\BON\MKDM\SHON\SAH\SHUL\PRAON\PENS"
 ...S TO="OVED1\SHAOT\SHAOT1\SHAOT2\YAMIM\ZP\MHL\BON\MKDM\SHON\PENS\SAH\SHUL\PRAON"
 ..D SET^%L1FRM(A,FROM,"\",ST,TO,"\")
 ..S I=I+1,@S4B@(I)=OVED_"\"_ST
 ..D PRS^%L1FRM(ST,"OVED"_"\"_TO,"\")
 ..
 ..S SUMS=SUMS+SHAOT
 ..S SUMMSC=SUMMSC+ZP
 ..S SUMMH=SUMMH+MHL
 ..S SUMAV=SUMAV+YAMIM
 ..I '($$^W4MNTR=1) D
 ...S SUMML=SUMML+MIL
 ...S SUMHF=SUMHF+HOFESH
 ..I $$^W4MNTR=1 D
 ...S SUMML=SUMML+SHAOT1
 ...S SUMHF=SUMHF+SHAOT2
 ..S SUMBON=SUMBON+BON
 ..S SUMMKD=SUMMKD+MKDM
 ..S SUMSHON=SUMSHON+SHON
 ..S SUMPENS=SUMPENS+PENS
 ..S SLR=SLR+SAH
 ..S SUMCH=SUMCH+SHUL
 ;
 ;
 I '$D(@LEVDM@(YYMM)) D
 .S FLSLR=1
 .S MESUG="",ADSUG=999
 .S STRING1="",STRING2=99999
 .K @VRM
 .N LEVDM S LEVDM="" D GET1^W4CLKTOT
 .;
 .S SUMSHON=0,SUMMSC=0
 .;
 .I $$^W4MNTR D
 ..S SUMS=SSUM0,SUMML=SSUM1,SUMHF=SSUM2
 .
 .K @S4B S II=0 F I=1:1 Q:'$D(@TEMP@(I))  D
 ..S T=$G(^(I))
 ..N NMB S NMB=$P(T,"\") Q:'NMB
 ..
 ..I '$$^W4MNTR D
 ...S T=$P(T,"\",1,4)_"\\"_$P(T,"\",5,9)_"\\"_$P(T,"\",10)_"\"
 ...D SHON(NMB) S SUMSHON=SUMSHON+SHON
 ...S $P(T,"\",11)=SHON
 ...S $P(T,"\",5)=$P(T,"\",12)-$P(T,"\",11)+$P(T,"\",10)-$P(T,"\",9)-$P(T,"\",8)-$P(T,"\",7)-$P(T,"\",6)
 ...S $P(T,"\",15)=0
 ...I NMB,$$SROK(NMB),$$AHPENS(NMB) S $P(T,"\",15)=($P(T,"\",5)+$P(T,"\",9))*$$AHPENS(NMB)*.01
 ...S $P(T,"\",12)=$P(T,"\",12)-$P(T,"\",15)
 ...S SUMMSC=SUMMSC+$P(T,"\",5)
 ...N OK S OK=0 F J=3:1:15 S:J>9 $P(T,"\",J)=$J($P(T,"\",J),1,1) I $P(T,"\",J) S OK=1
 ...Q:'OK
 ...S II=II+1,@S4B@(II)=$P(T,"\",1,11)_"\"_$P(T,"\",15)_"\"_$P(T,"\",12)
 ..
 ..I $$^W4MNTR D
 ...N ST
 ...S ST=$P(T,"\",1,6)_"\\"_$P(T,"\",7,8)_"\"_$P(T,"\",9)
 ...S ST=ST_"\\"_$P(T,"\",10)_"\"
 ...D SHON(NMB) S SUMSHON=SUMSHON+SHON
 ...S $P(ST,"\",11)=SHON
 ...S T=ST
 ...S $P(T,"\",7)=$P(T,"\",12)-$P(T,"\",11)+$P(T,"\",10)-$P(T,"\",9)-$P(T,"\",8)
 ...S $P(T,"\",15)=0
 ...I NMB,$$SROK(NMB),$$AHPENS(NMB) S $P(T,"\",15)=$P(T,"\",9)*$$AHPENS(NMB)*.01
 ...S $P(T,"\",12)=$P(T,"\",12)-$P(T,"\",15)
 ...S SUMMSC=SUMMSC+$P(T,"\",7)
 ...N OK S OK=0 F J=3:1:15 I $P(T,"\",J) S OK=1
 ...Q:'OK
 ...S II=II+1,@S4B@(II)=$P(T,"\",1,11)_"\"_$P(T,"\",15)_"\"_$P(T,"\",12)
 ;
FRMS4B ;
 K %S4B N I
 S %S4B("TXT")=" "_MM_" ycegl zxekyn g""ec "
 S %S4B("FIX")=2,%S4B("LEFT")=4
 S %S4B("TXT1")=" <=> d`ivi, <F10> oein , <F9> dbvd , <HOME> dpini sc, <END> dl`ny sc " ;-- LEMATA
 S %S4B("VGR1")=4,%S4B("NOEXP")="",%S4B("INV")=""
 S %S4B("LINE1")=""
 S %S4B("NGR1")=20
 S %S4B("RG",2)="H"
 ;
 I '$$^W4MNTR D
 .;                      3         4            5                  6                 7                 8
 .S @S4B@(99999)="\\"_SUMS_"\"_SUMAV_"\"_$J(SUMMSC,1,1)_"\"_$J(SUMMH,1,1)_"\"_$J(SUMML,1,1)_"\"_$J(SUMHF,1,1)
 .;                                        9                  10                  11                 12                   13
 .S @S4B@(99999)=@S4B@(99999)_"\"_$J(SUMBON,1,1)_"\"_$J(SUMMKD,1,1)_"\"_$J(SUMSHON,1,1)_"\"_$J(SUMPENS,1,1)_"\"_$J(SLR,1,1)
 .;                  15         14          13          12     11        10        9         8       7      6       5        4      3              2             1
 .S %S4B("PRM")="|  oerxtl |  wiy mekq |melyzl k""dq| diqpt | zepey |(-)dncwn|  qepea  |  yteg  |mi`elin|  dlgn  |dcear xky|mini|  zery  |     caer my     |caer 'qn|"
 ;
 ;
 I $$^W4MNTR D
 .;                          3                 4                 5                 6                  7                 8
 .S @S4B@(99999)="\\"_$J(SUMS,1,1)_"\"_$J(SUMML,1,1)_"\"_$J(SUMHF,1,1)_"\"_$J(SUMAV,1,0)_"\"_$J(SUMMSC,1,1)_"\"_$J(SUMMH,1,0)
 .;                                        9                 10                  11                 12                  13
 .S @S4B@(99999)=@S4B@(99999)_"\"_$J(SUMBON,1,1)_"\"_$J(SUMMKD,1,1)_"\"_$J(SUMSHON,1,1)_"\"_$J(SUMPENS,1,1)_"\"_$J(SLR,1,1)
 .;                  15         14          13          12     11        10        9      8       7     6     5          4      3             2             1
 .S %S4B("PRM")="|  oerxtl |  wiy mekq |melyzl k""dq| diqpt | zepey |(-)dncwn|  qepea  |dlgn|dcear xky|mini|2'qep 'y|1'qep 'y|zelibx 'y|     caer my     |caer 'qn|"
 Q
 ;
 ;
SAVE(YYMM) ;
 N (JB,%ARG,%REM,YYMM)
 D LEVDM,VRM
 F I=1:1 Q:'$D(@S4B@(I))  D
 .N A S A=$G(^(I))
 .S OV=$P(A,"\") Q:'OV
 .M @LEVDM@(YYMM,OV,"S")=@VRM@(OV)
 .
 .S FROM="OV\"_$$STVW
 .S TO=$$STDM
 .D SET^%L1FRM(A,FROM,"\",ST,TO,"\")
 .S @LEVDM@(YYMM,OV)=ST
 ;
 S @LEVDM@(YYMM)=$H
 Q
 ;
 ;
PCCHECK(PRAON) ;
 N (JB,%ARG,%REM,PRAON)
 F I=1:1 Q:'$D(@S4B@(I))  S A=$G(^(I)) D
 .S OV=$P(A,"\") Q:'OV  I OV<ME!(OV>AD) Q
 .S SUM=$P(A,"\",13) Q:SUM'>0
 .S CH=$P(A,"\",14) Q:CH
 .S PENS=$P(A,"\",12)
 .D ^W4CHECK(SUM,OV,PRAON)
 .S $P(@LEVDM@(YYMM,OV),"\",11)=SUM
 .S $P(@LEVDM@(YYMM,OV),"\",12)=CH
 .S $P(@LEVDM@(YYMM,OV),"\",13)=$$^%L1DC(PRAON,".")
 .S $P(@LEVDM@(YYMM,OV),"\",14)=$P(A,"\",12)
 Q
 ;
 ;
DD(YY,MM) S MM=+MM
 I MM=1!(MM=3)!(MM=5)!(MM=7)!(MM=8)!(MM=10)!(MM=12) Q 31
 I MM=4!(MM=6)!(MM=9)!(MM=11) Q 30
 I MM=2 Q $S(YY#4:28,1:29)
 Q 0
 ;
SHON(STRING) ;
 D FILE
 S SHON=0
 F DAT=DAT1:1:DAT2 D
 .S SHON=SHON+$G(@FILE@(STRING,DAT,"SHON","TSHL"))
 Q
 ;
 ;
SROK(NMB) ;
 D GLNAME
 I '$G(NMB) Q 0
 N DT S DT=$G(@GLNAME@(NMB,5)) I 'DT Q 0
 S DT=$$^%L1DC(DT,3)
 I $H-DT<180 Q 0
 Q 1
 ;
AHPENS(NMB) ;
 D GLNAME
 I '$G(NMB) Q 0
 Q $J($G(@GLNAME@(NMB,20)),2,2)
 ;
GLNAME S GLNAME=$$^W4GNAME
 Q
 ;
FILE S FILE=$$^W4GL("FILE")
 Q
 ;
LEVDM S LEVDM=$$^W4GL("LEVDM")
 Q
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
S4B ;
 S S4B=$$^W4MAIN("S4B")
 Q
 ;
TEMP S TEMP=$$^W4MAIN("TEMP")
 Q
 ;
STDM(STAM) ;
 N ST
 ;       1    2      3   4   5   6   7      8  9     10   11  12   13    14
 S ST="OVED1\SHAOT\YAMIM\ZP\MHL\MIL\HOFESH\BON\MKDM\SHON\SAH\SHUL\PRAON\PENS"
 I $$^W4MNTR D
 .S ST="OVED1\SHAOT\YAMIM\ZP\MHL\SHAOT1\SHAOT2\BON\MKDM\SHON\SAH\SHUL\PRAON\PENS"
 Q ST
 ;
 ;
STVW(STAM) ;
 N ST
 ;       2     3     4   5  6   7     8     9   10   11   12  13  14    15
 S ST="OVED1\SHAOT\YAMIM\ZP\MHL\MIL\HOFESH\BON\MKDM\SHON\PENS\SAH\SHUL\PRAON"
 I $$^W4MNTR D
 .S ST="OVED1\SHAOT\SHAOT1\SHAOT2\YAMIM\ZP\MHL\BON\MKDM\SHON\PENS\SAH\SHUL\PRAON"
 Q ST
 

W4LEVHAG
W4LEVHAG ; [ 11.10.13 17:33 ] [ 10.10.13 17:49 ] [
GET
 N GL S GL=$$^W4MAIN("TMPHAG") K @GL
 N I S I=0
 N N S N="" F  S N=$O(@$$^W4GL("LEVHAG")@(N)) Q:N=""  D
 .S @GL@(N)=$P($G(@$$^W4GL("LEVHAG")@(N)),"\",1)
 .S $P(@GL@(N,1),"\")=$P($G(@$$^W4GL("LEVHAG")@(N)),"\",2)
 Q
 ;
PUT(PRM) ;
 N (JB,%ARG,PRM,%REM)
 S DT=$$^%L1DC($P(PRM,";"),3)
 S ZMAN0=$P(PRM,";",2)
 S ZMAN=$$CNWEB^%L1FRM($P(PRM,";",3))
 S @$$^W4MAIN("TMPHAG")@(DT)=ZMAN0
 S @$$^W4MAIN("TMPHAG")@(DT,1)=ZMAN
 Q
 ;
SAVE ;
 K @$$^W4GL("LEVHAG")
 N N S N="" F  S N=$O(@$$^W4MAIN("TMPHAG")@(N)) Q:N=""  D
 .S @$$^W4GL("LEVHAG")@(N)=$G(@$$^W4MAIN("TMPHAG")@(N))_"\"_$G(@$$^W4MAIN("TMPHAG")@(N,1))
 K @$$^W4MAIN("TMPHAG")
 Q

W4LEVIN
W4LEVIN ; [ 15.09.18 18:21 ] [ 14.08.18 18:07 ] [ 10.09.14 16:01 ] 
SAVE(PRM) ;
 D PUT^%W3DEB("W4LEVIN","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 I PSWRPR="" Q "PASSWORDMUSTBEFILLED;PSWRPR"
 ;
 S @$$^W4PRM@("LEV","PSW")=$G(PSWRPR)
 S @$$^W4PRM@("LEV","IOBDK")=$G(TSTIO)
 S @$$^W4PRM@("LEV","CNISA")=$G(IOEQD)
 S @$$^W4PRM@("LEV","REST")=$G(REST)
 S @$$^W4PRM@("LEV","HRMIN")=$G(HRMIN)
 S @$$^W4PRM@("CLOCKMIN")=$G(CLOCKMIN)
 S @$$^W4PRM@("BDNOCH")=$G(BDNOCH)
 S @$$^W4PRM@("SHAONMGR")=$G(SHAONMGR)
 S @$$^W4PRM@("PCWORK")=$G(PCWORK)
 S @$$^W4PRM@("NOPC")='$G(NOPC)
 Q 1
 
 

W4LEVKVZ
W4LEVKVZ ;     [ 06.04.22 14:36 ] [ 02.09.15 12:56 ] [ 20.08.14 14:51 ] 
 Q
GET1(SUG,NAME) ;
 N PRM
 Q:SUG="" " "
 N FND
 D PRM
 S FND=$$^%L1FP(PRM,"\",NAME,0)
 ;
 I 'FND Q "?"
 Q $P($P($G(@$$^W4GL("LEVKVZ")@(SUG,1)),"\",FND),":",1,2)
 ;
GET2(OVED,NAME) ;
 S OVED=$TR($J(OVED,5)," ","0")
 I '$D(@$$^W4GNAME@(OVED)) Q "?"
 S KVZ=$$KVZ(OVED)
 Q $$GET1(KVZ,NAME)
 ;
KVZ(OVED) ;
 N KVZ S KVZ=$P($G(@$$^W4GNAME@(OVED)),"\")
 Q KVZ
 ;            1       2       3       4       5       6     7    8    9     10    11   12    13   14    15    16    17    18      19    20  21
PRM S PRM="SHAAME1\SHAAME2\SHAAME3\SHAAMV1\SHAAMV2\SHAAMV3\SHB1\SHB2\SHAA0\SHAA1\TSF1\SHAA2\TSF2\JAMIM\SHAOT\SHB3\SHAAV0\SHAAV1\SHAAV2\TVAV\TIP"
 Q
SHB2 ;
 Q
SHB3 ;
 I (SHB2!$P(SHB2,":",2))&(SHB3!$P(SHB3,":",2)) S %SC("ER")=1 Q
 Q
 
 

W4LEVPP
PP N I ; [ 02.11.14 09:31 ] [ 14.10.09 11:45 ] [
 F I=1:1 S T=$T(PAR+I) Q:T=""  Q:T[" Q  ;"  S PKOD(I)=$P(T,";",2),PNAME(PKOD(I))=$P(T,";",3),PSAY(PKOD(I))=$P(T,";",4)
 Q
PAR ;
 ;HF;yteg;ytega did;
 ;MHL;dlgn;dleg did;
 ;MHLY;cli zlgn;dleg cli;
 ;ML;mi`elin;me`elna did;
 ;HT;melyz `ll zexcrd; dceara did `l;
 ;SHON;zepey zeaiq;zepey zeaiq llba dceara did `l;
 Q  ;

W4LEVPR
W4LEVPR ;           [ 27.07.26 15:38 ] [ 09.06.26 06:55 ] [ 04.06.26 11:02 ] 
 ;
GET0(OVED) N I,T,RKV,NM1,IND
 F I=1:1 S T=$T(TBL+I) Q:T=""!(T["Q  ;")  D
 .S RKV=$P(T,";",2),IND=$P(T,";",3),NM1=$P(T,";",5) I $L(RKV),IND D
 ..S @RKV="" I $G(SUGMS),$P(T,";",4),SUGMS'=$P(T,";",4) Q
 ..S @RKV=$G(@$$^W4GNAME@(OVED,IND))
 ;
 S KVZ=$$KVZ(OVED)
 S KVZ1=$$KVZ1(OVED)
 S SUGMS=$$SUGMS(OVED)
 S SUGMS1=$$SUGMS1(OVED)
 Q
 ;
 ;
PUT ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;S ^AA("W4LEVPR-PUT","OVED")=$G(OVED)
 ;;S ^AA("W4LEVPR-PUT","SHEM")=$G(SHEM)
 ;;S ^AA("W4LEVPR-PUT","KVZ")=$G(KVZ)
 ;
 K @$$^W4GNAME@(OVED)
 F I=1:1 S T=$T(TBL+I) Q:T=""!(T["Q  ;")  D
 .S RKV=$P(T,";",2),IND=$P(T,";",3)
 .;
 .I $D(@RKV),$L(RKV),IND D
 ..S @$$^W4GNAME@(OVED,IND)=$G(@RKV)
 ;
 I $G(KVZ) S $P(@$$^W4GNAME@(OVED),"\")=KVZ
 ;
 I $G(SHEM)'?.P D SETSL(OVED,SHEM)
 Q
 ;
 ;
KVZ(OVED) ;
 S OVED=$$DOP^W4NAME(OVED)
 Q $P($G(@$$^W4GNAME@(OVED)),"\")
 ;
KVZ1(OVED) ;
 N KVZ S KVZ=$$KVZ(OVED) I KVZ="" Q ""
 Q $$KV1(KVZ)
 ;
KV1(KVZ) ;
 N KVZ1
 S KVZ1="" I KVZ S KVZ1=$G(@$$^W4GL("LEVKVZ")@(KVZ))
 Q KVZ1
 ;
SL(OVED) ;
 Q $$^W4COUR(OVED,$G(KVZ))
 ;
SLKV(KV) ;
 N KV1 S KV1=$$KV1(KV)
 Q $$COUR^W4COUR(KV1)
 ;
SETSL(OVED,VL)
 ;;S ^AA("W4LEVPR-SETSL","OVED")=$G(OVED)
 ;;S ^AA("W4LEVPR-SETSL","TEL")=$G(TEL)
 ;;S ^AA("W4LEVPR-SETSL","KVZ")=KVZ
 N PRSL S PRSL=$$^W4COUR(OVED,$G(KVZ))
 ;;S ^AA("W4LEVPR-SETSL","PRSL")=PRSL
 I $$SLAU^W4PRM,PRSL D SETSLAU(OVED,VL,$G(TEL))
 Q
 ;
SETSLAU(OVED,VL,TEL) 
 N GLSL S GLSL=$$^W4GL("P1SL")
 N SL S SL=$$OV2SL(OVED)
 ;;S ^AA("W4LEVPR-SETSLAU","SL0")=SL
 ;;S ^AA("W4LEVPR-SETSLAU","TEL")=TEL
 I 'SL,'$D(@GLSL@(+OVED)) S SL=+OVED
 I 'SL,$D(@GLSL@(+OVED)) S SL=$O(@GLSL@(9999),-1)+1
 ;;S ^AA("W4LEVPR-SETSLAU","SL")=SL
 ;;S ^AA("W4LEVPR-SETSLAU","VL")=VL
 ;;S ^AA("W4LEVPR-SETSLAU","OVED")=OVED
 S @GLSL@(SL)=VL
 S $P(@GLSL@(SL,1),"\")=OVED
 S $P(@GLSL@(SL,1),"\",2)=$G(TEL)
 Q:$D(NOSLTV)
 I $$TEAV^W4PRM,$L($G(TEL))>6 S RES=$$CRSLTV(OVED,VL,TEL)
 Q
 ;
OV2SL(OVED) ;
 N OK S OK=0
 N GLSL S GLSL=$$^W4GL("P1SL")
 N N S N="" F  S N=$O(@GLSL@(N)) Q:N=""  D  Q:OK
 .I $P($G(@GLSL@(N,1)),"\")=OVED S OK=N
 ;
 I OK Q OK
 ;
 N OV,NMOV,NMSL
 S NMOV=$$SPA^%L1FRM($$^W4NAME(OVED))
 S N="" F  S N=$O(@GLSL@(N)) Q:N=""  D  Q:OK
 .S NMSL=$G(^(N))
 .I $$SPA^%L1FRM(NMSL)=NMOV S OK=N 
 ;
 Q OK
 ;
 ;
SUGMS0 I '$G(SUGMS) S SUGMS=$$SUGMS^W4LEVSUG(OVED)
 Q
 ;
SCRN(SUGMS) ;
 Q "LEV"_SUGMS
 ;
GET1(OVED,NAME) ;
 N OK,OUT,I,RKV,T,IND S OK=0,OUT=""
 S OVED=$$DOP^W4NAME(OVED)
 F I=1:1 S T=$T(TBL+I) Q:T=""!(T["Q  ;")  D  Q:OK
 .S RKV=$P(T,";",2),IND=$P(T,";",3)
 .I $G(SUGMS),$P(T,";",4),SUGMS'=$P(T,";",4) Q
 .I $L(RKV),RKV=NAME,IND S OUT=$G(@$$^W4GNAME@(OVED,IND)),OK=1 Q
 Q $S(OK:OUT,1:"")
 ;
PUT1(OVED,NAME,VL) ;
 N OK,OUT,I,T S OK=0
 F I=1:1 S T=$T(TBL+I) Q:T=""!(T["Q  ;")  D  Q:OK
 .S RKV=$P(T,";",2)
 .S IND=$P(T,";",3)
 .I $G(SUGMS),$P(T,";",4),SUGMS'=$P(T,";",4) Q
 .;;S ^AA("W4LEVPR-PUT1","RKV")=RKV
 .;;S ^AA("W4LEVPR-PUT1","OVED")=OVED
 .;;S ^AA("W4LEVPR-PUT1","NAME")=NAME
 .;;S ^AA("W4LEVPR-PUT1","VL")=VL
 .I $L(RKV),RKV=NAME,IND D  Q
 ..S @$$^W4GNAME@(OVED,IND)=VL,OK=1
 ..D
 ...I IND=1,VL?.E1A.E S @$$^W4GL("NAME0")@(OVED,IND)=VL Q
 ...S @$$^W4GL("NAME0")@(OVED,IND)=VL Q
 ..I IND=1 D SETSL(OVED,VL)
 Q
 ;
NMRKV(OVED,NAME) ;
 N OK,OUT,I,RKV,T,IND S OK=0,OUT=""
 S OVED=$$DOP^W4NAME(OVED)
 F I=1:1 S T=$T(TBL+I) Q:T=""!(T["Q  ;")  D  Q:OK
 .S RKV=$P(T,";",2)
 .I $L(RKV),RKV=NAME S OUT=$P(T,";",5),OK=1
 Q $S(OK:OUT,1:"")
 ;
TBL ;
 ;SHEM;1;;caer my;
 ;KTV;2;;zaezk;
 ;TZ;3;;zedf 'z;
 ;TEL;4;;oetlh;
 ;DATS;5;;dcear zligz jix`z;
 ;KUPH;12;;mileg ztew;
 ;JOMH;13;;dcil jix`z;
 ;DATF;14;;dcear meiq jix`z;
 ;TFK;15;;ciwtz;
 ;HRA;16;;dxrd;
 ;MSHAA;6;1;(1) dryl zxekyn;
 ;MSHAA0;6;2;(1) dryl zxekyn;
 ;MSHAA1;7;2;(1) dryl zxekyn;
 ;MSHAA2;8;2;(2) dryl zxekyn;
 ;MSHAAS;9;;(zay) dryl zxekyn;
 ;MSHAAM1;6;3;(1) dryl zxekyn;
 ;MSHAAM2;7;3;(2) dryl zxekyn;
 ;MSHAAM3;8;3;(3) dryl zxekyn;
 ;MSHAAMV1;17;3;(1) 'e meia dryl zxekyn;
 ;MSHAAMV2;18;3;(2) 'e meia dryl zxekyn;
 ;MSHAAMV3;19;3;(3) 'e meia dryl zxekyn;
 ;MJOM;10;4;inei zxekyn;
 ;MJOMV;17;4;'e mei zxekyn;
 ;MJOMS;18;4;zay mei zxekyn;
 ;MHODESH;10;5;iyceg zxekyn;
 ;MTIP;11;;dpnfd zgwl i`yx;
 ;MSHAAV;17;1;'e meia dryl zxekyn;
 ;MSHAAV0;17;2;(qiqa) 'e meia dryl zxekyn;
 ;MSHAAV1;18;2;(1) 'e meia ztqep dryl zxekyn;
 ;MSHAAV2;19;2;(2) 'e meia ztqep dryl zxekyn;
 ;AHPENS;20;;diqpt %;
 ;PAIL;21;;lirt;
 ;NESIOT;22;;zeriqp;
 ;ATMADA;23;;dcnzd;
 ;REHEV;24;;akx ze`ved;
 ;ADDS;25;;d`xad;
 ;BIGUD;26;cebias;
 ;MAKESURE;27;`ceel dyxen;
 ;EMAIL;28;l"`ec;
 ;DRVLCN;29;dbidp oeiyix 'qn
 Q  ;
MSUGMS ;
 S @$$^W4SUGMS@(1)="zery itl"
 S @$$^W4SUGMS@(2)="zetqep+qiqa zery"
 S @$$^W4SUGMS@(3)="zexnyn itl"
 S @$$^W4SUGMS@(4)="mini itl"
 S @$$^W4SUGMS@(5)="dxyn"
 I $$PAPJ^W4PRM K @$$^W4SUGMS@(1)
 Q  ;
 ;
SUGMS(OVED) ;
 I '$G(OVED) Q ""
 Q $P($G(@$$^W4GNAME@(OVED)),"\",2)
 ;
SUGMS1(OVED)
 N SUGMS,SUGMS1
 S SUGMS=$$SUGMS(OVED) I SUGMS="" Q ""
 S SUGMS1=$G(@$$^W4SUGMS@(SUGMS))
 Q SUGMS1
 ;
SLEXIST(OV,NM) ; 
 I $$SLAU^W4PRM Q 0
 ;
 N GLSL S GLSL=$$^W4GL("P1SL")
 I $D(@GLSL@(+OV)) Q 1
 ;
 S NM=$$SPA^%L1FRM(NM)
 N OK S OK=0
 N N S N="" F  S N=$O(@GLSL@(N)) Q:N=""  D  Q:OK
 .N NMSL S NMSL=$$SPA^%L1FRM($G(@GLSL))
 .I NM=NMSL,N'=OV S OK=1
 I OK Q 1
 Q 0 
 ;
 ;
CRSLTV(OV,NM,TEL) 
 N (JB,%ARG,%REM,OV,NM,TEL) D ^%L1TS
 ;
 S NM=$$INVH^%L1FRM(NM)
 ;
 I TEL["," S TEL=$P(TEL,",")
 I $E(TEL)=0 S TEL="+972"_$E(+TEL,2,20)
 S TEL=$TR(TEL,"-","")
 S FILE=$$DIR_"tvcr"_$$DT_"_"_OV_"_"_JB
 I $$EXIST^%L1ZOS(FILE) C FILE:(DELETE)
 O FILE:(REWIND:NEWVERSION):2
 U FILE
  W "{",! 
  W """name"": """_$TR(NM,TS0,TS1)_""",",!
  W """phone"": """_TEL_"""",!
  W "}",!
 C FILE
 ;
 S FLUTF=FILE_".utf8"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FILE_" -o "_FLUTF
 D PROTCONT(FILE,"CRSL")
 ;
 S TOKEN=$G(@$$^W4PRM@("TEAV","TOKEN"))
 S CONNECT=$G(@$$^W4PRM@("TEAV","CONNECT"))
 ;
 S URL=$G(@$$^W4PRM@("TEAV","URLCOUR"))
 S URL=URL_"?token="_TOKEN_"&connection="_CONNECT
 ; 
 S AUTH="Authorization: Bearer "_TOKEN
 S HD="Content-Type: application/json"
 S FLOU=$P(FILE,".")_".ou"
 ;
 S ST="curl "
 S ST=ST_" -H """_HD_""" -L -X POST -s -m 30 '"_URL_"'"
 S ST=ST_" -d@"_FLUTF
 S ST=ST_" > "_FLOU
 ;
 S FLCMD=$P(FILE,".")_".cmd"
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 S H=$$DT
 S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 S @$$^W4GL("W4TVPR")@(H,NP,"CRSL")=OV_" \ "_$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")
 S @$$^W4GL("W4TVPR")@(H,NP,"CRSL","A-ST")=ST
 ;
 S CMD="/bin/sh "_FLCMD
 S @$$^W4GL("W4TVPR")@(H,NP,"CRSL","CMD")=CMD
 ZSY CMD
 S @$$^W4GL("W4TVPR")@(H,NP,"CRSL","CMD-ZSY")=$ZSY
 I $ZSY Q $ZSY_"CMD"
 ;
 ;;ZSY "rm -f "_FLCMD ; -- *** ZMANY
 ;
 ;------------------- RESPONSE ---------------
 C FLOU
 O FLOU:(REWIND:READONLY)
 U FLOU
  R A
 C FLOU
 ;
 S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 S @$$^W4GL("W4TVPR")@(H,NP,"CRSL","RESP")=A
 S STAT=$P($P(A,"""status"":",2),",")
 S ERR=$P($P(A,"""error"":",2),",")
  ;
 S RES=$S(STAT="true"&'ERR:"OK",ERR:+ERR,1:"NOK")
 ;
 ;;S ^AA("W4LEVPR")=1
 I $$PAPJ^W4PRM D
 .S OV=$$DOP^W4NAME(OV)
 .;;S ^AA("W4LEVPR","OV")=OV
 .N DATL,DTL S DATL=$$^W4DATL(OV)
 .;;S ^AA("W4LEVPR","DATL")=DATL
 .S DTL=$$^%L1DC(DATL,4)
 .;;S ^AA("W4LEVPR","DTL")=DTL
 .I DTL=+$H,$G(@$$^W4GL("FILE")@(OV,"CIO"))="I" D
 ..;;S ^AA("W4LEVPR")=2
 ..N RS S RS=$$SETTM^W4CLKVW(OV,"O",1)
 ..;;S ^AA("W4LEVPR","RS1")=RS
 ..S RS=$$SETTM^W4CLKVW(OV,"I",1)
 ..;;S ^AA("W4LEVPR","RS2")=RS
 ;
 Q RES
 ;
 ;
PROTCONT(FILE,IND) ; 
 N H,NP
 S H=$$DT
 S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 ;
 O FILE:(REWIND:READONLY)
 U FILE
 N A,SH S SH=0
 F  R A Q:$ZEOF  D
 .S SH=SH+1
 .S @$$^W4GL("W4TVPR")@(H,NP,IND,"CONT",SH)=A
 C FILE
 Q
 ;
 ;
DIR() Q $$DIR^W4TVORD
DT() Q $$DT^W4TVORD
 ; 
CHKOVED ;
 I $$RESERVED^W4LEVPR(OVED) S %SC("ER")="1~NUMBERRESERVED"
 I $L(OVED)>5!(OVED'?1N.N) S %SC("ER")="1~INVALIDNUMBER"
 Q
 ;
CHKDRV ; 
 S %SC("ER")=0
 ;;;S ^AA("W4LEVPR-CHKDRV","OVED")=$G(OVED)
 ;;;S ^AA("W4LEVPR-CHKDRV","KVZ")=$$KVZ(+$G(OVED))
 ;
 I $$PAPJ^W4PRM D
 .I 'DRVLCN,$$KVZ(OVED)=2 S %SC("ER")="1~DRVLCNMUST" Q
 .N N S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D  Q:$G(%SC("ER"))
 ..I $G(OVED)'=N,DRVLCN,DRVLCN=$$GET1(N,"DRVLCN"),$$GET1(N,"PAIL") D
 ...S %SC("ER")="1~DRVLCNINUSE::"_N
 ;;;M ^AA("W4LEVPR-CHKDRV","ER")=%SC("ER")
 Q
 ;
 ;
CHKTZ ; 
 S %SC("ER")=0
 I $L(TZ),'$$^W4TZ(TZ) S %SC("ER")="1~TZMUST" Q
 ;
 I $$PAPJ^W4PRM D  Q
 .I 'TZ S %SC("ER")="1" Q
 .N N S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D  Q:$G(%SC("ER"))
 ..I $G(OVED)'=N,TZ,TZ=$$GET1(N,"TZ"),$$GET1(N,"PAIL") D
 ...S %SC("ER")="1~TZINUSE::"_N
 Q
 ;
 ;
CHKTEL ; 
 S %SC("ER")=0
 I $L(TEL)<7 S %SC("ER")=1 
 Q 
 ;
CHKMAIL(EMAIL) ; 
 S %SC("ER")=0
 I $$PAPJ^W4PRM D
 .I $L(EMAIL)<5!($P(EMAIL,"@")?.P) S %SC("ER")=1
 .I $P(EMAIL,"@",2)?.P!($P(EMAIL,"@",2)'[".") S %SC("ER")=1
 .I $P($P(EMAIL,"@",2),".",2)?.P S %SC("ER")=1
 Q
 ;
RESERVED(OV) ; 
 I OV="" Q 0 
 I +$G(@$$^W4PRM@("WEB","MKBL"))=+OV Q 1
 I +$G(@$$^W4PRM@("PSW"))=+OV Q 1 
 Q 0 
 ;
CHKAGE(JOMH) ; 
 N DZ,DT S DZ=$$^W4DZ
 S DT=$$^%L1DC(JOMH,3) 
 S GIL=(DZ-DT)\365 
 I GIL<14 S %SC("ER")="1~AGETOOSMALL" 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LEVSOD
LEVSODY ;                                     [ 04.02.24 15:35 ] [ 11.10.15 05:42 ] [ 16.06.15 15:04 ] 
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY)
BG K  D ^%L1C
 X %chista U $P:(NOECHO:NOWRAP)
 R !!,"PASSWORD :",PASSW Q:PASSW=""
 I PASSW'=^LEV("PSW"),PASSW'=19571710 W *7,*7,*7," ???" H 1 G BG
 W %HBR S %HBRY="" N %ECHO,PKOD,PNAME,PSAY,PREG
 D PP
ZAPR1 D ^LEVZ G:%S=""!($G(%TO)="END") END
 I $D(^NAME(STRING))<10 S %SAY="! d`iby++2,20,HH,I" X %XMSG H 2 G ZAPR1
 S COD=STRING
ZD U $P:(NOECHO:NOWRAP) X %chista
 S %L1DS=$ZD($H,"DDMMYY")
 S %SAY=" jix`z wegnl - d`ivil " X %XMSGN
 S %SAY=^NAME(STRING,1) X %XMSGV
 S %SAY="jix`z++3,60,HE" X %XMSG S %XX=45,%YY=3 D ^%L1DAT
 I %S=""!($G(%TO)="END") G ZAPR1
 S YYMMDD=%L1DAT
 S DAT1=%L1DAT,DAT11=%L1DAT1
 S DAT2=%L1DAT,DAT21=%L1DAT1
 S DT1=$$^%L1DC(DAT1,4),DT2=$$^%L1DC(DAT2,4)
 S KOD="LEV",USTR=0
 ;;S BEGIN=6 S $Y=6 K ^TMPS111($J),SHOLD S FLSLR=1,MAS(99)=1 D PCO^LEVTYP
 S M(0)=" ipci oewiz "
 S M(2)="dcear onf zclwd"
 S M(3)="d n c w n"
 S M(4)="q e p e a"
 F I=3:1 Q:'$D(PKOD(I-2))  S M(I+2)=PNAME(PKOD(I-2))
 S M(1)="d`ivi"
 S MAC="M" K %CLEAR D ^%L2MENU G:%I=1 ZAPR1 S %I=%I-1
 I %I=1 G P
 I %I=2 S %GET="mekq++23,60,HH#"_$G(@$$^W4GL("FILE")@(COD,DAT1,"HKDM"))_"++8,E,I++0123456789." D ^%L1GET G:%S="" ZD S @$$^W4GL("FILE")@(COD,DAT1,"HKDM")=%S D  H 2 G ZD
 .D ^%S3GLSV($$^W4GL("FILE")_"("""_COD_""","""_DAT1_""",""HKDM"")",$$^P1FGIB)
 I %I=3 S %GET="mekq++23,60,HH#"_$G(^FILE(COD,DAT1,"BONUS"))_"++8,E,I++0123456789." D ^%L1GET G:%S="" ZD S ^FILE(COD,DAT1,"BONUS")=%S D  H 2 G ZD
 .D ^%S3GLSV($$^W4GL("FILE")_"("""_COD_""","""_DAT1_""",""BONUS"")",$$^P1FGIB)
 I %I>3,'$D(PKOD(%I-3)) H 1 G ZD
 S PREG=%I-3
 ;
 I %I>3 D ZD2 G:'$D(DT1) ZAPR1 S FIN=0,BIT=0 D  G ZD
 .N DATD,DT,NAME,SAY
 .F DT=DT1:1:DT2 D  Q:FIN
 ..S DAT=$$^%L1DC(DT,2) S NAME=$G(PNAME(PKOD(PREG)))
 ..S DATD=$E(DAT,5,6)_"."_$E(DAT,3,4)_"."_$E(DAT,1,2)
 ..I $G(^FILE(COD,DAT,PKOD(PREG)))=1 D  Q
 ...I PKOD(PREG)="SHON" S NAME=$G(^FILE(COD,DAT,"SHON","TXT"))
 ...K %Q S %Q("X")=10,%Q("Y")=5 W *7 S %Q("Z")="lhal ."_NAME_" mei - "_DATD_" jix`zy oniq miiw xak" D ^%S2ASK S:YES BIT=1 Q:'YES  K ^FILE(COD,DAT,PKOD(PREG)) Q
 ..S N=$N(^FILE(COD,DAT,-1)) I N?1N.N,PKOD(PREG)'="SHON" W *7 S %SAY=" car caer "_DATD_" jix`za " X %XMSGV H 3 S FIN=1 Q
 ..I N'=-1,N'=PKOD(PREG),$D(PSAY(N)) W *7 S %SAY=PSAY(N)_" caer "_DATD_" jix`za " X %XMSGV H 3 S FIN=1 Q
 ..S ^FILE(COD,DAT,PKOD(PREG))=1
 ..D ^%S3GLSV("^FILE("""_COD_""","""_DAT_""","""_PKOD(PREG)_""")",$$^P1FGIB)
 ..I PKOD(PREG)="SHON" D  Q:FIN
 ...D:DT=DT1  Q:FIN
 ....S NAME=""
 ....S %GET=": daiq xe`z++23,70,HH#"_$G(^FILE(COD,DAT,"SHON","TXT"))_"++20,H,I" D ^%L1GET
 ....I %S=""!(%TO="END") S FIN=1 Q
 ...S ^FILE(COD,DAT,"SHON","TXT")=%S,NAME=%S
 ...D ^%S3GLSV("^FILE("""_COD_""","""_DAT_""",""SHON"",""TXT"")",$$^P1FGIB)
 ..S %SAY=" "_NAME_" - "_$G(^NAME(COD,1))_"  caerl "_DATD_" jix`z " X %XMSGV H 2 Q
 .Q:FIN  Q:BIT
 .I $L($G(PKOD(PREG))) D TSHL(DT2,PKOD(PREG))
 .Q
 ;
P S MAS(99)=1 ;-------S %Y1=12,%Y2=24 X %SCROLL
 D CIO
 S BEGIN=6 S $Y=6 K ^TMPS111($J),SHOLD S FLSLR=1 D PCO^LEVTYP
 S %S2V("LEFT")=20,%S2V("TXT1")=" <ESC> - jiyndl " X %chista D ^%S2VIEW K ^TMPS111($J)
 ;S %SAY=^NAME(STRING,1)_"  "_STRING_"++1,40,HH,I" X %XMSG
 ;S %SAY=%L1DAT1_"  jix`z++3,60,HE" X %XMSG
ZT U $P:(NOECHO:NOWRAP)
 S PRZW=0 S N="" F  S N=$O(^FILE(COD,YYMMDD,N)) Q:N=""  I $G(^(N))="Z" S PRZW=1 Q
 I PRZW S %GET=" 99 - zeiakek lhal " D N^%L1GET I %S=99 D
 .S N="" F  S N=$O(^FILE(COD,YYMMDD,N)) Q:N=""  I $G(^(N))="Z" K ^(N)
 S $Y=1 S %GET="onf++1,79,HE#++8,T,I" D ^%L1GET
 G:%S=""!($G(%TO)="END") ZD
 S H1=%L1TIME
 S N=H1-1,N1="" F  S N=$O(^FILE(COD,YYMMDD,N)) Q:N=""  Q:N>(H1+59)  Q:N'?1N.E  S N1=N
 I N1="" G ZI
 S %SAY="miiw xak++3,79,HH,I" X %XMSG
 K %Q S %Q("Z")="lhal",%Q("X")=56,%Q("Y")=3 D ^%S2ASK
 I YES K ^FILE(COD,YYMMDD,N1),^FILE1(COD,YYMMDD,N1)
 G P
ZI K T1 S T="" F  S T=$O(^FILE(COD,YYMMDD,T)) Q:T=""  Q:T'<H1  S T1=T
 I $D(T1) S %SAY=$$T^%L1TIME(T1)_" dpexg` "_$S(^(T1)="I":"dqipk",1:"d`ivi") X %XMSGV
 S %GET=": 2 - d`ivi , 1 - dqipk++9,70,HH#++1,E,I++12" D ^%L1GET I %S=""!(%TO="END") G ZT
 S CIO=$S(%S=1:"I",1:"O")
 I $D(T1),CIO=^FILE(COD,YYMMDD,T1) S ERR=10 D ER G ZI
 S %GET=": dxrd++11,70,HH#++30,H,I++++ ! cgia odipyl `le d`ivil e` dqipkl e` dxrd cilwdl xzen " D ^%L1GET S HRA=%S
 K %Q S %Q("Z")="rval",%Q("X")=58,%Q("Y")=13 D ^%S2ASK G:'YES ZI
 ; S ^FILE(COD,"CIO")=CIO
 I $G(^LEV("HAFSAKA")),CIO="O" D
 .K %Q S %Q("Z")="dwqtd onf cixedl",%Q("X")=46,%Q("Y")=15 D ^%S2ASK Q:'YES
 .S H1=H1-(^LEV("HAFSAKA")*60)
 .S %GET=$$T^%L1TIME(H1)_"-k myxpe ( zewc "_+^LEV("HAFSAKA")_"  ) dwqtd onfl mcwed d`ivi onf "
 .D N^%L1GET
 S ^FILE(COD,YYMMDD,H1)=CIO
 S ^FILE1(COD,YYMMDD,H1)=CIO
 I $L(HRA) D
 .S ^FILE(COD,YYMMDD,H1,"H")=HRA
 .S ^FILE1(COD,YYMMDD,H1,"H")=HRA
 ;
 D ^%S3GLSV("^FILE("""_COD_""","""_YYMMDD_""")",$$^P1FGIB)
 ;
 I $G(^P1PRM("VIDEO"))=2 D
 .N TXT
 .S TXT=COD_"\"_$$^P1NAME(COD)_"\"_YYMMDD_"\"_H1_"\"_CIO
 .D ^P2VIDEO("",TXT,9)
 G P
END Q
ER S %SAY=" d`iby ++11,40,HH,I" X %XMSG H 2
 Q
ZD2 K DT1,DT2 S %L1DAT11=$G(DAT11) D ^%L1RNG Q:'$D(%L1DAT01)
 S DAT1=%L1DAT01,DAT2=%L1DAT02
 S DT1=%L1D1,DT2=%L1D2
 I $E(DAT2,1,4)'=$E(DAT1,1,4) W *7 S %SAY=" cg` yceg jeza wx " X %XMSGV H 2 G ZD2
 Q
PP F I=1:1 S T=$T(PAR+I) Q:T=""  Q:T["Q"  S PKOD(I)=$P(T,";",2),PNAME(PKOD(I))=$P(T,";",3),PSAY(PKOD(I))=$P(T,";",4)
 Q
CIO N CIO1,YY,HH S YY="" F  S YY=$O(^FILE(COD,YY)) Q:YY=""  D
 .S HH="" F  S HH=$O(^FILE(COD,YY,HH)) Q:HH=""  S:$D(^(HH))#2 CIO1=^(HH)
 I $D(CIO1) S ^FILE(COD,"CIO")=CIO1,^FILE1(COD,"CIO")=CIO1 K CIO1 D
 .D ^%S3GLSV("^FILE("""_COD_""",""CIO"")",$$^P1FGIB)
 Q
PAR ;
 ;HF;yteg;ytega did;
 ;MHL;dlgn;dleg did;
 ;MHLY;cli zlgn;dleg cli;
 ;ML;mi`elin;me`elna did;
 ;HT;melyz `ll zexcrd; dceara did `l;
 ;SHON;zepey zeaiq;zepey zeaiq llba dceara did `l;
 Q
TSHL(DT,REG) ;
 N TSHL S TSHL=$G(^FILE(COD,$$^%L1DC(DT,2),REG,"TSHL"))
 S %GET=": melyzl++23,40,HH#"_TSHL_"++10,E,I" D ^%L1GET Q:'%S
 N DAT S DAT=$$^%L1DC(DT,2)
 S ^FILE(COD,DAT,REG,"TSHL")=%S
 D ^%S3GLSV("^FILE("""_COD_""","""_DAT_""","""_REG_""")",$$^P1FGIB)
 Q
 
 

W4LEVSPR
W4LEVSPR ;                      [ 23.10.14 10:01 ] [ 09.04.13 15:48 ] [ 27.11.11 16:00 ]
 N (JB,%ARG,%REM)
 S TRH=$$^%L1DC($H,1)
 D ^W4IN
 S TIM=$$T^%L1TIME($P($H,",",2))
 ;
 S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 ;
 S N="",I=0
 F  S N=$O(@$$^W4GL("FILE")@(N)) Q:N=""  I $G(@$$^W4GL("FILE")@(N,"CIO"))="I" D
 .S LASTR=""
 .S LASTD=$$^W4DATL(N) S LDT=$$^%L1DC(LASTD,4) I LDT<($H-1) Q
 .S LASTT=$$TML^W4DATL(N)
 .S RZN=$P($H,",",2)-LASTT
 .I RZN<0!(LDT<$H) S RZN=RZN+86400
 .S SUG=$$SUG(N)
 .K MGV0,SUMGV S SUMKSF=0
 .I $$^%L1DC(P1DZ,8)=6!($$^%L1DC(P1DZ,8)=7) S SUMGV(0)=RZN G C
 .
 .N II F II=1:1:3 S MGV0(II)=$$GET1^W4LEVKVZ(SUG,"SHAAME"_II)
 .D ^W4LEVSUM(LASTT,$P($H,",",2),3)
C .S NN="" F II=1:1 S NN=$O(SUMGV(NN)) Q:NN=""  S TM=$$T^%L1TIME(SUMGV(NN)) D  ;--- HISHUV MASKORET
 ..I NN=0 S MHR=$$GET1^W4LEVPR(N,"MSHAAS") D KSF(TM,MHR) Q
 ..S MHR=$$GET1^W4LEVPR(N,"MSHAAM"_NN) D KSF(TM,MHR)
 .S LASTD=$$^%L1DC(LASTD,1)
 .S I=I+1
 .S @TMPREP@("G",I)=N_"\"_$$^W4NAME(N)_"\"_LASTD_"\"_$$T^%L1TIME(LASTT)_"\"_$$T^%L1TIME(RZN)
 ;
 S @TMPREP@("P",5)=$ZD($H,"DD.MM.YY")
 S @TMPREP@("P",10)=$ZD($H,"24:60")
 ;
 I '$$GET^%W1PRM("CURSORT") D PUT^%W1PRM("CURSORT",1)
END Q
 ;
 ;
SUG(STRING) Q $$SUG^W4LEVSUG(STRING)
 ;
KSF(TT,MHR) ; ---- LEFI SHAOT
 I '$G(MHR) Q
 S SUMKS=$J(TT*MHR+($P(TT,":",2)/60*MHR),2,2)
 S SUMKSF=SUMKSF+SUMKS
 Q
 ;
SCRN(STAM) ;
 Q "W4LEVSPR"
 ;
CHKPRM(STAM) ;
 Q 1

W4LEVSUG
W4LEVSUG ; [ 17.11.11 13:23 ] [ 06.11.09 12:05 ] [ 23.05.09 10:50 ]
SUG(STRING) I $G(STRING)="" Q ""
 Q $P($G(@$$^W4GNAME@(STRING)),"\")
 ;
SUG1(STRING) I $G(STRING)="" Q ""
 N SUG S SUG=$$SUG(STRING) I SUG="" Q ""
 Q $G(@$$^W4GL("LEVKVZ")@(SUG))
 ;
SUGMS(STRING) ;
 I $D(@$$^W4GNAME@(STRING))'=11 Q ""
 N MS S MS=$P($G(@$$^W4GNAME@(STRING)),"\",2)
 I MS Q MS
 I $G(@$$^W4GNAME@(STRING,10)),'$G(@$$^W4GNAME@(STRING,11)) D  Q MS  ;-- OKLAD
 .S MS=5 S $P(@$$^W4GNAME@(STRING),"\",2)=MS
 ;
 I $G(@$$^W4GNAME@(STRING,10)),$G(@$$^W4GNAME@(STRING,11)) D  Q MS  ;-- HODSHI - JAMIM
 .S MS=4 S $P(@$$^W4GNAME@(STRING),"\",2)=MS
 ;
 I $G(@$$^W4GL("LEV")@("SLRY"))=2,$G(@$$^W4GNAME@(STRING,7)) D  Q MS ;-- BASIS+SHAOT
 .S MS=2 S $P(@$$^W4GNAME@(STRING),"\",2)=MS
 ;
 I $G(@$$^W4GNAME@(STRING,7)) D  Q MS  ;-- MISHMEROT
 .S MS=3 S $P(@$$^W4GNAME@(STRING),"\",2)=MS
 ;
 S MS=1 S $P(@$$^W4GNAME@(STRING),"\",2)=MS Q MS  ;-- SHAOT
 Q
 ;
SUGMS1(STRING) ;
 N SUGMS S SUGMS=$$SUGMS(STRING) Q:'SUGMS ""
 I SUGMS=1 Q "dcear zery itl"
 I SUGMS=2 Q "zetqep + qiqa zery itl"
 I SUGMS=3 Q "zexnyn itl"
 I SUGMS=4 Q "mini itl"
 I SUGMS=5 Q "iyceg dxyn"

W4LEVSUM
W4LEVSUM(H1,N1,SUGMS) ; H1 - BEGIN , N1 - END , MGV - ARRAY GVUL           [ 19.08.26 14:07 ] [ 16.08.26 09:49 ] [ 09.01.20 11:01 ] 
 ;MGV0 - GVULOT LEFI SHAOT
 ;
 N I,J,GV1,GV2,N2,H2,MGV
 F I=1:1 Q:'$D(MGV0(I))  D
 .N V0 S V0=MGV0(I)
 .I V0[":" S V0=+V0_"."_($P(V0,":",2)*100/60\1)
 .S MGV(I)=V0*3600
 I N1<H1 S N2=N1 N N1 S N1=86400 D SUM Q:ERSUM  S H2=H1,H1=0,N1=N2 D SUM S H1=H2 Q
 D SUM
 Q
SUM ;---- LEFI MISHMEROT
 N I,J
 ;;I SHBT S SUMGV(0)=$G(SUMGV(0))+N1-H1 Q
 S ERSUM=0 I SUGMS=2 G SUM1
 F I=1:1 Q:'$D(MGV(I))  Q:H1<MGV(I)  I I>1,MGV(I)<MGV(I-1) Q
 I '$D(MGV(I))!(H1<$G(MGV(1))) S GV1=$O(MGV(9),-1)
 E  S GV1=I-1
 I GV1<1 S GV1=1 ;-- N MISHMERET KNISA
 F I=1:1 Q:'$D(MGV(I))  Q:N1<MGV(I)  I I>1,MGV(I)<MGV(I-1) Q
 I '$D(MGV(I))!(N1<$G(MGV(1))) S GV2=$O(MGV(9),-1)
 E  S GV2=I-1
 I GV2<1 S GV2=1 ;-- N MISHMERET JACYA
 ;
 I GV2<GV1 D
 .S SUMGV(GV1)=$G(SUMGV(GV1))+MGV(1)-H1+$S(MGV(1)<H1:86400,1:0)
 .S GV1=1,H1=MGV(1)
 ;
 I GV2=GV1 S SUMGV(GV1)=$G(SUMGV(GV1))+N1-H1+$S(N1<H1:86400,1:0) Q
 ;
 ;--- GV2 > GV1
 S SUMGV(GV1)=$G(SUMGV(GV1))+MGV(GV1+1)-H1+$S(MGV(GV1+1)<H1:86400,1:0)
 F J=GV1+1:1:GV2-1 S SUMGV(J)=$G(SUMGV(J))+MGV(J+1)-MGV(J)+$S(MGV(J+1)<MGV(J):86400,1:0)
 S SUMGV(GV2)=$G(SUMGV(GV2))+N1-MGV(GV2)+$S(N1<MGV(GV2):86400,1:0)
 Q
 ;
SUM1 ;---- SHAOT BASIS+NOSAFOT
 N I,J
 S R1=N1-H1+1 I R1<0 S R1=R1+86400
 F I=1:1 Q:'$D(MGV(I))  Q:R1'>MGV(I)
 S GV1=1
 S GV2=I I GV2<1 S GV2=1
 I GV2=GV1 S SUMGV(GV1)=$G(SUMGV(GV1))+R1 Q
 S SUMGV(GV1)=$G(SUMGV(GV1))+MGV(GV1)
 F J=GV1+1:1:GV2-1 S SUMGV(J)=$G(SUMGV(J))+MGV(J)-MGV(J-1)+$S(MGV(J)<MGV(J-1):86400,1:0)
 S SUMGV(GV2)=$G(SUMGV(GV2))+R1-MGV(GV2-1)+$S(R1<MGV(GV2-1):86400,1:0)
 Q
 
 
 
 
 
 

W4LEVTIM
W4LEVTIM(COD,DATS,DAT) ; [ 10.07.19 06:34 ] [ 05.08.18 14:48 ] [ 20.05.14 10:40 ] 
 N (JB,%ARG,%REM,COD,DATS,DAT,FLSLR)
 I $G(COD)="" Q ""
 I $G(DATS)="" Q ""
 S COD=$$DOP^W4NAME(COD)
 I $G(DAT)="",$G(DATS)'="" S DAT=DATS
 N COMPUT,SUM,SUMT,HFS
 ;
 S COMPUT="",SUM=0 D TV^W4LEVTYP(COD,DATS,DAT)
 ;
 S SUMT=$$T^%L1TIME(SUM)
 S HFS=$$HAFSAKA^W4CLKVW(COD)
 ;
 S PRHFS=0
 ;
 S MINS=$$MINHR^W4CLKVW(COD) S:'MINS MINS=8
 ;
 I HFS,SUMT'<MINS D
 .S SUM=SUM-(HFS*60),SUMT=$$T^%L1TIME(SUM),PRHFS=1
 I 'SUM S SUMT=""
 ;
 S ST=SUMT_"\\"_SUMKSF
 I PRHFS S $P(ST,"\",2)=HFS
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LEVTY0
W4LEVTYP ; TYPE OF REPORT  [ 04.08.21 11:57 ] [ 06.05.21 16:00 ] [ 01.10.20 13:50 ] 
BG K (JB,%ARG,%REM,GLFILE)
 ;  - INPUT : %ARG("MESTRING"),%ARG("ADSTRING")
 ;            %ARG("MESUG"),%ARG("ADSUG")
 ;
 Q:$G(%ARG("SHOW"))=0
 S JOM="`abcdey" S:'$D(@$$^W4CLKPRM@("USER")) @$$^W4CLKPRM@("USER")=""
 I '$D(GLFILE) S GLFILE=$$^W4GL("FILE")
 D ^%L1TS
 ;
 D ^W4MDPPC
 K @$$^W4MAIN("TMPS111")
 ;
1 K FIRST S FRST=1
 S STRING1=$G(%ARG("MESTRING"))
 S STRING2=$G(%ARG("ADSTRING"))
 I 'STRING2 S STRING2=90000
 ;
 I $G(%ARG("MONTH")) D
 .S DAT11=$G(%ARG("DAT"))
 .S %ARG("MEDAT")="01"_$TR($E(DAT11,3,10),"/","")
 .S %ARG("ADDAT")=$$LMM^%L1DC(DAT11)_$TR($E(DAT11,3,10),"/","")
 ;
 S DAT11=%ARG("MEDAT")
 S DAT21=%ARG("ADDAT")
 ;
 I $G(%ARG("MONTH")) D
 .S DAT11="01"_$TR($E(DAT11,3,10),"/","")
 .S %ARG("MEDAT")=DAT11
 .S DAT21=$$LMM^%L1DC(DAT11)_$TR($E(DAT11,3,10),"/","")
 .S %ARG("ADDAT")=DAT21
 ;
 S DAT1=$$^%L1DC(DAT11,2)
 S DAT2=$$^%L1DC(DAT21,2)
 S MESUG=$G(%ARG("MESUG"))
 S ADSUG=$G(%ARG("ADSUG"))
 I 'ADSUG S ADSUG=9999
 S MESUGMS=$G(%ARG("MESUGMS"))
 S ADSUGMS=$G(%ARG("ADSUGMS"))
 S FLSR=$G(%ARG("FLSR"))
 S KVUZA=0
 I $G(%ARG("KVUZA"))!($G(%ARG("KVUZA"))="on") S KVUZA=1
 S FLSLR=0
 I $G(%ARG("FLSLR"))!($G(%ARG("FLSLR"))="on") S FLSLR=1
 S DAF=1 ;;$G(%ARG("DAF"))
 ;
 S %CPOZ=5
 ;
 K @$$^W4MAIN("VRM")
 ;
 W "<div align=""center"" >",!
 W " <div id=""excel""></div>",!
 I $G(%ARG("FROMRPR")) D
 .D ^W4BCK
 ;
 S STRING="",PG=0,SH1=0
 ;
 I 'KVUZA F  S STRING=$O(@GLFILE@(STRING)) Q:STRING=""  I STRING'<STRING1,STRING'>STRING2 D
 .I ADSUGMS,$$SUGMS(STRING)<MESUGMS!($$SUGMS(STRING)>ADSUGMS) Q
 .S KVZ=$$SUG(STRING)
 .I KVZ'<MESUG,KVZ'>ADSUG D
 ..S DAF=$S('PG:1,1:0) I $G(%ARG("FLDAF")) S DAF=1
 ..D PCO
 ..S ^AA("W4LEVTYP",STRING)=$G(%ARG("FLDAF"))_"\"_SH_"\"_SH1
 ..;;I $G(%ARG("FLDAF")),SH>1,SH1>1 S SH=0 D PGBREAK(1)
 ..I $G(%ARG("FLDAF")),SH1>1 S SH=0 D PGBREAK(1)
 ;
 I KVUZA D  ; -- MIUN LEFI KVUZOT
 .N N S N="" F  S N=$O(@GLFILE@(N)) Q:N=""  S @$$^W4MAIN("VRM")@(+$$SUG(N),N)=""
 .S KVZ="" F  S KVZ=$O(@$$^W4MAIN("VRM")@(KVZ)) Q:KVZ=""  D
 ..S STRING="" F  S STRING=$O(@$$^W4MAIN("VRM")@(KVZ,STRING)) Q:STRING=""  D
 ...I KVZ'<MESUG,KVZ'>ADSUG,STRING'<STRING1,STRING'>STRING2 D
 ....I ADSUGMS,$$SUGMS(STRING)<MESUGMS!($$SUGMS(STRING)>ADSUGMS) Q
 ....S DAF=0 I $G(%ARG("FLDAF")) S DAF=1
 ....D PCO
 ....I $G(%ARG("FLDAF")),SH>1,SH1>1 S SH=0 D PGBREAK(1)
 ;
 K @$$^W4MAIN("VRM")
 ;
 W "</div>",!
 Q
 ;
 ;
SUGMS(STRING) Q $$SUGMS^W4LEVSUG(STRING)
SUG(STRING) Q $$SUG^W4LEVSUG(STRING)
 ;
 ;------------------------- BODY --------------------------
PCO ;
 K SUMGV S H1=0
 S SH=0,RSIZE=50
 S FLDATA=0
 ;
 Q:$G(STRING)=""
 ;
 S MAS(1)=STRING,MAS(2)=$$^W4NAME(STRING) ;-- NAME
 S MAS(2,"M")=$$^W4NAME(STRING)
 S MAS(3)=DAT11,MAS(4)=DAT21 ;-- ME - AD
 S MAS(5)=$$SUGMS1^W4LEVPR(STRING) ;-- NAME
 ;
 S FIRST=1 G BODY
 ;
TV(STRING,DAT1,DAT2) ;----- T.VX. FOR COMPUTING ONLY ( IF COMPUT '="" )
 ;-- OUTPUT : COLJ("AV"),- "MHL"), - "HF") , - "ML"), - "HT"), - "SHON")
 ;            SUM - KAMUT SHNIJOT AVODA
 ;-------------------------------------------------------------
 ;
BODY K M,H1,M1,COLG,COLJ,PSUM,PTSH,MSCR
 N D,D1,D2,I,N,N1,NN,TT,VN1,MHTM,SUMGV
 ;
 S JOMVAV=6
 I '$D(GLFILE) S GLFILE=$$^W4GL("FILE")
 ;
 S SUGMS=$$SUGMS(STRING)
 S SUG=$$SUG(STRING)
 ;
 S TVAV=$$GET1^W4LEVKVZ(SUG,"TVAV")
 K MGV0,MGVV
 ;
 I SUGMS=2 D  ;-- BASIS + NOSAFOT
 .N I
 .F I=1:1:3 S MGV0(I)=$$GET1^W4LEVKVZ(SUG,"SHAA"_(I-1))
 .F I=1:1:3 S MGVV(I)=$$GET1^W4LEVKVZ(SUG,"SHAAV"_(I-1)) ;-- YOM 6
 .I '$G(MGV0(1))!'$G(MGV0(2)) D
 ..D WRONGHR
 ;
 I SUGMS=3 D  ;-- MISHMEROT
 .N I
 .F I=1:1:3 S MGV0(I)=$$GET1^W4LEVKVZ(SUG,"SHAAME"_I)
 .F I=1:1:3 S MGVV(I)=$$GET1^W4LEVKVZ(SUG,"SHAAMV"_I) ; -- YOM 6
 .I '$G(MGV0(1))!'$G(MGV0(2)) D
 ..D WRONGHR
 ;
 S SUM=0
 S D1=$$^%L1DC(DAT1,4),D2=$$^%L1DC(DAT2,4)
 ;
 ;---> COLJ("AV")
 S JAMIM=$$GET1^W4LEVKVZ(SUG,"JAMIM")
 ;
 I 'JAMIM,$E(DAT1,1,4)=$E(DAT2,1,4),$E(DAT1,5,6)="01",$E(DAT2,5,6)>27 D
 .S JAMIM=D2-D1+1
 .F D=D1:1:D2 I $$^%L1DC(D,9)="y" S JAMIM=JAMIM-1
 ;
 I $G(@$$^W4CLKPRM@("SHNIC")),SUGMS=4 D
 .S COLJ("AV")=D2-D1+1
 .F D=D1:1:D2 I $$^%L1DC(D,9)="y" S COLJ("AV")=COLJ("AV")-1
 ;
 K SHBT S SHBT=0,VAV=0,SUMD=0,ENDC=0 K MMM
 ;
 F D=D1:1:D2+1 D:$D(M) PC K M Q:ENDC  S N=$$^%L1DC(D,2) I $D(@GLFILE@(STRING,N)) D
 .I $G(@$$^W4CLKPRM@("NONIGHT")) K H1 ;--- EIN MISHMERET LAILA
 .K HR S N1=""
 .N OKF S OKF=0
 .
 .I '$G(@$$^W4CLKPRM@("SHNIC"))!(SUGMS'=4) D
 ..F  S N1=$O(@GLFILE@(STRING,N,N1)) Q:N1=""  D  Q:OKF
 ...I $G(^(N1))="I",D'>D2 S COLJ("AV")=$G(COLJ("AV"))+1,OKF=1 ; - K-VO DNEY
 .
 .K %DN,%DS S (M1,M(5))=$$^%L1DC(N,1) ;-- N - YYMMDD
 .
 .S N1="",OLDI=-1
 .F  S N1=$O(@GLFILE@(STRING,N,N1)) Q:N1=""  Q:ENDC  S LASTDAY=N,LASTTIME=N1 D  S N1=LASTTIME
 ..Q:D=(D2+1)&'N1
 ..S VN1=$G(@GLFILE@(STRING,N,N1)),N11=$O(^(N1))
 ..I $D(@GLFILE@(STRING,N,N1,"H"))#2 S HR=^("H")
 ..
 ..I $D(@GLFILE@(STRING,N,N1,"HZM")),$G(COMPUT)="BLRD" D
 ...S SUM=0,H1=N1 K SUMGV
 ..
 ..S:'$D(JOM) JOM="`abcdey"
 ..
 ..S JJOM=$$^%L1DC($$^%L1DC(N,1),8)
 ..
 ..S M(4)=$E(JOM,JJOM)
 ..N I,TSHB1,TSHB2,TSHB3
 ..F I=1:1:3 S @("TSHB"_I)=$$TH($$GET1^W4LEVKVZ(SUG,"SHB"_I)) ; -- GWULOT SHABAT IN SECONDS
 ..I TSHB3 S TSHB2=0
 ..
 ..N DAYH1,DAYH2,DAYH3,HAG,HAG1,HAG2,HAG3 S (HAG,HAG1,HAG2,HAG3)=""
 ..S DAYH1=$$^%L1DC(N,4)-1
 ..S DAYH2=$$^%L1DC(N,4)
 ..S DAYH3=$$^%L1DC(N,4)+1
 ..S HAG1=$G(@$$^W4GL("LEVHAG")@(DAYH1))
 ..S HAG2=$G(@$$^W4GL("LEVHAG")@(DAYH2))
 ..S HAG3=$G(@$$^W4GL("LEVHAG")@(DAYH3))
 ..
 ..I 'HAG1,'HAG2,'HAG3,JJOM<6,JJOM>1 K SHBT S SHBT=0
 ..I 'HAG2,'HAG3,'TSHB2,JJOM=1,VN1="I" K SHBT S SHBT=0
 ..
 ..I JJOM<7 D TSHBHAG
 ..
 ..I D=(D2+1),VN1="I" S ENDC=1 Q
 ..
 ..I VN1="I",$G(MESHAA)!$G(ADSHAA),$D(P1TIPDAY) D  I $$TH(MESHAA)>N1!($$TH(ADSHAA)<N1) Q
 ...S:ADSHAA<5 ADSHAA=ADSHAA+24
 ..
 ..I VN1="I" D
 ...I JJOM=JOMVAV,'HAG2 S VAV=1
 ...I JJOM'=JOMVAV S VAV=0
 ...
 ...;  -----------------------------   N1 - CURRENT TIME IN SECONDS
 ...I TSHB1!TSHB2!TSHB3 D
 ....I JJOM=6!HAG3,JJOM'=7,'HAG2,TSHB1 D  Q
 .....S:N1'<TSHB1 VAV=0
 .....S SHBT=6 I HAG3!HAG2 S SHBT("HAG")=""
 ....I JJOM=7!HAG2,TSHB3,N1<TSHB3 S SHBT=7 I HAG2 S SHBT("HAG")="" Q
 ....I JJOM=7!HAG2,'TSHB3,'TSHB2 S SHBT=7 I HAG2 S SHBT("HAG")="" Q
 ....
 ....I JJOM=7,TSHB2 S SHBT=7 Q
 ....I JJOM=7,HAG3 S SHBT=7 Q
 ....
 ....I JJOM=1,TSHB2,N1<TSHB2 S SHBT=1 Q
 ....I JJOM=1,TSHB2,N1'<TSHB2 S SHBT=0 Q
 ..
 ..
 ..I $G(@$$^W4CLKPRM@("CNISA"))!'$D(MMM(D)) D
 ...S MMM(D)=""
 ...I JJOM>1,JJOM<6,'$D(SHBT("HAG")) K SHBT S SHBT=0
 ...I VAV,VN1="I",SHBT,TSHB1,N1<TSHB1,TSHB1-N1>7200 D
 ....S COLJ("AVV")=$G(COLJ("AVV"))+1
 ...I VAV,VN1="I",'SHBT S COLJ("AVV")=$G(COLJ("AVV"))+1
 ...I VAV,VN1="I",TSHB1,N1'<TSHB1!(TSHB1-N1<7200),SHBT D
 ....S COLJ("AVS")=$G(COLJ("AVS"))+1
 ...I 'VAV,VN1="I",SHBT S COLJ("AVS")=$G(COLJ("AVS"))+1
 ..
 ..;------- H1 - BEG.TIME , N1 - TIME IN NODE
 ..; M(1) - TOTAL , M(2) - EXIT , M(3) - ENTRANCE , M(4) - JOM, M(5) - DATE
 ..
 ..I VN1="I",OLDI<D D  S SUMD=0,OLDI=D
 ...I SUGMS=2,SUMD N H1,N1 I SUMD>0 S H1=0,N1=SUMD D ^W4LEVSUM(H1,N1,SUGMS)
 ..
 ..I VN1="I" S M(3)=$$T^%L1TIME(N1) D
 ...S H1=N1_"/"_$$^%L1DC(N,4) S COLJ("IN")=$G(COLJ("IN"))+1
 ..
 ..I VN1="I",N11'="",$G(@GLFILE@(STRING,N,N11))="I" D
 ...D PC K SHBT S SHBT=0,VAV=0 ;-- KNISA AHAREJ KNISA
 ..;
 ..I VN1="I",N11'?1N.N D  ;--- KNISA AHARONA BLI JACIA HAJOM
 ...N MAHAR,MHTM
 ...S MAHAR=$O(@GLFILE@(STRING,N)) I MAHAR="" D PC Q  ;-- LAST DAY
 ...D PC Q
 ..;
 ..
 ..I VN1="Z" S M(2)="*****" D PC K H1 ;--- SGIRAT JOM AUTOMATY
 ..;
 ..;
 ..I VN1="O" D  D CRHR D PC K H1 ;-- YACIA RAGILA
 ...S M(2)=$$T^%L1TIME(N1)
 ...I '$D(H1) S M(1)="?????" Q
 ...S H01=H1,N01=N1,RZN=N1-H1
 ...S TT=N1-H1+($$^%L1DC(N,4)-$P(H1,"/",2)*86400)
 ...I TT>86400 S M(1)="?????" D PC S SUMD=0 Q
 ...I TT<0 S TT=TT+86400
 ...S NN=TT
 ...S M(1)=$$SUM(NN) ;;$$T^%L1TIME(TT) ;-- M(1) - TOTAL
 ...I M(1)>16 D
 ....S M(1,"M")=M(1)_" ?"
 ....S M(1)=M(1)_" <span style=""color:red"">(?)</span>",M(1,"NOHB")=""
 ...;
 ...N SUMH S SUMH=$$TTD(M(1))*3600
 ...S SUM=SUM+SUMH,SUMD=SUMD+SUMH ;-- SUMD - SHAOT AVODA JOMI
 ...;
 ...I VAV,TVAV,SHBT'=7 S RZN=0 D PROCVAV S VAV=0,H01=-1,N01=-1 Q  ; -- VH YOM 6 & HISH
 ...
 ...N MSHAAS S MSHAAS=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 ...I SHBT S RZN=0 D  K SHBT S SHBT=0
 ....D HISHRZN
 ....
 ....I RZN<0 S RZN=RZN+86400
 ....S SUMGV(0)=$G(SUMGV(0))+RZN,SUMD=SUMD-RZN
 ...;
 ...I $G(H01)'<0,$G(N01)'<0,SUGMS=3 D ^W4LEVSUM(H01,N01,SUGMS) Q
 ..
 ..I N1="HAG" S LOAVN="b g" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL"))) ;-- COLJ("MHL")
 ..I N1="MHL" S LOAVN="d l g n" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL"))) ;-- COLJ("MHL")
 ..I N1="MHLY" S LOAVN="cli zlgn" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL"))) ;-- COLJ("MHLY")
 ..I N1="HF" S LOAVN="y t e g" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL")))
 ..I N1="ML" S LOAVN="mi`elin" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL")))
 ..I N1="HT" S LOAVN="melyz `ll zexcrd" D LOAV(N1,LOAVN,0)
 ..;;I N1="SHON" D
 ...S LOAVN=$G(@GLFILE@(STRING,N,N1,"TXT"))
 ...I $D(@GLFILE@(STRING,N,N1)) D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL")))
 .K M,HR
 ;
 I SUGMS=2,SUMD>0 N H1,N1 S H1=0,N1=SUMD D ^W4LEVSUM(H1,N1,SUGMS) S SUMD=0 ;--- BASIS+NOSAFOT
 ;
 I $G(@$$^W4CLKPRM@("CNISA")),'$G(@$$^W4CLKPRM@("SHNIC")) D
 .S COLJ("AV")=$G(COLJ("IN"))
 ;
 D PC
 ;
 ;-------------- PRINT TOTAL OF DAYS WHEN WORKER WASN'T IN PLACE BECAUSE ...
 ;
PCIT S SUMKSF=0,SUMHKDM=0,SUMBONUS=0,SUMSHON=0
 S TM=$$T^%L1TIME(SUM),M("TOT")="" ;-- ITOG
 S M(1)=$$SUM(SUM)
 S SHB1=$$GET1^W4LEVKVZ(SUG,"SHB1")
 ;------------------------- LEFI SHAOT
 ;
 I SUM D KAV
 M ^LV(STRING,"SUMGV")=SUMGV
 ;
 I SUGMS=1 D  G M0
 .S MHR=+$$GET1^W4LEVPR(STRING,"MSHAA")
 .S MHRV=+$$GET1^W4LEVPR(STRING,"MSHAAV")
 .S MHRS=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 .;
 .I '$G(SUMGV(0))&'$G(SUMGV(6)) D  Q
 ..S MSCR(SUGMS,1,"MSHAA")=$G(MSCR(SUGMS,1,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,1,"MSHAA","MHR")=MHR
 ..D KSF(M(1),MHR)
 .
 .S M(1)=$$T($$TH(M(1))-$G(SUMGV(0))-$G(SUMGV(6)))
 .S M(4)="leg ini"
 .S MSCR(SUGMS,1,"MSHAA")=$G(MSCR(SUGMS,1,"MSHAA"))+$$TTD(M(1))
 .S MSCR(SUGMS,1,"MSHAA","MHR")=MHR
 .D KSF(M(1),MHR)
 .
 .I $G(SUMGV(6)) D
 ..S M(1)=$$T($G(SUMGV(6))),M(4)="'e mei"
 ..S MSCR(SUGMS,6,"MSHAAV")=$G(MSCR(SUGMS,6,"MSHAAV"))+$$TTD(M(1))
 ..S MSCR(SUGMS,6,"MSHAAV","MHR")=MHRV
 ..D KSF(M(1),MHRV) ;,PC
 .
 .I $G(SUMGV(0)) D
 ..S M(1)=$$T($G(SUMGV(0))),M(4)="y''n"
 ..S MSCR(SUGMS,0,"MSHAAS")=$G(MSCR(SUGMS,0,"MSHAAS"))+$$TTD(M(1))
 ..S MSCR(SUGMS,0,"MSHAAS","MHR")=MHRS
 ..D KSF(M(1),MHRS) ;,PC
 ;
 ;------------------------ BASIS + NOSAFOT
 I SUGMS=2 D  G M0
 .N TM,NN,MHR
 .;;I $D(SUMGV) ZWR SUMGV
 .S NN=0 F II=1:1 S NN=$O(SUMGV(NN)) Q:NN=""  D
 ..S TM=$$T^%L1TIME(SUMGV(NN)),M("SM")=3
 ..K M S M(1)=$$T(SUMGV(NN)) ;$$TTD(TM)
 ..
 ..I NN<6 D
 ...S M(4)=" "_$J(+$G(MGV0(NN-1)),2)_" - "_$J($G(MGV0(NN)),2)_" "
 ...S M(4,"LTR")=""
 ...N IND S IND="MSHAA"_(NN-1)
 ...S MHR=+$$GET1^W4LEVPR(STRING,IND)
 ...;;S MSCR(SUGMS,1,MHR)=$G(MSCR(SUGMS,1,MHR))+$$TTD(TM)
 ...S MSCR(SUGMS,1,IND)=$G(MSCR(SUGMS,1,IND))+$$TTD(TM)
 ...S MSCR(SUGMS,1,IND,"MHR")=MHR
 ...I SUMGV(NN) D KSF(TM,MHR)
 ..
 ..I NN>5 D
 ...S M(4)="('e) "_$J(+$G(MGVV(NN-6)),2)_" - "_$J($G(MGVV(NN-5)),2)_" "
 ...S M(4,"LTR")=""
 ...N IND S IND="MSHAAV"_(NN-6)
 ...S MHR=+$$GET1^W4LEVPR(STRING,IND)
 ...;;S MSCR(SUGMS,6,MHR)=$G(MSCR(SUGMS,6,MHR))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV")=$G(MSCR(SUGMS,6,"MSHAAV"))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV","MHR")=MHR
 ...I SUMGV(NN) D KSF(TM,MHR)
 .
 .I $G(SUMGV(0)) D  Q
 ..K M S TM=$$T^%L1TIME(SUMGV(0)),M("SM")=3
 ..S M(1)=$$T(TM) ;$$TTD(TM)
 ..S M(4)=" ( y''n )" S MHR=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 ..;;S MSCR(SUGMS,0,MHR)=$G(MSCR(SUGMS,0,MHR))+$$TTD(TM)
 ..S MSCR(SUGMS,0,"MSHAAS")=$G(MSCR(SUGMS,0,"MSHAAS"))+$$TTD(TM)
 ..S MSCR(SUGMS,0,"MSHAAS","MHR")=MHR
 ..D KSF(TM,MHR)
 .Q
 ;
 ;------------------------- MISHMEROT
 ;
 I SUGMS=3 D  G M0
 .;;M ^LV(STRING,"MGV0")=MGV0
 .N TM,NN,MHR
 .S NN=0 F II=1:1 S NN=$O(SUMGV(NN)) Q:NN=""  D
 ..S TM=$$T^%L1TIME(SUMGV(NN)),M("SM")=3
 ..K M S M(1)=$$T(TM) Q:'SUMGV(NN)
 ..
 ..I NN<6 D
 ...S M(4)=" "_$J($G(MGV0(NN)),2)_" - "_$J($S($D(MGV0(NN+1)):MGV0(NN+1),1:MGV0(1)),2)_" "
 ...S M(4,"LTR")=""
 ...N IND S IND="MSHAAM"_NN
 ...S MHR=+$$GET1^W4LEVPR(STRING,IND)
 ...;;S MSCR(SUGMS,1,MHR)=$G(MSCR(SUGMS,1,MHR))+$$TTD(TM)
 ...S MSCR(SUGMS,1,IND)=$G(MSCR(SUGMS,1,IND))+$$TTD(TM)
 ...S MSCR(SUGMS,1,IND,"MHR")=MHR
 ...D KSF(TM,MHR)
 ..
 ..I NN>5 D
 ...I $G(MGVV(2)),'$G(MGVV(3)),$G(SHB1) S MGVV(3)=SHB1
 ...I '$G(MGVV(2)),$G(SHB1) S MGVV(2)=SHB1 K MGVV(3)
 ...S M(4)="('e) "_$J($G(MGVV(NN-5)),2)_" - "_$J($G(MGVV(NN-4)),2)_" "
 ...S M(4,"LTR")=""
 ...S MHR=+$$GET1^W4LEVPR(STRING,"MSHAAMV"_(NN-5))
 ...;;S MSCR(SUGMS,6,MHR)=$G(MSCR(SUGMS,6,MHR))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV")=$G(MSCR(SUGMS,6,"MSHAAV"))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV","MHR")=MHR
 ...D KSF(TM,MHR)
 .
 .I $G(SUMGV(0)) D  Q
 ..K M S TM=$$T^%L1TIME(SUMGV(0)),M("SM")=3
 ..;;Q:'(TM*60+$P(TM,":",2))
 ..S M(1)=$$T(TM) ;$$TTD(TM)
 ..S M(4)=" ( y''n )" S MHR=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 ..;;S MSCR(SUGMS,0,MHR)=$G(MSCR(SUGMS,0,MHR))+$$TTD(TM)
 ..S MSCR(SUGMS,0,"MSHAAS")=$G(MSCR(SUGMS,0,"MSHAAS"))+$$TTD(TM)
 ..S MSCR(SUGMS,0,"MSHAAS","MHR")=MHR
 ..D KSF(TM,MHR)
 .Q
 ;
 ;------------------------- MASKORET JOMI
 ;
 I SUGMS=4 D  G M0
 .N MHR,MHRS,MHRV,JA
 .S MHR=+$$GET1^W4LEVPR(STRING,"MJOM")
 .S JA=$G(COLJ("AV"))
 .S MHRS=+$$GET1^W4LEVPR(STRING,"MJOMS")
 .S MHRV=+$$GET1^W4LEVPR(STRING,"MJOMV")
 .I MHRV S JA=JA-$G(COLJ("AVV"))
 .I MHRS S JA=JA-$G(COLJ("AVS"))
 .
 .I JA S:MHRV!MHRS M(4)="libx mei" D
 ..;;S MSCR(SUGMS,1,"MSHAA")=$G(MSCR(SUGMS,1,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,1,"MJOM")=$G(MSCR(SUGMS,1,"MJOM"))+JA
 ..S MSCR(SUGMS,1,"MJOM","MHR")=MHR
 ..D KSF1(MHR,JA) ;D PC
 .
 .I MHRV,$G(COLJ("AVV")) S M(4)="'e mei" D
 ..;;S MSCR(SUGMS,6,"MSHAA")=$G(MSCR(SUGMS,6,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,6,"MJOM")=$G(MSCR(SUGMS,6,"MJOM"))+COLJ("AVV")
 ..S MSCR(SUGMS,6,"MJOM","MHR")=MHRV
 ..D KSF1(MHRV,COLJ("AVV")) ;D PC
 .
 .I MHRS,$G(COLJ("AVS")) S M(4)="y''n" D
 ..;;S MSCR(SUGMS,0,"MSHAA")=$G(MSCR(SUGMS,0,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,0,"MJOM")=$G(MSCR(SUGMS,0,"MJOM"))+COLJ("AVS")
 ..S MSCR(SUGMS,0,"MJOM","MHR")=MHRS
 ..D KSF1(MHRS,COLJ("AVS")) ;D PC
 ;
 ;------------------------- OKLAD
 I SUGMS=5 S SUMKS=$$GET1^W4LEVPR(STRING,"MHODESH") D  G M0
 .N DT1,DT2,SUMKS1 S DT1=$$^%L1DC(DAT1,4),DT2=$$^%L1DC(DAT2,4)
 .N DATS,DATF,DTS,DTF
 .S DATS=$$GET1^W4LEVPR(STRING,"DATS")
 .S DTS=$$^%L1DC(DATS,3)
 .S DATF=$$GET1^W4LEVPR(STRING,"DATF")
 .S DTF=$$^%L1DC(DATF,3)
 .I DTF-DTS>10 D
 ..I DTS,DT1<DTS S DT1=DTS
 ..I DTF,DT2>DTF S DT2=DTF
 .S RZN=30 I DT2-DT1<32,$E(DAT1,3,4)=$E(DAT2,3,4) D
 ..S RZN=$E($$^%L1DC($$LM^%L1DC(DT2),1),1,2)
 .S SUMKS1=SUMKS I RZN S SUMKS1=SUMKS*(DT2-DT1+1)/RZN
 .S MSCR(SUGMS,1,"MHODESH")=$G(MSCR(SUGMS,1,"MHODESH"))+$$TTD(M(1))
 .S MSCR(SUGMS,1,"MHODESH","MHR")=SUMKS1
 .I $G(FLSLR) S M(3)=$J(SUMKS1,2,2) S SUMKSF=SUMKS1 D PC Q
 .I '$G(FLSLR) S M(2)="zery k""dq" D PC
 ;
 I $O(SUMGV(""))'="",FLSLR D
 .S M(1)="g""y "_$J(SUMKSF,2,2),M(2)="k''dq",M("TOT")="" D PC
 ;
M0 ;
 ;
 ;--- MAHALOT, HUFSHOT, MILUIM
 ;
 I $G(SUGMS)<4,SUM D
 .N M S M("TOT")=""
 .S M(1)=$$T(SUM) ;$$T^%L1TIME(SUM)
 .S M(2)=$$TV^%W1DICT($$^%W1LNG,"TOTALALLHOURS")
 .D PC K M
 ;
 S N=DAT1-1 D ^W4LEVPP
 ;
 S N1="" K M F  S N1=$O(PSUM(N1)) Q:N1=""  D
 .S M(1)=$S($G(FLSLR):$J($G(PTSH(N1)),2,2),1:"")
 .S M(4)="ini "_PSUM(N1),M(2)=$G(PNAME(N1))
 .S M("TOT")=""
 .S SUMKSF=SUMKSF+M(1) D PC
 ;
 S N=DAT1-1 ;,SUM=0
 N DT1,DT2,DT
 S DT1=$$^%L1DC(DAT1,4),DT2=$$^%L1DC(DAT2,4)
 ;
 F DT=DT1:1:DT2 S N=$$^%L1DC(DT,2) I $D(@GLFILE@(STRING,N,"BONUS")) D
 .K M S M(5)=$$^%L1DC(N,1) ;--- DATE
 .N TXT S TXT=$G(@GLFILE@(STRING,N,"BONUS","TXT"))
 .S M(2)=$S($L(TXT):"("_TXT_")",1:"")_" qepea"
 .S M(1)=$J(@GLFILE@(STRING,N,"BONUS","TSHL"),2,2)
 .S M("TOT")=""
 .S SUMBONUS=SUMBONUS+M(1) D PC
 ;
 F DT=DT1:1:DT2 S N=$$^%L1DC(DT,2) I $D(@GLFILE@(STRING,N,"SHON")) D
 .K M S M(5)=$$^%L1DC(N,1) ;--- DATE
 .N TXT S TXT=$G(@GLFILE@(STRING,N,"SHON","TXT"))
 .S M(2)=$S($L(TXT):"("_TXT_")",1:"")_" zepey"
 .S M(1)=$J(@GLFILE@(STRING,N,"SHON","TSHL"),2,2)
 .S M("TOT")=""
 .S SUMSHON=SUMSHON+M(1) D PC
 ;
 F DT=DT1:1:DT2 S N=$$^%L1DC(DT,2) I $D(@GLFILE@(STRING,N,"HKDM")) D
 .K M S M(5)=$$^%L1DC(N,1) ;--- DATE
 .N TXT S TXT=$G(@GLFILE@(STRING,N,"HKDM","TXT"))
 .S M(2)=$S($L(TXT):"("_TXT_")",1:"")_" dncwn"
 .S M(1)=$J(-@GLFILE@(STRING,N,"HKDM","TSHL"),2,2)
 .S M("TOT")=""
 .S SUMHKDM=SUMHKDM-M(1) D PC
 ;
 G:'$G(FLSLR) Z
 ;
 S M(1)=$J(SUMKSF+SUMBONUS+SUMSHON-SUMHKDM,2,2),M(2)=" melyzl",M("TOT")="" D PC
Z ;
 K M I $G(COLJ("AV")) D
 .S M(1)=$G(COLJ("AV"))_"  ",M(2)=" dcear ini k""dq",M("TOT")=""  D PC
 ;
 I '$G(@$$^W4CLKPRM@("KNISA")),$G(COLJ("IN")) D
 .K M S M(1)=$G(COLJ("IN"))_"  ",M(2)=" zeqipk k""dq",M("TOT")="" D PC
 ;
 I '$D(COMPUT) D
 .D WST("</table>")
 .D ^W4MDPPC
 .;;I '$G(%ARG("FLDAF")) D S1($C(10,10,10,10))
 ;
 I $G(FLDATA) S SHOLD=SH+1
 Q
 ;
END ;;K @$$^W4MAIN("TMPS111")
 Q
 ;
TSHBHAG ;
 I HAG2 S TSHB3=$$TH($P(HAG2,"\",2)),TSHB1=$$TH($P(HAG2,"\",1)) D  Q
 .I JJOM'=7 S TSHB2=""
 .I HAG3 S TSHB3=""
 .I HAG1,JJOM'=6 S TSHB1=""
 I HAG3 S TSHB1=$$TH($P(HAG3,"\",1)),TSHB2="",TSHB3="" Q  ; MAHAR
 I HAG1 S TSHB3=$$TH($P(HAG1,"\",2)) D  Q  ; HAG ETMOL
 .I JJOM<6 S TSHB1="",TSHB2=""
 Q
 ;
HISHRZN ;
 S (H01,N01)=-1
 N DVH S DVH=$P(H1,"/",2)
 I 'TSHB1,'TSHB2,'TSHB3 S RZN=N1-H1 Q
 ;
 I SHBT=6 D  Q
 .I 'TSHB1 S RZN=N1-H1 Q
 .I H1<TSHB1 D  Q
 ..I N1<TSHB1,N1>H1 S N01=TSHB1,H01=+H1,RZN=0 Q
 ..S RZN=N1-TSHB1,N01=TSHB1,H01=+H1
 .S RZN=N1-H1
 ;
 I JJOM=1,TSHB2 D  Q
 .I N1<TSHB2 D  Q
 ..S RZN=N1-H1
 .S RZN=TSHB2-H1
 ;
 I SHBT=7 D  ; -- KNISA BE SHABAT
 .I DVH=$$^%L1DC(N,4)!'DVH D  Q  ;--- KNISA BE OTO YOM
 ..I TSHB3,N1>TSHB3,SHBT=7 D  Q
 ...I JJOM=6,N1>TSHB1 S RZN=N1-H1 Q
 ...I HAG3 S RZN=N1-H1 Q
 ...S RZN=TSHB3-H1 S H01=TSHB3
 ..I TSHB3,N1'>TSHB3 D  Q ;
 ...S RZN=N1-H1 ;
 ..S RZN=N1-H1
 .;
 .I DVH,DVH<$$^%L1DC(N,4) D  Q  ;--- KNISA YOM KODEM
 ..I $G(HAG2) S RZN=N1-H1 Q  ; -- HAYOM GAM HAG
 ..I TSHB3 D  Q
 ...I H1<TSHB3 D  Q
 ....I N1>TSHB3!(N1<H1) S RZN=TSHB3-H1 S H01=TSHB3 Q  ; -- WAS ,'$G(HAG1)
 ....S RZN=N1-H1
 ..I TSHB2,N1<TSHB2 D  Q
 ...S RZN=N1-H1
 ..I TSHB2 D  Q
 ...S RZN=TSHB2-H1,H01=TSHB2
 ..S RZN=N1-H1
 Q
 ;
CLOSE ;
 Q
 ;
LOAV(N1,LOAVN,TSH) ;
 S M(1)=LOAVN,M("TOT")="" D PC
 S COLJ(N1)=$G(COLJ(N1))+1
 S PSUM(N1)=$G(PSUM(N1))+1
 S PTSH(N1)=$G(PTSH(N1))+TSH
 I LOAVN'["["!(LOAVN'["]") S LOAVN="[ "_LOAVN_" ]"
 S PNAME(N1)=LOAVN
 Q
 ;
T(TT) Q:TT<0 ""  Q $$SUM(TT)  ;Q $$T^%L1TIME(TT)
 Q
TH(TT) Q:TT<0 ""  I TT[":" Q $P(TT,":")*3600+($P(TT,":",2)*60)
 I '$$CLOCKMIN Q TT*3600
 Q TT
 ;
TTD(TT) Q:TT<0 ""  I TT[":" Q $J($$TH(TT)/3600,2,2)
 Q TT
 ;
WRONGHR ;
 S M(2)=$$H2U^%L1FRM("! micaer zveaw zlaha oekp excbed `l zery")
 S M(2,"RED")=1,M(2,"ATN")="" D PC
 Q
 ;
PC Q:$D(COMPUT)  Q:'$D(M)
 N OKPC S OKPC=0
 ;;ZWR M
 N I F I=%CPOZ:-1:1 D
 .N VL S VL=$TR($G(M(I))," ","")
 .I VL'?.P,VL'="k""dq",VL'="zeryk""dq",'$D(M(I,"ATN")),VL'="00:00",VL'="melyzl",VL'="0.00",$P(VL,"=",2)'="0.00" S OKPC=1 Q
 Q:'OKPC
 ;;W "  OKPC="_OKPC,!
 ;
 S SH=SH+1,SH1=SH1+1 I SH=1 D SHAP($G(DAF))
 ;
 S ST="<tr "
 S ST=ST_" style=""color:black"
 I $D(M("TOT")) S ST=ST_";background-color:lightyellow;font-weight:bold"
 ;;I $G(STRING),$$DELIS^W4PRM S ST=ST_";cursor:pointer"
 I $G(STRING),'$G(%ARG("FROMRPR")) S ST=ST_";cursor:pointer"
 S ST=ST_""" "
 ;;I $G(STRING),$$DELIS^W4PRM D
 I $G(STRING),'$G(%ARG("FROMRPR")) D
 .N DAT S DAT=$G(M(5))
 .I DAT="",$G(N)?6N S DAT=$$^%L1DC(N,1)
 .S ST=ST_" onClick=""ClickOved('"_STRING_"','"_DAT_"')"" "
 S ST=ST_" >"
 ;
 S STM=""
 N I F I=%CPOZ:-1:1 D
 .S ST=ST_"<td "_$S($D(M(I,"LTR")):" dir=""LTR"" align=""right""",1:"")_" >&nbsp;&nbsp;"_$$RKV(I)_"&nbsp;&nbsp;</td>"
 .N MI S MI=$G(M(I)) I $D(M(I,"M")) S MI=M(I,"M")
 .S STM=$J(MI,MPOS(I))_" "_STM
 ;
 I $$HR,'$$INPHR D
 .I $L($G(HR))!$L($G(M("HR"))) D  Q
 ..N VL S VL=$$H2U^%L1FRM($G(HR))
 ..I $L($G(M("HR"))) S VL=VL_" "_M("HR")
 ..S ST=ST_"<td align=""right"" style=""color:red"" >&nbsp;&nbsp;"
 ..S ST=ST_VL_"&nbsp;&nbsp;</td>"
 .S ST=ST_"<td>&nbsp;</td>"
 ;
 I $$INPHR D
 .N VL
 .;;W "VL="_VL,! ; ***
 .S ST=ST_"<td align=""center"" >&nbsp;"
 .I '$G(STRING)!'$G(N)!($G(N1)="")!($G(M(5))="") S ST=ST_"</td>" Q
 .S VL=$G(@$$^W4GL("FILE")@(STRING,N,N1,"H"))
 .N IND S IND=STRING_"_"_N_"_"_N1
 .S ST=ST_"<input name=""inphr"" size=""40"" id=""inphr"_IND_""" value="""_$$H2U^%L1FRM(VL)_""" />&nbsp;</td>"
 ;
 S ST=ST_"</tr>"
 ;
 D WST(ST)
 ;
 K M Q
 ;
 ;
RKV(I) ;
 N RKV I '$D(M(I,"NOHB")) S RKV=$$H2U^%L1FRM($G(M(I)))
 I $D(M(I,"NOHB")) S RKV=M(I)
 I $D(M(I,"RED")),$G(M(I))'="" D
 .S RKV="<span style=""color:red;font-weight:bold"" >"_M(I)_"</span>"
 I RKV=""!($G(M(I))="") S RKV="&nbsp;"
 Q RKV
 ;
 ;
PAGE ;
 S PG=PG+1
 N CNTN S CNTN="" ;;I $D(PEREH) S CNTN=" jynd"
 D WST($$^%W1DICT("PAGE",PG_"<>"_CNTN))
 Q
 ;
TBPAGE ;
 D OPTBL
  D WST(" <tr>")
  D WST("  <td "_$$INV^%W1ALIGN_" >")
    D PAGE
  D WST("  </td>")
  D WST(" </tr>")
  D WST("</table>")
 Q
 ;
 ;
CRHR ;
 N SPANYAD S SPANYAD="<span style=""font-size:"_$$^W3FSZ(10)_""">"
 ;
 I $D(@GLFILE@(STRING,N,N1,"ARM")) D  Q
 .N VL S VL=$G(^("ARM"))
 .S M("HR")=SPANYAD_" [ "_$$H2U^%L1FRM(" ipci clwed")_" "_$ZD(VL,"24:60 DD.MM.YY")_" ]"_"</span>"
 ;
 I '(N1#100) D  Q
 .S M("HR")=SPANYAD_" [ "_$$H2U^%L1FRM("ipci clwed")_" ]"_"</span>"
 ;
 Q
 ;
 ;
SHAP(DAF) ;
 N I,TXT,PRSHAP S PRSHAP=1
 ;
 D OPTBL
 I FIRST,'$G(FRST),'$G(%ARG("FLDAF")) S STM=$C(10,10) ;;$G(%MDP("PG"))
 ;
 I '$G(DAF) D WST("<br /><br />") S SH1=SH1+2
 ;
 D WST(" <tr>")
 I FIRST,'$G(FRST) S STM=""
  D WST("  <td "_$$INV^%W1ALIGN_" >")
   I $G(DAF) D PAGE
  D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I FIRST S STM=$$CENTR^%L1FRM($G(MAS(2))_" "_$G(MAS(1)),40)
  D WST(MAS(1)_" "_$$H2U^%L1FRM(MAS(2)))
 D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I $G(SUG) D
  .I FIRST S STM=$$CENTR^%L1FRM($G(@$$^W4GL("LEVKVZ")@(SUG)),40)
  .D WST($$^%W1DICT("GROUP")_" "_SUG_" : "_$$H2U^%L1FRM($G(@$$^W4GL("LEVKVZ")@(SUG))))
 D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I FIRST S STM=$$CENTR^%L1FRM(MAS(5)_" : zxekyn beq",40)
  D WST($$H2U^%L1FRM(MAS(5)_" : zxekyn beq"))
 D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I FIRST S STM=$$CENTR^%L1FRM(MAS(4)_" cr "_MAS(3)_"-n",40)
  D WST($$^%W1DICT("FROM")_" "_MAS(3)_" "_$$^%W1DICT("TO")_" "_MAS(4))
 I FIRST S STM=""
 D WST("  </td>")
 D WST(" </tr>")
 D WST("</table>")
 D WST("<br />")
 S SH1=SH1+7,SH=SH+7
 ;
 S PRSHAP=2
 D OPTBL1
 D WST(" <tr>")
  D WST("<th>")
   D WST($$^%W1DICT("DATE"))
  D WST("</th>")
  D WST("<th>")
   D WST($$^%W1DICT("DAY"))
  D WST("</th>")
  D WST("<th>")
   D WST($$^%W1DICT("ENTRANCE"))
  D WST("</th>")
  D WST("<th>")
   D WST($$^%W1DICT("EXIT"))
  D WST("</th>")
  D WST("<th>")
   N STM0
   I FIRST S STM="  k""dq  : d`ivi : dqipk : mei :  jix`z ",STM0=STM
   S MPOS(1)=8,MPOS(2)=7,MPOS(3)=7,MPOS(4)=5,MPOS(5)=8
   D WST($$^%W1DICT("TOTAL"))
  I FIRST S STM=" "_$TR($J("",$L(STM0)-1)," ","-")
  D WST("</th>")
  ;
  I $$HR!$$INPHR D
  .D WST("<th>"_$$^%W1DICT("COMMENT")_"</th>")
 D WST("</tr>")
 S FRST=0
 Q
 ;
KSF(TT,MHR) ; ---- LEFI SHAOT
 ;;S ^LV($O(^LV(999999),-1)+1)=TT_"\"_$G(MHR)_"\"_$G(FLSLR)
 S M("TOT")=""
 I '$G(MHR)!'$G(FLSLR) S M(2)=$$TV^%W1DICT($$^%W1LNG,"TOTALHOURS") D PC K M Q
 ;
 S SUMKS=$J(TT*MHR+($P(TT,":",2)/60*MHR),2,2)
 S SUMKSF=SUMKSF+SUMKS
 S M("TOT")=""
 S M(2)="*"_$J(MHR,5,2)_" = "_$J(SUMKS,7,2)
 S M(3)=$$TV^%W1DICT($$^%W1LNG,"TOTAL")
 S NOFLDATA="" D PC K NOFLDATA
 Q
 ;
KSF1(MHR,JAVD) ; ----- LEFI JAMIM
 I '$G(MHR)!'$G(FLSLR) Q
 S SUMKS=$J(JAVD*MHR,2,2)
 S M("TOT")=""
 S M(1)=$J(SUMKS,2,2),M(2)="= "_JAVD_" * "_$J(MHR,2,2)
 S M(3)=$$TV^%W1DICT($$^%W1LNG,"TOTAL")
 D PC
 S SUMKSF=SUMKSF+SUMKS
 Q
 ;
PGBREAK(PR) ;
 I $G(PR) N STM S STM=$C(10,10,10,10)_$G(%MDP("CUT"))
 D WST("<p style=""page-break-before:always"">")
 S SH1=0
 Q
 ;
SUM(SEC) ;
 I SEC[":",$$CLOCKMIN Q SEC
 I SEC[":",'$$CLOCKMIN S SEC=$$TH(SEC)
 I $$CLOCKMIN Q $$T^%L1TIME(SEC)
 N DR S DR=$$DRCLK^W4PRM
 I 'DR S DR=2
 Q $J(SEC/3600,DR,DR)
 ;
SUMHR(HR) ;
 I HR[":",$$CLOCKMIN Q HR
 I HR'[":",$$CLOCKMIN Q $$T^%L1TIME(HR*3600)
 Q $$TTD(HR)
 ;
MXTM(RZN,STRING) ;
 I '$G(STRING) Q RZN
 N MX S MX=$$MAXTIME(STRING)
 I 'MX Q RZN
 I RZN>(MX*60) S RZN=MX*60
 Q RZN
 ;
CLOCKMIN(STAM) ;
 ;;I $G(@$$^W4PRM@("CLOCKMIN")) Q 1
 I '$$GETP^%W1PRM("CURSHOW") Q 1
 Q 0
 ;
PROCVAV ;
  N H01,N01
  I $G(TSHB1),N1>TSHB1 S RZN=TSHB1-H1,H01=H1,H1=TSHB1,N01=TSHB1
  E  S RZN=N1-H1,H01=H1,N01=N1
  I RZN<0 S RZN=RZN+86400
  S RZN=$$MXTM(RZN,STRING)
  S SUMD=SUMD-RZN
  I SUGMS'=2,SUGMS'=3 S SUMGV(6)=$G(SUMGV(6))+RZN
  ;
  I SUGMS=2 D
  .N MGV,I,R0,R1,R2 S (R0,R1,R2)=0
  .F I=1:1:3  S MGV(I)=MGVV(I)*3600
  .I RZN'>MGV(1) S R0=RZN
  .I RZN>MGV(1),RZN'>MGV(2) S R1=RZN-MGV(1),R0=MGV(1)
  .I RZN>MGV(2) S R2=RZN-MGV(2),R1=MGV(2)-MGV(1),R0=MGV(1)
  .S SUMGV(6)=$G(SUMGV(6))+R0
  .S SUMGV(7)=$G(SUMGV(7))+R1
  .S SUMGV(8)=$G(SUMGV(8))+R2
  ;
  N SUMGV1 I SUGMS=3 D
  .D
  ..N SUMGV,MGV0
  ..F I=1:1:3 S MGV0(I)=$$GET1^W4LEVKVZ(SUG,"SHAAMV"_I)
  ..D ^W4LEVSUM(H01,N01,SUGMS)
  ..S MAC1="SUMGV",MAC2="SUMGV1" D ^%S1GC1
  .N NN S NN="" F  S NN=$O(SUMGV1(NN)) Q:NN=""  S SUMGV(NN+5)=$G(SUMGV(NN+5))+SUMGV1(NN)
  .K SUMGV1
  Q
  ;
MAXTIME(COD) ;
 S SUGMS=$P($G(^NAME(COD)),"\",2)
 I SUGMS'=1 Q ""
 Q $G(^LEV("MAXTIME"))
 ;
WST(ST) ;
 I $G(ST)="\/" K ST
 I $D(ST),$D(LEVDM) D S1(ST) Q
 ;
 I $D(ST) D
 .I ST["<tr" D
 ..I SH1>RSIZE D PEREH
 .W ST,!
 ;
 I $D(STM) D
 .D S1(STM) K STM
 Q
 ;
 ;
S1(ST) ;
 N IND S IND=$O(@$$^W4MAIN("TMPS111")@(999999),-1)+1
 S @$$^W4MAIN("TMPS111")@(IND)=ST
 S @$$^W4MAIN("S11")@(IND)=ST
 Q
 ;
PEREH ;
 ;;I '$$GETP^%W1PRM("PRINTREPBACK") Q
 N PEREH S PEREH=""
 D WST("</table>")
 D WST("<br /><br />")
 S FIRST=0 ;;D ^W4MDPPC
 D PGBREAK(0)
 D
 .I '$G(PRSHAP) D SHAP(1) Q
 .I $G(PRSHAP)=1 D TBPAGE,OPTBL Q
 .D TBPAGE,OPTBL1 Q
 Q
 ;
OPTBL ;
 N ST S ST="<table dir="""_$$^%W1DIR_""" width=""70%"" "
 S ST=ST_"style=""text-align:center;font-weight:bold"" "
 S ST=ST_" >"
 D WST(ST)
 Q
 ;
OPTBL1 ;
 D WST("<table dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">")
 Q
 ;
HR(STAM) ;
 Q $$GETP^%W1PRM("HRCLOCK")
 ;
INPHR(STAM) ;
 Q $$GETP^%W1PRM("INPCMNT")
 ;
SAVE(PRM) ; 
 N ID,VL,STRING,DAT,TM
 S ID=$P($P(PRM,";"),"inphr",2)
 S VL=$P(PRM,";",2)
 S VL=$$INVH^%L1FRM(VL)
 S STRING=$P(ID,"_")
 S DAT=$P(ID,"_",2) 
 S TM=$P(ID,"_",3) 
 N GLFILE S GLFILE=$$^W4GL("FILE")
 I 'STRING!'DAT!(TM="") Q 0
 D
 .I VL="" K @GLFILE@(STRING,DAT,TM,"H") Q
 .S @GLFILE@(STRING,DAT,TM,"H")=VL
 Q 1
 ;
KAV ;
 S STM=" "_$TR($J("",38)," ","-"),ST="\/" D WST(ST)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LEVTYP
W4LEVTYP ; TYPE OF REPORT  [ 02.10.26 18:20 ] [ 04.09.26 07:55 ] [ 03.09.26 20:49 ] 
BG K (JB,%ARG,%REM,GLFILE)
 ;  - INPUT : %ARG("MESTRING"),%ARG("ADSTRING")
 ;            %ARG("MESUG"),%ARG("ADSUG")
 ;
 Q:$G(%ARG("SHOW"))=0
 S JOM="`abcdey" S:'$D(@$$^W4CLKPRM@("USER")) @$$^W4CLKPRM@("USER")=""
 I '$D(GLFILE) S GLFILE=$$^W4GL("FILE")
 D ^%L1TS
 ;
 D ^W4MDPPC
 K @$$^W4MAIN("TMPS111")
 ;
1 K FIRST S FRST=1
 S STRING1=$G(%ARG("MESTRING"))
 S STRING2=$G(%ARG("ADSTRING"))
 I 'STRING2 S STRING2=90000
 ;
 I $G(%ARG("MONTH")) D
 .S DAT11=$G(%ARG("DAT"))
 .S %ARG("MEDAT")="01"_$TR($E(DAT11,3,10),"/","")
 .S %ARG("ADDAT")=$$LMM^%L1DC(DAT11)_$TR($E(DAT11,3,10),"/","")
 ;
 S DAT11=%ARG("MEDAT")
 S DAT21=%ARG("ADDAT")
 ;
 I $G(%ARG("MONTH")) D
 .S DAT11="01"_$TR($E(DAT11,3,10),"/","")
 .S %ARG("MEDAT")=DAT11
 .S DAT21=$$LMM^%L1DC(DAT11)_$TR($E(DAT11,3,10),"/","")
 .S %ARG("ADDAT")=DAT21
 ;
 S DAT1=$$^%L1DC(DAT11,2)
 S DAT2=$$^%L1DC(DAT21,2)
 S MESUG=$G(%ARG("MESUG"))
 S ADSUG=$G(%ARG("ADSUG"))
 I 'ADSUG S ADSUG=9999
 S MESUGMS=$G(%ARG("MESUGMS"))
 S ADSUGMS=$G(%ARG("ADSUGMS"))
 S FLSR=$G(%ARG("FLSR"))
 S KVUZA=0
 I $G(%ARG("KVUZA"))!($G(%ARG("KVUZA"))="on") S KVUZA=1
 S FLSLR=0
 I $G(%ARG("FLSLR"))!($G(%ARG("FLSLR"))="on") S FLSLR=1
 S DAF=1 ;;$G(%ARG("DAF"))
 ;
 S %CPOZ=5
 ;
 K @$$^W4MAIN("VRM")
 ;
 W "<div align=""center"" >",!
 W " <div id=""excel""></div>",!
 I $G(%ARG("FROMRPR")) D
 .D ^W4BCK
 ;
 S STRING="",PG=0,SH1=0
 ;
 I 'KVUZA F  S STRING=$O(@GLFILE@(STRING)) Q:STRING=""  I STRING'<STRING1,STRING'>STRING2 D
 .I ADSUGMS,$$SUGMS(STRING)<MESUGMS!($$SUGMS(STRING)>ADSUGMS) Q
 .S KVZ=$$SUG(STRING)
 .I KVZ'<MESUG,KVZ'>ADSUG D
 ..S DAF=$S('PG:1,1:0) I $G(%ARG("FLDAF")) S DAF=1
 ..D PCO
 ..S ^AA("W4LEVTYP",STRING)=$G(%ARG("FLDAF"))_"\"_SH_"\"_SH1
 ..I $G(%ARG("FLDAF")) D:SH!SH1 PGBREAK(1) S SH=0,SH1=0
 ;
 I KVUZA D  ; -- MIUN LEFI KVUZOT
 .N N S N="" F  S N=$O(@GLFILE@(N)) Q:N=""  S @$$^W4MAIN("VRM")@(+$$SUG(N),N)=""
 .S KVZ="" F  S KVZ=$O(@$$^W4MAIN("VRM")@(KVZ)) Q:KVZ=""  D
 ..S STRING="" F  S STRING=$O(@$$^W4MAIN("VRM")@(KVZ,STRING)) Q:STRING=""  D
 ...I KVZ'<MESUG,KVZ'>ADSUG,STRING'<STRING1,STRING'>STRING2 D
 ....I ADSUGMS,$$SUGMS(STRING)<MESUGMS!($$SUGMS(STRING)>ADSUGMS) Q
 ....S DAF=0 I $G(%ARG("FLDAF")) S DAF=1
 ....D PCO
 ....I $G(%ARG("FLDAF")),SH>1,SH1>1 S SH=0 D PGBREAK(1)
 ;
 K @$$^W4MAIN("VRM")
 ;
 W "</div>",!
 Q
 ;
 ;
SUGMS(STRING) Q $$SUGMS^W4LEVSUG(STRING)
SUG(STRING) Q $$SUG^W4LEVSUG(STRING)
 ;
 ;------------------------- BODY --------------------------
PCO ;
 K SUMGV S H1=0
 S SH=0,RSIZE=50
 S FLDATA=0
 S M125=0
 ;
 Q:$G(STRING)=""
 ;
 S MAS(1)=STRING,MAS(2)=$$^W4NAME(STRING) ;-- NAME
 S MAS(2,"M")=$$^W4NAME(STRING)
 S MAS(3)=DAT11,MAS(4)=DAT21 ;-- ME - AD
 S MAS(5)=$$SUGMS1^W4LEVPR(STRING) ;-- NAME
 ;
 S FIRST=1 G BODY
 ;
TV(STRING,DAT1,DAT2) ;----- T.VX. FOR COMPUTING ONLY ( IF COMPUT '="" )
 ;-- OUTPUT : COLJ("AV"),- "MHL"), - "HF") , - "ML"), - "HT"), - "SHON")
 ;            SUM - KAMUT SHNIJOT AVODA
 ;-------------------------------------------------------------
 ;
BODY K M,H1,M1,COLG,COLJ,PSUM,PTSH,MSCR
 N D,D1,D2,I,N,N1,NN,TT,VN1,MHTM,SUMGV
 ;
 S JOMVAV=6
 I '$D(GLFILE) S GLFILE=$$^W4GL("FILE")
 ;
 S SUGMS=$$SUGMS(STRING)
 S SUG=$$SUG(STRING)
 ;
 S TVAV=$$GET1^W4LEVKVZ(SUG,"TVAV")
 K MGV0,MGVV
 ;
 I SUGMS=2 D  ;-- BASIS + NOSAFOT
 .N I
 .F I=1:1:3 S MGV0(I)=$$GET1^W4LEVKVZ(SUG,"SHAA"_(I-1))
 .F I=1:1:3 S MGVV(I)=$$GET1^W4LEVKVZ(SUG,"SHAAV"_(I-1)) ;-- YOM 6
 .I '$G(MGV0(1))!'$G(MGV0(2)) D
 ..D WRONGHR
 ;
 I SUGMS=3 D  ;-- MISHMEROT
 .N I
 .F I=1:1:3 S MGV0(I)=$$GET1^W4LEVKVZ(SUG,"SHAAME"_I)
 .F I=1:1:3 S MGVV(I)=$$GET1^W4LEVKVZ(SUG,"SHAAMV"_I) ; -- YOM 6
 .I '$G(MGV0(1))!'$G(MGV0(2)) D
 ..D WRONGHR
 ;
 S SUM=0
 S D1=$$^%L1DC(DAT1,4),D2=$$^%L1DC(DAT2,4)
 ;
 ;---> COLJ("AV")
 S JAMIM=$$GET1^W4LEVKVZ(SUG,"JAMIM")
 ;
 I 'JAMIM,$E(DAT1,1,4)=$E(DAT2,1,4),$E(DAT1,5,6)="01",$E(DAT2,5,6)>27 D
 .S JAMIM=D2-D1+1
 .F D=D1:1:D2 I $$^%L1DC(D,9)="y" S JAMIM=JAMIM-1
 ;
 I $G(@$$^W4CLKPRM@("SHNIC")),SUGMS=4 D
 .S COLJ("AV")=D2-D1+1
 .F D=D1:1:D2 I $$^%L1DC(D,9)="y" S COLJ("AV")=COLJ("AV")-1
 ;
 K SHBT S SHBT=0,VAV=0,SUMD=0,ENDC=0 K MMM
 ;
 F D=D1:1:D2+1 D:$D(M) PC K M Q:ENDC  S N=$$^%L1DC(D,2) I $D(@GLFILE@(STRING,N)) D
 .I $G(@$$^W4CLKPRM@("NONIGHT")) K H1 ;--- EIN MISHMERET LAILA
 .K HR S N1=""
 .N OKF S OKF=0
 .
 .I '$G(@$$^W4CLKPRM@("SHNIC"))!(SUGMS'=4) D
 ..F  S N1=$O(@GLFILE@(STRING,N,N1)) Q:N1=""  D  Q:OKF
 ...I $G(^(N1))="I",D'>D2 S COLJ("AV")=$G(COLJ("AV"))+1,OKF=1 ; - K-VO DNEY
 .
 .K %DN,%DS S (M1,M(5))=$$^%L1DC(N,1) ;-- N - YYMMDD
 .
 .S N1="",OLDI=-1
 .F  S N1=$O(@GLFILE@(STRING,N,N1)) Q:N1=""  Q:ENDC  S LASTDAY=N,LASTTIME=N1 D  S N1=LASTTIME
 ..Q:D=(D2+1)&'N1
 ..S VN1=$G(@GLFILE@(STRING,N,N1)),N11=$O(^(N1))
 ..I $D(@GLFILE@(STRING,N,N1,"H"))#2 S HR=^("H")
 ..
 ..I $D(@GLFILE@(STRING,N,N1,"HZM")),$G(COMPUT)="BLRD" D
 ...S SUM=0,H1=N1 K SUMGV
 ..
 ..S:'$D(JOM) JOM="`abcdey"
 ..
 ..S JJOM=$$^%L1DC($$^%L1DC(N,1),8)
 ..
 ..S M(4)=$E(JOM,JJOM)
 ..N I,TSHB1,TSHB2,TSHB3
 ..F I=1:1:3 S @("TSHB"_I)=$$TH($$GET1^W4LEVKVZ(SUG,"SHB"_I)) ; -- GWULOT SHABAT IN SECONDS
 ..I TSHB3 S TSHB2=0
 ..
 ..N DAYH1,DAYH2,DAYH3,HAG,HAG1,HAG2,HAG3 S (HAG,HAG1,HAG2,HAG3)=""
 ..S DAYH1=$$^%L1DC(N,4)-1
 ..S DAYH2=$$^%L1DC(N,4)
 ..S DAYH3=$$^%L1DC(N,4)+1
 ..S HAG1=$G(@$$^W4GL("LEVHAG")@(DAYH1))
 ..S HAG2=$G(@$$^W4GL("LEVHAG")@(DAYH2))
 ..S HAG3=$G(@$$^W4GL("LEVHAG")@(DAYH3))
 ..
 ..I 'HAG1,'HAG2,'HAG3,JJOM<6,JJOM>1 K SHBT S SHBT=0
 ..I 'HAG2,'HAG3,'TSHB2,JJOM=1,VN1="I" K SHBT S SHBT=0
 ..
 ..I JJOM<7 D TSHBHAG
 ..
 ..I D=(D2+1),VN1="I" S ENDC=1 Q
 ..
 ..I VN1="I",$G(MESHAA)!$G(ADSHAA),$D(P1TIPDAY) D  I $$TH(MESHAA)>N1!($$TH(ADSHAA)<N1) Q
 ...S:ADSHAA<5 ADSHAA=ADSHAA+24
 ..
 ..I VN1="I" D
 ...I JJOM=JOMVAV,'HAG2 S VAV=1
 ...I JJOM'=JOMVAV S VAV=0
 ...
 ...;  -----------------------------   N1 - CURRENT TIME IN SECONDS
 ...I TSHB1!TSHB2!TSHB3 D
 ....I JJOM=6!HAG3,JJOM'=7,'HAG2,TSHB1 D  Q
 .....S:N1'<TSHB1 VAV=0
 .....S SHBT=6 I HAG3!HAG2 S SHBT("HAG")=""
 ....I JJOM=7!HAG2,TSHB3,N1<TSHB3 S SHBT=7 I HAG2 S SHBT("HAG")="" Q
 ....I JJOM=7!HAG2,'TSHB3,'TSHB2 S SHBT=7 I HAG2 S SHBT("HAG")="" Q
 ....
 ....I JJOM=7,TSHB2 S SHBT=7 Q
 ....I JJOM=7,HAG3 S SHBT=7 Q
 ....
 ....I JJOM=1,TSHB2,N1<TSHB2 S SHBT=1 Q
 ....I JJOM=1,TSHB2,N1'<TSHB2 S SHBT=0 Q
 ..
 ..
 ..I $G(@$$^W4CLKPRM@("CNISA"))!'$D(MMM(D)) D
 ...S MMM(D)=""
 ...I JJOM>1,JJOM<6,'$D(SHBT("HAG")) K SHBT S SHBT=0
 ...I VAV,VN1="I",SHBT,TSHB1,N1<TSHB1,TSHB1-N1>7200 D
 ....S COLJ("AVV")=$G(COLJ("AVV"))+1
 ...I VAV,VN1="I",'SHBT S COLJ("AVV")=$G(COLJ("AVV"))+1
 ...I VAV,VN1="I",TSHB1,N1'<TSHB1!(TSHB1-N1<7200),SHBT D
 ....S COLJ("AVS")=$G(COLJ("AVS"))+1
 ...I 'VAV,VN1="I",SHBT S COLJ("AVS")=$G(COLJ("AVS"))+1
 ..
 ..;------- H1 - BEG.TIME , N1 - TIME IN NODE
 ..; M(1) - TOTAL , M(2) - EXIT , M(3) - ENTRANCE , M(4) - JOM, M(5) - DATE
 ..
 ..I VN1="I",OLDI<D D  S SUMD=0,OLDI=D
 ...I SUGMS=2,SUMD N H1,N1 I SUMD>0 S H1=0,N1=SUMD D ^W4LEVSUM(H1,N1,SUGMS)
 ..
 ..I VN1="I" S M(3)=$$T^%L1TIME(N1) D
 ...S H1=N1_"/"_$$^%L1DC(N,4) S COLJ("IN")=$G(COLJ("IN"))+1
 ..
 ..I VN1="I",N11'="",$G(@GLFILE@(STRING,N,N11))="I" D
 ...D PC K SHBT S SHBT=0,VAV=0 ;-- KNISA AHAREJ KNISA
 ..;
 ..I VN1="I",N11'?1N.N D  ;--- KNISA AHARONA BLI JACIA HAJOM
 ...N MAHAR,MHTM
 ...S MAHAR=$O(@GLFILE@(STRING,N)) I MAHAR="" D PC Q  ;-- LAST DAY
 ...D PC Q
 ..;
 ..
 ..I VN1="Z" S M(2)="*****" D PC K H1 ;--- SGIRAT JOM AUTOMATY
 ..;
 ..;
 ..I VN1="O" D  D CRHR D PC K H1 ;-- YACIA RAGILA
 ...S M(2)=$$T^%L1TIME(N1)
 ...I '$D(H1) S M(1)="?????" Q
 ...S H01=H1,N01=N1,RZN=N1-H1
 ...S TT=N1-H1+($$^%L1DC(N,4)-$P(H1,"/",2)*86400)
 ...I TT>86400 S M(1)="?????" D PC S SUMD=0 Q
 ...I TT<0 S TT=TT+86400
 ...S NN=TT
 ...S M(1)=$$SUM(NN) ;;$$T^%L1TIME(TT) ;-- M(1) - TOTAL
 ...I M(1)>16 D
 ....S M(1,"M")=M(1)_" ?"
 ....S M(1)=M(1)_" <span style=""color:red"">(?)</span>",M(1,"NOHB")=""
 ...;
 ...N SUMH S SUMH=$$TTD(M(1))*3600
 ...S SUM=SUM+SUMH,SUMD=SUMD+SUMH ;-- SUMD - SHAOT AVODA JOMI
 ...
 ...N SUMD0 S SUMD0=SUMD 
 ...;
 ...;;I VAV,TVAV,SHBT'=7 S RZN=0 D PROCVAV S VAV=0,H01=-1,N01=-1 Q  ; -- VH YOM 6 & HISH
 ...
 ...N MSHAAS S MSHAAS=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 ...S PRSHBT=0
 ...
 ...I SHBT S RZN=0 D  K SHBT S SHBT=0,PRSHBT=1
 ....D HISHRZN
 ....I RZN<0 S RZN=RZN+86400
 ....
 ....S SUMD=SUMD-RZN
 ....
 ....;;I SUGMS=2,$G(@$$^W4PRM@("SHAOTS"))!$$PAPJ^W4PRM D  Q
 ....I SUGMS=2 D  Q
 .....N SHAOTS1,SHAOTS2
 .....S SHAOTS1=$$GET1^W4LEVKVZ($$SUG(STRING),"SHAA0")
 .....S SHAOTS2=$$GET1^W4LEVKVZ($$SUG(STRING),"SHAA1")
 .....;
 .....I RZN>(SHAOTS2*3600) D  Q
 ......S SUMGV(-2)=$G(SUMGV(-2))+(RZN-(SHAOTS2*3600))
 ......S SUMGV(-1)=$G(SUMGV(-1))+(SHAOTS2*3600-(SHAOTS1*3600))
 ......S SUMGV(0)=$G(SUMGV(0))+(SHAOTS1*3600)
 ......I SUMD>0 S SUMGV(3)=SUMD ;;,SUMD=0; ***
 .....
 .....I RZN>(SHAOTS1*3600) D  Q
 ......S SUMGV(-1)=$G(SUMGV(-1))+(RZN-(SHAOTS1*3600))
 ......S SUMGV(0)=$G(SUMGV(0))+(SHAOTS1*3600)
 ......I SUMD>0 S SUMGV($S(SUMD0>(SHAOTS2*3600):3,1:2))=SUMD ; ,SUMD=0; ***
 .....
 .....S SUMGV(0)=$G(SUMGV(0))+RZN
 .....I SUMD0>(SHAOTS1*3600) S SUMGV($S(SUMD0>(SHAOTS2*3600):3,1:2))=SUMD ;,SUMD=0; ***
 ....
 ....S SUMGV(0)=$G(SUMGV(0))+RZN,SUMD=SUMD-RZN
 ...;
 ...I $G(H01)'<0,$G(N01)'<0,SUGMS=3 D ^W4LEVSUM(H01,N01,SUGMS) S PRSHBT=0 Q
 ..
 ..I N1="HAG" S LOAVN="b g" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL"))) ;-- COLJ("MHL")
 ..I N1="MHL" S LOAVN="d l g n" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL"))) ;-- COLJ("MHL")
 ..I N1="MHLY" S LOAVN="cli zlgn" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL"))) ;-- COLJ("MHLY")
 ..I N1="HF" S LOAVN="y t e g" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL")))
 ..I N1="ML" S LOAVN="mi`elin" D LOAV(N1,LOAVN,$G(@GLFILE@(STRING,N,N1,"TSHL")))
 ..I N1="HT" S LOAVN="melyz `ll zexcrd" D LOAV(N1,LOAVN,0)
 .K M,HR
 ;
 I SUGMS=2,SUMD>0 N H1,N1 S H1=0,N1=SUMD D ^W4LEVSUM(H1,N1,SUGMS) S SUMD=0,PRSHBT=0 ;--- BASIS+NOSAFOT
 ;
 I $G(@$$^W4CLKPRM@("CNISA")),'$G(@$$^W4CLKPRM@("SHNIC")) D
 .S COLJ("AV")=$G(COLJ("IN"))
 ;
 D PC
 ;
 ;-------------- PRINT TOTAL OF DAYS WHEN WORKER WASN'T IN PLACE BECAUSE ...
 ;
PCIT S SUMKSF=0,SUMHKDM=0,SUMBONUS=0,SUMSHON=0,SUMALL=0
 S TM=$$T^%L1TIME(SUM),M("TOT")="" ;-- ITOG
 S M(1)=$$SUM(SUM)
 S SHB1=$$GET1^W4LEVKVZ(SUG,"SHB1")
 ;------------------------- LEFI SHAOT
 ;
 I SUM D KAV
 M ^LV(STRING,"SUMGV")=SUMGV
 ;
 I SUGMS=1 D  G M0
 .S MHR=+$$GET1^W4LEVPR(STRING,"MSHAA")
 .S MHRV=+$$GET1^W4LEVPR(STRING,"MSHAAV")
 .S MHRS=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 .;
 .I '$G(SUMGV(0))&'$G(SUMGV(6)) D  Q
 ..S MSCR(SUGMS,1,"MSHAA")=$G(MSCR(SUGMS,1,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,1,"MSHAA","MHR")=MHR
 ..D KSF(M(1),MHR)
 .
 .S M(1)=$$T($$TH(M(1))-$G(SUMGV(0))-$G(SUMGV(6)))
 .S M(4)="leg ini"
 .S MSCR(SUGMS,1,"MSHAA")=$G(MSCR(SUGMS,1,"MSHAA"))+$$TTD(M(1))
 .S MSCR(SUGMS,1,"MSHAA","MHR")=MHR
 .D KSF(M(1),MHR)
 .
 .I $G(SUMGV(6)) D
 ..S M(1)=$$T($G(SUMGV(6))),M(4)="'e mei"
 ..S MSCR(SUGMS,6,"MSHAAV")=$G(MSCR(SUGMS,6,"MSHAAV"))+$$TTD(M(1))
 ..S MSCR(SUGMS,6,"MSHAAV","MHR")=MHRV
 ..D KSF(M(1),MHRV) ;,PC
 .
 .I $G(SUMGV(0)) D
 ..S M(1)=$$T($G(SUMGV(0))),M(4)="y''n"
 ..S MSCR(SUGMS,0,"MSHAAS")=$G(MSCR(SUGMS,0,"MSHAAS"))+$$TTD(M(1))
 ..S MSCR(SUGMS,0,"MSHAAS","MHR")=MHRS
 ..D KSF(M(1),MHRS)
 ;
 ;------------------------ BASIS + NOSAFOT
 I SUGMS=2 D  G M0
 .N TM,NN,MHR
 .S NN=0 F II=1:1 S NN=$O(SUMGV(NN)) Q:NN=""  D
 ..S TM=$$T^%L1TIME(SUMGV(NN)),M("SM")=3
 ..K M S M(1)=$$T(SUMGV(NN)) ;$$TTD(TM)
 ..
 ..I NN<6 D
 ...S M(4)=" "_$J(+$G(MGV0(NN-1)),2)_" - "_$J($G(MGV0(NN)),2)_" "
 ...S M(4,"LTR")=""
 ...N IND S IND="MSHAA"_(NN-1)
 ...S MHR=+$$GET1^W4LEVPR(STRING,IND)
 ...S MSCR(SUGMS,1,IND)=$G(MSCR(SUGMS,1,IND))+$$TTD(TM)
 ...S MSCR(SUGMS,1,IND,"MHR")=MHR
 ...I SUMGV(NN) D KSF(TM,MHR,NN-1)
 ..
 ..I NN>5 D
 ...S M(4)="('e) "_$J(+$G(MGVV(NN-6)),2)_" - "_$J($G(MGVV(NN-5)),2)_" "
 ...S M(4,"LTR")=""
 ...N IND S IND="MSHAAV"_(NN-6)
 ...S MHR=+$$GET1^W4LEVPR(STRING,IND)
 ...;;S MSCR(SUGMS,6,MHR)=$G(MSCR(SUGMS,6,MHR))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV")=$G(MSCR(SUGMS,6,"MSHAAV"))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV","MHR")=MHR
 ...I SUMGV(NN) D KSF(TM,MHR,1)
 .;
 .I $G(SUMGV(0)) D  Q
 ..K M S TM=$$T^%L1TIME(SUMGV(0)),M("SM")=3
 ..S M(1)=$$T(TM) ;$$TTD(TM)
 ..S M(4)=" ( y''n )" S MHRS=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 ..S MSCR(SUGMS,0,"MSHAAS")=$G(MSCR(SUGMS,0,"MSHAAS"))+$$TTD(TM)
 ..S MSCR(SUGMS,0,"MSHAAS","MHR")=MHRS
 ..D KSF(TM,MHRS,2)
 ..;
 ..I $G(SUMGV(-1)) D
 ...K M
 ...S M(1)=$$T($G(SUMGV(-1))),M(4)="175% y''n",M("SM")=3
 ...S MSCR(SUGMS,-1,"MSHAAS")=$G(MSCR(SUGMS,-1,"MSHAAS"))+$$TTD(M(1))
 ...N MHRS1 S MHRS1=$J(MHRS*1.16667,2,2)
 ...S MSCR(SUGMS,-1,"MSHAAS","MHR")=MHRS1
 ...D KSF(M(1),MHRS1)
 ..
 ..I $G(SUMGV(-2)) D
 ...S M(1)=$$T($G(SUMGV(-2))),M(4)="200% y''n"
 ...S MSCR(SUGMS,-2,"MSHAAS")=$G(MSCR(SUGMS,-2,"MSHAAS"))+$$TTD(M(1))
 ...N MHRS2 S MHRS2=$J(MHRS*1.33333,2,2)
 ...S MSCR(SUGMS,-1,"MSHAAS","MHR")=MHRS2
 ...D KSF(M(1),MHRS2)
 ;
 ;------------------------ BASIS + NOSAFOT
 I SUGMS=2 D  G M0
 .Q
 ;
 ;------------------------- MISHMEROT
 ;
 I SUGMS=3 D  G M0
 .;;M ^LV(STRING,"MGV0")=MGV0
 .N TM,NN,MHR
 .S NN=0 F II=1:1 S NN=$O(SUMGV(NN)) Q:NN=""  D
 ..S TM=$$T^%L1TIME(SUMGV(NN)),M("SM")=3
 ..K M S M(1)=$$T(TM) Q:'SUMGV(NN)
 ..
 ..I NN<6 D
 ...S M(4)=" "_$J($G(MGV0(NN)),2)_" - "_$J($S($D(MGV0(NN+1)):MGV0(NN+1),1:MGV0(1)),2)_" "
 ...S M(4,"LTR")=""
 ...N IND S IND="MSHAAM"_NN
 ...S MHR=+$$GET1^W4LEVPR(STRING,IND)
 ...;;S MSCR(SUGMS,1,MHR)=$G(MSCR(SUGMS,1,MHR))+$$TTD(TM)
 ...S MSCR(SUGMS,1,IND)=$G(MSCR(SUGMS,1,IND))+$$TTD(TM)
 ...S MSCR(SUGMS,1,IND,"MHR")=MHR
 ...D KSF(TM,MHR)
 ..
 ..I NN>5 D
 ...I $G(MGVV(2)),'$G(MGVV(3)),$G(SHB1) S MGVV(3)=SHB1
 ...I '$G(MGVV(2)),$G(SHB1) S MGVV(2)=SHB1 K MGVV(3)
 ...S M(4)="('e) "_$J($G(MGVV(NN-5)),2)_" - "_$J($G(MGVV(NN-4)),2)_" "
 ...S M(4,"LTR")=""
 ...S MHR=+$$GET1^W4LEVPR(STRING,"MSHAAMV"_(NN-5))
 ...;;S MSCR(SUGMS,6,MHR)=$G(MSCR(SUGMS,6,MHR))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV")=$G(MSCR(SUGMS,6,"MSHAAV"))+$$TTD(TM)
 ...S MSCR(SUGMS,6,"MSHAAV","MHR")=MHR
 ...D KSF(TM,MHR)
 .
 .I $G(SUMGV(0)) D  Q
 ..K M S TM=$$T^%L1TIME(SUMGV(0)),M("SM")=3
 ..;;Q:'(TM*60+$P(TM,":",2))
 ..S M(1)=$$T(TM) ;$$TTD(TM)
 ..S M(4)=" ( y''n )" S MHR=+$$GET1^W4LEVPR(STRING,"MSHAAS")
 ..;;S MSCR(SUGMS,0,MHR)=$G(MSCR(SUGMS,0,MHR))+$$TTD(TM)
 ..S MSCR(SUGMS,0,"MSHAAS")=$G(MSCR(SUGMS,0,"MSHAAS"))+$$TTD(TM)
 ..S MSCR(SUGMS,0,"MSHAAS","MHR")=MHR
 ..D KSF(TM,MHR)
 .Q
 ;
 ;------------------------- MASKORET JOMI
 ;
 I SUGMS=4 D  G M0
 .N MHR,MHRS,MHRV,JA
 .S MHR=+$$GET1^W4LEVPR(STRING,"MJOM")
 .S JA=$G(COLJ("AV"))
 .S MHRS=+$$GET1^W4LEVPR(STRING,"MJOMS")
 .S MHRV=+$$GET1^W4LEVPR(STRING,"MJOMV")
 .I MHRV S JA=JA-$G(COLJ("AVV"))
 .I MHRS S JA=JA-$G(COLJ("AVS"))
 .
 .I JA S:MHRV!MHRS M(4)="libx mei" D
 ..;;S MSCR(SUGMS,1,"MSHAA")=$G(MSCR(SUGMS,1,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,1,"MJOM")=$G(MSCR(SUGMS,1,"MJOM"))+JA
 ..S MSCR(SUGMS,1,"MJOM","MHR")=MHR
 ..D KSF1(MHR,JA) ;D PC
 .
 .I MHRV,$G(COLJ("AVV")) S M(4)="'e mei" D
 ..;;S MSCR(SUGMS,6,"MSHAA")=$G(MSCR(SUGMS,6,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,6,"MJOM")=$G(MSCR(SUGMS,6,"MJOM"))+COLJ("AVV")
 ..S MSCR(SUGMS,6,"MJOM","MHR")=MHRV
 ..D KSF1(MHRV,COLJ("AVV")) ;D PC
 .
 .I MHRS,$G(COLJ("AVS")) S M(4)="y''n" D
 ..;;S MSCR(SUGMS,0,"MSHAA")=$G(MSCR(SUGMS,0,"MSHAA"))+$$TTD(M(1))
 ..S MSCR(SUGMS,0,"MJOM")=$G(MSCR(SUGMS,0,"MJOM"))+COLJ("AVS")
 ..S MSCR(SUGMS,0,"MJOM","MHR")=MHRS
 ..D KSF1(MHRS,COLJ("AVS")) ;D PC
 ;
 ;------------------------- OKLAD
 I SUGMS=5 S SUMKS=$$GET1^W4LEVPR(STRING,"MHODESH") D  G M0
 .N DT1,DT2,SUMKS1 S DT1=$$^%L1DC(DAT1,4),DT2=$$^%L1DC(DAT2,4)
 .N DATS,DATF,DTS,DTF
 .S DATS=$$GET1^W4LEVPR(STRING,"DATS")
 .S DTS=$$^%L1DC(DATS,3)
 .S DATF=$$GET1^W4LEVPR(STRING,"DATF")
 .S DTF=$$^%L1DC(DATF,3)
 .I DTF-DTS>10 D
 ..I DTS,DT1<DTS S DT1=DTS
 ..I DTF,DT2>DTF S DT2=DTF
 .S RZN=30 I DT2-DT1<32,$E(DAT1,3,4)=$E(DAT2,3,4) D
 ..S RZN=$E($$^%L1DC($$LM^%L1DC(DT2),1),1,2)
 .S SUMKS1=SUMKS I RZN S SUMKS1=SUMKS*(DT2-DT1+1)/RZN
 .S MSCR(SUGMS,1,"MHODESH")=$G(MSCR(SUGMS,1,"MHODESH"))+$$TTD(M(1))
 .S MSCR(SUGMS,1,"MHODESH","MHR")=SUMKS1
 .I $G(FLSLR) S M(3)=$J(SUMKS1,2,2) S SUMKSF=SUMKS1 D PC Q
 .I '$G(FLSLR) S M(2)="zery k""dq" D PC
 ;
 I $O(SUMGV(""))'="",FLSLR D
 .S M(1)="g""y "_$J(SUMKSF,2,2),M(2)="k''dq",M("TOT")="" D PC
 ;
M0 ;
 ;
 ;--- MAHALOT, HUFSHOT, MILUIM
 ;
 I $G(SUGMS)<4,SUMALL D
 .N M S M("TOT")=""
 .;;S M(1)=$$T(SUM) ;$$T^%L1TIME(SUM)
 .S M(1)=$$T(SUMALL)
 .S M(2)=$$TV^%W1DICT($$^%W1LNG,"TOTALALLHOURS")
 .D PC K M
 ;
 S N=DAT1-1 D ^W4LEVPP
 ;
 S N1="" K M F  S N1=$O(PSUM(N1)) Q:N1=""  D
 .S M(1)=$S($G(FLSLR):$J($G(PTSH(N1)),2,2),1:"")
 .S M(4)="ini "_PSUM(N1),M(2)=$G(PNAME(N1))
 .S M("TOT")=""
 .S SUMKSF=SUMKSF+M(1) D PC
 ;
 S N=DAT1-1 ;,SUM=0
 N DT1,DT2,DT
 S DT1=$$^%L1DC(DAT1,4),DT2=$$^%L1DC(DAT2,4)
 ;
 F DT=DT1:1:DT2 S N=$$^%L1DC(DT,2) I $D(@GLFILE@(STRING,N,"BONUS")) D
 .K M S M(5)=$$^%L1DC(N,1) ;--- DATE
 .N TXT S TXT=$G(@GLFILE@(STRING,N,"BONUS","TXT"))
 .S M(2)=$S($L(TXT):"("_TXT_")",1:"")_" qepea"
 .S M(1)=$J(@GLFILE@(STRING,N,"BONUS","TSHL"),2,2)
 .S M("TOT")=""
 .S SUMBONUS=SUMBONUS+M(1) D PC
 ;
 F DT=DT1:1:DT2 S N=$$^%L1DC(DT,2) I $D(@GLFILE@(STRING,N,"SHON")) D
 .K M S M(5)=$$^%L1DC(N,1) ;--- DATE
 .N TXT S TXT=$G(@GLFILE@(STRING,N,"SHON","TXT"))
 .S M(2)=$S($L(TXT):"("_TXT_")",1:"")_" zepey"
 .S M(1)=$J(@GLFILE@(STRING,N,"SHON","TSHL"),2,2)
 .S M("TOT")=""
 .S SUMSHON=SUMSHON+M(1) D PC
 ;
 F DT=DT1:1:DT2 S N=$$^%L1DC(DT,2) I $D(@GLFILE@(STRING,N,"HKDM")) D
 .K M S M(5)=$$^%L1DC(N,1) ;--- DATE
 .N TXT S TXT=$G(@GLFILE@(STRING,N,"HKDM","TXT"))
 .S M(2)=$S($L(TXT):"("_TXT_")",1:"")_" dncwn"
 .S M(1)=$J(-@GLFILE@(STRING,N,"HKDM","TSHL"),2,2)
 .S M("TOT")=""
 .S SUMHKDM=SUMHKDM-M(1) D PC
 ;
 F II="NESIOT","ATMADA","REHEV","ADDS","BIGUD" D
 .S VL=$$GET1^W4LEVPR(STRING,II) Q:'VL
 .S M(1)=$J(VL,2,2)
 .S SUMKSF=$G(SUMKSF)+VL
 .S M(2)=$$NMRKV^W4LEVPR(STRING,II)
 .S M("TOT")="" D PC
 ;
 G:'$G(FLSLR) Z
 ;
 S M(1)=$J(SUMKSF+SUMBONUS+SUMSHON-SUMHKDM,2,2),M(2)=" melyzl",M("TOT")="" D PC
Z ;
 K M I $G(COLJ("AV")) D
 .S M(1)=$G(COLJ("AV"))_"  ",M(2)=" dcear ini k""dq",M("TOT")=""  D PC
 ;
 I '$G(@$$^W4CLKPRM@("KNISA")),$G(COLJ("IN")) D
 .K M S M(1)=$G(COLJ("IN"))_"  ",M(2)=" zeqipk k""dq",M("TOT")="" D PC
 ;
 I '$D(COMPUT) D
 .D WST("</table>")
 .D ^W4MDPPC
 .;;I '$G(%ARG("FLDAF")) D S1($C(10,10,10,10))
 ;
 I $G(FLDATA) S SHOLD=SH+1
 Q
 ;
END ;;K @$$^W4MAIN("TMPS111")
 Q
 ;
TSHBHAG ;
 I HAG2 S TSHB3=$$TH($P(HAG2,"\",2)),TSHB1=$$TH($P(HAG2,"\",1)) D  Q
 .I JJOM'=7 S TSHB2=""
 .I HAG3 S TSHB3=""
 .I HAG1,JJOM'=6 S TSHB1=""
 I HAG3 S TSHB1=$$TH($P(HAG3,"\",1)),TSHB2="",TSHB3="" Q  ; MAHAR
 I HAG1 S TSHB3=$$TH($P(HAG1,"\",2)) D  Q  ; HAG ETMOL
 .I JJOM<6 S TSHB1="",TSHB2=""
 Q
 ;
HISHRZN ;
 S (H01,N01)=-1
 N DVH S DVH=$P(H1,"/",2)
 I 'TSHB1,'TSHB2,'TSHB3 S RZN=N1-H1 Q
 ;
 I SHBT=6 D  Q
 .I 'TSHB1 S RZN=N1-H1 Q
 .I H1<TSHB1 D  Q
 ..I N1<TSHB1,N1>H1 S N01=TSHB1,H01=+H1,RZN=0 Q
 ..S RZN=N1-TSHB1,N01=TSHB1,H01=+H1
 .S RZN=N1-H1
 ;
 I JJOM=1,TSHB2 D  Q
 .I N1<TSHB2 D  Q
 ..S RZN=N1-H1
 .S RZN=TSHB2-H1
 ;
 I SHBT=7 D  ; -- KNISA BE SHABAT
 .I DVH=$$^%L1DC(N,4)!'DVH D  Q  ;--- KNISA BE OTO YOM
 ..I TSHB3,N1>TSHB3,SHBT=7 D  Q
 ...I JJOM=6,N1>TSHB1 S RZN=N1-H1 Q
 ...I HAG3 S RZN=N1-H1 Q
 ...S RZN=TSHB3-H1 S H01=TSHB3
 ..I TSHB3,N1'>TSHB3 D  Q ;
 ...S RZN=N1-H1 ;
 ..S RZN=N1-H1
 .;
 .I DVH,DVH<$$^%L1DC(N,4) D  Q  ;--- KNISA YOM KODEM
 ..I $G(HAG2) S RZN=N1-H1 Q  ; -- HAYOM GAM HAG
 ..I TSHB3 D  Q
 ...I H1<TSHB3 D  Q
 ....I N1>TSHB3!(N1<H1) S RZN=TSHB3-H1 S H01=TSHB3 Q  ; -- WAS ,'$G(HAG1)
 ....S RZN=N1-H1
 ..I TSHB2,N1<TSHB2 D  Q
 ...S RZN=N1-H1
 ..I TSHB2 D  Q
 ...S RZN=TSHB2-H1,H01=TSHB2
 ..S RZN=N1-H1
 Q
 ;
CLOSE ;
 Q
 ;
LOAV(N1,LOAVN,TSH) ;
 S M(1)=LOAVN,M("TOT")="" D PC
 S COLJ(N1)=$G(COLJ(N1))+1
 S PSUM(N1)=$G(PSUM(N1))+1
 S PTSH(N1)=$G(PTSH(N1))+TSH
 I LOAVN'["["!(LOAVN'["]") S LOAVN="[ "_LOAVN_" ]"
 S PNAME(N1)=LOAVN
 Q
 ;
T(TT) Q:TT<0 ""  Q $$SUM(TT)  ;Q $$T^%L1TIME(TT)
 Q
TH(TT) Q:TT<0 ""  I TT[":" Q $P(TT,":")*3600+($P(TT,":",2)*60)
 I '$$CLOCKMIN Q TT*3600
 Q TT
 ;
TTD(TT) Q:TT<0 ""  I TT[":" Q $J($$TH(TT)/3600,2,2)
 Q TT
 ;
WRONGHR ;
 S M(2)=$$H2U^%L1FRM("! micaer zveaw zlaha oekp excbed `l zery")
 S M(2,"RED")=1,M(2,"ATN")="" D PC
 Q
 ;
PC Q:$D(COMPUT)  Q:'$D(M)
 N OKPC S OKPC=0
 ;;ZWR M
 N I F I=%CPOZ:-1:1 D
 .N VL S VL=$TR($G(M(I))," ","")
 .I VL'?.P,VL'="k""dq",VL'="zeryk""dq",'$D(M(I,"ATN")),VL'="00:00" D
 ..I VL'="melyzl",$TR(VL,"0.","")'="",$P(VL,"=",2)'?1"0.0"."0" S OKPC=1 Q
 Q:'OKPC
 ;;W "  OKPC="_OKPC,!
 ;
 S SH=SH+1,SH1=SH1+1 I SH=1 D SHAP($G(DAF))
 ;
 S ST="<tr "
 S ST=ST_" style=""color:black"
 I $D(M("TOT")) S ST=ST_";background-color:lightyellow;font-weight:bold"
 ;;I $G(STRING),$$DELIS^W4PRM S ST=ST_";cursor:pointer"
 I $G(STRING),'$G(%ARG("FROMRPR")) S ST=ST_";cursor:pointer"
 S ST=ST_""" "
 ;;I $G(STRING),$$DELIS^W4PRM D
 I $G(STRING),'$G(%ARG("FROMRPR")) D
 .N DAT S DAT=$G(M(5))
 .I DAT="",$G(N)?6N S DAT=$$^%L1DC(N,1)
 .S ST=ST_" onClick=""ClickOved('"_STRING_"','"_DAT_"')"" "
 S ST=ST_" >"
 ;
 S STM=""
 N I F I=%CPOZ:-1:1 D
 .S ST=ST_"<td "_$S($D(M(I,"LTR")):" dir=""LTR"" align=""right""",1:"")_" >&nbsp;&nbsp;"_$$RKV(I)_"&nbsp;&nbsp;</td>"
 .N MI S MI=$G(M(I)) I $D(M(I,"M")) S MI=M(I,"M")
 .S STM=$J(MI,MPOS(I))_" "_STM
 ;
 I $$HR,'$$INPHR D
 .I $L($G(HR))!$L($G(M("HR"))) D  Q
 ..N VL S VL=$$H2U^%L1FRM($G(HR))
 ..I $L($G(M("HR"))) S VL=VL_" "_M("HR")
 ..S ST=ST_"<td align=""right"" style=""color:red"" >&nbsp;&nbsp;"
 ..S ST=ST_VL_"&nbsp;&nbsp;</td>"
 .S ST=ST_"<td>&nbsp;</td>"
 ;
 I $$INPHR D
 .N VL
 .;;W "VL="_VL,! ; ***
 .S ST=ST_"<td align=""center"" >&nbsp;"
 .I '$G(STRING)!'$G(N)!($G(N1)="")!($G(M(5))="") S ST=ST_"</td>" Q
 .S VL=$G(@$$^W4GL("FILE")@(STRING,N,N1,"H"))
 .N IND S IND=STRING_"_"_N_"_"_N1
 .S ST=ST_"<input name=""inphr"" size=""40"" id=""inphr"_IND_""" value="""_$$H2U^%L1FRM(VL)_""" />&nbsp;</td>"
 ;
 S ST=ST_"</tr>"
 ;
 D WST(ST)
 ;
 K M Q
 ;
 ;
RKV(I) ;
 N RKV I '$D(M(I,"NOHB")) S RKV=$$H2U^%L1FRM($G(M(I)))
 I $D(M(I,"NOHB")) S RKV=M(I)
 I $D(M(I,"RED")),$G(M(I))'="" D
 .S RKV="<span style=""color:red;font-weight:bold"" >"_M(I)_"</span>"
 I RKV=""!($G(M(I))="") S RKV="&nbsp;"
 Q RKV
 ;
 ;
PAGE ;
 S PG=PG+1
 N CNTN S CNTN="" ;;I $D(PEREH) S CNTN=" jynd"
 D WST($$^%W1DICT("PAGE",PG_"<>"_CNTN))
 Q
 ;
TBPAGE ;
 D OPTBL
  D WST(" <tr>")
  D WST("  <td "_$$INV^%W1ALIGN_" >")
    D PAGE
  D WST("  </td>")
  D WST(" </tr>")
  D WST("</table>")
 Q
 ;
 ;
CRHR ;
 N SPANYAD S SPANYAD="<span style=""font-size:"_$$^W3FSZ(10)_""">"
 ;
 I $D(@GLFILE@(STRING,N,N1,"ARM")) D  Q
 .N VL,WHO,WHO1 S VL=$G(^("ARM")),WHO="",WHO1=""
 .I VL["^" S WHO=$P(VL,"^",2),VL=$P(VL,"^")  
 .I WHO'="" S WHO1=$$H2U^%L1FRM(WHO_" ici lr")
 .S M("HR")=SPANYAD_" [ "_$$H2U^%L1FRM(" ipci clwed")_" "_$ZD(VL,"24:60 DD.MM.YY")_" "_WHO1_" ]"_"</span>"
 ;
 I '(N1#100) D  Q
 .S M("HR")=SPANYAD_" [ "_$$H2U^%L1FRM("ipci clwed")_" ]"_"</span>"
 ;
 Q
 ;
 ;
SHAP(DAF) ;
 N I,TXT,PRSHAP S PRSHAP=1
 ;
 D OPTBL
 I FIRST,'$G(FRST),'$G(%ARG("FLDAF")) S STM=$C(10,10) ;;$G(%MDP("PG"))
 ;
 I '$G(DAF) D WST("<br /><br />") S SH1=SH1+2
 ;
 D WST(" <tr>")
 I FIRST,'$G(FRST) S STM=""
  D WST("  <td "_$$INV^%W1ALIGN_" >")
   I $G(DAF) D PAGE
  D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I FIRST S STM=$$CENTR^%L1FRM($G(MAS(2))_" "_$G(MAS(1)),40)
  D WST(MAS(1)_" "_$$H2U^%L1FRM(MAS(2)))
 D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I $G(SUG) D
  .I FIRST S STM=$$CENTR^%L1FRM($G(@$$^W4GL("LEVKVZ")@(SUG)),40)
  .D WST($$^%W1DICT("GROUP")_" "_SUG_" : "_$$H2U^%L1FRM($G(@$$^W4GL("LEVKVZ")@(SUG))))
 D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I FIRST S STM=$$CENTR^%L1FRM(MAS(5)_" : zxekyn beq",40)
  D WST($$H2U^%L1FRM(MAS(5)_" : zxekyn beq"))
 D WST("  </td>")
 D WST(" </tr>")
 ;
 D WST(" <tr>")
 D WST("  <td>")
  I FIRST S STM=$$CENTR^%L1FRM(MAS(4)_" cr "_MAS(3)_"-n",40)
  D WST($$^%W1DICT("FROM")_" "_MAS(3)_" "_$$^%W1DICT("TO")_" "_MAS(4))
 I FIRST S STM=""
 D WST("  </td>")
 D WST(" </tr>")
 D WST("</table>")
 D WST("<br />")
 S SH1=SH1+7,SH=SH+7
 ;
 S PRSHAP=2
 D OPTBL1
 D WST(" <tr>")
  D WST("<th>")
   D WST($$^%W1DICT("DATE"))
  D WST("</th>")
  D WST("<th>")
   D WST($$^%W1DICT("DAY"))
  D WST("</th>")
  D WST("<th>")
   D WST($$^%W1DICT("ENTRANCE"))
  D WST("</th>")
  D WST("<th>")
   D WST($$^%W1DICT("EXIT"))
  D WST("</th>")
  D WST("<th>")
   N STM0
   I FIRST S STM="  k""dq  : d`ivi : dqipk : mei :  jix`z ",STM0=STM
   S MPOS(1)=8,MPOS(2)=7,MPOS(3)=7,MPOS(4)=5,MPOS(5)=8
   D WST($$^%W1DICT("TOTAL"))
  I FIRST S STM=" "_$TR($J("",$L(STM0)-1)," ","-")
  D WST("</th>")
  ;
  I $$HR!$$INPHR D
  .D WST("<th>"_$$^%W1DICT("COMMENT")_"</th>")
 D WST("</tr>")
 S FRST=0
 Q
 ;
 ;
KSF(TT,MHR,NN) ; ---- LEFI SHAOT
 N TTSEC,TTSEC0,TTSEC1,TTMAX
 S TTSEC=TT*3600+($P(TT,":",2)*60)
 N GWHOUR S GWHOUR=$G(@$$^W4PRM@("GWHOUR"))
 I $G(DAT1),$G(DAT2),$E(DAT1,1,4)'=$E(DAT2,1,4) S GWHOUR=0
 S TTMAX=GWHOUR*3600
 S SUMALL=SUMALL+TTSEC
 ;
 S TTSEC1=0
 ;
 I $G(SUGMS)=2,$G(NN)=0,TTMAX,TTSEC>TTMAX D
 .S TTSEC1=TTSEC-TTMAX
 .S TTSEC=TTMAX
 .S TT=$$T^%L1TIME(TTSEC)
 .S M(1)=$$SUM(TTMAX)
 .S M125=M(1)
 ;
 S M("TOT")=""
 ;
 I '$G(MHR)!'$G(FLSLR),'TTSEC1 D  Q
 .N M1 S M1=M(1)
 .S M(2)=$S($G(NN):"",1:$$TV^%W1DICT($$^%W1LNG,"TOTALHOURS"))
 .S M(3)=$S($G(NN)=1:"125%",$G(NN)=2:"150%",1:"")
 .D PC K M
 .
 .I $G(M125),$G(NN)=1 D
 ..S M(1)=$$SUMH(M125,M1)
 ..S M(2)=""
 ..S M(3)=$S($G(NN)=1:"125% k""dq")
 ..S M("TOT")=""
 ..D PC
 ..S M125=0
 ;
 I '$G(MHR)!'$G(FLSLR),TTSEC1 D
 .S M(2)=$$TV^%W1DICT($$^%W1LNG,"TOTALHRBASE",GWHOUR)
 .D PC K M
 ;
 I $G(MHR),$G(FLSLR) D
 .S SUMKS=$J(TT*MHR+($P(TT,":",2)/60*MHR),2,2)
 .S SUMKSF=SUMKSF+SUMKS
 .S M("TOT")=""
 .S M(2)="*"_$J(MHR,5,2)_" = "_$J(SUMKS,7,2)
 .;;S M(3)=$$TV^%W1DICT($$^%W1LNG,"TOTAL")
 .S M(3)=$S($G(NN)=1:"125%",$G(NN)=2:"150%",1:"")
 .N M1 S M1=$G(M(1))
 .S NOFLDATA="" D PC K NOFLDATA K M
 .
 .I $G(NN)=1,$G(M125) D
 ..S M(1)=$$SUMH(M125,M1)
 ..S M(2)="*"_$J(MHR,5,2)_" = "_$J($$SUMH(M125,M1,1)*MHR,7,2)
 ..S M(3)=$S($G(NN)=1:"125% k""dq")
 ..S M("TOT")=""
 ..S NOFLDATA="" D PC K NOFLDATA
 ..S M125=0
 ;
 I TTSEC1,$G(NN)=0,$G(STRING) D
 .S M("TOT")=""
 .S TT=$$T^%L1TIME(TTSEC1)
 .S M(1)=$$SUM(TTSEC1),M125=M(1)
 .N IND S IND="MSHAA1"
 .S MHR=+$$GET1^W4LEVPR(STRING,IND)
 .
 .I '$G(MHR)!'$G(FLSLR) D  Q
 ..S M(2)=$$TV^%W1DICT($$^%W1LNG,"TOTALHREXTRA",GWHOUR)
 ..S M(3)="125%"
 ..D PC K M
 .;
 .I $G(MHR),$G(FLSLR) D
 ..S SUMKS=$J(TT*MHR+($P(TT,":",2)/60*MHR),2,2)
 ..S SUMKSF=SUMKSF+SUMKS
 ..S M(2)="*"_$J(MHR,5,2)_" = "_$J(SUMKS,7,2)
 ..;;S M(3)=$$TV^%W1DICT($$^%W1LNG,"TOTALHREXTRA")
 ..S M(3)="125%"
 ..S M(4)=$$TV^%W1DICT($$^%W1LNG,"TOTALHREXTRA",GWHOUR)
 ..S NOFLDATA="" D PC K NOFLDATA
 ;
 K M
 Q
 ;
 ;
KSF1(MHR,JAVD) ; ----- LEFI JAMIM
 I '$G(MHR)!'$G(FLSLR) Q
 S SUMKS=$J(JAVD*MHR,2,2)
 S M("TOT")=""
 S M(1)=$J(SUMKS,2,2),M(2)="= "_JAVD_" * "_$J(MHR,2,2)
 S M(3)=$$TV^%W1DICT($$^%W1LNG,"TOTAL")
 D PC
 S SUMKSF=SUMKSF+SUMKS
 Q
 ;
PGBREAK(PR) ;
 I $G(PR) D S1("") N STM S STM=$C(10,10,10,10)_$G(%MDP("CUT")) ;;I $G(STRING) S ^AA("W4LEVTYP-CUT",STRING)=""
 D WST("<p style=""page-break-before:always"">")
 S SH1=0
 Q
 ;
SUM(SEC) ;
 I SEC[":",$$CLOCKMIN Q SEC
 I SEC[":",'$$CLOCKMIN S SEC=$$TH(SEC)
 I $$CLOCKMIN Q $$T^%L1TIME(SEC)
 N DR S DR=$$DRCLK^W4PRM
 I 'DR S DR=2
 Q $J(SEC/3600,DR,DR)
 ;
SUMHR(HR) ;
 I HR[":",$$CLOCKMIN Q HR
 I HR'[":",$$CLOCKMIN Q $$T^%L1TIME(HR*3600)
 Q $$TTD(HR)
 ;
MXTM(RZN,STRING) ;
 I '$G(STRING) Q RZN
 N MX S MX=$$MAXTIME(STRING)
 I 'MX Q RZN
 I RZN>(MX*60) S RZN=MX*60
 Q RZN
 ;
CLOCKMIN(STAM) ;
 ;;I $G(@$$^W4PRM@("CLOCKMIN")) Q 1
 I '$$GETP^%W1PRM("CURSHOW") Q 1
 Q 0
 ;
PROCVAV ;
  N H01,N01
  I $G(TSHB1),N1>TSHB1 S RZN=TSHB1-H1,H01=H1,H1=TSHB1,N01=TSHB1
  E  S RZN=N1-H1,H01=H1,N01=N1
  I RZN<0 S RZN=RZN+86400
  S RZN=$$MXTM(RZN,STRING)
  S SUMD=SUMD-RZN
  I SUGMS'=2,SUGMS'=3 S SUMGV(6)=$G(SUMGV(6))+RZN
  ;
  I SUGMS=2 D
  .N MGV,I,R0,R1,R2 S (R0,R1,R2)=0
  .F I=1:1:3  S MGV(I)=MGVV(I)*3600
  .I RZN'>MGV(1) S R0=RZN
  .I RZN>MGV(1),RZN'>MGV(2) S R1=RZN-MGV(1),R0=MGV(1)
  .I RZN>MGV(2) S R2=RZN-MGV(2),R1=MGV(2)-MGV(1),R0=MGV(1)
  .S SUMGV(6)=$G(SUMGV(6))+R0
  .S SUMGV(7)=$G(SUMGV(7))+R1
  .S SUMGV(8)=$G(SUMGV(8))+R2
  ;
  N SUMGV1 I SUGMS=3 D
  .D
  ..N SUMGV,MGV0
  ..F I=1:1:3 S MGV0(I)=$$GET1^W4LEVKVZ(SUG,"SHAAMV"_I)
  ..D ^W4LEVSUM(H01,N01,SUGMS)
  ..S MAC1="SUMGV",MAC2="SUMGV1" D ^%S1GC1
  .N NN S NN="" F  S NN=$O(SUMGV1(NN)) Q:NN=""  S SUMGV(NN+5)=$G(SUMGV(NN+5))+SUMGV1(NN)
  .K SUMGV1
  Q
  ;
MAXTIME(COD) ;
 S SUGMS=$P($G(^NAME(COD)),"\",2)
 I SUGMS'=1 Q ""
 Q $G(^LEV("MAXTIME"))
 ;
WST(ST) ;
 I $G(ST)="\/" K ST
 I $D(ST),$D(LEVDM) D S1(ST) Q
 ;
 I $D(ST) D
 .I ST["<tr" D
 ..I SH1>RSIZE D PEREH
 .W ST,!
 ;
 I $D(STM) D
 .D S1(STM) K STM
 Q
 ;
 ;
S1(ST) ;
 N IND S IND=$O(@$$^W4MAIN("TMPS111")@(999999),-1)+1
 S @$$^W4MAIN("TMPS111")@(IND)=ST
 S @$$^W4MAIN("S11")@(IND)=ST
 Q
 ;
PEREH ;
 ;;I '$$GETP^%W1PRM("PRINTREPBACK") Q
 N PEREH S PEREH=""
 D WST("</table>")
 D WST("<br /><br />")
 S FIRST=0 ;;D ^W4MDPPC
 D PGBREAK(0)
 D
 .I '$G(PRSHAP) D SHAP(1) Q
 .I $G(PRSHAP)=1 D TBPAGE,OPTBL Q
 .D TBPAGE,OPTBL1 Q
 Q
 ;
OPTBL ;
 N ST S ST="<table dir="""_$$^%W1DIR_""" width=""70%"" "
 S ST=ST_"style=""text-align:center;font-weight:bold"" "
 S ST=ST_" >"
 D WST(ST)
 Q
 ;
OPTBL1 ;
 D WST("<table dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">")
 Q
 ;
HR(STAM) ;
 Q $$GETP^%W1PRM("HRCLOCK")
 ;
INPHR(STAM) ;
 Q $$GETP^%W1PRM("INPCMNT")
 ;
SAVE(PRM) ; 
 N ID,VL,STRING,DAT,TM
 S ID=$P($P(PRM,";"),"inphr",2)
 S VL=$P(PRM,";",2)
 S VL=$$INVH^%L1FRM(VL)
 S STRING=$P(ID,"_")
 S DAT=$P(ID,"_",2) 
 S TM=$P(ID,"_",3) 
 N GLFILE S GLFILE=$$^W4GL("FILE")
 I 'STRING!'DAT!(TM="") Q 0
 D
 .I VL="" K @GLFILE@(STRING,DAT,TM,"H") Q
 .S @GLFILE@(STRING,DAT,TM,"H")=VL
 Q 1
 ;
KAV ;
 S STM=" "_$TR($J("",38)," ","-"),ST="\/" D WST(ST)
 Q
 ;
SUMH(HR1,HR2,DEC)
 N SEC1,SEC2,SEC
 S SEC1=$$TH(HR1)
 S SEC2=$$TH(HR2) 
 S SEC=SEC1+SEC2
 I $G(DEC) Q $J(SEC/3600,2,2)
 Q $$SUM(SEC)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LHB
W4LHB ; [ 07.05.26 09:22 ] [ 06.05.26 12:59 ] [ 21.03.25 13:03 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$DENIED Q
 N (JB,%ARG,%REM)
 N LKH S LKH=$$^W4CDLK($G(%ARG("CODE")))
 I LKH="",$$HMK,$$^W4LKHCSR S LKH=$$LKHDFLT^W4LKHCSR
 I LKH="",$G(%ARG("VD"))="TM" S LKH=$G(@$$^W4PRM@("LKHTM"))
 N SHOWKIND S SHOWKIND=$G(%ARG("SHOWKIND"))
 I 'SHOWKIND S SHOWKIND=1
 S ONCLICKSHOW=" onClick=""OnClickShow(this)"" "
 S (MAX,COLMAX)=$$SHOWLAST
 S W4LHB=""
 ;
 ;;I $$CODDOC="TZ",$G(%ARG("INVC"))="" S %ARG("INVC")=8
 ;
 D OPCSV^W4EX("W4LHB")
 ;
 S CODDOC=$$CODDOC
 I $G(%ARG("VD"))="HBZ" D PUT^%W1PRM("VD","HBZ")
 ;
 W "<div align=""center"" onKeyPress=""w4lhbKeyPress(event)"" >",!
 ;----------------------------------------------------
 I $G(%ARG("PRINT"))!$G(%ARG("SEND2MAIL")) D  Q  ; PRINT INVOICES LIST
 .D LIST
 .W "</div>",!
 ;----------------------------------------------------
 ;
 D CUSTCARD(LKH)
 ;
 W "<tr><td colspan=""6"">&nbsp;</td></tr>",!
 ;
 D BUTTONS
 ;
 D LINE
 ;
 W "</table>",!
 W "</div>",!
 ;
 W "<br />",!
 W "<div>",!
 ;
 D LIST
 W "</div>",!
 D CLCSV^W4EX
 Q
 ;
 ;
LIST ;
 N VD S VD=$G(%ARG("VD"))
 D
 .I $$HB,'$$HI D:$$^W4LKH!$$NEWMLY^W3PRM  D INVOICESLIST("ALL") Q
 ..Q:$G(PRINT)
 ..Q:$$HBZ(VD)
 ..S %ARG("VD")="TM"
 ..N TMHB S TMHB=1
 ..D INVOICESLIST("TM") ; -----TM LIST
 ..S %ARG("VD")=VD
 .
 .I $$HBZ(VD) D:$$^W4LKH!$$NEWMLY^W3PRM  D INVOICESLIST("ALL") Q
 ..Q:$G(PRINT)
 ..N VD S VD=$G(%ARG("VD"))
 ..Q:$$HBZ(VD)
 ..S %ARG("VD")="TMZ"
 ..N TMHBZ S TMHBZ=1
 ..D INVOICESLIST("TMZ") ; -----TM LIST
 ..S %ARG("VD")=VD
 .
 .I $$HI D INVOICESLIST("HI") Q
 .
 .;;I $$CB D RECEIPTLIST D:'$G(PRINT)  Q
 ..W "<br /><br />",!
 ..D INVOICESLIST("ALL")
 .
 .I $$CB D RECEIPTLIST W "<p></p><table><tr>" D PRNEX W "</tr></table>",! Q
 .
 .I $$HMK D INVOICESLIST("HMK") Q
 .
 .I $$TM D INVOICESLIST("TM") Q
 .
 .I $$TMZ D INVOICESLIST("TMZ") Q
 .
 .I $$HZ D ORDLIST("HZ") Q
 .
 .I $$HZMH D ORDLIST("HZMH") Q
 .
 .I $$HZMHC D PRCOFRCLIST Q
 .
 .I $$SRV D SRVCARDLIST Q
 .
 Q
 ;
 ;
WEX(VL,PR)
 Q:$G(TMHB)
 Q:$G(TMHBZ)
 D ^W4EX(VL,$G(PR))
 Q
 ;
WEXR ;
 D WEXR^W4EX
 Q
 ;
CUSTCARD(LKH) ;
 N W4HSB
 I $G(%ARG("NOM")),$G(%ARG("NEWCUST"))=""!($G(%ARG("NEWCUST"))=0) D
 .N NOM S NOM=$G(%ARG("NOM"))
 .D ^W4HSBGET(NOM,$$CODDOC)
 ;
 W "<br><span style=""color:red;text-align:center"">"_$$^%W1DICT("FLDMUSTASTR")_"</span><br><br>",!
 I $$^W4TABLET=2 G CUSTCARDPHONE
 ;
 W "<table width=""85%"" cellpadding=""3"" border=""0"" style=""padding:10px;border:ridge;2px"" dir="""_$$^%W1DIR_""">",!
  D FIRSTLINE
  W "<tr>"
   D TDCUST
   D TDNAME
  W "</tr>",!
     ;
  W "<tr>",!
   D TDTEL
   D TDPELE
  W "</tr>",!
  ;
  W "<tr>",!
   D TDFAX
   D TDEMAIL 
  W "</tr>",!
  ;
  D TRADDR
  ;
  W "<tr>",!
   D TDHOV
   D TDDATE 
  W "</tr>",!
  ;
  I $$HZ D
  .W "<tr>"
  . D TDDOCNUM
  .W "</tr>",!
 Q
 ;
 ;
CUSTCARDPHONE ;
 W "<table cellpadding=""3"" border=""0"" "
  W "style=""padding:10px;border:ridge;2px"" dir="""_$$^%W1DIR_""" "
 W ">",!
  D FIRSTLINE
  W "<tr>"
   D TDCUST
  W "</tr>",!
  ;
  W "<tr>"
   D TDNAME
  W "</tr>",! 
     ;
  W "<tr>",!
   D TDTEL
  W "</tr>",!
  ;
  W "<tr>"
   D TDPELE
  W "</tr>",!
  ;
  W "<tr>",!
   D TDFAX
  W "</tr>",!
  ;
  W "<tr>"
   D TDEMAIL 
  W "</tr>",!
  ;
  D TRADDR
  ;
  W "<tr>",!
   D TDHOV
  W "</tr>",!
  ;
  W "<tr>"
   D TDDATE 
  W "</tr>",!
  ;
  I $$HZ D
  .W "<tr>"
  . D TDDOCNUM
  .W "</tr>",!
 Q 
 ;
 ;
TDCUST ;
 W "<td width=""16%""> "
  W $$ZV_$$^%W1DICT("CUSTCODE")
  I $$W4LKH D
  .W "<br><span style=""font-size:"_$$^W3FSZ(8)_";color:gray"">"
  . W $$^%W1DICT("TELREC")
  .W "</span>"
 W "</td>",!
 ;
 W "  <td width="""_$S($$^W4TABLET=2:"45%",1:"34%")_""">"
  W "<div style=""display:flex"">",!
  W "<input type=""text"" tabindex=""1"" id=""custcd""  "
  W "maxlength=""14"" size=""14"" value="""_LKH_""" "
  I $$VIEW W " readonly=""readonly"" "
  I '$$VIEW D
  .W " onClick=""this.select()"" onKeyDown=""OnKeyDownCd(event,this)"" "
  .W " onChange=""Find('custcd','custcd!','LKH')"" "
  .;;W " onBlour=""ClrCookieCd()"" "
  W ">",!
  I '$$VIEW D
  .W $$NBSP^%L1FRM(2)
  .W "<img width="""_$$^W4KF(20)_"px"" id=""filter"" src=""w3filter.jpg"" onClick=""Find('custcd','custcd!','LKH')"" >",!
  W "</div>",!
 W "  </td>",!
 Q
 ;
TDNAME ;
 W "  <td width=""12%"" >"_$$ZV_$$^%W1DICT("NAME")_"</td>",!
 W "  <td "_$$^%W1ALIGN_" colspan=""3"">"
  N LKHNAME S LKHNAME=$$LKH^W4L(LKH)
  I $L($G(W4HSB("LKHNAME"))) S LKHNAME=W4HSB("LKHNAME")
  I $$^W4LKHCSR,LKHNAME="",LKH=$$LKHDFLT^W4LKHCSR S LKHNAME="oncfn gewl"
  W "<input type=""text"" tabindex=""2"" id=""custnm"" "
   W $S($$W4LKH:"",1:" readonly=""readonly"" ")
   W " size=""40"" maxlength=""45"" value="""_$$H2U^%L1FRM(LKHNAME)_""">",!
 W "  </td>",!
 Q
 ;
TDTEL ;
 W " <td >"_$$^%W1DICT("TEL")_"</td>"
 W " <td >"
   D
   .N TELB S TELB=$$TELB^W4L(LKH)
   .I TELB="",$L(LKH)>6 S TELB=$TR(LKH,"! ","")
   .I $L($G(W4HSB("TEL"))) S TELB=W4HSB("TEL")
   .W "<input tabindex=""3"" id=""TELB"" type=""text"" "
   .  W $S($$W4LKH:"",1:" readonly=""readonly"" ")_" size=""11"" "
   .  W "value="""_TELB_""" >"
  W " </td>",!
  I $$^W4TABLET'=2 D
  .W " <td >"_$$^%W1DICT("PELE")_"</td>"
 Q
 ;
TDPELE ;
  I $$^W4TABLET=2 D
  .W " <td >"_$$^%W1DICT("PELE")_"</td>"
 W " <td colspan=""3"">"
  N PELE S PELE=$$PELE^W4L(LKH)
  I $L($G(W4HSB("PELE"))) S PELE=W4HSB("PELE")
  W "<input tabindex=""4"" id=""PELE"" type=""text"" "
   W $S($$W4LKH:"",1:" readonly=""readonly"" ")_" size=""11"" "
   W "value="""_PELE_""" >"
 W " </td>",!
 Q
 ;
TDFAX ;
 W " <td>"_$$^%W1DICT("FAX")_"</td>"
 W " <td>"
   W "<input tabindex=""5"" id=""FAX"" type=""text"" "
   W $S($$W4LKH:"",1:" readonly=""readonly"" ")_" size=""11"" "
   W "value="""_$$FAX^W4L(LKH)_""" >"
  W " </td>",!
 Q
 ;
TDEMAIL ;
 W " <td>"_$$^%W1DICT("EMAIL")_"</td>"
 W " <td colspan=""3"">"
  W "<input tabindex=""6"" id=""EMAIL"" type=""text"" size=""40"" value="""_$$EMAIL^W4L(LKH)_""""
  I $$W4LKH D
  .W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
  I '$$W4LKH D
  .W "readonly=""readonly"" "
  W ">"
 W " </td>",!
 Q 
 ;
 ;
TRADDR ;
 I $$W4LKH D
 .D ^W4LKADR
 ;
 I '$$W4LKH D
 .W "<tr>",!
 .W " <td>"_$$^%W1DICT("ADDR")_"</td>",!
 .W "<td colspan=""4"">",!
 .  W " <input type=""text"" onKeyUp=""NoChangeCd()"" readonly=""readonly"" size=""45"" value="""_$$H2U^%L1FRM($$KTVMM^W4L(LKH))_"""</td>",!
 .W "</td>",!
 .W "</tr>",!
 Q
 ;
TDHOV ;
 W "    <td > "_$$^%W1DICT("HOVHBC")_" </td>",!
 W "    <td dir=""LTR"" "_$$^%W1ALIGN_" >",!
 W "     <input type=""text"" style=""text-align:right;font-weight:bold"" "
  W " id=""balance"" size=""10"" readonly=""readonly"" "
  W " value="""_$S($G(LKH):$J($$CBH^W4KLOST(LKH,+$H),2,2),1:"")_""" >",!
 W "    </td>",!
 Q
 ;
TDDATE ;
 W "    <td >"_$$ZV_$$^%W1DICT("TODATE")_" </td>",!
 W "    <td colspan=""5"" id=""todate"" dir=""LTR"" "_$$^%W1ALIGN_" style=""font-weight:bold"">"
 D
 .I $$HB!$$HZ D  Q
 ..S %W1DAT("NODAY")=""
 ..N TODATE S TODATE=$ZD($H,"DD.MM.YY")
 ..I $$GET^%W1PRM("DAT") S TODATE=$$GET^%W1PRM("DAT")
 ..I TODATE<3,$G(@$$^W4GL("W3PRM")@("ENDMONTHDATE")) S TODATE=$$^%L1DC($$LM^%L1DC($H-5),1)
 ..W "&nbsp;&nbsp;"
 ..D
 ...N DT,DT0,DTLAST,DTCUR,MIN,PLUS
 ...S DTCUR=$$^%L1DC(TODATE,3)
 ...S (MIN,PLUS)=60
 ...S DT0=DTCUR-MIN
 ...S DTLAST=DTCUR+PLUS
 ...N LASTDT S LASTDT=$$LASTDT
 ...I '$G(@$$^W4PRM@("NOCHKDAT")),'$D(W4SPK) D
 ....I '$$W4LKH,'$$HZ D ^W4IN S PLUS=P1DZ
 ....I DT0<LASTDT S MIN=LASTDT
 ....I DTLAST<DT0 S PLUS=DT0
 ...D SELDAT(TODATE,MIN,PLUS)
 .
 .I $$CB!$$SRV!$$TM!$$TMZ!$$HZMH!$$HMK!$$HMKI D
 ..D ^W4IN W $ZD($S($$W4LKH:$H,1:P1DZ),"DD.MM.YY")
 W " </td>",!
 Q
 ;
TDDOCNUM ;
 W "<td width=""16%"">"_$$^%W1DICT("DOCNUMBER")_"</td>"
  W "<td width=""34%"" >"
   W "<input type=""text"" size=""11"" maxlength=""8"" id=""docnumber"" "
   W " onClick=""this.select()"" >"
 W "</td>"
 Q
 ;
BUTTONS ;
 W "<tr>",!
 W " <td colspan=""6"" align=""center"">",!
 W "  <table "
 W ">",!
  S FS=11
  I $$^W4LKHCSR S FS=9
  W "<tr>",!
   W " <td>"
   I $$VIEWONLY!$$DENIED W "&nbsp;" G ETD
   I $$^W4ISCDLK($G(LKH)),$$CUSTCLOSED(LKH)!$$VIEW W "&nbsp;" G ETD
   ;
   S W4BUTTON("CLICK")=""
   I $$HB D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWINVOICE"),"NewInvoice()","color:green","wh,22,,,"_FS)
   ;
   I $$HMK!$$HMKI D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWINVOICERECEIPT"),"NewInvoice()","color:green","wh,22,,,"_FS)
   ;
   I $$CB D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWRECEIPT"),"NewReceipt()","color:green","wh,22,,,"_FS)
   ;
   I '$$CB,$$SRV D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWSERVICECARD"),"NewSrvCard()","color:green","wh,22,,,"_FS)
   ;
   I $$TM D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWDLVDOC"),"NewInvoice()","color:green","wh,22,,,"_FS)
   ;
   I $$TMZ D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWDLVBACKDOC"),"NewInvoice()","color:green","wh,22,,,"_FS)
   ;
   I $$HZMH D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWPRCOFR"),"NewInvoice()","color:green","wh,22,,,"_FS)
   ;
   I $$HZMHC D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWPRCOFR"),"NewPrcOfr()","color:green","wh,22,,,"_FS)
   ;
   I $$HZ D
   .D ROUNDBUT^%W1JS("new",$$^%W1DICT("NEWORDER"),"NewInvoice()","color:green","wh,22,,,"_FS)
ETD ;
   W " </td>",!
   ;
   I $G(%ARG("VIEW"))'=1 D
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("custrep",$$^%W1DICT("SHOWCUSTREPORT"),"ShowCustReport()","color:darkblue","wh,22")
   .W " </td>",!
   ;
   I '$$VIEW D
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("custcard",$$^%W1DICT("FULLCUSTCARD"),"ShowCustCard()","color:brown","wh,22")
   .W " </td>",!
   .;
   .I $$^W4TABLET=2 D
   .. W "</tr></table>",!
   .. W "<table cellpadding=""3"" border=""0"" dir="""_$$^%W1DIR_""" >"
   ..  W "<tr>" 
   .
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("custlist",$$^%W1DICT("ADVCUSTSEARCH"),"AdvCustSearch()","color:darkviolet","wh,22")
   .W " </td>",!
   .
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("clear",$$^%W1DICT("CLEAR"),"ClearHrf()","color:blue","wh,22")
   .W " </td>",!
   .;
   .I $$^W4LKHCSR!'$$^W4LKH D
   ..W " <td align=""center"">",!
   ..      D ROUNDBUT^%W1JS("clear",$$^%W1DICT("SERKUPREPORT"),"CSRFilm()","color:blue","wh,22")
   ..W " </td>",!
   ..I $$^W4LKHCSR D
   ...W " <td align=""center"">",!
   ...      D ROUNDBUT^%W1JS("opendraw",$$^%W1DICT("OPENDRAW"),"OpenDraw()","color:brown","wh,22")
   ...W " </td>",!
   .;
   .Q:$$DENIED
   .W "  <td align=""center"">",!
   . D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   .W "  </td>",!
  W " </tr></table>",!
 W " </td>",!
 W "</tr>",!
 ;
 I '$$VIEW,$G(%ARG("DOC"))="HBW",$$GETP^%W1PRM("ELPOS") D
 .W "<tr><td colspan=""10"" style=""text-align:center;color:red;font-weight:bold"">"
 . W $$^%W1DICT("TO-ISSUE-CONC-INVOICE-GO")
 .W "</td></tr>",!
 Q
 ;
 ;
VIEW(STAM)
 I $G(%ARG("VIEW")) Q 1
 I $G(%ARG("SEND2MAIL")) Q 1
 Q 0
 ;
VIEWONLY(STAM)
 Q $$VIEWONLY^W3PRM
 ;
ARM(LK0) ;
 I LK0'["+",LK0'["^",LK0'["W" Q 1
 I LK0["W" Q 2
 Q 0
 ;
TD W "<td width=""32%"">"
 Q
 ;
FIRSTLINE ;
 W "<tr style=""color:red;font-weight:bold"">"
  W "<td colspan=""2"">"
  D
  .I $$^W4ISCDLK(LKH),$$CUSTCLOSED(LKH) D  Q
  ..W $$^%W1DICT("CUSTCLOSED")
  .W "&nbsp;"
  W "</td>",!
  W "<td colspan=""2"">"
  D
  .I $$^W4ISCDLK($G(LKH)),$L($$CMNT^W4L(LKH)) D  Q
  ..W $$H2U^%L1FRM($$CMNT^W4L(LKH))
  .W "&nbsp;"
  W "</td>",!
 W "</tr>",!
 Q
 ;
LINE ;
 W "<tr>"
  W "<td>"
  W "</td>",!
  W "<td>"
  W "</td>",!
 W "</tr>",!
 Q
 ;
TEST(LKH) ;
 N ID S ID=""
 I LKH[";" S ID=$P(LKH,";",2),LKH=$P(LKH,";")
 S ID=$$FUNC^%UCASE(ID)
 I $E(ID)="S" Q $$TEST^W4SPDOC(LKH)
 I $$ISCODE(LKH),$L(LKH)<4 Q "SHORT"
 I $$DC^W4L(LKH) Q 1
 I $$ISCODE(LKH),'$$DC^W4L(LKH) Q 0
 Q "FIND"
 ;
ISCODE(LKH) ;
 Q $$^W4ISCDLK(LKH)
 ;
CHKDAT(PRM) ;
 N LKH,DAT D ^W4IN
 D PUT^%W3DEB("W4LHB","PRM=PRM")
 ;
 S PRM=$$CLEAR^%L1FRM($$CNWEB^%L1FRM(PRM))
 S LKH=$P(PRM,";",1)
 S DATF=$P(PRM,";",2)
 S P1LHBS=$P(PRM,";",3)
 S P1LHBM=$P(PRM,";",4)
 ;
 S DF=$$^%L1DC(DATF,3)
 ;
 D IFNEWLKH(LKH) ; -- WRITE CUST DETAILS TO ^LKH ( LKH - ALL CUST DETAILS )
 ;
 S LKH=$$^W4CDLK($P(LKH,"~"))
 ;
 Q $$CHKDT(DF)
 ;
 ;
CHKDT(DF) ;
 D ^W4IN
 I '$$W4LKH,DF>P1DZ Q "INVOICEISSUENOTLATER;"_$ZD(P1DZ,"DD.MM.YY")
 I '$$W4LKH,DF=P1DZ,'$D(@$$^W4GL("Z")@(P1DZ)),'$G(P1LHBS),'$G(P1LHBM) Q "AFTERZONLY;"_DATF
 ;
 N H,D,LK0,LK
 N CODDOC S CODDOC=$$CODDOC
 D KLIN
 S H=$O(@KLIN@(CODDOC,999999),-1) I 'H Q 1
 ;
 D ^W4HSBGET(H,CODDOC) I '$D(W4HSB("DT")) Q 1
 ;
 S D=$G(W4HSB("DT"))
 ;;I $G(@$$^W4PRM@("BDDTH")),DF<D Q "LASTINVOICEWAS;"_H_";"_D
 I DF<D Q "LASTINVOICEWAS;"_H_";"_$ZD(D,"DD.MM.YY")
 ;
 Q 1
 ;
 ;
HB(STAM) ;
 I '$$CB,'$$SRV,'$$HMK,'$$TM,'$$TMZ,'$$HZMH,'$$HZ,'$$IPY Q 1
 Q 0
 ;
CB(STAM) ;
 I $G(%ARG("CB")) Q 1
 Q 0
 ;
SRV(STAM) ;
 I $G(%ARG("SRVC")) Q 1
 Q 0
 ;
HI(STAM) ;
 I $G(%ARG("VD"))'="" Q $G(%ARG("VD"))="HI"
 Q $$GETP^%W1PRM("VD")="HI"
 ;
HIDOC(CODDOC) ;
 Q $G(CODDOC)="HI"
 ;
HBHI(NOM) ;
 Q $G(W4HSB("HBHI"))
 ;
HMK(STAM)
 I $G(%ARG("VD"))="HMK" Q 1
 I $$GET^%W1PRM("VD")="HMK" Q 1
 I $G(%ARG("VD"))="HMKI" Q 2
 I $$GET^%W1PRM("VD")="HMKI" Q 2
 Q 0
 ;
HMKI(STAM)
 I $$HMK=2 Q 1
 Q 0
 ;
TM(STAM)
 I $G(%ARG("VD"))="TM" Q 1
 I $$GET^%W1PRM("VD")="TM" Q 1
 Q 0
 ;
TMZ(STAM)
 I $G(%ARG("VD"))="TMZ" Q 1
 I $$GET^%W1PRM("VD")="TMZ" Q 1
 Q 0
 ;
HZ(STAM)
 I $G(%ARG("VD"))="HZ" Q 1
 I $$GETP^%W1PRM("VD")="HZ" Q 1
 Q 0
 ;
HZMH(STAM)
 I $G(%ARG("VD"))="HZMH" Q 1
 I $$GETP^%W1PRM("VD")="HZMH" Q 1
 Q 0
 ;
HZMHC(STAM)
 I $G(%ARG("VD"))="HZMHC" Q 1
 I $$GETP^%W1PRM("VD")="HZMHC" Q 1
 Q 0
 ;
IPY(STAM)
 I $G(%ARG("VD"))="IPY" Q 1
 I $$GETP^%W1PRM("VD")="IPY" Q 1
 Q 0
 ;
 ;
INVOICESLIST(CODDOC,PRINT) ;
 D INVLISTKOT
 ;
 ;------------------------ BODY ----------------------------------
 N STOT,SHSB,SITRA,SSHUL,N,LK,LK0,A
 S (STOT,STOPAY,SHSB,SSHB,SSHUL,SITRA)=0
 N KLIN D KLIN
 N GLHB S GLHB=$$^W4GL("P1LHB")
 N ENDCYC S ENDCYC=0
 ;
 I $$^W4ISCDLK($G(LKH)),$$HB,'$$HI,'$$LKHMKDFLT,$$HBNOW^W4L(LKH),$G(@$$^W4PRM@("NOVWIMD")) D  Q
 .W "</table>",!
 .W "<script>",!
 . W "MsgA(""NOSHOWCUSTIMD"")",!
 .W "</script>",!
 ;
 I $$^W4ISCDLK($G(LKH)),'$$LKHMKDFLT D
 .I CODDOC="ALL" D SHOWALL(LKH) Q
 .S N="" F  S N=$O(@KLIN@(CODDOC,N),-1) Q:N=""  D LINEINVC(N,LKH,CODDOC,$G(PRINT)) Q:ENDCYC
 ;
 ;
 I '$$^W4ISCDLK($G(LKH))!$$LKHMKDFLT D
 .N II,MAX
 .D
 ..S MAX=$$SHOWLAST
 ..I '$G(%ARG("COLMAX")) S %ARG("COLMAX")=MAX
 ..;;I $G(PRINT)!($$SHOWKIND>1)!$G(%ARG("OPNINV")) S MAX=99999999
 ..I $G(PRINT)!($$SHOWKIND>1) S MAX=$$MAX9
 ..I $G(%ARG("OPNINV")),'$$CB D
 ...S MAX=$S($G(%ARG("COLMAX")):%ARG("COLMAX"),1:999999) ;
 ..I $G(%ARG("MEDAT"))!$G(%ARG("ADDAT"))!$G(%ARG("MESUM"))!$G(%ARG("ADUM"))!$L($G(%ARG("CONTENT")))!$G(%ARG("GROUP")) S MAX=$$MAX9 Q
 ..;;W "CODDOC="_CODDOC,!
 .
 .I CODDOC="ALL" D SHOWALL("",MAX) Q
 .N ENDCYC S ENDCYC=0
 .S N="" F II=1:1 S N=$O(@KLIN@(CODDOC,N),-1) Q:N=""  D LINEINVC(N,"",CODDOC,$G(PRINT)) Q:ENDCYC
 ;
INVCTB1 ;------------- TOTALS --------------------
 I $G(%ARG("OPNINV"))!$G(%ARG("NPDT"))!$$^W4ISCDLK($G(LKH))!(SHOWKIND=2) D
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .W "<td>&nbsp;</td>",!
 .W "<td>&nbsp;</td>",!
 .I '$G(PRINT) W "<td>&nbsp;</td>",!
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_SHSB_"</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT)_"</td>",!
 .I $$HMK!$$TM!$$TMZ W "</tr>",! Q
 .I '$$HI W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOPAY)_"</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(SSHUL)_"</td>",!
 .I '$G(PRINT) W "<td>&nbsp;</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT-SSHUL)_"</td>",!
 .
 .I $$TM!$$TMZ D
 ..W "<td>"
 .. W "&nbsp;"
 ..W "</td>"
 .
 .I $$HI D
 ..I '$G(PRINT) W "<td>&nbsp;</td>",!
 ..W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(SSHB)_"</td>",!
 .I $$CORR^W4PRM D
 ..W "<td>"
 .. W "&nbsp;"
 ..W "</td>"
 .W "</tr>",!
 ;
INVCTBEND ;
 W "</table>",!
 W "<table id=""dlvfoot"" style=""visibility:hidden"">",!
 D LINE,LINE
 W "</table>",!
 Q
 ;
 ;
INVLISTKOT ;
 N INVLIST
 N KW S KW="INVOICESLIST"
 S INVLIST=$$^%W1DICT(KW)
 I $$HMK S KW="INVCRCPLIST"
 I $$TM S KW="DLVDOCLIST"
 I $$TMZ S KW="DLVBACKDOCLIST"
 I $G(TMHB) S KW="DLVDOCLISTWITHOUTINVOICE"
 I $G(TMHBZ) S KW="DLVBACKDOCLISTWITHOUTINVOICE"
 I $$HZ S KW="ORDLIST"
 I $$HBZ(CODDOC) S KW="DEBETINVOICESLIST"
 I $$HI S KW="DEALINVOICESLIST"
 S INVLIST=$$^%W1DICT(KW)
 ;
 S WD="30%"
 ;
 I $$^W4ISCDLK($G(LKH)) D
 .N LKHLKH1 S LKHLKH1=LKH_"<>"_$$LKH^W4L(LKH)
 .S INVLIST=$$^%W1DICT("CUSTOMERINVOICESLIST",LKHLKH1)
 .I $$HMK S INVLIST=$$^%W1DICT("CUSTINVCRCPLIST",LKHLKH1)
 .I $$TM S INVLIST=$$^%W1DICT("CUSTDLVDOCLIST",LKHLKH1)
 .I $$TMZ S INVLIST=$$^%W1DICT("CUSTDLVBACKDOCLIST",LKHLKH1)
 .I $G(TMHB) S INVLIST=$$^%W1DICT("CUSTDLVDOCLISTWITHOUTINVOICE",LKHLKH1)
 .I $G(TMHBZ) S INVLIST=$$^%W1DICT("CUSTDLVBACKDOCLISTWITHOUTINVOICE",LKHLKH1)
 .I $$HZ S INVLIST=$$^%W1DICT("CUSTORDLIST",LKHLKH1)
 .;I $$HZMH S INVLIST=$$^%W1DICT("CUSTPRCOFRLIST",LKHLKH1)
 .I $$HI S INVLIST=$$^%W1DICT("CUSTDEALINVOICESLIST",LKHLKH1)
 .S WD="16%"
 ;
 I $G(TMHB)!$G(TMHBZ) D  G INVCTB
 .W "<div id=""dlvdochd"" dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ(14)_""" >"
 .W INVLIST
 .W "</div>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" dir="""_$$^%W1DIR_""" ",!
  I $G(PRINT) D PRINTSIZE
 W ">",!
 W "<tr>"
 W " <td width="""_WD_""">"
  I '$$CB D GROUPS
 W " </td>",!
 W "<td width=""2%"">&nbsp;</td>",!
 W " <td"
 W "  style=""color:black;font-size:"_$$^W3FSZ(14)
 W """>"_INVLIST_"</td>"
 W " <td width=""2%"">&nbsp;</td>",!
 ;
 D PRNEX
 ;
 W "</tr>",!
 W "</table>",!
 ;
 I '$$CB D RADIOSHOW
 ;
 S INVC=$G(%ARG("INVC"))
 S BORDER="border:solid gray 1px"
 ;
 I $$HMK!$$TM!$$TMZ G INVCTB
 ;
 D INVCHK ; ---- CHECK BOXES
 ;
INVCTB ;
 D INVCHD ; ---- KOTERET
 Q
 ;
 ;
INVCHK ;
 N PRINT S PRINT=$G(%ARG("PRINT"))
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" "
  I $G(PRINT) D PRINTSIZE
 W ">",!
   W "<tr align=""center"" >",!
   ;
   I $$HI G INVCHK1
   ;
   D
    .W " <td style=""border:solid gray 1px"" >",!
    . W " "_$$^%W1DICT("AUTOINVOICES")_" "
    . W "<input type=""checkbox"" id=""autoinvc"" "
    .  W $S($$INVCAU(INVC):" checked=""checked"" ",1:"")
    .  W " onClick=""ShowRed()"" "
    . W "/>"
    .W " </td>",!
    .W "<td>&nbsp;</td>",!
    ;
   W " <td style=""background-color:lightblue;"_BORDER_""" >",!
    W " "_$S($$W4LKH:$$^%W1DICT("SERVICEINVOICES"),1:$$^%W1DICT("ARMINVOICES"))_" "
    W "<input type=""checkbox"" id=""arminvc"" "
      W $S($$INVCARM(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W "</td>",!
   ;
   I $$W4LKH!$$NEWMLY^W3PRM D
   .W "<td>&nbsp;</td>",!
   .W " <td style=""background-color:lightyellow;"_BORDER_""" >",!
   . W " "_$$^%W1DICT("ITEMINVOICES")_" "
   . W "<input type=""checkbox"" id=""iteminvc"" "
   .  W $S($$INVCIT(INVC):" checked=""checked"" ",1:"")
   .  W " onClick=""ShowRed()"" "
   . W " />"
   .W " </td>",!
   ;
   W "<td>&nbsp;</td>",!
   W " <td style=""background-color:pink;"_BORDER_""" >",!
    W " "_$$^%W1DICT("DEBETINVOICES")_" "
    W "<input type=""checkbox"" id=""debetinvc"" "
      W $S($$INVCDEB(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W " </td>",!
   ;
   W "<td>&nbsp;</td>",!
   W " <td style=""background-color:lightgreen;"_BORDER_""" >",!
    W " "_$$^%W1DICT("DEALINVOICES")_" "
    W "<input type=""checkbox"" id=""dealinvc"" "
      W $S($$INVCHI(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W " </td>",!
   ;
INVCHK1 ;
   W "<td>&nbsp;</td>",!
   W "<td>"
   ;D
   .W $$^%W1DICT("SHOWOPENINVOICESONLY")
   .W "<input type=""checkbox"" id=""openinv"""
   .  W $S($G(%ARG("OPNINV")):" checked='checked'",1:"")
   .  W " onClick=""ClickOpenInvoices()"""
   .  W " onClick=""ShowRed()"" "
   .W " >",!
    W "&nbsp;"
   W "</td>",!
   ;
   I $$HI D
   .W "<td>"
   .W $$^%W1DICT("SHOWOPENDEALSONLY")
   .W "<input type=""checkbox"" id=""opendeal"""
   .  W $S($G(%ARG("OPNDEAL")):" checked='checked'",1:"")
   .  W " onClick=""ClickOpenDeals()"""
   .  W " onClick=""ShowRed()"" "
   .W " >",!
   .W "</td>",!
   ;
   W "<td>&nbsp;</td>"
   D SHOWBUT("ShowInvc")
   W " </td>",!
   D TDMAIL
  W "</tr>",!
  ;
 W "</table>",!
 Q
 ;
 ;
MAX9() ;
 Q 9999999
 ;
SHOWBUT(ID) ;
 W " <td>",!
  I '$G(PRINT) D
  .;;D ROUNDBUT^%W1JS(ID,$$^%W1DICT("SHOW"),"ShowInvoices()","color:green","wh,22")
  .D ^W4BUTTON(ID,$$^%W1DICT("SHOW"),"ShowInvoices()","color:green")
  W " </td>",!
 Q
 ;
INVCHD ;
 N WDT,ID S WDT=98
 I $$HMK!$$TM!$$TMZ S WDT=70
 S ID="listinvoices"
 I $G(TMHB)!$G(TMHBZ) S ID="listdlvdoc"
 W "<table id="""_ID_""" border=""1""  width="""_WDT_"%"" cellspacing=""0"" dir="""_$$^%W1DIR_""" "
  I $G(PRINT) D PRINTSIZE
 W ">",!
 W "  <tr>",!
 W "   <th>",!
 S KW=$S($$HMK:"INVCRCP",$$TM:"DELIVERYDOC",$$TMZ:"DLVBACKDOC",1:"INVOICE")
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 W "   <th>",!
 S KW="TODATE"
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 I '$G(PRINT) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("ISSUETIME")
 .W "   </th>",!
 W "   <th>",!
 S KW="CUSTOMNUMBER"
 W "    "_$$^%W1DICT(KW)
  D WEX(KW,"DICT")
 W "   </th>",!
 W "   <th>",!
 S KW="CUSTOMNAME"
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 W "   <th>",!
 S KW="SUM"
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 ;
 I $$TM!$$TMZ D
 .W "   <th>",!
 .S KW="COMMENT"
 .W "    "_$$^%W1DICT(KW)
 .W "   </th>",!
 .D WEX(KW,"DICT")
 ;
 I '$$HMK,'$$TM,'$$TMZ D
 .I '$$HI D
 ..W "   <th>",!
 ..S KW="TOPAY"
 ..W "    "_$$^%W1DICT(KW)
 ..W "   </th>",!
 .. D WEX(KW,"DICT")
 .W "   <th>",!
 .S KW="PAID"
 .W "    "_$$^%W1DICT(KW)
 .W "   </th>",!
 . D WEX(KW,"DICT")
 .I '$G(PRINT) D
 ..W "   <th>",!
 ..W "    "_$$^%W1DICT("RECEIPT")
 ..W "   </th>",!
 .W "   <th>",!
 .S KW="BALANCE"
 .W "    "_$$^%W1DICT(KW)
 . D WEX(KW,"DICT")
 .W "   </th>",!
 .I $$HI D
 ..I '$G(PRINT) D
 ...W "   <th>",!
 ...W "    "_$$^%W1DICT("INVOICETX")
 ...W "   </th>",!
 ..W "   <th>",!
 ..S KW="INVOICEBALANCE"
 ..W "    "_$$^%W1DICT(KW)
 ..W "   </th>",!
 .. D WEX(KW,"DICT")
 ..
 .I $$CORR^W4PRM D
 ..W "<th>"
 .. W $$^%W1DICT("CORRESPONDENCE")
 ..W "</th>"
 W "  </tr>",!
 D WEXR
 Q
 ;
 ;
PRNEX ;
 W " <td>"
 N PRINT S PRINT=$G(%ARG("PRINT"))
 I '$G(PRINT) D
 .D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"PrintInvoices()","color:blue","wh,22")
 W " </td>",!
 W "<td width=""2%"">&nbsp;</td>"
 I '$G(PRINT) W "<td id=""excel"">&nbsp;</td>"
 Q
 ;
SHOWLAST(STAM) ;
 N LAST
 I $G(%ARG("MEDAT"))!$G(%ARG("ADDAT")) Q 999999
 I $G(%ARG("COLMAX")) Q %ARG("COLMAX")
 Q $$SHOWLAST1
 ;
SHOWLAST1()
 S LAST=$G(@$$^W4PRM@("SHOWLAST"))
 I LAST<10 S LAST=100
 Q LAST
 ;
 ;
CHECKED(SK,I) ;
 I SK=I Q " checked=""checked"" "
 Q ""
 ;
RADIOSHOW ;
 S PRINT=$G(%ARG("PRINT"))
 I '$G(WDTB) S WDTB=$S($$1024^W4WDSCR:100,1:90)
 W "<table dir="""_$$^%W1DIR_""" border=""0"" width="""_$G(WDTB)_"%"" ",!
  I $G(PRINT) D PRINTSIZE
 W ">",!
  W "<tr>",!
   W "<td>",!
    I '$$^W4ISCDLK($G(LKH))!$$LKHMKDFLT W $$^%W1DICT("BYLASTMOVEMENTS")_"&nbsp;"
    I $$^W4ISCDLK($G(LKH)),'$$LKHMKDFLT W $$^%W1DICT("SHOWALLMOVEMENTS")_"&nbsp;"
    W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,1)_" "_ONCLICKSHOW_" />"
   W "</td>",!
   W "<td>",!
    W $$^%W1DICT("BYDATERANGE")_"&nbsp;"
    W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,2)_" "_ONCLICKSHOW_"/>"
   W "</td>",!
   W "<td>",!
    W $$^%W1DICT("BYDOCNUMBER")_"&nbsp;"
    W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,3)_" "_ONCLICKSHOW_"/>"
   W "</td>",!
   ;
   S CODD=$$CODDOC
   I CODD="H"!(CODD="TZ")!(CODD="CB")!(CODD="HMK")!(CODD="HI")!(CODD="IPY") D
   .W "<td>",!
   . W $$^%W1DICT("BYCONTENT")_"&nbsp;"
   . W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,4)_" "_ONCLICKSHOW_"/>"
   .W "</td>",!
   .
   .W "<td>",!
   . W $$^%W1DICT("BYSUM")_"&nbsp;"
   . W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,5)_" "_ONCLICKSHOW_"/>"
   .W "</td>",!
   ;
   W "<td id=""tdprm"" >",!
    W "<table id=""tblprm"" border=""0"" width=""100%"">",!
     W "<tr id=""tblprmtr""><td>",!
      W $$SHOWPRM(SHOWKIND_";"_$$SHOWLAST_";"_$G(%ARG("CODE"))_";"_$G(%ARG("MEDAT"))_";"_$G(%ARG("ADDAT"))_";"_$G(%ARG("NOMDOC"))_";"_$G(%ARG("OPNINV"))_";"_$$CONT_";"_$G(%ARG("MESUM"))_";"_$G(%ARG("ADSUM")))
     W "</td></tr>",!
    W "</table>",!
   W "</td>",!
   I '$$HB,'$G(PRINT) D
   .D SHOWBUT("Show")
   .D TDMAIL
  W "</tr>",!
  ;
  W "<tr >"
  I $$PRKUP?1N D
  . W "<td style=""font-weight:bold"">"
  .   I '$$PRKUP W $$^%W1DICT("MLYITEMSDOCS")
  .   I $$PRKUP W $$^%W1DICT("CSRITEMSDOCS")
  .   W "&nbsp;"
  .   W "<input type=""radio"" id=""typedocs"" name=""showdocs"" "
  .    I '$$ALLDOCS W " checked=""checked"" "
  .    W " onClick=""ShowInvoices()"" "
  .   W " />"
  .   W "</td>"
  . W "<td style=""font-weight:bold"">"
  .   W $$^%W1DICT("ALLDOCS")
  .   W "&nbsp;"
  .   W "<input type=""radio"" id=""alldocs"" name=""showdocs"" "
  .    I $$ALLDOCS W " checked=""checked"" "
  .    W " onClick=""ShowInvoices()"" "
  .   W " />"
  . W "</td>"
  I $E(CODD)="H" D VWOPNINV
  W "</tr>",!
 ;
 W "</table>",!
 Q
 ;
 ;
VWOPNINV ;
 ;;W "<table>",!
 ;; W "<tr>"
   W "<td>"
    W $$^%W1DICT("SHOWOPENINVOICESONLY")
    W "<input type=""checkbox"" id=""openinv"""
     W $S($G(%ARG("OPNINV")):" checked='checked'",1:"")
     W " onClick=""ClickOpenInvoices()"""
     W " onClick=""ShowRed()"" "
    W " >",!
   W "</td>",!
   W "<td>"
    W $$^%W1DICT("SHOWINVOICESNOTPAIDEDINTIME")
    W "<input type=""checkbox"" id=""npdt"""
     W $S($G(%ARG("NPDT")):" checked='checked'",1:"")
     W " onClick=""ClickNpdtInvoices()"""
     W " onClick=""ShowRed()"" "
    W " >",!
   W "</td>",!
 ;; W "</tr>",!
 ;;W "</table>",!
 Q
 ;
 ;
SHOWPRM(PRM)
 N SHOWKIND,MEDAT,ADDAT,NOMDOC,LKH,CONTENT,MESUM,ADSUM
 S SHOWKIND=$P(PRM,";")
 S COLMAX=$P(PRM,";",2)
 S LKH=$P(PRM,";",3)
 S MEDAT=$P(PRM,";",4)
 S ADDAT=$P(PRM,";",5)
 S NOMDOC=$P(PRM,";",6)
 S OPNINV=$P(PRM,";",7)
 S CONTENT=$P(PRM,";",8)
 S MESUM=$P(PRM,";",9)
 S ADSUM=$P(PRM,";",10)
 N A,W4LHB S W4LHB=""
 I SHOWKIND=1 S A=$$LASTPRM(COLMAX) G SHOWPRME
 I SHOWKIND=2 S A=$$MEADDAT(MEDAT,ADDAT,SHOWKIND) G SHOWPRME
 I SHOWKIND=3 S A=$$NOMDOCPRM(NOMDOC,SHOWKIND) G SHOWPRME
 I SHOWKIND=4 S A=$$BYCONTENT G SHOWPRME
 I SHOWKIND=5 S A=$$BYSUM(MESUM,ADSUM,SHOWKIND) G SHOWPRME
 Q "&nbsp;"
 ;
SHOWPRME Q "<table dir="""_$$^%W1DIR_""" width=""100%""><tr>"_A_"</tr></table>"
 ;
 ;
LASTPRM(MAX)
 I $$^W4ISCDLK($G(LKH)) Q "<td>&nbsp;</td>"
 I '$$^W4ISCDLK($G(LKH)),$G(SPK) Q "<td>&nbsp;</td>"
 N ST S ST="<td id=""tdcolmax"" >"
 S ST=ST_$$^%W1DICT("SHOW")_"&nbsp;"
 S ST=ST_"<input type=""text"" id=""colmax"" size=""3"" maxlength=""4"" value="""_MAX_""" onClick=""ShowRed();this.select()"" />"
 S ST=ST_"&nbsp;"_$$^%W1DICT("LASTMOVEMENTS")
 S ST=ST_"</td>"
 Q ST
 ;
LASTPRMCB(MAX)
 N ST S ST="<td>"
 S ST=ST_$$^%W1DICT("SHOW")_"&nbsp;"
 S ST=ST_"<input type=""text"" id=""colmaxcb"" size=""3"" maxlength=""4"" value="""_MAX_""" />"
 S ST=ST_"&nbsp;"_$$^%W1DICT("LASTMOVEMENTS")
 S ST=ST_"</td>"
 Q ST
 ;
MEADDAT(MEDAT,ADDAT,SHOWKIND) ;
 S SHOWKIND=$G(SHOWKIND)
 N DD1,MM1,YY1,DD2,MM2,YY2
 I $G(MEDAT)="" S MEDAT=$ZD($H,"DD.MM.YY")
 I $G(ADDAT)="" S ADDAT=$ZD($H,"DD.MM.YY")
 S DD1=MEDAT,DD2=ADDAT
 S (MM1,MM2,YY1,YY2)=""
 ;
 D 
 .S %ARG("OLDDAT")=1
 .S DD1=$E($TR(MEDAT,"./",""),1,2)
 .S MM1=$E($TR(MEDAT,"./",""),3,4)
 .S YY1=$E($TR(MEDAT,"./",""),5,6)
 .S DD2=$E($TR(ADDAT,"./",""),1,2)
 .S MM2=$E($TR(ADDAT,"./",""),3,4)
 .S YY2=$E($TR(ADDAT,"./",""),5,6)
 ;
 N ST
 S ST=""
   I $G(SHOWKIND) S ST=ST_"<td width=""2%"">&nbsp;</td>"
   S ST=ST_"<td id=""ASKMEDAT"" "_$$HIDDEN(SHOWKIND,2)_" >"_$$^%W1DICT("MEDAT")
   ;;S %W1DAT("NODAY")=""
   I $$1024^W4WDSCR&$D(W4LHB) D
   .S %W1DAT("NOEQ")=""
   .S ST=ST_"<BR><BR><BR>"_$$^%W1DICT("ADDAT")
   ;
   S ST=ST_"</td>"
   N DOPVSB S DOPVSB="text-align:right"
   S ST=ST_"<td id=""VMEDAT"" "_$$HIDDEN(SHOWKIND,2)_">"
   ;
   I '$G(PRINT) D
   .S ST=ST_$$STDT^%W1DAT("MEDAT","",DD1,MM1,YY1)
   ;
   I $G(PRINT) D
   .S ST=ST_MEDAT
   ;
  I $$1024^W4WDSCR&$D(W4LHB) D  Q ST
   .S ST=ST_"<BR>"
   .S ST=ST_$$STDT^%W1DAT("ADDAT","",DD2,MM2,YY2)
   .S ST=ST_"</td>"
   ;
   S ST=ST_"</td>"
   S ST=ST_"<td width=""2%"">&nbsp;</td>"
   K DOPVSB
   S ST=ST_"<td id=""ASKADDAT"" "_$$HIDDEN(SHOWKIND,2)_" >"_$$^%W1DICT("ADDAT")_"</td>"
   S DOPVSB="text-align:right"
   S ST=ST_"<td id=""VADDAT"" "_$$^%W1ALIGN_$$HIDDEN(SHOWKIND,2)_">"
   I '$G(PRINT) D
   .S ST=ST_$$STDT^%W1DAT("ADDAT","",DD2,MM2,YY2)
   I $G(PRINT) D
   .S ST=ST_ADDAT
   S ST=ST_"</td>"
 Q ST
 ;
NOMDOCPRM(NOMDOC,SHOWKIND) ;
 N ST
  S ST="<td id=""asknomdoc"" "_$$HIDDEN(SHOWKIND,3)_" >"_$$^%W1DICT("DOCNUMBER")_"</td>"
  S ST=ST_"<td id=""vnomdoc"" "_$$HIDDEN(SHOWKIND,3)_">"
  S ST=ST_"<input type=""text"" id=""nomdoc"" size=""6"" maxlength=""7"" value="""_NOMDOC_""" onClick=""this.select()"" />"
  S ST=ST_"</td>"
 Q ST
 ;
BYCONTENT(STAM) ;
 N ST
  S ST="<td id=""askcont"" "_$$HIDDEN(SHOWKIND,4)_" >"_$$^%W1DICT("CONTENT")_"</td>"
  S ST=ST_"<td id=""tdcont"" "_$$HIDDEN(SHOWKIND,4)_">"
  S ST=ST_"<input type=""text"" id=""content"" size=""20"" maxlength=""20"" value="""_$$H2U^%L1FRM($$CONT)_"""/>"
  S ST=ST_"</td>"
 Q ST
 ;
BYSUM(MESUM,ADSUM,SHOWKIND) ;
 S SHOWKIND=$G(SHOWKIND)
 N ST
 S ST=""
   I $G(SHOWKIND) S ST=ST_"<td width=""2%"">&nbsp;</td>"
   S ST=ST_"<td id=""ASKMESUM"" "_$$HIDDEN(SHOWKIND,5)_" >"_$$^%W1DICT("FROMSUM")_"</td>"
   S ST=ST_"<td dir=""LTR"" "_$$^%W1ALIGN_" "_$$HIDDEN(SHOWKIND,5)_">"
   I '$G(PRINT) D
   .S ST=ST_"<input type=""text"" id=""MESUM"" size=""6"" maxlength=""8"" value="""_MESUM_""" onClick=""this.select()"" />"
   I $G(PRINT) D
   .S ST=ST_MESUM
   S ST=ST_"</td>"
   S ST=ST_"<td width=""2%"">&nbsp;</td>"
   S ST=ST_"<td id=""ASKADSUM"" "_$$HIDDEN(SHOWKIND,5)_" >"_$$^%W1DICT("UNTILSUM")_"</td>"
   S ST=ST_"<td dir=""LTR"" "_$$^%W1ALIGN_$$HIDDEN(SHOWKIND,5)_">"
   ;
   I '$G(PRINT) D
   .S ST=ST_"<input type=""text"" id=""ADSUM"" size=""6"" maxlength=""8"" value="""_ADSUM_""" onClick=""this.select()"" />"
   I $G(PRINT) D
   .S ST=ST_ADSUM
   ; 
   S ST=ST_"</td>"
 Q ST
 ;
 ;
SHOWKIND(STAM) ;
 Q $G(%ARG("SHOWKIND"))
 ;
HIDDEN(SK,I) ;
 I $G(SK)="" Q ""
 N VSB S VSB=" style=""visibility:visible"
 I $L($G(DOPVSB)) S VSB=VSB_";"_DOPVSB
 S VSB=VSB_""" "
 I $G(SK)=$G(I) Q VSB
 Q " style=""visibility:hidden"" "
 ;
LKN(CODDOC,N) ;
 N LK S N=$$SPA^%L1FRM(N)
 I $E(N)="[" S N=$TR(N,"[] ","") ; -- H-I
 S LK0=$G(@KLIN@(CODDOC,+N))
 I LK0'="IN" S LK=$$LK(LK0)
 Q LK
 ;
LK(LK0)
 N LK
 S LK=LK0
 I LK0["+" S LK=$P(LK0,"+")
 I LK0["^" S LK=$P(LK0,"^")
 I LK0["W" S LK=$P(LK0,"W")
 Q LK
 ;
 ;
LINEINVC(N,LKH,CODDOC,PRINT) ;
 ;
 I $$DENIED Q
 ;
 D PUT^%W3DEB("W4LHB-LINEINVC","N=N&LKH=LKH&CODDOC=CODDOC&PRINT=PRINT")
 S INVC=$G(%ARG("INVC"))
 N LK0
 S LK=$$LKN(CODDOC,N)
 Q:LK0="IN"
 ;
 I LKH,$TR(LK,"-","")'=$TR(LKH,"-","") Q
 ;
 I '$$LKH,$G(%ARG("GROUP")),$$SUGL^W4L(LK)'=%ARG("GROUP") Q
 ;
 D ^W4HSBGET(+N,CODDOC) Q:$D(W4HSB)<10
 ;
 N NDOC S NDOC=$P(LK0,"W",2)
 I $G(TMHB),'NDOC Q
 I $G(TMHB),$D(@$$^W4GL("W4DOC")@(NDOC,"TM","HB")) Q
 I $G(TMHB),$$DEL^W4DOCVW("TM",NDOC) Q
 I $G(TMHB) G LI2
 ;
T I $G(TMHBZ),'NDOC Q
 I $G(TMHBZ),$D(@$$^W4GL("W4DOC")@(NDOC,"TMZ","HB")) Q
 I $G(TMHBZ),$$DEL^W4DOCVW("TMZ",NDOC) Q
 I $G(TMHBZ) G LI2
 I '$$CB,$$SHOWKIND=3,+$G(%ARG("NOMDOC"))=+N,$G(%ARG("OPNINV")),$G(W4HSB("TOT"))-$G(W4HSB("PAID")) G LI1
 I '$$CB,$$SHOWKIND=3,+$G(%ARG("NOMDOC"))=+N,'$G(%ARG("OPNINV")),'($G(W4HSB("TOT"))-$G(W4HSB("PAID"))) G LI1
 ;
 I '$$CB,$$SHOWKIND=2,$G(W4HSB("DT"))<$$^%L1DC($G(%ARG("MEDAT")),3)!($G(W4HSB("DT"))>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 I '$$CB,$$SHOWKIND=3,+$G(%ARG("NOMDOC"))'=+N Q
 I '$$CB,$$SHOWKIND=4,$$CONT'="",'$$FINDCONT(CODDOC,N,$$CONT) Q
 I '$$CB,$$SHOWKIND=5,$G(%ARG("MESUM"))!$G(%ARG("ADSUM")),$G(W4HSB("TOT"))<($G(%ARG("MESUM"))-.1)!($G(W4HSB("TOT"))>($G(%ARG("ADSUM"))+.1)) Q
 ;
 I $$TM!$$TMZ G LI1
 ;
 I $$HBZ(CODDOC),$$INVCDEB(INVC) G LI1
 I $$HBZ(CODDOC),'$$INVCDEB(INVC) Q
 ;
 I $$ARM(LK0)=1,'$$INVCARM(INVC),'$$HIDOC(CODDOC) Q
 I $$ARM(LK0)=2,'$$INVCARM(INVC) Q
 ;
 I INVC=2,CODDOC'="H" Q
 I INVC=16,'$$HIDOC(CODDOC) Q
 I $$HIDOC(CODDOC),'$$INVCHI(INVC) Q
 I $$HIDOC(CODDOC),$$INVCHI(INVC) G LI1
 ;
 I $$HMK G LI1
 S ^D=10
 I '$$ARM(LK0),'$$INVCAU(INVC) Q
 ;
LI1 N ITRA,ITRAHB S ITRA=""
 S ^D=11
 S ITRA=$G(W4HSB("TOT"))-$G(W4HSB("PAID"))
 S ITRAHB=$G(W4HSB("TOT"))-$G(W4HSB("HBHITOT"))
 ;
 I $G(%ARG("OPNINV")),+$J(ITRA,0,0)=0,'$$HMK,'$$TM,'$$TMZ Q
 I $G(%ARG("OPNINV")),$$^W4CLOSED(CODDOC,+N) Q
 I $G(%ARG("NPDT")),$$^W4CLOSED(CODDOC,+N) Q
 I $G(%ARG("OPNDEAL")),+ITRAHB=0,'$$HMK,'$$TM,'$$TMZ Q
 ;
LI2 ;
 I '$$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=$G(W4HSB("PRKUP")) Q
 ;
 I $G(MAX),$G(SHSB)+1>MAX S ENDCYC=1 Q
 S II=$G(II)+1
 S SHSB=$G(SHSB)+1
 ;
 W "<tr "
 W " style="""
 D
 .I $$HBZ(CODDOC)!$$DEL^W4DOCVW(CODDOC,NDOC) W "background-color:pink" S STYLE=1 Q
 .I $$HIDOC(CODDOC) W "background-color:lightgreen" Q
 .I $$ARM(LK0)=1 W "background-color:lightblue" Q
 .I $$ARM(LK0)=2 W "background-color:lightyellow" Q
 ;
 I $$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=W4HSB("PRKUP") D
 .W ";color:grey"
 ;
 W """ "
 W ">"
 ;
 W " <td dir=""LTR"" "
 N LHBCUR
 S LHBCUR=$$GET^%W1PRM("LHBCUR")
 S LHBCUR=+LHBCUR_";"_$P(LHBCUR,";",2)
 I (+N_";"_LK)=LHBCUR W " id=""curtd"" "
 W "style="""
 I (+N_";"_LK)=LHBCUR W "border:solid 2px brown;"
 I N["[-]" W "color:darkred;"
 W "text-align:center;cursor:pointer"
 W """ "
 ;
 D ONCLICKHB(CODDOC,N)
 W ">&nbsp;&nbsp;&nbsp;"_N_"</td>"
 D WEX(N)
 ;
 W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"">"
  S KW=$G(W4HSB("TODATE"))
  W "&nbsp;&nbsp;"_KW
  D WEX(KW,"D")
 W "</td>",!
 ;
 I '$G(PRINT) D
 .W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"" >"
 . W "&nbsp;&nbsp;"_W4HSB("ISSUETIME")
 .W "</td>",!
 ;
 W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"">"
  W "&nbsp;"_LK
 W "</td>",!
 D WEX(LK)
 ;
 W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"">"
  W "&nbsp;"_$$H2U^%L1FRM(W4HSB("LKHNAME"))
  D WEX(W4HSB("LKHNAME"),"H")
 W "</td>",!
 ;
 S W4HSB("TOT")=$J($G(W4HSB("TOT")),1,1)
 S W4HSB("PAID")=$J($G(W4HSB("PAID")),1,1)
 S ITRA=$J($G(ITRA),1,1)
 S ITRAHB=$J($G(ITRAHB),1,1)
 ;
 I CODDOC="TZ",'$G(PRALL) D
 .S W4HSB("TOT")=-W4HSB("TOT"),ITRA=-ITRA
 .S W4HSB("PAID")=-W4HSB("PAID")
 ;
 N COLOR I CODDOC="TZ" S COLOR="style=""color:darkred"" "
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" " D ONCLICKHB(CODDOC,N) W "style=""cursor:pointer"" "
 W ">"
  W "&nbsp;"_$$RKVN(W4HSB("TOT"))
  D WEX(W4HSB("TOT"),"N")
 W "</td>",!
 ;
 S STOT=$G(STOT)+W4HSB("TOT")
 ;
 I $$TM!$$TMZ D  G ELINE
 . W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"">"
 . W "&nbsp;"_$$H2U^%L1FRM($G(W4HSB("COMMENT")))
 . D WEX($G(W4HSB("COMMENT")),"H")
 ;
 I $$HMK!$$TM!$$TMZ G ELINE
 ;
 I '$$HI D
 .N TOPAY S TOPAY=$G(W4HSB("TOT"))
 .S STOPAY=$G(STOPAY)+TOPAY
 .W "<td dir=""LTR"" "_$$^%W1ALIGN
 .  I $$HBHI(N),'$$HIDOC(CODDOC) D
 .   .W " style=""cursor:pointer;background-color:lightgreen"" "
 .   .S TOPAY="[ "_$$HBHI(N)_" ]"
 .   .D SHOWHI($$HBHI(N)_"<"_N,LK)
 .  W ">&nbsp;"_$$RKVN(TOPAY)
 .  D WEX(TOPAY)
 .W "</td>",!
 ;
 S SSHUL=SSHUL+W4HSB("PAID")
 ;
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" " D ONCLICKCB(N) W " style=""cursor:pointer"""
   W ">&nbsp;"_$$RKVN(W4HSB("PAID"))
   D WEX(W4HSB("PAID"),"N")
 W "</td>",!
 ;
 I '$G(PRINT) D
 .W "<td "_$$^%W1ALIGN_" >"
 .D SHOWCB
 .W "</td>",!
 ;
 W "<td dir=""LTR"" "_$$^%W1ALIGN
 W " >"
  W "&nbsp;"_$S(ITRA'="":$$RKVN(ITRA),1:"")
  D WEX(ITRA,"N")
 W "</td>",!
 ;
 S SITRA=SITRA+ITRA
 ;
 I $$HI D
 .I '$G(PRINT) D
 ..W "<td "_$$^%W1ALIGN_" >"
 .. D SHOWHBTAX
 ..W "</td>",!
 .;
 .W "<td dir=""LTR"" "_$$^%W1ALIGN
 .N ITRAHB S ITRAHB=$G(W4HSB("TOT"))-$G(W4HSB("HBHITOT"))
 .S SSHB=SSHB+ITRAHB
 .W " >"
 . W "&nbsp;"_$S(ITRAHB'="":$$RKVN(ITRAHB),1:"")
 .W "</td>",!
 ;
 I $$CORR^W4PRM D
 .W "<td align=""center"" >"
  .N CLRBUT S CLRBUT="green"
  .I $$ISCORHB(N) S CLRBUT="red"
  .D ^W4BUTTON("corr"_N,$$^%W1DICT("CORRESPONDENCE"),"ShowCorr('"_N_"')","color:"_CLRBUT)
 .W "</td>"
 ;
ELINE W "</tr>",!
 D WEXR
 Q
 ;
 ;
ISCORHB(N) ;
 N LK0,LK
 S LK=$$LKN("H",N)
 Q:LK0="IN" 0  Q:'LK 0
 I $D(@$$^W4GL("W4CORHB")@(LK,N))>9 Q 1
 Q 0
 ;
 ;
RECEIPTLIST ;
 I $$DENIED Q
 ;
 N STOT,SCB S (STOT,SCB)=0
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" ",!
  I $G(PRINT) D PRINTSIZE
 W ">",!
 W " <tr>"
  W "<td width=""20%"" "_$$^%W1ALIGN_" >" D GROUPS W "</td>"
  W "<td style=""font-size:"_$$^W3FSZ(14)_";text-align:center"">"_$$^%W1DICT("RECEIPTESLIST")_"</td>"
  W "<td width=""20%"">&nbsp;</td>"
 W " </tr>",!
 W "</table>",!
 ;;W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("RECEIPTESLIST")_"</span>"
 D RADIOSHOW
 ;
 W "<table id=""listreceiptes"" border=""1""  width=""70%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("RECEIPT")
  D WEX("RECEIPT","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
  D WEX("TODATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("ISSUETIME")
  D WEX("ISSUETIME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
  D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
  D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
  D WEX("SUM","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("PAYMENTKIND")
  D WEX("PAYMENTKIND","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N KLIN S KLIN=$$^W4GL("KLIN")
 N GLHB S GLHB=$$^W4GL("P1LHB")
 ;
 N N,LK,LK0,A,ENDCYC S ENDCYC=0
 I $$^W4ISCDLK($G(LKH)) D
 .S N="",MAX=999999 ;
 .F  S N=$O(@KLIN@("CB",N),-1) Q:N=""  D LINECB(N,LKH)
 I '$$^W4ISCDLK($G(LKH)) D
 .N MAX S MAX=$$SHOWLAST
 .S N="" F II=1:1 S N=$O(@KLIN@("CB",N),-1) Q:N=""  D LINECB(N,"") Q:ENDCYC
 ;
 I $$^W4ISCDLK($G(LKH))!(SHOWKIND=2) D
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 .D WEX("TOTAL","DICT")
 .W "<td "_$$NUM^%W1ALIGN_" ><b>"_SCB_"</b></td>",!
 . D WEX(SCB,"N")
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT)_"</td>",!
 . D WEX(STOT,"N")
 .W "<td "_$$NUM^%W1ALIGN_" >&nbsp;</td>",!
 . D WEX(" ","E")
 .W "</tr>",!
 .D WEXR
 W " </table>",!
 Q
 ;
LINECB(N,LKH) ;
 N LK
 S LK=$G(@KLIN@("CB",N))
 Q:LK="IN"
 I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 I '$$LKH,$G(%ARG("GROUP")),$$SUGL^W4L(LK)'=%ARG("GROUP") Q
 ;
 D ^W4CBGET(N) Q:$D(W4CB)<10
 ;
 I $$CB,$$SHOWKIND=2,$G(W4CB("DT"))<$$^%L1DC($G(%ARG("MEDAT")),3)!($G(W4CB("DT"))>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 I $$CB,$$SHOWKIND=3,+$G(%ARG("NOMDOC"))'=+N Q
 I $$CB,$$SHOWKIND=4,$$CONT'="",'$$FINDCONT("CB",N,$$CONT) Q
 I $G(%ARG("MESUM")),W4CB("TOT")<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),W4CB("TOT")>%ARG("ADSUM") Q
 I $G(MAX),SCB+1>MAX S ENDCYC=1 Q
 S SCB=SCB+1
 ;
 W "<tr style=""cursor:pointer"
 I W4CB("TOT")<0!$$^W4DELCB(N) W ";background-color:pink"
 W """"
 W " onClick=""ShowReceipt('"_N_"','"_LK_"','ifr')"""
 W " >",!
 W " <td id=""td"_N_""" "
 ;;I (N_";"_LK)=$$GET^%W1PRM("LHBCUR") W " style=""border:solid 2px brown"""
 W ">&nbsp;&nbsp;&nbsp;"_N_"</td>"
 D WEX(N)
 W "<td>&nbsp;&nbsp;"_W4CB("TODATE")_"</td>",!
 D WEX(W4CB("TODATE"))
 ;
 W "<td>&nbsp;&nbsp;"_W4CB("ISSUETIME")_"</td>",!
 D WEX(W4CB("ISSUETIME"))
 ;
 W "<td>&nbsp;"_LK_"</td>",!
 D WEX(LK)
 ;
 W "<td>&nbsp;"_$$H2U^%L1FRM(W4CB("LKHNAME"))_"</td>",!
 D WEX(W4CB("LKHNAME"),"H")
 ;
 W "<td dir=""LTR"" "_$$^%W1ALIGN
 I $P($G(@$$^W4GL("KLF")@(LK,"CBV",N,1)),"*",7) D
 .W " style=""font-weight:bold"" "
 W ">&nbsp;"_$J(W4CB("TOT"),2,2)_"</td>",!
 D WEX(W4CB("TOT"),"N")
 S STOT=STOT+W4CB("TOT")
 ;
 N SUGTS1 S SUGTS1=$$SUGTS($G(W4CB("SUGTS")))
 W "<td>&nbsp;"_$$H2U^%L1FRM(SUGTS1)_"</td>",!
 D WEX(SUGTS1,"H")
 
 W "</tr>",!
 D WEXR
 Q
 ;
SHOWCB ;
  I '$G(W4HSB("NCB")) W "&nbsp;" Q
  ;
  W "<table width=""100%"" cellspacing=""0"" ><tr>",!
  W " <td width=""55%"">",!
  I W4HSB("NCB")'["," D
  . W " <input type=""text"" size=""4"" id=""hbcb"_N_""" readonly=""readonly"""
  . W " value="""_W4HSB("NCB")_""" >",!
  ;
  I W4HSB("NCB")["," D
  .W "<select id=""hbcb"_N_""" >"
  .N K F K=1:1:$L(W4HSB("NCB"),",") D
  ..W "<option>"_$P(W4HSB("NCB"),",",K)_"</option>",!
  .W "</select>",!
  W "</td>",!
  ;
  W "<td width=""45%"">"
   I '$G(PRINT) D
   .D ROUNDBUT^%W1JS("showcb",$$^%W1DICT("SHOW"),"ShowReceipt(GetVl('hbcb"_N_"'),'"_LK_"','ifr')","color:green","wh,22")
   .;;D TDMAIL
  W "</td>",!
  W "</tr></table>",!
  Q
  ;
  ;
SHOWHBTAX ;
  I '$G(W4HSB("HBHI")) W "&nbsp;" Q
  ;
  W "<table width=""100%"" cellspacing=""0"" ><tr>",!
  W " <td width=""55%"">",!
  I W4HSB("HBHI")'["," D
  . W " <input type=""text"" size=""4"" id=""hbhi"_N_""" readonly=""readonly"""
  . W " value="""_W4HSB("HBHI")_""" >",!
  ;
  I W4HSB("HBHI")["," D
  .W "<select id=""hbhi"_N_""" >"
  .N K F K=1:1:$L(W4HSB("HBHI"),",") D
  ..W "<option>"_$P(W4HSB("HBHI"),",",K)_"</option>",!
  .W "</select>",!
  W "</td>",!
  ;
  W "<td width=""45%"">"
   I '$G(PRINT) D
   .D ROUNDBUT^%W1JS("showcb",$$^%W1DICT("SHOW"),"ShowArmInvoice(GetVl('hbhi"_N_"'),'"_LK_"','ifr')","color:green","wh,22")
   .;;D TDMAIL
  W "</td>",!
  W "</tr></table>",!
  Q
  ;
  ;
SRVCARDLIST ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("SRVCARDLIST")_"</span>"
 D RADIOSHOW
 W "<table id=""srvcards"" border=""1""  width=""50%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SERVICECARD")
   D WEX("SERVICECARD","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
   D WEX("DATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
   D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
   D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DEVICE")
   D WEX("DEVICE","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N I,N,A,CUST,CUSTNAME,SRV,STOT
 S (SRV,STOT)=0
 N GLS S GLS=$$^W4GL("SRVC")
 N ENDCYC S ENDCYC=0
 ;
 S N="",I=0 F  S N=$O(@GLS@(N),-1) Q:N=""  D  Q:ENDCYC
 .S A=$G(^(N))
 .S CUST=$P(A,"\",2) I $$^W4ISCDLK($G(LKH)),$TR(CUST,"-","")'=$TR(LKH,"-","") Q
 .N DT S DT=$$^%L1DC($$DAT^W4LSRVW(N),3)
 .I $$SHOWKIND=2,DT<$$^%L1DC($G(%ARG("MEDAT")),3)!(DT>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 .I $$SHOWKIND=3,+$G(%ARG("NOMDOC"))'=+N Q
 .I $G(MAX),SRV+1>MAX S ENDCYC=1 Q
 .S SRV=SRV+1
 .S CUSTNAME=$P(A,"\",3)
 .
 .W "<tr style=""cursor:pointer"
 .W """"
 .W " onClick=""ShowSrvCard('"_N_"')"""
 .W " >",!
 .W " <td>"
 .W " &nbsp;&nbsp;"_N
 . D WEX(N)
 .W " </td>"
 .W " <td>"
 .W $$DAT^W4LSRVW(N)
 . D WEX($$DAT^W4LSRVW(N),"D")
 .W " </td>"
 .W " <td>"
 .W $$LKH^W4LSRVW(N)
 . D WEX($$LKH^W4LSRVW(N))
 .W " </td>"
 .W " <td>"
 .W $$H2U^%L1FRM($$LKH1^W4LSRVW(N))
 . D WEX($$LKH1^W4LSRVW(N),"H")
 .W " </td>"
 .W " <td>"
 .W $$H2U^%L1FRM($$DEV^W4LSRVW(N))
 . D WEX($$DEV^W4LSRVW(N),"H")
 .W " </td>"
 .W "</tr>",!
 .D WEXR
 ;
 W " </table>",!
 Q
 ;
 ;
ORDLIST(DOC) ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr>"
 W "<td style=""color:black;font-size:"_$$^W3FSZ(14)_""">"
 W $$^%W1DICT($S(DOC="HZMH":"PRICEOFFERSLIST",$G(LKH):"CUSTORDLIST",1:"ORDLIST"))
 W "</td>",!
 D PRNEX
 W "</tr>",!
 W "</table>",!
 ;
 N MAX S MAX=$$SHOWLAST
 D RADIOSHOW
 ;
 W "<table id=""orderlist"" border=""1""  width=""98%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>"_$$^%W1DICT("NPP")_"</th>",!
   D WEX("NPP","DICT")
 W "   <th>",!
 N DOCNAME S DOCNAME=$S(DOC="HZ":"ORDER",1:"PRICEOFFER")
 W "    "_$$^%W1DICT(DOCNAME)
   D WEX(DOCNAME,"DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
   D WEX("DATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
   D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
   D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL1")
   D WEX("TEL1","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL2")
   D WEX("TEL2","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
   D WEX("SUM","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("INVOICE")
   D WEX("INVOICE","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N I,N,A,CUST,CUSTNAME
 N GLHZ S GLHZ=$S(DOC="HZ":$$^W4GL("W4ORD"),1:$$^W4GL("W4DOC"))
 N ENDCYC S ENDCYC=0
 N SHZ,STOT S (SHZ,STOT)=0
 ;
 S N="",I=0 F  S N=$O(@GLHZ@(N),-1) Q:N=""  D  Q:ENDCYC
 .N A,LK,NUMBER S A=$G(^(N)) Q:A=""
 .;
 .I DOC="HZMH",'$G(@GLHZ@(N,"HZMH")) Q
 .D ^W4HSBGET(N,DOC)
 .S NUMBER=+$G(@GLHZ@(N,"NUMBER"))
 .I DOC="HZMH" S NUMBER=$G(@GLHZ@(N,"HZMH"))
 .;
 .S LK=$G(W4HSB("LKH")) Q:LK=""
 .I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 .I '$$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=W4HSB("PRKUP") Q
 .N DT S DT=$G(W4HSB("DT"))
 .I $$SHOWKIND=2,DT<$$^%L1DC($G(%ARG("MEDAT")),3)!(DT>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 .I $$SHOWKIND=3,+$G(%ARG("NOMDOC"))'=+NUMBER Q
 .I $G(MAX),SHZ+1>MAX S ENDCYC=1 Q
 .S SHZ=SHZ+1
 .
 .W "<tr "
 .I $$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=W4HSB("PRKUP") D
 ..W " style=""color:grey"" "
 .I $D(@GLHZ@(N,"DELETED")) W " style=""background-color:pink"" "
 .W " >",!
 .
 .W " <td style=""background-color:lightgrey;color:black;font-size:"_$$^W3FSZ(8)_";text-align:center"">"
 .  W SHZ
 . D WEX(SHZ)
 .
 .W " <td style=""cursor:pointer"
 .I +NUMBER=+$$GETP^%W1PRM("LHBCUR") W ";border:solid 2px brown;"
 .W """ "
 .W " onClick=""ShowItemsInvoice('"_+NUMBER_DOC_"','"_LK_"',self,'','0')"""
 .W ">"
 .W " &nbsp;&nbsp;"_NUMBER
 . D WEX(NUMBER)
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV(W4HSB("TODATE"))
 . D WEX(W4HSB("TODATE"),"D")
 .W " </td>"
 .
 .W " <td>"
 . W LK
 . D WEX(LK)
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV(W4HSB("LKHNAME"),"H")
 . D WEX(W4HSB("LKHNAME"),"H")
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV($$TELB^W4L(LK))
 . D WEX($$TELB^W4L(LK))
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV($$PELE^W4L(LK))
 . D WEX($$PELE^W4L(LK))
 .W " </td>"
 .
 .W " <td>"
 . W $J(W4HSB("TOT"),2,2)
 . S STOT=STOT+W4HSB("TOT")
 . D WEX(W4HSB("TOT"),"N")
 .W " </td>"
 .
 .W "<td "
 . W " style=""cursor:pointer"" "
 . W " onClick=""ShowItemsInvoice('"_$P($G(W4HSB("NHB")),";")_"','"_LK_"',self,'','0')"" "
 .W ">"
 . W $$RKV($P($G(W4HSB("NHB")),";"))
 . D WEX($P($G(W4HSB("NHB")),";"))
 .W "</td>"
 .W "</tr>",!
 .D WEXR
 ;
 D  ;
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .N J F J=1:1:6 D
 ..W "<td>&nbsp;</td>",!
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 . D WEX("TOTAL","DICT")
 .W "<td>"_$J(STOT,2,2)_"</td>",!
 . D WEX(STOT,"N")
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "</tr>",!
 .D WEXR
 Q
 ;
 ;
PRCOFRCLIST ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT($S($$^W4ISCDLK($G(LKH)):"CUSTPRCOFRLIST",1:"PRCOFRLIST"))_"</span>"
 N MAX S MAX=$$SHOWLAST
 D RADIOSHOW
 W "<table id=""prcofrcards"" border=""1""  width=""98%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("HZMH")
  D WEX("HZHMH","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
  D WEX("DATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
  D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
  D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL1")
  D WEX("TEL1","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL2")
  D WEX("TEL2","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DESCRIPTION")
  D WEX("DESCRIPTION","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
  D WEX("SUM","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N I,N,A,CUST,CUSTNAME
 N GLHM S GLHM=$$^W4GL("HZMHC")
 N ENDCYC S ENDCYC=0
 N SHM,STOT S (SHM,STOT)=0
 ;
 S N="",I=0 F  S N=$O(@GLHM@(N),-1) Q:N=""  D  Q:ENDCYC
 .N A,LK S A=$G(^(N))
 .S LK=$$LKH^W4HZMHCV(N)
 .I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 .N DT S DT=$$^%L1DC($$DAT^W4HZMHC(N),3)
 .I $$SHOWKIND=2,DT<$$^%L1DC($G(%ARG("MEDAT")),3)!(DT>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 .I $$SHOWKIND=3,+$G(%ARG("NOMDOC"))'=+N Q
 .I $G(MAX),SHM+1>MAX S ENDCYC=1 Q
 .S SHM=SHM+1
 .W "<tr style=""cursor:pointer"
 .W """"
 .W " onClick=""ShowPrcOfr('"_N_"','"_LK_"',self)"""
 .W " >",!
 .W " <td"
 .I +N=+$$GET^%W1PRM("LHBCUR") W " style=""border:solid 2px brown;"" "
 .W ">"
 .W " &nbsp;&nbsp;"_N
 . D WEX(N)
 .W " </td>"
 .W " <td>"
 . W $$DAT^W4HZMHC(N)
 . D WEX($$DAT^W4HZMHC(N),"D")
 .W " </td>"
 .W " <td>"
 . W LK
 . D WEX(LK)
 .W " </td>"
 .W " <td>"
 . W $$LKHNAME^W4HZMHC(N)
 . D WEX($$LKHNM^W4HZMHC(N),"D")
 .W " </td>"
 .W " <td>"
 . W $$TEL1^W4HZMHC(N)
 . D WEX($$TEL1^W4HZMHC(N))
 .W " </td>"
 .W " <td>"
 . W $$TEL2^W4HZMHC(N)
 . D WEX($$TEL2^W4HZMHC(N))
 .W " </td>"
 .W " <td>"
 . W $$DESCR^W4HZMHC(N)
 . D WEX($$DSCR^W4HZMHC(N))
 .W " </td>"
 .W " <td>"
 . W $J($$SUMTD^W4HZMHC(N),2,2)
 . D WEX($$SUMTD^W4HZMHC(N),"N")
 . S STOT=STOT+$$SUMTD^W4HZMHC(N)
 .W " </td>"
 .W "</tr>",!
 .D WEXR
 ;
 I $$SHOWKIND=2 D
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 . D WEX("TOTAL","DICT")
 .W "<td "_$$NUM^%W1ALIGN_" ><b>"_SHM_"</b></td>",!
 . D WEX(SHM)
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT)_"</td>",!
 . D WEX(STOT,"N")
 .W "</tr>",!
 .D WEXR
 W " </table>",!
 Q
 ;
 ;
W4LKH(STAM) ;
 Q +$$^W4LKH
 ;
 ;
IFNEWLKH(LKH) ;
 N W4LKH,W4LKH1,W4KTV,W4CITY,W4STREET,W4HOME,W4FLAT,W4FAX,W4EMAIL,W4ZIP,W4TZ
 S W4LKH=0,W4LKH1="",W4KTV=""
 ;
 I LKH["~" D GETDETLKH(LKH)
 ;
 S LKH=$P(LKH,"~")
 S:'$$DEFISLK^W4PRM LKH=$TR(LKH,"-","") Q:LKH=""
 ;
 I W4LKH,$L(W4LKH1) D
 .S @$$^W4GL("LKH")@(LKH)=W4LKH1
 .D
 ..I W4TEL'?.P D PUT^W4L(LKH,W4TEL,"TELB")
 ..I W4PELE'?.P D PUT^W4L(LKH,W4PELE,"PELE")
 ..I W4STREET'?.P D PUT^W4L(LKH,W4STREET,"KTV")
 ..I W4CITY'?.P D PUT^W4L(LKH,W4CITY,"IR")
 ..I W4HOME'?.P D PUT^W4L(LKH,W4HOME,"BAIT")
 ..I $L(W4FLAT) D PUT^W4L(LKH,W4FLAT,"DIRA")
 .I W4FAX D PUT^W4L(LKH,W4FAX,"FAX")
 .I $L(W4EMAIL) D PUT^W4L(LKH,W4EMAIL,"EMAIL")
 .I W4ZIP D PUT^W4L(LKH,W4ZIP,"MIKUD")
 .I W4TZ D PUT^W4L(LKH,W4TZ,"TZ")
 .I '$$D2^W4L(LKH) S @$$^W4GL("LKH")@(LKH,2)="*1*90000"
 .I '$$D3^W4L(LKH) S @$$^W4GL("LKH")@(LKH,3)=""
 ;
 Q
 ;
GETDETLKH(LKH) ;
 S W4LKH=$P(LKH,"~",2),W4LKH1=$P(LKH,"~",3)
 S W4LKH1=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4LKH1))
 S W4TEL=$$CNWEB^%L1FRM($P(LKH,"~",4))
 I W4TEL?.P,$L($P(LKH,"~"))>6 S W4TEL=$$TEL($P(LKH,"~"))
 S W4PELE=$$CNWEB^%L1FRM($P(LKH,"~",5))
 S W4FAX=$$CNWEB^%L1FRM($P(LKH,"~",6))
 S W4EMAIL=$$CNWEB^%L1FRM($P(LKH,"~",7))
 S W4CITY=$P(LKH,"~",8)
 S W4CITY=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4CITY))
 S W4STREET=$P(LKH,"~",9)
 S W4STREET=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4STREET))
 S W4HOME=$$CNWEB^%L1FRM($P(LKH,"~",10))
 S W4FLAT=$$CNWEB^%L1FRM($P(LKH,"~",11))
 S W4ZIP=$$CNWEB^%L1FRM($P(LKH,"~",12))
 S W4TZ=$$CNWEB^%L1FRM($P(LKH,"~",13))
 ;S W4KTV=W4STREET
 ;I $L(W4HOME) S W4KTV=W4KTV_" "_W4HOME
 ;I $L(W4FLAT) S W4KTV=W4KTV_"/"_W4FLAT
 ;I $L(W4CITY) S W4KTV=W4KTV_" , "_W4CITY
 ;I $L(W4ZIP) S W4KTV=W4KTV_" "_W4ZIP
 Q
 ;
 ;
TEL(LKH) ;
 S LKH=$TR(LKH,"-","")
 I $E(LKH)="1" Q $E(LKH)_"-"_$E(LKH,2,4)_"-"_$E(LKH,5,20)
 I $E(LKH)'="0" Q LKH
 I $E(LKH,1,2)="02"!($E(LKH,1,2)="03")!($E(LKH,1,2)="04")!($E(LKH,1,2)="08") Q $E(LKH,1,2)_"-"_$E(LKH,3,20)
 Q $E(LKH,1,3)_"-"_$E(LKH,4,20)
 ;
NOIDKKTV(LKH) ;
 I '$$^W4ISCDLK($G(LKH)) Q 0
 I $L($$BAIT^W4L(LKH)) Q 1
 I $L($$DIRA^W4L(LKH)) Q 1
 I $L($$CITY^W4L(LKH)) Q 1
 Q 0
 ;
ONCLICKHB(CODDOC,N) ;
 I CODDOC="HI" D
 .S N=$TR(N,"[] ","")
 ;
 N LK0 I '$G(N) Q
 S LK=$$LKN(CODDOC,N)
 I LK=""!(LK=0) Q
 ;
 I CODDOC="HMK" W " onClick=""ShowArmInvoice('"_+N_"HMK','"_LK_"','ifr','','0',this)"" " Q
 ;
 I $$HIDOC(CODDOC) D SHOWHI(N,LK) Q
 ;
 I CODDOC="HZMHC" W " onClick=""ShowPrcOfr('"_+N_"','"_LK_"','ifr')"" " Q
 ;
 I $$HBZ(CODDOC) D  Q
 .I $$ARM(LK0)=1 W " onClick=""ShowArmInvoice('"_+N_"','"_LK_"','ifr','1','0',this)"" " Q
 .I $$ARM(LK0)=2 W " onClick=""ShowItemsInvoice('"_+N_"Z','"_LK_"','ifr','','',this)""" Q
 .W " onClick=""ShowInvoice('"_-N_"','"_LK_"',self)"""
 ;
 I '$$ARM(LK0) W " onClick=""ShowInvoice('"_N_"','"_LK_"','ifr',this)"""
 ;
 N DOP S DOP=""
 ;
 I $$TM S DOP="T"
 I $$TMZ S DOP="TMZ"
 ;
 I $$ARM(LK0) D
 .I $$ARM(LK0)=1 W " onClick=""ShowArmInvoice('"_N_"','"_LK_"','ifr','','0',this)""" Q
 .I $$ARM(LK0)=2 W " onClick=""ShowItemsInvoice('"_N_DOP_"','"_LK_"','ifr','','"_$S($G(TMHB):1,$G(TMHBZ):1,1:0)_"',this)""" Q
 Q
 ;
 ;
ONCLICKCB(N) ;
 W " style=""cursor:pointer"" onClick=""ShowReceipt(GetVl('hbcb"_N_"'),'"_LK_"','ifr')"""
 Q
 ;
ONCLICKHBHI(N) ;
 W " style=""cursor:pointer"" onClick=""ShowReceipt(GetVl('hbcb"_N_"'),'"_LK_"','ifr')"""
 Q
 ;
CODDOC(STAM) ;
 I $G(%ARG("VD"))="HBZ" Q "TZ"
 I $G(%ARG("VD"))="HMK" Q "HMK"
 I $G(%ARG("VD"))="HMKI" Q "HMK"
 I $G(%ARG("VD"))="HZMH" Q "HZMH"
 I $G(%ARG("VD"))="HZMHC" Q "HZMHC"
 I $G(%ARG("VD"))="HI" Q "HI"
 I $G(%ARG("VD"))="TM" Q "TM"
 I $G(%ARG("VD"))="TMZ" Q "TMZ"
 I $$INP($G(%ARG("VD"))) Q %ARG("VD")
 ;
 I $$GET^%W1PRM("VD")="HBZ" Q "TZ"
 I $$GET^%W1PRM("VD")="HMK" Q "HMK"
 I $$GET^%W1PRM("VD")="HMKI" Q "HMK"
 I $$GET^%W1PRM("VD")="HZMH" Q "HZMH"
 I $$GET^%W1PRM("VD")="HZMHC" Q "HZMHC"
 I $$GET^%W1PRM("VD")="HI" Q "HI"
 I $$GET^%W1PRM("VD")="TM" Q "TM"
 I $$GET^%W1PRM("VD")="TMZ" Q "TMZ"
 I $$INP($$GETP^%W1PRM("VD")) Q $$GETP^%W1PRM("VD")
 Q "H"
 ;
HBZ(CODDOC)
 I CODDOC="TZ" Q 1
 I CODDOC="HBZ" Q 1
 Q 0
 ;
KLIN ;
 S KLIN=$$^W4GL("KLIN")
 Q
 ;
SHOWALL(LKH,MAX) ;
 N N,VRM,DT,CODDOC,PRALL,II
 I '$G(MAX) S MAX=9999999999 ;
 S PRALL=1
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 D CRVRM("H",LKH,MAX)
 D CRVRM("TZ",LKH,MAX)
 D CRVRM("HI",LKH,MAX)
 ;;W "SHOWALL: MAX="_MAX,! ; ***
 ;
 S II=0,ENDCYC=0
 ;
 S DT="" F  S DT=$O(@VRM@(DT),-1) Q:DT=""  D  Q:ENDCYC
 .S N="" F  S N=$O(@VRM@(DT,N),-1) Q:N=""  D  Q:ENDCYC
 ..S CODDOC="H"
 ..I N["[-]" S CODDOC="TZ"
 ..I $E($TR(N," ",""))="[" S CODDOC="HI"
 ..D LINEINVC(N,LKH,CODDOC,$G(PRINT))
 Q
 ;
 ;
CRVRM(CODDOC,LKH,MAX) ;
 ;;W "CODDOC="_CODDOC,!
 N N,A,LK0,LK,SH S SH=0
 S N=999999999 F  S N=$O(@KLIN@(CODDOC,N),-1) Q:N=""  D CRVRM1(CODDOC,LKH,N)
 Q
 ;
CRVRM1(CODDOC,LKH,N)
 I $G(%ARG("NOMDOC")),+%ARG("NOMDOC")'=+N Q
 N LK
 S LK=$$LKN(CODDOC,N)
 I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 D ^W4HSBGET(N,CODDOC)
 S DT=$G(W4HSB("DT")) Q:'DT
 S SH=SH+1
 N HB S HB=N
 I CODDOC="TZ" S HB=N_" [-]"
 I CODDOC="HI",($G(W4HSB("TOT"))-$G(W4HSB("HBHITOT")))'>0 Q
 I CODDOC="HI" S HB="[ "_N_" ]"
 N OKNPDT S OKNPDT=0
 I $G(%ARG("NPDT")) D  Q:'OKNPDT
 .I CODDOC'="H",CODDOC'="HBW" Q
 .N DT S DT=$G(W4HSB("DT"))
 .N SHOTEF S SHOTEF=$$SHOTEF^W4L(LK) Q:'SHOTEF
 .I '$G(W4HSB("PAID")),DT+SHOTEF<$H S OKNPDT=1
 S @VRM@(DT,HB)=LK0
 Q
 ;
RKVN(RKV) ;
 N ST S ST=""
 I RKV<0 S ST="<span style=""color:darkred"">"
 S ST=ST_$S(RKV?."-"1N.E!(RKV=""):$J(RKV,2,2),1:RKV)
 I RKV<0 S ST=ST_"</span>"
 Q ST
 ;
ZV(STAM) ;
 Q "<span style=""color:red"">*</span>"
 ;
SELDAT(TODATE,MIN,PLUS,ID,ONCHNG) ;
  W $$^W4SELDAT(TODATE,$G(MIN),$G(PLUS),$G(ID),$G(ONCHNG)) ;
 Q
 ;
LASTDT(STAM) ;
 N W4HSB
 N CODDOC S CODDOC=$$CODDOC
 D KLIN
 N H S H=$O(@KLIN@(CODDOC,999999),-1) I 'H Q 0
 D ^W4HSBGET(H,CODDOC) I '$D(W4HSB("DT")) Q 0
 Q W4HSB("DT")
 ;
INVCAU(INVC) ;
 I +$G(INVC)#2=1 Q 1
 ;;I '$G(INVC),$G(%ARG("VD"))'="HBZ",$G(%ARG("DOC"))'="HBW" Q 1
 I '$G(INVC),$G(%ARG("VD"))'="HBZ" Q 1
 Q 0
 ;
INVCARM(INVC) ;
 I (+$G(INVC)\2)#2 Q 1
 I '$G(INVC),$G(%ARG("VD"))'="HBZ" Q 1
 Q 0
 ;
INVCIT(INVC) ;
 I (+$G(INVC)\4)#2 Q 1
 I '$G(INVC),$G(%ARG("VD"))'="HBZ" Q 1
 Q 0
 ;
INVCDEB(INVC) ;
 I (+$G(INVC)\8)#2 Q 1
 I '$G(INVC) Q 1
 Q 0
 ;
INVCHI(INVC) ;
 I (+$G(INVC)\16)#2 Q 1
 I '$G(INVC) Q 1
 Q 0
 ;
INIT ;
 I $G(%ARG("FIRST")) D
 .D KILL^%W1PRM("DAT")
 .D KILL^%W1PRM("LHBCUR")
 ;
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 D KILL^%W1PRM("VD")
 I $L($G(%ARG("VD"))) D PUT^%W1PRM("VD",%ARG("VD"))
 D KILL^%W1PRM("DOC")
 I $L($G(%ARG("DOC"))) D PUT^%W1PRM("DOC",%ARG("DOC"))
 D KILL^%W1PRM("NOMHB")
 D KILL^%W1PRM("SUMHB")
 D KILL^%W1PRM("HZM")
 K @$$^W4MAIN("TMP")
 K @$$^W4MAIN("TMPHM")
 K @$$^W4MAIN("TMPCB")
 K @$$^W4MAIN("TMPHB")
 Q
 ;
 ;
KOT ;
 N VD S VD=$$GET^%W1PRM("VD")
 ;
 I VD="HBZ" D  Q
 .I $G(%ARG("DOC"))="HBW" W $$^%W1DICT("DEBETITEMSINVOICE") D DOPZAG Q
 .W $$^%W1DICT("DEBETINVOICE") Q
 ;
 I $$HI W $$^%W1DICT("DEALARMINVOICE") Q
 ;
 I VD="HBY"!(VD["UNDEF")!(VD="") D  Q
 .I $G(%ARG("DOC"))="HBW" W $$^%W1DICT("ITEMSINVOICE") D DOPZAG Q
 .W $$^%W1DICT("SINGLECUSTOMARMINVOICE")
 ;
 I $$HMK^W4LHB=1 D  Q
 .W $$^%W1DICT("ARMINVOICERECEIPT")
 ;
 I $$HMKI^W4LHB D  Q
 .W $$^%W1DICT("ITEMSINVOICERECEIPT")
 ;
 I VD="TM" D  Q
 .W $$^%W1DICT("SHIPPINGRECORDSISSUE") D DOPZAG
 ;
 I VD="TMZ" D  Q
 .W $$^%W1DICT("SHIPPINGBACKRECORDSISSUE") D DOPZAG
 ;
 I $$HZ D  Q
 .W $$^%W1DICT("CUSTOMERORDER") D DOPZAG
 ;
 I $$HZMH D  Q
 .W $$^%W1DICT("PRICEOFFER") D DOPZAG
 Q
 ;
 ;
HEAD ;
 I $$CB D  Q
 .W $$^%W1DICT("RECEIPTES")
 ;
 I $$SRV D  Q
 .W $$^%W1DICT("SERVICECARD")
 ;
 I $$HZMH D  Q
 .W $$^%W1DICT("HZMH")
 ;
 I $$HI D  Q
 .W $$^%W1DICT("DEALARMINVOICE")
 ;
 D
 .W $$^%W1DICT("SINGLECUSTOMINVOICE")
 Q
 ;
DOPZAG ;
 I $$PRKUP W " - "_$$^%W1DICT("CSRITEMS")
 I $$PRKUP=0 W " - "_$$^%W1DICT("MLYITEMS")
 Q
 ;
CUSTCLOSED(LKH) ;
 I $$MAZAV^W4L(LKH)=0 Q 1
 Q 0
 ;
CONT(STAM) ;
 Q $$INVH^%L1FRM($G(%ARG("CONTENT")))
 ;
FINDNMB(ST,CONT) ;
 N J F J=1:1:$L(ST,"\") I +$P(ST,"\",J)=+CONT S OK=1 Q
 Q
 ;
FINDCONT(CODDOC,NDOC,CONT) ;
 N LK0,LK,OK,SH S OK=0
 S LK=$$LKN(CODDOC,NDOC)
 Q:LK0="IN"
 ;
 I CODDOC="H"!(CODDOC="TZ")!(CODDOC="HI")!(CODDOC="HMK") D
 .I LK0["+" D  Q
 ..N ST S ST=$G(@$$^W4GL("P1LHB")@(LK,+NDOC,"PR"))
 ..I 'CONT,ST[CONT S OK=1 Q
 ..I CONT D
 ...N J F J=1:1:$L(ST,"\") I +$P(ST,"\",J)=+CONT S OK=1 Q
 .I LK0["^" D  Q
 .I LK0["W" D  Q
 ..N NOM S NOM=$P(LK0,"W",2)
 ..S SH="" F  S SH=$O(@$$^W4GL("W4DOC")@(NOM,SH)) Q:SH=""  D:SH  Q:OK
 ...N ST S ST=$G(^(SH))
 ...I 'CONT,ST[CONT S OK=1 Q
 ...I CONT D FINDNMB(ST,CONT)
 .
 .D  Q  ;-- YAD
 ..N SH
 ..I 'CONT,$G(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC))[CONT S OK=1
 ..S SH="" F  S SH=$O(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC,SH)) Q:SH=""  D:SH  Q:OK
 ...N ST S ST=$G(^(SH))
 ...I 'CONT,ST[CONT S OK=1 Q
 ...I CONT D FINDNMB(ST,CONT)
 ..I 'OK," "_$G(@$$^W4GL("KLF")@(LK,CODDOC_"P",+NDOC))_" "[(" "_CONT_" ") S OK=1
 ..Q:OK
 ..I CODDOC="HMK" D
 ...S SH="" F  S SH=$O(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC,"HB",SH)) Q:SH=""  D:SH  Q:OK
 ....N ST S ST=$G(^(SH))
 ....I 'CONT,ST[CONT S OK=1 Q
 ....I CONT D FINDNMB(ST,CONT)
 ;
 I CODDOC="CB" D
 .I 'CONT,$G(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC))[CONT S OK=1
 .S SH="" F  S SH=$O(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC,SH)) Q:SH=""  D:SH  Q:OK
 ..N ST S ST=$G(^(SH))
 ..I 'CONT,ST[CONT S OK=1 Q
 ..I CONT D FINDNMB(ST,CONT)
 .I $G(@$$^W4GL("KLF")@(LK,CODDOC_"P",+NDOC))[CONT S OK=1
 .
 I $$INP(CODDOC),$G(SPK) D
 .I 'CONT,$G(@$$^W4GL("W4INP")@(SPK,CODDOC,+NDOC))[CONT S OK=1
 .S SH="" F  S SH=$O(@$$^W4GL("W4INP")@(SPK,CODDOC,+NDOC,SH)) Q:SH=""  D  Q:OK
 ..N ST S ST=$G(^(SH))
 ..I 'CONT,ST[CONT S OK=1 Q
 ..I CONT D FINDNMB(ST,CONT)
 ;
 Q OK
 ;
 ;
LKHMKDFLT(STAM) ;
 I $$HMK,$$^W4LKHCSR,LKH=$$LKHDFLT^W4LKHCSR Q 1
 Q 0
 ;
RKV(TXT,PRM) ;
 I $G(TXT)="" Q "&nbsp;"
 I $G(PRM)="H" Q $$H2U^%L1FRM(TXT)
 Q TXT
 ;
GROUPS ;
 W "<select id=""group"" "
 N LKH S LKH=$$LKH
 I '$$^W4ISCDLK(LKH) W " onChange=""ShowInvoices()"" "
 W ">",!
 I LKH S %ARG("GROUP")=+$$SUGL^W4L(LKH)
 W "<option value=""0"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4GL("SUGL")@(N)) Q:N=""  D
 .I LKH,N'=%ARG("GROUP") Q
 .W "<option value="""_N_""" "
 .I $G(%ARG("GROUP")),N=%ARG("GROUP") W " selected=""selected"" "
 .W "> "_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>",!
 W "</select>",!
 Q
 ;
LKH(STAM) ;
 I $G(%ARG("CODE")) Q %ARG("CODE")
 I $G(%ARG("LKH")) Q %ARG("LKH")
 Q ""
 ;
PRINTSIZE ;
 W "style=""font-size:10pt"" "
 Q
 ;
DOCEXIST(PRM) ;
 N LKH,VD,NUMBER
 S LKH=$$^W4CDLK($P(PRM,";"))
 S VD=$P(PRM,";",2)
 S NUMBER=$P(PRM,";",3)
 I '$G(NUMBER) Q 0
 I $G(LKH)=""!($G(LKH)=0) Q ""
 I $$D^W4ORDD(LKH,NUMBER) Q 1
 Q 0
 ;
PRKUP(STAM) ;
 Q $$GETP^%W1PRM("PRKUP")
 ;
INP(VDOC) ;
 I $E(VDOC)="I" Q 1
 Q 0
 ;
ALLDOCS(STAM) ;
 Q $G(%ARG("ALLDOCS"))
 ;
SHOWHI(N,LK)
 N N1 S N1=N
 I N["<" S N1=$P(N,"<")_"HI"_"<"_$P(N,"<",2)
 E  S N1=N_"HI"
 W " onClick=""ShowArmInvoice('"_N1_"','"_LK_"','ifr','','0',this)"" "
 Q
 ;
TDMAIL ;
 W " <td id=""mail"">"
 W " </td>"
 Q
 ;
DENIED(STAM) ;
 I $$^W4LKH,$$GETP^%W1PRM("MSD")=7001,'$$VIEW,'$G(@$$^W4GL("ISHUR")@(%REM,+$H)) Q 1
 Q 0
 ;
WDTBL(STAM) ; 
 Q 95
 ;
SUGTS(SUGTS) ;
 N ST S ST="" 
 S ST=$$RPL^%L1FRM(SUGTS,1,$$TV^%W1DICT($$^%W1LNG,"CASH"))
 S ST=$$RPL^%L1FRM(ST,2,$$TV^%W1DICT($$^%W1LNG,"CHECK"))
 S ST=$$RPL^%L1FRM(ST,3,$$TV^%W1DICT($$^%W1LNG,"CA"))
 S ST=$$RPL^%L1FRM(ST,4,$$TV^%W1DICT($$^%W1LNG,"AVBANK"))
 Q ST 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LHB0
W4LHB ; [ 08.01.19 04:52 ] [ 09.10.18 12:31 ] [ 02.08.18 10:41 ] 
 I $$DENIED Q
 N (JB,%ARG,%REM)
 N LKH S LKH=$$^W4CDLK($G(%ARG("CODE")))
 I LKH="",$$HMK,$$^W4LKHCSR S LKH=$$LKHDFLT^W4LKHCSR
 N SHOWKIND S SHOWKIND=$G(%ARG("SHOWKIND"))
 I 'SHOWKIND S SHOWKIND=1
 S ONCLICKSHOW=" onClick=""OnClickShow(this)"" "
 ;
 ;;I $$CODDOC="TZ",$G(%ARG("INVC"))="" S %ARG("INVC")=8
 ;
 D OPCSV^W4EX("W4LHB")
 ;
 W "<div align=""center"">",!
 ;----------------------------------------------------
 I $G(%ARG("PRINT"))!$G(%ARG("SEND2MAIL")) D  Q  ; PRINT INVOICES LIST
 .D LIST
 .W "</div>",!
 ;----------------------------------------------------
 ;
 D CUSTCARD(LKH)
 ;
 W "<tr><td colspan=""6"">&nbsp;</td></tr>",!
 ;
 D BUTTONS
 ;
 D LINE
 ;
 W "</table>",!
 W "</div>",!
 ;
 W "<br />",!
 W "<div>",!
 D LIST
 W "</div>",!
 D CLCSV^W4EX
 Q
 ;
 ;
LIST ;
 D
 .I $$HB,'$$HI D:$$^W4LKH!$$NEWMLY^W3PRM  D INVOICESLIST("ALL") Q
 ..Q:$G(PRINT)
 ..N VD S VD=$G(%ARG("VD"))
 ..Q:$$HBZ(VD)
 ..S %ARG("VD")="TM"
 ..N TMHB S TMHB=1
 ..D INVOICESLIST("TM") ; -----TM LIST
 ..S %ARG("VD")=VD
 .
 .I $$HI D INVOICESLIST("HI") Q
 .
 .I $$CB D RECEIPTLIST D:'$G(PRINT)  Q
 ..W "<br /><br />",!
 ..D INVOICESLIST("ALL")
 .
 .I $$HMK D INVOICESLIST("HMK") Q
 .
 .I $$TM D INVOICESLIST("TM") Q
 .
 .I $$HZ D ORDLIST("HZ") Q
 .
 .I $$HZMH D ORDLIST("HZMH") Q
 .
 .I $$HZMHC D PRCOFRCLIST Q
 .
 .I $$SRV D SRVCARDLIST Q
 .
 Q
 ;
 ;
WEX(VL,PR)
 Q:$G(TMHB)
 D ^W4EX(VL,$G(PR))
 Q
 ;
WEXR ;
 D WEXR^W4EX
 Q
 ;
CUSTCARD(LKH) ;
 N W4HSB
 I $G(%ARG("NOM")),$G(%ARG("NEWCUST"))=""!($G(%ARG("NEWCUST"))=0) D
 .N NOM S NOM=$G(%ARG("NOM"))
 .D ^W4HSBGET(NOM,$$CODDOC)
 ;
 W "<br><span style=""color:red;text-align:center"">"_$$^%W1DICT("FLDMUSTASTR")_"</span><br><br>",!
 W "<table width=""85%"" cellpadding=""3"" border=""0"" style=""padding:10px;border:ridge;2px"" dir="""_$$^%W1DIR_""">",!
  D FIRSTLINE
  W "<tr>"
   D TDCUST
   D TDNAME
  W "</tr>",!
     ;
  W "<tr>",!
   D TDTEL
   D TDPELE
  W "</tr>",!
  ;
  W "<tr>",!
   D TDFAX
   D TDEMAIL 
  W "</tr>",!
  ;
  D TRADDR
  ;
  W "<tr>",!
   D TDHOV
   D TDDATE 
  W "</tr>",!
  ;
  I $$HZ D
  .W "<tr>"
  . D TDDOCNUM
  .W "</tr>",!
 Q
 ;
 ;
TDCUST ;
 W "<td width=""16%""> "
  W $$ZV_$$^%W1DICT("CUSTCODE")
  I $$W4LKH D
  .W "<br><span style=""font-size:"_$$^W3FSZ(8)_";color:gray"">"
  . W $$^%W1DICT("TELREC")
  .W "</span>"
 W "</td>",!
 ;
 W "  <td width=""34%"">"
  W "<input type=""text"" tabindex=""1"" id=""custcd""  "
  W "maxlength=""14"" size=""14"" value="""_LKH_""" "
  I $$VIEW W " readonly=""readonly"" "
  I '$$VIEW D
  .W " onClick=""this.select()"" onKeyUp=""ChangeCd()"" "
  .W " onChange=""Find('custcd','custcd!','LKH')"" "
  W ">",!
  I '$$VIEW D
  .W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick=""Find('custcd','custcd!','LKH')"" >",!
 W "  </td>",!
 Q
 ;
TDNAME ;
 W "  <td width=""12%"" >"_$$ZV_$$^%W1DICT("NAME")_"</td>",!
 W "  <td "_$$^%W1ALIGN_" colspan=""3"">"
  N LKHNAME S LKHNAME=$$LKH^W4L(LKH)
  I $L($G(W4HSB("LKHNAME"))) S LKHNAME=W4HSB("LKHNAME")
  I $$^W4LKHCSR,LKHNAME="",LKH=$$LKHDFLT^W4LKHCSR S LKHNAME="oncfn gewl"
  W "<input type=""text"" tabindex=""2"" id=""custnm"" "
   W $S($$W4LKH:"",1:" readonly=""readonly"" ")
   W " size=""40"" maxlength=""45"" value="""_$$H2U^%L1FRM(LKHNAME)_""">",!
 W "  </td>",!
 Q
 ;
TDTEL ;
 W " <td >"_$$^%W1DICT("TEL")_"</td>"
 W " <td >"
   D
   .N TELB S TELB=$$TELB^W4L(LKH)
   .I TELB="",$L(LKH)>6 S TELB=$TR(LKH,"! ","")
   .I $L($G(W4HSB("TEL"))) S TELB=W4HSB("TEL")
   .W "<input tabindex=""3"" id=""TELB"" type=""text"" "
   .  W $S($$W4LKH:"",1:" readonly=""readonly"" ")_" size=""11"" "
   .  W "value="""_TELB_""" >"
  W " </td>",!
  W " <td >"_$$^%W1DICT("PELE")_"</td>"
 Q
 ;
TDPELE ;
 ;;W " <td >"_$$^%W1DICT("PELE")_"</td>"
 W " <td colspan=""3"">"
  N PELE S PELE=$$PELE^W4L(LKH)
  I $L($G(W4HSB("PELE"))) S PELE=W4HSB("PELE")
  W "<input tabindex=""4"" id=""PELE"" type=""text"" "
   W $S($$W4LKH:"",1:" readonly=""readonly"" ")_" size=""11"" "
   W "value="""_PELE_""" >"
 W " </td>",!
 Q
 ;
TDFAX ;
 W " <td>"_$$^%W1DICT("FAX")_"</td>"
 W " <td>"
   W "<input tabindex=""5"" id=""FAX"" type=""text"" "
   W $S($$W4LKH:"",1:" readonly=""readonly"" ")_" size=""11"" "
   W "value="""_$$FAX^W4L(LKH)_""" >"
  W " </td>",!
 Q
 ;
TDEMAIL ;
 W " <td>"_$$^%W1DICT("EMAIL")_"</td>"
 W " <td colspan=""3"">"
  W "<input tabindex=""6"" id=""EMAIL"" type=""text"" size=""40"" value="""_$$EMAIL^W4L(LKH)_""""
  I $$W4LKH D
  .W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
  I '$$W4LKH D
  .W "readonly=""readonly"" "
  W ">"
 W " </td>",!
 Q 
 ;
 ;
TRADDR ;
 I $$W4LKH D
 .D ^W4LKADR
 ;
 I '$$W4LKH D
 .W "<tr>",!
 .W " <td>"_$$^%W1DICT("ADDR")_"</td>",!
 .W "<td colspan=""4"">",!
 .  W " <input type=""text"" onKeyUp=""NoChangeCd()"" readonly=""readonly"" size=""45"" value="""_$$H2U^%L1FRM($$KTVMM^W4L(LKH))_"""</td>",!
 .W "</td>",!
 .W "</tr>",!
 Q
 ;
TDHOV ;
 W "    <td > "_$$^%W1DICT("HOVHBC")_" </td>",!
 W "    <td dir=""LTR"" "_$$^%W1ALIGN_" >",!
 W "     <input type=""text"" style=""text-align:right;font-weight:bold"" "
  W " id=""balance"" size=""10"" readonly=""readonly"" "
  W " value="""_$S($G(LKH):$J($$CBH^W4KLOST(LKH,+$H),2,2),1:"")_""" >",!
 W "    </td>",!
 Q
 ;
TDDATE ;
 W "    <td >"_$$ZV_$$^%W1DICT("TODATE")_" </td>",!
 W "    <td colspan=""5"" id=""todate"" dir=""LTR"" "_$$^%W1ALIGN_" style=""font-weight:bold"">"
 D
 .I $$HB!$$HZ D  Q
 ..S %W1DAT("NODAY")=""
 ..N TODATE S TODATE=$ZD($H,"DD.MM.YY")
 ..I $$GET^%W1PRM("DAT") S TODATE=$$GET^%W1PRM("DAT")
 ..I TODATE<3,$G(@$$^W4GL("W3PRM")@("ENDMONTHDATE")) S TODATE=$$^%L1DC($$LM^%L1DC($H-5),1)
 ..W "&nbsp;&nbsp;"
 ..D
 ...N DT,DT0,DTLAST,DTCUR,MIN,PLUS
 ...S DTCUR=$$^%L1DC(TODATE,3)
 ...S (MIN,PLUS)=60
 ...S DT0=DTCUR-MIN
 ...S DTLAST=DTCUR+PLUS
 ...N LASTDT S LASTDT=$$LASTDT
 ...I '$G(@$$^W4PRM@("NOCHKDAT")),'$D(W4SPK) D
 ....I '$$W4LKH,'$$HZ D ^W4IN S PLUS=P1DZ
 ....I DT0<LASTDT S MIN=LASTDT
 ....I DTLAST<DT0 S PLUS=DT0
 ...D SELDAT(TODATE,MIN,PLUS)
 .
 .I $$CB!$$SRV!$$TM!$$HZMH!$$HMK!$$HMKI D
 ..D ^W4IN W $ZD($S($$W4LKH:$H,1:P1DZ),"DD.MM.YY")
 W " </td>",!
 Q
 ;
TDDOCNUM ;
 W "<td width=""16%"">"_$$^%W1DICT("DOCNUMBER")_"</td>"
  W "<td width=""34%"" >"
   W "<input type=""text"" size=""11"" maxlength=""8"" id=""docnumber"" "
   W " onClick=""this.select()"" >"
 W "</td>"
 Q
 ;
BUTTONS ;
 W "<tr>",!
 W " <td colspan=""6"" align=""center"">",!
 W "  <table "
 W ">",!
  S FS=11
  I $$^W4LKHCSR S FS=9
  W "<tr>",!
   W " <td>"
   I $$VIEWONLY!$$DENIED W "&nbsp;" G ETD
   I $$^W4ISCDLK($G(LKH)),$$CUSTCLOSED(LKH)!$$VIEW W "&nbsp;" G ETD
   S W4BUTTON("CLICK")=""
   I $$HB D
   .D ROUNDBUT^%W1JS("newinvoice",$$^%W1DICT("NEWINVOICE"),"NewInvoice()","color:green","wh,22,,,"_FS)
   I $$HMK!$$HMKI D
   .D ROUNDBUT^%W1JS("newinvoice",$$^%W1DICT("NEWINVOICERECEIPT"),"NewInvoice()","color:green","wh,22,,,"_FS)
   I $$CB D
        .D ROUNDBUT^%W1JS("newrcp",$$^%W1DICT("NEWRECEIPT"),"NewReceipt()","color:green","wh,22,,,"_FS)
   I '$$CB,$$SRV D
        .D ROUNDBUT^%W1JS("newsrvcard",$$^%W1DICT("NEWSERVICECARD"),"NewSrvCard()","color:green","wh,22,,,"_FS)
   I $$TM D
        .D ROUNDBUT^%W1JS("newdlvdoc",$$^%W1DICT("NEWDLVDOC"),"NewInvoice()","color:green","wh,22,,,"_FS)
   I $$HZMH D
        .D ROUNDBUT^%W1JS("newhzmh",$$^%W1DICT("NEWPRCOFR"),"NewInvoice()","color:green","wh,22,,,"_FS)
   I $$HZMHC D
        .D ROUNDBUT^%W1JS("newhzmhc",$$^%W1DICT("NEWPRCOFR"),"NewPrcOfr()","color:green","wh,22,,,"_FS)
   I $$HZ D
        .D ROUNDBUT^%W1JS("neword",$$^%W1DICT("NEWORDER"),"NewInvoice()","color:green","wh,22,,,"_FS)
ETD ;
   W " </td>",!
   ;
   I $G(%ARG("VIEW"))'=1 D
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("custrep",$$^%W1DICT("SHOWCUSTREPORT"),"ShowCustReport()","color:darkblue","wh,22")
   .W " </td>",!
   ;
   I '$$VIEW D
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("custcard",$$^%W1DICT("FULLCUSTCARD"),"ShowCustCard()","color:brown","wh,22")
   .W " </td>",!
   .;
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("custlist",$$^%W1DICT("ADVCUSTSEARCH"),"AdvCustSearch()","color:darkviolet","wh,22")
   .W " </td>",!
   .;
   .W " <td align=""center"">",!
   .      D ROUNDBUT^%W1JS("clear",$$^%W1DICT("CLEAR"),"ClearHrf()","color:blue","wh,22")
   .W " </td>",!
   .;
   .I $$^W4LKHCSR!'$$^W4LKH D
   ..W " <td align=""center"">",!
   ..      D ROUNDBUT^%W1JS("clear",$$^%W1DICT("SERKUPREPORT"),"CSRFilm()","color:blue","wh,22")
   ..W " </td>",!
   ..I $$^W4LKHCSR D
   ...W " <td align=""center"">",!
   ...      D ROUNDBUT^%W1JS("opendraw",$$^%W1DICT("OPENDRAW"),"OpenDraw()","color:brown","wh,22")
   ...W " </td>",!
   .;
   .Q:$$DENIED
   .W "  <td align=""center"">",!
   . D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   .W "  </td>",!
  W " </tr></table>",!
 W " </td>",!
 W "</tr>",!
 ;
 I '$$VIEW,$G(%ARG("DOC"))="HBW",$$GETP^%W1PRM("ELPOS") D
 .W "<tr><td colspan=""10"" style=""text-align:center;color:red;font-weight:bold"">"
 . W $$^%W1DICT("TO-ISSUE-CONC-INVOICE-GO")
 .W "</td></tr>",!
 Q
 ;
 ;
VIEW(STAM)
 I $G(%ARG("VIEW")) Q 1
 I $G(%ARG("SEND2MAIL")) Q 1
 Q 0
 ;
VIEWONLY(STAM)
 Q $$VIEWONLY^W3PRM
 ;
ARM(LK0) ;
 I LK0'["+",LK0'["^",LK0'["W" Q 1
 I LK0["W" Q 2
 Q 0
 ;
TD W "<td width=""32%"">"
 Q
 ;
FIRSTLINE ;
 W "<tr style=""color:red;font-weight:bold"">"
  W "<td colspan=""2"">"
  D
  .I $$^W4ISCDLK(LKH),$$CUSTCLOSED(LKH) D  Q
  ..W $$^%W1DICT("CUSTCLOSED")
  .W "&nbsp;"
  W "</td>",!
  W "<td colspan=""2"">"
  D
  .I $$^W4ISCDLK($G(LKH)),$L($$CMNT^W4L(LKH)) D  Q
  ..W $$H2U^%L1FRM($$CMNT^W4L(LKH))
  .W "&nbsp;"
  W "</td>",!
 W "</tr>",!
 Q
 ;
LINE ;
 W "<tr>"
  W "<td>"
  W "</td>",!
  W "<td>"
  W "</td>",!
 W "</tr>",!
 Q
 ;
TEST(LKH) ;
 N ID S ID=""
 I LKH[";" S ID=$P(LKH,";",2),LKH=$P(LKH,";")
 S ID=$$FUNC^%UCASE(ID)
 I $E(ID)="S" Q $$TEST^W4SPDOC(LKH)
 I $$ISCODE(LKH),$L(LKH)<4 Q "SHORT"
 I $$DC^W4L(LKH) Q 1
 I $$ISCODE(LKH),'$$DC^W4L(LKH) Q 0
 Q "FIND"
 ;
ISCODE(LKH) ;
 Q $$^W4ISCDLK(LKH)
 ;
CHKDAT(PRM) ;
 N LKH,DAT D ^W4IN
 D PUT^%W3DEB("W4LHB","PRM=PRM")
 ;
 S PRM=$$CLEAR^%L1FRM($$CNWEB^%L1FRM(PRM))
 S LKH=$P(PRM,";",1)
 S DATF=$P(PRM,";",2)
 S P1LHBS=$P(PRM,";",3)
 S P1LHBM=$P(PRM,";",4)
 ;
 S DF=$$^%L1DC(DATF,3)
 ;
 D IFNEWLKH(LKH) ; -- WRITE CUST DETAILS TO ^LKH ( LKH - ALL CUST DETAILS )
 ;
 S LKH=$$^W4CDLK($P(LKH,"~"))
 ;
 Q $$CHKDT(DF)
 ;
 ;
CHKDT(DF) ;
 D ^W4IN
 I '$$W4LKH,DF>P1DZ Q "INVOICEISSUENOTLATER;"_$ZD(P1DZ,"DD.MM.YY")
 I '$$W4LKH,DF=P1DZ,'$D(@$$^W4GL("Z")@(P1DZ)),'$G(P1LHBS),'$G(P1LHBM) Q "AFTERZONLY;"_DATF
 ;
 N H,D,LK0,LK
 N CODDOC S CODDOC=$$CODDOC
 D KLIN
 S H=$O(@KLIN@(CODDOC,999999),-1) I 'H Q 1
 ;
 D ^W4HSBGET(H,CODDOC) I '$D(W4HSB("DT")) Q 1
 ;
 S D=$G(W4HSB("DT"))
 ;;I $G(@$$^W4PRM@("BDDTH")),DF<D Q "LASTINVOICEWAS;"_H_";"_D
 I DF<D Q "LASTINVOICEWAS;"_H_";"_$ZD(D,"DD.MM.YY")
 ;
 Q 1
 ;
 ;
HB(STAM) ;
 I '$$CB,'$$SRV,'$$HMK,'$$TM,'$$HZMH,'$$HZ,'$$IPY Q 1
 Q 0
 ;
CB(STAM) ;
 I $G(%ARG("CB")) Q 1
 Q 0
 ;
SRV(STAM) ;
 I $G(%ARG("SRVC")) Q 1
 Q 0
 ;
HI(STAM) ;
 I $G(%ARG("VD"))'="" Q $G(%ARG("VD"))="HI"
 Q $$GETP^%W1PRM("VD")="HI"
 ;
HIDOC(CODDOC) ;
 Q $G(CODDOC)="HI"
 ;
HBHI(NOM) ;
 Q $G(W4HSB("HBHI"))
 ;
HMK(STAM)
 I $G(%ARG("VD"))="HMK" Q 1
 I $$GET^%W1PRM("VD")="HMK" Q 1
 I $G(%ARG("VD"))="HMKI" Q 2
 I $$GET^%W1PRM("VD")="HMKI" Q 2
 Q 0
 ;
HMKI(STAM)
 I $$HMK=2 Q 1
 Q 0
 ;
TM(STAM)
 I $G(%ARG("VD"))="TM" Q 1
 I $$GET^%W1PRM("VD")="TM" Q 1
 Q 0
 ;
HZ(STAM)
 I $G(%ARG("VD"))="HZ" Q 1
 I $$GETP^%W1PRM("VD")="HZ" Q 1
 Q 0
 ;
HZMH(STAM)
 I $G(%ARG("VD"))="HZMH" Q 1
 I $$GETP^%W1PRM("VD")="HZMH" Q 1
 Q 0
 ;
HZMHC(STAM)
 I $G(%ARG("VD"))="HZMHC" Q 1
 I $$GETP^%W1PRM("VD")="HZMHC" Q 1
 Q 0
 ;
IPY(STAM)
 I $G(%ARG("VD"))="IPY" Q 1
 I $$GETP^%W1PRM("VD")="IPY" Q 1
 Q 0
 ;
 ;
INVOICESLIST(CODDOC,PRINT) ;
 D INVLISTKOT
 ;
 ;------------------------ BODY ----------------------------------
 N STOT,SHSB,SITRA,SSHUL,N,LK,LK0,A
 S (STOT,STOPAY,SHSB,SSHB,SSHUL,SITRA)=0
 N KLIN D KLIN
 N GLHB S GLHB=$$^W4GL("P1LHB")
 ;
 I $$^W4ISCDLK($G(LKH)),$$HB,'$$HI,'$$LKHMKDFLT,$$HBNOW^W4L(LKH),$G(@$$^W4PRM("NOVWIMD")) D  Q
 .W "</table>",!
 .W "<script>",!
 . W "MsgA(""NOSHOWCUSTIMD"")",!
 .W "</script>",!
 ;
 I $$^W4ISCDLK($G(LKH)),'$$LKHMKDFLT D
 .I CODDOC="ALL" D SHOWALL(LKH) Q
 .S N="" F  S N=$O(@KLIN@(CODDOC,N),-1) Q:N=""  D LINEINVC(N,LKH,CODDOC,$G(PRINT))
 ;
 I '$$^W4ISCDLK($G(LKH))!$$LKHMKDFLT D
 .N II,MAX
 .S MAX=$$SHOWLAST
 .I $G(PRINT)!($$SHOWKIND>1)!$G(%ARG("OPNINV")) S MAX=99999999
 .I $G(%ARG("OPNINV")),'$$CB D
 ..S MAX=$S($G(%ARG("COLMAX")):%ARG("COLMAX"),1:999999)
 .;;W "CODDOC="_CODDOC,!
 .I CODDOC="ALL" D SHOWALL("",MAX) Q
 .N ENDCYC S ENDCYC=0
 .S N="" F II=1:1 S N=$O(@KLIN@(CODDOC,N),-1) Q:N=""  D LINEINVC(N,"",CODDOC,$G(PRINT)) Q:ENDCYC
 ;
INVCTB1 ;------------- TOTALS --------------------
 I $G(%ARG("OPNINV"))!$$^W4ISCDLK($G(LKH))!(SHOWKIND=2) D
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .W "<td>&nbsp;</td>",!
 .W "<td>&nbsp;</td>",!
 .I '$G(PRINT) W "<td>&nbsp;</td>",!
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_SHSB_"</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT)_"</td>",!
 .I $$HMK!$$TM W "</tr>",! Q
 .I '$$HI W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOPAY)_"</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(SSHUL)_"</td>",!
 .I '$G(PRINT) W "<td>&nbsp;</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT-SSHUL)_"</td>",!
 .I $$HI D
 ..I '$G(PRINT) W "<td>&nbsp;</td>",!
 ..W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(SSHB)_"</td>",!
 .W "</tr>",!
 ;
INVCTBEND ;
 W "</table>",!
 W "<table id=""dlvfoot"" style=""visibility:hidden"">",!
 D LINE,LINE
 W "</table>",!
 Q
 ;
 ;
INVLISTKOT ;
 N INVLIST
 N KW S KW="INVOICESLIST"
 S INVLIST=$$^%W1DICT(KW)
 I $$HMK S KW="INVCRCPLIST"
 I $$TM S KW="DLVDOCLIST"
 I $G(TMHB) S KW="DLVDOCLISTWITHOUTINVOICE"
 I $$HZ S KW="ORDLIST"
 I $$HBZ(CODDOC) S KW="DEBETINVOICESLIST"
 I $$HI S KW="DEALINVOICESLIST"
 S INVLIST=$$^%W1DICT(KW)
 ;
 S WD="30%"
 ;
 I $$^W4ISCDLK($G(LKH)) D
 .N LKHLKH1 S LKHLKH1=LKH_"<>"_$$LKH^W4L(LKH)
 .S INVLIST=$$^%W1DICT("CUSTOMERINVOICESLIST",LKHLKH1)
 .I $$HMK S INVLIST=$$^%W1DICT("CUSTINVCRCPLIST",LKHLKH1)
 .I $$TM S INVLIST=$$^%W1DICT("CUSTDLVDOCLIST",LKHLKH1)
 .I $G(TMHB) S INVLIST=$$^%W1DICT("CUSTDLVDOCLISTWITHOUTINVOICE",LKHLKH1)
 .I $$HZ S INVLIST=$$^%W1DICT("CUSTORDLIST",LKHLKH1)
 .;I $$HZMH S INVLIST=$$^%W1DICT("CUSTPRCOFRLIST",LKHLKH1)
 .I $$HI S INVLIST=$$^%W1DICT("CUSTDEALINVOICESLIST",LKHLKH1)
 .S WD="16%"
 ;
 I $G(TMHB) D  G INVCTB
 .W "<div id=""dlvdochd"" dir="""_$$^%W1DIR_""" style=""color:black;font-size:"_$$^W3FSZ(14)_""" >"
 .W INVLIST
 .W "</div>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" dir="""_$$^%W1DIR_""" ",!
  I $G(PRINT) D PRINTSIZE
 W ">",!
 W "<tr>"
 W " <td width="""_WD_""">"
  I '$$CB D GROUPS
 W " </td>",!
 W "<td width=""2%"">&nbsp;</td>",!
 W " <td"
 W "  style=""color:black;font-size:"_$$^W3FSZ(14)
 W """>"_INVLIST_"</td>"
 W " <td width=""2%"">&nbsp;</td>",!
 ;
 D PRNEX
 ;
 W "</tr>",!
 W "</table>",!
 ;
 I '$$CB D RADIOSHOW
 ;
 S INVC=$G(%ARG("INVC"))
 S BORDER="border:solid gray 1px"
 ;
 I $$HMK!$$TM G INVCTB
 ;
 D INVCHK ; ---- CHECK BOXES
 ;
INVCTB ;
 D INVCHD ; ---- KOTERET
 Q
 ;
 ;
INVCHK ;
 N PRINT S PRINT=$G(%ARG("PRINT"))
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" "
  I $G(PRINT) D PRINTSIZE
 W ">",!
   W "<tr>",!
   ;
   I $$HI G INVCHK1
   ;
   D
    .W " <td style=""border:solid gray 1px"" >",!
    . W " "_$$^%W1DICT("AUTOINVOICES")_" "
    . W "<input type=""checkbox"" id=""autoinvc"" "
    .  W $S($$INVCAU(INVC):" checked=""checked"" ",1:"")
    .  W " onClick=""ShowRed()"" "
    . W "/>"
    .W " </td>",!
    .W "<td>&nbsp;</td>",!
    ;
   W " <td style=""background-color:lightblue;"_BORDER_""" >",!
    W " "_$S($$W4LKH:$$^%W1DICT("SERVICEINVOICES"),1:$$^%W1DICT("ARMINVOICES"))_" "
    W "<input type=""checkbox"" id=""arminvc"" "
      W $S($$INVCARM(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W "</td>",!
   ;
   I $$W4LKH!$$NEWMLY^W3PRM D
   .W "<td>&nbsp;</td>",!
   .W " <td style=""background-color:lightyellow;"_BORDER_""" >",!
   . W " "_$$^%W1DICT("ITEMINVOICES")_" "
   . W "<input type=""checkbox"" id=""iteminvc"" "
   .  W $S($$INVCIT(INVC):" checked=""checked"" ",1:"")
   .  W " onClick=""ShowRed()"" "
   . W " />"
   .W " </td>",!
   ;
   W "<td>&nbsp;</td>",!
   W " <td style=""background-color:pink;"_BORDER_""" >",!
    W " "_$$^%W1DICT("DEBETINVOICES")_" "
    W "<input type=""checkbox"" id=""debetinvc"" "
      W $S($$INVCDEB(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W " </td>",!
   ;
   W "<td>&nbsp;</td>",!
   W " <td style=""background-color:lightgreen;"_BORDER_""" >",!
    W " "_$$^%W1DICT("DEALINVOICES")_" "
    W "<input type=""checkbox"" id=""dealinvc"" "
      W $S($$INVCHI(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W " </td>",!
   ;
INVCHK1 ;
   W "<td>&nbsp;</td>",!
   W "<td>"
   W $$^%W1DICT("SHOWOPENINVOICESONLY")
   W "<input type=""checkbox"" id=""openinv"""
     W $S($G(%ARG("OPNINV")):" checked='checked'",1:"")
     W " onClick=""ClickOpenInvoices()"""
     W " onClick=""ShowRed()"" "
   W " >",!
   W "</td>",!
   ;
   I $$HI D
   .W "<td>"
   .W $$^%W1DICT("SHOWOPENDEALSONLY")
   .W "<input type=""checkbox"" id=""opendeal"""
   .  W $S($G(%ARG("OPNDEAL")):" checked='checked'",1:"")
   .  W " onClick=""ClickOpenDeals()"""
   .  W " onClick=""ShowRed()"" "
   .W " >",!
   .W "</td>",!
   ;
   W "<td>&nbsp;</td>"
   D SHOWBUT("ShowInvc")
   W " </td>",!
   D TDMAIL
  W "</tr>",!
  ;
 W "</table>",!
 Q
 ;
 ;
SHOWBUT(ID) ;
 W " <td>",!
  I '$G(PRINT) D
  .;;D ROUNDBUT^%W1JS(ID,$$^%W1DICT("SHOW"),"ShowInvoices()","color:green","wh,22")
  .D ^W4BUTTON(ID,$$^%W1DICT("SHOW"),"ShowInvoices()","color:green")
  W " </td>",!
 Q
 ;
INVCHD ;
 N WDT,ID S WDT=98
 I $$HMK!$$TM S WDT=70
 S ID="listinvoices"
 I $G(TMHB) S ID="listdlvdoc"
 W "<table id="""_ID_""" border=""1""  width="""_WDT_"%"" cellspacing=""0"" dir="""_$$^%W1DIR_""" "
  I $G(PRINT) D PRINTSIZE
 W ">",!
 W "  <tr>",!
 W "   <th>",!
 S KW=$S($$HMK:"INVCRCP",$$TM:"DELIVERYDOC",1:"INVOICE")
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 W "   <th>",!
 S KW="TODATE"
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 I '$G(PRINT) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("ISSUETIME")
 .W "   </th>",!
 W "   <th>",!
 S KW="CUSTOMNUMBER"
 W "    "_$$^%W1DICT(KW)
  D WEX(KW,"DICT")
 W "   </th>",!
 W "   <th>",!
 S KW="CUSTOMNAME"
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 W "   <th>",!
 S KW="SUM"
 W "    "_$$^%W1DICT(KW)
 W "   </th>",!
  D WEX(KW,"DICT")
 ;
 I '$$HMK,'$$TM D
 .I '$$HI D
 ..W "   <th>",!
 ..S KW="TOPAY"
 ..W "    "_$$^%W1DICT(KW)
 ..W "   </th>",!
 .. D WEX(KW,"DICT")
 .W "   <th>",!
 .S KW="PAID"
 .W "    "_$$^%W1DICT(KW)
 .W "   </th>",!
 . D WEX(KW,"DICT")
 .I '$G(PRINT) D
 ..W "   <th>",!
 ..W "    "_$$^%W1DICT("RECEIPT")
 ..W "   </th>",!
 .W "   <th>",!
 .S KW="BALANCE"
 .W "    "_$$^%W1DICT(KW)
 . D WEX(KW,"DICT")
 .W "   </th>",!
 .I $$HI D
 ..I '$G(PRINT) D
 ...W "   <th>",!
 ...W "    "_$$^%W1DICT("INVOICETX")
 ...W "   </th>",!
 ..W "   <th>",!
 ..S KW="INVOICEBALANCE"
 ..W "    "_$$^%W1DICT(KW)
 ..W "   </th>",!
 .. D WEX(KW,"DICT")
 ..
 W "  </tr>",!
 D WEXR
 Q
 ;
 ;
PRNEX ;
 W " <td>"
 N PRINT S PRINT=$G(%ARG("PRINT"))
 I '$G(PRINT) D
 .D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"PrintInvoices()","color:blue","wh,22")
 W " </td>",!
 W "<td width=""2%"">&nbsp;</td>"
 I '$G(PRINT) W "<td id=""excel"">&nbsp;</td>"
 Q
 ;
SHOWLAST(STAM) ;
 N LAST
 I $G(%ARG("COLMAX")) Q %ARG("COLMAX")
 S LAST=$G(@$$^W4PRM@("SHOWLAST"))
 ;
 I LAST<10 S LAST=100
 Q LAST
 ;
 ;
CHECKED(SK,I) ;
 I SK=I Q " checked=""checked"" "
 Q ""
 ;
RADIOSHOW ;
 S PRINT=$G(%ARG("PRINT"))
 W "<table dir="""_$$^%W1DIR_""" border=""0"" width="""_$G(WDTB,90)_"%"" ",!
  I $G(PRINT) D PRINTSIZE
 W ">",!
  W "<tr>",!
   W "<td>",!
    I '$$^W4ISCDLK($G(LKH))!$$LKHMKDFLT W $$^%W1DICT("BYLASTMOVEMENTS")_"&nbsp;"
    I $$^W4ISCDLK($G(LKH)),'$$LKHMKDFLT W $$^%W1DICT("SHOWALLMOVEMENTS")_"&nbsp;"
    W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,1)_" "_ONCLICKSHOW_" />"
   W "</td>",!
   W "<td>",!
    W $$^%W1DICT("BYDATERANGE")_"&nbsp;"
    W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,2)_" "_ONCLICKSHOW_"/>"
   W "</td>",!
   W "<td>",!
    W $$^%W1DICT("BYDOCNUMBER")_"&nbsp;"
    W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,3)_" "_ONCLICKSHOW_"/>"
   W "</td>",!
   ;
   S CODD=$$CODDOC
   I CODD="H"!(CODD="TZ")!(CODD="CB")!(CODD="HMK")!(CODD="HI")!(CODD="IPY") D
   .W "<td>",!
   . W $$^%W1DICT("BYCONTENT")_"&nbsp;"
   . W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,4)_" "_ONCLICKSHOW_"/>"
   .W "</td>",!
   .
   .W "<td>",!
   . W $$^%W1DICT("BYSUM")_"&nbsp;"
   . W "<input type=""radio"" name=""showkind"" "_$$CHECKED(SHOWKIND,5)_" "_ONCLICKSHOW_"/>"
   .W "</td>",!
   ;
   W "<td id=""tdprm"" >",!
    W "<table id=""tblprm"" border=""0"" width=""100%"">",!
     W "<tr id=""tblprmtr""><td>",!
      W $$SHOWPRM(SHOWKIND_";"_$$SHOWLAST_";"_$G(%ARG("CODE"))_";"_$G(%ARG("MEDAT"))_";"_$G(%ARG("ADDAT"))_";"_$G(%ARG("NOMDOC"))_";"_$G(%ARG("OPNINV"))_";"_$$CONT_";"_$G(%ARG("MESUM"))_";"_$G(%ARG("ADSUM")))
     W "</td></tr>",!
    W "</table>",!
   W "</td>",!
   I '$$HB,'$G(PRINT) D
   .D SHOWBUT("Show")
   .D TDMAIL
  W "</tr>",!
  ;
  I $$PRKUP?1N D
  .W "<tr style=""font-weight:bold"" >"
  . W "<td>"
  .   I '$$PRKUP W $$^%W1DICT("MLYITEMSDOCS")
  .   I $$PRKUP W $$^%W1DICT("CSRITEMSDOCS")
  .   W "&nbsp;"
  .   W "<input type=""radio"" id=""typedocs"" name=""showdocs"" "
  .    I '$$ALLDOCS W " checked=""checked"" "
  .    W " onClick=""ShowInvoices()"" "
  .   W " />"
  .   W "</td>"
  .   W "<td>"
  .   W $$^%W1DICT("ALLDOCS")
  .   W "&nbsp;"
  .   W "<input type=""radio"" id=""alldocs"" name=""showdocs"" "
  .    I $$ALLDOCS W " checked=""checked"" "
  .    W " onClick=""ShowInvoices()"" "
  .   W " />"
  . W "</td>"
  .W "</tr>",!
 ;
 W "</table>",!
 Q
 ;
 ;
SHOWPRM(PRM)
 N SHOWKIND,MEDAT,ADDAT,NOMDOC,LKH,CONTENT,MESUM,ADSUM
 S SHOWKIND=$P(PRM,";")
 S COLMAX=$P(PRM,";",2)
 S LKH=$P(PRM,";",3)
 S MEDAT=$P(PRM,";",4)
 S ADDAT=$P(PRM,";",5)
 S NOMDOC=$P(PRM,";",6)
 S OPNINV=$P(PRM,";",7)
 S CONTENT=$P(PRM,";",8)
 S MESUM=$P(PRM,";",9)
 S ADSUM=$P(PRM,";",10)
 N A
 I SHOWKIND=1 S A=$$LASTPRM(COLMAX) G SHOWPRME
 I SHOWKIND=2 S A=$$MEADDAT(MEDAT,ADDAT,SHOWKIND) G SHOWPRME
 I SHOWKIND=3 S A=$$NOMDOCPRM(NOMDOC,SHOWKIND) G SHOWPRME
 I SHOWKIND=4 S A=$$BYCONTENT G SHOWPRME
 I SHOWKIND=5 S A=$$BYSUM(MESUM,ADSUM,SHOWKIND) G SHOWPRME
 ;;Q "<td>&nbsp;</td>"
 Q "&nbsp;"
 ;
SHOWPRME Q "<table dir="""_$$^%W1DIR_""" width=""100%""><tr>"_A_"</tr></table>"
 ;
 ;
LASTPRM(MAX)
 I $$^W4ISCDLK($G(LKH)) Q "<td>&nbsp;</td>"
 I '$$^W4ISCDLK($G(LKH)),$G(SPK) Q "<td>&nbsp;</td>"
 N ST S ST="<td id=""tdcolmax"" >"
 S ST=ST_$$^%W1DICT("SHOW")_"&nbsp;"
 S ST=ST_"<input type=""text"" id=""colmax"" size=""1"" maxlength=""4"" value="""_MAX_""" onClick=""ShowRed();this.select()"" />"
 S ST=ST_"&nbsp;"_$$^%W1DICT("LASTMOVEMENTS")
 S ST=ST_"</td>"
 Q ST
 ;
LASTPRMCB(MAX)
 N ST S ST="<td>"
 S ST=ST_$$^%W1DICT("SHOW")_"&nbsp;"
 S ST=ST_"<input type=""text"" id=""colmaxcb"" size=""1"" maxlength=""4"" value="""_MAX_""" />"
 S ST=ST_"&nbsp;"_$$^%W1DICT("LASTMOVEMENTS")
 S ST=ST_"</td>"
 Q ST
 ;
MEADDAT(MEDAT,ADDAT,SHOWKIND) ;
 S SHOWKIND=$G(SHOWKIND)
 N ST
 S ST=""
   I $G(SHOWKIND) S ST=ST_"<td width=""2%"">&nbsp;</td>"
   S ST=ST_"<td id=""ASKMEDAT"" "_$$HIDDEN(SHOWKIND,2)_" >"_$$^%W1DICT("MEDAT")_"</td>"
   S ST=ST_"<td dir=""LTR"" "_$$^%W1ALIGN_" id=""VMEDAT"" "_$$HIDDEN(SHOWKIND,2)_">"
   I '$G(PRINT) D
   .S ST=ST_$$STDT^%W1DAT("MEDAT","",MEDAT)
   I $G(PRINT) D
   .S ST=ST_MEDAT
   S ST=ST_"</td>"
   S ST=ST_"<td width=""2%"">&nbsp;</td>"
   S ST=ST_"<td id=""ASKADDAT"" "_$$HIDDEN(SHOWKIND,2)_" >"_$$^%W1DICT("ADDAT")_"</td>"
   S ST=ST_"<td dir=""LTR"" id=""VADDAT"" "_$$^%W1ALIGN_$$HIDDEN(SHOWKIND,2)_">"
   I '$G(PRINT) D
   .S ST=ST_$$STDT^%W1DAT("ADDAT","",ADDAT)
   I $G(PRINT) D
   .S ST=ST_ADDAT
   S ST=ST_"</td>"
 Q ST
 ;
NOMDOCPRM(NOMDOC,SHOWKIND) ;
 N ST
  S ST="<td id=""asknomdoc"" "_$$HIDDEN(SHOWKIND,3)_" >"_$$^%W1DICT("DOCNUMBER")_"</td>"
  S ST=ST_"<td id=""vnomdoc"" "_$$HIDDEN(SHOWKIND,3)_">"
  S ST=ST_"<input type=""text"" id=""nomdoc"" size=""6"" maxlength=""7"" value="""_NOMDOC_""" onClick=""this.select()"" />"
  S ST=ST_"</td>"
 Q ST
 ;
BYCONTENT(STAM) ;
 N ST
  S ST="<td id=""askcont"" "_$$HIDDEN(SHOWKIND,4)_" >"_$$^%W1DICT("CONTENT")_"</td>"
  S ST=ST_"<td id=""tdcont"" "_$$HIDDEN(SHOWKIND,4)_">"
  S ST=ST_"<input type=""text"" id=""content"" size=""20"" maxlength=""20"" value="""_$$H2U^%L1FRM($$CONT)_"""/>"
  S ST=ST_"</td>"
 Q ST
 ;
BYSUM(MESUM,ADSUM,SHOWKIND) ;
 S SHOWKIND=$G(SHOWKIND)
 N ST
 S ST=""
   I $G(SHOWKIND) S ST=ST_"<td width=""2%"">&nbsp;</td>"
   S ST=ST_"<td id=""ASKMESUM"" "_$$HIDDEN(SHOWKIND,5)_" >"_$$^%W1DICT("FROMSUM")_"</td>"
   S ST=ST_"<td dir=""LTR"" "_$$^%W1ALIGN_" "_$$HIDDEN(SHOWKIND,5)_">"
   I '$G(PRINT) D
   .S ST=ST_"<input type=""text"" id=""MESUM"" size=""6"" maxlength=""8"" value="""_MESUM_""" onClick=""this.select()"" />"
   I $G(PRINT) D
   .S ST=ST_MESUM
   S ST=ST_"</td>"
   S ST=ST_"<td width=""2%"">&nbsp;</td>"
   S ST=ST_"<td id=""ASKADSUM"" "_$$HIDDEN(SHOWKIND,5)_" >"_$$^%W1DICT("UNTILSUM")_"</td>"
   S ST=ST_"<td dir=""LTR"" "_$$^%W1ALIGN_$$HIDDEN(SHOWKIND,5)_">"
   ;
   I '$G(PRINT) D
   .S ST=ST_"<input type=""text"" id=""ADSUM"" size=""6"" maxlength=""8"" value="""_ADSUM_""" onClick=""this.select()"" />"
   I $G(PRINT) D
   .S ST=ST_ADSUM
   ; 
   S ST=ST_"</td>"
 Q ST
 ;
 ;
SHOWKIND(STAM) ;
 Q $G(%ARG("SHOWKIND"))
 ;
HIDDEN(SK,I) ;
 I $G(SK)="" Q ""
 I $G(SK)=$G(I) Q " style=""visibility:visible"" "
 Q " style=""visibility:hidden"" "
 ;
LK(LK0)
 N LK
 S LK=LK0
 I LK0["+" S LK=$P(LK0,"+")
 I LK0["^" S LK=$P(LK0,"^")
 I LK0["W" S LK=$P(LK0,"W")
 Q LK
 ;
 ;
LINEINVC(N,LKH,CODDOC,PRINT) ;
 ;
 I $$DENIED Q
 ;
 D PUT^%W3DEB("W4LHB-LINEINVC","N=N&LKH=LKH&CODDOC=CODDOC&PRINT=PRINT")
 N LK0,LK S INVC=$G(%ARG("INVC"))
 S N=$$SPA^%L1FRM(N)
 I $E(N)="[" S N=$TR(N,"[] ","") ; -- H-I
 S LK0=$G(@KLIN@(CODDOC,+N)) Q:LK0="IN"
 S LK=$$LK(LK0)
 ;
 I LKH,$TR(LK,"-","")'=$TR(LKH,"-","") Q
 ;
 I '$$LKH,$G(%ARG("GROUP")),$$SUGL^W4L(LK)'=%ARG("GROUP") Q
 ;
 D ^W4HSBGET(+N,CODDOC) Q:$D(W4HSB)<10
 ;
 N NDOC S NDOC=$P(LK0,"W",2)
 I $G(TMHB),'NDOC Q
 I $G(TMHB),$D(@$$^W4GL("W4DOC")@(NDOC,"TM","HB")) Q
 I $G(TMHB),$$DEL^W4DOCVW("TM",NDOC) Q
 I $G(TMHB) G LI2
 ;
 I '$$CB,$$SHOWKIND=2,$G(W4HSB("DT"))<$$^%L1DC($G(%ARG("MEDAT")),3)!($G(W4HSB("DT"))>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 I '$$CB,$$SHOWKIND=3,$G(%ARG("NOMDOC"))'=+N Q
 I '$$CB,$$SHOWKIND=4,$$CONT'="",'$$FINDCONT(CODDOC,N,$$CONT) Q
 I '$$CB,$$SHOWKIND=5,$G(%ARG("MESUM"))!$G(%ARG("ADSUM")),$G(W4HSB("TOT"))<$G(%ARG("MESUM"))!($G(W4HSB("TOT"))>$G(%ARG("ADSUM"))) Q
 I $$TM G LI1
 ;
 I $$HBZ(CODDOC),$$INVCDEB(INVC) G LI1
 I $$HBZ(CODDOC),'$$INVCDEB(INVC) Q
 ;
 I $$ARM(LK0)=1,'$$INVCARM(INVC),'$$HIDOC(CODDOC) Q
 I $$ARM(LK0)=2,'$$INVCARM(INVC) Q
 ;
 I INVC=2,CODDOC'="H" Q
 I INVC=16,'$$HIDOC(CODDOC) Q
 I $$HIDOC(CODDOC),'$$INVCHI(INVC) Q
 I $$HIDOC(CODDOC),$$INVCHI(INVC) G LI1
 ;
 I $$HMK G LI1
 S ^D=10
 I '$$ARM(LK0),'$$INVCAU(INVC) Q
 ;
LI1 N ITRA,ITRAHB S ITRA=""
 S ^D=11
 S ITRA=$G(W4HSB("TOT"))-$G(W4HSB("PAID"))
 S ITRAHB=$G(W4HSB("TOT"))-$G(W4HSB("HBHITOT"))
 ;
 I $G(%ARG("OPNINV")),+ITRA=0,'$$HMK,'$$TM Q
 I $G(%ARG("OPNINV")),$$^W4CLOSED(CODDOC,+N) Q
 I $G(%ARG("OPNDEAL")),+ITRAHB=0,'$$HMK,'$$TM Q
 I $G(MAX),SHSB+1>MAX S ENDCYC=1 Q
 ;
LI2 ;
 I '$$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=$G(W4HSB("PRKUP")) Q
 ;
 S II=$G(II)+1
 S SHSB=$G(SHSB)+1
 ;
 W "<tr "
 W " style="""
 D
 .I $$HBZ(CODDOC)!$$DEL^W4DOCVW(CODDOC,NDOC) W "background-color:pink" S STYLE=1 Q
 .I $$HIDOC(CODDOC) W "background-color:lightgreen" Q
 .I $$ARM(LK0)=1 W "background-color:lightblue" Q
 .I $$ARM(LK0)=2 W "background-color:lightyellow" Q
 ;
 I $$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=W4HSB("PRKUP") D
 .W ";color:grey"
 ;
 W """ "
 W ">"
 ;
 W " <td dir=""LTR"" "
 N LHBCUR
 S LHBCUR=$$GET^%W1PRM("LHBCUR")
 S LHBCUR=+LHBCUR_";"_$P(LHBCUR,";",2)
 I (+N_";"_LK)=LHBCUR W " id=""curtd"" "
 W "style="""
 I (+N_";"_LK)=LHBCUR W "border:solid 2px brown;"
 I N["[-]" W "color:darkred;"
 W "text-align:center;cursor:pointer"
 W """ "
 ;
 D ONCLICKHB(CODDOC,N)
 W ">&nbsp;&nbsp;&nbsp;"_N_"</td>"
 D WEX(N)
 ;
 W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"">"
  S KW=$G(W4HSB("TODATE"))
  W "&nbsp;&nbsp;"_KW
  D WEX(KW,"D")
 W "</td>",!
 ;
 I '$G(PRINT) D
 .W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"" >"
 . W "&nbsp;&nbsp;"_W4HSB("ISSUETIME")
 .W "</td>",!
 ;
 W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"">"
  W "&nbsp;"_LK
 W "</td>",!
 D WEX(LK)
 ;
 W "<td " D ONCLICKHB(CODDOC,N) W " style=""cursor:pointer"">"
  W "&nbsp;"_$$H2U^%L1FRM(W4HSB("LKHNAME"))
  D WEX(W4HSB("LKHNAME"),"H")
 W "</td>",!
 ;
 I CODDOC="TZ",'$G(PRALL) D
 .S W4HSB("TOT")=-W4HSB("TOT"),ITRA=-ITRA
 .S W4HSB("PAID")=-W4HSB("PAID")
 ;
 N COLOR I CODDOC="TZ" S COLOR="style=""color:darkred"" "
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" " D ONCLICKHB(CODDOC,N) W "style=""cursor:pointer"" "
 W ">"
  W "&nbsp;"_$$RKVN(W4HSB("TOT"))
  D WEX(W4HSB("TOT"),"N")
 W "</td>",!
 ;
 S STOT=$G(STOT)+W4HSB("TOT")
 ;
 I $$HMK!$$TM G ELINE
 ;
 I '$$HI D
 .N TOPAY S TOPAY=$G(W4HSB("TOT"))
 .S STOPAY=$G(STOPAY)+TOPAY
 .W "<td dir=""LTR"" "_$$^%W1ALIGN
 .  I $$HBHI(N),'$$HIDOC(CODDOC) D
 .   .W " style=""cursor:pointer;background-color:lightgreen"" "
 .   .S TOPAY="[ "_$$HBHI(N)_" ]"
 .   .D SHOWHI($$HBHI(N)_"<"_N,LK)
 .  W ">&nbsp;"_$$RKVN(TOPAY)
 .  D WEX(TOPAY)
 .W "</td>",!
 ;
 S SSHUL=SSHUL+W4HSB("PAID")
 ;
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" " D ONCLICKCB(N) W " style=""cursor:pointer"""
   W ">&nbsp;"_$$RKVN(W4HSB("PAID"))
   D WEX(W4HSB("PAID"),"N")
 W "</td>",!
 ;
 I '$G(PRINT) D
 .W "<td "_$$^%W1ALIGN_" >"
 .D SHOWCB
 .W "</td>",!
 ;
 W "<td dir=""LTR"" "_$$^%W1ALIGN
 W " >"
  W "&nbsp;"_$S(ITRA'="":$$RKVN(ITRA),1:"")
  D WEX(ITRA,"N")
 W "</td>",!
 ;
 S SITRA=SITRA+ITRA
 ;
 I $$HI D
 .I '$G(PRINT) D
 ..W "<td "_$$^%W1ALIGN_" >"
 .. D SHOWHBMAS
 ..W "</td>",!
 .;
 .W "<td dir=""LTR"" "_$$^%W1ALIGN
 .N ITRAHB S ITRAHB=$G(W4HSB("TOT"))-$G(W4HSB("HBHITOT"))
 .S SSHB=SSHB+ITRAHB
 .W " >"
 . W "&nbsp;"_$S(ITRAHB'="":$$RKVN(ITRAHB),1:"")
 .W "</td>",!
 ;
ELINE W "</tr>",!
 D WEXR
 Q
 ;
 ;
RECEIPTLIST ;
 I $$DENIED Q
 ;
 N STOT,SCB S (STOT,SCB)=0
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" ",!
  I $G(PRINT) D PRINTSIZE
 W ">",!
 W " <tr>"
  W "<td width=""20%"" "_$$^%W1ALIGN_" >" D GROUPS W "</td>"
  W "<td style=""font-size:"_$$^W3FSZ(14)_";text-align:center"">"_$$^%W1DICT("RECEIPTESLIST")_"</td>"
  W "<td width=""20%"">&nbsp;</td>"
 W " </tr>",!
 W "</table>",!
 ;;W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("RECEIPTESLIST")_"</span>"
 D RADIOSHOW
 ;
 W "<table id=""listreceiptes"" border=""1""  width=""70%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("RECEIPT")
  D WEX("RECEIPT","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
  D WEX("TODATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("ISSUETIME")
  D WEX("ISSUETIME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
  D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
  D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
  D WEX("SUM","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("PAYMENTKIND")
  D WEX("PAYMENTKIND","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N KLIN S KLIN=$$^W4GL("KLIN")
 N GLHB S GLHB=$$^W4GL("P1LHB")
 ;
 N N,LK,LK0,A,ENDCYC S ENDCYC=0
 I $$^W4ISCDLK($G(LKH)) D
 .S N="",MAX=999999
 .F  S N=$O(@KLIN@("CB",N),-1) Q:N=""  D LINECB(N,LKH)
 I '$$^W4ISCDLK($G(LKH)) D
 .N MAX S MAX=$$SHOWLAST
 .S N="" F II=1:1 S N=$O(@KLIN@("CB",N),-1) Q:N=""  D LINECB(N,"") Q:ENDCYC
 ;
 I $$^W4ISCDLK($G(LKH))!(SHOWKIND=2) D
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 .D WEX("TOTAL","DICT")
 .W "<td "_$$NUM^%W1ALIGN_" ><b>"_SCB_"</b></td>",!
 . D WEX(SCB,"N")
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT)_"</td>",!
 . D WEX(STOT,"N")
 .W "<td "_$$NUM^%W1ALIGN_" >&nbsp;</td>",!
 . D WEX(" ","E")
 .W "</tr>",!
 .D WEXR
 W " </table>",!
 Q
 ;
LINECB(N,LKH) ;
 N LK
 S LK=$G(@KLIN@("CB",N))
 Q:LK="IN"
 I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 I '$$LKH,$G(%ARG("GROUP")),$$SUGL^W4L(LK)'=%ARG("GROUP") Q
 ;
 D ^W4CBGET(N) Q:$D(W4CB)<10
 ;
 I $$CB,$$SHOWKIND=2,$G(W4CB("DT"))<$$^%L1DC($G(%ARG("MEDAT")),3)!($G(W4CB("DT"))>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 I $$CB,$$SHOWKIND=3,$G(%ARG("NOMDOC"))'=+N Q
 I $$CB,$$SHOWKIND=4,$$CONT'="",'$$FINDCONT("CB",N,$$CONT) Q
 I $G(%ARG("MESUM")),W4CB("TOT")<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),W4CB("TOT")>%ARG("ADSUM") Q
 I $G(MAX),SCB+1>MAX S ENDCYC=1 Q
 S SCB=SCB+1
 ;
 W "<tr style=""cursor:pointer"
 I W4CB("TOT")<0!$$^W4DELCB(N) W ";background-color:pink"
 W """"
 W " onClick=""ShowReceipt('"_N_"','"_LK_"','ifr')"""
 W " >",!
 W " <td id=""td"_N_""" "
 ;;I (N_";"_LK)=$$GET^%W1PRM("LHBCUR") W " style=""border:solid 2px brown"""
 W ">&nbsp;&nbsp;&nbsp;"_N_"</td>"
 D WEX(N)
 W "<td>&nbsp;&nbsp;"_W4CB("TODATE")_"</td>",!
 D WEX(W4CB("TODATE"))
 ;
 W "<td>&nbsp;&nbsp;"_W4CB("ISSUETIME")_"</td>",!
 D WEX(W4CB("ISSUETIME"))
 ;
 W "<td>&nbsp;"_LK_"</td>",!
 D WEX(LK)
 ;
 W "<td>&nbsp;"_$$H2U^%L1FRM(W4CB("LKHNAME"))_"</td>",!
 D WEX(W4CB("LKHNAME"),"H")
 ;
 W "<td dir=""LTR"" "_$$^%W1ALIGN
 I $P($G(@$$^W4GL("KLF")@(LK,"CBV",N,1)),"*",7) D
 .W " style=""font-weight:bold"" "
 W ">&nbsp;"_$J(W4CB("TOT"),2,2)_"</td>",!
 D WEX(W4CB("TOT"),"N")
 S STOT=STOT+W4CB("TOT")
 ;
 N SUGTS1 S SUGTS1=$$SUGTS($G(W4CB("SUGTS")))
 W "<td>&nbsp;"_$$H2U^%L1FRM(SUGTS1)_"</td>",!
 D WEX(SUGTS1,"H")
 
 W "</tr>",!
 D WEXR
 Q
 ;
SHOWCB ;
  I '$G(W4HSB("NCB")) W "&nbsp;" Q
  ;
  W "<table width=""100%"" cellspacing=""0"" ><tr>",!
  W " <td width=""55%"">",!
  I W4HSB("NCB")'["," D
  . W " <input type=""text"" size=""4"" id=""hbcb"_N_""" readonly=""readonly"""
  . W " value="""_W4HSB("NCB")_""" >",!
  ;
  I W4HSB("NCB")["," D
  .W "<select id=""hbcb"_N_""" >"
  .N K F K=1:1:$L(W4HSB("NCB"),",") D
  ..W "<option>"_$P(W4HSB("NCB"),",",K)_"</option>",!
  .W "</select>",!
  W "</td>",!
  ;
  W "<td width=""45%"">"
   I '$G(PRINT) D
   .D ROUNDBUT^%W1JS("showcb",$$^%W1DICT("SHOW"),"ShowReceipt(GetVl('hbcb"_N_"'),'"_LK_"','ifr')","color:green","wh,22")
   .;;D TDMAIL
  W "</td>",!
  W "</tr></table>",!
  Q
  ;
  ;
SHOWHBMAS ;
  I '$G(W4HSB("HBHI")) W "&nbsp;" Q
  ;
  W "<table width=""100%"" cellspacing=""0"" ><tr>",!
  W " <td width=""55%"">",!
  I W4HSB("HBHI")'["," D
  . W " <input type=""text"" size=""4"" id=""hbhi"_N_""" readonly=""readonly"""
  . W " value="""_W4HSB("HBHI")_""" >",!
  ;
  I W4HSB("HBHI")["," D
  .W "<select id=""hbhi"_N_""" >"
  .N K F K=1:1:$L(W4HSB("HBHI"),",") D
  ..W "<option>"_$P(W4HSB("HBHI"),",",K)_"</option>",!
  .W "</select>",!
  W "</td>",!
  ;
  W "<td width=""45%"">"
   I '$G(PRINT) D
   .D ROUNDBUT^%W1JS("showcb",$$^%W1DICT("SHOW"),"ShowArmInvoice(GetVl('hbhi"_N_"'),'"_LK_"','ifr')","color:green","wh,22")
   .;;D TDMAIL
  W "</td>",!
  W "</tr></table>",!
  Q
  ;
  ;
SRVCARDLIST ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("SRVCARDLIST")_"</span>"
 D RADIOSHOW
 W "<table id=""srvcards"" border=""1""  width=""50%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SERVICECARD")
   D WEX("SERVICECARD","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
   D WEX("DATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
   D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
   D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DEVICE")
   D WEX("DEVICE","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N I,N,A,CUST,CUSTNAME,SRV,STOT
 S (SRV,STOT)=0
 N GLS S GLS=$$^W4GL("SRVC")
 N ENDCYC S ENDCYC=0
 ;
 S N="",I=0 F  S N=$O(@GLS@(N),-1) Q:N=""  D  Q:ENDCYC
 .S A=$G(^(N))
 .S CUST=$P(A,"\",2) I $$^W4ISCDLK($G(LKH)),$TR(CUST,"-","")'=$TR(LKH,"-","") Q
 .N DT S DT=$$^%L1DC($$DAT^W4LSRVW(N),3)
 .I $$SHOWKIND=2,DT<$$^%L1DC($G(%ARG("MEDAT")),3)!(DT>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 .I $$SHOWKIND=3,$G(%ARG("NOMDOC"))'=+N Q
 .I $G(MAX),SRV+1>MAX S ENDCYC=1 Q
 .S SRV=SRV+1
 .S CUSTNAME=$P(A,"\",3)
 .
 .W "<tr style=""cursor:pointer"
 .W """"
 .W " onClick=""ShowSrvCard('"_N_"')"""
 .W " >",!
 .W " <td>"
 .W " &nbsp;&nbsp;"_N
 . D WEX(N)
 .W " </td>"
 .W " <td>"
 .W $$DAT^W4LSRVW(N)
 . D WEX($$DAT^W4LSRVW(N),"D")
 .W " </td>"
 .W " <td>"
 .W $$LKH^W4LSRVW(N)
 . D WEX($$LKH^W4LSRVW(N))
 .W " </td>"
 .W " <td>"
 .W $$H2U^%L1FRM($$LKH1^W4LSRVW(N))
 . D WEX($$LKH1^W4LSRVW(N),"H")
 .W " </td>"
 .W " <td>"
 .W $$H2U^%L1FRM($$DEV^W4LSRVW(N))
 . D WEX($$DEV^W4LSRVW(N),"H")
 .W " </td>"
 .W "</tr>",!
 .D WEXR
 ;
 W " </table>",!
 Q
 ;
 ;
ORDLIST(DOC) ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr>"
 W "<td style=""color:black;font-size:"_$$^W3FSZ(14)_""">"
 W $$^%W1DICT($S(DOC="HZMH":"PRICEOFFERSLIST",$G(LKH):"CUSTORDLIST",1:"ORDLIST"))
 W "</td>",!
 D PRNEX
 W "</tr>",!
 W "</table>",!
 ;
 N MAX S MAX=$$SHOWLAST
 D RADIOSHOW
 ;
 W "<table id=""orderlist"" border=""1""  width=""98%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>"_$$^%W1DICT("NPP")_"</th>",!
   D WEX("NPP","DICT")
 W "   <th>",!
 N DOCNAME S DOCNAME=$S(DOC="HZ":"ORDER",1:"PRICEOFFER")
 W "    "_$$^%W1DICT(DOCNAME)
   D WEX(DOCNAME,"DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
   D WEX("DATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
   D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
   D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL1")
   D WEX("TEL1","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL2")
   D WEX("TEL2","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
   D WEX("SUM","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("INVOICE")
   D WEX("INVOICE","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N I,N,A,CUST,CUSTNAME
 N GLHZ S GLHZ=$S(DOC="HZ":$$^W4GL("W4ORD"),1:$$^W4GL("W4DOC"))
 N ENDCYC S ENDCYC=0
 N SHZ,STOT S (SHZ,STOT)=0
 ;
 S N="",I=0 F  S N=$O(@GLHZ@(N),-1) Q:N=""  D  Q:ENDCYC
 .N A,LK,NUMBER S A=$G(^(N)) Q:A=""
 .;
 .I DOC="HZMH",'$G(@GLHZ@(N,"HZMH")) Q
 .D ^W4HSBGET(N,DOC)
 .S NUMBER=+$G(@GLHZ@(N,"NUMBER"))
 .I DOC="HZMH" S NUMBER=$G(@GLHZ@(N,"HZMH"))
 .;
 .S LK=$G(W4HSB("LKH")) Q:LK=""
 .I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 .I '$$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=W4HSB("PRKUP") Q
 .N DT S DT=$G(W4HSB("DT"))
 .I $$SHOWKIND=2,DT<$$^%L1DC($G(%ARG("MEDAT")),3)!(DT>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 .I $$SHOWKIND=3,$G(%ARG("NOMDOC"))'=NUMBER Q
 .I $G(MAX),SHZ+1>MAX S ENDCYC=1 Q
 .S SHZ=SHZ+1
 .
 .W "<tr "
 .I $$ALLDOCS,$$PRKUP?1N,$G(W4HSB("PRKUP"))?1N,$$PRKUP'=W4HSB("PRKUP") D
 ..W " style=""color:grey"" "
 .I $D(@GLHZ@(N,"DELETED")) W " style=""background-color:pink"" "
 .W " >",!
 .
 .W " <td style=""background-color:lightgrey;color:black;font-size:"_$$^W3FSZ(8)_";text-align:center"">"
 .  W SHZ
 . D WEX(SHZ)
 .
 .W " <td style=""cursor:pointer"
 .I +NUMBER=+$$GETP^%W1PRM("LHBCUR") W ";border:solid 2px brown;"
 .W """ "
 .W " onClick=""ShowItemsInvoice('"_+NUMBER_DOC_"','"_LK_"',self,'','0')"""
 .W ">"
 .W " &nbsp;&nbsp;"_NUMBER
 . D WEX(NUMBER)
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV(W4HSB("TODATE"))
 . D WEX(W4HSB("TODATE"),"D")
 .W " </td>"
 .
 .W " <td>"
 . W LK
 . D WEX(LK)
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV(W4HSB("LKHNAME"),"H")
 . D WEX(W4HSB("LKHNAME"),"H")
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV($$TELB^W4L(LK))
 . D WEX($$TELB^W4L(LK))
 .W " </td>"
 .
 .W " <td>"
 . W $$RKV($$PELE^W4L(LK))
 . D WEX($$PELE^W4L(LK))
 .W " </td>"
 .
 .W " <td>"
 . W $J(W4HSB("TOT"),2,2)
 . S STOT=STOT+W4HSB("TOT")
 . D WEX(W4HSB("TOT"),"N")
 .W " </td>"
 .
 .W "<td "
 . W " style=""cursor:pointer"" "
 . W " onClick=""ShowItemsInvoice('"_$P($G(W4HSB("NHB")),";")_"','"_LK_"',self,'','0')"" "
 .W ">"
 . W $$RKV($P($G(W4HSB("NHB")),";"))
 . D WEX($P($G(W4HSB("NHB")),";"))
 .W "</td>"
 .W "</tr>",!
 .D WEXR
 ;
 D  ;
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .N J F J=1:1:6 D
 ..W "<td>&nbsp;</td>",!
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 . D WEX("TOTAL","DICT")
 .W "<td>"_$J(STOT,2,2)_"</td>",!
 . D WEX(STOT,"N")
 .W "<td>&nbsp;</td>",!
 .D WEX("")
 .W "</tr>",!
 .D WEXR
 Q
 ;
 ;
PRCOFRCLIST ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT($S($$^W4ISCDLK($G(LKH)):"CUSTPRCOFRLIST",1:"PRCOFRLIST"))_"</span>"
 N MAX S MAX=$$SHOWLAST
 D RADIOSHOW
 W "<table id=""prcofrcards"" border=""1""  width=""98%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("HZMH")
  D WEX("HZHMH","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DATE")
  D WEX("DATE","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
  D WEX("CUSTOMNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
  D WEX("CUSTOMNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL1")
  D WEX("TEL1","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TEL2")
  D WEX("TEL2","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("DESCRIPTION")
  D WEX("DESCRIPTION","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
  D WEX("SUM","DICT")
 W "   </th>",!
 W "  </tr>",!
 D WEXR
 ;
 N I,N,A,CUST,CUSTNAME
 N GLHM S GLHM=$$^W4GL("HZMHC")
 N ENDCYC S ENDCYC=0
 N SHM,STOT S (SHM,STOT)=0
 ;
 S N="",I=0 F  S N=$O(@GLHM@(N),-1) Q:N=""  D  Q:ENDCYC
 .N A,LK S A=$G(^(N))
 .S LK=$$LKH^W4HZMHCV(N)
 .I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 .N DT S DT=$$^%L1DC($$DAT^W4HZMHC(N),3)
 .I $$SHOWKIND=2,DT<$$^%L1DC($G(%ARG("MEDAT")),3)!(DT>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 .I $$SHOWKIND=3,$G(%ARG("NOMDOC"))'=+N Q
 .I $G(MAX),SHM+1>MAX S ENDCYC=1 Q
 .S SHM=SHM+1
 .W "<tr style=""cursor:pointer"
 .W """"
 .W " onClick=""ShowPrcOfr('"_N_"','"_LK_"',self)"""
 .W " >",!
 .W " <td"
 .I +N=+$$GET^%W1PRM("LHBCUR") W " style=""border:solid 2px brown;"" "
 .W ">"
 .W " &nbsp;&nbsp;"_N
 . D WEX(N)
 .W " </td>"
 .W " <td>"
 . W $$DAT^W4HZMHC(N)
 . D WEX($$DAT^W4HZMHC(N),"D")
 .W " </td>"
 .W " <td>"
 . W LK
 . D WEX(LK)
 .W " </td>"
 .W " <td>"
 . W $$LKHNAME^W4HZMHC(N)
 . D WEX($$LKHNM^W4HZMHC(N),"D")
 .W " </td>"
 .W " <td>"
 . W $$TEL1^W4HZMHC(N)
 . D WEX($$TEL1^W4HZMHC(N))
 .W " </td>"
 .W " <td>"
 . W $$TEL2^W4HZMHC(N)
 . D WEX($$TEL2^W4HZMHC(N))
 .W " </td>"
 .W " <td>"
 . W $$DESCR^W4HZMHC(N)
 . D WEX($$DSCR^W4HZMHC(N))
 .W " </td>"
 .W " <td>"
 . W $J($$SUMTD^W4HZMHC(N),2,2)
 . D WEX($$SUMTD^W4HZMHC(N),"N")
 . S STOT=STOT+$$SUMTD^W4HZMHC(N)
 .W " </td>"
 .W "</tr>",!
 .D WEXR
 ;
 I $$SHOWKIND=2 D
 .W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>&nbsp;</td>",!
 . D WEX("")
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 . D WEX("TOTAL","DICT")
 .W "<td "_$$NUM^%W1ALIGN_" ><b>"_SHM_"</b></td>",!
 . D WEX(SHM)
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN(STOT)_"</td>",!
 . D WEX(STOT,"N")
 .W "</tr>",!
 .D WEXR
 W " </table>",!
 Q
 ;
 ;
W4LKH(STAM) ;
 Q +$$^W4LKH
 ;
 ;
IFNEWLKH(LKH) ;
 N W4LKH,W4LKH1,W4KTV,W4CITY,W4STREET,W4HOME,W4FLAT,W4FAX,W4EMAIL,W4ZIP,W4TZ
 S W4LKH=0,W4LKH1="",W4KTV=""
 ;
 I LKH["~" D GETDETLKH(LKH)
 ;
 S LKH=$P(LKH,"~")
 S:'$$DEFISLK^W4PRM LKH=$TR(LKH,"-","") Q:LKH=""
 ;
 I W4LKH,$L(W4LKH1) D
 .S @$$^W4GL("LKH")@(LKH)=W4LKH1
 .D
 ..I W4TEL'?.P D PUT^W4L(LKH,W4TEL,"TELB")
 ..I W4PELE'?.P D PUT^W4L(LKH,W4PELE,"PELE")
 ..I W4STREET'?.P D PUT^W4L(LKH,W4STREET,"KTV")
 ..I W4CITY'?.P D PUT^W4L(LKH,W4CITY,"IR")
 ..I W4HOME'?.P D PUT^W4L(LKH,W4HOME,"BAIT")
 ..I $L(W4FLAT) D PUT^W4L(LKH,W4FLAT,"DIRA")
 .I W4FAX D PUT^W4L(LKH,W4FAX,"FAX")
 .I $L(W4EMAIL) D PUT^W4L(LKH,W4EMAIL,"EMAIL")
 .I W4ZIP D PUT^W4L(LKH,W4ZIP,"MIKUD")
 .I W4TZ D PUT^W4L(LKH,W4TZ,"TZ")
 .I '$$D2^W4L(LKH) S @$$^W4GL("LKH")@(LKH,2)="*1*90000"
 .I '$$D3^W4L(LKH) S @$$^W4GL("LKH")@(LKH,3)=""
 ;
 Q
 ;
GETDETLKH(LKH) ;
 S W4LKH=$P(LKH,"~",2),W4LKH1=$P(LKH,"~",3)
 S W4LKH1=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4LKH1))
 S W4TEL=$$CNWEB^%L1FRM($P(LKH,"~",4))
 I W4TEL?.P,$L($P(LKH,"~"))>6 S W4TEL=$$TEL($P(LKH,"~"))
 S W4PELE=$$CNWEB^%L1FRM($P(LKH,"~",5))
 S W4FAX=$$CNWEB^%L1FRM($P(LKH,"~",6))
 S W4EMAIL=$$CNWEB^%L1FRM($P(LKH,"~",7))
 S W4CITY=$P(LKH,"~",8)
 S W4CITY=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4CITY))
 S W4STREET=$P(LKH,"~",9)
 S W4STREET=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4STREET))
 S W4HOME=$$CNWEB^%L1FRM($P(LKH,"~",10))
 S W4FLAT=$$CNWEB^%L1FRM($P(LKH,"~",11))
 S W4ZIP=$$CNWEB^%L1FRM($P(LKH,"~",12))
 S W4TZ=$$CNWEB^%L1FRM($P(LKH,"~",13))
 ;S W4KTV=W4STREET
 ;I $L(W4HOME) S W4KTV=W4KTV_" "_W4HOME
 ;I $L(W4FLAT) S W4KTV=W4KTV_"/"_W4FLAT
 ;I $L(W4CITY) S W4KTV=W4KTV_" , "_W4CITY
 ;I $L(W4ZIP) S W4KTV=W4KTV_" "_W4ZIP
 Q
 ;
 ;
TEL(LKH) ;
 S LKH=$TR(LKH,"-","")
 I $E(LKH)="1" Q $E(LKH)_"-"_$E(LKH,2,4)_"-"_$E(LKH,5,20)
 I $E(LKH)'="0" Q LKH
 I $E(LKH,1,2)="02"!($E(LKH,1,2)="03")!($E(LKH,1,2)="04")!($E(LKH,1,2)="08") Q $E(LKH,1,2)_"-"_$E(LKH,3,20)
 Q $E(LKH,1,3)_"-"_$E(LKH,4,20)
 ;
NOIDKKTV(LKH) ;
 I '$$^W4ISCDLK($G(LKH)) Q 0
 I $L($$BAIT^W4L(LKH)) Q 1
 I $L($$DIRA^W4L(LKH)) Q 1
 I $L($$CITY^W4L(LKH)) Q 1
 Q 0
 ;
ONCLICKHB(CODDOC,N) ;
 I CODDOC="HI" D
 .S N=$TR(N,"[] ","")
 ;
 N LK0 I '$G(N) Q
 S LK0=$G(@KLIN@(CODDOC,+N))
 S LK=$$LK(LK0)
 I LK=""!(LK=0) Q
 ;
 I CODDOC="HMK" W " onClick=""ShowArmInvoice('"_+N_"HMK','"_LK_"','ifr','','0',this)"" " Q
 ;
 I $$HIDOC(CODDOC) D SHOWHI(N,LK) Q
 ;
 I CODDOC="HZMHC" W " onClick=""ShowPrcOfr('"_+N_"','"_LK_"','ifr')"" " Q
 ;
 I $$HBZ(CODDOC) D  Q
 .I $$ARM(LK0)=1 W " onClick=""ShowArmInvoice('"_+N_"','"_LK_"','ifr','1','0',this)"" " Q
 .I $$ARM(LK0)=2 W " onClick=""ShowItemsInvoice('"_+N_"Z','"_LK_"','ifr','','',this)""" Q
 .W " onClick=""ShowInvoice('"_-N_"','"_LK_"',self)"""
 ;
 I '$$ARM(LK0) W " onClick=""ShowInvoice('"_N_"','"_LK_"','ifr',this)"""
 ;
 N DOP S DOP=""
 ;
 I $$TM S DOP="T"
 ;
 I $$ARM(LK0) D
 .I $$ARM(LK0)=1 W " onClick=""ShowArmInvoice('"_N_"','"_LK_"','ifr','','0',this)""" Q
 .I $$ARM(LK0)=2 W " onClick=""ShowItemsInvoice('"_N_DOP_"','"_LK_"','ifr','','"_$S($G(TMHB):1,1:0)_"',this)""" Q
 Q
 ;
 ;
ONCLICKCB(N) ;
 W " style=""cursor:pointer"" onClick=""ShowReceipt(GetVl('hbcb"_N_"'),'"_LK_"','ifr')"""
 Q
 ;
ONCLICKHBHI(N) ;
 W " style=""cursor:pointer"" onClick=""ShowReceipt(GetVl('hbcb"_N_"'),'"_LK_"','ifr')"""
 Q
 ;
CODDOC(STAM) ;
 I $G(%ARG("VD"))="HBZ" Q "TZ"
 I $G(%ARG("VD"))="HMK" Q "HMK"
 I $G(%ARG("VD"))="HMKI" Q "HMK"
 I $G(%ARG("VD"))="HZMH" Q "HZMH"
 I $G(%ARG("VD"))="HZMHC" Q "HZMHC"
 I $G(%ARG("VD"))="HI" Q "HI"
 I $$INP($G(%ARG("VD"))) Q %ARG("VD")
 ;
 I $$GET^%W1PRM("VD")="HBZ" Q "TZ"
 I $$GET^%W1PRM("VD")="HMK" Q "HMK"
 I $$GET^%W1PRM("VD")="HMKI" Q "HMK"
 I $$GET^%W1PRM("VD")="HZMH" Q "HZMH"
 I $$GET^%W1PRM("VD")="HZMHC" Q "HZMHC"
 I $$GET^%W1PRM("VD")="HI" Q "HI"
 I $$INP($$GETP^%W1PRM("VD")) Q $$GETP^%W1PRM("VD")
 Q "H"
 ;
HBZ(CODDOC)
 I CODDOC="TZ" Q 1
 I CODDOC="HBZ" Q 1
 Q 0
 ;
KLIN ;
 S KLIN=$$^W4GL("KLIN")
 Q
 ;
SHOWALL(LKH,MAX) ;
 N N,VRM,DT,CODDOC,PRALL,II
 I '$G(MAX) S MAX=9999999999
 S PRALL=1
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 D CRVRM("H",LKH,MAX)
 D CRVRM("TZ",LKH,MAX)
 D CRVRM("HI",LKH,MAX)
 ;;W "SHOWALL",! ;
 S II=0,ENDCYC=0
 S DT="" F  S DT=$O(@VRM@(DT),-1) Q:DT=""  D  Q:ENDCYC
 .S N="" F  S N=$O(@VRM@(DT,N),-1) Q:N=""  D  Q:ENDCYC
 ..S CODDOC="H"
 ..I N["[-]" S CODDOC="TZ"
 ..I $E($TR(N," ",""))="[" S CODDOC="HI"
 ..D LINEINVC(N,LKH,CODDOC,$G(PRINT))
 Q
 ;
 ;
CRVRM(CODDOC,LKH,MAX) ;
 ;;W "CODDOC="_CODDOC,!
 N N,A,LK0,LK,SH S SH=0
 S N=999999999 F  S N=$O(@KLIN@(CODDOC,N),-1) Q:N=""  D  I $G(MAX) Q:SH>MAX
 .S LK0=$G(^(N))
 .S LK=$$LK(LK0)
 .I $$^W4ISCDLK($G(LKH)),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 .D ^W4HSBGET(N,CODDOC)
 .S DT=$G(W4HSB("DT")) Q:'DT
 .S SH=SH+1
 .N HB S HB=N
 .I CODDOC="TZ" S HB=N_" [-]"
 .I CODDOC="HI",($G(W4HSB("TOT"))-$G(W4HSB("HBHITOT")))'>0 Q
 .I CODDOC="HI" S HB="[ "_N_" ]"
 .S @VRM@(DT,HB)=LK0
 Q
 ;
RKVN(RKV) ;
 N ST S ST=""
 I RKV<0 S ST="<span style=""color:darkred"">"
 S ST=ST_$S(RKV?."-"1N.E!(RKV=""):$J(RKV,2,2),1:RKV)
 I RKV<0 S ST=ST_"</span>"
 Q ST
 ;
ZV(STAM) ;
 Q "<span style=""color:red"">*</span>"
 ;
SELDAT(TODATE,MIN,PLUS,ID,ONCHNG) ;
  W $$^W4SELDAT(TODATE,$G(MIN),$G(PLUS),$G(ID),$G(ONCHNG)) ;
 Q
 ;
LASTDT(STAM) ;
 N W4HSB
 N CODDOC S CODDOC=$$CODDOC
 D KLIN
 N H S H=$O(@KLIN@(CODDOC,999999),-1) I 'H Q 0
 D ^W4HSBGET(H,CODDOC) I '$D(W4HSB("DT")) Q 0
 Q W4HSB("DT")
 ;
INVCAU(INVC) ;
 I +$G(INVC)#2=1 Q 1
 ;;I '$G(INVC),$G(%ARG("VD"))'="HBZ",$G(%ARG("DOC"))'="HBW" Q 1
 I '$G(INVC),$G(%ARG("VD"))'="HBZ" Q 1
 Q 0
 ;
INVCARM(INVC) ;
 I (+$G(INVC)\2)#2 Q 1
 I '$G(INVC),$G(%ARG("VD"))'="HBZ" Q 1
 Q 0
 ;
INVCIT(INVC) ;
 I (+$G(INVC)\4)#2 Q 1
 I '$G(INVC),$G(%ARG("VD"))'="HBZ" Q 1
 Q 0
 ;
INVCDEB(INVC) ;
 I (+$G(INVC)\8)#2 Q 1
 I '$G(INVC) Q 1
 Q 0
 ;
INVCHI(INVC) ;
 I (+$G(INVC)\16)#2 Q 1
 I '$G(INVC) Q 1
 Q 0
 ;
INIT ;
 I $G(%ARG("FIRST")) D
 .D KILL^%W1PRM("DAT")
 .D KILL^%W1PRM("LHBCUR")
 ;
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 D KILL^%W1PRM("VD")
 I $L($G(%ARG("VD"))) D PUT^%W1PRM("VD",%ARG("VD"))
 D KILL^%W1PRM("DOC")
 I $L($G(%ARG("DOC"))) D PUT^%W1PRM("DOC",%ARG("DOC"))
 D KILL^%W1PRM("NOMHB")
 D KILL^%W1PRM("SUMHB")
 K @$$^W4MAIN("TMP")
 K @$$^W4MAIN("TMPHM")
 K @$$^W4MAIN("TMPCB")
 K @$$^W4MAIN("TMPHB")
 Q
 ;
 ;
KOT ;
 N VD S VD=$$GET^%W1PRM("VD")
 ;
 I VD="HBZ" D  Q
 .I $G(%ARG("DOC"))="HBW" W $$^%W1DICT("DEBETITEMSINVOICE") D DOPZAG Q
 .W $$^%W1DICT("DEBETINVOICE") Q
 ;
 I $$HI W $$^%W1DICT("DEALARMINVOICE") Q
 ;
 I VD="HBY"!(VD["UNDEF")!(VD="") D  Q
 .I $G(%ARG("DOC"))="HBW" W $$^%W1DICT("ITEMSINVOICE") D DOPZAG Q
 .W $$^%W1DICT("SINGLECUSTOMARMINVOICE")
 ;
 I $$HMK^W4LHB=1 D  Q
 .W $$^%W1DICT("ARMINVOICERECEIPT")
 ;
 I $$HMKI^W4LHB D  Q
 .W $$^%W1DICT("ITEMSINVOICERECEIPT")
 ;
 I VD="TM" D  Q
 .W $$^%W1DICT("SHIPPINGRECORDSISSUE") D DOPZAG
 ;
 I $$HZ D  Q
 .W $$^%W1DICT("CUSTOMERORDER") D DOPZAG
 ;
 I $$HZMH D  Q
 .W $$^%W1DICT("PRICEOFFER") D DOPZAG
 Q
 ;
 ;
HEAD ;
 I $$CB D  Q
 .W $$^%W1DICT("RECEIPTES")
 ;
 I $$SRV D  Q
 .W $$^%W1DICT("SERVICECARD")
 ;
 I $$HZMH D  Q
 .W $$^%W1DICT("HZMH")
 ;
 I $$HI D  Q
 .W $$^%W1DICT("DEALARMINVOICE")
 ;
 D
 .W $$^%W1DICT("SINGLECUSTOMINVOICE")
 Q
 ;
DOPZAG ;
 I $$PRKUP W " - "_$$^%W1DICT("CSRITEMS")
 I $$PRKUP=0 W " - "_$$^%W1DICT("MLYITEMS")
 Q
 ;
CUSTCLOSED(LKH) ;
 I $$MAZAV^W4L(LKH)=0 Q 1
 Q 0
 ;
CONT(STAM) ;
 Q $$INVH^%L1FRM($G(%ARG("CONTENT")))
 ;
FINDNMB(ST,CONT) ;
 N J F J=1:1:$L(ST,"\") I +$P(ST,"\",J)=+CONT S OK=1 Q
 Q
 ;
FINDCONT(CODDOC,NDOC,CONT) ;
 N LK0,LK,OK,SH S OK=0
 S LK0=$G(@KLIN@(CODDOC,+NDOC)) Q:LK0="IN"
 S LK=$$LK(LK0)
 ;
 I CODDOC="H"!(CODDOC="TZ")!(CODDOC="HI")!(CODDOC="HMK") D
 .I LK0["+" D  Q
 ..N ST S ST=$G(@$$^W4GL("P1LHB")@(LK,+NDOC,"PR"))
 ..I 'CONT,ST[CONT S OK=1 Q
 ..I CONT D
 ...N J F J=1:1:$L(ST,"\") I +$P(ST,"\",J)=+CONT S OK=1 Q
 .I LK0["^" D  Q
 .I LK0["W" D  Q
 ..N NOM S NOM=$P(LK0,"W",2)
 ..S SH="" F  S SH=$O(@$$^W4GL("W4DOC")@(NOM,SH)) Q:SH=""  D:SH  Q:OK
 ...N ST S ST=$G(^(SH))
 ...I 'CONT,ST[CONT S OK=1 Q
 ...I CONT D FINDNMB(ST,CONT)
 .
 .D  Q  ;-- YAD
 ..N SH
 ..I 'CONT,$G(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC))[CONT S OK=1
 ..S SH="" F  S SH=$O(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC,SH)) Q:SH=""  D:SH  Q:OK
 ...N ST S ST=$G(^(SH))
 ...I 'CONT,ST[CONT S OK=1 Q
 ...I CONT D FINDNMB(ST,CONT)
 ..I 'OK," "_$G(@$$^W4GL("KLF")@(LK,CODDOC_"P",+NDOC))_" "[(" "_CONT_" ") S OK=1
 ..Q:OK
 ..I CODDOC="HMK" D
 ...S SH="" F  S SH=$O(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC,"HB",SH)) Q:SH=""  D:SH  Q:OK
 ....N ST S ST=$G(^(SH))
 ....I 'CONT,ST[CONT S OK=1 Q
 ....I CONT D FINDNMB(ST,CONT)
 ;
 I CODDOC="CB" D
 .I 'CONT,$G(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC))[CONT S OK=1
 .S SH="" F  S SH=$O(@$$^W4GL("KLF")@(LK,CODDOC,+NDOC,SH)) Q:SH=""  D:SH  Q:OK
 ..N ST S ST=$G(^(SH))
 ..I 'CONT,ST[CONT S OK=1 Q
 ..I CONT D FINDNMB(ST,CONT)
 .I $G(@$$^W4GL("KLF")@(LK,CODDOC_"P",+NDOC))[CONT S OK=1
 .
 I $$INP(CODDOC),$G(SPK) D
 .I 'CONT,$G(@$$^W4GL("W4INP")@(SPK,CODDOC,+NDOC))[CONT S OK=1
 .S SH="" F  S SH=$O(@$$^W4GL("W4INP")@(SPK,CODDOC,+NDOC,SH)) Q:SH=""  D  Q:OK
 ..N ST S ST=$G(^(SH))
 ..I 'CONT,ST[CONT S OK=1 Q
 ..I CONT D FINDNMB(ST,CONT)
 ;
 Q OK
 ;
 ;
LKHMKDFLT(STAM) ;
 I $$HMK,$$^W4LKHCSR,LKH=$$LKHDFLT^W4LKHCSR Q 1
 Q 0
 ;
RKV(TXT,PRM) ;
 I $G(TXT)="" Q "&nbsp;"
 I $G(PRM)="H" Q $$H2U^%L1FRM(TXT)
 Q TXT
 ;
GROUPS ;
 W "<select id=""group"" "
 N LKH S LKH=$$LKH
 I '$$^W4ISCDLK(LKH) W " onChange=""ShowInvoices()"" "
 W ">",!
 I LKH S %ARG("GROUP")=+$$SUGL^W4L(LKH)
 W "<option value=""0"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 N N S N="" F  S N=$O(@$$^W4GL("SUGL")@(N)) Q:N=""  D
 .I LKH,N'=%ARG("GROUP") Q
 .W "<option value="""_N_""" "
 .I $G(%ARG("GROUP")),N=%ARG("GROUP") W " selected=""selected"" "
 .W "> "_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>",!
 W "</select>",!
 Q
 ;
LKH(STAM) ;
 I $G(%ARG("CODE")) Q %ARG("CODE")
 I $G(%ARG("LKH")) Q %ARG("LKH")
 Q ""
 ;
PRINTSIZE ;
 W "style=""font-size:10pt"" "
 Q
 ;
DOCEXIST(PRM) ;
 N LKH,VD,NUMBER
 S LKH=$$^W4CDLK($P(PRM,";"))
 S VD=$P(PRM,";",2)
 S NUMBER=$P(PRM,";",3)
 I '$G(NUMBER) Q 0
 I $G(LKH)=""!($G(LKH)=0) Q ""
 I $$D^W4ORDD(LKH,NUMBER) Q 1
 Q 0
 ;
PRKUP(STAM) ;
 Q $$GETP^%W1PRM("PRKUP")
 ;
INP(VDOC) ;
 I $E(VDOC)="I" Q 1
 Q 0
 ;
ALLDOCS(STAM) ;
 Q $G(%ARG("ALLDOCS"))
 ;
SHOWHI(N,LK)
 N N1 S N1=N
 I N["<" S N1=$P(N,"<")_"HI"_"<"_$P(N,"<",2)
 E  S N1=N_"HI"
 W " onClick=""ShowArmInvoice('"_N1_"','"_LK_"','ifr','','0',this)"" "
 Q
 ;
TDMAIL ;
 W " <td id=""mail"">"
 W " </td>"
 Q
 ;
DENIED(STAM) ;
 I $$^W4LKH,$$GETP^%W1PRM("MSD")=7001,'$$VIEW,'$G(@$$^W4GL("ISHUR")@(%REM,+$H)) Q 1
 Q 0
 ;
WDTBL(STAM) ; 
 Q 95
 ;
SUGTS(SUGTS) ;
 N ST S ST="" 
 S ST=$$RPL^%L1FRM(SUGTS,1,$$TV^%W1DICT($$^%W1LNG,"CASH"))
 S ST=$$RPL^%L1FRM(ST,2,$$TV^%W1DICT($$^%W1LNG,"CHECK"))
 S ST=$$RPL^%L1FRM(ST,3,$$TV^%W1DICT($$^%W1LNG,"CA"))
 S ST=$$RPL^%L1FRM(ST,4,$$TV^%W1DICT($$^%W1LNG,"AVBANK"))
 Q ST 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LHBCHC
W4LHBCHC ; [ 05.07.23 18:48 ] [ 31.01.19 10:55 ] [ 02.08.18 16:20 ] 
 N (JB,%ARG,%REM,W4LHBNEW)
 N LKH S LKH=$G(%ARG("LKH"))
 S DAT=$G(%ARG("DAT"))
 ;
 D KOTHSB($G(%ARG("NOM")),LKH,DAT)
 ;
 D PUT^%W3DEB("W4LHBCHC","%ARG=[%ARG")
 ;
 D DEFTEMPL
 K @TEMPL
 S IT=0
 ;
 D HSBL(LKH)
 ;
 I $D(@$$^W4GL("P1EZLI")@(LKH)),$G(^(LKH))'=0 D  G BDK ;----- IHUD LAKOHOT
 .N LKHR S LKHR=LKH N LKH S LKH=""
 .F  S LKH=$O(@$$^W4GL("P1EZLI")@(LKHR,LKH)) Q:LKH=""  I LKH'=LKHR D HSBL(LKH)
 ;
BDK I '$D(@TEMPL) D  Q
 .W "<script>",!
 .W "MsgA('NODATA!');",!
 .W " Back()",!
 .W "</script>",!
 ;
 D DAF
 ;
 W "<br/>",!
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_LKH_"')","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
KOTHSB(NOM,LKH,DAT) ;
 D ^W4KOTHSB(NOM,LKH,DAT,"HB")
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
 ;
DAF ;
 ;-- INPUT IT, SHUM
 ;         ^TEMPL
 ;  1       2      3      4      5     6      7
 ; ORDER ; CUST ; NAME ; DATE ; TIME ; SUM ; AUTH ;
 D DEFTEMPL
 ;
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("ORDERSLIST")_"</span>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""70%"" border=""0"" cellspacing=""0"">",!
 W " <tr><td colspan=""8"" "_$$INV^%W1ALIGN_" >"
  W $$^%W1DICT("SIGNALL")_"&nbsp;&nbsp;"
  W "<input type=""checkbox"" id=""SignAll"" checked=""checked"" onClick=""SignOrDeleteAll(this)"">",!
 W " </td></tr>",!
 W "</table>",!
 ;
 W "<table id=""TblOrd"" dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("ORDER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("TIME")_"</th>"
  W "<th>"_$$^%W1DICT("SUM")_"</th>"
  W "<th>"_$$^%W1DICT("DELIVERYDOC")_"</th>"
  W "<th>"_$$^%W1DICT("AUTHORITY")_"</th>"
  W "<th>"_$$^%W1DICT("SIGN")_"</th>"
 W "</tr>",!
 ;
 N IT,SHUM S IT=0,SHUM=0
 N ORD,LK,LK1,DAT,SHAA,SUM,ASM,TM
 F I=1:1 Q:'$D(@TEMPL@(I))  D
 .S IT=IT+1
 .N A S A=$G(^(I))
 .D PRS^%L1FRM(A,"ORD\LK\LK1\DAT\SHAA\SUM\ASM\TM","\")
 .W "<tr>"
 .W " <td " D STYLE W ">"_$$RKV(ORD)_"</td>"
 .W " <td " D STYLE W ">"_$$RKV(LK)_"</td>"
 .W " <td " D STYLE W ">"_$$RKV(LK1,"H")_"</td>"
 .W " <td align=""center"" " D STYLE W ">"_$$RKV(DAT)_"</td>"
 .W " <td align=""center"" " D STYLE W ">"_$$RKV(SHAA)_"</td>"
 .W " <td dir=""LTR"" align=""right"" " D STYLE W ">"_$$RKV(SUM,"N")_"</td>"
 .S SHUM=SHUM+SUM
 .W " <td " D STYLE W ">"_TM_"</td>"
 .W " <td " D STYLE W ">"_$$RKV(ASM,"H")_"</td>"
 .W " <td><input type=""checkbox"" id=""chk"_I_""" checked=""checked"" onClick=""Sign(this,'"_I_"')"" /></td>"
 .W "</tr>",!
 ;
 W "<tr style=""font-weight:bold"">"
  W "<td colspan=""3"" id=""it"">"_$$^%W1DICT("TOTALORDERS")_" : <span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"_IT_"</span></td>"
  W "<td colspan=""2"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  W "<td id=""sum"" dir=""LTR"" style=""color:black;font-size:"_$$^W3FSZ(12)_";text-align:right"">"_$$RKV(SHUM,"N")_"</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
HSBL(LKH) ;--- POISK HAZM I FORM-E HESHB
 N DATF,DF
 S DATF=DAT,DF=$$^%L1DC(DATF,3)
 S ITS=0,SHUM=0
 D GLHB
 D DEFTEMPL
 N N,FLST,HZM,TRH,ZMANK,SHAA,SHULA,ASR
 ;
 D P1HL1,P1HL2,P1HL3,P1HL4
 ;
 I $G(%ARG("VD"))'="HBZ" D
 .S N="" F  S N=$O(@P1HL2@(LKH,N)) Q:N=""  D
 ..I $G(@P1HL2@(LKH,N))'>DF S HZM=N I $$^W4ISORD(HZM) D HSBHZM(LKH,HZM) ;
 .;
 .S N="" F  S N=$O(@P1HL3@(LKH,N)) Q:N=""  D
 ..I $G(@P1HL3@(LKH,N))'>DF D HSBHZM3(LKH,N) ;
 ;
 I $G(%ARG("VD"))="HBZ" D
 .S N="" F  S N=$O(@P1HL4@(LKH,N)) Q:N=""  D
 ..I $G(@P1HL4@(LKH,N))'>DF D HSBHZM4(LKH,N) ;
 Q
 ;
 ;
HSBHZM(LKH,HZM) ;
 ;INP: LKH,HZM, LKHO,FLST
 ;OUT: HZMS,HZMF
 ;-------------------------
 N (JB,%ARG,%REM,LKH,HZM,LKHO,FLST,LKHR,HZMS,HZMF,KAMHZM,IT,ITS,SHUM,W4LHBNEW)
 D P1HL1
 S A=0 D ^W4IN
 ;
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)") Q:'SHULA
 I $$ITRA^W4HZMST(HZM)>.05!($$ITRA^W4HZMST(HZM)<-.05),'$$^W4CLOSE(HZM) Q
 I '$$^W4CLOSE(HZM) D SETCLOSE^W4HZMST(HZM)
 ;
 ;
 I 'TRH S TRH=$P(ZMANK," "),SHAA=$P(ZMANK,"  ",2)
 N PR0 S PR0=0
 I $G(@$$^W4GL("P1EZLI")@(LKH))=0,$D(^(LKH))=11 S PR0=1
 D
 .N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB","ASR",N1)) Q:N1=""  D
 ..N STAS S STAS=$G(^(N1))
 ..N LKHZ S LKHZ=$P(STAS,"*")
 ..I 'PR0,LKHZ'=LKH Q
 ..I PR0,LKHZ'=LKH,$$LKHR^W4L(LKHZ)'=LKH Q
 ..I $$^W4ISCDLK($G(LKH)),$D(@$$^W4GL("P1HL1")@(LKH,HZM,N1,"HSB")) Q
 ..I $$^W4ISCDLK($G(LKHR)),$D(@$$^W4GL("P1HL1")@(LKHR,HZM,N1,"HSB")) Q
 ..S ASR=$P(STAS,"*",4)
 ..I $P(@$$^W4ORD@(HZM,"CB","ASR",N1),"*",7) D
 ...S HZMLAK=$P(@$$^W4ORD@(HZM,"CB","ASR",N1),"*",7) ; ASM
 ..D TEMPL
 Q
 ;
HSBHZM3(LKH,HZM) ;  ------ P1HL3 -- HAZMANOT MI SNIF AHER
 ;INP: LKH,HZM, LKHO,FLST
 ;OUT: HZMS,HZMF,SHUM
 ;----------------------------
 N (JB,%ARG,%REM,LKH,HZM,LKHO,FLST,LKHR,HZMS,HZMF,KAMHZM,IT,ITS,SHUM)
 D P1HL1,P1HL3
 I $D(@P1HL1@(LKH,HZM,1,"HSB")) Q
 I $$^W4ISCDLK($G(LKHR)),$D(@$$^W4GL("P1HL1")@(LKHR,HZM,1,"HSB")) Q
 Q:'($D(@P1HL3@(LKH,HZM))#2)
 S A=0 D ^W4IN
 N HL3 S HL3=$G(@P1HL3@(LKH,HZM))
 ;
 S ASR=$P(HL3,"*",2)
 S TRH=$P(HL3,"*",3)
 S SHAA=$P(HL3,"*",4)
 S HZMLAK=$P(HL3,"*",5)
 S LKH1=$P(HL3,"*",6)
 ;
 D TEMPL
 ;
 Q
 ;
 ;
HSBHZM4(LKH,HZM) ;  ------ P1HL4 -- HAZMANOT MI SNIF AHER
 ;INP: LKH,HZM, LKHO,FLST
 ;OUT: HZMS,HZMF,SHUM
 ;----------------------------
 N (JB,%ARG,%REM,LKH,HZM,LKHO,FLST,LKHR,HZMS,HZMF,KAMHZM,IT,ITS,SHUM)
 D P1HL1,P1HL4
 I $D(@P1HL1@(LKH,HZM,1,"HSB")) Q
 I $$^W4ISCDLK($G(LKHR)),$D(@$$^W4GL("P1HL1")@(LKHR,HZM,1,"HSB")) Q
 Q:'($D(@P1HL4@(LKH,HZM))#2)
 S A=0 D ^W4IN
 N HL4 S HL4=$G(@P1HL4@(LKH,HZM))
 ;
 S ASR=$P(HL4,"*",2)
 S TRH=$P(HL4,"*",3)
 S SHAA=$P(HL4,"*",4)
 S HZMLAK=$P(HL4,"*",5)
 S LKH1=$P(HL4,"*",6)
 ;
 D TEMPL
 ;
 Q
 ;
 ;-------------------- PERUT HAZMANOT -----------------
TEMPL ; INP: LKH,LKHO,HZM,IT,TRH,ASR,HZMLAK           ;
 ;      OUT: SHUM,IT,HZMS,  ^TEMPL($P,IT)        ;
 ;-----------------------------------------------------
 D DEFTEMPL
 ;
 I HZM'["-" S LKH1="" N NMB,LKH1
 S NMB=LKH
 I $D(@$$^W4ORD@(HZM)) D
 .S NMB=$$NMB^W4HZMST(HZM),LKH1=$$NAME^W4HZMST(HZM)
 I $L(NMB)<4 S LKH1=$$LKH^W4L(LKH)
 I $L(NMB)>3,$G(LKH1)="" S LKH1=$$LKH^W4L(NMB)
 S IT=IT+1
 S @TEMPL@(IT)=$P(HZM,"-",1,2)_"\"_$S($L(NMB)>3:NMB,1:LKH)_"\"_LKH1_"\"_TRH
 S @TEMPL@(IT)=@TEMPL@(IT)_"\"_$$^%L1CLRTM(SHAA)_"\"_ASR_"\"_$G(HZMLAK)_"\"_$G(TM)
 I $$^W4ISORD(HZM) S SHUM=SHUM+ASR
 Q
 ;
 ;
GLHB ;
 S GLHB=$$^W4GL("P1LHB")_"(LKH)"
 Q
P1HL1 ;
 S P1HL1=$$^W4GL("P1HL1")
 Q
P1HL2 ;
 S P1HL2=$$^W4GL("P1HL2")
 Q
P1HL3 ;
 S P1HL3=$$^W4GL("P1HL3")
 Q
P1HL4 ;
 S P1HL4=$$^W4GL("P1HL4")
 Q
DEFTEMPL ;
 S TEMPL=$$^W4MAIN("TEMPL")
 Q
 ;
CRVRM(PRM) ;
 D PUT^%W3DEB("W4LHBCHC-CRVRM","PRM=PRM")
 S HZ=$P(PRM,";")
 S FLAG=$P(PRM,";",2)
 I FLAG S @$$^W4MAIN("VRM")@(HZ)=""
 I 'FLAG K @$$^W4MAIN("VRM")@(HZ)
 Q
 ;
CRALL(TZ) ;
 N FUNC S FUNC=$P(TZ,";",2)
 S TZ=$P(TZ,";")
 N A,I,TEMPL,HZ
 D DEFTEMPL
 ;
 K @$$^W4MAIN("VRM")
 ;
 S @$$^W4MAIN("VRM")=TZ
 I 'FUNC G CRALLE
 F I=1:1 Q:'$D(@TEMPL@(I))  S A=$G(^(I)) D
 .S HZ=$P(A,"\") I HZ<0!(HZ="") Q
 .S @$$^W4MAIN("VRM")@(HZ)=""
CRALLE Q
 ;
STYLE ;
 W " style=""cursor:pointer"" onClick=""ShowOrder('"_ORD_"','ifr','1')"" "
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LHBG
W4LHBG ; [ 28.06.22 08:37 ] [ 11.05.22 12:59 ] [ 11.12.17 18:31 ] 
 D KILL^%W1PRM("PRINT")
 D KILL^%W1PRM("MKRYD")
 ;
 W "<div align=""center"">",!
 W "<br><br><br>",!
 W "<table border=""0"" style=""padding:15px;border:ridge;2px"" dir="""_$$^%W1DIR_""">",!
  D LINE
  W "<tr>"
  W "   <td "_$$INV^%W1ALIGN_" style=""width:50%;font-weight:bold;text-align:center"">"_$$^%W1DICT("TODATE")_" : </td>",!
  W "   <td id=""todate"" dir=""LTR"" "_$$^%W1ALIGN_">" D ^%W1DAT("DAT") W "</td>",!
  W "</tr>",!
 ;
 W "<tr><td colspan=""2"">&nbsp;</td></tr>",!
 ;
 W "<tr align=""center"">",!
 W " <td><select id=""selopt"">",!
 W "      <option>"_$$^%W1DICT("NEWINVOICESISSUE")_"</option>",!
 W "      <option>"_$$^%W1DICT("PRINTINVOICESCOPY")_"</option>",!
 W "     </select>",!
 W " </td>",!
 W " <td "_$$INV^%W1ALIGN_" ><select id=""selprn"">",!
 W "      <option value=""1"">"_$$^%W1DICT("PRINT2BIG")_"</option>",!
 W "      <option value=""2"">"_$$^%W1DICT("CSRPRINT")_"</option>",!
 W "     </select>",!
 W " </td>",!
 W "</tr>"
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 W "<tr><td colspan=""2"">"
  W "<table width=""100%"">",!
   W "<tr>"
    W "<td>"
     W $$^%W1DICT("MESUGL")_" "
    W "</td>"
    W "<td>"
     D SELGROUP("mesugl")
    W "</td>"
    W "<td>"
      W $$^%W1DICT("ADSUGL")_" "
    W "</td>"
    W "<td>"
     D SELGROUP("adsugl")
    W "</td>"
  W "</tr>",! 
  ;
  W "<tr><td>"
    W $$^%W1DICT("MELKH")_" "
   W "</td>"
   W "<td>" 
    W "<input type=""text"" id=""melkh"" size=""10"" > "
    D ^W4BUTTON("findf","FIND","FindCust('melkh')","color:blue")
   W "</td>",!
   W "<td>"
    W $$^%W1DICT("ADLKH")_" "
   W "</td>"
   W "<td>"
    W "<input type=""text"" id=""adlkh"" size=""10"" > "
    D ^W4BUTTON("findu","FIND","FindCust('adlkh')","color:blue")
   W "</td>",!
  W "</tr></table></td>",!
 W "</tr>",!
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 D
 .W "<tr ><td colspan=""2"" style=""border-top:ridge 2px""></td></tr>",!
 ;
 W "<tr>"
 W " <td align=""center"">",!
  D ROUNDBUT^%W1JS("newinvoices",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
 W "  </td>",!
 W " <td align=""center"" >",!
  D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W " </td>",!
 W "</tr>",!
 ;
 D LINE
 W "</table>",!
 W "</div>",!
 ;
TD W "<td width=""30%"">"
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
CHKDAT(PRM) ;
 N LKH,DAT D ^W4IN
 S DATF=$P(PRM,";",2)
 S P1LHBS=$P(PRM,";",3)
 S P1LHBM=$P(PRM,";",4)
 S DF=$$^%L1DC(DATF,3)
 ;
 I DF>P1DZ Q "INVOICEISSUENOTLATER;"_$ZD(P1DZ,"DD.MM.YY")
 ;
 I DF=P1DZ,'$D(^Z(P1DZ)),'$G(P1LHBS),'$G(P1LHBM) Q "AFTERZONLY;"_DATF
 ;
 Q 1
 ;
CRTMP(DAT) ;
 N N,DF,LK,HZ
 S DF=$$^%L1DC(DAT,3)
 K @$$^W4MAIN("TMPHSB")
 ;
 S LK="" F  S LK=$O(@$$^W4GL("P1HL2")@(LK)) Q:LK=""  D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1HL2")@(LK,HZ)) Q:HZ=""  D  Q:$D(@$$^W4MAIN("TMPHSB")@(LK))
 ..I $G(^(HZ))'>DF D SETTMP(LK)
 ;
 S LK="" F  S LK=$O(@$$^W4GL("P1HL3")@(LK)) Q:LK=""  D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1HL3")@(LK,HZ)) Q:HZ=""  D  Q:$D(@$$^W4MAIN("TMPHSB")@(LK))
 ..I $G(^(HZ))'>DF,'$D(@$$^W4GL("P1HL1")@(LK,HZ,1,"HSB")) D SETTMP(LK)
 ;
 N FIRST
 S FIRST=$O(@$$^W4MAIN("TMPHSB")@(""))
 I FIRST="" S FIRST=" "
 Q FIRST
 ;
 ;
SETTMP(LK) ;
 N LLK S LLK=LK
 I $G(@$$^W4GL("P1EZL")@(LK)) S LLK=$G(^(LK))
 I '$$RNG(LLK) Q
 S @$$^W4MAIN("TMPHSB")@(LLK)=""
 Q
 ;
CRTMPC(DAT) ;
 N N,DF,LK,HZ
 S DF=$$^%L1DC(DAT,3)
 K @$$^W4MAIN("TMPHSB")
 S LK="" F  S LK=$O(@$$^W4GL("P1LHB")@(LK)) Q:LK=""  D
 .I '$$RNG(LK) Q
 .S HB="" F  S HB=$O(@$$^W4GL("P1LHB")@(LK,HB)) Q:HB=""  D
 ..I $P($G(^(HB)),"\",8)=DF D
 ...S @$$^W4MAIN("TMPHSB")@(HB)=LK_";"_DF
 ;
 ;
 N FIRST
 S FIRST=$O(@$$^W4MAIN("TMPHSB")@(""))
 I FIRST="" S FIRST=" "
 E  S FIRST=FIRST_";"_LK_";"_DF
 Q FIRST
 ;
 ;
GETNEXT(LK) ;--- NEXT INVOICE
 N A,DAT,GR S DAT="",GR=""
 ;
 I LK[";" D
 .S DAT=$P(LK,";",2)
 .S GR=$P(LK,";",3)
 .S LK=$P(LK,";")
 ;
 S A=""
 ;
 I $$HBNOW^W4L(LK)=1,DAT D  I A'="" Q A
 .N N,P1HL2,P1HL3,DF,OK
 .S DF=$$^%L1DC(DAT,3)
 .S OK=0
 .
 .I GR=1.5 D  Q  ; --- HADPASAT HESHBONIT BODEDET LE COL AZMANA
 ..S N="" F  S N=$O(@$$^W4MAIN("VRM")@(N)) Q:N=""  D  Q:OK
 ...I $G(^(N))'>DF S OK=1,A=LK_";1;1" K ^(N)
 .
 .S P1HL2=$$^W4GL("P1HL2")
 .S P1HL3=$$^W4GL("P1HL3")
 .
 .S N="" F  S N=$O(@P1HL2@(LK,N)) Q:N=""  D  Q:OK
 ..I GR,$D(@P1HL2@(LK,N,"WAS")) Q
 ..I $G(@P1HL2@(LK,N))'>DF D
 ...I $$ITRA^W4HZMST(N)>.05!($$ITRA^W4HZMST(N)<-.05),'$$^W4CLOSE(N) Q
 ...I '$$^W4CLOSE(N) D SETCLOSE^W4HZMST(N)
 ...S OK=1,@P1HL2@(LK,N,"WAS")=$H
 .
 .I 'OK S N="" F  S N=$O(@P1HL3@(LK,N)) Q:N=""  D  Q:OK
 ..I GR,$D(@P1HL3@(LK,N,"WAS")) Q
 ..I $G(@P1HL3@(LK,N))'>DF S OK=1,@P1HL3@(LK,N,"WAS")=$H
 .
 .I OK S A=LK_";1"
 ;
NXTLK ;
 S A=$O(@$$^W4MAIN("TMPHSB")@(LK))
 I A="" S A="<PUSTO>" Q A
 N LKN S LKN=A
 ;
 N QNORD S QNORD=$$GETP^%W1PRM("QNHBORD")
 I '$$ORDCONT^W4L(LK) S QNORD=0
 Q A_";"_QNORD
 ;
 ;
GETNEXTC(NOM) ;-- NEXT COPY
 N A
 S A=$O(@$$^W4MAIN("TMPHSB")@(NOM))
 N LKH S LKH=$G(^(NOM))
 N QNORD S QNORD=$$QNHBORD(LKH_";"_NOM)
 I '$$ORDCONT^W4L(LKH) S QNORD=0
 I A="" S A=" "
 E  S A=A_";"_LKH_";"_QNORD
 Q A
 ;
QNHBORD(PRM) ;
 Q $$QNHBORD^W4LHBNEW(PRM)
 ;
SELGROUP(ID) ; 
 W "<select id="""_ID_""">",!
  W "<option value=""ALL""> --- "_$$^%W1DICT("ALL")_" --- </option>",! 
  N N S N=0 F  S N=$O(@$$^W4GL("SUGL")@(N)) Q:N=""  D
  .W "<option value="""_N_""">"_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>",! 
 W "</select>",!
 Q 
 ;
SVPRM(PRM) ; 
 N MESUGL,ADSUGL,MELKH,ADLKH
 S MESUGL=$P(PRM,";")
 S ADSUGL=$P(PRM,";",2)
 S MELKH=$P(PRM,";",3)
 S ADLKH=$P(PRM,";",4)
 D PUT^%W1PRM("LHBGMESUGL",MESUGL)
 D PUT^%W1PRM("LHBGADSUGL",ADSUGL)
 D PUT^%W1PRM("LHBGMELKH",MELKH)
 D PUT^%W1PRM("LHBGADLKH",ADLKH)
 Q 1
 ;
CLEARPRM ; 
 D KILL^%W1PRM("LHBGMESUGL")
 D KILL^%W1PRM("LHBGADSUGL")
 D KILL^%W1PRM("LHBGMELKH")
 D KILL^%W1PRM("LHBGADLKH")
 Q
 ;
RNG(LKN) ; 
 I $$GETP^%W1PRM("LHBGMELKH"),LKN<$$GETP^%W1PRM("LHBGMELKH") Q 0
 I $$GETP^%W1PRM("LHBGADLKH"),LKN>$$GETP^%W1PRM("LHBGADLKH") Q 0
 N SUGLN S SUGLN=$$SUGL^W4L(LKN)
 I $$GETP^%W1PRM("LHBGMESUGL"),SUGLN<$$GETP^%W1PRM("LHBGMESUGL") Q 0
 I $$GETP^%W1PRM("LHBGADSUGL"),SUGLN>$$GETP^%W1PRM("LHBGADSUGL") Q 0
 Q 1 
 ;
VLDDAT(DAT) ; 
 I $$^%L1DC(DAT,3)-$H>31 Q "DATETOOLONG" 
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LHBGET
W4HSBGET(NOM) ; [ 23.07.09 10:56 ] [
 N KLIN,LK,LK0
 S KLIN=$$^W4GL("KLIN")_"(""H"")"
 S LK0=$G(@KLIN@(NOM)) Q:LK0=""
 K W4HSB
 I LK0["+" D  Q  ; -- AUTO
 .N LK S LK=$P(LK0,"+")
 .N STHB
 .S STHB=$G(@$$^W4GL("P1LHB")@(LK,NOM))
 .S W4HSB("TOT")=$P(STHB,"\",4)
 .S W4HSB("TODATE")=$P(STHB,"\",8)
 .S W4HSB("ISSUETIME")=$P(STHB,"\",3)
 ;
 N STHB
 S STHB=$G(@$$^W4GL("KLF")@(LK,"H",NOM))
 S W4HSB("TOT")=$J($P(STHB,"\",4),2,2)
 S W4HSB("TODATE")=$$^%L1DC($P(STHB,"\",4),1)
 S W4HSB("ISSUETIME")=$S($P(STHB,"\",5):$P(STHB,"\",5),1:W4HSB("TODATE"))
 ;
 Q

W4LHBNEW
W4LHBNEW ; [ 17.06.26 10:55 ] [ 29.01.26 12:41 ] [ 29.12.25 16:56 ] 
 N (JB,%ARG,%REM)
 S W4LHBNEW=""
 N LKH S LKH=$G(%ARG("LKH"))
 I LKH[";" S LKH=$P(LKH,";")
 ;
 S DAT=$G(%ARG("DAT"))
 D PUT^%W1PRM("DAT",DAT)
 ;
 S TZ=$G(@$$^W4MAIN("VRM"))
 I TZ,$$^W4TZ(TZ),'$$TZ^W4L(LKH) D PUT^W4L(LKH,TZ,"TZ")
 ;
 D KOTHSB($$NOM,LKH,DAT)
 ;
 S (HZMS,HZMF)=""
 D NEWHSB(LKH,DAT,HZMS,HZMF) ; -- !!!
 ;
 S RES=$$HZGHB(LKH) I RES'=1 D BACK Q  ; --> TEMPLH(1)
 ;
 D TEMPLH
 S SHUM=$G(@TEMPLH@("SHUM")) ; --- !!!
 S SHUMMAM=$G(@TEMPLH@("SHUMMAM"))
 I SHUMMAM="" S SHUMMAM=SHUM
 S CMNT(0)=$P($G(@TEMPLH@(1)),"\",2)
 S BFTAX(0)=$J($P($G(@TEMPLH@(1)),"\",1),2,2)
 S AFTAX(0)=$J($P($G(@TEMPLH@(1)),"\",3),2,2) ; --- !!!
 S SHUM=AFTAX(0)
 ;
 I '$D(W4LHBNEW) D
 .S I=1 F  S I=$O(@TEMPLH@(I)) Q:I=""  I I D
 ..S CMNT(I-1)=$P($G(@TEMPLH@(I)),"\",2)
 ..S BFTAX(I-1)=$J($P($G(@TEMPLH@(I)),"\",1),2,2)
 ..S AFTAX(I-1)=$J($P($G(@TEMPLH@(I)),"\",3),2,2)
 ..I BFTAX(I-1),'AFTAX(I-1) D  ; --- ???
 ...S AFTAX(I-1)=$J(BFTAX(I-1)*(100+$$MAMD^W4L($$^%L1DC(DAT),3))*.01,2,2)
 ..S SHUM=SHUM+AFTAX(I-1)
 ..S SHUMMAM=SHUMMAM+AFTAX(I-1)
 ;
 D DAF1
 ;
 I '$G(%ARG("PRINT"))!$$GRNOW D DAF2
 ;
 I $G(%ARG("PRINT")),$G(%ARG("ORDLIST")),'$$GRNOW D
 .I '$$GETP^%W1PRM("MKRYD")&($G(%ARG("ORDLIST"))=2) Q
 .D DAF2
 ;
 W "<br/>"
 ;
 D DIVBUT
 Q
 ;
 ;
KOTHSB(NOM,LKH,DAT) ;
 D ^W4KOTHSB(NOM,LKH,DAT,$S($$HBZ:"HBZ",1:"HB"))
 Q
 ;
 ;
DAF1 ;
 ;-- INPUT CMNT(), BFTAX(), AFTAX() ,SHUM , LMAM (IF NOT NEW)
 N (JB,%ARG,LKH,DAT,CMNT,BFTAX,AFTAX,SHUM,SHUMMAM,LMAM,IGUL,AHMAM,W4LHBNEW,W4HSB)
 D TEMPLH
 ;
 I '$D(SHUMMAM) D  ; ***
 .I '$$NOM!'$G(LKH) S SHUMMAM=SHUM Q 
 .D GLHB
 .I $D(@GLHB@($$NOM,"HB","SHUMMAM"))#2 S SHUMMAM=^("SHUMMAM") Q
 .S SHUMMAM=SHUM
 ;
 W "<table id=""TblInvcBd"" dir="""_$$^%W1DIR_""" width=""96%"" border=""1"" cellspacing=""0"">",!
  W "<tr>"
    S WDLHB=70
    I $$NOLHBAFTAX^W4PRM S WDLHB=80
    W "<th width="""_WDLHB_"%"">"_$$^%W1DICT("COMMENT")_"</th>"
    W "<th>"_$$^%W1DICT("BEFORETAX")_"</th>"
    I '$$NOLHBAFTAX^W4PRM D
    .W "<th>"_$$^%W1DICT("AFTERTAX")_"</th>",!
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$H2U^%L1FRM($G(CMNT(0)))_"</td>"
   W "<td dir=""LTR"" align=""right"">"_$$BF(0)_"</td>"
   I '$$NOLHBAFTAX^W4PRM D
   .W "<td dir=""LTR"" align=""right"">"_$$AF(0)_"</td>"
   ;
   S SLMAM=$G(BFTAX(0))
   S SAMAM=$G(AFTAX(0))
  W "</tr>",!
  ;
  D COLST
  ;
  S IGUL=0,AHMAM=$$MAMD^W4L($$^%L1DC(DAT,3))
  ;
  I $D(W4LHBNEW) D  ; -- DOP STROKI V NOV HSB
  .F I=1:1:COLST D
  ..W "<tr><td><input type=""text"" size=""60"" id=""cmnt"_I_""" size=""60"" maxlength=""60"" onBlur=""SetSt('"_I_"')""></td>",!
  .. W "<td><input type=""text"" dir=""LTR"" size=""8"" id=""bft"_I_""" maxlength=""8"" onKeyUp=""ChangeSum('"_I_"','1')"" onBlur=""SetSt('"_I_"')"" onFocus=""this.select()"" ></td>",!
  .. I '$$NOLHBAFTAX^W4PRM D
  .. .W "<td><input type=""text"" dir=""LTR"" size=""8"" id=""aft"_I_""" maxlength=""8"" onKeyUp=""ChangeSum('"_I_"','2')"" onBlur=""SetSt('"_I_"')"" onFocus=""this.select()"" ></td>",!
  ..W "</tr>",!
  .S SHUM=$J(SAMAM,2,2) ; --- ???
  ;
  I '$D(W4LHBNEW) D  ;--- DOP STROKI B HSB KAYEMET
  .F I=1:1:COLST D
  ..I $G(CMNT(I))="",'$G(BFTAX(I)),'$G(AFTAX(I)) Q
  ..W "<tr><td>"_$$H2U^%L1FRM($G(CMNT(I)))_"</td>"
  .. W "<td "_$$LTR_">"_$$BF(I)_"</td>" S SLMAM=SLMAM+$G(BFTAX(I))
  .. I '$$NOLHBAFTAX^W4PRM D
  ... W "<td "_$$LTR_">"_$$AF(I)_"</td>"
  .. S SAMAM=SAMAM+$G(AFTAX(I))
  .. S SHUMMAM=SHUMMAM+$G(AFTAX(I))
  ..W "</tr>",!
  .
  .;;S SHUM=SLMAM*(100+$$MAMD^W4L($$^%L1DC(DAT,3)))*.01 ; --- ??? ???
  .S SHUM=SAMAM ; --- 28/01/21
  .
  .I '$$^W4NOIGUL D
  ..N SHUM0 S SHUM0=SHUM
  ..S SHUM=$J($$SUM^W4IGUL(SHUM,1),2,2)
  ..S IGUL=$J(SHUM-SHUM0,2,2)
  ..I $$NOM D
  ...I $G(W4HSB("TOT")) S SHUM=W4HSB("TOT")
  ...I $G(W4HSB("IGUL")) S IGUL=W4HSB("IGUL")
  ..;;S LMAM=$J(SHUM*100/(100+AHMAM),2,2) ; -- ??? ???
  ..S LMAM=$J(SHUMMAM*100/(100+AHMAM)+(SHUM-SHUMMAM),2,2) ; -- 28/01/21
  ;
  ;;S MAM=$J(SHUM-SLMAM,2,2) ; --- ???
  S MAM=$J(SHUMMAM*AHMAM/(100+AHMAM),2,2) ; --- 28/01/21
  ;
  I $$NOM<0!$$NEWHBZ D
  .S MAM=-MAM,LMAM=-$G(LMAM),SHUM=-SHUM,SLMAM=-SLMAM,SAMAM=-SAMAM,SHUMMAM=-$G(SHUMMAM)
  ;
  W "<tr><td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
   W "<td id=""bftot"" "_$$LTR_$$STYLE_"><b>"_$J(SLMAM,2,2)_"</b></td>"
   I '$$NOLHBAFTAX^W4PRM D
   .W "<td id=""aftot"" "_$$LTR_$$STYLE_"><b>"_$J(SAMAM,2,2)_"</b></td>"
  W "</tr>",!
  ;
  I $$NOMAM^W4PRM D
  .W "<tr><td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTALMAM")_"&nbsp;</td>"
  . W "<td id=""bfmam"" "_$$LTR_$$STYLE_"><b>"_$J(SHUMMAM*100/(100+AHMAM),2,2)_"</b></td>"
  . I '$$NOLHBAFTAX^W4PRM D
  . .W "<td id=""afmam"" "_$$LTR_$$STYLE_"><b>"_$J(SHUMMAM,2,2)_"</b></td>"
  .W "</tr>",!
  .W "<tr><td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("TOTALNOMAM")_"&nbsp;</td>"
  . W "<td id=""bfnomam"" "_$$LTR_$$STYLE_"><b>"_$J(SHUM-SHUMMAM,2,2)_"</b></td>"
  . I '$$NOLHBAFTAX^W4PRM D
  . .W "<td id=""afnomam"" "_$$LTR_$$STYLE_"><b>"_$J(SHUM-SHUMMAM,2,2)_"</b></td>"
  .W "</tr>",!
  ;
  I IGUL D
  .W "<tr>"
  . W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("IGUL")_"&nbsp;</td>"
  . W "<td id=""igul"" "_$$LTR_"><b>"_$J(IGUL*100/(100+AHMAM),2,2)_"</b></td>"
  . I '$$NOLHBAFTAX^W4PRM D
  . .W "<td id=""igul"" "_$$LTR_"><b>"_IGUL_"</b></td>"
  .W "</tr>",!
  ;
  W "<tr>"
   W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TAX",AHMAM_"%")_"&nbsp;</td>"
   W "<td id=""tax"" "_$$LTR_$$STYLE_"><b>"_MAM_"</b></td>"
   I '$$NOLHBAFTAX^W4PRM D
   .W "<td></td>"
  W "</tr>",!
  ;
  W "<tr><td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("AFTERTAX")_"&nbsp;</td>"
   W "<td id=""tot"" "_$$LTR_$$STYLE_"><b>"_$J(SHUM,2,2)_"</b></td>" ; --- ???
   I '$$NOLHBAFTAX^W4PRM D
   .W "<td></td>"
  W "</tr>",!
  ;
  W "</table>",!
  ;
  W "<br /><br />"
 Q
 ;
 ;
STYLE(STAM) ;
 I $$HBZ Q " style=""color:red"" "
 Q ""
 ;
DAF2 ;
 ;-- INPUT IT, SHUM
 ;         ^TEMPL
 ;  1       2      3      4      5     6      7
 ; ORDER ; CUST ; NAME ; DATE ; TIME ; SUM ; AUTH ;
 ;
 W "<div id=""page2"">",!
 ;
 D DEFTEMPL
 ;
 I $D(@$$^W4GL("P1EZLI")@(LKH))<10!($G(@$$^W4GL("P1EZLI")@(LKH))=0) D TEMPLSORTDATE
 ;
 N I F I=1:1 Q:'$D(@TEMPL@(I))
 I I>10 W "<p style=""page-break-before:always"">",!
 ;
 W "<div dir="""_$$^%W1DIR_""">",!
 D
 .N NOM,SUGD S NOM=$$NOM,SUGD=""
 .I NOM<0 S NOM=-NOM,SUGD="iekif"
 .W " <span style=""color:black;font-size:"_$$^W3FSZ(14)_";text-align:center"">"_$$^%W1DICT($S($$W4LKH:"DLVDOCSLIST",1:"ORDERSLIST"),NOM_"<>"_SUGD)_"</span>"
 .I $$^W4ISCDLK($G(LKH)) D
 ..W " <br><span style=""color:black;font-size:"_$$^W3FSZ(14)_";text-align:center"">"_$$H2U^%L1FRM($$LKH^W4L(LKH))_"</span>"
 W "</div>",!
 ;
 W "<table id=""TblInvcAp"" dir="""_$$^%W1DIR_""" width=""96%"" border=""1"" cellspacing=""0"">",!
 W "<tr>"
  W "<th>"_$$^%W1DICT($S($$W4LKH:"DELIVERYDOC",1:"ORDER"))_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  I $$COMP^W3PRM D
  .W "<th>"_$$^%W1DICT("MAZMIN")_"</th>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("TIME")_"</th>"
  W "<th>"_$$^%W1DICT("BEFORETAX")_"</th>"
  W "<th>"_$$^%W1DICT("AFTERTAX")_"</th>"
  W "<th>"_$$^%W1DICT("DELIVERYDOC")_"</th>"
  D
  .I $$GIMA^W4PRM  W "<th>"_$$^%W1DICT("QNITEMS")_"</th>" Q
  .W "<th>"_$$^%W1DICT("AUTHORITY")_"</th>"
 W "</tr>",!
 ;
 N IT,SHUM,SLMAM,SHUMMAM S IT=0,SHUM=0,SHUMMAM=0,SHZ=0,SLMAM=0
 N ORD,CUST,NAME,MAZMIN,DATE,TIME,SUM,ASM,TM
 ;
 D TEMPLIT K @TEMPLIT
 ;
 F I=1:1 Q:'$D(@TEMPL@(I))  D
 .S IT=IT+1
 .N A S A=$G(^(I))
 .S ORD=$P(A,"\")
 .S CUST=$P(A,"\",2)
 .S NAME=$P(A,"\",3)
 .S MAZMIN=""
 .I ORD D
 ..S MAZMIN=$$MAZMIN^W4HZMST(ORD)
 ..D PARORD(ORD)
 .S DATE=$P(A,"\",4)
 .S TIME=$P(A,"\",5)
 .S SUM=$P(A,"\",6)
 .S ASM=$P(A,"\",7)
 .I $$HZM^W4MSL(ORD) S ASM=$$HZMLAK^W4HZMST(ORD)
 .I $$GIMA^W4PRM,ORD S ASM=$$SQN(ORD)
 .I ASM="",$L(MAZMIN) S ASM=MAZMIN
 .S TM=$P(A,"\",8)
 .I 'TM S TM=$$TM^W4HZMST(ORD)
 .W "<tr onClick=""CurrentBorder(this.cells[0]);ShowOrder('"_ORD_"','ifr','1')"" style=""cursor:pointer"" >"
 .W " <td>"_$$RKV(ORD)_"</td>"
 .W " <td>"_$$RKV(CUST)_"</td>"
 .W " <td>"_$$RKV(NAME,"H")_"</td>"
 .I $$COMP^W3PRM D
 ..W " <td>"_$$RKV(MAZMIN,"H")_"</td>"
 .W " <td align=""center"">"_$$RKV(DATE)_"</td>"
 .W " <td align=""center"">"_$$RKV(TIME)_"</td>"
 .
 .N DT S DT=$$^%L1DC(DATE,3)
 .N AHMAM S AHMAM=$$MAMD^W4L(DT)
 .S LMAM=$J(SUM*100/(100+AHMAM),2,2)
 .
 .I $$SPA^%L1FRM(CUST)'?.P D
 ..S SHUM=SHUM+SUM,SHZ=SHZ+1
 ..N KMAM S KMAM=$$KMAM(ORD) 
 ..I KMAM<1 D
 ...N SNOMAM S SNOMAM=SUM-(SUM*KMAM)
 ...S LMAM=$J(SUM*KMAM*100/(100+AHMAM)+SNOMAM,2,2)
 ..S SHUMMAM=SHUMMAM+(SUM*KMAM)
 ..S SLMAM=SLMAM+LMAM
 .
 .W " <td dir=""LTR"" align=""right"">"_$$RKV(LMAM,"N")_"</td>" ; --- !!!
 .W " <td dir=""LTR"" align=""right"">"_$$RKV(SUM,"N")_"</td>" ; --- !!!
 .W " <td align=""center"">"_$$RKV(TM)_"</td>"
 .W " <td>"_$$RKV(ASM,"H")_"</td>"
 .W "</tr>",!
 ;
 W "<tr style=""font-weight:bold"">"
  N COL S COL=4 I $$COMP^W3PRM S COL=5
  W "<td colspan="""_COL_""">"_$$^%W1DICT($S($$W4LKH:"TOTALDLVDOCS",1:"TOTALORDERS"))
   W " : <span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"_SHZ_"</span>"
  W "</td>"
  W "<td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
  W "<td dir=""LTR"" "
   W "style=""color:black;font-size:"_$$^W3FSZ(12)_";text-align:right"">"
   W $$RKV($J(SLMAM,2,2),"N")
  W "</td>"
  ;
  W "<td dir=""LTR"" "
   W "style=""color:black;font-size:"_$$^W3FSZ(12)_";text-align:right"">"
   W $$RKV($J(SHUM,2,2),"N")
  W "</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
 W "</tr>",!
 W "</table>",!
 ;
 I $G(@$$^W4PRM@("PARHB")) D PARHB,SHOWPARHB
 ;
 W "</div>",!
 Q
 ;
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)["N" Q $S(VL<0!(PR="NZ"):"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0!(PR="NZ"):"</span>",1:"")
 Q VL
 ;
BF(I) ;
 N BF
 S BF=$J($G(BFTAX(I)),2,2)
 I $$NOM<0!$$NEWHBZ D
 .S BF="<span style=""color:red"">"_-BF_"</span>"
 Q BF
 ;
AF(I) ;
 N AF
 S AF=$J($G(AFTAX(I)),2,2)
 I $$NOM<0!$$NEWHBZ D
 .S AF="<span style=""color:red"">"_-AF_"</span>"
 Q AF
 ;
PARHB ;
 N (JB)
 D DEFTEMPL,TEMPLIT K @TEMPLIT
 F I=1:1 Q:'$D(@TEMPL@(I))  D
 .N A S A=$G(^(I))
 .S ORD=$P(A,"\")
 .I ORD D PARORD(ORD)
 Q
 ;
PARORD(ORD) ;
 N (JB,ORD)
 Q:$G(ORD)=""
 D TEMPLIT
 N N S N="" F  S N=$O(@$$^W4ORD@(ORD,N)) Q:N=""  I N D
 .S A=$G(^(N)),PAR=$P(A,"\") Q:$E(PAR)'?1N
 .S @TEMPLIT@(PAR)=$G(@TEMPLIT@(PAR))+$P(A,"\",5)
 .S @TEMPLIT@(PAR,ORD)=$G(@TEMPLIT@(PAR,ORD))+$P(A,"\",5)
 .S N1="" F  S N1=$O(@$$^W4ORD@(ORD,N,N1)) Q:N1=""  I $E(N1)?1N D
 ..S A1=$G(^(N1))  
 ..S @TEMPLIT@(N1)=$G(@TEMPLIT@(N1))+$P(A1,"\",3)
 ..S @TEMPLIT@(N1,ORD)=$G(@TEMPLIT@(N1,ORD))+$P(A1,"\",3)
 Q
 ;
SHOWPARHB ;
 N (JB) D TEMPLIT
 W "<p style=""font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("RIKUZPRITIM")
 W "</p>",! 
 W "<p></p>",!
 ;
 W "<table id=""TblPar"" dir="""_$$^%W1DIR_""" width=""36%"" border=""1"" cellspacing=""0"">",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th>"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("QUANT")_"</th>"
 W "</tr>",!
 ;
 N N S N="" F  S N=$O(@TEMPLIT@(N)) Q:N=""  D 
 .N QN S QN=+$G(^(N)) 
 . W "<tr>" 
 .  W "<td>"_N_"</td>"
 .  W "<td>"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
 .  W "<td>"_QN_"</td>"
 . W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
NEWHSB(LKH,DAT,HZMS,HZMF) ;
 N (JB,%ARG,%REM,LKH,DAT,HZMS,HZMF,SHUM)
 S DATF=DAT,DF=$$^%L1DC(DATF,3)
 S HZMS=$G(HZMS)
 S HZMF=$G(HZMF)
 S IT=0,ITS=0,SHUM=0,SHUMMAM=0,SLKH=0,LKHO=""
 D GLHB
 ;
 D KILLTEMPL
 ;
 ;            ^TEMPL -SEFAH
 ;      ;     ^TMPLHB - FOR ^KLIN ( INVOICE IMAGE)
 ;
 I '$D(@$$^W4GL("P1EZLI")@(LKH))!($G(@$$^W4GL("P1EZLI")@(LKH))=0) D HSBL
 ;
 I $D(@$$^W4GL("P1EZLI")@(LKH)),$G(^(LKH))'=0 D  ;----- IHUD LAKOHOT
 .D HSBL
 .N LKHR S LKHR=LKH N LKH S LKH=""
 .F  S LKH=$O(@$$^W4GL("P1EZLI")@(LKHR,LKH)) Q:LKH=""  D
 ..S PRHZ=0,SLKH=0
 ..I LKH'=LKHR D HSBL I PRHZ D SLKH
 ;
 S @TEMPLH@("HZMS")=$G(HZMS)
 S @TEMPLH@("HZMF")=$G(HZMF)
 S @TEMPLH@("SHUM")=$G(SHUM) ; --- !!!
 S @TEMPLH@("SHUMMAM")=$G(SHUMMAM) ; --- !!!
 S @TEMPLH@("DF")=$G(DF)
 S @TEMPLH@("IT")=$G(IT)
 Q
 ;
 ;
KILLTEMPL ;
 D TEMPLH,TMPLHB,TEMPLIT,DEFTEMPL
 K @TEMPLH,@TMPLHB
 K @TEMPL,@TEMPLIT
 Q
 ;
 ;
HSBL ;--- POISK HAZM I FORM-E HESHB
 N N,FLST,HZM,TRH,ZMANK,SHAA,SHULA,ASR
 S PRHZ=0
 ;
 D P1HL1,P1HL2,P1HL3,P1HL4
 ;
 I $$HBZ D  G EHSBL
 .N END S END=0
 .S HZM="" F  S HZM=$O(@$$^W4MAIN("VRM")@(HZM)) Q:HZM=""  I $$CORRECT(HZM) D  Q:END
 ..I 'END,$D(@P1HL4@(HZM)) D HSBHZM4(LKH,HZM)
 ;
 I $$GRNONOW D  G EHSBL
 .N END S END=0
 .S N="" F  S N=$O(@P1HL2@(N)) Q:N=""  D  Q:END
 ..I $G(^(N))'>DF S HZM=N I $$^W4ISORD(HZM) D HSBHZM(LKH,HZM) I $$HBNOW(LKH) S END=1 Q
 .;
 .I 'END S N="" F  S N=$O(@P1HL3@(N)) Q:N=""  I $$CORRECT(N) D
 ..I $G(^(N))'>DF D HSBHZM3(LKH,N) ;
 ;
 ;--------- SINGLE
 N END S END=0
 S HZM="" F  S HZM=$O(@$$^W4MAIN("VRM")@(HZM)) Q:HZM=""  I $$CORRECT(HZM) D  Q:END
 .I HZM'["-" D HSBHZM(LKH,HZM) I $$HBNOW(LKH) S END=1 Q
 .I 'END,$D(@P1HL3@(HZM)) D HSBHZM3(LKH,HZM) I $$HBNOW(LKH) S END=1 Q
 ;
EHSBL I $G(HZMF)<$G(HZMF(LKH)) S HZMF=$G(HZMF(LKH))
 Q
 ;
 ;
HSBHZM(LKH,HZM) ;
 ;INP: LKH,HZM, LKHO,FLST
 ;OUT: HZMS,HZMF
 ;-------------------------
 N (JB,%ARG,LKH,HZM,LKHO,FLST,LKHR,HZMS,HZMF,KAMHZM,IT,ITS,SHUM,SHUMMAM,SLKH,W4LHBNEW,PRHZ)
 D P1HL1
 S A=0 D ^W4IN
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)") Q:'SHULA
 I 'TRH S TRH=$P(ZMANK," "),SHAA=$P(ZMANK,"  ",2)
 ;
 I $$ITRA^W4HZMST(HZM)>.1!($$ITRA^W4HZMST(HZM)<-.1),'$$^W4CLOSE(HZM) Q
 I '$$^W4CLOSE(HZM) D SETCLOSE^W4HZMST(HZM)
 ;
 N PR0 S PR0=0
 I $G(@$$^W4GL("P1EZLI")@(LKH))=0,$D(^(LKH))=11 S PR0=1
 D
 .N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB","ASR",N1)) Q:N1=""  D
 ..N STAS S STAS=$G(^(N1))
 ..N LKHZ S LKHZ=$P(STAS,"*")
 ..I 'PR0,LKHZ'=LKH Q
 ..I PR0,LKHZ'=LKH,$$LKHR^W4L(LKHZ)'=LKH Q
 ..I $D(@P1HL1@(HZM,N1,"HSB")) Q
 ..I $$^W4ISCDLK($G(LKHR)),$D(@$$^W4GL("P1HL1")@(LKHR,HZM,N1,"HSB")) Q
 ..S ASR=$P(STAS,"*",4)
 ..S TIPAS=$P(STAS,"*",20)
 ..S HZMLAK=$$HZMLAK^W4HZMST(HZM)
 ..I $$HZM^W4MSD(HZM),$P(@$$^W4ORD@(HZM,"CB","ASR",N1),"*",7)'="" D
 ...I $O(@$$^W4ORD@(HZM,"CB","ASR",1))>1!(HZMLAK="") D
 ....S HZMLAK=$P(@$$^W4ORD@(HZM,"CB","ASR",N1),"*",7) ; ASM
 ....I $TR(HZMLAK," ","")?1A.A,$TR(HZMLAK," ","")'?1U.U D
 .....S HZMLAK=$$H2U^%L1FRM($$INVH^%L1FRM(HZMLAK))
 ..D TEMPL
 ..S @$$^W4MAIN("TMPLHB")@(LKH,HZM)=(ASR+$G(@$$^W4MAIN("TMPLHB")@(LKH,HZM)))_"\"_$$^%L1DC(TRH,3)_"\"_$G(HZMLAK)_"\"_$G(SHAA)
 ..S @$$^W4MAIN("TMPLHB")@(LKH,HZM,N1)=""
 ;
 I '$D(FLST) S HZMS(LKH)=HZM,FLST="" D
 .I $G(HZMS)>HZMS(LKH)!'$G(HZMS) S HZMS=HZMS(LKH)
 ;
 S HZMF(LKH)=HZM,KAMHZM=IT-ITS
 Q
 ;
 ;
HSBHZM3(LKH,HZM) ;  ------ P1HL3 -- HAZMANOT MI SNIF AHER
 ;INP: LKH,HZM, LKHO,FLST
 ;OUT: HZMS,HZMF,SHUM,SHUMMAM,SLKH
 ;----------------------------
 N (JB,%ARG,%REM,LKH,HZM,LKHO,FLST,LKHR,HZMS,HZMF,KAMHZM,IT,ITS,SHUM,SHUMMAM,SLKH,PRHZ)
 D P1HL1,P1HL3,TMPLHB
 I $D(@P1HL1@(HZM,1,"HSB")) Q
 I $$^W4ISCDLK($G(LKHR)),$D(@$$^W4GL("P1HL1")@(LKHR,HZM,1,"HSB")) Q
 Q:'($D(@P1HL3@(HZM))#2)
 S A=0 D ^W4IN
 S ASR=$P(@P1HL3@(HZM),"*",2)
 S TRH=$P(@P1HL3@(HZM),"*",3)
 S SHAA=$P(@P1HL3@(HZM),"*",4)
 S HZMLAK=$P(@P1HL3@(HZM),"*",5)
 S LKH1=$P(@P1HL3@(HZM),"*",6)
 ;
 D TEMPL
 S @TMPLHB@(LKH,HZM)=(ASR+$G(@TMPLHB@(LKH,HZM)))_"\"_TRH_"\"_HZMLAK_"\"_SHAA_"\"_LKH1
 ;
 I '$D(FLST) D
 .S HZMS(LKH)=$P(HZM,"-",2),FLST=""
 .I $G(HZMS)>HZMS(LKH)!'$G(HZMS) S HZMS=HZMS(LKH)
 S HZMF(LKH)=$P(HZM,"-",2),KAMHZM=IT-ITS
 Q
 ;
 ;
HSBHZM4(LKH,HZM) ;  ------ P1HL4 -- TEUDOT HEHZER
 ;INP: LKH,HZM, LKHO,FLST
 ;OUT: HZMS,HZMF,SHUM,SHUMMAM,SLKH
 ;----------------------------
 N (JB,%ARG,%REM,LKH,HZM,LKHO,FLST,LKHR,HZMS,HZMF,KAMHZM,IT,ITS,SHUM,SLKH,PRHZ)
 D P1HL1,P1HL4,TMPLHB
 I $D(@P1HL1@(HZM,1,"HSB")) Q
 I $$^W4ISCDLK($G(LKHR)),$D(@$$^W4GL("P1HL1")@(LKHR,HZM,1,"HSB")) Q
 Q:'($D(@P1HL4@(HZM))#2)
 S A=0 D ^W4IN
 S ASR=$P(@P1HL4@(HZM),"*",2)
 S TRH=$P(@P1HL4@(HZM),"*",3)
 S SHAA=$P(@P1HL4@(HZM),"*",4)
 S HZMLAK=$P(@P1HL4@(HZM),"*",5)
 S LKH1=$P(@P1HL4@(HZM),"*",6)
 ;
 D TEMPL
 S @TMPLHB@(LKH,HZM)=(ASR+$G(@TMPLHB@(LKH,HZM)))_"\"_TRH_"\"_HZMLAK_"\"_SHAA_"\"_LKH1
 ;
 I '$D(FLST) D
 .S HZMS(LKH)=$P(HZM,"-",2),FLST=""
 .I $G(HZMS)>HZMS(LKH)!'$G(HZMS) S HZMS=HZMS(LKH)
 ;
 S HZMF(LKH)=$P(HZM,"-",2),KAMHZM=IT-ITS
 Q
 ;
 ;-------------------- PERUT HAZMANOT -----------------
TEMPL ; INP: LKH,LKHO,HZM,IT,TRH,ASR,HZMLAK           ;
 ;      OUT: SHUM,SHUMMAM,SLKH,IT,HZMS,  ^TEMPL($P,IT)        ;
 ;-----------------------------------------------------
 D DEFTEMPL
 I 'IT S LKHO=LKH,SLKH=0
 ;
 I HZM'["-" S LKH1="" N NMB,LKH1
 S NMB=LKH
 ;
 I $D(@$$^W4ORD@(HZM)) D
 .S NMB=$$NMB^W4HZMST(HZM),LKH1=$$NAME^W4HZMST(HZM)
 ;
 I $L(NMB)<4 S LKH1=$$LKH^W4L(LKH)
 I $L(NMB)>3,$G(LKH1)="" S LKH1=$$LKH^W4L(NMB)
 S IT=IT+1 S PRHZ=1
 S @TEMPL@(IT)=$P(HZM,"-",1,2)_"\"_$S($L(NMB)>3:NMB,1:LKH)_"\"_LKH1_"\"_TRH
 S @TEMPL@(IT)=@TEMPL@(IT)_"\"_$$^%L1CLRTM(SHAA)_"\"_ASR_"\"_$G(HZMLAK)_"\"_$G(TM)
 I IT=1,'$D(FLST) S (HZMS,HZMF)=HZM
 ;
 I $$CORRECT(HZM) D
 .S SHUM=SHUM+ASR,SLKH=SLKH+ASR ; --- !!!
 .N KMAM S KMAM=$$KMAM(HZM)
 .S SHUMMAM=SHUMMAM+(ASR*KMAM)
 Q
 ;
 ;
KMAM(HZM) ;
 N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM")) I KMAM="" S KMAM=1
 Q KMAM
 ;
HZGHB(LKH) ;
 ; INP: LKH,HZMS,HZMF
 N (JB,%ARG,%REM,LKH)
 D DEFTEMPL,TEMPLH,GLHB
 I $D(@TEMPL)<10 Q "NODATA!"
 S SHUM=$J($G(@TEMPLH@("SHUM")),2,2) ; --- !!!
 S SHUMMAM=SHUM
 I $D(@TEMPLH@("SHUMMAM"))#2 S SHUMMAM=^("SHUMMAM")
 S HZMS=$G(@TEMPLH@("HZMS"))
 S HZMF=$G(@TEMPLH@("HZMF"))
 S DF=$G(@TEMPLH@("DF"))
 ;
 S DS=$$^%L1DC($P($G(@$$^W4ORD@(+HZMS)),"\",29),3)-$G(@$$^W4PRM@("ITRAHZ"))
 ;
 S HOV=$$HOV(DS),LKH1=$$LKH^W4L(LKH)
 ;
 D
 .N DATF S DATF=$ZD(DF,"DD.MM.YY")
 .N DATS,HSB0 S HSB0=$O(@GLHB@(LKH,999999),-1)
 .S DATS=""
 .I HSB0 S DATS=$ZD($P(@GLHB@(HSB0),"\",8)+1,"DD.MM.YY")
 .I $$^%L1DC(DATS,3)<$$^%L1DC("01."_$E(DATF,4,8),3) S DATS="01."_$E(DATF,4,8)
 .I HZMS,HZMS=HZMF D  Q 
 ..S HRA=HZMS_$S($$HBZ:" xfgd zcerz",1:" dpnfd")_" xear"
 .
 .N NMDOC S NMDOC="zepnfd"
 .I $$^W4LKH S NMDOC="gelyn zecerz"
 .I $$HBZ S NMDOC="xfgd zecerz"
 .
 .I DATS,$$^%L1DC(DATS,3)<$$^%L1DC(DATF,3) D
 ..S HRA=DATF_" cr "_DATS_"-n dtewza "_NMDOC_" xear"
 .
 .I DATS,$$^%L1DC(DATS,3)'<$$^%L1DC(DATF,3) S HRA=DATF_" - l "_NMDOC_" xear" Q
 .S HRA=DATF_" cr "_NMDOC_" xear"
 .
 ;
 I $D(@TEMPL)<10,$G(HB),$D(@GLHB@(HB))<10 Q "NODATA!"
 ;
 S RMAM=$$MAM^W4L(LKH,$G(DF))
 ;
 ;;S @TEMPLH@(1)=$J(SHUM*100/(100+RMAM),2,2)_"\"_HRA_"\"_SHUM_"\@@" ; --- ??? !!!
 S @TEMPLH@(1)=$J(SHUMMAM*100/(100+RMAM)+(SHUM-SHUMMAM),2,2)_"\"_HRA_"\"_SHUM_"\@@" ; --- ??? !!!
 ;
 Q 1
 ;
 ;
TEMPLSORTDATE ;
 D DEFTEMPL
 N TMP,TMP1,A,ORD,DATE,TIME,IND
 N I F I=1:1 Q:'$D(@TEMPL@(I))  D
 .S A=$G(^(I))
 .S ORD=$P(A,"\")
 .S DATE=$P(A,"\",4)
 .S TIME=$P(A,"\",5)
 .S IND=$$^%L1DC(DATE,3)_$TR($J(I,5)," ",0)
 .S TMP(IND)=I
 ;
 S I=0
 N TMPG S TMPG=$$^W4MAIN("TMP")
 K @TMPG
 S IND="" F  S IND=$O(TMP(IND)) Q:IND=""  D
 .S I=I+1,@TMPG@(I)=$G(@TEMPL@(TMP(IND)))
 K @TEMPL
 M @TEMPL=@TMPG
 K @TMPG
 Q
 ;
 ;
NEW(PRM) ; -- SAVE NEW INVOICE
 N (JB,%ARG,%REM,PRM)
 S P1DZ=$$^W4DZ
 S DAT=$$GET^%W1PRM("DAT")
 S DT=$$^%L1DC(DAT,3)
 ;
 S LKH=$P(PRM,";"),TZ=$P(PRM,";",2),GR=$P(PRM,";",3)
 ;
 D GLHB,TEMPLH,TMPLHB,TEMPLIT,DEFTEMPL
 ;
 S SHUM=$J($$TOTH,2,2)
 I 'SHUM Q "NODATA!"
 ;
 S CODDOC="H"
 I SHUM'<0 S HB=$$^W4NEWNMB("H"),HB1=HB
 I SHUM<0!$$HBZ S HB=-$$^W4NEWNMB("TZ"),CODDOC="TZ",HB1=-HB
 ;
 S %TIM=$ZD($H,"24:60")
 ;
 S DF=$G(@TEMPLH@("DF"))
 I 'DF Q -1
 I DT'>50000 S DT=DF
 ;
 I '$$TZ^W4L(LKH),TZ D PUT^W4L(LKH,TZ,"TZ")
 ;
 N IGUL S IGUL=0
 ;
 I '$$^W4NOIGUL D
 .I +SHUM\1'=+SHUM,'$$^W4NOIGUL D
 ..N SHUM0 S SHUM0=SHUM
 ..S SHUM=$$SUM^W4IGUL(SHUM,1)
 ..S IGUL=SHUM-$J(SHUM0,2,2)
 ..S @GLHB@(HB,"IGUL")=$J(IGUL,2,2)
 ;
 S @GLHB@(HB)=$G(@TEMPLH@("HZMS"))_"\"_$G(@TEMPLH@("HZMF"))
 S @GLHB@(HB)=@GLHB@(HB)_"\"_$$^%L1DC($H,1)_"  "_%TIM_"\"_SHUM
 S $P(@GLHB@(HB),"\",7,8)=DT_"\"_DF
 S $P(@GLHB@(HB),"\",9)=$G(HRA1)
 ;
 S @GLHB@(HB,"AHMAM")=$$MAMD^W4L(DT)
 ;
 S LKHNAME=$$LKH^W4L(LKH)
 I LKH=$$^WVLKH,$G(@TEMPLH@("HZMS"))=$G(@TEMPLH@("HZMF")) D
 .N HZM S HZM=$G(@TEMPLH@("HZMS")) Q:'HZM
 .S LKHNAME=$G(@$$^W4ORD@(HZM,"CB","VC",1,"NAME"))
 ;
 S LKHADDR=$$KTVMM^W4L(LKH)
 ;
 L +@GLHB@(HB):1
 D COLST
 F I=1:1:COLST D
 .S $P(@GLHB@(HB),"\",9+I)=$P($G(@TEMPLH@(I)),"\",2) ;-- COMMENTS
 ;
 S @GLHB@(HB,"MKR")=""
 ;
 N I,J S J=1 F I=14:1:14+(COLST*2)-1 S:'(I#2) J=J+1 I $D(@TEMPLH@(J)) D
 .S $P(@GLHB@(HB),"\",I)=$P(@TEMPLH@(J),"\",$S(I#2:3,1:1))
 ;
 M @GLHB@(HB,"HB")=@TEMPLH
 M @GLHB@(HB,"HZ")=@TEMPL
 M @GLHB@(HB,"IT")=@TEMPLIT
 ;
 N QNORD S QNORD=$$QNHBORD(LKH_";"_HB)
 S @GLHB@(HB,"PR")=LKHNAME_"\"_LKHADDR_"\"_TZ
 L  ;
 D ^W4HSBSV(HB1,LKH,"+",DF,$S(CODDOC="TZ"&(SHUM<0):-SHUM,1:SHUM),CODDOC,"A") ; --> KLIN,KLF,KLUP
 ;
 L +@$$^W4GL("KLIN")@(CODDOC,HB1)
 S MAC1=TMPLHB,MAC2=$$^W4GL("KLIN")_"(CODDOC,HB1)" D ^%S1GC1
 ;
 N N,N1
 S N="" F  S N=$O(@TMPLHB@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@TMPLHB@(N,N1)) Q:N1=""  D
 ..L +@$$^W4GL("P1HL1")@(N,N1):1
 ..I $D(@TMPLHB@(N,N1))=1 S @$$^W4GL("P1HL1")@(N,N1,1,"HSB")=HB
 ..S N2="" F  S N2=$O(@TMPLHB@(N,N1,N2)) Q:N2=""  D
 ...S @$$^W4GL("P1HL1")@(N,N1,N2,"HSB")=HB
 ..
 ..I N1["DOC-" D
 ...N TM S TM=$P(N1,"-",2)
 ...N NDOC S NDOC=$P($G(@$$^W4KLIN@("TM",TM)),"W",2) Q:NDOC=""
 ...S @$$^W4GL("W4DOC")@(NDOC,"TM","HB")=HB
 ...D ^%S3GLSV($$^W4GL("W4DOC")_"("""_NDOC_""",""TM"",""HB"")",$$^W4FGIB)
 ..
 ..I '$$HBZ D
 ...L +@$$^W4GL("P1HL3A")@(N,N1):1
 ...M @$$^W4GL("P1HL3A")@(N,N1)=@$$^W4GL("P1HL3")@(N,N1)
 ...L +@$$^W4GL("P1HL2")@(N,N1):1
 ...L +@$$^W4GL("P1HL3")@(N,N1):1
 ...K @$$^W4GL("P1HL2")@(N,N1),@$$^W4GL("P1HL3")@(N,N1)
 ...I N1'["DOC-",'$D(@$$^W4ORD@(N1,"ETHB2")) D SGHZ^W4SUM(N1)
 ...
 ...D ^%S3GLSV($$^W4GL("P1HL1")_"("""_N_""","""_N1_""")",$$^W4FGIB)
 ...D ^%S3GLSV($$^W4GL("P1HL3A")_"("""_N_""","""_N1_""")",$$^W4FGIB)
 ...D ^%S3GLSV($$^W4GL("P1HL2")_"("""_N_""","""_N1_""")",$$^W4FGIB,"K")
 ...D ^%S3GLSV($$^W4GL("P1HL3")_"("""_N_""","""_N1_""")",$$^W4FGIB,"K")
 ...L  ;
 ..
 ..I $$HBZ D
 ...L +@$$^W4GL("P1HL4")@(N,N1):1
 ...K @$$^W4GL("P1HL4")@(N,N1)
 ...D ^%S3GLSV($$^W4GL("P1HL4")_"("""_N_""","""_N1_""")",$$^W4FGIB,"K")
 ...L  ;
 ;
 D GLHB
 N TZOPR S TZOPR=$$GETP^%W1PRM("TZOPR")
 I TZOPR S @GLHB@(HB,"OPRTRTZ")=TZOPR
 ;
 D PUT^%W1PRM("MKRYD",HB_"HB")
 D PUT^%W1PRM("QNHBORD",QNORD)
 ;
 
 I $$SUM^W4HBMAS D HBMAS(HB,CODDOC)
 ;
 D KILLTEMPL
 Q HB
 ;
 ;
TOTH(STAM) ;
 N I,SUM,LF,AF S SUM=0
 N AHMAM S AHMAM=$$MAM^W4PRM
 ;
 S I="" F  S I=$O(@TEMPLH@(I)) Q:I=""  I I D
 .S LF=$P($G(^(I)),"\")
 .;;S AF=$J(LF*(100+AHMAM)*.01,2,2) ; --- ??? ???
 .S AF=$P($G(^(I)),"\",3) ; --- 28.01.21
 .S SUM=SUM+AF
 .I LF,'$P($G(^(I)),"\",3) S $P(^(I),"\",3)=$J(LF*(100+AHMAM)*.01,2,2)
 ;
 Q SUM
 ;
 ;
SLKH ;
 S IT=IT+1,@$$^W4MAIN("TEMPL")@(IT)="------- "_$G(LKH)_"\------\---------------\------\: -----\"_SLKH_"\\@@"
 S IT=IT+1,@$$^W4MAIN("TEMPL")@(IT)="\\\\\\\@@"
 S ITS=ITS+2
 Q
 ;
 ;------------------------------------- SOF HAZMANA HADASHA ----
LKHB ;
 D GLHB
 S NSTART="",NFIN=9999999,HB0=$ZP(@GLHB@(9999999))
 I HB0 S NSTART=$P(@GLHB@(HB0),"\",2)
 S RMAM=$G(@$$^W4PRM@("MAM")) I $$NOMAM^W4L(LKH) S RMAM=0
 Q
 ;
GLHB ;
 S GLHB=$$^W4GL("P1LHB")_"(LKH)"
 Q
P1HL1 ;
 S P1HL1=$$^W4GL("P1HL1")_"(LKH)"
 Q
P1HL2 ;
 S P1HL2=$$^W4GL("P1HL2")_"(LKH)"
 Q
P1HL3 ;
 S P1HL3=$$^W4GL("P1HL3")_"(LKH)"
 Q
P1HL4 ;
 S P1HL4=$$^W4GL("P1HL4")_"(LKH)"
 Q
TEMPLH ;
 S TEMPLH=$$^W4MAIN("TEMPLH")
 Q
TMPLHB ;
 S TMPLHB=$$^W4MAIN("TMPLHB")
 Q
DEFTEMPL ;
 S TEMPL=$$^W4MAIN("TEMPL")
 Q
 ;
TEMPLIT ;
 S TEMPLIT=$$^W4MAIN("TEMPLIT")
 Q
 ;
HOV(DT) ;
 K KLOST,KLOSTP
 I '$G(@$$^W4PRM@("ITRAHZ")) Q $$CBH^W4KLOST(LKH,DT)
 ;
 N DAT0,DAT2,DD,STRING,NN,BUY,PAY
 S DAT=$$^%L1DC($$^%L1DC(DT,1),2)
 S DAT0=DAT,DAT2=$$^%L1DC($$^%L1DC($H,1),2)
 S DD=$E(DAT,5,6)
 S STRING=LKH D ^W4KLOST
 Q ITRA0
 ;
COLST S COLST=3
 Q
 ;
PRMTZMAM(STAM) ;
 Q $$PRMTZMAM^W4HSBYAD
 ;
ERR(LKH,ER) ;
 S @$$^W4MAIN("TMPHBERR")@(LKH)=ER
 Q
 ;
CORRECT(HZM) ;
 I $$^W4ISORD(HZM) Q 1
 I $P(HZM,"DOC-",2)>0 Q 1
 I $P(HZM,"TMZ-",2)>0 Q 1
 Q 0
 ;
PUTST(PRM) ;
 D TEMPLH
 N SH,CMNT,BF,AF
 S SH=$P(PRM,";") Q:SH<1
 S CMNT=$$CNWEB^%L1FRM($P(PRM,";",2))
 S BF=$J($P(PRM,";",3),2,2)
 S AF=$J($P(PRM,";",4),2,2) ; --- !!!
 N DT,DAT S DAT=$$GETP^%W1PRM("DAT") 
 I 'DAT S DT=$$^W4DZ
 I DAT S DT=$$^%L1DC(DAT,3)
 ;
 N AHMAM S AHMAM=$$MAMD^W4L(DT)
 I BF,'AF,AHMAM S AF=$J(BF*(100+AHMAM)*.01,2,2)
 S @TEMPLH@(SH+1)=BF_"\"_$$INVH^%L1FRM(CMNT)_"\"_AF
 Q
 ;
LTR(STAM) ;
 Q " dir=""LTR"" align=""right"" "
 ;
W4LKH(STAM) ;
 I $$^W4LKH Q 1
 Q 0
 ;
NOM(STAM) ;
 Q $G(%ARG("NOM"))
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 D LISTCONT
 ;
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   I '$$NOBIGMDP^W4PRM D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDPRINT"),"Submit('"_LKH_"')","color:green",",,,100")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   ;
   I $$CSR^W4LCBCR D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("CSRPrint",$$^%W1DICT("SUBMITANDCSRPRINT"),"Submit('"_LKH_"',1)","color:green",",,,200")
   .W "</td>"
   .W "<td>&nbsp;</td>",!
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
CHECKED(LKH) ;
 Q ""
 ;
CHECKORDLIST(LKH,NS) ;
 N VL S VL=+$$ORDLIST^W4L(LKH)
 I VL=NS Q " selected=""selected"" "
 Q ""
 ;
CHECKORDCONT(LKH,NS) ;
 N VL S VL=$$ORDCONT^W4L(LKH)
 I +VL=+NS Q " selected=""selected"" "
 Q ""
 ;
LISTCONT ;
 W "<div id=""listcont"" >",!
 W "<table dir="""_$$^%W1DIR_""" width=""60%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("PRINTORDERLIST")_" "
    W "<select id=""ordlist"">"
     W "<option value=""1"" "_$$CHECKORDLIST(LKH,1)_" >"_$$^%W1DICT("PRINTINORGONLY")_"</option>",!
     W "<option value=""2"" "_$$CHECKORDLIST(LKH,2)_" >"_$$^%W1DICT("PRINTINORGANDCOPY")_"</option>",!
     W "<option value=""0"" "_$$CHECKORDLIST(LKH,0)_" >"_$$^%W1DICT("NOPRINT")_"</option>",!
    W "</select>",!
   W "</td>"
   W "<td>"
     W $$^%W1DICT("PRINTORDERSCONTENT")_" "
     W "<select id=""ordcont"">"
      W "<option value=""0"" "_$$CHECKORDCONT(LKH,0)_" >"_$$^%W1DICT("NOPRINT")_"</option>",!
      W "<option value=""1"" "_$$CHECKORDCONT(LKH,1)_" >"_$$^%W1DICT("PRINTINORGONLY")_"</option>",!
      W "<option value=""2"" "_$$CHECKORDCONT(LKH,2)_" >"_$$^%W1DICT("PRINTINORGANDCOPY")_"</option>",!
     W "</select>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
QNHBORD(PRM) ; INPUT: LKH ,HB
 N LKH,HB
 S LKH=$P(PRM,";"),HB=$P(PRM,";",2)
 I '$$^W4ISCDLK(LKH) Q 0
 I 'HB Q 0
 D GLHB
 N HZ,NP,K S NP="",K=0
 F  S NP=$O(@GLHB@(HB,"HZ",NP)) Q:NP=""  D
 .S HZ=$P($G(^(NP)),"\") I HZ S K=K+1
 Q K
 ;
QNHBORDP(PRM)
 N LKH,HB
 S LKH=$P(PRM,";"),HB=$P(PRM,";",2)
 I 'LKH Q 0
 I 'HB Q 0
 I '$$ORDCONT^W4L(LKH) Q 0
 Q $$QNHBORD(PRM)
 ;
HBNOW(LKH) ; 
 I $$HBNOW^W4L(LKH),$$HBNOWMONTH^W4PRM Q 1
 Q 0 
 ;
GRNONOW(STAM) ; 
 N GR S GR=$G(%ARG("GROUP"))
 I GR,GR'=1.5 Q 1
 Q 0
 ;
GRNOW(STAM) ;
 Q ($G(%ARG("GROUP"))=1.5)
 ;
BACK ; 
 W "<script>",!
 I '$$GRNONOW W "MsgA('"_RES_"');",!
 W " Back()",!
 W "</script>",!
 Q
 ;
MELKH(STAM) ; 
 Q $$GETP^%W1PRM("LHBGMELKH")
 ; 
ADLKH(STAM) ; 
 Q $$GETP^%W1PRM("LHBGADLKH")
 ; 
MESUGL(STAM) ; 
 Q $$GETP^%W1PRM("LHBGMESUGL")
 ; 
ADSUGL(STAM) ; 
 Q $$GETP^%W1PRM("LHBGADSUGL")
 ; 
HBZ(STAM) ; 
 I $$GETP^%W1PRM("VD")="HBZ"!($G(%ARG("VD"))="HBZ") Q 1 
 Q 0 
NEWHBZ(STAM) ; 
 Q '$$NOM&$$HBZ 
 ;
SQN(ORD) ; 
 I '$G(ORD) Q 0
 N SQN S SQN=0 
 N N S N="" F  S N=$O(@TEMPLIT@(N)) Q:N=""  D
 .I $G(^(N,ORD)) S SQN=SQN+^(ORD)
 Q SQN 
 ;
 ; 
HBMAS(HB,CODDOC) ; 
 N (JB,%ARG,%REM,HB,CODDOC)
 ;;S ^AA("W4LHBNE-HBMAS","HB")=HB
 ;;S ^AA("W4LHBNE-HBMAS","CODDOC")=CODDOC
 S (RES,HBMAS)=""
 S DZ=$$^W4DZ
 N HBMAS S HBMAS=$$GETNOM^W4HBMAS(HB,CODDOC) I HBMAS Q
 S VUID=DZ_"_"_$$^W4MYDVN_"_"_$P($H,",",2)_"_"_CODDOC_"_"_HB
 S VATNUM=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",4))),"#",""),"_")
 S VATUN=$$SPA^%L1FRM($$MEUHAD^W4PRM)
 ;
 D ^W4HSBGET(HB,CODDOC)
 ;
 S AHMAM=$$MAMD^W4L(DZ)
 ;
 N SUMHB S SUMHB=W4HSB("TOT")
 ;
 S HBMASSUM=$$SUM^W4HBMAS
 S LMAM=$J(W4HSB("LMAM"),2,2)
 I $$ABS^%L1FRM(LMAM)<HBMASSUM!'HBMASSUM Q
 ;
 I '$D(W4HSB("TODATE")) S W4HSB("TODATE")=$ZD("DD.MM.YY")
 I '$D(W4HSB("ISSUETIME")) S W4HSB("ISSUETIME")=$ZD("DD.MM.YY")
 ;
 S HBDAT=$$DAT^W4HBMAS(W4HSB("TODATE"))
 S DATPC=$P(W4HSB("ISSUETIME")," ")
 S HBDATPC=$$DAT^W4HBMAS(DATPC)
 ;
 S DISC=$G(W4HSB("DISCNIS"))
 S DISC=$J(DISC*100/(100+AHMAM),2,2)
 ;
 S MAM=W4HSB("MAM")
 ;
 S VATLK=$G(W4HSB("TZ"))
 I 'VATLK S VATLK=$$VATLK^W4HBMAS(HB,CODDOC)
 ;
 S TZOPR=$G(W4HSB("OPRTRTZ"))
 I 'TZOPR S TZOPR=$G(@$$^W4GL("W4HBMAS")@(CODDOC,HB,"OPRTRTZ"))
 S TZOPR=+TZOPR
 ;
 S PARAM=VUID_";"_+VATNUM_";"_+VATUN_";"_+VATLK
 S PARAM=PARAM_";"_HBDAT_";"_HBDATPC_";;;"_LMAM_";"_DISC_";"_MAM_";"_TZOPR
 ;;S ^AA("W4LHBNEW-HBMAS","PARAM")=PARAM
 ;
 K @$$^W4GL("W4HBMAS")@(CODDOC,HB,"ERROR")
 ;
 D ^W4HBMAS("HBMAS",PARAM)
 Q
 ;
 ;
GET(NM) ; 
 Q $$GET^W4EMV4(NM) 
 ;
ERHBMAS(PRM) 
 N HB,CODDOC
 S HB=$P(PRM,";")
 S CODDOC=$P(PRM,";",2)
 N HBMAS S HBMAS=$$GETNOM^W4HBMAS(HB,CODDOC) I HBMAS Q 0 
 N ER S ER=$$ERROR^W4HBMAS(HB,CODDOC) I ER=""!(ER=0)!(ER=200) Q 0
 Q ER 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LHBREP
W4LHB ; [ 29.09.15 10:34 ] [ 24.05.10 11:58 ] [ 26.06.09 10:12 ]
 N LKH S LKH=$G(%ARG("LKH"))
 W "<div align=""center"">",!
 W "<br><br><br>",!
 W "<table border=""0"" style=""padding:10px;border:ridge;2px"" dir="""_$$^%W1DIR_""">"
  D LINE
  W "<tr>"
    W "<td colspan=""2""><table width=""100%"" ><tr>"
     W "<td>" W $$^%W1DICT("CUSTCODE")_"</td>"
     W "<td><input type=""text"" id=""custcd""  maxlength=""14"" size=""14"" value="""_LKH_""" onClick=""this.select()"">"
      W "&nbsp;<img src=""w3filter.jpg"" onClick=""Find('custcd','custcd!','LKH')"" >",!
     W "</td>"
     W "<td>"_$$^%W1DICT("NAME")_"</td>",!
     W "<td align=""right""><input type=""text"" id=""custnm"" size=""30"" value="""_$$H2U^%L1FRM($$LKH^W4L(LKH))_""">"
     W "</td>"
     ;
    W "</tr></table></td>"
  W "</tr>",!
  ;
  W "<tr>",!
    W "<td colspan=""2""><table><tr>"
     W "<td width=""22%"">" W $$^%W1DICT("ADDR")_" : </td>"
     W "<td><input type=""text"" readonly=""readonly"" id=""addr"" size=""45"" value="""_$$H2U^%L1FRM($$KTVM^W4L(LKH))_"""></td>",!
    W "</tr></table></td>",!
  W "</tr>",!
  ;
  W "<tr>",!
   W "<td COLSPAN=""2""><table border=""0"" width=""100%""><tr>",!
    W "<td width=""21%"">" W $$^%W1DICT("BALANCE")_" : </td>"
    W "<td dir=""LTR"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" id=""balance"" value="""_$$ITRA^W4L(LKH)_" >"
     W "<input type=""text"" size=""10"" readonly=""readonly"">",!
    W "</td>",!
    W "<td>" W $$^%W1DICT("TODATE")_" : </td>"
    W "<td id=""todate"" dir=""LTR"" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >" D ^%W1DAT("DAT") W "</td>",!
   W "</tr></table></td>",!
 W "</tr>",!
 ;
 W "<tr><td colspan=""2"">&nbsp;</td></tr>",!
 ;
 W "<tr><td width=""50%"" align=""center"">"
  W "<select onClick=""ChoiceOption()"">",!
   W "<option value=""0"">"_$$^%W1DICT("CHOICEOPTION")_"</option>",!
   W "<option value=""1"">"_$$^%W1DICT("NEWINVOICE")_"</option>",!
   W "<option value=""2"">"_$$^%W1DICT("SHOWINVOICES")_"</option>",!
  W "</select>",!
  W "</td>",!
  W "<td align=""center"">"
   D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "</td>",!
 W "</tr>",!
 ;
 D LINE
 W "</table>",!
 W "</div>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>"
 Q
TEST(LKH) ;
 I $TR(LKH,"-","")?1N.N,$L(LKH)<4 Q "SHORT"
 I $$^W4ISCDLK($$CLR^W4CDLK(LKH)),$$DC^W4L(LKH) Q 1
 I $$^W4ISCDLK($$CLR^W4CDLK(LKH)),'$$DC^W4L(LKH) Q 0
 Q "FIND"

W4LHBVW
W4LHBVW ; [ 11.05.22 15:11 ] [ 13.12.21 14:07 ] [ 27.05.21 13:16 ] 
 N (JB,%ARG,%REM)
 N NOM S NOM=$G(%ARG("NOM"))
 I 'NOM S ER="INVALIDINVOICENUMBER" G MSGER
 S KLIN=$$^W4GL("KLIN")
 I NOM>0,'$D(@KLIN@("H",NOM)) S ER="INVOICENOTEXIST" G MSGER
 I NOM<0,'$D(@KLIN@("TZ",-NOM)) S ER="INVOICENOTEXIST" G MSGER
 I NOM>0 S LK0=$G(^(NOM))
 I NOM<0 S LK0=$G(^(-NOM))
 I LK0'["+" Q
 S LKH=$P(LK0,"+")
 I $G(%ARG("PRINT")) D PUT^%W1PRM("PRINT",%ARG("PRINT"))
 ;
 I LKH="" S ER="INVOICENOTEXIST" G MSGER
 ;
 D GLHB
 ;
 S A=$G(@GLHB@(NOM))
 I A="" S ER="INVOICENOTEXIST" G MSGER
 ;
 I $$PRINT=2 D  G:ER'="OK" MSGER Q  ; -- PRINT TO CSR PRINTER
 .I $$MAKOR(NOM) S @GLHB@($S(NOM>0:NOM,1:-NOM),"MKR")=$H
 .S ER=$$^W4PCLHB(NOM_";"_$$ORDLIST(LKH,NOM)_";"_$$ORDCONT(LKH,NOM))
 ;
 S DAT=$ZD($P(A,"\",8),"DD.MM.YY")
 ;
 D ^W4KOTHSB(NOM,LKH,DAT,"HB")
 ;
 D GETHSB(NOM,LKH,DAT)
 ;
 D DAF1
 ;
 D DEFTEMPL K @TEMPL
 I $D(@GLHB@(NOM,"HZ")) M @TEMPL=@GLHB@(NOM,"HZ")
 E  D
 .N N,I,A S I=0
 .S N="" F  S N=$O(^KLIN("H",NOM,LKH,N)) Q:N=""  S A=$G(^(N)) D
 ..S I=I+1
 ..N LKH1 S LKH1=$$LKH^W4L(LKH)
 ..I $$MM^W4PRM S LKH1=LKH1_"<BR>"_$$H2U^%L1FRM(+$$MSDHZM^W4HZMST(N))
 ..S @TEMPL@(I)=N_"\"_LKH_"\"_LKH1_"\"_$ZD($P(A,"\",2),"DD.MM.YY")_"\"_$P(A,"\",4)_"\"_$J($P(A,"\"),2,2)
 ;
 I $$ORDLIST(LKH,NOM) D DAF2
 ;
 ;
 W "<br/>"
 D DIVSIGN
 ;
 D DIVBUT
 ;
 I $$ACNTDOWN^W4PRM D ACNTDOWN^W4PCHBP
 ;
 I $$ORDCONT(LKH,NOM) D  ; --- PRINT ORDERS [ INVOICE
 .N NP,ORD S NP=""
 .F  S NP=$O(@GLHB@(NOM,"HZ",NP)) Q:NP=""  D
 ..S ORD=$P($G(^(NP)),"\") Q:'ORD
 ..D PGBREAK
 ..D ^W4PCHBP(ORD,0)
 ;
 Q
 ;
 ;
MSGER ;
 W "<script>",!
 W "MsgA('"_ER_"');",!
 W " Back()",!
 W "</script>",!
 Q
 ;
KOTHSB(NOM,LKH,DAT) ;
 D KOTHSB^W4LHBNEW(NOM,LKH,DAT)
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
DAF1 ;
 D DAF1^W4LHBNEW
 Q
 ;
DAF2 ;
 D DAF2^W4LHBNEW
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 ;
 I $$MAIL W "</div>" Q
 ;
 I $$MAILMKR D  Q
 . W "<input type=""button"" id=""printmail"" value="""_$$^%W1DICT("PRINT")_"""  onClick=""Print()"" style=""color:green"" >"
 . W "</div>",!
 ;
 I $$PRINT!$$MAIL W "</div>" Q
 ;
 W "<br>",!
 ;
 D LISTCONT^W4LHBNEW
 ;
 W "<br>",!
 ;
 D ^W4EMAIL(LKH,NOM,"HB",60)
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""60%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>&nbsp;</td>"
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PRINT"),"PrintAndBack('1')","color:green",",,,80")
   W "</td>"
   W "<td>&nbsp;</td>"
   ;W "<td>"
   ;  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PRINTWITHOUTDETAILS"),"PrintAndBack('0')","color:green",",,,160")
   ;W "</td>"
   ;W "<td>&nbsp;</td>"
   ;
   I $$CSR^W4LCBCR D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("CSRPrint",$$^%W1DICT("CSRPRINT"),"PrintAndBack('3')","color:green",",,,160")
   .W "</td>"
   .
   .I '$$^W4NOBACK D
   ..W "<td>&nbsp;</td>",!
   ;
   I $G(W4HSB("TOT"))>0,'$G(W4HSB("PAID")) D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Pay",$$^%W1DICT("PAY"),"Pay('"_NOM_"','"_LKH_"','"_$G(W4HSB("TOT"))_"')","color:blue",",,,80")
   .W "</td>"
   ;
   I '$$^W4NOBACK D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
   .W "</td>"
   ;
  W "</tr>",!
 W "</table>",!
 ;
 ;;D CRNEWMAIL^W4EMAIL(LKH,3)
 ;
 W "</div>",!
 Q
 ;
 ;
DIVSIGN ;
 W "<div id=""divsign"" style=""visibility:collapse"">"
 W "<br><br><br>"
 W "<table dir="""_$$^%W1DIR_""">"
  W "<tr>"
   W "<td width=""16%"">&nbsp; </td>",!
   W "<td>"_$$^%W1DICT("SIGNATURE")_"&nbsp;&nbsp;________________</td>",!
   W "<td width=""54%"">&nbsp; </td>",!
  W "</tr>",!
 W "</table>"
 W "</div>",!
 Q
 ;
DEFTEMPL ;
 D DEFTEMPL^W4LHBNEW
 Q
 ;
GLHB D GLHB^W4LHBNEW
 Q
 ;
SUMHZ(NOM,LKH) ;
 N HZ,SUM
 S HZ="",SUM=0
 F  S HZ=$O(@KLIN@("H",NOM,LKH,HZ)) Q:HZ=""  S SUM=SUM+$G(^(HZ))
 Q SUM
 ;
 ;
GETHSB(NOM,LKH,DAT) ;
 N I,J,A,KLIN
 K CMNT,BFTAX,AFTAX
 S KLIN=$$^W4GL("KLIN")
 ;
 D ^W4HSBGET(NOM,"HB")
 N J F J="IGUL","AHMAM","MAM","LMAM" D
 .S @J=$G(W4HSB(J))
 ;
 S SHUM=$G(W4HSB("TOT"))
 ;
 D GLHB
 S A=$G(@GLHB@(NOM))
 ;
 I '$D(@GLHB@(NOM,"HB")) D  Q
 .S SHUM=0,LMAM=0
 .S CMNT(0)=$P(A,"\",10)
 .S AFTAX(0)=$$SUMHZ(NOM,LKH)
 .S BFTAX(0)=$J(AFTAX(0)*100/(100+$$MAMD^W4L($$^%L1DC(DAT,3))),2,2)
 .;
 .S J=0 F I=11:1:13 S J=J+1,CMNT(J)=$P(A,"\",I)
 .S J=0 F I=14:2:18 S J=J+1,BFTAX(J)=$P(A,"\",I)
 .S J=0 F I=15:2:19 S J=J+1,AFTAX(J)=$P(A,"\",I)
 ;
 N K,B S K=0
 S I="" F  S I=$O(@GLHB@(NOM,"HB",I)) Q:I=""  I I D
 .S B=$G(^(I))
 .I '$P(B,"\"),'$P(B,"\",3),$P(B,"\",2)="" Q
 .S CMNT(K)=$P(B,"\",2)
 .S BFTAX(K)=$P(B,"\")
 .S AFTAX(K)=$P(B,"\",3)
 .S K=K+1
 ;
 Q
 ;
PRINT(STAM)
 Q $G(%ARG("PRINT"))
 ;
MAIL(STAM)
 Q $G(%ARG("MAIL"))
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
ORDLIST(LKH,NOM) ;
 I '$$PRINT,'$$MAIL Q 1
 N MKR S MKR=$$MAKOR(NOM)
 N ORDLIST S ORDLIST=$G(%ARG("ORDLIST"))
 I ORDLIST="" S ORDLIST=$$ORDLIST^W4L(LKH)
 ;
 I ORDLIST=1,'MKR Q 0
 Q ORDLIST
 ;
ORDCONT(LKH,NOM) ;
 I '$$PRINT,'$$MAIL Q ""
 N MKR S MKR=$$MAKOR(NOM)
 N ORDCONT S ORDCONT=$G(%ARG("ORDCONT"))
 I ORDCONT="" S ORDCONT=$$ORDCONT^W4L(LKH)
 I ORDCONT=1,'MKR Q 0
 Q ORDCONT
 ;
MAKOR(NOM) ;
 I '$G(NOM) Q 1
 I NOM>0 Q $$MAKOR^W4KOTHSB(+NOM,"HB")
 Q $$MAKOR^W4KOTHSB(-NOM,"TZ")
 ;
MAILMKR(STAM) ;
 Q $G(%ARG("MKRYD"))
 ;
 ;
INIT ; 
 D ^%W1ARG,^W3CSS
 ;
 N LKH S LKH=$G(%ARG("LKH")) Q:'LKH
 ;
 I +$G(%ARG("GROUP"))=0,$$HBNOW^W4L(LKH),$$HBNOWMONTH^W4PRM D
 .K @$$^W4MAIN("TMPHSB")
 .S @$$^W4MAIN("TMPHSB")@(LKH)=""
 .S %ARG("GROUP")=1.5
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LHBVW1
W4LHBVW ; [ 03.10.16 19:43 ] [ 01.10.16 15:22 ] [ 10.04.16 07:48 ] 
 N (JB,%ARG,%REM)
 N NOM S NOM=$G(%ARG("NOM"))
 I 'NOM S ER="INVALIDINVOICENUMBER" G MSGER
 S KLIN=$$^W4GL("KLIN")
 S NOM1=NOM
 I NOM>0,'$D(@KLIN@("H",NOM)) S ER="INVOICENOTEXIST" G MSGER
 I NOM<0,'$D(@KLIN@("TZ",-NOM)) S ER="INVOICENOTEXIST" G MSGER
 I NOM>0 S LK0=$G(^(NOM))
 I NOM<0 S LK0=$G(^(-NOM)),NOM1=-NOM
 ;
 I LK0'["+" Q
 S LKH=$P(LK0,"+")
 I $G(%ARG("PRINT")) D PUT^%W1PRM("PRINT",%ARG("PRINT"))
 ;
 I LKH="" S ER="INVOICENOTEXIST" G MSGER
 ;
 D GLHB
 I NOM<0 D
 .S GLHB=$$^W4GL("KLF")_"("""_LKH_""",""TZ"")"
 ;
 S A=$G(@GLHB@(NOM1))
 ;
 I A="" S ER="INVOICENOTEXIST" G MSGER
 ;
 I $$PRINT=2 D  G:ER'="OK" MSGER Q
 .I $$MAKOR(NOM) S @GLHB@(NOM1,"MKR")=$H
 .S ER=$$^W4PCLHB(NOM_";"_$$ORDLIST(LKH,NOM)_";"_$$ORDCONT(LKH,NOM))
 ;
 S DAT=$ZD($P(A,"\",8),"DD.MM.YY")
 ;
 D ^W4KOTHSB(NOM1,LKH,DAT,$S(NOM<0:"TZ",1:"HB"))
 ;
 D GETHSB(NOM1,LKH,DAT)
 ;
 D DAF1
 ;
 D DEFTEMPL K @TEMPL
 I $D(@GLHB@(NOM,"HZ")) M @TEMPL=@GLHB@(NOM,"HZ")
 E  D
 .N N,I,A S I=0
 .S N="" F  S N=$O(^KLIN("H",NOM,LKH,N)) Q:N=""  S A=$G(^(N)) D
 ..S I=I+1
 ..S @TEMPL@(I)=N_"\"_LKH_"\"_$$LKH^W4L(LKH)_"\"_$ZD($P(A,"\",2),"DD.MM.YY")_"\"_$P(A,"\",4)_"\"_$J($P(A,"\"),2,2)
 ;
 I $$ORDLIST(LKH,NOM) D DAF2
 ;
 ;
 W "<br/>"
 D DIVBUT
 W "<br><br><br><br>",!
 I $$PRINT D DIVSIGN
 ;
 ;;W "ORDCONT="_$$ORDCONT(LKH,NOM),! H 1
 ;
 I $$ORDCONT(LKH,NOM) D
 .N NP,ORD S NP=""
 .F  S NP=$O(@GLHB@(NOM,"HZ",NP)) Q:NP=""  D
 ..S ORD=$P($G(^(NP)),"\") Q:'ORD
 ..D PGBREAK
 ..D ^W4PCHBP(ORD,0)
 ;
 Q
 ;
MSGER ;
 W "<script>",!
 W "MsgA('"_ER_"');",!
 W " Back()",!
 W "</script>",!
 Q
 ;
KOTHSB(NOM,LKH,DAT) ;
 D KOTHSB^W4LHBNEW(NOM,LKH,DAT)
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
DAF1 ;
 D DAF1^W4LHBNEW
 Q
 ;
DAF2 ;
 D DAF2^W4LHBNEW
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 I $$MAILMKR D  Q
 . W "<input type=""button"" id=""printmail"" value="""_$$^%W1DICT("PRINT")_"""  onClick=""Print()"" style=""color:green"" >"
 . W "</div>",!
 ;
 I $$PRINT W "</div>" Q
 W "<br>",!
 ;
 D LISTCONT^W4LHBNEW
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""60%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PRINT"),"PrintAndBack('1')","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   ;W "<td>"
   ;  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("PRINTWITHOUTDETAILS"),"PrintAndBack('0')","color:green",",,,180")
   ;W "</td>"
   ;W "<td>&nbsp;</td>"
   ;
   I $$CSR^W4LCBCR D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("CSRPrint",$$^%W1DICT("CSRPRINT"),"PrintAndBack('3')","color:green",",,,180")
   .W "</td>"
   .I '$$^W4NOBACK D
   ..W "<td>&nbsp;</td>",!
   ;
   I '$$^W4NOBACK D
   .W "<td>"
   .  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   .W "</td>"
   ;
   W "<td>&nbsp;</td>"
   W "<td id=""mail"" >"
   W "</td>"
   ;
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
DIVSIGN ;
 W "<div id=""divsign"" >"
 W "<table dir="""_$$^%W1DIR_""">"
  W "<tr>"
   W "<td width=""16%"">&nbsp; </td>",!
   W "<td>"_$$^%W1DICT("SIGNATURE")_"&nbsp;&nbsp;________________</td>",!
   W "<td width=""54%"">&nbsp; </td>",!
  W "</tr>",!
 W "</table>"
 W "</div>",!
 Q
 ;
DEFTEMPL ;
 D DEFTEMPL^W4LHBNEW
 Q
 ;
GLHB D GLHB^W4LHBNEW
 Q
 ;
SUMHZ(NOM,LKH) ;
 N HZ,SUM
 S HZ="",SUM=0
 F  S HZ=$O(@KLIN@("H",NOM,LKH,HZ)) Q:HZ=""  S SUM=SUM+$G(^(HZ))
 Q SUM
 ;
 ;
GETHSB(NOM,LKH,DAT) ;
 N I,J,A,KLIN
 K CMNT,BFTAX,AFTAX
 S KLIN=$$^W4GL("KLIN")
 ;
 D ^W4HSBGET(NOM,"H")
 N J F J="IGUL","AHMAM","MAM","LMAM" D
 .S @J=$G(W4HSB(J))
 ;
 S SHUM=$G(W4HSB("TOT"))
 ;
 D GLHB
 S A=$G(@GLHB@(NOM))
 ;
 I '$D(@GLHB@(NOM,"HB")) D  Q
 .S SHUM=0,LMAM=0
 .S CMNT(0)=$P(A,"\",10)
 .S AFTAX(0)=$$SUMHZ(NOM,LKH)
 .S BFTAX(0)=$J(AFTAX(0)*100/(100+$$MAMD^W4L($$^%L1DC(DAT,3))),2,2)
 .;
 .S J=0 F I=11:1:13 S J=J+1,CMNT(J)=$P(A,"\",I)
 .S J=0 F I=14:2:18 S J=J+1,BFTAX(J)=$P(A,"\",I)
 .S J=0 F I=15:2:19 S J=J+1,AFTAX(J)=$P(A,"\",I)
 ;
 N K,B S K=0
 F I=1:1 Q:'$D(@GLHB@(NOM,"HB",I))  D
 .S B=$G(^(I))
 .I '$P(B,"\"),'$P(B,"\",3),$P(B,"\",2)="" Q
 .S CMNT(K)=$P(B,"\",2)
 .S BFTAX(K)=$P(B,"\")
 .S AFTAX(K)=$P(B,"\",3)
 .S K=K+1
 ;
 Q
 ;
PRINT(STAM)
 Q $G(%ARG("PRINT"))
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
ORDLIST(LKH,NOM) ;
 I '$$PRINT Q 1
 N MKR S MKR=$$MAKOR(NOM)
 N ORDLIST S ORDLIST=$G(%ARG("ORDLIST"))
 I ORDLIST="" S ORDLIST=$$ORDLIST^W4L(LKH)
 I ORDLIST=1,'MKR Q 0
 Q ORDLIST
 ;
ORDCONT(LKH,NOM) ;
 I '$$PRINT Q ""
 N MKR S MKR=$$MAKOR(NOM)
 N ORDCONT S ORDCONT=$G(%ARG("ORDCONT"))
 I ORDCONT="" S ORDCONT=$$ORDCONT^W4L(LKH)
 I ORDCONT=1,'MKR Q 0
 Q ORDCONT
 ;
MAKOR(NOM) ;
 I '$G(NOM) Q 1
 I NOM>0 Q $$MAKOR^W4KOTHSB(+NOM,"HB")
 Q $$MAKOR^W4KOTHSB(-NOM,"TZ")
 ;
MAILMKR(STAM) ;
 Q $G(%ARG("MKRYD"))
 
 
 
 
 
 
 
 

W4LHBZ
W4LHBZ(LKH,HZM) ; HAFAKAT HESB MIYADIT [ 10.12.18 16:07 ] [ 09.10.18 12:31 ] [ 02.10.17 12:16 ] 
 N (JB,%ARG,%REM,LKH,HZM)
 I $G(LKH)="" Q "0;NOLKH"
 S TZ=$G(%ARG("TZ"))
 ;
 S P1DZ=$$^W4DZ
 S DAT=$$^%L1DC(P1DZ,1)
 ;
 D KILLVRM
 ;
 S TIME=$P($G(@$$^W4ORD@(HZM,"ASRZ")),"\",1) ; -- LO HUGDERU ????
 S MEVACEA=$P($G(@$$^W4ORD@(HZM,"ASRZ")),"\",2)
 ;
 S @$$^W4MAIN("VRM")@(HZM)=""
 S @$$^W4MAIN("VRM")=TZ
 ;
 D NEWHSB^W4LHBNEW(LKH,DAT,HZM,HZM)
 ;
 I '$G(@$$^W4MAIN("TEMPLH")@("SHUM")) D KILLVRM Q "0;NOSUM"
 S RES=$$HZGHB^W4LHBNEW(LKH) I 'RES Q "0;"_RES
 S PRM=LKH_";"_TZ_";"
 S HB=$$NEW^W4LHBNEW(PRM)
 I 'HB D KILLVRM Q 0_";"_HB
 ;
 S @$$^W4GL("P1ASRZ")@(P1DZ,HZM)=$G(HB)_"\"_LKH_"\"_$G(^LKH(LKH))_"\"_$G(MEVACEA)_"\"_TIME
 S @$$^W4ORD@(HZM,"HBNOW")=HB
 ;
 D KILLVRM
 Q HB
 ;
 ;
KILLVRM ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("TEMPL")
 K @$$^W4MAIN("TEMPLH")
 K @$$^W4MAIN("TMPLHB")
 Q
 ;
 ;
PRINT(LKH,HB,HZM) ; -- INPUT LKH,HB
 N (JB,%ARG,%REM,LKH,HB,HZM)
 S CODDOC="H"
 S HB1=HB I HB<0 S HB1=-HB,CODDOC="TZ"
 S P1DZ=$$^W4DZ
 D GLHB^W4LHBNEW
 K %L1SCPC N TIMEHB
 ;
 D KOT^W4KOTHSB
 ;
 D ^W4MDPPC I '$L($G(PRINT))!'$D(%MDP) Q "PRINTERNOTDEFINED"
 D ^W4PCESEK(MYNAME,1,GWPC,%MDP("B"),%MDP("N"))
 ;
 S %L1SCPC(2)=MYKTV
 S %L1SCPC(71)=MYTEL
 S %L1SCPC(77)=MYESEK
 D PUT^%W3DEB("W4LHBZ-PRINT","LKH=LKH & HB=HB")
 ;
 D ^W4HSBGET(HB1,CODDOC) I $D(W4HSB)<10 Q "NOHBPRM"
 ;
 S %L1SCPC(5)=LKH
 S %L1SCPC(8)=$G(W4HSB("ISSUETIME"))_" : xewn zwtd zrye jix`z"
 D PUT^%W3DEB("W4LHBZ-PRINT","W4HSB=[W4HSB")
 ;
 S MAKOR=0 I $D(@GLHB@(HB,"MKR")) S MAKOR=1 K @GLHB@(HB,"MKR")
 ;
 I 'MAKOR S %L1SCPC(8)=$G(W4HSB("ISSUETIME"))
 S %L1SCPC(10)=$G(W4HSB("LKHNAME"))
 S %L1SCPC(15)=$G(W4HSB("KTV"))
 S %L1SCPC(20)=HB1_" "_$S(HB<0:"iekif",1:"")_" qn zipeayg"
 S %L1SCPC(21)=$G(W4HSB("TODATE"))
 S %L1SCPC(22)=$S(MAKOR:"xewn",1:"wzrd")
 S %L1SCPC(24)=$P($G(@GLHB@(HB,"HZ",1)),"\")
 N HBHNH S HBHNH=$$HNH(HB1,CODDOC)
 ;
 I HB<0 D
 .S HBHNH=-HBHNH
 .S W4HSB("MAM")=-$G(W4HSB("MAM"))
 .S W4HSB("LMAM")=-$G(W4HSB("LMAM"))
 .S W4HSB("TOT")=-$G(W4HSB("TOT"))
 ;
 I HBHNH>0 D
 .S %L1SCPC(25)=": gewll dgpd"
 .S %L1SCPC(26)=$J(HBHNH,2,2)
 ;
 S %L1SCPC(27)=$J($G(W4HSB("LMAM")),2,2)
 S %L1SCPC(28)=$J($G(W4HSB("MAM")),2,2)
 S %L1SCPC(30)=$J($G(W4HSB("TOT")),2,2)
 S %L1SCPC(32)=$$MAMD^W4L($$^%L1DC(W4HSB("TODATE"),3))
 ;
 I $G(@$$^W4PRM@("ITRA")) D
 .N DT
 .S %L1SCPC(44)=": gewl ly dxzi"
 .S DT=$$^%L1DC($G(W4HSB("TODATE")),3)
 .S %L1SCPC(45)=$J($$CBH^W4KLOST(LKH,DT,0),2,2)
 ;
 S TZ=$G(W4HSB("TZ"))
 ;
 I MAKOR D
 .I $G(TZ),'$$TZ^W4L(LKH) D PUT^W4L(LKH,TZ,"TZ")
 ;
 D ^W4MEUHAD
 ;
 Q $$^W4PCMK("P1HBA2")
 ;
 ;
HNH(HB,CODDOC) ;
 N LK,HZ,NP,HNH S HNH=0
 S LK="" F  S LK=$O(@$$^W4GL("KLIN")@(CODDOC,HB,LK)) Q:LK=""  D
 .S HZ="" F  S HZ=$O(@$$^W4GL("KLIN")@(CODDOC,HB,LK,HZ)) Q:HZ=""  D
 ..S NP="" F  S NP=$O(@$$^W4GL("KLIN")@(CODDOC,HB,LK,HZ,NP)) Q:NP=""  D
 ...S HNH=HNH+$$GET^W4GTVCH(HZ,NP,"ASR","LKHNH")
 Q HNH
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LIMHR
W4LIMHR(DAT,SHAA) ; [ 15.09.20 14:15 ] [ 14.09.20 04:44 ] [ 13.09.20 13:32 ] 
 N (JB,%ARG,%REM,DAT,SHAA)
 S DT=$$^%L1DC(DAT,3)
 I $$LIMHR^W4PRM,$G(@$$^W4GL("W4LIMHR")@(DT,+SHAA))'<$$LIMHR^W4PRM Q 1
 Q 0
 ;
CR(MEDT,ADDT) ;
 N (JB,%ARG,%REM,MEDT,ADDT)
 S DRC=1
 S MEDAT=$ZD(MEDT,"DD.MM.YY")
 S ADDAT=$ZD(ADDT,"DD.MM.YY")
 S TMP=$$^W4MAIN("TMP") K @TMP
 S PRM="MSD=1&MEDAT="_MEDAT_"&ADDAT="_ADDAT_"&MESUM=-999999&ADSUM=999999&ORDKIND=ALL&MKR=ALL&MKBL=ALL&SLH=ALL"
 D ARG^%L1FRM(PRM)
 S %ARG("TIMESORT")=1
 ;
 D CRVIB^W4DLVORD(1)
 ;
 N TMP1 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 B ;
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S DT=$E(N,1,5)
 .S MIN=$E(N,6,9)
 .S @TMP1@(DT,MIN\60)=$G(@TMP1@(DT,MIN\60))+1
 ;
 L +@$$^W4GL("W4LIMHR")
 K @$$^W4GL("W4LIMHR")
 ;
 M @$$^W4GL("W4LIMHR")=@TMP1
 ;
 L -@$$^W4GL("W4LIMHR")
 K @TMP,@TMP1
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LINK
W4LINK(HZ,MSD,CODE,MSDFROM) ; [ 18.02.26 17:13 ] [ 07.02.24 12:10 ] [ 24.11.20 12:10 ] 
 N TRH S TRH=$$TRH^W4HZMST(HZ)
 N DT I TRH D
 .S DT=$$^%L1DC(TRH,3)
 .I '$$NIGHT^W4PRM,$$^W4SHAAZ,$$SHAA^W4HZMST(HZ)<$$SHAAZ^W4PRM S DT=DT-1
 ;
 N P1DZ S P1DZ=$$^W4DZ
 I 'TRH S DT=P1DZ
 ;
 N UCI
 D
 .I $$MM^W4PRM S UCI=$$^W3MAIN Q
 .I $$^W4MM,$G(MSDFROM) D  Q
 ..S UCI=$$TV^%W1UCI(MSDFROM)
 .I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q
 .S UCI=$$^%W1UCI(JB)
 ;
 N DTOLD S DTOLD=$P($G(^[UCI]W4LINK(HZ)),"~",4)
 N DTROLD S DTROLD=+$P($G(^[UCI]W4LINK(HZ)),"~",3)
 I DTOLD K ^[UCI]W4LINKD(DTOLD,HZ)
 I DTROLD K ^[UCI]W4LINKDR(DTROLD,HZ)
 ;
 L +^[UCI]W4LINK(HZ):1
 S ^[UCI]W4LINK(HZ)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_P1DZ
 L -^[UCI]W4LINK(HZ)
 ;
 L +^[UCI]W4LINKO(HZ):1
 S ^[UCI]W4LINKO(HZ)=MSD_"~"_CODE_"~"_$H_"~"_DT_"~"_$G(MSDFROM)_"~"_P1DZ
 L -^[UCI]W4LINKO(HZ)
 ;
 L +^[UCI]W4LINKD(DT,HZ):1
 S ^[UCI]W4LINKD(DT,HZ)=MSD
 I $G(MSDFROM) S ^[UCI]W4LINKD(DT,HZ)=MSD_"~"_MSDFROM
 L -^[UCI]W4LINKD(DT,HZ)
 ;
 I $$HZM^W4MSL(HZ) D
 .N DTR S DTR=+$H
 .L +^[UCI]W4LINKDR(DTR,HZ):1
 .S ^[UCI]W4LINKDR(DTR,HZ)=MSD
 .I $G(MSDFROM) S ^[UCI]W4LINKDR(DTR,HZ)=MSD_"~"_MSDFROM
 .L -^[UCI]W4LINKDR(DTR,HZ)
 ;
 I $L(CODE),$L(MSD) D
 .I '$D(^[UCI]W4LINKI(CODE,MSD)) D
 ..N DTCB S DTCB=$P($$DATCB^W4HZMST(HZ),"  ")
 ..S DTCB=$$^%L1DC(DTCB,3)
 ..S @$$^W4GL("W4NEWCUS")@(DTCB,CODE)=HZ
 .L +^[UCI]W4LINKI(CODE):1
 .S ^[UCI]W4LINKI(CODE,MSD,HZ)=$H
 .L -^[UCI]W4LINKI(CODE)
 ;
 I $L(MSD) D 
 .L +^[UCI]W4LINKR(MSD,HZ):1
 .S ^[UCI]W4LINKR(MSD,HZ)=$H
 .L -^[UCI]W4LINKR(MSD,HZ)
 ;
 D
 .N HZMLAK
 .S HZMLAK=$$HZMLAK^W4HZMST(HZ)
 .I $E(HZMLAK)="W" S HZMLAK=$E(HZMLAK,2,20)
 .I HZMLAK S ^[UCI]W4LNKUID(HZMLAK)=HZ
 .S HZL1=$$HZLAKNOM^W4HZMST(HZ)
 .S HZL2=$$HZLAKNOM2^W4HZMST(HZ)
 .I HZL1?1N.N S ^[UCI]W4LNKUID(HZL1)=HZ
 .I HZL2?1N.N S ^[UCI]W4LNKUID(HZL2)=HZ
 ;
 D ^%S2GLSV($$^W4ORD_"("_HZ_")",$$^W4FGIB)
 M @$$^W4ORDGIB@(HZ)=@$$^W4ORD@(HZ)
 D ^%S2GLSV($$^W4GL("W4LINK")_"("_HZ_")",$$^W4FGIB)
 I $G(MSD),$G(CODE) D ^%S2GLSV($$^W4GL("W4LINKI")_"("""_CODE_""","_MSD_","_HZ_")",$$^W4FGIB)
 I $G(MSD) D ^%S2GLSV($$^W4GL("W4LINKR")_"("""_MSD_""","_HZ_")",$$^W4FGIB)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKADR
W4LKADR ; [ 17.10.18 13:02 ] [ 29.09.15 08:01 ] [ 11.03.14 15:11 ] 
   N WIDTH,TABCITY S TABCITY=7
   W "<tr>",!
    S WIDTH="14%"
    D TD W $$^%W1DICT("CITY") D TDE
    S WIDTH="32%"
    D TD D INPCT("CITY",120,20,$$^%W1DIR,"T")
    S WIDTH="12%"
    D TD W $$^%W1DICT("STREET") D TDE
    W "<td colspan=""3"" id=""tdstreet"">" D INP("STREET","100%",40,$$^%W1DIR,"T") D TDE
   W "</tr>",!
   ;
   W "<tr>"
    D TD W $$^%W1DICT("HOME") D TDE
    D TD D INP("HOME",40,4,"LTR") D TDE
    ;
    D TD W $$^%W1DICT("FLAT") D TDE
    D TD D INP("FLAT",50,5,"LTR") D TDE
    ;
    D TD W $$^%W1DICT("ZIP") D TDE
    D TD D INP("ZIP",70,7,"LTR") D TDE
    ;
   W "</tr>",!
 Q
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 I $D(SIZE) W " style=""font-size:"_SIZE_""""
 I $D(DIR) W " dir="""_DIR_""""
 W " >",!
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
TDE W "</td>",!
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 W "<input type=""text"" maxlength="""_SIZE_""""
 W " style=""width:"_WD_$S(DIR="LTR":";text-align:"_$S($G(PRTX)="T":"left",1:"right"),1:"")_""""
 W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 ;
 I RKV'="STREET" D
 .W " onClick=""noIfrHide=0;HideStreet('"_RKV_"')"
 .I RKV="HOME"!(RKV="FLAT") W ";this.select()"
 .W """"
 .W " value="""_$$RKV(RKV)_""""
 .W " tabindex="""_$S(RKV="CITY":TABCITY,RKV="HOME":9,RKV="FLAT":10,1:11)_""""
 ;
 I RKV="STREET" D
 .N VL,VL1 S VL=$$RKV(RKV)
 .I VL'?1N.N W " value="""_$$RPL^%L1FRM(VL,"""","''")_"""" S VL1=0
 .I VL?1N.N W " value="""_VL_"""" S VL1=+VL
 .W " tabindex=""8"""
 .W " onFocus=""ClickStreet('"_VL1_"')"""
 .N CITY S CITY=$$CITY^W3HZMST(JB,$G(GL))
 .I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 W " />"
 Q
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 N SEL S SEL=""
 I $D(@$$^W4GL("P1IR"))>9 D
 .W "<select"
 .W " name="""_RKV_""" id="""_RKV_""""
 .W " tabindex="""_TABCITY_""""
 .W " onChange=""ChangeCity()"" >",!
 .
 .W "<option>&nbsp;</option>",!
 .
 .N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..N IR S IR=$G(^(N))
 ..N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$H2U^%L1FRM(IR)
 ..W "<option value='"_IRI_"'"
 ..I $$^W4ISCDLK($G(LKH)),$TR($$CITY^W4L(LKH),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"""
 ..W " >"_IRI_"</option>",!
 .W "</select>",!
 ;
 I '$D(@$$^W4GL("P1IR")) D
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";"
 .W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir="""_$$^%W1DIR_""""
 .N VL S VL=$$RKV("CITY")
 .W " name="""_RKV_""" id="""_RKV_""" value="""_VL_""""
 .W " tabindex="""_TABCITY_""""
 .W " onChange=""ChangeCity()""",!
 .W " onKeyPress=""OnKeyPress(event)"""
 .W " onFocus=""clearMenu()"" >",!
 W "&nbsp;</td>",!
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q " "
 Q "<span style=""color:red"">*</span>"
 ;
RKV(RKV) ;
 N VL S VL="&nbsp;"
 Q:'$$^W4ISCDLK($G(LKH)) VL
 I RKV="CITY" S VL=$$IR^W4L(LKH)
 I RKV="STREET" S VL=$$KTV^W4L(LKH)
 I RKV="HOME" S VL=$$BAIT^W4L(LKH)
 I RKV="FLAT" S VL=$$DIRA^W4L(LKH)
 I RKV="FAX" S VL=$$FAX^W4L(LKH)
 I RKV="TZ" S VL=$$TZ^W4L(LKH)
 I RKV="EMAIL" S VL=$$EMAIL^W4L(LKH)
 I RKV="ZIP" S VL=$$MIKUD^W4L(LKH)
 ;
 S VL=$$SPA^%L1FRM(VL)
 S VL=$$H2U^%L1FRM(VL)
 ;;I VL="" S VL="&nbsp;"
 Q VL
 
 

W4LKH
W4LKH(STAM) ; [ 16.03.21 19:16 ] [ 25.09.18 11:43 ] [ 09.12.16 20:56 ] 
 Q +$$GET^%W1PRM("W4LKH")
 ;
INIT ;
 D KILL
 ;
 D PUT^%W1PRM("W4LKH",1),^W4BGBODY
 D ^W3CSS
 S EEFROM="W4LKH" I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D:$G(%REM) PUT^%W1PRM("REM",%REM)
 I $G(%ARG("ADMIN")) D PUT^%W1PRM("ADMIN",%ARG("ADMIN"))
 D KILL^%W1PRM("IFRURSH")
 Q
 ;
KILL ;
 D KILL^%W1PRM("VD")
 D KILL^%W1PRM("DOC")
 D KILL^%W1PRM("LKH")
 D KILL^%W1PRM("DAT")
 D KILL^%W1PRM("MKRYD")
 D KILL^%W1PRM("CHKDET")
 D KILL^%W1PRM("PSWMGR")
 D KILL^%W1PRM("PRKUP")
 I $G(%REM) K @$$^W4GL("ISHUR")@(%REM,+$H)
 Q
 ;
NOSG(STAM) ;
 I $H-$$^W4DZ>1 Q 1
 I $H-$$^W4DZ=1,$P($H,",",2)\3600>5 Q 1
 Q 0
 ;
CAJ(STAM) ;
 I $G(@$$^W4GL("W3PRM")@("CAJ"))?1N Q ^("CAJ")
 Q $$CAJ^W4PRM
 ;
PRMAM(STAM) ;
 Q +$G(@$$^W4GL("W3PRM")@("PRMAM"))
 ;
HSHV(STAM) ;
 Q +$G(@$$^W4GL("W3PRM")@("HSHV"))
 ;
COLOR(STAM) ;
 Q +$G(@$$^W4GL("W3PRM")@("COLOR"))
 ;
SIZE(STAM) ;
 Q +$G(@$$^W4GL("W3PRM")@("SIZE"))
 ;
NODISCST(STAM) ;
 Q +$G(@$$^W4GL("W3PRM")@("NODISCST"))
 ;
CMNST(STAM) ;
 Q +$G(@$$^W4GL("W3PRM")@("CMNST"))
 ;
MTB(STAM) ;
 Q +$G(@$$^W4GL("W3PRM")@("MTB"))
 ;
DIRFROM(STAM) ;
 Q $G(@$$^W4GL("W3PRM")@("MAIL","DIRFROM"))
 ;
FROM(STAM) ;
 Q $G(@$$^W4GL("W3PRM")@("MAIL","FROM"))
 ;
SMTP(STAM) ;
 Q $G(@$$^W4GL("W3PRM")@("MAIL","SMTP"))
 ;
USER(STAM) ;
 Q $G(@$$^W4GL("W3PRM")@("MAIL","USER"))
 ;
PSW(STAM) ;
 Q $G(@$$^W4GL("W3PRM")@("MAIL","PSW"))
 ;
HD2MAIL(PRM) ;
 I PRM="H"!(PRM="HBW")!(PRM="") Q "Invoices%20list"
 I PRM="HI" Q "Deal%20invoices%20list"
 I PRM="HZ" Q "Orders%20list"
 I PRM="HZMH" Q "Bids%20list"
 I PRM="TM" Q "Shipping%20documents&20list"
 I PRM["HMK" Q "Invoices%2Freceipt%20list"
 I PRM["HBZ" Q "Credit%20Invoices%20list"
 Q "Documents%20list"
 ;
SETPSW ;
 D PUT^%W1PRM("PSW",1)
 S @$$^W4GL("ISHUR")@(%REM,+$H)=1
 Q
 
 
 
 
 
 

W4LKHACM
W4LKHACM ; [ 16.09.13 04:55 ] [ 15.09.13 19:25 ] [ 05.09.10 15:57 ]
GET ;
 N LKH S LKH=$$GETP^%W1PRM("CODE") Q:LKH=""
 N GL,TMP D GL,TMP K @TMP
 N N,A S N="",I=0
 I '$D(@GL@(LKH,"ACM",1)) D
 .N J F J=1:1:4 D
 ..S $P(@GL@(LKH,"ACM",1),"\",J)=$P($G(@GL@(LKH,4)),"*",J)
 ;
 F  S N=$O(@GL@(LKH,"ACM",N)) Q:N=""  D
 .S A=$G(^(N))
 .S @TMP@(N)=$P(A,"\")
 .S @TMP@(N,1)=$P(A,"\",2,20)
 Q
 ;
 ;
SAVEND ;
 N GL,TMP D GL,TMP
 N CODE,I,N,A S CODE=$$GETP^%W1PRM("CODE") Q:CODE=""
 K @GL@(CODE,"ACM")
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S NM=$G(^(N))
 .S A=$G(^(N,1))
 .S $P(A,"\",6)=$$FUNC^%UCASE($P(A,"\",6))
 .S @GL@(CODE,"ACM",N)=NM_"\"_A
 K @TMP
 Q
 ;
 ;
HEADFUNC ;
 N CODE S CODE=$$GETP^%W1PRM("CODE") Q:CODE=""
 W "<span style=""font-weight:bold"">"
  W $$^%W1DICT("CUSTOMER")_" : "_CODE_" "_$$H2U^%L1FRM($$LKH^W4L(CODE))
 W "</span>"
 Q
GL S GL=$$^W4GL("LKH")
 Q
TMP S TMP=$$^W4MAIN("TMPACM")
 Q

W4LKHCSR
W4LKHCSR(STAM) ; [ 11.06.23 17:33 ] [ 25.09.16 07:48 ] [ 30.04.14 14:42 ] 
 Q $$LKHCSR^W3PRM&$$^W4LKH
 ;
DOCCSR(STAM) ;
 N UCI S UCI=$$UCI^W3PRM(+$G(JB),$G(MSD))
 Q +$G(^[UCI]W3PRM("LKHCSR","DOCCSR")) ;;&$$^W4LKH
 ;
LKHDFLT(STAM) ;
 N UCI S UCI=$$UCI^W3PRM(+$G(JB),$G(MSD))
 Q $G(^[UCI]W3PRM("LKHCSR","LKHDFLT"))
 ;
 
 

W4LKHDZ
W4LKHDZ ; [ 24.11.16 12:19 ] [ 
 I $$^W4LKHCSR,'$D(@$$^W4GL("P1DZ")) S @$$^W4GL("P1DZ")=+$H
 Q
 

W4LKHED
W4LKHED ; [ 28.06.22 09:39 ] [ 21.05.20 23:43 ] [ 27.06.19 17:11 ] 
 N (JB,%ARG,%REM)
 W "<div dir="""_$$^%W1DIR_""">",!
 W "<select id=""rkv"" >",!
  S CHOICE=$$H2U^%L1FRM("--- oekcrl dcy xga --- ")
  W "<option value="""">"_CHOICE_"</option>",!
  F I=1:1 S T=$T(NM+I)  Q:T[" Q  ;"  D
  .S RKV=$P(T,";",2)
  .S NM=$P(T,";",3)
  .W "<option value="""_RKV_""" >"_$$H2U^%L1FRM(NM)_"</option>",!
 W "</select>",! 
 W "</div>",!
 Q  ;
 ;
 ;
TBL ;
 N (JB,%ARG,%REM) ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D BUT
 ;
 D HEADER
 ;
 W "<br>",!
 S PG=1,RL=38
 D KOT
 ;
 S I=0,K=0,LK=""
 ;
 S MELKH=$TR($$SPA^%L1FRM($G(%ARG("MELKH"))),"-","")
 S ADLKH=$TR($$SPA^%L1FRM($G(%ARG("ADLKH"))),"-","")
 S SLKH1=$$SRCH($G(%ARG("LKH1")),"H")
 S SIR=$$SRCH($G(%ARG("IR")),"H")
 S SSTREET=$$SRCH($G(%ARG("STREET")),"H")
 S SCOMP=$$SRCH($G(%ARG("COMP")),"H")
 S STEL=$$SRCH($G(%ARG("TEL")),"TEL")
 S SPELE=$$SRCH($G(%ARG("PELE")),"TEL")
 S SCITY=$$SRCH($G(%ARG("CITY")),"H")
 S SHOME=$$SRCH($G(%ARG("HOME")))
 S SFLAT=$$SRCH($G(%ARG("FLAT")))
 ;
 S VRM=$$^W4MAIN("VRM")
 S VRM1=$$^W4MAIN("VRM1") K @VRM1
 ;
 S IND="" F  S IND=$O(@VRM@(IND)) Q:IND=""  D
 .S N=$G(^(IND)) I N<1000 Q
 .;;S ^AA(N)=.1
 .I MELKH,$TR(N,"-","")<MELKH Q
 .;;S ^AA(N)=.2
 .I ADLKH,$TR(N,"-","")>ADLKH Q
 .S LKH1=$$LKH^W3L(N)
 .I $G(%ARG("VALID"))=1,'$$MAZAV^W4L(N) Q  ;;S ^AA(N)=.3 Q
 .I $G(%ARG("VALID"))=2,$$MAZAV^W4L(N) Q  ;;S ^AA(N)=.4 Q
 .I $G(%ARG("CREDONLY")),'$$ISCR^W4L(N) Q  ;;S ^AA(N)=.5 Q
 .S OK=1
 .;;S ^AA(N)=1
 .I SLKH1'?." " D  Q:'OK
 ..I LKH1'[SLKH1 S OK=0
 .I $G(%ARG("SUGL")),$$SUGL^W4L(N)'=%ARG("SUGL") Q
 .;;S ^AA(N)=2
 .S IR=$$IR^W3L(N)
 .I SIR'?." " D  Q:'OK
 ..I IR'=SIR S OK=0
 .;;S ^AA(N)=3
 .I $L(STEL) D  Q:'OK
 ..S TELA=$TR($$TELA^W3L(N),"-","")
 ..I TELA=STEL Q
 ..S TELB=$TR($$TELB^W3L(N),"-","")
 ..I TELB=STEL Q
 ..S PELE=$TR($$PELE^W3L(N),"-","")
 ..I PELE'=STEL S OK=0
 .;;S ^AA(N)=4
 .I $L(SPELE) D  Q:'OK
 ..S TELA=$TR($$TELA^W3L(N),"-","")
 ..I TELA=SPELE Q
 ..S TELB=$TR($$TELB^W3L(N),"-","")
 ..I TELB=SPELE Q
 ..S PELE=$TR($$PELE^W3L(N),"-","")
 ..I PELE'=SPELE S OK=0
 .;;S ^AA(N)=5
 .S COMP=$$COMP^W3L(N)
 .I $L(SCOMP) D  Q:'OK
 ..I COMP'=SCOMP S OK=0
 .;;S ^AA(N)=6
 .S CITY=$$IR^W3L(N)
 .I $L(SCITY) D  Q:'OK
 ..I CITY'=SCITY S OK=0
 .;;S ^AA(N)=7
 .S STREET=$$KTV^W3L(N)
 .I $L(SSTREET) D  Q:'OK
 ..I STREET'[SSTREET S OK=0
 .;;S ^AA(N)=8
 .S HOME=$$BAIT^W3L(N)
 .I $L(SHOME) D  Q:'OK
 ..I HOME'=SHOME S OK=0
 .;;S ^AA(N)=9
 .S FLAT=$$DIRA^W3L(N)
 .I $L(SFLAT) D  Q:'OK
 ..I FLAT'=SFLAT S OK=0
 .;;S ^AA(N)=10
 .M @VRM1@(N)=@VRM@(N)
 .D HZGLK(N)
 .
 W "</table>",!
 W "</div>",!
 W "<br />",!
 W "<br />",!
 D BUT 
 Q
 ;
HEADER ;
 D HEADER^W3HZGLK
 Q
 ;
KOT ;
 W "<table id=""TblLkh"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black;font-size:"_$$^W3FSZ(10)_""" width=""98%"">",!
 W " <tr id=""trth"" style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
    W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)
 W """ >"
   W "  <th>"_$$^%W1DICT("ORDINALNUMBER")_"</th>"
   W "  <th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
   W "  <th width=""25%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
   W "  <th >"_$$H2U^%L1FRM($$NMRKV(%ARG("RKV")))_"</th>"
   W "  <th >"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>" 
 Q
 ;
SRCH(SRCH,PR)
 S SRCH=$$CNWEB^%L1FRM(SRCH) I $L(SRCH) D
 .S SRCH=$$SPA^%L1FRM(SRCH)
 .I $G(PR)="TEL" S SRCH=$TR(SRCH,"-!\/_ ","")
 .I $G(PR)="H" S SRCH=$$INVH^%L1FRM(SRCH)
 Q SRCH
 ;
 ;
HZGLK(N) ;
 S RKV=$G(%ARG("RKV")) Q:RKV=""
 S I=I+1
 ;
 W "<tr"
 ;
 D
 .I '$$MAZAV^W4L(N) W ";background-color:pink"
 .I +$$MAZAV^W4L(N)=.5 W ";background-color:lightyellow"
 .W """ "
 W ">"
 W " <td style=""background-color:#fafad2"" width=""5%"" "
 W """>"
 W "     "_I
 W " </td>"
 ;
 W " <td id=""lkh"_N_""" "
 W " onClick=""OpenCust('"_N_"')"" "
 W " style=""cursor:pointer"" "
  ;;I N=$$GET^%W1PRM("CURLKH") W "style=""border:2px solid brown"""
 W ">"
  W "     "_N
 W " </td>"
 ;
 W " <td>"
  W "   "_$$H2U^%L1FRM($$LKH^W3L(N))
 W "</td>"
 ;
 W "<td align=""center"">"
  X "S VL=$$"_RKV_"^W4L(N)"
  S TYPE=$$TYPE(RKV)
  S LN=$$LN(RKV)
  S VL=$$H2U^%L1FRM(VL)
  D
  .I TYPE="T"!(TYPE="9") D  Q
  ..W "<input id=""rkv"_N_""" size="""_LN_""" type=""text"" value="""_VL_""" />"
  .
  .I TYPE="B" D  Q
  ..W "<input id=""rkv"_N_""" type=""checkbox"" "_$S(VL:"checked=""checked"" ",1:"")_" />"
  .
  .I TYPE="D" D  Q
  ..D ^%W1DAT("rkv"_N)
  .
  .I $E(TYPE)="G" D  Q
  ..W "<select id=""rkv"_N_""" >"
  ..N GL S GL=$P($P(TYPE,"(",2),")")
  ..N N1 S N1="" F  S N1=$O(@$$^W4GL(GL)@(N1)) Q:N1=""  D
  ...N A S A=$$H2U^%L1FRM($G(^(N1)))
  ...W "<option value="""_N1_""" "
  ...I VL=N1 W " selected=""selected"" "
  ...W ">"_A
  ...W "</option>"
  ..W "</select>"
  .
  .I $E(TYPE)="S" D  Q
  ..W "<select id=""rkv"_N_""" >"
  ..N LB S LB=$P($P(TYPE,"(",2),")")
  ..N J,T F J=1:1 S T=$T(@LB+J) Q:T["Q  ;"  D
  ...N N1,NM
  ...S N1=$P(T,";",2),NM=$P(T,";",3)
  ...S NM=$$H2U^%L1FRM(NM)
  ...W "<option value="""_N1_""" "
  ...I VL=N1 W " selected=""selected"" "
  ...W ">"_NM_"</option>"
  ..W "</select>"
 ;
 W "</td>"
 ;
 W "<td align=""center"" >"
  W "<input type=""checkbox"" id=""chn"_N_""" disabled=""disabled"" />"
 W "</td>"
 ;
 W "</tr>",!
 Q
 ;
BUT ; 
 D ^W4SBMBCK
 Q
 ;
NMRKV(RKV) ;
 N I,T,RKVT,NMT,RKV1
 S RKV1=""
 F I=1:1 S T=$T(NM+I)  Q:T[" Q  ;"  D  Q:RKV1'=""
 .S RKVT=$P(T,";",2)
 .S NMT=$P(T,";",3)
 .I RKVT=RKV S RKV1=NMT
 Q RKV1
 ;
TYPE(RKV) ;
 N I,T,RKVT,TYPE,RKV1
 S RKV1=""
 F I=1:1 S T=$T(NM+I)  Q:T[" Q  ;"  D  Q:RKV1'=""
 .S RKVT=$P(T,";",2)
 .S TYPE=$P(T,";",4)
 .I RKVT=RKV S RKV1=TYPE
 Q RKV1
 ;
LN(RKV) ;
 N I,T,RKVT,LN,RKV1
 S RKV1=""
 F I=1:1 S T=$T(NM+I)  Q:T[" Q  ;"  D  Q:RKV1'=""
 .S RKVT=$P(T,";",2)
 .S LN=$P(T,";",5)
 .I RKVT=RKV S RKV1=LN
 ; 
 I $$^W4TABLET=2,RKV1>25 S RKV1=25
 Q RKV1
 ;
NM ; 
 ;LKH;gewl my;T;30;
 ;HESB;oeayg;T;8;
 ;SUGL;zegewl zveaw;G(SUGL);5;
 ;TZ;n.r .t.g .f.z;9;9;
 ;KTV;zaezk;T;30;
 ;TELB;zia .lh;T;14;
 ;KOMA;dnew;T;6;
 ;DIRA;dxic;T;5;
 ;BAIT;zia;T;5;
 ;CNISA;dqipk;T;5;
 ;CMNT;dxrd;T;50;
 ;CMNTIN;gewl lr dxrds;T;50;
 ;IR;xir;G(P1IR);12;
 ;MIKUD;cewin;9;7;
 ;FAX;qwt;9;14;
 ;CONTACTMAN;xyw yi`;T;20;
 ;SHLUHA;dgely;9;5;
 ;ISCH;wiyl xeyi`;B;1;
 ;ISCR;dtwdl xeyi`;B;1;
 ;GDCR;i`xy` lceb;9;7;
 ;SUGL;gewl beq;9;10;
 ;ASM;daeg `zknq` m`d;B;1;
 ;SHOTEF;qelt szey;9;5;
 ;MAZAV;gewl avn;B;1
 ;PELE;ciip .lh;9;12;
 ;EMAIL;l"`ec zaezk;T;50;
 ;EMAIL1;g"ldpd l"`ec zaezk;T;50;
 ;IFHBMAIL;l"`ecl zipeayg gelyl m`d;B;
 ;COMP;dxag;T;30;
 ;HBNOW;ziciin zipeayg `ivedl m`d;B;
 ;ROLE;ciwtz;T;20;
 ;ORDLIST;zepnfd zniyx  qitcdl dti`;S(LBPRN);
 ;ORDCONT;zepnfd okez qitcdl m`d;S(LBPRN);
 ;BIGTM;dlecb zqtcnl gelyn.z qitcdl m`d;B;
 ;CHKTZ;.f.z wecal m`d;B;
 ;TMBLIMH;mixign `ll gelyn.z qitcdl m`d;B;
 Q  ;
 ;
LBPRN ;
 ;1;xewna wx qitcdl;
 ;2;wzrdae xewna qitcdl;
 ;0;qitcdl `l;
 Q  ;
 ;
INIT0 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM1")
 ;
 N A,GL,N,IND
 N VRMCITY S VRMCITY=$$^W4MAIN("VRMCITY") K @VRMCITY
 S GL=$$^W4GL("P1IR")
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S IND=$$INVH^%L1FRM(A)
 .S @VRMCITY@(IND)=A
 Q
 ;
 ;
INIT ;
 N GL,N,IND
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 S GL=$$^W4GL("LKH")
 S N=999 F  S N=$O(@GL@(N)) Q:N=""  D
 .S IND=N
 .I $G(%ARG("SORT")) S IND=$$ABC(N)
 .S @VRM@(IND)=N
 Q
 ;
ABC(N) ;
 S GL=$$^W4GL("LKH")
 N NM S NM=$$LKH^W4L(N)
 Q $$^W4ABCIND(N,NM)
 ;
SETVL(PRM) ;
 S RKV=$P(PRM,";") I RKV="" Q "NOTRKV"
 S LK=$P(PRM,";",2) I LK="" Q "NOTCUST"
 I '$$DC^W4L(LK) Q "WRONGCUST"
 S VL=$$INVH^%L1FRM($P(PRM,";",3))
 D PUT^W4L(LK,VL,RKV)
 Q 1
 
 

W4LKHHIP
W4LKHHIP ; [ 09.02.25 04:47 ] [ 08.02.25 10:50 ] [ 07.02.25 12:05 ] 
 N (JB,%ARG,%REM)
 ; 
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table dir="_$$^%W1DIR_" padding=""1px"" border=""0"" "
  W " width=""100%"" style=""font-size:"_$$^W3FSZ(12)
  W ";color:black;font-weight:bold;"_$$FONTFM^W3CSS_""" >",!
   W "<tr>"
     W "<td>"_$$^%W1DICT("CUSTOMNAME")_$$NBSP^%L1FRM(3)
      W "<input type=""text"" size=""16"" maxlength=""22"" id=""lkhname"" >"
     W "</td>"
     ;
     W "<td>"_$$^%W1DICT("TEL")_$$NBSP^%L1FRM(3)
      W "<input type=""text"" size=""10"" maxlength=""12"" id=""tel"" >"
     W "</td>"
     W "<td>"_$$^%W1DICT("TZ")_$$NBSP^%L1FRM(3)
      W "<input type=""text"" size=""10"" maxlength=""9"" id=""tz"" >"
     W "</td>"
     ;
     W "<td>"_$$^%W1DICT("ACCOUNT")_$$NBSP^%L1FRM(3)
      W "<input type=""text"" size=""10"" maxlength=""9"" id=""accnt"" >"
     W "</td>"
     ; 
     W "<td>"
      S W4SBMBCK("SZ")=12
      D ^W4SBMBCK
     W "</td>"
   W "</tr>",!
 W "</table>",!
 ; 
 I $G(%ARG("TZ"))="",$G(%ARG("TEL"))="",$G(%ARG("ACCNT"))="",$G(%ARG("LKH1"))="" Q
 ;
 S GL=$$^W4GL("LKH")
 S TMPL=$$^W4MAIN("TMPL") K @TMPL
 ;
 S N=999
 F  S N=$O(@GL@(N)) Q:N=""  D
 .S NM=$$LKH^W4L(N)
 .S LKH1=$$SPA^%L1FRM($G(%ARG("LKH1")))
 .S TZ=$$SPA^%L1FRM($G(%ARG("TZ")))
 .S TEL=$$SPA^%L1FRM($G(%ARG("TEL")))
 .S ACCNT=$$SPA^%L1FRM($G(%ARG("ACCNT")))
 .S OK=0
 .I $L(LKH1),$$SRCH^W1SRCH(NM,LKH1) S OK=1
 .I +TZ,+$$TZ^W4L(N)=+TZ S OK=1
 .I +TEL,$$TEL($$TELB^W4L(N))=$$TEL(TEL) S OK=1
 .I +TEL,$$TEL($$TELA^W4L(N))=$$TEL(TEL) S OK=1
 .I +TEL,$$TEL($$PELE^W4L(N))=$$TEL(TEL) S OK=1
 .I ACCNT'="",$$HESB^W4L(N)=ACCNT S OK=1
 .I ACCNT'="",$$DEFNHSB^W4HSVCB(N)=ACCNT S OK=1
 .Q:'OK
 .S @TMPL@(N)=$$LKH^W4L(N)
 ;
 W "<br><br>",!
  W "<div style=""overflow-y:auto;background-color:white;height:80%;width:60%;border:1px solid"" dir="""_$$^%W1DIR_""">",!
  W "<p></p>",! 
  W "<table id=""TblShow"" style=""width:90%"" cellpadding=""3px"" >",!
  S N="" F  S N=$O(@TMPL@(N)) Q:N=""  D
  .  S A=$G(^(N))
  .  W "<tr "_$$^W4TOUCH_"=""ClickLkh('"_N_"')"" "
  .   W " style=""color:blue;cursor:pointer;font-size:"_$$^W3FSZ(12)_""" "
  .  W ">",!
  .   W "<td width=""15%"">"_N_"</td>"
  .   W "<td>"
  .    W $$H2U^%L1FRM(A)
  .   W "</td>"
  .  W "</tr>",!
  W "</table>",!
 W "</div>",! 
 W "</div>",!
 Q
 ;
TEL(TEL) ; 
 Q +$TR(TEL,"-","")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKHM
W4LKHM(LKH,LKHN) ; SHINUJ MISPAR LAKUAH: LKH --> LKHN    [ 04.02.24 15:26 ] [ 18.09.17 12:48 ] [ 30.03.14 23:00 ] 
 Q:LKH=""!(LKHN="")  Q:LKH=LKHN
 N N,N2 S MLY=0
 ;;I $G(^[$$^%L1GLD]PLUK)["MLY" D
 .K %Q S %Q("X")=20,%Q("Y")=10
 .S %Q("Z")="i`ln ly d`ved zecerza mb gewl 'qn iepiy rval"
 .D ^%S2ASK S MLY=YES
 ;
 S @$$^W4GL("P1LKHM")@(1,LKH)=LKHN,@$$^W4GL("P1LKHM")@(2,LKHN)=LKH
1 ;-------- LKH IN INDEX
 F GL="KLF","KLPTCH","LKK","P1CHZM","P1EZL","P1EZLI","P1EZLI0","P1LHB" D
 .D CPGLN(GL,LKH,LKHN)
 F GL="P1MVCLK","P1HL","P1HL0","P1HL1","P1HL2","P1HLM1","P1HLM2" D
 .D CPGLN(GL,LKH,LKHN)
 F GL="P1NOMVC","P1MVCHL","P1MVCHLA","P1LIM","P1LKDM","P1LKWK","P1CHB","PARLKH" D
 .D CPGLN(GL,LKH,LKHN)
 ;
 I $D(@$$^W4GL("LKH")@(LKH)) D
 .D CPGLN("LKH",LKH,LKHN)
 .S FILE="^LKH",STRING=LKH,RZD="*" D KF^%L1SCSV
 .D PUT^W4L(LKHN,$$LKH^W4L(LKHN),"LKH")
 .D PUT^W4L(LKHN,$$KTV^W4L(LKHN),"KTV")
 .D PUT^W4L(LKHN,$$BAIT^W4L(LKHN),"BAIT")
 .D PUT^W4L(LKHN,LKHN,"TELB")
 ;
2 ; -------- LKH IN INDEX LEVEL 2
 F GL="KLLKTH","P1MVCL","P1MVCL1","P1EZLI" D CPGLN2(GL,LKH,LKHN)
 ;
23 ; -------- LKH IN INDEX LEVEL 3
 F GL="P1MVCS","P1EZLPR" D CPGLN3(GL,LKH,LKHN)
 ;
3 ;------- LKH IN TOHEN
 S N="" F  S N=$O(@$$^W4GL("KLIN")@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@$$^W4GL("KLIN")@(N,N1)) Q:N1=""  D
 ..I $G(^(N1))=LKH S ^(N1)=LKHN
 ..I $P($G(^(N1)),"+")=LKH S $P(^(N1),"+")=LKHN
 ..I $P($G(^(N1)),"^")=LKH S $P(^(N1),"^")=LKHN
 ..I N="H",$D(@$$^W4GL("KLIN")@(N,N1,LKH)) D
 ...M @$$^W4GL("KLIN")@(N,N1,LKHN)=@$$^W4GL("KLIN")@(N,N1,LKH)
 ;
 S N="" F  S N=$O(@$$^W4GL("KLLKHTZ")@(N)) Q:N=""  D
 .I $G(^(N))=LKH S ^(N)=LKHN
 ;
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  D
 .S NMB=$P($G(^(N)),"\") I $G(NMB),NMB=LKH S $P(@$$^W4ORD@(N),"\")=LKHN
 .I $P($G(@$$^W4ORD@(N)),"\",27)=LKH S $P(@$$^W4ORD@(N),"\",27)=LKHN
 .S N1="" F  S N1=$O(@$$^W4ORD@(N,"CB","ASR",N1)) Q:N1=""  D
 ..I $P(^(N1),"*")=LKH S $P(^(N1),"*")=LKHN
 ..I $P(^(N1),"*",6)=LKH S $P(^(N1),"*",6)=LKHN
 ;
 S N="" F  S N=$O(@$$^W4GL("P1EZL")@(N)) Q:N=""  I $G(^(N))=LKH S ^(N)=LKHN
 S N="" F  S N=$O(@$$^W4GL("P1TZ")@(N)) Q:N=""  D
 .S NMB=$P(^(N),"\") I NMB=LKH S $P(@$$^W4GL("P1TZ")@(N),"\")=LKHN
 ;
 S N="" F  S N=$O(@$$^W4GL("P1LHB")@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@$$^W4GL("P1LHB")@(N,N1)) Q:N1=""  D
 ..I $D(@$$^W4GL("P1LHB")@(N,N1,LKH)) D
 ...M @$$^W4GL("P1LHB")@(N,N1,LKHN)=@$$^W4GL("P1LHB")@(N,N1,LKH)
 ...K @$$^W4GL("P1LHB")@(N,N1,LKH)
 ...D ^%S3GLSV($$^W4GL("P1LHB")_"("""_N_""","""_N1_""","""_LKH_""")",$$^W4FGIB,"K")
 ...D ^%S3GLSV($$^W4GL("P1LHB")_"("""_N_""","""_N1_""","""_LKHN_""")",$$^W4FGIB)
 ;
 S N="" F  S N=$O(@$$^W4GL("P1HB2")@(N)) Q:N=""  I N>0 S A=$G(^(N)) D
 .I $P(A,"\",4)=LKH S $P(A,"\",4)=LKHN
 .I $P(A,"\",6)=LKH S $P(A,"\",6)=LKHN
 .S @$$^W4GL("P1HB2")@(N)=A
 ;
 ;----------------- SHINUY LKH B-MLY
 ;
 ;;I MLY D MLYLKH(LKH,LKHN)
 ;
4 ;------ CLEAR
 N N1
 F GL="KLF","KLPTCH","LKH","LKK","P1CHZM","P1EZL","P1EZLI" D KILL(GL,LKH)
 F GL="P1LHB","P1MVCLK","P1HL","P1HL1","P1HL2","P1HL3","P1HLM1","P1HLM2" D KILL(GL,LKH)
 F GL="P1NOMVC","P1MVCHL","P1MVCHLA","P1LIM","P1LKDM","P1LKWK" D
 .D KILL(GL,LKH)
 ;
 S @$$^W4GL("P1LKHM")@(1,LKH)=LKHN_"*"_$H,@$$^W4GL("P1LKHM")@(2,LKHN)=LKH_"*"_$H
 D ^%S3GLSV($$^W4GL("P1LKHM")_"(1,"""_LKH_""")",$$^W4FGIB)
 D ^%S3GLSV($$^W4GL("P1LKHM")_"(2,"""_LKH_""")",$$^W4FGIB)
 ;
 F GL="P1CHB","P1EZLI0","P1HL0","PARLKH" D KILL(GL,LKH)
 ;
 S N1="" F  S N1=$O(@$$^W4GL("KLIN")@("H",N1)) Q:N1=""  K @$$^W4GL("KLIN")@("H",N1,LKH) D
 .D ^%S3GLSV($$^W4GL("KLIN")_"(""H"","""_N1_""","""_LKH_""")",$$^W4FGIB,"K")
 Q
 ;
MLYLKH(LKH,LKHN) ;
 N SHANA,STR,TSTR,TZ
 N UCIMLY S UCIMLY=$$^P1MLY
 S SHANA="" F  S SHANA=$O(^[UCIMLY]MLY(SHANA)) Q:SHANA=""  D
 .S STR="" F  S STR=$O(^[UCIMLY]MLY(SHANA,STR)) Q:STR=""  D
 ..S TSTR="" F  S TSTR=$O(^[UCIMLY]MLY(SHANA,STR,TSTR)) Q:TSTR=""  D
 ...S TZ="" F  S TZ=$O(^[UCIMLY]MLY(SHANA,STR,TSTR,2,TZ)) Q:TZ=""  I TZ["-000" D
 ....I $P($G(^(TZ)),"*",2)=LKH S $P(^(TZ),"*",2)=LKHN
 Q
 ;
CPGLN(GL,LKO,LKN) ;
 I $D(@$$^W4GL(GL)@(LKO)) M @$$^W4GL(GL)@(LKN)=@$$^W4GL(GL)@(LKO)
 D ^%S3GLSV($$^W4GL(GL)_"("""_LKN_""")",$$^W4FGIB)
 Q
 ;
CPGLN2(GL,LKO,LKN) ;
 N N
 S N="" F  S N=$O(@$$^W4GL(GL)@(N)) Q:N=""  D
 .I $D(@$$^W4GL(GL)@(N,LKO)) D
 ..M @$$^W4GL(GL)@(N,LKN)=@$$^W4GL(GL)@(N,LKO)
 .K @$$^W4GL(GL)@(N,LKO)
 .D ^%S3GLSV($$^W4GL(GL)_"("""_N_""","""_LKO_""")",$$^W4FGIB,"K")
 .D ^%S3GLSV($$^W4GL(GL)_"("""_N_""","""_LKN_""")",$$^W4FGIB)
 Q
 ;
CPGLN3(GL,LKO,LKN) ;
 N N,N1
 S N="" F  S N=$O(@$$^W4GL(GL)@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@$$^W4GL(GL)@(N,N1)) Q:N1=""  D
 ..I $D(@$$^W4GL(GL)@(N,N1,LKO)) D
 ...M @$$^W4GL(GL)@(N,N1,LKN)=@$$^W4GL(GL)@(N,N1,LKO)
 ...K @$$^W4GL(GL)@(N,N1,LKO)
 ...D ^%S3GLSV($$^W4GL(GL)_"("""_N_""","""_N1_""","""_LKO_""")",$$^W4FGIB,"K")
 ...D ^%S3GLSV($$^W4GL(GL)_"("""_N_""","""_N1_""","""_LKN_""")",$$^W4FGIB)
 Q
 ;
KILL(GL,LKO) ;
 K @$$^W4GL(GL)@(LKO)
 D ^%S3GLSV($$^W4GL(GL)_"("""_LKO_""")",$$^W4FGIB,"K")
 Q
 
 

W4LKHMAX
W4LKHMAX(STAM) ; [ 18.08.12 17:55 ] [ 13.10.11 12:23 ] [ 12.10.11 13:28 ]
 Q $G(@$$^W4PRM@("LKHMAX"))

W4LKHMGR
W4LKHMGR ; [ 20.11.17 09:53 ] [ 31.01.14 14:14 ] [ 22.09.13 19:48 ] 
GET ;
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4LKHPRM-GET","JB=JB & MSD=MSD")
 ;
 S NAME=$$H2U^%L1FRM($G(@$$^W4PL@("ESEK",1)))
 S MURSH=$G(@$$^W4PL@("ESEK",4))
 S LOGO=$$FUNC^%UCASE($$LOGO^W3PRM(MSD))
 ;
 D PUT^%W3DEB("W4LKHMGR-GET","NAME=NAME & MURSH=MURSH")
 ;
 S KLIN=$$^W4KLIN
 ;
 S HBIN=$$FIRST("H") I $$EXIST("H") S HBIN=HBIN_$$NOMOD
 S HBZIN=$$FIRST("TZ") I $$EXIST("TZ") S HBZIN=HBZIN_$$NOMOD
 S CBIN=$$FIRST("CB") I $$EXIST("CB") S CBIN=CBIN_$$NOMOD
 S HMKIN=$$FIRST("HMK") I $$EXIST("HMK") S HMKIN=HMKIN_$$NOMOD
 S TMIN=$$FIRST("TM") I $$EXIST("TM") S TMIN=TMIN_$$NOMOD
 S NOHD=$$NOHD^W4PRM
 ;
 S SERNUM=$$SERNUM^W3PRM
 ;
 S IGUL='$G(@$$^W4PRM@("NOIGUL"))
 S PRMAM=$$PRMAM^W4LKH
 ;
 S CSR=$$^W4LKHCSR
 S CAJ=$$CAJ^W4LKH
 S HSHV=$$HSHV^W4LKH
 S NEWMLY=$$NEWMLY^W3PRM
 ;
 S COLOR=$$COLOR^W4LKH
 S MIDA=$$SIZE^W4LKH
 S MTB=$$MTB^W4LKH
 ;
 S DIRFROM=$$FUNC^%UCASE($$DIRFROM^W4LKH)
 S FROM=$$FUNC^%UCASE($$FROM^W4LKH)
 S SMTP=$$FUNC^%UCASE($$SMTP^W4LKH)
 S USER=$$FUNC^%UCASE($$USER^W4LKH)
 S PSW=$$PSW^W4LKH
 ;
 D PUT^%W3DEB("W4LKHMGR-GET","HBIN=HBIN & HBZIN=HBZIN & CBIN=CBIN & HMKIN=HMKIN & TMIN=TMIN & UGUL=IGUL")
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4LKHMGR-SAVE","PARAM=PARAM & JB=JB & MSD=MSD")
 ;
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=$$CNWEB^%L1FRM(B)
 ;
 S @$$^W4PL@("LOGO")=$$FUNC^%LCASE(LOGO)
 ;
 S @$$^W4PL@("ESEK",1)=$$INVH^%L1FRM($G(NAME))
 S @$$^W4PL@("ESEK",4)=$G(MURSH)
 ;
 S KLIN=$$^W4KLIN
 ;
 I $G(HBIN)>0,'$$EXIST("H") K @KLIN@("H") S @KLIN@("H",HBIN-1)="IN"
 I $G(CBIN)>0,'$$EXIST("CB") K @KLIN@("CB") S @KLIN@("CB",CBIN-1)="IN"
 I $G(HBZIN)>0,'$$EXIST("TZ") K @KLIN@("TZ") S @KLIN@("TZ",HBZIN-1)="IN"
 I $G(HMKIN)>0,'$$EXIST("HMK") K @KLIN@("HMK") S @KLIN@("HMK",HMKIN-1)="IN"
 I $G(TMIN)>0,'$$EXIST("TM") K @KLIN@("TM") S @KLIN@("TM",TMIN-1)="IN"
 ;
 S @$$^W4PRM@("NOIGUL")='$G(IGUL)
 S @$$^W4GL("W3PRM")@("PRMAM")=PRMAM
 ;
 S @$$^W4GL("W3PRM")@("CAJ")=CAJ
 S @$$^W4GL("W3PRM")@("HSHV")=HSHV
 S @$$^W4GL("W3PRM")@("NEWMLY")=NEWMLY
 S @$$^W4GL("W3PRM")@("LKHCSR")=CSR
 S @$$^W4GL("W3PRM")@("COLOR")=COLOR
 S @$$^W4GL("W3PRM")@("SIZE")=MIDA
 S @$$^W4GL("W3PRM")@("MTB")=MTB
 S @$$^W4GL("W3PRM")@("SERNUM")=SERNUM
 S @$$^W4GL("W3PRM")@("MAIL","DIRFROM")=$$FUNC^%LCASE(DIRFROM)
 S @$$^W4GL("W3PRM")@("MAIL","FROM")=$$FUNC^%LCASE(FROM)
 S @$$^W4GL("W3PRM")@("MAIL","SMTP")=$$FUNC^%LCASE(SMTP)
 S @$$^W4GL("W3PRM")@("MAIL","USER")=$$FUNC^%LCASE(USER)
 S @$$^W4GL("W3PRM")@("MAIL","PSW")=$$FUNC^%LCASE(PSW)
 ;
 S @$$^W4PRM@("NOHD")=NOHD
 Q 1
 ;
FIRST(VD) ;
 N KLIN
 S KLIN=$$^W4KLIN
 N FIRST S FIRST=$O(@KLIN@(VD,""))
 I FIRST="" Q ""
 I $G(@KLIN@(VD,FIRST))'="IN" Q ""
 Q (FIRST+1)
 ;
EXIST(VD) ;
 N KLIN
 S KLIN=$$^W4KLIN
 I $D(@KLIN@(VD))<10 Q 0
 N FIRST S FIRST=$O(@KLIN@(VD,""))
 N SEC S SEC=$O(@KLIN@(VD,FIRST))
 I SEC Q 1
 I $G(@KLIN@(VD,FIRST))'="IN" Q 1
 Q 0
 ;
NOMOD(STAM) ;
 Q "<>DISABLE"
 

W4LKHPRM
W4LKHPRM ; [ 06.07.25 05:14 ] [ 02.07.25 16:33 ] [ 11.07.19 06:19 ] 
GET ;
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4LKHPRM-GET","JB=JB & MSD=MSD")
 S KTOV=$$H2U^%L1FRM($G(@$$^W4PL@("ESEK",2)))
 S DOAR=$$H2U^%L1FRM($G(@$$^W4PL@("ESEK",9)))
 S TEL=$G(@$$^W4PL@("ESEK",3))
 S ESEK=$G(@$$^W4PL@("ESEK",4))
 S FAX=$G(@$$^W4PL@("ESEK",5))
 S EMAIL=$G(@$$^W4PL@("ESEK",6))
 S PELE=$G(@$$^W4PL@("ESEK",7))
 S SITE=$G(@$$^W4PL@("ESEK",8))
 S OPRTRTZ=$G(@$$^W4PL@("OPRTRTZ"))
 ;;S COORD=$G(@$$^W4PL@("ESEK",10))_"<>READONLY"
 ;;S LOGO=$G(@$$^W4PL@("LOGO"))
 ;;S HEIGHT=$G(@$$^W4PL@("LOGO","HEIGHT"))
 ;;S WIDTH=$G(@$$^W4PL@("LOGO","WIDTH"))
 ;;S NOHD=$G(@$$^W4PRM@("NOHD"))
 S MYIP=$G(@$$^W4PRM@("MYIP"))
 ;;S KOTACNT=$G(@$$^W4PRM@("KOTACNT"))
 ;;S KOTACNTT=$G(@$$^W4PRM@("KOTACNTT"))
 ;;S KOTACNTD=$G(@$$^W4PRM@("KOTACNTD"))
 D PUT^%W3DEB("W4LKHPRM-GET","NOACCSUM=NOACCSUM & WARRPRD=WARRPRD")
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4LKHPRM-SAVE","PARAM=PARAM & JB=JB & MSD=MSD")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=$$CNWEB^%L1FRM(B)
 ;
 S @$$^W4PL@("ESEK",2)=$$INVH^%L1FRM($G(KTOV))
 S @$$^W4PL@("ESEK",3)=$G(TEL)
 I '$$^W4LKH S @$$^W4PL@("ESEK",4)=$G(ESEK)
 S @$$^W4PL@("ESEK",5)=$G(FAX)
 S @$$^W4PL@("ESEK",6)=$G(EMAIL)
 S @$$^W4PL@("ESEK",7)=$G(PELE)
 S @$$^W4PL@("ESEK",8)=$G(SITE)
 S @$$^W4PL@("ESEK",9)=$$INVH^%L1FRM($G(DOAR))
 ;;I $G(COORD)["<>" S COORD=$P(COORD,"<>")
 ;;S @$$^W4PL@("ESEK",10)=$G(COORD)
 ;;S @$$^W4PL@("LOGO")=$$FUNC^%LCASE(LOGO)
 ;;S @$$^W4PL@("LOGO","HEIGHT")=HEIGHT
 ;;S @$$^W4PL@("LOGO","WIDTH")=WIDTH
 ;;S @$$^W4PRM@("NOHD")=NOHD
 S @$$^W4PL@("OPRTRTZ")=OPRTRTZ
 S @$$^W4PL@("TRDDP")=4
 S @$$^W4PRM@("MYIP")=$$FUNC^%LCASE(MYIP)
 ;;S @$$^W4PRM@("KOTACNT")=KOTACNT
 ;;S @$$^W4PRM@("KOTACNTT")=$$INVH^%L1FRM(KOTACNTT)
 ;;S @$$^W4PRM@("KOTACNTD")=KOTACNTD
 Q 1
 ;
ESEK ;
 I '$$^W4TZ(ESEK) S %SC("ER")=1
 Q
 ;
SETOPRTRTZ(OPRTRTZ) ; 
 N OLD S OLD=$G(@$$^W4PL@("OPRTRTZ"))
 I OLD,$L(OLD)>6,$$^W4TZ(OLD) Q
 I $L($G(OPRTRTZ))<6 Q
 S @$$^W4PL@("OPRTRTZ")=OPRTRTZ 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKHSRV
W4LKHSRV ; [ 26.03.11 15:45 ] [ 28.02.10 12:31 ] [ 06.02.10 19:09 ]
GET ;
 S NOACCSUM=$G(@$$^W4PRM@("NOACCSUM"))
 S WARRPRD=$G(@$$^W4PRM@("WARRPRD"))
 D PUT^%W3DEB("W4LKHSRV-GET","NOACCSUM=NOACCSUM & WARRPRD=WARRPRD")
 Q
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4LKHSRV-SAVE","PARAM=PARAM & JB=JB & MSD=MSD")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=$$CNWEB^%L1FRM(B)
 ;
 S @$$^W4PRM@("NOACCSUM")=$G(NOACCSUM)
 S @$$^W4PRM@("WARRPRD")=$G(WARRPRD)
 Q 1

W4LKHSUM
W4LKHSUM(DAT) ; [ 26.12.14 18:41 ] [ 14.04.12 14:26 ] [ 13.04.12 19:49 ]
 N (JB,%ARG,%REM,DAT,SGIRATJOM,DOCH) ; -- DAT- YYMMDD
 D ^W4IN
 S KUP=901,NZ=0
 I $D(SGIRATJOM) S NZ=$G(@$$^W4GL("Z"))+1
 S DT=$$^%L1DC(DAT,4)
 S GLBL=$$^W4MAIN("TEMP") K @GLBL
 ;
 D DOCSUM(DT)
 ;
 I $G(DOCH)="Z" D
 .N LAST S LAST=$O(@$$^W4GL("W4DIRD")@(DT,999999),-1)
 .I LAST,$G(^(LAST))'["^" S ^(LAST)=$G(^(LAST))_",^"
 ;
 ;------------------ HMK HOFSHI ----------------------------
 K CBCB
 D CB^W4SUM(DAT,"HMK")
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 ;
 ; ----------------- KABALOT -------------------------------
 K CBCB
 D CB^W4SUM(DAT,"CB")
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 ;
 ;----------------- HESHB-T  --------------------------------
 D FRMHSVH^W4SUM(DAT)
 ;
 ;----------------- HESHBONIOT ZICUY ------------
 G MVTOT
 ;
 N N,HB,STRING,SUM,DHB,MAM
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("TZ",N)) Q:N=""  D
 .S STRING=$G(^(N)),HB=N,LKH=$$LK^W4STRING("TZ",N)
 .I STRING'["+",STRING'["^",STRING'["W" D  ; --- YADANI
 ..I '$D(@$$^W4GL("KLF")@(LKH,"TZ",HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",2)
 ..S DHB=$$^%L1DC($P(ST,"\",4),4)
 ..S MAM=$P(ST,"\",3)
 ..Q:DHB'=$$^%L1DC(DAT,3)
 ..D TMPHSVTZ^W4SUM(LKH,HB,SUM,MAM)
 ;
MVTOT ;
 S GLTOT=$$GLTOT($G(DOCH),DAT)
 K @GLTOT
 L +@GLTOT:1
 D ^%S2GLSV(GLTOT,$$^W4FGIB,"K")
 M @GLTOT=@$$^W4MAIN("TEMP")
 D ^%S2GLSV(GLTOT,$$^W4FGIB)
 K @$$^W4MAIN("TEMP")
 L -@GLTOT
 ;
 Q
 ;
 ;
DOCSUM(DT) ;
 ; ---------------- MEFURAT:TASHL, BIT, HANAHOT , DM MISHL  ------------------
 S NDOC="" F  S NDOC=$O(@$$^W4GL("W4DIRD")@(DT,NDOC)) Q:NDOC=""  D
 .I $D(SGIRATJOM),$G(^(NDOC))["^" K @GLBL Q
 .S KMAM=$$KMAM^W4DOC(NDOC)
 .I $$MZ(NDOC) D
 ..S @GLBL@("F",1)=$G(@GLBL@("F",1))+$$MZ(NDOC)
 ..S @GLBL@("F#",1)=$G(@GLBL@("F#",1))+1
 ..S @GLBL@("F","CMAM")=$G(@GLBL@("F","CMAM"))+($$MZ(NDOC)*KMAM)
 .
 .N CHKS S CHKS=$$CHK(NDOC)-$$CHKB(NDOC)
 .I CHKS D
 ..S @GLBL@("GO",1)=$G(@GLBL@("GO",1))+CHKS
 ..S @GLBL@("GO#",1)=$G(@GLBL@("GO#",1))+$O(@$$GLHMKCB(NDOC)@(9999),-1)
 ..S @GLBL@("GO","CMAM")=$G(@GLBL@("GO","CMAM"))+(CHKS*KMAM)
 .I $$CHKB(NDOC) D
 ..S @GLBL@("GM",1)=$G(@GLBL@("GM",1))+$$CHKB(NDOC)
 ..S @GLBL@("GM#",1)=$G(@GLBL@("GM#",1))+1
 ..S @GLBL@("GM","CMAM")=$G(@GLBL@("GM","CMAM"))+($$CHKB(NDOC)*KMAM)
 .
 .S VTS=$$VTS(NDOC)
 .I $$CAV(NDOC),$L(VTS) D
 ..S @GLBL@(VTS,1)=$G(@GLBL@(VTS,1))+$$CAV(NDOC)
 ..S @GLBL@(VTS_"#",1)=$G(@GLBL@(VTS_"#",1))+1
 ..S @GLBL@(VTS,"CMAM")=$G(@GLBL@(VTS,"CMAM"))+($$CAV(NDOC)*KMAM)
 .
 .S PRMAM=$$PRMAM^W4DOC(NDOC)
 .S AHMAM=$$AHMAM^W4DOC(NDOC)
 .S (BITQ,BITS,HNHP)=0
 .
 .F I=1:1 Q:'$D(@$$^W4GL("W4DOC")@(NDOC,I))  D
 ..N A,QN,SUM S A=$G(^(I))
 ..S QN=$P(A,"\",4)
 ..S SUM=QN*$P(A,"\",3)*(100-$P(A,"\",5))*.01
 ..I PRMAM S SUM=$J(SUM*(100+AHMAM)*.01,2,2)
 ..I QN<0 S BITQ=BITQ+QN,BITS=BITS+SUM
 ..S HNHP=HNHP+$$DISC^W4DOC(NDOC,I)
 .;
 .S @GLBL@("BIT",1)=$G(@GLBL@("BIT",1))-BITS
 .S @GLBL@("BIT#",1)=$G(@GLBL@("BIT#",1))-BITQ
 .
 .D TOT^W4DOC(NDOC)
 .I DISCNIS+DISCA D
 ..S @GLBL@("MIN",1)=$G(@GLBL@("MIN",1))+DISCNIS+DISCA ;+HNHP
 ..S @GLBL@("MIN#",1)=$G(@GLBL@("MIN#",1))+1
 .
 .I DMSH D
 ..S @GLBL@("DMSH",1)=$G(@GLBL@("DMSH",1))+DMSH
 ..S @GLBL@("DMSH#",1)=$G(@GLBL@("DMSH#",1))+1
 .
 .I $D(@$$^W4GL("W4DOC")@(NDOC,"TM")),'$D(@$$^W4GL("W4DOC")@(NDOC,"TM","HB")) D
 ..S @GLBL@("TM",1)=$G(@GLBL@("TM",1))+$$SUMTD^W4DOC(NDOC)
 ..S @GLBL@("TM#",1)=$G(@GLBL@("TM#",1))+1
 Q
 ;
 ;
GLHMKCB(NDOC)
 Q $$^W4GL("W4DOC")_"("_+NDOC_",""HMK"",""CB"")"
 ;
HMKCB(NDOC)
 Q $G(@$$GLHMKCB(NDOC))
 ;
HMKCBV(NDOC)
 Q $G(@$$^W4GL("W4DOC")@(NDOC,"HMK","CBV"))
 ;
MZ(NDOC) ;
 N A
 S A=$$HMKCB(NDOC)
 Q $P(A,"\",2)
 ;
CHK(NDOC) ;
 N A
 S A=$$HMKCB(NDOC)
 Q $P(A,"\",6)
 ;
CHKB(NDOC) ;
 N A
 S A=$$HMKCB(NDOC)
 Q $P(A,"\",8)
 ;
VTS(NDOC) ;
 N A
 S A=$$HMKCBV(NDOC)
 Q $E($P(A,"*"),2,6)
 ;
CAV(NDOC) ;
 N A
 S A=$$HMKCBV(NDOC)
 N SUM S SUM=$P(A,"*",7)
 Q SUM
 ;
GLCB(NOM) ;
 N STRING
 S STRING=$$LK^W4STRING("CB",NOM) I STRING="" Q ""
 Q $G(@$$^W4GL("KLF")@(STRING,"CB",NOM))
 ;
GLCBV(NOM) ;
 N STRING
 S STRING=$$LK^W4STRING("CB",NOM) I STRING="" Q ""
 Q $G(@$$^W4GL("KLF")@(STRING,"CBV",NOM))
 ;
MZCB(NOM) ;
 N A S A=$$GLCB(NOM)
 Q $P(A,"\",2)
 ;
CHKCB(NOM) ;
 N A S A=$$GLCB(NOM)
 Q $P(A,"\",6)-$P(A,"\",8)
 ;
HVBCB(NOM) ;
 N A S A=$$GLCB(NOM)
 Q $P(A,"\",8)
 ;
VTSCB(NOM) ;
 N A
 S A=$$GLCBV(NOM)
 Q $E($P(A,"*"),2,6)
 ;
CAVCB(NOM) ;
 N A
 S A=$$GLCBV(NOM)
 N SUM S SUM=$P(A,"*",7)
 Q SUM
 ;
GLTOT(DOCH,DAT) ;
 N GLBL
 D GLBL^W4SUM($G(DOCH),DAT)
 Q GLBL

W4LKHTOT
W4DMANY ; [ 17.01.13 10:21 ] [ 15.01.11 19:42 ] [ 29.05.10 20:54 ]
 K (JB,%ARG,%REM) D ^W4IN
 Q:$G(%ARG("SHOW"))=0
 S %SCRN=$S($G(@$$^W4PL@("MATB")):"P1TOTMT",1:"W4TOT")
P1 ;
 S TIPPS=$$TIPPS^W4TOT("")
 S DAT1=%ARG("MEDAT"),DAT2=%ARG("ADDAT")
 S DAT01=$$^%L1DC(DAT1,3),DAT02=$$^%L1DC(DAT2,3)
 D 100^W4TOT
 K SUMMTB
 ;;S (SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSH,TIP1,HAVT,CASHD,SMP)=0
 D ^W4SUMZRO
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D ^W4SUM
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D 101^W4TOT
 ;
 S CASHD=$$^W4SUMV(DAT01,DAT02)
 ;
 D 102^W4TOT
 ;
 D PC
 Q
 ;
PC ;
 K @$$^W4MAIN("TMPREP")
PC1 N %NM,%NOM
 S %NM="" F  S %NM=$O(@$$^W4SCR@(%SCRN,"P","NAME",%NM)) Q:%NM=""  D
 .S %NOM=$G(^(%NM))
 .N %VL,%PRM,%TYP
 .S %VL=$G(@%NM)
 .S %PRM=$G(@$$^W4SCR@(%SCRN,"P",%NOM,"CRD"))
 .S %TYP=$P(%PRM,",",3)
 .I %TYP="N" S %VL=$J(%VL,$P(%PRM,",",4),$P(%PRM,",",5))
 .S @$$^W4MAIN("TMPREP")@("P",%NOM)=%VL
 .S @$$^W4MAIN("TMPREP")@("P",%NOM,"TYP")=%TYP
 ;
 I $D(%L1SCPC) D
 .N %N S %N="" F  S %N=$O(%L1SCPC(%N)) Q:%N=""  D
 ..S @$$^W4MAIN("TMPREP")@("P",%N)=$G(%L1SCPC(%N))
 ;
PC2 K @$$^W4MAIN("TMPREP")@("GTR")
 I $D(@$$^W4REPSCR@(%SCRN,"GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=@$$^W4REPSCR@(%SCRN,"GTR")
 K @$$^W4MAIN("TMPREP")@("GTD")
 I $D(@$$^W4REPSCR@(%SCRN,"GTD"))>9 D
 .M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@(%SCRN,"GTD")
 ;
 I $D(S4B) D ^%W1FREPB(%SCRN) G KILL
 ;
 D ^%W1FREP(%SCRN)
 ;
KILL ;;K @$$^W4MAIN("TMPREP")
 Q
 ;
DOT ;
 W "<div style=""position:absolute;left:1px;top:1px""></div>",!
 Q

W4LKHZ
W4LKHZ ;             [ 14.11.22 12:54 ] [ 29.12.21 08:06 ] [ 16.06.20 09:52 ] 
 N (JB,%REM,%ARG,DOCH,DISP,P1X,DOCH,MEK)
 D ^W4IN,^W4MDPPC,^%L1TS
 K @$$^W4MAIN("TEMP")@("L")
 S SM=0,NZ=$G(@$$^W4GL("Z"))+1
 S TXT="" D S1 S TXT="" D S1
 I $$HB S TXT=$$^%L1DC(P1DZ,1)_"  - l illk zegewl g""ec"
 I '$$HB S TXT=$$PCTX("REPORTZCUST","S")_" "_$$^%L1DC(P1DZ,1)
 S TXTL=$L(TXT)
 S TXT=$J("",3)_TXT D S1
 ;;S TXT=$J("",3)_$TR($J("",TXTL)," ","-") D S1
 S TXT=$TR($J("",35)," ","-") D S1
 D ASR
 I $L($G(PRINT)) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
ASR ;
 N LKH,SUMC,TXT S LKH=""
 N SSUM S SSUM=0
 F  S LKH=$O(@$$^W4MAIN("P1LKHZ")@(LKH)) Q:LKH=""  S SUMC=$G(^(LKH)) D
 .N LKH1
 .I $$HB S LKH1=$$HBR^%L1FRM($G(@$$^W4GL("LKH")@(LKH)),16)
 .I '$$HB S LKH1=$$ENG^%L1FRM($G(@$$^W4GL("LKH")@(LKH)),16)
 .S SSUM=SSUM+SUMC
 .I $$HB S TXT=$J(SUMC,8,2)_" : "_LKH1_$J(LKH,11) D S1
 .I '$$HB S TXT=$J(LKH,11)_LKH1_" : "_$J(SUMC,8,2) D S1
 .
 .I $D(@$$^W4MAIN("P1LKHZ")@(LKH))>9 D
 ..S TL="" F  S TL=$O(@$$^W4MAIN("P1LKHZ")@(LKH,TL)) Q:TL=""  D  S TXT="" D S1
 ...N A S A=$G(^(TL))
 ...I A D
 ....I $$HB S TXT=" g""y "_$J(TL,2)_" ly miyelz "_$J(A,3) D S1
 ....I '$$HB S TXT=$J(A,3)_" "_$$PCTX("COUPONOF","S")_" : "_$J(TL,2)_" NIS" D S1
 .
 .I $D(@$$^W4MAIN("P1LKHZ")@(LKH))<10,$$TLUSH^W4L(LKH) D  S TXT="" D S1
 ..S TL=$$TLUSH^W4L(LKH),KMTL=$J(SUMC/TL,0,0)
 ..I $$HB S TXT=" g""y "_$J(TL,2)_" ly miyelz "_$J(KMTL,3)_" (?)" D S1
 ..I '$$HB S TXT="(?) "_$J(KMTL,3)_" "_$$PCTX("COUPONOF","S")_" "_$J(TL,2)_" NIS" D S1
 ;
 S TXT=$TR($J("",35)," ","-") D S1
 ;
 I $$HB S TXT=$J(SSUM,8,2)_" : "_$J("k""dq",27) D S1
 I '$$HB S TXT="TOTAL :"_$J($J(SSUM,8,2),27) D S1
 ;
 K @$$^W4MAIN("P1LKHZ")
 Q
 ;
 ;
S1 S SM1=1 D ^W4PCST(TXT,DISP)
 Q
 ;
SUM ;
 K @$$^W4MAIN("TEMP")@("L")
 N LKH,SUMC,TXT,I,J S LKH="",I=0
 F  S LKH=$O(@$$^W4MAIN("P1LKHZ")@(LKH)) Q:LKH=""  S SUMC=^(LKH) D
 .N A S A=$G(^(LKH)) S J=0
 .S I=I+1
 .N LKH1 S LKH1=$G(@$$^W4GL("LKH")@(LKH))
 .S @$$^W4MAIN("TEMP")@("L",I)=LKH_"\"_LKH1_"\"_SUMC_"\"
 .
 .I $D(@$$^W4MAIN("P1LKHZ")@(LKH))>9 S TL="" D
 ..F  S TL=$O(@$$^W4MAIN("P1LKHZ")@(LKH,TL)) Q:TL=""  D  S TXT="" D S1
 ...I $G(^(TL)) S J=J+1 S:J>1 I=I+1 D
 ....S $P(@$$^W4MAIN("TEMP")@("L",I),"\",4)=TL
 ....S $P(@$$^W4MAIN("TEMP")@("L",I),"\",5)=$G(@$$^W4MAIN("P1LKHZ")@(LKH,TL))
 ;
 K @$$^W4MAIN("P1LKHZ")
 Q
 ;
PCTX(KEY,L,PRM) ; 
 Q $$^W4PCTX(KEY,$G(L),$G(PRM)) 
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKITRA
W4LKITRA ; [ 29.09.15 10:36 ] [ 15.01.13 08:12 ] [ 06.07.12 10:40 ]
CUST ;
 N LKH
 K %SC("ER")
 S LKH=VL
 I '$$^W4ISCDLK(LKH) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FINDCUST"
 ;
 I '$$DC^W4L(LKH) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTOMERNOTEXIST"
 ;
 I '$$ISCR^W4L(LKH) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTNOTCREDIT"
 ;
 Q
 ;
INIT ;
 D CLEAR^W4SCASK
 D PUT^%W1PRM("VP","ITRA")
 D CREATE^W4ASK("ITRA","ITRA")
 Q

W4LKM
W4LKM(PRM,CODE) ; [ 19.08.25 12:09 ] [ 17.08.25 11:25 ] [ 13.08.25 13:42 ] 
 N (JB,%ARG,PRM,CODE)
 ;
 S CODE=$G(CODE)
 ;
 I $$LKMLOCAL^W4PRM,CODE,'$$D(CODE),$$D^W4L(CODE,$$^W4GL("LKH")) D
 .M @$$GL@(CODE)=@$$^W4GL("LKH")@(CODE)
 ;
 I $G(%ARG("FIRST")),$G(CODE)="",$$^W4MSL($$GETP^%W1PRM("NMB")) D
 .S CODE=$$GETP^%W1PRM("NMB")
 .S %ARG("CODE")=CODE
 ;
 I CODE D GETSRVLKH(CODE)
 ;
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W4CUSTTB")
 D PUT^%W3DEB("W4CUSTTB","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=0
 ;
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 ;
 N GL D GL^W3L
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 D PUT^%W1PRM("CODE",CODE)
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"
   W $$H2U^%L1FRM($$^W3MSDG(+MSD))_" - "
   W $$^%W1DICT("CLUBCUSTCARD")
 W "</td></tr>",!
 W "</table>",!
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 ;
 W "<table width="""_$$WD_"%"" border=0 dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  D CODE,NAME,STATUS
 W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" "
  W " cellpadding=""10"" width="""_$$WD_"%"" border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 ;
 W "<tr>",!
 D TEL
 D CITY
 W "</tr>",!
 ;
 W "<tr>"
  D MAIL("EMAIL")
  D STREET
 W "</tr>",!
 ;
 W "<tr>",!
  D YOMH
  D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
   W "<td "_$$^%W1ALIGN_">"
   W "<table border=""0"">"
    W "<tr "_$$^%W1ALIGN_" >"
     D HOME
     D FLAT
    W "</tr>",!
   W "</table>",!
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>",!
  D NEKUDOT
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 ;
 W "<br><br>",!
 D DIVBUT 
 Q
 ;
CODE D TD W "&nbsp;"_$$ZW_$$^%W1DICT("USERCODE")_"<br>"
  W "<span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"_$$^%W1DICT("TELRECOMMEND")_"</span>"
 W "</td>",!
 ;
 W "<td width=""28%"">" D INPC("CODE",100,12)
 W "&nbsp;&nbsp;<img id=""filter"" src=""w3filter.jpg"""
 W " onMouseUp=""Find('CODE','CODE!','WLKM')"" >",!
 W "</td>"
 ;
 Q
 ;
 ;
TEL D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("PELE",100,12,"LTR")
 Q
 ;
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td><td>&nbsp;&nbsp;"
 ;
 D INP("NAME","95%",45,$$^%W1DIR)
 Q
 ;
 ;
STREET D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td>"
 W "<td colspan=""1"">&nbsp;&nbsp;"
 D INP("STREET","95%",50,$$^%W1DIR)
 Q
 ;
HOME ;;D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
 W "<td "_$$^%W1ALIGN_">"
 D INP("HOME",50,5,"LTR")
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("FLAT")_"</td><td>&nbsp;"
 D INP("FLAT",60,5,"LTR")
 Q
 ;
ENTRANCE D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("ENTRANCE",60,5,$$^%W1DIR)
 Q
 ;
FLOOR D TD W "&nbsp;"_$$^%W1DICT("FLOOR")_"</td><td>&nbsp;"
 D INP("FLOOR",60,5,$$^%W1DIR)
 Q
 ;
CITY D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"</td>"
 W "<td>&nbsp;&nbsp;"
 N RKV S RKV="CITY"
 ;
 I $D(@$$^W4GL("P1IR"))>9,'$$CITYINPUT^W4PRM D  Q
 .W "<select"
 .W " name="""_RKV_""" id="""_RKV_""""
 .W " tabindex=""4"""
 .W " onChange=""ChangeCity()"" >",!
 .W "<option>&nbsp;</option>",!
 .N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..N IR S IR=$G(^(N))
 ..W "<option value='"_N_"'"
 ..I IR=$$IR(CODE) W " selected=""selected"""
 ..W " >"_$$H2U^%L1FRM(IR)_"</option>",!
 .W "</select>",!
 ;
 D INPCT
 W "</td>",!
 Q
 ;
 ;
INPCT ;
 W "<input type=""text"" size=""20"" "  ;;style=""width:180px"
 W ";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 W " dir="""_$$^%W1DIR_""""
 N VL S VL="" I $G(CODE) S VL=$$H2U^%L1FRM($TR($$IR(CODE),"-"," "))
 W " name=""CITY"" id=""CITY"" value="""_VL_""""
 W " tabindex=""4"""
 W " onChange=""ChangeCity()"" "
 ;
 I $$CITYINPUT^W4PRM,$$CITIESTABLE D
 .W " OnKeyPress=""KeyPressCity(event,this,'45%','300px')"" "
 Q
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 ;
CITIESTABLE(STAM) ; 
 I $D(@$$GLCITY)>9 Q 1
 Q 0
 ;
TZ N ZW S ZW=" "
 I $$MUSTTZ^W4PRM S ZW=$$ZW
 D TD W "&nbsp;"_ZW_$$^%W1DICT("BUSINESSID")_"</td><td>&nbsp;&nbsp;"
 D INP("TZ",120,10,"LTR")
 Q
 ;
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ADR")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">&nbsp;&nbsp;"
  W "<textarea cols=""36"" rows=""2"" id=""COMMENT"" >"
   N RKV S RKV=$$RKV("COMMENT")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W $$H2U^%L1FRM(RKV)
  W "</textarea>",!
 W "</td>"
 Q
 ;
 ;
MAIL(ID,ZW) D TD
 S:$G(ZW)="" ZW=" "
 W ZW_$$^%W1DICT(ID)_"</td><td>&nbsp;&nbsp;"
 N EMAIL X "S EMAIL=$$"_ID_"(CODE)"
 D INP(ID,"95%",60,"LTR")
 Q
 ;
YOMH D TD
  W "&nbsp;"_$$^%W1DICT("BIRTHDAY")
  W "</td>"
  W "<td>"
  S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
  S %W1DAT("NODAY")=""
  D INP("YOMH",8,8,"D")
 Q
 ;
STATUS ;
 D TD
  W "&nbsp;"_$$^%W1DICT("CUSTCLOSED")_"</td><td>&nbsp;&nbsp;"
  W "<input type=""checkbox"" id=""MAZAV"" "_$S('$$RKV("MAZAV")&$$D(CODE):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .;
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .D
 ..I RKV="HOME",$G(HOME) W " value="""_HOME_"""" Q
 ..
 ..I RKV="STREET" D
 ...N VL S VL=$$RKV(RKV)
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 ..
 ..W " value="""_RKVL_""""
 .
 .I RKV["EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,'"_RKV_"')"""
 .
 .W " />",!
 ;
 I $G(PRM)="IN",DIR="D" D
 .I '$G(CODE) D ^%W1DAT("YOMH","-","") Q
 .N %W1DAT S %W1DAT("NODAY")=""
 .D ^%W1DAT("YOMH",$$RKV(RKV),"") Q
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 ;
 I RKV="TZ" D
 .W "&nbsp;&nbsp;"
 .W $$^%W1DICT("CHECKID")
 .W " <input type=""checkbox"" id=""chktz"" "_$S($$RKV("CHKTZ"):"checked=""checked"" ",1:"")_" />"
 ;
 W "</td>",!
 Q
 ;
INPC(RKV,WD,SIZE) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW,'$$DEFISLK^W4PRM S CODE=$$CLR^W4CDLK(CODE)
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onChange=""Find('CODE','CODE','WLKM')"" >",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 Q
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D(CODE) Q $$P(FLD)
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I '$$D(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH(CODE))
 I FLD="MAZAV" Q $$MAZAV(CODE)
 I FLD="PELE" Q $$PELE(CODE)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV(CODE))
 I FLD="HOME" Q $$BAIT(CODE)
 I FLD="FLAT" Q $$DIRA(CODE)
 I FLD="CITY" Q $$H2U^%L1FRM($$IR(CODE))
 I FLD="EMAIL" Q $$EMAIL(CODE)
 I FLD="YOMH" Q $$JOMH(CODE)
 Q ""
 ;
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 D TEL
 D NAME
 W "</tr><tr>",!
 D STREET
 D HOME
 D FLAT
 W "</tr>",!
 W "</table>",!
 ;
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
 D CITY
 D YOMH
 W "</tr>",!
 W "<tr>"
 D MAIL("EMAIL")
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 W "<table width="""_$$WD_"%"" border=0 dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  W "<td width=""30%"">&nbsp;</td>"
  W "<td align=""center"">"
       D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
  W "</td>",!
  ;
  D BACK
  ;
  W "<td width=""30%"">&nbsp;</td>"
  W "</tr></table>",!
 W "</div>",!
 Q
 ;
BACK ; 
 W "<td align=""center"">",!
  D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</td>"
 Q
 ;
 ;
NEKUDOT ;
 W "<td "_$$INV^%W1ALIGN_" >"
  W $$^%W1DICT("NEKUDOT")
 W "</td>"
 Q
 ;
GL(STAM) ;
 Q $$^W4GL("WLKM")
 ;
D(CODE) ; 
 Q $$D^W4L(CODE,$$GL)
 ;
LKH(CODE) ;
 Q $$LKH^W4L(CODE,$$GL)
 ;
MAZAV(CODE) ;
 Q $$MAZAV^W4L(CODE,$$GL)
 ;
PELE(CODE) ; 
 Q $$PELE^W4L(CODE,$$GL)
 ;
KTV(CODE) ;
 Q $$KTV^W4L(CODE,$$GL)
 ;
BAIT(CODE) ; 
 Q $$BAIT^W4L(CODE,$$GL)
 ;
DIRA(CODE) ; 
 Q $$DIRA^W4L(CODE,$$GL)
 ;
IR(CODE)
 Q $$IR^W4L(CODE,$$GL)
 ;
JOMH(CODE) ; 
 Q $$JOMH^W4L(CODE,$$GL)
 ;
EMAIL(CODE) ; 
 Q $$EMAIL^W4L(CODE,$$GL)
 ;
 ;
ISTEL(TEL,PR)
 I $G(PR)="M"!$L(TEL),$TR(TEL,"-","")'?7N.N Q 0
 Q 1
 ;
 ;
GETSRVLKH(CODE) ; 
 N A,ST S LKMER=""
 ;
 I $$LKMLOCAL^W4PRM D  Q
 .S LKMER=$$^WLMSTAT("LKHSTAT",CODE)
 ;
 ;------------------------------------------------
 ;
 D ^W4SNDSRV("GETLKH","w3anslkm","CODE="_CODE)
 ;
 N FILEOU S FILEOU=$$FLOU^W4SNDSRV
 I '$$EXIST^%L1ZOS(FILEOU) D  Q
 .W "<script>",!
 . W "MsgA('CONNECTERROR','')" 
 .W "</script>",!
 .S LKMER="CONNECTERROR"
 ;
 O FILEOU:(REWIND:READONLY)
 S ST=""
 F  U FILEOU R A Q:$ZEOF  I A["<>LKH=" D
 .S ST=$P(A,"<>",2,250)
 ;
 S ST=$$RPL^%L1FRM(ST,"%20"," ")
 I ST?.U D  Q
 .W "<script>",!
 . W "MsgA('"_ST_"')" 
 .W "</script>",!
 .S LKMER=ST
 ;
 C FILEOU 
 Q
 ;
 ;
WD() 
 I $$1024^W4WDSCR Q 80 
 Q 60 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKM0
W4LKM(PRM,CODE) ; [ 27.06.21 10:04 ] [ 31.05.21 07:46 ] [ 30.05.21 12:26 ] 
 I $$OUTCOMP^W3VHOD D ^W4CUSTOU(PRM,CODE) Q
 ;
 N (JB,%ARG,CODE,PRM)
 ;
 I $G(%ARG("FIRST")),$G(CODE)="",$$^W4MSL($$GETP^%W1PRM("NMB")) D
 .S CODE=$$GETP^%W1PRM("NMB")
 .S %ARG("CODE")=CODE
 ;
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W4CUSTTB")
 D PUT^%W3DEB("W4CUSTTB","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 D PUT^%W3DEB("W4LKM","MSD=MSD")
 ;
 N GL D GL^W3L
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 D PUT^%W1PRM("CODE",CODE)
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" style=""font-size:"_$$^W3FSZ($S(PR800:16,1:18))_""" border=""1"">",!
 W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"
   W $$H2U^%L1FRM($$^W3MSDG(+MSD))_" - "
   W $$^%W1DICT("CLUBCUSTCARD")
 W "</td></tr>",!
 W "</table>",!
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 ;
 W "<table width=""60%"" border=0 dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  D CODE,NAME,STATUS
 W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" "
  W " cellpadding=""10"" width=""60%"" border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 ;
 W "<tr>",!
 D TEL
 D MAIL("EMAIL")
 W "</tr>",!
 ;
 W "<tr>"
  D CITY
  D STREET
 W "</tr>",!
 ;
 W "<tr>",!
  D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
   W "<td "_$$^%W1ALIGN_">"
   W "<table border=""0"">"
    W "<tr "_$$^%W1ALIGN_" >"
     D HOME
     D FLAT
    W "</tr>",!
   W "</table>",!
  W "</td>"
 W "</tr>",!
 ;
 W "<tr>",!
  D YOMH
  D NEKUDOT
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 ;
 D DIVBUT 
 Q
 ;
CODE D TD W "&nbsp;"_$$ZW_$$^%W1DICT("USERCODE")_"<br>"
  W "<span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"_$$^%W1DICT("TELRECOMMEND")_"</span>"
 W "</td>",!
 ;
 W "<td width=""28%"">" D INPC("CODE",100,12)
 W "&nbsp;&nbsp;<img id=""filter"" src=""w3filter.jpg"""
 W " onMouseUp=""Find('CODE','CODE!','LKH')"" >",!
 W "</td>"
 ;
 Q
 ;
 ;
TEL D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("PELE",100,12,"LTR")
 Q
 ;
NAME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td><td>&nbsp;&nbsp;"
 D INP("NAME","95%",45,$$^%W1DIR)
 Q
 ;
 ;
STREET D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td>"
 W "<td colspan=""1"">&nbsp;"
 D INP("STREET","95%",50,$$^%W1DIR)
 Q
 ;
HOME ;;D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
 W "<td "_$$^%W1ALIGN_">"
 D INP("HOME",50,5,"LTR")
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("FLAT")_"</td><td>&nbsp;"
 D INP("FLAT",60,5,"LTR")
 Q
 ;
ENTRANCE D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE")_"</td>"
 W "<td>&nbsp;&nbsp;" D INP("ENTRANCE",60,5,$$^%W1DIR)
 Q
 ;
FLOOR D TD W "&nbsp;"_$$^%W1DICT("FLOOR")_"</td><td>&nbsp;"
 D INP("FLOOR",60,5,$$^%W1DIR)
 Q
 ;
CITY D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"</td>"
 W "<td>&nbsp;&nbsp;"
 N RKV S RKV="CITY"
 ;
 I $D(@$$^W4GL("P1IR"))>9,'$$CITYINPUT^W4PRM D  Q
 .W "<select"
 .W " name="""_RKV_""" id="""_RKV_""""
 .W " tabindex=""4"""
 .W " onChange=""ChangeCity()"" >",!
 .W "<option>&nbsp;</option>",!
 .N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..N IR S IR=$G(^(N))
 ..W "<option value='"_N_"'"
 ..I IR=$$IR(CODE) W " selected=""selected"""
 ..W " >"_$$H2U^%L1FRM(IR)_"</option>",!
 .W "</select>",!
 ;
 D INPCT
 W "</td>",!
 Q
 ;
 ;
INPCT ;
 W "<input type=""text"" size=""20"" "  ;;style=""width:180px"
 W ";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 W " dir="""_$$^%W1DIR_""""
 N VL S VL="" I $G(CODE) S VL=$$H2U^%L1FRM($TR($$IR(CODE),"-"," "))
 W " name=""CITY"" id=""CITY"" value="""_VL_""""
 W " tabindex=""4"""
 W " onChange=""ChangeCity()"" "
 ;
 I $$CITYINPUT^W4PRM,$$CITIESTABLE D
 .W " OnKeyPress=""KeyPressCity(event,this,'45%','300px')"" "
 Q
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 ;
CITIESTABLE(STAM) ; 
 I $D(@$$GLCITY)>9 Q 1
 Q 0
 ;
TZ N ZW S ZW=" "
 I $$MUSTTZ^W4PRM S ZW=$$ZW
 D TD W "&nbsp;"_ZW_$$^%W1DICT("BUSINESSID")_"</td><td>&nbsp;&nbsp;"
 D INP("TZ",120,10,"LTR")
 Q
 ;
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT2ADR")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">&nbsp;&nbsp;"
  W "<textarea cols=""36"" rows=""2"" id=""COMMENT"" >"
   N RKV S RKV=$$RKV("COMMENT")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W $$H2U^%L1FRM(RKV)
  W "</textarea>",!
 W "</td>"
 Q
 ;
 ;
MAIL(ID,ZW) D TD
 S:$G(ZW)="" ZW=" "
 W ZW_$$^%W1DICT(ID)_"</td><td>&nbsp;"
 N EMAIL X "S EMAIL=$$"_ID_"(CODE)"
 D INP(ID,"95%",60,"LTR")
 Q
 ;
YOMH D TD
  W "&nbsp;"_$$^%W1DICT("BIRTHDAY")
  W "</td>"
  W "<td>"
  S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
  S %W1DAT("NODAY")=""
  D INP("YOMH",8,8,"D")
 Q
 ;
STATUS ;
 D TD
  W "&nbsp;"_$$^%W1DICT("CUSTCLOSED")_"</td><td>&nbsp;&nbsp;"
  W "<input type=""checkbox"" id=""MAZAV"" "_$S('$$RKV("MAZAV")&$$D(CODE):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 ;;I $$^W4TABLET=2 S WD=WD+5
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .D
 ..I RKV="HOME",$G(HOME) W " value="""_HOME_"""" Q
 ..
 ..I RKV="STREET" D
 ...N VL S VL=$$RKV(RKV)
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 ..
 ..W " value="""_RKVL_""""
 .
 .I RKV["EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,"_RKV_")"""
 .
 .W " />",!
 ;
 I $G(PRM)="IN",DIR="D" D
 .I '$G(CODE) D ^%W1DAT("YOMH","-","") Q
 .N %W1DAT S %W1DAT("NODAY")=""
 .D ^%W1DAT("YOMH",$$RKV(RKV),"") Q
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 ;
 I RKV="TZ" D
 .W "&nbsp;&nbsp;"
 .W $$^%W1DICT("CHECKID")
 .W " <input type=""checkbox"" id=""chktz"" "_$S($$RKV("CHKTZ"):"checked=""checked"" ",1:"")_" />"
 ;
 W "</td>",!
 Q
 ;
INPC(RKV,WD,SIZE) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW,'$$DEFISLK^W4PRM S CODE=$$CLR^W4CDLK(CODE)
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onChange=""Find('CODE','CODE','LKH')"" >",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 Q
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D(CODE) Q $$P(FLD)
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I '$$D(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH(CODE))
 I FLD="MAZAV" Q $$MAZAV(CODE)
 I FLD="PELE" Q $$PELE(CODE)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV(CODE))
 I FLD="HOME" Q $$BAIT(CODE)
 I FLD="FLAT" Q $$DIRA(CODE)
 I FLD="CITY" Q $$H2U^%L1FRM($$IR(CODE))
 I FLD="EMAIL" Q $$EMAIL(CODE)
 I FLD="YOMH" Q $$JOMH(CODE)
 Q ""
 ;
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 D TEL
 D NAME
 W "</tr><tr>",!
 D STREET
 D HOME
 D FLAT
 W "</tr>",!
 W "</table>",!
 ;
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
 D CITY
 D YOMH
 W "</tr>",!
 W "<tr>"
 D MAIL("EMAIL")
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ;
 N MC,I
 S MC="CODE~NAME!H~NMB~PELE~EMAIL~STREET!H~HOME~FLAT"
 S MC=MC_"~CITY!H~YOMH"
 S MC=MC_"~MAZAV"
 ;
 F I=1:1:$L(MC,"~") D
 .N FLD,RG,VL
 .S FLD=$P(MC,"~",I)
 .S RG=$P(FLD,"!",2),FLD=$P(FLD,"!")
 .S VL=$TR($P(PRM,"~",I),$C(160)_"?","")
 .S VL=$$CLEAR^%L1FRM(VL)
 .S VL=$$CNWEB^%L1FRM(VL)
 .S VL=$TR(VL,"\*","/X")
 .I RG="H"&($$^%W1DIR="RTL") S VL=$$INVH^%L1FRM(VL)
 .N A,A1,J S A=$$SPA^%L1FRM(VL)
 .S A1="" F J=1:1:$L(A) D
 ..N SMB S SMB=$E(A,J)
 ..I $A(SMB)<32!($A(SMB)>122) Q
 ..S A1=A1_SMB
 .S @FLD=A1
 ;
 I CITY?1N.N,$D(@$$^W4GL("P1IR")@(CITY)) S CITY=^(CITY)
 ;
 I $G(CODE)="" Q "CODE!D"
 ;
 N LSMB S LSMB=" " I '$$DEFISLK^W4PRM S LSMB=LSMB_"-"
 S CODE=$TR(CODE,LSMB,"")
 ;
 I $L(CODE)<4 Q "CODE!D"
 I $L(PELE),'$$ISTEL(PELE) Q "PELE!D"
 I HOME'?1N.E,HOME'="." Q "HOME!D"
 I '$L(CITY) Q "CITY!D"
 I '$L(NAME) Q "NAME!D"
 I '$L(STREET) Q "STREET!D"
 ;
PUT21 N RZD S RZD="*" Q:NAME=""  Q:CODE=""
 N ST S ST="LKH="_NAME_"<>MAZAV="_'$G(MAZAV)_"<>KTV="_STREET
 S ST=ST_"<>DIRA="_FLAT
 S ST=ST_"<>KOMA="_FLOOR_"<>BAIT="_HOME
 S ST=ST_"<>IR="_CITY_"<>PELE="_$G(PELE)
 S ST=ST_"<>EMAIL="_EMAIL_"<>JOMH="_$G(YOMH)
 ;
 S GL=$$GL
 ;
 I '$D(@GL@(CODE)) D
 .S DATPTH=$$^%L1DC($H,1) D PUT2^W4L(CODE,"DATPTH="_DATPTH)
 ;
 D PUT2(CODE,ST)
 ;
 S MSD=$$GET^%W1PRM("MSD")
 I $G(MSD) D ^%S2GLSV(GL_"("""_CODE_""")",$$^W3FGIB(MSD))
 ;
 Q 1
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 W "<td>"
       D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 W "</td>",!
  ;
  D BACK
  ;
  W "</tr></table>",!
 W "</div>",!
 Q
 ;
BACK ; 
 W "<td>",!
  D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</td>"
 Q
 ;
 ;
NEKUDOT ;
 W "<td>"
  W $$^%W1DICT("NEKUDOT")
 W "</td>"
 Q
 ;
GL(STAM) ;
 Q $$^W4GL("W4LKM")
 ;
D(CODE) ; 
 Q $$D^W4L(CODE,$$GL)
 ;
LKH(CODE) ;
 Q $$LKH^W4L(CODE,$$GL)
 ;
MAZAV(CODE) ;
 Q $$MAZAV^W4L(CODE,$$GL)
 ;
PELE(CODE) ; 
 Q $$PELE^W4L(CODE,$$GL)
 ;
KTV(CODE) ;
 Q $$KTV^W4L(CODE,$$GL)
 ;
BAIT(CODE) ; 
 Q $$BAIT^W4L(CODE,$$GL)
 ;
DIRA(CODE) ; 
 Q $$DIRA^W4L(CODE,$$GL)
 ;
IR(CODE)
 Q $$IR^W4L(CODE,$$GL)
 ;
JOMH(CODE) ; 
 Q $$JOMH^W4L(CODE,$$GL)
 ;
EMAIL(CODE) ; 
 Q $$EMAIL^W4L(CODE,$$GL)
 ;
PUT2(CODE,ST)
 D PUT2^W4L(CODE,ST,$$GL)
 Q
 ;
ISTEL(TEL,PR)
 I $G(PR)="M"!$L(TEL),$TR(TEL,"-","")'?7N.N Q 0
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKMHSL
W4LKMHSL ; [ 30.09.13 10:08 ] [ 29.09.13 19:16 ] [
 N (JB,%ARG,%REM)
 S H=$G(%ARG("DT")) Q:'H
 S NP=$G(%ARG("NP")) Q:'NP
 ;
 D GL^W4LKMHST
 S KOT=$G(@GL@(H,NP))
 S DATE=$ZD(H,"DD.MM.YY")
 S HD=$P(KOT,"\")
 S CONT=$P(KOT,"\",2)
 S TIME=$P(KOT,"\",3)
 ;
 S SPAN="<span style=""font-weight:bold;"_$$FONTFM^W3CSS_""" >"
 W "<br>"_SPAN_$$^%W1DICT("MAILSENDINGDETAILS")_"</span>"
 ;
 W "<table width=""90%"" id=""TblSnd"" dir="""_$$^%W1DIR_""" >",!
  W "<tr>"
   W "<td>"_SPAN_$$^%W1DICT("DATE")_" : </span>"_DATE_"</td>"
   W "<td>"_SPAN_$$^%W1DICT("TIME")_" : </span>"_TIME_"</td>"
   W "<td>"_SPAN_$$^%W1DICT("HEADER")_" : </span>"_HD_"</td>"
   W "<td>"_SPAN_$$^%W1DICT("CONTENT")_" : </span>"_CONT_"</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<table width=""90%"" id=""TblSnd"" dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
  W "<th width=""15%"">"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
  W "<th width=""35%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th width=""45%"">"_$$^%W1DICT("EMAIL")_"</th>"
  W "<th>"_$$^%W1DICT("STATUS")_"</th>"
 W "</tr>",!
 ;
 N N,KVZ,EMAIL
 S N="" F  S N=$O(@GL@(H,NP,N)) Q:N=""  D
 .S ST=$G(^(N))
 .W "<tr>"
 .W " <td>"_N_"</td>"
 .N LKH1 S LKH1=$P(ST,"\")
 .N EMAIL S EMAIL=$P(ST,"\",2)
 .N STATUS S STATUS=$P(ST,"\",2)
 .N STATUS1 S STATUS1=$S('STATUS:"OK",1:"Error "_STATUS)
 .W " <td>"_$$H2U^%L1FRM(LKH1)_"</td>"
 .W " <td>"_EMAIL_"</td>"
 .W " <td align=""center"">"_STATUS1_"</td>"
 .W "</tr>"
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""40%"">",!
 W " <tr>"
 W "  <td>"
 D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"Print()","color:blue","wh,22")
 W "  </td>"
 W "  <td>"
 D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "  </td>"
 W " </tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
SELGR(PRM) ;

W4LKMHST
W4LKMHST ; [ 30.09.13 10:28 ] [ 29.09.13 16:11 ] [ 28.09.13 16:35 ]
 N (JB,%ARG,%REM)
 I '$G(%ARG("SHOW")) Q
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ;
 D GL
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 ;
 W "<table width=""96%"" id=""TblSnd"" dir="""_$$^%W1DIR_""" "
  I $$PRINT W " style=""font-size:8pt"" "
 W " >"
 W " <caption>"_$$^%W1DICT("MAILSENDINGPROTOCOL",MEDAT_"<>"_ADDAT)_"</caption>",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("TIME")_"</th>"
  W "<th>"_$$^%W1DICT("FROMGROUP")_"</th>"
  W "<th>"_$$^%W1DICT("TOGROUP")_"</th>"
  W "<th>"_$$^%W1DICT("MELKH")_"</th>"
  W "<th>"_$$^%W1DICT("ADLKH")_"</th>"
  I '$$PRINT W "<th width=""14%"">"_$$^%W1DICT("DETAILS")_"</th>"
 W "</tr>",!
 ;
 F DT=DT1:1:DT2 I $D(@GL@(DT)) D
 .S NP="" F  S NP=$O(@GL@(DT,NP)) Q:NP=""  D
 ..S A=$G(^(NP))
 ..D LINE(DT,NP,A)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
LINE(H,NP,ST) ;
 W "<tr>"
 W " <td>"_$$^%L1DC(H,1)_"</td>"
 S HD=$P(ST,"\")
 S CONT=$P(ST,"\",2)
 S TIME=$P(ST,"\",3)
 S MEGR=$P(ST,"\",4)
 I MEGR S MEGR=MEGR_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(MEGR)))
 S ADGR=$P(ST,"\",5)
 I ADGR S ADGR=ADGR_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(ADGR)))
 S MELKH=$P(ST,"\",6)
 I MELKH S MELKH=MELKH_" "_$$H2U^%L1FRM($G(@$$^W4GL("LKH")@(MELKH)))
 S ADLKH=$P(ST,"\",7)
 I ADLKH S ADLKH=ADLKH_" "_$$H2U^%L1FRM($G(@$$^W4GL("LKH")@(ADLKH)))
 ;
 W " <td>"_TIME_"</td>"
 W " <td>"_MEGR_"</td>"
 W " <td>"_ADGR_"</td>"
 W " <td>"_MELKH_"</td>"
 W " <td>"_ADLKH_"</td>"
 W "<td>"
  W "&nbsp;"
 W "</td>"
 W "</tr>",!
 ;
 W "<tr style=""color:green"">"
 W " <td>"_$$^%W1DICT("HEADER")_"</td>"
 W " <td colspan=""2"" style=""font-weight:bold;color:black"">"_HD_"</td>"
 W " <td>"_$$^%W1DICT("CONTENT")_"</td>"
 W " <td colspan=""2"">"
  W " <textarea cols=""50"" rows=""5"" readonly=""readonly"" "
   I $$PRINT W " style=""font-size:8pt"" "
  W " >"
     W CONT
  W " </textarea>"
 W " </td>"
 ;
 I '$$PRINT D
 .W "<td>"
 . D ROUNDBUT^%W1JS("showdetails",$$^%W1DICT("SHOWCUSTLIST"),"ShowCustList('"_H_"','"_NP_"')","color:green","wh,22")
 .W "</td>"
 ;
 W "</tr>"
 Q
 ;
GL ;
 S GL=$$^W4GL("W4LKMSND")
 Q
PRINT(STAM) ;
 Q +$G(%ARG("PRINT"))

W4LKMSND
W4LKMSND ; [ 08.04.16 14:19 ] [ 29.09.15 10:38 ] [ 30.09.13 10:31 ] 
 D ^%W1ARG
 D ^%L1TS
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<br><br>"
 W "<table width=""85%"" cellpadding=""10"" border=""0"" style=""padding:10px;border:ridge;2px"" dir="""_$$^%W1DIR_""">",!
   W "<tr>"
     W "<td>" W $$^%W1DICT("FROMGROUP") W "</td><td>" D SELGR("MEKVZ") W "</td>"
     W "<td>" W $$^%W1DICT("TOGROUP") W "</td><td>" D SELGR("ADKVZ") W "</td>"
   W "</tr>"
   W "<tr>"
     W "<td>" W $$^%W1DICT("FROMCUSTOM") W "</td><td>" D LKH("MELKH") W "</td>"
     W "<td>" W $$^%W1DICT("UNTILCUSTOM") W "</td><td>" D LKH("ADLKH") W "</td>"
   W "</tr>"
 W " </table>",!
 W "<br><br>"
 W "<table width=""65%"" cellpadding=""10"" border=""0"" dir="""_$$^%W1DIR_""">",!
 W "<tr>"
 W " <td width=""20%"" >"
 W "  "_$$^%W1DICT("HDENG")
 W " </td>"
 W " <td>"
 W "  <input id=""hdmsg"" type=""text"" size=""56"" maxlength=""70"" "
 I $$SND W " readonly=""readonly"" "
 W "value="""_$G(%ARG("HDMSG"))_""" "
 I '$$SND W " onKeyUp=""EnglishOnly(event,'hdmsg')"" "
 W " >",!
 W " </td>"
 W "</tr>"
 W "<tr>"
 W " <td valign=""top"" >"
 W "  "_$$^%W1DICT("CONTENT")
 W " </td>"
 W "<td>"
 W " <textarea id=""msg"" cols=""50"" rows=""5"" "
  I $$SND W " readonly=""readonly"" "
  W ">"
  S MSGTO=$$RPL^%L1FRM($G(%ARG("MSG")),"<BR>",$C(10))
  S MSGTO=$$H2U^%L1FRM($$INVH^%L1FRM(MSGTO))
  ;
  ;S HDMSG=$TR($$INVH^%L1FRM($G(%ARG("HDMSG"))),TS0,TS1)
  ;S HDMSG=$TR(HDMSG,TSS,TS1)
  I $$SND D
  .I $L(MSGTO)>2 D PUT^%W1PRM("LKMSND",MSGTO)
  .I $L(HDMSG) D PUT^%W1PRM("LKMSNDHD",HDMSG)
  W MSGTO
 W " </textarea>",!
 W "</td>"
 W "</tr>",!
 W "</table>",!
 ;
 I $$SND D
 .N H S H=+$H
 .N NP S NP=$O(@$$^W4GL("W4LKMSND")@(H,99999),-1)+1
 .D PUT^%W1PRM("W4LKMSNDH",H)
 .D PUT^%W1PRM("W4LKMSNDNP",NP)
 .S @$$^W4GL("W4LKMSND")@(H,NP)=HDMSG_"\"_MSGTO_"\"_$ZD($H,"24:60")_"\"_MEKVZ_"\"_ADKVZ_"\"_MELKH_"\"_ADLKH
 .N OK S OK="OK"
 .N GL D GL^W4L
 .W "<br><br><br>",!
 .W "<table width=""90%"" id=""TblSnd"" dir="""_$$^%W1DIR_""" >",!
 .W "<tr>"
 . W "<th width=""15%"">"_$$^%W1DICT("CUSTOMNUMBER")_"</th>"
 . W "<th width=""35%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 . W "<th width=""45%"">"_$$^%W1DICT("EMAIL")_"</th>"
 . W "<th>"_$$^%W1DICT("STATUS")_"</th>"
 .W "</tr>",!
 .
 .N N,KVZ,EMAIL
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..S KVZ=$$SUGL^W4L(N)
 ..I KVZ<MEKVZ!(KVZ>ADKVZ) Q
 ..I $G(MELKH)!$G(ADLKH),$TR(N,"-","")<$TR(MELKH,"-","")!($TR(N,"-","")>$TR(ADLKH,"-","")) Q
 ..S EMAIL=$$EMAIL^W4L(N) I EMAIL=""!(EMAIL'["@")!(EMAIL'[".")!($F(EMAIL,".")<$F(EMAIL,"@")) Q
 ..W "<tr id=""tr"_N_""" >"
 ..W " <td>"_N_"</td>"
 ..N LKH1 S LKH1=$$LKH^W4L(N)
 ..W " <td>"_$$H2U^%L1FRM(LKH1)_"</td>"
 ..W " <td id=""email"_N_""">"_EMAIL_"</td>"
 ..W " <td id=""status"_N_""" align=""center""></td>"
 ..W "</tr>",!
 ..S @$$^W4GL("W4LKMSND")@(H,NP,N)=LKH1_"\"_EMAIL
 .W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SELGR(PRM) ;
 N N
 I $$SND D  Q
 .I $G(@PRM)="" Q
 .W @PRM_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(@PRM)))
 ;
 W "<select id="""_PRM_""" >",!
 S N="" F  S N=$O(@$$^W4GL("SUGL")@(N)) Q:N=""  D
 .W "<option value="""_N_""">"
 . W N_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(N)))
 .W "</option>",!
 W "</select>",!
 Q
 ;
LKH(PRM)
 N LKH1
 I $$SND D  Q
 .I $TR($G(@PRM),"-","")="" Q
 .S LKH1=$G(@$$^W4GL("LKH")@(@PRM))
 .I LKH1="" S LKH1=$G(@$$^W4GL("LKH")@($TR(@PRM,"-","")))
 .W @PRM_" "_$$H2U^%L1FRM(LKH1)
 ;
 W "<input type=""text"" id="""_PRM_"""  maxlength=""14"" size=""14"" "
  W " onClick=""this.select()"" "
  W "onChange=""Find('"_PRM_"','"_PRM_"1','LKH')"" >",!
    W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" "
    W "onClick=""Find('"_PRM_"','"_PRM_"1','LKH')"" >",!
     W "  &nbsp;",!
 ;
 W "<input type=""text"" id="""_PRM_"1"" size=""24"" readonly=""readonly"" >"
 Q
 ;
NM(PRM) ;
 N LKH1 S LKH1=$$LKH^W4L(PRM)
 I LKH1'="" Q $$CLWEB^%L1FRM($$H2U^%L1FRM(LKH1))
 S PRM=$$^W4CDLK(PRM)
 S LKH1=$$LKH^W4L(PRM)
 I LKH1'="" Q $$CLWEB^%L1FRM($$H2U^%L1FRM(LKH1))
 Q "PUSTO"
 ;
SND(STAM) ;
 Q $G(%ARG("SEND"))
 ;
CMD(TO) ;
 N LKH S LKH=$P(TO,";")
 S TO=$P(TO,";",2)
 N MSGBODY,HD
 S MSGBODY=$$GETP^%W1PRM("LKMSND")
 S HD=$$GETP^%W1PRM("LKMSNDHD")
 I HD="" S HD="Message"
 N RES S RES=$$^W4MAIL(MSGBODY,HD,TO)
 N H S H=+$$GETP^%W1PRM("W4LKMSNDH")
 N NP S NP=+$$GETP^%W1PRM("W4LKMSNDNP")
 I H,NP,LKH D
 .S $P(@$$^W4GL("W4LKMSND")@(H,NP,LKH),"\",3)=RES
 Q RES
 

W4LKNM
W4LKNM ; [ 17.09.18 07:52 ] [ 24.08.12 14:27 ] [ 17.10.11 12:36 ] 
 Q
W(STAM) ;
 N HZM,NAME,LL
 S NAMELK=$$GET^W4TMPANS("CUSDET","CUSTOMNAME")
 I $L(NAMELK)<2 Q "CUSTOMNAMEWRONG"
 Q 1
 ;
INIT ;
 D CLEAR^W4SCASK
 D PUT^%W1PRM("VP","CUSDET")
 D CREATE^W4ASK("CUSDET","PAY")
 Q
 

W4LKNM0
W4LKNM ; [ 24.08.12 14:02 ] [ 19.08.12 13:05 ] [ 18.08.12 07:50 ]
 N (JB,%ARG,%REM)
 D DEF^W4ABC
 ;
 S HD=$$^%W1DICT("CUSTOMNAME")
 S VL=""
 D KB(MAXL,VL)
 Q
 ;
KB(MAXL,VL) ;
 D NOSELECT^%W1JS
 W "<div align=""center"" id=""kbid"" >",!
 W "<table dir="""_$$^%W1DIR_""" >",!
  W "<tr><td align=""center"" class=""rkvhd"" >"_$G(HD)_"</td></tr>"
  W "<tr>"
   W "<td align=""center"">"
    W "<input type=""text"" class=""rkv"" id=""rkvid"""
      W " dir="""_$$^%W1DIR_""""
      W " size=""18"" maxlength="""_MAXL_""""
      W " value="""_$G(VL)_""""
      W " onKeyPress=""OnKeyPress(event)"" "
      W " style=""font-size:"_$$^W3FSZ(12)
      W """"
      W " />"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr><td>&nbsp;</td></tr>",!
  ;
  W "<tr>"
   W "<td align=""center"">"
   W "<table dir="""_$$^%W1DIR_""" width=""100%""><tr>"
    W "<td>"
     W "<input type=""button"" class=""rkvhd"" style=""color:green;width:100%;height:100%"" value="""_$$^%W1DICT("SUBMIT")_""" onMouseUp=""Sbm()"" >"
    W "</td>"
    W "<td align=""center"">"
     W "<input type=""button"" class=""rkvhd"" style=""color:red;width:100%;height:100%"" value="""_$$^%W1DICT("BACK")_""" onMouseUp=""Cnc()"" >"
    W "</td>"
    W "<td align=""center"">"
     ;;W "<input type=""button"" width=""100%"" class=""rkvhd"" style=""color:red;width:100%;height:100%"" value="""_$$^%W1DICT("ERASETXT")_""" onMouseUp=""Sbm('NO')"" >"
     W "<input type=""button"" width=""100%"" class=""rkvhd"" style=""color:red;width:100%;height:100%"" value="""_$$^%W1DICT("ERASETXT")_""" onMouseUp=""EraseTxt()"" >"
    W "</td>"
    W "</tr></table>"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" dir="""_$$^%W1DIR_""" >",!
     S K=0
     F I=1:1:4 D
     .W "<tr>",!
     .F J=1:1:10 D
     ..S K=K+1
     ..I K<36 D LETTER(K)
     ..;;I K=36 D DIGIT("'")
     ..;;I K=37 D DIGIT("""")
     ..I K=36 S SPAN=5 D DIGIT(" ") K SPAN
     .W "</tr>",!
     ;;D DIGIT(".") D DIGIT(0)
     ;
     W "<tr>"
     S K=0
     F J=1:1:10 D
     .D DIGIT(K)
     .S K=K+1
     ;
     W "</tr>",!
     W "<tr>"
     W "<td class=""digit"" onMouseUp=""DelLetter()"""
     W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
     W " onMouseDown=""this.style.backgroundColor='gray'"""
     W " onMouseUp=""this.style.backgroundColor='#eaeaea';DelDigit()"""
     W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
     W " style=""color:red"""
     W " >Del</td>"
     D DIGIT("."),DIGIT(","),DIGIT("-"),DIGIT("/")
     D DIGIT("("),DIGIT(")"),DIGIT("*"),DIGIT("%")
     D DIGIT(":")
     W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
 ;
  ;
 W "</table>",!
 W "</div>",!
 Q
 ;
LETTER(K) ;
 W "<td class=""digit"""
 I '$D(ABC(K)) W ">&nbsp;</td>" Q
 I $G(SPAN) W " colspan="""_SPAN_""""
 W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
 W " onMouseDown=""this.style.backgroundColor='gray'"""
 W " onMouseUp=""this.style.backgroundColor='#eaeaea';ClickLetter('"_ABC(K)_"')"""
 W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
 W ">"
 W "&nbsp;&nbsp;&#"_ABC(K)_";&nbsp;&nbsp;"
 W "</td>"
 Q
 ;
DIGIT(K) ;
 D DIGIT^W4KB(K)
 Q
 ;
SBM(NAME) ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 N OK S OK=0
 S NAME=$$INVH^%L1FRM($$CLEAR^%L1FRM(NAME))
 D PUT^W4RMPANS(12,"NAME",NAME)
 Q 1
 ;
NONAME(NAME)
 I NAME="NO"!(NAME="") Q 1
 Q 0

W4LKTEST
W4LKTEST(LKH) ; [ 15.03.22 03:36 ] [ 18.12.18 06:20 ] [ 16.05.18 15:28 ] 
 N ID S ID=""
 I $G(LKH)="" Q "FIND"
 I LKH[";" S ID=$P(LKH,";",2),LKH=$P(LKH,";") I $G(LKH)="" Q "FIND"
 S ID=$$FUNC^%UCASE(ID)
 I $E(ID)="S" Q $$TEST^W4SPDOC(LKH)
 I $$ISCODE(LKH),$L(LKH)<4 Q "SHORT"
 I LKH?1"0"."0".P,'$$DC^W4L(LKH) Q "ZERO"
 ;;I $$^W4DLVCSR,$D(@$$^W4GL("P1EZLI")@(LKH))>9 Q "FIND"
 I $$^W4DLVCSR!$$CCWEBR^W4PRM,'$D(@$$^W4GL("LKH")@(LKH))!$$CLOSED^W4L(LKH),$D(@$$^W4GL("KLLKTH")@(LKH))>9 Q "FIND"
 I $$DC^W4L(LKH) Q 1
 I $$ISCODE(LKH),'$$DC^W4L(LKH) Q 0
 Q "FIND"
 ;
ISCODE(LKH) ;
 Q $$^W4ISCDLK(LKH)
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKTN
W4LKTN ;  [ 14.09.26 06:56 ] [ 22.07.26 03:26 ] [ 21.07.26 10:21 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 N TMPPROT S TMPPROT=$$^W4MAIN("TMPPROT") K @TMPPROT
 ;
 D
 .N UCI,MSDF
 .K @$$^W4MAIN("TMPLKG")
 .S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 .S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 .;
 .M @$$^W4MAIN("TMPLKG")=^|UCI|SUGL
 .
 .N N S N=999 F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  D
 ..N NM S NM=$G(^(N)) 
 ..I NM'="",$G(^|$$^W3MAIN|W4LK(N))="" S ^|$$^W3MAIN|W4LK(N)=NM
 ;
 S GLMSD=$$^W4MAIN("TMPMSD") K @GLMSD
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @GLMSD@(N)=$G(^|$$^W3MAIN|W3MSD(N))
 ;
 ;;M ^AA("TMPLKG")=^TMPLKG
 ;
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="W4LKTN"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
MSDR ;
 Q
 ;
DT ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 S TRH=$ZD(DT,"DD.MM.YY")
 S TMPPROT=$$^W4MAIN("TMPPROT")
 N MS S MS="" F  S MS=$O(^|$$^W3MAIN|W3MSDR(MSDR,MS)) Q:MS=""  D
 .I $D(^|$$^W3MAIN|W4LKTN(MSDR,DT,MS))<10 D
 ..I +$G(MS)=10299 Q
 ..N SH S SH=$O(@TMPPROT@(999999),-1)+1
 ..S @TMPPROT@(SH)="! zxyl sipq ipezp oia dn`zd wecal `p -  "_$$MSD^W3R(+MS)_" "_+MS_" sipq  "_$ZD(DT,"DD.MM.YY")_" jix`z"
 Q
 ;
MSD ;
 S MSD1=$$MSD^W3R(+MSD)
 ;;S ^AA("W4LKTN-MSD")=MSD
 I MSD<MEMSD S OK=0 Q
 I MSD>ADMSD S OK=2 Q
 I $G(MSD),'$D(^|$$^W3MAIN|W3MSDR(MSDR,MSD)) S OK=0 Q
 ;
 Q
 ;
 ;
LKR ;
 I LKR<MELKR S OK=0 Q
 I LKR>ADLKR S OK=2 Q
 I $G(LKR) D LKG(LKR) I MELKG!ADLKG,LKG<MELKG!(LKG>ADLKG) S OK=0 Q
 ;;S ^AA("W4LKTN-LKR")=LKR
 ;;S ^AA("W4LKTN-LKR",LKR,"MSD")=$G(MSD)
 S LKR1=$$LK1(LKR,$G(MSD))
 Q
 ;
LK ;
 ;;I LK=LKR S LK="",LK1="" Q
 I LK<MELK S OK=0 Q
 I LK>ADLK S OK=2 Q
 ;;S ^AA("W4LKTN-LK")=LK
 S LK1=$$LK1(LK,$G(MSD))
 I $G(LK)="" S OK=2 Q
 D LKG(LK)
 I MELKG!ADLKG,LKG<MELKG!(LKG>ADLKG) S OK=0 Q
 Q
 ;
 ;
HZ ; 
 I HZ<MEHZ S OK=0 Q
 I HZ>ADHZ S OK=2 Q
 ;;S ^AA("W4LKTN-HZ")=HZ
 S x1=$P($G(@GLOB),"*")
 ;;S x2=$$H2U^%L1FRM($P($G(@GLOB),"*",2))
 S x2=$P($G(@GLOB),"*",2)
 S x3=$P($G(@GLOB),"*",3)
 S x4=$P($G(@GLOB),"*",6)
 I x4 S x4=$ZD(x4,"DD.MM.YY")
 I 'x4,$G(TRH) S x4=TRH I x4?5N S x4=$ZD(x4,"DD.MM.YY")
 ;
 I $G(LKG)="" D
 .S LKG=$P($G(@GLOB),"*",4)
 .S LKG1=$P($G(@GLOB),"*",5)
 .I ADLKG,LKG<MELKG!(LKG>ADLKG) S OK=0
 ;
 I $G(OK)=0!($G(OK)=2) Q
 ;
 D
 .I x3["-" Q 
 .I $E(x3)="5" S x3="0"_$E(x3,1,2)_"-"_$E(x3,3,20) Q
 .I $E(x3,1,2)="05" S x3=$E(x3,1,3)_"-"_$E(x3,4,20) Q
 Q 
 ;
 ;
LK1(LK,MSD) ;
 N LK1
 D
 .I $G(MSD),$G(^|$$^W3MAIN|W4LK(LK,MSD))'?.P S LK1=$G(^(MSD)) Q
 .S LK1=$G(^|$$^W3MAIN|W4LK(LK))
 Q LK1 
 ;;
LKG(LK) ;
 N UCI,MSDF S (LKG,LKG1)=""
 S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 S UCI=$G(^[$$^W3MAIN]UCI(+MSDF)) Q:UCI=""
 S LKG1=""
 S LKG=$P($G(^|UCI|LKH(LK,2)),"*",5) Q:LKG=""
 S LKG1=$G(^|UCI|SUGL(LKG))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKTN0
W4LKTN ;  [ 17.06.24 12:08 ] [ 13.06.23 16:58 ] [ 04.06.23 18:01 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 ;
 D
 .N UCI,MSDF
 .S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 .S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 .N N S N=999 F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  D
 ..N NM S NM=$G(^(N)) 
 ..I NM'="",$G(^|$$^W3MAIN|W4LK(N))="" S ^|$$^W3MAIN|W4LK(N)=NM
 ;
 S GLMSD=$$^W4MAIN("TMPMSD") K @GLMSD
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @GLMSD@(N)=$G(^|$$^W3MAIN|W3MSD(N))
 ;
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="W4LKTN"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
MSDR ;
 Q
 ;
DT ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 S TRH=$ZD(DT,"DD.MM.YY")
 Q
 ;
MSD ;
 S MSD1=$$MSD^W3R(+MSD)
 ;;S ^AA("W4LKTN-MSD")=MSD
 I MSD<MEMSD S OK=0 Q
 I MSD>ADMSD S OK=2 Q
 Q
 ;
 ;
LKR ;
 I LKR<MELKR S OK=0 Q
 I LKR>ADLKR S OK=2 Q
 ;;S ^AA("W4LKTN-LKR")=LKR
 ;;S ^AA("W4LKTN-LKR",LKR,"MSD")=$G(MSD)
 S LKR1=$$LK1(LKR,$G(MSD))
 Q
 ;
LK ;
 ;;I LK=LKR S LK="",LK1="" Q
 I LK<MELK S OK=0 Q
 I LK>ADLK S OK=2 Q
 ;;S ^AA("W4LKTN-LK")=LK
 S LK1=$$LK1(LK,$G(MSD))
 Q
 ;
 ;
HZ ; 
 I HZ<MEHZ S OK=0 Q
 I HZ>ADHZ S OK=2 Q
 ;;S ^AA("W4LKTN-HZ")=HZ
 S x1=$P($G(@GLOB),"*")
 S x2=$$H2U^%L1FRM($P($G(@GLOB),"*",2))
 S x3=$P($G(@GLOB),"*",3)
 D
 .I x3["-" Q 
 .I $E(x3)="5" S x3="0"_$E(x3,1,2)_"-"_$E(x3,3,20) Q
 .I $E(x3,1,2)="05" S x3=$E(x3,1,3)_"-"_$E(x3,4,20) Q
 Q 
 ;
 ;
LK1(LK,MSD) ;
 N LK1
 D
 .I $G(MSD),$G(^|$$^W3MAIN|W4LK(LK,MSD))'?.P S LK1=$G(^(MSD)) Q
 .S LK1=$G(^|$$^W3MAIN|W4LK(LK))
 Q LK1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKWEEK
W4LKWEEK ; [ 27.02.25 14:41 ] [ 12.11.24 18:40 ] [ 19.06.22 09:33 ] 
 N (JB,%ARG,%REM) S P1DZ=$$^W4DZ
 S JB=+$G(JB)
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""TblDms"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width="""_$S($$^W4TABLET=2:100,1:80)_"%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""8%"">"_$$^%W1DICT("NPP")_"</th>"
 W "  <th width=""12%"">"_$$^%W1DICT("CUSTCODE")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 N I,N
 S N="" F I=1:1 S N=$O(@$$GL@(N)) Q:N=""  D
 .S @GLTMP@(N)=$G(@$$GL@(N))
 .S @GLTMP@(N,"I")=I
 ;
 S N=$O(@GLTMP@(""))
 W "<tr id=""trid"_1_""">" W $$LINE("1;"_N) W "</tr>",!
 ;
 F I=2:1 S N=$O(@GLTMP@(N)) Q:N=""  D
 .W "<tr id=""trid"_I_""">" W $$LINE(I_";"_N) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVEND(STAM) ;
 N N,PARHR,NOK
 D GLTMP
 S NOK=0
 ;
 K @$$GL
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .S VL=$G(@GLTMP@(N))
 .I $D(@GLTMP@(N,"DEL")) Q
 .S @$$GL@(N)=VL
 ;
 K @GLTMP
 ;
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
 ;
LINE(PRM) ;
 N I,LKH S I=$P(PRM,";")
 S LKH=$P(PRM,";",2)
 N GLTMP D GLTMP
 N ST
 S ST=""
 S ST=ST_" <td align=""center"" >"
  ;
 S ST=ST_"  <span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
 S ST=ST_"   onClick=""NewLine('"_I_"')""> + "
  S ST=ST_"  </span><br />"
  S ST=ST_"  <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
  S ST=ST_"   onClick=""DeleteRow('"_I_"')"" > - </span>"
  S ST=ST_" </td>"
  ;
  S ST=ST_" <td style=""text-align:center"" width=""25%"">"
   S ST=ST_$$VVLKH(I_";"_LKH)
  S ST=ST_"  </td>"
  ;
  N LKHAME S LKHNAME=$$LKH^W4L(LKH)
  S ST=ST_"  <td "_$$^%W1ALIGN_" id=""lkhnm"_I_""" >"
   S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(LKHNAME)
  S ST=ST_"  </td>"
  ;
 Q ST
 ;
 ;
SETLKH(PRM)
 N LKH,I,VL
 S LKH=$P(PRM,";")
 I LKH="" Q "CODENOTEXIST"
 S I=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 N GLTMP D GLTMP
 ;
 I $G(@GLTMP@(LKH,"I")),^("I")'=I Q "SAMECODE"
 I '$D(@$$^W4GL("LKH")@(LKH)) Q "CODENOTEXIST"
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .I $G(^(N,"I"))=I,N'=LKH K @GLTMP@(N)
 S @GLTMP@(LKH)=VL
 S @GLTMP@(LKH,"I")=I
 N LKH1 S LKH1=$$LKH^W4L(LKH)
 Q "OK~"_$$H2U^%L1FRM(LKH1)
 ;
DELROW(LKH) ;
 Q:$G(LKH)=""
 N GLTMP D GLTMP
 I '$D(@GLTMP@(LKH,"DEL")) S @GLTMP@(LKH,"DEL")=1 Q
 K @GLTMP@(LKH,"DEL")
 Q
 ;
VVLKH(PRM) ;
 N I,VL,IDCD,IDNM
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S IDCD="lkh"_I
 S IDNM="lkhnm"_I
 S PROC="SetCust(\'"_I_"\',\'"_IDCD_"\',\'"_IDNM_"\')"
 N FIND S FIND="Find('"_I_"','"_IDCD_"','"_IDNM_"','"_PROC_"')"
 N A
 S A="<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"id=""lkh"_I_""" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img id=""filter"" src=""w3filter.jpg"" "
 S A=A_" onClick="""_FIND_""">"
 Q A
 ;
 ; 
GL() Q $$^W4GL("W4LKWEEK") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LKWK
W4LKWK ; [ 06.04.25 10:15 ] [ 04.04.25 04:04 ] [ 03.04.25 17:09 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I '$$CREATE G FILL
 ;
 D TMPNEW K @TMPNEW
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<p></p>",!
  W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"" cellpadding=""3"">",!
   W "<tr>"
     W "<td width="""_$S($$1024^W4WDSCR:92,1:94)_"%"" align=""center"" >"
      S DAYS=$G(%ARG("DAYS"))
      I '$$GIMA I DAYS="" S DAYS="1234567"
      D SHOWDAYS(DAYS)
     W "</td>" 
     W "<td>"
      I $G(%ARG("DAYS")) D
      .W $$^%W1DICT("CLEAR")_$$NBSP^%L1FRM(2)
      .W "<input type=""checkbox"" id=""clr"" checked=""checked"" onClick=""ClearV()""></td>"
      I '$G(%ARG("DAYS")) D
       .W "<input type=""button"" value="""_$$^%W1DICT("SHOW")_""" onClick=""Show()""/>"
     W "</td>"
   w "</tr>",!
  W "</table>",! 
  I '$G(%ARG("DAYS")) W "</div>",! Q
  ;
  W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" width=""80%"" border=""1"" cellspacing=""0"" cellpadding=""3"">",!
   W "<tr>",!
    W "<th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>",!
    W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>",!
    W "<th>"_$$^%W1DICT("LASTORD")_"</th>",!
    W "<th>"_$$^%W1DICT("LASTORDTIME")_"</th>",!
    W "<th>"_$$^%W1DICT("NEWORDDATE")_"</th>",!
    W "<th>"_$$^%W1DICT("NEWORDTIME")_"</th>",!
    W "<th>"_$$^%W1DICT("COPY")_"</th>",!
   W "</tr>",!
   ;
   S N="" F  S N=$O(@$$GL@(N)) Q:N=""  D
   .S LASTORD=$$LASTORD(N) Q:'LASTORD
   .N TRH,DT S TRH=$$TRH^W4HZMST(LASTORD) S DT=$$^%L1DC(TRH,8)
   .N SHAA S SHAA=$$SHAA^W4HZMST(LASTORD) I SHAA<$$SHAAZ^W4PRM S DT=DT-1
   .S:'DT DT=7
   .I DAYS,DAYS'[DT Q
   .W "<tr id=""tr"_N_""" >",!
   . W "<td>"_N_"</td>"
   . W "<td>"_$$H2U^%L1FRM($$LKH^W4L(N))_"</td>"
   . W "<td id=""ord"_N_""" style=""cursor:pointer;text-align:center;font-weight:bold"" onClick=""ShowOrd('"_LASTORD_"')"">"_LASTORD_"</td>" 
   . W "<td align=""center"">"_$$LASTTIME(LASTORD)_"</td>"
   . W "<td align=""center"">" D NEWDATE(N,LASTORD) W "</td>"
   . W "<td align=""center"" dir=""LTR"" >" D NEWTIME(N,LASTORD) W "</td>"
   . W "<td align=""center"">" D CHKCOPY(N) W "</td>"  
   .W "</tr>",!
  W "</table>",!
  W "<p>&nbsp;</p>",!  
  D ^W4SBM
 W "</div>",! 
 Q 
 ;
 ;
GL() ;
 Q $$^W4GL("W4LKWEEK")
 ;
LASTORD(LK);
 N ORD,MSD,OK,TRH,DT,SHAA
 S ORD="",MSD=$$MSD,OK=0
 F  S ORD=$O(@$$^W4GL("W4LINKI")@(LK,MSD,ORD),-1) Q:'ORD  I $$TSHL^W4HZMST(ORD)>0 D  Q:OK
 .S TRH=$$TRH^W4HZMST(ORD),DT=$$^%L1DC(TRH,3),SHAA=$$SHAA^W4HZMST(ORD)
 .I SHAA<$$SHAAZ^W4PRM S DT=DT-1
 .I $G(%ARG("DAYS")),%ARG("DAYS")[$$^%L1DC(DT,8) S OK=1
 Q ORD
 ;
LASTTIME(ORD) 
 I $G(ORD)<1 Q "" 
 N TRH S TRH=$$TRH^W4HZMST(ORD)
 N TIME S TIME=TRH_" "_$$SHAA^W4HZMST(ORD)
 S TIME=TIME_" "_$$H2U^%L1FRM($$^%L1DC(TRH,9))
 Q TIME
 ;
 ;
NEWDATE(LK,LASTORD) ;
 I $$FUTURE(LASTORD) W "&nbsp;"  Q
 N TRH S TRH=$S($G(LASTORD)<1:"",1:$$TRH^W4HZMST(LASTORD))
 N DNEW S DNEW=""
 I 'TRH G NEWDATE1
 N NDAY S NDAY=$$^%L1DC(TRH,8)
 N D F D=+$H+1:1:$H+100 Q:$$^%L1DC(D,8)=NDAY
 S DNEW=D
 N DATNEW S DATNEW=$ZD(D,"DD.MM.YY")
NEWDATE1 ;
 W "<select id=""newdat"_LK_""" onChange=""ChangeNewDat('"_LK_"')"" >",!
  F D=+$H+1:1:$H+100 D
  .W "<option value="""_D_""" "
  .I D=DNEW W " selected=""selected"" "
  .W ">"_$ZD(D,"DD.MM.YY")_" "_$$H2U^%L1FRM($$^%L1DC(D,9))_"</option>",!
 W "</select>",! 
 W "&nbsp;<span id=""newday"_LK_""">"_$$H2U^%L1FRM($$^%L1DC(DNEW,9))_"</span>"
 Q
 ;
 ;
NEWTIME(LK,LASTORD) ;
 I $$FUTURE(LASTORD) W "&nbsp;"  Q
 N SHAA S SHAA=$S($G(LASTORD)<1:"",1:$$SHAA^W4HZMST(LASTORD))
 N MIN S MIN=$P(SHAA,":",2)
 ;
 W "<select id=""newshaa"_LK_""">",!
 N I F I=0:1:23 D
 .W "<option "
 .I SHAA'="",+SHAA=I W " selected=""selected"" " 
 .W ">"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",! 
 ;
 W "<select id=""newmin"_LK_""">",!
 F I=0:1:59 D
 .W "<option "
 .I MIN'="",+MIN=I W " selected=""selected"" " 
 .W ">"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",! 
 ;
 Q
 ;
CHKCOPY(LK) ;
 I $$FUTURE(LASTORD) W "&nbsp;"  Q
 W "<input type=""checkbox"" id=""chk"_LK_""" checked=""checked"" >"
 Q
 ;
MSD() ;
 N MSD S MSD=+$$GETP^%W1PRM("MSD")
 I MSD<1 S MSD=1
 Q MSD
 ;
 ;
TMPNEW ;
 S TMPNEW=$$^W4MAIN("TMPNEW")
 Q
 ;
CREATE() ;
 Q +$G(%ARG("CREATE"))
 ;
FUTURE(LASTORD)
 I $G(LASTORD),$$^%L1DC($$TRH^W4HZMST(LASTORD),3)>+$H Q 1
 Q 0
 ;
 ;
SAVE(PRM) ;
 D TMPNEW
 N RES,HZ S HZ=0
 N LK S LK=$P(PRM,";")
 N LORD S LORD=$P(PRM,";",2) I 'LORD Q "NOTORD"
 N NEWDAT S NEWDAT=$P(PRM,";",3)
 N NEWSHAA S NEWSHAA=$P(PRM,";",4)
 N NEWMIN S NEWMIN=$P(PRM,";",5)
 ;
 I $D(@$$^W4ORD@(LORD))'=11 Q "ORDNOTEXIST"
 ;
 S RES=$$^W4GETHZ(LORD)
 ;
 I RES=1 D
 .D CLEARTMPORD^W4HZBIT
 .D TMPCOPY^W4TMPOP K @TMPCOPY
 .N TMPORD S TMPORD=$$^W4TMPORD
 .N I S I=0
 .D TMP2COPY^W4TMPOP
 .S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N K ^(N)
 .
 .N COPY2NMB S COPY2NMB=$$NMB^W4HZMST(LORD)
 .S N="" F  S N=$O(@TMPCOPY@(N)) Q:N=""  I N D
 ..S @TMPORD@(N)=$G(@TMPCOPY@(N))
 ..D UPDMH^W4MENU(N)
 .
 .K @TMPCOPY
 .N A S A=$G(@$$^W4TMPORD)
 .S $P(A,"~",5)=$ZD(NEWDAT,"DD.MM.YY")
 .S $P(A,"~",6)=$$DOP^%L1FRM(NEWSHAA)_":"_$$DOP^%L1FRM(NEWMIN)
 .I $$GETP^%W1PRM("MLZR") D
 ..S $P(A,"~",18)=$$GETP^%W1PRM("MLZR")
 .S @TMPORD=A
 .
 .S HZ=$$^W4NEWHZ(JB,-1,2)
 .I HZ'<1 S @TMPNEW@(HZ)="" 
 ;
 Q HZ
 ;
 ;
FILL ;
 D TMPNEW
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 S HZ="" F  S HZ=$O(@TMPNEW@(HZ)) Q:HZ=""  D FILLORD(HZ)
 ;
 W "<p>&nbsp;</p>",!
  D ^W4BTN("SUBMIT","SubmitOrds()","GREEN")
 
 W "</div>",!
 Q
 ;
 ;
FILLORD(HZ) ;
 N (JB,%ARG,HZ)
 S TMZ=$$LASTTIME(HZ)
 D KOTHZ
 W "<p></p>",!
 S I=0
 W "<table border=""1"" dir="""_$$^%W1DIR_""" "
  W "cellspacing=""0"" cellpadding=""2"" width=""40%"" "
 W ">",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("ITEMCODE")_"</th>"
   W "<th>"_$$^%W1DICT("ITEMNAME")_"</th>"
   W "<th>"_$$^%W1DICT("PRICE")_"</th>"
   W "<th>"_$$^%W1DICT("QUANTITY")_"</th>"
   ;;W "<th>"_$$^%W1DICT("SUM")_"</th>"
  W "</tr>",!
  ;
  S N="" F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N D
  .S A=$G(^(N))
  .S CD=$P(A,"\")
  .S NM=$P(A,"\",3) 
  .S MH=$P(A,"\",4)
  .S QN=$P(A,"\",5)
  .S SUM=$J(QN*MH,2,2)
  .W "<tr>"
  . W "<td>"_CD_"</td>"
  . W "<td>"_$$H2U^%L1FRM(NM)_"</td>"
  . W "<td>"_$J(MH,2,2)_"</td>"
  . W "<td align=""center"" >"
  .  W "<input id=""qn"_HZ_"-"_N_"-"_CD_""" onClick=""this.select()"" "
  .  W "type=""text"" size=""5"" value="""_QN_""" />"
  . W "</td>"
  . ;;W "<td>"_$J(SUM,2,2)_"</td>"
  .W "</tr>",!
 W "</table>",!
 W "<p>&nbsp;</p>",! 
 Q
 ;
 ;
KOTHZ ;
  W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""60%"">",!
  W " <tr>"
   W "<td width=""25%"">"_$$^%W1DICT("TIME")_" "_$$RKV(TMZ)_"</td>"
   W "<td width=""25%"" style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"')"" >"
    W $$^%W1DICT("ORDER")_" "_$$RKV(HZ)
   W "</td>"
   W "<td>"_$$^%W1DICT("CUSTOMER")_" "_$$RKV($$NMB^W4HZMST(HZ))_" "_$$RKV($$NAME^W4HZMST(HZ),"H")_"</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
RKV(VL,PRM)
 I $G(PRM)="H" S VL=$$H2U^%L1FRM(VL)
 Q "<span style=""font-weight:bold"">"_VL_"</span>"
 ;
UPDATE(PRM) ;
 N (JB,%ARG,PRM)
 S HZ0=""
 F I=1:1:$L(PRM,"~")-1 D
 .S PRMHZ=$P(PRM,"~",I)
 .S PRMHZ1=$P(PRMHZ,"^")
 .S QN=$P(PRMHZ,"^",2)
 .S HZ=$E($P(PRMHZ1,"-"),3,20) Q:'HZ
 .I $$HZM^W4MSD(HZ) Q
 .I $$CLOSE^W4HZMST(HZ) Q
 .S NP=$P(PRMHZ1,"-",2) Q:'NP
 .S CD=$P(PRMHZ1,"-",3)
 .S A=$G(@$$^W4ORD@(HZ,NP))
 .S ^AA("W4LKWK-UPDATE","PRMHZ1")=PRMHZ1
 .S ^AA("W4LKWK-UPDATE","QN")=QN
 .S ^AA("W4LKWK-UPDATE","A")=A
 .I $P(A,"\")'=CD Q
 .S QNO=$P($G(@$$^W4ORD@(HZ,NP)),"\",5)
 .S $P(@$$^W4ORD@(HZ,NP),"\",5)=QN
 .I $D(@$$^W4ORD@(HZ,NP))>9 D
 ..S KF=1
 ..I QNO,QNO'=QN S KF=QN/QNO
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZ,NP,N1)) Q:N1=""  I N1 D
 ...S A1=$G(^(N1))
 ...S QNOT=$P(A1,"\",3)
 ...S $P(^(N1),"\",3)=$J(QNOT*KF,0,0)
 .
 .I HZ'=HZ0,HZ0 D
 ..D ^W4CALC(HZ)
 .S HZ0=HZ
 Q 1
 ;
SHOWDAYS(DAYS) ;
 I $$GIMA D  Q
 .N DSBL S DSBL=""
 .I DAYS S DSBL="disabled=""disabled"" "
 .W $$^%W1DICT("DAY6")
 .W "<input type=""radio"" name=""days"" "_$S(DAYS=6:"checked=""checked""",1:"")_" "_DSBL_">",!
 .W $$^%W1DICT("DAY7")
 .W "<input type=""radio"" name=""days"" "_$S(DAYS=7:"checked=""checked""",1:"")_" "_DSBL_">",!
 ;
 ;
 N J F J=1:1:7 D
 .W $$^%W1DICT("DAY"_J)
 .W "<input type=""checkbox"" name=""days"" id=""day"_J_""" "
 . I $E(DAYS,J)'=0 W "checked=""checked"" "
 . W "onClick=""ShowDayOrds()"""
 . I $G(%ARG("DAYS")) W " disabled=""disabled"" "
 .W "/>"
 .W $$NBSP^%L1FRM(3)
 Q
 ;
 ;
GIMA() Q $G(@$$^W4PRM@("GIMA"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LL
W4LL ; [ 04.06.25 02:17 ] [ 04.05.25 09:11 ] [ 01.05.25 11:49 ] 
W(STAM) ;
 N HZM,NAME,LL,PHONE
 S HZM=$$GETP^%W1PRM("HZM")
 S LL=$P($$GET^W4TMPANS("LL","WHATYOUWHANT"),"::")
 S NAME=$$GET^W4TMPANS("LL","CUSTOMNAME")
 S PHONE=$$GET^W4TMPANS("LL","PHONE")
 I $L(NAME)<2 Q "CUSTOMNAMEWRONG"
 ;;I $$GETP^%W1PRM("NP")=3,PHONE="" Q 1
 I $$GETP^%W1PRM("NP")=3,$L(PHONE),$L($TR(PHONE,"-",""))'=10!($E(PHONE,1,2)'="05") Q "PELEWRONG"
 D  ;
 .S @$$^W4TMPORD@("LL")=LL
 .S @$$^W4TMPORD@("MZMNM")=NAME
 .S @$$^W4TMPORD@("MZMNPHONE")=PHONE
 Q 1
 ;
INIT ;
 D CLEAR^W4SCASK
 D PUT^%W1PRM("VP","LL")
 D CREATE^W4ASK("LL","ASK")
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N LL S LL=$$LL^W4HZMST(HZM)
 D PUT^W4TMPANS("LL","WHATYOUWHANT",LL)
 N NAME
 I '$$^W4ISORD(HZM) S NAME=$$MZMNM^W3HZMST(JB)
 I $$^W4ISORD(HZM) S NAME=$$MZMNM^W4HZMST(HZM)
 D PUT^W4TMPANS("LL","CUSTOMNAME",NAME)
 Q
 ;
ASK(STAM) ;
 I $$SUPER^W3PRM Q 0
 N NMB S NMB=$$GETP^%W1PRM("NMB") I 'NMB Q 0
 I '$$LL^W4SUGS(NMB) Q 0
 N HZM S HZM=$$GETP^%W1PRM("HZM") I HZM="" Q 0
 I $D(@$$^W4ORD@(HZM,"LL","PC"))&'$$QUESMS^W4PRM Q 0
 Q 1
 ;
VLDNAME ;
 D PUT^%W3DEB("W4LL-VLDNAME","VL=VL")
 I $L($G(VL))<2 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FLDMIN^CUSTOMNAME!D;2"
 Q
 ;
SET(PRM) 
 I $$GETP^%W1PRM("NP")=2 D  Q $$W
 .S PRM=$$CNWEB^%L1FRM($$^W4PRMSRV(PRM))
 .S PRM=$$INVH^%L1FRM(PRM)
 .D PUT^W4TMPANS("LL","CUSTOMNAME",$$CNWEB^%L1FRM(PRM))
 ;
 I $$GETP^%W1PRM("NP")=3 D  Q $$W
 .D PUT^W4TMPANS("LL","PHONE",$$CNWEB^%L1FRM(PRM))
 Q 1
 
 
 
 
 
 
 
 
 
 
 

W4LMTHR
W4LMTHR ; [ 22.02.25 17:03 ] [ 17.02.25 08:27 ] [ 15.09.18 18:21 ] 
GET
 S AUTOUT=$G(@$$^W4PRM@("AUTOUT"))
 N I F I="MAXHRDAY","MAXHRWK","AGENIGHT","AGESTDY" D
 .S @I=$G(@$$^W4PRM@("AUTOUT",I))
 .I @I="" S @I=1
 ;
 F I="RESTSTDY","HRREST","DAY","WEEK" D
 .S @I=$G(@$$^W4PRM@("AUTOUT",I))
 ;
 I $G(@$$^W4PRM@("AUTOUT","RESTSTDY"))="" S RESTSTDY=3
 I $G(@$$^W4PRM@("AUTOUT","HRREST"))="" S HRREST=36
 I $G(@$$^W4PRM@("AUTOUT","DAY"))="" S DAY=10
 I $G(@$$^W4PRM@("AUTOUT","WEEK"))="" S WEEK=42
 Q
 ;
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S @$$^W4PRM@("AUTOUT")=$G(AUTOUT)
 F I="MAXHRDAY","MAXHRWK","AGENIGHT","AGESTDY","RESTSTDY","HRREST","DAY","WEEK" D
 .S @$$^W4PRM@("AUTOUT",I)=$G(@I)
 Q 1
 
 
 
 
 
 
 
 

W4LNKBIT
W4LNKBIT(HZM) ; [ 07.05.19 17:13 ] [ 
 N WHO S WHO=$$^W4WHODEL
 N A S A=WHO_"^"_$H_"^"_$$^W4MYDVN
 S $P(@$$^W4GL("W4LINK")@(HZM),"~",5)=A
 Q
 
 

W4LNKMKR
W4LNKMKR ; [ 16.07.23 12:06 ] [ 
 N (JB)
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  D
 .S MKR=$$MKRDLV^W4HZMST(N) Q:'MKR
 .I MKR=10 S @$$^W4GL("HZLINKTB")@(HZMLAK)=HZMS Q
 .I MKR=12 S @$$^W4GL("HZLINKMSH")@(HZMLAK)=HZMS Q
 Q
 

W4LOADPC
W4LOADPC ; [ 15.11.08 14:02 ] [ 16.05.05 17:00 ] [
 N P3LOADPC
 S P3LOADPC=""
 S @$$^W4GL("STLOOP")@("PC")=1 H 3 K ^flag D ^W4JOB
 Q

W4LOCK
W4LOCK(HZM) ; [ 13.07.21 21:39 ] [ 16.06.21 11:44 ] [ 
 N I
 ;;F I=1:1:5 Q:'$D(@$$^W4GL("P1LOCK")@("PCHZ",$$^W4MYDVN_":"_HZM))  H 1
 ;;S @$$^W4GL("P1LOCK")@("PCHZ",$$^W4MYDVN_":"_HZM)=$H
 F I=1:1:5 Q:'$D(@$$^W4GL("P1LOCK")@("PCHZ",HZM))  H 1
 S @$$^W4GL("P1LOCK")@("PCHZ",HZM)=$H
 Q
 
 

W4LSMHB
W4LSMHB ; [ 29.09.15 07:39 ] [ 11.04.11 15:19 ] [ 10.04.11 21:00 ]
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br />",!
 ;
 S LKH=$G(%ARG("LKH"))
 ;
 I '$G(%ARG("PRINT")) D
 .D CUSTCARD^W4LHB(LKH)
 .W "</table>",!
 ;
 D BUTTONS
 ;
 D INVOICESLIST
 ;
 W "</div>",!
 ;
 I 'SHHB D  Q
 .W "<script>",!
 .W " MsgA('NOCLOSEDINVOICES')",!
 .W " Back()",!
 .W "</script>",!
 ;
 W "<br />",!
 ;
 I '$G(%ARG("PRINT")) D
 .W "<div id=""divbut"" align=""center"">"
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 .W "<tr>",!
 . W " <td>",!
 .   D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
 .  W "<td>&nbsp;</td>",!
 .  W "<td>"
 .   D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:darkblue",",,,100")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .  W "<td>",!
 .   D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 .  W " </td>",!
 . W "</tr>",!
 .W "</table>",!
 .W "</div>",!
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
INVOICESLIST ;
 N STRING,TOT S STRING=LKH
 W "<br>",!
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("INVOICESLIST")_"</span>",!
 W "<br>",!;
 I '$G(%ARG("PRINT")) D
 .W "<table border=""0""  width=""30%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 .W "  <tr style=""color:darkblue"">",!
 .W "  <td ><b>"_$$^%W1DICT("TOTALOPENED")_" : </b></td>",!
 .W "  <td id=""totalopened"" "_$$STYLEBLACK_" "_$$^%W1ALIGN_">"_$G(TOTOPENED)_"</td>",!
 .W "</tr>",!
 .W "</table>",!
 ;
 W "<table id=""listinvoices"" border=""1""  width=""60%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("INVOICE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNUMBER")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CUSTOMNAME")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CLOSEDBY")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CLOSINGDATE")
 W "   </th>",!
 I '$G(%ARG("PRINT")) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("OPEN")
 .W "   </th>",!
 W "  </tr>",!
 ;
 N KLIN D KLIN
 N GLHB D GLHB,GLCLS
 ;
 S SHHB=0
 D
 .N N,LK,LK0,A
 .N VD F VD="TZ","H" D
 ..S N="" F  S N=$O(@GLCLS@(VD,N)) Q:N=""  D
 ...N ST S ST=$G(^(N))
 ...S LK0=$G(@KLIN@(VD,N))
 ...S LK=$P(LK0,"+"),LK=$P(LK,"W"),LK=$P(LK,"^")
 ...I LK=LKH!(LKH="") D
 ....D ^W4HSBGET(N,VD) Q:$D(W4HSB)<10
 ....N HB S HB=N I VD="TZ" S HB=-N
 ....S SHHB=SHHB+1
 ....D TRSTYLE
 ....W " >",!
 ....W " <td " D SHOWINVOICE(HB,LK0) W ">&nbsp;&nbsp;&nbsp;"_HB_"</td>"
 ....W " <td " D SHOWINVOICE(HB,LK0) W ">&nbsp;&nbsp;"_W4HSB("TODATE")_"</td>",!
 ....W " <td " D SHOWINVOICE(HB,LK0) W ">&nbsp;&nbsp;"_W4HSB("LKH")_"</td>",!
 ....W " <td " D SHOWINVOICE(HB,LK0) W ">&nbsp;&nbsp;"_$$H2U^%L1FRM(W4HSB("LKHNAME"))_"</td>",!
 ....W " <td id=""tot"_SHHB_""" " D SHOWINVOICE(HB,LK0) W ">&nbsp;"_$J(W4HSB("TOT"),2,2)_"</td>",!
 ....W " <td " D SHOWINVOICE(HB,LK0) W ">&nbsp;&nbsp;"_$$H2U^%L1FRM($P(ST,"\",2))_"</td>",!
 ....W " <td " D SHOWINVOICE(HB,LK0) W ">&nbsp;&nbsp;"_$P(ST,"\",1)_"</td>",!
 ....S CHECKED="" I $$OPENEDNOW(HB) S CHECKED=" checked=""checked"" "
 ....I '$G(%ARG("PRINT")) D
 .....W " <td align=""center"" ><input type=""checkbox"" id=""chk"_HB_""" "_CHECKED_" onClick=""ClickChkBox('"_SHHB_"','"_HB_"')"" ></td>"
 ....W "</tr>",!
 ;
 W " </table>",!
 Q
 ;
ARM(LK0) ;
 I LK0["W" Q 2
 I LK0'["+" Q 1
 Q 0
 ;
SPAN(STAM) ;
 Q " <span style=""color:black"""
 ;
SHOWINVOICE(N,LK0) ;
 N LK
 S LK=$$LK^W4LHB(LK0)
 I '$$ARM(LK0) W " style=""cursor:pointer"" onClick=""ShowInvoice('"_N_"','"_LK_"')"""
 I $$ARM(LK0)=1 D
 .W " style=""cursor:pointer"" onClick=""ShowArmInvoice('"_N_"','"_LK_"')"""
 I $$ARM(LK0)=2 D
 .W " style=""cursor:pointer"" onClick=""ShowItemsInvoice('"_N_"','"_LK_"')"""
 Q
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold;text-align:right"""
 ;
TOTALOPENED ;
 D TMPCL N N,SUM S SUM=0
 S N="" F  S N=$O(@TMPCL@(N)) Q:N=""  D
 .S SUM=SUM+$G(^(N))
 Q SUM
 ;
KLIN ;
 S KLIN=$$^W4GL("KLIN")
 Q
 ;
GLHB ;
 S GLHB=$$^W4GL("P1LHB")
 Q
GLHBY ;
 S GLHBY=$$^W4GL("KLF")
 Q
GLHBW ;
 S GLHBW=$$^W4GL("W4DOC")
 Q
 ;
SUBMIT(PRM) ;
 D PUT^%W3DEB("W4LSMHB-SUBMIT","PRM=PRM")
 ;
 N WHO,DATSG,TMPCL,GLCLS
 D TMPCL,GLCLS
 ;
 S DATSG=$ZD($H,"DD.MM.YY")
 N N,N1
 S N="" F  S N=$O(@TMPCL@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@TMPCL@(N,N1)) Q:N1=""  D
 ..K @GLCLS@(N,N1)
 L  ;
 K @TMPCL
 Q 1
 ;
TRSTYLE ;
 W "<tr style=""background-color:"_$S($G(VD)="TZ":"pink",$$ARM(LK0)=1:"lightblue",$$ARM(LK0)=2:"lightyellow",1:"white")_""""
 Q
 ;
OPENEDNOW(HB) ;
 N VD S VD="H"
 I HB<0 S VD="TZ",HB=-HB
 D TMPCL
 I $D(@TMPCL@(VD,HB)) Q 1
 Q 0
 ;
GLCLS ;
 D GLCLS^W4SGMHB
 Q
 ;
TMPCL ;
 S TMPCL=$$^W4MAIN("TMPCL")
 Q
 ;
BUTTONS ;
 Q:$G(%ARG("PRINT"))
 W "<tr>",!
 W " <td colspan=""6"" align=""center"">",!
  W " <table><tr>",!
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("clear",$$^%W1DICT("SHOWCUSTREPORT"),"ShowCustReport()","color:darkblue","wh,22")
   W " </td>",!
   ;
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("clear",$$^%W1DICT("FULLCUSTCARD"),"ShowCustCard()","color:brown","wh,22")
   W " </td>",!
   ;
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("clear",$$^%W1DICT("CLEAR"),"ClearHrf()","color:blue","wh,22")
   W " </td>",!
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "  </td>",!
  W " </tr></table>",!
 W " </td>",!
 W "</tr>",!
 Q
 ;
INIT ;
 D ^W3CSS
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I $G(%ARG("FIRST")) D
 .D TMPCL
 .K @TMPCL
 Q
 ;
CLOSE(PRM) ;
 N HB,VD
 D TMPCL
 S HB=$P(PRM,";")
 S SUM=$P(PRM,";",2)
 S VD="H"
 I HB<0 S VD="TZ",HB=-HB
 K @TMPCL@(VD,HB)
 Q 1
 ;
OPEN(PRM) ;
 N HB,VD
 D TMPCL
 S HB=$P(PRM,";")
 S VD="H"
 I HB<0 S VD="TZ",HB=-HB
 S @TMPCL@(VD,HB)=""
 Q 1

W4LSRVCR
W4LSRVCR ; [ 25.07.11 13:51 ] [ 07.01.11 14:40 ] [ 05.06.10 17:41 ]
 N (JB,%ARG,%REM)
 D GLS
 N LKH S LKH=$G(%ARG("LKH"))
 I '$G(%ARG("NOM")) D
 .S DAT=$ZD($H,"DD.MM.YY")
 S NOM=$G(%ARG("NOM"))
 I NOM S DAT=$$DAT^W4LSRVW(NOM),LKH=$$LKH^W4LSRVW(NOM)
 ;
 D KOTHSB(NOM,LKH,DAT)
 ;
 D DAF
 ;
 W "<br/>"
 W "<div id=""divbut"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMITANDPRINT"),"Submit('"_LKH_"')","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
KOTHSB(NOM,LKH,DAT) ;
 D ^W4KOTHSB(NOM,LKH,DAT,"SRVC")
 Q
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td dir=""LTR"" "_$$^%W1ALIGN
 Q
 ;
 ;
DAF ;
 N (JB,%ARG,LKH,DAT,NOM)
 ;
 W "<table id=""TblSrvCrd"" dir="""_$$^%W1DIR_""" width=""65%"" border=""0"" cellspacing=""0"">",!
  ;
 W "<tr><td>"_$$^%W1DICT("DEVICE")_"</td><td>"_$$INP("dev",20,"H")_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("MODEL")_"</td><td>"_$$INP("model",14)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("SERIAL")_"</td><td>"_$$INP("serial",14)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDEVICE")_"</td><td>"_$$INP("dop1",18,"H")_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDEVICE")_"</td><td>"_$$INP("dop2",18,"H")_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDEVICE")_"</td><td>"_$$INP("dop3",18,"H")_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("WARRDOCNMB")_"</td><td>"_$$INP("warrdoc",8)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("WARRANTY")_"<input type=""radio"" name=""warrflag"" value=""1"" "_$S($$WARRFLAG^W4LSRVW(NOM):"checked=""checked""",1:"")_" >",!
 W "    <td>"_$$^%W1DICT("SERVICE")_"<input type=""radio"" name=""warrflag"" value=""0"" "_$S('$$WARRFLAG^W4LSRVW(NOM):"checked=""checked""",1:"")_" >",!
 W "</tr>",!
 W "<tr><td>"_$$^%W1DICT("DESCRIPTION")_"</td><td>"_$$INPDS("descr")_"</td></tr>"
 W "</table>",!
 Q
 ;
PUT(PRM) ; -- SAVE NEW INVOICE
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4LSRVCR-PUT","PRM=PRM")
 ;
 D GLS
 ;
 D PRS^%L1FRM(PRM,"NOM;STRING;DEVICE;MODEL;SERIAL;DEVDOP1;DEVDOP2;DEVDOP3;WARRDOCNMB;WARRFLAG;DESCR",";")
 ;
 I STRING="",'NOM Q "NOCUSTNMB"
 I 'NOM D
 .S NUMBER=$O(@GLS@(9999999),-1)+1
 .S DAT=$ZD($H,"DD.MM.YY")
 .S STRING1=$$LKH^W4L(STRING)
 .S KTV=$$KTVM^W4L(STRING)
 .S TEL2=$$PELE^W4L(STRING)
 I NOM D
 .S STRING=$$LKH^W4LSRVW(NOM) Q:STRING=""
 .S NUMBER=NOM,DAT=$$DAT^W4LSRVW(NOM)
 .S STRING1=$$LKH1^W4LSRVW(NOM)
 .S KTV=$$KTV^W4LSRVW(NOM)
 .S TEL2=$$TEL2^W4LSRVW(STRING)
 ;
 I STRING="" Q "NOCUSTNMB"
 ;
 L +@GLS@(NUMBER):1
 K @GLS@(NUMBER)
 S @GLS@(NUMBER)=$ZD($H,"DD.MM.YY")_"\"_STRING_"\"_STRING1
 S $P(@GLS@(NUMBER),"\",4)=KTV
 S $P(@GLS@(NUMBER),"\",5)=TEL2
 S $P(@GLS@(NUMBER),"\",6)=$$HB(DEVICE)
 S $P(@GLS@(NUMBER),"\",7)=$$FUNC^%UCASE(MODEL)
 S $P(@GLS@(NUMBER),"\",8)=$$FUNC^%UCASE(SERIAL)
 S $P(@GLS@(NUMBER),"\",9)=$$HB(DEVDOP1)
 S $P(@GLS@(NUMBER),"\",10)=$$HB(DEVDOP2)
 S $P(@GLS@(NUMBER),"\",11)=$$HB(DEVDOP3)
 S $P(@GLS@(NUMBER),"\",12)=$$FUNC^%UCASE(WARRDOCNMB)
 S $P(@GLS@(NUMBER),"\",13)=WARRFLAG
 S $P(@GLS@(NUMBER),"\",14)=$$HB(DESCR)
 S $P(@GLS@(NUMBER),"\",15)=$ZD($H,"DD.MM.YY  24:60")
 D ^%S2GLSV(GLS_"("""_NUMBER_""")",$$^W4FGIB)
 L -@GLS@(NUMBER)
 ;
 D PUT^%W1PRM("MKRYD",NUMBER_"SRVC")
PUTE ;
 Q NUMBER
 ;
GLS S GLS=$$^W4GL("SRVC")
 Q
 ;
HB(TXT) ;
 S TXT=$$CNWEB^%L1FRM(TXT)
 Q $$INVH^%L1FRM(TXT)
 ;
INP(ID,LN,PR) ;
 N W S W="<input type=""text"" size="""_LN_""" maxlength="""_LN_""""
 I $G(PR)="H" S W=W_" dir=""RTL"""
 E  S W=W_"  dir=""LTR"""
 S W=W_" id="""_ID_""""
 I $G(NOM) D
 .N FNC,VL S FNC=$$FUNC^%UCASE(ID)
 .X "S VL=$$"_FNC_"^W4LSRVW(NOM)"
 .I $G(PR)="H" S VL=$$H2U^%L1FRM(VL)
 .S W=W_" value="""_VL_""" "
 S W=W_">"
 Q W
 ;
INPDS(ID) ;
 N W S W="<textarea cols=""60"" rows=""4"" maxlength=""210"""
 S W=W_"  dir="""_$$^%W1DIR_""""
 S W=W_" id="""_ID_""""
 S W=W_">"_$S($G(NOM):$$H2U^%L1FRM($$RPL^%L1FRM($$DESCR^W4LSRVW(NOM),"<BR>","_")),1:"")_"</textarea>"
 Q W
 ;
DELETE(NOM) ;
 D GLS
 I '$G(NOM) Q "NOTNMB"
 I '$D(@GLS@(NOM)) Q "NOTDOCNMB"
 K @GLS@(NOM)
 Q 1

W4LSRVW
W4LSRVW ; [ 31.01.14 14:41 ] [ 18.02.10 12:11 ] [ 06.02.10 19:59 ]
 N (JB,%ARG,%REM)
 D GLS
 I '$G(%ARG("NOM")) Q
 ;
 S NOM=%ARG("NOM")
 S DAT=$$DAT(NOM)
 S LKH=$$LKH(NOM)
 ;
 D KOTHSB(NOM,LKH,DAT,$$TEL2(NOM))
 ;
 D DAF
 ;
 I '$G(%ARG("PRINT")) W "<br />" D DIVBUT
 Q
 ;
KOTHSB(NOM,LKH,DAT,PELE) ;
 D ^W4KOTHSB(NOM,LKH,DAT,"SRVC",PELE)
 Q
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td dir=""LTR"" "_$$^%W1ALIGN
 Q
 ;
 ;
DAF ;
 ;-- INPUT CMNT(), BFTAX(), AFTAX() , LMAM (IF NOT NEW)
 N (JB,%ARG,LKH,DAT,NOM)
 ;
 W "<table id=""TblSrvCrd"" dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">",!
  ;
 ;W "<tr><td width=""20%"">"_$$^%W1DICT("PELE")_"</td><td>"_$$TEL2(NOM)_"</td></tr>",!
 W "<tr><td width=""20%"">"_$$^%W1DICT("DEVICE")_"</td><td>"_$$H2U^%L1FRM($$DEV(NOM))_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("MODEL")_"</td><td>"_$$MODEL(NOM)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("SERIAL")_"</td><td>"_$$SERIAL(NOM)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDEVICE")_"</td><td>"_$$RKVH(NOM,1)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDEVICE")_"</td><td>"_$$RKVH(NOM,2)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("ADDEVICE")_"</td><td>"_$$RKVH(NOM,3)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("WARRDOCNMB")_"</td><td>"_$$WARRDOC(NOM)_"</td></tr>",!
 W "<tr><td>"_$$^%W1DICT("WARRANTY")_"<input type=""radio"" name=""warrflag"" value=""1"" disabled=""disabled"" "_$S($$WARRFLAG(NOM):"checked=""checked""",1:"")_" >",!
 W "    <td>"_$$^%W1DICT("SERVICE")_"<input type=""radio"" name=""warrflag"" value=""0"" disabled=""disabled"" "_$S('$$WARRFLAG(NOM):"checked=""checked""",1:"")_" >",!
 W "<tr><td>"_$$^%W1DICT("MALFUNCTIONDESCR")_"</td><td>"_$$H2U^%L1FRM($$DESCR(NOM))_"</td></tr>",!
 W "</tr>",!
 W "</table>",!
 W "<br /><br />",!
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(10)_""" width=""70%"" border=""0"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <td "_$$^%W1ALIGN_" >"
 W "   "_$$^%W1DICT("SRVCOMMENT1",$G(@$$^W4PRM@("NOACCSUM")))
 W "  </td>"
 W " </tr>",!
 W " <tr>",!
 W "  <td "_$$^%W1ALIGN_" >"
 W "   "_$$^%W1DICT("SRVCOMMENT2",$G(@$$^W4PRM@("WARRPRD")))
 W "  </td>"
 W " </tr>",!
 W " <tr>",!
 W "  <td "_$$^%W1ALIGN_" >"
 W "   "_$$^%W1DICT("SRVCOMMENT3")
 W "  </td>"
 W " </tr>",!
 W "</table>",!
 W "<br /><br /><br /><br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""70%"" border=""0"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <td>"_$$^%W1DICT("CLIENTSIGN")_" _________________</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"_$$^%W1DICT("SERVICESIGN")_" _________________</td>",!
 W " <tr>",!
 W "</table>",!
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_NOM_"')","color:black",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Edit",$$^%W1DICT("EDIT"),"Edit('"_NOM_"')","color:darkblue",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("DELETE"),"Delete('"_NOM_"')","color:darkred",",,,180")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
GLS S GLS=$$^W4GL("SRVC")
 Q
 ;
DAT(NOM) ;
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",1)
 ;
LKH(NOM) ;
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",2)
 ;
LKH1(NOM) ;
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",3)
 ;
KTV(NOM) ;
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",4)
 ;
TEL2(NOM) ;
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",5)
 ;
DEV(NOM) ;
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",6)
 ;
MODEL(NOM) ;
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",7)
 ;
SERIAL(NOM) ;
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",8)
 ;
DOP1(NOM)
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",9)
 ;
DOP2(NOM)
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",10)
 ;
DOP3(NOM)
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",11)
 ;
WARRDOC(NOM)
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",12)
 ;
WARRFLAG(NOM)
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $P($G(@GLS@(NOM)),"\",13)
 ;
DESCR(NOM)
 I '$G(NOM) Q ""
 N GLS D GLS
 Q $$RPL^%L1FRM($P($G(@GLS@(NOM)),"\",14),"_","<BR>")
 ;
RKVH(NOM,N) ;
 N A,CMD S CMD="S A=$$H2U^%L1FRM($$DOP"_N_"(NOM))"
 X CMD I A="" Q "&nbsp;"
 Q A

W4LSTPRN
W4LSTPRN ; [ 31.03.14 14:25 ] [
 N (JB,%ARG,%REM)
 N TMP S TMP=$$^W4MAIN("TMP")
 K @TMP S I=0
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S I=I+1

W4LVDT
W4LVDT ; [ 02.05.19 19:15 ] [ 13.03.18 09:16 ] [ 12.03.18 18:57 ] 
 N (JB,%ARG,%REM)
 Q:'$G(JB)
 S DT1=$$^%L1DC(%ARG("MEDAT"),3)
 S DT2=$$^%L1DC(%ARG("ADDAT"),3)
 D ^%W1ARG
 ;
 S PRTN=$$^%W1JB
 K ^TEMP(PRTN) S L="",DT3I=""
 N SUGOV
 S STRING="" F  S STRING=$O(@$$^W4GL("FILE")@(STRING)) Q:STRING=""  I $E(STRING,1,2)'=99 D
 .S I=0,L=""
 .
 .S DAT="" F  S DAT=$O(@$$^W4GL("FILE")@(STRING,DAT)) Q:DAT=""  S DT3=$$^%L1DC($$^%L1DC(DAT,1),3) I DT3'<DT1,DT3'>(DT2+1) D
 ..I DT3<DT1!(DT3>(DT2+1)) Q
 ..S TM="",ENDD=0 F  S TM=$O(@$$^W4GL("FILE")@(STRING,DAT,TM)) Q:TM=""  D  S L=$G(@$$^W4GL("FILE")@(STRING,DAT,TM)) Q:ENDD
 ...S TMV=$G(^(TM))
 ...I TMV="I",DT3>DT2 S ENDD=1 Q
 ...I TMV="I",DT3<DT1!(DT3>DT2) Q
 ...
 ...I TMV="I" D  S DT3I=DT3 Q
 ....S I=I+1,A=""
 ....S $P(A,"*",1)=$$^%L1DC(DT3,9)
 ....S $P(A,"*",2)=$$T^%L1TIME(TM)
 ....S ^TEMP(PRTN,DT3,+STRING,I)=A
 ...
 ...I TMV="O" D
 ....I DT3>DT2,L'="I" Q
 ....I '$G(DT3I) S DT3I=DT3
 ....I DT3>(DT3I+1) Q
 ....I DT3=DT1,TM<($$ZSHAA*3600) Q
 ....I DT3>DT2,L'="I" Q
 ....I L'="I" S I=I+1
 ....S A=$G(^TEMP(PRTN,DT3I,+STRING,I))
 ....S $P(A,"*",3)=$$^%L1DC(DT3,1)
 ....S $P(A,"*",4)=$$^%L1DC(DT3,9)
 ....S $P(A,"*",5)=$$T^%L1TIME(TM)
 ....D
 .....N (STRING,DT3I,JB,%ARG,STSH)
 .....S DAT=$ZD(DT3I,"YYMMDD"),STSH=0,FLSLR=1
 .....S COMPUT="" D TV^W4LEVTYP(STRING,DAT,DAT)
 .....;
 .....S STSH=+SUMKSF
 ....S $P(A,"*",7)=STSH
 ....S ^TEMP(PRTN,DT3I,+STRING,I)=A
 ;
 D SETPRM^W4LEVD
 Q
 ;
DT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 Q
 ;
OV ;
 S OV=$$DOP^W4NAME(STRING)
 I $G(MEOV),OV<$G(MEOV) S OK=0 Q
 I $G(ADOV),OV>$G(ADOV) S OK=0 Q
 Q
 ;
TM ;
 N I,x51
 F I=1:1:6 S @("x"_I)=$P($G(@GLOB),"*",I)
 S x51=x5
 I $$^%L1DC(x3,3)=($$^%L1DC(DAT,3)+1) D
 .S x51=x5+24_":"_$P(x5,":",2)
 ;
 S x6=$J(x51*60+$P(x51,":",2)-(x2*60+$P(x2,":",2))/60,2,2)
 I x2=""!(x5="") S x6=""
 I x6'<24 S x6="?"
 S x7=0
 N FLSLR S FLSLR=+$$GETP^%W1PRM("FLSLR"),x7=0
 I FLSLR S x7=$P($G(@GLOB),"*",7)
 Q
 ;
ZSHAA(STAM) ;
 Q $$SHAAZ^W4PRM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4LVL
W4LVL(IND,NM) ; [ 03.09.21 09:31 ] [ 
 N (JB,IND,NM)
 S OK=""
 S N="" F  S N=$O(@$$^W4GL("W4OPT")@(IND,N)) Q:N=""  D
 .S A=$G(^(N))
 .I $TR($P(A,";",2),">","")=NM S OK=$G(^(N,"PSWLVL"))
 Q OK
 ;
PSW(LVL) ;
 I $$PSWDRG^W4PRM Q ""
 Q $G(@$$^W4PRM@("PSW"_LVL))
 ;
US23(STAM) ;
 I '$$PSWDRG^W4PRM,$$PSW(2)=$$PSW(3) Q 1
 Q 0
 ;
BO(STAM) ;
 Q $G(@$$^W4GL("W4OPT")@("BO",0,"PSWLVL"))
 
 

W4MAAZAN
W4MAAZAN(DAT1,DAT2,RKZ) ; [ 17.08.26 14:47 ] [ 08.07.26 13:30 ] [ 21.05.26 10:44 ] 
 N (JB,%ARG,%REM,DAT1,DAT2,RKZ)
 Q:$G(%ARG("SHOW"))=0
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S W4MAAZAN=""
 D PREP^W4Z(DAT1,DAT2) ; --> DT1,DT2
 ;
 D PUT^%W1PRM("MANYREPS",1)
 D REPORT
 ;
 D KILLS
 Q
 ;
 ;
RKV(RKV) ;
 I $G(RKV)="" Q "&nbsp;"
 Q RKV
 ;
 ;
REPORT ;
 ; ------------------------- CREATE REPORT ---------------
 ;--------- ----------  HEADER
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style="""_$$FONTFM^W3CSS_""">",!
  W "<div id=""excel"">",!
   D ^W4ZEX("S222")
   D DIVEXC^W4SVEX("S222")
  W "</div>",!
  ;
  N COD S COD="DEP"_DT2
  S FLCSV=$$FLCSV(COD)
  ;
  D BASICREP
  ;
  S %ARG("NOMNREP")=1
  ;
  I '$$RKZ D PCBREAK
  I $$RKZ W "<br><br>",!
  ;
  I '$$RKZ D
  .D KOT1("INVOICESREPORT")
  .D CREDITREP
  .N REPN S REPN="W4DHB"
  .S %SCRN="W4DHB"
  .S %ARG("NOPCREPSHAP")=1
  .D PC2^W4DMANY
  .D PCBREAK
  ;
  I $$RKZ D
  .D CREDITREP
  ;
  D KOT1("TOTALREPORT",DAT1_"<>"_DAT2)
  D SIKUM
  ;
  I '$$RKZ D PCBREAK
  I $$RKZ W "<br><br>",!
  ;
  D EXOP(FLCSV)
  D PUT^%W1PRM("FLCSV",FLCSV)
  D DIVEXC^W4SVEX(COD)
  ; 
  D KOT1("DEPREPORT",DAT1_"<>"_DAT2)
  D EX(DAT2_" jix`z cr "_DAT1_" jix`zn zewlgn g""ec ","H")
  D EXTR
  ;
  D DEPREP
  D PCBREAK
  C FLCSV 
  ;
  D NODEPREP
 W "</div>",!
 Q
 ;
 ;
BASICREP ;
 N ST,STP,TIPK,I,N
 D KOT("dtew g""ec")
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 ;
 S ST=": `""k k""dq : ihipit :"_$$^W4VT(7)_" : ine`l  : AM.EXP. : qxpiic :  dfie  : hxk`xyi "
 S ST=ST_":   wiy  :"
 S TIPK=$$TIPPS^W4TOT("")
 S ST=ST_" "_TIPK_" :"
 S ST=ST_"  onefn  : dtwd : oeict  :  jix`z :"
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="\\\\\\\\BZ\B\BZ\BCZ"
 ;
 I '$$RKZ D
 .S N="" F  S N=$O(@$$^W4MAIN("S222")@(N)) Q:N=""  S ST=^(N) D
 ..D ST2TD(ST,STP,$G(@$$^W4MAIN("S222")@(N,"LINKZ")))
 ;
 ;----------- TOTALS
 D
 .N I S ST=$J($G(SZ("V")),2,2)_"\"
 .F I=9:-1:1 D
 ..I $$USNO^W4Z(I) Q
 ..S ST=ST_$J($G(SZ("V"_I)),2,2)_"\"
 ;
 S ST=ST_$J($G(SZ("G")),2,2)_"\"_$J($G(SZ("T")),2,2)_"\"
 S ST=ST_$J($G(SZ("F")),2,2)_"\"_$J($G(SZ("H")),2,2)_"\"_$J($G(SZ("A")),2,2)_"\"_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 ;
 W "</table>",!
 Q
 ;
 ;
CREDITREP ;
 S %ARG("DAT1")=DAT1
 S %ARG("DAT2")=DAT2
 S %ARG("NOEXCEL")=0 ;1
 S %ARG("REPN")="W4DHB"
 ;;I $$RKZ Q
 K ^[$$^W3MAIN]TMPSCR(JB)
 M ^[$$^W3MAIN]TMPSCR(JB,"ARG")=%ARG
 D PROG^W4REPSCR(JB)
 Q
 ;
 ;
SIKUM ;
 D OPTBL
  W "<tr>"
   W "<th>"_$$H2U("oeict")_"</th>"
   I $$NOMAM^W4PRM D
   .W "<th>"_$$H2U("n""rn setk oeict")_"</th>"
   .W "<th>"_$$H2U("n""rn xeht oeict")_"</th>"
   W "<th>"_$$H2U("dtwd")_"</th>"
   W "<th>"_$$H2U("qn z-yg")_"</th>"
   I $$NOMAM^W4PRM D
   .W "<th>"_$$H2U("n""rn setk zeipeayg")_"</th>"
   .W "<th>"_$$H2U("n""rn xeht zeipeayg")_"</th>"
   W "<th>"_$$H2U("zexikn k""dq")_"</th>"
   W "<th>"_$$H2U("zegeecn zeqpkd")_"</th>"
   I '$$NOMAM^W4PRM D
   .W "<th>"_$$H2U("n""rn iptl")_"</th>"
   I $$NOMAM^W4PRM D
   .W "<th>"_$$H2U("n""rn zetetk zeqepkd k""dq")
   .W "<th>"_$$H2U("n""rn zexeht zeqpkd k""dq")_"</th>"
   .W "<th>"_$$H2U("n""rn iptl zeqpkd k""dq")_"</th>"
   W "<th>"_$$H2U("n""rn")_"</th>"
  W "</tr>"
  ;
  S TOTREP=$$BG^W4MAIN("TMPREP")_"""TOT"")"
  S PDN=$G(SZ("A"))
  S TOTREP=$G(@TOTREP)
  S TOTINV=$P(TOTREP,"\",4)
  S MAMH=$P(TOTREP,"\",3)
  S MAMAH=$$MAMD^W4L($$^%L1DC(DAT2,3))
  N TOTM S TOTM=$G(SZ("A"))
  ;
  I $G(SZ("CMAM")) D
  .S TOTM=SZ("CMAM")
  ;
  S MAM=TOTM*MAMAH/(100+MAMAH)
  S LMAM=PDN-MAM
  S LMAMH=TOTINV-MAMH
  ;
  W "<tr style=""font-weight:bold;background-color:yellow"">"
   W "<td>"_$$ZPTN(PDN)_"</td>"
   I $$NOMAM^W4PRM D
   .W "<td>"_$$ZPTN(TOTM)_"</td>"
   .W "<td>"_$$ZPTN(PDN-TOTM)_"</td>"
   W "<td>"_$$ZPTN($G(SZ("H")))_"</td>"
   W "<td>"_$$ZPTN(TOTINV)_"</td>"
   ;
   N TOTMH S TOTMH=TOTINV
   I MAMAH S TOTMH=$J(MAMH*(100+MAMAH)/MAMAH,2,2)
   ;
   I $$NOMAM^W4PRM D
   .W "<td>"_$$ZPTN(TOTMH)_"</td>"
   .W "<td>"_$$ZPTN(TOTINV-TOTMH)_"</td>"
   ;
   W "<td>"_$$ZPTN(PDN+$G(SZ("H")))_"</td>"
   W "<td>"_$$ZPTN(PDN+TOTINV)_"</td>"
   ; 
   I $$NOMAM^W4PRM D
   .W "<td>"_$$ZPTN(TOTM+TOTMH)_"</td>"
   .W "<td>"_$$ZPTN(PDN+TOTINV-TOTM-TOTMH)_"</td>"
   ;
   W "<td>"_$$ZPTN(PDN+TOTINV-MAM-MAMH)_"</td>"
   W "<td>"_$$ZPTN(MAM+MAMH)_"</td>"
  W "</tr>"
 W "</table>",!
 Q
 ;
 ;
NODEPREP
  I '$G(%ARG("PRTNODEP")) Q
  N N,K S K=0
  S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  I $$DEP1^W4P(N)="" D
  .I $$^W4CDSRV(N) Q
  .S K=K+1
  .I K=1 D KOTNODEP
  .W "<tr>"
  . W "<td>"_N_"</td>",!
  . W "<td>"_$$RKV($$H2U($$SHEM^W4P(N)))_"</td>",!
  . W "<td>"_$$RKV($$MH^W4P(N))_"</td>",!
  . W "<td>"_$$SUG^W4P(N)_" "_$$H2U($$SUG1^W4P(N))_"</td>",!
  .W "</tr>",!
 W "</table>",!
 Q
 ;
KOTNODEP ;
 D KOT1("NODEPREPORT")
 ;
 D OPTBL
  W "<tr>"
   W "<th>"_$$H2U("hixt cew")_"</th>"
   W "<th>"_$$H2U("hixt my")_"</th>"
   W "<th>"_$$H2U("xign")_"</th>"
   W "<th>"_$$H2U("mihixt zveaw")_"</th>"
  W "</tr>",!
 Q
 ;
OPTBL W "<table class=""rep"" border=""0"" cellspacing=""0"" cellpadding=""3"" width=""96%"" >",!
 Q
 ;
 ;
S2 ;------ Z() --> ^S222
 ; ------- Z() --> SZ()
 ; ------- Z("V...") --> ^S333
 ; ------- Z("MTB",...") --> ^S444, SZ("MTB")
 ;------------------------------------------------------------
 ;------------------------ BASIC REPORT ----------------------
 N N,N2,ST,I,S2
 S SH=SH+1
 I '$$SHOWTIP S Z("T")=""
 S S2=$S($G(Z("V")):$J($G(Z("V")),2,2),1:"")_"\"
 F I=9:-1:1 D
 .I $$USNO^W4Z(I) Q
 .S S2=S2_$S($G(Z("V"_I)):$J($G(Z("V"_I)),2,2),1:"")_"\"
 ;
 S S2=S2_$G(Z("G"))_"\"_$G(Z("T"))_"\"
 S S2=S2_$G(Z("F"))_"\"_$G(Z("H"))_"\"_$G(Z("A"))_"\"_$$^%L1DC(DAT,1)
 ;
 S @$$^W4MAIN("S222")@(SH)=S2
 I $G(LINKZ) S @$$^W4MAIN("S222")@(SH,"LINKZ")=LINKZ
 ;
 S N2="" F  S N2=$O(Z(N2)) Q:N2=""  S SZ(N2)=$G(SZ(N2))+$G(Z(N2))
 ;
 Q
 ;
 ;
ST2TH(ST) ;
 N GL
 W "<tr>" N FLD1
 F J=$L(ST,":")-1:-1:2 D
 .S FLD=$P(ST,":",J)
 .I FLD="" S FLD1="&nbsp;"
 .E  S FLD1=$$H2U(FLD)
 .W "<th "
 .W ">"_FLD1_"</th>"
 W "</tr>",!
 Q
 ;
ST2TD(ST,STP,LINK) ;
 N J,OK,FLD,GL S OK=0
 F J=$L(ST,"\")-1:-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .I FLD S OK=1
 ;;Q:'OK
 ;
 W "<tr>"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style="""
 .I $P(STP,"\",J)["B" W "font-weight:bold;"
 .I $P(STP,"\",J)["C" W "text-align:center;"
 .I $P(STP,"\",J)["Z" W "cursor:pointer;"
 .W """"
 .I $P(STP,"\",J)["Z",$G(LINK) D
 ..W " onClick=""ShowZ('"_LINK_"')"" "
 .W ">"_$$SHOW(FLD,"N")_"</td>"
 W "</tr>",!
 Q
 ;
ST2TOT(ST) ;
 N GL
 W "<tr>"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style=""background-color:yellow;font-weight:bold;border:solid 1px brown"
 .I J=$L(ST,"\") W ";text-align:center"
 .W """ "
 .W ">"_$$SHOW(FLD,"N")_"</td>"
 W "</tr>",!
 Q
 ;
KOT(TXT) ;
 W "<span "
 W " style=""font-size:"_$$^W3FSZ(14)_""""
 W ">"
 I TXT'="",TXT'="&nbsp;" W $$H2U(TXT)
 W "</span>",!
 Q
 ;
KOT1(TXT,PRM) ;
 W "<span "
 W " style=""font-size:"_$$^W3FSZ(14)_""""
 W ">"
 I TXT'="",TXT'="&nbsp;" W $$^%W1DICT(TXT,$G(PRM))
 W "</span>",!
 Q
 ;
SHOW(FLD,PR) ;
 I $$SPA^%L1FRM(FLD)="" Q "&nbsp;"
 I PR="N",$G(FLD),$$NUM(FLD) S FLD=$$ZPT^%L1FRM($J(FLD,2,2))
 I '$$NUM(FLD),FLD'="",FLD'="&nbsp;" Q $$H2U(FLD)
 I FLD<0 Q "<span style=""color:red;text-align:right"" dir=""LTR"" >"_FLD_"</span>"
 Q FLD
 ;
NUM(FLD) ;
 I FLD?."-"1N.N.".".N Q 1
 Q 0
 ;
SHOWTIP(STAM) ;
 N DD S DD="" I $G(DAT) S DD=$$^%L1DC(DAT,4)
 I '$G(DAT),$G(DT1) S DD=DT1
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPD(STAM)
 Q $$^W4TIPPD($$^%L1DC($G(DAT),1))
 ;
KILLS ;
 K @$$^W4MAIN("TMPS111") ; --- TO SHOW
 K @$$^W4MAIN("S222") ; --- NORMAL LINES
 K ^[$$^W3MAIN]TMPSCR(JB)
 Q
 ;
PCBREAK ;
 W "<br>",!
 W "<p style=""page-break-before:always"">",!
 W "<br>",!
 Q
 ;
 ;
DEPREP
  N (JB,%ARG,%REM,DT1,DT2,RKZ,COD,FLCSV,COD)
  D PRTSUM(DT1,DT2)
  ;
  D OPTBL
  ;
  K SSMAM
  ;
  I '$$RKZ D
  .D DEPREPBD D EXTR,EXTR
  ;
  I $$RKZ D PREPMAM ; --> SSMAM(DEP)
  ;
  D SIKUMDEP
  ;
  W "</table>",!
  C FLCSV
  ;
 Q
 ;
 ;
PREPMAM ;
 K SSMAM
 S DT="" F  S DT=$O(@$$^W4MAIN("VRM")@(DT)) Q:DT=""  I DT D
 .S DEP="" F  S DEP=$O(@$$^W4MAIN("VRM")@(DT,"DEP",DEP)) Q:DEP=""  I DEP?1N.N D
 .. S HNHP=$$DEPHNHP(DEP,DT)
 .. S QN=$$DEPSQN(DEP,DT)
 .. S SUM=$$DEPSUM(DEP,DT)
 .. S HNH=$$DEPHNH(DEP,DT)
 .. S DMS=$$DEPDMS(DEP,DT)
 .. S TIP=$$DEPTIP(DEP,DT)
 .. S TOT=SUM-HNHP-HNH+DMS
 .. I $$^W4TIPPD(DT) S TOT=TOT+TIP
 .. S AHMAM=$$MAMD^W4L(DT)
 .. I $$NODEPMAM(DEP) S AHMAM=0
 .. S MAM=TOT*AHMAM/(100+AHMAM)
 .. S SSMAM(DEP)=$G(SSMAM(DEP))+MAM
 Q
 ;
DEPSQN(DEP,DT) ;
 N DEPSQN
 N VRM S VRM=$$^W4MAIN("VRM")
 I $G(DT) D  Q DEPSQN
 .S DEPSQN=$G(@VRM@(DT,"DEP",DEP,"Q"))
 ;
 S DEPSQN=$G(@VRM@("DEP",DEP,"Q"))
 Q DEPSQN
 ;
 ;
DEPSUM(DEP,DT,WHAT) ;
 I $G(WHAT)="" S WHAT="DEP"
 N DEPSUM
 N VRM S VRM=$$^W4MAIN("VRM")
 I $G(DT) D  Q DEPSUM
 .S DEPSUM=$G(@VRM@(DT,WHAT,DEP,"S")) ;
 ;
 S DEPSUM=$G(@VRM@(WHAT,DEP,"S")) ;
 Q DEPSUM
 ;
 ;
DEPHNHP(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 I $G(DT) Q $G(@VRM@(DT,"DEP",DEP,"HP"))
 Q $G(@VRM@("DEP",DEP,"HP"))
 ;
DEPHNH(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 I $G(DT) Q $G(@VRM@(DT,"DEP",DEP,"HNH"))
 Q $G(@VRM@("DEP",DEP,"HNH"))
 ;
DEPDMS(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 I $G(DT) Q $G(@VRM@(DT,"DEP",DEP,"DMS"))
 Q $G(@VRM@("DEP",DEP,"DMS"))
 ;
DEPTIP(DEP,DT) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 I $G(DT) Q $G(@VRM@(DT,"DEP",DEP,"TIP"))
 Q $G(@VRM@("DEP",DEP,"TIP"))
 ;
 ;
PRTSUM(DT1,DT2) ;
 N (DT1,DT2,JB,%ARG,%REM,RKZ,DAYS,PRMONTH,WHAT,FLCSV)
 I $G(WHAT)="" S WHAT="DEP"
 K @$$^W4MAIN("VRM")
 ;
 I '$D(%ARG("REPTRH")) D
 .F DT=DT1:1:DT2 D
 ..I $G(DAYS),'$E(DAYS,$$^%L1DC(DT,8)) Q
 ..
 ..S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D PRTSUMHZ(DT,HZ,WHAT)
 ..D PRTSUMDT(DT,WHAT)
 ;
 I $D(%ARG("REPTRH")) D
 .S HZ="" F  S HZ=$O(@$$^W4MAIN("VIB")@(HZ)) Q:HZ=""  D
 ..S HZM=$$SPA^%L1FRM($E(HZ,10,18)) Q:'$D(@$$^W4ORD@(HZM))
 ..N DAT S DAT=$$TRH^W4HZMST(HZM)
 ..I DAT="" S DAT=$$DATK^W4HZMST(HZM)
 ..S DT=$$^%L1DC(DAT,3)
 ..I $G(DAYS),'$E(DAYS,$$^%L1DC(DT,8)) Q
 ..D PRTSUMHZ(DT,HZM,WHAT)
 .
 .F DT=DT1:1:DT2 D
 ..I $G(DAYS),'$E(DAYS,$$^%L1DC(DT,8)) Q
 ..D PRTSUMDT(DT,WHAT)
 ;
 I $D(PRMONTH) D SETVRMM(WHAT) Q  ;--- REPORT PER MONTH
 Q
 ;
 ;
DEP(PAR) ;
 S PAR=$P(PAR,"-")
 I PAR="" Q 0
 Q +$$DEP^W4P(PAR)
 ;
DEP1(DEP) ;
 N DEP1 S DEP1=$G(@$$^W4GL("DEP")@(DEP))
 I DEP1="" Q "dxcbed `l dwlgn"
 Q DEP1
 ;
 ;
KVZ(PAR) ;
 S PAR=$P(PAR,"-")
 I PAR="" Q 0
 Q +$$SUG^W4P(PAR)
 ;
KVZ1(KVZ) ;
 N KVZ1 S KVZ1=$G(@$$^W4GL("PARSUG")@(KVZ))
 I KVZ1="" Q "dxcbed `l dveaw"
 Q KVZ1
 ;
 ;
SIKUMDEP ;
  I '$$RKZ D
  .W "<tr class=""totdep"">"
  . W "<td colspan=""10"" style=""background-color:#eaeaea;text-align:center;font-size:14pt"">"_$$H2U("zewlgn mekiq")_"</td>",!
  .W "</tr>",!
  ;
  D KOTDEP
  ;
  S (SQN,SSUM,SHNHP,SHNH,SDMS,STIP,STOT,SMAM)=0
  S DR=2
  ;
  S DEP="" F  S DEP=$O(@$$^W4MAIN("VRM")@("DEP",DEP)) Q:DEP=""  I DEP?1N.N D
  .W "<tr "
  . I '$$RKZ W "class=""totdep"" "
  . W " style=""cursor:pointer"" "
  . W " onClick=""ShowDep(this,'"_DEP_"','"_DT1_"','"_DT2_"')"" "
  . W ">"
  .  W "<td>"_DEP_" "
  .  W $$H2U($$DEP1(DEP))_"</td>",!
  .  D EX($$DEP1(DEP),"H")
  .  S HNHP=$$DEPHNHP(DEP)
  .  S QN=$$DEPSQN(DEP)
  .  S SUM=$$DEPSUM(DEP)
  .  ;
  .  S SQN=SQN+QN
  .  S SSUM=SSUM+SUM
  .  S SHNHP=SHNHP+HNHP
  .  W "<td>"_QN_"</td>",!
  .  D EX(QN)
  .  W "<td>"_$J(SUM,DR,DR)_"</td>",!
  .  D EX(SUM,"N")
  .  W "<td>"_$J(HNHP,DR,DR)_"</td>",!
  .  D EX(HNHP,"N")
  .  S HNH=$$DEPHNH(DEP)
  .  S SHNH=SHNH+HNH
  .  W "<td>"_$J(HNH,DR,DR)_"</td>",!
  .  D EX(HNH,"N")
  .  S DMS=$$DEPDMS(DEP)
  .  S SDMS=SDMS+DMS
  .  W "<td>"_$J(DMS,DR,DR)_"</td>",!
  .  D EX(DMS,"N")
  .  S TIP=$$DEPTIP(DEP)
  .  S STIP=STIP+TIP
  .  I '$$TIPNO^W4TIPPD($G(DT2)) D
  ..  W "<td>"_$J(TIP,DR,DR)_"</td>",!
  ..  D EX(TIP,"N")
  .  S TOT=SUM-HNH-HNHP+DMS
  .  I $$^W4TIPPD($G(DT2)) S TOT=TOT+TIP ;,SSUM=SSUM+TIP
  .  S SMAM=SMAM+$G(SSMAM(DEP))
  .  W "<td>"_$J(TOT-$G(SSMAM(DEP)),DR,DR)_"</td>",!
  .  D EX(TOT-$G(SSMAM(DEP)),"N")
  .  W "<td>"_$J($G(SSMAM(DEP)),DR,DR)_"</td>",!
  .  D EX($G(SSMAM(DEP)),"N")
  .  W "<td>"_$J(TOT,DR,DR)_"</td>",!
  .  D EX(TOT,"N")
  .W "</tr>",!
  .D EXTR
  ;
  W "<tr class=""totdep"" style=""font-size:11pt;background-color:yellow"">"
   ;;W "<td>&nbsp;</td>",!
   W "<td>"_$$H2U("k""dq")_"</td>",!
   W "<td>"_SQN_"</td>",!
   W "<td>"_$$ZPT^%L1FRM($J(SSUM,DR,DR))_"</td>",!
   W "<td>"_$J(SHNHP,DR,DR)_"</td>",!
   W "<td>"_$J(SHNH,DR,DR)_"</td>",!
   W "<td>"_$J(SDMS,DR,DR)_"</td>",!
   I '$$TIPNO^W4TIPPD(DT2) D
   .W "<td>"_$J(STIP,DR,DR)_"</td>",!
   S STOT=SSUM-SHNHP-SHNH+SDMS
   I $$^W4TIPPD(DT2) S STOT=STOT+STIP
   S SLMAM=STOT-SMAM
   W "<td>"_$$ZPT^%L1FRM($J(SLMAM,DR,DR))_"</td>",!
   W "<td>"_$$ZPT^%L1FRM($J(SMAM,DR,DR))_"</td>",!
   W "<td>"_$$ZPT^%L1FRM($J(STOT,DR,DR))_"</td>",!
  W "</tr>",!
 Q
 ;
H2U(TXT) ;
 Q $$H2U^%L1FRM(TXT)
 ;
KOTDEP ;
  D W("<tr>")
   I $G(EXONLY)=1,$D(EXONLY("DT")) D EX("jix`z","H")
   D W("<th>"_$$H2U("dwlgn")_"</th>")
   D EX("dwlgn","H")
   ;;W "<th>"_$$H2U("dwlgn my")_"</th>"
   D W("<th>"_$$H2U("zenka xknp")_"</th>")
   D EX("zenka xknp","H")
   D W("<th>"_$$H2U("g""y xknp")_"</th>")
   D EX("g""y xknp","H")
   D W("<th>"_$$H2U("[-] zepnl zegpd")_"</th>")
   D EX("[-] zepnl zegpd","H")
   D W("<th>"_$$H2U("[-] zeillk zegpd")_"</th>")
   D EX("[-] zeillk zegpd","H")
   D W("<th>"_$$H2U("[+] gelyn / zexy inc")_"</th>")
   D EX("[+] gelyn / zexy inc","H")
   I '$$TIPNO^W4TIPPD(DT2) D
   .D W("<th>"_$$H2U($S($$^W4TIPPD(DT2):"[+]",1:"")_" mitih")_"</th>")
   .D EX($S($$^W4TIPPD(DT2):"[+]",1:"")_" mitih","H")
   D W("<th>"_$$H2U("n""rn iptl")_"</th>")
   D EX("n""rn iptl","H")
   D W("<th>"_$$H2U("n""rn")_"</th>")
   D EX("n""rn","H")
   D W("<th>"_$$H2U("zeqpkd k""dq")_"</th>")
   D EX("zeqpkd k""dq","H")
  D W("</tr>")
  I $G(EXONLY)'=-1 D EXTR
 Q
 ;
W(TX) ; 
 I $G(EXONLY)=1 Q
 W TX
 Q
 ;
DEPREPBD ;--- DOH MAHLAKOT LEFI TAARIHIM
 N DT,DMS,HNHP,QN,SUM,TIP,LMAM,MAM,TOT,EXONLY
 S EXONLY=1,EXONLY("DT")="" D KOTDEP K EXONLY
 ;
 S DT="" F  S DT=$O(@$$^W4MAIN("VRM")@(DT)) Q:DT=""  I DT?1N.N D
  .W "<tr>" S (SQN,SSUM,SHNHP,SHNH,SDMS,STIP,STOT,SMAM,SLMAM)=0
  . W "<td colspan=""10"" class=""totdat"">"_$ZD(DT,"DD.MM.YY")_"</td>",!
  .W "</tr>",!
  .
  .S EXONLY=-1 D KOTDEP K EXONLY
  .;
  .S DEP="" F  S DEP=$O(@$$^W4MAIN("VRM")@(DT,"DEP",DEP)) Q:DEP=""  I DEP?1N.N D
  ..W "<tr class=""depnorm"" style=""cursor:pointer"" "
  .. W " onClick=""ShowDep(this,'"_DEP_"','"_DT_"','"_DT_"')"" "
  ..W ">"
  .. W "<td>"_DEP_" "
  .. W $$H2U($$DEP1(DEP))_"</td>",!
  .. D EX($ZD(DT,"DD.MM.YY")),EX($$DEP1(DEP),"H")
  .. S HNHP=$$DEPHNHP(DEP,DT)
  .. S QN=$$DEPSQN(DEP,DT)
  .. S SUM=$$DEPSUM(DEP,DT)
  .. S SQN=SQN+QN
  .. S SSUM=SSUM+SUM
  .. S SHNHP=SHNHP+HNHP
  .. W "<td>"_QN_"</td>",!
  .. D EX(QN)  
  .. W "<td>"_$$ZPTN(SUM)_"</td>",!
  .. D EX(SUM,"N")
  .. W "<td>"_$$ZPTN(HNHP)_"</td>",!
  .. D EX(HNHP,"N")
  .. S HNH=$$DEPHNH(DEP,DT)
  .. S SHNH=SHNH+HNH
  .. W "<td>"_$$ZPTN(HNH)_"</td>",!
  .. D EX(HNH,"N")
  .. S DMS=$$DEPDMS(DEP,DT)
  .. S SDMS=SDMS+DMS
  .. W "<td>"_$$ZPTN(DMS)_"</td>",!
  .. D EX(DMS,"N")
  .. S TIP=$$DEPTIP(DEP,DT)
  .. S STIP=STIP+TIP
  .. I '$$TIPNO^W4TIPPD D
  ... W "<td>"_$$ZPTN(TIP)_"</td>",!
  ... D EX(TIP,"N")
  .. S TOT=SUM-HNHP-HNH+DMS
  .. I $$^W4TIPPD(DT) S TOT=TOT+TIP
  .. S AHMAM=$$MAMD^W4L(DT)
  .. S MAM=TOT*AHMAM/(100+AHMAM)
  .. S SMAM=SMAM+MAM
  .. S SSMAM(DEP)=$G(SSMAM(DEP))+MAM
  .. S LMAM=TOT-MAM
  .. W "<td>"_$$ZPTN(LMAM)_"</td>",!
  .. D EX(LMAM,"N")
  .. W "<td>"_$$ZPTN(MAM)_"</td>",!
  .. D EX(MAM,"N")
  .. W "<td>"_$$ZPTN(TOT)_"</td>",!
  .. D EX(TOT,"N")
  ..W "</tr>",!
  ..D EXTR
  .
  .S EXONLY=-1
  .W "<tr class=""totdep"">"
  . ;;W "<td>&nbsp;</td>"
  . W "<td>"_$$H2U($$^%L1DC(DT,1)_" k""dq")_"</td>",!
  . W "<td>"_SQN_"</td>",!
  . W "<td>"_$$ZPTN(SSUM)_"</td>",!
  . W "<td>"_$$ZPTN(SHNHP)_"</td>",!
  . W "<td>"_$$ZPTN(SHNH)_"</td>",!
  . W "<td>"_$$ZPTN(SDMS)_"</td>",!
  . I '$$TIPNO^W4TIPPD D
  .. W "<td>"_$$ZPTN(STIP)_"</td>",!
  . S STOT=SSUM-SHNHP-SHNH+SDMS
  . I $$^W4TIPPD(DT) S STOT=STOT+STIP
  . S SLMAM=STOT-SMAM
  . W "<td>"_$$ZPTN(SLMAM)_"</td>",!
  . W "<td>"_$$ZPTN(SMAM)_"</td>",!
  . W "<td>"_$$ZPTN(STOT)_"</td>",!
  .W "</tr>",!
  .K EXONLY
  Q
  ;
  ;
RKZ(STAM) ;
 I $G(RKZ)'?1N.N Q $G(%ARG("RKZ"))
 Q RKZ
 ;
PRTSUMHZ(DT,HZ,WHAT) ;
 N (DT,JB,%ARG,%REM,RKZ,PRMONTH,HZ,WHAT,FLCSV)
 I '$G(%ARG("HZMH")) Q:$$^W4HZMH(HZ)
 Q:$$I^W4PIZUL(HZ)
 I $G(WHAT)="" S WHAT="DEP"
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZ,I))  D
 .S ST=$G(^(I))
 .S PAR=$P(ST,"\") Q:PAR=""  Q:$E(PAR)="-"!($E(PAR)=":")
 .S MH=$P(ST,"\",4)
 .S QN=$P(ST,"\",5)
 .S AH=0 N NXTCD S NXTCD=$G(@$$^W4ORD@(HZ,I+1))
 .I $E(NXTCD)="-",NXTCD["%" S AH=+$P(NXTCD,"-",2)
 .S SUM=(MH*QN)*(100-AH)*.01
 .S HNHP=(MH*QN)-SUM
 .X "S DEP=$$"_WHAT_"(PAR)"
 .D SETVRM(DT,DEP,QN,(MH*QN),HNHP,HZ,PAR,WHAT)
 .S TSF="" F  S TSF=$O(@$$^W4ORD@(HZ,I,TSF)) Q:TSF=""  D
 ..S STT=$G(^(TSF))
 ..
 ..I $D(^(TSF))<9 D  Q
 ...X "S DEP=$$"_WHAT_"(TSF)"
 ...S MHT=$P(STT,"\",2)
 ...S QNT=$P(STT,"\",3)
 ...S SUMT=QNT*MHT*(100-AH)*.01
 ...S HNHPT=(QNT*MHT)-SUMT
 ...D SETVRM(DT,DEP,QNT,(QNT*MHT),HNHPT,HZ,TSF,WHAT) ; SUMT
 ..
 ..F II=1:1 Q:'$D(@$$^W4ORD@(HZ,I,TSF,II))  D
 ...S STT2=$G(^(II))
 ...S PAR2=$P(STT2,"\") I PAR2="" S PAR2=$P(STT2,"\",4)
 ...Q:PAR2=""
 ...S MH2=$P(STT2,"\",7)
 ...S QN2=$P(STT2,"\",3)
 ...X "S DEP=$$"_WHAT_"(PAR2)"
 ...S SUMT2=QN2*MH2*(100-AH)*.01
 ...S HNHPT2=(QN2*MH2)-SUMT2
 ...D SETVRM(DT,DEP,QN2,(QN2*MH2),HNHPT2,HZ,PAR2,WHAT) ; SUMT2
 Q
 ;
 ;
PRTSUMDT(DT,WHAT) ;  
 Q:$D(PRMONTH)
 I $G(WHAT)="" S WHAT="DEP"
 ;
 N OK,DEP,HZ,HNHP,SUMQN,SUMHZ,HNH,DMS,TIP,DEPHZ
 S OK=0
 S DEP="" F  S DEP=$O(@$$^W4MAIN("VRM")@(DT,WHAT,DEP)) Q:DEP=""  I DEP?1N.N D
 .I $$DEPSUM(DEP,DT)!$$DEPSQN(DEP,DT) S OK=1
 I 'OK K @$$^W4MAIN("VRM")@(DT)
 ;
 S HZ="" F  S HZ=$O(@$$^W4MAIN("VRM")@(DT,"HZ",HZ)) Q:HZ=""  D
 .S HNHP=$G(@$$^W4MAIN("VRM")@(DT,"HZ",HZ,"HP"))
 .S SUMQN=$G(^("Q"))
 .S SUMHZ=$G(^("S")) Q:'SUMHZ
 .S HNH=$$HNH^W4HZMST(HZ)
 .S DMS=$$DMSH^W4HZMST(HZ)
 .S TIP=$$TIP^W4HZMST(HZ)
 .
 .S DEP="" F  S DEP=$O(@$$^W4MAIN("VRM")@(DT,"HZ",HZ,DEP)) Q:DEP=""  I DEP?1N.N D
 ..S DEPHZ=$G(^(DEP,"S")) Q:'$G(SUMHZ)
 ..S @$$^W4MAIN("VRM")@(DT,WHAT,DEP,"HNH")=$G(@$$^W4MAIN("VRM")@(DT,WHAT,DEP,"HNH"))+(HNH*DEPHZ/SUMHZ)
 ..S @$$^W4MAIN("VRM")@(DT,WHAT,DEP,"DMS")=$G(@$$^W4MAIN("VRM")@(DT,WHAT,DEP,"DMS"))+(DMS*DEPHZ/SUMHZ)
 ..S @$$^W4MAIN("VRM")@(DT,WHAT,DEP,"TIP")=$G(@$$^W4MAIN("VRM")@(DT,WHAT,DEP,"TIP"))+(TIP*DEPHZ/SUMHZ)
 ..
 ..S @$$^W4MAIN("VRM")@(WHAT,DEP,"HNH")=$G(@$$^W4MAIN("VRM")@(WHAT,DEP,"HNH"))+(HNH*DEPHZ/SUMHZ)
 ..S @$$^W4MAIN("VRM")@(WHAT,DEP,"DMS")=$G(@$$^W4MAIN("VRM")@(WHAT,DEP,"DMS"))+(DMS*DEPHZ/SUMHZ)
 ..S @$$^W4MAIN("VRM")@(WHAT,DEP,"TIP")=$G(@$$^W4MAIN("VRM")@(WHAT,DEP,"TIP"))+(TIP*DEPHZ/SUMHZ)
 Q
 ;
 ;
SETVRMM(WHAT) ;
 N DEP,MM,HZ,DEPHZ,HNH,DMS,TIP
 ;
 S DEP="" F  S DEP=$O(@$$^W4MAIN("VRM")@(DEP)) Q:DEP=""  D
 .S MM="" F  S MM=$O(@$$^W4MAIN("VRM")@(DEP,"HZ",MM)) Q:MM=""  D
 ..S HZ="" F  S HZ=$O(@$$^W4MAIN("VRM")@(DEP,"HZ",MM,HZ)) Q:HZ=""  D
 ...S DEPHZ=$G(^(HZ)) Q:'DEPHZ
 ...S HNH=$$HNH^W4HZMST(HZ)
 ...S DMS=$$DMSH^W4HZMST(HZ)
 ...S TIP=$$TIP^W4HZMST(HZ)
 ...S SUMHZ=$$TSHL^W4HZMST(HZ)+HNH-DMS
 ...Q:'SUMHZ
 ...
 ...S @$$^W4MAIN("VRM")@(DEP,WHAT,MM,"HNH")=$G(@$$^W4MAIN("VRM")@(DEP,WHAT,MM,"HNH"))+(HNH*DEPHZ/SUMHZ)
 ...S @$$^W4MAIN("VRM")@(DEP,WHAT,MM,"DMS")=$G(@$$^W4MAIN("VRM")@(DEP,WHAT,MM,"DMS"))+(DMS*DEPHZ/SUMHZ)
 ...S @$$^W4MAIN("VRM")@(DEP,WHAT,MM,"TIP")=$G(@$$^W4MAIN("VRM")@(DEP,WHAT,MM,"TIP"))+(TIP*DEPHZ/SUMHZ)
 Q
 ;
 ;
SETVRM(DT,DEP,QN,SUM,HNHP,HZ,PRT,WHAT) ;
 S:$G(DEP)="" DEP=0
 N DT1 S DT1=DT
 ;
 I $D(PRMONTH) D  Q
 .S DT1=$ZD(DT,"MM")
 .S @$$^W4MAIN("VRM")@(DEP,WHAT,DT1,"S")=$G(@$$^W4MAIN("VRM")@(DEP,WHAT,DT1,"S"))+SUM
 .S @$$^W4MAIN("VRM")@(DEP,WHAT,DT1,"HP")=$G(@$$^W4MAIN("VRM")@(DEP,WHAT,DT1,"HP"))+HNHP
 .S @$$^W4MAIN("VRM")@(DEP,"HZ",DT1,HZ)=$G(@$$^W4MAIN("VRM")@(DEP,"HZ",DT1,HZ))+SUM-HNHP
 ; 
 S @$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"Q")=$G(@$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"Q"))+QN
 S @$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"S")=$G(@$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"S"))+SUM
 S @$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"HP")=$G(@$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"HP"))+HNHP
 ;;S ^AA1("W4MAAZAN",DT1,DEP,PRT,HZ)=$G(^AA1("W4MAAZAN",DT1,DEP,PRT,HZ))+QN
 ;;S ^AA1("W4MAAZAN",DT1,DEP)=$G(^AA("W4MAAZAN",DT1,DEP))+QN
 ;
 N A S A=$G(@$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"PRT",PRT,HZ))
 S @$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"PRT",PRT,HZ)=$P(A,"\")+QN_"\"_($P(A,"\",2)+SUM-HNHP)
 N A1 S A1=$G(@$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"PRT",PRT))
 S @$$^W4MAIN("VRM")@(DT1,WHAT,DEP,"PRT",PRT)=$P(A1,"\")+QN_"\"_($P(A1,"\",2)+SUM-HNHP)
 ;
 S @$$^W4MAIN("VRM")@(WHAT,DEP,"Q")=$G(@$$^W4MAIN("VRM")@(WHAT,DEP,"Q"))+QN
 ;;S ^AA("W4MAAZAN",DEP,PRT,HZ)=$G(^AA("W4MAAZAN",DEP,PRT,HZ))+QN
 ;;S ^AA("W4MAAZAN",DEP)=$G(^AA("W4MAAZAN",DEP))+QN
 S @$$^W4MAIN("VRM")@(WHAT,DEP,"S")=$G(@$$^W4MAIN("VRM")@(WHAT,DEP,"S"))+SUM
 S @$$^W4MAIN("VRM")@(WHAT,DEP,"HP")=$G(@$$^W4MAIN("VRM")@(WHAT,DEP,"HP"))+HNHP
 ;
 S @$$^W4MAIN("VRM")@(DT1,"HZ",HZ,"Q")=$G(@$$^W4MAIN("VRM")@(DT1,"HZ",HZ,"Q"))+QN
 S @$$^W4MAIN("VRM")@(DT1,"HZ",HZ,"S")=$G(@$$^W4MAIN("VRM")@(DT1,"HZ",HZ,"S"))+SUM
 S @$$^W4MAIN("VRM")@(DT1,"HZ",HZ,"HP")=$G(@$$^W4MAIN("VRM")@(DT1,"HZ",HZ,"HP"))+HNHP
 S @$$^W4MAIN("VRM")@(DT1,"HZ",HZ,DEP,"Q")=$G(@$$^W4MAIN("VRM")@(DT1,"HZ",HZ,DEP,"Q"))+QN
 S @$$^W4MAIN("VRM")@(DT1,"HZ",HZ,DEP,"S")=$G(@$$^W4MAIN("VRM")@(DT1,"HZ",HZ,DEP,"S"))+SUM
 S @$$^W4MAIN("VRM")@(DT1,"HZ",HZ,DEP,"HP")=$G(@$$^W4MAIN("VRM")@(DT1,"HZ",HZ,DEP,"HP"))+HNHP
 ;
 Q
 ;
 ;
ZPTN(RKV) ; 
 Q $$ZPTN^%L1FRM(RKV)
 ;
FLCSV(COD) ;
 N FL,FLCSV,FMT S FMT=0
 S FL=$$FL^%W1FREPX(COD,FMT)
 S FLCSV=FL_"."_$$FMT^%W1PCEX(FMT)
 Q FLCSV
 ;
EXOP(FLCSV) ; --> FLCSV
 D OPEN^%W1FREPX(FLCSV)
 Q
 ;
EX(VL,RG) 
 I $G(EXONLY)=-1 Q
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 ;
 I '$D(FLCSV) D  Q:$G(FLCSV)=""
 .I $G(COD)="" Q
 .S FLCSV=$$FLCSV(COD)
 ;
 I $G(RG)="N" S VL=$J(VL,2,2)
 N DLM S DLM=","
 S VL=$$SPA^%L1FRM(VL)
 I VL?2N1"."2N1"."2N!(VL?2N1"."2N1"."4N) S VL=$TR(VL,".","/")
 ;
 I $G(RG)="H" S VL=$$^%W1D2U(VL)
 I VL?9N.N S VL="'"_VL_"'"
 I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N S VL="'"_VL_"'"
 ;
 U FLCSV W """"_VL_""""_DLM
 U 0 Q 
 ;
EXTR I '$D(FLCSV) D  Q:$G(FLCSV)=""
 .I $G(COD)="" Q
 .S FLCSV=$$FLCSV(COD)
 U FLCSV W ! U 0
 Q
 ;
NODEPMAM(DEP) 
 I $P($G(@$$^W4GL("DEP")@(DEP,1)),"\")=0 Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAAZJ
W4MAAZJ(DAT1,DAT2,RKZ,JB) ; [ 17.04.14 12:20 ] [ 05.02.13 16:19 ] [
 N (JB,%ARG,%REM,DAT1,DAT2,RKZ,JB)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S $ZT="G SVER^%L1X"
 D PUT^%W1PRM("W4MAAZAN",0)
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S %ARG("DAT1")=DAT1
 S %ARG("DAT2")=DAT2
 S %ARG("NOEXCEL")=1
 ;;I RKZ D GET^W4DHB
 D GET^W4DHB
 D PRTSUM^W4MAAZAN(DT1,DT2)
 D PUT^%W1PRM("W4MAAZAN",1)
 Q

W4MAIL
W4MAIL(MSGBODY,HD,TO,H) ; [ 10.08.26 17:47 ] [ 01.09.22 14:27 ] [ 02.06.21 10:07 ] 
 I $G(H)="H" S MSGBODY=$$H2U^%L1FRM(MSGBODY)
 N FROM,SMTP,USER,PSW
 D PRM
 ;
 Q $$MSG^W3SNDMSG(MSGBODY,HD,TO,FROM,SMTP,USER,PSW) ;
 ;
 ;
PRM ;
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 Q
 ;
CMD(PRM) ; 
 N BODY,HD,TO
 S BODY=$P(PRM,"=BD=",2,225)
 S BODY=$$CNWEB(BODY)
 S BODY="<DIV DIR=""LTR"">"_BODY_"</DIV>"
 S HD=$P($P(PRM,"=HD=",2),"=")
 S HD=$$CNWEB(HD)
 S TO=$P($P(PRM,"=TO=",2),"=")
 S TO=$$CNWEB(TO)
 ;
 N RES S RES=$$W4MAIL(BODY,HD,TO)
 Q RES
 ;
 ;
CNWEB(TX) ;
 S TX=$$CNWEB^%L1FRM(TX)
 S TX=$$RPL^%L1FRM(TX,"%0a","<P>")
 S TX=$$RPL^%L1FRM(TX,"%0A","<P>")
 Q TX
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILB
W4MAILB(METRH,ADTRH) ; [ 01.11.15 16:09 ] [ 28.10.15 16:50 ] [
 N (JB,%ARG,%REM,METRH,ADTRH)
 S %REPN="W4BITS"
 S GLPRM=$$^%W1GLPRM
 S @GLPRM@("REPN")=%REPN
 ;
 D ^W4DPBITS(%REPN)
 ;
 D PUT^%W1PRM("P1PCBACK","NOBACK")
 ;
 S @GLPRM@("VAL","METRH")=METRH
 S @GLPRM@("VAL","ADTRH")=ADTRH
 Q

W4MAILB0
W4MAILBT(HZM,PR,JB) ; [ 26.03.20 11:59 ] [ 25.03.20 15:25 ] [ 19.03.20 14:19 ] 
 N (JB,%ARG,%REM,HZM,PR)
 ;;S JB=65009
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 S MAILZ=""
 K ^MAILZ S ^MAILZ=1
 D ^%L1TS
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 N FL
 S FL=PATH_"BIT"_HZM
 S FL=FL_".html"
 C FL:(DELETE)
 ;
 O FL:(WRITE:NEWVERSION)
 U FL
 ;
 I $$BITSMS,$G(PR)="B" D BODYSMS(HZM) G CL
 ;
 W "<html><body><div align=""center"">",!
 W "<table dir=""RTL"" border=""0"">",!
 W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 W $$TBTR("<span style=""text-align:center"">"_$$TR(" 'qn dnpfd ")_" "_HZM_"</span>"),!
 I PR="B" W $$TBTR("<hr>"),!
 S MKBL=$$MKBL^W4HZMST(HZM)
 I PR="B",$D(@$$^W4ORD@(HZM,"BIT"))>9 D PCBIT(HZM)
 ;
 I PR="H",$$^W4CLOSE(HZM),$$SHNHP^W4HZMST(HZM)!$$SHNH^W4HZMST(HZM),'$D(@$$^W4ORD@(HZM,"MAILHNH")) D
 .D PCHNH(HZM)
 .S @$$^W4ORD@(HZM,"MAILHNH")=$ZD($H,"DD.MM.YY  24:60")
 ;
 W "</table>",!
 W "</div></body></html>",!
CL ;
 C FL
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 ;
 S KOT=$S(PR="B":"Cancellations-",PR="H":"Discounts-")
 S KOT=KOT_HZM_"-"_$$DATK^W4HZMST(HZM)
 ;
 I $$BITSMS S KOT=$$BITSMS^W4PRM ; -- > SMS
 ;
 S ^MAILZ=3
 D CMD(FL,KOT)
 Q
 ;
 ;
BITSMS(STAM)
 Q ($$BITSMS^W4PRM'?.P)
 ;
TBTR(TXT)
 Q "<tr><td colspan=""2"">"_TXT_"</td></tr>"
 ;
TBTR1(TXT)
 Q "<tr><td>"_$P(TXT,":")_"</td><td>"_$P(TXT,":",2)_"</td></tr>"
 ;
TR(TXT) ;
 Q $$H2U^%L1FRM(TXT)
 ;
TRS(TXT) ;
 N DLM S DLM=" : "
 I $$^%W1DIR="RTL" D
 .I TXT[DLM D
 ..S TXT=$P(TXT,DLM,2,20)_" : "_$P(TXT,DLM,1)
 .S TXT=$$INVH^%L1FRM(TXT)
 Q $TR(TXT,TS0,TS1)
 ;
 ;
CMD(FL,KOT) ;
 N MSD,MSG,LINK,SMTP,USER,FILE,FROM,TO
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 ;
 S TO=$G(@$$^W4PRM@("MAILBTTO"))
 I $L(TO) D
 .N TO1,J F J=1:1:$L(TO,",") D
 ..S TO1=$P(TO,",",J)
 ..;
 ..D MAILTO(FL,KOT,TO1,FROM,SMTP,USER,PSW)
 Q
 ;
MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N CMD
 I TO'["@",TO'[".",$L(TO)<6 Q
 S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 ZSY CMD
 I $D(MAILZ) D
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2))=CMD
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2),"ZSY")=$ZSY_"\"_$ZD($H,"24:60")
 Q
 ;
 ;
PCBIT(HZM) ;
 N DOCH,SH,MAIL
 N N,I,PRHD S N="",STW="",PRHD=1
 S DOCH="B",SH=0,MAIL="",SUMBIT=0,KAMBIT=0,BITHZ=0
 ;
 F I=1:1 S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .I $$AVAR(HZM,+N) Q
 .I $D(@$$^W4ORD@(HZM,"BIT",N,"MAIL")) Q
 .S WHODEL=$$WHODEL^W4HZMST(HZM,N)
 .I WHODEL="" S WHODEL=MKBL
 .S FIRSTLINE=1,SIK=1
 .D PCBHZ1^W4DHNH(HZM,PRHD,N,WHODEL) S PRHD=0
 .S @$$^W4ORD@(HZM,"BIT",N,"MAIL")=$ZD($H,"DD.MM.YY  24:60")
 ;
 I 'PRHD D
 .S STW=STW_"</table>" D S1W
 .S STW=$$H2U(" : dpnfda milehia")_" "_$$BOLDRED_$J(-BITHZ,7,2)_$$EBOLD D S1W
 Q
 ;
 ;
PCHNH(HZM) ;
 S SH=0
 S MAIL=""
 S DOCH="H"
 S VHNHP=0
 S SIK=0
 S SUMHNH=0
 S KAMHNH=0
 D PCBHZ^W4DHNH(HZM)
 Q
 ;
S1W ;
 W "<tr>"
  W "<td "
   I $G(COLSPAN) W " colspan="""_COLSPAN_""""
  W ">"
 W STW_"</td>"
 W "</tr>",!
 Q
 ;
AVAR(HZM,N) ;
 Q $$AVAR^W4HZMST(HZM,N)
 ;
BOLDRED(STAM) ;
 Q "<span style=""text-align:right;font-weight:bold;color:red"" dir=""LTR"">"
EBOLD(STAM) ;
 Q "</span>"
 ;
H2U(RKV) ;
 Q $$H2U^%L1FRM(RKV)
 ;
BODYSMS(HZM) ; 
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  I N D
 .I $$AVAR(HZM,+N) Q
 .I $D(@$$^W4ORD@(HZM,"BIT",N,"MAIL")) Q
 .S OK=1
 Q:'OK
 D ^%L1TS
 N MKBL S MKBL=$$MKBL^W4HZMST(HZM)
 S MSD=$$GETP^%W1PRM("MSD") I 'MSD S MSD=1
 ;
 W $$TRS($$NAME^W3MSDG),!
 W $$TRS("dpnfd : "_HZM),!
 W " ",!
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  I N D
 .I $$AVAR(HZM,+N) Q
 .I $D(@$$^W4ORD@(HZM,"BIT",N,"MAIL")) Q
 .N WHODEL S WHODEL=$$WHODEL^W4HZMST(HZM,N)
 .I WHODEL="" S WHODEL=MKBL
 .N SB S SB=$P($G(@$$^W4ORD@(HZM,N)),"\",7) Q:'SB
 .W $$TRS("lehia mekq : "_$J(SB,2,2)),!
 .W $$TRS("caer : "_$$^W4NAME(WHODEL)),!
 .W $$TRS("daiq : "_$$SIBA1^W4HZMST(HZM,N)),!
 .I $O(@$$^W4ORD@(HZM,"BIT",N)) D
 ..W " ",!
 .S @$$^W4ORD@(HZM,"BIT",N,"MAIL")=$ZD($H,"DD.MM.YY  24:60")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILBT
W4MAILBT(HZM,PR,JB) ; [ 08.11.21 11:35 ] [ 01.08.21 11:09 ] [ 31.03.20 18:03 ] 
 N (JB,%ARG,%REM,HZM,PR)
 ;;S JB=65009
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 S MAILZ=""
 K ^MAILZ S ^MAILZ=1
 D ^%L1TS
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 N FL
 S FL=PATH_"BIT"_HZM
 S FL=FL_".html"
 C FL:(DELETE)
 ;
 O FL:(WRITE:NEWVERSION)
 U FL
 ;
 I $$BITSMS,$G(PR)="B" D BODYSMS(HZM) G CL
 I $$BITSMS Q
 ;
 W "<html><body><div align=""center"">",!
 W "<table dir=""RTL"" border=""0"">",!
 W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 W $$TBTR("<span style=""text-align:center"">"_$$TR(" 'qn dnpfd ")_" "_HZM_"</span>"),!
 I PR="B" W $$TBTR("<hr>"),!
 S MKBL=$$MKBL^W4HZMST(HZM)
 I PR="B",$D(@$$^W4ORD@(HZM,"BIT"))>9 D PCBIT(HZM)
 ;
 I PR="H",$$^W4CLOSE(HZM),$$SHNHP^W4HZMST(HZM)!$$SHNH^W4HZMST(HZM),'$D(@$$^W4ORD@(HZM,"MAILHNH")) D
 .D PCHNH(HZM)
 .S @$$^W4ORD@(HZM,"MAILHNH")=$ZD($H,"DD.MM.YY  24:60")
 ;
 W "</table>",!
 W "</div></body></html>",!
CL ;
 C FL
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 ;
 S KOT=$S(PR="B":"Cancellations-",PR="H":"Discounts-")
 S KOT=KOT_HZM_"-"_$$DATK^W4HZMST(HZM)
 ;
 I $$BITSMS S KOT=$$BITSMS^W4PRM ; -- > SMS
 ;
 S ^MAILZ=3
 D CMD(FL,KOT)
 Q
 ;
 ;
BITSMS(STAM)
 Q ($$BITSMS^W4PRM'?.P)
 ;
TBTR(TXT)
 Q "<tr><td colspan=""2"">"_TXT_"</td></tr>"
 ;
TBTR1(TXT)
 Q "<tr><td>"_$P(TXT,":")_"</td><td>"_$P(TXT,":",2)_"</td></tr>"
 ;
TR(TXT) ;
 Q $$H2U^%L1FRM(TXT)
 ;
TRS(TXT) ;
 N DLM S DLM=" : "
 I $$^%W1DIR="RTL" D
 .I TXT[DLM D
 ..S TXT=$P(TXT,DLM,2,20)_" : "_$P(TXT,DLM,1)
 .S TXT=$$INVH^%L1FRM(TXT)
 Q $TR(TXT,TS0,TS1)
 ;
 ;
CMD(FL,KOT) ;
 N MSD,MSG,LINK,SMTP,USER,FILE,FROM,TO
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 ;
 S TO=$G(@$$^W4PRM@("MAILBTTO"))
 I $L(TO) D
 .N TO1,J F J=1:1:$L(TO,",") D
 ..S TO1=$P(TO,",",J)
 ..;
 ..D MAILTO(FL,KOT,TO1,FROM,SMTP,USER,PSW)
 Q
 ;
MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N CMD
 I TO'["@",TO'[".",$L(TO)<6 Q
 S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 ZSY CMD
 I $D(MAILZ) D
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2))=CMD
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2),"ZSY")=$ZSY_"\"_$ZD($H,"24:60")
 Q
 ;
 ;
PCBIT(HZM) ;
 N DOCH,SH,MAIL
 N N,I,PRHD S N="",STW="",PRHD=1
 S DOCH="B",SH=0,MAIL="",SUMBIT=0,KAMBIT=0,BITHZ=0
 ;
 F I=1:1 S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .I $$AVAR(HZM,+N) Q
 .I $D(@$$^W4ORD@(HZM,"BIT",N,"MAIL")) Q
 .S WHODEL=$$WHODEL^W4HZMST(HZM,N)
 .I WHODEL="" S WHODEL=MKBL
 .S FIRSTLINE=1,SIK=1
 .D PCBHZ1^W4DHNH(HZM,PRHD,N,WHODEL) S PRHD=0
 .S @$$^W4ORD@(HZM,"BIT",N,"MAIL")=$ZD($H,"DD.MM.YY  24:60")
 ;
 I 'PRHD D
 .S STW=STW_"</table>" D S1W
 .S STW=$$H2U(" : dpnfda milehia")_" "_$$BOLDRED_$J(-BITHZ,7,2)_$$EBOLD D S1W
 Q
 ;
 ;
PCHNH(HZM) ;
 S SH=0
 S MAIL=""
 S DOCH="H"
 S VHNHP=0
 S SIK=0
 S SUMHNH=0
 S KAMHNH=0
 S KAMHNHP=0
 S QNHNP=0
 S SUMHNHP=0
 S SUMHNP=0
 D PCBHZ^W4DHNH(HZM)
 Q
 ;
S1W ;
 W "<tr>"
  W "<td "
   I $G(COLSPAN) W " colspan="""_COLSPAN_""""
  W ">"
 W STW_"</td>"
 W "</tr>",!
 Q
 ;
AVAR(HZM,N) ;
 Q $$AVAR^W4HZMST(HZM,N)
 ;
BOLDRED(STAM) ;
 Q "<span style=""text-align:right;font-weight:bold;color:red"" dir=""LTR"">"
EBOLD(STAM) ;
 Q "</span>"
 ;
H2U(RKV) ;
 Q $$H2U^%L1FRM(RKV)
 ;
BODYSMS(HZM) ; 
 D ^%L1TS
 N MKBL S MKBL=$$MKBL^W4HZMST(HZM)
 S MSD=$$GETP^%W1PRM("MSD") I 'MSD S MSD=1
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  I N D
 .I $$AVAR(HZM,+N) Q
 .I $D(@$$^W4ORD@(HZM,"BIT",N,"MAIL")) Q
 .N WHODEL S WHODEL=$$WHODEL^W4HZMST(HZM,N)
 .I WHODEL="" S WHODEL=MKBL
 .N SB S SB=$P($G(@$$^W4ORD@(HZM,N)),"\",7) Q:'SB
 .S M(+WHODEL)=$G(M(+WHODEL))+SB
 .S @$$^W4ORD@(HZM,"BIT",N,"MAIL")=$ZD($H,"DD.MM.YY  24:60")
 ;
 W $$TRS($$NAME^W3MSDG),!
 W $$TRS("dpnfd : "_HZM),!
 W " ",!
 N N,WHODEL S N="" F  S N=$O(M(N)) Q:N=""  I N D
 .S WHODEL=$$DOP^W4NAME(N)
 .N SB S SB=M(N)
 .W $$TRS("lehia mekq : "_$J(SB,2,2)),!
 .W $$TRS("caer : "_$$^W4NAME(WHODEL)),!
 .I $O(M(N)) D
 ..W " ",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILH
W4MAILH(METRH,ADTRH) ; [ 12.11.15 13:29 ] [ 01.11.15 16:09 ] [ 28.10.15 16:50 ] [
 N (JB,%ARG,%REM,METRH,ADTRH)
 S GLPRM=$$^%W1GLPRM
 S %REPN="W4DHNA"
 S @GLPRM@("REPN")=%REPN
 ;
 D ^W4DHNHA
 ;
 D PUT^%W1PRM("P1PCBACK","NOBACK")
 ;
 S @GLPRM@("VAL","METRH")=METRH
 S @GLPRM@("VAL","ADTRH")=ADTRH
 S @GLPRM@("VAL","MEHZM")=""
 S @GLPRM@("VAL","ADHZM")=99999999
 D SETPRMQ^%W1PC("mikix`ze zeaiq itl")
 Q

W4MAILLS
W4MAILLS ; [ 01.06.23 12:46 ] [ 30.05.23 05:02 ] [ 29.05.23 17:07 ] 
 N (JB,%ARG,%REM)
 W "<style>",!
 W "td { font-weight:bold }",! 
 W "</style>",!
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<p>&nbsp;</p>",!  
  W "<table>",! 
   W "<tr>"
    W "<td colspan=""3"">"
     W $$^%W1DICT("EMAIL")_$$NBSP^%L1FRM(3)
     W "<input id=""mailtx"" size=""55"">"
    W "</td>" 
   W "</tr>",!
   S GL=$G(%ARG("GL")) I GL="" G ETB
   S GL=$$^W4GL(GL) 
   W "<tr>"
    W "<td colspan=""2"" width=""93%"" "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("CHOICEALL")_"</td>",! 
    W "<td width=""7%"">"
     W "<input type=""checkbox"" "
     W " id=""chkall"" onClick=""ChkAll()"" />"
    W "</td> "
   W "</tr>" 
   ;
   S N="" F  S N=$O(@GL@(N)) Q:N=""  D 
   .S A=$G(^(N))
   .W "<tr>"
   . W "<td wifth=""30%"">"_$$H2U^%L1FRM($$^W4NAME(N))_"</td>"
   . S EMAIL=$P(A,"\",2)
   . W "<td width=""63%"" id=""mail"_N_""">"_EMAIL_"</td>"
   . W "<td width=""7%"">"
   .  W "<input type=""checkbox"" "
   .  W " name=""chk"" id=""chk"_N_""" />"
   . W "</td> "
  .W "</tr>",!
ETB W "</table>",!
  W "<p>&nbsp;</p>",!
  D ^W4SBMBCK("Send()","SEND")
  W "</div>",! 
  Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILMS
W4MAILMS(JB,DT) ; [ 11.05.20 06:25 ] [ 02.05.20 08:07 ] [ 01.05.20 18:25 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D OPENFL ; --> FL
 D BODY(JB,DT)
 D CLOSEFL(FL)
 ;
 Q
 ;
 ;
PATH ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 Q
 ;
OPENFL ; --> FL
 N PATH D PATH
 S FL=PATH_"MS"_$ZD(DT,"YYMMDD")_".html"
 ;
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION)
 U FL
 Q
 ;
BODY(JB,DT) ;
 S (DT1,DT2)=DT
 S %REPN="W4DMSD"
 S GLPRM=$$^%W1GLPRM
 K @GLPRM
 S QUERY="mikix`z itl g""ec"
 S @GLPRM@("QUERY")=QUERY
 D SETPRMQ^%W1PC(QUERY)
 D ^%W1PCIN
 ;
 S @GLPRM@("CT",1)=0
 S @GLPRM@("CT",2)=0
 S @GLPRM@("MIUN",1)=1
 S @GLPRM@("MIUN",2)=2
 S @GLPRM@("FLDMIN")="HZM*SHAA"
 S @GLPRM@("REPN")=%REPN
 ;
 S @GLPRM@("VAL","CT1")=0
 S @GLPRM@("VAL","CT2")=0
 S @GLPRM@("VAL","METRHT")=DT1
 S @GLPRM@("VAL","ADTRHT")=DT2
 F J=1:1:11 D
 .S @GLPRM@("VAL","MEx"_J)=-99999999
 .S @GLPRM@("VAL","ADx"_J)=99999999
 ;
 D ^%W1PCP
 S %W1PC1("FL")=FL
 U FL
 W "<html><body><div align=""center"" dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(11)_""">",!
 D ^%W1PC1
 W "</div></body></html>",!
 Q
 ;
CLOSEFL(FL) ;
 N PATH C FL
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S KOT="Restaurants-Day-Report-"_$ZD(DT,"DD.MM.YY")
 D CMD^W4MAILZ(FL,KOT)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILPR
W4MAILPR ; [ 11.12.25 12:31 ] [ 28.06.22 11:22 ] [ 25.02.20 05:10 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 S LKH=$G(%ARG("LKH"))
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 D FRM(MEDT,ADDT,LKH)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
  D DIVBUT
  D KOT
  D VW
  D DIVBUT
 W "</div>",!
 ;
 Q
 ;
 ;
ASK ;
 W "<div id=""divask"" align=""center"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td width=""25%"">"
    W "<table dir="""_$$^%W1DIR_""" width=""100%"">",!
     D ASKLKH
    W "</table>",!
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("MEDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("ADDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
ASKLKH ;
  W "<tr>"
     W "<td> "
      W $$^%W1DICT("CUSTCODE")
     W "</td>",!
     W "  <td>"
      S FIND="Find('custcd','custcd','LKH','30%','120px','40%','70%','0')"
      W "<input type=""text"" tabindex=""1"" id=""custcd""  maxlength=""14"" size=""10"" onClick=""this.select()"" onChange="""_FIND_""">",!
      W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick="""_FIND_""" >",!
     W "  </td>",!
  W "</tr>",!
 Q
  ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FRM(MEDT,ADDT,LKH) ;
 ;;S @$$^W4GL("W4EMPROT")@($$^W4DZ,NOM_"VD"_VD,EMAIL)=$H_";"_$ZSY_";"_PRM
 N (JB,%ARG,MEDT,ADDT,LKH)
 D VRM K @VRM
 S GLPROT=$$^W4GL("W4EMPROT")
 F DT=MEDT:1:ADDT D
 .S NOM="" F  S NOM=$O(@GLPROT@(DT,NOM)) Q:NOM=""  D
 ..I $G(%ARG("NOM")),+$$SPA^%L1FRM(NOM)'=+$$SPA^%L1FRM(%ARG("NOM")) Q
 ..S EMAIL="" F  S EMAIL=$O(@GLPROT@(DT,NOM,EMAIL)) Q:EMAIL=""  D
 ...S A=$G(^(EMAIL))
 ...S FILE=$P(A,"<>",2),A=$P(A,"<>")
 ...S IND=$P(A,";")
 ...S RES=$P(A,";",2)
 ...S IND=$P(IND,",")_$TR($J($P(IND,",",2),5)," ",0)
 ...S VD=$P($P(A,";",6),"^")
 ...S NOM1=NOM
 ...I VD="HMK",$G(@$$^W4ORD@(+NOM,"ETHB")) S NOM1=$G(@$$^W4ORD@(+NOM,"ETHB"))
 ...S LK=$$LK(VD,NOM1)
 ...S LK1=$P(LK,";",2)
 ...S LK=$P(LK,";")
 ...I $G(LKH),$TR(LK,"-","")'=$TR(LKH,"-","") Q
 ...S @VRM@(IND)=LK_";"_LK1_";"_VD_";"_+NOM1_";"_EMAIL_";"_FILE_";"_RES
 Q
 ;
 ;
LK(VD,NOM) ;
 N LK,LK1
 S (LK,LK1)=""
 S NOM=+NOM
 I VD="H"!(VD="HB")!(VD="HY") D
 .S LK=$G(@$$^W4GL("KLIN")@("H",NOM))
 .S LK=$$^W4CLRLK(LK)
 .S LK1=$$LKH^W4L(LK)
 ;
 I VD="HZ"!(VD="HZMH"),$D(@$$^W4ORD@(NOM)) D
 .S LK=$$LKHN^W4HZMST(NOM) Q:LK=""
 .S LK1=$$LKH^W4L(LK)
 ;
 I VD="HMK" I $D(@$$^W4GL("P1HB")@(NOM))#2 D
 .S HZ=$P($G(@$$^W4GL("P1HB")@(NOM)),"\") Q:'HZ
 .S LK=$$LKHN^W4HZMST(HZ)
 .S LK1=$$LKH^W4L(LK)
 ;
 I VD="CB"!(VD="TZ") D
 .S LK=$G(@$$^W4GL("KLIN")@(VD,NOM)) Q:LK=""
 .S LK=$$^W4CLRLK(LK)
 .S LK1=$$LKH^W4L(LK)
 ;
 Q LK_";"_LK1
 ;
 ;
VD1(VD) ;
 N VD1 S VD1=""
 I VD="H"!(VD="HB")!(VD="HY") S VD1="qn zipeayg"
 I VD="TZ"!(VD="HBZ") S VD1="iekif zipeayg"
 I VD="HMK" S VD1="dlaw/qn zipeayg"
 I VD="HZ" S VD1="dpnfd"
 I VD="HZMH" S VD1="xign zrvd"
 I VD="CB" S VD1="dlaw"
 Q VD1
 ;
 ;
KOT ;
 W "<br>",!
 W "<table width="""_$$WD_""" >",!
  W "<tr>"
   W "<td width=""25%"" "_$$^%W1ALIGN_">"
    W $$^%W1DICT("DOCNUMBER")_"&nbsp;"
    W "<input type=""text"" id=""numdoc"" onClick=""this.select()"" size=""8"" value="""_$G(%ARG("NOM"))_""" />"
    W "&nbsp;"
    D ^W4BUTTON("find","FIND","ShowProt()")
   W "</td>",!
   W "<td style=""font-size:"_$$^W3FSZ(14)_""" >"
    W $$^%W1DICT("MAILSENDINGPROTOCOL",MEDAT_"<>"_ADDAT)
   W "</td>",!
   W "<td width=""15%"">"
    W "&nbsp;"
   W "</td>",!
  W "</tr>",!
  W "</table>",!
 W "<br>",!
 Q
 ;
VW ;
 D VRM
 W "<table width=""96%"" "
 W ">",!
 W " <tr>" 
  W "<th>"_$$^%W1DICT("MAILTIME")_"</th>",! 
  W "<th>"_$$^%W1DICT("CUSTOMNUMBER")_"</th>",! 
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>",! 
  W "<th>"_$$^%W1DICT("KINDOFDOCUMENT")_"</th>",! 
  W "<th>"_$$^%W1DICT("DOCNUMBER")_"</th>",! 
  W "<th>"_$$^%W1DICT("EMAIL")_"</th>",!
  W "<th>"_$$^%W1DICT("FILE")_"</th>",! 
  W "<th>"_$$^%W1DICT("RESULT")_"</th>",! 
 W " </tr>" 
  ;
  S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
  .S A=$G(^(N))
  .S LK=$P(A,";")
  .S LK1=$$H2U^%L1FRM($P(A,";",2))
  .S VD=$P(A,";",3)
  .S VD1=$$H2U^%L1FRM($$VD1(VD))
  .S NOM=+$P(A,";",4)
  .S EMAIL=$P(A,";",5)
  .S FILE=$P(A,";",6)
  .S RES=$P(A,";",7)
  . 
  .W "<tr id=""tr"_N_""" "
  .W ">"
  . W "<td "
  .   W " id=""td"_N_""" "
  . W ">"
  .  S TM=$E(N,1,5)_","_+$E(N,6,10)
  .  W $ZD(TM,"DD.MM.YY  24:60")
  . W "</td>",!
  .
  . W "<td>" 
  .  W LK
  . W "</td>" 
  .
  . W "<td>" 
  .  W LK1
  . W "</td>" 
  .
  . W "<td>" 
  .  W VD1
  . W "</td>" 
  .
  . W "<td " 
  .  W " style=""cursor:pointer"" "
  .  W " onClick=""ShowDoc('"_N_"');"_$$VWDOC(VD,NOM,LK)_""" "
  . W ">"
  .  W NOM
  . W "</td>" 
  .
  . W "<td>" 
  .  W EMAIL
  . W "</td>" 
  .
  . N ADR S ADR="./"_$$GETP^%W1PRM("MSD")_"/"_FILE
  . W "<td " 
  . I $L(FILE) D
  ..  W " style=""cursor:pointer"" "
  ..  W " onClick=""ShowFile('"_ADR_"','"_N_"')"" "
  . W ">"
  .   I $L(FILE) W $$^%W1DICT("SHOW")
  .   I '$L(FILE) W "&nbsp;"
  . W "</td>" 
  .
  . W "<td>" 
  .  W $$H2U^%L1FRM($S(RES:RES_" d`iby",1:"dglvda xcey"))
  . W "</td>" 
  .W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
VWDOC(VD,NOM,LKH)
 N LK S LK=LKH
 I VD="H"!(VD="HB")!(VD="HY") D
 .S LK=$G(@$$^W4GL("KLIN")@("H",NOM))
 .I LK["+" S VD="HB"
 .E  S VD="HY"
 ;
 I VD="TZ"!(VD="HBZ") D
 .S LK=$G(@$$^W4GL("KLIN")@("TZ",NOM))
 .I LK["+" S VD="HBZ"
 .E  S VD="TZ"
 ;
 I VD="HZ"!(VD="HZMH"),$D(@$$^W4ORD@(NOM)) Q "ShowOrd('"_NOM_"')"
 I VD="HMK",$D(@$$^W4GL("P1HB")@(NOM))#2 Q "ShowOrd('"_+$P($G(@$$^W4GL("P1HB")@(NOM)),"\")_"')"
 ;;I VD="HMK",$$^W4ELPOS Q "ShowOrd('"_NOM_"')"
 I VD="HB" Q "ShowInvoice('"_NOM_"','"_LKH_"','ifr')"
 I VD="HY" Q "ShowArmInvoice('"_NOM_"','"_LKH_"','ifr','0','1')"
 I VD="TZ" Q "ShowArmInvoice('"_NOM_"','"_LKH_"','ifr','1','1')"
 I VD="HBZ" Q "ShowInvoice('"_NOM_"TZ','"_LKH_"','ifr')"
 I VD="CB" Q "ShowReceipt('"_NOM_"','"_LKH_"','ifr')"
 Q ""
 ;
WDTBL(STAM) ; 
 I $$1024^W4WDSCR Q 100 
 Q 84 
 ;
WD() ; 
 I $$^W4TABLET=2 Q "98%"
 I $$1024^W4WDSCR Q "90%"
 Q "80%" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILTO
W4MAILTO(EMAIL) ; [ 03.01.14 12:58 ] [
 Q "<a href=""mailto:escape("_EMAIL_")"" >"

W4MAILZ
W4MAILZ(JB,DT) ; [ 06.03.25 13:48 ] [ 15.07.24 18:02 ] [ 11.07.24 12:28 ] 
 I $G(@$$^W4PRM@("MAILZ","2")) D ^W4MAILZ2(JB,DT) Q
 I $G(@$$^W4PRM@("MAILZ","3")) D ^W4MAILZ3(JB,DT) Q
 I $$SF^W4PRM D ^W4MAILZS(JB,DT) Q
 ;
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D OPENFL ; --> FL
 D BODY(JB,DT)
 D CLOSEFL(FL)
 Q
 ;
 ;
BODY(JB,DT)
 I $G(@$$^W4PRM@("MAILZ","2")) D BODY^W4MAILZ2(JB,DT) Q
 I $G(@$$^W4PRM@("MAILZ","3")) D BODY^W4MAILZ3(JB,DT) Q
 ;
 S MAILZ=""
 K ^MAILZ S ^MAILZ=1
 D ^%L1TS
 N SMSL,SMSD
 ;
 S (SMSL,SMSD,SSOAD)=0
 ;
 N N S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .S NMB=$P($G(@$$^W4ORD@(N)),"\") Q:NMB=""
 .N TS S TS=$P(^(N),"\",11)
 .N SIGN S SIGN=$S(TS<0:-1,TS>0:1,1:0)
 .I $L(NMB)<4 S SMSD=SMSD+SIGN Q
 .S SMSL=SMSL+SIGN
 ;
 S DAT=$$DAT(DT)
 ;
 S NOM=$O(@$$^W4GL("Z1")@(DAT,99999),-1) Q:'NOM
 ;
 W "<html><body><div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"">",!
 W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 I NOM W $$TBTR("<span style=""text-align:center"">"_$$TR(" ixeciq 'qn ")_" "_NOM_"</span>"),!
 W $$TBTR("<span style=""font-size:14pt"">"_$$TR($ZD(DT,"DD.MM.YY")_" jix`zl itqk g""ec")_"</span>"),!
 W $$TBTR("<hr>"),!
 S Z1=$$^W4GL("Z1")
 ;
 S MZM=$$MZM(DT)
 S SAH=$$SAH(DT)
 S TIP=$$TIP(DT)
 S DMSH=$$DMSH(DT)
 ;
 D SCOMP^W4TOT(DT,DT)
 ;
 W $$PC("onefn",MZM),!
 ;
 N MZMN S MZMN=MZM
 I '$$SUPER^W3PRM,$$^W4TIPMIN(DT) D
 .W $$PC($$TIPPS,TIP),!
 .S MZMN=MZM-TIP
 .W $$PC("ehp onefn",MZMN),!
 ;
 W $$PC("wiy",$$CHK(DT)),!
 W $$PC("zi`wpa dxard",$$HVBN(DT)),!
 W $$PC("dtew `""k k""dq",$$SCA(DT)),!
 ;
 W $$PC("ehp oeict",$$NETTO(DT)),!
 I $$CREDIT W $$PCASR(DT),!
 W $$PC("zexikn",SAH),!
 ;
 N MZMD S MZMD=$$MZMD(DT)
 N MZMA S MZMA=MZMN+MZMD
 ;
 I $$CREDIT D
 .W $$PC("zelaw onefn",MZMD)
 .W $$PC("zelaw llek onefn",MZMA),!
 .W $$PC("zelaw i`xy` iqihxk",$$CACB(DT))
 .W $$PC("zelaw llek `""k k""dq",$$SCR(DT)),!
 ;
 S SSOAD=+$$SSOAD(DT)
 ;
 I '$$MSL^W4PRM D
 .W $$PC("zegewl 'qn",SSOAD),!
 .Q:'SSOAD
 .W $$PC("gewll rvenn",SAH/SSOAD),!
 .I '$$TIPPD(DT) Q
 .W $$PC($$TIPPS_" `ll creql rvenn",SAH-TIP/SSOAD),!
 ;
 I $$MSL^W4PRM D
 .I $G(SDMS) W $$PC("gelyn inc k""dq",SDMS),!
 .S SAHMSD=$$SAHMSD(DT)
 .S TIPMSD=$$TIPMSD(DT)
 .I $$^W4TIPMIN(DT) W $$PCTIPMSD(TIPMSD),!
 .W $$PC("dcrqn ehp oeict",$$NETTOMSD(DT)),!
 .W $$PCASRMSD(DT),!
 .W $$PCSAHMSD(SAHMSD),!
 .
 .I $$TIPPD(DT) D
 ..W $$PCTIPMSD(TIPMSD),!
 ..W $$NETTOMSDNOTIP(DT),!
 ..W $$SAHMSDNOTIP(DT),!
 .W $$PC("zegewl 'qn",SSOAD),!
 .
 .I SSOAD D
 ..W $$PC("lwegl rvenn",SAHMSD/SSOAD),!
 ..I '$$TIPPD(DT) Q
 ..W $$PC($$TIPPS_" `ll gewll rvenn",SAHMSD-TIPMSD/SSOAD),!
 .
 .S SAHMSL=$$SAHMSL(DT)
 .S TIPMSL=$$TIPMSL(DT)
 .
 .I '$$SUPER^W3PRM,$$^W4TIPMIN(DT) W $$PCTIPMSL(TIPMSL),!
 .
 .W $$PCNETTOMSL($$NETTOMSL(DT)),!
 .W $$ASRMSL(DT),!
 .W $$PCSAHMSL(SAHMSL),!
 .
 .I '$$SUPER^W3PRM,$$TIPPD(DT) D
 ..W $$PCTIPMSL(TIPMSL),!
 ..W $$SAHMSLNOTIP(DT),!
 ..W $$NETTOMSLNOTIP(DT),!
 .
 .W $$PC("migelyn 'qn",SMSL,7,0),!
 .
 .I SMSL D
 ..W $$PC("gelynl rvenn",SAHMSL/SMSL),!
 ..I '$$TIPPD(DT) Q
 ..W $$PC($$TIPPS_" `ll gewll  rvenn",SAHMSL-TIPMSL/SMSL),!
 ;
 I '$$SUPER^W3PRM D
 .W $$TBTR1("")
 .I STENB W $$PC("qia oz",STENB),!
 .W $$PC("qeaiq",SCIB),!
 .I SCOUP W $$PC("oetpetew",SCOUP),!
 .;
 .I $G(SATAR) D
 ..W $$TBTR1("")
 ..W $$PC("xz`n itqk k""dq",SATAR),!
 ..W $$PC("xz`n zepnfd k""dq",SATARQ),!
 .I SCAOUT D 
 ..W $$PC("xz`n `""k k""dq",SCAOUT),!
 .W $$TBTR1("")
 .
 .I SPAIDIT D
 ..W $$PC("hi`ciit `""k k""dq",SPAIDCA),!
 ..W $$PC("hi`ciit k""dq",SPAIDIT),!
 .
 .I SWOLT D
 ..W $$PC("eelh `""k k""dq",SWOLTCA),!
 ..W $$PC("eelh k""dq",SWOLT),!
 .
 .W $$TBTR1("")
 ;
 S BIT=$$BIT(DT)
 W $$PC("milehia",BIT),!
 W $$TBTR1("")
 ;
 S HNH=$$HNH(DT)
 W $$PC("mildpn zegpd",HNH),!
 I '$$HUTIM^W4PRM D 
 .S HNHP=$$HNHP(DT)
 .W $$PC("mihixtl zegpd",HNHP),!
 .S HNHL=$$HNHL(DT)
 .W $$PC("zegewl zegpd",HNHL),!
 ;
 S HNHCIB=$$HNHCIB(DT)
 ;
 I HNHCIB D
 .W $$PC("qeaiq zegpd",HNHCIB),!
 ;
 S HNHT=$$HNHT(DT)
 I HNHT D
 .W $$PC("miyelzl zegpd",HNHCIB),!
 ;
 S SUMP=$J(SAH+$G(HNH)+$G(HNHCIB)+$G(HNHT)+$G(HNHL)-$G(DMSH)-$S($$TIPPD(DT):$G(TIP),1:0),2,2)
 S SUMB=$J(SUMP+$G(BIT)+$G(DMSH),2,2)
 I '$$TIPPD(DT) S SUMB=SUMB+$G(TIP)
 W $$PC("mihixt zexikn k""dq",SUMP),!
 I '$$HUTIM^W4PRM W $$PC("ehexa k""dq",SUMB),!
 ;
 ;
 W "</table>",!
 ;
 I $G(@$$^W4PRM@("ZMAILNLY")) G END
 ;
 I $G(@$$^W4PRM@("ZXBIT")) D ^W4MAILZB(DT),^W4MAILZH(DT)
 ;
 I $G(@$$^W4PRM@("ZDTLM")) D ^W4MAILZC(DT)
 ;
 I $G(@$$^W4PRM@("DOCHP")) D
 .K @$$^W4MAIN("TMPS111")
 .D
 ..I $G(@$$^W4PRM@("DOCHP"))=2 D  Q
 ...N DOCH S DOCH="DEP"
 ...N P1TOT S P1TOT=$ZD(DT,"DD.MM.YY")_" jix`zl"
 ...S DISP=1,NOBACKBUT=""
 ...D PARZ^W4TELREP(DT,DT)
 ..
 ..D DOCHP(DT)
 .D VIEW^W4TELREP
 .K @$$^W4MAIN("TMPS111")
 ;
 S NOBACKBUT=""
 D ^W4DLK(DT,DT,1)
 ;
 I $G(@$$^W4PRM@("ZMKR")) D ZMKR 
 ;
 I $G(@$$^W4PRM@("NOLINKZ")) G END
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP^W4MAILZB_"w4csrrep1.jsp?JB=1&MEDATE="_DAT_"&ADDATE="_DAT_"&CODREP=MSH&FIRST=1"
 W $$H2U^%L1FRM("migily g""ecl wpil"),!
 W REF,!
 ;
 W !!
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP^W4MAILZB_"w4csrrep1.jsp?JB=1&MEDATE="_DAT_"&ADDATE="_DAT_"&CODREP=DCLK&FIRST=1"
 W $$H2U^%L1FRM("micaer zery g""ecl wpil"),!
 W REF,!
END ;
 W "</div></body></html>",!
 Q
 ;
 ;
TIP(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N TIP S TIP=$G(@Z1@(DAT,NOM,"T",1))
 Q TIP
 ;
DMSH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N DMSH S DMSH=$G(@Z1@(DAT,NOM,"DMSH",1))
 Q DMSH
 ;
PCTIP(TIP)
 Q $$TBTR1($$TR($$TIPPS)_" : "_$J(TIP,10,2))
 ;
MZM(DT) ;
 N DAT,MZM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S MZM=$G(@Z1@(DAT,NOM,"F",1))
 I $$TIPNO^W4TIPPD(DT) S MZM=MZM-$G(@Z1@(DAT,NOM,"T",1))
 Q MZM
 ;
MZMD(DT) ;
 N DAT,MZM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S MZM=$G(@Z1@(DAT,NOM,"FD",1))
 Q MZM
 ;
CHK(DT) ;
 N DAT,CHK,HVBN
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S CHK=$G(@Z1@(DAT,NOM,"G",1))
 S HVBN=$$HVBN(DT)
 Q CHK-HVBN
 ;
HVBN(DT) ;
 N DAT,CHK,HVBN
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S HVBN=$G(@Z1@(DAT,NOM,"GB",1))
 Q HVBN
 ;
SCA(DT) ;
 N DAT,SCA
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCA=$G(@Z1@(DAT,NOM,"V",1))
 Q SCA
 ;
CACB(DT) ;
 N DAT,SCR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCR=$G(@Z1@(DAT,NOM,"VD",1))
 Q SCR
 ;
SCR(DT) ;
 N DAT,SCR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCR=$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"VD",1))
 Q SCR
 ;
SASR(DT) ;
 N DAT,SASR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SASR=$G(@Z1@(DAT,NOM,"H",1))
 Q SASR
 ;
PC(TXT,SUM,J1,J2) ;
 I $G(J1)="" S J1=10
 I $G(J2)="" S J2=2
 Q $$TBTR1($$TR(TXT)_" : "_$J(SUM,J1,J2))
 ;
SAH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"F",1))+$G(@Z1@(DAT,NOM,"G",1))+$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"H",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))
 Q SAH
 ;
SAHNOTIP(DT)
 N SAHNOTIP S SAHNOTIP=$$SAH(DT)-$$TIP(DT)
 Q $$TBTR1($$TR($$TIPPS_" `ll zexikn")_" : "_$J(SAHNOTIP,10,2))
 ;
NETTO(DT) ;
 Q $$SAH(DT)-$$SASR(DT)
 ;
NETTONOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTO(DT)-$$TIP(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll oeict")_" : "_$J(PDNOTIP,10,2))
 ;
PCASR(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"H",1))
 Q $$PC("dtwd",SAH)
 ;
SAHMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FS",1))+$G(@Z1@(DAT,NOM,"GS",1))+$G(@Z1@(DAT,NOM,"VS",1))+$G(@Z1@(DAT,NOM,"HS",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSD(SAH) ;
 Q $$PC("dcrqn k""dq",SAH)
 ;
NETTOMSD(DT) ;
 Q $$SAHMSD(DT)-$G(@Z1@(DAT,NOM,"HS",1))
 ;
PCNETTOMSD(SAH) ;
 Q $$TBTR1($$TR("dcrqn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSD(DT)
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TS",1))
 ;
PCTIPMSD(TIP)
 Q $$PC("dcrqn "_$$TIPPS,TIP)
 ;
SAHMSDNOTIP(DT)
 N SAHMSDNOTIP S SAHMSDNOTIP=$$SAHMSD(DT)-$$TIPMSD(DT)
 Q $$PC($$TIPPS_" `ll dcrqn zexikn",SAHMSDNOTIP)
 ;
NETTOMSDNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSD(DT)-$$TIPMSD(DT)
 I PDNOTIP<0 Q ""
 Q $$PC($$TIPPS_" `ll dcrqn oeict",PDNOTIP)
 ;
PCASRMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HS",1))
 Q $$PC("dcrqn ztwd",SAH)
 ;
SSOAD(DT) ;
 N DAT,SSOAD
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SSOAD=$G(@Z1@(DAT,NOM,"SD",1))
 Q SSOAD
 ;
SAHMSL(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FL",1))+$G(@Z1@(DAT,NOM,"GL",1))+$G(@Z1@(DAT,NOM,"VL",1))+$G(@Z1@(DAT,NOM,"HL",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))+$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn k""dq")_" : "_$J(SAH,10,2))
 ;
NETTOMSL(DT) ;
 Q $$SAHMSL(DT)-$G(@Z1@(DAT,NOM,"HL",1))
 ;
PCNETTOMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSL(DT) ;
 N DAT
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TL",1))
 ;
PCTIPMSL(TIP)
 Q $$PC("migelyn "_$$TIPPS,TIP)
 ;
SAHMSLNOTIP(DT)
 N SAHMSLNOTIP S SAHMSLNOTIP=$$SAHMSL(DT)-$$TIPMSL(DT)
 I SAHMSLNOTIP'>0 Q ""
 Q $$PC($$TIPPS_" `ll mikelyn zexikn",SAHMSLNOTIP)
 ;
NETTOMSLNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSL(DT)-$$TIPMSL(DT)
 I PDNOTIP<0 Q ""
 Q $$PC($$TIPPS_" `ll migelyn oeict",PDNOTIP)
 ;
ASRMSL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HL",1))
 Q $$PC("migelyn ly dtwd",SAH)
 ;
BIT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"BIT",1))
 Q SAH
 ;
HNH(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MIN",1))+$G(@Z1@(DAT,NOM,"MIN2",1))
 S SAH=SAH-$$HNHL(DT)-$$HNHCIB(DT)-$$HNHT(DT)
 Q SAH
 ;
HNHL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHL",1))
 Q SAH
 ;
HNHT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MINT",1))
 Q SAH
 ;
HNHCIB(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHCIB",1))
 Q SAH
 ;
HNHP(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MINPAR",1))
 Q SAH
 ;
SOAD(DT)
 Q 0
 ;
MSL(DT)
 Q 0
 ;
DAT(DT) ;
 Q $ZD(DT,"YYMMDD")
 ;
TBTR(TXT)
 Q "<tr><td colspan=""2"">"_TXT_"</td></tr>"
 ;
TBTR1(TXT)
 Q "<tr><td>"_$P(TXT,":")_"</td><td>"_$P(TXT,":",2)_"</td></tr>"
 ;
TR(TXT) ;
 ;;Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 Q $$H2U^%L1FRM(TXT)
 ;
PDNOTIP(STAM) ;
 Q 1
 I $G(@$$^W4PRM@("TIPNT")),'$G(@$$^W4PRM@("TIPNO")) Q 1
 Q 0
 ;
USCOD(STAM) ;
 N MASOF S MASOF=$G(@$$^W4PRM@("ASH","MASOF"))
 I MASOF["0962305" Q "0077"
 Q $TR($J($E(MASOF,4,7),4)," ",0)
 ;
CMD(FL,KOT) ;
 N MSD,MSG,LINK,SMTP,USER,FILE,FROM,TO
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 S TO=$G(@$$^W4PRM@("MAILZ","TO"))
 I TO'="" D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N I F I=1:1:4 D
 .S TO=$G(@$$^W4PRM@("MAILZ","TO"_I)) Q:TO=""
 .D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 Q
 ;
TIPPS(STAM) ;
 Q $$TIPPS^W4TOT
 ;
MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N CMD
 I TO'["@",TO'[".",$L(TO)<6 Q
 S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 ZSY CMD
 I $D(MAILZ) D
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2))=CMD
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2),"ZSY")=$ZSY_"\"_$ZD($H,"24:60")
 Q
 ;
TIPPD(DD)
 Q $$^W4TIPPD(DD)
 ;
OPENFL ; --> FL
 N PATH
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S FL=PATH_"ZM"_$ZD(DT,"YYMMDD")_".html"
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION)
 U FL
 Q
 ;
CLOSEFL(FL) ;
 N PATH C FL
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S KOT="Day-Report-"_$$^%L1MRK_"-"_$ZD(DT,"DD.MM.YY")
 S ^MAILZ=3
 D CMD(FL,KOT)
 Q
 ;
DOCHP(DT) ; 
 N (JB,%ARG,DT,DOCH,P1X)
 N DISP S DISP=1
 N P1TOT S P1TOT=DT
 N %ARG
 S %ARG("MIUN")=1
 I $G(@$$^W4PRM@("DOCHP","SORT")) S %ARG("MIUN")=^("SORT")
 S SET="",NS=""
 I $G(@$$^W4PRM@("DOCHP","NSET")) S SET=1,NS=^("NSET")
 S %ARG("SET")=SET 
 S %ARG("NS")=NS
 D PARZ^W4TELREP(DT,DT)
 Q
 ;
CREDIT() ; 
 Q ($D(@$$^W4GL("KLF"))>9)
 ;
 ; 
ZMKR ; 
 N (JB,%ARG,DT) 
 S (DT1,DT2)=DT
 D SETIN^W4GAPZ
 D SCOMP^W4TOT
 D MKRREP^W4GAPZ
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILZ0
W4MAILZ(JB,DT) ; [ 04.06.17 10:21 ] [ 06.11.16 15:16 ] [ 01.04.16 17:57 ] 
 I $G(@$$^W4PRM@("MAILZ","2")) D ^W4MAILZ2(DT) Q
 ;
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S MAILZ=""
 K ^MAILZ S ^MAILZ=1
 D ^%L1TS
 N SMSL,SMSD,FL
 ;
 S (SMSL,SMSD,SSOAD)=0
 ;
 N N S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .S NMB=$P($G(@$$^W4ORD@(N)),"\") Q:NMB=""
 .N TS S TS=$P(^(N),"\",11)
 .N SIGN S SIGN=$S(TS<0:-1,TS>0:1,1:0)
 .I $L(NMB)<4 S SMSD=SMSD+SIGN Q
 .;;I '$P($G(@$$^W4ORD@(N,"TM")),"\") Q
 .S SMSL=SMSL+SIGN
 ;
 S DAT=$$DAT(DT)
 ;
 S NOM=$O(@$$^W4GL("Z1")@(DAT,99999),-1) Q:'NOM
 S ^MAILZ=2
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 N FL
 S FL=PATH_"ZM"_$ZD(DT,"YYMMDD")_".html"
 C FL:(DELETE)
 ;
 O FL:(WRITE:NEWVERSION)
 U FL
 ;
 W "<html><body><div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"">",!
 W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 I NOM W $$TBTR("<span style=""text-align:center"">"_$$TR(" ixeciq 'qn ")_" "_NOM_"</span>"),!
 W $$TBTR("<span style=""font-size:14pt"">"_$$TR($ZD(DT,"DD.MM.YY")_" jix`zl itqk g""ec")_"</span>"),!
 W $$TBTR("<hr>"),!
 S Z1=$$^W4GL("Z1")
 ;
 S SAH=$$SAH(DT)
 S TIP=$$TIP(DT)
 S DMSH=$$DMSH(DT)
 ;
 I $$^W4TIPMIN(DT) W $$PCTIP(TIP),!
 W $$PCNETTO($$NETTO(DT)),!
 W $$ASR(DT),!
 W $$PCSAH(SAH),!
 ;
 I $$TIPPD(DT) D
 .W $$PCTIP(TIP),!
 .W $$NETTONOTIP(DT),!
 .W $$SAHNOTIP(DT),!
 ;
 ;;W $J(SMSL,7)_"    : "_$$TR("micreq"),!
 S SSOAD=+$$SSOAD(DT)
 ;
 I '$$MSL^W4PRM D
 .W $$TBTR1($$TR("micreq")_" : "_$J(SSOAD,7)),!
 .Q:'SSOAD
 .W $$TBTR1($$TR("creql rvenn")_" : "_$J(SAH/SSOAD,7,2)),!
 .I '$$TIPPD(DT) Q
 .W $$TBTR1($$TR($$TIPPS_" `ll creql rvenn")_" : "_$J(SAH-TIP/SSOAD,7,2)),!
 ;
 I $$MSL^W4PRM D
 .S SAHMSD=$$SAHMSD(DT)
 .S TIPMSD=$$TIPMSD(DT)
 .I $$^W4TIPMIN(DT) W $$PCTIPMSD(TIPMSD),!
 .W $$PCNETTOMSD($$NETTOMSD(DT)),!
 .W $$ASRMSD(DT),!
 .W $$PCSAHMSD(SAHMSD),!
 .I $$TIPPD(DT) D
 ..W $$PCTIPMSD(TIPMSD),!
 ..W $$NETTOMSDNOTIP(DT),!
 ..W $$SAHMSDNOTIP(DT),!
 .W $$TBTR1($$TR("micreq")_" : "_$J(SSOAD,7)),!
 .I SSOAD D
 ..W $$TBTR1($$TR("creql rvenn")_" : "_$J(SAHMSD/SSOAD,7,2)),!
 ..I '$$TIPPD(DT) Q
 ..W $$TBTR1($$TR($$TIPPS_" `ll creql rvenn")_" : "_$J(SAHMSD-TIPMSD/SSOAD,7,2)),!
 .
 .S SAHMSL=$$SAHMSL(DT)
 .S TIPMSL=$$TIPMSL(DT)
 .
 .I $$^W4TIPMIN(DT) W $$PCTIPMSL(TIPMSL),!
 .W $$PCNETTOMSL($$NETTOMSL(DT)),!
 .W $$ASRMSL(DT),!
 .W $$PCSAHMSL(SAHMSL),!
 .I $$TIPPD(DT) D
 ..W $$PCTIPMSL(TIPMSL),!
 ..W $$SAHMSLNOTIP(DT),!
 ..W $$NETTOMSLNOTIP(DT),!
 .W $$TBTR1($$TR("migelyn")_" : "_$J(SMSL,7)),!
 .I SMSL D
 ..W $$TBTR1($$TR("gelynl rvenn")_" : "_$J(SAHMSL/SMSL,7,2)),!
 ..I '$$TIPPD(DT) Q
 ..W $$TBTR1($$TR($$TIPPS_" `ll creql rvenn")_" : "_$J(SAHMSL-TIPMSL/SMSL,7,2)),!
 ;
 S BIT=$$BIT(DT)
 W $$TBTR1($$TR("milehia")_" : "_$J(BIT,7,2)),!
 W $$TBTR1("")
 S HNH=$$HNH(DT)
 W $$TBTR1($$TR("mildpn zegpd")_" : "_$J(HNH,7,2)),!
 S HNHP=$$HNHP(DT)
 W $$TBTR1($$TR("mihixtl zegpd")_" : "_$J(HNHP,7,2)),!
 S HNHL=$$HNHL(DT)
 W $$TBTR1($$TR("zegewl zegpd")_" : "_$J(HNHL,7,2)),!
 S HNHCIB=$$HNHCIB(DT)
 I HNHCIB D
 .W $$TBTR1($$TR("zegewl zegpd")_" : "_$J(HNHCIB,7,2)),!
 ;
 S SUMP=$J(SAH+$G(HNH)+$G(HNHCIB)+$G(HNHT)+$G(HNHL)+$G(MIN3)-$G(DMSH)-$S($$TIPPD(DT):$G(TIP),1:0),2,2)
 S SUMB=$J(SUMP+$G(BIT)+$G(DMSH),2,2)
 I '$$TIPPD(DT) S SUMB=SUMB+$G(TIP)
 W $$TBTR1($$TR("mihixt zexikn k""dq")_" : "_$J(SUMP,7,2)),!
 W $$TBTR1($$TR("ehexa k""dq")_" : "_$J(SUMB,7,2)),!
 ;
 W "</table>",!
 ;
 I $G(@$$^W4PRM@("ZXBIT")) D ^W4MAILZB(DT),^W4MAILZH(DT)
 I $G(@$$^W4PRM@("ZDTLM")) D ^W4MAILZC(DT)
 ;
 W "</div></body></html>",!
 C FL
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S KOT="Day-Report-"_$$^%L1MRK_"-"_$ZD(DT,"DD.MM.YY")
 ;
 S ^MAILZ=3
 D CMD(FL,KOT)
 Q
 ;
TIP(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N TIP S TIP=$G(@Z1@(DAT,NOM,"T",1))
 Q TIP
 ;
DMSH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N DMSH S DMSH=$G(@Z1@(DAT,NOM,"DMSH",1))
 Q DMSH
 ;
PCTIP(TIP)
 Q $$TBTR1($$TR($$TIPPS)_" : "_$J(TIP,10,2))
 ;
SAH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"F",1))+$G(@Z1@(DAT,NOM,"G",1))+$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"H",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))
 Q SAH
 ;
PCSAH(SAH) ;
 Q $$TBTR1($$TR("zexikn")_" : "_$J(SAH,10,2))
 ;
SAHNOTIP(DT)
 N SAHNOTIP S SAHNOTIP=$$SAH(DT)-$$TIP(DT)
 Q $$TBTR1($$TR($$TIPPS_" `ll zexikn")_" : "_$J(SAHNOTIP,10,2))
 ;
NETTO(DT) ;
 Q $$SAH(DT)-$G(@Z1@(DAT,NOM,"H",1))
 ;
PCNETTO(SAH) ;
 Q $$TBTR1($$TR("ehp oeict")_" : "_$J(SAH,10,2))
 ;
NETTONOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTO(DT)-$$TIP(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll oeict")_" : "_$J(PDNOTIP,10,2))
 ;
ASR(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"H",1))
 Q $$TBTR1($$TR("dtwd")_" : "_$J(SAH,10,2))
 ;
SAHMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FS",1))+$G(@Z1@(DAT,NOM,"GS",1))+$G(@Z1@(DAT,NOM,"VS",1))+$G(@Z1@(DAT,NOM,"HS",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSD(SAH) ;
 Q $$TBTR1($$TR("dcrqn k""dq")_" : "_$J(SAH,10,2))
 ;
NETTOMSD(DT) ;
 Q $$SAHMSD(DT)-$G(@Z1@(DAT,NOM,"HS",1))
 ;
PCNETTOMSD(SAH) ;
 Q $$TBTR1($$TR("dcrqn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSD(DT)
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TS",1))
 ;
PCTIPMSD(TIP)
 Q $$TBTR1($$TR("dcrqn "_$$TIPPS)_" : "_$J(TIP,10,2))
 ;
SAHMSDNOTIP(DT)
 N SAHMSDNOTIP S SAHMSDNOTIP=$$SAHMSD(DT)-$$TIPMSD(DT)
 Q $$TBTR1($$TR($$TIPPS_" `ll dcrqn zexikn")_" : "_$J(SAHMSDNOTIP,10,2))
 ;
NETTOMSDNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSD(DT)-$$TIPMSD(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll dcrqn oeict")_" : "_$J(PDNOTIP,10,2))
 ;
ASRMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HS",1))
 Q $$TBTR1($$TR("dcrqn ztwd")_" : "_$J(SAH,10,2))
 ;
SSOAD(DT) ;
 N DAT,SSOAD
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SSOAD=$G(@Z1@(DAT,NOM,"SD",1))
 Q SSOAD
 ;
SAHMSL(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FL",1))+$G(@Z1@(DAT,NOM,"GL",1))+$G(@Z1@(DAT,NOM,"VL",1))+$G(@Z1@(DAT,NOM,"HL",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))+$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn k""dq")_" : "_$J(SAH,10,2))
 ;
NETTOMSL(DT) ;
 Q $$SAHMSL(DT)-$G(@Z1@(DAT,NOM,"HL",1))
 ;
PCNETTOMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSL(DT) ;
 N DAT
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TL",1))
 ;
PCTIPMSL(TIP)
 Q $$TBTR1($$TR("migelyn "_$$TIPPS)_" : "_$J(TIP,10,2))
 ;
SAHMSLNOTIP(DT)
 N SAHMSLNOTIP S SAHMSLNOTIP=$$SAHMSL(DT)-$$TIPMSL(DT)
 I SAHMSLNOTIP'>0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll mikelyn zexikn")_" : "_$J(SAHMSLNOTIP,10,2))
 ;
NETTOMSLNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSL(DT)-$$TIPMSL(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll migelyn oeict")_" : "_$J(PDNOTIP,10,2))
 ;
ASRMSL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HL",1))
 Q $$TBTR1($$TR("migelyn ly dtwd")_" : "_$J(SAH,10,2))
 ;
BIT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"BIT",1))
 Q SAH
 ;
HNH(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MIN",1))+$G(@Z1@(DAT,NOM,"MIN2",1))
 Q SAH
 ;
HNHL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHL",1))
 Q SAH
 ;
HNHCIB(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHCIB",1))
 Q SAH
 ;
HNHP(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MINPAR",1))
 Q SAH
 ;
SOAD(DT)
 Q 0
MSL(DT)
 Q 0
DAT(DT) ;
 Q $ZD(DT,"YYMMDD")
 ;
TBTR(TXT)
 Q "<tr><td colspan=""2"">"_TXT_"</td></tr>"
 ;
TBTR1(TXT)
 Q "<tr><td>"_$P(TXT,":")_"</td><td>"_$P(TXT,":",2)_"</td></tr>"
 ;
TR(TXT) ;
 ;;Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 Q $$H2U^%L1FRM(TXT)
 ;
PDNOTIP(STAM) ;
 Q 1
 I $G(@$$^W4PRM@("TIPNT")),'$G(@$$^W4PRM@("TIPNO")) Q 1
 Q 0
 ;
USCOD(STAM) ;
 N MASOF S MASOF=$G(@$$^W4PRM@("ASH","MASOF"))
 I MASOF["0962305" Q "0077"
 Q $TR($J($E(MASOF,4,7),4)," ",0)
 ;
CMD(FL,KOT) ;
 N MSD,MSG,LINK,SMTP,USER,FILE,FROM,TO
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 N I F I=1:1:4 D
 .S TO=$G(@$$^W4PRM@("MAILZ","TO"_I)) Q:TO=""
 .D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 Q
 ;
TIPPS(STAM) ;
 Q $$TIPPS^W4TOT
 ;
MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N CMD
 I TO'["@",TO'[".",$L(TO)<6 Q
 S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 ZSY CMD
 I $D(MAILZ) D
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2))=CMD
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2),"ZSY")=$ZSY_"\"_$ZD($H,"24:60")
 Q
 ;
TIPPD(DD)
 Q $$^W4TIPPD(DD)
 
 
 
 
 

W4MAILZ2
W4MAILZ2(JB,DT) ; [ 15.07.24 18:01 ] [ 06.11.16 15:16 ] [ 08.02.16 18:52 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S MAILZ=""
 K ^MAILZ S ^MAILZ=1
 D ^%L1TS
 N SMSL,SMSD,FL
 ;
 S (SMSL,STAW,SMSD,SSOAD,SAHTAW,TIPTAW,TIPMSL)=0
 ;
 N N S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .S NMB=$P($G(@$$^W4ORD@(N)),"\") Q:NMB=""
 .N TS S TS=$P(^(N),"\",11)
 .N SIGN S SIGN=$S(TS<0:-1,TS>0:1,1:0)
 .I $$^W4MSD(NMB) S SMSD=SMSD+SIGN Q
 .;;I '$P($G(@$$^W4ORD@(N,"TM")),"\") Q
 .S IR=$$IR^W4HZMST(N)
 .I IR=""!(IR="TAKEAWAY") D  Q
 ..S STAW=STAW+SIGN
 ..S SAHTAW=SAHTAW+$$TSHL^W4HZMST(N)
 ..S TIPTAW=TIPTAW+$$STIP^W4HZMST(N)
 .S SMSL=SMSL+SIGN
 .S TIPMSL=TIPMSL+$$STIP^W4HZMST(N)
 ;
 S DAT=$$DAT(DT)
 ;
 S NOM=$O(@$$^W4GL("Z1")@(DAT,99999),-1) Q:'NOM
 S ^MAILZ=2
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 N FL
 S FL=PATH_"ZM"_$ZD(DT,"YYMMDD")_".html"
 C FL:(DELETE)
 ;
 O FL:(WRITE:NEWVERSION)
 U FL
 ;
 W "<html><body><div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"">",!
 W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 I NOM W $$TBTR("<span style=""text-align:center"">"_$$TR(" ixeciq 'qn ")_" "_NOM_"</span>"),!
 W $$TBTR("<span style=""font-size:14pt"">"_$$TR($ZD(DT,"DD.MM.YY")_" jix`zl itqk g""ec")_"</span>"),!
 W $$TBTR("<hr>"),!
 S Z1=$$^W4GL("Z1")
 ;
 S SAH=$$SAH(DT)
 S TIP=$$TIP(DT)
 S TIPMSL=$$TIPMSL(DT)
 S TIPMSD=TIP-TIPMSL-TIPTAW
 ;
 W $$PCSAH(SAH),!
 W $$PCTIP(TIP),!
 W $$SAHNOTIP(DT),!
 ;
 S SAHMSD=$$SAHMSD(DT)
 S SAHMSL=$$SAHMSL(DT)-SAHTAW
 ;
 W $$PCSAHMSD(SAHMSD),!
 S SSOAD=+$$SSOAD(DT)
 I SSOAD D
 .W $$TBTR1($$TR("dcrqna micreq")_" : "_$J(SSOAD,7)),!
 .W $$TBTR1($$TR("dcrqna mitih")_" : "_$J(TIPMSD,7,2)),!
 .W $$TBTR1($$TR("tih iptl creql rvenn")_" : "_$J(SAHMSD-TIPMSD/SSOAD,7,2)),!
 ;
 ;
 W $$PCSAHTAW(SAHTAW),!
 W $$PCTIPTAW(TIPTAW),!
 W $$SAHTAWNOTIP(DT),!
 W $$TBTR1($$TR("zgwl zepnfd 'qn")_" : "_$J(STAW,7)),!
 I STAW D
 .I '$$^W4TIPPD(DT) Q
 .W $$TBTR1($$TR($$TIPPS_" `ll zgwl creql rvenn")_" : "_$J(SAHTAW-TIPTAW/STAW,7,2)),!
 ;
 ;
 W $$PCSAHMSL(SAHMSL),!
 W $$PCTIPMSL(TIPMSL),!
 W $$SAHMSLNOTIP(DT),!
 W $$TBTR1($$TR("migelyn")_" : "_$J(SMSL,7)),!
 I SMSL D
 .W $$TBTR1($$TR($$TIPPS_" `ll gelynl rvenn")_" : "_$J(SAHMSL-TIPMSL/SMSL,7,2)),!
 ;
 W $$TBTR1($$TR("milehia")_" : "_$J($$BIT(DT),7,2)),!
 W $$TBTR1("")
 ;
 W "</table>",!
 ;
 I $G(@$$^W4PRM@("ZXBIT")) D ^W4MAILZB(DT),^W4MAILZH(DT)
 ;
 W "</div></body></html>",!
 C FL
 ;
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S KOT="Day-Report-"_$$^%L1MRK_"-"_$ZD(DT,"DD.MM.YY")
 ;
 S ^MAILZ=3
 D CMD(FL,KOT)
 Q
 ;
 ;
TIP(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N TIP S TIP=$G(@Z1@(DAT,NOM,"T",1))
 Q TIP
 ;
PCTIP(TIP)
 Q $$TBTR1($$TR($$TIPPS)_" : "_$J(TIP,10,2))
 ;
SAH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"F",1))+$G(@Z1@(DAT,NOM,"G",1))+$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"H",1))
 I '$$^W4TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))
 Q SAH
 ;
PCSAH(SAH) ;
 Q $$TBTR1($$TR("zexikn")_" : "_$J(SAH,10,2))
 ;
SAHNOTIP(DT)
 N SAHNOTIP S SAHNOTIP=$$SAH(DT)-$$TIP(DT)
 Q $$TBTR1($$TR($$TIPPS_" `ll zexikn")_" : "_$J(SAHNOTIP,10,2))
 ;
NETTO(DT) ;
 Q $$SAH(DT)-$G(@Z1@(DAT,NOM,"H",1))
 ;
PCNETTO(SAH) ;
 Q $$TBTR1($$TR("ehp oeict")_" : "_$J(SAH,10,2))
 ;
NETTONOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTO(DT)-$$TIP(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll oeict")_" : "_$J(PDNOTIP,10,2))
 ;
ASR(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"H",1))
 Q $$TBTR1($$TR("dtwd")_" : "_$J(SAH,10,2))
 ;
SAHMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FS",1))+$G(@Z1@(DAT,NOM,"GS",1))+$G(@Z1@(DAT,NOM,"VS",1))+$G(@Z1@(DAT,NOM,"HS",1))
 I '$$^W4TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSD(SAH) ;
 Q $$TBTR1($$TR("dcrqn k""dq")_" : "_$J(SAH,10,2))
 ;
NETTOMSD(DT) ;
 Q $$SAHMSD(DT)-$G(@Z1@(DAT,NOM,"HS",1))
 ;
PCNETTOMSD(SAH) ;
 Q $$TBTR1($$TR("dcrqn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSD(DT)
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TS",1))
 ;
PCTIPMSD(TIP)
 Q $$TBTR1($$TR("dcrqn "_$$TIPPS)_" : "_$J(TIP,10,2))
 ;
SAHMSDNOTIP(DT)
 N SAHMSDNOTIP S SAHMSDNOTIP=$$SAHMSD(DT)-$$TIPMSD(DT)
 Q $$TBTR1($$TR($$TIPPS_" `ll dcrqn zexikn")_" : "_$J(SAHMSDNOTIP,10,2))
 ;
NETTOMSDNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSD(DT)-$$TIPMSD(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll dcrqn oeict")_" : "_$J(PDNOTIP,10,2))
 ;
ASRMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HS",1))
 Q $$TBTR1($$TR("dcrqn ztwd")_" : "_$J(SAH,10,2))
 ;
SSOAD(DT) ;
 N DAT,SSOAD
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SSOAD=$G(@Z1@(DAT,NOM,"SD",1))
 Q SSOAD
 ;
SAHMSL(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FL",1))+$G(@Z1@(DAT,NOM,"GL",1))+$G(@Z1@(DAT,NOM,"VL",1))+$G(@Z1@(DAT,NOM,"HL",1))
 I '$$^W4TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))+$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
SAHTAW(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FT",1))+$G(@Z1@(DAT,NOM,"GT",1))+$G(@Z1@(DAT,NOM,"VT",1))+$G(@Z1@(DAT,NOM,"HT",1))
 I '$$^W4TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))+$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
 ;
PCSAHMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn k""dq")_" : "_$J(SAH,10,2))
 ;
NETTOMSL(DT) ;
 Q $$SAHMSL(DT)-$G(@Z1@(DAT,NOM,"HL",1))
 ;
PCNETTOMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSL(DT) ;
 N DAT
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TL",1))-$G(@Z1@(DAT,NOM,"TT",1))
 ;
TIPTAW(DT) ;
 N DAT
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TT",1))
 ;
PCTIPMSL(TIP)
 Q $$TBTR1($$TR("migelyn "_$$TIPPS)_" : "_$J(TIP,10,2))
 ;
SAHMSLNOTIP(DT)
 N SAHMSLNOTIP S SAHMSLNOTIP=SAHMSL-TIPMSL
 I SAHMSLNOTIP'>0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll mikelyn zexikn")_" : "_$J(SAHMSLNOTIP,10,2))
 ;
NETTOMSLNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSL(DT)-$$TIPMSL(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll migelyn oeict")_" : "_$J(PDNOTIP,10,2))
 ;
ASRMSL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HL",1))
 Q $$TBTR1($$TR("migelyn ly dtwd")_" : "_$J(SAH,10,2))
 ;
PCSAHTAW(SAH) ;
 Q $$TBTR1($$TR("zgwl k""dq")_" : "_$J(SAH,10,2))
 ;
PCTIPTAW(TIP)
 Q $$TBTR1($$TR("zgwl "_$$TIPPS)_" : "_$J(TIP,10,2))
 ;
SAHTAWNOTIP(DT)
 N SAHTAWNOTIP S SAHTAWNOTIP=$$SAHTAW(DT)-$$TIPTAW(DT)
 I SAHTAWNOTIP'>0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll zgwl zexikn")_" : "_$J(SAHTAWNOTIP,10,2))
 ;
BIT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"BIT",1))
 Q SAH
 ;
HNH(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MIN",1))+$G(@Z1@(DAT,NOM,"MIN2",1))
 Q SAH
 ;
HNHL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHL",1))
 Q SAH
 ;
HNHCIB(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHCIB",1))
 Q SAH
 ;
SOAD(DT)
 Q 0
MSL(DT)
 Q 0
DAT(DT) ;
 Q $ZD(DT,"YYMMDD")
 ;
TBTR(TXT)
 Q "<tr><td colspan=""2"">"_TXT_"</td></tr>"
 ;
TBTR1(TXT)
 Q "<tr><td>"_$P(TXT,":")_"</td><td>"_$P(TXT,":",2)_"</td></tr>"
 ;
TR(TXT) ;
 ;;Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 Q $$H2U^%L1FRM(TXT)
 ;
PDNOTIP(STAM) ;
 Q 1
 I $G(@$$^W4PRM@("TIPNT")),'$G(@$$^W4PRM@("TIPNO")) Q 1
 Q 0
 ;
USCOD(STAM) ;
 N MASOF S MASOF=$G(@$$^W4PRM@("ASH","MASOF"))
 I MASOF["0962305" Q "0077"
 Q $TR($J($E(MASOF,4,7),4)," ",0)
 ;
CMD(FL,KOT) ;
 N MSD,MSG,LINK,SMTP,USER,FILE,FROM,TO
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 N I F I=1:1:4 D
 .S TO=$G(@$$^W4PRM@("MAILZ","TO"_I)) Q:TO=""
 .D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 Q
 ;
TIPPS(STAM) ;
 Q $$TIPPS^W4TOT
 ;
MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N CMD
 I TO'["@",TO'[".",$L(TO)<6 Q
 S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 ZSY CMD
 I $D(MAILZ) D
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2))=CMD
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2),"ZSY")=$ZSY_"\"_$ZD($H,"24:60")
 Q
 
 
 
 
 
 
 
 

W4MAILZ3
W4MAILZ3(JB,DT) ; [ 17.07.24 13:41 ] [ 16.07.24 15:07 ] [ 14.07.24 17:14 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D OPENFL ; --> FL
 D BODY(JB,DT)
 D CLOSEFL(FL)
 Q
 ;
 ;
BODY(JB,DT)
 S MAILZ=""
 K ^MAILZ S ^MAILZ=1
 D ^%L1TS
 N SMSL,SMSD
 ;
 S (SMSL,SMSD,SSOAD)=0
 ;
 K TBL S QNTAW=0,QNMSD=0
 N N S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I A[",^",$O(@$$^W4REF@(DT,N)) K TBL S (SMSD,SMSL,QNTAW)=0
 .S NMB=$P($G(@$$^W4ORD@(N)),"\") Q:NMB=""
 .N TS S TS=$P(^(N),"\",11)
 .N SIGN S SIGN=$S(TS<0:-1,TS>0:1,$$^W4DEL(N):0,1:1)
 .I $L(NMB)<4 S SMSD=SMSD+SIGN D  Q
 ..I '$$TAW^W4DLPK(NMB)!'$$TAWMSD^W4PRM S TBL(NMB)=""
 .D
 ..I '$$TAKEAWAY^W4HZMST(N),$$HZM^W4MSL(N) S SMSL=SMSL+SIGN Q
 ..I $$TAKEAWAY^W4HZMST(N),$$HZM^W4MSL(N) S QNTAW=QNTAW+SIGN Q
 ..I $$TAWMSD^W4PRM,$$HZM^W4MSD(N),$$TAW^W4DLPK(N) S QNTAW=QNTAW+SIGN Q
 ..I $$HZM^W4MSD(N) S QNMSD=QNMSD+SIGN
 ;
 S QNTBL=0,N="" F  S N=$O(TBL(N)) Q:N=""  S QNTBL=QNTBL+1
 ;
 S DAT=$$DAT(DT)
 ;
 S NOM=$O(@$$^W4GL("Z1")@(DAT,99999),-1) Q:'NOM
 ;
 W "<html><body><div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"">",!
 W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 I NOM W $$TBTR("<span style=""text-align:center"">"_$$TR(" ixeciq 'qn ")_" "_NOM_"</span>"),!
 W "<p></p>",!
 W $$TBTR("<span style=""font-size:14pt"">"_$$TR($ZD(DT,"DD.MM.YY")_" jix`zl itqk g""ec")_"</span>"),!
 W $$TBTR("<hr>"),!
 S Z1=$$^W4GL("Z1")
 ;
 S MZM=$$MZM(DT)
 S SAH=$$SAH(DT)
 S TIP=$$TIP(DT)
 S DMSH=$$DMSH(DT)
 ;
 D SCOMP^W4TOT(DT,DT)
 ;
 W $$PC("onefn",MZM),!
 ;
 N MZMN S MZMN=MZM
 I '$$SUPER^W3PRM,$$^W4TIPMIN(DT) D
 .W $$PC($$TIPPS,TIP),!
 .S MZMN=MZM-TIP
 .W $$PC("ehp onefn",MZMN),!
 ;
 W $$PC("dtew `""k k""dq",$$SCA(DT)),!
 W $$PC("ze`gnd",$$CHK(DT)),!
 W $$PC("zi`wpa dxard",$$HVBN(DT)),!
 ;
 D KAV
 W $$PC("ehp oeict",$$NETTO(DT)),!
 D PCSP
 
 I $$CREDIT W $$PCASR(DT),!
 D PCSP
 W $$PC("zexikn k""dq",SAH),!
 D KAV
 D PCSP
 ;
 N MZMD S MZMD=$$MZMD(DT)
 N MZMA S MZMA=MZMN+MZMD
 ;
 I $$CREDIT D
 .W $$PC("zelaw onefn",MZMD)
 .W $$PC("zelaw llek onefn",MZMA),!
 .W $$PC("zelaw i`xy` iqihxk",$$CACB(DT))
 .W $$PC("zelaw llek `""k k""dq",$$SCR(DT)),!
 .N SAHCB S SAHCB=MZMD+$$CACB(DT) ;;+$$CHKCB(DT)+$$HVBNK(DT) ; ***
 .W $$PC("zelaw k""dq",SAHCB)
 .D KAV 
 .D PCSP
 ;
 S SSOAD=+$$SSOAD(DT)
 ;
 I '$$MSL^W4PRM D
 .W $$PC("zegewl 'qn",SSOAD,"",0),!
 .Q:'SSOAD
 .W $$PC("gewll rvenn",SAH/SSOAD),!
 .I '$$TIPPD(DT) Q
 .W $$PC($$TIPPS_" `ll creql rvenn",SAH-TIP/SSOAD),!
 ;
 I $$MSL^W4PRM D
 .;;I $G(SDMS) W $$PC("gelyn inc k""dq",SDMS),!
 .S SAHMSD=$$SAHMSD(DT)
 .S TIPMSD=$$TIPMSD(DT)
 .
 .;;I $$^W4TIPMIN(DT) W $$PCTIPMSD(TIPMSD),!
 .;;W $$PC("dcrqn ehp oeict",$$NETTOMSD(DT)),!
 .;;W $$PCASRMSD(DT),!
 .
 .W $$PCSAHMSD(SAHMSD),!
 .W $$PC("zegewl 'qn",SSOAD,"",0),!
 .I SSOAD D
 ..W $$PC("gewll rvenn",SAHMSD/SSOAD),!
 ..;;I '$$TIPPD(DT) Q
 ..;;W $$PC($$TIPPS_" `ll gewll rvenn",SAHMSD-TIPMSD/SSOAD),!
 .D KAV,PCSP 
 .
 .;;I $$TIPPD(DT) D
 ..W $$PCTIPMSD(TIPMSD),!
 ..W $$NETTOMSDNOTIP(DT),!
 ..W $$SAHMSDNOTIP(DT),!
 .
 .S SAHMSL=$$SAHMSL(DT)
 .S TIPMSL=$$TIPMSL(DT)
 .
 .;;I '$$SUPER^W3PRM,$$^W4TIPMIN(DT) W $$PCTIPMSL(TIPMSL),!
 .
 .W $$PCSAHMSL(SAHMSL),!
 .
 .;;I '$$SUPER^W3PRM,$$TIPPD(DT) D
 ..W $$PCTIPMSL(TIPMSL),!
 ..W $$SAHMSLNOTIP(DT),!
 ..W $$NETTOMSLNOTIP(DT),!
 .
 .W $$PC("migelyn 'qn",SMSL,7,0),!
 .
 .I SMSL D
 ..W $$PC("gelynl rvenn",SAHMSL/SMSL),!
 ..;;I '$$TIPPD(DT) Q
 ..;;W $$PC($$TIPPS_" `ll gewll  rvenn",SAHMSL-TIPMSL/SMSL),!
 . 
 .D KAV,PCSP
 .W $$PCSAHTAW($$SAHTAW(DT)),!
 .W $$PC("zgwl zepnfd 'qn",QNTAW,7,0),!
 .I QNTAW D
 ..W $$PC("zgwl rvenn",$$SAHTAW(DT)/QNTAW),!
 ;
 D KAV,PCSP
 ;
 I '$$SUPER^W3PRM D
 .W $$TBTR1("")
 .I STENB W $$PC("qia oz",STENB),!
 .W $$PC("qeaiq",SCIB),!
 .I SCOUP W $$PC("oetpetew",SCOUP),!
 .;
 .D KAV,PCSP
 ;
 S BIT=$$BIT(DT)
 W $$PC("milehia",BIT),!
 W $$TBTR1("")
 ;
 S HNH=$$HNH(DT)
 W $$PC("mildpn zegpd",HNH),!
 ;
 D KAV,PCSP
 N GLZ,GLZ1,DD,NZ,ZPD,ZH
 S GLZ=$$^W4GL("Z"),GLZ1=$$^W4GL("Z1")
 ;
 S (ZPD,ZH)=0,DD1=0
 S DD="" F  S DD=$O(@GLZ@(DD),-1) Q:DD=""  Q:+$ZD(DD,"MM")'=+$ZD(DT,"MM")  S DD1=DD
 ;
 S DD=DD1-1 F  S DD=$O(@GLZ@(DD)) Q:DD=""  Q:DD>DT  D
 .S NZ="" F  S NZ=$O(@GLZ@(DD,NZ)) Q:NZ=""  D
 ..N DAT S DAT=$ZD(DD,"YYMMDD")
 ..S ZA=$G(@GLZ1@(DAT,NZ,"F",1))+$G(@GLZ1@(DAT,NZ,"G",1))+$G(@GLZ1@(DAT,NZ,"V",1)) ;+$G(@GLZ1@(DAT,NZ,"MP",1))
 ..I '$$^W4TIPPD(DD) D
 ...S ZA=ZA-$G(@GLZ1@(DAT,NZ,"T",1))
 ..S ^AA("W4MAILZ3",DAT,NZ)=ZA
 ..S ZPD=ZPD+ZA
 ..S ZH=ZH+$G(@GLZ1@(DAT,NZ,"H",1))
 ;
 W $$PC("yceg zligzn oeict k""dq",ZPD)
 W $$PC("yceg zligzn dtwd k""dq",ZH),!
 W $$PC("yceg zligzn zexikn k""dq",ZPD+ZH),!
 W "</table>",!
 ;
 G END ; ------------- !!!!!!!!!!!!!!
 ;
 I $G(@$$^W4PRM@("ZMAILNLY")) G END
 ;
 I $G(@$$^W4PRM@("ZXBIT")) D ^W4MAILZB(DT),^W4MAILZH(DT)
 ;
 I $G(@$$^W4PRM@("ZDTLM")) D ^W4MAILZC(DT)
 ;
 I $G(@$$^W4PRM@("DOCHP")) D
 .K @$$^W4MAIN("TMPS111")
 .D
 ..I $G(@$$^W4PRM@("DOCHP"))=2 D  Q
 ...N DOCH S DOCH="DEP"
 ...N P1TOT S P1TOT=$ZD(DT,"DD.MM.YY")_" jix`zl"
 ...S DISP=1,NOBACKBUT=""
 ...D PARZ^W4TELREP(DT,DT)
 ..
 ..D DOCHP(DT)
 .D VIEW^W4TELREP
 .K @$$^W4MAIN("TMPS111")
 ;
 S NOBACKBUT=""
 D ^W4DLK(DT,DT,1)
 ;
 I $G(@$$^W4PRM@("NOLINKZ")) G END
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP^W4MAILZB_"w4csrrep1.jsp?JB=1&MEDATE="_DAT_"&ADDATE="_DAT_"&CODREP=MSH&FIRST=1"
 W $$H2U^%L1FRM("migily g""ecl wpil"),!
 W REF,!
 ;
 W !!
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP^W4MAILZB_"w4csrrep1.jsp?JB=1&MEDATE="_DAT_"&ADDATE="_DAT_"&CODREP=DCLK&FIRST=1"
 W $$H2U^%L1FRM("micaer zery g""ecl wpil"),!
 W REF,!
END ;
 W "</div></body></html>",!
 Q
 ;
 ;
TIP(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N TIP S TIP=$G(@Z1@(DAT,NOM,"T",1))
 Q TIP
 ;
DMSH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N DMSH S DMSH=$G(@Z1@(DAT,NOM,"DMSH",1))
 Q DMSH
 ;
PCTIP(TIP)
 Q $$TBTR1($$TR($$TIPPS)_" : "_$J(TIP,10,2))
 ;
MZM(DT) ;
 N DAT,MZM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S MZM=$G(@Z1@(DAT,NOM,"F",1))
 I $$TIPNO^W4TIPPD(DT) S MZM=MZM-$G(@Z1@(DAT,NOM,"T",1))
 Q MZM
 ;
MZMD(DT) ;
 N DAT,MZM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S MZM=$G(@Z1@(DAT,NOM,"FD",1))
 Q MZM
 ;
CHK(DT) ;
 N DAT,CHK,HVBN
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S CHK=$G(@Z1@(DAT,NOM,"G",1))
 S HVBN=$$HVBN(DT)
 Q CHK-HVBN
 ;
HVBN(DT) ;
 N DAT,CHK,HVBN
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S HVBN=$G(@Z1@(DAT,NOM,"GB",1))
 Q HVBN
 ;
SCA(DT) ;
 N DAT,SCA
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCA=$G(@Z1@(DAT,NOM,"V",1))
 Q SCA
 ;
CACB(DT) ;
 N DAT,SCR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCR=$G(@Z1@(DAT,NOM,"VD",1))
 Q SCR
 ;
SCR(DT) ;
 N DAT,SCR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCR=$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"VD",1))
 Q SCR
 ;
SASR(DT) ;
 N DAT,SASR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SASR=$G(@Z1@(DAT,NOM,"H",1))
 Q SASR
 ;
PC(TXT,SUM,J1,J2) ;
 I $G(J1)="" S J1=10
 I $G(J2)="" S J2=2
 Q $$TBTR1($$TR(TXT)_" : "_$J(SUM,J1,J2))
 ;
SAH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"F",1))+$G(@Z1@(DAT,NOM,"G",1))+$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"H",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))
 Q SAH
 ;
SAHNOTIP(DT)
 N SAHNOTIP S SAHNOTIP=$$SAH(DT)-$$TIP(DT)
 Q $$TBTR1($$TR($$TIPPS_" `ll zexikn")_" : "_$J(SAHNOTIP,10,2))
 ;
NETTO(DT) ;
 Q $$SAH(DT)-$$SASR(DT)
 ;
NETTONOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTO(DT)-$$TIP(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll oeict")_" : "_$J(PDNOTIP,10,2))
 ;
PCASR(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"H",1))
 Q $$PC("dtwd",SAH)
 ;
SAHMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FS",1))+$G(@Z1@(DAT,NOM,"GS",1))+$G(@Z1@(DAT,NOM,"VS",1))+$G(@Z1@(DAT,NOM,"HS",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSD(SAH) ;
 Q $$PC("dcrqn k""dq",SAH)
 ;
NETTOMSD(DT) ;
 N NETTOMSD S NETTOMSD=$$SAHMSD(DT)-$G(@Z1@(DAT,NOM,"HS",1))
 Q NETTOMSD
 ;
PCNETTOMSD(SAH) ;
 Q $$TBTR1($$TR("dcrqn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TAWMSD(DT) ;
 Q $G(@Z1@(DAT,NOM,"FW",1))+$G(@Z1@(DAT,NOM,"GW",1))+$G(@Z1@(DAT,NOM,"VW",1))+$G(@Z1@(DAT,NOM,"HW",1))
 ;
TAWMSDQ(DT) ;
 Q $G(@Z1@(DAT,NOM,"FW#",1))+$G(@Z1@(DAT,NOM,"GW#",1))+$G(@Z1@(DAT,NOM,"VW#",1))+$G(@Z1@(DAT,NOM,"HW#",1))
 ;
PCSAHTAW(SAH) ;
 Q $$PC("zgwl zepnfd k""dq",SAH)
 ;
TIPMSD(DT)
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TS",1))
 ;
PCTIPMSD(TIP)
 Q $$PC("dcrqn "_$$TIPPS,TIP)
 ;
SAHMSDNOTIP(DT)
 N SAHMSDNOTIP S SAHMSDNOTIP=$$SAHMSD(DT)-$$TIPMSD(DT)
 Q $$PC($$TIPPS_" `ll dcrqn zexikn",SAHMSDNOTIP)
 ;
NETTOMSDNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSD(DT)-$$TIPMSD(DT)
 I PDNOTIP<0 Q ""
 Q $$PC($$TIPPS_" `ll dcrqn oeict",PDNOTIP)
 ;
PCASRMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HS",1))
 Q $$PC("dcrqn ztwd",SAH)
 ;
SSOAD(DT) ;
 N DAT,SSOAD
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SSOAD=$G(@Z1@(DAT,NOM,"SD",1))
 Q SSOAD
 ;
SAHMSL(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FL",1))+$G(@Z1@(DAT,NOM,"GL",1))+$G(@Z1@(DAT,NOM,"VL",1))+$G(@Z1@(DAT,NOM,"HL",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))+$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn k""dq")_" : "_$J(SAH,10,2))
 ;
NETTOMSL(DT) ;
 N NETTOMSL
 S NETTOMSL=$$SAHMSL(DT)-$G(@Z1@(DAT,NOM,"HL",1))
 Q NETTOMSL
 ;
PCNETTOMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TAWMSL(DT) ;
 Q $G(@Z1@(DAT,NOM,"FT",1))+$G(@Z1@(DAT,NOM,"GT",1))+$G(@Z1@(DAT,NOM,"VT",1))+$G(@Z1@(DAT,NOM,"HT",1))
 ;
TAWMSLQ(DT) ;
 Q $G(@Z1@(DAT,NOM,"FT#",1))+$G(@Z1@(DAT,NOM,"GT#",1))+$G(@Z1@(DAT,NOM,"VT#",1))+$G(@Z1@(DAT,NOM,"HT#",1))
 ;
TIPMSL(DT) ;
 N DAT
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TL",1))
 ;
PCTIPMSL(TIP)
 Q $$PC("migelyn "_$$TIPPS,TIP)
 ;
SAHMSLNOTIP(DT)
 N SAHMSLNOTIP S SAHMSLNOTIP=$$SAHMSL(DT)-$$TIPMSL(DT)
 I SAHMSLNOTIP'>0 Q ""
 Q $$PC($$TIPPS_" `ll mikelyn zexikn",SAHMSLNOTIP)
 ;
NETTOMSLNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSL(DT)-$$TIPMSL(DT)
 I PDNOTIP<0 Q ""
 Q $$PC($$TIPPS_" `ll migelyn oeict",PDNOTIP)
 ;
ASRMSL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HL",1))
 Q $$PC("migelyn ly dtwd",SAH)
 ;
SAHTAW(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$$TAWMSD(DT)+$$TAWMSL(DT)
 Q SAH
 ; 
BIT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"BIT",1))
 Q SAH
 ;
HNH(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MIN",1))+$G(@Z1@(DAT,NOM,"MIN2",1))
 S SAH=SAH-$$HNHL(DT)-$$HNHCIB(DT)-$$HNHT(DT)
 Q SAH
 ;
HNHL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHL",1))
 Q SAH
 ;
HNHT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MINT",1))
 Q SAH
 ;
HNHCIB(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHCIB",1))
 Q SAH
 ;
HNHP(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MINPAR",1))
 Q SAH
 ;
SOAD(DT)
 Q 0
 ;
MSL(DT)
 Q 0
 ;
DAT(DT) ;
 Q $ZD(DT,"YYMMDD")
 ;
TBTR(TXT)
 Q "<tr><td colspan=""2"">"_TXT_"</td></tr>"
 ;
TBTR1(TXT)
 Q "<tr><td>"_$P(TXT,":")_"</td><td>"_$P(TXT,":",2)_"</td></tr>"
 ;
TR(TXT) ;
 ;;Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 Q $$H2U^%L1FRM(TXT)
 ;
PDNOTIP(STAM) ;
 Q 1
 I $G(@$$^W4PRM@("TIPNT")),'$G(@$$^W4PRM@("TIPNO")) Q 1
 Q 0
 ;
USCOD(STAM) ;
 N MASOF S MASOF=$G(@$$^W4PRM@("ASH","MASOF"))
 I MASOF["0962305" Q "0077"
 Q $TR($J($E(MASOF,4,7),4)," ",0)
 ;
CMD(FL,KOT) ;
 N MSD,MSG,LINK,SMTP,USER,FILE,FROM,TO
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 S TO=$G(@$$^W4PRM@("MAILZ","TO"))
 I TO'="" D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N I F I=1:1:4 D
 .S TO=$G(@$$^W4PRM@("MAILZ","TO"_I)) Q:TO=""
 .D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 Q
 ;
TIPPS(STAM) ;
 Q $$TIPPS^W4TOT
 ;
MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N CMD
 I TO'["@",TO'[".",$L(TO)<6 Q
 S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 ZSY CMD
 I $D(MAILZ) D
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2))=CMD
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2),"ZSY")=$ZSY_"\"_$ZD($H,"24:60")
 Q
 ;
TIPPD(DD)
 Q $$^W4TIPPD(DD)
 ;
OPENFL ; --> FL
 N PATH
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S FL=PATH_"ZM"_$ZD(DT,"YYMMDD")_".html"
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION)
 U FL
 Q
 ;
CLOSEFL(FL) ;
 N PATH C FL
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S KOT="Day-Report-"_$$^%L1MRK_"-"_$ZD(DT,"DD.MM.YY")
 S ^MAILZ=3
 D CMD(FL,KOT)
 Q
 ;
DOCHP(DT) ; 
 N (JB,%ARG,DT,DOCH,P1X)
 N DISP S DISP=1
 N P1TOT S P1TOT=DT
 N %ARG
 S %ARG("MIUN")=1
 I $G(@$$^W4PRM@("DOCHP","SORT")) S %ARG("MIUN")=^("SORT")
 S SET="",NS=""
 I $G(@$$^W4PRM@("DOCHP","NSET")) S SET=1,NS=^("NSET")
 S %ARG("SET")=SET 
 S %ARG("NS")=NS
 D PARZ^W4TELREP(DT,DT)
 Q
 ;
CREDIT() ; 
 Q ($D(@$$^W4GL("KLF"))>9)
 ;
PCSP ; 
 W $$TBTR("") 
 Q 
 ;
KAV ; 
 W "<tr><td colspan=""2""><hr style=""border-top:dotted black 1px;color:white""></td></tr>"
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILZB
W4MAILZB(DT) ; [ 13.07.17 17:19 ] [ 02.11.16 20:05 ] [ 31.10.16 19:04 ] 
 N (JB,%ARG,%REM,DT)
 ;
 D CRVRM(DT)
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"">",!
 ;;W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 W $$TBTR("<span style=""font-size:14pt"">"_$$H2U^%L1FRM($ZD(DT,"DD.MM.YY")_" jix`zl milehia g""ec")_"</span>"),!
 ;
 W $$TBTR("<hr>"),!
  W "<tr><td>"_$$H2U^%L1FRM("daiq")_"</td>"
  W " <td>"_$$H2U^%L1FRM("`vi")_"</td>"
  W " <td>"_$$H2U^%L1FRM("zenk")_"</td>"
  W " <td>"_$$H2U^%L1FRM("mekq")_"</td>"
  W "</tr>",!
 W $$TBTR("<hr>"),!
 ;
 K SKAM,SSUM
 S (SKAM,SSUM)=0
 S SIBA="" F  S SIBA=$O(@VRM@(SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM@(SIBA,SIBA1)) Q:SIBA1=""  D
 ..S EXIT="" F  S EXIT=$O(@VRM@(SIBA,SIBA1,EXIT)) Q:EXIT=""  D
 ...S A=$G(^(EXIT))
 ...W "<tr>"
 ...S SIBA1=$$RPL^%L1FRM(SIBA1,"%20"," ")
 ...S SIBA1=$$RPL^%L1FRM(SIBA1,"%2F","\")
 ...W " <td>"_$$H2U^%L1FRM(SIBA1)_"</td>"
 ...W " <td>"_$$H2U^%L1FRM($S(EXIT:"ok",1:"`l"))_"</td>"
 ...S KAM=-$P(A,"*") S SKAM=SKAM+KAM
 ...S SUM=-$P(A,"*",2) S SSUM=SSUM+SUM
 ...S SKAM(EXIT)=$G(SKAM(EXIT))+KAM
 ...S SSUM(EXIT)=$G(SSUM(EXIT))+SUM
 ...W " <td>"_$J(KAM,0,1)_"</td>"
 ...W " <td>"_$J(SUM,0,2)_"</td>"
 ...W "</tr>",!
 ;
 W $$TBTR("<hr>"),!
  W "<tr>"
  W " <td>"_$$H2U^%L1FRM("k""dq")_"</td><td>&nbsp;</td>"
  W " <td>"_$J(SKAM,1,1)_"</td><td>"_$J(SSUM,2,2)_"</td>"
  W "</tr>",!
 ;
 W $$TBTR("<hr>"),!
  W "<tr>"
  W " <td>"_$$H2U^%L1FRM("`vi k""dq")_"</td><td>&nbsp;</td>"
  W " <td>"_$J($G(SKAM(1)),1,1)_"</td><td>"_$J($G(SSUM(1)),2,2)_"</td>"
  W "</tr>",!
  W "<tr>"
  W " <td>"_$$H2U^%L1FRM("`vi `l k""dq")_"</td><td>&nbsp;</td>"
  W " <td>"_$J($G(SKAM(0)),1,1)_"</td><td>"_$J($G(SSUM(0)),2,2)_"</td>"
  W "</tr>",!
 W $$TBTR("<hr>"),!
 ;
 W "</table>",!
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP_"w4mailb.jsp?METRH="_DAT_"&ADTRH="_DAT
 W $$H2U^%L1FRM("hxetn milehia g""ecl wpil"),!
 W REF,!
 K @VRM
 Q
 ;
TBTR(TXT)
 Q "<tr><td colspan=""4"">"_TXT_"</td></tr>"
 ;
 ;
CRVRM(DT1,DT2) ;
 N (JB,%ARG,DT1,DT2,VRM,VRM1)
 I '$G(DT2) S DT2=DT1
 N METRH,ADTRH
 S METRH=$$^%L1DC(DT1,1)
 S ADTRH=$$^%L1DC(DT2,1)
 ;
 S VRM1=$$^W4MAIN("VRM1") K @VRM1
 D TRH^W4DPBITS
 ;
 D ^%W1PCVRM
 N SIBA,SIBA1,EXIT,WHODEL,PAR,SHAA,HZM,A,SKAM,SSUM
 ;
 S SIBA="" F  S SIBA=$O(@VRM@(SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM@(SIBA,SIBA1)) Q:SIBA1=""  D
 ..S EXIT="" F  S EXIT=$O(@VRM@(SIBA,SIBA1,EXIT)) Q:EXIT=""  D
 ...S (SKAM,SSUM)=0
 ...S WHODEL="" F  S WHODEL=$O(@VRM@(SIBA,SIBA1,EXIT,WHODEL)) Q:WHODEL=""  D
 ....S DT="" F  S DT=$O(@VRM@(SIBA,SIBA1,EXIT,WHODEL,DT)) Q:DT=""  D
 .....S SHAA="" F  S SHAA=$O(@VRM@(SIBA,SIBA1,EXIT,WHODEL,DT,SHAA)) Q:SHAA=""  D
 ......S HZM="" F  S HZM=$O(@VRM@(SIBA,SIBA1,EXIT,WHODEL,DT,SHAA,HZM)) Q:HZM=""  D
 .......S PAR="" F  S PAR=$O(@VRM@(SIBA,SIBA1,EXIT,WHODEL,DT,SHAA,HZM,PAR)) Q:PAR=""  D
 ........S A=$G(^(PAR))
 ........S SKAM=SKAM+$P(A,"*")
 ........S SSUM=SSUM+$P(A,"*",2)
 ...S @VRM@(SIBA,SIBA1,EXIT)=SKAM_"*"_SSUM
 Q
 ;
MYIP(STAM) ;
 N LINK S LINK=$G(@$$^W4PRM@("MYIP"))
 I LINK="" S LINK=$$WEB^W3MAIN
 Q LINK
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAILZC
W4MAILZC(DT) ; HAZAGAT TLUSHEY MATANA BE DOH SGIRAT YOM [ 16.03.16 10:49 ] [ 10.03.16 07:14 ] [ 07.03.16 10:21 ] 
 N (JB,%REM,%ARG,DT)
 D ^W4IN,^%L1TS D ^W4MDPPC S SM=5
 D CRVRM
 ;
 W "<div align=""center"" dir=""RTL"">",!
 W $$H2U^%L1FRM($$^%L1DC(DT,1)_" - l mipetew yenin g""ec")
 W "<table>",!
 W "<tr>",!
 W " <th>"
  W $$H2U^%L1FRM("dpnfd 'qn")
 W " </th>"
 W " <th>"
  W $$H2U^%L1FRM("oetew 'qn")
 W " </th>"
 W " <th>"
  W $$H2U^%L1FRM("mekq")
 W " </th>"
 W "</tr>",!
 D KAV
 ;
 S HZM="" F  S HZM=$O(@VRM@(HZM)) Q:HZM=""  D
 .S TL="" F  S TL=$O(@VRM@(HZM,TL)) Q:TL=""  D
 ..S A=$G(^(TL)),TL1=TL
 ..I TL<0  S TL1="'vig "_$J(-TL,7)
 ..W "<tr>"
 ..W " <td>"_$P(A,"\")_"</td>"
 ..W " <td>"_$$H2U^%L1FRM(TL1)_"</td>",!
 ..W " <td>"_$P(A,"\",2)_"</td>",!
 ..W "</tr>",!
 D KAV
 W "<tr>"
  W "<td>"_$$H2U^%L1FRM(" mipetew k""dq ")_"</td>"
  W "<td>"_COL_"</td>"
  W "<td>"_$J(SUM,7,2)_"</td>"
 W "</tr>"
 W "</table>",!
 W "</div>",!
 K @VRM
 Q
 ;
CRVRM ;
 D CRVRM^W4DTLM
 Q
 ;
KAV ;
 W "<tr><td colspan=""3""><hr></td></tr>",!
 Q
 
 
 
 
 

W4MAILZH
W4MAILZH(DT) ; [ 17.09.25 06:07 ] [ 04.06.17 13:38 ] [ 09.03.16 13:57 ] 
 N (JB,%ARG,%REM,DT)
 ;
 D CRVRM(DT)
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"">",!
 ;;W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 W $$TBTR("<span style=""font-size:14pt"">"_$$H2U^%L1FRM($ZD(DT,"DD.MM.YY")_" jix`zl zegpd g""ec")_"</span>"),!
 ;
 S VRM1=$$^W4MAIN("VRM1")
 ;
 G RKZ
 ;
 W $$TBTR("<hr>"),!
  W "<tr><td>"_$$H2U^%L1FRM("daiq")_"</td>"
  W " <td>"_$$H2U^%L1FRM("dpnfd")_"</td>"
  W " <td>"_$$H2U^%L1FRM("mihixtl dgpd")_"</td>"
  W " <td>"_$$H2U^%L1FRM("oeaygl dgpd")_"</td>"
  W "</tr>",!
 ;
 W $$TBTR("<hr>"),!
 K SSUM,SSUMP
 S SSUM=0,SSUMP=0
 S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ..S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:HZM=""  D
 ...S A=$G(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:A=""
 ...W "<tr>"
 ...W " <td>"_$$H2U^%L1FRM(SIBA1)_"</td>"
 ...W " <td>"_HZM_"</td>"
 ...S SUMP=+A S SSUMP=SSUMP+SUMP
 ...W " <td>"_$J(SUMP,0,2)_"</td>"
 ...S SUM=$P(A,"*",2) S SSUM=SSUM+SUM
 ...W " <td>"_$J(SUM,0,2)_"</td>"
 ...W "</tr>",!
 ;
 W $$TBTR("<hr>"),!
  W "<tr>"
  W "<td></td>"
  W " <td>"_$$H2U^%L1FRM("k""dq")
  W " <td>"_$J(SSUMP,2,2)_"</td>"
  W " <td>"_$J(SSUM,2,2)_"</td>"
  W "</tr>",!
 ;
 W "</table>",!
 ;
 D LINK
 K @VRM1
 Q
 ;
 ;
TBTR(TXT)
 Q "<tr><td colspan=""3"">"_TXT_"</td></tr>"
 ;
 ;
CRVRM(DT) ;
 N METRH,ADTRH
 S METRH=$$^%L1DC(DT,1)
 S ADTRH=$$^%L1DC(DT,1)
 D TRH^W4DHNHA
 ;
 Q
 ;
RKZ ;
 W $$TBTR("<hr>"),!
  W "<tr><td>"_$$H2U^%L1FRM("daiq")_"</td>"
  W " <td>"_$$H2U^%L1FRM("mihixtl dgpd")_"</td>"
  W " <td>"_$$H2U^%L1FRM("oeaygl dgpd")_"</td>"
  W "</tr>",!
 W $$TBTR("<hr>"),!
 ;
 D RKZVRM1
 ;
 S (SSUM,SSUMP)=0
 S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ..S A=$G(@VRM1@(DT,SIBA,SIBA1)) Q:A=""
 ..S SUMP=+A S SSUMP=SSUMP+SUMP
 ..W "<tr>"
 ..W " <td>"_$$H2U^%L1FRM(SIBA1)_"</td>"
 ..W " <td>"_$J(SUMP,0,2)_"</td>"
 ..S SUM=$P(A,"*",2) S SSUM=SSUM+SUM
 ..W " <td>"_$J(SUM,0,2)_"</td>"
 ..W "</tr>",!
 ;
 W $$TBTR("<hr>"),!
  W "<tr>"
  W " <td>"_$$H2U^%L1FRM("k""dq")
  W " <td>"_$J(SSUMP,2,2)_"</td>"
  W " <td>"_$J(SSUM,2,2)_"</td>"
  W "</tr>",!
 ;
 W "</table>",!
 ;
 D LINK
 K @VRM1
 Q
 ;
RKZVRM1 ;
 N SSUM,SSUMP,SUMP,SUM,SIBA,SIBA1,HZM,A
 S (SSUM,SSUMP)=0
 S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D  S @VRM1@(DT,SIBA,SIBA1)=$G(SSUMP)_"*"_$G(SSUM)
 ..S SSUM=0,SSUMP=0
 ..S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:HZM=""  D
 ...S A=$G(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:A=""
 ...S SUMP=+A S SSUMP=SSUMP+SUMP
 ...S SUM=$P(A,"*",2) S SSUM=SSUM+SUM
 Q
 ;
LINK ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP_"w4mailh.jsp?METRH="_DAT_"&ADTRH="_DAT
 W $$H2U^%L1FRM("hxetn zegpd g""ecl wpil"),!
 W REF,!
 Q
 ;
MYIP(STAM) ;
 Q $$MYIP^W4MAILZB
 
 
 
 

W4MAILZS
W4MAILZS(JB,DT) ; [ 01.12.20 10:44 ] [ 04.11.20 05:28 ] [ 01.07.20 19:00 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D OPENFL ; --> FL
 D BODY(JB,DT)
 D CLOSEFL(FL)
 Q
 ;
 ;
BODY(JB,DT)
 S MAILZ=""
 K ^MAILZ S ^MAILZ=1
 D ^%L1TS
 N SMSL,SMSD
 ;
 S (SMSL,SMSD,SSOAD)=0
 ;
 N N S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .S NMB=$P($G(@$$^W4ORD@(N)),"\") Q:NMB=""
 .N TS S TS=$P(^(N),"\",11)
 .N SIGN S SIGN=$S(TS<0:-1,TS>0:1,1:0)
 .I $L(NMB)<4 S SMSD=SMSD+SIGN Q
 .S SMSL=SMSL+SIGN
 ;
 S DAT=$$DAT(DT)
 ;
 S NOM=$O(@$$^W4GL("Z1")@(DAT,99999),-1) Q:'NOM
 ;
 W "<html><body><div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"">",!
 W $$TBTR("<span style=""font-size:12pt;text-align:center"">"_$$TR($$^%L1HEAD)_"</span>"),!
 I NOM W $$TBTR("<span style=""text-align:center"">"_$$TR(" ixeciq 'qn ")_" "_NOM_"</span>"),!
 W $$TBTR("<span style=""font-size:14pt"">"_$$TR($ZD(DT,"DD.MM.YY")_" jix`zl itqk g""ec")_"</span>"),!
 W $$TBTR("<hr>"),!
 S Z1=$$^W4GL("Z1")
 ;
 S MZM=$$MZM(DT)
 S SAH=$$SAH(DT)
 S TIP=$$TIP(DT)
 S DMSH=$$DMSH(DT)
 ;
 D SCOMP^W4TOT(DT,DT)
 ;
 W $$PC("onefn",MZM)
 ;
 N MZMN S MZMN=MZM
 S MZMN=MZM-TIP
 W $$PC("ehp onefn",MZMN)
 ;
 N MZMD S MZMD=$$MZMD(DT)
 N MZMA S MZMA=MZMN+MZMD
 W $$PC("zelaw onefn",MZMD)
 W $$PC("zelaw llek onefn",MZMA)
 ;
 D SPACE
 ;
 W $$PC("wiy",$$CHK(DT))
 ;
 D SPACE
 ;
 W $$PCTIP(TIP)
 S TIPMSD=$$TIPMSD(DT)
 W $$PCTIPMSD(TIPMSD)
 S TIPMSL=$$TIPMSL(DT)
 W $$PCTIPMSL(TIPMSL)
 D SPACE
 ;
 W $$PC("dtew `""k k""dq",$$SCA(DT))
 W $$PC("zelaw i`xy` iqihxk",$$CACB(DT))
 W $$PC("xz`n `""k k""dq",$G(SCAOUT))
 W $$PC("hi`ciit `""k k""dq",$G(SPAIDCA))
 W $$PC("zelaw llek `""k k""dq",$$SCR(DT))
 D SPACE
 ;
 S SSOAD=+$$SSOAD(DT)
 W $$PC("micreq 'qn",SSOAD)
 ;
 S SAHMSD=$$SAHMSD(DT)
 I SSOAD D
 .W $$PC("creql rvenn",SAHMSD/SSOAD)
 ; 
 I SMSL D
 .S SAHMSL=$$SAHMSL(DT)
 .W $$PC("gelynl rvenn",SAHMSL/SMSL)
 ;
 W $$PC("migelyn 'qn",SMSL,7,0)
 ;
 W $$PC("gelyn inc k""dq",$G(SDMS))
 D SPACE
 ;
 W $$PC("qia oz",$G(STENB))
 W $$PC("daiyi qeaiq",SCIBR)
 W $$PC("migelyn qeaiq",SCIBM)
 W $$PC("qeaiq k""dq",SCIB)
 W $$PC("WOLT k""dq",SWOLT)
 W $$PC("xz`n itqk k""dq",SATAR)
 W $$PC("xz`n zepnfd k""dq",SATARQ)
 D SPACE
 ;
 S BIT=$$BIT(DT)
 W $$PC("milehia",BIT)
 S HNH=$$HNH(DT)
 W $$PC("mildpn zegpd",HNH)
 S HNHP=$$HNHP(DT)
 W $$PC("mihixtl zegpd",HNHP)
 S HNHL=$$HNHL(DT)
 W $$PC("zegewl zegpd",HNHL)
 ;
 S SAHMSD=$$SAHMSD(DT)
 W $$PCSAHMSD(SAHMSD)
 
 S SAHMSL=$$SAHMSL(DT)
 W $$PCSAHMSL(SAHMSL)
 W $$PC("hi`ciit k""dq",SPAIDIT)
 ;
 W $$PC("dcrqn ehp oeict",$$NETTOMSD(DT))
 W $$PCNETTOMSL($$NETTOMSL(DT))
 W $$PC("ehp oeict",$$NETTO(DT))
 D SPACE
 ;
 S SUMP=$J(SAH+$G(HNH)+$G(HNHCIB)+$G(HNHT)+$G(HNHL)-$G(DMSH)-$S($$TIPPD(DT):$G(TIP),1:0),2,2)
 S SUMB=$J(SUMP+$G(BIT)+$G(DMSH),2,2)
 I '$$TIPPD(DT) S SUMB=SUMB+$G(TIP)
 W $$PC("mihixt zexikn k""dq",SUMP)
 W $$PC("zexikn",SAH)
 W $$PC("ehexa k""dq",SUMB)
 D SPACE
 ;
 W "</table>",!
 ;
 I $G(@$$^W4PRM@("ZXBIT")) D ^W4MAILZB(DT),^W4MAILZH(DT)
 ;
 I $G(@$$^W4PRM@("ZDTLM")) D ^W4MAILZC(DT)
 ;
 I $G(@$$^W4PRM@("DOCHP")) D
 .K @$$^W4MAIN("TMPS111")
 .D
 ..I $G(@$$^W4PRM@("DOCHP"))=2 D  Q
 ...N DOCH S DOCH="DEP"
 ...N P1TOT S P1TOT=$ZD(DT,"DD.MM.YY")_" jix`zl"
 ...S DISP=1,NOBACKBUT=""
 ...D PARZ^W4TELREP(DT,DT)
 ..
 ..D DOCHP(DT)
 .D VIEW^W4TELREP
 .K @$$^W4MAIN("TMPS111")
 ;
 S NOBACKBUT=""
 D ^W4DLK(DT,DT,1)
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP^W4MAILZB_"w4csrrep1.jsp?JB=1&MEDATE="_DAT_"&ADDATE="_DAT_"&CODREP=MSH&FIRST=1"
 W $$H2U^%L1FRM("migily g""ecl wpil"),!
 W REF,!
 ;
 W !!
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S REF=$$MYIP^W4MAILZB_"w4csrrep1.jsp?JB=1&MEDATE="_DAT_"&ADDATE="_DAT_"&CODREP=DCLK&FIRST=1"
 W $$H2U^%L1FRM("micaer zery g""ecl wpil"),!
 W REF,!
 ;
 W "</div></body></html>",!
 Q
 ;
 ;
TIP(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N TIP S TIP=$G(@Z1@(DAT,NOM,"T",1))
 Q TIP
 ;
DMSH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 N DMSH S DMSH=$G(@Z1@(DAT,NOM,"DMSH",1))
 Q DMSH
 ;
PCTIP(TIP) ;
 Q $$TBTR1($$TR($$TIPPS)_" : "_$J(TIP,10,2))
 ;
MZM(DT) ;
 N DAT,MZM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S MZM=$G(@Z1@(DAT,NOM,"F",1))
 I $$TIPNO^W4TIPPD(DT) S MZM=MZM-$G(@Z1@(DAT,NOM,"T",1))
 Q MZM
 ;
MZMD(DT) ;
 N DAT,MZM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S MZM=$G(@Z1@(DAT,NOM,"FD",1))
 Q MZM
 ;
CHK(DT) ;
 N DAT,CHK
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S CHK=$G(@Z1@(DAT,NOM,"G",1))
 Q CHK
 ;
SCA(DT) ;
 N DAT,SCA
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCA=$G(@Z1@(DAT,NOM,"V",1))
 Q SCA
 ;
CACB(DT) ;
 N DAT,SCR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCR=$G(@Z1@(DAT,NOM,"VD",1))
 Q SCR
 ;
SCR(DT) ;
 N DAT,SCR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SCR=$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"VD",1))
 Q SCR
 ;
SASR(DT) ;
 N DAT,SASR
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SASR=$G(@Z1@(DAT,NOM,"H",1))
 Q SASR
 ;
PC(TXT,SUM,J1,J2) ;
 I $G(J1)="" S J1=10
 I $G(J2)="" S J2=2
 Q $$TBTR1($$TR(TXT)_" : "_$J(SUM,J1,J2))
 ;
SAH(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"F",1))+$G(@Z1@(DAT,NOM,"G",1))+$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"H",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))
 Q SAH
 ;
SAHNOTIP(DT)
 N SAHNOTIP S SAHNOTIP=$$SAH(DT)-$$TIP(DT)
 Q $$TBTR1($$TR($$TIPPS_" `ll zexikn")_" : "_$J(SAHNOTIP,10,2))
 ;
NETTO(DT) ;
 Q $$SAH(DT)-$$SASR(DT)
 ;
NETTONOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTO(DT)-$$TIP(DT)
 I PDNOTIP<0 Q ""
 Q $$TBTR1($$TR($$TIPPS_" `ll oeict")_" : "_$J(PDNOTIP,10,2))
 ;
PCASR(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"H",1))
 Q $$PC("dtwd",SAH)
 ;
SAHMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FS",1))+$G(@Z1@(DAT,NOM,"GS",1))+$G(@Z1@(DAT,NOM,"VS",1))+$G(@Z1@(DAT,NOM,"HS",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSD(SAH) ;
 Q $$PC("dcrqn k""dq",SAH)
 ;
NETTOMSD(DT) ;
 Q $$SAHMSD(DT)-$G(@Z1@(DAT,NOM,"HS",1))
 ;
PCNETTOMSD(SAH) ;
 Q $$TBTR1($$TR("dcrqn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSD(DT)
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TS",1))
 ;
PCTIPMSD(TIP)
 Q $$PC("dcrqn "_$$TIPPS,TIP)
 ;
SAHMSDNOTIP(DT)
 N SAHMSDNOTIP S SAHMSDNOTIP=$$SAHMSD(DT)-$$TIPMSD(DT)
 Q $$PC($$TIPPS_" `ll dcrqn zexikn",SAHMSDNOTIP)
 ;
NETTOMSDNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSD(DT)-$$TIPMSD(DT)
 I PDNOTIP<0 Q ""
 Q $$PC($$TIPPS_" `ll dcrqn oeict",PDNOTIP)
 ;
PCASRMSD(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HS",1))
 Q $$PC("dcrqn ztwd",SAH)
 ;
SSOAD(DT) ;
 N DAT,SSOAD
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SSOAD=$G(@Z1@(DAT,NOM,"SD",1))
 Q SSOAD
 ;
SAHMSL(DT) ;
 N DAT,SAH
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"FL",1))+$G(@Z1@(DAT,NOM,"GL",1))+$G(@Z1@(DAT,NOM,"VL",1))+$G(@Z1@(DAT,NOM,"HL",1))
 I '$$TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))+$G(@Z1@(DAT,NOM,"TS",1))
 Q SAH
 ;
PCSAHMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn k""dq")_" : "_$J(SAH,10,2))
 ;
NETTOMSL(DT) ;
 Q $$SAHMSL(DT)-$G(@Z1@(DAT,NOM,"HL",1))
 ;
PCNETTOMSL(SAH) ;
 Q $$TBTR1($$TR("migelyn ehp oeict")_" : "_$J(SAH,10,2))
 ;
TIPMSL(DT) ;
 N DAT
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 Q $G(@Z1@(DAT,NOM,"TL",1))
 ;
PCTIPMSL(TIP)
 Q $$PC("migelyn "_$$TIPPS,TIP)
 ;
SAHMSLNOTIP(DT)
 N SAHMSLNOTIP S SAHMSLNOTIP=$$SAHMSL(DT)-$$TIPMSL(DT)
 I SAHMSLNOTIP'>0 Q ""
 Q $$PC($$TIPPS_" `ll mikelyn zexikn",SAHMSLNOTIP)
 ;
NETTOMSLNOTIP(DT) ;
 N PDNOTIP S PDNOTIP=$$NETTOMSL(DT)-$$TIPMSL(DT)
 I PDNOTIP<0 Q ""
 Q $$PC($$TIPPS_" `ll migelyn oeict",PDNOTIP)
 ;
ASRMSL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HL",1))
 Q $$PC("migelyn ly dtwd",SAH)
 ;
BIT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"BIT",1))
 Q SAH
 ;
HNH(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MIN",1))+$G(@Z1@(DAT,NOM,"MIN2",1))
 S SAH=SAH-$$HNHL(DT)-$$HNHCIB(DT)-$$HNHT(DT)
 Q SAH
 ;
HNHL(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHL",1))
 Q SAH
 ;
HNHT(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MINT",1))
 Q SAH
 ;
HNHCIB(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"HNHCIB",1))
 Q SAH
 ;
HNHP(DT) ;
 N DAT,SAH,NOM
 S DAT=$$DAT(DT) ;
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM 0
 S SAH=$G(@Z1@(DAT,NOM,"MINPAR",1))
 Q SAH
 ;
SOAD(DT)
 Q 0
 ;
MSL(DT)
 Q 0
 ;
DAT(DT) ;
 Q $ZD(DT,"YYMMDD")
 ;
TBTR(TXT)
 Q "<tr><td colspan=""2"">"_TXT_"</td></tr>"
 ;
TBTR1(TXT)
 Q "<tr><td>"_$P(TXT,":")_"</td><td>"_$P(TXT,":",2)_"</td></tr>"
 ;
TR(TXT) ;
 ;;Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 Q $$H2U^%L1FRM(TXT)
 ;
PDNOTIP(STAM) ;
 Q 1
 I $G(@$$^W4PRM@("TIPNT")),'$G(@$$^W4PRM@("TIPNO")) Q 1
 Q 0
 ;
USCOD(STAM) ;
 N MASOF S MASOF=$G(@$$^W4PRM@("ASH","MASOF"))
 I MASOF["0962305" Q "0077"
 Q $TR($J($E(MASOF,4,7),4)," ",0)
 ;
CMD(FL,KOT) ;
 N MSD,MSG,LINK,SMTP,USER,FILE,FROM,TO
 S FROM=$G(@$$^W4PRM@("MAILZ","FROM"))
 S SMTP=$G(@$$^W4PRM@("MAILZ","SMTP"))
 S USER=$G(@$$^W4PRM@("MAILZ","USER"))
 S PSW=$G(@$$^W4PRM@("MAILZ","PSW"))
 S TO=$G(@$$^W4PRM@("MAILZ","TO"))
 I TO'="" D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N I F I=1:1:4 D
 .S TO=$G(@$$^W4PRM@("MAILZ","TO"_I)) Q:TO=""
 .D MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 Q
 ;
TIPPS(STAM) ;
 Q $$TIPPS^W4TOT
 ;
MAILTO(FL,KOT,TO,FROM,SMTP,USER,PSW)
 N CMD
 I TO'["@",TO'[".",$L(TO)<6 Q
 S CMD="/pos/sbin/smail.py -m """_SMTP_""" -u """_USER_""" -p """_PSW_""" "
 S CMD=CMD_"-j """_KOT_"""  -s """_FROM_""" -y """_FROM_""" -r """_TO_""" "
 S CMD=CMD_"-b """_FL_"""" ;;;;;;;;;; -- b - body, -a - attach
 ZSY CMD
 ;
 I $D(MAILZ) D
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2))=CMD
 .S ^CMDZ($ZD($H,"YYMMDD"),$P($H,",",2),"ZSY")=$ZSY_"\"_$ZD($H,"24:60")
 Q
 ;
TIPPD(DD)
 Q $$^W4TIPPD(DD)
 ;
OPENFL ; --> FL
 N PATH
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S FL=PATH_"ZM"_$ZD(DT,"YYMMDD")_".html"
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION)
 U FL
 Q
 ;
CLOSEFL(FL) ;
 N PATH C FL
 S PATH=$$FUNC^%LCASE($G(@$$^W4PRM@("MAILZ","PATH")))
 I PATH'="",$E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S KOT="Day-Report-"_$$^%L1MRK_"-"_$ZD(DT,"DD.MM.YY")
 S ^MAILZ=3
 D CMD(FL,KOT)
 Q
 ;
DOCHP(DT) ; 
 N (JB,%ARG,DT,DOCH,P1X)
 N DISP S DISP=1
 N P1TOT S P1TOT=DT
 N %ARG
 S %ARG("MIUN")=1
 I $G(@$$^W4PRM@("DOCHP","SORT")) S %ARG("MIUN")=^("SORT")
 S SET="",NS=""
 I $G(@$$^W4PRM@("DOCHP","NSET")) S SET=1,NS=^("NSET")
 S %ARG("SET")=SET 
 S %ARG("NS")=NS
 D PARZ^W4TELREP(DT,DT)
 Q
 ;
SPACE ; 
 W $$TBTR("&nbsp;")
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAIN
W4MAIN(GLB,JBB) ; [ 01.10.26 18:05 ] [ 17.09.26 12:18 ] [ 16.09.26 17:30 ] 
 I $$^W4GLLIN Q "^"_GLB_"($J)"
 ;;N W1JB S W1JB=$P($$^%W1JB,".") ; -- 14/02/21
 N W1JB S W1JB=$$^%W1JB
 I $G(JBB) S W1JB=$G(JBB)
 Q "^["""_$$^W3MAIN_"""]"_GLB_"("""_W1JB_""")"
 ;
BG(GLB) ;
 N A S A=$$W4MAIN(GLB)
 Q $E(A,1,$L(A)-1)_","
 ;
 ;
INIT ;
 D ^%W1ARG
 ;
 N TMPIZZA S TMPIZZA=$$^W4MAIN("TMPIZZA") K @TMPIZZA
 I $$SUPER^W3PRM J ^W4TMPWRD(JB)
 D BDKPIZZA("P1EZA")
 I '$G(@TMPIZZA) D BDKPIZZA("P1EZT")
 ;
 D ^W4BGBODY
 I $L($G(%ARG("LNG"))) D PUT^%W1PRM("LNG",%ARG("LNG"))
 I $L($G(%ARG("KBENG"))) D PUT^%W1PRM("KBENG",%ARG("KBENG"))
 D ^W4CSS
 ;
 I $G(@$$^W4PRM@("SHVA1"))="" S @$$^W4PRM@("SHVA1")=1
 I $G(@$$^W4PRM@("BIGVT"))="" S @$$^W4PRM@("BIGVT")=1
 I $G(@$$^W4PRM@("NOPCLOAZ"))="" S @$$^W4PRM@("NOPCLOAZ")=1
 I $G(@$$^W4PRM@("CVVTZ"))="" S @$$^W4PRM@("CVVTZ")=1
 I $G(@$$^W4PRM@("MUCHIT"))="" S @$$^W4PRM@("MUCHIT")=1500
 I $G(@$$^W4PRM@("MUCHITGR"))="" S @$$^W4PRM@("MUCHITGR")=300
 ;
 I $$PSWDRG^W4PRM D SVASKWHO^W4PRMGN(0) ;
 ;
 I $G(@$$^W4PRM@("NOMULTY"))="" D
 .I $G(@$$^W4PRM@("MULTY"))?1N S @$$^W4PRM@("NOMULTY")='@$$^W4PRM@("MULTY") Q
 .N DAT,DT S DAT=$P($$DATCB^W4HZMST(1)," ")
 .S DT=$$^%L1DC(DAT,3)
 .I DT<$$^%L1DC("01.10.18",3) S @$$^W4PRM@("NOMULTY")=1 Q
 .S @$$^W4PRM@("NOMULTY")=0
 ;
 I $G(@$$^W4GL("P1SL")@(-1))="",$$^%W1LNG="H" D
 .S @$$^W4GL("P1SL")@(-1)="zgwl"
 ;
 N N S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D
 .N A S A=$G(^(N,1))
 .I A?.P1A.E M @$$^W4GL("NAME0")@(N)=@$$^W4GL("NAME")@(N)
 ;
 K @$$^W4MAIN("devp") D INIT^W4MYDVN
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 S ^[$$^W3MAIN]devpi(MYDVN)=JB
 ;
 K ^[$$^W3MAIN]TMPMLZ(JB),^[$$^W3MAIN]TMPS(JB)
 K @$$^W4PARCAT ; --- 19.12.17
 ;
 D KILL^%W1PRM("KUP")
 D KILL^%W1PRM("W4BO")
 D KILL^%W1PRM("DLVCSR"),KILL^%W1PRM("NMB")
 D KILL^%W1PRM("HZM"),KILL^%W1PRM("IFRURSH")
 D KILL^%W1PRM("SISALL")
 ;
 D PUT^%W1PRM("IFRUR",0)
 D:+$G(MSD) PUT^%W1PRM("MSD",MSD)
 S:+$G(MSD)=0 MSD=$$GETP^%W1PRM("MSD")
 D:$G(%REM) PUT^%W1PRM("REM",%REM)
 D PUT^%W1PRM("ELPOS",1)
 D PUT^%W1PRM("PRKUP",1)
 I $G(%ARG("TABLET"))?1N D PUT^%W1PRM("TABLET",$G(%ARG("TABLET")))
 D PUT^%W1PRM("MGR",+$G(%ARG("MGR")))
 ;
 I $G(%ARG("MSDR"))?1N.N D
 .D PUT^%W1PRM("MSDR",%ARG("MSDR"))
 .D PUT^%W1PRM("MSDR0",%ARG("MSDR"))
 ;
 I $G(%ARG("MMCC"))'="" D
 .I $G(%ARG("MSD"))?1N.N D
 ..D PUT^%W1PRM("MSD0",%ARG("MSD"))
 .
 .D PUT^%W1PRM("MMCC",%ARG("MMCC"))
 .I %ARG("MMCC") D PUT^%W1PRM("CALLCENTER",.5)
 .I $$GETP^%W1PRM("MSDR0") D PUT^%W1PRM("MSDR",$$GETP^%W1PRM("MSDR0"))
 .I $$GETP^%W1PRM("MSD0") D PUT^%W1PRM("MSD",$$GETP^%W1PRM("MSD0"))
 ;
 D KILL^%W1PRM("ASHRAM")
 D KILL^%W1PRM("W4LKH")
 D KILL^%W1PRM("NMAP")
 D KILL^%W1PRM("MRKTO")
 D KILL^%W1PRM("W4CP")
 D KILL^%W1PRM("PRSNLSET")
 D KILL^%W1PRM("PRSNLMENU")
 D KILL^%W1PRM("PRSNLCUR")
 D KILL^%W1PRM("MNL")
 ;
 I '$G(%ARG("CALLCENTER")),$G(@$$^W4GL("CCPOS")@(MYDVN)) D
 .N A S A=@$$^W4GL("CCPOS")@(MYDVN)
 .S %ARG("CALLCENTER")=A
 ;
 I $G(%ARG("CALLCENTER"))'="" D
 .D PUT^%W1PRM("CALLCENTER",%ARG("CALLCENTER"))
 .D PUT^%W1PRM("ELPOS",$G(%ARG("CALLCENTER")))
 ;
 ;;I $$^W4DLVCSR,$D(@$$^W4GL("P1SL"))<10 S @$$^W4PRM@("SLAU")=1
 ;
 D ^W4SH2UL
 ;
 N TMRLD S TMRLD=$G(^|$$^W3MAIN|W4RLD)
 ;
 I $G(@$$^W4PRM@("MAINRLD")),$$DIF^%L1TIME($H,TMRLD)>120 D
 .D ^W4RLD ; -- 30/06/25
 .S ^|$$^W3MAIN|W4RLD=$H
 ;
 ;;I $G(@$$^WVG@("LKH")),$D(@$$^W4GL("W4VCI"))<10 D ^W4CRVCI
 ;
 J CRPLUTOTI(JB)
 ;
 I $$SLAU^W4PRM!$$PAPJ^W4PRM D SLAU
 I $G(@$$^W4PRM@("SHBAU"))!$$PAPJ^W4PRM D SHBAU
 ;
 I $D(@$$^W4GL("P1SETA"))<10 D
 .D CRSETI($$^W4GL("P1SETA"))
 ;
 S @$$^W4MDPSUG@(0)="DISPLAY"
 S @$$^W4MDPSUG@(1)="TM-U220"
 S @$$^W4MDPSUG@(6)="CBM-231"
 S @$$^W4MDPSUG@(8)="XP-80"
 S @$$^W4MDPSUG@(9)="CBM-231"
 ;
 I $$^%W1LNG="H" D
 .S @$$^W4GL("W4MAM")@(0)="n""rn `ll"
 .S @$$^W4GL("W4MAM")@(1)="n""rn mr"
 .
 .S @$$^W4GL("W4SUGT")@("V")="i`xy`.k" ;"i`xy` qihxk"
 .S @$$^W4GL("W4SUGT")@("MZ")="onefn"
 .
 .S @$$^W4GL("W4OK")@(0)="NOK"
 .S @$$^W4GL("W4OK")@(1)="OK"
 ;
 I '$D(@$$^W4GL("P1SBR")) D
 .S @$$^W4GL("P1SBR")@(1)="mr"
 .S @$$^W4GL("P1SBR")@(2)="ila"
 .S @$$^W4GL("P1SBR")@(3)="cva"
 .S @$$^W4GL("P1SBR")@(4)="hrn"
 .S @$$^W4GL("P1SBR")@(5)="daxd"
 ;
 I '$D(@$$^W4GL("W4DIAP")) D
 .S @$$^W4GL("W4DIAP")@(0)="mlek"
 .S @$$^W4GL("W4DIAP")@(1)="dtew/dcrqn"
 .S @$$^W4GL("W4DIAP")@(2)="migelyn"
 .S @$$^W4GL("W4DIAP")@(3)="TAW"
 ;
 I $G(%ARG("VIP")) D
 .N DEV S DEV=$O(@$$^W4DEV@(99999),-1)+1
 .S @$$^W4DEVI@(%REM)=DEV
 .S @$$^W4DEV@(DEV)=%REM
 .S @$$^W4DEV@(DEV,"H")="VIP"
 .M @$$^W4PLUK@(DEV)=@$$^W4PLUK@(1)
 ;
 ;;I $$PAPJ^W4PRM,'$D(@$$^W4GL("W4ZICD")) D ^W4CRLNKZ
 ;
 S @$$^W4GL("LEVKVZ")@(0)="micaer zveaw xga"
 ;
 S @$$^W4GL("W4SUGHZ")@(1)="mewna zepnfd"
 S @$$^W4GL("W4SUGHZ")@(2)="migelyn"
 S @$$^W4GL("W4SUGHZM")@(1)="migelyn"
 S @$$^W4GL("W4SUGHZM")@(2)="zgwl"
 ;
 I $$NEWMLY^W4PRM,$G(@$$^W4GL("W3PRM")@("NOVWOLD")),'$G(@$$^W4GL("W4TMPPAR")@(+$$^W4DZ)) D CRTMPPAR(JB)
 ;
 I $$MM^W4PRM D
 .N N,GL S N="" F  S N=$O(^[$$^W3MAIN]SHP("%GSPAR",N)) Q:N=""  D
 ..S GL=$G(^(N))
 ..I $E(GL)="^" S GL=$E(GL,2,20)
 ..Q:GL=""
 ..S ^[$$^W3MAIN]W4MMGL(GL)=""
 .S N="" F  S N=$O(^[$$^W3MAIN]SHP("W4MMGL",N)) Q:N=""  D
 ..S GL=$G(^(N))
 ..I $E(GL)="^" S GL=$E(GL,2,20)
 ..Q:GL=""
 ..S ^[$$^W3MAIN]W4MMGL(GL)=""
 ;
 I $$REHEV^W4PRM D
 .I '$$DELIS^W4PRM D
 ..S @$$^W4GL("W4SUGRHV")@(1)="ehe`"
 ..S @$$^W4GL("W4SUGRHV")@(2)="rephw"
 ..S @$$^W4GL("W4SUGRHV")@(3)="ipevig"
 ..S @$$^W4GL("W4CAR")@(-1)=3
 .I $$DELIS^W4PRM D
 ..S @$$^W4GL("W4SUGRHV")@(1)="xexw akx"
 ..S @$$^W4GL("W4SUGRHV")@(2)="ebpilxa"
 ..S @$$^W4GL("W4SUGRHV")@(3)="lecb xexiw"
 ..S @$$^W4GL("W4SUGRHV")@(4)="xexw ila"
 ..S @$$^W4GL("W4SUGRHV")@(5)="repte`"
 ..S @$$^W4GL("W4SUGRHV")@(6)="ipevig"
 ..S @$$^W4GL("W4CAR")@(-1)=6
 Q
 ;
CRPLUTOTI(JB) ;
 I '$D(@$$^W4GL("PLUTOTI")) D
 .S DAT="" F  S DAT=$O(@$$^W4GL("PLUTOT")@(DAT)) Q:DAT=""  D
 ..S MRK="" F  S MRK=$O(@$$^W4GL("PLUTOT")@(DAT,MRK)) Q:MRK=""  D
 ...S PAR="" F  S PAR=$O(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) Q:PAR=""  D
 ....I '$D(@$$^W4GL("PLUTOTI")@(PAR,MRK,DAT)) S ^(DAT)=""
 Q
 ;
PSWREMOTE(STAM) ;
 I $G(%REM)["192.168." Q 0
 I $G(%REM)["127.0." Q 0
 I '$$PSWREM^W4PRM Q 0
 I $$GETP^%W1PRM("MGR") Q 0
 N MYDVN S MYDVN=$$^W4MYDVN_($P($H,",",2)\60)
 I $G(@$$^W4GL("W4PSWREM")@($$^W4DZ,MYDVN)) Q 0
 I $$VIP Q 0
 Q 1
 ;
VIP() ;
 N A S A=$G(@$$^W4DEV@($$^W4MYDVN,"H"))
 N A1 S A1=$$FUNC^%UCASE(A)
 I A1="REM"!(A1="VIP")!(A1="LEV")!(A1="DIMA")!(A="AL")!(A="DNIC") Q 1
 Q 0
 ;
CRSETI(GL) ;
 N SET,N
 K @(GL_"I")
 S SET="" F  S SET=$O(@GL@(SET)) Q:SET=""  D
 .S N="" F  S N=$O(@GL@(SET,N)) Q:N=""  D
 ..S @(GL_"I")@(N,SET)=""
 Q
 ;
MSDR(MSD) ; 
 I $$MSDR^W4PRM!'$G(MSD) Q +$$MSDR^W4PRM 
 N OK S OK=0
 N N S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(N)) Q:N=""  D  Q:OK
 .I $D(^[$$^W3MAIN]W3MSDR(N,MSD)) S OK=N
 Q OK
 ;
MSD(STAM) ; 
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 Q $$GETP^%W1PRM("MSD")
 ;
BDKPIZZA(EZ) ;
 S TMPIZZA=$$^W4MAIN("TMPIZZA")
 N N,N1,N2,NMP,NSET
 S N="" F  S N=$O(@$$^W4GL(EZ)@(N)) Q:N=""  D  Q:$G(@TMPIZZA)
 .S N1="" F  S N1=$O(@$$^W4GL(EZ)@(N,N1)) Q:N1=""  D
 ..S NSET=$E(N1,2,20) Q:NSET=""
 ..S N2="" F  S N2=$O(@$$^W4GL("P1SETA")@(NSET,N2)) Q:N2=""  D
 ...S NMP=$$SHEM^W4P(N2) I NMP["()"!(NMP[")(")!(NMP["[]"),$$^W4TSF(N2) S @TMPIZZA=1
 Q
 ;
PIC(STAM) ;
 N PIC
 I $$MNCUR^W4PRM Q "w4mnc.jpg"
 I $$SUPER^W3PRM D  Q PIC ;; "w4super.png"
 .S PIC="mainbg.jpg"
 .I '$$EXIST^%L1ZOS($$WEBL^W3MAIN_PIC) S PIC="w4super.png"
 .I '$$EXIST^%L1ZOS($$WEBL^W3MAIN_PIC) S PIC="w4mainbg.jpg"
 I $G(@$$^W4PRM@("MAINPIC"))'="" Q ^("MAINPIC")
 Q "w4mainbg.jpg"
 ;
NEWINET(STAM) ; 
 N FL S FL=$$WEBL^W3MAIN_"newinetord"
 I $$EXIST^%L1ZOS(FL) D  Q 1
 .C FL:(DELETE)  
 .ZSY "rm "_FL
 Q 0 
 ;
BOLNG() ; 
 I $G(@$$^W4PRM@("BOENG"))="E" Q "E"
 I $G(@$$^W4PRM@("BOENG"))="H" Q "H"
 I $G(%ARG("LNG"))="E" Q "E" 
 Q "H" 
 ;
SLAU ; 
 N N,SHEM,KVZ,TEL,NOSLTV S NOSLTV=""
 S N=""  F  S N=$O(@$$^W4GNAME@(N)) Q:N=""  I N?5N D
 .S SHEM=$$GET1^W4LEVPR(N,"SHEM") S SHEM=$$SPA^%L1FRM(SHEM) Q:SHEM=""
 .S TEL=$$GET1^W4LEVPR(N,"TEL")
 .S TEL=$TR(TEL," -","") Q:TEL=""
 .S KVZ=$$KVZ^W4LEVPR(N)
 .D SETSL^W4LEVPR(N,SHEM)
 Q
 ;
SHBAU ;
 I $$^%L1DC($H,8)>5 Q
 N GLSHB S GLSHB=$$^W4GL("SHB") I $D(@GLSHB)<10 Q
 N DZ S DZ=$$^W4DZ
 I $D(@GLSHB@(+$H))!$D(@GLSHB@(DZ)) Q
 N DT S DT=$O(@GLSHB@(+$H)) I DT D
 .N TM S TM=$G(@GLSHB@(DT)) I TM'?2N1":"2N Q
 .N N S N="" F  S N=$O(@$$^W4GL("LEVKVZ")@(N)) Q:N=""  D
 ..S $P(^(N,1),"\",7)=TM
 ;
 N GLSHBEX S GLSHBEX=$$^W4GL("SHBEX") I $D(@GLSHBEX)<10 Q
 N DT S DT=$O(@GLSHBEX@(+$H)) I DT D
 .N TM S TM=$G(@GLSHBEX@(DT)) I TM'?2N1":"2N Q
 .N N S N="" F  S N=$O(@$$^W4GL("LEVKVZ")@(N)) Q:N=""  D
 ..S $P(^(N,1),"\",8)=""
 ..S $P(^(1),"\",16)=TM
 Q
 ;
 ; 
CRTMPPAR(JB)
 N TMPPAR
 S TMPPAR=$$^W4MAIN("TMPMLPAR") K @TMPPAR
 N DT S DT="" F  S DT=$O(@$$^W4GL("W4MLY")@(DT)) Q:DT=""  D
 .N PAR S PAR="" F  S PAR=$O(@$$^W4GL("W4MLY")@(DT,PAR)) Q:PAR=""  D
 ..S @TMPPAR@(PAR,DT)=""
 S @$$^W4GL("W4TMPPAR")@(+$$^W4DZ)=$H
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAMHB
W4MAMHB(STAM) ; [ 06.03.12 08:44 ] [
 I $G(@$$^W4PRM@("MAMHB")) Q 1
 Q 0

W4MANA
W4MANA ; [ 01.07.24 08:09 ] [ 12.06.22 20:55 ] [ 30.05.22 14:22 ] 
 N (JB,%ARG,%REM)
 D CLOSE
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" style=""width:80%;font-weight:bold;font-size:"_$$^W3FSZ(12)_""" cellpadding=""10px"">",!
 W "<caption >"_$$^%W1DICT("SIGNDISHNUMBER")_"</caption>",!
 N I
 ;
 S PRALL=0
 S NST=$E($G(%ARG("NST")),4,20)
 Q:'NST
 S ST=$G(@$$^W4TMPORD@(NST,"MANA"))
 D MN
 ;
 F I=0:1:15 Q:'$D(MN(I))  D
 .W "<tr height="""_$S($$1024^W4WDSCR:"30",1:"35")_"px"" >"
 . S CLR="white"
 . I ","_ST_","[(","_I_",") S CLR="yellow"
 . W "<td id=""td"_I_""" style=""text-align:center;background-color:"_CLR_""" "_$$^W4TOUCH_"=""Click('"_I_"')"">"
 .  W $G(MN(I))
 . W "</td>"
 .W "</tr>",!
 W "</table>",!
 ;
 W "<br>",!
 D CLOSE
 Q
 ;
CLOSE ;
 W "<input type=""button"" class=""btn"" value="""_$$^%W1DICT("CLOSE")_""" onClick=""Close()"" style=""color:red"" >",!
 W "<br>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N MN
 D MN
 ;
 D PUT^%W3DEB("W4MANA-SUBMIT","PRM=PRM")
 N SH,LIST
 S SH=$P(PRM,";") I 'SH Q 0
 S MANA=$P(PRM,";",2)
 I MANA?.P S MANA=""
 S @$$^W4TMPORD@(SH,"MANA")=MANA
 Q MANA_";"_$G(MN(MANA))
 ;
MN ;
 N I
 N MAXMANA S MAXMANA=5
 I $G(@$$^W4PRM@("MAXMANA")) S MAXMANA=^("MAXMANA")
 I MAXMANA>15 S MAXMANA=15
 I MAXMANA<2 S MAXMANA=2
 S MN(0)=""
 F I=1:1:MAXMANA S MN(I)=$$GETI^W4DEFMN(I)
 Q
 ;
SETGL ;
 N I,GL S GL=$$^W4GL("W4MANA")
 S @GL@(0)="dbvd `ll"
 F I=1:1:10 S @GL@(I)=$$GETI^W4DEFMN(I)
 Q
 
 
 
 
 
 
 
 
 

W4MAP
W4MAP ; [ 24.04.24 14:09 ] [ 27.07.22 12:08 ] [ 20.05.20 08:51 ] 
 Q
 ;
DIVBUT ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" "
  W "style=""position:absolute;top:"_$$^W4KF(670)_"px;left:0;width:100%"" >",!
 ;
 W "<table id=""tblbut"" border=""0"" cellspacing=""10px"" "
  W " style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""" "
 W ">"
 ;
 N WDBT S WDBT=15
 W " <tr style=""height:"_$$^W4KF(40)_"px"" >",!
  I $G(%ARG("FUNC1"))="DEL" D  G ENDTR
  .D BTN("sbmdel","SBMDEL","DelPlgn('"_$G(%ARG("CURRENT"))_"')",$$BTNPRM(WDBT,"green"))
  .D BTN("cancel","CANCELACTION","ReView()",$$BTNPRM(WDBT,"red"))
  ;
  I $$SHOW D BTN("newplgn","CREATENEWPLGN","CreateNewPlgn()",$$BTNPRM(WDBT,"green"))
  I $$SHOW&($D(@$$GLPLGN^W4PLGN)>9) D BTN("addpoint","EDITPLGN","Edit()",$$BTNPRM(WDBT,"green"))
  I $$SHOW&($D(@$$GLPLGN^W4PLGN)>9) D BTN("delplgn","DELPLGN","Del()",$$BTNPRM(WDBT,"red"))
  I $$CREATE!$$ADD D BTN("save","SAVEANDSHOW","SavePlgn()",$$BTNPRM(WDBT,"darkgreen"))
  I $$CREATE!$$ADD D BTN("cancel","EXITNOSAVE","ReView()",$$BTNPRM(WDBT,"red"))
  I $$SHOW D BTN("exit","EXIT","Exit()",$$BTNPRM(WDBT,"red"))
  ;
  W "<td id=""tdsel"" align=""center"" >" 
   W "<select id=""selplgn"" style=""visibility:hidden"
    I $$^W4TABLET=2 W ";font-size:"_$$^W3FSZ(11)
    W """ "
    W " onChange=""ChangePolygon()"" "
   W ">",!
     W "<option value=""0"" >"_$$^%W1DICT("CHOICEPOLYGON")_"</option>",!
     S I="" F  S I=$O(@$$GLPLGN^W4PLGN@(I)) Q:I=""  I I D
     .W "<option "
     . W " value="""_I_""" "
     .W ">"
     . W I_" "_$$H2U^%L1FRM($$NAME^W3AZRIDK($$NMAP^W4PLGN,I))
     .W "</option>",!
   W "</select>",!
  W "</td>"
  ;
  W "<td>&nbsp;</td>"
  W "<td>"
   W "<input type=""text"" id=""adr"" size=""30"" "
    I $$^W4TABLET=2 W "style=""font-size:"_$$^W3FSZ(11)_""" "
   W ">" 
   W $$NBSP^%L1FRM(2)
   W "<input type=""button"" id=""srch"" value=""Search"" onClick=""Search()"" "
    I $$^W4TABLET=2 W "style=""font-size:"_$$^W3FSZ(11)_""" "
   W ">" 
  W "</td>",!
ENDTR ;
 W "</tr>",!
ENDTB ;
 W "</table>",!
 W "</div>",!
 Q
 ;
BTN(ID,VL,PROC,STYLE) ;
 N CLASS
 W "<td "
  W " style="""_STYLE_""" "
  W " onClick="""_PROC_""" "
 W ">"
  W $$^%W1DICT(VL)
 W "</td>"
 Q
 ;
BTNPRM(WD,FG,BG) ;
 N ST S ST="background-color:lightgrey;text-align:center;"
 S ST=ST_"border:3px ridge white;cursor:pointer;font-weight:bold"
 I $G(WD) S ST=ST_";width:"_WD_"%"
 I $L($G(BG)) S ST=ST_";background-color:"_BG
 I $L($G(FG)) S ST=ST_";color:"_FG
 Q ST
 ;
NOTMP(STAM) ;
 I $D(@$$GLTMP^W4PLGN)<10 Q 1
 Q 0
 ;
TMP(STAM) ;
 Q '$$NOTMP
 ;
SHOW(STAM) Q $G(%ARG("FUNC"))="SHOW"
CREATE(STAM) Q $G(%ARG("FUNC"))="CREATE"
ADD(STAM) Q $G(%ARG("FUNC"))="ADD"
 ;
HD ; 
 N N,I,BGCOLOR,COLOR
 W "<table dir="""_$$^%W1DIR_""" style=""width:100%;height:100%;font-size:"_$$^W3FSZ(10)_";"_$$FONTFM^W4CSS1_""" >",! 
 W "<tr>"
   I $G(%ARG("NP")) D
   .S I=%ARG("NP")
   .W "<td style=""text-align:center;color:red;font-weight:bold;font-size:"_$$^W3FSZ(14)_""" >"
   . W I_" "_$$H2U^%L1FRM($$NAME^W3AZRIDK($$NMAP^W4PLGN,I))
   .W "</td>"
   ;
   I '$G(%ARG("NP")) D
   .S I="" F  S I=$O(@$$GLPLGN^W4PLGN@(I)) Q:I=""  I I D
   ..S BGCOLOR="white",COLOR="green"
   ..I $$NPLGN^W4PLGN,I=$$NPLGN^W4PLGN S BGCOLOR="red",COLOR="white"
   ..W "<td id=""tdazr"_I_""" style=""text-align:center;background-color:"_BGCOLOR_";color:"_COLOR_";border:3px lightgrey ridge"" "
   .. W " onClick=""Current('"_I_"')"" "
   ..W ">"
   .. W I_" <span style=""color:"_COLOR_""">"_$$H2U^%L1FRM($$NAME^W3AZRIDK($$NMAP^W4PLGN,I))_"</span>"
   ..W "</td>"
   .
   .I $G(%ARG("CLOSE")) D
   ..W "<td id=""tdazr"_I_""" style=""cursor:pointer;text-align:center;background-color:white;color:red;border:3px lightgrey ridge;font-size:"_$$^W3FSZ(14)_""" "
   .. W " onClick=""Close()"" "
   ..W ">"_$$^%W1DICT("CLOSE")_"</td>"
   ..
 W "</tr>",!
 W "</table>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MAPPRM
W4MAPPRM ; [ 12.05.20 14:43 ] [ 03.09.17 13:32 ] [ 31.08.17 17:14 ] 
 Q
 ;
GL(STAM) ;
 Q $$^W4GL("W4MAPPRM")
 ;
NAME(NMAP) ;
 Q $G(@$$GL@(NMAP))
 ;
CITY(NMAP) ;
 Q $P($G(@$$GL@(NMAP,1)),"\")
 ;
CENTER(NMAP) ;
 Q $P($G(@$$GL@(NMAP,1)),"\",2)
 ;
ZOOM(NMAP) ;
 Q $P($G(@$$GL@(NMAP,1)),"\",3)
 ;
MAPLAT(NMAP) ;
 N CENTER
 S CENTER=$$CENTER(NMAP)
 I CENTER["," Q $P(CENTER,",")
 Q $P(CENTER,";")
 ;
MAPLNG(NMAP) ;
 N CENTER
 S CENTER=$$CENTER(NMAP)
 I CENTER["," Q $P(CENTER,",",2)
 Q $P(CENTER,";",2)
 ;
GETPRM(NMAP) ;
 Q $$ZOOM(NMAP)_";"_$$MAPLAT(NMAP)_";"_$$MAPLNG(NMAP)
 
 
 
 
 

W4MDBPAR
W4MDBPAR(PRM) ; [ 01.08.21 14:33 ] [ 03.12.19 12:38 ] [ 21.11.19 17:24 ] 
 N (JB,%ARG,%REM,PRM)
 ;;S ^AA("W4MDBPAR","PRM")=PRM
 S PAR=$P(PRM,";")
 S COL=$P(PRM,";",2)
 S PRNLAB=$P(PRM,";",3)
 I COL<1 Q "LABQNWRONG"
 S MDP=$$PRINTIG^W3PRMDP(PAR)
 ;
 S MHP=$$MH^W4P(PAR)
 .;;W "CD="_CD_"  MDP="_MDP_" MHP="_MHP,! ;
 S MDP=$$^W4DEFMDP(MDP,1111111)
 I $$SF^W4PRM,PRNLAB,MDP'[">" S MDP=MDP_">2"
 ;
 I MDP'[">" Q "LABELPRINTERNOTDEFINED"
 S PRINT=$$PORT^W4P($$MDPMDB^W4MDBPC(MDP)) I 'PRINT Q "LABELPRINTERNOTDEFINED"
 S MDPS=$$MDPS^W4MDBPC(PRINT)
 D TV^W4MDP(MDPS)
 ;
 F II=1:1:COL D
 .D MDBBG^W4MDBPC(PRINT)
 .D MDBPAR(PAR,PRINT)
 .D CLSNBC^W4MDBPC(PRINT)
 Q 1
 ;
MDBPAR(PAR,PRINT) ;
 N PAR1
 S PAR1=$$SHEM^W4P(PAR)
 D MDBPAR^W4MDBPC("",PAR,PAR1,0,"",PRINT)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDBPC
W4MDBPC(HZM,PRZERO) ; [ 24.08.26 16:42 ] [ 27.07.26 14:31 ] [ 26.07.26 14:13 ] 
 N (JB,%ARG,HZM,P1HZMET,BG,PRZERO)
 L +@$$^W4TMPORD:5
 S TMP1=$$^W4MAIN("TMP1") K @TMP1 
 S LAST=0
 ;
 ;;S ^AA("W4MDBPC",HZM)=1
 I $G(HZM)'>0 Q
 ;;S ^AA("W4MDBPC",HZM)=2
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$^W4HZMH(HZM) Q
 I $$^W4PIZUL(HZM) Q
 I $$DEL^W4DEL(HZM) Q
 I $G(@$$^W4PRM@("NOKSKMDB")),$$^W4KIOSKO(HZM) Q
 ;
 ;;S ^AA("W4MDBPC",HZM)=3
 D SENDTIMEPREP
 ;;S ^AA("W4MDBPC",HZM)=3.5
 ;
 I $$HZM^W4MSL(HZM),$$TAKEAWAY^W4HZMST(HZM),$G(@$$^W4PRM@("NOMSLTAW")) Q
 ;;S ^AA("W4MDBPC",HZM)=4
 ;
 Q:$G(P1HZMET)
 ;;S ^AA("W4MDBPC",HZM)=5
 ;
 S TMPORD=$$^W4TMPORD
 ;
 S SHWT=0
WTP S WAIT=0,MDBPRN=+$G(@$$^W4PRM@("MDBPRN"))
 I $$PAPJ^W4PRM S MDBPRN=90
 ;
 N RES S RES=$$^W4GETHZ(HZM)
 ;;S ^AA("W4MDBPC",HZM,"RES")=RES
 I RES<1 G END
 ;;S ^AA("W4MDBPC",HZM)=6
 I $D(@$$^W4ORD@(HZM))'=11 G END
 ;;S ^AA("W4MDBPC",HZM)=7
 ;
 I $$NOPCCNT D SORTTMP ; --> TMP1
 ;
 S MDPPAR=""
 ;
 S BG1=0
 I $G(BG) D
 .S N="",I=0 F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:BG1
 ..N A S A=$G(^(N))
 ..I 'A S I=I+1 I I=BG S BG1=N
 .I 'BG1 S BG1=$O(@TMPORD@(9999),-1)+1
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 I $$^W4MSD(NMB),'$G(@$$^W4PRM@("MDBMSD")) G END
 ;;S ^AA("W4MDBPC",HZM)=8
 I $$^W4MSD(NMB),'$$TAW^W4DLPK(NMB) G END
 ;;S ^AA("W4MDBPC",HZM)=9
 ;
 D CRMPRINT ; --> MPRINT()
 ;
 K PRCUT
 S DEV=$$^W4MYDVN
 ;
 S SHWT=0
 ;
 I 'MDBPRN S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 .I $$SNBC,$D(@$$^W4GL("W4MDBPRN")@(PRINT)) S PRCUT(PRINT)=""
 .L +@$$^W4GL("W4MDBPRN")@(PRINT):25
 .S @$$^W4GL("W4MDBPRN")@(PRINT)=JB_"\"_DEV
 .I $D(PRCUT(PRINT)),$$SNBC H .1 D CUTSNBC(PRINT) K PRCUT(PRINT) ; *** WAS .5
 ;
 S FIRST=1
 S DRC=1
 I $$SNBC S DRC=-1
 K PR14
 ;
 I $G(@$$^W4PRM@("LBHDONLY")) D LBHDONLY G END
 ;;S ^AA("W4MDBPC",HZM)=10
 ;
 S SAHMDB=0,SSAHMDB=0
 ;
 I $$SAHMDB^W4PRM D  ; -- HISHUV SAH MADBEKOT
 .D MDBHZ("?")
 .I $$MDBADDR^W4PRM=2,SAHMDB,'$$NOPCCNT S SAHMDB=SAHMDB+1
 .;;S ^BB(HZM,"SAHMDB")=SAHMDB
 ;
 S NOMMDB=0,FIRST=1
 ;
 I $$NOPCCNT D
 .S @$$^W4GL("W4SAHMDB")@(HZM)=SAHMDB
 .S @$$^W4GL("W4SAHMDB")@(HZM,"ALL")=$G(SSAHMDB)
 ;
 I $$SAHMDB^W4PRM,'SAHMDB S FIRST=0
 ;
 I '$$SNBC D MDBHZ("")
 ;
 I $$SNBC D
 .I $G(SAHMDB) S NOMMDB=SAHMDB+1
 .
 .I $$NOPCCNT D  Q
 ..;;S ^AA("W4MDBPC",HZM)=11
 ..D MDBHZ(0)
 ..;;S ^AA("W4MDBPC",HZM)=12
 ..D MDBHZ(1)
 . 
 .;;D MDBHZ(">") ; -- 29/03/24 --> COMMENT
 .D MDBHZ("")
 ;
 I '$$SNBC D
 .S N="" F  S N=$O(MPRINT(N)) Q:N=""  D SOF(N)
 ;
 I $$PAPJ^W4PRM,$$MZM^W4HZMST(HZM),$$TAKEAWAY^W4HZMST(HZM),$$HZM^W4MSL(HZM) D
 .S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 ..D MDBBG(PRINT)
 ..D PC(PRINT,"")
 ..D PC(PRINT,HZM_" dpnfd 'qn","B")
 ..D PC(PRINT,"")
 ..D PC(PRINT,"! onefna melyz","BB")
 ..D CLSNBC(PRINT)
 ;
END ;
 S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 .K @$$^W4GL("W4MDBPRN")@(PRINT)
 .L -@$$^W4GL("W4MDBPRN")@(PRINT)
 ;
 L -@$$^W4TMPORD
 K @TMPORD
 K @TMP1
 Q
 ;
 ; ------------------- END BODY -----------------------
 ;
MDBHZ(PR) ; ------- LABEL'S LOOP
 ;
 N N,LV,QN,CD,NM,MHP,HR,MDP,MDPS,PRINT,PARMAIN,US,DRC,HRMAIN
 I $$TSF2MDB^W4PRM,$G(PR)=">" Q
 ;
 S PARMAIN="",HRMAIN=""
 ;
 S DRC=1
 I $$SNBC S DRC=-1
 ;
 S N="" F  S N=$O(@TMPORD@(N),DRC) Q:N=""  I N D
 .I $G(BG1),N<BG1 Q
 .S LV=$$LVST^W3HZMST(JB,N)
 .N LV2 S LV2=$$LVST^W3HZMST(JB,N+1)
 .I LV,DRC<0 S PARMAIN=$$DEFMAIN(N)
 .
 .S QN=$$ITRAST^W3HZMST(JB,N) Q:QN'>0
 .N A S A=$G(@$$^W4TMPORD@(N))
 .N DAKA S DAKA=0
 .I $$PAPJ^W4PRM,N S DAKA=$$DAKA(N)
 .I $P(A,"~",5)["|++" S QN=QN\2
 .
 .S CD=$$CDST^W3HZMST(JB,N) Q:CD["-C"  Q:CD["A"
 .S NM=$$SPA^%L1FRM($$NMST^W3HZMST(JB,N))
 .S NM=$$IFCDNM(CD,NM,DAKA)
 .; 
 .S MHP=$$MHST^W3HZMST(JB,N)
 .S HR=$$CMST^W3HZMST(JB,N)
 .I 'LV,DRC>0 S PARMAIN=CD,HRMAIN=HR
 .S MDP=$$PRINTIG^W3PRMDP(CD)
 .;;S ^BB(HZM,N)="CD="_CD_"  MDP="_MDP_" MHP="_MHP
 .
 .S MDP=$$^W4DEFMDP(MDP,NMB) Q:MDP'[">"
 .;;I $P(MDP,">"),$G(PRZERO) Q
 .;;I '$P(MDP,">"),'$G(PRZERO) Q; -- 21.01.26
 .S MDPPAR=""
 .;
 .S US=$$US(N,PARMAIN,MHP,MDP) Q:'US
 .I $L(CD) S MDPPAR=$P(MDP,">")
 .;;S ^BB(HZM,N)=4
 .;;S ^BB(HZM,N,"US")=US
 .;;S ^BB(HZM,N,"PARMAIN")=PARMAIN
 .;
 .S PRINT=$$PORT^W4P($$MDPMDB(MDP)) Q:'PRINT
 .
 .I '$$TSF2MDB^W4PRM!$$SAHMDB^W4PRM,$G(PR)="?" D  Q
 ..S SSAHMDB=SSAHMDB+QN
 ..I $$NOPCCOUNT Q  ; -- 04/10/23
 ..S SAHMDB=SAHMDB+QN Q
 .
 .S MDPS=$$MDPS(PRINT)
 .D TV^W4MDP(MDPS)
 .S MPRINT(PRINT)=""
 .;
 .;
 .I $$PCLONG(PRINT),LV,'$$D^W4EZA(PARMAIN)!$$PORTMDB(PARMAIN) Q
 .
 .I $G(PR)=1,$G(@TMP1@(N))'=1 Q  ; -- SORTIROVKA( VNACH - 0, POTOM 1 )
 .I $G(PR)=0,$G(@TMP1@(N)) Q
 .; 
 .D MDB(CD,NM,PARMAIN,QN,MHP,HR,PRINT,N)
 .;
 .H .2
 Q
 ;
 ;
MDB(PAR,PAR1,PARMAIN,COL,MHP,HRA,PRINT,N) ; --- PRINT LABEL
 N PCLONG S PCLONG=$$PCLONG(PRINT)
 ;
 S PRINT=+PRINT
 N LV S LV=$$LVST^W3HZMST(JB,N)
 N CD S CD=$$CDST^W3HZMST(JB,N)
 ;
 I $D(@TMPORD@("WASPRINTED",N)) Q
 ;;S ^BB(HZM,PAR)=9
 D ^%L1TS
 N PRGN S PRGN=$C(12)
 ;
 I $$SF^W4PRM,LV,$L($G(HRMAIN)) D
 .I '$L($G(HRA)) S HRA="[ "_HRMAIN_" ]" Q
 .S HRA="[ "_HRMAIN_" ] "_HRA Q
 ;
 N I,PC,QNM S QNM=COL
 I $$MSK^W4P(PAR) S COL=1
 ;
 I $$NOPCCNT S FIRST=0
 ;
 I $$PAPJ^W4PRM,$$HZM^W4MSL(HZM),PAR1["14""",$$SHEM^W4P(PAR)["()" S PR14(PRINT)=""
 ;
 F I=1:1:COL D
 .I '$$MDBTST(HZM,PAR,PAR1,LV) Q
 .D MDBBG(PRINT)
 .D MDBHD(HZM,PRINT)
 .S PC=0
 .
 .D MDBPAR(HZM,PAR,PAR1,LV,HRA,PRINT)
 .;
 .N DESC S DESC=$$DESC^W4P(PAR,1)
 .;
 .I 'LV!$$PARADD(N,PAR) D
 ..N LV0 S LV0=LV
 ..
 ..S MDBTSFPRM=$$MDBTSF
 ..;
 ..I MDBTSFPRM!PCLONG D  ; -- PCLONG - DLINNAYA MADBEKA
 ...D PCADD(N,PAR)
 .
 .I $$NOPCCNT D
 ..I '$$TAKEAWAY^W4HZMST(HZM) D
 ...N TX,TEL S TEL=$$TELB^W4HZMST(HZM)
 ...S TX=TEL_" "_$$HBR^%L1FRM($$KTVM^W4HZMST(HZM),$$WD-12)
 ...I $L(TX)>$$WD D
 ....I $$MDBENG S TX=$E(TX,1,$$WD)
 ....I '$$MDBENG S TX=$$HBR^%L1FRM(TX,$$WD)
 ...D PC(PRINT,TX)
 ..
 ..I $$TAKEAWAY^W4HZMST(HZM) D
 ...N MAZMIN D MAZMIN
 ...S DL=20
 ...N HRA S HRA=$$HRAED^W4HZMST(HZM)
 ...S HRA=$$SPA^%L1FRM(HRA)
 ...S HRA=$$SP1^%L1FRM(HRA)
 ...I $$WOLT(HZM) S MAZMIN=HRA_" "_MAZMIN
 ...I $$HAAT^W4HZMST(HZM) S MAZMIN=$G(%MDP("B"))_"HAAT "_$$HAATNMB^W4HZMST(HZM)_$G(%MDP("N")) ;;_" "_MAZMIN
 ...S TX=$$HBR^%L1FRM(MAZMIN,DL)
 ...D PC(PRINT,TX,"B")
 ...I '$$^W4KIOSKO(HZM) D PC(PRINT,$$TELB^W4HZMST(HZM),"B")
 ..
 ..I $$HZM^W4MSD(HZM) D
 ...S TX=$$TV^%W1DICT($$^%W1LNG,"SITINLOCAL")
 ...N MAZMIN S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 ...I MAZMIN'?.P S TX=TX_" - "_MAZMIN
 ...D PC(PRINT,TX,"B")
 .
 .I PCLONG,PC D
 ..I $$SNBC,'$G(LAST) D CUT Q
 ..I '$$SNBC D CUT
 .
 .D CLSNBC(PRINT)
 ;
 Q
 ;
 ;
MDBHD(HZM,PRINT,BIG) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 N DAT,SHAA,MAZMIN
 ;
 I $$^W4MSL(NMB) D
 .D MAZMIN
 .
 .S DAT=$$TRH^W4HZMST(HZM)
 .S SHAA=$$SHAA^W4HZMST(HZM)
 .
 .I $$PCLONG(PRINT) D PCORD(HZM)
 .
 .I '$$PCLONG(PRINT),$G(PR)=""!($G(PR)=">")!($G(PR)=0)!($G(PR)=1) D PCORDSHORT
 .
 .I $$MDBADDR^W4PRM=2,'FIRST Q
 .
 .N CMPN S CMPN=$$COMP^W4HZMST(HZM)
 .
 .I $L(CMPN),$$SPA^%L1FRM(CMPN)'=$$SPA^%L1FRM(MAZMIN) D
 ..N TX S TX=$$HBR^%L1FRM(CMPN,24)_" : dxag"
 ..I '$G(BIG) D PC(PRINT,TX)
 ..I $G(BIG) D PCBIG(PRINT,TX)
 .
 .I $TR($$IR^W4HZMST(HZM)," ","")="TAKEAWAY",'$$WOLT(HZM),$$HRAED^W4HZMST(HZM)'["WOLT" D
 ..D PC(PRINT,$$CENTRB^%L1FRM("TAKE AWAY",$$WD),"B")
 .;;S ^BB(HZM,"MAZMIN")=$G(MAZMIN)
 .
 .I $$TSF2MDB^W4PRM,$G(NOMMDB),$G(SAHMDB) D TSF2MDBLK
 .
 .I '$$TSF2MDB^W4PRM,$L(MAZMIN) D PCLK
 ;
 ;
 I $$^W4MSD(NMB) D
 .S DAT=$$DATCB^W4HZMST(HZM)
 .S SHAA=$P(DAT,"  ",2)
 .S DAT=$P(DAT," ")
 .D PCORDSHORT Q:'FIRST
 .N MAZMIN S MAZMIN=$$SPA^%L1FRM($$MAZMIN^W4HZMST(HZM))
 .N TX S TX=$$HBR^%L1FRM(MAZMIN,$$WD)
 .I '$G(BIG) D PC(PRINT,TX)
 .I $G(BIG) D PCBIG(PRINT,TX)
 ;
 I $$MDBADDR^W4PRM=2,'FIRST Q  ; -- PRATEI AZMANA AL MADBEKA NIFREDET
 ;
 I $$MDBADDR^W4PRM=2 S TX="" D PC(PRINT,TX)
 ;
 I $$HZM^W4MSL(HZM) D
 .N HR S HR=$$HRAED^W4HZMST(HZM)
 .Q:$$WOLT(HZM)
 .Q:$$TAKEAWAY^W4HZMST(HZM)
 .N TX S TX=$$KTVM^W4HZMST(HZM)
 .I $L(TX)>$$WD D
 ..I $$MDBENG S TX=$E(TX,1,$$WD)
 ..I '$$MDBENG S TX=$$HBR^%L1FRM(TX,$$WD)
 .I '$G(BIG) D PC(PRINT,TX)
 .N DL S DL=20 I $$PCLONG(PRINT) S DL=19
 .I $G(BIG) D PCBIG(PRINT,TX,DL)
 ;
 I $$HZM^W4MSD(HZM) D
 .N TX S TX="zgwl e`eai"
 .I $G(@$$^W4ORD@(HZM,"LL"))=1 S TX="zayl e`eai"
 .D PC(PRINT,TX,"B")
 ;
 S FIRST=0
 ;
 I $$MDBADDR^W4PRM=2 D
 .I $$SNBC D CLOPSNBC(PRINT)
 .I '$$SNBC D PC(PRINT,$C(12),0) H 1
 .D PCORDSHORT
 ;
 D PC(PRINT,"")
 Q
 ;
 ;
PCORDSHORT ;
 I $$SAHMDB^W4PRM D
 .I $$NOPCCOUNT Q
 .I FIRST,$$NOPCCNT Q
 .I DRC=1 S NOMMDB=NOMMDB+1 Q
 .I DRC=-1 S NOMMDB=NOMMDB-1
 ;
 N TX,DAT1,SHAA1 S TX=""
 S DAT1=$P(DAT,".",1,2)_"-l"
 S SHAA1=SHAA
 ;
 S HZM1=" dpnfd"
 ;
 I $$SAHMDB^W4PRM D
 .S DAT1=""
 .N MSP S MSP=(NOMMDB_"/"_SAHMDB)
 .I $$NOPCCOUNT S MSP=" "
 .N SP
 .S SP=$J("",5-$L(MSP))
 .S TX=$G(%MDP("B"))_MSP_SP_$G(%MDP("N"))_" "
 .S HZM1=""
 .S SHAA1=$G(%MDP("B"))_SHAA_$G(%MDB("N"))
 ;
 I '$G(BIG) D
 .I $$MSPYOM^W4PRM D
 ..S TX=TX_" "_SHAA1_" "_DAT1_$G(%MDP("B"))_$J($$^W4MSPYOM(HZM),3)_$G(%MDP("N"))_" "_HZM_HZM1
 ..;;S ^AA("W4MDBPC",$J,"ORDSHORT")=HZM_"\"_TX
 ..D PC(PRINT,TX,"",-1)
 ..D PC(PRINT,"","") ; -- 18/08/22
 .
 .I '$$MSPYOM^W4PRM D
 ..S TX=TX_" "_SHAA1_" "_DAT1_%MDP("B")_$J(HZM,6)_%MDP("N")_HZM1
 ..D PC(PRINT,TX,"")
 ..I $$MDBTSF,$$MDBADDR^W4PRM'=2 Q
 ..D PC(PRINT,"",""); -- 18.08.22
 ;
 ;
 I $G(BIG) D
 .I $$MSPYOM^W4PRM D
 ..D PCBIG(PRINT,$J($$^W4MSPYOM(HZM),3)_" "_HZM_HZM1)
 ..D PCBIG(PRINT,SHAA1_" "_DAT1)
 .
 .I '$$MSPYOM^W4PRM D
 ..D PCBIG(PRINT,$J(HZM,6)_HZM1)
 ..D PCBIG(PRINT,SHAA1_" "_DAT1)
 ;
 I $$MDBADDR^W4PRM=2,FIRST D
 .N TMPC S TMPC=$P($$DATCB^W4HZMST(HZM),"  ",2)
 .I $P($G(@$$^W4ORD@(HZM,"ST",1)),"\",2)[":" D
 ..S TMPC=$P($G(@$$^W4ORD@(HZM,"ST",1)),"\",2)
 .S TX=$$LF_$J("",16)_TMPC_" : dpnfd zlaw onf"_$$LF
 .D PC(PRINT,TX,"")
 Q
 ;
 ;
PCORD(HZM) ; -----  FOR PCLONG
 N MDPI,MDPIE D MDPI 
 D
 .N DLV S DLV="!!!   DELIVERY  !!!"
 .I $$TAKEAWAY^W4HZMST(HZM) S DLV="!!!  TAKE AWAY  !!!"
 .D PC(PRINT,DLV,"B")
 .D PC(PRINT,"")
 ;
 I '$$MSPYOM^W4PRM D
 .N RV,RV0 S RV=$J("",19-$L(HZM)\2)
 .S RV0=$J("",20-$L(HZM)\2)
 .D PC(PRINT,MDPI_RV0_HZM_RV_MDPIE,"BB")
 ; 
 I $$MSPYOM^W4PRM D
 .N HZJ S HZJ=$$HZJ(HZM)
 .D PC(PRINT,MDPI_HZJ_MDPIE,"BB")
 .D PC(PRINT,"")
 .D PC(PRINT,%MDP("N")_" "_$J(HZM,7)_" dpnfd","",3)
 ;
 D PC(PRINT,"")
 ;
 I $$WOLT^W4HZPCHD(HZM) D
 .N NOMWOLT S NOMWOLT=$$NOMWOLT^W4HZPCHD(HZM) Q:'NOMWOLT
 .D PC(PRINT,NOMWOLT_" : WOLT","BB") ; -- WAS B -- 16.02.23
 ;
 I $$HAAT^W4HZMST(HZM) D
 .N NOMHAAT S NOMHAAT=$$NOMHAAT^W4HZPCHD(HZM) Q:'NOMHAAT
 .D PC(PRINT,NOMHAAT_" : HAAT","BB") ; -- WAS B -- 16.02.23
 ;
 N PR S PR="B" S:$G(@$$^W4PRM@("MDBDTKTN")) PR="N"
 D PC(PRINT,SHAA_" "_DAT_" -l",PR)
 D PC(PRINT,"")
 Q
 ;
 ;
PCLK ;
 N MAZMIN D MAZMIN
 ;
 I '$$PCLONG(PRINT) D  Q
 .N DL S DL=25
 .I $$WOLT(HZM) S MAZMIN=$G(%MDP("B"))_$$HRAED^W4HZMST(HZM)_$G(%MDP("N"))_" "_MAZMIN
 .I '$G(BIG) D
 ..I $$WOLT(HZM) S TX=$$HBR^%L1FRM(MAZMIN,DL) D PC(PRINT,TX,"") Q
 ..S TX=$$HBR^%L1FRM(MAZMIN,DL)_" "_$J(NMB,10)
 ..D PC(PRINT,TX,"")
 .
 .I $G(BIG) D
 ..S TX="" D PC(PRINT,TX)
 ..S TX=$$HBR^%L1FRM(MAZMIN,DL)_" "_$J(NMB,10)
 ..D PCBIG(PRINT,TX)
 ..S TX="" D PC(PRINT,TX)
 ;
 I $$PCLONG(PRINT) D
 .S TX="" I $$SAHMDB^W4PRM,$G(SAHMDB) S TX=$G(%MDP("B"))_NOMMDB_"/"_SAHMDB_$G(%MDP("N"))
 .D PC(PRINT,TX)
 .S TX=NMB_" 'akl"
 .I '$G(BIG) D PC(PRINT,TX)
 .I $G(BIG) D PCBIG(PRINT,TX,19) D PC(PRINT,"")
 .Q:'$L($G(MAZMIN))
 .S TX=$$SPA^%L1FRM(MAZMIN)
 .N PR S PR="B" I $G(@$$^W4PRM@("MDBLKKTN")) S PR="N"
 .I '$G(BIG) D PC(PRINT,TX,PR)
 .I $G(BIG) D PCBIG(PRINT,TX,19) D PC(PRINT,"")
 Q
 ;
 ;
MDBPAR(HZM,PAR,PAR1,LV,HRA,PRINT) ; -- HADPASAT PARIT ROSHI
 N WD S WD=$$WD
 N MDBTSF S MDBTSF=$$MDBTSF
 N MDBENG S MDBENG=$$MDBENG
 ;
 S PRENG=0
 ;
 I $$TSF2MDB^W4PRM,LV,$G(PARMAIN) D  S PC=1
 .N TX S TX=$$SHEM(PARMAIN)_" : hixtl ztqez"
 .D PC(PRINT,TX)
 .D PC(PRINT,"")
 ;
 I MDBENG D
 .N PAR11
 .S PAR11=$$SHEML(PAR)
 .I PAR11'?.P S PAR1=PAR11,PRENG=1
 ;
 S ST1=PAR1
 I $G(@$$^W4PRM@("CDMDB")) S ST1=ST1_" "_PAR
 I $$MSK^W4P(PAR),$G(QNM) D
 .S ST1="bw "_$J(QNM,3,3)_" "_ST1
 ;
 D DLG^%L1FRM(ST1,18)
 ;
 I 'MDBTSF D
 .N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 ..D PC(PRINT,$$SPA^%L1FRM(%CHAST(1,I)),"B") S PC=1 ; -- WAS BB
 ;
 I MDBTSF D 
 .I $G(%CHAST(1,2))="" D  Q
 ..D PC(PRINT,$$SPA^%L1FRM(%CHAST(1,1)),"B") S PC=1
 .S ST1=$$HBR^%L1FRM(ST1,38)
 .D PC(PRINT,$$SPA^%L1FRM(ST1)) S PC=1
 ;
 I '$G(@$$^W4PRM@("MDBNOSP")),'MDBTSF D
 .D PC(PRINT,"")
 ;
 I $$PAPJ^W4PRM K TXT Q  ; -- 29/10/23
 ;
 S HRA=$$CLR^W4CLRMN(HRA)
 N HRA1
 ;
 S HRA=$TR(HRA,"|"," ")
 S HRA=$$SPA^%L1FRM(HRA)
 S HRA=$$SP1^%L1FRM(HRA)
 ;
 N TXT0
 D PREPHR^W4HZPCFN(HRA)
 N HEB S HEB=$$HEB^W4HZPCFN(HRA)
 ;
 ;;M ^AA("W4MDBPC","CHAST")=%CHAST
 ;
 I '$$PCLONG(PRINT),$G(%CHAST(1,1))'="",$G(%CHAST(1,2))="" D
 .I HEB S TXT=$G(TXT0)_%CHAST(1,1)_%MDP("N")
 .I 'HEB S TXT=$$ENG^%L1FRM(%CHAST(1,1),$$WD\2)
 .S TXT=$TR(TXT,TS0,TSS)
 .D PC(PRINT,TXT,"B",3)
 ;
 I '$$PCLONG(PRINT),$G(%CHAST(1,1))'="",$G(%CHAST(1,2))'="" D
 .I HEB S TXT=$$HBR^%L1FRM(HRA,$$WD)
 .I 'HEB S TXT=$$ENG^%L1FRM(HRA,$$WD)
 .S TXT=$TR(TXT,TS0,TSS)
 .D PC(PRINT,TXT)
 ;
 I $$PCLONG(PRINT) D  ; -- 21/10/21
 .I HEB F J=1:1 Q:'$D(%CHAST(1,J))  D
 ..N ST S ST=$$PREPST(%CHAST(1,J))
 ..S TXT=$S(J=1&'$$MDBTSF:$$LF,1:"")_TXT0_ST_%MDP("N") D PC(PRINT,TXT,0)
 .
 .I 'HEB F J=$O(%CHAST(1,99),-1):-1:1 D
 ..I J=$O(%CHAST(1,99),-1) S TXT="" D PC(PRINT,TXT)
 ..N ST S ST=$$PREPST(%CHAST(1,J))
 ..S TXT=TXT0_ST_%MDP("N") D PC(PRINT,TXT,"B",0)
 ;
 K TXT
EMDBPAR ;
 I $G(PRNLAB) D PC(PRINT,$ZD($H,"DD.MM.YY"),"B")
 Q
 ;
 ;
PCADD(N,PAR) ; ---- HADPASAT TOSAFOT
 N COLT S COLT=4 I PCLONG S COLT=99 ; -- MISPAR TOSAFOT LE HADPASA
 ;
 I $$MDBADDR^W4PRM=2 D
 .S COLT=5
 .I $$NOPCCNT S COLT=3
 ;
 N N2,J S N2=N,J=0 F  S N2=$O(@TMPORD@(N2)) Q:N2=""  I N2 S A=$G(^(N2)) Q:$P(A,"~")'>LV0&($P(A,"~",2)'["-C")  D  Q:J'<COLT
 .N CDT S CDT=$P(A,"~",2)
 .I $$SPECADD(CDT) Q
 .
 .N OK S OK=1
 .
 .N NMT S NMT=$P(A,"~",3)
 .S NMT=$$IFCDNM(CDT,NMT)
 .S NMT=$$NMT(NMT,N2)
 .;
 .I CDT["-C" Q
 .I $E(CDT)="A",'$$PCLONG(PRINT) Q
 .
 .I $E(CDT)="A" D
 ..N DLKV S DLKV=($$WD-$L(NMT)\2)-2
 ..N KV S KV=$TR($J("",DLKV)," ","-")
 ..S NMT=KV_" "_NMT_" "_KV_$$LF
 .
 .I $G(@$$^W4PRM@("CDMDB")),$E(CDT) S NMT=NMT_" "_CDT
 .N QNT,QNT0 S QNT=$P(A,"~",5) S QNT0=QNT
 .I QNT["*" S QNT=$P(QNT,"*",2)
 .
 .I QNT0["|"!(QNT0[":"),QNT0["+" D
 ..N QNT00 S QNT00=$$QN^W4PIZZA(QNT0)
 ..I '$$OLDQNPZ,QNT00="++"!(QNT00="+-")!(QNT00="-+") D  Q
 ...S QNT=$$QNPZ(QNT0)
 ..I QNT0["+" S QNT=+QNT_" ["_$$QNPZ(QNT0)_"]"
 .
 .I QNT>1!(QNT0["+") S NMT=QNT_" "_$J(NMT,30)
 .
 .S NMT=$$HBR^%L1FRM(NMT,$$WD)
 .D PC(PRINT,NMT) S PC=1
 .S J=J+1
 .I '$G(@$$^W4PRM@("NOMDBSP")),'$$MDBTSF D PC(PRINT,"")
 Q
 ;
 ;
PORTMDB(PAR) ;
 N MDP S MDP=$$PRINTIG^W3PRMDP(PAR)
 Q $$PORT^W4P($$MDPMDB(MDP))
 ;
 ;
NOTSFPAR(PAR)
 I $$MDBTSF=1,$$DD^W4EZT(PAR) Q 1
 I $$MDBTSF<3,$$DD^W4EZA(PAR) Q 1
 Q 0
 ;
SPECADD(PAR) ; 
 I $$PAPJ^W4PRM,$$SUG^W4P(PAR)=4 Q 1
 I $$PAPJ^W4PRM,PAR=3343!(PAR=3344) Q 1
 Q 0
 ;
MDBBG(PRINT) ;
 I $$SNBC D OPSNBC(PRINT)
 I '$$SNBC D PC(PRINT,$C(12),0) H 1
 Q
 ;
SNBC(STAM)
 Q +$G(@$$^W4PRM@("SNBC"))
 ;
OPSNBC(PRINT) ;
 ;;L +@$$^W4PC@(PRINT):4 ; ***
 I '$$PCLONG(PRINT) S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,64,27,76,13,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,51,60,13,10)
 ;;L -@$$^W4PC@(PRINT) ; ***
 S MDPOP(PRINT)=1
 Q
 ;
CLSNBC(PRINT) ;
 I '$$SNBC Q
 ;;L +@$$^W4PC@(PRINT):4 ; ***
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,12,27,83,13,10)
 ;;L -@$$^W4PC@(PRINT)
 S MDPOP(PRINT)=0
 Q
 ;
CLOPSNBC(PRINT)
 D CLSNBC(PRINT)
 D OPSNBC(PRINT)
 Q
 ;
LF() ;
 Q $C(10)
 ;
 ;
PC(PRN,TXT,PRM,DOPSM) ;
 S DOPSM=$G(DOPSM) ; -- WAS +$G(DOPSM)
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 I $$SNBC,TXT=$C(12),$G(PRM)=0 Q
 N SOF S SOF="" I $$SNBC S SOF=$C(13,10)
 ;
 N SM S SM=$$SM(TXT)+DOPSM
 I $G(PRM)=0 D  Q
 .I $$PCLONG(PRN),$$SNBC D SETPC(PRN,$S(TXT="":"",1:$J("",SM)_TXT)) Q  ; *** 15.03.24
 .S @$$^W4PC@(PRN,$ZP(@$$^W4PC@(PRN,""))+1)=TXT
 ;
 S TXT=$TR(TXT,TS0,TSS)
 ;
 I DOPSM="-" S SM=0
 ;
 I $G(PRM)["B" D
 .S SM=$$SMBIG(TXT)+$G(DOPSM)
 .I DOPSM="-" S SM=0
 .S TXT=$G(%MDP(PRM))_TXT_$G(%MDP("N"))
 ;
 N TX S TX=$J("",SM)_TXT
 I $$PCLONG(PRN),$$SNBC S TX=$$LF_TX
 D SETPC(PRN,TX)
 Q
 ;
 ;
PREPST(ST)
 I $$HRSP^W4HZPCFN S ST=$$SP^W4HZPCFN(ST)
 S ST=$TR(ST,TS0,TSS)
 Q ST
 ;
 ;
MDPMDB(MDP) ;
 I MDP[">>" Q +$P(MDP,">>",2)
 I MDP["<<" Q +$P(MDP,"<<",2)
 I MDP["->" Q +$P(MDP,"->",2)
 I MDP["-<" Q +$P(MDP,"-<",2)
 Q +$P(MDP,">",2)
 ;
 ;
SM(TX) ;
 N LTX S LTX=$L(TX)
 I $L($G(%MDP("B"))),$L($G(%MDP("N"))) D
 .S LTX=$$L^%L1FRM(TX,%MDP("B"),%MDP("N"))
 S SM=$$WD+$G(@$$^W4PRM@("MDBSM"))-$J(LTX/$$KFPC,0,0)
 ;;I $$SNBC S SM=SM+8
 Q SM
 ;
SMBIG(TX) ;
 Q $$WD+$G(@$$^W4PRM@("MDBSM"))-$J($L(TX)*2/$$KFPC,0,0)
 ;
WDBIG(STAM) ;
 Q $J(($$WD/2)*$$KFPC,0,0)
 ;
WD(STAM) ;
 Q 38
 ;
KFPC(STAM) ;
 Q 1
 ;
SETPC(PRINT,TXT) ;
 ;;L +@$$^W4PC@(PRINT):4 ; ***
 I $$SNBC,$E(TXT,$L(TXT)-1,$L(TXT))'=$C(13,10) S TXT=TXT_$C(13,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=TXT
 ;;H .15
 ;;L -@$$^W4PC@(PRINT) ; ***
 Q
 ;
 ;
CUT ;
 I $G(@$$^W4PRM@("NOMDBCUT")) Q
 ;
 I $$PCLONG(PRINT),$$SNBC D  Q
 .;;L +@$$^W4PC@(PRINT):4 ; ***
 .S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)="<<WAIT>>"_$C(10,10,10,10,10,13,10)
 .;;L -@$$^W4PC@(PRINT) ; ***
 ;
 D SETPC(PRINT,$C(10,10,10,10,10)_$G(%MDP("CUT")))
 Q
 ;
OLDPC(STAM) ;
 I $$XPMOD($G(PRINT)) Q 1
 Q $$OLDPC^W4PRM
 ;
XPMOD(PRINT) ;
 I $G(PRINT),$$MDPS^W4MDP(PRINT)=8 Q 1
 Q 0
 ;
 ;
SOF(PRINT) ;
 I $$SNBC D  Q
 .I $G(MDPOP(PRINT)) D CLSNBC(PRINT) K MDPOP(PRINT)
 ;
 I $D(MPRINT(PRINT)) D  Q
 .D DEFMDP(PRINT)
 .;
 .I '$G(P1HZMET),'$$MDPCUT(PRINT) S TXT=$C(10,10,10,10) D SETPC(PRINT,TXT) Q
 .I '$G(P1HZMET),$$MDPCUT(PRINT) D  Q
 ..I $$PCLONG(PRINT) S TXT=$C(10,10,10,10) D SETPC(PRINT,TXT) Q
 ..D CUT
 Q
 ;
 ;
MDPCUT(PRINT) ;
 I $$MDPS(PRINT)=6!($$MDPS(PRINT)=8)!($$MDPS(PRINT)=9) Q 1
 Q 0
 ;
MDPS(PRINT) ;
 Q $$MDPS^W4MDP(PRINT)
 ;
 ;
US(N,PARMAIN,MHP,MDP)
 I MDP'[">" Q 0
 ;
 N CD S CD=$$CDST^W3HZMST(JB,N) I CD="" Q 0
 N LV S LV=$$LVST^W3HZMST(JB,N) I 'LV Q 1
 ;
 I $G(PARMAIN)="",$G(DRC)<0 S PARMAIN=$$DEFMAIN(N)
 ;
 I $$TSF2MDB^W4PRM Q 1
 I $$DD^W4EZA(PARMAIN),LV<2 Q 1
 ;;I LV=1,$$SPECADD(CD) Q 1; --> 18/06/245
 I LV,$$SPECADD(CD) Q 1
 ;
 N SET,US S US=0
 ;
 I $G(PARMAIN) D  I US Q US
 .N QNDEF S QNDEF=$$^W4QNDEF(PARMAIN,CD)
 .I CD,QNDEF["->"!(QNDEF["-<")!(QNDEF[">>")!(QNDEF["<<") S US=.5 Q
 .I CD,QNDEF[">"!(QNDEF["<") S US=1 Q
 .;
 .S SET=$$^W4SET(PARMAIN,CD) Q:'SET
 .N A S A=$G(@$$^W4GLSET(HZM)@(SET))
 .N MAX S MAX=$P(A,"\",2)
 .I MAX["->"!(MAX["-<")!(MAX[">>")!(MAX["<<") S US=.5 Q
 .I MAX[">"!(MAX["<") S US=1 Q
 ;
 I MDP[">>"!(MDP["<<") Q .5
 Q 0  ; --- 21/08/22 ; --- MADBEKOT BLI >> LO MADPISIM
 ;
 ;
DEFMDP(PRINT) ;
 Q
 ;
 ;
MDBKOT(HZM,PRINT) ;  -- MADBEKA AHAREY COL AMADBEKOT ( NOT IN USE FOR NOW )
 N MDPS
 S MDPS=$$MDPS(PRINT)
 D TV^W4MDP(MDPS)
 ;
 D PC(PRINT,"")
 I '$$MSPYOM^W4PRM D PC(PRINT,HZM,"BB")
 ;
 I $$MSPYOM^W4PRM D
 .N HZJ S HZJ=$$HZJ(HZM)
 .N MDPI,MDPIE
 .D MDPI
 .N RV S RV=MDPI_$J("",$L(HZJ))_MDPIE
 .;;D PC(PRINT,RV,"BB") ; -- 16.09.20
 .D PC(PRINT,MDPI_HZJ_MDPIE,"BB")
 .;;D PC(PRINT,RV,"BB") ; -- 16.09.20
 .D PC(PRINT,"")
 .D PC(PRINT,HZM_" dpnfd 'qn")
 ;;
 D PC(PRINT,"")
 D PC(PRINT,$$IR^W4HZMST(HZM),"BB")
 D PC(PRINT,"")
 D PC(PRINT,$$KTVM^W4HZMST(HZM,1),"B")
 ;;D CLSNBC(PRINT)
 ;
 D PC(PRINT,"")
 D PC(PRINT,$$SHAA^W4HZMST(HZM),"BB")
 I '$$SNBC D CUT
 Q
 ;
 ;
PCBIG(PRINT,TX,DL) ;
 I '$G(DL) S DL=20
 N %CHAST
 D DLG^%L1FRM(TX,DL)
 N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 .D PC(PRINT,%CHAST(1,I),"B","-")
 ;;D CLSNBC(PRINT)
 Q
 ;
 ;
MDBTSF(STAM) ; 
 I $$TSF2MDB^W4PRM Q 0
 Q $G(@$$^W4PRM@("MDBTSF")) 
 ;
PCLONG(PRINT)
 N MDPS S MDPS=$$MDPS(PRINT)
 I MDPS=9 Q 1
 N PCLONG S PCLONG=0
 I PRINT["[" D
 .S PCLONG=$P(PRINT,"[",2) I 'PCLONG S PCLONG=1
 Q PCLONG
 ;
DEFMAIN(N)  
 N PARMAIN S PARMAIN=""
 N II F II=N-1:-1:1 Q:'$$LVST^W3HZMST(JB,II)
 I II>0,'$$LVST^W3HZMST(JB,II) D
 .S PARMAIN=$$CDST^W3HZMST(JB,II)
 .S HRMAIN=$$CMST^W3HZMST(JB,II)
 Q PARMAIN
 ;
OBRSM(A) ; 
 Q A
 ;
 ;
TSFMAIN(IND,PARMAIN) ; 
 I '$G(PARMAIN) Q 0
 N CD S CD=$$CDST^W3HZMST(JB,IND) I CD="" Q 0
 ;
 N QNDEF S QNDEF=$G(@$$^W4GL("QNDEF")@(PARMAIN,CD))
 I CD,QNDEF["}"!(QNDEF["{") Q 1
 N SET S SET=$$^W4SET(PARMAIN,CD) Q:'SET 0
 N A S A=$G(@$$^W4GLSET(HZM)@(SET))
 N MAX S MAX=$P(A,"\",2)
 I MAX["}"!(MAX="{") Q 1
 Q 0
 ; 
MDBTST(HZM,PAR,PAR1,LV)
 N MDBTSF S MDBTSF=$$MDBTSF
 N MDBENG S MDBENG=$$MDBENG
 N PC S PC=0
 ;
 I LV,$G(PARMAIN),$G(PAR1)'="" S PC=1
 ;
 I MDBENG D
 .N PAR11
 .S PAR11=$$SHEML(PAR)
 .I PAR11'?.P S PAR1=PAR11,PRENG=1
 ;
 I 'LV,$G(PAR1)'="" S PC=1
 I LV,$$SPECADD(PAR),PAR1'="" S PC=1
 Q PC
 ;
 ;
HZJ(HZM) ;
 N HZJ S HZJ=$J($$^W4MSPYOM(HZM),3)
 N RV,RV0 S RV=$J("",19-$L(HZJ)\2)
 S RV0=$J("",20-$L(HZJ)\2)
 S HZJ=RV_HZJ_RV
 Q HZJ
 ;
MDPI ;
 S MDPI=$G(%MDP("I"))
 S MDPIE=$G(%MDP("IE"))
 I $$NOIKOT S (MDPI,MDPIE)=""
 Q 
 ; 
NOIKOT(STAM) ; 
 Q $G(@$$^W4PRM@("NOIKOT")) 
 ;
 ; 
MAZMIN ;
 S MAZMIN=""
 I $$^W4MSL(NMB) D
 .S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 .N NAME S NAME=$$NAME^W4HZMST(HZM)
 .I '$L(MAZMIN),'$$COMP^W3PRM S MAZMIN=NAME
 Q
 ;
 ; 
TSF2MDBLK ; 
 N TX S TX=NOMMDB_"/"_SAHMDB
 ;
 I '$$COMP^W3PRM S MAZMIN=$$LKHNM^W4HZMST(HZM) 
 I $$COMP^W3PRM S MAZMIN=$$MAZMIN^W4HZMST(HZM) 
 ;
 I $L(MAZMIN) D
 .I '$$PCLONG(PRINT) D 
 ..S TX=TX_$J($$HBR^%L1FRM(MAZMIN,16)_" "_NMB_" 'akl",$$WD-$L(TX)-1)
 ..D PC(PRINT,TX)
 .
 .I $$PCLONG(PRINT) D 
 ..D PC(PRINT,"")
 ..S TX=TX_$J(NMB_" 'akl",$$WD-$L(TX)-1)
 ..D PC(PRINT,TX)
 ..S TX=MAZMIN
 ..D PC(PRINT,TX,"B")
 Q
 ;
 ;
PARADD(N,PAR) ; 
 N A,A2,CDT,LVT
 S A=$G(@TMPORD@(N))
 S CDT=$P(A,"~",2) I CDT["-"!(CDT["A") Q 0
 S A2=$G(@TMPORD@(N+1))
 ;
 N CDT2 S CDT2=$P(A2,"~",2) I CDT2["-C" D
 .S A2=$G(@TMPORD@(N+2))
 ;
 S LVT=$P(A,"~")
 I $$^W4EZAT(PAR),LVT=1 Q 1
 I $$^W4EZI(PAR),LVT=1 Q 1
 N LVT2 S LVT2=$P(A2,"~") 
 I LVT=1,LVT2=2 Q 1  ; -- 18.08.22
 Q 0 
 ;
 ;
WOLT(HZM) ; 
 I $$WOLT^W4HZMST(HZM) Q 1
 ;;I $$SPA^%L1FRM(MAZMIN)="WOLT" Q 1
 Q 0 
 ;
NMT(NMT,N2) ; 
 N A,NMT2 S A=$G(@TMPORD@(N2+1))
 N CDT S CDT=$P(A,"~",2) 
 I CDT'["-C" Q NMT 
 S NMT2=$P(A,"~",3) 
 N OKT S OKT=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  D  Q:OKT
 .I $G(^(N))=NMT2 S OKT=1
 I 'OKT Q NMT
 N MDBENG S MDBENG=$$MDBENG
 I MDBENG S NMT=NMT2_" "_NMT
 E  S NMT=NMT_" "_NMT2 
 Q NMT 
 ;
MDBENG(STAM) ; 
 Q $G(@$$^W4PRM@("MDBENG"))
 ;
CDNM(STAM) ; 
 I $$^W6,$$NOPCLOAZ^W4PRM Q 1
 Q $G(@$$^W4PRM@("MDBCDNM"))
 ;
IFCDNM(CD,NM,DAKA) ;
 I $$CDNM,CD D
 .N TX S TX=$$SHEM(CD) Q:TX=""
 .S NM=TX
 ;
 I $G(DAKA) S NM="dwc"_NM
 Q NM
 ;
 ; 
CRMPRINT ; --> MPRINT 
 N N,CD,MDP,PRINT 
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D 
 .S CD=$P($G(^(N)),"~",2) 
 .S MDP=$$PRINTIG^W3PRMDP(CD) 
 .I MDP[">" D 
 ..S MDPB=$$MDPMDB(MDP) Q:'MDPB 
 ..S PRINT=$$PORT^W4P(MDPB) Q:'PRINT 
 ..S MPRINT(PRINT)="" 
 Q 
 ;
 ;
CUTSNBC(PRINT) ;
 I '$$PCLONG(PRINT) Q  ; -- 18.08.22
 ;;S ^AA(HZM,"SNBCCUT")=1
 I $G(@$$^W4PRM@("NOMDBCUT")) Q
 N TXT
 S TXT=$C(29,86)_"m"
 D SETPC(PRINT,TXT)
 Q 
 ;
 ;
NOPCCOUNT() ; 
 I $$NOPCCNT,MDPPAR'="",+MDPPAR=0 Q 1
 I $D(NOPCCOUNT) Q 1
 Q 0 
 ; 
NOPCCNT() ; 
 Q $G(@$$^W4PRM@("NOPCCNT"))
 ;;Q $$PAPJ^W4PRM 
 ;
 ;
SORTTMP ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 N FIRST S FIRST=1
 N N,N1,N2,LV,QN,CD,NM,MHP,HR,MDP,MDPS,PRINT,PARMAIN,US,DRC,HRMAIN
 N TMP1 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 ;
 S PARMAIN="",HRMAIN=""
 ;
 S DRC=1
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .I $G(BG1),N<BG1 Q
 .S LV=$$LVST^W3HZMST(JB,N)
 .N LV2 S LV2=$$LVST^W3HZMST(JB,N+1)
 .
 .S QN=$$ITRAST^W3HZMST(JB,N) Q:QN'>0
 .N A S A=$G(@$$^W4TMPORD@(N))
 .
 .S CD=$$CDST^W3HZMST(JB,N) Q:CD["-C"  Q:CD["A"
 .S NM=$$SPA^%L1FRM($$NMST^W3HZMST(JB,N))
 .S NM=$$IFCDNM(CD,NM)
 . 
 .S MHP=$$MHST^W3HZMST(JB,N)
 .S HR=$$CMST^W3HZMST(JB,N)
 .I 'LV S PARMAIN=CD
 .S MDP=$$PRINTIG^W3PRMDP(CD)
 .S MDP=$$^W4DEFMDP(MDP,NMB) Q:MDP'[">"
 .S MDPPAR=""
 .S US=$$US(N,PARMAIN,MHP,MDP) Q:'US
 .I $L(CD) S MDPPAR=$P(MDP,">")
 .;
 .S PRINT=$$PORT^W4P($$MDPMDB(MDP)) Q:'PRINT
 .;
 .I LV,'$$D^W4EZA(PARMAIN)!$$PORTMDB(PARMAIN),$$PCLONG(PRINT) Q
 .
 .S IND=1
 .I $$NOPCCOUNT S IND=0
 .;
 .S @TMP1@(N)=IND
 ;
 Q
 ;
 ;
QNPZ(QNT0) 
 S QNT0=$$QN^W4PIZZA(QNT0)
 I '$$OLDQNPZ Q $$QNG^W4PIZZA(QNT0)
 Q QNT0 
 ;
SHEM(PAR) ; 
 N PAR1
 S PAR1=$$SPA^%L1FRM($$SHEM^W4P(PAR))
 S PAR1=$$RPL^%L1FRM(PAR1,"()","")
 S PAR1=$$RPL^%L1FRM(PAR1,"[]","")
 Q PAR1
 ;
SHEML(PAR) ;
 N PAR1
 S PAR1=$$SPA^%L1FRM($$SHEML^W4P(PAR))
 S PAR1=$$RPL^%L1FRM(PAR1,"()","")
 S PAR1=$$RPL^%L1FRM(PAR1,"[]","")
 Q PAR1
 ;
OLDQNPZ() ; 
 Q +$G(@$$^W4PRM@("OLDQNPZG")) 
 ;
LAST(N,DRC) ; 
 N A,OK,N1 S OK=1
 S N1=N F  S N1=$O(@TMPORD@(N1),DRC) Q:N1=""  I N1 D  Q:'OK
 .S A=$G(^(N1)) I $P(A,"~")=0 S OK=0
 Q OK
 ;
SENDTIMEPREP ; 
 I $$SNDY^W4PRM,$$HZM^W4MSL(HZM),$$MDBYAD^W4PRM!$$PAPJ^W4PRM D
 .N RES
 .S RES=$G(@$$^W4ORD@(HZM,"SNDYPREP")) 
 .I RES'["succes" D
 ..N PREPTIME S PREPTIME=$G(@$$^W4PRM@("PREPTIME"),5)
 ..D WR2SNDY^W4DLVORD(JB,HZM,PREPTIME) 
 ;
 I $$TRICKER^W4PRM(HZM),'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$D(@$$^W4ORD@(HZM,"TRICKPREP")) D
 .J ^W4TRICKR(JB,HZM,"PREP")
 ;
 I $$TEAV^W4PRM,'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$D(@$$^W4ORD@(HZM,"TEAVPREP")) D
 .I $$TAKEAWAY^W4HZMST(HZM) Q
 .J ^W4TVSND(JB,HZM,"PREP")
 Q
 ;
LBHDONLY ;
 N N,CD,MDP,PRINT
 S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 .S MDPS=$$MDPS(PRINT)
 .D TV^W4MDP(MDPS)
 .D MDBBG(PRINT)
 .D MDBHD(HZM,PRINT,1)
 .I $$SNBC D CLSNBC(PRINT)
 .I '$$SNBC D SOF(PRINT)
 Q
 ;
DAKA(N) ; 
 N DAKA S DAKA=0
 N A S A=$G(@$$^W4TMPORD@(N)) 
 N LV,LV1,END S LV=$P(A,"~"),END=0
 N N1 S N1=N F  S N1=$O(@$$^W4TMPORD@(N1)) Q:N1=""  D  Q:END  Q:DAKA
 .I 'N1 Q
 .N A1 S A1=$G(@$$^W4TMPORD@(N1))
 .S LV1=$P(A1,"~") I LV1'>LV S END=1 Q
 .N CD1 S CD1=$P(A1,"~",2)  
 .I CD1=175 S DAKA=1
 Q DAKA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDBPC0
W4MDBPC(HZM) ; [ 29.03.24 08:25 ] [ 26.03.24 13:52 ] [ 18.03.24 06:54 ] 
 N (JB,%ARG,HZM,P1HZMET,BG)
 L +@$$^W4TMPORD:5
 S TMP1=$$^W4MAIN("TMP1") K @TMP1 
 S LAST=0
 ;
 I $G(HZM)'>0 Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$^W4HZMH(HZM) Q
 I $$^W4PIZUL(HZM) Q
 I $$DEL^W4DEL(HZM) Q
 I $G(@$$^W4PRM@("NOKSKMDB")),$$^W4KIOSKO(HZM) Q
 ;
 I $$SNDY^W4PRM,$$HZM^W4MSL(HZM),$$MDBYAD^W4PRM!$$PAPJ^W4PRM D
 .N RES
 .S RES=$G(@$$^W4ORD@(HZM,"SNDYPREP")) 
 .I RES'["succes" D
 ..N PREPTIME S PREPTIME=$G(@$$^W4PRM@("PREPTIME"),5)
 ..D WR2SNDY^W4DLVORD(JB,HZM,PREPTIME) 
 ;
 I $$TRICKER^W4PRM(HZM),'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$D(@$$^W4ORD@(HZM,"TRICKPREP")) D
 .J ^W4TRICKR(JB,HZM,"PREP")
 ;
 I $$TEAV^W4PRM,'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$D(@$$^W4ORD@(HZM,"TEAVPREP")) D
 .I $$TAKEAWAY^W4HZMST(HZM) Q
 .J ^W4TVSND(JB,HZM,"PREP")
 ;
 I $$HZM^W4MSL(HZM),$$TAKEAWAY^W4HZMST(HZM),$G(@$$^W4PRM@("NOMSLTAW")) Q
 D PUT^%W3DEB("W4MDBPC","HZM=HZM&P1HZMET=P1HZMET")
 Q:$G(P1HZMET)
 ;
 S ^BB(HZM)=1
 S TMPORD=$$^W4TMPORD
 ;
 I $$^W4GETHZ(HZM,"",1)<1 G END
 S ^BB(HZM)=2
 ;
 I $$NOPCCNT D SORTTMP
 ;
 S MDPPAR=""
 ;
 S BG1=0
 I $G(BG) D
 .S N="",I=0 F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:BG1
 ..N A S A=$G(^(N))
 ..I 'A S I=I+1 I I=BG S BG1=N
 .I 'BG1 S BG1=$O(@TMPORD@(9999),-1)+1
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 I $$^W4MSD(NMB),'$G(@$$^W4PRM@("MDBMSD")) G END
 I $$^W4MSD(NMB),'$$TAW^W4DLPK(NMB) G END
 ;
 D CRMPRINT
 ;
 K PRCUT
 S DEV=$$^W4MYDVN
 ;
 S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 .I $$SNBC,$D(@$$^W4GL("W4MDBPRN")@(PRINT)) S PRCUT(PRINT)=""
 .L +@$$^W4GL("W4MDBPRN")@(PRINT):25
 .S @$$^W4GL("W4MDBPRN")@(PRINT)=JB_"\"_DEV
 .I $D(PRCUT(PRINT)),$$SNBC H .1 D CUTSNBC(PRINT) K PRCUT(PRINT) ; *** WAS .5
 ;
 S FIRST=1
 ;
 I $G(@$$^W4PRM@("LBHDONLY")) D  G END
 .N N,CD,MDP,PRINT
 .S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 ..S MDPS=$$MDPS(PRINT)
 ..D TV^W4MDP(MDPS)
 ..D MDBHD(HZM,PRINT,1)
 ..I '$$SNBC D SOF(PRINT)
 ;
 S SAHMDB=0,SSAHMDB=0
 ;
 I $$SAHMDB^W4PRM D
 .D MDBHZ("?")
 .I $$MDBADDR^W4PRM=2,SAHMDB,'$$NOPCCNT S SAHMDB=SAHMDB+1
 .;;S ^BB(HZM,"SAHMDB")=SAHMDB
 ;
 S NOMMDB=0,FIRST=1
 I $$NOPCCNT D
 .S @$$^W4GL("W4SAHMDB")@(HZM)=SAHMDB
 .S @$$^W4GL("W4SAHMDB")@(HZM,"ALL")=$G(SSAHMDB)
 I $$SAHMDB^W4PRM,'SAHMDB S FIRST=0
 ;;
 I '$$SNBC D MDBHZ("")
 ;
 I $$SNBC D
 .I $G(SAHMDB) S NOMMDB=SAHMDB+1
 .;
 .I $$NOPCCNT D  Q
 ..D MDBHZ(0)
 ..D MDBHZ(1)
 . 
 .D MDBHZ(">")
 .D MDBHZ("")
 ;
 I '$$SNBC D
 .S N="" F  S N=$O(MPRINT(N)) Q:N=""  D SOF(N)
 ;
 I $$PAPJ^W4PRM,$$MZM^W4HZMST(HZM),$$TAKEAWAY^W4HZMST(HZM),$$HZM^W4MSL(HZM) D
 .S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 ..D PC(PRINT,"")
 ..D PC(PRINT,HZM_" dpnfd 'qn","B")
 ..D PC(PRINT,"")
 ..D PC(PRINT,"! onefna melyz","BB")
 ;
END ;
 S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 .K @$$^W4GL("W4MDBPRN")@(PRINT)
 .L -@$$^W4GL("W4MDBPRN")@(PRINT)
 ;
 L -@$$^W4TMPORD
 K @TMPORD
 K @TMP1
 Q
 ;
 ;
MDBHZ(PR) ;
 N N,LV,QN,CD,NM,MHP,HR,MDP,MDPS,PRINT,PARMAIN,US,DRC,HRMAIN
 I $$TSF2MDB^W4PRM,$G(PR)=">" Q
 ;
 S PARMAIN="",HRMAIN=""
 ;
 S DRC=1
 I $$SNBC S DRC=-1
 ;
 S N="" F  S N=$O(@TMPORD@(N),DRC) Q:N=""  I N D
 .I $G(BG1),N<BG1 Q
 .S LV=$$LVST^W3HZMST(JB,N)
 .N LV2 S LV2=$$LVST^W3HZMST(JB,N+1)
 .I LV,DRC<0 S PARMAIN=$$DEFMAIN(N)
 .;
 .
 .S QN=$$ITRAST^W3HZMST(JB,N) Q:QN'>0
 .N A S A=$G(@$$^W4TMPORD@(N))
 .I $P(A,"~",5)["|++" S QN=QN\2
 .
 .S CD=$$CDST^W3HZMST(JB,N) Q:CD["-C"  Q:CD["A"
 .S NM=$$SPA^%L1FRM($$NMST^W3HZMST(JB,N))
 .S NM=$$IFCDNM(CD,NM)
 . 
 .S MHP=$$MHST^W3HZMST(JB,N)
 .S HR=$$CMST^W3HZMST(JB,N)
 .I 'LV,DRC>0 S PARMAIN=CD,HRMAIN=HR
 .S MDP=$$PRINTIG^W3PRMDP(CD)
 .;;S ^BB(HZM,N)="CD="_CD_"  MDP="_MDP_" MHP="_MHP
 .S MDP=$$^W4DEFMDP(MDP,NMB) Q:MDP'[">"
 .S MDPPAR=""
 .;;S ^BB(HZM,N)=3
 .S US=$$US(N,PARMAIN,MHP,MDP) Q:'US
 .I $L(CD) S MDPPAR=$P(MDP,">")
 .;;S ^BB(HZM,N)=4
 .;;S ^BB(HZM,N,"US")=US
 .;;S ^BB(HZM,N,"PARMAIN")=PARMAIN
 .;
 .I +US=.5,$G(PR)'=">",$G(PR)'="?" Q
 .;;S ^BB(HZM)=5
 .I +US=1,$G(PR)=">" Q
 .;;S ^BB(HZM,N)=6
 .;
 .S PRINT=$$PORT^W4P($$MDPMDB(MDP)) Q:'PRINT
 .
 .I '$$TSF2MDB^W4PRM!$$SAHMDB^W4PRM,$G(PR)="?" D  Q
 ..S SSAHMDB=SSAHMDB+QN
 ..I $$NOPCCOUNT Q  ; -- 04/10/23
 ..S SAHMDB=SAHMDB+QN Q
 .
 .S MDPS=$$MDPS(PRINT)
 .D TV^W4MDP(MDPS)
 .S MPRINT(PRINT)=""
 .;
 .;
 .I LV,'$$D^W4EZA(PARMAIN)!$$PORTMDB(PARMAIN),$$PCLONG(PRINT) Q
 .
 .I $G(PR)=1,$G(@TMP1@(N))'=1 Q
 .I $G(PR)=0,$G(@TMP1@(N)) Q
 . 
 .;;I $$LAST(N,DRC) S LAST=1
 .D MDB(CD,NM,PARMAIN,QN,MHP,HR,PRINT,N)
 Q
 ;
 ;
PORTMDB(PAR) ;
 N MDP S MDP=$$PRINTIG^W3PRMDP(PAR)
 Q $$PORT^W4P($$MDPMDB(MDP))
 ;
 ;
MDB(PAR,PAR1,PARMAIN,COL,MHP,HRA,PRINT,N) ;
 N PCLONG S PCLONG=$$PCLONG(PRINT)
 ;
 S PRINT=+PRINT
 N LV S LV=$$LVST^W3HZMST(JB,N)
 N CD S CD=$$CDST^W3HZMST(JB,N)
 I $D(@TMPORD@("WASPRINTED",N)) Q
 ;;S ^BB(HZM,PAR)=9
 D ^%L1TS
 N PRGN S PRGN=$C(12)
 ;
 I $$SF^W4PRM,LV,$L($G(HRMAIN)) D
 .I '$L($G(HRA)) S HRA="[ "_HRMAIN_" ]" Q
 .S HRA="[ "_HRMAIN_" ] "_HRA Q
 ;
 N I,PC,QNM S QNM=COL
 I $$MSK^W4P(PAR) S COL=1
 ;
 I $$NOPCCNT S FIRST=0
 ;
 F I=1:1:COL D
 .I '$$MDBTST(HZM,PAR,PAR1,LV) Q
 .;;S ^BB(HZM,PAR)=10
 .D MDBBG(PRINT)
 .D MDBHD(HZM,PRINT)
 .S PC=0
 .D MDBPAR(HZM,PAR,PAR1,LV,HRA,PRINT)
 .;
 .N TGLI,DESC S TGLI=$$TGLI,DESC=$$DESC^W4P(PAR,1)
 .D PUT^%W3DEB("W4HZMPC-MDB","PAR=PAR&HZM=HZM&TGLI=TGLI&DESC=DESC")
 .;
 .I 'LV!$$PARADD(N,PAR) D  ; -- SOPUTSTV MADBEKOT
 ..N LV0 S LV0=LV
 ..I $$SF^W4PRM D SFADD
 ..
 ..N A,N2,J S N2=N
 ..F  S N2=$O(@TMPORD@(N2)) Q:N2=""  S A=$G(^(N2)) Q:'$P(A,"~")  I N2,$$TSFMAIN(N2,PARMAIN) D
 ...N CDT,NMT S NMT=$P(A,"~",3)
 ...S CDT=$P(A,"~",2) Q:CDT["-C"
 ...S NMT=$$IFCDNM(CDT,NMT)
 ...I $G(@$$^W4PRM@("CDMDB")) S NMT=NMT_" "_CDT
 ...S NMT=$$HBR^%L1FRM(NMT,18)
 ...D PC(PRINT,NMT,"B")
 ...S @TMPORD@("WASPRINTED",N2)=$H
 ..
 ..S MDBTSFPRM=$$MDBTSF
 ..;
 ..I MDBTSFPRM!PCLONG D  ; -- PCLONG - DLINNAYA MADBEKA
 ...D PCADD(N,PAR)
 .
 .I $$NOPCCNT D
 ..I '$$TAKEAWAY^W4HZMST(HZM) D
 ...N TX,TEL S TEL=$$TELB^W4HZMST(HZM)
 ...S TX=TEL_" "_$$HBR^%L1FRM($$KTVM^W4HZMST(HZM),$$WD-12)
 ...I $L(TX)>$$WD D
 ....I $$MDBENG S TX=$E(TX,1,$$WD)
 ....I '$$MDBENG S TX=$$HBR^%L1FRM(TX,$$WD)
 ...D PC(PRINT,TX)
 ..
 ..I $$TAKEAWAY^W4HZMST(HZM) D
 ...N MAZMIN D MAZMIN
 ...I $$WOLT(HZM) S MAZMIN=$G(%MDP("B"))_$$HRAED^W4HZMST(HZM)_$G(%MDP("N"))_" "_MAZMIN
 ...S DL=19
 ...S TX=$$HBR^%L1FRM(MAZMIN,DL)
 ...D PC(PRINT,TX,"B")
 ...I '$$^W4KIOSKO(HZM) D PC(PRINT,$$TELB^W4HZMST(HZM),"B")
 ..
 ..I $$HZM^W4MSD(HZM) D
 ...S TX=$$TV^%W1DICT($$^%W1LNG,"SITINLOCAL")
 ...N MAZMIN S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 ...I MAZMIN'?.P S TX=TX_" - "_MAZMIN
 ...D PC(PRINT,TX,"B")
 .
 .I PCLONG,PC D
 ..I $$SNBC,'$G(LAST) D CUT Q
 ..I '$$SNBC D CUT
 .
 .D CLSNBC(PRINT)
 ;
 Q
 ;
 ;
PCADD(N,PAR) ;
 ;;I $$NOTSFPAR(PAR) Q
 N COLT S COLT=4 I PCLONG S COLT=99 ; -- WAS COLT=3 17/05/21
 I $$MDBADDR^W4PRM=2 D
 .S COLT=5 ; -- WAS COLT=4 17/05/21
 .I $$NOPCCNT S COLT=3
 ;
 N N2,J S N2=N,J=0 F  S N2=$O(@TMPORD@(N2)) Q:N2=""  I N2 S A=$G(^(N2)) Q:$P(A,"~")'>LV0&($P(A,"~",2)'["-C")  D  Q:J'<COLT
 .N CDT S CDT=$P(A,"~",2)
 .N OK S OK=1
 .I $G(PR)="" D  Q:'OK
 ..N MHP,MDP
 ..S MHP=$P(A,"~",4)
 ..S MDP=$$PRINTIG^W3PRMDP(CDT)
 ..S MDP=$$^W4DEFMDP(MDP,$G(NMB))
 ..I +$$US(N2,PAR,MHP,MDP)=.5 S OK=0
 . 
 .N NMT S NMT=$P(A,"~",3)
 .S NMT=$$IFCDNM(CDT,NMT)
 .S NMT=$$NMT(NMT,N2)
 .;
 .I CDT["-C" Q
 .I $E(CDT)="A",'$$PCLONG(PRINT) Q
 .
 .I $E(CDT)="A" D
 ..N DLKV S DLKV=($$WD-$L(NMT)\2)-2
 ..N KV S KV=$TR($J("",DLKV)," ","-")
 ..S NMT=KV_" "_NMT_" "_KV_$$LF
 .;
 .I $G(@$$^W4PRM@("CDMDB")),$E(CDT) S NMT=NMT_" "_CDT
 .N QNT,QNT0 S QNT=$P(A,"~",5) S QNT0=QNT
 .I QNT["*" S QNT=$P(QNT,"*",2)
 .I QNT0["|"!(QNT0[":"),QNT0["+" D
 ..N QNT00 S QNT00=$$QN^W4PIZZA(QNT0)
 ..I '$$OLDQNPZ,QNT00="++"!(QNT00="+-")!(QNT00="-+") D  Q
 ...S QNT=$$QNPZ(QNT0)
 ..I QNT0["+" S QNT=+QNT_" ["_$$QNPZ(QNT0)_"]"
 .;;I QNT>1!(QNT["[") S NMT=QNT_" "_$J(NMT,30)
 .I QNT>1!(QNT0["+") S NMT=QNT_" "_$J(NMT,30)
 .S NMT=$$HBR^%L1FRM(NMT,$$WD)
 .D PC(PRINT,NMT) S PC=1
 .S J=J+1
 .I '$G(@$$^W4PRM@("NOMDBSP")),'$$MDBTSF D PC(PRINT,"")
 Q
 ;
 ;
NOTSFPAR(PAR)
 I $$MDBTSF=1,$$DD^W4EZT(PAR) Q 1
 I $$MDBTSF<3,$$DD^W4EZA(PAR) Q 1
 Q 0
 ;
MDBBG(PRINT) ;
 I $$SNBC D OPSNBC(PRINT)
 I '$$SNBC D PC(PRINT,$C(12),0) H 1
 Q
 ;
SNBC(STAM)
 Q +$G(@$$^W4PRM@("SNBC"))
 ;
OPSNBC(PRINT) ;
 ;;L +@$$^W4PC@(PRINT):4 ; ***
 I '$$PCLONG(PRINT) S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,64,27,76,13,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,51,60,13,10)
 ;;L -@$$^W4PC@(PRINT) ; ***
 Q
 ;
CLSNBC(PRINT) ;
 ;;L +@$$^W4PC@(PRINT):4 ; ***
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,12,27,83,13,10)
 ;;L -@$$^W4PC@(PRINT)
 Q
 ;
CLOPSNBC(PRINT)
 D CLSNBC(PRINT)
 D OPSNBC(PRINT)
 Q
 ;
 ;
LF() ;
 Q $C(10)
 ;
PC(PRN,TXT,PRM,DOPSM) ;
 S DOPSM=$G(DOPSM) ; -- WAS +$G(DOPSM)
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 I $$SNBC,TXT=$C(12),$G(PRM)=0 Q
 N SOF S SOF="" I $$SNBC S SOF=$C(13,10)
 ;
 N SM S SM=$$SM(TXT)+DOPSM
 I $G(PRM)=0 D  Q
 .I $$PCLONG(PRN),$$SNBC D SETPC(PRN,$S(TXT="":"",1:$J("",SM)_TXT)) Q  ; *** 15.03.24
 .S @$$^W4PC@(PRN,$ZP(@$$^W4PC@(PRN,""))+1)=TXT
 ;
 S TXT=$TR(TXT,TS0,TSS)
 ;
 I DOPSM="-" S SM=0
 ;
 I $G(PRM)["B" D
 .S SM=$$SMBIG(TXT)+$G(DOPSM)
 .I DOPSM="-" S SM=0
 .S TXT=%MDP(PRM)_TXT_%MDP("N")
 ;
 N TX S TX=$J("",SM)_TXT
 I $$PCLONG(PRN),$$SNBC S TX=$$LF_TX
 D SETPC(PRN,TX)
 Q
 ;
 ;
PREPST(ST)
 I $$HRSP^W4HZPCFN S ST=$$SP^W4HZPCFN(ST)
 S ST=$TR(ST,TS0,TSS)
 Q ST
 ;
 ;
MDBPAR(HZM,PAR,PAR1,LV,HRA,PRINT)
 N WD S WD=$$WD
 N MDBTSF S MDBTSF=$$MDBTSF
 N MDBENG S MDBENG=$$MDBENG
 ;
 S PRENG=0
 ;
 I $$TSF2MDB^W4PRM,LV,$G(PARMAIN) D  S PC=1
 .N TX S TX=$$SHEM(PARMAIN)_" : hixtl ztqez"
 .D PC(PRINT,TX)
 .D PC(PRINT,"")
 ;
 I MDBENG D
 .N PAR11
 .S PAR11=$$SHEML(PAR)
 .I PAR11'?.P S PAR1=PAR11,PRENG=1
 ;
 S ST1=PAR1
 I $G(@$$^W4PRM@("CDMDB")) S ST1=ST1_" "_PAR
 I $$MSK^W4P(PAR),$G(QNM) D
 .S ST1="bw "_$J(QNM,3,3)_" "_ST1
 ;
 D DLG^%L1FRM(ST1,18)
 ;
 I 'MDBTSF D
 .N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 ..D PC(PRINT,$$SPA^%L1FRM(%CHAST(1,I)),"B") S PC=1 ; -- WAS BB
 ;
 I MDBTSF D 
 .I $G(%CHAST(1,2))="" D  Q
 ..D PC(PRINT,$$SPA^%L1FRM(%CHAST(1,1)),"B") S PC=1
 .S ST1=$$HBR^%L1FRM(ST1,38)
 .D PC(PRINT,$$SPA^%L1FRM(ST1)) S PC=1
 ;
 I '$G(@$$^W4PRM@("MDBNOSP")),'MDBTSF D
 .D PC(PRINT,"")
 ;
 I $$PAPJ^W4PRM K TXT Q  ; -- 29/10/23
 ;
 S HRA=$$CLR^W4CLRMN(HRA)
 N HRA1
 ;
 S HRA=$TR(HRA,"|"," ")
 S HRA=$$SPA^%L1FRM(HRA)
 S HRA=$$SP1^%L1FRM(HRA)
 ;
 N TXT0
 D PREPHR^W4HZPCFN(HRA)
 N HEB S HEB=$$HEB^W4HZPCFN(HRA)
 ;
 M ^AA("W4MDBPC","CHAST")=%CHAST
 ;
 I '$$PCLONG(PRINT),$G(%CHAST(1,1))'="",$G(%CHAST(1,2))="" D
 .I HEB S TXT=$G(TXT0)_%CHAST(1,1)_%MDP("N")
 .I 'HEB S TXT=$$ENG^%L1FRM(%CHAST(1,1),$$WD\2)
 .S TXT=$TR(TXT,TS0,TSS)
 .D PC(PRINT,TXT,"B",3)
 ;
 I '$$PCLONG(PRINT),$G(%CHAST(1,1))'="",$G(%CHAST(1,2))'="" D
 .I HEB S TXT=$$HBR^%L1FRM(HRA,$$WD)
 .I 'HEB S TXT=$$ENG^%L1FRM(HRA,$$WD)
 .S TXT=$TR(TXT,TS0,TSS)
 .D PC(PRINT,TXT)
 ;
 I $$PCLONG(PRINT) D  ; -- 21/10/21
 .I HEB F J=1:1 Q:'$D(%CHAST(1,J))  D
 ..N ST S ST=$$PREPST(%CHAST(1,J))
 ..S TXT=$S(J=1&'$$MDBTSF:$$LF,1:"")_TXT0_ST_%MDP("N") D PC(PRINT,TXT,0)
 .
 .I 'HEB F J=$O(%CHAST(1,99),-1):-1:1 D
 ..I J=$O(%CHAST(1,99),-1) S TXT="" D PC(PRINT,TXT)
 ..N ST S ST=$$PREPST(%CHAST(1,J))
 ..S TXT=TXT0_ST_%MDP("N") D PC(PRINT,TXT,"B",0)
 ;
 K TXT
EMDBPAR ;
 I $G(PRNLAB) D PC(PRINT,$ZD($H,"DD.MM.YY"),"B")
 Q
 ;
 ;
MDPMDB(MDP) ;
 I MDP[">>" Q +$P(MDP,">>",2)
 I MDP["<<" Q +$P(MDP,"<<",2)
 I MDP["->" Q +$P(MDP,"->",2)
 I MDP["-<" Q +$P(MDP,"-<",2)
 Q +$P(MDP,">",2)
 ;
 ; 
MDBHD(HZM,PRINT,BIG) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 N DAT,SHAA,MAZMIN
 ;
 I $$^W4MSL(NMB) D
 .D MAZMIN
 .
 .S DAT=$$TRH^W4HZMST(HZM)
 .S SHAA=$$SHAA^W4HZMST(HZM)
 .
 .I $$PCLONG(PRINT) D PCORD(HZM)
 .
 .I '$$PCLONG(PRINT),$G(PR)=""!($G(PR)=">")!($G(PR)=0)!($G(PR)=1) D PCORDSHORT
 .I $$MDBADDR^W4PRM=2,'FIRST Q
 .
 .N CMPN S CMPN=$$COMP^W4HZMST(HZM)
 .
 .I $L(CMPN),$$SPA^%L1FRM(CMPN)'=$$SPA^%L1FRM(MAZMIN) D
 ..N TX S TX=$$HBR^%L1FRM(CMPN,24)_" : dxag"
 ..I '$G(BIG) D PC(PRINT,TX)
 ..I $G(BIG) D PCBIG(PRINT,TX)
 .
 .I $TR($$IR^W4HZMST(HZM)," ","")="TAKEAWAY",'$$WOLT(HZM),$$HRAED^W4HZMST(HZM)'["WOLT" D
 ..D PC(PRINT,$$CENTRB^%L1FRM("TAKE AWAY",$$WD),"B")
 .;;S ^BB(HZM,"MAZMIN")=$G(MAZMIN)
 .
 .I $$TSF2MDB^W4PRM,$G(NOMMDB),$G(SAHMDB) D TSF2MDBLK
 .
 .I '$$TSF2MDB^W4PRM,$L(MAZMIN) D PCLK
 ;
 ;
 I $$^W4MSD(NMB) D
 .S DAT=$$DATCB^W4HZMST(HZM)
 .S SHAA=$P(DAT,"  ",2)
 .S DAT=$P(DAT," ")
 .D PCORDSHORT Q:'FIRST
 .N MAZMIN S MAZMIN=$$SPA^%L1FRM($$MAZMIN^W4HZMST(HZM))
 .N TX S TX=$$HBR^%L1FRM(MAZMIN,$$WD)
 .I '$G(BIG) D PC(PRINT,TX)
 .I $G(BIG) D PCBIG(PRINT,TX)
 ;
 I $$MDBADDR^W4PRM=2,'FIRST Q  ; -- PRATEI AZMANA AL MADBEKA NIFREDET
 ;
 I $$MDBADDR^W4PRM=2 S TX="" D PC(PRINT,TX)
 ;
 I $$HZM^W4MSL(HZM) D
 .N HR S HR=$$HRAED^W4HZMST(HZM)
 .Q:$$WOLT(HZM)
 .Q:$$TAKEAWAY^W4HZMST(HZM)
 .N TX S TX=$$KTVM^W4HZMST(HZM)
 .I $L(TX)>$$WD D
 ..I $$MDBENG S TX=$E(TX,1,$$WD)
 ..I '$$MDBENG S TX=$$HBR^%L1FRM(TX,$$WD)
 .I '$G(BIG) D PC(PRINT,TX)
 .N DL S DL=20 I $$PCLONG(PRINT) S DL=19
 .I $G(BIG) D PCBIG(PRINT,TX,DL)
 ;
 I $$HZM^W4MSD(HZM) D
 .N TX S TX="zgwl e`eai"
 .I $G(@$$^W4ORD@(HZM,"LL"))=1 S TX="zayl e`eai"
 .D PC(PRINT,TX,"B")
 ;
 S FIRST=0
 ;
 I $$MDBADDR^W4PRM=2 D
 .I $$SNBC D CLOPSNBC(PRINT)
 .I '$$SNBC D PC(PRINT,$C(12),0) H 1
 .D PCORDSHORT
 ;
 D PC(PRINT,"")
 Q
 ;
 ;
SM(TX) ;
 N LTX S LTX=$L(TX)
 I $L($G(%MDP("B"))),$L($G(%MDP("N"))) D
 .S LTX=$$L^%L1FRM(TX,%MDP("B"),%MDP("N"))
 S SM=$$WD+$G(@$$^W4PRM@("MDBSM"))-$J(LTX/$$KFPC,0,0)
 ;;I $$SNBC S SM=SM+8
 Q SM
 ;
SMBIG(TX) ;
 Q $$WD+$G(@$$^W4PRM@("MDBSM"))-$J($L(TX)*2/$$KFPC,0,0)
 ;
WDBIG(STAM) ;
 Q $J(($$WD/2)*$$KFPC,0,0)
 ;
WD(STAM) ;
 Q 38
 ;
KFPC(STAM) ;
 Q 1
 I $$OLDPC Q 1
 Q $J(40/28,3,3)
 ;
TGLI(STAM) ;
 Q $$^W4TGLI
 ;
SETPC(PRINT,TXT) ;
 ;;L +@$$^W4PC@(PRINT):4 ; ***
 I $$SNBC,$E(TXT,$L(TXT)-1,$L(TXT))'=$C(13,10) S TXT=TXT_$C(13,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=TXT
 ;;L -@$$^W4PC@(PRINT) ; ***
 Q
 ;
 ;
CUT ;
 I $G(@$$^W4PRM@("NOMDBCUT")) Q
 ;
 I $$PCLONG(PRINT),$$SNBC D  Q
 .;;L +@$$^W4PC@(PRINT):4 ; ***
 .S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)="<<WAIT>>"_$C(10,10,10,10,10,13,10)
 .;;L -@$$^W4PC@(PRINT) ; ***
 ;
 D SETPC(PRINT,$C(10,10,10,10,10)_$G(%MDP("CUT")))
 Q
 ;
OLDPC(STAM) ;
 I $$XPMOD($G(PRINT)) Q 1
 Q $$OLDPC^W4PRM
 ;
XPMOD(PRINT) ;
 I $G(PRINT),$$MDPS^W4MDP(PRINT)=8 Q 1
 Q 0
 ;
 ;
SOF(PRINT) ;
 I $$SNBC Q
 ;
 I $D(MPRINT(PRINT)) D  Q
 .D DEFMDP(PRINT)
 .;
 .I '$G(P1HZMET),'$$MDPCUT(PRINT) S TXT=$C(10,10,10,10) D SETPC(PRINT,TXT) Q
 .I '$G(P1HZMET),$$MDPCUT(PRINT) D  Q
 ..I $$PCLONG(PRINT) S TXT=$C(10,10,10,10) D SETPC(PRINT,TXT) Q
 ..D CUT
 Q
 ;
 ;
MDPCUT(PRINT) ;
 I $$MDPS(PRINT)=6!($$MDPS(PRINT)=8)!($$MDPS(PRINT)=9) Q 1
 Q 0
 ;
MDPS(PRINT) ;
 Q $$MDPS^W4MDP(PRINT)
 ;
 ;
US(N,PARMAIN,MHP,MDP)
 I MDP'[">" Q 0
 ;
 N CD S CD=$$CDST^W3HZMST(JB,N) I CD="" Q 0
 N LV S LV=$$LVST^W3HZMST(JB,N) I 'LV Q 1
 ;
 I $G(PARMAIN)="",$G(DRC)<0 S PARMAIN=$$DEFMAIN(N)
 ;
 I $$TSF2MDB^W4PRM Q 1
 I $$DD^W4EZA(PARMAIN),LV<2 Q 1
 ;
 N SET,US S US=0
 ;
 I $G(PARMAIN) D  I US Q US
 .N QNDEF S QNDEF=$$^W4QNDEF(PARMAIN,CD)
 .I CD,QNDEF["->"!(QNDEF["-<")!(QNDEF[">>")!(QNDEF["<<") S US=.5 Q
 .I CD,QNDEF[">"!(QNDEF["<") S US=1 Q
 .;
 .S SET=$$^W4SET(PARMAIN,CD) Q:'SET
 .N A S A=$G(@$$^W4GLSET(HZM)@(SET))
 .N MAX S MAX=$P(A,"\",2)
 .I MAX["->"!(MAX["-<")!(MAX[">>")!(MAX["<<") S US=.5 Q
 .I MAX[">"!(MAX["<") S US=1 Q
 ;
 I MDP[">>"!(MDP["<<") Q .5
 Q 0  ; --- 21/08/22 ; --- MADBEKOT BLI >> LO MADPISIM
 ;
 I $G(PARMAIN)="" Q 0
 ;
 I $$SF^W4PRM,'MHP Q 0
 ;
 I '$$SF^W4PRM,$G(@$$^W4PRM@("MDB"))=2&$$DD^W4EZT(PARMAIN) Q 0
 I '$$SF^W4PRM,$G(@$$^W4PRM@("MDB"))=3&$$DD^W4EZA(PARMAIN) Q 0
 Q 0
 ;
 ;
DEFMDP(PRINT) ;
 Q
 ;
 ;
MDBKOT(HZM,PRINT) ;  -- MADBEKA AHAREY COL AMADBEKOT
 N MDPS
 S MDPS=$$MDPS(PRINT)
 D TV^W4MDP(MDPS)
 ;
 D PC(PRINT,"")
 I '$$MSPYOM^W4PRM D PC(PRINT,HZM,"BB")
 ;
 I $$MSPYOM^W4PRM D
 .N HZJ S HZJ=$$HZJ(HZM)
 .N MDPI,MDPIE
 .D MDPI
 .N RV S RV=MDPI_$J("",$L(HZJ))_MDPIE
 .;;D PC(PRINT,RV,"BB") ; -- 16.09.20
 .D PC(PRINT,MDPI_HZJ_MDPIE,"BB")
 .;;D PC(PRINT,RV,"BB") ; -- 16.09.20
 .D PC(PRINT,"")
 .D PC(PRINT,HZM_" dpnfd 'qn")
 ;;
 D PC(PRINT,"")
 D PC(PRINT,$$IR^W4HZMST(HZM),"BB")
 D PC(PRINT,"")
 D PC(PRINT,$$KTVM^W4HZMST(HZM,1),"B")
 ;;D CLSNBC(PRINT)
 ;
 D PC(PRINT,"")
 D PC(PRINT,$$SHAA^W4HZMST(HZM),"BB")
 I '$$SNBC D CUT
 Q
 ;
 ;
MDBCMNT(HZM,PRINT) ;  
 N MDPS
 S MDPS=$$MDPS(PRINT)
 D TV^W4MDP(MDPS)
 D MDBBG(PRINT)
 D PC(PRINT,HZM,"B")
 ;
 N CMNT S CMNT=$$HRA^W4HZMST(HZM)
 D PCBIG(PRINT,CMNT)
 Q
 ;
PCBIG(PRINT,TX,DL) ;
 I '$G(DL) S DL=20
 N %CHAST
 D DLG^%L1FRM(TX,DL)
 N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 .D PC(PRINT,%CHAST(1,I),"B","-")
 D CLSNBC(PRINT)
 Q
 ;
 ;
LEHEM(CDT,CD) ; 
 N SUG1 S SUG1=$$SUG1^W4P(CDT)
 I SUG1["mgl"!(SUG1["ngl") Q 1
 Q 0 
 ;
MDBTSF(STAM) ; 
 I $$TSF2MDB^W4PRM Q 0
 Q $G(@$$^W4PRM@("MDBTSF")) 
 ;
PCLONG(PRINT)
 N MDPS S MDPS=$$MDPS(PRINT)
 I MDPS=9 Q 1
 N PCLONG S PCLONG=0
 I PRINT["[" D
 .S PCLONG=$P(PRINT,"[",2) I 'PCLONG S PCLONG=1
 Q PCLONG
 ;
DEFMAIN(N)  
 N PARMAIN S PARRMAIN=""
 N II F II=N-1:-1:1 Q:'$$LVST^W3HZMST(JB,II)
 I II>0,'$$LVST^W3HZMST(JB,II) D
 .S PARMAIN=$$CDST^W3HZMST(JB,II)
 .S HRMAIN=$$CMST^W3HZMST(JB,II)
 Q PARMAIN
 ;
OBRSM(A) ; 
 Q A
 ;
 ;
TSFMAIN(IND,PARMAIN) ; 
 I '$G(PARMAIN) Q 0
 N CD S CD=$$CDST^W3HZMST(JB,IND) I CD="" Q 0
 ;
 N QNDEF S QNDEF=$G(@$$^W4GL("QNDEF")@(PARMAIN,CD))
 I CD,QNDEF["}"!(QNDEF["{") Q 1
 N SET S SET=$$^W4SET(PARMAIN,CD) Q:'SET 0
 N A S A=$G(@$$^W4GLSET(HZM)@(SET))
 N MAX S MAX=$P(A,"\",2)
 I MAX["}"!(MAX="{") Q 1
 Q 0
 ; 
MDBTST(HZM,PAR,PAR1,LV)
 N MDBTSF S MDBTSF=$$MDBTSF
 N MDBENG S MDBENG=$$MDBENG
 N PC S PC=0
 ;
 I LV,$G(PARMAIN),$G(PAR1)'="" S PC=1
 ;
 I MDBENG D
 .N PAR11
 .S PAR11=$$SHEML(PAR)
 .I PAR11'?.P S PAR1=PAR11,PRENG=1
 ;
 I 'LV,$G(PAR1)'="" S PC=1
 Q PC
 ;
 ;
PCORDSHORT ;
 I $$SAHMDB^W4PRM D
 .I $$NOPCCOUNT Q
 .I FIRST,$$NOPCCNT Q
 .I DRC=1 S NOMMDB=NOMMDB+1 Q
 .I DRC=-1 S NOMMDB=NOMMDB-1
 ;
 N TX,DAT1,SHAA1 S TX=""
 S DAT1=$P(DAT,".",1,2)_"-l"
 S SHAA1=SHAA
 ;
 S HZM1=" dpnfd"
 ;
 I $$SAHMDB^W4PRM D
 .S DAT1=""
 .N MSP S MSP=(NOMMDB_"/"_SAHMDB)
 .I $$NOPCCOUNT S MSP=" "
 .N SP
 .S SP=$J("",5-$L(MSP))
 .S TX=$G(%MDP("B"))_MSP_SP_$G(%MDP("N"))_" "
 .S HZM1=""
 .S SHAA1=$G(%MDP("B"))_SHAA_$G(%MDB("N"))
 ;
 ;
 I '$G(BIG) D
 .I $$MSPYOM^W4PRM D
 ..S TX=TX_" "_SHAA1_" "_DAT1_$G(%MDP("B"))_$J($$^W4MSPYOM(HZM),3)_$G(%MDP("N"))_" "_HZM_HZM1
 ..S ^AA("W4MDBPC",$J,"ORDSHORT")=HZM_"\"_TX
 ..D PC(PRINT,TX,"",-1)
 ..D PC(PRINT,"","") ; -- 18/08/22
 .
 .I '$$MSPYOM^W4PRM D
 ..S TX=TX_" "_SHAA1_" "_DAT1_%MDP("B")_$J(HZM,6)_%MDP("N")_HZM1
 ..D PC(PRINT,TX,"")
 ..I $$MDBTSF,$$MDBADDR^W4PRM'=2 Q
 ..D PC(PRINT,"",""); -- 18.08.22
 ;
 ;
 I $G(BIG) D
 .I $$MSPYOM^W4PRM D
 ..D PCBIG(PRINT,$J($$^W4MSPYOM(HZM),3)_" "_HZM_HZM1)
 ..D PCBIG(PRINT,SHAA1_" "_DAT1)
 .
 .I '$$MSPYOM^W4PRM D
 ..D PCBIG(PRINT,$J(HZM,6)_HZM1)
 ..D PCBIG(PRINT,SHAA1_" "_DAT1)
 ;
 I $$MDBADDR^W4PRM=2,FIRST D
 .N TMPC S TMPC=$P($$DATCB^W4HZMST(HZM),"  ",2)
 .I $P($G(@$$^W4ORD@(HZM,"ST",1)),"\",2)[":" D
 ..S TMPC=$P($G(@$$^W4ORD@(HZM,"ST",1)),"\",2)
 .S TX=$$LF_$J("",16)_TMPC_" : dpnfd zlaw onf"_$$LF
 .D PC(PRINT,TX,"")
 Q
 ;
 ;
PCORD(HZM) ;
 ;;D PC(PRINT,"")
 N MDPI,MDPIE D MDPI 
 D
 .N DLV S DLV="!!!   DELIVERY  !!!"
 .I $$TAKEAWAY^W4HZMST(HZM) S DLV="!!!  TAKE AWAY  !!!"
 .D PC(PRINT,DLV,"B")
 .D PC(PRINT,"")
 ;
 I '$$MSPYOM^W4PRM D
 .N RV,RV0 S RV=$J("",19-$L(HZM)\2)
 .S RV0=$J("",20-$L(HZM)\2)
 .D PC(PRINT,MDPI_RV0_HZM_RV_MDPIE,"BB")
 ; 
 I $$MSPYOM^W4PRM D
 .N HZJ S HZJ=$$HZJ(HZM)
 .D PC(PRINT,MDPI_HZJ_MDPIE,"BB")
 .D PC(PRINT,"")
 .D PC(PRINT,%MDP("N")_" "_$J(HZM,7)_" dpnfd","",3)
 ;
 D PC(PRINT,"")
 ;
 I $$WOLT^W4HZPCHD(HZM) D
 .N NOMWOLT S NOMWOLT=$$NOMWOLT^W4HZPCHD(HZM) Q:'NOMWOLT
 .D PC(PRINT,NOMWOLT_" : WOLT","BB") ; -- WAS B -- 16.02.23
 ;
 N PR S PR="B" S:$G(@$$^W4PRM@("MDBDTKTN")) PR="N"
 D PC(PRINT,SHAA_" "_DAT_" -l",PR)
 D PC(PRINT,"")
 Q
 ;
 ;
HZJ(HZM) ;
 N HZJ S HZJ=$J($$^W4MSPYOM(HZM),3)
 N RV,RV0 S RV=$J("",19-$L(HZJ)\2)
 S RV0=$J("",20-$L(HZJ)\2)
 S HZJ=RV_HZJ_RV
 Q HZJ
 ;
MDPI ;
 S MDPI=$G(%MDP("I"))
 S MDPIE=$G(%MDP("IE"))
 I $$NOIKOT S (MDPI,MDPIE)=""
 Q 
 ; 
NOIKOT(STAM) ; 
 Q $G(@$$^W4PRM@("NOIKOT")) 
 ;
 ; 
MAZMIN ;
 S MAZMIN=""
 I $$^W4MSL(NMB) D
 .S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 .N NAME S NAME=$$NAME^W4HZMST(HZM)
 .I '$L(MAZMIN),'$$COMP^W3PRM S MAZMIN=NAME
 Q
 ;
PCLK ;
 N MAZMIN D MAZMIN
 ;
 I '$$PCLONG(PRINT) D  Q
 .N DL S DL=25
 .I $$WOLT(HZM) S MAZMIN=$G(%MDP("B"))_$$HRAED^W4HZMST(HZM)_$G(%MDP("N"))_" "_MAZMIN
 .I '$G(BIG) D
 ..I $$WOLT(HZM) S TX=$$HBR^%L1FRM(MAZMIN,DL) D PC(PRINT,TX,"") Q
 ..S TX=$$HBR^%L1FRM(MAZMIN,DL)_" "_$J(NMB,10)
 ..D PC(PRINT,TX,"")
 .
 .I $G(BIG) D
 ..S TX="" D PC(PRINT,TX)
 ..S TX=$$HBR^%L1FRM(MAZMIN,DL)_" "_$J(NMB,10)
 ..D PCBIG(PRINT,TX)
 ..S TX="" D PC(PRINT,TX)
 ;
 I $$PCLONG(PRINT) D
 .S TX="" I $$SAHMDB^W4PRM,$G(SAHMDB) S TX=$G(%MDP("B"))_NOMMDB_"/"_SAHMDB_$G(%MDP("N"))
 .D PC(PRINT,TX)
 .S TX=NMB_" 'akl"
 .I '$G(BIG) D PC(PRINT,TX)
 .I $G(BIG) D PCBIG(PRINT,TX,19) D PC(PRINT,"")
 .Q:'$L($G(MAZMIN))
 .S TX=$$SPA^%L1FRM(MAZMIN)
 .N PR S PR="B" I $G(@$$^W4PRM@("MDBLKKTN")) S PR="N"
 .I '$G(BIG) D PC(PRINT,TX,PR)
 .I $G(BIG) D PCBIG(PRINT,TX,19) D PC(PRINT,"")
 Q
 ;
 ; 
TSF2MDBLK ; 
 N TX S TX=NOMMDB_"/"_SAHMDB
 ;
 I '$$COMP^W3PRM S MAZMIN=$$LKHNM^W4HZMST(HZM) 
 I $$COMP^W3PRM S MAZMIN=$$MAZMIN^W4HZMST(HZM) 
 ;
 I $L(MAZMIN) D
 .I '$$PCLONG(PRINT) D 
 ..S TX=TX_$J($$HBR^%L1FRM(MAZMIN,16)_" "_NMB_" 'akl",$$WD-$L(TX)-1)
 ..D PC(PRINT,TX)
 .
 .I $$PCLONG(PRINT) D 
 ..D PC(PRINT,"")
 ..S TX=TX_$J(NMB_" 'akl",$$WD-$L(TX)-1)
 ..D PC(PRINT,TX)
 ..S TX=MAZMIN
 ..D PC(PRINT,TX,"B")
 Q
 ;
SFADD ;
 N A,N2,J,END,PRLEHEM S N2=N,END=0,PRLEHEM=0
 F  S N2=$O(@TMPORD@(N2)) Q:N2=""  S A=$G(^(N2)) Q:'$P(A,"~")  D  Q:END
 .N NMT S NMT=$P(A,"~",3)
 .S CDT=$P(A,"~",2) Q:CDT["-C"
 .N SUG1 S SUG1=$$SUG1^W4P(PAR)
 .I SUG1["ecpq",$E(CDT)="A",NMT["mgl"!(NMT["ngl") S PRLEHEM=1 Q
 .I SUG1["upl",SUG1["qwea",$E(CDT)="A",NMT["mgl"!(NMT["ngl") S PRLEHEM=1 Q
 .I $E(CDT)="A",NMT'["mgl",NMT'["ngl" S PRLEHEM=0 Q
 .
 .I PRLEHEM D  S PRLEHEM=0
 ..S END=1
 ..I $G(@$$^W4PRM@("CDMDB")) S NMT=NMT_" "_CDT
 ..S NMT=$$HBR^%L1FRM(NMT,18)
 ..D PC(PRINT,NMT)
 ..S @TMPORD@("WASPRINTED",N2)=$H
 Q
 ;
PARADD(N,PAR) ; 
 N A,A2,CDT,LVT
 S A=$G(@TMPORD@(N))
 S CDT=$P(A,"~",2) I CDT["-"!(CDT["A") Q 0
 S A2=$G(@TMPORD@(N+1))
 N CDT2 S CDT2=$P(A2,"~",2) I CDT2["-C" D
 .S A2=$G(@TMPORD@(N+2))
 S LVT=$P(A,"~")
 I $$^W4EZAT(PAR),LVT=1 Q 1
 I $$^W4EZI(PAR),LVT=1 Q 1
 N LVT2 S LVT2=$P(A2,"~") 
 I LVT=1,LVT2=2 Q 1  ; -- 18.08.22
 Q 0 
 ;
PCTGLI ; 
 I $$SNBC D CLOPSNBC(PRINT)
 I '$$SNBC D PC(PRINT,$C(12),0) H 1
 D MDBHD(HZM,PRINT)
 D PC(PRINT,$$HBR^%L1FRM("RICE",19),"B")
 D PC(PRINT,"","")
 Q
 ;
WOLT(HZM) ; 
 I $$WOLT^W4HZMST(HZM) Q 1
 ;;I $$SPA^%L1FRM(MAZMIN)="WOLT" Q 1
 Q 0 
 ;
NMT(NMT,N2) ; 
 N A,NMT2 S A=$G(@TMPORD@(N2+1))
 N CDT S CDT=$P(A,"~",2) 
 I CDT'["-C" Q NMT 
 S NMT2=$P(A,"~",3) 
 N OKT S OKT=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  D  Q:OKT
 .I $G(^(N))=NMT2 S OKT=1
 I 'OKT Q NMT
 N MDBENG S MDBENG=$$MDBENG
 I MDBENG S NMT=NMT2_" "_NMT
 E  S NMT=NMT_" "_NMT2 
 Q NMT 
 ;
MDBENG(STAM) ; 
 Q $G(@$$^W4PRM@("MDBENG"))
 ;
CDNM(STAM) ; 
 I $$^W6,$$NOPCLOAZ^W4PRM Q 1
 Q $G(@$$^W4PRM@("MDBCDNM"))
 ;
IFCDNM(CD,NM) ;
 I $$CDNM,CD D
 .N TX S TX=$$SHEM(CD) Q:TX=""
 .S NM=TX
 Q NM
 ; 
CRMPRINT ; --> MPRINT 
 N N,CD,MDP,PRINT 
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D 
 .S CD=$P($G(^(N)),"~",2) 
 .S MDP=$$PRINTIG^W3PRMDP(CD) 
 .I MDP[">" D 
 ..S MDPB=$$MDPMDB(MDP) Q:'MDPB 
 ..S PRINT=$$PORT^W4P(MDPB) Q:'PRINT 
 ..S MPRINT(PRINT)="" 
 Q 
 ;
 ;
CUTSNBC(PRINT) ;
 I '$$PCLONG(PRINT) Q  ; -- 18.08.22
 ;;S ^AA(HZM,"SNBCCUT")=1
 I $G(@$$^W4PRM@("NOMDBCUT")) Q
 N TXT
 S TXT=$C(29,86)_"m"
 D SETPC(PRINT,TXT)
 Q 
 ;
 ;
NOPCCOUNT() ; 
 I $$NOPCCNT,MDPPAR'="",+MDPPAR=0 Q 1
 Q 0 
 ; 
NOPCCNT() ; 
 Q $G(@$$^W4PRM@("NOPCCNT"))
 ;;Q $$PAPJ^W4PRM 
 ;
 ;
SORTTMP ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 N FIRST S FIRST=1
 N N,N1,N2,LV,QN,CD,NM,MHP,HR,MDP,MDPS,PRINT,PARMAIN,US,DRC,HRMAIN
 N TMP1 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 ;
 S PARMAIN="",HRMAIN=""
 ;
 S DRC=1
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .I $G(BG1),N<BG1 Q
 .S LV=$$LVST^W3HZMST(JB,N)
 .N LV2 S LV2=$$LVST^W3HZMST(JB,N+1)
 .
 .S QN=$$ITRAST^W3HZMST(JB,N) Q:QN'>0
 .N A S A=$G(@$$^W4TMPORD@(N))
 .
 .S CD=$$CDST^W3HZMST(JB,N) Q:CD["-C"  Q:CD["A"
 .S NM=$$SPA^%L1FRM($$NMST^W3HZMST(JB,N))
 .S NM=$$IFCDNM(CD,NM)
 . 
 .S MHP=$$MHST^W3HZMST(JB,N)
 .S HR=$$CMST^W3HZMST(JB,N)
 .I 'LV S PARMAIN=CD
 .S MDP=$$PRINTIG^W3PRMDP(CD)
 .S MDP=$$^W4DEFMDP(MDP,NMB) Q:MDP'[">"
 .S MDPPAR=""
 .S US=$$US(N,PARMAIN,MHP,MDP) Q:'US
 .I $L(CD) S MDPPAR=$P(MDP,">")
 .;
 .I +US=.5,$G(PR)'=">",$G(PR)'="?" Q
 .I +US=1,$G(PR)=">" Q
 .;
 .S PRINT=$$PORT^W4P($$MDPMDB(MDP)) Q:'PRINT
 .;
 .I LV,'$$D^W4EZA(PARMAIN)!$$PORTMDB(PARMAIN),$$PCLONG(PRINT) Q
 .S IND=1
 .I $$NOPCCOUNT S IND=0
 .;
 .S @TMP1@(N)=IND
 ;
 Q
 ;
 ;
QNPZ(QNT0) 
 S QNT0=$$QN^W4PIZZA(QNT0)
 I '$$OLDQNPZ Q $$QNG^W4PIZZA(QNT0)
 Q QNT0 
 ;
SHEM(PAR) ; 
 N PAR1
 S PAR1=$$SPA^%L1FRM($$SHEM^W4P(PAR))
 S PAR1=$$RPL^%L1FRM(PAR1,"()","")
 S PAR1=$$RPL^%L1FRM(PAR1,"[]","")
 Q PAR1
 ;
SHEML(PAR) ;
 N PAR1
 S PAR1=$$SPA^%L1FRM($$SHEML^W4P(PAR))
 S PAR1=$$RPL^%L1FRM(PAR1,"()","")
 S PAR1=$$RPL^%L1FRM(PAR1,"[]","")
 Q PAR1
 ;
OLDQNPZ() ; 
 Q +$G(@$$^W4PRM@("OLDQNPZG")) 
 ;
LAST(N,DRC) ; 
 N A,OK,N1 S OK=1
 S N1=N F  S N1=$O(@TMPORD@(N1),DRC) Q:N1=""  I N1 D  Q:'OK
 .S A=$G(^(N1)) I $P(A,"~")=0 S OK=0
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDBPC1
W4MDBPC(HZM) ; [ 08.05.26 13:54 ] [ 18.03.24 05:34 ] [ 15.03.24 13:33 ] 
 N (JB,%ARG,HZM,P1HZMET,BG)
 S TMP1=$$^W4MAIN("TMP1") K @TMP1 
 S LAST=0
 ;
 I $G(HZM)'>0 Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$^W4HZMH(HZM) Q
 I $$^W4PIZUL(HZM) Q
 I $$DEL^W4DEL(HZM) Q
 I $G(@$$^W4PRM@("NOKSKMDB")),$$^W4KIOSKO(HZM) Q
 ;
 I $$SNDY^W4PRM,$$HZM^W4MSL(HZM),$$MDBYAD^W4PRM!$$PAPJ^W4PRM D
 .N RES
 .S RES=$G(@$$^W4ORD@(HZM,"SNDYPREP")) 
 .I RES'["succes" D
 ..N PREPTIME S PREPTIME=$G(@$$^W4PRM@("PREPTIME"),5)
 ..D WR2SNDY^W4DLVORD(JB,HZM,PREPTIME) 
 ;
 I $$TRICKER^W4PRM(HZM),'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$D(@$$^W4ORD@(HZM,"TRICKPREP")) D
 .J ^W4TRICKR(JB,HZM,"PREP")
 ;
 I $$TEAV^W4PRM,'$$MM^W4PRM,$$HZM^W4MSL(HZM),'$D(@$$^W4ORD@(HZM,"TEAVPREP")) D
 .I $$TAKEAWAY^W4HZMST(HZM) Q
 .J ^W4TVSND(JB,HZM,"PREP")
 ;
 I $$HZM^W4MSL(HZM),$$TAKEAWAY^W4HZMST(HZM),$G(@$$^W4PRM@("NOMSLTAW")) Q
 D PUT^%W3DEB("W4MDBPC","HZM=HZM&P1HZMET=P1HZMET")
 Q:$G(P1HZMET)
 ;
 ;;S ^BB(HZM)=1
 S TMPORD=$$^W4TMPORD
 ;
 I $$^W4GETHZ(HZM,"",1)<1 G END
 ;;S ^BB(HZM)=2
 ;
 I $$NOPCCNT D SORTTMP
 ;
 S MDPPAR=""
 ;
 S BG1=0
 I $G(BG) D
 .S N="",I=0 F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:BG1
 ..N A S A=$G(^(N))
 ..I 'A S I=I+1 I I=BG S BG1=N
 .I 'BG1 S BG1=$O(@TMPORD@(9999),-1)+1
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 I $$^W4MSD(NMB),'$G(@$$^W4PRM@("MDBMSD")) G END
 I $$^W4MSD(NMB),'$$TAW^W4DLPK(NMB) G END
 ;
 D CRMPRINT
 ;
 K PRCUT
 S DEV=$$^W4MYDVN
 ;
 S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 .I $$SNBC,$D(@$$^W4GL("W4MDBPRN")@(PRINT)) S PRCUT(PRINT)=""
 .L +@$$^W4GL("W4MDBPRN")@(PRINT):25
 .S @$$^W4GL("W4MDBPRN")@(PRINT)=JB_"\"_DEV
 .I $D(PRCUT(PRINT)),$$SNBC H .1 D CUTSNBC(PRINT) K PRCUT(PRINT) ; *** WAS .5
 ;
 S FIRST=1
 ;
 I $G(@$$^W4PRM@("LBHDONLY")) D  G END
 .N N,CD,MDP,PRINT
 .S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 ..S MDPS=$$MDPS(PRINT)
 ..D TV^W4MDP(MDPS)
 ..D MDBHD(HZM,PRINT,1)
 ..I '$$SNBC D SOF(PRINT)
 ;
 S SAHMDB=0,SSAHMDB=0
 ;
 I $$SAHMDB^W4PRM D
 .D MDBHZ("?")
 .I $$MDBADDR^W4PRM=2,SAHMDB,'$$NOPCCNT S SAHMDB=SAHMDB+1
 .;;S ^BB(HZM,"SAHMDB")=SAHMDB
 ;
 S NOMMDB=0,FIRST=1
 I $$NOPCCNT D
 .S @$$^W4GL("W4SAHMDB")@(HZM)=SAHMDB
 .S @$$^W4GL("W4SAHMDB")@(HZM,"ALL")=$G(SSAHMDB)
 I $$SAHMDB^W4PRM,'SAHMDB S FIRST=0
 ;;
 I '$$SNBC D MDBHZ("")
 ;
 I $$SNBC D
 .I $G(SAHMDB) S NOMMDB=SAHMDB+1
 .;
 .I $$NOPCCNT D  Q
 ..D MDBHZ(0)
 ..D MDBHZ(1)
 . 
 .D MDBHZ(">")
 .D MDBHZ("")
 ;
 I '$$SNBC D
 .S N="" F  S N=$O(MPRINT(N)) Q:N=""  D SOF(N)
 ;
 I $$PAPJ^W4PRM,$$MZM^W4HZMST(HZM),$$TAKEAWAY^W4HZMST(HZM),$$HZM^W4MSL(HZM) D
 .S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 ..D PC(PRINT,"")
 ..D PC(PRINT,HZM_" dpnfd 'qn","B")
 ..D PC(PRINT,"")
 ..D PC(PRINT,"! onefna melyz","BB")
 ;
END ;
 S PRINT="" F  S PRINT=$O(MPRINT(PRINT)) Q:PRINT=""  D
 .K @$$^W4GL("W4MDBPRN")@(PRINT)
 .L -@$$^W4GL("W4MDBPRN")@(PRINT)
 ;
 K @TMPORD
 ;;K @TMP1 ; ***
 Q
 ;
 ;
MDBHZ(PR) ;
 N N,LV,QN,CD,NM,MHP,HR,MDP,MDPS,PRINT,PARMAIN,US,DRC,HRMAIN
 I $$TSF2MDB^W4PRM,$G(PR)=">" Q
 ;
 S PARMAIN="",HRMAIN=""
 ;
 S DRC=1
 I $$SNBC S DRC=-1
 ;
 S N="" F  S N=$O(@TMPORD@(N),DRC) Q:N=""  I N D
 .I $G(BG1),N<BG1 Q
 .S LV=$$LVST^W3HZMST(JB,N)
 .N LV2 S LV2=$$LVST^W3HZMST(JB,N+1)
 .I LV,DRC<0 S PARMAIN=$$DEFMAIN(N)
 .;
 .
 .S QN=$$ITRAST^W3HZMST(JB,N) Q:QN'>0
 .N A S A=$G(@$$^W4TMPORD@(N))
 .I $P(A,"~",5)["|++" S QN=QN\2
 .
 .S CD=$$CDST^W3HZMST(JB,N) Q:CD["-C"  Q:CD["A"
 .S NM=$$SPA^%L1FRM($$NMST^W3HZMST(JB,N))
 .S NM=$$IFCDNM(CD,NM)
 . 
 .S MHP=$$MHST^W3HZMST(JB,N)
 .S HR=$$CMST^W3HZMST(JB,N)
 .I 'LV,DRC>0 S PARMAIN=CD,HRMAIN=HR
 .S MDP=$$PRINTIG^W3PRMDP(CD)
 .;;S ^BB(HZM,N)="CD="_CD_"  MDP="_MDP_" MHP="_MHP
 .S MDP=$$^W4DEFMDP(MDP,NMB) Q:MDP'[">"
 .S MDPPAR=""
 .;;S ^BB(HZM,N)=3
 .S US=$$US(N,PARMAIN,MHP,MDP) Q:'US
 .I $L(CD) S MDPPAR=$P(MDP,">")
 .;;S ^BB(HZM,N)=4
 .;;S ^BB(HZM,N,"US")=US
 .;;S ^BB(HZM,N,"PARMAIN")=PARMAIN
 .;
 .I +US=.5,$G(PR)'=">",$G(PR)'="?" Q
 .;;S ^BB(HZM)=5
 .I +US=1,$G(PR)=">" Q
 .;;S ^BB(HZM,N)=6
 .;
 .S PRINT=$$PORT^W4P($$MDPMDB(MDP)) Q:'PRINT
 .
 .I '$$TSF2MDB^W4PRM!$$SAHMDB^W4PRM,$G(PR)="?" D  Q
 ..S SSAHMDB=SSAHMDB+QN
 ..I $$NOPCCOUNT Q  ; -- 04/10/23
 ..S SAHMDB=SAHMDB+QN Q
 .
 .S MDPS=$$MDPS(PRINT)
 .D TV^W4MDP(MDPS)
 .S MPRINT(PRINT)=""
 .;
 .;
 .I LV,'$$D^W4EZA(PARMAIN)!$$PORTMDB(PARMAIN),$$PCLONG(PRINT) Q
 .
 .I $G(PR)=1,$G(@TMP1@(N))'=1 Q
 .I $G(PR)=0,$G(@TMP1@(N)) Q
 . 
 .;;I $$LAST(N,DRC) S LAST=1
 .D MDB(CD,NM,PARMAIN,QN,MHP,HR,PRINT,N)
 Q
 ;
 ;
PORTMDB(PAR) ;
 N MDP S MDP=$$PRINTIG^W3PRMDP(PAR)
 Q $$PORT^W4P($$MDPMDB(MDP))
 ;
 ;
MDB(PAR,PAR1,PARMAIN,COL,MHP,HRA,PRINT,N) ;
 N PCLONG S PCLONG=$$PCLONG(PRINT)
 ;
 S PRINT=+PRINT
 N LV S LV=$$LVST^W3HZMST(JB,N)
 N CD S CD=$$CDST^W3HZMST(JB,N)
 I $D(@TMPORD@("WASPRINTED",N)) Q
 ;;S ^BB(HZM,PAR)=9
 D ^%L1TS
 N PRGN S PRGN=$C(12)
 ;
 I $$SF^W4PRM,LV,$L($G(HRMAIN)) D
 .I '$L($G(HRA)) S HRA="[ "_HRMAIN_" ]" Q
 .S HRA="[ "_HRMAIN_" ] "_HRA Q
 ;
 N I,PC,QNM S QNM=COL
 I $$MSK^W4P(PAR) S COL=1
 ;
 I $$NOPCCNT S FIRST=0
 ;
 F I=1:1:COL D
 .I '$$MDBTST(HZM,PAR,PAR1,LV) Q
 .;;S ^BB(HZM,PAR)=10
 .D MDBBG(PRINT)
 .D MDBHD(HZM,PRINT)
 .S PC=0
 .D MDBPAR(HZM,PAR,PAR1,LV,HRA,PRINT)
 .;
 .N TGLI,DESC S TGLI=$$TGLI,DESC=$$DESC^W4P(PAR,1)
 .D PUT^%W3DEB("W4HZMPC-MDB","PAR=PAR&HZM=HZM&TGLI=TGLI&DESC=DESC")
 .;
 .I 'LV!$$PARADD(N,PAR) D  ; -- SOPUTSTV MADBEKOT
 ..N LV0 S LV0=LV
 ..I $$SF^W4PRM D SFADD
 ..
 ..N A,N2,J S N2=N
 ..F  S N2=$O(@TMPORD@(N2)) Q:N2=""  S A=$G(^(N2)) Q:'$P(A,"~")  I N2,$$TSFMAIN(N2,PARMAIN) D
 ...N CDT,NMT S NMT=$P(A,"~",3)
 ...S CDT=$P(A,"~",2) Q:CDT["-C"
 ...S NMT=$$IFCDNM(CDT,NMT)
 ...I $G(@$$^W4PRM@("CDMDB")) S NMT=NMT_" "_CDT
 ...S NMT=$$HBR^%L1FRM(NMT,18)
 ...D PC(PRINT,NMT,"B")
 ...S @TMPORD@("WASPRINTED",N2)=$H
 ..
 ..S MDBTSFPRM=$$MDBTSF
 ..;
 ..I MDBTSFPRM!PCLONG D  ; -- PCLONG - DLINNAYA MADBEKA
 ...D PCADD(N,PAR)
 .
 .I $$NOPCCNT D
 ..I '$$TAKEAWAY^W4HZMST(HZM) D
 ...N TX,TEL S TEL=$$TELB^W4HZMST(HZM)
 ...S TX=TEL_" "_$$HBR^%L1FRM($$KTVM^W4HZMST(HZM),$$WD-12)
 ...I $L(TX)>$$WD D
 ....I $$MDBENG S TX=$E(TX,1,$$WD)
 ....I '$$MDBENG S TX=$$HBR^%L1FRM(TX,$$WD)
 ...D PC(PRINT,TX)
 ..
 ..I $$TAKEAWAY^W4HZMST(HZM) D
 ...N MAZMIN D MAZMIN
 ...I $$WOLT(HZM) S MAZMIN=$G(%MDP("B"))_$$HRAED^W4HZMST(HZM)_$G(%MDP("N"))_" "_MAZMIN
 ...S DL=19
 ...S TX=$$HBR^%L1FRM(MAZMIN,DL)
 ...D PC(PRINT,TX,"B")
 ...I '$$^W4KIOSKO(HZM) D PC(PRINT,$$TELB^W4HZMST(HZM),"B")
 ..
 ..I $$HZM^W4MSD(HZM) D
 ...S TX=$$TV^%W1DICT($$^%W1LNG,"SITINLOCAL")
 ...N MAZMIN S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 ...I MAZMIN'?.P S TX=TX_" - "_MAZMIN
 ...D PC(PRINT,TX,"B")
 .
 .I PCLONG,PC D
 ..I $$SNBC,'$G(LAST) D CUT Q
 ..I '$$SNBC D CUT
 .
 .D CLSNBC(PRINT)
 ;
 Q
 ;
 ;
PCADD(N,PAR) ;
 ;;I $$NOTSFPAR(PAR) Q
 N COLT S COLT=4 I PCLONG S COLT=99 ; -- WAS COLT=3 17/05/21
 I $$MDBADDR^W4PRM=2 D
 .S COLT=5 ; -- WAS COLT=4 17/05/21
 .I $$NOPCCNT S COLT=3
 ;
 N N2,J S N2=N,J=0 F  S N2=$O(@TMPORD@(N2)) Q:N2=""  I N2 S A=$G(^(N2)) Q:$P(A,"~")'>LV0&($P(A,"~",2)'["-C")  D  Q:J'<COLT
 .N CDT S CDT=$P(A,"~",2)
 .N OK S OK=1
 .I $G(PR)="" D  Q:'OK
 ..N MHP,MDP
 ..S MHP=$P(A,"~",4)
 ..S MDP=$$PRINTIG^W3PRMDP(CDT)
 ..S MDP=$$^W4DEFMDP(MDP,$G(NMB))
 ..I +$$US(N2,PAR,MHP,MDP)=.5 S OK=0
 . 
 .N NMT S NMT=$P(A,"~",3)
 .S NMT=$$IFCDNM(CDT,NMT)
 .S NMT=$$NMT(NMT,N2)
 .;
 .I CDT["-C" Q
 .I $E(CDT)="A",'$$PCLONG(PRINT) Q
 .
 .I $E(CDT)="A" D
 ..N DLKV S DLKV=($$WD-$L(NMT)\2)-2
 ..N KV S KV=$TR($J("",DLKV)," ","-")
 ..S NMT=KV_" "_NMT_" "_KV_$$LF
 .;
 .I $G(@$$^W4PRM@("CDMDB")),$E(CDT) S NMT=NMT_" "_CDT
 .N QNT,QNT0 S QNT=$P(A,"~",5) S QNT0=QNT
 .I QNT["*" S QNT=$P(QNT,"*",2)
 .I QNT0["|"!(QNT0[":"),QNT0["+" D
 ..N QNT00 S QNT00=$$QN^W4PIZZA(QNT0)
 ..I '$$OLDQNPZ,QNT00="++"!(QNT00="+-")!(QNT00="-+") D  Q
 ...S QNT=$$QNPZ(QNT0)
 ..I QNT0["+" S QNT=+QNT_" ["_$$QNPZ(QNT0)_"]"
 .;;I QNT>1!(QNT["[") S NMT=QNT_" "_$J(NMT,30)
 .I QNT>1!(QNT0["+") S NMT=QNT_" "_$J(NMT,30)
 .S NMT=$$HBR^%L1FRM(NMT,$$WD)
 .D PC(PRINT,NMT) S PC=1
 .S J=J+1
 .I '$G(@$$^W4PRM@("NOMDBSP")),'$$MDBTSF D PC(PRINT,"")
 Q
 ;
 ;
NOTSFPAR(PAR)
 I $$MDBTSF=1,$$DD^W4EZT(PAR) Q 1
 I $$MDBTSF<3,$$DD^W4EZA(PAR) Q 1
 Q 0
 ;
MDBBG(PRINT) ;
 I $$SNBC D OPSNBC(PRINT)
 I '$$SNBC D PC(PRINT,$C(12),0) H 1
 Q
 ;
SNBC(STAM)
 Q +$G(@$$^W4PRM@("SNBC"))
 ;
OPSNBC(PRINT) ;
 ;;L +@$$^W4PC@(PRINT):4
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,64,27,76,13,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,51,60,13,10)
 ;;L -@$$^W4PC@(PRINT)
 Q
 ;
CLSNBC(PRINT) ;
 ;;L +@$$^W4PC@(PRINT):4
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=$C(27,12,27,83,13,10)
 ;;L -@$$^W4PC@(PRINT)
 Q
 ;
CLOPSNBC(PRINT)
 ;;D CLSNBC(PRINT)
 D OPSNBC(PRINT)
 Q
 ;
 ;
LF() ;
 Q $C(10)
 ;
PC(PRN,TXT,PRM,DOPSM) ;
 S DOPSM=$G(DOPSM) ; -- WAS +$G(DOPSM)
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 I $$SNBC,TXT=$C(12),$G(PRM)=0 Q
 N SOF S SOF="" I $$SNBC S SOF=$C(13,10)
 ;
 N SM S SM=$$SM(TXT)+DOPSM
 I $G(PRM)=0 D  Q
 .I $$PCLONG(PRN),$$SNBC D SETPC(PRN,$S(TXT="":"",1:$J("",SM)_TXT)) Q  ; *** 15.03.24
 .S @$$^W4PC@(PRN,$ZP(@$$^W4PC@(PRN,""))+1)=TXT
 ;
 S TXT=$TR(TXT,TS0,TSS)
 ;
 I DOPSM="-" S SM=0
 ;
 I $G(PRM)["B" D
 .S SM=$$SMBIG(TXT)+$G(DOPSM)
 .I DOPSM="-" S SM=0
 .S TXT=%MDP(PRM)_TXT_%MDP("N")
 ;
 N TX S TX=$J("",SM)_TXT
 I $$PCLONG(PRN),$$SNBC S TX=$$LF_TX
 D SETPC(PRN,TX)
 Q
 ;
 ;
PREPST(ST)
 I $$HRSP^W4HZPCFN S ST=$$SP^W4HZPCFN(ST)
 S ST=$TR(ST,TS0,TSS)
 Q ST
 ;
 ;
MDBPAR(HZM,PAR,PAR1,LV,HRA,PRINT)
 N WD S WD=$$WD
 N MDBTSF S MDBTSF=$$MDBTSF
 N MDBENG S MDBENG=$$MDBENG
 ;
 S PRENG=0
 ;
 I $$TSF2MDB^W4PRM,LV,$G(PARMAIN) D  S PC=1
 .N TX S TX=$$SHEM(PARMAIN)_" : hixtl ztqez"
 .D PC(PRINT,TX)
 .D PC(PRINT,"")
 ;
 I MDBENG D
 .N PAR11
 .S PAR11=$$SHEML(PAR)
 .I PAR11'?.P S PAR1=PAR11,PRENG=1
 ;
 S ST1=PAR1
 I $G(@$$^W4PRM@("CDMDB")) S ST1=ST1_" "_PAR
 I $$MSK^W4P(PAR),$G(QNM) D
 .S ST1="bw "_$J(QNM,3,3)_" "_ST1
 ;
 D DLG^%L1FRM(ST1,18)
 ;
 I 'MDBTSF D
 .N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 ..D PC(PRINT,$$SPA^%L1FRM(%CHAST(1,I)),"B") S PC=1 ; -- WAS BB
 ;
 I MDBTSF D 
 .I $G(%CHAST(1,2))="" D  Q
 ..D PC(PRINT,$$SPA^%L1FRM(%CHAST(1,1)),"B") S PC=1
 .S ST1=$$HBR^%L1FRM(ST1,38)
 .D PC(PRINT,$$SPA^%L1FRM(ST1)) S PC=1
 ;
 I '$G(@$$^W4PRM@("MDBNOSP")),'MDBTSF D
 .D PC(PRINT,"")
 ;
 I $$PAPJ^W4PRM K TXT Q  ; -- 29/10/23
 ;
 S HRA=$$CLR^W4CLRMN(HRA)
 N HRA1
 ;
 S HRA=$TR(HRA,"|"," ")
 S HRA=$$SPA^%L1FRM(HRA)
 S HRA=$$SP1^%L1FRM(HRA)
 ;
 N TXT0
 D PREPHR^W4HZPCFN(HRA)
 N HEB S HEB=$$HEB^W4HZPCFN(HRA)
 ;
 M ^AA("W4MDBPC","CHAST")=%CHAST
 ;
 I '$$PCLONG(PRINT),$G(%CHAST(1,1))'="",$G(%CHAST(1,2))="" D
 .I HEB S TXT=$G(TXT0)_%CHAST(1,1)_%MDP("N")
 .I 'HEB S TXT=$$ENG^%L1FRM(%CHAST(1,1),$$WD\2)
 .S TXT=$TR(TXT,TS0,TSS)
 .D PC(PRINT,TXT,"B",3)
 ;
 I '$$PCLONG(PRINT),$G(%CHAST(1,1))'="",$G(%CHAST(1,2))'="" D
 .I HEB S TXT=$$HBR^%L1FRM(HRA,$$WD)
 .I 'HEB S TXT=$$ENG^%L1FRM(HRA,$$WD)
 .S TXT=$TR(TXT,TS0,TSS)
 .D PC(PRINT,TXT)
 ;
 I $$PCLONG(PRINT) D  ; -- 21/10/21
 .I HEB F J=1:1 Q:'$D(%CHAST(1,J))  D
 ..N ST S ST=$$PREPST(%CHAST(1,J))
 ..S TXT=$S(J=1&'$$MDBTSF:$$LF,1:"")_TXT0_ST_%MDP("N") D PC(PRINT,TXT,0)
 .
 .I 'HEB F J=$O(%CHAST(1,99),-1):-1:1 D
 ..I J=$O(%CHAST(1,99),-1) S TXT="" D PC(PRINT,TXT)
 ..N ST S ST=$$PREPST(%CHAST(1,J))
 ..S TXT=TXT0_ST_%MDP("N") D PC(PRINT,TXT,"B",0)
 ;
 K TXT
EMDBPAR ;
 I $G(PRNLAB) D PC(PRINT,$ZD($H,"DD.MM.YY"),"B")
 Q
 ;
 ;
MDPMDB(MDP) ;
 I MDP[">>" Q +$P(MDP,">>",2)
 I MDP["<<" Q +$P(MDP,"<<",2)
 I MDP["->" Q +$P(MDP,"->",2)
 I MDP["-<" Q +$P(MDP,"-<",2)
 Q +$P(MDP,">",2)
 ;
 ; 
MDBHD(HZM,PRINT,BIG) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 N DAT,SHAA,MAZMIN
 ;
 I $$^W4MSL(NMB) D
 .D MAZMIN
 .
 .S DAT=$$TRH^W4HZMST(HZM)
 .S SHAA=$$SHAA^W4HZMST(HZM)
 .
 .I $$PCLONG(PRINT) D PCORD(HZM)
 .
 .I '$$PCLONG(PRINT),$G(PR)=""!($G(PR)=">")!($G(PR)=0)!($G(PR)=1) D PCORDSHORT
 .I $$MDBADDR^W4PRM=2,'FIRST Q
 .
 .N CMPN S CMPN=$$COMP^W4HZMST(HZM)
 .
 .I $L(CMPN),$$SPA^%L1FRM(CMPN)'=$$SPA^%L1FRM(MAZMIN) D
 ..N TX S TX=$$HBR^%L1FRM(CMPN,24)_" : dxag"
 ..I '$G(BIG) D PC(PRINT,TX)
 ..I $G(BIG) D PCBIG(PRINT,TX)
 .
 .I $TR($$IR^W4HZMST(HZM)," ","")="TAKEAWAY",'$$WOLT(HZM),$$HRAED^W4HZMST(HZM)'["WOLT" D
 ..D PC(PRINT,$$CENTRB^%L1FRM("TAKE AWAY",$$WD),"B")
 .;;S ^BB(HZM,"MAZMIN")=$G(MAZMIN)
 .
 .I $$TSF2MDB^W4PRM,$G(NOMMDB),$G(SAHMDB) D TSF2MDBLK
 .
 .I '$$TSF2MDB^W4PRM,$L(MAZMIN) D PCLK
 ;
 ;
 I $$^W4MSD(NMB) D
 .S DAT=$$DATCB^W4HZMST(HZM)
 .S SHAA=$P(DAT,"  ",2)
 .S DAT=$P(DAT," ")
 .D PCORDSHORT Q:'FIRST
 .N MAZMIN S MAZMIN=$$SPA^%L1FRM($$MAZMIN^W4HZMST(HZM))
 .N TX S TX=$$HBR^%L1FRM(MAZMIN,$$WD)
 .I '$G(BIG) D PC(PRINT,TX)
 .I $G(BIG) D PCBIG(PRINT,TX)
 ;
 I $$MDBADDR^W4PRM=2,'FIRST Q  ; -- PRATEI AZMANA AL MADBEKA NIFREDET
 ;
 I $$MDBADDR^W4PRM=2 S TX="" D PC(PRINT,TX)
 ;
 I $$HZM^W4MSL(HZM) D
 .N HR S HR=$$HRAED^W4HZMST(HZM)
 .Q:$$WOLT(HZM)
 .Q:$$TAKEAWAY^W4HZMST(HZM)
 .N TX S TX=$$KTVM^W4HZMST(HZM)
 .I $L(TX)>$$WD D
 ..I $$MDBENG S TX=$E(TX,1,$$WD)
 ..I '$$MDBENG S TX=$$HBR^%L1FRM(TX,$$WD)
 .I '$G(BIG) D PC(PRINT,TX)
 .N DL S DL=20 I $$PCLONG(PRINT) S DL=19
 .I $G(BIG) D PCBIG(PRINT,TX,DL)
 ;
 I $$HZM^W4MSD(HZM) D
 .N TX S TX="zgwl e`eai"
 .I $G(@$$^W4ORD@(HZM,"LL"))=1 S TX="zayl e`eai"
 .D PC(PRINT,TX,"B")
 ;
 S FIRST=0
 ;
 I $$MDBADDR^W4PRM=2 D
 .I $$SNBC D CLOPSNBC(PRINT)
 .I '$$SNBC D PC(PRINT,$C(12),0) H 1
 .D PCORDSHORT
 ;
 D PC(PRINT,"")
 Q
 ;
 ;
SM(TX) ;
 N LTX S LTX=$L(TX)
 I $L($G(%MDP("B"))),$L($G(%MDP("N"))) D
 .S LTX=$$L^%L1FRM(TX,%MDP("B"),%MDP("N"))
 S SM=$$WD+$G(@$$^W4PRM@("MDBSM"))-$J(LTX/$$KFPC,0,0)
 ;;I $$SNBC S SM=SM+8
 Q SM
 ;
SMBIG(TX) ;
 Q $$WD+$G(@$$^W4PRM@("MDBSM"))-$J($L(TX)*2/$$KFPC,0,0)
 ;
WDBIG(STAM) ;
 Q $J(($$WD/2)*$$KFPC,0,0)
 ;
WD(STAM) ;
 Q 38
 ;
KFPC(STAM) ;
 Q 1
 I $$OLDPC Q 1
 Q $J(40/28,3,3)
 ;
TGLI(STAM) ;
 Q $$^W4TGLI
 ;
SETPC(PRINT,TXT) ;
 ;;L +@$$^W4PC@(PRINT):4
 I $$SNBC,$E(TXT,$L(TXT)-1,$L(TXT))'=$C(13,10) S TXT=TXT_$C(13,10)
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)=TXT
 ;
 ;;L -@$$^W4PC@(PRINT)
 Q
 ;
 ;
CUT ;
 I $G(@$$^W4PRM@("NOMDBCUT")) Q
 ;
 I $$PCLONG(PRINT),$$SNBC D  Q
 .L +@$$^W4PC@(PRINT):4
 .S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,999999))+1)="<<WAIT>>"_$C(10,10,10,10,10,13,10)
 .L -@$$^W4PC@(PRINT)
 ;
 D SETPC(PRINT,$C(10,10,10,10,10)_$G(%MDP("CUT")))
 Q
 ;
OLDPC(STAM) ;
 I $$XPMOD($G(PRINT)) Q 1
 Q $$OLDPC^W4PRM
 ;
XPMOD(PRINT) ;
 I $G(PRINT),$$MDPS^W4MDP(PRINT)=8 Q 1
 Q 0
 ;
 ;
SOF(PRINT) ;
 I $$SNBC Q
 ;
 I $D(MPRINT(PRINT)) D  Q
 .D DEFMDP(PRINT)
 .;
 .I '$G(P1HZMET),'$$MDPCUT(PRINT) S TXT=$C(10,10,10,10) D SETPC(PRINT,TXT) Q
 .I '$G(P1HZMET),$$MDPCUT(PRINT) D  Q
 ..I $$PCLONG(PRINT) S TXT=$C(10,10,10,10) D SETPC(PRINT,TXT) Q
 ..D CUT
 Q
 ;
 ;
MDPCUT(PRINT) ;
 I $$MDPS(PRINT)=6!($$MDPS(PRINT)=8)!($$MDPS(PRINT)=9) Q 1
 Q 0
 ;
MDPS(PRINT) ;
 Q $$MDPS^W4MDP(PRINT)
 ;
 ;
US(N,PARMAIN,MHP,MDP)
 I MDP'[">" Q 0
 ;
 N CD S CD=$$CDST^W3HZMST(JB,N) I CD="" Q 0
 N LV S LV=$$LVST^W3HZMST(JB,N) I 'LV Q 1
 ;
 I $G(PARMAIN)="",$G(DRC)<0 S PARMAIN=$$DEFMAIN(N)
 ;
 I $$TSF2MDB^W4PRM Q 1
 I $$DD^W4EZA(PARMAIN),LV<2 Q 1
 ;
 N SET,US S US=0
 ;
 I $G(PARMAIN) D  I US Q US
 .N QNDEF S QNDEF=$$^W4QNDEF(PARMAIN,CD)
 .I CD,QNDEF["->"!(QNDEF["-<")!(QNDEF[">>")!(QNDEF["<<") S US=.5 Q
 .I CD,QNDEF[">"!(QNDEF["<") S US=1 Q
 .;
 .S SET=$$^W4SET(PARMAIN,CD) Q:'SET
 .N A S A=$G(@$$^W4GLSET(HZM)@(SET))
 .N MAX S MAX=$P(A,"\",2)
 .I MAX["->"!(MAX["-<")!(MAX[">>")!(MAX["<<") S US=.5 Q
 .I MAX[">"!(MAX["<") S US=1 Q
 ;
 I MDP[">>"!(MDP["<<") Q .5
 Q 0  ; --- 21/08/22 ; --- MADBEKOT BLI >> LO MADPISIM
 ;
 I $G(PARMAIN)="" Q 0
 ;
 I $$SF^W4PRM,'MHP Q 0
 ;
 I '$$SF^W4PRM,$G(@$$^W4PRM@("MDB"))=2&$$DD^W4EZT(PARMAIN) Q 0
 I '$$SF^W4PRM,$G(@$$^W4PRM@("MDB"))=3&$$DD^W4EZA(PARMAIN) Q 0
 Q 0
 ;
 ;
DEFMDP(PRINT) ;
 Q
 ;
 ;
MDBKOT(HZM,PRINT) ;  -- MADBEKA AHAREY COL AMADBEKOT
 N MDPS
 S MDPS=$$MDPS(PRINT)
 D TV^W4MDP(MDPS)
 ;
 D PC(PRINT,"")
 I '$$MSPYOM^W4PRM D PC(PRINT,HZM,"BB")
 ;
 I $$MSPYOM^W4PRM D
 .N HZJ S HZJ=$$HZJ(HZM)
 .N MDPI,MDPIE
 .D MDPI
 .N RV S RV=MDPI_$J("",$L(HZJ))_MDPIE
 .;;D PC(PRINT,RV,"BB") ; -- 16.09.20
 .D PC(PRINT,MDPI_HZJ_MDPIE,"BB")
 .;;D PC(PRINT,RV,"BB") ; -- 16.09.20
 .D PC(PRINT,"")
 .D PC(PRINT,HZM_" dpnfd 'qn")
 ;;
 D PC(PRINT,"")
 D PC(PRINT,$$IR^W4HZMST(HZM),"BB")
 D PC(PRINT,"")
 D PC(PRINT,$$KTVM^W4HZMST(HZM,1),"B")
 ;;D CLSNBC(PRINT)
 ;
 D PC(PRINT,"")
 D PC(PRINT,$$SHAA^W4HZMST(HZM),"BB")
 I '$$SNBC D CUT
 Q
 ;
 ;
MDBCMNT(HZM,PRINT) ;  
 N MDPS
 S MDPS=$$MDPS(PRINT)
 D TV^W4MDP(MDPS)
 D MDBBG(PRINT)
 D PC(PRINT,HZM,"B")
 ;
 N CMNT S CMNT=$$HRA^W4HZMST(HZM)
 D PCBIG(PRINT,CMNT)
 Q
 ;
PCBIG(PRINT,TX,DL) ;
 I '$G(DL) S DL=20
 N %CHAST
 D DLG^%L1FRM(TX,DL)
 N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 .D PC(PRINT,%CHAST(1,I),"B","-")
 D CLSNBC(PRINT)
 Q
 ;
 ;
LEHEM(CDT,CD) ; 
 N SUG1 S SUG1=$$SUG1^W4P(CDT)
 I SUG1["mgl"!(SUG1["ngl") Q 1
 Q 0 
 ;
MDBTSF(STAM) ; 
 I $$TSF2MDB^W4PRM Q 0
 Q $G(@$$^W4PRM@("MDBTSF")) 
 ;
PCLONG(PRINT)
 N MDPS S MDPS=$$MDPS(PRINT)
 I MDPS=9 Q 1
 N PCLONG S PCLONG=0
 I PRINT["[" D
 .S PCLONG=$P(PRINT,"[",2) I 'PCLONG S PCLONG=1
 Q PCLONG
 ;
DEFMAIN(N)  
 N PARMAIN S PARRMAIN=""
 N II F II=N-1:-1:1 Q:'$$LVST^W3HZMST(JB,II)
 I II>0,'$$LVST^W3HZMST(JB,II) D
 .S PARMAIN=$$CDST^W3HZMST(JB,II)
 .S HRMAIN=$$CMST^W3HZMST(JB,II)
 Q PARMAIN
 ;
OBRSM(A) ; 
 Q A
 ;
 ;
TSFMAIN(IND,PARMAIN) ; 
 I '$G(PARMAIN) Q 0
 N CD S CD=$$CDST^W3HZMST(JB,IND) I CD="" Q 0
 ;
 N QNDEF S QNDEF=$G(@$$^W4GL("QNDEF")@(PARMAIN,CD))
 I CD,QNDEF["}"!(QNDEF["{") Q 1
 N SET S SET=$$^W4SET(PARMAIN,CD) Q:'SET 0
 N A S A=$G(@$$^W4GLSET(HZM)@(SET))
 N MAX S MAX=$P(A,"\",2)
 I MAX["}"!(MAX="{") Q 1
 Q 0
 ; 
MDBTST(HZM,PAR,PAR1,LV)
 N MDBTSF S MDBTSF=$$MDBTSF
 N MDBENG S MDBENG=$$MDBENG
 N PC S PC=0
 ;
 I LV,$G(PARMAIN),$G(PAR1)'="" S PC=1
 ;
 I MDBENG D
 .N PAR11
 .S PAR11=$$SHEML(PAR)
 .I PAR11'?.P S PAR1=PAR11,PRENG=1
 ;
 I 'LV,$G(PAR1)'="" S PC=1
 Q PC
 ;
 ;
PCORDSHORT ;
 I $$SAHMDB^W4PRM D
 .I $$NOPCCOUNT Q
 .I FIRST,$$NOPCCNT Q
 .I DRC=1 S NOMMDB=NOMMDB+1 Q
 .I DRC=-1 S NOMMDB=NOMMDB-1
 ;
 N TX,DAT1,SHAA1 S TX=""
 S DAT1=$P(DAT,".",1,2)_"-l"
 S SHAA1=SHAA
 ;
 S HZM1=" dpnfd"
 ;
 I $$SAHMDB^W4PRM D
 .S DAT1=""
 .N MSP S MSP=(NOMMDB_"/"_SAHMDB)
 .;;I (FIRST&$$NOPCCNT)!$$NOPCCOUNT S MSP=" "
 .I $$NOPCCOUNT S MSP=" "
 .N SP
 .S SP=$J("",5-$L(MSP))
 .S TX=$G(%MDP("B"))_MSP_SP_$G(%MDP("N"))_" "
 .S HZM1=""
 .S SHAA1=$G(%MDP("B"))_SHAA_$G(%MDB("N"))
 ;
 I '$G(BIG) D
 .I $$MSPYOM^W4PRM D
 ..S TX=TX_" "_SHAA1_" "_DAT1_$G(%MDP("B"))_$J($$^W4MSPYOM(HZM),3)_$G(%MDP("N"))_" "_HZM_HZM1
 ..D PC(PRINT,TX,"",-1)
 ..D PC(PRINT,"","") ; -- 18/08/22
 .
 .I '$$MSPYOM^W4PRM D
 ..S TX=TX_" "_SHAA1_" "_DAT1_%MDP("B")_$J(HZM,6)_%MDP("N")_HZM1
 ..D PC(PRINT,TX,"")
 ..I $$MDBTSF,$$MDBADDR^W4PRM'=2 Q
 ..D PC(PRINT,"",""); -- 18.08.22
 ;
 I $G(BIG) D
 .I $$MSPYOM^W4PRM D
 ..D PCBIG(PRINT,$J($$^W4MSPYOM(HZM),3)_" "_HZM_HZM1)
 ..D PCBIG(PRINT,SHAA1_" "_DAT1)
 .
 .I '$$MSPYOM^W4PRM D
 ..D PCBIG(PRINT,$J(HZM,6)_HZM1)
 ..D PCBIG(PRINT,SHAA1_" "_DAT1)
 ;
 I $$MDBADDR^W4PRM=2,FIRST D
 .N TMPC S TMPC=$P($$DATCB^W4HZMST(HZM),"  ",2)
 .I $P($G(@$$^W4ORD@(HZM,"ST",1)),"\",2)[":" D
 ..S TMPC=$P($G(@$$^W4ORD@(HZM,"ST",1)),"\",2)
 .S TX=$$LF_$J("",16)_TMPC_" : dpnfd zlaw onf"_$$LF
 .D PC(PRINT,TX,"")
 Q
 ;
 ;
PCORD(HZM) ;
 ;;D PC(PRINT,"")
 N MDPI,MDPIE D MDPI 
 D
 .N DLV S DLV="!!!   DELIVERY  !!!"
 .I $$TAKEAWAY^W4HZMST(HZM) S DLV="!!!  TAKE AWAY  !!!"
 .D PC(PRINT,DLV,"B")
 .D PC(PRINT,"")
 ;
 I '$$MSPYOM^W4PRM D
 .N RV,RV0 S RV=$J("",19-$L(HZM)\2)
 .S RV0=$J("",20-$L(HZM)\2)
 .D PC(PRINT,MDPI_RV0_HZM_RV_MDPIE,"BB")
 ; 
 I $$MSPYOM^W4PRM D
 .N HZJ S HZJ=$$HZJ(HZM)
 .D PC(PRINT,MDPI_HZJ_MDPIE,"BB")
 .D PC(PRINT,"")
 .D PC(PRINT,%MDP("N")_" "_$J(HZM,7)_" dpnfd","",3)
 ;
 D PC(PRINT,"")
 ;
 I $$WOLT^W4HZPCHD(HZM) D
 .N NOMWOLT S NOMWOLT=$$NOMWOLT^W4HZPCHD(HZM) Q:'NOMWOLT
 .D PC(PRINT,NOMWOLT_" : WOLT","BB") ; -- WAS B -- 16.02.23
 ;
 N PR S PR="B" S:$G(@$$^W4PRM@("MDBDTKTN")) PR="N"
 D PC(PRINT,SHAA_" "_DAT_" -l",PR)
 D PC(PRINT,"")
 Q
 ;
 ;
HZJ(HZM) ;
 N HZJ S HZJ=$J($$^W4MSPYOM(HZM),3)
 N RV,RV0 S RV=$J("",19-$L(HZJ)\2)
 S RV0=$J("",20-$L(HZJ)\2)
 S HZJ=RV_HZJ_RV
 Q HZJ
 ;
MDPI ;
 S MDPI=$G(%MDP("I"))
 S MDPIE=$G(%MDP("IE"))
 I $$NOIKOT S (MDPI,MDPIE)=""
 Q 
 ; 
NOIKOT(STAM) ; 
 Q $G(@$$^W4PRM@("NOIKOT")) 
 ;
 ; 
MAZMIN ;
 S MAZMIN=""
 I $$^W4MSL(NMB) D
 .S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 .N NAME S NAME=$$NAME^W4HZMST(HZM)
 .I '$L(MAZMIN),'$$COMP^W3PRM S MAZMIN=NAME
 Q
 ;
PCLK ;
 N MAZMIN D MAZMIN
 ;
 I '$$PCLONG(PRINT) D  Q
 .N DL S DL=25
 .I $$WOLT(HZM) S MAZMIN=$G(%MDP("B"))_$$HRAED^W4HZMST(HZM)_$G(%MDP("N"))_" "_MAZMIN
 .I '$G(BIG) D
 ..I $$WOLT(HZM) S TX=$$HBR^%L1FRM(MAZMIN,DL) D PC(PRINT,TX,"") Q
 ..S TX=$$HBR^%L1FRM(MAZMIN,DL)_" "_$J(NMB,10)
 ..D PC(PRINT,TX,"")
 .
 .I $G(BIG) D
 ..S TX="" D PC(PRINT,TX)
 ..S TX=$$HBR^%L1FRM(MAZMIN,DL)_" "_$J(NMB,10)
 ..D PCBIG(PRINT,TX)
 ..S TX="" D PC(PRINT,TX)
 ;
 I $$PCLONG(PRINT) D
 .S TX="" I $$SAHMDB^W4PRM,$G(SAHMDB) S TX=$G(%MDP("B"))_NOMMDB_"/"_SAHMDB_$G(%MDP("N"))
 .D PC(PRINT,TX)
 .S TX=NMB_" 'akl"
 .I '$G(BIG) D PC(PRINT,TX)
 .I $G(BIG) D PCBIG(PRINT,TX,19) D PC(PRINT,"")
 .Q:'$L($G(MAZMIN))
 .S TX=$$SPA^%L1FRM(MAZMIN)
 .N PR S PR="B" I $G(@$$^W4PRM@("MDBLKKTN")) S PR="N"
 .I '$G(BIG) D PC(PRINT,TX,PR)
 .I $G(BIG) D PCBIG(PRINT,TX,19) D PC(PRINT,"")
 Q
 ;
 ; 
TSF2MDBLK ; 
 N TX S TX=NOMMDB_"/"_SAHMDB
 ;
 I '$$COMP^W3PRM S MAZMIN=$$LKHNM^W4HZMST(HZM) 
 I $$COMP^W3PRM S MAZMIN=$$MAZMIN^W4HZMST(HZM) 
 ;
 I $L(MAZMIN) D
 .I '$$PCLONG(PRINT) D 
 ..S TX=TX_$J($$HBR^%L1FRM(MAZMIN,16)_" "_NMB_" 'akl",$$WD-$L(TX)-1)
 ..D PC(PRINT,TX)
 .
 .I $$PCLONG(PRINT) D 
 ..D PC(PRINT,"")
 ..S TX=TX_$J(NMB_" 'akl",$$WD-$L(TX)-1)
 ..D PC(PRINT,TX)
 ..S TX=MAZMIN
 ..D PC(PRINT,TX,"B")
 Q
 ;
SFADD ;
 N A,N2,J,END,PRLEHEM S N2=N,END=0,PRLEHEM=0
 F  S N2=$O(@TMPORD@(N2)) Q:N2=""  S A=$G(^(N2)) Q:'$P(A,"~")  D  Q:END
 .N NMT S NMT=$P(A,"~",3)
 .S CDT=$P(A,"~",2) Q:CDT["-C"
 .N SUG1 S SUG1=$$SUG1^W4P(PAR)
 .I SUG1["ecpq",$E(CDT)="A",NMT["mgl"!(NMT["ngl") S PRLEHEM=1 Q
 .I SUG1["upl",SUG1["qwea",$E(CDT)="A",NMT["mgl"!(NMT["ngl") S PRLEHEM=1 Q
 .I $E(CDT)="A",NMT'["mgl",NMT'["ngl" S PRLEHEM=0 Q
 .
 .I PRLEHEM D  S PRLEHEM=0
 ..S END=1
 ..I $G(@$$^W4PRM@("CDMDB")) S NMT=NMT_" "_CDT
 ..S NMT=$$HBR^%L1FRM(NMT,18)
 ..D PC(PRINT,NMT)
 ..S @TMPORD@("WASPRINTED",N2)=$H
 Q
 ;
PARADD(N,PAR) ; 
 N A,A2,CDT,LVT
 S A=$G(@TMPORD@(N))
 S CDT=$P(A,"~",2) I CDT["-"!(CDT["A") Q 0
 S A2=$G(@TMPORD@(N+1))
 N CDT2 S CDT2=$P(A2,"~",2) I CDT2["-C" D
 .S A2=$G(@TMPORD@(N+2))
 S LVT=$P(A,"~")
 I $$^W4EZAT(PAR),LVT=1 Q 1
 I $$^W4EZI(PAR),LVT=1 Q 1
 N LVT2 S LVT2=$P(A2,"~") 
 I LVT=1,LVT2=2 Q 1  ; -- 18.08.22
 Q 0 
 ;
PCTGLI ; 
 I $$SNBC D CLOPSNBC(PRINT)
 I '$$SNBC D PC(PRINT,$C(12),0) H 1
 D MDBHD(HZM,PRINT)
 D PC(PRINT,$$HBR^%L1FRM("RICE",19),"B")
 D PC(PRINT,"","")
 Q
 ;
WOLT(HZM) ; 
 I $$WOLT^W4HZMST(HZM) Q 1
 ;;I $$SPA^%L1FRM(MAZMIN)="WOLT" Q 1
 Q 0 
 ;
NMT(NMT,N2) ; 
 N A,NMT2 S A=$G(@TMPORD@(N2+1))
 N CDT S CDT=$P(A,"~",2) 
 I CDT'["-C" Q NMT 
 S NMT2=$P(A,"~",3) 
 N OKT S OKT=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  D  Q:OKT
 .I $G(^(N))=NMT2 S OKT=1
 I 'OKT Q NMT
 N MDBENG S MDBENG=$$MDBENG
 I MDBENG S NMT=NMT2_" "_NMT
 E  S NMT=NMT_" "_NMT2 
 Q NMT 
 ;
MDBENG(STAM) ; 
 Q $G(@$$^W4PRM@("MDBENG"))
 ;
CDNM(STAM) ; 
 I $$^W6,$$NOPCLOAZ^W4PRM Q 1
 Q $G(@$$^W4PRM@("MDBCDNM"))
 ;
IFCDNM(CD,NM) ;
 I $$CDNM,CD D
 .N TX S TX=$$SHEM(CD) Q:TX=""
 .S NM=TX
 Q NM
 ; 
CRMPRINT ; --> MPRINT 
 N N,CD,MDP,PRINT 
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D 
 .S CD=$P($G(^(N)),"~",2) 
 .S MDP=$$PRINTIG^W3PRMDP(CD) 
 .I MDP[">" D 
 ..S MDPB=$$MDPMDB(MDP) Q:'MDPB 
 ..S PRINT=$$PORT^W4P(MDPB) Q:'PRINT 
 ..S MPRINT(PRINT)="" 
 Q 
 ;
 ;
CUTSNBC(PRINT) ;
 I '$$PCLONG(PRINT) Q  ; -- 18.08.22
 ;;S ^AA(HZM,"SNBCCUT")=1
 I $G(@$$^W4PRM@("NOMDBCUT")) Q
 N TXT
 S TXT=$C(29,86)_"m"
 D SETPC(PRINT,TXT)
 Q 
 ;
 ;
NOPCCOUNT() ; 
 I $$NOPCCNT,MDPPAR'="",+MDPPAR=0 Q 1
 Q 0 
 ; 
NOPCCNT() ; 
 Q $G(@$$^W4PRM@("NOPCCNT"))
 ;;Q $$PAPJ^W4PRM 
 ;
 ;
SORTTMP ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 N FIRST S FIRST=1
 N N,N1,N2,LV,QN,CD,NM,MHP,HR,MDP,MDPS,PRINT,PARMAIN,US,DRC,HRMAIN
 N TMP1 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 ;
 S PARMAIN="",HRMAIN=""
 ;
 S DRC=1
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .I $G(BG1),N<BG1 Q
 .S LV=$$LVST^W3HZMST(JB,N)
 .N LV2 S LV2=$$LVST^W3HZMST(JB,N+1)
 .
 .S QN=$$ITRAST^W3HZMST(JB,N) Q:QN'>0
 .N A S A=$G(@$$^W4TMPORD@(N))
 .
 .S CD=$$CDST^W3HZMST(JB,N) Q:CD["-C"  Q:CD["A"
 .S NM=$$SPA^%L1FRM($$NMST^W3HZMST(JB,N))
 .S NM=$$IFCDNM(CD,NM)
 . 
 .S MHP=$$MHST^W3HZMST(JB,N)
 .S HR=$$CMST^W3HZMST(JB,N)
 .I 'LV S PARMAIN=CD
 .S MDP=$$PRINTIG^W3PRMDP(CD)
 .S MDP=$$^W4DEFMDP(MDP,NMB) Q:MDP'[">"
 .S MDPPAR=""
 .S US=$$US(N,PARMAIN,MHP,MDP) Q:'US
 .I $L(CD) S MDPPAR=$P(MDP,">")
 .;
 .I +US=.5,$G(PR)'=">",$G(PR)'="?" Q
 .I +US=1,$G(PR)=">" Q
 .;
 .S PRINT=$$PORT^W4P($$MDPMDB(MDP)) Q:'PRINT
 .;
 .I LV,'$$D^W4EZA(PARMAIN)!$$PORTMDB(PARMAIN),$$PCLONG(PRINT) Q
 .S IND=1
 .I $$NOPCCOUNT S IND=0
 .;
 .S @TMP1@(N)=IND
 ;
 Q
 ;
 ;
QNPZ(QNT0) 
 S QNT0=$$QN^W4PIZZA(QNT0)
 I '$$OLDQNPZ Q $$QNG^W4PIZZA(QNT0)
 Q QNT0 
 ;
SHEM(PAR) ; 
 N PAR1
 S PAR1=$$SPA^%L1FRM($$SHEM^W4P(PAR))
 S PAR1=$$RPL^%L1FRM(PAR1,"()","")
 S PAR1=$$RPL^%L1FRM(PAR1,"[]","")
 Q PAR1
 ;
SHEML(PAR) ;
 N PAR1
 S PAR1=$$SPA^%L1FRM($$SHEML^W4P(PAR))
 S PAR1=$$RPL^%L1FRM(PAR1,"()","")
 S PAR1=$$RPL^%L1FRM(PAR1,"[]","")
 Q PAR1
 ;
OLDQNPZ() ; 
 Q +$G(@$$^W4PRM@("OLDQNPZG")) 
 ;
LAST(N,DRC) ; 
 N A,OK,N1 S OK=1
 S N1=N F  S N1=$O(@TMPORD@(N1),DRC) Q:N1=""  I N1 D  Q:'OK
 .S A=$G(^(N1)) I $P(A,"~")=0 S OK=0
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDBPG0
W4MDBPGT ;  [ 28.04.26 16:13 ] [ 26.04.26 15:07 ] [ 09.02.26 19:18 ] 
 N (JB,%ARG) 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D GL
 D TMP K @TMP
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S NAME=$P(A,"\")
 .S IND=$$INVH^%L1FRM(NAME)
 .S IND=$E(IND,1,10)
 .S IND=IND_$J("",10-$L(IND))
 .F J=1:1 Q:'$D(@TMP@(IND_J))
 .S IND=IND_J
 .S $P(@TMP@(IND),"\",1,5)=$P($G(@GL@(N)),"\",1,5)
 .S $P(@TMP@(IND),"\",6)=N
 ;
 D TMP1 K @TMP1
 S K=0 
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S K=K+1
 .S @TMP1@(K)=$G(@TMP@(N))
 K @TMP
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  D ^%W1HD("MDBPGTTABLE")
  ;
  W "<p></p>",!
  I '$G(%ARG("PRINTLABELS")) D ^W4SBMBCK 
  I $G(%ARG("PRINTLABELS")) D ^W4BCK 
  W "<p></p>",!
  ;
  I $G(%ARG("PRINTLABELS")) G PRINTLABELS
  ;
  W "<table id=""Tbl"">",! 
   W "<tr>"
    W "<th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT1")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT2")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT3")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT4")_"</th>"
   W "</tr>" 
   ;
   S K=0,N=""
   S N="" F  S N=$O(@TMP1@(N)) Q:N=""  D
   .S A=$G(^(N))
   .D PRS(A) Q:NAME=""
   .N J F J=1:1:4 S @("PGT"_J)=+@("PGT"_J) I '@("PGT"_J) S @("PGT"_J)=""
   .S K=K+1
   .W "<tr>"  
   .W "<td>" 
   . W "<input type=""text"" size=""30"" "_$$ONCHANGE("nm",K)_" id=""nm_"_K_""" value="""_$$H2U^%L1FRM(NAME)_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt1_"_K_""" "_$$ONCHANGE("pgt1",K)_"  value="""_PGT1_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt2_"_K_""" "_$$ONCHANGE("pgt2",K)_" value="""_PGT2_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt3_"_K_""" "_$$ONCHANGE("pgt3",K)_" value="""_PGT3_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt4_"_K_""" "_$$ONCHANGE("pgt4",K)_" value="""_PGT4_""" />",!
   .W "</td>"
   .W "</tr>",!
   ;
   F K1=K+1:1:99 D
   .W "<tr>"
   .W "<td>" 
   . W "<input type=""text"" size=""30"" id=""nm_"_K1_""" "_$$ONCHANGE("nm",K1)_" value="""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt1_"_K1_""" "_$$ONCHANGE("pgt1",K1)_" value="""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt2_"_K1_""" "_$$ONCHANGE("pgt2",K1)_" value="""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt3_"_K1_""" "_$$ONCHANGE("pgt3",K1)_" value="""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt4_"_K1_""" "_$$ONCHANGE("pgt4",K1)_" value="""" />",!
   .W "</td>"
   .W "</tr>",!
  W "</table>",!
  W "<p></p>",!
  ;
  D ^W4SBMBCK
 W "</div>",!
 Q
 ;
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
TMP1 ;
 S TMP1=$$^W4MAIN("TMP1")
 Q
 ;
GL ;
 S GL=$$^W4GL("W4MDBPGT")
 Q
 ;
PRS(A) ;
 D PRS^%L1FRM(A,"NAME\PGT1\PGT2\PGT3\PGT4\","\")
 Q
 ;
ONCHANGE(ID,K)
 N ST
 S ST=" oninput=""OnChange('"_ID_"','"_K_"')"" "
 I ID?1"pgt".E S ST=ST_" onClick=""this.select()"" "
 Q ST
 ;
SET(PRM) ;
 N (JB,PRM)
 S ID=$P(PRM,"~") 
 S K=$P(PRM,"~",2)
 S VL=$P(PRM,"~",3)
 I $E(ID,1,2)="nm" S IND=1,VL=$$INVH^%L1FRM(VL),VL=$$CNWEB^%L1FRM(VL)
 I ID?1"pgt".E S IND=+$P(ID,"pgt",2)+1
 D TMP1
 S $P(@TMP1@(K),"\",IND)=VL
 Q 1
 ;
 ;
SAVE() ;
 N A,K,N,TMP1 D TMP1
 D GL K @GL
 S K=0
 S N="" F  S N=$O(@TMP1@(N)) Q:N=""  D
 .S A=$G(^(N))
 .D PRS(A) Q:NAME=""
 .S K=K+1
 .S @GL@(K)=A
 ;
 K @TMP1 
 Q 1
 ;
 ;--------------------------------- PRINT LABELS -----------------------------
PRINTLABELS ;
  D GL
  W "<style>",!  
   W "#Tbl td { padding: 8px }",!
  W "</style>",!
  ;
  W "<p style=""text-align:center"" >",! 
   W $$^%W1DICT("EMPNAME")_" : "
   W "<input type=""text"" id=""oved"" size=""15"" value="""">",!
  W "</p>",!
  ;
  W "<table id=""Tbl"" border=""1"" cellspacing=""0"" >",! 
   ;
   W "<tr>"
    W "<td>&nbsp;</td>",!
    F I=1:1:4 D
    .W "<td><button onclick=""PrintSet('"_I_"')"" >"_$$^%W1DICT("PRINTSET")_"</button></td>"
    ;;W "<td><button onclick=""PrintSet('5')"" >"_$$^%W1DICT("PRINTSET5")_"</button></td>"
    W "<td>&nbsp;</td>"
   W "</tr>",!
   ;
   S K=0,N=""
   S N="" F  S N=$O(@TMP1@(N)) Q:N=""  D
   .S A=$G(^(N))
   .D PRS(A) Q:NAME=""
   .S K=K+1
   .S IND=$P(A,"\",6) Q:IND=""
   .
   .W "<tr>"  
   . W "<td id=""nm"_IND_""" width=""40%"" style=""font-weight:bold"">"
   .  W $$H2U^%L1FRM(NAME)
   . W "</td>"
   .
   . S PR1=0
   . F I=1:1:4 D
   .. W "<td>" 
   ..  S SHAOT=$P($G(@GL@(IND)),"\",I+1)
   ..  I 'SHAOT W "&nbsp;</td>" Q
   ..  I I=1 S PR1=1
   ..  W "<button id=""btn"_I_"_"_IND_""" onclick=""Click('"_IND_"','"_I_"')"">"_$$^%W1DICT("MDBPGT"_I)_"</button>",! 
   .. W "</td>"
   .
   . W "<td>"
   .  D
   .  .I 'PR1 W "&nbsp;" Q
   .  .W "<button id=""btn5"_"_"_IND_""" onclick=""Click('"_IND_"','5')"">"_$$^%W1DICT("MDBPGT5")_"</button>",! 
   . W "</td>" 
   .
   .W "</tr>",!
  W "</table>",! 
  W "<p></p>",!
  D ^W4BCK 
 W "</div>",!  
 Q
 ;
 ;
MDBPGT(PRM) ;
 N (JB,PRM)
 S ^AA("W4MDBPGT-PGT","PRM")=PRM
 S IND=$P(PRM,"~")
 S I=$P(PRM,"~",2)
 S OV=$P(PRM,"~",3)
 S OV=$$CNWEB^%L1FRM(OV)
 S OV=$$INVH^%L1FRM(OV)
 S DAT=$P(PRM,"~",4)
 I $G(IND)="" Q
 I $G(OV)="" Q
 ;
 S PRINT=90
 S MDPS=6
 D TV^W4MDP(MDPS)
 ;
 D MDBBG^W4MDBPC(PRINT)
 S GL=$$^W4GL("W4MDBPGT")
 S A=$G(@GL@(IND))
 ;
 ;;D PC(PRINT,"")
 D HD(I)
 ;
 D PCNAME(A)
 ;
 D
 .I I=1 S ST="dxytd jix`z" 
 .I I=2!(I=3)!(I=4) S ST="dgizt jix`z"
 .I I=5 S ST="dqtcd onf"
 ;
 S TX=$ZD($H,"DD.MM.YY 24:60")_" : "_ST 
 D PC(PRINT,TX)
 ;
 S CUR=$P($H,",",2)
 S SHAOT=$P(A,"\",I+1)
 S DT=+$H 
 S TIM=CUR+(SHAOT*3600)
 I TIM>86400 D
 .S COLD=TIM\(24*3600)
 .S DT=DT+COLD,TIM=TIM#86400
 S TIM=DT_","_TIM
 ;
 D
 .I I=1 S ST=" dxytd meiq"
 .I I=2!(I=3)!(I=4) S ST="  cr yeniyl"
 .I I=5 S ST="cr oxvi swez"
 ;
 S TX=$ZD(TIM,"DD.MM.YY 24:60")_" : "_ST
 I I=5 D
 .I DAT'[".",DAT'["/" S DAT=$E(DAT,1,2)_"."_$E(DAT,3,4)_"."_$E(DAT,5,6)
 .S TX=DAT_" : "_ST
 ;
 D PC(PRINT,TX)
 D PC(PRINT,"")
 ;
 S TX=OV_" : caer my"
 D PC(PRINT,TX)
 D CLSNBC^W4MDBPC(PRINT)
 Q
 ;
PC(PRINT,TX,B,SM) ;
 D PC^W4MDBPC(PRINT,TX,$G(B),$G(SM))
 Q
 ;
PCNAME(A) ; 
 ;;S TX=$P(A,"\")_" : hixt my"
 N TX
 S TX=$P(A,"\")
 D PC(PRINT,TX,"B")
 D PC(PRINT,"")
 Q
 ;
 ;
HD(I) ; 
 N TX,SM
 S TX=""
 I I=1 S TX="dxytd onf"
 I I=2 S TX="oiilwn lecb xxwn"
 I I=3 S TX="ozgze oeilr oiilwn"
 I I=4 S TX="xcgd zxehxtnha oken"
 I I=5 S TX="d`twda oxvi swez"
 S TX=TX_$J("",(40-$L(TX)\2)-3)
 D PC(PRINT,TX) 
 D PC(PRINT,"") 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDBPGT
W4MDBPGT ; [ 17.06.26 10:56 ] [ 07.06.26 14:20 ] [ 
 N (JB,%ARG) 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D GL
 D TMP K @TMP
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S NAME=$P(A,"\")
 .S IND=$$INVH^%L1FRM(NAME)
 .S IND=$E(IND,1,10)
 .S IND=IND_$J("",10-$L(IND))
 .F J=1:1 Q:'$D(@TMP@(IND_J))
 .S IND=IND_J
 .S $P(@TMP@(IND),"\",1,5)=$P($G(@GL@(N)),"\",1,5)
 .S $P(@TMP@(IND),"\",7)=$P($G(@GL@(N)),"\",7)
 .S $P(@TMP@(IND),"\",6)=N
 ;
 D TMP1 K @TMP1
 S K=0 
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S K=K+1
 .S @TMP1@(K)=$G(@TMP@(N))
 ;
 K @TMP
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  D ^%W1HD("MDBPGTTABLE")
  ;
  W "<p></p>",!
  I '$G(%ARG("PRINTLABELS")) D ^W4SBMBCK 
  I $G(%ARG("PRINTLABELS")) D ^W4BCK 
  W "<p></p>",!
  ;
  I $G(%ARG("PRINTLABELS")) G PRINTLABELS
  ;
  W "<table id=""Tbl"">",! 
   W "<tr>"
    W "<th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
    W "<th >"_$$^%W1DICT("MLYSTOR")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT1")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT2")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT3")_"</th>"
    W "<th>"_$$^%W1DICT("MDBPGT4")_"</th>"
   W "</tr>" 
   ;
   S K=0,N=""
   S N="" F  S N=$O(@TMP1@(N)) Q:N=""  D
   .S A=$G(^(N))
   .D PRS(A) Q:NAME=""
   .N J F J=1:1:4 S @("PGT"_J)=+@("PGT"_J) I '@("PGT"_J) S @("PGT"_J)=""
   .S K=K+1
   .W "<tr>"  
   .W "<td>" 
   . W "<input type=""text"" size=""30"" "_$$ONCHANGE("nm",K)_" id=""nm_"_K_""" value="""_$$H2U^%L1FRM(NAME)_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""checkbox"" id=""mls_"_K_""" "_$$ONCHANGE("mls",K)_"  "_$S(NOMLS:"",1:"checked=""checked"" ")
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt1_"_K_""" "_$$ONCHANGE("pgt1",K)_"  value="""_PGT1_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt2_"_K_""" "_$$ONCHANGE("pgt2",K)_" value="""_PGT2_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt3_"_K_""" "_$$ONCHANGE("pgt3",K)_" value="""_PGT3_""" />",!
   .W "</td>"
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt4_"_K_""" "_$$ONCHANGE("pgt4",K)_" value="""_PGT4_""" />",!
   .W "</td>"
   .W "</tr>",!
   ;
   F K1=K+1:1:99 D
   .W "<tr>"
   .W "<td>" 
   . W "<input type=""text"" size=""30"" id=""nm_"_K1_""" "_$$ONCHANGE("nm",K1)_" value="""" />",!
   .W "</td1>",!
   .
   .W "<td>" 
   . W "<input type=""checkbox"" id=""mls_"_K_""" "_$$ONCHANGE("mls",K)_"  "_$S(NOMLS:"",1:"checked=""checked"" ")
   .W "</td>"
   .
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt1_"_K_""" "_$$ONCHANGE("pgt1",K)_"  value="""_PGT1_""" />",!
   .W "</td>"
   .
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt2_"_K1_""" "_$$ONCHANGE("pgt2",K1)_" value="""" />",!
   .W "</td>"
   .
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt3_"_K1_""" "_$$ONCHANGE("pgt3",K1)_" value="""" />",!
   .W "</td>"
   .
   .W "<td>" 
   . W "<input type=""text"" size=""2"" id=""pgt4_"_K1_""" "_$$ONCHANGE("pgt4",K1)_" value="""" />",!
   .W "</td>"
   .W "</tr>",!
  W "</table>",!
  W "<p></p>",!
  ;
  D ^W4SBMBCK
 W "</div>",!
 Q
 ;
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
TMP1 ;
 S TMP1=$$^W4MAIN("TMP1")
 Q
 ;
GL ;
 S GL=$$^W4GL("W4MDBPGT")
 Q
 ;
PRS(A) ;
 D PRS^%L1FRM(A,"NAME\PGT1\PGT2\PGT3\PGT4\IND\NOMLS","\")
 Q
 ;
ONCHANGE(ID,K)
 N ST
 S ST=" oninput=""OnChange('"_ID_"','"_K_"')"" "
 I ID?1"pgt".E S ST=ST_" onClick=""this.select()"" "
 Q ST
 ;
SET(PRM) ;
 N (JB,PRM)
 S ID=$P(PRM,"~") 
 S K=$P(PRM,"~",2)
 S VL=$P(PRM,"~",3)
 I $E(ID,1,2)="nm" S IND=1,VL=$$INVH^%L1FRM(VL),VL=$$CNWEB^%L1FRM(VL)
 I ID?1"pgt".E S IND=+$P(ID,"pgt",2)+1
 I ID["mls" S IND=7,VL='VL
 D TMP1
 S $P(@TMP1@(K),"\",IND)=VL
 Q 1
 ;
 ;
SAVE() ;
 N A,K,N,TMP1 D TMP1
 D GL K @GL
 S K=0
 S N="" F  S N=$O(@TMP1@(N)) Q:N=""  D
 .S A=$G(^(N))
 .D PRS(A) Q:NAME=""
 .S K=K+1
 .S @GL@(K)=A
 ;
 K @TMP1 
 Q 1
 ;
 ;--------------------------------- PRINT LABELS -----------------------------
PRINTLABELS ;
  D GL
  W "<style>",!  
   W "#Tbl td { padding: 8px }",!
  W "</style>",!
  ;
  W "<p style=""text-align:center"" >",! 
   W $$^%W1DICT("EMPNAME")_" : "
   W "<input type=""text"" id=""oved"" size=""15"" value="""">",!
  W "</p>",!
  ;
  W "<table id=""Tbl"" border=""1"" cellspacing=""0"" >",! 
   ;
   W "<tr>"
    W "<td>&nbsp;</td>",!
    F I=1:1:4 D
    .W "<td><button onclick=""PrintSet('"_I_"')"" >"_$$^%W1DICT("PRINTSET")_"</button></td>"
    ;;W "<td><button onclick=""PrintSet('5')"" >"_$$^%W1DICT("PRINTSET5")_"</button></td>"
    W "<td>&nbsp;</td>"
   W "</tr>",!
   ;
   S K=0,N=""
   S N="" F  S N=$O(@TMP1@(N)) Q:N=""  D
   .S A=$G(^(N))
   .D PRS(A) Q:NAME=""
   .I $G(NOMLS) Q
   .S K=K+1
   .S IND=$P(A,"\",6) Q:IND=""
   .
   .W "<tr>"  
   . W "<td id=""nm"_IND_""" width=""40%"" style=""font-weight:bold"">"
   .  W $$H2U^%L1FRM(NAME)
   . W "</td>"
   .
   . S PR1=0
   . F I=1:1:4 D
   .. W "<td>" 
   ..  S SHAOT=$P($G(@GL@(IND)),"\",I+1)
   ..  I 'SHAOT W "&nbsp;</td>" Q
   ..  I I=1 S PR1=1
   ..  W "<button id=""btn"_I_"_"_IND_""" onclick=""Click('"_IND_"','"_I_"')"">"_$$^%W1DICT("MDBPGT"_I)_"</button>",! 
   .. W "</td>"
   .
   . W "<td>"
   .  D
   .  .I 'PR1 W "&nbsp;" Q
   .  .W "<button id=""btn5"_"_"_IND_""" onclick=""Click('"_IND_"','5')"">"_$$^%W1DICT("MDBPGT5")_"</button>",! 
   . W "</td>" 
   .
   .W "</tr>",!
  W "</table>",! 
  W "<p></p>",!
  D ^W4BCK 
 W "</div>",!  
 Q
 ;
 ;
MDBPGT(PRM) ;
 N (JB,PRM)
 ;;S ^AA("W4MDBPGT-PGT","PRM")=PRM
 S IND=$P(PRM,"~")
 S I=$P(PRM,"~",2)
 S OV=$P(PRM,"~",3)
 S OV=$$CNWEB^%L1FRM(OV)
 S OV=$$INVH^%L1FRM(OV)
 S DAT=$P(PRM,"~",4)
 I $G(IND)="" Q
 I $G(OV)="" Q
 ;
 S PRINT=90
 S MDPS=6
 D TV^W4MDP(MDPS)
 ;
 D MDBBG^W4MDBPC(PRINT)
 S GL=$$^W4GL("W4MDBPGT")
 S A=$G(@GL@(IND))
 ;
 ;;D PC(PRINT,"")
 D HD(I)
 ;
 D PCNAME(A)
 ;
 D
 .I I=1 S ST="dxytd jix`z" 
 .I I=2!(I=3)!(I=4) S ST="dgizt jix`z"
 .I I=5 S ST="dqtcd onf"
 ;
 S TX=$ZD($H,"DD.MM.YY 24:60")_" : "_ST 
 D PC(PRINT,TX)
 ;
 S CUR=$P($H,",",2)
 S SHAOT=$P(A,"\",I+1)
 S DT=+$H 
 S TIM=CUR+(SHAOT*3600)
 I TIM>86400 D
 .S COLD=TIM\(24*3600)
 .S DT=DT+COLD,TIM=TIM#86400
 S TIM=DT_","_TIM
 ;
 D
 .I I=1 S ST=" dxytd meiq"
 .I I=2!(I=3)!(I=4) S ST="  cr yeniyl"
 .I I=5 S ST="cr oxvi swez"
 ;
 S TX=$ZD(TIM,"DD.MM.YY 24:60")_" : "_ST
 I I=5 D
 .I DAT'[".",DAT'["/" S DAT=$E(DAT,1,2)_"."_$E(DAT,3,4)_"."_$E(DAT,5,6)
 .S TX=DAT_" : "_ST
 ;
 D PC(PRINT,TX)
 D PC(PRINT,"")
 ;
 S TX=OV_" : caer my"
 D PC(PRINT,TX)
 D CLSNBC^W4MDBPC(PRINT)
 Q
 ;
PC(PRINT,TX,B,SM) ;
 D PC^W4MDBPC(PRINT,TX,$G(B),$G(SM))
 Q
 ;
PCNAME(A) ; 
 ;;S TX=$P(A,"\")_" : hixt my"
 N TX
 S TX=$P(A,"\")
 D PC(PRINT,TX,"B")
 D PC(PRINT,"")
 Q
 ;
 ;
HD(I) ; 
 N TX,SM
 S TX=""
 I I=1 S TX="dxytd onf"
 I I=2 S TX="oiilwn lecb xxwn"
 I I=3 S TX="ozgze oeilr oiilwn"
 I I=4 S TX="xcgd zxehxtnha oken"
 I I=5 S TX="d`twda oxvi swez"
 S TX=TX_$J("",(40-$L(TX)\2)-3)
 D PC(PRINT,TX) 
 D PC(PRINT,"") 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDP
W4MDP(MDP) ;     [ 16.09.20 15:21 ] [ 31.05.20 14:16 ] [ 23.09.19 15:35 ] 
 K %MDP,%MDS
 Q:$G(MDP)=""  S MDP=+MDP
 S PRINT=$$PRINT(MDP) Q:PRINT=""
 S MDPS=$$MDPS(PRINT) Q:MDPS=""
 S MDPBEEP=$$BEEP(MDP)
 S MDPETEK=$$ETEK(MDP)
 G T
 ;
TV(MDPS) ;
T S %MDP("BEEP")=""
 S MDPS=+MDPS,GWPC=40
 S (%MDP("B"),%MDP("N"),%MDP("R"),%MDP("RL"),%MDP("I"),%MDP("IE"),%MDP("U"),%MDP("UE"),%MDP("P"),%MDP("BEEP"),%MDP("CUT"),%MDP("PRG"),%MDP("PG"))=""
 ;
 I MDPS=1 D  ; -- CITIZEN 3530
 .;;S %MDP("B")=$C(30),%MDP("N")=$C(31),%MDP("R")=$C(18),%MDP("RL")=""
 .S %MDP("B")=$C(27,33,41)
 .S %MDP("N")=$C(27,33,9)
 .S %MDP("R")=$C(27,114,49)
 .S %MDP("RL")=$C(27,114,48)
 .S %MDP("P")=$C(7),%MDP("BEEP")="",%MDP("CUT")=$C(10,10,10,29,86,48)
 .S (GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10)
 .S %MDP("PG")=%MDP("PRG")
 .S %MDP("U")="",%MDP("UE")=""
 .S %MDP("I")="",%MDP("IE")=""
 ;
 I MDPS=2 D  ;-- STAR-24
 .S %MDP("B")=$C(14),%MDP("N")=$C(20),%MDP("R")=$C(27,52),%MDP("RL")=$C(27,53)
 .S %MDP("P")=$C(29),%MDP("BEEP")="",%MDP("CUT")=""
 .S %MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=%MDP("PRG")
 .S %MDP("U")="",%MDP("UE")=""
 .S %MDP("I")="",%MDP("IE")=""
 .S (GWPC,%MDP("GWPC"))=22
 ;
 I MDPS=3 D  ;-- CITIZEN 3540,3541
 .S %MDP("B")=$C(14),%MDP("N")=$C(15),%MDP("R")=$C(19),%MDP("RL")=""
 .S %MDP("P")=$C(7),%MDP("BEEP")=$C(30),%MDP("CUT")=$C(27,80,0)
 .S (GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10)
 .S %MDP("PG")=%MDP("PRG")_%MDP("CUT")
 .S %MDP("U")="",%MDP("UE")=""
 .S %MDP("I")="",%MDP("IE")=""
 ;
 I MDPS=4 D  ; -- SENOR
 .S %MDP("B")=$C(27,87,49),%MDP("N")=$C(27,87,48)
 .S %MDP("R")="",%MDP("RL")="",%MDP("P")=$C(27,112,50,50)
 .S %MDP("CUT")=$C(27,105),(GWPC,%MDP("GWPC"))=40
 .S %MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=%MDP("PRG")_%MDP("CUT")
 .S %MDP("U")="",%MDP("UE")=""
 .S %MDP("I")="",%MDP("IE")=""
 ;
 I MDPS=5 D  ;-- CITIZEN 90,240
 .S %MDP("B")=$C(27)_"W1",%MDP("N")=$C(27)_"W0",%MDP("R")="",%MDP("RL")=""
 .S %MDP("P")="",%MDP("CUT")=$C(12),(GWPC,%MDP("GWPC"))=80
 .S %MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=$C(12)
 .S %MDP("U")="",%MDP("UE")=""
 .S %MDP("I")="",%MDP("IE")=""
 ;
 I MDPS=6!(MDPS=9) D  ; --- 9 --- LE MADBEKOT ARUHOT
 .N BIGFONT S BIGFONT=$G(@$$^W4PRM@("BIGFONT"))
 .I $D(%BIGFONT) S BIGFONT=%BIGFONT
 .D
 ..I BIGFONT=1 D BIGFONT1 Q
 ..I BIGFONT=2 D BIGFONT2 Q
 ..I BIGFONT=3 D BIGFONT3 Q
 ..D BIGFONT0 Q
 .
 .S %MDP("R")="",%MDP("RL")=""
 .S %MDP("U")=$C(27,45,50),%MDP("UE")=$C(27,45,48)
 .S %MDP("I")=$C(29,66,1),%MDP("IE")=$C(29,66,0)
 .
 .S %MDP("P")=$C(27)_"p"_$C(0)_"14",%MDP("CUT")=$C(27)_"m"
 .S %MDP("BEEP")=$S($G(MDPBEEP):$C(27)_"p"_$C(1)_$C(64)_$C(255),1:"")
 .S (GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10)
 .S %MDP("PG")=%MDP("PRG")_%MDP("CUT") ;-- CBM 230/231
 ;
 I MDPS=7 D
 .S %MDP("R")="",%MDP("RL")="",%MDP("P")="",%MDP("CUT")=$C(12)
 .S %MDP("B")=$C(27)_"(s3B",%MDP("N")=$C(27)_"(s0B"
 .S (GWPC,%MDP("GWPC"))=80,%MDP("PRG")=$C(10,10,10,10,10,10),%MDP("PG")=$C(12)
 .S %MDP("COND")=$C(27)_"(s16H",%MDP("NOCOND")=$C(27)_"(s10H"
 ;
 I MDPS=8 D
 .S %MDP("B")=$C(27,33,40)
 .S %MDP("N")=$C(27,33,8)
 .S %MDP("BB")=$C(27,33,40)
 .
 .S %MDP("R")="",%MDP("RL")=""
 .S %MDP("U")=$C(27,45,50),%MDP("UE")=$C(27,45,48)
 .S %MDP("I")=$C(29,66,1),%MDP("IE")=$C(29,66,0)
 .
 .S %MDP("P")=$C(27)_"p"_$C(0)_"14",%MDP("CUT")=$C(29,86,48)
 .S %MDP("BEEP")=$S($G(MDPBEEP):$C(27,67,3,3,2),1:"")
 .S (GWPC,%MDP("GWPC"))=40,%MDP("PRG")=$C(10,10,10,10,10,10)
 .S %MDP("PG")=%MDP("PRG")_%MDP("CUT") ;-- CBM 230/231
 ;
 I '$D(%MDP("BB")) S %MDP("BB")=$G(%MDP("B"))
 Q
 ;
 ;
BIGFONT0 ;
 S %MDP("B")=$C(27,33,40)
 S %MDP("N")=$C(27,33,8)
 S %MDP("BB")=$C(27,33,56)
 Q
 ;
BIGFONT1 ;
 S %MDP("B")=$C(27,33,41)
 S %MDP("N")=$C(27,33,8)
 S %MDP("BB")=$C(27,33,57)
 Q
 ;
BIGFONT2 ;
 S %MDP("N")=$C(27,33,8)
 N LNG S LNG="" ;;$C(27,29,116,13)
 S %MDP("B")=LNG_$C(27,33,49)
 S %MDP("BB")=LNG_$C(27,33,57)
 Q
 ;
BIGFONT3 ;
 S %MDP("B")=$C(27,33,56)
 S %MDP("N")=$C(27,33,8)
 S %MDP("BB")=$C(27,33,56)
 Q
 ;
PRINT(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 N PRN S PRN=$P($P(ST,"\",3),"-")
 S PRN=$P(PRN,":")
 S PRN=$P(PRN,",")
 S PRN=$P(PRN,";")
 I PRN="" Q 0
 Q PRN_"-"_MDPN
 ;
MDPS0(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",1)
 ;
MDPS(PRINT) ;
 N (JB,%ARG,PRINT)
 N MDPS,OK S MDPS=6,OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S A=$G(^(N)) D  Q:OK
 .I PRINT,+$P(A,"\",3)=+PRINT S MDPS=$P(A,"\"),OK=1
 I OK Q MDPS
 ;
 N DEV S DEV=PRINT
 I $G(DEV)="" Q $$DFLTS
 N SUG S SUG=$P($G(@$$^W4DEV@(DEV,"H")),"\",2)
 I SUG="",$P($G(@$$^W4DEV@(+DEV,"H")),"\",2) D
 .S SUG=$P($G(@$$^W4DEV@(+DEV,"H")),"\",2)
 I SUG="" Q $$DFLTS
 Q SUG
 ;
 ;
MDPS1(DEV) ;
 N MDPS S MDPS=$$MDPS(DEV)
 Q $G(@$$^W4MDPSUG@(MDPS))
 ;
DFLTS(STAM) Q 6
 ;
TEUR(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",4)
 ;
BEEP(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",5)
 ;
ETEK(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",6)
 ;
FIRE(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 Q $P(ST,"\",7)
 ;
NIFRAD(MDPN) ;
 I $G(MDPN)="" Q ""
 N ST,G D MDPI
 I $G(@G@("NIFRAD"))="" Q ""
 Q $P(ST,"\",@G@("NIFRAD"))
 ;
MDPI ;
 S G=$$BG^W4SCR_"""P1MDP"",""G"",""NAME"")"
 S ST=$G(@$$^W4PRM@("MDP",MDPN))
 Q
 ;
HZ(MDP) ; 
 K %MDP,%MDS
 Q:$G(MDP)=""  S MDP=+MDP
 S PRINT=$$PRINT(MDP) Q:PRINT=""
 S MDPS=$$MDPS0(MDP) Q:MDPS=""
 S MDPBEEP=$$BEEP(MDP)
 S MDPETEK=$$ETEK(MDP)
 G T
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDPJRF
W4MDPJRF(NMB) ;--> PRINT FOR JYRAF    [ 24.11.08 15:07 ] [ 10.11.08 17:53 ] [ 30.04.07 16:38 ]
 N N
 Q:$E($G(@$$^W4SG("START")),1,7)'="2520337"&($E($G(@$$^W4SG("START")),1,7)'="2521184")  ;; Olive
 I $$SUGL1^W4L(NMB)["xa" D  Q
 .S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  I $P(^(N),"\",4)["xa" D  Q
 ..N SUG S PRINT=$P(^(N),"\",3)
 ..S SUG=$P(^(N),"\",1)
 ..I SUG K %MDP S %MDP("SUG")=SUG D TV^W4MDP(SUG)
 ;
 I $$TAW^W4DLPK(NMB) D  Q
 .S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  I $P(^(N),"\",4)["xw'v" D  Q
 ..N SUG S PRINT=$P(^(N),"\",3)
 ..S SUG=$P(^(N),"\",1)
 ..I SUG K %MDP S %MDP("SUG")=SUG D TV^W4MDP(SUG)
 Q

W4MDPMSL
W4MDPMSL(NM) ; [ 02.12.24 07:23 ] [ 23.02.24 15:22 ] [ 07.11.23 05:21 ] 
 S:$G(NM)<1 NM=1
 N SUG,DG K %MDP,%MDS
 N NMB S NMB="" I $G(HZM) S NMB=$$NMB^W4HZMST(HZM)
 N MDPMSL S MDPMSL=$$MDPMSL^W4PRM
 I MDPMSL'[":" S PRINT=$P(MDPMSL,",",NM)
 E  S PRINT=$$^W4DEFMDP(MDPMSL,NMB)
 D
 .I $$INTERNET S PRINT=$G(@$$^W4PRM@("MDPDFLT")) Q
 .I $$BCPRINT S PRINT=$G(@$$^W4PRM@("BCPRINT")) Q
 S SUG=$$MDPS^W4MDP(PRINT)
 S %MDP("SUG")=SUG
 D TV^W4MDP(SUG)
 Q
 ;
 ;
DEF ;---- HAGDARAT MADPESET
 S MDPS=$$MDPMSL^W4PRM
 D
 .I $$INTERNET S MDPS=$G(@$$^W4PRM@("MDPDFLT")) Q
 .I $$BCPRINT S MDPS=$G(@$$^W4PRM@("BCPRINT"))
 ;
 I MDPS?1N.N S MDPS=MDPS_" "_$$H2U^%L1FRM($G(@$$^W4GL("W4MDP")@(MDPS)))
 ;
 W "<br><br>",!
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   N TX S TX="TYPEDISPATHPRINTER"
   S SZ=20
   D
   .I $$INTERNET S TX="TYPEINTPRINTER",SZ=3 Q
   .I $$BCPRINT S TX="TYPEBCPRINTER",SZ=3
   ;
   W "<td>"_$$^%W1DICT(TX)
   W "<td align=""center"" >"
   W "<input type=""text"" size="""_SZ_""" id=""mdpmsl"" "
   W " dir=""LTR"" align=""center"" "
   W "onFocus=""this.select()"" "
   W " value="""_MDPS_""" />",!
  W "</td>",!
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
  W "  </td>",!
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "  </td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ; 
SETMDP(PRM)
 N MDP,INT,IND S INT=$P(PRM,";",2)
 S MDP=$P(PRM,";")
 S IND="MDPMSL"
 I INT=1 S IND="MDPDFLT"
 I INT=2 S IND="BCPRINT"
 S @$$^W4PRM@(IND)=$$SPA^%L1FRM(MDP)
 Q 1
 ;
INTERNET() 
 Q $G(%ARG("INTERNET")) 
 ;
BCPRINT() 
 Q $G(%ARG("BCPRINT")) 
 ;
KOT()
 N TX S TX=$S($$INTERNET:"INTERNETPRINTERDEFINITION",$$BCPRINT:"BARCODEPRINTERDEFINITION",1:"DISPATHPRINTERDEFINITION")
 Q $$TV^%W1DICT($$^%W1LNG,TX)
 ;
 
 
 
 
 
 
 
 
 
 

W4MDPPC
W4MDPPC ; [ 10.05.23 14:36 ] [ 19.04.23 09:06 ] [ 26.10.22 13:58 ] 
 N SUG,DG K %MDP,%MDS
 S PRINT=$$PRINT Q:PRINT<0
 S SUG=$$MDPS^W4MDP(PRINT)
 I $D(MDPB) S SUG=$G(@$$^W4PL@("LP","SUG"),5)
 N MDPPART
 D TV^W4MDP(SUG)
 ;
 S MDPPART=$$^W4MYDVN
 S %MDP("SUG")=SUG
 ;
EMDP ;
 Q
 ;
 ;
PRINT(STAM) ;
 I JB<0,$D(@$$^W4MAIN("VRMM"))#2 S PRINT=@$$^W4MAIN("VRMM") G EP
 N MDPPART,PRINT S MDPPART=$$^W4MYDVN
 ;
 I $G(%ARG("PRINTPORT")) S PRINT=%ARG("PRINTPORT") G EP
 ;
 N HSBPOS S HSBPOS=$$GETP^%W1PRM("HSBPOS")
 I HSBPOS<0 D KILL^%W1PRM("HSBPOS") S PRINT=-1 Q PRINT
 ;
 I HSBPOS,$$LP^W4PLUK(HSBPOS) D  G EP
 .S PRINT=$$LP^W4PLUK(HSBPOS)
 ;
 I $D(MDPB) S PRINT=$G(@$$^W4PL@("LP")) I PRINT="" S PRINT=-1 G EP
 I 'MDPPART S PRINT=-1 G EP
 I '$D(@$$^W4GL("PLUK")@(MDPPART,"LP")) S PRINT=-1 G EP
 S PRINT=$G(@$$^W4GL("PLUK")@(MDPPART,"LP"))
 S:PRINT="" PRINT=-1
EP ;
 I PRINT=-1,$G(@$$^W4PRM@("MDPDFLT")) S PRINT=@$$^W4PRM@("MDPDFLT")
 Q PRINT
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MDPSUG
W4MDPSUG(STAM) ; [ 26.10.16 13:31 ] [ 
 Q $$^W4GL("MDPSUG")

W4MENU
W4MENU ; [ 19.08.26 08:03 ] [ 24.06.26 09:17 ] [ 22.06.26 17:05 ] 
 Q
 ;
UR(STAM) 
 D TMPS
 N UR S UR=$G(@TMPS@("UR"))
 I $G(%ARG("AIG")) Q 3
 I $G(%ARG("AIP")) Q 4
 Q UR
 ;
 ;
CLRUR ;
 D TMPS
 N UR S UR=$$UR
 I UR>2 S UR=2 
 K @TMPS@(1) 
 K @TMPS@(2) 
 S @TMPS@("UR")=UR 
 Q 
 ;
 ;
INIT ;
 N MYDVN S MYDVN=$$^W4MYDVN
 S ^DV(MYDVN,+$H)=$G(^DV(MYDVN,+$H))+1
 I $G(%ARG("ITEMSHOW"))'="" Q  ; *** 02/08/20
 D PUT^%W1PRM("W4MENU",1)
 ;
 I $G(%ARG("ORD"))>0,$D(@$$^W4ORD@(%ARG("ORD")))=11 D
 .N NMB S NMB=$$NMB^W4HZMST(%ARG("ORD"))
 .D PUT^%W1PRM("NMB",NMB)
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $L(NMB)>3 D PUT^%W1PRM("LASTLK",NMB)
 I NMB>0 D ^W4KLFL(NMB),SET^W4KLFL(NMB)
 ;
 D KILL^%W1PRM("DIV")
 D KILL^%W1PRM("SUBGR")
 D KILL^%W1PRM("ORDEND")
 D KILL^%W1PRM("W4OPT")
 D KILL^%W1PRM("FASTPAY")
 D KILL^%W1PRM("WASMVC2")
 D KILL^%W1PRM("WASMVC3")
 D KILL^%W1PRM("CLSDAY")
 D KILL^%W1PRM("STOUTBIT")
 D KILL^%W1PRM("VIRTKB")
 ;
 I $$STAGE^W4PRM D
 .N ORD S ORD=$G(%ARG("ORD"))
 .I ORD'<1 D PUT^%W1PRM("STAGE",+$$STAGE^W4HZMST(ORD)) ; -- 11/06/26
 ;
 I $$MV D  I HZM>0 G MV1 ; -- MOVE OR COPY
 .N PRM S PRM=3 ; -- CREATE NEW ORDER
 .I $$^W4CP S PRM=1 ; -- NOT CREATE NEW ORDER
 .S HZM=$$MVFROM^W4ORDVFN(PRM) ; ------ !!!!!!!!!!! 
 ;
 ;
 I $D(@$$^W4TMPORD)<10!$$DLV^W4DLVCSR D
 .N I
 .;;I $D(@$$^W4TMPORD)<10 D REST^W4TMPORD ; *** 15/07/20 LEV
 .
 .I $O(@$$^W4TMPORD@(99999),-1)>1 Q
 .
 .N PRHZMH S PRHZMH=0
 .S I=$O(@$$^W4TMPORD@(99999),-1)
 .I 'I,$$HZMH(JB) D
 ..D INIT^W3PRCOFR(JB)
 ..S I=$O(@$$^W4TMPORD@(99999),-1)
 .
 .I $$HZMH^W3PRM,$P($G(@$$^W4TMPORD@(1)),"~",2)=$$HZMH^W3PRM S PRHZMH=1
 .
 .I I>0,'$$^W4DLVNPR(JB) Q
 .N MH,MAIN S MAIN=""
 .I $$GETP^%W1PRM("COPYORD") D  Q
 ..N N S N="" F  S N=$O(^[$$^W3MAIN]TMPCOPY(JB,N)) Q:N=""  I N D
 ...I PRHZMH,$P($G(^[$$^W3MAIN]TMPCOPY(JB,N)),"~",2)=$$HZMH^W3PRM Q
 ...S I=I+1,@$$^W4TMPORD@(I)=$G(^[$$^W3MAIN]TMPCOPY(JB,N))
 ...D UPDMH(I)
 ..D KILL^%W1PRM("NMB")
 ..D CLRCOPY
 ;
MV1 ;
 ;
 D:$G(%REM) PUT^%W1PRM("REM",%REM)
 D RESTUR^W4SCASK
 ;
 ;
 I $G(%ARG("FIRST"))=1 D
 .D:$G(NMB) PUT^%W1PRM("NMB",NMB)
 .D PUT^%W1PRM("WASPSW",0)
 .D KILL^%W1PRM("LMAM")
 .D KILL^%W1PRM("FULLFAST")
 .D KILL^%W1PRM("AHL")
 .
 .I $G(%ARG("NEW")) D
 ..D ^WBINIT
 ..D ^W4KORD(JB)
 .
 .D INITORD,GETHZ^W4MENUHD("GET")
 .K @$$^W4MAIN("TMPOP")
 .D CRTMPTF^W4HZTFR
 .I $G(NMB) K @$$^W4GL("P1HL")@(NMB,"ycg")
 .
 .I $G(@$$^W4PRM@("TOGROUP")),$$^W4MSD($G(NMB)) D
 ..S %ARG("CDKV")=@$$^W4PRM@("TOGROUP")
 ..S %ARG("UR")=2
 ..D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 ;
 D KILL^%W1PRM("NOFUNC")
 S CDKV=$$GETP^%W1PRM("CDKV")
 ;
 D CLRCOPY
 ;
 N JUMPGR S JUMPGR=$$ONEGR
 ;
 I JUMPGR D
 .S %ARG("CDKV")=JUMPGR
 .S CDKV=%ARG("CDKV")
 .D PUT^W3HZMST(JB,"SOAD",$$DEFSD^W4HZTFR)
 .S %ARG("UR")=2
 ;
 ;
 I $G(SHID)["LV0" D  ; -- 10/06/26 ; -- ADD D
 .D INITUR(3)
 .D PUT^%W1PRM("SHID",SHID)
 ;
 I $G(SHID)["LV1" D
 .D INITUR(4)
 .D PUT^%W1PRM("SHID4",SHID)
 ;
 I $G(%ARG("ORD")) D
 .D PUT^%W1PRM("HZM",%ARG("ORD"))
 .D CRTMPTF^W4HZTFR
 ;
 I +$G(CDKV)=0 S CDKV=$$FIRSTGR
 D PUT^%W1PRM("CDKV",CDKV)
 ;
 ;;S ITEMSHOW=$$CLWEB^%L1FRM($G(ITEMSHOW))
 D KILL^%W3DEB("W4MENU")
 D PUT^%W3DEB("W4MENU","JB=JB & MSD=MSD & ITEMSHOW=ITEMSHOW & ARG=[%ARG")
 ;
 I $L($G(%ARG("SMALLSHOW"))) D PUT^%W1PRM("SMALLSHOW",%ARG("SMALLSHOW"))
 ;
 ;;S ^AA("W4MENU-INIT","TMPORD")=$G(@$$^W4TMPORD)
 ;
 N HZM,AHMAM
 S HZM=$$GETP^%W1PRM("HZM")
 S AHMAM=$S(HZM>0:$$AHMAM^W4HZMST(HZM),1:$$MAM^W4PRM)
 D PUT^%W1PRM("AHMAM",AHMAM)
 D SAVE1^W4TMPORD
 Q
 ;
 ;
ONEGR(STAM) ;
 N KV S KV=$G(@$$^W4MAIN("TMPTF")@(1,1,"KV"))
 I $O(@$$^W4MAIN("TMPTF")@(1,1)),'$$ONEGR^W4PRM Q ""
 I $$DEFSD^W4HZTFR'?1N.N Q ""
 I $$ASKCUST^W4SUGS($$GETP^%W1PRM("NMB")) Q ""
 I $$ONEGR^W4PRM>1,$O(@$$^W4MAIN("TMPTF")@(1,1)) S KV=$$ONEGR^W4PRM
 Q KV
 ;
COPYORD(ORD,PRCOPY) ; 
 D CLRCOPY
 N ORD1 S ORD1=ORD
 I $$GETP^%W1PRM("CUSTLASTORDS") S ORD1=-ORD
 D PUT^%W1PRM("COPYORD",ORD1)
 D KILL^%W1PRM("HZM")
 N A S A=$$^W4GETHZ(ORD) 
 I $G(HZMBIT) S @$$^W4TMPORD@("COPYDEL")=HZMBIT
 ;
 D CLEARTMPORD^W4HZBIT
 ;
 D ^W4TMPOP($G(PRCOPY)) ; -- TMPORD -> TMPCOPY
 Q
 ;
CLRCOPY ;
 K ^[$$^W3MAIN]TMPCOPY(JB)
 D KILL^%W1PRM("COPYORD")
 Q
 ;
HZMH(JB) ; 
 I $G(%ARG("HZMH")) Q 1
 I $$HZMH^W3PRCOFR(JB) Q 1
 Q 0 
 ;
MV(STAM) ; 
 I $$^W4MVFROM,$D(@$$^W4TMPORD)<10,'$$DLV^W4DLVCSR,'$$^W4AIN Q 1
 Q 0 
 ;
INITORD ;
 D TMPS K @TMPS
 D INITUR(1)
 D VOZVR2
 D KILL^%W1PRM("HRFN")
 D KILL^%W1PRM("HRFITD")
 S @TMPS@(1,"PG")=1
 S @TMPS@(2,"PG")=1
 S @TMPS@(3,"PG")=1
 S @TMPS@(4,"PG")=1
 ;
 D GETHZ^W4MENUHD("INIT")
 Q
 ;
INITUR(UR)
 D TMPS D KILLUR(UR)
 D SETUR(UR)
 S @TMPS@(UR,"PG")=1
 S @TMPS@(UR,"CUR")=1
 Q
 ;
VOZVR2 ;
 D TMPS
 N N S N="" F  S N=$O(@TMPS@(N)) Q:N=""  I N'=1 K @TMPS@(N)
 S @TMPS@("UR")=1
 D KILL3
 D KILLTMPCI(2)
 D TMPORD^W4HZORD
 D PUT^%W1PRM("URMENU",1)
 Q
 ;
KILL3 ;
 D TMPORD^W4HZORD
 D TMPS
 K @TMPS@(3)
 ;
 D KILL^W3TMPTF(3),KILL^W3TMPTF(4),KILL^W3TMPTF(5)
 ;
 D PUT^%W1PRM("SHID","")
 D KILL^%W1PRM("MVLN")
 D KILL^%W1PRM("SHID0")
 D KILL^%W1PRM("SHIDH")
 D KILL^%W1PRM("STPAR")
 D KILL^%W1PRM("STPAR0")
 D KILL^%W1PRM("STPAR00")
 D KILL^%W1PRM("STPAR40")
 D KILL^%W1PRM("SHID40")
 D KILL^%W1PRM("QNAT")
 D KILL^%W1PRM("WASTOAI")
 D KILL^%W1PRM("DELITM")
 D KILL^%W1PRM("CDCMNT")
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("COMMENT0")
 D KILL^%W1PRM("W4ABC")
 D KILL^%W1PRM("TOOLD")
 D KILL^%W1PRM("TXT1")
 D KILL^%W1PRM("TXT2")
 ;;K @TMPORD@("SCRY")
 K @$$^W4MAIN("TMPIND")
 K @$$^W4MAIN("TMPA")
 K @$$^W4MAIN("TMPORDIT")
 D KILLTMPCI(3)
 D KILL4
 ;
 D KILL^W4TMPANS("DEL") ; --- *** LEV 31/05/14
 D KILL^W4TMPANS("DISCIT")
 D KILL^W4TMPANS("DISCOUNT")
 Q
 ;
KILL4 ;
 D TMPS K @TMPS@(4)
 D PUT^%W1PRM("SHID4","")
 D KILL^%W1PRM("STPAR4")
 D KILL^%W1PRM("NEWSET")
 I $$^W4AIN D PUT^%W1PRM("SHID","")
 D KILLTMPCI(4)
 Q
 ;
KILLTMPCI(UR) ;
 K ^[$$^W3MAIN]TMPS(JB,UR_"C")
 Q
 ;
TMPS ;
 S TMPS="^[$$^W3MAIN]TMPS(JB)"
 Q
 ;
KILLUR(UR) ;
 D TMPS
 K @TMPS@(UR)
 I UR D
 .N URN S URN=UR F  S URN=$O(@TMPS@(URN)) Q:URN=""  I URN?1N.N K @TMPS@(URN)
 I UR=1!(UR=2) D KILL3
 I UR=4 D
 .D KILL^%W1PRM("STPAR") 
 .N STP0 S STP0=$$GETP^%W1PRM("STPAR0")
 .D PUT^%W1PRM("STPAR",STP0)
 Q
 ;
SETUR(UR) ;
 Q:$G(UR)=""
 Q:UR=0
 D TMPS
 I UR=$G(@TMPS@("UR")) Q
 S @TMPS@("UROLD")=$G(@TMPS@("UR"))
 S @TMPS@("UR")=UR
 Q
 ;
ORDSMALL(STAM) ;
 I $$^W4SMALL,$$^W4SMSHOW="ORD",'$$^W4AIN Q 1
 I $$^W6,$$ORD^W6 Q 1
 Q 0
 ;
ORDSMALLAIN(STAM) ;
 I $$^W4SMALL,$$^W4SMSHOW="ORD",$$^W4AIN Q 1
 I $$^W6,$$ORD^W6,$$^W4AIN Q 1
 Q 0
 ;
UPDMH(I) ;
 I '$D(MAIN) S MAIN=""
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $G(COPY2NMB) S NMB=COPY2NMB
 I 'NMB S NMB=$$NMB^W3HZMST(JB)
 N CD S CD=$P(@$$^W4TMPORD@(I),"~",2) I 'CD Q
 N PRMHNMB S PRMHNMB=NMB
 I $G(@$$^W4PRM@("UPDCPNM")) S $P(@$$^W4TMPORD@(I),"~",3)=$$SHEM^W4P(CD)
 I $P(@$$^W4TMPORD@(I),"~")=0 D  Q
 .S MAIN=CD
 .S $P(@$$^W4TMPORD@(I),"~",4)=$$MH^W4P(CD)
 ;
 Q:'MAIN
 ;
 I CD["-" Q
 I CD?.E1U.E Q
 I '$P(@$$^W4TMPORD@(I),"~",4) Q
 S $P(@$$^W4TMPORD@(I),"~",4)=$$MH^W4HZTSF(NMB,CD,MAIN)
 Q
 ;
SCROLLGR(STAM) ; 
 N (JB,%ARG)
 Q "no"
 ;
SCROLLIT(STAM) ; 
 N (JB,%ARG)
 S COLYP=$$COLYPRT^W4PRM
 S COLY=$$COLYGR^W4PRM
 I '$$GRITVW^W4PRM Q "no"
 I $$1024^W4WDSCR Q $S(COLY+COLYP<8:"no",1:"yes")
 Q $S(COLY+COLYP<10:"no",1:"yes")
 ;
FRROW(STAM) ; 
 N COLY S COLY=$$COLYGR^W4PRM
 I COLY,COLY<3 Q "30%,70%"
 I COLY=3 Q "42%,58%"
 Q "52%,48%"
 ;
FIRSTGR(STAM) ;
 N CDKV,OK S OK=0
 S CDKV=$G(@$$^W3TMPTF@($$^%W1JB,1,1,"KV"))
 I $$GRITVW^W4PRM D
 .N N S N="" F  S N=$O(@$$^W3TMPTF@($$^%W1JB,1,N)) Q:N=""  I N D  Q:OK
 ..N KV S KV=$G(^(N,"KV"))
 ..I KV D 
 ...I $G(@$$^W4GL("W3SUG")@(KV))=0 Q
 ...I $D(@$$^W4GL("W4FASTGR")@(KV)) Q
 ...S OK=KV 
 I OK S CDKV=OK
 Q CDKV
 ;
HZMSKONL() 
 N NMB S NMB=+$$GETP^%W1PRM("NMB")
 I $$^W4POSMSK(NMB),$$HZMSKONL^W4PRM Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MENUBT
W4MENUBT ; [ 14.09.26 10:27 ] [ 10.09.26 14:55 ] [ 09.09.26 12:48 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB) S JB=$G(%ARG("JB"))
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W1PRM("NOPRINT")
 D KILL^%W1PRM("COPYTO")
 S NMB=$$GETP^%W1PRM("NMB")
 ;;D NOSELECT^%W1JS
 ;
 S TMPORD=$$^W4TMPORD
 ;;S ^AA("W4MENUBT","TMPORD")=$G(@TMPORD)
 ;
 I $G(@$$^W4PRM@("BDNOCH")),'$$^W4HUZ,'$D(@TMPORD@(1)),'$$^W4SMALL,'$$^W4AIN,'$$^W4ZAG,'$$^W6 D 
 .I +$G(@$$^W4PRM@("NODLVBDN")) Q
 .N MLZ S MLZ=$$GETP^%W1PRM("MLZR")
 .I MLZ,$G(@$$^W4GL("FILE")@(MLZ,"CIO"))'="I" D
 ..W "<script>",!
 .. W "MsgA(""NOPRESENTINWORK"")",!
 .. W "LevelUp(GetJB())",!
 ..W "</script>",!
 ;
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 ;
 W "<table dir=""RTL"" "
 D
 .N BRDCLR S BRDCLR=$$BRDCLR^W4BGBODY
 .W " style=""position:absolute;top:0;left:0;width:100%;height:98%;"_$S($$ZAG:"",1:"border-top:"_BRDCLR_" solid 1px")_"""" Q
 .W " style=""position:absolute;top:0;left:0;width:100%;height:98%;"" "
 W " class=""hdord"" "
 W " id=""TblBot"""
 W ">",!
 ;
 S UR=$$UR
 I UR<3,'$$^W4SMALL,'$$^W6,'$$NOFUNC,'$$POPUP,'$$ABC,$$^W4TABLET D
 .W "<tr><td width=""60%"" >"
 . W $$NBSP^%L1FRM(3) 
 . W "<input type=""button"" value="""_$$^%W1DICT("SEARCHBYNAME")_""" onClick=""SearchByName()"" />"
 .W "</td>",!
 .I $$^W4TABLET=2 N SUMEXIT S SUMEXIT="" D SUM
 .W "</tr>",!
 ;
  W "<tr "
   I $$COLOR^W3PRM="RW" D
    .W " style=""color:white"
    .W """"
  W " >",!
 ;
 K MFUNC
 S NF=0
 ;
 D TMPS
 S UR=$$UR
 D PUT^%W3DEB("W4MENUBT","UR=UR")
 ;
 I $$ZAG D  Q
 .N SZFLD S SZFLD=6
 .W "<td width=""70%"">&nbsp;</td>",!
 .I $$AHUZ^W3HZMST(JB)="" D PUT^W3HZMST(JB,"AHUZ",$$AHUZ)
 .N AHUZ S AHUZ=$$AHUZ^W3HZMST(JB)
 .D HNH
 .N NMB S NMB=$$GET^%W1PRM("NMB")
 .D DMSH
 .D FLDTOT("TOPAYMENT","sum","idsum",$J($$TSHL^W3HZMST(JB),2,2),7)
 .W "</tr></table>",!
 ;
 I $$POPUP G SHOWFNC
 ;
 I $$TLMTN^W4L($$GETP^%W1PRM("NMB")) D  G SUM
 .D EXIT^W4SHEET("60%")
 ;
 ;;S ^AA("W4MENUBT","HIDEBTN")=$$HIDEBTN
 ;
 I $$HIDEBTN D  G SUM
 .N WD S WD=60
 .W "<td width="""_WD_"%"">&nbsp;</td>"
 ;
 I $$ORDSMALL!$$ORDSMALLAIN G TOPMENU
 ;
 I UR>2,UR'["C" G SMALL:$$^W4SMALL,ADDONS
 ;
 N LAB S LAB=""
 ;
 I '$$SCANER,UR>0 D  I $L(LAB) G @LAB
 .I $$SCANER^W4PRM D GOSCANER
 .Q:$$DLVNPR
 .D PGUPDN(UR)
 ;
 I $$SCANER D GOMENU
 ;
 ;
TOPMENU ;
 I UR<3!$$ORDSMALL,'$$ORDSMALLAIN D  ; --------------- GROUPS OR ITEMS
 .
 .N HZ S HZ=$$HZM
 .
 .I $$^W4POSMSK(NMB),'$$^W6 D POSMSKFN Q
 .
 .I $$SUPER^W3PRM!($$TAW^W4DLPK(NMB)&(HZ>0))!$$TAW^W4PRM!$$NOSAVED(HZ),'$$NOCONTENT!(HZ>0),'$$DLVCSR,'$$^W6,('$$DEL^W4DEL(HZ)&(HZ>0))!(HZ<1) D DELORD
 .
 .I '$$^W6 D SNDNOPRINT
 .
 .I '$$FAST,'$$DLVCSR,'$$^W6 D GUESTQN
 .I $$DLVCSR,$$SDMSL^W4PRM D GUESTQN
 .
 .I '$$DLVCSR,'$$SHORT,'$$^W6 D CUSTCODE
 .
 .I '$$^W4SMALL,'$$^W6 S NF=NF+1 D MISC(NF)
 .
 .I $$DLVCSR,$$NOCONTENT D
 ..D COPYORDER
 ..D CUSTHIST
 .;
 .I $$HZM'<1,$$STAGE^W4HZMST($$HZM)=1 D SAVEANDSHOWORD G EX
 .
 .I $$MOTH^W4PRM,'$$^W4AIN,'$$FAST,'$$^W4SMALL,'$$HZMH,'$$WW^W6 D MOTH
 .
 .I '$$FAST!$$ACNTAW^W4PRM,'$$DLVCSR,'$$NEWLINES!'$$^W4SMALL,'$$^W6 D PRINTBILL
 .;
 .I '$$NOPAY^W4POSPRM,'$$^W4SMALL,'$$HZMH,'$$NOCONTENT D PAY
 .
 .I ('$$SHORT&'$$KUP)!$$CMNT2CUS^W4PRM,$$BAR(NMB)!$$TAW^W4DLPK(NMB)!$$CMNT2CUS^W4PRM,'$$^W4MSL(NMB),'$$^W4SMALL,'$$^W6 D CMNT2CUS
 .
 .I $$DLVCSR&(UR>2) Q
 .
 .I $G(@$$^W4PRM@("MSKCOMP")),'$$^W4POSMSK(NMB),'$$^W6 D HZMMSK
 .
 .I '$$^W4DLPK(NMB)!($$ACNTAW^W4PRM=1),'$$^W6,'$$SUPER^W3PRM,'$$^W4SMALL,'$$DLVCSR D SAVEANDSHOWORD
 .
 .I $$NOPRINT($$^W4MYDVN),'$$DLVCSR,$$FAST^W4MTAW($$GETP^%W1PRM("NMB")) Q
 .
EX .
 .I '$$SUPER^W3PRM!$$DLVCSR,'$$^W6 D
 ..I $$HZMH D SAVEPRCORD Q
 ..D SAVEANDEXIT
 .
 .I $$DLVCSR D BACK2HEADER
 ;
SMALL ;
 I $$^W4SMALL!$$^W6 D SMALLFNC
 ;
 I $$ORDSMALL G SHOWFNC
 ;
 ;
ADDONS ;
 I UR>2 D MENUADDS ; -- ADDONS
 ;
 ;
SHOWFNC ; -- SHOW FUNCTIONS LINE
 N WD S WD=60
 I $$LMAM^W4PRM S WD=50
 W "<td "
 I $$^W4TABLET=2 W "colspan=""2"" "
 W "width="""_WD_"%"" align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""">",!
 ;
 I $$NOFUNC W "&nbsp;</td>" K MFUNC G:$$^W4SMALL SUME G SUM
 I '$G(@$$^W4PRM@("ABCFUNC")),$$ABC W "&nbsp;</td>" K MFUNC G:$$^W4SMALL SUME G SUM
  ;
 W " <table width=""100%"" height="""_$S($$1024^W4WDSCR:70,1:80)_"%"" ><tr>",!
 ;
EXIT ;
 I $$POPUP D  W "</tr></table>",! G:$$^W4SMALL SUME G SUM
 .W "<td width=""85%"">&nbsp;</td>"
 .S MFUNC("EXIT")="BACK"
 .S MFUNC("EXIT","TO")="Back2Menu('"_%ARG("SOPT")_"')"
 .D EXIT^W4SHEET("15%")
 .W "</tr>"
 ;
 I $$ORDSMALL D  G SUM ;;G SUME ; -- 23/12/21
 .D FUNC^W4SHEET("100%")
 .W "</tr></table>",!,"</td>"
 ;
 I $$^W4AIN,UR>3 D  G:$$^W4SMALL SUME G SUM
 .D AICANCEL
 .W "</tr></table>",!
 ;
 I '$$TOPLEVEL(UR) S WD1=$S($$^W4SMALL:85,1:85) D FUNC^W4SHEET(WD1_"%")
 ;
 S MFUNC("EXIT")="BACK"
 ;
 I $$^W4SMALL,$$UR=2 S MFUNC("EXIT")="BACK2MENU"
 ;
 I $$TOPLEVEL(UR),$$MVFROM D  G SUM
 .D FUNC^W4SHEET("100%")
 .W "</tr></table>",!,"</td>"
 ;
 I UR<3 D  G EX1
 .S MFUNC("EXIT","BG")="red"
 .S MFUNC("EXIT","FG")="white"
 .S MFUNC("EXIT")="BACK"
 .S MFUNC("EXIT","TO")="Exit1()"
 .I $$TOPLEVEL(UR),$$NEWLINES D
 ..S MFUNC("EXIT")="CANCELUPDATES"
 ;
 I UR>3 G EX1
 ;
 I UR>2 D
 .N CD S CD=$P($$GET^%W1PRM("STPAR"),"~",2) Q:CD=""
 .I '$$^W4EZAT(CD) S MFUNC("EXIT")="CANCELACTION"
 ;
EX1 ;
 N WD1 S WD1=10 I $$^W4SMALL S WD1=15
 ;
 D EXIT^W4SHEET(WD1_"%")
 ;
EX2 I $$TOPLEVEL(UR) D FUNC^W4SHEET((100-WD1)_"%")
EX21 W "</tr></table>",!,"</td>"
 I $$^W4SMALL!($$^W4TABLET=2) G SUME
 ;
SUM ;
 S SZFLD=$S($$1024^W4WDSCR:4,1:6)
 ;;W "<td colspan=""5"">",!
 W "<td >",!
  W "<table width=""100%"" height=""100%"" class=""hdord"" border=""0"">",!
   W "<tr>",! 
   ;
   I $$LMAM D  G TOPAY
   .N TOT S TOT=$$TOTORD^W3HZMST(JB)
   .N DT S DT=$$^W4DZ
   .N HZM S HZM=$$HZM
   .I HZM>0 S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
   .N AHMAM S AHMAM=$$MAMD^W4L(DT)
   .S TOT=$J(TOT*100/(100+AHMAM),2,2)
   .N MAM S MAM=$J(TOT*AHMAM/(100+AHMAM),2,2)
   .I HZM>0 S MAM=$$MAM^W4HZMST(HZM)
   .D FLDTOT("BEFORETAX","bftax","idbftax",TOT,SZFLD)
   .N AHUZ S AHUZ=$$AHUZ^W3HZMST(JB)
   .D HNH
   .D DMSH
   .
   .D FLDTOT("TAX<>"_+AHMAM_"%","tax","idtax",$J(MAM,2,2),SZFLD)
   ;
   D FLDTOT($S($$LMAM:"AFTERTAX",1:"TOTAL"),"total","idtotal",$J($$TOTORD^W3HZMST(JB),2,2),SZFLD)
   ;
   I $$AHUZ^W3HZMST(JB)="" D PUT^W3HZMST(JB,"AHUZ",$$AHUZ)
   N AHUZ S AHUZ=$$AHUZ^W3HZMST(JB)
   ;
   I AHUZ!$$HNH^W3HZMST(JB) D HNH
   ;
   N NMB S NMB=$$GET^%W1PRM("NMB")
   ;
   ;;S ^AA("W4MENUBT","TMPORD2")=$G(@TMPORD)
   D DMSH
   ;;S ^AA("W4MENUBT","TMPORD3")=$G(@TMPORD)
   ;
TOPAY ;
   I $$^W4AIN W "<td>&nbsp;</td>",! 
   I '$$^W4AIN D FLDTOT("TOPAYMENT","sum","idsum",$J($$TOTORD^W3HZMST(JB),2,2),SZFLD+1)
   ;
   N PRQN S PRQN=0
   N PRTODLV S PRTODLV=0
   ;
   I $$^W4MSD($$NMB^W3HZMST(JB)),'$$^W6,$$COLFN<$$MAXFN D
   .I $$^W4AIN W "<td>&nbsp;</td>",!  Q
   .I '$$FAST^W4MTAW(NMB),$$^W4TABLET'=2 D
   . .D FLDTOT("AVMSD","avmsd","idavmsd","",SZFLD,"grey")
   .I $$FAST^W4MTAW(NMB),$$^W4TABLET'=2 D TDQNITEMS
   ;
   I $G(@$$^W4PRM@("JMP2MSL")),'$$JUMPTBL^W4PRM,'$$INPCODE^W4PRM,$$^W4MSD($$NMB^W3HZMST(JB)),'$$^W6,'$$^W4AIN,$$MSL^W4PRM D
   .I '$$INPCODE^W4PRM D:'$G(PRQN) TDQNITEMS
   .D:'$G(PRTODLV) TODLV
   ;
   I $$^W4MSL($$NMB^W3HZMST(JB)),$$COLFN<$$MAXFN,'$$^W6,'$$^W4AIN D:'$G(PRQN) TDQNITEMS
   ;
   I $$1700^W4WDSCR D TOTAVQN
  W "</tr></table>",!
 W "</td>"
 ;
SUME ;
 I $D(SUMEXIT) Q
 W "</tr>",!
 ;
 I UR<3,'$$^W4SMALL,'$$^W6,'$$NOFUNC,'$$POPUP,'$$ABC,$$INPCODE^W4PRM D TRINPCODE
 ;
 W "</table>",!
 ;
 ;;S ^AA("W4MENUBT","TMPORD4")=$G(@TMPORD)
 Q
 ;
 ;
TDQNITEMS ;
 D FLDTOT("QNITEMS","qnitems","qnitems",$$TOTQN^W3HZMST(JB),SZFLD,"grey")
 S PRQN=1
 Q
 ;
POSMSKFN(NMB) ;
 N NF S NF=1
 D MISC(NF)
 ;
 S NF=NF+1
 S MFUNC(NF,"BG")="darkgreen"
 S MFUNC(NF,"FG")="white"
 S MFUNC(NF)=$$^%W1DICT("TERMORDER")
 S MFUNC(NF,"TO")="TermPosMsk()"
 ;
 S MFUNC("EXIT","BG")="red"
 S MFUNC("EXIT","FG")="white"
 S MFUNC("EXIT")="BACK"
 S MFUNC("EXIT","TO")="Exit1()"
 I $$NEWLINES D
 .S MFUNC("EXIT")="CANCELORDER"
 Q
 ;
TRINPCODE ;
 ;;I $$HZM'<1,$$STAGE^W4HZMST($$HZM) Q
 I $G(%ARG("ITEMSHOW")),$$DLVCSR,$$NODLVORD^W4PRM!$$MM^W4PRM Q
 D INPCODE
 N NMB S NMB=$$NMB^W3HZMST(JB)
 I $$^W4MSD(NMB),$$COLFN>($$MAXFN-1),'$$^W4AIN,'$$1700^W4WDSCR D TOTAVQN
 ;
 I $G(@$$^W4PRM@("JMP2MSL")),$$MSL^W4PRM,$$FAST,'$$^W4AIN,'$$^W6,'$$^W4POSMSK(NMB) D
 .I '$G(PRTODLV) D TODLV W "<td>&nbsp;</td>"
 W "</tr>"
 Q
 ;
 ;
TOTAVQN ;
 I '$$FAST^W4MTAW(NMB),$$^W4TABLET'=2 D
 .D FLDTOT("AVMSD","avmsd","idavmsd",SZFLD,"grey")
 Q
 ;
MAXFN() Q 12
 ;
DLVNPR(STAM) ;
 I $$^W4DLVNPR(JB) Q 1 
 I $$MM^W4PRM Q 1
 Q 0
 ;
HIDEBTN(STAM) ;
 I $G(%ARG("HIDEBTN")) Q 1
 I $$MM^W4PRM,$G(%ARG("ITEMSHOW")) Q 1
 I $$DLVMOUSE^W4PRM,$G(%ARG("ITEMSHOW")) Q 1
 I $$DLVCSR,$G(%ARG("ITEMSHOW"))!($$GETP^%W1PRM("SHID")'=""),$$NODLVORD^W4PRM,$$HZMH Q 1
 I $$CHNORDOPT^W4HZORHD Q 1
 I $$GETP^%W1PRM("ORDEND") Q 1
 Q 0
 ;
NOCONTENT(STAM) ;
 I $G(^P1PRM("ASH","MASOF"))=1702016 Q 0  ; --- HALLO TAIMAN
 I $G(^P1PRM("ASH","MASOF"))=1702228 Q 0  ; --- SAMBOSA KLAZ
 N LI S LI=$O(@$$^W4TMPORD@(99999),-1)
 I LI<1 Q 1
 I LI=1,$$HZMH^W3PRM,$$CDST^W3HZMST(JB,1)=$$HZMH^W3PRM Q 1
 Q 0
 ;
GOSCANER ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("GOTOSCANER")
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="blue"
 S MFUNC(NF,"TO")="GoToScaner()"
 Q
 ;
GOMENU ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("GOTOMENU")
 S MFUNC(NF,"TO")="GoToMenu()"
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="blue"
 Q
 ;
FLDTOT(RKV,NM,ID,VL,SZ,COLOR,DOP)
 I '$G(SZ) S SZ=6
 I $$^W4TABLET=1 S SZ=SZ*1.4
 I $$^W4TABLET=2 S SZ=SZ*1.4
 W "<td>"
  I RKV["<>" D
  .W $$^%W1DICT($P(RKV,"<>"),$P(RKV,"<>",2))
  I RKV'["<>" D
  .W $$^%W1DICT(RKV)
  ;
  W " <br />",!
  W "<input type=""text"" dir=""LTR"" name="""_NM_""" id="""_ID_""" "
   W $$^%W1ALIGN
   W " size="""_SZ_""" class=""botinp"" "
   W " style=""font-size:"_$$^W3FSZ(14)_";font-weight:bold"
   I $L($G(COLOR)) W ";color:"_COLOR
   W """ "
   W "value="""_$G(VL)_""" "
   I $G(DOP)'="" W DOP
  W ">"
 W "</td>",!
 Q
 ;
GUESTQN ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("GUESTSQN")
 S MFUNC(NF,"TO")="GuestsQn()"
 Q
 ;
CUSTCODE ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("CUSTCODE")
 S MFUNC(NF,"TO")="CustomerNumber()"
 Q
 ;
COPYORDER ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("COPYORDER")
 S MFUNC(NF,"TO")="CopyOrder()"
 Q
 ;
CUSTHIST ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("CUSTHIST")
 S MFUNC(NF,"TO")="CustHist()"
 Q
 ;
MOTH ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("MOTH")
 S MFUNC(NF,"TO")="ClickMOTH()"
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="black"
 Q
 ;
 ;
PRINTBILL ;
 I $$HZM'>0 Q
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("PRINTACCOUNT")
 S MFUNC(NF,"TO")="Account()"
 ;
 I $$HSBENG^W4PRM,'$$^W4HSPART($$HZM) D
 .S NF=NF+1
 .S MFUNC(NF)="Print Bill"
 .S MFUNC(NF,"TO")="Account('1')"
 .S MFUNC(NF,"FG")="Red"
 Q
 ;
PAY ;
 D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PAY")
 .I $$^W6 S MFUNC(NF)=$$^%W1DICT("PAYMDIVIDE")
 .S MFUNC(NF,"TO")="TermOrd()"
 .S MFUNC(NF,"BG")="white"
 .S MFUNC(NF,"FG")="green"
 ;
 I $$BAR(NMB)!$$FAST^W4MTAW(NMB)!$$DLVCSR!$$FASTPAY^W4PRM!$$^W6,'$$NOCONTENT D
 .I '$$DLVCSR!$$NOWILLPY^W4PRM,$$^W4TABLET'=2,'$$^W6,$$MZM^W4PLUK($$^W4MYDVN) D
 ..I $$NOMZMDLV^W4PRM,'$$MGR^W4KOTMLZ,$$^W4MSL(NMB),$$TSHL^W3HZMST(JB)>0,'$$TAKEAWAY^W3HZMST(JB) Q
 ..N DT S DT=$$^%L1DC($$DAT^W3HZMST(JB),3)
 ..I $$SHAA^W3HZMST(JB)<$$SHAAZ^W4PRM S DT=DT-1
 ..I DT>+$H Q
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("FASTCASH")
 ..I $$^W6 S MFUNC(NF)=$$^%W1DICT("CASH")
 ..S MFUNC(NF,"TO")="TermOrd('1')"
 ..S MFUNC(NF,"BG")="lightgreen"
 ..S MFUNC(NF,"FG")="black"
 ..S MFUNC(NF,"IMG")="w4cash1.png"
 .;
 .;;I $$EMV^W4PRM'=1!'$$DLVCSR!$$TAKEAWAY^W3HZMST(JB)!'$$EMVNUM^W4POSEMV($$^W4MYDVN),$$^W4TABLET'=2 D
 .I $$^W4TABLET'=2 D
 ..I $G(@$$^W4PRM@("NOFASTCA")) Q
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("FASTCAPAY")
 ..I $$^W6 S MFUNC(NF)=$$^%W1DICT("CRCARD")
 ..S MFUNC(NF,"TO")="TermOrd('3')"
 ..S MFUNC(NF,"BG")="lightblue"
 ..S MFUNC(NF,"FG")="black"
 ..S MFUNC(NF,"IMG")="w4crcard1.png"
 .
 .I $$^W4CIBLKH,$$^W4TABLET'=2 D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("FASTCIBUS")
 ..I $$^W6 S MFUNC(NF)=$$^%W1DICT("CIBUS")
 ..S MFUNC(NF,"TO")="TermOrd('7')"
 ..S MFUNC(NF,"BG")="white"
 ..S MFUNC(NF,"FG")="green"
 .
 .I $G(@$$^W4PRM@("10BIS","USER"))'="",$$^W4TABLET'=2 D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("FASTTB")
 ..I $$^W6 S MFUNC(NF)=$$^%W1DICT("TENBIS")
 ..S MFUNC(NF,"TO")="TermOrd('10')"
 ..S MFUNC(NF,"BG")="white"
 .
 .I $$VCPREPAY^W4PRM,$$^W4TABLET'=2 D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("BONUSVC")
 ..S MFUNC(NF,"TO")="TermOrd('81')"
 ..S MFUNC(NF,"BG")="lightblue"
 .
 .I '$$^W6,$$KUP,$$^W4TABLET'=2,$G(@$$^W4PRM@("FASTASR")) D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("FASTASR")
 ..S MFUNC(NF,"TO")="TermOrd('4')"
 ..S MFUNC(NF,"BG")="lightpink"
 Q
 ;
 ;
CMNT2CUS ;
 S NF=NF+1
 N HD S HD="COMMENT2CUSTOM"
 I $$^W4MSL(NMB) S HD="COMMENT2ORDER"
 S MFUNC(NF)=$$^%W1DICT(HD)
 S MFUNC(NF,"TO")="Comment('<"_HD_"')"
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="red"
 I $$^W4MSL(NMB) S MFUNC(NF,"WD")="20"
 Q
 ;
HZMMSK ;
 S NF=NF+1
 N HD S HD="HZMMSK"
 S MFUNC(NF)=$$^%W1DICT(HD)
 S MFUNC(NF,"TO")="HzmMsk()"
 S MFUNC(NF,"BG")="lightgreen"
 S MFUNC(NF,"FG")="darkgreen"
 Q
 ;
SAVEANDSHOWORD ;
 I $$^W6 Q
 I $$NEWLINES,$$NOSVSHOW^W4PRM Q
 S NF=NF+1
 N SHOWORD S SHOWORD=$$^%W1DICT("SAVEANDSHOWORD")
 I $$STAGE^W4HZMST($$HZM)=1 S SHOWORD=$$^%W1DICT("SAVEANDSHOW")
 ;;I '$$NEWLINES S SHOWORD=$$^%W1DICT("SHOWORD")
 I '$D(@$$^W4TMPORD@(1)) S SHOWORD=$$^%W1DICT("SEARCHORDER")
 S MFUNC(NF)=SHOWORD
 S MFUNC(NF,"TO")="SaveAndShowOrd()"
 I '$$NEWLINES S MFUNC(NF,"BG")="brown"
 I $$NEWLINES S MFUNC(NF,"BG")="darkgreen"
 S MFUNC(NF,"FG")="yellow"
 Q
 ;
SAVEANDEXIT ;
 ;;I $$SUPER^W3PRM Q
 ;
 S NF=NF+1
 N SHOWORD
 N WORD S WORD="PRINT"
 ;
 I $$DLVCSR,'$$NOCONTENT,+$$STAGE^W4HZMST($$HZM)=0!($$STAGE^W4HZMST($$HZM)=2) D  Q  ; --MISHLOHIM
 .N CODTS S CODTS=$$CODTS^W3HZMST(JB)
 .I $G(@$$^W4PRM@("NOWILLPY")) Q
 .
 .;;I '$$D^W4PIZUL($$GETP^%W1PRM("HZM")) D
 .D
 ..S MFUNC(NF)=$$^%W1DICT("WILLPAYCASH")
 ..S MFUNC(NF,"TO")="PaymInLocal('1')"
 ..D COLORTS(CODTS,1)
 ..
 ..I '$$NOCHK^W4POSPRM D
 ...S NF=NF+1
 ...S MFUNC(NF)=$$^%W1DICT("WILLPAYCHECK")
 ...S MFUNC(NF,"TO")="PaymInLocal('2')"
 ...D COLORTS(CODTS,2)
 ..
 ..;;I $$DLVMOUSE^W4PRM,'$$NODLVORD^W4PRM Q; -- 01.01.26 --> COMMENT
 ..
 ..I $G(@$$^W4PRM@("WILLPAYCA")) D
 ...S NF=NF+1
 ...S MFUNC(NF)=$$^%W1DICT("WILLPAYCA")
 ...S MFUNC(NF,"TO")="PaymInLocal('3')"
 ...D COLORTS(CODTS,3)
 ..
 ..I $$ISCR^W4L($$NMB^W3HZMST(JB)),$G(@$$^W4PRM@("WILLPAYASR")) D
 ...S NF=NF+1
 ...S MFUNC(NF)=$$^%W1DICT("WILLPAYASR")
 ...S MFUNC(NF,"TO")="PaymInLocal('4')"
 ...D COLORTS(CODTS,4)
 ;
 I $$SUPER^W3PRM!$$TAW^W4PRM Q
 I $$STAGE^W4HZMST($$HZM)=2 Q
 ;
 S WORD="PRINT" ; -- MISSADA
 I $$STAGE^W4HZMST($$HZM)=1 S WORD="SUBMIT"
 ;
 S MFUNC(NF,"TO")="SaveAndExit(this)"
 ;
 S SHOWORD=$$^%W1DICT(WORD)
 S MFUNC(NF)=SHOWORD
 S MFUNC(NF,"BG")="lightgreen"
 S MFUNC(NF,"FG")="black"
 Q
 ;
COLORTS(CODTS,KIND)
 I CODTS=KIND D
 .S MFUNC(NF,"BG")="red"
 .S MFUNC(NF,"FG")="white"
 Q
 ;
BACK2HEADER ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("BACK2ORDHEADER")
 S MFUNC(NF,"TO")="Back2OrdHeader()"
 S MFUNC(NF,"BG")="darkred"
 S MFUNC(NF,"FG")="white"
 Q
 ;
SAVEPRCORD ;
 I $$GETP^%W1PRM("STAGE")=1 D  Q
 .S NF=NF+1
 .S MFUNC(NF,"TO")="SaveAndShowOrd('2',this)"
 .S MFUNC(NF)=$$^%W1DICT("CHANGE2ORDER")
 .S MFUNC(NF,"BG")="lightgreen"
 .S MFUNC(NF,"FG")="black"
 ;
 S NF=NF+1
 S MFUNC(NF,"TO")="SaveAndShowOrd('1')"
 S MFUNC(NF)=$$^%W1DICT("SAVEANDSHOWOFRPRC")
 S MFUNC(NF,"BG")="lightgreen"
 S MFUNC(NF,"FG")="black"
 ;
 I $$NODLVORD^W4PRM!$$VVMSK^W4PRM D
 .S NF=NF+1
 .S MFUNC(NF,"TO")="SaveAndShowOrd('2')"
 .S MFUNC(NF)=$$^%W1DICT("CHANGE2ORDER")
 .S MFUNC(NF,"BG")="white"
 .S MFUNC(NF,"FG")="green"
 Q
 ;
 ;
SMALLFNC ;
 I '$$ORDSMALL,'$$ORDSMALLAIN,(UR<5&$$^W4AIN)!(UR<3&'$$^W4AIN) D  Q
 .;;Q:$D(@$$^W4TMPORD)<10&$$^W4AIN ; --> CMNT 24/03/21 
 .Q:'$D(@$$^W4TMPORD@(1))
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("SHOWORD")
 .S MFUNC(NF,"TO")="SmallShowOrd()"
 .S MFUNC(NF,"BG")="green"
 .S MFUNC(NF,"FG")="yellow"
 ;
 I $$ORDSMALL!$$ORDSMALLAIN D  Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("SHOWMENU")
 .I $$^W4AIN S MFUNC(NF)=$$^%W1DICT("UPDATE")
 .S MFUNC(NF,"TO")="SmallShowMenu()"
 .S MFUNC(NF,"BG")="green"
 .S MFUNC(NF,"FG")="yellow"
 .Q:$$ORDSMALLAIN
 .
 .I $$^W6 D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("DELETEORDER")
 ..S MFUNC(NF,"TO")="CancelOrd()"
 ..S MFUNC(NF,"BG")="red"
 ..S MFUNC(NF,"FG")="white"
 .
 .I $$GET^%W1PRM("CDKV"),'$$^W6 D
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("BACK2LASTGROUP")
 ..S MFUNC(NF,"TO")="SmallShowMenu('"_$$GET^%W1PRM("CDKV")_"')"
 ..S MFUNC(NF,"BG")="green"
 ..S MFUNC(NF,"FG")="yellow"
 .
 .Q:$$^W6
 .
 .S NF=NF+1
 .I '$$NEWLINES D
 ..S MFUNC(NF)=$$^%W1DICT("BACK")
 ..S MFUNC(NF,"BG")="red"
 ..S MFUNC(NF,"FG")="white"
 .
 .I $$NEWLINES D
 ..S MFUNC(NF)=$$^%W1DICT("PRINT")
 ..S MFUNC(NF,"BG")="lightgreen"
 ..S MFUNC(NF,"FG")="black"
 .
 .S MFUNC(NF,"TO")="SaveSmallOrder()"
 Q
 ;
 ;
MENUADDS ;
 N SHID S SHID=$$GETP^%W1PRM("SHID")
 I SHID="",$$GETP^%W1PRM("SHID0")'="" S SHID=$$GETP^%W1PRM("SHID0")
 ;;S ^AA("W4MENUBT","UR")=UR
 ;;S ^AA("W4MENUBT","W4OPWND")=$$^W4OPNWND
 ;;S ^AA("W4MENUBT","SHID")=SHID
 ;;I (UR=3&'$$^W4AIN),$$^W4OPNWND Q  ;*** 12.07.20 -> COMMENT
 ;
 I (UR=3&'$$^W4AIN)!(UR=4) D PGUPDN(UR)
 N STPAR0 S STPAR0=$$^W4RSTPAR
 ;
 I $$^W4AIN&(UR=4),'$$ORDSMALLAIN,'$$QAI1^W4PRM D
 .I $$^W4MULTY,STPAR0["~@@" Q
 .I $$^W4AIN,$L(SHID),$$NOMODST^W4HZORD(STPAR0) Q
 .N PAR S PAR=$P(STPAR0,"~",2) Q:'PAR
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("AIQN")
 .S MFUNC(NF,"TO")="parent.tfr.aig.QnEzat('EDQN')"
 .S MFUNC(NF,"BG")="white"
 .S MFUNC(NF,"FG")="green"
 
 I $E(SHID,1,2)="LV",UR=3!$$^W4AIN D
 .I $$^W4AIN,$$^W4SMALL,$L(SHID),$$NOMODST^W4HZORD(STPAR0) Q
 .I $$^W4AIN,$$^W4MULTY,$L(SHID),$$NOMODST^W4HZORD(STPAR0) Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("DELETEITEMFROMORDER")
 .S MFUNC(NF,"TO")="DelRow('"_SHID_"')"
 .S MFUNC(NF,"BG")="orange"
 .I $L($$GETP^%W1PRM("SHID0"))&'$L($$GETP^%W1PRM("SHID")) D
 ..S MFUNC(NF)=$$^%W1DICT("DELETEMAINITEM")
 ..S MFUNC(NF,"TO")="DelYesNoMain()"
 ..S MFUNC(NF,"BG")="red"
 .S MFUNC(NF,"FG")="black"
 .
 .I '$$^W4AIN,'$$^W4SMALL D
 ..N STPAR S STPAR=$$GET^%W1PRM("STPAR")
 ..N CD S CD=$P(STPAR,"~",2) Q:'CD
 ..N QN S QN=$P(STPAR,"~",5) Q:QN<2
 ..Q:'$$^W4EZAT(CD)
 ..S NF=NF+1
 ..S MFUNC(NF)=$$^%W1DICT("PARTDELETING")
 ..S MFUNC(NF,"TO")="parent.ord.PartDeleting('"_SHID_"','"_QN_"')"
 ..S MFUNC(NF,"BG")="orange"
 ..S MFUNC(NF,"FG")="black"
 
 I UR=3!(UR=5) D  ; *** WAS UR=5
 .D PGUPDN(UR)
 .
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("CANCELACTION")
 .S MFUNC(NF,"TO")="Exit()"
 .S MFUNC(NF,"BG")="white"
 .S MFUNC(NF,"FG")="red"
 ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("SUBMIT")
 S MFUNC(NF,"TO")="SubmitAdd()"
 S MFUNC(NF,"BG")="green"
 S MFUNC(NF,"FG")="white"
 Q
 ;
AICANCEL ;
 S MFUNC("EXIT")="CANCELALL"
 S MFUNC("EXIT","TO")="CancelYesNo()"
 D EXIT^W4SHEET("25%")
 D FUNC^W4SHEET("75%") ; --- SHOW FUNC
 Q
 ;
HNH ;
 I $$HZM D
 .N HZM S HZM=$$HZM
 .I $$SLKHNH^W4PAYVW(HZM)!$$SHNH1^W4PAYVW(HZM) S AHUZ=""
 N TOT S TOT=$$TOTORD^W3HZMST(JB) 
 N HNAH S HNAH=0 I AHUZ,TOT S HNAH=$J(TOT*AHUZ*.01,2,2)
 D FLDTOT("DISC<>"_$S(AHUZ="":" ",1:+AHUZ_"%"),"discont","iddiscont",HNAH,$G(SZFLD),"red","onClick=""ShowPswDisc()"" ")
 Q
 ;
DMSH ;
 N NMB S NMB=$$NMB
 ;
 I $$^W4MSL(NMB)!$$DMSHMSD^W4PRM!$$DMSHMSD^W3HZMST(JB),'$$^W4AIN D
 .N DMSH,DMSAH
 .S DMSAH=$$DMSAH^W3HZMST(JB)
 .D
 .. I $$HZM,$$CLOSE^W4HZMST($$HZM) Q
 .. I DMSAH="",$$^W4MSD(NMB) S DMSAH=$$DMSHMSD^W4PRM
 .. I $$TAKEAWAY^W3HZMST(JB)!$$TAWM^W4DLPK($$NMB) D
 ... S DMSAH="",DMSH=0 D PUT^W3HZMST(JB,"DMSH",DMSH)
 .. ;;S ^AA("W4MENUBT","DMSH1")=$G(DMSH)
 .. D PUT^W3HZMST(JB,"DMSAH",DMSAH)
 .
 .I $$^W4MSL(NMB) D
 .. S DMSH=$$DMSHMSD^W3HZMST(JB)
 .. ;;S ^AA("W4MENUBT","DMSH2")=$G(DMSH)
 .. I $$LMAM S DMSH=$J(DMSH*100/(100+$$AHMAM),2,2)
 .;
 .I $$^W4MSD(NMB) D
 .. I DMSAH?1N.E D
 ... N TOTORD S TOTORD=$$TOTORD^W3HZMST(JB)
 ... S DMSH=$J(TOTORD*DMSAH*.01,2,2)
 ... ;;S ^AA("W4MENUBT","DMSH3")=$G(DMSH)
 ... D PUT^W3HZMST(JB,"DMSH",DMSH)
 ... D PUT^W3HZMST(JB,"TSHL",TOTORD+DMSH-$$HNH^W3HZMST(JB))
 .
 .I '$G(DMSAH),'$G(DMSH) Q
 .W "<td>"
 .W $$^%W1DICT($S($$^W4MSD(NMB):"SRVFEES",1:"DLVPAY"),+DMSAH)
 .
 . W " <br />",!
 . W "<input type=""text"" dir=""LTR"" name=""dlvpay"" id=""iddlvpay"" "
 .  W " onClick=""ClickDlvPay()"" "
 . W " size=""6"" class=""botinp"" style=""color:green""/>",!
 .W "</td>",!
 Q
 ;
 ;
SAVE(STAM) ;
 N HZM
 S HZM=$$HZM
 N NMB S NMB=$$NMB
 ;
 ;;I NMB D ^W4KLFL(NMB)
 D PUT^%W3DEB("W4MENUBT-SAVE-1","HZM=HZM")
 ;
 I $$^W4ISORD(HZM),$D(^[$$^W3MAIN]TMPORD(JB))'=11,$$^W4HZFULL(HZM) D PUT^%W1PRM("HZM",HZM) Q HZM
 ;
 S NOPRINT=0
 I $$GETP^%W1PRM("NOPRINT") S NOPRINT=1
 ;
 N LAST S LAST=$$LASTI0^W3HZMST(JB)
 ;
 I HZM'<1,'$$CLOSE^W4HZMST(HZM) D
 .I $D(@$$^W4TMPORD@("MVC2")),'$$MVC2^W3HZMST(JB,LAST) D CLRMVC2^W3MVC
 ;
 I $$ADDMVC2^W3MVC
 ;
 S A=$$GETSUM^W3HZMST(JB,1)
 ;
 S HZM=$$^W4NEWHZ(JB,HZM,NOPRINT)
 ;
 D  ;I $$ZAHI^W4PRM=2 D
 .N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N1)) Q:N1=""  I N1 D
 ..I '$D(@$$^W4ORD@(HZM,"ST",N1)) D
 ...N MLZL,MLZBG S MLZL=$G(@$$^W4GL("P1MLZ")@(HZM))
 ...S MLZBG=$$GET1^W4SCREF(@$$^W4ORD@(HZM),"P1HZMS",1,"MKBL")
 ...I (MLZBG&$$MLZBGPAR^W4PRM)!(MLZL="") S MLZL=MLZBG
 ...N DV S DV=$$^W4MYDVN
 ...S @$$^W4ORD@(HZM,"ST",N1)=MLZL_"\"_$$^%L1TM($P($H,",",2))_"\"_DV_"\JB="_$G(JB)_"\"_$H
 ;
 D PUT^%W3DEB("W4MENUBT-SAVE-2","HZM=HZM")
 D KILL^%W1PRM("NOPRINT")
 ;
 ;;S ^AA("W4MENUBT-SAVE","HZM")=HZM
 ;
 D
 .I $$^W4ISORD(HZM) D PUT^%W1PRM("HZM",HZM),PUT^%W1PRM("LASTORD",HZM) Q
 .I '$$^W4ISORD(HZM),'$$DLVCSR D KORD(JB)
 Q HZM
 ;
 ;
CHKMIN(STAM) ;
 N HZM S HZM=$$HZM
 N NMB S NMB=$$NMB
 N TOTORD I $D(@$$^W4TMPORD)=11 S TOTORD=$$TOTORD^W3HZMST(JB)
 I $D(@$$^W4TMPORD)<11,HZM>0 S TOTORD=$$TOT^W4HZMST(HZM)
 I '$$DEL^W4DEL(HZM),$$BAR^W4DLPK(NMB),$$MINMHB^W4PRM,TOTORD'<0,TOTORD<$$MINMHB^W4PRM Q "ER:TOTORDLTMINBAR;"_$$MINMHB^W4PRM
 I '$$DEL^W4DEL(HZM),$$^W4MSD(NMB),$$MINMH^W4PRM,TOTORD'<0,TOTORD<$$MINMH^W4PRM Q "ER:TOTORDLTMIN1;"_$$MINMH^W4PRM
 N OK,MIN S OK=1
 ;
 I $$^W4MSL(NMB),'$$TAKEAWAY^W3HZMST(JB) D
 .I $G(HZM)>0,$$DEL^W4DEL(HZM) Q
 .S MIN=$$MHMIN^W3SP($$CITY^W3HZMST(JB))
 .I MIN,TOTORD'<0,TOTORD<MIN S OK="ER:TOTORDLTMIN1;"_MIN
 ;
 Q OK
 ;
 ;
PRINTBON(PRM) ;
 N HZM,PART,P1HZMET,LOCAL,NOPCMDB
 S HZM=$P(PRM,";")
 S PART=$P(PRM,";",2)
 S LOCAL=$P(PRM,";",3)
 S NOPCMDB=1-$P(PRM,";",4)
 ;
 I 'HZM Q -1
 I $D(@$$^W4ORD@(HZM))<11 Q -2
 ;
 S P1HZMET=""
 S P1HZMET("ETEK")=$S($G(PART):"LAST",1:"")
 I $$^W4HZMH(HZM) S P1HZMET("ETEK")=2
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I LOCAL D PUT^%W1PRM("PRINTLOCAL",1)
 ;
 D ^W4HZMPC
 D KILL^%W1PRM("PRINTLOCAL")
 Q 1
 ;
 ;
MISC(NOM) ;
 S MFUNC(NOM)=$$^%W1DICT("MISC")
 S MFUNC(NOM,"BG")="orange"
 S MFUNC(NOM,"FG")="black"
 S MFUNC(NOM,"TO")="Misc()"
 Q
 ;
HZMH(STAM) ;
 Q $$HZMH^W3PRCOFR(JB)
 ;
KORD(HZ) ;
 D KORD^W4NEWHZ(HZ)
 Q
 ;
PG(UR) ;
 D TMPS
 Q $G(@TMPS@(UR,"PG"))
 ;
LAST(UR) ;
 D TMPS
 Q $G(@TMPS@(UR,"LAST"))
 ;
SETLAST(UR,LAST) ;
 Q:'$L($G(UR))  Q:UR=0  Q:'$D(LAST)
 D TMPS
 S @TMPS@(UR,"LAST")=LAST
 Q
 ;
PGUPDN(UR) ;
 I $$ORDSMALLAIN Q
 N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 N CD S CD=$$CD^W3HZMST(STPAR)
 I $$^W4PIZZA(CD),UR>2 Q
 ;
 N TMPS D TMPS
 I $G(@TMPS@(UR,"LAST"))'="END",'$$DLVNPR D
 .I UR<3,$$GRITVW^W4PRM Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PGDN")
 .I UR["C" D  S LAB="SHOWFNC" Q ; -- COMMENTS
 ..S MFUNC(NF,"BG")="white"
 ..S MFUNC(NF,"FG")="green"
 .S MFUNC(NF,"TO")="PageDown()"
 ;
 I $G(@TMPS@(UR,"PG"))'=1!$$^W4SMALL D
 .I UR<3,$$GRITVW^W4PRM Q
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("PGUP")
 .S MFUNC(NF,"TO")="PageUp()"
 Q
 ;
 ;
PGDN(PRM) ;
 N LAST,PG,UR
 D TMPS
 S UR=$$UR Q:UR=0!(UR?.P) "UR"
 S PG=$$PG(UR)
 S:'PG PG=1
 S LAST=$$LAST(UR)
 I LAST="END" Q "END"
 S @TMPS@(UR,"LAST",PG)=LAST
 S @TMPS@(UR,"BEG",PG)=$G(@TMPS@(UR,"BEG"))
 D SETLAST(UR,LAST)
 S PG=PG+1
 S @TMPS@(UR,"PG")=PG
 S @TMPS@(UR,"BEG",PG)=LAST
 Q +LAST
 ;
PGUP(PRM) ;
 N LAST,PG,N
 D TMPS
 S UR=$$UR Q:UR=0!(UR?.P) "UR"
 S PG=$$PG(UR)
 I PG<2 Q "START"
 S @TMPS@(UR,"PG")=PG-1
 S @TMPS@(UR,"LAST")=$G(@TMPS@(UR,"LAST",PG-2))
 S @TMPS@(UR,"BEG")=$G(@TMPS@(UR,"BEG",PG-1))
 S LAST=$$LAST(UR)
 Q +LAST
 ;
TMPS ;
 S TMPS="^[$$^W3MAIN]TMPS(JB)"
 Q
 ;
UR(STAM) ;
 Q $$UR^W4MENU
 ;
URMENU(STAM) ;
 D TMPS
 N A S A=$G(@TMPS@("URMENU"))
 I A="" S A=$$UR
 Q A
 ;
 ;
SETUR(UR) ;
 D SETUR^W4MENU(UR)
 Q
 ;
 ;
TOPLEVEL(UR)
 I UR=1!(UR=2&$$ONEGR^W4MENU)!(UR=2&$$GRITVW^W4PRM) Q 1
 Q 0
 ;
 ;
DELMAIN(STAM)
 N SHID0 S SHID0=$$GETP^%W1PRM("SHID0") I $E(SHID0,1,3)'="LV0" Q 0
 ;
 I $$^W4AIN D
 .K @$$^W4TMPORD
 .D ORDIT2ORD
 ;
 D DELROW^W4HZORD(SHID0)
 D V3K
 I $$^W4SMALL D PUT^%W1PRM("SMALLSHOW","ORD")
 Q 1
 ;
 ;
CANCELAI(STAM)
 D KILL^%W1PRM("SHID0")
 D KILL^%W1PRM("STPAR0")
 D KILL^%W1PRM("STPAR00")
 D KILL^%W1PRM("COMMENT0")
 ;
 K @$$^W4TMPORD@("OLD")
 K ^[$$^W3MAIN]TMPORDB(JB) ; -- 09/03/18
 ;
 D ORDIT2ORD
 ;
 D VOZVR3
 I $$^W4SMALL D PUT^%W1PRM("SMALLSHOW","ORD")
 Q 1
 ;
 ;
EDAIN(STAM) ;
 N SHID0 S SHID0=$$GET^%W1PRM("SHID0")
 I $E(SHID0,1,3)="LV0" Q 1
 Q 0
 ;
 ;
SAVEAI(CNC) ;
 N OK S OK=1
 I $G(CNC) K @$$^W4TMPORD
 ;
 N STPAR40 S STPAR40=$$GETP^%W1PRM("STPAR40")
 I STPAR40?1"A"1N.E,'$G(CNC) D  I OK'=1 Q OK
 .S OK=$$BDIKA ; -- VIBOR IZ VSEH GRUP ?
 ;
 D VOZVR3
 Q 1
 ;
 ;
VOZVR2 ;
 D VOZVR2^W4MENU
 Q
 ;
 ;
VOZVR3 ;
 N TMPORD,TMPS,SHID0,OK
 ;
 I '$$^W4AIN G V3K
 ;
 S SHID0=$$GETP^%W1PRM("SHID0")
 ;
 N STPAR40 S STPAR40=$$GETP^%W1PRM("STPAR40")
 D PUT^%W3DEB("W4MENUBT-VOZVR3","STPAR40=STPAR40&SHID0=SHID0")
 ;
 ;
 D RESTIT
 I $D(@$$^W4MAIN("TMPORDIT"))#2 D
 .S @$$^W4TMPORD=$G(@$$^W4MAIN("TMPORDIT"))
 ;
 I STPAR40?1"A"1N.E,'$$EDAIN D SAVENEW G V3K
 ;
 I $$EDAIN D SAVEAIED G V3K
 ;
 D ORDIT2ORD
 ;
V3K D KILL3
 S @TMPS@("UR")=2
 D PUT^%W1PRM("URMENU",2)
 Q
 ;
 ;
RESTIT ;
 I $P($G(@$$^W4MAIN("TMPORDIT")),"~")?.P D
 .N HD S HD=$$GET^W4TMPHD
 .S ^ERHZM($$^W4DZ,"RESTIT",$P($H,",",2))=JB_"\"_$G(@$$^W4MAIN("TMPORDIT"))_"\"_HD
 .I HD'="" S @$$^W4MAIN("TMPORDIT")=HD
 ;
 I $D(@$$^W4MAIN("TMPORDIT"))<10!($$GETP^%W1PRM("WASTOAI")=1),$D(@$$^W4TMPORD@("OLD"))>9 D
 .K @$$^W4MAIN("TMPORDIT") ; -- 1/12/16
 .M @$$^W4MAIN("TMPORDIT")=@$$^W4TMPORD@("OLD")
 .K @$$^W4TMPORD@("OLD") ; -- 17/11/16
 ;
 I $$GETP^%W1PRM("WASTOAI")=1 D KILL^%W1PRM("TOAI")
 Q
 ;
 ;
BDIKA(STAM) ;
 N OK S OK=1 K M,MN
 N STPAR0 S STPAR0=$$^W4RSTPAR
 ;
 N PAR0 S PAR0=$$CD^W3HZMST(STPAR0)
 I PAR0="" Q 1
 N QN0 S QN0=+$$QN^W3HZMST(STPAR0)
 D SETM(PAR0) I '$D(MN) Q 1
 ;
 N I,A,SET,CD
 F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .S A=$G(^(I)) Q:$$CDSTC^W3HZMST(JB,I)  Q:$$CDSTA^W3HZMST(JB,I)
 .I $$LVST^W3HZMST(JB,I)'=0 Q
 .I $$QNR^W3HZMST(JB,I)<0 Q
 .S CD=$$CDST^W3HZMST(JB,I)
 .S SET=$$SET(PAR0,CD) Q:SET=""
 .S M(SET)=$G(M(SET))+$$ITRAST^W3HZMST(JB,I)
 ;
 N QNMAX,NOM
 ;
 S NOM="" F  S NOM=$O(MN(NOM)) Q:NOM=""  D
 .S SET=MN(NOM) Q:SET=""
 .N EQ S EQ=$$EQ^W3SET(SET)
 .S QNMAX=$$QNMAXN^W3SET(SET)
 .I '$$^W4MULTY S QNMAX=QNMAX*QN0
 .;
 .I '$$NOCHKAI^W4PRM,+$G(M(SET))=0 S OK=$S(OK=1:"",1:OK)_SET_":0:"_EQ_";" Q
 .I '$$NOCHKAI^W4PRM,QNMAX,$G(M(SET))<QNMAX,QNMAX<5 S OK=$S(OK=1:"",1:OK)_SET_":.5:"_EQ_":"_QNMAX_";" Q
 .I QNMAX,$G(M(SET))>QNMAX,EQ<2 S OK=$S(OK=1:"",1:OK)_SET_":2:"_EQ_":"_QNMAX_";" Q
 .I QNMAX,$G(M(SET))<QNMAX,EQ=1 S OK=$S(OK=1:"",1:OK)_SET_":3:"_EQ_":"_QNMAX_";" Q
 .I QNMAX,$G(M(SET))<QNMAX,EQ=2 S OK=$S(OK=1:"",1:OK)_SET_":3:"_EQ_":"_QNMAX_";" Q
 ;
 Q OK
 ;
 ;
SETM(PRT) ;
 N N2,SET,SETOK,NG,NOM S SETOK="" K MN
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 F NG="P1EZA","P1EZT" D  Q:$D(MN)
 .I $D(@$$^W4GL(NG)@(PRT)) D
 ..S N2="" F  S N2=$O(@$$^W4GL(NG)@(PRT,N2)) Q:N2=""  D
 ...S NOM=$G(^(N2))
 ...S SET=$E(N2,2,20) Q:SET=""  Q:$D(@$$^W4GLSET($G(HZM))@(SET))<10
 ...S MN(NOM)=SET
 Q
 ;
SET(PRT,CD) ;
 N N2,SET,SETOK S SETOK=""
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I $D(@$$^W4GL("P1EZA")@(PRT)) D
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZA")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D  Q:SETOK
 ..S SET=$E(N2,2,20) Q:'SET
 ..I $D(@$$^W4GLSET(HZM)@(SET,CD)) S SETOK=SET
 ;
 I SETOK Q SETOK
 ;
 I $D(@$$^W4GL("P1EZT")@(PRT)) D
 .S N2="" F  S N2=$O(@$$^W4GL("P1EZT")@(PRT,N2)) Q:N2=""  I N2?1"A"1N.E D  Q:SETOK
 ..S SET=$E(N2,2,20) Q:'SET
 ..I $D(@$$^W4GLSET(HZM)@(SET,CD)) S SETOK=SET
 ;
 Q SETOK
 ;
 ;
ORDIT2ORD ;
 D RESTIT
 ;
 I $D(@$$^W4MAIN("TMPORDIT")) D
 .N RES S RES=$$^W4RSTEND($$^W4TMPORD,$$^W4MAIN("TMPORDO"))
 .K @$$^W4TMPORD ; -- 17/11/16
 .M @$$^W4TMPORD=@$$^W4MAIN("TMPORDIT")
 .K @$$^W4MAIN("TMPORDIT")
 .K @$$^W4TMPORD@("OLD")
 Q
 ;
 ;
RESTTMPORD ;
 Q
 ;
ISSTPAR0(STPAR0)
 Q $$ISSTPAR0^W4RSTPAR(STPAR0)
 ;
RESTSTPAR0(STAM) ;
 N FIRSTST,N,A S FIRSTST=""
 S N="" F  S N=$O(@$$^W4MAIN("TMP")@(N)) Q:N=""  S A=$G(^(N)) I $P(A,"~")=0,$P(A,"~",15)["^" S FIRSTST=A Q
 N STPAR0 S STPAR0=$$^W4RSTPAR
 I '$$ISSTPAR0(STPAR0) S STPAR0=$TR($P(FIRSTST,"~",15),"^","~")
 Q STPAR0
 ;
RSTPAR0(STAM) ;
 Q $$^W4RSTPAR
 ;
URA(SHL) ;
 N URA S URA=$P(A,"~")
 N LASTUR S LASTUR=$P($G(@TMPORD@(+SHL)),"~")
 I URA'>LASTUR,URA<2 S $P(A,"~")=URA+1
 S URAO=URA
 Q
 ;
 ;
SAVENEW ;
 ;
 N TMPORD S TMPORD=$$^W4TMPORD
 K @$$^W4MAIN("TMP")
 M @$$^W4MAIN("TMP")=@TMPORD
 K @TMPORD
 ;
 D ORDIT2ORD
 ;
 N LAST S LAST=$O(@TMPORD@(9999),-1)
 N STPAR0 S STPAR0=$$RESTSTPAR0
 D PUT^%W3DEB("W4MENUBT-SAVENEW","STPAR0=STPAR0")
 I '$$ISSTPAR0(STPAR0) G SAVENEWE
 ;
 D PROCQN0
 ;
 N QN0 S QN0=$P(STPAR0,"~",5)
 I 'QN0 G SAVENEWE
 ;
 ;;S ^AA("W4MENUBT-SAVENEW","STPAR0")=STPAR0 ; ***
 S @TMPORD@(LAST+1)=STPAR0
 ;
 I $$MANA^W4PRM=1,'$D(@TMPORD@(LAST+1,"MANA")),$P(STPAR0,"~")=0 D
 .N MANA,CD S CD=$P(STPAR0,"~",2)
 .S MANA=$$DEFMANA^W4P(CD) Q:'MANA
 .S @TMPORD@(LAST+1,"MANA")=MANA
 ;
 D SETHNHSHAA^W3HZMST(LAST+1)
 S LAST=LAST+1
 ;
 N CMNT0 S CMNT0=$$SPA^%L1FRM($$GETP^%W1PRM("COMMENT0"))
 N CD0 S CD0=$$CD^W3HZMST(STPAR0)
 N HRA S HRA=$$SPA^%L1FRM($$HRA^W4P(CD0))
 ;
 I '$L(CMNT0),$L(HRA) D
 .S CMNT0="1~"_CD0_"-C0~"_HRA
 ;
 I CMNT0'="" D
 .S @TMPORD@(LAST+1)=CMNT0
 .S LAST=LAST+1
 ;
 N MANA,SHL
 N QN1 S QN1=""
 ;
 N MULTY S MULTY=$$^W4MULTY
 N I F I=1:1 Q:'$D(@$$^W4MAIN("TMP")@(I))  D
 .N A S A=$G(^(I))
 .S SHL=LAST+I
 .D URA(SHL-1)
 .D QNMULTY
 .S @TMPORD@(SHL)=A
 .
 .I $P(A,"~",2)["-C" D
 ..N LVC S LVC=$P($G(^(SHL-1)),"~")
 ..I 'LVC S LVC=1
 ..S $P(^(SHL),"~")=LVC
 .
 .I $D(@$$^W4MAIN("TMP")@(I,"GLIST"))#2 D
 ..S @TMPORD@(SHL,"GLIST")=@$$^W4MAIN("TMP")@(I,"GLIST")
 .
 .D MANA(I,SHL)
 ;
SAVENEWE K @$$^W4MAIN("TMP")
 Q
 ;
 ;
SAVEAIED ;
 ;
 N SHID0,SH,SH1,I,K
 S SHID0=$$GETP^%W1PRM("SHID0")
 N TMPORDIT S TMPORDIT=$$^W4MAIN("TMPORDIT")
 N TMPORD S TMPORD=$$^W4TMPORD
 ;
 K @$$^W4MAIN("TMP")
 M @$$^W4MAIN("TMP")=@TMPORD
 K @TMPORD
 ;
 S SH=$E(SHID0,4,6)
 I $P($G(@TMPORDIT@(SH)),"~",10)'=SH D
 .N N S N="" F  S N=$O(@TMPORDIT@(N)) Q:N=""  Q:$P($G(^(N)),"~",10)=SH
 .S SH=N
 ;
 S SH1=9999
 ;
 D RESTIT
 ;
 I $D(@TMPORDIT) D  ; -- HELEK KODEM SHEL HAZMANA
 .S @TMPORD=$G(@TMPORDIT) ; -- HEADER
 .F I=1:1:SH-1 M @$$^W4TMPORD@(I)=@TMPORDIT@(I) D
 ..D ^W4SRVTO(TMPORDIT,I,$$^W4TMPORD,I)
 .F I=SH+1:1 Q:'$D(@TMPORDIT@(I))  Q:$P($G(^(I)),"~")=0
 .I $D(@TMPORDIT@(I)) S SH1=I
 ;
 D PUT^%W3DEB("W4MENUBT-SAVEAIED","SH1=SH1")
 ;
 N LAST S LAST=+SH
 N STPAR0 S STPAR0=$$RESTSTPAR0
 I '$$ISSTPAR0(STPAR0) G SAVEAIED1
 ;
 N MULTY S MULTY=$$^W4MULTY
 D PROCQN0
 N CD0 S CD0=$P(STPAR0,"~",2)
 N QN0 S QN0=$P(STPAR0,"~",5)
 ;
 S @TMPORD@(LAST)=STPAR0
 D SETHNHSHAA^W3HZMST(LAST)
 ;
 D ^W4SRVTO(TMPORDIT,LAST,TMPORD,LAST)
 ;
 N CMNT0 S CMNT0=$$GETP^%W1PRM("COMMENT0")
 I CMNT0'="" D
 .S @TMPORD@(LAST+1)=CMNT0
 .S LAST=LAST+1
 ;
 N SHL
 N I F I=1:1 Q:'$D(@$$^W4MAIN("TMP")@(I))  D
 .N SHL S SHL=LAST+I
 .N A S A=$G(^(I))
 .K @TMPORD@(SHL)
 .M @TMPORD@(SHL)=@$$^W4MAIN("TMP")@(I)
 .D URA(SHL-1)
 .D QNMULTY
 .S @TMPORD@(SHL)=A
 .D ^W4SRVTO($$^W4MAIN("TMP"),I,TMPORD,SHL)
 .I MULTY D MRGMULTY(SHL,QN0,I)
 .D MANA(I,SHL)
 ;
SAVEAIED1 ;
 S K=$O(@$$^W4TMPORD@(99999),-1)
 ;
 F I=SH1:1 Q:'$D(@TMPORDIT@(I))  D
 .S K=K+1 M @$$^W4TMPORD@(K)=@TMPORDIT@(I)
 .D ^W4SRVTO(TMPORDIT,I,$$^W4TMPORD,K)
 ;
 I $G(@TMPORDIT@("SCRY"))'="" S @$$^W4TMPORD@("SCRY")=@TMPORDIT@("SCRY") ; --- 10/12/17
 ;
 K @TMPORDIT
 K @TMPORD@("OLD")
 K @$$^W4MAIN("TMP")
 Q
 ;
 ;
MRGMULTY(SH,QN0,I)
 N MRG S MRG=$G(@TMPORD@("MRG",SH)) Q:'MRG
 S @TMPORD@("MRG",SH)=MRG*QN0
 Q
 ;
QNMULTY ;
 N QN S QN=$P(A,"~",5) Q:'QN
 N QNO S QNO=QN
 ;
 N LV S LV=$P(A,"~")
 ;
 I QN["*" S QN=$P(QN,"*",$L(QN,"*"))
 ;
 I QNO'["*",LV=2,QN,$G(QN1),QN\QN1*QN1=+QN D
 .S QN=QN\QN1
 ;
 I MULTY D
 .I LV=1,QN S QN1=QN,QN=QN0_"*"_QN1 Q
 .I LV=2,$G(QN1),QN S QN=QN0_"*"_QN1_"*"_QN Q
 ;
 I 'MULTY D
 .I LV=1,QN S QN1=QN
 .I LV=1,QN,'$$^W4EZAT(CD0) S QN=QN0_"*"_QN Q
 .I LV=2,$G(QN1),QN S QN=QN1_"*"_QN Q
 ;
 D
 .I QNO["|",QN'["|" S QN=QN_"|"_$P(QNO,"|",2) Q
 .I QNO[":",QN'[":" S QN=QN_":"_$P(QNO,":",2) Q
 ;
 S $P(A,"~",5)=QN
 Q
 ;
 ;
MANA(I,SHL)
 N MANA
 S MANA=$G(@$$^W4MAIN("TMP")@(I,"MANA"))
 I 'MANA S MANA=$$^W4DMANA(SHL,TMPORD)
 ;;I MANA,'$$CDSTC^W3HZMST(JB,SHL),'$$CDSTA^W3HZMST(JB,SHL) D
 I MANA,$$LVST^W3HZMST(JB,SHL)=1,'$$CDSTC^W3HZMST(JB,SHL),'$$CDSTA^W3HZMST(JB,SHL) D
 .S @TMPORD@(SHL,"MANA")=MANA
 Q
 ;
VOZVR4 ;
 D KILL4
 S @TMPS@("UR")=3
 Q
 ;
VOZVR5 ;
 N TMPORD,TMPS
 D TMPS K @TMPS@(5)
 D PUT^%W1PRM("SHID4","")
 D KILL^%W1PRM("STPAR4")
 D KILLTMPCI(4)
 D PUT^%W1PRM("SHID","")
 D KILL^%W1PRM("STPAR")
 D KILL^%W1PRM("DELITM")
 D KILL^%W1PRM("CDCMNT")
 D KILL^%W1PRM("CMNT")
 D KILL^%W1PRM("W4ABC")
 D KILL^%W1PRM("TOOLD")
 S @TMPS@("UR")=4
 D PUT^%W1PRM("URMENU",4)
 Q
 ;
VOZVRC ;
 N UR S UR=+$$UR ; -- D RESTUR^W4SCASK ?
 I 'UR D RESTUR^W4SCASK
 D KILLTMPCI(UR)
 D SETUR(UR)
 Q
 ;
KILL3 ;
 D KILL3^W4MENU
 Q
 ;
KILL4 ;
 D KILL4^W4MENU
 Q
 ;
TMPSNEW ;
 D TMPS
 N UR S UR=$G(@TMPS@("UR"),1)
 N PG S PG=$G(@TMPS@(UR,"PG"),1)
 S @TMPS@(UR,"LAST")=$G(@TMPS@(UR,"LAST",PG))
 D KILLTMPCI(UR)
 Q
 ;
KILLTMPCI(UR) ;
 K ^[$$^W3MAIN]TMPS(JB,UR_"C")
 Q
 ;
PCHSB(HZM) ;-- PRINT BILL
 N (JB,%ARG,%REM,HZM)
 S ARGHSBRKZ=""
 I HZM[";" S ARGHSBRKZ=$P(HZM,";",2),HZM=$P(HZM,";")
 S HZM=$G(HZM) I 'HZM Q 0
 ;
 I $D(@$$^W4ORD@(HZM))'=11 Q 0
 ;
 S HSBENG=$$GETP^%W1PRM("HSBENG")
 I 'HSBENG K HSBENG
 D KILL^%W1PRM("HSBENG")
 ;
 N TMP D TMP^W4TMPORD
 ;
 S RES=1
 I $$^W4ISORD(HZM),$$BSL^W4PRM D
 .N GL S GL=$$^W4ORD_"(HZM)"
 .I $D(@TMP)=11 S GL=TMP
 .S RES=$$^WBINVC(HZM)
 ;
 I $$^W4ISORD(HZM) D
 .I $$TSHL^W4HZMST(HZM)>0 D IGUL(HZM,1)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(95,HZM)
 .I $G(@$$^W4PRM@("CONCEPTIC")) D ^W4CONC(95,HZM)
 ;
 S P1HZHB1=1,SHM="HB1",ITS=3,IET="ETHB1"
 ;
 K P1HZTM,P1HZHB,P1HZHB2,P1HZHB3 D P1^W4HZTM K P1HZHB1
 ;
 S @TMP@("HSB")=$H
 S @$$^W4ORD@(HZM,"HSB")=$H
 D PUT^W4HZMST(HZM,"HESH",$$T^%L1TIME($H))
 Q +HZM
 ;
 ;
IGUL(HZM,PRHZ) ;
 I $$^W4CLOSE(HZM) Q
 N TSHL,HNH2,HNH
 S TSHL=0
 I $$D^W3TMPORD(JB)'=11!$G(PRHZ),$G(HZM)>0 S TSHL=$$TSHL^W4HZMST(HZM)
 I '$G(PRHZ),$$D^W3TMPORD(JB)=11!($G(HZM)<1) S TSHL=$$CURTSHL^W4HZMST(HZM)
 I $G(PRHZ) S HNH=$$HNH^W4HZMST(HZM)
 I '$G(PRHZ) S HNH=$$HNH^W4HZORD(HZM)
 ;
 D ^W4IGUL
 D
 .D PUT^W4HZMST(HZM,"HNH",HNH)
 .D PUT^W4HZMST(HZM,"HNH2",HNH2)
 .D PUT^W4HZMST(HZM,"TSHL",TSHL)
 .
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 .D PUT^W3HZMST(JB,"HNH",HNH)
 .D PUT^W3HZMST(JB,"HNH2",HNH2)
 Q
 ;
 ;
AHUZ(STAM) ;
 N AH,CODL,HZM,NMB
 S HZM=$$HZM
 S NMB=$$NMB
 I $$^W4ISORD(HZM),$$^W4CLOSE(HZM) Q $$HNHAH^W4HZMST(HZM)
 ;
 I $$D^W3TMPORD(JB)=11,$$AHUZ^W3HZMST(JB)?."-"1N.E Q $$AHUZ^W3HZMST(JB)
 ;
 S AH=$$AH^W4L(NMB)
 ;
 S CODL=$$CODE^W3HZMST(JB)
 I CODL["~" S CODL=$P(CODL,"~")
 I CODL["!" S CODL=$P(CODL,"!")
 ;
 I '$G(CODL) G AHUZTAW
 N AH1 S AH1=AH
 S AH=$$AH^W4L(CODL)
 I AH="" D
 .N CODLR S CODLR=$G(@$$^W4GL("P1EZL")@(CODL))
 .I CODLR S AH=$$AH^W4L(CODLR)
 I AH<AH1 S AH=AH1
AHUZTAW ;
 I $$TAWM^W4DLPK(NMB) D
 .N AHTAW S AHTAW=$$TAWMSLH^W4PRM
 .I AHTAW>AH S AH=AHTAW
 ;
 I $$^W4PRMAHP(NMB) S AH="" ; -- 23/08/17
 Q AH
 ;
HZM(STAM) ;
 Q $$GETP^%W1PRM("HZM")
 ;
NMB(STAM) ;
 Q $$GET^%W1PRM("NMB")
 ;
USPRT(STAM) ;
 N NMB S NMB=$$NMB^W3HZMST(JB)
 I $$^W4POSMSK(NMB) Q 0
 I $$WASPAYPART^W4HZMST($$HZM) Q 0
 I $$UR>2 Q 0
 Q 1
 ;
ORDSMALL(STAM) ;
 Q $$ORDSMALL^W4MENU
 ;
ORDSMALLAIN(STAM) ;
 Q $$ORDSMALLAIN^W4MENU
 ;
POPUP(STAM) ;
 I $L($G(%ARG("SOPT"))) Q 1
 Q 0
 ;
NEWLINES(STAM) ;
 N TMPORD S TMPORD=$$^W4TMPORD
 N NEWLN S NEWLN=0
 N HZM S HZM=$$HZM
 I $D(@TMPORD@("NEW")) S NEWLN=.5
 I $D(@TMPORD@("NEW","FIRE")) S NEWLN=2
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 N I S I=LAST+1 F  S I=$O(@TMPORD@(I),-1) Q:I=""  I I D  Q:NEWLN
 .I $$QNST^W3HZMST(JB,I),'$$NOMOD^W3HZMST(JB,I) S NEWLN=2
 Q NEWLN
 ;
DELNEWLINES(STAM) ;
 N TMPORD S TMPORD=$$^W4TMPORD
 N OKDEL S OKDEL=0
 N I F I=1:1 Q:'$D(@TMPORD@(I))  Q:'$$NOMOD^W3HZMST(JB,I)&$$QNST^W3HZMST(JB,I)
 N EX S EX=0
 I '$$NOSVNOMOD(I) Q OKDEL
 N I1 F I1=I:1 Q:'$D(@TMPORD@(I1))  D
 .K @TMPORD@(I1) S OKDEL=1
 .F II="ST","HNHP" K @TMPORD@(II,I1)
 Q OKDEL
 ;
NOSVNOMOD(I)
 N EX S EX=0
 N I1 F I1=I:1 Q:'$D(@TMPORD@(I1))  D
 .N II F II="MVFROM","MVTO" I $D(@TMPORD@(II,I1)) S EX=1 Q
 Q EX
 ;
DLVCSR(STAM) ;
 I $$^W6 Q 0
 Q $$DLV^W4DLVCSR
 ;
TAW(STAM) ;
 ;;I $$SCANER^W4PRM Q 1
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I 'NMB Q $$MTAW^W4MTAW
 Q $$TAW^W4MSD(NMB)
 ;
FAST(STAM) ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I 'NMB Q $$MTAW^W4MTAW
 Q $$FAST^W4MTAW(NMB)
 ;
KUP(STAM) ;
 I $$POS^W4MTAW&$$^W4MSD($$GETP^%W1PRM("NMB")) Q 1
 Q 0
 ;
BAR(NMB) ;
 Q $$BAR^W4DLPK(NMB)
 ;
SCANER(STAM) ;
 Q $$SCANER^W4HZTFR
 ;
PROCQN0 ;
 N QN0 S QN0=$P(STPAR0,"~",5)
 I QN0["/" D
 .S $P(STPAR0,"~",5)=$P(QN0,"/",2)
 Q
 ;
NOAI(STAM) ;
 I $L($$^W4RSTPAR) Q 1
 I $L($$GETP^%W1PRM("SHID0")) Q 1
 I $L($$GETP^%W1PRM("STPAR40")) Q 1
 I $L($$GETP^%W1PRM("SHID40")) Q 1
 Q 0
 ;
NOFUNC(STAM) ;
 I $G(%ARG("NOFUNC")) Q 1
 I $$GETP^%W1PRM("NOFUNC") Q 1
 Q 0
 ;
MVFROM(STAM) ;
 N OK S OK=0
 I $D(@$$^W4TMPORD("MVFROM")) D
 .N N S N="" F  S N=$O(@$$^W4TMPORD@("MVFROM",N)) Q:N=""  D  Q:OK
 ..I N,'$$WASHZ^W3HZMST(JB,N) S OK=1
 Q OK
 ;
NOPRINT(DIV) ;
 I $G(DIV)="" Q 0
 Q $G(@$$^W4PRM@("NOPRINT",DIV))
 ;
INPCODE ;
 Q:$$^W6
 Q:$$^W4ZAG
 I $$^W4TABLET,$$INPCODE^W4PRM<2 Q
 ;
 N HZM S HZM=$$HZM
 N NMB S NMB=$$NMB^W3HZMST(JB)
 I $$TLMTN^W4L(NMB) Q
 ;
 W "<tr>"
  W "<td>"
   W "<table dir="""_$$^%W1DIR_""">",!
    W "<tr style=""font-weight:bold"
     I $$DOPOPT^W4PRM W ";height:"_$$^W4KF(50)_"px"
     W """ "
    W ">"
     ;;I $$^W4MSD(NMB),$$COLFN>11,'$$^W4AIN W "<td>&nbsp;</td>"
     W "<td width=""30%"">"
      D
      .I '$$INPCODE^W4PRM Q
      .I $$GETP^%W1PRM("SCANER") Q
      .I $$HIDEBTN Q
      .D INPCD 
     W "</td>"
     ;
     I $$DOPOPT^W4PRM,HZM>0,'$$HZM^W4MSL(HZM),'$$NEWLINES,$$NMB^W4HZMST(HZM)'=$$TBDEL^W4PRM D
     .W "<td width=""25%"">&nbsp;</td>"
     .I $$TBDEL^W4PRM D 
     ..D BTN("MVIT2TBDEL","MvIt2TbDel('"_HZM_"')","red;black")
     ..W "<td width=""10%"">&nbsp;</td>"
     .D BTN("MOVEALLTABLETOFREE","Mv2Tbl('"_HZM_"')","pink;black")
     ;
     I $$JUNCORD^W4PRM,HZM>0,'$$HZM^W4MSL(HZM),'$$NEWLINES D
     .W "<td width=""25%"">&nbsp;</td>"
     .D BTN("JUNCORD","JuncOrd('"_HZM_"')","red;black")
   W "</tr>",!
  W "</table>",!
  W "</td>",!
  ;
  I $$JUMPTBL^W4PRM D
  .W "<td width=""40%"" colspan=""2"" align=""center"">",!
  . W "<table border=""1"" style=""width:95%"">",!
  .  W "<tr style=""height:"_$$^W4KF(40)_"px;text-align:center;font-weight:bold"">"
  .   N I F I=1:1:10 Q:'$$JNMB(I)  D
  . .  W "<td "
  . .   I $$JNMB(I)=$$GETP^%W1PRM("NMB") W "style=""background-color:lightyellow;color:black;cursor:pointer"" "
  . .
  . .   I $$JNMB(I)'=$$GETP^%W1PRM("NMB") D
  . . .    N JNMB S JNMB=$$JNMBPRM(I)
  . . .    N HZRES S HZRES=$$^W4HZFR(JNMB)
  . . .    N NMB S NMB=$$NMB^W3HZMST(JB)
  . . .    N PRMSK S PRMSK="" I $$^W4POSMSK(NMB) S PRMSK=1
  . . .    I HZRES D
  . . . .    W "style=""background-color:lightgreen;color:black;cursor:pointer"" "
  . . .    W " "_$$^W4TOUCH_"=""Jump2Tbl('"_JNMB_"','"_PRMSK_"')"" "
  . .
  . .   W ">"_$$JNMB1(I)
  . .  W "</td>",!
  .
  .  I $$MSL^W4PRM,'$$DLVCSR,'$$^W4POSMSK(NMB),'$G(PRTODLV) D TODLV
  .  W "</tr>",!
  . W "</table>",!
  .W "</td>"
 Q
 ;
INPCD ;
 W $$NBSP^%L1FRM(2)_$$^%W1DICT("CODEORNAME")_"&nbsp;&nbsp;"
 W "<input type=""text"" dir=""LTR"" id=""itemcode"" "
 W " style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" "
 W "maxlength=""18"" size=""11"" onClick=""this.focus()"" "
 W " onFocus=""this.select()"" "
 W "onKeyDown=""OnKeyPress(event,this)"" />"
 Q
 ;
TODLV ;
  W "<td "_$$^W4TOUCH_"=""ToDlv()"" style=""text-align:center;background-color:yellow;color:black;width:30%;border:2px groove orange;cursor:pointer"" >"
    W $$^%W1DICT("TODLV")
  W "</td>"
  S PRTODLV=1
 Q 
 ;
PAYF ;
  W "<td width=""10%"">&nbsp;</td>",!
  W "<td>"
   W "<input type=""button"" value=""F1"" onClick=""TermOrd(1)"" >"
   W "&nbsp;"
   W $$^%W1DICT("CASH")
   W "&nbsp;"
  W "</td>",!
  W "<td>"
   W "<input type=""button"" value=""F4"" onClick=""TermOrd(4)"" >"
   W "&nbsp;"
   W $$^%W1DICT("CREDIT")
   W "&nbsp;"
  W "</td>",!
 Q
 ;
ABC(STAM) ;
 I $$GET^%W1PRM("W4ABC") Q 1
 Q 0
 ;
JNMB(I) ;
 N A S A=$$JNMBPRM(I)
 N TB S TB=$P(A,",")
 Q TB
 ;
JNMB1(I) ;
 N A S A=$$JNMBPRM(I)
 N TB S TB=$P(A,",")
 N OV S OV=$P(A,",",2)
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I OV,$G(@$$^W4PRM@("JMPVWOV")),NMB,$$^W4POSMSK(NMB) S TB=$$H2U^%L1FRM($$^W4NAME(OV))
 Q TB
 ;
JNMBPRM(I) ;
 N MYDVN S MYDVN=$$^W4MYDVN
 Q $P($G(@$$^W4PRM@("JUMPTBL",MYDVN)),";",I)
 ;
CUSTNAME(STAM) ;
 I $TR($G(@$$^W4TMPORD@("MZMNM"))," ","")'="" Q OK
 N CMHD,OK S OK=1
 ;
 I $L($$LKHN^W3HZMST(JB))>3 D  Q OK
 .N LKHN1 S LKHN1=$$SPA^%L1FRM($$LKH^W4L($$LKHN^W3HZMST(JB)))
 .Q:$L(LKHN1)<2
 .Q:LKHN1?1N.N
 .S @$$^W4TMPORD@("MZMNM")=LKHN1,OK=0
 ;
 S CMHD=$$CMHD^W3HZMST(JB)
 I $L($TR(CMHD," ",""))>1,$TR(CMHD," ","")'?1N.N D
 .S @$$^W4TMPORD@("MZMNM")=CMHD,OK=0
 ;
 Q OK
 ;
 ;
CODETYPED(VL) ;
 ;;S ^AA("W4MENUBT-CODETYPED","VL")=$G(VL)
 N QN,QNMSK S QN=1,QNMSK=""
 I $G(VL)="" Q -2
 I VL[";" S QN=$P(VL,";",2),QNMSK=$P(VL,";",3),VL=$P(VL,";") I QNMSK S QN=QNMSK
 ;
 I QN>1,VL,'QNMSK,$L($$BELONG11^W4TSF(VL)) Q "BELONG11QN1"
 ;
 I VL=0 Q 0
 ;
 I $$SUPER^W3PRM,VL?1N.N S VL=$$^W4CDSUPR(VL)
 ;
 N ERQN,INDST S ERQN="",INDST=""
 ;
 I $$STAGE^W4PRM,QNMSK D  Q:ERQN'="" ERQN  I INDST Q 1
 .N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'HZM
 .I $$STAGE^W4HZMST(HZM)'=1 Q
 .I VL D
 ..N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D  Q:INDST
 ...N ST S ST=$G(^(N))
 ...I $P(ST,"~",2)=VL D
 ....N QNOLD S QNOLD=$P(ST,"~",19)
 ....;;S ^AA("W4MENUBT-CODETYPED","QNMSK")=QNMSK
 ....;;S ^AA("W4MENUBT-CODETYPED","QNOLD")=QNOLD
 ....;;I QNOLD,QNMSK<(0.75*QNOLD)!(QNMSK>(1.25*QNOLD)) S ERQN="QNTISWRONG" Q
 ....S INDST=N
 ....;;S ^AA("W4MENUBT-CODETYPED","INDST")=INDST
 ..I INDST S $P(@$$^W4TMPORD@(INDST),"~",5)=QNMSK,QN=QNMSK
 ;
 I VL=$$DESERTCD^W4PRM D  Q "DESERT"
 .I $$^W4DESERT
 ;
 N SUG S SUG=$$SUG^W4P(VL)
 I $$ZAHI^W4PRM=2,VL,SUG=2!(SUG=3)!(SUG=4),QN=1 Q "WEIGHTERROR"; -- 30/04/26
 ;
 I VL'?1N.E G CODETYPEDE
 I '$$NONUMIT^W4PRM,$TR(VL,".","")'?1N.N G CODETYPEDE
 ;
 I '$$D^W4P(VL) Q -1
 ;
 I '$$PROTECT^W4HZPRTN(VL),$$^W4TSF(VL)<1,'$$^W4EZAT(VL),'$$D^W4EZH(VL)!($$D^W4EZH(VL)[".5"),'$$PRCVAR^W4P(VL) D  Q 1
 .;;I $L($$BELONG11^W4TSF(VL)) Q  ; --17/06/21
 .N MH S MH=$$MH^W4HZPRTN($$^W4NMB($$GETP^%W1PRM("NMB")),VL)
 .N HNST S HNST=""
 .I MH["%" S HNST=+$P(MH,"-",2,2)
 .S MH=$J(MH,2,2)
 .N TXT S TXT="0~"_VL_"~"_$$SHEM^W4P(VL)_"~"_MH_"~"_QN_"~"_HNST
 .S A=$$STADD^W4STADD(TXT)
 .N LAST S LAST=$$LASTI0^W3HZMST(JB)
 .N SAHQN S SAHQN=+$$ITRA^W4SET11(VL,LAST) 
 .I SAHQN>0,$L($$BELONG11^W4TSF(VL,SAHQN)) S RES=$$SET^W4SET11
 ;
 I $$PRCVAR^W4P(VL) D  Q .5
 .N TXT S TXT="0~"_VL_"~"_$$SHEM^W4P(VL)_"~~"_QN
 .D PUT^%W1PRM("STPAR",TXT)
 ;
CODETYPEDE ;
 D INITUR^W4MENU(2)
 Q 2
 ;
SNDNOPRINT ;
 N MYDVN S MYDVN=$$^W4MYDVN
 ;;I $$NEWLINES!$$MVFROM,'$$KUP!($$ACNTAW^W4PRM=1),'$$^W4SMALL D  ; -- WAS $$NEWLINES
 I '$$KUP!($$ACNTAW^W4PRM=1),'$$^W4SMALL D  ; -- WAS $$NEWLINES
 .I $$NOPRINT(MYDVN),'$$DLVCSR D
 ..S NF=NF+1
 ..N SHOWORD S SHOWORD=$$^%W1DICT("SENDNOPRINT")
 ..S MFUNC(NF)=SHOWORD
 ..S MFUNC(NF,"TO")="SaveAndExitNoPrint()"
 ..S MFUNC(NF,"BG")="darkgreen"
 ..S MFUNC(NF,"FG")="orange"
 Q
 ;
 ;
BTN(VL,PROC,COLOR) ;
 N BG,FG
 S BG=$P(COLOR,";") S:BG="" BG="white" 
 S FG=$P(COLOR,";",2) S:FG="" FG="black"
 ; 
 W "<td>"
 W "<input type=""button"" "_$$^W4TOUCH_"="""_PROC_""" "
  W " value="""_$$^%W1DICT(VL)_""" "
  W " style=""background-color:"_BG_";color:"_FG
  W ";font-size:"_$$^W3FSZ(12)_";font-weight:bold"
  W ";height:100%;border:3px ridge white;cursor:pointer"" "
 W "/>"
 ; 
 W "</td>",!
 Q
 ;
 ;
MVALL(STAM) ;
 N HZM S HZM=$$HZM I 'HZM Q "NOTORDERFROM"
 N A S A=$$NMB^W4HZMST(HZM)_";"_HZM_";"_$$MKBL^W4HZMST(HZM)_";1"
 D PUT^%W1PRM("MOVEFROM",A)
 D SET^W4KLFL(+A)
 Q 1 
 ;
LMAM(STAM) ; 
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSD(NMB) Q 0
 Q $$LMAM^W4PRM 
 ;
AHMAM(STAM) ;
 N HZM,AHMAM S HZM=$$HZM
 S AHMAM=$S(HZM>0:$$AHMAM^W4HZMST(HZM),1:$$MAM^W4PRM)
 Q AHMAM
 ;
ZAG(STAM) ; 
 Q $$^W4ZAG
 ;
DELORD ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("DELETEORDER")
 S MFUNC(NF,"TO")="DelOrd()"
 S MFUNC(NF,"BG")="red"
 S MFUNC(NF,"FG")="black"
 Q
 ;
SHORT(STAM) ;
 Q $G(@$$^W4PRM@("SHORT")) 
 ;
COLFN(STAM) ;
 Q $O(MFUNC(99),-1)
 ;
USSAK() ; 
 N NMB S NMB=$$GETP^%W1PRM("NMB")  
 I $$^W4MSD(NMB) Q 0 
 I '$$SDSAK^W4PRM Q 0 
 I $D(@$$^W4TMPORD@("SDSAK")) Q 0
 Q 1 
 ;
PCBON(HZM) ; 
 I $G(HZM)<1 Q
 D ^W4HZM(HZM,JB) 
 Q 
 ;
NOSAVED(HZ) ; 
 I $G(HZ)<1 Q 0 
 N OK S OK=1
 N TMPORD S TMPORD=$$^W4TMPORD 
 N I S I="" F  S I=$O(@TMPORD@(I)) Q:I=""  I I D  Q:'OK
 .I $$NOMOD^W3HZMST(JB,I) S OK=0 
 Q OK
 ;
 ;
SBMSTG() ; 
 N HZ S HZ=$$HZM
 I HZ<1 Q 0 
 I $$STAGE^W4HZMST(HZ)'=1 Q 0
 ; 
 N TS S TS=$$TSHL^W4HZMST(HZ)
 N TS0 S TS0=$$TSHSTAGE^W4HZMST(HZ)
 ;;S ^AA("W4MENUBT-SBMSTG","TS0")=TS0
 ;;S ^AA("W4MENUBT-SBMSTG","TS")=TS
 I $$CODTS^W4HZMST(HZ)=3,TS0,TS>(1.25*TS0) Q "TOTALORDWRONG<>"_TS0
 ;
 N RES S RES="OK"
 ;
 I $$CODTS^W4HZMST(HZ)=3 D
 .D ^W4SNDSTG(HZ)
 ;
 ;;S ^AA("W4MENUBT-SBMSTG",HZ)=RES
 I $P(RES,"~")="NOK" Q "!"_$P(RES,"~",3)_" ["_$P(RES,"~",2)_"]"
 I $P(RES,"~")'="OK",RES'=200 Q RES
 ;
 S RES=1
 ;
 N STCA S STCA=$G(@$$^W4ORD@(HZ,"CREDCARD"))
 I STCA'?.P D
 .S $P(STCA,"~",5)=TS 
 .S @$$^W4ORD@(HZ,"CREDCARD")=STCA
 .D ^W4TSAUTO(HZ)
 ;
 N WHO S WHO=$$MKBL^W4HZMST(HZ)
 S WHO=$$^W4NAME(WHO)
 ;
 S RES=$$^W4HMH2HZ(HZ,WHO)
 ;
 I RES=1 D
 .S STG=2
 .I '$$ITRA^W4HZMST(HZ) S STG=3
 .S @$$^W4TMPORD@("STAGE")=STG 
 .S @$$^W4ORD@(HZ,"STAGE")=STG 
 ;
 ;;S ^AA("W4MENUBT-SBMSTG","RES")=RES
 I 'RES Q RES
 Q 1 
 ;
 ; 
SETNOMOD() 
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q 0
 I $$STAGE^W4HZMST(HZM)=1 D 
 .N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D  
 ..N A S A=$G(^(N)) 
 ..I $P(A,"~",12)'["@@" S $P(A,"~",12)="@@" 
 ..S ^(N)=A 
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MENUHD
W4MENUHD ; [ 13.06.23 17:00 ] [ 17.03.22 05:21 ] [ 15.03.22 09:13 ] 
 N (JB,%ARG,%REM)
 ;
 D GETHZ("GET")
 ;;S ^AA("W4MENUHD","TMPORD")=$G(@$$^W4TMPORD)
 ;
 I '$$^W4ISCDLK($G(LKHN))&$G(NMB) D
 .S LKHN=NMB D PUT^W3HZMST(JB,"LKHN",LKHN)
 .S LKHN1=$$LKH^W4L(LKHN)
 ;
 ;;W "NMB="_NMB_"  MLZR="_MLZR_"  HZM="_HZM_"  SOAD="_SOAD_"  DATK="_DATK,!
 ;
 S ADDRESS=$$KTV^W3HZMST(JB)
 S PELE=$$PELE^W3HZMST(JB)
 ;
 I $$MMCC^W4PRM!$$CCWEBR^W4PRM S W3CSS("NOBODYURL")=""
 ;
 I $$^W4DLVCSR!$$TELEPHONE^W4PRM!$$CCWEBR^W4PRM D
 .S NAME=$$NAME^W3HZMST(JB)
 .S COMPANY=$$COMP^W3HZMST(JB)
 ;
 D ^W4HD
 ;;S ^AA("W4MENUHD","TMPORD1")=$G(@$$^W4TMPORD)
 Q
 ;
 ;
NEWORD ;
 Q:'$G(NMB)
 D ^W4IN
 N HZM S HZM=$$NEW^W4KLNEW
 S @$$^W4GL("P1HL")@(NMB,HZM)=P1DZ
 S @$$^W4GL("P1HL")@(NMB,HZM,"POS")=$$^W4MYDVN
 D PUT^W4TMPORD("NMB",NMB)
 D PUT^W4TMPORD("MLZR",MLZR)
 N DATCB
 S DATK=$ZD(P1DZ,"DD.MM.YY")
 D PUT^W4TMPORD("DATK",DATK)
 S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 D PUT^W4TMPORD("DATCB",ZMANK)
 D ^W4TMPHD
 ;
 S SOAD=$$SOAD^W3HZMST(JB)
 S LKHN=""
 Q
 ;
GETHZ(PRM) ;
 N NMB0
 S NMB=$$GET^%W1PRM("NMB") S NMB0=NMB
 I 'NMB!$$GETP^%W1PRM("COPYORD") D
 .S NMB=$$NMB^W3HZMST(JB)
 .D PUT^%W1PRM("NMB",NMB)
 ;
 S MLZR=$$GET^%W1PRM("MLZR")
 S MLZR0=MLZR
 S MSD=$$GET^%W1PRM("MSD")
 S HZM=$$GETP^%W1PRM("HZM") S:'HZM HZM=-1
 ;
 I $G(%ARG("ORD")) S HZM=%ARG("ORD")
 S (SOAD,LKHN,DATK,ZMANK,MLZR1,LKHN1)="" ; ***
 ;
 D PUT^%W3DEB("W4MENUHD-GETHZ","HZM=HZM & PRM=PRM")
 ;
 I $G(PRM)="INIT",$$^W4ISORD(HZM),$$^W4GETHZ(HZM)<1 G EGETHZ ; -- FROM INIT^W4MENU
 ;;I HZM,'$$CLOSE^W4HZMST(HZM) K @$$^W4TMPORD@("ENDIT")
 ;
 I $G(HZM)>0,$$MKBL^W4HZMST(HZM),$G(@$$^W4PRM@("MLZ")) S MLZR=$$MKBL^W4HZMST(HZM)
 ;
 I $$^W4ISORD(HZM)&($G(%ARG("FIRST"))!($G(PRM)="INIT")) D
 .S NMB=$$NMB^W4HZMST(HZM) I 'NMB S NMB=NMB0
 .S SOAD=$$SOAD^W4HZMST(HZM)
 .S LKHN=$$LKHN^W4HZMST(HZM)
 .S DATK=$$DATK^W4HZMST(HZM)
 .S DAT=$$TRH^W4HZMST(HZM)
 .S SHAA=$$SHAA^W4HZMST(HZM)
 .S ZMANK=$$DATCB^W4HZMST(HZM)
 .S HRAED=$$HRAED^W4HZMST(HZM)
 .S HZMLAK=$$HZMLAK^W4HZMST(HZM)
 .I 'DATK D ^W4IN S DATK=$ZD(P1DZ,"DD.MM.YY") D PUT^W4TMPORD("DATK",DATK)
 .I 'ZMANK S ZMANK=$ZD($H,"DD.MM.YY  24:60") D PUT^W4TMPORD("DATCB",ZMANK)
 .D PUT^W4TMPORD("MLZR",MLZR)
 .D PUT^W4TMPORD("NMB",NMB)
 .D PUT^%W1PRM("HZM",HZM)
 .S @$$^W4GL("P1MLZ")@(HZM)=MLZR
 ;
 I +HZM=0 D NEWORD
 ;
 I HZM=-1!(HZM>0&($G(PRM)'="INIT")&($D(@$$^W4TMPORD)#2)) D
 .S SOAD=$$SOAD^W3HZMST(JB)
 .S LKHN=$$LKHN^W3HZMST(JB)
 .S DAT=$$DAT^W3HZMST(JB)
 .S SHAA=$$SHAA^W3HZMST(JB)
 .S DATK=$$DATK^W3HZMST(JB)
 .S ZMANK=$$DATCB^W3HZMST(JB)
 .S HRAED=$$CMHD^W3HZMST(JB)
 .S HZMLAK=$$HZMLAK^W3HZMST(JB)
 .
 .I 'DATK!'ZMANK!'$$NMB^W3HZMST(JB) D
 ..D ^W4KLNEW(NMB)
 ..D NEWORD
 ;
EGETHZ D PUT^%W1PRM("HZM",HZM)
 K @$$^W4MAIN("TMPD2")
 M @$$^W4MAIN("TMPD2")=@$$^W4TMPORD
 ;
 S MLZR1="" I MLZR S MLZR1=$$^W4NAME(MLZR) D PUT^W4TMPORD("MLZR",MLZR)
 S LKHN1="" I LKHN S LKHN1=$$LKH^W4L(LKHN)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MEUHAD
W4MEUHAD ; [ 15.12.15 11:32 ] [
 S %L1SCPC(72)="",%L1SCPC(72)=""
 I $$MEUHAD^W4PRM D
 .S %L1SCPC(72)="cge`n dyxen wqer"
 .S %L1SCPC(74)=$$MEUHAD^W4PRM
 Q

W4MG
W4MG(VIZ) ; [ 18.12.08 10:03 ] [
 I $L(VIZ)>19 Q 1
 I $L(VIZ)["=" Q 1
 Q 0

W4MGRCHC
W4MGRCHC ; [ 30.03.17 08:50 ] [ 14.02.17 09:25 ] [ 25.08.15 16:23 ] 
 N (JB,%ARG,%REM)
 D SETMLZR^W4HZGSH
 ;
 D KILL^%W1PRM("CLSDLV")
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 F I=1:1:3 W "<br />",!
 W " <table width=""80%"" style=""background-color:white;color:black"" border=""1"" >",!
 W "  <tr><td align=""center"" valign=""center"">",!
 W "<br />",!
 S KOT=$$^%W1DICT("CHOICEOPTION")
 S KOT=$$KOTTIME^W4HZGMLZ(KOT)
 ;;D KOT^W4SHEET(.KOT)
 F I=1:1:3 W "<br />",!
 ;;W "<span style=""color:darkred;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("CHOICEOPTION")_"</span>",!
 W "<br />",!
 W "<br />",!
 W " <table width=""60%"" class=""mgrchc"" border=""1"" onMouseOver=""this.style.cursor='pointer'"">",!
 ;
 W "  <tr>",!
 I $$MSD^W4DLVCSR D REST
 I $$DLVONLY D CLOSEDAY
 W "   <td "_$$^W4TOUCH_"=""Dlv()"" width=""50%"" >"_$$^%W1DICT("DELIVERY")_"</td>",!
 W "  </tr>",!
 ;
 W "  <tr>",!
 I $$MSD^W4DLVCSR D CLOSEDAY
 I $$DLVONLY D SHVA
 W "   <td "_$$^W4TOUCH_"=""CloseCourier()"">"_$$^%W1DICT("CLOSECOURIERS")_"</td>",!
 W "  </tr>",!
 ;
 W "  <tr>",!
 W "   <td "_$$^W4TOUCH_"=""FindOrder()"">"_$$^%W1DICT("FINDORDER")_"</td>",!
 W "   <td "_$$^W4TOUCH_"=""Misc()"">"_$$^%W1DICT("MISC")_"</td>",!
 W "  </tr>",!
 ;
 W "</table>",!
 W "<br />",!
 W "<br />",!
 D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red;font-size:"_$$^W3FSZ(16),"wh29,29")
 F I=1:1:4 W "<br />",!
 W "  </td></tr>",!
 W "</table>",!
 W "</div>",!
 Q
REST ;
 W "   <td "_$$^W4TOUCH_"=""Rest()"">"_$$^%W1DICT("RESTAURANT")_"</td>",!
 Q
CLOSEDAY ;
 W "   <td "_$$^W4TOUCH_"=""CloseDay()"" style=""background-color:red;color:white"">"_$$^%W1DICT("DAYCLOSING")_"</td>",!
 Q
 ;
SHVA ;
 W "   <td "_$$^W4TOUCH_"=""Send2Shva()"">"_$$^%W1DICT("SEND2SHVA")_"</td>",!
 Q
 ;
DLVONLY(STAM) ;
 I $$^W4DLVCSR=1,'$$MSD^W4DLVCSR Q 1
 Q 0
 
 
 

W4MHNKD
W4MHNKD(STAM) ; [ 07.10.19 07:02 ] [ 
 I $G(@$$^W4PRM@("MH00"))&($G(%ARG("HEAD"))["PRICE") Q 1
 Q 0

W4MHRB
W4MHRB ; [ 12.11.24 18:49 ] [ 18.02.13 13:50 ] [ 22.01.13 14:11 ] [
 I $G(@$$^W4GL("W4MHRB")) Q
 N FD D ^W4IN
 S FD=$O(@$$^W4GL("P1H")@(""))
 F DT=FD:1:P1DZ D
 .S DAT=$ZD(DT,"YYMMDD")
 .S PAR="" F  S PAR=$O(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) Q:PAR=""  D
 ..;;I PAR'?1N.N.".".N D  Q
 ...K @$$^W4GL("PLUTOT")@(DAT,MRK,PAR)
 ...K @$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)
 ..S $P(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR),"*",5,6)="*"
 ..S $P(@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR),"*",5,6)="*"
 ;
 F DT=FD:1:P1DZ D
 .S DAT=$ZD(DT,"YYMMDD")
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  D
 ...S STH=$G(^(N))
 ...S PAR=$P(STH,"\") Q:'$$ISNUM^%L1FRM(PAR)
 ...S PAR=$$SPA^%L1FRM(PAR)
 ...Q:$E(PAR)="-"
 ...Q:$E(PAR)=":"
 ...S COL=$P(STH,"\",5) Q:COL'<0
 ...S MIN=$$EX2KITCH^W4HZMST(HZ,N)
 ...D SETPLUTOT(DAT,PAR,COL)
 ...D SETPLUTOT($E(DAT,1,4),PAR,COL)
 ...S N1="" F  S N1=$O(@$$^W4ORD@(HZ,N,N1)) Q:N1=""  D
 ....S STH1=$G(^(N1))
 ....S COL1=$P(STH1,"\",3)
 ....I COL1["*" S COL1=$P(COL1,"*")*$P(COL1,"*",2)
 ....I COL1>0 S COL1=-COL1
 ....S PAR1=$P(N1,"-") Q:'$$ISNUM^%L1FRM(PAR1)
 ....D SETPLUTOT(DAT,PAR1,COL1)
 ....D SETPLUTOT($E(DAT,1,4),PAR1,COL1)
 ....S N2="" F  S N2=$O(@$$^W4ORD@(HZ,N,N1,N2)) Q:N2=""  D
 .....S STH2=$G(^(N1))
 .....S COL2=$P(STH2,"\",3)
 .....I COL2["*" S COL2=$P(COL2,"*")*$P(COL2,"*",2)
 .....I COL2>0 S COL2=-COL2
 .....S PAR2=$P(STH2,"\")
 .....I PAR2="" S PAR2=$P(STH2,"\",4) Q:'$$ISNUM^%L1FRM(PAR2)
 .....D SETPLUTOT(DAT,PAR2,COL2)
 .....D SETPLUTOT($E(DAT,1,4),PAR2,COL2)
 ;
 S @$$^W4GL("W4MHRB")=$H
 Q
 ;
WRBIT(COL) ;
 I COL<0 D
 .I $G(MIN) S $P(ST,"*",5)=$P(ST,"*",5)+COL
 .I '$G(MIN) S $P(ST,"*",6)=$P(ST,"*",6)+COL
 Q
 ;
SETPLUTOT(DAT,PAR,COL)
 N ST
 L +@$$^W4GL("PLUTOT")@(DAT,MRK,PAR):1
 S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) I ST?.P Q
 D WRBIT(COL)
 S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR)=ST
 L -@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)
 Q
 ;
REST ;
 N FD,DT,HZM,DAT D ^W4IN
 S FD=$O(@$$^W4GL("P1H")@(""))
 F DT=FD:1:P1DZ D
 .S DAT=$ZD(DT,"YYMMDD")
 .S HZM="" F  S HZM=$O(@$$^W4GL("P1H")@(DT,HZM)) Q:HZM=""  D
 ..N DTHZ S DTHZ=DT
 ..D PLU1^W4HZMPC
 
 
 

W4MHSPK
W4MHSPK ; [ 01.06.23 16:03 ] [ 18.10.14 14:19 ] [ 17.09.14 19:54 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 D ^%W1ARG ; ==> PRT
 I $G(UPDATE),$L($G(PRT)) D ^W4MHSPKU(PRT) Q
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$FULL D ^W4MLKOT("PRICELISTSHISTORY",$G(PRT))
 ;
 W "<table width=""98%"" border=""1"" style=""background-color:white"" "
 W " dir="""_$$^%W1DIR_""" "
 W " cellpadding=""0"" cellspacing=""0"" >",!
 ;
 W " <tr style=""font-weight:bold;text-align:center"">"
 W "  <th>"_$$^%W1DICT("DATE")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLCODE")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLITEMCODE")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLIERPRICE")_"</th>"
 W "  <th>"_$$^%W1DICT("DISCPERCENT")_"</th>"
 W "  <th>"_$$^%W1DICT("PRICEAFTERDISCOUNT")_"</th>"
 W " </tr>",!
 ;
 S GLMH=$$GLSPKMH^W4SPKMH
 S GLMHP=$$GLSPKMHP^W4SPKMH
 ;
 S MAX=99999999
 I '$$FULL S MAX=5
 ;
 I $L($G(PRT)) D
 .S END=0,K=0
 .S DT="" F  S DT=$O(@GLMHP@(PRT,DT),-1) Q:DT=""  D
 ..S SPK="" F  S SPK=$O(@GLMHP@(PRT,DT,SPK)) Q:SPK=""  D  Q:END
 ...;
 ...I '$D(@GLMH@(SPK,PRT,DT)) Q
 ...S A=$G(^(DT))
 ...S K=K+1 I K>MAX S END=1 Q
 ...D STR(DT,SPK,A)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
STR(DT,SPK,CONT)
 W "<tr style=""cursor:pointer"" "
  W " onClick=""ShowPriceList('"_SPK_"','"_$ZD(DT,"DD.MM.YY")_"','"_PRT_"')"" "
 W ">",!
 ;
 W "<td align=""center"">"_$ZD(DT,"DD.MM.YY")_"&nbsp;</td>"
 ;
 W "<td "_$$PADDING_">&nbsp;"_SPK_"&nbsp;</td>"
 W "<td "_$$PADDING_">&nbsp;"_$$H2U^%L1FRM($$NAME^W4SPK(SPK))_"&nbsp;</td>"
 ;
 N ITSP S ITSP=$P(CONT,"\",2),BGR="white"
 ;
 W "<td "_$$PADDING_">"
  W $S(ITSP:ITSP,1:"&nbsp;")
 W "</td>",!
 ;
 N MHSP S MHSP=$P(CONT,"\")
 I MHSP S MHSP=$J(MHSP,2,2)
 ;
 W "<td "_$$PADDING_">"
  W MHSP
 W "</td>",!
 ;
 N DISC S DISC=$P(CONT,"\",3)
 S DISC=$J(DISC,2,2)
 ;
 W "<td "_$$PADDING_">"
  W DISC
 W "</td>",!
 ;
 W "<td "_$$PADDING_" >"
  W $J(MHSP*(100-DISC)*.01,2,2)
 W "</td>",!
 ;
 W "</tr>",!
 Q
 ;
 ;
FULL(STAM) ;
 Q $G(%ARG("FULL"))
 ;
NBSP() ;
 Q $$NBSP^%L1FRM(3)
 ;
PADDING()
 N PD,SM S SM=5 
 S PD=$S($$^%W1DIR="RTL":"padding-right:"_SM,1:"padding-left:"_SM)
 Q " style="""_PD_""" "
 

W4MHSPKU
W4MHSPKU(PRT) ; [ 01.06.23 16:08 ] [ 21.09.14 13:59 ] [ 17.09.14 19:45 ] 
 N (JB,%ARG,%REM,PRT)
 I '$D(JB) W " JB number is not defined ! " Q
 D ^%W1ARG
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table width=""98%"" border=""1"" style=""background-color:white"" "
 W " dir="""_$$^%W1DIR_""" "
 W " style=""font-size:"_$$^W3FSZ(10)_""" "
 W " cellpadding=""0"" cellspacing=""0"" >",!
 ;
 W " <tr style=""font-weight:bold;text-align:center"">"
 W "  <th>"_$$^%W1DICT("SUPPLCODE")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLITEMCODE")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLIERPRICE")_"</th>"
 W "  <th>"_$$^%W1DICT("DISCPERCENT")_"</th>"
 W "  <th>"_$$^%W1DICT("PRICEAFTERDISCOUNT")_"</th>"
 W "  <th>"_$$^%W1DICT("LASTUPDATE")_"</th>"
 W "  <th>"_$$^%W1DICT("NEWPRICE")_"</th>"
 W "  <th>"_$$^%W1DICT("DISCPERCENT")_"</th>"
 W "  <th>"_$$^%W1DICT("PRICEAFTERDISCOUNT")_"</th>"
 W " </tr>",!
 ;
 S GLMH=$$GLSPKMH^W4SPKMH
 S GLMHP=$$GLSPKMHP^W4SPKMH
 S GLSPKMHSI=$$GLSPKMHSI^W4SPKMH
 ;
 N VRM S VRM=$$^W4MAIN("VRM")
 K @VRM
 S END=0,K=0
 ;
 S SPK="" F  S SPK=$O(@GLSPKMHSI@(PRT,SPK)) Q:SPK=""  D  Q:END
 .S DT=$O(@GLSPKMHSI@(PRT,SPK,""),-1) Q:DT=""
 .I '$D(@GLMH@(SPK,PRT,DT)) Q
 .S A=$G(^(DT))
 .S K=K+1
 .D STR(DT,SPK,A)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
STR(DT,SPK,CONT)
 W "<tr>"
 ;
 W "<td>"_$$NBSP_SPK_"&nbsp;</td>"
 W "<td>"_$$NBSP_$$H2U^%L1FRM($$NAME^W4SPK(SPK))_"&nbsp;</td>"
 ;
 N ITSP S ITSP=$P(CONT,"\",2),BGR="white"
 ;
 W "<td >"
  W $$NBSP_$S(ITSP:ITSP,1:"&nbsp;")
 W "</td>",!
 ;
 N MHSP S MHSP=$P(CONT,"\")
 I MHSP="" S MHSP=$$^%W1DICT("NOTDEFINED"),BGR="yellow"
 I MHSP S MHSP=$J(MHSP,2,2),BGR="white"
 ;
 W "<td style=""font-weight:bold"" >"
  W $$NBSP_$J(MHSP,2,2)
 W "</td>",!
 ;
 N DISC S DISC=$P(CONT,"\",3)
 S DISC=$J(DISC,2,2),BGR="white"
 ;
 W "<td style=""font-weight:bold"" >"
  W $$NBSP_$J(DISC,2,2)
 W "</td>",!
 ;
 W "<td style=""font-weight:bold"" >"
  W $$NBSP_$J(MHSP*(100-DISC)*.01,2,2)
 W "</td>",!
 ;
 W "<td align=""center"">"_$ZD(DT,"DD.MM.YY")_"&nbsp;</td>"
 ;
 W "<td align=""center"" >"
  W "<input type=""text"" id=""mhsp"_SPK_""" size=""5"" "
   W " onKeyUp=""ChangeSupplPrice('"_SPK_"','"_PRT_"')"" "
  W " />"
 W "</td>",!
 ;
 W "<td align=""center"" >"
  W "<input type=""text"" id=""disc"_SPK_""" size=""5"" "
   W " onKeyUp=""ChangeSupplDiscount('"_SPK_"','"_PRT_"')"" "
  W " />"
 W "</td>",!
 ;
 W "<td align=""center"" id=""mhspa"_SPK_""" >"
  W "&nbsp;"
 W "</td>",!
 ;
 W "</tr>",!
 Q
 ;
 ;
FULL(STAM) ;
 Q $G(%ARG("FULL"))
 ;
SETSPPRC(PRM)
 N SPK,PRC
 S PRT=$P(PRM,";",2),SPK=$P(PRM,";",1) Q:SPK=""!(PRT="")
 S PRC=$P(PRM,";",3)
 S $P(@$$^W4MAIN("TMPPRT")@(PRT,SPK),"\")=PRC
 Q
 ;
SETSPDISC(PRM)
 N SPK,PRC
 S PRT=$P(PRM,";",2),SPK=$P(PRM,";",1) Q:SPK=""!(PRT="")
 S DISC=$P(PRM,";",3)
 S $P(@$$^W4MAIN("TMPPRT")@(PRT,SPK),"\",3)=DISC
 Q
 ;
NBSP() ;
 Q $$NBSP^%L1FRM(3)
 

W4MHTSF
W4MHTSF(PAR,PRT) ; [ 08.07.11 17:10 ] [
 I $G(@$$^W4GL("MHTSF")@(PAR,PRT)) Q 1
 I $G(@$$^W4PRM@("MHTSFN")) Q 1
 Q 0

W4MKBPR
W4MKBPR ; [ 04.08.25 12:28 ] [ 18.06.25 14:58 ] [ 19.05.25 11:53 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) Q
 ;
 S MEDT=$$^%L1DC(%ARG("MEDAT"),3)
 S ADDT=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  ;
  W "<table id=""tbprot"" DIR="""_$$^%W1DIR_""" width=""60%"" border=""1"" cellspacing=""0"">",!
   D KOT
   D BODY
  W "</table>",!
 W "</div>",! 
 Q
 ; 
 ;
KOT ;
 W "<tr>"
  W "<th>"
    W $$^%W1DICT("CHANGETIME")
  W "</th>"
  ;
  W "<th>"
   W $$^%W1DICT("ORDER")
  W "</th>"
  ;
  W "<th>"
   W $$^%W1DICT("OLDRCVR")
  W "</th>"
  ;
  W "<th>"
    W $$^%W1DICT("NEWRCVR")
  W "</th>"
  ;
  W "<th>"
    W $$^%W1DICT("FROMPOS")
  W "</th>"
  ;
 W "</tr>",!
 Q
 ;
 ;
BODY ;
 S GL=$$^W4GL("W4MKBPR")
 ;
 F DT=MEDT:1:ADDT D
 .S TM="" F  S TM=$O(@GL@(DT,TM)) Q:TM=""  D
 ..S ST=$G(@GL@(DT,TM))
 ..D PRS^%L1FRM(ST,"ORD\OLD\MKBL\FROMPOS","\")
 ..W "<tr>"
 .. W "<td align=""center"" dir=""LTR"">"
 ..W $ZD(DT_","_TM,"DD.MM.YY 24:60")
 .. W "</td>"
 ..
 .. W "<td align=""center"">"
 ..  W ORD
 .. W "</td>"
 ..
 .. W "<td align=""center"" >"
 ..  W OLD_" "_$$H2U^%L1FRM($$^W4NAME(OLD))
 .. W "</td>"
 ..
 .. W "<td align=""center"" >"
 ..  W MKBL_" "_$$H2U^%L1FRM($$^W4NAME(MKBL))
 .. W "</td>"
 ..
 .. W "<td align=""center"" >"
 ..  W FROMPOS 
 .. W "</td>"
 ..W "</tr>",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MKLINE
W4MKLINE ; [ 16.01.25 18:36 ] [ 09.06.24 11:38 ] [ 07.06.24 02:05 ] 
 N (JB,%ARG,%REM,MSDR,DT,DAT,VRM)
 ;
 S TOT=0,QND=0
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 .I '$$US(MSD) Q
 .D GET^W4MZVM(MSD,DT)
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT("MKLINESTATUS",DAT)
  W "</span>",!
  W "<br>"
  W "<span style=""font-size:"_$$^W3FSZ(11)_""" >"
   W $$^%W1DICT("SHOWTIME",$ZD($H,"DD.MM.YY")_"<>"_$ZD($H,"24:60"))
  W "</span>",!
 W "<br><br>",!
 ;
 D SORT
 W "<p></p>",!
 ;
 W " <table border=""1"" cellpadding=""5"" cellspacing=""0"" >"
 W "<tr>"
  W "<th>"_$$^%W1DICT("RESTNAME")_"</th>"
  W "<th>"_$$^%W1DICT("UNTILMIN",3)_"</th>"
  W "<th>"_$$^%W1DICT("UNTILMIN",8)_"</th>"
  W "<th>"_$$^%W1DICT("OVERMIN",8)_"</th>"
  W "<th>"_$$^%W1DICT("TOTMKLINE")_"</th>"
  W "<th>"_$$^%W1DICT("TOTREADY")_"</th>"
 W "</tr>",!
 ;
 S K=0
 S (SQNHZ1,SQNHZ2,SQNHZ3,SQNRDY)=0
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 .I '$$US(MSD) Q
 .S K=K+1
 .S FDB=$G(^[$$^W3MAIN]W4MSDMZV(MSD,DT)) D
 ..D GET^W4MZVM(MSD,DT)
 ..I $G(%ARG("SORT"))<2 S IND=MSD
 ..I $G(%ARG("SORT"))=2 S IND=$J(QNHZ1*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=3 S IND=$J(QNHZ2*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=4 S IND=$J(QNHZ3*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=5 S IND=$J((QNHZ1+QNHZ2+QNHZ3)*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=6 S IND=$J(QNRDY*100,7)_$J(MSD,7)
 ..
 ..S @TMP@(IND)=MSD_"\"_FDB
 ;
 S INV=1 I $G(%ARG("SORT"))>1 S INV=-1
 S IND="" F  S IND=$O(@TMP@(IND),INV) Q:IND=""  D
 .S K=K+1
 .S FDB=$G(@TMP@(IND))
 .S MSD=$P(FDB,"\")
 .S FDB=$P(FDB,"\",2,255)
 .S NAME=$$MSD^W3R(MSD)
 .S AHUZ="&nbsp;"
 .S DAT=$ZD(DT,"DD.MM.YY")
 .
 .W "<tr id=""tr"_MSD_""" style=""cursor:pointer"" onClick=""ShowMsd('"_MSD_"','"_DAT_"')"">"
 . W "<td id=""name"_MSD_""" >"
 .  W $$H2U^%L1FRM(NAME)
 . W "</td>"
 . S QNHZ1=$P(FDB,"~",27)
 . S QNHZ2=$P(FDB,"~",28)
 . S QNHZ3=$P(FDB,"~",29)
 . S QNRDY=$P(FDB,"~",30)
 . S SQNHZ1=SQNHZ1+QNHZ1
 . S SQNHZ2=SQNHZ2+QNHZ2
 . S SQNHZ3=SQNHZ3+QNHZ3
 . S SQNRDY=SQNRDY+QNRDY
 . W "<td style=""color:brown"">"_QNHZ1_"</td>"
 . W "<td style=""color:brown"">"_QNHZ2_"</td>"
 . W "<td "_$S(QNHZ3:"style=""color:yellow;background-color:red;text-align:center""",1:"")_">"_QNHZ3_"</td>"
 . N SQ S SQ=QNHZ1+QNHZ2+QNHZ3 S:'SQ SQ=""
 . W "<td style=""color:brown"">"_SQ_"</td>"
 . W "<td style=""color:brown"">"_QNRDY_"</td>"
 .
 . S @VRM@(MSD)=NAME
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">"
  W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
   W "<td>"_SQNHZ1_"</td>"
   W "<td>"_SQNHZ2_"</td>"
   W "<td>"_SQNHZ3_"</td>"
   W "<td>"_(SQNHZ1+SQNHZ2+SQNHZ3)_"</td>"
   W "<td>"_SQNRDY_"</td>"
 W "</tr>"
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 I $G(%ARG("USR")) W $$NBSP^%L1FRM(5) D BACK Q
 ;
 W "</div>",!
 Q
 ;
 ;
TRSP ;
 W "<tr>"
  W "<td>&nbsp;</td><td>&nbsp;</td>"
 W "</tr>",!
 Q
 ;
INIT ;
 D PUT^%W1PRM("SMALL",1)
 I $G(%ARG("NOSMALL")) D PUT^%W1PRM("SMALL",0)
 D ^W4BGBODY
 I $G(%ARG("SIMUL"))'="" D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 Q
 ;
PRMSL(STAM) ;
 Q $G(%ARG("PRMSL"))
 ;
PRMSD(STAM) ;
 Q $G(%ARG("PRMSD"))
 ;
OPEN(STAM) ;
 Q $G(%ARG("OPEN"))
 ;
CLOSE(STAM) ;
 Q $G(%ARG("CLOSE"))
 ;
VRM ; 
 S VRM=$$^W4MAIN("VRM")
 Q 
 ;
SORT ; 
 W $$^%W1DICT("SORT")_"&nbsp;"
 W "<select id=""sort"" onChange=""Sort()"" >",! 
  W "<option value=""1"" "_$$SELECTED(1)_">"_$$^%W1DICT("SNIFNUMBER")_"</option>",!
  W "<option value=""2"" "_$$SELECTED(2)_">"_$$^%W1DICT("UNTIL3MIN")_"</option>",!
  W "<option value=""3"" "_$$SELECTED(3)_">"_$$^%W1DICT("UNTIL8MIN")_"</option>",!
  W "<option value=""4"" "_$$SELECTED(4)_">"_$$^%W1DICT("OVER8MIN")_"</option>",!
  W "<option value=""5"" "_$$SELECTED(5)_">"_$$^%W1DICT("TOTMKLINE")_"</option>",!
  W "<option value=""6"" "_$$SELECTED(6)_">"_$$^%W1DICT("TOTREADY")_"</option>",!
 W "</select>",!
 Q 
 ;
SELECTED(SORT) ; 
 I SORT=1,$G(%ARG("SORT"))<2 Q "selected=""selected"" " 
 I SORT>1,$G(%ARG("SORT"))=SORT Q "selected=""selected"" " 
 Q ""
 ;
US(MSD) ;
 N OK S OK=1
 I $D(MMSD)>9,$G(MSD),'$D(MMSD(MSD)) S OK=0
 Q OK 
 ;
BACK ; 
 D ^W4BTN("BACK","parent.location.reload()","red")
 Q
 ;
PAPJ(MSDR) ; 
 I MSDR=10222 Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MKR
W4MKR ;--- MAKOR              [ 08.09.26 15:21 ] [ 03.06.26 09:34 ] [ 10.09.25 14:17 ] 
 ; INPUT : HZM,ITS,IET , P1HZHB1,P1HZTM,P1HZHB,P1HZHB2
 ;
 ; OUTPUT: MSP,MAKOR,%SCV("MS","MISPAR"),%SCV("MS","MKET")
 ;
 Q:'$$^W4ISORD(HZM)
 N MSP
 N GLORD D GLORD^W4HZMST
 I $D(P1HZHB5),'$D(P1HZHB) D MSP5 Q
 ;
 I $G(MAKOR),$D(P1HZHB)!$D(P1HZHB2),$$SUPER^W3PRM,'$$CLOSE^W4HZMST(HZM) D
 .N DTHZ S DTHZ=$$^W4DZ
 .N (JB,%ARG,HZM,DTHZ)
 .S:$$I^W4DEL(HZM) W4MLREST="C" D PLU11^W4HZMPC
 ;
 I '$D(P1HZHB1) D  ;---- NE HESHBON ( HESHB, TM, HESB. ASHRAI)
 .Q:'$G(HZM)  Q:'$D(@GLORD)
 .S (MSP,%SCV("MS","MISPAR"))=$P($G(@$$^W4GL("P1HZ")),"\",ITS)+1
 .N SHUL,SHULA,TSHL,TIP,ITRA
 .S SHUL=$J($$SHUL^W4HZMST(HZM),2,2)
 .S SHULA=$J($$SHULA^W4HZMST(HZM),2,2)
 .S TSHL=$J($$TSHL^W4HZMST(HZM),2,2)
 .S TIP=$J($$TIP^W4HZMST(HZM),2,2)
 .S ITRA=$J($$ITRA^W4HZMST(HZM),2,2)
 .
 .D BDMSP
 .
 .I '$D(P1HZHB2),'$D(P1HZHB),'$D(P1HZHB3),'$G(@GLORD@(IET)) S @GLORD@(IET)=MSP ;--- FOR P1HZHB2 ASRWR^W4HZTH
 .
 .S MAKOR=1 I $G(NMB) K @$$^W4GL("P1EZB")@(NMB) D  ;--- BITUL IHUD SHULHANOT BAR
 ..N N S N="" F  S N=$O(@$$^W4GL("P1EZBI")@(N)) Q:N=""  I $G(^(N))=NMB K ^(N)
 .
 .;;I '$$^W4CLOSE(HZM),$$HZM^W4MSL(HZM),$D(P1HZHB)!$D(P1HZHB2) D MVDT(HZM)
 .
 .I '$$^W4CLOSE(HZM),'$$HZM^W4MSL(HZM)!$$DLV^W4CLOSE(HZM)!$$GETP^%W1PRM("CLSDAY")!$$GETP^%W1PRM("CLSORD")!$$CLSDLV^W4PRM!$$^W4PIZUL(HZM) D
 ..L +@GLORD:1
 ..N CLS,PR S CLS=0,PR=0
 ..D
 ...;;I '($G(@GLORD@("S"))#2),$D(P1HZTM)&'$G(@$$^W4PRM@("MM")) S CLS=1 Q
 ...I $D(P1HZHB)&(SHUL!'TSHL) S:$G(MSP) CLS=2 D:$D(@$$^W4ORD@(HZM,"CB","CH")) CH(HZM) Q
 ...I '($G(@GLORD@("S"))#2),$D(P1HZTM)&'$G(@$$^W4PRM@("MM")) S CLS=1 Q
 ...I $D(P1HZHB2)&SHULA S CLS=4 Q
 ..
 ..I TSHL>0&(ITRA<.1)!(TSHL<0&(ITRA>-.1)) D
 ...I ITRA D  ; -- 15/10/20
 ....N HNH2 S HNH2=$$HNH2^W4HZMST(HZM)
 ....D PUT^W4HZMST(HZM,"HNH2",HNH2+ITRA)
 ....S TSHL=TSHL-ITRA
 ....D PUT^W4HZMST(HZM,"TSHL",TSHL)
 ...S @GLORD@("S")=$G(@GLORD@("S"))+CLS,PR=1
 ..
 ..I $G(@GLORD@("S"))<4,$D(@GLORD@("CB","ASR")) D
 ...N N,SA S N="",SA=0 F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  D
 ....S SA=SA+$P(^(N),"*",4)
 ...
 ...I SA+SHUL-TIP+.05'<TSHL&(TSHL>0) S @GLORD@("S")=$G(@GLORD@("S"))+4,PR=1 D CLHMK(HZM)
 ...I SA+SHUL-TIP+.05'>TSHL&(TSHL<0) S @GLORD@("S")=$G(@GLORD@("S"))+4,PR=1 D CLHMK(HZM)
 ..
 ..I $$US^W4SNDCLS(HZM)=3 D SETTLMTN^W4SNDCLS(HZM)
 ..I PR J ^W4SNDCLS(HZM,JB) ; D ^
 ..
 ..I $G(@GLORD@("S"))>1,$$NOMAM^W4PRM D SMAM^W4DMAM(P1DZ,HZM)
 ..I PR D MOADL^W4HZMST(HZM)
 ..I $D(P1HZHB),SHUL!$D(P1HZHB3)!'$G(SHULA),'$$^W4HSPART(HZM) D P1HB(HZM,P1DZ)
 ..I $D(P1HZHB2),'$D(P1HZHB),SHUL,'$D(@$$^W4ORD@(HZM,"ETHB")),'$$^W4HSPART(HZM) D P1HB(HZM,P1DZ)
 ..
 ..D SETPOS(HZM)
 ..
 ..D ^W4HZSHAA
 ..D ^W4GIBHZ(HZM)
 ..L -@GLORD
 .
 .I $$RESTORAN^W4PRM D ^W4RSTRN(99,HZM)
 .I $G(@$$^W4PRM@("CONCEPTIC")) D ^W4CONC(99,HZM)
 .
 .;---- RISHUM BITULIM
 .I $D(P1HZHB)!$D(P1HZHB2) D ^W4HZSHAA D
 ..N I S BIT=0 F I=1:1 Q:'$D(@GLORD@(HZM,I))  D
 ...I $P(^(I),"\",5)<0,$P(^(I),"\",8)'["ogleyl xa" S BIT=BIT-$P(^(I),"\",7)
 ..D PUT^W4SCREF(GLORD,HZSCR,1,"BIT")
 .
 .S %SCV("MS","MISPAR")=MSP
 .
 .I ITS'=4,'$D(@GLORD@("ETHBL")),'$D(P1HZHB) D
 ..S $P(@$$^W4GL("P1HZ"),"\",ITS)=MSP
 .
 .S %SCV("MS","MKET")="xewn"
 .
 .;;I $D(P1HZTM) S @$$^W4GL("P1TM")@(MSP)=HZM_"\"_P1DZ_"\"_$H,@$$^W4GL("P1TMI")@(P1DZ,MSP)=$H
 .
 .;I $D(P1HZHB),SHUL!$D(P1HZHB3)!'$G(SHULA) D P1HB(HZM,P1DZ)
 .;I $D(P1HZHB2),'$D(P1HZHB),SHUL,'$D(@$$^W4ORD@(HZM,"ETHB")) D P1HB(HZM,P1DZ)
 Q
 ;
 ;
BDMSP ;
 I $D(P1HZTM),MSP'>$ZP(@$$^W4GL("P1TM")@(9999999)) D  Q
 .L +@$$^W4GL("P1TM"):1
 .S MSP=$ZP(@$$^W4GL("P1TM")@(9999999))+1
 .L -@$$^W4GL("P1TM")
 ;
 I $D(P1HZHB),MSP'>$ZP(@$$^W4GL("P1HB")@(9999999)) D  Q
 .L +@$$^W4GL("P1HB"):1
 .S MSP=$ZP(@$$^W4GL("P1HB")@(999999))+1
 .L -@$$^W4GL("P1HB")
 ;
 I $D(P1HZHB2),MSP'>$ZP(@$$^W4GL("P1HB2")@(9999999)) D  Q
 .L +@$$^W4GL("P1HB2"):1
 .S MSP=$ZP(@$$^W4GL("P1HB2")@(9999999))+1
 .L -@$$^W4GL("P1HB2")
 Q
 ;
 ;
MSP5 ;
 I '$D(GLORD) D GLORD^W4HZMST
 ;
 I '$D(P1DZ) S P1DZ=$$^W4DZ
 I '$D(@GLORD@("ETHB5")) D
 .L +@$$^W4GL("P1HB5"):1
 .S MSP5=$ZP(@$$^W4GL("P1HB5")@(9999999))+1
 .S @$$^W4GL("P1HB5")@(MSP5)=HZM_"\"_P1DZ_"\"_$H_"\"_$G(MSP)
 .L -@$$^W4GL("P1HB5")
 .S @$$^W4GL("P1HB5I")@(P1DZ,MSP5)=$H
 .S @GLORD@("ETHB5")=MSP5_"\\"_$H
 ;
 N I F I=1:1 Q:'$D(P1HZHB5(I))  D
 .N IND S IND=$O(@GLORD@("ETHB5",9999),-1)+1
 .S @GLORD@("ETHB5",IND)=P1HZHB5(I)
 .S @GLORD@("ETHB5",IND,"MKR")=""
 .I $L($G(P1HZHB5(I,"H"))) S @GLORD@("ETHB5",IND,"H")=P1HZHB5(I,"H")
 ;
 K P1HZHB5
 Q
 ;
P1HB(HZM,DT) ;
 N IET,ITS,SHM,MSP
 S IET="ETHB"
 S ITS=2
 S MSP=$O(@$$^W4GL("P1HB")@(99999999),-1)+1
 I MSP<1 S MSP=1
 ;
 D:$G(P1HZHB5) MSP5
 N HB S HB=$G(@$$^W4ORD@(HZM,IET))
 N HZMAIN S HZMAIN=""
 ;
 I HZM<0,$$GETP^%W1PRM("HZMMAIN")>0 S HZMAIN=$$GETP^%W1PRM("HZMMAIN")
 ;
 I HZM>0,$G(@$$^W4ORD@(HZM,IET)),+$G(@$$^W4GL("P1HB")@(HB))=HZM D
 .S MSP=+@$$^W4ORD@(HZM,IET)
 ;
 I $G(@$$^W4GL("P1HB")@(MSP))>0 Q
 ;
 L +@$$^W4GL("P1HB")@(MSP):1
 D
 .N HZM1 S HZM1=$$HZM^W4ORD(HZM) Q:HZM1'>0
 .I $$TSHL^W4HZMST(HZM1) D
 ..S @$$^W4GL("P1HB")@(MSP)=HZM1_"\"_DT_"\"_$H_"\"_$P(HZMAIN,"-",2)_"\"_$$SSHUL^W4HZMST(HZM)
 ..S @$$^W4GL("P1HBI")@(DT,MSP)=$H
 ..S $P(@$$^W4ORD@(HZM1,"CB"),"\")=MSP
 ;
 N MSP5
 L +@$$^W4GL("P1HZ"):1
 I MSP>$P($G(@$$^W4GL("P1HZ")),"\",ITS) S $P(@$$^W4GL("P1HZ"),"\",ITS)=MSP
 I '$D(P1HZHB3) S @$$^W4ORD@(HZM,IET)=MSP
 L  ;
 S %SCV("MS","MISPAR")=MSP
 ;
 I '$P($G(@$$^W4ORD@(HZM,"CB")),"\") D
 .N MSP0,MSP1 S MSP0=$P($G(@$$^W4ORD@(HZM,"CB")),"\"),MSP1=MSP
 .I MSP0,(","_MSP0_",")'[(","_MSP_",") S MSP1=MSP0_","_MSP
 .S $P(@$$^W4ORD@(HZM,"CB"),"\")=MSP1
 ;
 N HBMASSUM S HBMASSUM=$$SUM^W4HBMAS*(100+$$MAM^W4PRM)*.01
 ; 
 I HBMASSUM,$$SSHUL^W4HZMST(HZM)'<HBMASSUM,$G(MSP)>0,$D(P1HZHB) D HBMAS(HZM,MSP) ; -- KABALAT ISHUR MI MAS HAHNASA
 ;
 I $D(P1HZHB2),'$$^W4CLOSE(HZM),'$$HZM^W4MSL(HZM)!$$DLV^W4CLOSE(HZM)!($$TSHL^W4HZMST(HZM)<0)!($$TAKEAWAY^W4HZMST(HZM)&$$MZM^W4HZMST(HZM)) D
 .D SETCLOSE^W4HZMST(HZM)
 Q
 ;
 ;
CH(HZM) ;
 D ^W4SETCH("HZ",HZM)
 Q
 ;
SETPOS(HZM) ; 
 N POS S POS=$$^W4MYDVN
 D PUT^W4HZMST(HZM,"POS",POS)
 S $P(@$$^W4ORD@(HZM,"CB"),"\",7)=$H
 Q
 ;
 ;
MVDT(N) ; -- > MA SHE SHULAM --> LEHAAVIR LE HAYOM
 I $$^W4CLOSE(N) Q
 I '$$HZM^W4MSL(N) Q
 ;
 N P1DZ S P1DZ=+$$^W4DZ
 N DT S DT=P1DZ
 N DTH S DTH=$$^%L1DC($$TRH^W4HZMST(N),3) 
 ;
 I $$^W4SHAAZ,$$SHAA^W4HZMST(N)<$$SHAAZ^W4PRM S DTH=DTH-1
 ;
 I DTH'>DT Q
 ; 
 I $D(@$$^W4GL("P1H")@(DTH)) D
  .D ^W4MVP1H(DTH,DT,N)
  Q
 ;
 ; 
HBMAS(HZM,HB) ; 
 N (JB,%ARG,%REM,HZM,HB)
 S (HBMASRES,HBMASMSG,HBMAS)=""
 N HBMAS S HBMAS=$$GETNOM^W4HBMAS(HB,"HMK") I HBMAS Q
 ;
 N DZ S DZ=$$^W4DZ
 S VUID=DZ_"_"_$$^W4MYDVN_"_"_$P($H,",",2)_"_HMK_"_HB_"_"_HZM
 S VATNUM=$P($TR($$SPA^%L1FRM($G(@$$^W4PL@("ESEK",4))),"#",""),"_")
 S VATUN=$$SPA^%L1FRM($$MEUHAD^W4PRM)
 S HBDAT=$$DAT^W4HBMAS(DZ)
 S HBDATPC=$$DAT^W4HBMAS(+$H)
 S AHMAM=$$MAMD^W4L(DZ)
 ;
 S TIP=$$STIP^W4HZMST(HZM)
 S TIPAS=$$STIPVT^W4HZMST(HZM,"ASR")
 S TS=$$TSHL^W4HZMST(HZM)
 ;
 N SUMHB S SUMHB=$$TSHL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)+TIPAS
 I $$^W4TIPPD(DZ) S SUMHB=SUMHB+TIP-TIPAS
 ;
 S HBMASSUM=$$SUM^W4HBMAS
 S LSUM=$J(SUMHB*100/(100+AHMAM),2,2)
 ;
 I LSUM<HBMASSUM!'HBMASSUM Q
 ;
 K @$$^W4GL("W4HBMAS")@("HMK",HB,"ERROR")
 ;
 S DISC=$$HNH^W4HZMST(HZM)
 S DISC=$J(DISC*100/(100+AHMAM),2,2)
 
 S TS1=TS
 I $$^W4TIPPD(DZ) S TS1=TS+TIP
 I SUMHB<TS,TS1 S DISC=$J(DISC*SUMHB/TS1,2,2)
 ;
 S MAM=$J(SUMHB*AHMAM*.01,2,2)
 S LMAM=$J(SUMHB-MAM,2,2)
 ;
 I $$NOMAM^W4PRM D NOMAM(HZM,SUMHB) ; --> MAM,LMAM
 ;
 S VATLK="" ; 999999998
 I $G(@$$^W4GL("W4HBMAS")@("HMK",HB,"VATLK")) S VATLK=^("VATLK")
 ;
 S PARAM=VUID_";"_VATNUM_";"_VATUN_";"_$G(VATLK)
 S PARAM=PARAM_";"_HBDAT_";"_HBDATPC_";;;"_LMAM_";"_DISC_";"_MAM
 N OPRTRTZ S OPRTRTZ=$G(@$$^W4ORD@(HZM,"OPRTRTZ"))
 ;
 I 'OPRTRTZ S OPRTRTZ=$$OPRTRTZ^W4HSBGET
 I $$VERS^W4HBMAS>1 S PARAM=PARAM_";"_OPRTRTZ
 ;
 D ^W4HBMAS("HBMAS",PARAM)
 Q
 ; 
 ;
NOMAM(HZM,TOMAM) ;  --> MAM,LMAM
 N SUMCMAM,SUMNOMAM,NOMAM
 N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 D SMAM^W4DMAM(DT,HZM) ; --> MAM
 N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM"))
 I KMAM<1 D
 .S NOMAM=TOMAM-(TOMAM*KMAM)
 .S MAM=MAM*KMAM
 .S LMAM=TOMAM*KMAM-MAM
 Q
 ;
 ;
GET(NM) ; 
 Q $$GET^W4EMV4(NM) 
 ;
HBMASRES ;
 S HBMASRES=$$GET("httpCode")
 S HBMASMSG=$$GET("httpMessage")
 I HBMASRES,HBMASRES'=200 Q
 S HBMASRES=$$GET("code")
 S HBMASMSG=$$GET("message")
 Q
 ;
CLHMK(HZM) ; 
 N CL S CL=$G(@$$^W4ORD@(HZM,"S")) Q:CL<2 
 N CB S CB=$G(@$$^W4ORD@(HZM,"CB")) 
 N NCB S NCB=$P(CB,"\") 
 N DTS S DTS=$P(CB,"\",7)
 N SHUL S SHUL=$$SHUL^W4HZMST(HZM)
 I 'NCB,DTS,SHUL D P1HB(HZM,DTS) 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLAHRV
W4MLAHRV ; [ 14.03.23 15:50 ] [ 02.12.21 10:37 ] [ 17.09.19 05:57 ] 
 N (JB,%ARG)
 S JB=+$G(JB)
 S SRCH=$G(%ARG("SRCH"))
 S SRCH="",%ARG("CDKV")=""
 D KILL^%W3DEB("W3PMDP")
 D PUT^%W3DEB("W3PRMDP","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 S GL=$$GL
 I GL["PARSUG" D
 .D SORTSUG^W4SPIDK("")
 .W "<br><br>"
 ;
 ;
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""60%"">",!
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 S NMCD="GROUPCODE"
 S NMNM="GROUPNAME"
 ;
 W "<th width=""10%"">"_$$^%W1DICT(NMCD)_"</th>"
 W "<th width=""70%"">"_$$^%W1DICT(NMNM)_"</th>"
 W "<th width=""20%"">"_$$^%W1DICT("PROFITPERCENT")_"</th>"
 W "</tr>",!
 ;
 N N,NN,I
 N GLOBT
 ;
 S GLOBT=$$CRGLOBT^W4SPIDK(GL)
 D PUT^%W1PRM("GLOBT",GLOBT)
 ;
 N I S I=0
 ;
 S N0="" F  S N0=$O(@GLOBT@(N0)) Q:N0=""  D
 .S N=N0
 .I $G(%ARG("SORT"))=2!($G(%ARG("SORT"))=3) S N=$G(@GLOBT@(N0))
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .
 .W "<tr "
 . W ">" S I=I+1
 . W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 . W "<td align=""center"">&nbsp;"_$$NAME(N)_"&nbsp;</td>"
 . S AHRV=$$AHRV(N)
 . S @GLOBT@(N,"VL")=AHRV
 . W "<td align=""center"" >"
 . W "<input type=""text"" size=""5"" id=""ahrv"_N_""" "
 . W " onChange=""SetAhRv('ahrv"_N_"')"" "
 . W " value="""_AHRV_""" />",!
 . W "</td>",!
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 Q
 ;
 ;
SAVEND ;
 N N,VL,GLOBT S GLOBT=$$GETP^%W1PRM("GLOBT") Q:GLOBT=""
 S N="" F  S N=$O(@GLOBT@(N)) Q:N=""  D
 .S VL=$G(^(N,"VL"))
 .D PUTGRAHRV(N,VL)
 Q
 ;
 ;
OPTNAME(N) ;
 Q "PROFITPERCENTTABLE"
 ;
GL(STAM) ;
 Q $$^W4GL("PARSUG")
 ;
NAME(N) ;
 Q $$^W3SHOWKV(N)
 ;
AHRV(GR) ;
 I $G(GR)="" Q ""
 Q $P($G(@$$^W4GL("PARSUG")@(GR,1)),"\",10)
 ;
SETAHRV(PRM)
 N GR,VL S GR=$P(PRM,";"),VL=$P(PRM,";",2)
 N GLOBT S GLOBT=$$GETP^%W1PRM("GLOBT")
 I GLOBT="" Q "NOGLOBT"
 N N S N="" F  S N=$O(@GLOBT@(N)) Q:N=""  D
 .I $G(^(N))=GR S @GLOBT@(N,"VL")=VL
 Q 1
 ;
PUTGRAHRV(GR,VL) ;
 Q:$G(GR)=""
 S $P(@$$^W4GL("PARSUG")@(GR,1),"\",10)=VL
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLHIST
W4MLHIST(CODE,VD) ; [ 01.06.23 15:15 ] [ 30.05.23 17:17 ] [ 17.10.14 15:45 ] 
 S CODE=$G(CODE)
 S VD=$G(VD)
 I CODE=""!(VD="") Q
 ;
 N DT,SUG,ORG,NOM,N,A
 I VD="IHB" S DOC="INVOICE"
 I VD="ITM" S DOC="DLVDOC"
 S GLINPI=$$I^W4INPDIR
 S GLML=$$^W4GL("W4ML")
 S SUG="I"
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 I $$FULL D
 .N HD S HD=""
 .I VD="IHB" S HD="INCOMEINVOICESLIST2ITEM"
 .I VD="IHBZ" S HD="DEBETINVOICESLIST2ITEM"
 .I VD="ITM" S HD="INCOMEDLVDOCLIST2ITEM"
 .I VD="ITZ" S HD="DLVBACKDOCLIST2ITEM"
 .I VD="ITK" S HD="TKDOCLIST2ITEM"
 .I VD="IHZ" S HD="SUPPLORDERLIST2ITEM"
 .D ^W4MLKOT(HD,CODE)
 ;
 W "<table width=""98%"" border=""1"" "
 W " dir="""_$$^%W1DIR_""" "
 W " style=""font-size:"_$$^W3FSZ(10)_";background-color:white"" "
 W " cellpadding=""0"" cellspacing=""0"" >",!
 W "<tr>"
  W "<th>"
   W $$^%W1DICT("DATE")
  W "</th>"
  W "<th>"
   W $$^%W1DICT("SUPPLCODE")
  W "</th>"
  W "<th>"
   W $$^%W1DICT("SUPPLNAME")
  W "</th>"
  W "<th>"
   W $$^%W1DICT("DOCNUMBER")
  W "</th>"
  W "<th>"
   W $$^%W1DICT("EM")
  W "</th>"
  W "<th>"
   W $$^%W1DICT("PRICE")
  W "</th>"
  W "<th>"
   W $$^%W1DICT("QUANT")
  W "</th>"
  ;
  I VD'="ITK" D
  .W "<th>"
  . W $$^%W1DICT("DISCOUNT")
  .W "</th>"
  .W "<th>"
  . W $$^%W1DICT("MHSFR")
  .W "</th>"
 W "</tr>"
 ;
 S END=0,K=0,MAX=99999999
 I '$G(%ARG("FULL")) S MAX=5
 ;
 I VD="ITK" D  G ET
 .N A0,A
 .S DT="" F  S DT=$O(@GLML@(CODE,DT),-1) Q:DT=""  D  Q:END
 ..S ORG="" F  S ORG=$O(@GLML@(CODE,DT,"I",ORG)) Q:ORG=""  D  Q:END
 ...S NOM="" F  S NOM=$O(@GLML@(CODE,DT,"I",ORG,VD,NOM),-1) Q:NOM=""  D  Q:END
 ....S A=$$GETITK(NOM,CODE) Q:'A
 ....S A=$P(A,"\",2,255)
 ....S K=K+1 I K>MAX S END=1 Q
 ....D LINE(DT,ORG,VD,NOM,A)
 .
 ;
 S DT="" F  S DT=$O(@GLINPI@(CODE,DT),-1) Q:DT=""  D  Q:END
 .S ORG="" F  S ORG=$O(@GLINPI@(CODE,DT,ORG)) Q:ORG=""  D  Q:END
 ..S NOM="" F  S NOM=$O(@GLINPI@(CODE,DT,ORG,VD,NOM),-1) Q:NOM=""  D  Q:END
 ...S N="" F  S N=$O(@$$GLINP(VD)@(NOM,N)) Q:N=""  I N D  Q:END
 ....S A=$G(^(N)) I $P(A,"\")=CODE D
 .....S K=K+1 I K>MAX S END=1 Q
 .....D LINE(DT,ORG,VD,NOM,A)
ET ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GLINP(VD) ;
 I $G(VD)="ITK" Q $$^W4GL("W4IDK")
 Q $$^W4GL("W4INP")_"(ORG,VD)"
 ;
RKVH(TXT) ;
 I $G(TXT)="" Q "&nbsp;"
 Q $$H2U^%L1FRM(TXT)
 ;
FULL(STAM) ;
 Q $G(%ARG("FULL"))
 ;
 ;
LINE(DT,ORG,VD,NOM,A)
 W "<tr id=""org"_ORG_"vd"_VD_"nom"_NOM
  I $G(N) W "sh"_N_""" "
  W " style=""cursor:pointer"" "
  W " onClick=""ClickLine('"_ORG_"','"_VD_"','"_NOM_"','"_CODE_"')"" "
 W ">",!
  W "<td align=""center"">"
  W $ZD(DT,"DD.MM.YY")
  W "</td>"
 ;
  W "<td align=""center"">"
   W ORG
  W "</td>"
 ;
  W "<td>"
   W $$NBSP^%L1FRM(3)_$$RKVH($$NAME^W4SPK(ORG))
  W "</td>"
 ;
  W "<td style=""font-weight:bold;text-align:center"" >"
   W NOM
  W "</td>"
 ;
  W "<td align=""center"">"
   N EMHZ,EMHZ1 S EMHZ=$P(A,"\",7) S:'EMHZ EMHZ=1
   S EMHZ1=$G(@$$^W4GL("MLMIDA")@(EMHZ))
   I EMHZ1="",EMHZ=1 S EMHZ1="dcigi"
   W $$RKVH(EMHZ1)
  W "</td>"
 ;
  S SM=10
  W "<td "_$$PADDING(SM)_">"
   N PRC S PRC=$P(A,"\",3)
   W $J(PRC,2,2)
  W "</td>"
 ;
  I VD'="ITK" D
 . W "<td "_$$PADDING(SM)_">"
 .  N QN S QN=$P(A,"\",4)
 .  W $J(QN,1,1)
 . W "</td>"
 .
 . W "<td "_$$PADDING(SM)_">"
 .  N DISC S DISC=$P(A,"\",5)
 .  W $J(DISC,2,2)_"%"
 . W "</td>"
 .
 . W "<td "_$$PADDING(SM)_">"
 .  N MHAL S MHAL=0
 .  W $J(MHAL,2,2)
 . W "</td>"
 ;
 I VD="ITK" D
 . W "<td "_$$PADDING(SM)_" >"
 .  N QN S QN=$P(A,"\",5)
 .  W $J(QN,1,1)
 . W "</td>"
 W "</tr>",!
 Q
 ;
 ;
GETITK(NOM,CODE) ;
 N A,OK S OK=0
 N GL S GL=$$^W4GL("W4IDK")
 N N S N="" F  S N=$O(@GL@(NOM,N)) Q:N=""  D:N  Q:OK
 .S A=$G(^(N))
 .I $P(A,"\")=CODE S OK=N_"\"_A Q
 Q OK
 ;
PADDING(SM) ; 
 N PD
 S PD=$S($$^%W1DIR="RTL":"padding-right:"_SM,1:"padding-left:"_SM)
 Q " style="""_PD_""" "
 
 
 
 
 
 

W4MLKOT
W4MLKOT(HD,PRT) ; [ 16.07.14 18:00 ] [ 13.04.14 14:42 ] [
 S PRT=$G(PRT)
 W "<table dir="""_$$^%W1DIR_""" width=""98%"" >",!
  W "<tr>",!
   W "  <td width=""24%"">",!
    W "&nbsp;"
   W "  </td>",!
   W "  <td style=""text-align:center; font-weight:bold"">",!
    S PRT1="" I $G(PRT) S PRT1=$$MLNAME^W4MLPRT(PRT)
    W $$^%W1DICT(HD,PRT1_" "_PRT)
   W "  </td>",!
   W "  <td width=""12%"" "_$$INV^%W1ALIGN_" >",!
    D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"Print()","color:green","wh,22")
   W "  </td>",!
   W "  <td width=""12%"" "_$$INV^%W1ALIGN_" >",!
    D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   W "  </td>",!
  W "</tr>",!
 W "</table>",!
 Q

W4MLLAST
W4MLLAST(PAR,DTI) ; [ 01.06.23 15:55 ] [ 01.07.21 19:24 ] [ 31.01.21 14:16 ] 
 N (JB,%ARG,%REM,PAR,DTI)
 D DEFGLM^W4SETMLY ; --> GLML,GLSP
 S GLSPKMH=$$GLSPKMH^W4SPKMH
 S GLSPKMHP=$$GLSPKMHP^W4SPKMH
 I $G(DTI)="" S DTI=+$H
 S ORG=""
 I PAR["^" D
 .S ORG=$P(PAR,"^",2)
 .S PAR=$P(PAR,"^")
 ;
 S DT=$O(@GLMLS@(PAR,"I",DTI+1),-1)
 S DTM=$O(@GLSPKMHP@(PAR,DTI+1),-1)
 ;
 I DT="" D  S:'DT DT=+$H
 .S DT=$O(@GLMLS@(PAR,$H+1),-1)
 ;
 I $G(ORG)="" S ORG=$O(@GLMLS@(PAR,"I",DT,""))
 I ORG="" S ORG=0
 ;
 I DTM="" D
 .S DTM=$O(@GLSPKMHP@(PAR,$H+1),-1)
 .I DTM="" S DTM=+$H
 ;
 S VD="",MHL=""
 I ORG S VD=$O(@GLMLS@(PAR,"I",DT,ORG,""))
 ;
 I DTM'<DT!'ORG!(VD="") D GETMH(DT,DTM) I $G(MHL)?1N.E Q MHL_"\"_ORG_"\"_DTM_"\!MHSP\\"_DISC
 ;
 I ORG="" Q ""
 I VD="" Q ""
 ;
 S NOM=$O(@GLMLS@(PAR,"I",DT,ORG,VD,""),-1)
 S MHL=$$MH(ORG,PAR,DT)
 S DISC=$$DISC(ORG,PAR,DT)
 ;
 I VD=""!(NOM="") Q MHL_"\"_ORG_"\"_DT_"\!MHSPM\\"_DISC
 Q MHL_"\"_ORG_"\"_DT_"\"_VD_"\"_NOM_"\"_DISC
 ;
MH(ORG,PAR,DT) ;
 I '$G(DT) S DT=+$H
 Q $J($$LASTEL(ORG,PAR,DT),6,6)
 ;
DISC(ORG,PAR,DT) ;
 Q $J($P($$LASTEL(ORG,PAR,DT),"\",4),2,2)
 ;
GETMH(DT,DTM)
 ;;I '$G(ORG) S ORG=$O(@GLSPKMHP@(PAR,DTM,"")) Q:'ORG
 S A=$G(@GLSPKMH@(ORG,PAR,DTM))
 S MHL=+A
 S DISC=$$DISC(ORG,PAR,DT)
 Q
 ;
LASTEL(ORG,PAR,DT) ; 
 N GLSP
 S GLSP=$$GLSP^W4SETMLY
 I $D(@GLSP@(ORG,"MH",PAR,DT))#2 Q ^(DT)
 N DTL S DTL=$O(@GLSP@(ORG,"MH",PAR,DT),-1) I DTL="" Q ""
 Q $G(@GLSP@(ORG,"MH",PAR,DTL))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLMKDM
W4MLMKDM ; [ 15.08.14 12:16 ] [ 13.08.14 20:53 ] [ 04.08.14 22:00 ]
 N (JB,%ARG,%REM)
 N MLMIDA S MLMIDA=$$^W4GL("MLMIDA")
 W "<br>"
 W "<div align=""center"" dir=""RTL"" "
 ; W "style=""width:100%;overflow-x:scroll;overflow-y:hidden"" "
 W ">",!
 S HG=26
 ;
 D EXAMPLE
 W "<br>",!
 ;
 W "<table id=""Tbl"" style=""font-size:"_$$^W3FSZ(10)_""" >",!
  W "<tr>"
   W "<th >&nbsp;&nbsp;"_$$H2U^%L1FRM("dcigil\dcigin")_"&nbsp;&nbsp;</th>"
   S N="" F  S N=$O(@MLMIDA@(N)) Q:N=""  D
   .S A=$G(^(N))
   .W "<th>"_$$H2U^%L1FRM("-l")_" "_$$H2U^%L1FRM(A)_"</th>"
  W "</tr>",!
  ;
  S N="" F I=1:1 S N=$O(@MLMIDA@(N)) Q:N=""  D
  .S A=$G(^(N))
  .W "<tr style=""height:"_HG_"px"">"
  . W "<td class=""fix"" >"
  .   W $$H2U^%L1FRM("-n")_" "_$$H2U^%L1FRM(A)
  . W "</td>",!
  . S N1="" F J=1:1  S N1=$O(@MLMIDA@(N1)) Q:N1=""  D
  . . W "<td id=""td"_I_"-"_J_""" align=""center"">"
  . .  S VL=$G(@$$^W4GL("MLMKDM")@(N,N1))
  . .  W "<input type=""text"" id=""from"_N_"to"_N1_""" "
  . .  W " style=""font-size:"_$$^W3FSZ(10)_";font-weight:bold"" "
  . .  W " value="""_VL_""" size=""4"" "
  . .  W " onKeyUp=""OnKeyUp()"" "
  . .  W " onFocus=""OnFocus("_I_","_J_",this)"" />"
  . . W "</td>"
  .W "</tr>",!
  W "</table>",!
  W "<br><br><br>",!
  W "</div>",!
 Q
 ;
SAVE(PRM) ;
 N I,TRI,EM1,EM2,KF
 K @$$^W4GL("MLMKDM")
 I $E(PRM,$L(PRM))=";" S PRM=$E(PRM,1,$L(PRM)-1)
 F I=1:1:$L(PRM,";") D
 .S TRI=$P(PRM,";",I)
 .S EM1=$P(TRI,"~")
 .S EM2=$P(TRI,"~",2)
 .S KF=$P(TRI,"~",3)
 .I EM1,EM2,KF S @$$^W4GL("MLMKDM")@(EM1,EM2)=KF
 Q 1
 ;
EXAMPLE ;
 W "<table width=""96%"" dir="""_$$^%W1DIR_""" "
   W " style=""background-color:lightyellow;border:1px brown solid"" "
  W " >",!
  W "<tr>"
   W "<td width=""10%"">"_$$H2U^%L1FRM(": dnbecl")_"</td>",!
   W "<td width=""90%"">"
    W $$H2U^%L1FRM(" 1000 `ed dxnd mcwn mxbl b""wn ")
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>&nbsp;</td>"
   W "<td>"
    W $$H2U^%L1FRM(" 0.330 `ed dxnd mcwn xhill xhil 0.33 weawan ")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q  ;
 ;
RKV(TXT) ;
 N ST
 S ST="<span style=""font-weight:bold;color:red"">"
 S ST=ST_$$H2U^%L1FRM(TXT)
 S ST=ST_"</span>"
 Q ST

W4MLOPRM
W4MLOPRM ; [ 29.12.21 08:08 ] [ 19.03.15 14:50 ] [ 16.04.14 18:56 ] 
GET ;
 S MLYHUZ=$$FUNC^%UCASE($G(@$$^W4PRM@("MLYHUZ")))
 S MLYADR=$$FUNC^%UCASE($G(@$$^W4PRM@("MLYADR")))
 S MLYMRK=$$FUNC^%UCASE($G(@$$^W4PRM@("MLYMRK")))
 Q
 ;
PUT(PRM) ;
 D PUT^%W3DEB("W4ZOOMIN","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES="OK"
 ;
 F I="MLYHUZ","MLYADR","MLYMRK" D
 .S @$$^W4PRM@(I)=$G(@I)
 ;
END Q RES
 ;
 

W4MLPREX
W4MLPREX ; [ 08.07.26 13:31 ] [ 12.11.24 18:49 ] [ 09.02.17 06:44 ] 
 N (JB,%ARG,%REM,%REPN,FMT,TOT,%W1LNG)
 S:'$D(FMT) FMT=0
 D ^%L1TS
 N DIR S DIR=$$DIRL
 N FL S FL=DIR_"W4MLPAR"_$$^W4MYDVN
 S FLCSV=FL_".csv"
 N A,B,I,J,RZD
 S RZD=","
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 U FLCSV
 W $$RKV("dwlgn cew")_$$RKV("dwlgn my")_$$RKV("dveaw cew")_$$RKV("dveaw my")_$$RKV("hixt cew")_$$RKV("hixt my")_$$RKV("xign"),!
 ;
 S VRM=$$^W4MAIN("VRM")
 ;
 S DEP="" F  S DEP=$O(@VRM@(DEP)) Q:DEP=""  D
 .I $G(%ARG("DEP"))?1N.N,DEP'=%ARG("DEP") Q
 .S KV="" F  S KV=$O(@VRM@(DEP,KV)) Q:KV=""  D
 ..I $G(%ARG("CDKV"))?1N.N,KV'=%ARG("CDKV") Q
 ..S N="" F  S N=$O(@VRM@(DEP,KV,N)) Q:N=""  D
 ...W $$RKV($$DEP(N))_$$RKV($$DEP1(N))_$$RKV($$SUGP(N))_$$RKV($$SUGP1(N))_$$RKV(N)_$$RKV($$NAME(N))_$$RKV($J($$MH(N),2,2)),!
 ;
 C FLCSV
 ;
 ;;ZSY "unix2dos "_FLCSV
 ;;ZSY "zip -j "_FL_" "_FLCSV
 Q
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
DIRWEB(STAM) ;
 N DIR S DIR=$$WEB^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
RKV(VL)
 S VL=$$SPA^%L1FRM(VL)
 I $$ISNUM^%L1FRM(VL) G RKVE
 I VL?2N1"."2N1"."2N!(VL?2N1"."2N1"."4N) S VL=$TR(VL,".","/") G RKVE
 I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N G RKVE
 ;;S VL=$TR($$INVH^%L1FRM(VL),TS0,TS1)
 S VL=$TR(VL,","," ")
 S VL=$$^%W1D2U(VL)
RKVE ;
 I $G(FMT)=1 Q VL_$C(9)
 Q VL_","
 ;
FMT(FMT) ;
 I $G(FMT) Q "txt"
 Q "csv"
 ;
DEP(PRT) ;
 Q +$$MLDEP^W4MLPRT(PRT)
 ;
DEP1(PRT) ;
 I $G(PRT)="" Q ""
 N DEP S DEP=+$$MLDEP^W4MLPRT(PRT)  Q:'DEP ""
 Q $$MLDEP1^W4MLPRT(DEP)
 ;
SUGP(PRT) ;
 Q +$$MLSUGP^W4MLPRT(PRT)
 ;
SUGP1(PRT) ;
 I $G(PRT)="" Q ""
 N SUGP S SUGP=$$SUGP(PRT) I 'SUGP Q ""
 ;
 Q $G(@$$GLSUGP^W4MLPRT@(SUGP))
 ;
NAME(PRT) ;
 I $G(PRT)="" Q ""
 Q $$MLNAME^W4MLPRT(PRT)
 ;
MH(PRT) ;
 I $G(PRT)="" Q ""
 Q $J($$MHAL^W4MLPRT(PRT),2,2)
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLPRPC
W4MLPRPC ; [ 17.09.18 11:36 ] [ 08.05.16 11:29 ] [ 03.05.16 18:45 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 ;
 S W4MLPRPC=""
 ;
 S LCOD=5
 ;
 S RSIZE=27,PG=0,I=0
 ;
 S GL=$$GLMLPAR^W4MLPRT
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 S PRT="" F  S PRT=$O(@GL@(PRT)) Q:PRT=""  D
 .S DEP=+$$MLDEP^W4MLPRT(PRT)
 .S KVP=+$$MLSUGP^W4MLPRT(PRT)
 .S @VRM@(DEP,KVP,PRT)=""
 ;
 I $G(%ARG("DEP"))="" S %ARG("DEP")=$O(@VRM@(""))
 S DEPSEL="" I $L($G(%ARG("DEP"))) S DEPSEL=%ARG("DEP")
 I $G(%ARG("CDKV"))="",$L(DEPSEL) S %ARG("CDKV")=$O(@VRM@(DEPSEL,""))
 I $L($G(%ARG("CDKV"))) S GRSEL=%ARG("CDKV")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$SNDMAIL G BODY
 ;
 D ^W4MLPREX
 ;
 W "<div id=""divbut"" "_$$INV^%W1ALIGN_" >"
 W "<br />" D VOSC
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">" D VOSC
  W "<tr>"
   W "<td width=""15%"">",!
    S FL="W4MLPAR"_$$^W4MYDVN
    S FLCSV=$$DIRWEB^%W1PCEX_FL_".csv"
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>",!
   ;
   W "<td width=""25%"" "_$$^%W1ALIGN_"  >"
   W " <b>" W $$^%W1DICT("DEPARTMENT") W "</b>&nbsp;" D VOSC
    D DEPSEL
   W "</td>" D VOSC
   ;
   W "<td width=""25%"" "_$$^%W1ALIGN_"  >"
   W " <b>" W $$^%W1DICT("GROUP") W "</b>&nbsp;" D VOSC
    D GROUPSEL
   W "</td>" D VOSC
   ;
   W "<td width=""45%"""_$$^%W1ALIGN_" >"
    W "&nbsp;"
   W "</td>" D VOSC
   ;
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>" D VOSC
 W "</table>",!
 W "</div>" D VOSC
 W "<br />" D VOSC
 ;
BODY ;
 S COLSPAN=5
 S DEP="" F  S DEP=$O(@VRM@(DEP)) Q:DEP=""  D
 .I $L(DEPSEL),DEPSEL'="ALL",DEP'=DEPSEL Q
 .S KVP="" F  S KVP=$O(@VRM@(DEP,KVP)) Q:KVP=""  D
 ..N NMKV S NMKV=$$SUGP1(KVP)
 ..I $L($G(%ARG("CDKV"))),$G(%ARG("CDKV"))'="ALL",KVP'=$G(%ARG("CDKV")) Q
 ..;W 4
 ..I I>0 D CLOSETBL
 ..I I>3 D PGBREAK
 ..D KOT(KVP)
 ..S PRT="" F  S PRT=$O(@VRM@(DEP,KVP,PRT)) Q:PRT=""  D
 ...I $D(@GL@(PRT))=0 Q
 ...S I=I+1 I I>RSIZE D PEREH
 ...D STR(PRT)
 ...W "<tr><td colspan="""_COLSPAN_"""><hr></td></tr>" D VOSC
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
STR(PRT) ;
 W "<tr style=""font-size:"_$$^W3FSZ(12)_""">"
 W " <td id=""cd"_PRT_""">&nbsp;&nbsp;"_PRT_"&nbsp;&nbsp;</td>"
 W " <td "_$$^%W1ALIGN_">"_$$NAME(PRT,1)_"</td>"
 W " <td align=""center"">"_$$H2U^%L1FRM($$EM(PRT))_"</td>"
 W " <td align=""center"">"_$J($$MH(PRT),2,2)_"</td>"
 W " <td>"_$$H2U^%L1FRM($$SPK(PRT))_"</td>"
 W "</tr>" D VOSC
 Q
 ;
 ;
PEREH ;
 D CLOSETBL
 D PGBREAK
 D KOT(KVP,1)
 S RSIZE=10
 Q
 ;
CLOSETBL ;
 W "</table>",!
 Q
 ;
KOT(KV,PRH) ;
 W "<br>" S PG=PG+1,I=1
 W "<table width=""94%"" dir="""_$$^%W1DIR_""">" D VOSC
  W "<tr>" D VOSC
   W "<td "
    W " style=""text-align:center;width:90%;color:darkred;font-size:"_$$^W3FSZ(16)
    W """>"
     W $$^%W1DICT("DEPARTMENT")_" : "_$$H2U^%L1FRM($$MLDEP1^W4MLPRT(DEP))_$$NBSP^%L1FRM(5)_$$^%W1DICT("GROUP")_" : "_$$SUGP1(KV)
     I $G(PRH) D
      .W "&nbsp;&nbsp;"
      .W "<span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"
      . W " ( "_$$^%W1DICT("CONTINUE")_" ) "
      .W "</span>" D VOSC
    W "</td>" D VOSC
    W "<td>"
     W $$^%W1DICT("PAGE")_" "_PG
    W "</td>"
  W "</tr>" D VOSC
 W "</table>",!
 W "<br>",!
 ;
 S BORD=0 ;1
 I $$SNDMAIL S BORD=0
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border="""_BORD_""" cellspacing=""0"" width=""90%"">" D VOSC
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:white;font-size:"_$$^W3FSZ(12)_";font-weight:bold"
 W """ >"
  S WDNM=44
  W "<th width=""14%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th width="""_WDNM_"%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th width=""14%"">"_$$^%W1DICT("EM")_"</th>"
  W "<th width=""14%"">"_$$^%W1DICT("PRICE")_"</th>"
  W "<th width=""14%"">"_$$^%W1DICT("SUPPLIER")_"</th>"
 W "</tr>" D VOSC
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">" D VOSC
 Q
 ;
DEPSEL ;
 W "<select "
  W " id=""depsel"" onChange=""ChangeDep()"""
 W " >"
 W "<option value=""-1"">"_$$^%W1DICT("CHOICEOPTION")_"</option>"
 ;
 ;
 W $$OPTION("ALL",$G(DEPSEL))_$$^%W1DICT("ALLDEPS")_"</option>"
 ;
 N DEP
 S DEP="" F  S DEP=$O(@VRM@(DEP)) Q:DEP=""  D
 .W "<option value="""_DEP_""""
 .I $L(DEPSEL),DEP=DEPSEL W " selected=""selected"""
 .W " >"_DEP_" "_$$H2U^%L1FRM($$MLDEP1^W4MLPRT(DEP))_"</option>"
 W "</select>"
 ;
 Q
 ;
 ;
GROUPSEL ;
 W "<select "
  W " id=""grsel"" onChange=""ShowPrt()"""
 W " >"
 W "<option value=""-1"">"_$$^%W1DICT("CHOICEOPTION")_"</option>"
 ;
 W $$GRDEP($G(DEPSEL))
 ;
 W "</select>"
 Q
 ;
KVPOPT(KVP) ;
 N ST
 S ST="<option value="""_KVP_""""
 I $G(GRSEL),KVP=GRSEL S ST=ST_" selected=""selected"""
 S ST=ST_" >"_$$SUGP1(KVP)_"</option>"
 Q ST
 ;
GRDEP(DEP) ;
 N VRM S VRM=$$^W4MAIN("VRM")
 N KVP,ST0
 S ST0=$$OPTION("ALL",$G(GRSEL))_$$^%W1DICT("ALLGROUPS")_"</option>"
 I $G(DEP) D
 .S KVP="" F  S KVP=$O(@VRM@(DEP,KVP)) Q:KVP=""  S ST0=ST0_$$KVPOPT(KVP)
 I $G(DEP)'?1N.N D
 .N GLSUGP S GLSUGP=$$GLSUGP^W4MLPRT
 .S KVP="" F  S KVP=$O(@GLSUGP@(KVP)) Q:KVP=""  S ST0=ST0_$$KVPOPT(KVP)
 Q ST0
 ;
OPTION(VL,KV) ;
 Q "<option value="""_VL_""" "_$S(VL=KV&$L(KV):"selected=""selected""",1:"")_" >"
 ;
VOSC ;
 I '$$SNDMAIL W !
 Q
 ;
SNDMAIL(STAM) ;
 I $G(%ARG("SNDMAIL")) Q 1
 Q 0
 ;
NAME(PRT,PR)
 I $G(PR) Q $$H2U^%L1FRM($$MLNAME^W4MLPRT(PRT))
 Q $$SHEM^W4P(PRT)
 ;
SUGP1(SUGP) ;
 N SUGP1 S SUGP1=""
 I SUGP S SUGP1=$G(@$$GLSUGP^W4MLPRT@(SUGP))
 Q SUGP_" "_$$H2U^%L1FRM(SUGP1)
 ;
DEP1(DEP) ;
 N DEP1 S DEP1=""
 S DEP1=$$MLDEP1^W4MLPRT(DEP)
 Q $$H2U^%L1FRM(DEP1)
 ;
EM(PRT) ;
 Q $$EMSFR1^W4PRT(PRT)
 ;
MH(PRT) ;
 Q $$MHAL^W4MLPRT(PRT)
 ;
SPK(PRT) ;
 N SSPK,PK1 S SPK1=""
 S SPK=$$SPK^W4MLPRT(PRT)
 I SPK S SPK1=$$NAME^W4SPK(SPK)
 Q SPK1
 ;
HL(NM) ;
 I $G(NM)="" Q "&nbsp;"
 S NM=$$SPA^%L1FRM(NM)
 S NM=$$FUNC^%UCASE($E(NM))_$$FUNC^%LCASE($E(NM,2,300))
 Q NM
 
 

W4MLPRT
W4MLPRT(CODE,PRM) ; [ 25.06.26 08:08 ] [ 05.02.26 11:09 ] [ 21.03.25 12:42 ] 
 ;GROUP\EMHZM\EMSFR\MIN\NKHZM\MAZAV\MHER
 ;  1    2      3    4    5     6    7
 N (JB,%ARG,CODE,PRM)
 I CODE?1"*"1N.E S CODE=$E(CODE,2,20)
 I '$D(@$$GLSPKMHSI^W4SPKMH) D CRGLSPKMHSI^W4SPKMH
 I $G(PRM)="" S PRM="IN"
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W4MLPRT")
 D PUT^%W3DEB("W4MLPRT","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 K @$$^W4MAIN("TMPPRT")
 D PUT^%W1PRM("MLPRT",1)
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W4MLPRT","MSD=MSD")
 ;
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 D PUT^%W1PRM("CODE",CODE)
 ;
 W "<div align=""center"">",!
 D ^%W1HD("ITEMCARD")
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 ;
 W "<table width=""90%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 W "<tr>"
  D CODE,NAME,MAZAV
 W "</tr>",!
 W "</table>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""10"" width=94% border=""0"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<tr>" D GROUP D EM("EMHZM","EMHZM") W "</tr>",!
 ;
 W "<tr>",!
  D DEP
  D EM("EMSFR","EMSFR")
 W "</tr>",!
 ;
 W "<tr>",!
  D MAM,MLYMIN,MLYRAMA
 W "</tr>",!
 ;
 W "<tr>",!
  D ITRA
  ;;D NKHZM
 W "</tr>",!
 ;
 S (MHL,SPK)=""
 I $G(CODE) D
 .S MHL=$$MHAL(CODE),SPK=$$SPK(CODE)
 ;
 W "<tr>"
  D LASTMHL(MHL)
 W "</tr>",!
 ;
 W "<tr>",!
  D LASTSPK(SPK)
  D SHOWMHEREH($G(CODE))
 W "</tr>",!
 ;
 I $$ONEGLPAR D
 .W "<tr>"
 . D SHOWAHREVAH($G(CODE))
 . D SHOWMHMUMLAZ($G(CODE))
 .W "</tr>",!
 .
 .W "<tr>"
 . D SHOWMHMHIRA($G(CODE))
 . D MISHKAL
 .W "</tr>",!
 ;
 W "<tr>"
  D TD
   W $$^%W1DICT("COMMENT")
 W "</td>"
 W "<td colspan=""3"">"
   W "<input type=""text"" id=""CMNT"" value="""_$$H2U^%L1FRM($$MLCMNT($G(CODE)))_""" size=""80"" />"
  W "</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "<br>",!
 D DIVBUT(1)
 ;
 I $$GETP^%W1PRM("W4MENU") Q
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""10"" width=94% border=""0"" dir="""_$$^%W1DIR_""" >",!
 I '$G(CODE) D
 .W "<tr><td>&nbsp;</td></tr>",!
 ;
 I $G(CODE) D
 .W "<tr>"
 . D TDB W " style=""font-size:"_$$^W3FSZ(14)_";text-align:center"" >"
 . W CODE_" "_$$H2U^%L1FRM($$MLNAME(CODE))_"</td>"
 .W "</tr>",!
 ;
 D HISTMH
 ;
 D HIST("INVOICES","IHB")
 ;
 D HIST("DLVDOCS","ITM")
 ;
 D HIST("DLVBACKDOCS","ITZ")
 ;
 D HIST("DEBETINVOICES","IHBZ")
 ;
 D HIST("SUPPLORDERS","IHZ")
 ;
 D HIST("TKDOCS","ITK")
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 W "</table>",!
 W "</div>",!
 D DIVBUT(2)
 W "<br>",!
 ;
 Q
 ;
 ;
DIVBUT(OPT) ;
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"" width=""45%"" >",!
 W "<tr>",!
 I $G(%ARG("CODE"))'?.P D
 . W "<td>"
 .  D ROUNDBUT^%W1JS("rbtcontact",$$^%W1DICT("ITEMMOVEMENTS"),"Movements('"_$G(CODE)_"')","color:blue","wh,22")
 . W "</td>"
 .
 .I $D(@$$GLEZM^W4EZM@(%ARG("CODE")))>9 D
 .. W "<td>"
 ..  D ROUNDBUT^%W1JS("rbtree",$$^%W1DICT("PRODUCTTREE"),"ProductTree('"_$G(CODE)_"')","color:brown","wh,22")
 .. W "</td>"
 .
 .I '$$VIEW D
 .. W "<td>"
 ..      D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 .. W "</td>",!
 ;
 I $G(%ARG("CODE"))?.P W "<td>&nbsp;</td><td>&nbsp;</td>",!
 ;
 W "<td align=""center"">"
  W "<img src=""w3calc.jpg"" alt=""Calculator"" "
  W " onClick=""BOCalc('25','60')"" "
  W " style=""cursor:pointer"" />"
 W "</td>",!
 ;
 W "<td>",!
      D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</td>"
 W "</tr>",!
 ;
 I $G(%ARG("CODE")),$D(@$$GLEZMI^W4EZM@(%ARG("CODE")))>9 D
 .W "<tr>"
 . W "<td>"
 .  D ITEM2TREE(%ARG("CODE"),1)
 . W "</td>"
 . W "<td>"
 .  D ROUNDBUT^%W1JS("showtrmly",$$^%W1DICT("SHOW"),"Show2Tree('treemly')","color:brown","wh,22")
 . W "<td>"
 .  D ITEM2TREE(%ARG("CODE"),0)
 . W "</td>"
 . W "<td>"
 .  D ROUNDBUT^%W1JS("showtrkup",$$^%W1DICT("SHOW"),"Show2Tree('treekup')","color:brown","wh,22")
 . W "</td>"
 .W "</tr>",!
 ;
 W "<tr><td colspan=""4"">"
  W "<div id=""meaddat"" style=""display:none"" >"
  W "<table width=""100%"" >",!
   W "<tr>"
     S MEDAT=$G(%ARG("MEDAT"))
     I MEDAT="" S MEDAT=$G(@$$^%W1GLPRM@("VAL","MEDAT"))
     S ADDAT=$G(%ARG("ADDAT"))
     I ADDAT="" S ADDAT=$G(@$$^%W1GLPRM@("VAL","ADDAT"))
     ;
     W $$MEADDAT^W4LHB(MEDAT,ADDAT)
     W "<td width=""10%"">"
      D ROUNDBUT^%W1JS("rbtshowmv",$$^%W1DICT("SHOW"),"ShowMv()","color:darkgreen","wh,22")
     W "</td>",!
   W "</tr>",!
  W "</table>",!
  W "</div>",!
 W "</td></tr>",!
   W "</table>",!
 Q
 ;
 ;
CODE D TD W $$ZW_$$^%W1DICT("ITEMCODE")_"<br>"
 W "</td>",!
 I $$VIEW D TDBOLD W CODE,"</td>" Q
 ;
 W "<td style=""display:inline-flex"" >"
 D INPC("CODE",120,14)
 W "&nbsp;&nbsp;<img id=""filter"" width="_$$^W4KF(22)_" height="_$$^W4KF(22)_" src=""w3filter.jpg"""
 W " "_$$^W4TOUCH_"=""Find('CODE','CODE','MLPAR')"" >",!
 W "</td>"
 W "<td "_$$^%W1ALIGN_" >"
  D ROUNDBUT^%W1JS("rbtfree",$$^%W1DICT("FREE"),"Free()","color:green","wh,22")
 W "</td>",!
 Q
 ;
NAME D TD W $$ZW_$$^%W1DICT("NAME")_"</td>"
 I $$VIEW D  Q
 .D TDBOLD W $$H2U^%L1FRM($$MLNAME(CODE)),"</td>"
 ;
 W "<td>"
 D INP($G(CODE),"NAME",400,50,$$^%W1DIR)
 Q
 ;
 ;
GROUP D TD W $$^%W1DICT("ITEMSGROUP")_"</td>"
  I $$VIEW D TDBOLD D  W "</td>" Q
  .N SUGP S SUGP=$$MLSUGP(CODE)
  .N SUGP1 S SUGP1=""
  .I SUGP S SUGP1=$G(@$$GLSUGP@(SUGP))
  .W SUGP_" "_$$H2U^%L1FRM(SUGP1)
  ;
  D GROUPTD($G(CODE))
  Q
  ;
GROUPTD(CODE) ;
  W "<td>"
  W "<select id=""GROUP"" onChange=""ChangeGroup()"">",!
   W "<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>",!
   W $$GROUPSEL($G(CODE)),!
  W "</select>",!
  W $$EDITBUT1("GroupEdit()")
 W "</td>",!
 Q
 ;
MISHKAL ;
 I '$$ONEGLPAR W "<td>&nbsp;</td><td>&nbsp;</td>" Q
 D TD
   W $$^%W1DICT("WEIGHT")
 W "</td>"
 ;
 W "<td>"
  W "<input type=""checkbox"" id=""WEIGHT"" "
  I $G(CODE) W $S($$MSK^W4P(CODE):"checked=""checked"" ",1:"")
  W " />"
 W "</td>"
 Q
 ;
GROUPSEL(CODE) ;
 I $G(CODE)="" S CODE=$$GETP^%W1PRM("CODE")
 N SELECTED,SEL
 S SEL=""
 N N S N="" F  S N=$O(@$$GLSUGP@(N)) Q:N=""  D
 .S SELECTED=""
 .I $G(CODE),$$MLSUGP(CODE)=N S SELECTED=" selected=""selected"""
 .S SEL=SEL_"<option value="""_N_""" "_SELECTED_" >"
 .S SEL=SEL_N_" "_$$H2U^%L1FRM($G(@$$GLSUGP@(N)))
 .S SEL=SEL_"</option>"
 Q SEL
 ;
EDITBUT(PRM) ;
 W $$EDITBUT1($G(PRM))
 Q
EDITBUT1(PRM) ;
 N ST
 S ST="<input type=""button"" value="""_$$^%W1DICT("EDIT")_""" "
 S ST=ST_" style=""color:blue"" "
 S ST=ST_" onClick="""_PRM_""" "
 S ST=ST_">"
 Q ST
 ;
DEP ;
 D TD
  W $$^%W1DICT("DEPARTMENT")
 W "</td>"
 D TDB W " id=""mldep"" >"
  W $$H2U^%L1FRM($$MLDEP1($$MLDEP(CODE)))
 W "</td>",!
 Q
 ;
EM(PRM,ID) ;
 N TDSPAN S TDSPAN=1 D TD
  W $$^%W1DICT(PRM)
 W "</td>"
 I $$VIEW D TDBOLD D VWEM(CODE,PRM) W "</td>" Q
  ;
 D EMTD($G(CODE),PRM,ID)
 Q
 ;
EMTD(CODE,PRM,ID) ;
 W $$EMTD1(CODE,$G(PRM),$G(ID))
 Q
 ;
EMTD1(CODE,PRM,ID) ;
 N ST
 S ST="<td>"
  S ST=ST_$$SELMIDA1(PRM,ID)
  I '$D(MLPRTB) D
  .S ST=ST_"&nbsp;"
  .S ST=ST_$$EDITBUT1("EmEdit()")
  .I ID="EMSFR" D
  .. S ST=ST_"&nbsp;"
  .. S ST=ST_"<input type=""button"" value="""_$$^%W1DICT("COEFFICIENTSTABLE")_""" "
  .. S ST=ST_" style=""color:green"" "
  .. S ST=ST_" onClick=""ShowKfTbl()"" "
  .. S ST=ST_">"
  ;
 S ST=ST_"</td>"
 Q ST
 ;
 ;
KF(CODE) ;
 N EMHZM S EMHZM=$$P("EMHZM")
 N EMSFR S EMSFR=$$P("EMSFR")
 Q $$MKDM(EMHZM_";"_EMSFR)
 ;
MKDM(PRM) ;
 N EMHZM,EMSFR
 S EMHZM=$P(PRM,";")
 S EMSFR=$P(PRM,";",2)
 S:'EMSFR EMSFR=1
 I 'EMHZM Q 1
 N KF S KF=$G(@$$^W4GL("MLMKDM")@(EMHZM,EMSFR))
 I 'KF D
 .S KF=$G(@$$^W4GL("MLMKDM")@(EMHZM,1))
 .N KF1 S KF1=$G(@$$^W4GL("MLMKDM")@(EMSFR,1))
 .I KF1 S KF=$J(KF/KF1,6,6)
 I 'KF S KF=1
 Q KF
 ;
HISTMH ;
 N CODDOC S CODDOC="MHR"
 I $L($G(CODE)),$D(@$$GLEZM^W4EZM@(CODE)) D  Q
 .I $$GETP^%W1PRM("PRKUP")="" D
 ..W "<tr>"
 .. W "<td align=""center"">"
 ..  D ROUNDBUT^%W1JS("edititemtree",$$^%W1DICT("EDITITEMTREE"),"EditItemTree('"_CODE_"')","color:blue","wh,22")
 .. W "</td>",!
 ..W "</tr>",!
 .
 .W "<tr>"
 . W "<td colspan=""3"">",!
 .  S TO="w4ezmidk.jsp?JB="_JB_"&MAIN="_$G(CODE)_"&VIEW=2&MLPRT=1"
 .  W "<iframe id=""ezm"" "
 .   W "style=""left:50px;height:280px;width:90%;font-size:"_$$^W3FSZ(11)_""" "
 .   W "src="""_TO_""">",!
 .  W "</iframe>",!
 . W "</td>",!
 .W "</tr>",!
 ;
 W "<tr>"
  W "<td style=""width:20%;font-weight:bold"" >"
   W $$^%W1DICT("SUPPLIERPRICES")
  W "</td>",!
  ;
  W "<td width=""40%"">"
   W $$^%W1DICT("LASTPRICE")
   W "&nbsp;"
   W " <input name=""radio"_CODDOC_""" type=""radio"" "
   W " id=""radio"_CODDOC_"0"" checked=""checked"" "
   W ">"
   ;
   W "&nbsp;&nbsp;"
   ;
   W $$^%W1DICT("SHOWHISTORY")
   W "&nbsp;"
   W " <input name=""radio"_CODDOC_""" type=""radio"" "
   W " id=""radio"_CODDOC_"1"" "
   W " onClick=""FullShow('"_CODDOC_"','"_$G(CODE)_"')"" >"
  W "</td>"
  ;
  I '$$VIEW D
  .W "<td align=""center"">"
  . D ROUNDBUT^%W1JS("newpricelist",$$^%W1DICT("NEWPRICELIST"),"NewPriceList()","color:blue","wh,22")
  .W "</td>",!
  ;
 W "</tr>",!
 ;
 W "<tr>"
 W "<td colspan=""3"">",!
  S TO="w4mhspk.jsp?JB="_JB_"&PRT="_$G(CODE)
  I '$$VIEW S TO=TO_"&UPDATE=1"
  W "<iframe id=""mhspk"" "
   W "style=""left:50px;height:120px;width:90%;font-size:"_$$^W3FSZ(11)_""" "
   W "src="""_TO_""">",!
  W "</iframe>",!
 W "</td>",!
 W "</tr>",!
 ;
 Q
 ;
 ;
ITEM2TREE(CODE,PRMLY) ;
 N ID S ID="treekup"
 I $G(PRMLY) S ID="treemly"
 N GLEZMI,QN,CD S GLEZMI=$$GLEZMI^W4EZM
 W "<select id="""_ID_""" style=""font-family:Courier"">",!
  W "<option value="""">"_$$^%W1DICT($S($G(PRMLY):"ITEM2TREEMLY",1:"ITEM2TREEKUP"))_"</option>",!
  N PROD S PROD="" F  S PROD=$O(@GLEZMI@(CODE,PROD)) Q:PROD=""  D
  .I $G(PRMLY),$E(PROD)="K" Q
  .I '$G(PRMLY),$E(PROD)'="K" Q
  .S CD=PROD I $E(PROD)="K" S CD=$E(PROD,2,20)
  .I CD="" Q
  .W "<option value="""_PROD_""">"
  . S QN=$P($G(@$$GLEZM^W4EZM@(PROD,CODE)),"\",4) Q:'QN
  . N MLNAME I $G(PRMLY) S MLNAME=$$MLNAME(CD)
  . I '$G(PRMLY) S MLNAME=$$SHEM^W4P(CD)
  . S MLNAME=$$SPA^%L1FRM(MLNAME)
  . I MLNAME="" S MLNAME="[ my oi` ]"
  . S MLNAME=CD_" "_$$H2U^%L1FRM(MLNAME)_" "_$TR($J("",25-$L(MLNAME)-$L(CD))," ","-")
  . W MLNAME_" : "_$J(QN,5)
  .W "</option>",!
 W "</select>",!
 Q
 ;
HIST(NMD,VD)
 D KOTDOC(NMD,VD)
 ;
 W "<tr>"
 W "<td colspan=""3"" >"
  D SELDOC(VD)
 W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
KOTDOC(NMDOC,CODDOC) ;
 W "<tr>"
  W "<td style=""font-weight:bold"" >"
   W $$^%W1DICT(NMDOC)
  W "</td>",!
  N COLDOC S COLDOC=5
  W "<td>"
   W $$^%W1DICT("SHOWLASTDOCUMENTS",COLDOC)
   W "&nbsp;"
   W " <input name=""radio"_CODDOC_""" id=""radio"_CODDOC_"0"" "
    W " type=""radio"" checked=""checked"" "
    W " >"
    ;
   W $$^%W1DICT("SHOWALLDOCS")
   W "&nbsp;"
   W " <input name=""radio"_CODDOC_""" type=""radio"" id=""radio"_CODDOC_"1"" "
   W " onClick=""FullShow('"_CODDOC_"','"_$G(CODE)_"')"">"
  W "</td>"
 W "</tr>",!
 Q
 ;
FULLSHOW(VD,CODE) ;
 N SHOW S SHOW=""
 D ROUNDBUT^%W1JS("fullshow",$$^%W1DICT("SHOWFULLLIST"),"FullShow('"_VD_"','"_$G(CODE)_"')","color:green","wh,22")
 Q
 ;
MLYMIN ;
 D TD
  W $$^%W1DICT("MLYMINIMUM")
 W "</td>"
 I $$VIEW D  Q
 .D TDBOLD
 . W $$MLMIN(CODE)
 .;;W "</td>",!
 ;
 N NOTD S NOTD=""
 D MLYMINTD($G(CODE),"MIN",$$^%W1ALIGN)
 Q
 ;
MLYMINTD(CODE,ID,ALGN) ;
 W $$MLYMINTD1(CODE,$G(ID),$G(ALGN))
 Q
MLYMINTD1(CODE,ID,ALGN) ;
 N ST
 S ST="<td "_$G(ALGN)_" >"
  S ST=ST_$$INP1($G(CODE),"MIN",50,7,"LTR",$G(ID))
 Q ST
 ;
NBSP(SP)
 Q $$NBSP^%L1FRM(SP)
 ;
 ;
MLYRAMA ;
 ;;W "<td>"
 W $$NBSP(5)
  W $$^%W1DICT("MLYRAMA")
 W $$NBSP(3)
 ;
 I $$VIEW D  Q
 . W "<span style=""font-weight:bold"">"
 .  W $$MLRAMA(CODE)
 . W "</span>",!
 .W "</td>"
 ;
 D MLYRAMATD($G(CODE),"RAMA")
 W "</td>"
 Q
 ;
MLYRAMATD(CODE,ID) ;
 W $$MLYRAMATD1(CODE,$G(ID))
 Q
MLYRAMATD1(CODE,ID) ;
 Q $$INP1($G(CODE),"RAMA",50,7,"LTR",$G(ID))
 ;
NKHZM ;
 D TD
  W $$^%W1DICT("NKHZM")
 W "</td>"
 I $$VIEW D  Q
 .D TDBOLD
 . W $$MLNKHZM(CODE)
 .W "</td>",!
 ;
 D NKHZMTD($G(CODE),"NKHZM",$$^%W1ALIGN)
 Q
 ;
 ;
NKHZMTD(CODE,ID,ALGN) ;
 W $$NKHZMTD1(CODE,$G(ID),$G(ALGN))
 Q
NKHZMTD1(CODE,ID,ALGN) ;
 N ST
 S ST="<td "_$G(ALGN)_" >"
  S ST=ST_$$INP1($G(CODE),"NKHZM",50,7,"LTR",$G(ID))
 S ST=ST_"</td>"
 Q ST
 ;
 ;
MAM ;
 D TD
  W $$^%W1DICT("MAM")
 W "</td>"
 D TDB
  W " id=""mamyn"" "
  W ">"
  D
  .N MAM S MAM=$$MLMAM(CODE)
  .W $$H2U^%L1FRM($$MAM1(MAM))
 W "</td>",!
 Q
 ;
MAM1(MAM)
 I MAM=0 Q "`l"
 Q "ok"
 ;
COMMENT D TD W $$^%W1DICT("COMMENT")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">"
  W "<textarea cols=""40"" rows=""2"" id=""COMMENT"" >"
   N RKV S RKV=$$RKV($C(CODE),"COMMENT")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W $$H2U^%L1FRM(RKV)
  W "</textarea>",!
 W "</td>"
 Q
 ;
MAZAV ;
 D TD
 W $$^%W1DICT("ITEMCLOSED")_"</td><td>"
 W "<input type=""checkbox"" id=""MAZAV"" "
 W $S($$P("MAZAV"):" checked=""checked""",1:"")_" />"
 W "</td>",!
 Q
 ;
ITRA ;
 N ITRA S ITRA="&nbsp;"
 D TD
 W $$^%W1DICT("ITRA")_"</td>"
 D ITRATD($G(CODE))
 Q
 ;
ITRATD(CODE) ;
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" >"
 I $G(CODE) D
 .I $$CHNITRA^W3PRM D
 ..W "<button onClick=""ChangeItra('"_CODE_"')"">"_$$^%W1DICT("CHANGEITRA")_"</button>",! 
 ..W $$NBSP^%L1FRM(3)
 .W "<span style=""color:"_$S(ITRA<0:"red",1:"green")
 .W ";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 .W $J($$MLITRA(CODE),2,2)_"</span>"
 W "</td>",!
 Q
 ;
LASTSPK(SPK) ;
 D TD N LASTSPK S LASTSPK="&nbsp;"
 W $$^%W1DICT("LASTSPK")_"</td>"
 D TDBOLD
  D
  .I '$G(SPK) W "&nbsp;" Q
  .W SPK_" "_$$H2U^%L1FRM($$NAME^W4SPK(SPK))
 W "</td>",!
 Q
 ;
LASTMHL(MHL) ;
 D TD N LASTMHL S LASTMHL="&nbsp;"
 W $$^%W1DICT("LASTMHL")_"</td>"
 D TDB W " align=""right"" id=""mhal"">"
 D
 .I '$G(MHL) W "&nbsp;" Q
 .W $J(MHL,2,2)
 W "</td>",!
 ;
 W "<td "_$$INV^%W1ALIGN_" >"
  W $$^%W1DICT("LASTMHZ")
 W "</td>",!
 ;
 D TDB W " align=""right"" id=""mhhz"">"
  W $J(MHL*$$KF(CODE),2,2)
 W "</td>",!
 Q
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDSTYLE) W " style="""_TDSTYLE_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR,TDSTYLE
 Q
 ;
INP(CODE,RKV,WD,SIZE,DIR,ID,FSZ) ;
 I $G(ID)="" S ID=RKV
 W $$INP1(CODE,$G(RKV),$G(WD),$G(SIZE),$G(DIR),$G(ID),$G(FSZ)) ;
 Q
 ;
INP1(CODE,RKV,WD,SIZE,DIR,ID,FSZ) ;
 N ST S ST=""
 ;
 I '$$VIEW,DIR'="D" D
 .S ST="<input type=""text"" maxlength="""_SIZE_""""
 .S ST=ST_" style=""width:"_WD
 .I $G(FSZ) S ST=ST_";font-size:"_$$^W3FSZ(FSZ)
 .I $$^%W1DIR="RTL",RKV'="EMAIL" S ST=ST_";text-align:right"
 .S ST=ST_""""
 .S ST=ST_" dir="""_DIR_""" name="""_RKV_""" id="""_ID_""""
 .S ST=ST_" onFocus=""this.select()"" "
 .S ST=ST_" onChange=""OnChangeInp('"_ID_"')"" "
 .
 .N RKVL S RKVL=$$RKV($G(CODE),RKV,DIR)
 .
 .D
 ..I RKV="MHMHIRA" S ST=ST_" value="""_$J(RKVL,2,2)_"""" Q
 ..S ST=ST_" value="""_$$H2U^%L1FRM(RKVL)_""""
 .S ST=ST_" />"
 ;
 I $$VIEW S ST=ST_"<a>"_$$RKV($G(CODE),0)_"<a/>"
 I '$D(NOTD) S ST=ST_"</td>"
 Q ST
 ;
 ;
INPC(RKV,WD,SIZE) ;
 I '$$VIEW D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onClick=""this.select()"""
 .N SUPER S SUPER=0 ;;I $$SUPER^W3PRM S SUPER=1
 .W " onChange=""Find('CODE','CODE','MLPAR','"_SUPER_"')"" ",!
 .W ">"
 ;
 I $$VIEW W "<a>"_$$RKV($G(CODE),0) ; NOM
 Q
 ;
 ;
RKV(CODE,FLD,DIR)
 N A I $G(FLD)=0 Q ""
 I $$P(FLD)'="",$$D(CODE) Q $$P(FLD)
 I $$P(FLD)'="" Q $$P(FLD)
 Q ""
 ;
 ;
P(FLD)
 I $G(FLD)="" Q ""
 N OK S OK=0
 I $G(CODE)="" Q ""
 I CODE["^" S CODE=$P(CODE,"^")
 I '$$D(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 ;;W "FLD="_FLD,!
 I $T(@("ML"_FLD))="" Q ""
 N A,P S A="S P=$$ML"_FLD_"(CODE)" X A
 Q P
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,PRM)
 D KILL^%W3DEB("W4MLPRT")
 D PUT^%W3DEB("W4MLPRT","PRM=PRM")
 S MC="CODE~NAME!H~GROUP~EMHZM~EMSFR~MIN~NKHZM~RAMA~MAZAV~MHMHIRA~WEIGHT~MHAL~CMNT"
 ;
 D ^%W1SV(MC,PRM)
 ;
 ;;S CODE=$TR(CODE," -","")
 S CODE=$TR(CODE," ","")
 I CODE=""!(CODE=0) Q "CODE!D"
 I $$NOCODE(CODE) Q "CODE!D"
 ;
 S CODE=$$FUNC^%UCASE(CODE)
 ;
 I $G(EMHZM)="" Q "EMHZM!D"
 I $G(EMSFR)="" Q "EMSFR!D"
 ;
 N KF S KF=$$NEWKF^W4PRT(EMHZM,EMSFR,1)
 I KF="" Q "NOKFMD;"_$G(@$$^W4GL("MLMIDA")@(EMHZM))_";"_$G(@$$^W4GL("MLMIDA")@(EMSFR))
 I '$L(GROUP) Q "GROUP!D"
 ;
 S NAME=$TR(NAME,"\*","/X")
 I NAME?.P Q "NAME!D"
 ;
 ;;I '$$ONEGLPAR D
 D
 .S @$$GLMLPAR@(CODE)=NAME
 .S $P(@$$GLMLPAR@(CODE,1),"\",1)=GROUP
 .S $P(@$$GLMLPAR@(CODE,1),"\",2)=EMHZM
 .S $P(@$$GLMLPAR@(CODE,1),"\",3)=EMSFR
 .S $P(@$$GLMLPAR@(CODE,1),"\",4)=MIN
 .S $P(@$$GLMLPAR@(CODE,1),"\",5)=NKHZM
 .S $P(@$$GLMLPAR@(CODE,1),"\",6)=MAZAV
 .S $P(@$$GLMLPAR@(CODE,1),"\",8)=RAMA ; -- W4SETMLY
 .S $P(@$$GLMLPAR@(CODE,1),"\",10)=MHAL
 .S $P(@$$GLMLPAR@(CODE,1),"\",12)=$$INVH^%L1FRM(CMNT)
 .
 .D SET^W4IDKMLP(CODE,NAME)
 .
 .I $$ONEGLPAR D
 ..D PUT^W4P(CODE,"WEIGHT",WEIGHT)
 ..D PUT^W4P(CODE,"MH",MHMHIRA)
 ..D PUT^W4P(CODE,"SUG",GROUP)
 ;
 D ^%S2GLSV($$GLMLPAR_"("""_CODE_""")",$$^W4FGIB)
 ;
 I $$ONEGLPAR D ^W4SETNMH(CODE,NAME,MHMHIRA)
 ;
 N TMPPRT S TMPPRT=$$^W4MAIN("TMPPRT")
 ;
 N SP,SPPRC S SP="" F  S SP=$O(@TMPPRT@(CODE,SP)) Q:SP=""  D
 .S SPPRC=$G(^(SP)) Q:SPPRC=""
 .N VL S VL=$J(SPPRC,$$DR,$$DR)
 .S DISCSP=$P(SPPRC,"\",3)
 .S $P(VL,"\",3)=DISCSP
 ;
 K @TMPPRT
 ;
 Q 1
 ;
N(RKV,PR) ;
 I $G(PR)="M"!$L(RKV),RKV'?1N.N Q 0
 Q 1
 ;
FREE(CD) ;
 S CD=$G(CD)
 N N
 F N=CD+1:1 Q:'$D(@$$GLMLPAR@($$^W4CDSUPR(N)))
 Q $$^W4CDSUPR(N)
 ;
VIEW(STAM) ;
 I $G(%ARG("VIEW")) Q 1
 I $G(%ARG("MODE"))="VW" Q 1
 Q 0
 ;
GLMLPAR(STAM) ;
 ;;I $$ONEGLPAR Q $$^W4GL("PAR")
 Q $$^W4GL("MLPAR")
 ;
D(CODE) ;
 Q $D(@$$GLMLPAR@(CODE))
 ;
MLNAME(CODE) ;
 I $G(CODE)="" Q 0
 I $$ONEGLPAR Q $P($G(@$$^W4GL("PAR")@(CODE)),"**")
 N ST S ST=$P($G(@$$GLMLPAR@(CODE)),"**")
 Q $TR(ST,"\*","/X")
 ;
MLSUGP(CODE) ;
 I $G(CODE)="" Q ""
 I $$ONEGLPAR Q $$SUG^W4P(CODE)
 N SUGP S SUGP=$P($G(@$$GLMLPAR@(CODE,1)),"\",1)
 Q SUGP
 ;
 ;
MLDEP(CODE) ;
 I $G(CODE)="" Q ""
 N SUGP S SUGP=$$MLSUGP(CODE)
 I 'SUGP Q ""
 Q $$MLDEPG(SUGP)
 ;
MLDEPG(SUGP) ;
 I $G(SUGP)="" Q ""
 N DEP S DEP=$P($G(@$$GLSUGP@(SUGP,1)),"\")
 I DEP="",$$ONEGLPAR!$$SUPER^W3PRM S DEP=$$DEPG^W4P(SUGP)
 N DEP1 S DEP1=""
 I 'DEP Q ""
 Q DEP
 ;
 ;
MLDEP1(DEP) ;
 I $G(DEP)="" Q ""
 Q $G(@$$GLMLDEP@(DEP))
 ;
GLMLDEP(STAM) ;
 Q $$^W4GL("MLDEP")
 ;
PRMAM(MLDEP)
 I '$G(MLDEP) Q 1
 N PRMAM
 S PRMAM=$P($G(@$$GLMLDEP@(MLDEP,1)),"\") S:PRMAM="" PRMAM=0
 Q PRMAM
 ;
MLMAM(CODE) ;
 I $G(CODE)?.P!($G(CODE)?1"0"."0") Q 1
 I $D(@$$^W4GL("W4NOMAM")@(CODE)) Q 0
 N MLDEP S MLDEP=$$MLDEP(CODE)
 I 'MLDEP Q 1
 N PRMAM
 S PRMAM=$$PRMAM(MLDEP)
 Q PRMAM
 ;
AHMAM(CODE) ;
 I $$MLMAM(CODE) Q $$MAM^W4PRM
 Q 0
 ;
MLITRA(CODE) ;
 Q $$^W4GETMLY(CODE)
 ;
 ;
SELMIDA(PRM,ID) ;
 W $$SELMIDA1($G(PRM),$G(ID))
 Q
SELMIDA1(PRM,ID) ;
 N ST 
 S ST="<select id="""_ID_""" "
   S ST=ST_" onChange=""OnChangeEm('"_ID_"')"" "
  S ST=ST_">"
   S ST=ST_$$SELEM(PRM)
  S ST=ST_"</select>"
 Q ST
 ;
SELEM(PRM) ;
 I $G(CODE)="" S CODE=$$GETP^%W1PRM("CODE")
 N OPT
 S OPT="<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>"
 N N,A S N="" F  S N=$O(@$$^W4GL("MLMIDA")@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S OPT=OPT_"<option value="""_N_""" "
 .N PPRM S PPRM=$$P(PRM)
 .I N=PPRM!(N=1&(PPRM="")) S OPT=OPT_" selected=""selected"" "
 .S OPT=OPT_"> "_$$H2U^%L1FRM(A)_"</option>"
 Q OPT
 ;
MLEMHZM(CODE) ;
 I $G(CODE)="" Q ""
 N EMHZM S EMHZM=$$EMHZ^W4PRT(CODE)
 S:EMHZM="" EMHZM=1
 Q EMHZM
 ;
MLEMSFR(CODE) ;
 I $G(CODE)="" Q ""
 N EMSFR S EMSFR=$$EMSFR^W4PRT(CODE)
 S:EMSFR="" EMSFR=1
 Q EMSFR
 ;
MLMIN(CODE) ;
 I $G(CODE)="" Q ""
 S MLMIN=$P($G(@$$GLMLPAR@(CODE,1)),"\",4)
 Q MLMIN
 ;
MLRAMA(CODE) ;
 I $G(CODE)="" Q ""
 S MLRAMA=$P($G(@$$GLMLPAR@(CODE,1)),"\",8)
 Q MLRAMA
 ;
MLNKHZM(CODE) ;
 I $G(CODE)="" Q ""
 Q $P($G(@$$GLMLPAR@(CODE,1)),"\",5)
 ;
MLMAZAV(CODE) ;
 I $G(CODE)="" Q 0
 Q $P($G(@$$GLMLPAR@(CODE,1)),"\",6)
 ;
MLMHER(CODE) ;
 I $G(CODE)="" Q 0
 N MHER S MHER=$P($G(@$$GLMLPAR@(CODE,1)),"\",7)
 I MHER'>0 S MHER=$$MHAL(CODE)
 Q $J(MHER,$$DR,$$DR)
 ;
INPMHAL(CODE) ;
 I $G(CODE)="" Q 0
 S MHAL=$$MHAL(CODE)
 Q $J(MHAL,$$DR,$$DR)
 ;
MLCMNT(CODE) ;
 I $G(CODE)="" Q ""
 Q $P($G(@$$GLMLPAR@(CODE,1)),"\",12)
 ;
TDB ;
 W "<td style=""font-weight:bold"" "
 Q
 ;
TDBOLD ;
 D TDB W ">"
 Q
 ;
SELDOC(VD) ;
 S TO="w4mlhist.jsp?JB="_JB_"&CODE="_$G(CODE)_"&VD="_VD
 W "<iframe id=""HIST"_VD_""" "
  W "style=""left:5%;height:120px;width:90%;font-size:"_$$^W3FSZ(11)_""" "
  W "src="""_TO_""">",!
 W "</iframe>",!
 Q
 ;
TEST(CODE) ;
 I $TR(CODE,"`","")?.A Q "FIND"
 I $$NOCODE(CODE) Q "FIND"
 S CODE=$$FUNC^%UCASE(CODE)
 I $D(@$$GLMLPAR@(CODE)) Q 1
 Q 0
 ;
NOCODE(CODE) ;
 N J,STP,OK S STP="!@#$%^&*()_+=\?'""/>< ",OK=1 ; -- WAS "-" TOO
 F J=1:1:$L(STP) I CODE[$E(STP,J) S OK=0 Q
 Q 'OK
 ;
LIST ;
 N DT,SUG,ORG,NOM,N,A
 I VD="IHB" S DOC="INVOICE"
 I VD="ITM" S DOC="DLVDOC"
 D DEFGLM^W4SETMLY
 S SUG="I"
 ;
 S DT="" F  S DT=$O(@GLML@(CODE,DT),-1) Q:DT=""  D
 .S ORG="" F  S ORG=$O(@GLML@(CODE,DT,SUG,ORG)) Q:ORG=""  D
 ..S NOM="" F  S NOM=$O(@GLML@(CODE,DT,SUG,ORG,VD,NOM),-1) Q:NOM=""  D
 ...S N="" F  S N=$O(@$$^W4GL("W4INP")@(ORG,VD,NOM,N)) Q:N=""  D
 ....S A=$G(^(N)) I $P(A,"\")=CODE D
 .....W "<option value="""_N_""">"
 ..... W $$^%W1DICT(DOC)_" : "_N
 ..... W "&nbsp;&nbsp;"
 ..... W $$^%W1DICT("SUPPLIER")_" : "_ORG_" "_$$H2U^%L1FRM($$NAME^W4SPK(ORG))
 ..... W "&nbsp;&nbsp;"
 ..... W $$^%W1DICT("PRICE")_" : "_$J($P(A,"\",3),2,2)
 ..... W "&nbsp;&nbsp;"
 ..... W $$^%W1DICT("QN")_" : "_$J($P(A,"\",4),2,2)
 .....W "</option>",!
 W "</select>",!
 Q
 ;
VWEM(CODE,PRM) ;
 N EM S EM=$$P(PRM)
 N EM1 S EM1=""
 I EM S EM1=$G(@$$^W4GL("MLMIDA")@(EM))
 W EM," ",$$H2U^%L1FRM(EM1)
 Q
 ;
GLSUGP(STAM) ;
 I $$ONEGLPAR Q $$^W4GL("PARSUG")
 Q $$^W4GL("MLSUGP")
 ;
ONEGLPAR(STAM) ;
 I $$ONEGLPAR^W3PRM Q 1
 Q 0
 ;
MHAL(CODE) ;
 I $G(CODE)="" Q ""
 N MHAL
 I $$MHAL^W3PRM S MHAL=$P($G(@$$GLMLPAR@(CODE,1)),"\",10) Q MHAL
 S MHAL=$J($$MHL(CODE)*(100-$$DISC(CODE))*.01,$$DR,$$DR)
 S $P(@$$GLMLPAR@(CODE,1),"\",10)=MHAL
 Q MHAL
 ;
MHL(CODE) ;
 I $G(CODE)="" Q ""
 N MHAL
 I $D(@$$GLEZM^W4EZM@(CODE))>9,$$MANOT^W4EZM(CODE) D  Q $J(MHAL,$$DR,$$DR)
 .S MHAL=$$TOTALUT^W4EZMIDK(CODE)/$$MANOT^W4EZM(CODE)
 ;
 N A S A=$$^W4MLLAST(CODE,+$H)
 Q $J($P(A,"\"),$$DR,$$DR)
 ;
 ;
DISC(CODE) ;
 N A S A=$$^W4MLLAST(CODE,+$H)
 Q $J($P(A,"\",6),2,2)
 ;
SPK(CODE) ;
 I $G(CODE)="" Q ""
 N A S A=$$^W4MLLAST(CODE,+$H)
 Q $P(A,"\",2)
 ;
AHREVAH(CODE) ;
 I $G(CODE)="" Q ""
 N SUGP S SUGP=$$MLSUGP(CODE) I SUGP="" Q ""
 Q $$AHRVG(SUGP)
 ;
AHRVG(SUGP) ;
 I $G(SUGP)="" Q ""
 N GLSUGP S GLSUGP=$$GLSUGP
 N AHRV I '$$ONEGLPAR S AHRV=$P($G(@GLSUGP@(SUGP,1)),"\",2)
 I $$ONEGLPAR S AHRV=$P($G(@GLSUGP@(SUGP,1)),"\",10)
 Q $J(AHRV,2,2)
 ;
SHOWAHREVAH(CODE)
 D TD
 I $$MHAL^W3PRM D
 . W $$^%W1DICT("COSTINGPRICE")
 .W $$NBSP^%L1FRM(5)
 .D
 ..N VL S VL="" I $G(CODE)'="" S VL=$$INPMHAL(CODE)
 ..W "<input type=""text"" id=""MHAL"" size=""8"" value="""_VL_""" "
 .. W " onFocus=""this.select() "" "
 .. W " onChange=""ChangeMhAl()"" "
 ..W "/>"
 ;
 W $$NBSP^%L1FRM(5)
  W $$^%W1DICT("PROFITPERCENT")
 W "</td>",!
 D TDB W " id=""AH"" >"
 D
 .I $G(CODE)="" W "&nbsp;" Q
 .W $$AHREVAH(CODE)
 W "</td>",!
 Q
 ;
 ;
SHOWMHEREH(CODE) ;
 D TD
  W $$^%W1DICT("VALUEPRICE")
 W "</td>",!
 D TDBOLD
 I $G(CODE)="" W "&nbsp;"
 E  W $$MLMHER(CODE)
 W "</td>",!
 Q
 ;
MHMUMLAZ(CODE) ;
 I $G(CODE)="" Q ""
 N MHAL S MHAL=$$MHAL(CODE)
 N AHRV S AHRV=$$AHREVAH(CODE)
 N AHMAM S AHMAM=$$MAMD^W4L(+$H)
 I '$$MLMAM(CODE) S AHMAM=0
 N MHMUML S MHMUML=$J(MHAL*(100+AHRV)*(100+AHMAM)*.0001,$$DR,$$DR)
 Q MHMUML
 ;
SHOWMHMUMLAZ(CODE) ;
 D TD
  W $$^%W1DICT("RECOMMENDEDPRICE")
 W "</td>",!
 ;
 D TDB
 W ">"
 N VL S VL="" I $G(CODE)'="" S VL=$$MHMUMLAZ(CODE)
 W "<input id=""MUMLAZ"" type=""text"" readonly=""readonly"" " 
  W " size=""8"" "
  W " value="""_VL_""" "
 W "/>"
 W "</td>",!
 Q
 ;
MLMHMHIRA(CODE) ;
 I $G(CODE)="" Q ""
 Q $$MH^W4P(CODE)
 ;
SHOWMHMHIRA(CODE) ;
 S TDSTYLE="font-weight:bold"
 D TD
  W $$^%W1DICT("CLIENTPRICE")
 W "</td>",!
 ;
 W "<td>"
 I $$ONEGLPAR D
 .N FSZ S FSZ=12 I $$SUPER^W3PRM S FSZ=18
 .N NOTD S NOTD="" D INP($G(CODE),"MHMHIRA",160,8,"LTR","",FSZ)
 .W $$NBSP^%L1FRM(5)
 .W "<input type=""button"" value="""_$$^%W1DICT("RECOMMENDED2CUST")_""" "
 . W " onClick=""Recommended2Cust()"" "
 .W " />"
 ;
 I '$$ONEGLPAR D
 .I $L($G(CODE)) W $J($$MH^W4P(CODE),2,2)
 .I '$L($G(CODE)) W "&nbsp;"
 W "</td>",!
 Q
 ;
 ;
CHGR(GR) ;
 N MHAL S MHAL=""
 I GR[";" S MHAL=$P(GR,";",2),GR=$P(GR,";")
 N CODE S CODE=$$GETP^%W1PRM("CODE")
 I MHAL="" S MHAL=$$MHAL(CODE)
 N AH,MUML
 N MLDEP S MLDEP=$$MLDEPG(GR)
 N MAMYN S MAMYN=$$PRMAM(MLDEP)
 N MAM S MAM=0
 I MAMYN S MAM=$$MAM^W4PRM
 ;
 S AH=$$AHRVG(GR)
 S MUML=$J(MHAL*(100+AH)*(100+MAM)*.0001,$$DR,$$DR)
 Q AH_";"_MUML_";"_$S(MLDEP="":"",1:$$CLWEB^%L1FRM($$MLDEP1(MLDEP)))_";"_$$MAM1(MAMYN)
 ;
DR() ; 
 Q 4 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLPRTB
W4MLPRTB ; [ 29.07.18 17:54 ] [ 11.06.17 19:20 ] [ 04.07.16 17:31 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 ;
 I $L($G(SRCH)) D
 .I $E(SRCH,1,2)="&#" D
 ..S SRCH=$$U2H^%L1FRM(SRCH)
 ;
 W "<div align=""center"" >",!
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
  W " width=""95%"" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 ;
 W "<th width=""50px"">&nbsp;</th>"
 W "<th width=""60px"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""150px"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("GROUP")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("EMHZM")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("EMSFR")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("SPLAST")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("MHALAST")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("MLYMINIMUM")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("NKHZM")_"</th>"
 W "<th width=""120px"">"_$$^%W1DICT("MLYRAMA")_"</th>"
 W "<th width=""60px"">"_$$^%W1DICT("PAIL")_"</th>"
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 ;
 D CRTMPPAR
 ;
 S K="",I=0 F  S K=$O(@$$^W4MAIN("TMPPAR")@(K)) Q:K=""  D
 .S N=$G(^(K)) Q:N=""
 .W "<tr id=""tr"_N_""">" S I=I+1
 . W $$STPAR(N)
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GROUP ;
 W $$GROUP1($G(N))
 Q
 ;
GROUP1(N) ;
 N ST S ST="<select "
 I '$D(GRSEL)!$D(GRSEL("CDKV")) D
 .S ST=ST_" id=""arrgrid"" onChange=""ChangeGroup(this)"""
 I $D(GRSEL),'$D(GRSEL("CDKV")),$D(N) D
 .S ST=ST_" id=""gr"_N_""" onChange=""OnChange('"_N_"')"""
 S ST=ST_" >"
 ;
 I '$D(GRSELPAR) D
 .S ST=ST_"<option value=""ALL"" >"_$$^%W1DICT("ALLGROUPS")_"</option>"
 ;
 S ST=ST_"<option value=""NO"" >"_$$^%W1DICT("NOGROUP")_"</option>"
 ;
 N NN,II S NN="",II=0 F  S NN=$O(@$$GLSUGP@(NN)) Q:NN=""  D
 .S II=II+1
 .S ST=ST_"<option value="""_NN_""""
 .I '$D(GRSEL),$D(FIRSTGR),II=1 S ST=ST_" selected=""selected"""
 .I $G(GRSEL),NN=GRSEL S ST=ST_" selected=""selected"""
 .S ST=ST_" >"_NN_" "_$$H2U^%L1FRM($G(@$$GLSUGP@(NN)))_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
SELSORT ;
 W "<select id=""sort"" onChange=""ChangeSort()"" "
 W ">"
  W "<option value=""0"" "
   I +$G(%ARG("SORT"))=0 W "selected=""selected"" "
  W ">"_$$^%W1DICT("SORTPERITEMCODE")_"</option>",!
  W "<option value=""1"" "
   I +$G(%ARG("SORT"))=1 W "selected=""selected"" "
  W ">"_$$^%W1DICT("SORTPERABC")_"</option>",!
 W "</select>",!
 Q
 ;
SRCH(SRCH,PAR) ;
 Q $$^W1SRCH(SRCH,PAR,"","ML")
 ;
FIRSTGR(STAM) ;
 Q $$^W4FRSMLG
 ;
SAVE(PRM) ;
 N CD,NM,NML,MH,DESC,GR,SHOW,CLR,WEIGHT,CHN,PRINTER
 S PRM=$$CLEAR^%L1FRM(PRM)
 S CD=$P(PRM,"~") I CD="" Q 0
 S CD=$$FUNC^%UCASE(CD)
 ;
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) D  Q 1
 .K ^[$$^W3MAIN]TMPDEL(JB,CD)
 .;;D ^W3DEL(CD)
 .K @$$GLMLPAR@(CD)
 ;
 Q $$SAVE^W4MLPRT(PRM)
 ;
 ;
SAVEND K ^[$$^W3MAIN]TMPLAST(JB)
 K ^[$$^W3MAIN]TMPDEL(JB)
 Q
 ;
DELROW(CD) ;
 Q:'$G(JB)
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) K ^(CD) Q
 S ^[$$^W3MAIN]TMPDEL(JB,CD)=$G(@$$GLMLPAR@(CD))
 Q
 ;
 ;
NEWCOD(KV) ;
 N A S A=$O(@$$GLMLPAR@(9999999),-1)+1
 N LCD S LCD="" I $G(KV) D
 .N N S N="" F  S N=$O(@$$GLMLPAR@(N)) Q:N=""  D
 ..I $$MLSUGP^W4MLPRT(N)=KV S LCD=N
 ;
 I LCD,'$D(@$$GLMLPAR@(LCD+1)) S A=LCD+1
 ;
 I A'>$G(^[$$^W3MAIN]TMPLAST(JB)) D
 .S A=^[$$^W3MAIN]TMPLAST(JB)+1
 S ^[$$^W3MAIN]TMPLAST(JB)=A
 Q A
 ;
 ;
CRTMPPAR ;
 N N,I,K,KV,IND
 S KV=$G(%ARG("CDKV"))
 S K=0
 K @$$^W4MAIN("TMPPAR")
 ;
 I $G(%ARG("SORT"))=1 D  Q
 .K @$$^W4MAIN("VRM")
 .N N,I
 .S N="",I=0 F I=1:1 S N=$O(@$$GLMLPAR@(N)) Q:N=""  S NM=$G(^(N)) D
 ..S IND=$$INVH^%L1FRM(NM)
 ..S IND=$$ENG^%L1FRM(IND,10)_$TR($J(I,5)," ",0)
 ..S @$$^W4MAIN("VRM")@(IND)=N
 .;
 .S IND="",I=0 F  S IND=$O(@$$^W4MAIN("VRM")@(IND)) Q:IND=""  D
 ..S N=$G(^(IND)) Q:N=""
 ..D SETTMPPAR(N)
 ;
 S N="" F  S N=$O(@$$GLMLPAR@(N)) Q:N=""  D SETTMPPAR(N)
 Q
 ;
SETTMPPAR(PAR) ;
 N SUG S SUG=$$MLSUGP^W4MLPRT(PAR)
 I KV,KV'=SUG Q
 I KV="NO",SUG'?.P,SUG'="NO",SUG'="ALL",SUG'=0 Q
 I $L($G(SRCH)),'$$SRCH(SRCH,PAR) Q
 S K=K+1
 S @$$^W4MAIN("TMPPAR")@(K)=PAR
 Q
 ;
ITEMNAME(PAR) ;
 N ST
 S ST="<table dir="""_$$^%W1DIR_""" align=""center"">"
 S ST=ST_"<tr><td>"
 S ST=ST_"<input id=""name"_PAR_""" type=""text"" size=""24"" "
 S ST=ST_" maxlength="""_$$MAXITNAME^W3PRM_""" "
 S ST=ST_" value="""_$$H2U^%L1FRM($$MLNAME^W4MLPRT(PAR))_""" "
 S ST=ST_" onChange=""OnChange('"_PAR_"')"" "
 S ST=ST_" onKeyUp=""OnChange('"_PAR_"')"" />"
 S ST=ST_"</td></tr></table>"
 Q ST
 ;
CLOSEPAR(PAR) ;
 Q $$MLMAZAV^W4MLPRT(PAR)
 ;
GLMLPAR(STAM) ;
 Q $$GLMLPAR^W4MLPRT
 ;
GLSUGP(STAM) ;
 Q $$GLSUGP^W4MLPRT
 ;
 ;
STPAR(N) ;
 N CDKV S CDKV=$G(%ARG("CDKV"))
 I N[";" S CDKV=$P(N,";",2),N=$P(N,";")
 N ST
 S ST="<td align=""center"">" ; -------- [ + - ]
 S ST=ST_"<span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
 S ST=ST_" onClick=""InsertRow('"_N_"')"" > + </span><br />"
 S ST=ST_"<span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
 S ST=ST_" onClick=""DeleteRow('"_N_"')"" > - </span>"
 S ST=ST_"</td>"
 
 S ST=ST_"<td id=""cd"_N_""" style=""text-align:center;font-weight:bold"" >"
 S ST=ST_"&nbsp;"_N_"&nbsp;<br>"
  S ST=ST_$$BTN^W4BUTTON("showcard"_N,$$^%W1DICT("SHOWITEMCARD"),"ShowItemCard('"_N_"')","color:green",",22,,120")
  S ST=ST_"<br>"
 S ST=ST_"</td>"
 
 S ST=ST_"<td align=""center"">"
  S ST=ST_$$ITEMNAME(N)
 S ST=ST_"</td>"
 
 S ST=ST_"<td align=""center"">" N GRSEL,GRSELPAR
  S GRSEL=$$MLSUGP^W4MLPRT(N),GRSELPAR=""
  I GRSEL="",CDKV S GRSEL=CDKV
  S ST=ST_$$GROUP1(N)
 S ST=ST_"</td>"
 ;
 N MLPRTB S MLPRTB=""
 ;
 N EMHZ,EMSF
 S EMHZ=$$EMTD1^W4MLPRT(N,"EMHZM","emhzm-"_N)
 S EMSF=$$EMTD1^W4MLPRT(N,"EMSFR","emsfr-"_N)
 S ST=ST_EMHZ
 S ST=ST_EMSF
 ;
 S ST=ST_"<td align=""center"">"
  N SPK,SPK1 S (SPK,SPK1)=""
  S SPK=$$SPK^W4MLPRT(N) I SPK'?.P S SPK1=$$H2U^%L1FRM($$NAME^W4SPK(SPK))
  S ST=ST_SPK_" "_SPK1
 S ST=ST_"</td>"
 
 S ST=ST_"<td align=""center"">"
 S ST=ST_$J($$MHAL^W4MLPRT(N),2,2)
 S ST=ST_"</td>"
 
 S ST=ST_$$MLYMINTD1^W4MLPRT(N,"mlmin-"_N," align=""center"" ")
 
 S ST=ST_$$NKHZMTD1^W4MLPRT(N,"nkhzm-"_N," align=""center"" ")
 
 S ST=ST_"<td align=""center"">"
 S ST=ST_$$MLYRAMATD1^W4MLPRT(N,"rama-"_N)
 
 N CHECKED
 S CHECKED=1
 I $$CLOSEPAR(N)=1 S CHECKED=0
 S ST=ST_"<td align=""center"">"
 S ST=ST_" <input name=""show"" type=""checkbox"" id=""show"_N_""""
 I CHECKED S ST=ST_" checked=""checked"""
  S ST=ST_" onClick=""OnChange('"_N_"')"" />"
 S ST=ST_"</td>"
 
 S ST=ST_"<td align=""center"">"
  S ST=ST_" <input name=""chn"" id=""chn"_N_""" type=""checkbox"" "
  S ST=ST_" disabled=""disabled"" />"
 S ST=ST_"</td>"
 ;
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLQNMH
W4MLQNMH(STAM) ; [ 21.05.17 12:40 ] [ 
 Q +$G(@$$^W4PRM@("MLQNMH"))

W4MLRES0
W4MLREST ; [ 19.12.19 11:17 ] [ 27.11.16 14:55 ] [ 13.10.16 03:46 ] 
 Q
 ;
FREEDOC ;-- TM LELO HSB ?
 N GLINP S GLINP=$$^W4GL("W4INP")
 N N,N1,OK,DT,VD,VD1 S N=""
 K @$$^W4GL("W4FREEDOC")
 S SPK=""  F  S SPK=$O(@GLINP@(SPK)) Q:SPK=""  D
 .F VD="ITM","ITZ" D
 ..F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ...S DT=$$^%L1DC($P($G(^(N)),"\",4),3)
 ...S OK=0
 ...
 ...S N1="" F  S N1=$O(@GLINP@(SPK,"IHB",N1)) Q:N1=""  D  Q:OK
 ....S VD1=VD
 ....I $D(@GLINP@(SPK,"IHB",N1,VD,N)) S OK=N1
 ....I $D(@GLINP@(SPK,"IHB",N1,VD,-N)) S OK=N1,VD1="ITZ"
 ...
 ...I OK S @GLINP@(SPK,VD1,N,"IHB")=OK
 ...
 ...I VD="ITZ" D
 ....S N1="" F  S N1=$O(@GLINP@(SPK,"IHBZ",N1)) Q:N1=""  D  Q:OK
 .....I $D(@GLINP@(SPK,"IHBZ",N1,VD,N)) S OK=N1
 ....I OK S @GLINP@(SPK,VD,N,"IHBZ")=OK
 ...
 ...I 'OK S @$$^W4GL("W4FREEDOC")@(SPK,VD,N)=DT_"\"_$ZD($H,"DD.MM.YY  24:60")_"\R"
 Q
 ;
 ;
DIR ;
 N GLDIR S GLDIR=$$^W4INPDIR
 N GLDIRI S GLDIRI=$$I^W4INPDIR
 N GLINP S GLINP=$$^W4GL("W4INP")
 N N,VD,SPK,DT
 K @GLDIR,@GLDIRI
 S SPK=""  F  S SPK=$O(@GLINP@(SPK)) Q:SPK=""  D
 .S VD="" F  S VD=$O(@GLINP@(SPK,VD)) Q:VD=""  D
 ..S N="" F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ...S DT=$$^%L1DC($P($G(^(N)),"\",4),3)
 ...D SET^W4INPDIR(DT,SPK,VD,N)
 Q
 ;
 ;
DIROU ;
 N N,N1,DTI,HD,DIR,DIRD
 S DIR=$$^W4GL("W4DIR")
 S DIRD=$$^W4GL("W4DIRD")
 K @DIR,@DIRD
 S N="" F  S N=$O(@$$^W4GL("W4DOC")@(N)) Q:N=""  D
 .N HD S HD=$G(^(N))
 .S DT=$$^%L1DC($P(HD,"\",4),3)
 .S DATI=$P(HD,"\",8)
 .S TIME=$P(DATI,"  ",2),DATI=$P(DATI,"  ")
 .S DTI=$$^%L1DC(DATI,3)
 .S N1=9999999 F  S N1=$O(@$$^W4GL("W4DOC")@(N,N1)) Q:N1=""  D
 ..I N1?1U.E D
 ...S ND=$G(^(N1)) Q:'ND
 ...S @DIR@(N1,ND)=N
 ...S @DIRD@(DT,N)=DTI_","_(TIME*3600+($P(TIME,":",2)*60))
 Q
 ;
 ;
MLY ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N VD,SPK,LKH,DT,N,GLML,GLMLY,GLSP,GLINP,HZM,DAT
 D DEFGLM^W4SETMLY
 N GLINP S GLINP=$$^W4GL("W4INP")
 K @GLML,@GLSP
 ;
 I '$D(W4RESTML) K @GLMLY
 ;
 I $G(DISP) W !,"^W4INP",!!
 S SPK=""  F  S SPK=$O(@GLINP@(SPK)) Q:SPK=""  D
 .I $G(DISP) W "SPK="_SPK,!
 .S VD="" F  S VD=$O(@GLINP@(SPK,VD)) Q:VD=""  I VD'="IHZ",VD'="IHBI" D
 ..S N="" F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ...N A S A=$G(^(N))
 ...I VD="IHB",$D(^(N,"ITM")) Q
 ...S DT=$$^%L1DC($P(A,"\",4),3)
 ...D ^W4SETMLY(DT,VD,SPK,N)
 ;
 D DIR
 ;
 I $G(DISP) W !!,"^W4DOC",!!
 S N="" F  S N=$O(@$$^W4GL("W4DOC")@(N)) Q:N=""  D
 .N HD S HD=$G(^(N))
 .S DT=$$^%L1DC($P(HD,"\",4),3)
 .S VD="OUT",LKH=$P(HD,"\") Q:'$$^W4ISCDLK(LKH)
 .D ^W4SETMLY(DT,VD,LKH,N)
 ;
 I $G(DISP) W !!,"^P1HZ",!!
 N DAT,DTHZ
 S HZM="" F  S HZM=$O(@$$^W4GL("P1HZ")@(HZM)) Q:HZM=""  I HZM>0 D
 .I $G(DISP) I '(HZM#500) W HZM,!
 .S DAT=$$^%L1DC($$DATK^W4HZMST(HZM),2) Q:DAT=""
 .S DTHZ=$$^%L1DC(DAT,4) Q:'DTHZ
 .N W4MLREST S W4MLREST=""
 .D PLU1^W4HZMPC
 ;
 I $G(DISP) W !!,"^W4IDK",!!
 S N="" F  S N=$O(@$$^W4GL("W4IDK")@(N)) Q:N=""  D
 .N HD S HD=$G(^(N))
 .S DT=$$^%L1DC($P(HD,"\",4),3)
 .S VD="ITK",SPK=$P(HD,"\") S:SPK="" SPK=0
 .D ^W4SETMLY(DT,VD,SPK,N)
 ;
 D PUT^%W1PRM("MLMLREST",1)
 Q
 ;
MLJ(JB) ;
 D MLY
 Q
 ;
 ;
ML ; W4MLY --> W4ML,W4MLS,W4MLSP
 D PUT^%W1PRM("MLMLREST",0)
 N DT,PAR,SUG,ORG,VD,NOM,GLMLY,GLML,GLMLS,GLSP,A,J
 D DEFGLM^W4SETMLY
 K @GLML,@GLMLS,@GLSP
 ;
 S DT="" F  S DT=$O(@GLMLY@(DT)) Q:DT=""  D
 .S PAR="" F  S PAR=$O(@GLMLY@(DT,PAR)) Q:PAR=""  D
 ..S SUG="" F  S SUG=$O(@GLMLY@(DT,PAR,SUG)) Q:SUG=""  D
 ...S ORG="" F  S ORG=$O(@GLMLY@(DT,PAR,SUG,ORG)) Q:ORG=""  D
 ....S VD="" F  S VD=$O(@GLMLY@(DT,PAR,SUG,ORG,VD)) Q:VD=""  D
 .....S NOM="" F  S NOM=$O(@GLMLY@(DT,PAR,SUG,ORG,VD,NOM)) Q:NOM=""  D
 ......S QNM=+$G(^(NOM)),NR=$$NR^W4SETMLY(VD)
 ......D SETML^W4SETMLY(NR,DT,PAR,SUG,ORG,VD,NOM,QNM)
 ;
 D PUT^%W1PRM("MLMLREST",1)
 Q
 ;
 ;
KF(PAR,EM2)
 Q 1
 ;
INP(VDOC) ;
 I $E(VDOC)="I" Q 1
 Q 0
 
 

W4MLREST
W4MLREST ; [ 19.12.19 10:46 ] [ 27.11.16 14:55 ] [ 13.10.16 03:46 ] 
 Q
 ;
FREEDOC ;-- TM LELO HSB ?
 N GLINP S GLINP=$$^W4GL("W4INP")
 N N,N1,OK,DT,VD,VD1 S N=""
 K @$$^W4GL("W4FREEDOC")
 S SPK=""  F  S SPK=$O(@GLINP@(SPK)) Q:SPK=""  D
 .F VD="ITM","ITZ" D
 ..F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ...S DT=$$^%L1DC($P($G(^(N)),"\",4),3)
 ...S OK=0
 ...
 ...S N1="" F  S N1=$O(@GLINP@(SPK,"IHB",N1)) Q:N1=""  D  Q:OK
 ....S VD1=VD
 ....I $D(@GLINP@(SPK,"IHB",N1,VD,N)) S OK=N1
 ....I $D(@GLINP@(SPK,"IHB",N1,VD,-N)) S OK=N1,VD1="ITZ"
 ...
 ...I OK S @GLINP@(SPK,VD1,N,"IHB")=OK
 ...
 ...I VD="ITZ" D
 ....S N1="" F  S N1=$O(@GLINP@(SPK,"IHBZ",N1)) Q:N1=""  D  Q:OK
 .....I $D(@GLINP@(SPK,"IHBZ",N1,VD,N)) S OK=N1
 ....I OK S @GLINP@(SPK,VD,N,"IHBZ")=OK
 ...
 ...I 'OK S @$$^W4GL("W4FREEDOC")@(SPK,VD,N)=DT_"\"_$ZD($H,"DD.MM.YY  24:60")_"\R"
 Q
 ;
 ;
DIR ;
 N GLDIR S GLDIR=$$^W4INPDIR
 N GLDIRI S GLDIRI=$$I^W4INPDIR
 N GLINP S GLINP=$$^W4GL("W4INP")
 N N,VD,SPK,DT
 K @GLDIR,@GLDIRI
 S SPK=""  F  S SPK=$O(@GLINP@(SPK)) Q:SPK=""  D
 .S VD="" F  S VD=$O(@GLINP@(SPK,VD)) Q:VD=""  D
 ..S N="" F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ...S DT=$$^%L1DC($P($G(^(N)),"\",4),3)
 ...D SET^W4INPDIR(DT,SPK,VD,N)
 Q
 ;
 ;
DIROU ;
 N N,N1,DTI,HD,DIR,DIRD
 S DIR=$$^W4GL("W4DIR")
 S DIRD=$$^W4GL("W4DIRD")
 K @DIR,@DIRD
 S N="" F  S N=$O(@$$^W4GL("W4DOC")@(N)) Q:N=""  D
 .N HD S HD=$G(^(N))
 .S DT=$$^%L1DC($P(HD,"\",4),3)
 .S DATI=$P(HD,"\",8)
 .S TIME=$P(DATI,"  ",2),DATI=$P(DATI,"  ")
 .S DTI=$$^%L1DC(DATI,3)
 .S N1=9999999 F  S N1=$O(@$$^W4GL("W4DOC")@(N,N1)) Q:N1=""  D
 ..I N1?1U.E D
 ...S ND=$G(^(N1)) Q:'ND
 ...S @DIR@(N1,ND)=N
 ...S @DIRD@(DT,N)=DTI_","_(TIME*3600+($P(TIME,":",2)*60))
 Q
 ;
 ;
MLY ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N VD,SPK,LKH,DT,N,GLML,GLMLY,GLSP,GLINP,HZM,DAT
 D DEFGLM^W4SETMLY
 N GLINP S GLINP=$$^W4GL("W4INP")
 K @GLML,@GLSP
 ;
 I '$D(W4RESTML) K @GLMLY
 ;
 I $G(DISP) W !,"^W4INP",!!
 S SPK=""  F  S SPK=$O(@GLINP@(SPK)) Q:SPK=""  D
 .I $G(DISP) W "SPK="_SPK,!
 .S VD="" F  S VD=$O(@GLINP@(SPK,VD)) Q:VD=""  I VD'="IHZ",VD'="IHBI" D
 ..S N="" F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ...N A S A=$G(^(N))
 ...I VD="IHB",$D(^(N,"ITM")) Q
 ...S DT=$$^%L1DC($P(A,"\",4),3)
 ...D ^W4SETMLY(DT,VD,SPK,N)
 ;
 D DIR
 ;
 I $G(DISP) W !!,"^W4DOC",!!
 S N="" F  S N=$O(@$$^W4GL("W4DOC")@(N)) Q:N=""  D
 .N HD S HD=$G(^(N))
 .S DT=$$^%L1DC($P(HD,"\",4),3)
 .S VD="OUT",LKH=$P(HD,"\") Q:'$$^W4ISCDLK(LKH)
 .D ^W4SETMLY(DT,VD,LKH,N)
 ;
 I $G(DISP) W !!,"^P1HZ",!!
 N DAT,DTHZ
 S HZM="" F  S HZM=$O(@$$^W4GL("P1HZ")@(HZM)) Q:HZM=""  I HZM>0 D
 .I $G(DISP) I '(HZM#500) W HZM,!
 .S DAT=$$^%L1DC($$DATK^W4HZMST(HZM),2) Q:DAT=""
 .S DTHZ=$$^%L1DC(DAT,4) Q:'DTHZ
 .N W4MLREST S W4MLREST=""
 .D PLU1^W4HZMPC
 ;
 I $G(DISP) W !!,"^W4IDK",!!
 S N="" F  S N=$O(@$$^W4GL("W4IDK")@(N)) Q:N=""  D
 .N HD S HD=$G(^(N))
 .S DT=$$^%L1DC($P(HD,"\",4),3)
 .S VD="ITK",SPK=$P(HD,"\") S:SPK="" SPK=0
 .D ^W4SETMLY(DT,VD,SPK,N)
 ;
 D PUT^%W1PRM("MLMLREST",1)
 Q
 ;
MLJ(JB) ;
 D MLY
 Q
 ;
 ;
ML ; W4MLY --> W4ML,W4MLS,W4MLSP
 D PUT^%W1PRM("MLMLREST",0)
 N DT,PAR,SUG,ORG,VD,NOM,GLMLY,GLML,GLMLS,GLSP,A,J
 D DEFGLM^W4SETMLY
 K @GLML,@GLMLS,@GLSP
 ;
 S DT="" F  S DT=$O(@GLMLY@(DT)) Q:DT=""  D
 .S PAR="" F  S PAR=$O(@GLMLY@(DT,PAR)) Q:PAR=""  D
 ..S SUG="" F  S SUG=$O(@GLMLY@(DT,PAR,SUG)) Q:SUG=""  D
 ...S ORG="" F  S ORG=$O(@GLMLY@(DT,PAR,SUG,ORG)) Q:ORG=""  D
 ....S VD="" F  S VD=$O(@GLMLY@(DT,PAR,SUG,ORG,VD)) Q:VD=""  D
 .....S NOM="" F  S NOM=$O(@GLMLY@(DT,PAR,SUG,ORG,VD,NOM)) Q:NOM=""  D
 ......S QNM=+$G(^(NOM)),NR=$$NR^W4SETMLY(VD)
 ......D SETML^W4SETMLY(NR,DT,PAR,SUG,ORG,VD,NOM,QNM)
 ;
 D RESTMH
 ;
 D PUT^%W1PRM("MLMLREST",1)
 Q
 ;
 ;
RESTMH ;
 N GLSP S GLSP=$$^W4GL("W4MLSP")
 N ORG,PAR,DT,GLSPKMH
 S GLSPKMH=$$^W4GL("MLSPKMH")
 S ORG="" F  S ORG=$O(@GLSPKMH@(ORG)) Q:ORG=""  D
 .S PAR="" F  S PAR=$O(@GLSPKMH@(ORG,PAR)) Q:PAR=""  D
 ..S DT="" F  S DT=$O(@GLSPKMH@(ORG,PAR,DT)) Q:DT=""  D
 ...S VL=$G(^(DT))
 ...S $P(@GLSP@(ORG,"MH",PAR,DT),"\")=+VL
 ...S $P(@GLSP@(ORG,"MH",PAR,DT),"\",4)=$P(VL,"\",3)
 Q
 ;
KF(PAR,EM2)
 Q 1
 ;
INP(VDOC) ;
 I $E(VDOC)="I" Q 1
 Q 0
 
 
 
 
 
 

W4MLSUGP
W4MLSUGP(PRM) ; [ 05.08.14 07:23 ] [
 I $P(PRM,";",3)="" Q "NODEP"
 I $P(PRM,";",4)="" Q "NONAME"
 Q 1

W4MLTNIN
W4MLTNIN ; DOCH HACHNASOT MLAY [ 23.03.16 09:03 ] [ 22.03.16 19:02 ] [ 21.03.16 13:12 ] 
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="MLTNIN"
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="GET^W4MLTNIN"
 Q
 ;
 ;
GET ;
 N VD,SPK,LKH,DT,N,GLML,GLMLY,GLSP,GLINP,HZM,DAT,SP
 D DEFGLM^W4SETMLY
 N GLINP S GLINP=$$^W4GL("W4INP")
 K @GLML,@GLSP
 ;
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 S PRTN=$$^%W1JB
 ;
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 I '$G(ADKVZ) S ADKVZ=9999999
 I '$G(ADDEP) S ADDEP=9999999
 ;
 I $G(SPK) D FRMVRM(SPK) Q
 S SP=""  F  S SP=$O(@GLINP@(SP)) Q:SP=""  D FRMVRM(SP)
 Q
 ;
SHEM(PAR)
 I $G(PAR)="" Q ""
 N SHEM
 S SHEM=$$MLNAME^W4MLPRT(PAR)
 Q SHEM
 ;
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4MLTNQ-CHKPRM","MEDEP=MEDEP & ADDEP=ADDEP & MEDAT=MEDAT & ADDAT=ADDAT")
 I '$$DATVLD(MEDAT) Q "0;DATENOTVALID;;MEDATID"_$$DATVLD(MEDAT)
 I '$$DATVLD(ADDAT) Q "0;DATENOTVALID;;ADDATID"_$$DATVLD(ADDAT)
 I $$^%L1DC(ADDAT,3)<$$^%L1DC(MEDAT,3) Q "0;RANGENOTVALID;;MEDATIDdd"
 I MEDEP>ADDEP Q "0;RANGENOTVALID;;MEDEP"
 I MEKVZ>ADKVZ Q "0;RANGENOTVALID;;MEKVZ"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4MLTNIN"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N PAR S PAR=$P(A,"\",1)
 W " style=""cursor:pointer;color:black;font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowItemReport('"_PAR_"','"_$G(%ARG("MEDAT"))_"','"_$G(%ARG("ADDAT"))_"','ifr')"""
 Q
 ;
TD ;
 Q
 ;
SPK(PAR,SPK) ;
 I '$D(@$$^W4GL("W4MLSP")@(SPK)) Q 1
 I $D(@$$^W4GL("W4MLSP")@(SPK,"P",PAR)) Q 1
 Q 0
 ;
DEP(PAR) ;
 Q $$MLDEP^W4MLPRT(PAR)
 ;
KVZ(PAR) ;
 Q $$MLSUGP^W4MLPRT(PAR)
 ;
EM(PAR) ;
 N EM S EM=$$MLEMSFR^W4MLPRT(PAR)
 I EM="" S EM=1
 Q EM
 ;
EM1(PAR) ;
 N EM S EM=$$EM(PAR)
 N EM1 S EM1=$G(@$$^W4GL("MLMIDA")@(EM))
 I EM1="" S EM1="dcigi"
 Q EM1
 ;
VIB(PAR,SPK) ;
 N KVZ,DEP
 I $G(MEPAR),PAR<MEPAR Q 0
 I $G(ADPAR),PAR>ADPAR Q 0
 I $G(SPK),'$$SPK(PAR,SPK) Q 0
 S DEP=$$DEP(PAR)
 I $G(MEDEP),DEP<MEDEP Q 0
 I $G(ADDEP),DEP>ADDEP Q 0
 S KVZ=$$KVZ(PAR)
 I $G(MEKVZ),KVZ<MEKVZ Q 0
 I $G(ADKVZ),KVZ>ADKVZ Q 0
 Q 1
 ;
 ;
FRMVRM(SP) ;
 N VD,N,A,VD,DT,NP,PRT,ST,STVRM
 ;
 S VD="" F  S VD=$O(@GLINP@(SP,VD)) Q:VD=""  I VD'="IHZ",VD'="IHBI" D
 .S N="" F  S N=$O(@GLINP@(SP,VD,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..I VD="IHB",$D(^(N,"ITM")) Q
 ..S DT=$$^%L1DC($P(A,"\",4),3)
 ..;
 ..I DT<MEDT!(DT>ADDT) Q
 ..S NP="" F  S NP=$O(@GLINP@(SP,VD,N,NP)) Q:NP=""  D
 ...S ST=$G(^(NP))
 ...S PRT=$P(ST,"\") Q:PRT=""
 ...I '$$VIB(PRT,SP) Q
 ...;
 ...S STVRM=$G(@VRM@(SP,DT,PRT))
 ...I VD'="ITZ" D
 ....S $P(STVRM,"*")=$P(STVRM,"*")+$$QNST(ST)
 ....S $P(STVRM,"*",2)=$P(STVRM,"*",2)+$$SUMST(ST)
 ...I VD="ITZ" D
 ....S $P(STVRM,"*",3)=$P(STVRM,"*",3)+$$QNST(ST)
 ....S $P(STVRM,"*",4)=$P(STVRM,"*",4)+$$SUMST(ST)
 ...S @VRM@(SP,DT,PRT)=STVRM
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
QNST(ST) ;
 Q $P(ST,"\",4)*$$KF^W4SETMLY($P(ST,"\"),$P(ST,"\",7))
 ;
SUMST(ST) ;
 Q $J($P(ST,"\",3)*$P(ST,"\",4)*(100-$P(ST,"\",5)*.01),2,2)
 ;
SP ;
 S SP1="" Q:$G(SP)=""
 S SP1=$G(@$$^W4GL("W4SPK")@(SP))
 Q
 ;
DT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 Q
 ;
PRT ;
 S PRT1="" Q:$G(PRT)=""
 S PRT1=$$MLNAME^W4MLPRT(PRT)
 S KVZ=$$KVZ(PRT),KVZ1=""
 I $L(KVZ) S KVZ1=$G(@$$^W4GL("MLSUGP")@(KVZ))
 S DEP=$$DEP(PRT),DEP1=""
 I $L(DEP) S DEP1=$G(@$$^W4GL("MLDEP")@(DEP))
 S x1=$$EM1(PRT)
 N ST S ST=$G(@GLOB)
 N J F J=2:1:5 S @("x"_J)=$P(ST,"*",J-1)
 S x6=x2-x4
 S x7=x3-x5
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLTNQ
W4MLTNQ(MEDAT,ADDAT) ; DOCH HESBONIOT    [ 09.04.26 12:51 ] [ 16.11.23 16:31 ] [ 17.09.23 10:46 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 D ^%W1ARG
 K %L1PC
 ;
 D GET(MEDAT,ADDAT)
 ;
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MEDAT")=MEDAT,%REPN("ADDAT")=ADDAT
 S %REPN("MEDT")=$$^%L1DC(MEDAT,3),%REPN("ADDT")=$$^%L1DC(ADDAT,3)
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN="W4MLTNQ"
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 D PUT^%W1PRM("HRFREP","w4mltnq.jsp?JB="_JB_"&REPN="_%REPN)
 Q
 ;
 ;
GET(MEDAT,ADDAT) ;
 N MLY S MLY=$$^W4GL("W4MLY")
 N MLSP S MLSP=$$^W4GL("W4MLSP")
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 N DT,PAR,DEP,A
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 I '$G(SPK) D
 .S DT=MEDT-1 F  S DT=$O(@MLY@(DT)) Q:DT=""  Q:DT>ADDT  D
 ..S PAR="" F  S PAR=$O(@MLY@(DT,PAR)) Q:PAR=""  D
 ...S A=$G(^(PAR))
 ...I '$$VIB(PAR,"") Q
 ...D FRM(PAR,A)
 ;
 I $G(SPK) D
 .S DT=MEDT-1 F  S DT=$O(@MLSP@(SPK,"D",DT)) Q:DT=""  Q:DT>ADDT  D
 ..S PAR="" F  S PAR=$O(@MLSP@(SPK,"D",DT,PAR)) Q:PAR=""  D
 ...I '$$VIB(PAR,SPK) Q
 ...S A=$$GETMLY^W4SETMLY(DT,PAR,"","I",SPK)
 ...D FRM(PAR,A)
 Q
 ;
 ;
PAR ;
 S PAR1=$$SHEM(PAR)
 S x1=$$EM1(PAR)
 S x2=$$MH^W4P(PAR)
 S MEDT=$$^%L1DC(MEDAT,3)
 S x3=$$^W4GETMLY(PAR,MEDT-1)
 N A S A=$G(@GLOB) 
 S DEP=$$DEP(PAR)
 I DEP<MEDEP!(DEP>ADDEP) S OK=0 Q
 S DEP1=$$MLDEP^W4MLPRT(PAR)
 ;
 S SUG=$$KVZ(PAR)
 S SUG1=""
 I SUG S SUG1=$G(@$$GLSUGP^W4MLPRT@(SUG))
 ;
 S x4=$P(A,"*")+$P(A,"*",4)
 S x5=$P(A,"*",3)
 S x6=$P(A,"*",2)
 S x7=x3+x4+x5-x6
 Q
 ;
 ;
SHEM(PAR)
 I $G(PAR)="" Q ""
 N SHEM,SHEMOU
 I $$KP^W4PK(PAR) Q $$SHEM^W4P($E(PAR,2,20))
 I $G(OU) Q $$SHEM^W4P(PAR)
 S SHEM=$$MLNAME^W4MLPRT(PAR)
 Q SHEM
 ;
FRM(PAR,A) ;
 N J
 I '$$VL(A) Q
 F J=1:1:4 D
 .S $P(@VRM@(PAR),"*",J)=$P($G(@VRM@(PAR)),"*",J)+$P(A,"*",J)
 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4MLTNQ-CHKPRM","MEDEP=MEDEP & ADDEP=ADDEP & MEDAT=MEDAT & ADDAT=ADDAT")
 I '$$DATVLD(MEDAT) Q "0;DATENOTVALID;;MEDATID"_$$DATVLD(MEDAT)
 I '$$DATVLD(ADDAT) Q "0;DATENOTVALID;;ADDATID"_$$DATVLD(ADDAT)
 I $$^%L1DC(ADDAT,3)<$$^%L1DC(MEDAT,3) Q "0;RANGENOTVALID;;MEDATIDdd"
 I MEDEP>ADDEP Q "0;RANGENOTVALID;;MEDEP"
 I MEKVZ>ADKVZ Q "0;RANGENOTVALID;;MEKVZ"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4MLTNQ"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N PAR S PAR=$P(A,"\",1)
 W " style=""cursor:pointer;color:black;font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowItemReport('"_PAR_"','"_$G(%ARG("MEDAT"))_"','"_$G(%ARG("ADDAT"))_"','ifr')"""
 Q
 ;
TD ;
 Q
 ;
SPK(PAR,SPK) ;
 I $D(@$$^W4GL("W4MLSP")@(SPK,"P",PAR)) Q 1
 Q 0
 ;
DEP(PAR) ;
 Q $$MLDEP^W4MLPRT(PAR)
 ;
KVZ(PAR) ;
 Q $$MLSUGP^W4MLPRT(PAR)
 ;
EM(PAR) ;
 N EM S EM=$$MLEMSFR^W4MLPRT(PAR)
 I EM="" S EM=1
 Q EM
 ;
EM1(PAR) ;
 N EM S EM=$$EM(PAR)
 N EM1 S EM1=$G(@$$^W4GL("MLMIDA")@(EM))
 I EM1="" S EM1="dcigi"
 Q EM1
 ;
SUM(A) ;
 Q $P(A,"*")+$P(A,"*",4)-$P(A,"*",2)-$P(A,"*",3)
 ;
VL(A) ;
 N OK S OK=0
 N J F J=1:1:4 I $P(A,"*",J) S OK=1
 Q OK
 ;
VIB(PAR,SPK) ;
 N KVZ,DEP
 I $G(MEPAR),PAR<MEPAR Q 0
 I $G(ADPAR),PAR>ADPAR Q 0
 I $G(@$$^W3PRM@("NOVWCLS")),$$MLMAZAV^W4MLPRT(PAR) Q 0
 I '$$PRKUP,$$KP^W4PK(PAR) Q 0
 Q 1
 ;
PRKUP(STAM) ;
 I $G(%ARG("PRKUP")) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MLTNQ0
W4MLTNQ ; DOCH HESBONIOT    [ 14.09.23 08:40 ] [ 23.10.14 10:01 ] [ 27.07.14 10:32 ] 
 N (JB,%ARG,%REM)
 D ^W4IN
 D ^%W1ARG
 I '$D(MEDAT)!'$D(ADDAT) Q
 I '$G(MEDEP) S MEDEP=""
 I '$G(ADDEP) S ADDEP=999999
 I '$G(MEKVZ) S MEKVZ=""
 I '$G(ADKVZ) S ADKVZ=99999
 I '$G(MEPAR) S MEPAR=""
 I '$G(ADPAR) S ADPAR=99999999
 S SPK=$G(%ARG("SPK"))
 I '$G(SPK) S SPK="",SPK1="miwtqd lk"
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
 ;
GET ;
 N MLY S MLY=$$^W4GL("W4MLY")
 N MLSP S MLSP=$$^W4GL("W4MLSP")
 ;
 N DT,PAR,DEP,A
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 ;;S DT="" F  S DT=$O(@MLY@(DT)) Q:DT=""  Q:DT'<MEDT  D
 .S PAR="" F  S PAR=$O(@MLY@(DT,PAR)) Q:PAR=""  D
 ..I '$$VIB(PAR,$G(SPK)) Q
 ..S A=$G(^(PAR)) Q:'$$VL(A)
 ..S @VRM@(PAR,"IT")=$G(@VRM@(PAR,"IT"))+$$SUM(A)
 ;
 I '$G(SPK) D
 .S DT=MEDT-1 F  S DT=$O(@MLY@(DT)) Q:DT=""  Q:DT>ADDT  D
 ..S PAR="" F  S PAR=$O(@MLY@(DT,PAR)) Q:PAR=""  D
 ...S A=$G(^(PAR))
 ...I '$$VIB(PAR,"") Q
 ...D FRM(PAR,A)
 ;
 I $G(SPK) D
 .S DT=MEDT-1 F  S DT=$O(@MLSP@(SPK,"D",DT)) Q:DT=""  Q:DT>ADDT  D
 ..S PAR="" F  S PAR=$O(@MLSP@(SPK,"D",DT,PAR)) Q:PAR=""  D
 ...I '$$VIB(PAR,SPK) Q
 ...S A=$$GETMLY^W4SETMLY(DT,PAR,"","I",SPK)
 ...D FRM(PAR,A)
 ;
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 N I,IT,TN,IN,ZC,OU,ST
 S I=0
 ;
 S PAR="" F  S PAR=$O(@VRM@(PAR)) Q:PAR=""  D
 .;;S IT=$G(^(PAR,"IT"))
 .S IT=$$^W4GETMLY(PAR,MEDT-1)
 .S TN=$G(@VRM@(PAR,"TN"))
 .S IN=$P(TN,"*")+$P(TN,"*",4),ZC=$P(TN,"*",3),OU=$P(TN,"*",2)
 .S ST=PAR_"\"_$$SHEM(PAR)_"\"_$$EM1(PAR)_"\"_IT
 .S ST=ST_"\"_IN_"\"_ZC_"\"_OU_"\"_(IT+$$SUM(TN))
 .S I=I+1,@TMPREP@("G",I)=ST
 ;
 Q
 ;
 ;
SHEM(PAR)
 I $G(PAR)="" Q ""
 N SHEM,SHEMOU
 I $$KP^W4PK(PAR) Q $$SHEM^W4P($E(PAR,2,20))
 I $G(OU) Q $$SHEM^W4P(PAR)
 S SHEM=$$MLNAME^W4MLPRT(PAR)
 Q SHEM
 ;
FRM(PAR,A) ;
 N J
 I '$$VL(A) Q
 F J=1:1:4 D
 .S $P(@VRM@(PAR,"TN"),"*",J)=$P($G(@VRM@(PAR,"TN")),"*",J)+$P(A,"*",J)
 Q
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4MLTNQ-CHKPRM","MEDEP=MEDEP & ADDEP=ADDEP & MEDAT=MEDAT & ADDAT=ADDAT")
 I '$$DATVLD(MEDAT) Q "0;DATENOTVALID;;MEDATID"_$$DATVLD(MEDAT)
 I '$$DATVLD(ADDAT) Q "0;DATENOTVALID;;ADDATID"_$$DATVLD(ADDAT)
 I $$^%L1DC(ADDAT,3)<$$^%L1DC(MEDAT,3) Q "0;RANGENOTVALID;;MEDATIDdd"
 I MEDEP>ADDEP Q "0;RANGENOTVALID;;MEDEP"
 I MEKVZ>ADKVZ Q "0;RANGENOTVALID;;MEKVZ"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) Q "W4MLTNQ"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N PAR S PAR=$P(A,"\",1)
 W " style=""cursor:pointer;color:black;font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowItemReport('"_PAR_"','"_$G(%ARG("MEDAT"))_"','"_$G(%ARG("ADDAT"))_"','ifr')"""
 Q
 ;
TD ;
 Q
 ;
SPK(PAR,SPK) ;
 I $D(@$$^W4GL("W4MLSP")@(SPK,"P",PAR)) Q 1
 Q 0
 ;
DEP(PAR) ;
 Q $$MLDEP^W4MLPRT(PAR)
 ;
KVZ(PAR) ;
 Q $$MLSUGP^W4MLPRT(PAR)
 ;
EM(PAR) ;
 N EM S EM=$$MLEMSFR^W4MLPRT(PAR)
 I EM="" S EM=1
 Q EM
 ;
EM1(PAR) ;
 N EM S EM=$$EM(PAR)
 N EM1 S EM1=$G(@$$^W4GL("MLMIDA")@(EM))
 I EM1="" S EM1="dcigi"
 Q EM1
 ;
SUM(A) ;
 Q $P(A,"*")+$P(A,"*",4)-$P(A,"*",2)-$P(A,"*",3)
 ;
VL(A) ;
 N OK S OK=0
 N J F J=1:1:4 I $P(A,"*",J) S OK=1
 Q OK
 ;
VIB(PAR,SPK) ;
 N KVZ,DEP
 I $G(MEPAR),PAR<MEPAR Q 0
 I $G(ADPAR),PAR>ADPAR Q 0
 I $G(SPK),'$$SPK(PAR,SPK) Q 0
 S DEP=$$DEP(PAR)
 I DEP<MEDEP!(DEP>ADDEP) Q 0
 S KVZ=$$KVZ(PAR)
 I KVZ<MEKVZ!(KVZ>ADKVZ) Q 0
 I '$$PRKUP,$$KP^W4PK(PAR) Q 0
 Q 1
 ;
PRKUP(STAM) ;
 I $G(%ARG("PRKUP")) Q 1
 Q 0
 

W4MLY
W4MLY(MRKZ,DAT,PLN,PLCOL,PRCC,PLA) ;      [ 15.11.08 11:55 ] [ 10.11.08 17:50 ] [ 03.01.06 10:39 ]
 ;INPUT: DAT (YYMMDD)
 ;       PLN - CODE PARIT
 ;       PLCOL - KAMUT PARIT
 ;       PRCC - MAHIR
 ;       PLA -  HANAHA
 ;       MRK - MISPAR MERKAZ
 ;       $D(PLSER)
 ;       $D(KUPLTM) - KNISA MI T.M. (MAARECHET HASPAKA)
 ;OUTPUT: OK
 N (JB,%REM,DAT,PLN,PLCOL,PRCC,PLA,MRKZ,PLSER,NODET,OK)
 S OK=1 Q:@$$^W4GL("PLUK")'["MLY"  Q:$D(PLSER)
 N PLU S PLU=PLN S:$E(PLN,1,2)="A-" PLU=$P(PLN,"-",2)
 Q:PLU=""
 ;
 I '$D(MRKZ) S MRKZ=0
 I MRKZ[">" S MRKZ2=$P(MRKZ,">",2),TM=$P(MRKZ,">",3),KF=$P(MRKZ,">",4),MRKZ=$P(MRKZ,">")
 S ZT=$ZT N MLY,MLYP,SHANA,SUG,TK,STR,TSTR,M3,INDT,REM,I,J
 I 'MRKZ S MRKZ=@$$^W4GLM("STAT")@("MLY","EM","MRKZ")
 I $D(@$$^W4GLM("YZM")@(PLU))#2 S A=$G(^(PLU)) I $P(A,"\",2),MRKZ=@$$^W4GLM("STAT")@("MLY","EM","MRKZ") D
 .S MRKZ=$P(A,"\",2)
 Q:MRKZ=""
 S STR=$P($G(@$$^W4GLM("YZRN")@(MRKZ,10)),"*",3),TSTR=$P($G(^(10)),"*",4)
 Q:STR=""!(TSTR="")
 ;
 S SHANA=$E(DAT,1,2),SUG=2
 S TK=$E(DAT,3,6)_"-009"
 I '$D(@$$^W4GLM("MLY")@(SHANA,STR,TSTR,SUG,TK)) D
 .D TEUDA S @$$^W4GLM("OPENKUP")@(DAT)=$H S FRST=0 ;--- T. HOZAA
 ;
 I $G(MRKZ2),$D(@$$^W4GLM("YZM")@(PLU)) D  ;-- EZIRAT T.HAHNASA
 .S STR2=$P($G(@$$^W4GLM("YZRN")@(MRKZ2,10)),"*",3)
 .S TSTR2=$P($G(^(10)),"*",4)
 .I STR2=""!(TSTR2="") Q
 .S TK20=$G(@$$^W4GLM("MLY")@(SHANA,STR2,1))+1
 .F TK21=TK20:1 S TK2=TK21_"-000" Q:'$D(@$$^W4GLM("MLY")@(SHANA,STR2,TSTR2,1,TK2))
 .I '$D(@$$^W4GLM("MLY")@(SHANA,STR2,TSTR2,1,TK2)) D TEUDA2
 ;
 D MLYSUM(PLU,PLCOL,PRCC,PLA)
 L  S OK=1 Q
 ;
ERM ;I $G(PLDEB) ZU 0 W !,$ZE
 S OK=0 Q
 ;
TEUDA ; PREP TEUDA HOZAA
 S REM="zetewn zihnehe` d`ved zcerz",M3=99999
 S INDT=$$^%L1DC(DAT,1)
 S @$$^W4GLM("MLY")@(SHANA,STR,TSTR,SUG,TK)=INDT_"*"_M3_"*********"_REM_"*"_$ZD($H,"YYMMDD")_"***"_SUG_"***0**"_INDT_"*"_INDT_"*"_INDT
 S @$$^W4GLM("MLY")@(SHANA,STR,SUG)=$G(@$$^W4GLM("MLY")@(SHANA,STR,SUG))+1
 Q
TEUDA2 ; PREPARE TEUDAT HACHNASA
 N REM,INDT,SPK S SPK=@$$^W4GLM("STAT")@("MLY","EM","MRKZ")
 S REM="zetewdn zihnehe` dqpkd zcerz"
 S INDT=$$^%L1DC(DAT,1)
 S @$$^W4GLM("MLY")@(SHANA,STR2,TSTR2,1,TK2)=INDT_"*"_SPK_"**"_(-1)_"*"_TM_"******"_REM_"*"_$ZD($H,"YYMMDD")_"***1***0**"_INDT_"*"_INDT_"*"_INDT
 S @$$^W4GLM("MLY")@(SHANA,STR2,1)=TK2
 S @$$^W4GLM("MTM")@(SPK,TM)="^MLY("""_SHANA_""","""_STR2_""","""_TSTR2_""","_1_","""_TK2_""")"_"^"_TK2
 S @$$^W4GLM("SPTH")@(SPK,+TK2)="^MLY("""_SHANA_""","_STR2_","_TSTR2_",1,"""_TK2_""")"
 Q
 ;
MLYSUM(PLU,PLCOL,PRCC,PLA) ;
 Q:$G(PLU)=""
 I $D(@$$^W4GLM("PARIT")@(PLU)) D WRITE(PLU,PLCOL,PRCC,PLA) S (PRCC,PLA)=0
 I $D(@$$^W4GLM("YZM")@(PLU))>9 D
 .N N S N="" F  S N=$O(@$$^W4GLM("YZM")@(PLU,N)) Q:N=""  I PLU'=N D
 ..Q:'$G(^(N))  N COL S COL=$G(^(N))*PLCOL
 ..I $P(^(N),"\",2) S COL=$J(COL*100/$P(^(N),"\",2),4,4)
 ..I $G(@$$^W4GLM("STAT")@("YEZUR"))!$D(NODET),COL D WRITE(N,COL,PRCC,PLA) Q
 ..I COL D MLYSUM(N,COL,PRCC,PLA)
 Q
 ;
WRITE(PLU,PLCOL,PRCC,PLA) ;
 N MLY,MLYP,COL,SUM
 L @$$^W4GLM("MLYP")@(SHANA,STR,TSTR,PLU):1
 S MLYP=$G(@$$^W4GLM("MLYP")@(SHANA,STR,TSTR,PLU))
 L @$$^W4GLM("MLY")@(SHANA,STR,TSTR,SUG,TK,PLU):1
 S MLY=$G(@$$^W4GLM("MLY")@(SHANA,STR,TSTR,SUG,TK,PLU))
 S $P(MLYP,"*",4)=$P(MLYP,"*",4)-PLCOL
 S $P(MLYP,"*",3)=$P(MLYP,"*",3)+PLCOL
 S @$$^W4GLM("MLYP")@(SHANA,STR,TSTR,PLU)=MLYP
 S SUM1=PLCOL*PRCC-PLA
 S COL=PLCOL+$P(MLY,"*",1)
 S SUM=$J(SUM1+$P(MLY,"*",5),2,2)
 S MD=$P($G(@$$^W4GLM("PARIT")@(PLU,1)),"*",3) S:MD="" MD=1
 S @$$^W4GLM("MLY")@(SHANA,STR,TSTR,SUG,TK,PLU)=COL_"****"_SUM_"**"_MD_"*"_COL
 ;
 I $D(STR2),$D(TSTR2),$D(TK2) D
 .L @$$^W4GLM("MLYP")@(SHANA,STR2,TSTR2,PLU):1
 .S MLYP2=$G(@$$^W4GLM("MLYP")@(SHANA,STR2,TSTR2,PLU))
 .L @$$^W4GLM("MLY")@(SHANA,STR2,TSTR2,1,TK2,PLU):1
 .S MLY2=$G(@$$^W4GLM("MLY")@(SHANA,STR2,TSTR2,1,TK2,PLU))
 .S $P(MLYP2,"*",4)=$P(MLYP2,"*",4)+PLCOL
 .S $P(MLYP2,"*",3)=$P(MLYP2,"*",2)+PLCOL
 .S @$$^W4GLM("MLYP")@(SHANA,STR2,TSTR2,PLU)=MLYP2
 .S SUM1=SUM1*$G(KF,1)
 .N SUMNM,SUM10 S SUM10=SUM1
 .I $P($G(@$$^W4GLM("PARIT")@(PLU,3)),"*",7)'="l" D
 ..S SUM10=SUM1*100/(100+@$$^W4GLM("STAT")@("MAM"))
 .S SUMNM=$J(SUM10+$P(MLY2,"*",4),2,2)
 .S SUMM=$J(SUM1+$P(MLY2,"*",5),2,2)
 .S COL2=PLCOL+$P(MLY2,"*",1)
 .N PRC S PRC=0 I COL2 S PRC=$J(SUMNM/COL2,3,3)
 .S @$$^W4GLM("MLY")@(SHANA,STR2,TSTR2,1,TK2,PLU)=COL2_"*"_PRC_"*"_PRC_"*"_SUMNM_"*"_SUMM_"**"_MD_"*"_COL2
 L  S OK=1 Q

W4MLYHUZ
W4MLYHUZ(JB,DT1,DT2) ; [ 06.11.16 15:16 ] [ 11.06.14 19:24 ] [ 17.04.14 07:05 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S DIR="/tmp/"
 S ADR=$$MLYADR^W4PRM
 S MRK=$$MLYMRK^W4PRM
 ;
 F DT=DT1:1:DT2 D
 .I ADR="" S @$$^W4GL("W4MLYHUZ")@(DT)="NOADR\"_$ZD($H,"DD.MM.YY  24:60") Q
 .I MRK="" S @$$^W4GL("W4MLYHUZ")@(DT)="NOMRK\"_$ZD($H,"DD.MM.YY  24:60") Q
 .S DAT=$ZD(DT,"YYMMDD")
 .K @$$^W4GL("PLUMRK")@(DAT,MRK)
 .M @$$^W4GL("PLUMRK")@(DAT,MRK)=@$$^W4GL("PLUTOT")@(DAT,$$^%L1MRK)
 .S FL=DIR_"P2M"_DAT_"_"_MRK
 .I '$$^%L1G2F($$^W4GL("PLUMRK")_"("""_DAT_""","""_MRK_""")",FL) Q
 .;;O FL:(REWIND:NEWVERSION:WRITE:SYSTEM="rwx":GROUP="rx":WORLD="rx")
 .;;U FL
 .;;S PRT="" F  S PRT=$O(@$$^W4GL("PLUMRK")@(DAT,MRK,PRT)) Q:PRT=""  D
 ..;;W $R,!
 ..;;W $G(^(PRT)),!
 .;;C FL
 .D ^%L1FTP(ADR,FL)
 .I '$ZSY D  Q
 ..N ENDFL S ENDFL=FL_".END"
 ..C ENDFL O ENDFL:(WRITE:REWIND:NEWVERSION) U ENDFL W "1",! C ENDFL
 ..H 1 D ^%L1FTP(ADR,ENDFL)
 ..S @$$^W4GL("W4MLYHUZ")@(DT)="OK\"_$ZD($H,"DD.MM.YY  24:60")
 ..C FL:(DELETE)
 ..C ENDFL:(DELETE)
 .S @$$^W4GL("W4MLYHUZ")@(DT)="ER"_$ZSY_"\"_$ZD($H,"DD.MM.YY  24:60")
 ;
 Q
 
 

W4MLYTNP
W4MLYTNP(PARIT) ; [ 09.01.13 20:18 ] [

W4MLZCRD
W4MLZCRD(STAM) ; [ 09.12.20 08:46 ] [ 19.02.12 11:26 ] [ 23.11.08 14:22 ] 
 N MYDVN S MYDVN=$$^W4MYDVN
 I MYDVN,$D(@$$^W4PRM@("MLZCARD",MYDVN)) Q @$$^W4PRM@("MLZCARD",MYDVN)
 I $D(@$$^W4PRM@("MLZCARD"))#2 Q @$$^W4PRM@("MLZCARD")
 Q ""
 

W4MLZR
W4MLZR(HZM) ; [ 07.11.08 15:54 ] [ 11.04.02 11:17 AM ] [
 N MLZ S MLZ=$P($G(@$$^W4ORD@(HZM)),"\",18)
 I $G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)) S MLZ=@$$^W4GL("P1MLZ")@(HZM)
 Q MLZ

W4MM
W4MM(STAM) ; [ 09.01.14 17:58 ] [ 08.01.14 18:59 ] [
 I $$CALLCENTER^W4PRM=2 Q 1
 Q 0

W4MMDIF
W4MMDIF(T1,T2) ; [ 13.11.18 16:29 ] [ 
 N (T1,T2)
 D
 .I T1["," S T1=+T1*24*3600+$P(T1,",",2) Q
 .I T2["," S T2=+T2*24*3600+$P(T2,",",2) Q
 .I T1?6N.N S T1=$E(T1,1,5)*24*3600+$TR($E(T1,6,10)," ",0) Q
 .I T2?6N.N S T1=$E(T2,1,5)*24*3600+$TR($E(T2,6,10)," ",0) Q
 .I T1[".",T1[":" S T1=$$T2S(T1)
 .I T2[".",T2[":" S T2=$$T2S(T2)
 ;
 S DIF=T2-T1
 Q DIF\60
 ;
T2S(T) ;
 S T1=$$SP1^%L1FRM(T) 
 N DT,SHAA S DT=$$^%L1DC($P(T," "),3)
 S SHAA=$P(T," ",2)
 S T=DT_(SHAA*3600+($P(SHAA,":",2)*60))
 Q R

W4MMDLV
W4MMDLV ; [ 16.01.22 11:13 ] [ 14.01.22 08:25 ] [ 01.08.21 14:34 ] 
 ;-------------------------------------------------------
 N (JB,CODE,OPT,HOME,PHONE,%ARG,LKH,LKHR,SUGT,%REM)
 I '$G(JB) Q
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $D(@$$^W4GL("W4LINKDR"))<10 D CRLINKDR
 ;
 D CLRCOPY^W4MENU
 ;
 I $G(%ARG("TODAY")) D
 .S %ARG("MEDAT")=$ZD($$^W4DZ,"DD.MM.YY")
 .S %ARG("ADDAT")=$ZD($H,"DD.MM.YY")
 ;
 I $$TOMORROW D
 .S %ARG("MEDAT")=$ZD($H+1,"DD.MM.YY")
 .N DT0 S DT0=$H+1
 .I $$^%L1DC(%ARG("MEDAT"),8)=6,$$SF^W4PRM S DT0=$H+2
 .N DT F DT=DT0:1:$H+100 Q:$$^W3VLDDT(DT)=1
 .S %ARG("ADDAT")=$ZD(DT,"DD.MM.YY")
 ;
 D INIT
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$CUSTLASTORDS D  G TOTLAB
 .D INITVIB
 .N N,I,LK S LK=$$CUSTLASTORDS
 .S TXTMRQ=""
 .S FIRSTLINE=1
 .W "<br>"
 . N STYLE S STYLE="font-size:"_$$^W3FSZ(16)
 . I $$CUSTALL D
 . .D ^W4BUTTON("lastords","SHOWLASTORDS","CustLastOrders1('"_LK_"','0')",STYLE) 
 . I '$$CUSTALL D
 . .D ^W4BUTTON("allords","SHOWALLORDS","CustLastOrders1('"_LK_"','1')",STYLE) 
 .W "<br><br>"
 .D TBORD
 .D PUT^%W1PRM("CUSTLASTORDS",LK)
 .S N="",I=0 F  S N=$O(@$$^W4GL("W4LINKI")@(LK,MSD,N),-1) Q:N=""  I N D
 ..S I=I+1 I '$$CUSTALL,I>9 Q
 ..S W4DLVORD=N
 ..D SHOWORD(MSD,N,0)
 ;
 I $$MIKUM D
 .S %ARG("TIMESORT")=1
 .S %ARG("SHORTSHOW")=1
 .S %ARG("NOSENDEDORDS")=0
 .S %ARG("SENDEDORDS")=1
 .S %ARG("DELETEDORDS")=0
 .S %ARG("NOPAIDORDS")=1
 .S %ARG("PAIDORDS")=1
 .S %ARG("SHOWTAW")=0
 .S %ARG("ASCENDING")=0
 .S %ARG("FUTUREORDS")=0
 .S %ARG("SIK")=0
 ;
 I $$DISPATH D
 .D
 ..I $$ALLORDS D  Q
 ...S %ARG("NOSENDEDORDS")=1
 ...S %ARG("SENDEDORDS")=1
 ...S %ARG("NOTSUPPLORDS")=0
 ..
 ..I $$NOSENDEDORDS D  Q
 ...S %ARG("NOSENDEDORDS")=1
 ...S %ARG("SENDEDORDS")=0
 ..
 ..I '$$ALLORDS D
 ...S %ARG("NOSENDEDORDS")=1
 ...S %ARG("SENDEDORDS")=1
 ...S %ARG("NOTSUPPLORDS")=1
 . 
 .I $G(%ARG("TIMESORT"))'=0 S %ARG("TIMESORT")=1
 .I $G(%ARG("ASCENDING"))'=0 S %ARG("ASCENDING")=1 
 .I $G(%ARG("SHORTSHOW"))'=0 S %ARG("SHORTSHOW")=1 
 .I $G(%ARG("DELETEDORDS"))="" S %ARG("DELETEDORDS")=1
 .I $G(%ARG("NOPAIDORDS"))="" S %ARG("NOPAIDORDS")=1
 .I $G(%ARG("PAIDORDS"))="" S %ARG("PAIDORDS")=1
 .I $G(%ARG("SHOWTAW"))="" S %ARG("SHOWTAW")=1
 ;
 I '$$DISPATH D SETARG
 ;
 I $$VIEWRCV G DIR
 ;
 I $$SHOW4COPY D  ; -- SHOW FOR COPY
 .W "<h2 style=""color:red;font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("CLICK4COPY")_"</h2>",!
 ;
DIR ;
 S DRC=$S($G(%ARG("ASCENDING")):1,1:-1)
 ;
 S TXTMRQ=""
 S FIRSTLINE=1
 ;
 K @$$^W4MAIN("VIB")
 K @$$^W4MAIN("TMP")
 ;
 D CRVIB(1) ; -- PROYTI VES CYCL NE POKAZYVAYA
 ;
 I $$MY D
 .W "<table dir="""_$$^%W1DIR_""">"
 .W " <tr>"
 . W " <td style=""color:darkgreen;font-size:"_$$^W3FSZ(18)_""">"
 .  W $$SHOW^W4KOTMLZ($$MY,"12B")
 . W " </td>"
 .W " </tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 I $$REPTRH D KOTREPTRH
 ;
 I '$$VIEWRCV,'$$REPTRH D KOT
 ;
 I '$$REPTRH,'$$MIKUM D DIVPSL
 ;
 K @$$^W4MAIN("TMPIRTM")
 ;
 D TBORD
 ;
 I $E($G(%ARG("ORDER")))="W"!($E($G(%ARG("ORDER")))="w") D
 .N ORD S ORD=+$E(%ARG("ORDER"),2,20)
 .I $G(@$$^W4GL("HZLINKI")@(ORD)) S %ARG("ORDER")=$P(^(ORD),"\") Q 
 .S HZMLAK=$E($G(%ARG("ORDER")),2,12)
 .K %ARG("ORDER")
 ;
 I $G(%ARG("ORDER")) D  G TOTLAB ; -- SHOW ONE ORDER
 .N MSDHZ S MSDHZ=$P($G(@$$^W4GL("W4LINK")@(%ARG("ORDER"))),"~") Q:'MSDHZ
 .I $G(MSD),MSDHZ'=MSD Q
 .I $G(%ARG("MSDR")),'$D(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
 .N JB S W4DLVORD=%ARG("ORDER"),JB=W4DLVORD
 .D SHOWORD(MSDHZ,%ARG("ORDER"),0)
 ;
 I '$G(%ARG("SIK")) D CRVIB(0) ; -- PROYTI VES CYCL & POKAZAT
 ;
TOTLAB ;
 I '$$DISPATH!$$ALLORDS,'$$VIEWRCV D TOT
 W "</table>",!
 ;
 W "<br />",!
 ;
 I '$$VIEWRCV,'$$REPTRH D BUTTONS
 ;
 W "</div>",!
 ;
 W "<br /><br /><br />",!
 ;
END Q
 ;
 ;
GLLINK(STAM) ;
 N GLLINK
 S GLLINK=$$^W4GL("W4LINKD")
 I $L($G(%ARG("GLLINK"))) S GLLINK=$$^W4GL(%ARG("GLLINK"))
 Q GLLINK
 ;
 ;
TBORD ;
 W "<table id=""TblOrd"" dir="""_$$^%W1DIR_""" class=""vw"" border=1"
  W " cellspacing=""1"" cellpadding=""1"" width=""100%"" "
 W ">",!
 D KOTTB
 Q
 ;
INITVIB ;
 K SPAY,SHZ,SDMS,SNEW,SMKR,SHNH
 S (SPAY,SHZ,SDMS,SHNH,SNEW,SNEWDM,SNEWHN,SNEWPAY,SDEL,SSBM,SNOSHUD,SNOSBM,SNOSHUL,SNODLV)=0
 S (SPAYM,SHZM,SDMSM)=0 K SMSD,SCODTS
 Q
 ;
 ;
CRVIB(NOPC) ;
 D INITVIB
 I '$G(NOPC) G CRVIB1
 ;
 N SHAAGV S SHAAGV=$$SHAAGV
 ;
 N DT
 I $G(MEDT),$G(ADDT) F DT=MEDT:1:ADDT+1 D
 .N DTTO,SHAA,SL,N
 .S N="" F  S N=$O(@$$GLLINK@(DT,N)) Q:N=""  D
 ..I '$$MSL^W4MSL(N) Q
 ..S DTTO=$$^%L1DC($$TRH^W4HZMST(N),3)
 ..S SHAA=$$SHAA^W4HZMST(N)
 ..
 ..I $G(%ARG("GLLINK"))="W4LINKDR" D
 ...S DTTO=$$^%L1DC($P($$DATCB^W4HZMST(N),"  "),3)
 ...S SHAA=$P($$DATCB^W4HZMST(N),"  ",2)
 ..
 ..I DTTO>ADDT,$$SHAA^W4HZMST(N)'<$$SHAAGV Q
 ..I 'DTTO S DTTO=$$^%L1DC($P($$DATCB^W4HZMST(N)," "),3)
 ..I $$DISPATH,DTTO<P1DZ!(DTTO>($H+$S($$ALLORDS:180,1:1))) Q
 ..I $$DISPATH,'$$ALLORDS,DTTO<P1DZ!(DTTO=($H+1)&(SHAA'<SHAAGV)) Q
 ..I $$DISPATH,DTTO=P1DZ,SHAA<SHAAGV Q
 ..I DTTO=MEDT,SHAA<SHAAGV,SHAA'="00:00" Q
CRVIBM .. ;
 ..N MN S MN=$TR($J(SHAA*60+$P(SHAA,":",2),4)," ",0)
 ..
 ..N IND,REST D GETREST
 ..I REST,$G(%ARG("REST")),REST'=$G(%ARG("REST")) Q
 ..
 ..I '$G(%ARG("TIMESORT")) D
 ...S IND=REST_999999999_$J(N,9)
 ..
 ..I $G(%ARG("TIMESORT")) D
 ...I $$MIKUM S SL=$$PSL^W4HZMST(N) Q:'SL
 ...I $$MIKUM S IND=REST_"^"_SL_"^"_DTTO_MN_"^"_$J(N,9) Q
 ...S IND=REST_DTTO_MN_$J(N,9)
 ..
 ..S @$$^W4MAIN("TMP")@(IND)=""
 ;
 I $$REPTRH=3,$G(MEDT),$G(ADDT) F DT=MEDT:1:ADDT D
 .N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..Q:$$HZM^W4MSL(HZ)
 ..S @$$^W4MAIN("TMP")@(999999999_$J(HZ,9))=""
 ;
 K MPSL
 S N="" F  S N=$O(@$$^W4MAIN("TMP")@(N),DRC) Q:N=""  D
 .N HZ S HZ=$$HZ(N)
 .D VIB(N,HZ,$G(NOPC))
 Q
 ;
 ;
MIKUM(STAM) ; 
 Q $G(%ARG("MIKUMSL"))
 ;
HZ(N) ;
 N BG S BG=10
 I $G(%ARG("RESTSORT")) S BG=16
 N HZ S HZ=$TR($E(N,BG,BG+10)," ","")
 I $$MIKUM S HZ=$$SPA^%L1FRM($P(N,"^",4))
 Q HZ
 ;
GETREST
 S REST=""
 I $G(%ARG("RESTSORT")) D
 .S REST=$$MSDHZM^W4HZMST(N),REST=$$ENG^%L1FRM(REST,6)
 Q
 ;
CRVIB1 ;
 S FIRSTLINE=1
 N A,IND,N,MSDHZ,W4DLVORD
 S IND="" F  S IND=$O(@$$^W4MAIN("VIB")@(IND),DRC) Q:IND=""  D
 .S N=$$HZ(IND)
 .S A=$G(@$$^W4GL("W4LINK")@(N))
 .S MSDHZ=$P(A,"~")
 .S W4DLVORD=N
 .D SHOWORD(MSDHZ,N,0)
 Q
 ;
 ;
VIB(FULLIND,N,NOPC) ;
 N A,MSDHZ,HZ
 ;
 S A=$G(@$$^W4GL("W4LINK")@(N))
 ;
 S MSDHZ=$$MSDHZM^W4HZMST(N) ; $P(A,"~")
 ;;S ^AA("MSDHZ",N)=MSDHZ
 I $$^W4MM S MSDHZ=$P(A,"~",5) ; ???
 ;
 I $$REPTRH=3,$$HZM^W4MSD(N) G VIBSHOW1
 I 'MSDHZ G VIB1
 ;
 D D(.5)
 I $G(MSD),MSDHZ'=MSD Q
 ;
 D D(1)
 I $G(%ARG("REST")),MSDHZ'=%ARG("REST") Q
 D D(2)
 ;
 I $G(%ARG("MSDR")),MSDHZ,'$G(^[$$^W3MAIN]W3MSDR(%ARG("MSDR"),MSDHZ)) Q
VIB1 ;
 D D(3)
 S W4DLVORD=N
 N CODEHZ S CODEHZ=$$NMB^W4HZMST(N)
 ;
 I $G(MKBL),MKBL'=$$MKBL^W4HZMST(N) Q
 D D(3.5)
 I $G(SLH),SLH'=$$PSL^W4HZMST(N) Q
 D D(4)
 S LKHR=$G(LKHR)
 ;
 I $G(LKH),'$D(@$$^W4GL("LKH")@(LKH)) D
 .N LK S LK=$O(@$$^W4GL("KLLKTH")@(LKH,""))
 .I LK,$D(@$$^W4GL("LKH")@(LK)) S LKH=LK
 ;
 I $G(LKH),$$^W4ISCDLK(LKH),CODEHZ'=$P($$SPA^%L1FRM(LKH)," ") Q
 D D(5)
 ;
 I $G(LKHR),$$^W4ISCDLK(LKHR),$G(CODEHZ),LKHR'=$G(@$$^W4GL("P1EZL")@(CODEHZ)) Q
 D D(6)
 ;
 I $G(SUGT),$$CODTS^W4HZMST(N)'=SUGT Q
 D D(7)
 ;
 S IR=$$IR^W4HZMST(N) I $$HZM^W4MSL(N),IR="" S IR="TAKEAWAY"
 I $L($G(%ARG("IR"))),$G(%ARG("IR"))'="ALL",IR'=$$INVH^%L1FRM(%ARG("IR")) Q
 D D(8)
 ;
 S CUSTOM=$G(CUSTOM)
 ;;I $L(CUSTOM),$TR(CUSTOM,"-","")'?1N.N,$G(NAME)="" S NAME=CUSTOM,CUSTOM=""
 I $L($G(NAME)),'$$SRCH^W1SRCH($$NAME^W4HZMST(N),NAME),'$$SRCH^W1SRCH($$MAZMIN^W4HZMST(N),NAME) Q
 D D(9)
 ;
 I $L($G(COMP)),'$$SRCH^W1SRCH($$COMP^W4HZMST(N),COMP) Q
 D D(10)
 ;
 I $L($G(TELB)),$TR(TELB," -","")'=$TR($$TELB^W4L(CODEHZ)," -",""),$TR(TELB," -","")'=$TR(CODEHZ," -","") Q
 D D(11)
 ;
 I $L($G(PELE)),$TR(PELE," -","")'=$TR($$PELE^W4L(CODEHZ)," -",""),$TR(PELE," -","")'=$TR(CODEHZ," -","") Q
 D D(12)
 ;
 I $G(MKR)?1N.N,MKR'=99,MKR'=$$MKRDLV^W4HZMST(N) Q
 I $G(MKR)=99,$$MKRDLV^W4HZMST(N)'="",$$MKRDLV^W4HZMST(N)'=99 Q
 D D(12.5)
 N TSHL S TSHL=$$TSHL^W4HZMST(N)
 I $G(MESUM),TSHL<MESUM Q
 D D(13)
 ;
 I $G(ADSUM),TSHL>ADSUM Q
 D D(14)
 ;
 ;;N HZMLAKHZ S HZMLAKHZ=$$HZMLAK^W4HZMST(N) S:$E(HZMLAKHZ)="W" HZMLAKHZ=$E(HZMLAKHZ,2,10)
 ;;I $G(HZMLAK)'="",HZMLAK'=HZMLAKHZ,HZMLAK'=+$$HRAED^W4HZMST(N),HZMLAK'=$$INVH^%L1FRM(HZMLAKHZ) Q
 ;;D D(15)
 ;
 I $TR(CUSTOM,"-","")?1N.N,CUSTOM'=$$NMB^W4HZMST(N) Q
 I $L(CUSTOM),$TR(CUSTOM,"-","")'?1N.N,'$$SRCH^W1SRCH($$NAME^W4HZMST(N),CUSTOM),'$$SRCH^W1SRCH($$MAZMIN^W4HZMST(N),CUSTOM) Q
 ;
 I $G(NCA),'$$CMPR(N,NCA) Q
 D D(16)
 ;
 I $G(%ARG("SUGTS")),%ARG("SUGTS")'=$$CODTS^W4HZMST(N) D D(16.5) Q
 ;
 I $$DISPATH,$$TAW,'$$TAKEAWAY^W4HZMST(N) Q
 D D(16.7)
 I '$$TAW,'$G(%ARG("SHOWTAW")),$$TAKEAWAY^W4HZMST(N) Q
 D D(16.9)
 ;
 I $$KNDO="NSND",$$SENDEDORD(N) Q
 D D(17.1)
 I $$KNDO="SND",'$$SENDEDORD(N) Q
 D D(17.2)
 I $$KNDO="NSPL",$$SUPPLIED^W4HZMST(N) Q
 D D(17.25)
 I $$KNDO="FTR",'$$FUTURE(N) Q
 D D(17.3)
 I $$KNDO="DEL",'$$DELORD(N) Q
 D D(17.4)
 I $$KNDO="TAW",'$$TAKEAWAY^W4HZMST(N) Q
 D D(17.5)
 I $$KNDO="PD",$$NOSHUL(N) Q
 D D(17.6)
 I $$KNDO="NPD",'$$NOSHUL(N) Q
 D D(17.7)
 ;
 I $G(%ARG("LATEDORDS")),'$$LATED(N) D D(19.1) Q
 I $G(%ARG("READYORDS")),'$$READY^W4HZMST(N) D D(19.2) Q
 I $G(%ARG("TAKEDORDS")),'$$TAKED^W4HZMST(N) D D(19.3) Q
 I $G(%ARG("SUPPLIEDORDS")),'$$SUPPLIED^W4HZMST(N) D D(19.4) Q
 I $$NOTSUPPLORDS,$$SUPPLIED^W4HZMST(N) D D(19.45) Q
 ;
 I '$G(%ARG("DELETEDORDS")),$$DELORD(N),'$G(%ARG("NCA")) D D(19.5) Q
 ;
 I $G(%ARG("FUTUREORDS")),$$FUTURE(N),'$$DELORD(N) D D(19.51) G VIBSHOW
 ;
 ;;I $G(%ARG("SHOWTAW")),$$TAKEAWAY^W4HZMST(N),'$$DELORD(N),'$$DISPATH G VIBSHOW
 ;
 I $G(%ARG("DELETEDORDS")),$$DELORD(N) D D(19.52) G VIBSHOW
 ;
 ;
 I '$G(%ARG("SENDEDORDS")),'$$ALLORDS,$$SENDEDORD(N),'$$DELORD(N) D D(19.55) Q
 I '$$NOSENDEDORDS,'$$SENDEDORD(N),'$$DELORD(N) D D(19.57) Q
 ;
 D D(19.6)
 ;
 I '$G(%ARG("NOPAIDORDS")),$$NOSHUL(N),'$$DELORD(N) Q
 D D(19.62)
 I '$G(%ARG("PAIDORDS")),'$$NOSHUL(N),'$$DELORD(N) Q
 ;
 D D(21)
 ;
 N DATHZ S DATHZ=$$DTHZ(N)
 ;;W "N="_N_"  MEDT="_MEDT_" ADDT="_ADDT_" DATHZ="_DATHZ_" CODEHZ="_CODEHZ_"<br />",!
 I $G(MEDT),DATHZ<MEDT Q
 D D(23)
 ;
 I $G(ADDT),DATHZ>ADDT Q
 D D(24)
 ;
 I '$G(%ARG("FUTUREORDS")),$$FUTURE(N),'$$DELORD(N) Q
 ;
 D D(26)
VIBSHOW ; 
 N DATHZ S DATHZ=$$DTHZ(N)
 I $G(MEDT),DATHZ<MEDT Q
 D D(26.5)
 I $G(ADDT),DATHZ>ADDT Q
 N PSL
 D D(27)
 I $$MIKUM S PSL=+$P(FULLIND,"^",2) I $D(MPSL(PSL)) D D(28) Q
VIBSHOW1 ;
 D SHOWORD(MSDHZ,N,NOPC)
 ;
 N SHAA,MN S SHAA=$$SHAA^W4HZMST(N)
 S MN=10000+$TR($J(SHAA*60+$P(SHAA,":",2),4)," ",0)
 S @$$^W4MAIN("VIB")@(FULLIND)=""
 I $G(PSL) S MPSL(PSL)=""
 ;
 Q
 ;
 ;
SENDEDORD(HZ) ;
 I $$PSL^W4HZMST(HZ) Q 1
 Q 0
 ;
DELORD(HZ) ;
 I $$DEL^W4DEL(HZ) Q 1
 I $$TSHL^W4HZMST(HZ)<0 Q 1
 I $D(@$$^W4ORD@(HZ))'=11 Q 3
 Q 0
 ;
FUTURE(N) ;
 N DATHZ S DATHZ=$$DTHZ(N)
 I DATHZ>$H Q 1
 Q 0 
 ;
SHAAGV(STAM)
 Q $$SHAAZ^W4PRM
 ;
FAXORD(HZ) ;
 I $D(@$$^W3ORD(HZ)@(HZ,"F")) Q 1
 Q 0
 ;
MOUSEOVER ;
 N PRMHZ S PRMHZ=N_"~"_$G(MEDT)_"~"_$G(ADDT)_"~"_$G(LKH)
 W " onMouseOver=""ChangeCursor(this)"" onClick=""ShowOrd('"_N_"','"_PRMHZ_"',1)""",!
 Q
 ;
LATED(N) ;
 N IND,ENDTIME,CURTIME
 S IND=0
 S ENDTIME=$$TIME("SUPPLIED",N)
 S CURTIME=$$CURTIME("SUPPLIED",N)
 S IND=$$INDLATE(ENDTIME,CURTIME)
 I IND'<1 Q 4
 I $$SUPPLIED^W4HZMST(N) Q 0
 ;
 S ENDTIME=$$TIME("TAKED",N)
 S CURTIME=$$CURTIME("TAKED",N)
 S IND=$$INDLATE(ENDTIME,CURTIME)
 I IND'<1 Q 3
 I $$TAKED^W4HZMST(N) Q 0
 ;
 S ENDTIME=$$TIME("READY",N)
 S CURTIME=$$CURTIME("READY",N)
 S IND=$$INDLATE(ENDTIME,CURTIME)
 I IND'<1 Q 2
 I $$READY^W4HZMST(N) Q 0
 ;
 S ENDTIME=$$TIME("FAXTIME",N)
 S CURTIME=$$CURTIME("FAXTIME",N)
 S IND=$$INDLATE(ENDTIME,CURTIME)
 I IND'<1 Q 1
 Q 0
 ;
 ;
DTIME(TIME) ;
 Q $$DTIME^W4MMTIME(TIME)
 ;
SHOWORD(MSD,N,NOPC) ;
 D D(30)
 D GL
 I $D(@GL@(N))<11 Q
 S N=$TR(N," ","")
 N DAT,SHAA,IR
 S DAT=$$TRH^W4HZMST(N)
 S SHAA=$$SHAA^W4HZMST(N)
 S IR=$$IR^W4HZMST(N)
 N CMHD S CMHD=$$HRA2^W4HZMST(N)
 ;
 ; --------- ORDER NUMBER ---------
 ;
 D COMPTOT(N)
 ;
 I $G(NOPC) Q
 ;
 W "<tr "
 W ">"
  W "<td style=""font-weight:bold;text-align:center;cursor:pointer"
    W ";"_$$BGCOLOR(N)
   W """ "
   W " onClick=""ShowOrd('"_N_"')"" "
  W ">"
   W N
  W "</td>"
  ;
  W "<td align=""center"">"
   W $$DATCB(N)
  W "</td>"
  ;
  I '$$NOFUTDAT^W4PRM D
  .W "<td style=""text-align:center;font-weight:bold"">"
  . W $$TRH^W4HZMST(N)
  .W "</td>"
  ; 
  W "<td style=""text-align:center;font-weight:bold"">"
   W $$SHAA^W4HZMST(N)
  W "</td>"
  ;
  W "<td align=""center"">"
   W $$NMB^W4HZMST(N)
  W "</td>"
  ;
  W "<td style=""font-weight:bold"" >"
   W "&nbsp;&nbsp;"_$$H2U^%L1FRM($$NAME^W4HZMST(N))
  W "</td>"
  ;
  W "<td id=""tdfax"_N_""")"
   W " style="""_$$FAXBGCOLOR(N)_";cursor:pointer"" "
   W " onClick=""SendAgain('"_N_"')"" "
  W ">"
   W $$STATFAX(N)
  W "</td>"
 ;
 W "<td id=""tdvidu"_N_""" align=""center"">" ; -- FAXKIND
  D
  .I $L($$VIDU^W4HZMST(N)) D  Q
  ..W $$CHN^W4MMTIME("VIDU",N,$$2460(N,"VIDU"))
  .I $$DISPATH W "<B>"_$$CHKBOX^W4MMTIME("VIDU",N,"tdvidu"_N)_"</B>" Q
  .W "&nbsp;"
 W "</td>"
 ;
 W "<td align=""center"" >" ; -- makor
  D
  .N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(N)
  .N IMG S IMG="w4intr.png"
  .I $P(HZMLAK,"/",3) S IMG="w4tel.png"
  .W "<img src="""_$$WEB^W3MAIN_IMG_""" />"
 W "</td>"
 ;
 W "<td style=""font-weight:bold;color:darkblue"" >" 
  D
  .N MSDHZ S MSDHZ=$$MSDHZM^W4HZMST(N) I 'MSDHZ W "&nbsp;" Q
  .W $$IMG("ShowRestTel('"_MSDHZ_"')")
  .W "&nbsp;"_$$H2U^%L1FRM($$MSDN^W3R(MSDHZ))
 W "</td>"
 ;
 W "<td style=""font-weight:bold"" >" ;
   W $$IMG("ShowAddressDetails('"_N_"')")
   W "&nbsp;"_$$H2U^%L1FRM($$KTV^W4HZMST(N)_" "_$$BAIT^W4HZMST(N)_","_$$IR^W4HZMST(N))
 W "</td>"
 ;
 N PSL S PSL=$$PSL^W4HZMST(N)
 ;
 W "<td style=""font-weight:bold"" " 
  I 'PSL,$$DISPATH W "align=""center"" "
  W ">"
  D
  .I 'PSL,$$DISPATH D PSLCH(N) Q
  .I 'PSL W "&nbsp;" Q
  .W $$IMG("ShowCourierTel('"_PSL_"')")_"&nbsp;"
  .W $$NMH2U^W4SL(PSL)
 W "</td>"
 ;
 W "<td align=""center"" id=""tdready"_N_""" "
  W "style="""
   W $$BGCTIME(N,"READY")
  W """ "
 W ">"
  D
  .I $L($$READY^W4HZMST(N)) D  Q
  ..W $$CHN^W4MMTIME("READY",N,$$2460(N,"READY"))
 W "</td>"
 ;
 W "<td align=""center"" id=""tdtaked"_N_""" "
  W "style="""
   W $$BGCTIME(N,"TAKED")
  W """ "
 W ">"
  D
  .I '$$PSL^W4HZMST(N) W "&nbsp;" Q
  .I $L($$TAKED^W4HZMST(N)) D  Q
  ..W $$CHN^W4MMTIME("TAKED",N,$$2460(N,"TAKED"))
  .I $$DISPATH W $$CHKBOX^W4MMTIME("TAKED",N,"tdtaked"_N)
 W "</td>"
 ;
 W "<td align=""center"" id=""tdsuppl"_N_""" "
  W "style="""
   W $$BGCTIME(N,"SUPPLIED")
  W """ "
 W ">"
  D
  .I '$$PSL^W4HZMST(N) W "&nbsp;" Q
  .I $L($$SUPPLIED^W4HZMST(N)) D  Q
  ..W $$CHN^W4MMTIME("SUPPLIED",N,$$2460(N,"SUPPLIED"))
  .I $$DISPATH W $$CHKBOX^W4MMTIME("SUPPLIED",N,"tdsuppl"_N)
 W "</td>"
 ;
 W "<td style=""font-weight:bold"
  I '$$SHUL^W4HZMST(N)&'$$SHULA^W4HZMST(N) D
  .W ";background-color:pink"
  W """ >"
  W $$IMG("ShowPaym('"_N_"')")_"&nbsp;"
  W $J($$TSHL^W4HZMST(N),2,2)
 W "</td>"
 ;
 W "</tr>",!
 Q
 ;
 ;
CHKSND(N) ;
 W "<input id=""chk"_N_""" type=""checkbox"" "
  W "  onClick=""ChkClick('"_N_"')"" style=""display:none"" "
 W "/>"
 W "<label id=""lbsnd"_N_""" for=""chk"_N_""" >"
  W "<img src=""w4chkboxn.png"" />"
 W "</label>"
 Q
 ;
IMG(PROC) ;
 Q $$IMG^W4MMTIME(PROC)
 ;
FAXBGCOLOR(ORD) ;
 N IND S IND=+$$FAXLATE^W4FAXHTM(ORD)
 I IND>0 Q "background-color:"_$S(IND=1:"lightgreen",IND=2:"yellow",1:"red")
 Q ""
 ;
NEW(HZ,MSD) ;
 I $G(HZ)="" Q 0
 N LKH S LKH=$$NMB^W4HZMST(HZ)
 I $G(LKH)="" Q 0
 I $G(MSD)="" Q 0
 I $O(@$$^W4GL("W4LINKI")@(LKH,MSD,HZ),-1)="" Q 1
 Q 0
 ;
MSGTM(DAT,SHAA,IR,ORD) ;
 N PER S PER=$$PERIOD(DAT,SHAA,IR,ORD)
 I PER=0,'$$SENDEDORD(ORD) W "<span style=""color:red"">"_$$^%W1DICT("NOW!")_"</span>"
 I PER=1 W $$^%W1DICT("TODAY")
 I PER=-1 Q
 I PER>1 W $$^%W1DICT("FUTURE")
 Q
 ;
PERIOD(DAT,SHAA,IR,ORD)
 N TVAH
 S TVAH=$$THZ^W3TIME(IR)
 I 'TVAH S TVAH=60
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)<TVAH Q 0
 I $$^%L1DC(DAT,3)=+$H,$$MIN(SHAA)-($P($H,",",2)\60)>TVAH Q 1
 I $$^%L1DC(DAT,3)<+$H Q -1
 I $$^%L1DC(DAT,3)>+$H Q 2
 I $G(ORD),$$DAHUY^W4HZPCHD(ORD) Q 1.5
 Q ""
 ;
MIN(SHAA) ;
 Q $P(SHAA,":")*60+$P(SHAA,":",2)
 ;
 ;
SELNAME(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 ;
 D SEDER(GR)
 N NXT S NXT=$O(^[$$^W3MAIN]TMP(JB,""))
 I NXT="" Q
 N PR1 S PR1=0
 S NXT=$O(^[$$^W3MAIN]TMP(JB,NXT))
 I NXT="" S PR1=1
 ;
 W "<select id=""nmid"""
 I $D(W3BOR) W " onChange=""ChangeRest()"""
 W ">",!
 I 'PR1 D
 .W "<option value=""ALL"""
 .I '$G(%ARG("MSD")) W " selected=""selected"""
 .W ">"_$$^%W1DICT("ALL")_"</option>",!
 N N S N="" F  S N=$O(^[$$^W3MAIN]TMP(JB,N)) Q:N=""  D
 .D SELNAME1(N,^(N))
 W "</select>",!
 K ^[$$^W3MAIN]TMP(JB)
 Q
 ;
SELNAME1(INVMSD,MSD) ;
 Q:$G(INVMSD)=""
 N VL S VL=$$H2U^%L1FRM($$INV^%L1FRM(INVMSD))
 W "<option value="""_MSD_""""
 I $G(%ARG("MSD")),MSD=%ARG("MSD") W " selected=""selected"""
 W ">"
 W MSD_" "_VL
 W "</option>",!
 Q
 ;
SEDER(GR) ;
 K ^[$$^W3MAIN]TMP(JB)
 N N,NS D
 .S N="" F NS=1:1 S N=$O(^[$$^W3MAIN]W3MSDR(GR,N)) Q:N=""  D
 ..I $G(^(N)) D CRTMP(N)
 Q
 ;
DTHZ(ORD) ;
 N DTHZ S DTHZ=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 N SHAA S SHAA=$$SHAA^W4HZMST(ORD)
 I '$$NIGHT^W4PRM,SHAA<$$SHAAGV S DTHZ=DTHZ-1
 ;
 I $G(%ARG("GLLINK"))="W4LINKDR" D
 .S DTHZ=$$^%L1DC($P($$DATCB^W4HZMST(ORD),"  "),3)
 .I '$$NIGHT^W4PRM,SHAA<$$SHAAGV S DTHZ=DTHZ-1
 .S SHAA=$P($$DATCB^W4HZMST(ORD),"  ",2)
 ;
 I DTHZ Q DTHZ
 Q $$^W4DZ
 ;
 ;
CRTMP(MSD) ;
 N INV,NM
 S NM=$G(^[$$^W3MAIN]W3MSD(MSD))
 S INV=$$INV^%L1FRM(NM) Q:INV=""
 S ^[$$^W3MAIN]TMP(JB,INV)=MSD
 Q
 ;
 ;
STAT(KOT,VL,PR)
 I 'VL W "<td width=""2%"">&nbsp;</td>" Q
 ;
 W "<td style="""_$$FONTFM^W3CSS_";width:16%;color:"_$S($G(PR):"black",1:"gray")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  W $$^%W1DICT(KOT)_" : "
  W "&nbsp;<span style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
  W VL_"</span>"
 W "</td>"
 Q
 ;
D(C) ;
 S ^D(N)=C
 ;;W "N="_N_"  C="_C_" "_$H_"   ",!
 Q
 ;
INIT ;
 K ^D
 D KILL^%W3DEB("W4DLVORD")
 D KILL^%W1PRM("PSL")
 S MSD=$$GETP^%W1PRM("MSD")
 D ^%W1ARG
 I $$MSDR^W4PRM,'$G(%ARG("MSDR")) S %ARG("MSDR")=$$MSDR^W4PRM 
 I $G(%ARG("MSDR")) K MSD
 S MKBL=$G(MKBL)
 I $$MY S MKBL=$G(%ARG("MY"))
 I $$DISPATH D PUT^%W1PRM("DISPATH",$$DISPATH)
 D ^W4IN ; --> P1DZ
 ;
 I $G(%ARG("MEDAT")) S MEDT=$$^%L1DC(%ARG("MEDAT"),3)
 I $G(%ARG("ADDAT")) S ADDT=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 I '$G(MEDT) S MEDT=P1DZ I $$DISPATH S MEDT=P1DZ-60
 I '$G(ADDT) S ADDT=P1DZ+180
 ;
 D PUT^%W3DEB("W4DLVORD","MEDT=MEDT & ADDT=ADDT & MSD=MSD & CODE=CODE & LKHR=LKHR & ARG=[%ARG")
 ;
 S W4DLVORD("JB")=JB
 ;
 S GL=$$^W4ORD
 ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 S PRMDB=0
 N N S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  I $$PRINTIG^W3PRMDP(N)[">" S PRMDB=1 Q
 ;
 I $G(%ARG("KNDO"))="DEL" S %ARG("DELETEDORDS")=1
 Q
 ;
KOT ;
 W "<table width=""100%"" border=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td width=""6%""><b>"_$$^%W1DICT("TOTAL")_"</b></td>",!
   D STAT("ORDERQN",SHZ,1)
   D STAT("NEWCLIENTS",SNEW,1)
   D STAT("WAITING",SNOSBM,1)
   D STAT("NOSENDED",SNOSHUD,1)
   D STAT("NOPAID",SNOSHUL,1)
   D STAT("NODLV",SNODLV,1)
   D STAT("TOPAY",$J($G(SPAY),2,2),1)
  W "</tr>",!
 W "</table>",!
 Q
 ;
KOTTB ;
 W "<tr>",!
 W "<th>"_$$^%W1DICT("ORDER")_"</th>"
 W "<th>"_$$^%W1DICT("RECEIVED")_"</th>"
 I '$$NOFUTDAT^W4PRM D
 .W "<th>"_$$^%W1DICT("TODATE")_"</th>"
 W "<th>"_$$^%W1DICT("TOTIME")_"</th>"
 W "<th>"_$$^%W1DICT("CUSTCODE")_"</th>"
 W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
 W "<th>"_$$^%W1DICT("FAX")_"</th>"
 W "<th>"_$$^%W1DICT("VIDU")_"</th>"
 W "<th>"_$$^%W1DICT("MAKOR")_"</th>"
 W "<th>"_$$^%W1DICT("RESTAURANT")_"</th>"
 W "<th>"_$$^%W1DICT("ADDRESS")_"</th>"
 W "<th>"_$$^%W1DICT("COURIER")_"</th>"
 W "<th>"_$$^%W1DICT("READY")_"</th>"
 W "<th>"_$$^%W1DICT("TAKED")_"</th>"
 W "<th>"_$$^%W1DICT("SUPPLIED")_"</th>"
 W "<th>"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 Q
 ;
TOT ;
 W "<tr"
 W " style=""font-size:"_$$^W3FSZ(20)_";background-color:yellow"""
 W ">"
  W "<td>&nbsp;"
  W $$^%W1DICT("TOTAL")
  W "</td>",!
  ;
  W "<td "_$$COLSPAN_" >",!
   W "<table width=""100%"">"
    W "<tr style=""font-size:"_$$^W3FSZ(20)_""">",!
     W "<td width=""50%"" style=""color:red"">",!
      W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SHZ)
     W "</td>",!
     W "<td style=""text-align:center"" >"
      W "<span style='color:red;font-size:"_$$^W3FSZ(14)_"'>"_$$^%W1DICT("DISCOUNTS")_"&nbsp;:&nbsp;"_$J(SHNH,2,2)_"</span>"_$$NBSP^%L1FRM(5)
      W "<span style='color:green;font-size:"_$$^W3FSZ(14)_"'>"_$$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SDMS,2,2)_"</span>"
     W "</td>",!
    W "</tr>"
   W "</table>"
  W "</td>",!
  ;
  W "<td style=""color:red"" colspan=""3"">",!
   W "&nbsp;"_$J($G(SPAY),2,2)_"&nbsp;"
  W "</td>",!
  ;
 W "</tr>",!
 ;
 I $G(SNEW),'$$REPTRH D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:#fafad2"""
 .W "><td>&nbsp;"
 .W $$^%W1DICT("NEWCLIENTS")
 .W "</td>",!
 .W "<td style=""color:brown"" "_$$COLSPAN_">",!
 .W " <table width=""100%"">"
 .  W "<tr style=""font-size:"_$$^W3FSZ(16)_""">",!
 .   W "<td width=""50%"">",!
 .    W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_SNEW
 .   W "</td>"
 .   W "<td style='text-align:center;color:red;font-size:"_$$^W3FSZ(14)_"'>"
 .    W $$^%W1DICT("DISCOUNTS")_"&nbsp;:&nbsp;"_$J(SNEWHN,2,2)
 .   W "</td>",!
 .   W "<td style='text-align:center;font-size:"_$$^W3FSZ(14)_"'>"
 .    W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J(SNEWDM,2,2)
 .   W "</td>",!
 .  W "</tr>"
 . W "</table>",!
 .W "</td>",!
 .W "<td style=""color:brown"" colspan=""2"">",!
 .W "&nbsp;"_$J(SNEWPAY,2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 I $O(SMSD($O(SMSD(""))))'="" N RST S RST="" F  S RST=$O(SMSD(RST)) Q:RST=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:white;color:green"""
 .W "><td>&nbsp;"
 . W $$NAME^W3MSD(RST)
 .W "</td>",!
 .W "<td "_$$COLSPAN_" >",!
 .W " <table width=""100%"">"
 . W " <tr style=""font-size:"_$$^W3FSZ(16)_";color:green"">",!
 .  W "<td width=""50%"">",!
 .   W "&nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMSD(RST,"Q"))
 .  W "</td>"
 .  W "<td style='text-align:center'>"
 .     W $$^%W1DICT("DLVPAY")_"&nbsp;:&nbsp;"_$J($G(SMSD(RST,"D")),2,2)
 .  W "</td>",!
 . W "</tr>"
 . W "</table>"
 .W "</td>",!
 .W "<td colspan=""2"">",!
 .W "&nbsp;"_$J($G(SMSD(RST,"S")),2,2)_"&nbsp;"
 .W "</td>",!
 .W "</tr>",!
 ;
 I '$$REPTRH N SUGT S SUGT="" F  S SUGT=$O(SCODTS(SUGT)) Q:SUGT=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:lightblue;color:darkblue"""
 .W ">"
 .W " <td>&nbsp;"
 .     N W3SHOWTS S W3SHOWTS("CA")=""
 .     W $$^W3SHOWTS(SUGT)
 .W " </td>",!
 .W " <td "_$$COLSPAN_">",!
 .W "  <table width=""100%"">"
 .W "   <tr style=""font-size:"_$$^W3FSZ(16)_";color:darkblue"">",!
 .W "    <td width=""50%"">",!
 .W "       &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SCODTS(SUGT,"Q"))
 .W "    </td>",!
 .W "    <td style='text-align:center'>"
 .W "    </td>",!
 .W "   </tr>",!
 .W "  </table>",!
 .W " </td>",!
 .W " <td colspan=""2"">",!
 .W "  &nbsp;"_$J($G(SCODTS(SUGT,"S")),2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
 ;
 N MKR I '$$REPTRH S MKR="" F  S MKR=$O(SMKR(MKR)) Q:MKR=""  D
 .W "<tr"
 .W " style=""font-size:"_$$^W3FSZ(16)_";background-color:orange;color:darkbrown"""
 .W ">"
 .W " <td>&nbsp;"
 .W $$^W3MKR(MKR)
 .W " </td>",!
 .W " <td "_$$COLSPAN_" >",!
 .W "  <table width=""100%"">"
 .W "   <tr style=""font-size:"_$$^W3FSZ(16)_";color:darkbrown"">",!
 .W "    <td width=""50%"">",!
 .W "       &nbsp;&nbsp;"_$$^%W1DICT("ORDERQN")_"&nbsp;:&nbsp;"_$G(SMKR(MKR,"Q"))
 .W "    </td>",!
 .W "    <td style='text-align:center'>"
 .W "    </td>",!
 .W "   </tr>",!
 .W "  </table>",!
 .W " </td>",!
 .W " <td colspan=""2"">",!
 .W "  &nbsp;"_$J($G(SMKR(MKR,"S")),2,2)_"&nbsp;"
 .W " </td>",!
 .W "</tr>",!
EN ;
 Q
 ;
COLSPAN(STAM) Q " colspan="""_$S($$NOFUTDAT^W4PRM:12,1:13)_""" "
 ;
BUTTONS ;
 W "<table id=""TblBut""><tr>",!
 I '$$DISPATH D
 .W " <td>" D BUTTON("rbtprint",$$^%W1DICT("PRINTORDERLIST"),"Print('4','"_$G(MEDT)_"','"_$G(ADDT)_"','"_$G(CODE)_"')","font-size:"_$$^W3FSZ(16)) W "</td>",!
 ;
 D BACK
 W "</tr></table>",!
 Q
 ;
BACK ;
 W " <td "
 I $D(BACKALIGN) W BACKALIGN
 W ">"
  D BUTTON("rbtback",$$^%W1DICT("BACK"),"Back()","color:red;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 Q
 ;
GL S GL=$$^W4ORD
 Q
 ;
DISPATH(STAM) ;
 Q $G(%ARG("DISPATH"))
 ;
TAW(STAM) ;
 Q $G(%ARG("TAW"))
 ;
 ;
COMPTOT(N) ;
  N TS S TS=$$TSHL^W4HZMST(N)
  N DMS S DMS=$$DMSH^W4HZMST(N)
  N HNH S HNH=$$HNH^W4HZMST(N)
  ;
  S SPAY=$G(SPAY)+TS
  S SDMS=SDMS+DMS
  S SHNH=SHNH+HNH
  S SHZ=SHZ+1
  ;
  I $$DELORD(N) S SDEL=SDEL+1
  I $$SENDEDORD(N) S SSBM=SSBM+1
  ;
  I '$$SENDEDORD(N),'$$DELORD(N) D
  .S SNOSBM=SNOSBM+1
  ;
  I $$NOSHUL(N) S SNOSHUL=SNOSHUL+1
  ;
  I '$$SEND2CUST(N) S SNODLV=SNODLV+1
  ;
  D
  .N CODTS,SUM,ITRA,MZM,CHK,CA,ASR
  .S CODTS=$$CODTS^W4HZMST(N)
  .S SUM=TS
  .I CODTS<2 S CODTS=1
  .S ITRA=$$ITRA^W4HZMST(N)
  .S MZM=$$MZM^W4HZMST(N)
  .S CHK=$$CHK^W4HZMST(N)
  .S CA=$$CA^W4HZMST(N)
  .S ASR=$$ASR^W4HZMST(N)
  .S SCODTS(1,"S")=$G(SCODTS(1,"S"))+ITRA
  .I MZM S SCODTS(1,"S")=$G(SCODTS(1,"S"))+MZM
  .I CHK S SCODTS(2,"S")=$G(SCODTS(2,"S"))+CHK
  .I CA S SCODTS(3,"S")=$G(SCODTS(3,"S"))+CA
  .I ASR S SCODTS(4,"S")=$G(SCODTS(4,"S"))+ASR
  .S SCODTS(CODTS,"Q")=$G(SCODTS(CODTS,"Q"))+1
  ;
  D
  .N RST S RST=$P($G(@$$GLLINK@(N)),"~") Q:'RST
  .S SMSD(RST,"Q")=$G(SMSD(RST,"Q"))+1
  .S SMSD(RST,"S")=$G(SMSD(RST,"S"))+TS
  .S SMSD(RST,"D")=$G(SMSD(RST,"D"))+DMS
  .S SMSD(RST,"HN")=$G(SMSD(RST,"HN"))+$G(HNH)
  ;
  I $G(MSD),$$NEW(N,MSD) D
  .S SNEW=SNEW+1
  .S SNEWPAY=SNEWPAY+TS
  .S SNEWDM=SNEWDM+$$DMSH^W4HZMST(N)
  .S SNEWHN=SNEWHN+$$HNH^W4HZMST(N)
  ;
  N MKR S MKR=$$MKRDLV^W4HZMST(N)
  I MKR="" S MKR=99
  S SMKR(MKR,"Q")=$G(SMKR(MKR,"Q"))+1
  S SMKR(MKR,"S")=$G(SMKR(MKR,"S"))+TS
  Q
  ;
SEND2CUST(ORD) ;
 I $$PSL^W4HZMST(ORD) Q 1
 Q 0
 ;
NOSHUL(ORD) ;
 I $$TSHL^W4HZMST(ORD)>($$SHUL^W4HZMST(ORD)+$$SHULA^W4HZMST(ORD)) Q 1
 Q 0
 ;
SHOW4COPY(STAM) ;
 Q +$G(%ARG("SHOW4COPY"))
 ;
DIVPSL ;
 W "<div dir="""_$$^%W1DIR_""">",!
 W " <table border=""0"" width=""98%"">",!
 ;
 W "  <tr>",!
  I $G(%ARG("MKBL")) D PSLRCV
  ;
  I $$DISPATH D
  .D PSLCHOICE
  ;
 W "  </tr>",!
 ;
 W "<tr>"
  D PSLRADIO
  ;
  I $$DISPATH D  Q
  .D PSLSHOW W "</tr>",!
  .W "<tr>"
  . W "<td>"_$$CHKBOX("LATEDORDS","lated")_"</td>"
  . W "<td>"_$$CHKBOX("READYORDS","ready")_"</td>"
  . I $$ALLORDS D
  . .W "<td>"_$$CHKBOX("TAKEDORDS","taked")_"</td>"
  . .W "<td>"_$$CHKBOX("SUPPLIEDORDS","supplied")_"</td>"
  . .W "<td style=""width:10%"">&nbsp;</td>"
  . .W "<td>"_$$CHKBOX("FUTUREORDS","futureords")_"</td>"
  . .W "<td>"_$$CHKBOX("DELETEDORDS","deletedords")_"</td>"
  .W "</tr>"
  ;
 I $$1024^W4WDSCR D
 . D TDSP
 . D PSLSHOW
 . N BACKALIGN S BACKALIGN=$$INV^%W1ALIGN 
 . D BACK
 .W "</tr>",!
 .
 .W "<tr>"
 . D ORDSOURCE
 . D PAYMKIND
 ;
 I '$$1024^W4WDSCR D
 .D TDSP
 ;
 W "<td "
  I $$1024^W4WDSCR W " colspan=""2"" "
 W ">"_$$^%W1DICT("ORDER")_$$REVAH
  W "<input type=""text"" id=""ordernmb"" size=""10"" maxlength=""12"" onClick=""this.select()"" "
   W $$ONCHANGE
  W "/>"
 W "</td>"
 ;
 ;;D
 .W "<td "
 . I $$1024^W4WDSCR W " colspan=""2"" "
 .W ">"_$$^%W1DICT("AUTHNO")_$$REVAH
 . W "<input type=""text"" value="""_$$HB($G(%ARG("HZMLAK")))_""" "
 .  W "id=""hzmlak"" size=""10"" maxlength=""12"" onClick=""this.select()"" "
 .  W $$ONCHANGE
 . W "/>",!
 .W "</td>"
 ;
 W "<td "
  I $$1024^W4WDSCR W " colspan=""3"" align=""center"" "
 W ">"_$$^%W1DICT("CUSTOMNUMBERORNAME")_$$REVAH
  D
  .N CUST S CUST=$$INVH^%L1FRM($G(%ARG("CUSTOM")))
  .W "<input type=""text"" id=""custom"" size=""10"" "
  .D 
  .. I $G(%ARG("CUSTOM"))'="" W " value="""_$$HB($G(%ARG("CUSTOM")))_""" " Q
  .. I $G(%ARG("LKH"))'="" W " value="""_$G(%ARG("LKH"))_""" " Q
  .. I $G(%ARG("COMP"))'="" W " value="""_$$HB($G(%ARG("COMP")))_""" " Q
  .. I $G(%ARG("NAME"))'="" W " value="""_$$HB($G(%ARG("NAME")))_""" " Q
  . W " maxlength=""12"" "
  .W $$ONCHANGE
  .W "/>",!
 W "</td>"
 ;
 I '$$DISPATH,'$$1024^W4WDSCR D
 .D PSLSHOW
 .I $$DISPATH W "<td>&nbsp;</td>",!
 .N BACKALIGN S BACKALIGN=$$INV^%W1ALIGN 
 .D BACK
 W "</tr>",!
 ;
 I '$$DISPATH D
 .W "<tr>"
 . D PSLCHK
 .W "</tr>",!
 ;
 ;
 W "</table>",!
 Q
 ;
 ;
HB(PRM) 
 I $G(PRM)="" Q ""
 S PRM=$$INVH^%L1FRM(PRM)
 Q $$H2U^%L1FRM(PRM)
 ;
PSLRCV ;
 W "<td style=""color:darkblue"" "_$$^%W1ALIGN_" >"
 W " <b>"_$$^%W1DICT("RECEIVER")_" : "_$$H2U^%L1FRM($$^W4NAME(%ARG("MKBL")))_"</b>"
 W "</td>",!
 W "<td width=""20%"">&nbsp;</td>"
 Q
 ;
 ;
PSLCHOICE ;
 D PSLSBM
 ;
 D TDSP
 ;
 W "<td>"
  D BUTTON("rbtpsl",$$^%W1DICT("COURMG"),"CourMg()","color:blue;font-size:"_$$^W3FSZ(16))
 W "</td>"
 ;
 W "<td>"
  D BUTTON("findord",$$^%W1DICT("FINDORDERS"),"FindOrds()","background-color:lightblue;color:black;font-size:"_$$^W3FSZ(16))
 W "</td>"
 ;
 D TDSP
 ;
 ;W "<td>"
 ; W $$^%W1DICT("ORDER")_$$NBSP^%L1FRM(2)
 ; W "<input type=""text"" id=""order"" size=""8"" value="""_$G(%ARG("ORDER"))_""" />",!
 ; D BUTTON("showord",$$^%W1DICT("SHOW"),"ShowOrd()","color:green;font-size:"_$$^W3FSZ(16))
 ;W "</td>"
 D TDSP
 ;
 D TDSP
 ;
 W "<td>"
  D BUTTON("misc",$$^%W1DICT("MISC"),"Misc()","background-color:orange;color:black;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 ;
 W "<td colspan="""_(3-$$1024^W4WDSCR)_""">&nbsp;</td>"
 N BACKALIGN S BACKALIGN=$$INV^%W1ALIGN 
 D BACK
 Q
 ;
 ;
PSLCH(ORD) ;
 W " <select id=""psl"_ORD_""" onChange=""ChangePsl('"_ORD_"')"" >",!
 W "  <option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
 N VRMSL S VRMSL=$$^W4MAIN("VRMSL") K @VRMSL
 ;
 N N,K S N="",K=0 F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  I N<9999 D
 .N NM S NM=$G(^(N))
 .I '$$PRES^W4SL(N) Q
 .S @VRMSL@($$^W4ABCIND(N,NM))=N
 .S K=K+1
 ;
 N IND S IND="" F  S IND=$O(@VRMSL@(IND)) Q:IND=""  D
 .N N S N=$G(^(IND)) Q:N=""
 .N A S A=$$NMH2U^W4SL(N)
 .W " <option value="""_N_""" ",!
 .W ">"
 . W A
 .W " </option>",!
 ;
 K @VRMSL
 Q
 ;
 ;
PSLCHK ;
 D
 .I '$$1024^W4WDSCR D
 ..D ORDSOURCE
 ..;
 ..D PAYMKIND
 .;
 .D SHOWSNDORNOORDERS
 .;
 .D TDSP
 .;
 .D SHOWPAIDORNOORDERS 
 ..
 ..D TDSP
 ..
 ..D SHOWDELORDERS
 ..
 ..D SHOWFUTORDERS
 ..
 ..I '$$DISPATH D SHOWTAW
 ;
 W "<td>&nbsp;</td>",!
 Q
 ;
 ;
ORDSOURCE ;
 W "<td>"
  W $$^%W1DICT("ORDERSOURCE")_$$REVAH
  W "<select id=""mkr"" "_$$ONCHANGE
  W ">",!
   D
   .W "<option value=""ALL"" "
   .I $G(%ARG("MKR"))="ALL"!($G(%ARG("MKR"))="") W " selected=""selected"" "
   .W ">"_$$^%W1DICT("ALL")_"</option>",!
   .
   .N N S N="" F  S N=$O(^[$$^W3MAIN]W3MKR(N)) Q:N=""  D
   ..N A S A=$G(^(N)) 
   ..W "<option value="""_N_""" "
   ..I $G(%ARG("MKR"))=N W " selected=""selected"" "
   ..W ">"_$$H2U^%L1FRM(A)_"</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
PAYMKIND ;
 W "<td>"
  W $$^%W1DICT("PAYMENTKIND")_$$REVAH
  W "<select id=""paymkind"" "
   W $$ONCHANGE
  W ">",! 
   D
   .W "<option value=""ALL"" >"_$$^%W1DICT("ALL")_"</option>",!
   .N N S N="" F  S N=$O(@$$^W4GL("W3SUGTS")@(N)) Q:N=""  D
   ..N A S A=$G(^(N)) 
   ..W "<option value="""_N_""" "
   ..I $G(%ARG("SUGTS"))=N W " selected=""selected"" "
   ..W ">"_$$H2U^%L1FRM(A)_"</option>",!
  W "</select>",!
 W "</td>"
 Q
 ;
SHOWSNDORNOORDERS ;
 W "<td>"
  W $$^%W1DICT("SHOWNOSENDEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""nosendedords"" "
  I $$NOSENDEDORDS W " checked=""checked"" "
  I $$KNDO="SND" W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
  ;
  D SPACE
  W $$^%W1DICT("SHOWSENDEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""sendedords"" "
  I $G(%ARG("SENDEDORDS")) W " checked=""checked"" "
  I $$KNDO="NSND" W " disabled=""disabled"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWPAIDORNOORDERS ;
 W "<td>"
  W $$^%W1DICT("SHOWNOPAIDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""nopaidords"" "
  I $G(%ARG("NOPAIDORDS")) W " checked=""checked"" "
  I $$KNDO="PD" W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
  ;
  I '$$1024^W4WDSCR D SPACE
  I $$1024^W4WDSCR W "</td><td>"
  ;
  W $$^%W1DICT("SHOWPAIDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""paidords"" "
  I $G(%ARG("PAIDORDS")) W " checked=""checked"" "
  I $$KNDO="NPD" W " disabled=""disabled"" "
  W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWDELORDERS ;
 W "<td>" 
  W $$^%W1DICT("SHOWDELETEDORDS")_"&nbsp;"
  W "<input type=""checkbox"" id=""deletedords"" "
  I $G(%ARG("DELETEDORDS")) W " checked=""checked"" "
  W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
SHOWFUTORDERS ;
 W "<td>" 
 W $$^%W1DICT("SHOWFUTUREORDS")_"&nbsp;"
 W "<input type=""checkbox"" id=""futureords"" "
 I $G(%ARG("FUTUREORDS")) W " checked=""checked"" "
  W $$ONCHANGE
 W " />"
 W "</td>"
 Q
 ;
SHOWTAW ;
 W "<td>" 
 W $$^%W1DICT("SHOWTAW")_"&nbsp;"
 W "<input type=""checkbox"" id=""showtaw"" "
 I $G(%ARG("SHOWTAW")) W " checked=""checked"" "
 W $$ONCHANGE
 W " />"
 W "</td>"
 Q
 ;
 ;
PSLRADIO ;
  I '$$DISPATH D
  .W "<td>"
  . D KINDORDS
  .W "</td>",!
  ;
  I $$DISPATH D
  .W "<td colspan=""2"" >"
  . W $$^%W1DICT("SHOWALLORDS")
  . W "<input type=""radio"" name=""kindsort"" "
  .  I $$ALLORDS W " checked=""checked"" "
  .  W " onChange=""ShowOrds()"" " ;;W $$ONCHANGE
  . W " />"
  . D SPACE
  . W $$^%W1DICT("SHOWNOTDLVORDS")
  . W "<input type=""radio"" name=""kindsort"" "
  .  I '$$ALLORDS,'$$NOTSUPPLORDS W " checked=""checked"" "
  .  W " onChange=""ShowOrds()"" " ;;W $$ONCHANGE
  . W " />"
  . D SPACE
  . W $$^%W1DICT("SHOWNOTSUPPLORDS")
  . W "<input type=""radio"" name=""kindsort"" "
  .  I '$$ALLORDS,$$NOTSUPPLORDS W " checked=""checked"" "
  .  W " onChange=""ShowOrds()"" " ;;W $$ONCHANGE
  . W " />"
  .W "</td>"
  .;
  .W "<td>&nbsp;</td>"
  ;
  D TIMESORT
  ;
  D ASCENDING
  ;
  I $$DISPATH D
  .D TDSP
  .D SHOWTAW
  .I '$$1024^W4WDSCR D TDSP,TDSP,TDSP
 Q
 ;
 ;
TIMESORT ;
 W "<td "
   W "colspan=""2"" "
 W ">"
  W $$^%W1DICT("RESTSORT")
  W "<input type=""checkbox"" id=""restsort"" "
   I $G(%ARG("RESTSORT")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  D SPACE
  W $$^%W1DICT("TIMESORT")
  W "<input type=""radio"" name=""timesort"" "
   I $G(%ARG("TIMESORT")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  D SPACE
  W $$^%W1DICT("ORDERSORT")
  W "<input type=""radio"" name=""timesort"" "
   I '$G(%ARG("TIMESORT")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
ASCENDING ;
 W "<td "
  I $$1024^W4WDSCR W "colspan=""3"" "
  W "colspan=""2"" "
 W ">"
  W $$^%W1DICT("FROMOLD2NEW")
  W "<input type=""radio"" name=""sortasc"" "
   I $G(%ARG("ASCENDING")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
  I '$$1024^W4WDSCR D SPACE
  I $$1024^W4WDSCR W "</td><td>"
  W $$^%W1DICT("FROMNEW2OLD")
  W "<input type=""radio"" name=""sortasc"" "
   I '$G(%ARG("ASCENDING")) W " checked=""checked"" "
   W $$ONCHANGE
  W " />"
 W "</td>"
 Q
 ;
PSLSHOW ;
 W "<td "_$$INV^%W1ALIGN_" >"
  D BUTTON("show",$$^%W1DICT("SHOW")_"&nbsp;","ShowOrds()","color:brown;font-size:"_$$^W3FSZ(16))
 W "</td>",!
 Q
 ;
 ;
PSLSBM ;
 W "<td colspan=""2"" width=""30%"">"
  N TXT S TXT=$$NBSP^%L1FRM(3)_$$^%W1DICT("SENDDLV")_$$NBSP^%L1FRM(3)
  D BUTTON("submpsl",TXT,"SubmPsl()","color:green;font-size:"_$$^W3FSZ(16))
 W "</td>"
 Q
 ;
 ;
SETDLV(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETDLV","PRM=PRM")
 N HZ,PSL
 S HZ=$P(PRM,";") Q:'HZ 0
 S PSL=$P(PRM,";",2)
 ;
 N ER S ER=0
 ;
 N ISHUR S ISHUR=$P(PRM,";",3)
 N ITRA S ITRA=$$ITRA^W4HZMST(HZ)
 N CODTS S CODTS=$$CODTS^W4HZMST(HZ)
 I PSL,ITRA>.5,'ISHUR,$D(@$$^W4ORD@(HZ,"CB","V"))>9!(CODTS>4)!(CODTS=3),'$G(@$$^W4PRM@("NOCHKDLV")) Q "ITRA"
SETDLV1 ;
 I PSL S @$$^W4MAIN("TMPDLV")@(HZ)=PSL Q 1
 K @$$^W4MAIN("TMPDLV")@(HZ)
 Q 1
 ;
 ;
KILLDLV ;
 K @$$^W4MAIN("TMPDLV")
 Q
 ;
SETREADY(PRM) ;
 D PUT^%W3DEB("W4DLVORD-SETREADY","PRM=PRM")
 N HZ
 S HZ=$P(PRM,";",2) Q:HZ'>0 0
 I '$$^W4HZFULL(HZ) Q 0
 N ER S ER=0
 I PRM S @$$^W4ORD@(HZ,"READY")=$H Q $S($$TAKEAWAY^W4HZMST(HZ):3,1:2)
 K @$$^W4ORD@(HZ,"READY")
 Q 1
 ;
 ;
SNDORD ;
 N (JB,%ARG,%REM,PRM)
 D ^W4IN
 S ZMANS=$$T^%L1TIME($P($H,",",2))
 ;
 S HZ="" F  S HZ=$O(@$$^W4MAIN("TMPDLV")@(HZ)) Q:HZ=""  D SGPSL(HZ)
 D KILLDLV
 Q
 ;
 ;
PUTTM(HZM,PSL) ;
 N (JB,%ARG,%REM,HZM,PSL)
 I $$TM^W4HZMST(HZM) Q
 N TM S P1DZ=$$^W4DZ
 L +@$$^W4GL("P1TM"):1
 S TM=$O(@$$^W4GL("P1TM")@(9999999),-1)+1
 S @$$^W4GL("P1TM")@(TM)=HZM_"\"_P1DZ_"\"_$H
 D ^%S2GLSV($$^W4GL("P1TM")_"("_TM_")",$$^W4FGIB)
 L -@$$^W4GL("P1TM")
 ;
 L +@$$^W4GL("P1TMI"):1
 S @$$^W4GL("P1TMI")@(P1DZ,TM)=$H
 D ^%S2GLSV($$^W4GL("P1TMI")_"("_P1DZ_","_TM_")",$$^W4FGIB)
 L -@$$^W4GL("P1TMI")
 ;
 D PUT^W4HZMST(HZM,"TM",TM)
 D ^%S2GLSV($$^W4ORD_"("_HZM_")",$$^W4FGIB)
 ;
 L +@$$^W4GL("P1MSL"):1
 S @$$^W4GL("P1MSL")@(P1DZ,PSL,HZM)=$H
 D ^%S2GLSV($$^W4GL("P1MSL")_"("_P1DZ_","""_PSL_""","""_HZM_""")",$$^W4FGIB)
 L -@$$^W4GL("P1MSL")
 ;
 D ^W4HZGT(HZM)
 ;
 I $$HZM^W4MSL(HZM) D
 .I PSL<1 Q
 .D PRNDLVDOC(HZM)
 .I $G(@$$^W4PRM@("2TM")) D
 ..D PRNDLVDOC(HZM)
 ;
PUTTME K @$$^W4TMPORD
 Q
 ;
 ;
KHM(HZM) N N
 S N="" F  S N=$O(@$$^W4GL("P1HM")@(N)) Q:N=""  D
 .K @$$^W4GL("P1HM")@(N,HZM)
 .D ^%S2GLSV($$^W4GL("P1HM")_"("""_N_""","""_HZM_""")",$$^W4FGIB,"K")
 Q
 ;
VIEWRCV(STAM) ;
 I $G(%ARG("VW"))=1 Q 1
 Q 0
 ;
BGCOLOR(ORD) ;
 I $$DELORD(ORD) Q "background-color:black;color:red"
 I $$SENDEDORD(ORD) Q "background-color:white"
 I $$TAKEAWAY^W4HZMST(ORD) Q "background-color:orange"
 I $$DTHZ(ORD)>$H Q "background-color:c0d2ec"
 I $$^%L1DC(DAT,3)=+$H Q "background-color:eaeaea"
 Q ""
 ;
KINDORD(STAM) ;
 I $G(%ARG("ORDKIND"))="" Q "NOSENDED"
 Q $G(%ARG("ORDKIND"))
 ;
KNDO(STAM)
 Q $G(%ARG("KNDO"))
 ;
SETPSL(PSL) ;
 D PUT^%W1PRM("PSL",PSL)
 Q
 ;
MY(STAM) Q $G(%ARG("MY"))
 ;
CMPR(HZ,NCA) ;
 Q $$^W4SRCCA(HZ,NCA)
 ;
 ;
SGPSL(HZ) ;
 I $G(HZ)'>0 Q
 I '$$^W4HZFULL(HZ) Q
 ;
 S PSL=$G(@$$^W4MAIN("TMPDLV")@(HZ)) Q:'PSL
 ;
 I $$CODTS^W4HZMST(HZ)=4,'$D(@$$^W4ORD@(HZ,"CB","ASR")) D
 .N P1TNOPR S P1TNOPR=""
 .D SGASR(HZ)
 ;
 I '($$CLOSE^W4HZMST(HZ)#2) S @$$^W4ORD@(HZ,"S")=$G(@$$^W4ORD@(HZ,"S"))+1
 ;
 I '$$^W4CLOSE(HZ),'$$ITRA^W4HZMST(HZ),PSL<0 D  ; -- HADP HESH TAW
 .N P1TNOPR,BLIPR
 .I $$SHUL^W4HZMST(HZ) D ^W4PCHB(HZ,1)
 .I $$SHULA^W4HZMST(HZ),'$$SHUL^W4HZMST(HZ) D ^W4PCHB2(HZ)
 .D SETCLOSE^W4HZMST(HZ)
 ;
 I '$$PSL^W4HZMST(HZ) D PUT^W4HZMST(HZ,"PSL",PSL)
 ;
 I $$ZMANS^W4HZMST(HZ)="" D PUT^W4HZMST(HZ,"ZMANS",$$T^%L1TIME($P($H,",",2)))
 ;
 I PSL>0 D
 .D PUTTM(HZ,PSL)
 .I '$$^W4CLOSE(HZ),'$$ITRA^W4HZMST(HZ) D SETCLOSE^W4HZMST(HZ)
 .I $$SND2EMAIL^W4PRM J SNDMAIL(JB,HZ)
 Q
 ;
 ;
SGASR(HZM) ;
 N (JB,%ARG,HZM,P1TNOPR,BLIPR)
 S ASRL=$$ITRA^W4HZMST(HZM)
 S (LKHN,CUSN)=$$NMB^W4HZMST(HZM)
 S LKAH="" ;$$AH^W4L(LKHN)
 S LKHNH=""
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 ;
 S TIPAS=""
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 ;
 I $$HBNOW^W4L(LKHN),'$$HBNOWMONTH^W4PRM,$$NOW2EMAIL^W4PRM D
 .J SNDMAIL(JB,HZM,1)
 ;
 Q
 ;
 ;
SNDMAIL(JB,ORD,NOW)
 N (JB,%ARG,ORD,NOW)
 Q:'$G(ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N RES,EMAIL,LKHN,NOM
 S EMAIL=$$EMAIL^W4HZMST(ORD) Q:EMAIL'["@"!(EMAIL'[".")
 S LKHN=$$NMB^W4HZMST(ORD) Q:'LKHN
 ;
 D  Q:'NOM
 .I $G(NOW) S NOM=+$G(@$$^W4ORD@(ORD,"HBNOW")),VD="HB",ND=NOM Q
 .S NOM=$$NCAB^W4HZMST(ORD)
 .S VD="HZ",ND=ORD
 ;
 S PRM=ND_";Invoice "_NOM_";"_EMAIL_";"_VD_";0;1;"_$G(@$$^W4PRM@("HOWSEND"),3)
 ;
 I VD="HZ" S RES=$$EMAILCONT^W4EMAIL(PRM)
 I VD="HB" D
 .S RES=$$EMAILHB^W4EMAIL(PRM) Q:RES
 .S @$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)=$H_";"_$P(PRM,";",2,1000)
 ;
 ;;S @$$^W4GL("W4EMPROT")@($$^W4DZ,ORD,EMAIL)=$H_";"_RES_";INVOICEIMD "_NOM_";"_LKHN
 Q
 ;
 ;
PRNDLVDOC(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:'NMB
 ;
 I $$^W4MSL(NMB),$$BIGTM^W4L(NMB) D  Q
 .S @$$^W4MAIN("TMPBIGTM")@(HZM)=$H
 ;
 D PRINTDLVDOC(HZM)
 Q
 ;
 ;
PRINTDLVDOC(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:'NMB
 N IET,ITS,SHM,P1HZTM,P1TNOPR,BLIPR,P1HZHB,P1HZHB1,P1HZHB2,P1HZHB3
 S IET="ETTM",ITS=1,SHM="TM",P1HZTM=""
 I $G(@$$^W4PRM@("NOTM")) S P1TNOPR=""
 I $G(@$$^W4PRM@("MM")),'$G(@$$^W4PRM@("MMTM")) S P1TNOPR=""
 D P1^W4HZTM
 Q
 ;
NOPRES(SL) ;
 I '$G(@$$^W4PRM@("BDNOCHSL")) Q 0
 I '$$PRES^W4SL(SL) Q 1
 Q 0
 ;
HD(STAM) ;
 I $$CUSTLASTORDS Q "CUSTLASTORDS<>"_$$CUSTLASTORDS_"<>"_$$LKH^W4L($$CUSTLASTORDS)
 I $$MY,'$$DISPATH Q "MYORDERS"
 I '$$MY,'$$DISPATH,$$TOMORROW Q "TOMORROWORDERS"
 I '$$MY,'$$DISPATH,$G(%ARG("MEDAT"))="" Q "DAYORDERS"
 I $$DISPATH,$$TAW Q "TAKEAWAYORDERS"
 I $$DISPATH,'$$TAW Q "SENDORDERS"
 Q "ORDLIST"
 ;
PAYCASH(HZM) ;
 N IND,VL
 I '$$^W4HZFULL(HZM) Q "0;ORDERERROR"
 I $$^W4CLOSE(HZM) Q "0;ORDERCLOSED"
 S VL=$$ITRA^W4HZMST(HZM) I 'VL G EPAYCASH
 S IND=$O(@$$^W4ORD@(HZM,"CB","MZ",999),-1)+1
 S @$$^W4ORD@(HZM,"CB","MZ",IND)=$J(VL,2,2)_"*"_$H_"*"_$$LASTMLZ^W4HZMST(HZM)_"*"_$$^W4MYDVN
 D PAYCASH^W4PAYKB(HZM)
 D ^W4T(HZM,0)
EPAYCASH Q "1;"_$$SHOWPAID(HZM)
 ;
SHOWPAID(N) ;
 Q $$^%W1DICT("PAID")_" "_$J($$SHUL^W4HZMST(N)+$$SHULA^W4HZMST(N),2,2)
 ;
IFREADY(N) ;
 I $D(@$$^W4ORD@(N,"READY")) Q 1
 Q 0
 ;
TIMEREADY(N) ;
 N TIME S TIME=$G(@$$^W4ORD@(N,"READY")) I 'TIME Q ""
 Q $$T^%L1TIME(TIME)
 ;
SGYOM(STAM) ;
 Q $G(%ARG("SGYOM"))
 ;
SPACE ;
 W "&nbsp;&nbsp;&nbsp;"
 Q 
 ;
TDSP ; 
 W "<td>&nbsp;</td>"
 Q 
 ;
PRINTDOC ; 
 W "<table>",!
  W "<tr>"
   W "<td>"
    W "<input type=""button"" value="""_$$^%W1DICT("PRINT")_""" "
    W " style=""font-size:"_$$^W3FSZ(16)_""" "
    W " "_$$^W4TOUCH_"=""PrintDocs('"_N_"','"_PRMDB_"')"" />"
   W "</td>"
   ;
  W "</tr>"
 W "</table>",!
 Q
 ;
 ;
KINDORDS ; 
 W "<select id=""kindords"" onChange=""SelKindOrds()"" >",!
  W "<option value=""ALL"" "_$$SELECTED("ALL")_">"_$$^%W1DICT("SHOWALLKINDORDS")_"</option>",!
  W "<option value=""NSND"" "_$$SELECTED("NSND")_">"_$$^%W1DICT("SHOWNOSENDEDORDS")_"</option>",!
  W "<option value=""SND"" "_$$SELECTED("SND")_">"_$$^%W1DICT("SHOWSENDEDORDS")_"</option>",!
  W "<option value=""NPD"" "_$$SELECTED("NPD")_">"_$$^%W1DICT("SHOWNOPAIDORDS")_"</option>",!
  W "<option value=""PD"" "_$$SELECTED("PD")_">"_$$^%W1DICT("SHOWPAIDORDS")_"</option>",!
  W "<option value=""DEL"" "_$$SELECTED("DEL")_">"_$$^%W1DICT("SHOWDELETEDORDS")_"</option>",!
  W "<option value=""FTR"" "_$$SELECTED("FTR")_">"_$$^%W1DICT("SHOWFUTUREORDS")_"</option>",!
  ;
  W "<option value=""TAW"""_$$SELECTED("TAW")_">"_$$^%W1DICT("SHOWTAW")_"</option>",!
 W "</select>",!
 Q 
 ;
SELECTED(IND) ;
 I $G(%ARG("KNDO"))=""&(IND="ALL") Q " selected=""selected"" "
 I $G(%ARG("KNDO"))=IND Q " selected=""selected"" "
 Q ""
 ;
ALLORDS(STAM)
 Q $G(%ARG("ALLORDS"))
 ;
NOSENDEDORDS(STAM)
 Q $G(%ARG("NOSENDEDORDS"))
 ;
NOTSUPPLORDS(STAM)
 Q $G(%ARG("NOTSUPPLORDS"))
 ;
SETARG ;
 I $G(%ARG("ASCENDING"))="" S %ARG("ASCENDING")=$S($$MY:0,1:1)
 I $G(%ARG("TIMESORT"))="" S %ARG("TIMESORT")=$S($$MY:0,1:1)
 ;
 I $$NOTSUPPLORDS S %ARG("SUPPLIEDORDS")=0
 I $$NOSENDEDORDS="" S %ARG("NOSENDEDORDS")=1
 I $G(%ARG("SENDEDORDS"))="" S %ARG("SENDEDORDS")=1
 I $G(%ARG("NOPAIDORDS"))="" S %ARG("NOPAIDORDS")=1
 I $G(%ARG("PAIDORDS"))="" S %ARG("PAIDORDS")=1
 ;
 I $G(%ARG("FUTUREORDS"))="" D
 .S %ARG("FUTUREORDS")=$S($$HD="DAYORDERS":0,1:1)
 ;
 I $G(%ARG("SHOWTAW"))="" S %ARG("SHOWTAW")=1
 ;
 I $$TOMORROW D
 .I $G(%ARG("DELETEDORDS"))="" S %ARG("DELETEDORDS")=1 ; 0
 .S %ARG("FUTUREORDS")=1
 ;
 I $G(%ARG("DELETEDORDS"))="" S %ARG("DELETEDORDS")=1 ;;$S($G(%ARG("MY")):1,1:0)
 ;
 Q
 ;
 ;
ONCHANGE(STAM) ;
 Q " onChange=""OnChangePrm()"" "
 ;
BUTTON(ID,VL,PROC,STYLE)
 D ^W4BUTTON($G(ID),VL,$G(PROC),$G(STYLE))
 Q
 ;
REVAH(STAM) ;
 I $$1024^W4WDSCR Q "<BR>"
 Q "&nbsp;&nbsp;"
 ;
SHORTSHOW(STAM) ;
 Q $G(%ARG("SHORTSHOW"))
 ;
TOMORROW(STAM) ; 
 Q $G(%ARG("TOMORROW"))
 ;
CUSTLASTORDS(STAM) ; 
 Q $G(%ARG("CUSTLASTORDS"))
 ;
PRINTALLORDS(MDB) ; 
 N N,HZ S N="",I=0 F  S N=$O(@$$^W4MAIN("VIB")@(N)) Q:N=""  D
 .S I=I+1 I '(I#10) H 1
 .S HZ=$$HZ(N)
 .S A=$$PRINTBON^W4MENUBT(HZ_";;;"_MDB)
 Q 
 ;
PRINTALLKOTMDB ; 
 N PRN S PRN=$G(@$$^W4PRM@("MDBKOT")) Q:'PRN
 N N,HZ S N="",I=0 F  S N=$O(@$$^W4MAIN("VIB")@(N)) Q:N=""  D
 .S I=I+1 I '(I#10) H 1
 .S HZ=$$HZ(N)
 .D MDBKOT^W4MDBPC(HZ,PRN)
 Q 
 ;
CUSTALL(STAM) ;
 Q $G(%ARG("CSALL"))
 ;
REPTRH(STAM) ; 
 Q $G(%ARG("REPTRH")) 
 ;
 ;
KOTREPTRH ; 
 N HD
 W "<span style=""font-size:"_$$^W3FSZ(14)_""" >"
   S HD="REPDEPTRHMEAD"
   I $G(%ARG("ITEMS")) S HD="REPITEMSTRHMEAD"
   W $$^%W1DICT(HD,$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))
 W "</span><br><br>",!
 ;
 N REPTRH S REPTRH=$$REPTRH
 W "<table dir="""_$$^%W1DIR_""" style=""layout:fixed"" >",!
  W "<tr>"
   W "<td>"
    W "<select id=""reptrhords"" onChange=""ChangeRepTrhOrds()"" >",!
      W "<option value=""3"""_$$SELORD(REPTRH,3)_" >"_$$^%W1DICT("ALLORDERS")_"</option>",!
      W "<option value=""1"""_$$SELORD(REPTRH,1)_" >"_$$^%W1DICT("ALLDLVORDS")_"</option>",!
      W "<option value=""2"" "_$$SELORD(REPTRH,2)_" >"_$$^%W1DICT("SENDEDORDSONLY")_"</option>",!
    W "</select>",!
   W "</td>"
   ;
   W "<td>&nbsp;</td>"
   ;
   W "<td>"
     W $$^%W1DICT("SHOWORDERS")_" "
     W "<input id=""reptrhshow"" type=""checkbox"" "
      W $S($G(%ARG("SIK")):"",1:" checked=""checked"" ")
      W " onChange=""ChangeRepTrhShow()"" "
     W " />"
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
SELORD(REPTRH,OPT) ; 
 I REPTRH=OPT W " selected=""selected"" " 
 Q ""
 ;
CRLINKDR ; 
 N A,N,DCB,DTR,SHAAR
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  I N'<1 D
 .S A=$G(^(N)),DCB=$P(A,"\",4) Q:'DCB
 .I $L($P(A,"\"))<4 Q
 .S DTR=$$^%L1DC($P(DCB,"  "),3) Q:DTR<50000
 .S SHAAR=$P(DCB,"  ",2)
 .I SHAAR<6 S DTR=DTR-1
 .S @$$^W4GL("W4LINKDR")@(DTR,N)=$$GETP^%W1PRM("MSD")
 Q
 ;
STATFAX(N)
 Q $$STATFAX^W4FAXHTM(N)
 ;
READY(N) ;
 N TM S TM=$$READY^W4HZMST(N)
 I TM["," S TM=$ZD(TM,"24:60")
 Q TM
 ;
TAKED(N) ;
 N TM S TM=$$TAKED^W4HZMST(N)
 I TM["," S TM=$ZD(TM,"24:60")
 Q TM
 ;
SUPPLIED(N) ;
 Q $$SUPPLIED^W4HZMST(N)
 ;
DOPADR(N) ;
 N DIRA,KOMA,CNISA,CMNT S DIRA=$$SPA^%L1FRM($$DIRA^W4HZMST(N))
 S KOMA=$$SPA^%L1FRM($$KOMA^W4HZMST(N))
 S CNISA=$$SPA^%L1FRM($$CNISA^W4HZMST(N))
 S CMNT=$$SPA^%L1FRM($$CMNT^W4HZMST(N))
 N ST S ST=""
 I $L(DIRA) S ST=ST_$$^%W1DICT("FLAT")_":"_$$H2U^%L1FRM(DIRA)
 I $L(KOMA) S ST=ST_" "_$$^%W1DICT("FLOOR")_":"_$$H2U^%L1FRM(KOMA)
 I $L(CNISA) S ST=ST_" "_$$^%W1DICT("ENTRANCE")_":"_$$H2U^%L1FRM(CNISA)
 I $L(CMNT) S ST=ST_" "_$$H2U^%L1FRM(CMNT)
 Q ST
 ;
TELPSL(PSL) ;
 Q $$TEL^W4SL(PSL)
 ;
BGCTIME(N,KIND) ;
 ;
 N BGC,ENDTIME,CURTIME
 S BGC=""
 ;
 S ENDTIME=$$TIME(KIND,N)
 S CURTIME=$$CURTIME(KIND,N)
 ;
 S BGC=$$BGCT(ENDTIME,CURTIME)
 Q "background-color:"_BGC
 ;
 ;
GW1(STAM) Q $G(@$$^W4PRM@("GWTIME1"))
GW2(STAM) Q $G(@$$^W4PRM@("GWTIME2"))
GW3(STAM) Q $G(@$$^W4PRM@("GWTIME3"))
 ;
INDLATE(TIME,CT) ;
 I '$G(TIME) Q 0
 N BGC S BGC=""
 N GW1 S GW1=$$GW1
 N GW2 S GW2=$$GW2
 N GW3 S GW3=$$GW3
 N IND S IND=0
 D
 .N DIF S DIF=$$DIF^%L1TIME(CT,TIME)
 .I DIF>GW3 S IND=3 Q
 .I DIF>GW2 S IND=2 Q
 .I DIF>GW1 S IND=1 Q
 .I DIF>0,DIF'>GW1 S IND=.5 Q
 Q IND
 ;
BGCT(TIME,CT) ; 
 N BGC S BGC=""
 N BGCT S BGCT(.5)="lightgreen"
 S BGCT(1)="yellow"
 S BGCT(2)="orange"
 S BGCT(3)="red"
 Q $G(BGCT($$INDLATE(TIME,CT)))
 ;
 ;
PAYM(ORD) ;
 N ST,SHUL S SHUL=$$SHUL^W4HZMST(ORD)
 S ST=""
 N MZM S MZM=$$MZM^W4HZMST(ORD)
 N CHK S CHK=$$CHK^W4HZMST(ORD)
 N CA S CA=$$CA^W4HZMST(ORD)
 N ASR S ASR=$$ASR^W4HZMST(ORD)
 I 'SHUL&'ASR S ST=$$^%W1DICT("NOPAYED") Q ST
 ;
 N SP S SP=$$NBSP^%L1FRM(2)
 I MZM S ST=ST_$$^%W1DICT("SHORTCASH")_": "_$J(MZM,2,2)
 I CHK S ST=ST_SP_$$^%W1DICT("SHORTCHECK")_": "_$J(CHK,2,2)
 I CA S ST=ST_SP_$$^%W1DICT("SHORTCA")_": "_$J(CA,2,2)
 I ASR S ST=ST_SP_$$^%W1DICT("SHORTASR")_": "_$J(ASR,2,2)
 Q ST
 ;
CURTIME(KIND,ORD) ;
 Q $$CURTIME^W4MMTIME(KIND,ORD)
 ;
 ;
TIME(KIND,ORD) ;
 Q $$TIME^W4MMTIME(KIND,ORD)
 ;
2460(ORD,KIND) ;
 N TIME X "S TIME=$$"_KIND_"^W4HZMST(ORD)"
 I TIME[":" Q TIME
 Q $ZD(TIME,"24:60")
 ;
CHKBOX(TX,ID) ;
 N ST
 S ST=$$^%W1DICT(TX)_"&nbsp;"
 S ST=ST_"<input type=""checkbox"" id="""_ID_""" "
 I $G(%ARG(TX)) S ST=ST_" checked=""checked"" "
 S ST=ST_" onClick=""OnChangePrm()"" "
 S ST=ST_" />"
 Q ST
 ;
SHOWMSD(MSD) ;
 N ST S ST=""
 N TEL S TEL=$$TEL^W3R(MSD)
 N PELE S PELE=$$PELE^W3R(MSD)
 N FAX S FAX=$$FAX^W3R(MSD)
 N EMAIL S EMAIL=$$EMAIL^W3R(MSD)
 N FAXKIND S FAXKIND=$$FAXKIND^W3R(MSD)
 ;
 S ST=MSD_"<BR>"
 I TEL S ST=ST_$$^%W1DICT("TEL")_" : "_TEL_" <BR> "
 I PELE S ST=ST_$$^%W1DICT("PELE")_" : "_PELE_" <BR> "
 I FAX S ST=ST_$$^%W1DICT("FAX")_" : "_FAX_" <BR> "
 I $L(EMAIL) S ST=ST_EMAIL_" <BR> "
 N M ;;S M(0)=$$^%W1DICT("NOVIDU")
 S M(1)=$$^%W1DICT("FAXAUTO")
 S M(2)=$$^%W1DICT("FAXYAD")
 S ST=ST_$G(M(+FAXKIND))_" <BR>"
 Q ST
 ;
DATCB(N) 
 N DATCB S DATCB=$$DATCB^W4HZMST(N)
 I $$DISPATH S DATCB=$P(DATCB,"  ",2) 
 Q DATCB 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MMIT
W4MMMN(MENU) ; [ 06.11.18 13:12 ] [ 20.10.18 06:10 ] [ 19.10.18 15:16 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D CHOICEREST
 Q:'MSD
 D ^%W1WEBMN(MENU)
 Q
 ;
CHOICEREST ;
 S MSDR=$G(^[$$^W3MAIN]P1PRM("MSDR")) Q:'MSDR
 S MSD=$G(%ARG("MSD"))
 I (MSD="") S MSD=$$GETP^%W1PRM("CURREST")
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br><br>",!
 W "<table width=""20%"">",!
  W "<tr>"
   W "<td>"
    W "<select id=""rest"" onChange=""ChoiceRest()"" >",!
     W "<option value=""0""> -- "_$$^%W1DICT("CHOICEREST")_" -- </option>",!
     S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(MSDR,N)) Q:N=""  D
     .W "<option value="""_N_""" "
     .I +N=+MSD W " selected=""selected"" "
     .W ">"_N_" "_$$H2U^%L1FRM($$MSDN^W3R(N))_"</option>",!
     W "</select>",!
   W "</td>"
   I 'MSD D
   .W "<td>"
   . D BUT^W4BCK
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D PUT^%W1PRM("CURREST",+MSD)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MMMN
W4MMMN(MENU) ; [ 06.11.18 13:12 ] [ 20.10.18 06:26 ] [ 19.10.18 15:16 ] 
 N (JB,%ARG,%REM,MENU)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D CHOICEREST
 Q:'MSD
 D ^%W1WEBMN(MENU)
 Q
 ;
CHOICEREST ;
 S MSDR=$G(^[$$^W3MAIN]P1PRM("MSDR")) Q:'MSDR
 S MSD=$G(%ARG("MSD"))
 I (MSD="") S MSD=$$GETP^%W1PRM("CURREST")
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br><br>",!
 W "<table width=""20%"">",!
  W "<tr>"
   W "<td>"
    W "<select id=""rest"" onChange=""ChoiceRest()"" >",!
     W "<option value=""0""> -- "_$$^%W1DICT("CHOICEREST")_" -- </option>",!
     S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(MSDR,N)) Q:N=""  D
     .W "<option value="""_N_""" "
     .I +N=+MSD W " selected=""selected"" "
     .W ">"_N_" "_$$H2U^%L1FRM($$MSDN^W3R(N))_"</option>",!
     W "</select>",!
   W "</td>"
   I 'MSD D
   .W "<td>"
   . D BUT^W4BCK
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D PUT^%W1PRM("CURREST",+MSD)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MMPSL
W4MMPSL ; [ 20.07.20 16:57 ] [ 03.05.20 14:25 ] [ 18.12.18 18:38 ] 
 N (JB,%ARG,%REM)
 S DT=$$^W4DZ
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 N TMP1 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 ;
 S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .S PSL=$P($G(@$$^W4ORD@(N,"TM")),"\") Q:'PSL
 .S TIMEHZ=$$TIMEHZ(N)
 .S @TMP@(PSL,TIMEHZ_$J(N,10))=N
 ;
 ; --- FORM-E SPISKA SHLIHIM
 S PSL="" F  S PSL=$O(@TMP@(PSL)) Q:PSL=""  D
 .S IND="" F  S IND=$O(@TMP@(PSL,IND)) Q:IND=""  D
 ..N HZ S HZ=$G(^(IND)) Q:HZ<1
 ..I $O(@TMP@(PSL,IND))'="",$D(@$$^W4ORD@(HZ,"SUPPLIED")) K @TMP@(PSL,IND)
 ;
 S PSL="" F  S PSL=$O(@TMP@(PSL)) Q:PSL=""  D ;
 .S IND="" F I=1:1 S IND=$O(@TMP@(PSL,IND)) Q:IND=""  D
 ..S HZ=$G(^(IND)) I I=1 S HZ0=HZ
 ..
 ..I $D(@$$^W4ORD@(HZ,"SUPPLIED")) D  Q
 ...S SUPPLIED=$P($G(^("SUPPLIED")),"\")
 ...N A1 S A1=$G(@TMP1@(PSL)) I A1,$P(A1,"\",3)'=HZ Q
 ...S @TMP1@(PSL)="0\"_SUPPLIED_"\"_HZ ; -- COURIER FREE
 ..;--- WHEN WILL FREE
 ..S @TMP1@(PSL)="1\"_$$PLUS^%L1TIME($$TIMEHZ(HZ),$$LATE(HZ)*60)_"\"_HZ0
 ;
 S OV="" F  S OV=$O(@$$^W4GL("NAME")@(OV)) Q:OV=""  D
 .I $G(@$$^W4GL("FILE")@(OV,"CIO"))'="I" Q
 .S PSL=$$PSL(OV)
 .I '$D(@$$^W4GL("P1SL")@(PSL)) Q
 .I $D(@TMP1@(PSL)) Q
 .S TIMEIN=$$TIMEIN(OV) Q:TIMEIN=""
 .S @TMP1@(PSL)="0\"_TIMEIN
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table border=""1"" cellspacing=""0"" cellpadding=""0"" >",!
   W "<tr>"
    W "<th>"_$$^%W1DICT("FREECOURIERS")_"</th>"
    W "<th>"_$$^%W1DICT("WILLFREECOURIERS")_"</th>"
   W "</tr>",!
   W "<tr>"
    W "<td width=""50%"">"
      D FREECOUR
    W "</td>",!
    ;
    W "<td>"
      D WILLFREECOUR
    W "</td>",!
   W "</tr>"
  W "</table>",!
  ;
  W "<br><br>"
  D ^W4BTN("CLOSE","Close()","red",,16)
 W "</div>",!
 Q
 ;
TIMEHZ(N) ;
 Q $$TIMEHZ^W4MMTIME(N)
 ;
 ;
TIMEIN(OV) ;
 N FILE S FILE=$$^W4GL("FILE")
 N DAT,SEC,TIMEIN
 S DAT=$ZD($$^W4DZ-1,"YYMMDD")
 ;
 F  S DAT=$O(@FILE@(OV,DAT)) Q:DAT=""  D
 .S SEC="" F  S SEC=$O(@FILE@(OV,DAT,SEC)) Q:SEC=""  D
 ..I $G(^(SEC))="I" S TIMEIN=DAT_"\"_SEC
 ..I $G(^(SEC))'="I" K TIMEIN
 ;
 I '$D(TIMEIN) Q ""
 ;
 S SEC=$P(TIMEIN,"\",2)
 S TIMEIN=$$^%L1DC($P(TIMEIN,"\"),4)_","_SEC
 Q TIMEIN
 ;
 ;
LATE(N) ;
 ;  LATE=FAX LATE OR TAKED LATE 
 N (JB,%ARG,%REM,N)
 S (DIF1,DIF2,DIF3,DIF4)=0
 ;
 S ENDTIME=$$TIME("FAXTIME",N)
 S CURTIME=$$CURTIME("FAXTIME",N)
 ;
 I ENDTIME'<1 S DIF1=$$DIF^%L1TIME(CURTIME,ENDTIME)
 I DIF1>0,'$$TAKED^W4HZMST(N) Q DIF1
 ;
 S ENDTIME=$$TIME("TAKED",N)
 S CURTIME=$$CURTIME("TAKED",N)
 I ENDTIME'<1 S DIF2=$$DIF^%L1TIME(CURTIME,ENDTIME) S:DIF2<0 DIF2=0 Q DIF2
 ;
 I DIF1<0 S DIF1=0
 Q DIF1
 ;
 ;
TIME(KIND,N)
 Q $$TIME^W4MMTIME(KIND,N) ;
 ;
CURTIME(KIND,N)
 Q $$CURTIME^W4MMTIME(KIND,N) ;
 ;
FREECOUR ;
 N A,PSL,DIF,HZ
 D COURTB
  S PSL="" F  S PSL=$O(@TMP1@(PSL)) Q:PSL=""  D
  .S A=$G(^(PSL))
  .Q:A
  .W "<tr>"
  .  D COURNM(PSL)
  .  D SHOWDIF(1)
  .W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
WILLFREECOUR ;
 N A,PSL,DIF,HZ
 D COURTB
  S PSL="" F  S PSL=$O(@TMP1@(PSL)) Q:PSL=""  D
  .S A=$G(^(PSL))
  .Q:'A
  .W "<tr>"
  . D COURNM(PSL)
  .
  . D SHOWDIF(2)
  .
  . S HZ=$P(A,"\",3)
  . D COURADR(HZ)
  .W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
COURTB ;
 W "<table>",!
 Q
 ;
COURNM(PSL) ;
 W "<td style=""font-weight:bold"" >"
  W $$NMH2U^W4SL(PSL)
 W "</td>"
 Q
 ;
SHOWDIF(PR) ;
  N DIF
  W "<td style=""font-weight:bold;color:green"" >"
   I $G(PR)=2 S DIF=$$DIF^%L1TIME($P(A,"\",2),$H)
   I $G(PR)=1 S DIF=$$DIF^%L1TIME($H,$P(A,"\",2))
   I DIF'>1 S DIF=1
   W " ~ "_DIF_" "_$$^%W1DICT("MINUT")
  W "</td>"
 Q  ;
 ;
COURADR(HZ) ;
 W "<td>"
  W $$H2U^%L1FRM($$KTVM^W4HZMST(HZ))
 W "</td>"
 Q
 ;
DTIME(H) ;
 Q $$DTIME^W4MMTIME(H)
 ;
PSL(OV) ; 
 N CDOV,OK S OK=0 
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:OK
 .S CDOV=$$OV^W4SL(N)
 .I CDOV,CDOV=OV S OK=N
 I OK Q OK
 Q +OV 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MMSND
W4MMSND ; [ 02.06.26 15:05 ] [ 01.08.21 14:34 ] [ 02.03.21 18:00 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S HZ=$G(%ARG("ORD"))
 S MSD=$$MSDHZM^W4HZMST(HZ)
 S FAX=$$FAX^W4HZMST(HZ)
 I 'FAX S FAX=$$FAX^W3R(MSD)
 S EMAIL=$$EMAIL^W4HZMST(HZ)
 I '$L(EMAIL) S EMAIL=$$EMAIL^W3R(MSD)
 
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"_$$^%W1DICT("CHOICEKINDOFSENDING")_"</span>",!
 W "<br><br>",!
 ;
 W " <table width=""70%"" border=""0"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" dir="""_$$^%W1DIR_""" border=""0"" cellspacing=""0"">",!
 W "  <tr>"
 W "   <td ><input type=""radio"" id=""sndfax"" name=""sndkind"" checked=""checked"" onClick=""ClickRadio()"" />"_$$^%W1DICT("FAX")_"</td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""text"" id=""fax"" size=""10"" maxlength=""12"" value="""_FAX_""" onClick=""this.select()"" />"
 W "   "_$$NBSP^%L1FRM(10)_$$^%W1DICT("QNFAX")_$$NBSP^%L1FRM(5)_"<select id=""cpfx"">",!
  F J=1:1:4 D
  .W " <option "
  .I J=($$FAXCOPY^W3R(MSD)+1) W " selected=""selected"" "
  .W ">"_J_"</option>",!
 W "   </select></td>"
 W "  </tr>",!
 W "  <tr><td></td></tr>",!
 W "  <tr>"
 W "   <td><input type=""radio"" id=""sndmail"" name=""sndkind"" onClick=""ClickRadio()"" />"_$$^%W1DICT("EMAIL")
 ;
 I $$SNDY^W4PRM D
 .W "  "_$$NBSP^%L1FRM(15)_"<input type=""checkbox"" checked=""checked"" id=""sndy"" onClick=""ClickSndy()"" />"_$$^%W1DICT("SENDY")
 ;
 W "   </td>" 
 W "  </tr>",!
 W "  <tr>"
 W "   <td><input type=""text"" id=""email"" size=""50"" maxlength=""50"" onKeyUp=""EnglishOnly()"" value="""_EMAIL_"""/></td>",!
 W "  </tr>",!
 W "  <tr>"
 W "   <td>"
  W $$^%W1DICT("COMMENTS"),"<br>",!
  W "<textarea rows=""2"" cols=""38"" id=""mailtext"" ></textarea>"
 W "   </td>"
 W "  </tr>",!
 W "  <tr>"
 W "  <tr><td>&nbsp;</td></tr>",!
 W "   <td style=""color:red""><input type=""radio"" id=""back"" name=""sndkind"" onClick=""ClickRadio()""/>"_$$^%W1DICT("NOSEND")_"</td>",!
 W "  </tr>",!
 ;
 W " </table>",!
 W "<br>",!
 W " <table width=""70%"" border=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr><td colspan=""2"" style=""text-align:center"">"
   D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
  W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SND(PRM) ;
 ;;S ^AA("W4MMSND","PRM")=PRM
 N A,HZ,MAILFAX,CMNT,ER,MKR
 S MAILFAX=$P(PRM,"~",1)
 S HZ=$P(PRM,"~",2)
 I HZ<1 Q "ORDERNUMBERISWRONG"
 S QNFAX=$P(PRM,"~",3)
 S SNDY=$P(PRM,"~",4)
 S CMNT=$$CNWEB^%L1FRM($P(PRM,"~",5))
 S CMNT=$$INVH^%L1FRM(CMNT)
 S MKR=1
 S ER=0
 I MAILFAX["@" S QNFAX=1 
 ;
 I SNDY=1 D CR^WQDLV(HZ)
 ;
 F J=1:1:QNFAX D
 .D SENDTRY^W4FAXHTM(HZ,MKR,MAILFAX,CMNT)
 ;
 Q 1
 ;
 ;
CMNT(TXT) ;
 N ST
 S ST="<br><span style=""color:red;font-size:14pt"">"
 S ST=ST_$$H2U^%L1FRM(TXT)_"</span>"
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MMTIME
W4MMTIME(ORD) ; [ 21.01.20 07:45 ] [ 16.01.20 09:25 ] [ 18.12.18 13:09 ] 
 N (JB,%ARG,ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 X "S TM=$$"_$$KIND_"^W4HZMST(ORD)"
 I TM'[":" S TM=$ZD(TM,"24:60")
 X "S HRA=$$"_$$KIND_"HRA^W4HZMST(ORD)"
 S HRA=$$H2U^%L1FRM(HRA)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"
  W $$^%W1DICT("TYPE"_$$KIND_"TIME")
 W "</span><br><br>",!
 ;
 D SHAA
 ;
 W "<br><br>",!
 W "<input id=""hra"" type=""text"" size=""40"" value="""_HRA_""">"
 W "<br><br>",!
 ;
 W "<table>" 
  W "<tr>"
   W "<td>"
    D ^W4BTN("SUBMIT","Submit('"_ORD_"')","green")
   W "</td>" 
   W "<td>"
    D ^W4BTN("CLEAR","Clear('"_ORD_"')","blue")
   W "</td>" 
   W "<td>"
    D ^W4BTN("CLOSE","Close('"_ORD_"')","red")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 W "</div>",!
 Q
 ;
SHAA
 W "<select style=""background-color:yellow"" "
 W " id=""TOSHAAmnid"" "
 W " >"
 ;
 F I=0:1:59 D
 .W "<option value="""_I_""""
 .I +I=+$P(TM,":",2) W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 ;
 W "<select style=""background-color:yellow"" "
 W " id=""TOSHAAhrid"" "
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 .I +I=+TM W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 Q
 ;
 ;
SET(PRM) ;
 D PUT^%W3DEB("W4MMTIME-SET","PRM=PRM")
 N HZ,ST,TIME,KIND
 ;
 S KIND=$P(PRM,"~") Q:KIND="" 0
 S HZ=$P(PRM,"~",2) Q:HZ'>0 0
 S TIME=$P(PRM,"~",3)
 S TIME=+$H_","_($P(TIME,":")*3600+($P(TIME,":",2)*60))
 S HRA=$$INVH^%L1FRM($P(PRM,"~",4))
 ;  
 I TIME?1N.E D  Q ST
 .S @$$^W4ORD@(HZ,KIND)=TIME_"\"_HRA
 .S ST=$$CHN(KIND,HZ,$ZD(TIME,"24:60"))
 ;
 Q 0
 ;
 ;
KILL(PRM) ;
 D PUT^%W3DEB("W4MMTINE-KILL","PRM=PRM")
 N HZ,KIND,ST,TIME
 ;
 S KIND=$P(PRM,"~") Q:KIND="" 0
 S HZ=$P(PRM,"~",2) Q:HZ'>0 0
 S ID=$P(PRM,"~",3) Q:ID="" 0
 K @$$^W4ORD@(HZ,KIND)
 S ST=$$CHKBOX(KIND,HZ,ID)
 Q ST
 ;
 ;
CHKBOX(KIND,N,ID) ;
 N ST S ST="<input type=""checkbox"" id="""_ID_""" "
 S ST=ST_"onClick="""_KIND_"('"_N_"')"" />"
 Q ST
 ;
CHN(KIND,HZ,TIME) ;
 I TIME?5N1","1N.N S TIME=$ZD(TIME,"24:60")
 N ST,IMG,CMNT 
 X "S CMNT=$$"_KIND_"HRA^W4HZMST(HZ)"
 D
 .I CMNT="" S IMG="&nbsp;&nbsp;" Q
 .S IMG=$$IMG("ShowTimeComment('"_KIND_"','"_HZ_"')")
 S ST=IMG_"&nbsp;<span "
 N ENDTIME X "S ENDTIME=$$"_KIND_"^W4HZMST(HZ)"
 D
 .;;S ^AA("DTIME",KIND,"H")=$$DTIME($H)
 .;;S ^AA("DTIME",KIND,"TIME")=$$DTIME(ENDTIME)
 .I $$DIF^%L1TIME($H,ENDTIME)>180 Q
 .S ST=ST_"onClick=""Change"_KIND_"('"_HZ_"')"" style=""cursor:pointer"" "
 S ST=ST_">"_TIME_" "_$$DIF(KIND,HZ)_"</span>"
 Q ST
 ;
KIND(STAM) ;
 Q $G(%ARG("KIND"))
 ;
IMG(PROC,IMG)
 N ST
 I $G(IMG)="" S IMG="w4mmimg.png"
 S ST="<img src="""_IMG_""" "
 S ST=ST_" onMouseOver="""_PROC_""" onMouseOut=""closeDesc()"" "
 S ST=ST_" />"
 Q ST
 ;
COMMENT(PRM) ;
 N KIND,HZ,CMNT
 S KIND=$P(PRM,";")
 S HZ=$P(PRM,";",2)
 X "S CMNT=$$"_KIND_"HRA^W4HZMST(HZ)"
 Q CMNT
 ;
DIF(KIND,N) ;
 N GW1 S GW1=$G(@$$^W4PRM@("GWTIME1"))
 N ENDTIME,CURTIME
 ;
 S ENDTIME=$$TIME(KIND,N)
 S CURTIME=$$CURTIME(KIND,N)
 ;
 I ENDTIME'>0!(CURTIME'>0) Q ""
 ;
 S DIF=$$DIF^%L1TIME(CURTIME,ENDTIME)
 I DIF>0,CURTIME,ENDTIME Q "<span style=""font-weight:bold;font-size:"_$$^W3FSZ(12)_"""> [+"_DIF_"]</span>"
 Q ""
 ;
 ;
CURTIME(KIND,ORD) ;
 N CURTIME X "S CURTIME=$$"_KIND_"^W4HZMST(ORD)"
 I 'CURTIME Q +$H_$TR($J($P($H,",",2),5)," ",0)
 Q +CURTIME_$TR($J($P(CURTIME,",",2),5)," ",0)
 ;
 ;
TIME(KIND,N) ;
 I $G(N)="" Q ""
 N ENDTIME S ENDTIME=""
 N GW1 S GW1=$G(@$$^W4PRM@("GWTIME1"))
 ;
 I KIND="FAXTIME" D
 .N FAXTIME S FAXTIME=$$FAXTIME^W4HZMST(N)
 .I FAXTIME="" D
 ..N DATCB,SHAACB,A S A=$$DATCB^W4HZMST(N)
 ..S DATCB=$P(A,"  ")
 ..S SHAA=$P(A,"  ",2)
 ..S FAXTIME=$$^%L1DC(DATCB,3)_","_(SHAA*3600+($P(SHAA,":",2)*60))
 .S ENDTIME=$$DTIME(FAXTIME)+$$GWFAX^W4PRM
 ;
 I KIND="VIDU" S ENDTIME=$$VIDU(N)
 ;
 I KIND="READY" S ENDTIME=$$READY(N)
 ;
 I KIND="TAKED" D
 .N READY S READY=$$READY(N) I 'READY Q
 .N PLUS S PLUS=$$PLUS^%L1TIME(READY,300)
 .N TAKEDTIME S TAKEDTIME=$$DTIME(PLUS) I TAKEDTIME="" Q
 .S ENDTIME=TAKEDTIME ;;-GW1
 ;
 I KIND="SUPPLIED" D
 .S ENDTIME=$$TIMEHZ(N)
 ;
 Q ENDTIME
 ;
 ;
DTIME(H) ;
 Q +H_$TR($J($P(H,",",2),5)," ",0)
 ;
TIMEHZ(N) ;
 N DATHZ,SHAA,SEC,TIMEHZ
 S DATHZ=$$TRH^W4HZMST(N) I DATHZ?.P Q ""
 S SHAA=$$SHAA^W4HZMST(N)
 S SEC=SHAA*3600+($P(SHAA,":",2)*60)
 S TIMEHZ=$$^%L1DC(DATHZ,3)_$TR($J(SEC,5)," ",0)
 Q TIMEHZ
 ;
READY(N) ;
 N ENDTIME
 S ENDTIME=$$READY^W4HZMST(N) I ENDTIME Q ENDTIME
 N FAXTIME S FAXTIME=$$FAXTIME^W4HZMST(N)
 I FAXTIME="" Q "" ; -- FAX NOT PAST
 N HACHANA
 N MSD S MSD=$$MSDHZM^W4HZMST(N)
 I MSD S HACHANA=$$HACHANA^W3R(MSD)
 I 'HACHANA S HACHANA=30
 N TIME S TIME=$$PLUS^%L1TIME(FAXTIME,HACHANA*60)
 S ENDTIME=$$DTIME(TIME)
 Q ENDTIME
 ;
VIDU(N) ;
 N ENDTIME
 S ENDTIME=$$VIDU^W4HZMST(N)
 Q ENDTIME
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNLNET
W4MNLNET ; [ 05.07.23 15:39 ] [ 04.07.23 10:35 ] [ 30.05.23 04:53 ] 
 N (JB,%ARG,%REM)
 S JB=+$G(JB)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(JB)="" W " JB number is not defined ! " Q
 S MSDR=$G(%ARG("MSDR"))
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width=""80%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""20%"">"_$$^%W1DICT("MANAGERCODE")_"</th>"
 W "  <th width=""20%"">"_$$^%W1DICT("MANAGERNAME")_"</th>"
 ;
 W "  <th width=""10%"">"_$$^%W1DICT("TEL")_"</th>"
 W "  <th width=""50%"">"_$$^%W1DICT("EMAIL")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("PASSWORD")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("BRANCH")_"</th>"
 ;
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 S GLTB=$$GL
 ;
 M @GLTMP=@GLTB
 ;
 S I=0
 I $D(@GLTMP)<10 D
 .N PRM S PRM=1_";"_$G(%ARG("MSDR"))_";"
 .W "<tr >" W $$LINE(PRM) W "</tr>",!
 .
 S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S I=I+1
 .N PRM S PRM=I_";"_$G(%ARG("MSDR"))_";"_N_";"_$P(A,"\")_";"_$P(A,"\",2)_";"_$P(A,"\",3)_";"_$P(A,"\",4)
 .W "<tr >" W $$LINE(PRM) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVEND(PRM) ;
 N I,GLTMP,CD,TEL,MAIL,PSW,SNIF,MSDR
 D GLTMP
 ;
 S MSDR=$P(PRM,";")
 M @$$GLGIB=@$$GL
 K @$$GL
 ;
 F I=2:1:$L(PRM,";") D
 .N VL S VL=$P(PRM,";",I) 
 .S CD=$P(VL,"~") Q:'CD
 .I CD'?5N S CD=$$DOP^%L1FRM(CD,5)
 .S TEL=$P(VL,"~",2)
 .S MAIL=$P(VL,"~",3)
 .S PSW=$P(VL,"~",4)
 .S SNIF=$P(VL,"~",5)
 .S @$$GL@(CD)=TEL_"\"_MAIL_"\"_PSW_"\"_SNIF
 ;
 K @GLTMP
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
 ;
LINE(PRM) ;
 N MGCD,TEL,MAIL,SH,PSW,SNIF,MSDR
 S SH=$P(PRM,";",1)
 S MSDR=$P(PRM,";",2)
 S MGCD=$P(PRM,";",3)
 S TEL=$P(PRM,";",4)
 S MAIL=$P(PRM,";",5)
 S PSW=$P(PRM,";",6)
 S SNIF=$P(PRM,";",7)
 ;
 N ST
 S ST=""
  ;
  S ST=ST_" <td style=""text-align:center"" >"
   S ST=ST_$$VVCD(MGCD)
  S ST=ST_"  </td>"
  ;
  N MGNM S MGNM=$$^W4NAME(MGCD)
  S ST=ST_"  <td "_$$^%W1ALIGN_" >"
   S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(MGNM)
  S ST=ST_"  </td>"
  ;
  D
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <input type=""text"" "_$$CHN_" value="""_TEL_""" size=""11"" />"
  .S ST=ST_"</td>"
  .
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <input type=""text"" "_$$CHN_" value="""_MAIL_""" onChange=""VldMail(this)"" size=""40""/>"
  .S ST=ST_"</td>"
  .
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <input type=""text"" "_$$CHN_" value="""_PSW_"""  size=""8""/>"
  .S ST=ST_"</td>"
  .
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <select "_$$CHN_">"_$$OPTIONS(SNIF,MSDR)_"</select>"
  .S ST=ST_"</td>"
  ;
 Q ST
 ;
 ;
GETVL(PRM)
 N MGCD,MSDR,I,VL,BC
 S MGCD=$P(PRM,";")
 S MSDR=$P(PRM,";",2)
 I MGCD="" Q "CODENOTEXIST"
 N GL S GL=$$GL
 N A S A=$G(@GL@(MGCD))
 S TEL=$P(A,"\",1)
 S EMAIL=$P(A,"\",2)
 S PSW=$P(A,"\",3)
 S SNIF=$P(A,"\",4)
 ;
 N NAME1 S NAME1=$$^W4NAME(MGCD)
 Q $$DOP^%L1FRM(MGCD,5)_"~"_$$CLWEB^%L1FRM($$H2U^%L1FRM(NAME1))_"~"_TEL_"~"_EMAIL_"~"_PSW_"~"_SNIF
 ;
 ;
GL()
 Q "^|$$^W3MAIN|W4MNLNET(MSDR)"
 ;
GLGIB()
 Q "^|$$^W3MAIN|W4MNLNET0(MSDR)"
 ;
VVCD(VL) ;
 N I,IDCD,IDNM
 N FIND S FIND="Find(this)"
 N A
 S A="<div style=""display:flex"">"
 S A=A_"<button onClick=""DelRow(this)"">X</button>&nbsp;"
 S A=A_"<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"onChange=""Chn();"_FIND_""" "
 S A=A_"onFocus='this.select()' "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img src=""w3filter.jpg"" style=""width:22px;height:22px"" onClick=""Find(this)"" />&nbsp;"
 S A=A_"<button onClick=""NewLine(this)"">+</button></div>"
 Q A
 ;
 ;
HD() ; 
 Q "MNLNETTABLE" 
 ;
OPTIONS(SNIF,MSDR) ; 
 I $G(MSDR)="" W ""
 N ST1 S ST1=""
 N GLMSDR S GLMSDR="^|$$^W3MAIN|W3MSDR"
 S ST1="<option value=""0"">-- "_$$^%W1DICT("CHOICEBRANCH")_" --</option>"
 N N S N="" F  S N=$O(@GLMSDR@(N)) Q:N=""  D 
 .S ST1=ST1_"<option value="""_N_""" "
 .I $G(SNIF),N=SNIF S ST1=ST1_" selected=""selected"" "
 .S ST1=ST1_">"_N_" "_$$H2U^%L1FRM($$MSD^W3R(N))_"</option>"
 Q ST1
 ;
CHN() ; 
 Q "onChange=""Chn()"" "
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNREP
W4MNREP ; [ 05.08.26 15:45 ] [ 21.05.26 09:26 ] [ 03.03.26 02:43 ] 
  ;;M ^AA("W4MNREP","ARG")=%ARG
  S MEDAT=$G(%ARG("MEDAT"))
  S ADDAT=$G(%ARG("ADDAT"))
  N MEMM S MEMM=$E($TR(MEDAT,"./",""),3,4)
  N ADMM S ADMM=$E($TR(ADDAT,"./",""),3,4)
  I MEMM'=ADMM Q
  ;
  I MEDAT=ADDAT D ^W4ANLZ 
  ;
  W "<div id=""mnrep"" dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<table cellspacing=""3px"" cellpadding=""3px"" >",!
   W "<tr>",!
    I $G(%ARG("MAAZ")) D 
    .W "<td "_$$^W4TOUCH_"=""ManyReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("MANYREPORT")
    .W "</td>"
    ;
    I '$G(%ARG("MAAZ")) D 
    .W "<td "_$$^W4TOUCH_"=""MonthGraph()"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("MONTHPROFITGRAPH")
    .W "</td>"
    ;
    D
    .N MEDAT1 S MEDAT1=MEDAT
    .I MEDAT=ADDAT,ADDAT S MEDAT1="01."_$P(ADDAT,".",2,3)
    .W "<td "_$$^W4TOUCH_"=""MonthZ('"_MEDAT1_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("MONTHZ")
    .W "</td>"
    ;
    W "<td "_$$^W4TOUCH_"=""DetailReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
     W $$^%W1DICT("DETAILREPORT")
    W "</td>"
    ;
    W "<td "_$$^W4TOUCH_"=""CredCardReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
     W $$^%W1DICT("HZCAREPORT")
    W "</td>"
    ;
    I $$MSL^W4PRM D
    .W "<td "_$$^W4TOUCH_"=""WideReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("GAPZREPORT")
    .W "</td>"
    .
    .W "<td "_$$^W4TOUCH_"=""CouriersReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("COURIERSMANYREPORT")
    .W "</td>"
    .;
    .W "<td "_$$^W4TOUCH_"=""RestReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("RESTSALES")
    .W "</td>"
    ;
    W "<td "_$$^W4TOUCH_"=""ItemsReport('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
     W $$^%W1DICT("ITEMSSALEREPORT")
    W "</td>"
    ;
    I MEDAT=ADDAT D
    .W "<td "_$$^W4TOUCH_"=""Analize('"_MEDAT_"','"_ADDAT_"')"" style=""border:double 3px brown;cursor:pointer"">"
    . W $$^%W1DICT("SHORTANALIZE")
    .W "</td>"
    ;
   W "</tr>",!
  W "</table>",! 
 W "</div>",!
 Q
 ;
 ;
DETAIL(PRM) ;
 D KILL^%W1PRM("MANYREPS")
 D PUT^%W1PRM("NOBACK2BO",1)
 N MEDAT,ADDAT
 ;;S ^AA("W4MNREP-DETAIL","PRM")=PRM
 S %ARG("REPN")="W4DPAY"
 S %ARG("PROG")="W4DPAY"
 S %ARG("PRM")=PRM
 S %REPN=%ARG("REPN")
 ;
 D INIT^W4REP
 ;
 S PRM=%ARG("PRM")
 S MEDAT=$P(PRM,";")
 S ADDAT=$P(PRM,";",2)
 ;
 S %REPN("METRHT")=$$^%L1DC(MEDAT,3)
 S %REPN("METRHT","VIEW")=""
 S %REPN("ADTRHT")=$$^%L1DC(ADDAT,3)
 S %REPN("ADTRHT","VIEW")=""
 M %ARG("REPN")=%REPN
 ;
 ;;M ^AA("W4MNREP-DETAIL","REPN",%REPN)=%REPN
 N PROG S PROG="^"_%ARG("PROG")
 D @PROG
 Q
 ;
 ;
COURIERS(PRM) ;
 D KILL^%W1PRM("MANYREPS")
 D PUT^%W1PRM("NOBACK2BO",1)
 N MEDAT,ADDAT
 ;;S ^AA("W4MNREP-DETAIL","PRM")=PRM
 S %ARG("REPN")="DPAYD"
 S %ARG("PROG")="W4DPAYD"
 S %ARG("PRM")=PRM
 S %REPN=%ARG("REPN")
 ;
 D INIT^W4REP
 ;
 S PRM=%ARG("PRM")
 S MEDAT=$P(PRM,";")
 S ADDAT=$P(PRM,";",2)
 ;
 S %REPN("METRH")=$$^%L1DC(MEDAT,3)
 S %REPN("METRH","VIEW")=""
 S %REPN("ADTRH")=$$^%L1DC(ADDAT,3)
 S %REPN("ADTRH","VIEW")=""
 M %ARG("REPN")=%REPN
 ;
 ;;M ^AA("W4MNREP-DETAIL","REPN",%REPN)=%REPN
 N PROG S PROG="^"_%ARG("PROG")
 D @PROG
 Q
 ;
 ; 
RESTREP(PRM) ; 
 D KILL^%W1PRM("MANYREPS")
 D PUT^%W1PRM("NOBACK2BO",1)
 N MEDAT,ADDAT
 ;;S ^AA("W4MNREP-DETAIL","PRM")=PRM
 S %ARG("REPN")="DPAYM"
 S %ARG("PROG")="W4DPAYM"
 S %ARG("PRM")=PRM
 S %REPN=%ARG("REPN")
 ;
 D INIT^W4REP
 ;
 S PRM=%ARG("PRM")
 S MEDAT=$P(PRM,";")
 S ADDAT=$P(PRM,";",2)
 ;
 S %REPN("METRHT")=$$^%L1DC(MEDAT,3)
 S %REPN("METRHT","VIEW")=""
 S %REPN("ADTRHT")=$$^%L1DC(ADDAT,3)
 S %REPN("ADTRHT","VIEW")=""
 M %ARG("REPN")=%REPN
 ;
 ;;M ^AA("W4MNREP-DETAIL","REPN",%REPN)=%REPN
 N PROG S PROG="^"_%ARG("PROG")
 D @PROG
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNSIS
W4MNSIS ; [ 14.11.24 19:53 ] [ 10.11.24 14:12 ] [ 18.07.15 07:00 ] 
 Q
 ;
GET ;
 N GLOB D GLOB^W4SPIDK K @GLOB
 N N,A,I S N="",I=0
 F  S N=$O(@$$GLOPT@("BO",N)) Q:N=""  D
 .S A=$G(^(N))
 .N NMIND S NMIND=$TR($P(A,";",2),"<>","")
 .X "I "_$P(A,";") Q:'$T
 .I N=0 S NMIND="BACKOFFICEPASSWORD"
 .N NAME S NAME=$$TV^%W1DICT($$^%W1LNG,NMIND)
 .S @GLOB@(N)=NAME
 .S $P(@GLOB@(N,1),"\",1)=$G(@$$^W4GL("W4OPT")@("BO",N,"PSWLVL"))
 ;
 I $$PAPJ^W4PRM D
 .S @GLOB@("LVLDEL")=$$TV^%W1DICT($$^%W1LNG,"DELETING")
 .S $P(@GLOB@("LVLDEL",1),"\")=$G(@$$^W4PRM@("BITLVL"),2)
 .S @GLOB@("LVLDPS")=$$TV^%W1DICT($$^%W1LNG,"DPSREPORT")
 .S $P(@GLOB@("LVLDPS",1),"\")=$G(@$$^W4PRM@("LVDMN"),3)
 Q
 ;
 ;
PUT ;
 N GLOB D GLOB^W4SPIDK
 N N,A
 N PSW0 S PSW0=$G(@GLOB@(0,1)) I 'PSW0 S PSW0=2
 ;
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S A=$G(^(N,1))
 .I N="LVLDEL" D  Q
 ..S @$$^W4PRM@("BITLVL")=$P(A,"\")
 .I N="LVLDPS" D  Q
 ..S @$$^W4PRM@("LVDMN")=$P(A,"\")
 .
 .I N K @$$GLOPT@("BO",N,"PSWLVL")
 .I A!'N S @$$GLOPT@("BO",N,"PSWLVL")=A
 ;
 K @$$^W4PRM@("BOPSW3")
 I $G(@$$GLOPT@("BO",0,"PSWLVL"))=3 S @$$^W4PRM@("BOPSW3")=1
 Q
 ;
 ;
GLOPT(STAM) ;
 Q $$^W4GL("W4OPT")
 
 
 
 
 
 
 
 

W4MNTR
W4MNTR(DUMP) ;  [ 17.11.11 19:00 ] [ 25.07.02 11:03 AM ] [ 22.07.02  9:46 AM ] [
 N A S A=$E($G(@$$^W4GL("START")),1,7)
 I A=2520260 Q 1
 I A=2520196 Q 2
 Q 0

W4MNYA
W4MNYA ; -- DOH BDIKA KASPIT LEFI SNIFIM [ 11.04.24 05:24 ] [ 13.06.23 17:00 ] [ 19.07.22 21:15 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("REPN")="W4MNYA"
 ;
 N GLMSDR
 S GLMSDR=$$^W4MAIN("TMPMSDR") K @GLMSDR
 N GLMSD
 S GLMSD=$$^W4MAIN("TMPMSD") K @GLMSD
 ;
 S GL="^|"""_$$^W3MAIN_"""|W4MNYALL"
 S DT="" F  S DT=$O(@GL@(DT)) Q:DT=""  D
 .N MSD S MSD="" F  S MSD=$O(@GL@(DT,MSD)) Q:MSD=""  D
 ..S @GLMSD@(MSD)=""
 ;
 N MSD S MSD="" F  S MSD=$O(@GLMSD@(MSD)) Q:MSD=""  D
 .N MSDR S MSDR=$$MSDR^W4MNYA(MSD)
 .I MSDR S @GLMSDR@(MSDR)=$$NAME^W3MSDR(MSDR)
 K @GLMSD
 Q
 ;
 ;
DT I DT<METRH!(DT>ADTRH) S OK=0 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
 ;
MSD ;
 I '$G(MSD) S OK=0 Q
 S MSDR=$$MSDR(MSD) 
 I $G(MEMSDR),MSDR<MEMSDR S OK=0 Q
 I $G(ADMSDR),MSDR>ADMSDR S OK=0 Q
 S MSDR1=""
 I MSDR S MSDR1=$$NAME^W3MSDR(MSD)
 ;
 S MSD1=$$MSD^W3R(MSD)
 I $D(^[$$^W3MAIN]W4MNYNO(MSD)) S OK=0 Q
 ;
 N A S A=$G(@GLOB)
 ;;S ^AA("W4MNY-MSD","A")=A
 ;;S ^AA("W4MNY-MSD","MSD")=MSD
 ;;S ^AA("W4MNY-MSD","MSDR")=MSDR
 ;
 D PRS^%L1FRM(A,"PD1\CR1\PD2\CR2\PD3\CR3\CA\CAS\CAJ","\")
 S CR4=$$GAPNET(DT,MSD)
 ;;S ^AA("W4MNY-MSD","CR4")=CR4
 N DR S DR=1
 S ER=0
 D  I 'ER S OK=0 Q
 .I $$RZN(PD2,PD1) S ER=1 Q
 .I $$RZN(CR2,CR1) S ER=1 Q
 .I $$RSTG,$$RZN(PD3,PD1) S ER=1 Q
 .I $$RSTG,$$RZN(CR3,CR1) S ER=1 Q
 .I $$RSTG,CR4'="?",$$RZN(PD1+CR1,CR4) S ER=1 Q
 .I $$RZN(CA,CAS+CAJ) S ER=1 Q
 ;
 S x1=$J(PD1,DR,DR)
 S x2=$J(PD2,DR,DR)
 S x3=$J(x2-x1,DR,DR)
 S x4=$J(CR1,DR,DR)
 S x5=$J(CR2,DR,DR)
 S x6=$J(x5-x4,DR,DR)
 s x7=$J(PD1+CR1,DR,DR)
 S x8=$J(PD2+CR2-PD1-CR1,DR,DR)
 S x9=$J(CA,DR,DR)
 S x10=$J(CAS,DR,DR)
 S x11=$J(CAJ,DR,DR)
 S x12=x10+x11-x9
 ;;S ^AA("W4MNY-MSD","OK")=OK
 Q
 ;
GAPNET(DT,MSD) ; 
 N MSDR,SUM S SUM=0
 S MSDR="" F  S MSDR=$O(^|$$^W3MAIN|W4GAPNET(MSDR)) Q:MSDR=""  D  Q:SUM
 .I $D(^(MSDR,DT,MSD)) D 
 ..S SUM=$P($G(^(MSD)),",",4)
 ;
 I 'SUM D
 .N OK S OK=0
 .S MSDR="" F  S MSDR=$O(^|$$^W3MAIN|W4GAPNET(MSDR)) Q:MSDR=""  D  Q:SUM
 ..I $G(DT1),$G(DT2) D
 ...N D F D=DT1:1:DT2 I $D(^|$$^W3MAIN|W4GAPNET(MSDR,D,MSD)) S OK=1 Q
 .I 'OK S SUM="?"
 Q SUM 
 ;
 ;
RZN(VL1,VL2) ; 
 I VL1-VL2>.4 Q 1
 I VL1-VL2<-.4 Q 1
 Q 0
 ;
MSDR(MSD) 
 N OK S OK=""
 N GL S GL="^|$$^W3MAIN|W3MSDR"
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .I $D(@GL@(N,MSD)),$O(@GL@(N,MSD))'=""!($O(@GL@(N,MSD),-1)'="") S OK=N
 Q OK
 ;
RSTG() ;
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNYALL
W4MNYALL ; [ 21.06.23 05:00 ] [ 19.07.22 11:14 ] [ 05.07.22 11:31 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(%ARG("SHOW"))=0 Q
 ;
 D ^%W1ARG
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
    W $$^%W1DICT("MNYALLREP",MEDAT_"<>"_ADDAT)
  W "</span>",!
  W "<br><br>",! 
  ;
  W "<table width=""90%"" >",!
   W "<tr>",!
    I '$G(%ARG("SORT")) D
    .W "<th>"_$$^%W1DICT("DATE")_"</th>",!
    .W "<th>"_$$^%W1DICT("ESEK")_"</th>",!
    I $G(%ARG("SORT")) D
    .W "<th>"_$$^%W1DICT("ESEK")_"</th>",!
    .W "<th>"_$$^%W1DICT("DATE")_"</th>",!
    ;
    W "<th>"_$$^%W1DICT("MANYREPPD")_"</th>",!
    W "<th>"_$$^%W1DICT("ZREPPD")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    W "<th>"_$$^%W1DICT("MANYREPCR")_"</th>",!
    W "<th>"_$$^%W1DICT("ZREPCR")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    ;
    W "<th>"_$$^%W1DICT("NETSALES")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    ;
    W "<th>"_$$^%W1DICT("CA")_"</th>",!
    W "<th>"_$$^%W1DICT("SENDED")_"</th>",!
    W "<th>"_$$^%W1DICT("CAJ")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    ;
    I $G(%ARG("RSTG")) D
    .W "<th>"_$$^%W1DICT("RSTGPD")_"</th>",!
    .W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    .W "<th>"_$$^%W1DICT("RSTGCR")_"</th>",!
    .W "<th>"_$$^%W1DICT("DIF")_"</th>",!
  ;
  W "</tr>",!
  ;
  S GL="^[$$^W3MAIN]W4MNYALL"
  ;
  S (SPD1,SCR1,SPD2,SCR2,SPD3,SCR3,SCR4,SCA,SCAS,SCAJ)=0
  S I=0
  ;
  S DTOLD=""
  I '$G(%ARG("SORT")) D
  .F DT=DT1:1:DT2 D
  ..S MSD="" F  S MSD=$O(@GL@(DT,MSD)) Q:MSD=""  D
  ...I $G(%ARG("MSD")),MSD'=%ARG("MSD") Q
  ...D REPMSD(DT,MSD)
  ;
  I $G(%ARG("SORT")) D
  .N VRM
  .D GL2VRM
  .S MSD="" F  S MSD=$O(@VRM@(MSD)) Q:MSD=""  D
  ..I $G(%ARG("MSD")),MSD'=%ARG("MSD") Q
  ..F DT=DT1:1:DT2 D REPMSD(DT,MSD)
  ;
  W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
  D
  . W "<td>"
  .  W "&nbsp;"
  . W "</td>"
  . W "<td>"
  .  W "&nbsp;"
  . W "</td>"
  . W "<td>"
  .  W $J(SPD1,2,2)
  . W "</td>"
  . W "<td>"
  .  W $J(SPD2,2,2)
  . W "</td>"
  . W "<td>"
  .  W $$DIF(SPD2-SPD1)
  . W "</td>"
  . W "<td>"
  .  W $J(SCR1,2,2)
  . W "</td>"
  . W "<td>"
  .  W $J(SCR2,2,2)
  . W "</td>"
  . W "<td>"
  .  W $$DIF(SCR2-SCR1)
  . W "</td>"
  .
  . W "<td>"
  .  W $J(SCR4,2,2)
  . W "</td>"
  . W "<td>"
  .  W $$DIF(SCR4-SCR1)
  . W "</td>"
  .
  .W "<td>"
  . W $J(SCA,2,2)
  .W "</td>"
  .
  .W "<td>"
  . W $J(SCAS,2,2)
  .W "</td>"
  .
  .W "<td>"
  . W $J(SCAJ,2,2)
  .W "</td>"
  .
  .W "<td>"
  . W $$DIF(SCAS+SCAJ-SCA)
  .W "</td>"
  . 
  .I $G(%ARG("RSTG")) D
  .. W "<td>"
  ..  W $J(SPD3,2,2)
  .. W "</td>"
  .. W "<td>"
  ..  W $$DIF(SPD3-SPD1)
  .. W "</td>"
  ..;; W "<td>"
  ..;;  W $J(SCR3,2,2)
  ..;; W "</td>"
  ..;; W "<td>"
  ..;;  W $$DIF(SCR3-SCR1)
  ..;; W "</td>"
  ;
  W "</tr>'",!
  W "</table>",!
  W "</div>",! 
  Q
 ;
 ;
DIF(VL) ;
 N ST
 S ST="<span style=""color:"_$S(VL>0:"green",VL<0:"red",1:"grey")_""">"
  S ST=ST_$J(VL,1,1)
 S ST=ST_"</span>"
 Q ST
 ;
MEDAT(DT) ; 
 N DD S DD=+$ZD(DT,"DD") 
 N MM S MM=+$ZD(DT,"MM") 
 N YY S YY=$ZD(DT,"YY") 
 I DD=1 Q "01."_$S(MM=1:12,1:$$DOP^%L1FRM(MM-1))_"."_$S(MM=1:$$DOP^%L1FRM(YY-1),1:YY)
 Q "01."_$$DOP^%L1FRM(MM)_"."_YY
 ;
ADDAT(DT) ;
 Q $ZD(DT-1,"DD.MM.YY")
 ;
GAPNET(DT,MSD) ; 
 N MSDR,SUM S SUM=0
 S MSDR="" F  S MSDR=$O(^|$$^W3MAIN|W4GAPNET(MSDR)) Q:MSDR=""  D  Q:SUM
 .I $D(^(MSDR,DT,MSD)) D 
 ..S SUM=$P($G(^(MSD)),",",4)
 ;
 I 'SUM D
 .N OK S OK=0
 .S MSDR="" F  S MSDR=$O(^|$$^W3MAIN|W4GAPNET(MSDR)) Q:MSDR=""  D  Q:SUM
 ..I $G(DT1),$G(DT2) D
 ...N D F D=DT1:1:DT2 I $D(^|$$^W3MAIN|W4GAPNET(MSDR,D,MSD)) S OK=1 Q
 .I 'OK S SUM="?"
 Q SUM 
 ;
 ;
RZN(VL1,VL2) ; 
 I VL1-VL2>.4 Q 1
 I VL1-VL2<-.4 Q 1
 Q 0
 ;
MSDRREP(MSD) 
 N OK S OK=""
 N GL S GL="^|$$^W3MAIN|W3MSDR"
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .I $D(@GL@(N,MSD)),$O(@GL@(N,MSD))'=""!($O(@GL@(N,MSD),-1)'="") S OK=N
 Q OK
 ;
 ;
REPMSD(DT,MSD) ;
 N MSDRREP,A
 S MSDRREP=$$MSDRREP(MSD) 
 I $G(%ARG("MSDR")),MSDRREP'=%ARG("MSDR") Q
 I $D(^[$$^W3MAIN]W4MNYNO(MSD)),$$^%L1DC($G(^[$$^W3MAIN]W4MNYNO(MSD)),3)<DT Q
 S A=$G(@GL@(DT,MSD))
 D PRS^%L1FRM(A,"PD1\CR1\PD2\CR2\PD3\CR3\CA\CAS\CAJ","\")
 S CR4=$$GAPNET(DT,MSD)
 N OK S OK=1
 D  Q:OK 
 .N DR S DR=1
 .I $$RZN(PD2,PD1) S OK=0 Q
 .I $$RZN(CR2,CR1) S OK=0 Q
 .I $G(%ARG("RSTG")),$$RZN(PD3,PD1) S OK=0 Q
 .I $G(%ARG("RSTG")),$$RZN(CR3,CR1) S OK=0 Q
 .I $G(%ARG("RSTG")),CR4'="?",$$RZN(PD1+CR1,CR4) S OK=0 Q
 .I $$RZN(CA,CAS+CAJ) S OK=0 Q
 ;
 S I=I+1
 W "<tr "
 I '(I#2) W "style=""background-color:eaeaea"" "
 W ">"
  I '$G(%ARG("SORT")) D TDDAT,TDMSD
  I $G(%ARG("SORT")) D TDMSD,TDDAT
  ;
  W "<td>"
   W $J(PD1,2,2) S SPD1=SPD1+PD1
  W "</td>"
  W "<td>"
   W $J(PD2,2,2) S SPD2=SPD2+PD2
  W "</td>"
  W "<td>"
   W $$DIF(PD2-PD1)
  W "</td>"
  W "<td>"
   W $J(CR1,2,2) S SCR1=SCR1+CR1
  W "</td>"
  W "<td>"
   W $J(CR2,2,2) S SCR2=SCR2+CR2
  W "</td>"
  W "<td>"
   W $$DIF(CR2-CR1)
  W "</td>"
 
  W "<td>"
   W $J(CR4,2,2) S SCR4=SCR4+CR4
  W "</td>"
  W "<td>"
   W $$DIF(CR4-PD1-CR1)
  W "</td>"
  
  ;;W "<td>"
  ;; W $J(CR3,2,2) S SCR3=SCR3+CR3
  ;;W "</td>"
  ;;W "<td>"
  ;; W $$DIF(CR3-CR1)
  ;;W "</td>"
 
 W "<td>"
  W $J(CA,2,2) S SCA=SCA+CA
 W "</td>"
 
 W "<td>"
  W $J(CAS,2,2) S SCAS=SCAS+CAS
 W "</td>"
 
 W "<td>"
  W $J(CAJ,2,2) S SCAJ=SCAJ+CAJ
 W "</td>"
 
 W "<td>"
  W $$DIF(CAS+CAJ-CA)
 W "</td>"
 Q
 ;
GL2VRM ; 
 S VRM=$$^W4MAIN("VRM")
 N GL S GL="^[$$^W3MAIN]W4MNYALL"
 N DT,MSD
 K @VRM
 F DT=DT1:1:DT2 Q:DT=""  D 
 .S MSD="" F  S MSD=$O(@GL@(DT,MSD)) Q:MSD=""  D 
 ..S @VRM@(MSD,DT)=""
 Q 
 ;
TDDAT ;
  W "<td align=""center"">"
   I '$G(%ARG("SORT")) D
   .I DT'=DTOLD W $ZD(DT,"DD.MM.YY") S DTOLD=DT
   .I DT=DTOLD W "&nbsp;"
   ;
   I $G(%ARG("SORT")) D
   .W $ZD(DT,"DD.MM.YY")
  W "</td>"
  Q
 ; 
 ;
TDMSD ;
  W "<td>"
   W MSD_" "_$$H2U^%L1FRM($$MSD^W3R(MSD))
  W "</td>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNYHSV
W4MNYHSV(DAT) ; [ 14.04.26 02:40 ] [ 08.07.24 08:14 ] [ 03.07.22 09:10 ] 
 N (JB,%ARG,%REM,DAT) 
 S DT=$$^%L1DC(DAT,3)
 S DAT1=$ZD(DT,"DD.MM.YY")
 S DAT=$ZD(DT,"YYMMDD")
 ;
 D ^W4SUMZRO
 D ^W4SUM
 ;
 S RESTSUM=$G(SUMMSD)
 S DLVSUM=$G(SUMMSL)
 S TAWSUM=$G(SUMDLP)+$G(SUMTAW)
 ;
 S CREDSUM=$G(SUMAMSD)+$G(SUMAMSL)+$G(SUMADLP)+$G(SUMATAW)
 ;
 S PD1=$$PD($$^W4GL("TOT")_"("""_DAT_""")")
 S CR1=$G(@$$^W4GL("TOT")@(DAT,"H",1))
 S CA=$G(@$$^W4GL("TOT")@(DAT,"V",1))
 ;
 S PD2=0,CR2=0
 S NZ="" F  S NZ=$O(@$$^W4GL("Z1")@(DAT,NZ)) Q:NZ=""  D
 .S PD2=PD2+$$PD($$^W4GL("Z1")_"("""_DAT_""","""_NZ_""")")
 .S CR2=CR2+$G(@$$^W4GL("Z1")@(DAT,NZ,"H",1))
 ;
 S FILE=$$FILEIN^W4RSTGSN(DT,"deps")
 S PD3=0,CD3=0
 ;
 I $$^%L1ZOS(10,FILE)>-1 D
 .O FILE:(REWIND:READONLY) U FILE
 .
 .I '$$RSTGNEW D
 ..N A F  R A Q:$ZEOF  D
 ...I A["register" S PD3=+$$SPA^%L1FRM($P(A,":",2))
 ...I A["credit" S CR3=+$$SPA^%L1FRM($P(A,":",2))
 .
 .I $$RSTGNEW D
 ..N A F  U FILE R A Q:$ZEOF  D
 ...I $TR(A," ","")["shiftType"":""shiftID" D
 ....N A1 F  U FILE R A1 Q:$ZEOF  Q:A1["{"  Q:A1["}"  D
 .....;;U 0 W A1,!
 .....I A1["totalCharged" S PD3=PD3+$$SPA^%L1FRM($P(A1,":",2))
 .....I A1["totalRefunded" S PD3=PD3+$$SPA^%L1FRM($P(A1,":",2))
 .....;;U 0 W "PD3="_PD3,!
 .
 .C FILE
 ;
 S CAS=$$^W4SUMV(DT,DT)
 S CAJ=$$^W4SUMVJ(DT,DT)
 S @$$^W4GL("W4MNYPR")@($$IND,DT)=PD1_"\"_CR1_"\"_PD2_"\"_CR2_"\"_$G(PD3)_"\"_$G(CR3)_"\"_CA_"\"_CAS_"\"_CAJ
 Q 
 ;
 ;
PD(GL) ;
 N N,Z
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S Z(N)=$G(^(N,1))
 ;
 S Z("V")=0 F J=1:1:9 D
 .I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 .S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 ;
 S Z("A")=$G(Z("F"))+$G(Z("G"))+$G(Z("V"))+$G(Z("MP"))
 ;
 I '$$^W4TIPPD(N) D
 .S Z("A")=Z("A")-$G(Z("T"))
 Q Z("A")
 ;
IND(STAM) ;
 N IND S IND=$G(@$$^W4PRM@("WEB","MSD"))
 I 'IND,$$BRANCH^W4RSTGSN S IND="R"_$$BRANCH^W4RSTGSN
 I IND="" S IND=0
 Q IND
 ;
RSTGNEW() ; 
 I $G(@$$^W4PRM@("RSTGNEW")) Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNYNEW
W4MNYNEW(JB,DT1,DT2) ; [ 24.01.22 16:11 ] [ 22.11.21 13:21 ] [ 24.01.21 11:40 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 ;
 F DT=DT1:1:DT2 D
 .D MNY(DT)
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 

W4MNYREP
W4MNYREP ; [ 08.07.24 11:21 ] [ 29.12.22 09:14 ] [ 03.07.22 09:45 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 ;
 I $G(%ARG("SHOW"))'=1 Q
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
    W $$^%W1DICT("MNYREPORT",MEDAT_"<>"_ADDAT)
  W "</span>",!
  W "<br><br>",! 
  ;
  W "<table width=""90%"" >",!
   W "<tr>",!
    W "<th>"_$$^%W1DICT("DATE")_"</th>",!
    W "<th>"_$$^%W1DICT("MANYREPPD")_"</th>",!
    W "<th>"_$$^%W1DICT("ZREPPD")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    W "<th>"_$$^%W1DICT("MANYREPCR")_"</th>",!
    W "<th>"_$$^%W1DICT("ZREPCR")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    ;
    W "<th>"_$$^%W1DICT("ALLSALES")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    ;
    W "<th>"_$$^%W1DICT("RSTGPD")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    I '$$RSTGNEW D
    .W "<th>"_$$^%W1DICT("RSTGCR")_"</th>",!
    .W "<th>"_$$^%W1DICT("DIF")_"</th>",!
    ;
    W "<th>"_$$^%W1DICT("CA")_"</th>",!
    W "<th>"_$$^%W1DICT("SENDED")_"</th>",!
    W "<th>"_$$^%W1DICT("CAJ")_"</th>",!
    W "<th>"_$$^%W1DICT("DIF")_"</th>",!
  W "</tr>",!
  ;
  S GL=$$^W4GL("W4MNYPR")_"("""_$$IND^W4MNYHSV_""")"
  ;
  S (SPD1,SCR1,SPD2,SCR2,SPD3,SCR3,SCA,SCAS,SCAJ)=0
  ;
  F DT=DT1:1:DT2 D
  .W "<tr>"
  . S A=$G(@GL@(DT))
  . D PRS^%L1FRM(A,"PD1\CR1\PD2\CR2\PD3\CR3\CA\CAS\CAJ","\")
  . W "<td align=""center"">"
  .  W $ZD(DT,"DD.MM.YY")
  . W "</td>"
  . W "<td>"
  .  W $J(PD1,2,2) S SPD1=SPD1+PD1
  . W "</td>"
  . W "<td style=""cursor:pointer"" "_$$SHOWZ(DT)_">"
  .  W $J(PD2,2,2) S SPD2=SPD2+PD2
  . W "</td>"
  . W "<td>"
  .  W $$DIF(PD2-PD1)
  . W "</td>"
  .
  . W "<td>"
  .  W $J(CR1,2,2) S SCR1=SCR1+CR1
  . W "</td>"
  . W "<td style=""cursor:pointer"" "_$$SHOWZ(DT)_" >"
  .  W $J(CR2,2,2) S SCR2=SCR2+CR2
  . W "</td>"
  . W "<td>"
  .  W $$DIF(CR2-CR1)
  . W "</td>"
  .
  . W "<td>"
  .  W $J(PD1+CR1,2,2)
  . W "</td>"
  . W "<td>"
  .  W $$DIF(PD2+CR2-PD1-CR1)
  . W "</td>"
  .
  . W "<td style=""cursor:pointer"" onClick=""ClickIn('"_DT_"','DEP')"">"
  .  W $J(PD3,2,2) S SPD3=SPD3+PD3
  . W "</td>"
  . W "<td>"
  .  D
  .  .I '$$RSTGNEW W $$DIF(PD3-PD1) Q
  .  .I $$RSTGNEW W $$DIF(PD3+CR3-PD1-CR1) Q
  . W "</td>"
  .I '$$RSTGNEW D
  .. W "<td>"
  ..  W $J(CR3,2,2) S SCR3=SCR3+CR3
  .. W "</td>"
  .. W "<td>"
  ..  W $$DIF(CR3-CR1)
  .. W "</td>"
  .
  .W "<td>"
  . W $J(CA,2,2) S SCA=SCA+CA
  .W "</td>"
  .
  .W "<td>"
  . W $J(CAS,2,2) S SCAS=SCAS+CAS
  .W "</td>"
  . 
  .W "<td>"
  . W $J(CAJ,2,2) S SCAJ=SCAJ+CAJ
  .W "</td>"
  .
  .W "<td>"
  . W $$DIF(CAS+CAJ-CA)
  .W "</td>"
  .W "</tr>",!
  ;
  W "<tr style=""background-color:yellow;color:black;font-weight:bold"">",!
  D
  . W "<td>"
  .  W "&nbsp;"
  . W "</td>"
  . W "<td>"
  .  W $J(SPD1,2,2)
  . W "</td>"
  . W "<td>"
  .  W $J(SPD2,2,2)
  . W "</td>"
  . W "<td>"
  .  W $$DIF(SPD2-SPD1)
  . W "</td>"
  .
  . W "<td>"
  .  W $J(SCR1,2,2)
  . W "</td>"
  . W "<td>"
  .  W $J(SCR2,2,2)
  . W "</td>"
  . W "<td>"
  .  W $$DIF(SCR2-SCR1)
  . W "</td>"
  .
  . W "<td>"
  .  W $J(SPD1+SCR1,2,2)
  . W "</td>"
  . W "<td>"
  .  W $$DIF(SPD2+SCR2-SPD1-SCR1)
  . W "</td>"
  .
  . W "<td>"
  .  W $J(SPD3,2,2)
  . W "</td>"
  . W "<td>"
  . D
  . .I '$$RSTGNEW W $$DIF(SPD3-SPD1) Q
  . .W $$DIF(SPD3-SPD1-SCR1) Q
  .
  .I '$$RSTGNEW D
  .. W "</td>"
  .. W "<td>"
  ..  W $J(SCR3,2,2)
  .. W "</td>"
  .. W "<td>"
  ..  W $$DIF(SCR3-SCR1)
  .. W "</td>"
  .
  .W "<td>"
  . W $J(SCA,2,2)
  .W "</td>"
  .
  .W "<td>"
  . W $J(SCAS,2,2)
  .W "</td>"
  . 
  .W "<td>"
  . W $J(SCAJ,2,2)
  .W "</td>"
  .
  .W "<td>"
  . W $$DIF(SCAS+SCAJ-SCA)
  .W "</td>"
  .W "</tr>",!
  ;
  W "</tr>'",!
  Q
 ;
 ;
SHOWZ(DT) ;
 N ST S ST="onClick=""ShowZ('"_$ZD(DT,"DD.MM.YY")_"')"" "
 Q ST
 ;
DIF(VL) ;
 N ST
 S ST="<span style=""color:"_$S(VL>0:"green",VL<0:"red",1:"grey")_""">"
  S ST=ST_$J(VL,1,1)
 S ST=ST_"</span>"
 Q ST
 ;
RSTGNEW() ; 
 Q $$RSTGNEW^W4MNYHSV 
 ;
 ;
COMP(DAT1,DAT2,JB) ;
 N DT,DT1,DT2
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 F DT=DT1:1:DT2 D
 .D ^W4MNYHSV(DT)
 .D PUT^%W1PRM("COMPDAT",$ZD(DT,"DD.MM.YY"))
 ;
 D PUT^%W1PRM("W4MNYREP",1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNYSN
W4MNYSN(JB,DT1,DT2) ; [ 23.06.23 14:46 ] [ 22.11.21 13:21 ] [ 24.01.21 11:40 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 ;
 N FL,GLOB,ADDR,ZSY S ZSY=0
 S WEBMSD=$G(@$$^W4PRM@("WEB","MSD")) Q:'WEBMSD
 S DIR="/tmp/"
 S URL=$$OU^W3ASKURL_"w3ansmny.jsp?"
 S PRM="MSD="_WEBMSD
 ;
 F DT=DT1:1:DT2 D
 .D ^W4MNYHSV(DT)
 .S FL=DIR_"tmpmny"
 .I $D(@$$^W4GL("W4MNYPR")@(WEBMSD,DT))#2 D
 ..S CONT=DT_"\"_@$$^W4GL("W4MNYPR")@(WEBMSD,DT)
 ..D SEND^W3ASKFD1(FL,URL,PRM,CONT) ;
 .;
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4MNYSUM
W4MNYSUM(MEDAT,ADDAT) ; [ 28.03.26 15:37 ] [ 05.11.25 04:48 ] [ 03.11.25 12:51 ] 
 K (JB,%ARG,%REM,MEDAT,ADDAT) D ^W4IN
 I '$G(JB) S JB=$$^%W1SsID("W4MNYSUM")
 N TMPSCRARG S TMPSCRARG="^[$$^W3MAIN]TMPSCR(JB,""ARG"")"
 K @TMPSCRARG
 D ^%W1ARG
 ;
 S DT2=$$^%L1DC(ADDAT,3)
 S TIPPD=$S($$^W4TIPPD(DT2):1,$$TIPNO^W4TIPPD(DT2):-1,1:0)
 I $$^W4TIPCBU(DT2) S TIPPD=1
 ;
 S W4LKH=$$^W4LKH
 ;
P1 ;
 S DAT1=MEDAT,DAT2=ADDAT
 S DAT01=$$^%L1DC(DAT1,3),DAT02=$$^%L1DC(DAT2,3)
 D
 .N DAT S DAT=$$^%L1DC(DAT2,2)
 .S TIPPS=$$TIPPS^W4TOT("")
 ;
 K CAOUT
 D ^W4SUMZRO
 D 100^W4TOT
 ;
 F DATT=DAT01:1:DAT02 S DAT=$$^%L1DC(DATT,2) D
 .W DAT,!
 .S GLBL=$$GLTOT^W4LKHSUM($G(DOCH),DAT) D 1011^W4TOT
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MNYZ
W4MNYZ ; [ 05.10.23 09:46 ] [ 23.06.23 14:00 ] [ 14.05.23 14:48 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 K %L1PC
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S %REPN="W4MNYZ"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 S TMPSN="^|$$^W3MAIN|TMPSN" K @TMPSN
 ;
 S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @TMPSN@(N)=$$MSD^W3R(N)
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("MSDR")=MSDR
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 S MSDR=+$G(MSDR)
 ;;S TMP=$$^W4MAIN("TMP") K @TMP
 ;;M @TMP=^|$$^W3MAIN|W4MNYZ(MSDR)
 Q
 ;
 ;
DAT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 I DT<$G(MEDAT) S OK=0 Q
 I DT>$G(ADDAT) S OK=2 Q
 Q
 ;
MSD ;
 N MSD1 S MSD1=$G(^|$$^W3MAIN|W3MSD(MSD))
 N MSDR S MSDR=$G(@$$^%W1GLPRM@("MSDR"))
 I MSDR,'$D(^|$$^W3MAIN|W3MSDR(MSDR,MSD)) S OK=0 Q
 N A,DLM,PD S A=$G(@GLOB)
 S DLM="~",PD=0
 N J F J=1:2:15 S PD=PD+$P(A,DLM,J)
 S x1=$J(PD,2,2)
 S x2=$$RKV($P(A,DLM,1)) ; -- CASH KUPA
 S x3=$$RKV($P(A,DLM,2))  ; -- CASH KABALOT
 S x4=$J(x2+x3,2,2)
 Q
 ;
RKV(VL) ;
 Q VL  ; --- 04/10/22
 
 
 
 
 
 
 
 
 
 

W4MOTH
W4MOTH ; [ 11.08.15 12:48 ] [
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""font-size:"_$$^W3FSZ(18)_";"_$$FONTFM^W3CSS_""" >",!
  W "<br><br><br>",!
  W $$^%W1DICT("SIGNITEMS4OTH")
  W "<br><br><br>",!
  D ^W4SBMBCK("")
 W "</div>",!
 Q
 ;
PUTDISC ;
 N TMPOTH S TMPOTH=$$^W4MAIN("TMPOTH")
 N N S N="" F  S N=$O(@TMPOTH@(N)) Q:N=""  I N D SETDISC(N)
 Q
 ;
SETDISC(N) ;
 N VL S VL="100"
 S $P(@$$^W3TMPORD@(JB,N),"~",6)=VL
 D GETCAUSE^W4SCASK("DISCOTH","CAUSEDISC")
 S @$$^W4TMPORD@("HNH",N)=VL_"*"_WHO_"*"_SIBA_"*"_SIBA1_"*"_$H_"**"_$$^W4MYDVN
 Q
 ;

W4MPCA
W4MPCA(SUM) ; [ 29.04.16 12:42 ] [ 13.10.15 14:19 ] [ 12.10.15 17:17 ] [
 N (JB,%ARG,SUM)
 ;;Q 1
 ;
 S HZM=$$GETP^%W1PRM("HZM") I '$$^W4ISORD(HZM) Q 0
 I $$ITRA^W4HZMST(HZM)'>0 Q 0
 S VIZ=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER") I 'VIZ Q 0
 I '$G(@$$^WMG@("ONESWIPE")) Q 0
 S OK=0
 N N S N="" F  S N=$O(@$$^WMCA@(N)) Q:N=""  D  Q:OK
 .I $E(VIZ,1,$L(N))=N S OK=1
 Q OK
 

W4MPCHZ
W4MPCHZ ; [ 25.06.26 07:11 ] [ 27.01.26 10:46 ] [ 23.01.26 15:48 ] 
 N (JB,%ARG,%REM)
 S DZ=$$^W4DZ
 S HZW=$$^%W1SsID("W4MPCHZ")
 ;
 K @$$^W3TMPORD@(HZW)
 S TMPORD1="^|$$^W3MAIN|TMPORD1(JB)" K @TMPORD1
 S TMPORD2="^|$$^W3MAIN|TMPORD2(JB)" K @TMPORD2
 ;
 N NZ S NZ=$G(@$$^W4GL("Z"))+1
 I $G(@$$^W4GL("W4MPZ")@(DZ,NZ)) Q
 ; 
 S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  D
 .S A=$G(^(N))
 .I A[",^" K @TMPORD1,@TMPORD2 K @$$^W3TMPORD@(HZW)
 .I $$HZM^W4MSD(N) Q
 .S N1="" F  S N1=$O(@$$^W4ORD@(N,N1)) Q:N1=""  I N1 D
 ..S ST=$G(^(N1)) Q:ST=""
 ..S CD=$P(ST,"\") Q:'CD
 ..S MH=$P(ST,"\",4)
 ..S QN=$P(ST,"\",5)
 ..I $$MP(CD) D CRCD(CD,0,QN,N,1)
 ..I $$COUP(CD) D CRCD(CD,0,QN,N,2)
 ..
 ..S N2=""  S N2=$O(@$$^W4ORD@(N,N1,N2)) Q:N2=""  I N2 D 
 ...S STT=$G(^(N2))
 ...I $$MP(N2)!$$COUP(N2) D
 ....S MHT=$P(STT,"\",2)
 ....S QNT=$P(STT,"\",3)
 ....I $$MP(N2) D CRCD(N2,1,QNT,N,1)
 ....I $$COUP(N2) D CRCD(N2,1,QNT,N,2)
 ;
 ;
 I $D(@TMPORD1)>9 D
 .K @$$^W3TMPORD@(HZW)
 .M @$$^W3TMPORD@(HZW)=@TMPORD1 K @TMPORD1
 .S HZMS=$$^W4NEWHZ(HZW,-1,1)
 .I HZMS<1 Q
 .S @$$^W4GL("W4MPCHZ")@($$^W4DZ,"MP",HZMS)=$H
 .;;W "MP: "_HZMS,! ; ***
 .
 .S @$$^W4ORD@(HZMS,"ASR")=$$TSHL^W4HZMST(HZMS)
 .D ASR^W4TSAUTO(HZMS)
 ;
 I $D(@TMPORD2)>9 D
 .K @$$^W3TMPORD@(HZW)
 .M @$$^W3TMPORD@(HZW)=@TMPORD2 K @TMPORD2
 .S HZMS=$$^W4NEWHZ(HZW,-1,1)
 .I HZMS<1 Q
 .S @$$^W4GL("W4MPCHZ")@($$^W4DZ,"CP",HZMS)=$H
 .;;W "CP: "_HZMS,! ; ***
 .
 .S @$$^W4ORD@(HZMS,"ASR")=$$TSHL^W4HZMST(HZMS)
 .D ASR^W4TSAUTO(HZMS)
 ;
 S @$$^W4GL("W4MPZ")@(DZ,NZ)=$H
END K @$$^W3TMPORD@(HZW),@TMPORD1,@TMPORD2
 Q
 ;
 ;
CRCD(CD,LV,QN,HZMKR,PR) ;
 N (JB,CD,LV,MH,QN,HZMKR,PR,TMPORD1,TMPORD2)
 I PR=1 S TMPORD=TMPORD1
 E  S TMPORD=TMPORD2
 ;
 I '$D(@TMPORD) D
 .;;S HD=$S(PR=1:$$MPTBL,1:$$COUPTBL)
 .S $P(HD,"~",1)=$S(PR=1:$$MPLK,1:$$COUPLK)
 .S $P(HD,"~",3)="aegx"
 .S $P(HD,"~",15)=1
 .S $P(HD,"~",9)="0!"
 .S $P(HD,"~",31)="xir"
 .S $P(HD,"~",4)=$ZD($H,"DD.MM.YY  24:60")
 .S $P(HD,"~",5)=$ZD($H,"DD.MM.YY")
 .S $P(HD,"~",6)=$ZD($H,"24:60")
 .S $P(HD,"~",27)=$S(PR=1:$$MPLK,1:$$COUPLK)
 .S $P(HD,"~",18)=$G(@$$^W4PRM@("WEB","MKBL"))
 .S $P(HD,"~",21)=4
 .S $P(HD,"~",51)=60
 .S $P(HD,"~",80)=1
 .S @TMPORD=HD
 ;
 S NM=$$SHEM^W4P(CD)
 S MH=$$MH^W4P(CD)
 S ST="0~"_CD_"~"_NM_"~"_MH_"~"_QN
 S CMST="" I $G(HZMKR) S CMST="FROM "_HZMKR I LV S CMST=CMST_" ["_LV_"]" 
 S $P(ST,"~",7)=CMST
 S SH=$O(@TMPORD@(99999),-1)+1
 S @TMPORD@(SH)=ST
 Q
 ;
 ;
MP(CD)
 N SUG S SUG=$$SUG^W4P(CD) Q:SUG=""
 I SUG'=$$MPSUG Q 0
 Q 1 
 ;
MPSUG() ;
 Q 23
 ;
MPTBL() ;
 Q 999
 ;
MPLK() ;
 Q 9999
 ;
COUP(CD)
 N SUG S SUG=$$SUG^W4P(CD) Q:SUG=""
 I SUG'=$$COUPSUG Q 0
 Q 1 
 ;
COUPSUG() ;
 Q 52
 ;
COUPTBL() ;
 Q 998
 ;
COUPLK() ;
 Q 20015
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MRK
W4MRK ; [ 10.02.18 16:30 ] [ 07.02.18 12:29 ] [ 11.10.13 17:33 ] 
GET
 N GLOB,GLOB0 D GLOB^W4SPIDK
 N GLMRK D GLMRK
 N I S I=0
 ;
 N N S N="" F  S N=$O(@GLMRK@(N)) Q:N=""  D
 .S @GLOB@(N)=$G(@GLMRK@(N))
 .S $P(@GLOB@(N,1),"\",1)=$G(@GLMRK@(N,"MAIN"))
 .S $P(@GLOB@(N,1),"\",2)=$G(@GLMRK@(N,"IT"))
 .S $P(@GLOB@(N,1),"\",3)=$G(@GLMRK@(N,"GEO"))
 .S $P(@GLOB@(N,1),"\",4)=$G(@GLMRK@(N,"LKH"))
 Q
 ;
 ;
SAVE ;
 N (JB,%ARG,PRM,%REM)
 D GLOB^W4SPIDK
 N GLMRK D GLMRK K @GLMRK
 N I S I=0
 N N S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S @GLMRK@(N)=$G(@GLOB@(N))
 .S @GLMRK@(N,"MAIN")=$P($G(@GLOB@(N,1)),"\")
 .S @GLMRK@(N,"IT")=$P($G(@GLOB@(N,1)),"\",2)
 .S @GLMRK@(N,"GEO")=$P($G(@GLOB@(N,1)),"\",3)
 .S @GLMRK@(N,"LKH")=$P($G(@GLOB@(N,1)),"\",4)
 Q
 ;
 ;
GL ;
 S GL=$$^W4MAIN("TMP")
 Q
 ;
GLMRK ;
 S GLMRK=$$^W4GL("W4MRK")
 Q
 
 
 
 
 

W4MRKDOH
W4MRKDOH(DT1,DT2) ; [ 30.06.25 12:17 ] [ 23.03.14 10:09 ] [ 22.03.14 14:38 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 K @$$^W4MAIN("TMPMRK")
 ;
 F DT=DT1:1:DT2 D
 .K KAMSUM
 .S DAT=$$^%L1DC(DT,2) D ^W4SUM1O
 .;;W ?35,$$^%L1DC(DAT,1),!
 .M @$$^W4MAIN("TMPMRK")@(DT)=KAMSUM
 ;
 ;
 N MSD,VRM S VRM=$$^W4MAIN("VRM")
 ;
 I $$TOWEB D
 .L +@$$^W4GL("MRK2WEB"):2
 .K @$$^W4GL("MRK2WEB")
 .K @VRM
 .S MSD=+@$$^W4PRM@("WEB","MSD")
 .S @VRM@("FL")="MRK2WEB"
 .S @VRM@("GLOB")=$$^W4GL("MRK2WEB")
 ;
 ;
 S MRK=$$^%L1MRK
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .K @$$^W4GL("DOHMRK")@(DT,MRK)
 .M @$$^W4GL("DOHMRK")@(DT,MRK)=@$$^W4MAIN("TMPMRK")@(DT)
 .I $$TOWEB M @$$^W4GL("MRK2WEB")@(DT,MRK)=@$$^W4MAIN("TMPMRK")@(DT)
 ;
 Q
 ;
TOWEB(STAM) ;
 Q $G(@$$^W4PRM@("TOWEB"))
 

W4MRKEX
W4MRKEX(%REPN,FMT) ; [ 08.07.26 13:32 ] [ 14.06.16 07:09 ] [ 01.06.13 17:01 ] [
 N (JB,%ARG,%REM,%REPN,FMT,TOT)
 D ^%L1TS
 S FMT=+$G(FMT)
 N DIR S DIR=$$DIRL^%W1PCEX
 N FL S FL=DIR_%REPN_$$^W4MYDVN
 I $G(TOT) S FL=FL_"S"
 S FLCSV=FL_"."_$$FMT^%W1PCEX(FMT)
 N A,B,I,J,RZD
 S RZD="*"
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 U FLCSV
 ;
 S VRMEX=$$^W4MAIN("VRMEX")
 S N="" F  S N=$O(@VRMEX@(N)) Q:N=""  D  W !
 .S LAST=$O(@VRMEX@(N,9999),-1)
 .F J=1:1:LAST D
 ..;;S A=$G(^(J)) W $TR(A,TS0,TS1) I $O(@VRMEX@(N,J))'="" W ","
 ..S A=$G(^(J)) W $$^%W1D2U(A) I $O(@VRMEX@(N,J))'="" W ","
 ;
 C FLCSV
 ;
 Q
 
 

W4MRKG
W4MRKG ; [ 01.01.24 12:42 ] [ 09.06.22 07:45 ] [ 23.04.21 15:06 ] 
 N (JB,%ARG,%REM)
 I $G(%ARG("MEDAT"))="" Q
 N $ZT S $ZT="S $ZGBLDIR=$$^W3MAIN ZG "_$ZL_":SVER^%L1X"
 S UCI=$$^W4GFUCI Q:UCI=""
 S $ZGBLDIR=UCI
 ;
 D ^W4GFILTR
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 I 'MEDT,'ADDT Q
 ;
 S SP="&nbsp;&nbsp;"
 S RKZ=$G(%ARG("RKZ"))
 ;
 D FRMRKZ(MEDT,ADDT,RKZ)
 ;
 D MMRKZ($G(%ARG("MRKZ")))
 S VRMEX=$$^W4MAIN("VRMEX")
 K @VRMEX
 ;
 S GLREP=$$GLREP
 W "<div align=""right"" dir="""_$$^%W1DIR_""">",!
  D PROT(MEDAT,ADDAT)
 W "</div>",!
 W "<br>",!
 ;
 S SH=0
 W "<div align=""right"" dir="""_$$^%W1DIR_""">",!
  D DIVEXC($$GLOB)
  S SH=SH+1,COL=0 D W("") S COL=1
  W "<span><b>" D W($$^%W1DICT("MEDAT")_" "_MEDAT_" "_$$^%W1DICT("ADDAT")_" "_ADDAT)
  I RKZ D W(" ( "_$$^%W1DICT("CONCENTRATEDPERDATE")_" )")
  W "</b></span>",!
  W "<br><br>",!
  W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""3"" >",!
   W "<tr>"
    S COL=0,SH=SH+1
    I 'RKZ D
    .W "<th>"
    . D W($$^%W1DICT("DATE"))
    .W "</th>"
    ;
    W "<th>"
     D W($$^%W1DICT("SNIF"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTINCLUDETIPS"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTWITHOUTTIPS"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTRESTMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTRESTEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTREST"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("GUESTSMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("GUESTSEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("GUESTSTOTAL"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVMSDMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVMSDEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVRGREST"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTDLVRY"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("DLVRYMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("DLVRYEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTDLVRYWITHOUTTIPS"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("QNDLVRYMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("QNDLVRYEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("QNDLVRY"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVMSLMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVMSLEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVRGDLVRY"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTTAWMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTTAWEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("TOTTAW"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVRGTAWMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVRGTAWEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("AVRGTAW"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("QNTAMORNING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("QNTAEVENING"))
    W "</th>"
    W "<th>"
     D W($$^%W1DICT("QNTA"))
    W "</th>"
   W "</tr>"
   ;
  S SH0=SH K TOT
  I 'RKZ D
  .F DT=MEDT:1:ADDT I $$IFDAY(DT) D LINE(DT)
  ;
  I RKZ D
  .D LINE("RKZ")
  ;
  I 'RKZ D PCLINE("TOTALL","TOT")
  ;
  W "</table>",!
 W "</div>",!
 ;
 D ^W4MRKEX($$GLOB)
 ;
 ;K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMEX")
 K @$$^W4MAIN("VRMPROT")
 ;
END S $ZGBLDIR=$$^W3MAIN
 Q
 ;
 ;
LINE(DT) ;
 I '$G(%ARG("SIK")) S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D PCLINE(DT,N)
 D PCLINE(DT,"TOT")
 Q
 ;
 ;
PCLINE(DT,N) ;
 N STR
 ;S STR="SUMALLT,SUMALL,SUMMSD,SUMMSD-1,SUMMSD-2,"
 ;S STR=STR_"SSOAD,SSOAD-1,SSOAD-2,AVMSD,AVMSD-1,AVMSD-2,"
 ;S STR=STR_"SUMMSLT,SUMMSL,SUMMSL-1,SUMMSL-2,KAMMSL,KAMMSL-1,KAMMSL-2,AVMSL,AVMSL-1,AVMSL-2,"
 ;S STR=STR_"SUMDLP,SUMDLP-1,SUMDLP-2,AVDLP,AVDLP-1,AVDLP-2,KAMDLP,KAMDLP-1,KAMDLP-2"
 ;
 S STR="SUMALLT,SUMALL,SUMMSD-1,SUMMSD-2,SUMMSD,"
 S STR=STR_"SSOAD-1,SSOAD-2,SSOAD,AVMSD-1,AVMSD-2,AVMSD,"
 S STR=STR_"SUMMSLT,SUMMSL-1,SUMMSL-2,SUMMSL,KAMMSL-1,KAMMSL-2,KAMMSL,AVMSL-1,AVMSL-2,AVMSL,"
 S STR=STR_"SUMDLP-1,SUMDLP-2,SUMDLP,AVDLP-1,AVDLP-2,AVDLP,KAMDLP-1,KAMDLP-2,KAMDLP"
 ;
 W "<tr "
 D
 .I DT="TOTALL" W " style=""background-color:yellow"" " Q
 .I N="TOT" W " style=""background-color:#E5FFEE"" "
 W ">"
  S COL=0,SH=SH+1
  I DT D WDAT(DT)
  ;
  I DT="TOTALL" D
  . W "<td>"
  .  W "&nbsp;"
  . W "</td>"
  ;
  W "<td>"
   D
   .I N'["TOT" D W(N_" "_$$H2U^%L1FRM(MMRKZ(N))) Q
   .I DT="TOTALL" D W($$^%W1DICT("TOTALL")) Q
   .D W($$^%W1DICT("TOTAL"))
  W "</td>"
 I DT'="TOTALL" D
 .F JJ=1:1:$L(STR,",") S PKIND=$P(STR,",",JJ) D
 .. S IND=0 I PKIND["-" S IND=$P(PKIND,"-",2),PKIND=$P(PKIND,"-")
 .. W "<td>"
 ..  N SUM S SUM=$$J($$SUM(PKIND,N,DT,IND),PKIND)
 ..  D W(SUM)
 ..  I N="TOT" D
 ..  .S TOT(PKIND,IND)=$G(TOT(PKIND,IND))+SUM
 .. W "</td>"
 .W "</tr>"
 ;
 I DT="TOTALL" D
 .N A
 .F JJ=1:1:$L(STR,",") S PKIND=$P(STR,",",JJ) D
 .. S IND=0 I PKIND["-" S IND=$P(PKIND,"-",2),PKIND=$P(PKIND,"-")
 .. W "<td>"
 ..  S A=$G(TOT(PKIND,IND))
 ..  I PKIND="AVMSD" D
 ...  N SSOAD S SSOAD=$G(TOT("SSOAD",IND)) Q:'SSOAD
 ...  S A=$J($G(TOT("SUMMSD",IND))/SSOAD,2,2)
 ..
 ..  I PKIND="AVMSL" D
 ...  N SSOAD S SSOAD=$G(TOT("KAMMSL",IND)) Q:'SSOAD
 ...  S A=$J($G(TOT("SUMMSL",IND))/SSOAD,2,2)
 ..
 ..  I PKIND="AVDLP" D
 ...  N SSOAD S SSOAD=$G(TOT("KAMDLP",IND)) Q:'SSOAD
 ...  S A=$J($G(TOT("SUMDLP",IND))/SSOAD,2,2)
 ..
 ..  I A="" S A="&nbsp;"
 ..  I A'="" S A=$$J(A,PKIND)
 ..  W A,!
 .. W "</td>"
 .W "</tr>"
 ;
 Q
 ;
SUM(PKIND,N,DT,J) ;
 S:'$G(J) J=3
 N A,VRM
 S VRM=$$^W4MAIN("VRM")
 I DT'="RKZ" S VRM=$E(VRM,1,$L(VRM)-1)_",DT)"
 S A=$G(@VRM@(N,PKIND,J))
 ;
 I N="TOT",PKIND="AVMSD" D
 .N SSOAD S SSOAD=$G(@VRM@(N,"SSOAD",J)) Q:'SSOAD
 .S A=$J($G(@VRM@(N,"SUMMSD",J))/SSOAD,2,2)
 I N="TOT",PKIND="AVMSL" D
 .N SSOAD S SSOAD=$G(@VRM@(N,"KAMMSL",J)) Q:'SSOAD
 .S A=$J($G(@VRM@(N,"SUMMSL",J))/SSOAD,2,2)
 I N="TOT",PKIND="AVDLP" D
 .N SSOAD S SSOAD=$G(@VRM@(N,"KAMDLP",J)) Q:'SSOAD
 .S A=$J($G(@VRM@(N,"SUMDLP",J))/SSOAD,2,2)
 I A="" S A="&nbsp;"
 I A=0!A,$E(PKIND,1,3)'="KAM",PKIND'["SSOAD" S A=$J(A,2,2)
 Q A
 ;
MMRKZ(ARGM) ;
 K MMRKZ N MSDR
 N MSDR S MSDR=$G(ARGM)
 I 'MSDR,$G(%ARG("MSDR")) S MSDR=%ARG("MSDR")
 I 'MSDR S MSDR=$$GETP^%W1PRM("MSDR")
 ;
 N GL S GL="^|$$^W3MAIN|W3MSDR"
 ;
 I MSDR,$D(@GL@(MSDR)) D  Q
 .N N,K S N="",K=0 F  S N=$O(@GL@(MSDR,N)) Q:N=""  I $G(^(N)) D
 ..I $D(NETSEND),$G(^(N,"NOSEND")) Q
 ..S MMRKZ(N)=$$NAME^W3MSD(N)
 ;
 S MMRKZ(+$$^%L1MRK)=$$^%L1HEAD
 Q
 ;
 ;
COLMRK(MSDR)
 N GL S GL="^|$$^W3MAIN|W3MSDR"
 N K S K=0
 I $G(MSDR),$D(@GL@(MSDR)) D
 .N N S N="" F  S N=$O(@GL@(MSDR,N)) Q:N=""  I $G(^(N)) S K=K+1
 Q K
 ;
FRMRKZ(MEDT,ADDT,RKZ) ;
 N DT,MRKZ
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 N DOCH S DOCH=$$GLREP
 I '$G(RKZ) S VRM=$$BG^W4MAIN("VRM")_"DT)"
 ;
 F DT=MEDT:1:ADDT D
 .I '$$IFDAY(DT) Q
 .S MRKZ="" F  S MRKZ=$O(@DOCH@(DT,MRKZ)) Q:MRKZ=""  I MRKZ?1N.N D
 ..S VD="" F  S VD=$O(@DOCH@(DT,MRKZ,VD)) Q:VD=""  I VD'="SUMALL" D
 ...D VRMADD(DT,MRKZ,VD)
 ..
 ..D SETVRM(MRKZ)
 .
 D MMRKZ($G(%ARG("MRKZ")))
 I $G(RKZ) S MRKZ="" F  S MRKZ=$O(MMRKZ(MRKZ)) Q:MRKZ=""  I MRKZ?1N.N D TOT(MRKZ)
 ;
 D SETVRM("TOT")
 Q
 ;
VRMADD(DT,MRKZ,VD) ;
 Q:'DT  I VD["SUMALL"!(VD="SUMMSLT")!($E(VD,1,2)="AV") Q
 S @VRM@(MRKZ,VD,1)=$G(@VRM@(MRKZ,VD,1))+$G(@DOCH@(DT,MRKZ,VD,1))
 S @VRM@(MRKZ,VD,2)=$G(@VRM@(MRKZ,VD,2))+$G(@DOCH@(DT,MRKZ,VD,2))
 S @VRM@(MRKZ,VD,3)=$G(@VRM@(MRKZ,VD,1))+$G(@VRM@(MRKZ,VD,2))
 ;
 S @VRM@("TOT",VD,1)=$G(@VRM@("TOT",VD,1))+$G(@DOCH@(DT,MRKZ,VD,1))
 S @VRM@("TOT",VD,2)=$G(@VRM@("TOT",VD,2))+$G(@DOCH@(DT,MRKZ,VD,2))
 S @VRM@("TOT",VD,3)=$G(@VRM@("TOT",VD,1))+$G(@VRM@("TOT",VD,2))
 Q
 ;
 ;
SETVRM(MRKZ) ;
 S SSOAD1=$G(@VRM@(MRKZ,"SSOAD",1))
 S SSOAD2=$G(@VRM@(MRKZ,"SSOAD",2))
 S SSOAD3=SSOAD1+SSOAD2
 ;
 I MRKZ'="TOT" D
 .S @VRM@(MRKZ,"SUMALL",1)=$J($G(@VRM@(MRKZ,"SUMMSD",1))+$G(@VRM@(MRKZ,"SUMMSL",1))+$G(@VRM@(MRKZ,"SUMDLP",1)),2,2)
 .S @VRM@(MRKZ,"SUMALL",2)=$J($G(@VRM@(MRKZ,"SUMMSD",2))+$G(@VRM@(MRKZ,"SUMMSL",2))+$G(@VRM@(MRKZ,"SUMDLP",2)),2,2)
 .S @VRM@(MRKZ,"SUMALL",3)=$J(@VRM@(MRKZ,"SUMALL",1)+@VRM@(MRKZ,"SUMALL",2),2,2)
 .
 .S @VRM@(MRKZ,"SUMALLT",1)=$G(@VRM@(MRKZ,"SUMALL",1))+$$TIP(MRKZ,1)+$$DMSH(MRKZ,1)
 .S @VRM@(MRKZ,"SUMALLT",2)=$G(@VRM@(MRKZ,"SUMALL",2))+$$TIP(MRKZ,2)+$$DMSH(MRKZ,2)
 .S @VRM@(MRKZ,"SUMALLT",3)=$G(@VRM@(MRKZ,"SUMALLT",1))+$G(@VRM@(MRKZ,"SUMALLT",2))
 .
 .S @VRM@(MRKZ,"SUMMSLT",1)=$G(@VRM@(MRKZ,"SUMMSL",1))+$$DMSH(MRKZ,1)+$$TIPMSL(MRKZ,1)
 .S @VRM@(MRKZ,"SUMMSLT",2)=$G(@VRM@(MRKZ,"SUMMSL",2))+$$DMSH(MRKZ,2)+$$TIPMSL(MRKZ,2)
 .S @VRM@(MRKZ,"SUMMSLT",3)=$G(@VRM@(MRKZ,"SUMMSLT",1))+$G(@VRM@(MRKZ,"SUMMSLT",2))
 .;
 .I '$G(RKZ) D TOT(MRKZ)
 ;
 S @VRM@(MRKZ,"AVMSD",1)="&nbsp;"
 S @VRM@(MRKZ,"AVMSD",2)="&nbsp;"
 S @VRM@(MRKZ,"AVMSD",3)="&nbsp;"
 I SSOAD1 D
 .S @VRM@(MRKZ,"AVMSD",1)=$J($G(@VRM@(MRKZ,"SUMMSD",1))/SSOAD1,2,2)
 I SSOAD2 D
 .S @VRM@(MRKZ,"AVMSD",2)=$J($G(@VRM@(MRKZ,"SUMMSD",2))/SSOAD2,2,2)
 I SSOAD3 D
 .S @VRM@(MRKZ,"AVMSD",3)=$J($G(@VRM@(MRKZ,"SUMMSD",3))/SSOAD3,2,2)
 ;
 S MSL1=$G(@VRM@(MRKZ,"KAMMSL",1))
 S MSL2=$G(@VRM@(MRKZ,"KAMMSL",2))
 S MSL3=MSL1+MSL2
 ;
 S @VRM@(MRKZ,"AVMSL",1)="&nbsp;"
 S @VRM@(MRKZ,"AVMSL",2)="&nbsp;"
 S @VRM@(MRKZ,"AVMSL",3)="&nbsp;"
 ;
 I MSL1 D
 .S @VRM@(MRKZ,"AVMSL",1)=$J($G(@VRM@(MRKZ,"SUMMSL",1))/MSL1,2,2)
 I MSL2 D
 .S @VRM@(MRKZ,"AVMSL",2)=$J($G(@VRM@(MRKZ,"SUMMSL",2))/MSL2,2,2)
 I MSL3 D
 .S @VRM@(MRKZ,"AVMSL",3)=$J($G(@VRM@(MRKZ,"SUMMSL",3))/MSL3,2,2)
 ;
 S DLP1=$G(@VRM@(MRKZ,"KAMDLP",1))
 S DLP2=$G(@VRM@(MRKZ,"KAMDLP",2))
 S DLP3=DLP1+DLP2
 ;
 S @VRM@(MRKZ,"AVDLP",1)="&nbsp;"
 S @VRM@(MRKZ,"AVDLP",2)="&nbsp;"
 S @VRM@(MRKZ,"AVDLP",3)="&nbsp;"
 ;
 I DLP1 D
 .S @VRM@(MRKZ,"AVDLP",1)=$J($G(@VRM@(MRKZ,"SUMDLP",1))/DLP1,2,2)
 I DLP2 D
 .S @VRM@(MRKZ,"AVDLP",2)=$J($G(@VRM@(MRKZ,"SUMDLP",2))/DLP2,2,2)
 I DLP3 D
 .S @VRM@(MRKZ,"AVDLP",3)=$J($G(@VRM@(MRKZ,"SUMDLP",3))/DLP3,2,2)
 Q
 ;
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 Q
 ;
W(TXT,DR) ;
 I TXT="" S TXT="&nbsp;"
 I TXT,$G(DR) S TXT=$J(TXT,DR,DR)
 I '$$NUM(TXT,$G(DR)) W TXT,!
 S COL=$G(COL)+1
 N TXT1 S TXT1=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 I '$$NUM(TXT,$G(DR)) S TXT1=$$U2H^%L1FRM(TXT1)
 S @VRMEX@(SH,COL)=TXT1
 I $$NUM(TXT,$G(DR)) D
 .I +TXT=0 W "<span style=""color:grey"">"_TXT_"</span>",! Q
 .I TXT<0 W "<span style=""color:red"">"_TXT_"</span>",! Q
 .W TXT
 Q
 ;
NUM(TXT,DR) ;
 I TXT?."-"1N.N.".".N Q 1
 I $G(DR) Q 1
 Q 0
 ;
SHCOL(IND) ;
 S SH=SH0+J-1
 S COL='RKZ+IND+1
 Q
 ;
DIVEXC(COD) ;
 W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 S FL=COD_$$^W4MYDVN
 S FLCSV=DIR_FL_".csv"
  ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
GLOB(STAM) ;
 I $$^W4NETM Q "MRK2WEB"
 Q "DOHMRK"
 ;
GLREP(STAM) ;
 Q "^"_$$GLOB
 ;
PROT(MEDAT,ADDAT) ;
 N N,DT,MEDT,ADDT
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 S VRMPROT=$$^W4MAIN("VRMPROT")
 K @VRMPROT
 D MMRKZ($G(%ARG("MRKZ")))
 ;
 F DT=MEDT:1:ADDT I $$IFDAY(DT) D
 .S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 ..I '$D(@$$GLREP@(DT,N)) D
 ...S @VRMPROT@(DT,N)=""
 ;
 I $D(@VRMPROT) D
 .W "<div dir="""_$$^%W1DIR_""">",!
 .  W "<span><b>"
 .   W $$^%W1DICT("NODATAPROTOCOL")_" "_$$^%W1DICT("MEDAT")_" "_MEDAT_" "_$$^%W1DICT("ADDAT")_" "_ADDAT
 .  W "</span>"
 .  W "<br><br>",!
 .  W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""3"" >",!
 .   W "<th>"_$$^%W1DICT("DATE")_"</th>",!
 .   S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .   .W "<th>"_N_" "_$$H2U^%L1FRM(MMRKZ(N))_"</th>",!
 .   S DT="" F  S DT=$O(@VRMPROT@(DT)) Q:DT=""  D
 .   .W "<tr>"
 .   . W "<td> "_$$^%L1DC(DT,1)_" </td>",!
 .   . S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .   .  .W "<td align=""center"">"
 .   .  . D
 .   .   ..I $D(@VRMPROT@(DT,N)) W "<span style=""font-size:22;color:red"">-</span>",! Q
 .   .   ..W "<span style=""font-size:16;color:green;font-weight:bold"">+</span>",! Q
 .   .  .W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 .W "</div>",!
 Q
 ;
TIP(MRKZ,IND) ;
 Q $$TIPMSD(MRKZ,IND)+$$TIPMSL(MRKZ,IND)+$$TIPDLP(MRKZ,IND)
 ;
TIPMSD(MRKZ,IND) ;
 Q $G(@VRM@(MRKZ,"TIPMSD",IND))
 ;
TIPMSL(MRKZ,IND) ;
 Q $G(@VRM@(MRKZ,"TIPMSL",IND))
 ;
TIPDLP(MRKZ,IND) ;
 Q $G(@VRM@(MRKZ,"TIPDLP",IND))
 ;
DMSH(MRKZ,IND) ;
 Q $G(@VRM@(MRKZ,"DMSH",IND))
 ;
 ;
TOT(MRKZ) ;
 ;W "MRKZ="_MRKZ_" SUMALL1="_$G(@VRM@(MRKZ,"SUMALL",1)),!
 S @VRM@("TOT","SUMALL",1)=$G(@VRM@("TOT","SUMALL",1))+$G(@VRM@(MRKZ,"SUMALL",1))
 ;W "TOT1="_@VRM@("TOT","SUMALL",1),!
 ;W "MRKZ="_MRKZ_" SUMALL2="_$G(@VRM@(MRKZ,"SUMALL",2)),!
 S @VRM@("TOT","SUMALL",2)=$G(@VRM@("TOT","SUMALL",2))+$G(@VRM@(MRKZ,"SUMALL",2))
 ;W "TOT2="_@VRM@("TOT","SUMALL",2),!
 S @VRM@("TOT","SUMALL",3)=$G(@VRM@("TOT","SUMALL",1))+$G(@VRM@("TOT","SUMALL",2))
 ;
 S @VRM@("TOT","SUMALLT",1)=$G(@VRM@("TOT","SUMALLT",1))+$G(@VRM@(MRKZ,"SUMALLT",1))
 S @VRM@("TOT","SUMALLT",2)=$G(@VRM@("TOT","SUMALLT",2))+$G(@VRM@(MRKZ,"SUMALLT",2))
 S @VRM@("TOT","SUMALLT",3)=$G(@VRM@("TOT","SUMALLT",1))+$G(@VRM@("TOT","SUMALLT",2))
 ;
 S @VRM@("TOT","SUMMSLT",1)=$G(@VRM@("TOT","SUMMSLT",1))+$G(@VRM@(MRKZ,"SUMMSLT",1))
 S @VRM@("TOT","SUMMSLT",2)=$G(@VRM@("TOT","SUMMSLT",2))+$G(@VRM@(MRKZ,"SUMMSLT",2))
 S @VRM@("TOT","SUMMSLT",3)=$G(@VRM@("TOT","SUMMSLT",1))+$G(@VRM@("TOT","SUMMSLT",2))
 Q
 ;
IFDAY(DT)
 N DD
 S DD=$$^%L1DC(DT,8)
 I $G(%ARG("DAYS")),%ARG("DAYS")'[DD Q 0
 Q 1
 ;
J(RKV,PKIND) ;
 Q $J(RKV,$S(PKIND["SSOAD"!(PKIND["KAM"):"",1:2))
 ;
WDAT(DT) ;
 W "<td>"
  D W($$^%L1DC(DT,1)_" "_$$H2U^%L1FRM($$^%L1DC(DT,9)))
 W "</td>"
 Q
 ;
TDLTR ;
 W "<td dir=""LTR"" align=""right"">"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MRKM
W4MRKM ; [ 05.02.19 04:13 ] [ 31.05.17 04:50 ] [ 23.03.14 14:09 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S $ZGBLDIR=$$^W3MAIN ZG "_$ZL_":SVER^%L1X"
 ;
 I $$^W4NETM D
 .S UCI=$$^W4GFUCI Q:UCI=""
 .S $ZGBLDIR=UCI
 ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3) Q:'MEDT
 S ADDT=$$^%L1DC(ADDAT,3)
 I 'MEDT,'ADDT Q
 ;
 I '$$^W4NETM D ^W4MRKDOH(MEDT,ADDT)
 ;
 S %ARG("NOSIK")=1
 S %ARG("NOMRK")=1
 ;;D ^W4GFILTR
 ;
 S SP="&nbsp;&nbsp;"
 S RKZ=$G(%ARG("RKZ"))
 ;
 D FRMRKZ(MEDT,ADDT,RKZ)
 ;
 D MMRKZ("")
 S VRMEX=$$^W4MAIN("VRMEX")
 K @VRMEX
 ;
 S GLREP=$$GLREP
 D PROT(MEDAT,ADDAT)
 ;;W "<br>",!
 ;
 S SH=0
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  D DIVEXC($$GLOB)
  S SH=SH+1,COL=0 D W("") S COL=1
  W "<span><b>" D W($$^%W1DICT("MEDAT")_" "_MEDAT_" "_$$^%W1DICT("ADDAT")_" "_ADDAT)
  I RKZ D W(" ( "_$$^%W1DICT("CONCENTRATEDPERDATE")_" )")
  W "</b></span>",!
  W "<br><br>" 
  D ^W4GFILTR
  W "<br>",!
  W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""3"" >",!
   W "<tr>"
    S COL=0,SH=SH+1
    I 'RKZ D
    .W "<th>"
    . D W($$^%W1DICT("DATE"))
    .W "</th>"
    W "<th>"
     D W("")
    W "</th>"
     D W("")
    W "<th>"
    W "</th>"
    S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
    .S MRKZ1=MMRKZ(N)
    .W "<th>"
    . D W($S(N:N_" ",1:"")_$$H2U^%L1FRM(MRKZ1))
    .W "</th>",!
    W "<th>"
     D W($$^%W1DICT("TOTAL"))
    W "</th>",!
   W "</tr>"
   ;
  S SH0=SH
  I 'RKZ F DT=MEDT:1:ADDT D
  .I '$$IFDAY(DT) Q
  .D LINE(DT)
 ;
  I RKZ D
  .D LINE("RKZ")
  W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMEX")
 K @$$^W4MAIN("VRMPROT")
 ;
END I $$^W4NETM S $ZGBLDIR=$$^W3MAIN
 Q
 ;
 ;
LINE(DT) ;
 F PKIND="SUMMSD","SUMDLP","SUMMSL","SUMALL" D
 .S SH0=SH0+4,COL=0
 .S SH=SH0
 .W "<tr>"
 . I 'RKZ D WDAT(DT)
 .
 . W "<td>"
 .  D W($$PROFITKIND(PKIND))
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .D SHCOL(0)
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  D W($$DAYTIME(J))
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 . S K=0
 . S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . W "<td>"
 .  .  S K=K+1
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .D SHCOL(K)
 .  .    .W "<tr>",!
 .  .    . D TDLTR
 .  .    .  D W($J($$SUM(PKIND,N,DT,J),2,2))
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>",!
 .  .
 .  W "<td>"
 .   S K=K+1
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .D SHCOL(K)
 .     .W "<tr>",!
 .     . D TDLTR
 .     .  D W($J($$SUM(PKIND,"TOT",DT,J),2,2))
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>",!
 ;
 ;
 F QKIND="SSOAD","KAMDLP","KAMMSL" D
 .S SH0=SH0+4,COL=0
 .S SH=SH0
 .W "<tr>"
 . I 'RKZ D WDAT(DT)
 .
 . W "<td>"
 .  D W($$^%W1DICT(QKIND))
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .D SHCOL(0)
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  D W($$DAYTIME(J))
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 . S K=0
 . S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . S K=K+1
 .  . W "<td>"
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .D SHCOL(K)
 .  .    .W "<tr>",!
 .  .    . W "<td>"
 .  .    .  D W($J($$SUM(QKIND,N,DT,J),0,0))
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>",!
 .  S K=K+1
 .  W "<td>"
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .D SHCOL(K)
 .     .W "<tr>",!
 .     . W "<td>"
 .     .  D W($J($$SUM(QKIND,"TOT",DT,J),0,0))
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>",!
 .W "</tr>",!
 ;
 F AKIND="AVMSD","AVDLP","AVMSL" D
 .S SH0=SH0+4,COL=0
 .S SH=SH0
 .W "<tr>"
 . I 'RKZ D WDAT(DT)
 .
 . W "<td>"
 .  D W($$^%W1DICT(AKIND))
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .D SHCOL(0)
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  D W($$DAYTIME(J))
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 .  S K=0
 .  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . S K=K+1
 .  . W "<td>"
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .D SHCOL(K)
 .  .    .W "<tr>",!
 .  .    . S SUM=$$SUM(AKIND,N,DT,J) S:SUM="" SUM="&nbsp;"
 .  .    . D TD(SUM)
 .  .    .  D W(SUM)
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>"
 .
 .  S K=K+1
 .  W "<td>"
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .D SHCOL(K)
 .     .W "<tr>",!
 .     .  S SUM=$$SUM(AKIND,"TOT",DT,J)
 .     . D TD(SUM)
 .     .  D W(SUM)
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>"
 . W "</tr>",!
 ;
 D ^W4MRKEX($$GLOB)
 ;
 Q
 ;
 ;
PROFITKIND(KIND) ;
 Q $$^%W1DICT(KIND_"PROFIT")
 ;
DAYTIME(J) ;
 I J=1 Q $$^%W1DICT("MORNING")
 I J=2 Q $$^%W1DICT("EVENING")
 I J=3 Q $$^%W1DICT("TOTAL")
 Q "&nbsp;"
 ;
SUM(PKIND,N,DT,J) ;
 N A
 S A=$G(@$$^W4MAIN("VRM")@(DT,N,PKIND,J))
 ;;I A W A,! H 1
 I DT="RKZ" S A=$G(@$$^W4MAIN("VRM")@(N,PKIND,J))
 Q A
 ;
MMRKZ(MRKZ)
 D MMRKZ^W4MRKG($G(MRKZ))
 Q
 ;
FRMRKZ(MEDT,ADDT,RKZ) ;
 D FRMRKZ^W4MRKG(MEDT,ADDT,RKZ)
 Q
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 Q
 ;
W(TXT) ;
 D W^W4MRKG(TXT)
 Q
 ;
SHCOL(IND) ;
 S SH=SH0+J-1
 S COL='RKZ+IND+1
 Q
 ;
DIVEXC(COD) ;
 D DIVEXC^W4MRKG(COD)
 Q
 ;
GLOB(STAM) ;
 I $$^W4NETM Q "MRK2WEB"
 Q "DOCH"
 ;
GLREP(STAM) ;
 Q "^"_$$GLOB
 ;
PROT(MEDAT,ADDAT) ;
 D PROT^W4MRKG(MEDAT,ADDAT)
 Q
 ;
IFDAY(DT) ;
 Q $$IFDAY^W4MRKG(DT)
 ;
WDAT(DT) ;
 D WDAT^W4MRKG(DT)
 Q
 ;
TD(SUM) ;
 I $$NUM(SUM) D TDLTR Q
 W "<td>"
 Q
 ;
TDLTR ;
 W "<td dir=""LTR"" align=""right"">"
 Q
 ;
NUM(SUM) ;
 Q $$NUM^W4MRKG(SUM)
 
 
 
 
 

W4MRKM0
W4MRKM ; [ 30.06.13 16:26 ] [ 26.06.13 14:51 ] [ 09.06.13 12:26 ]
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S $ZGBLDIR=$$^W3MAIN ZG "_$ZL_":SVER^%L1X"
 S UCI=$$^W4GFUCI Q:UCI=""
 S $ZGBLDIR=UCI
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3) Q:'MEDT
 S ADDT=$$^%L1DC(ADDAT,3)
 I 'MEDT,'ADDT Q
 ;
 S %ARG("NOSIK")=1
 S %ARG("NOMRK")=1
 D ^W4GFILTR
 ;
 S SP="&nbsp;&nbsp;"
 S RKZ=$G(%ARG("RKZ"))
 ;
 D FRMRKZ(MEDT,ADDT,RKZ)
 ;
 D MMRKZ("")
 S VRMEX=$$^W4MAIN("VRMEX")
 K @VRMEX
 ;
 S GLREP=$$GLREP
 D PROT(MEDAT,ADDAT)
 W "<br>",!
 ;
 S SH=0
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  D DIVEXC("MRK2WEB")
  S SH=SH+1,COL=0 D W("") S COL=1
  W "<span><b>" D W($$^%W1DICT("MEDAT")_" "_MEDAT_" "_$$^%W1DICT("ADDAT")_" "_ADDAT)
  I RKZ D W(" ( "_$$^%W1DICT("CONCENTRATEDPERDATE")_" )")
  W "</b></span>",!
  W "<br><br>",!
  W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""3"" >",!
   W "<tr>"
    S COL=0,SH=SH+1
    I 'RKZ D
    .W "<th>"
    . D W($$^%W1DICT("DATE"))
    .W "</th>"
    W "<th>"
     D W("")
    W "</th>"
     D W("")
    W "<th>"
    W "</th>"
    S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
    .S MRKZ1=MMRKZ(N)
    .W "<th>"
    . D W(N_" "_$$H2U^%L1FRM(MRKZ1))
    .W "</th>",!
    W "<th>"
     D W($$^%W1DICT("TOTAL"))
    W "</th>",!
   W "</tr>"
   ;
  S SH0=SH
  I 'RKZ F DT=MEDT:1:ADDT D
  .I '$$IFDAY(DT) Q
  .D LINE(DT)
 ;
  I RKZ D
  .D LINE("RKZ")
  W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMEX")
 K @$$^W4MAIN("VRMPROT")
 ;
END S $ZGBLDIR=$$^W3MAIN
 Q
 ;
 ;
LINE(DT) ;
 F PKIND="SUMMSD","SUMDLP","SUMMSL","SUMALL" D
 .S SH0=SH0+4,COL=0
 .S SH=SH0
 .W "<tr>"
 . I 'RKZ D WDAT(DT)
 .
 . W "<td>"
 .  D W($$PROFITKIND(PKIND))
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .D SHCOL(0)
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  D W($$DAYTIME(J))
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 . S K=0
 . S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . W "<td>"
 .  .  S K=K+1
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .D SHCOL(K)
 .  .    .W "<tr>",!
 .  .    . W "<td>"
 .  .    .  D W($J($$SUM(PKIND,N,DT,J),2,2))
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>",!
 .  .
 .  W "<td>"
 .   S K=K+1
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .D SHCOL(K)
 .     .W "<tr>",!
 .     . W "<td>"
 .     .  D W($J($$SUM(PKIND,"TOT",DT,J),2,2))
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>",!
 ;
 ;
 F QKIND="SSOAD","KAMDLP","KAMMSL" D
 .S SH0=SH0+4,COL=0
 .S SH=SH0
 .W "<tr>"
 . I 'RKZ D WDAT(DT)
 .
 . W "<td>"
 .  D W($$^%W1DICT(QKIND))
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .D SHCOL(0)
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  D W($$DAYTIME(J))
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 . S K=0
 . S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . S K=K+1
 .  . W "<td>"
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .D SHCOL(K)
 .  .    .W "<tr>",!
 .  .    . W "<td>"
 .  .    .  D W($J($$SUM(QKIND,N,DT,J),0,0))
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>",!
 .  S K=K+1
 .  W "<td>"
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .D SHCOL(K)
 .     .W "<tr>",!
 .     . W "<td>"
 .     .  D W($J($$SUM(QKIND,"TOT",DT,J),0,0))
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>",!
 .W "</tr>",!
 ;
 F AKIND="AVMSD","AVDLP","AVMSL" D
 .S SH0=SH0+4,COL=0
 .S SH=SH0
 .W "<tr>"
 . I 'RKZ D WDAT(DT)
 .
 . W "<td>"
 .  D W($$^%W1DICT(AKIND))
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .D SHCOL(0)
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  D W($$DAYTIME(J))
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 .  S K=0
 .  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . S K=K+1
 .  . W "<td>"
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .D SHCOL(K)
 .  .    .W "<tr>",!
 .  .    . W "<td>"
 .  .    .  S SUM=$$SUM(AKIND,N,DT,J) S:SUM="" SUM="&nbsp;"
 .  .    .  D W(SUM)
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>"
 .
 .  S K=K+1
 .  W "<td>"
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .D SHCOL(K)
 .     .W "<tr>",!
 .     . W "<td>"
 .     .  S SUM=$$SUM(AKIND,"TOT",DT,J)
 .     .  D W(SUM)
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>"
 . W "</tr>",!
 ;
 D ^W4MRKEX("MRK2WEB")
 ;
 Q
 ;
 ;
PROFITKIND(KIND) ;
 Q $$^%W1DICT(KIND_"PROFIT")
 ;
DAYTIME(J) ;
 I J=1 Q $$^%W1DICT("MORNING")
 I J=2 Q $$^%W1DICT("EVENING")
 I J=3 Q $$^%W1DICT("DAY")
 Q "&nbsp;"
 ;
SUM(PKIND,N,DT,J) ;
 N A
 S A=$G(@$$^W4MAIN("VRM")@(DT,N,PKIND,J))
 I DT="RKZ" S A=$G(@$$^W4MAIN("VRM")@(N,PKIND,J))
 Q A
 ;
MMRKZ(MRKZ)
 D MMRKZ^W4MRKG($G(MRKZ))
 Q
 ;
FRMRKZ(MEDT,ADDT,RKZ) ;
 D FRMRKZ^W4MRKG(MEDT,ADDT,RKZ)
 Q
 N DT,MRKZ
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 N DOCH S DOCH=$$GLREP
 ;;M @VRM=@DOCH
 I '$G(RKZ) S VRM=$$BG^W4MAIN("VRM")_"DT)"
 ;
 F DT=MEDT:1:ADDT D
 .I '$$IFDAY(DT) Q
 .S MRKZ="" F  S MRKZ=$O(@DOCH@(DT,MRKZ)) Q:MRKZ=""  I MRKZ D
 ..S VD="" F  S VD=$O(@DOCH@(DT,MRKZ,VD)) Q:VD=""  I VD'="SUMALL" D
 ...S @VRM@(MRKZ,VD,1)=$G(@VRM@(MRKZ,VD,1))+$G(@DOCH@(DT,MRKZ,VD,1))
 ...S @VRM@(MRKZ,VD,2)=$G(@VRM@(MRKZ,VD,2))+$G(@DOCH@(DT,MRKZ,VD,2))
 ...S @VRM@(MRKZ,VD,3)=$G(@VRM@(MRKZ,VD,1))+$G(@VRM@(MRKZ,VD,2))
 ...S @VRM@("TOT",VD,1)=$G(@VRM@("TOT",VD,1))+$G(@DOCH@(DT,MRKZ,VD,1))
 ...S @VRM@("TOT",VD,2)=$G(@VRM@("TOT",VD,2))+$G(@DOCH@(DT,MRKZ,VD,2))
 ...S @VRM@("TOT",VD,3)=$G(@VRM@("TOT",VD,1))+$G(@VRM@("TOT",VD,2))
 ..
 ..D SETVRM(MRKZ)
 .
 D SETVRM("TOT")
 Q
 ;
SETVRM(MRKZ) ;
 S SSOAD1=$G(@VRM@(MRKZ,"SSOAD",1))
 S SSOAD2=$G(@VRM@(MRKZ,"SSOAD",2))
 S SSOAD3=SSOAD1+SSOAD2
 ;
 I MRKZ'="TOT" D
 .S @VRM@(MRKZ,"SUMALL",1)=$J($G(@VRM@(MRKZ,"SUMMSD",1))+$G(@VRM@(MRKZ,"SUMMSL",1))+$G(@VRM@(MRKZ,"SUMDLP",1)),2,2)
 .S @VRM@(MRKZ,"SUMALL",2)=$J($G(@VRM@(MRKZ,"SUMMSD",2))+$G(@VRM@(MRKZ,"SUMMSL",2))+$G(@VRM@(MRKZ,"SUMDLP",2)),2,2)
 .S @VRM@(MRKZ,"SUMALL",3)=$J(@VRM@(MRKZ,"SUMALL",1)+@VRM@(MRKZ,"SUMALL",2),2,2)
 .;
 .S @VRM@("TOT","SUMALL",1)=$G(@VRM@("TOT","SUMALL",1))+$G(@VRM@(MRKZ,"SUMALL",1))
 .S @VRM@("TOT","SUMALL",2)=$G(@VRM@("TOT","SUMALL",2))+$G(@VRM@(MRKZ,"SUMALL",2))
 .S @VRM@("TOT","SUMALL",3)=$G(@VRM@("TOT","SUMALL",1))+$G(@VRM@("TOT","SUMALL",2))
 ;
 S @VRM@(MRKZ,"AVMSD",1)="&nbsp;"
 S @VRM@(MRKZ,"AVMSD",2)="&nbsp;"
 S @VRM@(MRKZ,"AVMSD",3)="&nbsp;"
 I SSOAD1 D
 .S @VRM@(MRKZ,"AVMSD",1)=$J($G(@VRM@(MRKZ,"SUMMSD",1))/SSOAD1,2,2)
 I SSOAD2 D
 .S @VRM@(MRKZ,"AVMSD",2)=$J($G(@VRM@(MRKZ,"SUMMSD",2))/SSOAD2,2,2)
 I SSOAD3 D
 .S @VRM@(MRKZ,"AVMSD",3)=$J($G(@VRM@(MRKZ,"SUMMSD",3))/SSOAD3,2,2)
 ;
 S MSL1=$G(@VRM@(MRKZ,"KAMMSL",1))
 S MSL2=$G(@VRM@(MRKZ,"KAMMSL",2))
 S MSL3=MSL1+MSL2
 S @VRM@(MRKZ,"AVMSL",1)="&nbsp;"
 S @VRM@(MRKZ,"AVMSL",2)="&nbsp;"
 S @VRM@(MRKZ,"AVMSL",3)="&nbsp;"
 I MSL1 D
 .S @VRM@(MRKZ,"AVMSL",1)=$J($G(@VRM@(MRKZ,"SUMMSL",1))/MSL1,2,2)
 I MSL2 D
 .S @VRM@(MRKZ,"AVMSL",2)=$J($G(@VRM@(MRKZ,"SUMMSL",2))/MSL2,2,2)
 I MSL3 D
 .S @VRM@(MRKZ,"AVMSL",3)=$J($G(@VRM@(MRKZ,"SUMMSL",3))/MSL3,2,2)
 ;
 S DLP1=$G(@VRM@(MRKZ,"KAMDLP",1))
 S DLP2=$G(@VRM@(MRKZ,"KAMDLP",2))
 S DLP3=DLP1+DLP2
 S @VRM@(MRKZ,"AVDLP",1)="&nbsp;"
 S @VRM@(MRKZ,"AVDLP",2)="&nbsp;"
 S @VRM@(MRKZ,"AVDLP",3)="&nbsp;"
 I DLP1 D
 .S @VRM@(MRKZ,"AVDLP",1)=$J($G(@VRM@(MRKZ,"SUMDLP",1))/DLP1,2,2)
 I DLP2 D
 .S @VRM@(MRKZ,"AVDLP",2)=$J($G(@VRM@(MRKZ,"SUMDLP",2))/DLP2,2,2)
 I DLP3 D
 .S @VRM@(MRKZ,"AVDLP",3)=$J($G(@VRM@(MRKZ,"SUMDLP",3))/DLP3,2,2)
 Q
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 Q
 ;
W(TXT) ;
 D W^W4MRKG(TXT)
 Q
 ;
 W TXT,!
 S COL=$G(COL)+1
 N TXT1 S TXT1=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 S TXT1=$$U2H^%L1FRM(TXT1)
 S @VRMEX@(SH,COL)=TXT1
 Q
 ;
SHCOL(IND) ;
 S SH=SH0+J-1
 S COL='RKZ+IND+1
 Q
 ;
DIVEXC(COD) ;
 D DIVEXC^W4MRKG(COD)
 Q
 ;
 W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 S FL=COD_$$^W4MYDVN
 S FLCSV=DIR_FL_".csv"
  ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
GLREP(STAM) ;
 Q "^MRK2WEB"
 ;
PROT(MEDAT,ADDAT) ;
 D PROT^W4MRKG(MEDAT,ADDAT)
 Q
 ;
 N N,DT,MEDT,ADDT
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 S VRMPROT=$$^W4MAIN("VRMPROT")
 K @VRMPROT
 F DT=MEDT:1:ADDT D
 .I '$$IFDAY(DT) Q
 .S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 ..I '$D(@GLREP@(DT,N)) D
 ...S @VRMPROT@(DT,N)=""
 ;
 I $D(@VRMPROT) D
 .W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 .  W "<span><b>"
 .   W $$^%W1DICT("NODATAPROTOCOL")_" "_$$^%W1DICT("MEDAT")_" "_MEDAT_" "_$$^%W1DICT("ADDAT")_" "_ADDAT
 .  W "</span>"
 .  W "<br><br>",!
 .  W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""3"" align=""center"">",!
 .   W "<th>"_$$^%W1DICT("DATE")_"</th>",!
 .   S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .   .W "<th>"_N_" "_$$H2U^%L1FRM(MMRKZ(N))_"</th>",!
 .   S DT="" F  S DT=$O(@VRMPROT@(DT)) Q:DT=""  D
 .   .W "<tr>"
 .   . D WDAT(DT)
 .   . S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .   .  .W "<td align=""center"">"
 .   .  . D
 .   .   ..I $D(@VRMPROT@(DT,N)) W "<span style=""font-size:22;color:red"">-</span>",! Q
 .   .   ..W "<span style=""font-size:16;color:green;font-weight:bold"">+</span>",! Q
 .   .  .W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 .W "</div>",!
 Q
 ;
IFDAY(DT) ;
 Q $$IFDAY^W4MRKG(DT)
 ;
WDAT(DT) ;
 D WDAT^W4MRKG(DT)
 Q

W4MRKM1
W4MRKM ; [ 29.05.13 14:58 ] [ 26.05.13 17:07 ] [ 23.04.11 09:42 ]
 N (JB,%ARG,%REM)
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 I 'MEDT,'ADDT Q
 ;
 S SP="&nbsp;&nbsp;"
 S RKZ=$G(%ARG("RKZ"))
 D FRMRKZ(MEDT,ADDT,RKZ)
 ;
 D MMRKZ
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span><b>"_$$^%W1DICT("MEDAT")_" "_MEDAT_" "_$$^%W1DICT("ADDAT")_" "_ADDAT
  I RKZ W " ( "_$$^%W1DICT("CONCENTRATEDPERDATE")_" )"
  W "</b></span>",!
  W "<br><br>",!
  W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""0"" >",!
   W "<tr>"
    I 'RKZ D
    .W "<th>"
    . W $$^%W1DICT("DATE")
    .W "</th>"
    W "<th>"
    W "</th>"
    W "<th>"
    W "</th>"
    S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
    .S MRKZ1=MMRKZ(N)
    .W "<th>"
    . W SP_N_" "_$$H2U^%L1FRM(MRKZ1)_SP,!
    .W "</th>",!
    W "<th>"
     W SP_$$^%W1DICT("TOTAL")_SP
    W "</th>",!
   W "</tr>"
   ;
  I 'RKZ F DT=MEDT:1:ADDT D
  .D LINE(DT)
 ;
  I RKZ D
  .D LINE("RKZ")
  W "</table>",!
 W "</div>",!
 Q
 ;
LINE(DT) ;
 F PKIND="SUMMSD","SUMDLP","SUMMSL","SUMALL" D
 .W "<tr>"
 . I 'RKZ D
 .. W "<td>"
 ..  W $$^%L1DC(DT,1)
 .. W "</td>"
 .
 . W "<td>"
 .  W $$PROFITKIND(PKIND)
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  W $$DAYTIME(J)
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 .  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . W "<td>"
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .W "<tr>",!
 .  .    . W "<td>"
 .  .    .  W $J($$SUM(PKIND,N,DT,J),2,2)
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>",!
 .  .
 .  W "<td>"
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .W "<tr>",!
 .     . W "<td>"
 .     .  W $J($$SUM(PKIND,"TOT",DT,J),2,2)
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>",!
 ;
 F QKIND="SSOAD","KAMDLP","KAMMSL" D
 .W "<tr>"
 . I 'RKZ D
 .. W "<td>"
 ..  W $$^%L1DC(DT,1)
 .. W "</td>"
 .
 . W "<td>"
 .  W $$^%W1DICT(QKIND)
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  W $$DAYTIME(J)
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 .
 . S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . W "<td>"
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .W "<tr>",!
 .  .    . W "<td>"
 .  .    .  W $J($$SUM(QKIND,N,DT,J),0,0)
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>",!
 .
 .  W "<td>"
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .W "<tr>",!
 .     . W "<td>"
 .     .  W $J($$SUM(QKIND,"TOT",DT,J),0,0)
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>",!
 .W "</tr>",!
 ;
 F AKIND="AVMSD","AVDLP","AVMSL" D
 .W "<tr>"
 . I 'RKZ D
 .. W "<td>"
 ..  W $$^%L1DC(DT,1)
 .. W "</td>"
 .
 . W "<td>"
 .  W $$^%W1DICT(AKIND)
 . W "</td>"
 .
 . W "<td>"
 .  W "<table dir="""_$$^%W1DIR_""">",!
 .   F J=1:1:3 D
 .   .W "<tr>",!
 .   . W "<td>"
 .   .  W $$DAYTIME(J)
 .   . W "</td>"
 .   .W "</tr>",!
 .  W "</table>",!
 . W "</td>"
 .
 .  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .  . W "<td>"
 .  .  W "<table dir="""_$$^%W1DIR_""">",!
 .  .   F J=1:1:3 D
 .  .    .W "<tr>",!
 .  .    . W "<td>"
 .  .    .  S SUM=$$SUM(AKIND,N,DT,J) S:SUM="" SUM="&nbsp;"
 .  .    .  W SUM
 .  .    . W "</td>"
 .  .    .W "</tr>",!
 .  .  W "</table>",!
 .  . W "</td>"
 .  .
 .  W "<td>"
 .   W "<table dir="""_$$^%W1DIR_""">",!
 .    F J=1:1:3 D
 .     .W "<tr>",!
 .     . W "<td>"
 .     .  S SUM=$$SUM(AKIND,"TOT",DT,J)
 .     .  W SUM
 .     . W "</td>"
 .     .W "</tr>",!
 .   W "</table>",!
 .  W "</td>"
 . W "</tr>",!
 ;
 Q
 ;
PROFITKIND(KIND) ;
 Q $$^%W1DICT(KIND_"PROFIT")
 ;
DAYTIME(J) ;
 I J=1 Q $$^%W1DICT("MORNING")
 I J=2 Q $$^%W1DICT("EVENING")
 I J=3 Q $$^%W1DICT("DAY")
 Q "&nbsp;"
 ;
SUM(PKIND,N,DT,J) ;
 N A
 S A=$G(@$$^W4MAIN("VRM")@(DT,N,PKIND,J))
 I DT="RKZ" S A=$G(@$$^W4MAIN("VRM")@(N,PKIND,J))
 Q A
 ;
MMRKZ ;
 K MMRKZ
 N N S N="" F  S N=$O(@$$^W4GL("MRKZ")@(N)) Q:N=""  D
 .S MMRKZ(N)=$G(^(N))
 Q
 ;
FRMRKZ(MEDT,ADDT,RKZ) ;
 N DT,MRKZ
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 N DOCH S DOCH=$$^W4GL("MRK2WEB")
 ;;M @VRM=@DOCH
 I '$G(RKZ) S VRM=$$BG^W4MAIN("VRM")_"DT)"
 ;
 F DT=MEDT:1:ADDT D
 .;;D ^W4CRDOCH(DT)
 .S MRKZ="" F  S MRKZ=$O(@DOCH@(DT,MRKZ)) Q:MRKZ=""  I MRKZ D
 ..S VD="" F  S VD=$O(@DOCH@(DT,MRKZ,VD)) Q:VD=""  I VD'="SUMALL" D
 ...S @VRM@(MRKZ,VD,1)=$G(@VRM@(MRKZ,VD,1))+$G(@DOCH@(DT,MRKZ,VD,1))
 ...S @VRM@(MRKZ,VD,2)=$G(@VRM@(MRKZ,VD,2))+$G(@DOCH@(DT,MRKZ,VD,2))
 ...S @VRM@(MRKZ,VD,3)=$G(@VRM@(MRKZ,VD,1))+$G(@VRM@(MRKZ,VD,2))
 ...S @VRM@("TOT",VD,1)=$G(@VRM@("TOT",VD,1))+$G(@DOCH@(DT,MRKZ,VD,1))
 ...S @VRM@("TOT",VD,2)=$G(@VRM@("TOT",VD,2))+$G(@DOCH@(DT,MRKZ,VD,2))
 ...S @VRM@("TOT",VD,3)=$G(@VRM@("TOT",VD,1))+$G(@VRM@("TOT",VD,2))
 ..
 ..D SETVRM(MRKZ)
 .
 D SETVRM("TOT")
 Q
 ;
SETVRM(MRKZ) ;
 S SSOAD1=$G(@VRM@(MRKZ,"SSOAD",1))
 S SSOAD2=$G(@VRM@(MRKZ,"SSOAD",2))
 S SSOAD3=SSOAD1+SSOAD2
 ;
 I MRKZ'="TOT" D
 .S @VRM@(MRKZ,"SUMALL",1)=$J($G(@VRM@(MRKZ,"SUMMSD",1))+$G(@VRM@(MRKZ,"SUMMSL",1))+$G(@VRM@(MRKZ,"SUMDLP",1)),2,2)
 .S @VRM@(MRKZ,"SUMALL",2)=$J($G(@VRM@(MRKZ,"SUMMSD",2))+$G(@VRM@(MRKZ,"SUMMSL",2))+$G(@VRM@(MRKZ,"SUMDLP",2)),2,2)
 .S @VRM@(MRKZ,"SUMALL",3)=$J(@VRM@(MRKZ,"SUMALL",1)+@VRM@(MRKZ,"SUMALL",2),2,2)
 .;
 .S @VRM@("TOT","SUMALL",1)=$G(@VRM@("TOT","SUMALL",1))+$G(@VRM@(MRKZ,"SUMALL",1))
 .S @VRM@("TOT","SUMALL",2)=$G(@VRM@("TOT","SUMALL",2))+$G(@VRM@(MRKZ,"SUMALL",2))
 .S @VRM@("TOT","SUMALL",3)=$G(@VRM@("TOT","SUMALL",1))+$G(@VRM@("TOT","SUMALL",2))
 ;
 S @VRM@(MRKZ,"AVMSD",1)="&nbsp;"
 S @VRM@(MRKZ,"AVMSD",2)="&nbsp;"
 S @VRM@(MRKZ,"AVMSD",3)="&nbsp;"
 I SSOAD1 D
 .S @VRM@(MRKZ,"AVMSD",1)=$J($G(@VRM@(MRKZ,"SUMMSD",1))/SSOAD1,2,2)
 I SSOAD2 D
 .S @VRM@(MRKZ,"AVMSD",2)=$J($G(@VRM@(MRKZ,"SUMMSD",2))/SSOAD2,2,2)
 I SSOAD3 D
 .S @VRM@(MRKZ,"AVMSD",3)=$J($G(@VRM@(MRKZ,"SUMMSD",3))/SSOAD3,2,2)
 ;
 S MSL1=$G(@VRM@(MRKZ,"KAMMSL",1))
 S MSL2=$G(@VRM@(MRKZ,"KAMMSL",2))
 S MSL3=MSL1+MSL2
 S @VRM@(MRKZ,"AVMSL",1)="&nbsp;"
 S @VRM@(MRKZ,"AVMSL",2)="&nbsp;"
 S @VRM@(MRKZ,"AVMSL",3)="&nbsp;"
 I MSL1 D
 .S @VRM@(MRKZ,"AVMSL",1)=$J($G(@VRM@(MRKZ,"SUMMSL",1))/MSL1,2,2)
 I MSL2 D
 .S @VRM@(MRKZ,"AVMSL",2)=$J($G(@VRM@(MRKZ,"SUMMSL",2))/MSL2,2,2)
 I MSL3 D
 .S @VRM@(MRKZ,"AVMSL",3)=$J($G(@VRM@(MRKZ,"SUMMSL",3))/MSL3,2,2)
 ;
 S DLP1=$G(@VRM@(MRKZ,"KAMDLP",1))
 S DLP2=$G(@VRM@(MRKZ,"KAMDLP",2))
 S DLP3=DLP1+DLP2
 S @VRM@(MRKZ,"AVDLP",1)="&nbsp;"
 S @VRM@(MRKZ,"AVDLP",2)="&nbsp;"
 S @VRM@(MRKZ,"AVDLP",3)="&nbsp;"
 I DLP1 D
 .S @VRM@(MRKZ,"AVDLP",1)=$J($G(@VRM@(MRKZ,"SUMDLP",1))/DLP1,2,2)
 I DLP2 D
 .S @VRM@(MRKZ,"AVDLP",2)=$J($G(@VRM@(MRKZ,"SUMDLP",2))/DLP2,2,2)
 I DLP3 D
 .S @VRM@(MRKZ,"AVDLP",3)=$J($G(@VRM@(MRKZ,"SUMDLP",3))/DLP3,2,2)
 Q
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 Q

W4MRKMA0
W4MRKMAN(JB,DT1,DT2)  ; [ 16.08.17 11:39 ] [ 10.11.16 15:44 ] [ 08.11.16 14:30 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 ;
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 ;
 F DT=DT1:1:DT2 D
 .D REP(DT)
 ;
 D TV2^%L1FTP(FLIN)
 Q
 ;
REP(DT)
 D ^%L1TS
 D HEADER(DT) ; --> FLIN,BID,FS ( O FLIN U FLIN )
 D REPINFO(DT)
 D MENU()
 D SALES(DT)
 D FOOTER()
 Q
 ;
HEADER(DT) ; --> FLIN,BID,FS : O FLIN U FLIN
 S FLIN="/tmp/mrkfile"_$$DAT(DT)_"_"_$G(@$$^W4PRM@("ASH","MASOF"))_".txt"
 C FLIN:DELETE
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 W "{"
 Q
 ;
REPINFO(DT)
 S MASOF=$E($G(@$$^W4PRM@("ASH","MASOF")),1,7)
 S Z1=$$^W4GL("Z1")
 S DAT=$$DAT(DT)
 S BNAME=$$HEB($$^%L1HEAD)
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM
 S TOTAL=$$SAH^W4MAILZ(DT)
 ;
 S STRIN="""BuyerName"":"""_BNAME_""","
 S STRIN=STRIN_"""DateTimeFrom"":"""_$ZD(DT,"DD/MM/YYYY")_""","
 S STRIN=STRIN_"""DateTimeTo"":"""_$ZD(DT,"DD/MM/YYYY")_""","
 S STRIN=STRIN_"""BuyerCode"":"""_MASOF_""","
 S STRIN=STRIN_"""Znumber"":"""_NOM_""","
 S STRIN=STRIN_"""TotalRevenueWithVAT"":"""_TOTAL_""","
 S STRIN=STRIN_"""TotalRevenueWithoutVAT"":"""_$$NOVAT(TOTAL,DT)_""","
 W STRIN,!
 Q
 ;
 ;
MENU() ;
 N STRIN,ITMCOD,ITMNAME,ITMPRC,ITMGRP
 S STRIN="""Dishes"""_":["
 W STRIN
 S REC=0
 ;
 S ITMCOD="" F  S ITMCOD=$O(@$$^W4GL("PAR")@(ITMCOD)) Q:ITMCOD=""  D
 .S REC=REC+1
 .S ITMNAME=$$HEB($$SHEM(ITMCOD))
 .S ITMPRC=$$MH(ITMCOD)
 .S ITMGRP=$$HEB($$KVZ(ITMCOD))
 .S STRIN=$$JSONITEM(ITMCOD,ITMNAME,ITMPRC,ITMGRP)
 .I REC>1 W ",",!
 .W STRIN,!
 W "],",!
 Q
 ;
 ;
JSONITEM(ITMCOD,ITMNAME,ITMPRC,ITMGRP)
 N STRIN
 S STRIN="{"
 S STRIN=STRIN_"""SKU"":"""_ITMCOD_""","
 S STRIN=STRIN_"""Name"":"""_ITMNAME_""","
 S STRIN=STRIN_"""PriceWithVAT"":"""_ITMPRC_""","
 S STRIN=STRIN_"""PriceWithoutVAT"":"""_$$NOVAT(ITMPRC,DT)_""","
 S STRIN=STRIN_"""Category"":"""_ITMGRP_"""}"
 Q STRIN
 ;
 ;
SHEM(ITMCOD);
 Q $$SHEM^W4P(ITMCOD)
 ;
MH(ITMCOD);
 Q $$MH^W4P(ITMCOD)
 ;
KVZ(ITMCOD)
 Q $$SUG1^W4P(ITMCOD)
 ;
NOVAT(TOT,DT) ;
 N AHMAM,KMAM
 S AHMAM=$$MAMD^W4L(DT)
 Q $J(TOT*100/(100+AHMAM),2,2)
 ;
 ;
FOOTER();
 W "}"
 C FLIN
 Q
 ;
 ;
SALES(DT);
 W """Sales"":["
 S REC=0 ; -- ?????
 N HZ
 S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 .D HZMITEMS(HZ)
 W "]"
 Q
 ;
 ;
HZMITEMS(HZM)
 N (JB,%ARG,HZM,REC,DT)
 D ^%L1TS
 S SUM=0
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S A=$G(^(I))
 .S CD=$P(A,"\")
 .I $$ISHNHP^W4HZMST(CD) S CD=0,ITEMNAME=$$HEB("hixtl dgpd") G C1
 .I CD'?1N.N S CD=0
 .S ITEMNAME=$$HEB($$ITEMNAME(A))
C1 .N QNT,ITEMPRC
 .S QNT=$$QNT(A) S:'QNT QNT=1
 .S ITEMPRC=$$ITEMPRC(A)
 .I 'ITEMPRC,QNT S ITEMPRC=$J(($$ITEMSUM(A)-$$ADDONPRC(A))/QNT,2,2)
 .D BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 .S SUM=SUM+(QNT*ITEMPRC)
 .
 .N ADDON
 .S ADDONPRC=$$ADDONPRC(A)
 .
 .I $G(ADDONPRC) D
 ..D BILLITEM("0",$$HEB("zetqez"),"1",ADDONPRC)
 ..S SUM=SUM+ADDONPRC
 ;
 N HNH S HNH=-$$HNH^W4HZMST(HZM)
 I HNH D BILLITEM("0",$$HEB("oeaygl dgpd"),"1",HNH)
 ;
 N DMSH S DMSH=$$DMSH^W4HZMST(HZM)
 I DMSH D BILLITEM("0",$$HEB("zexiy inc"),"1",DMSH)
 Q
 ;
 ;
BILLITEM(CD,ITEMNAMEM,QNT,ITEMPRC);
 N (DT,REC,CD,ITEMNAME,ITEMPRC,QNT)
 D ^%L1TS
 S ITEMPRC=$J(ITEMPRC,2,2)
 S BILLITEM="""SKU"":"""_CD_""""
 S BILLITEM=BILLITEM_",""Name"":"""_ITEMNAME_""""
 S BILLITEM=BILLITEM_",""TotalPriceWithVAT"":"""_ITEMPRC_""""
 S BILLITEM=BILLITEM_",""TotalPriceWithoutVAT"":"""_$$NOVAT(ITEMPRC,DT)_""""
 S BILLITEM=BILLITEM_",""Quantity"":"""_QNT_""""
 S BILLITEM="{"_BILLITEM_"}" ;;  --- {}=JSON OBJECT VAR:VALUE "," -SEPARATOR
 I REC'<1 S BILLITEM=","_BILLITEM
 W BILLITEM,!
 S REC=REC+1
 Q
 ;
 ;
QNT(A) ;
 Q $P(A,"\",5)
 ;
ADDONPRC(A)
 Q $J($P(A,"\",6),2,2)
 ;
ITEMPRC(A) ;
 Q $J($P(A,"\",4),2,2)
 ;
ITEMSUM(A) ;
 Q $J($P(A,"\",7),2,2)
 ;
ITEMNAME(A)
 N NM S NM=$P(A,"\",3)
 Q NM
 ;
HEB(ST)
 S ST=$$RPL^%L1FRM(ST,"""","\""")
 S ST=$$RPL^%L1FRM(ST,"["," ")
 S ST=$$RPL^%L1FRM(ST,"]"," ")
 S ST=$$RPL^%L1FRM(ST,"{"," ")
 S ST=$$RPL^%L1FRM(ST,"}"," ")
 S ST=$$RPL^%L1FRM(ST,","," ")
 S ST=$$INVH^%L1FRM(ST)
 S ST=$TR(ST,TS0,TS1)
 Q ST
 ;
DAT(DT) ;
 Q $ZD(DT,"YYMMDD")
 
 
 
 

W4MRKMAN
W4MRKMAN(JB,DT1,DT2)  ; [ 18.12.18 06:38 ] [ 23.10.17 18:46 ] [ 22.10.17 11:48 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 ;
 D GLP K @GLP
 ;
 D W("<table dir=""LTR"" align=""center"" >")
 ;
 D GETTOKEN
 ;
 I OKTKN'="true" D  G END
 .D W("<tr><td>Error Get Token Parameters - "_ERRTKN_"</td></tr>")
 .D W("</table>")
 ;
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 S Z1=$$^W4GL("Z1")
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$$DAT(DT)
 .S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM
 .K @$$^W4GL("W4MRKMAN")@(DT,"P")
 .D REP(DT)
 .D SEND(DT)
 ;
 D W("<tr><td>&nbsp;</td></tr>")
 D W("<tr><td style=""font-weight:bold"">Data sending completed</td></tr>")
 D W("<tr><td>&nbsp;</td></tr>")
 D W("</table>")
END ; 
 D PUT^%W1PRM("MRKMANEND",1)
 ;
 Q
 ;
 ;
REP(DT)
 D ^%L1TS
 D HEADER(DT) ; --> FLIN,BID,FS ( O FLIN U FLIN )
 D REPINFO(DT)
 D MENU
 D MOD
 D SALES(DT)
 D FOOTER()
 Q
 ;
 ;
MASOF(STAM) Q $G(@$$^W4PRM@("ASH","MASOF"))
 ;
FILENM(DT) ;
 Q "mrkfile"_$$DAT(DT)_"_"_$$MASOF_".txt"
 ;
HEADER(DT) ; --> FLIN,BID,FS : O FLIN U FLIN
 S FLIN="/tmp/"_$$FILENM(DT)
 C FLIN:(DELETE)
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 W "{"
 Q
 ;
 ;
REPINFO(DT)
 S MASOF=$E($$MASOF,1,7)
 S Z1=$$^W4GL("Z1")
 S DAT=$$DAT(DT)
 S BNAME=$$HEB($$^%L1HEAD)
 S NOM=$O(@Z1@(DAT,99999),-1) Q:'NOM
 S TOTAL=$$SAH(DT)
 ;
 S FIRSTORD=$O(@$$^W4REF@(DT,""))
 D
 .I FIRSTORD="" S STARTDATE=$ZD($H,"YYYY-MM-DD")_"T06:00:00" Q
 .I $P($$DATCB^W4HZMST(FIRSTORD),"  ")'?2N1"."2N1"."2N S STARTDATE=$ZD($H,"YYYY-MM-DD")_"T06:00:00" Q
 .S STARTDATE=$$DATUICHZ(FIRSTORD)
 ;
 S FINDATE=STARTDATE
 N IND S IND=$O(@Z1@(DAT,999),-1)
 I IND,$D(@Z1@(DAT,IND)) D
 .N ZMAN S ZMAN=$G(^(IND))
 .;
 .S FINDATE=$$DATUIC($P(ZMAN,"\"),$E($P(ZMAN,"\",2),1,5))
 ;
 S STRIN="""Token"":"""_TOKEN_""","
 ;;--DIMA MAKE PROBLEMS  S STRIN=STRIN_"""BuyerGUID"":"""_MASOF_""","
 S STRIN=STRIN_"""UniqueID"":"""_DT_""","
 S STRIN=STRIN_"""FromDateUTC"":"""_STARTDATE_""","
 S STRIN=STRIN_"""ToDateUTC"":"""_FINDATE_""","
 S STRIN=STRIN_"""TotalPriceWithVAT"":"""_TOTAL_""","
 S STRIN=STRIN_"""TotalPriceWithoutVAT"":"""_$$NOVAT(TOTAL,DT)_""","
 W STRIN,!
 Q
 ;
 ;
SAH(DT) ;
 N DAT,SAH S SAH=0
 S DAT=$$DAT(DT) ;
 N NOM S NOM="" F  S NOM=$O(@Z1@(DAT,NOM)) Q:NOM=""  D
 .S SAH=SAH+$G(@Z1@(DAT,NOM,"F",1))+$G(@Z1@(DAT,NOM,"G",1))+$G(@Z1@(DAT,NOM,"V",1))+$G(@Z1@(DAT,NOM,"H",1))
 .I '$$^W4TIPPD(DT) S SAH=SAH-$G(@Z1@(DAT,NOM,"T",1))
 Q SAH
 ;
DATUICHZ(HZ) ;
 N DAT,DAT1,TM S DAT=$$DATCB^W4HZMST(HZ)
 N A S A=$G(@$$^W4ORD@(HZ))
 S DAT1=$P(DAT,"  "),TM=$P(DAT,"  ",2)
 I DAT1?.P S DAT1=$P(A,"\",29),TM=$P(A,"\",25)
 I DAT1?.P,FINDATE Q FINDATE
 I DAT1?.P,STARTDATE Q STARTDATE
 Q $$DATUIC(DAT1,TM)
 ;
DATUIC(DAT,TM)
 S DAT=$$^%L1DC(DAT,2)
 S DAT="20"_$E(DAT,1,2)_"-"_$E(DAT,3,4)_"-"_$E(DAT,5,6)
 Q DAT_"T"_$$TM(TM)
 ;
TM(TM)
 S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$E($P(TM,":",2),1,2)_":00"
 Q TM
 ;
MENU ;
 N STRIN,ITMCOD,ITMNAME,ITMPRC,ITMGRP
 S STRIN="""Dishes"":["
 W STRIN
 S REC=0
 ;
 S ITMCOD="" F  S ITMCOD=$O(@$$^W4GL("PAR")@(ITMCOD)) Q:ITMCOD=""  D
 .S REC=REC+1
 .S ITMNAME=$$HEB($$SHEM(ITMCOD))
 .S ITMPRC=$$MH(ITMCOD)
 .S ITMGRP=$$HEB($$KVZ(ITMCOD))
 .S STRIN=$$JSONITEM(ITMCOD,ITMNAME,ITMPRC,ITMGRP)
 .I REC>1 W ",",!
 .W STRIN,!
 W "],",!
 Q
 ;
 ;
JSONITEM(ITMCOD,ITMNAME,ITMPRC,ITMGRP)
 N STRIN
 S STRIN="{"
 S STRIN=STRIN_"""Name"":"""_ITMNAME_""","
 S STRIN=STRIN_"""ID"":"""_ITMCOD_""","
 S STRIN=STRIN_"""PriceWithVAT"":"""_ITMPRC_""","
 S STRIN=STRIN_"""PriceWithoutVAT"":"""_$$NOVAT(ITMPRC,DT)_""","
 S STRIN=STRIN_"""Code"":"""_ITMCOD_""","
 S STRIN=STRIN_"""Category"":"""_ITMGRP_"""}"
 Q STRIN
 ;
 ;
SHEM(ITMCOD);
 Q $$SHEM^W4P(ITMCOD)
 ;
MH(ITMCOD);
 Q $$MH^W4P(ITMCOD)
 ;
KVZ(ITMCOD)
 Q $$SUG1^W4P(ITMCOD)
 ;
NOVAT(TOT,DT) ;
 N AHMAM,KMAM
 S AHMAM=$$MAMD^W4L(DT)
 Q $J(TOT*100/(100+AHMAM),2,2)
 ;
 ;
MOD ;
 Q
 N STRIN
 S STRIN="{"
  S STRIN=STRIN_"["
  S STRIN=STRIN_"]"
 S STRIN=STRIN_"}"
 W STRIN,!
 Q
 ;
FOOTER();
 W "}"
 C FLIN
 Q
 ;
 ;
SALES(DT);
 W """Transactions"":["
 S REC=0
 N HZ
 S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I HZ D
 .D HZMITEMS(HZ)
 W "]"
 Q
 ;
 ;
HZMITEMS(HZM)
 N (JB,%ARG,HZM,REC,DT,STARTDATE,FINDATE)
 D ^%L1TS
 S SUM=0
 S DATST0=STARTDATE ;$$DATUICHZ(HZM)
 ;
 S I="" F  S I=$O(@$$^W4ORD@(HZM,I)) Q:I=""  I I D
 .S A=$G(^(I))
 .S CD=$P(A,"\") Q:'$L(CD)
 .I $$ISHNHP^W4HZMST(CD) S ITEMNAME=$$HEB("DISCOUNT TO ITEM "_CD),CD=-1 G C1
 .I CD'?1N.N S CD=0
 .S ITEMNAME=$$HEB($$ITEMNAME(A))
C1 .N QN,ITEMPRC
 .S QN=$$QN(A) S:'QN QN=1
 .S ITEMPRC=$$ITEMPRC(A)
 .I 'ITEMPRC,QN S ITEMPRC=$J(($$ITEMSUM(A)-$$ADDONPRC(A))/QN,2,2)
 .N ST S ST=$P($G(@$$^W4ORD@(HZM,"ST",I)),"\",2)
 .;;I ST?.P S DATST=DATST0
 .;;E  D
 ..N DT1,TM S DT1=DT
 ..S TM=$TR(ST," ","")
 ..I $TR(TM," ","")<6 S DT1=DT+1
 ..S DATST=$ZD(DT1,"YYYY-MM-DD")_"T"_$$TM(TM)
 .S DATST=DATST0
 .D BILLITEM(CD,ITEMNAME,QN,ITEMPRC,DATST)
 .
 .S SUM=SUM+(QN*ITEMPRC)
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,I,N2)) Q:N2=""  I N2 D
 ..S B=$G(^(N2))
 ..I '$O(^(N2)) D  Q
 ...S CDT=N2,ITNMT=$$HEB($P(B,"\")),MHT=$P(B,"\",2),QNT=$P(B,"\",3)
 ...I QNT["*" S QNT=QNT*$P(QNT,"*",2)
 ...D BILLITEM(CDT,ITNMT,QNT,MHT,DATST)
 ..
 ..S N3="" F  S N3=$O(@$$^W4ORD@(HZM,I,N2,N3)) Q:N3=""  I N3 D
 ...S C=$G(^(N3))
 ...I $L($P(C,"\")) D  Q
 ....S CDT=$P(C,"\"),ITNMT=$$HEB($P(C,"\",2)),MHT=$P(C,"\",7),QNT=$P(C,"\",3)
 ....I QNT["*" S QNT=QNT*$P(QNT,"*",2)
 ....D BILLITEM(CDT,ITNMT,QNT,MHT,DATST)
 ...
 ...S CDT=$P(C,"\",4) Q:'$L(CDT)
 ...S ITNMT=$$HEB($P(C,"\",5)),MHT=$P(C,"\",7),QNT=$P(C,"\",3)
 ...I QNT["*" S QNT=QNT*$P(QNT,"*",2)
 ...D BILLITEM(CDT,ITNMT,QNT,MHT,DATST)
 ;
 N HNH S HNH=-$$HNH^W4HZMST(HZM)
 I HNH D BILLITEM("-2","BILL DISCOUNT","1",HNH,DATST0)
 ;
 N DMSH S DMSH=$$DMSH^W4HZMST(HZM)
 I DMSH D BILLITEM("-3","DLVFEE","1",DMSH,DATST0)
 Q
 ;
 ;
BILLITEM(CD,ITEMNAME,QNT,ITEMPRC,DATST);
 N (JB,DT,REC,CD,ITEMNAME,ITEMPRC,QNT,DATST,HZM,DATST0)
 I $G(DATST)'?1"20"2N1"-"2N1"-"2N1"T"2N1":"2N.E D
 .S @$$^W4GL("AA")@("W4MRKMAN",HZM,CD)=DATST
 .S DATST=DATST0
 D ^%L1TS
 S ITEMPRC=$J(ITEMPRC,2,2)
 S BILLITEM="""DishCode"":"""_CD_""""
 S BILLITEM=BILLITEM_",""DishID"":"""_CD_""""
 S BILLITEM=BILLITEM_",""DishName"":"""_ITEMNAME_""""
 S BILLITEM=BILLITEM_",""PriceTotalWithVAT"":"""_$J(ITEMPRC,2,2)_""""
 S BILLITEM=BILLITEM_",""PriceTotalWithoutVAT"":"""_$$NOVAT(ITEMPRC,DT)_""""
 S BILLITEM=BILLITEM_",""DateUTC"":"""_DATST_""""
 S BILLITEM=BILLITEM_",""Quantity"":"""_QNT_""""
 S BILLITEM="{"_BILLITEM_"}" ;;  --- {}=JSON OBJECT VAR:VALUE "," -SEPARATOR
 I REC'<1 S BILLITEM=","_BILLITEM
 ;
 N GL S GL=$$^W4GL("W4MRKMAN")_"("_DT_",""P"")"
 ;
 I $L(CD) D
 .S @GL@(CD,"Q")=$G(@GL@(CD,"Q"))+QNT
 .S @GL@(CD,"S")=$G(@GL@(CD,"S"))+(QNT*ITEMPRC)
 .I $G(HZM) D
 ..S @GL@(CD,"Q",HZM)=$G(@GL@(CD,"Q",HZM))+QNT
 ..S @GL@(CD,"S",HZM)=$G(@GL@(CD,"S",HZM))+(QNT*ITEMPRC)
 ;
 W BILLITEM,!
 S REC=REC+1
 Q
 ;
 ;
QN(A) ;
 Q $P(A,"\",5)
 ;
ADDONPRC(A)
 Q $J($P(A,"\",6),2,2)
 ;
ITEMPRC(A) ;
 Q $J($P(A,"\",4),2,2)
 ;
ITEMSUM(A) ;
 Q $J($P(A,"\",7),2,2)
 ;
ITEMNAME(A)
 N NM S NM=$P(A,"\",3)
 Q NM
 ;
HEB(ST)
 S ST=$$RPL^%L1FRM(ST,"""","\""")
 S ST=$$RPL^%L1FRM(ST,"["," ")
 S ST=$$RPL^%L1FRM(ST,"]"," ")
 S ST=$$RPL^%L1FRM(ST,"{"," ")
 S ST=$$RPL^%L1FRM(ST,"}"," ")
 S ST=$$RPL^%L1FRM(ST,","," ")
 S ST=$$INVH^%L1FRM(ST)
 S ST=$TR(ST,TS0,TS1)
 Q ST
 ;
DAT(DT) ;
 Q $ZD(DT,"YYMMDD")
 ;
GETTOKEN ;
 N FL S FL="/tmp/mrkman.prm"
 C FL:(DELETE)
 O FL:(WRITE) U FL
 W "{",!
  W """APIKey"":"""_$G(@$$^W4PRM@("MRKMAN","APIKEY"))_""",",!
  W """APIPassword"":"""_$G(@$$^W4PRM@("MRKMAN","APIPSW"))_"""",!
 W "}",!
 C FL
 ;
 N CMD,CON,A
 S HEADER="""Content-Type:application/json""" 
 S URL="https://api.marketman.co.il/v1/buyers/auth/GetToken"
 S CMD="curl -s -m 120 -H "_HEADER_" -d @"_FL_" "_URL
 S CON="MRKPRM"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 U CON
 S (TOKEN,EXPDAT,OKTKN,ERRTKN)=""
 F  R A Q:$ZEOF  D
 .I A["Token" S TOKEN=$$GETVL(A,"""Token""")
 .I A["ExpireDate" S EXPDAT=$$GETVL(A,"""ExpireDate""")
 .I A["IsSuccess" S OKTKN=$$GETVL(A,"""IsSuccess""")
 .I A["ErrorMessage" S ERRTKN=$$GETVL(A,"""ErrorMessage""")
 C CON
 Q
 ;
 ;
GETVL(A,TX) ;
 S VL=$P($P(A,TX,2),",")
 S VL=$P(VL,"}")
 S VL=$P(VL,":",2)
 S VL=$$SPA^%L1FRM(VL)
 I $E(VL)="""" S VL=$E(VL,2,$L(VL)-1)
 Q VL
 ;
SEND(DT) ; 
 N CMD,CON,A
 S HEADER="""Content-Type:application/json"""
 S URL="https://api.marketman.co.il/v1/buyers/sales/SetSales"
 ;
 ZSY "iconv -c -f cp1255 -t utf-8 "_FLIN_" -o "_FLIN_"utf-8"
 S CMD="curl -s -m 120 -H "_HEADER_" -d @"_FLIN_"utf-8 "_URL
 S CON="MRKMAN"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 U CON
 S (OKM,ERM)=""
 F  R A Q:$ZEOF  D
 .I A["IsSuccess" S OKM=$$GETVL(A,"""IsSuccess""")
 .I A["ErrorMessage" S ERM=$$GETVL(A,"""ErrorMessage""")
 C CON
 ;
 N IND
 S IND=$O(@$$^W4GL("W4MRKMAN")@(DT,99999),-1)+1
 S @$$^W4GL("W4MRKMAN")@(DT,IND)=OKM_"\"_ERM_"\"_$ZD($H,"DD.MM.YY  24:60")
 ;
 I OKM="true" D W("<tr><td>"_$ZD(DT,"DD.MM.YY")_" - OK</td></tr>")
 E  D W("<tr><td>"_$ZD(DT,"DD.MM.YY")_" - "_ERM_"</td></tr>")
 Q 
 ;
 ;
W(TX) ;
 D GLP
 N IND S IND=$O(@GLP@(999999),-1)+1 
 S @GLP@(IND)=TX
 Q
 ;
GETPRM ;
 N I
 F I="APIKEY","APIPSW" D
 .S @I=$G(@$$^W4PRM@("MRKMAN",I))
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 N VL,RES,I
 S RES=1
 F I="APIKEY","APIPSW" D  Q:RES'=1
 .S VL=$G(@I)
 .S @$$^W4PRM@("MRKMAN",I)=VL
 ;
 Q RES
 ;
GLP ;
 S GLP=$$^W4MAIN("TMPS111")
 Q
 ;
GETPROT(STAM) ;
 D GLP
 N ST S ST=""
 F I=1:1 Q:'$D(@GLP@(I))  D
 .S ST=ST_$G(^(I))
 Q ST
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MRKMIT
W4MRKMIT(DT) ; [ 17.09.18 11:38 ] [ 22.08.17 07:49 ] [ 21.08.17 19:41 ] 
 N (JB,%ARG,DT)
 I $G(DT)="" W "A DATE NOT DEFINED !" Q
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 S GLP=$$^W4GL("W4MRKMAN")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 W "<br>",!
 W "<span style="""_$$^W3FSZ(14)_""">",!
  W $$^%W1DICT("MRKMANPROTIT",DAT)
 W "</span>",!
 W "<br>",!
 ;
 W "<table width=""70%"" border=""1"" cellspacing=""0"" cellpadding=""2"">",!
 W " <tr>"
 W "   <th>"
   W $$^%W1DICT("CODE")
 W "   </th>" 
 ;
 W "   <th>"
   W $$^%W1DICT("ITEMNAME")
 W "   </th>" 
 ;
 W "   <th>"
   W $$^%W1DICT("QUANTITY")
 W "   </th>" 
 ;
 W "   <th>"
   W $$^%W1DICT("SUM")
 W "   </th>" 
 W " </tr>",!
 ;
 S (SQN,SSUM,DISCIT,DISCITQ,DISCOUNT,DISCOUNTQ,DLVFEE,DLVFEEQ)=0
 S CD="" F  S CD=$O(@GLP@(DT,"P",CD)) Q:CD=""  D
 .S QN=$G(^(CD,"Q"))
 .S SUM=$G(^("S"))
 .I CD=-1 S DISCIT=DISCIT+SUM,DISCITQ=DISCITQ+1 Q
 .I CD=-2 S DISCOUNT=DISCOUNT+SUM,DISCOUNTQ=DISCOUNTQ+1 Q
 .I CD=-3 S DLVFEE=DLVFEE+SUM,DLVFEEQ=DLVFEEQ+1 Q
 .S SQN=SQN+QN
 .S SSUM=SSUM+SUM
 .W "<tr onClick=""ShowSales('"_DT_"')"">"
 . W " <td>"_CD_"</td>"
 . N NM
 . W " <td>" D  W $$H2U^%L1FRM(NM) W "</td>"
 .. I $D(@$$^W4GL("PAR")@(CD)) S NM=$$SHEM^W4P(CD) Q
 .. I CD=0 S NM="zepey" Q
 . W " <td>"_QN_"</td>"
 . W " <td>"_$J(SUM,2,2)_"</td>"
 .W "</tr>",!
 ;
 D TOT
 ;
 W "</table>",!
 W "<br><br>",!
  D ^W4BUTTON("print","PRINT","Print()","color:blue;font-size:"_$$^W3FSZ(14))
  W $$NBSP^%L1FRM(7)
  D ^W4BUTTON("close","CLOSE","Close()","color:red;font-size:"_$$^W3FSZ(14))
  W "<br><br>",!
 W "</div>",!
 Q
 ;
 ;
TOT ;
 W "<tr style=""font-weight:bold;background-color:lightyellow;color:red"" >"
  W "<td>&nbsp;</td>"
  W "<td>"_$$^%W1DICT("ITEMDISCOUNTS")_"</td>"
  W "<td>"_DISCITQ_"</td>"
  W "<td>"_$J(DISCIT,2,2)_"</td>"
 W "</tr>",!
 ;
 W "<tr style=""background-color:orange;font-weight:bold"" >"
  W "<td>&nbsp;</td>"
  W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td>"_SQN_"</td>"
  W "<td>"_$J(SSUM+DISCIT,2,2)_"</td>"
 W "</tr>",!
 ;
 W "<tr style=""font-weight:bold;background-color:lightyellow;color:red"" >"
  W "<td>&nbsp;</td>"
  W "<td>"_$$^%W1DICT("BILLDISCOUNTS")_"</td>"
  W "<td>"_DISCOUNTQ_"</td>"
  W "<td>"_$J(DISCOUNT,2,2)_"</td>"
 W "</tr>",!
 ;
 I DLVFEE D
 .W "<tr style=""font-weight:bold;background-color:lightyellow"" >"
 . W "<td>&nbsp;</td>"
 . W "<td>"_$$^%W1DICT("TOTDLVFEE")_"</td>"
 . W "<td>"_DLVFEEQ_"</td>"
 . W "<td>"_$J(DLVFEE,2,2)_"</td>"
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"" >"
  W "<td>&nbsp;</td>"
  W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td>"_SQN_"</td>"
  W "<td>"_$J(SSUM+DISCIT+DISCOUNT+DLVFEE,2,2)_"</td>"
 W "</tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MRKMPR
W4MRKMPR(DAT1,DAT2) ; [ 21.08.17 19:18 ] [ 20.08.17 09:00 ] [ 19.08.17 19:32 ] 
 N (JB,%ARG,DAT1,DAT2)
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S GLP=$$^W4GL("W4MRKMAN")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 W "<span style="""_$$^W3FSZ(14)_""">",!
  W $$^%W1DICT("MRKMANPROT",DAT1_" - "_DAT2)
 W "</span>",!
 ;
 W "<table width=""70%"">",!
 W " <tr>"
 W "   <th>"
   W $$^%W1DICT("DATE")
 W "   </th>" 
 ;
 W "   <th>"
   W $$^%W1DICT("SENDNMB")
 W "   </th>" 
 ;
 W "   <th>"
   W $$^%W1DICT("SENDTIME")
 W "   </th>" 
 ;
 W "   <th>"
   W $$^%W1DICT("RESULT")
 W "   </th>" 
 W " </tr>",!
 ;
 F DT=DT1:1:DT2 D
 .S IND="" F  S IND=$O(@GLP@(DT,IND)) Q:IND=""  I IND D
 ..S A=$G(^(IND))
 ..W "<tr align=""center"" onClick=""ShowSales('"_DT_"',this)"" style=""cursor:pointer"">"
 .. W " <td>"_$ZD(DT,"DD.MM.YY")_"</td>"
 .. W " <td>"_IND_"</td>"
 .. W " <td>"_$P(A,"\",3)_"</td>"
 .. S TXP="" I $P(A,"\")="true" S TXP="OK"
 .. E  S TXP=$P(A,"\",2)
 .. W " <td>"_TXP_"</td>"
 ..W "</tr>",!
 ;
 W "</table>",!
 W "<br><br>",!
  D ^W4BUTTON("print","PRINT","Print()","color:blue;font-size:"_$$^W3FSZ(14))
  W $$NBSP^%L1FRM(7)
  D ^W4BUTTON("close","CLOSE","Close()","color:red;font-size:"_$$^W3FSZ(14))
  W "<br><br>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSD
W4MSD(NMB) ; [ 23.10.13 18:24 ] [ 16.03.12 22:10 ] [ 08.04.09 10:25 ]
 I $L($G(NMB))<4 Q 1
 Q 0
 ;
TAW(NMB) ;
 I '$G(NMB) Q 0
 I '$$W4MSD(NMB) Q 0
 I $$TAW^W4DLPK(NMB) Q 1
 I $$MTAW^W4MTAW Q 1
 Q 0
 ;
HZM(HZM)
 I '$G(HZM) Q 0
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 Q $$W4MSD(NMB)

W4MSDGRP
W4MSDGRP ; [ 28.08.18 18:50 ] [ 17.08.18 22:27 ] [ 27.05.18 15:40 ] 
 N (JB,%ARG,%REM)
 I $G(%ARG("SHOW"))=0 Q
 D VRM
 D ^%W1ARG
 ;
 N I
 N GLGR S GLGR=$$GLGR
 K @GLGR
 ;
 S COLX=2
 ;
 S @GLGR@("COLX")=COLX
 ;
 S I=0
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  S I=I+1
 ;
 S COLG=I
 ;
 S @GLGR@("COLG")=COLG
 S TYPE=$G(%ARG("TYPE"))
 I TYPE="" S TYPE="bar"
 S @GLGR@("TYPE")=TYPE
 ;
 S @GLGR@("COLX")=COLX
 ;
 S I=0
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S I=I+1
 .S @$$GLGR@("LB",I)=$G(@VRM@(N))
 .S @$$GLGR@("BGC",I)=$G(@VRM@(N,"CV"))_" .6)"
 .S @$$GLGR@("BRDC",I)=$G(@VRM@(N,"CV"))_" 1)"
 .S @GLGR@("VL",I,1)=$G(@VRM@(N,"VL"))
 ;
 S @$$GLGR@("LAB",1)=$$H2UG^%L1FRM("zecrqn")
 ;
 D SHOW
 ;
 Q
 ;
 ;
GLGR(STAM) ;
 Q $$GLGR^W1GRAPH
 ;
SHOW ;
 N HG,WD,TOP,LEFT,NG
 S HG=65,WD=90,TOP=4,LEFT=6
 I $$1024^W4WDSCR S HG=60
 S NG=1
 N SM0 S SM0=60
 ;
 W "<br>",!
 S SMLEFT=45
 I $$1024^W4WDSCR S SMLEFT=40
 ;
 W "<p style=""position:absolute;left:"_SMLEFT_"%;top:0;font-size:"_$$^W3FSZ(16)_";font-weight:bold"">",!
   W $$^%W1DICT("RESTSSTATUS",DAT)
 ;
 D NIS^W4GRPHMP(LEFT,TOP+2)
 ;
 S TYPE=$G(@GLGR@("TYPE"))
 I TYPE="" S TYPE="bar"
 ;
 D GRAPHKIND^W4GRPHMP(TOP+3,TYPE)
 ;
 N SM1,SM2 S SM1=22
 ;
 D TOTBOT(TOP+HG+7)
 ;
 D DIVBUT
 ;
 W "<iframe src=""w1graph.jsp?JB="_$G(JB)_"&NG="_NG_"&COLG="_COLG_"&TYPE="_TYPE_"&PRINT="_+$G(%ARG("PRINT"))_""" "
  W " style=""position:absolute;left:"_(LEFT-1)_"%;top:"_(TOP+9)_"%;width:"_WD_"%;height:"_HG_"%"" "
 W " />",!
 Q
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"" style=""position:absolute;left:48%;top:"_(TOP+HG+19)_"%"" >",!
  D ^W4BTN("CLOSE","Close()","red")
 W " </div>",!
 Q
 ;
RKVTOT(VL,COLOR) ;
 I $G(COLOR)="" S COLOR="darkgreen"
 I VL<0 S COLOR="red"
 N ST S ST="<span dir=""LTR"" style=""color:"_COLOR_";font-size:"_$$^W3FSZ(16)_";font-weight:bold"">"
  S ST=ST_VL_"</span>"
 Q ST
 ;
 ;
TOTBOT(TOPSM) ;
 N SMLEFT S SMLEFT=47
 I $$1024^W4WDSCR S SMLEFT=42
 ;
 N N,TOT S TOT=0
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  S TOT=TOT+$G(@VRM@(N,"VL"))
 ;
 W "<p style=""position:absolute;left:"_SMLEFT_"%;top:"_TOPSM_"%;font-size:"_$$^W3FSZ(14)_";font-weight:bold"">",!
  W $$^%W1DICT("TOTAL")_" : "_$$RKVTOT($J(TOT,2,2)_" "_$$^%W1DICT("NIS"))
 W "</p>",!
 Q
 ;
VRM ; 
 S VRM=$$^W4MAIN("VRM") 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSDMZV
W4MSDMZV ; [ 26.02.26 14:00 ] [ 18.02.26 15:32 ] [ 17.02.26 16:47 ] 
 N (JB,%ARG,%REM,MCV)
 ;
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S DT=+$H
 I $P($H,",",2)<(3600*6) S DT=DT-1
 I $G(%ARG("DAT")) S DT=$$^%L1DC(%ARG("DAT"),3)
 S DAT=$ZD(DT,"DD.MM.YY")
 D VRM K @VRM
 ;
 I $G(%ARG("NET"))=2,'$G(%ARG("MSDR")) D  Q
 .W "<p align=""center"">MSDR NOT DEFINED !</p>",!
 I $G(%ARG("NET"))=2,'$G(%ARG("USR")) D  Q
 .W "<p align=""center"">USER NOT DEFINED !</p>",!
 I $G(%ARG("NET"))=2,'$G(%ARG("PSW")) D  Q
 .W "<p align=""center"">PASSWORD NOT DEFINED !</p>",!
 ;
 I $G(%ARG("USR")) D
 .N USR S USR=%ARG("USR")
 .N GL S GL="^|$$^W3MAIN|W4MNLNET"
 .N N S N="" F  S N=$O(@GL@(MSDR,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I USR'=$P(A,"\") Q
 ..S PSWM=$P(A,"\",2)
 ..I PSWM'=$G(%ARG("PSW")) Q
 ..S MSDM=$P(A,"\",3) Q:'MSDM
 ..S MMSD(MSDM)=""
 ; 
 I $G(%ARG("USR")),$D(MMSD)<10 D  Q
 .W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 .W "<br><br><br>",!
 .W "<p style=""font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("PSWINVALID")_"</p>",!
 .D BACK 
 .W "</div>",!
 ;
 I $$PAPJ(MSDR) D
 .W "<div dir="""_$$^%W1DIR_""" align=""center"">",! 
 .W "<table width=""80%"" style=""color:brown;text-align:center"" dir="""_$$^%W1DIR_""">",!
 . W "<tr>",!
 .  W "<td>"
 .   W $$^%W1DICT("GENERALSTATUS")
 .   W "<input type=""radio"" name=""tbsug"" onClick=""TbSug()"" "_$S($G(%ARG("TBSUG"))<2:"checked=""checked"" ",1:"")_" >"
 .  W "</td>"
 .  W "<td>"
 .  W $$^%W1DICT("MKLINESTATUS")
 .  W "<input type=""radio"" name=""tbsug"" onClick=""TbSug()"" "_$S($G(%ARG("TBSUG"))=2:"checked=""checked"" ",1:"")_" >"
 .  W "</td>"
 .  W "<td>"
 .   W $$^%W1DICT("DELIVERYSTATUS")
 .   W "<input type=""radio"" name=""tbsug"" onClick=""TbSug()"" "_$S($G(%ARG("TBSUG"))=3:"checked=""checked"" ",1:"")_" >"
 .  W "</td>"
 .  W "<td>"
 .   W $$^%W1DICT("TIMEAVRGPREP")
 .   W "<input type=""radio"" name=""tbsug"" onClick=""TbSug()"" "_$S($G(%ARG("TBSUG"))=4:"checked=""checked"" ",1:"")_" >"
 .  W "</td>"
 .  W "<td>"
 .   W $$^%W1DICT("SUPPLIEDTIME")
 .   W "<input type=""radio"" name=""tbsug"" onClick=""TbSug()"" "_$S($G(%ARG("TBSUG"))=5:"checked=""checked"" ",1:"")_" >"
 .  W "</td>"
 .  W "<td>"
 .   W $$^%W1DICT("HOURSTATE")
 .   W "<input type=""radio"" name=""tbsug"" onClick=""TbSug()"" "_$S($G(%ARG("TBSUG"))=6:"checked=""checked"" ",1:"")_" >"
 .  W "</td>"
 . W "</tr>",!  
 .W "</table>",!
 .W "</div>",!
 .W "<p></p>",!
 ;
 I $G(%ARG("TBSUG"))=2 D ^W4MKLINE Q
 I $G(%ARG("TBSUG"))=3 D ^W4MSLMZV Q
 I $G(%ARG("TBSUG"))=4 D ^W4PREPNT Q
 I $G(%ARG("TBSUG"))=5 D ^W4TMSPNT Q
 ;
 F I=1:1 S T=$T(CV+I) Q:T["Q  ;"  D
 .S MCV(I)=$P(T,";",2)
 ;
 S TOT=0,QND=0
 K MST
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 .I '$$US(MSD) Q
 .K MT
 .D GET^W4MZVM(MSD,DT)
 .S QND=QND+$G(QNORD("D"))
 .S TOT=TOT+$$SUM
 .M MST(MSD)=MT
 ;
 D
 .N MST1,N,N1
 .S N="" F  S N=$O(MST(N)) Q:N=""  D
 ..S N1="" F  S N1=$O(MST(N,N1)) Q:N1=""  D
 ...M MST1(N1,N)=MST(N,N1)
 .K MST M MST=MST1 K MST1
 ;
 ;;M ^AA("W4MSDMZV","MST")=MST
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT("RESTSSTATUS",DAT)
  W "</span>",!
  W "<br>"
  W "<span style=""font-size:"_$$^W3FSZ(11)_""" >"
   W $$^%W1DICT("SHOWTIME",$ZD($H,"DD.MM.YY")_"<>"_$ZD($H,"24:60"))
  W "</span>",!
 W "<br><br>",!
 ;
 D TBMAM
 W "<p></p>",!
 D TBLPRM
 W "<br>"
 ;
 D SORT
 W "<p></p>",!
 ;
 W " <table border=""1"" cellpadding=""5"" cellspacing=""0"" >"
 W "<tr>"
  W "<th>"_$$^%W1DICT("RESTNAME")_"</th>"
  W "<th>"_$$^%W1DICT("ORDERQN")_"</th>"
  W "<th>"_$$^%W1DICT("TOTAL")_"</th>"
  W "<th>"_$$^%W1DICT("AVRGORD")_"</th>"
  W "<th>%</th>"
  ;
 W "</tr>",!
 ;
 I $G(%ARG("TBSUG"))=6 G TBHOUR; ------------------------------------ !!!
 ;
 S K=0
 S (SQN,STOT,SQNHZ1,SQNHZ2,SQNHZ3,SQNRDY)=0
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 .I '$$US(MSD) Q
 .S K=K+1
 .S FDB=$G(^[$$^W3MAIN]W4MSDMZV(MSD,DT)) D
 ..D GET^W4MZVM(MSD,DT)
 ..S QN=$$QNORD
 ..S SUM=$J($$SUM,2,2)
 ..S AVRG="" I QN S AVRG=$J(SUM/QN,2,2)
 ..I $G(%ARG("SORT"))<2 S IND=MSD
 ..I $G(%ARG("SORT"))=2 S IND=$J(QN*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=3 S IND=$J(SUM*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=4 S IND=$J(AVRG*100,7)_$J(MSD,7)
 ..
 ..I $G(%ARG("SORT"))=5 S IND=$J(QNHZ1*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=6 S IND=$J(QNHZ2*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=7 S IND=$J(QNHZ3*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=8 S IND=$J((QNHZ1+QNHZ2+QNHZ3)*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=9 S IND=$J(QNRDY*100,7)_$J(MSD,7)
 ..
 ..S @TMP@(IND)=MSD_"\"_QN_"\"_SUM_"\"_AVRG_"\"_FDB
 ;
 D BODY
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 D ^W4BTN("GRAPH","Graph('"_DAT_"')")
 I $G(%ARG("USR")) W $$NBSP^%L1FRM(5) D BACK Q
 ;
 W "</div>",!
 Q
 ;
 ;
TBLPRM ;
 W "<table id=""TblPrm"" >"
  I $G(%ARG("TBSUG"))'=6 D
  .W "<tr>"
  . W "<td>"_$$^%W1DICT("OPENORDERS")_"</td>"
  . W "<td>"
  .  W "<input type=""checkbox"" id=""open"" "_$S($G(%ARG("OPEN")):" checked=""checked"" ",1:"")_""" "
  .   W " onClick=""ReView('open','OPEN')"" "
  .  W "/>"
  . W "</td>"
  . ;
  . W "<td>"_$$^%W1DICT("CLOSEDORDERS")_"</td>"
  . W "<td>"
  .  W "<input type=""checkbox"" id=""closed"" "_$S($G(%ARG("CLOSE")):" checked=""checked""",1:"")_""" "
  .   W " onClick=""ReView('closed','CLOSE')"" "
  .  W " />"
  . W "</td>"
  .W "</tr>",!
  ;
  I QND D
  .W "<tr>"
  . W "<td>"_$$^%W1DICT("RESTAURANT")_"</td>"
  . W "<td>"
  .  W "<input type=""checkbox"" id=""prmsd"" "_$S($G(%ARG("PRMSD")):" checked=""checked""",1:"")_""" "
  .   W " onClick=""ReView('prmsd','PRMSD')"" "
  .  W " />"
  . W "</td>"
  . ;
  . W "<td>"_$$^%W1DICT("DELIVERY")_"</td>"
  . W "<td>"
  .  W "<input type=""checkbox"" id=""prmsl"" "_$S($G(%ARG("PRMSL")):" checked=""checked""",1:"")_""" "
  .   W " onClick=""ReView('prmsl','PRMSL')"" "
  .  W " />"
  . W "</td>"
  .W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
TRSP ;
 W "<tr>"
  W "<td>&nbsp;</td><td>&nbsp;</td>"
 W "</tr>",!
 Q
 ;
SUMA(FDB) ;
 Q ($P(FDB,"~",6)+$P(FDB,"~",16))
 ;
INIT ;
 D PUT^%W1PRM("SMALL",1)
 I $G(%ARG("NOSMALL")) D PUT^%W1PRM("SMALL",0)
 D ^W4BGBODY
 I $G(%ARG("SIMUL"))'="" D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 Q
 ;
QNORD(STAM) ;
 N QN S QN=0
 I $$PRMSL,$$OPEN S QN=QN+QNORD("D")
 I $$PRMSD,$$OPEN S QN=QN+QNORD("R")
 I $$PRMSL,$$CLOSE S QN=QN+QNORDS("D")
 I $$PRMSD,$$CLOSE S QN=QN+QNORDS("R")
 Q QN
 ;
LMAM()
 Q $G(%ARG("LMAM"))
 ;
SUM(STAM) ;
 N SUM S SUM=0
 N AHMAM S AHMAM=^|$$^W3MAIN|P1PRM("MAM")
 ;;S ^AA("W4MSDMZV","AHMAM")=AHMAM
 I $$PRMSL,$$OPEN S SUM=SUM+$S($$LMAM:SSUM("D")*100/(100+AHMAM),1:SSUM("D"))
 I $$PRMSD,$$OPEN S SUM=SUM+$S($$LMAM:SSUM("R")*100/(100+AHMAM),1:SSUM("R"))
 I $$PRMSL,$$CLOSE S SUM=SUM+$S($$LMAM:SSUMS("D")*100/(100+AHMAM),1:SSUMS("D"))
 I $$PRMSD,$$CLOSE S SUM=SUM+$S($$LMAM:SSUMS("R")*100/(100+AHMAM),1:SSUMS("R"))
 Q SUM
 ;
PRMSL(STAM) ;
 Q $G(%ARG("PRMSL"))
 ;
PRMSD(STAM) ;
 Q $G(%ARG("PRMSD"))
 ;
OPEN(STAM) ;
 Q $G(%ARG("OPEN"))
 ;
CLOSE(STAM) ;
 Q $G(%ARG("CLOSE"))
 ;
CV ; 
 ;rgba(255, 0, 0,;
 ;rgba(0, 0, 255,;
 ;rgba(0, 255, 0,;
 ;rgba(255, 255, 0,;
 ;rgba(0, 255, 255,;
 ;rgba(255, 0, 255,;
 ;rgba(255, 106, 0,;
 ;rgba(47, 106, 0,;
 ;rgba(128, 128, 128,;
 ;rgba(192, 192, 192,;
 ;rgba(0, 0, 0,;
 Q  ;
 ;
VRM ; 
 S VRM=$$^W4MAIN("VRM")
 Q 
 ;
TBMAM ;
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("AFTERTAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S('$$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('0')"" >"
   W "</td>"
   W "<td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S($$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('1')"" >"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
SORT ; 
 W $$^%W1DICT("SORT")_"&nbsp;"
 W "<select id=""sort"" onChange=""Sort()"" >",! 
  W "<option value=""1"" "_$$SELECTED(1)_">"_$$^%W1DICT("SNIFNUMBER")_"</option>",!
  W "<option value=""2"" "_$$SELECTED(2)_">"_$$^%W1DICT("ORDQN")_"</option>",!
  W "<option value=""3"" "_$$SELECTED(3)_">"_$$^%W1DICT("SUM")_"</option>",!
  W "<option value=""4"" "_$$SELECTED(4)_">"_$$^%W1DICT("AVRGORD")_"</option>",!
  ;
 W "</select>",!
 Q 
 ;
SELECTED(SORT) ; 
 I SORT=1,$G(%ARG("SORT"))<2 Q "selected=""selected"" " 
 I SORT>1,$G(%ARG("SORT"))=SORT Q "selected=""selected"" " 
 Q ""
 ;
US(MSD) ;
 N OK S OK=1
 I $D(MMSD)>9,$G(MSD),'$D(MMSD(MSD)) S OK=0
 Q OK 
 ;
BACK ; 
 D ^W4BTN("BACK","parent.location.reload()","red")
 Q
 ;
PAPJ(MSDR) ; 
 I MSDR=10222 Q 1 
 Q 0 
 ;
 ; 
BODY ; 
 N INV,IND,K,MSD,FDB,QN,SUM,AVRG,NAME,AHUZ,DAT
 S INV=1 I $G(%ARG("SORT"))>1 S INV=-1
 S K=0
 ;
 ;;I $G(SHAA)'="" S ^AA("W4MSDMZV-BODY",SHAA,"TOT")=$G(TOT)
 S IND="" F  S IND=$O(@TMP@(IND),INV) Q:IND=""  D
 .S K=K+1
 .S FDB=$G(@TMP@(IND))
 .;;I $G(SHAA) D
 ..S ^AA("W4MSDMZV-BODY",SHAA,IND,"FDB")=FDB
 .S MSD=$P(FDB,"\") Q:MSD=""
 .S QN=$P(FDB,"\",2)
 .S SUM=$P(FDB,"\",3)
 .S AVRG=$P(FDB,"\",4)
 .S FDB=$P(FDB,"\",5,255)
 .S NAME=$$MSD^W3R(MSD)
 .S AHUZ="&nbsp;"
 .I TOT S AHUZ=$J(SUM*100/TOT,2,2)_"%"
 .S DAT=$ZD(DT,"DD.MM.YY")
 .
 .N QNO S QNO=QN ;;$$QNORD 
 .S SQN=SQN+QNO
 .S STOT=STOT+SUM
 .S ^[$$^W3MAIN]AA("MSDMZV",MSD)=SUM_"\"_STOT
 .
 .D
 ..I '$G(SHAA) D PCPROST Q
 ..I $G(LSHAA)'="",+SHAA=+LSHAA D PCPROST Q
 ..I $G(%ARG("OPNSHAA"))'="",+SHAA=+%ARG("OPNSHAA") D PCPROST Q
 .
 .S @VRM@(MSD)=NAME
 .S @VRM@(MSD,"VL")=SUM
 .S @VRM@(MSD,"CV")=$G(MCV(K))
 ;
 W "<tr style=""background-color:lightyellow;font-weight:bold"">"
  W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td>"_SQN_"</td>"
  W "<td>"_$J(STOT,2,2)_"</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  ;
 W "</tr>"
 Q
 ;
 ;
TBHOUR ; 
 N SHAA,MSD,K,QN,SUM
 S K=0
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 S (SSQN,SSTOT)=0
 K QN,SUM,LSHAA
 N SHAA S SHAA="" F  S SHAA=$O(MST(SHAA)) Q:SHAA=""  D
 .S LSHAA=SHAA
 .S MSD="" F  S MSD=$O(MST(SHAA,MSD)) Q:MSD=""  D
 ..S K=K+1
 ..D
 ...I $$PRMSD D
 ....S QN(SHAA)=$G(QN(SHAA))+$G(MST(SHAA,MSD,"QR"))
 ....S SUM(SHAA)=$G(SUM(SHAA))+$G(MST(SHAA,MSD,"SR"))
 ....S QN(SHAA,MSD)=$G(QN(SHAA,MSD))+$G(MST(SHAA,MSD,"QR"))
 ....S SUM(SHAA,MSD)=$G(SUM(SHAA,MSD))+$G(MST(SHAA,MSD,"SR"))
 ...
 ...I $$PRMSL D
 ....S QN(SHAA)=$G(QN(SHAA))+$G(MST(SHAA,MSD,"QD"))
 ....S SUM(SHAA)=$G(SUM(SHAA))+$G(MST(SHAA,MSD,"SD"))
 ....S QN(SHAA,MSD)=$G(QN(SHAA,MSD))+$G(MST(SHAA,MSD,"QD"))
 ....S SUM(SHAA,MSD)=$G(SUM(SHAA,MSD))+$G(MST(SHAA,MSD,"SD"))
 ;
 ;;M ^AA("W4MSDMZV-TBHOUR","MST")=MST
 ;
 N SHAA S SHAA="" F  S SHAA=$O(MST(SHAA)) Q:SHAA=""  D
 .W "<tr>"
 . W "<td colspan=""5"" onClick=""ClickShaa('"_SHAA_"')"" style=""cursor:pointer;text-align:center;background-color:brown;color:yellow;font-size:"_$$^W3FSZ(12)_""" >"  
 .  W SHAA_" - "_(SHAA+1)
 . W "</td>" 
 .W "</tr>",!
 .
 .S MSD="" F  S MSD=$O(MST(SHAA,MSD)) Q:MSD=""  D
 ..S K=K+1
 ..N Q,S S Q=$G(QN(SHAA,MSD)),S=$G(SUM(SHAA,MSD))
 ..N AVRG S AVRG="" I Q S AVRG=$J(S/Q,2,2)
 ..D
 ...I $G(%ARG("SORT"))=2 S IND=$J(Q*100,7)_$J(MSD,7) Q
 ...I $G(%ARG("SORT"))=3 S IND=$J(S*100,7)_$J(MSD,7) Q
 ...I $G(%ARG("SORT"))=4 S IND=$J(AVRG*100,7)_$J(MSD,7) Q
 ...S IND=MSD
 ..
 ..S @TMP@(IND)=MSD_"\"_Q_"\"_S_"\"_AVRG
 .
 .S (SQN,STOT)=0 
 .N TOT S TOT=$G(SUM(SHAA))
 .I $G(%ARG("OPN"))
 .D BODY
 .K @TMP
 .S SSQN=SSQN+SQN,SSTOT=SSTOT+STOT
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">"
  W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td>"_SSQN_"</td>"
  W "<td>"_$J(SSTOT,2,2)_"</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
 W "</tr>"
 W "</table>",!
 Q 
 ;
PCPROST ; 
 W "<tr id=""tr"_MSD_""" style=""cursor:pointer"" onClick=""ShowMsd('"_MSD_"','"_DAT_"')"">"
  W "<td id=""name"_MSD_""" >"
   W $$H2U^%L1FRM(NAME)
  W "</td>"
  W "<td>"_QNO_"</td>"
  W "<td>"_$J(SUM,2,2)_"</td>"
  W "<td>"_$S(QNO:$J(SUM/QNO,2,2),1:"&nbsp;")_"</td>"
  W "<td>"_AHUZ_"</td>"
 W "</tr>",! 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSDNAM
W4MSDNAM ; [ 10.02.19 09:03 ] [ 24.01.19 18:58 ] [ 17.02.17 20:36 ] 
 N STYLE S STYLE=""
 W "<table style=""font-size:"_$$^W3FSZ(18)_""">"
  I $G(%ARG("PRINT")) D
  .S STYLE=" style=""background-color:white;color:black"" "
  W "<tr><td "_STYLE_">"
   W $$H2U^%L1FRM($$MYNAME^W4KOTHSB)
  W "</tr></td>"
 W "</table>",!
 Q
 
 
 
 

W4MSDPAR
W4MSDPAR(MSD) ; [ 01.04.21 11:24 ] [ 10.12.13 10:34 ] [ 09.12.13 20:49 ] 
 S N="" F  S N=$O(^PAR(N)) Q:N=""  D
 .I $G(@$$GLTHUM^W4THUM(N))=1 D  Q
 ..K ^PAR(N),^P1EZA(N),^P1EZT(N),^P1EZI(N),^P1EZR(N)
 ..K ^P1EZH(N)
 .S PAROLD=N
 .I PAROLD[".",$P(PAROLD,".")=MSD Q
 .S PARNEW=MSD_"."_N
 .S ^P1PARMSD(MSD,PARNEW)=PAROLD
 .D SHIN1("P1BLRD",1)
 .D SHIN1("P1EZ",3)
 .D SHIN1("P1EZI",3)
 .D SHIN1("P1EZA",1)
 .D SHIN1("P1EZAI",2)
 .D SHIN1("P1EZH",1)
 .D SHIN1("P1EZR",3)
 .D SHIN1("P1EZRI",3)
 .D SHIN1("P1EZT",1)
 .D SHIN1("P1EZTI",2)
 .D SHIN1("P1SET",2)
 .D SHIN1("P1SETA",2)
 .D SHIN1("P1SETAI",1)
 .D SHIN1("P1SETM",2)
 .D SHIN1("P1TFRI",1)
 .D SHIN1("P1TFRIM",2)
 .D SHIN1("MHT",3)
 .D SHIN1("MHTSF",3)
 .D SHIN1("PARLKH",2)
 .D SHIN1("PARSHA",2)
 .D SHIN1("PARNL",2)
 .D SHIN1("PARSLK",2)
 .S SUG=$P(^PAR(PAROLD),"**",5),SUGNEW=SUG I SUG D
 ..S SUGNEW=MSD_"."_SUG
 ..S SH=$O(^P1TFRA(MSD,SUGNEW,999999),-1)+1
 ..S ^P1TFRA(MSD,SUGNEW,SH)=PARNEW
 ..M ^PARSUG(SUGNEW)=^PARSUG(SUG) K ^PARSUG(SUG)
 .;
 .D SHIN1("PAR",1)
 .S $P(^PAR(PARNEW),"**",5)=SUGNEW
 .S $P(^PAR(PARNEW),"**")=$TR($P(^PAR(PARNEW),"**"),"\","/")
 .S $P(^PAR(PARNEW),"**",11)=1
 ;
 S N="" F  S N=$O(^P1SETA(N)) Q:N=""  D
 .I N[(MSD_".") Q
 .M ^P1SETA(MSD_"."_N)=^P1SETA(N) K ^P1SETA(N)
 ;
 S N="" F  S N=$O(^P1EZA(N)) Q:N=""  I N[(MSD_".") D
 .S SET="" F  S SET=$O(^P1EZA(N,SET)) Q:SET=""  D
 ..Q:SET[(MSD_".")
 ..M ^P1EZA(N,"A"_MSD_"."_$E(SET,2,10))=^P1EZA(N,SET) K ^P1EZA(N,SET)
 ;
 S N="" F  S N=$O(^P1EZT(N)) Q:N=""  I N[(MSD_".") D
 .S SET="" F  S SET=$O(^P1EZT(N,SET)) Q:SET=""  D
 ..Q:SET[(MSD_".")
 ..M ^P1EZT(N,"A"_MSD_"."_$E(SET,2,10))=^P1EZT(N,SET) K ^P1EZT(N,SET)
 ;
 S N="" F  S N=$O(^P1EZI(N)) Q:N=""  I N[(MSD_".") D
 .S TSF="" F  S TSF=$O(^P1EZI(N,TSF)) Q:TSF=""  D
 ..Q:TSF[(MSD_".")
 ..M ^P1EZI(N,MSD_"."_TSF)=^P1EZI(N,TSF) K ^P1EZI(N,TSF)
 ..S ^P1EZ(MSD_"."_TSF)=N K ^P1EZ(TSF)
 ;
 S N="" F  S N=$O(^P1EZR(N)) Q:N=""  I N[(MSD_".") D
 .S TSF="" F  S TSF=$O(^P1EZR(N,TSF)) Q:TSF=""  D
 ..Q:TSF[(MSD_".")
 ..M ^P1EZR(N,MSD_"."_TSF)=^P1EZR(N,TSF) K ^P1EZR(N,TSF)
 Q
 ;
 ;
SHIN1(GLOB,PR) ;
 N GLOB1,N S GLOB1="^"_GLOB
 ;;W "GLOB="_GLOB_"  PAROLD="_PAROLD_"  PARNEW="_PARNEW,!
 I PR#2 D
 .I $D(@GLOB1@(PAROLD)),$D(@GLOB1@(PARNEW)) D SAVE(GLOB)
 .I $D(@GLOB1@(PAROLD)) D
 ..S MAC1=GLOB1_"(PAROLD)",MAC2=GLOB1_"(PARNEW)" D ^%S1GC1
 ..K @MAC1
 ;
 I PR\2 D
 .S N="" F  S N=$O(@GLOB1@(N)) Q:N=""  I $D(@GLOB1@(N,PAROLD)) D
 ..I '$D(@GLOB1@(N,PARNEW)) D
 ...S MAC1=GLOB1_"(N,PAROLD)",MAC2=GLOB1_"(N,PARNEW)" D ^%S1GC1
 ...K @MAC1
 Q
 ;
SAVE(GLB) ;
 N LAST S GLB1="^"_GLB
 S LAST=$O(^PARNEWER(9999999),-1)+1
 ;S MAC1=GLB1_"(PARNEW)",MAC2="^PARNEWER("""_GLB_""",LAST,PARNEW)" D ^%S1GC1
 K @GLB1@(PARNEW)
 Q
 

W4MSDPRT
W4MSDPRT ; [ 13.10.22 09:42 ] [ 12.09.17 13:56 ] [ 30.08.17 13:27 ] 
 N (JB,%ARG,%REM) S P1DZ=$$^W4DZ
 S JB=+$G(JB)
 D KILL^%W3DEB("W4MSDPRT")
 D PUT^%W3DEB("W4MSDPRT","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width=""80%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""8%"">"_$$^%W1DICT("NPP")_"</th>"
 W "  <th width=""12%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("ITEMSGROUP")_"</th>"
 W "  <th width=""20%"">"_$$^%W1DICT("RESTAURANT")_"</th>"
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 N I,N,IND
 S N="" F I=1:1 S N=$O(@$$^W4GL("W4MSDPRT")@(N)) Q:N=""  D
 .S @GLTMP@(N)=$G(@$$^W4GL("W4MSDPRT")@(N))
 .S @GLTMP@(N,"I")=I
 ;
 S GLTMP1=$$^W4MAIN("TMP1")
 K @GLTMP1
 ;
 I '$G(%ARG("SORT")) D
 .S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 ..S IND=N
 ..S @GLTMP1@(IND)=N
 ;
 I $G(%ARG("SORT"))=1 D
 .S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 ..S KV=+$$SUG^W4P(N)
 ..N IND S IND=$TR($J(KV,7)," ",0)_"_"_$TR($J(N,8)," ",0)
 ..S @GLTMP1@(IND)=N
 ;
 S N0="" S N0=$O(@GLTMP1@(N0)) S N=+$G(^(N0)) W "<tr id=""trid"_1_""">" W $$LINE("1;"_N) W "</tr>",!
 F I=2:1 S N0=$O(@GLTMP1@(N0)) Q:N0=""  S N=+$G(^(N0)) W "<tr id=""trid"_I_""">" W $$LINE(I_";"_N) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVEND(STAM) ;
 N N,PARHR,NOK
 D GLTMP
 S NOK=0
 ;
 ;;N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D  Q:NOK
 .S VL=$G(@GLTMP@(N)) I '$D(^(N,"DEL")),VL'?1N.N S NOK=$G(@GLTMP@(N,"I"))
 I NOK Q NOK
 ;
 K @$$^W4GL("W4MSDPRT")
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .S VL=$G(@GLTMP@(N))
 .I $D(@GLTMP@(N,"DEL")) Q
 .S @$$^W4GL("W4MSDPRT")@(N)=VL
 ;
 K @GLTMP
 ;
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
 ;
LINE(PRM) ;
 N I,PAR,N,ST
 S I=$P(PRM,";")
 S PAR=$P(PRM,";",2)
 N GLTMP D GLTMP
 S ST=""
 S ST=ST_" <td align=""center"" >"
  ;
 S ST=ST_"  <span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
 S ST=ST_"   onClick=""NewLine('"_I_"')""> + "
  S ST=ST_"  </span><br />"
  S ST=ST_"  <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
  S ST=ST_"   onClick=""DeleteRow('"_I_"')"" > - </span>"
  S ST=ST_" </td>"
  ;
  S ST=ST_" <td style=""text-align:center"" width=""25%"">"
   S ST=ST_$$VVPRT(I_";"_PAR)
  S ST=ST_"  </td>"
  ;
  N PARNAME S PARNAME=$$SHEM^W4P(PAR)
  S ST=ST_"  <td "_$$^%W1ALIGN_" id=""itemnm"_I_""" >"
   S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(PARNAME)
  S ST=ST_"  </td>"
  ;
  N GR,GRNAME S GR=$$SUG^W4P(PAR),GRNAME=""
  I GR S GRNAME=$G(@$$^W4GL("PARSUG")@(GR))
  S ST=ST_"  <td "_$$^%W1ALIGN_" id=""gr"_I_""" >"
   S ST=ST_"&nbsp;&nbsp;"_GR_"&nbsp;&nbsp;"_$$H2U^%L1FRM(GRNAME)
  S ST=ST_"  </td>"
  ;
  S ST=ST_"  <td align=""center"" >"
   N MSDR S MSDR=+$$MSDR^W4PRM
   S ST=ST_"<select id=""rest"_I_""" "
   S ST=ST_" onChange=""SetRest('"_I_"',this)"" "
   S ST=ST_">"
   S N="" F  S N=$O(^[$$^W3MAIN]W3MSDR(MSDR,N)) Q:N=""  D
   .I $$DLVWEB^W4DLVCSR,+MSDR=+N Q
   .S ST=ST_"<option value="""_N_""" "
   .I $G(PAR),N=$G(@$$^W4GL("W4MSDPRT")@(PAR)) S ST=ST_" selected=""selected"" "
   .S ST=ST_">"_$$NAME^W3MSD(N)_"</option>"
   S ST=ST_"</select>"
  S ST=ST_"  </td>"
  ;
 Q ST
 ;
 ;
SETPRT(PRM)
 D PUT^%W3DEB("W4MSDPRT-SETPRT","PRM=PRM")
 N PAR,I,VL
 S PAR=$P(PRM,";")
 I PAR="" Q "CODENOTEXIST"
 S I=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 N GLTMP D GLTMP
 ;
 I $G(@GLTMP@(PAR,"I")),^("I")'=I Q "SAMECODE"
 I '$D(@$$^W4GL("PAR")@(PAR)) Q "CODENOTEXIST"
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .I $G(^(N,"I"))=I,N'=PAR K @GLTMP@(N)
 S @GLTMP@(PAR)=VL
 S @GLTMP@(PAR,"I")=I
 N PAR1 S PAR1=$$SHEM^W4P(PAR)
 N GR,GR1 S GR1="",GR=$$SUG^W4P(PAR)
 I GR S GR1=$G(@$$^W4GL("PARSUG")@(GR))
 Q "OK~"_$$H2U^%L1FRM(PAR1)_"~"_$$H2U^%L1FRM(GR1)
 ;
SETREST(PRM)
 D PUT^%W3DEB("W4MSDPRT-SETREST","PRM=PRM")
 N PAR,I,VL
 S PAR=$P(PRM,";")
 I PAR="" Q "CODENOTEXIST"
 S VL=$P(PRM,";",2)
 N GLTMP D GLTMP
 I '$D(@$$^W4GL("PAR")@(PAR)) Q "CODENOTEXIST"
 I VL'?1N.N Q "NUMBERONLY"
 S @GLTMP@(PAR)=VL
 Q "OK"
 ;
DELROW(PAR) ;
 Q:$G(PAR)=""
 N GLTMP D GLTMP
 I '$D(@GLTMP@(PAR,"DEL")) S @GLTMP@(PAR,"DEL")=1 Q
 K @GLTMP@(PAR,"DEL")
 Q
 ;
VVPRT(PRM) ;
 N I,VL,IDCD,IDNM
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S IDCD="itemcd"_I
 S IDNM="itemnm"_I
 S PROC="SetPar(\'"_I_"\',\'"_IDCD_"\',\'"_IDNM_"\')"
 N FIND S FIND="Find('"_I_"','"_IDCD_"','"_IDNM_"','"_PROC_"')"
 N A
 S A="<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"id=""itemcd"_I_""" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img id=""filter"" src=""w3filter.jpg"" "
 S A=A_" onClick="""_FIND_""">"
 Q A
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSG
W4MSG(TXT,PRM) ; [ 03.05.18 14:51 ] [ 17.03.17 09:27 ] [ 
 S TXT=$G(TXT),PRM=$G(PRM)
 S TXT=$$CNWEB^%L1FRM(TXT)
 D CHPRM^%W1DICT
 Q $$H2U^%L1FRM(TXT)
 
 

W4MSGAI
W4MSGAI ; [ 23.03.25 17:14 ] [ 14.07.19 12:21 ] [ 15.11.18 09:51 ] 
 N (JB,%ARG,%REM)
 N TXT,I
 S TXT=$G(%ARG("TXT"))
 D PUT^%W3DEB("W4MSGAI","TXT=TXT")
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<br>",!
 W " <span style=""color:red; font-size:"_$$^W3FSZ(16)_""" >"_$$^%W1DICT("WARNING")_"</span>"
 W " <br><br>"
 W " <table>",!
 ;
 S EQ1=0,ERR=0
 ;
 F I=1:1:$L(TXT,";") D
 .S CPL=$P(TXT,";",I)
 .S SET=$P(CPL,":")
 .S IND=$P(CPL,":",2)
 .S EQ=$P(CPL,":",3) I EQ S EQ1=1
 .S MAX=$P(CPL,":",4)
 .D PUT^%W3DEB("W4MSGAI","EQ"_I_"=EQ")
 .Q:SET=""
 .W "  <tr>",!
 . W "   <td >"
 .  W "<span style=""text-decoration:underline;font-size:"_$$^W3FSZ(16)_";font-weight:bold;color:brown"">"
 .   W $$H2U^%L1FRM($$NMSET^W3SET(SET))
 . W "</span>"
 . W "<br><span style=""color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
 . I IND=0 W " "_$$^%W1DICT("ITEMSNOTCHOICED")
 . I +IND=.5 W " "_$$^%W1DICT("CHOICENOTFULL")
 . I IND=2 W " "_$$^%W1DICT("QNTOOMUCH")
 . I +IND=3 W " "_$$^%W1DICT("CHOICENOTFULL")
 . W "</span>",!
 . W "   </td>"
 .W "  </tr>",!
 .I EQ=1 D
 ..W "<tr>"
 .. W "<td>"
 ..  ;;N QNMAX S QNMAX=$$QNMAXN^W3SET(SET)
 ..  W $$^%W1DICT("CHOICEEXACTLY",MAX) S ERR=1
 .. W "</td>",!
 ..W "<tr>",!
 .I EQ=2 D  ; --- MINIMUM
 ..W "<tr>"
 .. W "<td>"
 ..  W $$^%W1DICT("CHOICEMINIMUM",MAX) S ERR=1
 .. W "</td>",!
 ..W "<tr>",!
 ;
 W " </table>",!
 W " <br><br>",!
 ;
 D
 .W "<input type=""button"" class=""btn"" style=""color:green"" value="""_$$^%W1DICT("SUBMIT")_""" "
 .W " "_$$^W4TOUCH_"=""Submit()"" "
 .W ">"
 .W "&nbsp;&nbsp;&nbsp;"
 .W "<input type=""button"" class=""btn"" style=""color:red"" value="""_$$^%W1DICT("CLOSE")_""" "
 .W " "_$$^W4TOUCH_"=""Cancel()"" "
 .W ">"
 ;;D
 .W "&nbsp;&nbsp;&nbsp;"
 .W "<input type=""button"" class=""btn"" style=""color:red"" value="""_$$^%W1DICT("CLOSE")_""" "
 .W " "_$$^W4TOUCH_"=""Cancel()"" "
 .W ">"
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSGDLG
W4MSGDLG ; [ 18.09.22 14:00 ] [ 
 Q
 ;
OPTIONS(STIN) ;
 N I,OPT,STOU S STOU=""
 F I=1:1:$L(STIN,"~") D
 .S OPT=$P(STIN,"~",I)
 .S STOU=STOU_"<option value="""_I_""" >"_$$H2U^%L1FRM(OPT)_"</option>"  
 Q STOU

W4MSGSIT
W4MSGSIT ; [ 31.10.19 17:42 ] [ 29.07.19 14:24 ] [ 28.07.19 16:30 ] 
 W "<br>",!
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 D DIVBUT
 W "<br>",!
 D TABL 
 ;;W "<br>",!
 ;;D DIVBUT 
 W "</div>",!
 Q
 ;
DIVBUT ;
 W "<table align=""center"" >",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("SHOWACTIVEMSGONLY"),"&nbsp;"
    W "<input type=""checkbox"" id=""ACT"" "
    I $G(%ARG("ACT")) W "checked=""checked"" "
    W " onClick=""ClickAct()"" />  ",!
   W "</td>"
   ; 
   W "<td width=""20%"">&nbsp;</td>"
   ;
   W "<td>"
    D ^W4BTN("NEWMSG","NewMsg()","green","",14,6)
   W "</td>"
   ;
   W "<td>&nbsp;</td>"
   W "<td>"
    D ^W4BTN("BACK","Back()","red","",14,6)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
TABL ;
 N GL D GL
 N IND S IND=+$G(%ARG("IND"))
 ;
 W "<table id=""Tbl"" align=""center"" border=""1"" cellpadding=""3"" width=""80%"" cellspacing=""0"" >",!
   W "<tr>"
    W "<th>"
     W $$^%W1DICT("NPP")
    W "</th>" 
    W "<th>"
     W $$^%W1DICT("MESSAGE")
    W "</th>" 
    W "<th>"
     W $$^%W1DICT("MEDATE")
    W "</th>" 
    W "<th>"
     W $$^%W1DICT("TODATE")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("MESHAA")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("ADSHAA")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("ACTIVE")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("EDIT")
    W "</th>"
   W "</tr>",!
   ; 
   S IND="" F II=1:1 S IND=$O(@GL@(IND),-1) Q:IND=""  D
   .S A=$G(^(IND))
   .D ST(IND,A)
 W "</table>",! 
 Q
 ;
 ;
ST(IND,A) ;
 I $G(%ARG("ACT")),'$$ACT(IND) Q
 ;
 W "<tr "
  D
  .I +IND=+$G(%ARG("IND")) W " style=""background-color:yellow"" " Q 
  .I '$G(%ARG("IND")),II=1 W " style=""background-color:yellow"" " Q 
  .I $$ACT(IND)=0 D
  ..W " style=""background-color:pink"" " Q 
 W ">",!
  ;
  W "<td>"
   W IND
  W "</td>"
  ;
  D PRS(A)
  W "<td width=""50%"">"
    W $$H2U^%L1FRM(TXT)
  W "</td>"
  ;
  W "<td align=""center"" dir=""LTR"">"
   W MEDAT
  W "</td>",!
  ;
  W "<td align=""center"" dir=""LTR"">"
   W ADDAT
  W "</td>",!
  ;
  W "<td align=""center"" dir=""LTR"">"
   W MESHAA
  W "</td>",!
  ;
  W "<td align=""center"" dir=""LTR"">"
   W ADSHAA
  W "</td>",!
  ;
  W "<td align=""center"">"
   W "<input type=""checkbox"" id=""act"_IND_""" "_$S(ACT:"checked=""checked"" ",1:"")_" onClick=""Active('"_IND_"')"" />",!
  W "</td>",!
  ;
  W "<td align=""center"" >"
   D ^W4BTN("EDIT","Edit('"_IND_"')","blue","","11","4")
  W "</td>",!
 W "</tr>",!
 Q
 ;
M1 ;
 N (JB,%ARG,%REM)
 D GL
 S IND=+$G(%ARG("IND"))
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<br>",!
 W "<span style=""color:brown;font-size:"_$$^W3FSZ(16)_""">"
 D
 .I 'IND W $$^%W1DICT("NEWMSG") Q
 .W $$^%W1DICT("MESSAGENUMBER",IND)
 ;
 W "</span>",!
 W "<br><br>",!
 W "<table align=""center"" >",!
  W "<tr>",!
   W "<td colspan=""8"">",!
    W "<table width=""100%"">",!
     W "<tr>",!
      W "<td>",!
        W $$^%W1DICT("MESSAGE")
      W "</td>",!
      D TDSP
      ;
      W "<td width=""70%"">",!
       W "<textarea id=""msg"" cols=""60"" rows=""3"" >"
         W $$H2U^%L1FRM($$MSG(IND))
        W "</textarea>",!
       W "</td>",!
      W "</tr>",!
     W "</table>",!
   W "</td>",!
  W "</tr>",!
  ;
  D TRSP
  ;
  W "<tr>",!
   W "<td>",!
    W $$^%W1DICT("MEDAT")
   W "</td>",!
   ;
   W "<td dir=""LTR"" "_$$^%W1ALIGN_""">",!
    D ^%W1DAT("medat",$$MEDAT(IND))
   W "</td>",!
   ;
   D TDSP
   ;
   W "<td>",!
    W $$^%W1DICT("ADDAT")
   W "</td>",!
   W "<td dir=""LTR"" "_$$^%W1ALIGN_""">",!
    D ^%W1DAT("addat",$$ADDAT(IND))
   W "</td>",!
   W "</tr>",!
   ;
   D TRSP 
   ;
   W "<tr>",!
    W "<td>",!
     W $$^%W1DICT("MESHAA")
    W "</td>",!
   ;
   W "<td>",!
    W "<table>",!
     W "<tr >",!
      S %W1DAT("TDTM")=""
      D TIME^%W1DAT("meshaa",$$MESHAA(IND))
     W "</tr>",!
    W "</table>",!
   W "</td>",!
   ;
   D TDSP,TDSP
   ;
   W "<td>",!
    W $$^%W1DICT("ADSHAA")
   W "</td>",!
   W "<td>",!
    W "<table>",!
     W "<tr >",!
      S %W1DAT("TDTM")=""
      D TIME^%W1DAT("adshaa",$$ADSHAA(IND))
     W "</tr>",!
    W "</table>",!
   W "</td>",!
   D TDSP
   W "</tr>",!
   D TRSP
   D TRSP
   W "<tr>"
    W "<td colspan=""8"" align=""center"" >",!
     D ^W4BTN("SUBMIT","Submit()","green","",14,6)
     W $$NBSP^%L1FRM(10) 
     D ^W4BTN("BACK","Back()","red","",14,6)
    W "</td>",!
   W "</tr>",!
  W "</table>",!
  W "<br><br>",!
  W "</div>",!
  ;
 Q  ;
 ;
GL ;
 S GL=$$^W4GL("W4MSGSIT")
 Q
 ;
PRS(A) ;
 D PRS^%L1FRM(A,"TXT\MEDAT\ADDAT\MESHAA\ADSHAA\ACT","\")
 Q
 ;
GETA(IND)
 N GL,A D GL
 N A S A=$G(@GL@(IND))
 D PRS(A)
 Q
 ;
MSG(IND) ; 
 N TXT,MEDAT,ADDAT,MESHAA,ADSHAA,ACT
 D GETA(IND)
 Q TXT
 ;
MEDAT(IND) ; 
 N TXT,MEDAT,ADDAT,MESHAA,ADSHAA,ACT
 D GETA(IND)
 Q MEDAT
 ;
ADDAT(IND) ; 
 N TXT,MEDAT,ADDAT,MESHAA,ADSHAA,ACT
 D GETA(IND)
 Q ADDAT
 ;
MESHAA(IND) ; 
 N TXT,MEDAT,ADDAT,MESHAA,ADSHAA,ACT
 D GETA(IND)
 Q MESHAA
 ;
ADSHAA(IND) ; 
 N TXT,MEDAT,ADDAT,MESHAA,ADSHAA,ACT
 D GETA(IND)
 Q ADSHAA
 ;
ACT(IND) ;
 N TXT,MEDAT,ADDAT,MESHAA,ADSHAA,ACT
 D GETA(IND)
 I $$^%L1DC(ADDAT,3)<$$^W4DZ S ACT=0
 Q ACT
 ;
TDSP ;
 W "<td>&nbsp;</td>",!
 Q
TRSP ;
 W "<tr>",!
  D TDSP
 W "</tr>",!
 Q
 ;
SET(PRM) ;
 N (JB,%ARG,PRM)
 D PRS^%L1FRM(PRM,"IND~MSG~MEDAT~ADDAT~MESHAA~ADSHAA~ACT","~")
 D GL
 I 'IND S IND=$O(@GL@(99999),-1)+1
 S MSG=$$INVH^%L1FRM(MSG)
 I MSG="" Q "NOTMSG"
 I MEDAT=""!(ADDAT="") Q "NOTDATE"
 I (MESHAA="00:00"!(MESHAA=" 0:00"))&(ADSHAA="00:00"!(ADSHAA=" 0:00")) D
 .S (MESHAA,ADSHAA)=""
 ;
 I ACT="" S ACT=1
 I $$^%L1DC(ADDAT,3)<$$^W4DZ S ACT=0
 S @GL@(IND)=MSG_"\"_MEDAT_"\"_ADDAT_"\"_MESHAA_"\"_ADSHAA_"\"_ACT
 Q 1
 ;
 ;
SETACT(PRM) ;
 N IND,VL,GL D GL
 S IND=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S $P(@GL@(IND),"\",6)=VL
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSHBSY
W4MSHBSY(LKH) ; [ 06.06.22 14:02 ] [ 03.04.22 19:04 ] [ 24.10.21 16:39 ] 
 I '$G(LKH) Q 0
 N POS S POS=$$BUSY^W4KLFL(LKH)
 I POS Q POS
 D SET(LKH)
 Q 0
 ;
SET(LKH) ; 
 I '$G(LKH) Q
 N DVN S DVN=$$^W4MYDVN
 N N S N="" F  S N=$O(@$$^W4GL("FLAG")@(N)) Q:N=""  D
 .I $G(^(N))=DVN K ^(N)
 S @$$^W4GL("FLAG")@(LKH)=DVN
 Q
 
 
 
 
 
 
 
 
 

W4MSKHST
W4MSKHST ; [ 17.12.23 12:50 ] [ 30.11.23 08:16 ] [ 
 N (JB,%ARG,%REM)
 S FSZ=22
 S DV=$$^W4MYDVN
 S GL=$$^W4GL("W4TMP")
 S GLREF=$$^W4GL("W4TMPREF")
 S NMB=$$GETP^%W1PRM("NMB")
 ;
 I $G(%ARG("DAT")) S DZ=$$^%L1DC(%ARG("DAT"),3)
 I '$G(%ARG("DAT")) S DZ=$$^W4DZ
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<p style=""font-size:"_$$^W3FSZ(FSZ)_";color:brown"">"
  W $$^%W1DICT("WEIGHTORDERLIST",NMB) 
  W $$NBSP^%L1FRM(5)
  D ^W4BCK
 W "</p>",!
 ;
 W "<table id=""TblMsk"" border=""1"" cellpadding=""10"" cellspacing=""1"" "
  W "style=""font-size:"_$$^W3FSZ(FSZ)_""" " 
 W ">",! 
  W "<tr>"
   W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>"
   W "<th>"_$$^%W1DICT("ISSUETIME")_"</th>"
   W "<th>"_$$^%W1DICT("POS")_"</th>"
   W "<th>"_$$^%W1DICT("WORKER")_"</th>"
   W "<th>"_$$^%W1DICT("SUM")_"</th>"
   W "<th>"_$$^%W1DICT("CSRORDNUMBER")_"</th>"
  W "</tr>",!
 
 S N="" F  S N=$O(@GLREF@(DZ,N)) Q:N=""  D
 .S A=$G(^(N)) 
 .I $P(A,"\")'=NMB Q
 .I $D(@GL@(N,"ZMANI")) Q
 .
 .S HZKUP=$$HZKUP^W4POSMSK(A)
 .
 .W "<tr "
 .I HZKUP W "style=""background-color:white;color:grey"" "
 .W ">",! 
 . W "<td "_$$CLICK(N)_" >"
 .  W N
 . W "</td>"
 .
 . W "<td align=""center"" "_$$CLICK(N)_" >"
 .  W $P($$TIME^W4POSMSK(A)," ",2)
 . W "</td>"
 .
 . W "<td "_$$CLICK(N)_" >"
 .  W $$POS^W4POSMSK(A)
 . W "</td>"
 .
 . W "<td "_$$CLICK(N)_" >"
 .  W $$H2U^%L1FRM($$^W4NAME($$OVED^W4POSMSK(A)))
 . W "</td>"
 .
 . W "<td "_$$CLICK(N)_">"
 .  W $J($$SUM^W4POSMSK(A),2,2)
 . W "</td>"
 .
 . ;;W "<td "_$$CLICKHZKUP(HZKUP)_" >"
 . W "<td "_$$CLICK(N)_" >"
 .  W HZKUP
 . W "</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
CLICK(N) ;
 N ST S ST=$$^W4TOUCH_"=""ShowHzmMsk('"_N_"')"" "
 Q ST 
 ;
CLICKHZKUP(HZKUP) ;
 N ST S ST=$$^W4TOUCH_"=""ShowHzKup('"_HZKUP_"')"" "
 Q ST 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSL
W4MSL(NMB) ; [ 11.07.23 12:18 ] [ 24.10.13 10:43 ] [ 27.03.10 20:27 ] 
 I $L($G(NMB))<4 Q 0
 ;;I '$G(NMB) Q 0
 Q 1
 ;
HZM(HZM)
 I '$G(HZM) Q 0
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 Q $$W4MSL(NMB)
 ;
MSL(HZM)
 I '$G(HZM) Q 0
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I $$W4MSL(NMB) Q 1
 I $$TAWM^W4DLPK(NMB) Q 1
 Q 0
 

W4MSLMZV
W4MSLMZV ; [ 16.01.25 18:37 ] [ 09.06.24 13:33 ] [ 07.06.24 02:05 ] 
 N (JB,%ARG,%REM,MSDR,DT,DAT,VRM)
 G BG
 ;
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S DT=+$H
 I $P($H,",",2)<(3600*6) S DT=DT-1
 I $G(%ARG("DAT")) S DT=$$^%L1DC(%ARG("DAT"),3)
 S DAT=$ZD(DT,"DD.MM.YY")
 D VRM K @VRM
 ;
 I $G(%ARG("NET"))=2,'$G(%ARG("MSDR")) D  Q
 .W "<p align=""center"">MSDR NOT DEFINED !</p>",!
 I $G(%ARG("NET"))=2,'$G(%ARG("USR")) D  Q
 .W "<p align=""center"">USER NOT DEFINED !</p>",!
 I $G(%ARG("NET"))=2,'$G(%ARG("PSW")) D  Q
 .W "<p align=""center"">PASSWORD NOT DEFINED !</p>",!
 ;
 I $G(%ARG("USR")) D
 .N USR S USR=%ARG("USR")
 .N GL S GL="^|$$^W3MAIN|W4MNLNET"
 .N N S N="" F  S N=$O(@GL@(MSDR,N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..I USR'=$P(A,"\") Q
 ..S PSWM=$P(A,"\",2)
 ..I PSWM'=$G(%ARG("PSW")) Q
 ..S MSDM=$P(A,"\",3) Q:'MSDM
 ..S MMSD(MSDM)=""
 ; 
 I $G(%ARG("USR")),$D(MMSD)<10 D  Q
 .W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 .W "<br><br><br>",!
 .W "<p style=""font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("PSWINVALID")_"</p>",!
 .D BACK 
 .W "</div>",!
 ;
BG ;
 S TOT=0,QND=0
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 .I '$$US(MSD) Q
 .D GET^W4MZVM(MSD,DT)
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT("DELIVERYSTATUS",DAT)
  W "</span>",!
  W "<br>"
  W "<span style=""font-size:"_$$^W3FSZ(11)_""" >"
   W $$^%W1DICT("SHOWTIME",$ZD($H,"DD.MM.YY")_"<>"_$ZD($H,"24:60"))
  W "</span>",!
 W "<br><br>",!
 ;
 ;;D TBMAM
 ;;W "<p></p>",!
 ;;D TBLPRM
 ;;W "<br>"
 ;
 D SORT
 W "<p></p>",!
 ;
 W " <table border=""1"" cellpadding=""5"" cellspacing=""0"" >"
 W "<tr>"
  W "<th>"_$$^%W1DICT("RESTNAME")_"</th>"
  W "<th>"_$$^%W1DICT("UNTILMIN",20)_"</th>"
  W "<th>"_$$^%W1DICT("UNTILMIN",30)_"</th>"
  W "<th>"_$$^%W1DICT("UNTILMIN",60)_"</th>"
  W "<th>"_$$^%W1DICT("OVERMIN",60)_"</th>"
  W "<th>"_$$^%W1DICT("OPENORDERS")_"</th>"
  W "<th>"_$$^%W1DICT("SENDEDORDS")_"</th>"
  W "<th>"_$$^%W1DICT("COURIERS")_"</th>"
 W "</tr>",!
 ;
 S K=0
 S (SQNHZ1M,SQNHZ2M,SQNHZ3M,SQNHZ4M,SQNSEND,SSHL)=0
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  D
 .I '$$US(MSD) Q
 .S K=K+1
 .S FDB=$G(^[$$^W3MAIN]W4MSDMZV(MSD,DT)) D
 ..D GET^W4MZVM(MSD,DT)
 ..S IND=MSD
 ..I $G(%ARG("SORT"))=2 S IND=$J(QNHZ1M*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=3 S IND=$J(QNHZ2M*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=4 S IND=$J(QNHZ3M*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=5 S IND=$J(QNHZ4M*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=6 S IND=$J((QNHZ1M+QNHZ2M+QNHZ3M+QNHZ4M)*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=7 S IND=$J(QNSEND*100,7)_$J(MSD,7)
 ..I $G(%ARG("SORT"))=8 S IND=$J(SHL*100,7)_$J(MSD,7)
 ..
 ..S @TMP@(IND)=MSD_"\"_FDB
 ;
 S INV=1 I $G(%ARG("SORT"))>1 S INV=-1
 S IND="" F  S IND=$O(@TMP@(IND),INV) Q:IND=""  D
 .S K=K+1
 .S FDB=$G(@TMP@(IND))
 .S MSD=$P(FDB,"\")
 .S NAME=$$MSD^W3R(MSD)
 .S DAT=$ZD(DT,"DD.MM.YY")
 .
 .W "<tr id=""tr"_MSD_""" style=""cursor:pointer"" onClick=""ShowMsd('"_MSD_"','"_DAT_"')"">"
 . W "<td id=""name"_MSD_""" >"
 .  W $$H2U^%L1FRM(NAME)
 . W "</td>"
 . S QNHZ1M=$P(FDB,"~",31)
 . S QNHZ2M=$P(FDB,"~",32)
 . S QNHZ3M=$P(FDB,"~",33)
 . S QNHZ4M=$P(FDB,"~",34)
 . S QNSEND=$P(FDB,"~",36)
 . S SHL=$P(FDB,"~",37)
 . S SQNHZ1M=SQNHZ1M+QNHZ1M
 . S SQNHZ2M=SQNHZ2M+QNHZ2M
 . S SQNHZ3M=SQNHZ3M+QNHZ3M
 . S SQNHZ4M=SQNHZ4M+QNHZ4M
 . S SQ=QNHZ1M+QNHZ2M+QNHZ3M+QNHZ4M
 . S SQNSEND=SQNSEND+QNSEND
 . S SSHL=SSHL+SHL
 .
 . W "<td >"_QNHZ1M_"</td>"
 . W "<td >"_QNHZ2M_"</td>"
 . W "<td >"_QNHZ3M_"</td>"
 . W "<td "_$S(QNHZ4M:"style=""color:yellow;background-color:red;text-align:center""",1:"")_">"_QNHZ4M_"</td>"
 . I 'SQ S SQ=""
 . W "<td >"_SQ_"</td>"
 . W "<td >"_QNSEND_"</td>"
 . W "<td >"_SHL_"</td>"
 .
 . S @VRM@(MSD)=NAME
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">"
  W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td>"_SQNHZ1M_"</td>"
  W "<td>"_SQNHZ2M_"</td>"
  W "<td>"_SQNHZ3M_"</td>"
  W "<td>"_SQNHZ4M_"</td>"
  W "<td>"_(SQNHZ1M+SQNHZ2M+SQNHZ3M+SQNHZ4M)_"</td>"
  W "<td>"_SQNSEND_"</td>"
  W "<td>"_SSHL_"</td>"
 W "</tr>"
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 I $G(%ARG("USR")) W $$NBSP^%L1FRM(5) D BACK Q
 ;
 W "</div>",!
 Q
 ;
 ;
TRSP ;
 W "<tr>"
  W "<td>&nbsp;</td><td>&nbsp;</td>"
 W "</tr>",!
 Q
 ;
 ;
INIT ;
 D PUT^%W1PRM("SMALL",1)
 I $G(%ARG("NOSMALL")) D PUT^%W1PRM("SMALL",0)
 D ^W4BGBODY
 I $G(%ARG("SIMUL"))'="" D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 Q
 ;
CV ; 
 ;rgba(255, 0, 0,;
 ;rgba(0, 0, 255,;
 ;rgba(0, 255, 0,;
 ;rgba(255, 255, 0,;
 ;rgba(0, 255, 255,;
 ;rgba(255, 0, 255,;
 ;rgba(255, 106, 0,;
 ;rgba(47, 106, 0,;
 ;rgba(128, 128, 128,;
 ;rgba(192, 192, 192,;
 ;rgba(0, 0, 0,;
 Q  ;
 ;
VRM ; 
 S VRM=$$^W4MAIN("VRM")
 Q 
 ;
SORT ; 
 W $$^%W1DICT("SORT")_"&nbsp;"
 W "<select id=""sort"" onChange=""Sort()"" >",! 
  W "<option value=""1"" "_$$SELECTED(1)_">"_$$^%W1DICT("SNIFNUMBER")_"</option>",!
  W "<option value=""2"" "_$$SELECTED(2)_">"_$$^%W1DICT("UNTILMIN",20)_"</option>",!
  W "<option value=""3"" "_$$SELECTED(3)_">"_$$^%W1DICT("UNTILMIN",30)_"</option>",!
  W "<option value=""4"" "_$$SELECTED(4)_">"_$$^%W1DICT("UNTILMIN",60)_"</option>",!
  W "<option value=""5"" "_$$SELECTED(5)_">"_$$^%W1DICT("OVERMIN",60)_"</option>",!
  W "<option value=""6"" "_$$SELECTED(6)_">"_$$^%W1DICT("OPENORDERS")_"</option>",!
  W "<option value=""7"" "_$$SELECTED(7)_">"_$$^%W1DICT("SENDEDORDS")_"</option>",!
  W "<option value=""8"" "_$$SELECTED(8)_">"_$$^%W1DICT("COURIERS")_"</option>",!
 W "</select>",!
 Q 
 ;
SELECTED(SORT) ; 
 I SORT=1,$G(%ARG("SORT"))<2 Q "selected=""selected"" " 
 I SORT>1,$G(%ARG("SORT"))=SORT Q "selected=""selected"" " 
 Q ""
 ;
US(MSD) ;
 N OK S OK=1
 I $D(MMSD)>9,$G(MSD),'$D(MMSD(MSD)) S OK=0
 Q OK 
 ;
BACK ; 
 D ^W4BTN("BACK","parent.location.reload()","red")
 Q
 ;
PAPJ(MSDR) ; 
 I MSDR=10222 Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSLQN
W4MSLQN(HZM) ; [ 16.11.20 10:11 ] [ 
 N TSHL,HZMI
 S TSHL=$$TSHL^W4HZMST(HZM)
 S HZMI=$$I^W4DEL(HZM)
 I HZMI,HZMI'=HZM Q -1
 I HZMI,HZMI=HZM Q 0 
 I 'HZMI,TSHL<0 Q 0
 Q 1 
 

W4MSLYR
W4MSLYR(YEAR,MM1,MM2)  ; [ 18.08.25 15:07 ] [ 07.01.25 14:06 ] [ 11.04.24 05:24 ] 
 N (JB,%ARG,%REM,YEAR,MM1,MM2)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D GLTMP
 D GLTMP1
 S YY=YEAR
 S VRMG=$$^W4MAIN("VRMG") K @VRMG
 S %ARG("MSLYR")=1
 ;
 D PRESEK
 ;
 D TBMAM
 ;
 D SHOW("YEARMONTHDLVREPORT")
 ;
 ;;K @GLTMP,@GLTMP1
 Q
 ;
 ;
SHOW(KOT)
 N I,VL,AV
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT(KOT,YEAR_"<>"_MM1_"<>"_MM2)
  W "</span>",!
  ;
  D DIVEXC(KOT,MM1,MM2)
  ;
  W "<table style=""table-layout:fixed"" width=""100%"" border=""1"" cellspacing=""0"" cellpadding=""2"">",!
  W "<thead class=""hdfix"">",!
   W "<tr>"
    W "<th>"_$$^%W1DICT("EMPID")_"</th>"
    W "<th>"_$$^%W1DICT("EMPNAME")_"</th>"
    W "<th>"_$$^%W1DICT("TOTALORDQN")_"</th>"
    W "<th>"_$$^%W1DICT("TOTALORDSUM")_"</th>"
    W "<th>"_$$^%W1DICT("CANCELQN")_"</th>"
    W "<th>"_$$^%W1DICT("CANCELSUM")_"</th>"
    W "<th>"_$$^%W1DICT("CANCELBIDQN")_"</th>"
    W "<th>"_$$^%W1DICT("CANCELBIDSUM")_"</th>"
    W "<th>"_$$^%W1DICT("DISCOUNTS")_"</th>"
    W "<th>"_$$^%W1DICT("FROMSITEQN")_"</th>"
    W "<th>"_$$^%W1DICT("FROMSITESUM")_"</th>"
    W "<th>"_$$^%W1DICT("ORDPLACESUM")_"</th>"
    W "<th>"_$$^%W1DICT("NEWCUSTQN")_"</th>"
    W "<th>"_$$^%W1DICT("RPTCUSTQN")_"</th>"
    W "<th>"_$$^%W1DICT("ALLCUSTOMERS")_"</th>"
   W "</tr>",!
   W "</thead>",! 
   ;
   K SUM,SSUM
   F MM=+MM1:1:+MM2 D
   .W "<tr>",!
   .W " <td colspan=""15"" style=""text-align:center;background-color:yellow;font-weight:bold"">"
   . W $$^%W1DICT("MM"_MM)
   .W "</td>"
   .W "</tr>",!
   .
   .S MKBL="" F  S MKBL=$O(@GLTMP@(MM,MKBL)) Q:MKBL=""  D
   ..W "<tr>" 
   ..W $$TDL_MKBL_"</td>",!
   ..S MKBL1=$$^W4NAME(MKBL) 
   ..W "<td>"_$$H2U^%L1FRM(MKBL1)_"</td>"
   ..
   ..D TDQS(MM,MKBL,"ORD")
   ..
   ..D TDQS(MM,MKBL,"DEL")
   ..
   ..D TDQS(MM,MKBL,"DELBID")
   ..
   ..D SSUM(MM,MKBL,"DISC")
   ..
   ..D TDQS(MM,MKBL,"WEBORD")
   ..
   ..D
   ...N VL S VL=$G(@GLTMP@(MM,MKBL,"ORDSUM"))-$G(@GLTMP@(MM,MKBL,"WEBORDSUM"))
   ...W $$TDL_$$RKV(VL,MM)_"</td>",!
   ...S SUM(MM,"ORDPLACESUM")=$G(SUM(MM,"ORDSUM"))-$G(SUM(MM,"WEBORDSUM"))
   ...S SSUM("ORDPLACESUM")=$G(SSUM("ORDSUM"))-$G(SSUM("WEBORDSUM"))
   ..
   ..N NC,I S NC="",I=0 F  S NC=$O(@GLTMP@(MM,MKBL,"NEWCUST",NC)) Q:NC=""  S I=I+1
   ..N SNEW S SNEW=I
   ..S SUM(MM,"NEWCUST")=$G(SUM(MM,"NEWCUST"))+SNEW
   ..S SSUM("NEWCUST")=$G(SSUM("NEWCUST"))+SNEW
   ..S SUM(MM,"ALLCUST")=$G(SUM(MM,"ALLCUST"))+SNEW
   ..S SSUM("ALLCUST")=$G(SSUM("ALLCUST"))+SNEW
   ..W $$TDL_I_"</td>",!
   ..
   ..N RC,I S RC="",I=0 F  S RC=$O(@GLTMP@(MM,MKBL,"RPTCUST",RC)) Q:RC=""  S I=I+1
   ..N SRPT S SRPT=I
   ..S SUM(MM,"RPTCUST")=$G(SUM(MM,"RPTCUST"))+SRPT
   ..S SSUM("RPTCUST")=$G(SSUM("RPTCUST"))+SRPT
   ..S SUM(MM,"ALLCUST")=$G(SUM(MM,"ALLCUST"))+SRPT
   ..S SSUM("ALLCUST")=$G(SSUM("ALLCUST"))+SRPT
   ..
   ..W $$TDL_I_"</td>",!
   ..
   ..W $$TDL_(SNEW+SRPT)_"</td>",!
   ..
   ..W "</tr>",!
   .
   .W "<tr style=""background-color:lightyellow;font-weight:bold"" >"
   .F J=1,2 W "<td>&nbsp;</td>" 
   .F J="ORDQN","ORDSUM","DELQN","DELSUM","DELBIDQN","DELBIDSUM","DISCSUM","WEBORDQN","WEBORDSUM","ORDPLACESUM","NEWCUST","RPTCUST","ALLCUST" D  
   ..N VL S VL=$G(SUM(MM,J))
   ..I $E(J,$L(J)-2,$L(J))="SUM" S VL=$$RKV(VL,MM)
   ..I J["CUST" S VL=VL_" "_$$TOTLK(MM,J)
   ..W $$TDL_VL_"</td>"
   .W "</tr>",!
   ;
   W "<tr style=""background-color:yellow;font-weight:bold"" >"
   F J=1,2 W "<td>&nbsp;</td>" 
   F J="ORDQN","ORDSUM","DELQN","DELSUM","DELBIDQN","DELBIDSUM","DISCSUM","WEBORDQN","WEBORDSUM","ORDPLACESUM","NEWCUST","RPTCUST","ALLCUST" D  
   .N VL S VL=$G(SSUM(J))
   .I $E(J,$L(J)-2,$L(J))="SUM" S VL=$$RKV(VL,MM)
   .I J["CUST" S VL=VL_" "_$$TOTLKA(J) 
   .W $$TDL_VL_"</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
GLTMP1 ;
 S GLTMP1=$$^W4MAIN("TMP1")
 Q
 ;
 ;
SUM(MM,MKBL,KIND,HZ) ;
 N A S A=$G(@$$^W4ORD@(HZ))
 N QN 
 N TS S TS=$P(A,"\",11)
 N QN S QN=$$^W4QNORD(HZ)
 S @GLTMP@(MM,MKBL,KIND_"QN")=$G(@GLTMP@(MM,MKBL,KIND_"QN"))+QN
 S @GLTMP@(MM,MKBL,KIND_"SUM")=$G(@GLTMP@(MM,MKBL,KIND_"SUM"))+TS
 S @GLTMP@(MM,MKBL,KIND_"SUM",HZ)=QN_"\"_TS
 Q
 ;
 ;
TOTLK(MM,KIND)
 N COLLK S COLLK=0
 N N S N="" F  S N=$O(@GLTMP1@(MM,KIND,N)) Q:N=""  S COLLK=COLLK+1
 Q "<span style=""color:grey"">[ "_COLLK_" ]</span>"
 ;
TOTLKA(KIND)
 N COLLK S COLLK=0
 N M S M="" F  S M=$O(@GLTMP1@(M)) Q:M=""  D
 .N L S L="" F  S L=$O(@GLTMP1@(M,KIND,L)) Q:L=""  D
 ..S COLLK=COLLK+1
 ;
 Q "<span style=""color:grey"">[ "_COLLK_" ]</span>"
 ;
 ;
PREP(JB,YEAR,MM1,MM2,MKRDAT) ;
 I YEAR?4N S YEAR=$E(YEAR,3,4)
 I '$G(MM1) S MM1="01"
 I '$G(MM2) S MM2="12"
 S MM1=$TR($J(MM1,2)," ",0)
 S MM2=$TR($J(MM2,2)," ",0)
 S DT1=$$^%L1DC("01"_MM1_YEAR,3)
 S LD=$$LMM^%L1DC(MM2_YEAR)
 S DT2=$$^%L1DC(LD_MM2_YEAR,3)
 ;
 D GLTMP K @GLTMP
 D GLTMP1 K @GLTMP1
 ;
 N GL S GL=$$^W4REF
 I $G(MKRDAT)=1 S GL=$$^W4GL("W4LINKD")
 I $G(MKRDAT)=2 S GL=$$^W4GL("W4ISH")
 ;;S ^AA("W4MSLYRPREP","MKRDAT")=MKRDAT
 ;;S ^AA("W4MSLYRPREP","GL")=GL
 ;
 F DT=DT1:1:DT2 D
 .S MM=+$ZD(DT,"MM")
 .N HZ
 .S HZ="" F  S HZ=$O(@GL@(DT,HZ)) Q:HZ=""  D
 ..;
 ..I $$HZM^W4MSD(HZ) Q
 ..I $$I^W4PIZUL(HZ) Q;-- 03-12/23
 ..
 ..I $$I^W4DEL(HZ) D  Q
 ...N A S A=$G(@$$^W4ORD@(HZ))
 ...N QN 
 ...N TS S TS=$P(A,"\",11)
 ...N QN S QN=1
 ...S MKBL=$$MKBL^W4HZMST(HZ) I MKBL="" S MKBL="00000"
 ...
 ...I '$$^W4HZMH(HZ),TS<0 D
 ....S @GLTMP@(MM,MKBL,"DELQN")=$G(@GLTMP@(MM,MKBL,"DELQN"))+QN
 ....S @GLTMP@(MM,MKBL,"DELSUM")=$G(@GLTMP@(MM,MKBL,"DELSUM"))-TS
 ....S @GLTMP@(MM,MKBL,"DELSUM",HZ)=QN_"\"_TS
 ...
 ...I $$^W4HZMH(HZ) D
 ....N TS1 S TS1=0
 ....N N S N="" F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N D
 .....N A S A=$G(^(N))
 .....I $P(A,"\",7)<0,$P(A,"\")'["%" S TS1=TS1+$P(A,"\",7)
 ....
 ....S @GLTMP@(MM,MKBL,"DELBIDQN")=$G(@GLTMP@(MM,MKBL,"DELBIDQN"))+QN
 ....S @GLTMP@(MM,MKBL,"DELBIDSUM")=$G(@GLTMP@(MM,MKBL,"DELBIDSUM"))-TS1
 ....S @GLTMP@(MM,MKBL,"DELBIDSUM",HZ)=QN_"\"_TS1
 ..
 ..
 ..I $$^W4HZMH(HZ) Q
 ..
 ..N SHNH S SHNH=$$SHNH^W4HZMST(HZ)
 ..I SHNH D
 ...S MKBL=$$MKBL^W4HZMST(HZ) I MKBL="" S MKBL="00000"
 ...S @GLTMP@(MM,MKBL,"DISCSUM")=$G(@GLTMP@(MM,MKBL,"DISCSUM"))+SHNH
 ...S @GLTMP@(MM,MKBL,"DISCSUM",HZ)=SHNH
 .. 
 ..D VIB(DT,HZ)
 ;
 D PUT^%W1PRM("W4MSLYR",1)
 ;
 ;;K @GLTMP
 Q
 ;
 ;
VIB(DT,HZ) ;
 N MM S MM=+$ZD(DT,"MM")
 N A,MKBL
 ;;S ^AA0(HZ)=""
 I $$DEL^W4DEL(HZ) Q
 I $$^W4HZMH(HZ) Q
 I $$I^W4PIZUL(HZ) Q
 ;
 ;;S ^AA1(HZ)=MM_"\"_DT
 ;
 S MKBL=$$MKBL^W4HZMST(HZ) I MKBL="" S MKBL="00000"
 ;
 D SUM(MM,MKBL,"ORD",HZ) ;
 D
 .N MKR1 S MKR1=$$MKRDLV1^W4HZMST(HZ)
 .I 'MKR1,$G(@$$^W4ORD@(HZ,"MKRDLV")) S MKR1=^("MKRDLV")
 .I MKR1=$$WEBMKR D SUM(MM,MKBL,"WEBORD",HZ) 
 ;
 D CUST(MKBL,HZ,DT,"NEW")
 D CUST(MKBL,HZ,DT,"RPT")
 Q
 ;
 ;
DIVEXC(KOT,MM1,MM2) ;
 Q:$$PRINT
 W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 ;
 D ^W4MSLYRX(KOT,MM1,MM2)
 ;
 N COD S COD="W4MSLYR"
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 N IND S IND=COD_$$^W4MYDVN
 ;
 N IND1 S IND1=$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 ;
 S FL=COD_$$^W4MYDVN_"_"_IND1
 S FLCSV=DIR_FL_".csv"
 ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 Q
 ;
 ;
PRINT(STAM) ;
 Q $G(%ARG("PRINT"))
 ;
TDTOT ;
 W "<td style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">"
 Q
 ;
FF ;
 I $$PRINT D
 .S %ARG("PRINT")=1
 .W "<p style=""page-break-before:always"">",!
 Q
 ;
PRESEK ;
 I $$PRINT W $$^W4PRESEK_"<hr>"
 Q
 ;
TBMAM ; 
 D TBMAM^W4YOM ; 
 Q
 ;
TDQS(MM,MKBL,KIND) ;
 N VL S VL=$G(@GLTMP@(MM,MKBL,KIND_"QN"))
 W $$TDL_VL_"</td>"
 ;
 S SUM(MM,KIND_"QN")=$G(SUM(MM,KIND_"QN"))+VL
 S SSUM(KIND_"QN")=$G(SSUM(KIND_"QN"))+VL
 ;
 D SSUM(MM,MKBL,KIND) 
 Q
 ;
 ;
SSUM(MM,MKBL,KIND)
 N VL
 S VL=$G(@GLTMP@(MM,MKBL,KIND_"SUM"))
 W $$TDL_$$RKV(VL,MM)_"</td>",!
 ;
 S SUM(MM,KIND_"SUM")=$G(SUM(MM,KIND_"SUM"))+VL
 S SSUM(KIND_"SUM")=$G(SSUM(KIND_"SUM"))+VL
 N AHMAM
 Q
 ;
 ;
RKV(VL,MM) ; 
 N AHMAM
 S MM=$TR($J(MM,2)," ",0)
 N YY S YY=YEAR I $L(YEAR)=4 S YY=$E(YEAR,3,4)
 N DD S DD=$$^%L1DC("01"_MM_YY,3)
 S AHMAM=$$MAMD^W4L(DD)
 I $$LMAM S VL=$J(VL*100/(100+AHMAM),2,2)
 Q VL 
 ;
LMAM(STAM) ; 
 Q $G(%ARG("LMAM")) 
 ;
CUST(MKBL,HZ,DT,PR) ; 
 N GL S GL=$$GL
 N DAT,DAT1,DAT2,DT1,DT2,MM
 S DAT=$ZD(DT,"DDMMYY")
 S MM=+$ZD(DT,"MM")
 S DAT1="01"_$E(DAT,3,6)
 S DT1=$$^%L1DC(DAT1,3)
 S DAT2=$$LMM^%L1DC(DT)_$E(DAT,5,6)
 S DT2=$$^%L1DC(DAT2,3)
 N CODE S CODE=$$NMB^W4HZMST(HZ)
 N OK S OK=0
 N GL S GL=$$^W4GL("W4LINKI")
 ;
 I $G(CODE) D
 .N MSD S MSD=$$GETP^%W1PRM("MSD") I 'MSD S MSD=1
 .N DTS S DTS=""
 .N HZ1 S HZ1=$O(@GL@(CODE,MSD,"")) Q:'HZ1
 .S DTS=$G(^(HZ1))
 .I $G(PR)="NEW",DTS'<DT1,DTS'>DT2 D
 ..S @GLTMP@(MM,MKBL,"NEWCUST",CODE)=""
 ..S @GLTMP@(MM,MKBL,"NEWCUST",CODE,HZ)=""
 ..S @GLTMP1@(MM,"NEWCUST",CODE)=""
 .
 .I $G(PR)="RPT",DTS<DT1,DTS>(DT1-364) D
 ..S @GLTMP@(MM,MKBL,"RPTCUST",CODE)=""
 ..S @GLTMP@(MM,MKBL,"RPTCUST",CODE,HZ)=""
 ..S @GLTMP1@(MM,"RPTCUST",CODE)=""
 .
 .S @GLTMP@(MM,MKBL,"ALLCUST",CODE)=""
 .S @GLTMP@(MM,MKBL,"ALLCUST",CODE,HZ)=""
 .S @GLTMP1@(MM,"ALLCUST",CODE)=""
 Q
 ; 
 ;
GL() ; 
 Q $$^W4GL("W4LINKD") 
 ;
EX(MM,CODE,KIND)
 Q 0
 N OK S OK=0
 N MKB S MKB="" F  S MKB=$O(@GLTMP@(MM,MKB)) Q:MKB=""  D
 .I $D(@GLTMP@(MM,MKB,KIND,CODE)) S OK=1
 Q OK
 ;
TDL() 
 Q "<td dir=""LTR"" align=""right"">"
 ;
WEBMKR() ; 
 Q 10 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSLYRX
W4MSLYRX(KOT,MM1,MM2,IND1) ; [ 07.01.25 19:29 ] [ 20.08.23 06:11 ] [ 19.08.23 21:10 ] 
 N (JB,%ARG,KOT,KIND,FLCSV,MM1,MM2,IND1)
 M ^ARG=%ARG
 S LNG=$$^%W1LNG
 D GLTMP^W4MSLYR
 ;
 S COD="W4MSLYR"
 S FL=$$FL^%W1FREPX(COD,"csv")
 ;
 S FLCSV=FL_".csv"
 ;
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 ;
 D OPEN^%W1FREPX(FLCSV)
 ;
 ;
 S ST=$S($G(%ARG("LMAM")):$$DICT("BEFORETAX"),1:$$DICT("AFTERTAX"))
 D W(ST)
 ;
 S ST=$$DICT("MM")_$$DICT("EMPID")_$$DICT("EMPNAME")_$$DICT("TOTALORDQN")
 S ST=ST_$$DICT("TOTALORDSUM")_$$DICT("CANCELQN")_$$DICT("CANCELSUM")
 S ST=ST_$$DICT("CANCELBIDQN")_$$DICT("CANCELBIDSUM")_$$DICT("DISCOUNTS")
 S ST=ST_$$DICT("FROMSITEQN")_$$DICT("FROMSITESUM")_$$DICT("ORDPLACESUM")
 S ST=ST_$$DICT("NEWCUSTQN")_$$DICT("RPTCUSTQN")_$$DICT("ALLCUSTOMERS")
 D W(ST)
 ;
 S YEAR=$G(%ARG("YY")) I 'YEAR S YEAR=$ZD($H,"YYYY")
 F MM=MM1:1:MM2 D
 .S MKBL="" F  S MKBL=$O(@GLTMP@(MM,MKBL)) Q:MKBL=""  D
 ..S MKBL1=$$^W4NAME(MKBL)
 ..S ORDQN=$G(@GLTMP@(MM,MKBL,"ORDQN"))
 ..S ORDSUM=$G(@GLTMP@(MM,MKBL,"ORDSUM"))
 ..S DELQN=$G(@GLTMP@(MM,MKBL,"DELQN"))
 ..S DELSUM=$G(@GLTMP@(MM,MKBL,"DELSUM"))
 ..S DELBIDQN=$G(@GLTMP@(MM,MKBL,"DELBIDQN"))
 ..S DELBIDSUM=$G(@GLTMP@(MM,MKBL,"DELBIDSUM"))
 ..S DISCSUM=$G(@GLTMP@(MM,MKBL,"DISCSUM"))
 ..S WEBORDQN=$G(@GLTMP@(MM,MKBL,"WEBORDQN"))
 ..S WEBORDSUM=$G(@GLTMP@(MM,MKBL,"WEBORDSUM"))
 ..S ORDPLACESUM=ORDSUM-WEBORDSUM
 ..S NEWCUST=$$SUM(MM,MKBL,"NEWCUST")
 ..S RPTCUST=$$SUM(MM,MKBL,"RPTCUST")
 ..S ALLCUST=NEWCUST+RPTCUST
 ..
 ..S ST=MM_","_$$RKV(MKBL)_$$RKV(MKBL1)_$$RKV(ORDQN)_$$RKV(ORDSUM,MM)
 ..S ST=ST_$$RKV(DELQN)_$$RKV(DELSUM,MM)
 ..S ST=ST_$$RKV(DELBIDQN)_$$RKV(DELBIDSUM,MM)
 ..S ST=ST_$$RKV(DISCSUM,MM)_$$RKV(WEBORDQN)_$$RKV(WEBORDSUM,MM)_$$RKV(ORDPLACESUM,MM)
 ..S ST=ST_$$RKV(NEWCUST)_$$RKV(RPTCUST)_$$RKV(ALLCUST)
 ..D W(ST)
 ;
 C FLCSV
 Q
 ;
 ;
RKV(VL,MM) ;
 I $G(MM) S VL=$$RKV^W4MSLYR(VL,MM)
 Q $$RKV^%W1PCEX(VL)
 ;
DICT(KEY) ;
 N RKV S RKV=$$TV^%W1DICT($$^%W1LNG,KEY)
 Q $$RKV(RKV)
 ;
W(ST) ;
 U FLCSV W ST,!
 Q
 ;
SUM(MM,MKBL,KIND) 
 N SUM S SUM=0
 N N S N="" F  S N=$O(@GLTMP@(MM,MKBL,KIND,N)) Q:N=""  S SUM=SUM+1
 Q SUM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MSPYOM
W4MSPYOM(HZM) ; [ 21.12.20 12:24 ] [ 09.07.18 08:55 ] [ 14.02.17 20:00 ] 
 I $G(HZM)="" Q ""
 N DZ S DZ=$$^W4DZ
 N NOM S NOM=$P($G(@$$^W4REF@(DZ,HZM)),",")
 I 'NOM Q 0
 Q (NOM+$G(@$$^W4PRM@("MSPYOMSM")))
 ;
TX(HZM) ;
 I $$ENG^W4HZTH Q "Daily No : "_$$W4MSPYOM(HZM)
 Q $$W4MSPYOM(HZM)_" : inei 'qn"
 
 
 
 
 
 
 
 
 
 
 

W4MTAW
W4MTAW(STAM) ; [ 08.02.23 14:23 ] [ 08.12.20 07:28 ] [ 18.06.20 10:40 ] 
 Q +$G(@$$^W4PRM@("MTAW"))
 ;
POS(STAM) ;
 ;;I $G(%REM)="" Q 0
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$SUPER^W3PRM Q MYDVN
 I $$KUPA^W4PLUK(MYDVN),MYDVN<1000,$$^W4MSD($$GETP^%W1PRM("NMB")) Q MYDVN
 ;;I $G(%REM),+$G(@$$^W4PRM@("MTAW",%REM)) Q ^(%REM)
 Q 0
 ;
MTAW(STAM)
 I $$W4MTAW!$$POS Q 1
 Q 0
 ;
FAST(NMB) ;
 I $$MTAW Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB) Q 1
 Q 0
 
 
 

W4MTN
W4MTN(NMB) ;  [ 07.03.16 09:11 ] [ 12.09.08 01:08 ] [ 24.12.01 12:45 PM ] [
 I $G(NMB),$L($G(NMB))<4,$$SUGL1^W4L(NMB)["pzn" Q 1
 Q 0
 

W4MTREP
W4MTREP ; [ 30.08.21 09:44 ] [ 07.02.21 15:15 ] [ 27.11.19 03:28 ] 
 N (JB,%ARG,%REM)
 S SET=9
 S DAT1=$G(%ARG("MEDAT"))
 S DAT2=$G(%ARG("ADDAT"))
 S VRM=$$^W4MAIN("VRM") K @VRM
 D FRMVC^W4DP1
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S GL=$$^W4GL("W4SETMT")
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S IND=N I IND>100000000 D 
 ..S IND=N-100000000
 .S @TMP@(+IND)=$G(@TMP@(+IND))+A
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table id=""Tbl"" width=""70%"" cellpadding=""3"">",!
   W "<tr>"
    W "<th>"
      W $$^%W1DICT("CODE")
    W "</th>"
    W "<th width=""40%"">"
      W $$^%W1DICT("NAME")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("QNMEAT")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("QNSOLD")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("QNMTSOLD")
    W "</th>"
   W "</tr>",!
   ;
  S (SQN,SQNM)=0
  ;
  S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S QNMT=$G(@GL@(N))*.001 Q:'QNMT
  .;;Q:'$G(@TMP@(N))
  .;
  .W "<tr>"
  . W "<td>"
  .  W N
  . W "</td>" 
  .
  . W "<td>"
  .  W $$H2U^%L1FRM($$SHEM^W4P(N))
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(QNMT,3,3)
  . W "</td>" 
  .
  .  S QN=+$G(@TMP@(N))
  .  S SQN=SQN+QN
  . W "<td>"
  .  W QN
  . W "</td>" 
  .
  . W "<td>"
  .  S QNMTSOLD=QN*QNMT
  .  W $J(QNMTSOLD,3,3)
  .  S SQNM=SQNM+QNMTSOLD 
  . W "</td>" 
  .W "</tr>"
  ;
  W "<tr style=""background-color:yellow;font-weight:bold"">"
   W "<td>&nbsp;</td>"
   W "<td>&nbsp;</td>"
   W "<td>&nbsp;</td>"
   W "<td>"_SQN_"</td>"
   W "<td>"_$J(SQNM,3,3)_"</td>"
  W "</tr>",!
  ;
  W "</table>",!
 W "</div>",!
 ;
 W "<script>",!
   S HD=$$^%W1DICT("MTREPHD",$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))_"<br><br>"
   S HD="<span style=""font-size:"_$$^W3FSZ(14)_""" >"_HD_"</span>"
   W "GetId(""hd"").innerHTML='"_HD_"'"
 W "</script>",!
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MUCHIT
W4MUCHIT(STAM) ; [ 12.12.25 12:09 ] [ 02.12.21 16:20 ] [ 
 I $$SUPER^W3PRM Q 1
 N N,I S N="" S I=0 F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  S:'$$NOPAR^W4PRTVW(N) I=I+1
 I I>$$MAXIT Q 1
 Q 0
 ;
SUG(SUG)
 I '$G(SUG) Q $$W4MUCHIT
 N N,I S N="" S I=0 F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I $$SUG^W4P(N)'=SUG Q
 .I '$$NOPAR^W4PRTVW(N) S I=I+1
 ;
 I I>$$MAXGR Q 1
 Q 0
 ;
 ;
MSG(KV,SPAN)
 I '$G(KV) Q 0
 I '$G(SPAN) S SPAN=4
 I '$$^W4VWGR(KV),$$SUG(KV) D  Q 1
 .W "<tr><td colspan=""5"" style=""text-align:center;font-size:"_$$^W3FSZ(18)_";color:red"">"
 . W $$^%W1DICT("TOOMUCHITEMSINGROUP")
 .W "</td></tr>",!
 Q 0
 ;
MAXIT(STAM) ;
 N MAXIT S MAXIT=$G(@$$^W4PRM@("MUCHIT"))
 I MAXIT<3000 S MAXIT=3000
 Q MAXIT
 ;
MAXGR(STAM) ;
 N MAXGR S MAXGR=$G(@$$^W4PRM@("MUCHITGR"))
 I MAXGR<100 S MAXGR=100
 Q MAXGR
 
 
 
 
 
 
 
 

W4MULTY
W4MULTY(STAM) ; [ 02.10.18 10:11 ] [ 21.07.11 18:32 ] [ 02.07.11 16:47 ] [
 Q '$G(@$$^W4PRM@("NOMULTY"))
 ;
 I $G(@$$^W4PRM@("MULTY")) Q 1
 Q 0
 

W4MVC1
W4MVC1 ; [ 30.11.14 16:26 ] [ 21.11.13 10:19 ] [ 15.09.13 14:37 ]
GET ;
 N GL,TMP D GL,TMP K @TMP
 N N,A S N="",I=0
 M @TMP=@GL
 Q
 ;
SAVEND ;
 N GL,TMP D GL,TMP K @GL
 M @GL=@TMP
 K @TMP
 Q
 ;
GL S GL=$$^W4GL("W4MVC1")
 Q
TMP S TMP=$$^W4MAIN("TMPMVC")
 Q
 ;
VLD(PRM) ;
 D PRS^%L1FRM(PRM,"MVC;MVCN;SET;QNMVC;HNH;MEDAT;ADDAT",";")
 I QNMVC'>0 Q "QNNOTVALID;name"_MVC_"dop2"
 I HNH'>0 Q "DISCNOTVALID;name"_MVC_"dop3"
 I $$^%L1DC(MEDAT,3)>$$^%L1DC(ADDAT,3) Q "RANGENOTVALID;name"_MVC_"dop5IDdd"
 Q 1

W4MVC11
W4MVC11 ; [ 20.07.23 14:00 ] [ 30.06.21 10:42 ] [ 05.03.14 10:13 ] 
GET ;
 N GL,TMP D GL,TMP K @TMP
 N N,A S N="",I=0
 M @TMP=@GL
 Q
 ;
SAVEND ;
 N GL,TMP D GL,TMP K @GL
 M @GL=@TMP
 K @TMP
 Q
 ;
GL S GL=$$^W4GL("W4MVC11")
 Q
TMP S TMP=$$^W4MAIN("TMPMVC")
 Q
 ;
VLD(PRM) ;
 D PRS^%L1FRM(PRM,"MVC;MVCN;SET;GR;DAY1;DAY2;TIM1;TIM2",";")
 I 'SET&'GR Q "SETORGROUPMUSTBEFILLED;name"_MVC
 I SET,GR Q "ORSETORGROUP;name"_MVC
 I DAY1>DAY2 Q "RANGENOTVALID;name"_MVC_"dop3"
 Q 1
 ;
SET(PRM) ;
 N CD11 S CD11=$P(PRM,";")
 S @$$^W4PRM@("CD11")=CD11
 N NOASK11 S NOASK11='$P(PRM,";",2)
 S @$$^W4PRM@("NOASK11")=NOASK11
 Q
 ;
VLDTIME() ;
 N (JB)
 N GL D GL
 N D S D=$$^%L1DC($$^W4DZ,8)
 N MIN S MIN=$P($H,",",2)\60
 I MIN<($$SHAAZ^W4PRM*60) S MIN=(24*60)+MIN
 ;
 S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .N A S A=$G(^(N,1))
 .S D1=$P(A,"\",3)
 .S D2=$P(A,"\",4)
 .S MIN1=$P(A,"\",5) S MIN1=MIN1*60+$P(MIN1,":",2)
 .;;S MIN1=$$MIN24(MIN1)
 .S MIN2=$P(A,"\",6) S MIN2=MIN2*60+$P(MIN2,":",2)
 .S MIN2=$$MIN24(MIN2) 
 .;
 .I D'<D1,D'>D2,MIN'<MIN1,MIN'>MIN2 S OK=N
 Q OK
 ;
 ;
MIN24(MIN) ;
 I MIN,MIN<($$SHAAZ^W4PRM*60) S MIN=(24*60)+MIN
 Q MIN
 
 
 
 
 
 
 
 

W4MVC3
W4MVC3 ; [ 11.04.24 05:24 ] [ 19.01.24 07:40 ] [ 26.06.23 13:22 ] 
GET ;
 N GL,TMP D GL,TMP K @TMP
 N N,A S N="",I=0
 M @TMP=@GL
 Q
 ;
SAVEND ;
 N GL,TMP D GL,TMP K @GL
 M @GL=@TMP
 K @TMP
 Q
 ;
GL S GL=$$^W4GL("W4MVC3")
 Q
TMP S TMP=$$^W4MAIN("TMPMVC")
 Q
 ;
VLD(PRM) ;
 D PRS^%L1FRM(PRM,"MVC;MVCN;SET;QNMVC;SETM;MHM;MEDAT;ADDAT",";")
 I QNMVC'>0 Q "QNNOTVALID;name"_MVC_"dop2"
 ;;S ^AA("W4MVC3-VLD","MEDAT")=MEDAT
 ;;S ^AA("W4MVC3-VLD","ADDAT")=ADDAT
 I $$^%L1DC(MEDAT,3)>$$^%L1DC(ADDAT,3) Q "RANGENOTVALID;name"_MVC_"dop5IDdd"
 Q 1
 ;
VLDDT() ;
 N OK S OK=0
 N GL D GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N A S A=$G(^(N,1))
 .N MEDAT,ADDAT,MEDT,ADDT
 .S MEDAT=$P(A,"\",5),MEDT=$$^%L1DC(MEDAT,3)
 .S ADDAT=$P(A,"\",6),ADDT=$$^%L1DC(ADDAT,3)
 .N DZ S DZ=$$^W4DZ
 .I DZ'<MEDT,DZ'>ADDT S OK=1
 Q OK
 
 
 
 

W4MVC4
W4MVC4 ; [ 17.06.26 10:56 ] [ 24.07.24 14:34 ] [ 11.04.24 05:24 ] 
GET ;
 N GL,TMP D GL,TMP K @TMP
 N N,A S N="",I=0
 M @TMP=@GL
 Q
 ;
GETMAX(PRT) ;
 N MAX S MAX=$P($G(@$$^W4GL("W4MVC4")@(PRT)),"\",1)
 Q MAX
 ;
GETMEDAT(PRT) ;
 N MEDAT S MEDAT=$P($G(@$$^W4GL("W4MVC4")@(PRT)),"\",2)
 Q MEDAT
 ;
GETADDAT(PRT) ;
 N ADDAT S ADDAT=$P($G(@$$^W4GL("W4MVC4")@(PRT)),"\",3)
 Q ADDAT
 ;
 ;
SAVE(PRM)
 N CD,MAX,MEDAT,ADDAT
 S CD=$P(PRM,";") Q:CD=""
 S MAX=$P(PRM,";",3)
 S MEDAT=$P(PRM,";",4)
 S ADDAT=$P(PRM,";",5)
 S @$$^W4GL("W4MVC4")@(CD)=MAX_"\"_MEDAT_"\"_ADDAT
 Q
 ;
 ;
GL S GL=$$^W4GL("W4MVC4")
 Q
TMP S TMP=$$^W4MAIN("TMPMVC")
 Q
 ;
VLD(PRM) ;
 D PRS^%L1FRM(PRM,"PRT;PRT1;QNMAX;MEDAT;ADDAT",";")
 I QNMAX'>0 Q "QNNOTVALID;name"_MVC_"dop2"
 ;;S ^AA("W4MVC4-VLD","MEDAT")=MEDAT
 ;;S ^AA("W4MVC4-VLD","ADDAT")=ADDAT
 I $$^%L1DC(MEDAT,3)>$$^%L1DC(ADDAT,3) Q "RANGENOTVALID;name"_MVC_"dop5IDdd"
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MVC5
W4MVC5 ; [ 17.06.26 10:56 ] [ 26.07.24 10:25 ] [ 24.07.24 14:34 ] 
GETNM(MVC) ;
 N NM S NM=$P($G(@$$GL@(MVC)),"\",1)
 Q NM
 ;
GETSET(MVC) ;
 N SET S SET=$P($G(@$$GL@(MVC)),"\",2)
 Q SET
 ;
GETMH(MVC) ;
 N MH S MH=$P($G(@$$GL@(MVC)),"\",3)
 Q MH
 ;
GETMAX(MVC) ;
 N MAX S MAX=$P($G(@$$GL@(MVC)),"\",4)
 Q MAX
 ;
GETMEDAT(MVC) ;
 N MEDAT S MEDAT=$P($G(@$$GL@(MVC)),"\",5)
 Q MEDAT
 ;
GETADDAT(MVC) ;
 N ADDAT S ADDAT=$P($G(@$$GL@(MVC)),"\",6)
 Q ADDAT
 ;
 ;
SAVE(PRM)
 ;;S ^AA("W4MVC5-SAVE","PRM")=PRM
 N MVC,NMMVC,SET,MH,MAX,MEDAT,ADDAT
 S MVC=$P(PRM,";") Q:MVC=""
 S NMMVC=$P(PRM,";",2)
 S SET=$P(PRM,";",3) Q:SET=""
 S MH=$P(PRM,";",4)
 S MAX=$P(PRM,";",5)
 S MEDAT=$P(PRM,";",6)
 S ADDAT=$P(PRM,";",7)
 S @$$^W4GL("W4MVC5")@(MVC)=NMMVC_"\"_SET_"\"_MH_"\"_MAX_"\"_MEDAT_"\"_ADDAT
 Q
 ;
 ;
VLD(PRM) ;
 D PRS^%L1FRM(PRM,"NM;SET;MH;QNMAX;MEDAT;ADDAT",";")
 I QNMAX'>0 Q "QNNOTVALID;name"_MVC_"dop2"
 ;;S ^AA("W4MVC5-VLD","MEDAT")=MEDAT
 ;;S ^AA("W4MVC5-VLD","ADDAT")=ADDAT
 I $$^%L1DC(MEDAT,3)>$$^%L1DC(ADDAT,3) Q "RANGENOTVALID;name"_MVC_"dop5IDdd"
 Q 1
 ;
GL() ;
 Q $$^W4GL("W4MVC5")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MVCAH
W4MVCAH ; [ 30.11.14 17:15 ] [ 21.11.13 10:19 ] [ 15.09.13 14:37 ]
GET ;
 N GL,TMP D GL,TMP K @TMP
 N N,A S N="",I=0
 M @TMP=@GL
 Q
 ;
SAVEND ;
 N GL,TMP D GL,TMP K @GL
 M @GL=@TMP
 K @TMP
 Q
 ;
GL S GL=$$^W4GL("W4MVCAH")
 Q
TMP S TMP=$$^W4MAIN("TMPMVC")
 Q
 ;
VLD(PRM) ;
 D PRS^%L1FRM(PRM,"MVC;MVCN;SET;HNAH;MEDAT;ADDAT",";")
 I HNAH'>0 Q "DISCNOTVALID;name"_MVC_"dop2"
 I MVCN="" Q "SALENAMEMUSTBEFILLED;name"_MVC
 I $$^%L1DC(MEDAT,3)>$$^%L1DC(ADDAT,3) Q "RANGENOTVALID;name"_MVC_"dop4IDdd"
 Q 1

W4MVCHR
W4MVCHR ; [ 02.08.23 17:09 ] [ 28.04.20 10:18 ] [ 19.11.17 18:19 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 W "<div align=""center"" >",!
 W $$^W4DVTBFX("94%"),!
 W "<table id=""TblMvc"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" >",!
 W "<thead class=""hdfix"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 ;
 W "<th >&nbsp;</th>"
 W "<th >"_$$^%W1DICT("FROMGROUP")_"</th>"
 W "<th >"_$$^%W1DICT("TOGROUP")_"</th>"
 W "<th >"_$$^%W1DICT("FROMWEEKDAY")_"</th>"
 W "<th >"_$$^%W1DICT("TOWEEKDAY")_"</th>"
 W "<th >"_$$^%W1DICT("MESHAA")_"</th>"
 W "<th >"_$$^%W1DICT("ADSHAA")_"</th>"
 W "<th >"_$$^%W1DICT("KINDOFTABLE")_"</th>"
 W "<th >"_$$^%W1DICT("CUSTGROUP")_"</th>"
 W "<th >"_$$^%W1DICT("DIAP")_"</th>"
 W "<th >"_$$^%W1DICT("DISCPERCENT")_"</th>"
 W "</tr>",!
 W "</thead>",!
 ;
 D GLHNS
 N N,I
 S N="",I=0 F  S N=$O(@GLHNS@(N)) Q:N=""  D
 .S A=$G(^(N))
 .W "<tr id=""tr"_N_""" >",! S I=I+1
 .W "<td id=""oper"_N_""" style=""background-color:lightgray"">"
 . W $$OPER(N)
 .W "</td>",!
 .W "<td align=""center"">" W $$SELGROUP(N,"from",$$FROMGROUP(A)) W "</td>"
 .W "<td align=""center"">" W $$SELGROUP(N,"to",$$TOGROUP(A)) W "</td>"
 .W "<td align=""center"">" W $$SELDAY(N,"from",$$FROMDAY(A)) W "</td>"
 .W "<td align=""center"">" W $$SELDAY(N,"to",$$TODAY(A)) W "</td>"
 .W "<td align=""center"" dir=""LTR"">" W $$SELSHAA(N,"from",$$FROMSHAA(A)) W "</td>"
 .W "<td align=""center"" dir=""LTR"">" W $$SELSHAA(N,"to",$$TOSHAA(A)) W "</td>"
 .W "<td align=""center"">" W $$SELKINDTABLE(N,$$KINDTABLE(A)) W "</td>"
 .W "<td align=""center"">" W $$SELCUSTGROUP(N,$$CUSTGROUP(A)) W "</td>"
 .W "<td align=""center"">" W $$SELDIAP(N,$$DIAP(A)) W "</td>"
 .W "<td align=""center"">" W $$INPDISC(N,$$DISC(A)) W "</td>"
 .
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 ;
SAVEBG(STAM) ;
 D GLHNS
 L +@GLHNS:2 E  Q 0
 K @GLHNS
 Q 1
 ;
SAVE(PRM) ;
 N GLHNS,IND
 D GLHNS
 D PRS^%L1FRM(PRM,"MEGR;ADGR;MEDAY;ADDAY;MESHAA;ADSHAA;SUGS;CUSTGR;DIAP;DISC",";")
 S IND=$O(@GLHNS@(99999),-1)+1
 I 'DISC Q 0
 N A
 S $P(A,"\",1)=MEGR
 S $P(A,"\",12)=ADGR
 S $P(A,"\",8)=MEDAY
 S $P(A,"\",9)=ADDAY
 S $P(A,"\",3)=MESHAA
 S $P(A,"\",4)=ADSHAA
 S $P(A,"\",6)=SUGS
 S $P(A,"\",10)=CUSTGR
 S $P(A,"\",14)=DIAP
 S $P(A,"\",5)=DISC
 ;
 S @GLHNS@(IND)=A
 D ^%S2GLSV(GLHNS_"("""_IND_""")",$$^W4FGIB)
 Q 1
 ;
SAVEND(PRM) ;
 D GLHNS
 S @$$^W4PRM@("MHSHAA")=$P(PRM,";")-1
 S @$$^W4PRM@("HNHTIM")=$P(PRM,";",2)-1
 S @$$^W4PRM@("TSFMVC")=$P(PRM,";",3)-1
 L -@GLHNS
 Q
 ;
OPER(N) ;
 N ST
 S ST="<span onClick=""InsertRow('"_N_"')"" style="""_$$FONTFM^W3CSS_";color:green;font-size:"_$$^W3FSZ(16)_";text-align:center;cursor:pointer"">+</span><br>"
 S ST=ST_"<span onClick=""DelRow('"_N_"')"" style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(18)_";text-align:center;cursor:pointer"">-</span>"
 Q ST
 ;
SELGROUP(N,PR,GR) ;
 N ST S ST=""
 I $G(N) S ST="<select id=""gr"_PR_N_""" onChange=""SetMod()"">"
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D
 .S II=II+1
 .S ST=ST_"<option value="""_NN_""""
 .I $G(GR),+GR=+NN S ST=ST_" selected=""selected"""
 .I '$G(GR),II=1 S ST=ST_" selected=""selected"""
 .S ST=ST_" >"_NN_" "_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(NN)))_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
SELDAY(N,PR,DAY) ;
 N ST S ST=""
 I $G(N) S ST="<select id=""day"_PR_N_""" onChange=""SetMod()"">"
 N I
 F I=1:1:7 D
 .S ST=ST_"<option value="""_I_""""
 .I $G(DAY),I=DAY S ST=ST_" selected=""selected"""
 .I '$G(DAY),I=1 S ST=ST_" selected=""selected"""
 .S ST=ST_" >"_$$^%W1DICT("DAY"_I)_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
SELSHAA(N,PR,VL) ;
 N SEL,ST S ST=""
 I $G(N) S ST="<select id=""hr"_PR_N_""" onChange=""SetMod()"" >"
 N I,J F I=0:1:23 D
 .F J=0,30,59 D
 ..I PR="from",J=59 Q
 ..I PR="to",J=0 Q
 ..S SEL="" I $G(VL)'="",I=+VL,J=+$P(VL,":",2) D
 ...S SEL=" selected=""selected"" "
 ..S ST=ST_"<option value="""_I_":"_J_""" "_SEL_" >"
 ..S ST=ST_$TR($J(I,2)," ",0)_":"_$TR($J(J,2)," ",0)
 ..S ST=ST_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
 ;
SELKINDTABLE(N,SUGS)
 N ST S ST=""
 I $G(N) S ST="<select id=""sugs"_N_""" onChange=""SetMod()"" "
 S ST=ST_">"
 S ST=ST_"<option value=""0"" "
  I '$G(SUGS) S ST=ST_" selected=""selected"" "
  S ST=ST_">"_$$^%W1DICT("ALLKINDS")
 S ST=ST_"</option>"
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("SUGS")@(NN)) Q:NN=""  D
 .S II=II+1
 .S ST=ST_"<option value="""_NN_""""
 .I $G(SUGS),+SUGS=+NN S ST=ST_" selected=""selected"""
 .S ST=ST_" >"_NN_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGS")@(NN)))_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
SELCUSTGROUP(N,CUSTGR)
 N ST S ST=""
 I $G(N) S ST="<select id=""grcust"_N_""" onChange=""SetMod()"""
 S ST=ST_">"
 S ST=ST_"<option value=""0"" "
 I '$G(CUSTGR) S ST=ST_" selected=""selected"" "
 S ST=ST_">"_$$^%W1DICT("ALLKINDS")_"</option>"
 N NN,II S NN="",II=0 F  S NN=$O(@$$^W4GL("SUGL")@(NN)) Q:NN=""  D
 .S II=II+1
 .S ST=ST_"<option value="""_NN_""""
 .I $G(CUSTGR),+CUSTGR=+NN S ST=ST_" selected=""selected"""
 .S ST=ST_" >"_NN_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGL")@(NN)))_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
SELDIAP(N,DIAP) ;
 N SEL S SEL=" selected=""selected"""
 N ST S ST=""
 I $G(N) S ST="<select id=""diap"_N_""" onChange=""SetMod()"">"
 S ST=ST_" <option value=""1"" "_$S(+DIAP=1:SEL,1:"")_" >"_$$^%W1DICT("RESTAURANT")_"</option>"
 S ST=ST_" <option value=""2"" "_$S(+DIAP=2:SEL,1:"")_" >"_$$^%W1DICT("DELIVERY")_"</option>"
 S ST=ST_" <option value=""3"" "_$S(+DIAP=3:SEL,1:"")_" >"_$$^%W1DICT("TAKEAWAY")_"</option>"
 S ST=ST_" <option value=""0"" "_$S(+DIAP=0:SEL,1:"")_" >"_$$^%W1DICT("ALL")_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
INPDISC(N,VL) ;
 N ST
 S ST="<input size=""3"" maxlength=""3"" id=""disc"_N_""" value="""_VL_""" onChange=""SetMod()"" />"
 Q ST
 ;
SELDISCVIS ;
 W "<select id=""discvis"" onChange=""SetMod()"">",!
 W " <option value=""1"" "
 I '$$DISCPRC^W4PRM W " selected=""selected"" "
 W ">"_$$^%W1DICT("DISCNEWLINE")_"</option>",!
 ;
 W " <option value=""2"" "
 I $$DISCPRC^W4PRM W " selected=""selected"" "
 W ">"_$$^%W1DICT("DISCINTOPRICE")_"</option>",!
 W "</select>",!
 Q
 ;
 ;
SELDISCOPNORD ;
 W "<select id=""discopnord"" onChange=""SetMod()"">",!
 W " <option value=""1"" "
 I '$$REALTIME^W4PRM W " selected=""selected"" "
 W ">"_$$^%W1DICT("DISCOPNORD")_"</option>",!
 W " <option value=""2"" "
 I $$REALTIME^W4PRM W " selected=""selected"" "
 W ">"_$$^%W1DICT("DISCREALTIME")_"</option>",!
 W "</select>",!
 Q
SELDISCADD ;
 W "<select id=""discadd"" onChange=""SetMod()"">",!
 W " <option value=""1"" "
 I $$NOTSFMVC^W4PRM W " selected=""selected"" "
 W ">"_$$^%W1DICT("DISCNOADD")_"</option>",!
 W " <option value=""2"" "
 I '$$NOTSFMVC^W4PRM W " selected=""selected"" "
 W ">"_$$^%W1DICT("DISCADD")_"</option>",!
 W "</select>",!
 Q
 ;
FROMGROUP(A) ;
 Q $P(A,"\",1)
TOGROUP(A) ;
 Q $P(A,"\",12)
FROMSHAA(A) ;
 Q $P(A,"\",3)
TOSHAA(A) ;
 Q $P(A,"\",4)
FROMDAY(A) ;
 Q $P(A,"\",8)
TODAY(A) ;
 Q $P(A,"\",9)
KINDTABLE(A) ;
 Q $P(A,"\",6)
DISC(A) ;
 Q $P(A,"\",5)
CUSTGROUP(A) ;
 Q $P(A,"\",10)
DIAP(A) ;
 Q $P(A,"\",14)
 ;
GLHNS ;
 S GLHNS=$$^W4GL("P1HNHS")
 Q
 
 
 
 
 

W4MVDTL
W4MVDTL(DTN,DTO,HZ) ; [ 16.04.24 21:20 ] [ 08.04.24 11:22 ] [ 29.12.22 02:54 ] 
 I $G(HZ)'>0 Q
 I '$$^W4HZFULL(HZ) Q
 I $$WASZ(DTO,HZ) Q
 I $$^W4CLOSE(HZ) Q
 N ITRA S ITRA=$$ITRA^W4HZMST(HZ)
 I ITRA<.5,ITRA>-.5,'$$NOCLDLVZ^W4PRM!($$MZM^W4HZMST(HZ)>9) Q
 ;
 D PUT^W4HZMST(HZ,"DATK",$ZD(DTN,"DD.MM.YY"))
 S @$$^W4GL("P1H")@(DTN,HZ)=$G(@$$^W4MAIN("VRMNP"))+1
 S @$$^W4GL("P1H0")@(DTN,HZ)=$G(@$$^W4MAIN("VRMNP"))+1
 S @$$^W4GL("P1HI")@(HZ,DTN)="MOVE\"_DTO
 S @$$^W4GL("P1HI0")@(HZ,DTN)="MOVE\"_DTO
 S @$$^W4MAIN("VRMNP")=$G(@$$^W4MAIN("VRMNP"))+1
 K @$$^W4GL("P1H")@(DTO,HZ)
 K @$$^W4GL("P1H0")@(DTO,HZ)
 K @$$^W4GL("P1HI")@(HZ,DTO)
 K @$$^W4GL("P1HI0")@(HZ,DTO)
 Q
 ;
 ;
WASZ(DTO,HZ) ; 
 N N S N=HZ-1
 N OK S OK=0
 F  S N=$O(@$$^W4REF@(DTO,N)) Q:N=""  I $G(^(N))[",^"!($G(^(N))[",?") S OK=1 Q
 Q OK
 
 
 
 
 
 

W4MVFROM
W4MVFROM(STAM) ; [ 20.10.19 07:11 ] [ 28.04.13 18:06 ] [ 26.04.13 19:53 ] 
 Q +$$GETP^%W1PRM("MOVEFROM") ;-- FROM;ORD;WORKER;0 - ITEMS, 1 - ALL>FREE, 2 - ALL>BUSY, 3 - COPY
 ;
ORD(STAM) Q $P($$GETP^%W1PRM("MOVEFROM"),";",2)
MLZ(STAM) Q $P($$GETP^%W1PRM("MOVEFROM"),";",3)
ALL(STAM) Q $P($$GETP^%W1PRM("MOVEFROM"),";",4)
 ;
ALL2BUSY(STAM) Q $$ALL=2 
ALL2FREE(STAM) Q $$ALL=1 
CP(STAM) Q $$ALL=3
 ;
 ;
KILL N NMBFROM S NMBFROM=$$W4MVFROM
 D KILL^%W1PRM("MOVEFROM")
 D KILL^%W1PRM("MVSD")
 D KILL^%W1PRM("DELROW")
 ;
 I NMBFROM D ^W4KLFL(NMBFROM)
 ;
 K @$$^W4MAIN("TMPMV")
 K @$$^W4MAIN("TMPMVD")
 ;;K @$$^W4MAIN("TMPMVD0")
 Q
 ;
KILLVD0 ;
 K @$$^W4MAIN("TMPMVD0")
 Q
 
 

W4MVLINE
W4MVLINE ; [ 29.12.21 08:09 ] [ 22.02.17 22:42 ] [ 20.02.17 15:48 ] 
 W "<div align=""center"" dir="""_$$^%W1DIR_""" "
  W " style=""font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""" "
 W ">"
 W "<br><br>",!
 W $$^%W1DICT("MOVELINE")
 W "<br><br>",!
 N STYLE S STYLE="background-color:white;color:red;font-size:"_$$^W3FSZ(16)
 D ^W4BUTTON("backid",$$^%W1DICT("BACK"),"Back()",STYLE)
 ;
 ;;D ^W4BTN($$^%W1DICT("BACK"),"Back()","red")
 W "</div>",!
 Q
 ;
 ;
SWAP(PRM) ;
 N (JB,%ARG,PRM)
 S CUR=$P(PRM,";")
 S MVL=$P(PRM,";",2)
 I CUR=MVL G SWE
 ;
 S SHC=$E(CUR,4,20)
 S SHM=$E(MVL,4,20)
 ;
 S TMPORD=$$^W4TMPORD
 S TMPORDM="^[$$^W3MAIN]TMPORDM"
 K @TMPORDM@(JB)
 ;
 S K=0,END=0
 F SH=SHM:1 Q:'$D(@TMPORD@(SH))  D  Q:END
 .S A=$G(^(SH))
 .I SH>SHM,$P(A,"~")=0 S END=1 Q
 .S K=K+1
 .S VRM(K)=A
 ;
 S I=0,K=0
SWAPC ;
 S I=I+1
 I '$D(@TMPORD@(I)) G SWAPE
 ;
 I I=SHC D  G SWAPC
 .F II=1:1 Q:'$D(VRM(II))  D
 ..S K=K+1
 ..S @TMPORDM@(JB,K)=VRM(II)
 ..I II=1 S @TMPORDM@(JB,K,"MVL")=""
 .S K=K+1
 .S @TMPORDM@(JB,K)=$G(@TMPORD@(SHC))
 ;
 I I=SHM D  G SWAPC
 .F II=I+1:1 Q:'$D(@TMPORD@(II))  Q:$P(^(II),"~")=0
 .S I=II-1 
 ;
 S K=K+1
 S @TMPORDM@(JB,K)=$G(@TMPORD@(I))
 G SWAPC
 ;
SWAPE ; 
 N HD S HD=$G(@TMPORD)
 K @TMPORD
 M @TMPORD=@TMPORDM@(JB)
 S @TMPORD=HD
 K @TMPORDM@(JB)
SWE D KILL^%W1PRM("MVLN")
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 

W4MVP1H
W4MVP1H(DTO,DTN,N) ;  [ 17.05.22 20:19 ] [ 05.05.22 08:16 ] [ 04.05.22 14:39 ] 
 I $$WASZ^W4MVDTL(DTO,N) Q
 I $$^W4CLOSE(N) Q
 ;;I $$SHUL^W4HZMST(N)!$$SHULA^W4HZMST(N) Q
 K @$$^W4GL("P1H")@(DTO,N)
 K @$$^W4GL("P1H0")@(DTO,N)
 K @$$^W4GL("P1HI")@(N,DTO)
 K @$$^W4GL("P1HI0")@(N,DTO)
 D ^W4H(DTN,N)
 Q
 
 
 
 

W4MVPC
W4MVPC(STAM) ; [ 10.07.18 13:27 ] [ 
 I '$$ASKMVPC^W4PRM Q 0
 Q 1 
 
 

W4MVTBA
W4MVTBA(HZM,NMBOLD,NMBN,MLZRN) ; [ 09.12.20 08:47 ] [ 07.06.18 07:52 ] [ 11.01.18 06:51 ] 
 N (JB,%ARG,%REM,HZM,NMBOLD,NMBN,MLZRN)
 D ^W4IN
 I ($G(NMBN)="")!($G(MLZRN)="")!($G(HZM)="") G ER
 ;
 I $$^W4CLOSE(HZM) Q 1
 ;
 S HODAA=$$TV^%W1DICT($$^%W1LNG,"MOVEDFROMTABLE",NMBOLD)
 ;
 D KILLFLAG^W4KLFL(NMBOLD)
 ;
 I $$RESTORAN^W4PRM D ^W4RSTRN(99,HZM)
 I $G(@$$^W4PRM@("CONCEPTIC")) D ^W4CONC(99,HZM)
 ;
 S NMB=NMBN,MKBL=MLZRN
 ;
 I $$PRMAHP(NMB)!$$PRMAHP(NMBOLD) D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..D NEWMH(HZM,I,NMBN)
 ;
 I '$$PRMAHP(NMBOLD),'$$PRMAHP(NMBN) D
 .N HNHAH
 .S HNHAH=$$HNHAH^W4HZMST(HZM)
 .I +HNHAH=+$$AH^W4L(NMBOLD) S HNHAH=$$AH^W4L(NMBN)
 .D PUT^W4HZMST(HZM,"HNHAH",HNHAH)
 ;
 D ^W4CALC(HZM)
 ;
 I MKBL D PUT^W4HZMST(HZM,"MKBL",MLZRN)
 I NMBN D PUT^W4HZMST(HZM,"NMB",NMBN)
 D PUT^W4HZMST(HZM,"HODAA",HODAA)
 ;
 K @$$^W4GL("P1HL")@(NMBOLD,HZM),@$$^W4GL("P1HL0")@(NMBOLD,HZM)
 D ^%S2GLSV($$^W4GL("P1HL")_"("""_NMBOLD_""","""_HZM_""")",$$^W4FGIB,"K")
 D ^%S2GLSV($$^W4GL("P1HL0")_"("""_NMBOLD_""","""_HZM_""")",$$^W4FGIB,"K")
 ;
 S @$$^W4GL("P1MOVE")@(P1DZ,HZM)=NMB_"\"_NMBOLD_"\"_$H
 S @$$^W4GL("P1MOVE")@(P1DZ,HZM,$P($H,",")_$TR($J($P($H,",",2),5)," ",0))=NMB_"\"_NMBOLD
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 S (@$$^W4GL("P1HL")@(NMB,HZM),@$$^W4GL("P1HL0")@(NMB,HZM))=P1DZ
 S @$$^W4GL("P1HL")@(NMB,HZM,"POS")=MYDVN
 S @$$^W4GL("P1HL0")@(NMB,HZM,"POS")=MYDVN
 ;
 S P1HZOP=NMBOLD,P1HZOP("HZ")=HZM,P1HZOP("SD")="mlek"
 D HODAV(HZM) K P1HZOP
 ;
 I $$RESTORAN^W4PRM D ^W4RSTRN(1,HZM)
 I $G(@$$^W4PRM@("CONCEPTIC")) D ^W4CONC(1,HZM)
 Q 1
 ;
HODAV(HZM) ;
 D ^W4HODAV(HZM)
 Q
 ;
 ;
NEWMH(HZM,I,NMB) ;
 N GLOB S GLOB=$$^W4ORD_"("_HZM_","_I_")"
 N ST,ST0,MHT,MH,PRMHNMB,TSF,STNEW,SUM1,KAM,PAR
 S ST=$G(@GLOB)
 I '$D(HZSCR) D ^W4IN
 D G^W4SCV(HZSCR,ST) S TSF=0,STNEW=1
 I $$^W4EZAT($G(PAR)),'$$PRMAHP(NMB) Q
 ;
 S PRMHNMB=NMB I PAR'["%",$$PRMAHP(NMB) S MH=$$MH^W4P(PAR)
 ;
 I $$^W4AHP(PAR),$D(SUM1) S $P(@GLOB,"\",7)=SUM1*PAR*.01 K SUM1 Q
 ;
 N N S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S ST0=$P(^(N),"\",2,25) N MHT
 .S MHT=$$MH^W4P(N)
 .I $$PRMAHP(NMB) S MHT=MHT*(100-$$AH^W4L(NMB))*.01
 .I ST0["\+\" D
 ..S $P(@GLOB@(N),"\",7)=MHT
 ..S TSF=TSF+(MHT*KAM)
 .I ST0'["\+\" D
 ..S $P(@GLOB@(N),"\",2)=MHT
 ..S TSF=TSF+(MHT*$P(@GLOB@(N),"\",3))
 ;
 S $P(@GLOB,"\",4)=MH
 S SUM1=KAM*MH+TSF
 S $P(@GLOB,"\",6,7)=$J(TSF,2,2)_"\"_$J(SUM1,2,2)
 Q
 ;
ER Q -1
ER1 Q -2
 ;
PRMAHP(NMB) ; 
 Q $$^W4PRMAHP(NMB) 
 
 
 
 
 
 
 
 
 
 

W4MVTBPR
W4MVTMPR(DT) ; [ 14.01.18 10:07 ] [ 11.01.18 18:41 ] [ 
 N (JB,%ARG,%REM,DT)
 I $G(DT)="" S DT=$$^W4DZ
 S VRM=$$^W4MAIN("VRM") K @VRM
 S GLMV=$$^W4GL("P1MOVE")
 ;
 S N="" F  S N=$O(@GLMV@(DT,N)) Q:N=""  D
 .S A=$G(^(N))
 .S NMB=$P(A,"\")
 .S NMBOLD=$P(A,"\",2)
 .S H=$P(A,"\",3)
 .S IND=$P(H,",")_$TR($J($P(H,",",2),5)," ",0)
 .F J=1:1 Q:'$D(@VRM@(IND_J))
 .S INDJ=IND_J
 .S @VRM@(INDJ)=NMBOLD_"\"_NMB_"\"_N_"\"
 ;
 S DAT=$ZD(DT,"DD.MM.YY")
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 W " <table border=""1"" cellcpacing=""1"" width=""100%"" style=""table-layout:fixed"">",!
  S IND="" F  S IND=$O(@VRM@(IND),-1) Q:IND=""  D
  .S A=$G(^(IND))
  .S HZ=$P(A,"\",3) Q:HZ<1
  .W "<tr style=""height:50px;cursor:pointer"" "
  .W ">"
  .S TIME=$$T^%L1TIME($E(IND,6,10))
  . W "<td "_$$TDPRM(20)_$$TDVW(HZ)_">"_TIME_"</td>"
  . W "<td "_$$TDPRM(20)_$$TDVW(HZ)_">"_$P(A,"\")_"</td>"
  . W "<td "_$$TDPRM(20)_$$TDVW(HZ)_">"_$P(A,"\",2)_"</td>"
  . W "<td "_$$TDPRM(20)_$$TDVW(HZ)_">"_HZ_"</td>"
  . W "<td align=""center"">" D BTN("TOGO","ToOrder('"_HZ_"')") W "</td>"
  .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
KB(DT) ;
 N (JB,%ARG,%REM,DT)
 I $G(DT)="" S DT=$$^W4DZ
 S DAT=$ZD(DT,"DD.MM.YY")
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W3CSS_""">",! ; -- TOP
 ;
 W "<table style=""font-size:"_$$^W3FSZ(14)_";width:90%"" >",!
  W "<tr>"
    W "<td align=""center"" style=""font-size:"_$$^W3FSZ(18)_";color:"_$$BGCOLOR^W4CSS_";width:90%"">"
     W $$^%W1DICT("MVTBPROTOCOL",DAT)
    W "</td>"
    W "<td>&nbsp;</td>"
    W "<td><input type=""button"" class=""btn"" style=""width:100%;color:red;background-color:#eaeaea;height:50px"" value="""_$$^%W1DICT("EXIT")_""" "_$$^W4TOUCH_"=""Back()""></td>"
    W "<td>&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<table border=""1"" style=""width:60%;table-layout:fixed"">",!
  W "<tr>"
   W "<th "_$$TDPRM(20)_">"_$$^%W1DICT("MVTIME")_"</th>"
   W "<th "_$$TDPRM(20)_">"_$$^%W1DICT("FROMTABLE")_"</th>"
   W "<th "_$$TDPRM(20)_">"_$$^%W1DICT("TO TABLE")_"</th>"
   W "<th "_$$TDPRM(20)_">"_$$^%W1DICT("ORDERNUMBER")_"</th>"
   W "<th>&nbsp;</th>"
  W "</tr>"
 W "</table>",!
 ; 
 W "</div>",!
 Q
 ;
TDPRM(AH)
 Q " style=""width:"_AH_"%;text-align:center;font-size:"_$$^W3FSZ(16)_""" "
 ;
TDVW(HZ) 
 Q " "_$$^W4TOUCH_"=""ViewOrd('"_HZ_"')"" "
 ;
BTN(VL,PROC) ;
 W "<input type=""button"" class=""btn"" "
 W "style=""width:100%;color:black;background-color:#eaeaea;height:50px;font-size:"_$$^W3FSZ(14)_";"_$$RAD^W3CSM_""" "
 W "value="""_$$^%W1DICT(VL)_""" "_$$^W4TOUCH_"="""_PROC_""">",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MYDVN
W4MYDVN(STAM) ; [ 24.06.26 13:23 ] [ 21.11.22 11:31 ] [ 14.11.22 08:42 ] 
 S JB=+$G(JB)
 N IND N JB0 S JB0=JB N JB S JB=$P(JB0,".")
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^W4MYDVN"
 I '$G(JB) Q $J
 I '$G(%REM) S %REM=$$GETP^%W1PRM("REM")
 S:$G(%REM)="" %REM=0
 I %REM?1N.N1".".E,$G(@$$^W4DEVI@(%REM)) Q $G(@$$^W4DEVI@(%REM))  
 ;
 S IND=$S(%REM:%REM,1:$J)
 N ER S ER=0
 N J F J=1:1:$L(IND) I $E(IND,J)'?1N,$E(IND,J)'="." S ER=1
 I ER Q $J
 ;
 I '$D(@$$^W4MAIN("devp")@(IND)) D INIT
 N A S A=$G(@$$^W4MAIN("devp")@(IND))
 I A="",$$GETP^%W1PRM("TSAUTO") S A=1
 I A="",$G(STAM)'=1 S A=$J
 Q A
 ;
INIT ;
 N N,IP K @$$^W4MAIN("devp")
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .S IP=$G(@$$^W4DEV@(N)) Q:'IP
 .;;I IP="2.55.118.175" S N=25
 .S @$$^W4MAIN("devp")@(IP)=N
 Q
 ; 
ER ; 
 I $G(JB)="" S JB=0
 N I S I=+$H_$TR($J($P($H,",",2),5)," ",0)
 S ^W4MYDVER(JB,I,"IND")=$G(IND)
 S ^W4MYDVER(JB,I,"REM")=$G(%REM)
 S ^W4MYDVER(JB,I,"A")=$G(A)
 S ^W4MYDVER(JB,I,"ZS")=$ZS
 D SVER^%L1X
 Q $J
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MZB
W4MZB ;  [ 14.08.24 03:56 ] [ 12.08.24 09:29 ] [ 11.08.24 12:16 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 ;
 S GLMSD=$$^W4MAIN("TMPMSD") K @GLMSD
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @GLMSD@(N)=$G(^|$$^W3MAIN|W3MSD(N))
 ;
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="W4MZB"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
MSDR ;
 Q
 ;
DT ;
 I DT<MEDAT S OK=0 Q
 I DT>ADDAT S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 S DAT=$ZD(DT,"DD.MM.YY")
 Q
 ;
MSD ;
 S MSD1=$$MSD^W3R(+MSD)
 I MSD<MEMSD S OK=0 Q
 I MSD>ADMSD S OK=2 Q
 Q
 ;
 ;
HZ ; 
 I HZ<MEHZ S OK=0 Q
 I HZ>ADHZ S OK=2 Q
 ;;S ^AA("W4LKTN-HZ")=HZ
 S x1=$P($G(@GLOB),"*",2)
 S x2=$P($G(@GLOB),"*",3)
 S x3=$P($G(@GLOB),"*",4)
 S x4=$P($G(@GLOB),"*",1)
 Q 
 
 
 
 
 

W4MZBIT
W4MZBIT ; [ 04.08.26 17:57 ] [ 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N VRM
 ;
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="W4MZBIT"
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 ;
 S PRTN=$$^%W1JB
 S %REPN("PRTN")=PRTN
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4MZBIT"
 D PUT^%W1PRM("HRFREP","w4mzbit.jsp?JB="_JB_"&REPN="_%REPN)
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
TRH
 D ^%W1PCVRM K @VRM
 N MEDATH,ADDATH,DT,HZM
 S MEDATH=$$^%L1DC(MEDAT,3)
 S ADDATH=$$^%L1DC(ADDAT,3)
 ;
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 ;
 F DT=MEDATH:1:ADDATH D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..N OK S OK=0,MZB=0
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","MZ",N)) Q:N=""  D:N
 ...I $G(^(N))<0 S OK=1,MZB=MZB-$G(^(N))
 ..Q:'OK
 ..S SHAA=$P($$DATCB^W4HZMST(HZ),"  ",2)
 ..S MAZMIN=$$MAZMIN^W4HZMST(HZ)
 ..S TEL=$$TELB^W4HZMST(HZ)
 ..S @VRM@(DT,HZ)=SHAA_"*"_MAZMIN_"*"_TEL_"*"_MZB
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
DT ;
 I DT<$$^%L1DC(MEDAT,3) S OK=0 Q
 I DT>$$^%L1DC(ADDAT,3) S OK=2 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 S DAT=$ZD(DT,"DD.MM.YY")
 Q
 ;
HZ ; 
 I HZ<MEHZ S OK=0 Q
 I HZ>ADHZ S OK=2 Q
 S x1=$P($G(@GLOB),"*",1)
 S x2=$P($G(@GLOB),"*",2)
 S x3=$P($G(@GLOB),"*",3)
 S x4=$P($G(@GLOB),"*",4)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MZSMBK
W4MZSMBK(HZM,PRBIT,NOM) ; [ 19.08.25 02:54 ] [ 26.12.24 09:39 ] [ 05.12.24 19:59 ] 
 N (JB,%ARG,%REM,HZM,PRBIT,NOM,RES)
 S RES=0
 S URL=$G(@$$^W4PRM@("MZSM","URL"))
 I URL="" S URL="https://posapi.damkasys.co.il/api/v1/coc/payment"
 S SID=$G(@$$^W4PRM@("MZSM","SID"))
 S (SUM,TIP,ODEF)=0
 ;
 I '$G(NOM) S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","MZ",N)) Q:N=""  I N D
 .D SUM(HZM,N)
 .I $G(PRBIT) K @$$^W4ORD@(HZM,"CB","MZ",N)
 ;
 I $G(NOM) D SUM(HZM,NOM)
 ;
 S ORD=HZM_"~"_JB_"~"_DV_"~"_MLZ_"~"_-ODEF_"~"_-TIP_"~"_$G(NOM)
 ;
 S SUM=SUM-ODEF-TIP
 S SUM=SUM*100
 I SUM<0 S SUM=-SUM
 ;
 S PSW=$G(@$$^W4PRM@("CODEMZSM"),1111)
 S CMD="curl -m 60 -s -w ""%{http_code}"" --location '"_URL_"?orderId="_ORD_"&amount="_SUM_"&secretKey="_SID_"&request=withdraw&code="_PSW_"'"
 S CMD=CMD_" -o /dev/null"
 S H1=+$H,H2=$P($H,",",2)
 S DZ=$$^W4DZ
 S GLPR=$$^W4GL("W4MZSM")
 S @GLPR@(H1,H2,"CMD")=CMD
 ;
 ZSY CMD
 ;
 U 0 R RES:3 
 S @GLPR@(H1,H2,"ZSY")=$ZSY
 S @GLPR@(H1,H2,"RES")=RES
 Q
 ; 
 ; 
SUM(HZM,N)
 N A
 S A=$G(^(N))
 S A=$G(@$$^W4ORD@(HZM,"CB","MZ",N))
 S SUM=SUM+A
 S MLZ=$P(A,"*",3)
 S DV=$P(A,"*",4)
 S ODEF=ODEF+$P(A,"*",5)
 S TIP=TIP+$P(A,"*",6)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MZSMPR
W4MZSMPR(DAT) ; [ 19.08.25 02:15 ] [ 05.08.25 03:53 ] [ 04.08.25 15:00 ] 
 N (JB,%ARG,DAT,ORDPR,GLPR,NMPR)
 D ^%L1TS
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S GLPR="W4MZSM"
 S NMPR="MZSMPROT"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 S DT=$$^%L1DC(DAT,3)
 W "<p dir="""_$$^%W1DIR_""" style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT(NMPR,$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 
 S GL=$$^W4GL(GLPR)
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .W "<br><br><b>Time : "_$ZD(DT_","_N,"24:60")_"</b>",!
 .W "<br>",!
 .S N1="" F  S N1=$O(@GL@(DT,N,N1)) Q:N1=""  D
 ..I $D(^(N1))#2 W N1_" = "_$$RKV($G(^(N1)))_"<br>",!
 ..S N2="" F  S N2=$O(@GL@(DT,N,N1,N2)) Q:N2=""  D
 ...N A S A=$G(^(N2))
 ...I $D(^(N2))#2 W N1_" : "_N2_" = "_$$RKV(A)_"<br>",!
 ...I N2="order_id" D
 .... N ORD,DV
 .... I A["~" S DV=$P(A,"~",3),MLZ=$P(A,"~",4),ODEF=$P(A,"~",5),TIP=$P(A,"~",6),NOM=$P(A,"~",7),HZM=$P(A,"~")
 .... I HZM>1 W " ----- order : "_HZM_"<br>",!
 .... W " ----- device : "_DV_"<br>",!
 .... W " ----- worker : "_$P(MLZ,";",2)_"<br>",!
 .... W " ----- change : "_ODEF_"<br>" 
 ...
 ...S N3="" F  S N3=$O(@GL@(DT,N,N1,N2,N3)) Q:N3=""  D
 ....I $D(^(N3))#2 W N1_" "_N2_" : "_N3_" = "_$$RKV($G(^(N3)))_"<br>",!
 W "</div>",!
 Q
 ;
 ;
RKV(VL) ; 
 N L,R  
 S L=$P(VL,":") 
 S R=$P(VL,":",2,200) 
 D
 .I L["name",R'[$C(215) S VL=L_":"_$$H2U^%L1FRM($$INVH^%L1FRM($TR(R,TSS,TS0))) Q
 .I R[$C(215) S VL=L_":"_$$H2U^%L1FRM($$INVH^%L1FRM($$U2D^%L1CNV(R))) Q
 .I R["\u" D
 ..N I,VL1 S VL1="" F I=1:1:$L(VL,"""") D
 ...N W S W=$P(VL,"""",I)
 ...I W["\u" S W=$$H2U^%L1FRM($$U2H^%L1CNV(W))
 ...S VL1=VL1_$S(W="":"",'(I#2):W,1:""""_W_"""")
 ..S VL=VL1
 ;
 Q VL  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MZSMVV
W4MZSMVV ; [ 30.09.24 15:25 ] [ 
 N (JB,%ARG,%REM)
 S OPT=$G(%ARG("OPT"))
 S %ARG("HEAD")=$S(OPT=2:"PUTCASH",1:"GETCASH")
 D ^W4KB
 Q
 

W4MZV
W4MZV ; [ 29.09.23 07:16 ] [ 12.07.23 05:52 ] [ 10.07.23 15:39 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S WD=30 I $$^W4TABLET=2 S WD=65
 W "<div dir="""_$$^%W1DIR_""">",!
  W "<table id=""Tbl"" width="""_WD_"%"" border=""0"">",!
   W "<tr>",!
    W "<td>"
     W $$^%W1DICT("USERCODE") W $$NBSP^%L1FRM(2)
     W "<input onFocus=""this.select()"" id=""usr"" type=""text"" size=""5"">"
    W "</td>"
 
    W "<td>"
     W $$^%W1DICT("PASSWORD") W $$NBSP^%L1FRM(2)
     W "<input id=""psw"" onFocus=""this.select()"" type=""password"" size=""8"" onKeyPress=""OnKeyPress(event)"" >"
    W "</td>"
 
    W "<td>"
     W "<button style=""color:green;font-size:"_$$^W3FSZ(11)_""" onClick=""Submit()"">"
      W $$^%W1DICT("SUBMIT")
     W "</button>",! 
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MZVM
W4MZVM(MSDR,MSD,DAT) ; [ 16.02.26 10:44 ] [ 14.01.25 11:17 ] [ 06.01.25 12:47 ] 
 N (JB,%ARG,%REM,MSDR,MSD,DAT)
 I $G(MSD)="" Q
 I $G(DAT)="" Q
 ;
 S DT=$$^%L1DC(DAT,3)
 D GET(MSD,DT)
 ;
 S PRMSL=$$PRMSL
 S PRMSD=$$PRMSD
 ;
 N OPORD S OPORD="QNOPENORDERS"
 I PRMSL S OPORD="QNOPENDLVORDERS"
 I PRMSD S OPORD="QNOPENRESTORDERS"
 I PRMSL,PRMSD S OPORD="QNOPENORDERS"
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
  W $$^%W1DICT("RESTSTATUS",$$MSDN^W3R(MSD)_"<>"_DAT)
  W "<br>"
  W "<span style=""font-size:"_$$^W3FSZ(11)_""" >"
   W $$^%W1DICT("ISSUETIME",$ZD($H,"DD.MM.YY")_"<>"_$ZD($H,"24:60"))
  W "</span>",!
 W "<br><br>",!
 ;
 D TBLPRM
 ;
 W "<br>",!
 ;
 W " <table>",!
  W "<tr>"
   W "<td style=""font-weight:bold"">"_$$^%W1DICT(OPORD)_"</td>"
   W "<td>"_$$RKV($$VL("QNORD"))_"</td>"
  W "</tr>",!
  ; 
  W "<tr>" 
   W "<td>"_$$^%W1DICT("TOSUM")_"</td>"
   W "<td>"_$$RKV($J($$VL("SSUM"),2,2))_"</td>"
  W "</tr>",!
 ;
 W "<tr>"
  W "<td>"_$$^%W1DICT("GUESTSQN")_"</td><td>"_$$RKV($$VL("SSOAD"))_"</td>"
 W "</tr>",! 
 ;
 W "<tr>"
  W "<td>"_$$^%W1DICT("AVMSD")_"</td><td>"_$$RKV($J($$VL("AVRG"),2,2))_"</td>"
 W "</tr>",!
 ;
 I PRMSL D TRSP
 ;
 N CLORD S CLORD="QNCLOSEORDERS"
 I PRMSL S CLORD="QNCLOSEDLVORDERS"
 I PRMSD S CLORD="QNCLOSERESTORDERS"
 I PRMSL,PRMSD S CLORD="QNCLOSEORDERS"
 ;
 D TRSP
 ;
 W "<tr>"
  W "<td style=""font-weight:bold"" >"_$$^%W1DICT(CLORD)_"</td>"
  W "<td>"_$$RKV($$VL("QNORDS"))_"</td>"
 W "</tr>",!
 W "<tr>"
  W "<td>"_$$^%W1DICT("TOSUM")_"</td><td>"_$$RKV($J($$VL("SSUMS"),2,2))_"</td>"
 W "</tr>",!
 ;
 D
 .W "<tr>" 
 . W "<td>"_$$^%W1DICT("GUESTSQN")_"</td><td>"_$$RKV($$VL("SSOADS"))_"</td>"
 .W "</tr>",!
 .W "<tr>"
 . W "<td>"_$$^%W1DICT("AVMSD")_"</td><td>"_$$RKV($J($$VL("AVRGS"),2,2))_"</td>"
 .W "</tr>",!
 ;
 D TRSP
 W "<tr>"
  W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTMANY")_"</td>"
  W "<td> "_$$RKV($J($$VL("SSUM")+$$VL("SSUMS"),2,2),"brown")_"</td>"
 W "</tr>",!
 ;
 I ($$VL("SSOAD")+$$VL("SSOADS")) D
 .W "<tr>"
 . W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTAV")_"</td>"
 . W "<td>"_$$RKV($J(($$VL("SSUM")+$$VL("SSUMS"))/($$VL("SSOAD")+$$VL("SSOADS")),2,2),"brown")_"</td>"
 .W "</tr>",!
 .
 ;
 D TRSP
 ;
 W "</table>",!
 W "<br><br>",!
 S ADDR=$$SITE^W3R(MSD)
 I $E(ADDR,$L(ADDR))'="/" S ADDR=ADDR_"/"
 I ADDR'="" D
 .D ^W4BTN("SHOWRESTREPORTS","ShowRestReports('"_ADDR_"')","green")
 .W "<br><br>",!
 D ^W4BCK
 W "</div>",!
 Q
 ;
 ;
RKV(RKV,COLOR) ;
 I $G(COLOR)="" S COLOR="green"
 Q "&nbsp;&nbsp;<span style=""color:"_COLOR_";font-weight:bold"">"_RKV_"</span>"
 ;
TRSP ;
 W "<tr>"
  W "<td>&nbsp;</td><td>&nbsp;</td>"
 W "</tr>",!
 Q
 ;
 ;
GET(MSD,DT) ; 
 N A,GL S GL="^[$$^W3MAIN]W4MSDMZV(MSD)"
 K MT
 ;
 S A=$G(@GL@(DT)) 
 ;
 S QNORD=$P(A,"~",3)
 S QNORD("D")=$P(A,"~",4)
 S QNORD("R")=$P(A,"~",5)
 ;
 S SSUM=$P(A,"~",6)
 S SSUM("D")=$P(A,"~",7)
 S SSUM("R")=$P(A,"~",8)
 ;
 S SSOAD=$P(A,"~",9)
 S SSOAD("D")=$P(A,"~",10)
 S SSOAD("R")=$P(A,"~",11)
 ;
 S AVRG=$P(A,"~",12)
 ;
 S QNORDS=$P(A,"~",13) 
 S QNORDS("D")=$P(A,"~",14) 
 S QNORDS("R")=$P(A,"~",15) 
 ;
 S SSUMS=$P(A,"~",16)
 S SSUMS("D")=$P(A,"~",17)
 S SSUMS("R")=$P(A,"~",18) 
 ;
 S SSOADS=$P(A,"~",19) 
 S SSOADS("D")=$P(A,"~",20) 
 S SSOADS("R")=$P(A,"~",21) 
 ;
 S AVRGS=$P(A,"~",22) 
 S SAVRG=$P(A,"~",23)
 S I=$P(A,"~",24)
 S TM=$P(A,"~",25)
 S FIRSTTIME=$P(A,"~",26)
 ;
 S QNHZ1=$P(A,"~",27)
 S QNHZ2=$P(A,"~",28)
 S QNHZ3=$P(A,"~",29)
 S QNRDY=$P(A,"~",30)
 ;
 S QNHZ1M=$P(A,"~",31)
 S QNHZ2M=$P(A,"~",32)
 S QNHZ3M=$P(A,"~",33)
 S QNHZ4M=$P(A,"~",34)
 S QNSEND=$P(A,"~",36)
 S SHL=$P(A,"~",37)
 S TIMEPREP=$P(A,"~",40)
 ;
 S QNSP=$P(A,"~",41)
 S TMSP=$P(A,"~",42)
 S QNSP30=$P(A,"~",43)
 S TMSP30=$P(A,"~",44)
 ;
 N I,QN,SUM
 F I=56:1:79 D
 .I $P(A,"~",I) D
 ..N ST,SHAA S ST=$P(A,"~",I)
 ..S SHAA=$P(ST,"^") Q:SHAA=""
 ..S MT(SHAA,"QR")=$P(ST,"^",2)
 ..S MT(SHAA,"SR")=$P(ST,"^",3)
 ..S MT(SHAA,"QD")=$P(ST,"^",4)
 ..S MT(SHAA,"SD")=$P(ST,"^",5)
 Q
 ;
 ;
VL(RKV) ;
 N VL S VL=0
 I $$PRMSL S VL=VL+$G(@RKV@("D"))
 I $$PRMSD S VL=VL+$G(@RKV@("R"))
 Q VL
 ;
TBLPRM ;
 Q:'$G(QNORD("D"))
 W "<table id=""TblPrm"" >"
  W "<tr>"
   W "<td>"_$$^%W1DICT("RESTAURANT")_"</td>"
   W "<td>"
    W "<input type=""checkbox"" id=""prmsd"" "_$S($$PRMSD:" checked=""checked""",1:"")_""" "
     W " onClick=""ReView('prmsd','PRMSD')"" "
    W " />"
   W "</td>"
   ;
   W "<td>"_$$^%W1DICT("DELIVERY")_"</td>"
   W "<td>"
    W "<input type=""checkbox"" id=""prmsl"" "_$S($$PRMSL:" checked=""checked""",1:"")_""" "
     W " onClick=""ReView('prmsl','PRMSL')"" "
    W " />"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
PRMSL(STAM) ;
 Q $G(%ARG("PRMSL"))
 ;
PRMSD(STAM) ;
 Q $G(%ARG("PRMSD"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MZVMLY
W4MZVMLY ; [ 19.04.26 13:31 ] [ 16.04.26 19:52 ] [ 15.04.26 21:13 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 D PUT^%W3DEB("W4TKDOC1","%ARG=[%ARG")
 ;
 S NOM=0
 S DAT=$H-1
 S SPK=$G(%ARG("SPK"))
 ;
 S DOC="ITK"
 I $$DELIS^W4PRM S %ARG("DEP")=9
 ;
 D GLTMP
 S GL=$$GL
 ;
 D SUM(10),SUM(20)
 ;
 N GLMLPAR,N,I,MH S I=0
 D GLTMPA K @GLTMPA
 S GLMLPAR=$$GLMLPAR^W4MLPRT ;$$^W4GL("PAR")
 N GLSUGP S GLSUGP=$$GLSUGP^W4MLPRT
 N SUG
 S N="" F  S N=$O(@GLMLPAR@(N)) Q:N=""  D
 .I $G(%ARG("SPK")),'$D(@$$^W4GL("W4MLSP")@(%ARG("SPK"),"P",N)) Q
 .I $G(%ARG("DEP")),$$MLDEP^W4MLPRT(N)'=%ARG("DEP") Q
 .I $$MLMAZAV^W4MLPRT(N) Q
 .S SUG=$$MLSUGP^W4MLPRT(N)
 .I $G(%ARG("KVZ")),SUG'=%ARG("KVZ") Q
 .D FRMLN(+NOM,0,N)
 ;
 D TMPA2TMP
 ;
 S GLEX=$$^%W1GLPRM K @GLEX
 S HD="mi`ad mini 20 a zexikn*mi`ad mini 10 a zexikn *aeyig itl zenk*ngix*dcin zcigi*hixt my*cew"
 S HD=$$INVD^%L1FRM(HD,"*")
 S @GLEX@("GLOUT",1)=HD
 F I=1:1 Q:'$D(@GLTMP@(I))  D
 .S A=$G(^(I))
 .S A=$TR(A,"\","*")
 .S A=$P(A,"*",1,2)_"*"_$P(A,"*",7)_"*"_$P(A,"*",3,6)
 .S @GLEX@("GLOUT",I+1)=A
 ;
 ;;D KOTHSB(0,SPK,DAT,DOC)
 ;
 W "<br />",!
 ;
 D DIVBUT
 ;
 W "<br />",!
 ;
 D DAF1
 ;
 D DIVBUT
 ;
 Q
 ;
 ;
KOTHSB(NMB,SPK,DAT,DOC) ;
 D ^W4KOTHSB(NMB,SPK,DAT,DOC)
 Q
 ;
DIVBUT ;
 W "<br/>"
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    W "<select id=""kvz"" onChange=""ChoiceGroup()"" style=""visibility:hidden"" >",!
     W "<option value=""0"" >-- "_$$^%W1DICT("CHOICEGRIT")_" --</option>",!
     D
     .N GLSUGP S GLSUGP=$$GLSUGP^W4MLPRT
     .N A,N S N="" F  S N=$O(@GLSUGP@(N)) Q:N=""  D
     ..S A=$G(^(N))
     ..W "<option value="""_N_""" "
     ..I $G(%ARG("KVZ")),N=%ARG("KVZ") W " selected=""selected"" "
     ..W ">"_N_" "_$$H2U^%L1FRM(A)_"</option>",!
    W "</select>",!
   W "</td>",!
   ;
   W "<td width=""50%"">&nbsp;</td>"
   ; 
   W "<td>"
    D
     .W "<td>"
     .D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_NOM_"')","color:blue",",,,80")
     .W "</td>"
   ;
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
   W "</td>"
   W "<td width=""10%"">&nbsp;</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
TDLTR W "<td "_$$LTR_" align=""right"" "
 Q
 ;
LTR(STAM) ;
 Q " dir=""LTR"" align=""right"" "
 ;
TDN W "<td>&nbsp;</td>",!
 Q
 ;
COLST(NOM)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL,COL,N S COL=0
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  S COL=COL+1
 Q COL
 ;
 ;
DAF1 ;
  W "<div id=""divcmnt"" align=""center"" dir="""_$$^%W1DIR_""">",!
   D DIVCMNT(NOM)
  W "</div>",!
  ;
  D DAFBODY(NOM)
  ;
  D SHOWTOT(NOM)
ET ;
  W "</table>",!
 Q
 ;
 ;
DAFBODY(NOM) ;
 N (JB,%ARG,SPK,DAT,NOM,NUMBER,SQNC,SSUM10,SSUM20,MPRT)
 ;
 I '$D(NOM) S NOM=0
 S (SSUM10,SSUM20,SQNC)=0
 ;
 W "<br /><br />",!
 W "<table id=""TblTk"" dir="""_$$^%W1DIR_""" width=""98%"" border=""1"" cellspacing=""0"" cellpadding=""3"" >",!
  W "<thead class=""hdfix"" >",!
  W "<tr>"
  W " <th width=""18%"">"_$$^%W1DICT("CODE")_"</th>",!
  W " <th width=""20%"">"_$$^%W1DICT("ITEMNAME")_"</th>",!
  W " <th width=""9%"">"_$$^%W1DICT("EM")_"</th>",!
  W " <th width=""7%"">"_$$^%W1DICT("PRICE")_"</th>",!
  W " <th width=""8%"">"_$$^%W1DICT("QNCOMP")_"</th>",!
  W " <th width=""8%"">"_$$^%W1DICT("SALES10")_"</th>",!
  W " <th width=""8%"">"_$$^%W1DICT("SALES20")_"</th>",!
  W "</tr>",!
  W "</thead>",!
  ;
  D GLTMP
  ;
  D
  .N I,I1,N1 S I=0,N1=""
  .N GLTMP D GLTMP
  .N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  S I=I+1,N1=N D LINE(0,N)
  Q
 ;
 ;
DIVCMNT(NOM) ;
  N COMMENT S COMMENT=""
  W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">",!
  ;
  I $G(PRV),$$PRINT G ETB
  ;
  W " <tr>",!
  I '$$PRINT D 
  .W "<td width=""3%"">",!
  . S %W1PCEX("NOHD")=""
  . S %W1PCEX("NOHD1")=""
  . D DIVEXC^%W1PC1("W4TKDOC","%W1PCEX")
  .W "</td>"
  .
  .W "<td width=""3%"">",!
  . W "&nbsp;"
  .W "</td>"
  .W "<td width=""3%"">",!
  . D FND
  .W "</td>"
  .W "<td width=""50%"">&nbsp;</td>",!
  .W "<td>"
  . W $$^%W1DICT("COLELHZMH")_" "
  . W "<input type=""checkbox"" style=""display:block"" id=""hzmh"" "
  .  W "onClick=""ClickHzMh()"" "_$S($G(%ARG("HZMH")):"checked=""checked"" ",1:"")
  . W ">"
  .W "</td>",!
  ;
  W "<td width=""4%""></td>",!
  W " </tr>",!
ETB ;
  W "</table>",!
 Q
 ;
ONKEYPRESS ;
 S ONKEYPRESS=" onKeyPress=""OnKeyPress(event,'"_I_"','"_NOM_"')"" "
 Q
 ;
READONLY(NOM)
 S NOM=$G(NOM)
 N TX S TX=""
 I $$NOTEDIT(NOM) S TX=" readonly=""readonly"" "
 ;
 S TX=TX_" style=""color:black"
 S TX=TX_";background-color:#eaeaea"
 S TX=TX_""""
 Q TX
 ;
 ;
NOTEDIT(NOM) Q 0
 ;
 ;
FINDIT ;
 W $$^%W1DICT("ITEMNUMBER") W $$NBSP^%L1FRM(2)
 W "<input id=""findItem"" type=""text"" size=""8"" "
 W " onKeyPress=""FindItemEnter(event)"" "
 W " onClick=""this.select()"" />"
 W "&nbsp;"
 W "<input type=""button"" id=""fnditbtn"" value="""_$$^%W1DICT("SEARCH")_""" "
  W " onClick=""FindItem()"" "
 W ">",!
 Q
 ;
 ;
LINE(NOM,I) ;
 N ONKEYPRESS D ONKEYPRESS
 N PRM S PRM=NOM_";"_I
 N A S A=$G(@GLTMP@(I))
 ;
 I $E(A)="~" D  Q
 .W "<tr><td colspan=""9"" style=""background-color:darkgreen;color:white;font-weight:bold;text-align:center"">"
 . W $E(A,2,200)
 .W "</td></tr>",!
 ;
 W "<tr id=""trid"_I_""" "
 W ">"
 W "<td id=""tdcdid"_I_""" align=""center"" "
  W "  style=""cursor:pointer"" "
  N CD S CD=$$CODE(NOM,I)
  I CD'?.P W "onClick=""ShowItemCard('"_CD_"','ifr',self,'&VIEW=1&BACK=1')"" "
 W ">"_$$INPCODE(PRM) W "</td>",!
 ;
 W "<td id=""tdnmid"_I_""" align=""center"">"_$$INPNAME(PRM)_"</td>",!
 ;
 W " <td align=""center"">"
  W $$INPEM(PRM)
 W "</td>",!
 ;
 W " <td align=""center"">"_$$INPPRC(PRM)_"</td>",!
 ;
 N QNC,QNR S QNC=$$QNCOMP(NOM,I)
 S SQNC=SQNC+QNC
 W " <td align=""right"" dir=""LTR"" id=""qncomp"_I_""" "
 W " style=""cursor:pointer"" "
 W " onClick=""ShowItemHist('"_$$CODE(NOM,I)_"','"_DAT_"')"" "
 W " >&nbsp;"_$$RKV(QNC)_"&nbsp;</td>",!
 ;
 D TDLTR W ">"
  S SUM10=$$CDQN(CD,10)
  S SSUM10=SSUM10+SUM10
  W "&nbsp;"_SUM10_"&nbsp;"
  ;;W "CD="_CD_"  QN10="_$$CDQN(CD,10),! H 1 ; ***
 W "</td>",!
 ;
 D TDLTR W ">"
  S SUM20=$$CDQN(CD,20)
  S SSUM20=SSUM20+SUM20
  W "&nbsp;"_SUM20_"&nbsp;"
  ;;W "CD="_CD_"  QN20="_$$CDQN(CD,20),! H 1 ; ***
 W "</td>",!
 ;
 W "</tr>",!
 Q
 ;
 ;
SHOWTOT(NOM)
  W "<tr style=""background-color:yellow;font-weight:bold"">"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
   D TDLTR W " id=""totqnr""><b>"_SQNC_"</b></td>"
   D TDLTR W " id=""totsumc""><b>"_SSUM10_"</b></td>"
   D TDLTR W " id=""totsumr""><b>"_SSUM20_"</b></td>"
  W "</tr>",!
  Q
 ;
GETSPK(NOM)
 I '$G(NOM) Q $$SPK
 Q $P($G(@$$GL@(NOM)),"\",1)
 ;
SPK(STAM)
 I $G(%ARG("SPK")) Q +%ARG("SPK")
 Q +$$GETP^%W1PRM("SPK")
 ;
GETDEP(NOM)
 I '$G(NOM) Q $$DEP
 Q $P($P($G(@$$GL@(NOM)),"\",3)," ")
 ;
DEP(STAM)
 I $G(%ARG("DEP")) Q +%ARG("DEP")
 Q +$$GETP^%W1PRM("DEP")
 ;
DEPNAME(NOM)
 I '$G(NOM),'$$DEP Q ""
 I '$G(NOM) Q $G(@$$^W4GL("DEP")@($$DEP))
 Q $P($P($G(@$$GL@(NOM)),"\",3)," ",2,20)
 ;
GETDAT(NOM)
 Q $$SPA^%L1FRM($$GETP^%W1PRM("DAT"))
 ;
GETDOC(NOMDOC) ;
 Q "ITK"
 ;
GETPRMAM(STAM)
 Q $$GET^%W1PRM("PRMAM")
 ;
 ;
GL(STAM) ;
 Q $$^W4GL("W4IDK")
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMPHBK")
 Q
 ;
GLTMPA ;
 S GLTMPA=$$^W4MAIN("TMPA")
 Q
 ;
 ;
GET(NOM,SH,NRZ)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL
 N SH0 S SH0=0 I NOM S SH0=$$COLST(NOM)
 ;;I '$G(NOM)!'$$SHOW!(NOM&(SH>SH0)) D  Q VL
 D  Q VL
 .S VL=$P($G(@GLTMP@(SH)),"\",NRZ)
 ;
 ;;S VL=$P($G(@GL@(NOM,SH)),"\",NRZ)
 Q VL
 ;
 ;
CODE(NOM,SH) ;
 Q $$GET(NOM,SH,1)
 ;
NAME(NOM,SH) ;
 Q $$GET(NOM,SH,2)
 ;
EM(NOM,SH) ;
 Q $$GET(NOM,SH,7)
 ;
PRC(NOM,SH) ;
 Q $J($$GET(NOM,SH,3),2,2)
 ;
 ;
QNCOMP(NOM,SH) ;
 N QN
 S QN=$$GET(NOM,SH,4)
 I QN["." Q $J(QN,2,2)
 Q QN
 ;
SUM10(CD) ;
 N SUM10
 S SUM10=0
 Q SUM10
 ;
SUM20(CD) ;
 N SUM20
 S SUM20=0
 Q SUM20
 ;
LASTNOM(STAM)
 Q $O(@GL@(999999),-1)
 ;
 ;
SPKNAME(NOM) ;
 N SPK S SPK=$$GETSPK(NOM)
 Q $$NAME^W4SPK(SPK)
 ;
AHMAM(NOM) ;
 I '$G(NOM) Q $G(@$$^W4PRM@("MAM"))
 N AHMAM S AHMAM=$P($G(@$$GL@(NOM)),"\",5)
 I AHMAM="" Q $G(@$$^W4PRM@("MAM"))
 Q AHMAM
 ;
PRMAM(NOM) ;
 Q 0
 ;
HRA(NOM) ;
 N HRA,GLTMP D GLTMP
 I '$G(NOM) Q $P($G(@GLTMP),"\",9)
 Q $P($G(@$$GL@(NOM)),"\",9)
 ;
DIRNAME()
 Q $$DIRNAME^W3PRM
 ;
SHOWNAME(NAME) ;
 I $$DIRNAME="RTL" Q $$H2U^%L1FRM(NAME)
 Q NAME
 ;
NUM(RKV)
 I RKV?."0"."."."0" Q "&nbsp;"
 Q RKV
 ;
SPACE D TDN,TDN,TDN
 Q
 ;
 ;
INIT ;
 D ^%W1ARG,^W3CSS,GLTMP
 I $G(FIRST) K @GLTMP
 D PUT^%W1PRM("SPK",$G(SPK))
 D PUT^%W1PRM("DEP",$G(DEP))
 D PUT^%W1PRM("DAT",$$SPA^%L1FRM($G(DAT)))
 D PUT^%W1PRM("DOC","ITK")
 S $P(@GLTMP,"\")=$G(SPK)
 S $P(@GLTMP,"\",2)=$G(SPK1)
 S $P(@GLTMP,"\",4)=$G(DAT)
 Q
 ;
 ;
SHOW(STAM) ;
 I $G(%ARG("SHOW")) Q 1
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 Q 0
 ;
VIEWONLY(STAM) ;
 I $G(%ARG("VIEWONLY")) Q 1
 Q 0
 ;
HOW(STAM) ;
 I $$IDKSUG Q 2
 I $G(%ARG("HOW")) Q $G(%ARG("HOW"))
 Q 0
 ;
IDKSUG()
 Q $G(@$$^W4GL("W3PRM")@("IDKSUG"))
 ;
 ;
FRMLN(NOM,N,CD) ;
 N MH,IND,NM,QNR,IND
 I '$G(NOM) S MH=$J($$MLMHER^W4MLPRT(CD),2,2)
 I $G(NOM) S MH=$P($G(@$$GL@(NOM,N)),"\",3)
 S NM=$$MLNAME^W4MLPRT(CD)
 N DT S DT=$$^%L1DC(DAT,3) ;;-1
 ;
 D GLTMPA
 ;
 D  ; --- ABC SORT
 .N J
 .S IND=$$INV^%L1FRM(NM)
 .S IND=$$ENG^%L1FRM(IND,10)
 .N SUGP S SUGP=$$MLSUGP^W4MLPRT(CD)
 .S SUGP=$J(SUGP,7)
 .I $$IDKSUG S IND=SUGP_"^"_IND_"^"_$J(CD,8)
 .I '$$IDKSUG S IND=IND_"^"_$J(CD,8)
 .S QNC=$$QNC(CD,DT)
 .
 .S SUM10=$$CDQN(CD,10)
 .S SUM20=$$CDQN(CD,20)
 .S @GLTMPA@(IND)=CD_"\"_NM_"\"_MH_"\"_QNC_"\"_SUM10_"\"_SUM20_"\1"
 Q
 ;
 ;
QNC(CD,DT) ;
 N QN S QN=+$$^W4GETMLY(CD,DT)
 I $G(NUMBER) D
 .N GLMLY S GLMLY=$$^W4GL("W4MLY")
 .N HD S HD=$G(@$$^W4GL("W4IDK")@(NUMBER))
 .N SPK S SPK=$P(HD,"\") S:SPK="" SPK=0
 .N QNI S QNI=$G(@GLMLY@(DT,CD,"I",SPK,"ITK",NUMBER))
 .S QN=QN-QNI
 Q QN
 ;
FND ;
  W "<img id=""imgsrc"" src=""w4find.png"" onClick=""SearchText()"" "
  W "style=""cursor:pointer;width:"_$$^W4KF(25)_"px;height:"_$$^W4KF(25)_"px"" />"
 Q
 ;
 ;
TMPA2TMP ;
 N N1 S N1=$O(@GLTMPA@("")) Q:N1=""
 N I S I=0
 N SUGO S SUGO=""
 ;
 S N="" F  S N=$O(@GLTMPA@(N)) Q:N=""  D
 .I $$IDKSUG D 
 ..S SUG=$P(N,"^")
 ..
 ..I SUG'=SUGO D
 ...N SUGP S SUGP=$$SPA^%L1FRM(SUG) S:SUGP="" SUGP=" "
 ...S I=I+1
 ...S @GLTMP@(I)="~"_SUGP_" "_$$H2U^%L1FRM($G(@GLSUGP@(SUGP)))
 ...S SUGO=SUG
 .
 .S I=I+1
 .S @GLTMP@(I)=@GLTMPA@(N)
 ;
 K @GLTMPA
 Q
 ;
 ; 
INPCODE(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N CODE S CODE=$$CODE(NOM,I)
 Q CODE
 ;
INPNAME(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N NAME,DIRNAME
 S DIRNAME=$$DIRNAME
 N NM S NM=$$NAME(NOM,I)
 I NM?.P D
 .N CD S CD=$$CODE(NOM,I)
 .I $L(CD) S NM=$$MLNAME^W4MLPRT(CD)
 S NAME=$$SHOWNAME(NM)
 Q NAME
 ;
INPEM(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,7) S:'VL VL=1
 N GLMLEM S GLMLEM=$$^W4GL("MLMIDA")
 ;
 N ZN S ZN=$G(@GLMLEM@(VL))
 I ZN="" S ST="&nbsp;" Q
 S ST=$$H2U^%L1FRM(ZN)
 ; 
 Q ST 
 ;
 ;
INPPRC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 Q $$NUM($$PRC(NOM,I))
 ;
INPQNC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 ;
 N QN S QN=$$QNCOMP(NOM,I)
 S ST=""
 I QN<0 S ST="<span style=""color:red"">"
 S ST=ST_$$NUM(QN)
 I QN<0 S ST=ST_"</span>"
 Q ST
 ;
 ;
CDQN(CD,DAYS)
 N QN S QN=+$G(MPRT(DAYS,CD))
 Q QN
 ;
SUM(DAYS) ; 
 N (JB,%ARG,DAYS,MPRT)
 S DT1=+$H
 S DT2=DT1+DAYS-1
 S GLEZM=$$GLEZM^W4SETMLY
 ;
 F DT=DT1:1:DT2 D 
 .S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  I $$HZM^W4MSL(HZ) D
 ..I $$^W4HZMH(HZ),'$G(%ARG("HZMH")) Q
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZ,N1)) Q:N1=""  I N1 D 
 ...S ST=$G(^(N1)) 
 ...S PAR=$P(ST,"\") Q:'PAR
 ...S KPAR="K"_PAR
 ...I $D(@GLEZM@(KPAR))<10 Q
 ...
 ...S QN=$P(ST,"\",5) Q:'QN
 ...D KPARQN(KPAR,QN,DAYS)
 ...
 ...S N2="" F  S N2=$O(@$$^W4ORD@(HZ,N1,N2)) Q:N2=""  I N2 D 
 ....I $D(^(N2))<10 D  Q
 .....S ST2=$G(^(N2))
 .....S QNT2=$P(ST2,"\",3)
 .....I QNT2["*" S QNT2=$P(QNT2,"*")*$P(QNT2,"*",2)
 .....E  S QNT2=QNT2*QN
 .....D KPARQN("K"_N2,QNT2,DAYS)
 ....
 ....S N3="" F  S N3=$O(@$$^W4ORD@(HZ,N1,N2,N3)) Q:N3=""  I N3 D
 .....S ST3=$G(^(N3))
 .....S CD3=$P(ST3,"\") Q:'CD3
 .....S QNT3=$P(ST3,"\",3) S:'QNT3 QNT3=1
 .....S QNT3=QN*QNT3
 .....D KPARQN("K"_CD3,QNT3,DAYS)
 Q
 ;
 ;
KPARQN(KPAR,QN,DAYS)
 N PRTM,STM,QNM,KF
 S PRTM="" F  S PRTM=$O(@GLEZM@(KPAR,PRTM)) Q:PRTM=""  D
 .S STM=$G(^(PRTM))
 .I $G(%ARG("DEP")),$$MLDEP^W4MLPRT(PRTM)'=%ARG("DEP") Q
 .S QNM=$P(STM,"\",4)
 .S KF=1
 .S QNM=QNM*QN*KF 
 .S MPRT(DAYS,PRTM)=$G(MPRT(DAYS,PRTM))+QNM
 .
 .I $D(@GLEZM@(PRTM))>9,'$D(@GLEZM@(PRTM,PRTM)) D
 ..D KPARQN(PRTM,QNM,DAYS)
 Q
 ;
RKV(VL)
 I VL<0 Q "<span style=""color:red"">"_VL_"</span>"
 Q VL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4MZZIC
W4MZZIC(HZM,BIT,SUM,SIBA1,MNL,NAME,NOM) ; [ 29.09.26 16:23 ] [ 28.09.26 13:46 ] [ 16.09.26 10:38 ] 
 N (JB,%ARG,HZM,BIT,SUM,SIBA1,MNL,NAME)
 D KILL^%W1PRM("BITZICRES")
 N SUGT S SUGT="MZ"
 S NAME=$G(NAME)
 S SIBA1=$G(SIBA1)
 S MNL=$G(MNL)
 I MNL,NAME="" D
 .S NAME=$$^W4NAME(MNL)
 S ^AA("W4MZZIC")=1
 ;
 S RESST=0
 ;
 I BIT D
 .S BITL=$O(@$$^W4ORD@(HZM,"BIT",99999),-1) I 'BITL Q
 .S SIBA1=$$SIBA1^W4HZMST(HZM,BITL)
 .S MNL=$$WHODEL^W4HZMST(HZM,BITL)
 .S NAME=$$WHODEL1^W4HZMST(HZM,BITL)
 ;
 S END=0
 ;
 D
 .I '$G(NOM) D  Q
 ..S NOM="" F  S NOM=$O(@$$^W4ORD@(HZM,"CB",SUGT,NOM))  Q:NOM=""  D ZICMZ(HZM,NOM,SUGT)  ;;I '$G(BIT) Q:END
 .
 .D ZICMZ(HZM,NOM)
 ;
 I '$G(BIT) Q RESST
 Q
 ;
 ;
HB(TX)
 Q $$HB^W4PAYCA(TX)
 ;
ZICMZ(HZM,NOM,SUGT) ; 
 N A,TRID,ZIC
 S A=$G(@$$^W4ORD@(HZM,"CB",SUGT,NOM))
 S TRID=$$GET^W4GTVCH(HZM,NOM,SUGT,"TRID")
 I 'TRID S TRID=$$TRIDMZ^W4HZMST(HZM)
 I '$G(SUM) S SUM=$$GET^W4GTVCH(HZM,NOM,SUGT,"SUM")-$$GET^W4GTVCH(HZM,NOM,SUGT,"ZIC")
 ;;I $G(BIT) S SUM=SUM-ZIC
 S ^AA("W4MZZIC-ZICMZ","TRID")=TRID
 S ^AA("W4MZZIC-ZICMZ","SUM")=SUM
 Q:TRID=""
 I 'SUM Q
 I SUM<0 S SUM=-SUM
 N ORD S ORD=$$HZLAKNOM^W4HZMST(HZM) 
 ;
 S ^AA("W4MZZIC-ZICMZ","SUGT")=SUGT
 S ^AA("W4MZZIC-ZICMZ","NOM")=NOM
 S ^AA("W4MZZIC-ZICMZ","HZM")=HZM
 S ^AA("W4MZZIC-ZICMZ","ORD")=ORD
 S ^AA("W4MZZIC-ZICMZ","TRID")=TRID
 S ^AA("W4MZZIC-ZICMZ","SUM")=SUM
 S ^AA("W4MZZIC-ZICMZ","SIBA1")=SIBA1
 S ^AA("W4MZZIC-ZICMZ","MNL")=MNL
 ;
 S RESST=$$^W4ZICSND(HZM,SUGT,NOM,ORD,TRID,SUM,SIBA1,MNL,NAME)
 ;
 I 'RESST D
 .S $P(RESST,"~",5)=$H
 .S $P(RESST,"~",6)=SUM
 .S @$$^W4ORD@(HZM,"ZICER")=1
 .S @$$^W4ORD@(HZM,"ZICER",SUGT,NOM)=RESST
 ;
 D PUT^%W1PRM("BITZICRES",RESST)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4N2V
W4N2V(HZM,N1) ; [ 01.01.26 10:39 ] [ 02.11.23 16:56 ] [ 02.12.19 07:33 ] 
 N (JB,%ARG,%REM,HZM,N1)
 N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 K @VRMHZ
 D W4HZM
 ;
 S GLADD=$$^W4GL("W4ADDSID")
 ;
 S ST=$G(@W4HZM@(N1))
 S CD=$P(ST,"\")
 S SUG=$$SUG^W4P(CD)
 ;
 I SUG,$D(@GLADD@(SUG))>9 D
 .N N2V,ST S ST=$G(@W4HZM@(N1)),CD=$P(ST,"\") Q:'CD
 .N N2 S N2="" F  S N2=$O(@W4HZM@(N1,N2)) Q:N2=""  D
 ..S N2V=+$$SRCADD(CD,N2)
 ..Q:'N2V  ; -- 1/01/26
 ..;;I 'N2V!$D(@VRMHZ@(N2V)) D; -- 1/01/26 --> COMMENT
 ...S N2V=$O(@VRMHZ@(999999),-1)+1
 ..S @VRMHZ@(N2V)=N2
 .
 ;
 N N2 S N2="" F  S N2=$O(@W4HZM@(N1,N2)) Q:N2=""  D
 .N N2V,ST S ST=$G(^(N2))
 .S N2V=N2 I $P(ST,"\",$$NRZ) S N2V=$P(ST,"\",$$NRZ)
 .I $D(@VRMHZ@(N2V)) D
 ..S N2V=$O(@VRMHZ@(999999),-1)+1
 .S @VRMHZ@(N2V)=N2
 Q
 ;
NRZ(STAM) ;
 Q 7
 ;
W4HZM I $D(%ARG("GLORD")) S W4HZM=%ARG("GLORD") Q
 N GL D GL S W4HZM=GL
 Q
 ;
GL S GL=$$^W4GL("P1HZ")_"(HZM)"
 I $G(HZM),HZM>0,HZM["-" D
 .N NTS,HZMAIN S HZMAIN=+HZM,NTS=$P(HZM,"-",2)
 .S GL=$$^W4GL("P1HZ")_"("_HZMAIN_",""PART"","_NTS_")"
 Q
 ;
SRCADD(CD,N2) ; 
 I '$G(CD) Q 0
 N SUG S SUG=$$SUG^W4P(CD) I 'SUG Q 0
 N GLADD S GLADD=$$^W4GL("W4ADDSID")
 N OK S OK=0
 N J S J="" F  S J=$O(@GLADD@(SUG,J)) Q:J=""  D  Q:OK
 .I ^(J)=N2 S OK=J 
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NAME
W4NAME(%CDNM) ; [ 06.04.22 14:32 ] [ 05.04.22 13:53 ] [ 03.04.22 13:42 ] 
 I $G(%CDNM)="" Q ""
 S %CDNM=$$DOP(%CDNM)
 I %CDNM="00000" Q ""
 N NAME S NAME=""
 N MSDCUR S MSDCUR=$$GETP^%W1PRM("MSD")
 Q $G(@$$^W4GNAME@(%CDNM,1))
 ;
 ;
SHORT(%CDNM) ;
 I %CDNM="" Q ""
 S %CDNM=$TR($J(%CDNM,5)," ",0)
 N A,I,B S A=$G(@$$^W4GNAME@(%CDNM,1)),B=""
 S B=$$SPA^%L1FRM(A),B=$$SP1^%L1FRM(B)
 S B1=$P(B," ",$L(B," ")-1)
 S B2=$P(B," ",$L(B," "))
 S B=$E(B1,$L(B1))_" "_B2
 Q B
 ;
DOP(%CD) ;
 Q $TR($J(%CD,5)," ",0)
 
 
 
 
 
 
 

W4NETM
W4NETM(STAM) ; [ 11.07.13 06:41 ] [
 Q $$GETP^%W1PRM("REPNET")

W4NETSND
W4NETSND ; [ 17.06.26 10:57 ] [ 07.08.25 03:04 ] [ 05.05.25 13:17 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S MSDR=$G(%ARG("MSDR"))
 ;
 D ^%W1HD("SENDAGAIN")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
  D MEADDAT
  S VV=1 D BTN
  D TBLSN
  S VV=0 D BTN
 W "</div>",!
 Q
 ;
 ;
MEADDAT ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"" align=""center"" width=""60%"">",!
  W "<tr>"
   W "<td align=""center"">"
    D ^%W1DAT("MEDAT",+$H-1,$$^%W1DICT("FROMDATE"))
   W "</td>"
   W "<td align=""center"" >"
     D ^%W1DAT("ADDAT",$H-1,$$^%W1DICT("UNTILDATE"))
   W "</td>"
  W "</tr>"
 W "</table>",!
 Q
 ;
 ;
TBLSN ;
 W "<p></p>",!
 D MMRKZ^W4MRKG(MSDR)
 W "<table border=""0"" cellspacing=""0"" cellpadding=""3"" width="""_$$WD_"%"" >",!
  W "<tr>",!
   W "<td width=""65%"">"
    W "&nbsp;"
   W "</td>"
   W "<td width=""20%"" "_$$INV^%W1ALIGN_">"_$$^%W1DICT("SIGNALL")_"</td>"
   W "<td align=""center"">"
    W "<input type=""checkbox"" id=""signall"" onClick=""SignAll()"" />"
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 ;
 W "<table id=""Tbl"" border=""1"" cellspacing=""0"" cellpadding=""3"" width="""_$$WD_"%"" >",! 
  W "<tr>"
   W "<th>"_$$^%W1DICT("SNIFNUMBER")_"</th>",!
   W "<th>"_$$^%W1DICT("CODEUSA")_"</th>",!
   W "<th width=""40%"">"_$$^%W1DICT("RESTNAME")_"</th>",!
   W "<th>"_$$^%W1DICT("LASTSENDINGTIME")_"</th>",!
   W "<th>"_$$^%W1DICT("SIGN")_"</th>",!
  W "</tr>",!
  ;
  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
  .W "<tr>"
  . W "<td align=""center"" >"_N_"</td>"
  . N CODUSA S CODUSA=$$CODUSA^W3R(N)
  . W "<td style=""text-align:center;color:grey"" >"_CODUSA_"</td>"
  . W "<td>"_$$H2U^%L1FRM($G(MMRKZ(N)))_"</td>"
  . W "<td dir=""LTR"" align=""center"" width=""20%"">"
  .  W $$LASTTIME(MSDR,N) 
  . W "</td>"
  . W "<td align=""center"">"
  .  w "<input type=""checkbox"" id=""chk"_N_""">"
  . W "</td>"
  .W "</tr>",!
 W "</table>",!
 Q
 ;
BTN ;
 W "<p></p>",!
 W "<table width="""_$$WD_"%"" align=""center"" >",!
  W "<tr>" 
   W "<td id=""datsnd"" width=""20%""></td>"
   W "<td width=""20%"" >"
    I $G(VV) D
    .W "TO USA TOO <input type=""checkbox""id=""amer"" />"
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>" D ^W4SBM W "</td>"
   W "<td>" D ^W4BCK W "</td>"
   W "<td id=""datsnd"" width=""20%"">&nbsp;</td>"
  W "</tr>"
 W "</table>",!
 Q
 ;
 ;
SEND(JB,PRM) ; 
 ;;S ^AA("W4NETSND-SEND","PRM")=$G(PRM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N MSDR,dat,MEDAT,ADDAT,DT,MEDT,ADDT,SNIF,ER 
 S MSDR=$P(PRM,"~",1) I 'MSDR S ER="NOMSDR" G SENDE
 S DAT=$P(PRM,"~",2)
 S SNIFIM=$P(PRM,"~",3,$L(PRM,"~")-1)
 ;
 N I F I=1:1:$L(SNIFIM,"~") D
 .S SNIF=$P(SNIFIM,"~",I)
 .D SEND2SNIF(MSDR,SNIF,DAT) 
 ; 
 S ER="DONE"
 H 3
 ;
SENDE D PUT^%W1PRM("NETSNDRES",ER)
 Q
 ;
 ;
SEND2SNIF(MSDR,MSD,DAT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N FL
 S FL="/tmp/w4netsnd"_MSDR_"-"_MSD
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION) U FL
  W "<Date>"_DAT_"</Date>",!
 C FL
 ;;S ^AA("W4NETSND-SEND2SNIF",MSDR,MSD)=$H_"\"_DAT
 N D,DT1,DT2
 S DT1=$$^%L1DC($P(DAT,"^"),3)
 S DT2=$$^%L1DC($P(DAT,"^",2),3)
 I DT2<DT1 S DT2=DT1
 ;
 ;D PUT^%W1PRM("NETSNDRES","WAIT")
 D PUT^%W1PRM("NETSNDRES",MSD)
 H 3
 Q
 ;
 ;
LASTTIME(MSDR,SNIF) ;
 N LASTTIME,LASTDT,ST
 S LASTTIME=$G(^|$$^W3MAIN|W4NETSND(MSDR,SNIF)) I LASTTIME="" Q ""
 S ST="<span style=""text-decoration:underline"">"_$ZD($P(LASTTIME,"\"),"DD.MM.YY 24:60")_"</span><BR>"
 S ST=ST_"<span style=""color:darkblue;font-size:"_$$^W3FSZ(8)_""">"
 N MDT S MDT=$P(LASTTIME,"\",3)
 N I F I=1:1:$L(MDT,",") D
 .S ST=ST_$ZD($P(MDT,",",I),"DD.MM.YY")_" "
 S ST=ST_"</span>"
 Q ST
 ;
 ;
WD() Q 60
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NETTIM
W4NETTIM ; [ 18.09.25 09:55 ] [ 31.07.23 13:00 ] [ 13.01.22 08:33 ] 
 N (JB,%REM,%ARG)
 S MSDR=$G(%ARG("MSDR"))
 I '$G(JB) W "JB NOT DEFINED !",! Q
 I '$G(MSDR) W "MSDR NOT DEFINED !",! Q
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""overflow-x:auto"">",! 
  W "<table border=""0"" >",!
   W "<tr>",!
    S N="" F  S N=$O(^|$$^W3MAIN|W3MSDR(MSDR,N)) Q:N=""  I $G(^(N)) D
    .W "<td id=""td"_N_""" style=""cursor:pointer;border:2px solid black;text-align:center"" "
    .W " onClick=""OnClick('"_N_"')"" >"
    .  W N_"<br>&nbsp;"_$$H2U^%L1FRM($$MSD^W3R(N))
    .W "</td>",! 
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NETUPD
W4NETUPD(MSDR,MEDAT,ADDAT,MSD) ; [ 01.10.23 19:48 ] [ 13.12.21 17:29 ] [ 07.12.21 12:46 ] 
 N (JB,%ARG,MSDR,MEDAT,ADDAT,MSD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S GL="^|"""_$$^W3MAIN_"""|W3MSDR("""_MSDR_""")"
 ;
 S $ZT="G ER^W4NETUPD"
 D ^%W1ARG
 S N=""
CYC S N=$O(@GL@(N)) G:N="" END D
 .I $G(MSD),N'=MSD Q
 .S REF=$$SITE^W3R(N) Q:REF=""
 .S REF=$P(REF,"/",1,$L(REF,"/")-1)_"/w4updnet.jsp?MEDAT="_MEDAT_"&ADDAT="_ADDAT
 .S FILEIN="/tmp/tmpnetupd"_JB
 .C FILEIN:(DELETE) 
 .O FILEIN:(NEWVWERSION:REWIND)
 .U FILEIN W "url="_REF
 .C FILEIN
 .S FLOU="/home/www2order/w4netupdou"_N
 .S CMD="curl -s -m 45 -K "_FILEIN_" -o "_FLOU
 .ZSY CMD
 .;
 .U 0 W "N="_N
 .W "  $ZSY="_$ZSY,! H 1
 G CYC
END ;
 S $ZT="",N="" Q
 ;
ER ;
 U 0 W N_": "_$ZS,!
 S ^|$$^W3MAIN|W4UPDERR(+$H,"ER",N)=$ZS
 G CYC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NETZIC
W4NETZIC ; -- DOH ZICUIM MI ATAR [ 23.09.26 08:58 ] [ 12.07.26 16:57 ] [ 28.05.26 12:11 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 N TMPPR S TMPPR=$$^W4MAIN("TMPPR") K @TMPPR
 K %L1PC
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S %REPN="W4NETZIC"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 S TMPSN="^|$$^W3MAIN|TMPSN" K @TMPSN
 ;
 S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @TMPSN@(N)=$$MSD^W3R(N)
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("VAL","MSDR")=MSDR
 ;
 S MSDR=+$G(MSDR)
 ;;S TMP=$$^W4MAIN("TMP") K @TMP
 ;;M @TMP=^|$$^W3MAIN|W4NETZIC(MSDR)
 Q
 ;
 ;
TRH ;
 ;;U 0 W "DT="_DT,! ; ***
 I DT<METRH!(DT>ADTRH) S OK=0 Q
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) S OK=0 Q
 ;
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
 ;
MSD ;
 I MSD<MEMSD S OK=0 Q
 I MSD>ADMSD S OK=0 Q
 S MSD1=$$^W3R(MSD)
 Q
 ;
SUGT ;
 S SUGT1=""
 I SUGT="V" S SUGT1="i`xy` qihxk"
 I SUGT="MZ" S SUGT1="onefn"
 Q
 ;
 ;
NOM ;
 ;;U 0 W "GLOB="_GLOB_" HZM="_$G(HZM)_" SUGT="_$G(SUGT),! ; ***
 I MEHZM,HZM<MEHZM S OK=0 Q
 I ADHZM,HZM>ADHZM S OK=0 Q
 I SUGT'="",MESUGT?1U.U,ADSUGT?1U.U,SUGT'=MESUGT,SUGT'=ADSUGT S OK=0 Q
 N A S A=$G(@GLOB)
 S OKZIC=$P(A,"\")
 ;;U 0 W "OK="_OK_" A="_A,! ; ***
 I MEOKZIC,OKZIC<MEOKZIC Q
 I ADOKZIC,OKZIC>ADOKZIC Q
 D OKZIC
 S NAME=$P(A,"\",9)
 ;
 S x1=$P(A,"\",3) ; -- NCA
 S x2=$P(A,"\",4) ; -- TRID
 S x3=$P(A,"\",7) ; -- TREFID
 S x4=$ZD($P(A,"\",11),"DD.MM.YY 24:60") ; -- ZMAN ZICUY
 S x5=$P(A,"\",2) ; -- SUM
 S x6=$P(A,"\",10) ; -- SIBA
 S x7=NAME
 S x8=$P(A,"\",6) ; -- ER1
 Q
 ;
 ; 
OKZIC ;
 S OKZIC1=""
 I OKZIC=0 S OKZIC1="NOK"
 E  S OKZIC1="OK" 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NEWCUS
W4NEWCUS(MEDAT,ADDAT) ; [ 01.08.21 14:34 ] [ 20.07.20 19:37 ] [ 06.07.20 15:49 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,%REPN)
 D ^W4IN ;;,^%W1PCVRM K @VRM
 S DT1=$$^%L1DC(MEDAT,3),DT2=$$^%L1DC(ADDAT,3)
 S GL=$$^W4GL("W4NEWCUS")
 ;
 I '$D(@GL) D CRNEWCUS
 ;
 S %REPN="NEWCUS"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("METRH")=DT1,%REPN("ADTRH")=DT2
 S %REPN("METRH","VIEW")=1,%REPN("ADTRH","VIEW")=1
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 D PUT^%W1PRM("HRFREP","w4newcus.jsp?JB="_JB)
 ;
 Q 
 ;
 ;
DAT ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 S TRH=$ZD(DT,"DD.MM.YY")
 Q
 ;
LK ;
 N HZ,STAT,MKRDLV,MKR
 S HZ=$G(@GLOB)
 ;;S ^AA("NEWCUS",+LK,"GLOB")=GLOB
 ;;S ^AA("NEWCUS",+LK,"HZ")=HZ
 S (x1,x2,x3,x4,x5,x6,x7)=""
 S x1=HZ
 S x2=$$TSHL^W4HZMST(HZ)
 S x3=$$TRH^W4HZMST(HZ)
 S STAT=$S($$DEL^W4DEL(HZ):"dlhea",$$^W4HZMH(HZ):"xign zrvd",1:"dxye`")
 S MKRDLV=$$MKRDLV^W4HZMST(HZ)
 S MKR="" I MKRDLV S MKR=$G(@$$^W4GL("W3MKR")@(MKRDLV))
 S CMNT=$$CMNT^W4HZMST(HZ)
 S x4=CMNT
 S x5=STAT
 S x6=MKR
 S KIND=$$KINDORD^W4HZMST(HZ)
 S x7=$S(KIND:"ihxt",1:"iwqr")
 S x8=1
 Q
 ;
CRNEWCUS ; 
 N LK,MSD,HZ
 S GL=$$^W4GL("W4NEWCUS")
 S LK="" F  S LK=$O(@$$^W4GL("W4LINKI")@(LK)) Q:LK=""  D
 .S MSD="" F  S MSD=$O(@$$^W4GL("W4LINKI")@(LK,MSD)) Q:MSD=""  D
 ..S HZ=$O(@$$^W4GL("W4LINKI")@(LK,MSD,"")) Q:HZ=""  D
 ...S DT=$$^%L1DC($P($$DATCB^W4HZMST(HZ)," "),3)  ;+$G(^(HZ))
 ...S @GL@(DT,LK)=HZ
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NEWHZ
W4NEWHZ(HZW,HZM,NOPRINT) ; [ 23.09.26 14:49 ] [ 19.02.26 09:15 ] [ 29.05.24 14:13 ] 
 N (HZW,HZM,%REM,NOPRINT,P1HZOP)
 S JB=+$G(HZW)
 S ^AA("W4NEWHZ","NOPRINT")=$G(NOPRINT)
 ;
 S NMB=$$NMB^W3HZMST(JB)
 I NMB'<1,$$^W4POSMSK(NMB)!($G(HZM)["M") D  Q HZM_$S(HZM["M":"",1:"M")
 .S HZM=$$SAVE^W4POSMSK(+$G(HZM))
 ;
 S CURREST=""
 I $$MM^W4PRM,$$GETP^%W1PRM("CURREST") D
 .S CURREST=$$GETP^%W1PRM("CURREST")
 ;
 D PUT^%W3DEB("W4NEWHZ","HZW=HZW & HZM=HZM & NOPRINT=NOPRINT")
 I '$G(HZW) Q -.5
 ;
 D TMPORD,TMPORDB
 ;
 I $G(^DEBUG("TMPORDA")) D
 .S DT=$$^W4DZ
 .K ^[$$^W3MAIN]TMPORDA(DT-100)
 .S IA=$O(^[$$^W3MAIN]TMPORDA(DT,999999),-1)+1
 .M ^[$$^W3MAIN]TMPORDA(DT,IA)=@TMPORD
 .S ^[$$^W3MAIN]TMPORDA(DT,IA,"HZM")=$G(HZM)_"\"_$G(HZW)_"\"_$G(NOPRINT)_"\\"_$G(%REM)
 .M ^[$$^W3MAIN]TMPORDBA(DT,IA)=@TMPORDB
 .S ^[$$^W3MAIN]TMPORDBA(DT,IA,"HZM")=$G(HZM)_"\"_$G(HZW)_"\"_$G(NOPRINT)_"\\"_$G(%REM)
 ;
 I '$P($G(@TMPORD),"~"),$$NMB^W4TMPHD D
 .S @TMPORD=$$GET^W4TMPHD
 ;
 K @TMPORD@("SCRY")
 ;
 D
 .N ORDHD S ORDHD=$$GETP^%W1PRM("ORDHD") Q:'$P(ORDHD,"~")
 .N NMB S NMB=$$NMB^W3HZMST(JB) Q:'NMB
 .;
 .I $$^W4MSL(NMB),$$NAME^W3HZMST(JB)="",'$$COMP^W3PRM D
 ..I NMB'=$P(ORDHD,"~") Q
 ..I '$P(ORDHD,"~")!($P(ORDHD,"~",2)="") Q
 ..I $$STREET^W3HZMST(JB)?.P D  Q
 ...S @TMPORD=ORDHD
 ..S $P(@TMPORD,"~",2)=$P(ORDHD,"~",2)
 .
 .S $P(@TMPORD,"~",11)=$$CALC^W3HZMST(HZW) ; -->
 ;
 I '$D(@TMPORD) S ER=-1 G ERHZM
 I $D(@TMPORD)'=11 S ER=-2 G ERHZM
 ;
 D CHKDMSH
 ;
 I $G(HZM)>0,$D(@$$^W4ORD@(HZM,"BSL")) D
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BSL",N)) Q:N=""  D
 ..I N'="INVPC",N'="PAY" K ^(N)
 ;
 S FIRSTST=$G(@TMPORD@(1))
 ;
 I $E($$HZMLAK^W3HZMST(HZW))'="W" D ^W4TIKHZ(HZW)
 ;
 I $$GETP^%W1PRM("MSDFROM"),'$G(CURREST) D
 .D PUT^%W1PRM("MSDFROMSAVED",1)
 .S @TMPORD@("MSD")=$$GETP^%W1PRM("MSDFROM")
 .S $P(@TMPORD,"~",51)=99
 ;
 I CURREST S @TMPORD@("MSD")=CURREST
 ;
 I $$GETP^%W1PRM("MIMUSHPZM"),'$D(@TMPORD@("MIMUSHPZM")) D
 .S @TMPORD@("MIMUSHPZM")=$$GETP^%W1PRM("MIMUSHPZM")
 .D KILL^%W1PRM("MIMUSHPZM")
 ;
 D ^W4IN
 S %SCRN="P1HZMS"
 ;
 S NEWHZ=0
 K @TMPORD@("NEW")
 ;
 I $G(HZM)<1,$G(HZM)>-2 S HZM=$$NEW^W4KLNEW,NEWHZ=1 D
 .S $P(@TMPORD,"~",29)=$$^%L1DC(P1DZ,1)
 .S $P(@TMPORD,"~",12)="" ; -- SHULAM
 .S $P(@TMPORD,"~",17)="" ; -- SHULAM B-AKAFA
 .K @TMPORD@("GIBCB")
 .M @TMPORD@("GIBCB","HNH1")=@TMPORD@("CB","HNH1")
 .K @TMPORD@("CB")
 .
 .I $D(@TMPORD@("GIBCB")) D
 ..M @TMPORD@("CB")=@TMPORD@("GIBCB")
 ..K @TMPORD@("GIBCB")
 .
 .K @TMPORD@("CBOLD")
 .K @TMPORD@("S")
 ;
 ;
 S ER=0
 ;
 S %REM=$$GET^%W1PRM("REM")
 D THZ(JB)
 K @THZ,@THZ1
 ;
 S LASTI=0
 ;
 K @THZ,@THZ1 S LASTI=0
 ;
 N A,B,C,C1,I S A=$G(@TMPORD) Q:A="" -3
 ;
 D PUT^%W3DEB("W4NEWHZ","A=A")
 I $P(A,"~",21)=5 S $P(A,"~",21)=8 ;  -- CIBUS
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 ;
 S TSHL=$P(A,"~",11)
 ;
 S @THZ=$TR($P(A,"~",1,29),"~","\")
 ;
 S HNAH=$P(A,"~",38)
 S HNH=$P(A,"~",8)
 S DMSH=$P(A,"~",9)
 S $P(@THZ,"\",22)=HNAH
 ;
 I HNAH>1,HNH<1&(HNH>-1),TSHL'<0,(TSHL-DMSH+HNH)*HNAH*.01>1 D
 .S $P(@THZ,"\",8)=$J(HNAH*(TSHL-DMSH+HNH)*.01,2,2)
 ;
 S $P(@THZ,"\",30)=$P(A,"~",60) ; -- HZMLAK
 S $P(@THZ,"\",33)=$P(A,"~",77) ; -- MKRNOM
 ;
 I $L($P(A,"~",51)) D  ; MAKOR
 .S @THZ@("MKRDLV")=$P(A,"~",51)
 ;
 I $L($P(A,"~",76)) D  ; MAKOR1
 .S @THZ@("MKRDLV1")=$P(A,"~",76)
 ;
 I $L($P(A,"~",56)) D  ; EMAIL
 .S @THZ@("EMAIL")=$P(A,"~",56)
 ;
 I $L($P(A,"~",57)) D  ; MIKUD
 .S @THZ@("MIKUD")=$P(A,"~",57)
 I $L($P(A,"~",58)) D  ; FAX
 .S @THZ@("FAX")=$P(A,"~",58)
 I $L($P(A,"~",59)) D  ; TELB
 .S @THZ@("TELB")=$P(A,"~",59)
 I $L($P(A,"~",63)) D  ; ADSHAA
 .S @THZ@("ADSHAA")=$P(A,"~",63)
 I $L($P(A,"~",74)) D  ; KINDORD
 .S @THZ@("KINDORD")=$P(A,"~",74)
 ;
 ;-----------------------------------
 S (CD,CDT,CDTO,CDT2,NM,NMT,NMT2,CMNT,CMNT2,LN0,C,C1)=""
 K N2I
 ;
 D MN^W4MANA
 ;
 S MSD=$$MSD
 ;
 S I=0,I0=0,I1=LASTI,ERQN=0
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  S LN0=$G(@TMPORD@(N))
 .S CO=C,C=$G(^(N))
 .S NODEL=0
 .F JJ="BIT","MRG","MVTO","MVFROM","TS","FROM" I $D(@TMPORD@(N,JJ)) S NODEL=1
 .
 .I $P(C,"~")=0 D  Q
 ..I $$SUPER^W3PRM S $P(C,"~",12)="@@"
 ..S ERQN=0
 ..S (CDT,NMT,MHT,MHT0,HNT,CMT,HDST)=""
 ..I $D(TMPNEW),I0>1 D TMPNEW2ORD(I0)
 ..K TMPNEW,QNDIF
 ..N CMHN,PRKILL S CMHN="",SH2=0
 ..;
 ..S CD=$P(C,"~",2),NM=$$SPA^%L1FRM($P(C,"~",3))
 ..I $E(CD)="A" Q
 ..I CD'[">",MSD,$$MM^W4PRM S CD=MSD_">"_CD
 ..S NM=$$CNWEB^%L1FRM(NM)
 ..S MH=$P(C,"~",4),CM=$P(C,"~",5)
 ..;;I CD?1N.N.".".N,'CM S ERQN=1 Q
 ..S I=I1+1,I1=I1+1
 ..S A0=$G(@THZ1@(I)) K @THZ1@(I) S @THZ1@(I)=A0
 ..
 ..S I0=I
 ..
 ..N AHST S AHST=$P(C,"~",6)
 ..N NOTSFMVC S NOTSFMVC=$P(C,"~",8)
 ..S CMNT=""
 ..
 ..I $L($P(C,"~",7)) D  ;-- COMMENT
 ...S CMNT=$P(C,"~",7)
 ...;;I $P(C,"~",6) S CMHN=CMNT,CMNT="" Q
 ...S CMNT=$$^W4CLRCMN(CMNT)
 ..
 ..I $D(@TMPORD@("MVFROM",N)) D
 ...N A S A=$G(^(N))
 ...S CMNT=$$^W4CLRCMN(CMNT)
 ...N CMMV S CMMV=$$CMMV(A)
 ...I CMNT'[$P(CMMV," ") S CMNT=CMNT_" "_CMMV
 ..
 ..I $$MANA^W4PRM,$G(CD),'$D(@TMPORD@(N,"MANA")),$$DEFMANA^W4P(CD) D
 ...S @TMPORD@(N,"MANA")=$$DEFMANA^W4P(CD)
 ..;
 ..S TSF=0,SUM=MH*CM,TSFHN=0
 ..; -------------------------- HISHUV TSF
 ..S N1=N F  S N1=$O(@TMPORD@(N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...N D S D=$G(^(N1)) Q:D=""
 ...N LV S LV=$P(D,"~",1)
 ...N CMT S CMT=$P(D,"~",5)
 ...N MHT S MHT=$P(D,"~",4)
 ...N HNT S HNT=$P(D,"~",6)
 ...I HNT,'$$^W4PRTBH(N1) S MHT=MHT*(100-HNT)*.01
 ...
 ...N SUMT
 ...S SUMT=MHT*$$^W4QNR(CMT)
 ...I CM<0,MHT>0,SUMT>0 S SUMT=-SUMT
 ...S TSF=TSF+SUMT
 ...I '$$^W4PRTBH(N1) S TSFHN=TSFHN+SUMT
 ...;;W !,"D="_D_"  CM="_CM_"  CMT="_CMT_"  TSF="_TSF
 ..
 ..I $G(@TMPORD@(N,"MANA")) D
 ...N MANA S MANA=$G(^("MANA"))
 ...I CMNT[$G(MN(MANA)) Q
 ...S CMNT=CMNT_$G(MN(MANA))
 ..;
 ..S @THZ1@(I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(CM*MH+TSF)_"\"_CMNT_"\"
 ..S $P(@THZ1@(I),"\",9)=$G(@TMPORD@(N,"GLIST"))
 ..I $P(C,"~",14) D  ; -- PRINTER
 ...S $P(^(I),"\",11)=$P(C,"~",14)
 ..S $P(^(I),"\",12)=NOTSFMVC
 ..S $P(^(I),"\",13)=$P(C,"~",16)
 ..S $P(^(I),"\",14)=$P(C,"~",17) ; -- MVC2
 ..
 ..S N2I(N)=I
 ..D SETNOMOD(I,C)
 ..D SETPRPC(I)
 ..
 ..I $G(AHST) D
 ...S I=I1+1,I1=I1+1
 ...N SUMA S SUMA=SUM+TSFHN I NOTSFMVC S SUMA=SUM
 ...
 ...S @THZ1@(I)="-"_+AHST_"%\\\\\\"_$J(SUMA*AHST*-.01,2,2)_"\"_CMHN_"\\@@!\\"_NOTSFMVC
 .
 .I $P(C,"~"),ERQN Q
 .I $P($G(LN0),"~")=0,$P(C,"~")>0,$P(C,"~",2)["-C",+$P(LN0,"~",2)'=+$P(C,"~",2) Q
 .I $P($G(LN0),"~"),$P(C,"~")>0,$P(C,"~",2)["-C",$P(LN0,"~",2)["-C" Q
 .;
 .I $P(C,"~")=1 D  S C1=C Q  ; --------------- TOSAFOT OR AI ------------
 ..N NMT,CMNT
 ..S CDT=$P(C,"~",2),NMT=$$SPA^%L1FRM($P(C,"~",3))
 ..S NMT=$$CNWEB^%L1FRM(NMT)
 ..S NMT=$TR(NMT,"\*","/X")
 ..Q:CDT=""
 ..I $E(CDT)="A" S:$E(CDT,2,20)>999 HDST=$E(CDT,2,20)_"^"_$P(C,"~",3) Q
 ..I CDT'[">",MSD,$$MM^W4PRM S CDT=MSD_">"_CDT
 ..S CDTO=CDT
 ..S (MHT,MHT0)=$P(C,"~",4),CMT=$P(C,"~",5),HNT=$P(C,"~",6)
 ..S CMT=$$^W4QNR(CMT)_$$DOP(CMT)
 ..;
 ..I CDT["-C",$P(LN0,"~")=0 D  Q  ; -- HEARA LE PARIT ROSHI
 ...S CMNT=$P($G(@THZ1@(I0)),"\",8)
 ...S $P(@THZ1@(I0),"\",8)=$E($$SETCMNT(CMNT,NMT),1,255)
 ..
 ..D
 ...I '$$^W4EZAT(CD),'$$CHILDS(N) D SAVETSF Q  ; --- LEV 19/01/16 ( Q )
 ...D SAVEAIN1
 .
 .I $P(C,"~")=2,$L($G(C1)) D SAVEAIN2 ; --------------- TOSAFOT LEVEL 2 ---------
 ;
 D SETQN1
 ;
 I $D(TMPNEW),$G(I0) D TMPNEW2ORD(I0)
 ;
 S NMB=$P($G(@THZ),"\") I NMB="" S ER=-4 G ERHZM
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N?1U.E,N'="DEL" D  ;--- SERVICE INFORMATION
 .I N="BIT"!(N="MRG")!(N="TS")!(N="ST")!(N="MVFROM")!(N="HNHP")!(N="HNH")!(N="MVTO")!(N="RESTTO")!(N="FROM") D  Q
 ..N NS S NS="" F  S NS=$O(@TMPORD@(N,NS)) Q:NS=""  D
 ...Q:'$G(N2I(NS))
 ...M @THZ@(N,N2I(NS))=@TMPORD@(N,NS)
 ...M @THZ@(N,N2I(NS),"O2T")=NS
 .
 .M @THZ@("FIRE")=@TMPORD@("FIRE")
 .
 .I N="EMAIL"!(N="MIKUD")!(N="FAX")!(N="TELB")!(N="ADSHAA") Q
 .
 .M @THZ@(N)=@TMPORD@(N)
 ;
 K @THZ@("DEL")
 N GLORD D GLORD^W4HZMST
 ;
 ;;I '$D(@TMPORD@("FIRE")),HZM>0 K @GLORD@("FIRE"),@THZ@("FIRE")
 ;
 S HZM=$$ZAP(HZW,HZM)
 I $D(@$$^W4ORD@(HZM,"W4TIKHZ")) D
 .S @$$^W4GL("W4TIKHZ")@(HZM)=$H
 ;
 I $G(^DEBUG("TMPORDA")),$G(DT),$G(IA) D
 .S $P(^[$$^W3MAIN]TMPORDA(DT,IA,"HZM"),"\",4)=HZM
 ;
 I $$^W4MM D SVW3ORD(HZM)
 Q HZM
 ;
 ;
ZAP(HZW,HZM) ;
 N HZM0 S HZM0=HZM
 S HZM=$$^W4PUTHZ(HZW,HZM) I 'HZM S ER=-6 G ERHZM
 ;
 I $$GETP^%W1PRM("MSDFROM"),HZM>0 D
 .S @$$^W4ORD@(HZM,"MSD")=$$GETP^%W1PRM("MSDFROM")
 ;
 I $$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$MKBL^W4HZMST(HZM)
 ;
 I '$$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$GETP^%W1PRM("MLZR")
 ;
 D SETDOP^W4PUTHZ(HZM,HZW) G SETL ; *** *************************************  27/05/24 
 ;
SETL ;
 I $$^W4MSL(NMB) D
 .N CITY,STREET,HOME,FLAT,FLOOR,ENTRANCE,MIKUD
 .N ST S ST="CITY,STREET,HOME,FLAT,FLOOR,ENTRANCE,MIKUD"
 .N J F J=1:1:$L(ST,",") X "S @$P(ST,"","",J)=$$"_$P(ST,",",J)_"^W3HZMST(HZW)"
 .I CITY'="TAKEAWAY" D
 ..N IND S IND=$$SP(CITY)_"\"_$$SP($G(STREET))_"\"_$$SP($G(HOME))_"\"_$$SP($G(FLAT))_"\"_$$SP($G(FLOOR))_"\"_$$SP($G(ENTRANCE))_"\"_$$SP($G(MIKUD))
 ..S @$$^W4GL("LKH")@(NMB,"A",IND)=""
 ;
 N GLORD D GLORD^W4HZMST
 S (GLBV,GLBV1)=GLORD
 S @GLBV@("CIBCARD")=$G(CIBCARD)
 ;;I $$POS^W4MTAW S NOPRINT=1
 ;
 I $$MM^W4PRM D
 .I $$HZM^W4MSL(HZM),$$FUTUREDT^W4HZMIT(HZM) Q
 .Q:$$MM^W4PRM=2
 .N MSD S MSD=$$MSDHZM^W4HZMST(HZM) Q:'MSD
 .I $$ARMFAX^W3R(MSD) Q
 .D SEND^W4FAXHTM(HZM)
 ;
 D
 .I '$G(NOPRINT) D  Q  ; *** LEV 28/12/17
 ..I $$GETP^%W1PRM("SBMORD"),$$VVMSK^W4PRM D KILL^%W1PRM("SBMORD") Q
 ..I '$$^W4USHZPC(HZM) Q
 ..I $$HZM^W4MSL(HZM),$$DLYPRN^W4PRM D ^W4HZM(HZM,JB) Q
 ..;
 ..;;J TV^W4HZM(HZM,JB_".1")
 ..D TV^W4HZM(HZM,JB)
 .
 .I $G(NOPRINT)=1 D ^W4NOMOD(HZM) Q  ; ---- NO PRINT ORDER BUT SIGN @@ ( NOPRINT=2 - NO SIGN )
 .I $G(NOPRINT)=2 D HZMMSL^W4HZMIT Q  ; ---- NO PRINT ORDER BUT SIGN @@ ( NOPRINT=2 - NO SIGN )
 ;
GIB ;
 D ^W4GIBHZ(HZM)
 ;
 Q HZM
 ;
 ;
SAVETSF ;
 ; INPUT :
 ;   N   - INDEX IN ^TMPORD
 ;   C   - TEK STR ^TMPORD
 ;   CO  - PREDYD STR ^TMPORD
 ;   CDT - COD TOSEF
 ;   NMT - SHEM TOSEF
 ;   MHT - MAHIR TOSEF
 ;   I0  - NOM ST V ^P1HZ
 ;
 ;   LINK - BDIKA SHE YESH KESHER BEIN PARIT LE TOSAFOT
 ;-------------------------------------------------------------------------
 N CMNT
 I CDT="" Q
 I CDT["-A" Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .Q:'CDT
 .I '$$NOMODC(C),$$NOMODC(CO),$$QNDIF(CO) Q
 .N CDT1 S CDT1=$P(CDT,"-C") Q:CDT1=""
 .I '$$LINK($G(I0),CDT1),'$G(NODEL) Q
 .I '($D(@THZ1@(I0,CDT1))#2) Q
 .S CMNT=$P($G(@THZ1@(I0,CDT1)),"\",4)
 .S $P(@THZ1@(I0,CDT1),"\",4)=$E($$SETCMNT(CMNT,NMT),1,255)
 .I $D(@THZ1@(I0,CDT1,1)),$G(^(1))'["\@@" S $P(@THZ1@(I0,CDT1,1),"\",6)=CMNT
 ;
 N QNDIF S QNDIF=$$QNDIF(C)
 I 'CMT,'QNDIF,$P(QNDIF,";",2)="",CDT'["-" Q
 ;
 I '$$LINK($G(I0),CDT),'$G(NODEL) Q
 ;
 I QNDIF D  Q  ; -- QNDIF
 .N CMT1 S CMT1=CMT I CMT["*" S CMT1=$$^W4QNR(CMT)_$$DOP(CMT)
 .N CMTO S CMTO=$S(QNDIF["*":$P(CMT,"*")*($P(CMT,"*",2)-$P(QNDIF,"*",2)),1:CMT1-QNDIF)
 .N IN0 S IN0=I0
 .N CMTN S CMTN=CMT
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMTN_"\"_$$MANA(N)_"\"
 .S $P(@THZ1@(I0,CDT),"\",$$NRZ)=N
 .D SETHD(I0,CDT,C)
 .;
 .S N2I(N)=I0_"-"_CDT
 .I CMTO S @THZ1@(I0,CDT,1)=CDT_"\"_NMT_"\"_CMTO_"\\\"_$$MANA(N)_"\"_MHT_"\\\"_$$NOMOD(C)
 .D SETNOMOD1(I0,CDT,C)
 .D SETPRPCT(I0,CDT)
 .N CMNTT,MANA S CMNTT=$P(QNDIF,";",2),MANA=$$MANA(N)
 .I $L(MANA),CMNTT'[MANA S CMNTT=CMNTT_MANA
 .S TMPNEW(CDT)=NMT_"\"_MHT_"\"_+QNDIF_"\"_CMNTT_"\"
 ;
 S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMT_"\"_$$MANA(N)_"\"
 S $P(@THZ1@(I0,CDT),"\",$$NRZ)=N
 D SETHD(I0,CDT,C)
 ;
 D SETNOMOD1(I0,CDT,C)
 D SETPRPCT(I0,CDT)
 S N2I(N)=I0_"-"_CDT
 Q
 ;
 ;
NRZ(STAM) ;
 Q $$NRZ^W4N2V
 ;
 ;
SAVEAIN1 ;
 I '$L($G(CDT)) Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SH2 ;
 .N CD1 S CD1=$P(CDT,"-") Q:CD1=""
 .S SH2=$O(@THZ1@(I0,CD1,99999),-1) Q:'SH2
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CD1,SH2)),"\",6)
 .I $L($G(@THZ1@(I0,CD1,SH2)))>255 Q
 .I (" "_CMNT_" ")[(" "_NMT_" ") Q
 .I '($D(@THZ1@(I0,CD1,SH2))#2) Q
 .S $P(@THZ1@(I0,CD1,SH2),"\",6)=NMT_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 I '$$LINK($G(I0),CDT),'$G(NODEL) Q
 N STT2
 S STT2=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 ;
 I $G(HNT) D
 .S MHT0=MHT
 .I '$$^W4PRTBH(CDT) S MHT=$J(MHT*(100-HNT)*.01,2,2)
 .S $P(STT2,"\",7)=MHT
 ;
 I $D(@TMPORD@("MVFROM",N)) D
 .N A S A=$G(^(N))
 .S $P(STT2,"\",6)=$$^W4CLRCMN($P(STT2,"\",6))
 .I $P(STT2,"\",6)'[$P($$CMMV(A)," ") D
 ..S $P(STT2,"\",6)=$P(STT2,"\",6)_" "_$$CMMV(A)
 ;
 I $D(@TMPORD@(N,"MANA")) D
 .S $P(STT2,"\",6)=$P(STT2,"\",6)_$$MANA(N)
 ;
 S GLIST=$G(@TMPORD@(N,"GLIST"))
 S $P(STT2,"\",9)=GLIST
 ;
 I '$D(@THZ1@(I0,CDT)) D
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\\"_$$MANA(N)
 .D SETHD(I0,CDT,C)
 .I $G(N) S $P(@THZ1@(I0,CDT),"\",$$NRZ)=N
 .D SETNOMOD1(I0,CDT,C)
 .;;D SETPRPCT(I0,CDT) ; -- 25/11/16 *** LEV
 .S N2I(N)=I0_"-"_CDT
 ;
 D SETSH2(STT2)
 ;
 Q
 ;
 ;
SAVEAIN2 ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 S NMT2=$$CNWEB^%L1FRM(NMT2)
 Q:CDT2=""
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-") I CDT="" Q
 I CDT2'[">",MSD,$$MM^W4PRM S CDT2=MSD_">"_CDT2
 S CDTO2=CDT2
 ;
 I CDT2["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=$O(@THZ1@(I0,CDT,99999),-1) Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .I '($D(@THZ1@(I0,CDT,SHL))#2) Q
 .I $L($G(@THZ1@(I0,CDT,SHL)))>255 Q
 .I (" "_CMNT_" ")[(" "_$$SPA^%L1FRM(NMT2)_" ") Q
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 ;
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 N DOP S DOP=$$DOP(QNT2)
 ;
 I QNT2["*" D
 .S QNT2=$$^W4QNR(QNT2)
 .S QNT2=$P(QNT2,"|")
 .S QNT2=$P(QNT2,":")
 .S QNT2=QNT2_DOP
 ;
 I 'QNT2 S QNT2=1
 ;
 ;
 N MAIN S MAIN=$P(C,"~",15)
 N CDM S CDM=$P(MAIN,"^",2)
 I CDM'[">",MSD,$$MM^W4PRM S CDM=MSD_">"_CDM
 ;
 I CDM,CDM'=CDT D
 .S CDT=CDM
 .N NMT,MHT,QNT
 .
 .I '$D(@THZ1@(I0,CDM)) D
 ..S NMT=$P(MAIN,"^",3)
 ..S NMT=$$CNWEB^%L1FRM(NMT)
 ..S MHT=$P(MAIN,"^",4)
 ..S CMT=$P(MAIN,"^",5)
 ..S HNT=$P(MAIN,"^",6)
 ..D SAVEAIN1
 ..
 ..I $L($P(MAIN,"^",7)) D
 ...N CDT
 ...S CDT=CDM_"-C0"
 ...S NMT=$P(MAIN,"^",7)
 ...S NMT=$$CNWEB^%L1FRM(NMT)
 ...D SAVEAIN1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 I '$$LINK2(CDT,CDT2),'$G(NODEL) Q
 ;;I '$$LINK2^W4ISLINK(CD,CDT2),'$G(NODEL) Q
 D SETSH2(STT2)
 Q
 ;
 ;
SETQN1 ;
 N A,I0,CDT,SH2,QNT
 S I0="" F  S I0=$O(@THZ1@(I0)) Q:I0=""  D
 .S CDT="" F  S CDT=$O(@THZ1@(I0,CDT)) Q:CDT=""  D
 ..S QNT=0
 ..S SH2="" F  S SH2=$O(@THZ1@(I0,CDT,SH2)) Q:SH2=""  D
 ...S A=$G(^(SH2))
 ...N QNT3 S QNT3=$P(A,"\",3)
 ...I QNT3["*" S QNT3=$$^W4QNR(QNT3)
 ...I $L($P(A,"\")) S QNT=QNT+QNT3
 ..I QNT S $P(@THZ1@(I0,CDT),"\",3)=QNT
 Q
 ;
 ;
SETSH2(STT) ;
 N SH2 Q:CDT=""
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 ;
 N PRMANA,CMNT S PRMANA=$$MANA^W4PRM
 N MANA0 S MANA0=$$^W4DEFMN($P($G(@THZ1@(I0,CDT)),"\",4))
 ;
 I PRMANA S CMNT=$P(STT,"\",6) I '$$^W4DEFMN(CMNT),MANA0 D
 .S $P(STT,"\",6)=$P(STT,"\",6)_" "_$$GETI^W4DEFMN(MANA0)
 ;
 S @THZ1@(I0,CDT,SH2)=STT
 I $G(HNT) S @THZ1@(I0,CDT,SH2,"HNT")=HNT_";"_$G(MHT0)
 ;
 D SETNOMOD2(I0,CDT,SH2,C)
 ;;D SETPRPCT2(I0,CDT,SH2) ; --- 25/11/16 *** LEV
 S N2I(N)=I0_"-"_CDT_"-"_SH2
 Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(HZW)"
 Q
TMPORDB S TMPORDB="^[$$^W3MAIN]TMPORDB(HZW)"
 Q
 ;
THZ(JB) ;
 S WB=$$WB(JB)
 S THZ=$$^W4THZ
 S THZ1=$$^W4THZ1
 Q
 ;
WB(HZW) Q "JB"_HZW
 ;
KORD(HZM) ; --- HZM=JB
 K @$$^W4THZ
 K @$$^W4THZ1
 ;
 N NMB S NMB=$$NMB^W3HZMST(HZM)
 I NMB D ^W4KLNEW(NMB,HZM)
 D KORD^W4TMPORD(HZM)
 K ^[$$^W3MAIN]TMPORDB(HZM)
 K ^[$$^W3MAIN]TMPORDN(HZM)
 K @$$^W4MAIN("TMPORDO")
 K @$$^W4MAIN("TMPORD0")
 K @$$^W4MAIN("TMPOP")
 K @$$^W4MAIN("TMPOAI")
 D KILL^%W1PRM("HZM")
 Q
 ;
LVI(IND) ;
 N ST S ST=$G(@TMPORD@(IND))
 Q $P(ST,"~")
 ;
QNDIF(C) Q $P(C,"~",11)
 ;
NOMODC(C) I $P(C,"~",13)'="HZ" Q 0
 Q 1
 ;
NOMOD(C) Q $P(C,"~",12)
 ;
PRN(C) Q $P(C,"~",14)
 ;
SETNOMOD(I,C) ;
 S $P(@THZ1@(I),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD1(I,CDT,C) ;
 S $P(@THZ1@(I,CDT),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD2(I,CDT,SH2,C) ;
 S $P(@THZ1@(I,CDT,SH2),"\",10)=$$NOMOD(C)
 Q
 ;
CMMV(A) ;
 Q "<"_$P(A,";",2)_"y "_$P(A,";")
 ;
SETCMNT(CMNT,NMT) ;
 I $G(NMT)="" Q $G(CMNT)
 S CMNT=$$SPA^%L1FRM(CMNT)
 S NMT=$$SPA^%L1FRM(NMT)
 I CMNT=""!(CMNT=NMT) Q NMT
 I (" "_CMNT_" ")[(" "_NMT_" ") Q CMNT
 I $$MV^W4CLRCMN(NMT),$L(CMNT) Q $$^W4CLRCMN(CMNT)_";"_NMT
 I $$MV^W4CLRCMN(CMNT) Q NMT_" "_CMNT
 N OK S OK=0
 N I F I=1:1:$L(CMNT,";") I $$SPA^%L1FRM($P(CMNT,";",I))=$$SPA^%L1FRM(NMT) S OK=1 Q
 I OK Q CMNT
 Q NMT_";"_CMNT
 ;
 ;
TMPNEW2ORD(I0) ;
 ;
 N IN0,IN01,PR0 S PR0=0,IN0=0
 ;
 N CDT S CDT="" F  S CDT=$O(TMPNEW(CDT)) Q:CDT=""  D
 .N A S A=TMPNEW(CDT) Q:A=""
 .;
 .N NMT,MHT,QND,CMNT
 .S NMT=$P(A,"\")
 .S MHT=$P(A,"\",2)
 .S QND=$P(A,"\",3)
 .I QND["*" S QND=$$^W4QNR(QND)
 .S CMNT=$P(A,"\",4)
 .S IN01=I0
 .N IND S IND=$O(@THZ1@(IN01,CDT,99999),-1)+1
 .S @THZ1@(IN01,CDT,IND)=CDT_"\"_NMT_"\"_QND_"\\\"_CMNT_"\"_MHT_"\\\"
 .D SETPRPCT2(IN01,CDT,IND)
 ;
 K TMPNEW
 Q
 ;
 ;
MANA(SH) ;
 D TMPORD
 N A S A=$G(@TMPORD@(SH))
 N MANA S MANA=$G(@TMPORD@(SH,"MANA"))
 N LV,CD S LV=$P(A,"~"),CD=$P(A,"~",2)
 I 'MANA,LV=1,$E(CD)'="A",CD'["-C" S MANA=$$MANAEZA(SH,TMPORD)
 I 'MANA Q ""
 D MN^W4MANA
 Q $G(MN(MANA))
 ;
 ;
MANAEZA(SH,TMPORD) ;
 Q $$^W4DMANA(SH,TMPORD)
 ;
SETPRPC(SH) ;
 I $$NOPC(SH) S $P(@THZ1@(SH),"\",10)="@@@"
 Q
SETPRPCT(SH,CDT) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT),"\",10)="@@@"
 Q
SETPRPCT2(SH,CDT,IND) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT,IND),"\",10)="@@@"
 Q
 ;
NOPC(SH) ;
 I $D(@THZ1@("BIT",SH))&'$G(@$$^W4PRM@("HZMBIT")) Q 1
 I $P($G(@THZ1@("BIT",SH)),"*",5)["xar"&'$G(@$$^W4PRM@("HZMHV")) Q 1
 I $P($G(@THZ1@(SH)),"\",8)?.E1"<"1N.N1"y ".E,'$G(@$$^W4PRM@("HZMHV")) Q 1
 Q 0
 ;
 ;
SVW3ORD(HZM) ;
 N CODTS,NMTS S CODTS=$$CODTS^W4HZMST(HZM),NMTS=""
 D
 .N LNG S LNG="E"
 .S NMTS=$$^W3SHOWTS(CODTS)
 ;
 S $P(@TMPORD,"~",21)=CODTS
 S $P(@TMPORD,"~",34)="[ "_NMTS_" -a mley "_HZM_" `ed xewn zpnfd 'qn ] "
 S @TMPORD@("HZMKR")=HZM
 ;
 L +@$$^W3ORD:2
 N ORD S ORD=$$^%W1SsID("W4NEWHZ")
 L -@$$^W3ORD
 N DLV,FAX,MSD
 ;
 I $$AUTOFAX^W4PRM D
 .S MSD=$$MSD I MSD D
 ..S FAX=$TR($$FAX^W3R(MSD),"-","")
 ..I $L(FAX)>6 S DLV=ORD_";F;"_FAX_";"_HZM
 ;
 S %ARG("HZMKR")=HZM
 D PUT^W3ORDVW(JB,ORD)
 Q
 ;
 ;
MSD(STAM) ;
 N MSD S MSD=$G(@TMPORD@("MSD"))
 N SHIFT S SHIFT=$G(@$$^W4PRM@("WEB","RESTSHIFT"))
 I MSD,SHIFT,(MSD-SHIFT) Q (MSD-SHIFT)
 S MSD=$G(@TMPORD@("MSDTO"))
 Q MSD
 ;
ERHZM ;
 N IND
 S IND=$P($H,",",2)
 M @$$^W4MAIN("TMPORDER")@($$^W4DZ,IND,HZW)=@$$^W3TMPORD@(HZW)
 M @$$^W4MAIN("TMPORDBER")@($$^W4DZ,IND,HZW)=^[$$^W3MAIN]TMPORDB(HZW)
 N ERHZM S ERHZM=$G(ER)_";"_$P($G(HZM),";",2)_";"_$G(HZW)
 D SETER(IND,ERHZM)
 Q ERHZM
 ;
SETER(IND,ERHZM) ;
 S ^ERHZM($$^W4DZ,"W4NEWHZ",IND)=$G(ERHZM)
 Q
 ;
DOP(QN) ;
 Q $$DOP^W4PIZZA(QN)
 ;
LINK(I0,CDT)
 I $G(@$$^W4PRM@("NOCHKLINK")) Q 1
 I '$G(I0)!($G(CDT)="") Q 1
 I $G(HZM),$$HZMLAK^W4HZMST(HZM)["W" Q 1
 I $G(HZW),$G(HZW),$$HZMLAK^W3HZMST(HZW)["W" Q 1
 ;
 N ERT S ERT=0
 N PAR S PAR=$P($G(@THZ1@(I0)),"\")
 I PAR,'$$^W4ISLINK(PAR,CDT) S ERT=1
 Q 'ERT
 ;
LINK2(CDT,CDT2) ;
 I $G(@$$^W4PRM@("NOCHKLINK")) Q 1
 I '$G(CDT)!($G(CDT2)="") Q 1
 I $G(HZM),$$HZMLAK^W4HZMST(HZM)["W" Q 1
 I $G(HZW),$G(HZW),$$HZMLAK^W3HZMST(HZW)["W" Q 1
 Q $$^W4ISLINK(CDT,CDT2,1)
 ;
SDVN2I(I) ;
 N NN,NI S NN=""
 F  S NN=$O(N2I(NN)) Q:NN=""  D
 .I N2I(NN)'<I D
 ..S NI=N2I(NN)+1
 ..I N2I(NN)?1N.N S N2I(NN)=N2I(NN)+1 Q
 ..S $P(N2I(NN),"-")=NI
 Q
 ;
CHILDS(N) ;
 N N2,OK,C1,END S N2=N S OK=0,END=0
 F  S N2=$O(@TMPORD@(N2)) Q:N2=""  D  Q:END  Q:OK
 .S C1=$G(^(N2))
 .I $P(C1,"~")<2,$P(C1,"~",2)'["-C" S END=1 Q
 .I $P(C1,"~")>1 S OK=1
 Q OK
 ;
CHKDMSH ; 
 Q  ; -- 19.02.26 
 N HD,NMB S HD=$G(@TMPORD)
 S NMB=$P(HD,"~") Q:'$$^W4MSL(NMB)
 N DMO S DMO=$P($G(@TMPORD),"~",9)
 ;;S ^AA("W4NEWHZ-CHKDMSH","DMO")=DMO
 N NT S NT=$P($G(@TMPORD),"~",11)-DMO+$P($G(@TMPORD),"~",8)
 ;;S ^AA("W4NEWHZ-CHKDMSH","NT")=NT
 ;
 I 'NT&(DMO>0) D
 .S $P(@TMPORD,"~",9)=0
 .S $P(@TMPORD,"~",11)=$P(@TMPORD,"~",11)-DMO
 Q
 ;
SP(TX) ; 
 Q $$SPA^%L1FRM(TX) 
 ;
SETHD(I0,CDT,C) ; 
 I $L($P(C,"~",18)) D  Q
 .S $P(@THZ1@(I,CDT),"\",18)=$P(C,"~",18)
 ;
 I $L($G(HDST)) D
 .S $P(@THZ1@(I,CDT),"\",18)=HDST
 .S HDST=""
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NEWHZ0
W4NEWHZ(HZW,HZM,NOPRINT) ; [ 29.05.24 13:57 ] [ 27.05.24 16:14 ] [ 02.01.24 15:22 ] 
 N (HZW,HZM,%REM,NOPRINT,P1HZOP)
 S JB=+$G(HZW)
 ;
 S NMB=$$NMB^W3HZMST(JB)
 I NMB'<1,$$^W4POSMSK(NMB)!($G(HZM)["M") D  Q HZM_$S(HZM["M":"",1:"M")
 .S HZM=$$SAVE^W4POSMSK(+$G(HZM))
 ;
 S CURREST=""
 I $$MM^W4PRM,$$GETP^%W1PRM("CURREST") D
 .S CURREST=$$GETP^%W1PRM("CURREST")
 ;
 D PUT^%W3DEB("W4NEWHZ","HZW=HZW & HZM=HZM & NOPRINT=NOPRINT")
 I '$G(HZW) Q -.5
 ;
 D TMPORD,TMPORDB
 ;
 I $G(^DEBUG("TMPORDA")) D
 .S DT=$$^W4DZ
 .K ^[$$^W3MAIN]TMPORDA(DT-100)
 .S IA=$O(^[$$^W3MAIN]TMPORDA(DT,999999),-1)+1
 .M ^[$$^W3MAIN]TMPORDA(DT,IA)=@TMPORD
 .S ^[$$^W3MAIN]TMPORDA(DT,IA,"HZM")=$G(HZM)_"\"_$G(HZW)_"\"_$G(NOPRINT)_"\\"_$G(%REM)
 .M ^[$$^W3MAIN]TMPORDBA(DT,IA)=@TMPORDB
 .S ^[$$^W3MAIN]TMPORDBA(DT,IA,"HZM")=$G(HZM)_"\"_$G(HZW)_"\"_$G(NOPRINT)_"\\"_$G(%REM)
 ;
 I '$P($G(@TMPORD),"~"),$$NMB^W4TMPHD D
 .S @TMPORD=$$GET^W4TMPHD
 ;
 K @TMPORD@("SCRY")
 ;
 D
 .N ORDHD S ORDHD=$$GETP^%W1PRM("ORDHD") Q:'$P(ORDHD,"~")
 .N NMB S NMB=$$NMB^W3HZMST(JB) Q:'NMB
 .;
 .I $$^W4MSL(NMB),$$NAME^W3HZMST(JB)="",'$$COMP^W3PRM D
 ..I NMB'=$P(ORDHD,"~") Q
 ..I '$P(ORDHD,"~")!($P(ORDHD,"~",2)="") Q
 ..I $$STREET^W3HZMST(JB)?.P D  Q
 ...S @TMPORD=ORDHD
 ..S $P(@TMPORD,"~",2)=$P(ORDHD,"~",2)
 .
 .S $P(@TMPORD,"~",11)=$$CALC^W3HZMST(HZW) ; -->
 ;
 I '$D(@TMPORD) S ER=-1 G ERHZM
 I $D(@TMPORD)'=11 S ER=-2 G ERHZM
 ;
 D CHKDMSH
 ;
 I $G(HZM)>0,$D(@$$^W4ORD@(HZM,"BSL")) D
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"BSL",N)) Q:N=""  D
 ..I N'="INVPC",N'="PAY" K ^(N)
 ;
 S FIRSTST=$G(@TMPORD@(1))
 ;
 I $E($$HZMLAK^W3HZMST(HZW))'="W" D ^W4TIKHZ(HZW)
 ;
 I $$GETP^%W1PRM("MSDFROM"),'$G(CURREST) D
 .D PUT^%W1PRM("MSDFROMSAVED",1)
 .S @TMPORD@("MSD")=$$GETP^%W1PRM("MSDFROM")
 .S $P(@TMPORD,"~",51)=99
 ;
 I CURREST S @TMPORD@("MSD")=CURREST
 ;
 I $$GETP^%W1PRM("MIMUSHPZM"),'$D(@TMPORD@("MIMUSHPZM")) D
 .S @TMPORD@("MIMUSHPZM")=$$GETP^%W1PRM("MIMUSHPZM")
 .D KILL^%W1PRM("MIMUSHPZM")
 ;
 D ^W4IN
 S %SCRN="P1HZMS"
 ;
 S NEWHZ=0
 K @TMPORD@("NEW")
 ;
 I $G(HZM)<1,$G(HZM)>-2 S HZM=$$NEW^W4KLNEW,NEWHZ=1 D
 .S $P(@TMPORD,"~",29)=$$^%L1DC(P1DZ,1)
 .S $P(@TMPORD,"~",12)="" ; -- SHULAM
 .S $P(@TMPORD,"~",17)="" ; -- SHULAM B-AKAFA
 .K @TMPORD@("GIBCB")
 .M @TMPORD@("GIBCB","HNH1")=@TMPORD@("CB","HNH1")
 .K @TMPORD@("CB")
 .
 .I $D(@TMPORD@("GIBCB")) D
 ..M @TMPORD@("CB")=@TMPORD@("GIBCB")
 ..K @TMPORD@("GIBCB")
 .
 .K @TMPORD@("CBOLD")
 .K @TMPORD@("S")
 ;
 ;
 S ER=0
 ;
 S %REM=$$GET^%W1PRM("REM")
 D THZ(JB)
 K @THZ,@THZ1
 ;
 S LASTI=0
 ;
 K @THZ,@THZ1 S LASTI=0
 ;
 N A,B,C,C1,I S A=$G(@TMPORD) Q:A="" -3
 ;
 D PUT^%W3DEB("W4NEWHZ","A=A")
 I $P(A,"~",21)=5 S $P(A,"~",21)=8 ;  -- CIBUS
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 ;
 S TSHL=$P(A,"~",11)
 ;
 S @THZ=$TR($P(A,"~",1,29),"~","\")
 ;
 S HNAH=$P(A,"~",38)
 S HNH=$P(A,"~",8)
 S DMSH=$P(A,"~",9)
 S $P(@THZ,"\",22)=HNAH
 ;
 I HNAH>1,HNH<1&(HNH>-1),TSHL'<0,(TSHL-DMSH+HNH)*HNAH*.01>1 D
 .S $P(@THZ,"\",8)=$J(HNAH*(TSHL-DMSH+HNH)*.01,2,2)
 ;
 S $P(@THZ,"\",30)=$P(A,"~",60) ; -- HZMLAK
 S $P(@THZ,"\",33)=$P(A,"~",77) ; -- MKRNOM
 ;
 I $L($P(A,"~",51)) D  ; MAKOR
 .S @THZ@("MKRDLV")=$P(A,"~",51)
 ;
 I $L($P(A,"~",76)) D  ; MAKOR1
 .S @THZ@("MKRDLV1")=$P(A,"~",76)
 ;
 I $L($P(A,"~",56)) D  ; EMAIL
 .S @THZ@("EMAIL")=$P(A,"~",56)
 ;
 I $L($P(A,"~",57)) D  ; MIKUD
 .S @THZ@("MIKUD")=$P(A,"~",57)
 I $L($P(A,"~",58)) D  ; FAX
 .S @THZ@("FAX")=$P(A,"~",58)
 I $L($P(A,"~",59)) D  ; TELB
 .S @THZ@("TELB")=$P(A,"~",59)
 I $L($P(A,"~",63)) D  ; ADSHAA
 .S @THZ@("ADSHAA")=$P(A,"~",63)
 I $L($P(A,"~",74)) D  ; KINDORD
 .S @THZ@("KINDORD")=$P(A,"~",74)
 ;
 ;-----------------------------------
 S (CD,CDT,CDTO,CDT2,NM,NMT,NMT2,CMNT,CMNT2,LN0,C,C1)=""
 K N2I
 ;
 D MN^W4MANA
 ;
 S MSD=$$MSD
 ;
 S I=0,I0=0,I1=LASTI,ERQN=0
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  S LN0=$G(@TMPORD@(N))
 .S CO=C,C=$G(^(N))
 .S NODEL=0
 .F JJ="BIT","MRG","MVTO","MVFROM","TS","FROM" I $D(@TMPORD@(N,JJ)) S NODEL=1
 .
 .I $P(C,"~")=0 D  Q
 ..I $$SUPER^W3PRM S $P(C,"~",12)="@@"
 ..S ERQN=0
 ..S (CDT,NMT,MHT,MHT0,HNT,CMT,HDST)=""
 ..I $D(TMPNEW),I0>1 D TMPNEW2ORD(I0)
 ..K TMPNEW,QNDIF
 ..N CMHN,PRKILL S CMHN="",SH2=0
 ..;
 ..S CD=$P(C,"~",2),NM=$$SPA^%L1FRM($P(C,"~",3))
 ..I $E(CD)="A" Q
 ..I CD'[">",MSD,$$MM^W4PRM S CD=MSD_">"_CD
 ..S NM=$$CNWEB^%L1FRM(NM)
 ..S MH=$P(C,"~",4),CM=$P(C,"~",5)
 ..;;I CD?1N.N.".".N,'CM S ERQN=1 Q
 ..S I=I1+1,I1=I1+1
 ..S A0=$G(@THZ1@(I)) K @THZ1@(I) S @THZ1@(I)=A0
 ..
 ..S I0=I
 ..
 ..N AHST S AHST=$P(C,"~",6)
 ..N NOTSFMVC S NOTSFMVC=$P(C,"~",8)
 ..S CMNT=""
 ..
 ..I $L($P(C,"~",7)) D  ;-- COMMENT
 ...S CMNT=$P(C,"~",7)
 ...;;I $P(C,"~",6) S CMHN=CMNT,CMNT="" Q
 ...S CMNT=$$^W4CLRCMN(CMNT)
 ..
 ..I $D(@TMPORD@("MVFROM",N)) D
 ...N A S A=$G(^(N))
 ...S CMNT=$$^W4CLRCMN(CMNT)
 ...N CMMV S CMMV=$$CMMV(A)
 ...I CMNT'[$P(CMMV," ") S CMNT=CMNT_" "_CMMV
 ..
 ..I $$MANA^W4PRM,$G(CD),'$D(@TMPORD@(N,"MANA")),$$DEFMANA^W4P(CD) D
 ...S @TMPORD@(N,"MANA")=$$DEFMANA^W4P(CD)
 ..;
 ..S TSF=0,SUM=MH*CM,TSFHN=0
 ..; -------------------------- HISHUV TSF
 ..S N1=N F  S N1=$O(@TMPORD@(N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...N D S D=$G(^(N1)) Q:D=""
 ...N LV S LV=$P(D,"~",1)
 ...N CMT S CMT=$P(D,"~",5)
 ...N MHT S MHT=$P(D,"~",4)
 ...N HNT S HNT=$P(D,"~",6)
 ...I HNT,'$$^W4PRTBH(N1) S MHT=MHT*(100-HNT)*.01
 ...
 ...N SUMT
 ...S SUMT=MHT*$$^W4QNR(CMT)
 ...I CM<0,MHT>0,SUMT>0 S SUMT=-SUMT
 ...S TSF=TSF+SUMT
 ...I '$$^W4PRTBH(N1) S TSFHN=TSFHN+SUMT
 ...;;W !,"D="_D_"  CM="_CM_"  CMT="_CMT_"  TSF="_TSF
 ..
 ..I $G(@TMPORD@(N,"MANA")) D
 ...N MANA S MANA=$G(^("MANA"))
 ...I CMNT[$G(MN(MANA)) Q
 ...S CMNT=CMNT_$G(MN(MANA))
 ..;
 ..S @THZ1@(I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(CM*MH+TSF)_"\"_CMNT_"\"
 ..S $P(@THZ1@(I),"\",9)=$G(@TMPORD@(N,"GLIST"))
 ..I $P(C,"~",14) D  ; -- PRINTER
 ...S $P(^(I),"\",11)=$P(C,"~",14)
 ..S $P(^(I),"\",12)=NOTSFMVC
 ..S $P(^(I),"\",13)=$P(C,"~",16)
 ..S $P(^(I),"\",14)=$P(C,"~",17) ; -- MVC2
 ..
 ..S N2I(N)=I
 ..D SETNOMOD(I,C)
 ..D SETPRPC(I)
 ..
 ..I $G(AHST) D
 ...S I=I1+1,I1=I1+1
 ...N SUMA S SUMA=SUM+TSFHN I NOTSFMVC S SUMA=SUM
 ...
 ...S @THZ1@(I)="-"_+AHST_"%\\\\\\"_$J(SUMA*AHST*-.01,2,2)_"\"_CMHN_"\\@@!\\"_NOTSFMVC
 .
 .I $P(C,"~"),ERQN Q
 .I $P($G(LN0),"~")=0,$P(C,"~")>0,$P(C,"~",2)["-C",+$P(LN0,"~",2)'=+$P(C,"~",2) Q
 .I $P($G(LN0),"~"),$P(C,"~")>0,$P(C,"~",2)["-C",$P(LN0,"~",2)["-C" Q
 .;
 .I $P(C,"~")=1 D  S C1=C Q  ; --------------- TOSAFOT OR AI ------------
 ..N NMT,CMNT
 ..S CDT=$P(C,"~",2),NMT=$$SPA^%L1FRM($P(C,"~",3))
 ..S NMT=$$CNWEB^%L1FRM(NMT)
 ..S NMT=$TR(NMT,"\*","/X")
 ..Q:CDT=""
 ..I $E(CDT)="A" S:$E(CDT,2,20)>999 HDST=$E(CDT,2,20)_"^"_$P(C,"~",3) Q
 ..I CDT'[">",MSD,$$MM^W4PRM S CDT=MSD_">"_CDT
 ..S CDTO=CDT
 ..S (MHT,MHT0)=$P(C,"~",4),CMT=$P(C,"~",5),HNT=$P(C,"~",6)
 ..S CMT=$$^W4QNR(CMT)_$$DOP(CMT)
 ..;
 ..I CDT["-C",$P(LN0,"~")=0 D  Q  ; -- HEARA LE PARIT ROSHI
 ...S CMNT=$P($G(@THZ1@(I0)),"\",8)
 ...S $P(@THZ1@(I0),"\",8)=$E($$SETCMNT(CMNT,NMT),1,255)
 ..
 ..D
 ...I '$$^W4EZAT(CD),'$$CHILDS(N) D SAVETSF Q  ; --- LEV 19/01/16 ( Q )
 ...D SAVEAIN1
 .
 .I $P(C,"~")=2,$L($G(C1)) D SAVEAIN2 ; --------------- TOSAFOT LEVEL 2 ---------
 ;
 D SETQN1
 ;
 I $D(TMPNEW),$G(I0) D TMPNEW2ORD(I0)
 ;
 S NMB=$P($G(@THZ),"\") I NMB="" S ER=-4 G ERHZM
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N?1U.E,N'="DEL" D  ;--- SERVICE INFORMATION
 .I N="BIT"!(N="MRG")!(N="TS")!(N="ST")!(N="MVFROM")!(N="HNHP")!(N="HNH")!(N="MVTO")!(N="RESTTO")!(N="FROM") D  Q
 ..N NS S NS="" F  S NS=$O(@TMPORD@(N,NS)) Q:NS=""  D
 ...Q:'$G(N2I(NS))
 ...M @THZ@(N,N2I(NS))=@TMPORD@(N,NS)
 ...M @THZ@(N,N2I(NS),"O2T")=NS
 .
 .M @THZ@("FIRE")=@TMPORD@("FIRE")
 .
 .I N="EMAIL"!(N="MIKUD")!(N="FAX")!(N="TELB")!(N="ADSHAA") Q
 .
 .M @THZ@(N)=@TMPORD@(N)
 ;
 K @THZ@("DEL")
 N GLORD D GLORD^W4HZMST
 ;
 ;;I '$D(@TMPORD@("FIRE")),HZM>0 K @GLORD@("FIRE"),@THZ@("FIRE")
 ;
 S HZM=$$ZAP(HZW,HZM)
 I $D(@$$^W4ORD@(HZM,"W4TIKHZ")) D
 .S @$$^W4GL("W4TIKHZ")@(HZM)=$H
 ;
 I $G(^DEBUG("TMPORDA")),$G(DT),$G(IA) D
 .S $P(^[$$^W3MAIN]TMPORDA(DT,IA,"HZM"),"\",4)=HZM
 ;
 I $$^W4MM D SVW3ORD(HZM)
 Q HZM
 ;
 ;
ZAP(HZW,HZM) ;
 S HZM=$$^W4PUTHZ(HZW,HZM) I 'HZM S ER=-6 G ERHZM
 ;
 I $$GETP^%W1PRM("MSDFROM"),HZM>0 D
 .S @$$^W4ORD@(HZM,"MSD")=$$GETP^%W1PRM("MSDFROM")
 ;
 I $$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$MKBL^W4HZMST(HZM)
 ;
 I '$$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$GETP^%W1PRM("MLZR")
 ;
 G SETL ; *** *************************************  27/05/24 
 ;
 I '$G(%ARG("W3NEWHZN")) D
 .N PELE S PELE=$TR($$PELE^W3HZMST(HZW),"\","-")
 .I PELE'="" D
 ..D PUT^W4HZMST(HZM,"PELE",PELE)
 ;
 D PUT^W4HZMST(HZM,"IR",$TR($$CITY^W3HZMST(HZW),"\","/"))
 ;
 D
 .N CMHD S CMHD=$$CMHD^W3HZMST(HZW)
 .N NMB S NMB=$$NMB^W4HZMST(HZM)
 .;;I CMHD?.P,NMB,$G(@$$^W4GL("P1HL")@(NMB,HZM,"LKHN"))'?.P S CMHD=^("LKHN")
 .D PUT^W4HZMST(HZM,"HRAED",CMHD)
 .I NMB S @$$^W4GL("P1HL")@(NMB,HZM,"LKHN")=CMHD
 ;
 D PUT^W4HZMST(HZM,"FIRE",$$FIRE^W3HZMST(HZW))
 ;
 I $L($$COMP^W3HZMST(HZW)) D
 .D PUT^W4HZMST(HZM,"MAZMIN",$$NAME^W3HZMST(HZW))
 .D PUT^W4HZMST(HZM,"NAME",$$COMP^W3HZMST(HZW))
 ;
 I HZM>0,$$TAWM^W4DLPK(NMB) D
 .D PUT^W4HZMST(HZM,"NAME",$$HRAED^W4HZMST(HZM))
 .D PUT^W4HZMST(HZM,"IR","TAKEAWAY")
 ;
SETL ;
 I $$^W4MSL(NMB) D
 .N CITY,STREET,HOME,FLAT,FLOOR,ENTRANCE,MIKUD
 .N ST S ST="CITY,STREET,HOME,FLAT,FLOOR,ENTRANCE,MIKUD"
 .N J F J=1:1:$L(ST,",") X "S @$P(ST,"","",J)=$$"_$P(ST,",",J)_"^W3HZMST(HZW)"
 .I CITY'="TAKEAWAY" D
 ..N IND S IND=$$SP(CITY)_"\"_$$SP($G(STREET))_"\"_$$SP($G(HOME))_"\"_$$SP($G(FLAT))_"\"_$$SP($G(FLOOR))_"\"_$$SP($G(ENTRANCE))_"\"_$$SP($G(MIKUD))
 ..S @$$^W4GL("LKH")@(NMB,"A",IND)=""
 ;
 N GLORD D GLORD^W4HZMST
 S (GLBV,GLBV1)=GLORD
 S @GLBV@("CIBCARD")=$G(CIBCARD)
 ;;I $$POS^W4MTAW S NOPRINT=1
 ;
 I $$MM^W4PRM D
 .I $$HZM^W4MSL(HZM),$$FUTUREDT^W4HZMIT(HZM) Q
 .Q:$$MM^W4PRM=2
 .N MSD S MSD=$$MSDHZM^W4HZMST(HZM) Q:'MSD
 .I $$ARMFAX^W3R(MSD) Q
 .D SEND^W4FAXHTM(HZM)
 ;
 D
 .I '$G(NOPRINT) D  Q  ; *** LEV 28/12/17
 ..I $$GETP^%W1PRM("SBMORD"),$$VVMSK^W4PRM D KILL^%W1PRM("SBMORD") Q
 ..I '$$^W4USHZPC(HZM) Q
 ..I $$HZM^W4MSL(HZM),$$DLYPRN^W4PRM D ^W4HZM(HZM,JB) Q
 ..;
 ..;;J TV^W4HZM(HZM,JB_".1")
 ..D TV^W4HZM(HZM,JB)
 .
 .I $G(NOPRINT)=1 D ^W4NOMOD(HZM) Q  ; ---- NO PRINT ORDER BUT SIGN @@ ( NOPRINT=2 - NO SIGN )
 ;
GIB ;
 D ^W4GIBHZ(HZM)
 ;
 Q HZM
 ;
 ;
SAVETSF ;
 ; INPUT :
 ;   N   - INDEX IN ^TMPORD
 ;   C   - TEK STR ^TMPORD
 ;   CO  - PREDYD STR ^TMPORD
 ;   CDT - COD TOSEF
 ;   NMT - SHEM TOSEF
 ;   MHT - MAHIR TOSEF
 ;   I0  - NOM ST V ^P1HZ
 ;
 ;   LINK - BDIKA SHE YESH KESHER BEIN PARIT LE TOSAFOT
 ;-------------------------------------------------------------------------
 N CMNT
 I CDT="" Q
 I CDT["-A" Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .Q:'CDT
 .I '$$NOMODC(C),$$NOMODC(CO),$$QNDIF(CO) Q
 .N CDT1 S CDT1=$P(CDT,"-C") Q:CDT1=""
 .I '$$LINK($G(I0),CDT1),'$G(NODEL) Q
 .I '($D(@THZ1@(I0,CDT1))#2) Q
 .S CMNT=$P($G(@THZ1@(I0,CDT1)),"\",4)
 .S $P(@THZ1@(I0,CDT1),"\",4)=$E($$SETCMNT(CMNT,NMT),1,255)
 .I $D(@THZ1@(I0,CDT1,1)),$G(^(1))'["\@@" S $P(@THZ1@(I0,CDT1,1),"\",6)=CMNT
 ;
 N QNDIF S QNDIF=$$QNDIF(C)
 I 'CMT,'QNDIF,$P(QNDIF,";",2)="",CDT'["-" Q
 ;
 I '$$LINK($G(I0),CDT),'$G(NODEL) Q
 ;
 I QNDIF D  Q  ; -- QNDIF
 .N CMT1 S CMT1=CMT I CMT["*" S CMT1=$$^W4QNR(CMT)_$$DOP(CMT)
 .N CMTO S CMTO=$S(QNDIF["*":$P(CMT,"*")*($P(CMT,"*",2)-$P(QNDIF,"*",2)),1:CMT1-QNDIF)
 .N IN0 S IN0=I0
 .N CMTN S CMTN=CMT
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMTN_"\"_$$MANA(N)_"\"
 .S $P(@THZ1@(I0,CDT),"\",$$NRZ)=N
 .D SETHD(I0,CDT,C)
 .;
 .S N2I(N)=I0_"-"_CDT
 .I CMTO S @THZ1@(I0,CDT,1)=CDT_"\"_NMT_"\"_CMTO_"\\\"_$$MANA(N)_"\"_MHT_"\\\"_$$NOMOD(C)
 .D SETNOMOD1(I0,CDT,C)
 .D SETPRPCT(I0,CDT)
 .N CMNTT,MANA S CMNTT=$P(QNDIF,";",2),MANA=$$MANA(N)
 .I $L(MANA),CMNTT'[MANA S CMNTT=CMNTT_MANA
 .S TMPNEW(CDT)=NMT_"\"_MHT_"\"_+QNDIF_"\"_CMNTT_"\"
 ;
 S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMT_"\"_$$MANA(N)_"\"
 S $P(@THZ1@(I0,CDT),"\",$$NRZ)=N
 D SETHD(I0,CDT,C)
 ;
 D SETNOMOD1(I0,CDT,C)
 D SETPRPCT(I0,CDT)
 S N2I(N)=I0_"-"_CDT
 Q
 ;
 ;
NRZ(STAM) ;
 Q $$NRZ^W4N2V
 ;
 ;
SAVEAIN1 ;
 I '$L($G(CDT)) Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SH2 ;
 .N CD1 S CD1=$P(CDT,"-") Q:CD1=""
 .S SH2=$O(@THZ1@(I0,CD1,99999),-1) Q:'SH2
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CD1,SH2)),"\",6)
 .I $L($G(@THZ1@(I0,CD1,SH2)))>255 Q
 .I (" "_CMNT_" ")[(" "_NMT_" ") Q
 .I '($D(@THZ1@(I0,CD1,SH2))#2) Q
 .S $P(@THZ1@(I0,CD1,SH2),"\",6)=NMT_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 I '$$LINK($G(I0),CDT),'$G(NODEL) Q
 N STT2
 S STT2=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 ;
 I $G(HNT) D
 .S MHT0=MHT
 .I '$$^W4PRTBH(CDT) S MHT=$J(MHT*(100-HNT)*.01,2,2)
 .S $P(STT2,"\",7)=MHT
 ;
 I $D(@TMPORD@("MVFROM",N)) D
 .N A S A=$G(^(N))
 .S $P(STT2,"\",6)=$$^W4CLRCMN($P(STT2,"\",6))
 .I $P(STT2,"\",6)'[$P($$CMMV(A)," ") D
 ..S $P(STT2,"\",6)=$P(STT2,"\",6)_" "_$$CMMV(A)
 ;
 I $D(@TMPORD@(N,"MANA")) D
 .S $P(STT2,"\",6)=$P(STT2,"\",6)_$$MANA(N)
 ;
 S GLIST=$G(@TMPORD@(N,"GLIST"))
 S $P(STT2,"\",9)=GLIST
 ;
 I '$D(@THZ1@(I0,CDT)) D
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\\"_$$MANA(N)
 .D SETHD(I0,CDT,C)
 .I $G(N) S $P(@THZ1@(I0,CDT),"\",$$NRZ)=N
 .D SETNOMOD1(I0,CDT,C)
 .;;D SETPRPCT(I0,CDT) ; -- 25/11/16 *** LEV
 .S N2I(N)=I0_"-"_CDT
 ;
 D SETSH2(STT2)
 ;
 Q
 ;
 ;
SAVEAIN2 ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 S NMT2=$$CNWEB^%L1FRM(NMT2)
 Q:CDT2=""
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-") I CDT="" Q
 I CDT2'[">",MSD,$$MM^W4PRM S CDT2=MSD_">"_CDT2
 S CDTO2=CDT2
 ;
 I CDT2["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=$O(@THZ1@(I0,CDT,99999),-1) Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .I '($D(@THZ1@(I0,CDT,SHL))#2) Q
 .I $L($G(@THZ1@(I0,CDT,SHL)))>255 Q
 .I (" "_CMNT_" ")[(" "_$$SPA^%L1FRM(NMT2)_" ") Q
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 ;
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 N DOP S DOP=$$DOP(QNT2)
 ;
 I QNT2["*" D
 .S QNT2=$$^W4QNR(QNT2)
 .S QNT2=$P(QNT2,"|")
 .S QNT2=$P(QNT2,":")
 .S QNT2=QNT2_DOP
 ;
 I 'QNT2 S QNT2=1
 ;
 ;
 N MAIN S MAIN=$P(C,"~",15)
 N CDM S CDM=$P(MAIN,"^",2)
 I CDM'[">",MSD,$$MM^W4PRM S CDM=MSD_">"_CDM
 ;
 I CDM,CDM'=CDT D
 .S CDT=CDM
 .N NMT,MHT,QNT
 .
 .I '$D(@THZ1@(I0,CDM)) D
 ..S NMT=$P(MAIN,"^",3)
 ..S NMT=$$CNWEB^%L1FRM(NMT)
 ..S MHT=$P(MAIN,"^",4)
 ..S CMT=$P(MAIN,"^",5)
 ..S HNT=$P(MAIN,"^",6)
 ..D SAVEAIN1
 ..
 ..I $L($P(MAIN,"^",7)) D
 ...N CDT
 ...S CDT=CDM_"-C0"
 ...S NMT=$P(MAIN,"^",7)
 ...S NMT=$$CNWEB^%L1FRM(NMT)
 ...D SAVEAIN1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 I '$$LINK2(CDT,CDT2),'$G(NODEL) Q
 ;;I '$$LINK2^W4ISLINK(CD,CDT2),'$G(NODEL) Q
 D SETSH2(STT2)
 Q
 ;
 ;
SETQN1 ;
 N A,I0,CDT,SH2,QNT
 S I0="" F  S I0=$O(@THZ1@(I0)) Q:I0=""  D
 .S CDT="" F  S CDT=$O(@THZ1@(I0,CDT)) Q:CDT=""  D
 ..S QNT=0
 ..S SH2="" F  S SH2=$O(@THZ1@(I0,CDT,SH2)) Q:SH2=""  D
 ...S A=$G(^(SH2))
 ...N QNT3 S QNT3=$P(A,"\",3)
 ...I QNT3["*" S QNT3=$$^W4QNR(QNT3)
 ...I $L($P(A,"\")) S QNT=QNT+QNT3
 ..I QNT S $P(@THZ1@(I0,CDT),"\",3)=QNT
 Q
 ;
 ;
SETSH2(STT) ;
 N SH2 Q:CDT=""
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 ;
 N PRMANA,CMNT S PRMANA=$$MANA^W4PRM
 N MANA0 S MANA0=$$^W4DEFMN($P($G(@THZ1@(I0,CDT)),"\",4))
 ;
 I PRMANA S CMNT=$P(STT,"\",6) I '$$^W4DEFMN(CMNT),MANA0 D
 .S $P(STT,"\",6)=$P(STT,"\",6)_" "_$$GETI^W4DEFMN(MANA0)
 ;
 S @THZ1@(I0,CDT,SH2)=STT
 I $G(HNT) S @THZ1@(I0,CDT,SH2,"HNT")=HNT_";"_$G(MHT0)
 ;
 D SETNOMOD2(I0,CDT,SH2,C)
 ;;D SETPRPCT2(I0,CDT,SH2) ; --- 25/11/16 *** LEV
 S N2I(N)=I0_"-"_CDT_"-"_SH2
 Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(HZW)"
 Q
TMPORDB S TMPORDB="^[$$^W3MAIN]TMPORDB(HZW)"
 Q
 ;
THZ(JB) ;
 S WB=$$WB(JB)
 S THZ=$$^W4THZ
 S THZ1=$$^W4THZ1
 Q
 ;
WB(HZW) Q "JB"_HZW
 ;
KORD(HZM) ; --- HZM=JB
 K @$$^W4THZ
 K @$$^W4THZ1
 ;
 N NMB S NMB=$$NMB^W3HZMST(HZM)
 I NMB D ^W4KLNEW(NMB,HZM)
 D KORD^W4TMPORD(HZM)
 K ^[$$^W3MAIN]TMPORDB(HZM)
 K ^[$$^W3MAIN]TMPORDN(HZM)
 K @$$^W4MAIN("TMPORDO")
 K @$$^W4MAIN("TMPORD0")
 K @$$^W4MAIN("TMPOP")
 K @$$^W4MAIN("TMPOAI")
 D KILL^%W1PRM("HZM")
 Q
 ;
LVI(IND) ;
 N ST S ST=$G(@TMPORD@(IND))
 Q $P(ST,"~")
 ;
QNDIF(C) Q $P(C,"~",11)
 ;
NOMODC(C) I $P(C,"~",13)'="HZ" Q 0
 Q 1
 ;
NOMOD(C) Q $P(C,"~",12)
 ;
PRN(C) Q $P(C,"~",14)
 ;
SETNOMOD(I,C) ;
 S $P(@THZ1@(I),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD1(I,CDT,C) ;
 S $P(@THZ1@(I,CDT),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD2(I,CDT,SH2,C) ;
 S $P(@THZ1@(I,CDT,SH2),"\",10)=$$NOMOD(C)
 Q
 ;
CMMV(A) ;
 Q "<"_$P(A,";",2)_"y "_$P(A,";")
 ;
SETCMNT(CMNT,NMT) ;
 I $G(NMT)="" Q $G(CMNT)
 S CMNT=$$SPA^%L1FRM(CMNT)
 S NMT=$$SPA^%L1FRM(NMT)
 I CMNT=""!(CMNT=NMT) Q NMT
 I (" "_CMNT_" ")[(" "_NMT_" ") Q CMNT
 I $$MV^W4CLRCMN(NMT),$L(CMNT) Q $$^W4CLRCMN(CMNT)_";"_NMT
 I $$MV^W4CLRCMN(CMNT) Q NMT_" "_CMNT
 N OK S OK=0
 N I F I=1:1:$L(CMNT,";") I $$SPA^%L1FRM($P(CMNT,";",I))=$$SPA^%L1FRM(NMT) S OK=1 Q
 I OK Q CMNT
 Q NMT_";"_CMNT
 ;
 ;
TMPNEW2ORD(I0) ;
 ;
 N IN0,IN01,PR0 S PR0=0,IN0=0
 ;
 N CDT S CDT="" F  S CDT=$O(TMPNEW(CDT)) Q:CDT=""  D
 .N A S A=TMPNEW(CDT) Q:A=""
 .;
 .N NMT,MHT,QND,CMNT
 .S NMT=$P(A,"\")
 .S MHT=$P(A,"\",2)
 .S QND=$P(A,"\",3)
 .I QND["*" S QND=$$^W4QNR(QND)
 .S CMNT=$P(A,"\",4)
 .S IN01=I0
 .N IND S IND=$O(@THZ1@(IN01,CDT,99999),-1)+1
 .S @THZ1@(IN01,CDT,IND)=CDT_"\"_NMT_"\"_QND_"\\\"_CMNT_"\"_MHT_"\\\"
 .D SETPRPCT2(IN01,CDT,IND)
 ;
 K TMPNEW
 Q
 ;
 ;
MANA(SH) ;
 D TMPORD
 N A S A=$G(@TMPORD@(SH))
 N MANA S MANA=$G(@TMPORD@(SH,"MANA"))
 N LV,CD S LV=$P(A,"~"),CD=$P(A,"~",2)
 I 'MANA,LV=1,$E(CD)'="A",CD'["-C" S MANA=$$MANAEZA(SH,TMPORD)
 I 'MANA Q ""
 D MN^W4MANA
 Q $G(MN(MANA))
 ;
 ;
MANAEZA(SH,TMPORD) ;
 Q $$^W4DMANA(SH,TMPORD)
 ;
SETPRPC(SH) ;
 I $$NOPC(SH) S $P(@THZ1@(SH),"\",10)="@@@"
 Q
SETPRPCT(SH,CDT) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT),"\",10)="@@@"
 Q
SETPRPCT2(SH,CDT,IND) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT,IND),"\",10)="@@@"
 Q
 ;
NOPC(SH) ;
 I $D(@THZ1@("BIT",SH))&'$G(@$$^W4PRM@("HZMBIT")) Q 1
 I $P($G(@THZ1@("BIT",SH)),"*",5)["xar"&'$G(@$$^W4PRM@("HZMHV")) Q 1
 I $P($G(@THZ1@(SH)),"\",8)?.E1"<"1N.N1"y ".E,'$G(@$$^W4PRM@("HZMHV")) Q 1
 Q 0
 ;
 ;
SVW3ORD(HZM) ;
 N CODTS,NMTS S CODTS=$$CODTS^W4HZMST(HZM),NMTS=""
 D
 .N LNG S LNG="E"
 .S NMTS=$$^W3SHOWTS(CODTS)
 ;
 S $P(@TMPORD,"~",21)=CODTS
 S $P(@TMPORD,"~",34)="[ "_NMTS_" -a mley "_HZM_" `ed xewn zpnfd 'qn ] "
 S @TMPORD@("HZMKR")=HZM
 ;
 L +@$$^W3ORD:2
 N ORD S ORD=$$^%W1SsID("W4NEWHZ")
 L -@$$^W3ORD
 N DLV,FAX,MSD
 ;
 I $$AUTOFAX^W4PRM D
 .S MSD=$$MSD I MSD D
 ..S FAX=$TR($$FAX^W3R(MSD),"-","")
 ..I $L(FAX)>6 S DLV=ORD_";F;"_FAX_";"_HZM
 ;
 S %ARG("HZMKR")=HZM
 D PUT^W3ORDVW(JB,ORD)
 Q
 ;
 ;
MSD(STAM) ;
 N MSD S MSD=$G(@TMPORD@("MSD"))
 N SHIFT S SHIFT=$G(@$$^W4PRM@("WEB","RESTSHIFT"))
 I MSD,SHIFT,(MSD-SHIFT) Q (MSD-SHIFT)
 S MSD=$G(@TMPORD@("MSDTO"))
 Q MSD
 ;
ERHZM ;
 N IND
 S IND=$P($H,",",2)
 M @$$^W4MAIN("TMPORDER")@($$^W4DZ,IND,HZW)=@$$^W3TMPORD@(HZW)
 M @$$^W4MAIN("TMPORDBER")@($$^W4DZ,IND,HZW)=^[$$^W3MAIN]TMPORDB(HZW)
 N ERHZM S ERHZM=$G(ER)_";"_$P($G(HZM),";",2)_";"_$G(HZW)
 D SETER(IND,ERHZM)
 Q ERHZM
 ;
SETER(IND,ERHZM) ;
 S ^ERHZM($$^W4DZ,"W4NEWHZ",IND)=$G(ERHZM)
 Q
 ;
DOP(QN) ;
 Q $$DOP^W4PIZZA(QN)
 ;
LINK(I0,CDT)
 I $G(@$$^W4PRM@("NOCHKLINK")) Q 1
 I '$G(I0)!($G(CDT)="") Q 1
 I $G(HZM),$$HZMLAK^W4HZMST(HZM)["W" Q 1
 I $G(HZW),$G(HZW),$$HZMLAK^W3HZMST(HZW)["W" Q 1
 ;
 N ERT S ERT=0
 N PAR S PAR=$P($G(@THZ1@(I0)),"\")
 I PAR,'$$^W4ISLINK(PAR,CDT) S ERT=1
 Q 'ERT
 ;
LINK2(CDT,CDT2) ;
 I $G(@$$^W4PRM@("NOCHKLINK")) Q 1
 I '$G(CDT)!($G(CDT2)="") Q 1
 I $G(HZM),$$HZMLAK^W4HZMST(HZM)["W" Q 1
 I $G(HZW),$G(HZW),$$HZMLAK^W3HZMST(HZW)["W" Q 1
 Q $$^W4ISLINK(CDT,CDT2,1)
 ;
SDVN2I(I) ;
 N NN,NI S NN=""
 F  S NN=$O(N2I(NN)) Q:NN=""  D
 .I N2I(NN)'<I D
 ..S NI=N2I(NN)+1
 ..I N2I(NN)?1N.N S N2I(NN)=N2I(NN)+1 Q
 ..S $P(N2I(NN),"-")=NI
 Q
 ;
CHILDS(N) ;
 N N2,OK,C1,END S N2=N S OK=0,END=0
 F  S N2=$O(@TMPORD@(N2)) Q:N2=""  D  Q:END  Q:OK
 .S C1=$G(^(N2))
 .I $P(C1,"~")<2,$P(C1,"~",2)'["-C" S END=1 Q
 .I $P(C1,"~")>1 S OK=1
 Q OK
 ;
CHKDMSH ; 
 N HD,NMB S HD=$G(@TMPORD)
 S NMB=$P(HD,"~") Q:'$$^W4MSL(NMB)
 N DMO S DMO=$P($G(@TMPORD),"~",9)
 ;;S ^AA("W4NEWHZ-CHKDMSH","DMO")=DMO
 N NT S NT=$P($G(@TMPORD),"~",11)-DMO+$P($G(@TMPORD),"~",8)
 ;;S ^AA("W4NEWHZ-CHKDMSH","NT")=NT
 ;
 I 'NT&(DMO>0) D
 .S $P(@TMPORD,"~",9)=0
 .S $P(@TMPORD,"~",11)=$P(@TMPORD,"~",11)-DMO
 Q
 ;
SP(TX) ; 
 Q $$SPA^%L1FRM(TX) 
 ;
SETHD(I0,CDT,C) ; 
 I $L($P(C,"~",18)) D  Q
 .S $P(@THZ1@(I,CDT),"\",18)=$P(C,"~",18)
 ;
 I $L($G(HDST)) D
 .S $P(@THZ1@(I,CDT),"\",18)=HDST
 .S HDST=""
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NEWHZM
W4NEWHZM(NMB,HD) ; [ 24.08.26 10:02 ] [ 04.05.22 16:05 ] [ 27.10.17 09:12 ] 
 N GLORD S GLORD=$$^W4ORD
 D PUT^%W3DEB("W4NEWHZM","NMB=NMB")
 D ^W4KLNEW(NMB) N HZMS
 ;
 S HZMS=$$NEWHZM
 ;
 S P1DZ=$$^W4DZ
 ;
 I '($D(@$$^W4GL("P1DZ"))#2) D  ; --- PERENOS
 .N DT,SHAA
 .S DT=$P(HD,"\",5)
 .S SHAA=$P(HD,"\",6)
 .I DT S DT=$$^%L1DC(DT,3) I SHAA<$$SHAAZ^W4PRM S DT=DT-1
 .I $$^W4MSL(NMB),DT>P1DZ Q
 .L +@$$^W4GL("P1DZ"):1 S @$$^W4GL("P1DZ")=P1DZ L -@$$^W4GL("P1DZ")
 ;
 I $G(NMB) D
 .Q:HZMS>9999999
 .S @$$^W4GL("P1HL")@(NMB,HZMS)=P1DZ
 .S @$$^W4GL("P1HL")@(NMB,HZMS,"POS")=$$^W4MYDVN
 ;
 S @GLORD@(HZMS)=""
 ;
 L -@GLORD@(HZMS)
 ;
 S @$$^W4GL("P1HL0")@(NMB,HZMS)=P1DZ
 Q HZMS
 ;
NEWHZM(STAM) ;
BDMS0 N HZMS S HZMS=9999999
 N GLORD S GLORD=$$^W4ORD
 I $$SF^W4PRM S HZMS=999999
 F  S HZMS=$O(@GLORD@(HZMS),-1) Q:HZMS<1  Q:$D(@GLORD@(HZMS))=11
 I HZMS<1 S HZMS=1,HZMS0=1 G BDMS
 S HZMS0=HZMS
 S HZMS=HZMS+1
BDMS I $D(@GLORD@(HZMS))=11,HZMS-HZMS0<20 S HZMS=HZMS+1 G BDMS
 L +@GLORD@(HZMS):2
 I $D(@GLORD@(HZMS))=11,HZMS-HZMS0<20 S HZMS=HZMS+1 G BDMS
 Q HZMS
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NEWHZN
W4NEWHZN(HZW,HZM,NOPRINT) ; [ 07.08.18 16:44 ] [ 24.08.16 14:26 ] [ 09.08.16 19:48 ] 
 N (HZW,HZM,%REM,NOPRINT,P1HZOP)
 D PUT^%W3DEB("W4NEWHZ","HZW=HZW & HZM=HZM & NOPRINT=NOPRINT")
 I '$G(HZW) S ER=-.5 G ERHZM
 S JB=+HZW
 D TMPORD
 ;
 I $D(@TMPORD)<10,$D(^[$$^W3MAIN]TMPORDB(HZW))>9 D
 .M @TMPORD=^[$$^W3MAIN]TMPORDB(HZW)
 ;
 I '$D(@TMPORD) S ER=-1 G ERHZM
 ;
 I '$P($G(@TMPORD),"~"),$$NMB^W4TMPHD D
 .S @TMPORD=$$GET^W4TMPHD
 .S $P(@TMPORD,"~",11)=$$CALC^W3HZMST(HZW)
 ;
 I $D(@TMPORD)'=11 S ER=-2 G ERHZM
 ;
 I $$GETP^%W1PRM("MSDFROM") D
 .D PUT^%W1PRM("MSDFROMSAVED",1)
 .S @TMPORD@("MSD")=$$GETP^%W1PRM("MSDFROM")
 .S $P(@TMPORD,"~",51)=99
 ;
 D ^W4IN
 S %SCRN="P1HZMS"
 ;
 S NEWHZ=0
 ;
 ;
 I $G(HZM)<1 S HZM=$$NEW^W4KLNEW,NEWHZ=1 D
 .S $P(@TMPORD,"~",29)=$$^%L1DC(P1DZ,1)
 .S $P(@TMPORD,"~",12)="" ; -- SHULAM
 .S $P(@TMPORD,"~",17)="" ; -- SHULAM B-AKAFA
 .K @TMPORD@("GIBCB")
 .M @TMPORD@("GIBCB","HNH1")=@TMPORD@("CB","HNH1")
 .K @TMPORD@("CB")
 .I $D(@TMPORD@("GIBCB")) D
 ..M @TMPORD@("CB")=@TMPORD@("GIBCB")
 ..K @TMPORD@("GIBCB")
 .K @TMPORD@("CBOLD")
 .K @TMPORD@("S")
 ;
 ;
 S ER=0
 ;
 S %REM=$$GET^%W1PRM("REM")
 D THZ(JB)
 K @THZ,@THZ1
 ;
 S LASTI=0
 I HZM>0 D
 .D ^W4HZGT(HZM)
 .N I,I1 S (I,I1)=0
 .S I1=$$COLSH0^W3HZMST(JB)
 .S LASTI=$O(@THZ1@(9999),-1)
 .I $$COLSH0^W4HZMST(HZM)'>I1 K @THZ1 S LASTI=0 Q
 ;
 N A,B,C,C1,I S A=$G(@TMPORD) Q:A="" -3
 ;
 I $P(A,"~",21)=5 S $P(A,"~",21)=8 ;  -- CIBUS
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 ;
 S TSHL=$P(A,"~",11)
 ;
 S @THZ=$TR($P(A,"~",1,29),"~","\")
 ;
 S $P(@THZ,"\",22)=$P(A,"~",38) ; -- % HNH
 S $P(@THZ,"\",30)=$P(A,"~",60) ; -- HZMLAK
 ;
 ;-----------------------------------
 S (CD,CDT,CDTO,CDT2,NM,NMT,NMT2,CMNT,CMNT2,LN0,C,C1)=""
 K N2I
 ;
 D MN^W4MANA
 ;
 S I=0,I0=0,I1=LASTI
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  S LN0=$G(@TMPORD@(N))
 .S CO=C,C=$G(^(N))
 .
 .I $P(C,"~")=0 D  Q
 ..;
 ..I $D(TMPNEW),I0>1 D TMPNEW2ORD(I0)
 ..K TMPNEW,QNDIF
 ..N CMHN,PRKILL S CMHN="",SH2=0
 ..
 ..S CD=$P(C,"~",2),NM=$$SPA^%L1FRM($P(C,"~",3))
 ..S NM=$$CNWEB^%L1FRM(NM)
 ..S MH=$P(C,"~",4),CM=$P(C,"~",5)
 ..
 ..S I=I1+1,I1=I1+1
 ..S A0=$G(@THZ1@(I)) K @THZ1@(I) S @THZ1@(I)=A0
 ..
 ..S I0=I
 ..
 ..N AHST S AHST=$P(C,"~",6)
 ..N NOTSFMVC S NOTSFMVC=$P(C,"~",8)
 ..S CMNT=""
 ..
 ..I $L($P(C,"~",7)) D  ;-- COMMENT
 ...S CMNT=$P(C,"~",7)
 ...I $P(C,"~",6) S CMHN=CMNT,CMNT="" Q
 ...;;S CMNT="{"_$$^W4CLRCMN(CMNT)_"}"
 ...S CMNT=$$^W4CLRCMN(CMNT)
 ..
 ..I $D(@TMPORD@("MVFROM",N)) D
 ...N A S A=$G(^(N))
 ...S CMNT=$$^W4CLRCMN(CMNT)_$$CMMV(A)
 ..
 ..S TSF=0,SUM=MH*CM
 ..S N1=N F  S N1=$O(@TMPORD@(N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...N D S D=$G(^(N1)) Q:D=""
 ...N CMT S CMT=$P(D,"~",5)
 ...N MHT S MHT=$P(D,"~",4)
 ...N SUMT I $$^W4MULTY!'$$^W4EZAT(CD) D
 ....S SUMT=MHT*CM*$S(CMT["*":$P(CMT,"*",2),1:CMT)
 ...I '$$^W4MULTY,$$^W4EZAT(CD) D
 ....S SUMT=MHT*$S(CMT["*":CMT*$P(CMT,"*",2),1:CMT)
 ...I CM<0,MHT>0,SUMT>0 S SUMT=-SUMT
 ...S TSF=TSF+SUMT
 ...;;W !,"D="_D_"  CM="_CM_"  CMT="_CMT_"  TSF="_TSF
 ..
 ..I $G(@TMPORD@(N,"MANA")) D
 ...N MANA S MANA=$G(^("MANA")) I 'MANA!'$L($G(MN(MANA))) Q
 ...I CMNT[$G(MN(MANA)) Q
 ...S CMNT=CMNT_$G(MN(MANA))
 ..;
 ..S @THZ1@(I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(CM*MH+TSF)_"\"_CMNT_"\"
 ..S $P(@THZ1@(I),"\",9)=$G(@TMPORD@(N,"GLIST"))
 ..I $P(C,"~",14) D  ; -- PRINTER
 ...S $P(^(I),"\",11)=$P(C,"~",14)
 ..I $L($P(C,"~",17)) D  ; -- MVC2 ( SUM )
 ...S $P(^(I),"\",14)=$P(C,"~",17)
 ..
 ..S N2I(N)=I
 ..D SETNOMOD(I,C)
 ..D SETPRPC(I)
 ..
 ..I $G(AHST) D
 ...S I=I1+1,I1=I1+1
 ...N SUMA S SUMA=SUM+TSF I NOTSFMVC S SUMA=SUM
 ...S @THZ1@(I)="-"_+AHST_"%\\\\\\"_$J(SUMA*AHST*-.01,2,2)_"\"_CMHN_"\\@@!\\"_NOTSFMVC
 .
 .
 .I $P(C,"~")=1 D  S C1=C Q  ; --------------- TOSAFOT OR AI ------------
 ..N NMT,CMNT
 ..S CDT=$P(C,"~",2),NMT=$$SPA^%L1FRM($P(C,"~",3))
 ..S NMT=$$CNWEB^%L1FRM(NMT)
 ..S NMT=$TR(NMT,"\*","/X")
 ..Q:CDT=""  S CDTO=CDT
 ..I $E(CDT)="A" Q
 ..S MHT=$P(C,"~",4),CMT=$P(C,"~",5)
 ..I CMT["*" S CMT=$P(CMT,"*")*$P(CMT,"*",2)
 ..;
 ..I CDT["-C",$P(LN0,"~")=0 D  Q  ; -- HEARA LE PARIT ROSHI
 ...S CMNT=$P($G(@THZ1@(I0)),"\",8)
 ...S $P(@THZ1@(I0),"\",8)=$E($$SETCMNT(CMNT,NMT),1,255)
 ..;
 ..I '$$^W4EZAT(CD) D SAVETSF
 ..
 ..I $$^W4EZAT(CD) D SAVEAIN1
 .I $P(C,"~")=2,$L($G(C1)) D SAVEAIN2 ; --------------- TOSAFOT LEVEL 2 ---------
 ;
 D SETQN1
 ;
 I $D(TMPNEW),$G(I0) D TMPNEW2ORD(I0)
 ;
 S NMB=$P($G(@THZ),"\") I NMB="" S ER=-4 G ERHZM
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N?1U.E,N'="DEL" D  ;--- SERVICE INFORMATION
 .I N="BIT"!(N="MRG")!(N="TS")!(N="ST")!(N="MVFROM")!(N="HNH")!(N="HNHP")!(N="MVTO")!(N="TS") D  Q
 ..N NS S NS="" F  S NS=$O(@TMPORD@(N,NS)) Q:NS=""  D
 ...Q:'$G(N2I(NS))
 ...M @THZ@(N,N2I(NS))=@TMPORD@(N,NS)
 ...M @THZ@(N,N2I(NS),"O2T")=NS
 .M @THZ@(N)=@TMPORD@(N)
 ;
 K @THZ@("DEL")
 N GLORD D GLORD^W4HZMST
 ;
 I '$D(@TMPORD@("FIRE")),HZM>0 K @GLORD@("FIRE"),@THZ@("FIRE")
 ;
 S HZM=$$ZAP(HZW,HZM)
 I $$^W4MM D SVW3ORD(HZM)
 Q HZM
 ;
 ;
ZAP(HZW,HZM) ;
 ;
 S HZM=$$^W4PUTHZ(HZW,HZM) I 'HZM G ERHZM
 I $$GETP^%W1PRM("MSDFROM"),HZM>0 S ^P1HZ(HZM,"MSD")=$$GETP^%W1PRM("MSDFROM")
 ;
 I $$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$MKBL^W3HZMST(HZW)
 I '$$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$GET^%W1PRM("MLZR")
 ;
 D PUT^W4HZMST(HZM,"HNH",$$HNH^W4PAYVW(HZM))
 ;
 D PUT^W4HZMST(HZM,"PELE",$$PELE^W3HZMST(HZW))
 D PUT^W4HZMST(HZM,"IR",$$CITY^W3HZMST(HZW))
 D PUT^W4HZMST(HZM,"HRAED",$$CMHD^W3HZMST(HZW))
 ;;D PUT^W4HZMST(HZM,"FIRE",$$FIRE^W3HZMST(HZW))
 ;
 I $L($$COMP^W3HZMST(HZW)) D
 .D PUT^W4HZMST(HZM,"MAZMIN",$$NAME^W3HZMST(HZW))
 .D PUT^W4HZMST(HZM,"NAME",$$COMP^W3HZMST(HZW))
 ;
 I HZM>0,$$TAWM^W4DLPK(NMB) D
 .D PUT^W4HZMST(HZM,"NAME",$$HRAED^W4HZMST(HZM))
 .D PUT^W4HZMST(HZM,"IR","TAKEAWAY")
 ;
 N GLORD D GLORD^W4HZMST
 S (GLBV,GLBV1)=GLORD
 S @GLBV@("CIBCARD")=$G(CIBCARD)
 ;;I $$POS^W4MTAW S NOPRINT=1
 ;
 I '$G(NOPRINT) D ^W4HZM(HZM,JB) ; ---- PRINT ORDER !!!!
 I $G(NOPRINT) D ^W4NOMOD(HZM) ; ---- NO PRINT ORDER !!!!
 ;
 D ^W4GIBHZ(HZM)
 Q HZM
 ;
 ;
SAVETSF ;
 ; INPUT :
 ;   N   - INDEX IN ^TMPORD
 ;   C   - TEK STR ^TMPORD
 ;   CO  - PREDYD STR ^TMPORD
 ;   CDT - COD TOSEF
 ;   NMT - SHEM TOSEF
 ;   MHT - MAHIR TOSEF
 ;   I0  - NOM ST V ^P1HZ
 ;-------------------------------------------------------------------------
 N CMNT
 I CDT["-A" Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .Q:'CDT
 .I '$$NOMODC(C),$$NOMODC(CO),$$QNDIF(CO) Q
 .N CDT1 S CDT1=$P(CDT,"-C")
 .S CMNT=$P($G(@THZ1@(I,CDT1)),"\",4)
 .S $P(@THZ1@(I0,CDT1),"\",4)=$E($$SETCMNT(CMNT,NMT),1,255)
 .N LAST S LAST=$O(@THZ1@(I0,CDT1,9999),-1)
 .I LAST,$D(@THZ1@(I0,CDT1,LAST)),$G(^(LAST))'["\@@" S $P(@THZ1@(I0,CDT1,LAST),"\",6)=CMNT
 ;
 N QNDIF S QNDIF=$$QNDIF(C)
 I 'CMT,'QNDIF,$P(QNDIF,";",2)="",CDT'["-" Q
 ;
 I QNDIF D  Q  ; -- QNDIF
 .N CMT1 S CMT1=CMT I CMT["*" S CMT1=CMT*$P(CMT,"*",2)
 .N CMTO S CMTO=$S(QNDIF["*":$P(CMT,"*")_"*"_($P(CMT,"*",2)-$P(QNDIF,"*",2)),1:CMT1-QNDIF)
 .N IN0 S IN0=I0
 .N CMTN S CMTN=CMT
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMTN_"\"_$$MANA(N)_"\"
 .;
 .S N2I(N)=I0_"-"_CDT
 .I CMTO S @THZ1@(I0,CDT,1)=CDT_"\"_NMT_"\"_CMTO_"\\\"_$$MANA(N)_"\"_MHT_"\\\"_$$NOMOD(C)
 .D SETNOMOD1(I0,CDT,C)
 .D SETPRPCT(I0,CDT)
 .N CMNTT,MANA S CMNTT=$P(QNDIF,";",2),MANA=$$MANA(N)
 .I $L(MANA),CMNTT'[MANA S CMNTT=CMNTT_MANA
 .S TMPNEW(CDT)=NMT_"\"_MHT_"\"_+QNDIF_"\"_CMNTT_"\"
 ;
 I '$D(@THZ1@(I0,CDT)) S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMT_"\"_$$MANA(N)_"\"
 D
 .N LAST S LAST=$O(@THZ1@(I0,CDT,9999),-1)+1
 .S @THZ1@(I0,CDT,LAST)=CDT_"\"_NMT_"\"_CMT_"\\\"_$$MANA(N)_"\"_MHT
 ;
 D SETNOMOD1(I0,CDT,C)
 D SETPRPCT(I0,CDT)
 S N2I(N)=I0_"-"_CDT_"-1"
 Q
 ;
 ;
SAVEAIN1 ;
 I '$L($G(CDT)) Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SH2 ;
 .N CD1 S CD1=$P(CDT,"-") Q:CD1=""
 .S SH2=$O(@THZ1@(I0,CD1,99999),-1) Q:'SH2
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CD1,SH2)),"\",6)
 .I $L($G(@THZ1@(I0,CD1,SH2)))>255 Q
 .I (" "_CMNT_" ")[(" "_NMT_" ") Q
 .S $P(@THZ1@(I0,CD1,SH2),"\",6)=NMT_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 N STT2
 S STT2=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 ;
 I $D(@TMPORD@("MVFROM",N)) D
 .N A S A=$G(^(N))
 .S $P(STT2,"\",6)=$$^W4CLRCMN($P(STT2,"\",6))_$$CMMV(A)
 ;
 I $D(@TMPORD@(N,"MANA")) D
 .I $P(STT2,"\",6)[$$MANA(N) Q
 .S $P(STT2,"\",6)=$P(STT2,"\",6)_$$MANA(N)
 ;
 S GLIST=$G(@TMPORD@(N,"GLIST"))
 S $P(STT2,"\",9)=GLIST
 ;
 I '$D(@THZ1@(I0,CDT)) D
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\\"_$$MANA(N)
 .D SETNOMOD1(I0,CDT,C)
 .D SETPRPCT(I0,CDT)
 .S N2I(N)=I0_"-"_CDT
 ;
 D SETSH2(STT2)
 ;
 Q
 ;
 ;
SAVEAIN2 ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 S NMT2=$$CNWEB^%L1FRM(NMT2)
 Q:CDT2=""  S CDTO2=CDT2
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-")
 ;
 I CDT2["-C",$L(CDT) D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=$O(@THZ1@(I0,CDT,99999),-1) Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .I $L($G(@THZ1@(I0,CDT,SHL)))>255 Q
 .I (" "_CMNT_" ")[(" "_$$SPA^%L1FRM(NMT2)_" ") Q
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 I QNT2["*" S QNT2=$P(QNT2,"*")*$P(QNT2,"*",2)
 I 'QNT2 S QNT2=1
 ;
 ;
 N MAIN S MAIN=$P(C,"~",15)
 N CDM S CDM=$P(MAIN,"^",2)
 I CDM,CDM'=CDT,CDM'["-C" D
 .S CDT=CDM
 .N NMT,MHT,QNT
 .I '$D(@THZ1@(I0,CDM)) D
 ..S NMT=$P(MAIN,"^",3)
 ..S NMT=$$CNWEB^%L1FRM(NMT)
 ..S MHT=$P(MAIN,"^",4)
 ..S CMT=$P(MAIN,"^",5)
 ..D SAVEAIN1
 ..I $L($P(MAIN,"^",7)) D
 ...N CDT
 ...S CDT=CDM_"-C0"
 ...S NMT=$$CNWEB^%L1FRM($P(MAIN,"^",7))
 ...D SAVEAIN1
 ;
 I $D(@THZ1@(I0,CDT))#2,'$D(@THZ1@(I0,CDT,1)) D
 .N A S A=@THZ1@(I0,CDT)
 .S NMT=$P(A,"\")
 .S MHT=$P(A,"\",2)
 .S CMT=$P(A,"\",3)
 .D SAVEAIN1
 .I $L($P(A,"\",4)) D
 ..S CDT=CDT_"-C0"
 ..S NMT=$P(A,"\",4)
 ..D SAVEAIN1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 D SETSH2(STT2)
 Q
 ;
 ;
SETQN1 ;
 N A,I0,CDT,SH2,QNT
 S I0="" F  S I0=$O(@THZ1@(I0)) Q:I0=""  D
 .S CDT="" F  S CDT=$O(@THZ1@(I0,CDT)) Q:CDT=""  D
 ..S QNT=0
 ..S SH2="" F  S SH2=$O(@THZ1@(I0,CDT,SH2)) Q:SH2=""  D
 ...S A=$G(^(SH2))
 ...I $L($P(A,"\")) S QNT=QNT+$P(A,"\",3)
 ..I QNT S $P(@THZ1@(I0,CDT),"\",3)=QNT
 Q
 ;
 ;
SETSH2(STT) ;
 N SH2
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 S @THZ1@(I0,CDT,SH2)=STT
 D SETNOMOD2(I0,CDT,SH2,C)
 D SETPRPCT2(I0,CDT,SH2)
 S N2I(N)=I0_"-"_CDT_"-"_SH2
 Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(HZW)"
 Q
 ;
THZ(JB) ;
 S WB=$$WB(JB)
 S THZ=$$^W4THZ
 S THZ1=$$^W4THZ1
 Q
 ;
WB(HZW) Q "JB"_HZW
 ;
KORD(HZM) ;
 K @$$^W4THZ
 K @$$^W4THZ1
 ;
 N NMB S NMB=$$NMB^W3HZMST(HZM)
 I NMB D ^W4KLNEW(NMB,HZM)
 D KORD^W4TMPORD(HZM)
 K ^[$$^W3MAIN]TMPORDB(HZM)
 K @$$^W4MAIN("TMPORDO")
 K @$$^W4MAIN("TMPOP")
 K @$$^W4MAIN("TMPOAI")
 D KILL^%W1PRM("HZM")
 Q
 ;
LVI(IND) ;
 N ST S ST=$G(@TMPORD@(IND))
 Q $P(ST,"~")
 ;
QNDIF(C) Q $P(C,"~",11)
 ;
NOMODC(C) I $P(C,"~",13)'="HZ" Q 0
 Q 1
 ;
NOMOD(C) Q $P(C,"~",12)
 ;
PRN(C) Q $P(C,"~",14)
 ;
SETNOMOD(I,C) ;
 S $P(@THZ1@(I),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD1(I,CDT,C) ;
 S $P(@THZ1@(I,CDT),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD2(I,CDT,SH2,C) ;
 S $P(@THZ1@(I,CDT,SH2),"\",10)=$$NOMOD(C)
 Q
 ;
CMMV(A) ;
 Q "<"_$P(A,";",2)_"y "_$P(A,";")
 ;
SETCMNT(CMNT,NMT) ;
 I $G(NMT)="" Q $G(CMNT)
 S CMNT=$$SPA^%L1FRM(CMNT)
 S NMT=$$SPA^%L1FRM(NMT)
 I CMNT=""!(CMNT=NMT) Q NMT
 I (" "_CMNT_" ")[(" "_NMT_" ") Q CMNT
 I $$MV^W4CLRCMN(NMT),$L(CMNT) Q $$^W4CLRCMN(CMNT)_";"_NMT
 I $$MV^W4CLRCMN(CMNT) Q NMT_" "_CMNT
 N OK S OK=0
 N I F I=1:1:$L(CMNT,";") I $$SPA^%L1FRM($P(CMNT,";",I))=NMT S OK=1 Q
 I OK Q CMNT
 Q NMT_";"_CMNT
 ;
 ;
TMPNEW2ORD(I0) ;
 ;
 N IN0,IN01,PR0 S PR0=0,IN0=0
 ;
 N CDT S CDT="" F  S CDT=$O(TMPNEW(CDT)) Q:CDT=""  D
 .N A S A=TMPNEW(CDT) Q:A=""
 .;
 .N NMT,MHT,QND,CMNT
 .S NMT=$P(A,"\")
 .S MHT=$P(A,"\",2)
 .S QND=$P(A,"\",3)
 .S CMNT=$P(A,"\",4)
 .S IN01=I0
 .N IND S IND=$O(@THZ1@(IN01,CDT,99999),-1)+1
 .S @THZ1@(IN01,CDT,IND)=CDT_"\"_NMT_"\"_QND_"\\\"_CMNT_"\"_MHT_"\\\"
 .D SETPRPCT2(IN01,CDT,IND)
 ;
 K TMPNEW
 Q
 ;
MANA(SH) ;
 D TMPORD
 N A S A=$G(@TMPORD@(SH))
 N MANA S MANA=$G(@TMPORD@(SH,"MANA"))
 N LV,CD S LV=$P(A,"~"),CD=$P(A,"~",2)
 I 'MANA,LV=1,$E(CD)'="A",CD'["-C" S MANA=$$MANAEZA(SH,TMPORD)
 I 'MANA Q ""
 D MN^W4MANA
 Q $G(MN(MANA))
 ;
 ;
MANAEZA(SH,TMPORD) ;
 Q $$^W4DMANA(SH,TMPORD)
 ;
 ;
SETPRPC(SH) ;
 I $$NOPC(SH) S $P(@THZ1@(SH),"\",10)="@@@"
 Q
SETPRPCT(SH,CDT) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT),"\",10)="@@@"
 Q
SETPRPCT2(SH,CDT,IND) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT,IND),"\",10)="@@@"
 Q
 ;
NOPC(SH) ;
 I $D(@THZ1@("BIT",SH))&'$G(@$$^W4PRM@("HZMBIT")) Q 1
 I $P($G(@THZ1@("BIT",SH)),"*",5)["xar"&'$G(@$$^W4PRM@("HZMHV")) Q 1
 I $P($G(@THZ1@(SH)),"\",8)?.E1"<"1N.N1"y ".E,'$G(@$$^W4PRM@("HZMHV")) Q 1
 Q 0
 ;
SVW3ORD(HZM) ;
 N CODTS S CODTS=$$CODTS^W4HZMST(HZM)
 S $P(@TMPORD,"~",21)=CODTS
 S $P(@TMPORD,"~",34)="[ "_$$^W3SHOWTS(CODTS)_" -a mley "_HZM_" `ed xewn zpnfd 'qn ] "_$P(@TMPORD,"~",34)
 S @TMPORD@("HZMKR")=HZM
 ;
 L +@$$^W3ORD:2
 N ORD S ORD=$$^%W1SsID("W4NEWHZ")
 L -@$$^W3ORD
 D PUT^W3ORDVW(JB,ORD)
 Q
 ;
ERHZM ;
 N IND
 S IND=$TR($H,",","-")
 M @$$^W4MAIN("TMPORDER")@(IND,HZW)=@$$^W3TMPORD@(HZW)
 M @$$^W4MAIN("TMPORDBER")@(IND,HZW)=^[$$^W3MAIN]TMPORDB(HZW)
 N ERHZM S ERHZM=$G(ER)_";"_$P($G(HZM),";",2)_";"_$G(HZW)
 D SETER(IND,ERHZM)
 Q ERHZM
 ;
SETER(IND,ERHZM) ;
 S ^ERHZM($$^W4DZ,"W4NEWHZ",IND)=ERHZM
 Q
 
 
 
 
 
 
 
 
 
 
 

W4NEWHZO
W4NEWHZ(HZW,HZM,NOPRINT) ; [ 30.03.14 23:23 ] [ 25.02.14 11:00 ] [ 10.01.14 15:58 ]
 N (HZW,HZM,%REM,NOPRINT,P1HZOP)
 D PUT^%W3DEB("W4NEWHZ","HZW=HZW & HZM=HZM & NOPRINT=NOPRINT")
 I '$G(HZW) Q -.5
 S JB=+HZW
 D TMPORD
 I '$D(@TMPORD) Q -1
 I $D(@TMPORD)'=11 Q -2
 ;
 I $$GETP^%W1PRM("MSDFROM") D
 .D PUT^%W1PRM("MSDFROMSAVED",1)
 .S @TMPORD@("MSD")=$$GETP^%W1PRM("MSDFROM")
 .S $P(@TMPORD,"~",51)=99
 ;
 D ^W4IN
 S %SCRN="P1HZMS"
 ;
 S NEWHZ=0
 ;
 I $G(HZM)<1 S HZM=$$NEW^W4KLNEW,NEWHZ=1 D
 .S $P(@TMPORD,"~",29)=$$^%L1DC(P1DZ,1)
 .S $P(@TMPORD,"~",12)="" ; -- SHULAM
 .S $P(@TMPORD,"~",17)="" ; -- SHULAM B-AKAFA
 .K @TMPORD@("GIBCB")
 .M @TMPORD@("GIBCB","HNH1")=@TMPORD@("CB","HNH1")
 .K @TMPORD@("CB")
 .I $D(@TMPORD@("GIBCB")) D
 ..M @TMPORD@("CB")=@TMPORD@("GIBCB")
 ..K @TMPORD@("GIBCB")
 .K @TMPORD@("CBOLD")
 .K @TMPORD@("S")
 ;
 ;
 S ER=0
 ;
 S %REM=$$GET^%W1PRM("REM")
 D THZ(JB)
 K @THZ,@THZ1
 ;
 S LASTI=0
 I HZM>0 D
 .D ^W4HZGT(HZM)
 .N I,I1 S (I,I1)=0
 .S I1=$$COLSH0^W3HZMST(JB)
 .S LASTI=$O(@THZ1@(9999),-1)
 .I $$COLSH0^W4HZMST(HZM)'>I1 K @THZ1 S LASTI=0 Q
 ;
 N A,B,C,C1,I S A=$G(@TMPORD) Q:A="" -3
 ;
 I $P(A,"~",21)=5 S $P(A,"~",21)=8 ;  -- CIBUS
 S $P(A,"~",27)=$TR($P(A,"~",27),"-!","")
 ;
 S TSHL=$P(A,"~",11)
 ;
 S @THZ=$TR($P(A,"~",1,29),"~","\")
 ;
 S $P(@THZ,"\",22)=$P(A,"~",38) ; -- % HNH
 S $P(@THZ,"\",30)=$P(A,"~",60) ; -- HZMLAK
 ;
 ;-----------------------------------
 S (CD,CDT,CDTO,CDT2,NM,NMT,NMT2,CMNT,CMNT2,LN0,C,C1)=""
 K N2I
 ;
 D MN^W4MANA
 ;
 S I=0,I0=0,I1=LASTI
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  S LN0=$G(@TMPORD@(N))
 .S CO=C,C=$G(^(N))
 .
 .I $P(C,"~")=0 D  Q
 ..;
 ..I $D(TMPNEW),I0>1 D TMPNEW2ORD(I0)
 ..K TMPNEW,QNDIF
 ..N CMHN,PRKILL S CMHN="",SH2=0
 ..
 ..S CD=$P(C,"~",2),NM=$$SPA^%L1FRM($P(C,"~",3))
 ..S MH=$P(C,"~",4),CM=$P(C,"~",5)
 ..
 ..S I=I1+1,I1=I1+1
 ..S A0=$G(@THZ1@(I)) K @THZ1@(I) S @THZ1@(I)=A0
 ..
 ..S I0=I
 ..
 ..N AHST S AHST=$P(C,"~",6)
 ..N NOTSFMVC S NOTSFMVC=$P(C,"~",8)
 ..S CMNT=""
 ..
 ..I $L($P(C,"~",7)) D  ;-- COMMENT
 ...S CMNT=$P(C,"~",7)
 ...I $P(C,"~",6) S CMHN=CMNT,CMNT="" Q
 ...;;S CMNT="{"_$$^W4CLRCMN(CMNT)_"}"
 ...S CMNT=$$^W4CLRCMN(CMNT)
 ..
 ..I $D(@TMPORD@("MVFROM",N)) D
 ...N A S A=$G(^(N))
 ...S CMNT=$$^W4CLRCMN(CMNT)_$$CMMV(A)
 ..
 ..S TSF=0,SUM=MH*CM
 ..S N1=N F  S N1=$O(@TMPORD@(N1)) Q:N1=""  I N1 Q:$P($G(^(N1)),"~")=0  D
 ...N D S D=$G(^(N1)) Q:D=""
 ...N CMT S CMT=$P(D,"~",5)
 ...N MHT S MHT=$P(D,"~",4)
 ...N SUMT I $$^W4MULTY!'$$^W4EZAT(CD) D
 ....S SUMT=MHT*CM*$S(CMT["*":$P(CMT,"*",2),1:CMT)
 ...I '$$^W4MULTY,$$^W4EZAT(CD) D
 ....S SUMT=MHT*$S(CMT["*":CMT*$P(CMT,"*",2),1:CMT)
 ...I CM<0,MHT>0,SUMT>0 S SUMT=-SUMT
 ...S TSF=TSF+SUMT
 ...;;W !,"D="_D_"  CM="_CM_"  CMT="_CMT_"  TSF="_TSF
 ..
 ..I $G(@TMPORD@(N,"MANA")) D
 ...N MANA S MANA=$G(^("MANA"))
 ...S CMNT=CMNT_$G(MN(MANA))
 ..;
 ..S @THZ1@(I)=CD_"\\"_NM_"\"_MH_"\"_CM_"\"_TSF_"\"_(CM*MH+TSF)_"\"_CMNT_"\"
 ..S $P(@THZ1@(I),"\",9)=$G(@TMPORD@(N,"GLIST"))
 ..I $P(C,"~",14) D  ; -- PRINTER
 ...S $P(^(I),"\",11)=$P(C,"~",14)
 ..
 ..S N2I(N)=I
 ..D SETNOMOD(I,C)
 ..D SETPRPC(I)
 ..
 ..I $G(AHST) D
 ...S I=I1+1,I1=I1+1
 ...N SUMA S SUMA=SUM+TSF I NOTSFMVC S SUMA=SUM
 ...S @THZ1@(I)="-"_+AHST_"%\\\\\\"_$J(SUMA*AHST*-.01,2,2)_"\"_CMHN_"\\"_NOTSFMVC_"\@@!"
 .
 .
 .I $P(C,"~")=1 D  S C1=C Q  ; --------------- TOSAFOT OR AI ------------
 ..N NMT,CMNT
 ..S CDT=$P(C,"~",2),NMT=$$SPA^%L1FRM($P(C,"~",3))
 ..Q:CDT=""  S CDTO=CDT
 ..I $E(CDT)="A" Q
 ..S MHT=$P(C,"~",4),CMT=$P(C,"~",5)
 ..I CMT["*" S CMT=$P(CMT,"*")*$P(CMT,"*",2)
 ..;
 ..I CDT["-C",$P(LN0,"~")=0 D  Q  ; -- HEARA LE PARIT ROSHI
 ...S CMNT=$P($G(@THZ1@(I0)),"\",8)
 ...S $P(@THZ1@(I0),"\",8)=$$SETCMNT(CMNT,NMT)
 ..
 ..;
 ..I '$$NEWAI^W4PRM!'$$^W4EZAT(CD) D SAVETSF
 ..
 ..I $$NEWAI^W4PRM&$$^W4EZAT(CD) D SAVEAIN1
 .
 .I $P(C,"~")=2,$L($G(C1)) D SAVEAIN2 ; --------------- TOSAFOT LEVEL 2 ---------
 ;
 D SETQN1
 ;
 I $D(TMPNEW),$G(I0) D TMPNEW2ORD(I0)
 ;
 S NMB=$P($G(@THZ),"\") I NMB="" S ER=-4 Q ER
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N?1U.E,N'="DEL" D  ;--- SERVICE INFORMATION
 .I N="BIT"!(N="MRG")!(N="ST")!(N="MVFROM")!(N="HNH")!(N="HNHP")!(N="MVTO") D  Q
 ..N NS S NS="" F  S NS=$O(@TMPORD@(N,NS)) Q:NS=""  D
 ...Q:'$G(N2I(NS))
 ...M @THZ@(N,N2I(NS))=@TMPORD@(N,NS)
 ...M @THZ@(N,N2I(NS),"O2T")=NS
 .M @THZ@(N)=@TMPORD@(N)
 ;
 K @THZ@("DEL")
 N GLORD D GLORD^W4HZMST
 ;
 I '$D(@TMPORD@("FIRE")),HZM>0 K @GLORD@("FIRE"),@THZ@("FIRE")
 ;
 S HZM=$$ZAP(HZW,HZM)
 I $$^W4MM D SVW3ORD(HZM)
 Q HZM
 ;
 ;
ZAP(HZW,HZM) ;
 ;
 S HZM=$$^W4PUTHZ(HZW,HZM) I 'HZM Q -6_";"_$P(HZM,";",2)
 I $$GETP^%W1PRM("MSDFROM"),HZM>0 S ^P1HZ(HZM,"MSD")=$$GETP^%W1PRM("MSDFROM")
 ;
 I $$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$MKBL^W3HZMST(HZW)
 I '$$MLZBGPAR^W4PRM D
 .S @$$^W4GL("P1MLZ")@(HZM)=$$GET^%W1PRM("MLZR")
 ;
 D PUT^W4HZMST(HZM,"HNH",$$HNH^W4PAYVW(HZM))
 ;
 D PUT^W4HZMST(HZM,"PELE",$$PELE^W3HZMST(HZW))
 D PUT^W4HZMST(HZM,"IR",$$CITY^W3HZMST(HZW))
 D PUT^W4HZMST(HZM,"HRAED",$$CMHD^W3HZMST(HZW))
 ;;D PUT^W4HZMST(HZM,"FIRE",$$FIRE^W3HZMST(HZW))
 ;
 I $L($$COMP^W3HZMST(HZW)) D
 .D PUT^W4HZMST(HZM,"MAZMIN",$$NAME^W3HZMST(HZW))
 .D PUT^W4HZMST(HZM,"NAME",$$COMP^W3HZMST(HZW))
 ;
 I HZM>0,$$TAWM^W4DLPK(NMB) D
 .D PUT^W4HZMST(HZM,"NAME",$$HRAED^W4HZMST(HZM))
 .D PUT^W4HZMST(HZM,"IR","TAKEAWAY")
 ;
 N GLORD D GLORD^W4HZMST
 S (GLBV,GLBV1)=GLORD
 S @GLBV@("CIBCARD")=$G(CIBCARD)
 ;;I $$POS^W4MTAW S NOPRINT=1
 ;
 I '$G(NOPRINT) D ^W4HZM(HZM) ; ---- PRINT ORDER !!!!
 I $G(NOPRINT) D ^W4NOMOD(HZM) ; ---- NO PRINT ORDER !!!!
 ;
 D ^W4GIBHZ(HZM)
 Q HZM
 ;
 ;
SAVETSF ;
 ; INPUT :
 ;   N   - INDEX IN ^TMPORD
 ;   C   - TEK STR ^TMPORD
 ;   CO  - PREDYD STR ^TMPORD
 ;   CDT - COD TOSEF
 ;   NMT - SHEM TOSEF
 ;   MHT - MAHIR TOSEF
 ;   I0  - NOM ST V ^P1HZ
 ;-------------------------------------------------------------------------
 N CMNT
 I CDT["-A" Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .Q:'CDT
 .I '$$NOMODC(C),$$NOMODC(CO),$$QNDIF(CO) Q
 .N CDT1 S CDT1=$P(CDT,"-C")
 .S CMNT=$P($G(@THZ1@(I,CDT1)),"\",4)
 .S $P(@THZ1@(I0,CDT1),"\",4)=$$SETCMNT(CMNT,NMT)
 .I $D(@THZ1@(I0,CDT1,1)),$G(^(1))'["\@@" S $P(@THZ1@(I0,CDT1,1),"\",6)=CMNT
 ;
 N QNDIF S QNDIF=$$QNDIF(C)
 I 'CMT,'QNDIF,$P(QNDIF,";",2)="",CDT'["-" Q
 ;
 I QNDIF D  Q  ; -- QNDIF
 .N CMT1 S CMT1=CMT I CMT["*" S CMT1=CMT*$P(CMT,"*",2)
 .N CMTO S CMTO=$S(QNDIF["*":$P(CMT,"*")_"*"_($P(CMT,"*",2)-$P(QNDIF,"*",2)),1:CMT1-QNDIF)
 .N IN0 S IN0=I0
 .N CMTN S CMTN=CMT
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMTN_"\"_$$MANA(N)_"\"
 .;
 .S N2I(N)=I0_"-"_CDT
 .I CMTO S @THZ1@(I0,CDT,1)=CDT_"\"_NMT_"\"_CMTO_"\\\"_$$MANA(N)_"\"_MHT_"\\\"_$$NOMOD(C)
 .D SETNOMOD1(I0,CDT,C)
 .D SETPRPCT(I0,CDT)
 .N CMNTT,MANA S CMNTT=$P(QNDIF,";",2),MANA=$$MANA(N)
 .I $L(MANA),CMNTT'[MANA S CMNTT=CMNTT_MANA
 .S TMPNEW(CDT)=NMT_"\"_MHT_"\"_+QNDIF_"\"_CMNTT_"\"
 ;
 S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\"_CMT_"\"_$$MANA(N)_"\"
 D SETNOMOD1(I0,CDT,C)
 D SETPRPCT(I0,CDT)
 S N2I(N)=I0_"-"_CDT
 Q
 ;
 ;
SAVEAIN1 ;
 I '$L($G(CDT)) Q
 ;
 I CDT["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SH2 ;
 .N CD1 S CD1=$P(CDT,"-") Q:CD1=""
 .S SH2=$O(@THZ1@(I0,CD1,99999),-1) Q:'SH2
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CD1,SH2)),"\",6)
 .S $P(@THZ1@(I0,CD1,SH2),"\",6)=NMT_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 N STT2
 S STT2=CDT_"\"_NMT_"\"_CMT_"\\\\"_MHT
 ;
 I $D(@TMPORD@("MVFROM",N)) D
 .N A S A=$G(^(N))
 .S $P(STT2,"\",6)=$$^W4CLRCMN($P(STT2,"\",6))_$$CMMV(A)
 ;
 I $D(@TMPORD@(N,"MANA")) D
 .S $P(STT2,"\",6)=$P(STT2,"\",6)_$$MANA(N)
 ;
 S GLIST=$G(@TMPORD@(N,"GLIST"))
 S $P(STT2,"\",9)=GLIST
 ;
 I '$D(@THZ1@(I0,CDT)) D
 .S @THZ1@(I0,CDT)=NMT_"\"_MHT_"\\"_$$MANA(N)
 .D SETNOMOD1(I0,CDT,C)
 .D SETPRPCT(I0,CDT)
 .S N2I(N)=I0_"-"_CDT
 D SETSH2(STT2)
 ;
 Q
 ;
 ;
SAVEAIN2 ;
 N CDT2,NMT2,CMNT2,QNT2,MHT2
 S CDT2=$P(C,"~",2),NMT2=$$SPA^%L1FRM($P(C,"~",3))
 Q:CDT2=""  S CDTO2=CDT2
 I $E(CDT2)="A" Q
 S CDT=$P(CDT,"-")
 ;
 I CDT2["-C" D  Q  ; -- HEARA LE TOSEFET
 .N SHL S SHL=$O(@THZ1@(I0,CDT,99999),-1) Q:'SHL
 .N CMNT S CMNT=$P($G(@THZ1@(I0,CDT,SHL)),"\",6)
 .S $P(@THZ1@(I0,CDT,SHL),"\",6)=NMT2_$S('$L(CMNT):"",1:" "_CMNT)
 ;
 S MHT2=$P(C,"~",4),QNT2=$$SPA^%L1FRM($P(C,"~",5))
 I QNT2["*" S QNT2=$P(QNT2,"*")*$P(QNT2,"*",2)
 I 'QNT2 S QNT2=1
 ;
 S STT2="\\"_QNT2_"\"_CDT2_"\"_NMT2_"\\"_MHT2_"\"
 D SETSH2(STT2)
 Q
 ;
 ;
SETQN1 ;
 N A,I0,CDT,SH2,QNT
 S I0="" F  S I0=$O(@THZ1@(I0)) Q:I0=""  D
 .S CDT="" F  S CDT=$O(@THZ1@(I0,CDT)) Q:CDT=""  D
 ..S QNT=0
 ..S SH2="" F  S SH2=$O(@THZ1@(I0,CDT,SH2)) Q:SH2=""  D
 ...S A=$G(^(SH2))
 ...I $L($P(A,"\")) S QNT=QNT+$P(A,"\",3)
 ..I QNT S $P(@THZ1@(I0,CDT),"\",3)=QNT
 Q
 ;
 ;
SETSH2(STT) ;
 S SH2=$O(@THZ1@(I0,CDT,9999),-1)+1
 S @THZ1@(I0,CDT,SH2)=STT
 D SETNOMOD2(I0,CDT,SH2,C)
 D SETPRPCT2(I0,CDT,SH2)
 S N2I(N)=I0_"-"_CDT_"-"_SH2
 Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(HZW)"
 Q
 ;
THZ(JB) ;
 S WB=$$WB(JB)
 S THZ=$$^W4THZ
 S THZ1=$$^W4THZ1
 Q
 ;
WB(HZW) Q "JB"_HZW
 ;
KORD(HZM) ;
 K @$$^W4THZ
 K @$$^W4THZ1
 ;
 N NMB S NMB=$$NMB^W3HZMST(HZM) Q:'NMB
 D ^W4KLNEW(NMB,HZM)
 D KORD^W4TMPORD(HZM)
 K ^[$$^W3MAIN]TMPORDB(HZM)
 K @$$^W4MAIN("TMPORDO")
 K @$$^W4MAIN("TMPOP")
 K @$$^W4MAIN("TMPOAI")
 D KILL^%W1PRM("HZM")
 Q
 ;
LVI(IND) ;
 N ST S ST=$G(@TMPORD@(IND))
 Q $P(ST,"~")
 ;
QNDIF(C) Q $P(C,"~",11)
 ;
NOMODC(C) I $P(C,"~",13)'="HZ" Q 0
 Q 1
 ;
NOMOD(C) Q $P(C,"~",12)
 ;
PRN(C) Q $P(C,"~",14)
 ;
SETNOMOD(I,C) ;
 S $P(@THZ1@(I),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD1(I,CDT,C) ;
 S $P(@THZ1@(I,CDT),"\",10)=$$NOMOD(C)
 Q
 ;
SETNOMOD2(I,CDT,SH2,C) ;
 S $P(@THZ1@(I,CDT,SH2),"\",10)=$$NOMOD(C)
 Q
 ;
CMMV(A) ;
 Q "<"_$P(A,";",2)_"y "_$P(A,";")
 ;
SETCMNT(CMNT,NMT) ;
 I $G(NMT)="" Q $G(CMNT)
 I $$SPA^%L1FRM(CMNT)=""!($$SPA^%L1FRM(CMNT)=$$SPA^%L1FRM(NMT)) Q NMT
 I $$MV^W4CLRCMN(NMT),$L(CMNT) Q $$^W4CLRCMN(CMNT)_";"_NMT
 I $$MV^W4CLRCMN(CMNT) Q NMT_" "_CMNT
 N OK S OK=0
 N I F I=1:1:$L(CMNT,";") I $$SPA^%L1FRM($P(CMNT,";",I))=$$SPA^%L1FRM(NMT) S OK=1 Q
 I OK Q CMNT
 Q NMT_";"_CMNT
 ;
 ;
TMPNEW2ORD(I0) ;
 ;
 N IN0,IN01,PR0 S PR0=0,IN0=0
 ;
 N CDT S CDT="" F  S CDT=$O(TMPNEW(CDT)) Q:CDT=""  D
 .N A S A=TMPNEW(CDT) Q:A=""
 .;
 .N NMT,MHT,QND,CMNT
 .S NMT=$P(A,"\")
 .S MHT=$P(A,"\",2)
 .S QND=$P(A,"\",3)
 .S CMNT=$P(A,"\",4)
 .S IN01=I0
 .N IND S IND=$O(@THZ1@(IN01,CDT,99999),-1)+1
 .S @THZ1@(IN01,CDT,IND)=CDT_"\"_NMT_"\"_QND_"\\\"_CMNT_"\"_MHT_"\\\"
 .D SETPRPCT2(IN01,CDT,IND)
 ;
 K TMPNEW
 Q
 ;
MANA(SH) ;
 D TMPORD
 N A S A=$G(@TMPORD@(SH))
 N MANA S MANA=$G(@TMPORD@(SH,"MANA"))
 N LV,CD S LV=$P(A,"~"),CD=$P(A,"~",2)
 I 'MANA,LV=1,$E(CD)'="A",CD'["-C" S MANA=$$MANAEZA(SH,TMPORD)
 I 'MANA Q ""
 D MN^W4MANA
 Q $G(MN(MANA))
 ;
 ;
MANAEZA(SH,TMPORD) ;
 N A,A0,I,J,N,CD,CD0,MANA,NSET
 ;
 F I=SH:-1:1 Q:$P($G(@TMPORD@(I)),"~")=0
 S A0=$G(@TMPORD@(I))
 ;
 I $P(A0,"~")'=0 Q ""
 S CD0=$P(A0,"~",2) I 'CD0 Q ""
 ;
 S CD=""
 F I=SH:-1:1 Q:$P($G(@TMPORD@(I)),"~")=0  D  Q:$E(CD)="A"
 .S A=$G(^(I)),CD=$P(A,"~",2)
 ;
 I $E(CD)'="A" Q ""
 ;
 S NSET=$E(CD,2,10)
 S N=""
 S MANA=$G(@$$^W4GL("P1EZA")@(CD0,"A"_NSET))
 I MANA="" S MANA=$G(@$$^W4GL("P1EZT")@(CD0,"A"_NSET))
 Q MANA
 ;
 ;
SETPRPC(SH) ;
 I $$NOPC(SH) S $P(@THZ1@(SH),"\",10)="@@@"
 Q
SETPRPCT(SH,CDT) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT),"\",10)="@@@"
 Q
SETPRPCT2(SH,CDT,IND) ;
 I $$NOPC(SH) S $P(@THZ1@(SH,CDT,IND),"\",10)="@@@"
 Q
 ;
NOPC(SH) ;
 I $D(@THZ1@("BIT",SH))&'$G(@$$^W4PRM@("HZMBIT")) Q 1
 I $P($G(@THZ1@("BIT",SH)),"*",5)["xar"&'$G(@$$^W4PRM@("HZMHV")) Q 1
 I $P($G(@THZ1@(SH)),"\",8)?.E1"<"1N.N1"y ".E,'$G(@$$^W4PRM@("HZMHV")) Q 1
 Q 0
 ;
SVW3ORD(HZM) ;
 N CODTS S CODTS=$$CODTS^W4HZMST(HZM)
 S $P(@TMPORD,"~",21)=CODTS
 S $P(@TMPORD,"~",34)="[ "_$$^W3SHOWTS(CODTS)_" -a mley "_HZM_" `ed xewn zpnfd 'qn ] "_$P(@TMPORD,"~",34)
 S @TMPORD@("HZMKR")=HZM
 ;
 L +@$$^W3ORD:2
 N ORD S ORD=$$^%W1SsID("W4NEWHZ")
 L -@$$^W3ORD
 D PUT^W3ORDVW(JB,ORD)
 Q

W4NEWNMB
W4NEWNMB(CODDOC) ; [ 18.06.15 12:07 ] [ 27.12.14 17:35 ] [ 26.12.14 20:15 ]
 N NOM
 I $$GETP^%W1PRM("ELPOS"),CODDOC="HMK" D  Q NOM
 .S NOM=$ZP(@$$^W4GL("P1HB")@(99999999))+1
 .
 I CODDOC="HZMH" Q $O(@$$^W4GL("W4DIR")@(CODDOC,9999999),-1)+1
 ;
 Q $O(@$$^W4GL("KLIN")@(CODDOC,99999999),-1)+1

W4NM
W4NM(TX,PR) ; [ 07.09.25 13:38 ] [ 17.08.25 21:46 ] [ 
 I TX'[" = " Q $S($G(PR):$$H2U^%L1FRM(TX),1:TX)
 I $$TMPENG^%W1LNG Q $$INVD^%L1FRM($P(TX," = ")," ")
 S TX=$P(TX," = ",2,20)
 I $G(PR) S TX=$$H2U^%L1FRM(TX)
 Q TX
 ;
IT(CD,NM,PR) ;
 S NM=$G(NM)
 I $D(@$$^W4GL("W4WRKENG"))>9,CD S NM=$$SHEM^W4P(CD) D
 .I $$ENG S NM=$$FUNC^%UCASE($E(NM))_$$FUNC^%LCASE($E(NM,2,255))
 I $G(PR),'$$ENG S NM=$$H2U^%L1FRM(NM)
 Q NM
 ;
ENG()
 I $$TMPENG^%W1LNG Q 1
 I $$^%W1LNG="E" Q 1
 Q 0
 
 
 
 

W4NMB
W4NMB(NMB) ; [ 17.01.18 17:42 ] [ 
 S NMB=$TR(NMB," ","")
 S NMB=$TR(NMB,"-","")
 N J,NMB1,A S NMB1="" 
 F J=1:1:$L(NMB) S A=$E(NMB,J) Q:A'?1N&(A'=".")  D
 .S NMB1=NMB1_A
 I $L(NMB1)<4 S NMB1=+NMB1
 Q NMB1
 ;
NMB(STAM) ;
 Q $$W4NMB($$GETP^%W1PRM("NMB"))

W4NMTB
W4NMTB(NMB) ; [ 10.11.08 17:15 ] [ 16.02.05 14:15 ] [
 N NMB1
 S NMB1="" I $L(NMB)<4,$$SUGL1^W4L(NMB)["OTH" S NMB1=$G(@$$^W4GL("LKH")@(NMB))
 Q NMB1

W4NOBACK
W4NOBACK(STAM) ; [ 06.09.14 09:33 ] [
 I $G(%ARG("NOBACK")) Q 1
 I $G(%ARG("noback")) Q 1
 I $$GETP^%W1PRM("NOBACK") Q 1
 Q 0

W4NOCASH
W4POSPRM ; [ 30.07.10 12:22 ] [
NOCASH(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"MZM")) Q 0
 Q 1
NOCHK(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"NOCHK")) Q 1
 Q 0
NOPAY(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"HSB")) Q 0
 Q 1
NOBIT(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"BIT")) Q 0
 Q 1
NOHNH(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"HNH")) Q 0
 Q 1

W4NOCD
W4NOCD(A) ; [ 10.02.17 18:56 ] [ 
 N CD S CD=$$CD(A)
 I $$CDA(A)!$$CDH(A)!$$CDC(A) Q 1
 I $$^W4CDSRV(CD) Q 1
 Q 0
 

W4NOIGUL
W4NOIGUL(STAM) ; [ 08.01.19 11:24 ] [ 14.06.17 12:04 ] [ 27.07.16 10:21 ] 
 Q +$G(@$$^W4PRM@("NOIGUL"))
 ;
 I $$HMK^W4LHB,$G(@$$^W4PRM@("NOIGUL")) Q 1
 I $$TM^W4LHB,$G(@$$^W4PRM@("NOIGUL")) Q 1
 I $$VD("ITM")!$$VD("ITZ")!$$VD("IHB"),$G(@$$^W4PRM@("NOIGUL")) Q 1
 I $G(@$$^W4PRM@("NOIGUL"))=2 Q 1
 Q 0
 ;
VD(DOC) ;
 I $G(%ARG("VD"))=DOC Q 1
 I $$GETP^%W1PRM("VD")=DOC Q 1
 Q 0
 
 
 
 

W4NOMOD
W4NOMOD(HZM) ; [ 27.09.17 11:23 ] [ 24.02.17 19:51 ] [ 22.02.17 23:03 ] 
 N (JB,%ARG,%REM,HZM)
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S A=$G(^(I))
 .I A'["\@@" D
 ..S $P(^(I),"\",10)="@@@+"
 ..;;I '$$NOLELO^W4PRM D  ; -- 27/09/17 --> COMMENT
 ...S $P(^(I),"\",8)="[dqtcd `ll] "_$P(@$$^W4ORD@(HZM,I),"\",8)
 .
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZM,I,N1)) Q:N1=""  I N1 S A=$G(^(N1)) D
 ..I A'["\@@" S $P(^(N1),"\",10)="@@@+"
 ..S N2="" F  S N2=$O(@$$^W4ORD@(HZM,I,N1,N2)) Q:N2=""  I N2 S A=$G(^(N2)) D
 ...I A'["\@@" S $P(^(N2),"\",10)="@@@+"
 Q
 
 
 
 
 
 

W4NOMTD
W4NOMTD(NOMTD,DOC) ; [ 12.02.19 15:16 ] [ 31.01.19 10:38 ] [ 
 I NOMTD?1N.N,DOC="TM" Q "DOC-"_NOMTD
 I NOMTD?1N.N,DOC="TMZ" Q "TMZ-"_NOMTD
 Q $S($L(NOMTD):NOMTD,1:"?")
 
 
 

W4NOMULT
W4NOMULTY(STAM) ; [ 02.07.11 16:44 ] [
 I $G(@$$^W4PRM@("NOMULTY")) Q 1
 Q 0

W4NOPCBN
W4NOPCBN(ORD) ; [ 27.02.24 10:19 ] [ 
 N OK S OK=1
 N CD,N,ST S N="" F  S N=$O(@$$^W4ORD@(ORD,N)) Q:N=""  I N D  Q:'OK
 .S ST=$G(^(N))
 .S CD=$P(ST,"\")
 .I CD,$$PRINTIG^W3PRMDP(CD)'=0 S OK=0
 Q OK
 

W4NOPCBO
W4NOPCBN(ORD) ; [ 27.02.24 10:16 ] [ 
 N OK S OK=1
 N CD,N,ST S N="" F  S N=$O(@$$^W4ORD@(ORD,N)) Q:N=""  I N D  Q:'OK
 .S ST=$G(^(N))
 .S CD=$P(ST,"\")
 .I CD,'$G(@$$^W4GL("W4NOQUE")@(CD)) S OK=0
 Q OK

W4NOTITM
W4NOTITM(STAM) ; [ 31.10.19 12:52 ] [ 17.09.19 16:09 ] [ 
 I $D(@$$^W4TMPORD)<10 Q 1
 I +$$TOTQN^W3HZMST(JB)=0,+$$TOTORD^W3HZMST(JB)=0 Q 2
 Q 0
 

W4NUMKB
W4NUMKB(ELTO,MAXL) ; [ 10.08.25 10:13 ] [ 27.01.22 16:40 ] [ 28.04.21 15:23 ] 
  N (JB,%ARG,%REM,ELTO,MAXL)
  S ELTO=$G(ELTO)
  I ELTO'="" D PUT^%W1PRM("KBRKVTO",ELTO)
   N PAD S PAD=8
   I $$1024^W4WDSCR S PAD=4
   ;
   S %ARG("ELTO")=ELTO
   W "<table border=""0"" dir=""LTR"" cellpadding="""_PAD_""" >",!
     S K=0
     S HG=50 I $$1024^W4WDSCR S HG=40
     W "<tr height="""_HG_"px"">",!
     F J=1:1:10 D
     .S K=K+1
     .D DIGIT(K#10,MAXL)
     ;
     I '$G(%ARG("NODOT")) D DIGIT(".",MAXL)
     I $G(%ARG("MINUS")) D DIGIT("-",MAXL)
     ;
     D DIGIT("Del",MAXL,"red","DelDigit()")
     D DIGIT("C",MAXL,"red","ClearDisplay()")
     ;
     I $G(%ARG("UPDOWN")) D
     .W "<td style=""background-color:#eaeaea"" >"
     . W "<img src=""w4vniz.png"" onClick=""Vniz()"" />"
     .W "</td>"
     .
     .W "<td style=""background-color:#eaeaea"" >"
     . W "<img src=""w4vverx.png"" onClick=""Vverx()"" />"
     .W "</td>"
     ;
     W "</tr>",!
   W "</table>",!
  Q
  ;
  ;
DIGIT(K,MAXL,COLOR,PROC) ;
 D DIGIT^W4KB(K,$G(MAXL),$G(COLOR),$G(PROC))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4NZ
W4NZ(DT,TIM) ; [ 27.11.22 16:05 ] [ 24.11.22 16:03 ] [ 
 N (JB,%ARG,%REM,DT,TIM) 
 S GLZ=$$^W4GL("Z")
 S TIMZ="",PRZ=0
 S LASTZ=$G(@GLZ)
 S NZ=""
 ;
 I $D(@GLZ@(DT)) S NZ=$$FND(DT,TIM)
 ;
 S DT0=$O(@GLZ@(DT),-1) I 'DT0 Q ""
 ;
 I 'NZ D
 .S NZ=$$FND(DT0,99999)
 ;
 I 'NZ Q ""
 I NZ>LASTZ Q NZ
 ;
 S DTNZ=""
 S N=DT0-1 F  S N=$O(@GLZ@(N)) Q:N=""  I $D(@GLZ@(N,NZ)) S DTNZ=NZ_"\"_N Q
 Q DTNZ
 ;
 ;
FND(DT,TIM)
 N N,N1,A,TIMZ,M,IND
 S N="" F  S N=$O(@GLZ@(DT,N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLZ@(DT,N,N1)) Q:N1=""  D
 ..S A=$$SPA^%L1FRM($G(^(N1)))
 ..I A["- Z -" S PRZ=1 Q
 ..I A["xewn zwtd",PRZ D
 ...S TIMZ=$P(A," ") 
 ...S TIMZ=TIMZ*3600+($P(TIMZ,":",2)*60)
 ...S M(TIMZ)=N,PRZ=0
 ;
 S IND=$O(M(TIM),-1)
 I IND Q (M(IND)+1)
 Q ""
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ODTL
W4ODTL(TLN,HSB,ODEFTS,DAT,MKR) ; [ 10.11.08 12:12 ] [ 13.02.06 12:14 ] [ 01/26/98 11:44 AM ]
  D ^W4MDPPC,^%L1TS S SM=1
  S TXT=$TR($J("",GWPC-2)," ","*") D S1
  S TXT=%MDP("B")_%MDP("R")_$$CENTRB^%L1FRM($TR(@$$^W4PL@("ESEK",1),"#_",""),GWPC)_%MDP("RL")_%MDP("N") D S1
  F I=2:1:4 S TXT=$$CENTR^%L1FRM(@$$^W4PL@("ESEK",I),GWPC-2) D S1
  S TXT="" D S1
  S STPC(1)=$$HSB(HSB)_$C(10)
  N XV S XV=$E($P(ODEFTS,".",2)_"0",1,2)
  I XV S XV=XV\5*5+((XV#5>2)*5)*.01,ODEFTS=$P(ODEFTS,".")+($S(ODEFTS<0:-1,1:1)*XV)
  S STPC(2)=$$MKR(MKR)_$C(10,10)_%MDP("B")_"  "_$J(TLN,4)_" 'qn yelz "_%MDP("N")_$C(10)
  S STPC(3)=%MDP("B")_"      g""y "_$J($G(ODEFTS),5,2)_" "_%MDP("N")
  S STPC(3,"R")=""
  S STPC(4)=$C(10)_"  __________ dnizg        znzeg "
  S STPC(5)=$C(10,10)_$TR($J("",GWPC-2)," ","*")
  S STPC(6)=$C(10,10,10,10,10)_%MDP("CUT")_$C(10,10)
  S STPC(6,"NOTS")=""
  S STPC(8)=$TR($J("",GWPC-2)," ","*")_$C(10,10)_$$MKR(0)_$C(10,10)_$$HSB(HSB)_$C(10)
  S STPC(9)=%MDP("B")_" scer "_TLN_" 'qn yelz "_%MDP("N")_$C(10)
  S STPC(10)=%MDP("B")_"     g""y "_$G(ODEFTS)_" "_%MDP("N")_$C(10,10)
  S STPC(11)=$TR($J("",GWPC-2)," ","*")
  N I F I=8:1:11 S STPC(I,"R")=""
  D STPC
  S TXT=$C(10,10,10,10,10)_%MDP("CUT")_$C(10,10),TXT("NOTS")="" D S1
  Q
STPC N N,TXT S N="" F  S N=$O(STPC(N)) Q:N=""  M TXT=STPC(N) D S1
 K STPC
 Q
S1 S TXT=$$CLST^%L1FRM(TXT,%MDP("B"),%MDP("N"))
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 N PCN S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 S @$$^W4PC@(PRINT,PCN)=$J("",SM)_$S($D(TXT("NOTS")):TXT,1:$TR(TXT,TS0,TSS))
 K TXT Q
MKR(MKR) Q %MDP("B")_$S(MKR:" xewn ",1:" wzrd ")_%MDP("N")
HSB(HSB) Q "    "_$ZD(DAT,"DD/MM/YY")_"    "_$TR($J(HSB,4)," ","0")_" zipeaygl wted"

W4OPNORD
W4OPNORD(ORD) ; [ 12.04.14 17:21 ] [
 I $G(ORD)<1 Q
 N DZ S DZ=$$^W4DZ
 ;
 I $$^W4CLOSE(ORD),$$ITRA^W4HZMST(ORD),$$^%L1DC($$DATK^W4HZMST(ORD),3)=DZ,'$D(@$$^W4GL("Z")@(DZ)) D
 .S @$$^W4ORD@(ORD,"S")=$G(@$$^W4ORD@(ORD,"S"))#2
 Q

W4OPNWND
W4OPNWND(STAM) ; [ 02.01.18 13:59 ] [ 26.11.17 10:19 ] [ 25.11.17 11:32 ] 
 I $$^W4SMALL Q 0
 I $$^W4TABLET Q 0
 Q +$$GETP^%W1PRM("OPNWND")
 
 
 
 

W4OPORD
W4OPORD(HZM) ; [ 13.11.09 10:52 ] [
 D ^W4IN
 I $$^%L1DC($$DATK^W4HZMST(HZM),3)=P1DZ,$$^W4CLOSE(HZM),$$ITRA^W4HZMST(HZM)>.9!($$ITRA^W4HZMST(HZM)<-.9) D
 .S @$$^W4ORD@(HZM,"S")=$G(@$$^W4ORD@(HZM,"S"))#2

W4OPT
W4OPT(SO) ; [ 25.06.25 14:46 ] [ 19.06.25 12:25 ] [ 10.06.25 11:03 ] 
 N (JB,%ARG,NMB,CODE,%REM,SO)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D KILL^%W3DEB("W4OPT")
 D NOSELECT^%W1JS
 ;
 Q:'$G(JB)
 S COLX=5,COLY=6
 I $$^W4TABLET=1 S COLY=4
 I SO="WVPOP" S COLX=6
 I $$^W4TABLET=2 S COLY=8,COLX=5
 S KOT="",TOP="",HG=""
 ;
BG ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 D HEAD
 I SO="POPSH"!(SO="POPBO") D
 .I $$MGR^W4HZGSH S COLY=$S(SO="POPBO":6,1:7)
 .S COLX=7 S KOT=$$KOTTIME^W4HZGMLZ($$^W3MSDG($$GETP^%W1PRM("MSD"))_" : "_$$^W4KOTMLZ)
 I SO="WVPOP" D
 .S KOT=$$^%W1DICT("VALIOCARDMENU")
BGI ;
 ;
M S SH=1
 ;
 D BODY
 ;
 I $L(EXITNAME) D
 .K MFUNC
 .S MFUNC(0)=""
 .S MFUNC("EXIT")=EXITNAME
 .I $L(EXITTO) S MFUNC("EXIT","TO")=EXITTO
 ;
H D VIEW
 ;
 Q
 ;
 ;
BODY ;
 N I,K,L,N0 S K=1,L=0 K MTXT
 S N="" F  S N=$O(^[$$^W3MAIN]W4OPT(SO,N)) Q:N=""  D  Q:K>COLY
 .N A S A=$G(^(N))
 .N US S US=$P(A,";")
 .I US=0 Q
 .I $L(US),US'?1N.N N B S @("B="_US) I 'B Q
 .S L=L+1 I L>COLX S L=1,K=K+1 Q:K>COLY
 .N BGR,FGR S BGR=$P(A,";",4),FGR=$P(A,";",5)
 .I '$L(BGR) S BGR="darkgreen"
 .I '$L(FGR) S FGR="yellow"
 .N TX S TX="<table style=""width:100%;height:100%;background-color:"_BGR_";color:"_FGR_";text-align:center;font-weight:bold"">"
 .S TX=TX_"  <tr>"
 .S N0=N
 .S NMOPT=$P(A,";",2)
 .S OPT=$P(A,";",3)
 .N FSZ S FSZ=12 I $$1700^W4WDSCR!($$^W4TABLET=1) S FSZ=14
 .S TX=TX_"<td style=""font-size:"_$$^W3FSZ(FSZ)_""" "
 .S TX=TX_">"_$$^%W1DICT(NMOPT)_"</td>"
 .
 .S TX=TX_"</tr></table>"
 .
 .S MTXT(K,L)=TX
 .S MTXT(K,L,"TO")=OPT
 .S MTXT(K,L,"BG")="white"
 .
 ;
 Q
 ;
 ;
VIEW ;
 S %ARG("GRAD")="#EFEFEF<>#FFFFFF"
 D ^W4SHEET(KOT,"","",TOP,HG)
 Q
 ;
HEAD ;
 N KOTG S KOTG=$G(^[$$^W3MAIN]W4OPT(SO))
 S KOT=$P(KOTG,";")
 I $L(KOT) S KOT=$$^%W1DICT(KOT)_"<ALGN=center"
 N COLX1,COLY1,TOP1,HG1
 S COLX1=$P(KOTG,";",2) I COLX1 S COLX=COLX1 I $$^W4TABLET=2,COLX>5 S COLX=5
 S COLY1=$P(KOTG,";",3) I COLY1 S COLY=COLY1
 S TOP1=$P(KOTG,";",4) I TOP1 S TOP=TOP1
 S HG1=$P(KOTG,";",5) I HG1 S HG=HG1
 S EXITNAME=$P(KOTG,";",6)
 S EXITTO=$P(KOTG,";",7)
 Q
 ;
FEED ;
 D ^W4MDPPC Q:'$D(%MDP("P"))
 S @$$^W4PC@(PRINT,$O(@$$^W4PC@(PRINT,99999),-1)+1)=%MDP("PRG")
 Q
 ;
CUT ;
 D ^W4MDPPC Q:'$D(%MDP("CUT"))
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
OPENDRAW ;
 D ^W4MDPPC Q:'$D(%MDP("P"))
 N P1DZ S P1DZ=$$^W4DZ
 S @$$^W4GL("P1MG")@(P1DZ)=$G(@$$^W4GL("P1MG")@(P1DZ))+1
 S @$$^W4PC@(PRINT,$O(@$$^W4PC@(PRINT,99999),-1)+1)=%MDP("P")
 Q
 ;
ERSTBL(PRM) ;
 N MSL,CLS S MSL=$P(PRM,";",2),CLS=$P(PRM,";",3)
 S MSL=$$SPA^%L1FRM(MSL)
 S CLS=$$SPA^%L1FRM(CLS)
 ;
 S PRM=$P(PRM,";")
 I '$G(PRM),'MSL Q "NOTTABLE"
 I '$G(PRM),MSL Q "NOTCUSTNUMBER"
 I '$$^W4MSD(PRM),'MSL Q "WRONGTABLENUMBER"
 I '$$^W4MSL(PRM),MSL Q "WRONGCUSTNUMBER"
 ;
 I 'CLS,'$D(@$$^W4GL("FLAG")@(PRM)),'MSL Q "TABLENOTBUSY"
 I 'CLS,'$D(@$$^W4GL("FLAG")@(PRM)),MSL Q "NOTORDERWITHTHISCUSTNUMBER"
 I 'CLS K @$$^W4GL("FLAG")@(PRM)
 ;
 N HZ S HZ=$$^W4HZFR(PRM)
 I CLS,HZ=0 Q "TABLEISCLOSED"
 ;
 I HZ<1 D  Q 1
 .I HZ<0 D
 ..K @$$^W4GL("P1HL")@(PRM,"ycg")
 ..K @$$^W4GL("P1HL")@(PRM,"NEW")
 ;
 I CLS,HZ>0,$$ITRA^W4HZMST(HZ) Q "PAIDORDER"
 ;
 I HZ>0,'$$MSL^W4MSL(HZ)!$$DLV^W4CLOSE(HZ)!CLS D
 .I '$$ITRA^W4HZMST(HZ),$$MSL^W4MSL(HZ) D SGPSL^W4DLVORD(HZ,-1) Q
 .D SETCLOSE^W4HZMST(HZ)
 ;
 I CLS K @$$^W4GL("FLAG")@(PRM)
 Q 1
 ;
INIT ;
 I '$$^W4TABLET D KILL^%W1PRM("W4BO")
 D KILL^%W1PRM("ZERONAME"),KILL^%W1PRM("ZEROPRICE"),KILL^%W1PRM("ABC"),KILL^%W1PRM("W4ABC")
 D KILL^%W1PRM("VPLOAD"),KILL^%W1PRM("VZLOAD"),KILL^%W1PRM("S21")
 D KILL^%W1PRM("TIPMZIND"),KILL^%W1PRM("TIPMZWAITER"),KILL^%W1PRM("TIPMZCSR")
 Q
 ;
RESTHZM ;
 N HZM,HREFO,HZMO,GL
 S HZM=$$GET^%W1PRM("HZM")
 I '$$^W4ISORD(HZM) D KILL^%W1PRM("HZM") K @$$^W4ORD@(HZM)
 S HZMO=$$GET^%W1PRM("HZMO")
 I $$^W4ISORD(HZMO) D PUT^%W1PRM("HZM",HZMO)
 D KILL^%W1PRM("HZMO")
 S HREFO=$$GET^%W1PRM("HREFO")
 D KILL^%W1PRM("HREF")
 D KILL^%W1PRM("HREFO")
 ;
 D REST^W4TMPORD
 ;
 D KILL^%W1PRM("VPLOAD"),KILL^%W1PRM("VZLOAD"),KILL^%W1PRM("S21")
 D GL^W4TMPANS
 K @GL
 D GL^W4TMPPAY
 K @GL
 D KILL^WBPARAM
 Q
 ;
FIRE(STAM) ;
 ;;I '$$BONSCR^W4PRM,'$$POS^W4MTAW,'$G(@$$^W4PRM@("NOFIRE")) Q 1
 I '$$POS^W4MTAW,'$G(@$$^W4PRM@("NOFIRE")) Q 1
 Q 0
 ;
PRINTFIRE(PRM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N NOFIRE S NOFIRE=+$$GET^%W1PRM("NOFIRE")
 D KILL^%W1PRM("NOFIRE")
 D SNDFIRE(HZM,PRM,NOFIRE)
 Q
 ;
SNDFIRE(HZM,PRM,NOFIRE)
 ;
 N I,PRN F I=1:1:$L(PRM,"&") D
 .S PRN=$P(PRM,"&",I)
 .I PRN'="" D
 ..D ^W4FIRE(HZM,PRN,NOFIRE)
 Q
 ;
NOSHOWFIRE(STAM) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D  Q:OK
 .I $$FIRE^W4MDP(N) S OK=1
 I OK&'$G(@$$^W4PRM@("MDP")) Q 1
 Q 0
 ;
SEND2FIRE(FIRE)
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I 'HZM,NMB S HZM=$$^W4HZFR(NMB)
 Q:'HZM
 N PRNLIST S PRNLIST=""
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .I $$FIRE^W4MDP(N) S PRNLIST=PRNLIST_N_"&"
 S PRNLIST=$E(PRNLIST,1,$L(PRNLIST)-1)
 ;
 D SNDFIRE(HZM,PRNLIST,'FIRE)
 Q
 ;
SENDFIREVW(FIRE) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I 'HZM,NMB S HZM=$$^W4HZFR(NMB)
 Q:'HZM
 N A S A=$$^W4GETHZ(HZM)
 Q:'A
 D SEND2FIRE(FIRE)
 S A=$$^W4NEWHZ(JB,HZM,1)
 Q
 ;
SENDFIREVWL(PRM) ;
 N NOFIRE S NOFIRE=+$$GETP^%W1PRM("NOFIRE")
 D KILL^%W1PRM("NOFIRE")
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I 'HZM,NMB S HZM=$$^W4HZFR(NMB)
 Q:'HZM
 N A S A=$$^W4GETHZ(HZM)
 Q:'A
 D SNDFIRE(HZM,PRM,NOFIRE)
 S A=$$^W4NEWHZ(JB,HZM,1)
 Q
 ;
MGR(STAM) ;
 ;;I $$MGR^W4KOTMLZ Q 1
 ;;I $$GETP^%W1PRM("W4BO") Q 1
 N MYDVN S MYDVN=$$^W4MYDVN
 N A S A=$G(@$$^W4DEV@(MYDVN,"H"))
 S A=$P(A,"\")
 I A="lev"!(A="LEV")!(A="al") Q 1
 I A="dima"!(A="DIMA")!(A="dnic") Q 1
 I A="dkinz"!(A="TMIHA") Q 1
 S A=$TR(A,".","")
 I A="VIP"!(A="vip") Q 1
 I $$GETP^%W1PRM("SISALL")>1 Q 1
 Q 0
 ;
MGR1(STAM) ;
 I $$MGR^W4KOTMLZ!$$MGR Q 1
 Q 0
 ;
PSWDRG(OPT) ;
 N N,A,DRG S DRG=0
 S N="" F  S N=$O(@$$^W4GL("W4OPT")@("BO",N)) Q:N=""  D  Q:DRG
 .S A=$G(^(N)) Q:$P(A,";",2)'=OPT
 .S DRG=$G(@$$^W4GL("W4OPT")@("BO",N,"PSWLVL"))
 Q DRG
 ;
 ;
TLMTNPRT(PRM) ;
 N HZM S HZM=+$$GETP^%W1PRM("HZM")
 N VP S VP=$$VP
 N CD S CD=$$GCOUPIT^W4PRM I CD="" Q "GCOUPITEMNOTDEFINED"
 ;
 N OK S OK=0
 I $$GETP^%W1PRM("TLDFLT") D  Q:'OK -4
 .N NMB
 .N NMB S NMB=+$$GETP^%W1PRM("NMB")
 .I $$^W4HZFR(NMB),'$D(@$$^W4TMPORD@(1)) K @$$^W4TMPORD S NMB=0 D KILL^%W1PRM("NMB")
 .S MLZR=$$MLZRDFLT
 .I MLZR D PUT^%W1PRM("MLZR",MLZR)
 .S $P(@$$^W4TMPORD,"~",18)=MLZR
 .D KILL^%W1PRM("HZM") S HZM=0
 .S OK=NMB
 .I 'NMB D
 ..S OK=0
 ..N I F I=1:1:999 D  Q:OK
 ...I $$SUGLMTN(I),'$$^W4HZFR(I),$G(@$$^W4GL("FLAG")@(I))=""!($G(@$$^W4GL("FLAG")@(I))=$$^W4MYDVN) S OK=I Q
 ..;
 ..I 'OK Q
 ..D PUT^%W1PRM("NMB",OK)
 ..S $P(@$$^W4TMPORD,"~")=OK
 ..D PUTDFLT^W4TMPPAY(7,"SUM",$$ITRA^W4HZMST(HZM))
 ..D PUTDFLT^W4TMPPAY(7,"CARDNUMBER",$$GET^W4TMPANS(VP,"PAYERTEL"))
 ;
 ;;D KILL^%W1PRM("TLDFLT")
 ;
 N MH S MH=$J($$GET^W4TMPANS(VP,"SUM"),2,2)
 N PAYERNAME S PAYERNAME=$$GET^W4TMPANS(VP,"PAYERNAME")
 N PAYERTEL S PAYERTEL=$$GET^W4TMPANS(VP,"PAYERTEL")
 N RCPNAME S RCPNAME=$$GET^W4TMPANS(VP,"RECIPIENTNAME")
 ;
 S @$$^W4TMPORD@(1)="0~"_CD_"~"_$$SHEM^W4P(CD)_"~"_MH_"~1"
 S @$$^W4TMPORD@(2)="1~"_CD_"-C0~dpzn yelz"
 ;
 D PUT^W3HZMST(JB,"TSHL",MH)
 M @$$^W4TMPORD@("GCOUP")=@$$^W4TMPANS@(VP)
 S @$$^W4TMPORD@("GCOUP","TLM")=$G(@$$^W4TMPANS@(VP,"COUPNUMBER"))
 K @$$^W4TMPANS@(VP)
 K @$$^W4TMPORD@("GCOUP","COUPNUMBER")
 ;
 N RES S RES=$$^W4NEWHZ(JB,HZM,1)
 I RES>0 D PUT^%W1PRM("HZM",RES) Q 1
 Q RES
 ;
VP(STAM) ;
 Q $$VP^W4GCOUP
 ;
SUGLMTN(NMB) ;
 I $$SUGL1^W4L(NMB)["pzn" Q 1
 I $$SUGL1^W4L(NMB)["GIFT" Q 1
 Q 0
 ;
GETPARAM(STAM) ;
 N FL,RES
 D HEAD^W4STRINW("GetParam")
 W "   </GetParam>",!
 W "  </soap:Body>",!
 W "</soap:Envelope>",!
 C FL
 ;
 S RES=$P($$^W4SHVCON("GetParam"),"~",2)
 ;
 I RES=0!(RES="000") Q "PARAMETERSRECEIVED"
 I RES=250 Q "IDENTIFYERROR"
 Q "ERROR "_RES
 ;
 ;
GETTEL(STAM) ;
 N FL,RES1,RES2
 D HEAD^W4STRINW("GetTerminalData")
 W "   </GetTerminalData>",!
 W "  </soap:Body>",!
 W "</soap:Envelope>",!
 C FL
 ;
 N A S A=$$^W4SHVCON("GetTerminalData")
 ;
 S RES1=$P(A,"~")
 S RES2=$P(A,"~",2)
 ;
 I RES1="OK",RES2=0!(RES2="000") Q A
 I RES2=250 Q "IDENTIFYERROR"
 Q "ERROR "_RES2
 ;
TELCA(PRM) 
 N PRM1,M
 S M(1)="ISRACARD"
 S M(2)="CAL"
 S M(3)="AMEX"
 S M(4)="DINERS"
 S M(6)="LEUMICARD"
 S PRM1=$G(M(PRM)) I PRM1="" Q ""
 N A S A=$$GETTEL
 I $P(A,"~")'="OK" Q "" 
 S A=$$RPL^%L1FRM(A,"&gt;",">")
 S A=$$RPL^%L1FRM(A,"&lt;","<")
 Q $$GETVL^W4SHVCON(A,PRM1_"_TEL")_"^"_$$GETVL^W4SHVCON(A,PRM1_"_SAPAK")
 ;
ISRATEL(STAM)
 Q $$TELCA(1) 
 ;
CALTEL(STAM) ; 
 Q $$TELCA(2) 
 ;
AMEXTEL(STAM) ;
 Q $$TELCA(3) 
 ;
DINERSTEL(STAM) ;
 Q $$TELCA(4) 
 ;
LEUMITEL(STAM) ;
 Q $$TELCA(6) 
 ;
ERSSHV(STAM) ; 
 N CMD S CMD="/opt/Modularity/SPI/bin/./SPIShell  --reset-sharedmem" ZSY CMD
 Q $ZSY
 ;
MLZRDFLT(STAM) ; 
 N MLZR S MLZR=$$GETP^%W1PRM("MLZR") 
 I 'MLZR S MLZR=$$MKBL^W3HZMST(JB)
 I 'MLZR S MLZR=$$MLZRDFLT^W4PRM 
 Q MLZR 
 ;
USRESTEMV(STAM)
 I $$EMV^W4PRM<4 Q 0
 S HZM=$$GETP^%W1PRM("HZM") I HZM<1 Q 0
 Q $$USRESTEMV1(HZM)
 ;
USRESTEMV1(HZM)
 I '$$ITRA^W4HZMST(HZM) Q 0
 I $$^W4CLOSE(HZM) Q 0
 I $D(@$$^W4ORD@(HZM,"EMVP"))<10 Q 0
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"EMVP",N)) Q:N=""  D
 .I '$D(@$$^W4ORD@(HZM,"CB","V",N)) S OK=1
 Q OK
 ;
RESTEMV(HZM) ; 
 N (JB,%ARG,%REM,HZM) 
 I $G(HZM) D PUT^%W1PRM("HZM",HZM)
 S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM Q "NOTORDER"  
 I '$$USRESTEMV1(HZM) Q "PAIDED"
 ;
 S A=$$RESTEMV^W4PAY(HZM) 
 S @$$^W4ORD@(HZM,"RESTEMV")=$H
 ;
 I $P(A,"~")'="OK" Q A
 S ER=$$TVA^W4PAYCA(HZM,A) 
 S STA=$P(ER,";",2) I STA G ENDREST
 S STA=+STA
 D ^W4CBOLD(HZM)
 D KILL^%W1PRM("S21")
 D CLEAR^W4PAYKB
ENDREST D PUT^%W1PRM("ER",ER) Q:$G(STA) "STA="_STA
 Q 0
 ;
ASKHBMDP() ;
 I ($$^W4TABLET=1)&$$ASKHBMDP^W4PRM Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORD
W4ORD(STAM) ; [ 07.05.16 13:48 ] [ 02.11.08 10:40 ] [
 Q $$^W4GL("P1HZ")
 ;
HZM(HZM) ;
 I $G(HZM)="" S HZM=$$GETP^%W1PRM("HZM")
 I HZM<0 Q $$ORDNOM^W4ISPART(HZM)
 Q HZM

W4ORDD
W4ORDD(LKH,NUMBER) ; [ 29.09.15 10:39 ] [ 27.09.14 10:09 ] [ 26.09.14 15:39 ] [
 I $G(LKH)="" Q 0
 I $G(NUMBER)="" Q 0
 S LKH=$$^W4CDLK(LKH)
 Q +$G(@$$^W4GL("W4ORDD")@(LKH,+NUMBER))
 ;
KILL(LKH,NUMBER)
 I $G(LKH)="" Q
 I $G(NUMBER)="" Q
 S LKH=$$^W4CDLK(LKH)
 K @$$^W4GL("W4ORDD")@(LKH,+NUMBER)
 D ^%S2GLSV($$^W4GL("W4ORDD")_"("""_LKH_""","""_+NUMBER_""")",$$^W4FGIB,"K")
 Q
 ;
SET(LKH,NUMBER,NOM) ;
 I $G(LKH)="" Q
 I $G(NUMBER)="" Q
 I '$G(NOM) Q
 S LKH=$$^W4CDLK(LKH)
 S @$$^W4GL("W4ORDD")@(LKH,+NUMBER)=NOM
 S @$$^W4GL("W4ORD")@(NOM,"NUMBER")=NUMBER
 D ^%S2GLSV($$^W4GL("W4ORDD")_"("""_LKH_""","""_+NUMBER_""")",$$^W4FGIB)
 D ^%S2GLSV($$^W4GL("W4ORD")_"("""_NOM_""",""NUMBER"")",$$^W4FGIB)
 Q
 ;
D(LKH,NUMBER) ;
 I $G(LKH)="" Q 0
 I $G(NUMBER)="" Q 0
 S LKH=$$^W4CDLK(LKH)
 Q $D(@$$^W4GL("W4ORDD")@(LKH,+NUMBER))
 ;
BELONG(LKH,NUMBER) ;
 N NOMORD
 I $G(LKH)="" Q 0
 I $G(NUMBER)="" Q 0
 S LKH=$$^W4CDLK(LKH)
 S NOMORD=$D(@$$^W4GL("W4ORDD")@(LKH,+NUMBER))
 I 'NOMORD Q 0
 Q $P($G(@$$^W4GL("W4ORD")@(NOMORD)),"\",20)
 ;
BLNG(NOMORD) ;
 I $G(NOMORD)="" Q 0
 Q $P($G(@$$^W4GL("W4ORD")@(NOMORD)),"\",20)
 ;
NUMBER(NOMORD) ;
 I $G(NOMORD)="" Q 0
 Q $G(@$$^W4GL("W4ORD")@(NOMORD,"NUMBER"))

W4ORDEND
W4ORDEND ; [ 18.04.19 16:15 ] [ 03.04.19 14:35 ] [ 02.04.19 21:26 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<br><br><br><br>",!
 ;
 W " <table id=""TblEnd"" width=""50%"" dir="""_$$^%W1DIR_""" border=""0"" style=""font-size:"_$$^W3FSZ(12)_""" cellspacing=""0"" cellpadding=""10"" >",!
 ;
 S GL=$$^W4GL("W4ORDEND")
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S CD=N
 .W "  <tr id=""tr"_CD_""">"
 .S NM=$$SHEM^W4P(N)
 .W "   <td id=""nm"_CD_""" >"_$$H2U^%L1FRM(NM)_"</td>"
 .W "   <td align=""center"">"
 . W "<input type=""checkbox"" id=""chk"_N_""" >"
 .W "   </td>"
 .W "  </tr>",!
 W " </table>",!
 W "<br>",!
 ;;D ROUNDBUT^%W1JS("sbm",$$^%W1DICT("SUBMIT"),"Submit('')","color:green","wh,22")
 D ^W4SBMBCK("")
 W "</div>",!
 Q
 ;
 ;
SBM(PRM) ;
 N I,CD,NM,IND,ST,PRMHNMB
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 S PRMHNMB=NMB
 F I=1:1:$L(PRM,";")-1 D
 .S CD=$P(PRM,";",I) Q:CD=""
 .S NM=$$SHEM^W4P(CD)
 .S MH=$$MH^W4P(CD)
 .S IND=$O(@$$^W4TMPORD@(99999),-1)+1
 .S ST="0~"_CD_"~"_NM_"~"_MH_"~1"
 .S @$$^W4TMPORD@(IND)=ST
 ;
 S @$$^W4TMPORD@("ENDIT")=$H
 Q 1
 ;
WAS(STAM) ;
 Q $$WAS^W4ORDENR
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDENR
W4ORDENR ; [ 30.12.20 12:36 ] [ 03.12.20 08:02 ] [ 28.08.20 18:33 ] 
 N (JB,%ARG,%REM)
 D NOSELECT^%W1JS
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<br>",!
 ;
 W " <table id=""TblEnd"" width=""80%"" dir="""_$$^%W1DIR_""" border=""0"" style=""font-size:"_$$^W3FSZ(16)_""" cellspacing=""0"" cellpadding=""10"" >",!
 ;
 S GL=$$GL
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S CD=N
 .W "  <tr id=""tr"_CD_""">"
 .S NM=$$SHEM^W4P(CD)
 .S MH=$$MH^W4P(CD)
 .W "   <td id=""nm"_CD_""" colspan=""3"">"_$$H2U^%L1FRM(NM)_"</td>"
 .W "</tr>",!
 .W "<tr>"
 .W "   <td id=""mh"_CD_""" width=""10%"">"_$J(MH,2,2)_"</td>"
 .D SIGN(CD,"+","green")
 .W "   <td align=""center"">"
 . W "<input type=""text"" style=""font-size:"_$$^W3FSZ(22)_""" size=""1"" readonly=""readonly"" id=""qn"_CD_""" value=""0"" >"
 .W "   </td>"
 .D SIGN(CD,"-","red")
 .W "  </tr>",!
 .W "<tr><td colspan=""4""><hr></td></tr>",!
 W " </table>",!
 W "<br>",!
 ;
 D ^W4SBMBCK("")
 W "<br><br>",!
 W "</div>",!
 Q
 ;
 ;
SBM(PRM) ;
 N I,CD,NM,IND,ST,PRMHNMB
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 S PRMHNMB=NMB
 F I=1:1:$L(PRM,";")-1 D
 .S COUP=$P(PRM,";",I)
 .S CD=$P(COUP,"~") Q:CD=""
 .S QN=$P(COUP,"~",2)
 .S NM=$$SHEM^W4P(CD)
 .S MH=$$MH^W4P(CD)
 .S IND=$O(@$$^W4TMPORD@(99999),-1)+1
 .S ST="0~"_CD_"~"_NM_"~"_MH_"~"_QN
 .S @$$^W4TMPORD@(IND)=ST
 ;
 S @$$^W4TMPORD@("ENDIT")=$H
 D KILL^%W1PRM("ORDEND")
 Q 1
 ;
 ;
WAS(STAM) ;
 I $$HZMH^W3PRCOFR(JB) Q 1
 N NMB S NMB=+$$GETP^%W1PRM("NMB")
 I $D(@$$GL)<10 Q 1
 I $D(@$$^W4TMPORD@("ENDIT")) Q 1
 Q 0
 ;
SIGN(CD,PR,COLOR) ;
 ;I PR="+" S FSZ=48
 ;I PR="-" S FSZ=60
 S FSZ=50
 ;
 W "<td "_$$^W4TOUCH_"=""Plus('"_CD_"','"_PR_"')"" "
 W "style=""font-size:"_$$^W3FSZ(FSZ)_";color:"_COLOR_";cursor:pointer"">"
  W PR
 W "</td>"
 Q
 ;
GL(STAM) ; 
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 N GLN S GLN=$S($$^W4MSD(NMB):"W4ORDENR",1:"W4ORDEND")
 N GL S GL=$$^W4GL(GLN)
 Q GL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDGIB
W3ORDGIB(STAM) ; [ 12.03.10 16:03 ] [
 Q $$^W4GL("P1HZ0")

W4ORDHD
W4ORDHD(ORD,SHORTSHOW) ; [ 15.04.18 10:56 ] [ 13.04.18 18:48 ] [ 11.12.17 13:16 ] 
 N (JB,%ARG,%REM,ORD,SHORTSHOW,FGCOLOR) ; --- KOTERET HAZMANA BE RESHIMAT HAZMAOT MISHLOHIM
 I '$D(@$$^W4ORD@(ORD)) Q
 D ^W4GETORD(ORD)
 S ADDRESS=$$KTVM^W4HZMST(ORD,.5)
 S LKHN1=$$LKHN1^W4HZMST(ORD)
 S NAME=$$LKHNM^W4HZMST(ORD)
 S COMPANY=$$COMP^W4HZMST(ORD)
 S HZMLAK=$$HZMLAK^W4HZMST(ORD)
 S DAT=$$TRH^W4HZMST(ORD)
 S HZM=ORD
 S MLZR=$$MKBL^W4HZMST(ORD)
 S MLZR1="" D
 .I $D(@$$^W4ORD@(ORD,"MKBN")) S MLZR1=$G(^("MKBN")) Q
 .I MLZR S MLZR1=$$^W4NAME(MLZR)
 ;
 S MKBL=MLZR,MKBL1=MLZR1
 S W4ORDHD=""
 D ^W4HD
 Q
 
 
 
 
 
 
 
 
 
 
 

W4ORDLS
W4ORDLS ; [ 09.01.26 04:01 ] [ 18.12.25 17:04 ] [ 14.01.22 08:19 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4ORDLS")
 I '$G(JB) Q
 ;
 D TMPS^W4MENU
 ;
 D INIT
 ;
 S (SPAY,SHZ,SSOAD)=0
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 ;
 S DRC=-1
 ;
 K @$$^W4MAIN("TMP")
 ;
 S MLZR=$$GETP^%W1PRM("MLZR")
 ;
 I $G(MEDAT),$G(ADDAT) F DT=MEDAT:1:ADDAT D
 .N N S N="" F  S N=$O(@$$^W4GL("P1H")@(DT,N)) Q:N=""  D
 ..I $G(%ARG("MYORDERS")),'$G(%ARG("MGR")),MLZR'=$$MKBL^W4HZMST(N) Q
 ..N MORD S MORD=$$GET^W4TMPANS(VP,"MORD")
 ..I $L(MORD),","_MORD_","'[(","_N_",") Q
 ..I $$NMB^W4HZMST(N)<$$GET^W4TMPANS(VP,"FROMTABLE") Q
 ..I $$NMB^W4HZMST(N)>$$GET^W4TMPANS(VP,"UNTILTABLE") Q
 ..I $$TSHL^W4HZMST(N)<$$GET^W4TMPANS(VP,"FROMSUM") Q
 ..I $$TSHL^W4HZMST(N)>$$GET^W4TMPANS(VP,"UNTILSUM") Q
 ..N HZMLK,HZMLAK S HZMLK=$$GET^W4TMPANS(VP,"HZMLK")
 ..S HZMLAK=$$CRHZMLK^W4HZMST(N)
 ..I HZMLK'?.P,(","_HZMLAK_",")'[(","_HZMLK_",") Q
 ..N CREDITCARD S CREDITCARD=$$GET^W4TMPANS(VP,"CREDITCARDNUMBER")
 ..I CREDITCARD,'$$^W4SRCCA(N,CREDITCARD) Q
 ..N SUGT S SUGT=+$$GET^W4TMPANS(VP,"KINDOFPAYMENT")
 ..N SUGTS S SUGTS=$$SUGTS^W4HZMST(N)
 ..I SUGT,SUGTS'[SUGT Q
 ..D ^W4OPORD(N)
 ..N SUGORD S SUGORD=+$$GET^W4TMPANS(VP,"KINDOFORDER")
 ..I SUGORD=1,'$$^W4CLOSE(N) Q
 ..I SUGORD=2,$$^W4CLOSE(N) Q
 ..S @$$^W4MAIN("TMP")@(N)=""
 ;
 S N=$G(@TMPS@(1,"LAST")) ; - ?
 ;
 S NPP=0
 S PRMHD=$P($T(P10+1),";",2,50)
 S PRMWD=$P($T(P10+2),";",2,50)
 ;
 W "<table id=""TblOrd"" style=""table-layout:fixed;text-align:center"" dir="""_$$^%W1DIR_""" border=""1"" width=""100%"" cellpadding=""16"">",!
 S J=0 ;
 F  S N=$O(@$$^W4MAIN("TMP")@(N),-1) Q:N=""  D
 .S SHZ=SHZ+1
 .S SPAY=SPAY+$$TSHL^W4HZMST(N)
 .S SSOAD=SSOAD+$$SOAD^W4HZMST(N)
 .N BGCOLOR S BGCOLOR=$$BGCOLOR(N)
 .
 .W "<tr style=""background-color:"_BGCOLOR_";cursor:pointer;font-size:"_$$^W3FSZ(12)_""" >"
 . S NPP=NPP+1
 . S J=J+1 W "<td style=""width:3%;background-color:#fafad2"">"_NPP_"</td>"
 . N DOP S DOP="" I N=$$GETP^%W1PRM("HZM") S DOP="border:3px brown solid"
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J,DOP)_" "_$$SHOWORD(N)
 . I N=$$GETP^%W1PRM("HZM") W " style=""border:2px brown solid"" "
 . W " >"_$$RKV1(N)_"</td>"
  .
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_" padding=""1px"">"_$$RKV($P($$DATK^W4HZMST(N),".",1,2))_"</td>"
 .
 . N NMB S NMB=$$NMB^W4HZMST(N)
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_" ><b>"_$$RKV(NMB)_"</b>"
 . I $$^W4MSL(NMB) W "<br><span style=""color:grey;font-size:"_$$^W3FSZ(10)_"""> "_$$H2U^%L1FRM($$NAME^W4HZMST(N))_"</span>"
 .         W "</td>",!
 .
 . S J=J+1 W "<td dir=""LTR"""_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_" >"_$$RKV($$SOAD^W4HZMST(N))_"</td>"
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_" >"_$$RKV($$ZMANK^W4HZMST(N))_"</td>"
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_" >"_$$RKV($$^W4NAME($$MKBL^W4HZMST(N)),"H")_"</td>"
 . S J=J+1 W "<td dir=""LTR"""_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_" >"_$$RKV($J($$TSHL^W4HZMST(N),2,2))_"<br>"_$$RCODTS(N)_"</td>"
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_" "_$$SHOWORD(N)_" >"_$$RKV($J($$ITRA^W4HZMST(N),2,2))_"</td>"
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_" >" D
 .. I $$DELPAYM,$$CLOSE^W4HZMST(N) W "&nbsp;</td>" Q
 .. W "<input type=""button"" "
 .. W " style=""height:"_$$^W4KF(50)_"px;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""" "
 ..I '$$DELPAYM D
 ... W "value="""_$$^%W1DICT("TOGO")_""" "
 ... W $$^W4TOUCH_"=""ToGo('"_N_"')"" "
 ..I $$DELPAYM D
 ... W "value="""_$$^%W1DICT("PAY")_""" "
 ... W $$^W4TOUCH_"=""ToPay('"_N_"')"" "
 ..W "</td>"
 .W "</tr>",!
 ;
 I N="" S N="END"
 S @TMPS@(1,"LAST")=N
 ;
 I 'NPP D
 .W "<script>",!
 .W " MsgI('NOTORDERSTOSHOW')",!
 .W "</script>",!
 ;
 G EN
 ;
RCODTS(HZ) ;
 N RCODTS,RCODTS1
 S RCODTS=$$RCODTS^W4HZMST(HZ)
 I RCODTS="" Q ""
 S RCODTS1=""
 N J F J=1:1:$L(RCODTS,",") D
 .N CDTS S CDTS=+$P(RCODTS,",",J)
 .N SUMTS S SUMTS=$P($P(RCODTS,",",J),":",2)
 .S RCODTS1=RCODTS1_SUMTS_" "_$$^W4SHOWTS(HZ,CDTS)
 .I J<$L(RCODTS,",") S RCODTS1=RCODTS1_"<br>"
 Q "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)_";color:darkblue"" dir="""_$$^%W1DIR_"""> "_RCODTS1_" </span>"
 ;
TOT W "<tr"
 W " style=""font-size:"_$$^W3FSZ(18)_";background-color:yellow"""
 W "><td>&nbsp;"
 W $$^%W1DICT("TOTAL")
 W "</td>",!
 W "<td>&nbsp;</td>",!
 W "<td>&nbsp;</td>",!
 W "<td>"_SSOAD_"</td>"
 W "<td>&nbsp;</td>",!
 W "<td>&nbsp;</td>",!
 W "<td>"_$J(SPAY,2,2)_"</td>"
 W "<td>&nbsp;</td>",!
 W "</tr>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "</div>",!
 W "<br /><br /><br />",!
END Q
 ;
RKV(FLD,REG) ;
 I FLD="" Q "&nbsp;"
 I $G(REG)="H" Q $$H2U^%L1FRM(FLD)
 Q FLD
RKV1(FLD,REG) ;
 I FLD="" Q "&nbsp;"
 I $G(REG)="H" S FLD=$$H2U^%L1FRM(FLD)
 I FLD["::" S FLD=$$^%W1DICT($P(FLD,"::",2))
 Q "<span style=""font-weight:bold"">"_FLD_"</span>"
 ;
WASDEL(HZ) ;
 I $$DEL^W4DEL(HZ) Q 1
 I $$CLOSE^W4HZMST(HZ),$$TSHL^W4HZMST(HZ)<0 Q 1
 Q 0
 ;
HEADER ;
 D TMPS^W4MENU
 ;
 I $D(@$$^W4MAIN("TMPANSLS")) D
 .K @$$^W4MAIN("TMPANS")
 .M @$$^W4MAIN("TMPANS")=@$$^W4MAIN("TMPANSLS")
 ;
 D INIT
 ;
 S MLZR=$$GET^%W1PRM("MLZR")
 ;
 W "<div align=""center"">",!
 W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";width:100%"" dir="""_$$^%W1DIR_""" >"
  W "<tr>"
    W "<td><input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGDN")_""" "_$$^W4TOUCH_"=""PageDown()""></td>"
    W "<td><input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGUP")_""" "_$$^W4TOUCH_"=""PageUp()""></td>"
    W "<td width=""10%"">&nbsp;</td>"
    W "<td style=""font-size:"_$$^W3FSZ(20)_";color:"_$$BGCOLOR^W4CSS_""">"
     W $$^%W1DICT("RESULTOFLOOKINGFORORDERS")
    W "</td>"
    W "<td style=""color:darkblue"">"_$S($$MGR(MLZR):$$^%W1DICT("MGR"),1:$$^W4WAITER_" : "_$$H2U^%L1FRM($$SHORT^W4NAME(MLZR)))_"</td>"
    W "<td><input type=""button"" class=""btn"" style=""width:100%;color:red"" value="""_$$^%W1DICT("EXIT")_""" "_$$^W4TOUCH_"=""Back()""></td>"
    W "<td>&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" >",!
  W "<tr>",!
   W "<td>"_$$^%W1DICT("MEDATE")_"</td><td>"_$$RKV1($$^%L1DC($$GET^W4TMPANS(VP,"MEDATE"),"."))_"</td>"
   W "<td>"_$$^%W1DICT("ADDATE")_"</td><td>"_$$RKV1($$^%L1DC($$GET^W4TMPANS(VP,"ADDATE"),"."))_"</td>"
   W "<td>"_$$^%W1DICT("FROMTABLE")_"</td><td align=""center"">"_$$RKV1($$GET^W4TMPANS(VP,"FROMTABLE"))_"</td>"
   W "<td>"_$$^%W1DICT("UNTILTABLE")_"</td><td align=""center"">"_$$RKV1($$GET^W4TMPANS(VP,"UNTILTABLE"))_"</td>"
   W "<td>"_$$^%W1DICT("FROMSUM")_"</td><td dir=""LTR"" align=""center"">"_$$RKV1($$GET^W4TMPANS(VP,"FROMSUM"))_"</td>"
   W "<td>"_$$^%W1DICT("UNTILSUM")_"</td><td dir=""LTR"" align=""center"">"_$$RKV1($$GET^W4TMPANS(VP,"UNTILSUM"))_"</td>"
  W "</tr>",!
  W "<tr>"
   W "<td>"_$$^%W1DICT("KINDOFORDER")_"</td><td>"_$$RKV1($$GET^W4TMPANS(VP,"KINDOFORDER"))_"</td>"
   W "<td>"_$$^%W1DICT("CREDITCARDNUMBER")_"</td><td>"_$$RKV1($$GET^W4TMPANS(VP,"CREDITCARDNUMBER"))_"</td>"
   W "<td>"_$$^%W1DICT("HZMLK")_"</td><td>"_$$RKV1($$GET^W4TMPANS(VP,"HZMLK"))_"</td>"
   W "<td>"_$$^%W1DICT("KINDOFPAYMENT")_"</td><td>"_$$RKV1($$GET^W4TMPANS(VP,"KINDOFPAYMENT"))_"</td>"
   W "<td>&nbsp;</td><td>&nbsp;</td>",!
   W "<td style=""text-align:"_$S($$^%W1DIR="RTL":"left",1:"right")_";font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">"_$$^%W1DICT("PAGE")_"</td>"
   W "<td style=""font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_";color:"_$$BGCOLOR^W4CSS_""">"_$G(@TMPS@(1,"PG"))_"</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<table id=""TblOrd"" style=""table-layout:fixed;text-align:center"" dir="""_$$^%W1DIR_""" border=""1"" width=""98%"" cellpadding=""16"">",!
 W "<tr style="""
  W "height:40;"
  W "color:white"""
 W "  >",!
 S PRMHD=$P($T(P10+1),";",2,50)
 S PRMWD=$P($T(P10+2),";",2,50)
 ;W "PRMHD="_PRMHD,!
 F J=1:1:$L(PRMHD,";")-1 D
 .W "<th "_$$FIXSTYLE(PRMWD,J)_">"_$$^%W1DICT($P(PRMHD,";",J))_"</th>"
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q  ;
 ;
 ;
MGR(MLZR)
 I '$G(MLZR) Q 0
 I MLZR=$$^W4PSW(1) Q 1
 Q 0
 ;
INIT ;
 D ^W4IN
 S VP="FNDORD"
 ;
 I $G(%ARG("TABLEHIST")) D  G EI
 .N NMB S NMB=%ARG("TABLEHIST")
 .D ^W4KLNEW(NMB)
 .K @$$^W4TMPORD
 .S SDVIG=0 I $$^W4MSL(NMB) S SDVIG=60
 .I '$$GET^W4TMPANS(VP,"MEDATE") D PUT^W4TMPANS(VP,"MEDATE",$ZD(P1DZ,"DD.MM.YY"))
 .I '$$GET^W4TMPANS(VP,"ADDATE") D PUT^W4TMPANS(VP,"ADDATE",$ZD(P1DZ+SDVIG,"DD.MM.YY"))
 .D PUT^W4TMPANS(VP,"CREDITCARDNUMBER","")
 .D PUT^W4TMPANS(VP,"HZMLK","")
 .D PUT^W4TMPANS(VP,"FROMSUM",-99999)
 .D PUT^W4TMPANS(VP,"UNTILSUM",99999)
 .D PUT^W4TMPANS(VP,"FROMTABLE",NMB)
 .D PUT^W4TMPANS(VP,"UNTILTABLE",NMB)
 .D PUT^W4TMPANS(VP,"KINDOFORDER","")
 .D PUT^W4TMPANS(VP,"KINDOFPAYMENT","")
 ;
 I $G(%ARG("MYORDERS")) D  G EI
 .K @$$^W4TMPORD N SDVIG S SDVIG=60
 .D PUT^W4TMPANS(VP,"MEDATE",$ZD(P1DZ,"DD.MM.YY"))
 .D PUT^W4TMPANS(VP,"ADDATE",$ZD(P1DZ+SDVIG,"DD.MM.YY"))
 .D PUT^W4TMPANS(VP,"CREDITCARDNUMBER","")
 .D PUT^W4TMPANS(VP,"HZMLK","")
 .D PUT^W4TMPANS(VP,"FROMSUM",-99999)
 .D PUT^W4TMPANS(VP,"UNTILSUM",99999)
 .D PUT^W4TMPANS(VP,"FROMTABLE",1)
 .D PUT^W4TMPANS(VP,"UNTILTABLE",999)
 .D PUT^W4TMPANS(VP,"KINDOFORDER","")
 .D PUT^W4TMPANS(VP,"KINDOFPAYMENT","")
 ;
EI S GL=$$^W4ORD
 S MEDAT=$$^%L1DC($$GET^W4TMPANS(VP,"MEDATE"),3)
 S ADDAT=$$^%L1DC($$GET^W4TMPANS(VP,"ADDATE"),3)
 ;
 Q
 ;
 ;
FIXSTYLE(PRMWD,J,DOP) ;
 N WD S WD=$P(PRMWD,";",J)
 S WD=$$SPA^%L1FRM(WD)_"%"
 N A S A=" style=""width:"_WD_";text-align:center"
 I $G(DOP)'="" S A=A_";"_DOP
 Q A_""""
 ;
SHOWORD(N) ;
 Q " "_$$^W4TOUCH_"=""ShowOrd(this,"_+N_")"""
 Q
P10 ;
 ;NPP;ORDERNUMBER;CSRDATE;TABLENUMBER;GUESTSQN;ZMANK;WAITERNAME;TOPAY;ITRA;TOGO;
 ; 3 ;     8     ;   5   ;      6    ;   5    ;  12 ;  10      ;  7  ;  7 ;7 ;
 Q  ;
 ;
DELPAYM(STAM) ;
 Q $$GETP^%W1PRM("DELPAYMORD")
 ;
BGCOLOR(N) 
 I $$WASDEL(N) Q "pink"
 I $$TAKEAWAY^W4HZMST(N) Q "orange"
 I $$^W4HZMH(N) Q "#96ce98"
 I '$$^W4CLOSE(N) Q "#eaeaea"
 Q "white"
 ;
IN ;
 D TMPS^W4MENUBT K @TMPS
 D INITUR^W4MENU(1) S @TMPS@(1,"RSIZE")=7
 D SAVETMP
 Q 
 ;
SAVETMP ; 
 K @$$^W4MAIN("TMPANSLS")
 M @$$^W4MAIN("TMPANSLS")=@$$^W4MAIN("TMPANS")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDPL1
W4ORDPL1(DT)  ; [ 28.03.14 15:15 ] [
 N (JB,%ARG,REM,DT)
 S DAT=$ZD(DT,"DD.MM.YY")
 S GL=$$^W4GL("W4ORDPLC")_"(DT)"
 W "<div dir="""_$$^%W1DIR_""">",!
  W "<table>",!
  W "<tr>",!
   ;
   W "<th>"
    W $$^%W1DICT("MAZMIN")
   W "</th>",!
   ;
   W "<th>"
    W $$^%W1DICT("SHAA")
   W "</th>",!
   ;
   W "<th>"
    W $$^%W1DICT("SOADIM")
   W "</th>",!
   ;
   W "<th>"
    W $$^%W1DICT("PHONE")
   W "</th>",!
   ;
   W "<th>"
    W $$^%W1DICT("PELE")
   W "</th>",!
   ;
   W "<th>"
    W $$^%W1DICT("SMOKING")
   W "</th>",!
   ;
   W "<th>"
    W $$^%W1DICT("CELEBRITY")
   W "</th>",!
   ;
   W "<th>"
    W $$^%W1DICT("TABLES")
   W "</th>",!
  W "</tr>",!
  ;
  F N=1:1:30 D
  .W "<tr>",!
  . W "<td>"
  .  W $$INP("MAZMIN",DT,N,12,"H")
  . W "</td>",!
  . W "<td>"
  .  W $$INP("SHAA",DT,N,5,"T")
  . W "</td>",!
  . W "<td>"
  .  W $$INP("SOADIM",DT,N,3,"E")
  . W "</td>",!
  . W "<td>"
  .  W $$INP("PHONE",DT,N,11,"E")
  . W "</td>",!
  . W "<td>"
  .  W $$INP("PELE",DT,N,11,"E")
  . W "</td>",!
  . W "<td>"
  .  W $$INP("SMOKING",DT,N,1,"B")
  . W "</td>",!
  . W "<td>"
  .  W $$INP("ERUA",DT,N,1,"B")
  . W "</td>",!
  . W "<td>"
  .  W $$INP("TABLES",DT,N,18,E)
  . W "</td>",!
  .W "</tr>",!
  .W "<tr>"
  ;
  W "</table>",!
 W "</div>",!
 Q
 ;
INP(RKV,DT,N,LEN,TYP) ;
 Q

W4ORDPLC
W4ORDPLC ; [ 08.08.17 11:39 ] [ 22.12.15 09:18 ] [ 04.12.14 12:52 ] 
 D KOT
 D CLND
 D BACK
 Q
 ;
KOT ;
 D ^%W1HD("ORDERPLACE")
 Q
 ;
CLND ;
 W "<div align=""center"" "
  W " style=""position:absolute;top:"_$$^W4KF(70)_"px;left:20%;width:60%"" ",!
 W ">"
  W "<table dir="""_$$^%W1DIR_""" >",!
   W "<tr style=""text-align:center;font-weight:bold"" >",!
    W "<td width=""10%"">"
     W $$^%W1DICT("DATE")
    W "</td>",!
    W "<td>"
     W $$^%W1DICT("COMMENT")
    W "</td>",!
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 W "<div align=""center"" "
  W " style=""position:absolute;top:"_$$^W4KF(100)_"px;left:20%;width:60%;height:"_$$^W4KF(400)_"px;overflow:auto"" ",!
 W ">",!
 ;
   W "<table id=""TblClnd"" dir="""_$$^%W1DIR_""" cellpadding="""_$$^W4KF(5)_""">",!
   F I=$H-100:1:$H+100 D
   .W "<tr "
   . I $D(@$$^W4GL("W4ORDPLC")@(I)) W " style=""font-weight:bold"" "
   . W ">",!
   . W "<td onClick=""ClickDate('"_I_"')"" "
   .  W " style=""cursor:pointer"
   .  D
   .  .I I=+$H W ";font-weight:bold;color:red" Q
   .  . I $D(@$$^W4GL("W4ORDPLC")@(I)) W ";font-weight:bold;color:brown" Q
   .  W """"
   . W ">",!
   .  W $ZD(I,"DD.MM.YY")_" "_$$H2U^%L1FRM($$^%L1DC(I,9))
   . W "</td>",!
   . W "<td>"
   . W " <input type=""text"" id=""hr"_I_""" size=""50"" maxlength=""50"" "
   .  W " value="""_$$VL(I)_""" "
   . W " >",!
   . W "</td>",!
   .W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
VL(DT) ;
 Q ""
 ;
GET ;
 N DT S DT=$$GETP^%W1PRM("DT") Q:DT=""
 K @$$^W4MAIN("TMPPLC")
 M @$$^W4MAIN("TMPPLC")=@$$^W4GL("W4ORDPLC")@(DT)
 Q
 ;
PUT ;
 N J,N,DT,A,B S DT=$$GETP^%W1PRM("DT") Q:'DT
 K @$$^W4GL("W4ORDPLC")@(DT)
 ;
 S N="" F  S N=$O(@$$^W4MAIN("TMPPLC")@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S B=$G(^(N,1))
 .F J=8,9 S $P(B,"\",J)=$$INVH^%L1FRM($P(B,"\",J))
 .S @$$^W4GL("W4ORDPLC")@(DT,N)=A
 .S @$$^W4GL("W4ORDPLC")@(DT,N,1)=B
 ;
 M ^W4ORDPLC1=^W4ORDPLC
 K @$$^W4MAIN("TMPPLC")
 Q
 ;
 ;
BACK ;
 W "<div id=""divbut"" "
  W " style=""position:absolute;top:"_$$^W4KF(570)_"px;left:45%"" ",!
 W ">"
  D ^W4BUTTON("backid",$$^%W1DICT("BACK"),"Back()","color:red")
 W "</div>",!
 Q
 ;
GETTBL(DT) ;
 N (JB,%ARG,DT,TBLORD)
 S GLPLC=$$^W4GL("W4ORDPLC")_"(DT)"
 S N="" K TBLORD
 F  S N=$O(@GLPLC@(N)) Q:N=""  D
 .S ST=$G(^(N,1))
 .S SHAA=$P(ST,"\")
 .S MTBL=$P(ST,"\",7)
 .F J=1:1:$L(MTBL,",") D
 ..S MT=$P(MTBL,",",J) Q:MT=""
 ..I MT["-" D  Q
 ...F K=$P(MT,"-"):1:$P(MT,"-",2) S TBLORD(K)=SHAA
 ..S TBLORD(MT)=SHAA
 Q
 
 
 
 

W4ORDTRT
W4ORDTRT ; [ 04.02.20 14:42 ] [ 30.01.20 07:54 ] [ 29.01.20 10:09 ] 
 D KOT
 D CLND
 D BACK
 Q
 ;
KOT ;
 D ^%W1HD("ORDERTREATMENT")
 Q
 ;
CLND ;
 W "<div align=""center"" "
  W " style=""position:absolute;top:"_$$^W4KF(70)_"px;left:20%;width:60%"" ",!
 W ">"
  W "<table dir="""_$$^%W1DIR_""" >",!
   W "<tr style=""text-align:center;font-weight:bold"" >",!
    W "<td width=""10%"">"
     W $$^%W1DICT("DATE")
    W "</td>",!
    W "<td>"
     W $$^%W1DICT("COMMENT")
    W "</td>",!
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 W "<div align=""center"" "
  W " style=""position:absolute;top:"_$$^W4KF(100)_"px;left:20%;width:60%;height:"_$$^W4KF(400)_"px;overflow:auto"" ",!
 W ">",!
 ;
   W "<table id=""TblClnd"" dir="""_$$^%W1DIR_""" cellpadding="""_$$^W4KF(5)_""">",!
   F I=$H-100:1:$H+100 D
   .W "<tr "
   . I $D(@$$^W4GL("W4ORDTRT")@(I)) W " style=""font-weight:bold"" "
   . W ">",!
   . W "<td onClick=""ClickDate('"_I_"')"" "
   .  W " style=""cursor:pointer"
   .  D
   .  .I I=+$H W ";font-weight:bold;color:red" Q
   .  . I $D(@$$^W4GL("W4ORDTRT")@(I)) W ";font-weight:bold;color:brown" Q
   .  W """"
   . W ">",!
   .  W $ZD(I,"DD.MM.YY")_" "_$$H2U^%L1FRM($$^%L1DC(I,9))
   . W "</td>",!
   . W "<td>"
   . W " <input type=""text"" id=""hr"_I_""" size=""50"" maxlength=""50"" "
   .  W " value="""_$$VL(I)_""" "
   . W " >",!
   . W "</td>",!
   .W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
VL(DT) ;
 Q ""
 ;
GET ;
 N DT S DT=$$GETP^%W1PRM("DT") Q:DT=""
 K @$$^W4MAIN("TMPTRT")
 M @$$^W4MAIN("TMPTRT")=@$$^W4GL("W4ORDTRT")@(DT)
 N N S N="" F  S N=$O(@$$^W4MAIN("TMPTRT")@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S B=$G(^(N,1))
 .S B2=$P(B,"\",2)
 .S B2=$TR(B2,"_",$C(10))
 .I $E(B2)=$C(10) S B2=$E(B2,2,$L(B2))
 .I $E(B2,$L(B2))=$C(10) S B2=$E(B2,1,$L(B2)-1)
 .S $P(B,"\",2)=B2
 .;;S ^AA("GET",N)=B
 .S @$$^W4MAIN("TMPTRT")@(N,1)=B
 Q
 ;
PUT ;
 N J,N,DT,A,B S DT=$$GETP^%W1PRM("DT") Q:'DT
 K @$$^W4GL("W4ORDTRT")@(DT)
 N GLLKH S GLLKH=$$^W4GL("LKH")
 ;
 S N="" F  S N=$O(@$$^W4MAIN("TMPTRT")@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S B=$G(^(N,1))
 .N IND S IND=N I IND["-" S IND=$P(N,"-",2)
 .N N1 S N1=$$MN($P(B,"\",4))_"-"_$TR($J(IND,2)," ",0)
 .S @$$^W4GL("W4ORDTRT")@(DT,N1)=A
 .S B=$$RPL^%L1FRM(B,$C(10),"_")
 .S B=$$RPL^%L1FRM(B,"%0A","_")
 .S B=$$RPL^%L1FRM(B,"%A0","_")
 .S @$$^W4GL("W4ORDTRT")@(DT,N1,1)=B
 .I A'="",$D(@GLLKH@(A))'=11 D
 ..S @GLLKH@(A)=$P(B,"\")
 ..S @GLLKH@(A,1)=""
 ..S @GLLKH@(A,2)=""
 ;
 M ^W4ORDTRT1=^W4ORDTRT
 K @$$^W4MAIN("TMPTRT")
 Q
 ;
 ;
BACK ;
 W "<div id=""divbut"" "
  W " style=""position:absolute;top:"_$$^W4KF(570)_"px;left:45%"" ",!
 W ">"
  D ^W4BUTTON("backid",$$^%W1DICT("BACK"),"Back()","color:red")
 W "</div>",!
 Q
 ;
GETTBL(DT) ;
 N (JB,%ARG,DT,TBLORD)
 S GLTRT=$$^W4GL("W4ORDTRT")_"(DT)"
 S N="" K TBLORD
 F  S N=$O(@GLTRT@(N)) Q:N=""  D
 .S ST=$G(^(N,1))
 .S SHAA=$P(ST,"\")
 .S MTBL=$P(ST,"\",7)
 Q
 ;
MN(SHAA) ; 
 N MIN
 S MIN=SHAA*60+$P(SHAA,":",2)
 Q $TR($J(MIN,4)," ",0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDVBT
W4ORDVBT ; [ 23.08.26 14:41 ] [ 24.06.25 14:12 ] [ 16.12.24 11:06 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) S JB=+$G(%ARG("JB"))
 S ORD=$G(%ARG("ORD")) Q:'ORD
 S PR800=$$GET^%W1PRM("PR800")
 ;
 H .2
 D NOSELECT^%W1JS
 W "<div align="""_$S($$^%W1DIR="LTR":"right",1:"left")_""">",!
 ;
 W "<table dir="""_$$^%W1DIR_""" "
 W " style=""position:absolute;top:0;left:0;width:100%;height:98%;border-top:1px groove "_$$BRDCLR^W4BGBODY_""""
 W " class=""hdord"" "
 W " id=""TblBot"""
 W ">",!
 ;
 W "<tr "
 W " >",!
 ;
 W "<td>",!
  W "<table width=""100%"" height=""100%"" class=""hdord"" >",!
   W "<tr>",!
   ;
   W "<td>"
   N AHUZ S AHUZ=+$$HNHAH^W4HZMST(ORD)
   I $J($$TOTHN^W4HZORD(ORD)*AHUZ*.01,0,0)'=$J($$HNH^W4HZMST(ORD),0,0) D
   .S AHUZ=""
   W $$^%W1DICT("DISC",$S(AHUZ:AHUZ_"%",1:" "))_" : "
   I 'AHUZ D
   .W "<span style=""font-size:"_$$^W3FSZ(7)_""">[ "
   . W $$^%W1DICT("PRESSONFIELDFORDETAILS")_" ]"
   .W "</span>"
   W "<br />",!
   W "<input type=""text"" name=""discont"" id=""iddiscont"" size=7 "
    W "dir=""LTR"" class=""botinp"" readonly=""readonly"" "
    W " "_$$^W4TOUCH_"=""ShowDisc()"" "
    W " style=""color:red"" value="""_$J($$HNHALL^W4HZMST(ORD),2,2)_"""/>",!
    I $$^W4CLOSE(ORD),$$HNHALL^W4HZMST(ORD) D
    .W "&nbsp;<img src=""w3ask2.png"" "_$$^W4TOUCH_"=""ShowDisc()"" />"
   W "</td>",!
   ;
   I $G(@$$^W4PRM@("SHOWDSIT")) D
   .W "<td>"
   .W $$^%W1DICT("DISCITTOT"),"<br>"
   .W "<input type=""text"" name=""discit"" id=""iddiscit"" size=7 "
   . W "dir=""LTR"" class=""botinp"" readonly=""readonly"" "
   . W " style=""color:red"" value="""_$J($$DISCIT^W4HZMST(ORD),2,2)_"""/>",!
   .W "</td>"
   ;
   I $G(@$$^W4PRM@("SHOWQNIT")) D
   .W "<td>"
   .W $$^%W1DICT("QNITEMS"),"<br>"
   .W "<input type=""text"" name=""qnit"" id=""idqnit"" size=7 "
   . W "dir=""LTR"" class=""botinp"" readonly=""readonly"" "
   . N TOTQN S TOTQN=$$TOTQN^W4HZMST(ORD) I TOTQN["." S TOTQN=$J(TOTQN,2,2)
   . W " style=""color:red"" value="""_TOTQN_"""/>",!
   .W "</td>"
   ; 
   W "<td>"
   N DMSAH S DMSAH=$J($$DMSAH^W4HZMST(ORD),2,2)
   I $J($$TOTORD^W4ORDVW(ORD)*DMSAH*.01,1,1)'=$J($$DMSH^W4HZMST(ORD),1,1) D
   .S DMSAH=" "
   I 'DMSAH S DMSAH=" "
   ;
   I DMSAH,DMSAH'["%" S DMSAH=DMSAH_"%"
   W $$^%W1DICT("DLVPAYPER",DMSAH)_" :<br />",!
   W "<input type=""text"" name=""dlvpay"" id=""iddlvpay"" "
    W "readonly=""readonly"" size=7 dir=""LTR"" class=""botinp"" "
    W "value="""_$J($$DMSH^W4HZMST(ORD),2,2)_"""/>",!
   W "</td>",!
   ;
   W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
    W $$^%W1DICT("TOPAYMENT")_" :<br />"
   W "<input type=""text"" name=""sum"" id=""idsum"" readonly=""readonly"" "
    W "size=""7"" dir=""LTR"" class=""botinp"" "
    D
    .N TSHL,TSHL1 S TSHL=$$TSHL^W4HZMST(ORD)
    .D ^W4OPNORD(ORD)
    .I '$$^W4CLOSE(ORD) D
    ..S TSHL1=$$TOTORD^W4HZMST(ORD)
    ..I +TSHL'=+TSHL1 S TSHL=TSHL1 D PUT^W4HZMST(ORD,"TSHL",$J(TSHL1,2,2))
    .W "value="""_$J(TSHL,2,2)_""" />",!
   W "</td>",!
   ;
   N SHUL1 S SHUL1=$$SSHUL^W4HZMST(ORD)+$$ODEF^W4HZMST(ORD)
   S ITRA=$$ITRA^W4HZMST(ORD)
   S CODTS=$$CODTS^W4HZMST(ORD)
   ;
   W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
    W $$^%W1DICT("PAID")_" : "
    I '(SHUL1+$$SHULA^W4HZMST(ORD)),ITRA,CODTS D
    .W "<span style=""font-size:"_$$^W3FSZ(10)_""" >"
    .W " [ "_$$^%W1DICT($$PAYMKIND(CODTS))_" ] </span>"
    W "<br>" 
    W "<input type=""text"" name=""shul"" id=""idshul"" readonly=""readonly"" "
     W "size=""7"" dir=""LTR"" class=""botinp"" value="""_$J(SHUL1,2,2)_""" />",!
   W "</td>",!
   ;
   W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
    W $$^%W1DICT("CREDIT")_" :<br />"
   W "<input type=""text"" name=""shula"" id=""idshula"" "
    W "readonly=""readonly"" size=""7"" dir=""LTR"" class=""botinp"" "
    W "value="""_$J($$SHULA^W4HZMST(ORD),2,2)_""" />",!
   W "</td>",!
   ;
   I $$TIP^W4HZMST(ORD) D
   .W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
   . W $$^%W1DICT("TIP")_" :<br />"
   .W "<input type=""text"" name=""tip"" id=""idtip"" readonly=""readonly"" "
   . W "size=""7"" dir=""LTR"" class=""botinp"" "
   . W "value="""_$J($$TIP^W4HZMST(ORD),2,2)_""" />",!
   .W "</td>",!
   ;
   I $$ODEF^W4HZMST(ORD) D
   .W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
   . W $$^%W1DICT("ODEF")_" :<br />"
   .W "<input type=""text"" name=""odef"" id=""idodef"" readonly=""readonly"" "
   . W "size=""7"" dir=""LTR"" class=""botinp"" "
   . W "value="""_$J($$ODEF^W4HZMST(ORD),2,2)_""" />",!
   .W "</td>",!
   ;
   I $$ITRARL^W4HZMST(ORD) D
   .W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
   . W $$^%W1DICT("ITRA")_" :<br />"
   .W "<input type=""text"" name=""itra"" id=""iditra"" readonly=""readonly"" "
   . W "size=""7"" dir=""LTR"" class=""botinp"" "
   . ;;W "value="""_$J($$ITRARL^W4HZMST(ORD),2,2)_""" />",!
   . W "value="""_$J($$ITRA^W4HZMST(ORD),2,2)_""" />",! ; -- 16/12/24 ( WAS ITRARL)
   .W "</td>",!
  W "</tr></table>",!
  ;
 W "</td>"
 W "</tr></table>",!
 ;
 W "</div>",!
 Q
 ;
PAYMKIND(VT) ; 
 Q $$PAYMKIND^W4PAYBT(VT)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDVF0
W4ORDVFN ; [ 15.06.25 11:30 ] [ 14.06.25 21:43 ] [ 26.05.25 10:52 ] 
 N (JB,%ARG)
 S ORD=$G(%ARG("ORD"))
 I ORD D PUT^%W1PRM("HZM",ORD)
 I $G(%ARG("FIRST")) D PUT^%W1PRM("VIEW",$G(%ARG("VIEW")))
 D PUT^%W3DEB("W4ORDVFN","ARG=[%ARG")
 S %REM=$$GET^%W1PRM("REM")
 S MGROUP="CENTER"
 S TOP="",PRMEX=""
 ;
 D NOSELECT^%W1JS
 ;
 S NG=0
 I $G(%ARG("VT"))="POP" S MGROUP("HG")="20%",PRMEX="POP" G EX
 ;
 I $G(%ARG("EMAIL"))'="" D EMAILTIMELIST(%ARG("EMAIL")) G VW
 I $G(%ARG("FILEMAIL")) D FILEMAILLIST G VW
 ;
 I '$$PART,$G(%ARG("VT"))="PRNORD" D PRNORD(ORD) G VW
 ;
 I $G(%ARG("VIEW"))=2 G EX
 ;
 S USLCOPY=0
 I $$HZM^W4MSL(ORD),$$USLCOPYORD(ORD) D COPYORDER S USLCOPY=1
 ;
 ;--------------------- CLOSED ORDER ----------------
 ;
 I $G(ORD),$G(@$$^W4ORD@(ORD,"S")) D CLOSEDORDMENU G VW
 ;
 I $G(%ARG("VT"))="DEL" D DELMENU G VW
 ;
 I '$$PART,$G(%ARG("VT"))="MOVE" D MOVEMENU G VW
 ;
 I $G(%ARG("VT"))="PAYORD",'$$HIST2 D PAYORD(ORD,$G(%ARG("WHO"))) G VW
 ;
 I '$$PART,$$^W4MVFROM D MVAFTERMENU G VW
 ;
 ;------------------ OPEN ORDER ----------------------------
 ;;W "DEV="_$$^W4MYDVN_" NODEL="_$$NODEL^W4POSPRM,! ; ***
 ;
 ;;I '$$VIEW,'$$MGR,$$MLZR(ORD),'$$PART,'$$HIST2 D EDITORDER ; -- 14/6/25
 I '$$VIEW,'$$MGR,$$MLZR(ORD),'$$PART D EDITORDER ; -- 14/6/25
 ;
 ;;I '$$VIEW,'$$MGR,$$MLZR(ORD),'$$^W4HSPART(ORD),'$$LASTPART,'$$SHORT,'$$HIST2 D DISCORDER
 I '$$VIEW,'$$MGR,$$MLZR(ORD),'$$^W4HSPART(ORD),'$$LASTPART,'$$SHORT D DISCORDER ; -- 14/06/25
 ;
SHOWINV ;
 I '$$^W4HSPART(ORD),'$$LASTPART,'$$SHORT,'$$I^W4PIZUL(ORD) D SHOWINVOICE(ORD)
 ;
 ;;I $$USLCOPYORD(ORD) G LBLMISC
 ;
 N NMB S NMB=$$NMB^W4HZMST(ORD)
 ;
 I '$$VIEW,'$$MTAW^W4MTAW!$$ACNTAW^W4PRM,$$HZM^W4MSD(ORD) D
 .I $$LASTPART D BILLPART
 .
 .D ACCN Q:$$PART
 .
 .I '$$MGR,'$$MTAW^W4MTAW,'$G(@$$^W4PRM@("NOPART")),$$^W4HSPART(ORD)!('$$SHUL^W4HZMST(ORD)&'$$SHULA^W4HZMST(ORD)&($$SHNHO^W4HZMST(ORD)<.9)) D
 ..D BILLPART
 .
 .I $$RESTORAN^W4PRM,'$$DESERTCD^W4PRM D DESERT
 .
 .I $$CHECKERCD^W4PRM D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("COMMENT2CHECKER")
 ..S MGROUP(NG,"TO")="Comment2Checker('<COMMENT2CHECKER')"
 ;
 ;
 I '$$VIEW!$$SSHUL^W4HZMST(ORD)!$$SHULA^W4HZMST(ORD),'$$NOPAY^W4POSPRM,'$$^W4HZMH(ORD) D
 .I $$^W4HSPART(ORD) Q
 .D PAYM
 ;
 ;
 I '$$VIEW,'$$HIST2 D
 .D KILL^W4TMPANS("DEL")
 .D CLEARTMPS^W4ORDVW
 .
 .I '$$NODEL^W4POSPRM!$$MGR,$$TSHL^W4HZMST(ORD)'<0 D
 ..I $$PART,$P($$GETP^%W1PRM("HZMMAIN"),"-",2)=0 Q
 ..I $$GETP^%W1PRM("DLVWEB")'="" Q
 ..I $$I^W4PIZUL(ORD) Q
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("DELETING")
 ..I $$PART S MGROUP(NG)=$$^%W1DICT("CANCEL")
 ..S MGROUP(NG,"TO")="DeleteOrder('2')"
 .
 .I $$HZM^W4MSL(ORD),'$G(USLCOPY),$$USLCOPYORD(ORD) D COPYORDER
 .I $$HZM^W4MSD(ORD),'$$GETP^%W1PRM("W4BO"),'$$PART,$G(@$$^W4PRM@("COPYORD")),'$$GCOUPIT^W4HZMST(ORD) D CPORD
 .
 .I '$$PART,$$MGR,$$HZM^W4MSL(ORD),$$PSL^W4HZMST(ORD),$$^%L1DC($$TRH^W4HZMST(ORD),3)'<$$^W4DZ D
 ..D CHANGECOURIER(ORD)
 .
 .I '$$PART,$$MGR,$$HZM^W4MSL(ORD) D
 ..D CHANGEMKBL(ORD)
 .
 .I $$POS^W4MTAW!$$^W4DLVCSR Q
 .
 .I '$$MGR,'$$PART,'$$HZM^W4MSL(ORD),'$$TAWM^W4DLPK($$NMB^W4HZMST(ORD)),'$$GCOUPIT^W4HZMST(ORD) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("MOVINGTABLE")
 ..S MGROUP(NG,"TO")="MoveTable('"_ORD_"','"_$$NMB^W4HZMST(ORD)_"')"
 .
 .I '$$PART,$$MGR,'$$CLOSE^W4HZMST(ORD),$$HZM^W4MSD(ORD) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("CHANGEWAITER")
 ..S MGROUP(NG,"TO")="ChangeWaiter('"_ORD_"')"
 .;
 .
 .I '$$PART,$$BAR^W4DLPK($$NMB^W4HZMST(ORD)) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("COMMENT2CUSTOM")
 ..S MGROUP(NG,"TO")="Comment('<COMMENT2CUSTOM')"
 .
 .I '$$PART,$$TAWM^W4DLPK($$NMB^W4HZMST(ORD)) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("CUSTOMERDETAILS")
 ..S MGROUP(NG,"TO")="Comment('<CUSTOMERDETAILS')"
 ;
 D FIRE(ORD)
 ;
 I '$$PART,$$^W4HZMH(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("SENDORPRINT")
 .S MGROUP(NG,"TO")="Send2Mail('"_ORD_"')"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CHANGE2ORDER")
 .S MGROUP(NG,"TO")="Change2Order('"_ORD_"')"
 .Q
 ;
LBLMISC ;
 I '$$PART D MISC
 ;
 ;;I '$$USPRN(ORD),'$$LASTPART D PRINT(ORD)
 I '$$LASTPART D PRINT(ORD)
 ;
 I '$$PART,'$$^W4CLOSE(ORD),'$$ITRA^W4HZMST(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CLOSEORDER")
 .S MGROUP(NG,"TO")="CloseOrder()"
 ;
 I $$ITRARL^W4HZMST(ORD)<-.5 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MOVEODEF2TIP")
 .S MGROUP(NG,"TO")="CloseOrder()"
 ;
 I '$$PART,'$$SHORT,'$$HIST2 D SEARCHORDER
 ;
 ;;I '$$HIST2,'$$VIEW D
 I '$$VIEW D; -- > 14/06/25
 .I '$$PART,$$HZM^W4MSL(ORD),$$PIZUIM^W4PRM,'$$^W4HZMH(ORD) D PIZUIM(ORD)
 .I '$$PART,$$HZM^W4MSL(ORD),$$HZM^W4MSL(ORD),$$CORR^W4PRM D DETNOTES(ORD)
 .I '$$PART,$$CORR^W4PRM,$$HZM^W4MSL(ORD) D CORR(ORD)
 ;
 I $$DLVWEB^W4PRM,$$MGR,'$$PART,$$HZM^W4MSL(ORD),$$TSHL^W4HZMST(ORD)>0,'$$HIST2 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("SEND2OTHERBRANCH")
 .S MGROUP(NG,"TO")="Send2Snif()"
 ;
 I $$FILEMAIL(ORD) D FILEMAILMENU(ORD)
 ;
 I $$HIST2 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("OPENALLOPTIONS")
 .S MGROUP(NG,"TO")="OpenAllOptions()"
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 ;
 S MGROUP("HG")="100%"
 ;
EX S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit('"_PRMEX_"')"
 ;
VW D ^W4SHEET("","","",TOP)
 Q
 ;
 ;
EDITORDER ;
 S NG=NG+1
 ;
 I $$HZM^W4MSD(ORD) D
 .S MGROUP(NG)=$$^%W1DICT("EDITORDER")
 .S MGROUP(NG,"TO")="EditOrder()"
 ;
 I $$HZM^W4MSL(ORD) D
 .I '$$I^W4PIZUL(ORD) D
 ..I $$^W4HZMH(ORD),$$VVMSK^W4PRM D
 ...S MGROUP(NG)=$$^%W1DICT("CLEARANDUPDATEORDER")
 ...S MGROUP(NG,"TO")="ClearAndUpdateOrder()"
 ...S NG=NG+1
 ..
 ..S MGROUP(NG)=$$^%W1DICT("EDITORDERCONTENT")
 ..S MGROUP(NG,"TO")="EditOrder()"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EDITORDERHEADER")
 .S MGROUP(NG,"TO")="EditOrderHeader()"
 ;
 Q
 ;
 ;
DISCORDER ;
 I $$I^W4PIZUL(ORD) Q
 I '$$PART,'$$WASPAYPART^W4HZMST(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DISCPERCENT")
 .S MGROUP(NG,"TO")="DiscountPercent()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DISCNIS")
 S MGROUP(NG,"TO")="DiscNis()"
 Q
 ;
 ;
CLOSEDORDMENU ;
 ;
 I $$HZM^W4MSL(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("SHOWORDERHEADER")
 .S MGROUP(NG,"TO")="EditOrderHeader()"
 .
 .N CL S CL=$$CLOSE^W4HZMST(ORD)
 .I +CL=0 Q
 .;;I (CL#2),'$$TAKEAWAY^W4HZMST(ORD) Q  ; ***
 .N DT S DT=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 .I DT<$$^W4DZ Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EDITORDERTIME")
 .S MGROUP(NG,"TO")="EditOrderTime()"
 ;
 I $$^W4CLOSE(ORD) D SHOWPAYMENTS
 
 I $$DLVNOTPAID^W4CLOSE(ORD) D PAYM
 
 I '$$PART,'$$TSHL^W4HZMST(ORD),$$^%L1DC($$DATK^W4HZMST(ORD),3)=$$^W4DZ,'$$BO D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("RESTOREORDER")
 .S MGROUP(NG,"TO")="RestoreOrder('"_ORD_"')"
 ;
 I '$$^W4HSPART(ORD),'$$SHORT D SHOWINVOICE(ORD)
 ;
 D PRINT(ORD)
 ;
 I $G(ORD),$$PSL^W4HZMST(ORD),$$^%L1DC($$TRH^W4HZMST(ORD),3)'<$$^W4DZ D
 .D CHANGECOURIER(ORD)
 ; 
 D FIRE(ORD)
 ;
 I '$$VIEW,$G(ORD) D
 .I $$PART,$$^W4CLOSE(+$$GETP^%W1PRM("HZMMAIN")) Q
 .;;I '$$NODEL^W4POSPRM,'$$HIST2 D DELCLOSEDORDMENU(ORD); -- 14/06/25
 .I '$$NODEL^W4POSPRM D DELCLOSEDORDMENU(ORD); -- 14/06/25
 .
 .I '$G(USLCOPY),$$USLCOPYORD(ORD) D COPYORDER
 ;
 I '$$PART D
 .I '$$SHORT D SEARCHORDER
 .D MISC
 ;
 I $G(ORD),$$PIZUIM^W4PRM,$$HZM^W4MSL(ORD) D PIZUIM(ORD)
 ;
 I $G(ORD),$$HZM^W4MSL(ORD),$$CORR^W4PRM D DETNOTES(ORD)
 I $G(ORD),$$HZM^W4MSL(ORD),$$CORR^W4PRM D CORR(ORD)
 ;
 I $G(ORD),$$HZM^W4MSL(ORD),$$FILEMAIL(ORD) D FILEMAILMENU(ORD)
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit()"
 S MGROUP("HG")="100%"
 Q
 ;
 ;
DELCLOSEDORDMENU(ORD) ;
 I $$^W4DEL(ORD),$$TSHL^W4HZMST(ORD)'<0!(ORD<0) Q
 I $$DELPAYM(ORD) Q
 I $$PART(ORD),$P($$ORDNOM^W4ISPART,"-",2)=0 Q
 ;;I $$TSHL^W4HZMST(ORD)<0 Q  ;;,'$G(@$$^W4PRM@("DELDEL")) Q
 I $$GETP^%W1PRM("DLVWEB")'="" Q
 ;
 I $$TSHL^W4HZMST(ORD)'<0 D  ;!$$DELDEL^W4PRM D  ; 16/09/18
 .I $$^W4KIOSKO(ORD),$$TAIMAN^W4HZTM,$$CA^W4HZMST(ORD)>.9 Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEORDER")
 .I $$TSHL^W4HZMST(ORD)<0 S MGROUP(NG)=$$^%W1DICT("RESTOREORDER")
 .S MGROUP(NG,"TO")="DeleteOrder('0')"
 ;
 I $$TSHL^W4HZMST(ORD)<0 Q
 I $$ITRA^W4HZMST(ORD)>.5 Q
 I $$GCOUPIT^W4HZMST(ORD) Q
 ;
 I '$$PART,'$$^W4HSPART(ORD) D
 .I $$NOBITCAJ(ORD) Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEANDRESTORDER")
 .S MGROUP(NG,"TO")="DeleteOrder('1')"
 .
 .I $$PAPJ^W4PRM Q  ; -- 8/05/24
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEPARTORDER")
 .S MGROUP(NG,"TO")="DeleteOrder('3')"
 Q
 ;
 ;
DELMENU ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DELETEORDER")
 S MGROUP(NG,"TO")="PswDelOrder('"_ORD_"','2')"
 ;
 I '$$PART,'$$GCOUPIT^W4HZMST(ORD),$$WASPRN^W4HZMPC(ORD),'$$PAPJ^W4PRM D
 .I $$PAPJ^W4PRM Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEITEMS")
 .S MGROUP(NG,"TO")="PswDelOrder('"_ORD_"','3')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
 ;
MOVEMENU ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVEALLTABLETOFREE")
 S MGROUP(NG,"TO")="MvTblAllFree()"
 ;
 I '$$SHUL^W4HZMST(ORD),'$$SHULA^W4HZMST(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MOVEALLTABLETOBUSY")
 .S MGROUP(NG,"TO")="MvTblAllBusy()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVEITEMSTOOTHERTABLE")
 S MGROUP(NG,"TO")="MvTblItems('"_ORD_"')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CHANGEGUESTSQN")
 S MGROUP(NG,"TO")="ChangeGuestsQn()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
 ;
MVAFTERMENU ;
 D KILL^%W1PRM("HRF")
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVINGITEMSFROMTABLE",$$^W4MVFROM)
 S MGROUP(NG,"TO")="MoveItemsFromTable()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit()"
 S MGROUP("HG")="50%"
 Q
 ;
 ;
FILEMAILLIST ;
 N N S N="" F  S N=$O(@$$^W4ORD@(ORD,"SENT2MAIL",N)) Q:N=""  D
 .I '$D(^(N,"FILE")) Q 
 .S NG=NG+1
 .S MGROUP(NG)=N
 .S MGROUP(NG,"TO")="ShowFileMail('"_ORD_"','"_N_"')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
EMAILTIMELIST(MAIL) ;
 I $G(MAIL)="" Q
 N N S N="" F  S N=$O(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE",N)) Q:N=""  D
 .S NG=NG+1
 .S MGROUP(NG)=$ZD($E(N,1,5)_","_+$E(N,6,10),"DD.MM.YY 24:60")
 .S MGROUP(NG,"TO")="ShowFileMailTime('"_ORD_"','"_MAIL_"','"_N_"')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
PAYORD(ORD,WHO) ;
 I $$^W4HZMH(ORD),$$^W4HMH2HZ(ORD,$G(WHO))
 ;
 N CODTS S CODTS=$$CODTS^W4HZMST(ORD)
 ;
 I '$$D^W4PIZUL(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("WILLPAYCASH")
 .S MGROUP(NG,"TO")="WillPay('"_ORD_"','1')"
 .I CODTS=1 D THISRED
 .;
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("WILLPAYCHECK")
 .S MGROUP(NG,"TO")="WillPay('"_ORD_"','2')"
 .I CODTS=2 D THISRED
 .;
 .I $G(@$$^W4PRM@("WILLPAYCA")) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("WILLPAYCA")
 ..S MGROUP(NG,"TO")="WillPay('"_ORD_"','3')"
 ..I CODTS=3 D THISRED
 .;
 .I $$ISCR^W4L($$NMB^W4HZMST(ORD)) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("WILLPAYASR")
 ..S MGROUP(NG,"TO")="WillPay('"_ORD_"','4')"
 ..I CODTS=4 D THISRED
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PAYNOW")
 S MGROUP(NG,"TO")="Payments()"
 I CODTS=3 D THISRED
 ;
 I '$$ISCR^W4L($$NMB^W4HZMST(ORD)) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("ACKCREDIT")
 .S MGROUP(NG,"TO")="AckCredit('"_ORD_"')"
 .
 .I $$TEMPCRED^W4PRM D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("ACKTEMPCREDIT")
 ..S MGROUP(NG,"TO")="AckCredit('"_ORD_"','1')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("BACK2ORDER")
 S MGROUP(NG,"TO")="EditOrder()"
 Q
 ;
THISRED ;
 S MGROUP(NG,"BG")="red"
 Q
 ;
ACCN ;
 I $$^%W1LNG'="E"!$$HSBHBR^W4PRM D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("BILL")
 .I $$^%W1LNG="E",$$HSBHBR^W4PRM S MGROUP(NG)="Hebrew Bill"
 .I $$^W4HSPART(ORD) S MGROUP(NG)=$$^%W1DICT("BILLORPAYMENTS")
 .S MGROUP(NG,"TO")="Account()"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"FG")="green"
 .I $$^W4HSPART(ORD)  S MGROUP(NG,"FG")="red"
 ;
 I $$HSBENG^W4PRM!($$^%W1LNG="E"),'$$^W4HSPART(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)="Print Bill"
 .S MGROUP(NG,"TO")="Account('1')"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"FG")="green"
 ;
 Q
 ;
BILLPART ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("BILLPART")
 N LAST S LAST=""
 I $$LASTPART S LAST=1
 S MGROUP(NG,"TO")="BillPart('"_LAST_"')"
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="green"
 Q
 ;
DESERT ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DESERT")
 S MGROUP(NG,"TO")="RestoranDesert()"
 Q
 ;
 ;
MVFROM(FLNEW) ;
 ; FLNEW=1 -- > TMPORD
 ; FLNEW=2 --> LE SHULHAN PANUY
 ; FLNEW=3 --> PARITY
 ;
 N NMBFROM,ORDFROM,I,SHL
 S NMBFROM=$$^W4MVFROM I 'NMBFROM Q -1
 S ORDFROM=$$ORD^W4MVFROM I 'ORDFROM Q -2
 ;
 N ORDTO S ORDTO=$$GETP^%W1PRM("HZM")
 I 'ORDTO S ORDTO=$$NEW^W4KLNEW
 ;
 S PC=$$GETP^%W1PRM("PCMV")
 ;;S ^AA("W4ORDVFN-MVFROM","PC")=PC
 ;
 N NMBTO S NMBTO=$$GETP^%W1PRM("NMB")
 D PUT^%W3DEB("W4ORDVFN-MVFROM","FLNEW=FLNEW & NMBFROM= NMBFROM & ORDFROM=ORDFROM & ORDTO=ORDTO & NMBTO=NMBTO")
 ;
 I 'ORDTO,'$G(FLNEW) Q -3
 ;
 I $$^W4CP G MVFROM1
 ;
 ; ----------------- FIRST STEP - UPDATE ORDER-FROM (ON BASE ^TMPMVD ) -----
 S HDTMPORD=$G(@$$^W4TMPORD)
 ;
 K @$$^W4TMPORD
 M @$$^W4TMPORD=@$$^W4MAIN("TMPMVD") ; -- FOR DEL FROM OLD
 ;
 N MVFIRST S MVFIRST=$G(@$$^W4MAIN("TMPMV"))
 N I
 N PULLOUT S PULLOUT=$$GETP^%W1PRM("PULLITOUT")
 ;;S ^AA("W4ORDVFN-MVFROM","PULLOUT")=PULLOUT
 ;
 F I=MVFIRST:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .Q:$$LVST^W3HZMST(JB,I)
 .S $P(@$$^W4TMPORD@("BIT",I),"*",3)=-1
 .N PRM S PRM=NMBTO_"<>"_$$^W4SHULHN(NMBTO)
 .N HR S HR=$$TV^%W1DICT($$^%W1LNG,"MOVED2TABLE",PRM)
 .S HR=$$CNWEB^%L1FRM(HR)
 .I PULLOUT?1N D
 ..S HR="["_$S(PULLOUT:"!`ivedl",1:"!`ivedl `l")_"] "_HR
 ..S ^AA("W4ORDVFN-MVFROM","HR",I)=HR
 .S $P(@$$^W4TMPORD@("BIT",I),"*",4)=HR
 .S $P(@$$^W4TMPORD@(I),"~",7)=HR
 .S @$$^W4TMPORD@("MVTO",I)=NMBTO
 ;
 D KILL^%W1PRM("PULLITOUT")
 I '$G(@$$^W4PRM@("HZMHV"))!($G(PC)=0) S P1HZOP="NOPC"
 I $G(PC)="1" S P1HZOP=""
 ;
 S ORDFROM=$$^W4NEWHZ(JB,ORDFROM) ; --- UPDATE OLD ORDER (-)
 ;
MVFROM1 D KILLFLAG^W4KLFL(NMBFROM)
 ;
 N SOADPLUS
 ;
 I $$^W4CP D  G MVFROM2 ; - COPY TABLE
 .S P1HZOP("ALL")=1
 .S SOADPLUS=$$SOAD^W4HZMST(ORDFROM)
 .S P1HZOP=NMBFROM
 .S P1HZOP("HZ")=ORDFROM
 .S P1HZOP("SD")=$G(SOADPLUS)
 ;
 I $$ALL^W4MVFROM=2 D  ; - ALL TO BUSY TABLE
 .S P1HZOP("ALL")=1
 .S SOADPLUS=$$SOAD^W4HZMST(ORDFROM)
 .D ZEROFROM(ORDFROM)
 .S P1HZOP=NMBFROM
 .S P1HZOP("HZ")=ORDFROM
 .S P1HZOP("SD")=$G(SOADPLUS)
 .D ^W4HODAV(ORDTO)
 ;
 I '$$ALL^W4MVFROM D
 .S SOADPLUS=+$$GET^%W1PRM("MVSD")
 .N SOAD S SOAD=$$SOAD^W4HZMST(ORDFROM)-SOADPLUS
 .D PUT^W4HZMST(ORDFROM,"SOAD",SOAD)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,ORDFROM)
 ;
MVFROM2 D ^W4CALC(ORDFROM)
 ; 
 I ORDFROM<1 D MVREST(ORDFROM) Q -4
 ;
 D ^W4GIBHZ(ORDFROM)
 ;
 ; -------------- 2-ND STEP - UPDATE ORDER-TO ( ON BASE ^TMPMV ) --
 ;
 N TMPORD S TMPORD=$$^W4TMPORD
 K @TMPORD
 ;
 I ORDTO>0,$$^W4GETHZ(ORDTO)<0 D MVREST(ORDFROM) Q -6  ; --- ^P1HZ --> ^TMPORD
 ;
 S SHL=$O(@TMPORD@(9999),-1)
 ;
 ;;M ^LV("TMPMV",JB)=@$$^W4MAIN("TMPMV")
 ;
 I 'ORDTO D
 .N NMB,MLZR
 .S NMB=NMBTO,MLZR=$$GETP^%W1PRM("MLZR")
 .D NEWORD^W4MENUHD
 ;
 S I="" F  S I=$O(@$$^W4MAIN("TMPMV")@(I)) Q:I=""  I I D
 .S SHL=SHL+1
 .K @TMPORD@(SHL)
 .M @TMPORD@(SHL)=@$$^W4MAIN("TMPMV")@(I)
 .I $$^W4CP D
 ..S $P(@TMPORD@(SHL),"~",12)=""
 ..S $P(@TMPORD@(SHL),"~",13)=""
 .I '$$^W4CP S @TMPORD@("MVFROM",SHL)=ORDFROM_";"_NMBFROM
 ;
 I $G(FLNEW)'=1 D  I ORDTO<1 D MVREST(ORDFROM) Q -7  ; --> UPDATE ORDER
 .S P1HZOP=NMBFROM
 .S P1HZOP("HZ")=ORDFROM
 .S P1HZOP("SD")=$G(SOADPLUS)
 .S ORDTO=$$^W4NEWHZ(JB,ORDTO)
 .I ORDTO>0 D PUT^%W1PRM("HZM",ORDTO)
 ;
 I $$^W4PRMAHP(NMBTO)!$$^W4PRMAHP(NMBFROM),ORDTO D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(ORDTO,I))  D
 ..D NEWMH^W4MVTBA(ORDTO,I,$$NMB^W4HZMST(ORDTO))
 ;
 I $G(FLNEW)'=1 D
 .N SOAD S SOAD=$$SOAD^W4HZMST(ORDTO)+$G(SOADPLUS)
 .D PUT^W4HZMST(ORDTO,"SOAD",SOAD)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,ORDTO)
 .D ^W4CALC(ORDTO)
 ;
 I $G(FLNEW)=1 D
 .S @TMPORD=$G(HDTMPORD)
 .D PUT^W3HZMST(JB,"SOAD",$G(SOADPLUS))
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,$$NMB^W3HZMST(JB),$G(SOADPLUS))
 .N AHUZ S AHUZ=$$AH^W4L(NMBTO)
 .D PUT^W3HZMST(JB,"AHUZ",AHUZ)
 .D PUT^W3HZMST(JB,"HNH",$J(AHUZ*$$TOTORD^W3HZMST(JB)*.01,2,2))
 .D PUT^W3HZMST(JB,"TSHL",$J($$CALC^W3HZMST(JB),2,2))
 ;
 D KILL^W4MVFROM
 D SETCLOSE^W4HZMST(ORDFROM)
 D KILL^%W1PRM("HREF") ; -- DELETE BACK TO FROMTABLE
 ;
 I $G(FLNEW)'=1 K @$$^W4TMPORD Q ORDTO
 Q 1
 ;
 ;
ZEROFROM(ORDFROM) ;
 D PUT^W4HZMST(ORDFROM,"SOAD",0)
 I $$RESTORAN^W4PRM D ^W4RSTRN(1,ORDFROM)
 D PUT^W4HZMST(ORDFROM,"HNH",0)
 D PUT^W4HZMST(ORDFROM,"HNH2",0)
 D PUT^W4HZMST(ORDFROM,"DMSH",0)
 D PUT^W4HZMST(ORDFROM,"TSHL",0)
 K @$$^W4ORD@(ORDFROM,"CB","HNH1")
 I '$$TOTORD^W4HZMST(ORDFROM),'$$^W4CLOSE(ORDFROM) D
 .D SETCLOSE^W4HZMST(ORDFROM)
 Q
 ;
 ;
MVREST(ORDFROM) ;-- IF WAS MV ERROR
 K @$$^W4TMPORD
 M @$$^W4TMPORD=@$$^W4MAIN("TMPMVD0")
 I $D(@$$^W4TMPORD)=11 D
 .K @$$^W4ORD@(ORDFROM)
 .S ORDFROM=$$^W4NEWHZ(JB,ORDFROM)
 K @$$^W4MAIN("TMPMVD0")
 Q
 ;
MVALLBUSY(STAM) ; --- PREP TO MOVING
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM Q -.1
 N MLZ S MLZ=$$MKBL^W4HZMST(HZM)
 N NMBFROM S NMBFROM=$$NMB^W4HZMST(HZM)
 D SET^W4KLFL(NMBFROM)
 G MVAB
 ;
TVMVAB(HZM,MLZ) ;
 ;
MVAB ;
 N W4ITDEL
 ;
 K @$$^W4MAIN("TMPMVD0")
 M @$$^W4MAIN("TMPMVD0")=@$$^W4TMPORD
 ;
 I $G(STAM)'="DEL" D
 .K @$$^W4MAIN("TMPMV")
 .N A S A=$$GETP^%W1PRM("MOVEFROM")
 .S $P(A,";",4)=2 ; --- ALL MOVE
 .I $$^W4CP S $P(A,";",4)=3 ; --- COPY ALL
 .D PUT^%W1PRM("MOVEFROM",A)
 ;
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1)
 D PUT^%W3DEB("W4ORDVFN-MVAB","LAST=LAST")
 ;
 N SUMD,I,QNDEL S SUMD=0
 F I=1:1:LAST I '$$LVST^W3HZMST(JB,I) S QNDEL=$$ITRAST^W3HZMST(JB,I) I QNDEL>0 D  Q:$$GETP^%W1PRM("DELROW")<1
 .N W4ITDEL S W4ITDEL=""
 .D DELNOMOD^W4HZORD(I,QNDEL,MLZ,$G(MNL),1)
 .I $$GETP^%W1PRM("DELROW")<1 Q
 .S SUMD=SUMD+$P($$GETP^%W1PRM("DELROW"),";",2)
 ;
 I SUMD>($$CURTSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)) Q -5
 ;
 I $D(@$$^W4TMPORD)<10 D PUT^%W1PRM("DELROW",-4.2)
 I $$GETP^%W1PRM("DELROW")<0 Q +$$GETP^%W1PRM("DELROW")
 ;
 I $G(STAM)="DEL" Q 1
 ;
 S @$$^W4MAIN("TMPMV")=LAST+1
 ;
 K @$$^W4MAIN("TMPMVD")
 M @$$^W4MAIN("TMPMVD")=@$$^W4TMPORD
 ;
 I $D(@$$^W4MAIN("TMPMV"))<10 D PUT^%W1PRM("DELROW",-4.1)
 ;
 I $$GET^%W1PRM("DELROW")<0  Q +$$GET^%W1PRM("DELROW")
 ;
 Q 1
 ;
 ;
SETCLOSE ;
 N ORD S ORD=$$GET^%W1PRM("HZM") Q:'ORD
 N ITRAL S ITRAL=$$ITRARL^W4HZMST(ORD)
 I ITRAL<.5,ITRAL>-.5 D ^W4ADDHNH(ORD,ITRAL,"lebir")
 ;
 D PUT^%W1PRM("CLSORD",1)
 D SETCLOSE^W4HZMST(ORD)
 D KILL^%W1PRM("CLSORD")
 Q
 ;
VIEW(STAM) ;
 I $G(%ARG("VIEW")) Q 1
 I $$GETP^%W1PRM("VIEW") Q 1
 Q 0
 ;
SHOWPAYMENTS ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("SHOWPAYMENTS")
 S MGROUP(NG,"TO")="ShowPayments()"
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="green"
 Q
 ;
PAYM ;
 I $G(ORD),$$^W4HZMH(ORD) Q
 I $G(ORD)<0,$P($$GETP^%W1PRM("HZMMAIN"),"-",2)=0 Q
 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("PAYMENTS")
 .S MGROUP(NG,"TO")="Payments()"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"FG")="green"
 Q
 ;
SHOWORDER ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("NEXTORDER")
 S MGROUP(NG,"TO")="ShowOrder('"_(ORD+1)_"')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PREVORDER")
 S MGROUP(NG,"TO")="ShowOrder('"_(ORD-1)_"')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("LASTORD")
 S MGROUP(NG,"TO")="ShowOrder('LAST')"
 Q
 ;
DELPAYM(ORD) ;
 N N,N1,A,OK S OK=0
 S N="" F  S N=$O(@$$^W4ORD@(ORD,"CB",N)) Q:N=""  D  Q:OK
 .S N1="" F  S N1=$O(@$$^W4ORD@(ORD,"CB",N,N1)) Q:N1=""  D
 ..I $$HZMDEL1^W4HZMST(ORD,N,N1),$$HZMDEL2^W4HZMST(ORD,N,N1) S OK=1
 Q OK
 ;
BO(STAM) ;
 Q $$GETP^%W1PRM("W4BO")
 ;
PART(STAM) ;
 Q $$^W4ISPART($G(ORD))
 ;
DELPARTBILL(ORD) ;
 N ORDNOM,NTS,HZMAIN
 I '$$^W4ISPART(ORD) Q "NOPARTBILL"
 S @$$^W4ORD@(ORD,"DELORD")=$H
 S @$$^W4TMPORD@("DELORD")=$H
EDELPART ;
 Q 1
 ;
MLZR(ORD)
 N MLZR S MLZR=$$GETP^%W1PRM("MLZR")
 I 'MLZR S MLZR=$$MKBL^W4HZMST(ORD)
 Q MLZR
 ;
COLPARTS(STAM) ; 
 N K,N S K=0
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM<1 Q 0
 I HZM["-" Q 0
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"PART",N)) Q:N=""  S K=K+1
 Q K
 ;
PRINTORDERCOPY(ORD)
 N TRH S TRH=$$TRH^W4HZMST(ORD)
 I TRH,$$^%L1DC(TRH,3)<$$^W4DZ Q
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINTORDERCOPY")
 S MGROUP(NG,"TO")="PrintOrderCopy()"
 Q
 ;
CHANGECOURIER(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CHANGECOURIER")
 S MGROUP(NG,"TO")="ChangeCourier('"_ORD_"')"
 Q
 ;
CHANGEMKBL(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CHANGEMKBL")
 S MGROUP(NG,"TO")="ChangeMkbl('"_ORD_"')"
 Q
 ;
SEARCHORDER ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("SEARCHORDER")
 S MGROUP(NG,"TO")="SearchOrder()"
 I $$MGR D SHOWORDER
 Q
 ;
MISC ; 
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MISC")
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="brown"
 S MGROUP(NG,"TO")="Misc()"
 Q
 ;
PRNORD(ORD) ; 
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINTALLORDER")
 S MGROUP(NG,"TO")="PrintOrderCp('"_ORD_"','0')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINTLASTPARTORDER")
 S MGROUP(NG,"TO")="PrintOrderCp('"_ORD_"','1')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
USLCOPYORD(ORD) ; 
 ;I $$MGR^W4KOTMLZ,'$$GETP^%W1PRM("W4BO"),'$$PART,$$TSHL^W4HZMST(ORD)>0&$$^W4CLOSE(ORD)&$G(@$$^W4PRM@("COPYORD")),'$$GCOUPIT^W4HZMST(ORD) Q 1
 I $$VIEW Q 0
 I $$GCOUPIT^W4HZMST(ORD) Q 0
 I $$GETP^%W1PRM("W4BO") Q 0
 I $$MGR^W4KOTMLZ Q 0
 I ORD<1 Q 0
 I $$HZM^W4MSL(ORD),'$$GETP^%W1PRM("DLVCSR") Q 0
 I $$PART Q 0
 I $$TSHL^W4HZMST(ORD)<0 Q 0  ; -- WAS '>
 I $$^W4DEL(ORD)=ORD,'$$TSHL^W4HZMST(ORD) Q 0
 I $G(%ARG("VT"))="DEL" Q 0
 I $O(^[$$^W3MAIN]TMPORDB(JB,99999),-1)>1 Q 0
 I $$LASTPART Q 0
 ;
 I $G(%ARG("COPYORD"))!$G(%ARG("HIST")) Q 1
 I $G(@$$^W4PRM@("COPYORD")),$$HZM^W4MSD(ORD) Q 1
 Q 0
 ;
USLPRNORDER(ORD) ;
 I ORD>0,$$HZM^W4MSL(ORD) Q 1
 I '$$PART,$$MGR!$$HZM^W4MSL(ORD),'$$DLV^W4CLOSE(ORD),'$$^W4HZMH(ORD) Q 1
 Q 0
 ;
WINIFR(STAM) ;
 I $G(%ARG("WIN"))["IFR" Q 1
 I $$GETP^%W1PRM("WIN")["IFR" Q 1
 Q 0
 ;
SHOWINVOICE(ORD) ;
 S NG=NG+1
 N SHOW S SHOW=0
 S MGROUP(NG)=$$^%W1DICT("SHOWINVOICECOPY"),SHOW=1
 I $$ITRA^W4HZMST(ORD) S MGROUP(NG)=$$^%W1DICT("SHOWORDERCOPY")
 S MGROUP(NG,"TO")="PrintInvoiceCopy('"_ORD_"','"_SHOW_"')"
 Q
 ;
COPYORDER ;
 I $$HZM^W4MSD(ORD) D CPORD Q
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("COPYORDER")
 S MGROUP(NG,"TO")="CopyOrder()"
 Q
 ;
CPORD ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("COPYORDER")
 S MGROUP(NG,"TO")="CpOrd()"
 Q
 ;
ACKCR(PRM) ; 
 N ORD,LK,CR,HBNOW
 S ORD=$P(PRM,";") 
 S CR=$P(PRM,";",2)
 S HBNOW=$P(PRM,";",3)
 I 'ORD Q "NOTORDER" 
 I 'CR Q "NOZERO" 
 S LK=$$NMB^W4HZMST(ORD)
 Q $$ACKCRLK(LK,CR,HBNOW)
 ;
ACKCRLK(LK,CR,HBNOW) ;
 I '$$^W4MSL(LK) Q "CUSTOMERNUMBERISWRONG"
 D PUT^W4L(LK,1,"ISCR") 
 D PUT^W4L(LK,CR,"GDCR") 
 I $G(HBNOW) D PUT^W4L(LK,HBNOW,"HBNOW")
 Q 1
 ;
USPRN(ORD) ;
 I '$$^W4HZMH(ORD)&'$$VVMSK^W4PRM Q 1
 ;;I $$^W4HZMH(ORD)&$$VVMSK^W4PRM Q 1
 Q 0
 ;
PRINT(ORD) ; 
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINT2SMALL")
 S MGROUP(NG,"TO")="Print('"_ORD_"')"
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="blue"
 Q
 ;
LASTPART(STAM) ; 
 N HZMMAIN S HZMMAIN=$$GETP^%W1PRM("HZMMAIN")
 I 'HZMMAIN Q 0
 I $P(HZMMAIN,"-",2)'=0 Q 0 
 Q 1
 ;
PIZUIM(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PIZUIM")
 I $$PIZUIM^W4HZMST(ORD)'?.P D
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="Pizuim('"_ORD_"')"
 Q
 ;
DETNOTES(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DETAILNOTES")
 I $$DETNOTES^W4HZMST(ORD)'?.P D
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="DetNotes('"_ORD_"')"
 Q
 ;
CORR(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CORRESPONDENCE")
 ;;N LK S LK=$$NMB^W4HZMST(ORD)
 I $D(@$$GL^W4DETNOT("M"_ORD))>9 D
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="Correspondence('"_ORD_"')"
 Q
 ;
FILEMAILMENU(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("FILEMAILLIST")
 S MGROUP(NG,"BG")="brown"
 S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="FileMailList('"_ORD_"')"
 Q
 ;
SHORT(STAM) ;
 I $$MGR Q 0
 Q $$SHORTFN^W4PRM
 ;
MGR(STAM) ;
 Q $$MGR^W4KOTMLZ
 ;
PUTMSD(STAM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q 0
 N MSD S MSD=$$MSDHZM^W4HZMST(HZM)  I 'MSD Q 0
 D PUT^%W1PRM("CURREST",MSD) 
 Q 1 
 ;
INIT ; 
 D ^%W1ARG D ^W4CSS
 S ORD=$G(%ARG("ORD")) Q:'ORD
 D PUT^%W1PRM("HZM",ORD)
 ;
 I $G(%ARG("VT"))="MOVE" D
 .N A S A=$$NMB^W4HZMST(ORD)_";"_ORD_";"_$$MKBL^W4HZMST(ORD)
 .D PUT^%W1PRM("MOVEFROM",A)
 Q
 ;
CP(STAM) ;
 N ORD S ORD=$G(%ARG("ORD"))
 I 'ORD S ORD=$$GETP^%W1PRM("HZM")
 I 'ORD Q -1
 N P S P=$$NMB^W4HZMST(ORD)_";"_ORD_";"_$$MKBL^W4HZMST(ORD)_";3"
 D PUT^%W1PRM("MOVEFROM",P)
 D PUT^%W1PRM("W4CP",1)
 S A=$$MVALLBUSY
 I A<1 D KILL^W4MVFROM
 Q +A
 ;
FILEMAIL(ORD) ;
 N N,OK S OK=0 I '$G(ORD) Q 0
 S N="" F  S N=$O(@$$^W4ORD@(ORD,"SENT2MAIL",N)) Q:N=""  I $D(^(N,"FILE")) S OK=1 Q
 Q OK 
 ;
FILEMAILNM(PRM) ;
 N ORD,MAIL
 S ORD=$P(PRM,";") I ORD="" Q ""
 S MAIL=$P(PRM,";",2) I MAIL="" Q ""
 N FILE S FILE=$G(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE"))
 Q FILE 
 ; 
FILEMAILNM1(PRM) ;
 N ORD,MAIL,TIME
 S ORD=$P(PRM,";") I ORD="" Q ""
 S MAIL=$P(PRM,";",2) I MAIL="" Q ""
 S TIME=$P(PRM,";",3) I TIME="" Q ""
 N FILE S FILE=$G(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE",TIME))
 Q FILE 
 ; 
CHILDMAIL(PRM) ; 
 N ORD,MAIL 
 S ORD=$P(PRM,";") I ORD="" Q "" 
 S MAIL=$P(PRM,";",2) I MAIL="" Q "" 
 I $D(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE"))=1 Q ^("FILE") 
 I $D(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE"))=0 Q "<PUSTO>" 
 Q 1 
 ;
HIST2(STAM) 
 Q ($G(%ARG("HIST"))=2) 
 ;
FIRE(ORD) ; 
 I '$$PART,'$$VIEW,'$$MGR,'$$DEL^W4DEL(ORD) D  ;  - ,$$HZM^W4MD(ORD)
 .I $$HZM^W4MSD(ORD),$$^W4CLOSE(ORD) Q
 .I $$HZM^W4MSL(ORD),$$DLV^W4CLOSE(ORD) Q
 .S NG=$G(NG)+1
 .S MGROUP(NG)=$$^%W1DICT("FIRE")
 .S MGROUP(NG,"FG")="red"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"TO")="Fire()"
 Q
 ;
NOBITCAJ(ORD) ; 
 N OK S OK=0
 N NOM S NOM="" F  S NOM=$O(@$$^W4ORD@(ORD,"CB","V",NOM)) Q:NOM=""  I NOM D
 .I $$NOBITCAJ^W4PAYCA(ORD,NOM) S OK=1 
 Q OK 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDVFN
W4ORDVFN ; [ 28.09.26 10:15 ] [ 27.09.26 11:10 ] [ 28.07.26 12:38 ] 
 N (JB,%ARG)
 S ORD=$G(%ARG("ORD"))
 I ORD D PUT^%W1PRM("HZM",ORD)
 I $G(%ARG("FIRST")) D PUT^%W1PRM("VIEW",$G(%ARG("VIEW")))
 D PUT^%W3DEB("W4ORDVFN","ARG=[%ARG")
 S %REM=$$GET^%W1PRM("REM")
 S MGROUP="CENTER"
 S TOP="",PRMEX=""
 ;
 D NOSELECT^%W1JS
 ;
 S NG=0
 I $G(%ARG("VT"))="POP" S MGROUP("HG")="20%",PRMEX="POP" G EX
 ;
 I $G(%ARG("EMAIL"))'="" D EMAILTIMELIST(%ARG("EMAIL")) G VW
 I $G(%ARG("FILEMAIL")) D FILEMAILLIST G VW
 ;
 I '$$PART,$G(%ARG("VT"))="PRNORD" D PRNORD(ORD) G VW
 ;
 I $G(%ARG("VIEW"))=2 G EX
 ;
 S USLCOPY=0
 I $$HZM^W4MSL(ORD),$$USLCOPYORD(ORD) D COPYORDER S USLCOPY=1
 ;
 ;--------------------- CLOSED ORDER ----------------
 ;
 I $G(ORD),$G(@$$^W4ORD@(ORD,"S")) D CLOSEDORDMENU G VW
 ;
 I $G(%ARG("VT"))="DEL" D DELMENU G VW
 ;
 I '$$PART,$G(%ARG("VT"))="MOVE" D MOVEMENU G VW
 ;
 I $G(%ARG("VT"))="PAYORD",'$$HIST2 D PAYORD(ORD,$G(%ARG("WHO"))) G VW
 ;
 I '$$PART,$$^W4MVFROM D MVAFTERMENU G VW
 ;
 ;------------------ OPEN ORDER ----------------------------
 ;;W "DEV="_$$^W4MYDVN_" NODEL="_$$NODEL^W4POSPRM,! ; ***
 ;
 ;;I '$$VIEW,'$$MGR,$$MLZR(ORD),'$$PART,'$$HIST2 D EDITORDER
 I '$$VIEW,$$MLZR(ORD),'$$PART,'$$HIST2 D EDITORDER
 ;
 I '$$VIEW,'$$MGR,$$MLZR(ORD),'$$^W4HSPART(ORD),'$$LASTPART,'$$SHORT,'$$HIST2 D DISCORDER
 ;
SHOWINV ;
 I '$$^W4HSPART(ORD),'$$LASTPART,'$$I^W4PIZUL(ORD) D SHOWINVOICE(ORD)
 ;
 ;;I $$USLCOPYORD(ORD) G LBLMISC
 ;
 N NMB S NMB=$$NMB^W4HZMST(ORD)
 ;
 I '$$VIEW,'$$MTAW^W4MTAW!$$ACNTAW^W4PRM,$$HZM^W4MSD(ORD) D
 .I $$LASTPART D BILLPART
 .
 .D ACCN Q:$$PART
 .
 .I '$$MGR,'$$MTAW^W4MTAW,'$G(@$$^W4PRM@("NOPART")),$$^W4HSPART(ORD)!('$$SHUL^W4HZMST(ORD)&'$$SHULA^W4HZMST(ORD)&($$SHNHO^W4HZMST(ORD)<.9)) D
 ..D BILLPART
 .
 .I $$RESTORAN^W4PRM,'$$DESERTCD^W4PRM D DESERT
 .
 .I $$CHECKERCD^W4PRM D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("COMMENT2CHECKER")
 ..S MGROUP(NG,"TO")="Comment2Checker('<COMMENT2CHECKER')"
 ;
 ;
 I '$$VIEW!$$SSHUL^W4HZMST(ORD)!$$SHULA^W4HZMST(ORD),'$$NOPAY^W4POSPRM,'$$^W4HZMH(ORD) D
 .I $$^W4HSPART(ORD) Q
 .D PAYM
 ;
 ;
 I '$$VIEW,'$$HIST2 D
 .D KILL^W4TMPANS("DEL")
 .D CLEARTMPS^W4ORDVW
 .
 .I '$$NODEL^W4POSPRM!$$MGR,$$TSHL^W4HZMST(ORD)'<0 D
 ..I $$PART,$P($$GETP^%W1PRM("HZMMAIN"),"-",2)=0 Q
 ..I $$GETP^%W1PRM("DLVWEB")'="" Q
 ..I $$I^W4PIZUL(ORD) Q
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("DELETING")
 ..I $$PART S MGROUP(NG)=$$^%W1DICT("CANCEL")
 ..S MGROUP(NG,"TO")="DeleteOrder('2')"
 .
 .I $$HZM^W4MSL(ORD),'$G(USLCOPY),$$USLCOPYORD(ORD) D COPYORDER
 .I $$HZM^W4MSD(ORD),'$$GETP^%W1PRM("W4BO"),'$$PART,$G(@$$^W4PRM@("COPYORD")),'$$GCOUPIT^W4HZMST(ORD) D CPORD
 .
 .I '$$PART,$$MGR,$$HZM^W4MSL(ORD),$$PSL^W4HZMST(ORD),$$^%L1DC($$TRH^W4HZMST(ORD),3)'<$$^W4DZ D
 ..D CHANGECOURIER(ORD)
 .
 .I '$$PART,$$MGR,$$HZM^W4MSL(ORD) D
 ..D CHANGEMKBL(ORD)
 .
 .I $$POS^W4MTAW!$$^W4DLVCSR Q
 .
 .I '$$MGR,'$$PART,'$$HZM^W4MSL(ORD),'$$TAWM^W4DLPK($$NMB^W4HZMST(ORD)),'$$GCOUPIT^W4HZMST(ORD) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("MOVINGTABLE")
 ..S MGROUP(NG,"TO")="MoveTable('"_ORD_"','"_$$NMB^W4HZMST(ORD)_"')"
 .
 .I '$$PART,$$MGR,'$$CLOSE^W4HZMST(ORD),$$HZM^W4MSD(ORD) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("CHANGEWAITER")
 ..S MGROUP(NG,"TO")="ChangeWaiter('"_ORD_"')"
 .;
 .
 .I '$$PART,$$BAR^W4DLPK($$NMB^W4HZMST(ORD)) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("COMMENT2CUSTOM")
 ..S MGROUP(NG,"TO")="Comment('<COMMENT2CUSTOM')"
 .
 .I '$$PART,$$TAWM^W4DLPK($$NMB^W4HZMST(ORD)) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("CUSTOMERDETAILS")
 ..S MGROUP(NG,"TO")="Comment('<CUSTOMERDETAILS')"
 ;
 D FIRE(ORD)
 ;
 ;;I '$$PART,$$^W4HZMH(ORD),'$$HIST2 D
 I '$$PART,$$^W4HZMH(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("SENDORPRINT")
 .S MGROUP(NG,"TO")="Send2Mail('"_ORD_"')"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CHANGE2ORDER")
 .S MGROUP(NG,"TO")="Change2Order('"_ORD_"')"
 .Q
 ;
LBLMISC ;
 I '$$PART D MISC
 ;
 ;;I '$$USPRN(ORD),'$$LASTPART D PRINT(ORD)
 I '$$LASTPART D PRINT(ORD)
 ;
 I '$$PART,'$$^W4CLOSE(ORD),'$$ITRA^W4HZMST(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CLOSEORDER")
 .S MGROUP(NG,"TO")="CloseOrder()"
 ;
 I $$ITRARL^W4HZMST(ORD)<-.5 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MOVEODEF2TIP")
 .S MGROUP(NG,"TO")="CloseOrder()"
 ;
 I '$$PART,'$$SHORT,'$$HIST2 D SEARCHORDER
 ;
 I '$$HIST2,'$$VIEW D
 .I '$$PART,$$HZM^W4MSL(ORD),$$PIZUIM^W4PRM,'$$^W4HZMH(ORD) D PIZUIM(ORD)
 .I '$$PART,$$HZM^W4MSL(ORD),$$HZM^W4MSL(ORD),$$CORR^W4PRM D DETNOTES(ORD)
 .I '$$PART,$$CORR^W4PRM,$$HZM^W4MSL(ORD) D CORR(ORD)
 ;
 I $$DLVWEB^W4PRM,$$MGR,'$$PART,$$HZM^W4MSL(ORD),$$TSHL^W4HZMST(ORD)>0,'$$HIST2 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("SEND2OTHERBRANCH")
 .S MGROUP(NG,"TO")="Send2Snif()"
 ;
 I $$FILEMAIL(ORD) D FILEMAILMENU(ORD)
 ;
 I $$HIST2 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("OPENALLOPTIONS")
 .S MGROUP(NG,"TO")="OpenAllOptions()"
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 ;
 I $$PAPJ^W4PRM D SND2TV(ORD)
 ;
 S MGROUP("HG")="100%"
 ;
EX S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit('"_PRMEX_"')"
 ;
VW D ^W4SHEET("","","",TOP)
 Q
 ;
 ;
EDITORDER ;
 I $$STAGE^W4HZMST(ORD)=3,$$CODTS^W4HZMST(ORD)=3 D  Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EDITORDERHEADER")
 .S MGROUP(NG,"TO")="EditOrderHeader()"
 ;
 S NG=NG+1
 ;
 I $$HZM^W4MSD(ORD) D
 .S MGROUP(NG)=$$^%W1DICT("EDITORDER")
 .S MGROUP(NG,"TO")="EditOrder()"
 ;
 I $$HZM^W4MSL(ORD) D
 .I '$$I^W4PIZUL(ORD) D
 ..I $$^W4HZMH(ORD),$$VVMSK^W4PRM D
 ...S MGROUP(NG)=$$^%W1DICT("CLEARANDUPDATEORDER")
 ...S MGROUP(NG,"TO")="ClearAndUpdateOrder()"
 ...S NG=NG+1
 ..
 ..S MGROUP(NG)=$$^%W1DICT("EDITORDERCONTENT")
 ..S MGROUP(NG,"TO")="EditOrder()"
 .
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EDITORDERHEADER")
 .S MGROUP(NG,"TO")="EditOrderHeader()"
 ;
 Q
 ;
 ;
DISCORDER ;
 I $$I^W4PIZUL(ORD) Q
 I $$STAGE^W4HZMST(ORD)=3 Q
 ;
 I '$$PART,'$$WASPAYPART^W4HZMST(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DISCPERCENT")
 .S MGROUP(NG,"TO")="DiscountPercent()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DISCNIS")
 S MGROUP(NG,"TO")="DiscNis()"
 Q
 ;
 ;
CLOSEDORDMENU ;
 I $$HZM^W4MSL(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("SHOWORDERHEADER")
 .S MGROUP(NG,"TO")="EditOrderHeader()"
 .
 .N CL S CL=$$CLOSE^W4HZMST(ORD)
 .I +CL=0 Q
 .;;I (CL#2),'$$TAKEAWAY^W4HZMST(ORD) Q  ; ***
 .N DT S DT=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 .I DT<$$^W4DZ Q
 .I $$WASZ(ORD) Q
 .I $$DONE(ORD) Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EDITORDERTIME")
 .S MGROUP(NG,"TO")="EditOrderTime()"
 ;
 I $$^W4CLOSE(ORD) D SHOWPAYMENTS
 
 I $$DLVNOTPAID^W4CLOSE(ORD) D PAYM
 
 I '$$PART,'$$TSHL^W4HZMST(ORD),$$^%L1DC($$DATK^W4HZMST(ORD),3)=$$^W4DZ,'$$BO D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("RESTOREORDER")
 .S MGROUP(NG,"TO")="RestoreOrder('"_ORD_"')"
 ;
 I '$$^W4HSPART(ORD) D SHOWINVOICE(ORD)
 ;
 D PRINT(ORD)
 ;
 I $G(ORD),$$PSL^W4HZMST(ORD),$$^%L1DC($$TRH^W4HZMST(ORD),3)'<$$^W4DZ D
 .D CHANGECOURIER(ORD)
 ;
 I $G(ORD),$$MGR,$$HZM^W4MSL(ORD) D
 .D CHANGEMKBL(ORD)
 ; 
 D FIRE(ORD)
 ;
 I '$$VIEW,$G(ORD) D
 .I $$PART,$$^W4CLOSE(+$$GETP^%W1PRM("HZMMAIN")) Q
 .;;I '$$NODEL^W4POSPRM,'$$HIST2 D DELCLOSEDORDMENU(ORD); -- 25/11/25
 .I '$$NODEL^W4POSPRM D DELCLOSEDORDMENU(ORD) ; -- 25/11/25
 .
 .I '$G(USLCOPY),$$USLCOPYORD(ORD) D COPYORDER
 ;
 I '$$PART D
 .I '$$SHORT D SEARCHORDER
 .D MISC
 ;
 I $G(ORD),$$PIZUIM^W4PRM,$$HZM^W4MSL(ORD) D PIZUIM(ORD)
 ;
 I $G(ORD),$$HZM^W4MSL(ORD),$$CORR^W4PRM D DETNOTES(ORD)
 I $G(ORD),$$HZM^W4MSL(ORD),$$CORR^W4PRM D CORR(ORD)
 ;
 I $G(ORD),$$HZM^W4MSL(ORD),$$FILEMAIL(ORD) D FILEMAILMENU(ORD)
 ;
 I $$PAPJ^W4PRM D
 .D SND2TV(ORD)
 .D ZIC2WEB(ORD)
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit()"
 S MGROUP("HG")="100%"
 Q
 ;
 ;
DELCLOSEDORDMENU(ORD) ;
 I $$^W4DEL(ORD),$$TSHL^W4HZMST(ORD)'<0!(ORD<0) Q
 I $$DELPAYM(ORD) Q
 I $$PART(ORD),$P($$ORDNOM^W4ISPART,"-",2)=0 Q
 ;;I $$TSHL^W4HZMST(ORD)<0 Q  ;;,'$G(@$$^W4PRM@("DELDEL")) Q
 I $$GETP^%W1PRM("DLVWEB")'="" Q
 ;
 I $$TSHL^W4HZMST(ORD)'<0 D  ;!$$DELDEL^W4PRM D  ; 16/09/18
 .I $$^W4KIOSKO(ORD),$$TAIMAN^W4PRM,$$CA^W4HZMST(ORD)>.9 Q
 .I $$NOBITCAJ(ORD) Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEORDER")
 .I $$TSHL^W4HZMST(ORD)<0 S MGROUP(NG)=$$^%W1DICT("RESTOREORDER")
 .S MGROUP(NG,"TO")="DeleteOrder('0')"
 ;
 I $$TSHL^W4HZMST(ORD)<0 Q
 I $$ITRA^W4HZMST(ORD)>.5 Q
 I $$GCOUPIT^W4HZMST(ORD) Q
 ;
 I '$$PART,'$$^W4HSPART(ORD) D
 .I $$NOBITCAJ(ORD) Q
 .I $G(@$$^W4PRM@("NODELRST")) Q
 .I $$^W4KIOSKO(ORD),$$TAIMAN^W4PRM,$$CA^W4HZMST(ORD)>.9 Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEANDRESTORDER")
 .S MGROUP(NG,"TO")="DeleteOrder('1')"
 .
 .I $$PAPJ^W4PRM Q  ; -- 8/05/24
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEPARTORDER")
 .S MGROUP(NG,"TO")="DeleteOrder('3')"
 Q
 ;
 ;
DELMENU ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DELETEORDER")
 S MGROUP(NG,"TO")="PswDelOrder('"_ORD_"','2')"
 ;
 I '$$PART,'$$GCOUPIT^W4HZMST(ORD),$$WASPRN^W4HZMPC(ORD),'$$PAPJ^W4PRM D
 .I $$PAPJ^W4PRM Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DELETEITEMS")
 .S MGROUP(NG,"TO")="PswDelOrder('"_ORD_"','3')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
 ;
MOVEMENU ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVEALLTABLETOFREE")
 S MGROUP(NG,"TO")="MvTblAllFree()"
 ;
 I '$$SHUL^W4HZMST(ORD),'$$SHULA^W4HZMST(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MOVEALLTABLETOBUSY")
 .S MGROUP(NG,"TO")="MvTblAllBusy()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVEITEMSTOOTHERTABLE")
 S MGROUP(NG,"TO")="MvTblItems('"_ORD_"')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CHANGEGUESTSQN")
 S MGROUP(NG,"TO")="ChangeGuestsQn()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
 ;
MVAFTERMENU ;
 D KILL^%W1PRM("HRF")
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MOVINGITEMSFROMTABLE",$$^W4MVFROM)
 S MGROUP(NG,"TO")="MoveItemsFromTable()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit()"
 S MGROUP("HG")="50%"
 Q
 ;
 ;
FILEMAILLIST ;
 N N S N="" F  S N=$O(@$$^W4ORD@(ORD,"SENT2MAIL",N)) Q:N=""  D
 .I '$D(^(N,"FILE")) Q 
 .S NG=NG+1
 .S MGROUP(NG)=N
 .S MGROUP(NG,"TO")="ShowFileMail('"_ORD_"','"_N_"')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
EMAILTIMELIST(MAIL) ;
 I $G(MAIL)="" Q
 N N S N="" F  S N=$O(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE",N)) Q:N=""  D
 .S NG=NG+1
 .S MGROUP(NG)=$ZD($E(N,1,5)_","_+$E(N,6,10),"DD.MM.YY 24:60")
 .S MGROUP(NG,"TO")="ShowFileMailTime('"_ORD_"','"_MAIL_"','"_N_"')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
PAYORD(ORD,WHO) ;
 I $$^W4HZMH(ORD),$$^W4HMH2HZ(ORD,$G(WHO))
 ;
 N CODTS S CODTS=$$CODTS^W4HZMST(ORD)
 ;
 I '$$D^W4PIZUL(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("WILLPAYCASH")
 .S MGROUP(NG,"TO")="WillPay('"_ORD_"','1')"
 .I CODTS=1 D THISRED
 .;
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("WILLPAYCHECK")
 .S MGROUP(NG,"TO")="WillPay('"_ORD_"','2')"
 .I CODTS=2 D THISRED
 .;
 .I $G(@$$^W4PRM@("WILLPAYCA")) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("WILLPAYCA")
 ..S MGROUP(NG,"TO")="WillPay('"_ORD_"','3')"
 ..I CODTS=3 D THISRED
 .;
 .I $$ISCR^W4L($$NMB^W4HZMST(ORD)) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("WILLPAYASR")
 ..S MGROUP(NG,"TO")="WillPay('"_ORD_"','4')"
 ..I CODTS=4 D THISRED
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PAYNOW")
 S MGROUP(NG,"TO")="Payments()"
 I CODTS=3 D THISRED
 ;
 I '$$ISCR^W4L($$NMB^W4HZMST(ORD)) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("ACKCREDIT")
 .S MGROUP(NG,"TO")="AckCredit('"_ORD_"')"
 .
 .I $$TEMPCRED^W4PRM D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("ACKTEMPCREDIT")
 ..S MGROUP(NG,"TO")="AckCredit('"_ORD_"','1')"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("BACK2ORDER")
 S MGROUP(NG,"TO")="EditOrder()"
 Q
 ;
THISRED ;
 S MGROUP(NG,"BG")="red"
 Q
 ;
ACCN ;
 I $$^%W1LNG'="E"!$$HSBHBR^W4PRM D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("BILL")
 .I $$^%W1LNG="E",$$HSBHBR^W4PRM S MGROUP(NG)="Hebrew Bill"
 .I $$^W4HSPART(ORD) S MGROUP(NG)=$$^%W1DICT("BILLORPAYMENTS")
 .S MGROUP(NG,"TO")="Account()"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"FG")="green"
 .I $$^W4HSPART(ORD)  S MGROUP(NG,"FG")="red"
 ;
 I $$HSBENG^W4PRM!($$^%W1LNG="E"),'$$^W4HSPART(ORD) D
 .S NG=NG+1
 .S MGROUP(NG)="Print Bill"
 .S MGROUP(NG,"TO")="Account('1')"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"FG")="green"
 ;
 Q
 ;
BILLPART ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("BILLPART")
 N LAST S LAST=""
 I $$LASTPART S LAST=1
 S MGROUP(NG,"TO")="BillPart('"_LAST_"')"
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="green"
 Q
 ;
DESERT ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DESERT")
 S MGROUP(NG,"TO")="RestoranDesert()"
 Q
 ;
 ;
MVFROM(FLNEW) ;
 ; FLNEW=1 -- > TMPORD
 ; FLNEW=2 --> LE SHULHAN PANUY
 ; FLNEW=3 --> PARITY
 ;
 N NMBFROM,ORDFROM,I,SHL
 S NMBFROM=$$^W4MVFROM I 'NMBFROM Q -1
 S ORDFROM=$$ORD^W4MVFROM I 'ORDFROM Q -2
 ;
 N ORDTO S ORDTO=$$GETP^%W1PRM("HZM")
 I 'ORDTO S ORDTO=$$NEW^W4KLNEW
 ;
 S PC=$$GETP^%W1PRM("PCMV")
 ;;S ^AA("W4ORDVFN-MVFROM","PC")=PC
 ;
 N NMBTO S NMBTO=$$GETP^%W1PRM("NMB")
 D PUT^%W3DEB("W4ORDVFN-MVFROM","FLNEW=FLNEW & NMBFROM= NMBFROM & ORDFROM=ORDFROM & ORDTO=ORDTO & NMBTO=NMBTO")
 ;
 I 'ORDTO,'$G(FLNEW) Q -3
 ;
 I $$^W4CP G MVFROM1
 ;
 ; ----------------- FIRST STEP - UPDATE ORDER-FROM (ON BASE ^TMPMVD ) -----
 S HDTMPORD=$G(@$$^W4TMPORD)
 ;
 K @$$^W4TMPORD
 M @$$^W4TMPORD=@$$^W4MAIN("TMPMVD") ; -- FOR DEL FROM OLD
 ;
 N MVFIRST S MVFIRST=$G(@$$^W4MAIN("TMPMV"))
 N I
 N PULLOUT S PULLOUT=$$GETP^%W1PRM("PULLITOUT")
 ;;S ^AA("W4ORDVFN-MVFROM","PULLOUT")=PULLOUT
 ;
 F I=MVFIRST:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .Q:$$LVST^W3HZMST(JB,I)
 .S $P(@$$^W4TMPORD@("BIT",I),"*",3)=-1
 .N PRM S PRM=NMBTO_"<>"_$$^W4SHULHN(NMBTO)
 .N HR S HR=$$TV^%W1DICT($$^%W1LNG,"MOVED2TABLE",PRM)
 .S HR=$$CNWEB^%L1FRM(HR)
 .I PULLOUT?1N D
 ..S HR="["_$S(PULLOUT:"!`ivedl",1:"!`ivedl `l")_"] "_HR
 ..S ^AA("W4ORDVFN-MVFROM","HR",I)=HR
 .S $P(@$$^W4TMPORD@("BIT",I),"*",4)=HR
 .S $P(@$$^W4TMPORD@(I),"~",7)=HR
 .S @$$^W4TMPORD@("MVTO",I)=NMBTO
 ;
 D KILL^%W1PRM("PULLITOUT")
 I '$G(@$$^W4PRM@("HZMHV"))!($G(PC)=0) S P1HZOP="NOPC"
 I $G(PC)="1" S P1HZOP=""
 ;
 S ORDFROM=$$^W4NEWHZ(JB,ORDFROM) ; --- UPDATE OLD ORDER (-)
 ;
MVFROM1 D KILLFLAG^W4KLFL(NMBFROM)
 ;
 N SOADPLUS
 ;
 I $$^W4CP D  G MVFROM2 ; - COPY TABLE
 .S P1HZOP("ALL")=1
 .S SOADPLUS=$$SOAD^W4HZMST(ORDFROM)
 .S P1HZOP=NMBFROM
 .S P1HZOP("HZ")=ORDFROM
 .S P1HZOP("SD")=$G(SOADPLUS)
 ;
 I $$ALL^W4MVFROM=2 D  ; - ALL TO BUSY TABLE
 .S P1HZOP("ALL")=1
 .S SOADPLUS=$$SOAD^W4HZMST(ORDFROM)
 .D ZEROFROM(ORDFROM)
 .S P1HZOP=NMBFROM
 .S P1HZOP("HZ")=ORDFROM
 .S P1HZOP("SD")=$G(SOADPLUS)
 .D ^W4HODAV(ORDTO)
 ;
 I '$$ALL^W4MVFROM D
 .S SOADPLUS=+$$GET^%W1PRM("MVSD")
 .N SOAD S SOAD=$$SOAD^W4HZMST(ORDFROM)-SOADPLUS
 .D PUT^W4HZMST(ORDFROM,"SOAD",SOAD)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,ORDFROM)
 ;
MVFROM2 D ^W4CALC(ORDFROM)
 ; 
 I ORDFROM<1 D MVREST(ORDFROM) Q -4
 ;
 D ^W4GIBHZ(ORDFROM)
 ;
 ; -------------- 2-ND STEP - UPDATE ORDER-TO ( ON BASE ^TMPMV ) --
 ;
 N TMPORD S TMPORD=$$^W4TMPORD
 K @TMPORD
 ;
 I ORDTO>0,$$^W4GETHZ(ORDTO)<0 D MVREST(ORDFROM) Q -6  ; --- ^P1HZ --> ^TMPORD
 ;
 S SHL=$O(@TMPORD@(9999),-1)
 ;
 ;;M ^LV("TMPMV",JB)=@$$^W4MAIN("TMPMV")
 ;
 I 'ORDTO D
 .N NMB,MLZR
 .S NMB=NMBTO,MLZR=$$GETP^%W1PRM("MLZR")
 .D NEWORD^W4MENUHD
 ;
 S I="" F  S I=$O(@$$^W4MAIN("TMPMV")@(I)) Q:I=""  I I D
 .S SHL=SHL+1
 .K @TMPORD@(SHL)
 .M @TMPORD@(SHL)=@$$^W4MAIN("TMPMV")@(I)
 .I $$^W4CP D
 ..S $P(@TMPORD@(SHL),"~",12)=""
 ..S $P(@TMPORD@(SHL),"~",13)=""
 .I '$$^W4CP S @TMPORD@("MVFROM",SHL)=ORDFROM_";"_NMBFROM
 ;
 I $G(FLNEW)'=1 D  I ORDTO<1 D MVREST(ORDFROM) Q -7  ; --> UPDATE ORDER
 .S P1HZOP=NMBFROM
 .S P1HZOP("HZ")=ORDFROM
 .S P1HZOP("SD")=$G(SOADPLUS)
 .S ORDTO=$$^W4NEWHZ(JB,ORDTO)
 .I ORDTO>0 D PUT^%W1PRM("HZM",ORDTO)
 ;
 I $$^W4PRMAHP(NMBTO)!$$^W4PRMAHP(NMBFROM),ORDTO D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(ORDTO,I))  D
 ..D NEWMH^W4MVTBA(ORDTO,I,$$NMB^W4HZMST(ORDTO))
 ;
 I $G(FLNEW)'=1 D
 .N SOAD S SOAD=$$SOAD^W4HZMST(ORDTO)+$G(SOADPLUS)
 .D PUT^W4HZMST(ORDTO,"SOAD",SOAD)
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,ORDTO)
 .D ^W4CALC(ORDTO)
 ;
 I $G(FLNEW)=1 D
 .S @TMPORD=$G(HDTMPORD)
 .D PUT^W3HZMST(JB,"SOAD",$G(SOADPLUS))
 .I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,$$NMB^W3HZMST(JB),$G(SOADPLUS))
 .N AHUZ S AHUZ=$$AH^W4L(NMBTO)
 .D PUT^W3HZMST(JB,"AHUZ",AHUZ)
 .D PUT^W3HZMST(JB,"HNH",$J(AHUZ*$$TOTORD^W3HZMST(JB)*.01,2,2))
 .D PUT^W3HZMST(JB,"TSHL",$J($$CALC^W3HZMST(JB),2,2))
 ;
 D KILL^W4MVFROM
 D SETCLOSE^W4HZMST(ORDFROM)
 D KILL^%W1PRM("HREF") ; -- DELETE BACK TO FROMTABLE
 ;
 I $G(FLNEW)'=1 K @$$^W4TMPORD Q ORDTO
 Q 1
 ;
 ;
ZEROFROM(ORDFROM) ;
 D PUT^W4HZMST(ORDFROM,"SOAD",0)
 I $$RESTORAN^W4PRM D ^W4RSTRN(1,ORDFROM)
 D PUT^W4HZMST(ORDFROM,"HNH",0)
 D PUT^W4HZMST(ORDFROM,"HNH2",0)
 D PUT^W4HZMST(ORDFROM,"DMSH",0)
 D PUT^W4HZMST(ORDFROM,"TSHL",0)
 K @$$^W4ORD@(ORDFROM,"CB","HNH1")
 I '$$TOTORD^W4HZMST(ORDFROM),'$$^W4CLOSE(ORDFROM) D
 .D SETCLOSE^W4HZMST(ORDFROM)
 Q
 ;
 ;
MVREST(ORDFROM) ;-- IF WAS MV ERROR
 K @$$^W4TMPORD
 M @$$^W4TMPORD=@$$^W4MAIN("TMPMVD0")
 I $D(@$$^W4TMPORD)=11 D
 .K @$$^W4ORD@(ORDFROM)
 .S ORDFROM=$$^W4NEWHZ(JB,ORDFROM)
 K @$$^W4MAIN("TMPMVD0")
 Q
 ;
MVALLBUSY(STAM) ; --- PREP TO MOVING
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM Q -.1
 N MLZ S MLZ=$$MKBL^W4HZMST(HZM)
 N NMBFROM S NMBFROM=$$NMB^W4HZMST(HZM)
 D SET^W4KLFL(NMBFROM)
 G MVAB
 ;
TVMVAB(HZM,MLZ) ;
 ;
MVAB ;
 N W4ITDEL
 ;
 K @$$^W4MAIN("TMPMVD0")
 M @$$^W4MAIN("TMPMVD0")=@$$^W4TMPORD
 ;
 I $G(STAM)'="DEL" D
 .K @$$^W4MAIN("TMPMV")
 .N A S A=$$GETP^%W1PRM("MOVEFROM")
 .S $P(A,";",4)=2 ; --- ALL MOVE
 .I $$^W4CP S $P(A,";",4)=3 ; --- COPY ALL
 .D PUT^%W1PRM("MOVEFROM",A)
 ;
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1)
 D PUT^%W3DEB("W4ORDVFN-MVAB","LAST=LAST")
 ;
 N SUMD,I,QNDEL S SUMD=0
 F I=1:1:LAST I '$$LVST^W3HZMST(JB,I) S QNDEL=$$ITRAST^W3HZMST(JB,I) I QNDEL>0 D  Q:$$GETP^%W1PRM("DELROW")<1
 .N W4ITDEL S W4ITDEL=""
 .D DELNOMOD^W4HZORD(I,QNDEL,MLZ,$G(MNL),1)
 .I $$GETP^%W1PRM("DELROW")<1 Q
 .S SUMD=SUMD+$P($$GETP^%W1PRM("DELROW"),";",2)
 ;
 I SUMD>($$CURTSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)) Q -5
 ;
 I $D(@$$^W4TMPORD)<10 D PUT^%W1PRM("DELROW",-4.2)
 I $$GETP^%W1PRM("DELROW")<0 Q +$$GETP^%W1PRM("DELROW")
 ;
 I $G(STAM)="DEL" Q 1
 ;
 S @$$^W4MAIN("TMPMV")=LAST+1
 ;
 K @$$^W4MAIN("TMPMVD")
 M @$$^W4MAIN("TMPMVD")=@$$^W4TMPORD
 ;
 I $D(@$$^W4MAIN("TMPMV"))<10 D PUT^%W1PRM("DELROW",-4.1)
 ;
 I $$GET^%W1PRM("DELROW")<0  Q +$$GET^%W1PRM("DELROW")
 ;
 Q 1
 ;
 ;
SETCLOSE ;
 N ORD S ORD=$$GET^%W1PRM("HZM") Q:'ORD
 N ITRAL S ITRAL=$$ITRARL^W4HZMST(ORD)
 I ITRAL<.5,ITRAL>-.5 D ^W4ADDHNH(ORD,ITRAL,"lebir")
 ;
 D PUT^%W1PRM("CLSORD",1)
 D SETCLOSE^W4HZMST(ORD)
 D KILL^%W1PRM("CLSORD")
 Q
 ;
VIEW(STAM) ;
 I $G(%ARG("VIEW")) Q 1
 I $$GETP^%W1PRM("VIEW") Q 1
 Q 0
 ;
SHOWPAYMENTS ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("SHOWPAYMENTS")
 S MGROUP(NG,"TO")="ShowPayments()"
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="green"
 Q
 ;
PAYM ;
 I $G(ORD),$$^W4HZMH(ORD) Q
 I $G(ORD)<0,$P($$GETP^%W1PRM("HZMMAIN"),"-",2)=0 Q
 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("PAYMENTS")
 .S MGROUP(NG,"TO")="Payments()"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"FG")="green"
 Q
 ;
SHOWORDER ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("NEXTORDER")
 S MGROUP(NG,"TO")="ShowOrder('"_(ORD+1)_"')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PREVORDER")
 S MGROUP(NG,"TO")="ShowOrder('"_(ORD-1)_"')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("LASTORD")
 S MGROUP(NG,"TO")="ShowOrder('LAST')"
 Q
 ;
DELPAYM(ORD) ;
 N N,N1,A,OK S OK=0
 S N="" F  S N=$O(@$$^W4ORD@(ORD,"CB",N)) Q:N=""  D  Q:OK
 .S N1="" F  S N1=$O(@$$^W4ORD@(ORD,"CB",N,N1)) Q:N1=""  D
 ..I $$HZMDEL1^W4HZMST(ORD,N,N1),$$HZMDEL2^W4HZMST(ORD,N,N1) S OK=1
 Q OK
 ;
BO(STAM) ;
 Q $$GETP^%W1PRM("W4BO")
 ;
PART(STAM) ;
 Q $$^W4ISPART($G(ORD))
 ;
DELPARTBILL(ORD) ;
 N ORDNOM,NTS,HZMAIN
 I '$$^W4ISPART(ORD) Q "NOPARTBILL"
 S @$$^W4ORD@(ORD,"DELORD")=$H
 S @$$^W4TMPORD@("DELORD")=$H
EDELPART ;
 Q 1
 ;
MLZR(ORD)
 N MLZR S MLZR=$$GETP^%W1PRM("MLZR")
 I 'MLZR S MLZR=$$MKBL^W4HZMST(ORD)
 Q MLZR
 ;
COLPARTS(STAM) ; 
 N K,N S K=0
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM<1 Q 0
 I HZM["-" Q 0
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"PART",N)) Q:N=""  S K=K+1
 Q K
 ;
PRINTORDERCOPY(ORD)
 N TRH S TRH=$$TRH^W4HZMST(ORD)
 I TRH,$$^%L1DC(TRH,3)<$$^W4DZ Q
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINTORDERCOPY")
 S MGROUP(NG,"TO")="PrintOrderCopy()"
 Q
 ;
CHANGECOURIER(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CHANGECOURIER")
 S MGROUP(NG,"TO")="ChangeCourier('"_ORD_"')"
 Q
 ;
CHANGEMKBL(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CHANGEMKBL")
 S MGROUP(NG,"TO")="ChangeMkbl('"_ORD_"')"
 Q
 ;
SEARCHORDER ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("SEARCHORDER")
 S MGROUP(NG,"TO")="SearchOrder()"
 I $$MGR D SHOWORDER
 Q
 ;
MISC ; 
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MISC")
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="brown"
 S MGROUP(NG,"TO")="Misc()"
 Q
 ;
PRNORD(ORD) ; 
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINTALLORDER")
 S MGROUP(NG,"TO")="PrintOrderCp('"_ORD_"','0')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINTLASTPARTORDER")
 S MGROUP(NG,"TO")="PrintOrderCp('"_ORD_"','1')"
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Back()"
 Q
 ;
USLCOPYORD(ORD) ; 
 ;I $$MGR^W4KOTMLZ,'$$GETP^%W1PRM("W4BO"),'$$PART,$$TSHL^W4HZMST(ORD)>0&$$^W4CLOSE(ORD)&$G(@$$^W4PRM@("COPYORD")),'$$GCOUPIT^W4HZMST(ORD) Q 1
 I $$VIEW Q 0
 I $$GCOUPIT^W4HZMST(ORD) Q 0
 I $$GETP^%W1PRM("W4BO") Q 0
 I $$MGR^W4KOTMLZ Q 0
 I ORD<1 Q 0
 I $$HZM^W4MSL(ORD),'$$GETP^%W1PRM("DLVCSR") Q 0
 I $$PART Q 0
 I $$TSHL^W4HZMST(ORD)<0 Q 0  ; -- WAS '>
 I $$^W4DEL(ORD)=ORD,'$$TSHL^W4HZMST(ORD) Q 0
 I $G(%ARG("VT"))="DEL" Q 0
 I $O(^[$$^W3MAIN]TMPORDB(JB,99999),-1)>1 Q 0
 I $$LASTPART Q 0
 ;
 I $G(%ARG("COPYORD"))!$G(%ARG("HIST")) Q 1
 I $G(@$$^W4PRM@("COPYORD")),$$HZM^W4MSD(ORD) Q 1
 Q 0
 ;
USLPRNORDER(ORD) ;
 I ORD>0,$$HZM^W4MSL(ORD) Q 1
 I '$$PART,$$MGR!$$HZM^W4MSL(ORD),'$$DLV^W4CLOSE(ORD),'$$^W4HZMH(ORD) Q 1
 Q 0
 ;
WINIFR(STAM) ;
 I $G(%ARG("WIN"))["IFR" Q 1
 I $$GETP^%W1PRM("WIN")["IFR" Q 1
 Q 0
 ;
SHOWINVOICE(ORD) ;
 S NG=NG+1
 N SHOW S SHOW=0
 S MGROUP(NG)=$$^%W1DICT("SHOWINVOICECOPY"),SHOW=1
 I $$ITRA^W4HZMST(ORD) S MGROUP(NG)=$$^%W1DICT("SHOWORDERCOPY")
 S MGROUP(NG,"TO")="PrintInvoiceCopy('"_ORD_"','"_SHOW_"')"
 Q
 ;
COPYORDER ;
 I $$HZM^W4MSD(ORD) D CPORD Q
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("COPYORDER")
 S MGROUP(NG,"TO")="CopyOrder()"
 Q
 ;
CPORD ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("COPYORDER")
 S MGROUP(NG,"TO")="CpOrd()"
 Q
 ;
ACKCR(PRM) ; 
 N ORD,LK,CR,HBNOW
 S ORD=$P(PRM,";") 
 S CR=$P(PRM,";",2)
 S HBNOW=$P(PRM,";",3)
 I 'ORD Q "NOTORDER" 
 I 'CR Q "NOZERO" 
 S LK=$$NMB^W4HZMST(ORD)
 Q $$ACKCRLK(LK,CR,HBNOW)
 ;
ACKCRLK(LK,CR,HBNOW) ;
 I '$$^W4MSL(LK) Q "CUSTOMERNUMBERISWRONG"
 D PUT^W4L(LK,1,"ISCR") 
 D PUT^W4L(LK,CR,"GDCR") 
 I $G(HBNOW) D PUT^W4L(LK,HBNOW,"HBNOW")
 Q 1
 ;
USPRN(ORD) ;
 I '$$^W4HZMH(ORD)&'$$VVMSK^W4PRM Q 1
 ;;I $$^W4HZMH(ORD)&$$VVMSK^W4PRM Q 1
 Q 0
 ;
PRINT(ORD) ; 
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINT2SMALL")
 S MGROUP(NG,"TO")="Print('"_ORD_"')"
 S MGROUP(NG,"BG")="yellow"
 S MGROUP(NG,"FG")="blue"
 Q
 ;
LASTPART(STAM) ; 
 N HZMMAIN S HZMMAIN=$$GETP^%W1PRM("HZMMAIN")
 I 'HZMMAIN Q 0
 I $P(HZMMAIN,"-",2)'=0 Q 0 
 Q 1
 ;
PIZUIM(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PIZUIM")
 I $$PIZUIM^W4HZMST(ORD)'?.P D
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="Pizuim('"_ORD_"')"
 Q
 ;
DETNOTES(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DETAILNOTES")
 I $$DETNOTES^W4HZMST(ORD)'?.P D
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="DetNotes('"_ORD_"')"
 Q
 ;
CORR(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CORRESPONDENCE")
 ;;N LK S LK=$$NMB^W4HZMST(ORD)
 I $D(@$$GL^W4DETNOT("M"_ORD))>9 D
 .S MGROUP(NG,"BG")="brown"
 .S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="Correspondence('"_ORD_"')"
 Q
 ;
FILEMAILMENU(ORD) ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("FILEMAILLIST")
 S MGROUP(NG,"BG")="brown"
 S MGROUP(NG,"FG")="yellow"
 S MGROUP(NG,"TO")="FileMailList('"_ORD_"')"
 Q
 ;
SHORT(STAM) ;
 I $$MGR Q 0
 Q $$SHORTFN^W4PRM
 ;
MGR(STAM) ;
 Q $$MGR^W4KOTMLZ
 ;
PUTMSD(STAM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q 0
 N MSD S MSD=$$MSDHZM^W4HZMST(HZM)  I 'MSD Q 0
 D PUT^%W1PRM("CURREST",MSD) 
 Q 1 
 ;
INIT ; 
 D ^%W1ARG D ^W4CSS
 S ORD=$G(%ARG("ORD")) Q:'ORD
 D PUT^%W1PRM("HZM",ORD)
 ;
 I $G(%ARG("VT"))="MOVE" D
 .N A S A=$$NMB^W4HZMST(ORD)_";"_ORD_";"_$$MKBL^W4HZMST(ORD)
 .D PUT^%W1PRM("MOVEFROM",A)
 Q
 ;
CP(STAM) ;
 N ORD S ORD=$G(%ARG("ORD"))
 I 'ORD S ORD=$$GETP^%W1PRM("HZM")
 I 'ORD Q -1
 N P S P=$$NMB^W4HZMST(ORD)_";"_ORD_";"_$$MKBL^W4HZMST(ORD)_";3"
 D PUT^%W1PRM("MOVEFROM",P)
 D PUT^%W1PRM("W4CP",1)
 S A=$$MVALLBUSY
 I A<1 D KILL^W4MVFROM
 Q +A
 ;
FILEMAIL(ORD) ;
 N N,OK S OK=0 I '$G(ORD) Q 0
 S N="" F  S N=$O(@$$^W4ORD@(ORD,"SENT2MAIL",N)) Q:N=""  I $D(^(N,"FILE")) S OK=1 Q
 Q OK 
 ;
FILEMAILNM(PRM) ;
 N ORD,MAIL
 S ORD=$P(PRM,";") I ORD="" Q ""
 S MAIL=$P(PRM,";",2) I MAIL="" Q ""
 N FILE S FILE=$G(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE"))
 Q FILE 
 ; 
FILEMAILNM1(PRM) ;
 N ORD,MAIL,TIME
 S ORD=$P(PRM,";") I ORD="" Q ""
 S MAIL=$P(PRM,";",2) I MAIL="" Q ""
 S TIME=$P(PRM,";",3) I TIME="" Q ""
 N FILE S FILE=$G(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE",TIME))
 Q FILE 
 ; 
CHILDMAIL(PRM) ; 
 N ORD,MAIL 
 S ORD=$P(PRM,";") I ORD="" Q "" 
 S MAIL=$P(PRM,";",2) I MAIL="" Q "" 
 I $D(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE"))=1 Q ^("FILE") 
 I $D(@$$^W4ORD@(ORD,"SENT2MAIL",MAIL,"FILE"))=0 Q "<PUSTO>" 
 Q 1 
 ;
HIST2(STAM) 
 Q ($G(%ARG("HIST"))=2) 
 ;
FIRE(ORD) ; 
 I '$$PART,'$$VIEW,'$$MGR,'$$DEL^W4DEL(ORD) D  ;  - ,$$HZM^W4MD(ORD)
 .I $$HZM^W4MSD(ORD),$$^W4CLOSE(ORD) Q
 .I $$HZM^W4MSL(ORD),$$DLV^W4CLOSE(ORD) Q
 .S NG=$G(NG)+1
 .S MGROUP(NG)=$$^%W1DICT("FIRE")
 .S MGROUP(NG,"FG")="red"
 .S MGROUP(NG,"BG")="yellow"
 .S MGROUP(NG,"TO")="Fire()"
 Q
 ;
NOBITCAJ(ORD) ; 
 N OK S OK=0
 N NOM S NOM="" F  S NOM=$O(@$$^W4ORD@(ORD,"CB","V",NOM)) Q:NOM=""  I NOM D
 .I $$NOBITCAJ^W4PAYCA(ORD,NOM) S OK=1 
 Q OK 
 ;
WASZ(ORD) ; 
 N WAS S WAS=0
 N DZ S DZ=$$^W4DZ
 N N S N=ORD-1 
 F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  I $G(^(N))[",^" S WAS=1 Q
 Q WAS 
 ;
DONE(ORD) ; 
 N GL S GL=$$^W4GL("W4BONA")
 Q $D(@GL@(ORD))
 ;
SND2TV(ORD) ; 
 I '$$TEAV^W4PRM Q 
 I $$HZM^W4MSD(ORD) Q 
 I $$TAKEAWAY^W4HZMST(ORD) Q 
 I $$DEL^W4DEL(ORD) Q
 I '$$BO Q 
 ;
 S NG=$G(NG)+1 
 S MGROUP(NG)=$$^%W1DICT("SEND2TV") 
 I $D(@$$^W4ORD@(ORD,"TVSNDAGAIN")) D
 .S MGROUP(NG,"FG")="yellow" 
 .S MGROUP(NG,"BG")="brown" 
 S MGROUP(NG,"TO")="Snd2Tv('"_ORD_"')" 
 Q 
 ;
 ;
ZIC2WEB(ORD) ; 
 I $$HZM^W4MSD(ORD) Q 
 I $$DEL^W4DEL(ORD) Q
 ;
 ;;I '$$MGR^W4KOTMLZ Q 
 I $$TRIDCA^W4HZMST(ORD)=""&($$TRIDMZ^W4HZMST(ORD)="") Q
 ;
 S NG=$G(NG)+1 
 S MGROUP(NG)=$$^%W1DICT("PARTYREFUND") 
 ;
 S MGROUP(NG,"TO")="DeleteOrder('4')" 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDVHD
W4ORDVHD ; [ 28.09.17 15:51 ] [ 03.08.17 13:31 ] [ 28.04.16 11:42 ] 
  N (JB,%ARG,%REM)
  S ORD=$G(%ARG("ORD")) Q:'ORD
  S W4ORDVHD=""
  D HEAD^W4PAYHD(ORD)
  Q:$$^W4MSL($$NMB^W4HZMST(ORD))
  ;
  N MZMNM S MZMNM=$$MZMNM^W4HZMST(ORD)
  N LL S LL=$$LL^W4HZMST(ORD)
  ;
  I $$^W4TABLET G ENDT
  ;
  W "<tr>"
   I LL!(MZMNM'="") D
   .W "<td>"_$$^%W1DICT("KINDOFORDER")_"</td>"
   .W "<td>"_$S(LL=1:$$SHOWRKV($$^%W1DICT("STAY")),LL=2:$$^%W1DICT("TAKE"),1:"&nbsp;")_"</td>"
   .W "<td>"_$$^%W1DICT("MAZMIN")_"</td>"
   .W "<td>"_$$SHOWRKV($$H2U^%L1FRM(MZMNM))_"</td>"
   ;
   I 'LL&(MZMNM="") W "<td colspan=""4"">&nbsp;</td>"
   ;
   W "<td>"_$$^%W1DICT("ACCOUNT")_"</td><td>"_$$SHOWRKV($$HESH^W4HZMST(ORD),"H")_"</td>",!
   ;;W "<td>&nbsp;</td><td>&nbsp;</td>",!
   N HB S HB=$$NCAB^W4HZMST(ORD) S:'HB HB=""
   W "<td>"_$$^%W1DICT("INVOICE")_"&nbsp;</td><td>"_$$SHOWRKV(HB)_"</td>",!
   W "<td colspan=""2"">"_$$^%W1DICT("CREDITACCOUNT")_"&nbsp;"_$$SHOWRKV($TR($$HSB2^W4HZMST(ORD),","," "))_"</td>",!
  W "</tr>",!
ENDT ;
 W "</table>",!
 Q
 ;
SHOWRKV(RKV,PRM) ;
 N OU
 I $G(RKV)'="" S OU=$S($G(PRM)="H":$$H2U^%L1FRM(RKV),1:RKV)
 I $G(RKV)="" S OU="&nbsp;"
 Q "<span class=""hdordrkv"" "_$S($G(PRM)="E":" dir=""LTR""",1:"")_">"_OU_"</span>"
 ;
GETHZ(PRM) ;
 S NMB=$$NMB^W4HZMST(ORD)
 S MLZR=$$MKBL^W4HZMST(ORD)
 ;
 S SOAD=$$SOAD^W4HZMST(ORD)
 S LKHN=$$LKHN^W4HZMST(ORD)
 S DATK=$$DATK^W4HZMST(ORD)
 S ZMANK=$$DATCB^W4HZMST(ORD)
 ;
 S MLZR1="" I MLZR S MLZR1=$$^W4NAME(MLZR) D PUT^W4TMPORD("MLZR",MLZR)
 S LKHN1="" I LKHN S LKHN1=$$LKH^W4L(LKHN)
 Q
 
 
 
 
 

W4ORDVW
W4ORDVW(ORD,COMPRADD,COMPRDEL,BO) ; [ 14.09.26 17:40 ] [ 10.09.26 12:21 ] [ 02.09.26 23:30 ] 
 ;----------------------------------------------------------------------------
 N (%ARG,JB,ORD,%REM,COMPRADD,COMPRDEL,BO,W4PCHBP) D ^W4IN
 S COMPRADD=+$G(COMPRADD)
 S COMPRDEL=+$G(COMPRDEL)
 S BO=+$G(BO)
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W4ORDVW")
 D PUT^%W3DEB("W4ORDVW","W3ORDLS=W3ORDLS & ARG=[%ARG")
 Q:'$G(ORD)
 Q:$$^W4GETHZ(ORD)'=1
 I '$$TSTMRG^W4HZMST(ORD) S COMPRDEL=0
 ;
 D TMPS^W4MENU
 ;
 D ^W4OPORD(ORD)
 ;
 ;-------------  HEADER ------------------------------
 ;
 D W("<div align=""center"" >")
 ;
 I $G(@$$^W4ORD@(ORD,"ZICER")) D
 .W "<span style=""position:absolute;top:0;left:0;width:100%;height:4%;background-color:red;color:yellow;font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold"" >"
 . W $$^%W1DICT("WASREFUNDERRORSININTERNET")
 .W "</span>",!
 .W "<br>",!
 ;
 I $$LKMCARD^W4HZMST(ORD) D
 .W $$KOTSPAN("brown")
 . N LKMCARD,LKMNAME 
 . S LKMCARD=$$LKMCARD^W4HZMST(ORD)
 . S LKMNAME=$$H2U^%L1FRM($$LKMNAME^W4HZMST(ORD))
 . W $$^%W1DICT("CUSTCLUB")_" :  "_LKMCARD_" "_LKMNAME
 .W "</span><br>",!
 .
 ;
 I $$MM^W4PRM D
 .N MSD S MSD=$$MSDHZM^W4HZMST(ORD)
 .W $$KOTSPAN("darkgreen")
 . W $S($$GETP^%W1PRM("FAXHTM"):"",1:MSD_" ")_$$H2U^%L1FRM($$MSD^W3R(MSD))
 . I $$TSHL^W4HZMST(ORD)<0 D KOTDEL(ORD)
 .W "</span><br>",!
 ;
 N ORDZIC S ORDZIC=$$ZICHLK(ORD)
 ;
 I ORDZIC D
 .N TSZIC S TSZIC=$$TSHL^W4HZMST(ORD)
 ;
 I $G(@$$^W4GL("W4ZICER")@(ORD))'="" D  G MV
 .N A S A=^(ORD)
 .W "<div dir="""_$$^%W1DIR_""" >",!
 .W "<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_""">"
 . N PRM S PRM=$P(A,"\",2)
 . W $$^%W1DICT($P(A,"\"),PRM) 
 .W "</span>"
 .W "</div>",!
 ;
 I $G(@$$^W4GL("W4ZICI")@(ORD)) D
 .N ZICI S ZICI=^(ORD)
 .W "<div dir="""_$$^%W1DIR_""" "_$$^W4TOUCH_"=""ShowOrd('"_ZICI_"')"" >",!
 .W "<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 . W $$^%W1DICT("REFUNDOFORDER",ZICI) 
 .W "</span>"
 .W "</div>",!
 ;
 I $D(@$$^W4GL("W4ZIC")@(ORD))>9 D
 .W "<div dir="""_$$^%W1DIR_""" >",!
 .W "<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_""">"
 . W $$^%W1DICT("ORDERREFUNDEDBYORDER")_" " 
 .W "</span>"
 .N ZICORD
 .S ZICORD="" F  S ZICORD=$O(@$$^W4GL("W4ZIC")@(ORD,ZICORD)) Q:ZICORD=""  D
 ..W "<span "_$$^W4TOUCH_"=""ShowOrd('"_ZICORD_"')"" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 ..W ZICORD,"&nbsp;"
 ..W "</span>",! 
 .W "</div>",!
 ;
 I $$I^W4DEL(ORD) D
 .N ORDDEL S ORDDEL=$G(^(ORD))
 .W "<span "_$$^W4TOUCH_"=""ShowOrd('"_ORDDEL_"')"" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 .W $$^%W1DICT("DELETINGOFORDER",ORDDEL)
 .W "</span>",!
 .W "<br>",!
 ;
 ;
 I $$^W4DEL(ORD) D  G NOHN
 .N ORDDEL S ORDDEL=$G(^(ORD))
 .W "<span dir="""_$$^%W1DIR_""" "_$$^W4TOUCH_"=""ShowOrd('"_ORDDEL_"')"" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 .W $$^%W1DICT("DELETEDBYORDER",ORDDEL)
 .I $$MM^W4PRM D KOTDEL(ORDDEL)
 .W "</span><br>",!
MV ;
 I $G(@$$^W4GL("P1MOVE")@(P1DZ,ORD)) D  G NOHN
 .N NMBOLD S NMBOLD=$P($G(^(ORD)),"\",2)
 .W " <span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""">"
 .W $$^%W1DICT("MOVINGFROMTABLE",NMBOLD)
 .W "</span><br>",!
 ;
 I $G(@$$^W4ORD@(ORD,"COPYDEL")) D
 .N ORDFROM S ORDFROM=$G(^("COPYDEL"))
 .W "<span "_$$^W4TOUCH_"=""ShowOrd('"_ORDFROM_"')"" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 .W $$^%W1DICT("RESTOREDFROMORDER",ORDFROM)
 .W "</span><br>",!
 ;
NOHN ;
 I $$PARNOHN(ORD) D
 .W " <span dir="""_$$^%W1DIR_""" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""">"
 .W $$^%W1DICT("MSGDISC*")
 .W "</span><br>",!
 ;--------------------------------------------------------------------------
 ;                       BODY
 ;--------------------------------------------------------------------------
 N WDTB S WDTB=100
 I $$NOCOMMENT S WDTB=98
 I $G(%ARG("WDTB")) S WDTB=%ARG("WDTB")
 ;
 S NODISC=$$NODISC
 ;
 N TB S TB="<table id=""TbOrd"" width="""_WDTB_"%"" cellspacing=""0"" class=""vw"""
 S TB=TB_" border=""1"" "
 S TB=TB_" style=""font-size:"_$$^W3FSZ(12)
 S TB=TB_""" "
 S TB=TB_"dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >"
 D W(TB)
 N TR S TR="<tr style=""background-color:"_$$FNFG^W4CSS_";color:white"">"
 I $G(%ARG("PRINT"))!$G(%ARG("MAIL"))!$G(%ARG("FAX")) D
 .S TR="<tr style=""background-color:white;color:black"">"
 D W(TR)
 S CC=0
 S WD=4 I $$PICIT S WD=3
 S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("NPP")_"</th>")
 I '$$NOPCHBCD D
 .S WD=11 I $$PICIT S WD=9
 .S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 ;
 S WD=24 I $$PICIT S WD=20
 S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("ITEMNAME")_"</th>")
 ;
 I $$PICIT D
 .S CC=CC+1 D W("  <th style=""width:12%"">"_$$^%W1DICT("PICTURE")_"</th>")
 ;
 I '$$NOPRC D
 .S CC=CC+1 D W("  <th style=""width:10%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:8%"">"_$$^%W1DICT("QUANT")_"</th>")
 ;
 I '$$NOPRC D
 .I 'NODISC D
 ..S WD=10 I $$PICIT S WD=8
 ..S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("DISCOUNT")_"</th>")
 .S WD=12 I $$PICIT S WD=10
 .S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("SUM")_"</th>")
 ;
 I '$$NOCOMMENT D
 .I $$PICIT,$D(W4PCHBP) Q
 .S CC=CC+1  D W("  <th>"_$$^%W1DICT("COMMENT")_"</th>")
 D W(" </tr>")
 ;
 S MC=CC
 I $$BSL^W4PRM,$$BSCARD^W3HZMST(JB) D
 .W "<tr><td colspan="""_MC_""" style=""background-color:yellow;text-align:center;cursor:pointer"" "
 . W " "_$$^W4TOUCH_"=""BLShowBonus()"" "
 . W ">"_$$H2U^%L1FRM($$BSCLUB1^W3HZMST(JB))_"<br>"
 . W $$BSCARD^W3HZMST(JB)_" "_$$H2U^%L1FRM($$BSNAME^W3HZMST(JB))
 . W "</td>",!
 .W "</tr>",!
 ;
 S PR0=1
 N K
 I '($D(@TMPS@(2,"LAST"))#2) S @TMPS@(2,"LAST")=1
 S K=+$G(@TMPS@(2,"LAST"))
 N K1 S K1=$G(@TMPS@(2,K)) I K1<1 S K1=1
 N QNIT0,QN0,QNR,CDST0
 S CDST0="",QN0="",QNIT0="",QNIT1="",QNR="",PRMIN=0,CMAH="",AHST=""
 ;
 N I S I=K1-1 F  S I=$O(@$$^W4TMPORD@(I)) Q:I=""  I I D  D FIRE^W4HZORD(I,8)
 .N A,URST S A=$G(^(I)),URST=$P(A,"~")
 .S QNR=$$QNR^W3HZMST(JB,I),QN0=QNR
 .I QNR<0,COMPRDEL,$$TSHL^W3HZMST(JB)'<0 Q
 .
 .I URST=0 D  S PR0=1
 ..I $$PICIT,K>1 D
 ...D W("<tr style=""height:4px;font-size:"_$$^W3FSZ(5)_"""><td colspan="""_MC_""">&nbsp;</td></tr>")
 ..S HNT="",AHST="",QNIT1=""
 ..S QNIT0=$$ITRAST^W3HZMST(JB,I)
 ..I $G(COMPRDEL),'QNIT0,$$NOVWDEL Q
 ..S PRMIN=0 I QNR<0 S PRMIN=1
 ..I PRMIN,$G(@$$^W4TMPORD@("MVTO",I)) S PRMIN=2
 ..I '$$NOCOMMENT,'$D(W4PCHBP) D SENDED^W4HZORD(I,8)
 ..N PRT S PRT=$$CD(A)
 ..I $D(W4PCHBP),PRT=$$HZMH^W3PRM Q
 ..S CDST0=PRT
 ..N DELIMST0 S DELIMST0=$$DELIM^W4P(CDST0)
 ..N DLMST0 S DLMST0=$$DLM^W4P(CDST0)
 ..S PRT=$$SMB^W4BLNMVC(PRT)_PRT
 ..S STYLE=""
 ..I $$BSLPAR(CDST0) D
 ...S STYLE=" style=""background-color:lightyellow"" "
 ..I DELIMST0 D
 ...S STYLE=$$^W4DLMSTL
 ...S PRT=""
 ..I DLMST0 D
 ...S STYLE=$$DLM^W4DLMSTL
 ...S PRT=""
 ..
 ..D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" "_$$CLASSBG_" "_STYLE_">")
 ..D K
 ..
 ..I '$$NOPCHBCD D
 ...N PRTCD S PRTCD=$$PRTCD(PRT)
 ...D W("  <td>&nbsp;"_PRTCD_"</td>")
 ..
 ..S PRT=$TR(PRT,"* ","")
 ..
 ..N NAM,DOP S NAM=$$NAM(A)_$$DESC(PRT)
 ..I '$$NOCOMMENT S DOP="" D DOP(I) S NAM=NAM_DOP
 ..D W("   <td style='font-size:"_$$^W3FSZ(12)_";font-weight:bold'>&nbsp;"_NAM_"</td>")
 ..
 ..I $$PICIT D
 ...D W("   <td align=""center"" >&nbsp;"_$S(DELIMST0!DLMST0:"&nbsp;",1:$$SHOWPIC(PRT))_"</td>")
 ..
 ..I DELIMST0!DLMST0 D  Q
 ...N COLSPAN S COLSPAN=MC-4+$$NOPCHBCD-$$PICIT
 ...I $$NOCOMMENT,'$$NOPRC S COLSPAN=COLSPAN+1
 ...I '$$NOPRC!'$$PICIT!'$D(W4PCHBP) D
 ....D W("   <td colspan="""_COLSPAN_""">&nbsp;</td>")
 ...I '$$NOCOMMENT D W("<td>"_$$H2U^%L1FRM($$CMNST^W3HZMST(JB,I))_"</td>")
 ..
 ..I '$$NOPRC D
 ...N MH S MH=$$MH(A)
 ...D W("   <td align=""center"" dir=""LTR"">&nbsp;"_$$SHOWMH(MH,A)_"</td>")
 ..
 ..N QNIT S QNIT=$$QNIT(I)
 ..I $G(PRT) D
 ...S QNIT=QNIT_$$SMB(PRT)
 ..D W("   <td align=""center"" dir=""LTR"" "_$S(PRMIN:$$CLASS(PRMIN),1:"")_">&nbsp;"_QNIT_"</td>")
 ..
 ..I '$$NOPRC D
 ...S CMAH=$$CMAH(I)
 ...S AHST=$$AHST(I)
 ...S NOTSFMVC=$$NOTSFMVC(I)
 ...I 'NODISC D
 ....D W("   <td class=""disc"" >&nbsp;"_AHST_CMAH_"</td>")
 ...
 ...N STR S STR="   <td align=""center"" dir=""LTR"" "_$$CLASS(PRMIN)
 ...I $$BSLPAR($$CD(A)) S STR=STR_" style=""background-color:lightyellow"" "
 ...S STR=STR_" >&nbsp;"_$$SUM(I)_"</td>"
 ...D W(STR)
 ..
 ..I '$$NOCOMMENT,'$$PICIT!'$D(W4PCHBP) D CMTD(I)
 ..D W("</tr>")
 ..I '$$NOCOMMENT,$$PICIT,$D(W4PCHBP),$L($$CMNTT(I)) D TRCMNT
 .
 .
 .I URST>0 D  ;---------- ADDONS ----------------
 ..;
 ..I $$CDC(A)!$$CDH(A) Q
 ..
 ..I COMPRADD D  S PR0=0 Q  ;----- LO LEHAZIG TOSAFOT
 ...Q:'PR0
 ...S MHADD=$$MHADD(I,QNIT0)
 ...I MHADD<0,'COMPRDEL S MHADD=-MHADD
 ...
 ...D W("  <tr "_$$CLASSBG_" style=""color:green;font-size:"_$$^W3FSZ(11)_""" id=""ADD"_I_""" name=""ADD"_I_""" >")
 ...D K
 ...
 ...I '$$NOPCHBCD D
 ....D W("    <td>&nbsp;</td>")
 ...
 ...D W("   <td>"_$$^%W1DICT("ADDITIONS")_"</td>")
 ...
 ...I $$PICIT D W("<td>&nbsp;</td>")
 ...
 ...I '$$NOPRC D
 ....N ST S ST="   <td dir=""LTR"" align=""center"""
 ....I MHADD S ST=ST_" style=""color:black"""
 ....S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,2,2)_"&nbsp;</td>"
 ....D W(ST)
 ...
 ...D W("   <td>&nbsp;</td>")
 ...
 ...I '$$NOPRC,'NODISC D
 ....D W("   <td>&nbsp;</td>")
 ....
 ...N ST S ST=""
 ...I '$$NOPRC D
 ....S ST="   <td dir=""LTR"" align=""center"""
 ....I MHADD,'$G(PRMIN) S ST=ST_" style=""color:black"""
 ....S ST=ST_$$CLASS(PRMIN)
 ....N SUMADD
 ....S SUMADD=MHADD*$S($G(PRMIN):-1,1:1)
 ....I 'QNIT0,COMPRDEL S SUMADD=0
 ....S ST=ST_">&nbsp;&nbsp;"_$J(SUMADD,2,2)_"&nbsp;</td>"
 ...
 ...I '$$NOCOMMENT,'$$PICIT!'$D(W4PCHBP) S ST=ST_"<td>&nbsp;</td>"
 ...D W(ST_"</tr>")
 ..;
 ..I '$$QNIT(I),'$$CDA(A) Q
 ..
 ..;-------------- LEHAZIG TOSAFOT ---------------------
 ..N QNITI S QNITI=$$QNIT(I)
 ..S ST="  <tr "_$$CLASSBG
 ..S ST=ST_" style=""color:"_$$COLORADD^W4CSS(URST)_";font-size:"_$$^W3FSZ(11)_""" "
 ..S ST=ST_" id=""LV"_URST_I_""" name=""LV"_URST_I_""" >"
 ..D W(ST)
 ..
 ..D K
 ..
 ..I '$$NOPCHBCD D
 ...D W("    <td>&nbsp;"_$S($$CDA(A)!$$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..;
 ..D W("   <td")
 .. I $$CDA(A) D
 ... N FSZ S FSZ=12 I $E($$CD(A),2,20)>999 S FSZ=10
 ... D W(" style=""font-size:"_$$^W3FSZ(FSZ)_";font-weight:bold;color:brown"" ")
 .. I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_$$DESC($$CD(A))_"</td>")
 ..
 ..I $$PICIT D
 ...N CDT S CDT=$$CD(A)
 ...N PIC S PIC=$S($$PICEX(CDT):$$SHOWPIC(CDT),1:"&nbsp;")
 ...D W("   <td align=""center"" >"_PIC_"</td>")
 ..
 ..N MHADD S MHADD=$$MH(A)
 ..N HNT S HNT=$$AHP(A)
 ..
 ..I '$$NOPRC D
 ...N ST S ST="   <td dir=""LTR"" style=""text-align:center"
 ...S ST=ST_""""
 ...S ST=ST_">&nbsp;"_$S($$CDA(A)!$$CDC(A)!$$CDH(A):"&nbsp;",1:$$SHOWMH(MHADD,A))_"</td>"
 ...D W(ST)
 ...
 ..S ST="<td dir=""LTR"" "_$$CLASS(PRMIN)_" style=""text-align:center"">"
 ..;
 ..S ST=ST_"&nbsp;"_$S($$CDA(A)!$$CDC(A)!$$CDH(A):"&nbsp;",1:QNITI)
 ..S ST=ST_"</td>"
 ..D W("   "_ST)
 ..
 ..I '$$NOPRC D
 ...I 'NODISC D AHSTADD
 ...
 ...S ST="<td dir=""LTR"" style=""text-align:center"""_$$CLASS(PRMIN)_" >"
 ...N SUM S SUM=$$SUMA(A,I)
 ...N ST1 S ST1=SUM
 ...S ST=ST_"&nbsp;"_$S($$CDA(A)!$$CDC(A)!$$CDH(A):"&nbsp;",1:ST1)
 ...S ST=ST_"</td>"
 ...D W(ST)
 ..
 ..I '$$NOCOMMENT,'$$PICIT!'$D(W4PCHBP) D CMTD(I)
 ..
 ..D W("  </tr>")
 ..
 ..I '$$NOCOMMENT,$$PICIT,$D(W4PCHBP),$L($$CMNTT(I)) D TRCMNT
 ;
 W !
 ;
 I '$$NOCOMMENT,'$D(W4PCHBP) D SENDED^W4HZORD(99999,8)
 ;
 D W("</table>")
 D W("</div>")
 ;
 D W("<br>")
 ;
 ;
 S ERMSG=$$GET^%W1PRM("ERMSG")
 I ERMSG["<UNDEF" S ERMSG=""
 ;
 ;
 I $L(ERMSG) D
 .W "<script>",!
 .N MSG 
 .D
 ..I ERMSG?1N.N1"*".E S MSG=$P(ERMSG,"*",2,20) Q
 ..I ERMSG?1"ER:"1N.E S MSG=$P(ERMSG,":",3) Q
 ..S MSG=$P(ERMSG,";",2,2)
 .W " MsgA('"_$$CLWEB^%L1FRM(MSG)_"')",!
 .D KILL^%W1PRM("ERMSG")
 .W "</script>",!
 Q
 ;
HDST(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 I $P(A,"~",18)'="" Q 1
 Q 0
 ;
HDSTNM(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 N A1 S A1=$P(A,"~",18)
 Q $P(A1,"^",2)
 ;
KOTSPAN(COLOR) ;
 N ST S ST="<span dir="""_$$^%W1DIR_""" "
 S ST=ST_"style=""color:"_COLOR_";"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_""" >"
 Q ST
 ;
KOTDEL(ORD) ;
 W $$KOTSPAN("red")
 I $G(@$$^W4ORD@(ORD,"MYDISC")) W " [ "_$$^%W1DICT("OURDEL")_" ]</span>" Q
 I '$G(@$$^W4ORD@(ORD,"MYDISC")) W " [ "_$$^%W1DICT("RESTDEL")_" ]</span>" Q
 Q
 ;
PRTCD(PRT)
 I $G(@$$^W4PRM@("HBBCODE")),$D(W4PCHBP) D  I PRT,$G(@$$^W4GL("W4BCODE")@(PRT)) Q $G(^(PRT))
 .S PRT=$TR(PRT,"*","")
 Q PRT
 ;
CLASS(PRMIN) ;
 I PRMIN=1 Q " class=""vwmin1"""
 I PRMIN=2 Q " class=""vwmin2"""
 I COMPRDEL,'$G(QNIT0) Q " class=""vwmin1"""
 Q " class=""vw0"""
 ;
CLASSBG(STAM) ;
 I PRMIN=1!($G(QNITI)<0) Q "class=""vwmin1"""
 I PRMIN=2 Q "class=""vwmin2"""
 I COMPRDEL,'$G(QNIT0) Q "class=""vwmin1"""
 Q "class=""vw0"""
 ;
 ;
MHADD(I,QNIT0) ;
 N MHADD,A1,A0,CD0,A1 S MHADD=0,A0="",A1="",CD0=""
 N I0 S I0=I+1 F  S I0=$O(@$$^W4TMPORD@(I0),-1) Q:I0=""  I I0 S A0=$G(^(I0)) Q:'$P(A0,"~")
 I $P(A0,"~")=0 S CD0=$P(A0,"~",2)
 ;
 N IT1 S IT1=1
 N I1 S I1=I-1 F  S I1=$O(@$$^W4TMPORD@(I1)) Q:I1=""  I I1 S A1=$G(^(I1)) Q:'$P(A1,"~")  D
 .N QNA,MHA
 .N KDISC S KDISC=$$KDISCADD(A1,$G(AHST))
 .S MHA=$J($P(A1,"~",4)*KDISC,2,2)
 .S QNA=$$QNA(A1)
 .I COMPRDEL,$$TSHL^W3HZMST(JB)>0,QNA<0 Q
 .I COMPRDEL,$$LV^W3HZMST(A1)=1 S QNA=$$ITRAST^W3HZMST(JB,I1)
 .
 .I COMPRDEL,$$LV^W3HZMST(A1)=2 D
 ..S QNA=$$QNA^W3HZMST(A1)
 ..S QNA=$$QNIT1^W3HZMST(JB,I1)*QNA
 .
 .I QNA["*" D
 ..N QN0 S QN0=$P(QNA,"*",2) I QN0="" S QN0=1
 ..S QNA=QNA*QN0
 .
 .;;W "A1="_A1_"  QNA="_QNA_" MHA="_MHA,!
 .S MHADD=MHADD+(MHA*QNA)
 ;
 I $$LMAM S MHADD=MHADD*100/(100+$$AHMAM^W4HZMST(ORD))
 Q MHADD
 ;
 ;
SHOWMH(MH,A)
 N NMB S NMB=$$NMB^W4HZMST(ORD)
 I NMB,$G(W4PCHBP)="TM",$$TMBLIMH^W4L(NMB) Q "&nbsp;"
 Q $J(MH,5,2)_$S($$^W4PRTBH($$CD(A))&MH:$$ZW,1:"")
 ;
LVIT(I) ;
 Q $$LVST^W3HZMST(JB,I)
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(ORD) N JB S JB=+ORD
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
LV(A) ;
 Q $P(A,"~")
 ;
CD(A) ;
 N NM
 S NM=$TR($P(A,"~",2),"* ","")
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 ;
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 S NM=$$IT^W4NM($$CD(A),NM,1)
 I NM="" Q "&nbsp;"
 I $$NOMAM^W4P($$CD(A)) S NM="**"_NM
 ;;I $$^W4PRTBH($$CD(A)) S NM=$$ZW_NM
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 I $$LMAM S MH=MH*100/(100+$$AHMAM^W4HZMST(ORD))
 Q $J(MH,2,2)
 ;
QNIT(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 N LV S LV=$P(A,"~")
 N PREZATI S PREZATI=$$PREZATI^W3HZMST(JB,I)
 ;
 I LV,'PREZATI,COMPRDEL Q $$QNITTA(A,I)
 ;
 ;
 N ST,QN,QNR S QN=$$QN(A),QNR=$$QNR(A) ; -- WAS $$QN(A)
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 ;
 I 'MRG!(QNR<0) D  Q QNR_" "_$$PCQN^W4PIZZA(QN)
 .I QNR[":" S QNR=$P(QNR,":")
 .I QNR["|" S QNR=$P(QNR,"|")
 ;
 N QN2 S QN2=$$QNA(A)
 ;
 S QN=QNR
 I $E(QN,1,2)="1*" S QN=$E(QN,3,255)
 ;
 I 'COMPRDEL D
 .S ST=QN_"<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)_""">"
 .S ST=ST_-MRG_"="_(QN-MRG)_"</span>"
 ;
 I COMPRDEL D
 .S ST=(QN-MRG)_"&nbsp;<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)_""">"
 .S ST=ST_QN_"-"_MRG_"="_(QN-MRG)_"</span>"
 ;
 Q ST
 ;
 ;
AHST(I) ;
 I $$LVIT(I)'=0 Q ""
 N A S A=$G(@$$^W4TMPORD@(I))
 N AHST S AHST=$$AHP(A)
 I 'AHST Q "&nbsp;"
 Q $J(AHST,2,2)
 ;
AHP(A) Q $P(A,"~",6)
 ;
CMAH(I) ;
 I $$LVIT(I)'=0 Q ""
 I '$$AHST(I) Q ""
 N SRVCMNT S SRVCMNT=$$HRP^W3HZMST(JB,I)
 I $D(@$$^W4TMPORD@("HNH",I)) D
 .N A S A=$G(^(I))
 .N SB1 S SB1=$P(A,"*",4)_" [ "_$$^W4NAME($P(A,"*",2))_" ]" I $L(SB1) D
 ..S SRVCMNT=$S($L(SRVCMNT):SRVCMNT_";",1:"")_SB1
 I '$L(SRVCMNT) Q ""
 Q "<br><span style=""color:darkblue;font-size:"_$$^W3FSZ(8)_""">"_$$H2U^%L1FRM(SRVCMNT)_"</span>"
 ;
NOTSFMVC(I) ;
 I $$LVIT(I)'=0 Q ""
 N A S A=$G(@$$^W4TMPORD@(I))
 N NOTSFMVC S NOTSFMVC=$$NOTSFHNH(A)
 Q NOTSFMVC
 ;
NOTSFHNH(A) Q $P(A,"~",8)
 ;
 ;
QNITT(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 Q $$QNITTA(A,I)
 ;
 ;
QNITTA(A,I) ;
 N ST,QN S QN=$$QN(A)
 N LV S LV=$$LV^W3HZMST(A)
 N MULTY S MULTY=$$^W4MULTY
 ;
 I LV=1,$G(CDST0) D
 .I $$^W4EZI(CDST0)=1 S MULTY=1
 ;
 S QNIT1=$$QNIT1^W3HZMST(JB,I)
 ;
 N IT S IT=$S(LV=0:"",LV=1&MULTY:$G(QNIT0),LV=1&'MULTY:QNIT1,LV=2:QNIT1,1:"")
 N QN1 S QN1=$$QN1^W3HZMST(JB,I)
 S ST=""
 ;
 I 'IT Q ST
 ;
 D
 .I QN="" Q
 .I QN["*",LV=1 S ST=IT_"*"_$P(QN,"*",2,3) Q
 .I QN["*",LV=2,$L(QN,"*")=3 S ST=IT_"*"_$P(QN,"*",3) Q
 .I QN["*",LV=2,$L(QN,"*")=2 S ST=IT_"*"_$P(QN,"*",2) Q
 .;
 .N QN2 S QN2=QN
 .I QN2<0 S QN2=-QN2
 .I LV=1,'MULTY S ST=IT Q
 .I LV=1 S ST=$S(QN0:+QN2\QN0,1:QN2)*IT Q
 .I LV=1 S ST=$S(QN0:+QN2\QN0,1:QN2)*IT Q
 .I LV=2,IT=1 S ST=$S(QN1:+QN2\QN1,1:QN2) Q
 .I LV=2,IT'=1 S ST=IT_"*"_$S(QN1:+QN2\QN1,1:QN2) Q
 ;
 S ST=$$^W4QNR(ST)
 ;
 I $$QNPIZZA(QN) S ST=ST_"<br>"_$$^W4SHOWPZ(QN)
 Q ST
 ;
 ;
QNITR(I) ;
 Q $$ITRAST^W3HZMST(JB,I)
 ;
QNA(A)
 Q $P(A,"~",5)
 ;
QNL(A)
 N QN S QN=$$QN(A)
 I QN["*" S QN=$P(QN,"*",$L(QN,"*"))
 Q QN
 ;
QN(A) ;
 N QN S QN=$$QNA(A)
 ;;I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNDIF(A) Q $P(A,"~",11)
 ;
QNR(A) ;
 N QN S QN=$$QN(A)
 Q $$QNR1(QN)
 ;
QNR1(QN) ;
 I QN["*" S QN=$$^W4QNR(QN)
 Q QN
 ;
 ;
KDISC(A)
 N CD S CD=$$CD(A)
 I $$^W4PRTBH(CD) Q 1
 Q (100-$$AHP(A))*.01
 ;
KDISCADD(A,AHST)
 N CD S CD=$$CD(A)
 N AHST1 S AHST1=$G(AHST)
 I $$^W4PRTBH(CD) Q 1
 I $G(NOTSFMVC) S AHST1=""
 Q (100-AHST1)*(100-$$AHP(A))*.0001
 ;
SUM(I) N A
 N NMB S NMB=$$NMB^W4HZMST($G(ORD))
 I NMB,$G(W4PCHBP)="TM",$$TMBLIMH^W4L(NMB) Q "&nbsp;"
 ;
 N A S A=$G(@$$^W4TMPORD@(I))
 Q $$SUMA(A,I)
 ;
 ;
SUMA(A,I) I $P(A,"~")=1,$G(NOTSFMVC) S AHST=""
 N QN
 I $G(COMPRDEL) S QN=$$QNITR(I)
 I '$G(COMPRDEL) S QN=$$QNR(A)
 ;
 N KDISC S KDISC=$S($$LV(A):$$KDISCADD(A,$G(AHST)),1:$$KDISC(A))
 N MH S MH=$$MH(A)
 ;
 Q $J(QN*MH*KDISC,2,2)
 ;
 ;
TOT(STAM) ;
 N AHUZ
 S AHUZ=$$HNHAH^W4HZMST(ORD)
 N TOT S TOT=$$TOTORD
 N TOTHN S TOTHN=$$TOTHN^W4HZORD(ORD)
 S DMS=$$DMSH^W4HZMST(ORD)
 S TOT=TOT+DMS-(TOTHN*AHUZ*.01)
 Q $J(TOT,2,2)
 ;
TOTORD(STAM) ;
 Q $$TOTORD^W3HZMST(JB)
 ;
AHSTADD ;
 N AHST1 S AHST1=AHST
 I $G(NOTSFMVC) S AHST1=""
 I $$^W4PRTBH($$CD(A)) S AHST1="",HNT=$S(MHADD:0,1:"")
 I 'MHADD S (AHST1,HNT)=""
 N VL
 S VL=$S($G(AHST1)&$G(HNT):+AHST1_"%*"_+HNT_"%",$G(AHST1):+AHST1_"%",$G(HNT):+HNT_"%",HNT=0:0,1:"")
 I $G(NOTSFMVC),'$G(HNT) S VL=""
 I 'VL S VL=$S(VL="":"&nbsp;",1:"0%")
 D W("   <td style=""color:brown;font-size:"_$$^W3FSZ(11)_""">"_VL_"</td>")
 Q
 ;
NMTD(SH) ;
 Q "QN"_SH
 ;
NMTDI(SH) ;
 Q "QNID"_SH
 ;
CMTD(I) ;
 N TD S TD="   <td id=""cmtd"_I_""" class=""hdgr"" "
 I $$PICIT,$D(W4PCHBP) S TD=TD_" colspan="""_(MC-1)_""" "
 S TD=TD_"style=""font-size:"_$$^W3FSZ(12)_";background-color:white;"
 S TD=TD_"text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""" >"
 D W(TD_"&nbsp;")
 I $D(TRCMNTSP) D W("</td>") Q
 ;
 N SRVCMNT
 S SRVCMNT=$$HRP^W3HZMST(JB,I)
 S SRVCMNT=$$^W4CLHRMV(SRVCMNT,1)
 ;
 I '$D(W4PCHBP) D
 .N MANA S MANA=$$GETI^W4DEFMN($$MANA^W3HZMST(JB,I))
 .I $L(MANA) S SRVCMNT=MANA_" "_SRVCMNT
 ;
 I $L(SRVCMNT)&($$LVIT(I)=0) D
 .S SRVCMNT="<span style=""color:black;font-size:"_$$^W3FSZ(9)_""">"_$$H2U^%L1FRM(SRVCMNT)_" </span>"
 .I $$AHST^W3HZMST(JB,I) S SRVCMNT=""
 ;
 N CMNTT S CMNTT=$$CMNTT(I)
 ;
 N CMNT S CMNT=""
 ;
 N A S A=$G(@$$^W4TMPORD@(I+1))
 ;
 I $$CD(A),$$CDC(A),+$$CD(A)=$$GCOUPIT^W4PRM,$$GCOUPIT^W4HZMST(ORD) D
 .S CMNTT=$$GCOUPRCP^W4HZMST(ORD)_" --> "
 .S CMNTT=CMNTT_" [ "_$$GCOUPTEL^W4HZMST(ORD)_" ] "_$$GCOUPPAYER^W4HZMST(ORD)
 .S SRVCMNT=""
 ;
 I $L(CMNTT) D
 .S CMNT="<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)
 .S CMNT=CMNT_";color:"_$S($$LVIT(I):"green",1:$$BGCOLOR^W4CSS)_""">"
 .S CMNT=CMNT_"<b>"_$$H2U^%L1FRM(CMNTT)_"<b/>"
 .S CMNT=CMNT_"</span>"
 ;
 S CMNT=SRVCMNT_CMNT
 ;
 I $D(W4PCHBP) D  Q
 .D W(CMNT_"</td>")
 ;
 I $D(@$$^W4TMPORD@("MVFROM",I)) D  Q
 .N A S A=$G(^(I))
 .N NMBFROM,ORDFROM
 .S ORDFROM=$P(A,";")
 .S NMBFROM=$P(A,";",2)
 .S CMNT="<span style=""color:darkblue;font-size:"_$$^W3FSZ(10)_""">"_ORDFROM_" "_$$^%W1DICT("TABLESHORT")_NMBFROM_"</span>&nbsp;"_CMNT
 .D W(CMNT)
 .D W("   </td>")
 ;
 I $D(@$$^W4TMPORD@("MVTO",I)),'$D(@$$^W4TMPORD@("MVFROM",I)) D  Q
 .N A S A=$G(^(I))
 .N NMBTO
 .S NMBTO=A
 .S CMNT="<span style=""color:darkblue;font-size:"_$$^W3FSZ(10)_"""> "_$$^%W1DICT("TABLESHORT")_NMBTO_"</span>&nbsp;"_CMNT
 .D W(CMNT)
 .D W("   </td>")
 ;
 I 'COMPRDEL,$$QNR^W3HZMST(JB,I)<0,$$LVIT(I)=0,'$D(@$$^W4ORD@(ORD,"BITHLK")) D  Q
 .N ST
 .S ST="<span style=""color:"_$$BGCOLOR^W4CSS_"""><b>"_$$H2U^%L1FRM($$SIBA1^W3HZMST(JB,I))_"</b></span><br/>"
 .S ST=ST_"<span style=""color:"_$S($$EX2KITCH^W3HZMST(JB,I):"red",1:"darkblue")_";font-size:"_$$^W3FSZ(8)_""" >"
 .S ST=ST_"&nbsp;"_$$H2U^%L1FRM($$WHODEL1^W3HZMST(JB,I))
 .S ST=ST_" "_$$TIMEDEL^W3HZMST(JB,I)_" </span>"
 .S ST=ST_"</td>"
 .D W(ST)
 ;
 N GLIST S GLIST=$$GLIST^W3HZMST(JB,I)
 I $L(GLIST) D
 .S CMNT=CMNT_" <span style=""color:black;font-size:"_$$^W3FSZ(8)_""">"
 .I GLIST="*" S GLIST=$$TV^%W1DICT($$^%W1LNG,"ALL")
 .S CMNT=CMNT_$$^%W1DICT("GLIST",GLIST)_"</span>"
 ;
 I CMNT="" S CMNT="&nbsp;"
 D W(CMNT)
 D W("   </td>")
 Q
 ;
HD ;
 Q
 ;
CMNTT(I) ;
 N CMNTT S CMNTT=$$CMNST^W3HZMST(JB,I)
 S CMNTT=$$^W4CLRCMN(CMNTT,1)
 Q CMNTT
 ;
K ;
 I $G(@TMPS@(2,"LAST"))=1 S @TMPS@(2,K)=I
 D W("  <td style=""text-align:center;background-color:orange"">"_K_"</td>")
 S K=K+1
 Q
 ;
W(TXT)
 W TXT,!
 Q
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
KB ;
 N ORD S ORD=$G(%ARG("ORD")) Q:'ORD
 D W("<div>")
 D W("<table width=""100%"" dir="""_$$^%W1DIR_"""><tr>")
  D W("<td style=""color:red;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">")
   D W($$H2U^%L1FRM($$HODAA^W4HZMST(ORD)))
  D W("</td>")
  D W("<td style=""color:darkblue;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">")
   D W($$H2U^%L1FRM($$HRA2^W4HZMST(ORD)))
  D W("</td>")
 D W("</tr></table>")
 D W("</div>")
 ;
 I $D(@$$^W4ORD@(ORD,"BEFOREDEL")) D 
 .D W("<div style=""position:absolute;text-align:center;top:79%;width:99%"">")
 . D BEFOREDEL
 .D W("</div>")
 ;
 D W("<div style=""position:absolute;align:center;top:83%;width:760px"">")
 D W("<table width=""100%"" cellspacing="""_$$^W4KF(10)_""" class=""vw"" border=""0"" dir="""_$$^%W1DIR_""" >")
 N OKTSF S OKTSF=0
 N OKDEL S OKDEL=0
 D W("<tr>")
  D W("<td width=""4%"">&nbsp;</td>")
  D W("<td style=""font-size:"_$$^W3FSZ(16)_";color:brown"">")
  I $$^W4DEL(ORD) D 
  .N WHODEL,WHODEL1 S WHODEL1=""
  .N IND S IND=$O(@$$^W4ORD@(ORD,"BIT",9999),-1) I IND="" D W("&nbsp;") Q
  .S WHODEL=$$WHODEL^W4HZMST(ORD,IND)
  .I 'WHODEL D W("&nbsp;") Q
  .S WHODEL1=$$H2U^%L1FRM($$^W4NAME(WHODEL))
  .N POS,TIME S POS=$$DELPOS^W4HZMST(ORD,IND)
  .S TIME=$$ZMANDEL^W4HZMST(ORD,IND)
  .N ST S ST=$$^%W1DICT("WHODEL")_" : "_WHODEL1_"<br><span style=""color:darkblue;font-size:"_$$^W3FSZ(10)_""">"_TIME_" "_$$^%W1DICT("POSNUMBER")_" "_$$DELPOS^W4HZMST(ORD,IND)_"</span>"
  .D W(ST) 
  ;
  D W("</td>")
  D W("<td width=""20%"" align=""center"">")
  D
  .D  ; -- BDIKA IM ESH TOSAFOT
  ..N I
  ..S I="" F  S I=$O(@$$^W4ORD@(ORD,I)) Q:I=""  I I,$D(^(I))>10 S OKTSF=1 Q
  .D  ; -- BDIKA IM ESH BITULIM
  ..N I
  ..S I="" F  S I=$O(@$$^W4ORD@(ORD,I)) Q:I=""  I I,$$QN^W4HZMST(ORD,I)<0 S OKDEL=1 Q
  .;
  .I OKTSF D
  ..D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT($S(COMPRADD:"OPENVIEW",1:"COMPRESSVIEW"))_""" onClick="""_$S(COMPRADD:"OpenAdd()",1:"CloseAdd()")_""" />")
  .I 'OKTSF D W("&nbsp;")
  .D W("</td><td width=""20%"">")
  .I OKDEL,$$TSTMRG^W4HZMST(ORD) D
  ..D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT($S(COMPRDEL:"OPENDEL",1:"COMPRDEL"))_""" onClick="""_$S(COMPRDEL:"OpenDel()",1:"CloseDel()")_""" />")
  .I 'OKDEL D W("&nbsp;")
  ;
  D W("</td>")
  ;
  D W("<td width=""13%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGDN")_""" "_$$^W4TOUCH_"=""PageDown()"" />")
  D W("</td><td width=""13%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGUP")_""" "_$$^W4TOUCH_"=""PageUp()"" />")
  D W("</td>")
 D W("</tr>")
 D W("</table>")
 D W("</div>")
 ;
 I $D(@$$^W4ORD@(ORD,"ISHUR")) D
 .W "<div style=""position:absolute;align:center;top:85%;left:35%"">",!
 .N A S A=$G(^("ISHUR"))
 .W "<span style=""text-align:center;color:red;font-size:"_$$^W3FSZ(14)_""" >"
 . N WHO,DAT,EMDA
 . S DAT=$P(A,"\",1)
 . S WHO=$P(A,"\",2)
 . S EMDA=$P(A,"\",3)
 . W $$^%W1DICT("AUTHORISEDBY",WHO_"<>"_DAT_"<>"_EMDA)
 .W "</span>",!
 .W "</div>",!
 ;
 I $$DEL^W4DEL(ORD) D
 .N A S A=$G(@$$^W4GL("W4LINK")@(ORD))
 .N WHO,WHO1 S WHO=$P(A,"~",5) Q:WHO=""
 .N DAT,TIME,EMDA S (DAT,TIME,EMDA)=""
 .I WHO["^" D
 ..S DTIME=$ZD($P(WHO,"^",2),"DD.MM.YY  24:60")
 ..S EMDA=$P(WHO,"^",3),WHO=$P(WHO,"^")
 . 
 .S WHO1="" I WHO S WHO1=$$^W4NAME(WHO)
 .W "<div style=""position:absolute;align:center;top:95%;left:35%"">",!
 .W "<span style=""text-align:center;color:red;font-size:"_$$^W3FSZ(14)_""" >"
 . W $$^%W1DICT("DELETEDBY",WHO1_"<>"_DTIME_"<>"_EMDA)
 .W "</span>",!
 .W "</div>",!
 ;
 Q
 ;
 ;
BEFOREDEL ;
 N A S A=$G(^("BEFOREDEL"))
 N TSHL,HNH,HNHP,DMSH
 D PRS^%L1FRM(A,"TSHL\HNH\HNHP\DMSH","\")
 D W("<div dir="""_$$^%W1DIR_""" style=""text-align:center;font-size:"_$$^W3FSZ(16)_";color:brown"">")
 N ST S ST=$$^%W1DICT("BEFOREDEL")_" : "
 S ST=ST_$$^%W1DICT("TOPAY")_" "_$J(TSHL,2,2)_$$NBSP^%L1FRM(5)
 S ST=ST_$$^%W1DICT("DISC")_" "_$J(HNH,2,2)_$$NBSP^%L1FRM(5)
 S ST=ST_$$^%W1DICT("DISCITTOT")_" "_$J(HNHP,2,2)_$$NBSP^%L1FRM(5)
 S ST=ST_$$^%W1DICT("DMSH")_" "_$J(DMSH,2,2)
 D W(ST)
 D W("</div>")
 Q
 ;
LNDN(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))+1
 N I S I=+$G(@TMPS@(2,K)) I 'I Q 0
 I '$D(@$$^W4TMPORD@(I)) Q 0
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
LNUP(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))-1
 I K<1 Q 0
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
PGDN(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))+11
 N I S I=+$G(@TMPS@(2,K)) I 'I Q 0
 I '$D(@$$^W4TMPORD@(I)) Q 0
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
PGUP(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))-11
 I K<1 S K=1
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
DOP(I) ;
 S DOP=""
 N SHOWST S SHOWST=$G(@$$^W4PRM@("SHOWST"))
 N ST S ST=$G(@$$^W4TMPORD@("ST",I))
 I 'SHOWST Q
 I SHOWST D
 .N CDOV S CDOV=$P(ST,"\") Q:'CDOV
 .S DOP=DOP_" <span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"
 .;S DOP=DOP_"<br>"
 .S DOP=DOP_$$H2U^%L1FRM($$SHORT^W4NAME(CDOV))_"</span>&nbsp;&nbsp;"
 Q
 ;
NOCOMMENT(STAM) ;
 I $G(%ARG("NOCMNT")) Q 1
 I $G(BO) Q 1
 N MYDVN S MYDVN=$$^W4MYDVN
 ;;I $$KUPA^W4PLUK(MYDVN) Q 1
 Q 0
 ;
 ;
INIT ;
 D ^%W1ARG
 D KILLUR^W4MENU(1)
 D KILL^%W1PRM("W4MENU")
 D KILL^%W1PRM("STOUTBIT")
 D TMPS^W4MENU K @TMPS@("UR")
 N ORD S ORD=$G(%ARG("ORD"))
 ;
 I $$STAGE^W4PRM D
 .I ORD'<1 D PUT^%W1PRM("STAGE",+$$STAGE^W4HZMST(ORD)) ; -- 11/06/26
 ;
 D PUT^%W1PRM("VIEW",+$G(%ARG("VIEW")))
 I $G(%ARG("REM")) D PUT^%W1PRM("REM",$G(%ARG("REM")))
 I $L($G(%ARG("DLVWEB"))) D PUT^%W1PRM("DLVWEB",$G(%ARG("DLVWEB"))) D ^W4BGBODY
 D KILL^%W1PRM("W4CP")
 ;
 I $G(%ARG("PWRLNK")) D
 .D PUT^%W1PRM("DLVCSR",1)
 .D PUT^%W1PRM("PWRLNK",1)
 .D ^W4BGBODY
 ;
 D INITORD(ORD)
 Q
 ;
 ;
INITORD(ORD) ;
 S ORD=$G(ORD)
 ;
 I ORD D
 .D PUT^%W1PRM("HZM",ORD)
 .D PUT^%W1PRM("NMB",$$NMB^W4HZMST(ORD))
 .K @$$^W4ORD@(ORD,"SHOWITRA")
 ;
 I ORD>0 D
 .D KILL^%W1PRM("PYTOT"),KILL^%W1PRM("HZMMAIN") 
 ;
 D:$G(%ARG("KILLHRF")) KILL^%W1PRM("HRF")
 ;
 D KILL3^W4MENU ; --- *** LEV 31/05/14
 D KILL^%W1PRM("CURDEP")
 D KILL^%W1PRM("SUBGR")
 ;
 D CLEARTMPS
 I $L($G(%ARG("WIN"))) D PUT^%W1PRM("WIN",%ARG("WIN"))
 Q
 ;
 ;
CLEARTMPS ;
 D TMPS^W4MENU
 N N S N="" F  S N=$O(@TMPS@(N)) Q:N=""  D
 .I N'="PG",N'="CURSUG",N'="STATUS",N'="SHULH" K @TMPS@(N)
 Q
 ;
QNPIZZA(QN) ;
 Q $$QNPZ^W4PIZZA(QN)
 ;
NOPCHBCD(STAM) ;
 I $G(%ARG("NOCD")) Q 1
 I $D(W4PCHBP)&$$NOPCHBCD^W4PRM Q 1
 Q 0
 ;
PARNOHN(HZM) ;
 Q $$^W4PNOHN(HZM)
 ;
BSLPAR(PAR) ;
 I $$BSL^W4PRM,PAR=$$PARBON^WBPRM!(PAR=$$PARNKD^WBPRM) Q 1
 Q 0
 ;
NOVWDEL(STAM) ; 
 ;;Q 0
 I $G(%ARG("NOVWDEL"))=0 Q 0
 I $G(%ARG("NOVWDEL"))=1 Q 1
 Q $$NOVWDEL^W4PRM
 ;
LMAM(STAM) ; 
 Q $G(%ARG("LMAM")) 
 ;
ZW(STAM) ; 
 Q "<span style=""color:red"">*</span>" 
 ;
DESC(PRT) ; 
 N DESC S DESC=""
 I $G(%ARG("DESCR")) D
 .S PRT=$TR(PRT,"*","")
 .S DESC=$$DESC^W4P(PRT) Q:'$L(DESC)
 .I DESC[" == " S DESC=$P(DESC," == ",$S($$^%W1LNG="H":2,1:1))
 .S DESC="<br><span style=""font-size:"_$$^W3FSZ(8)_";color:brown"">"_DESC_"</span>"
 Q DESC
 ;
SRCFN(STAM) ;  
 N SRCFN
 S SRCFN="w4ordvwfn.jsp?JB="_$G(JB)_"&ORD="_$G(%ARG("ORD"))
 S SRCFN=SRCFN_"&VIEW="_$G(%ARG("VIEW"))_"&KILLHRF="_$G(%ARG("KILLHRF"))
 S SRCFN=SRCFN_"&WIN="_$G(%ARG("WIN"))_"&HIST="_$G(%ARG("HIST"))
 S SRCFN=SRCFN_"&VT="_$G(%ARG("VT"))
 S SRCFN=SRCFN_"&OPNWND="_$G(%ARG("OPNWND"))
 S SRCFN=SRCFN_"&WHO="_$G(%ARG("WHO"))
 Q SRCFN
 ;
NOPRC(STAM) ; 
 I $G(%ARG("NOPRC")) Q 1 
 Q 0 
 ; 
PICIT(STAM) ; 
 I $G(%ARG("SHOWPIC")) Q 1
 Q 0 
 ;
SHOWPIC(CD) ; 
 N ST S ST=""
 I '$$PICEX(CD) Q ""
 S ST="<img src="""_$$PIC^W4P(CD)_""" width=""110"" height=""70"" />"
 Q ST  
 ;
TRCMNT(PR) ; 
 D W("<tr><td style=""background-color:yellow"">&nbsp;</td>")
  D CMTD(I)
 D W("</tr>")
 Q
 ;
NODISC(STAM) ;
 I '$D(W4PCHBP) Q 0
 N N,TMPORD S OK=1
 S TMPORD=$$^W4TMPORD
 S N="" F   S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:'OK
 .S HN=$$HNST^W3HZMST(JB,N)
 .I HN S OK=0
 Q OK
 ;
PICEX(NCD) ;
 N (JB,%ARG,%REM,NCD,PRE)
 S MSD=$$GETP^%W1PRM("MSD")
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_MSD_"/itp/"
 S TYPE="jpg"
 S:'$D(PRE) PRE="pic"
 ;
 I NCD="" Q 0
 ;
 S NCD=$TR(NCD,"*","")
 S PICNAME=PRE_NCD_"."_TYPE
 S FLPICL=PATHL_PICNAME
 ;
 I $$EXIST^%L1ZOS(FLPICL) Q 1
 Q 0 
 ;
 ;
SMB(CD) ;
 S CD=$TR(CD," *","")
 N SP S SP="&nbsp;"
 I $G(CD)="" Q SP
 I '$$DELIS^W4PRM Q SP 
 ;
 S SMB=SP
 N KF S KF=$G(@$$^W4GL("W4KFM")@(CD)) I KF D 
 .I $D(W4PCHBP)&'$$SHOW^W4PCHBP!'$D(W4PCHBP) D
 ..S SMB="<span style=""font-size:"_$$^W3FSZ(7)_";color:grey""> [*"_KF_"]</span>"
 ;
 N KF2 S KF2=$G(@$$^W4GL("W4KFM2")@(CD)) I KF2 D 
 .I $D(W4PCHBP)&'$$SHOW^W4PCHBP!'$D(W4PCHBP) D
 ..S SMB="<span style=""font-size:"_$$^W3FSZ(7)_";color:green""> [*"_KF2_"]</span>"
 ;
 Q SMB 
 ;
 ;
ZICHLK(ORD) ; 
 I '$$PAPJ^W4PRM Q "" 
 N PAR S PAR=$P($G(@$$^W4ORD@(ORD,1)),"\")
 I PAR'=3950 Q ""
 N HZLAKNOM S HZLAKNOM=$$SPA^%L1FRM($$HRAED^W4HZMST(ORD))
 I 'HZLAKNOM Q ""
 N ZICORD S ZICORD=$G(@$$^W4GL("HZLINKM")@(HZLAKNOM))
 Q ZICORD 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORDVW0
W4ORDVW(ORD,COMPRADD,COMPRDEL,BO) ; [ 19.02.20 12:41 ] [ 18.02.20 10:35 ] [ 17.02.20 22:35 ] 
 ;----------------------------------------------------------------------------
 N (%ARG,JB,ORD,%REM,COMPRADD,COMPRDEL,BO,W4PCHBP) D ^W4IN
 S COMPRADD=+$G(COMPRADD)
 S COMPRDEL=+$G(COMPRDEL)
 S BO=+$G(BO)
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W4ORDVW")
 D PUT^%W3DEB("W4ORDVW","W3ORDLS=W3ORDLS & ARG=[%ARG")
 Q:'$G(ORD)
 Q:$$^W4GETHZ(ORD)'=1
 I '$$TSTMRG^W4HZMST(ORD) S COMPRDEL=0
 ;
 D TMPS^W4MENU
 ;
 D ^W4OPORD(ORD)
 ;
 ;-------------  HEADER ------------------------------
 ;
 D W("<div align=""center"" >")
 ;
 I $$MM^W4PRM D
 .N MSD S MSD=$$MSDHZM^W4HZMST(ORD)
 .W "<span dir="""_$$^%W1DIR_""" style=""color:darkgeen;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_""">"
 . W $S($$GETP^%W1PRM("FAXHTM"):"",1:MSD_" ")_$$H2U^%L1FRM($$MSD^W3R(MSD))
 .W "</span><br>",!
 ;
 I $$I^W4DEL(ORD) D
 .N ORDDEL S ORDDEL=$G(^(ORD))
 .W "<span onMouseUp=""ShowOrd('"_ORDDEL_"')"" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 .W $$^%W1DICT("DELETINGOFORDER",ORDDEL)
 .W "</span><br>",!
 ;
 I $$^W4DEL(ORD) D  G NOHN
 .N ORDDEL S ORDDEL=$G(^(ORD))
 .W "<span onMouseUp=""ShowOrd('"_ORDDEL_"')"" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 .W $$^%W1DICT("DELETEDBYORDER",ORDDEL)
 .W "</span><br>",!
 ;
 I $G(@$$^W4GL("P1MOVE")@(P1DZ,ORD)) D  G NOHN
 .N NMBOLD S NMBOLD=$P($G(^(ORD)),"\",2)
 .W " <span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""">"
 .W $$^%W1DICT("MOVINGFROMTABLE",NMBOLD)
 .W "</span><br>",!
 ;
 I $G(@$$^W4ORD@(ORD,"COPYDEL")) D
 .N ORDFROM S ORDFROM=$G(^("COPYDEL"))
 .W "<span onMouseUp=""ShowOrd('"_ORDFROM_"')"" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(22)_";text-decoration:underline;cursor:pointer"">"
 .W $$^%W1DICT("RESTOREDFROMORDER",ORDFROM)
 .W "</span><br>",!
 ;
NOHN ;
 I $$PARNOHN(ORD) D
 .W " <span dir="""_$$^%W1DIR_""" style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)_""">"
 .W $$^%W1DICT("MSGDISC*")
 .W "</span><br>",!
 ;--------------------------------------------------------------------------
 ;                       BODY
 ;--------------------------------------------------------------------------
 N WDTB S WDTB=100
 I $$NOCOMMENT S WDTB=98
 I $G(%ARG("WDTB")) S WDTB=%ARG("WDTB")
 ;
 N TB S TB="<table id=""TbOrd"" width="""_WDTB_"%"" cellspacing=""0"" class=""vw"""
 S TB=TB_" border=""1"" "
 S TB=TB_" style=""font-size:"_$$^W3FSZ(12)
 S TB=TB_""" "
 S TB=TB_"dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >"
 D W(TB)
 N TR S TR="<tr style=""background-color:"_$$FNFG^W4CSS_";color:white"">"
 I $G(%ARG("PRINT"))!$G(%ARG("MAIL"))!$G(%ARG("FAX")) D
 .S TR="<tr style=""background-color:white;color:black"">"
 D W(TR)
 S CC=0
 S WD=4 I $$PICIT S WD=3
 S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("NPP")_"</th>")
 I '$$NOPCHBCD D
 .S WD=11 I $$PICIT S WD=9
 .S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("ITEMCODE")_"</th>")
 ;
 S WD=24 I $$PICIT S WD=20
 S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("ITEMNAME")_"</th>")
 ;
 I $$PICIT D
 .S CC=CC+1 D W("  <th>"_$$^%W1DICT("PICTURE")_"</th>")
 ;
 I '$$NOPRC D
 .S CC=CC+1 D W("  <th style=""width:10%"">"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th style=""width:8%"">"_$$^%W1DICT("QUANT")_"</th>")
 ;
 I '$$NOPRC D
 .S WD=10 I $$PICIT S WD=8
 .S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("DISCOUNT")_"</th>")
 .S WD=12 I $$PICIT S WD=10
 .S CC=CC+1 D W("  <th style=""width:"_WD_"%"">"_$$^%W1DICT("SUM")_"</th>")
 ;
 I '$$NOCOMMENT D
 .;;S CC=CC+1  D W("  <th>"_$$^%W1DICT("COMMENT2KITCHEN")_"</th>")
 .S CC=CC+1  D W("  <th>"_$$^%W1DICT("COMMENT")_"</th>")
 D W(" </tr>")
 ;
 S MC=CC
 I $$BSL^W4PRM,$$BSCARD^W3HZMST(JB) D
 .W "<tr><td colspan="""_MC_""" style=""background-color:yellow;text-align:center;cursor:pointer"" "
 . W " onMouseUp=""BLShowBonus()"" "
 . W ">"_$$H2U^%L1FRM($$BSCLUB1^W3HZMST(JB))_"<br>"
 . W $$BSCARD^W3HZMST(JB)_" "_$$H2U^%L1FRM($$BSNAME^W3HZMST(JB))
 . W "</td>",!
 .W "</tr>",!
 ;
 S PR0=1
 N K
 I '($D(@TMPS@(2,"LAST"))#2) S @TMPS@(2,"LAST")=1
 S K=+$G(@TMPS@(2,"LAST"))
 N K1 S K1=$G(@TMPS@(2,K)) I K1<1 S K1=1
 N QNIT0,QN0,QNR,CDST0
 S CDST0="",QN0="",QNIT0="",QNIT1="",QNR="",PRMIN=0,CMAH="",AHST=""
 ;
 N I S I=K1-1 F  S I=$O(@$$^W4TMPORD@(I)) Q:I=""  I I D  D FIRE^W4HZORD(I,8)
 .N A,URST S A=$G(^(I)),URST=$P(A,"~")
 .S QNR=$$QNR^W3HZMST(JB,I),QN0=QNR
 .I QNR<0,COMPRDEL,$$TSHL^W3HZMST(JB)'<0 Q
 .
 .I URST=0 D  S PR0=1
 ..I $$PICIT,K>1 D
 ...D W("<tr style=""height:4px;font-size:"_$$^W3FSZ(5)_"""><td colspan="""_MC_""">&nbsp;</td></tr>")
 ..S HNT="",AHST="",QNIT1=""
 ..S QNIT0=$$ITRAST^W3HZMST(JB,I)
 ..I $G(COMPRDEL),'QNIT0,$$NOVWDEL Q
 ..S PRMIN=0 I QNR<0 S PRMIN=1
 ..I PRMIN,$G(@$$^W4TMPORD@("MVTO",I)) S PRMIN=2
 ..I '$$NOCOMMENT,'$D(W4PCHBP) D SENDED^W4HZORD(I,8)
 ..N PRT S PRT=$$CD(A)
 ..I $D(W4PCHBP),PRT=$$HZMH^W3PRM Q
 ..S CDST0=PRT
 ..N DELIMST0 S DELIMST0=$$DELIM^W4P(CDST0)
 ..S PRT=$$SMB^W4BLNMVC(PRT)_PRT
 ..S STYLE=""
 ..I $$BSLPAR(CDST0) D
 ...S STYLE=" style=""background-color:lightyellow"" "
 ..I DELIMST0 D
 ...S STYLE=$$^W4DLMSTL
 ...S PRT=""
 ..
 ..D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" "_$$CLASSBG_" "_STYLE_">")
 ..D K
 ..
 ..I '$$NOPCHBCD D
 ...N PRTCD S PRTCD=$$PRTCD(PRT)
 ...D W("  <td>&nbsp;"_PRTCD_"</td>")
 ..
 ..N NAM,DOP S NAM=$$NAM(A)_$$DESC(PRT)
 ..I '$$NOCOMMENT S DOP="" D DOP(I) S NAM=NAM_DOP
 ..D W("   <td style='font-size:"_$$^W3FSZ(12)_";font-weight:bold'>&nbsp;"_NAM_"</td>")
 ..
 ..I $$PICIT D
 ...D W("   <td align=""center"" dir=""LTR"">&nbsp;"_$S(DELIMST0:"&nbsp;",1:$$SHOWPIC(PRT))_"</td>")
 ..
 ..I DELIMST0 D  Q
 ...N COLSPAN S COLSPAN=MC-4+$$NOPCHBCD-$$PICIT
 ...I $$NOCOMMENT,'$$NOPRC S COLSPAN=COLSPAN+1
 ...D W("   <td colspan="""_COLSPAN_""">&nbsp;</td>")
 ...I '$$NOCOMMENT D W("<td>"_$$H2U^%L1FRM($$CMNST^W3HZMST(JB,I))_"</td>")
 ..
 ..I '$$NOPRC D
 ...N MH S MH=$$MH(A)
 ...D W("   <td align=""center"" dir=""LTR"">&nbsp;"_$$SHOWMH(MH,A)_"</td>")
 ..
 ..D W("   <td align=""center"" dir=""LTR"" "_$S(PRMIN:$$CLASS(PRMIN),1:"")_">&nbsp;"_$$QNIT(I)_"</td>")
 ..
 ..I '$$NOPRC D
 ...S CMAH=$$CMAH(I)
 ...S AHST=$$AHST(I)
 ...S NOTSFMVC=$$NOTSFMVC(I)
 ...D W("   <td class=""disc"" >&nbsp;"_AHST_CMAH_"</td>")
 ...
 ...N STR S STR="   <td align=""center"" dir=""LTR"" "_$$CLASS(PRMIN)
 ...I $$BSLPAR($$CD(A)) S STR=STR_" style=""background-color:lightyellow"" "
 ...S STR=STR_" >&nbsp;"_$$SUM(I)_"</td>"
 ...D W(STR)
 ..
 ..I '$$NOCOMMENT D CMTD(I)
 .. 
 ..D W("</tr>")
 .
 .
 .I URST>0 D  ;---------- ADDONS ----------------
 ..I $$CDA(A)!$$CDC(A)!$$CDH(A) Q
 ..
 ..I COMPRADD D  S PR0=0 Q  ;----- LO LEHAZIG TOSAFOT
 ...Q:'PR0
 ...S MHADD=$$MHADD(I,QNIT0)
 ...I MHADD<0,'COMPRDEL S MHADD=-MHADD
 ...
 ...D W("  <tr "_$$CLASSBG_" style=""color:green;font-size:"_$$^W3FSZ(11)_""" id=""ADD"_I_""" name=""ADD"_I_""" >")
 ...D K
 ...
 ...I '$$NOPCHBCD D
 ....D W("    <td>&nbsp;</td>")
 ...
 ...D W("   <td>"_$$^%W1DICT("ADDITIONS")_"</td>")
 ...
 ...I $$PICIT D W("<td>&nbsp;</td>")
 ...
 ...I '$$NOPRC D
 ....N ST S ST="   <td dir=""LTR"" align=""center"""
 ....I MHADD S ST=ST_" style=""color:black"""
 ....S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,2,2)_"&nbsp;</td>"
 ....D W(ST)
 ...
 ...D W("   <td>&nbsp;</td>")
 ...
 ...I '$$NOPRC D
 ....D W("   <td>&nbsp;</td>")
 ....
 ...N ST S ST=""
 ...I '$$NOPRC D
 ....S ST="   <td dir=""LTR"" align=""center"""
 ....I MHADD,'$G(PRMIN) S ST=ST_" style=""color:black"""
 ....S ST=ST_$$CLASS(PRMIN)
 ....N SUMADD
 ....S SUMADD=MHADD*$S($G(PRMIN):-1,1:1)
 ....I 'QNIT0,COMPRDEL S SUMADD=0
 ....S ST=ST_">&nbsp;&nbsp;"_$J(SUMADD,2,2)_"&nbsp;</td>"
 ...
 ...I '$$NOCOMMENT S ST=ST_"<td>&nbsp;</td>"
 ...D W(ST)
 ..;
 ..I '$$QNIT(I) Q
 ..
 ..;-------------- LEHAZIG TOSAFOT ---------------------
 ..N QNITI S QNITI=$$QNIT(I)
 ..S ST="  <tr "_$$CLASSBG
 ..S ST=ST_" style=""color:"_$$COLORADD^W4CSS(URST)_";font-size:"_$$^W3FSZ(11)_""" "
 ..S ST=ST_" id=""LV"_URST_I_""" name=""LV"_URST_I_""" >"
 ..D W(ST)
 ..
 ..D K
 ..
 ..I '$$NOPCHBCD D
 ...D W("    <td>&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$CD(A))_"</td>")
 ..
 ..D W("   <td")
 .. I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_$$DESC($$CD(A))_"</td>")
 ..
 ..I $$PICIT D
 ...D W("<td>&nbsp;</td>")
 ..
 ..N MHADD S MHADD=$$MH(A)
 ..N HNT S HNT=$$AHP(A)
 ..
 ..I '$$NOPRC D
 ...N ST S ST="   <td dir=""LTR"" style=""text-align:center"
 ...S ST=ST_""""
 ...S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:$$SHOWMH(MHADD,A))_"</td>"
 ...D W(ST)
 ...
 ..S ST="<td dir=""LTR"" "_$$CLASS(PRMIN)_" style=""text-align:center"">"
 ..;
 ..S ST=ST_"&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:QNITI)
 ..S ST=ST_"</td>"
 ..D W("   "_ST)
 ..
 ..I '$$NOPRC D
 ...D AHSTADD
 ...
 ...S ST="<td dir=""LTR"" style=""text-align:center"""_$$CLASS(PRMIN)_" >"
 ...N SUM S SUM=$$SUMA(A,I)
 ...N ST1 S ST1=SUM
 ...S ST=ST_"&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ST1)
 ...S ST=ST_"</td>"
 ...D W(ST)
 ..
 ..I '$$NOCOMMENT D
 ...D CMTD(I)
 ..
 ..D W("  </tr>")
 ;
 W !
 ;
 I '$$NOCOMMENT,'$D(W4PCHBP) D SENDED^W4HZORD(99999,8)
 ;
 D W("</table>")
 D W("</div>")
 ;
 D W("<br>")
 ;
 S ERMSG=$$GET^%W1PRM("ERMSG")
 I ERMSG["<UNDEF" S ERMSG=""
 ;
 ;
 I $L(ERMSG) D
 .W "<script>",!
 .W " MsgI('"_$$CLWEB^%L1FRM($P(ERMSG,";",2,2))_"')",!
 .D KILL^%W1PRM("ERMSG")
 .W "</script>",!
 Q
 ;
PRTCD(PRT)
 I $D(W4PCHBP),PRT,$G(@$$^W4GL("W4BCODE")@(PRT)) Q $G(^(PRT))
 Q PRT
 ;
CLASS(PRMIN) ;
 I PRMIN=1 Q " class=""vwmin1"""
 I PRMIN=2 Q " class=""vwmin2"""
 I COMPRDEL,'$G(QNIT0) Q " class=""vwmin1"""
 Q " class=""vw0"""
 ;
CLASSBG(STAM) ;
 I PRMIN=1!($G(QNITI)<0) Q "class=""vwmin1"""
 I PRMIN=2 Q "class=""vwmin2"""
 I COMPRDEL,'$G(QNIT0) Q "class=""vwmin1"""
 Q "class=""vw0"""
 ;
 ;
MHADD(I,QNIT0) ;
 N MHADD,A1,A0,CD0,A1 S MHADD=0,A0="",A1="",CD0=""
 N I0 S I0=I+1 F  S I0=$O(@$$^W4TMPORD@(I0),-1) Q:I0=""  I I0 S A0=$G(^(I0)) Q:'$P(A0,"~")
 I $P(A0,"~")=0 S CD0=$P(A0,"~",2)
 ;
 N IT1 S IT1=1
 N I1 S I1=I-1 F  S I1=$O(@$$^W4TMPORD@(I1)) Q:I1=""  I I1 S A1=$G(^(I1)) Q:'$P(A1,"~")  D
 .N QNA,MHA
 .N KDISC S KDISC=$$KDISCADD(A1,$G(AHST))
 .S MHA=$J($P(A1,"~",4)*KDISC,2,2)
 .S QNA=$$QNA(A1)
 .I COMPRDEL,$$TSHL^W3HZMST(JB)>0,QNA<0 Q
 .I COMPRDEL,$$LV^W3HZMST(A1)=1 S QNA=$$ITRAST^W3HZMST(JB,I1)
 .
 .I COMPRDEL,$$LV^W3HZMST(A1)=2 D
 ..S QNA=$$QNA^W3HZMST(A1)
 ..S QNA=$$QNIT1^W3HZMST(JB,I1)*QNA
 .
 .I QNA["*" S QNA=QNA*$P(QNA,"*",2)
 .
 .;;W "A1="_A1_"  QNA="_QNA_" MHA="_MHA,!
 .S MHADD=MHADD+(MHA*QNA)
 ;
 I $$LMAM S MHADD=MHADD*100/(100+$$AHMAM^W4HZMST(ORD))
 Q MHADD
 ;
 ;
SHOWMH(MH,A)
 N NMB S NMB=$$NMB^W4HZMST(ORD)
 I NMB,$G(W4PCHBP)="TM",$$TMBLIMH^W4L(NMB) Q "&nbsp;"
 Q $J(MH,5,2)_$S($$^W4PRTBH($$CD(A))&MH:$$ZW,1:"")
 ;
LVIT(I) ;
 Q $$LVST^W3HZMST(JB,I)
 ;
ALIGN(STAM) ;
 I $$^%W1DIR="RTL" Q " align=""left"""
 Q " align=""right"""
 ;
CDA(A) ;
 I $E($$CD(A))="A" Q 1
 I $$CD(A)[$$H2U^%L1FRM("A") Q 1
 Q 0
 ;
SUG(A) ;
 I $G(A)="" Q "&nbsp;"
 I $G(ORD) N JB S JB=+ORD
 Q $$H2U^%L1FRM($$SUG1^W4P($$CD(A)))
 ;
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
 ;
CDH(A) ;
 I $E($$CD(A))="H" Q 1
 Q 0
 ;
LV(A) ;
 Q $P(A,"~")
 ;
CD(A) ;
 N NM
 S NM=$P(A,"~",2)
 I NM="" Q "&nbsp;"
 Q NM
 ;
NAM(A) ;
 N NM
 ;
 S NM=$$H2U^%L1FRM($$CNWEB^%L1FRM($P(A,"~",3)))
 I NM="" Q "&nbsp;"
 ;;I $$^W4PRTBH($$CD(A)) S NM=$$ZW_NM
 Q NM
 ;
MH(A) ;
 N MH
 S MH=$P(A,"~",4)
 I MH="" Q "&nbsp;"
 I $$LMAM S MH=MH*100/(100+$$AHMAM^W4HZMST(ORD))
 Q $J(MH,2,2)
 ;
QNIT(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 N LV S LV=$P(A,"~")
 N PREZATI S PREZATI=$$PREZATI^W3HZMST(JB,I)
 ;
 I LV,'PREZATI,COMPRDEL Q $$QNITTA(A,I)
 ;
 N ST,QN S QN=$$QNR(A) ; -- WAS $$QN(A)
 N MRG S MRG=$$MRG^W3HZMST(JB,I)
 ;
 I 'MRG!($$QNR(QN)<0) Q QN_$$PCQN^W4PIZZA(QN)
 ;
 N QN2 S QN2=$$QNA(A)
 ;
 I $E(QN,1,2)="1*" S QN=$E(QN,3,255)
 ;
 I 'COMPRDEL D
 .S ST=QN_"<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)_""">"
 .S ST=ST_-MRG_"="_(QN-MRG)_"</span>"
 ;
 I COMPRDEL D
 .S ST=(QN-MRG)_"&nbsp;<span style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(8)_""">"
 .S ST=ST_QN_"-"_MRG_"="_(QN-MRG)_"</span>"
 ;
 Q ST
 ;
 ;
AHST(I) ;
 I $$LVIT(I)'=0 Q ""
 N A S A=$G(@$$^W4TMPORD@(I))
 N AHST S AHST=$$AHP(A)
 I 'AHST Q "&nbsp;"
 Q $J(AHST,2,2)
 ;
AHP(A) Q $P(A,"~",6)
 ;
CMAH(I) ;
 I $$LVIT(I)'=0 Q ""
 I '$$AHST(I) Q ""
 N SRVCMNT S SRVCMNT=$$HRP^W3HZMST(JB,I)
 I $D(@$$^W4TMPORD@("HNH",I)) D
 .N A S A=$G(^(I))
 .N SB1 S SB1=$P(A,"*",4)_" [ "_$$^W4NAME($P(A,"*",2))_" ]" I $L(SB1) D
 ..S SRVCMNT=$S($L(SRVCMNT):SRVCMNT_";",1:"")_SB1
 I '$L(SRVCMNT) Q ""
 Q "<br><span style=""color:darkblue;font-size:"_$$^W3FSZ(8)_""">"_$$H2U^%L1FRM(SRVCMNT)_"</span>"
 ;
NOTSFMVC(I) ;
 I $$LVIT(I)'=0 Q ""
 N A S A=$G(@$$^W4TMPORD@(I))
 N NOTSFMVC S NOTSFMVC=$$NOTSFHNH(A)
 Q NOTSFMVC
 ;
NOTSFHNH(A) Q $P(A,"~",8)
 ;
 ;
QNITT(I) ;
 N A S A=$G(@$$^W4TMPORD@(I))
 Q $$QNITTA(A,I)
 ;
 ;
QNITTA(A,I) ;
 N ST,QN S QN=$$QN(A)
 N LV S LV=$$LV^W3HZMST(A)
 N MULTY S MULTY=$$^W4MULTY
 ;
 I LV=1,$G(CDST0) D
 .I $$^W4EZI(CDST0)=1 S MULTY=1
 ;
 S QNIT1=$$QNIT1^W3HZMST(JB,I)
 ;
 N IT S IT=$S(LV=0:"",LV=1&MULTY:$G(QNIT0),LV=1&'MULTY:QNIT1,LV=2:QNIT1,1:"")
 N QN1 S QN1=$$QN1^W3HZMST(JB,I)
 S ST=""
 ;
 I 'IT Q ST
 ;
 D
 .I QN="" Q
 .I QN["*",LV=1 S ST=IT_"*"_$P(QN,"*",2,3) Q
 .I QN["*",LV=2,$L(QN,"*")=3 S ST=IT_"*"_$P(QN,"*",3) Q
 .I QN["*",LV=2,$L(QN,"*")=2 S ST=IT_"*"_$P(QN,"*",2) Q
 .;
 .N QN2 S QN2=QN
 .I QN2<0 S QN2=-QN2
 .I LV=1,'MULTY S ST=IT Q
 .I LV=1 S ST=$S(QN0:+QN2\QN0,1:QN2)*IT Q
 .I LV=1 S ST=$S(QN0:+QN2\QN0,1:QN2)*IT Q
 .I LV=2,IT=1 S ST=$S(QN1:+QN2\QN1,1:QN2) Q
 .I LV=2,IT'=1 S ST=IT_"*"_$S(QN1:+QN2\QN1,1:QN2) Q
 ;
 S ST=$$^W4QNR(ST)
 ;
 I $$QNPIZZA(QN) S ST=ST_"<br>"_$$^W4SHOWPZ(QN)
 Q ST
 ;
 ;
QNITR(I) ;
 Q $$ITRAST^W3HZMST(JB,I)
 ;
QNA(A)
 Q $P(A,"~",5)
 ;
QNL(A)
 N QN S QN=$$QN(A)
 I QN["*" S QN=$P(QN,"*",$L(QN,"*"))
 Q QN
 ;
QN(A) ;
 N QN S QN=$$QNA(A)
 ;;I $E(QN,1,2)="1*" Q $P(QN,"*",2)
 I QN="" Q "&nbsp;"
 Q QN
 ;
QNDIF(A) Q $P(A,"~",11)
 ;
QNR(A) ;
 N QN S QN=$$QN(A)
 Q $$QNR1(QN)
 ;
QNR1(QN) ;
 I QN["*" S QN=$$^W4QNR(QN)
 Q QN
 ;
 ;
KDISC(A)
 N CD S CD=$$CD(A)
 I $$^W4PRTBH(CD) Q 1
 Q (100-$$AHP(A))*.01
 ;
KDISCADD(A,AHST)
 N CD S CD=$$CD(A)
 N AHST1 S AHST1=$G(AHST)
 I $$^W4PRTBH(CD) Q 1
 I $G(NOTSFMVC) S AHST1=""
 Q (100-AHST1)*(100-$$AHP(A))*.0001
 ;
SUM(I) N A
 N NMB S NMB=$$NMB^W4HZMST($G(ORD))
 I NMB,$G(W4PCHBP)="TM",$$TMBLIMH^W4L(NMB) Q "&nbsp;"
 ;
 N A S A=$G(@$$^W4TMPORD@(I))
 Q $$SUMA(A,I)
 ;
 ;
SUMA(A,I) I $P(A,"~")=1,$G(NOTSFMVC) S AHST=""
 N QN
 I $G(COMPRDEL) S QN=$$QNITR(I)
 I '$G(COMPRDEL) S QN=$$QNR(A)
 ;
 N KDISC S KDISC=$S($$LV(A):$$KDISCADD(A,$G(AHST)),1:$$KDISC(A))
 N MH S MH=$$MH(A)
 ;
 Q $J(QN*MH*KDISC,2,2)
 ;
 ;
TOT(STAM) ;
 N AHUZ
 S AHUZ=$$HNHAH^W4HZMST(ORD)
 N TOT S TOT=$$TOTORD
 N TOTHN S TOTHN=$$TOTHN^W4HZORD(ORD)
 S DMS=$$DMSH^W4HZMST(ORD)
 S TOT=TOT+DMS-(TOTHN*AHUZ*.01)
 Q $J(TOT,2,2)
 ;
TOTORD(STAM) ;
 Q $$TOTORD^W3HZMST(JB)
 ;
AHSTADD ;
 N AHST1 S AHST1=AHST
 I $G(NOTSFMVC) S AHST1=""
 I $$^W4PRTBH($$CD(A)) S AHST1="",HNT=$S(MHADD:0,1:"")
 I 'MHADD S (AHST1,HNT)=""
 N VL
 S VL=$S($G(AHST1)&$G(HNT):+AHST1_"%*"_+HNT_"%",$G(AHST1):+AHST1_"%",$G(HNT):+HNT_"%",HNT=0:0,1:"")
 I $G(NOTSFMVC),'$G(HNT) S VL=""
 I 'VL S VL=$S(VL="":"&nbsp;",1:"0%")
 D W("   <td style=""color:brown;font-size:"_$$^W3FSZ(11)_""">"_VL_"</td>")
 Q
 ;
NMTD(SH) ;
 Q "QN"_SH
 ;
NMTDI(SH) ;
 Q "QNID"_SH
 ;
CMTD(I) ;
 N TD S TD="   <td id=""cmtd"_I_""" class=""hdgr"" "
 S TD=TD_"style=""font-size:"_$$^W3FSZ(12)_";"
 S TD=TD_"text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""" >"
 D W(TD_"&nbsp;")
 ;
 N SRVCMNT
 S SRVCMNT=$$HRP^W3HZMST(JB,I)
 ;
 I '$D(W4PCHBP) D
 .N MANA S MANA=$$GETI^W4DEFMN($$MANA^W3HZMST(JB,I))
 .I $L(MANA) S SRVCMNT=MANA_" "_SRVCMNT
 ;
 I $L(SRVCMNT)&($$LVIT(I)=0) D
 .S SRVCMNT="<span style=""color:black;font-size:"_$$^W3FSZ(9)_""">"_$$H2U^%L1FRM(SRVCMNT)_" </span>"
 .I $$AHST^W3HZMST(JB,I) S SRVCMNT=""
 ;
 N CMNTT S CMNTT=$$CMNST^W3HZMST(JB,I)
 S CMNTT=$$^W4CLRCMN(CMNTT)
 I $D(W4PCHBP) D
 .S CMNTT=$$CLR^W4CLRMN(CMNTT)
 ;
 N CMNT S CMNT=""
 ;
 N A S A=$G(@$$^W4TMPORD@(I+1))
 ;
 I $$CD(A),$$CDC(A),+$$CD(A)=$$GCOUPIT^W4PRM,$$GCOUPIT^W4HZMST(ORD) D
 .S CMNTT=$$GCOUPRCP^W4HZMST(ORD)_" --> "
 .S CMNTT=CMNTT_" [ "_$$GCOUPTEL^W4HZMST(ORD)_" ] "_$$GCOUPPAYER^W4HZMST(ORD)
 .S SRVCMNT=""
 ;
 I $L(CMNTT) D
 .S CMNT="<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(11)
 .S CMNT=CMNT_";color:"_$S($$LVIT(I):"green",1:$$BGCOLOR^W4CSS)_""">"
 .S CMNT=CMNT_"<b>"_$$H2U^%L1FRM(CMNTT)_"<b/>"
 .S CMNT=CMNT_"</span>"
 ;
 S CMNT=SRVCMNT_CMNT
 ;
 I $D(W4PCHBP) D  Q
 .D W(CMNT_"</td>")
 ;
 I $D(@$$^W4TMPORD@("MVFROM",I)) D  Q
 .N A S A=$G(^(I))
 .N NMBFROM,ORDFROM
 .S ORDFROM=$P(A,";")
 .S NMBFROM=$P(A,";",2)
 .S CMNT="<span style=""color:darkblue;font-size:"_$$^W3FSZ(10)_""">"_ORDFROM_" "_$$^%W1DICT("TABLESHORT")_NMBFROM_"</span>&nbsp;"_CMNT
 .D W(CMNT)
 .D W("   </td>")
 ;
 ;;I 'COMPRDEL,$$QNR^W3HZMST(JB,I)<0,$$TSHL^W3HZMST(JB)>0,$$LVIT(I)=0 D  Q
 I 'COMPRDEL,$$QNR^W3HZMST(JB,I)<0,$$LVIT(I)=0 D  Q
 .N ST
 .S ST="<span style=""color:"_$$BGCOLOR^W4CSS_"""><b>"_$$H2U^%L1FRM($$SIBA1^W3HZMST(JB,I))_"</b></span><br/>"
 .S ST=ST_"<span style=""color:"_$S($$EX2KITCH^W3HZMST(JB,I):"red",1:"darkblue")_";font-size:"_$$^W3FSZ(8)_""" >"
 .S ST=ST_"&nbsp;"_$$H2U^%L1FRM($$WHODEL1^W3HZMST(JB,I))
 .S ST=ST_" "_$$TIMEDEL^W3HZMST(JB,I)_" </span>"
 .S ST=ST_"</td>"
 .D W(ST)
 ;
 N GLIST S GLIST=$$GLIST^W3HZMST(JB,I)
 I $L(GLIST) D
 .S CMNT=CMNT_" <span style=""color:black;font-size:"_$$^W3FSZ(8)_""">"
 .I GLIST="*" S GLIST=$$TV^%W1DICT($$^%W1LNG,"ALL")
 .S CMNT=CMNT_$$^%W1DICT("GLIST",GLIST)_"</span>"
 ;
 I CMNT="" S CMNT="&nbsp;"
 D W(CMNT)
 D W("   </td>")
 Q
 ;
HD ;
 Q
 ;
 ;
K ;
 I $G(@TMPS@(2,"LAST"))=1 S @TMPS@(2,K)=I
 D W("  <td style=""text-align:center;background-color:yellow"">"_K_"</td>")
 S K=K+1
 Q
 ;
W(TXT)
 W TXT,!
 Q
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
 ;
KB ;
 N ORD S ORD=$G(%ARG("ORD")) Q:'ORD
 D W("<div>")
 D W("<table width=""100%"" dir="""_$$^%W1DIR_"""><tr>")
  D W("<td style=""color:red;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">")
   D W($$H2U^%L1FRM($$HODAA^W4HZMST(ORD)))
  D W("</td>")
  D W("<td style=""color:darkblue;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">")
   D W($$H2U^%L1FRM($$HRA2^W4HZMST(ORD)))
  D W("</td>")
 D W("</tr></table>")
 D W("</div>")
 ;
 D W("<div style=""position:absolute;align:center;top:87%;width:760px"">")
 D W("<table width=""100%"" cellspacing="""_$$^W4KF(10)_""" class=""vw"" border=""0"" dir="""_$$^%W1DIR_""" >")
 N OKTSF S OKTSF=0
 N OKDEL S OKDEL=0
 D W("<tr>")
  D W("<td width=""15%"">")
   W "&nbsp;" ;;D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNDN")_""" onMouseUp=""LineDown()"" />")
  D W("</td><td width=""15%"">")
   W "&nbsp;" ;;D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("LNUP")_""" onMouseUp=""LineUp()"" />")
  D W("</td>")
  D W("<td width=""24%"" align=""center"">")
  D
  .D  ; -- BDIKA IM ESH TOSAFOT
  ..N I
  ..S I="" F  S I=$O(@$$^W4ORD@(ORD,I)) Q:I=""  I I,$D(^(I))>10 S OKTSF=1 Q
  .D  ; -- BDIKA IM ESH BITULIM
  ..N I
  ..S I="" F  S I=$O(@$$^W4ORD@(ORD,I)) Q:I=""  I I,$$QN^W4HZMST(ORD,I)<0 S OKDEL=1 Q
  .;
  .I OKTSF D
  ..D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT($S(COMPRADD:"OPENVIEW",1:"COMPRESSVIEW"))_""" onClick="""_$S(COMPRADD:"OpenAdd()",1:"CloseAdd()")_""" />")
  .I 'OKTSF D W("&nbsp;")
  .D W("</td><td width=""20%"">")
  .I OKDEL,$$TSTMRG^W4HZMST(ORD) D
  ..D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT($S(COMPRDEL:"OPENDEL",1:"COMPRDEL"))_""" onClick="""_$S(COMPRDEL:"OpenDel()",1:"CloseDel()")_""" />")
  .I 'OKDEL D W("&nbsp;")
  ;
  D W("</td>")
  ;
  D W("<td width=""13%"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGDN")_""" onMouseUp=""PageDown()"" />")
  D W("</td><td width=""13%"" align=""center"">")
   D W("<input type=""button"" class=""btn"" value="""_$$^%W1DICT("PGUP")_""" onMouseUp=""PageUp()"" />")
  D W("</td>")
 D W("</tr>")
 D W("</table>")
 D W("</div>")
 ;
 I $D(@$$^W4ORD@(ORD,"ISHUR")) D
 .W "<div style=""position:absolute;align:center;top:85%;left:35%"">",!
 .N A S A=$G(^("ISHUR"))
 .W "<span style=""text-align:center;color:red;font-size:"_$$^W3FSZ(14)_""" >"
 . N WHO,DAT,EMDA
 . S DAT=$P(A,"\",1)
 . S WHO=$P(A,"\",2)
 . S EMDA=$P(A,"\",3)
 . W $$^%W1DICT("AUTHORISEDBY",WHO_"<>"_DAT_"<>"_EMDA)
 .W "</span>",!
 .W "</div>",!
 ;
 I $$DEL^W4DEL(ORD) D
 .N A S A=$G(@$$^W4GL("W4LINK")@(ORD))
 .N WHO,WHO1 S WHO=$P(A,"~",5) Q:WHO=""
 .N DAT,TIME,EMDA S (DAT,TIME,EMDA)=""
 .I WHO["^" D
 ..S DTIME=$ZD($P(WHO,"^",2),"DD.MM.YY  24:60")
 ..S EMDA=$P(WHO,"^",3),WHO=$P(WHO,"^")
 . 
 .S WHO1="" I WHO S WHO1=$$^W4NAME(WHO)
 .W "<div style=""position:absolute;align:center;top:95%;left:35%"">",!
 .W "<span style=""text-align:center;color:red;font-size:"_$$^W3FSZ(14)_""" >"
 . W $$^%W1DICT("DELETEDBY",WHO1_"<>"_DTIME_"<>"_EMDA)
 .W "</span>",!
 .W "</div>",!
 ;
 Q
 ;
 ;
LNDN(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))+1
 N I S I=+$G(@TMPS@(2,K)) I 'I Q 0
 I '$D(@$$^W4TMPORD@(I)) Q 0
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
LNUP(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))-1
 I K<1 Q 0
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
PGDN(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))+11
 N I S I=+$G(@TMPS@(2,K)) I 'I Q 0
 I '$D(@$$^W4TMPORD@(I)) Q 0
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
PGUP(STAM) ;
 D TMPS^W4MENU
 N K S K=+$G(@TMPS@(2,"LAST"))-11
 I K<1 S K=1
 S @TMPS@(2,"LAST")=K
 Q 1
 ;
DOP(I) ;
 S DOP=""
 N SHOWST S SHOWST=$G(@$$^W4PRM@("SHOWST"))
 N ST S ST=$G(@$$^W4TMPORD@("ST",I))
 I 'SHOWST Q
 I SHOWST D
 .N CDOV S CDOV=$P(ST,"\") Q:'CDOV
 .S DOP=DOP_" <span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"
 .;S DOP=DOP_"<br>"
 .S DOP=DOP_$$H2U^%L1FRM($$SHORT^W4NAME(CDOV))_"</span>&nbsp;&nbsp;"
 Q
 ;
NOCOMMENT(STAM) ;
 I $G(%ARG("NOCMNT")) Q 1
 I $G(BO) Q 1
 I $$KUPA^W4PLUK($$^W4MYDVN) Q 1
 Q 0
 ;
 ;
INIT ;
 D ^%W1ARG
 D KILLUR^W4MENU(1)
 D TMPS^W4MENU K @TMPS@("UR")
 N ORD S ORD=$G(%ARG("ORD"))
 D PUT^%W1PRM("VIEW",+$G(%ARG("VIEW")))
 I $G(%ARG("REM")) D PUT^%W1PRM("REM",$G(%ARG("REM")))
 I $L($G(%ARG("DLVWEB"))) D PUT^%W1PRM("DLVWEB",$G(%ARG("DLVWEB")))
 D KILL^%W1PRM("W4CP")
 D INITORD(ORD)
 Q
 ;
 ;
INITORD(ORD) ;
 S ORD=$G(ORD)
 ;
 I ORD D
 .D PUT^%W1PRM("HZM",ORD)
 .D PUT^%W1PRM("NMB",$$NMB^W4HZMST(ORD))
 .K @$$^W4ORD@(ORD,"SHOWITRA")
 ;
 I ORD>0 D
 .D KILL^%W1PRM("PYTOT"),KILL^%W1PRM("HZMMAIN") 
 ;
 D:$G(%ARG("KILLHRF")) KILL^%W1PRM("HRF")
 ;
 D KILL3^W4MENU ; --- *** LEV 31/05/14
 D KILL^%W1PRM("CURDEP")
 D KILL^%W1PRM("SUBGR")
 ;
 D CLEARTMPS
 I $L($G(%ARG("WIN"))) D PUT^%W1PRM("WIN",%ARG("WIN"))
 Q
 ;
 ;
CLEARTMPS ;
 D TMPS^W4MENU
 N N S N="" F  S N=$O(@TMPS@(N)) Q:N=""  D
 .I N'="PG",N'="CURSUG",N'="STATUS",N'="SHULH" K @TMPS@(N)
 Q
 ;
QNPIZZA(QN) ;
 Q $$QNPZ^W4PIZZA(QN)
 ;
NOPCHBCD(STAM) ;
 I $G(%ARG("NOCD")) Q 1
 I $D(W4PCHBP)&$$NOPCHBCD^W4PRM Q 1
 Q 0
 ;
PARNOHN(HZM) ;
 Q $$^W4PNOHN(HZM)
 ;
BSLPAR(PAR) ;
 I $$BSL^W4PRM,PAR=$$PARBON^WBPRM!(PAR=$$PARNKD^WBPRM) Q 1
 Q 0
 ;
NOVWDEL(STAM) ; 
 ;;Q 0
 I $G(%ARG("NOVWDEL"))=0 Q 0
 I $G(%ARG("NOVWDEL"))=1 Q 1
 Q $$NOVWDEL^W4PRM
 ;
LMAM(STAM) ; 
 Q $G(%ARG("LMAM")) 
 ;
ZW(STAM) ; 
 Q "<span style=""color:red"">*</span>" 
 ;
DESC(PRT) ; 
 N DESC S DESC=""
 I $G(%ARG("DESCR")) D
 .S PRT=$TR(PRT,"*","")
 .S DESC=$$DESC^W4P(PRT) Q:'$L(DESC)
 .I DESC[" == " S DESC=$P(DESC," == ",$S($$^%W1LNG="H":2,1:1))
 .S DESC="<br><span style=""font-size:"_$$^W3FSZ(8)_";color:brown"">"_DESC_"</span>"
 Q DESC
 ;
SRCFN(STAM) ;  
 N SRCFN
 S SRCFN="w4ordvwfn.jsp?JB="_$G(JB)_"&ORD="_$G(%ARG("ORD"))
 S SRCFN=SRCFN_"&VIEW="_$G(%ARG("VIEW"))_"&KILLHRF="_$G(%ARG("KILLHRF"))
 S SRCFN=SRCFN_"&WIN="_$G(%ARG("WIN"))_"&HIST="_$G(%ARG("HIST"))
 S SRCFN=SRCFN_"&VT="_$G(%ARG("VT"))
 S SRCFN=SRCFN_"&OPNWND="_$G(%ARG("OPNWND"))
 S SRCFN=SRCFN_"&WHO="_$G(%ARG("WHO"))
 Q SRCFN
 ;
NOPRC(STAM) ; 
 I $G(%ARG("NOPRC")) Q 1 
 Q 0 
 ; 
PICIT(STAM) ; 
 I $G(%ARG("SHOWPIC")) Q 1
 Q 0 
 ;
SHOWPIC(CD) ; 
 N ST S ST=""
 S ST="<img src="""_$$PIC^W4P(CD)_""" width=""110"" height=""70"" />"
 Q ST  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ORLS
W4ORLS(DOC,ORG,DAT) ; [ 16.03.23 12:58 ] [ 08.01.19 04:12 ] [ 06.01.19 21:35 ] 
 N (JB,%ARC,%REM,DOC,ORG,DAT)
 S SUG="O",GLD=$$^W4GL("W4ORDD")_"("""_ORG_""")",GL=$$^W4GL("W4ORD")
 ;
 I DOC="HZMH" S GLD=$$^W4GL("W4DIR")_"(""HZMH"")",GL=$$^W4GL("W4DOC")
 ;
 I ORG["_I" S ORG=$P(ORG,"_I"),SUG="I",DOC="IHZ",W4INP=$$^W4GL("W4INP")
 ;
 S TODOC=$$GETP^%W1PRM("DOC")
 ;
 W "<div align=""center"">",!
 W "<span style=""font-weight:bold"">"
 ;
 I SUG="I" D
  .S ORG1=$$NAME^W4SPK(ORG)
  .W $$^%W1DICT("SUPPLORDERLIST",ORG_"<>"_ORG1)
 ;
 I SUG="O" D
  .S ORG1=$$LKH^W4L(ORG)
  .N NMDOC S NMDOC="CUSTORDLIST"
  .I DOC="HZMH" S NMDOC="PRICEOFFERSLIST"
  .W $$^%W1DICT(NMDOC,ORG_"<>"_ORG1)
  ;
 W "</span>",!
 W "<br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""60%"">"
 W " <tr>"
 W "  <th>"_$$^%W1DICT("ORDERNUMBER")_"</th>"
 W "  <th>"_$$^%W1DICT("TODATE")_"</th>"
 W "  <th>"_$$^%W1DICT("ISSUETIME")_"</th>"
 W "  <th>"_$$^%W1DICT("SUM")_"</th>"
 W "  <th>"_$$^%W1DICT("SHOW")_"</th>"
 W "  <th>"_$$^%W1DICT("CHOICE")_"</th>"
 W "</tr>"
 ;
 I SUG="I" S N="" F  S N=$O(@W4INP@(ORG,DOC,N)) Q:N=""  D HZG(ORG,DOC,N)
 I SUG="O" S N="" F  S N=$O(@GLD@(N)) Q:N=""  D
 .N BLN
 .I $$NOMDOC^W4BLNORD(N) S BLN=$$ORDV^W4BLNORD(ORG,N) Q:BLN'?.P
 .D HZG(ORG,DOC,N)
 ;
 W "</table>",!
 ;
 W "<br>"
  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 W "</div>",!
 Q
 ;
 ;
HZG(ORG,DOC,NUMBER) ;
 N N
 I $$^W4DOCDEL(DOC,NUMBER) Q
 ;
 S N=""
 I SUG="I" S N=NUMBER
 ;
 I SUG="O" D  Q:'N
 .I DOC="HZ" S N=$$^W4ORDD(ORG,NUMBER) Q
 .S N=$G(@GLD@(NUMBER))
 ;
 D ^W4HSBGET(N,DOC,ORG)
 ;
 I SUG="I",$L(TODOC),$D(@W4INP@(ORG,DOC,N,TODOC)) Q
 I SUG="I",ORG'=$G(W4HSB("SPK")) Q
 ;
 I SUG="O",$G(W4HSB("NHB")) Q
 I SUG="O",$TR(ORG,"-","")'=$TR($G(W4HSB("LKH")),"-","") Q
 ;
 I $G(W4HSB("DT"))>$$^%L1DC(DAT,3) Q
 I $G(W4HSB("PRKUP"))="" S W4HSB("PRKUP")=1 ; -- 14/12/16 *** LEV
 ;
 I SUG="O",$$GETP^%W1PRM("PRKUP")=1,'$G(W4HSB("PRKUP")) Q
 I SUG="O",$$GETP^%W1PRM("PRKUP")=0,$G(W4HSB("PRKUP")) Q
  ;
 W " <tr id=""tr"_N_""" >"
  W "<td id=""td"_N_""" "
  I +NUMBER=+$$GETP^%W1PRM("DOCVWNUMBER") D
  .W "style=""border:2px brown solid"" "
  W ">"_NUMBER
   I $$NOMDOC^W4BLNORD(NUMBER) D
   .N BLN S BLN=$$ORDV^W4BLNORD(ORG,NUMBER) Q:BLN?.P
   .W " [ "_$$H2U^%L1FRM(BLN)_" ]"
  W "</td>"
  W "<td>"_$G(W4HSB("TODATE"))_"</td>"
  W "<td>"_$G(W4HSB("ISSUETIME"))_"</td>"
  W "<td>"_$G(W4HSB("TOT"))_"</td>"
  ;
  W "<td align=""center"">"
   W "<input type=""button"" value="""_$$^%W1DICT("SHOW")_""" "
   I SUG="I" D
   . W " "_$$^W4TOUCH_"=""ShowSupplOrd('"_ORG_"','"_N_"')"" >"
   I SUG="O" D
   . W " "_$$^W4TOUCH_"=""ShowCustOrd('"_ORG_"','"_NUMBER_"','"_DOC_"')"" >"
  W "</td>",!
  ;
  W "<td align=""center"">"
   W "<input type=""button"" value="""_$$^%W1DICT("CHOICE")_""" "
    W " onClick=""Choice('"_NUMBER_"')"" "
   W " />"
  W "</td>",!
 W "</tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4OST
W4OST ; [ 19.10.09 09:54 ] [ 08.04.09 17:59 ] [
 ; INPUT: STRING, DAT0 , DAT2 ( DAT0 - DATA, NA KOT TREB. ITRA,DAT2 - TODAY)
 ; OUTPUT: ITRA0 - SOF JOM DAT0
 ;         ITRA1 - THILAT JOM DAT2 - TASHLUMIM HABAIM
 ;
 I $G(@$$^W4PRM@("ITRAHZ")) G BG
 S KLOSTP("HZ")="" S (ITRA0,ITRA1)=0
 I $G(DAT0) S ITRA0=$$CBH(STRING,$$^%L1DC(DAT0,4),$G(KLOSTP("PR")))
 I $G(DAT2) S ITRA1=$$CBH(STRING,$$^%L1DC(DAT2,4),1)
 K KLOSTP("HZ")
 Q
 ;
BG S ITRA0=0,ITRA1=0
 S DAT0=$E(DAT0,1,6),DAT2=$E(DAT2,1,6)
 N OK,N,S,M0,M2
 S N="" F  S N=$O(@$$^W4GL("KLF")@(STRING,"KPM",N)) Q:N=""  D
 .S M0=$E(DAT0,1,4) I M0<9000 S M0=M0+10000
 .S M2=$E(DAT2,1,4) I M2<9000 S M2=M2+10000
 .N N1 S N1=N I N1<9000 S N1=N+10000
 .I N1<M0 S ITRA0=ITRA0+^(N)-$P(^(N),"*",2)
 .I N1<M2 S ITRA1=ITRA1+^(N)-$P(^(N),"*",2)
 ;
 S N=$E(DAT0,1,4)_"00"
 F  S N=$O(@$$^W4GL("KLF")@(STRING,"KP",N)) Q:N=""  I N?6N D
 .S S=$G(^(N))
 .Q:$$^%L1DC($E(N,1,6),4)>$$^%L1DC(DAT0,4)
 .S ITRA0=ITRA0+S
 ;
 S N=$E(DAT2,1,4)_"00"
 F  S N=$O(@$$^W4GL("KLF")@(STRING,"KP",N)) Q:N=""  I N?6N D
 .S S=$G(^(N))
 .Q:$$^%L1DC($E(N,1,6),4)'<$$^%L1DC(DAT2,4)
 .S ITRA1=ITRA1+S
 ;
 S N=$E(DAT2,1,6)_$S($D(KLOSTP):"0000",1:"")
 F  S N=$O(@$$^W4GL("KLF")@(STRING,"KP",N)) Q:N=""  Q:$E(N,1,6)>DAT2  D
 .S S="\"_$G(^(N)) D BDK Q:'OK
 .S ITRA1=ITRA1+$P(S,"\",2)-$P(S,"\",1)
 ;
 S ITRA0=$J(ITRA0,2,2),ITRA1=$J(ITRA1,2,2)
 K KLOSTP Q:'$D(KLOST)
 N DAT21,DAT01
 S DAT21=$E(DAT2,5,6)_"."_$E(DAT2,3,4)_"."_$E(DAT2,1,2)
 S DAT01=$E(DAT0,5,6)_"."_$E(DAT0,3,4)_"."_$E(DAT0,1,2)
 Q
 ;
BDK ;
 S OK=1 Q:'$D(KLOSTP("CD"))!'$D(KLOSTP("N"))
 I $D(@$$^W4GL("KLF")@(STRING,"KP",N,KLOSTP("CD"),KLOSTP("N"))) S OK=0 Q
 S N1=$O(@$$^W4GL("KLF")@(STRING,"KP",N,""))
 I N1'="" D
 .S N2=$O(@$$^W4GL("KLF")@(STRING,"KP",N,N1,""))
 .I N2'="" S S=$G(^(N2))
 Q
 ;
CBH(LKH,DT,PR) ;-- ITRA LEFI HESBONIOT & KABALOT
 ;-- PR=1 - LAKAHAT BE HESHBON TASHLUMIM HABAIM
 ;   KLOSTP("CD") & KLOSTP("N") - SUG & NOM DOC PRI KOT NADO PREKR HISHUV
 ;-----------------------------------------------------------------------
 N D,DOC,NOM,HOV,END S HOV=0,END=0
 ;
 I $D(@$$^W4GL("KLPTCH")@(LKH))#2 D
 .S HOV=HOV+$P(^(LKH),"*")-$P(^(LKH),"*",2)
 ;
 S D="" F  S D=$O(@$$^W4GL("KLF")@(LKH,"KP",D)) Q:D=""  D  Q:END
 .N DTK S DTK=$$^%L1DC($$^%L1DC($E(D,1,6),1),3)
 .I '$G(PR),DTK>DT Q  ;-- ITRA HATHALATI
 .I '$G(PR),'$D(KLOSTP("CD"))!'$G(KLOSTP("N")),$D(KLOSTCP("<")),DTK'<DT Q
 .
 .S DOC="" F  S DOC=$O(@$$^W4GL("KLF")@(LKH,"KP",D,DOC)) Q:DOC=""  D  Q:END
 ..S NOM="" F  S NOM=$O(@$$^W4GL("KLF")@(LKH,"KP",D,DOC,NOM)) Q:NOM=""  D  Q:END
 ...S A=$G(^(NOM))
 ...N RZN S RZN=$P(A,"\",1)-$P(A,"\",2)
 ...I '$G(PR),$D(KLOSTP("CD")),$G(KLOSTP("N")),DOC=KLOSTP("CD"),NOM=KLOSTP("N"),DTK'<DT S END=1 Q
 ...I DOC="CB"!(DOC="TZ"&RZN) D  Q
 ....S HOV=HOV-A D DB(NOM,-A,HOV)
 ...I $G(PR)=1,DOC="H"!(DOC="TH"&RZN),$P(A,"\",2)>0!($P(A,"\",3)>0),DTK>DT Q
 ...I DOC="H"!(DOC="TH"&RZN),$P(A,"\",2) D  Q
 ....S HOV=HOV+$P(A,"\",2)
 ....D DB(NOM,$P(A,"\",2),HOV)
 ...I DOC="H",$P(A,"\",3) D  Q
 ....S HOV=HOV+$P(A,"\",3)
 ....D DB(NOM,$P(A,"\",3),HOV)
 ...I DOC="HZ",$D(KLOSTP("HZ")),$P(A,"\",2),'$P(A,"\"),$D(@$$^W4GL("P1HL2")@(LKH,NOM)) D  Q
 ....S HOV=HOV+$P(A,"\",2) D DB(NOM,$P(A,"\",2),HOV)
 Q HOV
 ;
DB(NOM,SUM,HOV) I $G(@$$^W4GL("DEB")) W !,NOM," ",$J(SUM,7,2)," ",HOV
 Q

W4OTH
W4OTH(HR) ; [ 10.11.08 11:32 ] [ 26.09.06 12:26 ] [ 13.03.06 15:51 ]
 I HR["O T H" Q $S(HR["!":2,1:1)
 I (" "_$TR(HR,"!.0123456789<","")_" ")["OTH" Q $S(HR["!":2,1:1)
 I (" "_$TR(HR,"!.0123456789<","")_" ")["2-n lef" Q 1
 Q 0

W4OUTPRM
W4OUTPRM ; [ 29.12.21 08:10 ] [ 20.03.15 18:00 ] [ 19.03.15 16:36 ] 
GET ;
 N (JB,%ARG,OUT,IP,USR,PSW)
 S OUT=$$FUNC^%UCASE($G(@$$^W4PRM@("SNDOUT")))
 S IP=$$FUNC^%UCASE($G(@$$^W4PRM@("SNDOUT","IP")))
 ;;S USR=$$FUNC^%UCASE($G(@$$^W4PRM@("SNDOUT","USR")))
 ;;S PSW=$$FUNC^%UCASE($G(@$$^W4PRM@("SNDOUT","PSW")))
 Q
 ;
PUT(PRM) ;
 N I,RES
 D PUT^%W3DEB("W4OUTPRM","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES="OK"
 ;
 S @$$^W4PRM@("SNDOUT")=+$G(OUT)
 ;
 ;;F I="IP","USR","PSW" D
 F I="IP" D
 .S @$$^W4PRM@("SNDOUT",I)=$G(@I)
 ;
END Q RES
 ;
 

W4OVSHAA
W4OVSHAA(MEDT,ADDT) ; [ 28.03.22 16:33 ] [ 09.08.21 10:30 ] [ 08.08.21 14:37 ] 
 N (JB,%ARG,%REM,MEDT,ADDT,OVTIME)
 K OVTIME
 S TM1=0,TM2=24*3600-1
 S FILE=$$^W4GL("FILE")
 S OV="" F  S OV=$O(@FILE@(OV)) Q:OV=""  D
 .S DAT0=$ZD(MEDT-1,"YYMMDD")
 .S DAT=DAT0 F  S DAT=$O(@FILE@(OV,DAT)) Q:DAT=""  S DT1=$$^%L1DC(DAT,4) Q:DT1-ADDT>1  D
 ..I '$$GET1^W4LEVPR(OV,"PAIL") Q
 ..;;I '$$GET1^W4LEVPR(OV,"MTIP"),'$$OV2SL^W4CLKVW(OV) Q
 ..S TM="",TM2="" 
CYC ..S TM=$O(@FILE@(OV,DAT,TM)) I TM D
 ...N A S A=$G(^(TM))
 ...I A="I" S TM2="" S TM1=TM G CYC
 ...
 ...I A="O" S TM2=TM D  G CYC
 ....I TM2'<($$ETMOL*3600),DT1>ADDT Q
 ....I TM2<($$ETMOL*3600),DT1=(ADDT+1) S TM2=(24*3600),DT1=DT1-1
 ....I $G(TM1)="" S TM1=0
 ....D SET(DT1,TM1,TM2)
 Q
 ;
 ;
SET(DT1,TM1,TM2) ;
 S SHAA1=TM1\3600
 S SHAA2=TM2\3600
 ;
 I SHAA2'<SHAA1 D
 .F SHAA=SHAA1:1:SHAA2 D
 ..S IND=DT1_"-"_$TR($J(SHAA,2)," ",0)
 ..D SETTIME(OV,IND,TM1,TM2)
 I SHAA2<SHAA1 D
 .F SHAA=SHAA1:1:24 D
 ..S IND=(DT1-1)_"-"_$TR($J(SHAA,2)," ",0)
 ..D SETTIME(OV,IND,TM1,(24*3600))
 .F SHAA=0:1:SHAA2 D
 ..S IND=DT1_"-"_$TR($J(SHAA,2)," ",0)
 ..D SETTIME(OV,IND,0,TM2)
 Q
 ;
 ; 
SETTIME(OV,IND,TM1,TM2) 
 N DR,SHAA1,SHAA2,SHAA
 S SHAA=+$P(IND,"-",2)
 S SHAA1=TM1\3600
 S SHAA2=TM2\3600
 I SHAA>SHAA1,SHAA<SHAA2 S OVTIME(IND,OV)=1 Q
 ;
 I +SHAA=+SHAA1,SHAA1=SHAA2 D  Q
 .N TM2MN S TM2MN=$P($$T^%L1TIME(TM2),":",2)
 .N TM1MN S TM1MN=$P($$T^%L1TIME(TM1),":",2)
 .S DR=$J((TM2MN-TM1MN)/60,2,2)
 .S OVTIME(IND,OV)=DR
 ;
 I +SHAA=+SHAA1 D  Q
 .S DR=1-$J($P($$T^%L1TIME(TM1),":",2)/60,2,2)
 .S OVTIME(IND,OV)=DR
 ;
 I +SHAA=+SHAA2 D
 .S DR=$J($P($$T^%L1TIME(TM2),":",2)/60,2,2)
 .S OVTIME(IND,OV)=DR
 Q 
 ;
 ; 
ETMOL(STAM) ; 
 Q 6 
 ;
OST ; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4OVTFKA
W4OVTFKA(MEDAT,ADDAT,NOPC) ; [ 24.09.26 15:13 ] [ 30.04.25 11:42 ] [ 05.09.24 03:12 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,NOPC)
 I $G(%ARG("SHOW"))=0 Q
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 D ^W4OVSHAA(MEDT,ADDT)
 D SCOMP^W4TOT(MEDT,ADDT)
 ;
 D TMP K @TMP
 ;
 D W("<div dir="""_$$^%W1DIR_""" align=""center"" >")
  D KOT
  ;
  S MESHAA=$G(@$$^W4PRM@("TFKMESHAA")) I MESHAA="" S MESHAA=8
  S ADSHAA=$G(@$$^W4PRM@("TFKADSHAA")) I ADSHAA="" S ADSHAA=23
  ;
  I ADSHAA<MESHAA S ADSHAA=24+ADSHAA
  K SSHAAR,SSHAAD
  F SHAA=MESHAA:1:ADSHAA D SHOWSHAA(SHAA)
  ;;I MESHAA D SHOWSHAA(0)
  I $D(DLVQ(-1)) D SHOWSHAA(-1)
  ;
  ;;ZWR SSHAAD ; ***
  ;
  D TOT
  D W("</table>")
  D EX
  D W("</div>") 
 Q  ;
 ;
 ;
KOT ;
 D W("<span style=""font-size:"_$$^W3FSZ(12)_""">")
  D W($$H2U^%L1FRM($$^W3MSDG($$GET^%W1PRM("MSD"))))
 D W("</span>")
 D W("<br><br>")
 ;
 D W("<span style=""font-size:"_$$^W3FSZ(16)_""">")
  D W($$^%W1DICT("OVTFKAREP",MEDAT_"<>"_ADDAT))
 D W("</span>")
 D W("<br><br>")
 ;
 D DLM
 S LNG=$$^%W1LNG
 S ST=$$TV^%W1DICT(LNG,"HOURS")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"TOTALINLOCAL")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"ORDERSINLOCAL")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"TOTALTAW")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"ORDERSTAW")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"TOTALDLV")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"ORDERSDLV")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"OVPNIM")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"COURIERS")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"TFKPNIM")_DLM
 S ST=ST_$$TV^%W1DICT(LNG,"TFKCOURIER")_DLM
 ;
 S @TMP@(1)=ST
 ;
 D W("<table cellspacing=""0"" cellpadding=""5"" border=""1"" >")
  D W("<tr>")
   D W("<th>") 
    D W($$^%W1DICT("HOURS"))
   D W("</th>")
   ;
   D W("<th>") 
    D W($$^%W1DICT("TOTALINLOCAL"))
   D W("</th>")
   ;
   D W("<th>") 
    D W($$^%W1DICT("ORDERSINLOCAL"))
   D W("</th>")
   ;
   D W("<th>") 
    D W($$^%W1DICT("TOTALTAW"))
   D W("</th>")
   ;
   D W("<th>") 
    D W($$^%W1DICT("ORDERSTAW"))
   D W("</th>")
   ;
   D W("<th>")
    D W($$^%W1DICT("TOTALDLV"))
   D W("</th>")
   ;
   D W("<th>")
    D W($$^%W1DICT("ORDERSDLV"))
   D W("</th>")
   ;
   D W("<th>")
    D W($$^%W1DICT("OVPNIM"))
   D W("</th>")
   ;
   D W("<th>")
    D W($$^%W1DICT("COURIERS"))
   D W("</th>")
   ;
   D W("<th>")
    D W($$^%W1DICT("TFKPNIM"))
   D W("</th>")
   ;
   D W("<th>") 
    D W($$^%W1DICT("TFKCOURIER"))
   D W("</th>")
   ;
  D W("</tr>")
 Q
 ;
 ;
SHOWSHAA(SHAA) ;
 N SHAA1,VL,J S J=0
 S SH=$O(@TMP@(99999),-1)+1
 I SHAA>23 S SHAA=SHAA-24
 S SHAA1=SHAA+1
 D
 .I SHAA<0 S VL=$$^%W1DICT("HOURNOTDEFINED") Q
 .S VL=$$DOP^%L1FRM(SHAA)_":00-"_$$DOP^%L1FRM(SHAA1)_":00"
 ;
 D W("<tr>")
  D W("<td style=""background-color:lightgrey"">")
   D W(VL)
   D SETTMP(VL)
  D W("</td>")
  ;
  D W("<td>")
   S VL=$J($G(SREST(SHAA)),2,2)
   D W($$RKV(VL))
   D SETTMP(VL)
  D W("</td>") 
  ;
  D W("<td>")
   S VL=$G(RESTQ(SHAA))
   D W($$RKV(VL))
   D SETTMP(VL) 
  D W("</td>")
  ;
  D W("<td>")
   S VL=$J($G(STAW(SHAA)),2,2)
   D W($$RKV(VL))
   D SETTMP(VL)
  D W("</td>")
  ;
  D W("<td>")
   S VL=$G(TAWQ(SHAA))
   D W($$RKV(VL))
   D SETTMP(VL)
  D W("</td>")
  ;
  D W("<td>")
   S VL=$J($G(SDLV(SHAA)),2,2)
   D W($$RKV(VL))
   D SETTMP(VL)
  D W("</td>")
  ;
  D W("<td>")
   S VL=$G(DLVQ(SHAA))
   D W($$RKV(VL))
   D SETTMP(VL)
  D W("</td>")
  ;
  D
  .N N S N="" F  S N=$O(OVTIME(N)) Q:N=""  D
  ..N DT,HR S DT=$P(N,"-"),HR=$P(N,"-",2) 
  ..I DT'<MEDT,DT'>ADDT,+HR=+SHAA D
  ...N OV S OV="" F  S OV=$O(OVTIME(N,OV)) Q:OV=""  D
  ....I $$PSL(OV) D  S SSHAAD(SHAA)=$G(SSHAAD(SHAA))+$G(OVTIME(N,OV)) Q
  .....S SSHAAD(SHAA,OV)=$G(SSHAAD(SHAA,OV))+$G(OVTIME(N,OV))
  ....S SSHAAR(SHAA)=$G(SSHAAR(SHAA))+$G(OVTIME(N,OV))
  ;
  D W("<td>")
   S VL=$J($G(SSHAAR(SHAA)),2,2)
   D W($$RKV(VL))
   D SETTMP(VL)
  D W("</td>")
  ;
  D W("<td>")
   S VL=$J($G(SSHAAD(SHAA)),2,2)
   D W($$RKV(VL))
   D SETTMP(VL)
  D W("</td>")
  ;
  D W("<td>")
   D
   .N ORDS S ORDS=$G(TAWQ(SHAA))+$G(RESTQ(SHAA))+$G(DLVQ(SHAA))
   .I $G(SSHAAR(SHAA)) D
   ..S VL=$J(ORDS/SSHAAR(SHAA),2,2)
   ..D W($$RKV(VL))
   ..D SETTMP(VL)
   .I '$G(SSHAAR(SHAA)) S VL=0 W $$RKV(VL) D SETTMP(VL)
  D W("</td>")
  ;
  D W("<td>")
   D
   .N ORDS S ORDS=$G(DLVQ(SHAA))
   .I $G(SSHAAD(SHAA)) D
   ..S VL=$J(ORDS/$G(SSHAAD(SHAA)),2,2)
   ..D W($$RKV(VL))
   ..D SETTMP(VL)
   .I 'ORDS S VL=0 D W($$RKV(VL)) D SETTMP(VL)
  D W("</td>")
 D W("</tr>")
 Q
 ;
 ;
PSL(OV) ;
 Q $$OV2SL^W4CLKVW(OV)
 ;
SUM(RKV) ;
 N SUM S SUM=0
 N N S N=MESHAA-.1
 F  S N=$O(@RKV@(N)) Q:N>ADSHAA  Q:N=""  S SUM=SUM+$G(@RKV@(N))
 S SUM=SUM+$G(@RKV@(-1))
 Q SUM 
 ;
TOT ;
 D W("<tr style=""background-color:yellow;font-weight:bold"">")
  D W("<td>"_$$^%W1DICT("TOTAL")_"</td>")
  D W("<td>"_$J($$SUM("SREST"),2,2)_"</td>")
  D W("<td>"_$$SUM("RESTQ")_"</td>")
  D W("<td>"_$J($$SUM("STAW"),2,2)_"</td>")
  D W("<td>"_$$SUM("TAWQ")_"</td>")
  D W("<td>"_$J($$SUM("SDLV"),2,2)_"</td>")
  D W("<td>"_$$SUM("DLVQ")_"</td>")
  D W("<td>"_$J($$SUM("SSHAAR"),2,2)_"</td>")
  D W("<td>"_$J($$SUM("SSHAAD"),2,2)_"</td>")
  D W("<td>&nbsp;</td>")
  D W("<td>&nbsp;</td>")
 D W("</tr>")
 Q
 ;
 ; 
RKV(VL) ; 
 I '$G(VL) Q "<span style=""color:grey"">"_+$G(VL)_"</span>"
 Q VL
 ;
SETTMP(VL) 
 D DLM
 S J=J+1 
 S $P(@TMP@(SH),DLM,J)=VL 
 Q 
 ;
DLM ;
 S DLM="\"
 Q 
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
EX ; 
 N FLCSV
 N A,B,I,J,RZD,STEX,FL
 D TMP
 ;
 S RZD=","
 S FL=$$WEB^W3MAIN_"OVTFK"_$$^W4MYDVN_".csv"
 S FLCSV=$$WEBL^W3MAIN_"OVTFK"_$$^W4MYDVN_".csv"
 C FLCSV:(DELETE)
 ;
 zsy "rm -f "_FLCSV
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 N J,N,ST D DLM
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D 
 .S STEX=""
 .S ST=$G(^(N)) 
 .F J=1:1:$L(ST,DLM) D
 ..S VL=$P(ST,DLM,J)
 ..S STEX=STEX_$$RKV^%W1PCEX(VL)
 .U FLCSV W STEX,!
 C FLCSV
 ;
 N LF S LF=1300 I $$1024^W4WDSCR S LF=940
 D W("<div style=""position:absolute;top:0px;left:"_LF_"px"">") 
  D W("<a href="""_FL_"""><img src=""w3excel.png"" ></a>")
 D W("</div>")
 ;
 Q
 ;
 ;
W(TX) ;
 I '$G(NOPC) W TX,!
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4P
W4P ; PARAMETRIM PARIT                [ 10.08.26 15:12 ] [ 14.08.25 13:49 ] [ 30.06.24 12:42 ] 
D(PAR) ;
 I $G(PAR)="" Q 0
 D PAR
 Q $D(@$$^W4GL("PAR")@(PAR))
 ;
PAR ;
 Q:'$D(PAR)
 I PAR["-T" S PAR=$P(PAR,"-")
 I $E(PAR,1,2)="A-",$P(PAR,"-",3) S PAR=$P(PAR,"-",3) G EPAR  ;-- AI , PAR+KV.TSF.
 I $E(PAR,1,2)="A-",$P(PAR,"-",3)="",$P(PAR,"-",2) S PAR=$P(PAR,"-",2) G EPAR  ;-- AI , PAR+KV.TSF.
 I PAR?1N.N1"-"1N.N S PAR=$P(PAR,"-") ;-- RAV BRERA
EPAR I PAR="" S PAR=0
 I $$NOCD8^W4PRM S PAR=+PAR
 I $$CD8^W4PRM S PAR=$$CD8^W4CDSUPR(PAR)
 Q
 ;
 ;
SHEM1(PAR) ;
 N SHEM1 S SHEM1=$$SHEM(PAR)
 S SHEM1=$$RPL^%L1FRM(SHEM1,"()","")
 S SHEM1=$$RPL^%L1FRM(SHEM1,"[]","")
 Q SHEM1
 ;
SHEM(PAR) ;
 S PAR=$$FUNC^%UCASE(PAR)
 N T I PAR="" S T="" G ES
 I PAR?1"S"1N!(PAR?1"q"1N) S T=$E(PAR,2)_" rvanl hq " G ES
 D PAR
 S T=$P($G(^[$$UCI]PAR(PAR)),"**")
 I $$ENG,'$D(NOPCLOAZ) S T=$$SHEML(PAR)
 ;I T["^" S T=$P(T,"^",2,25)
ES Q T
 ;
SHEML(PAR,PR) ;----- LOASIT --
 N T I PAR="" S T="" G ESL
 I PAR?1"S"1N!(PAR?1"q"1N) S T="SET "_$E(PAR,2) G ES
 D PAR
 S T=$$SPA^%L1FRM($P($G(^[$$UCI]PAR(PAR)),"**",14))
 I T?.P,$G(PR),$$^%W1LNG="H" Q "="_$$SHEM(PAR)
ESL Q T
 ;
MHAL(PAR) ;
 I $G(PAR)="" Q ""
 D PAR
 Q $P($G(^[$$UCI]PAR(PAR)),"**",9)
 ;
 ;
MH(PAR) ;
 I '$G(JB) Q ""
 I $G(PAR)="" Q ""
 D PAR
 ;
 I $D(W4DOC),$$NEWMLY^W3PRM,$$INP^W4DOC Q $$MHAL(PAR)
 ;
 N CODE S CODE=$TR($$GETP^%W1PRM("CODE"),"!-","")
 I $G(CODE),$L(CODE)>3 N NMB S NMB=CODE
 ;
 I $G(PRMHNMB) N NMB S NMB=PRMHNMB
 ;
 N T,HN,MH,OK S OK=0
 ;
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",2)
 ;
 I $G(NMB),$$^W4MSL(NMB) D MHLKH(NMB,1) I OK D EM00 G EM ; -- MISHLOHIM
 ;
 I $G(NMB),$$^W4MSD(NMB) D  I OK D EM00 G EM
 .S OK=0
 .I '$D(LKHN) Q:'$D(@$$^W4TMPORD)  D  Q:'$$^W4ISCDLK($G(LKHN))
 ..S LKHN=$$LKHN^W3HZMST(JB)
 .I $L($G(LKHN))>3 D MHLKH(LKHN,0)
 ;
 I '$$^W4TCHLL,$G(NMB),$$^W4MSD(NMB),$$TAW^W4DLPK(NMB)!$G(TAWABC),$D(^[$$UCI]PARTA(PAR)) S T=^[$$UCI]PARTA(PAR) D EM00 G EM
 I $$^W4TCHLL,$G(NMB),$$^W4MSD(NMB),$G(LLTAW)!$G(TAWABC)!$$TAW^W4DLPK(NMB),$D(^[$$UCI]PARTA(PAR)) S T=^[$$UCI]PARTA(PAR) D EM00 G EM
 ;
 N MH
 I $D(^[$$UCI]PARSHA),$G(NMB) D  D EM00 I +MH'=-.1 G EM
 .N N,MES,ADS,ZM,TM,DAY,MEJ,ADJ,MET,ADT,A,D
 .;;S ZM=ZMANK S:ZMANK["  " ZM=$P(ZMANK,"  ",2)
 .S ZM=$ZD($H,"24:60")
 .I ZM["PM" S ZM=ZM+12_":"_$P(ZM,":",2)
 .S ZM=ZM*60+$P(ZM,":",2) D ^W4IN
 .S DAY=$$^%L1DC(P1DZ,8)
 .S N="",MH=-.1 F  S N=$O(^[$$UCI]PARSHA(N)) Q:N=""  S A=$G(^(N))  I $D(^[$$UCI]PARSHA(N,PAR)) D  I +MH'=-.1 S T=MH Q
 ..I $G(NMB),$$^W4MSD(NMB),'$$RANGE^W3MHPSHA(N,"REST") Q
 ..I $G(NMB),$$^W4MSL(NMB),'$$RANGE^W3MHPSHA(N,"DLV") Q
 ..D PRS^%L1FRM(A,"MET\ADT\MEJ\ADJ","\")
 ..I DAY<MEJ!(DAY>ADJ) Q
 ..S MES=MET*60+$P(MET,":",2),ADS=ADT*60+$P(ADT,":",2)
 ..I ADS<MES S ADS=ADS+(24*60)
 ..I ZM<(6*60),MES>(6*60) S ZM=ZM+(24*60)
 ..I ZM'<MES,ZM'>ADS S MH=$G(^[$$UCI]PARSHA(N,PAR))
 ;
 I $$^W4MSD($G(NMB)) D EM00 I OK G EM
 ;
EM0 I $$DISCPRC^W4PRM,$G(NMB) D
 .I $D(PRTSF),$$NOTSFMVC^W4PRM Q
 .S HN=$$TV^W4HNHSHA(NMB,PAR)
 .I $G(HN) S T=$J(T*(100-HN)*.01,2,2)
 ;
EM Q T
 ;
EM00 S OK=0
 ;
 I $G(PRMHNMB),$$AH^W4L(PRMHNMB),$$^W4MSD(PRMHNMB),$$^W4PRMAHP(PRMHNMB) D
 .S T=$J(T*(100-$$AH^W4L(PRMHNMB))*.01,2,2) S OK=1
 Q
 ;
MHLKH(NMB,PR) ;
 I $G(^[$$UCI]P1EZL(NMB)),$D(^[$$UCI]PARLKH(^[$$UCI]P1EZL(NMB),PAR)) S T=^(PAR),OK=1 G EMHL ; -- MEHIRON LAKOHOT
 I $D(^[$$UCI]PARLKH(NMB,PAR)) S T=^(PAR),OK=1 G EMHL ; -- MEHIRON LAKOHOT
 N SUGL S SUGL=$$SUGL^W4L(NMB) I SUGL?.P G MHLKH1
 I $D(^[$$UCI]PARSLK(SUGL,PAR)) S T=^(PAR),OK=1 G EMHL ;  -- MEHIRON KVUZOT LAKOHOT
MHLKH1 I $$^W4MSL(NMB),$G(PR),$D(^[$$UCI]PARMS(PAR)) S T=$G(^(PAR)),OK=1 ; -- MEHIRON MISHLOHIM
EMHL I $$NOMAM^W4L(NMB) S T=$J(T*100/(100+$G(^[$$UCI]P1PRM("MAM"))),2,2)
 Q
 ;
MHD(PAR) ;
 N T I PAR="" S T="" G EMD
 S T=$P($G(^[$$UCI]PAR(PAR,"R")),"**")
EMD Q T
 ;
MSK(PAR) ;
 N T I PAR="" S T="" G EMS
 D PAR
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",3)
EMS Q T
 ;
AHUZ(PAR) ;
 N T I PAR="" S T="" G EA
 D PAR
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",7)
EA Q T
 ;
SPK(PAR) ;
 N T I PAR="" S T="" G ESP
 D PAR
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",8)
ESP Q T
 ;
SUG(PAR) ;
 N T I $G(PAR)="" S T="" G ESU
 D PAR
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",5)
 I T="" S T=0
ESU Q T
 ;
SUG1(PAR) ;
 N SUG,SUG1 S SUG1=""
 I $$ENG Q $$SUG1L(PAR)
 S SUG=$$SUG(PAR)
 I 'SUG Q ""
 I $G(PAR)="" Q SUG1
 S SUG1=$G(@$$^W4GL("PARSUG")@(SUG))
 Q SUG1
 ;
SUG1L(PAR) ;
 N SUG,SUG1 S SUG1=""
 S SUG=$$SUG(PAR)
 I 'SUG Q ""
 I $G(PAR)="" Q SUG1
 Q $$PARSUGL(SUG)
 ;
PARSUGL(SUG) ;
 S SUG1=$P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",9)
 Q SUG1
 ;
PARSUGL1(SUG) ;
 N SUGL1 S SUG1=$$SPA^%L1FRM($$PARSUGL(SUG))
 Q $$VWENG^%L1FRM(SUG1)
 ;
TATSUG(PAR) ;
 N T I $G(PAR)="" S T="" G ETSU
 D PAR
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",15)
 I T D
 .N SUG S SUG=$$SUG(PAR)
 .I 'SUG S $P(^[$$UCI]PAR(PAR),"**",15)=0,T=0 Q
 .I '$D(@$$^W4GL("W4TATSUG")@(SUG,T)) S $P(^[$$UCI]PAR(PAR),"**",15)=0,T=0 Q
 I T="" S T=0
ETSU Q T
 ;
TATSUG1(PAR) ;
 I $G(PAR)="" Q ""
 D PAR
 N SUG,SUG1,TATSUG,TATSUG1 S SUG1=""
 S SUG=$$SUG(PAR)
 I 'SUG Q ""
 S TATSUG=$$TATSUG(PAR)
 I 'TATSUG Q ""
 S TATSUG1=$G(@$$^W4GL("W4TATSUG")@(SUG,TATSUG))
 Q TATSUG1
 ;
PRINT(PAR) ;
 I $$SUPER^W3PRM Q 0
 N T I PAR="" S T="" G ESPR
 D PAR
 S T=$$SPA^%L1FRM($P($G(^[$$UCI]PAR(PAR)),"**",11))
ESPR Q T
 ;
PRINT1(PAR) ;
 N T,PRINT S T="" S PRINT=$$PRINTPC(PAR)
 I PRINT Q $P($G(^[$$UCI]P1PRM("MDP",+PRINT)),"\",4)
EP1 Q 0
 ;
PRINTP(PAR) ;
 N PRINT
 D PAR
 N T S T="" S PRINT=$$PRINTPC(PAR)
 I PRINT Q $$PORT(+PRINT)
EPP Q 0
 ;
PRINTPC(PAR) ;
 N MDP S MDP=$$PRINT(PAR)
 I MDP[":",MDP[";" D
 .N MP,US,I,OK S OK=0
 .F I=1:1:$L(MDP,";") D  Q:OK
 ..S MP=$P(MDP,";",I),US=$P($P(MDP,";",I),":",2)
 ..I (","_US_",")[(","_$$^W4MYDVN_",")!(US="") S MDP=MP,OK=1 Q
 Q MDP
 ;
PORT(PRINT) I $G(PRINT)="" Q ""
 Q $P($G(^[$$UCI]P1PRM("MDP",PRINT)),"\",3)
 ;
CEVA(PAR) ;
 N T I PAR="" S T="" G ESC
 D PAR
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",12)
ESC Q T
 ;
BGIT(PAR,DFLT)
 I $G(PAR)="" Q ""
 N BG S BG=$P($$CEVA(PAR),"-")
 I $G(DFLT),BG="" Q "#FFFFFF"
 Q BG
 ;
FGIT(PAR,DFLT)
 I $G(PAR)="" Q ""
 N FG S FG=$P($$CEVA(PAR),"-",2)
 I $G(DFLT),FG="" Q "#000000"
 Q FG
 ;
HRA(PAR) ;
 N T I PAR="" S T="" G ESH
 S T=$P($G(^[$$UCI]PAR(PAR)),"**",13)
ESH Q T
 ;
NOPIZA(PAR) ;
 N SUG S SUG=$G(^[$$UCI]PARSUG($$SUG(PAR)))
 Q $S(SUG["()"!(SUG[")("):0,1:1)
 ;
DEP(PAR,PR) ;
 I $G(PAR),'$G(PR),$G(@$$^W4GL("PARDEP")@(PAR)) Q ^(PAR)
 N SUGP S SUGP=$$SUG(PAR)
 Q $$DEPG(SUGP)
 ;
DEPG(SUGP)
 I $G(SUGP)="" Q ""
 Q $P($G(^[$$UCI]PARSUG(SUGP,1)),"\")
 ;
DEP1(PAR,PR) ;
 N DEP S DEP=$$DEP(PAR,$G(PR)) I DEP="" Q ""
 I $L(DEP) Q $G(@$$^W4GL("DEP")@(DEP))
 Q ""
 ;
DEPG1(SUGP)
 I $G(SUGP)="" Q ""
 I $L($$DEPG(SUGP)) Q $G(@$$^W4GL("DEP")@($$DEPG(SUGP)))
 Q ""
 ;
 ;
DESC(PAR,PRM,NOUTF) ;
 I $G(PAR)="" Q ""
 I $G(PRM)="" S PRM=$S($$ENG:"E",1:"H")
 N GLTIP S GLTIP=$$^W4GL("L1TIP")
 N DESC S DESC=""
 N NODESC S NODESC=""
 N DS
 I '$D(@GLTIP@("MTK",PAR,1)) Q NODESC
 S DESC=$$SPA^%L1FRM(@GLTIP@("MTK",PAR,1))
 I DESC'[" == ",$$ENG,PRM'="H" Q $$HL^W3PRTPC(DESC)
 I DESC'[" == ",$$ENG,PRM="H" Q ""
 I DESC'[" == ",'$$ENG,PRM'="E" Q $$VWTX(DESC,$G(NOUTF))
 I DESC'[" == ",'$$ENG,PRM="E" Q ""
 N TXE,TXH
 S TXE=$$HL^W3PRTPC($P(DESC," == "))
 S TXH=$$VWTX($P(DESC," == ",2),$G(NOUTF))
 ;
 I $G(PRM)="H" Q TXH
 I $G(PRM)="E" Q TXE
 ;
 Q TXH_" == "_$$FUNC^%UCASE(TXE)
 ;
VWTX(DESC,NOUTF)
 Q $S($G(NOUTF):DESC,1:$$H2U^%L1FRM(DESC))
 ;
ENG(STAM) ;
 I $$TMPENG^%W1LNG Q 1
 I $G(%ARG("ENG"))!($G(%W1LNG)="E") Q 1
 Q 0
 ;
PIC(PAR) ;
 N PATH S PATH=$$GETPIC^W3ENTER(PAR)
 I '$G(%ARG("MAIL")) Q $P(PATH,"~",2)
 Q $P(PATH,"~",1)
 ;
PICL(PAR) ;
 N PATH S PATH=$$GETPIC^W3ENTER(PAR)
 Q $P(PATH,"~",1)
 ;
UCI(STAM) ;
 I $$MM^W4PRM Q $$UCIMM^W4GL("PAR")
 I $G(JB) Q $$^%W1UCI(JB)
 Q $ZG
 ;
NOTEX(CD) ;
 I $G(CD)="" Q 1
 I $$SUPER^W3PRM S CD=$$^W4CDSUPR(CD)
 I '$D(@$$^W4GL("PAR")@(CD)) Q 1
 I $$NOPAR^W4PRTVW(CD) Q 1
 Q 0
 ;
DEFMANA(CD) ;
 I $G(CD)="" Q ""
 ;;I $$^W4EZAT(CD) Q ""
 I $$DD^W4EZA(CD) Q ""
 N SUG S SUG=$$SUG(CD) I 'SUG Q ""
 Q $P($G(@$$^W4GL("PARSUG")@(SUG,1)),"\",6)
 ;
 ;
PUT(CODE,RKV,VL) ;
 I $G(CODE)="" Q
 I $G(RKV)="" Q
 N GLPAR S GLPAR=$$^W4GL("PAR")
 S VL=$$SPA^%L1FRM(VL)
 I RKV="NAME" S $P(@GLPAR@(CODE),"**")=VL
 I RKV="MH" S $P(@GLPAR@(CODE),"**",2)=VL
 I RKV="WEIGHT" S $P(@GLPAR@(CODE),"**",3)=VL
 I RKV="SUG" S $P(@GLPAR@(CODE),"**",5)=VL
 I RKV="AHUZ" S $P(@GLPAR@(CODE),"**",7)=VL
 I RKV="PRINTER" S $P(@GLPAR@(CODE),"**",11)=VL
 I RKV="CLR" S $P(@GLPAR@(CODE),"**",12)=VL
 I RKV="SHEML" S $P(@GLPAR@(CODE),"**",14)=VL
 Q
 ;
PRCVAR(PRT) ;
 I $D(@$$^W4GL("P1BLRD")@(PRT)) Q 1
 Q 0
 ;
NOMAM(PRT) ;
 I $$SUPER^W3PRM Q '$$MLMAM^W4MLPRT(PRT)
 ;
 I '$G(PRT) Q ""
 I $D(@$$^W4GL("W4NOMAM")@(PRT)) Q 1
 N DEP S DEP=$$DEP(PRT) I 'DEP Q ""
 I $P($G(@$$^W4GL("DEP")@(DEP,1)),"\")=0 Q 1
 Q 0
 ;
 ;
DELIM(PRT) ; 
 I $G(PRT)="" Q 0
 N SUG S SUG=$$SUG(PRT) I 'SUG Q 0
 I $$DELIMGR^W4PRM=SUG Q 1
 Q 0 
 ;
DLM(PRT) ; 
 I $G(PRT)="" Q 0
 N SUG S SUG=$$SUG(PRT) I 'SUG Q 0
 I $$DLMGR^W4PRM=SUG Q 1
 Q 0 
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAR2ML
W4PAR2ML ; [ 12.04.19 18:15 ] [ 08.04.19 10:56 ] [ 
 S MLPAR="^MLPAR"
 S MLPAR1="^MLPAR(N,1)"
 S N="" F  S N=$O(^PAR(N)) Q:N=""  D
 .S A=$G(^(N))
 .S @MLPAR@(N)=$P(A,"**")
 .S GROUP=$P(A,"**",5)
 .S $P(@MLPAR1,"\",1)=GROUP
 .S $P(@MLPAR1,"\",2)=1
 .S $P(@MLPAR1,"\",3)=1
 Q
 ;
DEP ;
 K ^DEP,^MLDEP
 S N="" F  S N=$O(^OTD(N)) Q:N=""  I N>2,N<21 D
 .S A=$G(^(N))
 .S NM=$$SPA^%L1FRM($P(A,"\"))
 .S ^DEP(N)=NM
 .S ^MLDEP(N)=NM
 .S ^MLDEP(N,1)=$S($P(A,"\",2)="l":0,1:1)
 Q
 
 
 

W4PARCAT
W4PARCAT(STAM) ; [ 19.01.21 14:45 ] [ 11.01.21 06:48 ] [ 
 Q $$^W4GL("PARCAT")_"("_JB_")"
 
 
 

W4PARLNK
W4PARLNK(PAR) ; [ 16.03.23 15:56 ] [ 06.01.22 15:39 ] [ 16.07.17 19:34 ] 
 N (JB,%ARG,%REM,PAR,CARDIT)
 I $$^W4LKH Q ""
 I $G(PAR)="" Q ""
 I '$D(@$$^W4GL("PAR")@(PAR)) Q ""
 ;
 D US(PAR)
 ;
 I '$D(CARDIT) D
 .S ST="<select id=""link"_PAR_""" onMouseDown=""ShowBorder('"_PAR_"')"" "
 .S ST=ST_" onChange=""OnChange('"_PAR_"')"" "
 I $D(CARDIT) S ST="<select id=""link"" "
 S ST=ST_" >"
 S ST=ST_$$SELLINK(PAR)
 S ST=ST_"</select>"
 ;
 S ST=ST_" <input type=""button"" id =""btnlnk"_PAR_""" style=""color:green"" "
 S ST=ST_"value="""_$$^%W1DICT("SHOW")_""" "
 S ST=ST_"onClick=""ShowLink('"_PAR_"','"_$$SUG^W4P(PAR)_"')"" >"
 ;
 Q ST
 ;
 ;
PARHR ;
 S ST=ST_"<option value=""6"">"_$$^%W1DICT("PRODUCTCOMMENTS")_"</option>"
 Q
 ;
 ;
CREATE(PAR) ;
 D US(PAR)
 N ST,J1 S J1=1
 S ST="<option value=""0""> -- "_$$^%W1DICT("CREATELINK")_" -- </option>"
 I 'US S ST=ST_"<option value="".5""> -- "_$$^%W1DICT("COPYLINK")_" -- </option>"
 ;
 I 'US D
 .S J1=J1+1
 .S ST=ST_"<option value=""1"">"_$$^%W1DICT("COMPLEXLUNCH")_"</option>"
 .S ST=ST_"<option value=""2"">"_$$^%W1DICT("PRODUCTADDSGROUP")_"</option>"
 .S ST=ST_"<option value=""3"">"_$$^%W1DICT("PRODUCTADDS")_"</option>"
 ;
 I US=5 D
 .S J1=J1+1
 .S ST=ST_"<option value=""3"">"_$$^%W1DICT("PRODUCTADDS")_"</option>"
 ;
 I '$D(@$$^W4GL("P1EZH")@(PAR)),US'=1 D PARHR S J1=J1+1
 ;;I $D(@$$^W4GL("MLEZM")@(PAR))&(US'=1)&$$NEWMLY^W3PRM D
 I (US'=1)&$$NEWMLY^W3PRM&'$$ONEGLPAR^W4PRM D
 .S ST=ST_"<option value=""7"">"_$$^%W1DICT("PRODUCTTREE")_"</option>"
 Q ST
 ;
 ;
MENU ;
 ;US=1;COMPLEXLUNCH;1;
 ;US=2;PRODUCTADDSGROUP;2;
 ;US=3;PRODUCTADDS;3;
 ;US=4;PRODUCTMULTICHOICEADDS;4;
 ;US=5;ITEMFROMITEMGROUPWITHADDS;5;
 ;$D(@$$^W4GL("P1EZH")@(PAR))&(US'=1);PRODUCTCOMMENTS;6;
 Q  ;
 ;
 ;US=1; ziwqr dgex`;1;
 ;US=2; zetqez zeveaw - hixt;2;
 ;US=3; zetqez - hixt;3;
 ;US=4; dxixa-ax zetqez - hixt;4;
 ;US=5; zetqez mr mihixt zveaw jezn hixt;5;
 ;$D(@$$^W4GL("P1EZH")@(PAR))&(US'=1); zexrd - hixt;6;
 Q  ;
 ;
 ;
SELLINK(PAR) ;
 D US(PAR)
 N I,J,ST S ST=""
 S J=0 F I=1:1 S T=$T(MENU+I) Q:T=""  Q:T["Q  ;"  I @$P(T,";",2) D
 .S J=J+1
 .S ST=ST_" <option value="""_$P(T,";",4)_""">"
 .S ST=ST_$$^%W1DICT($P(T,";",3))
 .S ST=ST_"</option>"
 ;
 S ST=ST_$$CREATE(PAR)
 ;
 Q ST
 ;
US(PAR) ;
 S US=0
 I $$DD^W4EZA(PAR) S US=1
 I $$DD^W4EZT(PAR),'US S US=2
 I $D(@$$^W4GL("P1EZI")@(PAR)),'US S US=3
 ;I '$D(@$$^W4GL("P1EZI")@(PAR)),$D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR))),'US S US=5
 ;I '$D(@$$^W4GL("P1EZI")@(PAR)),$D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR))),'US S US=5
 ;I $D(@$$^W4GL("P1EZR")@(PAR)),'US S US=4
 Q  ;
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PARMH
W4PARMH ; -- PROTOCOL SHINUY MAHIRIM [ 11.12.25 12:50 ] [ 10.06.25 14:59 ] [ 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN="W4PARMH"
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 Q
 ;
 ;
DT ;
 I DT<METRH S OK=0 Q
 I DT>ADTRH S OK=2 Q
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
PAR ;
 N A S A=$G(@GLOB)
 S x1=$J($P(A,"\",2),2,2)
 S x2=$J($P(A,"\",1),2,2)
 Q
 ;
GL() ; 
 Q $$^W4GL("PARMH") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PARMH0
W4PARMH ; [ 10.06.25 12:50 ] [ 09.06.25 14:06 ] [ 
 N (JB,%ARG,%REM)
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 I 'MEDAT!'ADDAT Q
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 S GLPARMH=$$^W4GL("PARMH")
 ;
 W "<div align=""center"">",!
  W "<p></p>",!
  W "<span style=""font-size:"_$$^W3FSZ(14)_""">",!
   W $$^%W1DICT("ITPRICEPROTOCOL",MEDAT_"<>"_ADDAT)
  W "</span>"
  W "<p></p>",!
  W "<table width=""80%"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
  W ">"
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>"
    W "<th>"_$$^%W1DICT("CODE")_"</th>"
    W "<th>"_$$^%W1DICT("NAME")_"</th>"
    W "<th>"_$$^%W1DICT("OLDPRICE")_"</th>"
    W "<th>"_$$^%W1DICT("NEWPRICE")_"</th>"
   W "</tr>",!
   F DT=DT1:1:DT2 D
   .S N="" F  S N=$O(@GLPARMH@(DT,N)) Q:N=""  D
   ..N A S A=$G(^(N))
   ..S MHNEW=$P(A,"\")
   ..S MHOLD=$P(A,"\",2)
   ..W "<tr>"
   .. W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>"
   .. W "<td>"_N_"</td>"
   .. W "<td>"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
   .. W "<td>"_$J(MHOLD,2,2)_"</td>"
   .. W "<td>"_$J(MHNEW,2,2)_"</td>"
   ..W "</tr>",!
   W "</table>",!
   W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4PARMSK
W4PARMSK ; [ 05.12.25 06:28 ] [ 04.12.25 13:50 ] [ 
 N (JB,%ARG)
 D ^W4BZBRA(1)
 Q
 ;
 D ^%L1TS
 S GL=$$^W4GL("PAR")
 S FILE=$G(@$$^W4PRM@("PARMSK")) Q:FILE=""
 C FILE:(DELETE)
 O FILE:(REWIND:NEWVERSION)
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S A=$G(^(NM))
 .S KV=$$SUG^W4P(N)
 .S KV=$$RKV(KV,4)
 .S CD=$$RKV(N,14)
 .S CD=$TR(CD," ",0)
 .S NM=$$RKV($$HB($P(A,"**")),21)
 .S MSK=$P(A,"**",3)
 .I MSK=1!(MSK="Y")!(MSK="k") S MSK=1
 .E  S MSK=0
 .S MSK=$$RKV(MSK,2)
 .S MH=$$MH^W4P(N)
 .S MH=$$NUM(MH,7)
 .S ST=CD_NM_MSK_MH_MH_KV
 .U FILE W ST,!
 C FILE
 Q
 ;
RKV(VL,LN) ;
 I $L(VL)>LN S VL=$E(VL,$L(VL)-LN+1,$L(VL))
 S VL=$J(VL,LN)
 Q VL
 ;
HB(TX) ;
 Q $TR(TX,TS0,TSS)
 ;
NUM(RKV,LN)
 S RKV=$J(RKV,LN,2)
 S RKV=$TR(RKV,".","")
 Q $TR($J(RKV,LN)," ",0)
 
 

W4PARNE0
W4PARNEW(JB,MEPAR,ADPAR,SHIFT,NL) ;           [ 25.12.18 15:24 ] [ 01.09.16 09:40 ] [ 31.08.16 17:27 ] 
 N (JB,MEPAR,ADPAR,SHIFT,NL)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S FLAGEND="ENDITEMNUMBERSMOVING"
 D TMP K @TMP S SH=0
 S GLNEW=$$^W4MAIN("TMPNEW") K @GLNEW
 S GLNEWI=$$^W4MAIN("TMPNEWI") K @GLNEWI
 S IND=$ZD($P($H,","),"YYMMDD")_"-"_$TR($J($P($H,",",2),5)," ",0)
 D PUT^%W1PRM(FLAGEND,0)
 ;
 I $G(@GLNEW),$G(@GLNEW)'=$J D  G END
 .D W("MOVINGCODESFROMJOB;"_@GLNEW,"red")
 ;
 S @GLNEW=$J
 ;
 D
 .N (JB,%ARG,SH,IND)
 .S PATH=$$PATHGB^W4FGIB
 .D W("WAIT")
 .N %NOSHOW S %NOSHOW=""
 .D SVSHP^W4BCKUP(PATH_"PAROLD"_IND,"%GSPAR")
 ;
BG S P1PARNEW=0
 S GLPAR=$$^W4GL("PAR")
 ;
 S PAR="" F  S PAR=$O(@GLPAR@(PAR)) Q:PAR=""  D
 .I MEPAR,PAR<MEPAR Q
 .I ADPAR,PAR>ADPAR Q
 .S PARNEW=PAR+SHIFT
 .S @GLNEW@(PAR)=PARNEW
 .S @GLNEWI@(PARNEW)=PAR
 ;
 I $G(@GLNEW),$G(@GLNEW)'=$J D  G END
 .D W("MOVINGCODESFROMJOB",@GLNEW)
 ;
 S @GLNEW=$J
 ;
 I '$D(@GLNEW) G END
 ;
 S PAROLD="" F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  D
 .S PARNEW=$G(^(PAROLD))
 .K @GLNEW@(PAROLD,"ER")
 .I PARNEW="" S @GLNEW@(PAROLD,"ER")=1 Q
 .I $D(@GLPAR@(PARNEW)) S @GLNEW@(PAROLD,"ER")=2 Q
 .I $D(@GLNEW@(PARNEW)) S @GLNEW@(PAROLD,"ER")=3 Q
 ;
 S PAROLD="",I=0
 F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  I $D(@GLNEW@(PAROLD,"ER")) D
 .S ER=$G(^("ER")),I=I+1
 .S PARNEW=$G(@GLNEW@(PAROLD))
 .S NAME=$$SHEM^W4P(PAROLD)_" "_PAROLD
 .I ER=1 D
 ..D PROT(" xcbed `l ycg cew : "_NAME)
 .I ER=2 D
 ..D PROT("zkxrna miiw xak "_PARNEW_" ycg cew : "_NAME)
 .I ER=3 D
 ..D PROT(" oyi cewk mipekcrd jeza `vnp "_PARNEW_" ycg cew : "_NAME)
 ;
 S OK=0,PAROLD="" 
 F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  I '$D(@GLNEW@(PAROLD,"ER")) S OK=1 Q
 ;
 I 'OK G END
 ;
 S PAROLD="" F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  I $$NEW(PAROLD) D
 .S PARNEW=$G(@GLNEW@(PAROLD))
 .D W^%W1GS($J(PAROLD,8)_" == > "_$J(PARNEW,8))
 .D SHIN1("P1BLRD",1)
 .D SHIN1("P1EZ",3)
 .D SHIN1("P1EZI",3)
 .D SHIN1("P1EZA",1)
 .D SHIN1("P1EZAI",2)
 .D SHIN1("P1EZH",1)
 .D SHIN1("P1EZP",1)
 .D SHIN1("P1EZPI",2)
 .D SHIN1("P1EZR",3)
 .D SHIN1("P1EZRI",3)
 .D SHIN1("P1EZT",1)
 .D SHIN1("P1EZTI",2)
 .
 .I '$D(PARCOPY) D
 ..D SHIN1("P1KEYi",1)
 ..D SHIN1("P1SET",2)
 ..D SHIN1("P1SETA",2)
 ..D SHIN1("P1SETAI",1)
 ..D SHIN1("P1SETP",2)
 ..D SHIN1("P1SETPI",1)
 ..D SHIN1("P1SETM",2)
 ..D SHIN1("P1SHYD",2)
 ..D SHIN1("P1TFRI",1)
 ..D SHIN1("P1TFRIM",2)
 .
 .D SHIN1("PAR",1)
 .D SHIN1("PARi",2)
 .I '$D(PARCOPY) D SHIN1("PARs",2)
 .D SHIN1("MHT",3)
 .D SHIN1("MHTSF",3)
 .Q:$D(PARCOPY)
 .
 .D SHIN1("PARLKH",2)
 .D SHIN1("PARSEND",2)
 .D SHIN1("PARSHA",2)
 .D SHIN1("PARNL",2)
 .D SHIN1("PARSLK",2)
 .D SHIN1("PRTEND",2)
 .D SHIN1("PRTNO",1)
 .D SHIN1("PARPROT1",1)
 .S N="" F  S N=$O(@$$^W4GL("P1KEY")@(N)) Q:N=""  I ^(N)=PAROLD S ^(N)=PARNEW
 .D SHIN2("P1MVC(1)",1)
 .D SHIN2("P1MVC(1)",4)
 .D SHIN2("P1MVC(3)",1)
 .D SHIN2("P1MVC(3)",4)
 .D SHIN2("P1MVC(2)",2)
 .;
 .D SHIN3("P1MVCA(1)",1)
 .D SHIN3("P1MVCA(1)",4)
 .D SHIN3("P1MVCA(3)",1)
 .D SHIN3("P1MVCA(3)",4)
 .D SHIN3("P1MVCA(2)",2)
 .;
 .D SHIN3("P1MVCHL",1)
 .D SHIN4("P1MVCHLA",1)
 .
 .D GLDEEP4("P1MVCL",PAROLD,PARNEW)
 .D GLDEEP4("P1MVCS",PAROLD,PARNEW)
 .
 .D SHIN4("P1TFRA",1)
 .D SHIN3("P1TFR",1)
 .D SHIN3("PARPROT",1)
 .;
 .;
 I $D(PARCOPY) G PN
 ;
 D W("CHANGINGCODESINORDERS")
 ;
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  D
 .I N>999,'(N#1000) D W^%W1GS(N)
 .S I="" F  S I=$O(@$$^W4ORD@(N,I))  Q:I=""  I I D
 ..S PAR=$P(^(I),"\") Q:PAR=""
 ..I $$NEW(PAR) D
 ...S PARNEW=$G(@GLNEW@(PAR))
 ...S $P(@$$^W4ORD@(N,I),"\")=PARNEW
 ...S $P(@$$^W4GL("P1HZ0")@(N,I),"\")=PARNEW
 ..S TSF="" F  S TSF=$O(@$$^W4ORD@(N,I,TSF)) Q:TSF=""  I TSF D
 ...N PAR S PAR=TSF D PAR^W4P Q:PAR=""
 ...I $$NEW(PAR) D
 ....S PARNEW=$G(@GLNEW@(PAR))
 ....S PARNEW1=PARNEW
 ....I TSF["-" D
 .....I TSF?1N.N1"-"1N.N S PARNEW1=PARNEW_"-"_$P(TSF,"-",2,4)
 ....S MAC1=$$^W4ORD_"(N,I,TSF)",MAC2=$$^W4ORD_"(N,I,PARNEW1)" D ^%S1GC1 K @$$^W4ORD@(N,I,TSF)
 ....S MAC1=$$^W4GL("P1HZ0")_"(N,I,TSF)",MAC2=$$^W4GL("P1HZ0")_"(N,I,PARNEW1)" D ^%S1GC1 K @$$^W4GL("P1HZ0")@(N,I,TSF)
 ....S NP="" F  S NP=$O(@$$^W4ORD@(N,I,TSF,NP)) Q:NP=""  I NP D
 .....N A S A=$G(^(NP))
 .....I $L($P(A,"\")) D  Q
 ......S PAR2=$P(A,"\")
 ......I $$NEW(PAR2) D
 .......S PARNEW=$G(@GLNEW@(PAR2))
 .......S $P(@$$^W4ORD@(N,I,TSF,NP),"\")=PARNEW
 .......S $P(@$$^W4GL("P1HZ0")@(N,I,TSF,NP),"\")=PARNEW
 .....S PAR2=$P(A,"\",4)
 .....I $$NEW(PAR2) D
 ......S PARNEW=$G(@GLNEW@(PAR2))
 ......S $P(@$$^W4ORD@(N,I,TSF,NP),"\",4)=PARNEW
 ......S $P(@$$^W4GL("P1HZ0")@(N,I,TSF,NP),"\",4)=PARNEW
 ;
 D W("CHANGINGCODESINWAITERSFILE")
 D GLDEEP3("P1MLZ")
 D W("CHANGINGCODESINSALEFILE")
 D GLDEEP3("PLUTOT")
 D GLDEEP3("PLUMRK")
 ;
PN ;
 K @$$^W4GL("P1PRNEW")@(IND),@$$^W4GL("P1PRNEWI")@(IND)
 ;
 S @$$^W4GL("P1PRNEW")@(IND)=MEPAR_"\"_ADPAR_"\"_SHIFT_"\"_NL
 M @$$^W4GL("P1PRNEW")@(IND,"PROT")=@TMP
 ;
 S N="" F  S N=$O(@GLNEW@(N)) Q:N=""  I $$NEW(N) D
 .S PARNEW=$G(@GLNEW@(N)) Q:'PARNEW  Q:'$D(@GLPAR@(PARNEW))
 .S @$$^W4GL("P1PRNEW")@(IND,N)=PARNEW_$S($D(PARCOPY):"(r)",1:"")_"\"_$$SHEM^W4P(PARNEW)
 .S @$$^W4GL("P1PRNEWI")@(IND,PARNEW)=N
 .S @$$^W4GL("P1PRNEW1")@(PARNEW,IND)=N
 ;
 G:$D(PARCOPY) END
 ;
 I NL D
 .S N="" F  S N=$O(@$$^W4GL("P1PRNEWI")@(IND,N)) Q:N=""  D
 ..S @$$^W4GL("W3PAR")@(N)=0
 ..S @$$^W4GL("W3PAR")@(N,"MVIND")=IND
 .
 .S GLSETA=$$^W4GL("P1SETA")
 .N OK S OK=0
 .S N="" F  S N=$O(@GLSETA@(N)) Q:N=""  D
 ..S PAR="" F  S PAR=$O(@GLSETA@(N,PAR)) Q:PAR=""  D  Q:OK
 ...I PAR'<MEPAR,PAR'>ADPAR S OK=1
 ..I 'OK D
 ...M @$$^W4GL("P1SETAO")@(IND,N)=@GLSETA@(N)
 ...K @GLSETA@(N)
 ;
END K @GLNEW,@GLNEWI L
 D W(FLAGEND,"blue")
 D PUT^%W1PRM(FLAGEND,1)
 Q
 ;
 ;
SHIN1(GLOB,PR) ;
 N GLOB1,N S GLOB1="^"_GLOB
 I PR#2 D
 .I $D(@GLOB1@(PAROLD)),$D(@GLOB1@(PARNEW)) K @GLOB1@(PARNEW)
 .
 .I $D(@GLOB1@(PAROLD)) D
 ..S MAC1=GLOB1_"(PAROLD)",MAC2=GLOB1_"(PARNEW)" D ^%S1GC1
 ..I '$D(PARCOPY) K @MAC1
 ;
 I PR\2 D
 .S N="" F  S N=$O(@GLOB1@(N)) Q:N=""  I $D(@GLOB1@(N,PAROLD)) D
 ..I '$D(@GLOB1@(N,PARNEW)) D
 ...S MAC1=GLOB1_"(N,PAROLD)",MAC2=GLOB1_"(N,PARNEW)" D ^%S1GC1
 ...I '$D(PARCOPY) K @MAC1
 Q
 ;
 ;
SHIN2(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S A=$G(^(N)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N),"\",NM)=PARNEW
 Q
 ;
SHIN3(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLB1@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N,N1),"\",NM)=PARNEW
 Q
 ;
SHIN4(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLB1@(N,N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(@GLB1@(N,N1,N2)) Q:N2=""  D
 ...S A=$G(^(N2)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N,N1,N2),"\",NM)=PARNEW
 Q
 ;
SHIN5(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLB1@(N,N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(@GLB1@(N,N1,N2)) Q:N2=""  D
 ...S N3="" F  S N3=$O(@GLB1@(N,N1,N2,N3)) Q:N3=""  D
 ....S A=$G(^(N3)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N,N1,N2,N3),"\",NM)=PARNEW
 Q
 ;
MENU ;
 ;1; d ` i v i;
 ;1; ccea hixt cew iepiy;MN1;
 ;1; izveaw micew iepiy;MN2;
 ;1; izveaw micew zwzrd;MN4;
 ;1; micew zwzrd/iiepiy lewehext;MN3;
 Q  ;
 ;
GLDEEP3(GLNM)
 N GL S GL=$$^W4GL(GLNM)
 N N,N1,MAC1,MAC2,PAR,PAROLD,PARNEW,NEW
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  I '(N#1000)
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S PAR="" F  S PAR=$O(@GL@(N,N1,PAR)) Q:PAR=""  D
 ...I $$NEW(PAR) D  Q
 ....S PARNEW=$G(@GLNEW@(PAR))
 ....S PAROLD=PAR
 ....M @(GL_"(N,N1,PARNEW)")=@(GL_"(N,N1,PAROLD)")
 ....K @(GL_"(N,N1,PAROLD)")
 ...;
 ...I PAR["-" S PAROLD=$P(PAR,"-") D  Q
 ....I $L($G(PAROLD)),$$NEW(PAROLD) D  Q
 .....S PARNEW=$G(@GLNEW@(PAROLD))
 .....S NEW=PARNEW_"-"_$P(PAR,"-",2)
 .....M @(GL_"(N,N1,NEW)")=@(GL_"(N,N1,PAR)")
 .....K @(GL_"(N,N1,PAR)")
 Q
 ;
 ;
GLDEEP4(GLNM,PAROLD,PARNEW)
 N GL S GL=$$^W4GL("P1MVCL")
 N N1,N2,N3,N4
 S N1="" F  S N1=$O(@GL@(N1)) Q:N1=""  D
 .S N2="" F  S N2=$O(@GL@(N1,N2)) Q:N2=""  D
 ..S N3="" F  S N3=$O(@GL@(N1,N2,N3)) Q:N3=""  D
 ...S N4="" F  S N4=$O(@GL@(N1,N2,N3,N4)) Q:N4=""  D
 ....I $D(@GL(N1,N2,N3,N4,PAROLD)) D
 .....M @(GL_"(N1,N2,N3,N4,PARNEW)")=@(GL_"(N1,N2,N3,N4,PAROLD)")
 .....K @(GL_"(N1,N2,N3,N4,PAROLD)")
 Q
 ;
W(TXT,COLOR) ;
 N A
 S A="<div dir="""_$$^%W1DIR_""" style=""text-align:center;"_$$FONTFM^W3CSS
 I $L($G(COLOR)) S A=A_";color:"_COLOR
 S A=A_""">"
 S A=A_"<h3" N PRM S PRM=""
 S A=A_">"
 D 
  .I $E(TXT)="!" S A=A_$E(TXT,2,300) Q
  .I TXT[";" S PRM=$P(TXT,";",2,20)
  .S A=A_$$^%W1DICT($P(TXT,";"),PRM)
 S A=A_"</h3>"
 S A=A_"</div>"
 D TMP S SH=SH+1,@TMP@(SH)=A
 Q
 ;
W1(TXT) ;
 D TMP S SH=SH+1,@TMP@(SH)=TXT
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
PROT(TXT) ;
 D W("!"_$$H2U^%L1FRM(TXT))
 Q
 ;
NEW(PAR) ;
 I $G(PAR)="" Q 0
 I $D(@GLNEW@(PAR)),'$D(@GLNEW@(PAR,"ER")) Q 1
 Q 0
 ;
LIST ;
 W "<span>"_$$^%W1DICT("MOVINGITEMSPROTOCOL")_"</span>",!
 W "<br>",!
 W "<table id=""List"" border=""1""  width=""40%"" cellspacing=""0"" dir="""_$$^%W1DIR_""" "
 W ">"
  W "<tr>"
   W "<th>"_$$^%W1DICT("DATE")_"</th>"
   W "<th>"_$$^%W1DICT("TIME")_"</th>"
   W "<th>"_$$^%W1DICT("MEPAR")_"</th>"
   W "<th>"_$$^%W1DICT("ADPAR")_"</th>"
   W "<th>"_$$^%W1DICT("SHIFTHOWMUCH")_"</th>"
   W "<th>"_$$^%W1DICT("CLOSEAFTERMOVING")_"</th>"
  W "</tr>",!
  ;
  N GLPROT S GLPROT=$$^W4GL("P1PRNEW")
  S N="" F  S N=$O(@GLPROT@(N),-1) Q:N=""  D
  .S A=$G(^(N))
  .S DAT=$$^%L1DC($P(N,"-"),1)
  .S SHAA=$$T^%L1TIME($P(N,"-",2))
  .D PRS^%L1FRM(A,"MEPAR\ADPAR\SHIFT\NL","\")
  .S NL1=$$^%W1DICT($S(NL:"YES",1:"NO"))
  . 
  .W "<tr onClick=""ClickList('"_N_"')"" style=""cursor:pointer"" >"
  . W "<td>"_DAT_"</td>"
  . W "<td>"_SHAA_"</td>"
  . W "<td>"_MEPAR_"</td>"
  . W "<td>"_ADPAR_"</td>"
  . W "<td>"_SHIFT_"</td>"
  . W "<td>"_NL1_"</td>"
  .W "</tr>",!
 W "</table>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PARNEP
W4PARNEP(IND) ; [ 31.08.16 14:13 ] [ 
 N (JB,%ARG,IND)
 S GLPROT=$$^W4GL("P1PRNEW")
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  S DAT=$$^%L1DC($P(IND,"-"),1)
  S TIME=$$T^%L1TIME($P(IND,"-",2))
  S KOT=$$^%W1DICT("MOVINGCODESPROTOCOL",DAT_"<>"_TIME)
  W "<span style=""color:blue;font-size:"_$$^W3FSZ(18)_""">"
   W KOT
  W "</span>",!
  W "<br>"
  ;
  S N="" F  S N=$O(@GLPROT@(IND,"PROT",N)) Q:N=""  I N D
  .S A=$G(^(N))
  .W A,!
  W "<br>",!
  D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</div>",!
 Q
 
 
 
 
 
 

W4PARNEW
W4PARNEW(JB,MEPAR,ADPAR,SHIFT,NL) ;           [ 25.12.18 15:36 ] [ 01.09.16 09:40 ] [ 31.08.16 17:27 ] 
 N (JB,MEPAR,ADPAR,SHIFT,NL)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S FLAGEND="ENDITEMNUMBERSMOVING"
 D TMP K @TMP S SH=0
 S GLNEW=$$^W4MAIN("TMPNEW") K @GLNEW
 S GLNEWI=$$^W4MAIN("TMPNEWI") K @GLNEWI
 S IND=$ZD($P($H,","),"YYMMDD")_"-"_$TR($J($P($H,",",2),5)," ",0)
 D PUT^%W1PRM(FLAGEND,0)
 ;
 I $G(@GLNEW),$G(@GLNEW)'=$J D  G END
 .D W("MOVINGCODESFROMJOB;"_@GLNEW,"red")
 ;
 S @GLNEW=$J
 ;
 D
 .N (JB,%ARG,SH,IND)
 .S PATH=$$PATHGB^W4FGIB
 .D W("WAIT")
 .N %NOSHOW S %NOSHOW=""
 .D SVSHP^W4BCKUP(PATH_"PAROLD"_IND,"%GSPAR")
 ;
BG S P1PARNEW=0
 S GLPAR=$$^W4GL("PAR")
 ;
 S PAR="" F  S PAR=$O(@GLPAR@(PAR)) Q:PAR=""  D
 .I MEPAR,PAR<MEPAR Q
 .I ADPAR,PAR>ADPAR Q
 .S PARNEW=PAR+SHIFT
 .S @GLNEW@(PAR)=PARNEW
 .S @GLNEWI@(PARNEW)=PAR
 ;
 I $G(@GLNEW),$G(@GLNEW)'=$J D  G END
 .D W("MOVINGCODESFROMJOB",@GLNEW)
 ;
 S @GLNEW=$J
 ;
 I '$D(@GLNEW) G END
 ;
 S PAROLD="" F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  D
 .S PARNEW=$G(^(PAROLD))
 .K @GLNEW@(PAROLD,"ER")
 .I PARNEW="" S @GLNEW@(PAROLD,"ER")=1 Q
 .I $D(@GLPAR@(PARNEW)) S @GLNEW@(PAROLD,"ER")=2 Q
 .I $D(@GLNEW@(PARNEW)) S @GLNEW@(PAROLD,"ER")=3 Q
 ;
 S PAROLD="",I=0
 F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  I $D(@GLNEW@(PAROLD,"ER")) D
 .S ER=$G(^("ER")),I=I+1
 .S PARNEW=$G(@GLNEW@(PAROLD))
 .S NAME=$$SHEM^W4P(PAROLD)_" "_PAROLD
 .I ER=1 D
 ..D PROT(" xcbed `l ycg cew : "_NAME)
 .I ER=2 D
 ..D PROT("zkxrna miiw xak "_PARNEW_" ycg cew : "_NAME)
 .I ER=3 D
 ..D PROT(" oyi cewk mipekcrd jeza `vnp "_PARNEW_" ycg cew : "_NAME)
 ;
 S OK=0,PAROLD="" 
 F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  I '$D(@GLNEW@(PAROLD,"ER")) S OK=1 Q
 ;
 I 'OK G END
 ;
 S PAROLD="" F  S PAROLD=$O(@GLNEW@(PAROLD)) Q:PAROLD=""  I $$NEW(PAROLD) D
 .S PARNEW=$G(@GLNEW@(PAROLD))
 .D W^%W1GS($J(PAROLD,8)_" == > "_$J(PARNEW,8))
 .D SHIN1("P1BLRD",1)
 .D SHIN1("P1EZ",3)
 .D SHIN1("P1EZI",3)
 .D SHIN1("P1EZA",1)
 .D SHIN1("P1EZAI",2)
 .D SHIN1("P1EZH",1)
 .D SHIN1("P1EZP",1)
 .D SHIN1("P1EZPI",2)
 .D SHIN1("P1EZR",3)
 .D SHIN1("P1EZRI",3)
 .D SHIN1("P1EZT",1)
 .D SHIN1("P1EZTI",2)
 .
 .I '$D(PARCOPY) D
 ..D SHIN1("P1KEYi",1)
 ..D SHIN1("P1SET",2)
 ..D SHIN1("P1SETA",2)
 ..D SHIN1("P1SETAI",1)
 ..D SHIN1("P1SETP",2)
 ..D SHIN1("P1SETPI",1)
 ..D SHIN1("P1SETM",2)
 ..D SHIN1("P1SHYD",2)
 ..D SHIN1("P1TFRI",1)
 ..D SHIN1("P1TFRIM",2)
 .
 .D SHIN1("PAR",1)
 .D SHIN1("PARi",2)
 .I '$D(PARCOPY) D SHIN1("PARs",2)
 .D SHIN1("MHT",3)
 .D SHIN1("MHTSF",3)
 .Q:$D(PARCOPY)
 .
 .D SHIN1("PARLKH",2)
 .D SHIN1("PARSEND",2)
 .D SHIN1("PARSHA",2)
 .D SHIN1("PARNL",2)
 .D SHIN1("PARSLK",2)
 .D SHIN1("PRTEND",2)
 .D SHIN1("PRTNO",1)
 .D SHIN1("PARPROT1",1)
 .S N="" F  S N=$O(@$$^W4GL("P1KEY")@(N)) Q:N=""  I ^(N)=PAROLD S ^(N)=PARNEW
 .D SHIN2("P1MVC(1)",1)
 .D SHIN2("P1MVC(1)",4)
 .D SHIN2("P1MVC(3)",1)
 .D SHIN2("P1MVC(3)",4)
 .D SHIN2("P1MVC(2)",2)
 .;
 .D SHIN3("P1MVCA(1)",1)
 .D SHIN3("P1MVCA(1)",4)
 .D SHIN3("P1MVCA(3)",1)
 .D SHIN3("P1MVCA(3)",4)
 .D SHIN3("P1MVCA(2)",2)
 .;
 .D SHIN3("P1MVCHL",1)
 .D SHIN4("P1MVCHLA",1)
 .
 .D GLDEEP4("P1MVCL",PAROLD,PARNEW)
 .D GLDEEP4("P1MVCS",PAROLD,PARNEW)
 .
 .D SHIN4("P1TFRA",1)
 .D SHIN3("P1TFR",1)
 .D SHIN3("PARPROT",1)
 .;
 .;
 I $D(PARCOPY) G PN
 ;
 D W("CHANGINGCODESINORDERS")
 ;
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  D
 .I N>999,'(N#1000) D W^%W1GS(N)
 .S I="" F  S I=$O(@$$^W4ORD@(N,I))  Q:I=""  I I D
 ..S PAR=$P(^(I),"\") Q:PAR=""
 ..I $$NEW(PAR) D
 ...S PARNEW=$G(@GLNEW@(PAR))
 ...S $P(@$$^W4ORD@(N,I),"\")=PARNEW
 ...S $P(@$$^W4GL("P1HZ0")@(N,I),"\")=PARNEW
 ..S TSF="" F  S TSF=$O(@$$^W4ORD@(N,I,TSF)) Q:TSF=""  I TSF D
 ...N PAR S PAR=TSF D PAR^W4P Q:PAR=""
 ...I $$NEW(PAR) D
 ....S PARNEW=$G(@GLNEW@(PAR))
 ....S PARNEW1=PARNEW
 ....I TSF["-" D
 .....I TSF?1N.N1"-"1N.N S PARNEW1=PARNEW_"-"_$P(TSF,"-",2,4)
 ....S MAC1=$$^W4ORD_"(N,I,TSF)",MAC2=$$^W4ORD_"(N,I,PARNEW1)" D ^%S1GC1 K @$$^W4ORD@(N,I,TSF)
 ....S MAC1=$$^W4GL("P1HZ0")_"(N,I,TSF)",MAC2=$$^W4GL("P1HZ0")_"(N,I,PARNEW1)" D ^%S1GC1 K @$$^W4GL("P1HZ0")@(N,I,TSF)
 ....S NP="" F  S NP=$O(@$$^W4ORD@(N,I,TSF,NP)) Q:NP=""  I NP D
 .....N A S A=$G(^(NP))
 .....I $L($P(A,"\")) D  Q
 ......S PAR2=$P(A,"\")
 ......I $$NEW(PAR2) D
 .......S PARNEW=$G(@GLNEW@(PAR2))
 .......S $P(@$$^W4ORD@(N,I,TSF,NP),"\")=PARNEW
 .......S $P(@$$^W4GL("P1HZ0")@(N,I,TSF,NP),"\")=PARNEW
 .....S PAR2=$P(A,"\",4)
 .....I $$NEW(PAR2) D
 ......S PARNEW=$G(@GLNEW@(PAR2))
 ......S $P(@$$^W4ORD@(N,I,TSF,NP),"\",4)=PARNEW
 ......S $P(@$$^W4GL("P1HZ0")@(N,I,TSF,NP),"\",4)=PARNEW
 ;
 D W("CHANGINGCODESINWAITERSFILE")
 D GLDEEP3("P1MLZ")
 D W("CHANGINGCODESINSALEFILE")
 D GLDEEP3("PLUTOT")
 D GLDEEP3("PLUMRK")
 ;
PN ;
 K @$$^W4GL("P1PRNEW")@(IND),@$$^W4GL("P1PRNEWI")@(IND)
 ;
 S @$$^W4GL("P1PRNEW")@(IND)=MEPAR_"\"_ADPAR_"\"_SHIFT_"\"_NL
 M @$$^W4GL("P1PRNEW")@(IND,"PROT")=@TMP
 ;
 S N="" F  S N=$O(@GLNEW@(N)) Q:N=""  I $$NEW(N) D
 .S PARNEW=$G(@GLNEW@(N)) Q:'PARNEW  Q:'$D(@GLPAR@(PARNEW))
 .S @$$^W4GL("P1PRNEW")@(IND,N)=PARNEW_$S($D(PARCOPY):"(r)",1:"")_"\"_$$SHEM^W4P(PARNEW)
 .S @$$^W4GL("P1PRNEWI")@(IND,PARNEW)=N
 .S @$$^W4GL("P1PRNEW1")@(PARNEW,IND)=N
 ;
 G:$D(PARCOPY) END
 ;
 I NL D
 .S N="" F  S N=$O(@$$^W4GL("P1PRNEWI")@(IND,N)) Q:N=""  D
 ..S @$$^W4GL("W3PAR")@(N)=0
 ..S @$$^W4GL("W3PAR")@(N,"MVIND")=IND
 .
 .S GLSETA=$$^W4GL("P1SETA")
 .N OK,PAR S OK=0
 .S N="" F  S N=$O(@GLSETA@(N)) Q:N=""  D
 ..M @$$^W4GL("P1SETAO")@(IND,N)=@GLSETA@(N)
 ..S PAR="" F  S PAR=$O(@GLSETA@(N,PAR)) Q:PAR=""  D
 ...I PAR'<MEPAR,PAR'>ADPAR K @GLSETA@(N,PAR)
 ;
END K @GLNEW,@GLNEWI L
 D W(FLAGEND,"blue")
 D PUT^%W1PRM(FLAGEND,1)
 Q
 ;
 ;
SHIN1(GLOB,PR) ;
 N GLOB1,N S GLOB1="^"_GLOB
 I PR#2 D
 .I $D(@GLOB1@(PAROLD)),$D(@GLOB1@(PARNEW)) K @GLOB1@(PARNEW)
 .
 .I $D(@GLOB1@(PAROLD)) D
 ..S MAC1=GLOB1_"(PAROLD)",MAC2=GLOB1_"(PARNEW)" D ^%S1GC1
 ..I '$D(PARCOPY) K @MAC1
 ;
 I PR\2 D
 .S N="" F  S N=$O(@GLOB1@(N)) Q:N=""  I $D(@GLOB1@(N,PAROLD)) D
 ..I '$D(@GLOB1@(N,PARNEW)) D
 ...S MAC1=GLOB1_"(N,PAROLD)",MAC2=GLOB1_"(N,PARNEW)" D ^%S1GC1
 ...I '$D(PARCOPY) K @MAC1
 Q
 ;
 ;
SHIN2(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S A=$G(^(N)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N),"\",NM)=PARNEW
 Q
 ;
SHIN3(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLB1@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N,N1),"\",NM)=PARNEW
 Q
 ;
SHIN4(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLB1@(N,N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(@GLB1@(N,N1,N2)) Q:N2=""  D
 ...S A=$G(^(N2)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N,N1,N2),"\",NM)=PARNEW
 Q
 ;
SHIN5(GLB,NM) ;
 N N,A
 S GLB1="^"_GLB
 S N="" F  S N=$O(@GLB1@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLB1@(N,N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(@GLB1@(N,N1,N2)) Q:N2=""  D
 ...S N3="" F  S N3=$O(@GLB1@(N,N1,N2,N3)) Q:N3=""  D
 ....S A=$G(^(N3)) I $P(A,"\",NM)=PAROLD S $P(@GLB1@(N,N1,N2,N3),"\",NM)=PARNEW
 Q
 ;
MENU ;
 ;1; d ` i v i;
 ;1; ccea hixt cew iepiy;MN1;
 ;1; izveaw micew iepiy;MN2;
 ;1; izveaw micew zwzrd;MN4;
 ;1; micew zwzrd/iiepiy lewehext;MN3;
 Q  ;
 ;
GLDEEP3(GLNM)
 N GL S GL=$$^W4GL(GLNM)
 N N,N1,MAC1,MAC2,PAR,PAROLD,PARNEW,NEW
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  I '(N#1000)
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S PAR="" F  S PAR=$O(@GL@(N,N1,PAR)) Q:PAR=""  D
 ...I $$NEW(PAR) D  Q
 ....S PARNEW=$G(@GLNEW@(PAR))
 ....S PAROLD=PAR
 ....M @(GL_"(N,N1,PARNEW)")=@(GL_"(N,N1,PAROLD)")
 ....K @(GL_"(N,N1,PAROLD)")
 ...;
 ...I PAR["-" S PAROLD=$P(PAR,"-") D  Q
 ....I $L($G(PAROLD)),$$NEW(PAROLD) D  Q
 .....S PARNEW=$G(@GLNEW@(PAROLD))
 .....S NEW=PARNEW_"-"_$P(PAR,"-",2)
 .....M @(GL_"(N,N1,NEW)")=@(GL_"(N,N1,PAR)")
 .....K @(GL_"(N,N1,PAR)")
 Q
 ;
 ;
GLDEEP4(GLNM,PAROLD,PARNEW)
 N GL S GL=$$^W4GL("P1MVCL")
 N N1,N2,N3,N4
 S N1="" F  S N1=$O(@GL@(N1)) Q:N1=""  D
 .S N2="" F  S N2=$O(@GL@(N1,N2)) Q:N2=""  D
 ..S N3="" F  S N3=$O(@GL@(N1,N2,N3)) Q:N3=""  D
 ...S N4="" F  S N4=$O(@GL@(N1,N2,N3,N4)) Q:N4=""  D
 ....I $D(@GL(N1,N2,N3,N4,PAROLD)) D
 .....M @(GL_"(N1,N2,N3,N4,PARNEW)")=@(GL_"(N1,N2,N3,N4,PAROLD)")
 .....K @(GL_"(N1,N2,N3,N4,PAROLD)")
 Q
 ;
W(TXT,COLOR) ;
 N A
 S A="<div dir="""_$$^%W1DIR_""" style=""text-align:center;"_$$FONTFM^W3CSS
 I $L($G(COLOR)) S A=A_";color:"_COLOR
 S A=A_""">"
 S A=A_"<h3" N PRM S PRM=""
 S A=A_">"
 D 
  .I $E(TXT)="!" S A=A_$E(TXT,2,300) Q
  .I TXT[";" S PRM=$P(TXT,";",2,20)
  .S A=A_$$^%W1DICT($P(TXT,";"),PRM)
 S A=A_"</h3>"
 S A=A_"</div>"
 D TMP S SH=SH+1,@TMP@(SH)=A
 Q
 ;
W1(TXT) ;
 D TMP S SH=SH+1,@TMP@(SH)=TXT
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
PROT(TXT) ;
 D W("!"_$$H2U^%L1FRM(TXT))
 Q
 ;
NEW(PAR) ;
 I $G(PAR)="" Q 0
 I $D(@GLNEW@(PAR)),'$D(@GLNEW@(PAR,"ER")) Q 1
 Q 0
 ;
LIST ;
 W "<span>"_$$^%W1DICT("MOVINGITEMSPROTOCOL")_"</span>",!
 W "<br>",!
 W "<table id=""List"" border=""1""  width=""40%"" cellspacing=""0"" dir="""_$$^%W1DIR_""" "
 W ">"
  W "<tr>"
   W "<th>"_$$^%W1DICT("DATE")_"</th>"
   W "<th>"_$$^%W1DICT("TIME")_"</th>"
   W "<th>"_$$^%W1DICT("MEPAR")_"</th>"
   W "<th>"_$$^%W1DICT("ADPAR")_"</th>"
   W "<th>"_$$^%W1DICT("SHIFTHOWMUCH")_"</th>"
   W "<th>"_$$^%W1DICT("CLOSEAFTERMOVING")_"</th>"
  W "</tr>",!
  ;
  N GLPROT S GLPROT=$$^W4GL("P1PRNEW")
  S N="" F  S N=$O(@GLPROT@(N),-1) Q:N=""  D
  .S A=$G(^(N))
  .S DAT=$$^%L1DC($P(N,"-"),1)
  .S SHAA=$$T^%L1TIME($P(N,"-",2))
  .D PRS^%L1FRM(A,"MEPAR\ADPAR\SHIFT\NL","\")
  .S NL1=$$^%W1DICT($S(NL:"YES",1:"NO"))
  . 
  .W "<tr onClick=""ClickList('"_N_"')"" style=""cursor:pointer"" >"
  . W "<td>"_DAT_"</td>"
  . W "<td>"_SHAA_"</td>"
  . W "<td>"_MEPAR_"</td>"
  . W "<td>"_ADPAR_"</td>"
  . W "<td>"_SHIFT_"</td>"
  . W "<td>"_NL1_"</td>"
  .W "</tr>",!
 W "</table>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PARSUG
W4PARSUG ; [ 30.01.23 17:52 ] [ 31.01.12 19:12 ] [
GET(KV) ;
 N VW S VW=$G(@$$^W4GL("W3SUG")@(KV))
 I VW=""!(VW=1) Q 1
 I VW=0 Q 2
 I VW=2 Q 3
 Q 4
 ;
GETDEP(KV)
 N DEP S DEP=$P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",1)
 Q DEP
 ;
GETBG(KV)
 Q $P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",2)
 ;
GETFG(KV)
 Q $P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",3)
 ;
GETDG(KV)
 Q $P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",4)
 ;
GETMN(KV)
 Q $P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",6)
 ;
GETLZ(KV) ;
 Q $P($G(@$$^W4GL("PARSUG")@(KV,1)),"\",9)
 ;
PUT(KV,VL) ;
 I VL=1 S @$$^W4GL("W3SUG")@(KV)=1
 I VL=2 S @$$^W4GL("W3SUG")@(KV)=0
 I VL=3 S @$$^W4GL("W3SUG")@(KV)=2
 I VL=4 S @$$^W4GL("W3SUG")@(KV)=3
 Q
 ;
PUTDEP(KV,VL)
 S $P(@$$^W4GL("PARSUG")@(KV,1),"\",1)=VL
 Q
 ;
PUTBG(KV,VL)
 S $P(@$$^W4GL("PARSUG")@(KV,1),"\",2)=VL
 Q
 ;
PUTFG(KV,VL)
 S $P(@$$^W4GL("PARSUG")@(KV,1),"\",3)=VL
 Q
 ;
PUTDG(KV,VL)
 S $P(@$$^W4GL("PARSUG")@(KV,1),"\",4)=VL
 Q
 ;
PUTMN(KV,VL)
 S $P(@$$^W4GL("PARSUG")@(KV,1),"\",6)=VL
 Q
 ;
PUTLZ(KV,VL)
 S $P(@$$^W4GL("PARSUG")@(KV,1),"\",9)=VL
 Q
 
 
 
 
 
 
 

W4PARTFN
W4PARTFN ; [ 20.04.16 15:34 ] [ 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S TOP=2,NG=0
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PAY")
 S MGROUP(NG,"TO")="PayPartBill()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("PRINT")
 S MGROUP(NG,"TO")="PrintPartBill()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("DELETE")
 S MGROUP(NG,"TO")="DelPartBill()"
 ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("BACK")
 S MGROUP(NG,"TO")="Back()"
 ;
VW D ^W4SHEET("","","",TOP)
 Q
 

W4PARTGT
W4PARTGT(HZM,NTS) ; [ 29.12.21 08:11 ] [ 29.11.18 11:43 ] [ 28.06.17 16:17 ] 
 S NTS=+$G(NTS)
 K @$$^W4TMPORD
 N TMPORD S TMPORD=$$^W4TMPORD
 ;
 D CLRTS(HZM)
 ;
 I 'NTS D LASTPART(HZM) G ORD ; ---- SHAAR A
 ;
 M @TMPORD=@$$^W4ORD@(HZM,"PART",NTS)
 K @TMPORD@("TS")
 N TSH S TSH=$$TOTORD^W3HZMST(JB)-$$HNH^W3HZMST(JB)+$$DMSH^W3HZMST(JB)
 S $P(@TMPORD,"~",11)=TSH
 ;
ORD ;
 K @$$^W4ORD@(-JB)
 N HZ S HZ=$$^W4NEWHZ(JB,-JB,1)
 I NTS,$$TSHL^W4HZMST(HZ),'$$ITRA^W4HZMST(HZ),'$G(@$$^W4ORD@(HZ,"S")) S ^("S")=2
 ;
 I NTS,$D(@$$^W4ORD@(HZM,"PART",NTS))>9,'$D(@$$^W4ORD@(HZM,"PART",NTS,"DELORD")) D
 .N RES S RES=$$^W4GETHZ(HZ)
 .K @$$^W4ORD@(HZM,"PART",NTS)
 .M @$$^W4ORD@(HZM,"PART",NTS)=@TMPORD
 .K @$$^W4ORD@(HZM,"PART",NTS,"TS")
 ;
 S @TMPORD@("ORDNOM")=HZM_"-"_NTS
 I NTS S @$$^W4ORD@(HZM,"PART",NTS,"ORDNOM")=HZM_"-"_NTS
 Q HZ
 ;
 ;
TV(PRM) ;
 N HZM S HZM=$P(PRM,";") I 'HZM Q "<PUSTO>"
 N NTS S NTS=$P(PRM,";",2)
 ;
 D PUT^%W1PRM("HZMMAIN",HZM_"-"_NTS)
 N HZ S HZ=$$W4PARTGT(HZM,NTS) 
 D PUT^%W1PRM("HZM",HZ)
 Q HZ
 ;
 ;
REST(STAM) ;---  REST FULL ORIGINAL ORDER ( HZ --> HZMAIN )
REST1 N HZ S HZ=+$$GETP^%W1PRM("HZM")
 N TMPORD S TMPORD=$$^W4TMPORD
 I '$$^W4ISPART(HZ) Q "NOPART"
 N HZMAIN S HZMAIN=$$GETP^%W1PRM("HZMMAIN")
 I 'HZMAIN Q "NOMAIN"
 N NTS S NTS=+$P(HZMAIN,"-",2)
 S HZMAIN=+HZMAIN
 D PUT^%W1PRM("HZM",HZMAIN)
 ;
 I $$DELPART(HZ),NTS D
 .M @$$^W4ORD@(HZMAIN,"PART",NTS,"DELORD")=@$$^W4ORD@(HZ,"DELORD")
 ;
 I $$DELPART(HZ),NTS,'$$^W4CLOSE(HZ),'$$DELMIN(HZ) D DELOPENPART(HZ,NTS) G RESTCALC
 ;
 I NTS,'$$DELPART(HZ),'$$DELMIN(HZ) D
 .N LASTP S LASTP=0
 .N I S I="" F  S I=$O(@$$^W4ORD@(HZMAIN,"PART",NTS,I)) Q:I=""  I I D
 ..I $P($G(^(I)),"~")=0 S LASTP=LASTP+1 ; -- LASTP- KOL GL STROK IN PART
 .
 .N LASTH S LASTH=$O(@$$^W4ORD@(HZMAIN,9999),-1) ; -- LAST SH IN ORD
 .N K S K=LASTH
 .;
 .N K0
 .;;W 1,!
 .N RES0 S RES0=$$^W4GETHZ(HZMAIN)
 .;;W 2,!
 .N LAST0 S LAST0=$O(@$$^W4TMPORD@(9999),-1),K0=LAST0 ; -- LAST0 - LAST SH IN TMP
 .
 .D KORD^W4TMPORD(JB)
 .N RES S RES=$$^W4GETHZ(HZ)
 .;;W 4,!
 .;
 .N LASTTMP S LASTTMP=$$COLSH0^W3HZMST(JB) ;-- KOL GLAVN STROK V PART BILL
 .N SH0 S SH0=0
 .;
 .D PUT^%W3DEB("W4PARTGT-REST","LASTP=LASTP&LASTTMP=LASTTMP&NTS=NTS")
 .;
 .I LASTTMP>LASTP D  ; -- KOL GL STROK V PART IZMENILOS
 ..N I F I=1:1 Q:'$D(@TMPORD@(I))  D
 ...I $$LVST^W3HZMST(JB,I)=0 S SH0=SH0+1 Q:SH0'>LASTP
 ...I $$LVST^W3HZMST(JB,I) Q:SH0'>LASTP
 ...M @$$^W4ORD@(HZMAIN,"PART",NTS,I)=@$$^W4TMPORD@(I)
 ...N A S A=$G(@TMPORD@(I))
 ...N LV,CD,NAME,MH,QN,SUM,CMNT
 ...S LV=$P(A,"~") Q:LV
 ...S CD=$P(A,"~",2) Q:CD=""
 ...S NAME=$P(A,"~",3)
 ...S MH=$P(A,"~",4)
 ...S QN=$P(A,"~",5)
 ...S AHP=$P(A,"~",6)
 ...S SUM=$J(MH*QN,2,2)
 ...S CMNT=""
 ...N ST1 S ST1=$G(@$$^W4TMPORD@(I+1))
 ...I $P(ST1,"-",2)["-C" S CMNT=$P(ST1,"~",3)
 ...S K=K+1,K0=K0+1
 ...S @$$^W4ORD@(HZMAIN,K)=CD_"\\"_NAME_"\"_MH_"\"_QN_"\\"_SUM_"\"_CMNT_"\\@@"
 ...S @$$^W4ORD@(HZMAIN,"TS",K,NTS)=QN
 ...S @$$^W4ORD@(HZMAIN,"TS",K,"O2T")=K0
 ...S @$$^W4ORD@(HZMAIN,"TS",K)=$G(@$$^W4ORD@(HZMAIN,"TS",K))+QN
 ...
 ...I AHP D
 ....S K=K+1
 ....N SUMA S SUMA=-(SUM*AHP*.01)
 ....S @$$^W4ORD@(HZMAIN,K)="-"_AHP_"%\\\\\\"_SUMA_"\\\@@"
 ;
 ;
 I $$DELMIN(HZ) D
 .K @TMPORD
 .N RES0 S RES0=$$^W4GETHZ(HZ)
 .
 .N I S I="" F  S I=$O(@TMPORD@(I)) Q:I=""  I I D
 ..S @$$^W4ORD@(HZMAIN,"PART",NTS,I)=$G(@TMPORD@(I))
 .
 .S @$$^W4ORD@(HZMAIN,"PART",NTS)=$G(@TMPORD)
 .S @$$^W4ORD@(HZMAIN,"PART",NTS,"DELORD")=$H
 ;
 D KORD^W4TMPORD(JB)
 ;
 I NTS D
 .I $D(@$$^W4ORD@(HZ,"CB")) D
 ..S @$$^W4ORD@(HZMAIN,"PART",NTS)=$TR($G(@$$^W4ORD@(HZ)),"\","~")
 ..
 ..M @$$^W4ORD@(HZMAIN,"PART",NTS,"CB")=@$$^W4ORD@(HZ,"CB")
 ..D RESTCB(HZMAIN,NTS)
 .
 .D
 ..M @$$^W4ORD@(HZMAIN,"PART",NTS,"TB")=@$$^W4ORD@(HZ,"TB")
 ..M @$$^W4ORD@(HZMAIN,"TB")=@$$^W4ORD@(HZ,"TB")
 ;
 I $$DELPART(HZ),'$$WASDEL(HZ),NTS,$$^W4CLOSE(HZ) D  ; DEL PAID PART
 .S RS=$$^W4HZBIT(HZ)
 ;
RESTCALC ;
 D ^W4CALC(HZMAIN)
 ;
 I $$TSHL^W4HZMST(HZMAIN),'$$ITRA^W4HZMST(HZMAIN),'$$^W4CLOSE(HZMAIN) D
 .D SETCLOSE^W4HZMST(HZMAIN)
 ;
 I NTS,'$$DELPART(HZ) S @$$^W4ORD@(HZMAIN,"PART",NTS,"S")=$G(@$$^W4ORD@(HZ,"S"))
 ;
 I $$DELPART(HZ),NTS,$$^W4CLOSE(HZ),'$$DELMIN(HZ),$D(@$$^W4ORD@(HZ_".1")) D  G REST1
 .K @$$^W4ORD@(+HZ)
 .S HZ=HZ_".1" D PUT^%W1PRM("HZM",HZ)
 .N NEWTS,OLDTS S HZMAIN=$$GETP^%W1PRM("HZMMAIN")
 .S OLDTS=NTS
 .S HZMAIN=+HZMAIN
 .S NEWTS=$O(@$$^W4ORD@(HZMAIN,"PART",9999),-1)+1
 .S @$$^W4ORD@(HZMAIN,"PART",OLDTS,"DELBY")=NEWTS
 .D KILLTS(HZMAIN,OLDTS)
 .S HZMAIN=HZMAIN_"-"_NEWTS
 .D PUT^%W1PRM("HZMMAIN",HZMAIN)
 ;
 K @$$^W4ORD@(+HZ)
 ;
 N ITRA S ITRA=$$ITRA^W4HZMST(HZMAIN)
 I 'ITRA D ^W4SGHB(HZMAIN)
 D KILL^%W1PRM("HZMMAIN")
 Q HZMAIN
 ;
 ;
RESTCB(HZMAIN,NTS) ;
 N SUGT,IND,INDMAIN S SUGT=""
 F  S SUGT=$O(@$$^W4ORD@(HZMAIN,"PART",NTS,"CB",SUGT)) Q:SUGT=""  D
 .S IND="" F  S IND=$O(@$$^W4ORD@(HZMAIN,"PART",NTS,"CB",SUGT,IND)) Q:IND=""  I IND D
 ..S INDMAIN=$G(@$$^W4ORD@(HZMAIN,"PART",NTS,"PYIND",SUGT,IND)) I INDMAIN D  Q
 ...M @$$^W4ORD@(HZMAIN,"CB",SUGT,INDMAIN)=@$$^W4ORD@(HZMAIN,"PART",NTS,"CB",SUGT,IND)
 ..S INDMAIN=$O(@$$^W4ORD@(HZMAIN,"CB",SUGT,9999),-1)+1
 ..S @$$^W4ORD@(HZMAIN,"PART",NTS,"PYIND",SUGT,IND)=INDMAIN
 ..N ST S ST=$G(@$$^W4ORD@(HZMAIN,"PART",NTS,"CB",SUGT,IND))
 ..M @$$^W4ORD@(HZMAIN,"CB",SUGT,INDMAIN)=@$$^W4ORD@(HZMAIN,"PART",NTS,"CB",SUGT,IND)
 ;
 S $P(@$$^W4ORD@(HZMAIN,"CB"),"\")=$$NCAB(HZMAIN)
 ;
 I '$$^W4CLOSE(HZMAIN) D
 .S $P(@$$^W4ORD@(HZMAIN,"CB"),"\",14)=$$^W4MYDVN ; -- MISP EMDA
 Q
 ;
NCAB(HZM) ;
 N N,NC,NCAB S NCAB="",N="" F  S N=$O(@$$^W4ORD@(HZM,"PART",N)) Q:N=""  D
 .N A S A=$G(@$$^W4ORD@(HZM,"PART",N,"CB")),NC=$P(A,"\") Q:NC=""
 .S NCAB=NCAB_NC_","
 I $E(NCAB,$L(NCAB))="," S NCAB=$E(NCAB,1,$L(NCAB)-1)
 Q NCAB
 ; 
 ;
NEWTS(STAM) ;
 N NTS,NEWTS,HZ,HZMAIN
 S HZMAIN=$$GETP^%W1PRM("HZMMAIN")
 S HZ=$$GETP^%W1PRM("HZM")
 ;
 S NTS=$P(HZMAIN,"-",2) I NTS'=0 Q "NOLASTPART"
 S HZMAIN=+HZMAIN
 N N,STS S N="",STS=0
 ;
 F  S N=$O(@$$^W4ORD@(HZMAIN,"PART",N)) Q:N=""  D
 .S STS=STS+$P($G(^(N)),"~",11)
 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(HZMAIN)
 I TSHL>0&(TSHL-STS'>0) Q "NOTSHL"
 I TSHL<0&(TSHL-STS'<0) Q "NOTSHL"
 S NEWTS=$O(@$$^W4ORD@(HZMAIN,"PART",9999),-1)+1
 N TMPORD S TMPORD=$$^W4TMPORD
 ;
 S HZ=$$W4PARTGT(HZMAIN,0)
 Q:$D(@TMPORD)<10 "NOITEMS"
 ;
 D NEWPART^W4ITDEL(HZMAIN,1)
 ;
 ;;D
 .N K,QNI,IND
 .N I,ITO S I="" F  S I=$O(@TMPORD@(I)) Q:I=""  I I D
 ..S @$$^W4ORD@(HZMAIN,"PART",NEWTS,I)=$G(@TMPORD@(I))
 ..S IND=$G(@TMPORD@("TS",I,"O2T"))
 ..;
 ..S K=$P(IND,"\")
 ..S ITO=$P(IND,"\",2)
 ..
 ..S QNI=$$ITRAST^W3HZMST(JB,I,"",1) Q:QNI'>0
 ..I K,ITO D SETTS^W4ITDEL(HZMAIN,NEWTS,K,ITO,QNI) ;
 ..S @TMPORD@("TS",I,NEWTS)=QNI
 ..S @TMPORD@("TS",I)=$G(@TMPORD@("TS",I))+QNI
 .;
 .S @$$^W4ORD@(HZMAIN,"PART",NEWTS)=$G(@TMPORD)
 ;
 N NEWMAIN S NEWMAIN=HZMAIN_"-"_NEWTS
 D PUT^%W1PRM("HZMMAIN",NEWMAIN)
 S @$$^W4ORD@(HZ,"ORDNOM")=NEWMAIN
 S @TMPORD@("ORDNOM")=NEWMAIN
 Q 1
 ;
 ;
LASTPART(HZM) ;
 N TMPORD S TMPORD=$$^W4TMPORD K @TMPORD
 N TMPPART S TMPPART=$$^W4MAIN("TMPPART") K @TMPPART
 ;
 N A S A=$$^W4GETHZ(HZM,TMPPART)
 K @TMPORD@("TS")
 ;
 N K S K=0
 N NP S NP=0
 N ST,ST0 S ST0=""
 N CDT S CDT=0
 ;
 N I,QN,QNN S I="" F  S I=$O(@TMPPART@(I)) Q:I=""  I I D
 .S ST=$G(^(I))
 .I $P(ST,"~")=0 D
 ..S NP=NP+1
 ..I $P(ST0,"~",6) S NP=NP+1
 ..S ST0=ST
 .S QNN=$$ITRAST^W3HZMST(JB,I,TMPPART,1) Q:QNN'>0
 .;
 .S K=K+1,@TMPORD@(K)=$P(@TMPPART@(I),"~",1,4)_"~"_QNN_"~"_$P(@TMPPART@(I),"~",6,12)
 .I $P(ST,"~")=0 D
 ..S @TMPORD@("TS",K,"O2T")=NP_"\"_I
 .I $P(ST,"~")=1 D
 ..S CDT=$P(ST,"~",2) Q:CDT?.E1U.E  Q:CDT["%"  Q:CDT["-"  Q:'CDT
 ..S NP=+NP_"-"_CDT
 ..S @TMPORD@("TS",K,"O2T")=NP_"\"_I
 .I $P(ST,"~")=2 D
 ..S CDT2=$P(ST,"~",2) Q:CDT2?.E1U.E  Q:CDT2["%"  Q:CDT2["-"  Q:'CDT2
 ..S NP=+NP_"-"_CDT_"-"_CDT2
 ..S @TMPORD@("TS",K,"O2T")=NP_"\"_I
 ;
 S @TMPORD=$G(@TMPPART)
 S $P(@TMPORD,"~",8)=""
 S $P(@TMPORD,"~",12)=""
 S $P(@TMPORD,"~",17)=""
 S $P(@TMPORD,"~",11)=$$CALC^W3HZMST(JB)
 K @TMPPART
 Q
 ;
KILLTS(HZMAIN,NTS) ;
 S HZMAIN=+$G(HZMAIN)
 N N
 S N="" F  S N=$O(@$$^W4ORD@(HZMAIN,"TS",N)) Q:N=""  D
 .D SETTSORD^W4ITDEL(HZMAIN,NTS,N)
 .K @$$^W4ORD@(HZMAIN,"TS",N,NTS)
 .I $O(@$$^W4ORD@(HZMAIN,"TS",N,""))'?1N.N K @$$^W4ORD@(HZMAIN,"TS",N)
 Q
 ;
DELPART(HZ) ;
 I '$$^W4ISPART(HZ) Q 0
 Q $D(@$$^W4ORD@(HZ,"DELORD"))&($$TSHL^W4HZMST(HZ)>0)
 ;
RESTTS(HZM,NTS) ;
 D KILLTS(HZM,NTS)
 D
 .N N S N=""
 .F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ..N A S A=$G(^(N))
 ..N STS S STS=$P(A,"\",13)
 ..N STS1 S STS1=$P(STS,";",NTS) Q:'STS1
 ..S @$$^W4ORD@(HZM,"TS",N,NTS)=+STS1
 ..S @$$^W4ORD@(HZM,"TS",N,"O2T")=$P(STS1,":",2)
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N,N1)) Q:N1=""  I N1 D
 ...N B S B=$G(^(N1))
 ...N STS S STS=$P(B,"\",13)
 ...N STS1 S STS1=$P(STS,";",NTS) Q:'STS1
 ...S @$$^W4ORD@(HZM,"TS",N_"-"_N1,NTS)=+STS1
 ...S @$$^W4ORD@(HZM,"TS",N_"-"_N1,"O2T")=$P(STS1,":",2)
 ...S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N,N1,N2)) Q:N2=""  I N2 D
 ....N C S C=$G(^(N2))
 ....N STS S STS=$P(C,"\",13)
 ....N STS1 S STS1=$P(STS,";",NTS) Q:'STS1
 ....S @$$^W4ORD@(HZM,"TS",N_"-"_N1_"-"_N2,NTS)=+STS1
 ....S @$$^W4ORD@(HZM,"TS",N_"-"_N1_"-"_N2,"O2T")=$P(STS1,":",2)
 Q
 ;
DELMIN(HZ) ; 
 Q HZ["." 
 ;
 ;
DELOPENPART(HZ,NTS) ;
 I $D(@$$^W4ORD@(HZ,"CB")) D  ; -- BITUL TASHLUMIM
 .N RES S RES=$$DELCB^W4HZDEL(HZ)
 ;
 D KILLTS(HZMAIN,NTS)
 K @$$^W4ORD@(HZMAIN,"PART",NTS)
 D KORD^W4TMPORD(JB)
 ;
 I $D(@$$^W4ORD@(HZ,"CB")) D  ; -- WAS PAYMENT
 .M @$$^W4ORD@(HZMAIN,"PART",NTS,"CB")=@$$^W4ORD@(HZ,"CB")
 .;;M @$$^W4ORD@(HZMAIN,"PART",NTS,"DELORD")=@$$^W4ORD@(HZ,"DELORD")
 .S @$$^W4ORD@(HZMAIN,"PART",NTS,1)="0~0~lhea oeayg~0~1~"
 Q
 ;
WASDEL(HZ) ;
 Q $G(@$$^W4ORD@(HZ,"DELBY"))
 ;
CLRTS(HZM) ; 
 I HZM>0 D
 .N NP S NP="" F  S NP=$O(@$$^W4ORD@(HZM,"TS",NP)) Q:NP=""  I NP D 
 ..N TS S TS="" F  S TS=$O(@$$^W4ORD@(HZM,"TS",NP,TS)) Q:TS=""  I TS D 
 ...I '$D(@$$^W4ORD@(HZM,"PART",TS)) K @$$^W4ORD@(HZM,"TS",NP,TS)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PARTN
W4PARTN(PAR,DAT1,DAT2) ; [ 17.05.20 07:56 ] [ 22.03.16 20:54 ] [ 30.12.15 18:44 ] 
 N (JB,%ARG,%REM,PAR,DAT1,DAT2)
 I $G(PAR)="" D  Q
 .W "<script>",!
 . W "MsgA(""ITEMCODENOTDEFINED"")",!
 . W "Back()",!
 .W "</script>",!
PC ;
 I $G(DAT2)?.P S DAT2=$ZD($H,"DD.MM.YY")
 I $G(DAT1)?.P D
 .S DAT1="01.01."_$P(DAT2,".",3)
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 I 'DT1!($TR(DAT1,"./","")'?6N) D  Q
 .W "<div align=""center"">",!
 .W "<br>",!
 .D KOTPAR
 .W "<br>",!
 .W "<table dir="""_$$^%W1DIR_""">",!
 .W " <tr>"
 .W " <td>"_$$^%W1DICT("MEDATE")_"</td>"
 .W " <td dir=""LTR"">" D ^%W1DAT("MEDAT") W "</td>"
 .W " <td width=""10%"">&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("ADDATE")_"</td>"
 .W " <td style=""font-weight:bold"">"_DAT2_"</td>"
 .W " <td width=""10%"">&nbsp;</td>"
 .W " <td>"
 .   D ROUNDBUT^%W1JS("Show",$$^%W1DICT("SHOW"),"Show('"_DAT2_"')","color:green",",,,80")
 .  W "</td>"
 .  W "<td>&nbsp;</td>"
 .  W "<td>"
 .   D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
 .  W " </td>"
 .W " </tr>"
 .W "</table>",!
 .W "</div>",!
 ;
 S W4MLY=$$^W4GL("W4MLY")
 ;
 D DIVBUT
 ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=33,SHLN=0,SSHLN=0
 S (SINP,SOUT,SBACK,ITRA)=0
 ;
 D KOT(PAR) S SHLN=SHLN+3
 ;
 S ITRA0=$$^W4GETMLY(PAR,DT1-1)
 ;
 W "<tr>"
 W " <td>&nbsp;</td>"
 W " <td style=""font-weight:bold"">"_$$^%W1DICT("ITRA0")_"</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 N RED S RED="" I ITRA0<0 S RED=";color:red"
 W "  <td dir=""LTR"" align=""right"" style=""font-weight:bold"_RED_""">"_$J(ITRA0,2,2)_"</td>",!
 W "</tr>"
 ;
 F DT=DT1:1:DT2  D
 .S IO="" F  S IO=$O(@W4MLY@(DT,PAR,IO)) Q:IO=""  D
 ..S ORG="" F  S ORG=$O(@W4MLY@(DT,PAR,IO,ORG)) Q:ORG=""  D
 ...S SUGTD="" F  S SUGTD=$O(@W4MLY@(DT,PAR,IO,ORG,SUGTD)) Q:SUGTD=""  D
 ....S NOMTD="" F  S NOMTD=$O(@W4MLY@(DT,PAR,IO,ORG,SUGTD,NOMTD)) Q:NOMTD=""  D
 .....N QN S QN=$G(^(NOMTD)) Q:'QN
 .....S SUGTD1=$$SUGTD(SUGTD,NOMTD)
 .....S NOMTD1=$$NOMD(NOMTD,IO,SUGTD)
 .....S SHLN=SHLN+1,SSHLN=SSHLN+1
 .....I SHLN>RSIZE D PAGEBREAK
 .....S PRM=PAR_"n"_ORG_"n"_SUGTD1_"n"_NOMTD1_"n"_DT
 .....W "<tr onClick=""OnClickTr('"_PRM_"')"""
 .....W " style=""cursor:pointer"
 .....I $$IDK(SUGTD) W ";font-weight:bold"
 .....W """"
 .....W " >"
 .....W " <td align=""center"">"_$$^%L1DC(DT,1)_"</td>"
 .....
 .....W " <td>&nbsp;"
 .....W $$H2U^%L1FRM($$NAMEDOC(SUGTD1))
 .....;;I $$IDK(SUGTD) W "</span>"
 .....W "</td>"
 .....
 .....W "<td id="""_PAR_"n"_ORG_"n"_SUGTD1_"n"_NOMTD1_"n"""
 .....I PRM=$$GET^%W1PRM("DPARCUR") W " style=""border:solid 2px brown"""
 .....W " >&nbsp;"_NOMTD1_"</td>"
 .....
 .....W "<td>"_$$ORG(ORG,IO)_"</td>",!
 .....
 .....S (INP,OUT,BACK)=""
 .....I IO="O" S OUT=QN
 .....I IO="I",'$$TZ(SUGTD) S INP=QN
 .....I IO="I",$$TZ(SUGTD) S BACK=QN
 .....
 .....D RKV(INP,"darkblue") S SINP=SINP+INP
 .....
 .....D RKV(BACK,"red") S SBACK=SBACK+BACK
 .....
 .....D RKV(OUT,"green") S SOUT=SOUT+OUT
 .....S ITRA=ITRA0+INP-BACK-OUT
 .....
 .....D RKV(ITRA,"black") S ITRA0=ITRA
 .....W "</tr>",!
 ;
 ;---------------------- ITOGO -------
 W "<tr style=""background-color:yellow;font-weight:bold"">"
 W " <td>"_$$^%W1DICT("TOTAL")_"</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 D RKV(SINP,"darkblue",1)
 D RKV(SBACK,"red",1)
 D RKV(SOUT,"green",1)
 D RKV($J($G(ITRA),2,2),"black",1)
 W "</tr>",!
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')",!
 .W " Back()",!
 .W "</script>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
NAMEDOC(SUGTD) ;
 I SUGTD="ORD" Q "migelyn/dcrqn zpnfd"
 I SUGTD="H" Q "qn zipeayg"
 I SUGTD="TM" Q "gelyn zcerz"
 I SUGTD="TZ" Q "iekif qn zipeayg"
 I SUGTD="HMK" Q "dlaw / qn zipeayg"
 I SUGTD="ITK" Q "i`ln ipezp oekcr"
 I SUGTD="IHB" Q "ykx zipeayg"
 I SUGTD="ITM" Q "ykx gelyn zcerz"
 I SUGTD="ITZ" Q "xfgd ykx zcerz"
 I SUGTD="IHBZ" Q "iekif ykx zipeayg"
 Q ""
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT(PAR)
 S SHLN=0
 Q
 ;
KOTPAR ;
 W "<span dir="""_$$^%W1DIR_""" "
 W "style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;"_$$FONTFM^W3CSS_""">"
 W PAR_" "_$$H2U^%L1FRM($$MLNAME^W4MLPRT(PAR))_"</span><br />",!
 Q
 ;
KOT(PAR) ;
 D KOTPAR
 W "<table dir="""_$$^%W1DIR_""" >",!
 ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_DAT1_"</td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td >"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_DAT2_"</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<br /><br/>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""80%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("DATE")_"</th>"
 W "  <th>"_$$^%W1DICT("KINDOFDOCUMENT")_"</th>"
 W "  <th>"_$$^%W1DICT("NUMBEROFDOC")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLORCUST")_"</th>"
 W "  <th>"_$$^%W1DICT("INPUT")_"</th>"
 W "  <th>"_$$^%W1DICT("DLVBACK")_"</th>"
 W "  <th>"_$$^%W1DICT("OUTPUT")_"</th>"
 W "  <th>"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV,'$G(IT) S RKV=""
 I RKV!$G(IT) S RKV=$J(RKV,2,2)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
SUGTD(SUGTD,NUMBER)
 I SUGTD'="OUT" Q SUGTD
 Q $$OUTSUG(NUMBER)
 ;
OUTSUG(NUMBER) ;
 N GLOUT S GLOUT=$$^W4GL("W4DOC")
 I $D(@GLOUT@(NUMBER,"H")) Q "H"
 I $D(@GLOUT@(NUMBER,"TM")) Q "TM"
 I $D(@GLOUT@(NUMBER,"TZ")) Q "TZ"
 I $D(@GLOUT@(NUMBER,"HMK")) Q "HMK"
 Q ""
 ;
OUTNMD(OUTSUG)
 I OUTSUG="ORD" Q "(migelyn/dcrqn) dpnfd"
 I OUTSUG="H" Q "qn zipeayg"
 I OUTSUG="TM" Q "gelyn zcerz"
 I OUTSUG="TZ" Q "iekif qn zipeayg"
 I OUTSUG="HMK" Q "dlaw / qn zipeayg"
 Q ""
 ;
NOMD(NUMBER,IO,SUGTD)
 I IO="I" Q NUMBER
 I SUGTD="ORD" Q NUMBER
 N GLOUT S GLOUT=$$^W4GL("W4DOC")
 N OUTSUG S OUTSUG=$$OUTSUG(NUMBER)
 I OUTSUG'="" Q $G(^(OUTSUG))
 Q 0
 ;
INP(SUGTD) ;
 I SUGTD="OUT" Q 0
 Q 1
 ;
TZ(SUGTD) ;
 I SUGTD="TZ" Q 1
 I SUGTD="ITZ" Q 1
 I SUGTD="IHBZ" Q 1
 Q 0
 ;
IDK(SUGTD) ;
 I SUGTD="ITK" Q 1
 Q 0
 ;
ORG(ORG,IO)
 I IO="I" Q ORG_" "_$$H2U^%L1FRM($$NAME^W4SPK(ORG))
 Q ORG_" "_$$H2U^%L1FRM($$LKH^W4L(ORG))
 
 
 
 

W4PARTP0
W4PARTPY(HZM) ; [ 05.11.16 08:16 ] [ 16.10.16 12:54 ] [ 22.09.16 20:21 ] 
 N (JB,%ARG,HZM)
 N I,J,K,STS,SSHUL,SSHULA,ITR S (K,STS,SSHUL,SSHULA,ITR)=0
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<br>",!
  ;
  S NTS="" F  S NTS=$O(@$$^W4ORD@(HZM,"PART",NTS)) Q:NTS=""  D
  .I '$O(@$$^W4ORD@(HZM,"PART",NTS,999),-1) D
  ..K @$$^W4ORD@(HZM,"PART",NTS)
  ;
  S LAST=$O(@$$^W4ORD@(HZM,"PART",999),-1)
  N COLX S COLX=6,COLY=3
  ;
  W "<table width=""90%"" height=""90%"" border=""1"" style=""background-color:white"" >"
   F I=1:1:COLY D
    .W "<tr style=""height:180px;width:180px"">"
    .F J=1:1:COLX D
    ..S K=K+1
    ..I K>LAST D
    ...S ITR=$$TSHL^W4HZMST(HZM)-$G(STS)
    ...I ITR>0&(ITR<.6)!(ITR<0&(ITR>-.6)) D
    ....N HNH2 S HNH2=$$HNH2^W4HZMST(HZM)+ITR
    ....D PUT^W4HZMST(HZM,"HNH2",HNH2)
    ....S ITR=0
    ..W "<td width="""_(100\COLX)_"%"" "
    .. ; 
    .. I (K=(LAST+2)&ITR)!(K=(LAST+1)&'ITR) D
    ... W " style=""background-color:yellow;text-align:center;font-weight:bold;cursor:pointer;font-size:"_$$^W3FSZ(12)_""" "
    ... W " onMouseUp=""PaymTotal()"" "
    .. I $$KDEL(K) D
    ... W " style=""background-color:red;color:white;text-align:center;font-weight:bold;cursor:pointer;font-size:"_$$^W3FSZ(12)_""" "
    ... W " onMouseUp=""DelPart()"" "
    ..W ">"
    .. I K'>LAST D SUBBILL(HZM,K)
    .. I K=(LAST+1) D
    ... I 'ITR D PAYMTOTAL Q
    ... D SUBBILL(HZM,0)
    .. I K=(LAST+2),ITR D
    ... D PAYMTOTAL
    .. I $$KDEL(K) D
    ... D DELALLPARTS
    .. I K>(LAST+2-(+ITR=0)) W "&nbsp;" Q
    ..W "</td>"
    .W "</tr>",!
  W "</table>",!
 W "</div>",!
 ;
 Q
 ;
SUBBILL(HZM,K)
 N TS,SHUL
 I K=0 D
 .D KORD^W4TMPORD(JB)
 ;
 I K,'$D(@$$^W4ORD@(HZM,"PART",K)) W "&nbsp;" Q
 N HZ I K S HZ=$$^W4PARTGT(HZM,K) I 'HZ W "&nbsp;" Q
 W "<table width=""100%"" onMouseUp=""ClickPartBill('"_HZM_"','"_K_"')"" "
  W " style=""cursor:pointer;font-size:"_$$^W3FSZ(12)
  I $D(@$$^W4ORD@(HZM,"PART",K,"DELORD"))!$D(@$$^W4ORD@(HZM,"PART",K,"DELBY")) W ";background-color:pink"
  W """ "
  W " cellpadding=""4"" "
  W ">",!
  W "<tr style=""font-weight:bold;color:"_$S('K:"red",1:"green")_""" >"
   W "<td colspan=""2"" align=""center"" >"
    W $S(K=0:$$^%W1DICT("REMAINDBILL"),1:$$^%W1DICT("SUBBILL",K))
   W "</td>"
  W "</tr>",! 
  ;
  W "<tr>"
   W $$TDNM_$$^%W1DICT("TOPAY")_"</td>"
   S TS=$S(K=0:$$TSHL^W4HZMST(HZM)-$G(STS),1:$$TSHL^W4HZMST(HZ))
   I K S STS=STS+TS
   W $$TDRKV_$J(TS,2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W $$TDNM_$$^%W1DICT("PAID")_"</td>"
   I K D
   .S SHUL=$$SSHUL^W4HZMST(HZ)
   W $$TDRKV_$J($S(K=0:0,1:SHUL),2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W $$TDNM_$$^%W1DICT("CREDIT")_"</td>"
   I K D
   .S SHULA=$$SAS^W4HZMST(HZ)
   W $$TDRKV_$J($S(K=0:0,1:SHULA),2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W $$TDNM_$$^%W1DICT("ITRA")_"</td>"
   N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
   W $$TDRKV($S(K=0:"RED",1:"BROWN"))_$J($S(K=0:TS,1:$$ITRA^W4HZMST(HZ)),2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   D
   .I 'K W "<td colspan=""2"">&nbsp;</td>",! Q
   .I '$$TIP^W4HZMST(HZ) W "<td colspan=""2"">&nbsp;</td>",! Q
   .W $$TDNM_$$^%W1DICT("TIP")_"</td>"
   .W $$TDRKV("BROWN")_$$TIP^W4HZMST(HZ)_"</td>",!
  W "</tr>",!
 W "</table>",!
 ;
 Q
 ;
TDNM(STAM) ;
 Q "<td>"
 ;
TDRKV(COLOR) ;
 N ST S ST="<td "
  S ST=ST_"style=""font-weight:bold"
  I $L($G(COLOR)) S ST=ST_";color:"_COLOR
  S ST=ST_""""
 S ST=ST_" >"
 Q ST
 ;
PAYMTOTAL ;
 W $$^%W1DICT("PAYMTOTAL")
 Q
DELALLPARTS ;
 W $$^%W1DICT("DELALLPARTS")
 Q
 ;
KDEL(K) ; 
 I K=(LAST+3)&ITR!(K=(LAST+2)&'ITR),$$ITRA^W4HZMST(HZM) Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PARTPY
W4PARTPY(HZM) ; [ 29.10.20 16:32 ] [ 30.11.18 09:32 ] [ 29.11.18 17:10 ] 
 N (JB,%ARG,HZM)
 N I,J,K,STS,SSHUL,SSHULA,ITR S (K,STS,SSHUL,SSHULA,ITR)=0
 S NP="",FIRST=1
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<br>",!
  ;
  S NP="" F  S NP=$O(@$$^W4ORD@(HZM,"PART",NP)) Q:NP=""  D
  .I '$O(@$$^W4ORD@(HZM,"PART",NP,999),-1) D
  ..K @$$^W4ORD@(HZM,"PART",NP)
  ;
  S NP="",K=0 F  S NP=$O(@$$^W4ORD@(HZM,"PART",NP)) Q:NP=""  S K=K+1
  S KLAST=K,K=0
  ;
  S LAST=$O(@$$^W4ORD@(HZM,"PART",999),-1)
  N COLX S COLX=6,COLY=3
  ;
  W "<table width=""90%"" height=""90%"" border=""1"" style=""background-color:white"" >"
   F I=1:1:COLY D
    .W "<tr style=""height:180px;width:180px"">"
    .F J=1:1:COLX D
    ..S K=K+1
    ..I NP!FIRST S NP=$O(@$$^W4ORD@(HZM,"PART",NP)) S FIRST=0 I 'NP D
    ...S KLAST=K-1 
    ..I K=(KLAST+1) D
    ...S ITR=$$TSHL^W4HZMST(HZM)-$G(STS)
    ...I ITR>0&(ITR<.6)!(ITR<0&(ITR>-.6)) D
    ....N HNH2 S HNH2=$$HNH2^W4HZMST(HZM)+ITR
    ....D PUT^W4HZMST(HZM,"HNH2",HNH2)
    ....S ITR=0
    ..W "<td width="""_(100\COLX)_"%"" "
    .. ; 
    .. I (K=(KLAST+2)&ITR)!(K=(KLAST+1)&'ITR) D
    ... W " style=""background-color:yellow;text-align:center;font-weight:bold;cursor:pointer;font-size:"_$$^W3FSZ(12)_""" "
    ... W " "_$$^W4TOUCH_"=""PaymTotal()"" "
    .. I $$KDEL(K) D
    ... W " style=""background-color:red;color:white;text-align:center;font-weight:bold;cursor:pointer;font-size:"_$$^W3FSZ(12)_""" "
    ... W " "_$$^W4TOUCH_"=""DelPart()"" "
    ..W ">"
    .. I K'>KLAST D SUBBILL(HZM,NP)
    .. I K=(KLAST+1) D
    ... I 'ITR D PAYMTOTAL Q
    ... D SUBBILL(HZM,0)
    .. I K=(KLAST+2),ITR D
    ... D PAYMTOTAL
    .. I $$KDEL(K) D
    ... D DELALLPARTS
    .. I K>(KLAST+2-(+ITR=0)) W "&nbsp;" Q
    ..W "</td>"
    .W "</tr>",!
  W "</table>",!
 W "</div>",!
 ;
 Q
 ;
 ;
SUBBILL(HZM,NP)
 N TS,SHUL
 I NP=0 D
 .D KORD^W4TMPORD(JB)
 ;
 I NP,'$D(@$$^W4ORD@(HZM,"PART",NP)) W "&nbsp;" Q
 N HZ S HZ=HZM I NP S HZ=$$^W4PARTGT(HZM,NP) I 'HZ W "&nbsp;" Q
 ;
 W "<table width=""100%"" "_$$^W4TOUCH_"=""ClickPartBill('"_HZM_"','"_NP_"')"" "
  W " style=""cursor:pointer;font-size:"_$$^W3FSZ(12)
  I $D(@$$^W4ORD@(HZM,"PART",NP,"DELORD"))!$D(@$$^W4ORD@(HZM,"PART",NP,"DELBY")) W ";background-color:pink"
  W """ "
  W " cellpadding=""4"" "
  W ">",!
  W "<tr style=""font-weight:bold;color:"_$S('NP:"red",1:"green")_""" >"
   W "<td colspan=""2"" align=""center"" >"
    W $S(NP=0:$$^%W1DICT("REMAINDBILL"),1:$$^%W1DICT("SUBBILL",NP))
   W "</td>"
  W "</tr>",! 
  ;
  W "<tr>"
   W $$TDNM_$$^%W1DICT("TOPAY")_"</td>"
   S TS=$S(NP=0:$$TSHL^W4HZMST(HZM)-$G(STS),1:$$TSHL^W4HZMST(HZ))
   I NP S STS=STS+TS
   W $$TDRKV_$J(TS,2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td style=""color:brown;font-weight:bold"" >"_$$^%W1DICT("PAID")_"</td>"
   I NP D
   .S SHUL=$$SSHUL^W4HZMST(HZ)+$$SODEFMZ^W4HZMST(HZ)
   W $$TDRKV_$J($S(NP=0:0,1:SHUL),2,2)_"</td>"
  W "</tr>",!
  ;
  I NP D
  .S ODEF=$$SODEFMZ^W4HZMST(HZ)
  .I ODEF D
  ..W "<tr>"
  .. W $$TDNM_$$^%W1DICT("ODEF")_"</td>"
  .. W $$TDRKV_$J(ODEF,2,2)_"</td>"
  ..W "</tr>",!
 ;
  W "<tr>"
   W $$TDNM_$$^%W1DICT("CREDIT")_"</td>"
   I NP D
   .S SHULA=$$SAS^W4HZMST(HZ)
   W $$TDRKV_$J($S(NP=0:0,1:SHULA),2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W $$TDNM_$$^%W1DICT("ITRA")_"</td>"
   N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
   W $$TDRKV($S(NP=0:"RED",1:"BROWN"))_$J($S(NP=0:TS,1:$$ITRA^W4HZMST(HZ)),2,2)_"</td>"
  W "</tr>",!
  ;
  W "<tr>"
   D
   .I 'NP W "<td colspan=""2"">&nbsp;</td>",! Q
   .I '$$TIP^W4HZMST(HZ) W "<td colspan=""2"">&nbsp;</td>",! Q
   .W $$TDNM_$$^%W1DICT("TIP")_"</td>"
   .W $$TDRKV("BROWN")_$$TIP^W4HZMST(HZ)_"</td>",!
  W "</tr>",!
 W "</table>",!
 ;
 Q
 ;
TDNM(STAM) ;
 Q "<td>"
 ;
TDRKV(COLOR) ;
 N ST S ST="<td "
  S ST=ST_"style=""font-weight:bold"
  I $L($G(COLOR)) S ST=ST_";color:"_COLOR
  S ST=ST_""""
 S ST=ST_" >"
 Q ST
 ;
PAYMTOTAL ;
 W $$^%W1DICT("PAYMTOTAL")
 Q
NEWSUBBILL ;
 W $$^%W1DICT("NEWSUBBILL")
 Q
DELALLPARTS ;
 W $$^%W1DICT("DELALLPARTS")
 Q
 ;
KDEL(K) ; 
 I $$MGR1^W4OPT,K=(KLAST+3)&ITR!(K=(KLAST+2)&'ITR),$$ITRA^W4HZMST(HZM) Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PARUS
W4PARUS ;         [ 30.05.23 14:35 ] [ 01.04.21 08:23 ] [ 11.01.21 07:01 ] 
P1AIN(%NXN) ;
      Q $$P1HZTF(%NXN)
P1EZM I '$D(@$$^W4GL("P1EZA")@(%NXN))&'$D(@$$^W4GL("P1EZT")@(%NXN))&'$D(@$$^W4GL("P1EZR")@(%NXN))
P1EZR I '$D(@$$^W4GL("P1EZI")@(%NXN))&'$D(@$$^W4GL("P1EZA")@(%NXN))&'$D(@$$^W4GL("P1EZT")@(%NXN))
P1EZS I '$D(@$$^W4GL("P1EZI")@(%NXN))&'$D(@$$^W4GL("P1EZA")@(%NXN))&'$D(@$$^W4GL("P1EZT")@(%NXN))
P1HZ(%NXN,NMB) Q $$P1HZTF(%NXN)
P1HZMS(%NXN,NMB) Q $$P1HZTF(%NXN,$G(NMB))
P1HZTF(%NXN,NMB) ;
       N MYDVN S MYDVN=$$^W4MYDVN
       ;W "  "_%NXN_" "_1
       I $$NL^W4PRTVW(%NXN) Q 0
       ;W 2
       ;
       I '$D(P1DZ) S P1DZ=$$^W4DZ
       ;W 3
       I $P($G(@$$^W4GL("W3PAR")@(%NXN)),"\")=0 Q 0
       ;W 3.5
       N SUG S SUG=$$SUG^W4P(%NXN)
       I $G(NMB),SUG,$$^W4MSD(NMB),$G(@$$^W4GL("W3SUG")@(SUG))=3 Q 0
       I $G(NMB),SUG,$$^W4MSL(NMB),$G(@$$^W4GL("W3SUG")@(SUG))=2 Q 0
       ;W 4  
       I $$GET^%W1PRM("TFR"),(","_$G(@$$^W4GL("W3PAR")@(%NXN,"TFR"))_",")'[(","_$$GET^%W1PRM("TFR")_",") Q 0
       ;W 5
       I $D(@$$^W4GL("W3PAR")@(%NXN,"SHAA")) Q:$$NOSHAA1^W3HZTFR(^("SHAA")) 0
       ;W 6
       I $G(@$$^W4GL("W3PAR")@(%NXN,"DAYS")),'$E(^("DAYS"),$$^%L1DC(P1DZ,8)) Q 0
       ;W 7 
       ;
       I $$BDKNL^W4BDKPAR(%NXN) Q 0
       ;W 8
       Q:'$G(NMB) 1
       ;W 9 
       I '$G(@$$^W4PRM@("TSF")),$D(@$$^W4GL("P1EZ")@(%NXN)),$G(TF),$G(TF)<3 Q 0
       ;W 10
       I $G(@$$^W4GL("P1TFR")),$D(@$$^W4GL("P1TFR"))=11,'$D(@$$^W4GL("P1TFRI")@(%NXN)),$G(@$$^W4PRM@("TSFTFR"))!'$D(@$$^W4GL("P1EZ")@(%NXN)) Q 0
       ;W 11
       I $D(@$$^W4GL("P1PARPOS")@(%NXN)),"\"_@$$^W4GL("P1PARPOS")@(%NXN)_"\"'[("\"_MYDVN_"\") Q 0
       ;W 12   
       I $G(@$$^W4GL("PL")@("NAME"))'="ZADA",$L($G(NMB))>3,$G(@$$^W4GL("P1TFRM")@(MYDVN)),'$D(@$$^W4GL("P1TFRIM")@(MYDVN,%NXN)),$G(@$$^W4GL("P1PRM")@("TSFTFR"))!'$D(@$$^W4GL("P1EZ")@(%NXN)) Q 0
       ;W 13 
       I $$NOKIOSK^W4THUM(%NXN),$$^W6 Q 0
       I '$$NOKIOSK^W4THUM(%NXN),$$^W6 Q 1
       ;
       I $$NOMSL^W4THUM(%NXN),$G(NMB),$L(NMB)>3 Q 0
       ;W 14
       I $$NOMSD^W4THUM(%NXN),$G(NMB),$L(NMB)<4 Q 0
       ;W 15
       Q 1
P1TFR I $D(@$$^W4PARCAT@($$^W4MYDVN,SUGP,%NXN))
P1TSF I $D(@$$^W4GL("P1EZ")@(%NXN,KODP))
 
 
 
 
 
 
 
 
 
 
 
 

W4PARZ
W4PARZ ;                [ 13.07.17 08:33 ] [ 12.07.17 19:40 ] [ 15.09.16 09:41 ] 
 N (JB,%REM,%ARG,P1DZ,NZ,P1X,DISP,DOCH,P1TOT)
 S SM=0 D ^W4MDPPC
 S DISP=$G(DISP)
 I 'DISP,$G(NZ) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 S TXT="" D W(TXT,DISP) S TXT="" D W(TXT,DISP)
 ;
 I '$D(P1TOT) D
 .I '$$DEP D
 ..I $$HB S TXT=$J("",6)_$$^%L1DC(P1DZ,1)_" - l mihixt zxikn g""ec " D W(TXT,DISP)
 ..I '$$HB S TXT=$J("",6)_$$PCTX("REPORTITEMSALES","S")_" "_$$^%L1DC(P1DZ,1) D W(TXT,DISP)
 .I $$DEP D
 ..I $$HB S TXT=$J("",6)_$$^%L1DC(P1DZ,1)_" - l zewlgn g""ec " D ^W(TXT,DISP)
 ..I '$$HB S TXT=$J("",6)_$$PCTX("REPORTDEPSALES","S")_" "_$$^%L1DC(P1DZ,1) D W(TXT,DISP)
 ;
 I $D(P1TOT) D
 .D RNGDAT^W4TELREP(P1TOT)
 .I '$$DEP D  Q
 ..I $$HB S TXT=$J("",6)_RNGDAT_" - l mihixt zxikn g""ec " D W(TXT,DISP) Q
 ..I '$$HB S TXT=$J("",6)_$$PCTX("REPORTITEMSALES","S")_" "_RNGDAT D W(TXT,DISP)
 .I $$HB S TXT=$J("",6)_RNGDAT_" - l zewlgn g""ec " D W(TXT,DISP)
 .I '$$HB S TXT=$J("",6)_$$PCTX("REPORTDEPSALES","S")_" "_RNGDAT D W(TXT,DISP)
 ;
 I $$HB S TXT="  mekq :zenk:     hixt xe`z   :hixt cew"
 I '$$HB S TXT=$$PCTX("ITEMCODE","S")_":     "_$$PCTX("ITEMNAME","S")_"    : "_$$PCTX("QN","S")_" : "_$$PCTX("SUM","S")
 S L=$L(TXT) D KAV(L)
 S PRKOT=1 D W(TXT,DISP) K PRKOT
 D KAV(L)
 ;
 S (SKAM,SSUM)=0
 F I=1:1 Q:'$D(@$$^W4MAIN("TEMP")@(I))  D
 .D G^%L1SCV("P1DP1",^(I))
 .S SKAM=SKAM+KAM,SSUM=SSUM+SUM
 .I $$HB S TXT=$J(SUM,6,1)_" :"_$J(KAM,3)_" :"_$$HBR^%L1FRM(PAR1,17)_":"_$J(PAR,8)
 .I '$$HB S TXT=$J(PAR,8)_":"_$$ENG^%L1FRM(PAR1,17)_": "_$J(KAM,3)_" : "_$J(SUM,6,1)
 .D W(TXT,DISP)
 ;
 I $D(P1TOT) D
 .D KAV(L)
 .I $$HB S TXT=$J(SSUM,6,1)_" :"_$J(SKAM,3)_" :: k""dq "
 .I '$$HB S TXT=$$PCTX("TOTAL","S")_" :: "_$J(SKAM,3)_" : "_$J(SSUM,6,1)
 .D W(TXT,DISP)
 .
 Q
 ;
KAV(L) ;
 N TXT S TXT=$TR($J("",L)," ","-") D W(TXT,$G(DISP))
 Q
 ;
W(TXT,DISP) ;
 D ^W4PCST(TXT,$G(DISP))
 Q
 ;
DEP(STAM) ;
 I $G(DOCH)="DEP" Q 1
 ;I $$^W4ASKPRC Q 1
 Q 0
 ;
PCTX(KEY,L,PRM) ; 
 Q $$^W4PCTX(KEY,$G(L),$G(PRM)) 
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PATH
W4PATH(STAM) ; [ 27.08.10 20:59 ] [
 Q $G(@$$^W4GL("PL")@("PATHM"))

W4PAY
W4PAY(STAM) ; [ 07.09.25 11:58 ] [ 13.05.25 09:10 ] [ 17.04.25 13:31 ] 
 N GL D GL
 Q GL
 ;
KILL ;
 N GL D GL
 K @GL
 Q
 ;
NM(VT,VZ,NP) ;
 I $G(VT)=""!($G(VZ)="")!'$G(NP) Q ""
 N GL D GL
 Q $P($G(@GL@(VT,VZ,NP)),";",1)
 ;
DL(VT,VZ,NP) ;
 I $G(VT)=""!($G(VZ)="")!'$G(NP) Q ""
 N GL D GL
 Q $P($G(@GL@(VT,VZ,NP)),";",2)
 ;
WHERE(VT,VZ,NP) ;
 I $G(VT)=""!($G(VZ)="")!'$G(NP) Q ""
 N GL D GL
 Q $P($G(@GL@(VT,VZ,NP)),";",3)
 ;
OU(VT,VZ,NP) ;
 I $G(VT)=""!($G(VZ)="")!'$G(NP) Q ""
 N GL D GL
 N A S A=$G(@GL@(VT,VZ,NP))
 I $P(A,";",4)="O" Q 1
 I $P(A,";",6)="" Q 0
 I $P(A,";",6)=0 Q 1
 I $P(A,";",6)?1N.N Q '$P(A,";",6)
 N W4PAYOU
 X "S W4PAYOU="_$P(A,";",6)
 Q 'W4PAYOU
 ;
PREPROG(VT,VZ,NP) ;
 I $G(VT)=""!($G(VZ)="")!'$G(NP) Q ""
 N GL D GL
 Q $P($G(@GL@(VT,VZ,NP)),";",5)
 ;
FIRST(VT,VZ) ;
 N GL D GL
 N N S N="" F  S N=$O(@GL@(VT,VZ,N)) Q:N=""  S A=$G(^(N)) I '$$OU(VT,VZ,N) Q
 Q N
 ;
NEXT(VT,VZ,NP) ;
 N GL D GL
 N N S N=NP F  S N=$O(@GL@(VT,VZ,N)) Q:N=""  S A=$G(^(N)) I '$$OU(VT,VZ,N) Q
 Q N
 ;
PREV(VT,VZ,NP) ;
 N GL D GL
 N N S N=NP F  S N=$O(@GL@(VT,VZ,N),-1) Q:N=""  S A=$G(^(N)) I '$$OU(VT,VZ,N) Q
 Q N
 ;
CMD(VT,VZ,NP) ;
 N GL D GL
 Q $P($G(@GL@(VT,VZ,NP)),";",5)
 ;
GETID(VT,VZ,NP,NS) ;
 Q $$NM(VT,VZ,NP)_NS
 ;
GL S GL=$$^W4MAIN("TMPZ")
 Q
 ;
CREATE(VT,VZ,N) ;
 N GL,A,N1 D GL
 K @$$^W4MAIN("TMPZ")@(VT,VZ)
 D PUT^%W1PRM("NP",1)
 I $G(N)'="" D  Q
 .S N1="" F  S N1=$O(^[$$^W3MAIN]W4PAY($$COUNTRY^W3PRM,VT,VZ,N,N1)) Q:N1=""  D
 ..S A=$G(^(N1))
 ..S @$$^W4MAIN("TMPZ")@(VT,VZ,N1)=A
 ;
 S N="" F  S N=$O(^[$$^W3MAIN]W4PAY($$COUNTRY^W3PRM,VT,VZ,N)) Q:N=""  D
 .S A=$G(^(N))
 .S @$$^W4MAIN("TMPZ")@(VT,VZ,N)=A
 Q
 ;
KILLPRM ;
 D KILL^%W1PRM("WASMVC2")
 D KILL^%W1PRM("WASMVC3")
 D KILL^%W1PRM("WASLMVC")
 D KILL^%W1PRM("CIBEMV")
 D KILL^%W1PRM("CIBEMVER")
 D KILL^%W1PRM("TNBEMV")
 D KILL^%W1PRM("TNBEMVER")
 D KILL^%W1PRM("CSHEMV")
 D KILL^%W1PRM("CSHEMVER")
 D KILL^%W1PRM("KCER")
 D KILL^%W1PRM("KCCD")
 D KILL^%W1PRM("KCTRID")
 D KILL^%W1PRM("KCTOKEN")
 D KILL^%W1PRM("ER")
 D KILL^%W1PRM("WASPSW")
 D KILL^%W1PRM("HEADTZ") ;; -- 18.11.24 
 Q
 ;
INIT ;
 D KILLUR^W4MENU(1)
 D KILLPRM
 ;
 D TMPS^W4MENU K @TMPS@("UR")
 ;
 D PUT^%W1PRM("ORDVW",+$G(%ARG("ORDVW")))
 ;
 I $G(%ARG("ORD")) D PUT^%W1PRM("HZM",%ARG("ORD"))
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM K @$$^W4ORD@(HZM,"MVC1") ;
 ;
 I $G(%ARG("VT"))=13 D  ; -- BL PAY
 .D ^WBINIT
 .D SET^WBPARAM("ORD","PAY")
 ;
 I $G(%ARG("VT"))=14 D  ; -- BL PAY
 .D ^WBINIT
 .D SET^WBPARAM("ORD","NKD")
 ;
 I $G(%ARG("FIRST")) D FIRSTINIT
 ;
 I $G(%ARG("CB")) D
 .D PUT^%W1PRM("CB",%ARG("CB"))
 ;
 S %ARG("CB")=$$GETP^%W1PRM("CB") K:+%ARG("CB")=0 %ARG("CB")
 I $G(%ARG("LKH")) D
 .D PUT^%W1PRM("LKH",%ARG("LKH"))
 ;
 S %ARG("LKH")=$$GETP^%W1PRM("LKH") K:+%ARG("LKH")=0 %ARG("LKH")
 ;
 I $L($G(%ARG("VZ")))&$G(%ARG("VT"))&($L($G(%ARG("PRMC")))=0) D
 .D CREATE^W4PAY(%ARG("VT"),%ARG("VZ"))
 ;
 I $L($G(%ARG("VZ")))&$G(%ARG("VT"))&$L($G(%ARG("PRMC"))) D
 .D CREATE^W4PAY(%ARG("VT"),%ARG("VZ"),%ARG("PRMC"))
 ;
 I $$GET^%W1PRM("FASTPAY"),$G(HZM) D
 .N VT S VT=$$GETP^%W1PRM("FASTPAY") Q:'VT
 .D IGUL^W4MENUBT(HZM,1) ; -- 17/07/23
 .D PUT^W4TMPPAY(VT,"SUM",$$ITRA^W4HZMST(HZM))
 .S ^AA("W4PAY","FASTPAY","SUM")=$$ITRA^W4HZMST(HZM) ; ***
 Q
 ;
 ;
INITVT(VT) ;
 I $G(VT)="" Q "0;NOVT1"
 N HZM S HZM=$$GETP^%W1PRM("HZM") I HZM="" Q "0;NOORD"
 S %ARG("FIRST")=1
 D INIT
 D KILL^%W1PRM("VT"),KILL^%W1PRM("NP"),KILL^%W1PRM("ER"),KILL^%W1PRM("MAXTIP")
 D KILL^W4TMPPAY
 D PUTDFLT^W4PAYFN(VT)
 ;
 I VT=3 D
 .S @$$^W4ORD@(HZM,"SHOWITRA")=1
 .D PUT^W4TMPPAY(VT,"SUM",$$ITRA^W4HZMST(HZM))
 ;
 N CIBCMP S CIBCMP=$G(@$$^W4PRM@("CIBCMP"))
 ;
 I VT=7,CIBCMP D
 .D PUT^W4TMPPAY(VT,"SUM",$$ITRA^W4HZMST(HZM))
 .D PUT^W4TMPPAY(VT,"COMPANYNUMBER",CIBCMP)
 Q 1
 ;
 ;
BSLPAY(STAM) ;
 I $G(%ARG("VT"))'=13 Q 0
 I $G(%ARG("VZ"))'="CARD" Q 0
 Q 1
 ;
BSLSGINVC(STAM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q ""
 N TXT S TXT=$G(@$$^W4ORD@(HZM,"BSL","SGINVC")) I TXT="" Q ""
 S TXT=$P(TXT,";",2,20)
 I TXT["\" S TXT=$P(TXT,"\",2,20)
 I TXT="OK" S TXT=" dglvda ""wi'bel qpfia""-a dxbqp zipeayg"
 I $D(@$$^W4ORD@(HZM,"BSL","SGINVC","SHOW")) Q ""
 Q "<!>"_TXT
 ;
BSLSETSHOW(STAM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "NOTORDER"
 I '$D(@$$^W4ORD@(HZM,"BSL","SGINVC")) Q 0
 S @$$^W4ORD@(HZM,"BSL","SGINVC","SHOW")=$H
 Q 1
 ;
VCSUPBON(STAM) ;
 N (JB,%ARG,%REM)
 S VT=8
 D CLEAR^W4SCASK
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "ER;NOTORDER"
 ;
 I $D(@$$^W4ORD@(HZM,"VC",1,"CARD")) D  ; -- SECOND TIME
 .N CARD S CARD=$G(^("CARD"))
 .D PUT^W4TMPANS("VCARD","CARDNUMBER",CARD)
 .D PUT^W4TMPANS("VCARD","COUPON","")
 ;
 I $D(@$$^W4ORD@(HZM,"VC",1,"DISC")) D  I RES'="OK" Q "ER;"_RES
 .S RES=$$^WVCBONUS(HZM)
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I $P(A,"*",5)["VALUECARD BONUS" K ^(N)
 ;
 D ^W4CALC(HZM)
 ;
 K @$$^W4ORD@(HZM,"VC")
 ;
 D PUT^W4TMPPAY(VT,"ACTIONKIND","BONUS1")
 S VZ="BONUS1"
 Q VZ
 ;
 ;
VCSUPBON1(VT) ;
 D PUT^%W3DEB("W4PAY-VCSUPBON1","VT=VT")
 N VP,VZ,HZM,SUM,CARD,COUPON,RES
 S VP="VCARD"
 S VZ=$$VCSUPBON Q:VZ["ER;" VZ
 S HZM=$$GETP^%W1PRM("HZM")
 S CARD=$$GET^W4TMPANS(VP,"CARDNUMBER")
 S SUM=+$$GET^W4TMPANS(VP,"SUM")
 S COUPON=$$GET^W4TMPANS(VP,"COUPON")
 S RES=$$^WVBONUS(CARD,HZM,COUPON)
 D PUT^%W3DEB("W4PAY-VCSUPBON1","VT1=VT")
 ;
 I RES="OK",$G(VT) D
 .I VT'=4 D PUTDFLT^W4TMPPAY(VT,"SUM",$$ITRA^W4HZMST(HZM))
 .I VT=4 D PUTDFLT^W4TMPPAY(VT,"ASRL",$$ITRA^W4HZMST(HZM))
 .I VT=3 D PUT^W4TMPPAY(VT,"SUM",$$ITRA^W4HZMST(HZM))
 ;
 Q RES
 ;
 ;
DELVCHNH(HZM,GL) ;
 I $G(GL)="",$G(HZM) S GL=$$^W4ORD_"(HZM)"
 ;
 N N S N="" F  S N=$O(@GL@("CB","HNH1",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I $P(A,"*",5)["VALUECARD BONUS" K ^(N)
 ;
 I $G(HZM) D ^W4CALC(HZM)
 Q
 ;
 ; 
FIRSTINIT ; 
 D KILL^%W1PRM("S21")
 D KILL^%W1PRM("HSBPOS")
 D KILL^%W1PRM("NOCAPC")
 D KILL^%W1PRM("EMVARM") ;; -- 19.11.23 
 ;
 I $$ASKCAPC^W4PRM D PUT^%W1PRM("NOCAPC",1)
 D CLEAR^W4PAYKB
 I HZM="" Q
 K @$$^W4ORD@(HZM,"SHOWMVC1")
 ;
 I '$$^W4CLOSE(HZM) D
 .N LKHN S LKHN=$$LKHN^W4HZMST(HZM)
 .I LKHN,$D(@$$^W4GL("PARLKH")@(LKHN)),$G(@$$^W4PRM@("NOLKMVC1")) Q
 .D ^W4HZMVC1(HZM) ; ---- MIVZA 1 !!!!
 ;
 D IGUL^W4MENUBT(HZM)
 N MYDVN S MYDVN=$$^W4MYDVN
 N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN) Q:'PORTDISP
 N TX1,TX2 S TX2=""
 S TX1=$J($$ITRA^W4HZMST(HZM),2,2)_" : melyzl"
 D ^W4TX2DSP(PORTDISP,TX1,TX2)
 Q
 ;
RESTEMV(HZM) ; 
 N (JB,%ARG,%REM,HZM)
 S K=0,MSG="OK",RES="",ER=""
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"EMVP",N)) Q:N=""  D
 .M EMV=@$$^W4ORD@(HZM,"EMVP",N)
 .I $G(EMV("OUT","STA")) S ER="STA="_EMV("OUT","STA") Q
 .M EMVOUT=@$$^W4ORD@(HZM,"EMV",N,"OUT")
 .I $G(EMVOUT("STA")) S ER="STA="_EMVOUT("STA") Q
 .I $G(EMVOUT("STA"))="000" Q
 .
 .I '$D(@$$^W4ORD@(HZM,"CB","V",N)) D
 ..S VUID=$G(EMV("OUT","VUID")) I 'VUID S MSG="NOT VUID" Q
 ..
 ..I $$EMV^W4PRM>3,ER="",VUID D  Q
 ...S DZ=$$^W4DZ
 ...S STPRM=$G(@$$^W4ORD@(HZM,"EMVP",N,"STIN"))
 ...D COUPLE^%L1FRM(STPRM,"&")
 ...S $E(STOUT,61,62)=$$TR(SUGIS,2)
 ...S $E(STOUT,63)=$E(SUGAS)
 ...S $E(STOUT,36,43)=$$TR(PAY,8)
 ...S $E(STOUT,52,59)=$$TR($G(KOHAV),8)
 ...S $E(STOUT,78,85)=$$TR($G(P1),8)
 ...S $E(STOUT,86,93)=$$TR($G(PC),8)
 ...S $E(STOUT,94,95)=$$TR($G(PN),2)
 ...S $E(STOUT,30,33)=$$TR(DATT,4)
 ...I $G(VIZ) D
 ....S $E(STOUT,5,23)=$$TR(VIZ,19)
 ...S RES=$$DOCMD^W4EMV4("RESTORE",VUID,HZM)
 ..
 ..S UID=$G(EMV("OUT","UID"))
 ..S ID=$G(EMV("OUT","ID"))
 ..S STPRM=$G(EMV("STIN")) I STPRM="" S MSG="NOT STIN" Q
 ..D ARG^%L1FRM(STPRM) 
 ..D ^%W1ARG
 ..S FLIND=$G(EMV("OUT","FLIND")) I FLIND="" S MSG="NOT FLIND" Q
 ..S URL=$G(EMV("OUT","URL")) I URL="" S MSG=" NOT URL" Q 
 ..S RESTEMV=""
 ..S PAY=$G(EMV("OUT","AMOUNT")) I 'PAY S MSG="NOT PAY" Q
 ..
 ..S INDL0=$G(@$$^W4GL("TRANL"))
 ..S INDL=$O(@$$^W4GL("TRANL")@(999999),-1)
 ..S:INDL<1 INDL=1
 ..I INDL<INDL0 S INDL=INDL0
 ..S GL=$$^W4GL("TRANL")_"("_INDL_",901)"
 ..;
 ..D GETBYVUID^W4EMV3(VUID,ID,URL,FLIND) ; --> FLOU
 ..I $G(FLOU)="" Q
 ..I '$$EXIST^%L1ZOS(FLOU) S MSG="NOANSWER" Q
 ..I $G(ER) S MSG="ERROR "_ER Q
 ..D PREPEMV^W4STRINW
 ..S RES=$$OU^W4EMV3(FLOU),MSG="OK"
 ;
 I MSG'="OK" Q MSG
 Q RES 
 ;
 ; 
TR(VL,LN) ;
 S VL=$E(VL,1,LN)
 S VL=$TR($J(VL,LN)," ",0)
 Q VL
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAY2OR
W4PAYORD ; [ 17.04.09 17:03 ] [ 10.12.08 09:03 ] [
  W $$^%W1DICT("WAITING")
  N GLORD D GLORD^W4HZMST
  N VT,ER S ER="OK"
  S VT=+$$GET^%W1PRM("VT")
  N M,HZM
  S HZM=$$GET^%W1PRM("HZM") Q:HZM="" "ORDERNOTDEFINED"
  ;
  I VT=1 D
  .S ODEF=$$SODEF^W4HZMST(HZM)
  .I ODEF<0 S ODEF=0
  .S $P(@GLORD@("CB"),"\",2)=MZM-ODEF
  .S $P(@GLORD@("CB"),"\",8)=ODEF
  .D ^W4T(HZM,1)
  ;
  I VT=3 S ER=$$^W4PAYCA(HZM)
  ;
  D ^W4CBOLD(HZM)
  D CLEAR
  Q
  ;
CLEAR ;
  D KILL^W4TMPPAY
  D PUT^%W1PRM("VT","")
  D PUT^%W1PRM("NP","")
  Q

W4PAYBT
W4PAYBT ; [ 24.06.25 13:31 ] [ 25.01.24 09:38 ] [ 07.03.23 15:35 ] 
 N (JB,%REM,%ARG)
 N HZM,ITRA
 I $G(%ARG("SHOW"))=0 Q
 S HZM=$$GETP^%W1PRM("HZM")
 N FSZ S FSZ=22
 W "<div align=""center"">",!
 W "<table border=""0"" dir="""_$$^%W1DIR_""" class=""hdord"" "
   W "style=""font-size:"_$$^W3FSZ(FSZ)
   W """"
 W ">",!
  W "<tr>"
    I '$$^W4ASHRAM D
    .W "<td>"_$$^%W1DICT("TOPAYMENT")_" : </td>" D TDRKV W $J($$TSHL^W4HZMST(HZM),2,2)_"</td>"
    ;
    D SPACE
    ;
    S SHULHZ=$$SSHUL^W4HZMST(HZM)+$$SHULA^W4HZMST(HZM)+$$ODEF^W4HZMST(HZM)
    D TSHL(HZM)
    S TSHL=$$TSHL^W4HZMST(HZM)
    S ITRA=$$ITRA^W4HZMST(HZM)
    ;
    W "<td>"_$$^%W1DICT("PAID")_" : "
     S CODTS=$$CODTS^W4HZMST(HZM)
     I 'SHULHZ,ITRA,CODTS D
     .W "<span style=""font-size:"_$$^W3FSZ(10)_""" >"
     .W " [ "_$$^%W1DICT($$PAYMKIND(CODTS))_" ] </span>"
    W "</td>"
    ;
    D TDRKV
     W $J(SHULHZ,2,2)
    W "</td>"
    ;
    D SPACE
    ;
    I ITRA,'$$^W4ASHRAM D
    .W "<td>"_$$^%W1DICT("REMAIND")_" : </td>"
    .D TDRKV D
    ..W $J(ITRA,2,2)
    .W "</td>"
    .D SPACE
    ;
    S ODEF=$$SODEF^W4HZMST(HZM)
    I ODEF,'$$^W4ASHRAM D
    .W "<td>"_$$^%W1DICT("ODEF")_" : </td>" D TDRKV W $J(ODEF,2,2)_"</td>"
    .I '$$^W4CLOSE(HZM) D PUT^W4HZMST(HZM,"ODEF",ODEF)
    .D SPACE
    ;
    S TIP=$$STIP^W4HZMST(HZM)
    I TIP,'$$^W4ASHRAM D
    .W "<td>"_$$^%W1DICT("TIP")_" : </td>" D TDRKV W $J(TIP,2,2)_"</td>"
    .D SPACE
    ;
    I $$FAST^W4MTAW($$NMB^W4HZMST(HZM)),'$$^W4ASHRAM D
    .W "<td>"
    . W $$^%W1DICT("ITEMS")_" : "
    .W "</td>"
    .D TDRKV
    .  W $$TOTQN^W4HZMST(HZM)
    .W "</td>",!
    ; 
    I $$HSBNPAY^W4PRM&'($$SSHUL^W4HZMST(HZM)+$$SHULA^W4HZMST(HZM)) D
    .W "<td>"
    . W "<button style=""font-size:"_$$^W3FSZ(14)_""" onClick=""PrintBill('"_HZM_"','0')"">"
    .  W $$^%W1DICT("PRINTBILL")
    . W "</button>" 
    .W "</td>"
    W "</tr>",!
    ;
    I $G(HZM),'$$SUPER^W3PRM D
    .S LASTPAY=$P($G(@$$^W4ORD@(HZM,"CB")),"\",7)
    .I LASTPAY D
    ..W "<tr>" 
    .. W "<td colspan=""9"" style=""font-size:"_$$^W3FSZ(11)_";text-align:center"" >"
    ..  W " "_$$^%W1DICT("LASTPAY",$ZD(LASTPAY,"DD.MM.YY  24:60"))_" "
    .. W "</td>"
    ..W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
TDRKV W "<td class=""hdordrkv"" dir=""LTR"" style=""font-size:"_$$^W3FSZ(FSZ)_""">"
 Q
 ;
SPACE W "<td>&nbsp;&nbsp;&nbsp;</td>"
 Q
 ;
TSHL(ORD) ;
 N TSHL,TSHL1 S TSHL=$$TSHL^W4HZMST(ORD)
 D ^W4OPNORD(ORD)
 I '$$^W4CLOSE(ORD) D
 .S TSHL1=$$TOTORD^W4HZMST(ORD)
 .N TSHLO S TSHLO=TSHL1
 .S TSHL1=$$IGUL^W4IGUL(TSHL1)
 .N HNH2 S HNH2=TSHLO-TSHL1
 .I +TSHL'=+TSHL1,HNH2<1,HNH2>-1 D
 ..S TSHL=TSHL1 D PUT^W4HZMST(ORD,"TSHL",$J(TSHL1,2,2))
 ..D PUT^W4HZMST(ORD,"HNH2",$J(HNH2,2,2))
 Q
 ;
PAYMKIND(VT) ;
 I VT="1" Q "WILLPAYCASH"
 I VT="2" Q "WILLPAYCHECK"
 I VT="3" Q "WILLPAYCA"
 I VT="4" Q "WILLPAYASR"
 Q ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYC
W4PAYC ; [ 20.05.25 12:06 ] [ 11.04.24 17:36 ] [ 19.11.23 13:04 ] 
  N GLORD D GLORD^W4HZMST
  N VT,ER S ER="OK"
  S VT=3
  ;
  N M,HZM
  S HZM=$$GETP^%W1PRM("HZM") I HZM="",'$$ASHRAM S ER="ORDERNOTDEFINED" G END
  N SUM S SUM=$$GET^W4TMPPAY(3,"SUM")
  ;
  I $G(HZM)<0,'$$^W4ISPART(HZM),$$TOOMUCH^W4PAYKB(SUM,HZM) S ER="SUMTOOBIG" G END
  ;
  S CARD=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")
  ;
  I HZM,'$G(%ARG("DEL")),$$DBL(HZM,CARD,SUM) S ER="DBLCARD" G END
  ;
  I '$G(%ARG("DEL")) S ER=$$^W4PAYCA(HZM)
  ;
  I $G(%ARG("DEL")) S ER=$$BIT^W4PAYCA(HZM,%ARG("DEL"))
  ;
  S STA=$P(ER,";",2)
  S MSG=$P($P(ER,";",4,200),"~")
  ;;S STA=+STA
  ;
  I STA'="000" G END
  ;
CBO I HZM D ^W4CBOLD(HZM)
  D CLEAR
  ;
  I $G(MSG)="PAIDED",$$EMV^W4PRM=4 D  ; -- 20/05/25
  .S RES=$$BITLAST^W4PAYCA
  ;
END D PUT^%W1PRM("ER",ER) ;;W "ER="_ER ;
  Q
  ;
CLEAR ;
  D KILL^%W1PRM("S21")
  D CLEAR^W4PAYKB
  Q
  ;
MSG(ER) ;
 N (JB,%ARG,%REM,ER)
 S ER=$$CNWEB^%L1FRM(ER)
 D PUT^%W3DEB("W4PAYC-MSG","ER=ER")
 S STA=$P(ER,";",2)
 S TXTER=$P($P(ER,";",4,200),"~")
 ;;S ^AA("W4PAYC-MSG","ER",$H)=ER
 ;
 S STRIN=$P(ER,"~",2)
 S MSG=$P(ER,"~",3)
 ;;S ^AA("W4PAYC-MSG","STRIN",$H)=STRIN
 ;
 N OU S OU="Z"
 I STA="004",STRIN?1"B"1N.E,STRIN'?.E1"U"1N.E D
 .S STA="006"
 .S OU="006~Z"
 ;
 I $D(^[$$^W3MAIN]W4PAY($$COUNTRY^W3PRM,3,"DOP",+STA)) Q OU
 ;
 S ER=$P(ER,";")
 I ER="OK"&(STA="000") S MSG=$$^%W1DICT("CRCARDOK") G EMSG
 ;
 I ER="OK",STA,STA'="000" D  G EMSG
 .I $L(TXTER)>2 S MSG=STA_" "_$$H2U^%L1FRM(TXTER) Q
 .I $D(@$$^W4GL("KOD")@(+STA))#2 S MSG=STA_" "_$$H2U^%L1FRM(@$$^W4GL("KOD")@(+STA)) Q
 .S MSG="ERROR "_STA
 ;
 S MSG=$$^%W1DICT(ER)
EMSG ;
 I MSG'="" Q $$CLWEB^%L1FRM(MSG)
 Q "ERROR "_ER
 ;
 ;
DBL(HZM,CARD,SUM) ;
 N (JB,%ARG,%REM,HZM,CARD,SUM)
 S DBL=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D  Q:DBL
 .S NCA=$$GET^W4GTVCH(HZM,N,"V","NCA") Q:'NCA
 .I +NCA=+CARD,'$D(@$$^W4ORD@(HZM,"DBLV",+CARD)) S DBL=1
 Q DBL
 ;
SBM ;
  N M,HZM
  S HZM=$$GET^%W1PRM("HZM") I HZM="",'$$ASHRAM S ER="ORDERNOTDEFINED" G END
  S CARD=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER") I CARD="" S ER="NOCARD" G END
  S @$$^W4ORD@(HZM,"DBLV",+CARD)=$H
  G W4PAYC
  ;
ASHRAM(STAM) ;
 Q $$^W4ASHRAM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYCA
W4PAYCA(HZM) ; [ 29.09.26 15:49 ] [ 02.09.26 18:22 ] [ 26.08.26 14:15 ] 
 ; -- TASHLUM B K-A LE HAZMANA ( LE KABALA - W4PAYCBA )
 ; ------------------------------------------------------
 N (HZM,JB,%ARG,%REM,PRBIT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 D GLORD
 S %REM=$$GET^%W1PRM("REM")
 ;
 I $G(HZM)>0,$$MSL^W4MSL(HZM) D
 .D PUT^W3HZMST(JB,"CODTS",3)
 .D PUT^W4HZMST(HZM,"CODTS",3)
 ;
 S SSHUL=$$SSHUL^W4HZMST(HZM)+$$SHULA^W4HZMST(HZM)
 S TSHL=$$TSHL^W4HZMST(HZM)
 S TIP=$$TIP^W4HZMST(HZM)
 ;;I SSHUL'<(TSHL+TIP)&(TSHL>0)!(SSHUL<(TSHL+TIP)&(TSHL<0))!($J(SSHUL,2,2)=$J(TSHL,2,2)),'$$NOCLDLVZ^W4PRM Q "PAIDED"  ; ***
 S SUMCA=$$GET^W4TMPPAY(3,"SUM")
 I SSHUL'<(TSHL+TIP)&(TSHL>0)!($J(SSHUL,2,2)=$J(TSHL,2,2)),'$$NOCLDLVZ^W4PRM,SUMCA>0 Q "PAIDED"  ; ***
 ;
 S VIZ=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")
 ;;I +VIZ="4580160015012117" Q "CALL2PROGRAMMER"
 ;
 D KILL^%W1PRM("STRIN")
 D STRIN(SUMCA)
 ;
TV ;
 D GLORD
 ;;I $$DBL(STRIN) Q "DOUBLE;987"
 ;
 N STRIN0 S STRIN0=STRIN
 ;
 S A=$$INOUT(STRIN,$G(UIDBIT)) ; ----------- !!!!!!!!!!!!! ----------
 ;
 G TVA1
TVA(HZM,A) ;
TVA1 ;
 S ^LV(+$H,$P($H,",",2),"W4PAYCA-INOUT",+$G(HZM))=A
 S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 S MSG=$P(STA,"~",3)
 S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 S UID=$P(A,"~",6)
 S VUID=$P(A,"~",7)
 ;
 I STA="0" S STA="000"
 ;
 I STA["-" S STA="-"_$P(STA,"-",2)
 ;
 I $$^W4AUTHCD(STA),'$$EMV^W4PRM D
 .N TEL,MSG,VTS S VTS=$E(SOUT,25) Q:'VTS
 .S TEL=$$TELCA^W4OPT(VTS)
 .S $P(A,"~",3)=TEL
 ;
 N STRES
 I STA'="000" D  S STRES=ER_";"_STA_";"_TRAN_";"_$$CLWEB^%L1FRM($P(A,"~",3))_";~"_$G(STRIN)_"~"_$G(SOUT) S ^LV(+$H,$P($H,",",2),"W4PAYCA-STRES",+$G(HZM))=STRES Q STRES
 .N STRIN S STRIN=$$GETP^%W1PRM("STRIN") Q:$L(STRIN)=0
 .K @$$^W4GL("W4STRIN")@(HZM,"IN",STRIN)
 .D KILL^%W1PRM("STRIN")
 ;
 ;
 S S21=""
 S TRAN("IN")=$G(STRIN)
 ;
 S TIPCA=0
 ;
 I $$GET^W4TMPPAY(3,"SUM"),$$GET^W4TMPPAY(3,"TOPAY") D
 .N TOPAY S TOPAY=$$GET^W4TMPPAY(3,"TOPAY")
 .S TIPCA=$$GET^W4TMPPAY(3,"SUM")-TOPAY
 .I TIPCA<0&(TOPAY>0)!(TIPCA>0&(TOPAY<0)) S TIPCA=0
 ;
 I $G(TIPBIT) S TIPCA=-TIPBIT K TIPBIT
 ;
 S S21=$$^W4TRAN(SOUT,TRAN,TIPCA)
 ;
 N A S A=$$GETP^%W1PRM("BITZICRES")
 ;
 I A,$G(HZMBIT),$G(NOM) D
 .S $P(@$$^W4ORD@(HZMBIT,"CB","V",NOM),"*",34)=$P(A,"~",6) ; -- ZIC
 ;
 S ^LV(+$H,$P($H,",",2),"W4PAYCA-S21",+$G(HZM))=S21
 ;
 I $G(HZM),$$^W4MSL($$NMB^W4HZMST(HZM)) D
 .N STRING S STRING=$$NMB^W4HZMST(HZM)
 .N GL D GL^W4L
 .
 .I STRING,$D(@GL@(STRING))=11 D
 ..N VIZ S VIZ=$P(S21,"*",2)
 ..
 ..I $$CADFLT^W4PRM D
 ...N A S A=$$CADETS^W4L(STRING)
 ...N MM,YY S MM=$E($P(S21,"*",14),1,2)
 ...S YY=$E($P(S21,"*",14),3,4)
 ...N CVV2 S CVV2=$G(ASHCVV2)
 ...N TZ S TZ=$G(ASHTZ)
 ...I VIZ="" S VIZ=$P(A,"^") 
 ...I MM="" S MM=$P(A,"^",2)
 ...I YY="" S YY=$P(A,"^",3)
 ...I CVV2="" S CVV2=$P(A,"^",4)
 ...I TZ="" S TZ=$P(A,"^",5)
 ...N VL S VL=VIZ_"^"_MM_"^"_YY_"^"_CVV2_"^"_TZ
 ...D PUT^W4L(STRING,VL,"CADFLT")
 ;
TV1 ;
 N HZM0 S HZM0=$G(HZM) N HZM
 S HZM=HZM0
 ;
 I $G(VUID),$$EMV^W4PRM<4 D
 .S HZ=+$E(VUID,1,10)
 .I HZ,HZ'=HZM S HZM=HZ
 ;
 I $G(VUID),$$EMV^W4PRM=4 D
 .S HZ=$P(VUID,"_",4)
 .I HZ,HZ'=HZM S HZM=HZ
 ;
 I '$G(HZM) S HZM=$$GETP^%W1PRM("HZM")
 I '$G(HZM) G OKEND
 I $$^W4CLOSE(HZM) G OKEND
 ;
 I $G(UID),$G(HZM),$$EMV^W4PRM'=4 S @$$^W4GL("W4EMVUID")@(UID)=HZM
 I $G(VUID),$G(HZM),$$EMV^W4PRM=4 S @$$^W4GL("W4EMVUID")@(VUID)=HZM
 ;
 D GLORD
 S SUMT=$P(S21,"*",7)
 S INDV=$O(@GLORD@("CB","V",999),-1)+1
 S @GLORD@("CB","V",INDV)=S21
 D SETPOS^W4HZMST(HZM,"V",INDV)
 S @GLORD@("CB","V",INDV,"STRIN")=$G(STRIN)
 S @GLORD@("CB","V",INDV,"STROU")=$G(SOUT)
 S @GLORD@("CB","V",INDV,"UID")=$G(UID)
 S @GLORD@("CB","V",INDV,"VUID")=$G(VUID)
 ;
 N OKOU S OKOU=0
 I $G(SOUT)'="",$E(S21,1,3)="$V ",$P(S21,"*",4)=3 D
 .N N1 S N1="" F  S N1=$O(@GLORD@("CB","V",N1)) Q:N1=""  Q:N1'<INDV  D:N1  Q:OKOU
 ..N A S A=$G(^(N1))
 ..N NCA S NCA=$P(A,"*",2)
 ..I $$EMV^W4PRM'=4,$G(UID),$G(@GLORD@("CB","V",N1,"UID"))=UID,N1'=INDV D
 ...S $P(@GLORD@("CB","V",INDV),"*")=$P(@GLORD@("CB","V",N1),"*") S OKOU=1
 ..I $$EMV^W4PRM=4,$G(VUID),$G(@GLORD@("CB","V",N1,"VUID"))=VUID,N1'=INDV D
 ...S $P(@GLORD@("CB","V",INDV),"*")=$P(@GLORD@("CB","V",N1),"*") S OKOU=1
 ;
 I $$GETP^%W1PRM("NOCAPC") D
 .S @GLORD@("CB","V",INDV,"NOCAPC")=1
 .D KILL^%W1PRM("NOCAPC")
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 S PORTDISP=$$DISP^W4PLUK(MYDVN)
 ;
 I PORTDISP D
 .N TX1,TX2 S TX2=""
 .S TX1=$J($$ITRA^W4HZMST(HZM),2,2)_" : melyzl" 
 .S TX2="i`xy` "_$J(SUMT,2,2)_" mley"
 .D ^W4TX2DSP(PORTDISP,TX1,TX2)
 ;
 D
 .N TIP S TIP=$$STIP^W4HZMST(HZM)
 .D PUT^W4HZMST(HZM,"TIP",TIP)
 ;
 S P1HZHB51($O(P1HZHB51(9999),-1)+1)=SUMT_","_3
 ;
 D ^W4T(HZM,1)
 ;
 I $G(PRBIT),'$D(PRBIT("BIT")) D ^W4SGNDEL(HZM,"V",PRBIT)
 ;
OKEND ;
 N STA S STA="000"
 I $$DBLCARD(HZM),'$P($G(STRIN),"B",2) S STA="987"
 Q "OK;"_STA_";;"_$G(MSG)_"~"_$G(STRIN)_"~"_$G(SOUT)
 ;
 ;
GLORD D GLORD^W4HZMST
 Q
 ;
STRIN(SUMCA) ;
 S:'$D(MG) MG=""
 S KUP=901
 ;;S SUMCA=$$GET^W4TMPPAY(3,"SUM")
 S PAY=$S(SUMCA<0:-SUMCA,1:SUMCA)*100
 S SUGIS=+$$GET^W4TMPPAY(3,"SI")
 I SUGIS<1 S SUGIS=1
 S SUGIS1=SUGIS
 S SUGAS=+$$GET^W4TMPPAY(3,"SA")
 I SUGAS<1 S SUGAS=1
 S SUGMTB=+$$GET^W4TMPPAY(3,"MB")
 I SUGMTB<1 S SUGMTB=1
 S KOHAV=+$$GET^W4TMPPAY(3,"DISCAST")
 S SUGMRB=1
 S AUTHNO=$$GET^W4TMPPAY(3,"AUTHNO")
 I 'AUTHNO S AUTHNO="0000000" ;; I SUMCA<0 S AUTHNO=1111111
 S (P1,PC,PN)=0
 S P1=$$GET^W4TMPPAY(3,"P1")*100
 S PC=$$GET^W4TMPPAY(3,"PC")*100
 S PN=+$$GET^W4TMPPAY(3,"PN")
 I 'PN S PN=+$$GET^W4TMPPAY(3,"PN1")
 ;
 S (PF,PG,PH)=0
 S SUGBC=51
 S YYMM=$$GET^W4TMPPAY(3,"YY")_$$GET^W4TMPPAY(3,"MM")
 S ASHCVV2=$$GET^W4TMPPAY(3,"CVV")
 S ASHTZ=$$GET^W4TMPPAY(3,"IDNUMBER")
 S ASH4=$$GET^W4TMPPAY(3,"ASH4")
 S VIZ=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")
 I $$^W4MG(VIZ) S MG=VIZ
 ;
 D ^W4STRIN
 I SUMCA<0 S STRIN=$$STRINBIT(STRIN)
 Q
 ;
BITLAST()
 N HZM S HZM=+$$GETP^%W1PRM("HZM")
 I HZM<1 Q "ORDERNUMWRONG"
 N LAST S LAST=$O(@$$^W4ORD@(HZM,"CB","V",9999),-1)
 I 'LAST Q "NOCARD2DELETE"
 Q $$BIT(HZM,LAST)
 ;
 ;
BIT(HZM,NOM) ;
 N (HZM,JB,%REM,NOM)
 D ^W4IN
 S PRBIT=NOM
 S %REM=$$GET^%W1PRM("REM")
 ;
 N NCA S NCA=$$GET^W4GTVCH(HZM,NOM,"V","NCA")
 ;
 I 'NCA!(NCA?1N) D  G TV1
 .S S21=$$BITCAJ(HZM,NOM)
 ;
 D STRBIT(HZM,NOM) I $L(ER) Q ER
 G TV
 ;
 ;
BITV(HZMBIT,HZM,NOM,SUMCA) ;
 N (HZMBIT,HZM,JB,%ARG,%REM,NOM,SUMCA,IVZ)
 D KILL^%W1PRM("BITZICRES")
 D ^W4IN
 S PRBIT=NOM
 I HZMBIT'=HZM S PRBIT("BIT")=""
 ;
 I '$G(SUMCA) S SUMCA=$P($G(@$$^W4ORD@(HZMBIT,"CB","V",NOM)),"*",7)
 ;
 I $G(NOM) S UIDBIT=$$GETUIDBIT(HZMBIT,NOM)
 ;
 D PUT^%W1PRM("STOUTBIT",$G(@$$^W4ORD@(HZMBIT,"CB","V",NOM,"STROU")))
 ;
 D BDKTKFUID(HZMBIT,NOM)
 ;
 S NCA=$$GET^W4GTVCH(HZMBIT,NOM,"V","NCA")
 I $$NOBITCAJ(HZMBIT,NOM) Q "ER;"_HZMBIT_";NOBITCAJ"
 ;
 I 'NCA!($L(NCA)<7) D  G TV1
 .S S21=$$BITCAJ(HZMBIT,NOM,SUMCA)
 ;
 S %REM=$$GET^%W1PRM("REM")
 D STRBIT(HZMBIT,NOM,SUMCA) I $L(ER) Q ER
 D GLORD
 D PUT^%W1PRM("HZM",HZM)
 G TV
 ;
 ;
STRBIT(HZM,NOM,SUMCA) ;
 S ER=""
 S STRIN=$G(@$$^W4ORD@(HZM,"CB","V",NOM,"STRIN"))
 I $G(NOM) S UIDBIT=$$GETUIDBIT(HZM,NOM)
 D BDKTKFUID(HZM,NOM)
 I $$EMV^W4PRM=1,$D(UIDBIT),UIDBIT="" G STRBIT1
 ;
 S UIDBIT=$G(UIDBIT)
 ;
STRBIT1 ;
 I $$EMV^W4PRM,'$P($P(STRIN,"B",2),"C") D
 .N STOU,VIZ
 .S STOU=$G(@$$^W4ORD@(HZM,"CB","V",NOM,"STROU"))
 .S VIZ=$E(STOU,5,23)
 .S STRIN=$P(STRIN,"B")_"B"_VIZ_"C"_$P(STRIN,"C",2,100)
 ;
 S TIPBIT=$$GET^W4GTVCH(HZM,NOM,"V","TIPCA")
 S STRIN=$$STRINBIT(STRIN)
 I STRIN?1U.U S ER=STRIN,STRIN=""
 Q
 ;
 ;
STRINBIT(STRIN) ;
 N ER
 I STRIN="" S ER="NOSTRIN" Q ER
 S STRIN=$$PUTCA(STRIN,"F",0)
 S STRIN=$$PUTCA(STRIN,"G",0)
 S STRIN=$$PUTCA(STRIN,"H",0)
 S STRIN=$$PUTCA(STRIN,"D",5111,1,4)
 ;
 I $G(%ARG("J5")) S STRIN=$$PUTCA(STRIN,"J",5)
 ;
 I $$FCTISHZC^W4PRM,'$$GETCA(STRIN,"E") D  ; -- FICT ISHUR
 .S STRIN=$$PUTCA(STRIN,"E","1736425")
 ;
 N SUM S SUM=$P($$GETCA(STRIN,"C"),"*")
 I $G(SUMCA) S SUM=SUMCA*100 I SUM<0 S SUM=-SUM
 S STRIN=$$PUTCA(STRIN,"C",SUM)
 Q STRIN
 ;
 ;
GETCA(ST,LET)
 N A,A1,J S A=$P(ST,LET,2)
 S A1=""
 F J=1:1:$L(A) Q:$E(A,J)?1U  S A1=A1_$E(A,J)
 Q A1
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 ;
INOUT(STRIN,UIDBIT) ;
 N A S A=""
 S A=$$^W4STRINW(STRIN,$G(UIDBIT)) ; --- STRIN+HIYUV
 Q A
 ;
 ;
DBL(STRIN) ;
 I '$G(HZM) Q 0
 ;
 I $$NOCHKDBL Q 0
 ;
 I $$GET^W4TMPPAY(3,"SUM")<0 Q 0
 ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D  Q:OK
 .I $E($G(^(N,"STRIN")),1,65)=$E(STRIN,1,65),STRIN'["BC" S OK=1,@$$^W4ORD@(HZM,"DBLIN")=STRIN_"\"_$H_"\"_$$^W4MYDVN
 Q OK
 ;
 ;
DBLOU(STROU) ;
 I $$GET^W4TMPPAY(3,"SUM")<0 Q 0
 I '$G(HZM) Q 0
 I $$EMV^W4PRM Q 0
 I $$NOCHKDBL Q 0
 ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D  Q:OK
 .N STRPREV S STRPREV=$G(^(N,"STROU"))
 .I $$^W4CAEQ(STRPREV,STROU) D
 ..S OK=1,@$$^W4ORD@(HZM,"DBLOU")=STROU_"\"_$H_"\"_$$^W4MYDVN
 ;
 Q OK
 ;
 ;
BITCAJ(HZM,N1,SUMCA) ;
 N A S A=$G(@$$^W4ORD@(HZM,"CB","V",N1)) Q:A="" ""
 N A1 S A1=A
 S $P(A1,"*",6)=$S($G(SUMCA):-SUMCA,1:-$P(A1,"*",6))
 S $P(A1,"*",7)=$S($G(SUMCA):-SUMCA,1:-$P(A1,"*",7))
 N TIP S TIP=$P(A1,"*",27)
 I $G(IVZ)>1 S TIP=0
 S $P(A1,"*",27)=-TIP
 ;
 N BITL,SIBA1,MNL,NAME
 S (SIBA1,MNL,NAME)=""
 S BITL=$O(@$$^W4ORD@(HZM,"BIT",99999),-1)
 ;
 I BITL D
 .S SIBA1=$$SIBA1^W4HZMST(HZM,BITL)
 .S MNL=$$WHODEL^W4HZMST(HZM,BITL)
 .S NAME=$$WHODEL1^W4HZMST(HZM,BITL)
 ;
 N TRID S TRID=$$GET^W4GTVCH(HZM,N1,"V","TRID")
 ;
 I TRID'?.P D
 .N ZIC S ZIC=$$GET^W4GTVCH(HZM,N1,"V","ZIC")
 .N OTB S OTB=$$ZIC2SITE(HZM,"V",N1,TRID,SUMCA-ZIC,SIBA1,MNL,NAME)
 .I OTB D  ; -- OK
 ..N REFID S REFID=$P(OTB,"~",4)
 ..S $P(A1,"*",34)=$P(A1,"*",34)+SUMCA-ZIC
 ..S $P(A1,"*",35)=REFID
 ;
 Q A1
 ;
 ;
NOCHKDBL(STAM) ; 
 ;;I $$EMV^W4PRM=1 Q 1
 I $$NODOUBLE^W4PRM Q 1
 Q 0 
 ;
 ;
DBLCARD(HZM) ; 
 N DBL S DBL=0
 N LAST,A S LAST=$O(@$$^W4ORD@(HZM,"CB","V",9999),-1) I 'LAST Q 0
 N A S A=$G(@$$^W4ORD@(HZM,"CB","V",LAST))
 N LASTCA S LASTCA=$P(A,"*",2)
 N LASTSUM S LASTSUM=$P(A,"*",7) I LASTSUM<0 Q 0
 N N,CAPREV,SUM
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  S SUM=$P($G(^(N)),"*",7) I N,N<LAST,SUM>0 D  Q:DBL
 .S A=$G(^(N)) 
 .S CAPREV=$P(A,"*",2) Q:'CAPREV
 .I CAPREV=LASTCA S DBL=1 
 Q DBL
 ;
GETUIDBIT(HZ,NOM) ;
 N UIDBIT
 S UIDBIT=$G(@$$^W4ORD@(HZ,"CB","V",NOM,"UID"))
 I $$EMV^W4PRM=4 S UIDBIT=$G(@$$^W4ORD@(HZ,"CB","V",NOM,"VUID"))
 Q UIDBIT
 ;
NOBITCAJ(HZMBIT,NOM)
 N VIZ
 S VIZ=$$GET^W4GTVCH(HZMBIT,NOM,"V","NCA") I VIZ,$L(VIZ)>6 Q 0
 I $G(@$$^W4PRM@("NOBITCAJ")) Q 1
 Q 0 
 ;
BDKTKFUID(HZMBIT,NOM)
 I $$EMV^W4PRM<3 D
 .N TMHZ S TMHZ=$P($G(@$$^W4ORD@(HZMBIT,"CB","V",NOM)),"*",29)
 .I $$^W4WASSND(TMHZ) S UIDBIT=""
 ;
 I $$EMV^W4PRM=3,UIDBIT D
 .Q  ; -- 05/12/25
 .N OK S OK=0
 .N N S N="" F  S N=$O(@$$^W4GL("W4TRAN")@(901,N)) Q:N=""  D  Q:OK
 ..I $G(^(N,"UID"))=UIDBIT S OK=1
 .I 'OK S UIDBIT=""
 ;
 I $$EMV^W4PRM=4,UIDBIT D  ; -- 13.08.24
 .N DATCB S DATCB=$$DATCB^W4HZMST(HZMBIT)
 .N DTCB S DTCB=$$^%L1DC($P(DATCB," "),3)
 .N TMCB S TMCB=$P(DATCB,"  ",2)
 .I TMCB<$$SHAAZ^W4PRM S DTCB=DTCB-1
 .I DTCB<$$^W4DZ S UIDBIT=""
 Q
 ;
 ;
ZIC2SITE(HZM,SUGT,NOM,TRID,SUM,SIBA1,MNL,NAME)
 S NAME=$G(NAME)
 I MNL,NAME="" D
 .S NAME=$$^W4NAME(MNL)
 ;
 I '$G(BIT) S BIT=1
 N A S A=$G(@$$^W4ORD@(HZM,"CB",SUGT,NOM))
 N ORD S ORD=$$HZLAKNOM^W4HZMST(HZM) 
 I SUM'>0 Q "0~~SUMZICZERO" ; - !!!
 N NCA,BITL
 ;
 I BIT D
 .S BITL=$O(@$$^W4ORD@(HZM,"BIT",99999),-1) I 'BITL Q
 .S SIBA1=$$SIBA1^W4HZMST(HZM,BITL)
 .S MNL=$$WHODEL^W4HZMST(HZM,BITL)
 .S NAME=$$WHODEL1^W4HZMST(HZM,BITL)
 ;
 S RESST=$$^W4ZICSND(HZM,"V",NOM,ORD,TRID,SUM,SIBA1,MNL,NAME)
 I 'RESST D
 .S @$$^W4ORD@(HZM,"ZICER")=1
 .S @$$^W4ORD@(HZM,"ZICER","V",NOM)=RESST
 D PUT^%W1PRM("BITZICRES",RESST)
 Q RESST
 ;
 ;
HB(TX) ;
 I $G(TX)="" Q ""
 Q $$D2U^%L1CNV(TX) ; -- 21/7/26
 I '$D(TS1) D ^%L1TS
 Q $TR(TX,TS0,TS1)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYCA0
W4PAYCA(HZM) ; [ 12.12.12 11:37 ] [ 23.09.12 15:40 ] [ 03.04.12 22:30 ]
 N (HZM,JB,%REM)
 D ^W4IN
 D GLORD
 S %REM=$$GET^%W1PRM("REM")
 ;
 D STRIN
 ;
TV ;
 D GLORD
 S A=$$INOUT(STRIN)
 ;
 S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 ;
 I STA'="000" Q ER_";"_STA_";"_TRAN
 ;
 S S21=""
 S TRAN("IN")=STRIN
 ;
 S S21=$$^W4TRAN(SOUT,TRAN)
 ;
 S SUMT=$P(S21,"*",7)
 S INDV=$O(@GLORD@("CB","V",999),-1)+1
 S @GLORD@("CB","V",INDV)=S21
 D SETPOS^W4HZMST(HZM,"V",INDV)
 S @GLORD@("CB","V",INDV,"STRIN")=$G(STRIN)
 S @GLORD@("CB","V",INDV,"STROU")=$G(SOUT)
 D
 .N TIP S TIP=$$STIP^W4HZMST(HZM)
 .I TIP>0&($$TSHL^W4HZMST(HZM)>0)!(TIP<0&($$TSHL^W4HZMST(HZM)<0)) D
 ..D PUT^W4HZMST(HZM,"TIP",TIP)
 ;
 S P1HZHB51($O(P1HZHB51(9999),-1)+1)=SUMT_","_3
 ;
 D ^W4T(HZM,1)
 ;
 I $G(PRBIT) D ^W4SGNDEL(HZM,"V",PRBIT)
 ;;D ^W4CBOLD(HZM)
 Q "OK;000"
 ;
GLORD D GLORD^W4HZMST
 Q
 ;
STRIN ;
 S:'$D(MG) MG=""
 S KUP=901
 S SUMCA=$$GET^W4TMPPAY(3,"SUM")
 S PAY=$S(SUMCA<0:-SUMCA,1:SUMCA)*100
 S SUGIS=+$$GET^W4TMPPAY(3,"SI")
 I SUGIS<1 S SUGIS=1
 S SUGIS1=SUGIS
 S SUGAS=+$$GET^W4TMPPAY(3,"SA")
 I SUGAS<1 S SUGAS=1
 S SUGMTB=+$$GET^W4TMPPAY(3,"MB")
 I SUGMTB<1 S SUGMTB=1
 S KOHAV=+$$GET^W4TMPPAY(3,"DISCAST")
 S SUGMRB=1
 S AUTHNO=$$GET^W4TMPPAY(3,"AUTHNO")
 I 'AUTHNO S AUTHNO="0000000"
 S (P1,PC,PN)=0
 S P1=$$GET^W4TMPPAY(3,"P1")*100
 S PC=$$GET^W4TMPPAY(3,"PC")*100
 S PN=+$$GET^W4TMPPAY(3,"PN")
 S (PF,PG,PH)=0
 S SUGBC=51
 S YYMM=$$GET^W4TMPPAY(3,"YY")_$$GET^W4TMPPAY(3,"MM")
 S ASHCVV2=$$GET^W4TMPPAY(3,"CVV")
 S ASHTZ=$$GET^W4TMPPAY(3,"IDNUMBER")
 S ASH4=$$GET^W4TMPPAY(3,"ASH4")
 S VIZ=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")
 I $$^W4MG(VIZ) S MG=VIZ
 ;
 D ^W4STRIN
 I SUMCA<0 S STRIN=$$STRINBIT(STRIN)
 Q
 ;
BIT(HZM,NOM) ;
 N (HZM,JB,%REM,NOM)
 D ^W4IN
 S PRBIT=NOM
 S %REM=$$GET^%W1PRM("REM")
 D STRBIT(HZM,NOM) I $L(ER) Q ER
 G TV
 ;
BITV(HZMBIT,HZM,NOM,SUMCA) ;
 N (HZMBIT,HZM,JB,%REM,NOM,SUMCA)
 D ^W4IN
 S %REM=$$GET^%W1PRM("REM")
 D STRBIT(HZMBIT,NOM,SUMCA) I $L(ER) Q ER
 D GLORD
 G TV
 ;
STRBIT(HZM,NOM,SUMCA) ;
 S ER=""
 S STRIN=$G(@$$^W4ORD@(HZM,"CB","V",NOM,"STRIN"))
 S STRIN=$$STRINBIT(STRIN)
 I STRIN?1U.U S ER=STRIN,STRIN=""
 Q
STRINBIT(STRIN) ;
 N ER
 I STRIN="" S ER="NOSTRIN" Q ER
 S STRIN=$$PUTCA(STRIN,"F",0)
 S STRIN=$$PUTCA(STRIN,"G",0)
 S STRIN=$$PUTCA(STRIN,"H",0)
 S STRIN=$$PUTCA(STRIN,"D",5111,1,4)
 ;;S STRIN=$$PUTCA(STRIN,"E","0000000")
 N SUM S SUM=$P($$GETCA(STRIN,"C"),"*")
 I $G(SUMCA) S SUM=SUMCA*100 I SUM<0 S SUM=-SUM
 S STRIN=$$PUTCA(STRIN,"C",SUM)
 Q STRIN
 ;
GETCA(ST,LET)
 N A,A1,J S A=$P(ST,LET,2)
 S A1=""
 F J=1:1:$L(A) Q:$E(A,J)?1U  S A1=A1_$E(A,J)
 Q A1
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 ;
INOUT(STRIN) ;
 N A S A=""
 I $$^W4SRVWIN(JB)=2 D  Q A  ;------- WEB SERVIS
 .S A=$$^W4STRINW(STRIN) ; --- STRIN+HIYUV
 .N IND S IND=$O(@$$^W4GIO@(99999999),-1)+1
 .S @$$^W4GIO@(IND,"IN")=STRIN
 .S @$$^W4GIO@(IND,"OU")=A
 ;
 I $$^W4SRVWIN(JB)=1 S A=$$INOUT^W4INOUT1(%REM,$$^W4MYDVN_":"_JB_"~"_STRIN)
 I '$$^W4SRVWIN(JB) S A=$$^W4INOUT(STRIN) ; --------------------- !!!
 Q A

W4PAYCAP
W4PAYCAP ; [ 15.06.18 16:37 ] [ 25.07.15 10:15 ] [ 27.08.11 13:53 ] 
 ; ^W4PAYS(COUNTRY,"SI",SI)=<SHEM SUG ISKA>
 ; ^W4PAYS(COUNTRY,"SA",SA)=<SHEM SUG ASHRAI>
 ; ^W4PAYS(COUNTRY,"MB",MB)=<SHEM MATBEA>
 ;
 ; ^[MAIN]TMPPAY($$^%W1JB,3,"SI")=SI ; -- SUG ISKA
 ; ^[MAIN]TMPPAY($$^%W1JB,3,"SA")=SA ; -- SUG ASHRAI
 ; ^[MAIN]TMPPAY($$^%W1JB,3,"MB")=MB ; -- SUG MATBEA
 ;
 ; AFTER FILLING PARAMETERS -->
 ;        D PUT^%W1PRM("NPZ",1)  ---   MISPAR SHEILTA
 ;        SA=^[MAIN]TMPPAY($$^%W1JB,3,"SA")=SA
 ;        w4pay.jsp?VT=3&VZ=PAYM&PRMC=SA
 ;--------------------------------------------------
 ;
 N (JB,%ARG,%REM)
 N TMPPAY D TMPPAY
 N PAYSI,PAYSA,PAYMP D PAYSI,PAYSA,PAYMB
 W "<div align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr><td>&nbsp;</td><td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";text-align:center"">"_$$^%W1DICT("TOPAYM",$J($G(%ARG("SUM")),2,2))_"</td></tr>",!
  W "<tr>",!
   W "<td valign=""top"">"
    ;;D OPT("SI",PAYSI)
    D
    .W "<table dir="""_$$^%W1DIR_""" cellspacing=""10"" cellpadding=""10"" width=""100%"" >",!
    .W "<tr><td>&nbsp;</td></tr>",!
    .W "<tr><td>"
    . W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""""
    .W " style=""color:green;width:100%;size:100%;font-size:"_$$^W3FSZ(18)_""" onClick=""Sbm()"""
    .W "</td></tr>",!
    .W "<tr><td>"
    . W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""""
    .W " style=""color:red;width:100%;size:100%;font-size:"_$$^W3FSZ(18)_""" onClick=""Cnc()"""
    .W "</td></tr></table>",!
   W "</td>"
   ;
   W "<td valign=""top"">"
    D OPT("SA",PAYSA)
   W "</td>"
   ;
   I $G(@$$^W4PL@("SHVMTB")) D
   .W "<td valign=""top"">"
    .D OPT("MB",PAYMB)
   .W "</td>"
  W "</tr>"
 W "</table>"
 W "</div>",!
 Q
 ;
PAYSI ;
 S PAYSI="^[$$^W3MAIN]W4PAYS($$COUNTRY^W3PRM,""SI"")"
 Q
 ;
PAYSA ;
 S PAYSA="^[$$^W3MAIN]W4PAYS($$COUNTRY^W3PRM,""SA"")"
 Q
 ;
PAYMB ;
 S PAYMB="^[$$^W3MAIN]W4PAYS($$COUNTRY^W3PRM,""MB"")"
 Q
 ;
TMPPAY ;
 S TMPPAY=$$^W4TMPPAY
 Q
 ;
SET(PRM) ;
 N TMPPAY D TMPPAY
 S PRM=$$CLEAR^%L1FRM(PRM)
 S PRM=$$FUNC^%UCASE(PRM)
 N ID,NOM
 S ID=$P(PRM,";") Q:ID=""
 S VL=$P($P(PRM,";",2),ID,2)
 S @TMPPAY@(3,ID)=VL
 Q
 ;
OPT(ID,GL)
 I $D(@GL)'=11 Q
 N IDL S IDL=$$FUNC^%LCASE(ID)
 W "<table id="""_IDL_""" dir="""_$$^%W1DIR_""" cellspacing=""10"" cellpadding=""10"" width=""100%"" >",!
 W "<tr>"
 W " <th style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";background-color:"_$$BGCOLOR^W4CSS_";color:yellow; border:solid 2px yellow"">"
  W $$H2U^%L1FRM($G(@GL))
 W " </th>"
 W "</tr>",!
 ;
 I $G(@TMPPAY@(3,ID))=1 S ^(ID)=8
 ;
 S N="" F K=1:1 S N=$O(@GL@(N)) Q:N=""  D
 .I ID="SA",$$EMV^W4PRM,N>1&(N<6)!(N=9) Q
 .N A S A=$G(@GL@(N))
 .W "<tr>",!
 .W " <td id="""_IDL_N_""" style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";cursor:pointer;border:solid 2px "_$$BGCOLOR^W4CSS
 .D
 ..I '$D(@TMPPAY@(3,ID)),N=8 W ";background-color:yellow" Q
 ..I $D(@TMPPAY@(3,ID)),$G(@TMPPAY@(3,ID))=N W ";background-color:yellow" Q
 ..W ";background-color:white" Q
 .W """ onClick=""Click('"_IDL_"','"_IDL_N_"')"">"
 . W $$H2U^%L1FRM(A)
 . W "</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 Q
 
 
 
 

W4PAYCB
W4PAYCB ;  [ 20.12.11 17:07 ] [ 12.12.09 09:04 ] [ 11.08.09 17:39 ]
  N (JB,%ARG,%REM)
  N VT,ER S ER="OK"
  S VT=3
  N M
  ;
  S ER=$$^W4PAYCBA($G(%ARG("LKH")))
  ;
  S STA=$P(ER,";",2)
  S STA=+STA
  ;
  I STA G END
  ;
  D CLEAR
END D PUT^%W1PRM("ER",ER) ;;W "ER="_ER ;
  Q
  ;
CLEAR ;
  D CLEAR^W4PAYKB
  Q
  ;
MSG(ER) ;
 N STA
 S STA=$P(ER,";",2)
 I $D(^[$$^W3MAIN]W4PAY($$COUNTRY^W3PRM,3,"DOP",+STA)) Q "Z"
 ;
 S ER=$P(ER,";")
 I ER="OK"&(STA="000") S MSG=$$CLWEB^%L1FRM($$^%W1DICT("CRCARDOK")) G EMSG
 I ER="OK",STA'="000" S MSG=$$CLWEB^%L1FRM($$H2U^%L1FRM(@$$^W4GL("KOD")@(+STA))) G EMSG
 ;
 N MSG S MSG=$$^%W1DICT(ER)
EMSG I MSG'="" Q $$CLWEB^%L1FRM(MSG)
 Q "ERROR "_ER

W4PAYCBA
W4PAYCBA(STRING) ; [ 03.08.26 06:26 ] [ 01.04.26 08:30 ] [ 31.03.26 16:49 ] 
 ; -- KABALAT K-A LE KABALA
 ; ---- OUTPUT: S21 --> PUT^%W1PRM("S21") --> W4LCBCR -> ^KLF(STRING,"CBV",...
 N (JB,%REM,STRING)
 D PUT^%W3DEB("W4PAYCBA","STRING=STRING")
 S %REM=$$GET^%W1PRM("REM")
 ;
 S SUMCA=$$GET^W4TMPPAY(3,"SUM")
 D STRIN(SUMCA)
 ;
 ;;I $L($G(STRIN)),$$DBLIN(STRIN) Q "DOUBLE;987;"
 ;
TV ;
 ;
 S A=$$INOUT^W4PAYCA(STRIN,$G(UIDBIT))
 ;
 S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 S MSGER=$P(A,"~",3)
 S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 S UID=$P(A,"~",6)
 ;
 ;;S ^LV("W4PAYCBA","SOUT")=SOUT
 D PUT^%W1PRM("S21",S21)
 ;
 D PUT^%W3DEB("W4PAYCBA","A=A& STA=STA & SOUT=SOUT & TRAN=TRAN")
 ;
 I $E(ER,1,2)'="OK" Q ER
 I STA["-" S STA="-"_$P(STA,"-",2)
 ;;S STA="003" ; ***
 ;
 I STA'="000" D  Q MSG
 .N TEL S TEL=""
 .I +STA=3 D
 ..N MSG,VTS S VTS=$E(SOUT,25) Q:'VTS
 ..;;S ^LV("W4PAYCBA","VTS")=VTS
 ..S TEL=$$TELCA^W4OPT(VTS)
 ..;;S ^LV("W4PAYCBA","TEL")=TEL
 .S MSG="OK;"_STA_";;"_MSGER_";"_TEL
 .;;S ^LV("W4PAYCBA","MSG")=MSG
 ;
 I $$DBLOU(SOUT) Q "DOUBLE;987;"
 ;
 D
 .N IND S IND=$O(@$$^W4GIO@(99999999),-1)+1
 .S @$$^W4GIO@(IND,"IN")=STRIN
 .S @$$^W4GIO@(IND,"OU")=A
 ;
 D PUT^%W1PRM("STRIN",STRIN)
 D PUT^%W1PRM("UID",$G(UID))
 ;
 S S21=$$^W4TRAN(SOUT,TRAN)
 ;
TV1 ;
 D PUT^%W3DEB("W4PAYCBA","S21=S21")
 D PUT^%W1PRM("S21",S21)
 ;
 Q "OK;000"
 ;
 ;
STRIN(SUMCA) ;
 D STRIN^W4PAYCA(SUMCA)
 Q
 ;
BIT(STRIN,UIDBIT) ;
 S STRIN=$$STRINBIT^W4PAYCA(STRIN)
 G TV
 ;
DBLOU(SOUT) ;
 N OK S OK=0
 N TMPCB S TMPCB=$$^W4MAIN("TMPCB")
 N N S N="" F  S N=$O(@TMPCB@("S21",N)) Q:N=""  D  Q:OK
 .S OU=$G(^(N,"SOUT"))
 .I $$^W4CAEQ(OU,SOUT) S OK=1
 Q OK
 ;
 N A,N,OU,OK I '$D(P1DZ) S P1DZ=$$^W4DZ
 N LAST S LAST=$O(^[$$^W3MAIN]W4INOUT(P1DZ,99999),-1)
 ;
 I LAST<11 S N=""
 E  S N=LAST-5
 S OK=0
 ;
 F  S N=$O(^[$$^W3MAIN]W4INOUT(P1DZ,N)) Q:N=""  D  Q:OK
 .S A=$G(^(N,"OU")) Q:A=""
 .S OU=$P(A,"~",4)
 .I $$^W4CAEQ(OU,STROU) S OK=1
 ;
 Q OK
 ;
PRZ(S) ; 
 Q $P(S,"*",1,2)_"*"_$P(S,"*",4,7) 
 ;
DBLIN(STRIN) ;
 N DZ S DZ=+$$^W4DZ
 I $$EMV^W4PRM,$L(STRIN),$D(@$$^W4GL("W4STRIN")@("CB",DZ,JB,STRIN)) D  Q 1
 .N SH S SH=$O(@$$^W4GL("W4STRIN")@("CBDB",DZ,JB,9999),-1)+1
 .S @$$^W4GL("W4STRIN")@("CBDB",DZ,JB,SH)=$H_"\"_STRIN
 ;
 I $$EMV^W4PRM,$L(STRIN) S @$$^W4GL("W4STRIN")@("CB",DZ,JB,STRIN)=$H
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYFN
W4PAYFN ; [ 03.05.26 13:20 ] [ 22.07.25 10:38 ] [ 06.07.25 05:01 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S P1DZ=$$^W4DZ
 S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM G EX
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 S %REM=$$GETP^%W1PRM("REM")
 S TOP="",NG=0
 ;
 I $$ARGMISC D  G VW
 .S NG=1
 .S MGROUP(NG)=$$^%W1DICT("OPENDRAW")
 .S MGROUP(NG,"TO")="OpenDraw()"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("PAPERFEED")
 .S MGROUP(NG,"TO")="PaperFeed()"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("PAPERCUT")
 .S MGROUP(NG,"TO")="PaperCut()"
 .I $$USRESTEMV^W4OPT D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("RESTEMVPAYM")
 ..S MGROUP(NG,"TO")="RestEMV()"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EXIT")
 .S MGROUP(NG,"TO")="Exit2Pay()"
 ;
 I $$^W4HSPART(HZM)!$$^W4ASHRAM D  G VW
 .S MGROUP(1)=$$^%W1DICT("EXIT")
 .S MGROUP(1,"TO")="Exit()"
 .S MGROUP("HG")="20%"
 .S TOP="5"
 .I $$^W4ASHRAM S TOP=1
 ;
 N SUMHZ S SUMHZ=$$TSHL^W4HZMST(HZM)
 I $$USTZOPR^W4HBMAS(SUMHZ),$$ORD(HZM),'$$^W4CLOSE(HZM),'$G(@$$^W4ORD@(HZM,"OPRTRTZ")) D OPRTRTZ(HZM) Q:'$G(DEFOPRTRTZ)
 ;
 I $$ORD(HZM),'$$ITRA^W4HZMST(HZM),'$$^W4CLOSE(HZM),'$$MSL^W4MSL(HZM)!$$DLV^W4CLOSE(HZM)!$G(%ARG("CLS"))!$$MSHHBNOW^W4PRM D  ; ***
 .D SETCLOSE^W4HZMST(HZM)
 .;;S ^AA("W4PAYFN","W4PCHB",HZM,$H)=1
 .I $$SHUL^W4HZMST(HZM) D ^W4PCHB(HZM,1)
 ;
 I $G(HZM)<0,'$$^W4ISPART(HZM),'$$ITRA^W4HZMST(HZM) D  G VW
 .S MGROUP("HG")="20%"
 .N NG S NG=1,TOP=5
 .S MGROUP(NG)=$$^%W1DICT("EXIT")
 .S MGROUP(NG,"TO")="Exit()"
 .I $G(%REM)'["192.168." D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("MUSTCBEXIT")
 ..S MGROUP(NG,"TO")="Stam()"
 ..S MGROUP(NG,"BG")="RED"
 ..S MGROUP(NG,"FG")="YELLOW"
 ..S MGROUP("HG")="40%"
 ..S TOP="4"
 ;
 I $$^W4CLOSE(HZM) D  G VW
 .N NG S NG=1
 .S MGROUP(NG)=$$^%W1DICT("PRINTINVOICEDETAILCOPY")
 .S MGROUP(NG,"TO")="PrintCopy('1')"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("PRINTINVOICENOTDETAILCOPY")
 .S MGROUP(NG,"TO")="PrintCopy('0')"
 .
 .I $$CUSTNAMES D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("PRINTINVOICES4CUST")
 ..S MGROUP(NG,"TO")="PrintInvoicesForCust('"_HZM_"')"
 .
 .I $$HSBENG^W4PRM,$$^%W1LNG="H" D
 ..S NG=NG+1
 ..S MGROUP(NG)="Print Invoice"
 ..S MGROUP(NG,"TO")="PrintInvoice()"
 .
 .I '$$CUSTNAMES D TOCUSNAME
 .
 .I $$TIPMZM^W4PRM,$$MZM^W4HZMST(HZM) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("TIPMZ")
 ..S MGROUP(NG,"TO")="TipMzm()"
 .
 .D MISC
 .
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EXIT")
 .S MGROUP(NG,"TO")="Exit()"
 .S MGROUP("HG")="50%"
 .S TOP="2"
 .
 N NG,NG0 S NG=0,NG0=0
 ;
 I '$$PAYCB(HZM),$$MAXHMK^W4PRM,$$TSHL^W4HZMST(HZM)>$$MAXHMK^W4PRM,$$ORD(HZM) D  G EX
 .S NG=NG+1,NG0=NG0+1
 .S MGROUP(NG)=$$^%W1DICT("MAXINVOICE",$$MAXHMK^W4PRM)
 .S MGROUP(NG,"TO")="AskCustName()"
 .
 .D DIS
 .D ASR
 ;
 I '$$NOMZM,'$$CRCARDFIRST^W4PRM D MZM
 ;
 D CA
 ;
 I '$$NOMZM,$$CRCARDFIRST^W4PRM=1 D MZM
 ;
 I '$$NOCHECK,'$$^W6 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CHECK")
 .S MGROUP(NG,"TO")="Check()"
 ;
 I '$$NOMZM,$$CRCARDFIRST^W4PRM=2 D MZM
 ;
 I $$KSHCSH^W4PRM D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("KASHCASH")
 .S MGROUP(NG,"TO")="KashCash()"
 ;
 I '$$NOMVBANK D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MVBANK")
 .S MGROUP(NG,"TO")="MvBank()"
 ;
 I '$G(@$$^W4PRM@("PAYCR")),'$$TLDFLT^W4PRM,$$PAYCB(HZM) G EX
 ;;I $G(@$$^W4ORD@(HZM,"HBNOW")) G TOCSN
 ;
 I '$$^W6,'$$PAYCB(HZM) D ASR
 ;
 I $$CIBUS^W4POSPRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CIBUS")
 .S MGROUP(NG,"TO")="Cibus()"
 ;
 I $$VCARD^W4POSPRM,$$ITRA^W4HZMST(HZM)>0 D
 .I $$SUPER^W3PRM!$$VCPREPAY^W4PRM,$$WASVCBON^W4HZMST(HZM) Q
 .S NG=NG+1
 .N VC S VC="VALUECARD"
 .I $$SUPER^W3PRM S VC="BONUSVC"
 .S MGROUP(NG)=$$^%W1DICT(VC)
 .S MGROUP(NG,"TO")="ValueCard('"_VC_"')"
 .
 .I $$SUPER^W3PRM D
 ..S MGROUP(NG,"BG")="RED"
 ..S MGROUP(NG,"FG")="YELLOW"
 ;
 I $$TENBIS^W4POSPRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("TENBIS")
 .S MGROUP(NG,"TO")="Tenbis()"
 ;
 I $$BSL^W4PRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("BSLOGICPAY")
 .S MGROUP(NG,"TO")="BLPay()"
 .
 .D  ; I $$BSNKD^W4HZMST(HZM) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("BSLOGICPOINTPAY")
 ..S MGROUP(NG,"TO")="BLPayNkd()"
 ;
 I $$MP^W4PRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MULTYPASS")
 .S MGROUP(NG,"TO")="MultyPass()"
 ;
 I $$PAYCB(HZM) G EX
 ;
 I $$COUPPH^W4PRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("COUPPH")
 .S MGROUP(NG,"TO")="CouponPhone()"
 ;
 I $G(@$$^W4PRM@("PAYCR")),$$PAYCB(HZM) G EX
 ;
 I $$GCOUPPY^W4PRM,'$$GCOUPASR^W4PRM!$G(@$$^W4PRM@("GCOUPASR","OLD")),$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("GCOUPON")
 .I $G(@$$^W4PRM@("GCOUPASR","OLD")),$$GCOUPASR^W4PRM D
 ..S MGROUP(NG)=$$^%W1DICT("GCOUPONOLD")
 .S MGROUP(NG,"TO")="GiftCoupon()"
 ;
 I '$$^W6 D
 .I '$$NOHNH^W4POSPRM D DIS
 .D DISCPRC
 ;
TOCSN D TOCUSNAME
 I '$$^W6 D MISC
 ;
EX I '$G(HZM) D EX1 G VW
 I ('$D(@$$^W4ORD@(HZM,"CB","V"))&'$D(@$$^W4ORD@(HZM,"CB","CH")))!$$ORD(HZM) D EX1
 ;
VW N COLGR S COLGR=$O(MGROUP(99),-1)
 S MGROUP="CENTER;FSZ16"
 I COLGR>10 S MGROUP="CENTER;FSZ12"
 D ^W4SHEET("","","",$G(TOP))
 Q
 ;
EX1 ;
 S NG=$G(NG)+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit()"
 S MGROUP(NG,"BG")="RED"
 S MGROUP(NG,"FG")="WHITE"
 Q
 ;
NOCHECK(STAM) ;
 I $$DELIS^W4PRM Q 1
 Q $$NOCHK^W4POSPRM
 ;
NOMVBANK(STAM) ;
 I $$^W6 Q 1
 I $$DELIS^W4PRM Q 1
 Q $$NOMVBANK^W4PRM
 ;
NOMZM(STAM) ;
 I $$^W6 Q 1
 I $$DELIS^W4PRM Q 1
 Q $$NOMZM^W4POSPRM
 ;
 ;
SNDLOAD(VPRM) ; --- LOAD VCARD ...
 N (JB,%ARG,%REM,VPRM)
 S P1DZ=$$^W4DZ
 S VP=$P(VPRM,";") I VP="" Q "ER;NOVP"
 ;
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "ER;NOORD"
 S CRD=$$GET^W4TMPANS(VP,"CARDNUMBER")
 I VP="WBCARD" S CRD=$$GET^W4TMPANS(VP,"BSCARD")
 S SUM=$$GET^W4TMPANS(VP,"LOADSUM")
 I 'SUM S SUM=$$GET^W4TMPANS(VP,"SUM")
 ;
 D PUT^%W3DEB("W4PAYFN-SNDLOAD","VP=VP & CRD=CRD &SUM=SUM &HZM=HZM")
 ;
 I $$ITRA^W4HZMST(HZM)>0 Q "ER;LOADCARDERROR"
 ;
 S A="OK"
 ;
 I $G(VP)="VCARD" D  ; -- END VALIOCARD LOADING ( FICT ORDER --> NEW RECEIPT )
 .N PRM
 .S PRM="&OPCODE=4&BUDGETSUM="_($J(SUM,2,2)*100)
 .S A=$$SND^WVGETINF(CRD,PRM)
 .D PUT^%W3DEB("W4PAYFN-SNDLOAD","A=A")
 .;;S A=-1 ; -- BDIKAT SHGIA
 .I A<1 D DELLOAD S A="ER;LOADCARDERROR" Q
 .N LKH,LKHNAME
 .S LKH=$G(@$$^WVG@("LKH")) Q:LKH=""
 .S %ARG("CARD")=CRD
 .S %ARG("LKHNAME")=$$GET^W4TMPANS(VP,"NAME")
 .S %ARG("LABCB")="V1CB"
 .
 .S A=$$CRCB(HZM,SUM,LKH)
 .
 .N NOMCB S NOMCB=$P(A,";",2)
 .S A=$P(A,";")
 .I NOMCB>0 D PRINTVC^W4CARDVW
 ;
 ;
 I $G(VP)["GCOUP" D  ; -- END GIFT COUPON LOADING ( FICT ORDER --> NEW RECEIPT
 .S VP=$$VP^W4GCOUP
 .N LKH,LKHNAME,TEL
 .S LKH=$$GET^W4TMPANS(VP,"PAYERTEL")
 .S TEL=LKH
 .N CUSN S CUSN=$$GET^W4TMPANS(VP,"CUSTOMNUMBER")
 .I $$GCOUPASR^W4PRM,$L(CUSN)>3 S LKH=CUSN
 .I '$$^W4ISCDLK(LKH) D DELLOAD S A="ER;NOCUST" Q
 .S %ARG("LKHNAME")=$$GET^W4TMPANS(VP,"PAYERNAME")
 .S %ARG("RCPNAME")=$$GET^W4TMPANS(VP,"RECIPIENTNAME")
 .;;I $$GCOUPASR^W4PRM D
 .D CRLKHGCOUP(LKH,%ARG("LKHNAME"),TEL)
 .S %ARG("LABCB")="V1CB"
 .
 .S A=$$CRCB(HZM,SUM,LKH)
 .N NOMCB S NOMCB=$P(A,";",2)
 .I NOMCB'>0 D DELPAYV
 ;
 I $G(VP)="WBCARD" D CRWBCB(HZM,CRD,SUM) Q:$L(ERR) ERR  ; -- END BL-CARD LOADING ( FICT ORDER --> NEW RECEIPT )
 ;
 I $G(VP)="WMCARD" S ERR=$$CRWMCB(HZM,CRD,SUM) Q:$G(ERR) ERR  ; -- END MP-CARD LOADING ( FICT ORDER --> NEW RECEIPT )
 ;
 I $G(VP)="ADVPAY" D  ; -- END ADVANCED PAY ( FICT ORDER --> NEW RECEIPT )
 .N LKH,LKHNAME
 .S LKH=$$GET^W4TMPANS(VP,"CUSTOMNUMBER") I '$$^W4ISCDLK(LKH) D DELLOAD S A="ER;NOCUST" Q
 .S %ARG("LKHNAME")=$$LKH^W4L(LKH)
 .S %ARG("LABCB")="V1CB"
 .
 .S A=$$CRCB(HZM,SUM,LKH)
 ;
 I $G(VP)="MAXHMK" D  ; -- END ADVANCED PAY ( FICT ORDER --> NEW RECEIPT )
 .N LKH,LKHNAME
 .S LKH=$$CUSN^W4CUSDET I '$$^W4ISCDLK(LKH) D DELLOAD S A="ER;NOCUST" Q
 .S %ARG("LKHNAME")=$$GET^W4TMPANS("CUSDET","CUSTOMNAME")
 .S %ARG("TZ")=$$GET^W4TMPANS("CUSDET","TZ")
 .S %ARG("LABCB")="V1CB"
 .S A=$$CRCB(HZM,SUM,LKH)
 .
 .D KILL^%W1PRM("VZ")
 .D KILL^%W1PRM("CIBEMVER")
 .D KILL^%W1PRM("TNBEMVER")
 .D KILL^%W1PRM("MAXTIP")
 .D KILL^%W1PRM("VP")
 .D KILL^%W1PRM("NP")
 .D KILL^%W1PRM("HZM")
 .D KILL^W4TMPANS(VP)
 ;
 Q A
 ;
 ;
CRCB(HZM,SUM,LKH) ;
 N A,MZ,S21,SUMB,NIKMAS,HRA,STRING,SUMCH
 N CHS,BSN,TZ,HESH,NCHECK,DATP,NOMCB
 S A=""
 S MZ=$$MZM^W4HZMST(HZM)
 S STRING=LKH
 D
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 ..S S21=$G(@$$^W4ORD@(HZM,"CB","V",N))
 ..D PUT^%W1PRM("S21",S21)
 ..D SETS21^W4LCBCR(STRING)
 ;
 S (SUMB,NIKMAS)=0
 ;
 S HRA=""
 ;
 D
 .S SUMCH=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","CH",N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..D ^W4GTVCH(A,"CH")
 ..S SUMCH=SUMCH+CHS
 ..S @$$^W4MAIN("TMPCB")@(N)=CHS_"\"_$E(BSN,1,2)_"\"_$E(BSN,3,5)_"\"_TZ_"\"_HESH_"\"_NCHECK_"\"_DATP
 ;
 D PUTTMP2^W4LCBCR
 ;
 S NOMCB=$$PUT^W4LCBCR(STRING)
 ;
 I NOMCB>0 D
 .S A=$$^W4PCCB(+NOMCB)
 .N HZMO S HZMO=$$GET^%W1PRM("HZMO") Q:'HZMO
 .N HB S HB=$G(@$$^W4ORD@(HZMO,"HBNOW")) Q:'HB
 .S @$$^W4ORD@(HZMO,"CBNOW")=+NOMCB
 .N IND S IND=$O(@$$^W4ORD@(HZMO,"CB","ASR",999),-1)
 .I IND S @$$^W4ORD@(HZMO,"CBNOW",IND)=+NOMCB
 .S $P(@$$^W4GL("P1LHB")@(STRING,HB),"\",5)=SUM
 .S $P(@$$^W4GL("P1LHB")@(STRING,HB),"\",6)=NOMCB
 .S @$$^W4GL("P1CHB")@(NOMCB,HB)=SUM
 .I '($D(@$$^W4GL("P1CHB")@(NOMCB))#2) D
 ..S @$$^W4GL("P1CHB")@(NOMCB)=STRING_"\"_$$^%L1DC(P1DZ,2)_"\"_SUM_"\"_SUM
 ;
 Q A_";"_NOMCB
 ;
 ;
DELLOAD ;
 N (JB,%ARG,%REM)
 S P1DZ=$$^W4DZ
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S SUMCA=$P($G(^(N)),"*",7)
 .D STRBIT^W4PAYCA(HZM,N,SUMCA)
 Q
 ;
PREPVT(VT) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 N MYDVN S MYDVN=$$^W4MYDVN
 N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 I PORTDISP D
 .N TX1,TX2 S TX2=""
 .S TX1=$J($$ITRA^W4HZMST(HZM),2,2)_" : melyzl dxzi"
 .D ^W4TX2DSP(PORTDISP,TX1,TX2)
 ;
 I VT'=3 D PUTDFLT(VT) Q
 I $$ORD(HZM) D PUTDFLT(VT) Q
 I $$INITVT^W4PAY(VT)
 Q
 ;
PUTDFLT(VT) ;
 I VT=2 D PUTDFLT^W4TMPPAY(VT,"DATP","DDMMYY") Q
 ;
 N CD S CD=$S(VT=2:"CHS",VT=4:"ASRL",VT=6:"HNH",1:"SUM")
 ;
 N TOPAY S TOPAY=$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM"))
 ;
 I VT=3 D
 .N DIV S DIV=$$GET^W4TMPANS(VT,"DIV")
 .I DIV,(TOPAY-DIV)>1 S TOPAY=$$GET^W4TMPANS(VT,"DIV")
 ;
 I VT'=6 D PUTDFLT^W4TMPPAY(VT,CD,TOPAY)
 ;
 I $$GETP^%W1PRM("TLDFLT") D
 .D PUTDFLT^W4TMPPAY(7,"CARDNUMBER",$$GET^W4TMPANS($$VP^W4GCOUP,"PAYERTEL"))
 Q
 ;
 ;
BACKNEG(STAM) ;
 N A
 I $$^W4ISPART D  Q A
 .N HZMAIN,NTS S HZMAIN=$$GETP^%W1PRM("HZMMAIN")
 .S NTS=$P(HZMAIN,";",2),HZMAIN=+HZMAIN
 .S A=$$REST^W4PARTGT
 .
 ;
 N VP S VP=$$GET^%W1PRM("VP")
 I VP="ADVPAY" D
 .D KILL^%W1PRM("VZ")
 .D KILL^%W1PRM("MAXTIP")
 .D KILL^%W1PRM("VP")
 .D KILL^%W1PRM("NP")
 .D KILL^%W1PRM("HZM")
 .D KILL^W4TMPANS(VP)
 Q 1
 ;
MZM ;
 I $$^W4PIZUL(HZM) Q
 I $$NOMZMDLV^W4PRM,'$$MGR^W4KOTMLZ,$$^W4MSL(NMB),$$TSHL^W4HZMST(HZM)>0,'$$TAKEAWAY^W3HZMST(JB),'$$DLV^W4CLOSE(HZM),'$G(%ARG("CLS")),'$$GETP^%W1PRM("ORDVW") Q
 ;
 N OKMZM S OKMZM=1
 I $$HZM^W4MSL(HZM) D
 .N DTS S DTS=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 .N SHAA S SHAA=$$SHAA^W4HZMST(HZM)
 .N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 .N SHAACB S SHAACB=$P(DATCB,"  ",2)
 .S DATCB=$P(DATCB," ")
 .N DTCB S DTCB=$$^%L1DC(DATCB,3)
 .I SHAA<$$SHAAZ^W4PRM S DTS=DTS-1
 .I $$PAPJ^W4PRM,'$$MGR^W4KOTMLZ,$$TSHL^W4HZMST(HZM)>0,'$$DLV^W4CLOSE(HZM),DTS>$$^W4DZ S OKMZM=0
 ;
 Q:'OKMZM
 ;
 S NG=NG+1,NG0=NG0+1
 S MGROUP(NG)=$$^%W1DICT("CASH")
 S MGROUP(NG,"TO")="Cash()"
 S MGROUP(NG,"BG")="LIGHTGREEN"
 S MGROUP(NG,"FG")="BROWN"
 S MGROUP(NG,"IMG")="w4cash.png"
 Q
 ;
 ;
CA ;
 N MYDVN S MYDVN=$$^W4MYDVN
 I $$EMV^W4PRM,$$EMV^W4PRM'=2,'$$EMVNUM^W4POSEMV(MYDVN) Q
 ;
 I $$CAJ^W4PRM'=1 D
 .S NG=NG+1,NG0=NG0+1
 .S MGROUP(NG)=$$^%W1DICT("CRCARD")
 .S MGROUP(NG,"TO")="CredCard()"
 .S MGROUP(NG,"BG")="LIGHTBLUE"
 .S MGROUP(NG,"FG")="BROWN"
 .S MGROUP(NG,"IMG")="w4crcard.png"
 ; 
 I $$CAJ^W4PRM,'$$^W6 D
 .I $$CAJ^W4PRM=3,'$$HZM^W4MSL(HZM) Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CREDCARDOUT")
 .S MGROUP(NG,"TO")="CredCardOut()"
 .S MGROUP(NG,"BG")="LIGHTBLUE"
 .S MGROUP(NG,"FG")="BROWN"
 Q
 ;
DIS ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("HNH")
 S MGROUP(NG,"TO")="Discount()"
 S MGROUP(NG,"BG")="YELLOW"
 S MGROUP(NG,"FG")="RED"
 Q
 ;
DISCPRC ;
 N DISCPRC S DISCPRC=$G(@$$^W4PRM@("DISCPRC"))
 S HZM=$$GETP^%W1PRM("HZM")
 Q:'HZM
 Q:$$CLOSE^W4HZMST(HZM)
 I DISCPRC,'$$HNHAH^W4HZMST(HZM) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DISCOUNT",DISCPRC)
 .S MGROUP(NG,"TO")="DiscPercent()"
 .S MGROUP(NG,"BG")="YELLOW"
 .S MGROUP(NG,"FG")="RED"
 Q
 ;
ASR ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CREDIT")
 S MGROUP(NG,"TO")="Credit()"
 Q
 ;
PRINTINV4CUST(HZM) ;
 ;;S ^AA("W4PAYFN","PRINTINV4CUST",$H)=1
 D ^W4HB2LK(HZM)
 Q
 ;
TOTABLES(STAM) ;
 N HZM,NMB,SUGS
 S NMB=$$GET^%W1PRM("NMB") I 'NMB Q 0
 S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q 0
 I $$BACKTO(SUGS)=1 Q 1
 Q 0
 ;
TOITEMS(STAM) ;
 N HZM,NMB,SUGS
 S NMB=$$GET^%W1PRM("NMB") I 'NMB Q 0
 S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q 0
 I $$BACKTO(SUGS)=2,$$^W4MSD(NMB) Q 1
 Q 0
 ;
BACKTO(SUGS) ;
 Q $P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",5)
 ;
 ;
PUTDISCPRC(STAM) ;
 N DISCPRC S DISCPRC=$G(@$$^W4PRM@("DISCPRC")) I 'DISCPRC Q "NOTDISCPRC"
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I 'HZM Q "NOTORDER"
 I $$CLOSE^W4HZMST(HZM) Q "ORDERCLOSED"
 ;
 N RES S RES=1
 I DISCPRC*$$TOTORD^W3HZMST(JB,"D")*.01>$$ITRA^W4HZMST(HZM) Q "DISCTOOMUCH"
 I $D(@$$^W4TMPORD)=11 D
 .D PUT^W3HZMST(JB,"AHUZ",DISCPRC)
 .N A S A=$$GETSUM^W3HZMST(JB,1)
 ;
 D PUT^W4HZMST(HZM,"HNHAH",DISCPRC)
 N TSHL,HNH,DMSH
 S HNH=$$SHNH^W4HZMST(HZM)
 D PUT^W4HZMST(HZM,"HNH",$J(HNH,2,2))
 S TSHL=$$TOTORD^W4HZMST(HZM)
 D PUT^W4HZMST(HZM,"TSHL",$J(TSHL,2,2))
 Q RES
 ;
 ;
CRLKHGCOUP(LKH,LKHNAME,TEL) ;
 I $D(@$$^W4GL("LKH")@(LKH)) D
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"LKHNAME")=$$LKH^W4L(LKH)_"\"_$ZD($H,"DD.MM.YY  24:60")
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"GDCR")=$$GDCR^W4L(LKH)
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"ISCR")=$$ISCR^W4L(LKH)
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"TEL")=$$TELB^W4L(LKH)
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"HBNOW")=$$HBNOW^W4L(LKH)
 ;
 S @$$^W4GL("LKH")@(LKH)=LKHNAME
 ;
 I '$$GDCR^W4L(LKH)!'$$ISCR^W4L(LKH) D
 .D PUT^W4L(LKH,.1,"GDCR")
 ;
 D PUT^W4L(LKH,1,"ISCR")
 D PUT^W4L(LKH,2,"HBNOW")
 D PUT^W4L(LKH,TEL,"TELB")
 ;
 I $G(@$$^W4PRM@("GCOUPASR","SUGL")) D
 .N SUGL S SUGL=$G(^("SUGL"))
 .D PUT^W4L(LKH,SUGL,"SUGL")
 ;
 I $G(@$$^W4PRM@("GCOUPASR","ACC")) D
 .N HESB S HESB=$G(^("ACC"))
 .D PUT^W4L(LKH,HESB,"HESB")
 ;
 Q
 ;
 ;
CRWBCB(HZM,CRD,SUM) ;
 S ERR=""
 ;
 D LKHLODD^WBFUNC(CRD,SUM)
 I $G(BZLER) D DELLOAD D CLRBSCARD^WBCARD S ERR="ERR\"_BZLER_"\"_$G(BZLER1) Q
 S ERR=$$^WBERR I ERR D DELLOAD S ERR=$$VWERR^WBERR(ERR) Q
 D ^WBCDATA($$TMP^WBSTAT)
 N KOT S KOT=" ""wi'bel qpfia"" qihxk zpirh"
 D PC^WBPCBON($$TMP^WBSTAT,KOT_"!",$$NAME^WBCLUB,1)
 ;
 N ASM S ASM=$$^WBGETVL("ShellyReferenceId")
 ;
 N LKH,LKHNAME,A,%ARG
 S LKH=$$LKH^WBCLUB I LKH="" Q "ERRCD\NOCUSTCODE"
 S %ARG("WBCARD")=1
 S %ARG("BSCARD")=CRD
 S %ARG("BSLKH")=$$^WBLKH(CRD)
 S %ARG("BSASM")=ASM
 S %ARG("BSNAME")=$$^WBANS("WBCARD","BSNAME")
 S %ARG("BSCLUB")=$$CLUB^WBCLUB
 S %ARG("LABCB")="V1CB"
 S A=$$CRCB(HZM,SUM,LKH)
 Q
 ;
 ;
CRWMCB(HZM,MPCARD,SUM) ;
 N SUM,MZM,CA,CH,PAYM,RES,RCD,ARM,PAYM,KOT,ERR D ^WMIN
 S SUM=$$TSHL^W4HZMST(HZM)*100
 S MZM=$$MZM^W4HZMST(HZM)*100
 S CA=$$SCA^W4HZMST(HZM)*100
 S CH=$$SCH^W4HZMST(HZM)*100
 ;
 S PAYM=$S(MZM:"1"_M1P("RZV")_MZM_";",1:"")
 S PAYM=$S(CH:PAYM_"1"_M1P("RZV")_CH_";",1:PAYM)
 S PAYM=$S(CA:PAYM_"1"_M1P("RZV")_CA_";",1:PAYM)
 ;
 S RCD=""
 S ARM=$$^WMPARAM("MPARM")
 ;
 S RES=$$^WMLOD(MPCARD,ARM,SUM,PAYM)
 ;
 S RCD=$P(RES,"\")
 I $G(RCD) D  Q RES
 .N RS S RS=$$DELCB^W4HZDEL(HZM)
 ;
 D ^WMRCV2V("LOD")
 ;
 S KOT=" aivwz zpirh ;;;"_$G(COP)_";"_$G(LOI)_";"_$G(EMP)
 I $L($$^WMANS("LOD","MES0")) D ^WMPCMSG($$^WMANS("LOD","MES0"),,KOT)
 S ERR=""
 ;
 ;;N COP S COP=$$^WMANS("LOD","COP")
 N LKH,LKHNAME,A,%ARG
 S LKH=$$^WMMLKH(COP,MPCARD)
 ;
 S %ARG("WMCARD")=1
 S %ARG("MPCARD")=MPCARD
 S %ARG("MPNAME")=$$^WMANS("LOD","EMP")
 S %ARG("MPASM")=$$^WMANS("LOD","LOI")
 S %ARG("MPARM")=ARM
 S %ARG("LABCB")="V1CB"
 S A=$$CRCB(HZM,SUM,LKH)
 Q 0
 ;
CUSTNAMES(STAM) ;
 I $D(@$$^W4ORD@(HZM,"TOCUSNAME"))<10 Q 0
 N OK S OK=0
 N VT S VT="" F  S VT=$O(@$$^W4ORD@(HZM,"TOCUSNAME",VT)) Q:VT=""  D
 .N NP S NP="" F  S NP=$O(@$$^W4ORD@(HZM,"TOCUSNAME",VT,NP)) Q:NP=""  I NP D
 ..N A S A=$G(^(NP)) I $P(A,"\")'?.P S OK=OK+1
 Q (OK>0)
 ;
 ;
TOCUSNAME
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("TOCUSNAME")
 D
 .N PRM S PRM=HZM_";;;"_$$CLWEB^%L1FRM($$TOCUSNAME^W4HZMST(HZM))
 .S MGROUP(NG,"TO")="ToCusName('"_PRM_"')"
 Q
 ;
PART(HZM) ;
 Q $D(@$$^W4ORD@(HZM,"PART"))>9
 ;
ORD(HZM) ;
 Q $$^W4ISORD(HZM)
 ;
HBMKRBIG(STAM) ; 
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "0;NOTORD"
 I '$$HZM^W4MSL(HZM) Q "0;NOTDLV"
 ;
 N HB S HB=$G(@$$^W4ORD@(HZM,"HBNOW")) I 'HB Q "0;NOTINVOICE"
 N LK S LK=$G(@$$^W4KLIN@("H",HB))
 S LK=$$^W4CLRLK(LK)
 I 'LK Q "0;NOTCUST"
 ;
 I $$HBNOWMONTH^W4PRM,$$HBNOW^W4L(LK)'>1 Q 0
 ;
 I '$$HBNOWBIG^W4PRM Q 0
 ;
 I '$D(@$$^W4GL("P1LHB")@(LK,HB,"MKR")) Q 0
 ;
 I $$HBNOW^W4L(LK)>1 D
 .D PUT^W4L(LK,0,"ISCR")
 .D PUT^W4L(LK,0,"HBNOW")
 ;
 Q "1;"_HB_";"_LK 
 ;
 ;
DT(HZM) ; 
 N TRH S TRH=$$TRH^W4HZMST(HZM)
 N DT S DT=$$^%L1DC(TRH,3)
 N SHAA S SHAA=$$SHAA^W4HZMST(HZM) 
 I SHAA?1N.E,$$^W4SHAAZ,SHAA<$$SHAAZ^W4PRM S DT=DT-1
 Q DT 
 ;
MISC ; 
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("MISC")
 S MGROUP(NG,"TO")="Misc()"
 S MGROUP(NG,"BG")="BROWN"
 S MGROUP(NG,"FG")="YELLOW"
 Q
 ;
ARGMISC(STAM) ; 
 Q $G(%ARG("MISC")) 
 ;
DELPAYV ; 
 Q 
 ;
PAYCB(HZM) ; 
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I ($G(HZM)<0&'$$ORD(HZM)) Q 1
 I $$TLMTN^W4L(NMB) Q 1
 I HZM>0,$D(@$$^W4ORD@(HZM,"GCOUP"))>9 Q 1
 Q 0 
 ;
PUTOPRTZ(TZ) ;
 D KILL^%W1PRM("HEADTZ")
 K %ARG
 N HZM S HZM=$$GETP^%W1PRM("HZM") Q:HZM<1 0 
 S @$$^W4ORD@(HZM,"OPRTRTZ")=TZ
 I $L(TZ)>6,$$^W4TZ(TZ) S @$$^W4PL@("OPRTRTZ")=TZ; -- 02.07.25
 Q 1
 ;
ZAPRTZ(HZM) ;
 K %ARG
 S %ARG("HEAD")="OPRTRTZ"
 D PUT^%W1PRM("HEADTZ",1)
 S %ARG("MAXL")=9 S MAXL=%ARG("MAXL")
 D ^W4KB
 Q
 ;
OPRTRTZ(HZM) ;
 S DEFOPRTRTZ=0
 N OPRTRTZ S OPRTRTZ=$$OPRTRTZ^W4HSBGET
 I OPRTRTZ,$L(OPRTRTZ)>6,$$^W4TZ(OPRTRTZ) D  S DEFOPRTRTZ=1 Q
 .S @$$^W4ORD@(HZM,"OPRTRTZ")=OPRTRTZ
 .D SETOPRTRTZ^W4LKHPRM(OPRTRTZ)
 D ZAPRTZ(HZM)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYFN0
W4PAYFN ; [ 28.07.16 12:19 ] [ 14.06.16 15:50 ] [ 29.04.16 17:33 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S P1DZ=$$^W4DZ
 S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM G EX
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 S %REM=$$GETP^%W1PRM("REM")
 S MGROUP="CENTER;FSZ16"
 S TOP=""
 ;
 I $$^W4HSPART(HZM) D  G VW
 .S MGROUP(1)=$$^%W1DICT("EXIT")
 .S MGROUP(1,"TO")="Exit()"
 .S MGROUP("HG")="20%"
 .S TOP="5"
 ;
 I $$ORD(HZM),'$$ITRA^W4HZMST(HZM),'$$^W4CLOSE(HZM),'$$MSL^W4MSL(HZM)!$$DLV^W4CLOSE(HZM)!$G(%ARG("CLS")) D
 .D SETCLOSE^W4HZMST(HZM)
 .I $$SHUL^W4HZMST(HZM) D ^W4PCHB(HZM,1)
 ;
 I $G(HZM)<0,'$$^W4ISPART(HZM),'$$ITRA^W4HZMST(HZM) D  G VW
 .S MGROUP(1)=$$^%W1DICT("EXIT")
 .S MGROUP(1,"TO")="Exit()"
 .S MGROUP("HG")="20%"
 .S TOP="5"
 ;
 I $$^W4CLOSE(HZM) D  G VW
 .N NG S NG=1
 .S MGROUP(NG)=$$^%W1DICT("PRINTINVOICEDETAILCOPY")
 .S MGROUP(NG,"TO")="PrintCopy('1')"
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("PRINTINVOICENOTDETAILCOPY")
 .S MGROUP(NG,"TO")="PrintCopy('0')"
 .
 .I $$CUSTNAMES D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("PRINTINVOICES4CUST")
 ..S MGROUP(NG,"TO")="PrintInvoicesForCust('"_HZM_"')"
 .
 .I '$$CUSTNAMES D TOCUSNAME
 .
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("EXIT")
 .S MGROUP(NG,"TO")="Exit()"
 .S MGROUP("HG")="50%"
 .S TOP="2"
 .
 N NG S NG=0
 ;
 I $$MAXHMK^W4PRM,$$TSHL^W4HZMST(HZM)>$$MAXHMK^W4PRM,$$ORD(HZM) D  G EX
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MAXINVOICE",$$MAXHMK^W4PRM)
 .S MGROUP(NG,"TO")="AskCustName()"
 .
 .D DIS
 .D ASR
 ;
 I '$$NOMZM D
 .I '$$MGR^W4KOTMLZ,$$^W4MSL(NMB),$$TSHL^W4HZMST(HZM)>0,'$$TAKEAWAY^W3HZMST(JB),'$$DLV^W4CLOSE(HZM),'$G(%ARG("CLS")),'$$GETP^%W1PRM("ORDVW") Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CASH")
 .S MGROUP(NG,"TO")="Cash()"
 ;
 D
 .I $G(HZM)<0,'$$ORD(HZM),$$SCA^W4HZMST(HZM) Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CRCARD")
 .S MGROUP(NG,"TO")="CredCard()"
 ;
 I '$$NOCHECK D
 .I '$$MGR^W4KOTMLZ,$$^W4MSL(NMB),'$$TAKEAWAY^W3HZMST(JB),'$$DLV^W4CLOSE(HZM),'$G(%ARG("CLS")),'$$GETP^%W1PRM("ORDVW") Q
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CHECK")
 .S MGROUP(NG,"TO")="Check()"
 ;
 I ($G(HZM)<0&'$$ORD(HZM))!$$TLMTN^W4L(NMB) G EX
 ;
 D ASR
 ;
 I $$CIBUS^W4POSPRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("CIBUS")
 .S MGROUP(NG,"TO")="Cibus()"
 ;
 I $$VCARD^W4POSPRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("VALUECARD")
 .S MGROUP(NG,"TO")="ValueCard()"
 ;
 I $$TENBIS^W4POSPRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("TENBIS")
 .S MGROUP(NG,"TO")="Tenbis()"
 ;
 I $$BSL^W4PRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("BSLOGICPAY")
 .S MGROUP(NG,"TO")="BLPay()"
 .
 .D  ; I $$BSNKD^W4HZMST(HZM) D
 ..S NG=NG+1
 ..S MGROUP(NG)=$$^%W1DICT("BSLOGICPOINTPAY")
 ..S MGROUP(NG,"TO")="BLPayNkd()"
 ;
 I $$MP^W4PRM,$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("MULTYPASS")
 .S MGROUP(NG,"TO")="MultyPass()"
 ;
 I $$GCOUPON^W4POSPRM,'$$GCOUPASR^W4PRM!$G(@$$^W4PRM@("GCOUPASR","OLD")),$$ITRA^W4HZMST(HZM)>0 D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("GCOUPON")
 .I $G(@$$^W4PRM@("GCOUPASR","OLD")),$$GCOUPASR^W4PRM D
 ..S MGROUP(NG)=$$^%W1DICT("GCOUPONOLD")
 .S MGROUP(NG,"TO")="GiftCoupon()"
 ;
 I '$$NOHNH^W4POSPRM D DIS
 D DISCPRC
 ;
 D TOCUSNAME
 ;
EX I '$G(HZM) D EX1 G VW
 I ('$D(@$$^W4ORD@(HZM,"CB","V"))&'$D(@$$^W4ORD@(HZM,"CB","CH")))!$$ORD(HZM) D EX1
 ;
VW D ^W4SHEET("","","",$G(TOP))
 Q
 ;
EX1 ;
 S NG=$G(NG)+1
 S MGROUP(NG)=$$^%W1DICT("EXIT")
 S MGROUP(NG,"TO")="Exit()"
 Q
 ;
NOCHECK(STAM) ;
 Q $$NOCHK^W4POSPRM
 ;
NOMZM(STAM) ;
 Q $$NOMZM^W4POSPRM
 ;
 ;
SNDLOAD(VPRM) ; --- LOAD VCARD ...
 N (JB,%ARG,%REM,VPRM)
 S P1DZ=$$^W4DZ
 S VP=$P(VPRM,";") I VP="" Q "ER;NOVP"
 ;
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "ER;NOORD"
 S CRD=$$GET^W4TMPANS(VP,"CARDNUMBER")
 I VP="WBCARD" S CRD=$$GET^W4TMPANS(VP,"BSCARD")
 S SUM=$$GET^W4TMPANS(VP,"LOADSUM")
 I 'SUM S SUM=$$GET^W4TMPANS(VP,"SUM")
 ;
 D PUT^%W3DEB("W4PAYFN-SNDLOAD","VP=VP & CRD=CRD &SUM=SUM &HZM=HZM")
 ;
 I $$ITRA^W4HZMST(HZM)>0 Q "ER;LOADCARDERROR"
 ;
 S A="OK"
 ;
 I $G(VP)="VCARD" D  ; -- END VALIOCARD LOADING ( FICT ORDER --> NEW RECEIPT )
 .N PRM
 .S PRM="&OPCODE=4&BUDGETSUM="_($J(SUM,2,2)*100)
 .S A=$$SND^WVGETINF(CRD,PRM)
 .D PUT^%W3DEB("W4PAYFN-SNDLOAD","A=A")
 .;;S A=-1 ; -- BDIKAT SHGIA
 .I A<1 D DELLOAD S A="ER;LOADCARDERROR" Q
 .N LKH,LKHNAME
 .S LKH=$G(@$$^WVG@("LKH"))
 .S %ARG("CARD")=CRD
 .S %ARG("LKHNAME")=$$GET^W4TMPANS(VP,"NAME")
 .S %ARG("LABCB")="V1CB"
 .
 .S A=$$CRCB(HZM,SUM,LKH)
 .
 .N NOMCB S NOMCB=$P(A,";",2)
 .S A=$P(A,";")
 .I NOMCB>0 D PRINTVC^W4CARDVW
 ;
 ;
 I $G(VP)["GCOUP" D  ; -- END GIFT COUPON LOADING ( FICT ORDER --> NEW RECEIPT
 .S VP=$$VP^W4GCOUP
 .N LKH,LKHNAME,TEL
 .S LKH=$$GET^W4TMPANS(VP,"PAYERTEL")
 .S TEL=LKH
 .I $$GCOUPASR^W4PRM S LKH=$$GET^W4TMPANS(VP,"CUSTOMNUMBER")
 .I '$$^W4ISCDLK(LKH) D DELLOAD S A="ER;NOCUST" Q
 .S %ARG("LKHNAME")=$$GET^W4TMPANS(VP,"PAYERNAME")
 .S %ARG("RCPNAME")=$$GET^W4TMPANS(VP,"RECIPIENTNAME")
 .I $$GCOUPASR^W4PRM D
 ..D CRLKHGCOUP(LKH,%ARG("LKHNAME"),TEL)
 .S %ARG("LABCB")="V1CB"
 .
 .S A=$$CRCB(HZM,SUM,LKH)
 ;
 I $G(VP)="WBCARD" D CRWBCB(HZM,CRD,SUM) Q:$L(ERR) ERR  ; -- END BL-CARD LOADING ( FICT ORDER --> NEW RECEIPT )
 ;
 I $G(VP)="WMCARD" S ERR=$$CRWMCB(HZM,CRD,SUM) Q:$G(ERR) ERR  ; -- END MP-CARD LOADING ( FICT ORDER --> NEW RECEIPT )
 ;
 I $G(VP)="ADVPAY" D  ; -- END ADVANCED PAY ( FICT ORDER --> NEW RECEIPT )
 .N LKH,LKHNAME
 .S LKH=$$GET^W4TMPANS(VP,"CUSTOMNUMBER") I '$$^W4ISCDLK(LKH) D DELLOAD S A="ER;NOCUST" Q
 .S %ARG("LKHNAME")=$$LKH^W4L(LKH)
 .S %ARG("LABCB")="V1CB"
 .
 .S A=$$CRCB(HZM,SUM,LKH)
 ;
 I $G(VP)="MAXHMK" D  ; -- END ADVANCED PAY ( FICT ORDER --> NEW RECEIPT )
 .N LKH,LKHNAME
 .S LKH=$$CUSN^W4CUSDET I '$$^W4ISCDLK(LKH) D DELLOAD S A="ER;NOCUST" Q
 .S %ARG("LKHNAME")=$$GET^W4TMPANS("CUSDET","CUSTOMNAME")
 .S %ARG("TZ")=$$GET^W4TMPANS("CUSDET","TZ")
 .S %ARG("LABCB")="V1CB"
 .S A=$$CRCB(HZM,SUM,LKH)
 .
 .D KILL^%W1PRM("VZ")
 .D KILL^%W1PRM("MAXTIP")
 .D KILL^%W1PRM("VP")
 .D KILL^%W1PRM("NP")
 .D KILL^%W1PRM("HZM")
 .D KILL^W4TMPANS(VP)
 ;
 Q A
 ;
 ;
CRCB(HZM,SUM,LKH) ;
 N A,MZ,S21,SUMB,NIKMAS,HRA,STRING,SUMCH
 N CHS,BSN,TZ,HESH,NCHECK,DATP,NOMCB
 ;
 S MZ=$$MZM^W4HZMST(HZM)
 S S21=$G(@$$^W4ORD@(HZM,"CB","V",1))
 D PUT^%W1PRM("S21",S21)
 ;
 S (SUMB,NIKMAS)=0
 ;
 S HRA=""
 S STRING=LKH
 ;
 D
 .S SUMCH=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","CH",N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..D ^W4GTVCH(A,"CH")
 ..S SUMCH=SUMCH+CHS
 ..S @$$^W4MAIN("TMPCB")@(N)=CHS_"\"_$E(BSN,1,2)_"\"_$E(BSN,3,5)_"\"_TZ_"\"_HESH_"\"_NCHECK_"\"_DATP
 ;
 D PUTTMP2^W4LCBCR
 ;
 S NOMCB=$$PUT^W4LCBCR(STRING)
 ;
 I NOMCB>0 D
 .S A=$$^W4PCCB(+NOMCB)
 .N HZMO S HZMO=$$GET^%W1PRM("HZMO") Q:'HZMO
 .N HB S HB=$G(@$$^W4ORD@(HZMO,"HBNOW")) Q:'HB
 .S @$$^W4ORD@(HZMO,"CBNOW")=+NOMCB
 .N IND S IND=$O(@$$^W4ORD@(HZMO,"CB","ASR",999),-1)
 .I IND S @$$^W4ORD@(HZMO,"CBNOW",IND)=+NOMCB
 .S $P(@$$^W4GL("P1LHB")@(STRING,HB),"\",5)=SUM
 .S $P(@$$^W4GL("P1LHB")@(STRING,HB),"\",6)=NOMCB
 .S @$$^W4GL("P1CHB")@(NOMCB,HB)=SUM
 .I '($D(@$$^W4GL("P1CHB")@(NOMCB))#2) D
 ..S @$$^W4GL("P1CHB")@(NOMCB)=STRING_"\"_$$^%L1DC(P1DZ,2)_"\"_SUM_"\"_SUM
 ;
 Q A_";"_NOMCB
 ;
 ;
DELLOAD ;
 N (JB,%ARG,%REM)
 S P1DZ=$$^W4DZ
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S SUMCA=$P($G(^(N)),"*",7)
 .D STRBIT^W4PAYCA(HZM,N,SUMCA)
 Q
 ;
PREPVT(VT) ;
 I VT'=3 D PUTDFLT(VT) Q
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I $$ORD(HZM) D PUTDFLT(VT) Q
 I $$INITVT^W4PAY(VT)
 Q
 ;
PUTDFLT(VT) ;
 I VT=2 D PUTDFLT^W4TMPPAY(VT,"DATP","DDMMYY") Q
 N CD S CD=$S(VT=2:"CHS",VT=4:"ASRL",VT=6:"HNH",1:"SUM")
 N TOPAY S TOPAY=$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM"))
 I VT=3 D
 .N DIV S DIV=$$GET^W4TMPANS(VT,"DIV")
 .I DIV,(TOPAY-DIV)>1 S TOPAY=$$GET^W4TMPANS(VT,"DIV")
 I VT'=6 D PUTDFLT^W4TMPPAY(VT,CD,TOPAY)
 Q
 ;
BACKNEG(STAM) ;
 N A
 I $$^W4ISPART D  Q A
 .N HZMAIN,NTS S HZMAIN=$$GETP^%W1PRM("HZMMAIN")
 .S NTS=$P(HZMAIN,";",2),HZMAIN=+HZMAIN
 .S A=$$REST^W4PARTGT
 .
 ;
 N VP S VP=$$GET^%W1PRM("VP")
 I VP="ADVPAY" D
 .D KILL^%W1PRM("VZ")
 .D KILL^%W1PRM("MAXTIP")
 .D KILL^%W1PRM("VP")
 .D KILL^%W1PRM("NP")
 .D KILL^%W1PRM("HZM")
 .D KILL^W4TMPANS(VP)
 Q 1
 ;
DIS ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("HNH")
 S MGROUP(NG,"TO")="Discount()"
 Q
 ;
DISCPRC ;
 N DISCPRC S DISCPRC=$G(@$$^W4PRM@("DISCPRC"))
 S HZM=$$GETP^%W1PRM("HZM")
 Q:'HZM
 Q:$$CLOSE^W4HZMST(HZM)
 I DISCPRC,'$$HNHAH^W4HZMST(HZM) D
 .S NG=NG+1
 .S MGROUP(NG)=$$^%W1DICT("DISCOUNT",DISCPRC)
 .S MGROUP(NG,"TO")="DiscPercent()"
 Q
 ;
ASR ;
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("CREDIT")
 S MGROUP(NG,"TO")="Credit()"
 Q
 ;
PRINTINV4CUST(HZM) ;
 D ^W4HB2LK(HZM)
 Q
 ;
TOTABLES(STAM) ;
 N HZM,NMB,SUGS
 S NMB=$$GET^%W1PRM("NMB") I 'NMB Q 0
 S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q 0
 I $$BACKTO(SUGS)=1 Q 1
 Q 0
 ;
TOITEMS(STAM) ;
 N HZM,NMB,SUGS
 S NMB=$$GET^%W1PRM("NMB") I 'NMB Q 0
 S SUGS=$$SUGS^W4L(NMB) I 'SUGS Q 0
 I $$BACKTO(SUGS)=2 Q 1
 Q 0
 ;
BACKTO(SUGS) ;
 Q $P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",5)
 ;
 ;
PUTDISCPRC(STAM) ;
 N DISCPRC S DISCPRC=$G(@$$^W4PRM@("DISCPRC")) I 'DISCPRC Q "NOTDISCPRC"
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I 'HZM Q "NOTORDER"
 I $$CLOSE^W4HZMST(HZM) Q "ORDERCLOSED"
 ;
 N RES S RES=1
 I DISCPRC*$$TOTORD^W3HZMST(JB,"D")*.01>$$ITRA^W4HZMST(HZM) Q "DISCTOOMUCH"
 I $D(@$$^W4TMPORD)=11 D
 .D PUT^W3HZMST(JB,"AHUZ",DISCPRC)
 .N A S A=$$GETSUM^W3HZMST(JB,1)
 ;
 D PUT^W4HZMST(HZM,"HNHAH",DISCPRC)
 N TSHL,HNH,DMSH
 S HNH=$$SHNH^W4HZMST(HZM)
 D PUT^W4HZMST(HZM,"HNH",$J(HNH,2,2))
 S TSHL=$$TOTORD^W4HZMST(HZM)
 D PUT^W4HZMST(HZM,"TSHL",$J(TSHL,2,2))
 Q RES
 ;
 ;
CRLKHGCOUP(LKH,LKHNAME,TEL) ;
 I $D(@$$^W4GL("LKH")@(LKH)) D
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"LKHNAME")=$$LKH^W4L(LKH)_"\"_$ZD($H,"DD.MM.YY  24:60")
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"GDCR")=$$GDCR^W4L(LKH)
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"ISCR")=$$ISCR^W4L(LKH)
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"TEL")=$$TELB^W4L(LKH)
 .S @$$^W4GL("LKH")@(LKH,"OLD",$H,"HBNOW")=$$HBNOW^W4L(LKH)
 ;
 S @$$^W4GL("LKH")@(LKH)=LKHNAME
 I '$$GDCR^W4L(LKH)!'$$ISCR^W4L(LKH) D
 .D PUT^W4L(LKH,.1,"GDCR")
 ;
 D PUT^W4L(LKH,1,"ISCR")
 D PUT^W4L(LKH,1,"HBNOW")
 D PUT^W4L(LKH,TEL,"TELB")
 ;
 I $G(@$$^W4PRM@("GCOUPASR","SUGL")) D
 .N SUGL S SUGL=$G(^("SUGL"))
 .D PUT^W4L(LKH,SUGL,"SUGL")
 ;
 I $G(@$$^W4PRM@("GCOUPASR","ACC")) D
 .N HESB S HESB=$G(^("ACC"))
 .D PUT^W4L(LKH,HESB,"HESB")
 ;
 Q
 ;
 ;
CRWBCB(HZM,CRD,SUM) ;
 S ERR=""
 ;
 D LKHLODD^WBFUNC(CRD,SUM)
 I $G(BZLER) D DELLOAD D CLRBSCARD^WBCARD S ERR="ERR\"_BZLER_"\"_$G(BZLER1) Q
 S ERR=$$^WBERR I ERR D DELLOAD S ERR=$$VWERR^WBERR(ERR) Q
 D ^WBCDATA($$TMP^WBSTAT)
 N KOT S KOT=" ""wi'bel qpfia"" qihxk zpirh"
 D PC^WBPCBON($$TMP^WBSTAT,KOT_"!",$$NAME^WBCLUB,1)
 ;
 N ASM S ASM=$$^WBGETVL("ShellyReferenceId")
 ;
 N LKH,LKHNAME,A,%ARG
 S LKH=$$LKH^WBCLUB I LKH="" Q "ERRCD\NOCUSTCODE"
 S %ARG("WBCARD")=1
 S %ARG("BSCARD")=CRD
 S %ARG("BSLKH")=$$^WBLKH(CRD)
 S %ARG("BSASM")=ASM
 S %ARG("BSNAME")=$$^WBANS("WBCARD","BSNAME")
 S %ARG("BSCLUB")=$$CLUB^WBCLUB
 S %ARG("LABCB")="V1CB"
 S A=$$CRCB(HZM,SUM,LKH)
 Q
 ;
 ;
CRWMCB(HZM,MPCARD,SUM) ;
 N SUM,MZM,CA,CH,PAYM,RES,RCD,ARM,PAYM,KOT,ERR D ^WMIN
 S SUM=$$TSHL^W4HZMST(HZM)*100
 S MZM=$$MZM^W4HZMST(HZM)*100
 S CA=$$SCA^W4HZMST(HZM)*100
 S CH=$$SCH^W4HZMST(HZM)*100
 ;
 S PAYM=$S(MZM:"1"_M1P("RZV")_MZM_";",1:"")
 S PAYM=$S(CH:PAYM_"1"_M1P("RZV")_CH_";",1:PAYM)
 S PAYM=$S(CA:PAYM_"1"_M1P("RZV")_CA_";",1:PAYM)
 ;
 S RCD=""
 S ARM=$$^WMPARAM("MPARM")
 ;
 S RES=$$^WMLOD(MPCARD,ARM,SUM,PAYM)
 ;
 S RCD=$P(RES,"\")
 I $G(RCD) D  Q RES
 .N RS S RS=$$DELCB^W4HZDEL(HZM)
 ;
 D ^WMRCV2V("LOD")
 ;
 S KOT=" aivwz zpirh ;;;"_$G(COP)_";"_$G(LOI)_";"_$G(EMP)
 I $L($$^WMANS("LOD","MES0")) D ^WMPCMSG($$^WMANS("LOD","MES0"),,KOT)
 S ERR=""
 ;
 ;;N COP S COP=$$^WMANS("LOD","COP")
 N LKH,LKHNAME,A,%ARG
 S LKH=$$^WMMLKH(COP,MPCARD)
 ;
 S %ARG("WMCARD")=1
 S %ARG("MPCARD")=MPCARD
 S %ARG("MPNAME")=$$^WMANS("LOD","EMP")
 S %ARG("MPASM")=$$^WMANS("LOD","LOI")
 S %ARG("MPARM")=ARM
 S %ARG("LABCB")="V1CB"
 S A=$$CRCB(HZM,SUM,LKH)
 Q 0
 ;
CUSTNAMES(STAM) ;
 I $D(@$$^W4ORD@(HZM,"TOCUSNAME"))<10 Q 0
 N OK S OK=0
 N VT S VT="" F  S VT=$O(@$$^W4ORD@(HZM,"TOCUSNAME",VT)) Q:VT=""  D
 .N NP S NP="" F  S NP=$O(@$$^W4ORD@(HZM,"TOCUSNAME",VT,NP)) Q:NP=""  I NP S OK=OK+1
 Q (OK>1)
 ;
TOCUSNAME
 S NG=NG+1
 S MGROUP(NG)=$$^%W1DICT("TOCUSNAME")
 D
 .N PRM S PRM=HZM_";;;"_$$TOCUSNAME^W4HZMST(HZM)
 .S MGROUP(NG,"TO")="ToCusName('"_PRM_"')"
 Q
 ;
PART(HZM) ; 
 Q $D(@$$^W4ORD@(HZM,"PART"))>9
 ;
ORD(HZM) ;
 Q $$^W4ISORD(HZM)
 
 
 
 
 
 

W4PAYHD
W4PAYHD ; [ 21.08.18 11:16 ] [ 12.06.18 08:18 ] [ 12.02.17 15:45 ] 
 N (JB,%ARG,%REM)
 ;;S HZM=8 D PUT^%W1PRM("HZM",HZM)
 S HZM=$$GET^%W1PRM("HZM")
 ;
 I HZM<0,'$$^W4ISPART(HZM) D
 .W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 .W "<span style=""text-align:center;font-size:"_$$^W3FSZ(22)_""">"
 .D
 ..I $$^W4ASHRAM D  Q
 ...W $$^%W1DICT("PAYMENT")
 ..
 ..I $$GET^%W1PRM("VP")["GCOUP" W $$^%W1DICT("GIFTCOUPON") Q
 ..
 ..I $$GET^%W1PRM("VP")="ADVPAY" D  Q
 ...N LKH S LKH=$$GET^W4TMPANS("ADVPAY","CUSTOMNUMBER") Q:LKH=""
 ...N LKHNAME S LKHNAME=$$LKH^W4L(LKH)
 ...W LKH_" "_$$H2U^%L1FRM(LKHNAME),!
 ..
 ..I $$GET^%W1PRM("VPLOAD")="MAXHMK" D  Q
 ...W $$^%W1DICT("PAYMENT")
 ..
 ..W $$^%W1DICT("CARDLOADING")
 .
 .W "</span>",!
 .W "</div>",!
 ;
 I $$GET^%W1PRM("CB") D  Q
 .W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 .W "<span style=""text-align:center;font-size:"_$$^W3FSZ(22)_""">"
 .N LKH S LKH=$$GET^%W1PRM("LKH")
 .N LKHNAME S LKHNAME=$$LKH^W4L(LKH)
 .W LKH_" "_$$H2U^%L1FRM(LKHNAME),!
 .W " - ",$$^%W1DICT("RECEIPTPAYMENT")
 .W "</span>",!
 .W "</div>",!
 ;
 Q:HZM<1&'$$^W4ISPART(HZM)
 ;
 I $G(%ARG("FIRST")) D ^W4CBOLD(HZM)
 ;
 N W4PAYHD S W4PAYHD=""
 D HEAD(HZM)
 Q
 ;
SHOWRKV(RKV,PRM) ;
 N OU
 I $G(RKV)'="" S OU=$S($G(PRM)="H":$$H2U^%L1FRM(RKV),1:RKV)
 I $G(RKV)="" S OU="&nbsp;"
 Q "<span class=""hdordrkv"" "_$S($G(PRM)="E":"dir=""LTR""",1:"")_" >"_OU_"</span>"
 ;
HEAD(HZM) ;
 K @$$^W4TMPORD ; --- 12/02/17
 S NMB=$$NMB^W4HZMST(HZM)
 S MLZR=$$MKBL^W4HZMST(HZM)
 S MSD=$$GET^%W1PRM("MSD")
 ;
 S SOAD=$$SOAD^W4HZMST(HZM)
 S LKHN=$$LKHN^W4HZMST(HZM)
 S LKHN1=$$LKHN1^W4HZMST(HZM)
 S NAME=$$LKHNM^W4HZMST(HZM)
 S COMPANY=$$COMP^W4HZMST(HZM)
 S DATK=$$DATK^W4HZMST(HZM)
 S ZMANK=$$DATCB^W4HZMST(HZM)
 S HRAED=$$HRAED^W4HZMST(HZM)
 S HZMLAK=$$HZMLAK^W4HZMST(HZM)
 S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 ;
 I 'DATK D ^W4IN S DATK=$ZD(P1DZ,"DD.MM.YY")
 I 'ZMANK S ZMANK=$ZD($H,"DD.MM.YY  24:60")
 ;
 S MLZR1="" I MLZR S MLZR1=$$^W4NAME(MLZR)
 ;
 S DAT=$$TRH^W4HZMST(HZM)
 S SHAA=$$SHAA^W4HZMST(HZM)
 S ADDRESS=$$KTVM^W4HZMST(HZM)
 S PELE=$$PELE^W4HZMST(HZM)
 ;
 S HB=$$NCAB^W4HZMST(HZM)
 ;
 D ^W4HD
 Q
 
 
 
 
 
 
 

W4PAYKB
W4PAYKB ; [ 12.08.26 07:39 ] [ 24.06.26 14:24 ] [ 17.06.26 10:57 ] 
 ;--- SET TO ^W4ORD : MZ, HNH1, CH
 ;    ASR - W4ASR
 ;    V   - W4TRAN
 ;-----------------------------------------------------------
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D KILL^%W1PRM("ER") ; 19/05/19
 D KILL^%W1PRM("CIBEMVER")
 D KILL^%W1PRM("TNBEMVER")
 D KILL^%W1PRM("MZSM")
 ;
 S DEV=$$^W4MYDVN
 S VT=$$VT
 ;
 I $G(%ARG("VZ"))="SUMCAJ",$G(%ARG("SHOW"))=0 S %ARG("SHOW")=1 ; -- 11/10/23
 ;
 S HZM=$$GETP^%W1PRM("HZM")
 ;
 I $$VERS^W4HBMAS>1,HZM'<1,'$$^W4CLOSE(HZM),$$TSHL^W4HZMST(HZM)'<$$SUM^W4HBMAS,'$G(@$$^W4ORD@(HZM,"OPRTRTZ")) D  Q:'$G(DEFOPRTRTZ)
 .D OPRTRTZ^W4PAYFN(HZM)
 ;
 I VT=3,$G(%ARG("SHOW"))=0 G END
 I VT=3,+$G(%ARG("SHOW"))=.5,$$EMV^W4PRM,$$EMVNUM^W4POSEMV(DEV),'$$EMVARM D DIVEMV G END
 ;;I VT=3,+$G(%ARG("SHOW"))'=1,$G(%ARG("VZ"))="CRCARD",$$EMV^W4PRM,$$EMVNUM^W4POSEMV(DEV),'$$EMVARM D DIVEMV G END
 ;
 I $G(%ARG("CREATE")) D
 .D CREATE^W4PAY(VT,$$VZ)
 ;
 I VT=7,$$USCIBEMV,'$$EMVARM D PUT^%W1PRM("CIBEMV",1) D DIVEMV G END
 I VT=9,$$USCSHEMV D PUT^%W1PRM("CSHEMV",1) D DIVEMV G END
 I VT=10,$$USTNBEMV,'$$EMVARM D PUT^%W1PRM("TNBEMV",1) D DIVEMV G END
 Q:$G(%ARG("SHOW"))=0
 ;
 I $G(%ARG("VT"))=13,$G(%ARG("VZ"))="CARD" Q
 ;
 I $L($G(%ARG("SHOW"))) D SHOW Q
 ;
 S VT=$$VT Q:VT=""
 S VZ=$$VZ Q:VZ=""
 D PUT^%W1PRM("VT",VT)
 D PUT^%W1PRM("VZ",VZ)
 ;
 S NP=$$GETP^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4PAY(VT,VZ)
 ;
 I VT=2,VZ="SUM" D
 .D PUTDFLT^W4TMPPAY(VT,"CHS",$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 ;
 I VT=2.5,VZ="SUM" D
 .D PUTDFLT^W4TMPPAY(VT,"SUMMVBNK",$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 .D PUTDFLT^W4TMPPAY(VT,"DATP",$ZD($H,"DDMMYY"))
 ;
 I VT=6,VZ="SUM",NP=1,$$SKIP(VT,"WHOSUBMIT") D  G END
 .D ANS(VT,"WHOSUBMIT")
 .D PUT^%W1PRM("NP",2)
 .W "<script>",!
 . W "SbmOk('1')",!
 .W "</script>",!
 ;
 I VT=3 D  ;,$$GETP^%W1PRM("EMVARM") D; -- 19/03/25 --> COMMENT
 .K @$$^W4TMPPAY@(VT,"CREDITCARDNUMBER","SKIP")
 .K @$$^W4TMPPAY@(VT,"YY","SKIP")
 .K @$$^W4TMPPAY@(VT,"MM","SKIP")
 ;
 I VT=3,VZ="CRCARD" I NP=1,$$SKIP(VT,"CREDITCARDNUMBER"),'$$EMVARM D  G END
 .D ANS(VT,VZ)
 .D PUT^%W1PRM("NP",4)
 .W "<script>",!
 . W "SbmOk('END')",!
 .W "</script>",!
 ;
 I VT=3,VZ="CRCARD",NP=2,$$EMV^W4PRM,'$$EMVARM,$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")="" D  G END
 .D DIVEMV
 .W "<script>",!
 . W "SbmOk('END')",!
 .W "</script>",!
 ;
 ; 
 I VZ="CMNT"!(VZ="CMNTABC") D  Q
 .N LASTHNH,LI
 .S LI=$O(@$$^W4ORD@(HZM,"CB","HNH1",9999),-1) Q:'LI
 .S LASTHNH=+@$$^W4ORD@(HZM,"CB","HNH1",LI)
 .W "<div align=""center"" dir="""_$$^%W1DIR_"""'>",!
 .W "<br /><span "
 . W " style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_""" >"
 . W $$^%W1DICT("DISCONT")_"</span>",!
 .W "<br /><span "
 . W " style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_";color:red"" >"
 . W $J(LASTHNH,2,2)_"</span>",!
 . N CNTRY S CNTRY=$$COUNTRY^W3PRM
 . N MTB S MTB=$P($G(^[$$^W3MAIN]W3CNTRY(CNTRY)),"\",2)
 . W "<span style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_""" >"
 . W $$H2U^%L1FRM(MTB)_"</span>"
 . W " <br />",!
 .Q:VZ="CMNTABC"
 .
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("PGDN")
 .S MGROUP(1,"TO")="PageDown()"
 .S MGROUP(2)=$$^%W1DICT("PGUP")
 .S MGROUP(2,"TO")="PageUp()"
 .S MGROUP("HG")="40%"
 .D ^W4SHEET("","","",2)
 .Q
 ;
 ;--------------------- SHOW NUMPAD  -----------------------
 ;
 ;S NP=$$GETP^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4PAY(VT,VZ)
 Q:NP=""
 ;
 I VT=3,VZ="CRCARD",NP=1 D
 .I $$^W6 S %ARG("NOMASKLN")=8
 .N HZMBIT S HZMBIT=$$I^W4DEL(HZM)
 .I HZMBIT,$$TSHL^W4HZMST(HZM)<0,$$CA1(HZMBIT) D PUTCA(HZMBIT) Q
 .Q:$G(@$$^W4PRM@("VIZSVNO"))
 .N NMB
 .I $G(HZM) S NMB=$$NMB^W4HZMST(HZM) Q:'$$^W4MSL(NMB)
 .I $$GETP^%W1PRM("CB") S NMB=$$GETP^%W1PRM("LKH")
 .Q:'$G(NMB)
 .Q:'$$CADFLT^W4L(NMB)
 .D PUTDFLT^W4TMPPAY(VT,"CREDITCARDNUMBER",$$CADFLT^W4L(NMB))
 .D PUTDFLT^W4TMPPAY(VT,"MM",$$MMCA^W4L(NMB))
 .D PUTDFLT^W4TMPPAY(VT,"YY",$$YYCA^W4L(NMB))
 .D PUTDFLT^W4TMPPAY(VT,"CVV",$$CVV^W4L(NMB))
 .N TZCA S TZCA=$$TZCA^W4L(NMB) I TZCA="" S TZCA=$$TZ^W4L(NMB)
 .D PUTDFLT^W4TMPPAY(VT,"IDNUMBER",TZCA)
 ;
 I VT=4,VZ="SUM",NP>2 D
 .Q:'$G(HZM)
 .N DFLT S DFLT=$$GET^W4TMPPAY(VT,"HZMLK")
 .I DFLT="",HZM>0,$$HZM^W4MSL(HZM) S DFLT=$$H2U^%L1FRM($$HZMLAK^W4HZMST(HZM))
 .D PUTDFLT^W4TMPPAY(VT,"HZMLK",DFLT)
 ;
 I $$GETP^%W1PRM("TLDFLT"),VT=7,VZ="SUM",NP=1 D
 .D PUTDFLT^W4TMPPAY(7,"SUM",$$ITRA^W4HZMST(HZM))
 .D PUTDFLT^W4TMPPAY(7,"CARDNUMBER",$$GCOUPTEL^W4HZMST(HZM))
 ;
 I VT=11,VZ="RCPNMB",NP=2,$$TLCARD^W4PRM,$G(HZM) D
 .N NOMTL S NOMTL=$$GET^W4TMPPAY(11,"TLNMB")
 .I 'NOMTL S RES="ERR*NONOMTL" Q
 .S NOMTL=+NOMTL
 .S VL=$$SUM^W4TLMTN(+NOMTL)
 .I $$PAID^W4TLMTN(HZM)!$$HZMPAID^W4TLMTN(NOMTL) S VL=0
 .D PUTDFLT^W4TMPPAY(VT,"SUM",VL)
 .;;D PUTSKIP^W4TMPPAY(VT,"SUM",VL)
 .;;D ANS(VT,"SUM")
 ;
 I VT=14,VZ="SUM" D
 .Q:'$G(HZM)
 .N DFLT S DFLT=$$ITRA^W4HZMST(HZM)
 .N NKD S NKD=$$BSNKD^W4HZMST(HZM)
 .I NKD<DFLT S DFLT=NKD
 .D PUTDFLT^W4TMPPAY(VT,"SUM",$J(DFLT,2,2))
 ;
 S CD=$$NM^W4PAY(VT,VZ,NP) Q:CD=""
 S %ARG("HEAD")=CD
 S OU=$$OU^W4PAY(VT,VZ,NP) I OU,'$G(%ARG("IN")) Q
 I $G(%ARG("OU")) Q
 S VL=$$GET^W4TMPPAY(VT,CD)
 ;;S ^AA("W4PAYKB-VL")=VL
 I VL?.P S VL=$$DFLT^W4TMPPAY(VT,CD) ;;S ^AA("W4PAYKB-VLDFLT")=VL
 I CD="CARDNUMBER",VL["." S VL=""
 ;
 I $$MENU^W4ASK(VT,VZ,NP) D  G END
 .N GLASK S GLASK="^[$$^W3MAIN]W4PAY("""_$$COUNTRY^W3PRM_""")"
 .D INITUR^W4MENU(VT)
 .D MENU^W4SCASK(VT,VZ,NP)
 ;
 ;
 I VT'=14,$$IFSUM(VT,CD) D
 .I VT<5!(VT=7)!(VT=10)!(VT=15),$$SOAD^W4HZMST(HZM)>1!($$SOAD^W4HZMST(HZM)<-1) D
 ..I VZ'="PAYM" S %ARG("TOPAY")=1
 ..K %ARG("DIV")
 ..I $$GET^%W1PRM("DIV"),$P($$GETP^%W1PRM("DIV"),";",3)=VT S %ARG("DIV")=1
 .
 .I VT=6,$$TSHL^W4HZMST(HZM)>0 S %ARG("PROC")=3 Q
 .I VT=6,$$TSHL^W4HZMST(HZM)<0 S %ARG("PROC")=2 Q
 .I '$$SUPER^W3PRM S %ARG("CALC")=2
 ;
 N DL S DL=$$DL^W4PAY(VT,VZ,NP)
 I DL<15 S DL=15_$TR(DL,"0123456789","")
 ;
 I VZ="RCPNMB" S %ARG("MINUS")=1
 ;
 ;;ZWR %ARG
 ;
 D KB^W4KB(DL,VL)
 ;
END Q
 ;
 ;
SBM(PRM) ; ------ SUBMIT WAS PRESSED --> VL  --> ^TMPPAY
 N HZM,%SC
 S HZM=$$GET^%W1PRM("HZM") Q:HZM="" "0;NOORD"
 N NP,VT,VZ,VL,DL,CMD,TOPAY
 S NP=+$$GET^%W1PRM("NP")
 S VT=+$$GET^%W1PRM("VT")
 S VZ=$$GET^%W1PRM("VZ")
 S:VZ["UNDEF" VZ=""
 ;;S ^AA("W4PAYKB-SBM","VT")=VT
 ;;S ^AA("W4PAYKB-SBM","VZ")=VZ
 I 'VT Q "0;NOVT2"
 I '$L(VZ) Q "0;NOVZ"
 ;
 ;
 I $$^W4ISORD(HZM),$$MSL^W4MSL(HZM),VT'=6,$D(@$$^W4TMPORD)#10 D
 .N VT1 S VT1=VT I VT>6 S VT1=4
 .D PUT^W3HZMST(JB,"CODTS",VT1)
 .D PUT^W4HZMST(HZM,"CODTS",VT1)
 ;
 S:NP<1 NP=$$FIRST^W4PAY(VT,VZ)
 S:NP<1 NP=1
 ;;W "NP="_NP,!
 S VL=$P(PRM,";")
 S CD=$$NM^W4PAY(VT,VZ,NP)
 N CB S CB=$$GETP^%W1PRM("CB")
 ;
 ;;S ^AA("W4PAYKB-SBM","CD")=CD
 ;;S ^AA("W4PAYKB-SBM","VL")=VL
 ;
 I VT=11,CD="TLNMB",VL<0,'$G(@$$^W4PRM@("NOPSWTLM")) D  Q "0;PSW;PSWCOUP"
 .D PUT^W4TMPPAY(VT,CD,VL)
 ;
 ;
 N OK S OK=1
 S TOPAY=""
 ;
 N TOOBIG S TOOBIG=$$SUMTOOBIG(PRM)
 ;;S ^AA("W4PAYKB-SBM","TOOBIG")=TOOBIG
 ;;S ^AA("W4PAYKB-SBM","WASTIP")=$G(%ARG("WASTIP"))
 I TOOBIG=1,'$G(%ARG("WASTIP")) Q "0;PAYSUMTOOBIG;"
 I TOOBIG["TIP",$$NOTIPALL^W4PRM Q "0;PAYSUMTOOBIG;"
 I TOOBIG["TIP",VT=9 Q "0;PAYSUMTOOBIG;"
 I TOOBIG[";",'$G(%ARG("WASTIP")) Q "0;"_$P(TOOBIG,";",2,20)
 ;
 I '$G(%ARG("WASTIP")),$$IFSUM(VT,CD),'CB,$G(HZM),VT>1,VT'=6,VT'=11,$$TOOMUCH(VL,HZM) D  Q RES
 .N MAXTIP
 .S MAXTIP=VL-TOPAY
 .S RES="0;TIP;"_MAXTIP
 .D PUT^%W1PRM("MAXTIP",MAXTIP)
 .;;S ^AA("W4PAYKB","Q")=2
 ;
 I $$IFSUM(VT,CD),VT'=6,VT'=11 D
 .S TOPAY=$P(PRM,";",2)
 .I 'TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
 .D PUT^W4TMPPAY(VT,"TOPAY",TOPAY)
 ;
 D PUT^%W3DEB("W4PAYKB-SBM","NP=NP &CD=CD& VT=VT & VZ=VZ &PRM=PRM&VL=VL&TOPAY=TOPAY")
 S DL=$$DL^W4PAY(VT,VZ,NP)
 N CMD S CMD=$$CMD^W4PAY(VT,VZ,NP)
 ;
 D PUT^%W3DEB("W4PAYKB-SBM","CD=CD")
 I CD="" Q "0;NOCD"
 N OK S OK=1
 ;
 ;;S ^AA("W4PAYKB-SBM","CD")=CD
 ;
 I VT=3,CD="SUM" D  I 'OK Q OK
 .I $G(HZM)>0,VL<0,$$TSHL^W4HZMST(HZM)'<0,$$SHUL^W4HZMST(HZM)<VL S OK="0;SUMWRONG" Q
 .N DEV S DEV=$$^W4MYDVN
 .I $$EMV^W4PRM,$$EMVNUM^W4POSEMV(DEV),'$$EMVARM D
 ..;;S ^AA("W4PAYKB","SETTMPPAY3")=1
 ..D SETTMPPAY3
 ;
 I $L(CMD) X CMD I $D(%SC("ER")) S OK="0;"_$G(%SC("ER","MSG")) Q OK
 ;
 I VT=3,VZ="CRCARD",VL[";",VL["?" D
 .S VL=$P($P(VL,";",2),"?")
 ;
 I VT=4,VZ="SUM",CD="HZMLK" D  I 'OK Q OK
 .N LK S LK=$$GET^W4TMPPAY(VT,CD)
 .I $G(HZM)>0,$$HZM^W4MSD(HZM),$$ASM(LK),VL?.P S OK="0;MUSTAUTHNO"
 .Q:'OK
 .I $L(VL),VL'?1N.N S VL=$$INVH^%L1FRM(VL)
 ;
 I VT=4,VZ="CUST",NP=1 D  I 'OK Q OK
 .N LKHN,PRMCIB,PRMTB
 .S LKHN=VL S:'$$DEFISLK^W4PRM LKHN=$TR(VL,"-","") Q:'$$^W4ISCDLK(LKHN)
 .S PRMCIB=$G(@$$^W4PRM@("CIBUS"))
 .S PRMTB=$G(@$$^W4PRM@("10BIS"))
 .I LKHN=PRMCIB S OK="0;PSW" Q
 .I PRMCIB,LKHN=$G(@$$^W4GL("P1EZL")@(PRMCIB)) S OK="0;PSW" Q
 .I PRMCIB,$D(@$$^W4GL("P1EZLI")@(PRMCIB,LKHN)) S OK="0;PSW" Q
 .I PRMTB,LKHN=PRMTB S OK="0;PSW" Q
 .I PRMTB,LKHN=$G(@$$^W4GL("P1EZL")@(PRMTB)) S OK="0;PSW" Q
 .I PRMTB,$D(@$$^W4GL("P1EZLI")@(PRMTB,LKHN)) S OK="0;PSW" Q
 .I $D(@$$^W4GL("W4LKPSW")@(LKHN)) S OK="0;PSW" Q
 ;
 D PUT^W4TMPPAY(VT,CD,VL)
 ;
 K @$$^W4TMPPAY@(VT,CD,"DFLT")
 K @$$^W4TMPPAY@(VT,CD,"SKIP")
 ;
 ;-----  CHECK IF PAYMENT NOT > SUM (EXCEPT HMK - CHECK IN SUM LABEL )
 I VT=14,CD="SUM",VL>$$BSNKD^W4HZMST(HZM) Q "0;NOTENOUGHPOINTS;"
 ;
 I VT=14 D  Q "END"
 .N NKDPAY S NKDPAY=$J(VL,2,2)
 .S @$$^W4ORD@(HZM,"BSL","NKDPAY")=NKDPAY
 .N PARNKD S PARNKD=+$$PARNKD^WBPRM
 .D ^W4CLRHZM(PARNKD,$$^W4ORD_"("_HZM_")")
 .N LIND S LIND=$O(@$$^W4ORD@(HZM,99999),-1)+1
 .S @$$^W4ORD@(HZM,LIND)=PARNKD_"\\"_$$SHEM^W4P(PARNKD)_"\"_-NKDPAY_"\1\\"_-NKDPAY_"\zecewp yenin\\@@@+"
 .D PUT^W4HZMST(HZM,"TSHL",$J($$TOTORD^W4HZMST(HZM),2,2))
 ;
 ;
 N OKANS
NEXT ;
 S NP=$$NEXT^W4PAY(VT,VZ,NP)
 ;;S ^AA("W3PAYKB-SBM","VT")=VT
 ;;S ^AA("W3PAYKB-SBM","VZ")=VZ
 ;;S ^AA("W3PAYKB-SBM","NPNEXT")=NP
 ;
 I NP="" D  Q $S($$IFMZSM(HZM,VT):"END^MZM^"_HZM_"^"_($J(VL,2,2)*100),1:"END")
 .N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 .I $$IFMZSM(HZM,VT),VL>ITRA S VL=ITRA
 .I VT=1,$$GETP^%W1PRM("VZ")'="TIP" D MZM Q  ; -- S ^P1HZ(HZM,"CB","MZ",NP)=SUM*TIME*MLZR*POS*ODEF
 .;
 .I VT=3,VZ="SUMCAJ" D  Q
 ..N SOLEK,SUM,TOPAY,TIP
 ..S SUM=$$GET^W4TMPPAY(3,"SUM")
 ..S SOLEK=$$GET^W4TMPPAY(3,"SOLEK")
 ..S TOPAY=$$GET^W4TMPPAY(3,"TOPAY")
 ..N TIP S TIP=SUM-TOPAY I TIP<0 S TIP=0
 ..D CAJ
 ;
 S OKANS=0
 N CD S CD=$$NM^W4PAY(VT,VZ,NP) I $L(CD) D  G:OKANS NEXT
 .I $$SKIP(VT,CD) D ANS(VT,CD)
SBME ;
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
 ;
SKIP(VT,CD) ;
 I $D(@$$^W4GL("W4ANS")@(VT,CD)) Q 1
 ;
 I $$ISSKIP^W4TMPPAY(VT,CD) Q 1
 Q 0
 ;
ANS(VT,CD) ;
 N A,VL D
 .I $$ISSKIP^W4TMPPAY(VT,CD) S A=$$SKIP^W4TMPPAY(VT,CD) Q
 .S A=$G(@$$^W4GL("W4ANS")@(VT,CD))
 ;
 X "S VL="""_A_"""" 
 D PUT^W4TMPANS(VT,CD,VL) S OKANS=1
 Q
 ;
 ;
TOOMUCH(VL,HZM,ITRA) ;
 I $G(ITRA)="" S ITRA=$$ITRA^W4HZMST(HZM)
 I $G(VT),$$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
 I VL-ITRA>.05&(ITRA>0) Q 1
 I VL-ITRA<-.05&(ITRA<0) Q 1
 Q 0
 ;
CNC(PRM) ;   ----- CANCEL WAS PRESSED
 I $$GETP^%W1PRM("HEADTZ") D KILL^%W1PRM("HEADTZ") Q "BEG"
 ;
 N NP,VT,VZ,VL,DL
 S NP=+$$GET^%W1PRM("NP")
 S VT=+$$GET^%W1PRM("VT")
 S VZ=$$GET^%W1PRM("VZ")
 I 'VT Q "0;NOVT3"
 I '$L(VZ) Q "0;NOVZ"
 S:NP<1 NP=$$FIRST^W4PAY(VT,VZ)
 I VT=6,VZ="SUM",$D(@$$^W4GL("W4ANS")@(VT,"WHOSUBMIT")) Q "BEG"
 S VL=PRM
 S NP=$$PREV^W4PAY(VT,VZ,NP) I NP="" Q "BEG"
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
 ;
PAY2ORD(STAM) ;------- PAYMENTS PROCESSING FROM Pay()
  ;------------------- ( EXCEPT VALUECARD -> VVCARD^W4CARDKB )
  N GLORD D GLORD^W4HZMST
  N VT,ER S ER="OK"
  S VT=+$$GET^%W1PRM("VT")
  S VZ=$$GET^%W1PRM("VZ")
  I 'VT Q "ERR*NOVT4"
  I '$L(VZ) Q "ERR*NOVZ"
  ;
  N M,HZM
  S HZM=$$GETP^%W1PRM("HZM") Q:HZM="" "ERR*ORDERNOTDEFINED"
  ;
  D ^W4CBOLD(HZM)
  ;
  N TOPAY S TOPAY=$$GET^W4TMPPAY(VT,"TOPAY")
  I 'TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
  N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
  ;
  I VT=1 D PAYCASH(HZM)
  ;
  I VT=2.5 D
  .D PUT^W4TMPPAY(2,"NCHECK","B")
  .N CHS S CHS=$$GET^W4TMPPAY(2.5,"SUMMVBNK")
  .D PUT^W4TMPPAY(2,"CHS",CHS)
  .D PUT^W4TMPPAY(2,"TZ","")
  .D PUT^W4TMPPAY(2,"BSN","B")
  .D PUT^W4TMPPAY(2,"HESH","B")
  .N DATP S DATP=$$GET^W4TMPPAY(2.5,"DATP")
  .D PUT^W4TMPPAY(2,"DATP",DATP)
  .K @$$^W4MAIN("TMPPAY")@(2.5)
  .S VT=2
  ;
  I VT=2 D
  .N IND S IND=$O(@GLORD@("CB","CH",999),-1)+1
  .N HZM S HZM=$$GET^%W1PRM("HZM")
  .N CHS S CHS=$$GET^W4TMPPAY(2,"CHS")
  .S @GLORD@("CB","CH",IND)=CHS_"*"_$$GET^W4TMPPAY(2,"NCHECK")_"*"_$$GET^W4TMPPAY(2,"TZ")_"*"_$$GET^W4TMPPAY(2,"BSN")_"*"_$$GET^W4TMPPAY(2,"HESH")_"*"_$$GET^W4TMPPAY(2,"DATP")
  .D SETPOS^W4HZMST(HZM,"CH",IND)
  .;;S TIP=$$STIP^W4HZMST(HZM)
  .N TIP S TIP=$J(CHS-TOPAY,2,2)
  .
  .I TIP>0&TSHL>0!(TIP<0&(TSHL<0)) D
  ..S $P(@GLORD@("CB","CH",IND),"*",12)=TIP
  ..D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
  .
  .S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
  .I PORTDISP D
  ..N TX1,TX2 S TX2=""
  ..S TX1=$J($$ITRA^W4HZMST(HZM),2,2)_" : melyzl" 
  ..S TX2="wiy "_$J(CHS,2,2)_" mley"
  ..D ^W4TX2DSP(PORTDISP,TX1,TX2)
  ;
  ;I VT=3 --> w4payvw.jsp --> w4payc.jsp --> W4PAYC --> W4PAYCA
  ;
  S ITRA=$$ITRA^W4HZMST(HZM)
  ;
  I VT=4 D
  .N SHTL,SHTLAL,ASRL
  .S SHTL=$$GET^W4TMPPAY(4,"SHTL")
  .S SHTLAL=$$GET^W4TMPPAY(4,"SHTLAL")
  .S ASRL=$$GET^W4TMPPAY(4,"ASRL")
  .I $$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
  .
  .I SHTL D  Q ; -- SHTL - SHULAM BE TLUSHIM, SHTLAL - SHULAM BE POAL
  ..I SHTL>SHTLAL D
  ...N LKHNH S LKHNH=$$GET^W4TMPPAY(4,"LKHNH")
  ...S LKHNH=LKHNH+(SHTL-SHTLAL)
  ...D PUT^W4TMPPAY(4,"LKHNH",LKHNH)
  ..D PUT^W4TMPPAY(4,"ASR",SHTLAL)
  ..I $$TOOMUCH(SHTL,HZM,ITRA) D  ;--- WAS (SHTL,"",ITRA)
  ...N TIPAS S TIPAS=SHTL-ITRA
  ...D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
  .
  .I $$TOOMUCH(ASRL,HZM,ITRA) D
  ..N TIPAS S TIPAS=ASRL-ITRA
  ..D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
  ;
  N RES S RES=""
  ;---------- CIBUS ------
  I VT=7 D PAYCIB(HZM) I +RES S CIBRES="CIBERR*"_$P(RES,"*")_"*"_$P(RES,"*",8)_"*"_$P(RES,"*",9) D PUT^%W3DEB("W4PAYKB-PAY2ORD","CIBRES=CIBRES") Q CIBRES
  ;
  ;-------------------- 10BIS ----------------
  I VT=10 D PAYTB(HZM) I +RES Q "TBERR*"_$P(RES,"*")_"*"_$$CLWEB^%L1FRM($P(RES,"*",2))
  ;
  ; -------------------------- TLUSH MATANA ---------------------------
  I VT=11,'$$GCOUPIT^W4PRM,$$GET^W4TMPPAY(11,"TLNMB")>0 D  I RES'="" Q RES
  .S RES=""
  .N ITRA,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,P1TNOPR,P1HZHB2,PTKCNT,LASTASR
  .S ITRA=$$ITRA^W4HZMST(HZM)
  .N ASR,MAKOR,HBASR
  .N NOMCB S NOMCB=$$GET^W4TMPPAY(11,"TLNMB") I 'NOMCB S RES="ERR*NONOMTL" Q
  .I NOMCB>0 D ^W4CBGET(+NOMCB)
  .I NOMCB>0,$D(W4CB)<10 S RES="ERR*NOCB*"_+NOMCB Q
  .I NOMCB>0,$G(W4CB("LKH"))="" S RES="ERR*NOCUST" Q
  .N LK S LK="" I NOMCB>0 S LK=W4CB("LKH")
  .
  .I NOMCB>0,NOMCB'["-" D  Q:RES'=""
  ..N HZMPAID S HZMPAID=$P($G(@$$GLCB^W4CBGET(LK,NOMCB)@("PAID",1)),"\") Q:'HZMPAID
  ..S RES="ERR*GIFTPAID*"_HZMPAID Q
  .
  .N NOMTL S NOMTL=""
  .
  .I NOMCB>0,NOMCB["-" D  Q:RES'=""
  ..S NOMTL=$P(NOMCB,"-",2) Q:'NOMTL
  ..N HZMPAID S HZMPAID=$P($G(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL)),"\",4) Q:'HZMPAID
  ..S RES="ERR*GIFTPAID*"_HZMPAID Q
  .
  .N SUM S SUM=$$GET^W4TMPPAY(11,"SUM")
  .S TLMNPAY=$G(W4CB("TOT"))
  .S NOMTL=""
  .
  .I NOMCB>0,NOMCB["-" D
  ..S NOMTL=$P(NOMCB,"-",2) Q:'NOMTL
  ..S TLMNPAY=+$G(W4CB("TLMN",NOMTL))
  .
  .I NOMCB>0,+SUM'=+TLMNPAY S RES="ERR*SUMNOTEQRCP" Q
  .I NOMCB>0,SUM>ITRA S RES="ASKTLMN*"_ITRA_"*"_+SUM_"*"_LK_"*"_NOMCB Q
  .I NOMCB>0 D PAIDTLMN(LK,NOMCB,HZM,SUM,"","")
  .K @$$^W4TMPPAY
  ;
  ;
  I VT=11,$$GCOUPIT^W4PRM!($$GET^W4TMPPAY(11,"TLNMB")<0) D  I RES'="" Q RES
  .S RES=""
  .N ITRA
  .S ITRA=$$ITRA^W4HZMST(HZM)
  .N ASR,MAKOR,HBASR
  .N NOMTL S NOMTL=$$GET^W4TMPPAY(11,"TLNMB")
  .I 'NOMTL S RES="ERR*NONOMTL" Q
  .N SUM S SUM=$$GET^W4TMPPAY(11,"SUM")
  .I NOMTL>0,NOMTL["-"!'$D(@$$^W4GL("W4TLMTN")@(+NOMTL))!(+SUM'=+$G(^(+NOMTL))),$G(@$$^W4GL("W4TLMTNI")@(NOMTL)) D
  ..S NOMTL=^(NOMTL)
  .I NOMTL>0,'$D(@$$^W4GL("W4TLMTN")@(+NOMTL)) S RES="ERR*NONOMTL*"_NOMTL Q
  .N HZMPAID S HZMPAID=$$HZMPAID^W4TLMTN(NOMTL)
  .I HZMPAID S RES="ERR*GIFTPAID*"_HZMPAID Q
  .N LK S LK=$$RCP^W4TLMTN(NOMTL)
  .N HZMKR S HZMKR=$$HZM^W4TLMTN(NOMTL)
  .I HZMKR="" S HZMKR="CB"_$$CB^W4TLMTN(NOMTL)
  .S TLMNPAY=$$SUM^W4TLMTN(NOMTL)
  .I NOMTL>0,+SUM'=+TLMNPAY S RES="ERR*SUMNOTEQRCP" Q
  .I SUM>ITRA S RES="ASKTLMN*"_ITRA_"*"_+SUM_"*"_LK_"*"_NOMTL Q
  .D PAIDTLMIT(LK,NOMTL,HZM,SUM,HZMKR)
  .K @$$^W4TMPPAY
  ;
  I VT=12 D  ; --------------- OVER MAX PAYM ( CREATE INVOICE --> CB ( MAXHMK) )
  .N CARD,CD,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,ASR,BLIPR,P1TNOPR
  .S ASRL=$$GET^W4TMPPAY(VT,"SUM")
  .S TIPAS=$$GET^W4TMPPAY(VT,"TIP")
  .S LKHNH=0
  .S ASR=ASRL
  .D ROUNDASR
  .I ASR>0,ASRL<0 S RES=-1
  .S HZMLK=HZM
  .S (LKHN,CUSN)=$$CUSN^W4CUSDET
  .S LKAH=0
  .S (HRA,LKHR)=""
  .I '$$FAST^W4MTAW($$NMB^W4HZMST(HZM)) S (BLIPR,P1TNOPR)=""
  .D PUT^%W1PRM("HBNOW",1)
  .D ^W4ASR
  .K @$$^W4ORD@(HZM,"S")
  ;
  ;
  I VT=15 D  I +RES Q "ERR*"_$P(RES,"*")_"*"_$$CLWEB^%L1FRM($$H2U^%L1FRM($P(RES,"*",2)))_"*"_$P(RES,"*",3)
  .N CARD,CD,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,ASR,BLIPR,P1TNOPR
  .S CARD=$$GET^W4TMPPAY(VT,"CARDNUMBER")
  .S ASRL=$$GET^W4TMPPAY(VT,"SUM")
  .S RES=$$PAY^W4COUPPH(HZM,ASRL,CARD) Q:RES
  .
  .I $$TOOMUCH(ASRL,HZM,ITRA) D
  ..S TIPAS=ASRL-ITRA
  ..D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
  .
  .S LKHNH=$G(COUPPH("DISC"))
  .S HZMLK=$G(COUPPH("TRID"))
  .S ASR=$G(COUPPH("SUM"))
  .D ROUNDASR
  .S (LKHN,CUSN)=$$LKH^W4COUPPH
  .S LKAH=0
  .S (HRA,LKHR)=""
  .I '$$FAST^W4MTAW($$NMB^W4HZMST(HZM)) S (BLIPR,P1TNOPR)=""
  .N LAST S LAST=$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1)
  .D ^W4ASR
  .N LAST1 S LAST1=$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1)
  .N LASTCP S LASTCP=$O(@$$^W4ORD@(HZM,"CPN",9999),-1)
  .I LAST1>LAST,$G(LASTCP) D
  ..S @$$^W4ORD@(HZM,"CPN",LASTCP,"NOMASR")=LAST1
  .K @$$^W4ORD@(HZM,"S")
  ;
  D ^W4T(HZM,1) ; ---- !!!!!!!!!!!!!!!!
  I '$D(NOKILLPAY) K @$$^W4TMPPAY
  D PUT^%W3DEB("W4PAYKB-PAY2ORD","ER=ER")
  Q $$SPA^%L1FRM(ER)
  ;
  ;
PAIDTLMN(LK,NOMCB,HZM,SUM,LKHNH,TIPAS) ;
  N (JB,%ARG,%REM,LK,NOMCB,HZM,SUM,LKHNH,TIPAS,HBASR)
  I $G(LK)=""!($G(NOMCB)="") Q
  S HZMLK=""
  S (LKHN,CUSN)=LK
  S LKAH=0
  S (HRA,LKHR)=""
  N LASTASR
  S ASR=SUM
  ;;D ROUNDASR
  S LASTASR=$O(@$$^W4ORD@(HZM,"CB","ASR",99999),-1)
  S LASTPAID=$O(@$$GLCB^W4CBGET(LK,NOMCB)@("PAID",999),-1)+1
  S @$$GLCB^W4CBGET(LK,NOMCB)@("PAID",LASTPAID)=HZM_"\"_ASR_"\"_$$^W4DZ_"\"_$H
  ;
  I NOMCB["-" D
  .N NOMTL S NOMTL=$P(NOMCB,"-",2) Q:'NOMTL
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",4)=HZM
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",5)=ASR
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",6)=$$^W4DZ
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",7)=$H
  ;
  I '$G(@$$^W4PRM@("NOTLHBNOW")) D PUT^%W1PRM("HBNOW",1)
  ;
  D ^W4ASR
  ;
  I $O(@$$^W4ORD@(HZM,"CB","ASR",99999),-1)'>LASTASR Q
  ;
  I $G(HBASR) D
  .S RESPRN=$$PRINT^W4LHBZ(LK,HBASR,HZM)
 Q
 ;
 ;
PAIDTLMIT(LK,NOMTL,HZM,SUM,HZMKR) ;
 N LAST S LAST=$O(@$$^W4ORD@(HZM,99999),-1)+1
 N TLMCDPAY S TLMCDPAY=+$$GCOUPPY^W4PRM
 N TLMCDPAYNM S TLMCDPAYNM=$$SHEM^W4P(TLMCDPAY)
 I TLMCDPAYNM="" S TLMCDPAYNM="dpzn yelz yenin"
 N HR0 S HR0=$G(HZMKR)_" 'qn dpnfda dpwpy "
 I $E(HZMKR,1,2)="CB" S HR0=$E(HZMKR,3,10)_" 'qn dlawa dpwpy "
 N HR S HR=HR0_NOMTL_" dpzn yelza mley"
 I NOMTL<0 S HR=-NOMTL_" 'qn ipevig yelza mley"
 ;
 S @$$^W4ORD@(HZM,LAST)=TLMCDPAY_"\\"_TLMCDPAYNM_"\"_-SUM_"\1\\"_-SUM_"\"_HR
 D PUT^W4TLMTN(NOMTL,"HZMPAID",HZM)
 D PUT^W4TLMTN(NOMTL,"PAID",SUM)
 D PUT^W4TLMTN(NOMTL,"DTTS",$$^W4DZ)
 D ^W4CALC(HZM)
 Q
 ;
 ;
CLEAR ;
  D KILL^W4TMPPAY
  D KILL^W4PAY
  K @$$^W4MAIN("TMPSHOW")
  K @$$^W4MAIN("TMPSTAGE")
  D KILL^%W1PRM("ER")
  ;;D KILL^%W1PRM("S21")
  D PUT^%W1PRM("VT","")
  D PUT^%W1PRM("VZ","")
  D PUT^%W1PRM("NP","")
  Q
  ;
VOZVR
 D CLEAR
 Q
  ;
  ;
PUT(VT,NP,V,TO) ; OUT --> @TO
 S:'$D(@TO) @TO=""
 N IND,INX,FLD,DL,J
 S IND=$$WHERE^W4PAY(VT,NP)
 S DL=$$DL^W4PAY(VT,VZ,NP)
 I $P(DL,",")["." S V=$TR($J(V,+DL)," ",0)
 I DL["," S V=$J(V,$P(DL,",",2),$P(DL,",",2))
 F J=1:1:$L(IND,"+") D
 .S INX=$P(IND,"+",J) Q:'INX
 .I INX["*" S V=V*$P(INX,"*",2)
 .I INX'["," S $P(@TO,"*",INX)=V Q
 .S FLD=$P(@TO,"*",+INX)
 .S $P(FLD,$P(INX,",",2),$P(INX,",",3))=V
 .S $P(@TO,"*",+INX)=FLD
 Q
 ;
 ;
MZM ;
 N GLORD D GLORD^W4HZMST
 N HZM S HZM=$$GET^%W1PRM("HZM")
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 D NOZERO Q:$G(%SC("ER"))
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM) ; ITRARL
 ;
 I $$^W4CLOSE(HZM) Q
 I $$IFMZSM(HZM,1) Q
 ;
 D MZM1(HZM,VL)
 Q
 ;
 ;
MZM1(HZM,VL,DELPY,TRID) ;
 N (JB,%ARG,HZM,VL,DELPY,TRID) ;
 S VL=$J(VL,2,2)
 N SUGM,SHAAR,A S SUGM=1
 ;
 N GLORD D GLORD^W4HZMST
 ;
 I $$MATB^W4PRM D
 .S SUGM=$$GET^W4TMPPAY(1,"SUGMTB")  Q:SUGM=""
 .S A=$G(@$$^W4GL("P1SUGM")@(SUGM))
 .S SHAAR=$P(A,"\")
 .S VL0=VL,VL=$J(VL*SHAAR,2,2)_"="_VL0_"X"_SHAAR
 .S @GLORD@("CB","M",SUGM)=VL0_"!"_SHAAR
 ;
 N ODEFMZ,IND
 N TOPAY S TOPAY=$$ITRA^W4HZMST(HZM) ; -- WAS ITRARL 17/07/23
 S ODEFMZ=VL-TOPAY
 ;
 ;;S ^AA("W4PAYKB-MZM","VL")=VL
 ;;S ^AA("W4PAYKB-MZM","TOPAY")=TOPAY
 ;;S ^AA("W4PAYKB-MZM","ODEFMZ")=ODEFMZ
 ;
 I ODEFMZ<0&(TOPAY'<0)!(ODEFMZ>0&(TOPAY'>0)) S ODEFMZ=0
 I ODEFMZ'<VL&(VL'<0) S ODEFMZ=0 
 I ODEFMZ'>VL&(VL'>0) S ODEFMZ=0 
 ;
 S IND=$O(@GLORD@("CB","MZ",999),-1)+1
 S @GLORD@("CB","MZ",IND)=VL_"*"_$H_"*"_$$LASTMLZ^W4HZMST(HZM)_"*"_$$^W4MYDVN_"*"_ODEFMZ_"*"
 ;
 I $G(TIP) D
 .S $P(@GLORD@("CB","MZ",IND),"*",6)=TIP
 ;
 I $G(TRID)'="" D
 .S $P(@GLORD@("CB","MZ",IND),"*",7)=TRID
 ;
 S VL=$J(VL,2,2)
 D
 .D PUT^W4HZMST(HZM,"ODEF",$$SODEF^W4HZMST(HZM))
 .D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
 Q
 ;
 ;
PAYCASH(MZM) ;
 N MZM S MZM=$$SMZ^W4HZMST(HZM)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 N ODEF,ODEFMZ,STIPVT
 S STIPVT=$$STIPVT^W4HZMST(HZM,"MZ")
 S ODEFMZ=$$SODEFMZ^W4HZMST(HZM)-STIPVT
 ;
 I ODEFMZ<0&(TSHL>0)!(ODEFMZ>0&(TSHL<0)) S ODEFMZ=0,STIPVT=0
 D PUT^W4HZMST(HZM,"MZM",$$SMZ^W4HZMST(HZM)-ODEFMZ)
 D PUT^W4HZMST(HZM,"ODEF",ODEFMZ)
 S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
 ;
 I PORTDISP D
 .N TX1,TX2 S TX2=""
 .S TX1=$J(MZM,2,2)_" : mley" 
 .S TX2=$J(ODEFMZ,2,2)_" : scer" 
 .D ^W4TX2DSP(PORTDISP,TX1,TX2)
 Q
 ;
 ;
CAJ ;
 I '$G(SUM) Q
 I '$G(SOLEK) Q
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I $$^W4CLOSE(HZM) Q
 ;
 N IND
 N GLORD D GLORD^W4HZMST
 S TIP=$G(TIP)
 S IND=$O(@GLORD@("CB","V",999),-1)+1
 S @GLORD@("CB","V",IND)="$V"_SOLEK_"*****"_SUM_"*"_SUM
 I $G(TIP) D
 .S $P(@GLORD@("CB","V",IND),"*",27)=TIP
 ;
 S VL=$J(VL,2,2)
 D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
 Q
 ;
 ;
CIB ;
 D NOZERO Q:$G(%SC("ER"))
 S VL=$J(VL,2,2)
 Q
 ;
 ;
HNH ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I VL["%" S VL=$J($$ITRA^W4HZMST(HZM)*VL*.01,2,2)
 D NOZERO Q:$G(%SC("ER"))
 ;
 I $G(@$$^W4PRM@("IGUL"))=1 D
 .N VL0 S VL0=VL
 .S VL=$J(VL,0,0)
 .I VL>$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)>0)!(VL<$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)<0)) S VL=VL0
 ;
 I VL>$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)>0)!(VL<$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)<0)) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="SUMTOOBIG"
 ;
 D ^W4ADDHNH(HZM,VL)
 Q
 ;
 ;
SUM ;
 N PRHMK S PRHMK=$$HMK^W4LHB
 I PRHMK D  Q:$G(%SC("ER"))
 .N (JB,%ARG,%REM,PRHMK,VL,%SC)
 .S SUMTD=0
 .I PRHMK=2 D GLTMP^W4DOC S SUMTD=$P($G(@GLTMP),"\",6)
 .I PRHMK=1 S SUMTD=$P($G(@$$TMPHBK^W4HSBYAD),"\",2)
 .I VL>SUMTD D
 ..S %SC("ER")=1
 ..S %SC("ER","MSG")="SUMTOOMUCH"
 ;
 I $$^W4CBFROM,$$GETP^%W1PRM("SUMHB"),VL>$$GETP^%W1PRM("SUMHB") D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="SUMTOOMUCH"
 ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 S VL=$J(VL,2,2)
 Q
 ;
 ;
CA ;
 I VL="",$$EMV^W4PRM Q
 I $L(VL)<7 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERTOOSHORT"
 I VL[";" S VL=$P(VL,";",2) I VL["?" S VL=$P(VL,"?")
 S VL=$TR(VL,"-","")
 Q
 ;
MM ;
 I VL>12 D  Q
 .S %SC("ER")=1
 I VL<1 D  Q
 .S %SC("ER")=1
 S VL=$TR($J(VL,2)," ",0)
 Q
 ;
YY ;
 I VL<$ZD($H,"YY") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="PAGTOKEF"
 ;
 I +VL=+$ZD($H,"YY") D  Q
 .I $$GET^W4TMPPAY(3,"MM")<$$MM^%L1DC($H) D
 ..S %SC("ER")=1
 ..S %SC("ER","MSG")="PAGTOKEF"
 .
 S VL=$TR($J(VL,2)," ",0)
 Q
 ;
P1 ;
 I VL>$$GET^W4TMPPAY(3,"SUM") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="PAYMENTTOOBIG"
 ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 Q
 ;
PN ;
 I VL>18 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBEROFPAYMENTSTOOBIG"
 ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 N PC S PC=0
 ;
 I VL D  ; -- VL - PAYMENTS NUMBER
 .N SUM S SUM=$$GET^W4TMPPAY(3,"SUM")
 .N P1 S P1=$$GET^W4TMPPAY(3,"P1")
 .N PN S PN=VL I 'P1 D
 ..S PN=VL-1,P1=$J(SUM/VL,2,2)
 ..;;D PUT^W4TMPPAY(3,"P1",P1) ; -- 9/9/20
 .
 .S PC=0
 .I PN S PC=$J((SUM-P1)/PN,2,2)
 .
 .D  ;I $G(@$$^W4PRM@("ROUND")) D  ; -- 9/9/20
 ..S PC=$J(PC,0,0)
 ..D PUT^W4TMPPAY(3,"P1",SUM-(PC*PN))
 ..D PUT^W4TMPPAY(3,"PN",PN)
 ;
 D PUT^W4TMPPAY(3,"PC",PC)
 Q
 ;
 ;
TZ D NOZERO1 Q:$G(%SC("ER"))
 N W4TZNO S W4TZNO=""
 I '$$^W4TZ(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="PSW;WRONGIDNUMBER"
 Q
 ;
CVV ;
 I VL'?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;3"
 Q
 ;
ZIP ;
 I VL'?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;5"
 Q
 ;
ASH4 ;
 I VL'?4N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;4"
 Q
 ;
TIME ;
 S VL=$ZD(VL,"DD/MM/YY 24:60")
 Q
 ;
TLAS ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 S VL=$J(VL,2,2)
 N LKHN S LKHN=$$LK Q:'$$^W4ISCDLK(LKHN)
 N TLUSH S TLUSH=$$TLUSH^W4L(LKHN)
 N TLAL I +VL'=+TLUSH!(TLUSH'["=") D
 .S TLAL=VL
 .D PUT^W4TMPPAY(4,"TLAL",TLAL)
 N KMTL S KMTL=$$GET^W4TMPPAY(4,"ASR")\VL
 D PUT^W4TMPPAY(4,"KMTL",KMTL)
 Q
 ;
KMTL ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 N SHTL S SHTL=$$GET^W4TMPPAY(4,"TLUSH")*VL
 D PUT^W4TMPPAY(4,"SHTL",SHTL)
 I $$TOOMUCH(SHTL,HZM) D
 .D PUT^W4TMPPAY(4,"TIPAS",SHTL-$$ITRA^W4HZMST(HZM))
 N SHTLAL S SHTLAL=$$GET^W4TMPPAY(4,"TLAL")*VL
 D PUT^W4TMPPAY(4,"SHTLAL",SHTLAL)
 Q
 ;
MLZR ;
 I VL["MVC1-" D  Q
 .S VL=$$H2U^%L1FRM("rvan")_" "_$P($P(VL,"-",1,2),"MVC",2)
 S VL=$$^W4NAME(VL)
 Q
 ;
ARM(STAM)
 N VIZ S VIZ=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")
 I $$^W4MG(VIZ) Q 0
 Q 1
 ;
CAER(STA) ;
 Q $G(@$$^W4GL("KOD")@(+STA))
 ;
LKHN ; --- LKH ----> PRATIM --> TMPPAY
 I $L(VL)<4,$TR(VL,"-","")?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="MINLENN;4"
 ;
 I '$$^W4ISCDLK(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FINDCUST"
 ;
 I '$$D^W4L(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOCUST"
 ;
 N LKHR S LKHR=$G(@$$^W4GL("P1EZL")@(VL))
 I '$$ISCR^W4L(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOISCR"
 ;
 I $$MAZAV^W4L(VL)<1 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTOMCLOSED"
 ;
 I $$PAPJ^W4PRM,VL=4444,$G(%REM)["192.168." D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTOMPROTECTED"
 ;
 D PUT^W4TMPPAY(4,"LKHN",VL)
 ;
 N VLADD
 S VLADD=$$LKH^W4L(VL)
 D PUT^W4TMPPAY(4,"LKHN1",VLADD)
 ;
 S VLADD=$$LKHR^W4L(VL)
 N VL1 S VL1=VL
 I VLADD S VL1=VLADD
 D PUT^W4TMPPAY(4,"LKHR",VLADD)
 ;
 S VLADD=$$LKHR1^W4L(VL)
 D PUT^W4TMPPAY(4,"LKHR1",VLADD)
 ;
 S VLADD=$$GDCR^W4L(VL1)
 D PUT^W4TMPPAY(4,"GODAS",VLADD)
 ;
 S VLADD=$$ITRA^W4L(VL1)
 D PUT^W4TMPPAY(4,"ITRAS",VLADD)
 ;
 S VLADD=$$HNH^W4L(VL1)
 ;
 D
 .N HZM S HZM=+$$GETP^%W1PRM("HZM")
 .N LKHN S LKHN=VL1
 .I LKHN,+$$HNHAH^W4HZMST(HZM)=+$$AH^W4L(LKHN),$$NOKFLLK^W4PRM S VLADD="" ; - EIN KEFEL HANAHOT
 .I LKHN,$$HNHHR(HZM),$$NOKFLLK^W4PRM S VLADD=""; -- 3/02/22
 ;
 D PUT^W4TMPPAY(4,"LKAH",VLADD)
 ;
 Q
 ;
 ;
ASRL ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 N LKAH,LKHNH S LKHNH=0,ASR=VL
 S LKAH=$$GET^W4TMPPAY(4,"LKAH")
 I $$GETP^%W1PRM("AHL") S LKAH=0 ; -- 07/12/21
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I $$HZM^W4MSL(HZM),$$HNHAH^W4HZMST(HZM)?1N.E S LKAH=0
 ;
 N KF S KF=1
 N TOT S TOT=$$TOT^W4HZMST(HZM)
 I TOT S KF=$J($$TOTHN^W4HZMST(HZM)/TOT,7,7)
 ;
 I LKAH D
 .S LKHNH=$J(VL*LKAH*KF*.01,2,2)
 .S ASR=VL-LKHNH
 ;
 D ROUNDASR
 N LK S LK=$$LK Q:'$$^W4ISCDLK(LK)
 N LK1 S LK1=LK I $$LKHR^W4L(LK) S LK1=$$LKHR^W4L(LK)
 N GWUL S GWUL=$$GDCR^W4L(LK1)-$$ITRA^W4L(LK1)
 ;
 I GWUL'>0 D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITOVER"
 ;
 I ASR>GWUL D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITOVERDRAFT;"_GWUL
 ;
 I $$GDAY^W4L(LK)'>0 G ASRLPUT
 ;
 N GWDAY S GWDAY=$$GDAY^W4L(LK)-$$ITRAYOM^W4L(LK,$$^W4DZ)
 ;
 I GWDAY'>0 D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITDAYOVER"
 ;
 I ASR>GWDAY D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITDAYOVERDRAFT;"_GWDAY
 ;
ASRLPUT ;
 D PUT^W4TMPPAY(4,"ASR",ASR)
 D PUT^W4TMPPAY(4,"LKHNH",LKHNH)
 Q
 ;
 ;
CMP I VL'?1N.N."-".N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FINDCMP"
 Q
 ;
ASM(STAM)
 N LK S LK=$$LK
 I $$ASM^W4L(LK) Q 1
 Q 0
 ;
HZMLK ;
 N HZM Q:'$G(NOMASR)
 S HZM=$$GET^%W1PRM("HZM")
 N LK S LK=$$GET^W4GTVCH(HZM,NOMASR,"ASR","LKHN") Q:'$$^W4ISCDLK(LK)
 S VL=$$GET^W4GTVCH(HZM,NOMASR,"ASR","HZMLK")
 ;
 I LK=$$^W4CIBLKH D
 .S VL=VL_" <br><span style=""font-size:"_$$^W3FSZ(9)_";color:green"" >"
 .S VL=VL_$$^%W1DICT("CARD")_$$^WCKBCARD($$GET^W4GTVCH(HZM,NOMASR,"ASR","CIBCARD"))_"</span>"
 ;
 I $$IFVC^WV(HZM,NOMASR) D
 .S VL=VL_" <br><span style=""font-size:"_$$^W3FSZ(9)_";color:green"" >"
 .N CARD S CARD=$$GET^WV(HZM,NOMASR,"CARD")
 .S CARD=+$P(CARD,"=")
 .S VL=VL_$$^%W1DICT("CARD")_CARD_"</span>"
 Q
 ;
 ;
NAME ;
 N HZM Q:'$G(NOMASR)
 ;
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 N LK1 S LK1=$$H2U^%L1FRM($$GET^W4GTVCH(HZM,NOMASR,"ASR","LKHN1"))
 S VL=LK1
 ;
 I $$IFVC^WV(HZM,NOMASR) D
 .N NAME S NAME=$$GET^WV(HZM,NOMASR,"NAME")
 .S VL=VL_" <br><span style=""font-size:"_$$^W3FSZ(9)_";color:green"" >"
 .S VL=VL_$$H2U^%L1FRM(NAME)_"</span>"
 Q
 ;
 ;
HRA ;
 N HZM Q:'$G(NOMASR)
 ;
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 N HR S HR=$$H2U^%L1FRM($$GET^W4GTVCH(HZM,NOMASR,"ASR","HRA1"))
 S VL=HR
 I $E(HR,1,4)="BSL;" S VL="BSL"
 Q
 ;
 ;
TSTCHK(STAM) ;
 N HZM,LKHN,OU
 S OU="OK"
 S HZM=$$GET^%W1PRM("HZM")
 S LKHN=$$GET^%W1PRM("LKHN")
 I LKHN,'$$ISCH^W4L(LKHN) S OU="NOISCH" G ETSTCHK
 I $$^W4PSWCHK S OU="PSW"
ETSTCHK Q OU
 ;
 ;
CHS ;
 D NOZERO Q:$G(%SC("ER"))
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM,$$NOTIPALL^W4PRM D
 .N TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
 .I VL-TOPAY>.05&(TOPAY>0)!(VL-TOPAY<-.05&(TOPAY<0)) D  Q:$G(%SC("ER"))
 ..S %SC("ER")=1
 ..S %SC("ER","MSG")="SUMTOOBIG"
 S VL=$J(VL,2,2)
 Q
 ;
NCHECK ;
 I VL="B"!(VL="a") Q
 D NOZERO Q:$G(%SC("ER"))
 Q
 ;
BSN ;
 D NOZERO Q:$G(%SC("ER"))
 I VL'?5N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;5"
 Q
 ;
 ;
HESH ;
 I VL="B"!(VL="a") Q
 D NOZERO Q:$G(%SC("ER"))
 Q
 ;
DATP ;
 I VL?5N S VL="0"_VL
 I VL'?6N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;6"
 I $E(VL,1,2)<1!($E(1,2)>31)!($E(VL,3,4)<1)!($E(VL,3,4)>12) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="DATENOTVALID"
 I $$^%L1DC(VL,3)-$H>120 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="DATETOOLONG"
 Q
 ;
SSHUL(HZM)
 Q $$SSHUL^W4HZMST(HZM)
 ;
SSHULA(HZM)
 Q $$SAS^W4HZMST(HZM)
 ;
LASTSTAGE(STAM) ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q " "
 Q $G(@$$^W4MAIN("TMPSTAGE")@(IND))
 ;
ADDSTAGE(STAGE)
 Q:$G(STAGE)=""
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 S @$$^W4MAIN("TMPSTAGE")@(IND+1)=STAGE
 Q
 ;
KILLSTAGE ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q
 S STAGE=$G(^(IND)) Q:STAGE=""
 N N
 ;
 K @$$^W4MAIN("TMPSTAGE")@(IND)
 Q
 ;
KILLVAR(STAGE)
 N N
 S N="" F  S N=$O(@$$^W4PAY@(3,STAGE,N)) Q:N=""  D
 .N CD S CD=$P(^(N),";") Q:CD=""
 .K @$$^W4TMPPAY@(3,CD)
 Q
 ;
INITASR ;
 D PUT^%W3DEB("W4PAYKB-INITASR","VT=VT")
 D CLEAR
 N LKHDFLT S LKHDFLT=$$LKHN^W4HZMST(+$$GET^%W1PRM("HZM"))
 I $G(VT)="4TB" S LKHDFLT=$$^W4TBLKH S VT=4
 D PUTDFLT^W4TMPPAY(VT,"ASRL",$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 D PUT^W4TMPPAY(VT,"LKHN",LKHDFLT)
 D CREATE^W4PAY(VT,"LKHN")
 D PUT^%W1PRM("VT",VT)
 Q
 ;
INITTB ;
 D CLEAR
 N RKVSUM S RKVSUM="SUM"
 I VT=2 S RKVSUM="CHS"
 I VT'=6 D PUTDFLT^W4TMPPAY(VT,RKVSUM,$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 D PUT^%W1PRM("VT",VT)
 D CREATE^W4PAY(VT,"SUM")
 Q
 ;
INITTL ;
 D KILLVAR("TL")
 D ADDSTAGE("SUM")
 D CREATE^W4PAY(4,"TL")
 N LKHN S LKHN=$$LK
 N TLUSH S TLUSH=$$TLUSH^W4L(LKHN)
 N TLAL S TLAL=+$P(TLUSH,"=",2)
 I TLUSH,TLUSH<2 S TLUSH=$$ITRA^W4HZMST($$GETP^%W1PRM("HZM"))
 D PUT^W4TMPPAY(4,"TLUSH",+TLUSH)
 D PUT^W4TMPPAY(4,"TLAL",+TLAL)
 D PUT^W4TMPPAY(4,"SHTL",0)
 D PUT^W4TMPPAY(4,"SHTLAL",0)
 Q
 ;
LK(STAM)
 Q $$GET^W4TMPPAY(4,"LKHN")
 ;
NOZERO ;
 I VL'?."-".N.".".N!(VL="") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERONLY"
 ;
NOZERO1 I 'VL D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOZERO"
 Q
 ;
 ;
DELPAYM(PRM) ; --- From w4payvw.DelPaym() -- UD-E PRED TASHLUMA IZ SPISKA
 N VT,IND,NOM,HZM
 K @$$^W4MAIN("TMPANS")
 S PRM=$$CLEAR^%L1FRM(PRM)
 S VT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 ;
 S HZM=$$GET^%W1PRM("HZM")
 S %REM=$$GET^%W1PRM("REM")
 ;
 Q $$DELPAY(HZM,VT,IND,NOM)
 ;
 ;
DELPAY(HZM,VT,IND,NOM) ;-- BITUL TASHLUM BE HAZMANA PTUHA
 D PUT^%W3DEB("W4PAYKB-DELPAY","HZM=HZM & VT=VT & IND=IND & NOM=NOM ")
 ;
 D ^W4CBOLD(HZM)
 ;
 D KILL^W4TMPPAY
 ;
 S ER="OK"
 ;
 I VT=1 D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .N I,R,STG,STR,VL,TOPAY,TIP
 .N A S A=$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .S VL=-A
 .S TOPAY=$P(A,"*",5)-A
 .S TIP=-$P(A,"*",6)
 .D MZM
 .I $$IFMZSM(HZM,VT) D ^W4MZSMBK(HZM,0,NOM) S ER="MZSM" Q
 .D SOFMZDEL(HZM,IND,NOM)
 ;
 ;
 I VT=2 D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .N HZM S HZM=$$GET^%W1PRM("HZM")
 .N I,STR,STG
 .S STR=$$GETST^W4GTVCH("CH")
 .S STG=$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .I $$KC^W4KC(STG),$$DELKC^W4HZDEL(HZM,NOM) Q
 .I $$KC^W4KC(STG) D ^W4SGNDEL(HZM,IND,NOM) Q
 .
 .F I=1:1:$L(STR,"*") I $L($P(STR,"*",I)) D
 ..D PUT^W4TMPPAY(2,$P(STR,"*",I),$P(STG,"*",I))
 .
 .N LNOM S LNOM=$O(@$$^W4ORD@(HZM,"CB",IND,999),-1)+1
 .S @$$^W4ORD@(HZM,"CB","CH",LNOM)=-$$GET^W4TMPPAY(2,"CHS")_"*"_$$GET^W4TMPPAY(2,"NCHECK")_"*"_$$GET^W4TMPPAY(2,"TZ")_"*"_$$GET^W4TMPPAY(2,"BSN")_"*"_$$GET^W4TMPPAY(2,"HESH")_"*"_$$GET^W4TMPPAY(2,"DATP")
 .S $P(@$$^W4ORD@(HZM,"CB","CH",LNOM),"*",12)=-$$GET^W4TMPPAY(2,"TIPCH")
 .D SETPOS^W4HZMST(HZM,"CH",LNOM)
 .D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
 .D ^W4T(HZM,1)
 .D ^W4SGNDEL(HZM,IND,NOM)
 ;
 ;
 I VT=4!(VT=7) D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .N I,R,STG,STR
 .S STR=$$GETST^W4GTVCH("ASR")
 .
 .N LKHN,LKHNH,ASR,CIBUID,HZMLK,HRA1
 .S LKHN=$$GET^W4GTVCH(HZM,NOM,"ASR","LKHN")
 .S CIBUID=$$GET^W4GTVCH(HZM,NOM,"ASR","CIBUID")
 .S HZMLK=$$GET^W4GTVCH(HZM,NOM,"ASR","HZMLK")
 .S HRA1=$$GET^W4GTVCH(HZM,NOM,"ASR","HRA1")
 .
 .I LKHN=$$^W4CIBLKH,'$D(@$$^W4ORD@(HZM,"CIB")) D  I RES S ER=+RES Q  ; -- CIBUS
 ..I '$$NEWCIB^W4PRM S RES=$$^WCCANC(HZMLK,CIBUID)
 ..I $$NEWCIB^W4PRM D CNC^WCNPAY(HZM,NOM,HZM)
 .
 .I $$D^WV(HZM,NOM) D  I RES'="OK" S ER=RES Q  ; ------ VCARD
 ..N TRID S TRID=$$GET^WV(HZM,NOM,"TRID")
 ..S RES=$$^WVCANC(HZM,"",NOM,TRID)
 .
 .I LKHN=$$^W4TBLKH D  I RES S ER=RES Q  ; -- TENBIS
 ..N TBCARD S RES=-1
 ..S TBCARD=$$GET^W4GTVCH(HZM,NOM,"ASR","TBCARD")
 ..S ASR=$$GET^W4GTVCH(HZM,NOM,"ASR","ASR")
 ..S LKHNH=$$GET^W4GTVCH(HZM,NOM,"ASR","LKHNH")
 ..;
 ..D:TBCARD&ASR  Q:RES
 ...S RES=$$^WTBCANC(HZM,TBCARD,ASR+LKHNH) Q:RES
 ...S LKHNH=$G(TBVL("DISCORD"))
 ...S HZMLK=$G(TBVL("TRID"))
 ...S TBCARD=$G(TBVL("CARD"))
 ...S TBRECID=$G(TBVL("RECID"))
 .
 .I LKHN=$$COUPPH^W4PRM D  I RES S ER="<!> [ "_$P(RES,"*")_" ] "_$P(RES,"*",2) Q  ; -- TENBIS
 ..D DELCPASR^W4HZBIT(HZM,HZM,NOM)
 .
 .I HRA1["BSL;" D
 ..D BITBSLN^W4HZBIT(HZM,NOM)
 .
 .I $D(@$$^W4ORD@(HZM,"MP")) D
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"MP","PAY",N)) Q:N=""  D
 ...I NOM=$G(^(N)) D
 ....D BITMPN^W4HZDEL(N)
 .
 .S STG=$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .F I=1:1:$L(STR,"*") I $L($P(STR,"*",I)) D
 ..D PUT^W4TMPPAY(4,$P(STR,"*",I),$P(STG,"*",I))
 .
 .F R="ASR","LKHNH","KMTL","TIPAS","TSFMH" D
 ..D PUT^W4TMPPAY(4,R,-$$GET^W4TMPPAY(4,R))
 .
 .D ^W4T(HZM,1)
 .D ^W4SGNDEL(HZM,IND,NOM)
 ;
 ;
 I VT=6 D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .S VL=-$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .D HNH
 .D ^W4SGNDEL(HZM,IND,NOM)
 ;
 Q "OK"
 ;
 ;
SOFMZDEL(HZM,IND,NOM) ;
 N MZM S MZM=$$SMZ^W4HZMST(HZM)
 N OD S OD=$$SODEF^W4HZMST(HZM)
 S $P(@$$^W4ORD@(HZM,"CB"),"\",2)=MZM-OD
 D ^W4T(HZM,1)
 D ^W4SGNDEL(HZM,IND,NOM)
 Q
 ;
SIGNDEL ;
 S @$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")=$H_"\"_$$GET^%W1PRM("MLZR")_"\"_$$^W4MYDVN
 Q
 ;
VT(STAM) ;
 I $L($G(%ARG("VT"))) Q %ARG("VT")
 Q $$GET^%W1PRM("VT")
 ;
VZ(STAM) ;
 I $L($G(%ARG("VZ"))) Q %ARG("VZ")
 Q $$GET^%W1PRM("VZ")
 ;
NEXTNP(PRM) ;
 N VT,VZ,NP
 S VT=$P(PRM,";")
 S VZ=$P(PRM,";",2)
 S NP=$$GET^%W1PRM("NP")
 S NP=$$NEXT^W4PAY(VT,VZ,NP) I NP="" Q "END"
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
MTAW(STAM) ;
 I $$^W4MTAW Q 1
 I $$POS^W4MTAW Q 1
 Q 0
 ;
CIBHOW(STAM) ;
 D ADDSTAGE("HOW")
 N HOW,VZ
 S VT=7
 S HOW=$$GET^W4TMPPAY(VT,"CIBKIND")
 I 'HOW Q 0
 I HOW=1 S VZ="CIBCARD" D CREATE^W4PAY(VT,VZ) G ECH
 I HOW=2 S VZ="CMPCARD" D CREATE^W4PAY(VT,VZ) G ECH
 I HOW=3 S VZ="INPCARD" D CREATE^W4PAY(VT,VZ) G ECH
ECH Q VZ
 ;
VCACT(STAM) ;
 N HOW,VZ,VT,HZM
 ;
 S VT=8
 ;
 I $$NOBONUS^WV D  G EVC
 .D CLEAR^W4SCASK
 .D PUT^W4TMPPAY(VT,"ACTIONKIND","PAY")
 .S VZ="PAY"
 ;
 D ADDSTAGE("HOW")
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q 0
 S HOW=$$GET^W4TMPPAY(VT,"ACTIONKIND")
 D CLEAR^W4SCASK
 S VZ=""
 I HOW="PAY" S VZ="PAY" G EVC
 I HOW="BONUS" S VZ="BONUS" G EVC
 I HOW="CANCELBONUS" S VZ="CANCELBONUS" G EVC
 I HOW="SHOWBONUS" S VZ="SHOWBONUS" G EVC
 I HOW="SHOWHIST" S VZ="SHOWHIST" G EVC
EVC Q VZ
 ;
 ;
SETTIP ;
 N HZM S HZM=$$GET^%W1PRM("HZM") Q:'$$^W4ISORD(HZM)
 N VL,TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
 S VL=$$GET^W4TMPPAY(1,"SUM")
 I $$GET^W4TMPPAY(1,"TOPAY") S TOPAY=$$GET^W4TMPPAY(1,"TOPAY")
 N TIP S TIP=VL-TOPAY
 I TIP<0,TOPAY'<0 Q
 I TIP>0,TOPAY<0 Q
 ;
 S VL=TOPAY D MZM
 Q
 ;
INVOICE(STAM) ;
 D CLEAR
 N VT,VZ,SUM,HZM
 S HZM=+$$GET^%W1PRM("HZM")
 S SUM=$$ITRA^W4HZMST(HZM)
 S VT=12
 S VZ="SUM"
 D PUT^W4TMPPAY(VT,"SUM",SUM) ; --- FOR INVOICE
 ;
 D PUT^%W1PRM("VT",VT)
 D PUT^%W1PRM("VZ",VZ)
 ;
 N NOKILLPAY S NOKILLPAY=""
 Q $$PAY2ORD
 ;
 ;
IFSUM(VT,CD) ;
 I $G(CD)="SUM" Q 1
 I $G(VT)=2,CD="CHS" Q 1
 I $G(VT)=3,CD="P1" Q 1
 I $G(VT)=4,CD="ASRL" Q 1
 I $G(VT)=6,CD="HNH" Q 1
 Q 0
 ;
PUTTIP ; -- PUT CASH TIP
 N TIP,ODEF,TSHL,HZM S TIP=$$GET^W4TMPPAY(1,"TIP")
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 S TSHL=$$TSHL^W4HZMST(HZM)
 I TIP>0,TSHL<0 Q
 I TIP<0,TSHL>0 Q
 ;
 S VL=$$GET^W4TMPPAY(1,"SUM")
 N TOPAY S TOPAY=$$GET^W4TMPPAY(1,"TOPAY")
 D PUT^%W3DEB("W4PAYKB-PUTTIP","TOPAY=TOPAY & TIP=TIP & SUM=VL ")
 D MZM
 ;
 D PUT^%W1PRM("VZ","SUM")
 D KILL^%W1PRM("TOPAY")
 Q
 ;
TIPCASH(STAM) ;
 I $$GETP^%W1PRM("VT")=1&($$GETP^%W1PRM("VZ")="TIP") Q 1
 Q 0
 ;
VLDFLT(PRM) ;
 N NP,OU,CD,CL
 S VT=$P(PRM,";") I VT="" Q ""
 S VZ=$P(PRM,";",2) I VZ="" Q ""
 S NP=$$GET^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4PAY(VT,VZ)
 I NP="" Q ""
 S CD=$$NM^W4PAY(VT,VZ,NP) Q:CD="" ""
 S VL=$$GET^W4TMPPAY(VT,CD)
 I 'VL S VL=$$DFLT^W4TMPPAY(VT,CD)
 Q VL
 ;
 ;
SHOW ;
 I $G(%ARG("SHOW"))=1 D  Q
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("BACK")
 .S MGROUP(1,"TO")="Back()"
 .I $G(%ARG("VZ"))="SHOWONLY" S MGROUP(1,"TO")="Back('HREF')"
 .S MGROUP("HG")="20%"
 .S TOP="1"
 .D ^W4SHEET("","","",TOP)
 ;
 I $G(%ARG("SHOW"))="TLASEND"!($G(%ARG("SHOW"))="ASEND") D  Q  ;-- HAKAFA BE TLUSHIM
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("SUBMIT")
 .S MGROUP(1,"TO")="Pay()"
 .S MGROUP(2)=$$^%W1DICT("CANCEL")
 .S MGROUP(2,"TO")="Back('"_%ARG("SHOW")_"')"
 .S MGROUP("HG")="40%"
 .S TOP="1"
 .D ^W4SHEET("","","",TOP)
 ;
 I $G(%ARG("SHOW"))="TIP" D  Q  ;-- TIP
 .I $$VT=1 D  Q
 ..K %ARG("VZ")
 ..D PUT^%W1PRM("VZ","TIP")
 ..S %ARG("HEAD")="TIP"
 ..S %ARG("CALC")=2
 ..D KB^W4KB(7,$G(%ARG("TIP")))
 ..
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("SUBMIT")
 .S MGROUP(1,"TO")="ContTip()"
 .I +$$NOTIPCA^W4PRM=.5 S MGROUP(1,"TO")="Psw()"
 .S MGROUP(2)=$$^%W1DICT("CANCEL")
 .S MGROUP(2,"TO")="BackTip()"
 .S MGROUP("HG")="40%"
 .S TOP="1"
 .N KOT S KOT=$$^%W1DICT("TIPEQ",$J($G(%ARG("TIP")),2,2))_"<ALGN=center"
 .D ^W4SHEET(KOT,"","",TOP)
 Q
 ;
ROUNDASR ;
 N ASR0
 I $G(@$$^W4PRM@("ROUND")) D
 .S ASR0=ASR
 .I $G(@$$^W4PRM@("RNDOWN")) S ASR=$P(ASR,".")
 .S ASR=$J(ASR,0,0)
 .S LKHNH=$G(LKHNH)+ASR0-ASR
 Q
 ;
 ;
PAYTB(HZM) ;  -- TASHLUM TENBIS
 N VT S VT=10
 N CARD,CD,ASR,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,BLIPR,P1TNOPR,TIPAS
 N TBCARD
 S CARD=$$GET^W4TMPPAY(VT,"CARDNUMBER")
 S ASRL=$$GET^W4TMPPAY(VT,"SUM")
 ;
 I ASRL'[";" D PAYTB1(HZM,ASRL,CARD) G EPAYTB
 N SUM,I
 F I=1:1:$L(ASRL,";") D
 .D PAYTB1(HZM,$P(ASRL,";",I),$P(CARD,";",I),I) 
EPAYTB Q
 ;
 ;
PAYTB1(HZM,ASRL,CARD,ITB)
 N (JB,%ARG,%REM,HZM,ASRL,CARD,ITB,RES,RESTB)
 I '$G(ITB) S ITB=1
 S VT=$$VT
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I $$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
 S RES=$$^WTBPAYK(HZM,ASRL,CARD)
 S RESTB=RES
 I RES D
 .M @$$^W4ORD@(HZM,"TBERR",ITB)=TBVL
 .S @$$^W4ORD@(HZM,"TBERR",ITB)=RES
 Q:RES  ; -->TBVL()
 ;
 S LKHNH=$G(TBVL("DISCORD"))
 S ASR=ASRL-LKHNH
 D ROUNDASR
 I ASR>0,ASRL<0 S RES=-1
 S HZMLK=$G(TBVL("TRID"))
 S TBCARD=$G(TBVL("CARD"))
 S TBRECID=$G(TBVL("RECID"))
 S (LKHN,CUSN)=$$^W4TBLKH
 S LKAH=0
 S (HRA,LKHR)=""
 I '$$FAST^W4MTAW($$NMB^W4HZMST(HZM)) S (BLIPR,P1TNOPR)=""
 I $$TOOMUCH(ASRL,HZM,ITRA) D
 .S TIPAS=ASRL-ITRA
 .D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
 ;
 D ^W4ASR
 K @$$^W4ORD@(HZM,"S")
 Q
 ;
 ;
PAYCIB(HZM) ;
 N VT S VT=7
 N CARD,CD,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,ASR,BLIPR,P1TNOPR,TIPAS
 N CIBCID,CIBUID,CIBUIC,CIBCARD,CIBKIND
 ;
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I $$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
 S CARD=$$GET^W4TMPPAY(VT,"CARDNUMBER") S:CARD="" CARD=0
 S COMP=$$GET^W4TMPPAY(VT,"COMPANYNUMBER")
 S ASRL=$$GET^W4TMPPAY(VT,"SUM") S:ASRL="" ASRL=0
 N MEDAT,ADDAT,MEDT,ADDT,DZ
 S MEDAT=$G(@$$^W4PRM@("CIBMVC","MEDAT"))
 S ADDAT=$G(@$$^W4PRM@("CIBMVC","ADDAT"))
 S DZ=$$^W4DZ
 ;
 N ASRL0 S ASRL0=ASRL
 ;
 I MEDAT,ADDAT,$G(@$$^W4PRM@("CIBMVC"))=2 D
 .S MEDT=$$^%L1DC(MEDAT,3)
 .S ADDT=$$^%L1DC(ADDAT,3)
 .N HN S HN=$G(@$$^W4PRM@("CIBMVC","HN")) 
 .I DZ'<MEDT,DZ'>ADDT,HN D
 ..N HNS S HNS=$J(ASRL*HN*.01,2,2)
 ..N LAST S LAST=$O(@$$^W4ORD@(HZM,"CB","HNH1",999),-1)
 ..S @$$^W4ORD@(HZM,"CB","HNH1",LAST+1)=HNS_"*"_$H_"*CIBMVC**CIBMVC"
 ..N HNO S HNO=$$HNH^W4HZMST(HZM)
 ..D PUT^W4HZMST(HZM,"HNH",HNO+HNS)
 ..S ASRL=ASRL-HNS
 ;
 S CIBKIND=$$GET^W4TMPPAY(VT,"CIBKIND")
 ;
 N DZ S DZ=$$^W4DZ
 ;
 N GLPROT S GLPROT=$$^W4GL("WCPROT")
 I $$NEWCIB^W4PRM S GLPROT=$$^W4GL("WCNPR")
 ;
 S @GLPROT@(DZ,HZM)=$TR($J("",30)," ","-")_" "_$ZD($H,"DD.MM.YY  24:60")
 S @GLPROT@(DZ,HZM,"CARD")=CARD
 S @GLPROT@(DZ,HZM,"COMP")=COMP
 S @GLPROT@(DZ,HZM,"ASRL")=ASRL_"\"_$G(ASRL0)
 S @GLPROT@(DZ,HZM,"CIBKIND")=CIBKIND
 ;
 S RES=""
 D  I +RES S @GLPROT@(DZ,HZM,CARD,ASRL,"RES")=RES Q
 .I '$$NEWCIB^W4PRM D  Q
 ..I CIBKIND=1 S RES=$$^WCPAYC(CARD,ASRL0)
 ..I CIBKIND=2 S RES=$$^WCPAYCC(COMP,CARD,ASRL0)
 ..I CIBKIND=3 S RES=$$^WCPAYK(CARD,ASRL0)
 .
 .; ----------  NEW CIBUS
 .D ^WCNPAY(HZM,COMP,CARD,ASRL0,ASRL)
 .
 .I RES D
 ..N MSG S MSG=$P(RES,"*",2) Q:MSG=""
 ..S MSG=$$FUNC^%UCASE(MSG)
 ..W "<script>",!
 .. W "ShowMsg('!"_MSG_"')",!
 ..W "</script>",!
 ;
 I $$NEWCIB^W4PRM Q
 ;
 S CIBCARD=$P(RES,"*",4)
 S CIBCID=$P(RES,"*",5),CIBUID=$P(RES,"*",6),CIBUIC=$P(RES,"*",7)
 S HZMLK=$P(RES,"*",3)
 S (LKHN,CUSN)=$$^W4CIBLKH
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S ASR=$P(RES,"*",2) Q:'ASR
 ;;D ROUNDASR
 ;
 I $$TOOMUCH(ASRL,HZM,ITRA) D
 .S TIPAS=ASRL-ITRA
 .D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
 ;
 D ^W4ASR
 K @$$^W4ORD@(HZM,"S")
 Q
 ;
 ;
DIVEMV ; 
 W "<div align=""center"" dir="""_$$^%W1DIR_"""'>",!
 N J F J=1:1:3 W "<br>"
 W "<span id=""paykbmsg"" style=""color:brown;font-size:"_$$^W3FSZ(24)_";font-weight:bold"">"
  N TX S TX="ENTERCRCARD2EMV"
  I $G(%ARG("VT"))=9,'$$EMVARM S TX="WAIT4QRCODE"
  I $G(%ARG("VT"))=9,$$EMVARM S TX="WAIT4CODE"
  W $$^%W1DICT(TX)
 W "</span>"
 W "</div>",!
 Q
 ;
EMVARM(STAM) ; 
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I '$$EMV^W4PRM Q 0  ; -- ???
 I $$EMV^W4PRM=2 Q 1
 I $$GETP^%W1PRM("VT")=9,$$EMV^W4PRM'=4 Q 1
 ;
 N DEV S DEV=$$^W4MYDVN
 ;
 I '$$EMVNUM^W4POSEMV(DEV)!'$$EMVADR^W4POSEMV(DEV) Q 1
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 ;
 I $$GETP^%W1PRM("EMVARM") Q 1
 I $G(%ARG("VZ"))="SUMCAJ" Q 1
 ;
 I NMB,HZM,$$^W4MSL(NMB),HZM>0,'$$TAKEAWAY^W4HZMST(HZM),'$$DLVEMV Q 1
 I NMB,HZM,$$^W4MSL(NMB),HZM>0,$$TAKEAWAY^W4HZMST(HZM),$$NOEMVTA Q 1
 Q 0
 ;
 ;
CRCARDEMV(STAM) ; 
 I $$EMVARM Q 1 
 ; 
 ;;S ^AA("W4PAYKB","SETTMPPAY3")=2
 D SETTMPPAY3
 Q 0 
 ;
 ;
SETTMPPAY3 ;
 N VT S VT=3
 S @$$^W4TMPPAY@(VT,"CREDITCARDNUMBER","SKIP")=""
 S @$$^W4TMPPAY@(VT,"YY","SKIP")=50
 S @$$^W4TMPPAY@(VT,"MM","SKIP")=12
 Q
 ;
HNHHR(HZM) ; 
 N SUM S SUM=0 
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D 
 .S A=$G(^(N)) 
 .I $P(A,"\")["%",$P(A,"\",7)<0 S SUM=SUM-$P(A,"\",7) 
 Q SUM 
 ;
 ;
SUMTOOBIG(PRM) ;
 N HZM,%SC
 S HZM=$$GET^%W1PRM("HZM") Q:HZM="" "0;NOORD"
 N CB S CB=$$GETP^%W1PRM("CB")
 ;
 N NP,VT,VZ,VL,DL,CMD,TOPAY
 ;
 S NP=+$$GET^%W1PRM("NP")
 S VT=+$$GET^%W1PRM("VT")
 I 'VT S VT=$G(%ARG("VT"))
 S VZ=$$GET^%W1PRM("VZ")
 S:VZ["UNDEF" VZ=""
 I 'VT Q "0;NOVT2"
 I '$L(VZ) Q "0;NOVZ"
 ;
 ;
 S:NP<1 NP=$$FIRST^W4PAY(VT,VZ)
 S:NP<1 NP=1
 S VL=$P(PRM,";")
 S CD=$$NM^W4PAY(VT,VZ,NP)
 ;
 N OK S OK=1
 S TOPAY=""
 I $$IFSUM(VT,CD),VT'=6,VT'=11 D
 .S TOPAY=$P(PRM,";",2)
 .I 'TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
 ;
 I VT=1,CD="SUM",VL>5000 Q 1
 I CD="SUM",VL>99000 Q 1
 ;
 N RES S RES=0
 ;
 I '$G(%ARG("WASTIP")),$$IFSUM(VT,CD),'CB,$G(HZM),VT>1,VT'=6,VT'=11,$$TOOMUCH(VL,HZM) D  I RES!(RES[";") Q RES
 .N MAXTIP
 .S MAXTIP=VL-TOPAY
 .I VT'=1,$$MAXTIP^W4PRMMSD=2,MAXTIP>(0.5*$$TSHL^W4HZMST(HZM)),$$TSHL^W4HZMST(HZM)>10 S RES=1 Q
 .I VT'=1,$$MAXTIP^W4PRMMSD=2,MAXTIP<(0.5*$$TSHL^W4HZMST(HZM)),$$TSHL^W4HZMST(HZM)<-10 S RES=1 Q
 .I VT=3,$$MAXTIP^W4PRMMSD=3,MAXTIP>0&($G(TOPAY)>0) S RES=1 Q
 .I VT=3,$$MAXTIP^W4PRMMSD=3,MAXTIP<0&($G(TOPAY)<0) S RES=1 Q
 .;
 .I $$MAXTIP^W4PRMMSD,MAXTIP>0&($G(TOPAY)>0)!(MAXTIP<0&($G(TOPAY)<0)) S RES="0;TIP;"_MAXTIP Q
 .I VT=3,$$MAXTIP^W4PRMMSD=4,MAXTIP>0&($G(TOPAY)>0) S RES="0;PSW" Q
 .I VT=3,$$MAXTIP^W4PRMMSD=4,MAXTIP<0&($G(TOPAY)<0) S RES="0;PSW" Q
  ;
 I $$IFSUM(VT,CD),VT'=6,VT'=11 D  I 'OK Q 1
 .S TOPAY=$P(PRM,";",2)
 .I TOPAY-$$ITRA^W4HZMST(HZM)>.05,$$ITRA^W4HZMST(HZM)>0 S OK=0 Q
 .I TOPAY-$$ITRA^W4HZMST(HZM)<-.05,$$ITRA^W4HZMST(HZM)<0 S OK=0 Q
 ;
 I VT>1,VZ="SUM",$$NOTIPALL^W4PRM D  I 'OK Q 1
 .I VL-TOPAY>.05&(TOPAY>0) S OK=0
 .I VL-TOPAY<-.05&(TOPAY<0) S OK=0
 ;
 I VT=4!(VT=7)!(VT=8)!(VT=10),VZ="SUM",$G(@$$^W4PRM@("NOTIPAS")) D  I 'OK Q 1
 .I VL-TOPAY>.05&(TOPAY>0) S OK=0 Q
 .I VL-TOPAY<-.05&(TOPAY<0) S OK=0 Q
 ;
 N MAXTIP S MAXTIP=$$GETP^%W1PRM("MAXTIP")
 ;
 I VT=1,VZ="TIP" S CD="TIP",CMD="" I $$MAXTIP^W4PRMMSD=2,MAXTIP,VL>(1.5*TOPAY) Q 1
 ;
 N OK S OK=1
 ;
 ;;S ^AA("W4PAYKB-SBM","CD")=CD
 ;
 I VT=3,CD="SUM" D  I 'OK Q 1
 .I VL-TOPAY>.05&(TOPAY>0),$$NOTIPCA^W4PRM=1 S OK=0 Q
 .I VL-TOPAY<-.05&(TOPAY<0),$$NOTIPCA^W4PRM=1 S OK=0 Q
 ;
 I VT=3,VZ="CRCARD",VL[";",VL["?" D
 .S VL=$P($P(VL,";",2),"?")
 ;
 ;-----  CHECK IF PAYMENT NOT > SUM (EXCEPT HMK - CHECK IN SUM LABEL )
 I $G(HZM)<0,'$$^W4ISPART(HZM),$$IFSUM(VT,CD),$$TOOMUCH(VL,HZM) Q 1
 ;
 I VT=14,CD="SUM",$$TOOMUCH(VL,HZM) Q 1
 ;
 N CB S CB=$$GETP^%W1PRM("CB")
 ;
 I $$IFSUM(VT,CD),'CB,$G(HZM),VT>1,VT<6!(VT=7)!(VT=8),$$TOOMUCH(VL,HZM) Q 1
 Q 0
 ;
 ; 
USCIBEMV() 
 I $$EMV^W4PRM'=4 Q 0
 I '$G(@$$^W4PRM@("CIBEMV")) Q 0
 I $G(%ARG("VZ"))="CIBCARD" Q 1
 I $G(%ARG("VZ"))="CMPCARD"&($$GETP^%W1PRM("NP")>1) Q 1
 Q 0 
 ;
USCSHEMV() 
 I '$$KSHCSH^W4PRM Q 0
 I $G(%ARG("VZ"))="SUM"&($$GETP^%W1PRM("NP")=2) Q 1
 Q 0 
 ;
USTNBEMV() 
 I $$EMV^W4PRM'=4 Q 0
 I '$G(@$$^W4PRM@("TNBEMV")) Q 0
 ;;I $$GETP^%W1PRM("EMVARM") Q 0
 I $G(%ARG("VZ"))="SUM"&($$GETP^%W1PRM("NP")=2) Q 1
 Q 0 
 ;
 ;
SETCIBCMP() ;
 N OK S OK=0
 N CDUS S CDUS=$G(@$$^W4PRM@("CIBCMPIT"))
 N CMPUS S CMPUS=$G(@$$^W4PRM@("CIBCMPUS"))
 I 'CDUS!'CMPUS Q 0
 ;
 I CMPUS D
 .N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'HZM
 .N N,A,CD  S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  Q:OK  I N D
 ..S A=$G(^(N))
 ..S CD=$P(A,"\")
 ..I CD=CDUS S OK=1
 ;
 I OK D
 .D PUTDFLT^W4TMPPAY(7,"COMPANYNUMBER",CMPUS)
 .D PUTDFLT^W4TMPPAY(7,"CIBKIND",2)
 Q OK
 ;
 ;
CA1(HZ) ;
 I '$D(@$$^W4ORD@(HZ,"CB","V",1)) Q 0
 I $D(@$$^W4ORD@(HZ,"CB","V",2)) Q 0
 N ST S ST=$G(@$$^W4ORD@(HZ,"CB","V",1,"STRIN"))
 ;;I '$P(ST,"B",2) Q 0  ; -- ???
 Q 1
 ;
PUTCA(HZBIT) ;
 N VT S VT=3
 N CABIT,MMBIT,YYBIT,CVVBIT,TZBIT
 S CABIT=+$$GET^W4GTVCH(HZBIT,1,"V","NCA") Q:'CABIT
 S TKF=$$GET^W4GTVCH(HZBIT,1,"V","TKFCA")
 S MMBIT=$E(TKF,1,2)
 S YYBIT=$E(TKF,3,4)
 S CVVBIT=$$GET^W4GTVCH(HZBIT,1,"V","CVV2")
 S TZBIT=$$GET^W4GTVCH(HZBIT,1,"V","ASHTZ")
 ;
 D PUTDFLT^W4TMPPAY(VT,"CREDITCARDNUMBER",CABIT)
 D PUTDFLT^W4TMPPAY(VT,"MM",MMBIT)
 D PUTDFLT^W4TMPPAY(VT,"YY",YYBIT)
 D PUTDFLT^W4TMPPAY(VT,"CVV",CVVBIT)
 D PUTDFLT^W4TMPPAY(VT,"IDNUMBER",TZBIT)
 Q
 ;
IFMZSM(HZM,VT) ;
 S HZM=$G(HZM)
 S VT=$G(VT)
 I VT'=1 Q 0 
 I '$$MZSM^W4PRM Q 0
 I $$HZM^W4MSD(HZM)!$$TAKEAWAY^W4HZMST(HZM) Q 1
 Q 0
 ;;I $G(@$$^W4ORD@(HZM,"SGMZAUTO")) Q 0 
 ;;Q 1 
 ;
MZSMWAIT() ; 
 N ST S ST="<br><br><br>"_$$^%W1DICT("WAIT4PAYMENT") 
 S ST="<span style=""font-size:"_$$^W3FSZ(26)_";color:brown"">"_ST_"</span>"
 Q ST 
 ;
SBMCRCARD() ; 
  N OK S OK=0
  I $G(%ARG("VT"))=3&($G(%ARG("VZ"))="CRCARD")&(+$$^W6=0) D
  .I $G(%ARG("FAST"))&(+$$FCASUM^W4PRM=0) S OK=1 Q
  .N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'HZM
  .I $$HZM^W4MSD(HZM) S OK=1
  .I $$TAKEAWAY^W4HZMST(HZM)&'$G(@$$^W4PRM@("NOEMVTA")) S OK=1
  .I $$HZM^W4MSL(HZM)&$G(@$$^W4PRM@("DLVEMV")) S OK=1
  Q OK 
 ;
  ; 
DLVEMV() ;  
 I $G(@$$^W4PRM@("DLVEMV",$$^W4MYDVN)) Q 1 
 I $G(@$$^W4PRM@("DLVEMV")) Q 1 
 Q 0 
 ;
NOEMVTA() ; 
 I $G(@$$^W4PRM@("NOEMVTA",$$^W4MYDVN)) Q 1
 I $G(@$$^W4PRM@("NOEMVTA")) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYKB0
W4PAYKB ; [ 24.03.22 10:09 ] [ 20.03.22 14:29 ] [ 18.03.22 15:55 ] 
 ;--- SET TO ^W4ORD : MZ, HNH1, CH
 ;    ASR - W4ASR
 ;    V   - W4TRAN
 ;-----------------------------------------------------------
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D KILL^%W1PRM("ER") ; 19/05/19
 ;
 S DEV=$$^W4MYDVN
 S VT=$$VT
 ;
 S HZM=$$GETP^%W1PRM("HZM")
 ;
 I VT=3,$G(%ARG("SHOW"))=0,$$EMV^W4PRM,$$EMVNUM^W4POSEMV(DEV),'$$EMVARM D DIVEMV G END
 
 ;;I VT=7,$$^WCEMV,$G(%ARG("VZ"))="CIBCARD",$$EMVNUM^W4POSEMV(DEV),'$$EMVARM D DIVEMV G END
 I VT=7,$$^WCEMV,$G(%ARG("VZ"))="CIBCARD" D DIVEMV,^W4CIBEMV D:$G(HZM) PAYCIB(HZM) G END
 Q:$G(%ARG("SHOW"))=0
 ;
 I $G(%ARG("VT"))=13,$G(%ARG("VZ"))="CARD" Q
 ;
 I $L($G(%ARG("SHOW"))) D SHOW Q
 ;
 S VT=$$VT Q:VT=""
 S VZ=$$VZ Q:VZ=""
 D PUT^%W1PRM("VT",VT)
 D PUT^%W1PRM("VZ",VZ)
 ;
 S NP=$$GETP^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4PAY(VT,VZ)
 ;
 I VT=2,VZ="SUM" D
 .D PUTDFLT^W4TMPPAY(VT,"CHS",$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 ;
 I VT=2.5,VZ="SUM" D
 .D PUTDFLT^W4TMPPAY(VT,"SUMMVBNK",$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 .D PUTDFLT^W4TMPPAY(VT,"DATP",$ZD($H,"DDMMYY"))
 ;
 I VT=6,VZ="SUM",NP=1,$$SKIP(VT,"WHOSUBMIT") D  G END
 .D ANS(VT,"WHOSUBMIT")
 .D PUT^%W1PRM("NP",2)
 .W "<script>",!
 . W "SbmOk('1')",!
 .W "</script>",!
 ;
 I VT=3,$$GETP^%W1PRM("EMVARM") K @$$^W4TMPPAY@(VT,"CREDITCARDNUMBER","SKIP")
 ;
 I VT=3,VZ="CRCARD" I NP=1,$$SKIP(VT,"CREDITCARDNUMBER") D  G END
 .D ANS(VT,VZ)
 .D PUT^%W1PRM("NP",4)
 .W "<script>",!
 . W "SbmOk('END')",!
 .W "</script>",!
 ;
 I VT=3,VZ="CRCARD",NP=2,$$EMV^W4PRM,'$$EMVARM,$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")="" D  G END
 .D DIVEMV
 .W "<script>",!
 . W "SbmOk('END')",!
 .W "</script>",!
 ;
 I VZ="CMNT"!(VZ="CMNTABC") D  Q
 .N LASTHNH,LI
 .S LI=$O(@$$^W4ORD@(HZM,"CB","HNH1",9999),-1) Q:'LI
 .S LASTHNH=+@$$^W4ORD@(HZM,"CB","HNH1",LI)
 .W "<div align=""center"" dir="""_$$^%W1DIR_"""'>",!
 .W "<br /><span "
 . W " style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_""" >"
 . W $$^%W1DICT("DISCONT")_"</span>",!
 .W "<br /><span "
 . W " style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_";color:red"" >"
 . W $J(LASTHNH,2,2)_"</span>",!
 . N CNTRY S CNTRY=$$COUNTRY^W3PRM
 . N MTB S MTB=$P($G(^[$$^W3MAIN]W3CNTRY(CNTRY)),"\",2)
 . W "<span style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_""" >"
 . W $$H2U^%L1FRM(MTB)_"</span>"
 . W " <br />",!
 .Q:VZ="CMNTABC"
 .
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("PGDN")
 .S MGROUP(1,"TO")="PageDown()"
 .S MGROUP(2)=$$^%W1DICT("PGUP")
 .S MGROUP(2,"TO")="PageUp()"
 .S MGROUP("HG")="40%"
 .D ^W4SHEET("","","",2)
 .Q
 ;
 ;--------------------- SHOW NUMPAD  -----------------------
 ;
 ;S NP=$$GETP^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4PAY(VT,VZ)
 Q:NP=""
 ;
 I VT=3,VZ="CRCARD",NP=1 D
 .Q:$G(@$$^W4PRM@("VIZSVNO"))
 .N NMB
 .I $G(HZM) S NMB=$$NMB^W4HZMST(HZM) Q:'$$^W4MSL(NMB)
 .I $$GETP^%W1PRM("CB") S NMB=$$GETP^%W1PRM("LKH")
 .Q:'$G(NMB)
 .Q:'$$CADFLT^W4L(NMB)
 .D PUTDFLT^W4TMPPAY(VT,"CREDITCARDNUMBER",$$CADFLT^W4L(NMB))
 .D PUTDFLT^W4TMPPAY(VT,"MM",$$MMCA^W4L(NMB))
 .D PUTDFLT^W4TMPPAY(VT,"YY",$$YYCA^W4L(NMB))
 .D PUTDFLT^W4TMPPAY(VT,"CVV",$$CVV^W4L(NMB))
 .N TZCA S TZCA=$$TZCA^W4L(NMB) I TZCA="" S TZCA=$$TZ^W4L(NMB)
 .D PUTDFLT^W4TMPPAY(VT,"IDNUMBER",TZCA)
 ;
 I VT=4,VZ="SUM",NP>2 D
 .Q:'$G(HZM)
 .N DFLT S DFLT=$$GET^W4TMPPAY(VT,"HZMLK")
 .I DFLT="",HZM>0,$$HZM^W4MSL(HZM) S DFLT=$$H2U^%L1FRM($$HZMLAK^W4HZMST(HZM))
 .D PUTDFLT^W4TMPPAY(VT,"HZMLK",DFLT)
 ;
 I $$GETP^%W1PRM("TLDFLT"),VT=7,VZ="SUM",NP=1 D
 .D PUTDFLT^W4TMPPAY(7,"SUM",$$ITRA^W4HZMST(HZM))
 .D PUTDFLT^W4TMPPAY(7,"CARDNUMBER",$$GCOUPTEL^W4HZMST(HZM))
 ;
 I VT=11,VZ="RCPNMB",NP=2,$$TLCARD^W4PRM,$G(HZM) D
 .N NOMTL S NOMTL=$$GET^W4TMPPAY(11,"TLNMB")
 .I 'NOMTL S RES="ERR*NONOMTL" Q
 .S NOMTL=+NOMTL
 .S VL=$$SUM^W4TLMTN(+NOMTL)
 .I $$PAID^W4TLMTN(HZM)!$$HZMPAID^W4TLMTN(NOMTL) S VL=0
 .D PUTDFLT^W4TMPPAY(VT,"SUM",VL)
 .;;D PUTSKIP^W4TMPPAY(VT,"SUM",VL)
 .;;D ANS(VT,"SUM")
 ;
 I VT=14,VZ="SUM" D
 .Q:'$G(HZM)
 .N DFLT S DFLT=$$ITRA^W4HZMST(HZM)
 .N NKD S NKD=$$BSNKD^W4HZMST(HZM)
 .I NKD<DFLT S DFLT=NKD
 .D PUTDFLT^W4TMPPAY(VT,"SUM",$J(DFLT,2,2))
 ;
 S CD=$$NM^W4PAY(VT,VZ,NP) Q:CD=""
 S %ARG("HEAD")=CD
 S OU=$$OU^W4PAY(VT,VZ,NP) I OU,'$G(%ARG("IN")) Q
 I $G(%ARG("OU")) Q
 S VL=$$GET^W4TMPPAY(VT,CD)
 I VL?.P S VL=$$DFLT^W4TMPPAY(VT,CD)
 I CD="CARDNUMBER",VL["." S VL=""
 ;
 I $$MENU^W4ASK(VT,VZ,NP) D  G END
 .N GLASK S GLASK="^[$$^W3MAIN]W4PAY("""_$$COUNTRY^W3PRM_""")"
 .D INITUR^W4MENU(VT)
 .D MENU^W4SCASK(VT,VZ,NP)
 ;
 ;
 I VT'=14,$$IFSUM(VT,CD) D
 .I VT<5!(VT=7)!(VT=10)!(VT=15),$$SOAD^W4HZMST(HZM)>1!($$SOAD^W4HZMST(HZM)<-1) D
 ..I VZ'="PAYM" S %ARG("TOPAY")=1
 ..K %ARG("DIV")
 ..I $$GET^%W1PRM("DIV"),$P($$GETP^%W1PRM("DIV"),";",3)=VT S %ARG("DIV")=1
 .
 .I VT=6,$$TSHL^W4HZMST(HZM)>0 S %ARG("PROC")=3 Q
 .I VT=6,$$TSHL^W4HZMST(HZM)<0 S %ARG("PROC")=2 Q
 .S %ARG("CALC")=2
 ;
 N DL S DL=$$DL^W4PAY(VT,VZ,NP)
 I DL<15 S DL=15_$TR(DL,"0123456789","")
 ;
 I VZ="RCPNMB" S %ARG("MINUS")=1
 ;
 ;;ZWR %ARG
 ;
 D KB^W4KB(DL,VL)
 ;
END Q
 ;
 ;
SBM(PRM) ; ------ SUBMIT WAS PRESSED --> VL  --> ^TMPPAY
 N HZM,%SC
 S HZM=$$GET^%W1PRM("HZM") Q:HZM="" "0;NOORD"
 N NP,VT,VZ,VL,DL,CMD,TOPAY
 S NP=+$$GET^%W1PRM("NP")
 S VT=+$$GET^%W1PRM("VT")
 S VZ=$$GET^%W1PRM("VZ")
 S:VZ["UNDEF" VZ=""
 I 'VT Q "0;NOVT2"
 I '$L(VZ) Q "0;NOVZ"
 ;
 ;
 I $$^W4ISORD(HZM),$$MSL^W4MSL(HZM),VT'=6,$D(@$$^W4TMPORD)#10 D
 .N VT1 S VT1=VT I VT>6 S VT1=4
 .D PUT^W3HZMST(JB,"CODTS",VT1)
 .D PUT^W4HZMST(HZM,"CODTS",VT1)
 ;
 S:NP<1 NP=$$FIRST^W4PAY(VT,VZ)
 S:NP<1 NP=1
 ;;W "NP="_NP,!
 S VL=$P(PRM,";")
 S CD=$$NM^W4PAY(VT,VZ,NP)
 ;
 I VT=11,CD="TLNMB",VL<0 D  Q "0;PSW;PSWCOUP"
 .D PUT^W4TMPPAY(VT,CD,VL)
 ;
 ;
 N OK S OK=1
 S TOPAY=""
 ;
 I VT=1,CD="SUM",VL>5000 Q "0;PAYSUMTOOBIG;"
 I CD="SUM",VL>99000 Q "0;PAYSUMTOOBIG;"
 ;
 I $$IFSUM(VT,CD),VT'=6,VT'=11 D  I 'OK Q OK  ;VT<6
 .S TOPAY=$P(PRM,";",2)
 .I TOPAY-$$ITRA^W4HZMST(HZM)>.05,$$ITRA^W4HZMST(HZM)>0 S OK="0;PAYSUMTOOBIG;" Q
 .I TOPAY-$$ITRA^W4HZMST(HZM)<-.05,$$ITRA^W4HZMST(HZM)<0 S OK="0;PAYSUMTOOBIG;" Q
 .I 'TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
 .D PUT^W4TMPPAY(VT,"TOPAY",TOPAY)
 ;
 I VT>1,VZ="SUM",$$NOTIPALL^W4PRM D  I 'OK Q OK
 .I VL-TOPAY>.05&(TOPAY>0) S OK="0;SUMTOOBIG;" Q
 .I VL-TOPAY<-.05&(TOPAY<0) S OK="0;SUMTOOBIG;" Q
 ;
 I VT=4!(VT=7)!(VT=8)!(VT=10),VZ="SUM",$G(@$$^W4PRM@("NOTIPAS")) D  I 'OK Q OK
 .I VL-TOPAY>.05&(TOPAY>0) S OK="0;SUMTOOBIG;" Q
 .I VL-TOPAY<-.05&(TOPAY<0) S OK="0;SUMTOOBIG;" Q
 ;
 D PUT^%W3DEB("W4PAYKB-SBM","NP=NP &CD=CD& VT=VT & VZ=VZ &PRM=PRM&VL=VL&TOPAY=TOPAY")
 S DL=$$DL^W4PAY(VT,VZ,NP)
 N CMD S CMD=$$CMD^W4PAY(VT,VZ,NP)
 N MAXTIP S MAXTIP=$$GETP^%W1PRM("MAXTIP")
 ;
 I VT=1,VZ="TIP" S CD="TIP",CMD="" I $$MAXTIP^W4PRM,MAXTIP,VL>MAXTIP Q "0;SUMTOOBIG;"
 ;
 D PUT^%W3DEB("W4PAYKB-SBM","CD=CD")
 I CD="" Q "0;NOCD"
 N OK S OK=1
 ;
 ;;S ^AA("W4PAYKB-SBM","CD")=CD
 ;
 I VT=3,CD="SUM" D  I 'OK Q OK
 .I VL-TOPAY>.05&(TOPAY>0),$$NOTIPCA^W4PRM=1 S OK="0;SUMTOOBIG;" Q
 .I VL-TOPAY<-.05&(TOPAY<0),$$NOTIPCA^W4PRM=1 S OK="0;SUMTOOBIG;" Q
 ;
 I VT=3,CD="SUM" D
 .N DEV S DEV=$$^W4MYDVN
 .;;I $$EMV^W4PRM,'$$GET^%W1PRM("CB"),$$EMVNUM^W4POSEMV(DEV),'$$EMVARM,$$^W4MSD($$GETP^%W1PRM("NMB")) D
 .I $$EMV^W4PRM,$$EMVNUM^W4POSEMV(DEV),'$$EMVARM D
 ..D SETTMPPAY3
 ;
 I $L(CMD) X CMD I $D(%SC("ER")) S OK="0;"_$G(%SC("ER","MSG")) Q OK
 ;
 I VT=3,VZ="CRCARD",VL[";",VL["?" D
 .S VL=$P($P(VL,";",2),"?")
 ;
 I VT=4,VZ="SUM",CD="HZMLK" D  I 'OK Q OK
 .N LK S LK=$$GET^W4TMPPAY(VT,CD)
 .I $G(HZM)>0,$$HZM^W4MSD(HZM),$$ASM(LK),VL?.P S OK="0;MUSTAUTHNO"
 .Q:'OK
 .I $L(VL),VL'?1N.N S VL=$$INVH^%L1FRM(VL)
 ;
 I VT=4,VZ="CUST",NP=1 D  I 'OK Q OK
 .N LKHN,PRMCIB,PRMTB
 .S LKHN=VL S:'$$DEFISLK^W4PRM LKHN=$TR(VL,"-","") Q:'$$^W4ISCDLK(LKHN)
 .S PRMCIB=$G(@$$^W4PRM@("CIBUS"))
 .S PRMTB=$G(@$$^W4PRM@("10BIS"))
 .I LKHN=PRMCIB S OK="0;PSW" Q
 .I PRMCIB,LKHN=$G(@$$^W4GL("P1EZL")@(PRMCIB)) S OK="0;PSW" Q
 .I PRMCIB,$D(@$$^W4GL("P1EZLI")@(PRMCIB,LKHN)) S OK="0;PSW" Q
 .I PRMTB,LKHN=PRMTB S OK="0;PSW" Q
 .I PRMTB,LKHN=$G(@$$^W4GL("P1EZL")@(PRMTB)) S OK="0;PSW" Q
 .I PRMTB,$D(@$$^W4GL("P1EZLI")@(PRMTB,LKHN)) S OK="0;PSW" Q
 ;
 D PUT^W4TMPPAY(VT,CD,VL)
 ;
 K @$$^W4TMPPAY@(VT,CD,"DFLT")
 K @$$^W4TMPPAY@(VT,CD,"SKIP")
 ;
 ;-----  CHECK IF PAYMENT NOT > SUM (EXCEPT HMK - CHECK IN SUM LABEL )
 I $G(HZM)<0,'$$^W4ISPART(HZM),$$IFSUM(VT,CD),$$TOOMUCH(VL,HZM) Q "0;SUMTOOBIG;"
 ;
 I VT=14,CD="SUM",$$TOOMUCH(VL,HZM) Q "0;SUMTOOBIG;"  ;  - BSL POINTS
 I VT=14,CD="SUM",VL>$$BSNKD^W4HZMST(HZM) Q "0;NOTENOUGHPOINTS;"
 ;
 I VT=14 D  Q "END"
 .N NKDPAY S NKDPAY=$J(VL,2,2)
 .S @$$^W4ORD@(HZM,"BSL","NKDPAY")=NKDPAY
 .N PARNKD S PARNKD=+$$PARNKD^WBPRM
 .D ^W4CLRHZM(PARNKD,$$^W4ORD_"("_HZM_")")
 .N LIND S LIND=$O(@$$^W4ORD@(HZM,99999),-1)+1
 .S @$$^W4ORD@(HZM,LIND)=PARNKD_"\\"_$$SHEM^W4P(PARNKD)_"\"_-NKDPAY_"\1\\"_-NKDPAY_"\zecewp yenin\\@@@+"
 .D PUT^W4HZMST(HZM,"TSHL",$J($$TOTORD^W4HZMST(HZM),2,2))
 ;
 ;
 N CB S CB=$$GETP^%W1PRM("CB")
 ;
 I $$IFSUM(VT,CD),'CB,$G(HZM),VT>1,VT'=6,VT'=11,$$TOOMUCH(VL,HZM) D  Q RES
 .N MAXTIP
 .S MAXTIP=VL-TOPAY
 .I VT'=1,$$MAXTIP^W4PRM,MAXTIP>(0.5*$$TSHL^W4HZMST(HZM)),$$TSHL^W4HZMST(HZM)>10 S RES="0;SUMTOOBIG;" Q
 .S RES="0;TIP;"_MAXTIP
 .D PUT^%W1PRM("MAXTIP",MAXTIP)
 ;
 I $$IFSUM(VT,CD),'CB,$G(HZM),VT>1,VT<6!(VT=7)!(VT=8),$$TOOMUCH(VL,HZM) Q "0;SUMTOOBIG;"
 N OKANS
NEXT ;
 S NP=$$NEXT^W4PAY(VT,VZ,NP)
 ;;S ^AA("W3PAYKB-SBM","VT")=VT
 ;;S ^AA("W3PAYKB-SBM","VZ")=VZ
 ;;S ^AA("W3PAYKB-SBM","NP")=NP
 ;
 I NP="" D  Q "END"
 .I VT=1,$$GETP^%W1PRM("VZ")'="TIP" D MZM Q  ; -- S ^P1HZ(HZM,"CB","MZ",NP)=SUM*TIME*MLZR*POS*ODEF
 .I VT=3,VZ="SUMCAJ" D  Q
 ..N SOLEK,SUM,TOPAY,TIP
 ..S SUM=$$GET^W4TMPPAY(3,"SUM")
 ..S SOLEK=$$GET^W4TMPPAY(3,"SOLEK")
 ..S TOPAY=$$GET^W4TMPPAY(3,"TOPAY")
 ..N TIP S TIP=SUM-TOPAY I TIP<0 S TIP=0
 ..D CAJ
 ;
 S OKANS=0
 N CD S CD=$$NM^W4PAY(VT,VZ,NP) I $L(CD) D  G:OKANS NEXT
 .I $$SKIP(VT,CD) D ANS(VT,CD)
SBME ;
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
 ;
SKIP(VT,CD) ;
 I $D(@$$^W4GL("W4ANS")@(VT,CD)) Q 1
 ;
 I $$ISSKIP^W4TMPPAY(VT,CD) Q 1
 Q 0
 ;
ANS(VT,CD) ;
 N A,VL D
 .I $$ISSKIP^W4TMPPAY(VT,CD) S A=$$SKIP^W4TMPPAY(VT,CD) Q
 .S A=$G(@$$^W4GL("W4ANS")@(VT,CD))
 ;
 X "S VL="""_A_"""" 
 D PUT^W4TMPANS(VT,CD,VL) S OKANS=1
 Q
 ;
 ;
TOOMUCH(VL,HZM,ITRA) ;
 I $G(ITRA)="" S ITRA=$$ITRA^W4HZMST(HZM)
 I $G(VT),$$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
 I VL-ITRA>.05&(ITRA>0) Q 1
 I VL-ITRA<-.05&(ITRA<0) Q 1
 Q 0
 ;
CNC(PRM) ;   ----- CANCEL WAS PRESSED
 N NP,VT,VZ,VL,DL
 S NP=+$$GET^%W1PRM("NP")
 S VT=+$$GET^%W1PRM("VT")
 S VZ=$$GET^%W1PRM("VZ")
 I 'VT Q "0;NOVT3"
 I '$L(VZ) Q "0;NOVZ"
 S:NP<1 NP=$$FIRST^W4PAY(VT,VZ)
 I VT=6,VZ="SUM",$D(@$$^W4GL("W4ANS")@(VT,"WHOSUBMIT")) Q "BEG"
 S VL=PRM
 S NP=$$PREV^W4PAY(VT,VZ,NP) I NP="" Q "BEG"
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
 ;
PAY2ORD(STAM) ;------- PAYMENTS PROCESSING FROM Pay()
  ;------------------- ( EXCEPT VALUECARD -> VVCARD^W4CARDKB )
  N GLORD D GLORD^W4HZMST
  N VT,ER S ER="OK"
  S VT=+$$GET^%W1PRM("VT")
  S VZ=$$GET^%W1PRM("VZ")
  I 'VT Q "ERR*NOVT4"
  I '$L(VZ) Q "ERR*NOVZ"
  ;
  N M,HZM
  S HZM=$$GETP^%W1PRM("HZM") Q:HZM="" "ERR*ORDERNOTDEFINED"
  ;
  D ^W4CBOLD(HZM)
  ;
  N TOPAY S TOPAY=$$GET^W4TMPPAY(VT,"TOPAY")
  I 'TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
  N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
  ;
  I VT=1 D PAYCASH(HZM)
  ;
  I VT=2.5 D
  .D PUT^W4TMPPAY(2,"NCHECK","B")
  .N CHS S CHS=$$GET^W4TMPPAY(2.5,"SUMMVBNK")
  .D PUT^W4TMPPAY(2,"CHS",CHS)
  .D PUT^W4TMPPAY(2,"TZ","")
  .D PUT^W4TMPPAY(2,"BSN","B")
  .D PUT^W4TMPPAY(2,"HESH","B")
  .N DATP S DATP=$$GET^W4TMPPAY(2.5,"DATP")
  .D PUT^W4TMPPAY(2,"DATP",DATP)
  .K @$$^W4MAIN("TMPPAY")@(2.5)
  .S VT=2
  ;
  I VT=2 D
  .N IND S IND=$O(@GLORD@("CB","CH",999),-1)+1
  .N HZM S HZM=$$GET^%W1PRM("HZM")
  .N CHS S CHS=$$GET^W4TMPPAY(2,"CHS")
  .S @GLORD@("CB","CH",IND)=CHS_"*"_$$GET^W4TMPPAY(2,"NCHECK")_"*"_$$GET^W4TMPPAY(2,"TZ")_"*"_$$GET^W4TMPPAY(2,"BSN")_"*"_$$GET^W4TMPPAY(2,"HESH")_"*"_$$GET^W4TMPPAY(2,"DATP")
  .D SETPOS^W4HZMST(HZM,"CH",IND)
  .;;S TIP=$$STIP^W4HZMST(HZM)
  .N TIP S TIP=$J(CHS-TOPAY,2,2)
  .
  .I TIP>0&TSHL>0!(TIP<0&(TSHL<0)) D
  ..S $P(@GLORD@("CB","CH",IND),"*",12)=TIP
  ..D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
  .
  .S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
  .I PORTDISP D
  ..N TX1,TX2 S TX2=""
  ..S TX1=$J($$ITRA^W4HZMST(HZM),2,2)_" : melyzl" 
  ..S TX2="wiy "_$J(CHS,2,2)_" mley"
  ..D ^W4TX2DSP(PORTDISP,TX1,TX2)
  ;
  ;I VT=3 --> w4payvw.jsp --> w4payc.jsp --> W4PAYC --> W4PAYCA
  ;
  S ITRA=$$ITRA^W4HZMST(HZM)
  ;
  I VT=4 D
  .N SHTL,SHTLAL,ASRL
  .S SHTL=$$GET^W4TMPPAY(4,"SHTL")
  .S SHTLAL=$$GET^W4TMPPAY(4,"SHTLAL")
  .S ASRL=$$GET^W4TMPPAY(4,"ASRL")
  .I $$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
  .
  .I SHTL D  Q ; -- SHTL - SHULAM BE TLUSHIM, SHTLAL - SHULAM BE POAL
  ..I SHTL>SHTLAL D
  ...N LKHNH S LKHNH=$$GET^W4TMPPAY(4,"LKHNH")
  ...S LKHNH=LKHNH+(SHTL-SHTLAL)
  ...D PUT^W4TMPPAY(4,"LKHNH",LKHNH)
  ..D PUT^W4TMPPAY(4,"ASR",SHTLAL)
  ..I $$TOOMUCH(SHTL,HZM,ITRA) D  ;--- WAS (SHTL,"",ITRA)
  ...N TIPAS S TIPAS=SHTL-ITRA
  ...D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
  .
  .I $$TOOMUCH(ASRL,HZM,ITRA) D
  ..N TIPAS S TIPAS=ASRL-ITRA
  ..D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
  ;
  N RES S RES=""
  ;---------- CIBUS ------
  I VT=7 D PAYCIB(HZM) I +RES S CIBRES="CIBERR*"_$P(RES,"*")_"*"_$P(RES,"*",8)_"*"_$P(RES,"*",9) D PUT^%W3DEB("W4PAYKB-PAY2ORD","CIBRES=CIBRES") Q CIBRES
  ;
  ;-------------------- 10BIS ----------------
  I VT=10 D PAYTB(HZM) I +RES Q "TBERR*"_$P(RES,"*")_"*"_$$CLWEB^%L1FRM($P(RES,"*",2))
  ;
  ; -------------------------- TLUSH MATANA ---------------------------
  I VT=11,'$$GCOUPIT^W4PRM,$$GET^W4TMPPAY(11,"TLNMB")>0 D  I RES'="" Q RES
  .S RES=""
  .N ITRA,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,P1TNOPR,P1HZHB2,PTKCNT,LASTASR
  .S ITRA=$$ITRA^W4HZMST(HZM)
  .N ASR,MAKOR,HBASR
  .N NOMCB S NOMCB=$$GET^W4TMPPAY(11,"TLNMB") I 'NOMCB S RES="ERR*NONOMTL" Q
  .I NOMCB>0 D ^W4CBGET(+NOMCB)
  .I NOMCB>0,$D(W4CB)<10 S RES="ERR*NOCB*"_+NOMCB Q
  .I NOMCB>0,$G(W4CB("LKH"))="" S RES="ERR*NOCUST" Q
  .N LK S LK="" I NOMCB>0 S LK=W4CB("LKH")
  .
  .I NOMCB>0,NOMCB'["-" D  Q:RES'=""
  ..N HZMPAID S HZMPAID=$P($G(@$$GLCB^W4CBGET(LK,NOMCB)@("PAID",1)),"\") Q:'HZMPAID
  ..S RES="ERR*GIFTPAID*"_HZMPAID Q
  .
  .N NOMTL S NOMTL=""
  .
  .I NOMCB>0,NOMCB["-" D  Q:RES'=""
  ..S NOMTL=$P(NOMCB,"-",2) Q:'NOMTL
  ..N HZMPAID S HZMPAID=$P($G(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL)),"\",4) Q:'HZMPAID
  ..S RES="ERR*GIFTPAID*"_HZMPAID Q
  .
  .N SUM S SUM=$$GET^W4TMPPAY(11,"SUM")
  .S TLMNPAY=$G(W4CB("TOT"))
  .S NOMTL=""
  .
  .I NOMCB>0,NOMCB["-" D
  ..S NOMTL=$P(NOMCB,"-",2) Q:'NOMTL
  ..S TLMNPAY=+$G(W4CB("TLMN",NOMTL))
  .
  .I NOMCB>0,+SUM'=+TLMNPAY S RES="ERR*SUMNOTEQRCP" Q
  .I NOMCB>0,SUM>ITRA S RES="ASKTLMN*"_ITRA_"*"_+SUM_"*"_LK_"*"_NOMCB Q
  .I NOMCB>0 D PAIDTLMN(LK,NOMCB,HZM,SUM,"","")
  .K @$$^W4TMPPAY
  ;
  ;
  I VT=11,$$GCOUPIT^W4PRM!($$GET^W4TMPPAY(11,"TLNMB")<0) D  I RES'="" Q RES
  .S RES=""
  .N ITRA
  .S ITRA=$$ITRA^W4HZMST(HZM)
  .N ASR,MAKOR,HBASR
  .N NOMTL S NOMTL=$$GET^W4TMPPAY(11,"TLNMB")
  .I 'NOMTL S RES="ERR*NONOMTL" Q
  .N SUM S SUM=$$GET^W4TMPPAY(11,"SUM")
  .I NOMTL>0,NOMTL["-"!'$D(@$$^W4GL("W4TLMTN")@(+NOMTL))!(+SUM'=+$G(^(+NOMTL))),$G(@$$^W4GL("W4TLMTNI")@(NOMTL)) D
  ..S NOMTL=^(NOMTL)
  .I NOMTL>0,'$D(@$$^W4GL("W4TLMTN")@(+NOMTL)) S RES="ERR*NONOMTL*"_NOMTL Q
  .N HZMPAID S HZMPAID=$$HZMPAID^W4TLMTN(NOMTL)
  .I HZMPAID S RES="ERR*GIFTPAID*"_HZMPAID Q
  .N LK S LK=$$RCP^W4TLMTN(NOMTL)
  .N HZMKR S HZMKR=$$HZM^W4TLMTN(NOMTL)
  .I HZMKR="" S HZMKR="CB"_$$CB^W4TLMTN(NOMTL)
  .S TLMNPAY=$$SUM^W4TLMTN(NOMTL)
  .I NOMTL>0,+SUM'=+TLMNPAY S RES="ERR*SUMNOTEQRCP" Q
  .I SUM>ITRA S RES="ASKTLMN*"_ITRA_"*"_+SUM_"*"_LK_"*"_NOMTL Q
  .D PAIDTLMIT(LK,NOMTL,HZM,SUM,HZMKR)
  .K @$$^W4TMPPAY
  ;
  I VT=12 D  ; --------------- OVER MAX PAYM ( CREATE INVOICE --> CB ( MAXHMK) )
  .N CARD,CD,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,ASR,BLIPR,P1TNOPR
  .S ASRL=$$GET^W4TMPPAY(VT,"SUM")
  .S TIPAS=$$GET^W4TMPPAY(VT,"TIP")
  .S LKHNH=0
  .S ASR=ASRL
  .D ROUNDASR
  .I ASR>0,ASRL<0 S RES=-1
  .S HZMLK=HZM
  .S (LKHN,CUSN)=$$CUSN^W4CUSDET
  .S LKAH=0
  .S (HRA,LKHR)=""
  .I '$$FAST^W4MTAW($$NMB^W4HZMST(HZM)) S (BLIPR,P1TNOPR)=""
  .D PUT^%W1PRM("HBNOW",1)
  .D ^W4ASR
  .K @$$^W4ORD@(HZM,"S")
  ;
  ;
  I VT=15 D  I +RES Q "ERR*"_$P(RES,"*")_"*"_$$CLWEB^%L1FRM($$H2U^%L1FRM($P(RES,"*",2)))_"*"_$P(RES,"*",3)
  .N CARD,CD,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,ASR,BLIPR,P1TNOPR
  .S CARD=$$GET^W4TMPPAY(VT,"CARDNUMBER")
  .S ASRL=$$GET^W4TMPPAY(VT,"SUM")
  .S RES=$$PAY^W4COUPPH(HZM,ASRL,CARD) Q:RES
  .
  .I $$TOOMUCH(ASRL,HZM,ITRA) D
  ..S TIPAS=ASRL-ITRA
  ..D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
  .
  .S LKHNH=$G(COUPPH("DISC"))
  .S HZMLK=$G(COUPPH("TRID"))
  .S ASR=$G(COUPPH("SUM"))
  .D ROUNDASR
  .S (LKHN,CUSN)=$$LKH^W4COUPPH
  .S LKAH=0
  .S (HRA,LKHR)=""
  .I '$$FAST^W4MTAW($$NMB^W4HZMST(HZM)) S (BLIPR,P1TNOPR)=""
  .N LAST S LAST=$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1)
  .D ^W4ASR
  .N LAST1 S LAST1=$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1)
  .N LASTCP S LASTCP=$O(@$$^W4ORD@(HZM,"CPN",9999),-1)
  .I LAST1>LAST,$G(LASTCP) D
  ..S @$$^W4ORD@(HZM,"CPN",LASTCP,"NOMASR")=LAST1
  .K @$$^W4ORD@(HZM,"S")
  ;
  D ^W4T(HZM,1) ; ---- !!!!!!!!!!!!!!!!
  I '$D(NOKILLPAY) K @$$^W4TMPPAY
  D PUT^%W3DEB("W4PAYKB-PAY2ORD","ER=ER")
  Q $$SPA^%L1FRM(ER)
  ;
  ;
PAIDTLMN(LK,NOMCB,HZM,SUM,LKHNH,TIPAS) ;
  N (JB,%ARG,%REM,LK,NOMCB,HZM,SUM,LKHNH,TIPAS,HBASR)
  I $G(LK)=""!($G(NOMCB)="") Q
  S HZMLK=""
  S (LKHN,CUSN)=LK
  S LKAH=0
  S (HRA,LKHR)=""
  N LASTASR
  S ASR=SUM
  ;;D ROUNDASR
  S LASTASR=$O(@$$^W4ORD@(HZM,"CB","ASR",99999),-1)
  S LASTPAID=$O(@$$GLCB^W4CBGET(LK,NOMCB)@("PAID",999),-1)+1
  S @$$GLCB^W4CBGET(LK,NOMCB)@("PAID",LASTPAID)=HZM_"\"_ASR_"\"_$$^W4DZ_"\"_$H
  ;
  I NOMCB["-" D
  .N NOMTL S NOMTL=$P(NOMCB,"-",2) Q:'NOMTL
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",4)=HZM
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",5)=ASR
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",6)=$$^W4DZ
  .S $P(@$$GLCB^W4CBGET(LK,NOMCB)@("TLMN",NOMTL),"\",7)=$H
  ;
  D PUT^%W1PRM("HBNOW",1)
  ;
  D ^W4ASR
  ;
  I $O(@$$^W4ORD@(HZM,"CB","ASR",99999),-1)'>LASTASR Q
  ;
  I $G(HBASR) D
  .S RESPRN=$$PRINT^W4LHBZ(LK,HBASR,HZM)
 Q
 ;
 ;
PAIDTLMIT(LK,NOMTL,HZM,SUM,HZMKR) ;
 N LAST S LAST=$O(@$$^W4ORD@(HZM,99999),-1)+1
 N TLMCDPAY S TLMCDPAY=+$$GCOUPPY^W4PRM
 N TLMCDPAYNM S TLMCDPAYNM=$$SHEM^W4P(TLMCDPAY)
 I TLMCDPAYNM="" S TLMCDPAYNM="dpzn yelz yenin"
 N HR0 S HR0=$G(HZMKR)_" 'qn dpnfda dpwpy "
 I $E(HZMKR,1,2)="CB" S HR0=$E(HZMKR,3,10)_" 'qn dlawa dpwpy "
 N HR S HR=HR0_NOMTL_" dpzn yelza mley"
 I NOMTL<0 S HR=-NOMTL_" 'qn ipevig yelza mley"
 ;
 S @$$^W4ORD@(HZM,LAST)=TLMCDPAY_"\\"_TLMCDPAYNM_"\"_-SUM_"\1\\"_-SUM_"\"_HR
 D PUT^W4TLMTN(NOMTL,"HZMPAID",HZM)
 D PUT^W4TLMTN(NOMTL,"PAID",SUM)
 D PUT^W4TLMTN(NOMTL,"DTTS",$$^W4DZ)
 D ^W4CALC(HZM)
 Q
 ;
 ;
CLEAR ;
  D KILL^W4TMPPAY
  D KILL^W4PAY
  K @$$^W4MAIN("TMPSHOW")
  K @$$^W4MAIN("TMPSTAGE")
  D KILL^%W1PRM("ER")
  ;;D KILL^%W1PRM("S21")
  D PUT^%W1PRM("VT","")
  D PUT^%W1PRM("VZ","")
  D PUT^%W1PRM("NP","")
  Q
  ;
VOZVR
 D CLEAR
 Q
  ;
  ;
PUT(VT,NP,V,TO) ; OUT --> @TO
 S:'$D(@TO) @TO=""
 N IND,INX,FLD,DL,J
 S IND=$$WHERE^W4PAY(VT,NP)
 S DL=$$DL^W4PAY(VT,VZ,NP)
 I $P(DL,",")["." S V=$TR($J(V,+DL)," ",0)
 I DL["," S V=$J(V,$P(DL,",",2),$P(DL,",",2))
 F J=1:1:$L(IND,"+") D
 .S INX=$P(IND,"+",J) Q:'INX
 .I INX["*" S V=V*$P(INX,"*",2)
 .I INX'["," S $P(@TO,"*",INX)=V Q
 .S FLD=$P(@TO,"*",+INX)
 .S $P(FLD,$P(INX,",",2),$P(INX,",",3))=V
 .S $P(@TO,"*",+INX)=FLD
 Q
 ;
 ;
MZM ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 D NOZERO Q:$G(%SC("ER"))
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM) ; ITRARL
 ;
 I $$^W4CLOSE(HZM) Q
 ;;I TSHL>0&(ITRA'>0) Q
 ;;I TSHL<0&(ITRA'<0) Q
 ;
 N ODEFMZ,IND
 N GLORD D GLORD^W4HZMST
 I '$D(TOPAY) S TOPAY=VL
 S ODEFMZ=VL-TOPAY
 I ODEFMZ<0&(TOPAY>0)!(ODEFMZ>0&(TOPAY<0)) S ODEFMZ=0
 S IND=$O(@GLORD@("CB","MZ",999),-1)+1
 S @GLORD@("CB","MZ",IND)=$J(VL,2,2)_"*"_$H_"*"_$$LASTMLZ^W4HZMST(HZM)_"*"_$$^W4MYDVN_"*"_ODEFMZ_"*"
 I $G(TIP) D
 .S $P(@GLORD@("CB","MZ",IND),"*",6)=TIP
 S VL=$J(VL,2,2)
 D
 .D PUT^W4HZMST(HZM,"ODEF",$$SODEF^W4HZMST(HZM))
 .D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
 Q
 ;
 ;
PAYCASH(MZM) ;
 N MZM S MZM=$$SMZ^W4HZMST(HZM)
 N ODEF,ODEFMZ,STIPVT
 S STIPVT=$$STIPVT^W4HZMST(HZM,"MZ")
 S ODEFMZ=$$SODEFMZ^W4HZMST(HZM)-STIPVT
 ;
 I ODEFMZ<0&(TSHL>0)!(ODEFMZ>0&(TSHL<0)) S ODEFMZ=0,STIPVT=0
 D PUT^W4HZMST(HZM,"MZM",$$SMZ^W4HZMST(HZM)-ODEFMZ)
 D PUT^W4HZMST(HZM,"ODEF",ODEFMZ)
 S PORTDISP=$$DISP^W4PLUK($$^W4MYDVN)
 ;
 I PORTDISP D
 .N TX1,TX2 S TX2=""
 .S TX1=$J(MZM,2,2)_" : mley" 
 .S TX2=$J(ODEFMZ,2,2)_" : scer" 
 .D ^W4TX2DSP(PORTDISP,TX1,TX2)
 Q
 ;
 ;
CAJ ;
 I '$G(SUM) Q
 I '$G(SOLEK) Q
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I $$^W4CLOSE(HZM) Q
 ;
 N IND
 N GLORD D GLORD^W4HZMST
 S TIP=$G(TIP)
 S IND=$O(@GLORD@("CB","V",999),-1)+1
 S @GLORD@("CB","V",IND)="$V"_SOLEK_"*****"_SUM_"*"_SUM
 I $G(TIP) D
 .S $P(@GLORD@("CB","V",IND),"*",6)=TIP
 S VL=$J(VL,2,2)
 D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
 Q
 ;
 ;
CIB ;
 D NOZERO Q:$G(%SC("ER"))
 S VL=$J(VL,2,2)
 Q
 ;
 ;
HNH ;
 N HZM S HZM=$$GET^%W1PRM("HZM")
 I VL["%" S VL=$J($$ITRA^W4HZMST(HZM)*VL*.01,2,2)
 D NOZERO Q:$G(%SC("ER"))
 ;
 I $G(@$$^W4PRM@("IGUL"))=1 D
 .N VL0 S VL0=VL
 .S VL=$J(VL,0,0)
 .I VL>$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)>0)!(VL<$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)<0)) S VL=VL0
 ;
 I VL>$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)>0)!(VL<$$ITRA^W4HZMST(HZM)&($$TSHL^W4HZMST(HZM)<0)) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="SUMTOOBIG"
 ;
 D ^W4ADDHNH(HZM,VL)
 Q
 ;
 ;
SUM ;
 N PRHMK S PRHMK=$$HMK^W4LHB
 I PRHMK D  Q:$G(%SC("ER"))
 .N (JB,%ARG,%REM,PRHMK,VL,%SC)
 .S SUMTD=0
 .I PRHMK=2 D GLTMP^W4DOC S SUMTD=$P($G(@GLTMP),"\",6)
 .I PRHMK=1 S SUMTD=$P($G(@$$TMPHBK^W4HSBYAD),"\",2)
 .I VL>SUMTD D
 ..S %SC("ER")=1
 ..S %SC("ER","MSG")="SUMTOOMUCH"
 ;
 I $$^W4CBFROM,$$GETP^%W1PRM("SUMHB"),VL>$$GETP^%W1PRM("SUMHB") D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="SUMTOOMUCH"
 ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 S VL=$J(VL,2,2)
 Q
 ;
 ;
CA ;
 I VL="",$$EMV^W4PRM Q
 I $L(VL)<7 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERTOOSHORT"
 I VL[";" S VL=$P(VL,";",2) I VL["?" S VL=$P(VL,"?")
 S VL=$TR(VL,"-","")
 Q
 ;
MM ;
 I VL>12 D  Q
 .S %SC("ER")=1
 I VL<1 D  Q
 .S %SC("ER")=1
 S VL=$TR($J(VL,2)," ",0)
 Q
 ;
YY ;
 I VL<$ZD($H,"YY") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="PAGTOKEF"
 ;
 I +VL=+$ZD($H,"YY") D  Q
 .I $$GET^W4TMPPAY(3,"MM")<$$MM^%L1DC($H) D
 ..S %SC("ER")=1
 ..S %SC("ER","MSG")="PAGTOKEF"
 .
 S VL=$TR($J(VL,2)," ",0)
 Q
 ;
P1 ;
 I VL>$$GET^W4TMPPAY(3,"SUM") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="PAYMENTTOOBIG"
 ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 Q
 ;
PN ;
 I VL>18 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBEROFPAYMENTSTOOBIG"
 ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 N PC S PC=0
 ;
 I VL D  ; -- VL - PAYMENTS NUMBER
 .N SUM S SUM=$$GET^W4TMPPAY(3,"SUM")
 .N P1 S P1=$$GET^W4TMPPAY(3,"P1")
 .N PN S PN=VL I 'P1 D
 ..S PN=VL-1,P1=$J(SUM/VL,2,2)
 ..;;D PUT^W4TMPPAY(3,"P1",P1) ; -- 9/9/20
 .
 .S PC=0
 .I PN S PC=$J((SUM-P1)/PN,2,2)
 .
 .D  ;I $G(@$$^W4PRM@("ROUND")) D  ; -- 9/9/20
 ..S PC=$J(PC,0,0)
 ..D PUT^W4TMPPAY(3,"P1",SUM-(PC*PN))
 ..D PUT^W4TMPPAY(3,"PN",PN)
 ;
 D PUT^W4TMPPAY(3,"PC",PC)
 Q
 ;
 ;
TZ D NOZERO1 Q:$G(%SC("ER"))
 I '$$^W4TZ(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="PSW;WRONGIDNUMBER"
 Q
 ;
CVV ;
 I VL'?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;3"
 Q
 ;
ZIP ;
 I VL'?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;5"
 Q
 ;
ASH4 ;
 I VL'?4N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;4"
 Q
 ;
TIME ;
 S VL=$ZD(VL,"DD/MM/YY 24:60")
 Q
 ;
TLAS ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 S VL=$J(VL,2,2)
 N LKHN S LKHN=$$LK Q:'$$^W4ISCDLK(LKHN)
 N TLUSH S TLUSH=$$TLUSH^W4L(LKHN)
 N TLAL I +VL'=+TLUSH!(TLUSH'["=") D
 .S TLAL=VL
 .D PUT^W4TMPPAY(4,"TLAL",TLAL)
 N KMTL S KMTL=$$GET^W4TMPPAY(4,"ASR")\VL
 D PUT^W4TMPPAY(4,"KMTL",KMTL)
 Q
 ;
KMTL ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 N SHTL S SHTL=$$GET^W4TMPPAY(4,"TLUSH")*VL
 D PUT^W4TMPPAY(4,"SHTL",SHTL)
 I $$TOOMUCH(SHTL,HZM) D
 .D PUT^W4TMPPAY(4,"TIPAS",SHTL-$$ITRA^W4HZMST(HZM))
 N SHTLAL S SHTLAL=$$GET^W4TMPPAY(4,"TLAL")*VL
 D PUT^W4TMPPAY(4,"SHTLAL",SHTLAL)
 Q
 ;
MLZR ;
 I VL["MVC1-" D  Q
 .S VL=$$H2U^%L1FRM("rvan")_" "_$P($P(VL,"-",1,2),"MVC",2)
 S VL=$$^W4NAME(VL)
 Q
 ;
ARM(STAM)
 N VIZ S VIZ=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER")
 I $$^W4MG(VIZ) Q 0
 Q 1
 ;
CAER(STA) ;
 Q $G(@$$^W4GL("KOD")@(+STA))
 ;
LKHN ; --- LKH ----> PRATIM --> TMPPAY
 I $L(VL)<4,$TR(VL,"-","")?1N.N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="MINLENN;4"
 ;
 I '$$^W4ISCDLK(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FINDCUST"
 ;
 I '$$D^W4L(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOCUST"
 ;
 I '$$ISCR^W4L(VL) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOISCR"
 ;
 I $$MAZAV^W4L(VL)<1 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CUSTOMCLOSED"
 ;
 D PUT^W4TMPPAY(4,"LKHN",VL)
 ;
 N VLADD
 S VLADD=$$LKH^W4L(VL)
 D PUT^W4TMPPAY(4,"LKHN1",VLADD)
 ;
 S VLADD=$$LKHR^W4L(VL)
 N VL1 S VL1=VL
 I VLADD S VL1=VLADD
 D PUT^W4TMPPAY(4,"LKHR",VLADD)
 ;
 S VLADD=$$LKHR1^W4L(VL)
 D PUT^W4TMPPAY(4,"LKHR1",VLADD)
 ;
 S VLADD=$$GDCR^W4L(VL1)
 D PUT^W4TMPPAY(4,"GODAS",VLADD)
 ;
 S VLADD=$$ITRA^W4L(VL1)
 D PUT^W4TMPPAY(4,"ITRAS",VLADD)
 ;
 S VLADD=$$HNH^W4L(VL1)
 ;
 D
 .N HZM S HZM=+$$GETP^%W1PRM("HZM")
 .N LKHN S LKHN=VL1
 .I LKHN,+$$HNHAH^W4HZMST(HZM)=+$$AH^W4L(LKHN),$$NOKFLLK^W4PRM S VLADD="" ; - EIN KEFEL HANAHOT
 .I LKHN,$$HNHHR(HZM),$$NOKFLLK^W4PRM S VLADD=""; -- 3/02/22
 ;
 D PUT^W4TMPPAY(4,"LKAH",VLADD)
 ;
 Q
 ;
 ;
ASRL ;
 D NOZERO Q:$G(%SC("ER"))
 ;
 N LKAH,LKHNH S LKHNH=0,ASR=VL
 S LKAH=$$GET^W4TMPPAY(4,"LKAH")
 I $$GETP^%W1PRM("AHL") S LKAH=0 ; -- 07/12/21
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I $$HZM^W4MSL(HZM),$$HNHAH^W4HZMST(HZM)?1N.E S LKAH=0
 ;
 I LKAH D
 .S LKHNH=$J(VL*LKAH*.01,2,2)
 .S ASR=VL-LKHNH
 ;
 D ROUNDASR
 N LK S LK=$$LK Q:'$$^W4ISCDLK(LK)
 N LK1 S LK1=LK I $$LKHR^W4L(LK) S LK1=$$LKHR^W4L(LK)
 N GWUL S GWUL=$$GDCR^W4L(LK1)-$$ITRA^W4L(LK1)
 ;
 I GWUL'>0 D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITOVER"
 ;
 I ASR>GWUL D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITOVERDRAFT;"_GWUL
 ;
 I $$GDAY^W4L(LK)'>0 G ASRLPUT
 ;
 N GWDAY S GWDAY=$$GDAY^W4L(LK)-$$ITRAYOM^W4L(LK,$$^W4DZ)
 ;
 I GWDAY'>0 D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITDAYOVER"
 ;
 I ASR>GWDAY D  Q:$G(%SC("ER"))
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CREDITDAYOVERDRAFT;"_GWDAY
 ;
ASRLPUT ;
 D PUT^W4TMPPAY(4,"ASR",ASR)
 D PUT^W4TMPPAY(4,"LKHNH",LKHNH)
 Q
 ;
 ;
CMP I VL'?1N.N."-".N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="FINDCMP"
 Q
 ;
ASM(STAM)
 N LK S LK=$$LK
 I $$ASM^W4L(LK) Q 1
 Q 0
 ;
HZMLK ;
 N HZM Q:'$G(NOMASR)
 S HZM=$$GET^%W1PRM("HZM")
 N LK S LK=$$GET^W4GTVCH(HZM,NOMASR,"ASR","LKHN") Q:'$$^W4ISCDLK(LK)
 S VL=$$GET^W4GTVCH(HZM,NOMASR,"ASR","HZMLK")
 ;
 I LK=$$^W4CIBLKH D
 .S VL=VL_" <br><span style=""font-size:"_$$^W3FSZ(9)_";color:green"" >"
 .S VL=VL_$$^%W1DICT("CARD")_$$^WCKBCARD($$GET^W4GTVCH(HZM,NOMASR,"ASR","CIBCARD"))_"</span>"
 ;
 I $$IFVC^WV(HZM,NOMASR) D
 .S VL=VL_" <br><span style=""font-size:"_$$^W3FSZ(9)_";color:green"" >"
 .N CARD S CARD=$$GET^WV(HZM,NOMASR,"CARD")
 .S CARD=+$P(CARD,"=")
 .S VL=VL_$$^%W1DICT("CARD")_CARD_"</span>"
 Q
 ;
 ;
NAME ;
 N HZM Q:'$G(NOMASR)
 ;
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 N LK1 S LK1=$$H2U^%L1FRM($$GET^W4GTVCH(HZM,NOMASR,"ASR","LKHN1"))
 S VL=LK1
 ;
 I $$IFVC^WV(HZM,NOMASR) D
 .N NAME S NAME=$$GET^WV(HZM,NOMASR,"NAME")
 .S VL=VL_" <br><span style=""font-size:"_$$^W3FSZ(9)_";color:green"" >"
 .S VL=VL_$$H2U^%L1FRM(NAME)_"</span>"
 Q
 ;
 ;
HRA ;
 N HZM Q:'$G(NOMASR)
 ;
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 N HR S HR=$$H2U^%L1FRM($$GET^W4GTVCH(HZM,NOMASR,"ASR","HRA1"))
 S VL=HR
 I $E(HR,1,4)="BSL;" S VL="BSL"
 Q
 ;
 ;
TSTCHK(STAM) ;
 N HZM,LKHN,OU
 S OU="OK"
 S HZM=$$GET^%W1PRM("HZM")
 S LKHN=$$GET^%W1PRM("LKHN")
 I LKHN,'$$ISCH^W4L(LKHN) S OU="NOISCH" G ETSTCHK
 I $$^W4PSWCHK S OU="PSW"
ETSTCHK Q OU
 ;
 ;
CHS ;
 D NOZERO Q:$G(%SC("ER"))
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I HZM,$$NOTIPALL^W4PRM D
 .N TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
 .I VL-TOPAY>.05&(TOPAY>0)!(VL-TOPAY<-.05&(TOPAY<0)) D  Q:$G(%SC("ER"))
 ..S %SC("ER")=1
 ..S %SC("ER","MSG")="SUMTOOBIG"
 S VL=$J(VL,2,2)
 Q
 ;
NCHECK ;
 I VL="B"!(VL="a") Q
 D NOZERO Q:$G(%SC("ER"))
 Q
 ;
BSN ;
 D NOZERO Q:$G(%SC("ER"))
 I VL'?5N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;5"
 Q
 ;
 ;
HESH ;
 I VL="B"!(VL="a") Q
 D NOZERO Q:$G(%SC("ER"))
 Q
 ;
DATP ;
 I VL?5N S VL="0"_VL
 I VL'?6N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NDIGITSONLY;6"
 I $E(VL,1,2)<1!($E(1,2)>31)!($E(VL,3,4)<1)!($E(VL,3,4)>12) D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="DATENOTVALID"
 I $$^%L1DC(VL,3)-$H>120 D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="DATETOOLONG"
 Q
 ;
SSHUL(HZM)
 Q $$SSHUL^W4HZMST(HZM)
 ;
SSHULA(HZM)
 Q $$SAS^W4HZMST(HZM)
 ;
LASTSTAGE(STAM) ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q " "
 Q $G(@$$^W4MAIN("TMPSTAGE")@(IND))
 ;
ADDSTAGE(STAGE)
 Q:$G(STAGE)=""
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 S @$$^W4MAIN("TMPSTAGE")@(IND+1)=STAGE
 Q
 ;
KILLSTAGE ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q
 S STAGE=$G(^(IND)) Q:STAGE=""
 N N
 ;
 K @$$^W4MAIN("TMPSTAGE")@(IND)
 Q
 ;
KILLVAR(STAGE)
 N N
 S N="" F  S N=$O(@$$^W4PAY@(3,STAGE,N)) Q:N=""  D
 .N CD S CD=$P(^(N),";") Q:CD=""
 .K @$$^W4TMPPAY@(3,CD)
 Q
 ;
INITASR ;
 D PUT^%W3DEB("W4PAYKB-INITASR","VT=VT")
 D CLEAR
 N LKHDFLT S LKHDFLT=$$LKHN^W4HZMST(+$$GET^%W1PRM("HZM"))
 I $G(VT)="4TB" S LKHDFLT=$$^W4TBLKH S VT=4
 D PUTDFLT^W4TMPPAY(VT,"ASRL",$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 D PUT^W4TMPPAY(VT,"LKHN",LKHDFLT)
 D CREATE^W4PAY(VT,"LKHN")
 D PUT^%W1PRM("VT",VT)
 Q
 ;
INITTB ;
 D CLEAR
 N RKVSUM S RKVSUM="SUM"
 I VT=2 S RKVSUM="CHS"
 I VT'=6 D PUTDFLT^W4TMPPAY(VT,RKVSUM,$$ITRA^W4HZMST(+$$GET^%W1PRM("HZM")))
 D PUT^%W1PRM("VT",VT)
 D CREATE^W4PAY(VT,"SUM")
 Q
 ;
INITTL ;
 D KILLVAR("TL")
 D ADDSTAGE("SUM")
 D CREATE^W4PAY(4,"TL")
 N LKHN S LKHN=$$LK
 N TLUSH S TLUSH=$$TLUSH^W4L(LKHN)
 N TLAL S TLAL=+$P(TLUSH,"=",2)
 I TLUSH,TLUSH<2 S TLUSH=$$ITRA^W4HZMST($$GETP^%W1PRM("HZM"))
 D PUT^W4TMPPAY(4,"TLUSH",+TLUSH)
 D PUT^W4TMPPAY(4,"TLAL",+TLAL)
 D PUT^W4TMPPAY(4,"SHTL",0)
 D PUT^W4TMPPAY(4,"SHTLAL",0)
 Q
 ;
LK(STAM)
 Q $$GET^W4TMPPAY(4,"LKHN")
 ;
NOZERO ;
 I VL'?."-".N.".".N!(VL="") D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERONLY"
 ;
NOZERO1 I 'VL D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOZERO"
 Q
 ;
 ;
DELPAYM(PRM) ; --- From w4payvw.DelPaym() -- UD-E PRED TASHLUMA IZ SPISKA
 N VT,IND,NOM,HZM
 K @$$^W4MAIN("TMPANS")
 S PRM=$$CLEAR^%L1FRM(PRM)
 S VT=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 ;
 S HZM=$$GET^%W1PRM("HZM")
 S %REM=$$GET^%W1PRM("REM")
 ;
 Q $$DELPAY(HZM,VT,IND,NOM)
 ;
 ;
DELPAY(HZM,VT,IND,NOM) ;-- BITUL TASHLUM BE HAZMANA PTUHA
 D PUT^%W3DEB("W4PAYKB-DELPAY","HZM=HZM & VT=VT & IND=IND & NOM=NOM ")
 ;
 D ^W4CBOLD(HZM)
 ;
 D KILL^W4TMPPAY
 ;
 S ER="OK"
 ;
 I VT=1 D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .N I,R,STG,STR,VL,TOPAY,TIP
 .N A S A=$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .S VL=-A
 .S TOPAY=$P(A,"*",5)-A
 .S TIP=-$P(A,"*",6)
 .D MZM
 .N MZM S MZM=$$SMZ^W4HZMST(HZM)
 .N OD S OD=$$SODEF^W4HZMST(HZM)
 .S $P(@$$^W4ORD@(HZM,"CB"),"\",2)=MZM-OD
 .D ^W4T(HZM,1)
 .D ^W4SGNDEL(HZM,IND,NOM)
 ;
 ;
 I VT=2 D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .N HZM S HZM=$$GET^%W1PRM("HZM")
 .N I,STR,STG
 .S STR=$$GETST^W4GTVCH("CH")
 .S STG=$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .F I=1:1:$L(STR,"*") I $L($P(STR,"*",I)) D
 ..D PUT^W4TMPPAY(2,$P(STR,"*",I),$P(STG,"*",I))
 .N LNOM S LNOM=$O(@$$^W4ORD@(HZM,"CB",IND,999),-1)+1
 .S @$$^W4ORD@(HZM,"CB","CH",LNOM)=-$$GET^W4TMPPAY(2,"CHS")_"*"_$$GET^W4TMPPAY(2,"NCHECK")_"*"_$$GET^W4TMPPAY(2,"TZ")_"*"_$$GET^W4TMPPAY(2,"BSN")_"*"_$$GET^W4TMPPAY(2,"HESH")_"*"_$$GET^W4TMPPAY(2,"DATP")
 .S $P(@$$^W4ORD@(HZM,"CB","CH",LNOM),"*",12)=-$$GET^W4TMPPAY(2,"TIPCH")
 .D SETPOS^W4HZMST(HZM,"CH",LNOM)
 .D PUT^W4HZMST(HZM,"TIP",$$STIP^W4HZMST(HZM))
 .D ^W4T(HZM,1)
 .D ^W4SGNDEL(HZM,IND,NOM)
 ;
 ;
 I VT=4!(VT=7) D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .N I,R,STG,STR
 .S STR=$$GETST^W4GTVCH("ASR")
 .
 .N LKHN,LKHNH,ASR,CIBUID,HZMLK,HRA1
 .S LKHN=$$GET^W4GTVCH(HZM,NOM,"ASR","LKHN")
 .S CIBUID=$$GET^W4GTVCH(HZM,NOM,"ASR","CIBUID")
 .S HZMLK=$$GET^W4GTVCH(HZM,NOM,"ASR","HZMLK")
 .S HRA1=$$GET^W4GTVCH(HZM,NOM,"ASR","HRA1")
 .
 .I LKHN=$$^W4CIBLKH,'$D(@$$^W4ORD@(HZM,"CIB")) D  I RES S ER=+RES Q  ; -- CIBUS
 ..S RES=$$^WCCANC(HZMLK,CIBUID)
 .
 .I $$D^WV(HZM,NOM) D  I RES'="OK" S ER=RES Q  ; ------ VCARD
 ..N TRID S TRID=$$GET^WV(HZM,NOM,"TRID")
 ..S RES=$$^WVCANC(HZM,"",NOM,TRID)
 .
 .I LKHN=$$^W4TBLKH D  I RES S ER=RES Q  ; -- TENBIS
 ..N TBCARD S RES=-1
 ..S TBCARD=$$GET^W4GTVCH(HZM,NOM,"ASR","TBCARD")
 ..S ASR=$$GET^W4GTVCH(HZM,NOM,"ASR","ASR")
 ..S LKHNH=$$GET^W4GTVCH(HZM,NOM,"ASR","LKHNH")
 ..;
 ..D:TBCARD&ASR  Q:RES
 ...S RES=$$^WTBCANC(HZM,TBCARD,ASR+LKHNH) Q:RES
 ...S LKHNH=$G(TBVL("DISCORD"))
 ...S HZMLK=$G(TBVL("TRID"))
 ...S TBCARD=$G(TBVL("CARD"))
 ...S TBRECID=$G(TBVL("RECID"))
 .
 .I LKHN=$$COUPPH^W4PRM D  I RES S ER="<!> [ "_$P(RES,"*")_" ] "_$P(RES,"*",2) Q  ; -- TENBIS
 ..D DELCPASR^W4HZBIT(HZM,HZM,NOM)
 .
 .I HRA1["BSL;" D
 ..D BITBSLN^W4HZBIT(HZM,NOM)
 .
 .I $D(@$$^W4ORD@(HZM,"MP")) D
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"MP","PAY",N)) Q:N=""  D
 ...I NOM=$G(^(N)) D
 ....D BITMPN^W4HZDEL(N)
 .
 .S STG=$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .F I=1:1:$L(STR,"*") I $L($P(STR,"*",I)) D
 ..D PUT^W4TMPPAY(4,$P(STR,"*",I),$P(STG,"*",I))
 .
 .F R="ASR","LKHNH","KMTL","TIPAS","TSFMH" D
 ..D PUT^W4TMPPAY(4,R,-$$GET^W4TMPPAY(4,R))
 .
 .D ^W4T(HZM,1)
 .D ^W4SGNDEL(HZM,IND,NOM)
 ;
 ;
 I VT=6 D  Q ER
 .I $D(@$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")) S ER="PAYMENTALREADYDELETED" Q
 .S VL=-$G(@$$^W4ORD@(HZM,"CB",IND,NOM))
 .D HNH
 .D ^W4SGNDEL(HZM,IND,NOM)
 ;
 Q "OK"
 ;
 ;
SIGNDEL ;
 S @$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")=$H_"\"_$$GET^%W1PRM("MLZR")_"\"_$$^W4MYDVN
 Q
 ;
VT(STAM) ;
 I $L($G(%ARG("VT"))) Q %ARG("VT")
 Q $$GET^%W1PRM("VT")
 ;
VZ(STAM) ;
 I $L($G(%ARG("VZ"))) Q %ARG("VZ")
 Q $$GET^%W1PRM("VZ")
 ;
NEXTNP(PRM) ;
 N VT,VZ,NP
 S VT=$P(PRM,";")
 S VZ=$P(PRM,";",2)
 S NP=$$GET^%W1PRM("NP")
 S NP=$$NEXT^W4PAY(VT,VZ,NP) I NP="" Q "END"
 D PUT^%W1PRM("NP",NP)
 Q 1
 ;
MTAW(STAM) ;
 I $$^W4MTAW Q 1
 I $$POS^W4MTAW Q 1
 Q 0
 ;
CIBHOW(STAM) ;
 D ADDSTAGE("HOW")
 N HOW,VZ
 S VT=7
 S HOW=$$GET^W4TMPPAY(VT,"CIBKIND")
 I 'HOW Q 0
 I HOW=1 S VZ="CIBCARD" D CREATE^W4PAY(VT,VZ) G ECH
 I HOW=2 S VZ="CMPCARD" D CREATE^W4PAY(VT,VZ) G ECH
 I HOW=3 S VZ="INPCARD" D CREATE^W4PAY(VT,VZ) G ECH
ECH Q VZ
 ;
VCACT(STAM) ;
 N HOW,VZ,VT,HZM
 ;
 S VT=8
 ;
 I $$NOBONUS^WV D  G EVC
 .D CLEAR^W4SCASK
 .D PUT^W4TMPPAY(VT,"ACTIONKIND","PAY")
 .S VZ="PAY"
 ;
 D ADDSTAGE("HOW")
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q 0
 S HOW=$$GET^W4TMPPAY(VT,"ACTIONKIND")
 D CLEAR^W4SCASK
 S VZ=""
 I HOW="PAY" S VZ="PAY" G EVC
 I HOW="BONUS" S VZ="BONUS" G EVC
 I HOW="CANCELBONUS" S VZ="CANCELBONUS" G EVC
 I HOW="SHOWBONUS" S VZ="SHOWBONUS" G EVC
EVC Q VZ
 ;
 ;
SETTIP ;
 N HZM S HZM=$$GET^%W1PRM("HZM") Q:'$$^W4ISORD(HZM)
 N VL,TOPAY S TOPAY=$$ITRA^W4HZMST(HZM)
 S VL=$$GET^W4TMPPAY(1,"SUM")
 I $$GET^W4TMPPAY(1,"TOPAY") S TOPAY=$$GET^W4TMPPAY(1,"TOPAY")
 N TIP S TIP=VL-TOPAY
 I TIP<0,TOPAY'<0 Q
 I TIP>0,TOPAY<0 Q
 S VL=TOPAY D MZM
 Q
 ;
INVOICE(STAM) ;
 D CLEAR
 N VT,VZ,SUM,HZM
 S HZM=+$$GET^%W1PRM("HZM")
 S SUM=$$ITRA^W4HZMST(HZM)
 S VT=12
 S VZ="SUM"
 D PUT^W4TMPPAY(VT,"SUM",SUM) ; --- FOR INVOICE
 ;
 D PUT^%W1PRM("VT",VT)
 D PUT^%W1PRM("VZ",VZ)
 ;
 N NOKILLPAY S NOKILLPAY=""
 Q $$PAY2ORD
 ;
 ;
IFSUM(VT,CD) ;
 I $G(CD)="SUM" Q 1
 I $G(VT)=2,CD="CHS" Q 1
 I $G(VT)=3,CD="P1" Q 1
 I $G(VT)=4,CD="ASRL" Q 1
 I $G(VT)=6,CD="HNH" Q 1
 Q 0
 ;
PUTTIP ; -- PUT CASH TIP
 N TIP,ODEF,TSHL,HZM S TIP=$$GET^W4TMPPAY(1,"TIP")
 S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 S TSHL=$$TSHL^W4HZMST(HZM)
 I TIP>0,TSHL<0 Q
 I TIP<0,TSHL>0 Q
 ;
 S VL=$$GET^W4TMPPAY(1,"SUM")
 N TOPAY S TOPAY=$$GET^W4TMPPAY(1,"TOPAY")
 D PUT^%W3DEB("W4PAYKB-PUTTIP","TOPAY=TOPAY & TIP=TIP & SUM=VL ")
 D MZM
 ;
 D PUT^%W1PRM("VZ","SUM")
 D KILL^%W1PRM("TOPAY")
 Q
 ;
TIPCASH(STAM) ;
 I $$GETP^%W1PRM("VT")=1&($$GETP^%W1PRM("VZ")="TIP") Q 1
 Q 0
 ;
VLDFLT(PRM) ;
 N NP,OU,CD,CL
 S VT=$P(PRM,";") I VT="" Q ""
 S VZ=$P(PRM,";",2) I VZ="" Q ""
 S NP=$$GET^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4PAY(VT,VZ)
 I NP="" Q ""
 S CD=$$NM^W4PAY(VT,VZ,NP) Q:CD="" ""
 S VL=$$GET^W4TMPPAY(VT,CD)
 I 'VL S VL=$$DFLT^W4TMPPAY(VT,CD)
 Q VL
 ;
 ;
SHOW ;
 I $G(%ARG("SHOW"))=1 D  Q
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("BACK")
 .S MGROUP(1,"TO")="Back()"
 .I $G(%ARG("VZ"))="SHOWONLY" S MGROUP(1,"TO")="Back('HREF')"
 .S MGROUP("HG")="20%"
 .S TOP="1"
 .D ^W4SHEET("","","",TOP)
 ;
 I $G(%ARG("SHOW"))="TLASEND"!($G(%ARG("SHOW"))="ASEND") D  Q  ;-- HAKAFA BE TLUSHIM
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("SUBMIT")
 .S MGROUP(1,"TO")="Pay()"
 .S MGROUP(2)=$$^%W1DICT("CANCEL")
 .S MGROUP(2,"TO")="Back('"_%ARG("SHOW")_"')"
 .S MGROUP("HG")="40%"
 .S TOP="1"
 .D ^W4SHEET("","","",TOP)
 ;
 I $G(%ARG("SHOW"))="TIP" D  Q  ;-- TIP
 .I $$VT=1 D  Q
 ..K %ARG("VZ")
 ..D PUT^%W1PRM("VZ","TIP")
 ..S %ARG("HEAD")="TIP"
 ..S %ARG("CALC")=2
 ..D KB^W4KB(7,$G(%ARG("TIP")))
 ..
 .N MGROUP
 .S MGROUP="CENTER;FSZ16"
 .S MGROUP(1)=$$^%W1DICT("SUBMIT")
 .S MGROUP(1,"TO")="ContTip()"
 .I +$$NOTIPCA^W4PRM=.5 S MGROUP(1,"TO")="Psw()"
 .S MGROUP(2)=$$^%W1DICT("CANCEL")
 .S MGROUP(2,"TO")="BackTip()"
 .S MGROUP("HG")="40%"
 .S TOP="1"
 .N KOT S KOT=$$^%W1DICT("TIPEQ",$J($G(%ARG("TIP")),2,2))_"<ALGN=center"
 .D ^W4SHEET(KOT,"","",TOP)
 Q
 ;
ROUNDASR ;
 N ASR0
 I $G(@$$^W4PRM@("ROUND")) D
 .S ASR0=ASR
 .I $G(@$$^W4PRM@("RNDOWN")) S ASR=$P(ASR,".")
 .S ASR=$J(ASR,0,0)
 .S LKHNH=$G(LKHNH)+ASR0-ASR
 Q
 ;
 ;
PAYTB(HZM) ;  -- TASHLUM TENBIS
 N VT S VT=10
 N CARD,CD,ASR,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,BLIPR,P1TNOPR,TIPAS
 N TBCARD
 S CARD=$$GET^W4TMPPAY(VT,"CARDNUMBER")
 S ASRL=$$GET^W4TMPPAY(VT,"SUM")
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I $$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
 ;
 S RES=$$^WTBPAYK(HZM,ASRL,CARD)
 S RESTB=RES
 I RES D
 .M @$$^W4ORD@(HZM,"TBERR")=TBVL
 .S @$$^W4ORD@(HZM,"TBERR")=RES
 Q:RES  ; -->TBVL()
 ;
 S LKHNH=$G(TBVL("DISCORD"))
 S ASR=ASRL-LKHNH
 D ROUNDASR
 I ASR>0,ASRL<0 S RES=-1
 S HZMLK=$G(TBVL("TRID"))
 S TBCARD=$G(TBVL("CARD"))
 S TBRECID=$G(TBVL("RECID"))
 S (LKHN,CUSN)=$$^W4TBLKH
 S LKAH=0
 S (HRA,LKHR)=""
 I '$$FAST^W4MTAW($$NMB^W4HZMST(HZM)) S (BLIPR,P1TNOPR)=""
 I $$TOOMUCH(ASRL,HZM,ITRA) D
 .S TIPAS=ASRL-ITRA
 .D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
 ;
 D ^W4ASR
 K @$$^W4ORD@(HZM,"S")
 Q
 ;
 ;
PAYCIB(HZM) ;
 N VT S VT=7
 N CARD,CD,ASRL,HZMLK,LKHN,CUSN,LKAH,LKHNH,HRA,LKHR,ASR,BLIPR,P1TNOPR,TIPAS
 N CIBCID,CIBUID,CIBUIC,CIBCARD,CIBKIND
 ;
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I $$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
 S CARD=$$GET^W4TMPPAY(VT,"CARDNUMBER") S:CARD="" CARD=0
 S COMP=$$GET^W4TMPPAY(VT,"COMPANYNUMBER")
 S ASRL=$$GET^W4TMPPAY(VT,"SUM") S:ASRL="" ASRL=0
 S CIBKIND=$$GET^W4TMPPAY(VT,"CIBKIND")
 S @$$^W4GL("WCPROT")@($$^W4DZ,HZM,CARD,ASRL)=$ZD($H,"DD.MM.YY  24:60")_"\"_COMP_"\"_CIBKIND
 D  Q:+RES
 .I CIBKIND=1 S RES=$$^WCPAYC(CARD,ASRL)
 .I CIBKIND=2 S RES=$$^WCPAYCC(COMP,CARD,ASRL)
 .I CIBKIND=3 S RES=$$^WCPAYK(CARD,ASRL)
 .D PUT^%W3DEB("W4PAYKB-PAY2ORD","CIBKIND=CIBKIND & RES=RES")
 ;
 S CIBCARD=$P(RES,"*",4)
 S CIBCID=$P(RES,"*",5),CIBUID=$P(RES,"*",6),CIBUIC=$P(RES,"*",7)
 S HZMLK=$P(RES,"*",3)
 S (LKHN,CUSN)=$$^W4CIBLKH
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S ASR=$P(RES,"*",2) Q:'ASR
 ;;D ROUNDASR
 ;
 I $$TOOMUCH(ASRL,HZM,ITRA) D
 .S TIPAS=ASRL-ITRA
 .D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
 ;
 D ^W4ASR
 K @$$^W4ORD@(HZM,"S")
 Q
 ;
DIVEMV ; 
 W "<div align=""center"" dir="""_$$^%W1DIR_"""'>",!
 N J F J=1:1:3 W "<br>"
 W "<span style=""color:brown;font-size:"_$$^W3FSZ(24)_";font-weight:bold"">"
  W $$^%W1DICT("ENTERCRCARD2EMV")
 W "</span>"
 W "</div>",!
 Q
 ;
EMVARM(STAM) ; 
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I '$$EMV^W4PRM Q 0  ; -- ???
 I $$EMV^W4PRM=2 Q 1
 N DEV S DEV=$$^W4MYDVN
 I '$$EMVNUM^W4POSEMV(DEV)!'$$EMVADR^W4POSEMV(DEV) Q 1
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I NMB,HZM,$$^W4MSL(NMB),HZM>0,'$$TAKEAWAY^W4HZMST(HZM),'$G(@$$^W4PRM@("DLVEMV")) Q 1
 ;
 I $$GETP^%W1PRM("EMVARM") Q 1
 Q 0
 ;
 ;
CRCARDEMV(STAM) ; 
 I $$EMVARM Q 1 
 ; 
 D SETTMPPAY3
 Q 0 
 ;
 ;
SETTMPPAY3 ;
 N VT S VT=3
 S @$$^W4TMPPAY@(VT,"CREDITCARDNUMBER","SKIP")=""
 S @$$^W4TMPPAY@(VT,"YY","SKIP")=50
 S @$$^W4TMPPAY@(VT,"MM","SKIP")=12
 Q
 ;
HNHHR(HZM) ; 
 N SUM S SUM=0 
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D 
 .S A=$G(^(N)) 
 .I $P(A,"\")["%",$P(A,"\",7)<0 S SUM=SUM-$P(A,"\",7) 
 Q SUM 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYM
W4PAYM(ORD,TOPAY,RCVD,COLPAY) ; [ 11.11.25 17:01 ] [ 25.08.25 08:44 ] [ 06.10.24 10:35 ] 
 N (JB,%ARG,ORD,TOPAY,RCVD,COLPAY)
 S DLM=$$DLM
 ;;D W("<br>")
  I $G(ORD)="" S ORD=$$GETP^%W1PRM("HZM")
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ORDER")_" "_ORD_"</span>")
  D W($$NBSP^%L1FRM(5))
  D W($$SPAN("BLACK",12)_$$^%W1DICT("SHULHAN")_" "_$$NMB^W4HZMST(ORD)_"</span>")
 D W("<br><br>")
  ;
  S PAID=0
  ;
  I 'TOPAY,RCVD D
  .S TOPAY=RCVD
  .I TOPAY>$$ITRA^W4HZMST(ORD) S TOPAY=$$ITRA^W4HZMST(ORD)
  ;
  S ITRA=RCVD-PAID
  D W($$SPAN("BROWN",18)_$$^%W1DICT("TOPAY")_" : "_TOPAY_"</span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("RECEIVED")_" : "_RCVD_"</span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("PAID")_" <input id=""paid"" type=""text"" size=""7"" "_$$NOVV_" value="""_$J(PAID,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  I RCVD>TOPAY D
  .D W($$NBSP^%L1FRM(10)) 
  .D W($$SPAN("BROWN",18)_$$^%W1DICT("TIP")_" <input id=""tip"" type=""text"" size=""7"" "_$$NOVV_" value="""_$J(RCVD-TOPAY,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ITRA")_" <input id=""itra"" type=""text"" size=""7"" "_$$NOVV_" value="""_$J(ITRA,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  D W($$NBSP^%L1FRM(10)) 
  ;
 D W("<br>")
 ;
 D W("<br><br>")
 S MAX=COLPAY+1
 I MAX>7 S MAX=7
 S TOP=$$^W4KF(120),HG=$$^W4KF(80*MAX)
 I '$$EMV S HG=HG*2
 D
 .D W("<div id=""divca"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_$$^W4KF(HG)_"px;left:0%;width:100%;overflow:auto"">")
 . D W($$SPAN_$$^%W1DICT("TYPECCPAYMENT")_"</span>") 
 .D W("<table id=""tblca"" width=""100%"" >")
 .D W("<tr>")
 .D W(" <th>"_$$^%W1DICT("NORD")_"</th>")
 .D W(" <th>"_$$^%W1DICT("CREDITCARDNUMBER")_"</th>")
 .I '$$EMV D
 ..D W(" <th>"_$$^%W1DICT("UNTILMMYY")_"</th>")
 ..D W(" <th> CVV </th>")
 .
 .D W(" <th>"_$$^%W1DICT("IDNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("SUM")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TIP")_"</th>")
 .D W(" <th>"_$$^%W1DICT("AUTHORITY")_"</th>")
 .D W(" <th >"_$$^%W1DICT("RESULTCODE")_"</th>")
 .D W(" <th width=""20%"">"_$$^%W1DICT("RESULTMSG")_"</th>")
 .D W("</tr>")
 .
 .S PAY=0,STIP=0
 .
 .N I F I=1:1:COLPAY D
 ..D W("<tr align=""center"">")
 .. D W("<td style=""background-color:light-grey"">"_I_"</td>")
 .. N VL S VL=""
 ..
 .. I $$EMV S VL="value="""_$$^%W1DICT("ENTERCRCARD2EMV")_""" "_$$NOVV
 .. D W("<td><input type=""text"" id=""caid"_I_""" size="""_$$SZ(25)_""" "_$$FOCUS_" "_VL_" onKeyUp=""OnKeyUp(event,this)"" onChange=""TestCA('"_I_"')""></td>")
 ..
 .. I '$$EMV D
 ... D W("<td dir=""LTR"" >") D SELMMYY(I) D W("</td>")
 ... D W("<td><input type=""text"" style=""text-align:center"" id=""cacvv"_I_""" size="""_$$SZ(3)_""" maxlength=""3"" "_$$FOCUS_"></td>")
 ..
 .. D W("<td><input type=""text"" style=""text-align:center"" id=""catz"_I_""" size="""_$$SZ(8)_""" maxlength=""9"" "_$$FOCUS_" ></td>")
 .. I I<COLPAY D
 ... S SUM=$J(RCVD/COLPAY,2,2)
 ... S TIP=$J(RCVD-TOPAY/COLPAY,2,2)
 ... S PAY=PAY+SUM
 ... S STIP=STIP+TIP
 .. I I=COLPAY D
 ... S SUM=$J(RCVD-PAY,2,2)
 ... S TIP=$J(RCVD-TOPAY-STIP,2,2)
 .. D W("<td><input type=""text"" id=""casum"_I_""" size="""_$$SZ(7)_""" maxlength=""9"" value="""_SUM_""" "_$$READONLY_" ></td>")
 .. D W("<td><input type=""text"" id=""catip"_I_""" size="""_$$SZ(7)_""" maxlength=""9"" value="""_TIP_""" "_$$READONLY_" ></td>")
 .. D W("<td><input type=""text"" id=""asm"_I_""" size="""_$$SZ(6)_""" maxlength=""9"" "_$$READONLY(1)_" ></td>")
 .. D W("<td><input type=""text"" id=""cares"_I_""" size="""_$$SZ(3)_""" value="""" "_$$READONLY(1)_" ></td>")
 .. D W("<td id=""res"_I_""" style=""font-weight:bold"">&nbsp;</td>")
 ..D W("</tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 S TOP=TOP+HG ;;+$$^W4KF(50) ; ***
 D W("<div id=""divbut1"" dir=""LTR"" style=""position:absolute;top:"_TOP_"px;height:60px;left:10%;width:80%"">")
 ;;S %ARG("UPDOWN")=1
 D ^W4NUMKB("",19)
 D W("</div>")
 ;
 S TOP=TOP+$$^W4KF(100)
 D W("<div id=""divbut2"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:50px;left:35%;width:30%"">")
 D ^W4SBMBCK
 D W("</div>")
 ;
 D W("<div id=""divbut3"" dir="""_$$^%W1DIR_""" style=""visibility:hidden;position:absolute;top:"_TOP_"px;height:50px;left:35%;width:30%"">")
 D ^W4BCK
 D W("</div>")
 Q
 ;
 ;
W(TXT)
 W TXT
 Q
 ;
CA(STAM) ;
 I CODTS=3 Q 1
 Q 0
 ;
 ;
SELMMYY(I) ;
 S DLM=$$DLM
 D W("<select id=""mmid"_I_""" ")
 D W(">")
 N K F K=1:1:12 D
 .D W("<option value="""_$TR($J(K,2)," ",0)_""" >"_$TR($J(K,2)," ",0)_"</option>")
 ;
 D W("</select>&nbsp;")
 ;
 N YY S YY=$ZD($H,"YY")
 D W("<select id=""yyid"_I_""" ")
 D W(" >")
 F K=1:1:10 D
 .D W("<option value="""_(2000+YY+K-1)_""" ")
 .I K=2 D W("selected=""selected"" ")
 .D W(">"_(YY+K-1)_"</option>")
 D W("</select>")
 Q
 ;
SPAN(COLOR,FSZ) ;
 I $G(FSZ),$$1024^W4WDSCR S FSZ=FSZ-2
 I $G(COLOR)="" S COLOR="green"
 I $G(FSZ)="" S FSZ=14
 Q "<span style=""color:"_COLOR_";font-size:"_$$^W3FSZ(FSZ)_""">"
 ;
 ;
CAMG(JB,PRMCA) ;
 N (JB,%ARG,PRMCA)
 S I=$P(PRMCA,"~") Q:'I
 D KILL^%W1PRM("RES"_JB_"_"_I)
 S CA=$P(PRMCA,"~",2)
 S TZ=$P(PRMCA,"~",3)
 S SUM=$P(PRMCA,"~",4)
 S TIP=$P(PRMCA,"~",5)
 S ASM=$P(PRMCA,"~",6)
 S A=$$PAYCA
 D PUT^%W1PRM("RES"_JB_"_"_I,A)
 Q
 ;
 ;
CAARM(PRMCA) ;
 N (JB,%ARG,PRMCA)
 S CA=$P(PRMCA,"~")
 S MM=$P(PRMCA,"~",2)
 S YY=$P(PRMCA,"~",3)
 S CVV=$P(PRMCA,"~",4)
 S TZ=$P(PRMCA,"~",5)
 S SUM=$P(PRMCA,"~",6)
 S TIP=$P(PRMCA,"~",7)
 S ASM=$P(PRMCA,"~",8)
 Q $$PAYCA
 ;
 ;
PAYCA(STAM) ;
 S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM Q "NOORD;-1;Order number not defined"
 S:ASM="" ASM="0000000"
 I '$G(CA) S CA=""
 D PUT^W4TMPPAY(3,"CREDITCARDNUMBER",CA)
 I $G(MM) D PUT^W4TMPPAY(3,"MM",MM)
 I $G(YY) D PUT^W4TMPPAY(3,"YY",YY)
 I $G(CVV) D PUT^W4TMPPAY(3,"CVV",CVV)
 D PUT^W4TMPPAY(3,"IDNUMBER",TZ)
 ;
 D PUT^W4TMPPAY(3,"SUM",SUM)
 D PUT^W4TMPPAY(3,"TOPAY",SUM-TIP)
 D PUT^W4TMPPAY(3,"AUTHNO",ASM)
 ;
 S RES=$$^W4PAYCA(HZM)
 S $P(RES,";",3)=$$CLWEB^%L1FRM($$H2U^%L1FRM($P(RES,";",3)))
 Q RES
 ;
 ;
DLM(STAM) ;
 Q ";"
 ;
FOCUS(STAM) ;
 N A S A=" onFocus=""SetFocus(this)"" "
 S A=A_" onBlur=""this.style.backgroundColor='white'"" "
 Q A
 ;
READONLY(CENTER) ;
 N ST S ST=$$NOVV ; " readonly=""readonly"" "
 S ST=ST_"style=""background-color:#eaeaea;color:#5a5a5a"
 I $G(CENTER) S ST=ST_";text-align:center"
 S ST=ST_""" "
 Q ST
 ;
SZ(SZ) ;
 I $$1024^W4WDSCR Q (SZ-1)
 Q SZ
 ;
EMV(STAM) ;  
 N DEV S DEV=$$^W4MYDVN
 I $$EMV^W4PRM,$$EMVNUM^W4POSEMV(DEV),'$$EMVARM^W4PAYKB Q 1  ; -- 16/12/21
 Q 0  ; -- 16/12/21
 ;;Q $G(%ARG("EMV")) 
 ;
RESEMV(STAM) ;
 N A,B,STRES,RES,RES1,ASM,VIZ S STRES=""
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "<PUSTO>"
 N N,N1 S N="" F  S N=$O(@$$^W4ORD@(HZM,"EMV",N)) Q:N=""  I N D 
 .S A=$G(^(N)) 
 .;
 .S RES=$$RKV(A,"Result")
 .S RES1=$$RKV(A,"RESULTMESSAGE")
 .S ASM=$$RKV(A,"issuer_auth_num")
 .S VIZ=""
 .F N1="" F  S N1=$O(@$$^W4ORD@(HZM,"EMV",N,1,N1)) Q:N1=""  I N1 D  Q:VIZ
 ..S B=$G(^(N1))
 ..I $P(B,":",2)="xtqn" S VIZ=$P(B,":")
 ..S VIZ=$E(VIZ,$L(VIZ)-3,$L(VIZ))
 .S STRES=STRES_VIZ_"~"_ASM_"~"_RES_"~"_$$CLWEB^%L1FRM($$H2U^%L1FRM(RES1))_"^"
 ;
 I $E(STRES,$L(STRES))="^" S STRES=$E(STRES,1,$L(STRES)-1)
 Q STRES 
 ;
RKV(A,NM) ; 
 N OU S OU=$P(A,""""_NM_""":",2) 
 S OU=$P(OU,",") 
 S:$E(OU)="""" OU=$E(OU,2,$L(OU)-1)
 Q OU 
 ;
NOVV() ; 
 ;;Q "readonly=""readonly"" " 
 Q "disabled=""disabled"" " 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYM1
W4PAYM(ORD,TOPAY,RCVD,COLPAY) ; [ 25.06.18 14:53 ] [ 26.09.17 09:49 ] [ 25.09.17 17:01 ] 
 N (JB,%ARG,ORD,TOPAY,RCVD,COLPAY)
 S DLM=$$DLM
 ;
  I $G(ORD)="" S ORD=$$GETP^%W1PRM("HZM")
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ORDER")_" "_ORD_"</span>")
  D W($$NBSP^%L1FRM(5))
  D W($$SPAN("BLACK",12)_$$^%W1DICT("SHULHAN")_" "_$$NMB^W4HZMST(ORD)_"</span>")
  D W("<br><br>")
  ;
  S PAID=0,PRBIT=0
  ;
  I 'TOPAY,'RCVD,'COLPAY D  ; -- BITUL
  .N HZMBIT
  .S HZMBIT=$$HZMBIT Q:'HZMBIT
  .
  .S TOPAY=$$ITRA^W4HZMST(ORD)
  .S COLPAY=$O(@$$^W4ORD@(HZMBIT,"CB","V",999),-1)
  .S PRBIT=1
  ;
  I 'TOPAY,RCVD D
  .S TOPAY=RCVD
  .I TOPAY>$$ITRA^W4HZMST(ORD) S TOPAY=$$ITRA^W4HZMST(ORD)
  ;
  S ITRA=RCVD-PAID
  D W($$SPAN("BROWN",18)_$$^%W1DICT("TOPAY")_" : "_TOPAY_"</span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("RECEIVED")_" : "_RCVD_"</span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("PAID")_" <input id=""paid"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(PAID,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  ;
  I RCVD>TOPAY&(TOPAY)>0!(RCVD<TOPAY&(TOPAY<0)) D
  .D W($$NBSP^%L1FRM(10)) 
  .D W($$SPAN("BROWN",18)_$$^%W1DICT("TIP")_" <input id=""tip"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(RCVD-TOPAY,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  ;
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ITRA")_" <input id=""itra"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(ITRA,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  D W($$NBSP^%L1FRM(10)) 
  ;
 D W("<br>")
 ;
 D W("<br><br>")
 S MAX=COLPAY+1
 I MAX>7 S MAX=7
 S TOP=$$^W4KF(120),HG=$$^W4KF(60*MAX)
 D
 .D W("<div id=""divca"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_$$^W4KF(HG)_"px;left:0%;width:100%;overflow:auto"">")
 . D W($$SPAN_$$^%W1DICT("TYPECCPAYMENT")_"</span>") 
 .D W("<table id=""tblca"" width=""100%"" >")
 .D W("<tr>")
 .D W(" <th>"_$$^%W1DICT("NORD")_"</th>")
 .D W(" <th>"_$$^%W1DICT("CREDITCARDNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("UNTILMMYY")_"</th>")
 .D W(" <th> CVV </th>")
 .D W(" <th>"_$$^%W1DICT("IDNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("SUM")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TIP")_"</th>")
 .D W(" <th>"_$$^%W1DICT("AUTHORITY")_"</th>")
 .D W(" <th >"_$$^%W1DICT("RESULTCODE")_"</th>")
 .D W(" <th width=""20%"">"_$$^%W1DICT("RESULTMSG")_"</th>")
 .D W("</tr>")
 .
 .S PAY=0,STIP=0
 .N I F I=1:1:COLPAY D
 ..D W("<tr align=""center"">")
 .. D W("<td style=""background-color:light-grey"">"_I_"</td>")
 .. D W("<td><input type=""text"" id=""caid"_I_""" size="""_$$SZ(17)_""" "_$$FOCUS_" onKeyUp=""OnKeyUp(event,this)"" value="""_$$CARD(I)_"""></td>")
 .. D W("<td dir=""LTR"" >") D SELMMYY(I) D W("</td>")
 .. D W("<td><input type=""text"" style=""text-align:center"" id=""cacvv"_I_""" size="""_$$SZ(3)_""" maxlength=""3"" value="""_$$CVV(I)_""" "_$$FOCUS_"></td>")
 .. D W("<td><input type=""text"" style=""text-align:center"" id=""catz"_I_""" size="""_$$SZ(8)_""" maxlength=""9"" value="""_$$TZ(I)_""" "_$$FOCUS_" ></td>")
 .. I 'PRBIT D
 ... I I<COLPAY D
 .... S SUM=$J(RCVD/COLPAY,2,2)
 .... S TIP=$J(RCVD-TOPAY/COLPAY,2,2)
 .... S PAY=PAY+SUM
 .... S STIP=STIP+TIP
 ... I I=COLPAY D
 .... S SUM=$J(RCVD-PAY,2,2)
 .... S TIP=$J(RCVD-TOPAY-STIP,2,2)
 ..
 .. I PRBIT D
 ... S SUM=$$SUM(I)
 ... S TIP=$$TIP(I)
 ..
 .. D W("<td><input type=""text"" id=""casum"_I_""" size="""_$$SZ(7)_""" maxlength=""9"" value="""_SUM_""" "_$$READONLY_" ></td>")
 .. D W("<td><input type=""text"" id=""catip"_I_""" size="""_$$SZ(7)_""" maxlength=""9"" value="""_TIP_""" "_$$READONLY_" ></td>")
 .. D W("<td><input type=""text"" id=""asm"_I_""" size="""_$$SZ(6)_""" maxlength=""9"" "_$$READONLY(1)_" ></td>")
 .. D W("<td><input type=""text"" id=""cares"_I_""" size="""_$$SZ(3)_""" value="""" "_$$READONLY(1)_" ></td>")
 .. D W("<td id=""res"_I_""">&nbsp;</td>")
 ..D W("</tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 S TOP=TOP+HG+$$^W4KF(50)
 D W("<div id=""divbut1"" dir=""LTR"" style=""position:absolute;top:"_TOP_"px;height:60px;left:10%;width:80%"">")
 ;;S %ARG("UPDOWN")=1
 D ^W4NUMKB("",19)
 D W("</div>")
 ;
 S TOP=TOP+$$^W4KF(100)
 D W("<div id=""divbut2"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:50px;left:35%;width:30%"">")
 D ^W4SBMBCK
 D W("</div>")
 ;
 D W("<div id=""divbut3"" dir="""_$$^%W1DIR_""" style=""visibility:hidden;position:absolute;top:"_TOP_"px;height:50px;left:35%;width:30%"">")
 D ^W4BCK
 D W("</div>")
 Q
 ;
 ;
W(TXT)
 W TXT
 Q
 ;
CA(STAM) ;
 I CODTS=3 Q 1
 Q 0
 ;
 ;
SELMMYY(I) ;
 S DLM=$$DLM
 D W("<select id=""mmid"_I_""" ")
 D W(">")
 N K F K=1:1:12 D
 .D W("<option value="""_$TR($J(K,2)," ",0)_""" >"_$TR($J(K,2)," ",0)_"</option>")
 ;
 D W("</select>&nbsp;")
 ;
 N YY S YY=$ZD($H,"YY")
 D W("<select id=""yyid"_I_""" ")
 D W(" >")
 F K=1:1:10 D
 .D W("<option value="""_(2000+YY+K-1)_""" ")
 .I K=2 D W("selected=""selected"" ")
 .D W(">"_(YY+K-1)_"</option>")
 D W("</select>")
 Q
 ;
SPAN(COLOR,FSZ) ;
 I $G(COLOR)="" S COLOR="green"
 I $G(FSZ)="" S FSZ=14
 Q "<span style=""color:"_COLOR_";font-size:"_$$^W3FSZ(FSZ)_""">"
 ;
 ;
CAMG(PRMCA) ;
 N (JB,%ARG,PRMCA)
 S CA=$P(PRMCA,"~")
 S TZ=$P(PRMCA,"~",2)
 S SUM=$P(PRMCA,"~",3)
 S TIP=$P(PRMCA,"~",4)
 S ASM=$P(PRMCA,"~",5)
 Q $$PAYCA
 ;
 ;
CAARM(PRMCA) ;
 N (JB,%ARG,PRMCA)
 S CA=$P(PRMCA,"~")
 S MM=$P(PRMCA,"~",2)
 S YY=$P(PRMCA,"~",3)
 S CVV=$P(PRMCA,"~",4)
 S TZ=$P(PRMCA,"~",5)
 S SUM=$P(PRMCA,"~",6)
 S TIP=$P(PRMCA,"~",7)
 S ASM=$P(PRMCA,"~",8)
 Q $$PAYCA
 ;
 ;
PAYCA(STAM) ;
 S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM Q "NOORD;-1;Order number not defined"
 S:ASM="" ASM="0000000"
 D PUT^W4TMPPAY(3,"CREDITCARDNUMBER",CA)
 I $G(MM) D PUT^W4TMPPAY(3,"MM",MM)
 I $G(YY) D PUT^W4TMPPAY(3,"YY",YY)
 I $G(CVV) D PUT^W4TMPPAY(3,"CVV",CVV)
 D PUT^W4TMPPAY(3,"IDNUMBER",TZ)
 D PUT^W4TMPPAY(3,"SUM",SUM)
 D PUT^W4TMPPAY(3,"TOPAY",SUM-TIP)
 D PUT^W4TMPPAY(3,"AUTHNO",ASM)
 ;
 S RES=$$^W4PAYCA(HZM)
 S $P(RES,";",3)=$$CLWEB^%L1FRM($$H2U^%L1FRM($P(RES,";",3)))
 Q RES
 ;
 ;
DLM(STAM) ;
 Q ";"
 ;
FOCUS(STAM) ;
 N A S A=" onFocus=""SetFocus(this)"" "
 S A=A_" onBlur=""this.style.backgroundColor='white'"" "
 Q A
 ;
READONLY(CENTER) ;
 N ST S ST=" readonly=""readonly"" style=""background-color:#eaeaea"
 I $G(CENTER) S ST=ST_";text-align:center"
 S ST=ST_""" "
 Q ST
 ;
SZ(SZ) ;
 I $$1024^W4WDSCR Q (SZ-1)
 Q SZ
 ;
CARD(I) ; 
 I 'PRBIT Q ""
 N HZMBIT S HZMBIT=$$HZMBIT I HZMBIT="" Q "" 
 Q $$GET^W4GTVCH(HZMBIT,I,"V","NCA")
 ;
CVV(I) ; 
 I 'PRBIT Q ""
 N HZMBIT S HZMBIT=$$HZMBIT I HZMBIT="" Q "" 
 Q $$GET^W4GTVCH(HZMBIT,I,"V","CVV2")
 ; 
TZ(I) ; 
 I 'PRBIT Q ""
 N HZMBIT S HZMBIT=$$HZMBIT I HZMBIT="" Q "" 
 Q $$GET^W4GTVCH(HZMBIT,I,"V","TZ")
 ; 
SUM(I) ; 
 I 'PRBIT Q ""
 N HZMBIT S HZMBIT=$$HZMBIT I HZMBIT="" Q "" 
 Q -$$GET^W4GTVCH(HZMBIT,I,"V","CAV")
 ;
TIP(I) ; 
 I 'PRBIT Q ""
 N HZMBIT S HZMBIT=$$HZMBIT I HZMBIT="" Q "" 
 Q $$GET^W4GTVCH(HZMBIT,I,"V","TIPCA")
 ;
HZMBIT(STAM) ; 
 Q $$GETP^%W1PRM("HZMBIT") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYTB
W4PAYTB(ORD,TOPAY,RCVD,COLPAY) ; [ 13.10.24 15:01 ] [ 04.07.24 11:16 ] [ 27.09.17 13:13 ] 
 N (JB,%ARG,ORD,TOPAY,RCVD,COLPAY)
 S DLM=$$DLM
 ;;D W("<br>")
  I $G(ORD)="" S ORD=$$GETP^%W1PRM("HZM")
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ORDER")_" "_ORD_"</span>")
  D W($$NBSP^%L1FRM(5))
  D W($$SPAN("BLACK",12)_$$^%W1DICT("SHULHAN")_" "_$$NMB^W4HZMST(ORD)_"</span>")
 D W("<br><br>")
  ;
  S PAID=0
  ;
  I 'TOPAY,RCVD D
  .S TOPAY=RCVD
  .I TOPAY>$$ITRA^W4HZMST(ORD) S TOPAY=$$ITRA^W4HZMST(ORD)
  ;
  S ITRA=RCVD-PAID
  D W($$SPAN("BROWN",18)_$$^%W1DICT("TOPAY")_" : "_TOPAY_"</span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("RECEIVED")_" : "_RCVD_"</span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("PAID")_" <input id=""paid"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(PAID,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  I RCVD>TOPAY D
  .D W($$NBSP^%L1FRM(10)) 
  .D W($$SPAN("BROWN",18)_$$^%W1DICT("TIP")_" <input id=""tip"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(RCVD-TOPAY,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  D W($$NBSP^%L1FRM(10)) 
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ITRA")_" <input id=""itra"" type=""text"" size=""7"" readonly=""readonly"" value="""_$J(ITRA,2,2)_""" style=""font-size:"_$$^W3FSZ(16)_"""></span>") 
  D W($$NBSP^%L1FRM(10)) 
  ;
 D W("<br>")
 ;
 D W("<br><br>")
 S MAX=COLPAY+1
 I MAX>7 S MAX=7
 S TOP=$$^W4KF(120),HG=$$^W4KF(60*MAX)
 D
 .D W("<div id=""divtnb"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_$$^W4KF(HG)_"px;left:10%;width:80%;overflow:auto"">")
 . D W($$SPAN_$$^%W1DICT("TYPETNBPAYMENT")_"</span>") 
 .D W("<table id=""tbltnb"" width=""100%"" >")
 .D W("<tr>")
 .D W(" <th>"_$$^%W1DICT("NORD")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TBCARD")_"</th>")
 .D W(" <th>"_$$^%W1DICT("SUM")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TIP")_"</th>")
 .D W(" <th >"_$$^%W1DICT("RESULTCODE")_"</th>")
 .D W(" <th width=""20%"">"_$$^%W1DICT("RESULTMSG")_"</th>")
 .D W("</tr>")
 .S PAY=0,STIP=0
 .
 .N I F I=1:1:COLPAY D
 ..D W("<tr align=""center"">")
 .. D W("<td style=""background-color:light-grey"">"_I_"</td>")
 .. D W("<td><input type=""text"" id=""tnbid"_I_""" size="""_$$SZ(17)_""" "_$$FOCUS_" onKeyUp=""OnKeyUp(event,this)"" ></td>")
 .. I I<COLPAY D
 ... S SUM=$J(RCVD/COLPAY,2,2)
 ... S TIP=$J(RCVD-TOPAY/COLPAY,2,2)
 ... S PAY=PAY+SUM
 ... S STIP=STIP+TIP
 .. I I=COLPAY D
 ... S SUM=$J(RCVD-PAY,2,2)
 ... S TIP=$J(RCVD-TOPAY-STIP,2,2)
 .. D W("<td><input type=""text"" id=""tnbsum"_I_""" size="""_$$SZ(7)_""" maxlength=""9"" value="""_SUM_""" "_$$READONLY_" ></td>")
 .. D W("<td><input type=""text"" id=""tnbtip"_I_""" size="""_$$SZ(7)_""" maxlength=""9"" value="""_TIP_""" "_$$READONLY_" ></td>")
 .. D W("<td><input type=""text"" id=""tnbres"_I_""" size="""_$$SZ(3)_""" value="""" "_$$READONLY(1)_" ></td>")
 .. D W("<td id=""tnbmsg"_I_""">&nbsp;</td>")
 ..D W("</tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 S TOP=TOP+HG+$$^W4KF(50)
 D W("<div id=""divbut1"" dir=""LTR"" style=""position:absolute;top:"_TOP_"px;height:60px;left:10%;width:80%"">")
 ;;S %ARG("UPDOWN")=1
 D ^W4NUMKB("",19)
 D W("</div>")
 ;
 S TOP=TOP+$$^W4KF(100)
 D W("<div id=""divbut2"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:50px;left:35%;width:30%"">")
 D ^W4SBMBCK
 D W("</div>")
 ;
 D W("<div id=""divbut3"" dir="""_$$^%W1DIR_""" style=""visibility:hidden;position:absolute;top:"_TOP_"px;height:50px;left:35%;width:30%"">")
 D ^W4BCK
 D W("</div>")
 Q
 ;
 ;
W(TXT)
 W TXT
 Q
 ;
SPAN(COLOR,FSZ) ;
 I $G(COLOR)="" S COLOR="green"
 I $G(FSZ)="" S FSZ=14
 Q "<span style=""color:"_COLOR_";font-size:"_$$^W3FSZ(FSZ)_""">"
 ;
 ;
TNB(PRMTNB) ;
 N (JB,%ARG,PRMTNB)
 S TNB=$P(PRMTNB,"~")
 S SUM=$P(PRMTNB,"~",2)
 S TIP=$P(PRMTNB,"~",3)
 Q $$PAYTNB
 ;
 ;
PAYTNB(STAM) ;
 S HZM=$$GETP^%W1PRM("HZM")
 I 'HZM Q "NOORD;-1;Order number not defined"
 D PUT^W4TMPPAY(10,"CARDNUMBER",TNB)
 D PUT^W4TMPPAY(10,"SUM",SUM)
 D PUT^W4TMPPAY(10,"TOPAY",SUM-TIP)
 ;
 N RES,RESTB,RES1
 D PAYTB^W4PAYKB(HZM)
 S RESTB=$G(RESTB)
 S RES1="OK;"_$P(RESTB,"*")_";"_$$CLWEB^%L1FRM($$H2U^%L1FRM($P(RESTB,"*",2,200)))
 Q RES1
 ;
 ;
DLM(STAM) ;
 Q ";"
 ;
FOCUS(STAM) ;
 N A S A=" onFocus=""SetFocus(this)"" "
 S A=A_" onBlur=""this.style.backgroundColor='white'"" "
 Q A
 ;
READONLY(CENTER) ;
 N ST S ST=" readonly=""readonly"" style=""background-color:#eaeaea"
 I $G(CENTER) S ST=ST_";text-align:center"
 S ST=ST_""" "
 Q ST
 ;
SZ(SZ) ;
 I $$1024^W4WDSCR Q (SZ-1)
 Q SZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYVW
W4PAYVW ; [ 08.09.26 18:10 ] [ 13.08.26 14:57 ] [ 12.08.26 07:59 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D KILL^W4ABC
 S HZM=$$GET^%W1PRM("HZM")
 ;
 S NMB=$$NMB^W4HZMST(+HZM)
 I NMB="" S NMB=0
 S DV=$G(@$$^W4GL("FLAG")@(NMB))
 ;
 I NMB,DV,+DV'=+$$^W4MYDVN D  Q
 .W "<script>",!
 . W "BusyExit('"_DV_"')",!
 .W "</script>",! 
 ;
 S @$$^W4GL("FLAG")@(NMB)=$$^W4MYDVN
 ;
 I $G(%ARG("PYTOT")) D PUT^%W1PRM("PYTOT",%ARG("PYTOT"))
 ;
 ;;I $$OLDTOKEN(HZM),$G(%ARG("VT"))'=4,'$$TKNOMUST^W4PRM Q  ; -- 17.11.24 -> COMMENT
 ;
 I $$^W4HSPART(HZM),'$$PYTOT,'$G(%ARG("ORDVW")) D ^W4PARTPY(HZM) Q
 ;
 ;----------------   SHOW PAYMENTS DETAILS (PREV OR CUURENT )
 I $G(%ARG("VT"))=1 D VW(1,"MZ","60%") Q
 ;
 I $G(%ARG("VT"))=2 D VW(2,"CH","80%") Q
 ;
 I $G(%ARG("VT"))=3 D VW(3,"V","60%") Q
 ;
 I $G(%ARG("VT"))=4 D VW(4,"ASR","98%") Q
 ;
 I $G(%ARG("VT"))=6&($G(%ARG("VZ"))="CMNT") Q
 ;
 I $G(%ARG("VT"))=6 D VW(6,"HNH1","70%") Q
 ;
 I $G(%ARG("VT"))=7 D  D VW(7,"ASR","80%") Q
 .I $G(%ARG("VZ"))="CIBCARD",$G(%ARG("FAST")),$$CIBCMP^W4PRM D
 ..S %ARG("VZ")="CMPCARD"
 ;
 I $G(%ARG("VT"))=8 D VW(8,"ASR","80%") Q
 ;
 I $G(%ARG("VT"))=14 D ^WBSHOWNK(HZM) Q
 ;
 I $G(%ARG("VT"))=15 D VW(15,"ASR","80%") Q
 ;
 ;-------------------------------------------------------------
 ;
 W "<br>",!
 ;
 D PERUT
 Q
 ;
 ;
PYTOT(STAM) ;
 I $G(%ARG("PYTOT")) Q 1
 I $$GETP^%W1PRM("PYTOT") Q 1
 Q 0
 ;
TDNM ;
 W "<td style=""color:"_$$^W4GETCLR("PAYFG","black")_";font-size:"_$$^W3FSZ(18)_""">"
 Q
TDRKV(VT) ;
 W "<td style=""color:"_$$COLORKV(VT)_";font-size:"_$$^W3FSZ(18)_""" dir=""LTR"">"
 Q
 ;
KF(NUM) Q $$^W4KF(NUM)
 ;
COLORKV(VT) ;
 I VT="MZ",$$MZM^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 I VT="CH",$$CHK^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 I VT="V",$$CA^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 I VT="ASR",$$ASR^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 Q "green"
 ;
PRESSTODEL ;
 I $$CLOSE^W4HZMST(HZM),$$^W4DEL(HZM) D SPACE Q
 I $$NOPRESSTODEL(HZM) Q
 W "<tr><td colspan=""4"" style=""color:red;"_$$FONTFM^W3CSS_";font-weight:bold"">"
  W $$^%W1DICT("TODELETEPRESSDETAILS")
 W "</td></tr>",!
 Q
 ;
SPACE W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
RZD ;;D TDNM W " : </td>"
 D TDNM W "&nbsp;</td>"
 Q
 ;
 ;
VW(VT,IND,WD) ;
 W "<div align=""center"" >",!
  ;
  N VZ S VZ=$G(%ARG("VZ"),"SUM")
  ;---------- SHOW PREVIOUS PAYMENT'S DETAILS --
  I VZ="SHOW" D SHOW(VT,VZ) D KILL^W4PAY G END ;
  ;
  I VZ="SHOWONLY" D SHOW(VT,"SHOW","ONLY") G END
  ;
  ;----------- CURRENT PAYMENT -----------------
  I '$D(HZM) S HZM=$$GET^%W1PRM("HZM")
  ;
  I $D(@$$^W4ORD@(HZM,"CB",IND))>9 D
  .W "<input type=""button"" style=""height:"_$$KF(50)_"px;width:"_$$KF(160)_"px"""
  .W " value="""_$$^%W1DICT("PREVPAYMDETAILS")_""" "
  .W "onClick=""PaymDetails('"_VT_"')"" />"
  .W "<br><br>",!
  ;
  ;;
  I $G(%ARG("VT"))=3,$G(%ARG("VZ"))="SUM" D
  .D KILLVAR^W4PAYKB("PAYM")
  .D KILLVAR^W4PAYKB("CRCARD")
  .D KILLVAR^W4PAYKB("DOP")
  .N SUM S SUM=$$GET^W4TMPPAY(3,"SUM")
  .S SI=1 I SUM<0 S SI=51
  .D PUT^W4TMPPAY(3,"SI",SI)
  .D PUT^W4TMPPAY(3,"SA",1)
  .D PUT^W4TMPPAY(3,"MB",1)
  .S WD="20%"
  ;
  I $G(%ARG("VT"))=4,$G(%ARG("VZ"))="CUST" D
  .D KILLVAR^W4PAYKB("SUM")
  ;
  I $G(%ARG("VT"))>1&($$LASTSTAGE^W4PAYKB()'?.P) D
   .D CURRENTPAYMDETAILS ; -- FIRST GROUP FROM ^TMPSHOW
  ;
  D CURRENTPAYMDET2 ; -- SECOND GROUP FROM ^TMPZ
  ;
  S OKMVC=0
  I $$GETP^%W1PRM("FASTPAY") D  Q:OKMVC
  .D KILL^%W1PRM("FASTPAY")
  .I $$SHOWMVC1(HZM) D SCRIPTMVC(HZM)  
  .I OKMVC D
  ..W "<script>",!
  ..W " tt=setTimeout('ReloadWithoutFast()',4000)",!
  ..W "</script>",!
  ;
  ;;M ^AA("PAYVW-VW","ARG")=%ARG ; ***
  ;
  I $G(%ARG("END"))&(($G(%ARG("VZ"))["CRCARD")!($G(%ARG("VZ"))="DOP")) D
  .W "<script>",!
  .W " PayCA()",!
  .W "</script>",!
  ;
  Q
 ;
  ;
END W "</div>",!
  Q
  ;
SOF ;
 Q
  ;
CRTMPSHOW ;
 N N,VZ,A,VL,NM,CD
 S VZ="SHOWTMP"
 K @$$^W4MAIN("TMPSHOW")
 S N="" F  S N=$O(^[$$^W3MAIN]W4PAY($$COUNTRY^W3PRM,VT,VZ,N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD=$P(A,";") Q:CD=""
 .I '$D(@$$^W4TMPPAY@(VT,CD)) Q
 .N OK S OK=1
 .I $L($G(%ARG("VZ"))) D
 ..N N1 S N1="" F  S N1=$O(@$$^W4PAY@(VT,%ARG("VZ"),N1)) Q:N1=""  D  Q:'OK
 ...I $P($G(^(N1)),";")=CD S OK=0
 .Q:'OK
 .S @$$^W4MAIN("TMPSHOW")@(N)=$P(A,";")_";"_$$GET^W4TMPPAY(VT,CD)_";"_$P(A,";",3)
 Q
 ;
 ;
CURRENTPAYMDETAILS ;  -- FROM ^TMPSHOW
 D CRTMPSHOW ; --> ^TMPSHOW(NP)=NM;VL
 ;;M ^AA("W4PAYVW-CPD","TMPSHOW")=^TMPSHOW ; ***
 Q:'$D(@$$^W4MAIN("TMPSHOW"))
 ;
 N NP,K S NP="" F K=1:1 S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""
 N WD S WD=12*(K+2) S:WD>98 WD=98
 S WD=WD_"%"
 ;
 W "<table dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
 ;
 W "<tr>",! ; -- KOTERET
 N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .S NM=$P(A,";")
 .D TH W $$^%W1DICT(NM)_"</th>",!
 W "</tr>",!
 ;
 W "<tr>",! ; -- TOHEN
 N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .S VL=$P(A,";",2)
 .N COLOR S COLOR=$P(A,";",3)
 .N NOHB S NOHB=0
 .W "<td "_$$STYLEBOLD(COLOR)_" "_$S(VL?."-"1N.N.".".N:" dir=""LTR""",1:"")_" >"
 . W $$RKV(VL)
 .W "</td>",!
 W "</tr>",!
 ;
 W "</table>",!
 W "<br />",!
 Q
 ;
 ;
CURRENTPAYMDET2 ;
 I '$G(%ARG("VT"))!'$L($G(%ARG("VZ"))) Q
 ;
 D VWTBL(%ARG("VT"),%ARG("VZ"),"W4PAY","W4TMPPAY") ; SHOW CURR PAYM DETAILS
 ;                                                 ; FROM ^TMPZ
 Q:'$G(%ARG("END"))  Q:$G(%ARG("VZ"))'="SUM"  Q:$G(%ARG("VT"))'=3
 Q:$$GET^W4TMPPAY(3,"SUM")<0
 ;
 W "<br /><br />",!
 ;
 D BTNCA
 Q
 ;
 ;
VWTBL(VT,VZ,GLZ,GLTMP) ; -- GLZ = ^W4PAY
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""10"">",!
 ;
 I VT=4,VZ="TL" D
 .W "<caption "_$$STYLEBOLD_" >"
 . W $$^%W1DICT("TOPAYM",$$GET^W4TMPPAY(4,"ASRL")-$$GET^W4TMPPAY(4,"LKHNH"))
 .W "</caption>"
 ;
 W " <tr>"
 ;
 N J S J=0
 N GL D @("GL^"_GLZ) ; -- GL=TMPZ
 ;
 N NP S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
 .S J=J+1
 .N CD X "S CD=$$NM^"_GLZ_"(VT,VZ,NP)"
 .I CD="" D TH W "&nbsp;" W "</th>",! Q
 .D TH W $$^%W1DICT(CD)_"</th>",!
 ;
 N MAXJ S MAXJ=J
 W "</tr>",!
 ;
 ;
 W "<tr>" S NS=1
 ;;M ^AA("W4PAYVW-VWTBL","GL")=@GL ; ***
 S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
 .N NM,VL
 .X "S CD=$$NM^"_GLZ_"(VT,VZ,NP)"
 .X "S VL=$$GET^"_GLTMP_"(VT,CD)"
 .W "<td dir=""LTR"" id="""_CD_NS_""" style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""">"
 . I VT=3,VZ="CRCARD",$$^W6 D
 . .N NOMASKLN S NOMASKLN=99
 . .I NP=1 S NOMASKLN=8 
 . .I NP=4 S NOMASKLN=1 
 . .I NP=5 S NOMASKLN=6 
 . .S VL=$$MASK(VL,NOMASKLN)
 . W $$RKV(VL)
 .W "</td>"
 ;
 W "</tr>",!
 ;
 W "</table>",!
 Q
 ;
 ;
MASK(VL,NOMASKLN)
 N LNO S LNO=$L(VL)-NOMASKLN
 I LNO<1!(NOMASKLN<1)!(NOMASKLN>98) Q VL
 Q $E(VL,1,NOMASKLN)_$TR($J("",LNO)," ","*")
 ;
BTNCA ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W " <tr>",!
 W "  <td>",!
 W "   <input type=""button"" class=""btn"" "
   W "value="""_$$^%W1DICT("CRCARD1C")_""" "_$$^W4TOUCH_"=""CrCardInput()"">"
 W "  </td>",!
 ;
 W "  <td>",!
 W "   <input type=""button"" class=""btn"" "
   W "value="""_$$^%W1DICT("CRCARDPC")_""" "_$$^W4TOUCH_"=""SugAshrai()"">"
 W "  </td>",!
 ;
 W "  <td>",!
 W "   <input type=""button"" class=""btn"" style=""color:red"" "
   W "value="""_$$^%W1DICT("BACK")_""" "_$$^W4TOUCH_"=""Back()"">"
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 ;
 Q
 ;
 ;
SHOW(VT,VZ,PRM) ;---------------- SHOW PAYMENT'S DETAILS
  I $G(%ARG("ORDVW")) D
  .W "<input type=""button"" class=""btn"" style=""background-color:white;color:red;font-size:"_$$^W3FSZ(16)_""" "
  . W "value="""_$$^%W1DICT("CLOSE")_""" "
  . W " onClick=""parent.ifrHide('MUST')"" />"
  .W "<br><br>"
  ;
  I $G(PRM)'="ONLY" D
  .W "<span style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"" >"
  .D
  .. I $$^W4DEL(HZM) W $$^%W1DICT("DELETEDBYORDER",$$^W4DEL(HZM)) Q
  .. I $$NOPRESSTODEL(HZM) Q
  .. W $$^%W1DICT("TODELETEPAYPRESSONTABLE")
  .W "</span><br>",!
  ;
  I VT=6 D SHOWHNH ; ANAHA
  ;
  I VT=6,'$$SHNH1(HZM) Q
  ;
  N PRCIB S PRCIB=0
  N PRVC S PRVC=0
  N PRCPN S PRCPN=0
  ;
  I VT=7 S VT=4,PRCIB=1
  I VT=8 S VT=4,PRVC=1
  ;
  D CREATE^W4PAY(VT,VZ)
  ;
  N WD,NP,J,NM S J=0
  D GL^W4PAY ; --> GL=TMPZ
  S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  S J=J+1
  S WD=12*(J+2) I WD>98 S WD=98
  S WD=WD_"%"
  ;
  ;;M ^AA("W4PAYVW-SHOW","GL")=@GL; ***
  ;;S ^AA("W4PAYVW-SHOW","VZ")=VZ ; ***
  ;
  W "<table id=""tbpaym"" dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
  W " <tr>",!
   S J=0
   ;
   S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
   .S J=J+1
   .S NM=$$NM^W4PAY(VT,VZ,NP) I NM="" D TH W "&nbsp;" W "</th>",! Q
   .D TH W $$^%W1DICT(NM)_"</th>",!
   ;
   I '$$NOCUSNAME(VT) D
   .D TH W $$^%W1DICT("TOCUSNAME")_"</th>",!
   .;;W "<th>&nbsp;</th>",!
   ;
   I $$NOCUSNAME(VT) D
   .D TH W $$^%W1DICT("COMMENT")_"</th>",!
   ;
   N MAXJ S MAXJ=J
  W "</tr>",!
  ;
  S NS=0
  D GLORD^W4HZMST
  ;
  N NODEL
  S N="" F  S N=$O(@GLORD@("CB",IND,N)) Q:N=""  S A=$G(^(N)) D
  .S NS=NS+1 K MVL
  . 
  .I $$BSL(IND,N) D
  ..N HRA S HRA=$P(A,"*",5)
  ..N A1 S A1=A
  ..N LK S LK=$P(A,"*")
  ..S $P(A1,"*")=$P(HRA,";",2)
  ..S $P(A1,"*",13)=$P(A,"*",12)
  ..S $P(A1,"*",12)=$P(HRA,";",3)
  ..S $P(A1,"*",6)=LK
  ..S A=A1
  .
  .S BC="" N NOMASR S NOMASR=N S NODEL=0
  .
  .N NP S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
  ..I VT=6,$$GET(VT,VZ,NP,A)["VALUECARD" S NODEL=1 ; -- ATAVA VC ?
  ..I $$DL^W4PAY(VT,VZ,NP)[","&($$GET(VT,VZ,NP,A)<0) D SIGNDEL Q
  ..I $D(@GLORD@("CB",IND,N,"DEL")) D SIGNDEL Q
  ..I $$^W4DEL(HZM) D SIGNDEL Q
  .
  .I $$GET^W4GTVCH(HZM,N,IND,"LKHN")=$$COUPPH^W4PRM S PRCPN=1
  .I PRCIB,$$GET^W4GTVCH(HZM,N,IND,"LKHN")'=$$^W4CIBLKH Q
  .I $G(PRVC),'$$D^WV(HZM,N) Q
  .
  .W "<tr style=""height:"_$$KF(50)_"px"_BC
  .I $G(PRM)'="ONLY",'NODEL D
  ..I $$HZM^W4MSL(HZM),$$CLOSE^W4HZMST(HZM) Q
  ..I $$NODELVT(HZM,VT) Q
  ..I $$NOPRESSTODEL(HZM) Q
  ..W ";cursor:pointer"
  .W """ id=""trpaym"_N_""""
  .W " >"
  .
  .N NP S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
  ..N DIR S DIR=$$^%W1DIR
  ..I $$DL^W4PAY(VT,VZ,NP)["," S DIR="LTR"
  ..N NOHB S NOHB=0
  ..
  ..N NM S NM=$$NM^W4PAY(VT,VZ,NP) I NM="HZMLK"!(NM="LKHN1") S NOHB=1
  ..
  ..W "<td dir="""_DIR_""" id="""_NM_NS_""" "
  .. D DELPYM
  .. W " style="""_$$FONTFM^W3CSS_";text-align:center"">"
  .. N RKV S RKV=$$GET(VT,VZ,NP,A)
  .. 
  .. I $$BSL(IND,N),NM="LKHN1" S RKV=$P(A,"*",12),NOHB=0 ; -- NOHB = NO HEBREW
  ..
  .. I NM="HZMLK" D
  ... I RKV?1N.N.E!(RKV?.E1"W"1N.E) S NOHB=1 Q
  ... Q  ; -- 17/09/23
  ... I $$HZM^W4MSD(HZM) S RKV=$$INVH^%L1FRM(RKV)
  ... S RKV=$$H2U^%L1FRM(RKV)
  ..
  .. I NM["DISCAST",$G(@$$^W4PRM@("SHOWCRTZ")) D
  ... N STRIN S STRIN=$G(@$$^W4ORD@(HZM,"CB","V",N,"STRIN"))
  ... N ASHTZ S ASHTZ=+$P(STRIN,"Y",2) Q:'ASHTZ
  ... S ASHTZ=$TR($J(ASHTZ,9)," ",0)
  ... S RKV=RKV_" <BR> <span style=""color:grey"">ID "_ASHTZ_"</span>",NOHB=1
  ..
  .. I NM["CARDNUMBER",$L(RKV)>3 D
  ... S RKV=$S(RKV?4N.N:$$SHOWCARD^%L1FRM(RKV),1:$$H2U^%L1FRM(RKV)),NOHB=1
  ... I NM="CREDITCARDNUMBER" D
  .... ;;S RKV=RKV_" <BR><span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(10)_";color:grey""> "_$$H2U^%L1FRM($$INVH^%L1FRM($$GET^W4GTVCH(HZM,N,IND,"SHEMCA")))_"</span>"
  .... S RKV=RKV_" <BR><span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(10)_";color:grey""> "_$$SHEMCA(HZM,N)_"</span>"
  ..
  .. I NM="AUTHNO",IND="V",$L(RKV)>3 D
  ... N TIM S TIM=$P($G(@$$^W4ORD@(HZM,"CB","V",N)),"*",29)
  ... S TIM=$ZD(TIM,"DD.MM.YY 24:60")
  ... S RKV=RKV_" <BR><span style=""color:grey;font-size:"_$$^W3FSZ(10)_"""> "_TIM_"</span>",NOHB=1
  ..
  .. I NM="ASR",IND="ASR" D
  ... N TIM S TIM=$P($G(@$$^W4ORD@(HZM,"CB","ASR",N)),"*",29)
  ... S TIM=$ZD(TIM,"DD.MM.YY 24:60")
  ... S RKV=RKV_" <BR><span style=""color:grey;font-size:"_$$^W3FSZ(10)_"""> "_TIM_"</span>",NOHB=1
  ..
  .. I NM="TIME",IND="CH" S NOHB=1
  .. I NM="TZ",IND="CH",RKV="KC" S NOHB=1,RKV=$$^%W1DICT("KASHCASH")
  ..
  .. W $$RKV(RKV,NOHB)
  ..
  .. I PRCPN,NM="LKHN1" D
  ... W "<br><span style=""font-size:"_$$^W3FSZ(10)_";color:darkblue"" >",!
  ...   W $$CPCARD^W4HZMST(+$$GETP^%W1PRM("HZM"),"NA"_NOMASR)
  ... W "</span>",!
  ..W "</td>"
  .
  .N VL S VL=$$TOCUSNAME^W4HZMST(HZM,IND,N)
  .W "<td>"
  .W "&nbsp;"
  .I '$$NOCUSNAME(VT) D
  .. I VL'?." " W $$H2U^%L1FRM(VL) Q
  .. W "&nbsp;"
  .I $G(@$$^W4ORD@(HZM,"CB",IND,N,"DEL")) D
  .. I VL'?." " W "<br>"
  .. D PAYMBITINF(HZM,IND,N)
  .W "</td>"
  .
  .I '$$NOCUSNAME(VT) D
  ..W "<td align=""center"" >"
  .. D TOCUSNAMEBTN
  ..W "</td>",!
  .
  .W "</tr>",!
  Q
  ;
  ;
PAYMBITINF(HZM,IND,N) ;
 N HZMDEL1,HZMDEL2
 S HZMDEL1=$P(^("DEL"),"\",4)
 S HZMDEL2=$P(^("DEL"),"\",5)
 I HZMDEL1>0 D
 .W "<span style=""color:red;font-size:"_$$^W3FSZ(9)_";cursor:pointer"" "
 . W " "_$$^W4TOUCH_"=""ShowDelPaymOrders('"_$$NMB^W4HZMST(HZM)_"','"_HZMDEL1_"','"_HZMDEL2_"')"" "
 .W ">"
 . W $$^%W1DICT("PAYMENTDELETEDBYORDER",HZMDEL1_"<>"_HZMDEL2)
 .W "</span>",!
 Q
 ;
 ;
SHOWHNH ;
 N TSHL
 S TSHL=$$TSHL^W4HZMST(HZM)
 N HNH S HNH=$$HNH(HZM) ; --> HNHAH
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SHNH",$J(HNH,2,2))_"</span>",!
 ;
 I $$HNH2^W4HZMST(HZM) D
 .N HNH2 S HNH2=$$HNH2^W4HZMST(HZM)
 .W "<br><br>"
 .W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("HNH2",$J(HNH2,2,2))_"</span>",!
 ;
 I HNHAH D
 .W "<br /><br /><table dir="""_$$^%W1DIR_""" width="""_WD_""" border=""1"" cellspacing=""0"" style=""text-align:center"" >",!
 .W "<caption style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("INCLUDEPERCENTDISC")_"</caption>"
 .W "<tr >" ;; class=""sheetgroups"">",!
 . W "<td>"_$$^%W1DICT("BEFOREDISC")_"</td>"
 . W "<td>"_$$^%W1DICT("DISCPERCENT")_"</td>"
 . W "<td>"_$$^%W1DICT("HOWMUCHDISC")_"</td>"
 . I $G(@$$^W4ORD@(HZM,"HNH"))'?.P D
 .. W "<td>"_$$^%W1DICT("WHOSUBMNM")_"</td>"
 .. W "<td>"_$$^%W1DICT("CAUSEDISC")_"</td>"
 .W "</tr>",!
 .
 .W "<tr>",!
 . N TOTHN S TOTHN=$$TOTHN(HZM)
 . W "<td>"_$J(TOTHN,2,2)_"</td>",!
 . W "<td>"_HNHAH_"</td>",!
 . W "<td>"_$J(TOTHN*HNHAH*.01,2,2)_"</td>",!
 .
 .I $G(@$$^W4ORD@(HZM,"HNH"))'?.P D
 ..N A,WHO,SIBA1 S A=$G(^("HNH"))
 ..S WHO=$P(A,"*",2)
 ..S SIBA1=$P(A,"*",4)
 ..W "<td>"_$$H2U^%L1FRM($$^W4NAME(WHO))_"</td>"
 ..W "<td>"_$$H2U^%L1FRM(SIBA1)_"</td>"
 .
 .W "</tr>",!
 .W "</table>",!
 ;
 S SLKHNH=$J($$SLKHNH(HZM),2,2)
 I SLKHNH D
 .W "<br /><span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SLKHNH",$J(SLKHNH,2,2))_"</span>",!
 .W "<br /><span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(11)_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SLKHNHDETAILS")_"</span>",!
 ;
 W "<br /><br />",!
 S SHNH1=$J($$SHNH1(HZM),2,2)
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SHNH1",SHNH1)_"<span>",!
 Q
 ;
 ;
TOCUSNAMEBTN ;
  I $G(NODEL) W "&nbsp;" Q  ; -- PAYMENT DELETED
  ;
  W "<input type=""button"" class=""btn"" id=""tocusname"_IND_""" "
  W " style=""z-Index:100"" "
  W " value="""_$$^%W1DICT("TOCUSNAME")_""" "
  N PRM S PRM=HZM_";"_IND_";"_N_";"_$$CLWEB^%L1FRM(VL)
  I '$$^W4CLOSE(HZM) W " onClick=""ToCusName('"_PRM_"')"" />"
  I $$^W4CLOSE(HZM) W " onClick=""PswCusName('"_PRM_"')"" />"
  Q
  ;
TH W "<th style=""font-size:"_$$^W3FSZ(12)_""""
   W ">"
 Q
 ;
STYLEBOLD(COLOR) ;
 N ST
 S ST="style=""text-align:center;font-weight:bold;"_$$FONTFM^W3CSS
 I $G(COLOR)'="" S ST=ST_";color:"_COLOR
 S ST=ST_""""
 Q ST
 ;
RKV(VL,NOHB) ;
 I VL="" Q "&nbsp;"
 I VL?1N.N1"="1N.N,$L(VL)>15 S VL=$TR($J("",$L(VL))," ","*") Q VL
 I VL?1"-"1N.N.".".N Q "<span style=""color:red"">"_VL_"</span>"
 I $G(NOHB) Q "<span dir=""LTR"">"_VL_"</span>"
 Q $$H2U^%L1FRM(VL)
 ;
 ;
GET(VT,VZ,NP,FROM) ;
 N IND,VL,DL
 N %FLD S %FLD=$G(FROM)
 ;
 S IND=$$WHERE^W4PAY(VT,VZ,NP)
 S DL=$$DL^W4PAY(VT,VZ,NP)
 S VL=$P(%FLD,"*",+IND)
 I IND["," S VL=$P(VL,$P(IND,",",2),$P(IND,",",3))
 ;
 I IND["+" D
 .N VL1 S VL1=0
 .N J F J=1:1:$L(IND,"+") D
 ..N IND1 S IND1=$P(IND,"+",J)
 ..S VL1=VL1+$P(%FLD,"*",IND1)
 .S VL=VL1
 ;
 I IND["-" D
 .N VL1 S VL1=0
 .N J F J=1:1:$L(IND,"-") D
 ..N IND1 S IND1=$P(IND,"-",J)
 ..S VL1=VL1+($P(%FLD,"*",IND1)*$S(J=1:1,1:-1))
 .S VL=VL1
 ;
 I DL["." S VL=$TR($J(VL,+DL)," ","0")
 I DL["," S VL=$J(VL,$P(DL,",",2),$P(DL,",",2))
 N PREPROG S PREPROG=$$PREPROG^W4PAY(VT,VZ,NP)
 ;
 I PREPROG'?.P X PREPROG
 Q VL
 ;
 ;
MM ;
 S VL=$E(VL,1,2)
 Q
YY ;
 S VL=$E(VL,3,4)
 Q
 ;
SHOWSUM ;
 N SUM S SUM=+$$GET^W4TMPPAY(3,"SUM") Q:'SUM
 W "<caption style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";text-align:center"">"
 W $$^%W1DICT("TOPAYM",$J(SUM,2,2))
 W "</caption>",!
 Q
 ;
SLKHNH(HZM) ;
 N SHNH,LKHNH S SHNH=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S LKHNH=$$GET^W4GTVCH(HZM,N,"ASR","LKHNH")
 .S SHNH=SHNH+LKHNH
 Q SHNH
 ;
SHNH1(HZM) ;
 N SHNH1,HNH1 S SHNH1=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  D
 .S HNH1=+$G(^(N))
 .S SHNH1=SHNH1+HNH1
 Q SHNH1
 ;
HNH(HZM) ;
 N TSHL
 S TSHL=$$TSHL^W4HZMST(HZM)
 S HNHAH=$$HNHAH^W4HZMST(HZM)
 N HNH,HNH0,HNH2 S HNH2=$$HNH2^W4HZMST(HZM)
 S HNH=$$HNHALL^W4HZMST(HZM)
 ;
 G EHNH
 ;;
 I $$^W4CLOSE(HZM) G EHNH
 ;
 S HNH0=HNH
 I HNH["%" S HNHAH=+HNH,HNH0=$P(HNH,"=",2)
 ;
 N TOTHN S TOTHN=$$TOTHN(HZM)
 S HNH=$J(TOTHN*HNHAH*.01,2,2)+$$SLKHNH(HZM)+$$SHNH1(HZM)
 I $G(HZM)>0 D IGUL^W4MENUBT(HZM,1)
 ;
 ;;S TSHL=$J($$TOT(HZM)-HNH,2,2)
 ;
 D PUT^W4HZMST(HZM,"HNH",HNH)
 D PUT^W4HZMST(HZM,"HNHAH",HNHAH)
 N TSHL S TSHL=$$TOTORD^W4HZMST(HZM) ; TSHL AHAREI IGUL ,HNH2 -> ^W4ORD
 ;
 ;;D PUT^W4HZMST(HZM,"TSHL",TSHL)
 ;;I $G(HZM)>0 D IGUL^W4MENUBT(HZM,1)
 ;;S HNH=$$HNH^W4HZMST(HZM)
 ;;S TSHL=$$TOTORD^W4HZMST(HZM)
 ;
 I $$D^W3TMPORD(JB)=11 D
 .D PUT^W3HZMST(JB,"HNH",HNH) ; +HNH2 ?
 .D PUT^W3HZMST(JB,"HNH2",HNH2) ; +HNH2 ?
 .D PUT^W3HZMST(JB,"AHUZ",HNHAH)
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 ;
 S HNH=HNH+HNH2
 ;
EHNH Q $J(HNH,2,2)
 ;
 ;
TOTHN(HZM) ;
 Q $$TOTHN^W4HZMST(HZM)
 ;
TOT(HZM) ;
 Q $$TOT^W4HZMST(HZM)
 ;
NOCUSNAME(VT) ;
 I $G(VT)=4 Q 1
 I $G(VT)=6 Q 1
 I $G(NODEL) Q 1
 Q 0
 ;
PUTCUSNAME(PRM) ;
 N HZM,IND,NOM,VL
 S HZM=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 S VL=$$CNWEB^%L1FRM($P(PRM,";",4))
 S VL=$$INVH^%L1FRM(VL)
 D SETTOCUSNAME^W4HZMST(HZM,IND,NOM,VL)
 Q
 ;
SHVA1(STAM) ;
 I $G(@$$^W4PRM@("SHVA1")) Q 1
 I $$GET^W4TMPPAY(3,"SUM")<0 Q 1
 N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'HZM 0
 I $$MSL^W4MSL(HZM)&$G(@$$^W4PRM@("MSLSHVA1")) Q 1
 ;
 I $$TAW^W4DLPK($$GETP^%W1PRM("NMB"))&$G(@$$^W4PRM@("TAWSHVA1")) Q 1
 I HZM>0,$$ITRA^W4HZMST(HZM)'>$G(@$$^W4PRM@("CATSHL")) Q 1
 Q 0
 ;
SHOWMVC ;
 N N,A,WHO,MVC,GETHNH,TXT,HNH,MVC1,QNORD,SETMVC,SETMVC1,QNMVC,HNHMVC
 I $G(HZM)<0 Q
 I $G(HZM)="" Q
 I '$$^W4HZFULL(HZM) Q
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I $D(@$$^W4ORD@(HZM,"MVCWHO:"_WHO)) Q
 .
 .I WHO["MVC1-" D
 ..W "<span style=""font-size:"_$$^W3FSZ_";color:red;"_$$FONTFM^W3CSS_""" >"
 ..S TXT=$$MVCTXT(WHO)
 ..W $$H2U^%L1FRM(TXT)
 ..W "</span><br><br>",!
 ..S @$$^W4ORD@(HZM,"MVCWHO:"_WHO)=$ZD($H,"DD.MM.YY  24:60")
 ;
 Q
 ;
 ;
MVC1(HZM) ;
 N N,A,WHO,OK S OK=0
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D  Q:OK
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I WHO["MVC1-" S OK=1
 Q OK
 ;
 ;
PERUT ;----------------------- PERUT TASHLUMIM -----------------------
 W "<div align=""center"" >"
 ;
 D SHOWMVC ;
 ;
 N WD S WD=60
 I $$^W6,$$1024^W4WDSCR S WD=80
 W "<table width="""_WD_"%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 ;
 D PRESSTODEL
 ;
 I '$$^W6 D
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("PAIDCASH") W "</td>" D RZD
 . D TDRKV("MZ") W $J($$SMZ^W4T(HZM),2,2)
 . W "</td>",!
 . D DETAILS(1)
 .W "</tr>",!
 .;
 .D SPACE
 .;
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("PAIDCHECK") W "</td>" D RZD
 . D TDRKV("CH") W $J($$CHK^W4HZMST(HZM),2,2)
 . W "</td>",!
 . D DETAILS(2)
 .W "</tr>",!
 .;
 .D SPACE
 ;
 W "<tr>",!
  D TDNM W $$^%W1DICT("PAIDCRCARD") W "</td>" D RZD
  D TDRKV("V") W $J($$CA^W4HZMST(HZM),2,2)
  W "</td>",!
  D DETAILS(3)
 W "</tr>",!
 ;
 D SPACE
 ;
 D
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("PAIDCREDIT") W "</td>" D RZD
 . D TDRKV("ASR") W $J($$ASR^W4HZMST(HZM),2,2)
 . W "</td>",!
 . D DETAILS(4)
 .W "</tr>",!
 .;
 .D SPACE
 ;
 I '$$^W6 D
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("SHNHA") W "</td>"  D RZD
 . W "<td style=""color:red;font-size:"_$$^W3FSZ(18)_""" dir=""LTR"">"
 .  W $$HNH(HZM)
 . W "</td>",!
 . D DETAILS(6)
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $G(%ARG("FIRST")),$$SHOWMVC1(HZM) D SCRIPTMVC(HZM)
 Q
 ;
 ;
DETAILS(VT) ;
 W "<td>&nbsp;</td>",!
 W "<td align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
  W "<table class=""btnfn"""
  W " onClick="""
  I VT="1" W "CashDetails()"
  I VT="2" W "CheckDetails()"
  I VT="3" W "CrCardDetails()"
  I VT="4" W "CreditDetails()"
  I VT="6" W "DiscDetails()"
  W """>",!
   W "<tr>"
    W "<td align=""center"" valign=""center"" "
    W ">"
    W $$^%W1DICT("DETAILS")
   W "</td></tr>",!
  W "</table>",!
 W "</td>",!
 Q
 ;
SIGNDEL ;
 S BC=";background-color:pink" S NODEL=1
 Q
 ;
DELPYM ;-----------------
 I $G(PRM)'="ONLY",'NODEL D
 .I $$HZM^W4MSL(HZM),$$CLOSE^W4HZMST(HZM) Q
 .I $$NOPRESSTODEL(HZM) Q
 .I $$NODELVT(HZM,VT) Q
 .W " onClick=""ConfirmDel('"_VT_"','"_IND_"',"_N_")"""
 Q
 ;
BSL(IND,N) ;
 N GLORD D GLORD^W4HZMST
 N A S A=$G(@GLORD@("CB",IND,N))
 I IND="ASR",$E($P(A,"*",5),1,4)="BSL;" Q 1
 Q 0
 ;
NOTFULLMPPAY(STAM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") I '$$^W4ISORD(HZM) Q ""
 N L S L=$O(@$$^W4HZMP(HZM)@(999),-1) I 'L Q ""
 N TS S TS=$$^W4HZMP(HZM,L,"TSHMP")
 N SHUL S SHUL=$$^W4HZMP(HZM,L,"SHUL")
 I SHUL<TS Q SHUL_"<>"_TS
 Q ""
 ;
NOPRESSTODEL(HZM) ;
 I '$$^W4ISORD(HZM) Q 1
 I $$^W4DEL(HZM) Q 1
 I $$PYTOT Q 1
 I '$$^W4CLOSE(HZM) Q 0
 I $$^W4CLOSE(HZM),HZM<0 Q 1
 ;
 N OK S OK=1
 I $$^W4CLOSE(HZM) D
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D
 ..I N="ASR"!(N="V") S OK=0
 Q OK
 ;
NODELVT(HZM,VT) ;
 I '$$^W4ISORD(HZM) Q 1
 I $$^W4DEL(HZM) Q 1
 I $$^W4CLOSE(HZM),VT<2!(VT>4) Q 1
 Q 0
 ;
VCSUPER(STAM)
 I '$$SUPER^W3PRM Q 0
 N HZM S HZM=+$$GETP^%W1PRM("HZM")
 ;;I '$G(%ARG("FIRST")) Q 0
 ;
 I $O(@$$^W4ORD@(HZM,99999),-1)'>$G(@$$^W4ORD@(HZM,"VC","LASTSTR")) Q 0
 I $G(@$$^W4ORD@(HZM,"VC",1,"CARD")) Q 1
 Q 0
 ;
DELPART(STAM) ; 
 N HZM S HZM=$$GETP^%W1PRM("HZM") 
 I 'HZM Q "NOTORDERNUMBER" 
 K @$$^W4ORD@(HZM,"PART") 
 K @$$^W4ORD@(HZM,"TS") 
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .S $P(^(N),"\",13)=""
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N,N1)) Q:N1=""  I N1 D
 ..S $P(^(N1),"\",13)=""
 ..S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N,N1,N2)) Q:N2=""  I N2 D
 ...S $P(^(N2),"\",13)=""
 Q 1
 ;
MVCTXT(WHO,PRMSG) ; 
 N (JB,WHO,PRMSG)
 S MVC=$P(WHO,"-",2)
 S GETHNH=$P(WHO,"-",3)
 D PRS^%L1FRM(GETHNH,"HNH;MVC1;QNORD;SETMVC;SETMVC1;QNMVC;HNHMVC",";")
 S BR="" I $G(PRMSG) S BR=" <BR> "
 S TXT=" : "_MVC1_" rvan"
 N WORD S WORD="zecigi" 
 I QNORD#1 S WORD="b""w",QNORD=$J(QNORD,3,3)
 S TXT=" rvana "_WORD_" "_QNORD_" zipw "_BR_TXT
 S TXT=SETMVC1_BR_TXT
 S TXT="dgpd g""y "_HNH_" law - "_BR_TXT
 Q TXT
 ;
MSG4MVC(HZM) 
 N (HZM,JB)
 S REK="<PUSTO>"
 I $G(HZM)<0 Q REK
 I $G(HZM)="" Q REK
 I '$$^W4HZFULL(HZM) Q REK
 S TXT=""
 S N="",I=0 F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .
 .I WHO["MVC1-" D
 ..S TXT=$$MVCTXT(WHO,1)_$S($L(TXT):" <HR> "_TXT,1:TXT)
 ;
 I $L(TXT) Q TXT
 Q REK 
 ;
SCRIPTMVC(HZM) ; 
 S OKMVC=0
 N TX S TX=$$MSG4MVC(HZM) S:TX="" TX="<PUSTO>"
 I TX'="<PUSTO>" D
  . S OKMVC=1
  . W "<script>",!
  .  W "MsgI('!"_TX_"',"""",""font-size:32pt;background-color:"_$TR($$FNFG^W4CSS,"#","")_";color:"_$TR($$FNBG^W4CSS,"#","")_";line-height:50px"",550,640,"""",30,1)",!
  . W "</script>",!
 Q
 ;
SHOWMVC1(HZM) ;
 N LAST S LAST=$O(@$$^W4ORD@(HZM,9999),-1)
 I LAST=$G(@$$^W4ORD@(HZM,"LASTMVC1")) Q 0
 Q 1
 ;
ERHBMAS() ; 
 N HZ S HZ=$$GETP^%W1PRM("HZM") I HZ<1 Q 0
 N HB S HB=$$NCAB^W4HZMST(HZ) I HB<1 Q 0
 N HBMAS S HBMAS=$$GETNOM^W4HBMAS(HB,"HMK") I HBMAS Q 0 
 N ER S ER=$$ERROR^W4HBMAS(HB,"HMK") I ER=""!(ER=0)!(ER=200) Q 0
 Q ER 
 ;
OLDTOKEN(HZM)
 N OK S OK=0
 N SUM S SUM=$$TSHL^W4HZMST(HZM)
 I $$OLD^W4HBMSTK(SUM) D
 .W "<script>",!
 . W "MsgA(""UPDATETOKENPLEASE"")",!
 .W "</script>",!
 .S OK=1
 Q OK
 ;
 ; 
SHEMCA(HZM,N) ; 
 I '$G(HZM)!'$G(N) Q ""
 N ST S ST=$G(@$$^W4ORD@(HZM,"CB","V",N)) I ST="" Q "" 
 N V S V=$P($P(ST,"*"),"$V",2) I 'V Q ""
 N KK S KK="CARDCOM"
 I $$PAPJ^W4PRM S KK="GIFT"
 Q $S(V=1:"ISRACARD",V=2:"VIZA",V=3:"DINERS",V=4:"AM.EXP",V=5:"JB",V=6:"MAX(LEUMI)",V=7:KK,V=8:"MAESTRO",V=9:"FINITY",1:" ")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PAYVW0
W4PAYVW ; [ 25.01.24 08:09 ] [ 19.11.23 15:10 ] [ 17.09.23 09:43 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D KILL^W4ABC
 S HZM=$$GET^%W1PRM("HZM")
 I $G(%ARG("PYTOT")) D PUT^%W1PRM("PYTOT",%ARG("PYTOT"))
 ;
 I $$^W4HSPART(HZM),'$$PYTOT,'$G(%ARG("ORDVW")) D ^W4PARTPY(HZM) Q
 ;
 ;----------------   SHOW PAYMENTS DETAILS (PREV OR CUURENT )
 I $G(%ARG("VT"))=1 D VW(1,"MZ","60%") Q
 ;
 I $G(%ARG("VT"))=2 D VW(2,"CH","80%") Q
 ;
 I $G(%ARG("VT"))=3 D VW(3,"V","60%") Q
 ;
 I $G(%ARG("VT"))=4 D VW(4,"ASR","98%") Q
 ;
 I $G(%ARG("VT"))=6&($G(%ARG("VZ"))="CMNT") Q
 ;
 I $G(%ARG("VT"))=6 D VW(6,"HNH1","70%") Q
 ;
 I $G(%ARG("VT"))=7 D  D VW(7,"ASR","80%") Q
 .I $G(%ARG("VZ"))="CIBCARD",$G(%ARG("FAST")),$$CIBCMP^W4PRM D
 ..S %ARG("VZ")="CMPCARD"
 ;
 I $G(%ARG("VT"))=8 D VW(8,"ASR","80%") Q
 ;
 I $G(%ARG("VT"))=14 D ^WBSHOWNK(HZM) Q
 ;
 I $G(%ARG("VT"))=15 D VW(15,"ASR","80%") Q
 ;
 ;-------------------------------------------------------------
 ;
 W "<br>",!
 ;
 D PERUT
 Q
 ;
 ;
PYTOT(STAM) ;
 I $G(%ARG("PYTOT")) Q 1
 I $$GETP^%W1PRM("PYTOT") Q 1
 Q 0
 ;
TDNM ;
 W "<td style=""color:black;font-size:"_$$^W3FSZ(18)_""">"
 Q
TDRKV(VT) ;
 W "<td style=""color:"_$$COLORKV(VT)_";font-size:"_$$^W3FSZ(18)_""" dir=""LTR"">"
 Q
 ;
KF(NUM) Q $$^W4KF(NUM)
 ;
COLORKV(VT) ;
 I VT="MZ",$$MZM^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 I VT="CH",$$CHK^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 I VT="V",$$CA^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 I VT="ASR",$$ASR^W4HZMST(HZM)'>0,$D(@$$^W4ORD@(HZM,"CB",VT))>9 Q "red"
 Q "green"
 ;
PRESSTODEL ;
 I $$CLOSE^W4HZMST(HZM),$$^W4DEL(HZM) D SPACE Q
 I $$NOPRESSTODEL(HZM) Q
 W "<tr><td colspan=""4"" style=""color:red;"_$$FONTFM^W3CSS_";font-weight:bold"">"
  W $$^%W1DICT("TODELETEPRESSDETAILS")
 W "</td></tr>",!
 Q
 ;
SPACE W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
RZD D TDNM W " : </td>"
 Q
 ;
 ;
VW(VT,IND,WD) ;
 W "<div align=""center"" >",!
  ;
  N VZ S VZ=$G(%ARG("VZ"),"SUM")
  ;---------- SHOW PREVIOUS PAYMENT'S DETAILS --
  I VZ="SHOW" D SHOW(VT,VZ) D KILL^W4PAY G END ;
  ;
  I VZ="SHOWONLY" D SHOW(VT,"SHOW","ONLY") G END
  ;
  ;----------- CURRENT PAYMENT -----------------
  I '$D(HZM) S HZM=$$GET^%W1PRM("HZM")
  ;
  I $D(@$$^W4ORD@(HZM,"CB",IND))>9 D
  .W "<input type=""button"" style=""height:"_$$KF(50)_"px;width:"_$$KF(160)_"px"""
  .W " value="""_$$^%W1DICT("PREVPAYMDETAILS")_""" "
  .W "onClick=""PaymDetails('"_VT_"')"" />"
  .W "<br><br>",!
  ;
  ;;
  I $G(%ARG("VT"))=3,$G(%ARG("VZ"))="SUM" D
  .D KILLVAR^W4PAYKB("PAYM")
  .D KILLVAR^W4PAYKB("CRCARD")
  .D KILLVAR^W4PAYKB("DOP")
  .N SUM S SUM=$$GET^W4TMPPAY(3,"SUM")
  .S SI=1 I SUM<0 S SI=51
  .D PUT^W4TMPPAY(3,"SI",SI)
  .D PUT^W4TMPPAY(3,"SA",1)
  .D PUT^W4TMPPAY(3,"MB",1)
  .S WD="20%"
  ;
  I $G(%ARG("VT"))=4,$G(%ARG("VZ"))="CUST" D
  .D KILLVAR^W4PAYKB("SUM")
  ;
  I $G(%ARG("VT"))>1&($$LASTSTAGE^W4PAYKB()'?.P) D
   .D CURRENTPAYMDETAILS ; -- FIRST GROUP FROM ^TMPSHOW
  ;
  D CURRENTPAYMDET2 ; -- SECOND GROUP FROM ^TMPZ
  ;
  S OKMVC=0
  I $$GETP^%W1PRM("FASTPAY") D  Q:OKMVC
  .D KILL^%W1PRM("FASTPAY")
  .I $$SHOWMVC1(HZM) D SCRIPTMVC(HZM)  
  .I OKMVC D
  ..W "<script>",!
  ..W " tt=setTimeout('ReloadWithoutFast()',4000)",!
  ..W "</script>",!
  ;
  M ^AA("PAYVW-VW","ARG")=%ARG ; ***
  ;
  I $G(%ARG("END"))&(($G(%ARG("VZ"))["CRCARD")!($G(%ARG("VZ"))="DOP")) D
  .W "<script>",!
  .W " PayCA()",!
  .W "</script>",!
  ;
 Q
 ;
  ;
END W "</div>",!
  Q
  ;
SOF ;
 Q
  ;
CRTMPSHOW ;
 N N,VZ,A,VL,NM,CD
 S VZ="SHOWTMP"
 K @$$^W4MAIN("TMPSHOW")
 S N="" F  S N=$O(^[$$^W3MAIN]W4PAY($$COUNTRY^W3PRM,VT,VZ,N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD=A Q:CD=""
 .I '$D(@$$^W4TMPPAY@(VT,CD)) Q
 .N OK S OK=1
 .I $L($G(%ARG("VZ"))) D
 ..N N1 S N1="" F  S N1=$O(@$$^W4PAY@(VT,%ARG("VZ"),N1)) Q:N1=""  D  Q:'OK
 ...I $P($G(^(N1)),";")=CD S OK=0
 .Q:'OK
 .S @$$^W4MAIN("TMPSHOW")@(N)=$P(A,";")_";"_$$GET^W4TMPPAY(VT,CD)
 Q
 ;
 ;
CURRENTPAYMDETAILS ;  -- FROM ^TMPSHOW
 D CRTMPSHOW ; --> ^TMPSHOW(NP)=NM;VL
 Q:'$D(@$$^W4MAIN("TMPSHOW"))
 ;
 N NP,K S NP="" F K=1:1 S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""
 N WD S WD=12*(K+2) S:WD>98 WD=98
 S WD=WD_"%"
 ;
 W "<table dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
 ;
 W "<tr>",! ; -- KOTERET
 N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .S NM=$P(A,";")
 .D TH W $$^%W1DICT(NM)_"</th>",!
 W "</tr>",!
 ;
 W "<tr>",! ; -- TOHEN
 N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
 .S A=$G(^(NP))
 .S VL=$P(A,";",2)
 .N NOHB S NOHB=0
 .W "<td "_$$STYLEBOLD_" "_$S(VL?."-"1N.N.".".N:" dir=""LTR""",1:"")_" >"
 . W $$RKV(VL)
 .W "</td>",!
 W "</tr>",!
 ;
 W "</table>",!
 W "<br />",!
 Q
 ;
 ;
CURRENTPAYMDET2 ;
 I '$G(%ARG("VT"))!'$L($G(%ARG("VZ"))) Q
 ;
 D VWTBL(%ARG("VT"),%ARG("VZ"),"W4PAY","W4TMPPAY") ; SHOW CURR PAYM DETAILS
 ;                                                 ; FROM ^TMPZ
 Q:'$G(%ARG("END"))  Q:$G(%ARG("VZ"))'="SUM"  Q:$G(%ARG("VT"))'=3
 Q:$$GET^W4TMPPAY(3,"SUM")<0
 ;
 W "<br /><br />",!
 ;
 D BTNCA
 Q
 ;
 ;
VWTBL(VT,VZ,GLZ,GLTMP) ; -- GLZ = ^W4PAY
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""10"">",!
 ;
 I VT=4,VZ="TL" D
 .W "<caption "_$$STYLEBOLD_" >"
 . W $$^%W1DICT("TOPAYM",$$GET^W4TMPPAY(4,"ASRL")-$$GET^W4TMPPAY(4,"LKHNH"))
 .W "</caption>"
 ;
 W " <tr>"
 ;
 N J S J=0
 N GL D @("GL^"_GLZ) ; -- GL=TMPZ
 ;
 N NP S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
 .S J=J+1
 .N CD X "S CD=$$NM^"_GLZ_"(VT,VZ,NP)"
 .I CD="" D TH W "&nbsp;" W "</th>",! Q
 .D TH W $$^%W1DICT(CD)_"</th>",!
 ;
 N MAXJ S MAXJ=J
 W "</tr>",!
 ;
 ;
 W "<tr>" S NS=1
 S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
 .N NM,VL
 .X "S CD=$$NM^"_GLZ_"(VT,VZ,NP)"
 .X "S VL=$$GET^"_GLTMP_"(VT,CD)"
 .W "<td id="""_CD_NS_""" style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""">"
 . W $$RKV(VL)
 .W "</td>"
 ;
 W "</tr>",!
 ;
 W "</table>",!
 Q
 ;
 ;
BTNCA ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W " <tr>",!
 W "  <td>",!
 W "   <input type=""button"" class=""btn"" "
   W "value="""_$$^%W1DICT("CRCARD1C")_""" onMouseUp=""CrCardInput()"">"
 W "  </td>",!
 ;
 W "  <td>",!
 W "   <input type=""button"" class=""btn"" "
   W "value="""_$$^%W1DICT("CRCARDPC")_""" onMouseUp=""SugAshrai()"">"
 W "  </td>",!
 ;
 W "  <td>",!
 W "   <input type=""button"" class=""btn"" style=""color:red"" "
   W "value="""_$$^%W1DICT("BACK")_""" onMouseUp=""Back()"">"
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 ;
 Q
 ;
 ;
SHOW(VT,VZ,PRM) ;---------------- SHOW PAYMENT'S DETAILS
  I $G(%ARG("ORDVW")) D
  .W "<input type=""button"" class=""btn"" style=""background-color:white;color:red;font-size:"_$$^W3FSZ(16)_""" "
  . W "value="""_$$^%W1DICT("CLOSE")_""" "
  . W " onClick=""parent.ifrHide('MUST')"" />"
  .W "<br><br>"
  ;
  I $G(PRM)'="ONLY" D
  .W "<span style="""_$$FONTFM^W3CSS_";color:red;font-size:"_$$^W3FSZ(12)_";font-weight:bold"" >"
  .D
  .. I $$^W4DEL(HZM) W $$^%W1DICT("DELETEDBYORDER",$$^W4DEL(HZM)) Q
  .. I $$NOPRESSTODEL(HZM) Q
  .. W $$^%W1DICT("TODELETEPAYPRESSONTABLE")
  .W "</span><br>",!
  ;
  I VT=6 D SHOWHNH ; ANAHA
  ;
  I VT=6,'$$SHNH1(HZM) Q
  ;
  N PRCIB S PRCIB=0
  N PRVC S PRVC=0
  N PRCPN S PRCPN=0
  ;
  I VT=7 S VT=4,PRCIB=1
  I VT=8 S VT=4,PRVC=1
  ;
  D CREATE^W4PAY(VT,VZ)
  ;
  N WD,NP,J,NM S J=0
  D GL^W4PAY ; --> GL=TMPZ
  S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  S J=J+1
  S WD=12*(J+2) I WD>98 S WD=98
  S WD=WD_"%"
  ;
  W "<table id=""tbpaym"" dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
  W " <tr>",!
   S J=0
   ;
   S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
   .S J=J+1
   .S NM=$$NM^W4PAY(VT,VZ,NP) I NM="" D TH W "&nbsp;" W "</th>",! Q
   .D TH W $$^%W1DICT(NM)_"</th>",!
   ;
   I '$$NOCUSNAME(VT) D
   .D TH W $$^%W1DICT("TOCUSNAME")_"</th>",!
   .;;W "<th>&nbsp;</th>",!
   ;
   I $$NOCUSNAME(VT) D
   .D TH W $$^%W1DICT("COMMENT")_"</th>",!
   ;
   N MAXJ S MAXJ=J
  W "</tr>",!
  ;
  S NS=0
  D GLORD^W4HZMST
  ;
  N NODEL
  S N="" F  S N=$O(@GLORD@("CB",IND,N)) Q:N=""  S A=$G(^(N)) D
  .S NS=NS+1 K MVL
  . 
  .I $$BSL(IND,N) D
  ..N HRA S HRA=$P(A,"*",5)
  ..N A1 S A1=A
  ..N LK S LK=$P(A,"*")
  ..S $P(A1,"*")=$P(HRA,";",2)
  ..S $P(A1,"*",13)=$P(A,"*",12)
  ..S $P(A1,"*",12)=$P(HRA,";",3)
  ..S $P(A1,"*",6)=LK
  ..S A=A1
  .
  .S BC="" N NOMASR S NOMASR=N S NODEL=0
  .
  .N NP S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
  ..I VT=6,$$GET(VT,VZ,NP,A)["VALUECARD" S NODEL=1 ; -- ATAVA VC ?
  ..I $$DL^W4PAY(VT,VZ,NP)[","&($$GET(VT,VZ,NP,A)<0) D SIGNDEL Q
  ..I $D(@GLORD@("CB",IND,N,"DEL")) D SIGNDEL Q
  ..I $$^W4DEL(HZM) D SIGNDEL Q
  .
  .I $$GET^W4GTVCH(HZM,N,IND,"LKHN")=$$COUPPH^W4PRM S PRCPN=1
  .I PRCIB,$$GET^W4GTVCH(HZM,N,IND,"LKHN")'=$$^W4CIBLKH Q
  .I $G(PRVC),'$$D^WV(HZM,N) Q
  .
  .W "<tr style=""height:"_$$KF(50)_"px"_BC
  .I $G(PRM)'="ONLY",'NODEL D
  ..I $$HZM^W4MSL(HZM),$$CLOSE^W4HZMST(HZM) Q
  ..I $$NODELVT(HZM,VT) Q
  ..I $$NOPRESSTODEL(HZM) Q
  ..W ";cursor:pointer"
  .W """ id=""trpaym"_N_""""
  .W " >"
  .
  .N NP S NP="" F  S NP=$O(@GL@(VT,VZ,NP)) Q:NP=""  D
  ..N DIR S DIR=$$^%W1DIR
  ..I $$DL^W4PAY(VT,VZ,NP)["," S DIR="LTR"
  ..N NOHB S NOHB=0
  ..
  ..N NM S NM=$$NM^W4PAY(VT,VZ,NP) I NM="HZMLK"!(NM="LKHN1") S NOHB=1
  ..
  ..W "<td dir="""_DIR_""" id="""_NM_NS_""" "
  .. D DELPYM
  .. W " style="""_$$FONTFM^W3CSS_";text-align:center"">"
  .. N RKV S RKV=$$GET(VT,VZ,NP,A)
  .. 
  .. I $$BSL(IND,N),NM="LKHN1" S RKV=$P(A,"*",12),NOHB=0 ; -- NOHB = NO HEBREW
  ..
  .. I NM="HZMLK" D
  ... I RKV?1N.N.E!(RKV?.E1"W"1N.E) S NOHB=1 Q
  ... Q  ; -- 17/09/23
  ... I $$HZM^W4MSD(HZM) S RKV=$$INVH^%L1FRM(RKV)
  ... S RKV=$$H2U^%L1FRM(RKV)
  ..
  .. I NM["DISCAST",$G(@$$^W4PRM@("SHOWCRTZ")) D
  ... N STRIN S STRIN=$G(@$$^W4ORD@(HZM,"CB","V",N,"STRIN"))
  ... N ASHTZ S ASHTZ=+$P(STRIN,"Y",2) Q:'ASHTZ
  ... S ASHTZ=$TR($J(ASHTZ,9)," ",0)
  ... S RKV=RKV_" <BR> <span style=""color:grey"">ID "_ASHTZ_"</span>",NOHB=1
  ..
  .. I NM["CARDNUMBER",$L(RKV)>3 D
  ... S RKV=$$SHOWCARD^%L1FRM(RKV),NOHB=1
  ... I NM="CREDITCARDNUMBER" D
  .... S RKV=RKV_" <BR> "_$$H2U^%L1FRM($$GET^W4GTVCH(HZM,N,IND,"SHEMCA"))
  ..
  .. W $$RKV(RKV,NOHB)
  ..
  .. I PRCPN,NM="LKHN1" D
  ... W "<br><span style=""font-size:"_$$^W3FSZ(10)_";color:darkblue"" >",!
  ...   W $$CPCARD^W4HZMST(+$$GETP^%W1PRM("HZM"),"NA"_NOMASR)
  ... W "</span>",!
  ..W "</td>"
  .
  .N VL S VL=$$TOCUSNAME^W4HZMST(HZM,IND,N)
  .W "<td>"
  .W "&nbsp;"
  .I '$$NOCUSNAME(VT) D
  .. I VL'?." " W $$H2U^%L1FRM(VL) Q
  .. W "&nbsp;"
  .I $G(@$$^W4ORD@(HZM,"CB",IND,N,"DEL")) D
  .. I VL'?." " W "<br>"
  .. D PAYMBITINF(HZM,IND,N)
  .W "</td>"
  .
  .I '$$NOCUSNAME(VT) D
  ..W "<td align=""center"" >"
  .. D TOCUSNAMEBTN
  ..W "</td>",!
  .
  .W "</tr>",!
  Q
  ;
  ;
PAYMBITINF(HZM,IND,N) ;
 N HZMDEL1,HZMDEL2
 S HZMDEL1=$P(^("DEL"),"\",4)
 S HZMDEL2=$P(^("DEL"),"\",5)
 I HZMDEL1>0 D
 .W "<span style=""color:red;font-size:"_$$^W3FSZ(9)_";cursor:pointer"" "
 . W " onMouseUp=""ShowDelPaymOrders('"_$$NMB^W4HZMST(HZM)_"','"_HZMDEL1_"','"_HZMDEL2_"')"" "
 .W ">"
 . W $$^%W1DICT("PAYMENTDELETEDBYORDER",HZMDEL1_"<>"_HZMDEL2)
 .W "</span>",!
 Q
 ;
 ;
SHOWHNH ;
 N TSHL
 S TSHL=$$TSHL^W4HZMST(HZM)
 N HNH S HNH=$$HNH(HZM) ; --> HNHAH
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(16)_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SHNH",$J(HNH,2,2))_"</span>",!
 ;
 I $$HNH2^W4HZMST(HZM) D
 .N HNH2 S HNH2=$$HNH2^W4HZMST(HZM)
 .W "<br><br>"
 .W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("HNH2",$J(HNH2,2,2))_"</span>",!
 ;
 I HNHAH D
 .W "<br /><br /><table dir="""_$$^%W1DIR_""" width="""_WD_""" border=""1"" cellspacing=""0"" style=""text-align:center"" >",!
 .W "<caption style=""font-size:"_$$^W3FSZ_""">"_$$^%W1DICT("INCLUDEPERCENTDISC")_"</caption>"
 .W "<tr >" ;; class=""sheetgroups"">",!
 . W "<td>"_$$^%W1DICT("BEFOREDISC")_"</td>"
 . W "<td>"_$$^%W1DICT("DISCPERCENT")_"</td>"
 . W "<td>"_$$^%W1DICT("HOWMUCHDISC")_"</td>"
 . I $G(@$$^W4ORD@(HZM,"HNH"))'?.P D
 .. W "<td>"_$$^%W1DICT("WHOSUBMNM")_"</td>"
 .. W "<td>"_$$^%W1DICT("CAUSEDISC")_"</td>"
 .W "</tr>",!
 .
 .W "<tr>",!
 . N TOTHN S TOTHN=$$TOTHN(HZM)
 . W "<td>"_$J(TOTHN,2,2)_"</td>",!
 . W "<td>"_HNHAH_"</td>",!
 . W "<td>"_$J(TOTHN*HNHAH*.01,2,2)_"</td>",!
 .
 .I $G(@$$^W4ORD@(HZM,"HNH"))'?.P D
 ..N A,WHO,SIBA1 S A=$G(^("HNH"))
 ..S WHO=$P(A,"*",2)
 ..S SIBA1=$P(A,"*",4)
 ..W "<td>"_$$H2U^%L1FRM($$^W4NAME(WHO))_"</td>"
 ..W "<td>"_$$H2U^%L1FRM(SIBA1)_"</td>"
 .
 .W "</tr>",!
 .W "</table>",!
 ;
 S SLKHNH=$J($$SLKHNH(HZM),2,2)
 I SLKHNH D
 .W "<br /><span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SLKHNH",$J(SLKHNH,2,2))_"</span>",!
 .W "<br /><span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(11)_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SLKHNHDETAILS")_"</span>",!
 ;
 W "<br /><br />",!
 S SHNH1=$J($$SHNH1(HZM),2,2)
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"_$$^%W1DICT("SHNH1",SHNH1)_"<span>",!
 Q
 ;
 ;
TOCUSNAMEBTN ;
  I $G(NODEL) W "&nbsp;" Q  ; -- PAYMENT DELETED
  ;
  W "<input type=""button"" class=""btn"" id=""tocusname"_IND_""" "
  W " style=""z-Index:100"" "
  W " value="""_$$^%W1DICT("TOCUSNAME")_""" "
  N PRM S PRM=HZM_";"_IND_";"_N_";"_$$CLWEB^%L1FRM(VL)
  I '$$^W4CLOSE(HZM) W " onClick=""ToCusName('"_PRM_"')"" />"
  I $$^W4CLOSE(HZM) W " onClick=""PswCusName('"_PRM_"')"" />"
  Q
  ;
TH W "<th style=""font-size:"_$$^W3FSZ(12)_""""
   W ">"
 Q
 ;
STYLEBOLD(STAM) ;
 Q "style=""text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""""
 ;
RKV(VL,NOHB) ;
 I VL="" Q "&nbsp;"
 I VL?1N.N1"="1N.N,$L(VL)>15 S VL=$TR($J("",$L(VL))," ","*") Q VL
 I VL?1"-"1N.N.".".N Q "<span style=""color:red"">"_VL_"</span>"
 I $G(NOHB) Q "<span dir=""LTR"">"_VL_"</span>"
 Q $$H2U^%L1FRM(VL)
 ;
 ;
GET(VT,VZ,NP,FROM) ;
 N IND,VL,DL
 N %FLD S %FLD=$G(FROM)
 S IND=$$WHERE^W4PAY(VT,VZ,NP)
 S DL=$$DL^W4PAY(VT,VZ,NP)
 S VL=$P(%FLD,"*",+IND)
 I IND["," S VL=$P(VL,$P(IND,",",2),$P(IND,",",3))
 ;
 I IND["+" D
 .N VL1 S VL1=0
 .N J F J=1:1:$L(IND,"+") D
 ..N IND1 S IND1=$P(IND,"+",J)
 ..S VL1=VL1+$P(%FLD,"*",IND1)
 .S VL=VL1
 ;
 I IND["-" D
 .N VL1 S VL1=0
 .N J F J=1:1:$L(IND,"-") D
 ..N IND1 S IND1=$P(IND,"-",J)
 ..S VL1=VL1+($P(%FLD,"*",IND1)*$S(J=1:1,1:-1))
 .S VL=VL1
 ;
 I DL["." S VL=$TR($J(VL,+DL)," ","0")
 I DL["," S VL=$J(VL,$P(DL,",",2),$P(DL,",",2))
 N PREPROG S PREPROG=$$PREPROG^W4PAY(VT,VZ,NP)
 ;
 I PREPROG'?.P X PREPROG
 Q VL
 ;
 ;
MM ;
 S VL=$E(VL,1,2)
 Q
YY ;
 S VL=$E(VL,3,4)
 Q
 ;
SHOWSUM ;
 N SUM S SUM=+$$GET^W4TMPPAY(3,"SUM") Q:'SUM
 W "<caption style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";text-align:center"">"
 W $$^%W1DICT("TOPAYM",$J(SUM,2,2))
 W "</caption>",!
 Q
 ;
SLKHNH(HZM) ;
 N SHNH,LKHNH S SHNH=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S LKHNH=$$GET^W4GTVCH(HZM,N,"ASR","LKHNH")
 .S SHNH=SHNH+LKHNH
 Q SHNH
 ;
SHNH1(HZM) ;
 N SHNH1,HNH1 S SHNH1=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  D
 .S HNH1=+$G(^(N))
 .S SHNH1=SHNH1+HNH1
 Q SHNH1
 ;
HNH(HZM) ;
 N TSHL
 S TSHL=$$TSHL^W4HZMST(HZM)
 S HNHAH=$$HNHAH^W4HZMST(HZM)
 N HNH,HNH0,HNH2 S HNH2=$$HNH2^W4HZMST(HZM)
 S HNH=$$HNHALL^W4HZMST(HZM)
 ;
 G EHNH
 ;;
 I $$^W4CLOSE(HZM) G EHNH
 ;
 S HNH0=HNH
 I HNH["%" S HNHAH=+HNH,HNH0=$P(HNH,"=",2)
 ;
 N TOTHN S TOTHN=$$TOTHN(HZM)
 S HNH=$J(TOTHN*HNHAH*.01,2,2)+$$SLKHNH(HZM)+$$SHNH1(HZM)
 I $G(HZM)>0 D IGUL^W4MENUBT(HZM,1)
 ;
 ;;S TSHL=$J($$TOT(HZM)-HNH,2,2)
 ;
 D PUT^W4HZMST(HZM,"HNH",HNH)
 D PUT^W4HZMST(HZM,"HNHAH",HNHAH)
 N TSHL S TSHL=$$TOTORD^W4HZMST(HZM) ; TSHL AHAREI IGUL ,HNH2 -> ^W4ORD
 ;
 ;;D PUT^W4HZMST(HZM,"TSHL",TSHL)
 ;;I $G(HZM)>0 D IGUL^W4MENUBT(HZM,1)
 ;;S HNH=$$HNH^W4HZMST(HZM)
 ;;S TSHL=$$TOTORD^W4HZMST(HZM)
 ;
 I $$D^W3TMPORD(JB)=11 D
 .D PUT^W3HZMST(JB,"HNH",HNH) ; +HNH2 ?
 .D PUT^W3HZMST(JB,"HNH2",HNH2) ; +HNH2 ?
 .D PUT^W3HZMST(JB,"AHUZ",HNHAH)
 .D PUT^W3HZMST(JB,"TSHL",TSHL)
 ;
 S HNH=HNH+HNH2
 ;
EHNH Q $J(HNH,2,2)
 ;
 ;
TOTHN(HZM) ;
 Q $$TOTHN^W4HZMST(HZM)
 ;
TOT(HZM) ;
 Q $$TOT^W4HZMST(HZM)
 ;
NOCUSNAME(VT) ;
 I $G(VT)=4 Q 1
 I $G(VT)=6 Q 1
 Q 0
 ;
PUTCUSNAME(PRM) ;
 N HZM,IND,NOM,VL
 S HZM=$P(PRM,";")
 S IND=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 S VL=$$CNWEB^%L1FRM($P(PRM,";",4))
 S VL=$$INVH^%L1FRM(VL)
 D SETTOCUSNAME^W4HZMST(HZM,IND,NOM,VL)
 Q
 ;
SHVA1(STAM) ;
 I $G(@$$^W4PRM@("SHVA1")) Q 1
 I $$GET^W4TMPPAY(3,"SUM")<0 Q 1
 N HZM S HZM=$$GETP^%W1PRM("HZM") Q:'HZM 0
 I $$MSL^W4MSL(HZM)&$G(@$$^W4PRM@("MSLSHVA1")) Q 1
 ;
 I $$TAW^W4DLPK($$GETP^%W1PRM("NMB"))&$G(@$$^W4PRM@("TAWSHVA1")) Q 1
 I HZM>0,$$ITRA^W4HZMST(HZM)'>$G(@$$^W4PRM@("CATSHL")) Q 1
 Q 0
 ;
SHOWMVC ;
 N N,A,WHO,MVC,GETHNH,TXT,HNH,MVC1,QNORD,SETMVC,SETMVC1,QNMVC,HNHMVC
 I $G(HZM)<0 Q
 I $G(HZM)="" Q
 I '$$^W4HZFULL(HZM) Q
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I $D(@$$^W4ORD@(HZM,"MVCWHO:"_WHO)) Q
 .
 .I WHO["MVC1-" D
 ..W "<span style=""font-size:"_$$^W3FSZ_";color:red;"_$$FONTFM^W3CSS_""" >"
 ..S TXT=$$MVCTXT(WHO)
 ..W $$H2U^%L1FRM(TXT)
 ..W "</span><br><br>",!
 ..S @$$^W4ORD@(HZM,"MVCWHO:"_WHO)=$ZD($H,"DD.MM.YY  24:60")
 ;
 Q
 ;
 ;
MVC1(HZM) ;
 N N,A,WHO,OK S OK=0
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D  Q:OK
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .I WHO["MVC1-" S OK=1
 Q OK
 ;
 ;
PERUT ;----------------------- PERUT TASHLUMIM -----------------------
 W "<div align=""center"" >"
 ;
 D SHOWMVC ;
 ;
 N WD S WD=60
 I $$^W6,$$1024^W4WDSCR S WD=80
 W "<table width="""_WD_"%"" dir="""_$$^%W1DIR_""" border=""0"">",!
 ;
 D PRESSTODEL
 ;
 I '$$^W6 D
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("PAIDCASH") W "</td>" D RZD
 . D TDRKV("MZ") W $J($$SMZ^W4T(HZM),2,2)
 . W "</td>",!
 . D DETAILS(1)
 .W "</tr>",!
 .;
 .D SPACE
 .;
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("PAIDCHECK") W "</td>" D RZD
 . D TDRKV("CH") W $J($$CHK^W4HZMST(HZM),2,2)
 . W "</td>",!
 . D DETAILS(2)
 .W "</tr>",!
 .;
 .D SPACE
 ;
 W "<tr>",!
  D TDNM W $$^%W1DICT("PAIDCRCARD") W "</td>" D RZD
  D TDRKV("V") W $J($$CA^W4HZMST(HZM),2,2)
  W "</td>",!
  D DETAILS(3)
 W "</tr>",!
 ;
 D SPACE
 ;
 D
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("PAIDCREDIT") W "</td>" D RZD
 . D TDRKV("ASR") W $J($$ASR^W4HZMST(HZM),2,2)
 . W "</td>",!
 . D DETAILS(4)
 .W "</tr>",!
 .;
 .D SPACE
 ;
 I '$$^W6 D
 .W "<tr>",!
 . D TDNM W $$^%W1DICT("SHNHA") W "</td>"  D RZD
 . W "<td style=""color:red;font-size:"_$$^W3FSZ(18)_""" dir=""LTR"">"
 .  W $$HNH(HZM)
 . W "</td>",!
 . D DETAILS(6)
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $G(%ARG("FIRST")),$$SHOWMVC1(HZM) D SCRIPTMVC(HZM)
 Q
 ;
 ;
DETAILS(VT) ;
 W "<td>&nbsp;</td>",!
 W "<td align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""">"
  W "<table class=""btnfn"""
  W " onClick="""
  I VT="1" W "CashDetails()"
  I VT="2" W "CheckDetails()"
  I VT="3" W "CrCardDetails()"
  I VT="4" W "CreditDetails()"
  I VT="6" W "DiscDetails()"
  W """>",!
   W "<tr>"
    W "<td align=""center"" valign=""center"" "
    W ">"
    W $$^%W1DICT("DETAILS")
   W "</td></tr>",!
  W "</table>",!
 W "</td>",!
 Q
 ;
SIGNDEL ;
 S BC=";background-color:pink" S NODEL=1
 Q
 ;
DELPYM ;-----------------
 I $G(PRM)'="ONLY",'NODEL D
 .I $$HZM^W4MSL(HZM),$$CLOSE^W4HZMST(HZM) Q
 .I $$NOPRESSTODEL(HZM) Q
 .I $$NODELVT(HZM,VT) Q
 .W " onClick=""ConfirmDel('"_VT_"','"_IND_"',"_N_")"""
 Q
 ;
BSL(IND,N) ;
 N GLORD D GLORD^W4HZMST
 N A S A=$G(@GLORD@("CB",IND,N))
 I IND="ASR",$E($P(A,"*",5),1,4)="BSL;" Q 1
 Q 0
 ;
NOTFULLMPPAY(STAM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") I '$$^W4ISORD(HZM) Q ""
 N L S L=$O(@$$^W4HZMP(HZM)@(999),-1) I 'L Q ""
 N TS S TS=$$^W4HZMP(HZM,L,"TSHMP")
 N SHUL S SHUL=$$^W4HZMP(HZM,L,"SHUL")
 I SHUL<TS Q SHUL_"<>"_TS
 Q ""
 ;
NOPRESSTODEL(HZM) ;
 I '$$^W4ISORD(HZM) Q 1
 I $$^W4DEL(HZM) Q 1
 I $$PYTOT Q 1
 I '$$^W4CLOSE(HZM) Q 0
 I $$^W4CLOSE(HZM),HZM<0 Q 1
 ;
 N OK S OK=1
 I $$^W4CLOSE(HZM) D
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D
 ..I N="ASR"!(N="V") S OK=0
 Q OK
 ;
NODELVT(HZM,VT) ;
 I '$$^W4ISORD(HZM) Q 1
 I $$^W4DEL(HZM) Q 1
 I $$^W4CLOSE(HZM),VT<2!(VT>4) Q 1
 Q 0
 ;
VCSUPER(STAM)
 I '$$SUPER^W3PRM Q 0
 N HZM S HZM=+$$GETP^%W1PRM("HZM")
 ;;I '$G(%ARG("FIRST")) Q 0
 ;
 I $O(@$$^W4ORD@(HZM,99999),-1)'>$G(@$$^W4ORD@(HZM,"VC","LASTSTR")) Q 0
 I $G(@$$^W4ORD@(HZM,"VC",1,"CARD")) Q 1
 Q 0
 ;
DELPART(STAM) ; 
 N HZM S HZM=$$GETP^%W1PRM("HZM") 
 I 'HZM Q "NOTORDERNUMBER" 
 K @$$^W4ORD@(HZM,"PART") 
 K @$$^W4ORD@(HZM,"TS") 
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .S $P(^(N),"\",13)=""
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N,N1)) Q:N1=""  I N1 D
 ..S $P(^(N1),"\",13)=""
 ..S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N,N1,N2)) Q:N2=""  I N2 D
 ...S $P(^(N2),"\",13)=""
 Q 1
 ;
MVCTXT(WHO,PRMSG) ; 
 N (JB,WHO,PRMSG)
 S MVC=$P(WHO,"-",2)
 S GETHNH=$P(WHO,"-",3)
 D PRS^%L1FRM(GETHNH,"HNH;MVC1;QNORD;SETMVC;SETMVC1;QNMVC;HNHMVC",";")
 S BR="" I $G(PRMSG) S BR=" <BR> "
 S TXT=" : "_MVC1_" rvan"
 N WORD S WORD="zecigi" 
 I QNORD#1 S WORD="b""w",QNORD=$J(QNORD,3,3)
 S TXT=" rvana "_WORD_" "_QNORD_" zipw "_BR_TXT
 S TXT=SETMVC1_BR_TXT
 S TXT="dgpd g""y "_HNH_" law - "_BR_TXT
 Q TXT
 ;
MSG4MVC(HZM) 
 N (HZM,JB)
 S REK="<PUSTO>"
 I $G(HZM)<0 Q REK
 I $G(HZM)="" Q REK
 I '$$^W4HZFULL(HZM) Q REK
 S TXT=""
 S N="",I=0 F  S N=$O(@$$^W4ORD@(HZM,"CB","HNH1",N)) Q:N=""  I N?1N.N D
 .S A=$G(^(N))
 .S WHO=$P(A,"*",3)
 .
 .I WHO["MVC1-" D
 ..S TXT=$$MVCTXT(WHO,1)_$S($L(TXT):" <HR> "_TXT,1:TXT)
 ;
 I $L(TXT) Q TXT
 Q REK 
 ;
SCRIPTMVC(HZM) ; 
 S OKMVC=0
 N TX S TX=$$MSG4MVC(HZM) S:TX="" TX="<PUSTO>"
 I TX'="<PUSTO>" D
  . S OKMVC=1
  . W "<script>",!
  .  W "MsgI('!"_TX_"',"""",""font-size:32pt;background-color:"_$TR($$FNFG^W4CSS,"#","")_";color:"_$TR($$FNBG^W4CSS,"#","")_";line-height:50px"",550,640,"""",30,1)",!
  . W "</script>",!
 Q
 ;
SHOWMVC1(HZM) ;
 N LAST S LAST=$O(@$$^W4ORD@(HZM,9999),-1)
 I LAST=$G(@$$^W4ORD@(HZM,"LASTMVC1")) Q 0
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PC
W4PC(STAM) ; [ 06.11.08 18:17 ] [
 Q "^[$$^W3MAIN]pc"

W4PC1
W4PC1(STAM) ; [ 18.12.09 12:55 ] [ 06.11.08 18:26 ] [
 Q "^[$$^W3MAIN]pc1(JB)"
 ;
BG(STAM) Q "^[$$^W3MAIN]pc1(JB,"

W4PCACNT
W4PCACNT ; [ 10.08.22 06:59 ] [ 09.08.22 14:46 ] [ 24.08.15 08:26 ] 
 N (JB,%ARG,%REM)
 I $$GETP^%W1PRM("HSBPOS")<0 G END
 ;
 S ORD=$$GETP^%W1PRM("PCHSB")
 I ORD D
 .S A=$$PCHSB^W4MENUBT(ORD)
 .D
 ..N MSG S MSG=$S(A:"ACCOUNTPRINTED",1:"ACCOUNTNOTPRINTED")
 ..W "<script>",!
 .. W "MsgI('"_MSG_"')",!
 ..W "</script>",!
 ;
END ; 
 D KILL^%W1PRM("PCHSB")
 D KILL^%W1PRM("HSBPOS")
 Q
 
 
 
 

W4PCCB
W4PCCB(NUMBER) ;        [ 05.12.24 20:03 ] [ 03.11.20 10:35 ] [ 27.06.18 08:27 ] 
 N (JB,%ARG,%REM,NUMBER)
 ;
 S CODDOC="CB"
 S LK0=$G(@$$^W4KLIN@(CODDOC,+NUMBER))
 S STRING=$$LK^W4LHB(LK0)
 I STRING=$$^WVLKH S %ARG("LABCB")="V1CB"
 ;
PCCB ;
 S GLCB=$$^W4GL("KLF")_"(STRING,""CB"",NUMBER)"
 S GLCBV=$$^W4GL("KLF")_"(STRING,""CBV"",NUMBER)"
 S CBHD=$G(@GLCB)
 ;
 S ETEK=$P(CBHD,"\",5)
 ;
 I $$GETP^%W1PRM("MKRYD")=(NUMBER_"CB") D
 .S ETEK=0
 .D KILL^%W1PRM("MKRYD")
 ;
 K %L1SCPC
 ;
 D KOT^W4KOTHSB
 D GETKOT^W4LCBCR(STRING,NUMBER)
 D DOPKOT^W4KOTHSB(STRING)
 ;
 D ^W4MDPPC I '$L($G(PRINT))!'$D(%MDP) Q "PRINTERNOTDEFINED"
 I '$D(GWPC) S GWPC=40
 D ^W4PCESEK(MYNAME,1,GWPC,%MDP("B"),%MDP("N"))
 S %L1SCPC(2)=MYKTV
 S %L1SCPC(71)=MYTEL
 S %L1SCPC(77)=MYESEK
 ;
 D ^W4MEUHAD
 ;
 S %L1SCPC(3)=NUMBER
 S %L1SCPC(73)=LKHKTV
 S %L1SCPC(75)=LKHTEL
 S %L1SCPC(79)=$$^%L1DC($H,1)
 ;
 S %L1SCPC(5)=$$^%L1DC($$DAT^W4LCBCR(NUMBER),1)
 I $G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)=": melyzl dxzi",%L1SCPC(27)=$J($$CBH^W4KLOST(STRING,%L1SCPC(5)),2,2)
 I '$G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)="",%L1SCPC(27)=""
 ;
 S %L1SCPC(36)=$ZD($H,"24:60")
 D
 .N N S N="" F  S N=$O(@$$^W4GL("P1CHB")@(NUMBER,N)) Q:N=""  D
 ..S %L1SCPC(40)=$G(%L1SCPC(40))_N_","
 .I $L($G(%L1SCPC(40))) S %L1SCPC(40)=$E(%L1SCPC(40),1,$L(%L1SCPC(40))-1)
 ;
 S %L1SCPC(7)=STRING
 I $L($G(%ARG("LKHNAME"))) S LKHNAME=%ARG("LKHNAME")
 ;
 S %L1SCPC(8)=LKHNAME
 ;;I STRING=$$^WVLKH D
 .S %L1SCPC(8)=$$LKH^W4L(STRING)_" [ "_LKHNAME_" ]"
 ;
 I $L($G(%ARG("RCPNAME"))) S %L1SCPC(9)=%ARG("RCPNAME")
 ;
 S PRATIM=$$COMMENT^W4LCBCR(NUMBER)
 I $$PRIVATEINF^W4LCBCR(NUMBER) S PRATIM=""
 ;
 I $L(PRATIM)'>40 D
 .S %L1SCPC(30)=PRATIM
 I $L(PRATIM)>40 D
 .S %L1SCPC(38)=$E(PRATIM,1,$L(PRATIM)-40)
 .S %L1SCPC(30)=$E(PRATIM,$L(PRATIM)-39,$L(PRATIM))
 ;
 I 'ETEK S %L1SCPC(78)="xewn"
 E  S %L1SCPC(78)=" wzrd"
 ;
 S %L1SCPC(12)=$$MZ^W4LCBCR(NUMBER)
 S %L1SCPC(13)=$$NIKMAS^W4LCBCR(NUMBER)
 S %L1SCPC(14)=$$CA^W4LCBCR(NUMBER)
 D
 .N J F J=16:1:19 S %L1SCPC(J)=""
 ;
 I %L1SCPC(14) D
 .N CARD S CARD=$$CANMB^W4LCBCR(NUMBER)
 .S %L1SCPC(15)="..."_$E(CARD,$L(CARD)-3,$L(CARD))
 .S %L1SCPC(16)=$$CASUGI1^W4LCBCR(NUMBER,1,1)
 .S %L1SCPC(17)=$$CASUGA1^W4LCBCR(NUMBER,1,1)
 .S %L1SCPC(19)=$$CATSN^W4LCBCR(NUMBER)
 .S %L1SCPC(18)=$$CATS1^W4LCBCR(NUMBER)
 ;
 I $G(%ARG("LABCB"))="V1CB" S %L1SCPC(23)=$$SUMCH^W4LCBCR(NUMBER)
 ;
 S %L1SCPC(20)=$$CATS2^W4LCBCR(NUMBER)
 S %L1SCPC(25)=$$TOT^W4LCBCR(NUMBER)
 ;
 S TMPPC=$$^W4MAIN("TMPSCPC")
 K @TMPPC
 F I=1:1 Q:'$D(@GLCB@(I))  D
 .S @TMPPC@(I)=$G(@GLCB@(I))
 ;
 S CODS="KLINC1"
 ;
 I $L($G(%ARG("CODS"))) D
 .S CODS=%ARG("CODS")
 ;
 I $L($G(%ARG("LABCB"))) D  G PC1
 .K MAS M MAS=%L1SCPC
 .S LAB=%ARG("LABCB")
 .I LAB="V1CB" S MAS("EHAD")=1
 .S MAS("CUT")=""
 .D ^W4CB
 .N MAKOR S MAKOR=1
 .D PCV
 ;
 ;
 S RES=$$^W4PCMK(CODS)
 I RES'="OK" Q RES
 ;
 I ETEK D PCV
 ;
PC1 S $P(@GLCB,"\",5)=ETEK+1
 I '$L($G(%ARG("LABCB"))),'ETEK,'$G(@$$^W4PRM@("NOCBET")) G PCCB
 K @TMPPC
 ;
 I $L($G(PRINT)),'$$MZSM^W4PRM D ^W4SETPC(PRINT,$G(%MDP("P"))) D ^W4PTHDLY
 Q "OK"
 ;
 ;
PCV ;
 N MAS,NCAB,DCM,PRG,SM,TXT
 S NCAB=NUMBER,DCM="dlawl",PRG=1,SM=1
 ;
 I $D(@GLCBV)=1 D  Q
 .D ^W4GTVCH($G(@GLCBV),"V") Q:'NCA
 .S DTCB=$$^%L1DC($P(CBHD,"\",4),1)
 .S TTCB="" N MAKOR S MAKOR=1
 .N HZM S HZM=""
 .D ^W4MDPPC,CA1^W4HZTH
 ;
 D ^W4MDPPC
 N N,A S N="" F  S N=$O(@GLCBV@(N)) Q:N=""  D
 .N STV S STV=$G(^(N))
 .I $D(^(N,"EMV")) D  Q
 ..D ^%L1TS
 ..N N1,A,ST S N1="" F  S N1=$O(@GLCBV@(N,"EMV",1,N1)) Q:N1=""  D 
 ...S A=$G(^(N1)) 
 ...S TXT=$$PC(A)
 ...D S11
 ..D CUT
 ..S N1="" F  S N1=$O(@GLCBV@(N,"EMV",2,N1)) Q:N1=""  D 
 ...S A=$G(^(N1)) 
 ...S TXT=$$PC(A)
 ...D S11
 ..D CUT
 .
 .D ^W4GTVCH(STV,"V") Q:'NCA
 .S DTCB=$$^%L1DC($P(CBHD,"\",4),1)
 .S TTCB="" N MAKOR S MAKOR=1
 .N HZM S HZM=""
 .D ^W4MDPPC,CA1^W4HZTH
 Q
 ;
PC(A) ;
 Q $$PC^W4HZTH(A)
 ;
S11 ;
 D S11^W4HZTH
 Q
 ;
CUT ;
 D CUT^W4HZTH
 
 
 
 
 
 
 

W4PCCB0
W4PCCB(NUMBER) ;        [ 09.09.11 07:57 ] [ 08.09.11 13:52 ] [ 01.11.09 21:50 ]
 N (JB,%ARG,%REM,NUMBER)
 ;
 S CODDOC="CB"
 S LK0=$G(@$$^W4KLIN@(CODDOC,+NUMBER))
 S STRING=$$LK^W4LHB(LK0)
 ;
PCCB ;
 S GLCB=$$^W4GL("KLF")_"(STRING,""CB"",NUMBER)"
 S GLCBV=$$^W4GL("KLF")_"(STRING,""CBV"",NUMBER)"
 S CBHD=$G(@GLCB)
 ;
 S ETEK=$P(CBHD,"\",5)
 ;
 K %L1SCPC
 ;
 D KOT^W4KOTHSB
 D GETKOT^W4LCBCR(STRING,NUMBER)
 D DOPKOT^W4KOTHSB(STRING)
 ;
 S %L1SCPC(1)=MYNAME
 S %L1SCPC(2)=MYKTV
 S %L1SCPC(71)=MYTEL
 S %L1SCPC(77)=MYESEK
 ;
 S %L1SCPC(72)=""
 I $G(@$$^W4PRM@("MEUHAD")) S %L1SCPC(72)="cge`n"
 ;
 S %L1SCPC(76)=$TR($J(NUMBER,5)," ",0)
 S %L1SCPC(73)=LKHKTV
 S %L1SCPC(75)=LKHTEL
 S %L1SCPC(79)=$$^%L1DC($H,1)
 ;
 I $G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)=": melyzl dxzi"
 I '$G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)="",%L1SCPC(27)=""
 ;
 S %L1SCPC(5)=$$^%L1DC($$DAT^W4LCBCR(NUMBER),1)
 S %L1SCPC(36)=$ZD($H,"24:60")
 ;
 S %L1SCPC(7)=STRING
 I $L($G(%ARG("LKHNAME"))) S LKHNAME=%ARG("LKHNAME")
 S %L1SCPC(8)=LKHNAME
 ;
 S PRATIM=$$COMMENT^W4LCBCR(NUMBER)
 I $L(PRATIM)>50 S %L1SCPC(38)=$E(PRATIM,1,$L(PRATIM)-50)
 ;
 I 'ETEK S %L1SCPC(78)="xewn"
 E  S %L1SCPC(78)=" wzrd"
 ;
 S:$L($G(PRATIM))>40 %L1SCPC(30)=""
 ;
 S %L1SCPC(12)=$$MZ^W4LCBCR(NUMBER)
 S %L1SCPC(13)=$$NIKMAS^W4LCBCR(NUMBER)
 S %L1SCPC(14)=$$CA^W4LCBCR(NUMBER)
 N CARD S CARD=$$CANMB^W4LCBCR(NUMBER)
 S %L1SCPC(15)="..."_$E(CARD,$L(CARD)-3,$L(CARD))
 S %L1SCPC(16)=$$CASUGI1^W4LCBCR(NUMBER,1)
 S %L1SCPC(17)=$$CASUGA1^W4LCBCR(NUMBER,1)
 S %L1SCPC(19)=$$CATSN^W4LCBCR(NUMBER)
 S %L1SCPC(18)=$$CATS1^W4LCBCR(NUMBER)
 S %L1SCPC(20)=$$CATS2^W4LCBCR(NUMBER)
 S %L1SCPC(25)=$$TOT^W4LCBCR(NUMBER)
 ;
 S TMPPC=$$^W4MAIN("TMPSCPC")
 K @TMPPC
 F I=1:1 Q:'$D(@GLCB@(I))  D
 .S @TMPPC@(I)=$G(@GLCB@(I))
 ;
 S CODS="KLINC1"
 ;
 I $L($G(%ARG("CODS"))) D
 .S CODS=%ARG("CODS")
 ;
 S RES=$$^W4PCMK(CODS)
 I RES'="OK" Q RES
 ;
 I ETEK D
 .N MAS,NCAB,DCM,PRG,SM,TXT
 .S NCAB=NUMBER,DCM="dlawl",PRG=1,SM=1
 .D ^W4GTVCH($G(@GLCBV),"V")
 .S DTCB=$$^%L1DC($P(CBHD,"\",4),1)
 .S TTCB=""
 .D ^W4MDPPC,CA1^W4HZTH
 ;
PC1 S $P(@GLCB,"\",5)=ETEK+1
 I 'ETEK,'$G(@$$^W4PRM@("NOCBET")) G PCCB
 K @TMPPC
 Q "OK"

W4PCCH0
W4PCCHK ;    [ 25.01.21 14:32 ] [ 18.01.21 18:21 ] [ 11.01.21 14:27 ] 
 ;;G TV ;***
 N (JB,%ARG,%REM)
 ;
 S PRM=$$PRINTCHK^W4SPPY($G(%ARG("NOM")))
 S %ARG("PRM")=PRM
 I PRM=""!(PRM="<PUSTO>") Q
 ;
 S PRATIM=""
 D PRS^%L1FRM(PRM,"NTS^NCH^SUM^NIKUJ1^NETTO^CHK^PRAON^NIKUJ^TO","^")
TV ;;S SUM=1234.25 ; ***
 ;;S TO=1000 ; ***
 ;;S PRATIM="dwica mzq df" ; ***
 ;;S NIKUJ=2 ; ***
 ;;S PRAON="09/12/19" ; ***
 ;;S NTS=1 ; ***
 ;;S NCH=12345 ; ***
 ;
 D PGBREAK
 ;
 F J="SUM","TO","PRATIM","PRAON","NIKUJ" S @J=$G(@J)
 ;(SUM,TO,PRATIM,PRAON,NIKUJ) ;
 ;
 I TO=""!('SUM)!('PRAON) Q
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""position:absolute;top:0;left:0;width:100%"" >",!
 ;
 I $G(@$$^W4PRM@("PCCHKDN")) D
 .W "<br><br>",!
 ;
 ;;W "<div dir="""_$$^%W1DIR_""" align=""center"" width=""100%""  >",!
 D BR
 D KOT
 F I=1:1:6 D BR
 D TOHEN
 F I=1:1:5 D BR
 D KOT
 F I=1:1:6 D BR
 D TOHEN
 F I=1:1:8 D BR
 D CHECK
 W "</div>",!
 ;
 D PGBREAK
 ;
 S @$$^W4GL("W4TSHL")@(NTS,"C",NCH,"PC")=$H
 S NOMCHK=$P($G(@$$^W4GL("W4TSHL")@(NTS,"C",NCH)),"\",4)
 S @$$^W4GL("W4TSHL")=NOMCHK
 Q
 ;
KOT ;
 D OPTBL
  W "<tr>"
   W "<td width=""50%"" align=""right"">"
    D PCSPK(TO)
   W "</td>"
   W "<td width=""17%"">&nbsp;</td>"
   W "<td>"
    W $G(PRAON)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
TOHEN ;
 D OPTBL
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td width=""49%"">"
     W $$H2U^%L1FRM($G(PRATIM))
   W "</td>"
   W "<td>"
     W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  F I=1:1:3 D TRSP
  ; 
  D TRHG
   D TDSP
   D TDSP
   W "<td>"
    W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S NIKUJ1=$J(SUM*NIKUJ*.01,2,2)
  D TRHG
   D TDSP
   W "<td "_$$INV^%W1ALIGN_">"_$$NBSP(10)_NIKUJ_$$NBSP(10)_"</td>"
   W "<td>"
    W $J(NIKUJ1,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S SUM1=$J(SUM*(100-NIKUJ)*.01,2,2)
  D TRHG
   D TDSP
   D TDSP
   W "<td>"
    W $J(SUM1,2,2)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
 ;
CHECK ;
 D OPTBL
 W "<tr>" 
  W "<td width=""26%"">&nbsp;</td>"
  W "<td>"
   D PCSPK(TO)
  W "</td>"
 W "</tr>",!
 ;
 D TRHG
  W "<td width=""18%"">"
   W $J(SUM1,2,2)
  W "</td>"
  W "<td>"
   D
    .W $$H2U^%L1FRM($$^%L1N2W($P(SUM1,".")))_$$NBSP(2)_$$H2U^%L1FRM("g""y")_$$NBSP(2)
    .I $P(SUM1,".",2) W $E($P(SUM1,".",2)_"0",1,2)_$$NBSP(2)_$$HB("'b`") Q
    .W $$HB("cala")
  W "</td>"
 W "</tr>",!
 ;
 D TRSP
 ;; D TRSP ; ***
 ;
 W "<tr>"
  W "<td colspan=""2"">"
   W "<table width=""100%"">"
    W "<tr>"
     W "<td width=""40%"">&nbsp;</td>"
     W "<td align=""right"">"_$G(PRAON)_"</td>"
     D TDSP
    W "</tr>",!
   W "</table>",!
  W "</td>",!
 W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCSPK(TO) ;
 I $G(TO)="" Q
 S TXT=$G(@$$^W4GL("W4SPK")@(TO))
 W $$H2U^%L1FRM(TXT)
 Q
 ;
OPTBL ;
 W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""90%"" border=""0"">",!
 Q
 ;
BR W "<br>",! 
 Q
 ;
TRHG ;
 W "<tr height=""31px"">"
 Q
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q
 ;
TRSP ;
 W "<tr>" D TDSP W "</tr>",!
 Q
 ;
HB(TX) ;
 Q $$H2U^%L1FRM($G(TX))
 ;
NBSP(COL) ;
 Q $$NBSP^%L1FRM(COL)
 ;
NEXTCHK(NOM) ;
 Q $$PRINTCHK^W4SPPY($G(NOM))
 ;
PGBREAK ; 
 W "<p style=""page-break-before:always"">",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCCHK
W4PCCHK ;    [ 25.01.21 14:36 ] [ 18.01.21 18:21 ] [ 11.01.21 14:27 ] 
 ;;G TV ;***
 N (JB,%ARG,%REM)
 D ^W4PCCHK1
 Q
 ;
 S PRM=$$PRINTCHK^W4SPPY($G(%ARG("NOM")))
 S %ARG("PRM")=PRM
 I PRM=""!(PRM="<PUSTO>") Q
 ;
 S PRATIM=""
 D PRS^%L1FRM(PRM,"NTS^NCH^SUM^NIKUJ1^NETTO^CHK^PRAON^NIKUJ^TO","^")
TV ;;S SUM=1234.25 ; ***
 ;;S TO=1000 ; ***
 ;;S PRATIM="dwica mzq df" ; ***
 ;;S NIKUJ=2 ; ***
 ;;S PRAON="09/12/19" ; ***
 ;;S NTS=1 ; ***
 ;;S NCH=12345 ; ***
 ;
 D PGBREAK
 ;
 F J="SUM","TO","PRATIM","PRAON","NIKUJ" S @J=$G(@J)
 ;(SUM,TO,PRATIM,PRAON,NIKUJ) ;
 ;
 I TO=""!('SUM)!('PRAON) Q
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""position:absolute;top:0;left:0;width:100%"" >",!
 ;
 I $G(@$$^W4PRM@("PCCHKDN")) D
 .W "<br><br>",!
 ;
 ;;W "<div dir="""_$$^%W1DIR_""" align=""center"" width=""100%""  >",!
 D BR
 D KOT
 F I=1:1:6 D BR
 D TOHEN
 F I=1:1:5 D BR
 D KOT
 F I=1:1:6 D BR
 D TOHEN
 F I=1:1:8 D BR
 D CHECK
 W "</div>",!
 ;
 D PGBREAK
 ;
 S @$$^W4GL("W4TSHL")@(NTS,"C",NCH,"PC")=$H
 S NOMCHK=$P($G(@$$^W4GL("W4TSHL")@(NTS,"C",NCH)),"\",4)
 S @$$^W4GL("W4TSHL")=NOMCHK
 Q
 ;
KOT ;
 D OPTBL
  W "<tr>"
   W "<td width=""50%"" align=""right"">"
    D PCSPK(TO)
   W "</td>"
   W "<td width=""17%"">&nbsp;</td>"
   W "<td>"
    W $G(PRAON)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
TOHEN ;
 D OPTBL
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td width=""49%"">"
     W $$H2U^%L1FRM($G(PRATIM))
   W "</td>"
   W "<td>"
     W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  F I=1:1:3 D TRSP
  ; 
  D TRHG
   D TDSP
   D TDSP
   W "<td>"
    W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S NIKUJ1=$J(SUM*NIKUJ*.01,2,2)
  D TRHG
   D TDSP
   W "<td "_$$INV^%W1ALIGN_">"_$$NBSP(10)_NIKUJ_$$NBSP(10)_"</td>"
   W "<td>"
    W $J(NIKUJ1,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S SUM1=$J(SUM*(100-NIKUJ)*.01,2,2)
  D TRHG
   D TDSP
   D TDSP
   W "<td>"
    W $J(SUM1,2,2)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
 ;
CHECK ;
 D OPTBL
 W "<tr>" 
  W "<td width=""26%"">&nbsp;</td>"
  W "<td>"
   D PCSPK(TO)
  W "</td>"
 W "</tr>",!
 ;
 D TRHG
  W "<td width=""18%"">"
   W $J(SUM1,2,2)
  W "</td>"
  W "<td>"
   D
    .W $$H2U^%L1FRM($$^%L1N2W($P(SUM1,".")))_$$NBSP(2)_$$H2U^%L1FRM("g""y")_$$NBSP(2)
    .I $P(SUM1,".",2) W $E($P(SUM1,".",2)_"0",1,2)_$$NBSP(2)_$$HB("'b`") Q
    .W $$HB("cala")
  W "</td>"
 W "</tr>",!
 ;
 D TRSP
 ;; D TRSP ; ***
 ;
 W "<tr>"
  W "<td colspan=""2"">"
   W "<table width=""100%"">"
    W "<tr>"
     W "<td width=""40%"">&nbsp;</td>"
     W "<td align=""right"">"_$G(PRAON)_"</td>"
     D TDSP
    W "</tr>",!
   W "</table>",!
  W "</td>",!
 W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCSPK(TO) ;
 I $G(TO)="" Q
 S TXT=$G(@$$^W4GL("W4SPK")@(TO))
 W $$H2U^%L1FRM(TXT)
 Q
 ;
OPTBL ;
 W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""90%"" border=""0"">",!
 Q
 ;
BR W "<br>",! 
 Q
 ;
TRHG ;
 W "<tr height=""31px"">"
 Q
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q
 ;
TRSP ;
 W "<tr>" D TDSP W "</tr>",!
 Q
 ;
HB(TX) ;
 Q $$H2U^%L1FRM($G(TX))
 ;
NBSP(COL) ;
 Q $$NBSP^%L1FRM(COL)
 ;
NEXTCHK(NOM) ;
 Q $$PRINTCHK^W4SPPY($G(NOM))
 ;
PGBREAK ; 
 W "<p style=""page-break-before:always"">",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCCHK0
W4PCCHK ;    [ 18.01.21 17:39 ] [ 11.01.21 14:27 ] [ 07.01.21 10:59 ] 
 N (JB,%ARG,%REM)
 ;
 S PRM=$$PRINTCHK^W4SPPY($G(%ARG("NOM")))
 S %ARG("PRM")=PRM
 I PRM=""!(PRM="<PUSTO>") Q
 ;
 S PRATIM=""
 D PRS^%L1FRM(PRM,"NTS^NCH^SUM^NIKUJ1^NETTO^CHK^PRAON^NIKUJ^TO","^")
 ;;S SUM=1234.25
 ;;S TO=1000
 ;;S PRATIM="dwica mzq df"
 ;;S NIKUJ=2
 ;;S PRAON="09/12/19"
 ;
 D PGBREAK
 ;
 F J="SUM","TO","PRATIM","PRAON","NIKUJ" S @J=$G(@J)
 ;(SUM,TO,PRATIM,PRAON,NIKUJ) ;
 ;
 I TO=""!('SUM)!('PRAON) Q
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""position:absolute;top:0;left:0;width:100%"" >",!
 ;
 I $G(@$$^W4PRM@("PCCHKDN")) D
 .W "<br><br>",!
 ;
 ;;W "<div dir="""_$$^%W1DIR_""" align=""center"" width=""100%""  >",!
 D KOT
 F I=1:1:8 D BR ; *** 6
 D TOHEN
 F I=1:1:6 D BR ; *** 4
 D KOT
 F I=1:1:7 D BR ; *** 6
 D TOHEN
 F I=1:1:8 D BR ; *** 6
 D CHECK
 W "</div>",!
 ;
 D PGBREAK
 ;
 S @$$^W4GL("W4TSHL")@(NTS,"C",NCH,"PC")=$H
 S NOMCHK=$P($G(@$$^W4GL("W4TSHL")@(NTS,"C",NCH)),"\",4)
 S @$$^W4GL("W4TSHL")=NOMCHK
 Q
 ;
KOT ;
 D OPTBL
  W "<tr>"
   W "<td width=""50%"" align=""right"">"
    D PCSPK(TO)
   W "</td>"
   W "<td width=""17%"">&nbsp;</td>"
   W "<td>"
    W $G(PRAON)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
TOHEN ;
 D OPTBL
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td width=""49%"">"
     W $$H2U^%L1FRM($G(PRATIM))
   W "</td>"
   W "<td>"
     W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  F I=1:1:3 D TRSP
  ; 
  D TRHG
   D TDSP
   D TDSP
   W "<td>"
    W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S NIKUJ1=$J(SUM*NIKUJ*.01,2,2)
  D TRHG
   D TDSP
   W "<td "_$$INV^%W1ALIGN_">"_$$NBSP(10)_NIKUJ_$$NBSP(10)_"</td>"
   W "<td>"
    W $J(NIKUJ1,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S SUM1=$J(SUM*(100-NIKUJ)*.01,2,2)
  D TRHG
   D TDSP
   D TDSP
   W "<td>"
    W $J(SUM1,2,2)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
 ;
CHECK ;
 D OPTBL
 W "<tr>" 
  W "<td colspan=""2"">"
   D PCSPK(TO)
  W "</td>"
 W "</tr>",!
 ;
 D TRHG
  W "<td width=""18%"">"
   W $J(SUM1,2,2)
  W "</td>"
  W "<td>"
   D
    .W $$H2U^%L1FRM($$^%L1N2W($P(SUM1,".")))_$$NBSP(2)_$$H2U^%L1FRM("g""y")_$$NBSP(2)
    .I $P(SUM1,".",2) W $E($P(SUM1,".",2)_"0",1,2)_$$NBSP(2)_$$HB("'b`") Q
    .W $$HB("cala")
  W "</td>"
 W "</tr>",!
 ;
 D TRSP
 D TRSP ; *** 7/01
 ;
 W "<tr>"
  W "<td>"
   W "<table width=""100%"">"
    W "<tr>"
     ;;W "<td width=""10%"">&nbsp;</td>"
     W "<td align=""right"">"_$G(PRAON)_"</td>"
     D TDSP
    W "</tr>",!
   W "</table>",!
  W "</td>",!
  W "<td>&nbsp;</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCSPK(TO) ;
 I $G(TO)="" Q
 S TXT=$G(@$$^W4GL("W4SPK")@(TO))
 W $$H2U^%L1FRM(TXT)
 Q
 ;
OPTBL ;
 W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""90%"" border=""0"">",!
 Q
 ;
BR W "<br>",! 
 Q
 ;
TRHG ;
 W "<tr height=""31px"">"
 Q
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q
 ;
TRSP ;
 W "<tr>" D TDSP W "</tr>",!
 Q
 ;
HB(TX) ;
 Q $$H2U^%L1FRM($G(TX))
 ;
NBSP(COL) ;
 Q $$NBSP^%L1FRM(COL)
 ;
NEXTCHK(NOM) ;
 Q $$PRINTCHK^W4SPPY($G(NOM))
 ;
PGBREAK ; 
 W "<p style=""page-break-before:always"">",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCCHK1
W4PCCHK1 ;    [ 02.02.21 15:05 ] [ 01.02.21 15:41 ] [ 25.01.21 16:21 ] 
 ;;G TV ;***
 ;
 N (JB,%ARG,%REM)
 ;
 S PRM=$$PRINTCHK^W4SPPY($G(%ARG("NOM")))
 S %ARG("PRM")=PRM
 I PRM=""!(PRM="<PUSTO>") Q
 ;
 S PRATIM=""
 D PRS^%L1FRM(PRM,"NTS^NCH^SUM^NIKUJ1^NETTO^CHK^PRAON^NIKUJ^TO","^")
TV ;;S SUM=1234.25 ; ***
 ;;S TO=1000 ; ***
 ;;S PRATIM="dwica mzq df" ; ***
 ;;S NIKUJ=2 ; ***
 ;;S PRAON="09/12/19" ; ***
 ;;S NTS=1 ; ***
 ;;S NCH=12345 ; ***
 ;
 D PGBREAK
 ;
 F J="SUM","TO","PRATIM","PRAON","NIKUJ" S @J=$G(@J)
 ;(SUM,TO,PRATIM,PRAON,NIKUJ) ;
 ;
 I TO=""!('SUM)!('PRAON) Q
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""position:absolute;top:0;left:0;width:100%"" >",!
 ;
 I $G(@$$^W4PRM@("PCCHKDN")) D
 .W "<br><br>",!
 ;
 ;;W "<div dir="""_$$^%W1DIR_""" align=""center"" width=""100%""  >",!
 ;;D BR
 D KOT
 F I=1:1:8 D BR
 D TOHEN
 F I=1:1:9 D BR
 D CHECK
 W "</div>",!
 ;
 D PGBREAK
 ;
 S @$$^W4GL("W4TSHL")@(NTS,"C",NCH,"PC")=$H
 S NOMCHK=$P($G(@$$^W4GL("W4TSHL")@(NTS,"C",NCH)),"\",4)
 S @$$^W4GL("W4TSHL")=NOMCHK
 Q
 ;
KOT ;
 D OPTBL
  W "<tr>"
   W "<td width=""28%"">"
   W "<td width=""45%"" align=""right"">"
    D PCSPK(TO)
   W "</td>"
   W "<td width=""30%"">&nbsp;</td>"
   W "<td>"
    W $G(PRAON)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
TOHEN ;
 D OPTBL
  W "<tr>"
   W "<td width=""32%"">&nbsp;</td>"
   W "<td width=""15%"">&nbsp;</td>"
   W "<td colspan=""2"" width=""42%"">"
     W $$H2U^%L1FRM($G(PRATIM))
   W "</td>"
   W "<td>"
     W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  F I=1:1:5 D TRSP ; --- WAS 5
  ; 
  D TRHG
   D TDSP
   D TDSP
   D TDSP
   D TDSP
   W "<td>"
    W $J(SUM,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S NIKUJ1=$J(SUM*NIKUJ*.01,2,2)
  D TRHG
   D TDSP
   D TDSP
   D TDSP
   W "<td "_$$INV^%W1ALIGN_">"_$$NBSP(10)_NIKUJ_$$NBSP(10)_"</td>"
   W "<td>"
    W $J(NIKUJ1,2,2)
   W "</td>"
  W "</tr>",!
  ;
  S SUM1=$J(SUM*(100-NIKUJ)*.01,2,2)
  D TRHG
   D TDSP
   W "<td>"_$G(PRAON)_"</td>"
   D TDSP
   D TDSP
   ;
   W "<td>"
    W $J(SUM1,2,2)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q
 ;
 ;
CHECK ;
 D OPTBL
 W "<tr>" 
  W "<td width=""25%"">&nbsp;</td>"
  W "<td width=""24%"">&nbsp;</td>"
  W "<td width=""51%"">"
   W $$NBSP^%L1FRM(8) D PCSPK(TO)
  W "</td>"
 W "</tr>",!
 ;
 D TRHG
  W "<td>&nbsp;</td>"
  W "<td>"
   W $J(SUM1,2,2)
  W "</td>"
  N TX D
  .S TX=$$H2U^%L1FRM($$^%L1N2W($P(SUM1,".")))_$$NBSP(2)_$$H2U^%L1FRM("g""y")_$$NBSP(2)
  .I $P(SUM1,".",2) S TX=TX_$E($P(SUM1,".",2)_"0",1,2)_$$NBSP(2)_$$HB("'b`") Q
  .S TX=TX_$$HB("cala")
  N SZ S SZ=11 I $L($$^%L1N2W($P(SUM1,".")))>25 S SZ=9
  W "<td style=""font-size:"_$$^W3FSZ(SZ)_""">"
   W $$NBSP^%L1FRM(2)_TX
  W "</td>"
 W "</tr>",!
 ;
 D TRSP
 ;
 W "<tr>"
  W "<td colspan=""3"">"
   W "<table width=""100%"">"
    W "<tr>"
     W "<td width=""67%"">&nbsp;</td>"
     W "<td align=""right"">"_$G(PRAON)_"</td>"
     D TDSP
    W "</tr>",!
   W "</table>",!
  W "</td>",!
 W "</tr>",!
 W "</table>",!
 Q
 ;
 ;
PCSPK(TO) ;
 I $G(TO)="" Q
 S TXT=$G(@$$^W4GL("W4SPK")@(TO))
 N SZ S SZ=11 I $L(TXT)>30 S SZ=8
 W "<span style=""font-size:"_$$^W3FSZ(SZ)_""">"_$$H2U^%L1FRM(TXT)_"</span>"
 Q
 ;
OPTBL ;
 W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""90%"" border=""0"">",!
 Q
 ;
BR W "<br>",! 
 Q
 ;
TRHG ;
 W "<tr height=""30px"">"
 Q
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q
 ;
TRSP ;
 W "<tr>" D TDSP W "</tr>",!
 Q
 ;
HB(TX) ;
 Q $$H2U^%L1FRM($G(TX))
 ;
NBSP(COL) ;
 Q $$NBSP^%L1FRM(COL)
 ;
NEXTCHK(NOM) ;
 Q $$PRINTCHK^W4SPPY($G(NOM))
 ;
PGBREAK ; 
 W "<p style=""page-break-before:always"">",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCDOC
W4PCDOC ; [ 23.10.14 10:02 ] [ 14.09.14 14:05 ] [ 16.04.14 06:06 ]
 N (JB,%ARG,%REM)
 I $G(%ARG("MKRTM")) G MKRTM
BG ;
 N TMPREP D TMPREP
 I $G(%ARG("FIRST")) S NP=1
 E  S NP=$$GETP^%W1PRM("W4PCDOCNP")
 ;
 I 'NP D  G END
 .D KILL^%W1PRM("W4PCDOCNP")
 .
 .I $G(%ARG("MKRTM")) D
 ..D KILL^%W1PRM("MKRTM")
 ..K @TMPREP
 ..K @$$^W4MAIN("TMPREPB")
 ..D KILL^%W1PRM("W4REPSCR_W4SUGM")
 .
 .W "<script>",!
 .W " BackHref(""HRFBACK"")",!
 .W "</script>",!
 ;
 N %ARG
 S %ARG("PRINT")=1
 ;
 D PUT^%W1PRM("W4PCDOCNP",$O(@TMPREP@(NP)))
 ;
 S SUGM=$$GET^%W1PRM("W4REPSCR_W4SUGM") G:'SUGM END
 I (SUGM=$$SUGTM^W4HIPUS)!(SUGM=$$SUGHBC^W4HIPUS) D
 .S ND=$$SPA^%L1FRM($P($G(@TMPREP@(NP)),"\",5)) Q:'ND
 .D PRINTORD(ND)
 ;
 I SUGM=$$SUGCB^W4HIPUS D  G END
 .S ND=$$SPA^%L1FRM($P($G(@TMPREP@(NP)),"\",1)) Q:'ND
 .D PRINTCB(ND)
 ;
 I SUGM=$$SUGHB^W4HIPUS D
 .S ND=$$SPA^%L1FRM($P($G(@TMPREP@(NP)),"\",1)) Q:'ND
 .D PRINTHB(ND)
 ;
 I SUGM=$$SUGHBA^W4HIPUS D
 .S ND=$$SPA^%L1FRM($P($G(@TMPREP@(NP)),"\",1)) Q:'ND
 .D ^W4PCHBA(ND)
 ;
 I SUGM=$$SUGHBZ^W4HIPUS D
 .S ND=$$SPA^%L1FRM($P($G(@TMPREP@(NP)),"\",1)) Q:'ND
 .D PRINTHBZ(+ND)
END Q  ;
 ;
 ;
PRINTORD(ND) ;
 S PR="HMK"
 I SUGM=$$SUGTM^W4HIPUS S PR="TM"
 N MKR S MKR=0
 I PR="TM",$$GETP^%W1PRM("MKRTM") S MKR=1
 ;
 D ^W4PCHBP(ND,MKR)
 Q
 ;
PRINTCB(ND) ;
 S %ARG("LKH")=$$LK^W4STRING("CB",ND)
 S %ARG("NOM")=ND
 I %ARG("LKH")=""!(%ARG("NOM")="") Q
 S %ARG("NOCSR")=1
 D ^W4LCBCR
 Q
 ;
PRINTHB(ND) ;
 S %ARG("LKH")=$$^W4STRING("H",ND)
 S %ARG("NOM")=ND
 I %ARG("LKH")=""!(%ARG("NOM")="") Q
 S %ARG("NOCSR")=1
 I %ARG("LKH")["+" D  Q
 .D ^W4LHBVW
 I %ARG("LKH")'["+" D  Q
 .D ^W4HSBYVW
 Q
 ;
PRINTHBZ(ND) ;
 S %ARG("LKH")=$$^W4STRING("TZ",ND)
 S %ARG("NOM")=ND
 I %ARG("LKH")=""!(%ARG("NOM")="") Q
 S %ARG("NOCSR")=1
 S %ARG("VD")="HBZ"
 I %ARG("LKH")["+" D  Q
 .S %ARG("NOM")=-%ARG("NOM")
 .D ^W4LHBVW
 ;
 I %ARG("LKH")'["+" D  Q
 .D ^W4HSBYVW
 Q
 ;
 ;
MKRTM ;
 D TMPREP
 N N,K K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 D PUT^%W1PRM("W4REPSCR_W4SUGM",3)
 D PUT^%W1PRM("MKRTM",1)
 D KILL^%W1PRM("W4PCDOCNP")
 ;
 S N="",K=0 F  S N=$O(@$$^W4MAIN("TMPDLV")@(N)) Q:N=""  D
 .S K=K+1
 .S $P(@TMPREP@(K),"\",1)=+$G(@$$^W4ORD@(N,"TM"))
 .S $P(@TMPREP@(K),"\",2)=$$DATK^W4HZMST(N)
 .S $P(@TMPREP@(K),"\",5)=N
 ;
 G BG
 ;
TMPREP ;
 S TMPREP=$$BG^W4MAIN("TMPREP")_"""G"")"
 Q

W4PCDOS
W4PCDOS(JB) ; [ 27.04.26 13:34 ] [ 25.03.26 10:35 ] [ 01.02.26 15:35 ] 
 N (JB)
 N $ZT S $ZT="k @$$^W4flag@(253) S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;S ^AA("W4PCDOS","W4MYDVN")=$$^W4MYDVN
 D TV^W4MDP(6)
BG S GLD=$$^%L1GLD()
 I GLD="" H 1 G BG
 S P1PCDOS=0 D ^W4IN,^%L1LJ
 I $$^%L1FLAG($$^W4flag_"(253)") Q
 ;
 S FLRSTG=-1
CYC ;----------------- MAIN LOOP -------------------------------------
 ;
 I $$TRICKER^W4PRM!$$TEAV^W4PRM D TRICKSTAT
 I $$AUTOUT^W4PRM D ^W4AUTOUT
 ;
 I '$G(@$$flag@(253)) S @$$flag@(253)=$J
 S P1PCDOS=$G(P1PCDOS)+1
 I '(P1PCDOS#50),$$^%L1FLAG($$flag_"(253)") Q
 I $D(@$$^W4GL("STLOOP")@("PC")) K @$$flag@(253) Q
 ;
 D
 .N TK,RF,MAX
 .S MAX=24*60*10
 .S TK=$G(@$$^W4GL("W4HBMAS")@("TOKEN","TIME"))
 .S RF=$G(@$$^W4GL("W4HBMAS")@("REFRESH","TIME"))
 .D
 ..I RF,$$DIF^%L1TIME($H,RF)>MAX,'$D(@$$^W4GL("W4HBMAS")@(+$H,"TRY")) D GETTOKEN^W4HBMAS Q
 ..I TK,$$DIF^%L1TIME($H,TK)>MAX,'$D(@$$^W4GL("W4HBMAS")@(+$H,"TRY")) D GETTOKEN^W4HBMAS Q
 .S @$$^W4GL("W4HBMAS")@(+$H,"TRY")=$H
 ;
 D
 .N SHAA S SHAA=$ZD($H,"24:60")
 .N SHAA1 S SHAA1=SHAA*3600
 .I $$PAPJ^W4PRM,$$MZSM^W4PRM,'$D(@$$^W4GL("W4CSHLVL")@(+$H,SHAA1)) D
 ..N RES S RES=$$LEVELS^W4CASHC(+$H,SHAA1)
 ;
 D SEND2RSTG
 ;
 D READIT4NET
 ;
 D ZAUTO
 ;
 I +$$T^%L1TIME($H)=3,$$NEWMLY^W4PRM,$G(@$$^W4GL("W3PRM")@("NOVWOLD")) D
 .I '$G(@$$^W4GL("W4TMPPAR")@(+$$^W4DZ)) D CRTMPPAR^W4MAIN(JB)
 ;
 D PRINTDLVALL
 ;
 D SEND
 ;
 I $$RSTGO^W4PRM,FLRSTG<0!(FLRSTG>100) D
 .N P1DZ S P1DZ=+$H ;$$^W4DZ; -- 17.06.25
 .D OPNJSN^W4RSTGSN(P1DZ,"wrk")
 .D WORK^W4RSTGSN(P1DZ) Q:'$G(EMPCONT)
 .D SEND^W4RSTGSN(P1DZ,"wrk")
 .S FLRSTG=0
 ;
 S FLRSTG=FLRSTG+1  
 ;
 ;
 S P1DZ=$$^W4DZ
 S FN=PATHM_"#Z"_$$^%L1DC($$^%L1DC(P1DZ,1),2)_".001"
 O FN:(APPEND)
 ;
 S N0="" F  S N0=$O(@$$PC@(N0)) Q:N0=""  D
 .S MAX=$O(@$$PC@(N0,99999),-1)
 .D DEFMDP(+N0)
 .S N1="" F I=1:1 S N1=$O(@$$PC@(N0,N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..I $G(@$$PC@(N0,N1))[$C(10,10,10,10,10) K ^(N1) Q
 ..N ST S ST=$G(@$$PC@(N0,N1))
 ..N I F I="R","RL","P","BEEP" S ST=$$RPL^%L1FRM(ST,%MDP(I),"")
 ..S ST=$$RPL^%L1FRM(ST,$C(13),"")
 ..S ST=$$RPL^%L1FRM(ST,$C(10),"<E><BR><E>")
 ..U FN W +N0_":"_ST,! K @$$PC@(N0,N1)
 ;
 C FN
 ;
 D RSTRN
 ;
 H 1 G CYC
 ;
 ;----------------------------------------------------------------------
 ;
VIDEO I $G(@$$^W4PRM@("VIDEO"))=1 D
 .N PORT,I,N0,N1,MAX,%MDP,WRTO S PORT=$G(^("VIDEO","PORT"))
 .I PORT<51!(PORT>54),$D(@$$^W4DEV@(PORT))#2 S WRTO=@$$^W4DEV@(PORT) O WRTO
 .I PORT'<51&(PORT'>54) D
 ..S WRTO=$G(@$$^W4PRM@("VIDEO","DIR"))_"#V"_$$^%L1DC(P1DZ,2)
 ..O WRTO:(APPEND)
 .S N0="" F  S N0=$O(^[$$^%L1GLD]pcv(N0)) Q:N0=""  D
 ..S MAX=$O(^[$$^%L1GLD]pcv(N0,99999),-1)
 ..D DEFMDP(+N0)
 ..S N1="" F I=1:1 S N1=$O(^[$$^%L1GLD]pcv(N0,N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ...N ST S ST=$G(^(N1))
 ...I ST[$C(10,10,10,10,10) K ^(N1) Q
 ...N I F I="B","N","R","RL","P","BEEP" S ST=$$RPL^%L1FRM(ST,$G(%MDP(I)),"")
 ...U WRTO W +N0_"\"_$P(ST,"\")_"\"_$$^%L1DC($P(ST,"\",2),1)_"\"_$$T^%L1TIME($P($P(ST,"\",2),",",2))_"\"_$P(ST,"\",3)_"\"_$$D2W^%L1PCEX($P(ST,"\",4,200)),!
 ...K ^[$$^%L1GLD]pcv(N0,N1)
 .C WRTO
 ;
VIDEO2 I $G(@$$^W4PRM@("VIDEO"))=2 D
 .N PORT,I,N0,N1,MAX,%MDP,WRTO S PORT=$G(^("VIDEO","PORT")) Q:'PORT
 .I PORT<51!(PORT>54) Q:'$D(@$$^W4DEV@(PORT))  S WRTO=@$$^W4DEV@(PORT) O WRTO
 .I PORT'<51&(PORT'>54) D
 ..S WRTO=$G(@$$^W4PRM@("VIDEO","DIR"))_"#V"_$$^%L1DC(P1DZ,2)_".2"
 ..O WRTO:(APPEND)
 .S MAX=$O(^[$$^%L1GLD]pcv2(999999),-1)
 .S N1="" F I=1:1 S N1=$O(^[$$^%L1GLD]pcv2(N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..N ST,ST1 S ST=$G(^(N1)),ST1=$P(ST,"~",5)
 ..U WRTO W $P(ST,"~")_"~"_$$^%L1DC($P(ST,"~",2),1)_"~"_$$T^%L1TIME($P($P(ST,"~",2),",",2))_"~"_$P(ST,"~",3,4)_"~"_ST1,!
 ..K ^[$$^%L1GLD]pcv2(N1)
 .C WRTO
 ;
RESTOLD(STAM)
 Q +$G(@$$^W4PRM@("RESTORAN","OLD"))
 ;
RSTRN ;
 I $$RESTORAN^W4PRM D  Q
 .N PORT,I,N0,N1,MAX,%MDP
 .I $$RESTOLD D OPN I 'OK H 5 D CDEV Q
 .N GL S GL=$$GL^W4RSTRN
 .S MAX=$O(@GL@(999999),-1)
 .;
 .S N1="" F I=1:1 S N1=$O(@GL@(N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..N ST S ST=$G(^(N1))
 ..D
 ...I $$RESTOLD D  Q
 ....D UDEV W ST,!
 ...;
 ...D SET^W4RSTRN(ST)
 ..
 ..K @GL@(N1)
 .
 .I $$RESTOLD D CDEV
 ;
CONCEP ;
 I $G(@$$^W4PRM@("CONCEPTIC")) D
 .N PORT,I,N0,N1,MAX,%MDP
 .D OPCN I 'OK H 5 D CDEV Q
 .S MAX=$O(^[$$^%L1GLD]pccn(999999),-1)
 .S N1="" F I=1:1 S N1=$O(^[$$^%L1GLD]pccn(N1)) Q:N1=""  Q:N1>MAX  H:'(I#40) 1 D
 ..N ST S ST=$G(^(N1))
 ..D UDEV W ST,!
 ..K ^[$$^%L1GLD]pccn(N1)
 .D CDEV
 ;
 Q
 ;
 ;
DEFMDP(N) ;
 N P,M
 S M="" F  S M=$O(@$$^W4PRM@("MDP",M)) Q:M=""  D
 .S P=$P(^(M),"\",3) I P S P(P)=$P(^(M),"\")
 ;
 S M="" F  S M=$O(@$$^W4PLUK@(M)) Q:M=""  D
 .I $G(@$$^W4PLUK@(M,"LP")),$G(@$$^W4PLUK@(M,"LP","SUG")) D
 ..S P=@$$^W4PLUK@(M,"LP"),P(P)=$G(@$$^W4PLUK@(M,"LP","SUG"))
 ;
 I $D(P(N)) S SUG=P(N) D TV^W4MDP(SUG)
 Q
 ;
 ;
OPN ;
 I '$G(@$$^W4PRM@("RESTORAN","OLD")) Q
 S OK=0 K ERPC
 N ADDR,PORT
 S ADDR=$G(@$$^W4PRM@("RESTORAN","IP")),PORT=^("PORT")
 S ERPC=$$^%L2NALAN(ADDR,PORT)
 I $G(ERPC) D MSGPRER(ADDR,ERPC) S OK=0 Q
 S OK=1
 Q
 ;
OPCN ;
 S OK=0 K ERPC
 N ADDR,PORT
 Q:'$D(@$$^W4PRM@("CONCEPTIC","IP"))
 S ADDR=$G(@$$^W4PRM@("CONCEPTIC","IP")),PORT=^("PORT")
 S ERPC=$$^%L2NALAN(ADDR,PORT)
 I $G(ERPC) D MSGPRER(ADDR,ERPC) S OK=0 Q
 S OK=1
 Q
 ;
UDEV ;
 U "SCK$"_$J Q
 Q
 ;
CDEV ;
 C "SCK$"_$J Q
 Q
 ;
MSGPRER(ADDR,ER) ;
 I '$D(P1DZ) D ^W4IN
 Q:$D(@$$^W4GL("P1NOMDP")@(P1DZ))
 S %MSG=$J_": PRINT ERROR "_ADDR_" "_$$^%L1HB($$NMPR(ADDR))_" "_$$FUNC^%UCASE(ER) D ALL^W4PCPROG H 5 Q
 Q
 ;
NMPR(ADDR) ;
 I $G(ADDR)="" Q ""
 I '$D(@$$^W4DEVI@(ADDR)) Q ""
 N DEV S DEV=@$$^W4DEVI@(ADDR) I DEV="" Q ""
 Q $G(@$$^W4DEV@(DEV,"H"))
 ;
flag(STAM) ;
 Q $$^W4flag
 ;
PC(STAM) ;
 Q "^[$$^W3MAIN]PC"
 ;
ZAUTO ; 
 N ZAUTO S ZAUTO=$$ZAUTO^W4PRM I ZAUTO=""!(ZAUTO="00:00") Q
 D KILL^%W1PRM("LNG") ; -- 21.08.25
 D RESTDZ
 N P1DZ S P1DZ=$$^W4DZ
 N DAT S DAT=$ZD(P1DZ,"YYMMDD")
 ;
 I ZAUTO?2N1":"2N,ZAUTO'="00:00",$D(@$$^W4REF@(P1DZ))>9 D
 .;;I $D(@$$^W4GL("Z1")@(DAT)) Q
 .I 'ZAUTO,'$P(ZAUTO,":",2) Q
 .N OK S OK=0
 .N N S N=$O(@$$^W4REF@(P1DZ,""),-1)
 .I N,$G(^(N))'[",^" S OK=1
 .I P1DZ<$H,$$SGAUTOMZ^W4PRM S OK=1
 .Q:'OK
 .N TM S TM=ZAUTO*3600+($P(ZAUTO,":",2)*60)
 .N SEC S SEC=$P($H,",",2)
 .I SEC<TM Q
 .I SEC>(TM+1800) Q
 .S @$$^W4PRM@("ZBIG")=0
 .;
 .N OLDTIME S OLDTIME=$G(@$$^W4GL("W4ZAUTO")) ; -- 11/11/21 LEV
 .I $$DIF^%L1TIME($H,OLDTIME)<30 Q
 .N A I $$SGAUTOMZ^W4PRM S A=$$CLOSECASH^W4CLSDAY
 .S @$$^W4GL("W4ZAUTO")@($ZD($H,"YYMMDD 24:60"))=$$^W4SGYOM("Z","AUTO")
 .S @$$^W4GL("W4ZAUTO")=$H
 Q
 ;
RESTDZ ; 
 I '$D(@$$^W4GL("P1DZ")),'$D(@$$^W4GL("Z")@($H-1)),'$D(@$$^W4GL("Z")@(+$H)),$D(@$$^W4REF@($H-1))>9,'$D(@$$^W4REF@(+$H)) S @$$^W4GL("P1DZ")=$H-1
 Q
 ;
PRINTDLVALL ; 
 N DT,%ARG
 N PRINTALL S PRINTALL=$$PRINTALL^W4PRM I PRINTALL=""!(PRINTALL="00:00") Q
 S DT=$$^W4DZ
 K @$$^W4MAIN("VIB")
 S DRC=1
 N MEDT,ADDT
 S (MEDT,ADDT)=DT+1
 S %ARG("TIMESORT")=1
 S %ARG("NOSENDEDORDS")=1
 S %ARG("NOPAIDORDS")=1
 S %ARG("PAIDORDS")=1
 S %ARG("FUTUREORDS")=1
 S %ARG("TAW")=1
 ;
 D CRVIB^W4DLVORD(1)
 ;
 I PRINTALL?2N1":"2N,PRINTALL'="00:00",'$D(@$$^W4GL("W4PA")@(DT)) D
 .I 'PRINTALL,'$P(PRINTALL,":",2) Q
 .N TM S TM=PRINTALL*3600+($P(PRINTALL,":",2)*60)
 .N SEC S SEC=$P($H,",",2)
 .I SEC<TM Q
 .I SEC>(TM+1800) Q
 .D PRINTALLORDS^W4DLVORD(1)
 .S @$$^W4GL("W4PA")@(DT)=$ZD($H,"YYMMDD 24:60")
 Q
 ;
READIT4NET ; 
 I '$G(@$$^W4PRM@("IT4NET")) Q
 N DIR S DIR=$G(@$$^W4PRM@("IT4NET","DIR"))
 I DIR="" S DIR="/tmp/"
 N FILE S FILE=DIR_"w4it4net"
 D GL^W3ASK
 D READFILE^W3ASKGET(FILE,GL)
 ;
 I $D(@GL)<10 Q
 N IT4NET S IT4NET=""
 D IT4WEB^W3ASKIT(GL)
 K @GL
 ZSY "rm "_FILE
 Q
 ;
SEND ; 
 I $$DELIS^W4PRM D 
 .N DT S DT=$$^W4DZ 
 .N TM S TM=$P($H,",",2) 
 .I '$D(@$$^W4GL("W4THNSND")@(DT)),TM>(22*3600),TM<(23*3600) D 
 ..N DAT S DAT=$ZD(DT+1,"DD.MM.YY") 
 ..D ^W4THNSND(DAT)
 ..S @$$^W4GL("W4THNSND")@(DT)=$H_"\"_DAT
 Q
 ;
TRICKSTAT ; 
 N DZ S DZ=$$^W4DZ 
 N N S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  D
 .I $$HZM^W4MSD(N) Q
 .I $$DEL^W4DEL(N) Q
 .I $$^W4HZMH(N) Q
 .
 .I $$TRICKER^W4PRM D
 ..N TMPREP S TMPREP=$G(@$$^W4ORD@(N,"TRICKPREP"))
 ..I TMPREP,'$D(@$$^W4ORD@(N,"TRICKWAIT")),$$DIF^%L1TIME($H,TMPREP,1)>$G(@$$^W4PRM@("TRICKWAIT"),450) J ^W4TRICKR(JB,N,"WAIT")
 .
 .I $$TEAV^W4PRM D
 ..I $$TAKEAWAY^W4HZMST(N) Q
 ..N TMPREP S TMPREP=$G(@$$^W4ORD@(N,"TEAVPREP"))
 ..I TMPREP,'$D(@$$^W4ORD@(N,"TEAVREADY")),$$DIF^%L1TIME($H,TMPREP,1)>$G(@$$^W4PRM@("TEAV","READY"),450) J ^W4TVSND(JB,N,"READY")
 Q
 ;
 ; 
SEND2RSTG ; 
 N RSTGTM S RSTGTM=$G(@$$^W4PRM@("RSTGTIME"))
 I $$RSTGO^W4PRM,RSTGTM D
 .I RSTGTM[":" S RSTGTM=RSTGTM*3600+($P(RSTGTM,":",2)*60)
 .I $$DIF^%L1TIME($P($H,",",2),RSTGTM)<0 Q
 .N LASTDT S LASTDT=$O(@$$^W4GL("Z")@(99999),-1) Q:LASTDT=""
 .I $G(@$$^W4GL("W4RSTGPR"))'=LASTDT D
 ..D ^W4RSTGSN(+$G(JB),LASTDT)
 ..S @$$^W4GL("W4RSTGPR")=LASTDT
 Q
 ;
RCVGIB ; 
 N RCVGIB S RCVGIB=$G(@$$^W4GL("RCVGIB")) I RCVGIB=""!(RCVGIB="00:00") Q
 ;
 N TM S TM=RCVGIB*3600+($P(RCVGIB,":",2)*60)
 N SEC S SEC=$P($H,",",2)
 ;
 I SEC<TM Q
 I SEC>(TM+180) Q
 ;
 N OLDTIME S OLDTIME=$G(@$$^W4GL("RCVGIB")@("LAST"))
 I $$DIF^%L1TIME($H,OLDTIME)<30 Q
 ZSY "/home/gtmuser/igib/scp4iall"
 S @$$^W4GL("RCVIGIB")@($ZD($H,"YYMMDD 24:60"))=$ZSY
 S @$$^W4GL("RCVIGIB")@("LAST")=$H
 ZSY "/home/gtmuser/gib/scp4all"
 S @$$^W4GL("RCVGIB")@($ZD($H,"YYMMDD 24:60"))=$ZSY
 S @$$^W4GL("RCVGIB")@("LAST")=$H
 Q
 ;
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCESEK
W4PCESEK(MYNAME,NOM,GWPC,B,N) ; [ 26.06.13 15:13 ] [ 15.01.13 02:39 ] [
 I $L(MYNAME)'>(GWPC\2) D
 .S %L1SCPC(NOM)=B_$$CENTRB^%L1FRM(MYNAME,GWPC)_N_$J("",12)
 I $L(MYNAME)>(GWPC\2) D
 .S %L1SCPC(NOM)=$$CENTR^%L1FRM(MYNAME,GWPC)
 Q

W4PCHB
W4PCHB(HZM,MAKOR) ; [ 02.07.25 16:19 ] [ 02.01.25 15:00 ] [ 16.09.24 19:24 ] 
 N (JB,%ARG,%REM,HZM,MAKOR,BLIPR,P1TNOPR,HSBENG,W4BONVW); -- BLIPR - BLI PERUT
 Q:'$$^W4ISORD(HZM)
 D ^W4IN
 ;
 I $$ITRA^W4HZMST(HZM)>.5,'$$^W4CLOSE(HZM) D  Q
 .N A S A=$$PCHSB^W4MENUBT(HZM)
 ;
 ;;S ^AA("W4PCHB",HZM,$H)=1 ; ***
 I '$G(MAKOR),'$$^W4CLOSE(HZM) Q
 ;
 I $$^W4CLOSE(HZM)!$D(W4BONVW),'$$SHUL^W4HZMST(HZM),$$SHULA^W4HZMST(HZM) D  Q
 .N NOM S NOM=$O(@$$^W4ORD@(HZM,"CB","ASR",999),-1)
 .I $G(MAKOR),NOM,$D(@$$^W4ORD@(HZM,"ETHB2",NOM,"PC")) Q  ; -- 19.04.23
 .D ^W4PCHB2(HZM)
 ;
 S NCAB=$$NCAB^W4HZMST(HZM)
 N LKHN
 S %REM=$$GET^%W1PRM("REM")
 S IET="ETHB",ITS=2,SHM="NCAB",P1HZHB="",SHET=1
 ;
 ;;I $G(MAKOR),$D(@$$^W4ORD@(HZM,IET,"PC")) Q  ; --- ??? 19.04.23
 ;
 ;;S ^AA("W4PCHB","W4HZTM")=1
 D P1^W4HZTM
 ;
 I $$HB2LK^W4PRM,$$MULTYPAY(HZM) D
 .D ^W4HB2LK(HZM)
 ;
 I '($D(@$$^W4ORD@(HZM,IET))#2) D
 .I $$SHUL^W4HZMST(HZM) D
 ..N PRCLS S PRCLS=0
 ..I $$HZM^W4MSL(HZM),'$$DLV^W4CLOSE(HZM),'$$GETP^%W1PRM("CLSDAY"),'$$GETP^%W1PRM("CLSORD"),'$$CLSDLV^W4PRM!($$TSHL^W4HZMST(HZM)<0) D
 ...D PUT^%W1PRM("CLSORD",1) S PRCLS=1
 ..D ^W4SGHB(HZM)
 ..I PRCLS D KILL^%W1PRM("CLSORD")
 ;
 I '$D(@$$^W4ORD@(HZM,IET,"PC")),$G(@$$^W4ORD@(HZM,IET)) S @$$^W4ORD@(HZM,IET,"PC")=$H
 Q
 ;
 ;
TV(DET) N HZM
 N BLIPR I '$G(DET) S BLIPR=""
 S HZM=$$GET^%W1PRM("HZM")
 I 'HZM Q -1
 I $D(@$$^W4ORD@(HZM))<11 Q -2
 D W4PCHB(HZM)
 Q 1
 ;
MULTYPAY(HZM) ; 
 N VT,SH S SH=0
 S VT="" F  S VT=$O(@$$^W4ORD@(HZM,"CB",VT)) Q:VT=""  D 
 .N IND S IND="" F  S IND=$O(@$$^W4ORD@(HZM,"CB",VT,IND)) Q:IND=""  D 
 ..S SH=SH+1
 I SH>1 Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCHB2
W4PCHB2(HZM) ; [ 08.07.25 13:00 ] [ 18.09.17 12:49 ] [ 05.05.14 21:53 ] 
 N (JB,%REM,%ARG,HZM,PRBIT,P1TNOPR) D ^W4IN
 S %L1SCREF("N")=1,%SCRN=HZSCR,%L1SCREF("S")=$G(@$$^W4ORD@(HZM)) D ^W4SCREF
 I '$D(TIP) S TIP=$$TIP^W4HZMST(HZM)
 ;
 I $G(@$$^W4PRM@("PZPZ")),$$WOLT^W4HZMST(HZM)!($$MKRDLV^W4HZMST(HZM)=10) Q  ; -- 08/07/25
 ;
 S P1HZHB2="",SHM="HB2",ITS=4,IET="ETHB2"
 S HB2=$G(@$$^W4ORD@(HZM,IET),$O(@$$^W4GL("P1HB2")@(9999999),-1)+1) ;-- N H-A
 I HB2<1 S HB2=1
 S NCAB=HB2,SM=1
 S SHUL=$$SHUL^W4HZMST(HZM)
 S SHULA=$$SHULA^W4HZMST(HZM)
 D P1^W4HZTM
 Q
 
 

W4PCHBA
W4PCHBA(NOM,MAKOR) ; [ 23.01.20 14:48 ] [ 03.11.13 17:37 ] [ 06.10.13 15:50 ] 
 N (JB,%ARG,%REM,NOM,MAKOR,PR)
 S:'$G(MAKOR) MAKOR=0
 S HZM=$P($G(@$$^W4GL("P1HB2")@(NOM)),"\")
 S LKHN=$P($G(@$$^W4GL("P1HB2")@(NOM)),"\",4)
 S NCAB=$$NCAB^W4HZMST(HZM)
 S DAT=$$DATK^W4HZMST(HZM)
 S PELE=$$PELE^W4HZMST(HZM)
 D M^W4CAJ
 ;
 S ETHB2=$G(@$$^W4ORD@(HZM,"ETHB2"))
 S IND=0
 F I=1:1:$L(ETHB2,",") I $P(ETHB2,",",I)=NOM S IND=I
 ;
 D KOT
 ;
 N DTK S DTK=$$^%L1DC(DAT,3)
 N AHMAM S AHMAM=$$MAMD^W4L(DTK)
 ;
 S FULL=0
 I 'NCAB,$O(@$$^W4ORD@(HZM,"CB","ASR",99),-1)=1 S FULL=1 D ^W4ORDVW(HZM,1,1,1)
 ;
 W "<div>",!
 W " <table dir="""_$$^%W1DIR_""" style=""font-size:12pt;width:98%"" border=""0"">",!
  I 'FULL  G HBA
  ;
  W "<tr><td>"_$$^%W1DICT("TOTAL")_"</td>"
  W "<td>"_$$RKV($$TOT^W4HZMST(HZM),"NIS",12,"B")_"</td>"
   D DOPTD
  W "</tr>",!
 ;
 S HNH=$$HNH^W4HZMST(HZM)
 I HNH D
 .W "<tr><td>"_$$^%W1DICT("DISC")_"</td>"
 .W "<td>"_$$RKV(HNH,"NIS",12,"BR")_"</td>"
 .D DOPTD
 .W "</tr>",!
 ;
 S DMSH=$$DMSH^W4HZMST(HZM)
 I DMSH D
 .W "<tr><td>"_$$^%W1DICT("SRVFEES")_"</td>"
 .W "<td>"_$$RKV(DMSH,"NIS",12,"B")_"</td>"
 .D DOPTD
 .W "</tr>",!
 ;
 S TSHL=$$TSHL^W4HZMST(HZM)
 S SHUL=$$SHUL^W4HZMST(HZM)
 S SHULA=$$SHULA^W4HZMST(HZM)
 ;
 W "<tr><td>"_$$^%W1DICT("TOPAY")_"</td>"
 W "<td>"_$$RKV(TSHL,"NIS",14,"B")_"</td>"
 D DOPTD
 W "</tr>",!
 ;
HBA ;
 D HR
 ;
 D
 .S A=$G(@$$^W4ORD@(HZM,"CB","ASR",IND)) Q:A=""
 .D ^W4GTVCH(A,"ASR")
 .W "<tr>"
 .W " <td>"_$$^%W1DICT("PAIDCREDIT")_"</td>"
 .W " <td>"_$$RKV(ASR,"NIS",12,"B")_"</td>",!
 .W " <td colspan=""2"">"_$$^%W1DICT("CLIENT")_$$SPACE
 .W $$RKV(LKHN_" "_$$H2U^%L1FRM(LKHN1),"",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("ASRL")_$$SPACE
 .W $$RKV($J(ASR+LKHNH,2,2),"",12,"B")_"</td>",!
 .W "</tr>",!
 .
 .W "<tr><td>"_$$^%W1DICT("BEFORETAX")_"</td>"
 .N MAMASR S MAMASR=$J(ASR*AHMAM/(100+AHMAM),2,2)
 .W " <td>"_$$RKV(ASR-MAMASR,"NIS",12,"N")_"</td>"
 .W " <td>"_$$^%W1DICT("TAX",AHMAM_"%")_"</td>"
 .W " <td>"_$$RKV(MAMASR,"NIS",12,"N")_"</td>"
 .W " <td>"_$$^%W1DICT("TIP")_" "
 .W " "_$$RKV(TIPAS,"NIS",12,"N")_"</td>"
 .W "</tr>",!
 .
 .W "<tr>"
 .W " <td colspan=""2"">&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("DISCPERCENT")_"&nbsp;&nbsp;"
 .W $$RKV(LKAH,"",12,"B")_"</td>",!
 .W "<td>"_$$^%W1DICT("DISC")_"&nbsp;&nbsp;"
 .W $$RKV(LKHNH,"NIS",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("AUTHNO")_"&nbsp;&nbsp;"
 .W $$RKV(HZMLK,"",12,"B")_"</td>",!
 .W "</tr>",!
 .D HR
 ;
 W "</table>",!
 W "</div>",!
 ;
 W "<br><br>",!
 ;
 D DIVBUT(HZM)
 ;
END Q
 ;
 ;
RKV(VL,NIS,FSZ,WGT) ;
 I '$G(FSZ) S FSZ=12
 I $G(NIS)="NIS" S VL=$J(VL,2,2)_" &#8362;" ;;$$H2U^%L1FRM("g""y")
 N RKV
 S RKV="<span style=""font-size:"_FSZ_"pt;font-weight:"
 S RKV=RKV_$S($E(WGT)="B":"bold",1:"normal")
 S RKV=RKV_$S($E(WGT,2)="R":";color:red",1:"")_""" >"
 S RKV=RKV_"&nbsp;&nbsp;"_VL_"&nbsp;&nbsp;</span>"
 Q RKV
 ;
KOT ;
 D KOT^W4KOTHSB
 W "<div align=""center"">",!
 D MYDETAILS^W4KOTHSB
 W "<br>",!
 W "<table border=""0"" width=""90%"" dir="""_$$^%W1DIR_""" >",!
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I $$DEMO^W3PRM(MSD) D STDEMO^W4KOTHSB
 W "<br>",!
 ;
  W "<tr>"
  W " <td colspan=""4"" "
  W "   style=""text-align:center;color:black;font-size:"_$$^W3FSZ(18)_""""
  W "   id=""invoicenumber"">"
  W $$^%W1DICT("CREDITACCOUNT")_" "
  W "   "_NOM_"</td>",!
  W " <td id=""makor"" style=""color:gray;font-size:"_$$^W3FSZ(18)_""">"
  W "   "_$S(MAKOR:$$^%W1DICT("ORIGINAL"),1:$$^%W1DICT("THECOPY"))
  W " </td>"
  W "</tr>",!
 W "<tr><td style=""font-weight:bold"">"_$$^%W1DICT("ORDER")_" "_HZM_"</td></tr>"
 ;
 W "<tr>"
  W " <td colspan=""2"">"_$$^%W1DICT("ISSUETIME")_" "_$ZD($H,"DD.MM.YY  24:60")_"</td>"
  S ORGTIME=$$MKRTIME^W4HZMST(HZM)
  W " <td colspan=""2"">"_$$^%W1DICT("ORIGINALTIME")_" "_$ZD(ORGTIME,"DD.MM.YY  24:60")_"</td>"
 W "</tr>",!
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 ;
 I $$^W4MSL(NMB) D
 .N LKH S LKH=LKHN
 .S LKHNAME=$$NAME^W4HZMST(HZM)
 .S LKHKTV=$$KTVM^W4HZMST(HZM)
 .S LKHTZ=$$TZ^W4L(LKH)
 .S LKHTEL=$$TEL^W4L(LKH)
 .S LKHPELE=$$PELE^W4HZMST(HZM)
 .D LKHDET^W4KOTHSB(HZM)
 ;
 W "</table>",!
 Q
 ;
 ;
DIVBUT(NUMBER) ;
 I $G(%ARG("PRINT")) Q
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D BUT("Print",$$^%W1DICT("PRINT"),"PrintAndBack()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   ;
   I $$CSRPRINT D
    .W "<td>"
    .  D BUT("CSRPrint",$$^%W1DICT("CSRPRINT"),"CSRPrint('"_NUMBER_"')","color:green",",,,180")
    .W "</td>"
    .W "<td>&nbsp;</td>",!
   ;
   W "<td>"
     D BUT("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
BUT(ID,VL,FNC,STYLE,DOP)
 ;D ROUNDBUT^%W1JS(ID,VL,FNC,STYLE,DOP)
 W "<input type=""button"" class=""btn"" value="""_VL_""" id="""_ID_""" style="""_STYLE_""" onClick="""_FNC_""" />",!
 Q
 ;
CSRPRINT(STAM) ;
 D ^W4MDPPC
 I $G(PRINT) Q 1
 Q 0
 ;
CAPAY ;
  W "<tr>",!
   W " <td>",!
    W $$^%W1DICT("PAIDCRCARD")
   W " </td>"
   W " <td>"
    W $$RKV(CAV,"NIS",12,"B")
   W " </td>",!
   ;
   W " <td colspan=""2"">",!
    W $$^%W1DICT("CRCARDNUMBER")_$$SPACE
    N CANMB S CANMB=$E(NCA,$L(NCA)-3,$L(NCA))
    W $$RKV(CANMB_" ...","",12,"B")
   W " </td>",!
   ;
   W " <td>",!
    W $$^%W1DICT("SOLEK")_$$SPACE
    N SOLEK S SOLEK=$G(M($E(VTS,3)))
    W $$RKV($$H2U^%L1FRM(SOLEK),"",12,"B")
   W " </td>",!
   W "</tr>",!
   ;
   W "<tr>"
   W " <td colspan=""2"">&nbsp;</td>"
   W " <td>",!
    W $$^%W1DICT("NOMISKA")_$$SPACE
    W $$RKV(NISKA,"",12,"B")
   W " </td>",!
   ;
   W " <td>"
    ;;W $$^%W1DICT("SUGISKA")_$$SPACE
    W $$RKV($$SUGI1^W4LCBCR(SUG21),"",12,"B")
   W " </td>",!
   ;
   W " <td>"
    W $$^%W1DICT("SUGASR")_$$SPACE
    W $$RKV($$SUGA1^W4LCBCR(SUG1),"",12,"B")
   W " </td>",!
  W "</tr>",!
   ;
  I PN D
  .W "<tr>"
  .W " <td colspan=""2"">&nbsp;</td>"
  .W " <td>"_$$^%W1DICT("QNPAY")_"</td>"
  .W " <td>"_$$RKV(PN,"",12,"B")_"</td>",!
  .W " <td>"_$$^%W1DICT("FIRSTPAY")_"</td>"
  .W " <td>"_$$RKV(P1*.01,"NIS",12,"B")_"</td>",!
  .W " <td>"_$$^%W1DICT("NEXTPAY")_"</td>"
  .W " <td>"_$$RKV(PC*.01,"NIS",12,"B")_"</td>",!
  .W "</tr>",!
 Q
 ;
SPACE(QNSP)
 I '$G(QNSP) S QNSP=1
 N SP,J S SP=""
 F J=1:1:QNSP S SP=SP_"&nbsp;"
 Q SP
 ;
HR ;
 W "<tr><td colspan=""6""><hr></td></tr>",!
 Q
 ;
DOPTD ;
 W "<td width=""70%"" colspan=""6"" >&nbsp;</td>"
 Q
 

W4PCHBP
W4PCHBP(HZM,MAKOR) ; [ 31.08.26 12:30 ] [ 17.06.26 10:57 ] [ 16.04.26 13:29 ] 
 N (JB,%ARG,%REM,HZM,MAKOR,PR,ISHUR,W4BIGTM,W4BONVW)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S NOMAM=0
 S NCAB=$$NCAB^W4HZMST(HZM)
 S LKHN=$$LKHN^W4HZMST(HZM)
 S DAT=$$DATK^W4HZMST(HZM)
 I $$TRH^W4HZMST(HZM) S DAT=$$TRH^W4HZMST(HZM)
 S PELE=$$PELE^W4HZMST(HZM)
 I '$D(PR) S PR="HMK" ; -- WAS HMKP ??
 I 'NCAB S PR="HZ"
 I $G(%ARG("TM")),$G(@$$^W4ORD@(HZM,"TM")) S PR="TM"
 ;
 I $$HZMH(HZM) D
 .S PR="HZMH",DAT=$$TRH^W4HZMST(HZM)
 .
 .I $$VVMSK^W4PRM D
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ...N A S A=$G(^(N))
 ...N NM,QN S NM=$P(A,"\",3),QN=$P(A,"\",5)
 ...;;I NM'["[" S NM=NM_" [ "_QN_" ]"
 ...I NM[" [ " S NM=$P(NM," [ ")
 ...S NM=NM_" [ "_QN_" ]"
 ...S $P(@$$^W4ORD@(HZM,N),"\",3)=NM
 ;
 D M^W4CAJ
 ;
 S %ARG("WDTB")=98
 I $$^W4HZMH(HZM)!$$DELIS^W4PRM,$$PICIT^W4PRM,$G(%ARG("SHOWPIC"))="" S %ARG("SHOWPIC")=1
 ;
 D KOT
 ;
 S W4PCHBP=$G(PR)
 ;
 S COMPRADD=$G(%ARG("COMPRADD"))
 ;
 I PR="HZMH" D
 .I COMPRADD="",$G(@$$^W4PRM@("COMPRADDHZMH")) S (COMPRADD,%ARG("COMPRADD"))=^("COMPRADDHZMH")
 .S DESCR=$G(%ARG("DESCR"))
 .I DESCR="",$G(@$$^W4PRM@("DESCRHZMH")) S (DESCR,%ARG("DESCR"))=^("DESCRHZMH")
 .S LMAM=$G(%ARG("LMAM"))
 .I LMAM="",$G(@$$^W4PRM@("LMAMHZMH")) S (LMAM,%ARG("LMAM"))=^("LMAMHZMH")
 .I $G(@$$^W4PRM@("NOMHHZMH")) S %ARG("NOPRC")=2 ; -- 21/11/24
 ;
 S %ARG("NOVWDEL")=1
 ;
 I $G(%ARG("LMAM"))="" S %ARG("LMAM")=+$$LMAM^W4PRM
 ;
 N BO S BO=$S(PR="HZ"!(PR="HZMH"):0,1:1)
 I $G(%ARG("FAXHTM")),$G(@$$^W4PRM@("MM")) S BO=0 ; -- SHOW COMMENTS
 ;
 D ^W4ORDVW(HZM,COMPRADD,1,BO)
 ;
 W "<div>",!
 W " <table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_"pt;width:"_$$WDTB_"%"" border=""0"">",!
  ;
  ;;N TOT S TOT=$$TOT^W4HZMST(HZM)
  ;;N TOMAM S TOMAM=$$TSHL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
  ;;I $$^W4TIPPD($$DATK^W4HZMST(HZM)) S TOMAM=TOMAM+$$TIP^W4HZMST(HZM)
  ;
  D GETNOMAM(HZM)
  S TOMAM=TOTLMAM+MAM
  N AHMAM S AHMAM=$$AHMAM^W4HZMST(HZM)
  ;;S TOTLMAM=$J(TOMAM*100/(100+AHMAM),2,2)
  ;
  I $$LMAM D  G ENDS
  .Q:$$NOPRC=1 ; -- 21/11/24 --> COMMENT
  .D GETNOMAM(HZM)
  .D HNH
  .D DMSH
  .W "<tr>"
  .D DOPTD
  .W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  .W "<td>"_$$RKV(TOTLMAM,"NIS",12)_"</td>" 
  .;;D DOPTD
  .W "</tr>",!
  .
  .D TOTLMAM
  .D TAX
  .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
  .I $$NCAB^W4HZMST(HZM),+TOMAM'=TSHL N SVL S SVL=TOMAM D INVCVALUE
  .D TOPAY
  ;
  ;
  I $$NOPRC'=1 D
  .D TOT
  .D HNH 
  .D DMSH
  ;
  I $$NOMH(HZM)!$$NOPRC G ENDT
  ;
  S TSHL=$$TSHL^W4HZMST(HZM)
  S SHUL=$$SHUL^W4HZMST(HZM)
  S SHULA=$$SHULA^W4HZMST(HZM)
  ;
  I $$DOP(HZM) D TOPAY
  ;
  D TIP
  ;
  S SVL=TOMAM ;;TSHL+TIP-SHULA
  ;
  N AHMAM S AHMAM=$$AHMAM^W4HZMST(HZM)
  S MAM=$J(SVL*AHMAM/(100+AHMAM),2,2)
  ;;I $$NOMAM^W4PRM D GETNOMAM(HZM)
  ;
  S SVL=TOTLMAM+NOMAM+MAM
  D BEFORETAX
  D TAX
  ;
  I '$$DOP(HZM) D TOPAY
  ;
  I $G(NCAB) D INVCVALUE
ENDS  ;
  I $G(PR)="TM" D HR G ENDT
  ;
  I $G(SHUL) D SHUL
  I $G(SHULA) D SHULA
  ;
  D HR
  ;
  I $$DELIS^W4PRM,'$$SHOW D
  .N QNUN1 
  .S QNUN1=$$TOTQN^W4HZMST(HZM,2)
  .N QNUN2 
  .S QNUN2=$$TOTQN^W4HZMST(HZM,3)
  .W "<tr>"
  .D DOPTD
  .W "<td>"_$$^%W1DICT("QNUNITS1")_"</td>"
  .W "<td>"_$$RKV(QNUN1,"",12,"B")_"</td>"
  .W "</tr",!
  .W "<tr>"
  .D DOPTD
  .W "<td>"_$$^%W1DICT("QNUNITS2")_"</td>"
  .W "<td>"_$$RKV(QNUN2,"",12,"B")_"</td>"
  .W "</tr",!
  ;
  D:'$$NOPRC MZM
  D HR
  ;
  D:'$$NOPRC CHECKS
  ;
  D:'$$NOPRC CA
  ;
  D:'$$NOPRC ASR
  ;
ENDT ;
 W "</table>",!
 ;
 I $G(PR)="TM",$G(%ARG("PRINT")) D
 .N PSL S PSL=$$PSL^W4HZMST(HZM) Q:'PSL
 .W "<br><br><br>",!
 .W $$^%W1DICT("COURIER")_" : "_$$NMH2U^W4SL(PSL)
 ;
 I $$^W4HZMH(HZM)!$$DELIS^W4PRM,$L($G(@$$^W4PRM@("BIDCAUT"))) D
 .W "<br>"
 .W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(14)_""">"_$$RPL^%L1FRM($$H2U^%L1FRM($G(@$$^W4PRM@("BIDCAUT"))),"_","<BR>")_"</span>"
 ;
 W "</div>",!
 ;
 I $G(%ARG("MAIL"))!$G(%ARG("FAX")) W "</html>",!
 ;
 D DIVBUT(HZM)
 ;
END Q
 ;
 ;
RKV(VL,NIS,FSZ,WGT) ;
 S WGT=$G(WGT)
 I '$G(FSZ) S FSZ=12
 I $G(NIS)="NIS" S VL=$J(VL,2,2)_" &#8362;" ;;$$H2U^%L1FRM("g""y")
 N RKV
 S RKV="<span style=""font-size:"_$$^W3FSZ(FSZ)_";font-weight:"
 S RKV=RKV_$S($E(WGT)="B":"bold",1:"normal")
 S RKV=RKV_$S($E(WGT,2)="R":";color:red",1:"")_""" >"
 S RKV=RKV_"&nbsp;&nbsp;"_VL_"&nbsp;&nbsp;</span>"
 Q RKV
 ;
 ;
KOT ;
 D KOT^W4KOTHSB
 ;
 I $G(%ARG("MAIL"))!$G(%ARG("FAX")) W "<html>",!
 ;
 W "<div align=""center"" style="""_$$FONTFM^W3CSS_""">",!
 I $$MSDNM!$D(W4BIGTM) D MSDNAME
 S %ARG("LOGODETWD")=$$WDTB
 D MYDETAILS^W4KOTHSB
 W "<br>",!
 W "<table border=""0"" width="""_$$WDTB_"%"" dir="""_$$^%W1DIR_""" >",!
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I $$DEMO^W3PRM(MSD) D STDEMO^W4KOTHSB
 ;
 S NUMBER=""
 D
 .I NCAB D  Q
 ..S NUMBER=NCAB
 ..I $G(PR)="TM" S NUMBER=$$TM^W4HZMST(HZM)
 ..D DOCNMB^W4KOTHSB
 ..W "<tr><td style=""font-weight:bold"">"_$$^%W1DICT("ORDER")_" "_HZM_"</td></tr>"
 .;
 .I $$HZMH(HZM) D  Q
 ..S NUMBER=HZM
 ..D DOCNMB^W4KOTHSB
 .
 .I $G(PR)="TM" S NUMBER=$$TM^W4HZMST(HZM)
 .I $G(PR)'="TM"!'$G(NUMBER) S NUMBER=HZM,PR="HZ"
 .D DOCNMB^W4KOTHSB
 ;
 W "<tr>"
  W " <td colspan=""2"">"_$$^%W1DICT("ISSUETIME")_" "_$ZD($H,"DD.MM.YY  24:60")_"</td>"
  D
  .S ORGTIME=$$MKRTIME^W4HZMST(HZM) I ORGTIME?.P W "<td>&nbsp;</td>" Q
  .W " <td colspan=""2"">"_$$^%W1DICT("ORIGINALTIME")_" "_$ZD(ORGTIME,"DD.MM.YY  24:60")_"</td>"
 W "</tr>",!
 ;
 I $G(PR)="TM" D
 .W "<tr><td colspan=""2"" style=""font-weight:bold"">"_$$^%W1DICT("ORDER")_" "_HZM_"</td></tr>"
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 ;
 D
 .N LKH S LKH=$$LKHN^W4HZMST(HZM)
 .N NMB S NMB=$$NMB^W4HZMST(HZM)
 .D
 ..I $$HZM^W4MSL(HZM) S LKHNAME=$$NAME^W4HZMST(HZM) Q
 ..S LKHNAME=$$LKHN1^W4HZMST(HZM)
 .I LKHNAME["ogley" S LKHNAME=""
 .I LKHNAME?.P!(LKHNAME?.N) S LKHNAME=$$TOCUSNAME^W4HZMST(HZM)
 .I LKHNAME?.P Q
 .S LKHKTV=$$KTVM^W4HZMST(HZM)
 .I LKHKTV?.P S LKHKTV=$$KTVMM^W4L(LKH)
 .S LKHTZ=$$TZ^W4L(NMB)
 .S LKHTEL=$$TEL^W4L(NMB)
 .S MAZMIN=$$MAZMIN^W4HZMST(HZM)
 .I NMB=$$NMBKSK^W4KIOSKO S LKHTEL=$$TELB^W4HZMST(HZM)
 .S LKHPELE=$$PELE^W4HZMST(HZM)
 .S LKHEMAIL=$$EMAIL^W4HZMST(HZM)
 .S LKHFAX=$$FAX^W4HZMST(HZM)
 .I LKHPELE?.P S LKHPELE=$$PELE^W4L(NMB)
 .;
 .D LKHDET^W4KOTHSB(HZM)
 ;
 W "</table>",!
 Q
 ;
 ;
NOPRC(STAM) ;
 Q $G(%ARG("NOPRC"))
 ;
NOMH(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) I 'NMB Q 0
 I $G(PR)="TM",$G(HZM)>0,$$TMBLIMH^W4L(NMB) Q 1
 Q 0
 ;
 ;
TOT ;
 I $$NOMH(HZM) Q
 ;
 N TOT S TOT=$$TOT^W4HZMST(HZM)
 N AHMAM S AHMAM=$$AHMAM^W4HZMST(HZM)
 N TOTLMAM S TOTLMAM=$J(TOT*100/(100+AHMAM),2,2)
 N NOMAM S NOMAM=0
 I $$NOMAM^W4PRM D GETNOMAM(HZM)
 ;
 N TOT1 S TOT1=$S($G(%ARG("LMAM")):TOTLMAM+NOMAM,1:TOT)
 ;
 I '$G(%ARG("LMAM")),$$DOP(HZM) D
 .W "<tr>"
 .D DOPTD W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
 .W "<td>"_$$RKV(TOT1,"NIS",12)_"</td>" ; -- BLI "B"
 .;; D DOPTD
 .W "</tr>",!
 ;
 I $G(%ARG("LMAM")),$$DOP(HZM) D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
 .W "<td>"_$$RKV(TOT1,"NIS",12)_"</td>" ; -- BLI "B"
 .;;D DOPTD
 .W "</tr>",!
 . 
 .I $$NOMAM^W4PRM,NOMAM D
 ..W "<tr>"
 ..D DOPTD
 ..W "<td>"_$$^%W1DICT("NOMAM")_"</td>"
 ..W "<td>"_$$RKV($J(NOMAM,2,2),"NIS",12)_"</td>" ; -- BLI "B"
 ..W "</tr>",!
 .
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("TAX",AHMAM_"%")_"</td>"
 .W "<td>"_$$RKV($J(TOTLMAM*AHMAM/100,2,2),"NIS",12)_"</td>" ; -- BLI "B"
  .;;D DOPTD
 .W "</tr>",!
 .
 .W "<tr>"
 .D DOPTD
 .W " <td>"_$$^%W1DICT("AFTERTAX")_"</td>"
 .W " <td>"_$$RKV($J(TOT,2,2),"NIS",12)_"</td>" ; -- BLI "B"
 .;; D DOPTD
 .W "</tr>",!
 Q
 ;
DOP(HZM) ;
 I $$HNH^W4HZMST(HZM)!$$DMSH^W4HZMST(HZM) Q 1
 Q 0
 ;
HNH ;
 S HNH=$$HNH^W4HZMST(HZM)
 I $$LMAM S HNH=$J(HNH*100/(100+AHMAM),2,2)
 I HNH D
 .W "<tr>"
 .D DOPTD 
 .W "<td>"_$$^%W1DICT("DISC")_"</td>"
 .W "<td>"_$$RKV(HNH,"NIS",12,"BR")_"</td>"
 .;;D DOPTD
 .W "</tr>",!
 Q
 ;
DMSH ;
 S DMSH=$$DMSH^W4HZMST(HZM)
 I $$LMAM S DMSH=$J(DMSH*100/(100+AHMAM),2,2)
 I DMSH D
 .N WORD S WORD="SRVFEES"
 .I $$HZM^W4MSL(HZM) S WORD="DLVPAY"
 .W "<tr>"
 .D DOPTD 
 .W "<td>"_$$^%W1DICT(WORD)_"</td>"
 .W "<td>"_$$RKV(DMSH,"NIS",12,"B")_"</td>"
 .;;D DOPTD
 .W "</tr>",!
 Q
 ;
TOPAY ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("TOPAY")_"</td>"
 W "<td>"_$$RKV(TSHL,"NIS",16,"B")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
TIP ;
 S TIP=$$TIP^W4HZMST(HZM)
 I TIP D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("TIP")_"</td>"
 .W "<td>"_$$RKV(TIP,"NIS",12,"B")_"</td>"
 .;;D DOPTD
 .W "</tr>",!
 Q
 ;
INVCVALUE ;
 ;;I '$$^W4TIPPD S SVL=SVL-TIP
 W "<tr>"
 D DOPTD ; !!
 W "<td>"_$$^%W1DICT("INVOICEVALUE")_"</td>"
 W "<td>"_$$RKV(SVL,"NIS",14,"B")_"</td>"
 W "</tr>"
 Q
 ;
BEFORETAX ;
 I $$NOMAM^W4PRM,NOMAM D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("NOMAM")_"</td>"
 .W "<td>"_$$RKV($J(NOMAM,2,2),"NIS",12)_"</td>" ; -- BLI "B"
 .W "</tr>",!
 ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("BEFORETAX")_"</td>"
 W "<td>"_$$RKV(SVL-MAM-NOMAM,"NIS",12,"N")_"</td>"
 W "</tr>",!
 Q
 ;
 ;
TOTLMAM ;
 ;;I 'DMSH,'HNH Q
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("TOTLMAM")_"</td>"
 ;;W "<td>"_$$RKV(TOTLMAM+DMSH-HNH,"NIS",12,"N")_"</td>"
 W "<td>"_$$RKV(TOTLMAM,"NIS",12,"N")_"</td>"
 W "</tr>",!
 Q
 ;
TAX ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("TAX",AHMAM_"%")_"</td>"
 W "<td>"_$$RKV(MAM,"NIS",12,"N")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
SHUL ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("PAID")_"</td>"
 W "<td>"_$$RKV(SHUL,"NIS",12,"B")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
SHULA ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("PAIDCREDIT")_"</td>"
 W "<td>"_$$RKV(SHULA,"NIS",12,"B")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
MZM ;
 S MZM=$$MZM^W4HZMST(HZM)
 I MZM D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("PAIDCASH")_"</td>"
 .W "<td>"_$$RKV(MZM,"NIS",12,"B")_"</td>"
 .;;D DOPTD
 .W "</tr",!
 Q
 ;
CHECKS ;
 Q:$G(HZM)=""
 N N,A
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","CH",N)) Q:N=""  D
 .S A=$G(^(N))
 .D ^W4GTVCH(A,"CH")
 .;
 .W "<tr>"
 .D DOPTD1 ; !!
 .W " <td>"_$$^%W1DICT("PAIDCHECK")_"</td>"
 .W " <td>"_$$RKV(CHS,"NIS",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("BANK")_$$SPACE
 .W $$RKV($E(BSN,1,2),"",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("SNIF")_$$SPACE
 .W $$RKV($E(BSN,3,5),"",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("ACCOUNT")_$$SPACE
 .W $$RKV(HESH,"",12,"B")_"</td>",!
 .W "</tr>",!
 .
 .W "<tr>",!
 .D DOPTD1 ; !!
 .W " <td colspan=""2"">&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("CHECKNUMBER")_$$SPACE
 .W $$RKV(NCHECK,"",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("PRAON")_$$SPACE
 .W $$RKV($$^%L1DC(DATP,"."),"",12,"B")_"</td>",!
 .W "</tr>",!
 .D HR
 Q
 ;
CA ;
 N N,A
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S A=$G(^(N))
 .D ^W4GTVCH(A,"V")
 .D CAPAY
 .D HR
 Q
 ;
ASR ;
 I $G(LKHN) N LKHN
 N A,N
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S A=$G(^(N))
 .D ^W4GTVCH(A,"ASR")
 .W "<tr>"
 .D DOPTD1
 .I 'LKAH W "<td>&nbsp;</td>"
 .W " <td>"_$S($$NOPRC:"&nbsp;",1:$$^%W1DICT("PAIDCREDIT"))_"</td>"
 .W " <td>"_$S($$NOPRC:"&nbsp;",1:$$RKV(ASR,"NIS",12,"B"))_"</td>",!
 .W " <td colspan=""2"">"_$$^%W1DICT("CLIENT")_$$SPACE
 .W $$RKV(LKHN_" "_$$H2U^%L1FRM(LKHN1),"",12,"B")_"</td>",!
 .D
 ..I 'LKAH Q  ;;W "<td>&nbsp;</td><td>&nbsp;</td>" Q
 ..W " <td>"_$$^%W1DICT("ASRL")_$$SPACE
 ..W $$RKV($J(ASR+LKHNH,2,2),"",12,"B")_"</td>",!
 .W "</tr>",!
 .
 .W "<tr>"
 .D DOPTD1
 .W " <td colspan=""2"">&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("DISCPERCENT")_"&nbsp;&nbsp;"
 .W $$RKV(LKAH,"",12,"B")_"</td>",!
 .W "<td>"_$$^%W1DICT("DISCASR")_"&nbsp;&nbsp;"
 .W $$RKV(LKHNH,"NIS",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("AUTHNO")_"&nbsp;&nbsp;"
 .W $$RKV($$H2U^%L1FRM(HZMLK),"",12,"B")_"</td>",!
 .W "</tr>",!
 .D HR
 Q
 ;
 ;
DIVBUT(NUMBER) ;
 I $$SHOW Q
 I $$VVMSK^W4PRM G BUTTONS
 ;
 W "<br>",!
 W "<br>",!
 ;
 W "<div id=""divbut"" align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table id=""TblDets"" width="""_$$WDTB_"%"" "
   W "dir="""_$$^%W1DIR_""" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   D
   .W "<td>"
   . W $$^%W1DICT("PRICESWITHTAX")_"&nbsp;"
   . W "<input type=""radio"" name=""pricetax"" "
   . W " onClick=""PriceTax('0')"" "
   . I '$G(%ARG("LMAM")) D
   . .W "checked=""checked"" "
   . W " >",!
   .W "</td>"
   .
   .W "<td>"
   . W $$^%W1DICT("PRICESWITHOUTTAX")_"&nbsp;"
   . W "<input type=""radio"" name=""pricetax"" "
   . W " onClick=""PriceTax('1')"" "
   . I $G(%ARG("LMAM")) D
   . .W "checked=""checked"" "
   . W " >",!
   .W "</td>"
   .
   .W "<td width=""15%"">"
   . W $$^%W1DICT("ITEMSDESCR")_"&nbsp;"
   . W "<input type=""checkbox"" id=""descr"" "
   . W " onClick=""ItemsDescr()"" "
   . I $G(%ARG("DESCR")) D
   .. W " checked=""checked"" "
   . W ">"
   .W "</td>"
 ;
   W "<td>"
    W $$^%W1DICT("DETAILSHOW")_"&nbsp;"
    W "<input type=""radio"" name=""kindshow"" "
    W " onClick=""Show('0')"" "
    I '$G(%ARG("COMPRADD")) D
    .W "checked=""checked"" "
    W " >",!
   W "</td>"
 ;
   W "<td>"
    W $$^%W1DICT("CONCSHOW")_"&nbsp;"
    W "<input type=""radio"" name=""kindshow"" "
     I $G(%ARG("COMPRADD")) D
     .W "checked=""checked"" "
    W " onClick=""Show('1')"" "
    W " >",!
   W "</td>"
   ;
   W "<td width=""15%"">"
    W $$^%W1DICT("NOITCOMMENTS")_"&nbsp;"
    W "<input type=""checkbox"" id=""nocmnt"" "
    W " onClick=""NoComments()"" "
    I $G(%ARG("NOCMNT")) D
    .W " checked=""checked"" "
   W ">"
  W "</td>"
 W "</tr>",!
 ;
 D DOPPRM
 W "</table>",!
 ;
 W "<br>",!
 ;
 I $G(LKHN)="" S LKHN="0000000000"
 ;
 I '$G(%ARG("SEND2MAIL")) D
 .N EM S EM=$G(LKHEMAIL)
 .I EM["@",EM[".",$G(LKHN)'="" S @$$^W4GL("LKH")@(LKHN,"E",EM)=$H_"\"_HZM
 .D EMAIL(LKHN,HZM,PR,$$WDTB)
 ;
BUTTONS ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTB_"%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D BUT("Print",$$^%W1DICT("PRINT2BIG"),"PrintAndBack()","text-align:center;color:green",",,,100")
   W "</td>"
   ;
   I $$CSRPRINT,'$$^W4HZMH(HZM) D
    .I $$^W4CLOSE(HZM) D
    ..W "<td>&nbsp;</td>",!
    ..W "<td>"
    ..  D BUT("CSRPrintInvc",$$^%W1DICT("CSRPRINTINVC"),"CSRPrintInvc('"_HZM_"')","text-align:center;color:green",",,,120")
    ..W "</td>"
    .
   ;
   I $$^W4HZMH(NUMBER),$G(%ARG("EDIT")) D
   .W "<td>"
   .  D BUT("Back2Order",$$^%W1DICT("CHANGEORDER"),"ChangeOrder()","text-align:center;color:brown",",,,100")
   .W "</td>"
   .
   .I $$ISCR^W4L(LKHN) D
   ..W "<td>"
   ..  D BUT("SubmitCred",$$^%W1DICT("SUBMITCREDIT"),"SubmitCredit('"_HZM_"')","text-align:center;color:green",",,,120")
   ..W "</td>"
   ;
   I '$G(%ARG("NOBACK")) D
   .W "<td>&nbsp;</td>"
   .W "<td>"
   .  D BUT("Back",$$^%W1DICT("EXIT"),"Back()","text-align:center;color:red",",,,100")
   .W "</td>"
   ; 
  W "</tr>",!
  ;
  I $$TM^W4HZMST(HZM) D
  .W "<tr><td>&nbsp;</td></tr>",!
  .W "<tr>"
  . W "<td>"
  .  D BUT("PrintDlv",$$^%W1DICT("PCBIGTM"),"PrintDlv('"_HZM_"')","text-align:center;color:green",",,,120")
  . W "</td>"
  . W "<td>&nbsp;</td>",!
  .
  . W "<td>"
  .  D BUT("CSRPrintDlv",$$^%W1DICT("CSRPRINTDLV"),"CSRPrintDlv('"_HZM_"')","text-align:center;color:green",",,,120")
  . W "</td>"
  .W "</tr>",!
  W "</table>",!
  ;
 Q
 ;
 ;
BUT(ID,VL,FNC,STYLE,DOP)
 ;D ROUNDBUT^%W1JS(ID,VL,FNC,STYLE,DOP)
 W "<input type=""button"" class=""btn"" value="""_VL_""" id="""_ID_""" style="""_STYLE_""" onClick="""_FNC_""" />",!
 Q
 ;
CSRPRINT(STAM) ;
 D ^W4MDPPC
 I $D(W4BONVW),$$MDPMSL^W4PRM>1 S PRINT=$$MDPMSL^W4PRM
 I $G(PRINT) Q 1
 Q 0
 ;
CAPAY ;
  W "<tr>",!
   D DOPTD1 ; !!
   W " <td>",!
    W $$^%W1DICT("PAIDCRCARD")
   W " </td>"
   W " <td>"
    W $$RKV(CAV,"NIS",12,"B")
   W " </td>",!
   ;
   W " <td colspan=""2"">",!
    W $$^%W1DICT("CRCARDNUMBER")_$$SPACE
    N CANMB S CANMB=$E(NCA,$L(NCA)-3,$L(NCA))
    W $$RKV(CANMB_" ...","",12,"B")
   W " </td>",!
   ;
   W " <td>",!
    W $$^%W1DICT("SOLEK")_$$SPACE
    N SOLEK S SOLEK=$G(M($E(VTS,3)))
    W $$RKV($$H2U^%L1FRM(SOLEK),"",12,"B")
   W " </td>",!
   W "</tr>",!
   ;
   ;
   W "<tr>"
   D DOPTD1 ; !!
   ;;W " <td colspan=""2"">&nbsp;</td>"
   W " <td>",!
    W $$^%W1DICT("NOMISKA")_$$SPACE
    W $$RKV(NISKA,"",12,"B")
   W " </td>",!
   ;
   W " <td>"
    ;;W $$^%W1DICT("SUGISKA")_$$SPACE
    W $$RKV($$SUGI1^W4LCBCR(SUG21),"",12,"B")
   W " </td>",!
   ;
   W " <td>"
    W $$^%W1DICT("SUGASR")_$$SPACE
    W $$RKV($$SUGA1^W4LCBCR(SUG1),"",12,"B")
   W " </td>",!
  W "</tr>",!
   ;
  I PN D
  .W "<tr>"
  .D DOPTD1 ; !!
  .;;W " <td colspan=""2"">&nbsp;</td>"
  .W " <td colspan=""2"">"_$$^%W1DICT("QNPAY")_$$NBSP^%L1FRM(5)_$$RKV(PN,"",12,"B")_"</td>",!
  .W " <td colspan=""2"">"_$$^%W1DICT("FIRSTPAY")_$$NBSP^%L1FRM(5)_$$RKV(P1*.01,"NIS",12,"B")_"</td>",!
  .W " <td colspan=""2"">"_$$^%W1DICT("NEXTPAY")_$$NBSP^%L1FRM(5)_$$RKV(PC*.01,"NIS",12,"B")_"</td>",!
  .W "</tr>",!
 Q
 ;
SPACE(QNSP)
 I '$G(QNSP) S QNSP=1
 N SP,J S SP=""
 F J=1:1:QNSP S SP=SP_"&nbsp;"
 Q SP
 ;
HR ;
 W "<tr><td colspan=""9""><hr></td></tr>",! ; ** WAS 6
 Q
 ;
DOPTD ;
 W "<td width=""60%"" colspan=""7"" >&nbsp;</td>"
 Q
 ;
DOPTD1 ;
 W "<td width=""20%"" colspan=""3"" >&nbsp;</td>"
 Q
 ;
HZMH(HZM) ;
 I +$G(%ARG("HZMH")) Q 1
 I $$^W4HZMH(HZM) Q 1
 Q 0
 ;
EMAIL(LKHN,NUMBER,PR,WD) ;
 D ^W4EMAIL(LKHN,NUMBER,$G(PR),$G(WD)) ;
 Q
 ;
 ;
EMAILCONT(PRM) ; 
 N (JB,%ARG,PRM) D ^%L1TS
 S TMPORD=$$^W4TMPORD 
 ;
 S ORD=$P(PRM,";")
 S HDMAIL=$P(PRM,";",2)
 S EMAIL=$P(PRM,";",3)
 I EMAIL="",ORD>0 D
 .S LKH=$$NMB^W4HZMST(ORD)
 .S EMAIL=$$EMAIL^W4L(LKH)
 ;
 S EMAIL=$$CLA^%L1FRM(EMAIL)
 S $P(PRM,";",3)=EMAIL
 ;;S ^AA(JB,"W4PCHBP-EMAILCONT",+ORD,"PRM")=PRM
 ;;S ^AA(JB,"W4PCHBP-EMAILCONT",+ORD,"EMAIL")=EMAIL
 ;
 S ISHUR=$P(PRM,";",4)
 I ISHUR["^" S ISHUR=$P(ISHUR,"^",2)
 S DET='$P(PRM,";",5)
 S LMAM=$P(PRM,";",6)
 S HOWSEND=$P(PRM,";",7)
 I 'HOWSEND S HOWSEND=3
 S DOCS=$P(PRM,";",8)
 ;
 S %ARG("DESCR")=$P(PRM,";",9)
 S %ARG("SHOWPIC")=$P(PRM,";",10)
 S %ARG("NOCMNT")=$P(PRM,";",11)
 S %ARG("NOCD")=$P(PRM,";",12)
 S %ARG("NOPRC")=$P(PRM,";",13)
 S %ARG("LMAM")=LMAM
 S %ARG("MAIL")=1
 S %ARG("WHATSAPP")=$P(PRM,";",14)
 ;
 S COMMENT=$P(PRM,";",15,1000)
 ;
 I $G(%ARG("WHATSAPP"))="",$G(ISHUR)?1N,$G(@$$^W4PRM@("BIDISHWH")) D
 .S %ARG("WHATSAPP")=$$PELE^W4HZMST(ORD)
 ;
 I $G(%ARG("WHATSAPP"))="",EMAIL'["@" Q "EMAILWRONG"
 ;
 S RES=$$^W4GETHZ(ORD) I RES<0 Q RES
 ;
 I $G(EMAIL)'="" D
 .S @$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)=$H_";"_$P(PRM,";",2,1000)
 ;
 I $$PWRLNK^W4PRM,$$^W4HZMH(ORD),'$$DEL^W4DEL(ORD) J SNDBID^W4PWRLNK(JB,ORD)
 ;
 D PRM^W4MAIL ; --> FROM,SMRP,USER,PSW
 ;
 N WEB S WEB=$$WEB^W3MAIN
 I WEB["//" S WEB=$P(WEB,"//",2,20)
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 S LINK=WEB_"w4pchbp.jsp?JB="_JB_"&ORD="_ORD_"&RCV=1"
 ;
 N DV S DV=$$^W4MYDVN
 S FILE="/tmp/sndmail"_DV_"_"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  I LMAM S %ARG("LMAM")=1
  D ECONT(ORD,ISHUR,DET)
 C FILE
 ;
 D PROCFILE^W4EMAIL(FILE,COMMENT,HOWSEND)
 S FILE1=$G(FILE1)
 I $ZSY D MAILRES^W4EMAIL(ORD,EMAIL) Q $ZSY
 ;
 I $G(%ARG("WHATSAPP"))'="" D  I $G(ISHUR)'?1N Q $ZSY
 .N PELE S PELE=$G(%ARG("WHATSAPP"))
 .D SNDWHATSAPP($G(HDMAIL),FILE1,PELE)
 ;
 J SEND^W4EMAIL(JB,PRM,SMTP,USER,PSW,FROM,FILE1,FILEC)
 Q $ZSY
 ;
 ;
ECONT(HZM,ISHUR,DET) ;
 N TXT
 S TXT=$$HRA^W4HZMST(HZM)
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 ;
 I ISHUR=2 D  G ENDECONT
 .I $$^%W1LNG="H" D
 ..W $$CMNT("dpken jly dpnfdd ")
 ..I $$SF^W4PRM D
 ...W $$CMNT("ixehwt 'uieecpqn seq`l `p")
 ...W $$CMNT("dilvxd 16 xwpy dix`")
 ;
 I ISHUR=1 D
 .I $$^%W1LNG="H" D
 ..W $$CMNT("! dxye` mkly dpnfd ")
 ..I $$SF^W4PRM W $$CMNT("! ixehwt 'uieecpqn dax dcez")
 ;
 I ISHUR=0 D
 .I $$^%W1LNG="H" D
 ..W $$CMNT("! dlhea dpnfd ")
 ;
 D ORDCONTENT(HZM)
ENDECONT W "</div>",!
 Q
 ;
 ;
CMNT(TXT) ;
 N ST
 S ST="<br><span style=""color:red;font-size:"_$$^W3FSZ(18)_";font-weight:bold"">"
 S ST=ST_$$H2U^%L1FRM(TXT)_"</span>"
 Q ST
 ;
ORDCONTENT(HZM)
 N (JB,%ARG,%REM,HZM,DET)
 S %ARG("MAIL")=1
 I $$^W4HZMH(HZM) S %ARG("HZMH")=1
 S %ARG("COMPRADD")='$G(DET)
 ;
 S MKR=1
 I $G(@$$^W4ORD@(HZM,"MKRSND")) S MKR=0
 D W4PCHBP(HZM,MKR)
 S @$$^W4ORD@(HZM,"MKRSND")=$H
 Q
 ;
WDTB(STAM) 
 Q $G(%ARG("WDTB"),98)
 ;
MSDNM()
 I $G(@$$^W4PRM@("MSDNAME")) Q 1
 I '$$LOGO^W4KOTHSB Q 1
 Q 0
 ;
MSDNAME ;
 D ^W4MSDNAM
 Q
 ;
LMAM(STAM) ; 
 N LMAM S LMAM=$G(%ARG("LMAM"))
 I $G(PR)="HZMH",LMAM="",$G(@$$^W4PRM@("LMAMHZMH")) S LMAM=^("LMAMHZMH")
 I LMAM="" S LMAM=$$LMAM^W4PRM
 Q LMAM 
 ;
SHOW(STAM) ;
 I $G(%ARG("PRINT"))!$G(%ARG("MAIL"))!$G(%ARG("FAX")) Q 1
 Q 0 
 ;
DOPPRM ;
 W "<tr>"
 W "<td>"
  W $$^%W1DICT("SHOWITCODES")_"&nbsp;"
  W "<input type=""radio"" name=""showcodes"" "
  W " onClick=""ShowCodes('0')"" "
  I '$G(%ARG("NOCD")) D
  .W "checked=""checked"" "
  W " >",!
 W "</td>"
 ;
 W "<td>"
  W $$^%W1DICT("NOSHOWITCODES")_"&nbsp;"
  W "<input type=""radio"" name=""showcodes"" "
  W " onClick=""ShowCodes('1')"" "
  I $G(%ARG("NOCD")) D
  .W "checked=""checked"" "
  W " >",!
 W "</td>"
 ;
 I $$NOVWPRC^W4PRM D
 .W "<td>"
 . W $$^%W1DICT("SHOWPRICES")_"&nbsp;"
 . W "<input type=""radio"" name=""showprices"" "
 . W " onClick=""ShowPrices('0')"" "
 . I '$G(%ARG("NOPRC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 .
 .W "<td>"
 . W $$^%W1DICT("NOSHOWPRICES")_"&nbsp;"
 . W "<input type=""radio"" name=""showprices"" "
 . W " onClick=""ShowPrices('1')"" "
 . I $G(%ARG("NOPRC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 ;
 I $$VWPICHM^W4PRM D
 .W "<td>"
 . W $$^%W1DICT("SHOWPICTURES")_"&nbsp;"
 . W "<input type=""radio"" name=""showpic"" "
 . W " onClick=""ShowPic('1')"" "
 . I $G(%ARG("SHOWPIC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 .
 .W "<td>"
 . W $$^%W1DICT("NOSHOWPICTURES")_"&nbsp;"
 . W "<input type=""radio"" name=""showpic"" "
 . W " onClick=""ShowPic('0')"" "
 . I '$G(%ARG("SHOWPIC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 W "</tr>",!
 Q
 ;
PUTCOMM(PRM) ;
 N DT,TIME,HZM
 S DT=$P(PRM,";") 
 S TIME=$P(PRM,";",2) 
 S TIME=$$DOP^%L1FRM($P(TIME,":"))_":"_$$DOP^%L1FRM($P(TIME,":",2))
 S HZM=$$GETP^%W1PRM("HZM")
 I HZM<1 Q "ORDERNOTDEFINED"
 S @$$^W4ORD@(HZM,"WHENCOMM")=$ZD(DT,"DD.MM.YY")_" "_TIME
 I 'DT K @$$^W4ORD@(HZM,"WHENCOMM")
 N MIN S MIN=TIME*60+$P(TIME,":",2)
 N ZMAN S ZMAN=DT_","_MIN
 S @$$^W4GL("W4WHEN")@(HZM)=ZMAN
 D PUT^%W1PRM("SAVEORD",HZM)
 ;
 N D,M
 S D="" F  S D=$O(@$$^W4GL("W4WHENI")@(D)) Q:D=""  D
 .S M="" F  S M=$O(@$$^W4GL("W4WHENI")@(D,M)) Q:M=""  D
 ..K @$$^W4GL("W4WHENI")@(D,M,HZM)
 ;
 I DT S @$$^W4GL("W4WHENI")@(DT,MIN,HZM)=""
 Q 1 
 ;
 ; 
ACNTDOWN ; 
 N (JB,%ARG,%REM)
 I '$G(%ARG("PRINT")),'$G(%ARG("MAIL")) Q
 S TOP=1240
 I $G(%ARG("MAIL")),$$SGNPDF^W4PRM S TOP=1070
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""position:absolute;top:"_TOP_"px;width:850px;left:50px"">",!
  S ST=$G(@$$^W4GL("W4ACNT")@(1))
  D PRS^%L1FRM(ST,"BANK\BANKNAME\SNIF\ACCOUNT","\")
  S TZ=$G(@$$^W4PL@("ESEK",4))
  W "<hr>",!
  W "<table>",!
    W "<tr>"
     W "<td width=""3%"">&nbsp;</td>"
     W "<td width=""15%"">"
       W $$^%W1DICT("BANK")_" : "_BANK   
     W "</td>"
     ;
     W "<td width=""20%"" >"
       W $$^%W1DICT("BANKNAME")_" : "_$$H2U^%L1FRM(BANKNAME)
     W "</td>"
     ;
     W "<td width=""15%"">"
       W $$^%W1DICT("SNIF")_" : "_SNIF   
     W "</td>"
     ;
     W "<td width=""20%"">"
       W $$^%W1DICT("TZ")_" : "_TZ
     W "</td>"
     ;
     W "<td width=""15%"">"
       W $$^%W1DICT("ACCOUNT")_" : "_ACCOUNT
     W "</td>"
    W "</tr>",!
  W "</table>",!
  W "<hr>",!
 W "</div>"
 Q
 ;
 ;
SNDWHATSAPP(HD,FILE1,PELE) 
 N (JB,%ARG,%REM,HD,FILE1,PELE)
 S PELE=$TR(PELE,"-","")
 I $E(PELE,1,4)'="+972" D
 .S PELE="+972"_$S($E(PELE)="0":$E(PELE,2,20),1:PELE)
 ;
 L +^TMPWSAPP:5
 S ^TMPWSAPP=HD_"/"_PELE
 ;
 S PATH=$$WEBL^W3MAIN_"tmp/" ; *** WAS WEBL
 S PATH2=$$WEB^W3MAIN(1)_"tmp/"
 ;
 S URL1="https://api.wassenger.com/v1/messages"
 S URL2=PATH2
 S TOKEN="dcff444024e87b6010f4baa5f20498fbe15a6f9ec2e8c2d08d5b16045db5a79fac3d4ecbd77e241e" 
 ;
 S FLNM=FILE1
 I FLNM["/" S FLNM=$P(FLNM,"/",$L(FLNM,"/"))
 ;
 S DZ=$$^W4DZ,DV=$$^W4MYDVN
 S FL2NM="whatsapp"_DZ_"-"_DV_"-"_$G(JB)_"-"_$P($H,",",2)
 ;
 S FL=PATH_FL2NM
 S FILE2=FL_".pdf"
 ZSY "cp "_FILE1_" "_FILE2 ; -- WAS mv - 18.12.24
 ;
 S FLOU=FL_".ou"
 ;
 N DZ,IND
 ;
 I $G(@$$^W4PRM@("WHATSAPPNEW")) D  G PROT
 .N VDOC S VDOC=""
 .N HDB S HDB=$$FUNC^%UCASE(HD)
 .D
 ..I HDB["QUOTATION"!(HDB["BID"),HDB["APPROVED" S VDOC="HMIS" Q
 ..I HDB["QUOTATION"!(HDB["BID"),HDB["CANCELED" S VDOC="HMBT" Q
 ..I HDB["QUOTATION"!(HDB["BID") S VDOC="HM" Q
 ..I HDB["INVOICE",HDB["ORDER" S VDOC="HMK" Q
 ..I HDB["ORDER",HDB["CANCELED" S VDOC="HZBT" Q
 ..I HDB["ORDER" S VDOC="HZ" Q
 ..I HDB["INVOICE" S VDOC="HB" Q
 ..I HDB["RECEIPT" S VDOC="CB" Q 
 .
 .S CMD="curl -X POST "
 .S CMD=CMD_"""https://hook.eu2.make.com/96417iexq2uttysuh061855ijyquuidl"""
 .S CMD=CMD_" -F ""file=@"_FILE2_";type=application/pdf"" -F ""clientPhone="_PELE_""" "
 .I $L(VDOC) S CMD=CMD_"-F ""documentType="_VDOC_""" " 
 .ZSY CMD
 .S DZ=$$^W4DZ
 ;
 C FL:(DELETE)
 O FL:(NEWVERSION:REWIND:WRITE)
 U FL
 W "{",!
  W """phone"":"""_PELE_""",",!
  W """media"":{",!
  W """message"":""From Delis - "_HD_""",",! 
  W """url"":"""_URL2_FL2NM_".pdf"",",!
  W """expiration"":""30d""",!
  W "}",!
 W "}",!
 C FL
 ;
 N DZ S DZ=$$^W4DZ
 N IND S IND=$O(^W4PWRCMD(DZ,99999999),-1)+1
 ;
 O FL:(REWIND:READONLY) U FL
 N A,I S I=0
 F  R A Q:$ZEOF  D 
 .S I=I+1
 .S ^[$$^W3MAIN]W4PWRCMD(DZ,IND,"CONT",I)=A
 C FL
 ;
 S CMD="curl --request POST"
 S CMD=CMD_" --url '"_URL1_"'"
 S CMD=CMD_" --header 'Content-Type:application/json'"
 S CMD=CMD_" --header 'Token:"_TOKEN_"'"
 S CMD=CMD_" --data @"_FL
 S CMD=CMD_" > "_FLOU
 ZSY CMD
 ;
PROT ;
 D PROT^W4PWRLNK(CMD)
 ;
 S IND=$O(^W4PWRCMD(DZ,99999999),-1)+1
 Q:'$$EXIST^%L1ZOS(FLOU)
 O FLOU:(REWIND:READONLY) U FLOU
 N A,I S I=0
 F  R A Q:$ZEOF  D 
 .S I=I+1
 .S ^[$$^W3MAIN]W4PWRCMD(DZ,IND,"RESP",I)=A
 C FLOU
 ;
 K %ARG("WHATSAPP")
 L -^TMPWSAPP
 Q 
 ;
 ;
GETNOMAM(HZM) ;
 N (JB,%ARG,HZM,MAM,TOTLMAM,NOMAM)
 ;;I '$$NOMAM^W4PRM Q
 N SHUL S SHUL=$$SHUL^W4HZMST(HZM)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 
 I $$NCAB^W4HZMST(HZM) S TOMAM=$S(SHUL>TSHL:TSHL+$S($$^W4TIPPD($$DTK(HZM))&'$$^W4TIPCBU($$DTK(HZM)):$G(TIP),1:""),1:SHUL)
 I '$$NCAB^W4HZMST(HZM) S TOMAM=TSHL
 N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 N AHMAM S AHMAM=$$MAMD^W4L(DT)
 ;
 S MAM=$J(TOMAM*AHMAM/(100+AHMAM),2,2)
 I '$$NOMAM^W4PRM S TOTLMAM=TOMAM-MAM Q
 ;
 D SMAM^W4DMAM(DT,HZM)
 N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM"))
 S TOTLMAM=TOMAM-MAM
 I KMAM<1 D
 .S NOMAM=TOMAM-(TOMAM*KMAM)
 .S MAM=MAM*KMAM
 .S TOTLMAM=TOMAM*KMAM-MAM;;+NOMAM
 Q
 ;
 ;
DTK(HZM) ;
 Q $$^%L1DC($$DATK^W4HZMST(HZM),3)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCHBP0
W4PCHBP(HZM,MAKOR) ; [ 06.02.25 13:30 ] [ 02.01.25 14:56 ] [ 18.12.24 16:13 ] 
 N (JB,%ARG,%REM,HZM,MAKOR,PR,ISHUR,W4BIGTM,W4BONVW)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S NOMAM=0
 S NCAB=$$NCAB^W4HZMST(HZM)
 S LKHN=$$LKHN^W4HZMST(HZM)
 S DAT=$$DATK^W4HZMST(HZM)
 I $$TRH^W4HZMST(HZM) S DAT=$$TRH^W4HZMST(HZM)
 S PELE=$$PELE^W4HZMST(HZM)
 I '$D(PR) S PR="HMK" ; -- WAS HMKP ??
 I 'NCAB S PR="HZ"
 I $G(%ARG("TM")),$G(@$$^W4ORD@(HZM,"TM")) S PR="TM"
 ;
 I $$HZMH(HZM) D
 .S PR="HZMH",DAT=$$TRH^W4HZMST(HZM)
 .
 .I $$VVMSK^W4PRM D
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ...N A S A=$G(^(N))
 ...N NM,QN S NM=$P(A,"\",3),QN=$P(A,"\",5)
 ...;;I NM'["[" S NM=NM_" [ "_QN_" ]"
 ...I NM[" [ " S NM=$P(NM," [ ")
 ...S NM=NM_" [ "_QN_" ]"
 ...S $P(@$$^W4ORD@(HZM,N),"\",3)=NM
 ;
 D M^W4CAJ
 ;
 S %ARG("WDTB")=98
 I $$^W4HZMH(HZM)!$$DELIS^W4PRM,$$PICIT^W4PRM,$G(%ARG("SHOWPIC"))="" S %ARG("SHOWPIC")=1
 ;
 D KOT
 ;
 S W4PCHBP=$G(PR)
 ;
 S COMPRADD=$G(%ARG("COMPRADD"))
 ;
 I PR="HZMH" D
 .I COMPRADD="",$G(@$$^W4PRM@("COMPRADDHZMH")) S (COMPRADD,%ARG("COMPRADD"))=^("COMPRADDHZMH")
 .S DESCR=$G(%ARG("DESCR"))
 .I DESCR="",$G(@$$^W4PRM@("DESCRHZMH")) S (DESCR,%ARG("DESCR"))=^("DESCRHZMH")
 .S LMAM=$G(%ARG("LMAM"))
 .I LMAM="",$G(@$$^W4PRM@("LMAMHZMH")) S (LMAM,%ARG("LMAM"))=^("LMAMHZMH")
 .I $G(@$$^W4PRM@("NOMHHZMH")) S %ARG("NOPRC")=2 ; -- 21/11/24
 ;
 S %ARG("NOVWDEL")=1
 ;
 I $G(%ARG("LMAM"))="" S %ARG("LMAM")=+$$LMAM^W4PRM
 ;
 N BO S BO=$S(PR="HZ"!(PR="HZMH"):0,1:1)
 I $G(%ARG("FAXHTM")),$G(@$$^W4PRM@("MM")) S BO=0 ; -- SHOW COMMENTS
 ;
 D ^W4ORDVW(HZM,COMPRADD,1,BO)
 ;
 W "<div>",!
 W " <table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_"pt;width:"_$$WDTB_"%"" border=""0"">",!
  ;
  N TOT S TOT=$$TOT^W4HZMST(HZM)
  N AHMAM S AHMAM=$$AHMAM^W4HZMST(HZM)
  S TOTLMAM=$J(TOT*100/(100+AHMAM),2,2)
  ;
  I $$LMAM D  G ENDS
  .Q:$$NOPRC=1 ; -- 21/11/24 --> COMMENT
  .I $$NOMAM^W4PRM D GETNOMAM(HZM)
  .W "<tr>"
  .D DOPTD
  .W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
  .W "<td>"_$$RKV(TOTLMAM,"NIS",12)_"</td>" 
  .;;D DOPTD
  .W "</tr>",!
  .
  .D HNH
  .D DMSH
  .;
  .N MAM S MAM=(TOTLMAM+DMSH-HNH)*AHMAM*.01
  .D TOTLMAM
  .D TAX
  .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
  .D TOPAY
  ;
  ;
  I $$NOPRC'=1 D
  .D TOT
  .D HNH 
  .D DMSH
  ;
  I $$NOMH(HZM)!$$NOPRC G ENDT
  ;
  S TSHL=$$TSHL^W4HZMST(HZM)
  S SHUL=$$SHUL^W4HZMST(HZM)
  S SHULA=$$SHULA^W4HZMST(HZM)
  ;
  I $$DOP(HZM) D TOPAY
  ;
  D TIP
  ;
  S SVL=TSHL+TIP-SHULA
  ;
  N AHMAM S AHMAM=$$AHMAM^W4HZMST(HZM)
  S MAM=$J(SVL*AHMAM/(100+AHMAM),2,2)
  I $$NOMAM^W4PRM D GETNOMAM(HZM)
  ;
  S SVL=TOTLMAM+NOMAM+MAM
  D BEFORETAX
  D TAX
  ;
  I '$$DOP(HZM) D TOPAY
  ;
  I $G(NCAB) D INVCVALUE
ENDS  ;
  I $G(PR)="TM" D HR G ENDT
  ;
  I $G(SHUL) D SHUL
  I $G(SHULA) D SHULA
  ;
  D HR
  ;
  D MZM
  D HR
  ;
  D CHECKS
  ;
  D CA
  ;
  D ASR
  ;
ENDT ;
 W "</table>",!
 ;
 I $G(PR)="TM",$G(%ARG("PRINT")) D
 .N PSL S PSL=$$PSL^W4HZMST(HZM) Q:'PSL
 .W "<br><br><br>",!
 .W $$^%W1DICT("COURIER")_" : "_$$NMH2U^W4SL(PSL)
 ;
 I $$^W4HZMH(HZM)!$$DELIS^W4PRM,$L($G(@$$^W4PRM@("BIDCAUT"))) D
 .W "<br>"
 .W "<span style=""font-size:"_$$^W3FSZ(14)_""">"_$$RPL^%L1FRM($$H2U^%L1FRM($G(@$$^W4PRM@("BIDCAUT"))),"_","<BR>")_"</span>"
 ;
 W "</div>",!
 ;
 I $G(%ARG("MAIL"))!$G(%ARG("FAX")) W "</html>",!
 ;
 D DIVBUT(HZM)
 ;
END Q
 ;
 ;
RKV(VL,NIS,FSZ,WGT) ;
 S WGT=$G(WGT)
 I '$G(FSZ) S FSZ=12
 I $G(NIS)="NIS" S VL=$J(VL,2,2)_" &#8362;" ;;$$H2U^%L1FRM("g""y")
 N RKV
 S RKV="<span style=""font-size:"_$$^W3FSZ(FSZ)_";font-weight:"
 S RKV=RKV_$S($E(WGT)="B":"bold",1:"normal")
 S RKV=RKV_$S($E(WGT,2)="R":";color:red",1:"")_""" >"
 S RKV=RKV_"&nbsp;&nbsp;"_VL_"&nbsp;&nbsp;</span>"
 Q RKV
 ;
 ;
KOT ;
 D KOT^W4KOTHSB
 ;
 I $G(%ARG("MAIL"))!$G(%ARG("FAX")) W "<html>",!
 ;
 W "<div align=""center"" style="""_$$FONTFM^W3CSS_""">",!
 I $G(@$$^W4PRM@("MSDNAME"))!$D(W4BIGTM) D MSDNAME
 S %ARG("LOGODETWD")=$$WDTB
 D MYDETAILS^W4KOTHSB
 W "<br>",!
 W "<table border=""0"" width="""_$$WDTB_"%"" dir="""_$$^%W1DIR_""" >",!
 N MSD S MSD=$$GET^%W1PRM("MSD")
 I $$DEMO^W3PRM(MSD) D STDEMO^W4KOTHSB
 ;
 S NUMBER=""
 D
 .I NCAB D  Q
 ..S NUMBER=NCAB
 ..I $G(PR)="TM" S NUMBER=$$TM^W4HZMST(HZM)
 ..D DOCNMB^W4KOTHSB
 ..W "<tr><td style=""font-weight:bold"">"_$$^%W1DICT("ORDER")_" "_HZM_"</td></tr>"
 .;
 .I $$HZMH(HZM) D  Q
 ..S NUMBER=HZM
 ..D DOCNMB^W4KOTHSB
 .
 .I $G(PR)="TM" S NUMBER=$$TM^W4HZMST(HZM)
 .I $G(PR)'="TM"!'$G(NUMBER) S NUMBER=HZM,PR="HZ"
 .D DOCNMB^W4KOTHSB
 ;
 W "<tr>"
  W " <td colspan=""2"">"_$$^%W1DICT("ISSUETIME")_" "_$ZD($H,"DD.MM.YY  24:60")_"</td>"
  D
  .S ORGTIME=$$MKRTIME^W4HZMST(HZM) I ORGTIME?.P W "<td>&nbsp;</td>" Q
  .W " <td colspan=""2"">"_$$^%W1DICT("ORIGINALTIME")_" "_$ZD(ORGTIME,"DD.MM.YY  24:60")_"</td>"
 W "</tr>",!
 ;
 I $G(PR)="TM" D
 .W "<tr><td colspan=""2"" style=""font-weight:bold"">"_$$^%W1DICT("ORDER")_" "_HZM_"</td></tr>"
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 ;
 D
 .N LKH S LKH=$$LKHN^W4HZMST(HZM)
 .N NMB S NMB=$$NMB^W4HZMST(HZM)
 .D
 ..I $$HZM^W4MSL(HZM) S LKHNAME=$$NAME^W4HZMST(HZM) Q
 ..S LKHNAME=$$LKHN1^W4HZMST(HZM)
 .I LKHNAME["ogley" S LKHNAME=""
 .I LKHNAME?.P!(LKHNAME?.N) S LKHNAME=$$TOCUSNAME^W4HZMST(HZM)
 .I LKHNAME?.P Q
 .S LKHKTV=$$KTVM^W4HZMST(HZM)
 .I LKHKTV?.P S LKHKTV=$$KTVMM^W4L(LKH)
 .S LKHTZ=$$TZ^W4L(NMB)
 .S LKHTEL=$$TEL^W4L(NMB)
 .I NMB=$$NMBKSK^W4KIOSKO S LKHTEL=$$TELB^W4HZMST(HZM)
 .S LKHPELE=$$PELE^W4HZMST(HZM)
 .S LKHEMAIL=$$EMAIL^W4HZMST(HZM)
 .S LKHFAX=$$FAX^W4HZMST(HZM)
 .I LKHPELE?.P S LKHPELE=$$PELE^W4L(NMB)
 .;
 .D LKHDET^W4KOTHSB(HZM)
 ;
 W "</table>",!
 Q
 ;
 ;
NOPRC(STAM) ;
 Q $G(%ARG("NOPRC"))
 ;
NOMH(HZM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM) I 'NMB Q 0
 I $G(PR)="TM",$G(HZM)>0,$$TMBLIMH^W4L(NMB) Q 1
 Q 0
 ;
 ;
TOT ;
 I $$NOMH(HZM) Q
 ;
 N TOT S TOT=$$TOT^W4HZMST(HZM)
 N AHMAM S AHMAM=$$AHMAM^W4HZMST(HZM)
 N TOTLMAM S TOTLMAM=$J(TOT*100/(100+AHMAM),2,2)
 N NOMAM S NOMAM=0
 I $$NOMAM^W4PRM D GETNOMAM(HZM)
 ;
 N TOT1 S TOT1=$S($G(%ARG("LMAM")):TOTLMAM+NOMAM,1:TOT)
 ;
 I '$G(%ARG("LMAM")),$$DOP(HZM) D
 .W "<tr>"
 .D DOPTD W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
 .W "<td>"_$$RKV(TOT1,"NIS",12)_"</td>" ; -- BLI "B"
 .;; D DOPTD
 .W "</tr>",!
 ;
 I $G(%ARG("LMAM")),$$DOP(HZM) D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
 .W "<td>"_$$RKV(TOT1,"NIS",12)_"</td>" ; -- BLI "B"
 .;;D DOPTD
 .W "</tr>",!
 . 
 .I $$NOMAM^W4PRM,NOMAM D
 ..W "<tr>"
 ..D DOPTD
 ..W "<td>"_$$^%W1DICT("NOMAM")_"</td>"
 ..W "<td>"_$$RKV($J(NOMAM,2,2),"NIS",12)_"</td>" ; -- BLI "B"
 ..W "</tr>",!
 .
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("TAX",AHMAM_"%")_"</td>"
 .W "<td>"_$$RKV($J(TOTLMAM*AHMAM/100,2,2),"NIS",12)_"</td>" ; -- BLI "B"
  .;;D DOPTD
 .W "</tr>",!
 .
 .W "<tr>"
 .D DOPTD
 .W " <td>"_$$^%W1DICT("AFTERTAX")_"</td>"
 .W " <td>"_$$RKV($J(TOT,2,2),"NIS",12)_"</td>" ; -- BLI "B"
 .;; D DOPTD
 .W "</tr>",!
 Q
 ;
DOP(HZM) ;
 I $$HNH^W4HZMST(HZM)!$$DMSH^W4HZMST(HZM) Q 1
 Q 0
 ;
HNH ;
 S HNH=$$HNH^W4HZMST(HZM)
 I $$LMAM S HNH=$J(HNH*100/(100+AHMAM),2,2)
 I HNH D
 .W "<tr>"
 .D DOPTD 
 .W "<td>"_$$^%W1DICT("DISC")_"</td>"
 .W "<td>"_$$RKV(HNH,"NIS",12,"BR")_"</td>"
 .;;D DOPTD
 .W "</tr>",!
 Q
 ;
DMSH ;
 S DMSH=$$DMSH^W4HZMST(HZM)
 I $$LMAM S DMSH=$J(DMSH*100/(100+AHMAM),2,2)
 I DMSH D
 .N WORD S WORD="SRVFEES"
 .I $$HZM^W4MSL(HZM) S WORD="DLVPAY"
 .W "<tr>"
 .D DOPTD 
 .W "<td>"_$$^%W1DICT(WORD)_"</td>"
 .W "<td>"_$$RKV(DMSH,"NIS",12,"B")_"</td>"
 .;;D DOPTD
 .W "</tr>",!
 Q
 ;
TOPAY ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("TOPAY")_"</td>"
 W "<td>"_$$RKV(TSHL,"NIS",16,"B")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
TIP ;
 S TIP=$$TIP^W4HZMST(HZM)
 I TIP D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("TIP")_"</td>"
 .W "<td>"_$$RKV(TIP,"NIS",12,"B")_"</td>"
 .;;D DOPTD
 .W "</tr>",!
 Q
 ;
INVCVALUE ;
 I '$$^W4TIPPD S SVL=SVL-TIP
 W "<tr>"
 D DOPTD ; !!
 W "<td>"_$$^%W1DICT("INVOICEVALUE")_"</td>"
 W "<td>"_$$RKV(SVL,"NIS",14,"B")_"</td>"
 W "</tr>"
 Q
 ;
BEFORETAX ;
 I $$NOMAM^W4PRM,NOMAM D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("NOMAM")_"</td>"
 .W "<td>"_$$RKV($J(NOMAM,2,2),"NIS",12)_"</td>" ; -- BLI "B"
 .W "</tr>",!
 ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("BEFORETAX")_"</td>"
 W "<td>"_$$RKV(SVL-MAM-NOMAM,"NIS",12,"N")_"</td>"
 W "</tr>",!
 Q
 ;
 ;
TOTLMAM ;
 I 'DMSH,'HNH Q
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("TOTLMAM")_"</td>"
 W "<td>"_$$RKV(TOTLMAM+DMSH-HNH,"NIS",12,"N")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
TAX ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("TAX",AHMAM_"%")_"</td>"
 W "<td>"_$$RKV(MAM,"NIS",12,"N")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
SHUL ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("PAID")_"</td>"
 W "<td>"_$$RKV(SHUL,"NIS",12,"B")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
SHULA ;
 W "<tr>"
 D DOPTD
 W "<td>"_$$^%W1DICT("PAIDCREDIT")_"</td>"
 W "<td>"_$$RKV(SHULA,"NIS",12,"B")_"</td>"
 ;;D DOPTD
 W "</tr>",!
 Q
 ;
MZM ;
 S MZM=$$MZM^W4HZMST(HZM)
 I MZM D
 .W "<tr>"
 .D DOPTD
 .W "<td>"_$$^%W1DICT("PAIDCASH")_"</td>"
 .W "<td>"_$$RKV(MZM,"NIS",12,"B")_"</td>"
 .;;D DOPTD
 .W "</tr",!
 Q
 ;
CHECKS ;
 Q:$G(HZM)=""
 N N,A
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","CH",N)) Q:N=""  D
 .S A=$G(^(N))
 .D ^W4GTVCH(A,"CH")
 .;
 .W "<tr>"
 .D DOPTD1 ; !!
 .W " <td>"_$$^%W1DICT("PAIDCHECK")_"</td>"
 .W " <td>"_$$RKV(CHS,"NIS",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("BANK")_$$SPACE
 .W $$RKV($E(BSN,1,2),"",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("SNIF")_$$SPACE
 .W $$RKV($E(BSN,3,5),"",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("ACCOUNT")_$$SPACE
 .W $$RKV(HESH,"",12,"B")_"</td>",!
 .W "</tr>",!
 .
 .W "<tr>",!
 .D DOPTD1 ; !!
 .W " <td colspan=""2"">&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("CHECKNUMBER")_$$SPACE
 .W $$RKV(NCHECK,"",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("PRAON")_$$SPACE
 .W $$RKV($$^%L1DC(DATP,"."),"",12,"B")_"</td>",!
 .W "</tr>",!
 .D HR
 Q
 ;
CA ;
 N N,A
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D
 .S A=$G(^(N))
 .D ^W4GTVCH(A,"V")
 .D CAPAY
 .D HR
 Q
 ;
ASR ;
 I $G(LKHN) N LKHN
 N A,N
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S A=$G(^(N))
 .D ^W4GTVCH(A,"ASR")
 .W "<tr>"
 .D DOPTD1
 .I 'LKAH W "<td>&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("PAIDCREDIT")_"</td>"
 .W " <td>"_$$RKV(ASR,"NIS",12,"B")_"</td>",!
 .W " <td colspan=""2"">"_$$^%W1DICT("CLIENT")_$$SPACE
 .W $$RKV(LKHN_" "_$$H2U^%L1FRM(LKHN1),"",12,"B")_"</td>",!
 .D
 ..I 'LKAH Q  ;;W "<td>&nbsp;</td><td>&nbsp;</td>" Q
 ..W " <td>"_$$^%W1DICT("ASRL")_$$SPACE
 ..W $$RKV($J(ASR+LKHNH,2,2),"",12,"B")_"</td>",!
 .W "</tr>",!
 .
 .W "<tr>"
 .D DOPTD1
 .W " <td colspan=""2"">&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("DISCPERCENT")_"&nbsp;&nbsp;"
 .W $$RKV(LKAH,"",12,"B")_"</td>",!
 .W "<td>"_$$^%W1DICT("DISCASR")_"&nbsp;&nbsp;"
 .W $$RKV(LKHNH,"NIS",12,"B")_"</td>",!
 .W " <td>"_$$^%W1DICT("AUTHNO")_"&nbsp;&nbsp;"
 .W $$RKV($$H2U^%L1FRM(HZMLK),"",12,"B")_"</td>",!
 .W "</tr>",!
 .D HR
 Q
 ;
 ;
DIVBUT(NUMBER) ;
 I $$SHOW Q
 I $$VVMSK^W4PRM G BUTTONS
 ;
 W "<br>",!
 W "<br>",!
 ;
 W "<div id=""divbut"" align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table id=""TblDets"" width="""_$$WDTB_"%"" "
   W "dir="""_$$^%W1DIR_""" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   D
   .W "<td>"
   . W $$^%W1DICT("PRICESWITHTAX")_"&nbsp;"
   . W "<input type=""radio"" name=""pricetax"" "
   . W " onClick=""PriceTax('0')"" "
   . I '$G(%ARG("LMAM")) D
   . .W "checked=""checked"" "
   . W " >",!
   .W "</td>"
   .
   .W "<td>"
   . W $$^%W1DICT("PRICESWITHOUTTAX")_"&nbsp;"
   . W "<input type=""radio"" name=""pricetax"" "
   . W " onClick=""PriceTax('1')"" "
   . I $G(%ARG("LMAM")) D
   . .W "checked=""checked"" "
   . W " >",!
   .W "</td>"
   .
   .W "<td width=""15%"">"
   . W $$^%W1DICT("ITEMSDESCR")_"&nbsp;"
   . W "<input type=""checkbox"" id=""descr"" "
   . W " onClick=""ItemsDescr()"" "
   . I $G(%ARG("DESCR")) D
   .. W " checked=""checked"" "
   . W ">"
   .W "</td>"
 ;
   W "<td>"
    W $$^%W1DICT("DETAILSHOW")_"&nbsp;"
    W "<input type=""radio"" name=""kindshow"" "
    W " onClick=""Show('0')"" "
    I '$G(%ARG("COMPRADD")) D
    .W "checked=""checked"" "
    W " >",!
   W "</td>"
 ;
   W "<td>"
    W $$^%W1DICT("CONCSHOW")_"&nbsp;"
    W "<input type=""radio"" name=""kindshow"" "
     I $G(%ARG("COMPRADD")) D
     .W "checked=""checked"" "
    W " onClick=""Show('1')"" "
    W " >",!
   W "</td>"
   ;
   W "<td width=""15%"">"
    W $$^%W1DICT("NOITCOMMENTS")_"&nbsp;"
    W "<input type=""checkbox"" id=""nocmnt"" "
    W " onClick=""NoComments()"" "
    I $G(%ARG("NOCMNT")) D
    .W " checked=""checked"" "
   W ">"
  W "</td>"
 W "</tr>",!
 ;
 D DOPPRM
 W "</table>",!
 ;
 W "<br>",!
 ;
 I $G(LKHN)="" S LKHN="0000000000"
 ;
 I '$G(%ARG("SEND2MAIL")) D
 .N EM S EM=$G(LKHEMAIL)
 .I EM["@",EM[".",$G(LKHN)'="" S @$$^W4GL("LKH")@(LKHN,"E",EM)=$H_"\"_HZM
 .D EMAIL(LKHN,HZM,PR,$$WDTB)
 ;
BUTTONS ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTB_"%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D BUT("Print",$$^%W1DICT("PRINT2BIG"),"PrintAndBack()","text-align:center;color:green",",,,100")
   W "</td>"
   ;
   I $$CSRPRINT,'$$^W4HZMH(HZM) D
    .I $$^W4CLOSE(HZM) D
    ..W "<td>&nbsp;</td>",!
    ..W "<td>"
    ..  D BUT("CSRPrintInvc",$$^%W1DICT("CSRPRINTINVC"),"CSRPrintInvc('"_HZM_"')","text-align:center;color:green",",,,120")
    ..W "</td>"
    .
   ;
   I $$^W4HZMH(NUMBER),$G(%ARG("EDIT")) D
   .W "<td>"
   .  D BUT("Back2Order",$$^%W1DICT("CHANGEORDER"),"ChangeOrder()","text-align:center;color:brown",",,,100")
   .W "</td>"
   .
   .I $$ISCR^W4L(LKHN) D
   ..W "<td>"
   ..  D BUT("SubmitCred",$$^%W1DICT("SUBMITCREDIT"),"SubmitCredit('"_HZM_"')","text-align:center;color:green",",,,120")
   ..W "</td>"
   ;
   I '$G(%ARG("NOBACK")) D
   .W "<td>&nbsp;</td>"
   .W "<td>"
   .  D BUT("Back",$$^%W1DICT("EXIT"),"Back()","text-align:center;color:red",",,,100")
   .W "</td>"
   ; 
  W "</tr>",!
  ;
  I $$TM^W4HZMST(HZM) D
  .W "<tr><td>&nbsp;</td></tr>",!
  .W "<tr>"
  . W "<td>"
  .  D BUT("PrintDlv",$$^%W1DICT("PCBIGTM"),"PrintDlv('"_HZM_"')","text-align:center;color:green",",,,120")
  . W "</td>"
  . W "<td>&nbsp;</td>",!
  .
  . W "<td>"
  .  D BUT("CSRPrintDlv",$$^%W1DICT("CSRPRINTDLV"),"CSRPrintDlv('"_HZM_"')","text-align:center;color:green",",,,120")
  . W "</td>"
  .W "</tr>",!
  W "</table>",!
  ;
 Q
 ;
 ;
BUT(ID,VL,FNC,STYLE,DOP)
 ;D ROUNDBUT^%W1JS(ID,VL,FNC,STYLE,DOP)
 W "<input type=""button"" class=""btn"" value="""_VL_""" id="""_ID_""" style="""_STYLE_""" onClick="""_FNC_""" />",!
 Q
 ;
CSRPRINT(STAM) ;
 D ^W4MDPPC
 I $D(W4BONVW),$$MDPMSL^W4PRM>1 S PRINT=$$MDPMSL^W4PRM
 I $G(PRINT) Q 1
 Q 0
 ;
CAPAY ;
  W "<tr>",!
   D DOPTD1 ; !!
   W " <td>",!
    W $$^%W1DICT("PAIDCRCARD")
   W " </td>"
   W " <td>"
    W $$RKV(CAV,"NIS",12,"B")
   W " </td>",!
   ;
   W " <td colspan=""2"">",!
    W $$^%W1DICT("CRCARDNUMBER")_$$SPACE
    N CANMB S CANMB=$E(NCA,$L(NCA)-3,$L(NCA))
    W $$RKV(CANMB_" ...","",12,"B")
   W " </td>",!
   ;
   W " <td>",!
    W $$^%W1DICT("SOLEK")_$$SPACE
    N SOLEK S SOLEK=$G(M($E(VTS,3)))
    W $$RKV($$H2U^%L1FRM(SOLEK),"",12,"B")
   W " </td>",!
   W "</tr>",!
   ;
   ;
   W "<tr>"
   D DOPTD1 ; !!
   ;;W " <td colspan=""2"">&nbsp;</td>"
   W " <td>",!
    W $$^%W1DICT("NOMISKA")_$$SPACE
    W $$RKV(NISKA,"",12,"B")
   W " </td>",!
   ;
   W " <td>"
    ;;W $$^%W1DICT("SUGISKA")_$$SPACE
    W $$RKV($$SUGI1^W4LCBCR(SUG21),"",12,"B")
   W " </td>",!
   ;
   W " <td>"
    W $$^%W1DICT("SUGASR")_$$SPACE
    W $$RKV($$SUGA1^W4LCBCR(SUG1),"",12,"B")
   W " </td>",!
  W "</tr>",!
   ;
  I PN D
  .W "<tr>"
  .D DOPTD1 ; !!
  .;;W " <td colspan=""2"">&nbsp;</td>"
  .W " <td colspan=""2"">"_$$^%W1DICT("QNPAY")_$$NBSP^%L1FRM(5)_$$RKV(PN,"",12,"B")_"</td>",!
  .W " <td colspan=""2"">"_$$^%W1DICT("FIRSTPAY")_$$NBSP^%L1FRM(5)_$$RKV(P1*.01,"NIS",12,"B")_"</td>",!
  .W " <td colspan=""2"">"_$$^%W1DICT("NEXTPAY")_$$NBSP^%L1FRM(5)_$$RKV(PC*.01,"NIS",12,"B")_"</td>",!
  .W "</tr>",!
 Q
 ;
SPACE(QNSP)
 I '$G(QNSP) S QNSP=1
 N SP,J S SP=""
 F J=1:1:QNSP S SP=SP_"&nbsp;"
 Q SP
 ;
HR ;
 W "<tr><td colspan=""9""><hr></td></tr>",! ; ** WAS 6
 Q
 ;
DOPTD ;
 W "<td width=""60%"" colspan=""7"" >&nbsp;</td>"
 Q
 ;
DOPTD1 ;
 W "<td width=""20%"" colspan=""3"" >&nbsp;</td>"
 Q
 ;
HZMH(HZM) ;
 I +$G(%ARG("HZMH")) Q 1
 I $$^W4HZMH(HZM) Q 1
 Q 0
 ;
EMAIL(LKHN,NUMBER,PR,WD) ;
 D ^W4EMAIL(LKHN,NUMBER,$G(PR),$G(WD)) ;
 Q
 ;
 ;
EMAILCONT(PRM) ; 
 N (JB,%ARG,PRM) D ^%L1TS
 S TMPORD=$$^W4TMPORD 
 ;
 S ORD=$P(PRM,";")
 S HDMAIL=$P(PRM,";",2)
 S EMAIL=$P(PRM,";",3)
 I EMAIL="",ORD>0 D
 .S LKH=$$NMB^W4HZMST(ORD)
 .S EMAIL=$$EMAIL^W4L(LKH)
 ;
 S EMAIL=$$CLA^%L1FRM(EMAIL)
 S $P(PRM,";",3)=EMAIL
 S ^AA(JB,"W4PCHBP-EMAILCONT","PRM")=PRM
 S ^AA(JB,"W4PCHBP-EMAILCONT","EMAIL")=EMAIL
 ;
 S ISHUR=$P(PRM,";",4)
 I ISHUR["^" S ISHUR=$P(ISHUR,"^",2)
 S DET='$P(PRM,";",5)
 S LMAM=$P(PRM,";",6)
 S HOWSEND=$P(PRM,";",7)
 I 'HOWSEND S HOWSEND=3
 S DOCS=$P(PRM,";",8)
 ;
 S %ARG("DESCR")=$P(PRM,";",9)
 S %ARG("SHOWPIC")=$P(PRM,";",10)
 S %ARG("NOCMNT")=$P(PRM,";",11)
 S %ARG("NOCD")=$P(PRM,";",12)
 S %ARG("NOPRC")=$P(PRM,";",13)
 S %ARG("LMAM")=LMAM
 S %ARG("MAIL")=1
 S %ARG("WHATSAPP")=$P(PRM,";",14)
 ;
 S COMMENT=$P(PRM,";",15,1000)
 ;
 I $G(%ARG("WHATSAPP"))="",$G(ISHUR)?1N,$G(@$$^W4PRM@("BIDISHWH")) D
 .S %ARG("WHATSAPP")=$$PELE^W4HZMST(ORD)
 ;
 I $G(%ARG("WHATSAPP"))="",EMAIL'["@" Q "EMAILWRONG"
 ;
 S RES=$$^W4GETHZ(ORD) I RES<0 Q RES
 ;
 I $G(EMAIL)'="" D
 .S @$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)=$H_";"_$P(PRM,";",2,1000)
 ;
 I $$PWRLNK^W4PRM,$$^W4HZMH(ORD),'$$DEL^W4DEL(ORD) J SNDBID^W4PWRLNK(JB,ORD)
 ;
 D PRM^W4MAIL ; --> FROM,SMRP,USER,PSW
 ;
 N WEB S WEB=$$WEB^W3MAIN
 I WEB["//" S WEB=$P(WEB,"//",2,20)
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 S LINK=WEB_"w4pchbp.jsp?JB="_JB_"&ORD="_ORD_"&RCV=1"
 ;
 N DV S DV=$$^W4MYDVN
 S FILE="/tmp/sndmail"_DV_"_"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  I LMAM S %ARG("LMAM")=1
  D ECONT(ORD,ISHUR,DET)
 C FILE
 ;
 D PROCFILE^W4EMAIL(FILE,COMMENT,HOWSEND)
 S FILE1=$G(FILE1)
 I $ZSY D MAILRES^W4EMAIL(ORD,EMAIL) Q $ZSY
 ;
 I $G(%ARG("WHATSAPP"))'="" D  I $G(ISHUR)'?1N Q $ZSY
 .N PELE S PELE=$G(%ARG("WHATSAPP"))
 .D SNDWHATSAPP($G(HDMAIL),FILE1,PELE)
 ;
 J SEND^W4EMAIL(JB,PRM,SMTP,USER,PSW,FROM,FILE1,FILEC)
 Q $ZSY
 ;
 ;
ECONT(HZM,ISHUR,DET) ;
 N TXT
 S TXT=$$HRA^W4HZMST(HZM)
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 ;
 I ISHUR=2 D  G ENDECONT
 .I $$^%W1LNG="H" D
 ..W $$CMNT("dpken jly dpnfdd ")
 ..I $$SF^W4PRM D
 ...W $$CMNT("ixehwt 'uieecpqn seq`l `p")
 ...W $$CMNT("dilvxd 16 xwpy dix`")
 ;
 I ISHUR=1 D
 .I $$^%W1LNG="H" D
 ..W $$CMNT("! dxye` mkly dpnfd ")
 ..I $$SF^W4PRM W $$CMNT("! ixehwt 'uieecpqn dax dcez")
 ;
 I ISHUR=0 D
 .I $$^%W1LNG="H" D
 ..W $$CMNT("! dlhea dpnfd ")
 ;
 D ORDCONTENT(HZM)
ENDECONT W "</div>",!
 Q
 ;
 ;
CMNT(TXT) ;
 N ST
 S ST="<br><span style=""color:red;font-size:"_$$^W3FSZ(18)_";font-weight:bold"">"
 S ST=ST_$$H2U^%L1FRM(TXT)_"</span>"
 Q ST
 ;
ORDCONTENT(HZM)
 N (JB,%ARG,%REM,HZM,DET)
 S %ARG("MAIL")=1
 I $$^W4HZMH(HZM) S %ARG("HZMH")=1
 S %ARG("COMPRADD")='$G(DET)
 ;
 S MKR=1
 I $G(@$$^W4ORD@(HZM,"MKRSND")) S MKR=0
 D W4PCHBP(HZM,MKR)
 S @$$^W4ORD@(HZM,"MKRSND")=$H
 Q
 ;
WDTB(STAM) 
 Q $G(%ARG("WDTB"),98)
 ;
MSDNAME ;
 D ^W4MSDNAM
 Q
 ;
LMAM(STAM) ; 
 N LMAM S LMAM=$G(%ARG("LMAM"))
 I $G(PR)="HZMH",LMAM="",$G(@$$^W4PRM@("LMAMHZMH")) S LMAM=^("LMAMHZMH")
 I LMAM="" S LMAM=$$LMAM^W4PRM
 Q LMAM 
 ;
SHOW(STAM) ;
 I $G(%ARG("PRINT"))!$G(%ARG("MAIL"))!$G(%ARG("FAX")) Q 1
 Q 0 
 ;
DOPPRM ;
 W "<tr>"
 W "<td>"
  W $$^%W1DICT("SHOWITCODES")_"&nbsp;"
  W "<input type=""radio"" name=""showcodes"" "
  W " onClick=""ShowCodes('0')"" "
  I '$G(%ARG("NOCD")) D
  .W "checked=""checked"" "
  W " >",!
 W "</td>"
 ;
 W "<td>"
  W $$^%W1DICT("NOSHOWITCODES")_"&nbsp;"
  W "<input type=""radio"" name=""showcodes"" "
  W " onClick=""ShowCodes('1')"" "
  I $G(%ARG("NOCD")) D
  .W "checked=""checked"" "
  W " >",!
 W "</td>"
 ;
 I $$NOVWPRC^W4PRM D
 .W "<td>"
 . W $$^%W1DICT("SHOWPRICES")_"&nbsp;"
 . W "<input type=""radio"" name=""showprices"" "
 . W " onClick=""ShowPrices('0')"" "
 . I '$G(%ARG("NOPRC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 .
 .W "<td>"
 . W $$^%W1DICT("NOSHOWPRICES")_"&nbsp;"
 . W "<input type=""radio"" name=""showprices"" "
 . W " onClick=""ShowPrices('1')"" "
 . I $G(%ARG("NOPRC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 ;
 I $$VWPICHM^W4PRM D
 .W "<td>"
 . W $$^%W1DICT("SHOWPICTURES")_"&nbsp;"
 . W "<input type=""radio"" name=""showpic"" "
 . W " onClick=""ShowPic('1')"" "
 . I $G(%ARG("SHOWPIC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 .
 .W "<td>"
 . W $$^%W1DICT("NOSHOWPICTURES")_"&nbsp;"
 . W "<input type=""radio"" name=""showpic"" "
 . W " onClick=""ShowPic('0')"" "
 . I '$G(%ARG("SHOWPIC")) D
 . .W "checked=""checked"" "
 . W " >",!
 .W "</td>"
 W "</tr>",!
 Q
 ;
PUTCOMM(PRM) ;
 N DT,TIME,HZM
 S DT=$P(PRM,";") 
 S TIME=$P(PRM,";",2) 
 S TIME=$$DOP^%L1FRM($P(TIME,":"))_":"_$$DOP^%L1FRM($P(TIME,":",2))
 S HZM=$$GETP^%W1PRM("HZM")
 I HZM<1 Q "ORDERNOTDEFINED"
 S @$$^W4ORD@(HZM,"WHENCOMM")=$ZD(DT,"DD.MM.YY")_" "_TIME
 I 'DT K @$$^W4ORD@(HZM,"WHENCOMM")
 N MIN S MIN=TIME*60+$P(TIME,":",2)
 N ZMAN S ZMAN=DT_","_MIN
 S @$$^W4GL("W4WHEN")@(HZM)=ZMAN
 D PUT^%W1PRM("SAVEORD",HZM)
 ;
 N D,M
 S D="" F  S D=$O(@$$^W4GL("W4WHENI")@(D)) Q:D=""  D
 .S M="" F  S M=$O(@$$^W4GL("W4WHENI")@(D,M)) Q:M=""  D
 ..K @$$^W4GL("W4WHENI")@(D,M,HZM)
 ;
 I DT S @$$^W4GL("W4WHENI")@(DT,MIN,HZM)=""
 Q 1 
 ;
 ; 
ACNTDOWN ; 
 N (JB,%ARG,%REM)
 I '$G(%ARG("PRINT")),'$G(%ARG("MAIL")) Q
 S TOP=1240
 I $G(%ARG("MAIL")),$$SGNPDF^W4PRM S TOP=1070
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""position:absolute;top:"_TOP_"px;width:850px;left:50px"">",!
  S ST=$G(@$$^W4GL("W4ACNT")@(1))
  D PRS^%L1FRM(ST,"BANK\BANKNAME\SNIF\ACCOUNT","\")
  S TZ=$G(@$$^W4PL@("ESEK",4))
  W "<hr>",!
  W "<table>",!
    W "<tr>"
     W "<td width=""3%"">&nbsp;</td>"
     W "<td width=""15%"">"
       W $$^%W1DICT("BANK")_" : "_BANK   
     W "</td>"
     ;
     W "<td width=""20%"" >"
       W $$^%W1DICT("BANKNAME")_" : "_$$H2U^%L1FRM(BANKNAME)
     W "</td>"
     ;
     W "<td width=""15%"">"
       W $$^%W1DICT("SNIF")_" : "_SNIF   
     W "</td>"
     ;
     W "<td width=""20%"">"
       W $$^%W1DICT("TZ")_" : "_TZ
     W "</td>"
     ;
     W "<td width=""15%"">"
       W $$^%W1DICT("ACCOUNT")_" : "_ACCOUNT
     W "</td>"
    W "</tr>",!
  W "</table>",!
  W "<hr>",!
 W "</div>"
 Q
 ;
 ;
SNDWHATSAPP(HD,FILE1,PELE) 
 N (JB,%ARG,%REM,HD,FILE1,PELE)
 S PELE=$TR(PELE,"-","")
 I $E(PELE,1,4)'="+972" D
 .S PELE="+972"_$S($E(PELE)="0":$E(PELE,2,20),1:PELE)
 ;
 S PATH=$$WEBL^W3MAIN_"tmp/" ; *** WAS WEBL
 S PATH2=$$WEB^W3MAIN(1)_"tmp/"
 ;
 S URL1="https://api.wassenger.com/v1/messages"
 S URL2=PATH2
 S TOKEN="dcff444024e87b6010f4baa5f20498fbe15a6f9ec2e8c2d08d5b16045db5a79fac3d4ecbd77e241e" 
 ;
 S FLNM=FILE1
 I FLNM["/" S FLNM=$P(FLNM,"/",$L(FLNM,"/"))
 ;
 S DZ=$$^W4DZ,DV=$$^W4MYDVN
 S FL2NM="whatsapp"_DZ_"-"_DV_"-"_$G(JB)_"-"_$P($H,",",2)
 ;
 S FL=PATH_FL2NM
 S FILE2=FL_".pdf"
 ZSY "cp "_FILE1_" "_FILE2 ; -- WAS mv - 18.12.24
 ;
 S FLOU=FL_".ou"
 ;
 C FL:(DELETE)
 O FL:(NEWVERSION:REWIND:WRITE)
 U FL
 W "{",!
  W """phone"":"""_PELE_""",",!
  W """media"":{",!
  W """message"":""From Delis - "_HD_""",",! 
  W """url"":"""_URL2_FL2NM_".pdf"",",!
  W """expiration"":""30d""",!
  W "}",!
 W "}",!
 C FL
 ;
 N DZ S DZ=$$^W4DZ
 N IND S IND=$O(^W4PWRCMD(DZ,99999999),-1)+1
 ;
 O FL:(REWIND:READONLY) U FL
 N A,I S I=0
 F  R A Q:$ZEOF  D 
 .S I=I+1
 .S ^[$$^W3MAIN]W4PWRCMD(DZ,IND,"CONT",I)=A
 C FL
 ;
 S CMD="curl --request POST"
 S CMD=CMD_" --url '"_URL1_"'"
 S CMD=CMD_" --header 'Content-Type:application/json'"
 S CMD=CMD_" --header 'Token:"_TOKEN_"'"
 S CMD=CMD_" --data @"_FL
 S CMD=CMD_" > "_FLOU
 ZSY CMD
 ;
 D PROT^W4PWRLNK(CMD)
 ;
 S IND=$O(^W4PWRCMD(DZ,99999999),-1)+1
 Q:'$$EXIST^%L1ZOS(FLOU)
 O FLOU:(REWIND:READONLY) U FLOU
 N A,I S I=0
 F  R A Q:$ZEOF  D 
 .S I=I+1
 .S ^[$$^W3MAIN]W4PWRCMD(DZ,IND,"RESP",I)=A
 C FLOU
 ;
 Q 
 ;
GETNOMAM(HZM) ;
 N (JB,%ARG,HZM,MAM,TOTLMAM,NOMAM)
 I '$$NOMAM^W4PRM Q
 N SHUL S SHUL=$$SHUL^W4HZMST(HZM)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 S TOMAM=$S(SHUL>TSHL:TSHL+$S($$^W4TIPPD($$DTK(HZM)):$G(TIP),1:""),1:SHUL)
 N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 N AHMAM S AHMAM=$$MAMD^W4L(DT)
 ;
 S MAM=$J(TOMAM*AHMAM/(100+AHMAM),2,2)
 ;
 D SMAM^W4DMAM(DT,HZM)
 N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM"))
 S TOTLMAM=TOMAM-MAM
 I KMAM<1 D
 .S NOMAM=TOMAM-(TOMAM*KMAM)
 .S MAM=MAM*KMAM
 .S TOTLMAM=TOMAM*KMAM-MAM;;+NOMAM
 Q
 ;
 ;
DTK(HZM) ;
 Q $$^%L1DC($$DATK^W4HZMST(HZM),3)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCHMK
W4PCHMK(PRM) ; [ 05.12.24 20:03 ] [ 28.01.24 11:38 ] [ 14.06.23 14:39 ] 
 N (JB,%ARG,%REM,PRM)
 N MKRYD S MKRYD=$$GET^%W1PRM("MKRYD")
 D PUT^%W3DEB("W4PCHMK","PRM=PRM & MKRYD=MKRYD")
 S NUMBER=$P(PRM,";")
 S SM=0
 ;
 I $P(PRM,";",2)="",NUMBER,NUMBER'?1N.N D
 .N VD S VD=$TR(NUMBER,"0123456789","")
 .I VD="T" S VD="TM"
 .I VD="Z" S VD="TZ"
 .S $P(PRM,";",2)=VD
 ;
 S NUMBER=+NUMBER
 ;
 S VD=$$VD
 S CODDOC=$$CODDOC^W4KOTHSB(VD)
 D PUT^%W3DEB("W4PCHMK","CODDOC=CODDOC")
 S DOPNOM=$$DOPNOM(CODDOC)
 S NMB=+NUMBER_DOPNOM
 S WHO=$P(PRM,";",3)
 I WHO="" S WHO=$$GETLKH^W4DOC
 I $$HMK(CODDOC,NUMBER)=1 Q $$^W4PCHMKY(PRM)  ;--- HMK YAD
 ;
 S MAKOR=(+NUMBER=+MKRYD)
 ;
 S NOM=$$NOM(NMB)
 ;
 I 'NOM Q "DOCNOTEXIST"
 ;
 D ^W4MDPPC I '$G(PRINT) Q "PRINTERNOTDEFINED"
 ;
 ; ---------------------- PECH KOT ------------
 D PUT^%W3DEB("W4PCHMK","PRINT=PRINT&NUMBER=NUMBER&NMB=NMB&NOM=NOM")
 D KAV
 K @$$^W4MAIN("TMPS111")
 S OK=$$HD(+NUMBER_";"_CODDOC_";"_MAKOR_";"_WHO) I OK'=1 Q OK
 K @$$^W4MAIN("S222")
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN("TMPS111")@(I))  D
 .S A=$G(^(I))
 .S @$$^W4MAIN("S222")@(I)=$E(A,41,255)
 ;
 K @$$^W4MAIN("TMPS111")
 M @$$^W4MAIN("TMPS111")=@$$^W4MAIN("S222")
 K @$$^W4MAIN("S222")
 D ST^W4HZTH
 ;
 S GL=$$^W4GL("W4DOC")
 S PRMAM=$$PRMAM^W4DOC(NOM)
 ;
 D KAV
 S TXT=":  mekq :         xe`z       :   cew  :" D W
 D KAV
 ;
 D PCHMK
 D KAV
 ;
 D FOOT(NMB)
 ;
 I CODDOC="HMK" D
 .D PAYM(CODDOC,NUMBER)
 .I $G(@$$GLCBV^W4LCBCR(+NUMBER_$$DOPNOM(CODDOC)))="" D CUT
 ;
 I CODDOC'="HMK" D CUT
 ;
 D KILL^%W1PRM("MKRYD")
 D PTH
 Q "OK"
 ;
 ;
HD(PRM) ;
 Q $$^W4HDHMK(PRM)
 ;
FOOT(NMB) ;
 S NOM=$$NOM(NMB)
 I $L($G(VD)) S %ARG("DOC")=VD
 ;
 D TOT^W4DOC(NOM)
FOOT1 ;
 N TXT
 D NIS
 ;
 S TXT=NIS_$J(SAH,7,2)_$S(PRMAM:" : k""dq",1:" : n""rn iptl k""dq") D W
 I 'PRMAM D
 .S SAHM=SAH*(100+AHMAM)*.01
 .S TXT=NIS_$J(SAHM,7,2)_" : n""rn llek k""dq" D W
 I DISCA!DISCPRC S TXT=NIS_$J(DISCA,7,2)_" : "_DISCPRC_"% dgpd" D W
 I DISCNIS S TXT=NIS_$J(DISCNIS,7,2)_" : g""y dgpd" D W
 I DMSH S TXT=NIS_$J(DMSH,7,2)_" : gelyn inc" D W
 I PRMAM,LMAM S TXT=NIS_$J(LMAM,7,2)_" : n""rn iptl" D W
 I MAM S TXT=NIS_$J(MAM,7,2)_" : n""rn" D W
 I IGUL S TXT=NIS_$J(IGUL,7,2)_" : lebir" D W
 S TXT=NIS_"<B>"_$J(SHUM,7,2)_"<N> : melyzl" D W
 ;
 N CMNT S CMNT=$$SPA^%L1FRM($$HRA^W4DOC(NOM))
 I CMNT'?.P D
 .D KAV
 .S TXT=$C(10) D W
 .D DLG^%L1FRM(CMNT,$$WD)
 .N I F I=1:1 Q:'$D(%CHAST(1,I))  S TXT=%CHAST(1,I) D W
 .S TXT=$C(10) D W
 .D KAV
 Q
 ;
KAV ;
 S TXT=$TR($J("",$$WD)," ","-") D W
 Q
 ;
W S SM=+$G(SM) D S1^W4HZTH
 Q
W1 S SM=+$G(SM) D S12^W4HZTH
 Q
 ;
PCHMK ;
 N I S SAH=0
 F I=1:1 Q:'$D(@GL@(NOM,I))  D
 .S ST=$G(^(I))
 .S CD=$$CODE^W4DOC(NOM,I)
 .S NM=$$NAME^W4DOC(NOM,I)
 .S PRC=$$PRC^W4DOC(NOM,I)
 .S QN=$$QN^W4DOC(NOM,I)
 .S DISCAH=$$DISC^W4DOC(NOM,I)
 .S BFTAX=$$BFTAX^W4DOC(NOM,I)
 .S AFTAX=$$AFTAX^W4DOC(NOM,I)
 .
 .S TXT="" N %CHAST
 .
 .I +QN=1 D
 ..S TXT=TXT_$J(PRC,8,2)_" "
 ..D DLG^%L1FRM(NM,20)
 ..S TXT=TXT_%CHAST(1,1)
 .
 .I +QN'=1  D
 ..S TXT=TXT_$$HBR^%L1FRM(NM,29)
 .S TXT=TXT_$J(CD,9)
 .D W
 .
 .I +QN'=1!DISCAH D
 ..S TXT=$J($S(PRMAM:AFTAX,1:BFTAX),8,2)_" = "
 ..I DISCAH D
 ...S TXT=TXT_"-"_+DISCAH_"%  "
 ..I +QN'=1 S TXT=TXT_" "_$J(PRC,7,2)_" X "_QN
 ..D W
 ..N ST S ST="" D W1
 .;
 .S SAH=SAH+$S(PRMAM:AFTAX,1:BFTAX)
 .
 .I $L($G(%CHAST(1,2))) S TXT=$J("",10)_%CHAST(1,2) D W
 Q
 ;
 ;
PAYM(CODDOC,NUMBER) ;
 N I,NMB,MKT,LK0,STRING,NOM,MZ,TXT,ODEF
 S SM=0
 S LK0=$G(@$$^W4KLIN@(CODDOC,NUMBER))
 S STRING=$P(LK0,"W")
 S NOM=$P(LK0,"W",2)
 S NMB=+NUMBER_$$DOPNOM(CODDOC)
 S MZ=$$MZ^W4LCBCR(NMB)
 I MZ D
 .N ODEF S ODEF=$$ODEF^W4LCBCR(NMB)
 .I ODEF>0 S MZ=MZ+ODEF
 .S TXT="g""y "_$J(MZ,7,2)_" : onefna mley" D W
 .I ODEF>0 S TXT="g""y "_$J(ODEF,7,2)_" : scer" D W
 ;
 N GLCB S GLCB=$$GLCB^W4LCBCR(NMB)
 ;
 F I=1:1 Q:'$D(@GLCB@(I))  D  ; --- CHECKS
 .N A,SUM,DATPR S A=$G(^(I))
 .S SUM=$$SUM^W4LCBCR(NMB,I)
 .S DATPR=$$DATPR^W4LCBCR(NMB,I)
 .S NOMCH=$$CHK^W4LCBCR(NMB,I)
 .S TXT=NOMCH_" wiya g""y "_$J(SUM,7,2)_" mley" D W
 ;
 N GLCBV S GLCBV=$$GLCBV^W4LCBCR(NMB)
 ;       1   2    3    4     5    6    7  8  9  10 11    12    13     14    15    16     17    18     19    20    21   22   23   24    25    27       30
 S MKT="VTS*NCA*NISKA*SUG21*SUG1*CAVT*CAV*P1*PN*PC*FLP*AUTHNO*MIAUTH*TKFCA*SIBA*OFENCA*SUGMTB*KHVCA*HUZCA*SHEMCA*MOAD*SUGI*ASHTZ*CVV2*CVV4**TIPCA***VERSION"
 ;
 I $G(@GLCBV)'="" D
 .S A=$G(@GLCBV)
 .D PRS^%L1FRM(A,MKT,"*")
 .S NCAB=+NUMBER
 .
 .N HZM,SM S SM=0 D CA^W4HZTH(1) ; -- PROV NESK CA
 Q
 ;
 ;
VD(STAM)
 I $L($P(PRM,";",2)) Q $P(PRM,";",2)
 Q "HMK"
 ;
MAKOR(NMB)
 I $$GET^%W1PRM("MKRYD")=NMB Q 1
 Q 0
 ;
HMK(VD,NMB) ;
 I VD'="HMK" Q 0
 N LK0 S LK0=$$^W4STRING(VD,+NMB)
 I '$$^W4ISCDLK(LK0) Q 0
 I LK0["W" Q 2
 Q 1
 ;
NIS S NIS="g""y "
 Q
DOPNOM(CODDOC) ;
 Q $S(CODDOC="TM":"T",CODDOC="TZ":"Z",CODDOC="HMK":"HMK",CODDOC="HZ":"HZ",1:"")
 ;
CUT ;
 I $G(%MDP("CUT"))="" Q
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
PTH ;
 Q:$$MZSM^W4PRM
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=$G(%MDP("P"))
 D ^W4PTHDLY
 Q
NOM(NMB) ;
 N VD S VD=$TR(NMB,"1234567890","")
 Q $S(VD="HZ":+NMB,1:$$NOM^W4DOC(NMB))
 ;
WD() ; 
 Q 39 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCHMKY
W4PCHMKY(PRM) ; [ 29.09.15 07:41 ] [ 15.04.12 14:03 ] [ 12.04.12 15:27 ]
 N (JB,%ARG,%REM,PRM)
 S NUMBER=$P(PRM,";")
 S VD="HMK"
 S NMB=+NUMBER_VD
 ;
 S MAKOR=$$MAKOR(NMB)
 D ^W4MDPPC I '$G(PRINT) Q "PRINTERNOTDEFINED"
 ;
 ; ---------------------- PECH KOT ------------
 D PUT^%W3DEB("W4PCHMKY","PRINT=PRINT&NUMBER=NUMBER&NMB=NMB&NOM=NOM")
 K @$$^W4MAIN("TMPS111")
 S OK=$$HD(+NUMBER_";"_VD_";"_MAKOR) I OK'=1 Q OK
 D ST^W4HZTH
 K @$$^W4MAIN("TMPS111")
 ;
 D KAV
 S TXT=":n""rn llek:n""rn iptl:       xe`z       :" D W
 D KAV
 ;
 D PCHMK
 D KAV
 ;
 D FOOT(NUMBER)
 D PAYM(VD,NUMBER)
 I MAKOR D KILL^%W1PRM("MKRYD")
 Q "OK"
 ;
 ;
HD(PRM) ;
 Q $$^W4HDHMK(PRM)
 ;
FOOT(NUMBER) ;
 D TOT(NUMBER)
 S PRMAM=0
 D FOOT1^W4PCHMK
 Q
 ;
KAV ;
 S TXT=$TR($J("",39)," ","-") D W
 Q
 ;
W D S1^W4HZTH
 Q
W1 D S12^W4HZTH
 Q
 ;
PCHMK ;
 N I,GL,ST,NM,BFTAX,AFTAX,TXT,STRING
 S SAH=0
 S GL=$$GLHBN^W4HSBYAD(NMB)
 F I=1:1 Q:'$D(@GL@(I))  D
 .S ST=$G(^(I))
 .S NM=$P(ST,"\",2)
 .D DLG^%L1FRM(NM,19)
 .S BFTAX=$P(ST,"\") I BFTAX S BFTAX=$J(BFTAX,2,2)
 .S AFTAX=$P(ST,"\",3) I AFTAX S AFTAX=$J(AFTAX,2,2)
 .
 .S TXT=$J(AFTAX,10)
 .S TXT=TXT_$J(BFTAX,10)
 .S TXT=TXT_%CHAST(1,1)
 .D W
 .S SAH=SAH+BFTAX
 .I $D(%CHAST(1,2)) D
 ..N J F J=2:1 Q:'$D(%CHAST(1,J))  D
 ...S TXT=$J("",20)_%CHAST(1,J) D W
 Q
 ;
 ;
PAYM(VD,NUMBER) ;
 D PAYM^W4PCHMK(VD,NUMBER)
 Q
 ;
 ;
VD(STAM)
 I $L($P(PRM,";",2)) Q $P(PRM,";",2)
 Q "HMK"
 ;
MAKOR(NMB)
 I $$GET^%W1PRM("MKRYD")=NMB Q 1
 Q 0
 ;
HMK(VD,NMB) ;
 N LK0 S LK0=$$^W4STRING("HMK",+NMB)
 I '$$^W4ISCDLK(LK0) Q 0
 I LK0["W" Q 2
 Q 1
 ;
NIS S NIS="g""y "
 Q
 ;
TOT(NUMBER) ;
 N ST,STRING
 S ST=$G(@$$GLHBN^W4HSBYAD(+NUMBER_"HMK"))
 S MAM=$P(ST,"\",3)
 S AHMAM=$P(ST,"\",11)
 ;
 S SHUM=$P(ST,"\",2)
 ;
 S DISCPRC=$P(ST,"\",12)
 S DISCNIS=$P(ST,"\",14)
 S DMSH=$P(ST,"\",15)
 S IGUL=$P(ST,"\",10)
 ;
 S SHUMLD=SHUM-IGUL-DMSH+DISCNIS
 N SHUMLD0 S SHUMLD0=SHUMLD
 S SHUMLD=$J(SHUMLD*100/(100-DISCPRC),2,2)
 S DISCA=$J(SHUMLD-SHUMLD0,2,2)
 S LMAM=SHUMLD*100/(100+AHMAM)
 Q

W4PCIBO0
W4PCIBON(HZM) ; HAZAGAT HAZMANA LMAAREHET IBON [ 09.01.21 07:16 ] [ 08.01.21 10:18 ] [ 24.11.20 13:17 ] 
 N (JB,%ARG,%REM,HZM,LKHN,NMB,GLBV,GLBV1,P1HZOP,P1HZMET,P3PCHZ,NOPCMDB,BG)
 ;
 I $$SUPER^W3PRM Q
 I $$^W4HZMH(HZM) Q
 I $$^W4PIZUL(HZM) Q
 ;
 D ^W4IN,^W4INP
 I '$G(NOPCMDB) D ^W4MDBPC(HZM)
 ;
 S SHB=0,BONTM=+$H_$TR($J($P($H,",",2),5)," ",0)
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N BG S BG=1
 D COMPBG(HZM) ;; I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")) D COMPBG(HZM)
 ;
 S NOPCTAW=$$NOPCTAW
 ;
 S MKRDLV=$$MKRDLV^W4HZMST(HZM)
 ;
 N EX S EX=0
 ;
 S ERMDP=0,NP=0 S DAT=$$^%L1DC(P1DZ,2),MANA=0,FRPC=1,PRBIT=0
 S DTHZ=P1DZ
 S III=0
 ;
 S %SCRN=HZSCR,I=0,SM=1 K PRINTF
 ;
 K @$$^W4PC1
 ;
 S TAWMSL=$$^W4TAWMSL(HZM)
 S FBAR=0 S NMB=$$NMB^W4HZMST(HZM)
 ;
 N N0,N1,N2,N3,ST
 S N0=1 I $G(P1HZMET) S N0=P1HZMET
 ;
BODY ; ------------------------------------- BODY ----------------------
 ;
 N PRDEL S PRDEL=0
 ;
 F N1=BG:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .N ST S ST=$G(^(N1)) K ADOM,DBL,MDPMAIN,MDP
 .S (REF,REF0)=$$^W4ORD_"(HZM,N1)",N2=""
 .K DBL D LINE D
 ..N P1H11 S P1H11=1
 ..S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 ..I $P($G(@$$^W4ORD@(HZM,N1)),"\",5)<0 S PRDEL=1
 ..D ^W4N2V(HZM,N1)
 ..N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 ..
 ..S N2V="" K PRINTF1 F P1H=1:1 S N2V=$O(@VRMHZ@(N2V)) Q:N2V=""  D
 ...S N2=$G(^(N2V)) Q:N2=""
 ...S ST=$G(@$$^W4ORD@(HZM,N1,N2))
 ...
 ...N REF S REF=$$^W4ORD_"(HZM,N1,N2)"
 ...
 ...K DBL,COL0 N MDP D LINE2 ;;D DBL2 K DBL
 ...
 ...N PAR,MDPMAIN1 S FRPC=1
 ...S N3="" F P1H1=1:1 S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....K DBL N MDP S FRPC=(P1H1=1) D LINE3 S FRPC=(P1H1=1) ;;D DBL3 K DBL
 ..K @VRMHZ
 ;
 I N1'>1 G EBODY
 I N1>1 S @$$^W4ORD@(HZM,"H")=N1-1
 ;
 S W4IBON=$$^W4IBON
 S SHB="",K=0 F  S SHB=$O(@W4IBON@(P1DZ,BONTM,HZM,SHB)) Q:SHB=""  S K=K+1
 I 'K G EBODY
 ;
 ;----------------------------------------------------------------------
 N ORDTYPE S ORDTYPE=$S(BG>1:5,1:1)
 S ST=$$KOTHZM(HZM,ORDTYPE)_"""Items"": [",PREVMAIN=1,FIRSTMAIN=1,ADDS=0
 ;
 S SHB="" F  S SHB=$O(@W4IBON@(P1DZ,BONTM,HZM,SHB)) Q:SHB=""  D
 .N RF S RF=$G(^(SHB))
 .S ST=ST_" "_$$ITHZM(RF)_" "
 ;
 I ADDS S ST=ST_" ] " 
 N ST2 S ST2=$$SPA^%L1FRM(ST) I $E(ST2,$L(ST2))'="," S ST=ST_" ,"
 S ST=ST_" "_$$MDF_" } ] }"
 ;
EBD0 K PRINTF,PRINTF1,pc
 S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4GL("P1HZ0")_"(HZM)" D ^%S1GC1
WRITE ;
 S DIR=$G(@$$^W4PRM@("IBON","DIR"))
 S URL=$G(@$$^W4PRM@("IBON","URL"))
 ;
 S FILE=DIR_"IB"_$ZD($H,"YYMMDD")_"_"_$TR($J($P($H,",",2),5)," ",0)_"_"_$$^W4MYDVN_"_"_HZM
 ;
 C FILE:(DELETE)
 O FILE:(NEWVERSION:REWIND:WRITE)
 U FILE
  W ST,!
 C FILE
 ;
 S CMD="iconv -c -f cp1255 -t utf-8 "_FILE_" -o "_FILE_".utf8"
 ZSY CMD
 ;
 S CMD="curl -H ""Content-Type:application/json"" -d@"_FILE_".utf8 "_URL_" > null"
 ZSY CMD
 D
 .N DT,DAT,SH S DT=$$^W4DZ
 .S DAT=$ZD(DT,"YYMMDD") 
 .S SH=$O(@$$^W4GL("CMDIB")@(DAT,999999),-1)+1
 .S @$$^W4GL("CMDIB")@(DAT,SH)=CMD
 .S @$$^W4GL("CMDIB")@(DAT,SH,"ZSY")=$ZSY
 ;
EBODY L  ;
 Q
 ;
 ;
COMPBG(HZM) ;
 N N1
 D  ;
 .S N1=9999 F  S N1=$O(@$$^W4ORD@(HZM,N1),-1) Q:N1=""  S A=$G(^(N1))  I A["@@",A'["@@!" Q
 .S BG=N1+1
 Q
 ;
SMB(ST) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@!" Q "!"
 I NOMOD["@@?" Q "?"
 I NOMOD["@@+" Q "+"  ; -- 30/09/09
 Q ""
 ;
CODP(ST) Q $P(ST,"\")
NM(ST) Q $P(ST,"\",3)
QN(ST) Q $P(ST,"\",5)
 ;
HRP(ST) N HRP S HRP=$P(ST,"\",8)
 Q $$CLRHR(HRP)
 ;
NOMOD(ST,PR) Q $P(ST,"\",10)
 ;
SETNOMOD(REF,VL,PR) S $P(@REF,"\",10)=VL
 Q
 ;
SETNOMODST(VL) ;
 S $P(ST,"\",10)=VL
 Q
 ;
DEFMDP(PRINT) ;
 N NOPC S NOPC=""
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
DEFMDP1 N NOPC S NOPC="" D DEFMDP1^W4DEFPRN
 Q
 ;
LINE ; --- HADPASAT PARIT ROSHI / RAGIL
 S ERMDP=0,OK=0,MIN=0,FLAG="",SUMHN=0,PAR=$P(ST,"\") Q:PAR=""  N PRT
 Q:$E(PAR)?.P
 N ST0 S ST0=ST
 ;
 S PRMAIN=$P(ST,"\",5)
 ;
 N NOPC S NOPC=""
 I PAR="0" Q:$$NOPRINT(ST)  D  G EL
 .N MDP,MDP1,PRINT
 .S MDP=$P(ST,"\",11)
 .I MDP="",$$NODLVORD^W4PRM S MDP=$$ALLPRN^W4DEFPRN
 .I MDP="",'$$NODLVORD^W4PRM S MDP=0
 .I MDP D PCLP
 .Q  ;
 ;
 I $$NOPRINT(ST) Q
 Q:PAR=""
 ;
 D  ;--> %MDP,ERMDP
 .N PRINT,MDPS S MDP=$$PRINTIG^W3PRMDP(PAR) I MDP="" Q
 .D LINEPRN(MDP) Q:$G(MDP1)=""
 ;
 I $$D^W4EZA(PAR),$$PRMANA=1 S SUMHN=$$SUMHN(HZM,N1) G EL
 ;
 I $P(ST,"\",2)[">",$G(P1HZOP)="BIT1",P1PCBIT'=2 S ERMDP=2
 ;
 I $$QN(ST)<0 D
 .I '$G(P1PCBIT) S ERMDP=2 Q
 .I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ;
 D:'ERMDP DEFPRN(PAR) I ERMDP,ERMDP'=2 Q
 ;
 I ERMDP=2 S SUMHN=$$SUMHN(HZM,N1) G:$G(MDP) EL
 ;
LINEP ;
 ;
 I $G(MDP)=0 G EL
 I '$D(%MDP)!'$G(PRINT) Q
 Q:ERMDP
 ;
 D CLMANA(8)
 ;
LINEP1 I $$QN(ST)<0 S TXT("R")=1,ADOM=1
 S SUMHN=$$SUMHN(HZM,N1)
 ;
 D PCLP
 I $G(PRINT) S FIRSTHD(PRINT)=0
 ;
EL ;
 I $$SETWASPRINT(REF) Q
 S OK=1
 N RF S RF=@REF I $$^W4MSD(NMB)!TAWMSL D PLU2
 Q
 ;
 ;
LINEPRN(MDP) ;--> PRINT,%MDP
 D DEFMDP1 Q:MDP1=""  D HZ^W4MDP(MDP1)
 Q
 ;
 ;
PCLP ;
 D BONSCR
 Q
 ;
CLMANA(DLM) ;
 Q:'$D(MANA)  N OLDMANA
 S OLDMANA=MANA,MANA=0
 D DEFMANA($P(ST,"\",DLM))
 I MANA,$$PRMANA D
 .S $P(ST,"\",DLM)=$$^W4CLRMN($P(ST,"\",DLM))
 I 'MANA S MANA=OLDMANA
 I $$PRMANA>1,DLM=8 S MANA=0 ; -- MIUN LEFI TOSAFOT
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
QNT(ST) Q $P(ST,"\",3)
HRT(ST) Q $$CLRHR($P(ST,"\",4))
 ;
CLRHR(HR)
 S HR=$G(HR)
 I HR'["[[" Q $TR(HR,"[]","--")
 Q $$CLRHR^W4HZTH(HR)
 ;
 ;
LINE2 ; --
 S PRMAIN=0
 N P1EZT,II,UR
 S UR=$S($D(N23):3,1:2)
 ;
 I UR=2,$D(@REF@(1)) Q
 ;
 S NP=NP+1,OK=0,ERMDP=0
 I $$NOPRINT(ST,UR) Q
 ;
 I $G(P1HZOP)="BIT" S ERMDP=2
 ;
 I UR=3,$G(PAR0) S PAR=PAR0
 ;
 I $L($G(PAR)),$$^W4EZAT(PAR) S PRMAIN=0 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .N P1EZT I $$D^W4EZT(PAR)!$G(@$$^W4PRM@("AINIFRAD")) S P1EZT=""
 .D DEFPRN(N2)
 ;
 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I UR=3,$G(@$$^W4PRM@("AINIFRAD"))&($G(DLT2)>20) S P1EZT=""
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .D:'ERMDP DEFPRN(N2)
 ;
LINE21 ;
 ;--------------------- AI -------------------------
 ;
PT D PCLT ; --- !!!! -- PRINT LINE
 ;
LN2 ;
 I $$SETWASPRINT(REF,UR) Q
 ;
 I UR=3 D SUM3($G(@REF)) G LN21 ; --- LEV 3 ADDONS
 ;
 S COLP=$P(@($P(REF,",",1,2)_")"),"\",5)
 N RF S RF=$G(@REF) N PAR S PAR=N2
 ;
 D:$$^W4MSD(NMB)!TAWMSL PLU3 S OK=1
 ;
LN21 ;
 Q
 ;
 ;
PCLT ;
 D BONSCR
 Q
 ;
NOPCDEL(ST) ;
 I $$QNT(ST)<0,'$G(P1PCBIT) Q 1
 I $$QNT(ST)<0,$G(P1PCBIT)<1,'$$PRMV($$HRT(ST)) Q 1
 ;;I '$$QNT(ST) Q 1  ; -- 20/10/20
 Q 0
 ;
CODTT3(ST) Q $P(ST,"\",4)
NMT3(ST) Q $P(ST,"\",2)
NMTT3(ST) Q $P(ST,"\",5)
MHT3(ST) Q $P(ST,"\",7)
HRT3(ST) Q $P(ST,"\",6)
QNT3(ST) Q $P(ST,"\",3)
 ;
 ;
LINE3 ;
 N N23,REF S N23=N2
 N ST
 S REF=$$^W4ORD_"(HZM,N1,N23,N3)",ST=$G(@REF)
 N PAR0 S PAR0=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 I $$CODP(ST)'="" S PAR=$$CODP(ST),COL0=$$QNT3(ST)
 N COL3 S COL3=$$QNT3(ST)
 ;
 I $$NOPRINT(ST,3) Q
 ;
 S CODP3=0
 ;
 I $$CODP(ST)'="" D  S FRPC=1,CODP3=1 D LINE2 S:$G(MDP) MDPMAIN1=MDP Q
 .S MDPMAIN1=""
 .S ST=$$NMT3(ST)_"\"_$$MHT3(ST)_"\"_COL0_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 .D SETHR3
 .Q:'$$^W4EZAT(PAR0)
 .
 .N STT S STT=$G(@$$^W4ORD@(HZM,N1,N23,N3+1)) Q:STT=""
 ;
 ;--- PRINT ADDONS LEV 2
 N N2,PRUR S PRUR=2
 S N2=$$CODTT3(ST)
 ;
 S ST=$$NMTT3(ST)_"\"_$$MHT3(ST)_"\"_$G(COL3,1)_$$DOP^W4PIZZA($$QNT3(ST))_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 ;
 D SETHR3
 D LINE2
 Q
 ;
 ;
SETHR3 ;
 N REF2,ST2
 S REF2=$$^W4ORD_"(HZM,N1,N23)",ST2=$G(@REF)
 I '$$^W4DEFMN($P(ST,"\",6)),$$^W4DEFMN($P(ST2,"\",4)) D
 .S $P(ST,"\",6)=$P(ST2,"\",4)_" "_$P(ST,"\",6)
 Q
 ;
SUM3(ST) ;
 N PAR
 I $$CODP(ST)'="" Q
 S PAR="A-"_$$CODTT3(ST)
 S COL=$G(COL0),PRC=0,SUM=0 D PLT
 Q
 ;
 ;
BONSCR ;
 S SHB=$O(@$$^W4IBON@(P1DZ,BONTM,HZM,99999),-1)+1
 N REF1 S REF1=$P(REF,"(")_"("
 N J F J=1:1:$L(REF,",") D
 .N IND S IND=$P(REF,",",J)
 .I IND["(" S IND=$P(IND,"(",2)
 .I IND[")" S IND=$P(IND,")")
 .S IND=@IND
 .I $E(IND)'="""" S IND=""""_IND_""","
 .S REF1=REF1_IND
 S REF1=$E(REF1,1,$L(REF1)-1)_")"
 S @$$^W4IBON@(P1DZ,BONTM,HZM,SHB)=REF1
 Q
 ;
 ;
PLU D PLU^W4HZMPC
 Q
 ;
PLU2 ;
 D PLU2^W4HZMPC
 Q
 ;
 ;
PLU3 ;
 D PLU3^W4HZMPC
 Q
 ;
 ;
PLT ;
 D PLT^W4HZMPC
 Q
 ;
 ;
DEFPRN(PRT) ;
 N NOPC S NOPC=""
 D ^W4DEFPRN(HZM,PRT)
 Q
 ;
 ;
SUMHN(HZM,NN) ;
 N SUMHN,A S SUMHN=0
 F NN=NN+1:1 Q:'$D(@$$^W4ORD@(HZM,NN))  S A=^(NN) Q:$P(A,"\")'["%"  D
 .S SUMHN=$G(SUMHN)-$P(A,"\",7)
 Q SUMHN
 ;
DEFMANA(CMT) ;
 S MANA=$$^W4DEFMN(CMT)
 Q
 ;
 ;
 ;
QNPIZZA(C) ;
 Q $$QNPZ^W4PIZZA(C)
 ;
 ;
SBR(HR) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  I $$SPA^%L1FRM(^(N))=$$SPA^%L1FRM(HR) S OK=1 Q
 Q OK
 ;
 ;
MYDEV(STAM) ;
 Q $$^W4MYDVN
 ;
 ;
NOPRINT(ST,UR) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@"&'$D(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@!" Q 1
 I NOMOD["@@@"&$G(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@@"&$D(P1HZMET("ETEK"))&'$G(DBL) Q 1
 I NOMOD["@@+"&$G(DBL)&'$G(P1HZMET) Q 1
 I NOMOD["@@@+" Q 1
 Q 0
 ;
 ;
SETWASPRINT(REF,UR) ;
 N REFC S REFC=$G(@REF)
 N SMB S SMB=$$SMB(REFC)
 S UR=$G(UR)
 ;
 I $G(P1HZMET),'$G(DBL),$$NOMOD(REFC)["@@@" Q 1
 ;
 I $G(P1HZMET),'$D(P1HZMET("SHZM")),$$NOMOD(REFC,UR)'["@@!" D
 .D SETNOMOD(REF,"@@@"_SMB,UR)
 ;
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@" D SETNOMOD(REF,"@@+",UR)
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@@" D SETNOMOD(REF,"@@@+",UR)
 ;;W "REF="_REF_"  @REF="_@REF,!
 I $$NOMOD(REFC,UR)["@@" Q 1
 ;
 D SETNOMOD(REF,"@@"_$S($G(P1HZOP):"@",1:""),UR)
 Q 0
 ;
 ;
PRMANA(STAM) ;
 Q $$MANA^W4PRM
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
PRMV(HR) ;
 Q $$PRMV^W4HZPCFN(HR)
 ;
ATTN(STAM) ; 
 Q $$ATTN^W4HZPCFN(HR)  
 ;
KOTHZM(HZM,ORDTYPE) ;
 S ST="{"
 S ST=ST_$$RKV("OrderNo",HZM)_","
 N RESHET S RESHET=$G(@$$^W4PRM@("IBON","MAIN"))
 S ST=ST_$$RKV("Chain",RESHET)_","
 N STORE S STORE=$G(@$$^W4PRM@("IBON","STORE"))
 S ST=ST_$$RKV("Store",STORE)_","
 S ST=ST_$$RKV("Terminal",$$^W4MYDVN)_","
 S MKBL1=$$^W4NAME($$MKBL^W4HZMST(HZM))
 S ST=ST_$$RKV("Cashier",$$CLR(MKBL1),"H")_","
 S ST=ST_$$RKV("Date",$ZD($H,"MMDDYYYY"))_","
 S ST=ST_$$RKV("Time",$ZD($H,"246060"))_","
 N CUSTNM S CUSTNM=$$LKHNM^W4HZMST(HZM)
 I $$HZM^W4MSD(HZM),CUSTNM="" D
 .S CUSTNM=$$HRAED^W4HZMST(HZM)
 S CUSTNM=$$CLR(CUSTNM)
 S ST=ST_$$RKV("CustomerName",CUSTNM,"H")_","
 ;
 N PELE S PELE=$$PELE^W4HZMST(HZM)
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I PELE="" S PELE=$$PELE^W4L(NMB)
 I PELE="" S PELE=$$TEL^W4L(NMB)
 I $E(PELE,1,2)'="05",$E(NMB,1,2)="05" S PELE=NMB
 S ST=ST_$$RKV("CustomerPhone",PELE)_","
 ;
 ;;N DELHZ S DELHZ=$$^W4DEL(HZM)
 ;;N ORDTYPE S ORDTYPE=$S(DELHZ=HZM:2,DELHZ:3,$G(PRDEL):4,BG>1:5,1:1)
 S ST=ST_$$RKV("OrderType",ORDTYPE)_","
 S ST=ST_$$RKV("Total",$$TSHL^W4HZMST(HZM))_","
 N TAW S TAW=$S($$TAKEAWAY^W4HZMST(HZM):"true",1:"false")
 S ST=ST_$$RKV("IsTakeAway",TAW)_","
 N DLV S DLV=$S($$HZM^W4MSL(HZM)&'TAW:"true",1:"false")
 S ST=ST_$$RKV("IsDelivery",DLV)_", "
 Q ST
 ;
RKV(NM,VL,PR) ;
 I $G(PR)="H" S VL=$$HB(VL)
 Q """"_NM_""": """_VL_""""
 ;
HB(VL) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 Q $TR($$INVH^%L1FRM(VL),TS0,TS1)
 ;
CLR(TX)
 Q $TR(TX,$$SMBS," ")
 ;
SMBS(STAM) ;
 Q "$%^&()<>/\[]{}?""':,"
 ;
ITHZM(RF) ;
 N (JB,RF,PREVMAIN,FIRSTMAIN,ADDS,HZM,BG,PRDEL)
 N A S A=$G(@RF)
 N IND
 S IND=$P($P(RF,"(",2),")")
 S STIT=""
 ;
 I $L(IND,",")=2 D
 .I ADDS S STIT=STIT_" ] "
 .S ADDS=0
 .
 .I 'FIRSTMAIN D
 ..N STIT2 S STIT2=$$SPA^%L1FRM(STIT)
 ..I $E(STIT2,$L(STIT2))'="," S STIT=STIT_" ,"
 ..S STIT=STIT_" "_$$MDF_" } ,"
 .
 .S PREVMAIN=1
 .S CD=$P(A,"\")
 .S NM=$P(A,"\",3)
 .D CDNM(CD)
 .S PRC=$P(A,"\",4)
 .S QN=$P(A,"\",5)
 .S TSF=$P(A,"\",6)
 .S SUM=$P(A,"\",7)
 .S HR=$P(A,"\",8)
 .S STIT=STIT_"{" D SETIT
 .I FIRSTMAIN S FIRSTMAIN=0
 ;
 I $L(IND,",")=3 D
 .S CD=$P(IND,",",3)
 .S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 .I PREVMAIN S STIT=STIT_" , SubItems: ["
 .S NM=$P(A,"\")
 .D CDNM(CD)
 .S PRC=$P(A,"\",2)
 .S QN=$P(A,"\",3)
 .S HR=$P(A,"\",4)
 .I ADDS S STIT=STIT_", "
 .S STIT=STIT_"{" D SETIT S STIT=STIT_"}"
 .S PREVMAIN=0,ADDS=1
 ;
 I $L(IND,",")=4 D
 .I PREVMAIN S STIT=STIT_" , SubItems: [" S PREVMAIN=0
 .I $P(A,"\") D
 ..S CD=$P(A,"\")
 ..S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 ..S NM=$P(A,"\",2)
 ..D CDNM(CD)
 ..S QN=$P(A,"\",3)
 ..S PRC=$P(A,"\",7)
 ..S HR=$P(A,"\",6)
 ..I ADDS S STIT=STIT_", "
 ..S STIT=STIT_" { " D SETIT S STIT=STIT_" } "
 ..S ADDS=1
 .
 .I $P(A,"\",4) D
 ..S CD=$P(A,"\",4)
 ..S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 ..S NM=$P(A,"\",5)
 ..D CDNM(CD)
 ..S QN=$P(A,"\",3)
 ..S PRC=$P(A,"\",7)
 ..S HR=$P(A,"\",6)
 ..I ADDS S STIT=STIT_", "
 ..S STIT=STIT_" { " D SETIT S STIT=STIT_" } "
 ;
 Q STIT
 ;
 ;
SETIT ;
 S STIT=STIT_$$RKV("Code",CD)_", " 
 ;;I NM["""" S NM=$$RPL^%L1FRM(NM,"""","\""")
 S NM=$$CLR(NM)
 N DELHZ S DELHZ=$$^W4DEL(HZM)
 N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 N TYP S TYP=$S(DELHZ=HZM:2,DELHZ:3,QN<0:4,BG>1:5,1:1)
 S STIT=STIT_$$RKV("Type",TYP)_", "
 S STIT=STIT_$$RKV("Name",NM,"H")_", "
 ;
 S HR=$$^W4CLRMN(HR)
 S HR=$$RPL^%L1FRM(HR,";dry itl dgpd","")
 S HR=$$RPL^%L1FRM(HR,"dry itl dgpd","")
 S HR=$$RPL^%L1FRM(HR,"[ ","-")
 S HR=$$RPL^%L1FRM(HR," ]","-")
 S HR=$$CLR(HR)
 ;
 S STIT=STIT_$$RKV("Message",HR,"H")_" ,"
 ;
 N QNPZ S QNPZ=""
 I QN["|" S QNPZ=$P(QN,"|",2),QN=$P(QN,"|")
 E  I QN[":" S QNPZ=$P(QN,":",2),QN=$P(QN,":")
 S STIT=STIT_$$RKV("Quantity",QN)_", "
 S STIT=STIT_$$RKV("Price",PRC)_", "
 S STIT=STIT_$$RKV("TotalPrice",QN*PRC)
 I $L(QNPZ) S STIT=STIT_" ,"_$$RKV("IconId",QNPZ)
 Q
 ;
MDF(STAM) ; 
 Q " ""Modifiers"":""[]"""
 ;
CDNM(CD) ;
 I $$CDNM^W4MDBPC,CD D
 .N TX S TX=$$SPA^%L1FRM($$SHEM^W4P(CD))
 .I $L(TX) S NM=TX
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCIBO1
W4PCIBON(HZM) ; HAZAGAT HAZMANA LMAAREHET IBON [ 17.12.20 09:12 ] [ 24.11.20 13:17 ] [ 22.11.20 12:55 ] 
 N (JB,%ARG,%REM,HZM,LKHN,NMB,GLBV,GLBV1,P1HZOP,P1HZMET,P3PCHZ,NOPCMDB,BG)
 ;
 I $$SUPER^W3PRM Q
 I $$^W4HZMH(HZM) Q
 I $$^W4PIZUL(HZM) Q
 ;
 D ^W4IN,^W4INP
 I '$G(NOPCMDB) D ^W4MDBPC(HZM)
 ;
 S SHB=0,BONTM=+$H_$TR($J($P($H,",",2),5)," ",0)
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N BG S BG=1
 D COMPBG(HZM) ;; I '$D(P1HZMET("DBL")),'$D(P1HZMET("ETEK")) D COMPBG(HZM)
 ;
 S NOPCTAW=$$NOPCTAW
 ;
 S MKRDLV=$$MKRDLV^W4HZMST(HZM)
 ;
 N EX S EX=0
 ;
 S ERMDP=0,NP=0 S DAT=$$^%L1DC(P1DZ,2),MANA=0,FRPC=1,PRBIT=0
 S DTHZ=P1DZ
 S III=0
 ;
 S %SCRN=HZSCR,I=0,SM=1 K PRINTF
 ;
 K @$$^W4PC1
 ;
 S TAWMSL=$$^W4TAWMSL(HZM)
 S FBAR=0 S NMB=$$NMB^W4HZMST(HZM)
 ;
 N N0,N1,N2,N3,ST
 S N0=1 I $G(P1HZMET) S N0=P1HZMET
 ;
BODY ; ------------------------------------- BODY ----------------------
 ;
 N PRDEL S PRDEL=0
 ;
 F N1=BG:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .N ST S ST=$G(^(N1)) K ADOM,DBL,MDPMAIN,MDP
 .S (REF,REF0)=$$^W4ORD_"(HZM,N1)",N2=""
 .K DBL D LINE D
 ..N P1H11 S P1H11=1
 ..S PAR=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 ..I $P($G(@$$^W4ORD@(HZM,N1)),"\",5)<0 S PRDEL=1
 ..D ^W4N2V(HZM,N1)
 ..N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 ..
 ..S N2V="" K PRINTF1 F P1H=1:1 S N2V=$O(@VRMHZ@(N2V)) Q:N2V=""  D
 ...S N2=$G(^(N2V)) Q:N2=""
 ...S ST=$G(@$$^W4ORD@(HZM,N1,N2))
 ...
 ...N REF S REF=$$^W4ORD_"(HZM,N1,N2)"
 ...
 ...K DBL,COL0 N MDP D LINE2 ;;D DBL2 K DBL
 ...
 ...N PAR,MDPMAIN1 S FRPC=1
 ...S N3="" F P1H1=1:1 S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....K DBL N MDP S FRPC=(P1H1=1) D LINE3 S FRPC=(P1H1=1) ;;D DBL3 K DBL
 ..K @VRMHZ
 ;
 I N1'>1 G EBODY
 I N1>1 S @$$^W4ORD@(HZM,"H")=N1-1
 ;
 S W4IBON=$$^W4IBON
 S SHB="",K=0 F  S SHB=$O(@W4IBON@(P1DZ,BONTM,HZM,SHB)) Q:SHB=""  S K=K+1
 I 'K G EBODY
 ;
 ;;N DELHZ S DELHZ=$$^W4DEL(HZM)
 N ORDTYPE S ORDTYPE=$S(BG>1:5,1:1)
 S ST=$$KOTHZM(HZM,ORDTYPE)_"""Items"": ["
 S PREVMAIN=1,FIRSTMAIN=1,ADDS=0,PRAI=0
 ;
 S SHB="" F  S SHB=$O(@W4IBON@(P1DZ,BONTM,HZM,SHB)) Q:SHB=""  D
 .N RF S RF=$G(^(SHB))
 .S ST=ST_" "_$$ITHZM(RF)_" "
 ;
 I ADDS S ST=ST_" ] " 
 N ST2 S ST2=$$SPA^%L1FRM(ST) I $E(ST2,$L(ST2))'="," S ST=ST_" ,"
 S ST=ST_" "_$$MDF_" } ] }"
 ;
EBD0 K PRINTF,PRINTF1,pc
 S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4GL("P1HZ0")_"(HZM)" D ^%S1GC1
WRITE ;
 S DIR=$G(@$$^W4PRM@("IBON","DIR"))
 S URL=$G(@$$^W4PRM@("IBON","URL"))
 ;
 S FILE=DIR_"IB"_$ZD($H,"YYMMDD")_"_"_$TR($J($P($H,",",2),5)," ",0)_"_"_$$^W4MYDVN_"_"_HZM
 ;
 C FILE:(DELETE)
 O FILE:(NEWVERSION:REWIND:WRITE)
 U FILE
  W ST,!
 C FILE
 ;
 S CMD="iconv -c -f cp1255 -t utf-8 "_FILE_" -o "_FILE_".utf8"
 ZSY CMD
 ;
 S CMD="curl -H ""Content-Type:application/json"" -d@"_FILE_".utf8 "_URL_" > null"
 ZSY CMD
 D
 .N DT,DAT,SH S DT=$$^W4DZ
 .S DAT=$ZD(DT,"YYMMDD") 
 .S SH=$O(@$$^W4GL("CMDIB")@(DAT,999999),-1)+1
 .S @$$^W4GL("CMDIB")@(DAT,SH)=CMD
 .S @$$^W4GL("CMDIB")@(DAT,SH,"ZSY")=$ZSY
 ;
EBODY L  ;
 Q
 ;
 ;
COMPBG(HZM) ;
 N N1
 D  ;
 .S N1=9999 F  S N1=$O(@$$^W4ORD@(HZM,N1),-1) Q:N1=""  S A=$G(^(N1))  I A["@@",A'["@@!" Q
 .S BG=N1+1
 Q
 ;
SMB(ST) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@!" Q "!"
 I NOMOD["@@?" Q "?"
 I NOMOD["@@+" Q "+"  ; -- 30/09/09
 Q ""
 ;
CODP(ST) Q $P(ST,"\")
NM(ST) Q $P(ST,"\",3)
QN(ST) Q $P(ST,"\",5)
 ;
HRP(ST) N HRP S HRP=$P(ST,"\",8)
 Q $$CLRHR(HRP)
 ;
NOMOD(ST,PR) Q $P(ST,"\",10)
 ;
SETNOMOD(REF,VL,PR) S $P(@REF,"\",10)=VL
 Q
 ;
SETNOMODST(VL) ;
 S $P(ST,"\",10)=VL
 Q
 ;
DEFMDP(PRINT) ;
 N NOPC S NOPC=""
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
DEFMDP1 N NOPC S NOPC="" D DEFMDP1^W4DEFPRN
 Q
 ;
LINE ; --- HADPASAT PARIT ROSHI / RAGIL
 S ERMDP=0,OK=0,MIN=0,FLAG="",SUMHN=0,PAR=$P(ST,"\") Q:PAR=""  N PRT
 Q:$E(PAR)?.P
 N ST0 S ST0=ST
 ;
 S PRMAIN=$P(ST,"\",5)
 ;
 N NOPC S NOPC=""
 I PAR="0" Q:$$NOPRINT(ST)  D  G EL
 .N MDP,MDP1,PRINT
 .S MDP=$P(ST,"\",11)
 .I MDP="",$$NODLVORD^W4PRM S MDP=$$ALLPRN^W4DEFPRN
 .I MDP="",'$$NODLVORD^W4PRM S MDP=0
 .I MDP D PCLP
 .Q  ;
 ;
 I $$NOPRINT(ST) Q
 Q:PAR=""
 ;
 D  ;--> %MDP,ERMDP
 .N PRINT,MDPS S MDP=$$PRINTIG^W3PRMDP(PAR) I MDP="" Q
 .D LINEPRN(MDP) Q:$G(MDP1)=""
 ;
 I $$D^W4EZA(PAR),$$PRMANA=1 S SUMHN=$$SUMHN(HZM,N1) G EL
 ;
 I $P(ST,"\",2)[">",$G(P1HZOP)="BIT1",P1PCBIT'=2 S ERMDP=2
 ;
 I $$QN(ST)<0 D
 .I '$G(P1PCBIT) S ERMDP=2 Q
 .I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ;
 D:'ERMDP DEFPRN(PAR) I ERMDP,ERMDP'=2 Q
 ;
 I ERMDP=2 S SUMHN=$$SUMHN(HZM,N1) G:$G(MDP) EL
 ;
LINEP ;
 ;
 I $G(MDP)=0 G EL
 I '$D(%MDP)!'$G(PRINT) Q
 Q:ERMDP
 ;
 D CLMANA(8)
 ;
LINEP1 I $$QN(ST)<0 S TXT("R")=1,ADOM=1
 S SUMHN=$$SUMHN(HZM,N1)
 ;
 D PCLP
 I $G(PRINT) S FIRSTHD(PRINT)=0
 ;
EL ;
 I $$SETWASPRINT(REF) Q
 S OK=1
 N RF S RF=@REF I $$^W4MSD(NMB)!TAWMSL D PLU2
 Q
 ;
 ;
LINEPRN(MDP) ;--> PRINT,%MDP
 D DEFMDP1 Q:MDP1=""  D HZ^W4MDP(MDP1)
 Q
 ;
 ;
PCLP ;
 ;
 D BONSCR Q
 ;
CLMANA(DLM) ;
 Q:'$D(MANA)  N OLDMANA
 S OLDMANA=MANA,MANA=0
 D DEFMANA($P(ST,"\",DLM))
 I MANA,$$PRMANA D
 .S $P(ST,"\",DLM)=$$^W4CLRMN($P(ST,"\",DLM))
 I 'MANA S MANA=OLDMANA
 I $$PRMANA>1,DLM=8 S MANA=0 ; -- MIUN LEFI TOSAFOT
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
QNT(ST) Q $P(ST,"\",3)
HRT(ST) Q $$CLRHR($P(ST,"\",4))
 ;
CLRHR(HR)
 S HR=$G(HR)
 I HR'["[[" Q $TR(HR,"[]","--")
 Q $$CLRHR^W4HZTH(HR)
 ;
 ;
LINE2 ; --
 S PRMAIN=0
 N P1EZT,II,UR
 S UR=$S($D(N23):3,1:2)
 ;
 I UR=2,$D(@REF@(1)) Q
 ;
 S NP=NP+1,OK=0,ERMDP=0
 I $$NOPRINT(ST,UR) Q
 ;
 I $G(P1HZOP)="BIT" S ERMDP=2
 ;
 I UR=3,$G(PAR0) S PAR=PAR0
 ;
 I $L($G(PAR)),$$^W4EZAT(PAR) S PRMAIN=0 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .N P1EZT I $$D^W4EZT(PAR)!$G(@$$^W4PRM@("AINIFRAD")) S P1EZT=""
 .D DEFPRN(N2)
 ;
 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I UR=3,$G(@$$^W4PRM@("AINIFRAD"))&($G(DLT2)>20) S P1EZT=""
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .D:'ERMDP DEFPRN(N2)
 ;
LINE21 ;
 ;--------------------- AI -------------------------
 ;
PT D PCLT ; --- !!!! -- PRINT LINE
 ;
LN2 ;
 I $$SETWASPRINT(REF,UR) Q
 ;
 I UR=3 D SUM3($G(@REF)) G LN21 ; --- LEV 3 ADDONS
 ;
 S COLP=$P(@($P(REF,",",1,2)_")"),"\",5)
 N RF S RF=$G(@REF) N PAR S PAR=N2
 ;
 D:$$^W4MSD(NMB)!TAWMSL PLU3 S OK=1
 ;
LN21 ;
 Q
 ;
 ;
PCLT ;
 D BONSCR Q
 ;
NOPCDEL(ST) ;
 I $$QNT(ST)<0,'$G(P1PCBIT) Q 1
 I $$QNT(ST)<0,$G(P1PCBIT)<1,'$$PRMV($$HRT(ST)) Q 1
 ;;I '$$QNT(ST) Q 1  ; -- 20/10/20
 Q 0
 ;
CODTT3(ST) Q $P(ST,"\",4)
NMT3(ST) Q $P(ST,"\",2)
NMTT3(ST) Q $P(ST,"\",5)
MHT3(ST) Q $P(ST,"\",7)
HRT3(ST) Q $P(ST,"\",6)
QNT3(ST) Q $P(ST,"\",3)
 ;
 ;
LINE3 ;
 N N23,REF S N23=N2
 N ST
 S REF=$$^W4ORD_"(HZM,N1,N23,N3)",ST=$G(@REF)
 N PAR0 S PAR0=$P($G(@$$^W4ORD@(HZM,N1)),"\")
 I $$CODP(ST)'="" S PAR=$$CODP(ST),COL0=$$QNT3(ST)
 N COL3 S COL3=$$QNT3(ST)
 ;
 I $$NOPRINT(ST,3) Q
 ;
 S CODP3=0
 ;
 I $$CODP(ST)'="" D  S FRPC=1,CODP3=1 D LINE2 S:$G(MDP) MDPMAIN1=MDP Q
 .S MDPMAIN1=""
 .S ST=$$NMT3(ST)_"\"_$$MHT3(ST)_"\"_COL0_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 .D SETHR3
 .Q:'$$^W4EZAT(PAR0)
 .
 .N STT S STT=$G(@$$^W4ORD@(HZM,N1,N23,N3+1)) Q:STT=""
 ;
 ;--- PRINT ADDONS LEV 2
 N N2,PRUR S PRUR=2
 S N2=$$CODTT3(ST)
 ;
 S ST=$$NMTT3(ST)_"\"_$$MHT3(ST)_"\"_$G(COL3,1)_$$DOP^W4PIZZA($$QNT3(ST))_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 ;
 D SETHR3
 D LINE2
 Q
 ;
 ;
SETHR3 ;
 N REF2,ST2
 S REF2=$$^W4ORD_"(HZM,N1,N23)",ST2=$G(@REF)
 I '$$^W4DEFMN($P(ST,"\",6)),$$^W4DEFMN($P(ST2,"\",4)) D
 .S $P(ST,"\",6)=$P(ST2,"\",4)_" "_$P(ST,"\",6)
 Q
 ;
SUM3(ST) ;
 N PAR
 I $$CODP(ST)'="" Q
 S PAR="A-"_$$CODTT3(ST)
 S COL=$G(COL0),PRC=0,SUM=0 D PLT
 Q
 ;
 ;
BONSCR ;
 S SHB=$O(@$$^W4IBON@(P1DZ,BONTM,HZM,99999),-1)+1
 N REF1 S REF1=$P(REF,"(")_"("
 N J F J=1:1:$L(REF,",") D
 .N IND S IND=$P(REF,",",J)
 .I IND["(" S IND=$P(IND,"(",2)
 .I IND[")" S IND=$P(IND,")")
 .S IND=@IND
 .I $E(IND)'="""" S IND=""""_IND_""","
 .S REF1=REF1_IND
 S REF1=$E(REF1,1,$L(REF1)-1)_")"
 S @$$^W4IBON@(P1DZ,BONTM,HZM,SHB)=REF1
 Q
 ;
 ;
PLU D PLU^W4HZMPC
 Q
 ;
PLU2 ;
 D PLU2^W4HZMPC
 Q
 ;
 ;
PLU3 ;
 D PLU3^W4HZMPC
 Q
 ;
 ;
PLT ;
 D PLT^W4HZMPC
 Q
 ;
 ;
DEFPRN(PRT) ;
 N NOPC S NOPC=""
 D ^W4DEFPRN(HZM,PRT)
 Q
 ;
 ;
SUMHN(HZM,NN) ;
 N SUMHN,A S SUMHN=0
 F NN=NN+1:1 Q:'$D(@$$^W4ORD@(HZM,NN))  S A=^(NN) Q:$P(A,"\")'["%"  D
 .S SUMHN=$G(SUMHN)-$P(A,"\",7)
 Q SUMHN
 ;
DEFMANA(CMT) ;
 S MANA=$$^W4DEFMN(CMT)
 Q
 ;
 ;
 ;
QNPIZZA(C) ;
 Q $$QNPZ^W4PIZZA(C)
 ;
 ;
SBR(HR) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  I $$SPA^%L1FRM(^(N))=$$SPA^%L1FRM(HR) S OK=1 Q
 Q OK
 ;
 ;
MYDEV(STAM) ;
 Q $$^W4MYDVN
 ;
 ;
NOPRINT(ST,UR) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@"&'$D(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@!" Q 1
 I NOMOD["@@@"&$G(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@@"&$D(P1HZMET("ETEK"))&'$G(DBL) Q 1
 I NOMOD["@@+"&$G(DBL)&'$G(P1HZMET) Q 1
 I NOMOD["@@@+" Q 1
 Q 0
 ;
 ;
SETWASPRINT(REF,UR) ;
 N REFC S REFC=$G(@REF)
 N SMB S SMB=$$SMB(REFC)
 S UR=$G(UR)
 ;
 I $G(P1HZMET),'$G(DBL),$$NOMOD(REFC)["@@@" Q 1
 ;
 I $G(P1HZMET),'$D(P1HZMET("SHZM")),$$NOMOD(REFC,UR)'["@@!" D
 .D SETNOMOD(REF,"@@@"_SMB,UR)
 ;
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@" D SETNOMOD(REF,"@@+",UR)
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@@" D SETNOMOD(REF,"@@@+",UR)
 ;;W "REF="_REF_"  @REF="_@REF,!
 I $$NOMOD(REFC,UR)["@@" Q 1
 ;
 D SETNOMOD(REF,"@@"_$S($G(P1HZOP):"@",1:""),UR)
 Q 0
 ;
 ;
PRMANA(STAM) ;
 Q $$MANA^W4PRM
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
PRMV(HR) ;
 Q $$PRMV^W4HZPCFN(HR)
 ;
ATTN(STAM) ; 
 Q $$ATTN^W4HZPCFN(HR)  
 ;
KOTHZM(HZM,ORDTYPE) ;
 S ST="{"
 S ST=ST_$$RKV("OrderNo",HZM)_","
 N RESHET S RESHET=$G(@$$^W4PRM@("IBON","MAIN"))
 S ST=ST_$$RKV("Chain",RESHET)_","
 N STORE S STORE=$G(@$$^W4PRM@("IBON","STORE"))
 S ST=ST_$$RKV("Store",STORE)_","
 S ST=ST_$$RKV("Terminal",$$^W4MYDVN)_","
 S MKBL1=$$^W4NAME($$MKBL^W4HZMST(HZM))
 S ST=ST_$$RKV("Cashier",$$CLR(MKBL1),"H")_","
 S ST=ST_$$RKV("Date",$ZD($H,"MMDDYYYY"))_","
 S ST=ST_$$RKV("Time",$ZD($H,"246060"))_","
 N CUSTNM S CUSTNM=$$LKHNM^W4HZMST(HZM)
 I $$HZM^W4MSD(HZM),CUSTNM="" D
 .S CUSTNM=$$HRAED^W4HZMST(HZM)
 S CUSTNM=$$CLR(CUSTNM)
 S ST=ST_$$RKV("CustomerName",CUSTNM,"H")_","
 ;
 N PELE S PELE=$$PELE^W4HZMST(HZM)
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I PELE="" S PELE=$$PELE^W4L(NMB)
 I PELE="" S PELE=$$TEL^W4L(NMB)
 I $E(PELE,1,2)'="05",$E(NMB,1,2)="05" S PELE=NMB
 S ST=ST_$$RKV("CustomerPhone",PELE)_","
 ;
 ;;N DELHZ S DELHZ=$$^W4DEL(HZM)
 ;;N ORDTYPE S ORDTYPE=$S(DELHZ=HZM:2,DELHZ:3,$G(PRDEL):4,BG>1:5,1:1)
 S ST=ST_$$RKV("OrderType",ORDTYPE)_","
 S ST=ST_$$RKV("Total",$$TSHL^W4HZMST(HZM))_","
 N TAW S TAW=$S($$TAKEAWAY^W4HZMST(HZM):"true",1:"false")
 S ST=ST_$$RKV("IsTakeAway",TAW)_","
 N DLV S DLV=$S($$HZM^W4MSL(HZM)&'TAW:"true",1:"false")
 S ST=ST_$$RKV("IsDelivery",DLV)_", "
 Q ST
 ;
RKV(NM,VL,PR) ;
 I $G(PR)="H" S VL=$$HB(VL)
 Q """"_NM_""": """_VL_""""
 ;
HB(VL) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 Q $TR($$INVH^%L1FRM(VL),TS0,TS1)
 ;
CLR(TX)
 Q $TR(TX,$$SMBS," ")
 ;
SMBS(STAM) ;
 Q "$%^&()<>/\[]{}?""':,"
 ;
 ;
ITHZM(RF) ;
 N (JB,RF,PREVMAIN,FIRSTMAIN,ADDS,HZM,BG,PRDEL,PRAI)
 N A S A=$G(@RF)
 N IND
 S IND=$P($P(RF,"(",2),")")
 S STIT=""
 ;
 I $L(IND,",")=2 D
 .I ADDS S STIT=STIT_" ] "
 .S ADDS=0,PRAI=0
 .
 .I 'FIRSTMAIN D
 ..N STIT2 S STIT2=$$SPA^%L1FRM(STIT)
 ..I $E(STIT2,$L(STIT2))'="," S STIT=STIT_" ,"
 ..S STIT=STIT_" "_$$MDF_" } ,"
 .
 .S PREVMAIN=1
 .S CD=$P(A,"\")
 .I $$D^W4EZA(CD) S PRAI=1,PREVMAIN=0 Q  ; ---- LO LEHAZIG AI !! -----
 .S NM=$P(A,"\",3)
 .S PRC=$P(A,"\",4)
 .S QN=$P(A,"\",5)
 .S TSF=$P(A,"\",6)
 .S SUM=$P(A,"\",7)
 .S HR=$P(A,"\",8)
 .S STIT=STIT_"{" D SETIT
 .I FIRSTMAIN S FIRSTMAIN=0
 ;
 I $L(IND,",")=3 D
 .S CD=$P(IND,",",3)
 .S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 .I PREVMAIN S STIT=STIT_" , SubItems: ["
 .S NM=$P(A,"\")
 .S PRC=$P(A,"\",2)
 .S QN=$P(A,"\",3)
 .S HR=$P(A,"\",4)
 .I ADDS S STIT=STIT_", "
 .S STIT=STIT_"{" D SETIT S STIT=STIT_"}"
 .I PREVMAIN S PREVMAIN=0,ADDS=1
 .I $G(PRAI) S ADDS=0
 ;
 I $L(IND,",")=4 D
 .I PREVMAIN S STIT=STIT_" , SubItems: [" S PREVMAIN=0
 .
 .I $P(A,"\") D
 ..S CD=$P(A,"\")
 ..S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 ..S NM=$P(A,"\",2)
 ..S QN=$P(A,"\",3)
 ..S PRC=$P(A,"\",7)
 ..S HR=$P(A,"\",6)
 ..I ADDS S STIT=STIT_", "
 ..S STIT=STIT_" { " D SETIT
 ..I '$G(PRAI) S STIT=STIT_" } "
 ..I PREVMAIN S ADDS=1
 .
 .I $P(A,"\",4) D
 ..S CD=$P(A,"\",4)
 ..S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 ..S NM=$P(A,"\",5)
 ..S QN=$P(A,"\",3)
 ..S PRC=$P(A,"\",7)
 ..S HR=$P(A,"\",6)
 ..I ADDS S STIT=STIT_", "
 ..I $G(PRAI) S STIT=STIT_" , SubItems: [" S ADDS=1
 ..S STIT=STIT_" { " D SETIT S STIT=STIT_" } "
 ;
 Q STIT
 ;
 ;
SETIT ;
 S STIT=STIT_$$RKV("Code",CD)_", " 
 ;;I NM["""" S NM=$$RPL^%L1FRM(NM,"""","\""")
 S NM=$$CLR(NM)
 N DELHZ S DELHZ=$$^W4DEL(HZM)
 N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 N TYP S TYP=$S(DELHZ=HZM:2,DELHZ:3,QN<0:4,BG>1:5,1:1)
 S STIT=STIT_$$RKV("Type",TYP)_", "
 S STIT=STIT_$$RKV("Name",NM,"H")_", "
 ;
 S HR=$$^W4CLRMN(HR)
 S HR=$$RPL^%L1FRM(HR,";dry itl dgpd","")
 S HR=$$RPL^%L1FRM(HR,"dry itl dgpd","")
 S HR=$$RPL^%L1FRM(HR,"[ ","-")
 S HR=$$RPL^%L1FRM(HR," ]","-")
 S HR=$$CLR(HR)
 ;
 S STIT=STIT_$$RKV("Message",HR,"H")_" ,"
 ;
 N QNPZ S QNPZ=""
 I QN["|" S QNPZ=$P(QN,"|",2),QN=$P(QN,"|")
 E  I QN[":" S QNPZ=$P(QN,":",2),QN=$P(QN,":")
 S STIT=STIT_$$RKV("Quantity",QN)_", "
 S STIT=STIT_$$RKV("Price",PRC)_", "
 S STIT=STIT_$$RKV("TotalPrice",QN*PRC)
 I $L(QNPZ) S STIT=STIT_" ,"_$$RKV("IconId",QNPZ)
 Q
 ;
MDF(STAM) ; 
 Q " ""Modifiers"":""[]"""
 ;
DELHZ(HZ) ; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCIBON
W4PCIBON(HZM) ; HAZAGAT HAZMANA LMAAREHET IBON [ 22.01.23 18:49 ] [ 18.10.22 06:16 ] [ 29.08.22 15:59 ] 
 N (JB,%ARG,%REM,HZM,LKHN,NMB,GLBV,GLBV1,P1HZOP,P1HZMET,P3PCHZ,NOPCMDB,BG)
 ;
 I $$SUPER^W3PRM Q
 I $$^W4HZMH(HZM) Q
 I $$^W4PIZUL(HZM) Q
 ;
 D ^W4IN,^W4INP
 I '$G(NOPCMDB),'$$MDBYAD^W4PRM D ^W4MDBPC(HZM)
 ;
 S SHB=0,BONTM=+$H_$TR($J($P($H,",",2),5)," ",0)
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N BG S BG=1
 D COMPBG(HZM)
 ;
 S NOPCTAW=$$NOPCTAW
 ;
 S MKRDLV=$$MKRDLV^W4HZMST(HZM)
 ;
 N EX S EX=0
 ;
 S ERMDP=0,NP=0 S DAT=$$^%L1DC(P1DZ,2),MANA=0,FRPC=1,PRBIT=0
 S DTHZ=P1DZ
 S III=0
 ;
 S %SCRN=HZSCR,I=0,SM=1 K PRINTF
 ;
 K @$$^W4PC1
 ;
 S TAWMSL=$$^W4TAWMSL(HZM)
 S FBAR=0 S NMB=$$NMB^W4HZMST(HZM)
 ;
 N N0,N1,N2,N3,ST
 S N0=1 I $G(P1HZMET) S N0=P1HZMET
 ;
BODY ; ------------------------------------- BODY ----------------------
 ;
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 N TMPBG S TMPBG=$E(TMP,1,$L(TMP)-1)_","
 S KT=0
 N N,N1,N2,N3,CD,NM,QN,PRC,HR
 ;
 F N1=BG:1 Q:'$D(@$$^W4ORD@(HZM,N1))  D
 .N ST S ST=$G(^(N1))
 .S REF=$$^W4ORD_"(HZM,N1)" 
 .S PAR=$P(ST,"\")
 .
 .I PAR,$$DD^W4EZA(PAR) D  Q
 ..S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ...S ST2=$G(^(N2))
 ...S REF1=$$^W4ORD_"(HZM,N1,N2)"
 ...S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ....S ST=$G(^(N3))
 ....S REF2=$$^W4ORD_"(HZM,N1,N2,N3)"
 ....Q:$$NOPRINT($G(@REF2))
 ....I $$SETWASPRINT(REF2)
 ....;
 ....I $P(ST,"\") D  Q
 .....S KT=KT+1
 .....S CD=$P(ST,"\")
 .....S NM=$P(ST,"\",2)
 .....S PRC=$P(ST,"\",7)
 .....S QN=$P(ST,"\",3)
 .....S HR=$P(ST,"\",6)
 .....S @TMP@(KT)=CD_"\\"_NM_"\"_PRC_"\"_QN_"\\"_$J(PRC*QN,2,2)_"\"_HR
 ....
 ....I $P(ST,"\",4) D  Q
 .....S CD=$P(ST,"\",4)
 .....S NM=$P(ST,"\",5)
 .....S PRC=$P(ST,"\",7)
 .....S QN=$P(ST,"\",3)
 .....S HR=$P(ST,"\",6)
 .....S @TMP@(KT,CD)=NM_"\"_PRC_"\"_QN_"\"_HR
 .
 .N ST S ST=$G(@REF)
 .I '$$NOPRINT(ST) D
 ..S KT=KT+1
 ..S @TMP@(KT)=$$CLRMOD(ST)
 ..I $$SETWASPRINT(REF)
 .
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZM,N1,N2)) Q:N2=""  D
 ..N REF1
 ..S REF1=$$^W4ORD_"(HZM,N1,N2)"
 ..N ST S ST=$G(@REF1)
 ..I '$$NOPRINT(ST) D
 ...S @TMP@(KT,N2)=$$CLRMOD(ST)
 ...I $$SETWASPRINT(REF1)
 ..
 ..S N3="" F  S N3=$O(@$$^W4ORD@(HZM,N1,N2,N3)) Q:N3=""  D
 ...N REF2
 ...S REF2=$$^W4ORD_"(HZM,N1,N2,N3)"
 ...N ST S ST=$G(@REF2)
 ...I '$$NOPRINT(ST) D
 ....S @TMP@(KT,N2,N3)=$$CLRMOD(ST)
 ....I $$SETWASPRINT(REF2)
 ;
 N PRDEL S PRDEL=0
 ;
 S %ARG("GLORD")=TMP
 ;
 F N1=BG:1 Q:'$D(@TMP@(N1))  D
 .N ST S ST=$G(^(N1)) K ADOM,DBL,MDPMAIN,MDP
 .S (REF,REF0)=TMPBG_"N1)",N2=""
 .K DBL D LINE D
 ..N P1H11 S P1H11=1
 ..S PAR=$P($G(@TMP@(N1)),"\")
 ..I $P($G(@TMP@(N1)),"\",5)<0 S PRDEL=1
 ..D ^W4N2V(HZM,N1)
 ..N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 ..
 ..S N2V="" K PRINTF1 F P1H=1:1 S N2V=$O(@VRMHZ@(N2V)) Q:N2V=""  D
 ...S N2=$G(^(N2V)) Q:N2=""
 ...S ST=$G(@TMP@(N1,N2))
 ...
 ...N REF S REF=TMPBG_"N1,N2)"
 ...
 ...K DBL,COL0 N MDP D LINE2 ;;D DBL2 K DBL
 ...
 ...N PAR,MDPMAIN1 S FRPC=1
 ...S N3="" F P1H1=1:1 S N3=$O(@TMP@(HZM,N1,N2,N3)) Q:N3=""  D
 ....K DBL N MDP S FRPC=(P1H1=1) D LINE3 S FRPC=(P1H1=1) ;;D DBL3 K DBL
 ..K @VRMHZ
 ;
 I N1'>1 G EBODY
 I N1>1 S @$$^W4ORD@(HZM,"H")=N1-1
 ;
 S W4IBON=$$^W4IBON
 S SHB="",K=0 F  S SHB=$O(@W4IBON@(P1DZ,BONTM,HZM,SHB)) Q:SHB=""  S K=K+1
 I 'K G EBODY
 ;
 ;----------------------------------------------------------------------
 N ORDTYPE S ORDTYPE=$S(BG>1:5,1:1)
 S ST=$$KOTHZM(HZM,ORDTYPE)_"""Items"": [",PREVMAIN=1,FIRSTMAIN=1,ADDS=0
 ;
 S SHB="" F  S SHB=$O(@W4IBON@(P1DZ,BONTM,HZM,SHB)) Q:SHB=""  D
 .N RF S RF=$G(^(SHB))
 .S ST=ST_" "_$$ITHZM(RF)_" "
 ;
 I ADDS S ST=ST_" ] " 
 N ST2 S ST2=$$SPA^%L1FRM(ST) I $E(ST2,$L(ST2))'="," S ST=ST_" ,"
 S ST=ST_" "_$$MDF_" } ] }"
 ;
EBD0 K PRINTF,PRINTF1,pc
 S MAC1=$$^W4ORD_"(HZM)",MAC2=$$^W4GL("P1HZ0")_"(HZM)" D ^%S1GC1
WRITE ;
 S DIR=$G(@$$^W4PRM@("IBON","DIR"))
 S URL=$G(@$$^W4PRM@("IBON","URL"))
 ;
 S FILE=DIR_"IB"_$ZD($H,"YYMMDD")_"_"_$TR($J($P($H,",",2),5)," ",0)_"_"_$$^W4MYDVN_"_"_HZM
 ;
 C FILE:(DELETE)
 O FILE:(NEWVERSION:REWIND:WRITE)
 U FILE
  W ST,!
 C FILE
 ;
 S CMD="iconv -c -f cp1255 -t utf-8 "_FILE_" -o "_FILE_".utf8"
 ZSY CMD
 ;
 S CMD="curl -k -H ""Content-Type:application/json"" -d@"_FILE_".utf8 "_URL_" > null"
 ZSY CMD
 D
 .N DT,DAT,SH S DT=$$^W4DZ
 .S DAT=$ZD(DT,"YYMMDD") 
 .S SH=$O(@$$^W4GL("CMDIB")@(DAT,999999),-1)+1
 .S @$$^W4GL("CMDIB")@(DAT,SH)=CMD
 .S @$$^W4GL("CMDIB")@(DAT,SH,"ZSY")=$ZSY
 .I $ZSY D
 ..H 1 ZSY CMD
 ..S SH=$O(@$$^W4GL("CMDIB")@(DAT,999999),-1)+1
 ..S @$$^W4GL("CMDIB")@(DAT,SH)=CMD
 ..S @$$^W4GL("CMDIB")@(DAT,SH,"ZSY")=$ZSY
 ;
EBODY L  K @$$^W4MAIN("TMP")
 K %ARG("GLORD")
 Q
 ;
 ;
CLRMOD(TX) ;
 S $P(TX,"\",10)=""
 Q TX
 ;
COMPBG(HZM) ;
 N N1
 D  ;
 .S N1=9999 F  S N1=$O(@$$^W4ORD@(HZM,N1),-1) Q:N1=""  S A=$G(^(N1))  I A["@@",A'["@@!" Q
 .S BG=N1+1
 Q
 ;
SMB(ST) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@!" Q "!"
 I NOMOD["@@?" Q "?"
 I NOMOD["@@+" Q "+"  ; -- 30/09/09
 Q ""
 ;
CODP(ST) Q $P(ST,"\")
NM(ST) Q $P(ST,"\",3)
QN(ST) Q $P(ST,"\",5)
 ;
HRP(ST) N HRP S HRP=$P(ST,"\",8)
 Q $$CLRHR(HRP)
 ;
NOMOD(ST,PR) Q $P(ST,"\",10)
 ;
SETNOMOD(REF,VL,PR) S $P(@REF,"\",10)=VL
 Q
 ;
SETNOMODST(VL) ;
 S $P(ST,"\",10)=VL
 Q
 ;
DEFMDP(PRINT) ;
 N NOPC S NOPC=""
 D DEFMDP^W4DEFPRN($G(PRINT))
 Q
 ;
DEFMDP1 N NOPC S NOPC="" D DEFMDP1^W4DEFPRN
 Q
 ;
LINE ; --- HADPASAT PARIT ROSHI / RAGIL
 ;
 S ERMDP=0,OK=0,MIN=0,FLAG="",PAR=$P(ST,"\") Q:PAR=""  N PRT
 Q:$E(PAR)?.P
 N ST0 S ST0=ST
 ;
 S PRMAIN=$P(ST,"\",5)
 ;
 N NOPC S NOPC=""
 I PAR="0" Q:$$NOPRINT(ST)  D  G EL
 .N MDP,MDP1,PRINT
 .S MDP=$P(ST,"\",11)
 .I MDP="",$$NODLVORD^W4PRM S MDP=$$ALLPRN^W4DEFPRN
 .I MDP="",'$$NODLVORD^W4PRM S MDP=0
 .I MDP D PCLP
 .Q  ;
 ;
 I $$NOPRINT(ST) Q
 Q:PAR=""
 ;
 D  ;--> %MDP,ERMDP
 .N PRINT,MDPS S MDP=$$PRINTIG^W3PRMDP(PAR) I MDP="" Q
 .D LINEPRN(MDP) Q:$G(MDP1)=""
 ;
 I $$DD^W4EZA(PAR),$$PRMANA=1 G EL
 ;
 I $P(ST,"\",2)[">",$G(P1HZOP)="BIT1",P1PCBIT'=2 S ERMDP=2
 ;
 I $$QN(ST)<0 D
 .I '$G(P1PCBIT) S ERMDP=2 Q
 .I $G(P1PCBIT)<1,'$$PRMV($$HRP(ST)) S ERMDP=2 Q
 ;
 D:'ERMDP DEFPRN(PAR) I ERMDP,ERMDP'=2 Q
 ;
 I ERMDP=2 G:$G(MDP) EL
 ;
LINEP ;
 I $G(MDP)=0 G EL
 I '$D(%MDP)!'$G(PRINT) Q
 Q:ERMDP
 ;
 D CLMANA(8)
 ;
LINEP1 I $$QN(ST)<0 S TXT("R")=1,ADOM=1
 D PCLP
 I $G(PRINT) S FIRSTHD(PRINT)=0
 ;
EL ;
 ;;I $$SETWASPRINT(REF) Q
 ;;S OK=1
 ;;N RF S RF=@REF I $$^W4MSD(NMB)!TAWMSL D PLU2
 Q
 ;
 ;
LINEPRN(MDP) ;--> PRINT,%MDP
 D DEFMDP1 Q:MDP1=""  D HZ^W4MDP(MDP1)
 Q
 ;
 ;
PCLP ;
 ;
 D BONSCR
 Q
 ;
CLMANA(DLM) ;
 Q:'$D(MANA)  N OLDMANA
 S OLDMANA=MANA,MANA=0
 D DEFMANA($P(ST,"\",DLM))
 I MANA,$$PRMANA D
 .S $P(ST,"\",DLM)=$$^W4CLRMN($P(ST,"\",DLM))
 I 'MANA S MANA=OLDMANA
 I $$PRMANA>1,DLM=8 S MANA=0 ; -- MIUN LEFI TOSAFOT
 Q
 ;
ERMDP(PAR) ;
 S ERMDP=1
 I $$NOPCTAW S ERMDP=2
 Q
 ;
NOPCTAW(STAM)
 I $$MTAW^W4MTAW,'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $G(NMB),$$TAW^W4DLPK(NMB),'$G(@$$^W4PRM@("TAWHZ")) Q 1
 I $D(P1HZOP) Q 1
 Q 0
 ;
QNT(ST) Q $P(ST,"\",3)
HRT(ST) Q $$CLRHR($P(ST,"\",4))
 ;
CLRHR(HR)
 S HR=$G(HR)
 I HR'["[[" Q $TR(HR,"[]","--")
 Q $$CLRHR^W4HZTH(HR)
 ;
 ;
LINE2 ; --
 S PRMAIN=0
 N P1EZT,II,UR
 S UR=$S($D(N23):3,1:2)
 ;
 I UR=2,$D(@REF@(1)) Q
 ;
 S NP=NP+1,OK=0,ERMDP=0
 I $$NOPRINT(ST,UR) Q
 ;
 I $G(P1HZOP)="BIT" S ERMDP=2
 ;
 I UR=3,$G(PAR0) S PAR=PAR0
 ;
 I $L($G(PAR)),$$^W4EZAT(PAR) S PRMAIN=0 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .N P1EZT I $$DD^W4EZT(PAR)!$G(@$$^W4PRM@("AINIFRAD")) S P1EZT=""
 .D DEFPRN(N2)
 ;
 D  G:ERMDP=2 LN2 Q:ERMDP  G LINE21
 .I UR=3,$G(@$$^W4PRM@("AINIFRAD"))&($G(DLT2)>20) S P1EZT=""
 .I $$NOPCDEL(ST) S ERMDP=2 Q
 .D:'ERMDP DEFPRN(N2)
 ;
LINE21 ;
 ;--------------------- AI -------------------------
 ;
PT D PCLT ; --- !!!! -- PRINT LINE
 ;
LN2 ;
 ;;I $$SETWASPRINT(REF,UR) Q
 ;;
 ;;I UR=3 D SUM3($G(@REF)) G LN21 ; --- LEV 3 ADDONS
 ;;
 ;;S COLP=$P(@($P(REF,",",1,2)_")"),"\",5)
 ;;N RF S RF=$G(@REF) N PAR S PAR=N2
 ;;
 ;;D:$$^W4MSD(NMB)!TAWMSL PLU3 S OK=1
 ;
LN21 ;
 Q
 ;
 ;
PCLT ;
 D BONSCR
 Q
 ;
NOPCDEL(ST) ;
 I $$QNT(ST)<0,'$G(P1PCBIT) Q 1
 I $$QNT(ST)<0,$G(P1PCBIT)<1,'$$PRMV($$HRT(ST)) Q 1
 ;;I '$$QNT(ST) Q 1  ; -- 20/10/20
 Q 0
 ;
CODTT3(ST) Q $P(ST,"\",4)
NMT3(ST) Q $P(ST,"\",2)
NMTT3(ST) Q $P(ST,"\",5)
MHT3(ST) Q $P(ST,"\",7)
HRT3(ST) Q $P(ST,"\",6)
QNT3(ST) Q $P(ST,"\",3)
 ;
 ;
LINE3 ;
 N N23,REF S N23=N2
 N ST
 S REF=TMPBG_"N1,N23,N3)",ST=$G(@REF)
 N PAR0 S PAR0=$P($G(@TMP@(N1)),"\")
 I $$CODP(ST)'="" S PAR=$$CODP(ST),COL0=$$QNT3(ST)
 N COL3 S COL3=$$QNT3(ST)
 ;
 I $$NOPRINT(ST,3) Q
 ;
 S CODP3=0
 ;
 I $$CODP(ST)'="" D  S FRPC=1,CODP3=1 D LINE2 S:$G(MDP) MDPMAIN1=MDP Q
 .S MDPMAIN1=""
 .S ST=$$NMT3(ST)_"\"_$$MHT3(ST)_"\"_COL0_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 .D SETHR3
 .Q:'$$^W4EZAT(PAR0)
 .
 .N STT S STT=$G(@TMP@(N1,N23,N3+1)) Q:STT=""
 ;
 ;--- PRINT ADDONS LEV 2
 N N2,PRUR S PRUR=2
 S N2=$$CODTT3(ST)
 ;
 S ST=$$NMTT3(ST)_"\"_$$MHT3(ST)_"\"_$G(COL3,1)_$$DOP^W4PIZZA($$QNT3(ST))_"\"_$$HRT3(ST)_"\"_$P(ST,"\",8,25)
 ;
 D SETHR3
 D LINE2
 Q
 ;
 ;
SETHR3 ;
 N REF2,ST2
 S REF2=TMPBG_"N1,N23)",ST2=$G(@REF)
 I '$$^W4DEFMN($P(ST,"\",6)),$$^W4DEFMN($P(ST2,"\",4)) D
 .S $P(ST,"\",6)=$P(ST2,"\",4)_" "_$P(ST,"\",6)
 Q
 ;
SUM3(ST) ;
 N PAR
 I $$CODP(ST)'="" Q
 S PAR="A-"_$$CODTT3(ST)
 S COL=$G(COL0),PRC=0,SUM=0 D PLT
 Q
 ;
 ;
BONSCR ;
 S SHB=$O(@$$^W4IBON@(P1DZ,BONTM,HZM,99999),-1)+1
 N REF1 S REF1=$P(REF,"(")_"("
 ;
 N J F J=1:1:$L(REF,",") D
 .N IND S IND=$P(REF,",",J)
 .I IND["(" S IND=$P(IND,"(",2)
 .I IND[")" S IND=$P(IND,")")
 .I J>1 S IND=$G(@IND)
 .I $E(IND)'="""" S IND=""""_IND_""""
 .I $E(IND)="""",$E(IND,$L(IND))'="," S IND=IND_","
 .S REF1=REF1_IND
 ;
 I $E(REF1,$L(REF1))="," S REF1=$E(REF1,1,$L(REF1)-1)
 S REF1=REF1_")"
 ;
 S @$$^W4IBON@(P1DZ,BONTM,HZM,SHB)=REF1
 Q
 ;
 ;
PLU D PLU^W4HZMPC
 Q
 ;
PLU2 ;
 D PLU2^W4HZMPC
 Q
 ;
 ;
PLU3 ;
 D PLU3^W4HZMPC
 Q
 ;
 ;
PLT ;
 D PLT^W4HZMPC
 Q
 ;
 ;
DEFPRN(PRT) ;
 N NOPC S NOPC=""
 D ^W4DEFPRN(HZM,PRT)
 Q
 ;
 ;
DEFMANA(CMT) ;
 S MANA=$$^W4DEFMN(CMT)
 Q
 ;
 ;
 ;
QNPIZZA(C) ;
 Q $$QNPZ^W4PIZZA(C)
 ;
 ;
SBR(HR) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1SBR")@(N)) Q:N=""  I $$SPA^%L1FRM(^(N))=$$SPA^%L1FRM(HR) S OK=1 Q
 Q OK
 ;
 ;
MYDEV(STAM) ;
 Q $$^W4MYDVN
 ;
 ;
NOPRINT(ST,UR) ;
 N NOMOD S NOMOD=$$NOMOD(ST)
 I NOMOD["@@"&'$D(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@!" Q 1
 I NOMOD["@@@"&$G(P1HZMET)&'$G(DBL) Q 1
 I NOMOD["@@@"&$D(P1HZMET("ETEK"))&'$G(DBL) Q 1
 I NOMOD["@@+"&$G(DBL)&'$G(P1HZMET) Q 1
 I NOMOD["@@@+" Q 1
 Q 0
 ;
 ;
SETWASPRINT(REF,UR) ;
 N REFC S REFC=$G(@REF)
 N SMB S SMB=$$SMB(REFC)
 S UR=$G(UR)
 ;
 I $G(P1HZMET),'$G(DBL),$$NOMOD(REFC)["@@@" Q 1
 ;
 I $G(P1HZMET),'$D(P1HZMET("SHZM")),$$NOMOD(REFC,UR)'["@@!" D
 .D SETNOMOD(REF,"@@@"_SMB,UR)
 ;
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@" D SETNOMOD(REF,"@@+",UR)
 I $G(DBL),$G(LASTDBL),DBL=LASTDBL,$$NOMOD(REFC,UR)="@@@" D SETNOMOD(REF,"@@@+",UR)
 ;;W "REF="_REF_"  @REF="_@REF,!
 I $$NOMOD(REFC,UR)["@@" Q 1
 ;
 D SETNOMOD(REF,"@@"_$S($G(P1HZOP):"@",1:""),UR)
 Q 0
 ;
 ;
PRMANA(STAM) ;
 Q $$MANA^W4PRM
 ;
ERMDP2 ;
 S ERMDP=2
 Q
 ;
PRMV(HR) ;
 Q $$PRMV^W4HZPCFN(HR)
 ;
ATTN(STAM) ; 
 Q $$ATTN^W4HZPCFN(HR)  
 ;
KOTHZM(HZM,ORDTYPE) ;
 S ST="{"
 S ST=ST_$$RKV("OrderNo",HZM)_","
 N RESHET S RESHET=$G(@$$^W4PRM@("IBON","MAIN"))
 S ST=ST_$$RKV("Chain",RESHET)_","
 N STORE S STORE=$G(@$$^W4PRM@("IBON","STORE"))
 S ST=ST_$$RKV("Store",STORE)_","
 S ST=ST_$$RKV("Terminal",$$^W4MYDVN)_","
 S MKBL1=$$^W4NAME($$MKBL^W4HZMST(HZM))
 S ST=ST_$$RKV("Cashier",$$CLR(MKBL1),"H")_","
 S ST=ST_$$RKV("Date",$ZD($H,"MMDDYYYY"))_","
 S ST=ST_$$RKV("Time",$ZD($H,"246060"))_","
 N CUSTNM S CUSTNM=$$LKHNM^W4HZMST(HZM)
 I $$HZM^W4MSD(HZM),CUSTNM="" D
 .S CUSTNM=$$HRAED^W4HZMST(HZM)
 S CUSTNM=$$CLR(CUSTNM)
 S ST=ST_$$RKV("CustomerName",CUSTNM,"H")_","
 ;
 N PELE S PELE=$$PELE^W4HZMST(HZM)
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I PELE="" S PELE=$$PELE^W4L(NMB)
 I PELE="" S PELE=$$TEL^W4L(NMB)
 I $E(PELE,1,2)'="05",$E(NMB,1,2)="05" S PELE=NMB
 S ST=ST_$$RKV("CustomerPhone",PELE)_","
 ;
 ;;N DELHZ S DELHZ=$$^W4DEL(HZM)
 ;;N ORDTYPE S ORDTYPE=$S(DELHZ=HZM:2,DELHZ:3,$G(PRDEL):4,BG>1:5,1:1)
 ;
 S ST=ST_$$RKV("OrderType",ORDTYPE,"N")_","
 S ST=ST_$$RKV("Total",$$TSHL^W4HZMST(HZM),"N")_","
 N TAW S TAW=$S($$TAKEAWAY(HZM):"true",1:"false")
 I $$PAPJ^W4PRM,$$^W4KIOSKO(HZM) S TAW="false"
 S ST=ST_$$RKV("IsTakeAway",TAW,"B")_","
 N DLV S DLV=$S($$HZM^W4MSL(HZM)&(TAW="false"):"true",1:"false")
 I $$PAPJ^W4PRM,$$^W4KIOSKO(HZM) S DLV="false"
 S ST=ST_$$RKV("IsDelivery",DLV,"B")_", "
 I $$MDBYAD^W4PRM D REFORD(HZM)
 Q ST
 ;
RKV(NM,VL,PR) ;
 I $G(PR)="H" S VL=$$HB(VL)
 I $G(PR)="I" S VL=$P(VL,".")
 I $G(PR)'="N",$G(PR)'="B",$G(PR)'="I" S VL=""""_VL_""""
 Q """"_NM_""": "_VL
 ;
HB(VL) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 Q $TR($$INVH^%L1FRM(VL),TS0,TS1)
 ;
CLR(TX)
 Q $TR(TX,$$SMBS," ")
 ;
SMBS(STAM) ;
 Q "$%^&()<>/\[]{}?""':,"
 ;
ITHZM(RF) ;
 N (JB,RF,PREVMAIN,FIRSTMAIN,ADDS,HZM,BG,PRDEL)
 N A S A=$G(@RF)
 N IND
 S IND=$P($P(RF,"(",2),")")
 S STIT=""
 ;
 I $L(IND,",")=2 D
 .I ADDS S STIT=STIT_" ] "
 .S ADDS=0
 .
 .I 'FIRSTMAIN D
 ..N STIT2 S STIT2=$$SPA^%L1FRM(STIT)
 ..I $E(STIT2,$L(STIT2))'="," S STIT=STIT_" ,"
 ..S STIT=STIT_" "_$$MDF_" } ,"
 .
 .S PREVMAIN=1
 .S CD=$P(A,"\")
 .S NM=$P(A,"\",3)
 .D CDNM(CD)
 .S PRC=$P(A,"\",4)
 .S QN=$P(A,"\",5)
 .S TSF=$P(A,"\",6)
 .S SUM=$P(A,"\",7)
 .S HR=$P(A,"\",8)
 .S STIT=STIT_"{" D SETIT
 .I FIRSTMAIN S FIRSTMAIN=0
 ;
 I $L(IND,",")=3 D
 .S CD=$P(IND,",",3)
 .S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 .I PREVMAIN S STIT=STIT_" , ""SubItems"": ["
 .S NM=$P(A,"\")
 .D CDNM(CD)
 .S PRC=$P(A,"\",2)
 .S QN=$P(A,"\",3)
 .S HR=$P(A,"\",4)
 .I ADDS S STIT=STIT_", "
 .S STIT=STIT_"{" D SETIT S STIT=STIT_"}"
 .S PREVMAIN=0,ADDS=1
 ;
 I $L(IND,",")=4 D
 .I PREVMAIN S STIT=STIT_" , ""SubItems"": [" S PREVMAIN=0
 .I $P(A,"\") D
 ..S CD=$P(A,"\")
 ..S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 ..S NM=$P(A,"\",2)
 ..D CDNM(CD)
 ..S QN=$P(A,"\",3)
 ..S PRC=$P(A,"\",7)
 ..S HR=$P(A,"\",6)
 ..I ADDS S STIT=STIT_", "
 ..S STIT=STIT_" { " D SETIT S STIT=STIT_" } "
 ..S ADDS=1
 .
 .I $P(A,"\",4) D
 ..S CD=$P(A,"\",4)
 ..S:$E(CD)="""" CD=$E(CD,2,$L(CD)-1)
 ..S NM=$P(A,"\",5)
 ..D CDNM(CD)
 ..S QN=$P(A,"\",3)
 ..S PRC=$P(A,"\",7)
 ..S HR=$P(A,"\",6)
 ..I ADDS S STIT=STIT_", "
 ..S STIT=STIT_" { " D SETIT S STIT=STIT_" } "
 ;
 Q STIT
 ;
 ;
SETIT ;
 S STIT=STIT_$$RKV("Code",CD)_", " 
 ;;I NM["""" S NM=$$RPL^%L1FRM(NM,"""","\""")
 S NM=$$CLR(NM)
 N DELHZ S DELHZ=$$^W4DEL(HZM)
 N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 N TYP S TYP=$S(DELHZ=HZM:2,DELHZ:3,QN<0:4,BG>1:5,1:1)
 S STIT=STIT_$$RKV("Type",TYP,"N")_", "
 S STIT=STIT_$$RKV("Name",NM,"H")_", "
 ;
 S HR=$$^W4CLRMN(HR)
 S HR=$$^W4CLRMVC(HR)
 S HR=$$RPL^%L1FRM(HR,"[ ","-")
 S HR=$$RPL^%L1FRM(HR," ]","-")
 S HR=$$CLR(HR)
 ;
 S STIT=STIT_$$RKV("Message",HR,"H")_" ,"
 ;
 N QNPZ S QNPZ=""
 I QN["|" S QNPZ=$P(QN,"|",2),QN=$P(QN,"|")
 E  I QN[":" S QNPZ=$P(QN,":",2),QN=$P(QN,":")
 S STIT=STIT_$$RKV("Quantity",QN,"I")_", "
 S STIT=STIT_$$RKV("Price",PRC,"N")_", "
 S STIT=STIT_$$RKV("TotalPrice",QN*PRC,"N")
 I $L(QNPZ) S STIT=STIT_" ,"_$$RKV("IconId",QNPZ)
 Q
 ;
MDF(STAM) ; 
 Q " ""Modifiers"":[]"
 ;
CDNM(CD) ;
 I $$CDNM^W4MDBPC,CD D
 .N TX S TX=$$SPA^%L1FRM($$SHEM^W4P(CD))
 .I $L(TX) S NM=TX
 Q 
 ;
REFORD(HZM) ; 
 N REFORD
 S REFORD=$$WEB^W3MAIN
 I $E(REFORD,$L(REFORD))'="/" S REFORD=REFORD_"/"
 S REFORD=REFORD_"w4mdbpc.jsp?ORD="_HZM
 S REFORDOBJ="{""orderDone"":"""_REFORD_"""}"
 S ST=ST_"""WebHooks"":"_REFORDOBJ_", "
 Q
 ;
TAKEAWAY(HZM) ; 
 I $$TAKEAWAY^W4HZMST(HZM) Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCINP
W4PCINP(PRM) ; [ 05.12.24 20:08 ] [ 10.03.16 15:08 ] [ 11.01.13 09:12 ] 
 N (JB,%ARG,%REM,PRM)
 N MKRYD S MKRYD=$$GET^%W1PRM("MKRYD")
 D PUT^%W3DEB("W4PCINP","PRM=PRM & MKRYD=MKRYD")
 S NUMBER=$P(PRM,";")
 ;
 I $P(PRM,";",2)="",NUMBER,NUMBER'?1N.N D
 .N VD S VD=$TR(NUMBER,"0123456789","")
 .I VD="T" S VD="ITM"
 .I VD="Z" S VD="ITZ"
 .S $P(PRM,";",2)=VD
 ;
 S VD=$$VD
 S CODDOC=$$CODDOC^W4KOTHSB(VD)
 S DOPNOM=$$DOPNOM(CODDOC)
 S NOM=+NUMBER
 S NMB=NOM_DOPNOM
 S WHO=$P(PRM,";",3)
 I WHO="" S WHO=$$GETLKH^W4DOC
 I WHO="" Q "NOSPK"
 ;
 S MAKOR=$$MAKOR(NOM_CODDOC)
 ;
 D ^W4MDPPC I '$G(PRINT) Q "PRINTERNOTDEFINED"
 ;
 ; ---------------------- PECH KOT ------------
 D PUT^%W3DEB("W4PCINP","PRINT=PRINT&NUMBER=NUMBER&NMB=NMB&NOM=NOM")
 K @$$^W4MAIN("TMPS111")
 ;
 S OK=$$HD(NOM_";"_CODDOC_";"_MAKOR_";"_WHO) I OK'=1 Q OK
 D ST^W4HZTH
 K @$$^W4MAIN("TMPS111")
 ;
 S GL=$$^W4GL("W4INP")_"("""_WHO_""")"
 S PRMAM=$$PRMAM^W4DOC(NOM)
 ;
 D KAV
 S TXT=":  mekq :         xe`z       :   cew  :" D W
 D KAV
 ;
 D PCINP
 D KAV
 ;
 D FOOT(NMB)
 I MAKOR D KILL^%W1PRM("MKRYD")
 D CUT
 D PTH
 Q "OK"
 ;
 ;
HD(PRM) ;
 Q $$^W4HDHMK(PRM)
 ;
FOOT(NMB) ;
 S PRMAM=$G(PRMAM)
 N NOM S NOM=+NMB
 D TOT^W4DOC(NOM)
FOOT1 ;
 N TXT
 D NIS
 S TXT=NIS_$J(SAH,7,2)_$S(PRMAM:" : k""dq",1:" : n""rn iptl k""dq") D W
 I 'PRMAM D
 .S SAHM=SAH*(100+AHMAM)*.01
 .S TXT=NIS_$J(SAHM,7,2)_" : n""rn llek k""dq" D W
 ;
 I DISCA!DISCPRC S TXT=NIS_$J(DISCA,7,2)_" : "_DISCPRC_"% dgpd" D W
 I DISCNIS S TXT=NIS_$J(DISCNIS,7,2)_" : g""y dgpd" D W
 I DMSH S TXT=NIS_$J(DMSH,7,2)_" : gelyn inc" D W
 I PRMAM,LMAM S TXT=NIS_$J(LMAM,7,2)_" : n""rn iptl" D W
 I MAM S TXT=NIS_$J(MAM,7,2)_" : n""rn" D W
 I IGUL S TXT=NIS_$J(IGUL,7,2)_" : lebir" D W
 S TXT=NIS_"<B>"_$J(SHUM,7,2)_"<N> : melyzl" D W
 Q
 ;
KAV ;
 S TXT=$TR($J("",39)," ","-") D W
 Q
 ;
W S SM=+$G(SM) D S1^W4HZTH
 Q
W1 S SM=+$G(SM) D S12^W4HZTH
 Q
 ;
PCINP ;
 N I S SAH=0
 F I=1:1 Q:'$D(@GL@(NOM,I))  D
 .S ST=$G(^(I))
 .S CD=$$CODE^W4DOC(NOM,I)
 .S NM=$$NAME^W4DOC(NOM,I)
 .S PRC=$$PRC^W4DOC(NOM,I)
 .S QN=$$QN^W4DOC(NOM,I)
 .S DISCAH=$$DISC^W4DOC(NOM,I)
 .S BFTAX=$$BFTAX^W4DOC(NOM,I)
 .S AFTAX=$$AFTAX^W4DOC(NOM,I)
 .
 .S TXT=""
 .I +QN=1 D
 ..S TXT=TXT_$J(PRC,8,2)
 ..S TXT=TXT_$J(NM,21)
 .E  D
 ..S TXT=TXT_$J(NM,29)
 ..S TXT=TXT_$J(CD,9)
 .D W
 .
 .I +QN'=1!DISCAH D
 ..S TXT=$J($S(PRMAM:AFTAX,1:BFTAX),8,2)_" = "
 ..I DISCAH D
 ...S TXT=TXT_"-"_+DISCAH_"%  "
 ..I +QN'=1 S TXT=TXT_" "_$J(PRC,7,2)_" X "_QN
 ..D W
 ..N ST S ST="" D W1
 .;
 .S SAH=SAH+$S(PRMAM:AFTAX,1:BFTAX)
 Q
 ;
 ;
 ;
VD(STAM)
 I $L($P(PRM,";",2)) Q $P(PRM,";",2)
 Q "IHB"
 ;
MAKOR(NMB)
 I $$GET^%W1PRM("MKRYD")=NMB Q 1
 Q 0
 ;
NIS S NIS="g""y "
 Q
DOPNOM(CODDOC) ;
 Q $S(CODDOC="ITM":"T",CODDOC="ITZ":"Z",1:"")
 ;
CUT ;
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
PTH ;
 Q:$$MZSM^W4PRM
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=$G(%MDP("P"))
 D ^W4PTHDLY
 Q
 
 
 

W4PCLHB
W4PCLHB(NUMBER) ;        [ 29.12.25 17:43 ] [ 19.06.25 16:56 ] [ 25.11.24 11:11 ] 
 ; --- PRINT INVOICE TO CSR PRINTER
 N (JB,%ARG,%REM,NUMBER)
PCHB ;
 S CODDOC="H"
 S ORDLIST=$P(NUMBER,";",2)
 S ORDCONT=$P(NUMBER,";",3)
 S NUMBER=$P(NUMBER,";")
 ;
 K %L1SCPC
 ;
 D KOT^W4KOTHSB
 D ^W4HSBGET(NUMBER,CODDOC)
 ;
 S LKH=$G(W4HSB("LKH")) Q:'$L(LKH) "NOCUST"
 D GLHB^W4LHBNEW
 ;
 S ETEK=1
 I $D(@GLHB@(NUMBER,"MKR")) D
 .S ETEK=0
 .K @GLHB@(NUMBER,"MKR")
 ;
 D ^W4MDPPC I '$L($G(PRINT))!'$D(%MDP) Q "PRINTERNOTDEFINED"; ***
 D ^W4PCESEK(MYNAME,1,GWPC,$G(%MDP("B")),$G(%MDP("N")))
 ;
 D ^W4HSBGET(NUMBER,CODDOC)
 ;
 D SETSCPC ; -- PARAMETRIM LE KOTERET
 ;
 S TMPPC=$$^W4MAIN("TMPSCPC")
 K @TMPPC
 ;
 S K=0
 S I="" F  S I=$O(@GLHB@(NUMBER,"HB",I)) Q:I=""  I I  D
 .N ST S ST=$G(^(I))
 .N BF,AF S BF=$P(ST,"\",1),AF=$P(ST,"\",3)
 .I NUMBER<0 S BF=-BF,AF=-AF
 .S ST=$J(BF,2,2)_"\"_$P(ST,"\",2)_"\"_$J(AF,2,2)
 .S K=K+1
 .S @TMPPC@(K)=ST
 ;
 S CODS="P1HBA1"
 ;
 S RES=$$^W4PCMK(CODS)
 I RES'="OK"!'ORDLIST Q RES
 ;
 ;;I ORDCONT=1&'ETEK!(ORDCONT=2) D
 D  I RES'="OK" Q RES
 .D SETSCPC
 .;
 .K @TMPPC S K=0
 .S I="" F  S I=$O(@GLHB@(NUMBER,"HZ",I)) Q:I=""  I I D
 ..N ST S ST=$G(^(I))
 ..S ST=$P(ST,"\",1,5)_"\"_$J($P(ST,"\",6),2,2)
 ..I $G(@$$^W4PRM@("PCHBMAZM")) D
 ...N HZ S HZ=$$SPA^%L1FRM($P(ST,"\")) Q:'HZ 
 ...S $P(ST,"\",3)=$$MAZMIN^W4HZMST(HZ)
 ..S K=K+1,@TMPPC@(K)=ST
 .;
 .S %L1SCPC(25)=I-1
 .;
 .S CODS="P1LHB1"
 .;
 .S RES=$$^W4PCMK(CODS)
 ;
 I ORDCONT=1&'ETEK!(ORDCONT=2) D
 .N I,ORD S I="" F  S I=$O(@GLHB@(NUMBER,"HZ",I)) Q:I=""  I I D
 ..N ST S ST=$G(^(I))  S ORD=$P(ST,"\") Q:'ORD
 ..D ^W4PCHB(ORD,0)
 ;
 K @TMPPC
 I 'ETEK G PCHB
 Q "OK"
 ;
 ;
SETSCPC ;
 S %L1SCPC(2)=MYKTV
 S %L1SCPC(71)=MYTEL
 S %L1SCPC(77)=MYESEK
 ;
 D ^W4MEUHAD
 ;
 S %L1SCPC(5)=$G(W4HSB("LKH"))
 S %L1SCPC(10)=$G(W4HSB("LKHNAME"))
 S %L1SCPC(12)=$G(W4HSB("TZ"))
 S %L1SCPC(15)=$G(W4HSB("KTV"))
 S %L1SCPC(19)=""
 I NUMBER<0 S %L1SCPC(19)="iekif"
 S %L1SCPC(20)=NUMBER
 I NUMBER<0 S %L1SCPC(20)=-NUMBER
 I NUMBER<0 D
 .N J F J="MAM","LMAM","TOT" D
 ..S W4HSB(J)=-$G(W4HSB(J))
 ;
 S %L1SCPC(21)=$G(W4HSB("TODATE"))
 S %L1SCPC(24)=$G(W4HSB("HBMAS"))
 S %L1SCPC(28)=$J($G(W4HSB("MAM")),2,2)
 S %L1SCPC(27)=$J($G(W4HSB("LMAM")),2,2)
 S %L1SCPC(36)=" "
 I $$USSUM^W4HBMAS($G(W4HSB("LMAM"))),'$G(W4HSB("HBMAS")) D
 .S %L1SCPC(36)="ef zipeayg oiba zeneyz qn zekpl oi`"
 ;
 I $G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)=": melyzl dxzi",%L1SCPC(45)=$J($$CBH^W4KLOST(LKH,%L1SCPC(21)),2,2)
 I '$G(@$$^W4PRM@("ITRA")) S %L1SCPC(44)=""
 ;
 S %L1SCPC(8)=" "
 I 'ETEK S %L1SCPC(22)="xewn"
 E  D
 .S %L1SCPC(8)=$G(W4HSB("ISSUETIME"))_" : xewn zwtd onf"
 .S %L1SCPC(22)=" wzrd"
 ;
 D
 .N I
 .S I="" S I=$O(@GLHB@(NUMBER,"HZ",I)) Q:'I
 .S %L1SCPC(25)=I-1
 ;
 I NUMBER<0,W4HSB("TOT")<0 S W4HSB("TOT")=-W4HSB("TOT")
 S %L1SCPC(30)=$J(W4HSB("TOT"),2,2)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCMK
W4PCMK(CODS) ;-- HADPASA LMADPESET KUPA  [ 28.02.17 12:19 ] [ 16.12.15 13:27 ] [ 24.06.12 16:30 ] 
 N (JB,%ARG,%REM,%L1SCPC,CODS)
 D ^W4MDPPC
 S %SCRN=CODS
 S %L1SCPC("SHP")=CODS
 S %L1SCPC("GLOB")=$$^W4PC_"(PRINT)"
 D PUT^%W3DEB("W4PCMK","PRINT=PRINT")
 ;
 I $G(PRINT)<3!($D(%MDP)<10) Q "NODEFPRINTER"
 S N="" F  S N=$O(%MDP(N)) Q:N=""  S %L1SCPC("MDP",N)=%MDP(N)
 ;
 S %L1SCPC("MDP","GWPC")=40
 S %L1SCPC("MDP","PG")=$C(10,10,10,10,10,10)
 S %L2("SM")=0
 S %L1STPC("RIGHT")=1
 ;
 D ^W4SCPC
 ;
 K %L1SCPC
 Q "OK"
 
 
 
 
 
 

W4PCMLZ
W4PCMLZ ;     [ 02.12.24 11:46 ] [ 06.06.22 18:29 ] [ 18.08.21 12:17 ] 
 N (JB,%REM,%ARG,DAT,P1X,DOCH,SGIRATJOM,MEK,DISP,PRMSD)
 D PUT^%W3DEB("W4PCMLZ","DOCH=DOCH&P1X=P1X&P1MSD=P1MSD")
 I $G(P1X),$G(PRMSD),P1X=2!(P1X>4) Q  ;
 I $G(P1X),'$G(PRMSD),(P1X<5&(P1X>1))!(P1X>6) Q  ;
 N DOCH1 S DOCH1=DOCH N DOCH S DOCH=$S(DOCH1="Y":"X",1:DOCH1)
 Q:$G(DOCH)=""
 K KAZAR I $G(@$$^W4PRM@("KZR")) S KAZAR=""
 I $G(DISP) S NOPC=""
 ;
 D ^W4IN,^W4MDPPC,^%L1TS
 ;
 S GLBL=$S('MRK:$$^W4GL("TOT")_"(DAT)",1:$$^W4GL("TOT")_"(DAT,MRK)")
 ;
 I $D(SGIRATJOM),DOCH="Z" D
 .S GLBL=$$^W4GL("Z1")_"(DAT,NZ)"
 .S NZ=$G(@$$^W4GL("Z"))+1
 ;
 S (SPDN,SBTL,SSHER,SHNH,SSOAD,SHZM,STIP)=0
 S (SHNHCIB,SZIC,SPDN)=0
 ;
 S STZ="" D STZ
 N OV S OV="migily" I $G(PRMSD) S OV="mixvln"
 N SM1 S SM1=10
 I $$SUPER^W3PRM!$$TAW^W4PRM S OV="(zei-) mi`tew"
 I $$HB S STZ=$$^%L1DC(DAT,1)_" - l "_OV_" g""ec " D STZ
 I '$$HB S STZ=$$PCTX("WAITERREPORT","S",$S($G(PRMSD):$$PCTX("WAITERS","S"),1:$$PCTX("COURIERS","S"))) D STZ
 D KAV
 ;
 K @$$^W4MAIN("VRM")
 N VT S VT="" F  S VT=$O(@GLBL@(VT)) Q:VT=""  D
 .S MLZ="" F  S MLZ=$O(@GLBL@(VT,1,MLZ)) Q:MLZ=""  D
 ..I $G(PRMSD),$L(MLZ)<5 Q
 ..I '$G(PRMSD),$L(MLZ)=5 Q
 ..S @$$^W4MAIN("VRM")@(MLZ,VT)=""
 ;
 S SM1=6
 S MLZ="" F III=1:1 S MLZ=$O(@$$^W4MAIN("VRM")@(MLZ)) Q:MLZ=""  I MLZ D
 .I $G(P1X("MLZ")),MLZ'=P1X("MLZ") Q
 .I $G(P1X("MSH")),MLZ'=P1X("MSH") Q
 .S NAME=$S($G(PRMSD):$$^W4NAME(MLZ),1:$G(@$$^W4GL("P1SL")@(MLZ)))
 .S STZ="" D STZ
 .I III>1 D KAVB
 .N SM1 S SM1=1,STZ=$G(%MDP("B"))_$$HBR^%L1FRM(NAME,12)_" "_$J(MLZ,5)_$G(%MDP("N"))
 .D STZ K SM1
 .D KAVB
 .S STZ="" D STZ
 .S MZM=$G(@GLBL@("F",1,MLZ))
 .S SHER=$G(@GLBL@("DMSH",1,MLZ))
 .S BTL=$G(@GLBL@("BIT",1,MLZ))
 .S HNHCIB=$G(@GLBL@("CIBHN",1,MLZ))
 .S TIP=$G(@GLBL@("T",1,MLZ))
 .S HNH=$G(@GLBL@("MIN",1,MLZ))+$G(@GLBL@("MIN2",1,MLZ))-HNHCIB
 .S ZIC=$G(@GLBL@("MIN3",1,MLZ))
 .S SOAD=$G(@GLBL@("SD",1,MLZ))
 .S CHZ=$G(@GLBL@("SHZ",1,MLZ))
 .S SM1=10
 .I $$HB S STZ=$J(MZM,8,2)_" : onefn" D STZ
 .I '$$HB S STZ=$$PCTX("CASH")_" : "_$J(MZM,8,2) D STZ
 .
 .I $G(@$$^W4PL@("MATB")) D
 ..N SM1,SUMMTB,N,I
 ..S SM1=0
 ..S STZ="" D STZ S SUMMTB=0,N="",I=0
 ..F  S N=$O(@GLBL@("MTB",N)) Q:N=""  D
 ...N A S A=$G(@GLBL@("MTB",N,MLZ))
 ...N SHAAR S SHAAR=1 I A S SHAAR=$P(A,"!",2)/A
 ...S I=I+1 S STZ=$J(A*SHAAR,7,2)_" = "_$J(SHAAR,7,3)_" *"_$J(+A,7,2)_" : "_$J($P($G(@$$^W4GL("P1SUGM")@(N)),"\",2),5) D STZ
 ...S SUMMTB=SUMMTB+(A*SHAAR)
 ..S STZ=$J(MZM-SUMMTB,7,2)_$J("",19)_" :   g""y" D STZ
 ..S STZ="" D STZ
 .
 .I $$^W4TIPMIN D
 ..I $$HB S STZ=$J(TIP,8,2)_" : "_$$TIPPS^W4TOT("") D STZ
 ..I '$$HB S STZ=$$TIPPS^W4TOT("")_" : "_$J(TIP,8,2) D STZ
 ..I $$HB S STZ=$J(MZM-TIP,8,2)_" : ehp onefn "_$J("",3) D STZ
 ..I '$$HB S STZ=$$BFSP_$$PCTX("CASHNETTO")_" : "_$J(MZM-TIP,8,2) D STZ
 .
 .I $$HB D
 ..S STZ=$J($G(@GLBL@("G",1,MLZ)),8,2)_" :  wiy" D STZ
 ..S STZ=$J($G(@GLBL@("Z",1,MLZ)),8,2)_" : yelz" D STZ
 ..S STZ=$J($G(@GLBL@("V",1,MLZ)),8,2)_" :  `""k "_$J($G(@GLBL@("V#",1,MLZ)),3,0) D STZ
 ..S STZ=$J($G(@GLBL@("H",1,MLZ)),8,2)_" : dtwd "_$J($G(@GLBL@("H#",1,MLZ)),3,0) D STZ
 ..S STZ="" D STZ
 ..S PDN=$G(@GLBL@("F",1,MLZ))+$G(@GLBL@("G",1,MLZ))+$G(@GLBL@("Z",1,MLZ))+$G(@GLBL@("V",1,MLZ))+$G(@GLBL@("H",1,MLZ))-$S('$$^W4TIPMIN:0,1:$G(@GLBL@("T",1,MLZ)))
 ..S STZ=$J(PDN,8,2)_" : minelyz k""dq" D STZ
 ..S STZ="" D STZ
 .
 .I '$$HB D
 ..S STZ=$$BFSP_$$PCTX("CHECK")_" : "_$J($G(@GLBL@("G",1,MLZ)),8,2) D STZ
 ..S STZ=$$BFSP_$$PCTX("COUPON")_" : "_$J($G(@GLBL@("Z",1,MLZ)),8,2) D STZ
 ..S STZ=$J($G(@GLBL@("V#",1,MLZ)),3)_" "_$$PCTX("CREDITCA")_" : "_$J($G(@GLBL@("V",1,MLZ)),8,2) D STZ
 ..S STZ=$J($G(@GLBL@("H#",1,MLZ)),3)_" "_$$PCTX("CREDIT")_" : "_$J($G(@GLBL@("H",1,MLZ)),8,2) D STZ
 ..S STZ="" D STZ
 ..S PDN=$G(@GLBL@("F",1,MLZ))+$G(@GLBL@("G",1,MLZ))+$G(@GLBL@("Z",1,MLZ))+$G(@GLBL@("V",1,MLZ))+$G(@GLBL@("H",1,MLZ))-$S('$$^W4TIPMIN:0,1:$G(@GLBL@("T",1,MLZ)))
 ..S STZ=$$PCTX("TOTAL")_" : "_$J(PDN,8,2) D STZ
 ..S STZ="" D STZ
 .
 .I $$HB S STZ=$J(BTL,8,2)_" : milehia" D STZ
 .I '$$HB S STZ=$$PCTX("CANCELATIONS")_" : "_$J(BTL,8,2) D STZ
 .S SBTL=SBTL+BTL
 .
 .I $$HB S STZ=$J(HNH,8,2)_" : zegpd" D STZ
 .I '$$HB S STZ=$$PCTX("DISCOUNTS")_" : "_$J(HNH,8,2) D STZ
 .S SHNH=SHNH+HNH
 .
 .I HNHCIB D
 ..I $$HB S STZ=$J(HNHCIB,8,2)_" :'SODEXO' zegpd" D STZ
 ..I '$$HB S STZ=$$PCTX("CIBDISCOUNTS")_" : "_$J(HNHCIB,8,2) D STZ
 ..S SHNHCIB=SHNHCIB+HNHCIB
 .
 .I $$^W4TIPPD($G(DAT)) D
 ..I $$HB S STZ=$J(TIP,8,2)_" : "_$$TIPPS^W4TOT("") D STZ
 ..I '$$HB S STZ=$$TIPPS^W4TOT("")_" : "_$J(TIP,8,2) D STZ
 ..S STIP=STIP+TIP
 .
 .I $$HB S STZ=$J(ZIC,8,2)_" : miekif" D STZ
 .I '$$HB S STZ=$$PCTX("ZIKUIM")_" : "_$J(ZIC,8,2) D STZ
 .
 .I $$HB S STZ=$J(PDN+ZIC+BTL+HNH-$S($G(@$$^W4PRM@("BRTDM")):0,1:SHER),8,2)_" : ehexa k""dq" D STZ
 .I '$$HB S STZ=$$PCTX("TOTALBRUTTO")_" : "_$J(PDN+ZIC+BTL+HNH-$S($G(@$$^W4PRM@("BRTDM")):0,1:SHER),8,2) D STZ
 .S STZ="" D STZ
 .
 .I $$HB S STZ=$J(CHZ,8)_" : zepnfd zenk" D STZ
 .I '$$HB S STZ=$$PCTX("ORDERS")_" : "_$J(CHZ,8) D STZ
 .S SHZM=SHZM+CHZ
 .
 .I $$HB S STZ=$J(SOAD,8)_" : zegewl 'qn" D STZ
 .I '$$HB S STZ=$$PCTX("DINERS")_" : "_$J(SOAD,8) D STZ
 .S SSOAD=SSOAD+SOAD
 .
 .I SOAD D
 ..I $$HB S STZ=$J(PDN/SOAD,8,2)_" : gewll rvenn" D STZ
 ..I '$$HB S STZ=$$PCTX("AVRGDINER")_" : "_$J(PDN/SOAD,8,2) D STZ
 ..S STZ="" D STZ
 .;
 .I $G(@$$^W4PRM@(DOCH,"LKH")) D LKH(MLZ)
 ;
 S STZ="" D STZ
 ;
 Q
 ;
 ;
STZ ;
 D ^W4PCST(STZ,DISP)
 Q
 ;
KAV S STZ=$TR($J("",23)," ","-") D STZ
 Q
KAVB ;
 S SM1=1,STZ=$G(%MDP("B"))_$TR($J("",18)," ","-")_$G(%MDP("N")) D STZ
 Q
 ;
LKH(MLZ) ;
 S STZ="" D STZ
 I $$HB S STZ=" zegewl itl "_MLZ_$S($L(MLZ)<5:" gily ",1:" xvln ") D STZ
 I '$$HB S STZ=$$PCTX("WAITERPERCUST","S",$S($L(MLZ)<5:$$PCTX("COURIER","S"),1:$$PCTX("WAITER","S"))_"<>"_MLZ) D STZ
 D KAV
 N LKH,TL S LKH=""
 N SM,SM1
 F  S LKH=$O(@GLBL@("LKH",1,MLZ,LKH)) Q:LKH=""  D
 .N A S A=$G(^(LKH))
 .S STZ=$J(A,7,2)_" "_$$HBR^%L1FRM($$LKH^W4L(LKH),16)_$J(LKH,11)
 .D STZ
 .
 .I $D(@GLBL@("LKH",1,MLZ,LKH))>9 D
 ..S TL="" F  S TL=$O(@GLBL@("LKH",1,MLZ,LKH,TL)) Q:TL=""  D  S STZ="" D STZ
 ...N A S A=$G(^(TL))
 ...I A D
 ....I $$HB S STZ=" g""y "_$J(TL,2)_" ly miyelz "_$J(A,3) D STZ
 ....I '$$HB S STZ=$J(A,3)_" "_$$PCTX("COUPONSOF","S")_" "_$J(TL,2)_" NIS" D STZ
 .
 .I $D(@GLBL@("LKH",1,MLZ,LKH))<10,$$TLUSH^W4L(LKH) D  S STZ="" D STZ
 ..S TL=$$TLUSH^W4L(LKH),KMTL=$J(A/TL,0,0)
 ..I $$HB S STZ=" g""y "_$J(TL,2)_" ly miyelz "_$J(KMTL,3)_" (?)" D STZ
 ..I '$$HB S STZ=$J(KMTL,3)_" "_$$PCTX("COUPONSOF","S")_" "_$J(TL,2)_" NIS" D STZ
 Q
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 ; 
PCTX(KEY,L,PRM) ;
 Q $$^W4PCTX(KEY,$G(L),$G(PRM))
 ;
BFSP(STAM) ;
 Q $J("",4)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCMSH
W4PCMSH ;   [ 18.08.21 12:18 ] [ 09.03.20 09:41 ] [ 18.09.17 12:50 ] 
 N (JB,%REM,%ARG,DAT,P1X,DOCH,DISP,SGIRATJOM,MEK)
 D PUT^%W3DEB("W4PCMSH","P1X=P1X&DOCH=DOCH&DISP=DISP")
 I $G(P1X),P1X>1,P1X<5 Q  ;-- DOCH KASPI BILVAD
 Q:$G(DOCH)=""
 N DOCH1 S DOCH1=DOCH N DOCH S DOCH=$S(DOCH1="Y":"X",1:DOCH1)
 ;;I '$G(@$$^W4PRM@(DOCH,"HZM")),'$G(@$$^W4PRM@(DOCH,"HSB")),'$G(@$$^W4PRM@(DOCH,"TSH")) Q
 D ^W4IN,^W4MDPPC,^%L1TS
 S GLBL=$S('MRK:$$^W4GL("TOT")_"(DAT)",1:$$^W4GL("TOT")_"(DAT,MRK)")
 I $D(SGIRATJOM),DOCH="Z" S GLBL=$$^W4GL("Z1")_"(DAT,NZ)" I MEK="" S NZ=$G(@$$^W4GL("Z"))+1
 S (SPDN,SBTL,SSHER,SHNH,SSOAD,SHZM,STIP)=0
 S (SSHERHB,SHNHHB,SZICHB,SPDNHB,SBTLHB,SHSB)=0
 S (SHERHB,HNHHB,ZICHB,PDNHB,BTLHB,HSB)=0
 S STZ="" D STZ
 I '$G(DISP) S STZ=$J("",10)_%MDP("B")_$S(DOCH1="Z":"- Z - ",DOCH1="Y":"- Y -",1:"- X -")_%MDP("N") D STZ
 S %TIM=$ZD($H,"24:60") S STZ=%TIM_" "_$$^%L1DC($H,1)_" xewn zwtd jix`z" D STZ
 S STZ="" D STZ
 S SM1=10
 S STZ=$$^%L1DC(DAT,1)_" - l migily g""ec " D STZ
 D KAV
 S SM1=6
 F I=1:1 Q:'$D(@$$^W4MAIN("TEMP")@(I))  D
 .S ST=^(I)
 .D PRS^%L1FRM(ST,"PSL\NAME\PDN\SHER\BTL\HNH\HZM\TIP\ZIC\PDNHB","\")
 .I $G(P1X("PSL")),+$G(P1X("PSL"))'=+PSL Q
 .I 'PSL Q
 .S SBTL=SBTL+BTL,SSHER=SSHER+SHER,SHNH=SHNH+HNH,SHZM=SHZM+HZM
 .S SM1=1,STZ=$G(%MDP("B"))_$$HBR^%L1FRM(NAME,12)_" "_$J(PSL,5)_$G(%MDP("N")) D STZ K SM1
 .;
 .I $G(@$$^W4PRM@(DOCH,"HZM"))!$G(P1X("PSL")) D
 ..S SM1=9
 ..S STZ="      zepnfd itl g""ec " D STZ
 ..D KAV
 ..S STZ=$J(PDN,8,2)_" : melyzl" D STZ S SPDN=SPDN+PDN
 ..S STZ=$J(BTL,8,2)_" : milehia" D STZ
 ..S STZ=$J(HNH,8,2)_" : zegpd" D STZ
 ..S STZ=$J(SHER,8,2)_" : gelyn inc" D STZ
 ..I '$$TIPNO^W4TIPPD($$^%L1DC($G(DAT),1)) S STZ=$J(TIP,8,2)_" : "_$$TIPPS^W4TOT("") D STZ
 ..S STZ=$J(ZIC,8,2)_" : miiekif" D STZ
 ..;;S STZ=$J(PDN+BTL+HNH+ZIC-SHER,8,2)_" : ehexa k""dq" D STZ
 ..S STZ="" D STZ
 ..S STZ=$J(HZM,8)_" : zepnfd zenk" D STZ
 ..S STZ="" D STZ
 .;
 .I $G(@$$^W4PRM@(DOCH,"HSB"))!$G(P1X("PSL")) D
 ..N PDNHB,SHERHB,BTLHB,HNHHB
 ..S STZ="   zeipeayg itl g""ec " D STZ
 ..D KAV S CHSB=0
 ..N DD S DD=$$^%L1DC(DAT,4) S N=""
 ..F  S N=$O(@$$^W4GL("P1HBI")@(DD,N)) Q:N=""  I N>0,$G(^(N)) S HZ=+$G(@$$^W4GL("P1HB")@(N)) I HZ>0 S ML=$P($G(@$$^W4ORD@(HZ,"TM")),"\") I +ML=+PSL S CHSB=CHSB+1 S:$G(@$$^W4GL("P1HBI")@(DD,N))="^" CHSB=0
 ..F  S N=$O(@$$^W4GL("P1HB2I")@(DD,N)) Q:N=""  I N>0,$G(^(N)) S HZ=+$G(@$$^W4GL("P1HB2")@(N)) I HZ>0 S ML=$P($G(@$$^W4GL("P1HZ")@(HZ,"TM")),"\") I +ML=+PSL S CHSB=CHSB+1 ;; S:$G(@$$^W4GL("P1HB2I")@(DD,N))="^" CHSB=0
 ..S PDNHB=0 F II="F","G","V","Z" S PDNHB=PDNHB+$G(@GLBL@(II,1,PSL))
 ..I '$G(@$$^W4PRM@("TOTNA")) S PDNHB=PDNHB+$G(@GLBL@("H",1,PSL))
 ..I '$$^W4TIPMIN S PDNHB=PDNHB-$G(@GLBL@("T",1,PSL))
 ..S SHERHB=$G(@GLBL@("DMSH",1,PSL))
 ..S BTLHB=$G(@GLBL@("BIT",1,PSL))
 ..S HNHHB=$G(@GLBL@("MIN",1,PSL))+$G(@GLBL@("MIN2",1,PSL))
 ..S STZ=$J(PDNHB,8,2)_" : ehp mileawz" D STZ S SPDNHB=SPDNHB+PDNHB
 ..S STZ=$J(SHERHB,8,2)_" : gelyn inc" D STZ S SSHERHB=SSHERHB+SHERHB
 ..S STZ=$J(BTLHB,8,2)_" : milehia" D STZ S SBTLHB=SBTLHB+BTLHB
 ..S STZ=$J(HNHHB,8,2)_" : zegpd" D STZ S SHNHHB=SHNHHB+HNHHB
 ..I '$$TIPNO^W4TIPPD($$^%L1DC($G(DAT),1)) S STZ=$J(TIP,8,2)_" : "_$$TIPPS^W4TOT("") D STZ S STIP=STIP+TIP
 ..S STZ=$J(ZIC,8,2)_" : miiekif" D STZ
 ..S STZ="" D STZ
 ..S STZ=$J(CHSB,8)_" : zeipeayg zenk" D STZ S SHSB=SHSB+CHSB
 ..S STZ="" D STZ
 .;
 .I $G(@$$^W4PRM@(DOCH,"TSH"))!$G(P1X("PSL")) D
 ..S STZ=" melyz irvn` itl g""ec " D STZ
 ..D KAV
 ..S STZ=$J($G(@GLBL@("F",1,PSL)),8,2)_" : onefn" D STZ
 ..I $$^W4TIPMIN S STZ=$J($G(@GLBL@("T",1,PSL)),8,2)_" :"_$$TIPPS^W4TOT("") D STZ
 ..S STZ=$J($G(@GLBL@("G",1,PSL)),8,2)_" :  wiy" D STZ
 ..S STZ=$J($G(@GLBL@("Z",1,PSL)),8,2)_" : yelz" D STZ
 ..S STZ=$J($G(@GLBL@("V",1,PSL)),8,2)_" :  `""k "_$J($G(@GLBL@("V#",1,PSL)),3,0) D STZ
 ..S STZ=$J($G(@GLBL@("H",1,PSL)),8,2)_" : dtwd "_$J($G(@GLBL@("H#",1,PSL)),3,0) D STZ
 ..S STZ="" D STZ
 ..N SUMMH S SUMMH=$G(@GLBL@("F",1,PSL))+$G(@GLBL@("G",1,PSL))+$G(@GLBL@("Z",1,PSL))+$G(@GLBL@("V",1,PSL))+$G(@GLBL@("H",1,PSL))-$S('$$^W4TIPPD($$^%L1DC($G(DAT),1)):$G(@GLBL@("T",1,PSL)),1:"")
 ..S STZ=$J(SUMMH,8,2)_" : zexikn k""dq" D STZ
 ..I $G(@$$^W4PRM@("TOTNA")) S STZ=$J(SUMMH-$G(@GLBL@("H",1,PSL)),8,2)_" : ehp oeict k""dq" D STZ
 ..S STZ="" D STZ
 ..I $$TIPMIN^W4TIPPD($$^%L1DC($G(DAT),1)) D
 ...S STZ=$J($G(@GLBL@("T",1,PSL)),8,2)_" : "_$$TIPPS^W4TOT("") D STZ
 ..S STZ="" D STZ
 .I $G(@$$^W4PRM@(DOCH,"LKH")) D LKH^W4PCMLZ(PSL)
 ;
 S STZ="" D STZ
 I $G(@$$^W4PRM@(DOCH,"HZM")),'$D(P1X("PSL")) D
 .S STZ=" :  zepnfd itl k""dq" D STZ
 .D KAV
 .S STZ=$J(SHZM,8)_" : zepnfd zenk" D STZ
 .S STZ=$J(SPDN,8,2)_" : melyzl k""dq" D STZ
 .S STZ=$J(SSHER,8,2)_" : gelyn inc k""dq" D STZ
 .S STZ=$J(SHNH,8,2)_" : zegpd k""dq" D STZ
 .S STZ=$J(SBTL,8,2)_" : milehia k""dq" D STZ
 .S STZ="" D STZ K SM1
 ;
 I $G(@$$^W4PRM@(DOCH,"HSB")),'$D(P1X("PSL")) D
 .S STZ=" : zeipeayg itl k""dq" D STZ
 .D KAV
 .S STZ=$J(SHSB,8)_" : zeipeayg zenk" D STZ
 .S STZ=$J(SPDNHB,8,2)_" : mley k""dq" D STZ
 .S STZ=$J(SSHERHB,8,2)_" : zexy inc k""dq" D STZ
 .S STZ=$J(SHNHHB,8,2)_" : zegpd k""dq" D STZ
 .S STZ=$J(SBTLHB,8,2)_" : milehia k""dq" D STZ
 .I '$$TIPNO^W4TIPPD($$^%L1DC($G(DAT),1)) D
 ..S STZ=$J(STIP,8,2)_" : "_$$TIPPS^W4TOT("")_" k""dq" D STZ
 Q
 ;
STZ ;
 D ^W4PCST(STZ,DISP)
 Q
KAV S STZ=$J("",6)_$TR($J("",23)," ","-") D STZ Q
 
 
 
 
 

W4PCMVC
W4PCMVC ; [ 29.12.21 08:15 ] [ 23.02.21 18:58 ] [ 29.09.15 08:02 ] 
 N A,LKHN,STI1,KAMM,MTNKM,MHMTN,MVC,%MDP
 S A=$G(@$$^W4ORD@(HZM,"PCMVC")) Q:A=""
 D ^W4MDPPC
 S P1HZHB1="MVC"
 K @$$^W4MAIN("TMPS111") D KOT^W4HZTM
 D ST^W4HZTH
 N TXT
 S TXT="" D S1
 S A=$G(@$$^W4ORD@(HZM,"PCMVC")) Q:A=""
 D PRS^%L1FRM(A,"LKHN\STI1\KAMM\MTNKM\MHMTN\MVC\MTN1","\")
 I KAMM#1 S KAMM=$J(KAMM,3,3)
 S TXT=%MDP("B")_$$CENTRB^%L1FRM("law ! rvan",GWPC)_%MDP("N") D S1
 S TXT=%MDP("B")_$$HBR^%L1FRM(MTN1,16)_" "_(KAMM*MTNKM) D S1
 S TXT=%MDP("B")_$$CENTRB^%L1FRM($S(MHMTN:$J(MHMTN,2,2)_" xigna ",1:"dpzn"),GWPC)_%MDP("N") D S1
 S TXT="" D S1
 D ^W4CUT(PRINT,%MDP("CUT"))
 S SH=$O(@$$^W4THZ1@(9999),-1)+1
 S @$$^W4THZ1@(SH)=$G(@$$^W4PRM@("PCMVC"))_"\\rvan yelz zwtd\\\\\"_STI1_" dxey "_MVC_" rvan\\@@!"
 I $G(HZM) S @$$^W4ORD@(HZM,SH)=$G(@$$^W4THZ1@(SH))
 I $$^W4ISCDLK($G(LKHN)),$G(STI1) K @$$^W4GL("P1MVCL")@(MVC,LKHN,STI1)
 Q  ;
S1 D S1^W4HZTH
 Q
 
 
 

W4PCPRM
W4PCPRM ; [ 17.09.25 05:56 ] [ 16.09.25 10:40 ] [ 04.07.23 05:54 ] 
 N ST,J
 D IN^W4SUMZRO
 S ST=W4SUMZRO
 S ST=ST_",AV,AVW,MZM,CHK,CHKO,CHKM,ASR,TL,ISR,VIZ,DNR,AEX,KK,ALPHA,FI,HMZM,HCHKO,HCHKM"
 S ST=ST_",HTL,HISR,HVIZ,HDNR,HAEX,HKK,HALPHA,HFI,MIN3,HNHS,HNHS2,HNHP,HNHT,HNHL"
 S ST=ST_",HNHCIB,DMSHS,TIP,TIPPS1,P1X,P1TOT"
 S ST=ST_",MSHT,UMMTB,DOCH"
 S ST=ST_",TMZ,TCA,TCHK,TASR,STAW,HCHKB,MP,DISP"
 S ST=ST_",MZQ,CHQ,BNQ,HB,HBQ,HBZ,HBZQ,TM,TMQ"
 S ST=ST_",SMC,CAFUT,CAOUT"
 S ST=ST_",MPS,CAS,MZMS,CHKS,ISRS,VIZS,DNRS,AEXS,KKS,ALPHAS,FIS,SUMMTB"
 ;
 K @$$^W4MAIN("VRMPRM")
 F J=1:1:$L(ST,",") D
 .N VRMPRM S VRMPRM=$P(ST,",",J) Q:VRMPRM=""
 .M @$$^W4MAIN("VRMPRM")@(VRMPRM)=@VRMPRM
 Q
 ;
REST ;
 N %A,%N S %N="" F  S %N=$O(@$$^W4MAIN("VRMPRM")@(%N)) Q:%N=""  D
 .M @%N=^(%N)
 K @$$^W4MAIN("VRMPRM")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCPRO0
W4PCPROG ; PREPARE FOR BACKGROUND                                      [ 15.03.13 12:57 ] [ 28.02.13 10:58 ] [ 18.02.13 10:03 ]
 Q
JPC(N,JB) ;
 N (N,JB)
 H 1
 I N<0 K @$$^W4PC@(N)
 Q:N<3!(N=54)
 I $$^%L1FLAG($$^W4flag_"("_+N_")") Q
 I $$^%L1FLAG($$^W4flag_"("_+N_")") Q
 ;
 D ^W4IN D DEFMDP K MDPMDB
 ;
 S PAR="" F  S PAR=$O(@$$^W4GL("PAR")@(PAR)) Q:PAR=""  D
 .S IND=$P($P(@$$^W4GL("PAR")@(PAR),"**",11),">",2) I IND D
 ..N %MDP,GWPC,MDPS,PRINT D ^W4MDP(IND) I $G(PRINT) S MDPMDB(PRINT)=""
 ;
 I '$$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 I $$MDPNET(N) C "SCK$"_$J
 ;
JPC1 S $ZT="S $ZT="""",zr=$R ZG "_$ZL_":ER"
 I $$^%L1FLAG($$^W4flag_"("_+N_")") D CLN(N,1) Q
 I $$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 I $D(@$$^W4STLOOP@("PC")) K @$$^W4flag@(+N) D:OK CLN(N,1) Q
 I $$MDPNET(N),'OK H 1 D CLN(N,0) G JPC1
 ;
 S N1=N-.1,OKP=0
 F  S N1=$O(@$$^W4PC@(N1)) Q:N1=""  I +N1=N,$D(@$$^W4PC@(N1)) S OKP=1 Q
 ;
 I 'OKP D
 .D ^W4IN,^%L1TS S THZ=$G(@$$^W4PRM@("TIMEHZ")),TTM=$G(@$$^W4PRM@("TIMETM"))
 .S TIME=P1DZ-1_"00000"
 .F  S TIME=$O(@$$^W4GL("P1HM")@(TIME)) Q:TIME=""  S HZM="" F  S HZM=$O(@$$^W4GL("P1HM")@(TIME,HZM)) Q:HZM=""  Q:$L($P($G(@$$^W4ORD@(HZM)),"\"))<4  Q:$D(@$$^W4PC@(N))  D
 ..S DT=$E(TIME,1,5),TT=+$E(TIME,6,10)
 ..I $G(@$$^W4ORD@(HZM,"S"))#2 D  Q
 ...K @$$^W4GL("P1HM")@(TIME,HZM) D ^%S2GLSV($$^W4GL("P1HM")_"("""_TIME_""","_HZM_")",$$^W4FGIB,"K")
 ..I $H-DT=0,TT-($P($H,",",2)\60)<TTM,$L($P($G(@$$^W4ORD@(HZM)),"\"))>3,'$D(@$$^W4GL("P1NORING")) D
 ...N P1MSG S P1MSG=$G(@$$^W4GL("P1MSG")@(HZM))
 ...I P1MSG,+P1MSG'=N!($P($H,",",2)-$P(P1MSG,"|",2)<60) Q
 ...S %MSG=" "_HZM_" dpnfdl gelyn zcerz witdl egkyz l` " D ALL H 2
 ...S @$$^W4GL("P1MSG")@(HZM)=N_"|"_$P($H,",",2)
 ..Q:$D(@$$^W4GL("P1HM")@(TIME,HZM,N))
 ..D ZMANK I DT=D,TT-T'>(THZ+30) Q
 ..I $H-DT=0,TT-($P($H,",",2)\60)<THZ,$D(@$$^W4ORD@(HZM)),'$D(MDPMDB(N)),$G(@$$^W4GL("P1NORING"))<2 D
 ...Q:$G(SUG)'=3&($G(SUG)'=6)
 ...S PC(N,1)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,2)=%MDP("B")_%MDP("R")_$TR("    !!! egkyz l`",TS0,TSS)_%MDP("RL")_%MDP("N")
 ...S PC(N,3)=%MDP("B")_"     "_HZM_$TR(" dpnfd",TS0,TSS)_%MDP("N")
 ...S PC(N,4)=$J("",10)_$TR("gewl lv` zeidl dxen`",TS0,TSS)
 ...S PC(N,5)=%MDP("B")_"     "_(TT\60_":"_(TT#60))_$TR(" drya",TS0,TSS)_%MDP("N")
 ...S PC(N,6)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,7)=$C(10,10,10,10,10,10)_%MDP("CUT")
 ...N NOKILL S NOKILL="" D JPW S @$$^W4GL("P1HM")@(TIME,HZM,N)=""
 ;
 K PC D JPS,JPW,JPK
 ;
 D CLN(N,0) H 1 G JPC1
 ;
 ;
ER ;
 S TXT=$P($ZS,",",2,4) D MSG(TXT) I $G(N) K ^flag(+N)
 D SVER^%L1X
 Q
 ;
ALL N US ;
 I $G(^UCI("MGG"))["/esi" Q
 S US=""
 ;
ALLPC F  S US=$O(@$$^W4PLUK@(US)) Q:US=""  D
 .I US>0,$G(@$$^W4PLUK@(US))>0,$D(@$$^W4DEV@(US)) D
 ..S ^[$$^W3MAIN]msgbrd(@$$^W4DEV@(US))=%MSG
 ..I $D(%MSG("DLY")) S ^[$$^W3MAIN]msgbrd(@$$^W4DEV@(US),"DLY")=%MSG("DLY")
 Q
 ;
MSG1(%MSG) ;
 D ALL
 Q
 ;
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:1000
 Q DLY
 ;
OPN(N) ;
 S OK=0 K ERPC
 I $D(@$$^W4GL("PL")@("REMOTE","OUT",N)) S OK=1 Q
 ;
 I $$MDPNET(N) D  Q
 .N N1 S N1=+N
 .N ADDR,PORT
 .S ADDR=$G(@$$^W4DEV@(N1)),PORT=9100
 .I ADDR["P" S ADDR=$P(ADDR,"P")
 .K ERPC(N1) S ERPC(N1)=$$^%L2NALAN(ADDR,PORT)
 .I $G(ERPC(N1)) D MSGPRER(ADDR,ERPC(N1)) S OK=0 Q
 .S OK=1
 ;
 O @$$^W4DEV@(+N):(WRITE:EXCEPTION="G OPNE^W4PCPROG")
 S OK=1 Q
OPNE S OK=0 Q
 ;
 ;
CLN(N,PRM) ;
 I $$MDPNET(N) H 1 C "SCK$"_$J Q
 I $G(PRM) H 1 C @$$^W4DEV@(+N)
 Q
 ;
MSGPRER(ADDR,ER) ;
 D ^W4IN
 I $D(@$$^W4GL("P1NOMDP")@(P1DZ)) Q
 S %MSG=$J_": PRINT ERROR "_ADDR_" "_$$^%L1HB($$NMPR(ADDR))_" "_$$FUNC^%UCASE(ER) D ALL H 1 Q
 I $G(N) S @$$^W4GL("P1PCER")@(N,$O(@$$^W4GL("P1PCER")@(N,9999999),-1)+1)=ADDR_"\"_ERR
 Q
 ;
NMPR(ADDR) ;
 I $G(ADDR)="" Q ""
 I '$D(@$$^W4DEVI@(ADDR)) Q ""
 N DEV S DEV=@$$^W4DEVI@(ADDR) I DEV="" Q ""
 Q $G(@$$^W4DEV@(DEV,"H"))
 ;
ZMANK N ZMANK,DATE S ZMANK=$P($G(@$$^W4ORD@(HZM)),"\",4)
 S DATE=$P(ZMANK,"  ")
 S TIM=$P(ZMANK,"  ",2)
 S D=$$^%L1DC(DATE,3),T=$P(TIM,":")*60+$P(TIM,":",2)
 Q
 ;
JPS N N0,OKP S N0=N-.1,OKP=0
 F  S N0=$O(@$$^W4PC@(N0)) Q:N0=""  I +N0=+N,$D(@$$^W4PC@(N0)) D
 .N JPSL S JPSL=$G(@$$^W4PRM@("PCDLY"),16)
 .I JPSL<8 S JPSL=8
 .S N1="" K PC
 .F J=1:1:JPSL S N1=$O(@$$^W4PC@(N0,N1)) Q:N1=""  D
 ..S PC(N0,N1)=$G(^(N1))
 Q
 ;
JPW N N0,OKP S N0=N-.1,OKP=0 F  S N0=$O(PC(N0)) Q:N0=""  I +N0=+N D
 .S N1="" F  S N1=$O(PC(N0,N1)) Q:N1=""  D BDIKA Q:ERMDP  D  D DOS K PC(N0,N1) I '$D(NOKILL) K @$$^W4PC@(N0,N1)
 ..I $D(@$$^W4PL@("REMOTE","OUT",N)) Q
 ..N ST S ST=$G(PC(N0,N1))
 ..D UDEV(N) W ST W !
 Q
 ;
JPK ;
 K PC
 Q
 ;
BDIKA ; N - PORT NUMBER
 S ERMDP=0 I $D(@$$^W4PL@("REMOTE","OUT",N)) Q
 I '$D(@$$^W4DEV@(+N)) S ERMDP=1 Q
 I $G(ERPC(+N)) S ERMDP=2 G BDER
 I $$MDPNET(N) D UDEV(N) Q
 N I1
 F I1=1:1:3 S ERMDP=0 Q:$$^%L1READY(@$$^W4DEV@(+N))>0  H 1 S ERMDP=3
BDER I ERMDP,'$D(@$$^W4GL@("NOSOOB")) F I=1:1 Q:'$D(@$$^W4PRM@("MDP",I))  I $P(^(I),"\",3)=N S %MSG=" ! "_$G(ERMDP)_" d`iby - dpken `l ("_N_" hxet) "_$P(^(I),"\",4)_" zqtcn " D ALL H 12 Q
 D UDEV(N)
 Q
 ;
DOS ;
 S ^[$$^W3MAIN]PC(N0,$O(^[$$^W3MAIN]PC(N0,999999),-1)+1)=PC(N0,N1)
 Q
 ;
MSG(TXT) ;
 D MSG1(TXT)
 Q
 ;
MDP ; [ 05/26/94  5:52 PM ]
 N SUG,DG K %MDP,%MDS ;U 0
 I $D(MDPB) S PRINT=$G(@$$^W4PL@("LP")),SUG=$G(@$$^W4PL@("LP","SUG"),5) Q:PRINT=""  G EMDP
 S MDPPART=$$^%L3MYDVN
 I $P=0!($P=""),$D(PARTMSF) S MDPPART=PARTMSF
 I 'MDPPART!'$D(@$$^W4PLUK@(MDPPART,"LP")) S MDPPART=1
 S PRINT=$G(@$$^W4PLUK@(MDPPART,"LP")) Q:PRINT=""
 S SUG=$G(@$$^W4PLUK@(MDPPART,"LP","SUG")) I SUG="" S SUG=6
 S %MDP("SUG")=SUG
EMDP D TV^W4MDP(SUG)
 Q
 ;
DEFMDP ;
 N P,M
 S M="" F  S M=$O(@$$^W4PRM@("MDP",M)) Q:M=""  D
 .S P=$P(^(M),"\",3) I P S P(P)=$P(^(M),"\")
 ;
 S M="" F  S M=$O(@$$^W4PLUK@(M)) Q:M=""  D
 .I $G(@$$^W4PLUK@(M,"LP")),$G(@$$^W4PLUK@(M,"LP","SUG")) D
 ..S P=@$$^W4PLUK@(M,"LP"),P(P)=$G(@$$^W4PLUK@(M,"LP","SUG"))
 ;
 I $D(@$$^W4PRM@("MDPMSL")) N I D
 .F I=1:1:$L($G(@$$^W4PRM@("MDPMSL")),",") D
 ..S P=$P(@$$^W4PRM@("MDPMSL"),",",I),P(P)=$G(@$$^W4PRM@("MDPMSL","SUG"))
 ;
 I $D(P(N)) S SUG=P(N) D TV^W4MDP(SUG)
 ;
 I $D(P(-N)) S SUG=P(-N) D TV^W4MDP(SUG)
 Q
 ;
UDEV(N) ;
 I $$MDPNET(N) Q  U "SCK$"_$J Q
 U @$$^W4DEV@(+N):(NOWRAP)
 Q
 ;
MDPNET(N) ;
 I $G(@$$^W4DEV@(+N))?1N.N1"."1N.E Q 1
 Q 0

W4PCPRO1
W4PCPROG ; PREPARE FOR BACKGROUND                                      [ 30.03.13 08:27 ] [ 16.03.13 12:35 ] [ 15.03.13 13:01 ]
 Q
JPC(N,JB) ;
 N (N,JB)
 H 1
 I N<0 K @$$^W4PC@(N)
 Q:N<3!(N=54)
 I $$^%L1FLAG($$^W4flag_"("_+N_")") Q
 I $$^%L1FLAG($$^W4flag_"("_+N_")") Q
 ;
 D ^W4IN D DEFMDP K MDPMDB
 ;
 S PAR="" F  S PAR=$O(@$$^W4GL("PAR")@(PAR)) Q:PAR=""  D
 .S IND=$P($P(@$$^W4GL("PAR")@(PAR),"**",11),">",2) I IND D
 ..N %MDP,GWPC,MDPS,PRINT D ^W4MDP(IND) I $G(PRINT) S MDPMDB(PRINT)=""
 ;
 ;;I '$$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 ;
 ;;I $$MDPNET(N)
 S STOP=0
 D  Q:STOP
 .I $D(MOPN(+N)) Q
 .S OK=0,STOP=0
CO .C "SCK$"_$J
 .I $D(@$$^W4STLOOP@("PC")) K @$$^W4flag@(+N) D:OK CLN(+N,1) S STOP=1 Q
 .D OPN(+N) I 'OK H 2 G CO
 .S MOPN(+N)=""
 .I $D(@$$^W4DEV@(+N))#2 D UDEV(+N)
 ;
JPC1 S $ZT="S $ZT="""",zr=$R ZG "_$ZL_":ER"
 I $$^%L1FLAG($$^W4flag_"("_+N_")") D CLN(+N,1) Q
 ;;I $$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 I $D(@$$^W4STLOOP@("PC")) K @$$^W4flag@(+N) D:OK CLN(+N,1) Q
 ;;I $$MDPNET(N),'OK H 1 D CLN(N,0) G JPC1
 ;
 S N1=N-.1,OKP=0
 F  S N1=$O(@$$^W4PC@(N1)) Q:N1=""  I +N1=N,$D(@$$^W4PC@(N1)) S OKP=1 Q
 ;
 I 'OKP D
 .D ^W4IN,^%L1TS S THZ=$G(@$$^W4PRM@("TIMEHZ")),TTM=$G(@$$^W4PRM@("TIMETM"))
 .S TIME=P1DZ-1_"00000"
 .F  S TIME=$O(@$$^W4GL("P1HM")@(TIME)) Q:TIME=""  S HZM="" F  S HZM=$O(@$$^W4GL("P1HM")@(TIME,HZM)) Q:HZM=""  Q:$L($P($G(@$$^W4ORD@(HZM)),"\"))<4  Q:$D(@$$^W4PC@(N))  D
 ..S DT=$E(TIME,1,5),TT=+$E(TIME,6,10)
 ..I $G(@$$^W4ORD@(HZM,"S"))#2 D  Q
 ...K @$$^W4GL("P1HM")@(TIME,HZM) D ^%S2GLSV($$^W4GL("P1HM")_"("""_TIME_""","_HZM_")",$$^W4FGIB,"K")
 ..I $H-DT=0,TT-($P($H,",",2)\60)<TTM,$L($P($G(@$$^W4ORD@(HZM)),"\"))>3,'$D(@$$^W4GL("P1NORING")) D
 ...N P1MSG S P1MSG=$G(@$$^W4GL("P1MSG")@(HZM))
 ...I P1MSG,+P1MSG'=N!($P($H,",",2)-$P(P1MSG,"|",2)<60) Q
 ...S %MSG=" "_HZM_" dpnfdl gelyn zcerz witdl egkyz l` " D ALL H 2
 ...S @$$^W4GL("P1MSG")@(HZM)=N_"|"_$P($H,",",2)
 ..Q:$D(@$$^W4GL("P1HM")@(TIME,HZM,N))
 ..D ZMANK I DT=D,TT-T'>(THZ+30) Q
 ..I $H-DT=0,TT-($P($H,",",2)\60)<THZ,$D(@$$^W4ORD@(HZM)),'$D(MDPMDB(N)),$G(@$$^W4GL("P1NORING"))<2 D
 ...Q:$G(SUG)'=3&($G(SUG)'=6)
 ...S PC(N,1)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,2)=%MDP("B")_%MDP("R")_$TR("    !!! egkyz l`",TS0,TSS)_%MDP("RL")_%MDP("N")
 ...S PC(N,3)=%MDP("B")_"     "_HZM_$TR(" dpnfd",TS0,TSS)_%MDP("N")
 ...S PC(N,4)=$J("",10)_$TR("gewl lv` zeidl dxen`",TS0,TSS)
 ...S PC(N,5)=%MDP("B")_"     "_(TT\60_":"_(TT#60))_$TR(" drya",TS0,TSS)_%MDP("N")
 ...S PC(N,6)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,7)=$C(10,10,10,10,10,10)_%MDP("CUT")
 ...N NOKILL S NOKILL="" D JPW S @$$^W4GL("P1HM")@(TIME,HZM,N)=""
 ;
 K PC D JPS,JPW,JPK
 ;
 ;;D CLN(N,0) H 1 G JPC1
 H 1 G JPC1
 ;
 ;
ER ;
 S TXT=$P($ZS,",",2,4) D MSG(TXT) I $G(N) K ^flag(+N)
 D SVER^%L1X
 Q
 ;
ALL N US ;
 I $G(^UCI("MGG"))["/esi" Q
 S US=""
 ;
ALLPC F  S US=$O(@$$^W4PLUK@(US)) Q:US=""  D
 .I US>0,$G(@$$^W4PLUK@(US))>0,$D(@$$^W4DEV@(US)) D
 ..S ^[$$^W3MAIN]msgbrd(@$$^W4DEV@(US))=%MSG
 ..I $D(%MSG("DLY")) S ^[$$^W3MAIN]msgbrd(@$$^W4DEV@(US),"DLY")=%MSG("DLY")
 Q
 ;
MSG1(%MSG) ;
 D ALL
 Q
 ;
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:1000
 Q DLY
 ;
OPN(N) ;
 S OK=0 K ERPC
 I $D(@$$^W4GL("PL")@("REMOTE","OUT",N)) S OK=1 Q
 ;
 I $$MDPNET(N) D  Q
 .N N1 S N1=+N
 .N ADDR,PORT
 .S ADDR=$G(@$$^W4DEV@(N1)),PORT=9100
 .I ADDR["P" S ADDR=$P(ADDR,"P")
 .K ERPC(N1) S ERPC(N1)=$$^%L2NALAN(ADDR,PORT)
 .I $G(ERPC(N1)) D MSGPRER(ADDR,ERPC(N1)) S OK=0 Q
 .S OK=1
 ;
 O @$$^W4DEV@(+N):(WRITE:EXCEPTION="G OPNE^W4PCPROG")
 S OK=1 Q
OPNE S OK=0 Q
 ;
 ;
CLN(N,PRM) ;
 I $$MDPNET(N) H 1 C "SCK$"_$J Q
 I $G(PRM) H 1 C @$$^W4DEV@(+N)
 Q
 ;
MSGPRER(ADDR,ER) ;
 D ^W4IN
 I $D(@$$^W4GL("P1NOMDP")@(P1DZ)) Q
 S %MSG=$J_": PRINT ERROR "_ADDR_" "_$$^%L1HB($$NMPR(ADDR))_" "_$$FUNC^%UCASE(ER) D ALL H 1 Q
 I $G(N) S @$$^W4GL("P1PCER")@(N,$O(@$$^W4GL("P1PCER")@(N,9999999),-1)+1)=ADDR_"\"_ERR
 Q
 ;
NMPR(ADDR) ;
 I $G(ADDR)="" Q ""
 I '$D(@$$^W4DEVI@(ADDR)) Q ""
 N DEV S DEV=@$$^W4DEVI@(ADDR) I DEV="" Q ""
 Q $G(@$$^W4DEV@(DEV,"H"))
 ;
ZMANK N ZMANK,DATE S ZMANK=$P($G(@$$^W4ORD@(HZM)),"\",4)
 S DATE=$P(ZMANK,"  ")
 S TIM=$P(ZMANK,"  ",2)
 S D=$$^%L1DC(DATE,3),T=$P(TIM,":")*60+$P(TIM,":",2)
 Q
 ;
JPS N N0,OKP S N0=N-.1,OKP=0
 F  S N0=$O(@$$^W4PC@(N0)) Q:N0=""  I +N0=+N,$D(@$$^W4PC@(N0)) D
 .N JPSL S JPSL=$G(@$$^W4PRM@("PCDLY"),12)
 .I JPSL<8 S JPSL=8
 .S N1="" K PC
 .F J=1:1:JPSL S N1=$O(@$$^W4PC@(N0,N1)) Q:N1=""  D
 ..S PC(N0,N1)=$G(^(N1))
 Q
 ;
JPW N N0,OKP S N0=N-.1,OKP=0 F  S N0=$O(PC(N0)) Q:N0=""  I +N0=+N D
 .S N1="" F  S N1=$O(PC(N0,N1)) Q:N1=""  D BDIKA Q:ERMDP  D  D DOS K PC(N0,N1) I '$D(NOKILL) K @$$^W4PC@(N0,N1)
 ..I $D(@$$^W4PL@("REMOTE","OUT",N)) Q
 ..N ST S ST=$G(PC(N0,N1))
 ..D UDEV(+N) W ST W !
 Q
 ;
JPK ;
 K PC
 Q
 ;
BDIKA ; N - PORT NUMBER
 S ERMDP=0 I $D(@$$^W4PL@("REMOTE","OUT",N)) Q
 I '$D(@$$^W4DEV@(+N)) S ERMDP=1 Q
 I $G(ERPC(+N)) S ERMDP=2 G BDER
 I $$MDPNET(N) D UDEV(N) Q
 N I1
 F I1=1:1:3 S ERMDP=0 Q:$$^%L1READY(@$$^W4DEV@(+N))>0  H 1 S ERMDP=3
BDER I ERMDP,'$D(@$$^W4GL@("NOSOOB")) F I=1:1 Q:'$D(@$$^W4PRM@("MDP",I))  I $P(^(I),"\",3)=N S %MSG=" ! "_$G(ERMDP)_" d`iby - dpken `l ("_N_" hxet) "_$P(^(I),"\",4)_" zqtcn " D ALL H 12 Q
 D UDEV(N)
 Q
 ;
DOS ;
 S ^[$$^W3MAIN]PC(N0,$O(^[$$^W3MAIN]PC(N0,999999),-1)+1)=PC(N0,N1)
 Q
 ;
MSG(TXT) ;
 D MSG1(TXT)
 Q
 ;
MDP ; [ 05/26/94  5:52 PM ]
 N SUG,DG K %MDP,%MDS ;U 0
 I $D(MDPB) S PRINT=$G(@$$^W4PL@("LP")),SUG=$G(@$$^W4PL@("LP","SUG"),5) Q:PRINT=""  G EMDP
 S MDPPART=$$^%L3MYDVN
 I $P=0!($P=""),$D(PARTMSF) S MDPPART=PARTMSF
 I 'MDPPART!'$D(@$$^W4PLUK@(MDPPART,"LP")) S MDPPART=1
 S PRINT=$G(@$$^W4PLUK@(MDPPART,"LP")) Q:PRINT=""
 S SUG=$G(@$$^W4PLUK@(MDPPART,"LP","SUG")) I SUG="" S SUG=6
 S %MDP("SUG")=SUG
EMDP D TV^W4MDP(SUG)
 Q
 ;
DEFMDP ;
 N P,M
 S M="" F  S M=$O(@$$^W4PRM@("MDP",M)) Q:M=""  D
 .S P=$P(^(M),"\",3) I P S P(P)=$P(^(M),"\")
 ;
 S M="" F  S M=$O(@$$^W4PLUK@(M)) Q:M=""  D
 .I $G(@$$^W4PLUK@(M,"LP")),$G(@$$^W4PLUK@(M,"LP","SUG")) D
 ..S P=@$$^W4PLUK@(M,"LP"),P(P)=$G(@$$^W4PLUK@(M,"LP","SUG"))
 ;
 I $D(@$$^W4PRM@("MDPMSL")) N I D
 .F I=1:1:$L($G(@$$^W4PRM@("MDPMSL")),",") D
 ..S P=$P(@$$^W4PRM@("MDPMSL"),",",I),P(P)=$G(@$$^W4PRM@("MDPMSL","SUG"))
 ;
 I $D(P(N)) S SUG=P(N) D TV^W4MDP(SUG)
 ;
 I $D(P(-N)) S SUG=P(-N) D TV^W4MDP(SUG)
 Q
 ;
UDEV(N) ;
 I $$MDPNET(N) Q  U "SCK$"_$J Q
 U @$$^W4DEV@(+N):(NOWRAP)
 Q
 ;
MDPNET(N) ;
 I $G(@$$^W4DEV@(+N))?1N.N1"."1N.E Q 1
 Q 0

W4PCPROG
W4PCPROG ; PREPARE FOR BACKGROUND                                      [ 22.07.25 04:16 ] [ 21.07.25 04:27 ] [ 31.12.24 13:42 ] 
 Q
 ;
JPC(N,JB) ;
 N (N,JB)
 S WAIT=$$WAIT
 H WAIT S OK=0
 I N<0 K @$$^W4PC@(N)
 ;
 Q:N<3!(N=54)
 ;
 I $$^%L1FLAG($$^W4flag_"("_+N_")") Q
 ;
 I '$$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 I $$MDPNET(N) C "SCK$"_$J
 ;
 D ^W4IN D DEFMDP K MDPMDB
 ;
 I $G(SUG)=8 D:$$MDPNET(N) OPN(N) D:OK INIT8(N) C:$$MDPNET(N) "SCK$"_$J
 ;
 S PAR="" F  S PAR=$O(@$$^W4GL("PAR")@(PAR)) Q:PAR=""  D
 .S IND=$P($P(@$$^W4GL("PAR")@(PAR),"**",11),">",2) I IND D
 ..N %MDP,GWPC,MDPS,PRINT D ^W4MDP(IND) I $G(PRINT) S MDPMDB(PRINT)=""
 ;
JPC1 S $ZT="S $ZT="""",zr=$R ZG "_$ZL_":ER"
 ;
 I $$^%L1FLAG($$^W4flag_"("_+N_")") D:$G(OK) CLN(N,1) Q  ; -- KVAR PATUAH
 I $D(@$$^W4STLOOP@("PC")) K @$$^W4flag@(+N) D:$G(OK) CLN(N,1) Q  ; -- LEHAFSIK
 ;
 S OKSTOP=0
 I $G(@$$^W4PRM@("PCMDBMST")),+N'=90 D PCMDBMST
 I OKSTOP H 2 G JPC1
 ;
 S OKP=$$OKP(N)
 I 'OKP,'$$OKHM H WAIT G JPC1 ; -- EIN MA LEHADPIS
 ;
 I $$MDPNET(N) D OPN(N) I OK,$D(@$$^W4DEV@(+N))#2 D UDEV(N)
 I $$MDPNET(N),'OK H WAIT D CLN(N,0) G JPC1
 ;
 I 'OKP D
 .D ^W4IN,^%L1TS S THZ=$G(@$$^W4PRM@("TIMEHZ")),TTM=$G(@$$^W4PRM@("TIMETM"))
 .S TIME=P1DZ-1_"00000"
 .F  S TIME=$O(@$$^W4GL("P1HM")@(TIME)) Q:TIME=""  S HZM="" F  S HZM=$O(@$$^W4GL("P1HM")@(TIME,HZM)) Q:HZM=""  Q:$L($P($G(@$$^W4ORD@(HZM)),"\"))<4  Q:$D(@$$^W4PC@(N))  D
 ..S DT=$E(TIME,1,5),TT=+$E(TIME,6,10)
 ..I $G(@$$^W4ORD@(HZM,"S"))#2 D  Q
 ...K @$$^W4GL("P1HM")@(TIME,HZM) D ^%S2GLSV($$^W4GL("P1HM")_"("""_TIME_""","_HZM_")",$$^W4FGIB,"K")
 ..I $H-DT=0,TT-($P($H,",",2)\60)<TTM,$L($P($G(@$$^W4ORD@(HZM)),"\"))>3,'$D(@$$^W4GL("P1NORING")) D
 ...N P1MSG S P1MSG=$G(@$$^W4GL("P1MSG")@(HZM))
 ...I P1MSG,+P1MSG'=N!($P($H,",",2)-$P(P1MSG,"|",2)<60) Q
 ...S %MSG=" "_HZM_" dpnfdl gelyn zcerz witdl egkyz l` " D ALL H 1
 ...S @$$^W4GL("P1MSG")@(HZM)=N_"|"_$P($H,",",2)
 ..Q:$D(@$$^W4GL("P1HM")@(TIME,HZM,N))
 ..D ZMANK I DT=D,TT-T'>(THZ+30) Q
 ..I $H-DT=0,TT-($P($H,",",2)\60)<THZ,$D(@$$^W4ORD@(HZM)),'$D(MDPMDB(N)),$G(@$$^W4GL("P1NORING"))<2 D
 ...Q:$G(SUG)'=3&($G(SUG)'=6)&($G(SUG)'=8)
 ...S PC(N,1)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,2)=%MDP("B")_%MDP("R")_$TR("    !!! egkyz l`",TS0,TSS)_%MDP("RL")_%MDP("N")
 ...S PC(N,3)=%MDP("B")_"     "_HZM_$TR(" dpnfd",TS0,TSS)_%MDP("N")
 ...S PC(N,4)=$J("",10)_$TR("gewl lv` zeidl dxen`",TS0,TSS)
 ...S PC(N,5)=%MDP("B")_"     "_(TT\60_":"_(TT#60))_$TR(" drya",TS0,TSS)_%MDP("N")
 ...S PC(N,6)=%MDP("B")_$TR($J("",20)," ","*")_%MDP("N")
 ...S PC(N,7)=$C(10,10,10,10,10,10)_%MDP("CUT")
 ...N NOKILL S NOKILL="" D JPW S @$$^W4GL("P1HM")@(TIME,HZM,N)=""
 ;
 K PC D JPS,JPW,JPK
 ;
 D CLN(N,0) H WAIT G JPC1
 ;
 ;
OKP(N) ;
 N N1,OKP
 S N1=N-.1,OKP=0
 F  S N1=$O(@$$^W4PC@(N1)) Q:N1=""  I +N1=+N,$D(@$$^W4PC@(N1)) S OKP=1 Q
 Q OKP
 ;
OKHM(STAM) ;
 N OKHM,TIME,HZM S OKHM=0
 S TIME=P1DZ-1_"00000"
 F  S TIME=$O(@$$^W4GL("P1HM")@(TIME)) Q:TIME=""  D
 .S HZM="" F  S HZM=$O(@$$^W4GL("P1HM")@(TIME,HZM)) Q:HZM=""  I $L($P($G(@$$^W4ORD@(HZM)),"\"))>3 S OKHM=1 Q
 Q OKHM
 ;
ER ;
 S TXT=$P($ZS,",",2,4) D MSG(TXT) I $G(N) K ^flag(+N)
 D SVER^%L1X
 Q
 ;
ALL N US,LAST
 I $G(^UCI("MGG"))["/esi" Q
 S US=""
ALLPC N OK F  S US=$O(@$$^W4PLUK@(US)) Q:US=""  D
 .I US>0,$D(@$$^W4DEV@(+US)) D
 ..S OK=1
 ..S LAST=$O(^[$$^W3MAIN]msgbrd(US,99999),-1)+1
 ..N N S N="" F  S N=$O(^[$$^W3MAIN]msgbrd(US,N)) Q:N=""  I $G(^(N))=%MSG S OK=0 Q
 ..Q:'OK
 ..S ^[$$^W3MAIN]msgbrd(US,LAST)=%MSG
 Q
 ;
MSG1(%MSG) ;
 D ALL
 Q
 ;
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:1000
 Q DLY
 ;
OPN(N) ;
 S OK=0 K ERPC
 I $D(@$$^W4GL("PL")@("REMOTE","OUT",N)) S OK=1 Q
 ;
 I $$MDPNET(N) D  Q
 .N N1 S N1=+N
 .N ADDR,PORT
 .S ADDR=$G(@$$^W4DEV@(N1)),PORT=9100
 .I ADDR["P" S ADDR=$P(ADDR,"P")
 .K ERPC(N1) S ERPC(N1)=$$^%L2NALAN(ADDR,PORT)
 .;
 .I $G(ERPC(N1)) D  S OK=0 Q
 ..I '$$KITCHEN(N1) Q
 ..I $$NOCHKPRN(N1) Q
 ..D MSGPRER(N1,ERPC(N1))
 .
 .D
 ..D DEFMDP
 ..D UDEV(N)
 ..W $C(27,77,48) ;--- 28/07/17 - SET STANDART
 ..W $C(27,33,8) ;--- 28/07/17 - SET STANDART
 ..W $C(29,76,30,0)
 ..I $G(@$$^W4PRM@("NOBEEP")) D  ; ,$G(SUG)=6 D
 ...W $C(27,67,1,1,0)
 ..W $C(27,50)
 .S OK=1
 ;
 O @$$^W4DEV@(+N):(WRITE:EXCEPTION="G OPNE^W4PCPROG")
 S OK=1 Q
 ;
OPNE S OK=0 Q
 ;
 ;
CLN(N,PRM) ;
 I $$MDPNET(N) C "SCK$"_$J Q
 I $G(PRM) I $D(@$$^W4DEV@(+$G(N))) C @$$^W4DEV@(+N)
 Q
 ;
MSGPRER(DEV,ER) ;
 D ^W4IN Q:$G(DEV)=""
 S %MSG=" "_$$FUNC^%UCASE(ER)_" : "_$$NMPR(DEV)_" "_DEV_" zqtcna dira " D ALL H 1
 ;;S @$$^W4GL("P1PCER")@(DEV,$O(@$$^W4GL("P1PCER")@(DEV,9999999),-1)+1)=ER
 Q
 ;
NMPR(DEV) ;
 N NMPR,N,A S NMPR=""
 I $G(DEV)="" Q ""
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D  Q:$L(NMPR)
 .S A=$G(^(N))
 .I $P(A,"\",3)=DEV S NMPR=$P(A,"\",4)
 Q NMPR
 ;
ZMANK N ZMANK,DATE S ZMANK=$P($G(@$$^W4ORD@(HZM)),"\",4)
 S DATE=$P(ZMANK,"  ")
 S TIM=$P(ZMANK,"  ",2)
 S D=$$^%L1DC(DATE,3),T=$P(TIM,":")*60+$P(TIM,":",2)
 Q
 ;
JPS N N0,OKP S N0=N-.1,OKP=0
 F  S N0=$O(@$$^W4PC@(N0)) Q:N0=""  I +N0=+N,$D(@$$^W4PC@(N0)) D
 .N N1,J S N1="" K PC
 .F J=1:1 S N1=$O(@$$^W4PC@(N0,N1)) Q:N1=""  D
 ..S PC(N0,N1)=$G(^(N1))
 Q
 ;
JPW ;
 N JPSL S JPSL=$G(@$$^W4PRM@("PCDLY"),4)
 I JPSL<1 S JPSL=1
 ;
 N N0,OKP S N0=N-.1,OKP=0 F  S N0=$O(PC(N0)) Q:N0=""  I +N0=+N D
 .N N1,J S N1="" F J=1:1 S N1=$O(PC(N0,N1)) Q:N1=""  D BDIKA Q:ERMDP  D  D DOS K PC(N0,N1) I '$D(NOKILL) L +@$$^W4PC@(N0,N1):1 K @$$^W4PC@(N0,N1) L -@$$^W4PC@(N0,N1)
 ..I $D(@$$^W4PL@("REMOTE","OUT",N)) Q
 ..N ST S ST=$G(PC(N0,N1))
 ..N WT S WT=0 I ST["<<WAIT>>" S ST=$$RPL^%L1FRM(ST,"<<WAIT>>",""),WT=1
 ..D UDEV(N) W ST I $E(ST,$L(ST)-1,$L(ST))'=$C(13,10) W !
 ..I '(J#JPSL) H .06
 ..I WT H 1
 Q
 ;
JPK ;
 K PC
 Q
 ;
BDIKA ; N - PORT NUMBER
 S ERMDP=0 I $D(@$$^W4PL@("REMOTE","OUT",+N)) Q
 I '$D(@$$^W4DEV@(+N)) S ERMDP=1 Q
 I $G(ERPC(+N)) S ERMDP=2 G BDER
 I $$MDPNET(N) D UDEV(N) Q
 N I1
 F I1=1:1:3 S ERMDP=0 Q:$$^%L1READY(@$$^W4DEV@(+N))>0  H 1 S ERMDP=3
BDER I ERMDP,'$D(@$$^W4GL("NOSOOB")) F I=1:1 Q:'$D(@$$^W4PRM@("MDP",I))  I $P(^(I),"\",3)=N S %MSG=" ! "_$G(ERMDP)_" d`iby - dpken `l ("_N_" hxet) "_$P(^(I),"\",4)_" zqtcn " D ALL H 12 Q
 D UDEV(N)
 Q
 ;
DOS ;
 S ^[$$^W3MAIN]PC(N0,$O(^[$$^W3MAIN]PC(N0,999999),-1)+1)=PC(N0,N1)
 Q
 ;
MSG(TXT) ;
 D MSG1(TXT)
 Q
 ;
MDP ; [ 05/26/94  5:52 PM ]
 N SUG,DG K %MDP,%MDS ;U 0
 I $D(MDPB) S PRINT=$G(@$$^W4PL@("LP")),SUG=$G(@$$^W4PL@("LP","SUG"),5) Q:PRINT=""  G EMDP
 S MDPPART=$$^%L3MYDVN
 I $P=0!($P=""),$D(PARTMSF) S MDPPART=PARTMSF
 I 'MDPPART!'$D(@$$^W4PLUK@(MDPPART,"LP")) S MDPPART=1
 S PRINT=$G(@$$^W4PLUK@(MDPPART,"LP")) Q:PRINT=""
 S SUG=$$MDPS^W4MDP(PRINT)
 S %MDP("SUG")=SUG
EMDP D TV^W4MDP(SUG)
 Q
 ;
DEFMDP ;
 N P,M
 S M="" F  S M=$O(@$$^W4PRM@("MDP",M)) Q:M=""  D
 .S P=$P(^(M),"\",3) I P S P(P)=$P(^(M),"\")
 ;
 S M="" F  S M=$O(@$$^W4PLUK@(M)) Q:M=""  D
 .I $G(@$$^W4PLUK@(M,"LP")),$G(@$$^W4PLUK@(M,"LP","SUG")) D
 ..S P=@$$^W4PLUK@(M,"LP"),P(P)=$G(@$$^W4PLUK@(M,"LP","SUG"))
 ;
 I $D(@$$^W4PRM@("MDPMSL")) N I D
 .F I=1:1:$L($$MDPMSL^W4PRM,",") D
 ..S P=$P($$MDPMSL^W4PRM,",",I),P(P)=$G(@$$^W4PRM@("MDPMSL","SUG"))
 ;
 S SUG=""
 I $D(P(N)) S SUG=P(N) D TV^W4MDP(SUG)
 ;
 I $D(P(-N)) S SUG=P(-N) D TV^W4MDP(SUG)
 Q
 ;
 ;
INIT8(N) ;
 K PC S PC(+N,1)=$C(31,27,31,188,19,20,0) D JPW H 1
 S PC(+N,1)=$C(13,10)
 S PC(+N,2)=$C(27,51,70) D JPW
 ;
 Q
 ;
UDEV(N) ;
 I $$MDPNET(N) Q  U "SCK$"_$J Q
 U @$$^W4DEV@(+N):(NOWRAP)
 Q
 ;
MDPNET(N) ;
 I $G(@$$^W4DEV@(+N))?1N.N1"."1N.E Q 1
 Q 0
 ;
KITCHEN(PORT) ;
 N A,OK S OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S A=$G(^(N)) D
 .I $P(A,"\",3)=+PORT S OK=N
 Q OK
 ;
NOCHKPRN(PORT) ;
 N PRN S PRN=$$KITCHEN(PORT) I 'PRN Q 1
 I $D(@$$^W4GL("W4NOCHKP")@($$^W4DZ,PRN)) Q 1
 Q 0
 ;
MSGBRD(DVN)
 N N,A,TXT I $G(DVN)="" Q "<PUSTO>"
 S TXT=""
 S N="" F  S N=$O(@$$^W4GL("msgbrd")@(DVN,N)) Q:N=""  D
 .S A=$G(@$$^W4GL("msgbrd")@(DVN,N))
 .K @$$^W4GL("msgbrd")@(DVN,N)
 .I $L(A),(" "_TXT_" ")'[(" "_A_" ") S TXT=TXT_A_"  "
 S:TXT="" TXT="<PUSTO>"
 Q $$H2U^%L1FRM(TXT)
 ;
WAIT(STAM) ;
 N WAIT S WAIT=$G(@$$^W4PRM@("PCWAIT"))
 I 'WAIT S WAIT=1
 I WAIT<.5 S WAIT=.5
 I WAIT>1 S WAIT=1
 Q WAIT
 ;
PCMDBMST ;
 N J,N0,OKP,K S N0=89.9,K=0
 F  S N0=$O(@$$^W4PC@(N0)) Q:N0=""  I +N0=90,$D(@$$^W4PC@(N0)) D
 .N N1,J S N1=""
 .F J=1:1 S N1=$O(@$$^W4PC@(N0,N1)) Q:N1=""  S K=K+1
 I K>250 S OKSTOP=1
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCST
W4PCST(STZ,DISP) ; [ 17.08.23 10:52 ] [ 21.03.22 12:12 ] [ 22.11.20 15:53 ] 
STZ ;
 I '$G(DISP) D ^W4MDPPC
 I $$GETP^%W1PRM("NOPC") S PRINT=0
 I '$D(P1DZ) D ^W4IN
 ;
 N STZNP S STZNP=STZ
 I $D(%MDP("B")),$D(%MDP("N")),$G(DISP) D
 .S STZNP=$$RPL^%L1FRM(STZ,%MDP("B"),"")
 .S STZNP=$$RPL^%L1FRM(STZNP,%MDP("N"),"")
 ;
 I $G(DISP) D
 .S STZNP=$$RPL^%L1FRM(STZNP,$C(27)_"W1","")
 .S STZNP=$$RPL^%L1FRM(STZNP,$C(27)_"W0","")
 ;
 I $G(DISP) D  Q
 .N IND S IND=$O(@$$^W4MAIN("TMPS111")@(999999),-1)+1
 .S @$$^W4MAIN("TMPS111")@(IND)=$J("",20)_STZNP
 .I $G(PRKOT) S @$$^W4MAIN("TMPS111")@(IND,"KOT")=1
 ;
 I $D(P1TOT) G S0
 I $G(DOCH)'="Z",'$D(P1X) G S0
 ;
 N NZ,NP
 S NZ=$G(@$$^W4GL("Z"))+1
 S NP=$ZP(@$$^W4GL("Z")@(P1DZ,NZ,99999))+1
 S @$$^W4GL("Z")@(P1DZ,NZ,NP)=STZNP
 ;
 Q:$D(NOPC)
 ;
S0 ;
 N TXT S TXT=STZ
S1 I '$G(PRINT) G ES1
 I $$GETP^%W1PRM("NOPC") G ES1
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 N SM S SM=6 S:$D(SM1) SM=SM1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 N ST S ST=$J("",SM)_$TR(TXT,TS0,TSS)
 I PRINT=54,$$^%L1T2P(ST) G ES1
S11 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=$E(ST,1,255)
ES1 K TXT,STZ
 Q
 ;
KAV S STZ=$TR($J("",23)," ","-") D STZ
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCTM
W4PCTM(STAM) ; [ 06.11.08 18:28 ] [
 Q "^[$$^W3MAIN]pctm"

W4PCTOT
W4PCTOT ; [ 08.06.26 16:37 ] [ 14.05.26 09:09 ] [ 14.04.26 14:50 ] 
 ;-- INPUT: P1X: 1 - ALL REPORTS
 ;               2 - PDJON NETTO
 ;               3 - WAITERS
 ;               4 - ONE WAITER
 N (JB,%ARG,%REM)
 D REST^W4PCPRM
 ;
 I $G(P1X),+P1X'=1,+P1X'=2,+P1X'=7,+P1X'=8,+P1X'=9 Q
 D ^W4IN,^%L1TS
 I '$G(DISP) D ^W4MDPPC 
 ;
 S (DT1,DT2)=P1DZ
 ;
 I $D(P1TOT) D
 .S DT1=$$^%L1DC($$SPA^%L1FRM($P(P1TOT,"-",1)),3),DT2=DT1
 .I P1TOT["-" D
 ..S DT2=$$^%L1DC($$SPA^%L1FRM($P(P1TOT,"-",2)),3)
 .S DAT1=$$^%L1DC(DT1,1)
 .S DAT2=$$^%L1DC(DT2,1)
 ;
 I $G(P1TOT)="" S P1PCTOT=""
 ;
 D 102^W4TOT
 ;
 S TIP=$G(TIP)
 I 'TIP,$G(TIP1) N TIP S TIP=TIP1
 ;
 S SM=10
 S NZ=$G(@$$^W4GL("Z"))+1
 ;
 S TXT="" D S1
 ;
 I '$D(P1TOT) D
 .I $$HB S TXT=$$^%L1DC(P1DZ,1)_" "_$$PCTX("REPTODATE","S") Q
 .S TXT=$$PCTX("REPTODATE","S")_" "_$$^%L1DC(P1DZ,1)
 ;
 I $D(P1TOT),P1TOT'["-" D
 .I $$HB S TXT=DAT1_" "_$$PCTX("REPTODATE","S") Q
 .S TXT=$$PCTX("REPTODATE","S")_" "_DAT1
 ;
 I $D(P1TOT),P1TOT["-" D
 .S TXT=$G(%MDP("B"))_$$PCTX("REPTOPERIOD","S")_$G(%MDP("N")) D S1
 .S TXT="  "_DAT2_" - "_DAT1
 ;
 S TXTL=$L(TXT) D S1
 ;
 I $G(P1X("SHUL")) D
 .I $$HB S TXT=$J(P1X("SHUL")_" : "_$$PC^W4DICTBL,TXTL) D S1 Q
 .S TXT=$J($$PC^W4DICTBL,TXTL)_" : "_P1X("SHUL") D S1 Q
 ;
 I $G(P1X("PART")) D
 .I $$HB S TXT=$J(P1X("PART")_" : "_$$PCTX("POSNUMBER","S"),TXTL) D S1 Q
 .S TXT=$J($$PCTX("POSNUMBER","S")_" : "_P1X("PART"),TXTL) D S1 Q
 ;
 I $G(P1X("ULAM")) D
 .N UL S UL=P1X("ULAM")
 .S TXT=$G(@$$^W4GL("W4ATAR")@(UL))
 .I $$HB S TXT=$J(TXT_" "_UL_" : xz`",TXTL) D S1 Q
 .S TXT=$J($$PCTX("ULAM","S")_" : "_UL,TXTL) D S1 Q
 ;
 S TXT=$TR($J("",TXTL)," ","-") D S1
 S PRPTKUP=0,PTKUP=0
 N HFKP
 D
 .I '$D(P1TOT) D
 ..S PTKUP=$$PTKUP(NZ,P1DZ)
 ..I $G(PTKUP) S MZM=MZM+PTKUP,MZMS=MZMS+PTKUP,PRPTKUP=1
 .I $$HB S TXT=$J(MZM,7,2)_" :    onefn "_$J($G(MZQ),3) D S1 Q
 .S TXT=$J($G(MZQ),3)_" "_$$PCTX("CASH")_" : "_$J($G(MZM),7,2) D S1 Q
 ;
 I PRPTKUP D
 .I $$HB S TXT=$J(PTKUP,7,2)_" : (-) dtewa dcwtd " D S1 Q
 .S TXT=$J("",4)_$$PCTX("HFKSUM")_" (-) : "_$J($G(PTKUP),7,2) D S1 Q
 ;
 I $$MATB^W4PRM D
 .N SM S SM=0
 .S TXT="" D S1
 .N N,I S N=1,I=0
 .F  S N=$O(SUMMTB(N)) Q:N=""  D
 ..N SHAAR S SHAAR=1 I SUMMTB(N) S SHAAR=$P(SUMMTB(N),"!",2)/SUMMTB(N)
 ..S I=I+1 S TXT=$J(SUMMTB(N)*SHAAR,7,2)_" = "_$J(SHAAR,7,3)_" *"_$J(+SUMMTB(N),7,2)_" : "_$J($P($G(@$$^W4GL("P1SUGM")@(N)),"\",2),5) D S1
 .S TXT=$J(MZM-$G(SUMMTB),7,2)_$J("",19)_" : "_$$PCTX("NIS") D S1
 .S TXT="" D S1
 ;
 S TIP=$G(TIP)
 I $$^W4TIPMIN,$G(TIP) D
 .I $$^W4TIPCBU($G(P1DZ)) Q
 .D
 ..I $$HB S TXT=$J(TIP,7,2)_" :  "_$$TIPPS^W4TOT("")_" "_$J($G(TIQ),3) D S1 Q
 ..S TXT=$J($G(TIQ),3)_" "_$$ENG^%L1FRM($$TIPPS^W4TOT(""),$$WD^W4PCTX)_" : "_$J(TIP,7,2) D S1 Q
 ;
 I $$^W4TIPMIN&$G(TIP)!$G(PTKUP) D
 .I $$HB S TXT=$J(MZM-$S($$^W4TIPMIN:TIP,1:0)-$G(PTKUP),7,2)_" : ehp onefn "_$J("",3) D S1 Q
 .S TXT=$$BFSP_$$PCTX("CASHNETTO")_" : "_$J(MZM-$S($$^W4TIPMIN:TIP,1:0)-$G(PTKUP),7,2) D S1
 ;
 D
 .I $$HB S TXT=$J(CHKO,7,2)_" :    d`gnd "_$J($G(CHQ),3) D S1 Q
 .S TXT=$J($G(CHQ),3)_" "_$$PCTX("CHECK")_" : "_$J(CHKO,7,2)
 D
 .I $$HB,$G(CHKM) S TXT=$J(CHKM,7,2)_" : zi`wpa dxard "_$J($G(BNQ),3) D S1 Q
 .S TXT=$J($G(BNQ),3)_" "_$$PCTX("CHECK")_" : "_$J(CHKM,7,2)
 ;
 D
 .I $$HB S TXT=$J(ISR,7,2)_" :  hxk`xyi "_$J($G(ISR(1)),3,0) D S1 Q
 .S TXT=$J(ISR(1),3,0)_" "_$$PCTX("ISRACARD")_" : "_$J(ISR,7,2)
 D
 .I $$HB S TXT=$J(VIZ,7,2)_" :     dfie "_$J($G(VIZ(1)),3,0) D S1 Q
 .S TXT=$J(VIZ(1),3,0)_" "_$$PCTX("VISA")_" : "_$J(VIZ,7,2)
 D
 .I $$HB S TXT=$J(DNR,7,2)_" :   qxpiic "_$J($G(DNR(1)),3,0) D S1 Q
 .S TXT=$J(DNR(1),3,0)_" "_$$PCTX("DINERS")_" : "_$J(DNR,7,2)
 ;
 D
 .I $$HB S TXT=$J(AEX,7,2)_" : .qw` 'n` "_$J($G(AEX(1)),3,0) D S1 Q
 .S TXT=$J(AEX(1),3,0)_" "_$$PCTX("AEX")_" : "_$J(AEX,7,2)
 D
 .I $$HB S TXT=$J(ALPHA,7,2)_" :    ine`l "_$J($G(ALPHA(1)),3,0) D S1 Q
 .S TXT=$J(ALPHA(1),3,0)_" "_$$PCTX("LEUMI")_" : "_$J(ALPHA,7,2)
 ;
 D
 .I $$HB S TXT=$J(KK,7,2)_" : "_$$^W4VT($$GFC^W4VT)_" "_$J($G(KK(1)),3,0) D S1 Q
 .S TXT=$J(KK(1),3,0)_" "_$$PCTX("KK")_" : "_$J(KK,7,2)
 ;
 I $G(@$$^W4PRM@("MP")) D
 .I $$HB S TXT=$J(MP,7,2)_" :   qtihlen "_$J($G(MP(1)),3,0) D S1 Q
 .S TXT=$J(MP(1),3,0)_" "_$$PCTX("MP")_" : "_$J(MP,7,2)
 ;
 D
 .I $$HB S TXT=$J(FI,7,2)_" : ihipit "_$J($G(FI(1)),3,0) D S1 Q
 .S TXT=$J(FI(1),3,0)_" "_$$PCTX("FI")_" : "_$J(FI,7,2)
 ;
 D
 .D KAV
 .I $$HB D  Q
 ..S TXT=$J(SCA,7,2)_" : `""k k""dq "_$J(SCA(1),3,0) D S1
 ..S TXT=$J(CAOUT,7,2)_" : uega eaiegy `""k k""dq"_$J($G(CAOUT(1)),3,0) D S1
 .
 .S TXT=$J(SCA(1),3,0)_" "_$$PCTX("TOTALCA")_" : "_$J(SCA,7,2)
 .S TXT=$J($G(CAOUT(1)),3,0)_" "_$$PCTX("TOTALCAOUT")_" : "_$J(CAOUT,7,2)
 ;
 I $G(SMC) D
 .I $$HB S TXT=$J(SMC,7,2)_" : ""w'v iin""-a mley mkezn"_$J($G(SMC(1)),3,0) D S1
 .I '$$HB S TXT=$J(SMC(1),3,0)_" "_$$PCTX("SMC")_" : "_$J(SMC,7,2)
 .I $$HB D
 ..S TXT=$J(SCA-SMC,7,2)_" : zkxrna mley"_$J($G(SCA(1))-$G(SMC(1)),3,0) D S1
 .I '$$HB D
 ..S TXT=$J(SCA(1)-SMC(1),3,0)_" "_$$PCTX("PAIDINSYSTEM")_" : "_$J(SCA-SMC,7,2)
 ;
 S TXT="" D S1
 D KAV
 I $$HB S TXT=$J(SHUM,7,2)_" : ehp oeict k""dq" D S1
 I '$$HB S TXT=$$BFSP_$$PCTX("TOTALNETTO")_" : "_$J(SHUM,7,2) D S1
 ;
 D MAM
 ;
 I '$$^W4LKH D
 .I $$HB D
 ..S TXT=$J($G(ASR),7,2)_" : dtwd k""dq "_$J($G(ASR(1)),3,0) D S1
 ..N MHIROT S MHIROT=$G(ASR)+$G(TL)+SHUM
 ..S TXT=$J(MHIROT,7,2)_" : zexikn k""dq" D S1
 ..I $G(DT1),'$$NOMAM^W4PRM D
 ...S TXT=$J(MHIROT*100/(100+$$MAMD^W4L(DT1)),7,2)_" : n""rn iptl zexikn k""dq" D S1
 ..S TXT="" D S1
 ..S TXT=$J($G(@$$^W4GL("P1MG")@(P1DZ)),7,0)_" : dxibn zegizt 'qn " D S1
 ..;;I $$SF^W4PRM S TXT=$J(MZMS,7,2)_" :    dxibn onefn" D S1
 .
 .I '$$HB D
 ..S TXT=$J($G(ASR(1)),3,0)_" "_$$PCTX("TOTCRED")_" : "_$J($G(ASR),7,2) D S1
 ..S TXT=$$BFSP_$$PCTX("TOTSALES")_" : "_$J($G(ASR)+$G(TL)+SHUM,7,2) D S1
 ..S TXT="" D S1
 ..S TXT=$$BFSP_$$PCTX("TOTOPNDRW")_" "_$J($G(@$$^W4GL("P1MG")@(P1DZ)),7,0)
 ;
 D KHMK
 ;
 I $$^W4LKH,'$$PART D
 .S TXT=$J(HB,7,2)_" :  qn zeipeayg k""dq"_$J(HBQ,4) D S1
 .S TXT="[-] "_$J(HBZ,7,2)_" : iekif qn 'yg k""dq"_$J(HBZQ,4) D S1
 .S TXT=$J(TM,7,2)_" : gelyn zecerz k""dq"_$J(TMQ,4) D S1
 .S TXT="" D S1
 .D KAV
 .S TXT=$J(SHUM+HB+TM-HBZ,7,2)_" : zexikn k""dq" D S1
 .S TXT="" D S1
 ;
 I $G(@$$^W4PRM@("ZM")),$G(DOCH)="Z",'$$PART D  ; --- Z MIZTABER
 .N N,N1,I,DAT,Z,ZM S ZM=0
 .I $D(@$$^W4GL("ZM"))#2,$D(@$$^W4GL("ZM")@("LAST"))#2 D  G ZME
 ..N DT F DT=@$$^W4GL("ZM")@("LAST")+1:1:P1DZ-1 D
 ...S DAT=$$^%L1DC(DT,2)
 ...I $D(@$$^W4GL("Z1")@(DAT)) D PDN(DAT) D
 ....S @$$^W4GL("ZM")=@$$^W4GL("ZM")+$G(Z("A"))
 ....S @$$^W4GL("ZM")@("LAST")=DT
 .
 .D ZMNEW
 .
ZME .D PDN($$^%L1DC(P1DZ,2))
 .S ZM=$G(@$$^W4GL("ZM"))+$G(Z("A"))
 .S @$$^W4GL("ZM")=ZM
 .S @$$^W4GL("ZM")@("TM")=$H_"\"_P1DZ
 .S TXT="" D S1
 .I $$HB S TXT=$J(ZM,9,2)_" : xahvn oeict k""dq" D S1
 .I '$$HB S TXT=$$BFSP_$$PCTX("NETTOACCUM")_" : "_$J(ZM,9,2) D S1
 .D ^%S2GLSV($$^W4GL("ZM"),$$^W4FGIB)
 .Q
 ;
 ;
 S MSDMSL=0,TAWMSD=+$$TAWMSD^W4PRM
 ;
 I '$$KZR,'$$^W4LKH,'$$SUPER^W3PRM,$$MSD^W4PRM!$$TAW^W4PRM!$$MSL^W4PRM I '$G(P1X("SHUL")) D
 .S MSDMSL=1
 .
 .N SUMMSD,SUMAMSD,SUMTAW,SUMATAW,SUMMSL,SUMAMSL D
 ..I $$PART N SMSH S SMSH=0
 ..S (SUMMSD,SUMAMSD,SUMTAW,SUMATAW,SUMMSL,SUMAMSL)=0
 .
 .I '$$MSD^W4PRM G TAW
 .
 .D PCD("S") S TXT="" D S1
 .;
 .D KAV
 .N SD S SD=SSOAD I $G(TAWMSD) S SD=SOADR
 .N TXMSD S TXMSD="dcrqn"
 .I $$TAW^W4PRM!$$SUPER^W3PRM S TXMSD="dtew"
 .I $$HB D
 .        .S TXT=$J(SUMMSD,7,2)_" : "_TXMSD_" ehp oeict k""dq" D S1
 .       .S TXT=$J(SUMAMSD,7,2)_" : "_TXMSD_" ly dtwd k""dq" D S1
 ..S TXT=$J(SUMMSD+SUMAMSD,7,2)_" : "_TXMSD_" ly zexikn k""dq" D S1
 ..
 ..S TXT=$J(SD,7,0)_" :  zegewl k""dq " D S1
 ..I SD S TXT=$J(SUMMSD+SUMAMSD/SD,7,2)_" :  gewll rvenn " D S1
 .
 .I '$$HB D
 . .S TXT=$$PCTX("TOTNETTOREST")_" : "_$J(SUMMSD,7,2) D S1
 . .S TXT=$$PCTX("TOTCREDREST")_" : "_$J(SUMAMSD,7,2) D S1
 . .S TXT=$$PCTX("TOTALREST")_" : "_$J(SUMMSD+SUMAMSD,7,2) D S1
 . .S TXT=$$PCTX("TOTALGUESTS")_" : "_$J(SD,7,0) D S1
 . .I SD S TXT=$$PCTX("AVERAGE2DINER")_" : "_$J(SUMMSD+SUMAMSD/SD,7,2)
 .;
 .S TXT="" D S1
TAW .
 .I '$G(TAWMSD) D  G MSL
 ..N RKV F RKV="MZM","TIP","CHK","ISR","VIZ","DNR","AEX","JSB","ALPHA","MP","KK","FI" D
 ...S @RKV@("L")=$G(@RKV@("L"))+$G(@RKV@("T"))
 ...S @RKV@("L1")=$G(@RKV@("L1"))+$G(@RKV@("T1"))
 .
 .D PCD("W") S TXT="" D S1
 .D KAV
 .;
 .D
 ..N SUMT S SUMT=$G(SUMTAW)+$G(SUMATAW)
 ..I $$HB D
 ...S TXT=$J($G(SUMTAW),7,2)_" : TAW ehp oeict k""dq" D S1
 ...S TXT=$J($G(SUMATAW),7,2)_" : TAW   ly dtwd" D S1
 ...S TXT=$J(SUMT,7)_" :  TAW k""dq " D S1
 ...S TXT=$J($G(SMSDW),7)_" :  TAW zepnfd 'qn" D S1
 ...I $G(SMSDW) S TXT=$J(SUMT/SMSDW,7,2)_" :  TAW dpnfdl rvenn" D S1
 ..I '$$HB D
 ...S TXT=$$PCTX("TOTNETTOTAW")_" : "_$J($G(SUMTAW),7,2) D S1
 ...S TXT=$$PCTX("TOTCREDTAW")_" : "_$J($G(SUMATAW),7,2) D S1
 ...S TXT=$$PCTX("TOTALTAW")_" : "_$J(SUMT,7,2) D S1
 ...S TXT=$$PCTX("TOTALTAWORDS")_" : "_$J(SMSDW,7,2) D S1
 ...I $G(SMSDW) S TXT=$$PCTX("TOTALTAWAV")_" : "_$J(SUMT/SMSDW,7,2) D S1
 .
MSL .I '$$MSL^W4PRM G MSLE
 .D PCD("L") S TXT="" D S1
 .D KAV
 .
 .I $$HB D
 ..S TXT=$J(SUMMSL,7,2)_" : migelyn ehp oeict k""dq" D S1
 ..;
 ..I SUMDLP,'$$PART D
 ...S TXT=$J(SUMDLP,7,2)_" :  (migelyn) zgwl "_$S($$TAWMSD^W4PRM:"k""dq",1:" ekeza") D S1
 ..S TXT=$J(SUMAMSL,7,2)_" : migelyn ly dtwd" D S1
 .
 .I '$$HB D
 ..S TXT=$$PCTX("TOTNETTODLV")_" : "_$J($G(SUMMSL),7,2) D S1
 ..I SUMDLP,'$$PART S TXT=$$PCTX("TOTNETTOTAW")_" : "_$J($G(SUMDLP),7,2) D S1
 ..S TXT=$$PCTX("TOTCREDDLV")_" : "_$J($G(SUMAMSL),7,2) D S1
 .
 .N SAHMSL S SAHMSL=SUMMSL+SUMAMSL ;;+SUMDLP+SUMADLP
 .I $$PART S SAHMSL=SUMMSL+SUMAMSL
 .
 .I '$$PART D
 ..I SUMADLP D
 ...I $$HB S TXT=$J(SUMADLP,7,2)_" : (migelyn) zgwl ly dtwd" D S1 Q
 ...I '$$HB S TXT=$$PCTX("TOTCREDTAW")_" : "_$J($G(SUMADLP),7,2) D S1
 .
 .I $$HB D
 ..S TXT=$J(SAHMSL,7,2)_" : migelyn zexikn k""dq" D S1
 ..S TXT=$J(SMSH,7)_" : migelyn zenk k""dq " D S1
 ..S TXT=$J(SMSHT,7)_" : ""zgwl"" zenk ekeza" D S1
 ..I SMSH S TXT=$J(SAHMSL/SMSH,7,2)_" : gelynl rvenn" D S1
 ..I SMSHT S TXT=$J(SUMDLP+SUMADLP/SMSHT,7,2)_" :  zgwl rvenn" D S1
 .
 .I '$$HB D
 ..S TXT=$$PCTX("TOTSALESDLV")_" : "_$J($G(SAHMSL),7,2) D S1
 ..S TXT=$$PCTX("TOTQNDLV")_" : "_$J($G(SMSH),7) D S1
 ..I SMSH S TXT=$$PCTX("TOTAVRGDLV")_" : "_$J($G(SAHMSL)/(SMSH-SMSHT),7,2) D S1
 ..I SMSHT S TXT=$$PCTX("TOTAVRGTAW")_" : "_$J(SUMDLP+SUMADLP/SMSHT,7,2) D S1
 .
 .S TXT="" D S1
 .D KAV1
MSLE .S TXT="" D S1
 .I $$HB S TXT=$J(SHUM,7,2)_" : ehp oeict k""dq" D S1
 .I '$$HB S TXT=$$PCTX("TOTALNETTO")_" : "_$J(SHUM,7,2) D S1
 ;
 I $$LL^W4PRM D
 .I $$HB D
 ..S TXT=$J(LLQNS,7)_" : ""zayl"" zepnfd zenk" D S1
 ..S TXT=$J(LLSUMS,7,2)_" : ""zayl"" zepnfd k""dq" D S1
 ..S TXT=$J(LLQNT,7)_" : ""zgwl"" zepnfd zenk" D S1
 ..S TXT=$J(LLSUMT,7,2)_" : ""zgwl"" zepnfd k""dq" D S1
 ..I $$PODNOS^W4PRM D
 ...S TXT=$J(LLQNM,7)_" : ""ybnd lr"" zepnfd zenk" D S1
 ...S TXT=$J(LLSUMM,7,2)_" : ""ybnd lr"" zepnfd k""dq" D S1
 .I '$$HB D
 ..S TXT=$$PCTX("TOTQNSITORD")_" : "_$J(LLQNS,7) D S1
 ..S TXT=$$PCTX("TOTSITORD")_" : "_$J(LLSUMS,7) D S1
 ..S TXT=$$PCTX("TOTQNTAKEORD")_" : "_$J(LLQNT,7) D S1
 ..S TXT=$$PCTX("TOTTAKEORD")_" : "_$J(LLSUMT,7) D S1
 .S TXT="" D S1
 ;
 I HSHUM D
 .S TXT=$TR($J("",TXTL)," ","-") D S1
 .S TXT="" D S1
 .I '$D(P1TOT) D
 ..I $$HB S TXT=$$^%L1DC(P1DZ,1)_" jix`zl zelaw g""ec" D S1 Q
 ..I '$$HB S TXT=$$PCTX("RECEIPTREPORT2DATE")_" "_$$^%L1DC(P1DZ,1) D S1 Q
 .I $D(P1TOT),P1TOT'["-" D
 ..I $$HB S TXT=P1TOT_" jix`zl zelaw g""ec" D S1 Q
 ..I '$$HB S TXT=$$PCTX("RECEIPTREPORT2DATE")_" "_P1TOT D S1 Q
 .I $D(P1TOT),P1TOT["-" D
 ..I $$HB S TXT=" : dtewzl zelaw g""ec" D S1
 ..I '$$HB S TXT=$$PCTX("RECEIPTREPORT2PERIOD") D S1
 .I $D(P1TOT) S TXT="  "_$$RNGDAT(P1TOT) D S1
 .D KAV
 .
 .I $$HB D
 ..S TXT=$J(HMZM,7,2)_" :    onefn" D S1
 ..S TXT=$J(HCHKO+$G(HCHKM),7,2)_" :    d`gnd" D S1
 ..S TXT=$J(HCHKB,7,2)_" : 'pa dxard" D S1
 ..I '$$^W4LKH S TXT=$J(HTL,7,2)_" :     yelz" D S1
 ..S TXT=$J(HISR,7,2)_" :  hxk`xyi "_$J($G(HISR(1)),3,0) D S1
 ..S TXT=$J(HVIZ,7,2)_" :     dfie "_$J($G(HVIZ(1)),3,0) D S1
 ..S TXT=$J(HDNR,7,2)_" :   qxpiic "_$J($G(HDNR(1)),3,0) D S1
 ..S TXT=$J(HAEX,7,2)_" :      AEX "_$J($G(HAEX(1)),3,0) D S1
 ..S TXT=$J(HALPHA,7,2)_" :    ine`l "_$J($G(HALPHA(1)),3,0) D S1
 ..S TXT=$J(HKK,7,2)_" : "_$$^W4VT($$GFC^W4VT)_" "_$J($G(HKK(1)),3,0) D S1
 ..S TXT=$J(HFI,7,2)_" :  ihipit "_$J($G(HFI(1)),3,0) D S1
 ..S TXT="" D S1
 ..S TXT=$J(HSCA,7,2)_" : `""k k""dq "_$J($G(HSCA(1)),3,0) D S1
 ..S TXT="" D S1
 ..S TXT=$J(HSHUM,7,2)_" : lawzd k""dq" D S1
 .
 .I '$$HB D
 ..S TXT=$$BFSP_$$PCTX("CASH")_" : "_$J(HMZM,7,2)
 ..S TXT=$$BFSP_$$PCTX("CHECK")_" : "_$J(HCHKO+$G(HCHKM),7,2)
 ..S TXT=$$BFSP_$$PCTX("MVBANK")_" : "_$J(HCHKB,7,2)
 ..I '$$^W4LKH S TXT=$$BFSP_$$PCTX("COUPON")_" : "_$J(HTL,7,2)
 ..S TXT=$J($G(HISR(1)),3,0)_" "_$$PCTX("ISRACARD")_" : "_$J(HISR,7,2)
 ..S TXT=$J($G(HVIZ(1)),3,0)_" "_$$PCTX("VISA")_" : "_$J(HVIZ,7,2)
 ..S TXT=$J($G(HDNR(1)),3,0)_" "_$$PCTX("DINERS")_" : "_$J(HDNR,7,2)
 ..S TXT=$J($G(HAEX(1)),3,0)_" "_$$PCTX("AEX")_" : "_$J(HAEX,7,2)
 ..S TXT=$J($G(HALPHA(1)),3,0)_" "_$$PCTX("LEUMI")_" : "_$J(HALPHA,7,2)
 ..S TXT=$J($G(HKK(1)),3,0)_" "_$$PCTX("KK")_" : "_$J(HKK,7,2)
 ..S TXT=$J($G(HFI(1)),3,0)_" "_$$PCTX("FI")_" : "_$J(HFI,7,2)
 ..S TXT="" D S1
 ..S TXT=$J($G(HSCA(1)),3,0)_" "_$$PCTX("TOTALCA")_" : "_$J(HSCA,7,2)
 ..S TXT="" D S1
 ..S TXT=$$BFSP_$$PCTX("TOTALRCV")_" : "_$J(HSHUM,7,2)
 .D KAV
 .S TXT="" D S1
 ;
 I $G(@$$^W4PRM@("DMGRA"))!HSHUM D DMGRA
 ;
 S TXT="" D S1
 ;
 I HSHUM D
 .I $$HB S TXT=$J(SHUM,7,2)_" : ehp oeict k""dq" D S1 Q
 .I '$$HB S TXT=$$PCTX("TOTALNETTO")_" : "_$J(SHUM,7,2) D S1 Q
 ;
 I '$$^W4LKH D
 .I $$HB S TXT=$J(TL,7,2)_" : yelz" D S1 Q
 .I '$$HB S TXT=$$PCTX("COUPON")_" : "_$J(TL,7,2) D S1 Q
 ;
 I '$$^W4LKH,$G(@$$^W4PRM@("TOTNA")) D
 .I $$HB D
 ..S TXT=$J(ASR,7,2)_" : dtwd k""dq "_$J($G(ASR(1)),3,0) D S1
 ..S TXT="" D S1
 ..S TXT=$J(ASR+TL+SHUM,7,2)_" : zexikn k""dq" D S1
 .I '$$HB D
 ..S TXT=$$BFSP_$$PCTX("TOTALCREDIT")_" : "_$J(ASR,7,2) D S1
 ..S TXT="" D S1
 ..S TXT=$$BFSP_$$PCTX("TOTALSALES")_" : "_$J(ASR+TL+SHUM,7,2)
 .S TXT="" D S1
 ;
 N TIPIM S TIPIM="mitih"
 I '$$HB S TIPIM="Tips"
 I $L($G(@$$^W4PRM@("TIPPS"))) S TIPIM=@$$^W4PRM@("TIPPS")
 ;
 I '$$KZR,'$$TIPNO^W4TIPPD($G(DT1)),'$$^W4LKH,'$$NOTIPALL^W4PRM D
 .I $$HB D
 ..S TXT=$J($G(TMZ),7,2)_" :  onefna "_TIPIM D S1
 ..S TXT=$J($G(TCA),7,2)_" :   `""ka "_TIPIM D S1
 ..S TXT=$J($G(TASR),7,2)_" :  dtwda "_TIPIM D S1
 ..S TXT=$J($G(TCHK),7,2)_" :   w'va "_TIPIM D S1
 ..S TXT=$J($G(TIP),7,2)_" : "_TIPIM_" k""dq" D S1
 .I '$$HB D
 ..S TXT=TIPIM_" "_$$PCTX("INCASH")_" : "_$J($G(TMZ),7,2) D S1
 ..S TXT=TIPIM_" "_$$PCTX("INCREDCA")_" : "_$J($G(TCA),7,2) D S1
 ..S TXT=TIPIM_" "_$$PCTX("INCRED")_" : "_$J($G(TASR),7,2) D S1
 ..S TXT=TIPIM_" "_$$PCTX("INCHECK")_" : "_$J($G(TCHK),7,2) D S1
 ..S TXT=TIPIM_" : "_$J($G(TIP),7,2) D S1
 ;
 I '$$KZR,$$^W4TIPPD($G(DT1)),'$$NOMAM^W4PRM,'$$^W4LKH,'$$NOTIPALL^W4PRM D
 .I $$^W4TIPCBU($G(DT1)) Q
 .I $$HB S TXT=$J(TIP*100/(100+AHMAM),7,2)_" : n""rn iptl "_TIPIM D S1 Q
 .I '$$HB S TXT=TIPIM_" "_$$PCTX("BEFORETAX")_" : "_$J(TIP*100/(100+AHMAM),7,2) D S1 Q
 ;
 I $$HB D
 .S TXT=$J(HNHS,7,2)_" : mildpn zegpd k""dq " D S1
 .     S TXT=$J($G(HNHL),7,2)_" : dtwd zegewll zegpd " D S1
 .I $G(HNHCIB) S TXT=$J($G(HNHCIB),7,2)_" :'SODEXO' zegpd k""dq " D S1
 .I '$$^W4LKH S TXT=$J($G(HNHT),7,2)_" :miyelz zegpd k""dq " D S1
 .I $G(HNHP) S TXT=$J(HNHP,7,2)_" : mihixtl zegpd k""dq " D S1
 .S TXT=$J(MIN3,7,2)_" : miekif k""dq " D S1
 .S TXT=$J(DMSHS,7,2)_" : gelyn inc k""dq " D S1
 ;
 I '$$HB D
 .S TXT=$$PCTX("TOTALDISC")_" : "_$J(HNHS,7,2) D S1 Q
 .S TXT=$$PCTX("TOTCREDDISC")_" : "_$J(HNHL,7,2) D S1 Q
 .I $G(HNHCIB) S TXT=$$PCTX("TOTCIBDISC")_" : "_$J(HNHCIB,7,2) D S1 Q
 .I '$$^W4LKH S TXT=$$PCTX("TOTCOUPDISC")_" : "_$J(HNHT,7,2) D S1 Q
 .I $G(HNHP) S TXT=$$PCTX("TOTITEMDISC")_" : "_$J(HNHP,7,2) D S1 Q
 .S TXT=$$PCTX("TOTALZIC")_" : "_$J(MIN3,7,2) D S1 Q
 .S TXT=$$PCTX("TOTDLVFEE")_" : "_$J(DMSHS,7,2) D S1 Q
 ;
 I '$$^W4LKH D
 .N SUMP S SUMP=SUMB-$G(BIT)-$S($G(@$$^W4PRM@("BRTDM")):DMSHS,1:0)
 .I $$TIPMIN^W4TIPPD S SUMP=SUMP-$G(TIP)
 .I $$HB S TXT=$J(SUMP,7,2)_" : mekqa mihixt zexikn " D S1
 .I '$$HB S TXT=$$PCTX("TOTALITEMSALES")_" : "_$J(SUMP,7,2) D S1
 ;
 I $$HB D
 .I '$G(@$$^W4PRM@("BITA")) S TXT=$J($G(BIT),7,2)_" : milehia k""dq " D S1
 .I $G(@$$^W4PRM@("BITA")) S TXT=$J($G(BIT),7,2)_" :miitqk milehia k""dq " D S1
 .S TXT=$J(SUMB,7,2)_" : ehexa k""dq " D S1
 ;
 I '$$HB D
 .S TXT=$$PCTX("TOTALDEL")_" : "_$J($G(BIT),7,2) D S1
 .S TXT=$$PCTX("TOTALBRUTTO")_" : "_$J($G(SUMB),7,2) D S1
 ;
 S TXT="" D S1
 K NOPC
 ;
 I $$^W4LKH D  G END
 .I '$G(DISP),$D(%MDP("CUT")) D
 ..D ^W4CUT(PRINT,%MDP("CUT"))
 ;
 I $G(@$$^W4PRM@("MSD")),'MSDMSL D
 .I $$HB D
 ..S TXT=$J(SSOAD,7,0)_" :  zegewl k""dq " D S1
 ..I SSOAD S TXT=$J(SHUM+ASR/SSOAD,7,2)_" :  gewll rvenn " D S1
 .I '$$HB D
 ..S TXT=$$PCTX("TOTALGUESTS")_" : "_$J($G(SSOAD),7,0) D S1
 ..I SSOAD S TXT=$$PCTX("AVRG2DINER")_" : "_$J(SHUM+ASR/SSOAD,7,2) D S1
 ;
 I $$MSL^W4PRM,'MSDMSL D
 .I $$HB S TXT=$J(SMSH,7)_" : migelyn k""dq " D S1 Q
 .S TXT=$$PCTX("TOTALDLV")_" : "_$J($G(SMSH),7,0) D S1
 ;
 I +$G(P1X)'=2,+$G(P1X)'=7,+$G(P1X)'=8,+$G(P1X)'=9,'$G(DISP),$D(%MDP("CUT")) D
 .I $G(@$$^W4PRM@("DOCHP")) Q
 .D ^W4CUT(PRINT,%MDP("CUT"))
 ;
 I $G(@$$^W4PRM@("OPNZDRV")),$G(DOCH)="Z",'$G(DISP),$D(%MDP("P")),$G(PRINT)'="" D
 .N ST S ST=%MDP("P") D S11^W4PCST
 ;
 I '$$KZR,$G(@$$^W4PRM@("ZXBIT")),$G(@$$^W4PRM@("ZXBIT2TOT")) D
 .I $G(DOCH)="X",$G(@$$^W4PRM@("ZXBIT"))=1 Q
 .N SM1 S SM1=1
 .D ZXBIT^W4SGYOM(P1DZ),ZXHNH^W4SGYOM(P1DZ)
 ;
END Q
 ;
 ;
KAV S TXT=$TR($J("",28)," ","-") D S1 Q
KAV1 S TXT=$TR($J("",28)," ","=") D S1 Q
S1 ;
 D ^W4PCST(TXT,DISP)
 Q
 ;
PDN(DAT) ;
 N N,N1,N2,N3,J K Z
 S N1="" F  S N1=$O(@$$^W4GL("Z1")@(DAT,N1)) Q:N1=""  I $G(^(N1))'["ZM"!$D(ZMNEW) D
 .S N2="" F  S N2=$O(@$$^W4GL("Z1")@(DAT,N1,N2)) Q:N2=""  D
 ..I N2'="MTB" S Z(N2)=$G(^(N2,1))
 ..I N2="MTB" S N3="" F  S N3=$O(@$$^W4GL("Z1")@(DAT,N1,N2,N3)) Q:N3=""  S Z("MTB",N3)=$G(^(N3))
 .S Z("V")=0 F J=1:1:9 D
 ..I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ..S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 .
 .S Z("A")=$G(Z("A"))+$G(Z("F"))+$G(Z("G"))+$G(Z("V"))
 .I '$G(@$$^W4PRM@("TOTNA")) S Z("A")=Z("A")+$G(Z("H"))
 .I $$^W4TIPMIN S Z("A")=Z("A")-$G(Z("T"))
 .S $P(@$$^W4GL("Z1")@(DAT,N1),"^",2)="ZM"
 Q
 ;
PCD(IND) ;
 N TXT,TXTL
 S TXT="" D S1
 N DM D
 .I $$HB S DM=$S(IND="S":"dcrqn",IND="L":"migelyn",IND="W":"TAW",1:"") Q
 .S DM=$S(IND="S":$$PCTX("RESTAURANT"),IND="L":$$PCTX("DELIEVERIES"),IND="W":"TAW",1:"") Q
 ;
 I '$D(P1TOT) D
 .I $$HB S TXT=$$^%L1DC(P1DZ,1)_" jix`zl "_DM_" g""ec" Q
 .I '$$HB S TXT=$$PCTX("RESTREPORT","S",DM_"<>"_$$^%L1DC(P1DZ,1))
 ;
 I $D(P1TOT),P1TOT'["-" D
 .I $$HB S TXT=P1TOT_" jix`zl "_DM_" g""ec" Q
 .I '$$HB S TXT=$$PCTX("RESTREPORT","S",DM_"<>"_P1TOT)
 ;
 S TXTL=$L(TXT)
 ;
 I $D(P1TOT),P1TOT["-" D
 .S TXT=$TR($J("",TXTL)," ","-") D S1
 .I $$HB S TXT=" : dtewzl "_DM_" g""ec" D S1
 .I '$$HB S TXT=$$PCTX("RESTPERIODREPORT","S",DM) D S1
 .S TXT="  "_$$RNGDAT(P1TOT)
 ;
 S TXTL=$L(TXT) D S1
 S TXT=$TR($J("",TXTL)," ","-") D S1
 ;
 N MZMN
 ;
 I $$HB D
 .S TXT=$J($G(MZM(IND)),7,2)_" :    onefn" D S1
 .S MZMN=$G(MZM(IND))
 .I $$^W4TIPMIN,'$$NOTIPALL^W4PRM S TXT=$J($G(TIP(IND)),7,2)_" :   "_$$TIPPS^W4TOT("") D S1 D
 ..S MZMN=$G(MZM(IND))-$G(TIP(IND))
 .S TXT=$J($G(CHK(IND)),7,2)_" :    d`gnd" D S1
 .S TXT=$J($G(ISR(IND)),7,2)_" :  hxk`xyi "_$J($G(ISR(IND_1)),3,0) D S1
 .S TXT=$J($G(VIZ(IND)),7,2)_" :     dfie "_$J($G(VIZ(IND_1)),3,0) D S1
 .S TXT=$J($G(DNR(IND)),7,2)_" :   qxpiic "_$J($G(DNR(IND_1)),3,0) D S1
 .S TXT=$J($G(AEX(IND)),7,2)_" :      AEX "_$J($G(AEX(IND_1)),3,0) D S1
 .S TXT=$J($G(ALPHA(IND)),7,2)_" :    ine`l "_$J($G(ALPHA(IND_1)),3,0) D S1
 .S TXT=$J($G(KK(IND)),7,2)_" : "_$$^W4VT($$GFC^W4VT)_" "_$J($G(KK(IND_1)),3,0) D S1
 .I $G(MP(IND)) S TXT=$J(MP(IND),7,2)_" :    qtihlen "_$J($G(MP(IND_1)),3,0) D S1
 .S TXT=$J($G(FI(IND)),7,2)_" : ihipit"_$J($G(FI(IND_1)),3,0) D S1
 ;
 I '$$HB D
 .S TXT=$$BFSP_$$PCTX("CASH")_" : "_$J($G(MZM(IND)),7,2) D S1
 .S MZMN=$G(MZM(IND))
 .I $$^W4TIPMIN,'$$NOTIPALL^W4PRM D
 ..S TXT=$$BFSP_$$TIPPS^W4TOT("")_" : "_$J($G(TIP(IND)),7,2) D S1 
 ..S MZMN=$G(MZM(IND))-$G(TIP(IND))
 .S TXT=$$BFSP_$$PCTX("CHECK")_" : "_$J($G(CHK(IND)),7,2) D S1
 .S TXT=$J($G(ISR(IND_1)),3,0)_" "_$$PCTX("ISRACARD")_" : "_$J($G(ISR(IND)),7,2) D S1
 .S TXT=$J($G(VIZ(IND_1)),3,0)_" "_$$PCTX("VISA")_" : "_$J($G(VIZ(IND)),7,2) D S1
 .S TXT=$J($G(DNR(IND_1)),3,0)_" "_$$PCTX("DINERS")_" : "_$J($G(DNR(IND)),7,2) D S1
 .S TXT=$J($G(AEX(IND_1)),3,0)_" "_$$PCTX("AEX")_" : "_$J($G(AEX(IND)),7,2) D S1
 .S TXT=$J($G(ALPHA(IND_1)),3,0)_" "_$$PCTX("LEUMI")_" : "_$J($G(ALPHA(IND)),7,2) D S1
 .S TXT=$J($G(KK(IND_1)),3,0)_" "_$$PCTX("KK")_" : "_$J($G(KK(IND)),7,2) D S1
 .I $G(MP(IND)) S TXT=$J(MP(IND_1),3,0)_" "_$$PCTX("MP")_" : "_$J(MP(IND),7,2) D S1
 .S TXT=$J($G(FI(IND_1)),3,0)_" "_$$PCTX("FI")_" : "_$J($G(FI(IND)),7,2) D S1
 ;
 S TXT="" D S1
 N KK S KK=$G(KK(IND))
 N KK1 S KK1=$G(KK(IND_1))
 I $$PAPJ^W4PRM S (KK,KK1)=0
 N SCA S SCA=$G(ISR(IND))+$G(VIZ(IND))+$G(DNR(IND))+$G(AEX(IND))+KK+$G(ALPHA(IND))+$G(FI(IND))
 S SCA(IND_1)=$G(ISR(IND_1))+$G(VIZ(IND_1))+$G(DNR(IND_1))+$G(AEX(IND_1))+KK1+$G(ALPHA(IND_1))+$G(FI(IND))
 ;
 S MZMN=$G(MZMN)
 ;
 I IND="S" D
 .S SUMMSD=SUMMSD+MZMN+$G(CHK(IND))+SCA
 .S SUMAMSD=SUMAMSD+$G(ASR(IND))
 ;
 I IND="W" D
 .S SUMTAW=SUMTAW+MZMN+$G(CHK(IND))+SCA
 .S SUMATAW=SUMATAW+$G(ASR(IND))
 ;
 I IND="L" D
 .S SUMMSL=SUMMSL+MZMN+$G(CHK(IND))+SCA
 .S SUMAMSL=SUMAMSL+$G(ASR(IND))
 .I $$PART S SMSH=$G(CHK(IND_1))+$G(MZM(IND_1))+$G(SCA(IND_1))
 ;
 I $$HB S TXT=$J(SCA,7,2)_" : `""k k""dq "_$J($G(SCA(IND_1)),3,0) D S1
 I '$$HB S TXT=$J(SCA(IND_1),3,0)_" "_$$PCTX("TOTALCA")_" : "_$J(SCA,7,2) D S1
 Q
 ;
 ;
ZMNEW ;
 N ZMNEW S ZMNEW="" I '$D(P1DZ) S P1DZ=$$^W4DZ
 K @$$^W4GL("ZM") N N,N1,I S N="",N1=""
 ;
 F I=1:1 S N=$O(@$$^W4GL("Z1")@(N)) Q:N=""  S:I=1 N1=N D
 .Q:$$^%L1DC(N,4)'<P1DZ
 .D PDN(N) S @$$^W4GL("ZM")=$G(@$$^W4GL("ZM"))+$G(Z("A"))
 .N DT S DT=$$^%L1DC(N,4)
 .I $G(@$$^W4GL("ZM")@("LAST"))<DT D
 ..S @$$^W4GL("ZM")@("LAST")=DT
 .I $G(@$$^W4GL("ZM")@("FIRST"))>DT!($G(@$$^W4GL("ZM")@("FIRST"))="") D
 ..S @$$^W4GL("ZM")@("FIRST")=DT
 Q
 ;
TIPNOZ(STAM) ;
 I $$NOTIPALL^W4PRM Q 1
 Q $G(@$$^W4PRM@("TIPNOZ"))
 ;
 ;
DMGRA ;
 I '$D(P1TOT) D
 .I $$HB S TXT=$$^%L1DC(P1DZ,1)_" jix`zl dxibn g""ec" D S1 Q
 .I '$$HB S TXT=$$PCTX("REPORTCSRDRW","S")_" "_$$^%L1DC(P1DZ,1) D S1 Q
 I $D(P1TOT),P1TOT'["-" D
 .I $$HB S TXT=P1TOT_" jix`zl dxibn g""ec" Q
 .S TXT=$$PCTX("REPORTDRW2DATE","S")_" "_P1TOT D S1 Q
 ;
 I $D(P1TOT),P1TOT["-" D
 .I $$HB S TXT=" : dtewzl dxibn g""ec" D S1
 .I '$$HB S TXT=$$PCTX("REPORTDRW2PERIOD","S")_" "_P1TOT D S1 Q
 .S TXT="  "_$$RNGDAT(P1TOT) D S1
 ;
 D KAV
 ;
 I $$HB D
 .S TXT=$J(MZMS,7,2)_" :    dxibn onefn" D S1
 .S TXT=$J(CHKS+$G(CHKMS),7,2)_" :    dxibn z`gnd" D S1
 .I '$$^W4LKH S TXT=$J(TLS,7,2)_" :     dxibn yelz" D S1
 .S TXT=$J(ISRS,7,2)_" :  dxibn hxk`xyi "_$J($G(ISR(1))+$G(HISR(1)),3,0) D S1
 .S TXT=$J(VIZS,7,2)_" :   dxibn   dfie "_$J($G(VIZ(1))+$G(HVIZ(1)),3,0) D S1
 .S TXT=$J(DNRS,7,2)_" :   dxibn qxpiic "_$J($G(DNR(1))+$G(HDNR(1)),3,0) D S1
 .S TXT=$J(AEXS,7,2)_" :   dxibn    AEX "_$J($G(AEX(1))+$G(HAEX(1)),3,0) D S1
 .S TXT=$J(ALPHAS,7,2)_" :   dxibn   ine`l "_$J($G(ALPHA(1))+$G(HALPHA(1)),3,0) D S1
 .S TXT=$J(KKS,7,2)_" :  dxib   n  "_$$^W4VT($$GFC^W4VT)_" "_$J($G(KK(1))+$G(HKK(1)),3,0) D S1
 .S TXT=$J(MPS,7,2)_" :    dxibn   qtihlen "_$J($G(MP(1)),3,0) D S1
 .S TXT=$J(FIS,7,2)_" :    dxibn ihipit "_$J($G(FI(1))+$G(HFI(1)),3,0) D S1
 .S TXT="" D S1
 .S TXT=$J(CAS,7,2)_" : dxibn `""k k""dq" D S1
 ;
 I '$$HB D
 .S TXT=$$BFSP_$$PCTX("TOTCASHDRW")_" : "_$J(MZMS,7,2) D S1
 .S TXT=$$BFSP_$$PCTX("TOTCHKDRW")_" : "_$J(CHKS+$G(CHKMS),7,2) D S1
 .I '$$^W4LKH D
 ..S TXT=$$BFSP_$$PCTX("TOTCOUPDRW")_" : "_$J(TLS,7,2) D S1
 .S TXT=$J($G(ISR(1))+$G(HISR(1)),3,0)_" "_$$PCTX("TOTISRDRW")_" : "_$J(ISRS,7,2) D S1
 .S TXT=$J($G(VIZ(1))+$G(HVIZ(1)),3,0)_" "_$$PCTX("TOTVISDRW")_" : "_$J(VIZS,7,2) D S1
 .S TXT=$J($G(DNR(1))+$G(HDNR(1)),3,0)_" "_$$PCTX("TOTDNRDRW")_" : "_$J(DNRS,7,2) D S1
 .S TXT=$J($G(AEX(1))+$G(HAEX(1)),3,0)_" "_$$PCTX("TOTAEXDRW")_" : "_$J(AEXS,7,2) D S1
 .S TXT=$J($G(ALPHA(1))+$G(HALPHA(1)),3,0)_" "_$$PCTX("TOTLEUMIDRW")_" : "_$J(ALPHAS,7,2) D S1
 .S TXT=$J($G(KK(1))+$G(HKK(1)),3,0)_" "_$$PCTX("TOTKKDRW")_" : "_$J(KKS,7,2) D S1
 .S TXT=$J($G(MP(1))+$G(HMP(1)),3,0)_" "_$$PCTX("TOTMPDRW")_" : "_$J(MPS,7,2) D S1
 .S TXT=$J($G(FI(1))+$G(HFI(1)),3,0)_" "_$$PCTX("TOTFIDRW")_" : "_$J(FIS,7,2) D S1
 .S TXT="" D S1
 .S TXT=$$BFSP_$$PCTX("TOTCADRW")_" : "_$J(CAS,7,2) D S1
 S TXT="" D S1
 Q
 ;
PART(STAM) ;
 I $G(P1X("PART"))!$G(P1X("ULAM")) Q 1
 Q 0
 ;
RNGDAT(P1TOT) ; 
 N DT1,DT2,DAT1,DAT2 
 S DAT1=$P(P1TOT,"-") 
 S DT1=$$^%L1DC(DAT1,3)
 S DAT1=$ZD(DT1,"DD.MM.YY")
 I P1TOT'["-" Q DAT1
 S DAT2=$P(P1TOT,"-",2) 
 S DT2=$$^%L1DC(DAT2,3)
 S DAT2=$ZD(DT2,"DD.MM.YY")
 Q DAT1_" - "_DAT2
 ;
MAM ; 
 S AHMAM=$G(@$$^W4PRM@("MAM"))
 I $D(P1TOT),P1TOT'["-" D
 .N DT S DT=$$^%L1DC(P1TOT,3)
 .S AHMAM=$$MAMD^W4L(DT)
 ;
 I $D(P1TOT),P1TOT["-" D
 .N DT1,DT2 S DT1=$$SPA^%L1FRM($P(P1TOT,"-",2))
 .S DT2=$$SPA^%L1FRM($P(P1TOT,"-",1))
 .S DT1=$$^%L1DC(DT1,3)
 .S DT2=$$^%L1DC(DT2,3)
 .S AHMAM=$$MAMD^W4L(DT2)
 ;
 S MAM=SHUM*AHMAM/(100+AHMAM)
 ;
 I $$NOMAM^W4PRM D
 .I $$HB S TXT=$J(SUMMAM,7,2)_" : n""rnl setk oeictn" D S1
 .I '$$HB S TXT=$$PCTX("AFTERTAX")_" : "_$J(SUMMAM,7,2) D S1
 .;;N NOMAM S NOMAM=SHUM-SUMMAM I NOMAM<0 S NOMAM=0 ; --> 27.01.21 CMNT
 .N NOMAM S NOMAM=SUMNOMAM
 .S TXT=$J(NOMAM,7,2)_" : n""rn xeht oeict" D S1
 .S MAM=SUMMAM*AHMAM/(100+AHMAM)
 ;
 I $$HB S TXT=$J(MAM,7,2)_" : n""rn" D S1
 I '$$HB S TXT=$$PCTX("MAM")_" : "_$J(MAM,7,2) D S1
 ;
 I '$$NOMAM^W4PRM D
 .I $$HB S TXT=$J(SHUM-MAM,7,2)_" : n""rn iptl" D S1 Q
 .S TXT=$$PCTX("BEFORETAX")_" : "_$J(SHUM-MAM,7,2) D S1
 ;
 S TXT="" D S1
 Q
 ;
 ;
KHMK ; 
 I '$D(P1TOT) D
 .I $$HB S TXT=$J($$^W4QHMK(P1DZ,P1DZ),7)_" : w""nyg k""dq " D S1 Q
 .S TXT=$$PCTX("TOTALHMK")_" : "_$J($$^W4QHMK(P1DZ,P1DZ),7) D S1 Q
 ;
 I $D(P1TOT),P1TOT'["-" D
 .N DT S DT=$$^%L1DC(P1TOT,3)
 .I $$HB S TXT=$J($$^W4QHMK(DT,DT),7)_" : w""nyg k""dq " D S1 Q
 .I '$$HB S TXT=$$PCTX("TOTALHMK")_" : "_$J($$^W4QHMK(DT,DT),7) D S1 Q
 ;
 I $D(P1TOT),P1TOT["-" D
 .N DT1,DT2 S DT1=$$SPA^%L1FRM($P(P1TOT,"-",1))
 .S DT2=$$SPA^%L1FRM($P(P1TOT,"-",2))
 .S DT1=$$^%L1DC(DT1,3)
 .S DT2=$$^%L1DC(DT2,3)
 .I $$HB S TXT=$J($$^W4QHMK(DT1,DT2),7)_" : w""nyg k""dq " D S1
 .I '$$HB S TXT=$$PCTX("TOTALHMK")_" : "_$J($$^W4QHMK(DT1,DT2),7) D S1 Q
 Q
 ;
HB(STAM) ; 
 I $$^%W1LNG="H" Q 1 
 Q 0 
 ;
PCTX(KEY,L,PRM) ; 
 Q $$^W4PCTX(KEY,$G(L),$G(PRM))
 ;
BFSP(STAM) ;
 Q $J("",4)
 ;
WD(STAM) ; 
 Q 38 
 ;
PTKUP(NZ,DZ) ; 
 I $G(@$$^W4PRM@("PTKUPKV")) Q ^("PTKUPKV")
 Q $$HFKDSUM^W4CASH(NZ,"",DZ) 
 ;
KZR() ; 
 I $G(@$$^W4PRM@("KZR"))=1&($G(DOCH)="Z") Q 1
 Q $G(@$$^W4PRM@("KZR"))>1 Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PCTOT0
W4PCTOT ; [ 10.07.17 11:56 ] [ 05.06.17 15:35 ] [ 26.05.17 14:43 ] 
 ;-- INPUT: P1X: 1 - ALL REPORTS
 ;               2 - PDJON NETTO
 ;               3 - WAITERS
 ;               4 - ONE WAITER
 N (JB,MZM,CHK,CHKO,CHKM,ASR,TL,ISR,VIZ,DNR,AEX,JCB,ALPHA,HMZM,HCHKO,HCHKM,HTL,HISR,HVIZ,HDNR,HAEX,HJCB,HALPHA,MIN3,HNHS,HNHS2,HNHP,HNHT,HNHL,HNHCIB,DMSHS,BIT,TIP,TIP1,TIPPS1,P1X,P1TOT,SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSH,SUMMTB,DOCH,TMZ,TCA,TCHK,TASR,STAW,SUMTAW,SUMATAW,STAW,HCHKB,MP,DISP,MZQ,CHQ,HB,HBQ,HBZ,HBZQ,TM,TMQ,LLQNT,LLQNS,LLSUMT,LLSUMS,SUMMAM,SMC)
 ;
 I $G(P1X),+P1X'=1,+P1X'=2,+P1X'=7,+P1X'=8,+P1X'=9 Q
 D ^W4IN,^%L1TS
 I '$G(DISP) D ^W4MDPPC
 ;
 S (DT1,DT2)=P1DZ
 ;
 I $D(P1TOT) D
 .S DT1=$$^%L1DC($$SPA^%L1FRM($P(P1TOT,"-",1)),3),DT2=DT1
 .I P1TOT["-" D
 ..S DT2=$$^%L1DC($$SPA^%L1FRM($P(P1TOT,"-",2)),3)
 .S DAT1=$$^%L1DC(DT1,1)
 .S DAT2=$$^%L1DC(DT2,1)
 ;
 I $G(P1TOT)="" S P1PCTOT=""
 ;
 D 102^W4TOT
 ;
 I 'TIP,$G(TIP1) N TIP S TIP=TIP1
 I $G(@$$^W4PRM@("KZR")) S KAZAR=""
 S SM=10
 S NZ=$G(@$$^W4GL("Z"))+1
 S TXT="" D S1
 ;
 I '$D(P1TOT) S TXT=$$^%L1DC(P1DZ,1)_" jix`zl zexikn g""ec"
 I $D(P1TOT),P1TOT'["-" S TXT=DAT1_" jix`zl zexikn g""ec"
 I $D(P1TOT),P1TOT["-" D
 .S TXT=" : dtewzl zexikn g""ec" D S1
 .S TXT="  "_DAT2_" - "_DAT1
 S TXTL=$L(TXT) D S1
 ;
 I $G(P1X("SHUL")) S TXT=$J(P1X("SHUL")_" : "_$$PC^W4DICTBL,TXTL) D S1
 I $G(P1X("PART")) S TXT=$J(P1X("PART")_" : dcnr",TXTL) D S1
 ;
 I $G(P1X("ULAM")) D
 .N UL S UL=P1X("ULAM")
 .S TXT=$G(@$$^W4GL("W4ATAR")@(UL))
 .S TXT=$J(TXT_" "_UL_" : xz`",TXTL) D S1
 ;
 S TXT=$TR($J("",TXTL)," ","-") D S1
 D
 .I $$^W4TIPMIN,$$TIPNOZ Q
 .S TXT=$J(MZM,7,2)_" :    onefn "_$J($G(MZQ),3) D S1
 ;
 I $G(@$$^W4PL@("MATB")) D
 .N SM S SM=0
 .S TXT="" D S1
 .N N,I S N="",I=0
 .F  S N=$O(SUMMTB(N)) Q:N=""  D
 ..N SHAAR S SHAAR=1 I SUMMTB(N) S SHAAR=$P(SUMMTB(N),"!",2)/SUMMTB(N)
 ..S I=I+1 S TXT=$J(SUMMTB(N)*SHAAR,7,2)_" = "_$J(SHAAR,7,3)_" *"_$J(+SUMMTB(N),7,2)_" : "_$J($P($G(@$$^W4GL("P1SUGM")@(N)),"\",2),5) D S1
 .S TXT=$J(MZM-$G(SUMMTB),7,2)_$J("",19)_" :   g""y" D S1
 .S TXT="" D S1
 ;
 I $$^W4TIPMIN D
 .I '$$TIPNOZ S TXT=$J(TIP,7,2)_" :  "_$$TIPPS^W4TOT("")_" "_$J($G(TIQ),3) D S1
 .S TXT=$J(MZM-TIP,7,2)_" : ehp onefn "_$J("",3) D S1
 ;
 S TXT=$J(CHKO+$G(CHKM),7,2)_" :    d`gnd "_$J($G(CHQ),3) D S1
 S TXT=$J(ISR,7,2)_" :  hxk`xyi "_$J(ISR(1),3,0) D S1
 S TXT=$J(VIZ,7,2)_" :     dfie "_$J(VIZ(1),3,0) D S1
 S TXT=$J(DNR,7,2)_" :   qxpiic "_$J(DNR(1),3,0) D S1
 S TXT=$J(AEX,7,2)_" : .qw` 'n` "_$J(AEX(1),3,0) D S1
 S TXT=$J(JCB,7,2)_" : ia.iq.'b "_$J(JCB(1),3,0) D S1
 S TXT=$J(ALPHA,7,2)_" :    ine`l "_$J(ALPHA(1),3,0) D S1
 ;
 I $G(@$$^W4PRM@("MP")) D
 .S TXT=$J(MP,7,2)_" :   qtihlen "_$J($G(MP(1)),3,0) D S1
 ;
 S TXT=$J(SCA,7,2)_" : `""k k""dq "_$J(SCA(1),3,0) D S1
 I $G(SMC) D
 .S TXT=$J(SMC,7,2)_" : ""w'v iin""-a mley mkezn"_$J(SMC(1),3,0) D S1
 .S TXT=$J(SCA-SMC,7,2)_" : zkxrna mley"_$J(SCA(1)-SMC(1),3,0) D S1
 S TXT="" D S1
 D KAV
 S TXT=$J(SHUM,7,2)_" : ehp oeict k""dq" D S1
 ;
 D MAM
 ;
 I '$$^W4LKH D
 .S TXT=$J($G(ASR),7,2)_" : dtwd k""dq "_$J($G(ASR(1)),3,0) D S1
 .S TXT=$J($G(ASR)+$G(TL)+SHUM,7,2)_" : zexikn k""dq" D S1
 .S TXT="" D S1
 .S TXT=$J($G(@$$^W4GL("P1MG")@(P1DZ)),7,0)_" : dxibn zegizt 'qn " D S1
 .;;I $G(%ARG("OPT"))="ZMANY" S TXT=$J(MZMS,7,2)_" :    dxibn onefn" D S1
 .I $$SF^W4PRM S TXT=$J(MZMS,7,2)_" :    dxibn onefn" D S1
 ;
 D KHMK
 ;
 I $$^W4LKH,'$$PART D
 . S TXT=$J(HB,7,2)_" :  qn zeipeayg k""dq"_$J(HBQ,4) D S1
 .S TXT="[-] "_$J(HBZ,7,2)_" : iekif qn 'yg k""dq"_$J(HBZQ,4) D S1
 .S TXT=$J(TM,7,2)_" : gelyn zecerz k""dq"_$J(TMQ,4) D S1
 .S TXT="" D S1
 .D KAV
 .S TXT=$J(SHUM+HB+TM-HBZ,7,2)_" : zexikn k""dq" D S1
 .S TXT="" D S1
 ;
 I $G(@$$^W4PRM@("ZM")),$G(DOCH)="Z",'$$PART D  ; --- Z MIZTABER
 .N N,N1,I,DAT,Z,ZM S ZM=0
 .I $D(@$$^W4GL("ZM"))#2,$D(@$$^W4GL("ZM")@("LAST")) D  G ZME
 ..N DT F DT=@$$^W4GL("ZM")@("LAST")+1:1:P1DZ-1 D
 ...S DAT=$$^%L1DC(DT,2)
 ...I $D(@$$^W4GL("Z1")@(DAT)) D PDN(DAT) D
 ....S @$$^W4GL("ZM")=@$$^W4GL("ZM")+$G(Z("A"))
 ....S @$$^W4GL("ZM")@("LAST")=DT
 .
 .D ZMNEW
 .
ZME .D PDN($$^%L1DC(P1DZ,2))
 .S ZM=$G(@$$^W4GL("ZM"))+$G(Z("A"))
 .S @$$^W4GL("ZM")=ZM
 .S @$$^W4GL("ZM")@("TM")=$H_"\"_P1DZ
 .S TXT="" D S1
 .S TXT=$J(ZM,9,2)_" : xahvn oeict k""dq" D S1
 .D ^%S2GLSV($$^W4GL("ZM"),$$^W4FGIB)
 .Q
 ;
 ;
 S MSDMSL=0,TAWMSD=+$$TAWMSD^W4PRM
 I '$$^W4LKH,$G(@$$^W4PRM@("MSD"))!$G(@$$^W4PRM@("MTAW")),$$MSL^W4PRM,'$G(P1X("SHUL")) D
 .S MSDMSL=1
 .;;I $$PART N SUMMSD,SUMAMSD,SUMTAW,SUMATAW,SUMMSL,SUMAMSL,SMSH D
 .N SUMMSD,SUMAMSD,SUMTAW,SUMATAW,SUMMSL,SUMAMSL D
 ..I $$PART N SMSH S SMSH=0
 ..S (SUMMSD,SUMAMSD,SUMTAW,SUMATAW,SUMMSL,SUMAMSL)=0
 .D PCD("S") S TXT="" D S1
 .D KAV
         .S TXT=$J(SUMMSD,7,2)_" : dcrqn ehp oeict k""dq" D S1
        .S TXT=$J(SUMAMSD,7,2)_" : dcrqn   ly dtwd k""dq" D S1
 .S TXT=$J(SUMMSD+SUMAMSD,7,2)_" : dcrqn ly zexikn k""dq" D S1
 .S TXT=$J(SSOAD,7,0)_" :  micreq k""dq " D S1
 .I SSOAD S TXT=$J(SUMMSD+SUMAMSD/SSOAD,7,2)_" :  creql rvenn " D S1
 .S TXT="" D S1
 .G:'$G(TAWMSD) MSL
 .D PCD("W") S TXT="" D S1
 .D KAV
 .I $G(SUMTAW) D
 ..S TXT=$J($G(SUMTAW),7,2)_" : TAW ehp oeict k""dq" D S1
 ..S TXT=$J($G(SUMATAW),7,2)_" : TAW   ly dtwd" D S1
 ..S TXT=$J($G(SUMTAW)+$G(SUMATAW),7)_" :  TAW k""dq " D S1
MSL .D PCD("L") S TXT="" D S1
 .D KAV
 .S TXT=$J(SUMMSL,7,2)_" : migelyn ehp oeict k""dq" D S1
 .I SUMDLP,'$$PART S TXT=$J(SUMDLP,7,2)_" :  (migelyn) zgwl k""dq" D S1
 .S TXT=$J(SUMAMSL,7,2)_" : migelyn ly dtwd" D S1
 .N SAHMSL S SAHMSL=SUMMSL+SUMDLP+SUMAMSL+SUMADLP
 .I $$PART S SAHMSL=SUMMSL+SUMAMSL
 .I '$$PART D
 ..I SUMADLP S TXT=$J(SUMADLP,7,2)_" : (migelyn) zgwl ly dtwd" D S1
 .S TXT=$J(SAHMSL,7,2)_" : migelyn zexikn k""dq" D S1
 .S TXT=$J(SMSH,7)_" : migelyn zenk k""dq " D S1
 .I SMSH S TXT=$J(SAHMSL/SMSH,7,2)_" : gelynl rvenn" D S1
 .S TXT="" D S1
 .D KAV1
 .S TXT="" D S1
 .S TXT=$J(SHUM,7,2)_" : ehp oeict k""dq" D S1
 ;
 I $G(@$$^W4PRM@("LL")) D
 .S TXT=$J(LLQNS,7)_" : ""zayl"" zepnfd zenk" D S1
 .S TXT=$J(LLSUMS,7,2)_" : ""zayl"" zepnfd k""dq" D S1
 .S TXT=$J(LLQNT,7)_" : ""zgwl"" zepnfd zenk" D S1
 .S TXT=$J(LLSUMT,7,2)_" : ""zgwl"" zepnfd k""dq" D S1
 .S TXT="" D S1
 ;
 I HSHUM D
 .S TXT=$TR($J("",TXTL)," ","-") D S1
 .S TXT="" D S1
 .I '$D(P1TOT) S TXT=$$^%L1DC(P1DZ,1)_" jix`zl zelaw g""ec" D S1
 .I $D(P1TOT),P1TOT'["-" S TXT=P1TOT_" jix`zl zelaw g""ec"
 .I $D(P1TOT),P1TOT["-" D
 ..S TXT=" : dtewzl zelaw g""ec" D S1 S TXT="  "_$$RNGDAT(P1TOT) D S1
 .D KAV
 .S TXT=$J(HMZM,7,2)_" :    onefn" D S1
 .S TXT=$J(HCHKO+$G(HCHKM),7,2)_" :    d`gnd" D S1
 .S TXT=$J(HCHKB,7,2)_" : 'pa dxard" D S1
 .;;S TXT=$J(HCHKM,7,2)_" : fn d`gnd" D S1
 .I '$$^W4LKH S TXT=$J(HTL,7,2)_" :     yelz" D S1
 .S TXT=$J(HISR,7,2)_" :  hxk`xyi "_$J(HISR(1),3,0) D S1
 .S TXT=$J(HVIZ,7,2)_" :     dfie "_$J(HVIZ(1),3,0) D S1
 .S TXT=$J(HDNR,7,2)_" :   qxpiic "_$J(HDNR(1),3,0) D S1
 .S TXT=$J(HAEX,7,2)_" :      AEX "_$J(HAEX(1),3,0) D S1
 .S TXT=$J(HJCB,7,2)_" :      JCB "_$J(HJCB(1),3,0) D S1
 .S TXT=$J(HALPHA,7,2)_" :    ine`l "_$J(HALPHA(1),3,0) D S1
 .S TXT="" D S1
 .S TXT=$J(HSCA,7,2)_" : `""k k""dq "_$J(HSCA(1),3,0) D S1
 .S TXT="" D S1
 .S TXT=$J(HSHUM,7,2)_" : lawzd k""dq" D S1
 .D KAV
 .S TXT="" D S1
 ;
 I $G(@$$^W4PRM@("DMGRA"))!HSHUM D DMGRA
 ;
 S TXT="" D S1
 ;
 I HSHUM D
 .S TXT=$J(SHUM,7,2)_" : ehp oeict k""dq" D S1
 ;
 I '$$^W4LKH S TXT=$J(TL,7,2)_" : yelz" D S1
 ;
 I '$$^W4LKH,$G(@$$^W4PRM@("TOTNA")) D
 .;;I $G(@$$^W4PRM@("MSD"))!$G(@$$^W4PRM@("MTAW")),$G(@$$^W4PRM@("MSL")) D
 ..S TXT=$J(SUMAMSD,7,2)_" : dcrqn   ly dtwd" D S1
 ..S TXT=$J(SUMAMSL,7,2)_" : migelyn ly dtwd" D S1
 ..I SUMADLP S TXT=$J(SUMADLP,7,2)_" (migelyn) zgwl ly dtwd" D S1
 .S TXT=$J(ASR,7,2)_" : dtwd k""dq "_$J($G(ASR(1)),3,0) D S1
 .S TXT="" D S1
 .S TXT=$J(ASR+TL+SHUM,7,2)_" : zexikn k""dq" D S1
 .S TXT="" D S1
 ;
 N TIPIM S TIPIM="mitih"
 I $L($G(@$$^W4PRM@("TIPPS"))) S TIPIM=@$$^W4PRM@("TIPPS")
 ;
 I '$$TIPNO^W4TIPPD($G(DT1)),'$$^W4LKH D
 .S TXT=$J(TMZ,7,2)_" :  onefna "_TIPIM D S1
 .S TXT=$J(TCA,7,2)_" :   `""ka "_TIPIM D S1
 .S TXT=$J(TASR,7,2)_" :  dtwda "_TIPIM D S1
 .S TXT=$J(TCHK,7,2)_" :   w'va "_TIPIM D S1
 .S TXT=$J(TIP,7,2)_" : "_TIPIM_" k""dq" D S1
 ;
 I $$^W4TIPPD($G(DT1)),'$$^W4LKH D
 .S TXT=$J(TIP*100/(100+AHMAM),7,2)_" : n""rn iptl "_TIPIM D S1
 ;
 ;;S TXT=$J(HNHS-$G(HNHL),7,2)_" : mildpn zegpd k""dq " D S1
 S TXT=$J(HNHS,7,2)_" : mildpn zegpd k""dq " D S1
      S TXT=$J($G(HNHL),7,2)_" : dtwd zegewll zegpd " D S1
 I $G(HNHCIB) S TXT=$J($G(HNHCIB),7,2)_" :'SODEXO' zegpd k""dq " D S1
 I '$$^W4LKH S TXT=$J($G(HNHT),7,2)_" :miyelz zegpd k""dq " D S1
 I $G(HNHP) S TXT=$J(HNHP,7,2)_" : mihixtl zegpd k""dq " D S1
 S TXT=$J(MIN3,7,2)_" : miekif k""dq " D S1
 S TXT=$J(DMSHS,7,2)_" : gelyn inc k""dq " D S1
 I '$$^W4LKH D
 .N SUMP S SUMP=SUMB-$G(BIT)-$S($G(@$$^W4PRM@("BRTDM")):DMSHS,1:0)
 .I $$TIPMIN^W4TIPPD S SUMP=SUMP-$G(TIP)
 .S TXT=$J(SUMP,7,2)_" : mekqa mihixt zexikn " D S1
 S TXT=$J($G(BIT),7,2)_" : milehia k""dq " D S1
 S TXT=$J(SUMB,7,2)_" : ehexa k""dq " D S1
 S TXT="" D S1
 K NOPC
 ;
 I $$^W4LKH D  G END
 .I '$G(DISP),$D(%MDP("CUT")) D
 ..D ^W4CUT(PRINT,%MDP("CUT"))
 ;
 I $G(@$$^W4PRM@("MSD")),'MSDMSL D
 .S TXT=$J(SSOAD,7,0)_" :  micreq k""dq " D S1
 .I SSOAD S TXT=$J(SHUM+ASR/SSOAD,7,2)_" :  creql rvenn " D S1
 I $$MSL^W4PRM,'MSDMSL S TXT=$J(SMSH,7)_" : migelyn k""dq " D S1
 ;
 I +$G(P1X)'=2,+$G(P1X)'=7,+$G(P1X)'=8,+$G(P1X)'=9,'$G(DISP),$D(%MDP("CUT")) D
 .D ^W4CUT(PRINT,%MDP("CUT"))
 ;
 I $G(@$$^W4PRM@("ZXBIT")),$G(@$$^W4PRM@("ZXBIT2TOT")) D
 .I $G(DOCH)="X",$G(@$$^W4PRM@("ZXBIT"))=1 Q
 .N SM1 S SM1=1
 .D ZXBIT^W4SGYOM(P1DZ),ZXHNH^W4SGYOM(P1DZ)
 ;
END Q
 ;
KAV S TXT=$TR($J("",28)," ","-") D S1 Q
KAV1 S TXT=$TR($J("",28)," ","=") D S1 Q
S1 ;
 D ^W4PCST(TXT,DISP)
 Q
 ;
PDN(DAT) ;
 N N,N1,N2,N3,J K Z
 S N1="" F  S N1=$O(@$$^W4GL("Z1")@(DAT,N1)) Q:N1=""  I $G(^(N1))'["ZM"!$D(ZMNEW) D
 .S N2="" F  S N2=$O(@$$^W4GL("Z1")@(DAT,N1,N2)) Q:N2=""  D
 ..I N2'="MTB" S Z(N2)=$G(^(N2,1))
 ..I N2="MTB" S N3="" F  S N3=$O(@$$^W4GL("Z1")@(DAT,N1,N2,N3)) Q:N3=""  S Z("MTB",N3)=$G(^(N3))
 .S Z("V")=0 F J=1:1:9 S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 .S Z("A")=$G(Z("A"))+$G(Z("F"))+$G(Z("G"))+$G(Z("V"))
 .I '$G(@$$^W4PRM@("TOTNA")) S Z("A")=Z("A")+$G(Z("H"))
 .I $$^W4TIPMIN S Z("A")=Z("A")-$G(Z("T"))
 .S $P(@$$^W4GL("Z1")@(DAT,N1),"^",2)="ZM"
 Q
 ;
PCD(IND) ;
 S TXT="" D S1
 N DM S DM=$S(IND="S":"dcrqn",IND="L":"migelyn",IND="W":"TAW",1:"")
 I '$D(P1TOT) S TXT=$$^%L1DC(P1DZ,1)_" jix`zl "_DM_" g""ec"
 I $D(P1TOT),P1TOT'["-" S TXT=P1TOT_" jix`zl "_DM_" g""ec"
 I $D(P1TOT),P1TOT["-" D
 .S TXT=$TR($J("",TXTL)," ","-") D S1
 .S TXT=$TR($J("",TXTL)," ","-") D S1
 .S TXT=" : dtewzl "_DM_" g""ec" D S1 S TXT="  "_$$RNGDAT(P1TOT)
 S TXTL=$L(TXT) D S1
 S TXT=$TR($J("",TXTL)," ","-") D S1
 S TXT=$J(MZM(IND),7,2)_" :    onefn" D S1
 N MZMN S MZMN=MZM(IND)
 I $$^W4TIPMIN S TXT=$J(TIP(IND),7,2)_" :   "_$$TIPPS^W4TOT("") D S1 D
 .S MZMN=MZM(IND)-TIP(IND)
 S TXT=$J(CHK(IND),7,2)_" :    d`gnd" D S1
 S TXT=$J(ISR(IND),7,2)_" :  hxk`xyi "_$J(ISR(IND_1),3,0) D S1
 S TXT=$J(VIZ(IND),7,2)_" :     dfie "_$J(VIZ(IND_1),3,0) D S1
 S TXT=$J(DNR(IND),7,2)_" :   qxpiic "_$J(DNR(IND_1),3,0) D S1
 S TXT=$J(AEX(IND),7,2)_" :      AEX "_$J(AEX(IND_1),3,0) D S1
 S TXT=$J(JCB(IND),7,2)_" :      JCB "_$J(JCB(IND_1),3,0) D S1
 S TXT=$J(ALPHA(IND),7,2)_" :    ine`l "_$J(ALPHA(IND_1),3,0) D S1
 I $G(MP(IND)) S TXT=$J(MP(IND),7,2)_" :    qtihlen "_$J($G(MP(IND_1)),3,0) D S1
 S TXT="" D S1
 N SCA S SCA=ISR(IND)+VIZ(IND)+DNR(IND)+AEX(IND)+JCB(IND)+ALPHA(IND)
 S SCA(IND_1)=ISR(IND_1)+VIZ(IND_1)+DNR(IND_1)+AEX(IND_1)+JCB(IND_1)+ALPHA(IND_1)
 ;
 I IND="S" D
 .S SUMMSD=SUMMSD+MZMN+CHK(IND)+SCA
 .S SUMAMSD=SUMAMSD+$G(ASR(IND))
 ;
 I IND="W" D
 .S SUMTAW=SUMTAW+MZMN+CHK(IND)+SCA
 .S SUMATAW=SUMATAW+$G(ASR(IND))
 ;
 I IND="L" D
 .S SUMMSL=SUMMSL+MZMN+CHK(IND)+SCA
 .I '$$PART S SUMMSL=SUMMSL-$G(SUMDLP)
 .S SUMAMSL=SUMAMSL+$G(ASR(IND))
 .I '$$PART S SUMAMSL=SUMAMSL-$G(SUMADLP)
 .I $$PART S SMSH=$G(CHK(IND_1))+$G(MZM(IND_1))+SCA(IND_1)
 ;
 S TXT=$J(SCA,7,2)_" : `""k k""dq "_$J(SCA(IND_1),3,0) D S1
 Q
 ;
 ;
ZMNEW ;
 N ZMNEW S ZMNEW="" I '$D(P1DZ) S P1DZ=$$^W4DZ
 K @$$^W4GL("ZM") N N,N1,I S N="",N1=""
 ;
 F I=1:1 S N=$O(@$$^W4GL("Z1")@(N)) Q:N=""  S:I=1 N1=N D
 .Q:$$^%L1DC(N,4)'<P1DZ
 .D PDN(N) S @$$^W4GL("ZM")=$G(@$$^W4GL("ZM"))+$G(Z("A"))
 .N DT S DT=$$^%L1DC(N,4)
 .I $G(@$$^W4GL("ZM")@("LAST"))<DT D
 ..S @$$^W4GL("ZM")@("LAST")=DT
 .I $G(@$$^W4GL("ZM")@("FIRST"))>DT!($G(@$$^W4GL("ZM")@("FIRST"))="") D
 ..S @$$^W4GL("ZM")@("FIRST")=DT
 Q
 ;
TIPNOZ(STAM) ;
 Q $G(@$$^W4PRM@("TIPNOZ"))
 ;
 ;
DMGRA ;
 I '$D(P1TOT) S TXT=$$^%L1DC(P1DZ,1)_" jix`zl dxibn g""ec" D S1
 I $D(P1TOT),P1TOT'["-" S TXT=P1TOT_" jix`zl dxibn g""ec"
 I $D(P1TOT),P1TOT["-" D
 .S TXT=" : dtewzl dxibn g""ec" D S1 S TXT="  "_$$RNGDAT(P1TOT) D S1
 ;
 D KAV
 S TXT=$J(MZMS,7,2)_" :    dxibn onefn" D S1
 S TXT=$J(CHKS+$G(CHKMS),7,2)_" :    dxibn z`gnd" D S1
 ;;S TXT=$J(CHKMS,7,2)_"  dxibn fn d`gnd" D S1
 I '$$^W4LKH S TXT=$J(TLS,7,2)_" :     dxibn yelz" D S1
 S TXT=$J(ISRS,7,2)_" :  dxibn hxk`xyi "_$J(ISR(1)+$G(HISR(1)),3,0) D S1
 S TXT=$J(VIZS,7,2)_" :   dxibn   dfie "_$J(VIZ(1)+$G(HVIZ(1)),3,0) D S1
 S TXT=$J(DNRS,7,2)_" :   dxibn qxpiic "_$J(DNR(1)+$G(HDNR(1)),3,0) D S1
 S TXT=$J(AEXS,7,2)_" :   dxibn    AEX "_$J(AEX(1)+$G(HAEX(1)),3,0) D S1
 S TXT=$J(JCBS,7,2)_" :   dxibn    JCB "_$J(JCB(1)+$G(HJCB(1)),3,0) D S1
 S TXT=$J(ALPHAS,7,2)_" :   dxibn   ine`l "_$J(ALPHA(1)+$G(HALPHA(1)),3,0) D S1
 S TXT=$J(MPS,7,2)_" :    dxibn   qtihlen "_$J($G(MP(1)),3,0) D S1
 S TXT="" D S1
 S TXT=$J(CAS,7,2)_" : dxibn `""k k""dq" D S1
 S TXT="" D S1
 Q
 ;
PART(STAM) ;
 I $G(P1X("PART"))!$G(P1X("ULAM")) Q 1
 Q 0
 ;
RNGDAT(P1TOT) ; 
 N DT1,DT2,DAT1,DAT2 
 S DAT1=$P(P1TOT,"-") 
 S DT1=$$^%L1DC(DAT1,3)
 S DAT1=$ZD(DT1,"DD.MM.YY")
 I P1TOT'["-" Q DAT1
 S DAT2=$P(P1TOT,"-",2) 
 S DT2=$$^%L1DC(DAT2,3)
 S DAT2=$ZD(DT2,"DD.MM.YY")
 Q DAT1_" - "_DAT2
 ;
MAM ; 
 S AHMAM=$G(@$$^W4PRM@("MAM"))
 I $D(P1TOT),P1TOT'["-" D
 .N DT S DT=$$^%L1DC(P1TOT,3)
 .S AHMAM=$$MAMD^W4L(DT)
 ;
 I $D(P1TOT),P1TOT["-" D
 .N DT1,DT2 S DT1=$$SPA^%L1FRM($P(P1TOT,"-",2))
 .S DT2=$$SPA^%L1FRM($P(P1TOT,"-",1))
 .S DT1=$$^%L1DC(DT1,3)
 .S DT2=$$^%L1DC(DT2,3)
 .S AHMAM=$$MAMD^W4L(DT2)
 ;
 S MAM=SHUM*AHMAM/(100+AHMAM)
 ;
 I $$SUPER^W3PRM D
 .S TXT=$J(SUMMAM,7,2)_" : n""rn llek" D S1
 .N NOMAM S NOMAM=SHUM-SUMMAM I NOMAM<0 S NOMAM=0
 .S TXT=$J(NOMAM,7,2)_" : n""rn `ll" D S1
 .S MAM=SUMMAM*AHMAM/(100+AHMAM)
 ;
 S TXT=$J(MAM,7,2)_" : n""rn" D S1
 I '$$SUPER^W3PRM S TXT=$J(SHUM-MAM,7,2)_" : n""rn iptl" D S1
 S TXT="" D S1
 Q
 ;
 ;
KHMK ; 
 I '$D(P1TOT) D
 .S TXT=$J($$^W4QHMK(P1DZ,P1DZ),7)_" : w""nyg k""dq " D S1
 ;
 I $D(P1TOT),P1TOT'["-" D
 .N DT S DT=$$^%L1DC(P1TOT,3)
 .S TXT=$J($$^W4QHMK(DT,DT),7)_" : w""nyg k""dq " D S1
 ;
 I $D(P1TOT),P1TOT["-" D
 .N DT1,DT2 S DT1=$$SPA^%L1FRM($P(P1TOT,"-",2))
 .S DT2=$$SPA^%L1FRM($P(P1TOT,"-",1))
 .S DT1=$$^%L1DC(DT1,3)
 .S DT2=$$^%L1DC(DT2,3)
 .S TXT=$J($$^W4QHMK(DT1,DT2),7)_" : w""nyg k""dq " D S1
 Q
 
 
 
 
 
 
 
 
 
 
 

W4PCTX
W4PCTX(KEY,L,PRM) ; [ 13.07.17 13:12 ] [ 11.07.17 16:36 ] [ 
 N LNG S LNG=$$LNG S:LNG="" LNG="H"
 N TX
 S PRM=$G(PRM)
 S TX=$$TV^%W1DICT(LNG,KEY,PRM)
 I L="S" S L=$L(TX)
 I '$G(L) S L=$$WD
 S TX=$$ENG^%L1FRM(TX,L)
 Q TX
 ;
LNG(STAM) ; 
 Q $$^%W1LNG
 ;
WD(STAM) ;
 Q 20
 
 
 
 
 
 
 
 
 
 
 
 

W4PETEK
W4PETEK(SUM,VT) ; [ 05.12.24 20:04 ] [ 08.09.11 14:04 ] [ 25.02.10 14:06 ] 
 Q:$D(P1TNOPR)
 N PRINT,%MDP D ^W4MDPPC Q:$G(PRINT)=""  Q:$D(%MDP)<10
 I '$D(NMB) S NMB=$$NMB^W4HZMST(HZM)
 I '$D(MKBL) S MKBL=$$MKBL^W4HZMST(HZM)
 S %TIM=$ZD($H,"24:60") N TXT
 N SM1 S SM1=1
 N I F I=1:1 Q:'$D(@$$^W4PL@("ESEK",I))  D
 .S TXT=$J($TR(^(I),"#_",""),GWPC-8) D S1
 S TXT=%TIM_" d`ved onf " D S1
 S SM1=6
 S TXT=$J("",8)_%MDP("B")_HZM_%MDP("N")_" dpnfd " D S1
 S TXT=$J("",10)_%MDP("B")_$J(NMB,3)_%MDP("N")_" "_$$PC^W4DICTBL D S1
 S TXT=$J($$^W4NAME(MKBL),17)_" xvln" D S1
 S TXT="" D S1
 S SM1=4 S TXT=%MDP("B")_$G(@$$^W4GL("P1CODTS")@(VT))_" "_$J(SUM,6,2)_" mley "_%MDP("N") D S1
 D ^W4CUT(PRINT,%MDP("CUT"))
 N ST I $G(PRINT),'$$MZSM^W4PRM S ST=%MDP("P") D S11
 Q
S1 Q:'$G(PRINT)  S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 S SM=6 S:$D(SM1) SM=SM1 I '$D(TS0)!'$D(TSS) D ^%L1TS
 N ST S ST=$J("",SM)_$TR(TXT,TS0,TSS)
 I PRINT=54,$$^%L1T2P(ST) G ES1
S11 D ^W4SETPC($G(PRINT),ST)
ES1 K TXT,STZ
 Q
 

W4PGBREA
W4PGBRK(STAM) ; [ 12.08.18 11:19 ] [ 
 Q "<p style=""page-break-before:always"">"
 

W4PIC
W4PIC(DIR,PREF,N) ; [ 16.04.17 23:12 ] [ 
 N PIC,PIC1,EXIST,ST,FILE
 S FILE=PREF_N
 S PIC=$$PICL(DIR,FILE)
 ;
 S EXIST=$$EXIST(DIR,FILE)
 ;
 I 'EXIST S ST=$$^%W1DICT("NOTPICTURE")
 I EXIST D
 .S ST="<img src="""_$$PIC(DIR,FILE)_""" " 
 .S ST=ST_">"
 ;
 Q ST
 ;
 ;
PIC1(DIR,FILE,TYP)
 I $G(TYP)="" S TYP="jpg"
 Q $$GETP^%W1PRM("MSD")_"/"_DIR_"/"_FILE_"."_TYP
 ;
PICL(DIR,FILE,TYP)
 I $G(TYP)="" S TYP="jpg"
 N PIC,PIC1,WEBL
 S PIC1=$$PIC1(DIR,FILE,$G(TYP))
 S WEBL=$$WEBL^W3MAIN
 I $E(WEBL,$L(WEBL))'="/" S WEBL=WEBL_"/"
 S PIC=WEBL_PIC1
 Q PIC
 ;
PIC(DIR,FILE,TYP)
 N PIC S PIC=$$PIC1(DIR,FILE)
 Q "./"_PIC
 ;
EXIST(DIR,FILE) ; [ 16.04.17 14:28 ] [ 
 N PIC
 S PIC=$$PICL(DIR,FILE)
 Q $$EXIST^%L1ZOS(PIC)
 
 
 
 
 
 
 
 
 
 
 

W4PIC4GR
W4PIC4GR ; [ 10.08.21 12:15 ] [ 18.12.18 06:23 ] [ 23.09.18 18:31 ] 
 N (JB,%ARG)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMT")
 ;
 W "<br>",!
 ;
 W "<table>",!
  W "<tr>"
   W "<td>"
    D SORTSUG^W4SPIDK("")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ^W4BUTTON("back","BACK","Back()","color:red")
   W "</td>" 
  W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 ;
 W "<table border=""1"" cellspacing=""1"" cellpadding=""10px"">"
  W "<tr>"
   W "<th>"
    W $$^%W1DICT("GROUP")
   W "</th>"
   W "<th>"
    W $$^%W1DICT("PICTURE")
   W "</th>"
  W "</tr>",!
  ;
 S GL=$$^W4GL("PARSUG")
 N GLOBT S GLOBT=GL
 S GLOBT=$$CRGLOBT^W4SPIDK(GL)
 ;
 ;;W "GLOBT="_GLOBT 
 ;
 S N0="" F  S N0=$O(@GLOBT@(N0)) Q:N0=""  D
 .S N=N0
 .I $G(%ARG("SORT"))=2!($G(%ARG("SORT"))=3) S N=$G(@GLOBT@(N0)) Q:N=""
 .S A=$G(@GL@(N))
 .I '$$^W4VWGR(N) Q
 .I $$^W4ELPOS,$$NODLVORD^W4PRM,$G(@$$^W4GL("W3SUG")@(N))=3 Q
 .I '$$^W4ELPOS,$G(@$$^W4GL("W3SUG")@(N))=2 Q
 .
 .W "<tr >"
 . W "<td style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" >"
 .  W N_$$NBSP^%L1FRM(3)
 .  W $$H2U^%L1FRM(A)
 . W "</td>"
 .
 . W "<td "
 .  W " onClick=""ShowPictures('"_N_"')"" "
 .  W " style="""_$$STYLE("w4grp"_N)_";cursor:pointer;text-align:center"" "
 . W ">"
 . W "</td>"
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMT")
 Q
 ;
PIC(N) ;
 Q $$^W4PIC("grp","w4grp",N)
 ;
CLICK(PRM) ;
 S GR=$P(PRM,";")
 S CD=$P(PRM,";",2)
 I $G(GR)="" Q "WRONGGROUPCODE"
 S @$$^W4MAIN("VRM")@(GR)=CD
 N PIC,PIC1
 S PIC=$$PICL^W4PIC("grp","pic"_$TR($J(CD,3)," ",0))
 S PIC1=$$PICL^W4PIC("grp","w4grp"_GR)
 N CMD S CMD="cp "_PIC_" "_PIC1
 ZSY CMD
 Q $ZSY
 ;
 ;
DEL(GR) ;
 I $G(GR)="" Q "WRONGGROUPCODE"
 N PIC,PIC1
 S PIC=$$PICL^W4PIC("grp","w4grp"_GR)
 N CMD S CMD="rm "_PIC
 ZSY CMD
 Q $ZSY
 ;
 ;
SHOWPIC ;
 N GR
 S GR=$G(%ARG("GR")) Q:GR=""
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<br>",!
 W "<table >"
  W "<tr>"
   W "<td style=""font-size:"_$$^W3FSZ(16)_""">"
    W GR_" "_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(GR)))
   W "</td>"
   ;
   W "<td "
   S FILE="w4grp"_GR
   I $$EXIST^W4PIC("grp",FILE) D
   .W " style="""_$$STYLE(FILE)_";border:3px ridge grey"" "
   .W ">"
   .W "</td>"
   .
   .D TDSPACE
   . 
   .W "<td>"
   . D ^W4BUTTON("del","DELETE","Delete('"_GR_"')","color:red")
   .W "</td>"
   ;
   I '$$EXIST^W4PIC("grp",FILE) D
   .W ">"
   ;
   D TDSPACE
   ;
   W "<td>"
    D ^W4BUTTON("close","CLOSE","Close()","color:red")
   W "</td>",!
 W "</tr>" 
 W "</table>",!
 W "<br>",!
 ;
 W "<table border=""1"" dir=""LTR"" >"
 ;
 N RC,SRC0,SRC,IND,J,MSRC
 S SRC0=$$WEBL^W3MAIN_$$GETP^%W1PRM("MSD")_"/grp/pic*.jpg"
 ;
 F  S SRC=$ZSEARCH(SRC0) Q:SRC=""  S MSRC(SRC)=""
 ;
 S J=0 S COL=5,SRC=""
 W "<tr>"
 ;
SRC S SRC=$O(MSRC(SRC)) I SRC="" G TRE
 S J=J+1 I J>COL S J=1 W "</tr><tr>",!
 W "<td "
  S IND=$ZPARSE(SRC,"NAME")
  S IND=$P(IND,"pic",2)
  W " style="""_$$STYLE("pic"_IND)_""" "
  W " onClick=""ClickOnPicture('"_GR_"','"_IND_"')"" "
 W ">" 
 W "</td>"
 G SRC
 ;
TRE ;
 W "</tr>",!
TBLE ;
 W "</table>",!
 W "</div>",!
 Q
 ;
TDSPACE ;
 W "<td>&nbsp;</td>"
 Q
 ; 
STYLE(FILE) ;
 Q $$SIZE_";background-size:cover;background-image: url('"_$$PIC^W4PIC("grp",FILE)_"')"
 ;
SIZE(STAM) ;
 Q "width:180px;height:120px;"
 ;
SELSORT(VL)
 Q $$SELSORT^W4SPIDK(VL) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PICS
W4PICS() ; [ 23.05.25 08:52 ] [ 22.05.25 05:39 ] [ 
 N (JB,%ARG)
BG S MSD=$G(%ARG("MSD"))
 I 'MSD S MSD=1
 S HIP=$$WEBL^W3MAIN_MSD_"/itp/pic*.jpg"
 S FL=$ZSEARCH(HIP) I FL="" Q ""
 S FL1=^|$$^W3MAIN|W3MAIN("WEB")_MSD_"/itp/"_$P(FL,"/itp/",2)
 Q "<img style=""position:relative;left:0;width:100%;height:100%"" src="""_FL1_""" />"
 ;
COLPIC()
 Q $G(@$$^W4PRM@("ZAG","COLPIC"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PIZUIM
W4PIZUIM(HZM) ; [ 06.01.18 12:00 ] [ 24.10.17 22:18 ] [ 29.06.17 13:51 ] 
 N (JB,%ARG,HZM)
 Q:HZM<1
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W3CSS_""">",!
  W "<br>"
  W "<p style=""font-size:"_$$^W3FSZ(14)_""" >" 
   W $$^%W1DICT("MAKORPIZUIM")_" : "_$$^%W1DICT("ORDER")_" "_$$VW(HZM)
   W "&nbsp;&nbsp;"
   W $$^%W1DICT("FROM")_" "_$$DATK^W4HZMST(HZM)
  W "</p>",!
  ;
  W "<p style=""font-size:"_$$^W3FSZ(12)_""" >" 
   N NMB S NMB=$$NMB^W4HZMST(HZM)
   W $$^%W1DICT("CUSTOMER")_" "_$$VW(NMB)
   W $$SPACE
   W $$VW($$LKH^W4L(NMB),"H")
   W "<br><br>",!
   W $$^%W1DICT("MAZMIN")_" "_$$VW($$MAZMIN^W4HZMST(HZM),"H")
   W $$SPACE
   W $$^%W1DICT("PELE")_" "_$$VW($$PELE^W4HZMST(HZM))
  W "</p>",!
  ;
  W "<table cellpadding=""10"" >",!
   W "<tr>"
    W "<td>"_$$^%W1DICT("COMPENSREASON")_"</td>"
    W "<td>"
     W "<input type=""text"" id=""siba"" size=""55"" "
     W " value="""_$$H2U^%L1FRM($$COMPENSREASON^W4HZMST(HZM))_""" "
     I $$NOMOD(HZM) D CLOSE
     W ">"
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>"_$$^%W1DICT("COMPENSCONTENT")_"</td>"
    W "<td>"
     W "<textarea id=""pizuim"" cols=""50"" rows=""5"" "
      I $$NOMOD(HZM) D CLOSE
     W ">"
     W $$H2U^%L1FRM($TR($$PIZUIM^W4HZMST(HZM),"_",$C(10)))
     W "</textarea>",!
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
   D
    .I $$NOMOD D  Q
    ..W "<td>"_$$^%W1DICT("ACTIVEUPTO")_"</td>"
    ..W "<td>"_$$VW($$COMPENSUPTO^W4HZMST(HZM))_"</td>"
    .
    .S SM=$H-$$^%L1DC($$DATK^W4HZMST(HZM),3) 
    .S %W1DAT("CLND")="2;180;"_SM
    .S AD=$$COMPENSUPTO^W4HZMST(HZM)
    .I 'AD S AD=$ZD($H+30,"DD.MM.YY")
    .D ^%W1DAT("dat",AD,$$^%W1DICT("ACTIVEUPTO"))
    ;
   W "</tr>",!
   ;
  W "</table>",!
  ;
  W "<br><br>",!
  ; 
  I $$MIMUSH D  G END
  .I '$$GETP^%W1PRM("MIMUSHPZM") D
  ..N SOURCEORD S SOURCEORD=HZM
  ..D ^W4BTN("MIMUSHPIZUIM","MimushPizuim('"_SOURCEORD_"')","green")
  ..W $$SPACE 
  .
  .I $$WASMIMUSH D
  ..N ORD S ORD=$$GETP^%W1PRM("HZM") I $$^W4CLOSE(ORD) Q
  ..N SOURCEORD S SOURCEORD=HZM
  ..D ^W4BTN("DELMIMUSHPIZUIM","DelMimushPizuim('"_SOURCEORD_"')","brown")
  ..W $$SPACE 
  .D ^W4BCK
  ;
  I '$$CLOSECOMP(HZM) D ^W4SBMBCK("Submit('"_HZM_"')")
END  Q
  ;
  ;
CLOSECOMP(HZM) ;
 Q $$COMPENSORD^W4HZMST(HZM)
 ;
MIMUSH(STAM) ;
 Q +$G(%ARG("MIMUSH"))
 ;
CLOSE ;
 W " disabled=""disabled"" "
 Q
 ;
VW(TX,PR) ;
 N ST
 S ST="<span style=""font-weight:bold"">"
 D
 .I $G(PR)="H" S TX=$$H2U^%L1FRM(TX) Q
 .I $G(PR)="N" S TX=$J(TX,2,2) Q
 S ST=ST_TX_"</span>"
 Q ST 
 ;
SPACE(ZN)
 I '$G(ZN) S ZN=5
 Q $$NBSP^%L1FRM(ZN)
 ;
SAVE(PRM) ; 
 N (JB,%ARG,PRM) 
 S ORD=$P(PRM,"~") I ORD<1 Q 0
 S PIZUIM=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(PRM,"~",2)))
 S SIBA=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(PRM,"~",3)))
 S DAT=$P(PRM,"~",4) 
 S @$$^W4ORD@(ORD,"PIZUIM")=PIZUIM
 S @$$^W4ORD@(ORD,"PIZUIM","SIBA")=SIBA
 S @$$^W4ORD@(ORD,"PIZUIM","AD")=DAT
 S IND=$$INDPZM(ORD)
 S @$$^W4GL("W4PIZUIM")@(IND,ORD)=$H_"\"_DAT
 Q 1
 ;
INDPZM(ORD) ; 
 N NMB,PELE,MAZMIN
 S NMB=$$NMB^W4HZMST(ORD)
 S PELE=$$PELE^W4HZMST(ORD)
 I PELE?.P S PELE=NMB
 S MAZMIN=$$SPA^%L1FRM($$MAZMIN^W4HZMST(ORD))
 S NMB=$TR(NMB,"- ","")
 S PELE=$TR(PELE,"- ","")
 Q $$ENG^%L1FRM(NMB,10)_$$ENG^%L1FRM(PELE,10)_MAZMIN
 ;
 ;
SETMIMUSH(ORD) ;-- ORD - SOURCE ORDER
 N TMPORD S TMPORD=$$^W4TMPORD
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 N CD S CD=$$PIZUIM^W4PRM I CD="" Q "NOCOMPENSCODE"
 N PIZUIM S PIZUIM=$$PIZUIM^W4HZMST(ORD) 
 I PIZUIM="" Q "NOCONTCOMPENS"
 N NEW S NEW=LAST+1
 S @TMPORD@(NEW)="0~"_CD_"~"_$$TV^%W1DICT($$^%W1LNG,"ADDCOMPENSATION",ORD)_"~0~1~"
 S @TMPORD@(NEW+1)="1~"_CD_"-C~"_$TR(PIZUIM,"_",$C(10))
 S @TMPORD@("MIMUSHPZM")=ORD
 D PUT^%W1PRM("MIMUSHPZM",ORD)
 Q 1 
 ;
 ;
DELMIMUSH(ORD) ; -- ORD - SOURCE ORDER , HZM - CURRENT
 N TMPORD S TMPORD=$$^W4TMPORD
 N LAST S LAST=$O(@TMPORD@(99999),-1)
 N CD S CD=$$PIZUIM^W4PRM I CD="" Q "NOCOMPENSCODE"
 ;
 N I F I=1:1 Q:'$D(@TMPORD@(I))  D
 .I $$LVST^W3HZMST(JB,I)=0,$$CDST^W3HZMST(JB,I)=CD D
 ..D DEL^%L1GSEQ(TMPORD,I)
 ..I $$LVST^W3HZMST(JB,I) D DEL^%L1GSEQ(TMPORD,I)
 ;
 K @TMPORD@("MIMUSHPZM")
 D KILL^%W1PRM("MIMUSHPZM")
 ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") ; --- HZM - CURRENT ORDER
 I HZM'<1,'$$^W4CLOSE(HZM) D
 .N IND S IND=$$INDPZM^W4PIZUIM(ORD) Q:IND=""
 .S $P(@$$^W4GL("W4PIZUIM")@(IND,ORD),"\",3)=""
 .K @$$^W4ORD@(HZM,"MIMUSHPZM")
 .K @$$^W4ORD@(ORD,"PIZUIM","ORD")
 Q 1 
 ;
 ;
NOMOD(STAM) ; 
 I $$MIMUSH Q 1
 I $$CLOSECOMP(HZM) Q 1
 Q 0
 ;
WASMIMUSH(STAM) ; 
 I $$GETP^%W1PRM("MIMUSHPZM") Q 1
 I $D(@$$^W4TMPORD@("MIMUSHPZM")) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PIZUL
W4PIZUL(ORD) ; [ 21.01.24 12:13 ] [ 05.06.23 10:25 ] [ 13.08.19 09:40 ] 
 I $$D(ORD)>9 Q 1
 Q 0
 ;
D(ORD)
 I $G(ORD)="" Q 0
 Q $D(@$$^W4GL("W4PIZUL")@(ORD))
 ;
I(HZM) ;
 I $G(HZM)="" Q 0
 Q $G(@$$^W4GL("W4PIZULI")@(HZM))
 ;
DO(ORD) ;
 N (JB,%ARG,%REM,ORD)
 S DAT=$$TRH^W4HZMST(ORD)
 I $$^%L1DC(DAT,3)<$$^W4DZ Q "PASTDATE"
 I $$TSHL^W4HZMST(ORD)'>0 Q "NEGATIV"
 ;
 S GLTMP=$$^W4MAIN("TMP") K @GLTMP S INDHZ=0
 ;
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(ORD)",DLM="\"
 ;
 S N="",K=0 F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S A0=$$SETNOMOD(A)
 .S A=$$DELNOMOD(A)
 .
 .I $$DELIM(A) D  Q
 ..S INDHZ=INDHZ+1,K=0
 ..N TM S TM=$$TIME($P(A,"\",8))
 ..S @GLTMP@(INDHZ)=$P(TM,"-")
 ..I $L($P(TM,"-",2)) S @GLTMP@(INDHZ,"ADSHAA")=$P(TM,"-",2)
 .
 .S K=K+1,@GLTMP@(INDHZ,K)=A
 .
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S A1=$G(^(N1))
 ..S A10=$$SETNOMOD(A1)
 ..S A1=$$DELNOMOD(A1)
 ..S @GLTMP@(INDHZ,K,N1)=A1
 ..
 ..S N2="" F  S N2=$O(@GL@(N,N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),A20=$$SETNOMOD(A2)
 ...S A2=$$DELNOMOD(A2)
 ...S @GLTMP@(INDHZ,K,N1,N2)=A2
 ;
 N UCI
 S UCI=$$UCI(JB) Q:UCI=""
 N DT S DT=$P($G(^[UCI]W4LINK(ORD)),"~",4) Q:'DT
 ;
 N WB S WB=$$^W4MYDVN ;"HZW"_HZW
 D THZ^W4NEWHZ(JB)
 D PUT^%W1PRM("THZ",THZ)
 D PUT^%W1PRM("THZ1",THZ1)
 
 F INDHZ=1:1 Q:'$D(@GLTMP@(INDHZ))  D
 .S HZM="ycg"
 .K @THZ,@THZ1
 .S @THZ=$G(@$$^W4ORD@(ORD))
 .S @THZ@("HR2")=$G(@$$^W4ORD@(ORD,"HR2"))
 .N TIME S TIME=$G(@GLTMP@(INDHZ))
 .S $P(@THZ,"\",6)=TIME
 .S $P(@THZ,"\",8)=""
 .S $P(@THZ,"\",9)=""
 .S $P(@THZ,"\",22)=""
 .S $P(@THZ,"\",30)=ORD_" dpnfd levit"
 .;
 .N ADSHAA S ADSHAA=$G(@GLTMP@(INDHZ,"ADSHAA"))
 .I $L(ADSHAA) S @THZ@("ADSHAA")=ADSHAA ;;$$SHIFTSHAA(TIME)
 .M @THZ1=@GLTMP@(INDHZ)
 .S HZM=$$^W4PUTHZ(JB,HZM)
 .S LAST=$O(@$$^W4ORD@(HZM,9999),-1)+1
 .S SUM=$J($$TSHL^W4HZMST(HZM),2,2)
 .S @$$^W4ORD@(HZM,LAST)="0\\"_ORD_" dpnfd daieg\"_SUM_"\-1\\"_-SUM
 .S $P(@$$^W4ORD@(HZM),"\",11)=0
 .S @$$^W4GL("W4PIZUL")@(ORD,HZM)=$H
 .S @$$^W4GL("W4PIZULI")@(HZM)=ORD
 ;
 K:$G(HZM) @THZ
 K @THZ1,@GLTMP
 Q 1
 ;
 ;
DELNOMOD(A) ;
 N SMB S SMB=$P(A,"\",10)
 I SMB["!" Q A
 S SMB=$TR(SMB,"@+","")
 S $P(A,"\",10)=SMB
 Q A
 ;
 ;
SNDISHUR(JB,ORD,ISHUR)
 N (JB,%ARG,ORD,ISHUR)
 S @$$^W4ORD@(ORD,"ISHUR")=$ZD($H,"DD.MM.YY  24:60")
 ;
 S EMAIL="" F  S EMAIL=$O(@$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)) Q:EMAIL=""  D
 .I ISHUR S PRM=ORD_";"_$S($$SF^W4PRM:"Order ",1:"Bid ")_ORD_" is approved;"_EMAIL_";HZMH^"_ISHUR
 .I ISHUR=0 S PRM=ORD_";Order "_ORD_" is canceled;"_EMAIL_";HZMH^"_ISHUR
 .S $P(PRM,";",7)=$G(@$$^W4PRM@("HOWSEND"))
 .S RES=$$EMAILCONT^W4PCHBP(PRM)
 .S @$$^W4GL("W4EMPROT")@($$^W4DZ,ORD,EMAIL)=$H_";"_RES_";"_PRM
 Q
 ;
SETNOMOD(A) ; 
 I $P(A,"\",10)'["@@" S $P(A,"\",10)="@@"
 Q A 
 ;
UCI(JB) ;
 I $$MM^W4PRM Q $$^W3MAIN
 N MSD
 S MSD=$$GETP^%W1PRM("MSD")
 I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q UCI
 Q $$^%W1UCI(JB)
 ;
DOP(TM)
 Q $$DOP^%L1FRM($P(TM,":"))_":"_$$DOP^%L1FRM($P(TM,":",2))
 ;
TIME(TX) ; 
 N TM,J,TX1 S TM="",J=0
TIMEJ S J=J+1 I J>$L(TX) G TIMEE
 I $E(TX,J)'?1N G TIMEJ
 I $E(TX,J,255)?1N.N1":"2N.E D  G TIMEE
 .N J1 F J1=J+1:1:255 Q:$E(TX,J1)?.A
 .I $E(TX,J1)?.A S J1=J1-1
 .S TX1=$TR($E(TX,J,J1)," ","")
 .N TM1,TM2
 .S TM1=$P(TX1,"-")
 .S TM2=$P(TX1,"-",2)
 .I TM2="" S TM=$$DOP(TM1) Q
 .S TM=$$DOP(TM1)_"-"_$$DOP(TM2)
 .;;S TM=$E(TX,J,J+4)
 .;;S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J(+$P(TM,":",2),2)," ",0)
 E  G TIMEJ
TIMEE Q TM
 ;
DELIM(A) ;
 N CD S CD=$P(A,"\") I CD="" Q 0
 I '$$DELIM^W4P(CD) Q 0
 N HRP S HRP=$P(A,"\",8)
 I HRP'?.E1N1":"1N.E Q 0
 Q 1
 ;
SHIFTSHAA(TOTIME) ; 
 I TOTIME[":" S TOTIME=TOTIME*3600+($P(TOTIME,":",2)*60) 
 S TOTIME=TOTIME+($$PLUSTIME^W4PRM*60) 
 Q $$T^%L1TIME(TOTIME) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PIZUL0
W4PIZUL(ORD) ; [ 15.03.18 10:49 ] [ 25.12.17 14:50 ] [ 16.12.17 11:26 ] 
 I $$D(ORD)>9 Q 1
 Q 0
 ;
D(ORD)
 Q $D(@$$^W4GL("W4PIZUL")@(ORD))
 ;
I(HZM) ;
 Q $G(@$$^W4GL("W4PIZULI")@(HZM))
 ;
DO(ORD) ;
 N (JB,%ARG,%REM,ORD)
 S DAT=$$TRH^W4HZMST(ORD)
 I $$^%L1DC(DAT,3)<$$^W4DZ Q "PASTDATE"
 ;
 S GLTMP=$$^W4MAIN("TMP") K @GLTMP S INDHZ=0
 ;
 N I,PAR,OK,DLM S OK=0
 N GL S GL=$$^W4ORD_"(ORD)",DLM="\"
 ;
 S N="",K=0 F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S A0=$$SETNOMOD(A)
 .S A=$$DELNOMOD(A)
 .
 .I $$DELIM(A) D  Q
 ..S INDHZ=INDHZ+1,K=0
 ..N TM S TM=$$TIME($P(A,"\",8))
 ..S @GLTMP@(INDHZ)=TM
 .
 .S K=K+1,@GLTMP@(INDHZ,K)=A
 .
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S A1=$G(^(N1))
 ..S A10=$$SETNOMOD(A1)
 ..S A1=$$DELNOMOD(A1)
 ..S @GLTMP@(INDHZ,K,N1)=A1
 ..
 ..S N2="" F  S N2=$O(@GL@(N,N1,N2)) Q:N2=""  D
 ...S A2=$G(^(N2)),A20=$$SETNOMOD(A2)
 ...S A2=$$DELNOMOD(A2)
 ...S @GLTMP@(INDHZ,K,N1,N2)=A2
 ;
 N UCI
 S UCI=$$UCI(JB) Q:UCI=""
 N DT S DT=$P($G(^[UCI]W4LINK(ORD)),"~",4) Q:'DT
 ;
 N WB S WB=$$^W4MYDVN ;"HZW"_HZW
 D THZ^W4NEWHZ(JB)
 D PUT^%W1PRM("THZ",THZ)
 D PUT^%W1PRM("THZ1",THZ1)
 
 F INDHZ=1:1 Q:'$D(@GLTMP@(INDHZ))  D
 .S HZM="ycg"
 .K @THZ,@THZ1
 .S @THZ=$G(@$$^W4ORD@(ORD))
 .S $P(@THZ,"\",6)=$G(@GLTMP@(INDHZ))
 .S $P(@THZ,"\",8)=""
 .S $P(@THZ,"\",9)=""
 .S $P(@THZ,"\",22)=""
 .S $P(@THZ,"\",30)=ORD_" dpnfd levit"
 .M @THZ1=@GLTMP@(INDHZ)
 .S HZM=$$^W4PUTHZ(JB,HZM)
 .S LAST=$O(@$$^W4ORD@(HZM,9999),-1)+1
 .S SUM=$J($$TSHL^W4HZMST(HZM),2,2)
 .S @$$^W4ORD@(HZM,LAST)="0\\"_ORD_" dpnfd daieg\"_SUM_"\-1\\"_-SUM
 .S $P(@$$^W4ORD@(HZM),"\",11)=0
 .S @$$^W4GL("W4PIZUL")@(ORD,HZM)=$H
 .S @$$^W4GL("W4PIZULI")@(HZM)=ORD
 ;
 K @THZ,@THZ1,@GLTMP
 Q 1
 ;
 ;
DELNOMOD(A) ;
 N SMB S SMB=$P(A,"\",10)
 I SMB["!" Q A
 S SMB=$TR(SMB,"@+","")
 S $P(A,"\",10)=SMB
 Q A
 ;
 ;
SNDISHUR(JB,ORD,ISHUR)
 N (JB,%ARG,ORD,ISHUR)
 S @$$^W4ORD@(ORD,"ISHUR")=$ZD($H,"DD.MM.YY  24:60")
 ;
 S EMAIL="" F  S EMAIL=$O(@$$^W4ORD@(ORD,"SENT2MAIL",EMAIL)) Q:EMAIL=""  D
 .I ISHUR S PRM=ORD_";Bid "_ORD_" is approved;"_EMAIL_";HZMH^"_ISHUR
 .I ISHUR=0 S PRM=ORD_";Bid "_ORD_" is canceled;"_EMAIL_";HZMH^"_ISHUR
 .S $P(PRM,";",7)=$G(@$$^W4PRM@("HOWSEND"))
 .S RES=$$EMAILCONT^W4PCHBP(PRM)
 .S @$$^W4GL("W4EMPROT")@($$^W4DZ,ORD,EMAIL)=$H_";"_RES_";"_PRM
 Q
 ;
SETNOMOD(A) ; 
 I $P(A,"\",10)'["@@" S $P(A,"\",10)="@@"
 Q A 
 ;
UCI(JB) ;
 N MSD
 S MSD=$$GETP^%W1PRM("MSD")
 I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q UCI
 Q $$^%W1UCI(JB)
 ;
TIME(TX) ; 
 N TM,J S TM="",J=0
TIMEJ S J=J+1 I J>$L(TX) G TIMEE
 I $E(TX,J)'?1N G TIMEJ
 I $E(TX,J,255)?1N.N1":"2N.E D  G TIMEE
 .S TM=$E(TX,J,J+4)
 .S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J(+$P(TM,":",2),2)," ",0)
 E  G TIMEJ
TIMEE Q TM
 ;
DELIM(A) ;
 N CD S CD=$P(A,"\") I CD="" Q 0
 I '$$DELIM^W4P(CD) Q 0
 N HRP S HRP=$P(A,"\",8)
 I HRP'?.E1N1":"1N.E Q 0
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PIZZA
W4PIZZA(PRT) ; [ 31.10.23 16:27 ] [ 19.10.20 19:43 ] [ 12.07.20 17:40 ] 
 N SHEM S SHEM=$$SHEM^W4P(PRT)
 Q $$SUG(SHEM)
 ;
SUG(SHEM) ;
 I SHEM["[]" Q 4
 I SHEM["()"!(SHEM[")(") Q 2
 Q 0
 ;
SUGST(STPAR) ;
 N CD S CD=$$CD^W3HZMST(STPAR)
 Q $$W4PIZZA(CD)
 ;
QN(QN) ;
 I QN[":" Q $P(QN,":",2)
 I QN["|" Q $P(QN,"|",2)
 Q ""
 ;
QNG(QN)
 I QN="++" Q "()"
 I QN="+-" Q "(_"
 I QN="-+" Q "_)"
 Q ""
 ;
QNPLUS(QN) ;
 N QNT S QNT=0
 N END S END=0
 N J F J=1:1:$L(QN) D  Q:END
 .I $E(QN,J)="+" S QNT=QNT+1
 .I QNT,$E(QN,J)="|"!($E(QN,J)=":") S END=1
 Q QNT
 ;
QNP(QN) ;
 N QNPZ,Q S QNPZ=""
 S QN=$G(QN)
 I $$^W4QNR(QN)<0 Q $P($P(QN,":"),"|")  ; -- 06/09/19
 ;
 I QN[":" D  Q QNPZ
 .S Q=$P(QN,":",2) F J=1:1:4 S QNPZ=QNPZ_$S($E(Q,J)="+":$E(Q,J),1:"-")
 I QN["|" D  Q QNPZ
 .S Q=$P(QN,"|",2) F J=1:1:2 S QNPZ=QNPZ_$S($E(Q,J)="+":$E(Q,J),1:"-")
 Q QN
 ;
 ;
DOP(QN) ;
 I QN[":" Q ":"_$P(QN,":",2)
 I QN["|" Q "|"_$P(QN,"|",2)
 Q ""
 ;
QNPZ(QN) ;
 I QN[":" Q 4
 I QN["|" Q 2
 Q 0
 ;
PCQN(QN) ;
 I QN'[":",QN'["|" Q ""
 Q "<br>"_$$^W4SHOWPZ(QN)
 ;
ITEMSHOW(ITEMSHOW) ; 
 I $G(ITEMSHOW)="" Q 0
 N CD S CD=$S(ITEMSHOW["%7E":$P(ITEMSHOW,"%7E",1),1:$P(ITEMSHOW,"~",1))
 I $$W4PIZZA(CD)=2 Q 1  
 Q 0
 
 
 
 
 
 

W4PK
W4PK(PAR,PRKUP) ; [ 18.10.14 17:45 ] [ 27.07.14 09:27 ] [ 26.07.14 13:03 ]
 I $G(PAR)="" Q ""
 I $G(PRKUP)="" S PRKUP=1
 I 'PRKUP Q PAR
 I $E(PAR)="K" Q PAR
 I $$ONEGLPAR^W3PRM Q PAR
 Q "K"_PAR
 ;
CLR(PAR) ;
 I $G(PAR)="" Q ""
 I $E(PAR)="K",'$$ONEGLPAR^W3PRM Q $E(PAR,2,20)
 Q PAR
 ;
KP(PAR) ;
 I $G(PAR)="" Q 0
 I $E(PAR)="K",'$$ONEGLPAR^W3PRM Q 1
 Q 0

W4PL
W4PL(STAM) ; [ 15.11.08 10:52 ] [ 07.11.08 10:35 ] [
 Q $$^W4GL("PL")

W4PLGN
W4PLGN ; [ 19.08.26 10:30 ] [ 13.06.23 17:04 ] [ 09.04.22 19:52 ] 
 Q
 ;
INIT ;
 D KILL^%W1PRM("NMAP"),KILL^%W1PRM("NPLGN")
 Q
 ;
INITPLGN(NMAP,NEW) ;
 K @$$GLTMP
 ;
 I $G(NEW) D
 .N IND S IND=$$LAST($$GLPLGN(NMAP))+1
 .D SETCUR(IND)
 Q
 ;
 ;
SET(PRM) ;
 N (JB,%ARG,PRM)
 S GLTMP=$$GLTMP
 S DLM=";"
 S LAT=$P(PRM,DLM)
 S LNG=$P(PRM,DLM,2)
 S NEWIND=$O(@GLTMP@(9999),-1)+1
 S @GLTMP@(NEWIND)=LAT_DLM_LNG
 ;
 Q $$GET(GLTMP)
 ;
 ;
GETAZ(PRM) ;
 ;;S ^AA("W4PLGN-GETAZ","PRM")=PRM
 N NMAP,AZ
 S NMAP=$P(PRM,";")
 S AZ=$P(PRM,";",2)
 I NMAP="" Q "NOK"
 I AZ="" Q "NOK"
 ;;S ^AA("W4PLGN-GETAZ","ACT")=$$ACT(NMAP,AZ)
 I $$ACT(NMAP,AZ)=0 Q "NOK"
 Q $$GET^W4PLGN($$GLPLGNBI^W4PLGN(PRM))
 ; 
GLDESCR(NMAP,AZ)
 Q $$^W4GL("W4PLGN")_"("_NMAP_",""DESCR"","_AZ_")"
 ;
ACT(NMAP,AZ)
 I $G(NMAP)="" Q 0
 I $G(AZ)="" Q 0
 N GLDESCR S GLDESCR=$$GLDESCR(NMAP,AZ)
 ;
 Q $P($G(@GLDESCR@(1)),"\",4)
 ;
 ;
GET(GL,PR) ;
 N (JB,GL,PR)
 S OU="[ "
 S NOK=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D  Q:NOK
 .S COORD=$$GET1(N,GL) I COORD="NOK" S NOK=1 Q
 .S OU=OU_COORD_","
 ;
 I NOK Q "NOK"
 ;                      
 I $G(PR)'="CLOSE" S OU=$E(OU,1,$L(OU)-1)_" ]"
 I $$GET1(1,GL)="NOK" Q "NOK"
 I $G(PR)="CLOSE" S OU=OU_$$GET1(1,GL)_" ]"
 ;
 Q OU
 ;
 ;
GET1(N,GL) ;
 N A S A=$G(@GL@(N)) 
 S DLM=";"
 I '$P(A,DLM)!'$P(A,DLM,2) Q "NOK"
 Q "{ lat:"_$P(A,DLM)_" , lng:"_$P(A,DLM,2)_" }"
 ;
GETCRD(NMAP,NP) ;
 N N,GL,CRD S GL=$$GLPLGN(NMAP)
 S CRD=""
 S N="" F  S N=$O(@GL@(NP,N)) Q:N=""  D
 .S CRD=CRD_$G(^(N))_"|"
 Q $E(CRD,1,$L(CRD)-1)
 ;
DELPOINT(NPOINT) ;
 S NPOINT=$$RPL^%L1FRM(NPOINT,"&nbsp;","")
 I '$G(NPOINT) Q "<PUSTO>"
 D DEL^%L1GSEQ($$GLTMP,NPOINT)
 Q $$GET($$GLTMP)
 ;
 ;
KILL(NMAP,NP) ; -- DEL POLYGON
 N (JB,%ARG,NMAP,NP)
 I '$G(NP) S NP=$$NPLGN
 D KILL^%W1PRM("NPLGN")
 D DEL^%L1GSEQ($$GLPLGN(NMAP),NP)
 Q 1
 ;
NEXT(N,GL) ;
 I $G(GL)="" S GL=$$GLTMP
 N IND S IND=$O(@GL@(N))
 I 'IND Q ""
 Q $$GET1(IND,GL)
 ;
LAST(GL) ;
 Q $O(@GL@(99999),-1)
 ;
NMAP(STAM) ;
 I $G(%ARG("NMAP")) D PUT^%W1PRM("NMAP",%ARG("NMAP")) Q %ARG("NMAP")
 N NMAP S NMAP=$$GETP^%W1PRM("NMAP")
 I 'NMAP S NMAP=1
 Q NMAP
 ;
NPLGN(CUR) ;
 I $G(CUR) D SETCUR(CUR) Q CUR
 I $G(%ARG("CURRENT")) D SETCUR(%ARG("CURRENT")) Q %ARG("CURRENT")
 I $G(%ARG("NP")) D SETCUR(%ARG("NP")) Q %ARG("NP")
 N NPLGN S NPLGN=$$GETP^%W1PRM("NPLGN")
 Q NPLGN
 ;
SETCUR(NUM) ;
 D PUT^%W1PRM("NPLGN",NUM)
 Q
 ;
GLPLGN(NMAP) ;
 I $G(NMAP)="" S NMAP=$$NMAP
 Q $$^W4GL("W4PLGN")_"("_NMAP_")"
 ;
GLPLGNBG(NMAP) ;
 I $G(NMAP)="" S NMAP=$$NMAP
 Q $$^W4GL("W4PLGN")_"("_NMAP_","
 ;
GLPLGNBI(PRM) ;
 N NMAP,NPLGN
 S NMAP=+$P(PRM,";")
 S NPLGN=+$P(PRM,";",2)
 Q $$^W4GL("W4PLGN")_"("_NMAP_","_NPLGN_")"
 ;
GLTMP(STAM)
 Q $$^W4MAIN("TMP")
 ;
PLGN2TMP(NP) ;
 I '$G(NP) S NP=$$NPLGN
 K @$$GLTMP
 M @$$GLTMP=@$$GLPLGN($$NMAP)@(NP)
 Q
 ;
SAVEPLGN(PRM)
 N NP S NP=$P(PRM,";")
 N NAME S NAME=$$CNWEB^%L1FRM($P(PRM,";",2))
 S NAME=$$INVH^%L1FRM(NAME)
 D W3AZR^W3AZRIDK
 N IRI S IRI=$$NMAP
 S @W3AZR@(NP)=NAME
 Q $$TMP2PLGN(NP) ;
 ;
 ;
TMP2PLGN(NP) ;
 I '$G(NP) S NP=$$NPLGN
 K @$$GLPLGN($$NMAP)@(NP)
 M @$$GLPLGN($$NMAP)@(NP)=@$$GLTMP
 Q 1
 ;
MRKLST(NMAP) ;
 N MSDR S MSDR=$$MSDR^W4PRM I 'MSDR Q +$$GETP^%W1PRM("MSD")
 ;
 N ST S ST=""
 N GLMSDR S GLMSDR="^[$$^W3MAIN]W3MSDR"
 ;
 N N S N="" F  S N=$O(@GLMSDR@(MSDR,N)) Q:N=""  D
 .I $$NOSHOW(N,MSDR) Q
 .I $$MAP^W3R(N)=NMAP S ST=ST_N_","
 Q $E(ST,1,$L(ST)-1)
 ;
 ;
GLMSDR ;
 S GLMSDR="^[$$^W3MAIN]W3MSDR"
 Q
 ;
NOSHOW(N,MSDR) ;
 N GLMSDR  D GLMSDR
 I $G(N),$G(MSDR),N'=MSDR Q 0
 I '$$DLVWEB^W4PRM Q 0
 I $$ONESNIF(MSDR) Q 0
 Q 1
 ;
ONESNIF(MSDR) ;
 N GLMSDR  D GLMSDR
 N NX S NX=$O(@GLMSDR@(MSDR,"")) I NX="" Q 0
 N NX1 S NX1=$O(@GLMSDR@(MSDR,NX)) I NX1="" Q 1
 Q 0
 ;
MRKQN(NMAP) ;
 Q $L($$MRKLST(NMAP),",")
 ;
PLGNQN(NMAP) ;
 Q $$LAST($$GLPLGN(NMAP))
 ;
MAPQN(STAM) ;
 Q +$$LAST($$^W4GL("W4PLGN"))
 ;
INFO(NMAP,MRK) ;
 I $$^W4ELPOS,'$$MSDR^W4PRM Q $$^W3MSDG(+$$GETP^%W1PRM("MSD"))
 ;
 N TX S TX=$$MSDN^W3R(MRK)
 S TX=$$RPL^%L1FRM(TX,"&nbsp;","")
 S TX=$$SPA^%L1FRM(TX)
 S TX=$$H2U^%L1FRM(TX)
 S TX=$$CLWEB^%L1FRM(TX)
 Q TX
 ;
 ;
ZOOM(NMAP)
 N ZOOM S ZOOM=$$GETP^%W1PRM("ZOOM")
 I ZOOM<11 D
 .S ZOOM=$$ZOOM^W4MAPPRM(NMAP)
 .D PUT^%W1PRM("ZOOM",ZOOM)
 Q ZOOM
 ;
MAPCENTER(NMAP) ;
 Q $$CENTER^W4MAPPRM(NMAP)
 ;
MAPLAT(NMAP) ;
 Q $$MAPLAT^W4MAPPRM(NMAP)
 ;
MAPLNG(NMAP) ;
 Q $$MAPLNG^W4MAPPRM(NMAP)
 ;
MRKCRD(NMAP,MRK)
 N CRD
 I $$^W4ELPOS,'$$MSDR^W4PRM Q $$CENTER^W4MAPPRM(1)
 S CRD=$$COORD^W3R(MRK)
 Q CRD
 ;
CURPLGN(STAM) ;
 I $G(%ARG("CURRENT"))?1N.N Q %ARG("CURRENT")
 I $G(%ARG("NP"))?1N.N Q %ARG("NP")
 Q $$NPLGN
 ;
SELMAP ;
 W "<select id=""selmap"" "
  W " onChange=""ShowMap()"" "
 W ">",!
  N N
  ;;W "<option value=""0"">"_$$^%W1DICT("CHOICEMAP")_"</option>",!
  S N="" F  S N=$O(@$$^W4GL("W4MAPPRM")@(N)) Q:N=""  D
  .W "<option value="""_N_""">"_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>",!
 W "</select>",!
 Q
 ;
MAPRGN(PRM) ;
 N (JB,%ARG,PRM)
 S NMAP=$P(PRM,";")
 S RGN=$P(PRM,";",2)
 ;;S ^AA("W4PLGN","NMAP")=NMAP
 ;;S ^AA("W4PLGN","RGN")=RGN
 I 'NMAP Q " "
 S NM=$$^%W1DICT("MAP")_" : "_NMAP_" "_$$H2U^%L1FRM($$NAME^W4MAPPRM(NMAP))
 S NM=NM_$$NBSP^%L1FRM(5)_$$^%W1DICT("REGION")_" : "_RGN_" "_$$H2U^%L1FRM($$NAME^W3AZRIDK(NMAP,RGN))
 S MRK=$$GETP^%W1PRM("MRKTO")
 I 'MRK,NMAP,RGN D PUTMRK^W3MENU(NMAP,RGN) S MRK=$$GETP^%W1PRM("MRKTO")
 ;;S ^AA("W4PLGN","MRK")=MRK
 I $$MSDR^W4PRM!'$$^W4ELPOS,MRK S NM=NM_$$NBSP^%L1FRM(5)_$$^%W1DICT("RESTAURANT")_" : "_$$H2U^%L1FRM($$MSD^W3R(MRK))
 I $$^W4ELPOS,'$$MSDR^W4PRM S NM=NM_$$NBSP^%L1FRM(5)_$$^%W1DICT("RESTAURANT")_" : "_$$^W3MSDG(+$$GETP^%W1PRM("MSD"))
 Q $$CLWEB^%L1FRM(NM)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PLLN
<!DOCTYPE html> ; [ 13.09.17 20:36 ] [ 01.08.17 18:21 ] [ 
<html>
 
<%@ taglib uri="http://cav.co.il/taglibs/mumps" prefix="m" %>
<m:session namespace="USER">
<%@ include file="w1jbarg.jsp" %>
 
<body>
 
<div id="map" style="width:100%;height:700px"></div>
 
<script>
 
<%@ include file="w1procg.jsp" %>
 
 var oldinfo=null
 var oldplgn=null
 var oldplln=null
 
function myMap() {
  var myCenter = new google.maps.LatLng(32.08,34.774);
  var mapCanvas = document.getElementById("map");
  var mapOptions = {center: myCenter, zoom: 16};
 
  var map = new google.maps.Map(mapCanvas, mapOptions);
 
  var marker = new google.maps.Marker({position:myCenter});
  
  marker.setMap(map);
 
  var infowindow = new google.maps.InfoWindow({
    content: "Yashka Dizengoff"
  });
  
  infowindow.open(map,marker);
 
  <m:if expr='$G(%ARG("FUNC"))="SHOW"'> // ---------- SHOW 
 
  var prm="w4crpolygon.GetPlgn"
  var a=<m:serverExec expr='S PRM=$$^W4PRMSRV(PRM) W $$GET^W4PLGN' varName='PRM' varValue='prm' />
  //alert("a="+a)
  a=Trim(a)
 
  PaintPolygon(a,map)
 
  return
 </m:if> // ------------------------------------------ END SHOW
 
 
 <m:if expr='$G(%ARG("FUNC"))="DELLAST"' > //----------- DELLAST  
 
   var prm="w4crpolygon.DelLast"
   var a=<m:serverExec expr='S PRM=$$^W4PRMSRV(PRM) W $$DELLAST^W4PLGN' varName='PRM' varValue='prm' />
   //alert("a="+a)
   a=Trim(a)
 
  PaintPolyline(a,map)
 
  PaintInfoWindow(map)
 
 </m:if> // --------------------------------------- END DELLAST
 
 
 <m:if expr='$G(%ARG("FUNC"))="ADD"' > //----------- ADD  
 
   var prm="w4crpolygon.Add"
   var a=<m:serverExec expr='S PRM=$$^W4PRMSRV(PRM) W $$GET^W4PLGN' varName='PRM' varValue='prm' />
   //alert("a="+a)
   a=Trim(a)
 
  var plln=eval(a)
  <%@ include file="w4polyline.jsp" %>
  newplln.setMap(map)
 
  <%@ include file="w4infownd.jsp" %>
 
 </m:if> // --------------------------------------- END ADD
 
 <m:if expr='$G(%ARG("FUNC"))="CREATE"' > // ----------- CREATE
  //--------------  Init
  var prm="w4crpolygon.Create"
  var a=<m:serverExec expr='S PRM=$$^W4PRMSRV(PRM) D INIT^W4PLGN W 1' varName='PRM' varValue='prm' />
 </m:if>
 
 <m:if expr='$G(%ARG("FUNC"))="CREATE"!($G(%ARG("FUNC"))="DELLAST")!($G(%ARG("FUNC"))="ADD")' > // ----------- CREATE
  //--------------  Add listener
  google.maps.event.addListener(map, "click", function(event) {
 
    var lt = event.latLng.lat();
    var lg = event.latLng.lng();
    //alert( lt + ', ' + lg );
 
    var prm="w4crpolygon.addListener"
    var a=<m:serverExec expr='S PRM=$$^W4PRMSRV(PRM) W $$LAST^W4PLGN(PRM)+1' varName='PRM' varValue='prm' />
    var LastPoint=Trim(a)
 
    var infowindow1 = new google.maps.InfoWindow({
     content: LastPoint
    });
 
    infowindow1.setPosition( event.latLng ) ;
 
    oldinfo=infowindow1;
     
    infowindow1.open(map,this) ;
 
   var prm="w4crpolygon;"+lt+";"+lg
 
   var a=<m:serverExec expr='S PRM=$$^W4PRMSRV(PRM) W $$SET^W4PLGN(PRM)' varName='PRM' varValue='prm' />
   //alert("a="+a)
   a=Trim(a)
 
    if ( oldplln !== null )
    {
     oldplln.setMap(null);
    }
 
    var plln=eval(a)
    <%@ include file="w4polyline.jsp" %>
    newplln.setMap(map);
 
    oldplln=newplln
 
   });
  </m:if> //------------------------------------ END CREATE
}  
 
function PaintPolygon(a,map)
{
  var plgn=eval(a)
  var newplgn = new google.maps.Polygon({
     paths: plgn,
     strokeColor: '#FF0000',
     strokeOpacity: 0.8,
     strokeWeight: 2,
     fillColor: '#FF0000',
     fillOpacity: 0.35
  
   });
  newplgn.setMap(map)
}
 
function PaintPolyline(a,map)
{
 var plln=eval(a)
 var newplln = new google.maps.Polyline({
   path: plln,
   geodesic:true,
   strokeColor: '#FF0000',
   strokeOpacity: 0.8,
   strokeWeight: 2,
 });
 newplln.setMap(map)
}
 
 
</script>
 
<script async defer
 src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAqvm3oxNDvjiQxNsu1JgXKFc65KMDbIIc&callback=myMap">
</script>
 
</body>
</m:session>
</html>
 
 
 
 
 
 
 
 

W4PLMIN
W4PLMIN(N,PR,PROC1,PROC2) ; [ 05.08.23 20:58 ] [ 03.08.23 04:54 ] [ 
 W "<td align=""center"">",!
  W "<table width=""100%""> "
   W "<tr> ",!
    W "<td style=""text-align:center;font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
     D
     .I $G(PROC1)'="" W "onClick="""_PROC1_"('"_N_"')"" " Q
     .W " onClick=""InsertRow('"_N_"')"" "
    W "> +" 
    W "</td>"
   W "</tr>",!
  I $G(PR) W "</table>",! Q
   W "<tr> ",!
    W "<td style=""text-align:center;color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
     D
     .I $G(PROC2)'="" W "onClick="""_PROC2_"('"_N_"')"" " Q
     .W " onClick=""DeleteRow('"_N_"')"" "
    W ">"
      W "-"
    W "</td>"
   W "</tr>"
  W "</table>",! 
 W "</td>",!
 Q
 ;
 ;
ST(N,PR,PROC1,PROC2) ;
 S ST="<td align=""center"">"
  S ST=ST_"<table width=""100%""> "
  S ST=ST_"<tr> "
    S ST=ST_"<td style=""text-align:center;font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
     D
     .I $G(PROC1)'="" S ST=ST_"onClick="""_PROC1_"('"_N_"')"" " Q
     .S ST=ST_" onClick=""NewLine('"_N_"')"" "
    S ST=ST_"> +" 
    S ST=ST_"</td>"
   S ST=ST_"</tr>"
  I $G(PR) S ST=ST_"</table>" Q
   S ST=ST_"<tr> "
    S ST=ST_"<td style=""text-align:center;color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
     D
     .I $G(PROC2)'="" S ST=ST_"onClick="""_PROC2_"('"_N_"')"" " Q
     .S ST=ST_" onClick=""DeleteRow('"_N_"')"" "
    S ST=ST_">"
    S ST=ST_"-"
    S ST=ST_"</td>"
   S ST=ST_"</tr>"
  S ST=ST_"</table>"
 S ST=ST_"</td>"
 Q ST
 
 
 
 
 
 
 
 
 
 

W4PLUK
W4PLUK(STAM) ; [ 15.02.24 08:20 ] [ 31.01.24 07:37 ] [ 14.02.21 18:08 ] 
 Q $$^W4GL("PLUK")
 ;
LP(NOM)
 Q $G(@$$^W4GL("PLUK")@(NOM,"LP"))
 ;
LPSUG(NOM)
 Q $G(@$$^W4GL("PLUK")@(NOM,"LP","SUG"))
 ;
DISP(NOM)
 I '$$SUPER^W3PRM Q ""
 Q $G(@$$^W4GL("PLUK")@(NOM,"DISP"))
 ;
KUPA(NOM)
 I $G(NOM)="" S NOM=$$^W4MYDVN
 I $$SUPER^W3PRM!($$TAW^W4PRM=1) Q 1
 Q $G(@$$^W4GL("PLUK")@(NOM,"KUPA"))
 ;
MLY(STAM) ;
 I $G(@$$W4PLUK)["MLY" Q 1
 Q 0
 ;
MZM(NOM)
 Q $G(@$$^W4GL("PLUK")@(NOM,"MZM"))
 ;
 
 
 
 
 
 
 

W4PNOHN
W4PNOHN(HZM) ; [ 21.12.14 06:36 ] [
 N I,CD,OK S OK=0
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:OK
 .S CD=$$PAR^W4HZMST(HZM,I)
 .I CD,$L($$SMB^W4BLNMVC(CD)) S OK=1
 Q OK
 ;
TMP(JB) ;
 N N,CD,OK S OK=0
 S TMPORD=$$^W4TMPORD
 S N="" F   S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:OK
 .S CD=$$CDST^W3HZMST(JB,N)
 .I CD,$L($$SMB^W4BLNMVC(CD)) S OK=1
 Q OK

W4POS
W4POS ; [ 27.06.17 07:25 ] [ 
 Q
GETNMB(STAM) ;
 N (JB,%ARG)
 N DIAP S DIAP=$G(@$$^W4GL("W4DIAPTB")@($$^W4MYDVN))
 I DIAP="" Q 0
 S BG=$P(DIAP,"-")
 S FIN=$P(DIAP,"-",2)
 I FIN>999 S FIN=999
 S OK=0
 F I=BG:1:FIN I '$$^W4HZFR(I),$D(@$$^W4GL("LKH")@(I))#2 S OK=I Q
 Q OK
 

W4POSATR
W4POSATR ; [ 20.04.26 13:34 ] [ 27.07.22 10:37 ] [ 18.05.14 11:05 ] 
 N (JB,%ARG,%REM)
 D ^%W1HD("POSATRTABLE","",2)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;;W "<span style=""font-size:"_$$^W3FSZ_""">"
 ;; W $$^%W1DICT("POSATRTABLE")
 ;;W "</span>",!
 ;
 W "<br><br>"
 W "<table id=""TbPosUlm"" width="""_$S($$^W4TABLET=2:80,1:40)_"%"" border=""1"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <th>"_$$^%W1DICT("POSNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("POSNAME")_"</th>",!
 W "  <th>"_$$^%W1DICT("ATAR")_"</th>",!
 W " </tr>",!
 ;
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .I $G(@$$^W4DEV@(N))="" Q
 .W " <tr>",!
 .W "  <td align=""center"">"
 .W N
 .W "  </td>"
 .
 .W "  <td>"
 . W " &nbsp;"_$G(@$$^W4DEV@(N))
 .W "  </td>"
 .
 .W "  <td>"
 . S RKV=$$H2U^%L1FRM($G(@$$^W4PLUK@(N)))
 . W " &nbsp;"_RKV
 .W "  </td>",!
 .
 .W "  <td align=""center"">"
 . W "<select id=""ulam"_N_""">",!
 .  S N1=0 F  S N1=$O(@$$^W4GL("W4ATAR")@(N1)) Q:N1=""  D
 ..  W "<option value="""_N1_""" "
 ..  I N1=$G(@$$^W4GL("W4POSATR")@(N)) W " selected=""selected"" "
 ..  W ">"_N1_" "_$$H2U^%L1FRM($$ATARNAME(N1))_"</opton>",!
 . W "</select>",!
 .W "  </td>"
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div id=""divbut"">",!
  W "<table>",!
   W "<tr>",!
    W " <td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
    W "</td>"
    W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
ATARNAME(ATAR) ;
 Q $G(@$$^W4GL("W4ATAR")@(ATAR))
 ;
SUBMIT(PRM) ;
 N I,C
 K @$$^W4GL("W4POSATR")
 F I=1:1:$L(PRM,"~") D
 .S C=$P(PRM,"~",I)
 .S POS=$P(C,";")
 .S ATAR=$P(C,";",2)
 .I POS'="",ATAR'="" S @$$^W4GL("W4POSATR")@(POS)=ATAR
 Q
 
 
 

W4POSBIO
W4POSBIO ; [ 20.04.26 13:22 ] [ 26.03.20 12:51 ] [ 25.03.20 15:33 ] 
 N (JB,%ARG,%REM)
 D ^%W1HD("POSBIOTABLE","",2)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;;W "<span style=""font-size:"_$$^W3FSZ_""">"
 ;; W $$^%W1DICT("POSBIOTABLE")
 ;;W "</span>",!
 ;
 W "<br><br>"
 W "<table id=""TbPosBio"" width=""60%"" border=""1"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <th>"_$$^%W1DICT("POSNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("POSNAME")_"</th>",!
 W "  <th>"_$$^%W1DICT("BIODEV")_"</th>",!
 W " </tr>",!
 ;
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .I $G(@$$^W4DEV@(N))="" Q
 .W " <tr>",!
 .W "  <td align=""center"">"
 .W N
 .W "  </td>"
 .
 .W "  <td>"
 . W " &nbsp;"_$G(@$$^W4DEV@(N))
 .W "  </td>"
 .
 .W "  <td>"
 . S RKV=$$H2U^%L1FRM($G(@$$^W4PLUK@(N)))
 . W " &nbsp;"_RKV
 .W "  </td>",!
 .
 .W "  <td align=""center"">"
 . W "<input type=""checkbox"" size=""15"" id=""bio"_N_""" "_$S($$BIO(N):"checked=""checked""",1:"")_">" 
 .W "  </td>"
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div id=""divbut"">",!
  W "<table>",!
   W "<tr>",!
    W " <td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
    W "</td>"
    W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 K @$$^W4GL("W4POSBIO")
 F I=1:1:$L(PRM,";") D
 .S C=$P(PRM,";",I)
 .S POS=$P(C,"~")
 .S BIO=$P(C,"~",2)
 .I POS S @$$^W4GL("W4POSBIO")@(POS)=BIO
 Q
 ;
BIO(POS) ;
 Q +$G(@$$^W4GL("W4POSBIO")@(POS))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4POSEMV
W4POSEMV ; [ 13.07.25 11:39 ] [ 26.03.25 17:08 ] [ 19.09.24 10:45 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table id=""TbPosEmv"" width="""_$S($$^W4TABLET=2:98,$$EMV^W4PRM=4:80,1:60)_"%"" height=""80%"" border=""1"" cellspacing=""0"">",!
 W "<thead class=""hdfix"">",! 
 W " <tr>",!
 W "  <th>"_$$^%W1DICT("POSNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("POSNAME")_"</th>",!
 W "  <th>"_$$^%W1DICT("EMVNUM")_"</th>",!
 W "  <th>"_$$^%W1DICT("EMVADR")_"</th>",!
 W "  <th>"_$$^%W1DICT("EMVARM")_"</th>",!
 I $$EMV^W4PRM=4 D
 .W "  <th>"_$$^%W1DICT("TERMNAME")_"</th>",!
 W " </tr>",!
 W "</thead>",!
 ;
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .I $G(@$$^W4DEV@(N))="" Q
 .W " <tr>",!
 .W "  <td align=""center"">"
 .W N
 .W "  </td>"
 .
 .W "  <td>"
 . W " &nbsp;"_$G(@$$^W4DEV@(N))
 .W "  </td>"
 .
 .W "  <td>"
 . S RKV=$$H2U^%L1FRM($G(@$$^W4PLUK@(N)))
 . W " &nbsp;"_RKV
 .W "  </td>",!
 .
 .W "  <td align=""center"">"
 . W "<input type=""text"" size=""6"" id=""emvnum"_N_""" value="""_$$EMVNUM(N)_""">" 
 .W "  </td>"
 .W "  <td align=""center"">"
 . W "<input type=""text"" size=""15"" id=""emvadr"_N_""" value="""_$$EMVADR(N)_""">" 
 .W "  </td>"
 .W "  <td align=""center"">"
 . W "<input type=""checkbox"" id=""emvarm"_N_""" "_$S($$EMVARM(N):"checked=""checked"" ",1:"")_""">" 
 .W "  </td>"
 .I $$EMV^W4PRM=4 D
 ..W "  <td align=""center"">"
 .. W "<input dir=""LTR"" type=""text"" size=""20"" id=""emvterm"_N_""" value="""_$$EMVTERM(N)_""">" 
 ..W "  </td>"
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 K @$$^W4GL("W4POSEMV")
 F I=1:1:$L(PRM,";") D
 .S C=$P(PRM,";",I)
 .S POS=$P(C,"~")
 .S EMVNUM=$P(C,"~",2)
 .S EMVADR=$P(C,"~",3)
 .S EMVARM=$P(C,"~",4)
 .S EMVTERM=$P(C,"~",5)
 .I POS,EMVNUM S @$$^W4GL("W4POSEMV")@(POS)=EMVNUM_"\"_EMVADR_"\"_EMVARM_"\"_EMVTERM
 ;
 S RES=$$INIT
 Q
 ;
EMVNUM(POS) ;
 Q $P($G(@$$^W4GL("W4POSEMV")@(POS)),"\")
 ;
EMVADR(POS) ;
 N ST S ST=$P($G(@$$^W4GL("W4POSEMV")@(POS)),"\",2)
 I ST'="",ST["/",$E(ST,$L(ST))'="/" S ST=ST_"/"
 Q ST
 ;
EMVARM(POS) ;
 I $$GETP^%W1PRM("EMVARM") Q 1
 N CHK S CHK=+$P($G(@$$^W4GL("W4POSEMV")@(POS)),"\",3)
 Q CHK
 ;
EMVTERM(POS) ;
 N ST S ST=$P($G(@$$^W4GL("W4POSEMV")@(POS)),"\",4)
 Q ST
 ;
CREATE(STAM) ;
 N ST S ST=$$DIR_"SPIShell establishment --retailer="_$$EMVUSR^W4PRM
 N EMVADR S EMVADR=$$EMVADR^W4PRM
 I $$CATEST^W4PRM,EMVADR S ST=ST_" --proc-ip="_EMVADR
 ZSY ST
 Q $ZSY
 ;
INIT(STAM) ;
 I $$EMV^W4PRM<3 D INITJ(JB) Q 1
 J INITJ(JB)
 Q 1
 ;
 ;
INITJ(JB) ;
 N (JB,%ARG,%REM)
 I $$EMV^W4PRM=3 D ^W4EMVASH(JB) Q
 ;
 S GL=$$^W4GL("W4POSEMV")
 I $$DIF^%L1TIME($H,$G(@GL))<2 Q
 S @GL=$H
 S RES=""
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S NUM=$$EMVNUM(N),ADR=$$EMVADR(N)
 .I 'NUM!(ADR="") Q                                       
 .I $TR(ADR,".","")'?4N.N Q
 .I $D(M(ADR)) Q 
 .S M(ADR)=""
 .N PORT S PORT="ip-addr"
 .I ADR["/dev/" S PORT="com-port"
 .S ST=$$DIR_"SPIShell addpinpad --id="_NUM_"  --"_PORT_"="_ADR
 .ZSY ST H .5
 .S RES=RES_N_" : "_$S($ZSY:"ERROR "_$ZSY,1:"OK")_"<BR>"
 S @GL@("RES")=$ZD($H,"DD.MM.YY  24:60")_"\"_RES
 Q
 ;
 ;
DIR(STAM) ;
 Q $$EMVDIR^W4PRM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4POSGRT
W4POSGRT ; [ 23.04.26 13:44 ] [ 25.02.20 06:03 ] [ 24.05.18 12:37 ] 
 N (JB,%ARG,%REM)
 D ^%W1HD("POSGRTTABLE","",2)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;;W "<span style=""font-size:"_$$^W3FSZ_""">"
 ;; W $$^%W1DICT("POSGRTTABLE")
 ;;W "</span>",!
 ;
 W "<br><br>"
 W "<table id=""TbPosGrt"" width=""60%"" border=""1"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <th>"_$$^%W1DICT("POSNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("POSNAME")_"</th>",!
 W "  <th>"_$$^%W1DICT("KINDOFTABLE")_"</th>",!
 W " </tr>",!
 ;
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .I $G(@$$^W4DEV@(N))="" Q
 .W " <tr>",!
 .W "  <td align=""center"">"
 .W N
 .W "  </td>"
 .
 .W "  <td>"
 . W " &nbsp;"_$G(@$$^W4DEV@(N))
 .W "  </td>"
 .
 .W "  <td>"
 . S RKV=$$H2U^%L1FRM($G(@$$^W4PLUK@(N)))
 . W " &nbsp;"_RKV
 .W "  </td>",!
 .
 .W "  <td align=""center"">"
 . W "<select id=""grt"_N_""">",!
 .  W "<option value=""0"" >"_$$^%W1DICT("CHOICEKINDOFTABLE")_"</option>",!
 .  S N1=0 F  S N1=$O(@$$^W4GL("SUGS")@(N1)) Q:N1=""  D
 ..  S NMS=$G(^(N1))
 ..  W "<option value="""_N1_""" "
 ..  I N1=$G(@$$^W4GL("W4POSGRT")@(N)) W " selected=""selected"" "
 ..  W ">"_N1_" "_$$H2U^%L1FRM(NMS)_"</option>",!
 . W "</select>",!
 .W "  </td>"
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div id=""divbut"">",!
  W "<table>",!
   W "<tr>",!
    W " <td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
    W "</td>"
    W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
SUBMIT(PRM) ;
 N I,C
 K @$$^W4GL("W4POSGRT")
 F I=1:1:$L(PRM,"~") D
 .S C=$P(PRM,"~",I)
 .S POS=$P(C,";")
 .S GRT=$P(C,";",2)
 .I POS,GRT S @$$^W4GL("W4POSGRT")@(POS)=GRT
 Q
 
 
 
 
 
 
 
 
 
 

W4POSLST
W4POSLST ; [ 03.08.23 05:33 ] [ 01.01.16 15:03 ] [ 31.12.15 17:46 ] 
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" align=""center"">",!
 ;
 N MAX S MAX=130
 I '$$SUGS^W4GRPOS D
 .N A,N S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  I N<MAX D
 ..W "<tr>"
 ..W "<td style=""color:brown;font-weight:bold"">"_N_"</td> "
 ..S A=$G(@$$^W4DEV@(N,"H")),A=$P(A,"\")
 ..W "<td>"_$$H2U^%L1FRM(A)_"</td>"
 ..W "</tr>",!
 ;
 I $$SUGS^W4GRPOS D
 .N A,N S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  I N<MAX D
 ..S A=$G(^(N)),A=$P(A,"\")
 ..W "<tr>"
 ..W "<td style=""color:brown;font-weight:bold"">"_N_"</td> "
 ..W "<td>"_$$H2U^%L1FRM(A)_"</td>"
 ..W "</tr>",!
 ;
 W "</table>",!
 Q
 ;
 
 
 
 

W4POSMSK
W4POSMSK(NMB) ; [ 22.01.24 10:22 ] [ 24.12.23 16:45 ] [ 17.12.23 12:31 ] 
 N SUGS S SUGS=$$SUGS^W4L(NMB)
 I SUGS,$G(@$$^W4GL("W4POSMSK")@(SUGS)) Q 1
 Q 0
 ;
SAVE(ORD,ZMANI) ;
 N (JB,%ARG,%REM,ORD,ZMANI)
 I '$D(@$$^W4TMPORD@(1)) Q "NOITEMS"
 N GL S GL=$$GL
 N GLREF S GLREF=$$GLREF
 L +@GL:2
 I '$G(ORD) S ORD=$$GETP^%W1PRM("HZM") S:ORD'["M" ORD=0
 ;
 S NOM=+$G(ORD)
 ;
 S NMB=$$NMB^W3HZMST(JB)
 ;
 I 'NOM D
 .I '$G(ZMANI) D
 ..N LAST S LAST=$O(@GL@(9999999),-1)
 ..S NOM=LAST+1
 .
 .I $G(ZMANI),NMB>0 D
 ..S ORD=$$^W4HZFR(NMB)
 ..S NOM=$S(ORD>0:+ORD,1:$O(@GL@(9999999),-1)+1)
 ;
 K @GL@(NOM)
 M @GL@(NOM)=@$$^W4TMPORD
 S I="" F  S I=$O(@GL@(NOM,I)) Q:I=""  I I D
 .N A,QN S A=$G(^(I)),QN=$P(A,"~",5)
 .S $P(^(I),"~",5)=$J(QN,3,3)
 ;
 N H S H=$$^W4DZ
 S SUM=$$TSHL^W3HZMST(JB)
 S MKBL=$$MKBL^W3HZMST(JB)
 S @GLREF@(H,NOM)=NMB_"\"_$ZD($H,"DD.MM.YY 24:60")_"\"_SUM_"\"_MKBL 
 ;
 I $G(ZMANI) D
 .S @GL@(NOM,"ZMANI")=$H
 ;
 I '$G(ZMANI) D
 .K @GL@(NOM,"ZMANI")
 .D PRINTMSK(NOM)
 ;
 L -@GL
 D ^W4KORD(JB)
 D KILL^%W1PRM("HZM")
 Q 1
 ;
 ;
PRINTMSK(NOM) ;
 N (JB,%ARG,%REM,NOM)
 S HD=$G(@$$GL@(NOM))
 D ^W4MDPPC
 ;
 S ST="lwyn zpnfd" D PCST(ST,"BB",1)
 D PCST("")
 S ST=NOM D PCST(ST,"BB",1,1)
 D PCST("")
 S ST=$P(HD,"~",4)_" : dpnfd zwtd onf" D PCST(ST)
 S ST=$$^W4MYDVN_" dcnr 'qn" D PCST(ST)
 S MKBL=$$MKBL^W3HZMST(NOM,$$GL)
 S ST=$$^W4NAME(MKBL)_" :  dpnfd lawn" D PCST(ST)
 ;
 N GL S GL=$$GL
 D PCST("")
 D PCST($$KAV)
 D PCST("")
 S SQN=0,SSUM=0
 ;
 S N="" F  S N=$O(@GL@(NOM,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S NM=$P(A,"~",3)
 .S QN=$J($P(A,"~",5),3,3)
 .S MH=$P(A,"~",4)
 .S SUM=QN*MH
 .I QN=1 D
 ..S ST=$J(SUM,7,2)_" "_$J(NM,31) D PCST(ST)
 .I QN'=1 D
 ..S ST=NM D PCST(ST)
 ..S ST=$J(SUM,7,2)_" = "_$J(MH,7,2)_" X "_$J(QN,7)_$J("",12) D PCST(ST)
 .S SQN=SQN+$S(SUM'<0:1,1:-1)
 .S SSUM=SSUM+SUM
 ;
 D PCST("")
 D PCST($$KAV)
 D PCST("")
 S ST=$J(SSUM,6,2)_" :       k""dq" D PCST(ST,"BB")
 D PCST("")
 S ST=$J(SQN,6)_" :mihixt k""dq" D PCST(ST,"BB")
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
COPY(HZMSK)
 N (JB,%ARG,%REM,HZMSK)
 I '$G(HZMSK) Q "NOHZMSK"
 S LAST=$O(@$$^W4TMPORD@(99999),-1)
 S GL=$$GL
 S K=LAST
 S N="" F  S N=$O(@GL@(HZMSK,N)) Q:N=""  I N D
 .S K=K+1
 .S @$$^W4TMPORD@(K)=$G(@GL@(HZMSK,N))
 ;
 S @$$^W4TMPORD@("HZMSK",HZMSK)=$H
 Q 1
 ;
 ;
DELSHOW(HZMSK)
 N (JB,%ARG,%REM,HZMSK)
 I '$G(HZMSK) Q "NOHZMSK"
 S @$$GL@(HZMSK,"DEL")=$H_"\"_$$^W4MYDVN
 Q 1
 ;
PCST(TXT,PCBIG,CENTER,INV) ;
 N (JB,%ARG,%REM,TXT,PCBIG,CENTER,PRINT,%MDP,INV)
 S BIG=($G(PCBIG)["B")
 N WD S WD=$$WDPC
 I $G(BIG) S WD=WD\2
 ;
 I $G(CENTER),'$G(BIG) D  G PCST1
 .S TXT=$$SPA^%L1FRM(TXT)
 .S SM=$J("",WD-$L(TXT)\2)
 .S TXT=$J(TXT_SM,WD)
 .I $G(INV) S TXT=$G(%MDP("I"))_TXT_$G(%MDP("IE"))
 ;
 I $G(CENTER),$G(BIG) D  G PCST1
 .S TXT=$$SPA^%L1FRM(TXT)
 .S SM=$J("",WD-$L(TXT)\2)
 .S TXT=$J(TXT_SM,WD)
 .I $G(INV) S TXT=$G(%MDP("I"))_TXT_$G(%MDP("IE"))
 .S TXT=$G(%MDP(PCBIG))_TXT_$G(%MDP("N"))
 ;
 S TXT=$J(TXT,WD)
 I $G(BIG) S TXT=$G(%MDP(PCBIG))_TXT_$G(%MDP("N"))
PCST1 ;
 S SH=$O(^AA("W4POSMSK-PCST",9999),-1)+1
 ;;S ^AA("W4POSMSK-PCST",SH)=TXT
 D S1^W4HZTH
 Q
 ;
 ;
KAV()
 N ST
 S ST=$TR($J("",$$WDPC)," ","-")
 Q ST
 ;
GL() ;
 Q $$^W4GL("W4TMP")
 ;
GLREF() ;
 Q $$^W4GL("W4TMPREF")
 ;
POS(A) ;
 Q $P(A,"\")
 ;
TIME(A) ;
 Q $P(A,"\",2)
 ;
SUM(A) ;
 Q $P(A,"\",3)
 ;
OVED(A) ;
 Q $P(A,"\",4)
 ;
HZKUP(A) ; 
 Q $P(A,"\",5)
 ;
WDPC() ;
 Q 40
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4POSPRM
W4POSPRM ; [ 09.12.20 08:55 ] [ 20.01.15 04:03 ] [ 05.11.14 10:30 ] 
LINUX(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN))["[L]" Q 1
 Q 0
NOMZM(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"MZM")) Q 0
 Q 1
NOCHK(STAM) ;
 I $G(@$$^W4PRM@("NOCHK")) Q 1
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"NOCHK")) Q 1
 Q 0
NOPAY(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"HSB")) Q 0
 Q 1
NODEL(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"BIT")) Q 0
 Q 1
NOHNH(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"HNH")) Q 0
 Q 1
 ;
SCANER(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"SCANER")) Q 1
 Q 0
 ;
KUPA(STAM) ;
 N MYDVN S MYDVN=$$^W4MYDVN
 Q $$KUPA^W4PLUK(MYDVN)
 ;
MSK(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"MSK")) Q 1
 Q 0
 ;
CIBUS(STAM) ;
 Q $$^W4CIBLKH
 ;
VCARD(STAM) ;
 Q $G(@$$^W4PRM@("VCARD"))
 ;
TENBIS(STAM) ;
 Q $$^W4TBLKH
 ;
GCOUPON(STAM) ;
 Q 1
 

W4POSPRN
W4POSPRN ; [ 06.04.20 05:13 ] [ 25.02.20 06:02 ] [ 24.05.18 12:33 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<span style=""font-size:"_$$^W3FSZ_""">"
  W $$^%W1DICT("POSPRNTABLE")
 W "</span>",!
 ;
 W "<br><br>"
 W "<table id=""TbPosPrn"" width=""60%"" border=""1"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <th>"_$$^%W1DICT("POSNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("POSNAME")_"</th>",!
 W "  <th>"_$$^%W1DICT("PRINTERID")_"</th>",!
 W " </tr>",!
 ;
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .I $G(@$$^W4DEV@(N))="" Q
 .W " <tr>",!
 .W "  <td align=""center"">"
 .W N
 .W "  </td>"
 .
 .W "  <td>"
 . W " &nbsp;"_$G(@$$^W4DEV@(N))
 .W "  </td>"
 .
 .W "  <td>"
 . S RKV=$$H2U^%L1FRM($G(@$$^W4PLUK@(N)))
 . W " &nbsp;"_RKV
 .W "  </td>",!
 .
 .W "  <td align=""center"">"
 . W "<select id=""ulam"_N_""">",!
 .  W "<option value=""0"">0 "_$$^%W1DICT("CHOICEPRINTER")_"</option>",!
 .  S N1=0 F  S N1=$O(@$$^W4PRM@("MDP",N1)) Q:N1=""  D
 ..  W "<option value="""_N1_""" "
 ..  I N1=$G(@$$^W4GL("W4POSPRN")@(N)) W " selected=""selected"" "
 ..  W ">"_N1_" "_$$H2U^%L1FRM($$PRNNAME(N1))_"</option>",!
 . W "</select>",!
 .W "  </td>"
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div id=""divbut"">",!
  W "<table>",!
   W "<tr>",!
    W " <td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
    W "</td>"
    W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
PRNNAME(PRN) ;
 Q $P($G(@$$^W4PRM@("MDP",PRN)),"\",4)
 ;
SUBMIT(PRM) ;
 N I,C
 K @$$^W4GL("W4POSPRN")
 F I=1:1:$L(PRM,"~") D
 .S C=$P(PRM,"~",I)
 .S POS=$P(C,";")
 .S PRN=$P(C,";",2)
 .I POS'="",PRN'="" S @$$^W4GL("W4POSPRN")@(POS)=PRN
 Q
 
 
 
 
 
 

W4POSULM
W4POSULM ; [ 20.04.26 13:31 ] [ 27.07.22 10:33 ] [ 25.02.20 06:02 ] 
 N (JB,%ARG,%REM)
 D ^%W1HD("POSULMTABLE","",2)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;;W "<span style=""font-size:"_$$^W3FSZ_""">"
 ;; W $$^%W1DICT("POSULMTABLE")
 ;;W "</span>",!
 ;
 W "<br><br>"
 W "<table id=""TbPosUlm"" width="""_$S($$^W4TABLET=2:90,1:60)_"%"" border=""1"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <th>"_$$^%W1DICT("POSNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("POSNAME")_"</th>",!
 W "  <th>"_$$^%W1DICT("ULAM")_"</th>",!
 W " </tr>",!
 ;
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .I $G(@$$^W4DEV@(N))="" Q
 .W " <tr>",!
 .W "  <td align=""center"">"
 .W N
 .W "  </td>"
 .
 .W "  <td>"
 . W " &nbsp;"_$G(@$$^W4DEV@(N))
 .W "  </td>"
 .
 .W "  <td>"
 . S RKV=$$H2U^%L1FRM($G(@$$^W4PLUK@(N)))
 . W " &nbsp;"_RKV
 .W "  </td>",!
 .
 .W "  <td align=""center"">"
 . W "<select id=""ulam"_N_""">",!
 .  W "<option value=""0"">0 "_$$^%W1DICT("ALLULAMS")_"</option>",!
 .  S N1=0 F  S N1=$O(@$$^W4GL("W4ULAM")@(N1)) Q:N1=""  D
 ..  W "<option value="""_N1_""" "
 ..  I N1=$G(@$$^W4GL("W4POSULM")@(N)) W " selected=""selected"" "
 ..  W ">"_N1_" "_$$H2U^%L1FRM($$ULAMNAME(N1))_"</option>",!
 . W "</select>",!
 .W "  </td>"
 .W " </tr>",!
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div id=""divbut"">",!
  W "<table>",!
   W "<tr>",!
    W " <td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
    W "</td>"
    W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
ULAMNAME(ULAM) ;
 Q $P($G(@$$^W4GL("W4ULAM")@(ULAM)),";",6)
 ;
SUBMIT(PRM) ;
 N I,C
 K @$$^W4GL("W4POSULM")
 F I=1:1:$L(PRM,"~") D
 .S C=$P(PRM,"~",I)
 .S POS=$P(C,";")
 .S ULAM=$P(C,";",2)
 .I POS'="",ULAM'="" S @$$^W4GL("W4POSULM")@(POS)=ULAM
 Q
 
 
 
 
 
 
 

W4PPG
W4PPG(DUMP) ;   [ 24.11.08 15:07 ] [ 10.11.08 16:54 ] [ 25.08.08 15:05 ]
 I $E($G(@$$^W4SG("START")),1,7)=2520890 Q 1 ; TA
 I $E($G(@$$^W4SG("START")),1,7)=2520348 Q 2 ; HAIFA
 I $E($G(@$$^W4SG("START")),1,7)=2520400 Q 3 ; TA 2
 I $E($G(@$$^W4SG("START")),1,7)=2520757 Q 4 ; TA 2
 I $E($G(@$$^W4SG("START")),1,7)=2520891 Q 5 ; AZRIELI
 I $E($G(@$$^W4SG("START")),1,7)=2520941 Q 6 ; ARENA
 Q 0

W4PRATE
W4PRATE ; [ 08.10.21 07:25 ] [ 09.10.18 12:33 ] [ 17.03.13 13:14 ] 
 ;--- INPUT - MEDAT,ADDAT
 ;
 ;           ASONLY = 1 (KOLEL HAZMANOT , 2 -HESB & LAK BILVAD )
 ;           PRATI - ONE CUSTOMER ONLY
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK^W4DCASH Q
 ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""50%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D FRM
 D PC
 Q
 ;
FRM ;
 S PRTN=$$^%W1JB
 S DAT1=$$^%L1DC(%ARG("MEDAT"),2)
 S DAT2=$$^%L1DC(%ARG("ADDAT"),2)
 ;
 N JB S JB=$E(PRTN,3,20)
 S DT1=$$^%L1DC(DAT1,4)
 S DT2=$$^%L1DC(DAT2,4)
 ;
 D KLFKP
 D TEMPL
 D ^%W1PCVRM K @VRM
 ;
 S SHS=0,FIN=0
 S SUMH=0,SUMZ=0 K STRINGP
 ;
 K @TEMPL
 ;
 S SUMH=0,SUMZ=0,SHZ=0,ITRA=0,SMAM=0,SMAML=0,SMAMS=0
 S NNN="" F  S NNN=$O(@$$^W4GL("KLF")@(NNN)) Q:NNN=""  I NNN'="PC" S STRING=NNN D
 .S DAT0=$$^%L1DC(DAT1,"2-1")
 .S DAT=$$CR^W4DTL(DAT0)
 .F  S DAT=$O(@KLFKP@(DAT)) Q:DAT=""  S DT=$$DT^W4DTL(DAT) I DT'<DT1,DT'>DT2 D
 ..S DOC="" F  S DOC=$O(@KLFKP@(DAT,DOC)) Q:DOC=""  D
 ...;
 ...I DOC'="H",DOC'="TZ" Q
 ...;
 ...S NUMBER="" F  S NUMBER=$O(@KLFKP@(DAT,DOC,NUMBER)) Q:NUMBER=""  D  I $D(M) D SETST(DAT,STRING,.M)
 ....K M
 ....S STR=$G(^(NUMBER))
 ....S M("ZHUT")=$P(STR,"\",1)
 ....S M("HOVA")=$P(STR,"\",2)
 ....I +M("HOVA")=+M("ZHUT"),DOC'="H",DOC'="TZ" K M Q
 ....S M("SUMH")=$S(M("HOVA"):M("HOVA"),M("ZHUT"):M("ZHUT"),1:$P(STR,"\",3))
 ....S M("TRH")=$$^%L1DC(DAT,1)
 ....S M("SUGTD")=$S(DOC="H":$$SUGHB(NUMBER),DOC="TZ":$$SUGHBZ(NUMBER),1:"")
 ....S M("NOMTD")=$P(NUMBER,"-",1,2)
 ....I DOC="H",M("SUMH") S M("HOVA")=$J(M("SUMH"),2,2)
 ....I DOC="TZ",M("SUMH") S M("HOVA")=$J(-M("SUMH"),2,2)
 ....S M("ZHUT")=""
 ....D ^W4HSBGET(NUMBER,DOC)
 ....S SMAM=SMAM+$G(W4HSB("MAM"))
 ....S SMAML=SMAML+$G(W4HSB("MAM"))
 ...Q
 ..Q
 .Q
 ;
 S W4INP=$$^W4GL("W4INP")
 ;
 F VD="IHB","IHBZ" D
 .S SPK="" F  S SPK=$O(@W4INP@(SPK)) Q:SPK=""  D
 ..S NOMTD="" F  S NOMTD=$O(@W4INP@(SPK,VD,NOMTD)) Q:NOMTD=""  D
 ...N M
 ...D ^W4HSBGET(NOMTD,VD,SPK)
 ...I $G(W4HSB("DT"))<DT1!($G(W4HSB("DT"))>DT2) Q
 ...S M("SUMH")=$G(W4HSB("TOT"))
 ...;;I VD="IHBZ" S M("SUMH")=-W4HSB("TOT")
 ...S M("ZHUT")=M("SUMH")
 ...S M("SUGTD")=$S(VD="IHB":15,1:16)
 ...S M("NOMTD")=NOMTD
 ...D SETST(W4HSB("DT"),SPK,.M)
 ...S SMAM=SMAM-$G(W4HSB("MAM"))
 ...S SMAMS=SMAMS+$G(W4HSB("MAM"))
 ;
 Q
 ;
PC ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=33,SHLN=0,SSHLN=0
 ;
 D KOT
 ;
 S (SHOV,SZHUT,ITRA)=0
 F DT=DT1:1:DT2 D
 .S ORG="" F  S ORG=$O(@VRM@(DT,ORG)) Q:ORG=""  D
 ..S SUGTD="" F  S SUGTD=$O(@VRM@(DT,ORG,SUGTD)) Q:SUGTD=""  D
 ...S NOMTD="" F  S NOMTD=$O(@VRM@(DT,ORG,SUGTD,NOMTD)) Q:NOMTD=""  D
 ....N A S A=$G(^(NOMTD)) Q:A=""
 ....S SHLN=SHLN+1,SSHLN=SSHLN+1
 ....I SHLN>RSIZE D PAGEBREAK
 ....S PRM=ORG_"n"_SUGTD_"n"_NOMTD
 ....W "<tr onClick=""OnClickTr('"_PRM_"')"""
 ....W " style=""cursor:pointer"
 ....W """"
 ....W " >"
 ....W " <td align=""center"">"_$$^%L1DC(DT,1)_"</td>"
 ....W " <td style=""color:"_$$COLOR(SUGTD)_""">&nbsp;"
 .... W $$H2U^%L1FRM($$NAMEDOC(SUGTD))
 ....W "</td>"
 ....W "<td style=""color:"_$$COLOR(SUGTD)_""">"_$$NAMEORG(ORG,SUGTD)_"</td>"
 ....W "<td "
 ....W " style=""color:"_$$COLOR(SUGTD)
 ....I PRM=$$GET^%W1PRM("DLKPCUR") W ";border:solid 2px brown"
 ....W """ >&nbsp;"_NOMTD_"</td>"
 ....S SUMH=$P(A,"\") I SUGTD=6!(SUGTD=7) S SUMH=-SUMH
 ....;;D RKV(SUMH,$S(SUGTD=6!(SUGTD=7):"red",1:""),$S(SUGTD=0:1,1:"")) ;- SHUM BE TEUDA
 ....S HOV=$P(A,"\",2)
 ....D RKV(HOV,"darkblue") S SHOV=SHOV+HOV
 ....S ZHUT=$P(A,"\",3)
 ....D RKV(ZHUT,"darkred") S SZHUT=SZHUT+ZHUT
 ....S ITRA=ITRA+HOV-ZHUT
 ....D RKV(ITRA,"black")
 ....W "</tr>",!
 ;
 ;---------------------- ITOGO -------
 W "<tr style=""background-color:yellow;font-weight:bold"">"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>"_$$^%W1DICT("TOTAL")_"</td>"
 D RKV(SHOV,"darkblue",1)
 D RKV(SZHUT,"darkred",1)
 D RKV(ITRA,"black",1)
 W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>&nbsp;</td>"
 W " <td>"_$$^%W1DICT("TAX")_"</td>"
 D RKV(SMAML,"darkblue",1)
 D RKV(SMAMS,"darkred",1)
 I SMAM>0 D
 .D RKV(SMAM,"black",1)
 I SMAM'>0 D
 .W " <td>&nbsp;</td>"
 W "</tr>",!
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')",!
 .W " Back()",!
 .W "</script>",!
 ;
 W "</table>",!
 W "</div>",!
 ;K @VRM
 Q
 ;
TEMPL S TEMPL=$$^W4MAIN("TEMPL")
 Q
KLFKP S KLFKP=$$^W4GL("KLF")_"(STRING,""KP"")"
 Q
 ;
 ;
HB(STRING,DATKP) ;
 N OK,NUMBER,DOC S OK=0
 F  S DATKP=$O(@KLFKP@(DATKP)) Q:DATKP=""  D  Q:OK
 .S DOC="" F  S DOC=$O(@KLFKP@(DATKP,DOC)) Q:DOC=""  D  Q:OK
 ..S NUMBER="" F  S NUMBER=$O(@KLFKP@(DATKP,DOC,NUMBER)) Q:NUMBER=""  D  Q:$D(OK)
 ...I DOC="H",$D(@$$^W4GL("P1LHB")@(STRING,NUMBER)) S OK=1 Q
 Q OK
 ;
SETST(DAT,STRING,M) ;
 N DT I DAT?10N.N S DT=$$DT^W4DTL(DAT)
 I DAT?5N S DT=DAT
 N IND1,IND2,IND3
 S IND2=$G(M("SUGTD")) I IND2="" S IND2="-"
 S IND3=$G(M("NOMTD")) I IND3="" S IND3="-"
 S @VRM@(DT,STRING,IND2,IND3)=$G(M("SUMH"))_"\"_$G(M("HOVA"))_"\"_$G(M("ZHUT"))
 Q
 ;
NOLKHR(LKH) ;
 I $G(@$$^W4GL("P1EZL")@(LKH)) Q 1
 Q 0
 ;
NAMEDOC(SUGTD) ;
 N SUGTD1
 S SUGTD1=""
 I SUGTD=2 Q $$^%W1DICT("INVOICE2CUST")
 I SUGTD=4 Q $$^%W1DICT("INVOICE2CUST")
 I SUGTD=5 Q $$^%W1DICT("INVOICE2CUST")
 I SUGTD=6 Q $$^%W1DICT("DEBINVOICE2CUST")
 I SUGTD=7  Q $$^%W1DICT("DEBINVOICE2CUST")
 I SUGTD=15  Q $$^%W1DICT("SUPPLINVOICE")
 I SUGTD=16  Q $$^%W1DICT("SUPPLDEBINVOICE")
 I SUGTD=17  Q $$^%W1DICT("PAYMENT")
 Q SUGTD1
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT
 S SHLN=0
 Q
 ;
KOT ;
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""" width=""80%"">"
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("MEDAT"))_"</td>",!
 W "  <td >"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("ADDAT"))_"</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""80%"">"
 W " <tr style=""font-size:"_$$^W3FSZ(11)_""">"
 W "  <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("PAGE")_" : "_PG_"</td>",!
 W " </tr>",!
 W "</table>",!
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" width=""80%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("DATE")_"</th>"
 W "  <th>"_$$^%W1DICT("KINDOFDOCUMENT")_"</th>"
 W "  <th>"_$$^%W1DICT("ORGANIZATION")_"</th>"
 W "  <th>"_$$^%W1DICT("NUMBEROFDOC")_"</th>"
 ;;W "  <th>"_$$^%W1DICT("SUMOFDOC")_"</th>"
 W "  <th>"_$$^%W1DICT("INCOME")_"</th>"
 W "  <th>"_$$^%W1DICT("RATE")_"</th>"
 W "  <th>"_$$^%W1DICT("PROFIT")_"</th>"
 W " </tr>",!
 Q
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 I RKV S RKV=$J(RKV,2,2)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
SUGHB(NOM) ;
 N LK
 S LK=$G(@$$^W4GL("KLIN")@("H",NOM))
 I LK["+" Q 2
 I LK["W" Q 5
 Q 4
 ;
SUGHBZ(NOM) ;
 N LK
 S LK=$G(@$$^W4GL("KLIN")@("TZ",NOM))
 I LK["W" Q 7
 Q 6
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
NAMEORG(ORG,SUGTD) ;
 N ORG1
 I $G(SUGT)<15 S ORG1=$$H2U^%L1FRM($$LKH^W4L(ORG))
 I $G(SUGT)>14 S ORG1=$$H2U^%L1FRM($$NAME^W4SPK(ORG))
 Q ORG_" "_ORG1
 ;
COLOR(SUGTD) ;
 I '$G(SUGTD) Q "black"
 I SUGTD=6!(SUGTD=7)!(SUGTD=16) Q "red"
 I SUGTD=15 Q "darkred"
 Q "black"
 
 
 

W4PREPNT
W4PREPNT ; [ 16.01.25 18:38 ] [ 08.01.25 10:38 ] [ 09.06.24 13:33 ] 
 N (JB,%ARG,%REM,MSDR,DT,DAT,VRM)
BG ;
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S DAT=$ZD(DT,"DD.MM.YY")
 S TOT=0,QND=0
 ;
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  I $G(^(MSD)) D
 .D GET^W4MZVM(MSD,DT)
 .N TM1 S TM1=$P(TIMEPREP,"^",3)
 .S MTM(+TM1,MSD)=""
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT("TIMEAVRGPREP",DAT)
  W "</span>",!
  W "<br>"
  W "<span style=""font-size:"_$$^W3FSZ(11)_""" >"
   W $$^%W1DICT("SHOWTIME",$ZD($H,"DD.MM.YY")_"<>"_$ZD($H,"24:60"))
  W "</span>",!
 W "<br><br>",!
 ;
 ;D SORT
 ;W "<p></p>",!
 ;
 W " <table border=""1"" cellpadding=""5"" cellspacing=""0"" >"
 W "<tr>"
  W "<th>"_$$^%W1DICT("SNIF")_"</th>"
  W "<th>"_$$^%W1DICT("SNIFNAME")_"</th>"
  W "<th>"_$$^%W1DICT("TIMEAVRGPREP")_"</th>"
  W "<th>"_$$^%W1DICT("NETPLACE")_"</th>"
 W "</tr>",!
 ;
 S K=0
 ;
 S N="" F  S N=$O(MTM(N)) Q:N=""  D
 .S MSD="" F  S MSD=$O(MTM(N,MSD)) Q:MSD=""  D
 ..W "<tr ",!
 .. I 'N W "style=""background-color:pink"" " 
 ..W ">"
 .. S NAME=$$H2U^%L1FRM($$MSD^W3R(MSD))
 .. I N S K=K+1
 .. W "<td >"_MSD_"</td>"
 .. W "<td >"_NAME_"</td>"
 .. W "<td >"_$J(N,2,2)_"</td>"
 .. W "<td >"_$S(K:K,1:"&nbsp;")_"</td>"
 .. W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 I $G(%ARG("USR")) W $$NBSP^%L1FRM(5) D BACK Q
 ;
 W "</div>",!
 Q
 ;
 ;
TRSP ;
 W "<tr>"
  W "<td>&nbsp;</td><td>&nbsp;</td>"
 W "</tr>",!
 Q
 ;
 ;
INIT ;
 D PUT^%W1PRM("SMALL",1)
 I $G(%ARG("NOSMALL")) D PUT^%W1PRM("SMALL",0)
 D ^W4BGBODY
 I $G(%ARG("SIMUL"))'="" D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 Q
 ;
CV ; 
 ;rgba(255, 0, 0,;
 ;rgba(0, 0, 255,;
 ;rgba(0, 255, 0,;
 ;rgba(255, 255, 0,;
 ;rgba(0, 255, 255,;
 ;rgba(255, 0, 255,;
 ;rgba(255, 106, 0,;
 ;rgba(47, 106, 0,;
 ;rgba(128, 128, 128,;
 ;rgba(192, 192, 192,;
 ;rgba(0, 0, 0,;
 Q  ;
 ;
VRM ; 
 S VRM=$$^W4MAIN("VRM")
 Q 
 ;
SORT ; 
 W $$^%W1DICT("SORT")_"&nbsp;"
 W "<select id=""sort"" onChange=""Sort()"" >",! 
  W "<option value=""1"" "_$$SELECTED(1)_">"_$$^%W1DICT("SNIF")_"</option>",!
  W "<option value=""2"" "_$$SELECTED(2)_">"_$$^%W1DICT("SNIFNAME")_"</option>",!
  W "<option value=""3"" "_$$SELECTED(3)_">"_$$^%W1DICT("TIMEAVRGPREP")_"</option>",!
  W "<option value=""4"" "_$$SELECTED(4)_">"_$$^%W1DICT("NETPLACE")_"</option>",!
 W "</select>",!
 Q 
 ;
SELECTED(SORT) ; 
 I SORT=1,$G(%ARG("SORT"))<2 Q "selected=""selected"" " 
 I SORT>1,$G(%ARG("SORT"))=SORT Q "selected=""selected"" " 
 Q ""
 ;
US(MSD) ;
 N OK S OK=1
 I $D(MMSD)>9,$G(MSD),'$D(MMSD(MSD)) S OK=0
 Q OK 
 ;
BACK ; 
 D ^W4BTN("BACK","parent.location.reload()","red")
 Q
 ;
PAPJ(MSDR) ; 
 I MSDR=10222 Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRESEK
W4PRESEK(STAM) ; [ 05.09.24 12:21 ] [ 05.02.19 10:26 ] [ 04.02.19 16:07 ] 
 N (JB,%ARG,%REM)
 S KOT="<div align=\""center\"" >"
 D GET^W4ESEK
 ;
 I $$LOGO^W4KOTHSB,'$G(@$$^W4PRM@("NOPCLOGO")) D
 .S KOT=KOT_"<img src='"_$$FUNC^%LCASE($G(@$$^W4PL@("LOGO")))_"' "
 .I $G(@$$^W4PL@("LOGO","HEIGHT")) S KOT=KOT_" height=\"""_^("HEIGHT")_"\"" "
 .I $G(@$$^W4PL@("LOGO","WIDTH")) S KOT=KOT_" width=\"""_^("WIDTH")_"\"" "
 .S KOT=KOT_"/>"
 ;
 I '$$NOHD^W4PRM D
 .S KOT=KOT_"<table align='center' "
 .I '$$LOGO^W4KOTHSB D
 ..S KOT=KOT_" class='hdvw1' style='background-color:white;color:black'>"
 ..S KOT=KOT_"<tr><td style='font-size:"_$$^W3FSZ(18)_";text-align:center'>"
 ..S KOT=KOT_NAME_"</td></tr>"
 .I $$LOGO^W4KOTHSB S KOT=KOT_">"
 .S KOT=KOT_"<tr style='font-size:"_$$^W3FSZ(10)_"'>"
 .S KOT=KOT_"<td>"_$$^%W1DICT("BUSINESSID")_" "_MURSH
 .S KOT=KOT_$$SPC(6)_KTOV_$$SPC(6)
 .S KOT=KOT_$$^%W1DICT("TEL")_" "_TEL
 .S KOT=KOT_"</td></tr></table>"
 ;
 S KOT=KOT_"</div>"
 Q KOT
 ;
SPC(I) ;
 N J,A S A=""
 F J=1:1:I S A=A_"&nbsp;"
 Q A
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRHL
W4PRHL(%REPN) ; [ 08.06.26 16:34 ] [ 02.06.22 14:19 ] [ 06.03.22 16:35 ] 
 N (JB,%ARG,%REM,%REPN)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN("HZSCR")=HZSCR
 S %REPN("MISHL")=MISHL
 I $D(SHL) S %REPN("SHL")=SHL
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4PRHL"
 D PUT^%W1PRM("HRFREP","w4prhl.jsp?JB="_JB_"&REPN="_%REPN)
 Q
 ;
 ;
TRH
 S PRASR=$$GET^%W1PRM("PRASR")
 D ^%W1PCVRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 D KF K @KF
 N KF1
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 D
 .;;W !,$ZD(DT,"DD.MM.YY"),! ; ***
 .F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM)) D
 ..I $$^W4HZMH(HZM) Q
 ..I $$I^W4PIZUL(HZM) Q
 ..
 ..S OK=1 D SETLK(HZM) Q:OK'=1
 ..;;W !?5,"HZM="_HZM ; ***
 ..S TS=$$TSHL^W4HZMST(HZM)
 ..S KF1=1,SUM=0
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 ...S SUM=SUM+$P($G(^(N)),"\",7) 
 ..I TS S KF1=$J(TS/SUM,5,5)
 ..
 ..N I S I="" F  S I=$O(@$$^W4ORD@(HZM,I)) Q:I=""  I I D
 ...;;W !?10,I ; ***
 ...N PARIT,CAMP,STP,STT
 ...S STP=^(I),PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5),SUM=$P(STP,"\",7)
 ...S STP1=$G(^(I+1))
 ...S HN=0 I $$^W4AHP(STP1) S HN=SUM*$$AH^W4AHP(STP1)*.01
 ...Q:$E(PARIT)=":"
 ...D CR1(HZM,DT,STP)
 ...
 ...N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ....;;W !?15,"N="_N ; ***
 ....N COL S COL=+$P(STT,"\",3)
 ....I $D(@$$^W4ORD@(HZM,I,N))<10 D  Q
 .....D CR2(HZM,DT,N,COL,COL*$P(STT,"\",2),$P(STT,"\"))
 ....N N2 S N2="" F  S N2=$O(@$$^W4ORD@(HZM,I,N,N2)) Q:N2=""  S STT2=$G(^(N2)) D
 .....N CD2 S CD2=$P(STT2,"\")
 .....N MHT2,NMT2
 .....S MHT2=$P(STT2,"\",7)
 .....S COL2=$P(STT2,"\",3)
 .....S NMT2=$P(STT2,"\",2)
 .....I CD2 D CR2(HZM,DT,CD2,COL2,COL2*MHT2,NMT2) Q
 .....S CD2=$P(STT2,"\",4)
 .....S NMT2=$P(STT2,"\",5)
 .....I CD2 D CR2(HZM,DT,CD2,COL2,COL2*MHT2,NMT2) Q
 ;
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
CR1(HZM,DT,A) ;
 N B,PAR S PAR=$P(A,"\"),PAR1=$P(A,"\",3) Q:PAR=""
 N COL S COL=$P(A,"\",5)
 I $G(MEPAR),PAR<MEPAR Q
 I $G(ADPAR),PAR>ADPAR Q
 ;
 N LKHN S LKHN="" F  S LKHN=$O(@KF@(HZM,LKHN)) Q:LKHN=""  D
 .N SUGL S SUGL=$$SUGL^W4L(LKHN)
 .I $G(MESUGL),SUGL<MESUGL Q
 .I $G(ADSUGL),SUGL>ADSUGL Q
 .
 .S COL=$J(COL*@KF@(HZM,LKHN),1,1)
 .N SUM S SUM=$J(($P(A,"\",7)-$P(A,"\",6))*@KF@(HZM,LKHN),2,2)*KF1
 .N HN1 S HN1=$J(HN*@KF@(HZM,LKHN),2,2)
 .D PRI
 .N LKHR S LKHR=$G(@$$^W4GL("P1EZL")@(LKHN))
 .N LKH
 .S LKH=LKHN
 .I LKHR,$$PRMAIN S LKH=LKHR
 .I $G(MELKHN),LKH<MELKHN Q
 .I $G(ADLKHN),LKH>ADLKHN Q
 .D PRI
 .S B=$G(@VRM@(SUGL,LKH,DT,HZM,PAR))
 .S @VRM@(SUGL,LKH,DT,HZM,PAR)=$P(B,"*")+COL_"*"_($P(B,"*",2)+SUM)_"*"_PAR1_"*"_($P(B,"*",4)+HN1)
 Q
 ;
 ;
CR2(HZM,DT,PAR,C,S,PAR1) ;
 I $G(S) S S=S*KF1
 I $G(MEPAR),PAR<MEPAR Q
 I $G(ADPAR),PAR>ADPAR Q
 ;
 N LKHN S LKHN="" F  S LKHN=$O(@KF@(HZM,LKHN)) Q:LKHN=""  D
 .N SUGL S SUGL=$$SUGL^W4L(LKHN)
 .I $G(MESUGL),SUGL<MESUGL Q
 .I $G(ADSUGL),SUGL>ADSUGL Q
 .S COL=$J(C*$G(@KF@(HZM,LKHN)),3,3)
 .N LKHR S LKHR=$G(@$$^W4GL("P1EZL")@(LKHN))
 .N LKH S LKH=LKHN
 .I LKHR,$$PRMAIN S LKH=LKHR
 .I $G(MELKHN),LKH<MELKHN Q
 .I $G(ADLKHN),LKH>ADLKHN Q
 .D PRI
 .N B S B=$G(@VRM@(SUGL,LKH,DT,HZM,PAR))
 .S @VRM@(SUGL,LKH,DT,HZM,PAR)=$P(B,"*")+COL_"*"_($P(B,"*",2)+S)_"*"_PAR1
 Q
 ;
 ;
PRI N I F I="SUGL","LKH","DT","HZM","PAR" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
 ;
SETLK(HZM) ;
 N TS
 S TS=$$TSHL^W4HZMST(HZM)
 S OK=1
 N L,MLK,LK
 S LKHN=$$LKHN^W4HZMST(HZM) I 'LKHN,'$D(@$$^W4ORD@(HZM,"CB","ASR")) S OK=0 Q
 I $G(PRASR),'$D(@$$^W4ORD@(HZM,"CB","ASR")) S OK=0 Q
 ; 
 I $D(@$$^W4ORD@(HZM,"CB","ASR")) D  Q
 .S L="" F  S L=$O(@$$^W4ORD@(HZM,"CB","ASR",L)) Q:L=""  I L D
 ..S LK=$P($G(@$$^W4ORD@(HZM,"CB","ASR",L)),"*") Q:LK=""
 ..S MLK(LK)=$G(MLK(LK))+$P($G(^(L)),"*",4)
 .
 .I '$G(PRASR) D
 ..S LK=$$LKHN^W4HZMST(HZM) Q:'LK
 ..S MLK(LK)=$G(MLK(LK))+$$SHUL^W4HZMST(HZM)-$$TIP^W4HZMST(HZM)
 .
 .I TS S LK="" F  S LK=$O(MLK(LK)) Q:LK=""  S @KF@(HZM,LK)=MLK(LK)/TS
 ;
 S LKHN=$$LKHN^W4HZMST(HZM) I 'LKHN S OK=0 Q
 S @KF@(HZM,LKHN)=1
 Q
 ;
 ;
PAR S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 I $G(PAROTH) S x3=x1*$$MH^W4P(PAR) G PAR1
 S x3=$P($G(@GLOB),"*",4)
 S x4=x2-x3
PAR1 S PAR1=$$SHEM^W4P(PAR)
 Q
 ;
KF ;
 S KF=$$^W4MAIN("TMPKF")
 Q
 ;
INIT ; 
 D ^%W1ARG
 S %REPN=$G(%ARG("REPN")) D ^W3CSS,INIT^%W1PC
 D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D KILL^%W1PRM("REPDAYS"),KILL^%W1PRM("PRASR"),KILL^%W1PRM("PRMAIN")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 D:$G(%ARG("PRASR"))?1N PUT^%W1PRM("PRASR",%ARG("PRASR"))
 D:$G(%ARG("PRMAIN"))?1N PUT^%W1PRM("PRMAIN",%ARG("PRMAIN"))
 Q 
 ;
PRMAIN() 
 Q +$$GETP^%W1PRM("PRMAIN") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRHZ
W4PRHZ(%REPN) ; [ 12.01.25 08:51 ] [ 31.12.24 12:48 ] [ 09.01.24 12:12 ] 
 N (JB,%ARG,%REM,%REPN)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 Q:$G(%REPN)=""
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN("HZSCR")=HZSCR
 S %REPN("MISHL")=MISHL
 I $D(SHL) S %REPN("SHL")=SHL
 I %REPN="PROT" S %REPN("PAROTH")=1
 S %REPN("TRH","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLREP@("MIUN","PROG")="TRH^W4PRHZ"
 D PUT^%W1PRM("HRFREP","w4prhz.jsp?JB="_JB_"&REPN="_%REPN)
 Q
 ;
TRH
 D ^%W1PCVRM K @VRM
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 ;
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 D
 .F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM)) D
 ..D CRPAR(HZM)
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
CR1(A) ;
 N B,PAR S PAR=$P(A,"\"),PAR1=$P(A,"\",3) D PRI
 S B=$G(@VRM@(DT,SHAA,HZM,PAR))
 S @VRM@(DT,SHAA,HZM,PAR)=$P(B,"*")+$P(A,"\",5)_"*"_($P(B,"*",2)+$P(A,"\",7)-$P(A,"\",6))_"*"_PAR1_"*"_($P(B,"*",4)+HN)
 Q
 ;
CR2(PAR,C,S,PAR1,HNT) ;
 D PRI
 N B S B=$G(@VRM@(DT,SHAA,HZM,PAR))
 S @VRM@(DT,SHAA,HZM,PAR)=$P(B,"*")+C_"*"_($P(B,"*",2)+S)_"*"_PAR1_"*"_HNT
 Q
 ;
PRI N I F I="DT","SHAA","HZM","PAR" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
HZM ;
 N SHAA
 S %SCRN=HZSCR D GA^W4SCREF(HZSCR,$$^W4ORD_"("_HZM_")")
 I $$^W4MSL(NMB) D
 .S SHAA=$P(SHAA,":",1,2)
 ;
 I $$^W4MSD(NMB) D
 .S SHAA=$P(ZMANK,"  ",2)
 .S TRH=DATK
 ;
 I SHAA="" S SHAA="-"
 ;
 S SHAA1=SHAA I $$^W4SHAAZ,SHAA1<$$SHAAZ^W4PRM S SHAA1=SHAA+24
 I SHAA1<MESHAA1!(SHAA1'<ADSHAA1) S OK=0 Q
 S SHAA1=+SHAA_"-"_(SHAA+1)
 Q
 ;
 ;
PAR ;
 I $G(MEPAR)=0,$G(ADPAR)=0,PAR'=0 S OK=0 Q
 I $G(MEPAR),PAR<MEPAR S OK=0 Q
 I $G(ADPAR),PAR>ADPAR S OK=0 Q
 S SUGP=$$SUG^W4P(PAR)
 I $G(MESUGP),SUGP<MESUGP S OK=0 Q
 I $G(ADSUGP),SUGP>ADSUGP S OK=0 Q
 S SUGP1=$$SUG1^W4P(PAR)
 ;
 S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 I $G(PAROTH) S x3=x1*$$MH^W4P(PAR) G PAR1
 S x3=$P($G(@GLOB),"*",4)
 S x4=x2-x3
PAR1 S PAR1=$$SHEM^W4P(PAR)
 Q
 ;
INIT ;
 D ^%W1ARG
 S %REPN=$G(%ARG("REPN"))
 D ^W3CSS,INIT^%W1PC
 D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 I $$GETP^%W1PRM("REPBACK")="" D PUT^%W1PRM("REPBACK","w4dp.jsp?JB="+$G(JB))
 Q
 ;
 ;
CRPAR(HZM) ;
 I $$I^W4PIZUL(HZM) Q  ; -- 06/03/23
 I $$DEL^W4DEL(HZM) Q
 I $$^W4HZMH(HZM),'$G(%ARG("BIDS")) Q
 ;
 S OK=1 D HZM Q:OK'=1
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .N PARIT,CAMP,STP,STT,AH
 .S STP=^(I),PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5),SUM=$P(STP,"\",7)
 .S STP1=$G(^(I+1))
 .S HN=0,AH=0 I $$^W4AHP(STP1) S AH=$$AH^W4AHP(STP1),HN=SUM*AH*.01
 .I $G(PAROTH),'$$^W4OTH($P(STP,"\",8)) Q
 .Q:$E(PARIT)=":"  I PARIT'<MEPAR,PARIT'>ADPAR D CR1(STP)
 .
 .I '$G(PAROTH) N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ..I $D(^(N))<10 D  Q
 ...I N<MEPAR!(N>ADPAR) Q
 ...N COLT S COLT=+$P(STT,"\",3)
 ...N MHT S MHT=+$P(STT,"\",2)
 ...N NMT S NMT=$P(STT,"\")
 ...N SUMT S SUMT=COLT*MHT,HNT=SUMT*AH*.01
 ...D CR2(N,COLT,SUMT,NMT,HNT)
 ..
 ..N N2 S N2="" F  S N2=$O(@$$^W4ORD@(HZM,I,N,N2)) Q:N2=""  S STT=$G(^(N2)) D
 ...N CDT S CDT=$P(STT,"\")
 ...I CDT D  Q
 ....I CDT<MEPAR!(CDT>ADPAR) Q
 ....N COLT S COLT=+$P(STT,"\",3)
 ....N MHT S MHT=+$P(STT,"\",7)
 ....N NMT S NMT=$P(STT,"\",2)
 ....N SUMT S SUMT=COLT*MHT,HNT=SUMT*AH*.01
 ....D CR2(CDT,COLT,SUMT,NMT,HNT)
 ...
 ...S CDT=$P(STT,"\",4)
 ...I CDT<MEPAR!(CDT>ADPAR) Q
 ...N COLT S COLT=+$P(STT,"\",3)
 ...N MHT S MHT=+$P(STT,"\",7)
 ...N NMT S NMT=$P(STT,"\",5)
 ...N SUMT S SUMT=COLT*MHT,HNT=SUMT*AH*.01
 ...D CR2(CDT,COLT,SUMT,NMT,HNT)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRM
W4PRM(STAM) ; [ 08.09.26 18:00 ] [ 05.08.26 13:12 ] [ 10.06.26 07:12 ] 
 Q $$^W4GL("P1PRM")
 ;
MLY(STAM) ;
 Q $G(@$$^W4GL("PLUK"))["MLY"
 ;
NEWMLY(STAM) ;
 Q $$NEWMLY^W3PRM
 ;
MLYHUZ(STAM) ;--- MLY YASHAN AL MAHSHEV NIFRAD [0]
 Q +$G(@$$W4PRM@("MLYHUZ"))
 ;
MLYADR(STAM) ; --- MLY YASHAN IP [0]
 Q $G(@$$W4PRM@("MLYADR"))
 ;
MLYMRK(STAM) ;----MERKAZ MLY YASHAN [0]
 Q $G(@$$W4PRM@("MLYMRK"))
 ;
NEWMENU()
 I $$MMCC Q 0
 I $$^W4TABLET=2 Q 0
 I $$GETP^%W1PRM("PRSNLMENU") Q 0
 I $$GETP^%W1PRM("PRSNLSET") Q 0
 I '$$GETP^%W1PRM("W4BO") Q 0
 I $G(%ARG("NEWMENU"))=0 Q 0
 Q $G(@$$W4PRM@("NEWMENU"),1)
 ;
ONEGLPAR() ;
 Q $$ONEGLPAR^W3PRM
 ;
MSD(STAM) ; --- AVODA IM MISSADA [W4PRMADM]
 Q +$G(@$$W4PRM@("MSD"))
 ;
MSL(STAM) ; --- AVODA IM MISHLOHIM [W4PRMADM]
 Q +$G(@$$W4PRM@("MSL"))
 ;
MSLHUZ(STAM) ;-- ??? LO BE SHIMUSH
 Q (+$G(@$$W4PRM@("MSL"))=2)
 ;
SDMSL(STAM) ; -- LEHASHEV MISPAR SOADIM BE MISHLOHIM BE DOHOT =1 IM EIN SOADIM [W4PRMMSL]
 I $$MSLSD Q 1
 Q +$G(@$$W4PRM@("SDMSL"))
 ;
TAW(STAM) ; --- MAAREHET TAW [W4PRMADM]
 Q +$G(@$$W4PRM@("MTAW"))
 ;
TAWMSLH(STAM) ; -- % SKIDKI NA TAW [W4PRMMSL]
 Q +$G(@$$W4PRM@("TAWMSLH"))
 ;
DLYPRN(STAM)
 N SM S SM=$G(@$$W4PRM@("DLYPRN"))
 I 'SM,$P(SM,"\",2) Q +$P(SM,"\",2)
 Q +SM
 ;
MAM(STAM) ; --- [W4PRMGN]
 Q +$G(@$$W4PRM@("MAM"))
 ;
LKHN(STAM) ; ??? - LO BE SHIMUSH
 Q +$G(@$$W4PRM@("LKHN"))
 ;
MSDT(STAM) ;-- MISSADA OR TAW
 I $$CALLCENTER Q 0
 I $$MM Q 0
 I $$MMCC!$G(%ARG("MMCC")) Q 0
 I $$MSD!$$TAW!$$SUPER^W3PRM Q 1
 Q 0
 ;
NOTSFMVC(STAM) ; -- AHUZ ANAHA HAPPY HOUR LO PAILA LE TOSAFOT [W4PRMGN]
 Q '$G(@$$W4PRM@("TSFMVC"))
 ;
TSFBHNH(STAM) ; -- IM TOSAFOT LE PARIT LELO ANAHA GAM LELO ANAHA [W4PRMGN]
 Q $G(@$$W4PRM@("TSFBHNH"))
 ;
DISCPRC(STAM) ; -- LEHORID % ANAHA MI MAHIR [W4MVCHR]
 Q $G(@$$W4PRM@("MHSHAA"))
 ;
REALTIME(STAM) ; -- ANAHA LEFI SHAOT LEFI ZMAN REALI ( LO - LEFI ZMAN KABALAT AZMANA )
 Q $G(@$$W4PRM@("HNHTIM")) ; -- [W4MVCHR]
 ;
NEWAI(STAM) ;
 Q 1
 ;
AIN(CD)
 I ($$UR^W4MENU>2)&$$^W4EZAT(CD) Q 1
 Q 0
 ;
NOCHKAI(STAM) ; -- IM LIVDOK BHIRAT MANOT ME COL A-KVUZOT [W4PRMGN]
 Q $G(@$$^W4PRM@("NOCHKAI"))
 ;
MUSTTZ(STAM) ; -- IM LEMALE MISP TZ BE CARTIS LAK HOVA [W4PRMGN]
 Q $G(@$$^W4PRM@("MUSTTZ"))
 ;
TIPMZM(STAM) ; --- LISHOL TIPIM BE TASHLUM BE MEZUMAN [W4PRMMSD]
 Q +$G(@$$^W4PRM@("TIPMZM"))
 ;
DMSHMSD(STAM) ; -- IM LAKAHAT DMEY SHERUT MI AZMANOT MISSADA [W4PRMMSD]
 Q $G(@$$^W4PRM@("DMSHMSD"))
 ;
SCANER(STAM) ;
 I $$GRITVW Q 0
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"SCANER")) Q 1
 Q 0
 ;
MSK(STAM) ; --- IM YESH MISHKAL BE KUPA
 I '$G(@$$^W4GL("PLUK")@($$^W4MYDVN,"MSK")) Q 0
 I '$L($G(@$$^W4GL("PLUK")@($$^W4MYDVN,"MSKPORT"))) Q 0
 Q 1
 ;
MSK2(STAM) ; --- IM YESH MISHKAL BE KUPA
 Q +$G(@$$W4PRM@("MSK2"))
 ;
CATOLD(STAM) ;
 Q 0
 Q +$G(@$$^W4PRM@("CATOLD"))
 ;
ACNTAW(STAM) ; -- AIM LEAFSHER HAFAKAT HESBON I HAAVARAT SHULHAN ME SHULHAN MAHIR
 ; -------------- [W4PRMMSD]
 Q +$G(@$$W4PRM@("ACNTAW"))
 ;
MAXHMK(STAM) ;
 Q 0
 Q +$G(@$$W4PRM@("MAXHMK"))*(100+$$MAM)*.01
 ;
SHAONMGR(STAM) ; --- SHIMUSH SHAON NOCHEHUT RAK BE OPZIYA SHEL MENAEL [W4LEVIN]
 Q +$G(@$$W4PRM@("SHAONMGR"))
 ;
SHAAZ(STAM) ; -- BE EIZE SHAA LEHAFIK Z AUTOMATI [W4PRMGN]
 N PRM
 S PRM=$G(@$$W4PRM@("SHAAZ"),6)
 I PRM?.P!(PRM=0) S PRM=6
 Q PRM
 ;
INPCODE(STAM) ; --- EFSHARUT LEHAKLID KOD PARIT LEMATA LE HIPUS [W4PRMGN]
 ;;I $$^W4TABLET,'$$SF^W4PRM Q 0  ; -- 22/04/21 LEV -> COMMENT
 I $G(@$$W4PRM@("INPCODE"))="" Q 1
 Q +$G(@$$W4PRM@("INPCODE"))
 ;
MAXPOS(STAM) ; --- MISPAR EMDOT MAXIMALI [W4PRMADM]
 Q +$G(@$$W4PRM@("MAXPOS"))
 ;
MAXMDP(STAM) ; --- MISPAR MADPESOT MAXIMALI [W4PRMADM]
 Q +$G(@$$W4PRM@("MAXMDP"))
 ;
NOHD(STAM) ; -- MISPAR SHUROT REKOT SHE YESH LEHASHIR BE KOTERET LE DAF IM LOGO
 ; ------------[W4LKHMGR] - ? 
 Q +$G(@$$W4PRM@("NOHD"))
 ;
NOTIPCA(STAM) ; 1 - LO LEKABEL TIP ME CA, .5 - LEKABEL IM SISMA [W4PRMMSD]
 Q +$G(@$$W4PRM@("NOTIPCA"))
 ;
NOTIPALL(STAM) ; 1 - LO LEKABEL TIPIM
 I $$^W6 Q 1
 I $$SUPER^W3PRM Q 1
 I $$^W4TIPCBU Q 0
 Q +$G(@$$W4PRM@("NOTIPALL"))
 ;
MINMH(STAM) ; -- MAHIR MINIMUM LE HAZMANA ( SHULHAN RAGIL ) [W4PRMMSD]
 Q +$G(@$$W4PRM@("MINMH"))
 ;
MINMHB(STAM) ; -- MAHIR MINIMALI LE SHULHAN BAR [W4PRMMSD]
 Q +$G(@$$W4PRM@("MINMHB"))
 ;
QAI1(STAM) ;-- MISP AR ISK-T = 1 [W4PRMGN]
 Q +$G(@$$W4PRM@("QAI1"))
 ;
MLZBGPAR(STAM) ; -- =1 - LESHAYEH PRITIM LE MELZAR SHE PATAH AZMANA [W4PRMMSD]
 Q +$G(@$$W4PRM@("MLZBGPAR"))
 ;
PRINTDET(STAM) ; -- HADPASAT HESHBONIT BE ZURA MEFURETET [W4PRMPC]
 Q +$G(@$$W4PRM@("PRINTDET"))
 ;
MAXTIP(STAM) ;  HAGBALAT GODEL TIP [W4PRMMSD]
 Q $G(@$$W4PRM@("MAXTIP"))
 ;
NODOUBLE(STAM) ; --- LO LIVDOK 2 KARTISIM ZEHIM IM SHUM ZEHE BE TASHLUM [W4PRMGN]
 Q +$G(@$$W4PRM@("NODOUBLE"))
 ;
ULAM(STAM) ; HAZAGAT SHULHANOT BE ZURA SHEL ZIYUR ULAM [W4PRMHZG]
 Q +$G(@$$W4PRM@("ULAM"))
 ;
CLOSEBACK(STAM) ; -- IM LISGOR MASAH TASHLUMIM OTOMATI AHR 5 SEC IM YESH ODEF
 ; ----------------- W4PRMGN
 Q +$G(@$$W4PRM@("CLSBACK"))
 ;
MAILZ(STAM) ; - IM LISHLOAH DOCH SGR YOM LE MAIL [W4PRMADM]
 Q +$G(@$$W4PRM@("MAILZ"))
 ;
SHEML(STAM) ; - IM LISHLOAH LE MITBAH SHEM BE LOAZIT [W4PRMPC]
 I '$$NOPCLOAZ S @$$W4PRM@("SHEML")=1
 Q +$G(@$$W4PRM@("SHEML"))
 ;
SEFAHNM(STAM) ; -- IM LEADPIS SHEM HA-MAZMIN BE SHULHAN MAHIR [W4PRMPC]
 I $$SUPER^W3PRM Q 0
 Q +$G(@$$W4PRM@("SEFAHNM"))
 ;
JUMPTBL(STAM) ; -- EFSHARUT LAAVOR MI HESHBON LE HESHBON ( SUPER )
 Q +$G(@$$W4PRM@("JUMPTBL",$$^W4MYDVN))
 ;
MSF(STAM) ; -- EFSHARUT AVODA IM MASEFONIM KTANIM [W4PRMADM]
 Q +$G(@$$W4PRM@("MSF"))
 ;
COLXMLZ(STAM) ; --- KOL STOLBZOV V MASEFONE NA MASAHE MELZARIM [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLXMLZ"))
 I 'A S A=3
 Q A
 ;
COLYMLZ(STAM) ; --- KOL SHUROT V MASEFONE NA MASAHE MELZARIM [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLYMLZ"))
 I 'A S A=5
 Q A
 ;
COLXSH(STAM) ; --- KOL STOLBZOV V MASEFONE NA MASAHE SHULHANOT [W4PRMMSF]
 N A
 S A=+$G(@$$W4PRM@("MSF","COLXSH"))
 I 'A S A=4
 Q A
 ;
COLYSH(STAM) ; --- KOL SHUROT V MASEFONE NA MASAHE MELZARIM [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLYSH"))
 I 'A S A=5
 Q A
 ;
COLXPRT(STAM) ; --- KOL STOLBZOV MASAHE PRITIM [W4PRMHZG]
 N A S A=+$G(@$$W4PRM@("COLXIT"))
 Q A
 ;
COLYPRT(STAM) ; --- KOL SHUROT NA MASAHE MELZARIM [W4PRMHZG]
 N A S A=+$G(@$$W4PRM@("COLYIT"))
 Q A
 ;
COLXPRTMSF(STAM) ; -- KOL STOLBZOV V MASEFONE NA MASAHE PRITIM [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLXPRT"))
 I 'A S A=4
 Q A
 ;
COLYPRTMSF(STAM) ; -- KOL SHUROT V MASEFONE NA MASAHE MELZARIM [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLYPRT"))
 I 'A S A=5
 Q A
 ;
COLXADD(STAM) ; -- KOL STOLBZOV V MASEFONE NA MASAHE TOSAFOT [W4PRMMSF]
 N A
 S A=+$G(@$$W4PRM@("MSF","COLXADD"))
 I 'A S A=2
 Q A
 ;
COLYADD(STAM) ; -- KOL SHUROT V MASEFONE NA MASAHE TOSAFOT [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLYADD"))
 I 'A S A=5
 Q A
 ;
COLXGR(STAM) ; -- KOL STOLBZOV NA MASAHE KVUZOT [W4PRMHZG]
 N A S A=+$G(@$$W4PRM@("COLXGR"))
 Q A
 ;
COLYGR(STAM) ; -- KOL SHUROT NA MASAHE KVUZOT [W4PRMHZG]
 N A S A=+$G(@$$W4PRM@("COLYGR"))
 Q A
 ;
COLXGRMSF(STAM) ; -- KOL STOLBZOV V MASEFONE NA MASAHE KVUZOT [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLXGR"))
 I 'A S A=4
 Q A
 ;
COLYGRMSF(STAM) ; -- KOL SHUROT V MASEFONE NA MASAHE KVUZOT [W4PRMMSF]
 N A S A=+$G(@$$W4PRM@("MSF","COLYGR"))
 I 'A S A=6
 Q A
 ;
MSLMHMIN(STAM) ; MAHIR MINIMUM SHEL MISHLOAH [W4PRMMSL]
 Q +$G(@$$W4PRM@("MSLMHMIN"))
 ;
NOPSWZERO(STAM) ; -- LO LISHOL SISMA LE PARIT 0 [W4PRMGN]
 Q +$G(@$$W4PRM@("NOPSW0"))
 ;
NOPSWSD0(STAM) ; -- LO LISHOL SISMA LE MISP SOAD 0 [W4PRMGN]
 Q +$G(@$$W4PRM@("NOPSWSD0"))
 ;
NOSG(STAM) ;-- IM EFSHAR LEHAMSHIH AVODA IM YOM KODEM LO SAGUR [W4PRMADM]
 Q +$G(@$$W4PRM@("NOSG"))
 ;
CALLCENTER(STAM) ;
 I $G(%ARG("CALLCENTER")) Q %ARG("CALLCENTER")
 I $$GETP^%W1PRM("CALLCENTER")'="" Q $$GETP^%W1PRM("CALLCENTER")
 Q +$G(@$$W4PRM@("CALLCENTER"))
 ;
TELEPHONE(STAM) ; -- CALL CENTER KMO BE YASHKA
 Q (+$$CALLCENTER=.5)
 ;
CCWEBR(STAM) ; -- CALL CENTER KMO BE ZAHI
 Q (+$$CALLCENTER=.6)
 ;
MM(STAM) ;
 Q +$G(^[$$^W3MAIN]P1PRM("MM"))
 Q (+$$CALLCENTER=1)
 ;
MMOUT(STAM)
 Q ($$MM=2)
 ;
MMCC(STAM) ;
 Q $$TELEPHONE&$$GETP^%W1PRM("MMCC")
 ;
MSDR(STAM) ; --- KVUZAT MISSADOT [0] -- CALLCENTER ?
 I $$MM Q +$G(^[$$^W3MAIN]P1PRM("MSDR"))
 I $$GETP^%W1PRM("MSDR") Q $$GETP^%W1PRM("MSDR")
 Q +$G(@$$W4PRM@("MSDR"))
 ;
HZGSHALL(STAM) ; -- MA LEHAZIG BE ZURA TAVLAIT SHEL HA-ULAM [W4PRMHZG]
 Q +$G(@$$W4PRM@("HZGSHALL"))
 ;
OLDMVC11(STAM) ; -- KVAR LO BE SHIMUSH
 Q +$G(@$$W4PRM@("OLDMVC11"))
 ;
Z24(STAM) ; -- IM MISSADA OVEDET 24 SHAOT [W4PRMADM]
 Q +$G(@$$W4PRM@("Z24"))
 ;
PSWREM(STAM) ; -- SISMA LE CNISA ME RAHOK [W4PRMADM]
 Q $G(@$$W4PRM@("PSWREM"))
 ;
PSWALL(STAM) ; -- SISMA KLALIT 
 Q $G(@$$W4PRM@("SISALL"))
 ;
RESTORAN(STAM) ; -- IM KAYAM MEMSHAK LE RESTORAN [W4PRMADM]
 Q $G(@$$W4PRM@("RESTORAN"))
 ;
PSWDRG(STAM) ; -- IM LIKVOA LE COL MENAHEL SISMA MISHELO [W4PRMGN]
 Q +$G(@$$W4PRM@("PSWDRG"))
 ;
DRGMNL(STAM) ; -- MISPAR DARGA LE MENAEL ( DFLT=2 )
 N DRG S DRG=+$G(@$$W4PRM@("DRGMNL"))
 I DRG<2 S DRG=2
 Q DRG
 ;
BGPSW(STAM) ; -- KAMA SIFROT KIDOMET YESH BE KARTIS MENAHEL [W4PRMGN]
 Q +$G(@$$W4PRM@("BGPSW"))
 ;
RNDOWN(STAM) ; -- LEAGEL TAMID LEMATA [W4PRMGN]
 Q +$G(@$$W4PRM@("RNDOWN"))
 ;
NOPCHBCD(STAM) ; -- LEHAZIG COD PARIT BE W4ORDVW [W4PRMPC]
 Q +$G(@$$W4PRM@("NOPCHBCD"))
 ;
NOKFLMVC(STAM) ; -- EIN KEFEL MIVCAIM [W4PRMGN] 
 Q +$G(@$$W4PRM@("NOKFLMVC"))
 ;
GCOUPASR(STAM) ; -- EIH LEMAMESH TLUSH MATANA ( 1 - DEREH AKAFA , 2 - DEREH TLUSH MATANA )
 ; ---------------- [ W4PRMMSD ]
 Q +$G(@$$W4PRM@("GCOUPASR"))
 ;
GCOUPC(STAM) ; -- IM MISPUR PNIMI SHEL TLUSHEY MATANA HU OTOMATI [W4PRMTLM]
 Q +$G(@$$W4PRM@("GCOUPC"))
 ;
TOAICD(STAM) ; -- COD PARIT LE SHIUH PARIT BODED LE ISKIT [W4PRMGN]
 Q $G(@$$W4PRM@("TOAICD"))
 ;
MYCHECK(STAM) ; -- IM YESH MAAREHET MYCHECK [W4PRMADM]
 Q $G(@$$W4PRM@("MYCH"))
 ;
NOFREECAUSE(STAM) ; - EFSHARUT LEHAKLID TEXT HOFSHI BE SIBAT BITUL/HANAHA [W4PRMGN]
 Q $G(@$$W4PRM@("NOFRECAU"))
 ;
FNDDOP(STAM) ; --- SHEELOT NOSAFOT PRI POISKE AZMANY [W4PRMGN]
 Q $G(@$$W4PRM@("FNDDOP"))
 ;
MSDBAR(STAM) ; --- MISSADA-BAR [W4MSDADM]
 Q $G(@$$W4PRM@("MSDBAR"))
 ;
SNDOUT(STAM) ; HAAVARAT NETUNIM LE MARKETMAN [W4PRMADM]
 Q $G(@$$W4PRM@("SNDOUT"))
 ;
OLDPC(STAM) ; --- EISE FONT LE OTIOT GDOLOT [W4PRMPC]
 ;;Q $G(@$$W4PRM@("OLDPC"))
 I $G(@$$W4PRM@("BIGFONT"))>0,$G(@$$W4PRM@("BIGFONT"))<3 Q 0
 Q 1
 ;
SLAU(STAM) ; -- AVTOMAT SOZDANIE SHALIAHA PRI SOZD NOVOGO RABOTNIKA 
 ; ------------ ESLI KVUZA [ "gily"
 Q $G(@$$^W4PRM@("SLAU"))
 ;
DELDEL(STAM) ; -- EFSHARUT LEVATEL AZMANA MEVUTELET [W4PRMGN]
 Q $G(@$$^W4PRM@("DELDEL"))
 ;
TAWMSD(STAM) ; -- IM LEAZIG MHIROT TAW KE NETUN NIFRAD BE DOCH CASPI [W4PRMD]
 I $$TAW Q 1
 Q $G(@$$^W4PRM@("TAWMSD"))
 ;
VCNOPC(STAM) ; IM LEHADPIS TLUSHIM SHEL VALIOCARD [W4PRMPC]
 Q $G(@$$^W4PRM@("VCNOPC"))
 ;
GLISTALL(STAM) ; -- LIVDOK SHE IM BOHRIM COL ASOADIM KAMUT PARIT=KULAM [W4PRMMSD]
 Q $G(@$$^W4PRM@("GLISTALL"))
 ;
DELDISCNOASKDLPK(STAM) ; -- LO LISHOL SHEELOT BE BITUL OR ANAHA BE DELPAK [0]
 Q $G(@$$^W4PRM@("DELDISCNOASKDLPK"))
 ;
BSL(STAM) ;-- BISNES LOGIC [W4PRMADM]
 Q $G(@$$^W4PRM@("BSL"))
 ;
BSNOPCHB(STAM) ; -- LEADPIS TLUSHEY HESHBON LE B-L [W4PRMPC]
 Q $G(@$$^W4PRM@("BSNOPCHB"))
 ;
MP(STAM) ; ---- MULTYPASS [W4PRMADM]
 Q $G(@$$^W4PRM@("MP"))
 ;
WASPSW(STAM) ; --- LO LISHOL SISMA PAAM 2 BE AZMANA [W4PRMGN]
 Q $G(@$$^W4PRM@("WASPSW"))
 ;
COUPPH(STAM) ; -- COUPONPHON [W4COUPPH]
 Q $G(@$$^W4PRM@("COUPPH"))
 ;
TAWDLV(STAM) ; -- KOL MISHLOHIM - TAW [W4PRMMSL]
 Q $G(@$$^W4PRM@("TAWDLV"))
 ;
PCMV(STAM) ; LO BE SHIMUSH ?
 Q $G(@$$^W4PRM@("HZMHV"))
 ;
MOTH(STAM) ; -- EFSHARUT LATET HANAHA OTH LE KAMA PRITIM BO ZMANI [W4PRMGN]
 Q +$G(@$$^W4PRM@("MOTH"))
 ;
MAILBIT(STAM) ; -- EFSHARUT LESHADER BITULIM & ANAHOT LE MAIL [W4PRMADM]
 Q +$G(@$$^W4PRM@("MAILBIT"))
 ;
NOMYDETS(STAM) ; --IM LEHADPIS PRATEY ESEK [W4PRMPC]  ( LO ZARIH IM YESH BE LOGO )
 Q +$G(@$$^W4PRM@("NOMYDETS"))
 ;
NOLHBAFTAX(STAM) ; -- NE POKAZ V STROKAH HESHBONIT SUM KOLEL MAM [W4PRMPC]
 Q +$G(@$$^W4PRM@("NOLHBAFTAX"))
 ;
HSBENG(STAM) ; -- EFSHARUT LEHADPIS HESHBON BE ANGLIT  [W4PRMPC] 
 Q +$G(@$$^W4PRM@("HSBENG"))
 ;
HSBHBR(STAM) ; EFSHARUT LEHADPIS HESHBON BE IVRIT V ANGL VERSII  [W4PRMPC] 
 Q +$G(@$$^W4PRM@("HSBHBR"))
 ;
MANA(STAM) ; MIUN ADPASA ( 1 - LEFI SED AKLDA , 2 - LEFI MISP MANA , 0 - LEFI CODIM )
 ; -- [W4PRMPC]
 N MANA S MANA=+$G(@$$^W4PRM@("MANA"))
 Q MANA
 ;
MANAM(STAM) ; MIUN ADPASA MISHL ( 1 - LEFI SED AKLDA , 2 - LEFI MISP MANA , 0 - LEFI CODIM )
 ; -- [W4PRMPC]
 N MANA S MANA=+$G(@$$^W4PRM@("MANAM"))
 Q MANA
 ;
CDHNHMP(STAM)  ; -- COD PARIT ANAHA KLALI - MULTIPASS [WMSETUP]
 Q $G(@$$^W4PRM@("CDHNHMP"))
 ;
CDHNHMPP(STAM)  ; -- COD PARIT ANAHA LE PRITIM - MULTIPASS [WMSETUP]
 Q $G(@$$^W4PRM@("CDHNHMPP"))
 ;
DEFISLK(STAM)  ; -- LEASHER COD LAKUAH IM "-" [0]
 Q $G(@$$^W4PRM@("DEFISLK"))
 ;
ROUND(STAM) ; -- IM LEAGEL TASHLUMIM AD SHEKEL [W4PRMGN]
 Q $G(@$$^W4PRM@("ROUND"))
 ;
AUTOFAX(STAM) ; -- POSYLAT HAZMANU AVTOMATOM NA FAX (W4MM) [0]
 Q $G(@$$^W4PRM@("AUTOFAX"))
 ;
MEUHAD(STAM) ; -- OSEK MURSHE MEUHAD [W4PRMPC]
 Q $G(@$$^W4PRM@("MEUHAD"))
 ;
SHIHVA(STAM) ; -- EFSHARUT SHIHVA TAHTONA BE ZIUR ULAM [0] W4PRMHZG ?
 Q $G(@$$^W4PRM@("SHIHVA"))
 ;
GCOUPIT(STAM) ; -- COD PARIT LE MHIRAT TL MATANA [W4PRMTLM]
 Q $G(@$$^W4PRM@("GCOUPIT"))
 ;
GCOUPPY(STAM) ; -- COD PARIT LE MIMUSH TL MATANA [W4PRMTLM]
 Q $G(@$$^W4PRM@("GCOUPPY"))
 ;
TLBIT(STAM) ;
 I $$SUPER^W3PRM Q 0
 Q +$G(@$$^W4PRM@("TLBIT"))
 ;
TLHNH(STAM) ;
 I $$SUPER^W3PRM Q 0
 Q +$G(@$$^W4PRM@("TLHNH"))
 ;
SGDEP(STAM) ;  IM LEADPIS DOH MAHLAKOT V SG YOM
 Q $G(@$$^W4PRM@("DOCHP"))=2
 ; 
SGKVZ(STAM) ;  IM LEADPIS DOH MAHLAKOT V SG YOM
 Q $G(@$$^W4PRM@("DOCHP"))=3
 ; 
OPENADD(STAM) ; -- LEHAZIG BE AZMANA TOSAFOT BE ZURA GLUYA [W4PRMHZG]
 Q +$G(@$$^W4PRM@("OPENADD"))
 ; 
AUTOGR(STAM) ; -- AVTOMAT PODBOR RAZMERA TABL KVUZOT CHTOBY VHODILO NA 1 EKRAN V ZAKAZE
 ; -- [W4PRMHZG]
 Q +$G(@$$^W4PRM@("AUTOGR"))
 ; 
AUTOIT(STAM) ;  -- AVTOMAT PODBOR RAZMERA TABL PRITIM CHTOBY VHODILO NA 1 EKRAN V ZAKAZE
 Q +$G(@$$^W4PRM@("AUTOIT"))
 ; 
ONEGR(STAM) ; -- LEDALEG BHIRAT KVUZOT & LAAVOR YASHAR LE PRITIM [0] - LO OVED !
 Q +$G(@$$^W4PRM@("ONEGR"))
 ; 
HZGDEP(STAM) ; -- LEHAZIG MAHLAKOT BHAZAGAT TAFRIT KVUZOT [W4PRMHZG]
 Q +$G(@$$^W4PRM@("HZGDEP"))
 ;
NOROMA(STAM) ; -- IM LEADPIS SIFROT ROMIOT BE PARIT IP KV. TOSAFOT [W4PRMPC]
 Q +$G(@$$^W4PRM@("NOROMA"))
 ;
ABCENG(STAM) ;-- IM LEHAZIG MIKLEDET VIRT. BE ANGLIT [W4PRMHZG]
 Q +$G(@$$^W4PRM@("ABCENG"))
 ;
NOHZGPRC(STAM) ; -- LO LEHAZIG MAHIR BE TAFRIT PRITIM BE AZMANA [W4PRMHZG]
 Q +$G(@$$^W4PRM@("NOHZGPRC"))
 ;
PTHDLY(STAM) ; IM LAASOT DELAY AHAREY PTIH MEGIRA [W4PRMPC]
 Q +$G(@$$^W4PRM@("PTHDLY"))
 ;
MSLSD(STAM) ; -- IM LISHOL MISPAR SOADIM BE KABALAT MISHLOAH [W4PRMMSL]
 I $$SDSAK Q 1
 Q +$G(@$$^W4PRM@("MSLSD"))
 ;
MAXMSLSD(STAM) ; -- MISP MAZMINIM MIRABI [W4PRMMSL]
 Q +$G(@$$^W4PRM@("MAXMSLSD"))
 ;
SDSAK(STAM) ; -- IM LISHOL MISPAR SOADIM BE KABALAT MISHLOAH [W4PRMMSL]
 Q +$G(@$$^W4PRM@("SDSAK"))
 ;
LKKLALI(STAM) ; -- MISP LAK INTERNETI SHE HIGIA LELO TEL [W4PRMMSL]
 Q $G(@$$^W4PRM@("LKKLALI"))
 ;
SNDDLVKTC(STAM) ;--- SHIDUR LE MITBAH YADANI [W4PRMMSL]
 Q $G(@$$^W4PRM@("SNDDLKTC"))
 ;
HB2EMAIL(STAM) ;--- MAKOR HESB TO MAIL [W4PRMAIL]
 Q $G(@$$^W4PRM@("HB2EMAIL"))
 ;
ASKWAITERNUMBER(STAM) ; -- IM LIVHOR MELZAR LEFI KOD VE LO MI RESHIMA [W4PRMHZG]
 Q +$G(@$$^W4PRM@("ASKWTR"))
 ;
NOPART(STAM) ; -- LO LEAFSHER OPZIA "HESBON HELKI" [W4PRMMSD]
 Q +$G(@$$^W4PRM@("NOPART"))
 ;
CRCARDFIRST(STAM) ; -- IM LEHAZIG TASHLUM BE C-A RISHON BE MASAH TASHL [W4PRMHZG]
 Q +$G(@$$^W4PRM@("CRCARD1"))
 ;
SMS2BAAL(STAM) ; LE EISE TEL LISHLOAH HODAA LE BAAL SHE HIGIA AZM MI INET [0]
 Q $TR($G(@$$^W4PRM@("SMS2BAAL")),"- .,","")
 ;
ITRA(STAM) ; -- IM LEHADPIS ITRAT LAKUAH BE HESB [W4PRMPC]
 Q +$G(@$$^W4PRM@("ITRA"))
 ;
DESERTCD(STAM) ; -- COD PARIT "DESERT" FOR "RESTORAN [W4PRMMSD]
 Q $G(@$$^W4PRM@("DESERT"))
 ;
CHECKERCD(STAM) ; -- MISP PARIT "HEARA LE CHECKER" [W4PRMMSD]
 Q $G(@$$^W4PRM@("CDCHKER"))
 ;
SF(STAM) ;  -- SF
 Q $G(@$$^W4PRM@("SF"))
 ;
ROLI(STAM) ;  -- SF
 Q $G(@$$^W4PRM@("ROLI"))
 ;
DELIS(STAM) ; -- DELIS
 Q $G(@$$^W4PRM@("DELIS"))
 ;
AMOR(STAM) ; -- AMORA MIA
 Q $G(@$$^W4PRM@("AMOR"))
 ;
MAAD(STAM) ; -- MAADANIYA
 Q $G(@$$^W4PRM@("MAAD"))
 ;
TAIMAN(STAM) ; -- MAADANIYA
 Q $G(@$$^W4PRM@("TAIMAN"))
 ;
NOTSFMSD(STAM) ; -- LO LEHAZIG TOSAFOT BE AVODA IM TAFR MISSADA [W4PRMMSD]
 Q $G(@$$^W4PRM@("NOTSFMSD"))
 ;
ACNMSL(STAM) ; -- EFSHARUT LEHADPIS HESBON BE MISHLOHIM [W4PRMMSL]
 Q $G(@$$^W4PRM@("ACNMSL"))
 ;
MDPMSL(STAM) ; -- MISP MADPESET LE MESHALEAH (w4mdpmsl.jsp)
 Q $$SPA^%L1FRM($G(@$$^W4PRM@("MDPMSL")))
 ;
ZBIG(STAM) ; -- LEHADPIS Z LE MADPESET GDOLA [W4PRMD]
 Q +$G(@$$^W4PRM@("ZBIG"))
 ;
NOVWDEL(STAM) ; -- LO LEHAZIG SHUROT SHE BUTLU BE AZMANA [W4PRMHZG]
 Q +$G(@$$^W4PRM@("NOVWDEL"))
 ;
MAILCONT(STAM) ; -- LO BE SHIMUSH ?
 Q +$G(@$$^W4PRM@("MAILCONT"))
 ;
NOVWMANA(STAM) ; -- IM LEHAZIG AMUD MISP MANA BE KOTERET AZMANA [0] W4PRMHZG ?
 I $$TAW!$$SUPER^W3PRM Q 1
 Q +$G(@$$^W4PRM@("NOVWMANA"))
 ;
SNBC(STAM) ; -- AVODA IM MADPESOT SNBC [W4PRMADM]
 Q +$G(@$$^W4PRM@("SNBC"))
 ;
NOCBET(STAM) ; -- LO LEHADPIS ETEK LE KABALA [0] W4PRMPC ?
 Q +$G(@$$^W4PRM@("NOCBET"))
 ;
NOPCCB(STAM) ; -- IM LEHADPIS KABALA [W4PRMPC]
 Q +$G(@$$^W4PRM@("NOPCCB"))
 ;
NOPCCBHB(STAM) ; -- IM LEHADPIS SEFAH LE KABALA IM RESHIMAT HESBONIOT [W4PRMPC]
 Q +$G(@$$^W4PRM@("NOPCCBHB"))
 ;
NOASKDEL(STAM) ; -- LO LISHOL ISHUR AL BITUL SHURA SHE LO HUDPESA
 Q +$G(@$$^W4PRM@("NOASKDEL"))
 ;
NORFRDEL(STAM) ; -- BLI REFRESH MASAH BE BITUL SHURA SHE LO HUDPESA
 Q '$G(@$$^W4PRM@("RFRDEL"))
 ;
NODLVORD(STAM) ; -- KOL HAZMANA BE MISHLOHIM BEHATHALA HI HAZAAT MAHIR
 ; -- MISHTAMSHIM IM YESH HAZMANOT ATIDIOT
 ; -- HOVA LEAGDIR COD PARIT - HAZAAT MAHIR [W4PRMADM]
 I '$$HZMH^W3PRM Q 0
 Q +$G(@$$^W4PRM@("NODLVORD"))
 ;
DLVMOUSE(STAM) ;
 Q +$G(@$$^W4PRM@("DLVMOUSE"))
 Q
 ;
CSRMOUSE()
 Q ($$DLVMOUSE=2)
 ;
OLDORD(STAM) 
 I $$^W4AIN Q 0
 I $$^W4DLVNPR(JB)!$$MM!$$DLVWEB^W4DLVCSR Q 1
 Q 0
 ;
CMNT2CUS(STAM) ; 
 Q +$G(@$$^W4PRM@("COMMENT2CUSTOM"))
 ;
NOSVSHOW(STAM) ; 
 Q +$G(@$$^W4PRM@("NOSVSHOW"))
 ;
ADSHAA(STAM) ; 
 Q +$G(@$$^W4PRM@("ADSHAA"))
 ;
PLUSTIME(STAM) ; -- DOBAVKA VREMENI V MISHLOHIM ( ADSHAA )
 Q +$G(@$$^W4PRM@("PLUSTIME"))
 ;
LMAM(STAM) ; --- VOZMO-T POKAZAYVATM VAHIR LELO MAM
 ;;I '$$NODLVORD Q 0
 Q +$G(@$$^W4PRM@("LMAM"))
 ;
BOCUST(STAM) ; -- LEHAZIG CARTIS LAKUAH V VERHU MENU
 Q +$G(@$$^W4PRM@("BOCUST"))
 ;
NOMHTM(STAM) ; --- TM LEHADPIS LELO MAHIRIN ( BRERAT MICHDAL )
 Q +$G(@$$^W4PRM@("NOMHTM"))
 ;
HBNOWBIG(STAM) ;--- HESB MIYADIT LEHADPIS LE MADP GDOLA
 Q +$G(@$$^W4PRM@("HBNOWBIG"))
 ;
SGDLVASR(STAM) ;-- LO LISGOR HAZMANT MISHLOAH IM MESHALMIM BE HAKAFA
 Q +$G(@$$^W4PRM@("SGDLVASR"))
 ;
NOBDNOCHMNL(STAM) ; -- MENAHEL TAMID NOCHEAH
 Q +$G(@$$^W4PRM@("NOBDMNL"))
 ;
NOW2EMAIL(STAM) ; -- HESB-T MIYADIT TO MAIL BE ZMAN SHIGUR
 Q +$G(@$$^W4PRM@("NOW2EMAIL"))
 ;
PRNLOCAL(STAM) ; -- LEHADPIS HAETEK AZMANA NA LOC MADP ( LO BESHIMUS )
 Q +$G(@$$^W4PRM@("PRNLOCAL"))
 ;
NOCHKPSW(STAM) ;  -- LO LIVDOK SISMAOT
 Q +$G(@$$^W4PRM@("NOCHKPSW"))
 ;
TMASR(STAM)
 Q +$G(@$$^W4PRM@("TMASR"))
 ;
NOPCASTM(STAM) ; -- LO LEHADPIS HESHBON ASHRAI AHR TM
 Q +$G(@$$^W4PRM@("NOPCASTM"))
 ;
NIGHT(STAM) ;--- MISHLOHIM BA LAILA
 Q +$G(@$$^W4PRM@("NIGHT"))
 ;
LOGODET(STAM) ;--- LOGO & DETAILS BO OTO SHURA
 Q +$G(@$$^W4PRM@("LOGODET"))
 ;
NOSGTAW(STAM) ;--- LO LISGOR HAZMANOT TAW AHAREY TASHLUM
 Q +$G(@$$^W4PRM@("NOSGTAW"))
 ;
NOKFLLK(STAM) ; 
 Q +$G(@$$^W4PRM@("NOKFLLK"))
 ;
NOMZMDLV(STAM) ; -- LO LEHAZIG MEZUMAN KE SUG TASHLUM AL MISHLOAH
 Q +$G(@$$^W4PRM@("NOMZMDLV"))
 ;
NOLELO(STAM) ; -- LO LEHAZIG HODAA "LELO HADPASA"
 Q +$G(@$$^W4PRM@("NOLELO"))
 ;
HBNOWMONTH(STAM) ; ---- HESBONIOT MIYADIOT LEHOCI BSOF HODESH LE COL HAZMANA
 Q +$G(@$$^W4PRM@("HBNOWMONTH"))
 ;
ZAHI(STAM) ; 
 Q +$G(@$$^W4PRM@("ZAHI")) 
 ;
IT2WEB(STAM) ; ---- SEND ITEMS 2 WEB AFTER CHANGE ITEM IN ITEM TABLE
 ;;I $D(@$$^W4PRM@("WEB","SRVADDR")),$G(@$$^W4PRM@("WEB","MSD")),$G(@$$^W4PRM@("WEB","PSW")) Q 1
 Q +$G(@$$^W4PRM@("IT2WEB")) 
 ;
DELIMGR(STAM) ; --- PSEUDO ITEMS GROUP FOR DELIMITER BETWEEN ORDER LINES ( PIZUL )
 I '$$NODLVORD Q 0
 Q $G(@$$^W4PRM@("DELIMGR")) 
 ;
DLMGR(STAM) ; --- PSEUDO ITEMS GROUP FOR DELIMITER BETWEEN ORDER LINES
 I '$$NODLVORD Q 0
 Q $G(@$$^W4PRM@("DLMGR")) 
 ;
FASTPAY(STAM) ; --- FAST CA, SODEXO, TENBIS IN ALL KIND OF TABLE
 Q +$G(@$$^W4PRM@("FASTPAY")) 
 ;
CITYINPUT(STAM) ; --- HAKLADAT IR
 Q +$G(@$$^W4PRM@("CITYINP")) 
 ;
SLHFK(STAM) ;--- HAFKADAT MEZUMAN SHEL SLIHIM LE KUPA 
 Q +$G(@$$^W4PRM@("SLHFK")) 
 ;
TEMPCRED(STAM) ; -- LEASHER LE LAKUAH AKAFA ZMANIT (SF) [W4PRMMSL]
 I $$SF^W4PRM Q 1
 Q +$G(@$$^W4PRM@("TEMPCRED")) 
 ;
GRPIC(STAM) ; -- LEHAZIG TMUNOT BE MASAH KVUZOT PRITIM [W4PRMHZG]
 Q +$G(@$$^W4PRM@("GRPIC")) 
 ;
TABLET(STAM) ;
 Q +$G(@$$^W4PRM@("TABLET")) 
 ;
ZAUTO(STAM) ; -- BE EISE SHAA LAASOT Z AUTOMATI [W4PRMD]
 Q $G(@$$^W4PRM@("ZAUTO")) 
 ;
CLSDLV(STAM) ; -- LISGOR AZM MISHLOAH BE ZMAN TASHLUM [W4PRMMSL]
 I $$MSHHBNOW S @$$^W4PRM@("CLSDLV")=1
 Q $G(@$$^W4PRM@("CLSDLV")) 
 ;
HZMH(STAM) ; -- COD PARIT - HAZAAT MAHIR [W4PRMMSL]
 Q $G(@$$^W4PRM@("HZMH")) 
 ;
NOTM(STAM) ; -- IM LEHADPIS HMK BIMLOM TM [W4PRMPC4]
 Q +$G(@$$^W4PRM@("NOTM")) 
 ;
KOLMAX(STAM) ; KAMUT PRITIM MAXIMALI BE SHURA 1
 Q $G(@$$^W4PRM@("KOLMAX")) 
 ;
SND2EMAIL(STAM) ; -- BEZMAN SHIGUR MISHLOAH LISHLOH AZMANA/HESB SEND 2 MAIL
 Q ($G(@$$^W4PRM@("SND2MAIL"))=1)
 ;
MAIL2SMS(STAM) ; -- BEZMAN SHIGUR MISHLOAH LISHLOH AZMANA/HESB SEND 2 SMS
 Q ($G(@$$^W4PRM@("SND2MAIL"))=2)
 ;
NOCUTFIRST ; -- LO BE SHIMUSH ?
 Q +$G(@$$^W4PRM@("NOCUTFIRST")) 
 ;
PCCA1(STAM) ; LEADPIS SEFAH 1 LE C-A ( 1 - LE LAK, 2 - MISSADA , 0- 2 PTAKIM ) [W4PRMPC]
 ; -- W4PRMPC
 Q +$G(@$$^W4PRM@("PCCA1")) 
 ;
PIZUIM(STAM) ; -- COD PARIT PIZUIM BE MISHLOHIM [W4PRMMSL]
 Q $G(@$$^W4PRM@("PIZUIM")) 
 ;
CENTER(STAM) ; -- TEXT BE TAFRIT BE MERKAZ MAKASH - LO BE SHIMUSH
 Q $G(@$$^W4PRM@("CENTER")) 
 ;
MSHHBNOW(STAM) ; -- HADPES HESBONIT & LISGOR AZAMANAT MISHLOAH BE ZMAN TASHLUM 
 ; -- W4PRMMSL
 Q $G(@$$^W4PRM@("MSHHBNOW")) 
 ;
NOCUTASR(STAM) ; -- LAASOT HITUH NEYAR AHAREY TLUSH AKAFA ( IM LO HOTEH )[0]
 Q +$G(@$$^W4PRM@("NOCUTASR")) 
 ; 
PCTIPCA(STAM) ; -- LEADPIS TIP BE TLUSH K-A [0] - W4PRMPC ?
 I $$NOTIPALL Q 0
 Q +$G(@$$^W4PRM@("PCTIPCA")) 
 ; 
POLYGON(STAM) ; -- LESHAYEH KTOVET LE AZOR LEFI MAPAT GOOGLE [0] W4PRMMSL ?
 ;;I $$TELEPHONE Q 1
 ;;I $$MM^W4PRM Q 1
 I $G(@$$^W4PRM@("POLYGON")) Q 1 
 I $D(@$$^W4GL("W4PLGN"))>9,$$TELEPHONE Q 1 
 Q 0 
 ;
ADDFREE(STAM) ; -- COD PARIT LE TOSEFET KLALIT IM TEXT HOFSHI [W4PRMGN]
 Q $G(@$$^W4PRM@("ADDFREE")) 
 ;
NOBIGMDP(STAM) ; -- EIN EFSHARUT LEHADPIS HRSHBONIOT & KABALOT LE MADPESET GDOLA [0]
 ; W4PRMGN OR W4PRMPC ?
 I $$^W4LKH Q 0
 Q +$G(@$$^W4PRM@("NOBIGMDP")) 
 ;
PIZUL(STAM) ; -- COD PARIT "PIZUL" -- LO BE SHIMUSH ?
 Q +$G(@$$^W4PRM@("PIZUL")) 
 ;
TABLETPAD1(STAM) ; -- PADDING W3ORDDET FOR TABLET
 Q +$G(@$$^W4PRM@("TABLET","PAD1"),2) 
 ;
DLVWEB(STAM) ; -- CALL CENTER
 Q $G(@$$^W4PRM@("DLVWEB"))
 ;
DOPOPT(STAM) ; -- EFSHARUT LEHAAVIR MITOH AZMANA KOL PRITIM LE SHULHAN PANUY
 ; -------------- IM HUGDAR TBDEL^W4PRM - LEHAAVIR PRITIM LE SHULHAN BITUL
 ; [0] -- W4PRMMSD ?
 I $$SUPER^W3PRM Q 0
 Q $G(@$$^W4PRM@("DOPOPT")) 
 ;
TBDEL(STAM) ; -- EFSHARUT LEHAAVIR PRITIM LE SHULHAN BITUL (IF DOPOPT=1)
 Q $G(@$$^W4PRM@("TBDEL")) 
 ; 
LL(STAM) ;  -- IF SUG SHULHAN MEAFSHER OPZIYA "LASHEVET-LAKAHAT" ( TVL SUGEY SHULHANOT )
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D  Q:OK
 .I $$LL^W4SUGS(N) S OK=1 
 Q OK
 ;
GRITVW(STAM) ; -- LEHAZIG KVUZOT & PRITIM BE MASAH TAFRIT HAZMANA [W4PRMHZG]
 I $$GETP^%W1PRM("FULLFAST") Q 0
 I $$DLVMOUSE Q 0
 Q $$GRITVW1
 ;
GRITVW1(STAM) 
 I $$^W4TABLET=1 Q 0
 I $$^W4SMALL Q 0
 I $$^W6 Q 0
 ;;I $$SUPER^W3PRM Q 0
 ;
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSL(NMB),'$$GRITMSL Q 0
 I $$TLMTN^W4L(NMB) Q 0
 I NMB,$$^W4POSMSK(NMB) Q 0
 Q $$GRITVW2
 ;
GRITVW2(STAM) ;
 Q +$G(@$$^W4PRM@("GRITVW")) 
 ;
GRITMSL(STAM) ; -- LEHAZIG KVUZOT & PRITIM BE MASAH EHAD BE HAZMANAT MISHLOAH
 ;;I $$NODLVORD Q 0
 Q $G(@$$^W4PRM@("GRITMSL"))
 ;
SHORTFN(STAM) ; LEHAZIG TAFRIT OPZIYOT BE HAZAGAT HAZMANA BE ZURA MEKUZERET [W4PRMHZG]
 Q $G(@$$^W4PRM@("SHORTFN")) 
 ;
NOADDWND(STAM) ; -- LO BE SHIMUSH
 I $$^W4SMALL Q 1
 I $$^W4TABLET Q 1
 N NW S NW=$G(@$$^W4PRM@("NOADDWND")) 
 I NW'=0,NW'=1 S @$$^W4PRM@("NOADDWND")=1
 Q +$G(@$$^W4PRM@("NOADDWND")) 
 ;
NOTNBPAY(STAM) ; -- LO LISGOR HAZM 10B MI INTERNET OTOMATI AL HAKAFA AL LAK 10B
 ; [0]
 Q +$G(@$$^W4PRM@("NOTNBPAY")) 
 ;
CMNTMAIL(STAM) ; -- LEHAZIG LIFNEY HEARA PRATEY HAZMANA BE ZURAT COTERET TAVLAI
 ; ---------------- [W4PRMAIL]
 Q +$G(@$$^W4PRM@("CMNTMAIL")) 
 ;
SHEETBG(STAM) ;-- LEAZIG BG SHEL PRITIM BE CEVA SHEL MAKASH KVUZA [W4PRMHZG]
 Q +$G(@$$^W4PRM@("SHEETBG")) 
 ;
NODLVER(STAM) ; -- CALL CENTER: LO LEHAMSHIH AZMANA IM AZOR LO NIMZA [0] W4PRMMSL ?
 Q +$G(@$$^W4PRM@("NODLVER")) 
 ;
NOPCMZMN(STAM) ; -- LO LEHADPIS SHEM AMAZMIN BE HESHBON -- LO BE SHIMUSH ?
 Q +$G(@$$^W4PRM@("NOPCMZMN")) 
 ;
CHCREST(STAM) ; -- CALL CENTER: TAMID LEHAZIG RESHIMAT MISSADOT LE SHIGUR HAZMANA
 ; -- [0]
 Q +$G(@$$^W4PRM@("CHCREST")) 
 ;
SHOWMKBL(STAM) ; -- LEHAZIG SHEM MEKABEL HAZMANA BE RESHIMAT HAZMANOT MISHLOHIM
 ; ---------------- [W4PRMMSL]
 Q $G(@$$^W4PRM@("SHOWMKBL"))
 ;
PAIDTIME(STAM) ; -- MISP DAKOT AHAREY KABALAT HAZMANA LIFNEY SHE MESAMNIM
 ; ---------------- HAZMANA BE MISGERET ADOMA SHE HI LO SHULMA [W4PRMMSD]
 Q $G(@$$^W4PRM@("PAIDTIME"))
 ;
DSHL(STAM) ; -- DM MISHLOAH BRERAT MIHDAL ( IM EIN KESHER LE IR ) [W4PRMMSL]
 Q $G(@$$^W4PRM@("DSHL"))
 ;
NOSPLN0(STAM) ; -- LO BE SHIMUSH ?
 Q +$G(@$$^W4PRM@("NOSPLN0"))
 ;
NOSPACE2(STAM) ; -- LEHADPIS TOSAFOT BE SET PRITIM LELO REVAH [W4PRMPC]
 Q +$G(@$$^W4PRM@("NOSPACE2"))
 ;
NOQ1(STAM) ; --- LO LEHADPIS KAMUT PRITIM = 1 BE BON LE MITBAH [W4PRMPC]
 Q +$G(@$$^W4PRM@("NOQ1"))
 ;
HZMRKZ(STAM) ; -- LEHADPIS RIKUZ PRITIM BE SOF HAZMANA [W4PRMPC]
 Q +$G(@$$^W4PRM@("HZMRKZ"))
 ;
HZMDBL(STAM) ; -- LEHADPIS HAZMANA IM HAETEK [W4PRMPC]
 Q +$G(@$$^W4PRM@("HZMDBL"))
 ;
MSPYOM(STAM) ; -- LEHADPIS MISPAR YOMI SHEL HAZMANA [W4PRMPC]
 Q +$G(@$$^W4PRM@("MSPYOM"))
 ;
HZPCSP(STAM) ; LEHOSIF SHURAT REVAH BEIN PRITIM ROSHIIM [W4PRMPC]
 Q +$G(@$$^W4PRM@("HZPCSP"))
 ;
LINE(STAM) ; -- LEHADPIS KAV BEIN PRITIM [W4PRMPC]
 Q +$G(@$$^W4PRM@("LINE"))
 ;
PCTIME(STAM) ; -- LEHADPIS HAZMANA AHARY ZMAN MESUYAM - LO BE SHIMUSH ?
 Q +$G(@$$^W4PRM@("PCTIME"))
 ;
EDAIDFLT(STAM) ; -- EFSHARUT LEHADKEN AI S PRITIM BRERAT MIHDAL MIYADI
 Q +$G(@$$^W4PRM@("EDAIDFLT"))
 ;
FCTISHZC(STAM) ; -- EFSHARUT LATET ISHUR FICTIVI BE BITUL C-A [0]
 Q +$G(@$$^W4PRM@("FCTISHZC"))
 ;
SGNPDF(STAM) ; -- EFSHARUT HATIMA DIGITALIT BE SHIDUR HESB BE MAIL [W4PRMAIL]
 Q +$G(@$$^W4PRM@("SGNPDF"))
 ;
NOZPT(STAM) ; -- LEHAZIG MISPARIM BE DOHOT LELO PSIK [W4PRMHZG] - LO BE SHIMUSH
 Q +$G(@$$^W4PRM@("NOZPT"))
 ;
OLDDAT(STAM) ; -- LEHAZIG TAARIH BE 3 RIBUIM LE HAKLADA ( IM LO - SELECT BOX ) [W4PRMHZG]
 N R S R=$R
 I +$G(@$$^W4PRM@("OLDDAT")) Q 1
 ;;S:$L(R) R=$D(@R)
 Q 0
 ;
QNPARHZ(STAM) ; -- LEADPIS KAMUT PRITIM BE BON [W4PRMPC]
 Q $G(@$$^W4PRM@("QNPARHZ")) 
 ;
KOTACNT(STAM) ; -- LEHADPIS BE HESB PRATEY BANK SNIF & HESBON [W4LKHPRM]
 Q $G(@$$^W4PRM@("KOTACNT")) 
 ;
KOTACNTD(STAM) ; -- LEHADPIS BE HESB PRATEY BANK SNIF & HESBON LEMATA [W4LKHPRM]
 Q $G(@$$^W4PRM@("KOTACNTD")) 
 ;
BAITDIRA(STAM) ; LEHADPIS BAIT & DIRA BENIFRAD BE AZM & HESB ( LO DEREH / ) [W4PRMPC] - W4PRMPC
 Q $G(@$$^W4PRM@("BAITDIRA")) 
 ;
SHOWTIME(STAM) ; -- LEHAZIG ZMAN HAZMANAT MISHLOAH BEGADOL BE HAZAAT MAHIR [0]
 Q $G(@$$^W4PRM@("SHOWTIME")) 
 ;
J5(STAM) ; -- CALLCENTER : LIVDOK C-A DEHEH PARAMETER J5
 Q $G(@$$^W4PRM@("J5")) 
 ;
NOCHNTM(STAM) ; -- LO LESHANOT ZMAN MISHLOAH IM KTOVET SHUNA [W4PRMMSL]
 Q $G(@$$^W4PRM@("NOCHNTM")) 
 ;
SMSHAA(STAM) ; -- BE TIHNUN AVODA LE MAHAR
 ;--------------- KAMA DAKOT LIFNEY ZMAN AZMANA ZE AMUR LIHYOT MUHAN [0] 
 Q $G(@$$^W4PRM@("SMSHAA")) 
 ;
PODNOS(STAM) ; -- LEHOSIF HUZ MI LASHEVET-LAKAHAT OPZIYA "AL A-MAGASH" [0]
 Q +$G(@$$^W4PRM@("PODNOS")) 
 ;
ASKCOPY(STAM) ; -- IM LISHOL AL BIZUA GIBUY AHAREY SHIDUR LE SHVA
 ; --------------- IM LO - GIBUY MITBAZEA OTOMATI [W4PRMGN]
 Q +$G(@$$^W4PRM@("ASKCOPY")) 
 ;
EMV(STAM) ; --- AVODA IM MAHSHIR EMV [W4PRMADM]
 I $$ONLINE^W4DLVCSR Q 0
 I $$DLVWEB^W4DLVCSR Q 0
 Q +$G(@$$^W4PRM@("EMV")) 
 ;
EMVDIR(STAM) ; -- MEHIZALE EMV [W4PRMEMV]
 N DIR S DIR=$G(@$$^W4PRM@("EMV","DIR")) 
 I DIR'="",$E(DIR,$L(DIR))'="/" S DIR=DIR_"/"
 Q DIR
 ;
EMVUSR(STAM) ; -- KOD MISHTAMESH (MISP MASOF) LE EMV [W4PRMEMV]
 Q $G(@$$^W4PRM@("EMV","USR")) 
 ;
EMVADR(STAM) ; -- IP FOR EMV [W4PRMEMV]
 Q $G(@$$^W4PRM@("EMV","ADR")) 
 ;
Z2SHVA(STAM) ; -- IP FOR EMV [W4PRMEMV]
 Q +$G(@$$^W4PRM@("Z2SHVA")) 
 ;
NOPCLOAZ(STAM) ; -- LO LEHADPIS SHEM PARIT BE LOAZIT BE BON LE MITBAH [W4PRMPC]
 Q $G(@$$^W4PRM@("NOPCLOAZ")) 
 ;
TIPFREE(STAM) ;-- EFSHARUT LICHTOV GODEL TIP HOFSHI [W4PRMMSD]
 Q $G(@$$^W4PRM@("TIPFREE")) 
 ;
CHNORD(STAM) ; -- EFSHARUT LESHANOT SEDER PRITIM LO MUDPASIM BE HAZMANA [W4PRMGN]
 Q $G(@$$^W4PRM@("CHNORD")) 
 ; 
CODHRA(STAM) ; -- COD PARIT "HEARA" - LEHOSIF BE THILAT AZMANA [0] FOR SF ?
 Q $G(@$$^W4PRM@("CODHRA")) 
 ;
CAUSED(STAM) ; -- IM LISHOL SIBAT BITUL OR ANAHA [W4PRMGN]
 Q $G(@$$^W4PRM@("CAUSED")) 
 ;
EXITKITC(STAM) ; -- IM LISHOL SHE PARIT MEVUTAL YAZA ME MITBAH [W4PRMGN]
 Q $G(@$$^W4PRM@("EXITKITC")) 
 ;
DELREST(STAM) ; -- IM LEAFSHER OPZIYA "BATEL & SHAHZER PARIT" [W4PRMGN]
 Q $G(@$$^W4PRM@("DELREST")) 
 ;
ASKMVPC(STAM) ; -- IM LISHOL - LEHADPIS PRITIM MUAVARIM BE MITBAH (LEFI DRISHA)
 ; --------------- W4PRMPC
 Q ($G(@$$^W4PRM@("HZMHV"))=3)
 ;
PCTB(STAM) ; -- IM LEHADPIS TLUSH 10B [W4PRMPC]
 Q +$G(@$$^W4PRM@("PCTB"))
 ;
KBENG(STAM) ; -- LEHAZIG COL A-MAKASHIM BE ANGLIT ( AVAL LEHASHIR RIGHT-TO-LEFT ) [W4PRMADM]
 Q +$G(@$$^W4PRM@("KBENG"))
 ;
NOPCZERO(STAM) ; -- LO LEHADIS LE MITBAH PARIT 0 [W4PRMPC]
 Q +$G(@$$^W4PRM@("NOPCZERO"))
 ;
DRCLK(STAM) ; -- KAMA SFAROT AHAREY PSIK LEHAZIG BE DOCH SHAOT AVODA BE ZURA ISHRONI
 N DR S DR=+$G(@$$^W4PRM@("DRCLK"))
 I 'DR!(DR>4) S DR=3
 Q DR
 ;
PCWORK(STAM) ; -- LEHADPIS KAMA SHAOT OVED AVAD BE TLUSH YAZIA MI-AVODA [W4LEVIN]
 Q +$G(@$$^W4PRM@("PCWORK"))
 ;
PCULNM(STAM) ; -- LEHADPIS SHEM ULAM BE BON [W4PRMPC1]
 Q +$G(@$$^W4PRM@("PCULNM"))
 ;
HZMLKHN(STAM) ; -- LEHADPIS SHEM LAKUAH BE BON [W4PRMPC1]
 Q +$G(@$$^W4PRM@("HZMLKHN"))
 ;
INVHZ(STAM) ; -- LEHADPIS MISPAR HAZMANAT MISHLOHIM LAVAN AL SHAHOR[0] OR W4PRMMSL ?
 Q +$G(@$$^W4PRM@("INVHZ"))
 ;
INVSH(STAM) ; -- LEHADPIS MISP SHULHAN LAVAN AL SHAHOR [W4PRMPC]
 Q +$G(@$$^W4PRM@("INVSH"))
 ;
NMPRNMSL(STAM) ; -- LEHADPIS SHEM MADPESET BE OTIOT KTANOT
 Q +$G(@$$^W4PRM@("NMPRNMSL"))
 ;
BIGVT(STAM) ; -- LEHADPIS SUG TASHLUM BE HESB/TM BE OTIOT GDOLOT [W4PRMPC]
 Q +$G(@$$^W4PRM@("BIGVT"))
 ;
MDBLK(STAM) ; 
 Q +$G(@$$^W4PRM@("MDBLK"))
 ;
MDBMSD(STAM) ; --  HADPES MADB LE TAW
 Q +$G(@$$^W4PRM@("MDBMSD"))
 ;
EMVARM(STAM) ; 
 Q +$G(@$$^W4PRM@("EMVARM"))
 ;
GRAD(STAM) ; 
 Q +$G(@$$^W4PRM@("GRAD"))
 ;
CLRCSR()
 Q $$CLRCSR^W4BGBODY
 ;
IFCLRCSR()
 I $$CLRCSR?1U.E Q 1
 Q 0
 ;
GRD(STAM) ;
 N CLRCSR S CLRCSR=$$CLRCSR
 I CLRCSR'?1U.E Q ""
 N BG S BG=""
 ;
 I '$$GETP^%W1PRM("W4BO") D  Q BG
 .S BG=$G(@$$GLCOLOR^W4GETCLR@(CLRCSR,"BG"))
 .I BG["-" S BG=$$GRD^W3CSS(BG)
 ; 
 Q $$CLRCSRBGBO^W4BGBODY
 ;
 ;
SHOWDEL(STAM) ; -- LEHAZIG BE BRERAT MIHDAL HAZMANOT MEVUTALOT BE MISHLOHIM
 Q +$G(@$$^W4PRM@("SHOWDEL"))
 ;
SHORTPC(STAM) ; -- LEHAZIG KOTERET MISHL BE ZURA MEKUZERET
 Q +$G(@$$^W4PRM@("SHORTPC"))
 ;
GWFAX(STAM) ;-- MAX VREMYA POSYLKI FAXA ( CALL CENTER )
 Q $G(@$$^W4PRM@("GWFAX"),300)
 ; 
DESCENG(STAM) ;  -- DESCRIPTION OF ITEM IN ENGLISH
 Q +$G(@$$^W4PRM@("DESCENG"))
 ;
NOMVBANK(STAM)  ; -- LEVATEL EFSHARUT TASHLUM BE HAAVARA BANKAIT
 Q +$G(@$$^W4PRM@("NOMVBANK"))
 ;
NOHBCOPY(STAM)  ; - LO LEHADPIS HAETEK HESHBONIT [ W4PRMPC ]
 Q +$G(@$$^W4PRM@("NOHBCOPY"))
 ;
RSTGO(STAM) ; 
 I +$G(@$$^W4PRM@("RSTGO"))!+$G(@$$^W4PRM@("RSTGNEW")) Q 1
 Q 0
 ;
NOSUMOTH(STAM) ; -- LEHADPIS OTH LELO SHUM HANAHA
 Q +$G(@$$^W4PRM@("NOSUMOTH"))
 ;
TSF2MDB(STAM) ; -- TJSAFOT S } NA OTD MADB
 Q +$G(@$$^W4PRM@("TSF2MDB"))
 ; 
DFLTADD1(STAM) ; -- CHOICE FIRST ADDITION IN DEFAULT
 Q +$G(@$$^W4PRM@("DFLTADD1"))
 ;
SHORTDET(STAM) ;  -- RESHIMAT SHEELOT MEKUZERET (W3ORDDET)
 I $$^W4TABLET=1 Q 1
 I $$MMCC!$$TELEPHONE Q 1
 I $$KBVRT Q 1
 Q '$G(@$$^W4PRM@("ORDDET"))
 ;;Q +$G(@$$^W4PRM@("SHORTDET"))
 ;
NDTNTM(STAM) ;  -- NEW DATE -> NEW TIME ( W3ORDDET )
 Q +$G(@$$^W4PRM@("NDTNTM"))
 ;
HSVZ(STAM) ; 
 Q +$G(@$$^W4PRM@("HSVZ"))
 ;
TABZ(STAM) 
 I $G(@$$^W4PRM@("ASH","MASOF"))=1702011 Q 1 
 Q 0 
 ;
MSGWGT(STAM) ;
 Q $G(@$$^W4PRM@("MSGWGT"))
 ;
OLDFAX(STAM) ;
 Q +$G(@$$^W4PRM@("OLDFAX"))
 ; 
FAXPDF(STAM) ;
 Q +$G(@$$^W4PRM@("FAXPDF"))
 ; 
MH00(STAM) ; -- PRICE + 00
 Q +$G(@$$^W4PRM@("MH00"))
 ;
JUNCORD(STAM) ; -- HIBUR AZMANOT
 Q +$G(@$$^W4PRM@("JUNCORD"))
 ;
ADDCOLOR(STAM) 
 Q +$G(@$$^W4PRM@("ADDCOLOR"))
 ; 
PRINTCHK(STAM) ; 
 Q +$G(@$$^W4PRM@("PRINTCHK"))
 ; 
NOFUTDAT(STAM) ; 
 Q +$G(@$$^W4PRM@("NOFUTDAT"))
 ; 
MNCUR(STAM) 
 Q +$G(@$$^W4PRM@("MNCUR"))
 ;
CVVTZ(STAM) ; -- LISHOL CVV & TZ
 Q +$G(@$$^W4PRM@("CVVTZ"))
 ;
CVV(STAM) ; -- LISHOL TZ
 Q +$G(@$$^W4PRM@("CVV"))
 ;
TZ(STAM) ; -- LISHOL TZ
 Q +$G(@$$^W4PRM@("TZ"))
 ;
MULTYADR(STAM) ; -- LEHAZIG RESHIMAT KTOVETIM DE HAZMANAT MISHLOAH
 Q +$G(@$$^W4PRM@("MULTYADR"))
 ;
PICIT(STAM) ; --- HAZAGAT TMUNOT BE HAZAAT MAHIR
 Q +$G(@$$^W4PRM@("PICIT"))
 ;
NOVWPRC(STAM) ;
 Q +$G(@$$^W4PRM@("NOVWPRC"))
 ;
VWPICHM(STAM) ;
 Q +$G(@$$^W4PRM@("VWPICHM"))
 ;
DETNOTES(STAM) ; -- DETAIL COMMENTS 2 MISHLOAH [W4PRMMSL]
 Q $G(@$$^W4PRM@("DETNOTES")) 
 ;
BITSMS(STAM) ; -- BITULIM LE SMS
 Q $G(@$$^W4PRM@("BITSMS"))
 ;
BIO(STAM) ; --- BDIKA MISP OVED BIOMETRY
 I +$G(@$$^W4PRM@("BIO",$$^W4MYDVN)) Q 1
 Q +$G(@$$^W4PRM@("BIO"))
 ;
USBIO() ;
 I $$BIO&$G(@$$^W4GL("W4POSBIO")@($$^W4MYDVN)) Q 1
 Q 0
 ;
BONSCR(STAM) ; -- HADPASAT BONIM LE MASAH
 Q +$G(@$$^W4PRM@("BONSCR"))
 ;
WNDROWS(STAM) ;
 Q +$G(@$$^W4PRM@("BONSCR","ROWS"))
 ;
WNDCOLS(STAM) ;
 Q +$G(@$$^W4PRM@("BONSCR","COLS"))
 ;
CORR(STAM) ; -- HITKATVUT IM LAKUAH
 Q +$G(@$$^W4PRM@("CORR"))
 ;
MELEL(STAM) ; -- MELEL LE MAIL
 Q +$G(@$$^W4PRM@("MELEL"))
 ;
PRINTALL(STAM) ; -- BE EISE SHAA LAASOT HADPASAT HAZMANOT LE MISHLOHIM
 Q $G(@$$^W4PRM@("PRINTALL")) 
 ;
NOVWPAD(STAM) ; -- LEHAZIG DOCH CHEKIM LE SAPAKIM BE ZURA MEKUZERET
 Q +$G(@$$^W4PRM@("NOVWPAD"))
 ;
MH2SET(STAM) ; -- LEHAAVIR MAHIRIM LETOH SET
 Q +$G(@$$^W4PRM@("MH2SET"))
 ;
NOWILLPY(STAM) ; -- LO LEHAZIG OPZIYOT TASHLUM BE ATID
 Q +$G(@$$^W4PRM@("NOWILLPY"))
 ;
WILLPAYCA(STAM) ; -- LEHAZIG TASHLUM BE CA BE ATID
 Q +$G(@$$^W4PRM@("WILLPYCA"))
 ;
BIGNMIT(STAM) ;-- HADPASA PARIT ROSHI BE OTIOT GDOLOT B TM/MESHALEAH
 Q +$G(@$$^W4PRM@("BIGNMIT"))
 ;
BIGNAME(STAM) ; -- ADPASA PARIT ROSHI BE OTIOT GDOLOT ( 1 - RAGIL , 2 - BOLET )
 Q +$G(@$$^W4PRM@("BIGNAME"))
 ;
BIGNMEZI(STAM) ; -- ADPASAT TOSAFOT BE OTIOT GDOLOT ( 1 - RAGIL , 2 - BOLET )
 Q +$G(@$$^W4PRM@("BIGNMEZI"))
 ;
BIGNMEZT(STAM) ; -- ADPASAT SET LE PAR KV TOS BE OTIOT GDOLOT ( 1 - RAGIL , 2 - BOLET )
 Q +$G(@$$^W4PRM@("BIGNMEZT"))
 ;
BIGNMEZA(STAM) ; -- ADPASAT SET LE AI BE OTIOT GDOLOT ( 1 - RAGIL , 2 - BOLET )
 Q +$G(@$$^W4PRM@("BIGNMEZA"))
 ;
TMMSL(STAM) ;-- HADPASA TM BIMKOM TOFES LE MESHALEAH
 Q +$G(@$$^W4PRM@("TMMSL"))
 ;
NOPCTM(STAM) ;-- LO LEHAPIS TM BE SHIGUR SHALIAH
 Q +$G(@$$^W4PRM@("NOPCTM"))
 ;
SET2ORD(STAM) ;-- LEHAAVIR LE HAZMANA PRITEY SET KA PRITIM AZMAIM
 Q +$G(@$$^W4PRM@("SET2ORD"))
 ;
EQDAT(STAM) ; -- = BE TVAH TAARIHIM
 Q +$G(@$$^W4PRM@("EQDAT"))
 ;
NOEQDAT(STAM) ; -- EIN = BE TVAH TAARIHIM
 Q +$G(@$$^W4PRM@("NOEQDAT"))
 ;
CADFLT(STAM) ; -- LAKAHAT PRATEY C-A MI CARTIS LAKOAH
 Q +$G(@$$^W4PRM@("CADFLT"))
 ;
CAJ(STAM) ; --- C-A HUZ
 Q +$G(@$$^W4PRM@("CAJ"))
 ;
GAP(STAM) ;--- MEMSHAK LE GAP
 Q +$G(@$$^W4PRM@("GAP"))
 ;
MKRDLV(STAM) ; -- LISHOL MAKOR AZMANA BE MISHLOHIM
 Q +$G(@$$^W4PRM@("MKRDLV"))
 ;
IBON(STAM) ; --- AVODA IM MASAHIM IBON BIMKOM MADPESET
 Q +$G(@$$^W4PRM@("IBON"))
 ;
MDBYAD(STAM) ; --- NIHUL ADPSA SHEL MADBEKOT YADANI
 Q +$G(@$$^W4PRM@("MDBYAD"))
 ;
NOIKOT(STAM) ;-- MISPAR YOMI LO AL REKA SHAHOR
 Q +$G(@$$^W4PRM@("NOIKOT"))
 ;
IWOLT(STAM) ;-- MISPAR YOMI LO AL REKA SHAHOR
 Q +$G(@$$^W4PRM@("IWOLT"))
 ;
VCPREPAY(STAM) ; -- PREPAY VALUE CARD
 Q +$G(@$$^W4PRM@("VCPREPAY"))
 ;
OTHBOLD(STAM) ; - ???
 Q +$G(@$$^W4PRM@("OTHBOLD"))
 ;
CSHPOS(STAM) ; -- SFIRAT MEZUMAN BE COL KUPA BENIFRAD
 Q +$G(@$$^W4PRM@("CSHPOS"))
 ;
ALL2MSL(STAM) ; -- ADPASA COL AZMANOT LE MAHAR BE ZURA TEUDA LE MESHALEAH
 Q +$G(@$$^W4PRM@("ALL2MSL"))
 ;
SAHMDB(STAM) ; -- LEHADPIS AL COL MADBEKA MISPAR I SAH MADBEKOT
 Q +$G(@$$^W4PRM@("SAHMDB"))
 ;
MDBADDR(STAM) ; =2 - LEHADPIS KTOVET AL MADBEKA NIFREDET
 Q +$G(@$$^W4PRM@("MDBADDR"))
 ;
PCHZKV(STAM) ; -- BETOH MANA LEHADPIS LEFI KVUZOT
 Q +$G(@$$^W4PRM@("PCHZKV"))
 ;
IT4WEB(STAM) ; -- EFSHARUT LAKAHAT TAFRIT MI SHARAT
 Q +$G(@$$^W4PRM@("IT4WEB"))
 ;
DETTM(STAM) ; -- LEHADPIS TM IM COL HEAROT ITOSAFOT
 Q +$G(@$$^W4PRM@("DETTM"))
 ;
CLKVWMLZ(STAM) ; -- HAZEG SHAON NOHEHUT BE MASAH MELZARIM
 Q +$G(@$$^W4PRM@("CLKVWMLZ"))
 ;
MYMAIL(STAM)
 N A S A=$G(@$$^W4PRM@("MYMAIL"))
 I A=""!(A'["@")!(A'[".") S A=$G(@$$^W4PL@("ESEK",6))
 I (A'["@")!(A'[".") S A=""
 Q A 
 ;
HZAFTPAY(STAM) ; -- LEHADPIS AZMANA RAK AHAREY TASHLUM
 Q +$G(@$$^W4PRM@("HZAFTPAY"))
 ;  
LIMHR(STAM) ;-- LIMIT KABALAT MISHLOHIM LE SHAA ( GL ^W4LIMHR )
 Q +$G(@$$^W4PRM@("LIMHR"))
 ;
TIMERMSL(STAM) ; -- LEHAZIG BE RESHIMAT MISHLOHIM CAMA ZMAN AVAR MI KABALAT AZMANA
 Q +$G(@$$^W4PRM@("TIMERMSL"))
 ;
NOMSLHD(STAM) ; -- ???
 Q +$G(@$$^W4PRM@("NOMSLHD"))
 ;
PRTNET(STAM) ; --- NIHUL PRITIM DEREH INTERNET
 I $$GETP^%W1PRM("MGR") Q 0
 Q +$G(@$$^W4PRM@("PRTNET"))
 ;
VVMSK(STAM) ; -- KABALAT AZMANA BE ZURAT HAZAAT MAHIR IM IDCUN MISHKAL
 Q +$G(@$$^W4PRM@("VVMSK"))
 ;
NOPERMIT(STAM) ; -- LO LISHOL MI ISHER HAFICHAT AZAAT MAHIR LE AZMANA
 Q +$G(@$$^W4PRM@("NOPERMIT"))
 ;
NOMAM(STAM) ; -- EFSHARUT AVODA IM PRITIM BLI MAM
 ;;I $$SUPER^W3PRM Q 1 
 N OK S OK=0
 I $G(@$$^W4PRM@("NOMAM")) Q ^("NOMAM")
 I $$SUPER^W3PRM D  Q OK
 .N N S N="" F  S N=$O(@$$^W4GL("MLDEP")@(N))  Q:N=""  D  Q:OK
 ..I $P($G(^(N,1)),"\")=0 S OK=1
 ;
 D
 .N N S N="" F  S N=$O(@$$^W4GL("DEP")@(N))  Q:N=""  D  Q:OK
 ..I $P($G(^(N,1)),"\")=0 S OK=1
 Q OK
 ;
SNDY(STAM) ;-- SENDY - MEMSHAK LE QUICKY
 Q +$G(@$$^W4PRM@("SNDY")) 
 ;
W6(STAM) ; -- KIOSK
 Q $$GETP^%W1PRM("W6KIOSK")
 ;
W6NMB(STAM)
 N NMB
 S NMB=+$G(@$$^W4GL("W6")@($$^W4MYDVN))
 Q NMB
 ;
W6DRC(STAM)
 N DRC
 S DRC=$P($G(@$$^W4GL("W6")@($$^W4MYDVN)),"\",2)
 Q DRC
 ;
W6MKBL(STAM)
 N OV S OV=$P($G(@$$^W4GL("W6")),"\")
 I OV="" S OV=88888
 Q OV
 ;
W6SOAD(STAM)
 N SOAD
 S SOAD=$P($G(@$$^W4GL("W6")),"\",2)
 I SOAD="" S SOAD=1
 Q SOAD
 ;
CHKPC(STAM) ;-- IIVDOK IM YESH HAZMANOT SHE LO HUDPESU
 Q +$G(@$$^W4PRM@("CHKPC")) 
 ;
CD8(STAM) ;
 Q +$G(@$$^W4PRM@("CD8")) 
 ;
NOCD8(STAM) ;
 Q +$G(@$$^W4PRM@("NOCD8")) 
 ;
BONWND(STAM) ;
 Q +$G(@$$^W4PRM@("BONWND")) 
 ;
BONNEW(STAM) ;
 Q (+$G(@$$^W4PRM@("BONWND"))=2) 
 ;
DPS(STAM) ; -- DOH GVIYAT MEZUMAN MI SHLIHIM
 I +$G(@$$^W4PRM@("SLHOV")) S @$$^W4PRM@("DPS")=1
 Q +$G(@$$^W4PRM@("DPS")) 
 ;
ACNTDOWN(STAM) ;
 Q +$G(@$$^W4PRM@("ACNTDOWN"))
 ;
CD11(STAM) ;
 Q $G(@$$^W4PRM@("CD11"))
 ;
NOTIPAS(STAM) ;
 Q $G(@$$^W4PRM@("NOTIPAS"))
 ;
LKM(STAM) ;
 Q $G(@$$^W4PRM@("LKM"))
 ;
LKMLOCAL(STAM) ;
 Q '$G(@$$^W4PRM@("LKMNET"))
 ;
NOASK11(STAM) ;
 Q $G(@$$^W4PRM@("NOASK11"))
 ;
IT2NET(STAM) ; ---- SEND ITEMS 2 NET
 Q +$G(@$$^W4PRM@("IT2NET")) 
 ; 
PAPJ(STAM) ; ---- PAPA JOHNS
 Q +$G(@$$^W4PRM@("PAPJ")) 
 ;
ZOPNDEL(STAM) ; ---- LEVATEL HAZMANOT PTUHOT LIFNEY Z
 Q +$G(@$$^W4PRM@("ZOPNDEL")) 
 ;
FCANSUM(STAM) ; ---- LO LISHOL SHUM TASHLUM BE ASHAY MAHIR
 Q +$G(@$$^W4PRM@("FCANSUM")) 
 ;
FCASUM(STAM) ; ---- LISHOL SHUM TASHLUM BE ASHAY MAHIR
 N DV S DV=$$^W4MYDVN
 I $$^W6&$$EMVARM^W4POSEMV(DV) Q 1
 I $$^W6&'$$EMVARM^W4POSEMV(DV) Q 0
 Q +$G(@$$^W4PRM@("FCASUM")) 
 ;
W6NOSUM()
 Q +$G(@$$^W4PRM@("W6NOSUM")) 
 ;
NEWINET(STAM) ; ---- LEZAFZEF IM HIGIA HAZMANAME INET
 Q +$G(@$$^W4PRM@("NEWINET")) 
 ;
DLYMSK(STAM) ; ---- DELAY BE SHKILA
 Q $G(@$$^W4PRM@("DLYMSK")) 
 ;
TLDFLT(STAM) ; ---- TLUSH KAVUA
 Q $G(@$$^W4PRM@("TLDFLT")) 
 ;
MLZRDFLT(STAM) ; ---- TLUSH KAVUA
 Q $G(@$$^W4PRM@("MLZRDFLT")) 
 ; 
CDNM(STAM) ; ---- TLUSH KAVUA
 Q $G(@$$^W4PRM@("MDBCDNM")) 
 ;
SGAUTOMZ(STAM) ; --- SGIRAT HAZMANOT OTOMATI B Z
 Q +$G(@$$^W4PRM@("SGAUTOMZ")) 
 ; 
TLCARD(STAM) ; --- TLUSH MATANA BZURA CARTIS MAGNETI
 Q +$G(@$$^W4PRM@("TLCARD")) 
 ; 
NONUMIT(STAM) ; --- YAHOLIM LIHYOT CODIM PRITIM LO SIAFRATIIM
 Q +$G(@$$^W4PRM@("NONUMIT")) 
 ;
CLRBONHD(STAM) ; 
 Q $G(@$$^W4PRM@("BONSCR","CLRHD"))
 ; 
CLRBONBD(STAM) ; 
 Q $G(@$$^W4PRM@("BONSCR","CLRBD"))
 ; 
CLRBONFG(STAM) ; 
 Q $G(@$$^W4PRM@("BONSCR","CLRFG"))
 ; 
BGHDORD(STAM) ; 
 Q $G(@$$^W4PRM@("BONSCR","BGHDORD"))
 ; 
HBHR(STAM) ; -- LEHADPIS HEAROT BE HESHBONIT : 1 - YES, 2 -  RAK LE MISHLOHIM
 Q $G(@$$^W4PRM@("HBHR"))
 ;
ASKMVIT(STAM) ; -- IM LISHOL AL HOZAA PRITIM MI MITBAH BE ZMAN HAAVARA
 Q +$G(@$$^W4PRM@("ASKMVIT"))
 ;
ASKHBMDP() ; -- LISHOL LE EIZE MADPESET LEHADPIS HESBON
 Q +$G(@$$^W4PRM@("ASKHBMDP"))
 ;
ASKCAPC() ; -- HADPASAT CA LEFI DRISHA
 Q +$G(@$$^W4PRM@("ASKCAPC"))
 ;
PCQN1() ; -- LEHADPIS CJL HA PRITIM BE KAMUT 1
  I $$IBON Q 0
  I $$PAPJ&$$BONSCR Q 1
  Q +$G(@$$^W4PRM@("PCQN1"))
 ;
PRINTBW() 
 Q +$G(@$$^W4PRM@("PRINTBW"))
 ;
NOBDKTRN() ;
 Q +$G(@$$^W4PRM@("NOBDKTRN"))
 ;
KVZRKZ() ; -- IM LEMALE TAVLAT KVUZOT RIKUZ
 Q +$G(@$$^W4PRM@("KVZRKZ"))
 ;
CIBCMP() ; --- DEFAULT COMPANY FOR CIBUS
 Q $G(@$$^W4PRM@("CIBCMP"))
 ;
CIBCMPUS() ; --- DEFAULT COMPANY FOR CIBUS BY CONDITION
 Q $G(@$$^W4PRM@("CIBCMPUS"))
 ;
CIBCMPIT() ; --- ITEM FOR CIBUS CIBUS COMPANY DEFINITION
 Q $G(@$$^W4PRM@("CIBCMPIT"))
 ;
USERSTB() ; --- TNAY SHIHRUR SHULHAN 
 I $$MM Q 0 
 I $$NOERSTB=1,'$$MGR^W4KOTMLZ Q 0
 I $$NOERSTB=2 Q 0
 Q 1
 ;
NOERSTB() ; -- EIN EFHARUT LESHAHRER SHULHAN BE SHONOT
 Q $G(@$$W4PRM@("NOERSTB"))
 ;
HFKMZM1() ; -- HAFKADAT MEZUMAN LE KUPA LELO PERUT SHTAROT
 Q +$G(@$$W4PRM@("HFKMZM1"))
 ;
CLDAYUPD() ; 
 Q +$G(@$$W4PRM@("CLDAYUPD")) 
 ;
VIRTKB() 
 Q +$G(@$$W4PRM@("VIRTKB")) 
 ;
TRICKER(HZ) ; -- MEMSHAK LE TRICKER
 I $G(HZ),$D(@$$^W4ORD@(HZ))=11,$$MKRDLV^W4HZMST(HZ)'=91,$$MKRDLV^W4HZMST(HZ)'=92 Q 0  ; -- 02/01/26-- +92
 Q +$G(@$$W4PRM@("TRICKER")) 
 ;
PWRLNK() ; -- MEMSHAK LE POWERLINK
 Q +$G(@$$W4PRM@("PWRLNK")) 
 ;
W6ENG() ; -- EFSHARUT AVODA BE ANGLIT BE KIOSK 
 Q +$G(@$$W4PRM@("W6ENG"))
 ;
MITEMS() ; ---  LEHAZIG BE SHONOT MAAREHET PRITIM
 Q +$G(@$$W4PRM@("MITEMS"))
 ;
NETLK() ;--- TVAH LAKOHOT SHE MEMLIM BE MERKAZ RESHET
 Q $G(@$$W4PRM@("NETLK"))
 ;
DEP2FAST() ; --- BE SHINUY MAHLAKA BE KUPA LEADKEN RESHIMAT KVUZOT SHEL MAHLAKA LEMALA ( RAK MASAH MALE )
 I $$GRITVW2 Q 0
 Q +$G(@$$W4PRM@("DEP2FAST"))
 ;
HSBNPAY() ;   -- EFSHARUT LEHADPIS HESBON BE MASAH TASHLUMIM
 Q +$G(@$$W4PRM@("HSBNPAY"))
 ;
SRCWIDE() ; -- HIPUS PRITIM MURHAV
 Q +$G(@$$W4PRM@("SRCWIDE"))
 ;
KBVRT() ; 
 Q +$G(@$$W4PRM@("KBVRT"))
 ;
HBNOWDFL() ; -- BE HAKAMAT LAKUH HESHBONIT MIYADIT - BRERAT MIHDAL
 Q +$G(@$$W4PRM@("HBNOWDFL")) 
 ;
MATB() ;
 Q +$G(@$$^W4PL@("MATB")) 
 ;
TEAV() ; 
 Q +$G(@$$^W4PRM@("TEAV")) 
 ;
DA() ; 
 Q +$G(@$$^W4PRM@("DA")) 
 ;
CATEST() ; --PROVERKA K-A (EMV)
 Q +$G(@$$^W4PRM@("CATEST")) 
 ;
CREDFUNC() ; -- CREDIT FUNCTIONS BE MASAH MELZARIM
 Q +$G(@$$^W4PRM@("CREDFUNC")) 
 ; 
TRID() ;
 Q +$G(@$$^W4PRM@("TRID")) 
 ;
NEWCIB() ; 
 I $P($ZV," V",2)>6.99 Q 1
 Q +$G(@$$^W4PRM@("NEWCIB")) 
 ;
GIMA() ; 
 Q +$G(@$$^W4PRM@("GIMA")) 
 ;
ZSTR() ; -- ZESTER ?
 Q +$G(@$$^W4PRM@("ZSTR")) 
 ;
W6FRM() ; -- KIOSK LELO HEARA LE MITBAH
 Q 1
 Q +$G(@$$^W4PRM@("W6FRM")) 
 ;
NOPCCNT() ; -- MISPUR RAK BE MADBEKOT LE PRITIM SHE MUDPASIM BE BON
 Q +$G(@$$^W4PRM@("NOPCCNT")) 
 ;
SAHHZMLK() ; -- LEADPIS BE MISMAH LE MESHALEAH SAH HAZMANOT SHEL LAKUH
 Q +$G(@$$^W4PRM@("SAHHZMLK")) 
 ;
PAR2KTCH() ; -- LO LEADPIS BE MESHALEH PRITIM SHE YAZU MITANUR (PD)
 Q +$G(@$$^W4PRM@("PAR2KTCH")) 
 ;
QNPZG() ; -- BE MADBEKOT ) BIMKOM +
 Q 1  ; -- 16/11/23
 Q +$G(@$$^W4PRM@("QNPZG"))
 ;
MSLKZR() ; -- KOTERET SHEL MESHALEH MEKUZR ILELO SHUM LE TASHLUM
 Q +$G(@$$^W4PRM@("MSLKZR")) 
 ;
CIBEMV() 
 Q +$G(@$$^W4PRM@("CIBEMV")) 
 ;
TNBEMV() 
 Q +$G(@$$^W4PRM@("TNBEMV")) 
 ;
HZMSKONL() ; 
 Q +$G(@$$^W4PRM@("HZMSKONL")) 
 ;
DELERR0() ; --- IPUS HAZMANAT BITUL IM BITUL C-A LO HIZ
 Q +$G(@$$^W4PRM@("DELERR0")) 
 ;
TBNEW() ; --- GIRSA HADASHA SHEL TEN BIS
 Q 1
 Q +$G(@$$^W4PRM@("TBNEW")) 
 ;
HUTIM() ; 
 Q +$G(@$$^W4PRM@("HUTIM")) 
 ;
NOCLDLVZ() ;
 Q +$G(@$$^W4PRM@("NOCLDLVZ")) 
 ;
TKNOMUST() ; -- TOKEN LO HOVA
 Q +$G(@$$^W4PRM@("TKNOMUST")) 
 ;
HBMSDB() ; -- TOKEN LO HOVA
 Q +$G(@$$^W4PRM@("HBMSDB")) 
 ;
HB2LK() ; -- melyz beq lkl zipeayg
 Q +$G(@$$^W4PRM@("HB2LK")) 
 ;
CHNISCR() 
 Q +$G(@$$^W4PRM@("CHNISCR")) 
 ;
AUTOUT() ; 
 Q +$G(@$$^W4PRM@("AUTOUT")) 
 ;
MZSM()
 I +$G(@$$^W4PRM@("MZSM")) Q 1
 N DV S DV=$$^W4MYDVN
 I DV,+$G(@$$^W4PRM@("MZSM",DV)) Q 1
 Q 0
 ;
MAXMZSM()
 I +$G(@$$^W4PRM@("MAXMZSM"))<100 Q $S($$PAPJ:600,1:360)
 Q ^("MAXMZSM")
 ;
TIPCB() ;
 Q +$G(@$$^W4PRM@("TIPCB"))
 ;
QUESMS() ;
 Q +$G(@$$^W4PRM@("QUESMS"))
 ;
SLCEVA() 
 Q +$G(@$$^W4PRM@("SLCEVA"))
 ;
LKWEEK() 
 Q +$G(@$$^W4PRM@("LKWEEK"))
 ;
ZCLKOUT() 
 Q +$G(@$$^W4PRM@("ZCLKOUT"))
 ;
KSHCSH() 
 ;;I $$EMV'=4 Q 0
 Q +$G(@$$^W4PRM@("KSHCSH"))
 ;
REHEV() 
 Q +$G(@$$^W4PRM@("REHEV"))
 ;
NOVWDLVO(STAM) ; -- LO LEHAZIG SHUROT SHE BUTLU BE AZMANA [W4PRMHZG]
 Q +$G(@$$^W4PRM@("NOVWDLVO"))
 ;
EMV4IP() ; 
 Q +$G(@$$^W4PRM@("EMV4IP"))
 ;
PSWARM() ; 
 Q +$G(@$$^W4PRM@("PSWARM"))
 ;
NEWHSV() ; --- MIVNE SHEL HASHAVSEVET HADASHA COLEL MS AKZAA
 Q +$G(@$$^W4PRM@("NEWHSV"))
 ;
BOLET() 
 Q +$G(@$$^W4PRM@("BOLET"))
 ;
STAGE() 
 Q +$G(@$$^W4PRM@("STAGE"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRM0
W4PRM(STAM) ; [ 14.05.18 18:28 ] [ 08.05.18 16:57 ] [ 04.05.18 14:25 ] 
 Q $$^W4GL("P1PRM")
 ;
MLY(STAM) ;
 Q $G(@$$^W4GL("PLUK"))["MLY"
 ;
MLYHUZ(STAM) ;--- MLY YASHAN AL MAHSHEV NIFRAD
 Q +$G(@$$W4PRM@("MLYHUZ"))
 ;
MLYADR(STAM) ;
 Q $G(@$$W4PRM@("MLYADR"))
 ;
MLYMRK(STAM) ;
 Q $G(@$$W4PRM@("MLYMRK"))
 ;
MSD(STAM) ;
 Q +$G(@$$W4PRM@("MSD"))
 ;
MSL(STAM) ;
 Q +$G(@$$W4PRM@("MSL"))
 ;
MSLHUZ(STAM) ;-- ??? LO BE SHIMUSH
 Q (+$G(@$$W4PRM@("MSL"))=2)
 ;
TAW(STAM) ; --- MAAREHET TAW
 Q +$G(@$$W4PRM@("MTAW"))
 ;
TAWMSLH(STAM) ; -- % SKIDKI NA TAW
 Q +$G(@$$W4PRM@("TAWMSLH"))
 ;
MAM(STAM) ; 
 Q +$G(@$$W4PRM@("MAM"))
 ;
LKHN(STAM) ; ??? - LO BE SHIMUSH
 Q +$G(@$$W4PRM@("LKHN"))
 ;
MSDT(STAM) ;-- MISSADA OR TAW
 I $$CALLCENTER Q 0
 I $$MSD!$$TAW Q 1
 Q 0
 ;
NOTSFMVC(STAM) ; -- AHUZ ANAHA HAPPY HOUR LO PAILA LE TOSAFOT
 Q '$G(@$$W4PRM@("TSFMVC"))
 ;
TSFBHNH(STAM) ; -- IM TOSAFOT LE PARIT LELO ANAHA GAM LELO ANAHA
 Q $G(@$$W4PRM@("TSFBHNH"))
 ;
DISCPRC(STAM) ; -- LEHORID ANAHA MI MAHIR
 Q $G(@$$W4PRM@("MHSHAA"))
 ;
REALTIME(STAM) ; -- ANAHA LEFI SHAOT LEFI ZMAN REALI ( LO - LEFI ZMAN KABALAT AZMANA )
 Q $G(@$$W4PRM@("HNHTIM"))
 ;
NEWAI(STAM) ;
 Q 1
 ;
AIN(CD)
 I ($$UR^W4MENU>2)&$$^W4EZAT(CD) Q 1
 Q 0
 ;
NOCHKAI(STAM) ; -- IM LIVDOK BHIRAT MANOT ME COL A-KVUZOT
 Q $G(@$$^W4PRM@("NOCHKAI"))
 ;
MUSTTZ(STAM) ; -- IM LEMALE MISP TZ BE CARTIS LAK HOVA
 Q $G(@$$^W4PRM@("MUSTTZ"))
 ;
TIPMZM(STAM) ; --- LISHOL TIPIM BE TASHLUM BE MEZUMAN
 Q +$G(@$$^W4PRM@("TIPMZM"))
 ;
DMSHMSD(STAM) ; -- IM LAKAHAT DMEY SHERUT MI AZMANOT MISSADA
 Q +$G(@$$^W4PRM@("DMSHMSD"))
 ;
SCANER(STAM) ;
 I $G(@$$^W4GL("PLUK")@($$^W4MYDVN,"SCANER")) Q 1
 Q 0
 ;
MSK(STAM) ;
 I '$G(@$$^W4GL("PLUK")@($$^W4MYDVN,"MSK")) Q 0
 I '$L($G(@$$^W4GL("PLUK")@($$^W4MYDVN,"MSKPORT"))) Q 0
 Q 1
 ;
CATOLD(STAM) ;
 Q 0
 Q +$G(@$$^W4PRM@("CATOLD"))
 ;
ACNTAW(STAM) ; -- AIM LEAFSHER HAFAKAT HESBON I HAAVARAT SHULHAN ME SHULHAN MAHIR
 Q +$G(@$$W4PRM@("ACNTAW"))
 ;
MAXHMK(STAM) ;
 Q 0
 Q +$G(@$$W4PRM@("MAXHMK"))*(100+$$MAM)*.01
 ;
SHAONMGR(STAM) ; --- SHIMUSH SHAON NOCHEHUT RAK BE OPZIYA SHEL MENAEL 
 Q +$G(@$$W4PRM@("SHAONMGR"))
 ;
SHAAZ(STAM) ;
 N PRM
 S PRM=$G(@$$W4PRM@("SHAAZ"),6)
 I PRM?.P!(PRM=0) S PRM=6
 Q PRM
 ;
INPCODE(STAM) ; --- EFSHARUT LEHAKLID KOD PARIT LEMATA LE HIPUS
 I $$^W4TABLET Q 0
 I $G(@$$W4PRM@("INPCODE"))="" Q 1
 Q +$G(@$$W4PRM@("INPCODE"))
 ;
MAXPOS(STAM) ; --- MISPAR EMDOT MAXIMALI
 Q +$G(@$$W4PRM@("MAXPOS"))
 ;
MAXMDP(STAM) ; --- MISPAR MADPESOT MAXIMALI
 Q +$G(@$$W4PRM@("MAXMDP"))
 ;
NOHD(STAM) ; -- MISPAR SHUROT REKOT SHE YESH LEHASHIR BE KOTERET LE DAF IM LOGO
 Q +$G(@$$W4PRM@("NOHD"))
 ;
NOTIPCA(STAM) ; 1 - LO LEKABEL TIP ME CA, .5 - LEKABEL IM SISMA
 Q +$G(@$$W4PRM@("NOTIPCA"))
 ;
MINMH(STAM) ; -- MAHIR MINIMUM LE HAZMANA ( SHULHAN RAGIL )
 Q +$G(@$$W4PRM@("MINMH"))
 ;
MINMHB(STAM) ; -- MAHIR MINIMALI LE SHULHAN BAR
 Q +$G(@$$W4PRM@("MINMHB"))
 ;
QAI1(STAM) ;-- MISP AR ISK-T = 1
 Q +$G(@$$W4PRM@("QAI1"))
 ;
MLZBGPAR(STAM) ; -- =1 - LESHAYEH PRITIM LE MELZAR SHE PATAH AZMANA
 Q +$G(@$$W4PRM@("MLZBGPAR"))
 ;
PRINTDET(STAM) ; -- HADPASAT HESHBONIT BE ZURA MEFURETET
 Q +$G(@$$W4PRM@("PRINTDET"))
 ;
MAXTIP(STAM) ;  HAGBALAT GODEL TIP
 Q $G(@$$W4PRM@("MAXTIP"))
 ;
NODOUBLE(STAM) ; --- LO LIVDOK 2 KARTISIM ZEHIM IM SHUM ZEHE BE TASHLUM
 Q +$G(@$$W4PRM@("NODOUBLE"))
 ;
ULAM(STAM) ; HAZAGAT SHULHANOT BE ZURA SHEL ZIYUR ULAM
 Q +$G(@$$W4PRM@("ULAM"))
 ;
CLOSEBACK(STAM) ; -- IM LISGOR MASAH TASHLUMIM OTOMATI AHR 5 SEC IM YESH ODEF
 Q +$G(@$$W4PRM@("CLSBACK"))
 ;
MAILZ(STAM) ; - IM LISHLOAH DOCH SGR YOM LE MAIL
 Q +$G(@$$W4PRM@("MAILZ"))
 ;
SHEML(STAM) ; - IM LISHLOAH LE MITBAH SHEM BE LOAZIT
 Q +$G(@$$W4PRM@("SHEML"))
 ;
SEFAHNM(STAM) ; -- IM LEADPIS SHEM HA-MAZMIN BE SHULHAN MAHIR
 Q +$G(@$$W4PRM@("SEFAHNM"))
 ;
JUMPTBL(STAM) ; -- EFSHARUT LAAVOR MI HESHBON LE HESHBON ( SUPER )
 Q +$G(@$$W4PRM@("JUMPTBL",$$^W4MYDVN))
 ;
MSF(STAM) ;
 Q +$G(@$$W4PRM@("MSF"))
 ;
COLXMLZ(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLXMLZ"))
 I 'A S A=3
 Q A
 ;
COLYMLZ(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLYMLZ"))
 I 'A S A=5
 Q A
 ;
COLXSH(STAM) ;
 N A
 S A=+$G(@$$W4PRM@("MSF","COLXSH"))
 I 'A S A=4
 Q A
 ;
COLYSH(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLYSH"))
 I 'A S A=5
 Q A
 ;
COLXPRT(STAM) ;
 N A S A=+$G(@$$W4PRM@("COLXIT"))
 Q A
 ;
COLYPRT(STAM) ;
 N A S A=+$G(@$$W4PRM@("COLYIT"))
 Q A
 ;
COLXPRTMSF(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLXPRT"))
 I 'A S A=4
 Q A
 ;
COLYPRTMSF(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLYPRT"))
 I 'A S A=5
 Q A
 ;
COLXADD(STAM) ;
 N A
 S A=+$G(@$$W4PRM@("MSF","COLXADD"))
 I 'A S A=2
 Q A
 ;
COLYADD(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLYADD"))
 I 'A S A=5
 Q A
 ;
COLXGR(STAM) ;
 N A S A=+$G(@$$W4PRM@("COLXGR"))
 Q A
 ;
COLYGR(STAM) ;
 N A S A=+$G(@$$W4PRM@("COLYGR"))
 Q A
 ;
COLXGRMSF(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLXGR"))
 I 'A S A=4
 Q A
 ;
COLYGRMSF(STAM) ;
 N A S A=+$G(@$$W4PRM@("MSF","COLYGR"))
 I 'A S A=6
 Q A
 ;
MSLMHMIN(STAM) ; MAHIR MINIMUM SHEL MISHLOAH
 Q +$G(@$$W4PRM@("MSLMHMIN"))
 ;
NOPSWZERO(STAM) ; -- LO LISHOL SISMA LE PARIT 0
 Q +$G(@$$W4PRM@("NOPSW0"))
 ;
NOSG(STAM) ;-- IM EFSHAR LEHAMSHIH AVODA IM YOM KODEM LO SAGUR
 Q +$G(@$$W4PRM@("NOSG"))
 ;
CALLCENTER(STAM) ;
 I $G(%ARG("CALLCENTER")) Q %ARG("CALLCENTER")
 I $$GETP^%W1PRM("CALLCENTER")'="" Q $$GETP^%W1PRM("CALLCENTER")
 Q +$G(@$$W4PRM@("CALLCENTER"))
 ;
TELEPHONE(STAM) ; -- CALL CENTER KMO BE YASHKA
 Q (+$$CALLCENTER=.5)
 ;
MSDR(STAM) ; --- KVUZAT MISSADOT
 Q +$G(@$$W4PRM@("MSDR"))
 ;
HZGSHALL(STAM) ; -- MALEHAZIG BE ZURA TAVLAIT SHEL HA-ULAM
 Q +$G(@$$W4PRM@("HZGSHALL"))
 ;
OLDMVC11(STAM) ; -- ??? - NIDME SHE KVAR LO BE SHIMUSH
 Q +$G(@$$W4PRM@("OLDMVC11"))
 ;
Z24(STAM) ; -- IM MISSADA OVEDET 24 SHAOT
 Q +$G(@$$W4PRM@("Z24"))
 ;
PSWREM(STAM) ; -- SISMA LE CNISA ME RAHOK
 Q $G(@$$W4PRM@("PSWREM"))
 ;
PSWALL(STAM) ; -- SISMA KLALIT 
 Q $G(@$$W4PRM@("SISALL"))
 ;
RESTORAN(STAM) ; -- IM KAYAM MEMSHAK LE RESTORAN
 Q $G(@$$W4PRM@("RESTORAN"))
 ;
PSWDRG(STAM) ; -- IM LIKVOA LE COL MENAHEL SISMA MISHELO
 Q +$G(@$$W4PRM@("PSWDRG"))
 ;
BGPSW(STAM) ; -- KAMA SIFROT KIDOMET YESH BE KARTIS MENAHEL
 Q +$G(@$$W4PRM@("BGPSW"))
 ;
RNDOWN(STAM) ;
 Q +$G(@$$W4PRM@("RNDOWN"))
 ;
NOPCHBCD(STAM) ;
 Q +$G(@$$W4PRM@("NOPCHBCD"))
 ;
NOKFLMVC(STAM) ;
 Q +$G(@$$W4PRM@("NOKFLMVC"))
 ;
GCOUPASR(STAM) ;
 Q +$G(@$$W4PRM@("GCOUPASR"))
 ;
GCOUPC(STAM) ;
 Q +$G(@$$W4PRM@("GCOUPC"))
 ;
TOAICD(STAM) ;
 Q $G(@$$W4PRM@("TOAICD"))
 ;
MYCHECK(STAM)
 Q $G(@$$W4PRM@("MYCH"))
 ;
NOFREECAUSE(STAM) ;
 Q $G(@$$W4PRM@("NOFRECAU"))
 ;
FNDDOP(STAM) ;
 Q $G(@$$W4PRM@("FNDDOP"))
 ;
MSDBAR(STAM) ;
 Q $G(@$$W4PRM@("MSDBAR"))
 ;
SNDOUT(STAM) ;
 Q $G(@$$W4PRM@("SNDOUT"))
 ;
OLDPC(STAM)
 ;;Q $G(@$$W4PRM@("OLDPC"))
 I $G(@$$W4PRM@("BIGFONT"))>0,$G(@$$W4PRM@("BIGFONT"))<3 Q 0
 Q 1
 ;
SLAU(STAM) ;
 Q $G(@$$^W4PRM@("SLAU"))
 ;
DELDEL(STAM) ;
 Q $G(@$$^W4PRM@("DELDEL"))
 ;
TAWMSD(STAM) ;
 Q $G(@$$^W4PRM@("TAWMSD"))
 ;
VCNOPC(STAM) ;
 Q $G(@$$^W4PRM@("VCNOPC"))
 ;
GLISTALL(STAM) ;
 Q $G(@$$^W4PRM@("GLISTALL"))
 ;
DELDISCNOASKDLPK(STAM) ;
 Q $G(@$$^W4PRM@("DELDISCNOASKDLPK"))
 ;
BSL(STAM) ;
 Q $G(@$$^W4PRM@("BSL"))
 ;
BSNOPCHB(STAM) ;
 Q $G(@$$^W4PRM@("BSNOPCHB"))
 ;
MP(STAM) ;
 Q $G(@$$^W4PRM@("MP"))
 ;
WASPSW(STAM) ;
 Q $G(@$$^W4PRM@("WASPSW"))
 ;
COUPPH(STAM) ;
 Q $G(@$$^W4PRM@("COUPPH"))
 ;
TAWDLV(STAM) ;
 Q $G(@$$^W4PRM@("TAWDLV"))
 ;
PCMV(STAM) ;
 Q $G(@$$^W4PRM@("HZMHV"))
 ;
MOTH(STAM) ;
 Q +$G(@$$^W4PRM@("MOTH"))
 ;
MAILBIT(STAM) ;
 Q +$G(@$$^W4PRM@("MAILBIT"))
 ;
NOMYDETS(STAM) ;
 Q +$G(@$$^W4PRM@("NOMYDETS"))
 ;
NOLHBAFTAX(STAM) ;
 Q +$G(@$$^W4PRM@("NOLHBAFTAX"))
 ;
HSBENG(STAM) ;
 Q +$G(@$$^W4PRM@("HSBENG"))
 ;
HSBHBR(STAM) ;
 Q +$G(@$$^W4PRM@("HSBHBR"))
 ;
CDHNHMP(STAM)  ;
 Q $G(@$$^W4PRM@("CDHNHMP"))
 ;
CDHNHMPP(STAM)  ;
 Q $G(@$$^W4PRM@("CDHNHMPP"))
 ;
DEFISLK(STAM)  ;
 Q $G(@$$^W4PRM@("DEFISLK"))
 ;
ROUND(STAM) ;
 Q $G(@$$^W4PRM@("ROUND"))
 ;
AUTOFAX(STAM) ;
 Q $G(@$$^W4PRM@("AUTOFAX"))
 ;
MEUHAD(STAM) ;
 Q $G(@$$^W4PRM@("MEUHAD"))
 ;
SHIHVA(STAM) ;
 Q $G(@$$^W4PRM@("SHIHVA"))
 ;
GCOUPIT(STAM) ;
 Q $G(@$$^W4PRM@("GCOUPIT"))
 ;
GCOUPPY(STAM) ;
 Q $G(@$$^W4PRM@("GCOUPPY"))
 ;
SGDEP(STAM) ; 
 Q $G(@$$^W4PRM@("DOCHP"))=2
 ; 
OPENADD(STAM) ; 
 Q +$G(@$$^W4PRM@("OPENADD"))
 ; 
AUTOGR(STAM) ; 
 Q +$G(@$$^W4PRM@("AUTOGR"))
 ; 
AUTOIT(STAM) ; 
 Q +$G(@$$^W4PRM@("AUTOIT"))
 ; 
ONEGR(STAM) ; 
 Q +$G(@$$^W4PRM@("ONEGR"))
 ; 
HZGDEP(STAM) ; 
 Q +$G(@$$^W4PRM@("HZGDEP"))
 ;
NOROMA(STAM) ; 
 Q +$G(@$$^W4PRM@("NOROMA"))
 ;
ABCENG(STAM) ;
 Q +$G(@$$^W4PRM@("ABCENG"))
 ;
NOHZGPRC(STAM) ;
 Q +$G(@$$^W4PRM@("NOHZGPRC"))
 ;
PTHDLY(STAM) ;
 Q +$G(@$$^W4PRM@("PTHDLY"))
 ;
MSLSD(STAM) ;
 Q +$G(@$$^W4PRM@("MSLSD"))
 ;
MAXMSLSD(STAM) ;
 Q +$G(@$$^W4PRM@("MAXMSLSD"))
 ;
LKKLALI(STAM) ;
 Q $G(@$$^W4PRM@("LKKLALI"))
 ;
SNDDLVKTC(STAM) ;--- SHIDUR LE MITBAH YADANI
 Q $G(@$$^W4PRM@("SNDDLKTC"))
 ;
HB2EMAIL(STAM) ;--- MAKOR HESB 2 MAIL
 Q $G(@$$^W4PRM@("HB2EMAIL"))
 ;
ASKWAITERNUMBER(STAM) ;
 Q +$G(@$$^W4PRM@("ASKWTR"))
 ;
NOPART(STAM) ; 
 Q +$G(@$$^W4PRM@("NOPART"))
 ;
CRCARDFIRST(STAM) ; 
 Q +$G(@$$^W4PRM@("CRCARD1"))
 ;
SMS2BAAL(STAM) ; 
 Q $TR($G(@$$^W4PRM@("SMS2BAAL")),"- .,","")
 ;
ITRA(STAM) ; 
 Q +$G(@$$^W4PRM@("ITRA"))
 ;
DESERTCD(STAM) ; 
 Q $G(@$$^W4PRM@("DESERT"))
 ;
CHECKERCD(STAM) ; 
 Q $G(@$$^W4PRM@("CDCHKER"))
 ;
SF(STAM) ; 
 Q $G(@$$^W4PRM@("SF"))
 ;
DELIS(STAM) ; 
 Q $G(@$$^W4PRM@("DELIS"))
 ;
NOTSFMSD(STAM) ; 
 Q $G(@$$^W4PRM@("NOTSFMSD"))
 ;
ACNMSL(STAM) ; 
 Q $G(@$$^W4PRM@("ACNMSL"))
 ;
MDPMSL(STAM) ; 
 Q $G(@$$^W4PRM@("MDPMSL"))
 ;
ZBIG(STAM) ; 
 Q +$G(@$$^W4PRM@("ZBIG"))
 ;
NOVWDEL(STAM) ; 
 Q +$G(@$$^W4PRM@("NOVWDEL"))
 ;
MAILCONT(STAM) ; 
 Q +$G(@$$^W4PRM@("MAILCONT"))
 ;
NOVWMANA(STAM) ;
 Q +$G(@$$^W4PRM@("NOVWMANA"))
 ;
SNBC(STAM)
 Q +$G(@$$^W4PRM@("SNBC"))
 ;
NOCBET(STAM)
 Q +$G(@$$^W4PRM@("NOCBET"))
 ;
NOPCCB(STAM)
 Q +$G(@$$^W4PRM@("NOPCCB"))
 ;
NOPCCBHB(STAM) ;
 Q +$G(@$$^W4PRM@("NOPCCBHB"))
 ;
NOASKDEL(STAM) ; 
 Q +$G(@$$^W4PRM@("NOASKDEL"))
 ;
NODLVORD(STAM) ; 
 I '$$HZMH^W3PRM Q 0
 Q +$G(@$$^W4PRM@("NODLVORD"))
 ;
CMNT2CUS(STAM) ; 
 Q +$G(@$$^W4PRM@("COMMENT2CUSTOM"))
 ;
NOSVSHOW(STAM) ; 
 Q +$G(@$$^W4PRM@("NOSVSHOW"))
 ;
ADSHAA(STAM) ; 
 Q +$G(@$$^W4PRM@("ADSHAA"))
 ;
PLUSTIME(STAM) ; -- DOBAVKA VREMENI V MISHLOHIM ( ADSHAA )
 Q +$G(@$$^W4PRM@("PLUSTIME"))
 ;
LMAM(STAM) ; --- VOZMO-T POKAZAYVATM VAHIR LELO MAM
 Q +$G(@$$^W4PRM@("LMAM"))
 ;
BOCUST(STAM) ; -- LEHAZIG CARTIS LAKUAH V VERHU MENU
 Q +$G(@$$^W4PRM@("BOCUST"))
 ;
NOMHTM(STAM) ; --- TM LEHADPIS LELO MAHIRIN ( BRERAT MICHDAL )
 Q +$G(@$$^W4PRM@("NOMHTM"))
 ;
HBNOWBIG(STAM) ;--- HESB MIYADIT LEHADPIS LE MADP GDOLA
 Q +$G(@$$^W4PRM@("HBNOWBIG"))
 ;
SGDLVASR(STAM) ;-- LO LISGOR HAZMANT MISHLOAH IM MESHALMIM BE HAKAFA
 Q +$G(@$$^W4PRM@("SGDLVASR"))
 ;
NOBDNOCHMNL(STAM) ; -- MENAHEL TAMID NOCHEAH
 Q +$G(@$$^W4PRM@("NOBDNOCHMNL"))
 ;
NOW2EMAIL(STAM) ; -- HESB-T MIYADIT TO MAIL BE ZMAN SHIGUR
 Q +$G(@$$^W4PRM@("NOW2EMAIL"))
 ;
PRNLOCAL(STAM) ; -- LEHADPIS HAETEK AZMANA NA LOC MADP ( LO BESHIMUS )
 Q +$G(@$$^W4PRM@("PRNLOCAL"))
 ;
NOCHKPSW(STAM) ;  -- LO LIVDOK SISMAOT
 Q +$G(@$$^W4PRM@("NOCHKPSW"))
 ;
TMASR(STAM)
 Q +$G(@$$^W4PRM@("TMASR"))
 ;
NOPCASTM(STAM) ; -- LO LEHADPIS HESHBON ASHRAI AHR TM
 Q +$G(@$$^W4PRM@("NOPCASTM"))
 ;
NIGHT(STAM) ;--- MISHLOHIM BA LAILA
 Q +$G(@$$^W4PRM@("NIGHT"))
 ;
LOGODET(STAM) ;--- LOGO & DETAILS BO OTO SHURA
 Q +$G(@$$^W4PRM@("LOGODET"))
 ;
NOSGTAW(STAM) ;--- LO LISGOR HAZMANOT TAW AHAREY TASHLUM
 Q +$G(@$$^W4PRM@("NOSGTAW"))
 ;
NOKFLLK(STAM) ; 
 Q +$G(@$$^W4PRM@("NOKFLLK"))
 ;
NOMZMDLV(STAM) ; -- LO LEHAZIG MEZUMAN KE SUG TASHLUM AL MISHLOAH
 Q +$G(@$$^W4PRM@("NOMZMDLV"))
 ;
NOLELO(STAM) ; -- LO LEHAZIG HODAA "LELO HADPASA"
 Q +$G(@$$^W4PRM@("NOLELO"))
 ;
HBNOWMONTH(STAM) ; ---- HESBONIOT MIYADIOT LEHOCI BSOF HODESH LE COL HAZMANA
 Q +$G(@$$^W4PRM@("HBNOWMONTH"))
 ;
ZAHI(STAM) ; 
 Q +$G(@$$^W4PRM@("ZAHI")) 
 ;
IT2WEB(STAM) ; ---- SEND ITEMS 2 WEB AFTER CHANGE ITEM IN ITEM TABLE
 Q +$G(@$$^W4PRM@("IT2WEB")) 
 ;
DELIMGR(STAM) ; --- PSEUDO ITEMS GROUP FOR DELIMITER BETWEEN ORDER LINES
 I '$$NODLVORD Q 0
 Q $G(@$$^W4PRM@("DELIMGR")) 
 ;
FASTPAY(STAM) ; --- FAST CA, SODEXO, TENBIS IN ALL KIND OF TABLE
 Q +$G(@$$^W4PRM@("FASTPAY")) 
 ;
CITYINPUT(STAM) ; --- HAKLADAT IR
 Q +$G(@$$^W4PRM@("CITYINP")) 
 ;
SLHFK(STAM) ;--- HAFKADAT MEZUMAN SHEL SLIHIM LE KUPA 
 Q +$G(@$$^W4PRM@("SLHFK")) 
 ;
TEMPCRED(STAM)
 I $$SF^W4PRM Q 1
 Q +$G(@$$^W4PRM@("TEMPCRED")) 
 ;
GRPIC(STAM) ;
 Q +$G(@$$^W4PRM@("GRPIC")) 
 ;
TABLET(STAM) ;
 Q +$G(@$$^W4PRM@("TABLET")) 
 ;
ZAUTO(STAM) ;
 Q $G(@$$^W4PRM@("ZAUTO")) 
 ;
CLSDLV(STAM) ;
 Q $G(@$$^W4PRM@("CLSDLV")) 
 ;
SND2EMAIL(STAM) ;
 Q +$G(@$$^W4PRM@("SND2EMAIL")) 
 ;
NOCUTFIRST ; 
 Q +$G(@$$^W4PRM@("NOCUTFIRST")) 
 ;
PCCA1 ; 
 Q +$G(@$$^W4PRM@("PCCA1")) 
 ;
PIZUIM(STAM) ; 
 Q $G(@$$^W4PRM@("PIZUIM")) 
 ;
CENTER(STAM) ; 
 Q $G(@$$^W4PRM@("CENTER")) 
 ;
MSHHBNOW(STAM)
 Q $G(@$$^W4PRM@("MSHHBNOW")) 
 ;
NOCUTASR(STAM) ; 
 Q +$G(@$$^W4PRM@("NOCUTASR")) 
 ; 
PCTIPCA(STAM) ; 
 Q +$G(@$$^W4PRM@("PCTIPCA")) 
 ; 
POLYGON(STAM) ;
 I $$TELEPHONE Q 1
 I $D(@$$^W4GL("W4PLGN"))>9 Q 1 
 Q 0 
 ;
ADDFREE(STAM) 
 Q $G(@$$^W4PRM@("ADDFREE")) 
 ;
NOBIGMDP(STAM) 
 I $$^W4LKH Q 0
 Q +$G(@$$^W4PRM@("NOBIGMDP")) 
 ;
PIZUL(STAM) ; -- LO BE SHIMUSH ?
 Q +$G(@$$^W4PRM@("PIZUL")) 
 ;
TABLETPAD1(STAM) ; 
 Q +$G(@$$^W4PRM@("TABLET","PAD1"),2) 
 ;
DLVWEB(STAM) ; 
 Q $G(@$$^W4PRM@("DLVWEB"))
 ;
DOPOPT(STAM) ; 
 Q $G(@$$^W4PRM@("DOPOPT")) 
 ;
TBDEL(STAM) ; 
 Q $G(@$$^W4PRM@("TBDEL")) 
 ; 
LL(STAM) ; 
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D  Q:OK
 .I $$LL^W4SUGS(N) S OK=1 
 Q OK
 ;
GRITVW(STAM) ; 
 I $$GETP^%W1PRM("FULLFAST") Q 0
 Q $$GRITVW1
 ;
GRITVW1(STAM) 
 I $$^W4TABLET Q 0
 I $$^W4SMALL Q 0
 N NMB S NMB=$$GETP^%W1PRM("NMB")
 I $$^W4MSL(NMB) Q 0
 Q $$GRITVW2
 ;
GRITVW2(STAM) ;
 Q +$G(@$$^W4PRM@("GRITVW")) 
 ;
SHORTFN(STAM) ;
 Q $G(@$$^W4PRM@("SHORTFN")) 
 ;
NOADDWND(STAM)
 I $$^W4SMALL Q 1
 I $$^W4TABLET Q 1
 N NW S NW=$G(@$$^W4PRM@("NOADDWND")) 
 I NW'=0,NW'=1 S @$$^W4PRM@("NOADDWND")=1
 Q +$G(@$$^W4PRM@("NOADDWND")) 
 ;
NOTNBPAY(STAM) ;
 Q +$G(@$$^W4PRM@("NOTNBPAY")) 
 ;
CMNTMAIL(STAM) ;
 Q +$G(@$$^W4PRM@("CMNTMAIL")) 
 ;
SHEETBG(STAM) ;-- LEAZIG BG SHEL PRITIM BE CEVA SHEL MAKASH KVUZA
 Q +$G(@$$^W4PRM@("SHEETBG")) 
 ;
NODLVER(STAM) ; -- LO LEHAMSHIH AZMANA IM AZOR LO NIMZA
 Q +$G(@$$^W4PRM@("NODLVER")) 
 ;
NOPCMZMN(STAM) ; -- LO LEHADPIS SHEM AMAZMIN BE HESHBON
 Q +$G(@$$^W4PRM@("NOPCMZMN")) 
 ;
CHCREST(STAM) 
 Q +$G(@$$^W4PRM@("CHCREST")) 
 ;
SHOWMKBL(STAM) ;
 Q $G(@$$^W4PRM@("SHOWMKBL"))
 ;
PAIDTIME(STAM) ;
 Q $G(@$$^W4PRM@("PAIDTIME"))
 ;
DSHL(STAM) ;
 Q $G(@$$^W4PRM@("DSHL"))
 ;
NOSPLN0(STAM) ;
 Q +$G(@$$^W4PRM@("NOSPLN0"))
 ;
NOSPACE2(STAM) ;
 Q +$G(@$$^W4PRM@("NOSPACE2"))
 ;
NOQ1(STAM) ;
 Q +$G(@$$^W4PRM@("NOQ1"))
 ;
HZMRKZ(STAM) ;
 Q +$G(@$$^W4PRM@("HZMRKZ"))
 ;
HZPCSP(STAM) ;
 Q +$G(@$$^W4PRM@("HZPCSP"))
 ;
LINE(STAM) ;
 Q +$G(@$$^W4PRM@("LINE"))
 ;
PCTIME(STAM) ;
 Q +$G(@$$^W4PRM@("PCTIME"))
 ;
EDAIDFLT(STAM) ;
 Q +$G(@$$^W4PRM@("EDAIDFLT"))
 ;
FCTISHZC(STAM) ;
 Q +$G(@$$^W4PRM@("FCTISHZC"))
 ;
SGNPDF(STAM) ;
 Q +$G(@$$^W4PRM@("SGNPDF"))
 ;
NOZPT(STAM) ;
 Q +$G(@$$^W4PRM@("NOZPT"))
 ;
OLDDAT(STAM) ;
 N R S R=$R
 I +$G(@$$^W4PRM@("OLDDAT")) Q 1
 ;;S:$L(R) R=$D(@R)
 Q 0
 ;
QNPARHZ(STAM) 
 Q $G(@$$^W4PRM@("QNPARHZ")) 
 ;
KOTACNT(STAM) ; 
 Q $G(@$$^W4PRM@("KOTACNT")) 
 ;
BAITDIRA(STAM) ; 
 Q $G(@$$^W4PRM@("BAITDIRA")) 
 ;
SHOWTIME(STAM) ; 
 Q $G(@$$^W4PRM@("SHOWTIME")) 
 ;
J5(STAM) ; 
 Q $G(@$$^W4PRM@("J5")) 
 ;
NOCHNTM(STAM) ; 
 Q $G(@$$^W4PRM@("NOCHNTM")) 
 ;
 
 
 
 
 
 
 
 
 
 
 

W4PRMADM
W4PRMADM ; [ 04.05.25 15:13 ] [ 07.07.24 17:35 ] [ 15.02.24 08:18 ] 
GET ;
 S ESEKNAME=$G(@$$^W4PL@("ESEK",1))
 S NIK=$G(@$$^W4PL@("ESEK",1.5))
 ;
 F II="MSL","NODLVORD","POS0","MSF","MAXPOS","MAXMDP","PRINTCHK","MAILZ","MAILBIT","NOSG","Z24","PSWREM","NOCHKDAT","RESTORAN","MP","BSL","MYCHECK","SNDOUT","SNBC","EMV","KBENG","DEFISLK","SMS2BAAL","IT4WEB","ZOPNDEL","MITEMS" D
 .S @II=$G(@$$^W4PRM@(II))
 ;
 I EMV=4,$$NOSND^W4SNDEMV S EMV=5
 ;
 S NOSVSHOW='$G(@$$^W4PRM@("NOSVSHOW"))
 ;
 S NEWMLY=$$NEWMLY^W3PRM
 S MSD=$S($$SUPER^W3PRM:4,$$MSDBAR^W4PRM:3,$$TAW^W4PRM:2,$$MSD^W4PRM:1,1:0)
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMADM-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 S @$$^W4PRM@("SNDEMV4")=0
 F II="MSL","NODLVORD","POS0","MSF","MAXPOS","MAXMDP","PRINTCHK","MAILZ","MAILBIT","NOSG","Z24","PSWREM","NOCHKDAT","RESTORAN","MP","BSL","MYCHECK","SNDOUT","SNBC","KBENG","DEFISLK","SMS2BAAL","IT4WEB","ZOPNDEL","MITEMS" D
 .S @$$^W4PRM@(II)=$G(@II)
 ;
 I EMV=4 S @$$^W4PRM@("EMV")=4 S @$$^W4PRM@("SNDEMV4")=1
 ;
 S @$$^W4PRM@("NOSVSHOW")='NOSVSHOW
 
 ;
 K @$$^W4GL("W3PRM")@("SUPER")
 S @$$^W4PRM@("MSD")=0
 S MTAW=$G(@$$^W4PRM@("MTAW"))
 S @$$^W4PRM@("MTAW")=0
 S @$$^W4PRM@("MSDBAR")=0
 ;
 S @$$^W4GL("W3PRM")@("NEWMLY")=NEWMLY
 D
 .I MSD=4 S @$$^W4GL("W3PRM")@("SUPER")=1 Q
 .I MSD=3 S @$$^W4PRM@("MSDBAR")=1,@$$^W4PRM@("MSD")=1 Q
 .I MSD=2 D
 ..I MTAW S @$$^W4PRM@("MTAW")=MTAW Q
 ..S @$$^W4PRM@("MTAW")=1
 .I MSD=1 S @$$^W4PRM@("MSD")=1 Q
 ;
 I '$$SUPER^W3PRM S @$$^W4PRM@("MH00")=0
 ;
 I $$SUPER^W3PRM=1 D
 .S @$$^W4GL("W3PRM")@("NEWMLY")=1
 .S @$$^W4GL("W3PRM")@("ONEGLPAR")=1
 .S @$$^W4GL("W3PRM")@("NOTSFMSD")=1
 .K @$$^W4GL("W4TIPAH")
 .
 .S ^P1PRM("NOTIPALL")=1
 .
 .S @$$^W4GL("W4ANS")@("DEL","WHOSUBMIT")="$$GETWHO^W4PRMGN"
 .S @$$^W4GL("W4ANS")@("DISCIT","WHOSUBMIT")="$$GETWHO^W4PRMGN"
 .S @$$^W4GL("W4ANS")@("DISCOUNT","WHOSUBMIT")="$$GETWHO^W4PRMGN"
 .S @$$^W4GL("W4ANS")@(6,"WHOSUBMIT")="$$GETWHO^W4PRMGN"
 .S @$$^W4GL("W4ANS")@("DEL","CAUSEDEL")=0
 .S @$$^W4GL("W4ANS")@("DISCIT","CAUSEDISC")=0
 .S @$$^W4GL("W4ANS")@("DISCOUNT","CAUSEDISC")=0
 .S @$$^W4GL("W4ANS")@("6","CAUSEDISC")=0
 .S @$$^W4GL("W4ANS")@("DEL","EXIT2KITCHEN?")=0
 .
 .F II="NODLVORD","MSF","POS0","RESTORAN","LL","ULAM","CHNORD" D
 ..S @$$^W4PRM@(II)=0
 ;
 S @$$^W4PL@("ESEK",1)=$$INVH^%L1FRM(ESEKNAME)
 S @$$^W4PL@("ESEK",1.5)=$$INVH^%L1FRM(NIK)
 I '$G(@$$^W4PRM@("MSF")) K @$$^W4PRM@("MSF")
 ;
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMAHP
W4PRMAHP(NMB) ; [ 23.08.17 14:54 ] [ 21.09.13 18:16 ] [ 17.11.09 07:20 ] [
 N SUGS
 S SUGS=$$SUGS^W4L(NMB) I SUGS="" Q ""
 Q $P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",8)
 ;;
 ;; --- OLD -- 23/08/17
 I SUGS,$G(@$$^W4PRM@("AHP",SUGS)) Q 1
 Q +$G(@$$^W4PRM@("AHP"))
 
 
 

W4PRMAIL
W4PRMAIL ; [ 02.06.21 17:35 ] [ 01.06.21 13:25 ] [ 31.05.21 14:57 ] 
GET ;
 F II="MAILGR","PATH","TO1","TO2","TO3","TO4","FROM","SMTP","USER","PSW" D
 .S @II=$G(@$$^W4PRM@("MAILZ",II))
 ;
 I TO1="",$G(@$$^W4PRM@("MAILZ","TO"))'="" S TO1=^("TO")
 ;
 S MAILBTTO=$G(@$$^W4PRM@("MAILBTTO"))
 S HB2EMAIL=$G(@$$^W4PRM@("HB2EMAIL"))
 S MAILHVTO=$G(@$$^W4PRM@("MAILHV","TO"))
 S MAILHVHD=$G(@$$^W4PRM@("MAILHV","HEAD"))
 S MYIP=$G(@$$^W4PRM@("MYIP"))
 S SGNPDF=$G(@$$^W4PRM@("SGNPDF"))
 S BITSMS=$G(@$$^W4PRM@("BITSMS"))
 S MELEL=$G(@$$^W4PRM@("MELEL"))
 S BIDCAUT=$G(@$$^W4PRM@("BIDCAUT"))
 S SMSCONT=$G(@$$^W4PRM@("SMSCONT"))
 S SMSTAW=$G(@$$^W4PRM@("SMSTAW"))
 S SMSMAIL=$G(@$$^W4PRM@("SMSMAIL"))
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMAIL-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F II="MAILGR","PATH","TO1","TO2","TO3","TO4","FROM","SMTP","USER","PSW" D
 .S @$$^W4PRM@("MAILZ",II)=$G(@II)
 ;
 S @$$^W4PRM@("MAILBTTO")=MAILBTTO
 S @$$^W4PRM@("HB2EMAIL")=HB2EMAIL
 S @$$^W4PRM@("MAILHV","TO")=MAILHVTO
 S @$$^W4PRM@("MAILHV","HEAD")=MAILHVHD
 ;
 S @$$^W4PRM@("MYIP")=MYIP
 S @$$^W4PRM@("SGNPDF")=SGNPDF
 S @$$^W4PRM@("BITSMS")=BITSMS
 S @$$^W4PRM@("MELEL")=$$INVH^%L1FRM(MELEL)
 S @$$^W4PRM@("BIDCAUT")=$$INVH^%L1FRM(BIDCAUT)
 S @$$^W4PRM@("SMSCONT")=$$INVH^%L1FRM(SMSCONT)
 S @$$^W4PRM@("SMSTAW")=$$INVH^%L1FRM(SMSTAW)
 S @$$^W4PRM@("SMSMAIL")=SMSMAIL
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMALL
W4PRMALL ; [ 11.08.25 13:47 ] [ 01.04.25 10:11 ] [ 25.04.23 20:55 ] 
 N (JB,%ARG,%REM)
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<br>" D ^W4BCK
 ;
 W "<table cellspacing=""0"" border=""0"" width=""80%"">",!
  W "<tr>"
   W "<td width=""5%"">"
    W "<img src=""w4find.png"" onClick=""SearchText()"" "
    W "style=""cursor:pointer;width:"_$$^W4KF(25)_"px;height:"_$$^W4KF(25)_"px"" />"
   W "</td>"
   W "<td style=""font-size:"_$$^W3FSZ(14)_";text-align:center"" >",!
    W $$^%W1DICT("ALLPARAMETERSLIST")
   W "</td>",! 
  W "</tr>",!
 W "</table>",!
 W "<p></p>",! 
 ;
 W "<table cellspacing=""0"" border=""1"" width=""80%"">",!
 S T="" F I=1:1 S T=$T(LAB+I) Q:T["Q  ;"  D
 .S CDSCR=$P(T,";",2) 
 .S NMSCR=$P(T,";",3) 
 .S URL=$P(T,";",4)
 .W "<tr >",!
 . W "<td colspan=""2"" style=""background-color:brown;color:white;;border:white 1px solid;text-align:center;font-weight:bold"">",!
 .  W $$^%W1DICT(NMSCR)  
 . W "</td>"
 .W "</tr>",!
 .K MRKVZ
 .D FRMRKV^%W1FREPA(CDSCR)
 .;
 .S N="" F K=1:1 S N=$O(MRKVZ(N)) Q:N=""  D
 ..S NMRKV=$G(MRKVZ(N,1))
 ..S NMRKV=$$SPA^%L1FRM(NMRKV)
 ..S NMRKV0=NMRKV
 ..I NMRKV0["]" S NMRKV0=$P(NMRKV0,"]",$L(NMRKV0,"]"))
 ..I NMRKV0["""" S NMRKV0=$P(NMRKV0,"""",$L(NMRKV0,""""))
 ..S NMRKV0=$$INVH^%L1FRM(NMRKV0)
 ..S NMRKV0=$$RPL^%L1FRM(NMRKV0,"'","\'")
 ..S NMRKV=$TR(NMRKV,"'""""","")
 ..N COD,VWPRM S COD=CDSCR,VWPRM=""
 ..N RKV S RKV=$G(MRKVZ(N,"ID")) Q:RKV="" 
 ..S RKV=COD_"^"_RKV
 ..S VL=$$VV^%W1FREPA(N)
 ..W "<tr id=""tr"_K_""" OnClick=""ClickRkv('"_URL_"','"_NMRKV0_"','"_RKV_"',this)"" style=""cursor:pointer"
 ..W """ >",!
 .. W "<td id="""_RKV_""" width=""70%"" style="""_$S(K#2:"",1:"background-color:#eaeaea")
 ..  I RKV=$$GETP^%W1PRM("CURPRMALL") W ";border:2px solid brown" 
 .. W """ >"
 ..  W $$H2U^%L1FRM(NMRKV)
 .. W "</td>" 
 .. W "<td style=""font-weight:bold;text-align:center;background-color:lightyellow"
 ..  I RKV=$$GETP^%W1PRM("CURPRMALL") W ";border:2px solid brown" 
 .. W """><div style=""pointer-events:none"">"_VL_"</div></td>"
 ..W "</tr>",!
 W "</table>",!
 W "<p></p>",!
 D ^W4BCK
 W "</div>",!
 Q
 ;
 ;
LAB ; 
 ;W4PRMHZG;SHOWSCREENPARAMETERS;w4prmdef.jsp?JB=0&SCRN=W4PRMHZG&HD=SHOWSCREENPARAMETERS&FIRST=1&SEARCH=1
 ;W4PRMGN1;GENERALPARAMETERS;w4prmgn1.jsp?JB=0&FIRST=1
 ;W4PRMGN2;PAYMPARAMETERS;w4prmgn2.jsp?JB=0&FIRST=1
 ;W4PRMGN3;ORDERPROCESSPARAMETERS;w4prmgn3.jsp?JB=0&FIRST=1
 ;W4PRMGN4;DELDISCPARAMETERS;w4prmgn4.jsp?JB=0&FIRST=1
 ;W4PRMBON;BONWNDPARAMETERS;w4prmdef.jsp?JB=0&SCRN=W4PRMBON&HD=BONWNDPARAMETERS&FIRST=1
 ;W4PRMAIL;MAILPARAMETERS;w4prmdef.jsp?JB=0&SCRN=W4PRMAIL&HD=MAILPARAMETERS&FIRST=1
 ;W4LEVIN;WORKCLOCKDEFINITION;w4prmdef.jsp?JB=0&SCRN=W4LEVIN&HD=WORKCLOCKDEFINITION&FIRST=1
 ;W4PRMMSD;RESTAURANTPARAMETERS;w4prmdef.jsp?JB=0&SCRN=W4PRMMSD&HD=RESTAURANTPARAMETERS&FIRST=1
 ;W4PRMMSL;DELIVERYPARAMETERS;w4prmdef.jsp?JB=0&SCRN=W4PRMMSL&HD=DELIVERYPARAMETERS&FIRST=1
 ;W4PRMPC1;BONPARAMETERSDEFINITION;w4prmpc1.jsp?JB=0&FIRST=1
 ;W4PRMPC2;CSRPARAMETERSDEFINITION;w4prmpc2.jsp?JB=0&FIRST=1
 ;W4PRMPC3;BIGPRINTPARAMETERSDEFINITION;w4prmpc3.jsp?JB=0&FIRST=1
 ;W4PRMPC4;DLVPRINTPARAMETERS;w4prmpc4.jsp?JB=0&FIRST=1
 ;W4PRMD;MANYREPORTPARAMETERSDEFINITION;w4prmd.jsp?JB=0&FIRST=1
 ;W4LKHPRM;BUSINESSPARAMETERS;w4lkhprm.jsp?JB=0&FIRST=1
 ;W4PRMTLM;GCOUPPARAMETERS;w4prmdef.jsp?JB=0&SCRN=W4PRMTLM&HD=GCOUPPARAMETERS&FIRST=1
 ;W4PRMWEB;WEBPARAMETERS;w4prmweb.jsp?JB=0&FIRST=1
 Q  ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMASR
W4PRMASR ; [ 05.08.16 13:57 ] [ 
GET ;
 S PSW=$$PSW^W3PRM
 S PSWSRV=$G(@$$^W4GL("W3PRM")@("PSWSRV"))
 Q
 ;
PUT ;
 S @$$^W4GL("W3PRM")@("PSW")=PSW
 S @$$^W4GL("W3PRM")@("PSWSRV")=PSWSRV
 Q

W4PRMBO0
W4PRMBON ; [ 21.09.22 17:27 ] [ 23.05.22 07:45 ] [ 17.04.22 05:27 ] 
GET ;
 S BONWND=$G(@$$^W4PRM@("BONWND"))
 S WNDROWS=$G(@$$^W4PRM@("BONSCR","ROWS"))
 S WNDCOLS=$G(@$$^W4PRM@("BONSCR","COLS"))
 S SMALLHD='$G(@$$^W4PRM@("BONSCR","SMALLHD"))
 S DAKOT=$G(@$$^W4PRM@("BONSCR","DAKOT"))
 S RAMZOR=$G(@$$^W4PRM@("BONSCR","RAMZOR"))
 S SHOWTM=$G(@$$^W4PRM@("BONSCR","SHOWTM"))
 S:SHOWTM="" SHOWTM=120
 ;
 S CLRHD=$$CLRBONHD^W4PRM
 S CLRBD=$$CLRBONBD^W4PRM
 S CLRFG=$$CLRBONFG^W4PRM
 S BGHDORD=$$BGHDORD^W4PRM
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMAIL-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 S @$$^W4PRM@("BONWND")=2 ;BONWND
 I BONWND S @$$^W4PRM@("BONSCR")=1
 ;
 S @$$^W4PRM@("BONSCR","ROWS")=WNDROWS
 S @$$^W4PRM@("BONSCR","COLS")=WNDCOLS
 S @$$^W4PRM@("BONSCR","DAKOT")=DAKOT
 S @$$^W4PRM@("BONSCR","RAMZOR")=RAMZOR
 S @$$^W4PRM@("BONSCR","SHOWTM")=SHOWTM
 ;
 S @$$^W4PRM@("BONSCR","SMALLHD")='SMALLHD
 ;
 S @$$^W4PRM@("BONSCR","CLRHD")=CLRHD
 S @$$^W4PRM@("BONSCR","CLRBD")=CLRBD
 S @$$^W4PRM@("BONSCR","CLRFG")=CLRFG
 S @$$^W4PRM@("BONSCR","BGHDORD")=BGHDORD
 ;
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMBON
W4PRMBON ; [ 22.12.22 18:51 ] [ 06.10.22 18:40 ] [ 21.09.22 17:31 ] 
GET ;
 S BONWND=$G(@$$^W4PRM@("BONWND"))
 S WNDCOLS=$G(@$$^W4PRM@("BONSCR","COLS"))
 S DAKOT=$G(@$$^W4PRM@("BONSCR","DAKOT"))
 S RAMZOR=$G(@$$^W4PRM@("BONSCR","RAMZOR"))
 S SHOWTM=$G(@$$^W4PRM@("BONSCR","SHOWTM"))
 S:SHOWTM="" SHOWTM=120
 S MAINSIZE=$G(@$$^W4PRM@("BONSCR","MAINSIZE"))
 S ADDSIZE=$G(@$$^W4PRM@("BONSCR","ADDSIZE"))
 S PCQN1=$$PCQN1^W4PRM
 S MDBYAD=$$MDBYAD^W4PRM
 S BONADDR=$G(@$$^W4PRM@("BONADDR"))
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMBON-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 S @$$^W4PRM@("BONWND")=$S(BONWND:2,1:0)
 I BONWND S @$$^W4PRM@("BONSCR")=1
 ;
 S @$$^W4PRM@("BONSCR","COLS")=WNDCOLS
 S @$$^W4PRM@("BONSCR","DAKOT")=DAKOT
 S @$$^W4PRM@("BONSCR","RAMZOR")=RAMZOR
 S @$$^W4PRM@("BONSCR","SHOWTM")=SHOWTM
 S @$$^W4PRM@("BONSCR","MAINSIZE")=MAINSIZE
 S @$$^W4PRM@("BONSCR","ADDSIZE")=ADDSIZE
 ;
 S @$$^W4PRM@("PCQN1")=+PCQN1
 S @$$^W4PRM@("MDBYAD")=+MDBYAD
 S @$$^W4PRM@("BONADDR")=+BONADDR
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMCLI
W4PRMCLI ; [ 23.07.26 10:40 ] [ 
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 S @$$^W4PRM@("CLICK","URL")=URL
 S @$$^W4PRM@("CLICK","TERM")=TERM
 S @$$^W4PRM@("CLICK","USER")=USER
 S @$$^W4PRM@("CLICK","PSW")=PSW
 Q 1
 
 
 

W4PRMCMV
W4PRMCMV ; [ 28.10.24 12:02 ] [ 14.06.18 13:17 ] [ 03.06.18 10:40 ] 
 Q
 ;
SAVE(PRM) ; 
 N CMVUSR,CMVADR,CMVDIR
 D ^%W1GETPR(PRM)
 ;
 F I="MEDAT","ADDAT","MESHAA","ADSHAA","DAYS","HN" D
 .S @$$^W4PRM@("CIBMVC",I)=$G(@I)
 Q 1
 
 
 
 
 
 
 

W4PRMD
W4PRMD ; [ 28.10.21 15:27 ] [ 21.08.20 15:47 ] [ 17.03.20 13:37 ] 
GET ;
 N II,PRM
 D PRMH
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..S @("X"_PRM)=$G(@$$^W4PRM@("X",PRM))
 ..S @("Z"_PRM)=$G(@$$^W4PRM@("Z",PRM))
 ;
 S @$$^W4PRM@("TOTNA")=1
 I $G(@$$^W4PRM@("TIPNO")) S @$$^W4PRM@("TIPNT")=1
 I $G(@$$^W4PRM@("TIPNT"))="" S @$$^W4PRM@("TIPNT")=1
 I '$D(@$$^W4PRM@("DOCHL")) S @$$^W4PRM@("DOCHL")=1
 ;
 F II="ZBIG","DOCHL","DOCHP","ZM","SGKVZ","Z2SHVA","TIPPS","TAWMSD","DMGRA","ZXBIT","ZDTLM","ZAUTOALW" D
 .S @II=$G(@$$^W4PRM@(II))
 ;
 S ZAUTO=$G(@$$^W4PRM@("ZAUTO"))
 ;
 S NSET=$G(@$$^W4PRM@("DOCHP","NSET"))
 S MIUN=$G(@$$^W4PRM@("DOCHP","SORT"))
 S DOCHY='$G(@$$^W4PRM@("NODOCHY"))
 S MLZZ='$G(@$$^W4PRM@("NOMLZZ"))
 S NOPCAUTO='$G(@$$^W4PRM@("NOPCAUTO"))
 ;
 S TIPNT=$S($G(@$$^W4PRM@("TIPNO")):3,$G(@$$^W4PRM@("TIPNT")):2,1:1)
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMD-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 D PRMH
 N II F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..S @$$^W4PRM@("X",PRM)=$G(@("X"_PRM))
 ..S @$$^W4PRM@("Z",PRM)=$G(@("Z"_PRM))
 ;
 F II="ZBIG","DOCHL","DOCHP","ZM","SGKVZ","Z2SHVA","TAWMSD","DMGRA","ZXBIT","ZDTLM","ZAUTOALW" D
 .S @$$^W4PRM@(II)=$G(@II)
 ;
 S @$$^W4PRM@("ZAUTO")=ZAUTOhr
 ;
 S @$$^W4PRM@("NOMLZZ")='$G(MLZZ)
 S @$$^W4PRM@("NODOCHY")='$G(DOCHY)
 S @$$^W4PRM@("NOPCAUTO")='$G(NOPCAUTO)
 S @$$^W4PRM@("DOCHP","NSET")=$G(NSET)
 S @$$^W4PRM@("DOCHP","SORT")=$G(MIUN)
 ;
 ;;S ^AA("TIPPD")=$$^W4TIPPD
 ;;S ^AA("TIPNT")=TIPNT
 D  ; -- W4TIPPD - WAS ; TIPNT - NOW --------------
 .I $$^W4TIPPD D  G SAVE1
 ..I TIPNT'=1 D  ; - RANSHE VHODIL SCHAS NET
 ...N LAST S LAST=$O(@$$^W4PRM@("NOTIP",""),-1)
 ...S @$$^W4PRM@("NOTIP",+$H_"-99999")=$H_$S(TIPNT=3:"\NO",1:"")
 ...;;I $P(LAST,"-",2)=($H-1) K @$$^W4PRM@("NOTIP",LAST)
 .;
 .I '$$^W4TIPPD D
 ..I TIPNT=1 D  Q  ; --- RANSHE NE VHODIL SCHAS VHODIT
 ...N LAST S LAST=$O(@$$^W4PRM@("NOTIP",""),-1) Q:LAST=""
 ...K @$$^W4PRM@("NOTIP",LAST)
 ...I $P(LAST,"-")'<$H Q
 ...S @$$^W4PRM@("NOTIP",$P(LAST,"-")_"-"_($H-1))=$H
 ..
 ..;-------------- RANSHE NE VHODIL I SHAS NE VHODIT ----------
 ..I TIPNT=3,$$^W4TIPMIN D  Q  ; --- RANSHE POKAZYVAL SCHAS NET
 ...N LAST S LAST=$O(@$$^W4PRM@("NOTIP",""),-1) Q:LAST=""
 ...K @$$^W4PRM@("NOTIP",LAST)
 ...I $P(LAST,"-")<$H D
 ....S @$$^W4PRM@("NOTIP",$P(LAST,"-")_"-"_($H-1))=$H
 ...S @$$^W4PRM@("NOTIP",+$H_"-99999")=$H_"\NO"
 ..
 ..I TIPNT=2,$$TIPNO^W4TIPPD D  Q  ; --- RANSHE NE POKAZYVAL SCHAS DA
 ...N LAST S LAST=$O(@$$^W4PRM@("NOTIP",""),-1) Q:LAST=""
 ...K @$$^W4PRM@("NOTIP",LAST)
 ...I $P(LAST,"-")<$H D
 ....S @$$^W4PRM@("NOTIP",$P(LAST,"-")_"-"_($H-1))=$H_"\NO"
 ...S @$$^W4PRM@("NOTIP",+$H_"-99999")=$H
 .
SAVE1 .I TIPNT=1 S @$$^W4PRM@("TIPNT")=0,@$$^W4PRM@("TIPNO")=0 Q
 .I TIPNT=2 S @$$^W4PRM@("TIPNT")=1,@$$^W4PRM@("TIPNO")=0 Q
 .S @$$^W4PRM@("TIPNT")=0,@$$^W4PRM@("TIPNO")=1 Q
 ;
 S @$$^W4PRM@("TIPPS")=$$INVH^%L1FRM(TIPPS)
 Q 1
 ;
PRMH ;
 S PRMH="HZM\HSB\LKH"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMDA
W4PRMDA ; [ 29.09.24 16:04 ] [ 20.10.23 12:18 ] [ 24.08.23 10:24 ] 
GET ;
 S DA=$G(@$$^W4PRM@("DA"))
 F I="MSD","KEY","APPID","URL","URLDEL" D
 .S @I=$G(@$$^W4PRM@("DA",I))
 .I $G(MSD)="",I="MSD",$G(@$$^W4PRM@("WEB","MSD")) S MSD=^("MSD")
 .I $G(MSD)="",I="MSD",$G(@$$^W4PRM@("IT4WEB","MSD")) S MSD=^("MSD")
 Q
 ;
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("DA")
 S @$$^W4PRM@("DA")=DA
 F I="MSD","KEY","APPID","URL","URLDEL" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@("DA",I)=$G(@I)
 Q RES
 ;
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMEMN
W4PRMEMN ; [ 16.04.24 16:37 ] [ 14.06.18 13:17 ] [ 03.06.18 10:40 ] 
 Q
SAVE(PRM) ; 
 N EMVUSR,EMVADR,EMVDIR
 D ^%W1GETPR(PRM)
 I BRIDGEID?.P Q "WRONGTERMINAL;BRIDGEID"
 ;
 S @$$^W4PRM@("BRIDGEID")=BRIDGEID
 Q 1
 
 
 
 
 
 
 

W4PRMEMV
W4PRMEMV ; [ 14.06.18 13:17 ] [ 03.06.18 10:40 ] [ 
 Q
SAVE(PRM) ; 
 N EMVUSR,EMVADR,EMVDIR
 D ^%W1GETPR(PRM)
 I 'EMVUSR Q "USERWRONG;EMVUSR"
 I 'EMVADR Q "IPADRWRONG;EMVADR"
 ;
 S @$$^W4PRM@("EMV","USR")=EMVUSR
 S @$$^W4PRM@("ASH","MASOF")=EMVUSR
 S @$$^W4PRM@("EMV","ADR")=EMVADR
 S @$$^W4PRM@("EMV","DIR")=EMVDIR
 Q 1
 
 
 
 
 

W4PRMGEN
W4PRMGEN ; [ 24.10.22 12:54 ] [ 
 Q
GETWHO() ;
 Q $$GETWHO^W4PRMGN
 

W4PRMGN
W4PRMGN(SCR) ; [ 13.02.26 11:38 ] [ 16.02.25 06:01 ] [ 14.08.23 06:37 ] 
GET ;
 N II
 I SCR="W4PRMGN1" D
 .F II="PSWDRG","ASKWTR","BGPSW","MAM","SHAAZ","MAXHMK","SHEML","MUSTTZ","FNDDOP","BIO","CSHPOS","CITYINP" D
 ..S @II=$G(@$$^W4PRM@(II))
 .S ASKCOPY='$G(@$$^W4PRM@("ASKCOPY"))
 .S PICTURE=$G(@$$^W4PRM@("PICIT"))
 ;
 I SCR="W4PRMGN2" D
 .F II="IGUL","RNDOWN","ROUND","CATSHL","CAJ","CVVTZ","TSFMVC","TSFBHNH","FASTPAY","VCPREPAY","FCASUM","MZSM" D
 ..S @II=$G(@$$^W4PRM@(II))
 .F II="SHVA1","AINOTSF","NOPTCA","NOPTASR","NODOUBLE","NOKFLMVC","NOPAYBCK","NOMVBANK" D
 ..S @II='$G(@$$^W4PRM@(II))
 ;
 I SCR="W4PRMGN3" D
 .F II="INPCODE","COPYORD","TOAICD","ADDFREE","CHNORD","WASPSW","KOLMAX" D
 ..S @II=$G(@$$^W4PRM@(II))
 .F II="QAI1","NOCHKAI","NOPSWSD0" D
 ..S @II='$G(@$$^W4PRM@(II))
 .S MULTY='$G(@$$^W4PRM@("NOMULTY"))
 .I $G(INPCODE)="" S INPCODE=1
 ;
 I SCR="W4PRMGN4" D
 .F II="MOTH" D  ;;,"DELDEL" D
 ..S @II=$G(@$$^W4PRM@(II))
 .F II="NOFRECAU","CAUSED","EXITKITC","DELREST","NOASKDEL","PSWDEL3" D
 ..S @II='$G(@$$^W4PRM@(II))
 .S ASKWHO=$$ASKWHO
 .;
 .I $D(@$$^W4GL("W4ANS")@("DEL","CAUSEDEL")) D
 ..S @$$^W4PRM@("CAUSED")=1
 .I $D(@$$^W4GL("W4ANS")@("DEL","EXIT2KITCHEN?")) D
 ..S @$$^W4PRM@("EXITKITC")=1
 ;
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMGN-SAVE","PARAM=PARAM")
 ;
 S SCR=$P(PARAM,";")
 S PARAM=$P(PARAM,";",2,255)
 ;
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 I SCR="W4PRMGN1" D
 .F II="PSWDRG","ASKWTR","BGPSW","MAM","SHAAZ","MAXHMK","SHEML","MUSTTZ","FNDDOP","BIO","CSHPOS","CITYINP" D
 ..S @$$^W4PRM@(II)=$G(@II)
 .S @$$^W4PRM@("ASKCOPY")='ASKCOPY
 .S @$$^W4PRM@("PICIT")=PICTURE
 ;
 I SCR="W4PRMGN2" D
 .F II="IGUL","RNDOWN","ROUND","CATSHL","CAJ","CVVTZ","TSFMVC","TSFBHNH","FASTPAY","VCPREPAY","FCASUM","MZSM" D
 ..S @$$^W4PRM@(II)=$G(@II)
 .F II="SHVA1","AINOTSF","NOPTCA","NOPTASR","NODOUBLE","NOKFLMVC","NOPAYBCK","NOMVBANK" D
 ..S @$$^W4PRM@(II)='$G(@II)
 ;
 I SCR="W4PRMGN3" D
 .F II="INPCODE","COPYORD","TOAICD","ADDFREE","CHNORD","WASPSW","KOLMAX" D
 ..S @$$^W4PRM@(II)=$G(@II)
 .F II="QAI1","NOCHKAI","NOPSWSD0" D
 ..S @$$^W4PRM@(II)='$G(@II)
 .S @$$^W4PRM@("NOMULTY")='$G(MULTY)
 ;
 I SCR="W4PRMGN4" D
 .F II="MOTH" D  ;,"DELDEL" D
 ..S @$$^W4PRM@(II)=$G(@II)
 .
 .F II="NOFRECAU","CAUSED","EXITKITC","DELREST","NOASKDEL","PSWDEL3" D
 ..S @$$^W4PRM@(II)='$G(@II)
 ..I II="PSWDEL3",@II=1 S @$$^W4PRM@("BITLVL")=3
 ..I II="PSWDEL3",@II=0 S @$$^W4PRM@("BITLVL")=2
 .D SVASKWHO(ASKWHO)
 .D DELDISCPRM
 ;
 Q 1
 ;
 ;
GETWHO(STAM) ;
 N MNL S MNL=$$GETP^%W1PRM("MNL")
 I MNL,$$GET1^W4LEVPR(MNL,"PAIL") Q MNL
 Q $$GETP^%W1PRM("MLZR")
 ;
ASKWHO(STAM) ;
 N ASKWHO
 S ASKWHO=1
 I $D(@$$^W4GL("W4ANS")@("DEL","WHOSUBMIT")) S ASKWHO=0
 Q ASKWHO
 ;
SVASKWHO(ASKWHO) ;
 I $G(ASKWHO) D
 .K @$$^W4GL("W4ANS")@("DEL","WHOSUBMIT")
 .K @$$^W4GL("W4ANS")@("DISCIT","WHOSUBMIT")
 .K @$$^W4GL("W4ANS")@("DISCOUNT","WHOSUBMIT")
 .K @$$^W4GL("W4ANS")@(6,"WHOSUBMIT")
 ;
 I '$G(ASKWHO)!$$PSWDRG^W4PRM D
 .S @$$^W4GL("W4ANS")@("DEL","WHOSUBMIT")="$$GETWHO^W4PRMGN"
 .S @$$^W4GL("W4ANS")@("DISCIT","WHOSUBMIT")="$$GETWHO^W4PRMGN"
 .S @$$^W4GL("W4ANS")@("DISCOUNT","WHOSUBMIT")="$$GETWHO^W4PRMGN"
 .S @$$^W4GL("W4ANS")@(6,"WHOSUBMIT")="$$GETWHO^W4PRMGN"
 Q
 ;
 ;
DELDISCPRM ; 
 I '$$CAUSED^W4PRM D
 .K @$$^W4GL("W4ANS")@("DEL","CAUSEDEL")
 .K @$$^W4GL("W4ANS")@("DISCIT","CAUSEDISC")
 .K @$$^W4GL("W4ANS")@("DISCOUNT","CAUSEDISC")
 .K @$$^W4GL("W4ANS")@("6","CAUSEDISC")
 ;
 I $$CAUSED^W4PRM D
 .S @$$^W4GL("W4ANS")@("DEL","CAUSEDEL")=0
 .S @$$^W4GL("W4ANS")@("DISCIT","CAUSEDISC")=0
 .S @$$^W4GL("W4ANS")@("DISCOUNT","CAUSEDISC")=0
 .S @$$^W4GL("W4ANS")@("6","CAUSEDISC")=0
 ;
 I '$$EXITKITC^W4PRM D
 .K @$$^W4GL("W4ANS")@("DEL","EXIT2KITCHEN?")
 ;
 I $$EXITKITC^W4PRM D
 .S @$$^W4GL("W4ANS")@("DEL","EXIT2KITCHEN?")=0
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMHDP
W4PRMHDP ; [ 17.06.19 17:50 ] [ 30.04.13 12:52 ] [ 08.03.12 05:52 ] 
GET ;
 D SC("W4PRMHDP")
 Q
 ;
SC(%SCRN) ;
 N PRM,A,I
 F I="HSVZ","HSVZC","HSVOLD" D
 .S @I=$G(@$$^W4PRM@(I))
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMHDP-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F I="HSVZ","HSVZC","HSVOLD" D
 .S @$$^W4PRM@(I)=$G(@I)
 ;
 Q 1
 
 
 

W4PRMHMS
W4PRMHMS ; [ 30.05.24 03:50 ] [ 17.05.24 18:46 ] [ 02.05.24 11:47 ] 
 Q
GET ;
 ;;S CLIENTID=$G(@$$^W4PRM@("HBMAS","CLIENTID"))
 S CLIENTPW=$G(@$$^W4PRM@("HBMAS","CLIENTPW"))
 S SUM=$G(@$$^W4PRM@("HBMAS","SUM"))
 Q
 ;
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("HBMAS")
 ;F I="CLIENTID","CLIENTPW","SUM" D
 F I="SUM" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@("HBMAS",I)=$G(@I)
 Q RES
 
 
 
 

W4PRMHSV
W4PRMHSV ; [ 16.09.25 11:26 ] [ 09.03.21 10:37 ] [ 30.04.13 12:52 ] 
GET ;
 D SC("W4PRMHSV")
 Q
 ;
SC(%SCRN) ;
 N PRM,A,I
 F I="HKNIJOT","MAMT","HMHIROT","MAMI","NOMAM","HZICMH","HZICMHM","HNKMM","MZMK","TIP","CHKK","CHKKM","ZK","ISRK","ISR","VISAK","VISA","DINERSK","DINERS","AMEXPK","AMEXP","ALPHAK","ALPHA","KKK","KK","FIK","FI","BANK","NOHFK" D
 .S @I=$G(@$$^W4PL@("HSV",I))
 S HFK='NOHFK
 S A=$G(@$$^W4PL@("HSV"))
 S FORMAT=$S(A="":1,A=90:2,A="FID":3,1:1)
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMHSV-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F I="HKNIJOT","MAMT","HMHIROT","MAMI","NOMAM","HZICMH","HZICMHM","HNKMM","MZMK","TIP","CHKK","CHKKM","ZK","ISRK","ISR","VISAK","VISA","DINERSK","DINERS","AMEXPK","AMEXP","ALPHAK","ALPHA","KKK","KK","FIK","FI","BANK","HFK" D
 .I I="HFK" S @$$^W4PL@("HSV","NOHFK")='HFK Q
 .N TN S TN=$G(@I)
 .I 'TN S TN=$$INVH^%L1FRM(TN)
 .I $L($G(@I)) S @$$^W4PL@("HSV",I)=TN
 .E  K @$$^W4PL@("HSV",I)
 ;
 S FORMAT=$G(FORMAT)
 S @$$^W4PL@("HSV")=$S(FORMAT=2:90,FORMAT=3:"FID",1:"")
 Q 1
 
 
 

W4PRMHTN
W4PRMHTN ; [ 30.04.13 12:53 ] [ 08.03.12 15:14 ] [ 07.03.12 11:51 ]
GET ;
 D SC
 Q
 ;
SC ;
 N PRM,A,I
 F I="HMK","HML","HMZ","CB","HMS","HMSB","TSH","HFMZ","HFTP","HFCH","HFIJ","HFVJ","HFDJ","HFAEJ","HFALJ","HFIA","HFVA","HFDA","HFAEA","HFALA" D
 .S @I=$G(@$$^W4PL@("HSV","TN",I))
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMHTN-SAVE","PARAM=PARAM")
 ;
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F I="HMK","HML","HMZ","CB","HMS","HMSB","TSH","HFMZ","HFTP","HFCH","HFIJ","HFVJ","HFDJ","HFAEJ","HFALJ","HFIA","HFVA","HFDA","HFAEA","HFALA" D
 .N TN S TN=$G(@I)
 .I 'TN S TN=$$INVH^%L1FRM(TN)
 .I $L($G(@I)) S @$$^W4PL@("HSV","TN",I)=TN
 .E  K @$$^W4PL@("HSV","TN",I)
 ;
 Q 1

W4PRMHZG
W4PRMHZG ; [ 11.10.24 13:41 ] [ 15.07.23 06:34 ] [ 02.11.22 13:42 ] 
GET ;
 F II="GRITVW","SHEETBG","HZGDEP","OPENADD","ASKWTR","AUTOGR","COLXGR","COLYGR","AUTOIT","COLXIT","COLYIT","GRPIC","ADDCOLOR","ULAM","HZGSHALL","ULAMTBLB","ADDSCRAU","ABC","ABCENG","SHOWDSIT","CRCARD1","BOCUST","SHORTFN","OLDDAT","SHOWCRTZ","CLKVWMLZ","SZMLZ","DEP2FAST" D
 .S @II=$G(@$$^W4PRM@(II))
 ;
 F II="FSZGR","FSZIT" D
 .S @II=$G(@$$^W4PRM@(II))
 ;
 S HZGPRC='$G(@$$^W4PRM@("NOHZGPRC"))
 S NOZPT='$G(@$$^W4PRM@("NOZPT"))
 S NOVWDEL='$G(@$$^W4PRM@("NOVWDEL"))
 S NOVWCODE='$G(@$$^W4PRM@("NOVWCODE"))
 S TABLETAB=$G(@$$^W4PRM@("TABLETABC"))
 S SHORT='$G(@$$^W4PRM@("SHORT"))
 ;
 I 'COLXGR S COLXGR=5
 I 'COLYGR S COLYGR=7
 I 'COLXIT S COLXIT=5
 I 'COLYIT S COLYIT=7
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMHZG-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F II="GRITVW","SHEETBG","HZGDEP","OPENADD","ASKWTR","AUTOGR","COLXGR","COLYGR","AUTOIT","COLXIT","COLYIT","GRPIC","ADDCOLOR","ULAM","HZGSHALL","ULAMTBLB","ADDSRCAU","ABC","ABCENG","SHOWDSIT","CRCARD1","BOCUST","SHORTFN","OLDDAT","SHOWCRTZ","CLKVWMLZ","SZMLZ","DEP2FAST" D
 .S @$$^W4PRM@(II)=$G(@II)
 ;
 F II="FSZGR","FSZIT" D
 .S @$$^W4PRM@(II)=$G(@II)
 ;
 S @$$^W4PRM@("NOHZGPRC")='HZGPRC
 S @$$^W4PRM@("NOZPT")='NOZPT
 S @$$^W4PRM@("NOVWDEL")='NOVWDEL
 S @$$^W4PRM@("NOVWCODE")='NOVWCODE
 S @$$^W4PRM@("TABLETABC")=TABLETAB
 S @$$^W4PRM@("SHORT")='SHORT
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMMAP
W4PRMMAP ; [ 09.09.21 08:16 ] [ 09.08.17 12:46 ] [ 06.08.17 14:04 ] 
GET ;
 F II="CENTER","CRD1","INFO1","CRD2","INFO2","CRD3","INFO3","CRD4","INFO4" D
 .S @II=$G(@$$^W4PRM@("MAP",$$NMAP,II))
 ;
 S ZOOM=$G(@$$^W4PRM@("MAP","ZOOM"))
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMMAP-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F II="CENTER","CRD1","INFO1","CRD2","INFO2","CRD3","INFO3","CRD4","INFO4" D
 .I II'["INFO" S @$$^W4PRM@("MAP",$$NMAP,II)=$G(@II)
 .I II["INFO" S @$$^W4PRM@("MAP",$$NMAP,II)=$$INVH^%L1FRM($G(@II))
 ;
 S @$$^W4PRM@("MAP","ZOOM")=ZOOM
 Q 1
 ;
NMAP(STAM) ;  
 Q 1 
 
 
 
 
 
 
 
 
 
 
 

W4PRMMDP
W4PRMMDP ; [ 29.03.17 05:46 ] [ 10.03.15 10:32 ] [ 09.03.15 14:41 ] 
 N (JB,%ARG,%REM)
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  S CONFMAX=$$MAXCONF
  S CURCONF=$G(@$$^W4GL("W4PRMMDP"))
  I 'CURCONF S CURCONF=1
  W "<br>",!
  W "<table>",!
   W "<tr>"
    W "<td>"
      W "<span style=""font-weight:bold"">"
       W $$^%W1DICT("CURRENTCONFIGURATION")
      W "</span>",!
      W "&nbsp;"
      W "<select id=""conf"" >",!
      F I=1:1:CONFMAX D
      .W "<option value="""_I_""" "
      .I I=CURCONF W " selected=""selected"" "
      .W ">",!
      . W $$^%W1DICT("CONF",I)
      .W "</option>"
      W "</select>",!
    W "</td>"
   W "</tr>",!
  W "</table>",!
  W "<br>",!
  ;
  W "<table id=""TblPrm"" cellspacing=""0"" cellpadding=""5"" border=""1"">",!
   W "<tr>",!
    W "<th>"_$$^%W1DICT("PRINTERNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("PRINTERNAME")_"</th>"
    ;
    F I=1:1:CONFMAX D
    .W "<th>"_$$^%W1DICT("CONF",I)_"</th>"
   W "</tr>",!
   ;
   ;
   S NP="" F  S NP=$O(@$$^W4PRM@("MDP",NP)) Q:NP=""  D
   .N A,PRN,PRNP
   .S A=$G(^(NP))
   .S PRN=$P(A,"\",3)
   .S PRN1=$P(A,"\",4)
   .W "<tr>"
   . W "<td>"_NP_"</td>",!
   . W "<td>"_$$H2U^%L1FRM(PRN1)_"</td>",!
   . N N
   . F CONF=1:1:$$MAXCONF D
   . .S AP=$G(@$$^W4GL("W4PRMMDP")@(CONF,NP))
   . .I AP="" S AP=$P(A,"\",3)
   . .S PRNP=AP
   . .W "<td>" D SELMDP(NP,CONF,PRNP) W "</td>"
   .W "</tr>",!
   W "</table>",!
   ;
   W "<br>",!
   ;
   D DIVBUT
 W "</div>",!
 Q
 ;
SELMDP(NP,CONF,PRN) ;
 W "<select id=""mdp"_NP_"_"_CONF_""" >",!
  N N S N="" F  S N=$O(@$$^W4DEV@(N)) Q:N=""  D
  .N A S A=$G(^(N))
  .W "<option value="""_N_""" "
  .I N=PRN W " selected=""selected"" "
  .W " >",!
  . W N_" : "_A
  .W "</option>",!
 W "</select>",!
 Q
 ;
DIVBUT ;
 D ^W4DIVBUT("SB")
 Q
 ;
SAVE(PRM) ;
 N CONF,CUR,I
 S CONF=$P(PRM,";") I CONF="" Q -1
 S CUR=$P(PRM,";",2)
 ;
 K @$$^W4GL("W4PRMMDP")@(CONF)
 ;
 F I=3:1:$L(PRM,";") D
 .S COUPL=$P(PRM,";",I)
 .S NOM=$P($E(COUPL,4,5),"_")
 .S VL=$P(COUPL,"=",2)
 .I NOM=""!(VL="") Q
 .S @$$^W4GL("W4PRMMDP")@(CONF,NOM)=VL
 .I CONF=CUR S $P(@$$^W4PRM@("MDP",NOM),"\",3)=VL
 ;
 S @$$^W4GL("W4PRMMDP")=CUR
 ;
 Q 1
 ;
 ;
MAXCONF(STAM) ;
 N MAXCONF S MAXCONF=$G(%ARG("MAXCONF"))
 I MAXCONF<1 S MAXCONF=2
 Q MAXCONF
 

W4PRMMSD
W4PRMMSD ; [ 06.04.23 22:31 ] [ 24.03.22 12:44 ] [ 09.09.21 08:16 ] 
GET ;
 F II="MLZ","LAST","NOPART" D
 .S @II='$G(@$$^W4PRM@(II))
 F II="LKHN","MINMH","MINMHB","DMSHMSD","NOORDVW","MAXMANA","TIPMZM","ACNTAW","BACKTO","MLZBGPAR","GLIST","DESERT","CDCHKER","TIPFREE","DOPOPT","PAIDTIME" D
 .S @II=$G(@$$^W4PRM@(II))
 ;
 S MVPSW='$G(@$$^W4PRM@("NOMVPSW"))
 S NOTSFMSD='$G(@$$^W4PRM@("NOTSFMSD"))
 S GLISTALL='$G(@$$^W4PRM@("GLISTALL"))
 I $G(@$$^W4PRM@("COMMENT2CUSTOM")) S DESCCUST=2
 ;;S GCOUPGR=$G(@$$^W4PRM@("GCOUPASR","SUGL"))
 ;;S GCOUPHB=$G(@$$^W4PRM@("GCOUPASR","ACC"))
 S MAXTIP=$$MAXTIP
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMMSD-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F II="MLZ","LAST","NOPART" D
 .S @$$^W4PRM@(II)='$G(@II)
 ;
 F II="LKHN","MINMH","MINMHB","DMSHMSD","NOORDVW","MAXMANA","TIPMZM","ACNTAW","BACKTO","MLZBGPAR","GLIST","DESERT","CDCHKER","TIPFREE","DOPOPT","PAIDTIME" D
 .S @$$^W4PRM@(II)=$G(@II)
 ;
 S @$$^W4PRM@("NOMVPSW")='$G(MVPSW)
 S @$$^W4PRM@("NOTSFMSD")='$G(NOTSFMSD)
 S @$$^W4PRM@("GLISTALL")='$G(GLISTALL)
 ;
 K @$$^W4PRM@("COMMENT2CUSTOM")
 I $G(DESCCUST)=2 S @$$^W4PRM@("COMMENT2CUSTOM")=1
 ;
 ;;S @$$^W4PRM@("GCOUPASR","SUGL")=GCOUPGR
 ;;S @$$^W4PRM@("GCOUPASR","ACC")=$$INVH^%L1FRM(GCOUPHB)
 D
 .K @$$^W4PRM@("MAXTIP")
 .K @$$^W4PRM@("NOTIPCA")
 .K @$$^W4PRM@("NOTIPALL")
 .I MAXTIP=2 S @$$^W4PRM@("MAXTIP")=1 Q
 .I MAXTIP=4 S @$$^W4PRM@("NOTIPCA")=.5 Q
 .I MAXTIP=3 S @$$^W4PRM@("NOTIPCA")=1 Q
 .I MAXTIP=0 S @$$^W4PRM@("NOTIPALL")=1 Q
 Q 1
 ;
MAXTIP(STAM) ;
 N MAXTIP
 I $G(@$$^W4PRM@("MAXTIP"))=1 S MAXTIP=2 G EMAXTIP
 I +$G(@$$^W4PRM@("NOTIPCA"))=.5 S MAXTIP=4 G EMAXTIP
 I $G(@$$^W4PRM@("NOTIPCA"))=1 S MAXTIP=3 G EMAXTIP
 I $G(@$$^W4PRM@("NOTIPALL")) S MAXTIP=0 G EMAXTIP
 S MAXTIP=1
EMAXTIP Q MAXTIP
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMMSF
W4PRMMSF ; [ 29.12.21 08:16 ] [ 28.01.16 05:27 ] [ 18.01.16 12:14 ] 
 N (JB,%ARG,%REM,CRD)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<span style=""font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">"
  W $$^%W1DICT("MASEFONPARAMETERS")
 W "</span>",!
 W "<br>"
 W "<br>",!
 W "<table border=""1"" "
  W "cellspacing=""0"" cellpadding=""3"" >"
  ;
  D COL("COLXMLZ","colxmlz",3)
  D COL("COLYMLZ","colymlz",6)
  D COL("COLXSH","colxsh",4)
  D COL("COLYSH","colysh",6)
  D COL("COLXGRMSF","colxgr",4)
  D COL("COLYGRMSF","colygr",5)
  D COL("COLXPRTMSF","colxprt",3)
  D COL("COLYPRTMSF","colyprt",6)
  D COL("COLXADD","colxadd",2)
  D COL("COLYADD","colyadd",6)
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,70")
   W "</td>"
   ;
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,70")
   W "</td>"
  W "</tr>",!
 ;
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 S @$$^W4PRM@("MSF","COLXMLZ")=$P(PRM,";")
 S @$$^W4PRM@("MSF","COLYMLZ")=$P(PRM,";",2)
 S @$$^W4PRM@("MSF","COLXSH")=$P(PRM,";",3)
 S @$$^W4PRM@("MSF","COLYSH")=$P(PRM,";",4)
 S @$$^W4PRM@("MSF","COLXGR")=$P(PRM,";",5)
 S @$$^W4PRM@("MSF","COLYGR")=$P(PRM,";",6)
 S @$$^W4PRM@("MSF","COLXPRT")=$P(PRM,";",7)
 S @$$^W4PRM@("MSF","COLYPRT")=$P(PRM,";",8)
 S @$$^W4PRM@("MSF","COLXADD")=$P(PRM,";",9)
 S @$$^W4PRM@("MSF","COLYADD")=$P(PRM,";",10)
 Q 1
 ;
 ;
COL(NAME,ID,DFLT)
  W "<tr>"
  W " <td>"
   W $$^%W1DICT(NAME)
  W " </td>"
  W " <td>"
   W " <select id="""_ID_""" >",!
     X "S "_NAME_"=$$"_NAME_"^W4PRM" I '@NAME S @NAME=DFLT
     F I=2:1:8 D
     .W "&nbps;<option value="""_I_""" "
     .I I=$G(@NAME) W " selected=""selected"" "
     .W ">&nbsp;"_I_"&nbsp;</option>&nbsp;"
   W "</select>",!
  W " </td>"
  W "</tr>",!
 Q
 
 
 

W4PRMMSL
W4PRMMSL ; [ 29.12.25 11:21 ] [ 01.01.23 16:52 ] [ 27.10.21 15:06 ] 
GET ;
 F II="VIZSVNO","NOCHKDLV","NOCHNTM","NOWILLPY" D
 .S @II='$G(@$$^W4PRM@(II))
 ;
 F II="SHORTDET","NDTNTM","TAWDLV","GRITMSL","BDNOCHSL","SLHOV","TSHLDM","ACNMSL","TAWMSLH","MSLMHMIN","TAWTIME","TIMEHZ","TIMETM","DSHL","MSLSD","SDMSL","MAXMSLSD","LKKLALI","SNDDLKTC","CDMDB","PIZUIM","CLSDLV","MSHHBNOW","SND2MAIL","SHOWMKBL","POLYGON","PRINTALL","DPS","NEWINET","AUTOMZM" D
 .S @II=$G(@$$^W4PRM@(II))
 ;
 S HZMH=$G(@$$^W4PRM@("HZMH"))
 S SHOWDEL=$G(@$$^W4PRM@("SHOWDEL"))
 S DLVDMSH0=$G(@$$^W4PRM@("DLVDMSH0"))
 S TIMERMSL=$G(@$$^W4PRM@("TIMERMSL"))
 S DLVN2O=$G(@$$^W4PRM@("DLVN2O"))
 S SHOWTAW='$G(@$$^W4PRM@("NOVWTAW"))
 S TIMESORT=$G(@$$^W4PRM@("TIMESORT"))
 S NOSVLKCH=$S($G(@$$^W4PRM@("NOSVLKCH"))=1:0,$G(@$$^W4PRM@("NOSVLKCH"))=0:2,1:1)
 S SORTCITY=$$SORTCITY^W3PRM
 S CITYDEF=$$CITYDEF^W3PRM
 Q
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMMSL-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 F II="VIZSVNO","NOCHKDLV","NOCHNTM","NOWILLPY" D
 .S @$$^W4PRM@(II)='$G(@II)
 ;
 F II="SHORTDET","NDTNTM","TAWDLV","GRITMSL","BDNOCHSL","SLHOV","TSHLDM","ACNMSL","TAWMSLH","MSLMHMIN","TAWTIME","TIMEHZ","TIMETM","DSHL","MSLSD","SDMSL","MAXMSLSD","LKKLALI","SNDDLKTC","CDMDB","PIZUIM","CLSDLV","MSHHBNOW","SND2MAIL","SHOWMKBL","POLYGON","PRINTALL","DPS","NEWINET","AUTOMZM" D
 .S @$$^W4PRM@(II)=$G(@II)
 ;
 I $$POLYGON^W4PRM,$G(@$$^W4PRM@("DSHL")) S @$$^W4PRM@("OUTRNGDM")=@$$^W4PRM@("DSHL")
 ;
 S @$$^W4PRM@("HZMH")=HZMH
 S @$$^W4PRM@("SHOWDEL")=SHOWDEL
 S @$$^W4PRM@("TIMERMSL")=TIMERMSL
 S @$$^W4PRM@("DLVDMSH0")=DLVDMSH0
 S @$$^W4PRM@("NOSVLKCH")=$S(NOSVLKCH=1:-1,NOSVLKCH=0:1,1:0)
 S @$$^W4PRM@("DLVN2O")=DLVN2O
 S @$$^W4PRM@("NOVWTAW")='SHOWTAW
 S @$$^W4PRM@("TIMESORT")=TIMESORT
 ;
 S @$$^W4GL("W3PRM")@("SORTCITY")=SORTCITY
 S @$$^W4GL("W3PRM")@("CITYDEF")=$$INVH^%L1FRM(CITYDEF)
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMPC
W4PRMPC(SCR) ; [ 20.12.23 21:22 ] [ 11.09.23 17:35 ] [ 15.07.23 06:47 ] 
GET ;
 Q:$G(SCR)=""
 D PRMH(SCR) ; -->PRMH
 D SC(PRMH,SCR)
 Q
 ;
SC(PRMH,%SCRN) ;
 N II,PRM
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 ..I PRM1="'" S @PRM='$G(@$$^W4PRM@(PRM)) Q
 ..S @PRM=+$G(@$$^W4PRM@(PRM))
 .
 .I $G(@$$^W4PRM@("INVHZ")) S ORDBIG=3
 .I PRM="ASR" S ASR=$S('ASR:1,ASR=1:0,1:ASR)
 .I PRM="TAWHR" S TAWHR=$G(@$$^W4PRM@(PRM))
 .I PRM="KOTACNTT" S KOTACNTT=$G(@$$^W4PRM@(PRM))
 .I PRM="BOTHB" S BOTHB=$S($G(@$$^W4PRM@("NOHDSRV")):0,'$G(@$$^W4PRM@("BOTHB")):1,1:2)
 .
 .I PRM="BIGNMB" D
 ..I $G(@$$^W4PRM@("NOHZMPAR")) S BIGNMB=0 Q
 ..I $G(@$$^W4PRM@("BIGNMB"))=1 S BIGNMB=2 Q
 ..I $G(@$$^W4PRM@("BIGNMB"))=2 S BIGNMB=3 Q
 ..S BIGNMB=1
 .
 .I PRM="TM2" S TM2=$G(@$$^W4PRM@("2TM"))
 .I PRM="DLYPRN" S DLYPRN=$G(@$$^W4PRM@("DLYPRN"))
 ;
 S LHBAFTAX='$$NOLHBAFTAX^W4PRM
 S LOGO=$G(@$$^W4PL@("LOGO"))
 S LOGOHG=$G(@$$^W4PL@("LOGO","HEIGHT"))
 S LOGOWD=$G(@$$^W4PL@("LOGO","WIDTH"))
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMPC-SAVE","PARAM=PARAM")
 S SCR=$P(PARAM,";")
 S PARAM=$P(PARAM,";",2,255)
 ;
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 N II,PRM,PRMH D PRMH(SCR)
 ;
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 .I PRM="LOGO" S @$$^W4PL@("LOGO")=LOGO Q
 .I PRM="LOGOHG" S @$$^W4PL@("LOGO","HEIGHT")=LOGOHG Q
 .I PRM="LOGOWD" S @$$^W4PL@("LOGO","WIDTH")=LOGOWD Q
 .I PRM["LHBAFTAX" S @$$^W4PRM@("NOLHBAFTAX")='$G(LHBAFTAX) Q
 .
 .I PRM1="'" S @$$^W4PRM@(PRM)='$G(@PRM) Q
 .S @$$^W4PRM@(PRM)=$G(@PRM)
 .
 .I PRM="ORDBIG" D
 ..K @$$^W4PRM@("INVHZ")
 ..I ORDBIG'=3 S @$$^W4PRM@("ORDBIG")=ORDBIG Q
 ..S @$$^W4PRM@("ORDBIG")=1
 ..S @$$^W4PRM@("INVHZ")=1
 .
 .I PRM="ASR",$D(ASR) S @$$^W4PRM@("ASR")=$S('ASR:1,ASR=1:0,1:ASR)
 .I PRM="TAWHR" S @$$^W4PRM@("TAWHR")=$$INVH^%L1FRM(TAWHR)
 .I PRM="KOTACNTT" S @$$^W4PRM@("KOTACNTT")=$$INVH^%L1FRM(KOTACNTT)
 .
 .I PRM="BOTHB",$D(BOTHB) D
 ..S @$$^W4PRM@("BOTHB")=$S(BOTHB>0:BOTHB-1,1:0)
 ..S @$$^W4PRM@("NOHDSRV")='BOTHB
 .
 .I PRM="BIGNMB" D
 ..I BIGNMB=0 S @$$^W4PRM@("NOHZMPAR")=1 K @$$^W4PRM@("BIGNMB") Q
 ..S @$$^W4PRM@("BIGNMB")=BIGNMB-1 K @$$^W4PRM@("NOHZMPAR") Q
 .;
 .I PRM="TM2" D
 ..S @$$^W4PRM@("2TM")=TM2
 .
 .I PRM="DLYPRN" S @$$^W4PRM@("DLYPRN")=DLYPRN
 ;
 Q 1
 ;
 ;
PRMH(SCR) ;
 I SCR="W4PRMPC1" D
 .S PRMH="'NOPCLOAZ\MANA\MANAM\PCHZKV\ORDBIG\BIGTIME\TBLBIG\INVSH\MSPYOM\PCULNM\HZMLKHN\"
 .S PRMH=PRMH_"SOADBIG\BIGNMB\BIGNAME\BIGNMEZI\BIGNMEZT\BIGNMEZA\NOBIGHRA\HZMBIT\NOROMA\"
 .S PRMH=PRMH_"PCQN1\MANATL\'NOSPACE2\HZMHV\HZMDBL\HZMBAR\TAWHR\TAWHZ\"
 .S PRMH=PRMH_"TSFTIED\'MANABLKV\LINE\TAWHRKOT\'NOQ1\HZMRKZ\QNPARHZ\'NOPCZERO\'NOPCWOLT"
 ;
 I SCR="W4PRMPC2" D
 .S PRMH="HSBRKZ\PRINTDET\HSBENG\HSBHBR\HBHR\MEUHAD\BAITDIRA\"
 .S PRMH=PRMH_"TAWS\SEFAHNM\HZMMSL\BIGNMIT\HRA2\'NOSUMOTH\"
 .S PRMH=PRMH_"BOTHB\ASR\ASR2\TMASR\ASRITRA\"
 .S PRMH=PRMH_"TLBIT\TLHNH\ITRA\NOVZHZG\PCCA1\PCTIPCA\PCTB\"
 .S PRMH=PRMH_"'VCNOPC\'NOPCCB\'NOPCCBHB\'NOKOTTSF\"
 .S PRMH=PRMH_"'NOMHOTH\SHVACSRP\'NOPC\PTHDLY\TIP2LK\BIGVT\"
 .S PRMH=PRMH_"ASKHBMDP\ASKCAPC"
 ;
 I SCR="W4PRMPC3" D
 .S PRMH="NOHD\LOGO\LOGOHG\LOGOWD\KOTACNT\KOTACNTT\KOTACNTD\"
 .S PRMH=PRMH_"NOPCHBCD\'NOMYDETS\'NOPCCB\'NOPCCBHB\'NOCBET\"
 .S PRMH=PRMH_"'NOHBCOPY\'LHBAFTAX\PRINTBW"
 ;
 I SCR="W4PRMPC4" D
 .S PRMH="SHORTPC\BONADDR\ACNMSL\NOTM\CDMDB\MSHHBNOW\DETTM\TM2\ALL2MSL\"
 .S PRMH=PRMH_"MDBADDR\SAHMDB\MDBTSF\MDBMSD\'MDBDTKTN\'MDBLKKTN\HZAFTPAY\"
 .S PRMH=PRMH_"DLYPRN\TMMSL"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMPC0
W4PRMPC ; [ 27.08.18 09:59 ] [ 16.07.18 20:22 ] [ 22.06.18 17:22 ] 
GET ;
 D PRMH
 D SC(PRMH,"W4PRMPC")
 Q
 ;
SC(PRMH,%SCRN) ;
 N II,PRM
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 ..I PRM1="'" S @PRM='$G(@$$^W4PRM@(PRM)) Q
 ..S @PRM=+$G(@$$^W4PRM@(PRM))
 .I PRM="ASR" S ASR=$S('ASR:1,ASR=1:0,1:ASR)
 .I PRM="TAWHR" S TAWHR=$$FUNC^%UCASE($G(@$$^W4PRM@(PRM)))
 .I PRM="BOTHB" S BOTHB=$S($G(@$$^W4PRM@("NOHDSRV")):0,'$G(@$$^W4PRM@("BOTHB")):1,1:2)
 .
 .I PRM="BIGNMB" D
 ..I $G(@$$^W4PRM@("NOHZMPAR")) S BIGNMB=0 Q
 ..I $G(@$$^W4PRM@("BIGNMB"))=1 S BIGNMB=2 Q
 ..I $G(@$$^W4PRM@("BIGNMB"))=2 S BIGNMB=3 Q
 ..S BIGNMB=1
 ;
 S LHBAFTAX='$$NOLHBAFTAX^W4PRM
 ;;S LOGO=$$FUNC^%UCASE($G(@$$^W4PL@("LOGO")))
 S LOGO=$G(@$$^W4PL@("LOGO"))
 S LOGOHG=$G(@$$^W4PL@("LOGO","HEIGHT"))
 S LOGOWD=$G(@$$^W4PL@("LOGO","WIDTH"))
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMPC-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 N II,PRM,PRMH D PRMH
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 .I PRM1="'" S @$$^W4PRM@(PRM)='$G(@PRM) Q
 .S @$$^W4PRM@(PRM)=$G(@PRM)
 .
 .I PRM="ASR",$D(ASR) S @$$^W4PRM@("ASR")=$S('ASR:1,ASR=1:0,1:ASR)
 .
 .I PRM="BOTHB",$D(BOTHB) D
 ..S @$$^W4PRM@("BOTHB")=$S(BOTHB>0:BOTHB-1,1:0)
 ..S @$$^W4PRM@("NOHDSRV")='BOTHB
 .
 .I PRM="BIGNMB" D
 ..I BIGNMB=0 S @$$^W4PRM@("NOHZMPAR")=1 K @$$^W4PRM@("BIGNMB") Q
 ..S @$$^W4PRM@("BIGNMB")=BIGNMB-1 K @$$^W4PRM@("NOHZMPAR") Q
 ;
 S @$$^W4PRM@("NOLHBAFTAX")='$G(LHBAFTAX)
 ;
 ;;S @$$^W4PL@("LOGO")=$$FUNC^%LCASE(LOGO)
 S @$$^W4PL@("LOGO")=LOGO
 S @$$^W4PL@("LOGO","HEIGHT")=LOGOHG
 S @$$^W4PL@("LOGO","WIDTH")=LOGOWD
 ;
 Q 1
 ;
PRMH ;
 S PRMH="HSBRKZ\PRINTDET\SHEML\'NOPCLOAZ\HSBENG\MANA\MANATL\ORDBIG\BIGTIME\TBLBIG\"
 S PRMH=PRMH_"SOADBIG\BIGNMB\BIGNAME\NOBIGHRA\BIGFONT\HZMBIT\EZSMALL\NOROMA\"
 S PRMH=PRMH_"HZPCSP\NOSPACE2\HZMHV\HZMDBL\HZMBAR\TAWHR\TAWHZ\TAWS\SEFAHNM\HZMMSL\HRA2\"
 S PRMH=PRMH_"BOTHB\ASR\TMASR\'NOKOTTSF\TSFTIED\ASRITRA\LINE\TAWHRKOT\"
 S PRMH=PRMH_"TLBIT\TLHNH\JOMHL\ITRA\NOVZHZG\PCCA1\PCTB\NOHD\LOGO\"
 S PRMH=PRMH_"NOPCHBCD\'NOPCHBCOPY\'NOMYDETS\'VCNOPC\'NOPCCB\'NOPCCBHB\"
 S PRMH=PRMH_"'NOMHOTH\SHVACSRP\'NOPC\PTHDLY\'NOHBCOPY\TIP2LK"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMPD
W4PRMPC ; [ 25.08.12 11:56 ] [ 21.08.10 13:28 ] [ 16.12.09 20:10 ]
GET ;
 D PRMH
 D SC(PRMH,"W4PRMPC")
 Q
SC(PRMH,%SCRN) ;
 N II,PRM
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 ..I PRM1="'" S @PRM='$G(@$$^W4PRM@(PRM)) Q
 ..S @PRM=+$G(@$$^W4PRM@(PRM))
 .I PRM="ASR" S ASR=$S('ASR:1,ASR=1:0,1:ASR)
 .I PRM="BOTHB" S BOTHB=$S($G(@$$^W4PRM@("NOHDSRV")):0,'$G(@$$^W4PRM@("BOTHB")):1,1:2)
 Q
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMPC-SAVE","PARAM=PARAM")
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 N II,PRM,PRMH D PRMH
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 .I PRM1="'" S @$$^W4PRM@(PRM)='$G(@PRM) Q
 .S @$$^W4PRM@(PRM)=$G(@PRM)
 .I PRM="ASR",$D(ASR) S @$$^W4PRM@("ASR")=$S('ASR:1,ASR=1:0,1:ASR)
 .I PRM="BOTHB",$D(BOTHB) D
 ..S @$$^W4PRM@("BOTHB")=$S(BOTHB>0:BOTHB-1,1:0)
 ..S @$$^W4PRM@("NOHDSRV")='BOTHB
 Q 1
PRMH ;
 S PRMH="HSBRKZ\SHEML\HSBENG\MANA\MANATL\HEADSH\'NOHZMPAR\BIGNAME\NOBIGHRA\HZMBIT\HZMHV\HZMDBL\HZMBAR\TAWHZ\TAWS\SEFAHNM\HZMMSL\HRA2\BOTHB\ASR\TMASR\'NOKOTTSF\TSFTIED\ASRITRA\LINE\TAWHRKOT\TLBIT\JOMHL"
 Q

W4PRMPIC
W4PRMPIC ; [ 25.05.25 11:20 ] [ 22.05.25 17:34 ] [ 29.12.19 10:23 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D ^%W1HD("ZAGPARAMETERS")
 W "<p>&nbsp;</p>" ; -------------- TABLE TYPES LIST
 ;
 ; ---------------------------- TABLE TYPE PARAMETERS
 W "<table>",!
   W "<tr>"
    W "<td>"_$$^%W1DICT("TOPORDBGCOLOR")_"</td>"
    D TDCOLOR("topordbgcolor","BDBG1") 
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("BOTORDBGCOLOR")_"</td>"
    D TDCOLOR("botordbgcolor","BDBG2") 
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("HDBGCOLOR")_"</td>"
    D TDCOLOR("hdbgcolor","THBG") 
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("HDFGCOLOR")_"</td>"
    D TDCOLOR("hdfgcolor","THFG") 
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("BOTBGCOLOR")_"</td>"
    D TDCOLOR("botbgcolor","BTBG") 
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("BOTFGCOLOR")_"</td>"
    D TDCOLOR("botfgcolor","BTFG") 
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("PICBGCOLOR")_"</td>"
    D TDCOLOR("picbgcolor","PICBG") 
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("ZAGDOPSZ")_"</td>"
    W "<td>" 
     W "<select id=""dopsz"" >",!
      F I=1:1:10 D
      . W "<option value="""_I_""" "
      .  I I=+$G(@$$^W4PRM@("ZAG","DOPSZ"),4) W " selected=""selected"" " 
      . W ">"
      .   W I 
      . W "</option>",!
     W "</select>",!
    W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("ZAGCOLPIC")_"</td>"
    W "<td>"
     W "<select id=""colpic"" >",!
      F I=1:1:2 D
       .W "<option value="""_I_""" "
       . I I=+$G(@$$^W4PRM@("ZAG","COLPIC"),1) W " selected=""selected"" " 
       .W ">"
       .  W I 
       .W "</option>",!
     W "</select>",!
    W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
    W "<td>"_$$^%W1DICT("ZAGWDORD")_"</td>"
    W "<td>"
     W "<select id=""wdord"" >",!
      F I=30:5:60 D
      .W "<option value="""_I_""" "
      .  I I=+$G(@$$^W4PRM@("ZAG","WDORD"),40) W " selected=""selected"" " 
      . W ">"
     .    W I 
     .  W "</option>",!
     W "</select>",!
    W "</td>"
  W "</tr>",!
  ;
  W "</table>",!
 ;
 W "<br><br>",!
 ;
 W "<div id=""divbut"" align=""center"">",!
 W "<table>",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,70")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,70")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 S BDBG1=$P(PRM,";",1)
 S BDBG2=$P(PRM,";",2)
 S THBG=$P(PRM,";",3)
 S THFG=$P(PRM,";",4)
 S BTBG=$P(PRM,";",5)
 S BTFG=$P(PRM,";",6)
 S PICBG=$P(PRM,";",7)
 S DOPSZ=$P(PRM,";",8)
 S COLPIC=$P(PRM,";",9)
 S WDORD=$P(PRM,";",10)
 ;
 N I F I="BDBG1","BDBG2","THBG","THFG","BTBG","BTFG","PICBG","DOPSZ","COLPIC","WDORD" D
 .S @$$^W4PRM@("ZAG",I)=$G(@I)
 Q 1
 ;
 ;
VLCOLOR ;
 W " value="""_$$^%W1DICT("TODEFINECOLORPRESSHERE")_""" "
 Q
 ;
SAVE ; 
 Q 
 ;
 ; 
TDCOLOR(ID,IND) ;
  W "<td>"
    W "<input type=""text"" id="""_ID_""" "
    W " readonly=""readonly"" size=""30"" "
    W " style="""
    S BG=$G(@$$^W4PRM@("ZAG",IND))
    W " background-color:"_BG,!
    W """ "
    D VLCOLOR
    W " onClick=""OnClickBgColor('"_ID_"')"""
   W "/>"
 W "</td>"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMPZM
W4PRMPZM ; [ 24.10.17 14:58 ] [ 06.03.16 13:44 ] [ 14.01.16 07:03 ] 
GET ;
 S PRTPZM=$$PIZUIM^W4PRM
 S PRTPZM1=""
 I $G(PRTPZM) S PRTPZM1=$$SHEM^W4P(PRTPZM)
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W4PRMPZM","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("PIZUIM")
 S @$$^W4PRM@("PIZUIM")=PRTPZM
 Q RES
 ;
END Q
 
 
 
 
 
 
 
 
 
 

W4PRMSRV
W4PRMSRV(PRM) ; [ 07.02.16 07:51 ] [ 21.12.15 16:35 ] [ 17.12.09 10:44 ] 
 I PRM'[";" Q PRM
 Q $P(PRM,";",2,200)
 ;
AND(PRM) ;
 Q $$W4PRMSRV($TR(PRM,"^","&"))
 

W4PRMTD
W4PRMTD ; TIPIM ;    [ 04.09.11 20:43 ] [ 24.08.01  8:52 AM ] [ 25.03.01  9:41 AM ]
 ;
GET ;
 N II,PRM
 D PRMH
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..S @PRM=$G(@$$^W4PRM@("TIPDAY",PRM))
 Q
 ;
PUT(INP) ;
 N II,VL,PRMH
 D COUPLE^%L1FRM(INP)
 D PRMH
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .I $E(PRM)="'" S PRM=$E(PRM,2,25),@$$^W4PRM@("TIPDAY",PRM)='$G(@PRM) Q
 .S @$$^W4PRM@("TIPDAY",PRM)=$G(@PRM)
 Q
 ;
AUTO I AUTO'=1,AUTO'=0 S %SC("ER")=1 Q
 I AUTO S MSHA="",%SCO="MSHA"
 I 'AUTO K %SCO
 Q
 ;
PRMH ;
 S PRMH="MESHAA1\ADSHAA1\MESHAA2\ADSHAA2\AUTO\HILUK\AHTIP\AHDS\MZM\MSHA\SGKVZ\SGIRA"
 Q

W4PRMTLM
W4PRMTLM ; [ 06.03.16 13:44 ] [ 14.01.16 07:03 ] [ 28.01.15 05:04 ] 
GET ;
 S GCOUPIT=$G(@$$^W4PRM@("GCOUPIT"))
 S GCOUPIT1=""
 I $G(GVOUPIT) S GCOUPIT1=$$SHEM^W4P(GCOUPIT)
 S GCOUPPY=$G(@$$^W4PRM@("GCOUPPY"))
 S GCOUPPY1=""
 I $G(GVOUPPY) S GCOUPPY1=$$SHEM^W4P(GCOUPPY)
 S GCOUPC='$$GCOUPC^W4PRM
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W4PRMTLM","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("GCOUPIT")
 K @$$^W4PRM@("GCOUPPY")
 I GCOUPIT,'GCOUPPY S RES="GCOUPCDPAYMUSTBEFILLED"
 S @$$^W4PRM@("GCOUPIT")=GCOUPIT
 S @$$^W4PRM@("GCOUPPY")=GCOUPPY
 S @$$^W4PRM@("GCOUPC")='GCOUPC
 Q RES
 ;
END Q
 
 
 
 
 
 

W4PRMTRC
W4PRMTRC ; [ 18.01.23 18:01 ] [ 14.08.15 02:51 ] [ 28.05.15 17:59 ] 
GET ;
 S TRC=$G(@$$^W4PRM@("TRICKER"))
 F I="TOKEN" D
 .S @I=$G(@$$^W4PRM@("TRICKER",I))
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("TRICKER")
 S @$$^W4PRM@("TRICKER")=TRC
 F I="TOKEN" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@("TRICKER",I)=$G(@I)
 Q RES
 ;
 ;
 
 
 
 
 
 

W4PRMTV
W4PRMTV ; [ 14.01.25 13:27 ] [ 29.09.24 13:54 ] [ 20.10.23 12:18 ] 
GET ;
 N I,VL
 S TV=$G(@$$^W4PRM@("TEAV"))
 F I="TOKEN","CONNECT","URL","URLUPD","URLCOUR","URLCLK" D
 .S @I=$G(@$$^W4PRM@("TEAV",I))
 .S VL=@I
 .I $$PAPJ^W4PRM,VL="" D
 ..I I="TOKEN" S VL="684972C0-459F-E0FF-D482-065A50F52E66"
 ..I I="URL" S VL="https://damka.beteabon.co.il/api/v1/webhook.php"
 ..I I="URLUPD" S VL="https://damka.beteabon.co.il/api/v1/order.php"
 ..I I="URLCOUR" S VL="https://damka.beteabon.co.il/api/v1/couriers/create.php"
 ..I I="URLCLK" S VL="https://damka.beteabon.co.il/api/v1/couriers/clock.php"
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("TEAV")
 S @$$^W4PRM@("TEAV")=TV
 F I="TOKEN","CONNECT","URL","URLUPD","URLCOUR","URLCLK" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@("TEAV",I)=$G(@I)
 Q RES
 ;
 ;
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMWEB
W4PRMWEB ; [ 13.09.18 14:40 ] [ 07.09.18 17:19 ] [ 06.09.18 19:46 ] 
GET ;
 S SCR="W4PRMWEB"
 D PRMH ; -->PRMH
 D SC(PRMH,SCR)
 Q
 ;
SC(PRMH,%SCRN) ;
 N II,PRM
 F II=1:1:$L(PRMH,"\") D
 .S PRM=$P(PRMH,"\",II) I $L(PRM) D
 ..N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 ..I PRM="TBIS" S @PRM=$G(@$$^W4PRM@("WEB","10BIS")) Q
 ..I PRM1="'" S @PRM='$G(@$$^W4PRM@("WEB",PRM)) Q
 ..S @PRM=$G(@$$^W4PRM@("WEB",PRM))
 Q
 ;
 ;
SAVE(PARAM) ;
 N (JB,%ARG,%REM,PARAM)
 D PUT^%W3DEB("W4PRMWEB-SAVE","PARAM=PARAM")
 S SCR=$P(PARAM,";")
 S PARAM=$P(PARAM,";",2,255)
 ;
 F II=1:1:$L(PARAM,";") D
 .N COUP S COUP=$P(PARAM,";",II)
 .N A,B S A=$P(COUP,"="),B=$P(COUP,"=",2)
 .Q:$E(A)'?1A  S @A=B
 ;
 N II,PRM,PRMH D PRMH
 ;
 F II=1:1:$L(PRMH,"\") S PRM=$P(PRMH,"\",II) I $L(PRM) D
 .N PRM1 S PRM1=$E(PRM) I PRM1="'" S PRM=$E(PRM,2,25)
 .I PRM="TBIS" S @$$^W4PRM@("WEB","10BIS")=$G(@PRM) Q
 .I PRM1="'" S @$$^W4PRM@("WEB",PRM)='$G(@PRM) Q
 .S @$$^W4PRM@("WEB",PRM)=$G(@PRM)
 ;
 S @$$^W4PRM@("WEB","SRVADDR")="2order.org"
 Q 1
 ;
 ;
PRMH ;
 S PRMH="MSD\PSW\MKBL\TBIS\CIBUS\CPHON\MSH\FOOD\"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRMZSM
W4PRMZSM ; [ 21.10.24 10:13 ] [ 30.09.24 09:26 ] [ 29.09.24 16:04 ] 
GET ;
 S MZSM=$G(@$$^W4PRM@($$KOD))
 F I="SID","URL","URLREG" D
 .S @I=$G(@$$^W4PRM@($$KOD,I))
 Q
 ;
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@($$KOD)
 S @$$^W4PRM@($$KOD)=MZSM
 N I F I="SID","URL","URLREG" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@($$KOD,I)=$G(@I)
 Q RES
 ;
 ;
KOD() ; 
 Q "MZSM" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRNDOC
W4PRNDOC(ORD,PRMDB) ; [ 26.06.25 13:20 ] [ 24.06.25 15:39 ] [ 23.06.25 18:54 ] 
 N (JB,%ARG,ORD,PRMDB)
 N MBUT
 S I=0
 S DZ=$$^W4DZ
 S DT=$$^%L1DC($$TRH^W4HZMST(ORD),3)
 I 'DT!'$$HZM^W4MSL(ORD) S DT=$$^%L1DC($$DATK^W4HZMST(ORD),3)
 I 'DT S DT=$$^W4DZ
 S PSL=$$PSL^W4HZMST(ORD)
 S NCAB=$$NCAB^W4HZMST(ORD)
 ;
 I $G(PRMDB)="" D 
 .N N S N="",PRMDB="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D  Q:PRMDB
 ..N PRN S PRN=$$PRINTIG^W3PRMDP(N)
 ..I PRN[">",$G(@$$^W4GL("W3PAR")@(N)) S PRMDB=1
 ;
 S NMB=$$NMB^W4HZMST(ORD)
 I '$$HZM^W4MSL(ORD),'$$TAW^W4DLPK(NMB)!'$$MDBMSD^W4PRM S PRMDB=0 ; --- 28/01/18
 S PRMDB=+$G(PRMDB)
 ;
 S MBUT("HEADER")="!"_$$^%W1DICT("ORDER")_" "_ORD
 ;
 S LOC=+$$PRNLOCAL^W4PRM
 ;
 I DT'<DZ!$$SF^W4PRM,'PSL!$$MGR^W4KOTMLZ!$$SF^W4PRM D
 .I $G(PRMDB) D  Q
 ..I '$$PAPJ^W4PRM D
 ...S I=I+1
 ...S MBUT(I)="PRINTORDERCOPYMDB;PrintOrderCopy('"_ORD_"','"_LOC_"','1');white;blue;"
 ..
 ..S I=I+1
 ..N PRNORD S PRNORD="PRINTORDERCOPYNOMDB"
 ..I $$PAPJ^W4PRM D
 ...S PRNORD="SHOWORD2SCR"
 ..S MBUT(I)=PRNORD_";PrintOrderCopy('"_ORD_"','"_LOC_"','0');white;blue;"
 ..
 ..S I=I+1
 ..S MBUT(I)="PRINTMDBNOORDER;PrintOrderCopy('"_ORD_"','"_LOC_"','2');white;blue;"
 .
 .S I=I+1
 .S MBUT(I)="PRINTORDERCOPY;PrintOrderCopy('"_ORD_"','"_LOC_"','0');white;blue;"
 .
 ;
 D
 .I $$SUPER^W3PRM,'$$HZM^W4MSL(ORD) Q
 .S I=I+1
 .N PRNORD S PRNORD="PRINTCOPY2DISPATCHER"
 .I $$PAPJ^W4PRM S PRNORD="PRINTINVOICE2MSL"
 .S MBUT(I)=PRNORD_";Print2Dispatcher('"_ORD_"');"
 ;
 I PSL D
 .Q:$$PAPJ^W4PRM
 .S I=I+1
 .S MBUT(I)="PRINTDLVDOC;PrintDlvDoc('"_ORD_"','0');"
 .S I=I+1
 .S MBUT(I)="PRINTDLVDOCWITHOUTPRICE;PrintDlvDoc('"_ORD_"','1');"
 ;
 I '$$PAPJ^W4PRM D
 .S I=I+1
 .S MBUT(I)="PRINTBILLCOPYCONC;PrintBill('"_ORD_"','1');"
 .S I=I+1
 .S MBUT(I)="PRINTBILLCOPYDET;PrintBill('"_ORD_"','0');"
 ;
 I DT'<DZ,$$HZM^W4MSL(ORD),$G(@$$^W4PRM@("MDBKOT")) D
 .N PRN S PRN=$G(^("MDBKOT"))
 .S I=I+1
 .S MBUT(I)="PRINTMDBKOT;PrintMdbKot('"_ORD_"','"_PRN_"');white;blue;"
 ;
 I NCAB,$$TSHL^W4HZMST(ORD) D
 .S I=I+1
 .S MBUT(I)="PRINTINVOICECOPY;PrintInvoiceCopy('"_ORD_"');"
 ;
 S I=I+1
 S MBUT(I)="CLOSE;Close();white;red"
 ;
 D ^W4TBLBUT(.MBUT,"V")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRNLST
W4PRNLST ; [ 01.09.13 11:36 ] [ 15.08.13 15:30 ] [
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" align=""center"">",!
 D KOT
 ;
 N A,N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .W "<tr>"
 .S A=$G(^(N))
 .W "<td style=""color:brown;font-weight:bold"">"_N_"</td> "
 .W "<td>"_$$H2U^%L1FRM($P(A,"\",4))_"</td>"
 .W "<td style=""color:grey"">"
 . W "[ "_$P(A,"\",3)_" ]"
 .W "</td>"
 .W "</tr>",!
 W "</table>",!
 Q
 ;
KOT ;
 Q
 W "<tr>"
  W "<th>"_$$^%W1DICT("PRINTERNUMBER")_"</th>",!
 W "</tr>",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("PRINTERNAME")_"</th>",!
 W "</tr>",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "</tr>",!
 Q
 ;
 ;
DEV ;
 N DEV S DEV=$$^W4DEV
 W "<br>",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" align=""center"">",!
 ;
 N A,N S N="" F  S N=$O(@DEV@(N)) Q:N=""  D
 .W "<tr style=""cursor:pointer"" id=""tr"_N_""" "
 .W " onClick=""ClickPrn('"_N_"')"" "
 .W ">"
 .S A=$G(^(N))
 .W "<td style=""color:brown;font-weight:bold"">"_N_"</td> "
 .W "<td id=""td"_N_""" "
 .W " onMouseOver=""LightLine('"_N_"')"" "
 .W " onMouseOut=""NormalLine('"_N_"')"" "
 .W ">"_A_"</td>"
 .W "</tr>",!
 W "</table>",!
 Q

W4PRNNM
W4PRNNM(PORT) ; [ 27.06.24 06:30 ] [ 
 N NM S NM=""
 N N,A S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S A=$G(^(N))
 .I $P(A,"\",3)=PORT S NM=$P(A,"\",4)
 Q NM
 
 

W4PRNSHV
W4PRNSHV(JB,TIME) ; [ 11.06.25 01:51 ] [ 
 N (JB,TIME)
 ;
 S %ARG("PRINTPORT")=$G(@$$^W4PRM@("MDP2SHV"))
 I %ARG("PRINTPORT")<3 Q
 ;
 F  D  Q:$G(@$$^W4GL("W4PRNSHV")@(TIME))
 .I $$DIF^%L1TIME($H,TIME,1)>600 D PRINT(TIME) Q
 .H 5
 Q
 ;
 ;
PRINT(TIME) ;
 N (JB,%ARG,TIME)
 D ^W4REPEMV(+$H-1,+$H)
 ;
 S DTL=$O(@$$^W4GL("DUMP1")@(99999999999),-1) Q:'DTL
 S ASM=$G(@$$^W4GL("DUMP1")@(DTL))
 Q:'ASM
 S DT=$E(DTL,1,5)
 S PRM=ASM_";"_DT 
 S RES=$$^W4DUMP(PRM)
 ;
 S @$$^W4GL("W4PRNSHV")@(TIME)=$H_"\"_RES_"\"_ASM_"\"_DT_"\"_DTL
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4PROTIB
W4PROTIB(DAT1,DAT2) ; [ 19.12.21 11:07 ] [ 05.11.21 15:37 ] [ 
 N (JB,%ARG,%REP,DAT1,DAT2)
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S GLPROT=$$^W4GL("CMDIB")
 ;
 S I=0
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .S DAT1=$ZD(DT,"DD.MM.YY")
 .S NP="" F  S NP=$O(@GLPROT@(DAT,NP)) Q:NP=""  D
 ..S A=$G(^(NP))
 ..S ZSY=$G(@GLPROT@(DAT,NP,"ZSY"))
 ..I $$ERRONLY,'ZSY Q
 ..S KOT=$P($P(A,"-d@",2)," ")
 ..S TIME=$P(KOT,"_",2)
 ..S TIME=$$T^%L1TIME(TIME)
 ..S HZ=$P($P(KOT,"_",4),".") Q:'HZ
 ..S DATCB=$$DATCB^W4HZMST(HZ)
 ..S TOTIME=$$TRH^W4HZMST(HZ)_"  "_$$SHAA^W4HZMST(HZ)
 ..S SUGHZ=$S($$HZM^W4MSD(HZ):1,$$TAKEAWAY^W4HZMST(HZ):2,1:3)
 ..S I=I+1,@TMP@(I)=DAT1_"\"_DATCB_"\"_TOTIME_"\"_SUGHZ_"\"_HZ_"\"_TIME_"\"_ZSY
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W $$^%W1DICT("ALLORDERS")_" "
  W "<input type=""radio"" name=""erronly"" "_$$CHECKED(0)_" onClick=""ErrOnly()"" >"
  W $$^%W1DICT("CONNECTERRORDERS")_" "
  W "<input type=""radio"" name=""erronly"" "_$$CHECKED(1)_" onClick=""ErrOnly()"" >"
  ;
  W "<br><br>",!
 W "<table id=""tbprot"" border=""1"" WIDTH=""60%"" cellspacing=""1"" cellpadding=""2"" >",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("DATE")_"</th>",!
   W "<th>"_$$^%W1DICT("ZMANK")_"</th>",!
   W "<th>"_$$^%W1DICT("TOTIME")_"</th>",!
   W "<th>"_$$^%W1DICT("KINDORD")_"</th>",!
   W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>",!
   W "<th>"_$$^%W1DICT("SENDTIME")_"</th>",!
   W "<th>"_$$^%W1DICT("ERROR")_"</th>",!
  W "</tr>",!
 ;
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .S ERR=$P(A,"\",7)
 .W "<tr align=""center"" "
 . I ERR W " style=""background-color:red;font-weight:bold"" " 
 . W ">"
 . W "<td>" 
 .  W $P(A,"\")
 . W "</td>" 
 .
 . W "<td>"
 .  W $P(A,"\",2) 
 . W "</td>" 
 .
 . W "<td>"
 .  W $P(A,"\",3) 
 . W "</td>" 
 .
 . W "<td>"
 .  N SUG S SUG=$P(A,"\",4) 
 .  N SUG1 S SUG1=$S(SUG=1:"CSR",SUG=2:"TAKEAWAY",1:"DELIVERY")
 .  W $$^%W1DICT(SUG1)
 . W "</td>" 
 .
 . N ORD S ORD=$P(A,"\",5)
 . W "<td style=""cursor:pointer;font-weight:bold"" onClick=""ShowOrd('"_ORD_"')"" >"
 .  W ORD
 . W "</td>" 
 .
 . W "<td style=""font-weight:bold;text-align:center"">"
 .  W $P(A,"\",6) 
 . W "</td>" 
 .
 . W "<td>"
 .  W $$NBSP^%L1FRM(4)_ERR
 . W "</td>" 
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
ERRONLY(STAM) ;
 Q $G(%ARG("ERRONLY"))
 ;
CHECKED(VL) ;
 I +$$ERRONLY=+VL Q " checked=""checked"" "  
 Q "" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRSMNU
W4PRSMNU(SIDE) ; [ 09.09.26 10:57 ] [ 19.04.26 11:04 ] [ 21.02.24 15:36 ] 
 N (JB,%ARG,%REM,SIDE)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S CLSMN=$S($$^%W1DIR="RTL":"menuh",1:"menu")
 S CUR=+$$GETP^%W1PRM("PRSNLCUR")
 ;
 ;;W "Session "_JB_" [ "_$$^W4MYDVN_" ]",!
 W "<br>",!
 S ZERO=0
 S GLM=$$GL
 ;
 I '$$SIDE D
 .I $O(@GLM@(""))="" D  Q
 ..W "<script>",!
 .. W "Back()",!
 ..W "</script>",!
 ;
 I $O(@GLM@(""))=0,'$$SIDE S ZERO=1
 ;
 S N="",I=0
 F  S N=$O(@GLM@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S RKV=$P(A,";",1)
 .S FL=$P(A,";",2)
 .S PROC=$P(A,";",3)
 .S PRARR=+$P(A,";",4)
 .S I=I+1,MN(I)=RKV,MF(I)=FL,MA(I)=PROC,MR(I)=PRARR
 ;
 S IM=I
 ;
 I '$$SIDE D
 .W "<div "_$$^%W1ALIGN_""" dir="""_$$^%W1DIR_""" ",!
 . W " style=""color:brown;font-size:"_$$^W3FSZ(16,1)_""" "
 .W ">",!
 . D
 . .N MN S MN=$$GETP^%W1PRM("CURMENU")
 . .I $E(MN,1,7)="FINDALL" D  Q
 . ..N SRC S SRC=$G(@$$^W4GL("W4PRSMNU")@(MN))
 . ..W $$^%W1DICT("MENUOPTIONSBYWORD",SRC)
 . .W $$^%W1DICT("PERSONALAREA")
 .W "</div>"
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" ",!
 W ">",!
 ;
 W "<table class="""_CLSMN_""" width="""_$S(SIDE:80,1:40)_"%"" border=""0"""
 W " cellpadding="""_$$^W4KF(4+$$^W4TABLET)_"px"" "
 W " dir="""_$$^%W1DIR_""""
 W " >",!
 ;
 N I1,K S I1=0,K=0
 N ONCLICK,ONCLICKDIR,CURSORDIR
 ;
 M MN1=MN
 ;
 S I1=0
 F I=1:1:IM D
 .I I=1,$$SIDE Q
 .S MN1(I)=$$SPA^%L1FRM(MN1(I))
 .
 .I 'ZERO S I1=I1+1
 .
 .N JSP,PRM S JSP=$P(MA(I),"?")
 .S HREF="",ONCLICK=""
 .I $G(MF(I))'="",$G(MA(I))'="" D
 ..S ONCLICK=" onClick="""_$$ONCLICKMENU_"('"_I1_"','"_MF(I)_"','"_MA(I)_"')"" "
 .
 .S CURSORDIR=";cursor:pointer"
 .
 .I I1=(1-ZERO),'$$SIDE D  S:ZERO I1=I1+1 Q  ; --- BACK
 ..W "<tr>"
 ..W "<td width=""100%"" colspan=""2""><table width=""100%"">"
 ..N STYLE S STYLE=" style=""background-color:white;color:brown;text-align:center;cursor:pointer;border:ridge 1px brown;"
 .. W "<tr>" N WDP S WDP=0
 ..   W " <td width="""_(100-WDP)_"%"" "_STYLE_";font-size:"_$$^W3FSZ($$FSZ)_""""
 ..   W " onClick=""Back()"" >"
 ..   S MN1=$$^%W1DICT(MN1(I))
 ..   W MN1
 .. W "</td>",!
 ..W "</tr></table></td></tr>",!
 .
 .W "<tr>"
 . I '$$SIDE D
 . .W "<td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)
 . . W ";color:brown;cursor:pointer"" "
 . .W ">"
 . .I $G(MR(I)) W "<img src=""w3dir.jpg"">&nbsp;"
 . .E  W $$NBSP^%L1FRM(4)
 . .W I1_"."
 ..W "</td>" ; -- MENU NUMBER
 .
 .W "<td width=""90%"" "
 . W " style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)
 .   I $$SIDE W ";background-color:white;border:2px brown solid"
 .   I '$$SIDE W ";color:"_$S(I1=(1-ZERO):"red",1:$$FGFLD^W3CSS($$COLOR^W4GETCLR))
 .   I I1=$G(CUR) W ";text-decoration:underline"
 .   W ";"_$$DRC^%W1DIR
 .   W ";cursor:pointer"""
 . I I>1 D
 .. W " onMouseOver=""OnMouseOverMenu(this)"" "
 .. W " onMouseOut=""OnMouseOutMenu(this)"" "
 . N PARENT S PARENT=$$PARENT(MN1(I))
 . I $$GETP^%W1PRM("CURMENU")'?1"FINDALL"1N.E S PARENT="" 
 . S MN1=$$^%W1DICT(MN1(I))
 . I PARENT'="" S MN1=MN1_" [ "_$$^%W1DICT(PARENT)_" ]"
 . W ONCLICK_" >"_MN1_"</td>"
 .W "</tr>",!
 .I ZERO S I1=I1+1
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
US(STAM) ;
 Q $$GETP^%W1PRM("PRSNLMENU")&$$MENU
 ;
MENU(STAM) ;
 Q ($D(@$$^W4GL("W4PRSMNU"))>9)
 ;
PROC(STAM) ;
 N ARG S ARG=$G(%ARG("PRSNLPROC"))
 S ARG=$$RPL^%L1FRM(ARG,"\'","'")
 Q $$RPL^%L1FRM(ARG,"'","\'")
 ;
GL(STAM) ;
 N CDMN
 S CDMN=$$GETP^%W1PRM("CURMENU")
 I CDMN="" S CDMN="MGR"
 Q $$^W4GL("W4PRSMNU")_"("""_CDMN_""")"
 ;
 ;
SHOWMENU ; 
 N (JB,%REM,%ARG)
 D TMP
 ; 
 W "<br>",!
 ;
 S N="",I=0
 F  S N=$O(@TMP@(N)) Q:N=""  I N>0 D
 .S A=$G(^(N))
 .S RKV=$P(A,";",1)
 .S FL=$P(A,";",2)
 .S PROC=$P(A,";",3)
 .S I=I+1,MN(I)=RKV,MF(I)=FL,MA(I)=PROC
 ;
 S IM=I
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" ",!
  W " style=""color:brown;font-size:"_$$^W3FSZ(16,1)_""" "
 W ">",!
  W $$^%W1DICT("PERSONALAREA")
 W "<p dir="""_$$^%W1DIR_""" style=""text-align:center;color:darkblue;font-size:"_$$^W3FSZ(9)_""">"
  W $$^%W1DICT("TOCHANGEORDERPRESS#")
 W "</p>",! 
 ;;W "<p>&nbsp;</p>",!
 ;
 ;
 W "<table id=""tbprsmnu"" border=""1"" cellspacing=""0"" width=""80%"" "
 W " cellpadding="""_$$^W4KF(4+$$^W4TABLET)_"px"" "
 W " style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)_""" "
 W " dir="""_$$^%W1DIR_""""
 W " >",!
 ;
 N I1,K S I1=0,K=0
 ;
 M MN1=MN
 ;
 F I=1:1:IM D
 .S MN1(I)=$$SPA^%L1FRM(MN1(I))
 .S MN1=$$^%W1DICT(MN1(I))
 .
 .W "<tr>"
 . W "<td style=""color:brown"">"_I_"</td>"
 . W "<td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ($$FSZ)_""" width=""75%"" >"
 .  W MN1
 . W "</td>"
 . W "<td>"  
 .  W "<input id=""nom"_I_""" type=""text"" size=""2"" onFocus=""this.select()"">" 
 .  W "&nbsp;" 
 .  W "<button onClick=""ChangeNom('"_I_"')"">#</button>",!  
 . W "</td>"  
 .W "</tr>",!  
 ;
 W "</table>",! 
 ;
 W "<p>&nbsp;</p>",!
 D ^W4SBMBCK
 W "</div>",!
 Q 
 ;
CHN(PRM) ;
 N TMP D TMP
 N TMP1 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 N IO,IN
 S IO=$P(PRM,";")
 S IN=$P(PRM,";",2)
 I IO=IN Q 1
 N AO S AO=@TMP@(IO)
 N AN S AN=@TMP@(IN)
 N I,MAX
 S MAX=$O(@TMP@(99999),-1)
 I 'MAX Q 1
 K @TMP@(IO)
 I IN>IO D
 .D ADD^%L1GSEQ(TMP,IN+1,AO) ;
 I IN<IO D
 .D ADD^%L1GSEQ(TMP,IN,AO) ;
 ;
 N I,N S I=0
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S I=I+1,@TMP1@(I)=@TMP@(N) 
 ;
 K @TMP
 M @TMP=@TMP1
 K @TMP1
 Q 1
 ;
 ;
SBM() ; 
 N TMP,GLM,N
 D TMP,GLM
 ;
 S N=0 F  S N=$O(@GLM@(N)) Q:N=""  K @GLM@(N)
 S N=0 F  S N=$O(@TMP@(N)) Q:N=""  D
 .S @GLM@(N)=@TMP@(N)
 K @TMP
 I '$D(@GLM@(0)) S @GLM@(0)="EXIT;w4bo.jsp;Back();"
 Q 1
 ;
INIT ; 
 N TMP,GLM,N
 D TMP,GLM K @TMP
 S N=0 F  S N=$O(@GLM@(N)) Q:N=""  D
 .S @TMP@(N)=@GLM@(N)
 Q 
 ;
TMP ; 
 S TMP=$$^W4MAIN("TMP") 
 Q 
 ; 
GLM ;
 S GLM=$$GL
 Q
 ;
SIDE() ;
 Q $G(SIDE)
 ;
ONCLICKMENU() ;
 I $$SIDE Q "OnClickPrsnlMenu" 
 Q "OnClickMenu" 
 ;
FSZ() ; 
 Q 14-$$1024^W4WDSCR
 ;
PARENT(TX) ; 
 N GL,OK,PARENT
 S GL=$$^W4GL("W4OPT"),OK=0,PARENT="" 
 N A,N,N1 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:$L(PARENT)
 .I N="LKH" Q
 .I N="ASHRAM" Q
 .I N["POP" Q
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D  Q:$L(PARENT)
 ..S A=$G(^(N1)) 
 ..I $P(A,";",2)=TX S PARENT=$P($G(@GL@(N)),";")
 Q PARENT
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRT
W4PRT ; [ 28.03.23 19:51 ] [ 01.08.21 14:36 ] [ 01.07.21 19:25 ] 
INP(STAM) ;
 ;;I $$ONEGLPAR^W3PRM Q 0
 I $G(%ARG("DOC"))="I" Q 1
 I $E($$GETP^%W1PRM("DOC"))="I" Q 1
 I $E($$GETP^%W1PRM("ELPOS"))&'$$GETP^%W1PRM("PRKUP") Q 1
 Q 0
 ;
GLP(STAM) ;
 N GLP
 S GLP="PAR" I $$INP S GLP="MLPAR"
 Q GLP
 ;
GETNAME(PRM) ;
 I PRM=0!(PRM)="" Q ""
 S PRM=$$FUNC^%UCASE(PRM)
 I '$$INP Q $$SHEM^W4P(PRM)
 Q $G(@$$^W4GL("MLPAR")@(PRM))
 ;
GET(PRM,NODSC) ;
 N PAR
 S PAR=$$FUNC^%UCASE($P(PRM,";"))
 I PAR=0!(PAR="") Q ""
 Q $$GETMH(PRM,NODSC)_";"_$$MLMAM^W4MLPRT(PAR)
 ;
GETMH(PRM,NODSC) ;
 N PAR
 S PAR=$$FUNC^%UCASE($P(PRM,";"))
 N ORG S ORG="" I PAR["^" S ORG=$P(PAR,"^",2),PAR=$P(PAR,"^")
 I PAR=0!(PAR="") Q ""
 N EMHZ S EMHZ=$P(PRM,";",2) I EMHZ="" S EMHZ=1
 N MH,KF S MH=0
 ;
 I '$$INP D  Q MH
 .S MH=$$MH^W4P(PAR)
 .S KF=$$MKDM^W4MLPRT(EMHZ_";1")
 .S MH=MH*KF
 ;
 D 
 .I $G(ORG) S MH=$G(@$$^W4GL("MLSPKMH")@(ORG,PAR)) Q:MH'=""
 .N MHAL S MHAL=$$MHAL^W4MLPRT(PAR)
 .I '$G(NODSC) S MH=MHAL
 .I $G(NODSC) S MH=$$MHL^W4MLPRT(PAR) I 'MH,MHAL S MH=MHAL Q
 N EMSFR S EMSFR=$$MLEMSFR^W4MLPRT(PAR)
 S KF=$$MKDM^W4MLPRT(EMHZ_";"_EMSFR)
 Q $J(MH*KF,6,6)
 ;
GETEMHZ(CODE)
 Q $$MLEMHZM^W4MLPRT(CODE)
 ;
KF(CODE)
 Q $$KF^W4MLPRT(CODE)
 ;
NEWKF(EM,EMO,CHK) ;
 S EM=$$SPA^%L1FRM(EM)
 S EMO=$$SPA^%L1FRM(EMO)
 I '$G(EM)!'$G(EMO) G NEWKFER
 I EM=EMO Q 1
 N GL,END,KFN,KFO,KF
 S GL=$$^W4GL("MLMKDM")
 S END=0,KF=""
 I $G(@GL@(EM,EMO)) Q @GL@(EM,EMO)
 I $G(@GL@(EMO,EM)) Q $J(1/@GL@(EMO,EM),7,7)
 ;
 N N S N="" F  S N=$O(@GL@(EM,N)) Q:N=""  D  Q:END
 .S KFN=$G(^(N))
 .I $D(@GL@(EMO,N)) D
 ..S KFO=$G(^(N))
 ..I KFO S KF=KFN/KFO,END=1
 ;
 I KF="" G NEWKFER
 Q KF
 ;
NEWKFER Q $S($G(CHK):"",1:1)
 ;
GETPRM(CODE)
 S CODE=$$FUNC^%UCASE(CODE)
 N KF S KF=$$KF(CODE)
 I $$GETP^%W1PRM("PRKUP") S KF=1
 ;
 N ORG,CODP S ORG="",CODP=CODE
 I CODE["^" S ORG=$P(CODE,"^",2),CODP=$P(CODE,"^")
 ;
 N MH S MH=$J($$GETMH(CODE,1)*KF,2,2)
 N DISC S DISC=""
 I $$INP S DISC=$$DISC^W4MLPRT(CODP) ; --- ??? -> CODE
 Q $$CLWEB^%L1FRM($$GETNAME(CODP))_";"_MH_";"_$$GETEMHZ(CODP)_";"_KF_";"_DISC
 ;
SETNAME(PRM) ;
 N PAR,NAME
 S PAR=$$FUNC^%UCASE($P(PRM,";"))
 S NAME=$P(PRM,";",2)
 I PAR=0!(PAR="") Q
 N NM S NM=$$INVH^%L1FRM($$CNWEB^%L1FRM(NAME))
 I $$GLP="PAR" D PUT^W4P(PAR,"NAME",NM) D  Q
 .I $$ONEGLPAR^W3PRM S @$$^W4GL("MLPAR")@(PAR)=NM
 S @$$^W4GL("MLPAR")@(PAR)=NM
 Q
 ;
SETMH(PRM) ;
 ;;S ^AA("W4PRT","SETMH","PRM")=PRM
 N PAR,MH,EM,SPK,VD,NUMBER,DAT
 S PAR=$$FUNC^%UCASE($P(PRM,";"))
 S MH=$P(PRM,";",2)
 S EMHZ=$P(PRM,";",3) S:EMHZ="" EMHZ=1
 S VD=$P(PRM,";",4)
 S NUMBER=$P(PRM,";",5)
 S DAT=$P(PRM,";",6)
 I 'DAT D
 .S DAT=$$DAT^W4DOC($$NOM^W4DOC(NUMBER))
 ;
 ;;I 'DAT S DAT=$ZD($H,"DD.MM.YY")
 S DT=$$^%L1DC(DAT,3)
 Q:'DT
 ;
 I PAR=0!(PAR="") Q
 ;
 I $$GLP="PAR" D PUT^W4P(PAR,"MH",$J(MH,6,6))
 ;
 N SPK S SPK=$$GETP^%W1PRM("SPK") Q:'SPK
 N EMSFR S EMSFR=$$EMSFR^W4PRT(PAR)
 I EMSFR="" S EMSFR=$$EM^W4SETMLY(EMHZ)
 N KF S KF=$$MKDM^W4MLPRT(EMHZ_";"_EMSFR) S:'KF KF=1
 S MH=MH/KF
 ;;S ^AA("W4PRT","SETMH","MH")=MH
 D SETSPKMH^W4SPKMH(SPK,PAR,DT,$J(MH,6,6),VD,NUMBER)
 Q
 ;
TRCODE(PRM) ;
 N SPK S SPK=$P(PRM,";",2)
 S CODE=$P(PRM,";")
 S CODE=$$FUNC^%UCASE($TR(CODE," ",""))
 ;
 I $D(@$$GLMLPAR@(SPK_"-"_CODE)) S CODE=SPK_"-"_CODE
 ;
 I $E(CODE)="=",SPK D
 .S CODE=$E(CODE,2,255) Q:CODE=""
 .I $L($G(@$$GLSPKMHS^W4SPKMH@(SPK,CODE))) S CODE=$G(^(CODE))
 ;
 I $E(CODE,$L(CODE))="=",SPK D
 .S CODE=$E(CODE,1,$L(CODE)-1) Q:CODE=""
 .I $L($G(@$$GLSPKMHS^W4SPKMH@(SPK,CODE))) S CODE=$G(^(CODE))
 ;
 Q CODE
 ;
 ;
EMSFR(PRT) ;
 I $G(PRT)="" Q ""
 Q $P($G(@$$GLMLPAR@(PRT,1)),"\",3)
 ;
EMSFR1(PRT) ;
 I $G(PRT)="" Q ""
 N EMSFR S EMSFR=$$EMSFR(PRT) I EMSFR="" Q ""
 Q $G(@$$^W4GL("MLMIDA")@(EMSFR))
 ;
EMHZ(PRT) ;
 I $G(PRT)="" Q ""
 Q $P($G(@$$GLMLPAR@(PRT,1)),"\",2)
 ;
EMHZ1(PRT) ;
 I $G(PRT)="" Q ""
 N EMHZ S EMHZ=$$EMHZ(PRT) I EMHZ="" Q ""
 Q $G(@$$^W4GL("MLMIDA")@(EMHZ))
 ;
GLMLPAR(STAM) ;
 Q $$^W4GL("MLPAR")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRTBH
W4PRTBH(CD) ; [ 28.05.25 16:11 ] [ 10.02.17 18:51 ] [ 
 I $G(CD)="" Q 0
 I CD=0,$G(@$$^W4PRM@("NODISC0")) Q 1
 Q $D(@$$^W4GL("PRTBH")@(CD))
 

W4PRTDEP
W4PRTDEP(DEP,PRT,DT1,DT2) ; [ 19.07.18 19:21 ] [ 12.07.18 11:36 ] [ 11.07.18 09:37 ] 
 N (JB,%ARG,DEP,PRT,DT1,DT2)
 S PRT1="" I PRT S PRT1=$$SHEM^W4P(PRT)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 D CLOSE(1)
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 W "<br>",!
 W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
  W $$^%W1DICT("ITEMREPORT<>"_PRT_"<>"_PRT1_"<>"_DAT1_"<>"_DAT2)
 W "</span>"
 W "<br><br>",!
 ;
 W "<table id=""TblPrt"" width=""60%"" border=""1"" cellspacing=""0"" celpadding=""5px"" >",!
 W "<tr>"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("ORDER")_"</th>"
  W "<th>"_$$^%W1DICT("QUANT")_"</th>"
  W "<th>"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 ;
 S (SQN,SSUM)=0
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4MAIN("VRM")@(DT,"DEP",DEP,"PRT",PRT,HZ)) Q:HZ=""  D
 ..S A=$G(^(HZ))
 ..W "<tr style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"',this)"" >"
 .. S QN=$P(A,"\"),SUM=$P(A,"\",2)
 .. S PRT1=$$H2U^%L1FRM($$SHEM^W4P(PRT))
 .. S SQN=SQN+QN,SSUM=SSUM+SUM
 .. W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>"
 .. W "<td>"_HZ_"</td>"
 .. W "<td>"_QN_"</td>"
 .. W "<td dir=""LTR"" align=""right"">"_$J(SUM,2,2)_"</td>"
 ..W "</tr>",!
 ;
 W "<tr style=""cursor:pointer;background-color:yellow;font-size:"_$$^W3FSZ(14)_""">"
  W "<td colspan=""2"">&nbsp;</td>"
  W "<td>"_SQN_"</td>"
  W "<td dir=""LTR"" align=""right"">"_$J(SSUM,2,2)_"</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "<br>"
 D CLOSE(2)
 Q
 ;
CLOSE(N) ;
 W "<div id=""close"_N_""">",!
  D BUTS
 W "</div>",!
 Q
 ;
BUTS ; 
  D ^W4BUTTON("print","PRINT","Print()","color:blue")
  W $$NBSP^%L1FRM(5)
  D ^W4BUTTON("close","CLOSE","Close()","color:red")
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRTEND
W4PRTEND ; [ 05.08.23 20:57 ] [ 10.06.23 18:05 ] [ 19.01.23 19:17 ] 
 N (JB,%ARG,%REM) S P1DZ=$$^W4DZ
 S JB=+$G(JB)
 D KILL^%W3DEB("W4PRTEND")
 D PUT^%W3DEB("W4PRTEND","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 N LD S LD=$O(@$$^W4GL("PRTEND")@(P1DZ),-1)
 ;
 I LD,'$G(@$$^W4PRM@("PRTENDLD")),'$D(@$$^W4GL("PRTEND")@(P1DZ)) D
 .D ^W4BTN("COPYFROMLASTDAY","CopyFromLastDay()")
 .W "<br><br>",!
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width="""_$S($$^W4TABLET=2:100,1:80)_"%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""8%"">"_$$^%W1DICT("NPP")_"</th>"
 W "  <th width=""12%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "  <th width=""30%"">"_$$^%W1DICT("ITEMSGROUP")_"</th>"
 W "  <th width=""20%"">"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 N I,N
 I $G(@$$^W4PRM@("PRTENDLD")),'$D(@$$^W4GL("PRTEND")@(P1DZ)) D
 .M @$$^W4GL("PRTEND")@(P1DZ)=@$$^W4PRM@("PRTENDLD")
 .I $G(@$$^W4PRM@("PRTENDLD"))["ZERO" D
 ..S N="" F  S N=$O(@$$^W4GL("PRTEND")@(P1DZ,N)) Q:N=""  D
 ...S ^(N)=0
 ;
 S N="" F I=1:1 S N=$O(@$$^W4GL("PRTEND")@(P1DZ,N)) Q:N=""  D
 .S @GLTMP@(N)=$G(@$$^W4GL("PRTEND")@(P1DZ,N))
 .S @GLTMP@(N,"I")=I
 ;
 S N="" S N=$O(@GLTMP@(N)) W "<tr id=""trid"_1_""">" W $$LINE("1;"_N) W "</tr>",!
 F I=2:1 S N=$O(@GLTMP@(N)) Q:N=""  W "<tr id=""trid"_I_""">" W $$LINE(I_";"_N) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
SAVEND(STAM) ;
 N N,PARHR,NOK
 D GLTMP
 S NOK=0
 ;
 ;;N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D  Q:NOK
 ;;.S VL=$G(@GLTMP@(N)) I '$D(^(N,"DEL")),VL'?1N.N S NOK=$G(@GLTMP@(N,"I"))
 ;;I NOK Q NOK
 ;
 N ELD S ELD=$G(@$$^W4PRM@("PRTENDLD"))
 K @$$^W4PRM@("PRTENDLD")
 S @$$^W4PRM@("PRTENDLD")=ELD
 ;
 N P1DZ S P1DZ=$$^W4DZ
 N N,I S N="",I=0 F  S N=$O(@GLTMP@(N)) Q:N=""  I '$D(^(N,"DEL")) S I=I+1
 D PUT^%W3DEB("W4PRTEND","I=I")
 K @$$^W4GL("PRTEND")@(P1DZ)
 ;
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .S VL=$G(@GLTMP@(N))
 .I $D(@GLTMP@(N,"DEL")) Q
 .S @$$^W4GL("PRTEND")@(P1DZ,N)=VL
 .S @$$^W4GL("PRTENDA")@(P1DZ,N)=VL
 .S @$$^W4GL("PRTENDA")@(P1DZ,N,"MH")=$$MH^W4P(N)
 .
 .I $G(@$$^W4PRM@("PRTENDLD")) D
 ..S @$$^W4PRM@("PRTENDLD",N)=VL
 K @GLTMP
 ;
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMPEND")
 Q
 ;
 ;
LINE(PRM) ;
 N I,PAR S I=$P(PRM,";")
 S PAR=$P(PRM,";",2)
 N GLTMP D GLTMP
 N ST
 S ST=$$ST^W4PLMIN(I)
 ;S ST=""
 ;S ST=ST_" <td align=""center"" >"
 ; ;
 ;S ST=ST_"  <span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"" "
 ;S ST=ST_"   onClick=""NewLine('"_I_"')""> + "
 ; S ST=ST_"  </span><br />"
 ; S ST=ST_"  <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
 ; S ST=ST_"   onClick=""DeleteRow('"_I_"')"" > - </span>"
 ; S ST=ST_" </td>"
  ;
  S ST=ST_" <td style=""text-align:center"" width=""25%"">"
   S ST=ST_$$VVPRT(I_";"_PAR)
  S ST=ST_"  </td>"
  ;
  N PARNAME S PARNAME=$$SHEM^W4P(PAR)
  S ST=ST_"  <td "_$$^%W1ALIGN_" id=""itemnm"_I_""" >"
   S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(PARNAME)
  S ST=ST_"  </td>"
  ;
  N GR,GRNAME S GR=$$SUG^W4P(PAR),GRNAME=""
  I GR S GRNAME=$G(@$$^W4GL("PARSUG")@(GR))
  S ST=ST_"  <td "_$$^%W1ALIGN_" id=""gr"_I_""" >"
   S ST=ST_"&nbsp;&nbsp;"_GR_"&nbsp;&nbsp;"_$$H2U^%L1FRM(GRNAME)
  S ST=ST_"  </td>"
  ;
  S ST=ST_"  <td align=""center"" >"
   S ST=ST_"<input type=""text"" size=""4"" maxlength=""4"" id=""itra"_I_""" onClick=""this.select()"" "
   N ITRA S ITRA=""
   I $G(PAR) S ITRA=$G(@GLTMP@(PAR))
   S ST=ST_" value="""_ITRA_""" "
   S ST=ST_" onKeyUp=""SetItra('"_I_"',this)"" "
  S ST=ST_"  </td>"
 Q ST
 ;
 ;
SETPRT(PRM)
 D PUT^%W3DEB("W4PRTEND-SETPRT","PRM=PRM")
 N PAR,I,VL
 S PAR=$P(PRM,";")
 I PAR="" Q "CODENOTEXIST"
 S I=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 N GLTMP D GLTMP
 ;
 I $G(@GLTMP@(PAR,"I")),^("I")'=I Q "SAMECODE"
 I '$D(@$$^W4GL("PAR")@(PAR)) Q "CODENOTEXIST"
 N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .I $G(^(N,"I"))=I,N'=PAR K @GLTMP@(N)
 S @GLTMP@(PAR)=VL
 S @GLTMP@(PAR,"I")=I
 N PAR1 S PAR1=$$SHEM^W4P(PAR)
 N GR,GR1 S GR1="",GR=$$SUG^W4P(PAR)
 I GR S GR1=$G(@$$^W4GL("PARSUG")@(GR))
 Q "OK~"_$$H2U^%L1FRM(PAR1)_"~"_$$H2U^%L1FRM(GR1)
 ;
SETITRA(PRM)
 D PUT^%W3DEB("W4PRTEND-SETITRA","PRM=PRM")
 N PAR,I,VL
 S PAR=$P(PRM,";")
 I PAR="" Q "CODENOTEXIST"
 S VL=$P(PRM,";",2)
 N GLTMP D GLTMP
 I '$D(@$$^W4GL("PAR")@(PAR)) Q "CODENOTEXIST"
 I VL'?1N.N Q "NUMBERONLY"
 S @GLTMP@(PAR)=VL
 Q "OK"
 ;
DELROW(PAR) ;
 Q:$G(PAR)=""
 N GLTMP D GLTMP
 I '$D(@GLTMP@(PAR,"DEL")) S @GLTMP@(PAR,"DEL")=1 Q
 K @GLTMP@(PAR,"DEL")
 Q
 ;
VVPRT(PRM) ;
 N I,VL,IDCD,IDNM
 S I=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S IDCD="itemcd"_I
 S IDNM="itemnm"_I
 S PROC="SetPar(\'"_I_"\',\'"_IDCD_"\',\'"_IDNM_"\')"
 N FIND S FIND="Find('"_I_"','"_IDCD_"','"_IDNM_"','"_PROC_"')"
 N A
 S A="<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"id=""itemcd"_I_""" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"onFocus='this.select()' "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img id=""filter"" src=""w3filter.jpg"" "
 S A=A_" onClick="""_FIND_""">"
 Q A
 ;
COPYLAST(STAM) ;
 N P1DZ S P1DZ=$$^W4DZ
 N LD S LD=$O(@$$^W4GL("PRTEND")@(P1DZ),-1) I LD="" Q 0
 M @$$^W4GL("PRTEND")@(P1DZ)=@$$^W4GL("PRTEND")@(LD)
 N N S N="" F  S N=$O(@$$^W4GL("PRTEND")@(P1DZ,N)) Q:N=""  D
 .S ^(N)=""
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRTHRK
W4PRTHRK ; [ 10.06.23 16:18 ] [ 21.06.22 10:35 ] [ 05.12.21 15:17 ] 
 N (JB,%ARG)
 S JB=+$G(JB)
 S SRCH=$G(%ARG("SRCH"))
 D KILL^%W3DEB("W4PRTHRK")
 D PUT^%W3DEB("W4PRTHRK","%ARG=[%ARG")
 ;
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 I $G(%ARG("CDKV"))="" S %ARG("CDKV")=$O(@$$^W4GL("PARSUG")@(""))
 D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 S FIRST=1
 W "<div id=""maindiv"" align=""center"" >",!
 W "<table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width="""_$S($$^W4TABLET=2:98,1:80)_"%"">",!
 ;
 N N,NN,I
 D GLP
 ;
 N I S I=0
 K @GLP
 I $L($G(SRCH)) S %ARG("CDKV")=""
 S N="" F  S N=$O(@$$GL@(N)) Q:N=""  D
 .I $G(%ARG("CDKV")),$$SUG^W4P(N)'=%ARG("CDKV") Q
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N) Q
 .I $D(@$$^W4GL("P1EZH")@(N))>9 Q
 .;
 .I FIRST D KOT S FIRST=0
 .W "<tr "
 . W $$STYLE^W4PRTVW(N)
 . W ">" S I=I+1
 . W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 . W "<td align=""center"">&nbsp;"_$$NAME(N)_"&nbsp;</td>"
 . W "<td align=""center"" >"
 . W "<input type=""text"" size=""36"" id=""cmnt"_N_""" "
 . W " onChange=""SetCmnt(this)"" "
 . S HRA=$$H2U^%L1FRM($$HRA^W4P(N))
 . W " value="""_HRA_""" />",!
 . W "</td>",!
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
SAVEND(PRM) ;
 D GLP
 S PRM=$G(PRM)
 N KV
 S KV=$P(PRM,";")
 N A,N S N="" F  S N=$O(@GLP@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S $P(@$$^W4GL("PAR")@(N),"**",13)=A
 ;
 K @GLP
 Q
 ;
 ;
GLP S GLP="^[$$^W3MAIN]TMPPAR(JB)"
 Q
 ;
FIRSTGR(STAM) ;
 Q $$^W3FRSTGR
 ;
SETCMNT(PRM) ;
 D PUT^%W3DEB("W4PRTHRK-SETCMNT","PRM=PRM")
 N CD,GLP,VL
 D GLP
 S CD=$P(PRM,"~")
 S CD=$P(CD,"cmnt",2) I 'CD Q 0
 S VL=$P(PRM,"~",2)
 S VL=$$CNWEB^%L1FRM(VL)
 S VL=$$INVH^%L1FRM(VL)
 S VL=$$SPA^%L1FRM(VL)
 ;
 S @GLP@(CD)=VL
 Q 1
 ;
 ;
GL(STAM) ;
 Q $$^W4GL("PAR")
 ;
NAME(N) ;
 Q $$H2U^%L1FRM($$SHEM^W4P(N))
 ;
KOT ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 S NMCD="ITEMCODE"
 S NMNM="ITEMNAME"
 ;
 W "<th width=""10%"">"_$$^%W1DICT(NMCD)_"</th>"
 W "<th width=""50%"">"_$$^%W1DICT(NMNM)_"</th>"
 W "<th width=""40%"">"_$$^%W1DICT("COMMENT")_"</th>"
 W "</tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4PRTMV
W4PRTMV ; [ 08.02.14 14:06 ] [ 07.02.14 23:05 ] [ 27.01.14 23:04 ]
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 D ^%W1ARG ; ==> PRT
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table width=""97%"" border=""1"" "
 W " dir="""_$$^%W1DIR_""" "
 W " style=""font-size:"_$$^W3FSZ(10)_""" "
 W " cellpadding=""0"" cellspacing=""0"" >",!
 ;
 W " <tr style=""font-weight:bold;text-align:center"">"
 W "  <th width=""10%"">"_$$^%W1DICT("DATE")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("ORGCODE")_"</th>"
 W "  <th width=""25%"">"_$$^%W1DICT("ORGNAME")_"</th>"
 W "  <th width=""15%"">"_$$^%W1DICT("DOCNAME")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("DOCNUMBER")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("QNIN")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("QNOUT")_"</th>"
 W "  <th width=""10%"">"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 ;
 S GLMH=$$GLSPKMH^W4SPKMH
 S GLMHP=$$GLSPKMHP^W4SPKMH
 ;
 I $L($G(PRT)) D
 .S DT="" F  S DT=$O(@GLMHP@(PRT,DT)) Q:DT=""  D
 ..S SPK="" F  S SPK=$O(@GLMHP@(PRT,DT,SPK)) Q:SPK=""  D
 ...I '$D(@GLMH@(SPK,PRT,DT)) Q
 ...S A=$G(^(DT))
 ...D STR(DT,SPK,A)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
STR(DT,SPK,CONT)
 W "<tr style=""cursor:pointer"" "
  W " onClick=""ShowPriceList('"_SPK_"','"_$ZD(DT,"DD.MM.YY")_"','"_PRT_"')"" "
 W ">",!
 ;
 W "<td>&nbsp;"_$ZD(DT,"DD.MM.YY")_"&nbsp;</td>"
 ;
 W "<td>&nbsp;"_SPK_"&nbsp;</td>"
 W "<td>&nbsp;"_$$H2U^%L1FRM($$NAME^W4SPK(SPK))_"&nbsp;</td>"
 ;
 N ITSP S ITSP=$P(CONT,"\",2),BGR="white"
 ;
 W "<td >"
  W $S(ITSP:ITSP,1:"&nbsp;")
 W "</td>",!
 ;
 N MHSP S MHSP=$P(CONT,"\")
 I MHSP="" S MHSP=$$^%W1DICT("NOTDEFINED"),BGR="yellow"
 I MHSP S MHSP=$J(MHSP,2,2),BGR="white"
 ;
 W "<td>"
  W MHSP
 W "</td>",!
 ;
 W "</tr>",!
 Q

W4PRTNE0
W4PRTNET ; [ 05.01.21 13:05 ] [ 03.01.21 11:49 ] [ 17.10.18 13:04 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 ;
 S W3PRTPC=""
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 ;
 S KVZ="^[$$^W3MAIN]PARCAT($$^%W1JB)"
 D MMRKZ^W4MRKG("")
 ;
 S LCOD=6
 D ^W3SIDKVZ
 ;
 S RSIZE=10,PG=0,I=0
 D TMPTF
 ;
 I $G(%ARG("CDKV"))="" S %ARG("CDKV")=$O(@TMPTF@(1,""))
 ;
 W "<div align=""center"" >",!
 ;
 I $$PRINT D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 I $$SNDMAIL!$$PRINT G BODY
 ;
 W "<div id=""divbut"" "_$$INV^%W1ALIGN_" >"
 W "<br />" D VOSC
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">" D VOSC
  W "<tr>"
   W "<td width=""25%"" "_$$^%W1ALIGN_"  >"
   W " <b>" W $$^%W1DICT("GROUP") W "</b>&nbsp;" D VOSC
    N GRSEL S:$L($G(%ARG("CDKV"))) GRSEL=%ARG("CDKV") D GROUP
   W "</td>" D VOSC
   ;
   W "<td width=""45%"""_$$^%W1ALIGN_" >"
    W $$^%W1DICT("OPENVIEW")
    W "<input type=""checkbox"" id=""add"" "_$S($G(%ARG("ADD")):" checked=""checked""",1:"")_" onClick=""ShowPrt()"" >"
   W "</td>" D VOSC
   ;
   W " <td>"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("SAVE"),"Save()","color:blue",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>" D VOSC
 W "</table>",!
 W "</div>" D VOSC
 W "<br />" D VOSC
 ;
BODY ;
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .I KV,$G(@$$^W4GL("W3SUG")@(KV))=0 Q
 .N NMKV S NMKV=$G(@$$^W4GL("PARSUG")@(KV))
 .I $G(%ARG("CDKV")),KV'=$G(%ARG("CDKV")) Q
 .I I>0 D CLOSETBL
 .I I>3,$$PRINT D PGBREAK
 .D KOT(KV)
 .D PARSID(KV)
 .S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..N PRT S PRT=$G(^(PRTNP))
 ..I $G(@$$^W4GL("PAR")@(PRT))=0 Q
 ..S I=I+1 I I>RSIZE,$$PRINT D PEREH
 ..D STR(PRT)
 ..I $$ADD D STRADD(PRT)
 ..W "<tr><td colspan=""10""><hr></td></tr>" D VOSC
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
STR(PRT) ;
 W "<tr style=""font-size:"_$$^W3FSZ(12)_""">"
 W " <td id=""cd"_PRT_""">&nbsp;"_PRT_"&nbsp;</td>"
 ;
 W " <td align=""center"">"_$$H2U^%L1FRM($$SHEM^W4P(PRT))_"<br />"
  W " <span class=""desc"" style=""font-size:"_$$^W3FSZ(11)_";font-weight:100;color:blue"">"_$$H2U^%L1FRM($$DESC^W4P(PRT))_"</span>"
 W "</td>"
 ;
 N N S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .W "<td>"
 . S MH=$G(@$$^W4GL("MHSNIF")@(N,PRT))
 . W "<input type=""text"" id=""prc"_N_"-"_PRT_""" value="""_$J(MH,2,2)_""" "
 . W " onClick=""FocSel(this)"" "
 . W "maxlength=""7"" size=""5"" onChange=""ChangePrice(this)"">"
 .W "</td>",!
 ;
 W "</tr>" D VOSC
 Q
 ;
PEREH ;
 D CLOSETBL
 I $$PRINT D PGBREAK
 D KOT(KV,1)
 S RSIZE=10
 Q
 ;
CLOSETBL ;
 W "</table>",!
 Q
 ;
KOT(KV,PRH) ;
 W "<br>" S PG=PG+1,I=1
 W "<table width=""94%"" dir="""_$$^%W1DIR_""">" D VOSC
  W "<tr>" D VOSC
   W "<td "
    W " style=""text-align:center;width:90%;color:darkred;font-size:"_$$^W3FSZ(16)
    W """>"
     W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)))
     I $G(PRH) D
      .W "&nbsp;&nbsp;"
      .W "<span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"
      . W " ( "_$$^%W1DICT("CONTINUE")_" ) "
      .W "</span>" D VOSC
    W "</td>" D VOSC
    W "<td>"
     W $$^%W1DICT("PAGE")_" "_PG
    W "</td>"
  W "</tr>" D VOSC
 W "</table>",!
 ;
 S BORD=0 ;1
 I $$SNDMAIL S BORD=0
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border="""_BORD_""" cellspacing=""0"" width=""90%"">" D VOSC
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:white;font-size:"_$$^W3FSZ(11)_";font-weight:bold"
 W """ >"
  W "<th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th width=""25%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
  .S MRKZ1=MMRKZ(N)
  .W "<th>"
  . W N_" "_$$H2U^%L1FRM(MRKZ1)
  .W "</th>",!
 W "</tr>" D VOSC
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">" D VOSC
 Q
 ;
PARSID(N) ;
 N NP,PRT,MMM,I1,N2
 S I1=0  D TMPTF K @TMPTF@(2)
 ;
 I $D(@$$^W4GL("P1PARSID")@(N))>9 D
 .S NP="" F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 S N2="" F  S N2=$O(^[$$^W3MAIN]PARCAT($$^%W1JB,N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 Q
 ;
CTF2 S I1=I1+1
 S @TMPTF@(2,I1)=N2
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
GROUP ;
 N II S II=0
 W "<select "
  W " id=""arrgrid"" onChange=""ShowPrt()"""
 W " >"
 W "<option value=""-1"">"_$$^%W1DICT("CHOICEOPTION")_"</option>"
 W $$OPTION("ALL",$G(GRSEL))_$$^%W1DICT("ALLGROUPS")_"</option>"
 ;
 N KVNP
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .I $G(@$$^W4GL("PARSUG")@(KV))="" Q
 .I KV,$G(@$$^W4GL("W3SUG")@(KV))=0 Q
 .S II=II+1
 .W "<option value="""_KV_""""
 .I $G(GRSEL),KV=GRSEL W " selected=""selected"""
 .W " >"_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)))_"</option>"
 W "</select>"
 Q
 ;
PODZAG(NMKV)
 Q $$PODZAG^W3HZTFR(NMKV)
 ;
OPTION(VL,KV) ;
 Q "<option value="""_VL_""" "_$S(VL=KV&$L(KV):"selected=""selected""",1:"")_" >"
 ;
ADD(STAM) ;
 Q $G(%ARG("ADD"))
 ;
STRADD(PRT) ;
 D CRTMP^W3HZTSF(PRT,$$^W3TMPTF)
 N N,A
 S N="" F  S N=$O(@$$^W4MAIN("TMPTF")@(3,N)) Q:N=""  D
 .S A=$G(^(N))
 .S I=I+.33 I I>RSIZE,$$PRINT D PEREH
 .
 .I $E(A)="A" D  Q  ; -- SET HEADER
 ..W "<tr style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;color:brown"">"
 .. W "<td>&nbsp;</td>" D VOSC
 .. W "<td>"_$$H2U^%L1FRM($$SPA^%L1FRM($P(A,"~",2)))_"</td>" D VOSC
 .. W "<td>&nbsp;</td>" D VOSC
 ..W "</tr>" D VOSC
 .
 .W "<tr style=""font-size:"_$$^W3FSZ(11)_";color:green"">"
 .N CDT S CDT=$P(A,"~") Q:CDT=""  Q:CDT["-C"  Q:CDT["-H"
 .W " <td>&nbsp;"_CDT_"&nbsp;</td>"
 .N NMT S NMT=$P(A,"~",2)
 .W " <td align=""center"">"_$$H2U^%L1FRM($$SPA^%L1FRM(NMT))_"</td>"
 .N N S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .. S MHT=$G(@$$^W4GL("MHSNIF")@(N,PRT,CDT))
 .. W "<td>"
 .. I '$$^W4EZAT(PRT) D
 ...  W $J(MH,2,2),!
 .. I $$^W4EZAT(PRT) D
 ... W "<input type=""text"" id=""prc"_N_"-"_PRT_"-"_CDT_""" value="""_$J(MHT,2,2)_""" "
 ... W " onClick=""FocSel(this)"" "
 ... W "maxlength=""7"" size=""5"" onChange=""ChangePriceAdd(this)"">"
 .. W "</td>",!
 .W "</tr>" D VOSC
 Q
 ;
VOSC ;
 I '$$SNDMAIL W !
 Q
 ;
SNDMAIL(STAM) ;
 I $G(%ARG("SNDMAIL")) Q 1
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 Q 0
 ;
INIT ;
 N N,N1
 K @$$^W4MAIN("TMPMHS")
 K @$$^W4GL("MHSNIF")@(1000)
 ;
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .S MH=$$MH^W4P(N)
 .S @$$^W4GL("MHSNIF")@(1000,N)=MH
 ;
 S N="" F  S N=$O(@$$^W4GL("MHT")@(N)) Q:N=""  I $D(@$$^W4GL("PAR")@(N)) D
 .S N1="" F  S N1=$O(@$$^W4GL("MHT")@(N,N1)) Q:N1=""  D
 ..Q:'$D(@$$^W4GL("PAR")@(N1))
 ..S @$$^W4GL("MHSNIF")@(1000,N,N1)=$G(@$$^W4GL("MHT")@(N,N1))
 ;
 M @$$^W4MAIN("TMPMHS")=@$$^W4GL("MHSNIF")
 Q
 ;
 ;
SVMH(PRM) ;
 N SNIF,PRT,MH
 S SNIF=$P(PRM,";") I SNIF="" Q "NOSNIF"
 S PRT=$P(PRM,";",2) I PRT="" Q "NOPRT"
 S MH=$P(PRM,";",3)
 S @$$^W4MAIN("TMPMHS")@(SNIF,PRT)=MH
 Q 1
 ;
SVMHT(PRM) ;
 N SNIF,PRT,TSF,MHT
 S SNIF=$P(PRM,";") I SNIF="" Q "NOSNIF"
 S PRT=$P(PRM,";",2) I PRT="" Q "NOITEM"
 S TSF=$P(PRM,";",3) I TSF="" Q "NOADD"
 S MHT=$P(PRM,";",4)
 S @$$^W4MAIN("TMPMHS")@(SNIF,PRT,TSF)=MHT
 Q 1
 ;
SAVE ;
 H .5
 N N,N1,MH
 M @$$^W4GL("MHSNIF")=@$$^W4MAIN("TMPMHS")
 K @$$^W4MAIN("TMPMHS")
 ;
 S N="" F  S N=$O(@$$^W4GL("MHSNIF")@(1000,N)) Q:N=""  D
 .S MH=$G(^(N))
 .S $P(@$$^W4GL("PAR")@(N),"**",2)=$J(MH,2,2)
 ;
 S N="" F  S N=$O(@$$^W4GL("MHSNIF")@(1000,N)) Q:N=""  I $D(@$$^W4GL("PAR")@(N)) D
 .S N1="" F  S N1=$O(@$$^W4GL("MHSNIF")@(1000,N,N1)) Q:N1=""  D
 ..Q:'$D(@$$^W4GL("PAR")@(N1))
 ..S @$$^W4GL("MHT")@(N,N1)=$G(@$$^W4GL("MHSNIF")@(1000,N,N1))
 Q
 
 
 
 

W4PRTNET
W4PRTNET ; [ 12.08.26 11:06 ] [ 06.07.26 13:02 ] [ 16.04.25 15:25 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S MSDR=$G(%ARG("MSDR"))
 I 'MSDR W " MSDR parameter is not defined ! " Q
 S NETSEND=""
 D MMRKZ^W4MRKG(MSDR)
 ;
 S %ARG("MSD")=$O(MMRKZ(""))
 S MSD=%ARG("MSD")
 I MSD="" W " MSDR array is empty ! " Q
 D PUT^%W1PRM("MSDNET",MSD)
 ;
 S W3PRTPC=""
 D CRSUG ; ---> ^PARCAT
 ;
 S KVZ=$$^W4PARCAT
 D TMPTF K @TMPTF
 S PG=0,I=0
 ;
 S LCOD=8,RSIZE=10
 ;
 I $$SID D ^W3SIDKVZ
 ;
 I '$$SID D
 .N N,I S N="",I=0 F  S N=$O(@KVZ@(N)) Q:N=""  D SETTMPF(N)
 ;
 I '$$ONEPRICE D  ; -- IF ONEPRICE FROM INIT
 .S PRT="" F  S PRT=$O(@$$^W4GL("PAR")@(PRT)) Q:PRT=""  D
 ..N A,MH,ACT
 ..S A=$G(^(PRT)),MH=$J($P(A,"**",2),2,2)
 ..
 ..D  ; -- FIRST MSD ONLY
 ...S ACT=$P($G(@$$PRTNET@(MSD,PRT)),"\",2)
 ...I ACT'=0,ACT'=1 S ACT='$$NOPAR^W4PRTVW(PRT)
 ...S @$$^W4MAIN("TMPMA")@(MSD,PRT)=MH_"\"_ACT
 ...Q  ; ***
 ...D CRTMP^W3HZTSF(PRT,$$^W3TMPTF)
 ...N N S N="" F  S N=$O(@$$^W4MAIN("TMPTF")@(3,N)) Q:N=""  D
 ....S A1=$G(^(N))
 ....N CDT S CDT=$P(A1,"~") Q:CDT=""  Q:CDT["-C"  Q:CDT["-H"
 ....S MHT=$J($G(@$$^W4GL("MHT")@(PRT,CDT)),2,2)
 ....S @$$^W4MAIN("TMPMA")@(MSD,PRT,CDT)=MHT
 ;
 I $G(%ARG("CDKV"))="" S %ARG("CDKV")=$O(@TMPTF@(1,""))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$PRINT D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 I $$SNDMAIL!$$PRINT G BODY
 ;
 D DIVBUT
 ;
 D DIVSEND
 ;
 ;;W "<br />" D VOSC
 W "<div dir="""_$$^%W1DIR_""">",!
  W "<marquee id=""mrq"" style=""visibility:hidden"" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >",!
  W " <span style=""color:green;font-size:"_$$^W3FSZ(12)_";"_$$FONTFM^W3CSS_";font-weight:bold"" >"_$$^%W1DICT("WAIT")_"</span> ",!
  W "</marquee>",!
 W "</div>",!
 ;
BODY ;
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I $G(%ARG("CDKV")),KV'=$G(%ARG("CDKV")) Q
 .
 .I I>0 D CLOSETBL
 .I I>3,$$PRINT D PGBREAK
 .
 .N JJ S JJ=0
 .I $G(%ARG("SRCH"))'="" D  Q:'JJ
 ..D PARSID(KV)
 ..S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ...N PRT S PRT=$G(^(PRTNP)) I PRT="" Q
 ...I $D(@$$^W4GL("PAR")@(PRT))=0 Q
 ...I '$G(%ARG("CLOSED")),'$$PAILBASE(MSDR,PRT) Q
 ...S JJ=JJ+1
 .
 .D KOT(KV)
 .D PARSID(KV)
 .
 .S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..N PRT S PRT=$G(^(PRTNP)) I PRT="" Q
 ..I $D(@$$^W4GL("PAR")@(PRT))=0 Q
 ..I '$G(%ARG("CLOSED")),'$$PAILBASE(MSDR,PRT) Q
 ..S I=I+1 I I>RSIZE,$$PRINT D PEREH
 ..D STR(PRT)
 ..D SETTMPMAT(PRT)
 ..I $$ADD D STRADD(PRT)
 ..W "<tr><td colspan=""30""><hr></td></tr>" D VOSC
 .
 .W "</table>",!
 .W "</div>",!
 Q
 ;
 ;
PRTNET(STAM) ;
 Q "^|$$^W3MAIN|W4PRTNET"
 ;
STR(PRT) ;
 I '$G(%ARG("CLOSED")),'$$PAILBASE(MSDR,PRT) Q
 N MSDR S MSDR=$G(%ARG("MSDR"))
 W "<tr style=""font-size:"_$$^W3FSZ($$FSZ)
  I $$ONEPRICE,$G(MSDR),'$$PAILBASE(MSDR,PRT) W ";background-color:pink"
  W """ id=""tr"_PRT_""" "
  ;
 W ">"
 W " <td id=""cd"_PRT_""">"
  W "<input type=""checkbox"" id=""pail"_PRT_""" "
    W $S($$PAILALL(PRT):"checked=""checked""",1:"")
    W " onClick=""ClearAll('"_PRT_"')"" "
  W " />"
  I '$$ONEPRICE D
  .W "<input type=""button"" value=""="" onClick=""SetAllPrices('"_PRT_"')"" />",!
  ;
  W "&nbsp;"_PRT_"&nbsp;"
 W "</td>"
 ;
 W " <td align=""center"">"_$$H2U^%L1FRM($$SHEM^W4P(PRT))_"<br />"
  W " <span class=""desc"" style=""font-size:"_$$^W3FSZ($$FSZ)_";font-weight:100;color:blue"">"_$$H2U^%L1FRM($$DESC^W4P(PRT))_"</span>"
 W "</td>"
 ;
 N N S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .W "<td id=""td"_N_"-"_PRT_""" >"
 . D
 . .S MH=$$MH(N,PRT)
 . .W "<input type=""text"" id=""prc"_N_"-"_PRT_""" value="""_$J(MH,2,2)_""" style=""font-size:"_$$^W3FSZ($$FSZ)_""" "
 . .W " onClick=""FocSel(this)"" "
 . .I $$ONEPRICE W "readonly=""readonly"" "
 . .W " maxlength=""7"" size=""5"" onChange=""ChangePrice(this)"" >"
 . W "<input type=""checkbox"" id=""act"_N_"-"_PRT_""" "_$S($$PAIL(N,PRT):"checked=""checked""",1:"")_" onClick=""ChangeAct(this)"" />"
 .W "</td>",!
 ;
 W "</tr>" D VOSC
 Q
 ;
 ;
PEREH ;
 D CLOSETBL
 I $$PRINT D PGBREAK
 D KOT(KV,1)
 S RSIZE=10
 Q
 ;
CLOSETBL ;
 W "</table>",!
 W "</div>",!
 Q
 ;
KOT(KV,PRH) ;
 S PG=PG+1,I=1
 W "<table width=""94%"" dir="""_$$^%W1DIR_""">" D VOSC
  W "<tr>" D VOSC
   W "<td "
    W " style=""text-align:center;width:90%;color:darkred;font-size:"_$$^W3FSZ(16)
    W """>"
     W $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)))
     I $G(PRH) D
      .W "&nbsp;&nbsp;"
      .W "<span style=""color:black;font-size:"_$$^W3FSZ($$FSZ+1)_""">"
      . W " ( "_$$^%W1DICT("CONTINUE")_" ) "
      .W "</span>" D VOSC
    W "</td>" D VOSC
    W "<td>"
     W $$^%W1DICT("PAGE")_" "_PG
    W "</td>"
  W "</tr>" D VOSC
 W "</table>",!
 ;
 S BORD=0 ;1
 I $$SNDMAIL S BORD=0
 ;
 W "<div style=""width:100%;height:"_$S($L($G(%ARG("SRCH"))):50,1:65)_"%;overflow-y:auto;overflow-x:auto"">",!
 ;
 W "<table id=""TblPrt"_KV_""" dir="""_$$^%W1DIR_""" border="""_BORD_""" cellspacing=""0"" width=""100%"">" D VOSC
 ;
 I '$$NOFIX W "<thead style=""position:sticky;top:0;z-index:10"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:white;font-size:"_$$^W3FSZ($$FSZ)_";font-weight:bold"
 W """ >"
  W "<th width=""5%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th width=""12%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
  .S MRKZ1=MMRKZ(N)
  .W "<th>"
  . W N_" "_$$H2U^%L1FRM(MRKZ1)
  .W "</th>",!
 W "</tr>" D VOSC
 I '$$NOFIX W "</thead>",!
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">" D VOSC
 Q
 ;
PARSID(N) ;
 N NP,PRT,MMM,I1,N2
 S I1=0  D TMPTF K @TMPTF@(2)
 ;
 I $$SID,$D(@$$^W4GL("P1PARSID")@(N))>9 D
 .S NP="" F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..I $G(%ARG("SRCH"))'="",'$$^W1SRCH(%ARG("SRCH",N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 ;
 S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  D
 .I $G(%ARG("SRCH"))'="",'$$^W1SRCH(%ARG("SRCH"),N2) Q
 .I '$D(MMM(N2)) D CTF2
 Q
 ;
 ;
CTF2 S I1=I1+1
 S @TMPTF@(2,I1)=N2
 Q
 ;
TMPTF S TMPTF=$$^W4MAIN("TMPTF")
 Q
 ;
 ;
GROUP ;
 N II S II=0
 W "<select "
  W " id=""arrgrid"" onChange=""ShowPrt()"""
 W " >"
 W "<option value=""-1"">"_$$^%W1DICT("CHOICEGROUP")_"</option>"
 I '$$^W4MUCHIT W $$OPTION("ALL",$G(GRSEL))_$$^%W1DICT("ALLGROUPS")_"</option>"
 ;
 N KVNP,VW
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .I $G(@$$^W4GL("PARSUG")@(KV))="" Q
 .S VW=1
 .I KV,'$$^W4VWGR(KV) S VW=0
 .S II=II+1
 .W "<option value="""_KV_""""
 .I $G(GRSEL),KV=GRSEL W " selected=""selected"""
 .W " >"_$S('VW:"[ ",1:"")_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)))_$S('VW:" ]",1:"")_"</option>"
 W "</select>"
 Q
 ;
 ;
PODZAG(NMKV)
 Q $$PODZAG^W3HZTFR(NMKV)
 ;
OPTION(VL,KV) ;
 Q "<option value="""_VL_""" "_$S(VL=KV&$L(KV):"selected=""selected""",1:"")_" >"
 ;
ADD(STAM) ;
 Q $G(%ARG("ADD"))
 ;
 ;
STRADD(PRT) ;
 D CRTMP^W3HZTSF(PRT,$$^W3TMPTF)
 N N,A
 S N="" F  S N=$O(@$$^W4MAIN("TMPTF")@(3,N)) Q:N=""  D
 .S A=$G(^(N))
 .S I=I+.33 I I>RSIZE,$$PRINT D PEREH
 .
 .I $E(A)="A" D  Q  ; -- SET HEADER
 ..W "<tr style=""font-size:"_$$^W3FSZ($$FSZ+1)_";text-align:center;font-weight:bold;color:brown"">"
 .. W "<td>&nbsp;</td>" D VOSC
 .. W "<td>"_$$H2U^%L1FRM($$SPA^%L1FRM($P(A,"~",2)))_"</td>" D VOSC
 .. W "<td>&nbsp;</td>" D VOSC
 ..W "</tr>" D VOSC
 .
 .W "<tr style=""font-size:"_$$^W3FSZ($$FSZ-1)_";color:green"">"
 .N CDT S CDT=$P(A,"~") Q:CDT=""  Q:CDT["-C"  Q:CDT["-H"
 .W " <td>&nbsp;"_CDT_"&nbsp;</td>"
 .N NMT S NMT=$P(A,"~",2)
 .W " <td align=""center"">"_$$H2U^%L1FRM($$SPA^%L1FRM(NMT))_"</td>"
 .N N1 S N1="" F  S N1=$O(MMRKZ(N1)) Q:N1=""  D
 .. S MHT=$$MHT(N1,PRT,CDT)
 .. S @$$^W4MAIN("TMPMA")@(N1,PRT,CDT)=MHT
 .. W "<td>"
 .. D
 ... W "<input type=""text"" id=""prc"_N1_"-"_PRT_"-"_CDT_""" value="""_$J(MHT,2,2)_""" "
 ... W "style=""font-size:"_$$^W3FSZ($$FSZ)_""" "
 ... W " onClick=""FocSel(this)"" "
 ... I $$ONEPRICE W "readonly=""readonly"" "
 ... W "maxlength=""7"" size=""5"" onChange=""ChangePriceAdd(this)"">"
 .. W "</td>",!
 .W "</tr>" D VOSC
 Q
 ;
 ;
VOSC ;
 I '$$SNDMAIL W !
 Q
 ;
SNDMAIL(STAM) ;
 I $G(%ARG("SNDMAIL")) Q 1
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 Q 0
 ;
 ;
INIT ;
 N N,N1
 K @$$^W4MAIN("TMPMA")
 S MSDR=$G(%ARG("MSDR"))
 N MSD0 S MSD0=$G(%ARG("MSD"))
 I 'MSDR W " MSDR parameter is not defined ! " Q
 D MMRKZ^W4MRKG(MSDR)
 ;
 I $$ONEPRICE D  ; -- 03/07/22
 .N MSD S MSD=$O(MMRKZ("")) Q:MSD=""
 .N N,N1,%ARG S %ARG("MSD")=MSD
 .N GLMHT S GLMHT=$$^W4GL("MHT")
 .D UPDMHT
 .N N,N1,N2 S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 ..I $G(MSD0),N'=MSD0 Q
 ..S N1="" F  S N1=$O(@$$^W4GL("PAR")@(N1)) Q:N1=""  D
 ...;;N ACT S ACT=$P($G(@$$PRTNET@(N,N1)),"\",2)
 ...;;I ACT="" S ACT=+$$SHOW^W4PRTVW(N1)
 ...S ACT=+$$SHOW^W4PRTVW(N1)
 ...I ACT,$P($G(@$$PRTNET@(N,N1)),"\",2)=0 S ACT=0
 ...N MH S MH=$P($G(@$$^W4GL("PAR")@(N1)),"**",2) ; -- FROM BASIC REST
 ...S @$$PRTNET@(N,N1)=MH_"\"_ACT ; -- 24/07/23
 ..
 ..S N1="" F  S N1=$O(@GLMHT@(N1)) Q:N1=""  D
 ...S N2="" F  S N2=$O(@GLMHT@(N1,N2)) Q:N2=""  D
 ....D  ;I '$D(@$$PRTNET@(N,N1,N2)) D
 .....S @$$PRTNET@(N,N1,N2)=$G(@GLMHT@(N1,N2))
 ;
 N N S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
 .M @$$^W4MAIN("TMPMA")@(N)=@$$PRTNET@(N)
 Q
 ;
 ;
SVMH(PRM) ;
 N SNIF,PRT,MH,ACT
 S SNIF=$P(PRM,";") I SNIF="" Q "NOSNIF"
 S PRT=$P(PRM,";",2) I PRT="" Q "NOPRT"
 S MH=$P(PRM,";",3)
 S $P(@$$^W4MAIN("TMPMA")@(SNIF,PRT),"\")=MH
 Q 1
 ;
SVMHT(PRM) ;
 N SNIF,PRT,TSF,MHT
 S SNIF=$P(PRM,";") I SNIF="" Q "NOSNIF"
 S PRT=$P(PRM,";",2) I PRT="" Q "NOITEM"
 S TSF=$P(PRM,";",3) I TSF="" Q "NOADD"
 S MHT=$P(PRM,";",4)
 S @$$^W4MAIN("TMPMA")@(SNIF,PRT,TSF)=MHT
 Q 1
 ;
SVACT(PRM) ;
 N SNIF,PRT,ACT
 S SNIF=$P(PRM,";") I SNIF="" Q "NOSNIF"
 S PRT=$P(PRM,";",2) I PRT="" Q "NOPRT"
 S ACT=$P(PRM,";",3)
 S $P(@$$^W4MAIN("TMPMA")@(SNIF,PRT),"\",2)=+ACT
 Q 1
 ;
SAVE(MSDR) ;
 N N,N1,MH
 D MMRKZ^W4MRKG(MSDR)
 N UCI,MSDF
 S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 N HD S HD=$G(^[$$^W3MAIN]W3MSDR(MSDR))
 ;;N BASIS S BASIS=+$P(HD,"\",7)
 ;
 N N,II S N="" F II=1:1 S N=$O(MMRKZ(N)) Q:N=""  D
 .M ^[$$^W3MAIN]W4PRTNETO(N)=@$$PRTNET@(N)
 .S N1="" F  S N1=$O(@$$^W4MAIN("TMPMA")@(N,N1)) Q:N1=""  D
 ..N A,A0 S A=$G(^(N1))
 ..S A0=$G(@$$PRTNET@(N,N1))
 ..I $P(A,"\")'="" S $P(A0,"\")=$P(A,"\")
 ..I $P(A,"\",2)'="" S $P(A0,"\",2)=$P(A,"\",2)
 ..N N0 S N0=N ;;I BASIS S N0=MSDF 
 ..M @$$PRTNET@(N,N1)=@$$^W4MAIN("TMPMA")@(N0,N1)
 ..S @$$PRTNET@(N,N1)=A0
 ..I II=1 D
 ...S $P(^|UCI|PAR(N1),"**",2)=$P(A,"\")
 ...;;I $P(A,"\",2)?1N S ^|UCI|W3PAR(N1)=$P(A,"\",2)
 .
 .S N1="" F  S N1=$O(@$$PRTNET@(N,N1)) Q:N1=""  D
 ..I $P($G(@$$PRTNET@(N,N1)),"\",2)'=0 S $P(^(N1),"\",2)=1
 ;
 K @$$^W4MAIN("TMPMA")
 Q
 ;
 ;
MH(SNIF,PRT)
 N ONEPRICE S ONEPRICE=$$ONEPRICE
 N MH,%ARG
 S MH=$P($G(@$$PRTNET@(SNIF,PRT)),"\")
 ;
 I MH=""!ONEPRICE D
 .N MSD S MSD=$O(MMRKZ("")) Q:'MSD
 .S %ARG("MSD")=MSD
 .S MH=$$MH^W4P(PRT)
 .S $P(@$$^W4MAIN("TMPMA")@(SNIF,PRT),"\")=MH
 Q MH
 ;
PAIL(SNIF,PRT) ;
 N PAIL,MSDF
 S PAIL=$P($G(@$$PRTNET@(SNIF,PRT)),"\",2)
 I PAIL=""!(PAIL=1&$$ONEPRICE) D
 .S PAIL=1
 .I $G(MSDR) S PAIL=$$PAILBASE(MSDR,PRT)
 Q PAIL
 ;
PAILBASE(MSDR,PRT)
 N PAIL,MSDF,UCI
 S PAIL=1
 S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 N W3PAR S W3PAR=$G(^|UCI|W3PAR(PRT))
 I W3PAR?1N S PAIL=W3PAR
 Q PAIL
 ;
PAILALL(PRT) ;
 N PAIL,P,OK S PAIL=0
 N SNIF S SNIF="" F  S SNIF=$O(MMRKZ(SNIF)) Q:SNIF=""  I SNIF'=99999 D
 .I '$D(MMRKZ(SNIF)) Q
 .S P=$$PAIL(SNIF,PRT) I P S PAIL=1 
 Q PAIL
 ;
MHT(SNIF,PRT,CDT)
 N ONEPRICE S ONEPRICE=$$ONEPRICE
 N MHT,%ARG
 S MHT=$P($G(@$$PRTNET@(SNIF,PRT,CDT)),"\")
 ;
 I MHT=""!ONEPRICE D
 .N MSD S MSD=$O(MMRKZ("")) Q:'MSD
 .S %ARG("MSD")=MSD
 .S MHT=$G(@$$^W4GL("MHT")@(PRT,CDT))
 ;
 Q MHT
 ;
 ;
DIVBUT ;
 W "<div id=""divbut"" "_$$INV^%W1ALIGN_" >"
 W "JB="_JB,!
 W "<br />" D VOSC
 N FSZ S FSZ="font-size:"_$$^W3FSZ(10)
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" border=""0"" cellspacing=""0"">" D VOSC
  W "<tr>"
   W "<td "_$$^%W1ALIGN_"  >"
    W $$^%W1DICT("GROUP") W "&nbsp;"
    N GRSEL S:$L($G(%ARG("CDKV"))) GRSEL=%ARG("CDKV") D GROUP
   W "</td>" D VOSC
   ;
   W "<td>" 
    W "<input type=""text"" id=""srcid"" name=""SRCH"" size=""12"" "
     W "value='"_$$H2U^%L1FRM($$INVH^%L1FRM($G(%ARG("SRCH"))))_"'"
     W " onFocus=""Select('srcid')"" />&nbsp;"
     W "<button name=""submhip"" id=""submhip"" style="""_$$FONTFM^W3CSS_";color:green;"_FSZ_""" onClick=""ClickSearch()"" >"
       W $$^%W1DICT("SEARCHITEMALLGROUPS")
      W "</button>",!
   W "</td>" D VOSC
   W "<td width=""2%""></td>"
   ;
   W "<td width=""11%"""_$$^%W1ALIGN_" >"
    W $$^%W1DICT("OPENVIEW")
    W "<input type=""checkbox"" id=""add"" "_$S($G(%ARG("ADD")):" checked=""checked""",1:"")_" onClick=""ShowPrt()"" >"
   W "</td>" D VOSC
   ;
   W "<td width=""11%"""_$$^%W1ALIGN_" >"
    W $$^%W1DICT("SHOWCLOSEDITEMS")
    W "<input type=""checkbox"" id=""closed"" "_$S($G(%ARG("CLOSED")):" checked=""checked""",1:"")_" onClick=""ShowPrt()"" >"
   W "</td>" D VOSC
   ;
   W "<td width=""11%"""_$$^%W1ALIGN_" >"
    W $$^%W1DICT("ALLBRANCH")
    W "<input type=""checkbox"" id=""allbr"" checked=""checked"" onClick=""AllBranch()"" >"
   W "</td>" D VOSC
   ;
   W " <td>"
    D ROUNDBUT^%W1JS("Save",$$^%W1DICT("SAVE"),"Save()","color:blue;"_FSZ,",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green;"_FSZ,",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Send",$$^%W1DICT("SEND"),"Send()","background-color:darkgreen;color:white;font-weight:bold",",,,60")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td width=""15%"" "_$$INV^%W1ALIGN_" >"
    D ROUNDBUT^%W1JS("ToItems",$$^%W1DICT("TOGROUPS"),"ToGroups()","color:blue;"_FSZ,",,,180")
   W " </td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red;"_FSZ,",,,100")
   W " </td>"
  W "</tr>" D VOSC
 W "</table>",!
 W "</div>" D VOSC
 Q
 ;
SID(STAM) ;
 Q $G(%ARG("SID"))
 ;
 ;
DIVSEND ; 
 N N,MRKZ1,I
 ;
 S N="" F I=1:1 S N=$O(MMRKZ(N)) Q:N=""
 W "<div dir="""_$$^%W1DIR_""" style=""overflow-x:auto"" >",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"" "
  I I>30 W "style=""font-size:"_$$^W3FSZ(9)_""" "
 W ">",! 
  W "<tr>",!
  S N="" F  S N=$O(MMRKZ(N)) Q:N=""  D
  .S MRKZ1=MMRKZ(N)
  .W "<td>"
  . W $$H2U^%L1FRM(MRKZ1)_"&nbsp;"
  . W "<input type=""checkbox"" name=""chkmsd"" id=""chk"_N_""" checked=""checked"" >" 
  .W "</td>"
  .W "<td>&nbsp;</td>"
 W "</tr>"
 W "</table>",!
 W "</div>",! 
 Q
 ;
SENDS(PRM) ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;S ^AA("W4PRTNET-SENDS","PRM")=PRM
 N MSDR,MSD
 S MSDR=$P(PRM,";")
 I MSDR="" Q "NOMSDR"
 S MSD=$P(PRM,";",2) I MSD="" Q "NOMSD"
 ;
 N DIR S DIR="/tmp/"
 N UCI,MSDF
 S MSDF=$O(^[$$^W3MAIN]W3MSDR(MSDR,""))
 S UCI=$G(^[$$^W3MAIN]UCI(+MSDF))
 I UCI="" Q "UCINOTFOUND"
 
 ;;N I F I=2:1:$L(PRM,";") D 
 ;;.S MSD=$P(PRM,";",I) 
 D
 .S FL=DIR_"w4it4web."_MSDR_"-"_MSD
 .C FL:(DELETE)
 .O FL:(WRITE:NEWVERSION) U FL
 .D WRITEFLIT^W3ANSIT(UCI,MSD) ;
 .D WRITEFLGR^W3ANSIT(UCI,MSD) ;
 .C FL
 Q 1 
 ;
 ;
CRSUG N NCRSUG N N,SUG ;------- ^PAR --> ^PARCAT
 K @$$^W4PARCAT
 N SUG,N
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .S SUG=+$$SUG^W4P(N) Q:'SUG
 .S @$$^W4PARCAT@(SUG,N)=""
 Q
 ;
SETTMPF(KV) ; 
 I $$SUGNAME(KV)?." " Q
 S I=I+1,@$$^W4MAIN("TMPTF")@(1,I)=$$SUGNAME(KV)_" "_$J(KV,LCOD)
 S @$$^W4MAIN("TMPTF")@(1,I,"KV")=KV
 Q
 ;
SUGNAME(KV) ;
 Q $$HBR^%L1FRM($$SUGN(KV),20)
 ;
SUGN(KV) ;
 N SUGN S SUGN=$G(@$$^W4GL("PARSUG")@(KV))
 I SUGN["()" S SUGN=$$RPL^%L1FRM(SUGN,"()","") ; -- PIZZA
 Q SUGN
 ;
ONEPRICE() ;
 ;;I $G(%ARG("MSDR"))=10222 Q 1
 Q $G(@$$PRTNET@(+$G(%ARG("MSDR"))))
 ;
FSZ() ; 
 N N,I S N="" F I=1:1 S N=$O(MMRKZ(N)) Q:N=""
 I I<10 Q 12
 I I<20 Q 10 
 Q 9 
 ;
SETTMPMAT(PRT) ;
 D CRTMP^W3HZTSF(PRT,$$^W3TMPTF)
 N N,A,N1,MHT,CDT
 S N="" F  S N=$O(@$$^W4MAIN("TMPTF")@(3,N)) Q:N=""  D
 .S A=$G(^(N))
 .N CDT S CDT=$P(A,"~") Q:CDT=""  Q:CDT["-C"  Q:CDT["-H"
 .
 .N N1 S N1="" F  S N1=$O(MMRKZ(N1)) Q:N1=""  D
 .. S MHT=$$MHT(N1,PRT,CDT)
 .. S @$$^W4MAIN("TMPMA")@(N1,PRT,CDT)=MHT
 Q 
 ;
NOFIX() ; 
 I $G(%ARG("SRCH")) Q 1 
 I $G(%ARG("CDKV"))="ALL" Q 1 
 I $$PRINT Q 1 
 Q 0 
 ;
UPDMHT ;
 N N1,N2,N3,REF
 N GLMHT S GLMHT=$$^W4GL("MHT")
 S N1="" F  S N1=$O(@$$^W4GL("PAR")@(N1)) Q:N1=""  D
 .S REF=$$REF^W4EZAT(N1) Q:REF=""
 .; 
 .N REF S REF=$$REF^W4EZAT(N1)
 .I REF'="" D
 ..N GLSET S GLSET=$$^W4GL("P1SETA")
 ..S N3="" F  S N3=$O(@REF@(N3)) Q:N3=""  D
 ...N SET S SET=$E(N3,2,20)
 ...S N2="" F  S N2=$O(@GLSET@(SET,N2)) Q:N2=""  D
 ....I $D(@GLSET@(SET,N2)),$G(@GLMHT@(N1,N2))="" D
 .....N MHT S MHT=$G(@$$^W4GL("MHSET")@(SET,N2))
 .....S @GLMHT@(N1,N2)=MHT
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRTSND
W4PRTSND ; [ 06.10.23 08:13 ] [ 30.12.21 10:56 ] [ 02.12.21 10:47 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4PRTSND")
 D PUT^%W3DEB("W4PRTSND","%ARG=[%ARG")
 I $G(JB)="" W " JB number is not defined ! " Q
 S SRCH=$G(%ARG("SRCH"))
 ;
 I $G(%ARG("CDKV"))="" S %ARG("CDKV")="ALL"
 I SRCH="" D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 ;
 W "<div align=""center"" >",!
 W " <table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""70%"">",!
 W "  <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
      W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
 W "   <th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "   <th width=""20%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "   <th width=""8%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "   <th width=""20%"">"_$$^%W1DICT("ITEMSGROUP")_"</th>"
 ;
 S N="" F  S N=$O(@$$GLMRK@(N)) Q:N=""  D
 .W "<th> "_N_" "_$$H2U^%L1FRM($G(^(N)))_"</th>"
 ;
 W "  </tr>",!
 N N,NN,I
 D GLP
 ;
 N I S I=0
 K @GLP
 ;
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .
 .I SRCH?1N.N,N'=SRCH," "_$$SHEM^W4P(N)_" "'[(" "_SRCH_" ") Q
 .I SRCH'="",SRCH'?1N.N,'$$^W1SRCH(SRCH,N) Q
 .I $$NOSHOW(N) Q
 .I $$SUG^W4P(N)=$G(%ARG("CDKV"))!($G(%ARG("CDKV"))="ALL")!($G(%ARG("CDKV"))="") D
 ..;
 ..S MRK="" F  S MRK=$O(@$$GLMRK@(MRK)) Q:MRK=""  D
 ...I $G(@$$^W4GL("W4PRTSND")@(N,MRK))=0 S @GLP@(N,MRK)=0 Q
 ...S @GLP@(N,MRK)=1
 ;
 S NN="",I=0 F  S NN=$O(@GLP@(NN)) Q:NN=""  D
 .S N=NN Q:N=""
 .W "<tr id=""tr"_N_""""
 . W $$STYLE^W4PRTVW(N)
 .W " >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_"</td>",!
 .
 .W "<td align=""center"" style=""color:grey"" >"
 . W "&nbsp;"_$$H2U^%L1FRM($$SUG1^W4P(N))_"&nbsp;"
 .W "</td>"
 .
 .S MRK="" F  S MRK=$O(@$$GLMRK@(MRK)) Q:MRK=""  D
 ..W "<td align=""center"" >"
 .. W "<input type=""checkbox"" id=""p"_N_"m"_MRK_""" "
 ..  W $S($G(@GLP@(NN,MRK))'=0:"checked=""checked"" ",1:"")
 ..  W " onClick=""Change('"_N_"','"_MRK_"')"" "
 .. W "/>"
 ..W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
CHANGE(PRM) ;
 N GLP,CD,MRK,VL D GLP
 S CD=$P(PRM,";") I CD="" Q 0
 S MRK=$P(PRM,";",2) I MRK="" Q 0
 S VL=$P(PRM,";",3)
 S @GLP@(CD,MRK)=VL
 Q 1
 ;
SAVEND ;
 N GLP D GLP
 N N,N1
 ;;K @$$^W4GL("W4PRTSND")
 ;;K @$$^W4GL("W4PRTSNI")
 ;
 S N="" F  S N=$O(@GLP@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLP@(N,N1)) Q:N1=""  D
 ..N VL S VL=$G(@GLP@(N,N1)) Q:VL=""
 ..S @$$^W4GL("W4PRTSND")@(N,N1)=VL
 ..S @$$^W4GL("W4PRTSNI")@(N1,N)=VL
 ;
 K @GLP
 Q
 ;
 ;
GLP S GLP=$$^W4MAIN("TMPPAR")
 Q
 ;
SRCSID(CD) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1PARSID")@(%ARG("CDKV"),N)) Q:N=""  I $G(^(N))=CD S OK=N Q
 Q OK
 ;
SEL(PAR,VL) ;
 I $G(@GLP@(PAR))=VL Q " selected=""selected"" "
 Q ""
 ;
GLMRK(STAM) ;
 Q $$^W4GL("W4MRK")
 ;
NOSHOW(PAR) ;
 Q $$NOSHOW1(PAR)
 ;
NOSHOW1(PAR) ;
 I $$NL^W4PRTVW(PAR) Q 1
 I $$NOPAR^W4PRTVW(PAR) Q 1
 Q 0
 ;
NOSHOWGR(GR) ;
 I $G(@$$^W4GL("W3SUG")@(GR))=0 Q 1
 I $G(@$$^W4GL("W3SUG")@(GR))=2 Q 1
 I $$^W6,$G(@$$^W4GL("W6SUG")@(GR))=0 Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PRTVW
W4PRTVW(N) ; [ 10.07.19 13:10 ] [ 16.02.18 13:08 ] [ 16.10.16 12:21 ] 
 N CHECKED,DIS
 S CHECKED=1,DIS=0
 I $$NL(N)=1 S CHECKED=0,DIS=1
 I $$NL(N),$$NL(N)<1 S CHECKED=0,DIS=0
 I $$NOPAR(N) S CHECKED=0,DIS=0
 Q CHECKED_";"_DIS
 ;
NL(N) ;
 Q 0
 I $G(@$$^W4GL("PRTNO")@(N)) Q 1
 I $G(@$$^W4GL("PRTNO")@(N))=0 Q .5
 Q 0
 ;
NOPAR(N) ;
 I $P($G(@$$^W4GL("W3PAR")@(N)),"\")=0 Q 1
 Q 0
 ;
SHOW(N)
 I $$NL(N)=1 Q 0
 I $$NOPAR(N) Q 0
 I +$$NL(N)=.5 Q .5
 Q 1
 ;
STYLE(N,DOP) ;
 I $$BGCOLOR(N)="" Q ""
 I $$BGCOLOR(N)="white" Q ""
 Q " style=""background-color:"_$$BGCOLOR(N)_""" "
 ;
BGCOLOR(N) ;
 I $$SHOW(N)=0 Q "pink"
 I +$$SHOW(N)=.5 Q "lightyellow"
 Q "white"
 
 
 
 

W4PSW
W4PSW(LV) ; [ 14.01.09 10:34 ] [
 I LV=1 Q @$$^W4PRM@("PSW")
 I LV=2 Q @$$^W4PRM@("PSW2")
 I LV=3 Q @$$^W4PRM@("PSW3")
 I LV="B" Q @$$^W4PRM@("PSWBIT")
 I LV="H" Q @$$^W4PRM@("PSWHNH")
 I LV="HV" Q @$$^W4PRM@("PSWHV")
 I LV="SISPTM" Q @$$^W4PRM@("SISPTM")
 I LV="C" Q @$$^W4PRM@("PSWCA")
 Q ""

W4PSWASH
W4PRMASR ; [ 09.08.16 09:43 ] [ 05.08.16 14:10 ] [ 
GET ;
 S PSW=$$PSW^W3PRM
 S PSWSRV=$G(@$$^W4GL("W3PRM")@("PSWSRV"))
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 S @$$^W4GL("W3PRM")@("PSW")=$G(PSW)
 S @$$^W4GL("W3PRM")@("PSWSRV")=$G(PSWSRV)
 Q 1
 
 
 
 
 

W4PSWCHK
W4PSWCHK(STAM) ; [ 03.01.09 18:17 ] [ 29.12.08 17:40 ] [
 Q 0

W4PSWCR
W4PSWCR ; [ 13.09.18 15:53 ] [ 22.05.18 12:34 ] [ 
 R !,"MANAGER CODE ( <=5 ): ",MGR
 R !!,"PASSWORD ( <=8 ) : ",PSW
 W !!,"RES: "_$$ENCR(MGR,PSW),!
 Q
 ;
ENCR(MGR,PSW) ;
 S DOP=$E("8888888888",1,$$BGPSW^W4PRM)
 S MGR=$TR($J(MGR,5)," ",0)
 S PSW=$TR($J(PSW,8)," ",0)
 S PSW1=MGR_PSW      
 S PSW2=DOP
 F J=1:1:$L(PSW1) S PSW2=PSW2_$S($E(PSW1,J)=9:0,1:$E(PSW1,J)+1)
 S PSW2=PSW2_DOP
 Q PSW2
 ;
DESCR ;
 R !,"CARD CODE : ",CARD
 S CARD=$E(CARD,$$BGPSW^W4PRM+1,$$BGPSW^W4PRM+13)
 S CARD1=""
 F J=1:1:$L(CARD) S CARD1=CARD1_$S($E(CARD,J)=0:9,1:$E(CARD,J)-1)
 S MGR=$E(CARD1,1,5)
 S PSW=$E(CARD1,6,13)
 W !!,"MGR : "_MGR_"    PSW : "_PSW,!
 Q
 
 

W4PSWDRG
W4PSWDRG ; [ 09.11.14 15:32 ] [
 Q
GET(CD,RKV) ;
 I $G(CD)="" Q ""
 I RKV="LEVEL" Q $P($G(@$$^W4GL("W4PSWDRG")@(CD)),"\")
 I RKV="PASSWORD" Q $P($G(@$$^W4GL("W4PSWDRG")@(CD)),"\",2)
 Q ""
 ;
PUT(CD,RKV,VL) ;
 Q:$G(CD)=""
 I RKV="LEVEL" S $P(@$$^W4GL("W4PSWDRG")@(CD),"\")=VL
 I RKV="PASSWORD" S $P(@$$^W4GL("W4PSWDRG")@(CD),"\",2)=VL
 Q

W4PTHDLY
W4PTHDLY ; [ 17.03.16 10:58 ] [ 
 I $$PTHDLY^W4PRM H 1
 Q

W4PTICHA
W4PTICHA ; [ 04.02.24 15:28 ] [ 28.06.22 11:30 ] [ 27.12.20 15:06 ] 
 N (JB,%ARG,%REM)
 ;
 W "<br /><br />",!
 D DAF1
 ;
 W "<br/>"
 D DIVBUT
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
  D DIVBUTTD
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
DIVBUTTD ;
 W "<td"
 W ">"
   D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
 W "</td>"
 W "<td>&nbsp;</td>"
 W "<td "
 W ">"
   D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 W "</td>"
 Q
 ;
TDN W "<td>&nbsp;</td>",!
 Q
 ;
 ;
DAF1 ;
 N (JB,%ARG)
 ;
 D GLTMP,GLTMP1,GETTMP
 ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTBL_"%"" border=""0"" cellspacing=""0"">",!
 W " <tr>"
 W "<td "
  I $$^W4TABLET=2 W "colspan=""4"" "
 w ">"
  W "<input type=""text"" size=""14"" id=""search"" >"
  W "&nbsp;"
   D ROUNDBUT^%W1JS("srcbut",$$^%W1DICT("SEARCH"),"Search()","color:black",",,,60")
 W "</td>"
 ;
 I $$^W4TABLET=2 W "</tr><tr>"
 ;
 W "  <td>"
 W "  "_$$^%W1DICT("SORTINGPERCODE")_"&nbsp;"
 W "   <input type=""radio"" name=""prsort"" value=""N"" "_$S($$PRSORT="N":" checked=""checked""",1:"")_" onClick=""ChangeSort()"" >"
 W "  </td>"
 ;
 W "  <td>"
 W "  "_$$^%W1DICT("SORTINGPERNAME")_"&nbsp;"
 W "   <input type=""radio"" name=""prsort"" value=""A"" "_$S($$PRSORT="A":" checked=""checked""",1:"")_"onClick=""ChangeSort()"" >"
 W "  </td>",!
 ;
 W "  <td>"
 W "  "_$$^%W1DICT("SHOWCUSTWITHBALANCEONLY")_"&nbsp;"
 W "   <input type=""checkbox"" id=""itra"" "_$S($G(%ARG("ITRA")):"checked=""checked""",1:"")_" onClick=""ChangeShow()"" >"
 W "  </td>",!
 ;
 I $$^W4TABLET=2 W "</tr><tr>"
 ;
 D TDN,DIVBUTTD
 W " </tr>",!
 W "</table>",!
 ;
 W "<br /><br />",!
 W "<table id=""TblPticha"" dir="""_$$^%W1DIR_""" width=""90%"" border=""1"" cellspacing=""0"">",!
  ;
  W "<tr>"
  W " <th width=""20%"">"_$$^%W1DICT("CODE")_"</th>",!
  W " <th width=""40%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>",!
  W " <th width=""15%"">"_$$^%W1DICT("HOVA")_"</th>",!
  W " <th width=""15%"">"_$$^%W1DICT("ZHUT")_"</th>",!
  W " <th >"_$$^%W1DICT("ITRA")_"</th>",!
  W "</tr>",!
  ;
  ;
  S N="",I=0 F  S N=$O(@GLTMP1@(N)) Q:N=""  D
  .N LK S LK=N I N[":" S LK=$P(LK,":",2)
  .N NM S NM=$$NAME(LK)
  .N ITRA S ITRA=$$ITRA(LK)
  .I 'ITRA,$G(%ARG("ITRA")) Q
  .N SRC S SRC=$G(%ARG("SEARCH")) I SRC="" G NM
  .I SRC?1N.N,SRC'=LK Q
  .I SRC?1N.N G NM
  .S SRC=$$INVH^%L1FRM($G(%ARG("SEARCH")))
  .I $L(SRC),(" "_NM_" ")'[(SRC_" ") Q
  .
NM  .N NAME S NAME=$$SHOWNAME(NM)
  .
  .S I=I+1
  .W "<tr id=""trid"_I_""">"
  .W "<td id=""code"_I_""">"_LK_"</td>"
  .W " <td>"_NAME_"</td>"
  .W " <td align=""center""><input type=""text"" size=""8"" id=""hova"_I_""" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"')"" value="""_$$HOVA(LK)_"""></td>",!
  .W " <td align=""center""><input type=""text"" style=""color:red"" size=""8"" id=""zhut"_I_""" maxlength=""8"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"')"" value="""_$$ZHUT(LK)_"""></td>",!
  .W " <td dir=""LTR"" align=""right"" id=""itra"_I_""">"_ITRA_"</td>",!
  .W "</tr>",!
  ;
  W "</table>",!
  Q
  ;
PUT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D GLTMP
 S ST=PRM
 S CD=$P(ST,";") Q:CD=""
 S HOVA=$P(ST,";",2)
 S ZHUT=+$P(ST,";",3)
 S @GLTMP@(CD)=HOVA_"*"_ZHUT
 Q
 ;
 ;
SUBMIT(STAM) ; -- SAVE NEW
 N (JB,%ARG,%REM)
 ;
 D GLTMP,GLTMP1
 S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .S ST=$G(^(N)) ;;I '$P(ST,"*"),'$P(ST,"*",2) Q
 .S @$$^W4GL("KLPTCH")@(N)=$P(ST,"*")_"*"_$P(ST,"*",2)_"*"_$$YYMM
 .D ^%S3GLSV($$^W4GL("KLPTCH")_"("""_N_""")",$$^W4FGIB)
 .S @$$^W4GL("KLF")@(N,"KPM",20_$$YYMM)=$P(ST,"*")_"*"_$P(ST,"*",2)
 .D ^%S3GLSV($$^W4GL("KLF")_"("""_N_""")",$$^W4FGIB)
 ;
 K @GLTMP,@GLTMP1
 Q 1
 ;
 ;
GL ;
 S GL=$$^W4GL("KLPTCH")
 Q
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMPPT")
 Q
 ;
GLTMP1 ;
 S GLTMP1=$$^W4MAIN("TMP")
 Q
 ;
NAME(LK) ;
 Q $$LKH^W4L(LK)
 ;
SHOWNAME(NAME) ;
 Q $$H2U^%L1FRM(NAME)
 ;
NUM(RKV)
 I 'RKV Q "&nbsp"
 Q RKV
 ;
SPACE D TDN,TDN,TDN,TDN
 Q
 ;
RED(STAM) ;
 Q "color:red"
 ;
HOVA(LK) ;
 D GLTMP Q $P($G(@GLTMP@(LK)),"*")
 Q
ZHUT(LK) ;
 D GLTMP
 Q $P($G(@GLTMP@(LK)),"*",2)
ITRA(LK) ;
 Q $$HOVA(LK)-$$ZHUT(LK)
 ;
PRSORT()
 Q $$GET^%W1PRM("SORT")
 ;
GETTMP ;
 N SORT,NAME,IND
 S SORT=$$PRSORT
 N N,ST D GLTMP,GLTMP1
 K @GLTMP1
 I $$FIRST K @GLTMP
 S N=999 F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  D
 .I '$$^W4LKH,'$$ISCR^W4L(N) Q
 .S ST=$G(@GLTMP@(N))
 .I $$FIRST S ST=$G(@$$^W4GL("KLPTCH")@(N))
 .S @GLTMP@(N)=ST
 .S IND=N
 .I SORT="A" D
 ..S NAME=$$NAME(N)
 ..S NAME=$$INVH^%L1FRM(NAME)
 ..S IND=$$ENG^%L1FRM(NAME,10)_":"_N
 .S @GLTMP1@(IND)=""
 Q
 ;
FIRST(STAM) ;
 Q $G(%ARG("FIRST"))
 ;
YYMM(STAM) ;
 Q "1011"
 ;
WDTBL(STAM) ; 
 I $$1024^W4WDSCR Q 90
 Q 60 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PUTHZ
W4PUTHZ(JB,HZM) ; [ 29.09.26 16:01 ] [ 18.09.26 14:56 ] [ 17.09.26 12:00 ] 
 I $G(HZM)>0,$$^W4CLOSE(HZM),$G(P1HZOP)'="UPDCLOSE" Q HZM
 N LASTHZ S LASTHZ=9999999
 ;
 F  S LASTHZ=$O(@$$^W4ORD@(LASTHZ),-1) Q:LASTHZ<1  Q:$D(@$$^W4ORD@(LASTHZ))=11
 I HZM-LASTHZ>20,$D(@$$^W4ORD@(HZM))'=11 S HZM="ycg"
 ;
 N MSGER S MSGER=""
 N GLORD D GLORD(JB)
 D THZ^W4NEWHZ(JB)
 S WB=$$WB^W4NEWHZ(JB)
 I $G(@$$^W4GL("HZLINKI")@(JB)),+$G(^(JB))'=HZM S MSGER="DOUBLE" G ERREND
PUT S HZMS=""
 D THZ^W4NEWHZ(JB)
 ;
 S OKDBL=0
 ;
 D  ;
 .N DZ,HZMLAK,MKRDLV,GLASM
 .S GLASM=$$^W4GL("W4DLVASM")
 .S DZ=$$^W4DZ
 .S HZMLAK=$G(@THZ@("HZMLAK"))
 .S MKRDLV=$G(@THZ@("MKRDLV"))
 .I DZ,HZMLAK,MKRDLV,HZM<1 D
 ..I $D(@GLASM@(DZ,MKRDLV,HZMLAK))#2 D  S OKDBL=1 Q
 ...S @GLASM@(DZ,MKRDLV,HZMLAK,"DBL")=JB
 ..S @GLASM@(DZ,MKRDLV,HZMLAK)=JB
 ;
 ;;I OKDBL S MSGER="DOUBLE" G ERREND
 ;
 N ASM S ASM=$P($G(@THZ),"\",30)
 ;
 I $E(ASM)="W",HZM<1 H (.1*$R(6)) D BDDBL(ASM) I $G(MSGER)="DOUBLE" G ERREND
 ;
 N NMB S NMB=$P($G(@THZ),"\")
 I NMB="",$G(@$$^W4PRM@("LKHDFLT")) D
 .S NMB=^("LKHDFLT")
 .S $P(@THZ,"\")=NMB
 ;
 I NMB="" S MSGER="NONMB" G ERREND
 ;
 I '$D(@THZ1@(1)),$G(@THZ1@(2))'?.P S @THZ1@(1)="0\0\0\0\0\0\0"
 ;
 I '$D(@THZ1@(1)),$$SUGL1^W4L(NMB)'["cx`il" S MSGER="NOITEMS" G ERREND
 ;
 I $P($G(@THZ1@(1)),"\")?.P,$$SUGL1^W4L(NMB)'["cx`il" S MSGER="NOITEMS" G ERREND
 S (HZMS,HZM0)=HZM
 ;
 N NEWHZM
 ;
 N NEWDAT,NEWSHAA
 S NEWDAT=$P($G(@THZ),"\",5)
 S NEWSHAA=$P($G(@THZ),"\",6)
 ;
 N PRSND S PRSND=0
 ;
 I HZM>0 D
 .I $$PWRLNK^W4PRM D
 ..N PWRLNKID S PWRLNKID=$$GETP^%W1PRM("PWRLNKID") ;;Q:PWRLNKID=""
 ..J UPD^W4PWRLNK(JB,HZM)
 .
 .K @$$^W4ORD@(HZM,"LKM","BON")
 .K @$$^W4ORD@(HZM,"LMVC")
 .K @$$^W4ORD@(HZM,"MVC2")
 .
 .I $$^W4CHNORD(HZM) S PRSND=1
 ;
 I 'HZM!(HZM=-1) D  ; --- NEW ORDER
 .I $$TAW^W4PRM!$$SUPER^W3PRM D
 ..S $P(@THZ,"\",4)=$ZD($H,"DD.MM.YY  24:60")
 .
 .N HD S HD=$G(@THZ)
 .S HZMS=$$^W4NEWHZM(NMB,HD) ; --- !!!!!
 .
 .I HZMS>0 D
 ..S NEWHZM=""
 ..S @$$^W4GL("W4HZ4ADR")@(HZMS)=$H
 ..N P1DZ S P1DZ=$$^W4DZ
 ..N DT S DT=P1DZ
 ..N HD S HD=$G(@THZ)
 ..
 ..I $$PWRLNK^W4PRM D
 ...N PWRLNKID S PWRLNKID=$$GETP^%W1PRM("PWRLNKID")
 ...I PWRLNKID'="" S @$$^W4ORD@(HZMS,"HZMLAK")="PWRLNK:"_PWRLNKID
 ..;
 ..I $$^W4MSL(NMB),'$P(HD,"\",12),'$P(HD,"\",17) D
 ...S DT=$$^%L1DC($P(HD,"\",5),3)
 ...N SHAA S SHAA=$P(HD,"\",6)
 ...I SHAA<$$SHAAZ^W4PRM S DT=DT-1
 ...I DT<P1DZ S DT=P1DZ
 ..
 ..I $$^W4MSL(NMB) D SETDOP(HZMS,JB)
 ..
 ..D ^W4H(DT,HZMS)
 ..
 ..N DTPREV S DTPREV=$O(@$$^W4REF@(P1DZ),-1) I DTPREV D
 ...I '$D(@$$^W4GL("W4MNYFL")@(DTPREV)) D
 ....L +@$$^W4GL("W4MNYFL")@(DTPREV):1
 ....J ^W4MNYSN(JB,DTPREV,DTPREV)
 ....S @$$^W4GL("W4MNYFL")@(DTPREV)=$H
 ....L -@$$^W4GL("W4MNYFL")@(DTPREV)
 ;
 D PUT^%W3DEB("W4PUTHZ","HZM=HZM & HZMS=HZMS")
 ;
 I $$PWRLNK^W4PRM,'$D(HZMNEW),$$HZM^W4MSL(HZMS) D
 .;;S PWRLNKID=$$PWRLNKID(HZMS) Q:'PWRLNKID
 .S PWRLNKID=$G(@$$^W4ORD@(HZMS,"HZMLAK")) 
 .S PWRLNKID=$P(PWRLNKID,"PWRLNK:",2)
 .N DATOLD,SHAAOLD,SUMOLD,DATNEW,SHAANEW,SUMNEW
 .S DATOLD=$$TRH^W4HZMST(HZMS)
 .S SHAAOLD=$$SHAA^W4HZMST(HZMS)
 .S SUMOLD=$$TSHL^W4HZMST(HZMS)
 .S DATNEW=$P($G(@THZ),"\",5)
 .S SHAANEW=$P($G(@THZ),"\",6)
 .S SUMNEW=$P($G(@THZ),"\",11)
 .I DATNEW'=DATOLD!(SHAANEW'=SHAAOLD)!(+SUMNEW'=+SUMOLD) D
 ..J UPD^W4PWRLNK(JB,HZMS)
 ;
 N H I $D(@GLORD@(HZMS,"H")) S H=^("H")
 ;
 I $D(@THZ@("HZMSK")) D
 .N DZ S DZ=$$^W4DZ
 .N GLMSKREF S GLMSKREF=$$GLREF^W4POSMSK
 .N N1 S N1="" F  S N1=$O(@THZ@("HZMSK",N1)) Q:N1=""  D
 ..S $P(@GLMSKREF@(DZ,N1),"\",5)=HZMS
 ;
 I $D(@THZ)>0,$D(@THZ1)>9 D
 .N N S N="" F  S N=$O(@GLORD@(HZMS,N)) Q:N=""  D
 ..I N?1N.N!(N="BIT")!(N="MRG")!(N="TS") K ^(N)
 ;
 I $G(@$$^W4PRM@("HZRKZ")) D ^W4COMP
 ;
 S I="" F  S I=$O(@THZ1@(I)) Q:I=""   I I D
 .S $P(^(I),"\",5)=$TR($P($G(^(I)),"\",5)," ","")
 .N HR S HR=$P($G(^(I)),"\",8)
 .I HR?.E1"<"1N.E S HR=$$^W4CLHRMV(HR) S $P(@THZ@(I),"\",8)=HR
 .I $P($G(@THZ@(I)),"\",5)'<0,$D(@THZ@("BIT",I)) K ^(I) Q
 ;
 N OLDDAT,OLDSHAA
 S OLDDAT=$$TRH^W4HZMST(HZMS)
 S OLDSHAA=$$SHAA^W4HZMST(HZMS)
 ;
 S MAC1=THZ,MAC2=GLORD_"(HZMS)" ; ------ !!!!!!!!!!!!!!!!
 ;
 S I="" F  S I=$O(@$$^W4ORD@(HZMS,I)) Q:I=""  I I D  ; --- 09/02/21
 .N A,KM S A=$G(^(I)),KM=$P(A,"\",5)
 .I KM["." S $P(A,"\",5)=$J(KM,3,3)
 .S ^(I)=A
 ;
 D ^%S1GC1 K @THZ ;-- KOTERET
 ;
 N I,I1,J K @THZ@("BIT")
 ;
 I $G(@GLORD@(HZMS,"FROM")) D
 .S FROM=^("FROM")
 .S @GLORD@(FROM,"TO")=HZMS
 ;
 S J=0
 S I="" F  S I=$O(@THZ1@(I)) Q:I=""   I I,$P($G(^(I)),"\")'?.P D
 .S J=J+1
 .S GLOJ=GLORD_"0(HZMS,J)"
 .S GLNJ=GLORD_"(HZMS,J)"
 .S THZI=$E(THZ1,1,$L(THZ1)-1)_",I)"
 .
 .S MAC1=$E(THZ1,1,$L(THZ1)-1)_",I)"
 .S MAC2=GLORD_"(HZMS,J)" D ^%S1GC1  ;--- TOHEN (COLEL TOSAFOT)
 ;
 ;
 I $G(%ARG("W3NEWHZN")) D
 .N TSHL,TOT
 .S TOT=$$TOTORD^W4HZMST(HZMS)
 .S TSHL=$$TSHL^W4HZMST(HZMS)
 .I $J(TOT,2,2)'=$J(TSHL,2,2) D
 ..N LI S LI=$O(@$$^W4ORD@(HZMS,99999),-1)+1
 ..S RZN=$J(TSHL-TOT,2,2)
 ..S @$$^W4ORD@(HZMS,LI)="0\\dnlyd\"_RZN_"\1\0\"_RZN
 ;
 I '$G(%ARG("W3NEWHZN")) D
 .D ^W4CLRDBL(HZMS)
 .I '$D(@$$^W4GL("DBLORD")@(HZMS)) D ^W4CALC(HZMS)
 ;
 S LASTU=$P($H,",",2)
 D PUT^W4SCREF(GLORD_"(HZMS)","P1HZMS",1,"LASTU")
 ;
 I $D(H) S @GLORD@(HZMS,"H")=H
 S @GLORD@(HZMS,"JB",JB)=$ZD($H,"DD.MM.YY  24:60")_"\"_$$^W4MYDVN
 ;
 I $$PRMANA^W4HZPCFN(HZMS)=2 D ^W4SETCHP(HZMS)
 ;
 I $G(@$$^W4PRM@("VIDEO"))=2 D
 .N I F I=1:1 Q:'$D(@THZ1@(I))  I ^(I)'["\@@" D
 ..D ^W4VIDEO(HZMS,I_"\"_@THZ1@(I),1)
 ;
 I $$RESTORAN^W4PRM D
 .I HZM0=$$NEW^W4KLNEW D ^W4RSTRN(1,HZMS)
 .N I,PAR,OK S OK=0
 .F I=1:1 Q:'$D(@THZ1@(I))  I ^(I)'["\@@" D  Q:OK
 ..S PAR=$P(^(I),"\")
 ..I PAR=$G(@$$^W4PRM@("RESTORAN","KINUAH")) S OK=1 Q
 .I OK D ^W4RSTRN(2,HZMS)
 ;
 I $G(@$$^W4PRM@("CONCEPTIC")) D
 .I HZM0=$$NEW^W4KLNEW D ^W4CONC(1,HZMS)
 ;
 D SPECIT(HZMS)
 ;
 D LINK(HZMS)
 ;
 I $D(NEWHZM),$$HZM^W4MSL(HZMS) D  ; -- NEW ORDS
 .N TS,DR,T1 S TS=$$TSHL^W4HZMST(HZMS)
 .I $$PAPJ^W4PRM,'$$WEBORD^W4HZMST(HZMS),'$G(@$$^W4ORD@(HZMS,"MKRDLV")) S @$$^W4ORD@(HZMS,"MKRDLV")=99 ; -- 25/01/26
 .
 .I $$MZSM^W4PRM D
 ..S DR=$P($J(TS,2,2),".",2)
 ..I DR#10 D
 ...S DR=DR\10*10,T1=$P(TS,".")_"."_DR,T1=$J(T1,2,2)
 ...N HNH2 S HNH2=$$HNH2^W4HZMST(HZMS) 
 ...S HNH2=HNH2+TS-T1 D PUT^W4HZMST(HZMS,"HNH2",HNH2)
 ..
 .D LIMHR(HZMS,$S(TS'<0:1,1:0))
 .I TS'>.5,TS'<-.5 S TS=0
 .
 .I $$TEAV^W4PRM,$$^W4MSL(NMB),'TS,'$$I^W4DEL(HZMS) D
 ..I $$TAKEAWAY^W4HZMST(HZMS) D ^W4TVDEL(HZMS) Q
 ..D SETTV^W3SETHD(HZMS) S PRSND=0
 .
 .I $$DA^W4PRM,$$^W4MSL(NMB),'TS,'$$I^W4DEL(HZMS) D
 ..I $$TAKEAWAY^W4HZMST(HZMS) D ^W4DADEL(HZMS) Q
 ..D SETDA^W3SETHD(HZMS)
 ..S PRSND=0
 .
 .I $$^W4MSL(NMB),$$TRICKER^W4PRM(HZMS) D
 ..J ^W4TRICKR(JB,HZMS,"RECEIVE",90)
 ;
 ;;S ^AA("W4PUTHZ","HZMS")=HZMS
 ;;S ^AA("W4PUTHZ","PRSND")=$G(PRSND)
 ;
 I HZMS>0,$$HZM^W4MSL(HZMS),$G(PRSND) D SNDIDK(HZMS)
 ;
 I HZMS>0,'$$^W4CLOSE(HZM) D
 .N SOURCEORD S SOURCEORD=$G(@$$^W4ORD@(HZMS,"MIMUSHPZM"))
 .I SOURCEORD D
 ..S @$$^W4ORD@(SOURCEORD,"PIZUIM","ORD")=HZMS
 ..N IND S IND=$$INDPZM^W4PIZUIM(SOURCEORD) Q:IND=""
 ..S $P(@$$^W4GL("W4PIZUIM")@(IND,SOURCEORD),"\",3)=HZMS
 .;
 .D PUT^%W1PRM("SAVEORD",HZMS)
 .
 .I $$HZM^W4MSL(HZMS),$$GETP^%W1PRM("AZRPLGN")'="" D
 ..S @$$^W4ORD@(HZMS,"AZRPLGN")=$$GETP^%W1PRM("AZRPLGN")
 .
 .; --- IF DATE OF ORDER WAS CHANGED
 .I $$HZM^W4MSL(HZMS),$G(OLDDAT),$G(NEWDAT)'=$G(OLDDAT)!($G(OLDSHAA)'=$G(NEWSHAA)) D
 ..D ^W4CHNTIM(HZMS,OLDDAT,NEWDAT,OLDSHAA,NEWSHAA,$$MKBL^W4HZMST(HZMS),1)
 ;
 N HZW
 S HZW=$P($G(@$$^W4GL("HZLINK")@(HZMS)),"\")
 ;
 I HZW,HZMS>0 D
 .N W3ORDA S W3ORDA=$$^W4GL("W3ORDA")
 .N DLVWEB S DLVWEB=$G(@W3ORDA@(HZW,"DLVWEB"))
 .I DLVWEB D HZ2WEB(HZW,HZMS)
 .N GLW S GLW=$$^W4GL("W3ORD")
 .I '$D(@GLW@(HZW)),$D(@W3ORDA@(HZW)) S GLW=W3ORDA
 .D ^W4SVLK(HZW,GLW)
 .D BDKTSH(HZMS,HZW)
 ;
 N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(HZMS)
 ;
 I HZMS>0,$D(NEWHZM) D
 .S @$$^W4ORD@(HZMS,"SVTIME1")=$H_"\"_$$^W4MYDVN_"\JB="_$G(JB)_"\"_$$MKBL^W4HZMST(HZMS)
 .S @$$^W4ORD@(HZMS,"SVTIME1",$H)=$H_"\"_$$^W4MYDVN_"\JB="_$G(JB)_"\"_$$MKBL^W4HZMST(HZMS)
 .
 .D ZIC(HZMS)
 .
 .I $$MKRDLV^W4HZMST(HZMS)=10 D
 ..N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(HZMS) Q:'HZMLAK
 ..S @$$^W4GL("HZLINKTB")@(HZMLAK)=HZMS
 .
 .I $$MKRDLV^W4HZMST(HZMS)=12 D; -- MISHLOHA
 ..N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(HZMS) Q:'HZMLAK
 ..S @$$^W4GL("HZLINKMSH")@(HZMLAK)=HZMS
 ;
 I HZMS>0,HZMLAK<0 D
 .N HZMO S HZMO=+$G(@$$^W4GL("HZLINKI")@(-HZMLAK)) Q:HZMO<1
 .N PSLO S PSLO=$P($G(@$$^W4ORD@(HZMO,"TM")),"\")
 .I PSLO D
 ..S $P(@$$^W4ORD@(HZMS,"TM"),"\")=PSLO
 ..S @$$^W4GL("P1MSL")@($$^W4DZ,PSLO,HZMS)=$H
 .S @$$^W4GL("P1DEL")@(HZMO)=HZMS
 .S @$$^W4GL("P1DELI")@(HZMS)=HZMO
 ;
 L  Q HZMS
 ;
 ;
GLORD(HZW) S GLORD=$$^W4GL("P1HZ",HZW)
 Q
 ;
ERREND L  Q "0;"_MSGER
 ;
 ;
LINK(HZMS) ;
 N NMB,MSD,MSDFROM
 S NMB=$$NMB^W4HZMST(HZMS)
 ;
 I $$^W4MSL(NMB)!$$TAWM^W4DLPK(NMB) D
 .S MSD=$$MSDHZM^W4HZMST(HZMS),MSDFROM=""
 .I MSD,'$G(@$$^W4ORD@(HZMS,"MSD")) S ^("MSD")=MSD
 .I 'MSD D
 ..S MSD=+$$GETP^%W1PRM("MSD")
 ..I $$^W4MM S MSDFROM=MSD,MSD=$G(@$$^W4ORD@(HZMS,"MSD"))
 ..I $$CALLCENTER^W4PRM=1!(+$$CALLCENTER^W4PRM=.5) D  Q:'MSD
 ...S MSD=$G(@$$^W4ORD@(HZMS,"MSD"))
 .I 'MSD S MSD=1
 .D PUT^%W3DEB("W4PUTHZ-DLV","HZMS=HZMS & MSD=MSD & NMB=NMB")
 .D ^W4LINK(HZMS,MSD,NMB,MSDFROM)
 Q  ;
 ;
HZ2WEB(HZW,HZMS) ;
 N MSD S MSD=$G(@W3ORDA@(HZW,"MSD")) Q:'MSD
 K ^[$$^W3MAIN]HZ2WEB(MSD,HZMS)
 M ^[$$^W3MAIN]HZ2WEB(MSD,HZMS)=@$$^W4ORD@(HZMS)
 S ^[$$^W3MAIN]HZ2WEB(MSD,HZMS,"WEB")=HZW_";;;"_HZMS
 Q
 ;
BDDBL(ASM) ; 
 Q
 N ASMW S ASMW=$E(ASM,2,20)
 I $L(ASMW),$D(@$$^W4GL("HZLINKWI")@(ASMW)) S MSGER="DOUBLE" Q
 N LHZ S LHZ=$O(@$$^W4ORD@(999999999),-1) Q:'LHZ
 I $P($G(@$$^W4ORD@(LHZ)),"\",30)=ASM S MSGER="DOUBLE" Q
 Q
 ;
BDKTSH(HZMS,HZW) ;
 N W3ORDA S W3ORDA=$$^W4GL("W3ORDA")
 N HDW S HDW=$G(@W3ORDA@(HZW))
 I HDW?.P Q
 N HZMLAK S HZMLAK=$$HZMLAK^W4HZMST(HZMS)
 I $E(HZMLAK)'="W" Q
 I HZW'=$E(HZMLAK,2,20) Q
 ;
 N TSHL0 S TSHL0=$P($G(@W3ORDA@(HZW)),"~",11)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZMS)
 N RZ S RZ=TSHL-TSHL0
 ;
 I RZ,'$D(@$$^W4ORD@(HZMS,"DIFTSH")),$D(@$$^W4GL("P1HZ0")@(HZMS))'=11 D
 .S @$$^W4ORD@(HZMS,"DIFTSH")=RZ
 .N HN S HN=$P($G(@$$^W4ORD@(HZMS)),"\",8)
 .S $P(@$$^W4ORD@(HZMS),"\",8)=HN+RZ
 .S $P(@$$^W4ORD@(HZMS),"\",11)=TSHL-RZ
 .N SH S SH=$O(@$$^W4ORD@(HZMS,"CB","HNH1",99999),-1)+1
 .S @$$^W4ORD@(HZMS,"CB","HNH1",SH)=RZ_"*"_$H_"*DIFTSH*"_$$^W4MYDVN_"*INTERNET"
 Q
 ;
 ;
LIMHR(HZMS,Q) ; 
 Q:$$HZM^W4MSD(HZMS)
 N DT,HR S TS=$$TSHL^W4HZMST(HZMS) 
 S DT=$$^%L1DC($$TRH^W4HZMST(HZMS),3) Q:'DT
 S HR=+$$SHAA^W4HZMST(HZMS)
 S @$$^W4GL("W4LIMHR")@(DT,HR)=$G(@$$^W4GL("W4LIMHR")@(DT,HR))+Q
 Q
 ;
 ;
SPECIT(HZMS) ; 
 I $D(@$$^W4GL("W4SPECIT"))<10 Q
 ;
 N N,M S N="" F  S N=$O(@$$^W4GL("W4SPECIT")@(N)) Q:N=""  D
 .N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZMS,N1)) Q:N1=""  I N1 D  Q:$D(M(N))
 ..N CD S CD=$P($G(^(N1)),"\") I CD=N S M(N)=""
 ;
 N HR S HR=$$CMNT^W4HZMST(HZMS)
 I HR["{" S HR=$$CLRDLM^%L1FRM(HR,"{","}")
 ;
 I $D(M)>9 D
 .S HR=HR_" { "
 .S N="" F  S N=$O(M(N)) Q:N=""  D
 ..N CMNT S CMNT=$G(@$$^W4GL("W4SPECIT")@(N))
 ..I CMNT="" S CMNT=$$SHEM^W4P(N)
 ..S HR=HR_CMNT_","
 .S HR=$E(HR,1,$L(HR)-1)_" }"
 .S $P(@$$^W4ORD@(HZMS),"\",7)=HR
 Q
 ;
FIRSTDAYORD(HZ,DT) ; 
 N HZO S HZO=$O(@$$^W4REF@(DT,HZ),-1)
 I HZO="" Q 1
 Q 0 
 ;
 ;
CLRDLYPRN(HZMS) ;
 K ^AA("W4PUTHZ","CLRDLY")
 ;;S ^AA("W4PUTHZ","CLRDLY",HZMS)=1
 N GLDLY S GLDLY=$$^W4GL("W4DLYPRN")
 N GLDLA S GLDLA=$$^W4GL("W4DLYPRA")
 N DT,SEC
 ;
 S OKDLY=0
 I $D(@GLDLY) D
 .N N S N="" F  S N=$O(@GLDLY@(N)) Q:N=""  D
 ..I +$E(N,11,20)=HZMS K @GLDLY@(N) S OKDLY=1
 ;
 I $D(@GLDLA@(HZMS)) S OKDLY=1
 ;
 N DZ S DZ=$$^W4DZ 
 ;
 I $$HZM^W4MSL(HZMS),$$BONNEW^W4PRM,$$DLYPRN^W4PRM D  ;; $$HZAFTPAY^W4PRM D
 .N PRN,ZMAN
 .D CLRBON(DZ,HZMS,"W4BON")
 .D CLRBON(DZ,HZMS,"W4BONA")
 .I OKDLY D
 ..S @$$^W4ORD@(HZMS,"CLRSMB")=$H
 Q
 ;
CLRBON(DZ,HZMS,NMGL)
 N PRN,ZMAN
 S PRN="" F  S PRN=$O(@$$^W4GL(NMGL)@(DZ,PRN)) Q:PRN=""  D
 .S ZMAN="" F  S ZMAN=$O(@$$^W4GL(NMGL)@(DZ,PRN,ZMAN)) Q:ZMAN=""  D
 ..I $D(@$$^W4GL(NMGL)@(DZ,PRN,ZMAN,HZMS)) S OKDLY=1
 ..;;I $G(NEWDAT),DZ'=$$^%L1DC(NEWDAT,3) Q; --> 23.06.29 --> COMMENT
 ..K @$$^W4GL(NMGL)@(DZ,PRN,ZMAN,HZMS); -- 19/05/25 --> COMMENT
 Q
 ;
MIN(SHAA) ; 
 Q SHAA*60+$P(SHAA,":",2) 
 ;
PWRLNKID(HZ) 
 N PWRLNKID
 S PWRLNKID=$G(@$$^W4ORD@(HZ,"HZMLAK")) 
 S PWRLNKID=$P(PWRLNKID,"PWRLNK:",2)
 Q PWRLNKID 
 ;
SETDOP(HZM,HZW) ;
 ;;S ^AA("W4PUTHZ-SETDOP","HZM-HZW",HZM,HZW)=$G(^TMPORD(JB))
 ;
 N PELE S PELE=$TR($$PELE^W3HZMST(HZW),"\","-")
 I PELE'="" D
 .D PUT^W4HZMST(HZM,"PELE",PELE)
 ;
 D PUT^W4HZMST(HZM,"IR",$TR($$CITY^W3HZMST(HZW),"\","/"))
 ;
 D
 .N CMHD S CMHD=$$CMHD^W3HZMST(HZW)
 .N NMB S NMB=$$NMB^W4HZMST(HZM)
 .D PUT^W4HZMST(HZM,"HRAED",CMHD)
 .I NMB S @$$^W4GL("P1HL")@(NMB,HZM,"LKHN")=CMHD
 ;
 D PUT^W4HZMST(HZM,"FIRE",$$FIRE^W3HZMST(HZW))
 ;
 I $L($$COMP^W3HZMST(HZW)) D
 .D PUT^W4HZMST(HZM,"MAZMIN",$$NAME^W3HZMST(HZW))
 .D PUT^W4HZMST(HZM,"NAME",$$COMP^W3HZMST(HZW))
 ;
 I HZM>0,$$TAWM^W4DLPK(NMB) D
 .D PUT^W4HZMST(HZM,"NAME",$$HRAED^W4HZMST(HZM))
 .D PUT^W4HZMST(HZM,"IR","TAKEAWAY")
 Q
 ;
 ;
SNDIDK(HZMS) ; 
 ;;S ^AA("W4PUTHZ-SNDIDK",$P($H,",",2))=HZMS
 I $$TEAV^W4PRM,$$HZM^W4MSL(HZMS),'$$I^W4DEL(HZMS) D
 .;;S ^AA("W4PUTHZ1-TEAV",$P($H,",",2))=""
 .D DELTIME^W4TVDEL(HZMS)
 .I $$TAKEAWAY^W4HZMST(HZMS) Q
 .D SETTV^W3SETHD(HZMS)
 ;
 I $$DA^W4PRM,$$HZM^W4MSL(HZMS),'$$I^W4DEL(HZMS) D
 .S ^AA("W4PUTHZ1-DA",$P($H,",",2))=""
 .D DELTIME^W4DADEL(HZMS)
 .I $$TAKEAWAY^W4HZMST(HZMS) Q
 .D SETDA^W3SETHD(HZMS)
 Q
 ;
 ;
ZIC(HZMS) ;
 N LNKZIC
 N TS S TS=$$TSHL^W4HZMST(HZMS)
 I TS<0 D
 .S @$$^W4GL("W4ZICD")@($$^W4DZ,HZMS)=$H
 .S LNKZIC=$$SPA^%L1FRM($$HRAED^W4HZMST(HZMS))
 .I 'LNKZIC D  Q
 ..S @$$^W4GL("W4ZICER")@(HZMS)="NOREFID\"
 .
 .N HZMKR S HZMKR=$G(@$$^W4GL("HZLINKM")@(LNKZIC))
 .I HZMKR D
 ..I $$SUMZIC(HZMKR)-TS>$$TSHL^W4HZMST(HZMKR) D  Q
 ...N SH S SH=$O(@$$^W4ORD@(HZMKR,"ZICER",999),-1)+1
 ...S @$$^W4ORD@(HZMKR,"ZICER",SH)=HZMS_"\"_TS_"\ZICTOOBIG"
 ...N RES S RES=$$^W4HZDEL(HZMS)
 ...S @$$^W4GL("W4ZICER")@(HZMS)="ZICTOOBIG\"_HZMKR_"\"_TS
 ..
 ..N SH S SH=$O(@$$^W4ORD@(HZMKR,"ZIC",999),-1)+1
 ..S @$$^W4ORD@(HZMKR,"ZIC",SH)=HZMS_"\"_TS
 ..D SETZIC(HZMKR,LNKZIC,-TS)
 ..S @$$^W4GL("W4ZIC")@(HZMKR,HZMS)=TS
 ..S @$$^W4GL("W4ZICI")@(HZMS)=HZMKR
 ..
 ..I $J($$SUMZIC(HZMKR),1,1)=$J($$TSHL^W4HZMST(HZMKR),1,1) D
 ...S @$$^W4GL("P1DEL")@(HZMKR)=HZMS
 ...S @$$^W4GL("P1DELI")@(HZMS)=HZMKR
 ;
 I TS'<0 D
 .S LNKZIC=$$HZLAKNOM^W4HZMST(HZMS) Q:'LNKZIC
 .S @$$^W4GL("HZLINKM")@(LNKZIC)=HZMS
 .S @$$^W4GL("HZLINKMI")@(HZMS)=LNKZIC
 Q
 ;
 ;
SUMZIC(HZ) ; 
 N N,SUM S SUM=0 
 S N="" F  S N=$O(@$$^W4GL("W4ZIC")@(HZ,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S SUM=SUM-A
 I SUM<0 S SUM=-SUM
 Q SUM 
 ;
 ;
SETZIC(HZMKR,LNKZIC,SUM)
 N N1,N2,OK S OK=0  
 S N1="" F  S N1=$O(@$$^W4ORD@(HZMKR,"CB",N1)) Q:N1=""  D
 .S N2="" F  S N2=$O(@$$^W4ORD@(HZMKR,"CB",N1,N2)) Q:N2=""  D
 ..I N1="MZ" S $P(^(N2),"*",8)=$P(^(N2),"*",8)+SUM,OK=1 Q
 ..I N1="V" S $P(^(N2),"*",34)=$P(^(N2),"*",34)+SUM,OK=1 Q
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PUTHZ0
W4PUTHZ(JB,HZM) ; [ 21.04.24 16:01 ] [ 17.04.24 17:03 ] [ 14.04.24 21:12 ] 
 I $G(HZM)>0,$$^W4CLOSE(HZM),$G(P1HZOP)'="UPDCLOSE" Q HZM
 N LASTHZ S LASTHZ=9999999
 I $$SF^W4PRM D
 .S LASTHZ=$S($D(@$$^W4ORD@(747361)):999999,1:747362)
 ;
 F  S LASTHZ=$O(@$$^W4ORD@(LASTHZ),-1) Q:LASTHZ<1  Q:$D(@$$^W4ORD@(LASTHZ))=11
 I HZM-LASTHZ>20,$D(@$$^W4ORD@(HZM))'=11 S HZM="ycg"
 ;
 N MSGER S MSGER=""
 N GLORD D GLORD(JB)
 D THZ^W4NEWHZ(JB)
 S WB=$$WB^W4NEWHZ(JB)
 I $G(@$$^W4GL("HZLINKI")@(JB)),+$G(^(JB))'=HZM S MSGER="DOUBLE" G ERREND
PUT S HZMS=""
 D THZ^W4NEWHZ(JB)
 N ASM S ASM=$P($G(@THZ),"\",30)
 ;
 I $E(ASM)="W",HZM<1 H (.1*$R(6)) D BDDBL(ASM) I $G(MSGER)="DOUBLE" G ERREND
 ;
 N NMB S NMB=$P($G(@THZ),"\")
 I NMB="",$G(@$$^W4PRM@("LKHDFLT")) D
 .S NMB=^("LKHDFLT")
 .S $P(@THZ,"\")=NMB
 ;
 I NMB="" S MSGER="NONMB" G ERREND
 ;
 I '$D(@THZ1@(1)),$G(@THZ1@(2))'?.P S @THZ1@(1)="0\0\0\0\0\0\0"
 ;
 I '$D(@THZ1@(1)),$$SUGL1^W4L(NMB)'["cx`il" S MSGER="NOITEMS" G ERREND
 ;
 I $P($G(@THZ1@(1)),"\")?.P,$$SUGL1^W4L(NMB)'["cx`il" S MSGER="NOITEMS" G ERREND
 S (HZMS,HZM0)=HZM
 ;
 N NEWHZM
 ;
 N NEWDAT,NEWSHAA
 S NEWDAT=$P($G(@THZ),"\",5)
 S NEWSHAA=$P($G(@THZ),"\",6)
 ;
 I HZM>0 D
 .I $$PWRLNK^W4PRM D
 ..N PWRLNKID S PWRLNKID=$$GETP^%W1PRM("PWRLNKID") ;;Q:PWRLNKID=""
 ..J UPD^W4PWRLNK(JB,HZM)
 ;
 I 'HZM!(HZM=-1) D  ; --- NEW ORDER
 .I $$TAW^W4PRM!$$SUPER^W3PRM D
 ..S $P(@THZ,"\",4)=$ZD($H,"DD.MM.YY  24:60")
 .S HZMS=$$^W4NEWHZM(NMB)
 .
 .I HZMS>0 D
 ..S NEWHZM=""
 ..S @$$^W4GL("W4HZ4ADR")@(HZMS)=$H
 ..N P1DZ S P1DZ=$$^W4DZ
 ..N DT S DT=P1DZ
 ..N HD S HD=$G(@THZ)
 ..
 ..I $$PWRLNK^W4PRM D
 ...N PWRLNKID S PWRLNKID=$$GETP^%W1PRM("PWRLNKID")
 ...I PWRLNKID'="" S @$$^W4ORD@(HZMS,"HZMLAK")="PWRLNK:"_PWRLNKID
 ..
 ..I $$^W4MSL(NMB),$$TRICKER^W4PRM(HZMS) D
 ...J ^W4TRICKR(JB,HZMS,"RECEIVE")
 ..
 ..I $$^W4MSL(NMB),$$TEAV^W4PRM,'$$TAKEAWAY^W4HZMST(HZMS) D
 ...D SETTV^W3SETHD(HZMS)
 ..
 ..I $$^W4MSL(NMB),'$P(HD,"\",12),'$P(HD,"\",17) D
 ...S DT=$$^%L1DC($P(HD,"\",5),3)
 ...N SHAA S SHAA=$P(HD,"\",6)
 ...I SHAA<$$SHAAZ^W4PRM S DT=DT-1
 ...I DT<P1DZ S DT=P1DZ
 ..
 ..D ^W4H(DT,HZMS)
 ..
 ..N DTPREV S DTPREV=$O(@$$^W4REF@(P1DZ),-1) I DTPREV D
 ...I '$D(@$$^W4GL("W4MNYFL")@(DTPREV)) D
 ....L +@$$^W4GL("W4MNYFL")@(DTPREV):1
 ....J ^W4MNYSN(JB,DTPREV,DTPREV)
 ....S @$$^W4GL("W4MNYFL")@(DTPREV)=$H
 ....L -@$$^W4GL("W4MNYFL")@(DTPREV)
 ;
 D PUT^%W3DEB("W4PUTHZ","HZM=HZM & HZMS=HZMS")
 ;
 I $$PWRLNK^W4PRM,'$D(HZMNEW),$$HZM^W4MSL(HZMS) D
 .;;S PWRLNKID=$$PWRLNKID(HZMS) Q:'PWRLNKID
 .S PWRLNKID=$G(@$$^W4ORD@(HZMS,"HZMLAK")) 
 .S PWRLNKID=$P(PWRLNKID,"PWRLNK:",2)
 .N DATOLD,SHAAOLD,SUMOLD,DATNEW,SHAANEW,SUMNEW
 .S DATOLD=$$TRH^W4HZMST(HZMS)
 .S SHAAOLD=$$SHAA^W4HZMST(HZMS)
 .S SUMOLD=$$TSHL^W4HZMST(HZMS)
 .S DATNEW=$P($G(@THZ),"\",5)
 .S SHAANEW=$P($G(@THZ),"\",6)
 .S SUMNEW=$P($G(@THZ),"\",11)
 .I DATNEW'=DATOLD!(SHAANEW'=SHAAOLD)!(+SUMNEW'=+SUMOLD) D
 ..J UPD^W4PWRLNK(JB,HZMS)
 ;
 N H I $D(@GLORD@(HZMS,"H")) S H=^("H")
 ;
 I $D(@THZ@("HZMSK")) D
 .N DZ S DZ=$$^W4DZ
 .N GLMSKREF S GLMSKREF=$$GLREF^W4POSMSK
 .N N1 S N1="" F  S N1=$O(@THZ@("HZMSK",N1)) Q:N1=""  D
 ..S $P(@GLMSKREF@(DZ,N1),"\",5)=HZMS
 ;
 I $D(@THZ)>0,$D(@THZ1)>9 D
 .N N S N="" F  S N=$O(@GLORD@(HZMS,N)) Q:N=""  D
 ..I N?1N.N!(N="BIT")!(N="MRG")!(N="TS") K ^(N)
 ;
 I $G(@$$^W4PRM@("HZRKZ")) D ^W4COMP
 ;
 S I="" F  S I=$O(@THZ1@(I)) Q:I=""   I I D
 .S $P(^(I),"\",5)=$TR($P($G(^(I)),"\",5)," ","")
 .N HR S HR=$P($G(^(I)),"\",8)
 .I HR?.E1"<"1N.E S HR=$$^W4CLHRMV(HR) S $P(@THZ@(I),"\",8)=HR
 .I $P($G(@THZ@(I)),"\",5)'<0,$D(@THZ@("BIT",I)) K ^(I) Q
 ;
 N OLDDAT,OLDSHAA
 S OLDDAT=$$TRH^W4HZMST(HZMS)
 S OLDSHAA=$$SHAA^W4HZMST(HZMS)
 ;
 S MAC1=THZ,MAC2=GLORD_"(HZMS)" ; ------ !!!!!!!!!!!!!!!!
 ;
 S I="" F  S I=$O(@$$^W4ORD@(HZMS,I)) Q:I=""  I I D  ; --- 09/02/21
 .N A,KM S A=$G(^(I)),KM=$P(A,"\",5)
 .I KM["." S $P(A,"\",5)=$J(KM,3,3)
 .S ^(I)=A
 ;
 D ^%S1GC1 K @THZ ;-- KOTERET
 ;
 N I,I1,J K @THZ@("BIT")
 ;
 I $G(@GLORD@(HZMS,"FROM")) D
 .S FROM=^("FROM")
 .S @GLORD@(FROM,"TO")=HZMS
 ;
 S J=0
 S I="" F  S I=$O(@THZ1@(I)) Q:I=""   I I,$P($G(^(I)),"\")'?.P D
 .S J=J+1
 .S GLOJ=GLORD_"0(HZMS,J)"
 .S GLNJ=GLORD_"(HZMS,J)"
 .S THZI=$E(THZ1,1,$L(THZ1)-1)_",I)"
 .
 .S MAC1=$E(THZ1,1,$L(THZ1)-1)_",I)"
 .S MAC2=GLORD_"(HZMS,J)" D ^%S1GC1  ;--- TOHEN (COLEL TOSAFOT)
 ;
 ;
 I $G(%ARG("W3NEWHZN")) D
 .N TSHL,TOT
 .S TOT=$$TOTORD^W4HZMST(HZMS)
 .S TSHL=$$TSHL^W4HZMST(HZMS)
 .I $J(TOT,2,2)'=$J(TSHL,2,2) D
 ..N LI S LI=$O(@$$^W4ORD@(HZMS,99999),-1)+1
 ..S RZN=$J(TSHL-TOT,2,2)
 ..S @$$^W4ORD@(HZMS,LI)="0\\dnlyd\"_RZN_"\1\0\"_RZN
 ;
 I '$G(%ARG("W3NEWHZN")) D
 .D ^W4CLRDBL(HZMS)
 .I '$D(@$$^W4GL("DBLORD")@(HZMS)) D ^W4CALC(HZMS)
 ;
 S LASTU=$P($H,",",2)
 D PUT^W4SCREF(GLORD_"(HZMS)","P1HZMS",1,"LASTU")
 ;
 I $D(H) S @GLORD@(HZMS,"H")=H
 S @GLORD@(HZMS,"JB",JB)=$ZD($H,"DD.MM.YY  24:60")_"\"_$$^W4MYDVN
 ;
 I $$PRMANA^W4HZPCFN(HZMS)=2 D ^W4SETCHP(HZMS)
 ;
 I $G(@$$^W4PRM@("VIDEO"))=2 D
 .N I F I=1:1 Q:'$D(@THZ1@(I))  I ^(I)'["\@@" D
 ..D ^W4VIDEO(HZMS,I_"\"_@THZ1@(I),1)
 ;
 I $$RESTORAN^W4PRM D
 .I HZM0=$$NEW^W4KLNEW D ^W4RSTRN(1,HZMS)
 .N I,PAR,OK S OK=0
 .F I=1:1 Q:'$D(@THZ1@(I))  I ^(I)'["\@@" D  Q:OK
 ..S PAR=$P(^(I),"\")
 ..I PAR=$G(@$$^W4PRM@("RESTORAN","KINUAH")) S OK=1 Q
 .I OK D ^W4RSTRN(2,HZMS)
 ;
 I $G(@$$^W4PRM@("CONCEPTIC")) D
 .I HZM0=$$NEW^W4KLNEW D ^W4CONC(1,HZMS)
 ;
 D SPECIT(HZMS)
 ;
 D LINK(HZMS)
 ;
 I $D(NEWHZM),$$HZM^W4MSL(HZMS) D
 .N TS S TS=$$TSHL^W4HZMST(HZMS)
 .D LIMHR(HZMS,$S(TS'<0:1,1:0))
 ;
 I HZMS>0,'$$^W4CLOSE(HZM) D
 .N SOURCEORD S SOURCEORD=$G(@$$^W4ORD@(HZMS,"MIMUSHPZM"))
 .I SOURCEORD D
 ..S @$$^W4ORD@(SOURCEORD,"PIZUIM","ORD")=HZMS
 ..N IND S IND=$$INDPZM^W4PIZUIM(SOURCEORD) Q:IND=""
 ..S $P(@$$^W4GL("W4PIZUIM")@(IND,SOURCEORD),"\",3)=HZMS
 .;
 .D PUT^%W1PRM("SAVEORD",HZMS)
 .
 .I $$HZM^W4MSL(HZMS),$$GETP^%W1PRM("AZRPLGN")'="" D
 ..S @$$^W4ORD@(HZMS,"AZRPLGN")=$$GETP^%W1PRM("AZRPLGN")
 .
 .; --- IF DATE OF ORDER WAS CHANGED
 .I $$HZM^W4MSL(HZMS),OLDDAT,NEWDAT'=OLDDAT,$$ITRA^W4HZMST(HZMS)>.4 D
 ..N DTO,DTN
 ..S DTO=$$^%L1DC(OLDDAT,3)
 ..S DTN=$$^%L1DC(NEWDAT,3)
 ..D
 ...I $$SHAA^W4HZMST(HZMS)<$$SHAAZ^W4PRM S DTN=DTN-1 Q
 ...I $$^W4DZ=($H-1),DTN=+$H,$ZD($H,"24:60")'<$$SHAAZ^W4PRM S DTN=$$^W4DZ
 ..I DTN<$$^W4DZ Q
 ..I DTN=DTO Q
 ..I $$^W4CLOSE(HZMS) Q
 ..D ^W4MVP1H(DTO,DTN,HZMS)
 .
 .;;S ^AA("W4PUTHZ","OLDDAT",HZMS)=OLDDAT
 .;;S ^AA("W4PUTHZ","NEWDAT",HZMS)=NEWDAT
 .;;I '$D(^AA("W4PUTHZ","OLDSHAA",HZMS)) S ^AA("W4PUTHZ","OLDSHAA",HZMS)=OLDSHAA
 .;;S ^AA("W4PUTHZ","NEWSHAA",HZMS)=NEWSHAA
 .I $$HZM^W4MSL(HZMS),OLDDAT&(NEWDAT'=OLDDAT)!($L(OLDSHAA)&($$MIN(NEWSHAA)'=$$MIN(OLDSHAA))&(OLDSHAA'="00:00")) D
 ..I $$^W4CLOSE(HZMS) Q
 ..D CLRDLYPRN(HZMS)
 ;
 N HZW
 S HZW=$P($G(@$$^W4GL("HZLINK")@(HZMS)),"\")
 ;
 I HZW,HZMS>0 D
 .N W3ORDA S W3ORDA=$$^W4GL("W3ORDA")
 .N DLVWEB S DLVWEB=$G(@W3ORDA@(HZW,"DLVWEB"))
 .I DLVWEB D HZ2WEB(HZW,HZMS)
 .N GLW S GLW=$$^W4GL("W3ORD")
 .I '$D(@GLW@(HZW)),$D(@W3ORDA@(HZW)) S GLW=W3ORDA
 .D ^W4SVLK(HZW,GLW)
 .D BDKTSH(HZMS,HZW)
 ;
 N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(HZMS)
 ;
 I HZMS>0,$D(NEWHZM) D
 .S @$$^W4ORD@(HZMS,"SVTIME1")=$H
 .
 .I $$MKRDLV^W4HZMST(HZMS)=10 D
 ..N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(HZMS) Q:'HZMLAK
 ..S @$$^W4GL("HZLINKTB")@(HZMLAK)=HZMS
 .
 .I $$MKRDLV^W4HZMST(HZMS)=12 D; -- MISHLOHA
 ..N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(HZMS) Q:'HZMLAK
 ..S @$$^W4GL("HZLINKMSH")@(HZMLAK)=HZMS
 ;
 I HZMS>0,HZMLAK<0 D
 .N HZMO S HZMO=+$G(@$$^W4GL("HZLINKI")@(-HZMLAK)) Q:HZMO<1
 .N PSLO S PSLO=$P($G(@$$^W4ORD@(HZMO,"TM")),"\")
 .I PSLO D
 ..S $P(@$$^W4ORD@(HZMS,"TM"),"\")=PSLO
 ..S @$$^W4GL("P1MSL")@($$^W4DZ,PSLO,HZMS)=$H
 .S @$$^W4GL("P1DEL")@(HZMO)=HZMS
 .S @$$^W4GL("P1DELI")@(HZMS)=HZMO
 ;
 L  Q HZMS
 ;
 ;
GLORD(HZW) S GLORD=$$^W4GL("P1HZ",HZW)
 Q
 ;
ERREND L  Q "0;"_MSGER
 ;
 ;
LINK(HZMS) ;
 N NMB,MSD,MSDFROM
 S NMB=$$NMB^W4HZMST(HZMS)
 ;
 I $$^W4MSL(NMB)!$$TAWM^W4DLPK(NMB) D
 .S MSD=$$MSDHZM^W4HZMST(HZMS),MSDFROM=""
 .I MSD,'$G(@$$^W4ORD@(HZMS,"MSD")) S ^("MSD")=MSD
 .I 'MSD D
 ..S MSD=+$$GETP^%W1PRM("MSD")
 ..I $$^W4MM S MSDFROM=MSD,MSD=$G(@$$^W4ORD@(HZMS,"MSD"))
 ..I $$CALLCENTER^W4PRM=1!(+$$CALLCENTER^W4PRM=.5) D  Q:'MSD
 ...S MSD=$G(@$$^W4ORD@(HZMS,"MSD"))
 .I 'MSD S MSD=1
 .D PUT^%W3DEB("W4PUTHZ-DLV","HZMS=HZMS & MSD=MSD & NMB=NMB")
 .D ^W4LINK(HZMS,MSD,NMB,MSDFROM)
 Q  ;
 ;
HZ2WEB(HZW,HZMS) ;
 N MSD S MSD=$G(@W3ORDA@(HZW,"MSD")) Q:'MSD
 K ^[$$^W3MAIN]HZ2WEB(MSD,HZMS)
 M ^[$$^W3MAIN]HZ2WEB(MSD,HZMS)=@$$^W4ORD@(HZMS)
 S ^[$$^W3MAIN]HZ2WEB(MSD,HZMS,"WEB")=HZW_";;;"_HZMS
 S ^[$$^W3MAIN]P1WEB(MSD,"HZ2WEB","GLOB")="^HZ2WEB"
 N WEBMSD S WEBMSD=+$G(@$$^W4PRM@("WEB","MSD"))
 S ^[$$^W3MAIN]P1WEB(MSD,"HZ2WEB","FL")="HZ2WEB_"_WEBMSD_"-"_HZMS
 Q
 ;
BDDBL(ASM) ; 
 Q
 N ASMW S ASMW=$E(ASM,2,20)
 I $L(ASMW),$D(@$$^W4GL("HZLINKWI")@(ASMW)) S MSGER="DOUBLE" Q
 N LHZ S LHZ=$O(@$$^W4ORD@(999999999),-1) Q:'LHZ
 I $P($G(@$$^W4ORD@(LHZ)),"\",30)=ASM S MSGER="DOUBLE" Q
 Q
 ;
BDKTSH(HZMS,HZW) ;
 N W3ORDA S W3ORDA=$$^W4GL("W3ORDA")
 N HDW S HDW=$G(@W3ORDA@(HZW))
 I HDW?.P Q
 N HZMLAK S HZMLAK=$$HZMLAK^W4HZMST(HZMS)
 I $E(HZMLAK)'="W" Q
 I HZW'=$E(HZMLAK,2,20) Q
 ;
 N TSHL0 S TSHL0=$P($G(@W3ORDA@(HZW)),"~",11)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZMS)
 N RZ S RZ=TSHL-TSHL0
 ;
 I RZ,'$D(@$$^W4ORD@(HZMS,"DIFTSH")),$D(@$$^W4GL("P1HZ0")@(HZMS))'=11 D
 .S @$$^W4ORD@(HZMS,"DIFTSH")=RZ
 .N HN S HN=$P($G(@$$^W4ORD@(HZMS)),"\",8)
 .S $P(@$$^W4ORD@(HZMS),"\",8)=HN+RZ
 .S $P(@$$^W4ORD@(HZMS),"\",11)=TSHL-RZ
 .N SH S SH=$O(@$$^W4ORD@(HZMS,"CB","HNH1",99999),-1)+1
 .S @$$^W4ORD@(HZMS,"CB","HNH1",SH)=RZ_"*"_$H_"*DIFTSH*"_$$^W4MYDVN_"*INTERNET"
 Q
 ;
 ;
LIMHR(HZMS,Q) ; 
 Q:$$HZM^W4MSD(HZMS)
 N DT,HR S TS=$$TSHL^W4HZMST(HZMS) 
 S DT=$$^%L1DC($$TRH^W4HZMST(HZMS),3) Q:'DT
 S HR=+$$SHAA^W4HZMST(HZMS)
 S @$$^W4GL("W4LIMHR")@(DT,HR)=$G(@$$^W4GL("W4LIMHR")@(DT,HR))+Q
 Q
 ;
 ;
SPECIT(HZMS) ; 
 I $D(@$$^W4GL("W4SPECIT"))<10 Q
 ;
 N N,M S N="" F  S N=$O(@$$^W4GL("W4SPECIT")@(N)) Q:N=""  D
 .N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZMS,N1)) Q:N1=""  I N1 D  Q:$D(M(N))
 ..N CD S CD=$P($G(^(N1)),"\") I CD=N S M(N)=""
 ;
 N HR S HR=$$CMNT^W4HZMST(HZMS)
 I HR["{" S HR=$$CLRDLM^%L1FRM(HR,"{","}")
 ;
 I $D(M)>9 D
 .S HR=HR_" { "
 .S N="" F  S N=$O(M(N)) Q:N=""  D
 ..N CMNT S CMNT=$G(@$$^W4GL("W4SPECIT")@(N))
 ..I CMNT="" S CMNT=$$SHEM^W4P(N)
 ..S HR=HR_CMNT_","
 .S HR=$E(HR,1,$L(HR)-1)_" }"
 .S $P(@$$^W4ORD@(HZMS),"\",7)=HR
 Q
 ;
FIRSTDAYORD(HZ,DT) ; 
 N HZO S HZO=$O(@$$^W4REF@(DT,HZ),-1)
 I HZO="" Q 1
 Q 0 
 ;
 ;
CLRDLYPRN(HZMS) ;
 K ^AA("W4PUTHZ","CLRDLY")
 ;;S ^AA("W4PUTHZ","CLRDLY",HZMS)=1
 N GLDLY S GLDLY=$$^W4GL("W4DLYPRN")
 N GLDLA S GLDLA=$$^W4GL("W4DLYPRA")
 N DT,SEC
 ;
 N OKDLY S OKDLY=0
 I $D(@GLDLY) D
 .N N S N="" F  S N=$O(@GLDLY@(N)) Q:N=""  D
 ..I +$E(N,11,20)=HZMS K @GLDLY@(N) S OKDLY=1
 ;
 I $D(@GLDLA@(HZMS)) S OKDLY=1
 ;
 N DZ S DZ=$$^W4DZ 
 ;
 I $$HZM^W4MSL(HZMS),$$BONNEW^W4PRM,$$HZAFTPAY^W4PRM D
 .N PRN,ZMAN
 .S PRN="" F  S PRN=$O(@$$^W4GL("W4BON")@(DZ,PRN)) Q:PRN=""  D
 ..S ZMAN="" F  S ZMAN=$O(@$$^W4GL("W4BON")@(DZ,PRN,ZMAN)) Q:ZMAN=""  D
 ...I $D(@$$^W4GL("W4BON")@(DZ,PRN,ZMAN,HZMS)) S OKDLY=1
 ...K @$$^W4GL("W4BON")@(DZ,PRN,ZMAN,HZMS)
 .
 .I OKDLY D
 ..S @$$^W4ORD@(HZMS,"CLRSMB")=$H
 Q
 ;
MIN(SHAA) ; 
 Q SHAA*60+$P(SHAA,":",2) 
 ;
PWRLNKID(HZ) 
 N PWRLNKID
 S PWRLNKID=$G(@$$^W4ORD@(HZ,"HZMLAK")) 
 S PWRLNKID=$P(PWRLNKID,"PWRLNK:",2)
 Q PWRLNKID 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PWRLNK
W4PWRLNK ; [ 10.06.24 07:05 ] [ 07.05.24 15:58 ] [ 02.05.24 18:01 ] 
 Q
 ;
 ;
SBMBID(JB,ORD) ; --------- [4]
 N (JB,%ARG,%REM,ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$DEL^W4DEL(ORD) Q
 D PREP(ORD) ; --> FL
 ;
 ;;S URL="https://hooks.connectika.io/63b40f315d92e"
 ;;D SEND(FL,URL)
 S URL="https://hook.eu2.make.com/65mwi7civp1gff429hq4gk7g12ugftb5"
 D SEND(FL,URL)
 D ^W4HZ2PDF(ORD)
 D SEND(FILE1,URL)
 Q
 ;
 ;
SNDBID(JB,ORD); ------------- [2]
 N (JB,%ARG,%REM,ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PREP(ORD)
 ;
 ;;S URL="https://hooks.connectika.io/63b40daa9ad51"
 ;;D SEND(FL,URL)
 S URL="https://hook.eu2.make.com/tp4pso6sfcl7lp4imismayni8oex618h"
 D SEND(FL,URL)
 Q
 ;
 ;
DELBID(JB,ORD) ; --------------- [3]
 N (JB,%ARG,%REM,ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PREP(ORD)
 ;
 ;;S URL="https://hooks.connectika.io/63b40e5422bec"
 ;;D SEND(FL,URL)
 S URL="https://hook.eu2.make.com/45traka8b6ajq455ewaz2xkkboxhyiau"
 D SEND(FL,URL)
 Q
 ;
 ;
DELORD(JB,ORD) ; ------------------------ [5]
 N (JB,%ARG,%REM,ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PREP(ORD) ; --> FL
 ;
 ;;S URL="https://hooks.connectika.io/63b40f90bd58b"
 ;;D SEND(FL,URL)
 S URL="https://hook.eu2.make.com/69k8j8xkfdy1wnn31kmxkkvzfg1ml71v"
 D SEND(FL,URL)
 Q
 ;
 ;
UPD(JB,ORD) ; ------------------------ [5]
 N (JB,%ARG,%REM,ORD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;S ^AA("W4PWRLNK-UPD","TMPORD")=$G(@$$^W4TMPORD)
 ;;S ^AA("W4PWRLNK-UPD","ORDHDOLD")=$$GETP^%W1PRM("ORDHDOLD")
 ;;S ^AA("W4PWRLNK-UPD","W4ORD")=$G(@$$^W4ORD@(ORD))
 D PREP(ORD,1,1) ; --> FL
 ;;S ^AA("W4PWRLNK-UPD")=$G(OKUPD)
 I '$G(OKUPD) Q
 ;
 ;;S URL="https://hooks.connectika.io/6475e59ac93b8"
 ;;D SEND(FL,URL)
 S URL="https://hook.eu2.make.com/tdvcj7e61ldnzbojq6ybi6gwd66n69m5"
 D SEND(FL,URL)
 Q
 ;
 ;
SEND(FL,URL) ;
 I $G(FL)="" Q
 I $G(URL)="" Q
 N EXIST,SIZE
 ;;S EXIST=$$EXIST^%L1ZOS(FL)
 ;;S SIZE=$$SIZE^%L1ZOS(FL)
 ;;S ^AA("W4PWRLNK-SEND",FL,"EXIST")=EXIST
 ;;S ^AA("W4PWRLNK-SEND",FL,"SIZE")=SIZE
 ;;I 'EXIST!(SIZE<20) Q
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N FLOU,CMD
 S FLOU=FL_".ou"
 S CMD="curl -s -X POST "_URL_" -H ""Content-Type:application/json"" -d@"_FL_" -o "_FLOU
 ZSY CMD
 ;
 D PROT(CMD)
 ;
 N DZ S DZ=$$^W4DZ
 N IND S IND=$O(^W4PWRCMD(DZ,99999999),-1)+1
 S I=0
 O FLOU:(REWIND:READONLY) U FLOU 
 F  R A Q:$ZEOF  D
 .S I=I+1
 .S ^[$$^W3MAIN]W4PWRCMD(DZ,IND,"RESP",I)=A
 C FLOU
 S ER=$ZSY
 Q
 ;
 ;
PROT(CMD) ; 
 N DZ S DZ=$$^W4DZ
 N IND S IND=$O(^W4PWRCMD(DZ,99999999),-1)+1
 S ^[$$^W3MAIN]W4PWRCMD(DZ,IND)=CMD
 S ^[$$^W3MAIN]W4PWRCMD(DZ,IND,"ZSY")=$ZSY
 Q
 ;
 ;
PATH(STAM) ;
 Q "/tmp/" 
 ;
TIME ;
 S TIME=$ZD($H,"DD/MM/YYYY 24:60")
 Q 
 ;
 ; 
PREP(ORD,PR,UPD) ; 
 N (JB,%ARG,%REM,ORD,PR,UPD,FL,OKUPD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 ;
 S IND=$$INDFL(JB,ORD)
 ;
 S FL=$$PATH_"tmppwrlnk"_IND
 ;
 N PWRLNKID
 S PWRLNKID=$$HZMLAKNOM^W4HZMST(ORD)
 I PWRLNKID["PWRLNK:" S PWRLNKID=$P(PWRLNKID,"PWRLNK:",2)
 D TIME
 I $G(PR) S TIME=$ZD($H,"YYYY-MM-DD 24:60")
 S OKUPD=0
 I $G(UPD) D BDKUPD(ORD) Q:'$G(OKUPD)
 ;
 O FL:(NEWVERSION:REWIND) U FL
  W "{",!
   W """jsonrpc"": ""2.0"",",!
   W """date_time"": """_TIME_""",",!
   ;
   N TRHSHAA
   N DTERUA S DTERUA=$$^%L1DC($$TRH^W4HZMST(ORD),3)
   N SHAA S SHAA=$$SHAA^W4HZMST(ORD)
   I DTERUA'="",SHAA'="" D
   .S TRHSHAA=$ZD(DTERUA,"YYYY-MM-DD")_" "_SHAA
   .W """Event_datetime"": """_TRHSHAA_""",",!
   ;
   W """order_number"":"""_ORD_""",",! 
   W """cust_number"":"""_$$NMB^W4HZMST(ORD)_""",",! 
   W """order_total"":"_$J($$TSHL^W4HZMST(ORD),2,2)_",",! 
   W """Powerlink_ID"":"""_PWRLNKID_""" ",! 
   ;
   I $G(UPD) D
   .W ","
   .D BDKUPD(ORD)
   .I CITYNEW'=CITYOLD W """City"":"""_$TR($$INVH^%L1FRM(CITYNEW),TS0,TS1)_""",",!
   .I KTVNEW'=KTVOLD W """Address"":"""_$TR($$INVH^%L1FRM(KTVNEW),TS0,TS1)_""",",!
   .I KOMANEW'=KOMAOLD W """Koma"":"""_$TR($$INVH^%L1FRM(KOMANEW),TS0,TS1)_""",",!
   .I DIRANEW'=DIRAOLD W """Dira"":"""_$TR(DIRANEW,TS0,TS1)_""",",!
   .I BAITNEW'=BAITOLD W """House_num"":"""_$TR(BAITNEW,TS0,TS1)_""",",!
   .I CMNTNEW'=CMNTOLD W """Address_Info"":"""_$TR($$INVH^%L1FRM(CMNTNEW),TS0,TS1)_""",",!
   .D STAT^W4DHZMSL(ORD)
   .W """Status"":"""_STAT_"""",!
   ;
  W "}",!
 C FL
 ;
 ZSY "iconv -c -f cp1255 -t utf-8 "_FL_" -o "_FL_".json"
 S FL=FL_".json"
 ;
 N DZ S DZ=$$^W4DZ
 N IND S IND=$O(^W4PWRCMD(DZ,99999999),-1)+1
 ;
 S I=0
 O FL:(REWIND:READONLY) U FL 
 F  R A Q:$ZEOF  D
 .S I=I+1
 .S ^[$$^W3MAIN]W4PWRCMD(DZ,IND,"CONT",I)=A
 C FL
 Q
 ;
INDFL(JB,ORD) ;
 N DV,DT
 S DV=$$^W4MYDVN
 S DT=$$^W4DZ
 Q DV_"_"_JB_"_"_DT_"_"_ORD
 ;
BDKUPD(ORD)
 S OKUPD=0
 N STOLD S STOLD=$$GETP^%W1PRM("ORDHDOLD")
 S CITYOLD=$$SPA^%L1FRM($P(STOLD,"\",28))
 S CITYNEW=$$SPA^%L1FRM($$CITY^W3HZMST(JB))
 S KTVOLD=$$SPA^%L1FRM($P(STOLD,"\",3))
 S KTVNEW=$$SPA^%L1FRM($$STREET^W3HZMST(JB))
 S KOMAOLD=$$SPA^%L1FRM($P(STOLD,"\",13))
 S KOMANEW=$$SPA^%L1FRM($$FLOOR^W3HZMST(JB))
 S DIRAOLD=$$SPA^%L1FRM($P(STOLD,"\",14))
 S DIRANEW=$$SPA^%L1FRM($$FLAT^W3HZMST(JB))
 S BAITOLD=$$SPA^%L1FRM($P(STOLD,"\",15))
 S BAITNEW=$$SPA^%L1FRM($$HOME^W3HZMST(JB))
 S CMNTOLD=$$SPA^%L1FRM($P(STOLD,"\",7))
 S CMNTNEW=$$SPA^%L1FRM($$COMMENT^W3HZMST(JB))
 
 I CITYNEW'=CITYOLD S OKUPD=1
 I KTVNEW'=KTVOLD S OKUPD=OKUPD+2
 I KOMANEW'=KOMAOLD S OKUPD=OKUPD+4
 I DIRANEW'=DIRAOLD S OKUPD=OKUPD+8
 I BAITNEW'=BAITOLD S OKUPD=OKUPD+16
 I CMNTNEW'=CMNTOLD S OKUPD=OKUPD+32
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PWRPR
W4PWRPR(DAT,ORDPR,GLPR,NMPR) ; [ 05.08.25 02:54 ] [ 04.08.25 14:35 ] [ 19.09.24 12:24 ] 
 N (JB,%ARG,DAT,ORDPR,GLPR,NMPR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(GLPR)="" S GLPR="W4PWRCMD"
 I $G(NMPR)="" S NMPR="PWRLNKPROT"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 S DT=$$^%L1DC(DAT,3)
 W "<p dir="""_$$^%W1DIR_""" style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT(NMPR,$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 
 S GL=$$^W4GL(GLPR)
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .S A=$G(^(N))
 .I A'="" W "<br>"_A_"<br>",!
 .S N1="" F  S N1=$O(@GL@(DT,N,N1)) Q:N1=""  D
 ..S A=$G(^(N1))
 ..I A'="" W N1_" = "_$$RKV(A)_"<br>",!
 ..W "<br>",!
 ..S N2="" F  S N2=$O(@GL@(DT,N,N1,N2)) Q:N2=""  D
 ...S A=$G(^(N2)) 
 ...I $D(^(N2))#2 W N1_" : "_N2_" = "_$$RKV(A)_"<br>",!
 ...S N3="" F  S N3=$O(@GL@(DT,N,N1,N2,N3)) Q:N3=""  D
 ....S A1=$G(^(N3))
 ....I $D(^(N3))#2 W N1_","_N2_" : "_N3_" = "_$$RKV(N3)_"<br>",!
 W "</div>",!
 Q
 ;
 ;
RKV(VL) ; 
 S VL=$$U2D^%L1CNV(VL)
 N L,R S L=$P(VL,":"),R=$P(VL,":",2,20)
 I L["City"!(L["Address")!(L["Koma") D
 .S VL=L_":"_$$H2U^%L1FRM($$INVH^%L1FRM(R))
 Q VL 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4PY
W4PY ; [ 03.07.23 15:38 ] [ 02.02.20 11:01 ] [ 29.06.17 11:16 ] 
SPK(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",1)
 ;
NAME(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",3)
 ;
PAYMDAT(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",2)
 ;
NH(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",4)
 ;
DAT1(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",5)
 ;
DAT2(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",6)
 ;
TOPAY(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",7)
 ;
TOTPAID(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",8)
 ;
MZ(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",9),2,2)
 ;
SUGT(NOM) ;
 N SUGT
 S SUGT=$P($G(@$$GLPY(NOM)),"\",10)
 I SUGT="" S SUGT=1
 Q SUGT
 ;
COLPM(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",11)
 ;
ITRAPY(NOM) ;
 Q $$TOPAY(NOM)-$$SUMPAID(NOM)
 ;
SUMPAID(NOM) ;
 Q $$SUMTS(NOM)+$$MZ(NOM)
 ;
SUMCH(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",12),2,2)
 ;
SUMCA(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",13),2,2)
 ;
SUMB(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",14),2,2)
 ;
SUMKEVA(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",15),2,2)
 ;
NIKMAS(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",16),2,2)
 ;
AHNIK(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",17),2,2)
 ;
TOPNIK(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",18),2,2)
 ;
SHOTEF(NOM) ;
 Q $J($P($G(@$$GLPY(NOM)),"\",19),2,2)
 ;
TZ(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",20)
 ;
BANK(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",21)
 ;
BANK1(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",22)
 ;
SNIF(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",23)
 ;
HSBB(NOM) ;
 Q $P($G(@$$GLPY(NOM)),"\",24)
 ;
SUMTS(NOM) ;
 N SSUM,I,N S SSUM=0
 D
 .S N="" F  S N=$O(@$$GLPY(NOMPY)@("C",N)) Q:N=""  D
 ..S SSUM=SSUM+$G(^(N))
 Q SSUM
 ;
ASM(NOM) ;
 Q $G(@$$GLPY(NOM)@("ASM"))
 ;
SUMNIC(NOMPY) ;
 N SSUM,I,N S SSUM=0
 D
 .S N="" F  S N=$O(@$$GLPY(NOMPY)@("C",N)) Q:N=""  D
 ..S SSUM=SSUM+$$NICUY(NOMPAY,I)
 Q SSUM
 ;
SUM(NOM,I) ;
 Q $P($G(@$$GLPY(NOM)@("C",I)),"\",1)
 ;
NICUY(NOM,I) ;
 Q $P($G(@$$GLPY(NOM)@("C",I)),"\",2)
 ;
NETTO(NOM,I) ;
 Q $P($G(@$$GLPY(NOM)@("C",I)),"\",3)
 ;
CHECK(NOM,I) ;
 Q $P($G(@$$GLPY(NOM)@("C",I)),"\",4)
 ;
DATPR(NOM,I) ;
 Q $P($G(@$$GLPY(NOM)@("C",I)),"\",5)
 ;
PAD(NOM,I) ;
 Q $P($G(@$$GLPY(NOM)@("C",I)),"\",6)
 ;
PADDAT(NOM,I) ;
 Q $P($G(@$$GLPY(NOM)@("C",I)),"\",7)
 ;
 ;
FIRST(NOM) ;
 Q $P($G(@$$GLPY(NOM)@("C",1)),"\",4)
 ;
FIRSTDAT(NOM) ;
 Q $P($G(@$$GLPY(NOM)@("C",1)),"\",5)
 ;
GLPY(NOM) ;
 Q $$^W4GL("W4TSHL")_"("""_NOM_""")"
 
 
 
 

W4PZLTM
W4PZLTM(SH) ; [ 25.10.18 17:56 ] [ 15.05.18 10:23 ] [ 18.12.17 09:05 ] 
 N (JB,%ARG,SH)
 S TM=$$CMNST^W3HZMST(JB,SH)
 S TOSHAAHZ=$$TIME(TM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"
  W $$^%W1DICT("TYPEORDERTIME")
 W "</span><br><br>",!
 D SHAA
 W "<br><br><br>",!
 I SH="NEW" S SH=$O(@$$^W4TMPORD@(99999),-1)
 S %ARG("W4SBM")=SH
 D ^W4BTN("SUBMIT","Submit('"_SH_"')","green")
 W "<br><br>",!
 W "</div>",!
 Q
 ;
SHAA
 W "<select style=""background-color:yellow"" "
 W " id=""TOSHAAmnid"" "
 W " >"
 ;
 F I=0:5:55 D
 .W "<option value="""_I_""""
 .I +I=+$P(TOSHAAHZ,":",2) W " selected=""selected"" "
 .W " >"_$TR($J(I,2)," ",0)_"</option>",!
 W "</select>",!
 ;
 W "<select style=""background-color:yellow"" "
 W " id=""TOSHAAhrid"" "
 W " >"
 N I F I=0:1:23 D
 .W "<option value="""_I_""" "
 .I +I=+TOSHAAHZ W " selected=""selected"" "
 .W ">"
 . W $TR($J(I,2)," ",0)
 .W "</option>",!
 W "</select>",!
 ;
 Q
 ;
 ;
SET(PRM) ;
 N (JB,%ARG,PRM)
 S SH=$P(PRM,";")
 S TM=$P(PRM,";",2)
 I TM'[":" Q 0
 S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J($P(TM,":",2),2)," ",0)
 I $$PLUSTIME^W4PRM S TM=TM_"-"_$$SHIFTSHAA^W4PIZUL(TM)
 S $P(@$$^W4TMPORD@(SH),"~",7)=TM_" gewll drbd onf"
 Q 1
 ;
TIME(TX) ; 
 N TM,J S TM="",J=0
TIMEJ S J=J+1 I J>$L(TX) G TIMEE
 I $E(TX,J)'?1N G TIMEJ
 I $E(TX,J,255)?1N.N1":"2N.E D  G TIMEE
 .S TM=$E(TX,J,J+4)
 .S TM=$TR($J($P(TM,":"),2)," ",0)_":"_$TR($J(+$P(TM,":",2),2)," ",0)
 E  G TIMEJ
TIMEE Q TM
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4QHMK
W4QHMK(D1,D2) ; [ 18.07.21 13:27 ] [ 12.04.19 14:02 ] [ 18.09.17 12:50 ] 
 I '$D(D2) S D2=D1
 I $L(D1)>5 S D1=$$^%L1DC(D1,3)
 I $L(D2)>5 S D2=$$^%L1DC(D2,3)
 ;
 N N,DT,I S I=0
 F DT=D1:1:D2 D
 .S N="" F  S N=$O(@$$^W4GL("P1HBI")@(DT,N)) Q:N=""  D
 ..N A S A=$G(@$$^W4GL("P1HB")@(N))
 ..N HZ S HZ=$P(A,"\")
 ..I $G(P1X("SHUL")),$$NMB^W4HZMST(HZ)'=P1X("SHUL") Q
 ..I $G(P1X("PART")),$$POS^W4HZMST(HZ)'=P1X("PART") Q
 ..I N>0,HZ>0,$$TSHL^W4HZMST(HZ) S I=I+1
 Q I
 
 
 
 

W4QNDEF
W4QNDEF(PARMAIN,CD) ; [ 15.08.19 12:44 ] [ 
 N QNDEF S QNDEF=$G(@$$^W4GL("QNDEF")@(PARMAIN,CD))
 I QNDEF'="" Q QNDEF
 N SET S SET=$$^W4SET(PARMAIN,CD) I 'SET Q ""
 Q $G(@$$^W4GL("QNSET")@(SET,CD))
 
 
 

W4QNORD
W4QNORD(HZ) ; [ 18.08.23 11:13 ] [ 
 N TS S TS=$$TSHL^W4HZMST(HZ)
 N QN
 D
 .S QN=1
 .I $$DEL^W4DEL(HZ) S QN=0 Q
 .I '$$DEL^W4DEL(HZ),TS<-.9 S QN=0 Q
 .I $$^W4PIZUL(HZ) S QN=2 Q
 ; 
 Q QN
 
 

W4QNR
W4QNR(QN) ; [ 24.11.18 15:11 ] [ 23.11.18 12:23 ] [ 
 I $G(QN)="" Q ""
 I QN'["*" Q +QN
 N QN1,QN2,QN3
 S QN1=$P(QN,"*")
 S QN2=$P(QN,"*",2) I 'QN2 S QN2=1
 S QN3=$P(QN,"*",3) I 'QN3 S QN3=1
 N QNR S QNR=QN1*QN2*QN3
 I QN1<0!(QN2<0)!(QN3<0),QNR>0 S QNR=-QNR
 Q QNR

W4QUE
W4QUE ; [ 06.08.26 13:47 ] [ 06.08.25 08:36 ] [ 27.05.25 13:26 ] 
 N (JB,%ARG,%REM)
 S DZ=$$^W4DZ
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 W "<p>&nbsp;</p>",! 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W3CSS_""">",!
  ;
  I $$QUESMS D
  . W "<button style=""font-size:"_$$^W3FSZ(20)_";color:red;font-weight:bold;padding:8px"" "
  .  W $$^W4TOUCH_"="_$S($$AGAIN:"Back2Normal()",1:"SendAgain()")
  . W ">"
  .  W $$^%W1DICT($S($$AGAIN:"BACK2NORMAL",1:"SENDAGAIN"))
  . W "</button>",! 
  . W $$NBSP^%L1FRM(10)
  . W "<button style=""font-size:"_$$^W3FSZ(20)_";color:green;font-weight:bold;padding:8px"" "
  .  W $$^W4TOUCH_"=ShowTel('"_$$SHOWTEL_"')"
  . W ">"
  .  W $$^%W1DICT($S($$SHOWTEL:"HIDETEL",1:"SHOWTEL"))
  . W "</button>",! 
  . W "<p>&nbsp;</p>",!
  ;
  I $$AGAIN D SENDAGAIN W "</div>",! Q
  ;
  S WD=60 I $$^W4TABLET S WD=80
  W "<table id=""TblQue"" border=""0"" width="""_WD_"%"" cellpadding=""10"" cellspacing=""0"" "
   W " style=""text-align:center;font-size:"_$$^W3FSZ(22)_";background-color:white;"_$$FONTFM^W3CSS_""" "
  W ">",!
  S SP=2
  W "<tr>"
   W "<th>"_$$^%W1DICT("ORDER")_"<br>ORDER </th>"
   W "<th>"_$$^%W1DICT("TIME")_"<br>TIME</th>"
   ;
   I $$QUESMS D
   .W "<th>"_$$^%W1DICT("NAME")_"<br>NAME</th>"
   ;
   W "<th>"_$$^%W1DICT("STATUS")_"<br>STATUS</th>"
  W "</tr>",!
  ;
  S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  S MSPYOM=$G(^(N))  I MSPYOM D
  .I $G(@$$^W4GL("W4ORDRDY")@(DZ,MSPYOM)) Q
  .I $$DEL^W4DEL(N) Q
  .I $$QUESMS,$$NOQUE(N) Q
  .W "<tr id=""tr"_MSPYOM_""" "
  .I $$NOQUE(N) W " style=""background-color:red;color:yellow"" "
  .W ">"
  . W "<td width=""30%"" style=""cursor:pointer;font-weight:bold;font-size:"_$$^W3FSZ(20)
  . I $$GETP^%W1PRM("QUEORD"),N=$$GETP^%W1PRM("QUEORD") D
  . .W ";border:2px solid brown"
  . W """ "
  . W $$^W4TOUCH_"=""ShowOrd('"_N_"')"" "
  . W ">"
  . N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(N)
  . I '$$TAIMAN^W4PRM!'HZMLAK W MSPYOM
  . I $$TAIMAN^W4PRM,HZMLAK D
  ..N KSKN S KSKN=$E(HZMLAK,$L(HZMLAK)-2,$L(HZMLAK))
  ..W " <span style=""color:"_$S($$NOQUE(N):"yellow",1:"green")_";font-size:"_$$^W3FSZ(24)_""" >"_KSKN_" "_$$^%W1DICT("KIOSK")_"</span>"
  . W "</td>",!
  . 
  . S HD=$G(@$$^W4ORD@(N))
  . S DATCB=$$DATCB^W4HZMST(N) 
  . S SHAA=$P(DATCB,"  ",2)
  . W "<td style=""color:black;font-size:"_$$^W3FSZ(16)_""" >"_SHAA_"</td>",!
  .
  .I $$QUESMS D
  ..W "<td>"
  .. W $$H2U^%L1FRM($$MAZMIN^W4HZMST(N)) 
  .. I $$SHOWTEL D SHOWORDTEL(N)
  ..W "</td>",!
  .
  . W "<td>"
  .  I $$QUESMS D
  .  .D BTN(N,MSPYOM,1)
  .  .W $$NBSP^%L1FRM(2)
  .  D BTN(N,MSPYOM,0)
  . W "</td>",!
  .W "</tr>",! 
  .S @VRM@(MSPYOM)=""
  W "</table>",!
 W "</div>",!
 Q
 ;
SETREADY(PRM) ;
 N DZ,MSPYOM,PELE,ORD,AGAIN
 S DZ=$P(PRM,";") 
 S MSPYOM=$P(PRM,";",2)
 S PELE=$P(PRM,";",3)
 S ORD=$P(PRM,";",4)
 S AGAIN=$P(PRM,";",5)
 I 'DZ Q "NODZ"
 I 'MSPYOM Q "NOMSPYOM"
 S @$$^W4GL("W4ORDRDY")@(DZ,MSPYOM)=$H_"\"_PELE_"\"_ORD_"\"_AGAIN
 I '$$WRONGPELE(PELE) D SNDSMS(PELE)
 Q 1
 ;
RDYLIST() ;
 N DZ,FL S DZ=$$^W4DZ 
 N VRM S VRM=$$^W4MAIN("VRM")
 N ST S ST=""
 N N S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .I $D(@$$^W4GL("W4ORDRDY")@(DZ,N)) S ST=ST_N_";"
 Q ST 
 ;
NOQUE(ORD) ;
 N OK S OK=1
 I $G(@$$^W4PRM@("RTSRSMS")) D  Q OK  ; -- ROTISARY
 .I $$HZM^W4MSL(ORD),$$MKRDLV^W4HZMST(ORD)=76!($$MKRDLV^W4HZMST(ORD)=77) S OK=0 Q
 .I $$HZM^W4MSD(ORD) S OK=0 Q
 ;
 N CD,N,ST S N="" F  S N=$O(@$$^W4ORD@(ORD,N)) Q:N=""  I N D  Q:'OK
 .S ST=$G(^(N)) 
 .S CD=$P(ST,"\")
 .I '$$QUESMS,CD,'$G(@$$^W4GL("W4NOQUE")@(CD)) S OK=0 
 .I $$QUESMS,CD,$$PRINTIG^W4DEFPRN(CD) S OK=0
ENOQUE Q OK
 ;
 ;
BTN(ORD,MSPYOM,SMS) ;
 N PELE,TX
 S SMS=+$G(SMS)
 S PELE=$$PELE(ORD)
 ;
 I '$G(SMS),$L(PELE)>9 S PELE="!"_PELE
 ;
 W "<button id=""btn"_MSPYOM_"_"_SMS_""" "
    W "style="""
    I '$G(SMS) W "color:darkgreen;"
    I $G(SMS) D
    .I '$$WRONGPELE(PELE) D
    .. W "background-color:darkgreen;color:white;font-weight:bold;" Q
    .W "color:lightgrey;font-weight:bold;" Q
     ;
    W "font-size:"_$$^W3FSZ(18)_";padding:8px"" "
    I $G(SMS),$$WRONGPELE(PELE) W "disabled=""disabled"" "
    W $$^W4TOUCH_"=""ClickReady('"_MSPYOM_"','"_DZ_"','"_PELE_"','"_ORD_"')"" "
   W ">" 
     S TX="NEXT" 
     I SMS S TX="SMS"
     W $$^%W1DICT(TX)
 W "</button>",!
 Q
 ;
 ;
QUESMS(STAM) ; 
 I $G(%ARG("QUESMS")) Q 1
 I $$QUESMS^W4PRM Q 1
 Q 0
 ;
WRONGPELE(PELE) 
 S PELE=$TR(PELE," -",PELE) 
 I $L(PELE)<10 Q 1
 I $TR(PELE,"+","")'?1N.N Q 1 
 I $E(PELE,1,4)'="+972",$E(PELE,1,2)'="05" Q 1
 Q 0 
 ;
SNDSMS(PELE) ; 
 N TXT,PRM
 S TXT=$G(@$$^W4PRM@("SMSCONT"))Q:TXT=""
 S TO=PELE
 S PRM=""
 D SNDSMS^W4SNDSMS(TO,TXT,PRM) ;
 Q 
 ;
 ;
SENDAGAIN ; 
 N (JB,%ARG,%REM)
  W "<table id=""TblAgain"" border=""0"" width=""60%"" cellpadding=""10"" cellspacing=""0"" "
   W " style=""text-align:center;font-size:"_$$^W3FSZ(22)_";background-color:white;"_$$FONTFM^W3CSS_""" "
  W ">",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("ORDER")_"<br>ORDER </th>"
   W "<th>"_$$^%W1DICT("TIME")_"<br>TIME</th>"
   W "<th>"_$$^%W1DICT("NAME")_"<br>NAME</th>"
   W "<th>"_$$^%W1DICT("STATUS")_"<br>STATUS</th>"
  W "</tr>",!
  ;
  S DZ=$$^W4DZ
  S GL=$$^W4GL("W4ORDRDY")_"("_DZ_")"
  S SMS=1
  ;
  S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S A=$G(^(N)) S PELE=$P(A,"\",2) Q:PELE=""  Q:$E(PELE)'="!"
  .S PELE=$E(PELE,2,$L(PELE))
  .S PELE=$TR(PELE,"- ","")
  .S AGAIN=$P(A,"\",4) Q:AGAIN
  .S MSPYOM=N
  .S HZM=$P(A,"\",3) Q:'HZM
  .W "<tr id=""tr"_MSPYOM_""" >"
  . W "<td width=""30%"" style=""cursor:pointer"
  . I $$GETP^%W1PRM("QUEORD"),N=$$GETP^%W1PRM("QUEORD") D
  . .W ";border:2px solid brown"
  . W """ "
  . W $$^W4TOUCH_"=""ShowOrd('"_HZM_"')"" "
  . W ">"_MSPYOM_"</td>",!
  . 
  . S HD=$G(@$$^W4ORD@(HZM))
  . S DATCB=$$DATCB^W4HZMST(HZM) 
  . S SHAA=$P(DATCB,"  ",2)
  . W "<td style=""color:grey"" >"_SHAA_"</td>",!
  .
  .W "<td>"
  . W $$H2U^%L1FRM($$MAZMIN^W4HZMST(HZM)) 
  . I $$SHOWTEL D SHOWORDTEL(HZM)
  .W "</td>",!
  .
  . W "<td> "
  .  W "<button id=""btn"_MSPYOM_"_"_SMS_""" "
  .  W "style=""color:green;font-weight:bold;cursor:pointer;"
  .  W "font-size:"_$$^W3FSZ(18)_";padding:8px"" "
  .  W $$^W4TOUCH_"=""ClickReady('"_MSPYOM_"','"_DZ_"','"_PELE_"','"_HZM_"','1')"" "
  . W ">" 
  .   W $$^%W1DICT("SENDAGAIN")
  .  W "</button>",!
  . W "</td>"
  .W "</tr>",!
  W "</table>",! 
 Q
 ;
AGAIN() ;
 Q +$G(%ARG("AGAIN"))
 ;
SHOWTEL() ;
 Q +$G(%ARG("SHOWTEL"))
 ;
PELE(ORD) ; 
 S PELE=$$SPA^%L1FRM($G(@$$^W4ORD@(ORD,"MZMNPHONE")))
 S PELE=$TR(PELE," -","") 
 I 'PELE S PELE=$$PELE^W4HZMST(ORD)
 I 'PELE S PELE=$$TELB^W4HZMST(ORD)
 I 'PELE S PELE=$$LKHN^W4HZMST(ORD)
 Q PELE
 ;
 ; 
SHOWORDTEL(N) ;
 W "<br>",! 
 W "<span style=""color:grey;font-size:"_$$^W3FSZ(16)_""">"_$$PELE(N)_"</span>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4QUE0
W4QUE ; [ 06.08.25 08:34 ] [ 21.07.25 04:33 ] [ 27.05.25 13:26 ] 
 N (JB,%ARG,%REM)
 S DZ=$$^W4DZ
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 W "<p>&nbsp;</p>",! 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style="""_$$FONTFM^W3CSS_""">",!
  ;
  I $$QUESMS D
  . W "<button style=""font-size:"_$$^W3FSZ(20)_";color:red;font-weight:bold;padding:8px"" "
  .  W $$^W4TOUCH_"="_$S($$AGAIN:"Back2Normal()",1:"SendAgain()")
  . W ">"
  .  W $$^%W1DICT($S($$AGAIN:"BACK2NORMAL",1:"SENDAGAIN"))
  . W "</button>",! 
  . W $$NBSP^%L1FRM(10)
  . W "<button style=""font-size:"_$$^W3FSZ(20)_";color:green;font-weight:bold;padding:8px"" "
  .  W $$^W4TOUCH_"=ShowTel('"_$$SHOWTEL_"')"
  . W ">"
  .  W $$^%W1DICT($S($$SHOWTEL:"HIDETEL",1:"SHOWTEL"))
  . W "</button>",! 
  . W "<p>&nbsp;</p>",!
  ;
  I $$AGAIN D SENDAGAIN W "</div>",! Q
  ;
  S WD=60 I $$^W4TABLET S WD=80
  W "<table id=""TblQue"" border=""0"" width="""_WD_"%"" cellpadding=""10"" cellspacing=""0"" "
   W " style=""text-align:center;font-size:"_$$^W3FSZ(22)_";background-color:white;"_$$FONTFM^W3CSS_""" "
  W ">",!
  S SP=2
  W "<tr>"
   W "<th>"_$$^%W1DICT("ORDER")_"<br>ORDER </th>"
   W "<th>"_$$^%W1DICT("TIME")_"<br>TIME</th>"
   ;
   I $$QUESMS D
   .W "<th>"_$$^%W1DICT("NAME")_"<br>NAME</th>"
   ;
   W "<th>"_$$^%W1DICT("STATUS")_"<br>STATUS</th>"
  W "</tr>",!
  ;
  S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  S MSPYOM=$G(^(N))  I MSPYOM D
  .I $G(@$$^W4GL("W4ORDRDY")@(DZ,MSPYOM)) Q
  .I $$DEL^W4DEL(N) Q
  .I $$QUESMS,$$NOQUE(N) Q
  .W "<tr id=""tr"_MSPYOM_""" "
  .I $$NOQUE(N) W " style=""background-color:red;color:yellow"" "
  .W ">"
  . W "<td width=""30%"" style=""cursor:pointer;font-weight:bold;font-size:"_$$^W3FSZ(20)
  . I $$GETP^%W1PRM("QUEORD"),N=$$GETP^%W1PRM("QUEORD") D
  . .W ";border:2px solid brown"
  . W """ "
  . W $$^W4TOUCH_"=""ShowOrd('"_N_"')"" "
  . W ">"
  . N HZMLAK S HZMLAK=$$HZMLAKNOM^W4HZMST(N)
  . I '$$TAIMAN^W4PRM!'HZMLAK W MSPYOM
  . I $$TAIMAN^W4PRM,HZMLAK D
  ..W " <span style=""color:"_$S($$NOQUE(N):"yellow",1:"green")_";font-size:"_$$^W3FSZ(24)_""" >"_HZMLAK_" "_$$^%W1DICT("KIOSK")_"</span>"
  . W "</td>",!
  . 
  . S HD=$G(@$$^W4ORD@(N))
  . S DATCB=$$DATCB^W4HZMST(N) 
  . S SHAA=$P(DATCB,"  ",2)
  . W "<td style=""color:black;font-size:"_$$^W3FSZ(16)_""" >"_SHAA_"</td>",!
  .
  .I $$QUESMS D
  ..W "<td>"
  .. W $$H2U^%L1FRM($$MAZMIN^W4HZMST(N)) 
  .. I $$SHOWTEL D SHOWORDTEL(N)
  ..W "</td>",!
  .
  . W "<td>"
  .  I $$QUESMS D
  .  .D BTN(N,MSPYOM,1)
  .  .W $$NBSP^%L1FRM(2)
  .  D BTN(N,MSPYOM,0)
  . W "</td>",!
  .W "</tr>",! 
  .S @VRM@(MSPYOM)=""
  W "</table>",!
 W "</div>",!
 Q
 ;
SETREADY(PRM) ;
 N DZ,MSPYOM,PELE,ORD,AGAIN
 S DZ=$P(PRM,";") 
 S MSPYOM=$P(PRM,";",2)
 S PELE=$P(PRM,";",3)
 S ORD=$P(PRM,";",4)
 S AGAIN=$P(PRM,";",5)
 I 'DZ Q "NODZ"
 I 'MSPYOM Q "NOMSPYOM"
 S @$$^W4GL("W4ORDRDY")@(DZ,MSPYOM)=$H_"\"_PELE_"\"_ORD_"\"_AGAIN
 I '$$WRONGPELE(PELE) D SNDSMS(PELE)
 Q 1
 ;
RDYLIST() ;
 N DZ,FL S DZ=$$^W4DZ 
 N VRM S VRM=$$^W4MAIN("VRM")
 N ST S ST=""
 N N S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .I $D(@$$^W4GL("W4ORDRDY")@(DZ,N)) S ST=ST_N_";"
 Q ST 
 ;
NOQUE(ORD) ;
 N OK S OK=1
 I $G(@$$^W4PRM@("RTSRSMS")) D  Q OK  ; -- ROTISARY
 .I $$HZM^W4MSL(ORD),$$MKRDLV^W4HZMST(ORD)=76!($$MKRDLV^W4HZMST(ORD)=77) S OK=0 Q
 .I $$HZM^W4MSD(ORD) S OK=0 Q
 ;
 N CD,N,ST S N="" F  S N=$O(@$$^W4ORD@(ORD,N)) Q:N=""  I N D  Q:'OK
 .S ST=$G(^(N)) 
 .S CD=$P(ST,"\")
 .I '$$QUESMS,CD,'$G(@$$^W4GL("W4NOQUE")@(CD)) S OK=0 
 .I $$QUESMS,CD,$$PRINTIG^W4DEFPRN(CD) S OK=0
ENOQUE Q OK
 ;
 ;
BTN(ORD,MSPYOM,SMS) ;
 N PELE,TX
 S SMS=+$G(SMS)
 S PELE=$$PELE(ORD)
 ;
 I '$G(SMS),$L(PELE)>9 S PELE="!"_PELE
 ;
 W "<button id=""btn"_MSPYOM_"_"_SMS_""" "
    W "style="""
    I '$G(SMS) W "color:darkgreen;"
    I $G(SMS) D
    .I '$$WRONGPELE(PELE) D
    .. W "background-color:darkgreen;color:white;font-weight:bold;" Q
    .W "color:lightgrey;font-weight:bold;" Q
     ;
    W "font-size:"_$$^W3FSZ(18)_";padding:8px"" "
    I $G(SMS),$$WRONGPELE(PELE) W "disabled=""disabled"" "
    W $$^W4TOUCH_"=""ClickReady('"_MSPYOM_"','"_DZ_"','"_PELE_"','"_ORD_"')"" "
   W ">" 
     S TX="NEXT" 
     I SMS S TX="SMS"
     W $$^%W1DICT(TX)
 W "</button>",!
 Q
 ;
 ;
QUESMS(STAM) ; 
 I $G(%ARG("QUESMS")) Q 1
 I $$QUESMS^W4PRM Q 1
 Q 0
 ;
WRONGPELE(PELE) 
 S PELE=$TR(PELE," -",PELE) 
 I $L(PELE)<10 Q 1
 I $TR(PELE,"+","")'?1N.N Q 1 
 I $E(PELE,1,4)'="+972",$E(PELE,1,2)'="05" Q 1
 Q 0 
 ;
SNDSMS(PELE) ; 
 N TXT,PRM
 S TXT=$G(@$$^W4PRM@("SMSCONT"))
 S TO=PELE
 S PRM=""
 D SNDSMS^W4SNDSMS(TO,TXT,PRM) ;
 Q 
 ;
 ;
SENDAGAIN ; 
 N (JB,%ARG,%REM)
  W "<table id=""TblAgain"" border=""0"" width=""60%"" cellpadding=""10"" cellspacing=""0"" "
   W " style=""text-align:center;font-size:"_$$^W3FSZ(22)_";background-color:white;"_$$FONTFM^W3CSS_""" "
  W ">",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("ORDER")_"<br>ORDER </th>"
   W "<th>"_$$^%W1DICT("TIME")_"<br>TIME</th>"
   W "<th>"_$$^%W1DICT("NAME")_"<br>NAME</th>"
   W "<th>"_$$^%W1DICT("STATUS")_"<br>STATUS</th>"
  W "</tr>",!
  ;
  S DZ=$$^W4DZ
  S GL=$$^W4GL("W4ORDRDY")_"("_DZ_")"
  S SMS=1
  ;
  S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S A=$G(^(N)) S PELE=$P(A,"\",2) Q:PELE=""  Q:$E(PELE)'="!"
  .S PELE=$E(PELE,2,$L(PELE))
  .S PELE=$TR(PELE,"- ","")
  .S AGAIN=$P(A,"\",4) Q:AGAIN
  .S MSPYOM=N
  .S HZM=$P(A,"\",3) Q:'HZM
  .W "<tr id=""tr"_MSPYOM_""" >"
  . W "<td width=""30%"" style=""cursor:pointer"
  . I $$GETP^%W1PRM("QUEORD"),N=$$GETP^%W1PRM("QUEORD") D
  . .W ";border:2px solid brown"
  . W """ "
  . W $$^W4TOUCH_"=""ShowOrd('"_HZM_"')"" "
  . W ">"_MSPYOM_"</td>",!
  . 
  . S HD=$G(@$$^W4ORD@(HZM))
  . S DATCB=$$DATCB^W4HZMST(HZM) 
  . S SHAA=$P(DATCB,"  ",2)
  . W "<td style=""color:grey"" >"_SHAA_"</td>",!
  .
  .W "<td>"
  . W $$H2U^%L1FRM($$MAZMIN^W4HZMST(HZM)) 
  . I $$SHOWTEL D SHOWORDTEL(HZM)
  .W "</td>",!
  .
  . W "<td> "
  .  W "<button id=""btn"_MSPYOM_"_"_SMS_""" "
  .  W "style=""color:green;font-weight:bold;cursor:pointer;"
  .  W "font-size:"_$$^W3FSZ(18)_";padding:8px"" "
  .  W $$^W4TOUCH_"=""ClickReady('"_MSPYOM_"','"_DZ_"','"_PELE_"','"_HZM_"','1')"" "
  . W ">" 
  .   W $$^%W1DICT("SENDAGAIN")
  .  W "</button>",!
  . W "</td>"
  .W "</tr>",!
  W "</table>",! 
 Q
 ;
AGAIN() ;
 Q +$G(%ARG("AGAIN"))
 ;
SHOWTEL() ;
 Q +$G(%ARG("SHOWTEL"))
 ;
PELE(ORD) ; 
 S PELE=$$SPA^%L1FRM($G(@$$^W4ORD@(ORD,"MZMNPHONE")))
 S PELE=$TR(PELE," -","") 
 I 'PELE S PELE=$$PELE^W4HZMST(ORD)
 I 'PELE S PELE=$$TELB^W4HZMST(ORD)
 I 'PELE S PELE=$$LKHN^W4HZMST(ORD)
 Q PELE
 ;
 ; 
SHOWORDTEL(N) ;
 W "<br>",! 
 W "<span style=""color:grey;font-size:"_$$^W3FSZ(16)_""">"_$$PELE(N)_"</span>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4QUEPRN
W4QUEPRN ; [ 15.08.23 10:06 ] [ 19.06.23 12:21 ] [ 27.04.23 19:16 ] 
 N (JB,%ARG,HZM) 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S GL=$$^W4GL("W4DLYPRN")
 S GL1=$$^W4GL("W4DLYPRA")
CYC ; 
 I $$^%L1FLAG($$^W4flag_"(""QUEPRN"")") Q  ;
 I $D(@$$^W4STLOOP@("PC")) K @$$^W4flag@("QUEPRN") Q  ; -- LEHAFSIK ; 
 S DT=+$H
 S SEC=$P($H,",",2)
 S TMNOW=DT_$TR($J(SEC,5)," ",0)
 ;
 S PER=200
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N CONT S CONT=$G(^(N))
 .S DIF=$$DIF^%L1TIME(TMNOW,$E(N,1,10))
 .S JB1=$P(+$E(N,21,30),".")
 .S HZM=+$E(N,11,20)
 .;
 .I DIF>-1,DIF<PER D
 ..I $G(@$$^W4ORD@(HZM,"CLRSMB")) D
 ...D CLRSMBORD($$^W4ORD_"("_HZM_")")
 ...D CLRSMBORD($$^W4ORD_"("_HZM_",""PC1"")")
 ...K @$$^W4ORD@(HZM,"CLRSMB")
 ..;
 ..D TV^W4HZM(HZM,JB1_".1")
 ..M @GL1@(HZM,N)=@GL@(N)
 ..K @GL@(N)
 .I DIF>(PER-1) K @GL@(N)
 ;
 H 2 G CYC
 ;
 ; 
CLRSMBORD(GLORD) 
 N N1,N2,N3 
 N NRZ S NRZ=10 
 S N1="" F  S N1=$O(@GLORD@(N1)) Q:N1=""  I N1 D 
 .I $P(^(N1),"\",NRZ)["@@" S $P(^(N1),"\",NRZ)="" 
 .S N2="" F  S N2=$O(@GLORD@(N1,N2)) Q:N2=""  I N2 D 
 ..I $P(^(N2),"\",NRZ)["@@" S $P(^(N2),"\",NRZ)="" 
 ..S N3="" F  S N3=$O(@GLORD@(N1,N2,N3)) Q:N3=""  I N3 D 
 ...I $P(^(N3),"\",NRZ)["@@" S $P(^(N3),"\",NRZ)="" 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4QUEYOM
W4QUEYOM ; [ 16.12.23 06:10 ] [ 
 N (JB,%ARG,%REM)
 S DZ=$$^W4DZ
 W "<p></p>",! 
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<table border=""1"" cellpadding=""10"" cellspacing=""1"" "
   W " style=""font-size:"_$$^W3FSZ(22)_""" "
  W ">",!
  S N="" F  S N=%O(@$$^W4REF@(DZ,N)) Q:N=""  S MSPYOM=$G(^(N))  I MSPYOM D
  .I $G(@$$^W4GL("W4ORDRDY")@(DZ,N)) Q
  .W "<tr>"
  . W "<td>"_MSPYOM_"</td>"
  . 
  . S HD=$G(@$$^W4ORD@(N))
  . S DATCB=$$DATCB^W4HZMST(N) 
  . S SHAA=$P(DATCB,"  ",2)
  . W "<td>"_SHAA_"</td>"
  .
  . W "<td>"
  .  W "<button "
  .   W " style=""font-size:"_$$^W3FSZ(18)_";padding:8px"" "
  .   W $$^W4TOUCH_"=""ClickReady('"_N_"')"" "
  .  W ">" 
  .    W $$^%W1DICT("READY")
  .  W "</button>",!
  . W "</td>"
  .W "</tr>",! 
  W "</table>",!
 W "</div>",!
 Q
 
 

W4RCA
W4RCA(HZM,IND) ; [ 25.06.22 11:41 ] [ 24.06.22 06:28 ] [ 14.05.22 15:31 ] 
 ; -- TASHLUM B K-A LE HAZMANA ( LE KABALA - W4PAYCBA )
 ; ------------------------------------------------------
 N (HZM,IND,JB,%ARG,%REM)
 S JB=1
 S ST=^P1HZ(HZM,"CB","V",IND)
 S SUMCA=$P(ST,"*",7)
 S PAY=SUMCA*100
 S UID=$G(^P1HZ(HZM,"EMV",IND,"OUT","UID"))
 I UID="" Q "UIDNOTFOUND"
 S FLOU=$$GETFLOU(HZM,UID)
 I FLOU="" Q "FLOUNOTFOUND" 
 ;
 S STRIN=""
 S STPRM=""
 S $E(STOUT,61,62)="01"
 S $E(STOUT,63)=1
 S $E(STOUT,36,43)=$$TR(PAY,8)
 S $E(STOUT,52,59)="00000000"
 S $E(STOUT,78,85)="00000000"
 S $E(STOUT,86,93)="00000000"
 S $E(STOUT,94,95)="00"
 ;
 D ^W4IN
 D GLORD
 S %REM=$$GET^%W1PRM("REM")
 ;
 S VIZ=""
 ;
TV ;
 S VUID=$G(^P1HZ(HZM,"EMV",IND,"OUT","VUID"))
 I VUID="" Q "VUIDNOTFOUND"
 ;
 S INDL0=$G(@$$^W4GL("TRANL"))
 S INDL=$O(@$$^W4GL("TRANL")@(999999),-1)
 S:INDL<1 INDL=1
 I INDL<INDL0 S INDL=INDL0
 ;
 S GL=$$^W4GL("TRANL")_"("_INDL_",901)"
 S ID=$O(@GL@(99999),-1)+1
 S ID=$TR($J(INDL,5)," ",0)_$TR($J(ID,5)," ",0)
 ;
 S A=$$OU^W4EMV3(FLOU)
 ;
 S ^LV("W4PAYCA-INOUT")=A
 S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 S UID=$P(A,"~",6)
 ;
 ;
 I STA["-" S STA="-"_$P(STA,"-",2)
 ;
 I $$^W4AUTHCD(STA),'$$EMV^W4PRM D
 .N TEL,MSG,VTS S VTS=$E(SOUT,25) Q:'VTS
 .S TEL=$$TELCA^W4OPT(VTS)
 .S $P(A,"~",3)=TEL
 ;
 I STA'="000" D  Q ER_";"_STA_";"_TRAN_";"_$$CLWEB^%L1FRM($P(A,"~",3))_";~"_$G(STRIN)_"~"_$G(SOUT)
 .N STRIN S STRIN=$$GETP^%W1PRM("STRIN") Q:$L(STRIN)=0
 .K @$$^W4GL("W4STRIN")@(HZM,"IN",STRIN)
 .D KILL^%W1PRM("STRIN")
 ;
 D
 .N IND S IND=$O(@$$^W4GIO@(99999999),-1)+1
 .S @$$^W4GIO@(IND,"IN")=STRIN
 .S @$$^W4GIO@(IND,"OU")=A
 ;
 S S21=""
 S TRAN("IN")=STRIN
 ;
 S TIPCA=0
 I STA="000" D
 .S S21=$$^W4TRAN(SOUT,TRAN,TIPCA)
 ;
OKEND ;
 Q "OK;000;;;~"_$G(STRIN)_"~"_$G(SOUT)
 ;
 ;
GLORD D GLORD^W4HZMST
 Q
 ;
 ;
GETCA(ST,LET)
 N A,A1,J S A=$P(ST,LET,2)
 S A1=""
 F J=1:1:$L(A) Q:$E(A,J)?1U  S A1=A1_$E(A,J)
 Q A1
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 ;
INOUT(STRIN,UIDBIT) ;
 N A S A=""
 S A=$$^W4STRINW(STRIN,$G(UIDBIT)) ; --- STRIN+HIYUV
 Q A
 ;
 ;
DBL(STRIN) ;
 I '$G(HZM) Q 0
 ;
 ;
 I $$GET^W4TMPPAY(3,"SUM")<0 Q 0
 ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D  Q:OK
 .I $E($G(^(N,"STRIN")),1,65)=$E(STRIN,1,65),STRIN'["BC" S OK=1,@$$^W4ORD@(HZM,"DBLIN")=STRIN_"\"_$H_"\"_$$^W4MYDVN
 Q OK
 ;
 ;
TR(VL,LN) ;
 Q $$TR^W4STRINW(VL,LN)
 ;
GETFLOU(HZM,UID) ;
 N M
 N OBR,FL,SZ,K,A
GETFLOU1 ;
 S OBR="/tmp/tmpemvou*_"_HZM_"_*"
 ;
 S FL=$ZSEARCH(OBR)
 I FL="" Q "" 
 S SZ=$P($$^%L1FLP(FL),"^",2)
 I SZ<1000 D  G GETFLOU1
 .ZSY "mv "_FL_" /tmp/eremvou"_$P(FL,"tmpemvou",2)
 I $D(M(FL)) Q ""
 S M(FL)=""
 O FL:(REWIND:READONLY) 
 U FL R A C FL
 I A[("""uid"":"""_UID_"""") Q FL
 G GETFLOU1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RCA1
W4RCA1(HZM,IND) ; [ 25.06.22 08:39 ] [ 24.06.22 06:28 ] [ 14.05.22 15:31 ] 
 ; -- TASHLUM B K-A LE HAZMANA ( LE KABALA - W4PAYCBA )
 ; ------------------------------------------------------
 N (HZM,IND,JB,%ARG,%REM)
 S JB=1
 S ST=^P1HZ(HZM,"CB","V",IND)
 S SUMCA=$P(ST,"*",7)
 S PAY=SUMCA*100
 S UID=$G(^P1HZ(HZM,"EMV",IND,"OUT","UID"))
 I UID="" Q "UIDNOTFOUND"
 S FLOU="/tmp/tmpemvou30_3044756_201994_6624949720"
 ;
 S STRIN=""
 S STPRM=""
 S $E(STOUT,61,62)="01"
 S $E(STOUT,63)=1
 S $E(STOUT,36,43)=$$TR(PAY,8)
 S $E(STOUT,52,59)="00000000"
 S $E(STOUT,78,85)="00000000"
 S $E(STOUT,86,93)="00000000"
 S $E(STOUT,94,95)="00"
 ;
 D ^W4IN
 D GLORD
 S %REM=$$GET^%W1PRM("REM")
 ;
 S VIZ=""
 ;
TV ;
 S VUID=$G(^P1HZ(HZM,"EMV",IND,"OUT","VUID"))
 I VUID="" Q "VUIDNOTFOUND"
 ;
 S INDL0=$G(@$$^W4GL("TRANL"))
 S INDL=$O(@$$^W4GL("TRANL")@(999999),-1)
 S:INDL<1 INDL=1
 I INDL<INDL0 S INDL=INDL0
 ;
 S GL=$$^W4GL("TRANL")_"("_INDL_",901)"
 S ID=$O(@GL@(99999),-1)+1
 S ID=$TR($J(INDL,5)," ",0)_$TR($J(ID,5)," ",0)
 ;
 S A=$$OU^W4EMV3(FLOU)
 ;
 S ^LV("W4PAYCA-INOUT")=A
 S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 S UID=$P(A,"~",6)
 ;
 ;
 I STA["-" S STA="-"_$P(STA,"-",2)
 ;
 I $$^W4AUTHCD(STA),'$$EMV^W4PRM D
 .N TEL,MSG,VTS S VTS=$E(SOUT,25) Q:'VTS
 .S TEL=$$TELCA^W4OPT(VTS)
 .S $P(A,"~",3)=TEL
 ;
 I STA'="000" D  Q ER_";"_STA_";"_TRAN_";"_$$CLWEB^%L1FRM($P(A,"~",3))_";~"_$G(STRIN)_"~"_$G(SOUT)
 .N STRIN S STRIN=$$GETP^%W1PRM("STRIN") Q:$L(STRIN)=0
 .K @$$^W4GL("W4STRIN")@(HZM,"IN",STRIN)
 .D KILL^%W1PRM("STRIN")
 ;
 D
 .N IND S IND=$O(@$$^W4GIO@(99999999),-1)+1
 .S @$$^W4GIO@(IND,"IN")=STRIN
 .S @$$^W4GIO@(IND,"OU")=A
 ;
 S S21=""
 S TRAN("IN")=STRIN
 ;
 S TIPCA=0
 I STA="000" D
 .S S21=$$^W4TRAN(SOUT,TRAN,TIPCA)
 ;
OKEND ;
 Q "OK;000;;;~"_$G(STRIN)_"~"_$G(SOUT)
 ;
 ;
GLORD D GLORD^W4HZMST
 Q
 ;
 ;
GETCA(ST,LET)
 N A,A1,J S A=$P(ST,LET,2)
 S A1=""
 F J=1:1:$L(A) Q:$E(A,J)?1U  S A1=A1_$E(A,J)
 Q A1
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 ;
INOUT(STRIN,UIDBIT) ;
 N A S A=""
 S A=$$^W4STRINW(STRIN,$G(UIDBIT)) ; --- STRIN+HIYUV
 Q A
 ;
 ;
DBL(STRIN) ;
 I '$G(HZM) Q 0
 ;
 ;
 I $$GET^W4TMPPAY(3,"SUM")<0 Q 0
 ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D  Q:OK
 .I $E($G(^(N,"STRIN")),1,65)=$E(STRIN,1,65),STRIN'["BC" S OK=1,@$$^W4ORD@(HZM,"DBLIN")=STRIN_"\"_$H_"\"_$$^W4MYDVN
 Q OK
 ;
 ;
TR(VL,LN) ;
 Q $$TR^W4STRINW(VL,LN)
 ;
GETFLOU(HZM,UID) ;
 N M
 N OBR,FL,SZ,K,A
 S OBR="/tmp/tmpemvou*_"_HZM_"_*"
GETFLOU1 S FL=$ZSEARCH(OBR)
 I FL="" Q "" 
 I $D(M(FL)) Q ""
 S M(FL)=""
 O FL:(REWIND:READONLY) 
 S SZ=$$SIZE^%L1ZOS(FL)
 U FL R A C FL
 I A[("""uid"":"""_UID_""""),SZ>1000 Q FL
 G GETFLOU1
 
 
 
 
 
 
 
 
 
 
 
 

W4RCPIMG
W4RCPIMG(CD) ; [ 12.05.25 16:10 ] [ 
 N FL,FLOU,MSD
 S MSD=$$GETP^%W1PRM("MSD")
 I 'MSD S MSD=1
 S FLOU=$$WEB^W3MAIN_MSD_"/itp/rcpno.png"
 S FL=$$WEBL^W3MAIN_MSD_"/itp/rcp"_CD_".png"
 I $$EXIST^%L1ZOS(FL) S FLOU=$$WEB^W3MAIN_MSD_"/itp/rcp"_CD_".png"
 Q FLOU
 ;
EX(CD) ;
 N FLOU S FLOU=$$W4RCPIMG(CD)
 I FLOU'="",FLOU["/rcp",FLOU'["/rcpno." Q 1
 Q 0
 
 

W4REF
W4REF(STAM) ; [ 05.05.09 07:03 ] [
 Q $$^W4GL("P1H")

W4REMGIB
W4REMGIB(MSD) ; [ 04.02.24 15:29 ] [ 10.12.11 08:10 ] [ 09.12.11 20:44 ] 
 N (JB,%ARG,%REM,MSD)
 I '$G(MSD) Q
 S $ZT="K @$$RGFLAG@(MSD) S $ZT="""",zr=$R ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(@$$RGFLAG@(MSD)),$G(@$$RGFLAG@(MSD))'=$J Q
 S @$$RGFLAG@(MSD)=$J
 ;
 S GLGIB=$$REMGIB^%S3GLSV
 ;
BG ;
 S GLVER=$$GLVER
 S ADDR=$G(^P1PRM("REMGIB")) I ADDR="" Q
 ;
 N N,N1 S MANA=80
 S DT="" F  S DT=$O(@GLGIB@(MSD,DT)) Q:DT=""  D
 .S DAT=$ZD(DT,"YYMMDD")
 .S N="" F I=1:1:MANA S N=$O(@GLGIB@(MSD,DT,N)) Q:N=""  S N1=N
 .L +@GLVER@(MSD,DAT):3
 .S VER=+$G(@GLVER@(MSD,DAT))
 .S VER=$TR($J(VER,5)," ",0)
 .S FL="/tmp/RG"_MSD_"_"_DAT_"_"_VER
 .S ENDFL=FL_".END"
 .
 .O FL:(WRITE:REWIND:NEWVERSION)
 .
 .S N="" F I=1:1:MANA S N=$O(@GLGIB@(MSD,DT,N)) Q:N=""  D
 ..U FL W $G(@GLGIB@(MSD,DT,N)),!
 ..S @GLGIB@(MSD,DT,N,"GIB")=+VER
 .
 .C FL
 .;
 .S %L2MODEM("WEB")=1
 .D ^%L1FTP(ADDR,FL)
 .;
 .I '$ZSY D
 ..S N="" F  S N=$O(@GLGIB@(MSD,DT,N)) Q:N=""  D
 ...I $D(@GLGIB@(MSD,DT,N,"GIB")),+$G(@GLGIB@(MSD,DT,N,"GIB"))=+VER K @GLGIB@(MSD,DT,N)
 ..O ENDFL:(REWIND:NEWVERSION) U ENDFL W "1",! C ENDFL ; -- SEND ENDFILE
 ..S %L2MODEM("WEB")=1
 ..H 1 D ^%L1FTP(ADDR,ENDFL)
 ..C FL:(DELETE)
 ..C ENDFL:(DELETE)
 ..S @GLVER@(MSD,DAT)=$G(@GLVER@(MSD,DAT))+1
 .L -@GLVER@(MSD,DAT)
 .H 2
 ;
 H 3 G BG
 ;
RGFLAG(STAM) ;
 Q "^[$$^W3MAIN]flag(""REMGIB"")"
 ;
GLVER(STAM) ;
 Q "^[$$^W3MAIN]RGVER"
 

W4REMOTE
W4REMOTE(NMB) ; [ 10.11.08 12:16 ] [ 15.04.07 09:28 ] [ 19.02.07 14:48 ]
 I $G(@$$^W4PRM@("REMOTE_FILIAL")) Q 1
 Q 0

W4REP
W4REP ; [ 28.08.22 09:44 ] [ 20.02.22 10:38 ] [ 06.01.20 11:18 ] 
INIT ;
 S %REPN=$$REPN
 S %REPNAME=$$REPNAME
 S PROG=$$PROG
 ;
 D ^W3CSS
 D KILL^%W1PRM("WIN")
 D KILL^%W1PRM("FLSLR")
 D KILL^%W1PRM("NOSHOWDELZIC")
 D KILL^%W1PRM("DECHOUR")
 D KILL^%W1PRM("REPDAYS")
 D KILL^%W1PRM("COMPDAT")
 D INIT^%W1PC
 D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 D PUT^%W1PRM("FLSLR",+$G(%ARG("FLSLR")))
 Q
 ;
REPN(STAM)
 N %REPN
 S %REPN=$G(%ARG("REPN"))
 I %REPN="" S %REPN=$$GETP^%W1PRM("REPN")
 Q %REPN
 ;
REPNAME(%REPN) ;
 I $L($G(%ARG("REPNAME"))) Q %ARG("REPNAME")
 ;;I $L($$GETP^%W1PRM("REPNAME")) Q $$GETP^%W1PRM("REPNAME")
 I $G(%REPN)="" Q ""
 N KOT S KOT=$G(@$$^%W1GLREP)
 Q KOT
 ;
PROG(STAM) ;
 N %PROG
 S %PROG=$G(%ARG("PROG"))
 I %PROG="" S %PROG=$$GETP^%W1PRM("PROG")
 Q %PROG
 
 
 
 
 
 
 
 
 

W4REPAI0
W4REPAIR ;  [ 07.04.19 17:51 ] [ 17.09.18 11:46 ] [ 28.08.18 19:35 ] 
 ;--- INPUT - OVED,DAT
 N (JB,%ARG,%REM)
 I '$D(%ARG("MEDAT"))!'$D(%ARG("ADDAT")) W "A RANGE NOT DEFINED !" 
 ;
 S DT1=$$^%L1DC(%ARG("MEDAT"),3)
 S DT2=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 S OVED=$G(%ARG("OVED"))
 ;
 I '$$GROUP Q:OVED=""
 I '$$GROUP D
 .S OVED=$$DOP^W4NAME(OVED)
 .S OVED1=$$OVED1(OVED)
 ;
 D KOT
 ;
 D PUT^%W3DEB("W4REPAIR","OVED=OVED & DATOV=DATOV")
 ;
 S K=0
 ;
 I '$$GROUP D SHOWOVED(OVED,OVED1)
 ;
 I $$GROUP D
 .S OVED="" F  S OVED=$O(@$$^W4GL("NAME")@(OVED)) Q:OVED=""  I OVED?5N D
 ..I '$$GET1^W4LEVPR(OVED,"PAIL") Q
 ..S OVED1=$$OVED1(OVED)
 ..I $G(%ARG("SUGOV")),$$SUG^W4LEVSUG(OVED)'=%ARG("SUGOV") Q
 ..D SHOWOVED(OVED,OVED1)
 ;
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
KOT ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<table width=""80%"">",!
  W "<tr>"
   W "<td width=""25%"" "_$$^%W1ALIGN_" >"
    I $$GROUP D
    .W "<select id=""sugov"" onChange=""Show()"">",! 
    . W "<option value=""ALL"">"_$$^%W1DICT("CHOICEWORKERKIND")_"</option>",!
    . N N S N="" F  S N=$O(@$$^W4GL("LEVKVZ")@(N)) Q:N=""  D
    . . W "<option value="""_N_""">"_$$H2U^%L1FRM($G(^(N)))_"</option>",!
    .W "</select>",!
   W "</td>"
   W "<td align=""center"" style=""font-size:"_$$^W3FSZ(14)_""">"
    I $G(%ARG("MEDAT"))'=$G(%ARG("ADDAT")) D
    .W $$^%W1DICT("FROMDATETODATE",$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))
    I $G(%ARG("MEDAT"))=$G(%ARG("ADDAT")) D
    .W $$^%W1DICT("TODATE",$G(%ARG("MEDAT")))
   W "</td>"
   W "<td width=""25%"">"
    W "&nbsp;"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br />",!
 I $$GROUP D SEARCH^%W1FREPA($$SRCH)
 ;
 W " <table width=""80%"" id=""Tbl"" border=""1"" cellspacing=""0"" cellpadding=""3"">",!
 W "  <tr id=""trid0"">"
 W "   <th width=""5%"">&nbsp;</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("WORKERNUMBER")_"</th>",!
 W "   <th width=""18%"">"_$$^%W1DICT("WORKERNAME")_"</th>",!
 W "   <th width=""14%"">"_$$^%W1DICT("DATE")_"</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("ENTRANCE")_"</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("EXIT")_"</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("WORKTIME")_"</th>",!
 W "   <th width=""6%"">"_$$^%W1DICT("CHANGED")_"</th>",!
 W "  </tr>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N OVED,DAT,DATI,DATO,INTM,OUTM,END,WASIN
 D FILE
 D PUT^%W3DEB("W4REPAIR-SAVE","PRM=PRM")
 ;
 S DAT=$P(PRM,";",1)
 S DTOV=$$^%L1DC(DAT,3)
 S DAT=$$^%L1DC(DAT,2)
 I DAT'?6N Q -2
 ;
 S J=2 D
 .S OVED=$P(PRM,";",J) Q:'OVED
 .N VER S VER=$O(@FILE@(OVED,"OLD",DAT,99999),-1)+1
 .;
 .N INTM,OUTM
 .N LAST S LAST=0
 .I $O(@FILE@(OVED,DAT))'?6N S LAST=1
 .;
 .S INTM=$P(PRM,";",J+1)
 .S OUTM=$P(PRM,";",J+2)
 .S INTM=INTM*3600+($P(INTM,":",2)*60)
 .S OUTM=OUTM*3600+($P(OUTM,":",2)*60)
 .I 'INTM,'OUTM Q
 .
 .S DATI=DAT,DATO=DAT
 .I OUTM<INTM,INTM,OUTM S DATO=$$^%L1DC(DTOV+1,2)
 .
 .I INTM S @FILE@(OVED,DATI,INTM)="I" D
 ..S @FILE@(OVED,DATI,INTM,"ARM")=$H
 ..N COD,CIO,DAT,%TIM
 ..S %TIM=$$T^%L1TIME(INTM)
 ..S COD=OVED,CIO="I",DAT=DATI ;;D PC^W4CLKVW
 ..D ^%S2GLSV(FILE_"("""_OVED_""","""_DATI_""")",$$^W4FGIB)
 .
 .I OUTM S @FILE@(OVED,DATO,OUTM)="O" D
 ..S @FILE@(OVED,DATO,OUTM,"ARM")=$H
 ..N COD,CIO,DAT,%TIM
 ..S %TIM=$$T^%L1TIME(OUTM)
 ..S COD=OVED,CIO="O",DAT=DATO ;;D PC^W4CLKVW
 ..D ^%S2GLSV(FILE_"("""_OVED_""","""_DATO_""")",$$^W4FGIB)
 .
 .D TIKCIO^W4DATL(OVED)
 .D ^%S2GLSV(FILE_"("""_OVED_""",""CIO"")",$$^W4FGIB)
 ;
 Q 1
 ;
 ;
SELTIME(PRM,DT,SHK,SHI) ;
 N I,SEL
 S SEL="<select name=""hr"" id=""selhr"_PRM_SHK_""" onChange=""OnChange("_SHK_")"" >"
 F I=0:1:23 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""""_$S(+NN=+$$VALHR(PRM,DT,SHI):" selected=""selected""",1:"")_" >"_NN_"</option>"
 S SEL=SEL_"</select>"
 ;
 S SEL=SEL_"<select name=""mn"" id=""selmn"_PRM_SHK_""" onChange=""OnChange("_SHK_")"" >"
 F I=0:1:59 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""""_$S(+NN=+$$VALMN(PRM,DT,SHI):" selected=""selected""",1:"")_" >"_NN_"</option>"
 S SEL=SEL_"</select>"
 Q SEL
 ;
VALHR(PRM,DT,SH) ;
 I PRM="IN" Q +$G(IN(DT,SH))
 I PRM="OU" Q +$G(OU(DT,SH))
 Q ""
 ;
VALMN(PRM,DT,SH) ;
 N MN
 S MN=$S(PRM="IN":$G(IN(DT,SH)),1:$G(OU(DT,SH)))
 S MN=$P(MN,":",2)
 ;;S MN=MN\5*5
 Q MN
 ;
FILE S FILE=$$^W4GL("FILE")
 Q
 ;
WORKTIME(PRM) ;
 N HROU,MNOU,HRIN,MNIN
 S HRIN=$P(PRM,";")
 S MNIN=$P(PRM,";",2)
 S HROU=$P(PRM,";",3)
 S MNOU=$P(PRM,";",4)
 I 'HRIN,'MNIN Q "&nbsp;"
 I 'HROU,'MNOU Q "&nbsp;"
 N DIF S DIF=HROU*3600+(MNOU*60)-(HRIN*3600)-(MNIN*60)
 I DIF<0 S DIF=DIF+(24*3600)
 Q $$T^%L1TIME(DIF)
 ;
GROUP(STAM) ;
 Q ($G(%ARG("OVED"))="")
 ;
 ;
SHOWOVED(OVED,OVED1) ;
 N IN,OU,DT,END,N,A,TM,I,WASIN D FILE
 S END=0
 ;
 F DT=DT1:1:DT2+1 D  Q:END
 .S I=0,WASIN=0
 .S DATOV=$ZD(DT,"YYMMDD")
 .S N="" F  S N=$O(@FILE@(OVED,DATOV,N)) Q:N=""  D  Q:END
 ..S A=$G(^(N))
 ..S TM=$$T^%L1TIME(N)
 ..I A="I",DT=(DT2+1) S END=1 Q
 ..I A="I" S I=I+1,IN(DT,I)=TM S WASIN=N
 ..I A="O",DT=DT1,N<21000,'WASIN Q
 ..S DTOV=DT
 ..I A="O" D  S OU(DTOV,I)=TM
 ...;;I N<21000 S DTOV=DT-1
 ...S:'I I=1
 ...N I1 F I1=I:1 Q:'$D(OU(DTOV,I1))
 ...S OU(DTOV,I1)=TM
 ...I '$D(IN(DTOV,I1)) S IN(DTOV,I1)="00:00"
 ...S I=I1
 ;
 D PUT^%W3DEB("W4REPAIR","IN=[IN & OU=[OU")
 ;
 F DT=DT1:1:DT2 D
 .N OK S OK=0
 .F I=1:1:100 I $D(IN(DT,I))!$D(OU(DT,I)) D OVLINE(DT,OVED,I) S OK=1
 .I 'OK D OVLINE(DT,OVED,1)
 Q
 ;
 ;
OVLINE(DT,OVED,I) ;
 S K=K+1 ;
 N DAT S DAT=$ZD(DT,"YYMMDD")
 S OVED1=$$OVED1(OVED)
 W "<tr id=""trid"_K_""" ",!
  I $L($$SRCH),$$^W4NAME(OVED)[$$SRCH W " style=""background-color:yellow"" "
 W ">"
 W " <td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 W " onClick=""NewLine('"_K_"','"_OVED_"','"_OVED1_"')""> + </span><br />"
 W " <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
 W "onClick=""DeleteRow('"_K_"')"" > - </span></td>",!
 W " <td id=""oved"_K_""" align=""center"">"_OVED_"</td>"
 W " <td >"_$$H2U^%L1FRM($$^W4NAME(OVED))_"</td>"
 W " <td id=""dat"_K_""" style=""text-align:center"">"_$$^%L1DC(DAT,1)_"</td>"
 W " <td align=""center"" dir=""LTR"">&nbsp;" W $$SELTIME("IN",DT,K,I) W "&nbsp;</td>",!
 W " <td align=""center"" dir=""LTR"">&nbsp;" W $$SELTIME("OU",DT,K,I) W "&nbsp;</td>",!
 W " <td id=""worktime"_K_""" align=""center"" dir=""LTR"">&nbsp;"
  S HROU=+$$VALHR("OU",DT,I)
  S HRIN=+$$VALHR("IN",DT,I)
  S MNOU=+$$VALMN("OU",DT,I)
  S MNIN=+$$VALMN("IN",DT,I)
  W $$WORKTIME(HRIN_";"_MNIN_";"_HROU_";"_MNOU)
 W "&nbsp;</td>",!
 W " <td align=""center"">",!
 W "  <input name=""chn"" id=""chn"_K_""" type=""checkbox"" disabled=""disabled"" />"
 W " </td>",!
 W "</tr>",!
 Q
 ;
OVED1(OVED) ;
 N OVED1
 S OVED1="" I $G(OVED) S OVED1=$$^W4NAME(OVED)
 S OVED1=$$RPL^%L1FRM(OVED1,"'","\'")
 S OVED1=$$H2U^%L1FRM(OVED1)
 Q OVED1
 ;
 ;
CLEAR(PRM)
 N DAT,OV
 S DAT=$P(PRM,";") Q:DAT="" "NOTDATE"
 S OV=$P(PRM,";",2) Q:OV="" "NOTWORKER"
 ;
 D CLEAROV(DAT,OV)
 Q 1
 ;
 ;
CLEAROV(DAT,OVED) ;
 N FILE D FILE
 N FILEOLD S FILEOLD=$$^W4GL("FILEOLD")
 N DATOV,DTOV,DT,A,N,VERS,END,WASIN
 S DTOV=$$^%L1DC(DAT,3)
 S END=0,WASIN=0
 ;
 F DT=DTOV:1:DTOV+1 D
 .S DATOV=$ZD(DT,"YYMMDD")
 .S N="" F  S N=$O(@FILE@(OVED,DATOV,N)) Q:N=""  D  Q:END
 ..S A=$G(^(N))
 ..I A="I",DT=(DTOV+1) S END=1 Q
 ..I A="I",DT=DTOV S WASIN=1
 ..I A="O",DT=DTOV,N,N<21000,'WASIN Q
 ..S VERS=+$H_$TR($J($P($H,",",2),5)," ",0)
 ..M @FILEOLD@(DATOV,VERS,OVED,N)=@FILE@(OVED,DATOV,N)
 ..I N K @FILE@(OVED,DATOV,N)
 ;
 Q
 ;
 ;
SRCH(STAM) ; 
 Q $$INVH^%L1FRM($G(%ARG("SRCH")))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPAIR
W4REPAIR ;  [ 23.08.24 07:54 ] [ 22.07.24 14:34 ] [ 04.02.24 15:29 ] 
 ;--- INPUT - OVED,DAT
 N (JB,%ARG,%REM)
 I '$D(%ARG("MEDAT"))!'$D(%ARG("ADDAT")) W "A RANGE NOT DEFINED !" 
 ;
 S DT1=$$^%L1DC(%ARG("MEDAT"),3)
 S DT2=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 I $G(%ARG("MEDAT")) D PUT^%W1PRM("MEDATRPR",%ARG("MEDAT"))
 S OVED=$G(%ARG("OVED"))
 ;
 I '$$GROUP Q:OVED=""
 I '$$GROUP D
 .S OVED=$$DOP^W4NAME(OVED)
 .S OVED1=$$OVED1(OVED)
 ;
 D KOT
 ;
 D PUT^%W3DEB("W4REPAIR","OVED=OVED & DATOV=DATOV")
 ;
 S K=0
 ;
 I '$$GROUP D SHOWOVED(OVED,OVED1)
 ;
 I $$GROUP D
 .S OVED="" F  S OVED=$O(@$$^W4GL("NAME")@(OVED)) Q:OVED=""  I OVED?5N D
 ..I '$$GET1^W4LEVPR(OVED,"PAIL") Q
 ..S OVED1=$$OVED1(OVED)
 ..I $G(%ARG("SUGOV")),$$SUG^W4LEVSUG(OVED)'=%ARG("SUGOV") Q
 ..D SHOWOVED(OVED,OVED1)
 ;
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
KOT ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<table width=""80%"">",!
  W "<tr>"
   W "<td width=""25%"" "_$$^%W1ALIGN_" >"
    I $$GROUP D
    .W "<select id=""sugov"" onChange=""Show()"">",! 
    . W "<option value=""ALL"">"_$$^%W1DICT("CHOICEWORKERKIND")_"</option>",!
    . N N S N="" F  S N=$O(@$$^W4GL("LEVKVZ")@(N)) Q:N=""  D
    . . W "<option value="""_N_""">"_$$H2U^%L1FRM($G(^(N)))_"</option>",!
    .W "</select>",!
   W "</td>"
   ;
   W "<td align=""center"" style=""font-size:"_$$^W3FSZ(14)_""">"
    I $G(%ARG("MEDAT"))'=$G(%ARG("ADDAT")) D
    .W $$^%W1DICT("FROMDATETODATE",$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))
    I $G(%ARG("MEDAT"))=$G(%ARG("ADDAT")) D
    .W $$^%W1DICT("TODATE",$G(%ARG("MEDAT")))
   W "</td>"
   ;
   W "<td width=""25%"">"
    W "&nbsp;"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br />",!
 I $$GROUP D SEARCH^%W1FREPA($$SRCH)
 ;
 W " <table width=""100%"" id=""Tbl"" border=""1"" cellspacing=""0"" cellpadding=""3"">",!
 W "  <tr id=""trid0"">"
 W "   <th width=""5%"">&nbsp;</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("WORKERNUMBER")_"</th>",!
 W "   <th width=""18%"">"_$$^%W1DICT("WORKERNAME")_"</th>",!
 W "   <th width=""14%"">"_$$^%W1DICT("DATE")_"</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("ENTRANCE")_"</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("EXIT")_"</th>",!
 W "   <th width=""12%"">"_$$^%W1DICT("WORKTIME")_"</th>",!
 W "   <th width=""6%"">"_$$^%W1DICT("CHANGED")_"</th>",!
 W "  </tr>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N OVED,DAT,DATI,DATO,INTM,OUTM,END,WASIN
 D FILE
 D PUT^%W3DEB("W4REPAIR-SAVE","PRM=PRM")
 ;
 S DAT=$P(PRM,";",1)
 S DTOV=$$^%L1DC(DAT,3)
 S DAT=$$^%L1DC(DAT,2)
 I DAT'?6N Q -2
 ;
 S J=2 D
 .S OVED=$P(PRM,";",J) Q:'OVED
 .N VER S VER=$O(@FILE@(OVED,"OLD",DAT,99999),-1)+1
 .;
 .N INTM,OUTM
 .N LAST S LAST=0
 .I $O(@FILE@(OVED,DAT))'?6N S LAST=1
 .;
 .S INTM=$P(PRM,";",J+1)
 .S OUTM=$P(PRM,";",J+2)
 .S INTM=INTM*3600+($P(INTM,":",2)*60)
 .S OUTM=OUTM*3600+($P(OUTM,":",2)*60)
 .I 'INTM,'OUTM Q
 .
 .S DATI=DAT,DATO=DAT
 .I OUTM<INTM,INTM,OUTM S DATO=$$^%L1DC(DTOV+1,2)
 .
 .I INTM S @FILE@(OVED,DATI,INTM)="I" D
 ..S @FILE@(OVED,DATI,INTM,"ARM")=$H
 ..N COD,CIO,DAT,%TIM
 ..S %TIM=$$T^%L1TIME(INTM)
 ..S COD=OVED,CIO="I",DAT=DATI ;;D PC^W4CLKVW
 ..D ^%S3GLSV(FILE_"("""_OVED_""","""_DATI_""")",$$^W4FGIB)
 .
 .I OUTM S @FILE@(OVED,DATO,OUTM)="O" D
 ..N WHO S WHO=$P(PRM,";",J+4)
 ..S @FILE@(OVED,DATO,OUTM,"ARM")=$H_"^"_$$INVH^%L1FRM(WHO)_"^"_$$^W4MYDVN
 ..N COD,CIO,DAT,%TIM
 ..S %TIM=$$T^%L1TIME(OUTM)
 ..S COD=OVED,CIO="O",DAT=DATO ;;D PC^W4CLKVW
 ..D ^%S3GLSV(FILE_"("""_OVED_""","""_DATO_""")",$$^W4FGIB)
 .
 .D TIKCIO^W4DATL(OVED)
 .D ^%S3GLSV(FILE_"("""_OVED_""",""CIO"")",$$^W4FGIB)
 ;
 Q 1
 ;
 ;
SELTIME(PRM,DT,SHK,SHI) ;
 N I,SEL
 S SEL="<select name=""hr"" id=""selhr"_PRM_SHK_""" onChange=""OnChange("_SHK_")"" >"
 F I=0:1:23 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""""_$S(+NN=+$$VALHR(PRM,DT,SHI):" selected=""selected""",1:"")_" >"_NN_"</option>"
 S SEL=SEL_"</select>"
 ;
 S SEL=SEL_"<select name=""mn"" id=""selmn"_PRM_SHK_""" onChange=""OnChange("_SHK_")"" >"
 F I=0:1:59 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""""_$S(+NN=+$$VALMN(PRM,DT,SHI):" selected=""selected""",1:"")_" >"_NN_"</option>"
 S SEL=SEL_"</select>"
 Q SEL
 ;
VALHR(PRM,DT,SH) ;
 I PRM="IN" Q +$G(IN(DT,SH))
 I PRM="OU" Q +$G(OU(DT,SH))
 Q ""
 ;
VALMN(PRM,DT,SH) ;
 N MN
 S MN=$S(PRM="IN":$G(IN(DT,SH)),1:$G(OU(DT,SH)))
 S MN=$P(MN,":",2)
 ;;S MN=MN\5*5
 Q MN
 ;
FILE S FILE=$$^W4GL("FILE")
 Q
 ;
WORKTIME(PRM) ;
 N HROU,MNOU,HRIN,MNIN
 S HRIN=$P(PRM,";")
 S MNIN=$P(PRM,";",2)
 S HROU=$P(PRM,";",3)
 S MNOU=$P(PRM,";",4)
 I 'HRIN,'MNIN Q "&nbsp;"
 I 'HROU,'MNOU Q "&nbsp;"
 N DIF S DIF=HROU*3600+(MNOU*60)-(HRIN*3600)-(MNIN*60)
 I DIF<0 S DIF=DIF+(24*3600)
 Q $$T^%L1TIME(DIF)
 ;
GROUP(STAM) ;
 Q ($G(%ARG("OVED"))="")
 ;
 ;
SHOWOVED(OVED,OVED1) ;
 N IN,OU,DT,END,N,A,TM,I,WASIN D FILE
 S END=0
 ;
 F DT=DT1:1:DT2+1 D  Q:END
 .S I=0,WASIN=0
 .S DATOV=$ZD(DT,"YYMMDD")
 .S N="" F  S N=$O(@FILE@(OVED,DATOV,N)) Q:N=""  D  Q:END
 ..S A=$G(^(N))
 ..S TM=$$T^%L1TIME(N)
 ..I A="I",DT=(DT2+1) S END=1 Q
 ..I A="I" S I=$$NEXTI(DT,"I"),IN(DT,I)=TM S WASIN=N
 ..I A="O",DT=DT1,N<21000,'WASIN Q
 ..S DTOV=DT
 ..I A="O" D  S OU(DTOV,I)=TM
 ...I N<21000 S DTOV=DT-1
 ...N I1 S I1=$$NEXTI(DTOV,"O")
 ...S OU(DTOV,I1)=TM
 ...I '$D(IN(DTOV,I1)) S IN(DTOV,I1)="00:00"
 ...S I=I1
 ;
 D PUT^%W3DEB("W4REPAIR","IN=[IN & OU=[OU")
 ;
 F DT=DT1:1:DT2 D
 .N OK S OK=0
 .F I=1:1:100 I $D(IN(DT,I))!$D(OU(DT,I)) D OVLINE(DT,OVED,I) S OK=1
 .I 'OK D OVLINE(DT,OVED,1)
 Q
 ;
 ;
OVLINE(DT,OVED,I) ;
 S K=K+1 ;
 N DAT S DAT=$ZD(DT,"YYMMDD")
 S OVED1=$$OVED1(OVED)
 W "<tr id=""trid"_K_""" ",!
  I $L($$SRCH),$$^W4NAME(OVED)[$$SRCH W " style=""background-color:yellow"" "
 W ">"
 W " <td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 W " onClick=""NewLine('"_K_"','"_OVED_"','"_OVED1_"')""> + </span><br />"
 W " <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
 W "onClick=""DeleteRow('"_K_"')"" > - </span></td>",!
 ;
 W " <td id=""oved"_K_""" align=""center"">"_OVED_"</td>"
 W " <td >"_$$H2U^%L1FRM($$^W4NAME(OVED))_"</td>"
 N DAT1 S DAT1=$$^%L1DC(DAT,1)
 W " <td id=""dat"_K_""" style=""text-align:center"">"_DAT1_" "_$$H2U^%L1FRM($$^%L1DC(DAT1,9))_"</td>"
 W " <td align=""center"" dir=""LTR"">&nbsp;" W $$SELTIME("IN",DT,K,I) W "&nbsp;</td>",!
 W " <td align=""center"" dir=""LTR"">&nbsp;" W $$SELTIME("OU",DT,K,I) W "&nbsp;</td>",!
 W " <td id=""worktime"_K_""" align=""center"" dir=""LTR"">&nbsp;"
  S HROU=+$$VALHR("OU",DT,I)
  S HRIN=+$$VALHR("IN",DT,I)
  S MNOU=+$$VALMN("OU",DT,I)
  S MNIN=+$$VALMN("IN",DT,I)
  W $$WORKTIME(HRIN_";"_MNIN_";"_HROU_";"_MNOU)
 W "&nbsp;</td>",!
 W " <td align=""center"">",!
 W "  <input name=""chn"" id=""chn"_K_""" type=""checkbox"" disabled=""disabled"" />"
 W " </td>",!
 W "</tr>",!
 Q
 ;
OVED1(OVED) ;
 N OVED1
 S OVED1="" I $G(OVED) S OVED1=$$^W4NAME(OVED)
 S OVED1=$$RPL^%L1FRM(OVED1,"'","\'")
 S OVED1=$$H2U^%L1FRM(OVED1)
 Q OVED1
 ;
 ;
CLEAR(PRM)
 N DAT,OV
 S DAT=$P(PRM,";") Q:DAT="" "NOTDATE"
 S OV=$P(PRM,";",2) Q:OV="" "NOTWORKER"
 ;
 D CLEAROV(DAT,OV)
 Q 1
 ;
 ;
CLEAROV(DAT,OVED) ;
 N FILE D FILE
 N FILEOLD S FILEOLD=$$^W4GL("FILEOLD")
 N DATOV,DTOV,DT,A,N,VERS,END,WASIN
 S DTOV=$$^%L1DC(DAT,3)
 S END=0,WASIN=0
 ;
 F DT=DTOV:1:DTOV+1 D
 .S DATOV=$ZD(DT,"YYMMDD")
 .S N="" F  S N=$O(@FILE@(OVED,DATOV,N)) Q:N=""  D  Q:END
 ..S A=$G(^(N))
 ..I A="I",DT=(DTOV+1) S END=1 Q
 ..I A="I",DT=DTOV S WASIN=1
 ..I A="O",DT=DTOV,N,N<21000,'WASIN Q
 ..S VERS=+$H_$TR($J($P($H,",",2),5)," ",0)
 ..M @FILEOLD@(DATOV,VERS,OVED,N)=@FILE@(OVED,DATOV,N)
 ..I N K @FILE@(OVED,DATOV,N)
 ;
 Q
 ;
 ;
SRCH(STAM) ; 
 Q $$INVH^%L1FRM($G(%ARG("SRCH")))
 ;
NEXTI(DT,SUG) ; 
 I SUG="I" Q $O(IN(DT,999),-1)+1 
 Q $O(OU(DT,999),-1)+1 
 ;
MEDATREP(DAT) ; 
 S DAT=$TR(DAT,"/",".")
 S DAT="01."_$P(DAT,".",2,3) 
 Q DAT 
 ; 
ADDATREP(DAT) ; 
 S DAT=$TR(DAT,"/",".")
 S DAT=$$^%L1DC($$LM^%L1DC(DAT),1)
 Q DAT 
 ; 
SNDRSTG(DTOV) 
 S DTOV=$$^%L1DC(DTOV,3) 
 I $$RSTGO^W4PRM D 
 .D OPNJSN^W4RSTGSN(DTOV,"wrk") 
 .D WORK^W4RSTGSN(DTOV) 
 .D SEND^W4RSTGSN(DTOV,"wrk") 
 Q 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPBCK
W4REPBCK ; [ 11.03.19 06:14 ] [ 
 K @$$^W4MAIN("TMPREP"),@$$^W4MAIN("TMPREPB")
 D KILL^%W1PRM("CURSORT") D KILL^%W1PRM("PRINTREPBACK")
 D KILL^%W1PRM("CSRPRINT")
 K @$$^W4MAIN("TMPS111")
 Q
 

W4REPCA
W4REPCA ; [ 14.05.26 12:46 ] [ 14.04.26 02:41 ] [ 16.09.25 12:09 ] 
 ;-- DOCH CA LEFI MUTAGIM
 D INIT
 ;
 W $$^W4PRESEK
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  w "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"
   W $$^%W1DICT("REPCADT",DAT1_"<>"_DAT2)
  W "</span>",!
  w "<br><br>",!
  ;
  S SM=2
  D S1($$HBD(" "_DAT2_" cr "_DAT1_" -n i`xy` iqihxk g""ec"))
  D S1("")
  W "<table width="""_$$WD_""" border=""1"" cellspacing=""0"">"
   W "<tr>"
    W "<th>"
     W $$^%W1DICT("DATE")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("SOLEK")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("MUTAG")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("HOVA")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("ZHUT")
    W "</th>"
    W "<th>"
     W $$^%W1DICT("TOTAL")
    W "</th>"
   w "</tr>",! 
   ;
   K SUM,SSUM,MSUM,MNP
   ;
   S DT="" F II=1:1 S DT=$O(@VRM@(DT)) Q:DT=""  D
   .S SOLEK="" F  S SOLEK=$O(@VRM@(DT,SOLEK)) Q:SOLEK=""  D
   ..I $$PAPJ^W4PRM,SOLEK=$$GFC^W4VT Q
   ..I II>1 D TRSP
   ..W "<tr style font-weight:bold"">" 
   ..W " <td>"_$ZD(DT,"DD.MM.YY")_"</td>"
   ..S VS=$G(V(SOLEK))
   ..W " <td>"_$$HB(VS)_"</td>"
   ..W " <td colspan=""4"">&nbsp;</td></tr>"
   ..D S1($$HBD($$HBR^%L1FRM(VS,10)_" : wleq "_$ZD(DT,"DD.MM.YY")_" jix`z"))
   ..D S1($TR($J("",38)," ","-"))
   ..D S1("   zekf  :  daeg  :    witpn  ")
   ..S MUTAG="" F  S MUTAG=$O(@VRM@(DT,SOLEK,MUTAG)) Q:MUTAG=""  D
   ...S VM=$G(V1(MUTAG)) 
   ...W "<tr>"
   ...W " <td colspan=""2"" >&nbsp;</td>"
   ...W " <td>"_$$HB(VM)_"</td>"
   ...S SUMH=$G(@VRM@(DT,SOLEK,MUTAG,"H"))
   ...S SUMZ=$G(@VRM@(DT,SOLEK,MUTAG,"Z"))
   ...W " <td>"_$J(SUMH,2,2)_"</td>"
   ...W " <td>"_$J(SUMZ,2,2)_"</td>"
   ...W " <td>"_$J(SUMH-SUMZ,2,2)_"</td>"
   ...W "</tr>",!
   ...D S1($J(SUMZ,8,2)_" "_$J(SUMH,8,2)_" "_$$HBD(VM,10))
   ...S $P(SUM(DT,SOLEK),"\")=$P($G(SUM(DT,SOLEK)),"\")+SUMH
   ...S $P(SUM(DT,SOLEK),"\",2)=$P($G(SUM(DT,SOLEK)),"\",2)+SUMZ
   ...S $P(SUM(DT),"\")=$P($G(SUM(DT)),"\")+SUMH
   ...S $P(SUM(DT),"\",2)=$P($G(SUM(DT)),"\",2)+SUMZ
   ...S $P(SUM,"\")=$P($G(SUM),"\")+SUMH
   ...S $P(SUM,"\",2)=$P($G(SUM),"\",2)+SUMZ
   ...S $P(SSUM(SOLEK),"\")=$P($G(SSUM(SOLEK)),"\")+SUMH
   ...S $P(SSUM(SOLEK),"\",2)=$P($G(SSUM(SOLEK)),"\",2)+SUMZ
   ...S $P(MSUM(MUTAG),"\")=$P($G(MSUM(MUTAG)),"\")+SUMH
   ...S $P(MSUM(MUTAG),"\",2)=$P($G(MSUM(MUTAG)),"\",2)+SUMZ
   ..
   ..W "<tr style=""background-color:lightgrey;font-weight:bold"" >"
   ..W " <td>"_$$^%W1DICT("TOTALSOLEK")_"</td>"
   ..W " <td>"_$$HB(VS)_"</td>"
   ..W " <td>&nbsp;</td>"
   ..S SUMH=$P($G(SUM(DT,SOLEK)),"\",1) 
   ..S SUMZ=$P($G(SUM(DT,SOLEK)),"\",2) 
   ..W " <td>"_$J(SUMH,2,2)_"</td>"
   ..W " <td>"_$J(SUMZ,2,2)_"</td>"
   ..W " <td>"_$J(SUMH-SUMZ,2,2)_"</td>"
   ..W "</tr>",!
   ..I $O(@VRM@(DT,SOLEK)) D TRSP
   ..D S1($TR($J("",38)," ","-"))
   ..D S1($J(SUMZ,8,2)_" "_$J(SUMH,8,2)_" "_$$HBD(VS,10)_" "_$$HBD("wleq k""dq"))
   .W "<tr style=""background-color:orange;font-weight:bold"">"
   .W " <td>"_$$^%W1DICT("TOTALDATE")_"</td>"
   .W " <td>"_$ZD(DT,"DD.MM.YY")_"</td>"
   .W " <td>&nbsp;</td>"
   .S SUMH=$P($G(SUM(DT)),"\",1)
   .S SUMZ=$P($G(SUM(DT)),"\",2)
   .W " <td>"_$J(SUMH,2,2)_"</td>"
   .W " <td>"_$J(SUMZ,2,2)_"</td>"
   .W " <td>"_$J(SUMH-SUMZ,2,2)_"</td>"
   .W "</tr>",!
   .W "<tr>" 
   .D S1($J(SUMZ,8,2)_" "_$J(SUMH,8,2)_" "_$ZD(DT,"DD.MM.YY")_" "_$$HBD("jix`z k""dq"))
   .D S1("")
   ;
   S N="" F  S N=$O(V1(N)) Q:N=""  D
   .W "<tr style=""font-weight:bold;background-color:lightblue;color:black;font-size:"_$$^W3FSZ(12)_""">"
   .W " <td>"_$$^%W1DICT("TOTALMUTAG")_"</td>"
   .S VS=$G(V1(N))
   .W " <td>"_$$HB(VS)_"</td>"
   .W " <td>&nbsp;</td>"
   .S SUMH=$P($G(MSUM(N)),"\",1)
   .S SUMZ=$P($G(MSUM(N)),"\",2)
   .W " <td>"_$J(SUMH,2,2)_"</td>"
   .W " <td>"_$J(SUMZ,2,2)_"</td>"
   .W " <td>"_$J(SUMH-SUMZ,2,2)_"</td>"
   .W "</tr>",!
   .D S1($J(SUMZ,8,2)_" "_$J(SUMH,8,2)_" "_$$HBD(VS,10)_" "_$$HBD("witpn k""dq"))
   ;
   D S1("")
   S N="" F  S N=$O(V(N)) Q:N=""  D
   .I N=$$GFC^W4VT,$$PAPJ^W4PRM Q
   .I N=8,$$PAPJ^W4PRM Q
   .W "<tr style=""font-weight:bold;background-color:lightyellow;color:green;font-size:"_$$^W3FSZ(12)_""">"
   .W " <td>"_$$^%W1DICT("TOTALSOLEK")_"</td>"
   .S VS=$G(V(N))
   .W " <td>"_$$HB(VS)_"</td>"
   .W " <td>&nbsp;</td>"
   .S SUMH=$P($G(SSUM(N)),"\",1)
   .S SUMZ=$P($G(SSUM(N)),"\",2)
   .W " <td>"_$J(SUMH,2,2)_"</td>"
   .W " <td>"_$J(SUMZ,2,2)_"</td>"
   .W " <td>"_$J(SUMH-SUMZ,2,2)_"</td>"
   .W "</tr>",!
   .D S1($J(SUMZ,8,2)_" "_$J(SUMH,8,2)_" "_$$HBD(VS,10)_" "_$$HBD("wleq k""dq"))
   ;
   D S1("")
   W "<tr style=""font-weight:bold;background-color:yellow;font-size:"_$$^W3FSZ(14)_""">"
   W " <td>"_$$^%W1DICT("TOTAL")_"</td>"
   W " <td colspan=""2"">&nbsp;</td>"
   S SUMH=$P($G(SUM),"\",1)
   S SUMZ=$P($G(SUM),"\",2)
   W " <td>"_$J(SUMH,2,2)_"</td>"
   W " <td>"_$J(SUMZ,2,2)_"</td>"
   W " <td>"_$J(SUMH-SUMZ,2,2)_"</td>"
   W "</tr>",!
  W "</table>",!
  D S1($J(SUMZ,8,2)_" "_$J(SUMH,8,2)_" "_$$HBD("k""dq"))
 W "</div>",!
 ;
 Q
 ;
 ;
PREP(DAT1,DAT2,JB) ;
 N (JB,%ARG,%REM,DAT1,DAT2)
 ;
 D INIT
 K @VRM
 ;
 ;;S ^AA("W4REPCA-PREP","DAT1")=DAT1
 ;;S ^AA("W4REPCA-PREP","DAT2")=DAT2
 S DT1=$$^%L1DC(DAT1,3),DT2=$$^%L1DC(DAT2,3)
 D FRMHZ(DT1,DT2)
 D FRMCB(DT1,DT2)
 ;;S ^AA("W4REPCA-PREP","REPCA")=1
 D PUT^%W1PRM("REPCA",1)
 Q
 ;
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4REPCA-CHKPRM","DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
 ;
FRMHZ(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 D VRM
 N HZ,DAT,N1,TRH,SHAA,ISKA,CA,SUM,SUG,I
 S I=0
 S HZ="" F DT=DT1:1:DT2 I $D(@$$^W4GL("P1H")@(DT)) D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 ..I $D(@$$^W4ORD@(HZ,"CB","V")) D
 ...S N1="" F  S N1=$O(@$$^W4ORD@(HZ,"CB","V",N1)) Q:N1=""  D
 ....S A=$G(^(N1))
 ....S SUM=$P(A,"*",7)
 ....S OU=$G(@$$^W4ORD@(HZ,"CB","V",N1,"STROU"))
 ....S SUG=$$SUGC(A)
 ....S MUTAG=$$MUTAG(OU) S:MUTAG="" MUTAG=0
 ....S SUGI="H"
 ....I SUM<0 S SUGI="Z",SUM=-SUM
 ....S DTC=+$P(A,"*",29) I 'DTC S DTC=DT
 ....I SUG=""!(MUTAG="")!(SUGI="") Q
 ....;;S @VRM@(DTC,SUG,MUTAG,SUGI)=$G(@VRM@(DTC,SUG,MUTAG,SUGI))+SUM
 ....S @VRM@(DT,SUG,MUTAG,SUGI)=$G(@VRM@(DT,SUG,MUTAG,SUGI))+SUM
 Q
 ;
 ;
FRMCB(DT1,DT2)
 N (JB,%ARG,%REM,DT1,DT2)
 D VRM
 N CB,GLCB,CUST,DAT,DT,ISKA,CA,SUM,SUG,SUG1,STRING,I
 S GLCB=$$^W4GL("KLIN")_"(""CB"")"
 N CUST S I=0
 ;
 S CB="" F  S CB=$O(@GLCB@(CB)) Q:CB=""  D
 .S CUST=$G(^(CB)) Q:CUST=""
 .S STRING=CUST Q:'STRING
 .N GLCBV S GLCBV=$$GLCBV^W4LCBCR(CB)
 .I '$D(@GLCBV) Q
 .
 .S DAT=$$DAT^W4LCBCR(CB)
 .S DT=$$^%L1DC(DAT,4)
 .I DT<DT1!(DT>DT2) Q
 .
 .I $D(@GLCBV)=1 D 
 ..S SUM=$$CA^W4LCBCR(CB)
 ..N A S A=$G(@$$GLCBV^W4LCBCR(CB))
 ..S OU=$G(@$$^W4GL("KLF")@(STRING,"CBV",CB,"SOUT"))
 ..S SUG=$$SUGC(A)
 ..S MUTAG=$$MUTAG(OU) I MUTAG="" S MUTAG=0
 ..S SUGI="H"
 ..I SUM<0 S SUGI="Z",SUM=-SUM
 ..I SUG=""!(MUTAG="")!(SUGI="") Q
 ..S @$$^W4MAIN("VRM")@(DT,SUG,MUTAG,SUGI)=$G(@$$^W4MAIN("VRM")@(DT,SUG,MUTAG,SUGI))+SUM
 .
 .I $D(@GLCBV)>9 D 
 ..N K F K=1:1 Q:'$D(@GLCBV@(K))  D
 ...S SUM=$$CA^W4LCBCR(CB,K)
 ...N A S A=$G(@GLCBV@(K))
 ...S OU=$G(@$$^W4GL("KLF")@(STRING,"CBV",CB,K,"SOUT"))
 ...S SUG=$$SUGC(A)
 ...S MUTAG=$$MUTAG(OU) I MUTAG="" S MUTAG=0
 ...S SUGI="H"
 ...I SUM<0 S SUGI="Z",SUM=-SUM
 ...I SUG=""!(MUTAG="")!(SUGI="") Q
 ...S @$$^W4MAIN("VRM")@(DT,SUG,MUTAG,SUGI)=$G(@$$^W4MAIN("VRM")@(DT,SUG,MUTAG,SUGI))+SUM
 Q
 ;
 ;
SUGC(A) ;
 Q $E(A,3)
 ;
MUTAG(OU) ;
 Q $E(OU,24)
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
INIT ;
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN,^%W1ARG
 ;
 D 
 .N I F I=1:1:9 S V(I)=$$^W4VT(I)
 ;
 S V1(0)="dwitpn dxag ly ihxt qihxk"
 S V1(1)="cxkxhqn"
 S V1(2)="dfie"
 S V1(3)="qxpiic"
 S V1(4)="AM.EXP"
 S V1(5)="hxk`xyi"
 S V1(7)="ixeewqic"
 S V1(8)="exhq`n"
 S V1(9)="ihipit"
 ;
 S S1=$$^W4MAIN("TMPS111") K @S1
 D VRM
 Q
 ;
IN ; 
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D KILL^%W1PRM("REPCA")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 D PUT^%W1PRM("CSRPRINT","W4LEVCSR")
 Q
 ;
HB(TX) ;
 Q $$H2U^%L1FRM(TX)
 ;
HBD(TX,LN) ;
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 I '$G(LN) S LN=$L(TX) 
 S TX=$$HBR^%L1FRM(TX,LN) 
 Q $TR(TX,TS0,TSS)
 ;
TRSP ;
 W "<tr><td colspan=""6"">&nbsp;</td></tr>"
 Q
 ;
S1(TX) ;
 N SH S SH=$O(@S1@(99999),-1)+1
 S @S1@(SH)=$J("",SM)_TX
 Q
 ;
WD() ; 
 I $$^W4TABLET=2 Q "98%" 
 Q "65%" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPEMV
W4REPEMV(MEDAT,ADDAT) ;--> MBC [ 11.05.25 19:12 ] [ 
 N PRM,ASM,FN
 K MBC
 S PRM="GetBroadcastsSummaryByDate~"_MEDAT_"~"_ADDAT
 D ^W4EMVREP(PRM)
 I $$GETP^%W1PRM("EMVREPER") G END
 ;
 I $D(MBC)>9 D
 .S ASM="" F  S ASM=$O(MBC(ASM)) Q:ASM=""  D
 ..S FN=$G(MBC(ASM,"FN")) Q:'FN
 ..S PRM="GetStatisRecord~"_FN_"~"_ASM
 ..D ^W4EMVREP(PRM)
END Q  ;
 
 
 

W4REPEZM
W4REPEZM ; [ 14.11.22 13:00 ] [ 13.11.22 19:26 ] [ 30.08.21 09:44 ] 
 N (JB,%ARG,%REM,SGYOM)
 S SET=0
 S DAT1=$G(%ARG("MEDAT"))
 S DAT2=$G(%ARG("ADDAT"))
 ;
 S LNG=$$^%W1LNG
 ;
 D COMP(DAT1,DAT2)
 ;
 I $G(%ARG("PCCSR")) D PCCSR(DAT1,DAT2) G EREP
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  D HD
  S HD=$$H2U^%L1FRM(HD)_"<br><br>"
  W "<span style=""font-size:"_$$^W3FSZ(14)_""" >"_HD_"</span>",!
   
  W "<table id=""Tbl"" width=""70%"" cellpadding=""3"">",!
   W "<tr>"
    W "<th>"
      W $$^%W1DICT("CODE")
    W "</th>"
    W "<th width=""40%"">"
      W $$^%W1DICT("NAME")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("QUANT")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("PRICE")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("TOTAL")
    W "</th>"
   W "</tr>",!
   ;
  S N1="" F  S N1=$O(@TMPML@(N1)) Q:N1=""  D
  .S A=$G(^(N1))
  .S QNML=$P(A,"\"),SUMML=$P(A,"\",2),PRCML=$P(A,"\",3)
  .Q:'QNML
  .
  .W "<tr>"
  . W "<td>"
  .  W N1
  . W "</td>" 
  .
  . W "<td>"
  .  W $$H2U^%L1FRM($G(@$$^W4GL("MLPAR")@(N1)))
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(QNML,3,3)
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(PRCML,2,2)
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(SUMML,2,2)
  . W "</td>" 
  .W "</tr>",!
  ;
  W "<tr style=""background-color:yellow;font-weight:bold"">"
   W "<td>&nbsp;</td>"
   W "<td>&nbsp;</td>"
   W "<td>"_$J(SQN,3,3)_"</td>"
   W "<td>&nbsp;</td>"
   W "<td>"_$J(SSUM,2,2)_"</td>"
   ;
  W "</tr>",!
  ;
  W "</table>",!
 W "</div>",!
 ;
EREP ;
 D S1G
 K @VRM,@TMP,@TMPML,@S1G
 Q 
 ;
 ; 
COMP(DAT1,DAT2) ; 
 S (SQN,SSUM)=0
 S VRM=$$^W4MAIN("VRM") K @VRM
 D FRMVC^W4DP1
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S TMPML=$$^W4MAIN("TMPML") K @TMPML
 S TMPS111=$$^W4MAIN("TMPS111") K @TMPS111
 ;
 S GL=$$^W4GL("MLEZM")
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S IND=N I IND>100000000 D 
 ..S IND=N-100000000
 .S @TMP@(+IND)=$G(@TMP@(+IND))+$P(A,"*")_"\"_($P($G(@TMP@(+IND)),"\",2)+$P(A,"*",2))
 ;
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N?1"K"1N.E D
 .S IND=$E(N,2,20)
 .S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 ..S M=$G(^(N1))
 ..S A=$G(@TMPML@(N1))
 ..S T=$G(@TMP@(IND))
 ..;
 ..S QNSOLD=$P(T,"\")
 ..S SUMSOLD=$P(T,"\",2)
 ..
 ..S AHML=$P(M,"\",5)
 ..I AHML S QNML=QNSOLD*$P(M,"\",4)*(100/AHML)
 ..I 'AHML S QNML=QNSOLD*$P(M,"\",4)
 ..S PRCML=$P(M,"\",6)
 ..S SUMML=QNML*PRCML
 ..
 ..S A1=$G(@TMPML@(N1))+QNML_"\"_($P($G(@TMPML@(N1)),"\",2)+SUMML)_"\"_PRCML
 ..S @TMPML@(N1)=A1
 ..
 ..S SQN=SQN+QNML
 ..S SSUM=SSUM+SUMML
 Q
 ;
 ;
PCCSR(DAT1,DAT2) ;
 N N,N1,HD,TB1,TB2,TB3,TB4,TB5,ST,ST1,QN
 D ^W4MDPPC
 ;
 D COMP(DAT1,DAT2) 
 ;
 D HD
 D S1(HD)
 D S1("")
 ;
 S TB1=8
 S TB2=24
 S TB3=9
 S TB4=8
 S TB5=9
 ;
 D HDTB
 D S1("")
 ;
 N ST,ST1
 S N1="" F  S N1=$O(@TMPML@(N1)) Q:N1=""  D
 .S ST=$G(^(N1))
 .S QN=$P(ST,"\",1) Q:'QN
 .S ST1=$$HBR^%L1FRM(N1,TB1)
 .S ST1=$$HBR^%L1FRM($G(@$$^W4GL("MLPAR")@(N1)),TB2)_"   "_ST1
 .D S1(ST1)
 .
 .S ST1=$$HBR^%L1FRM($J(QN,3,3),TB3)
 .S ST1=$$HBR^%L1FRM($P(ST,"\",3),TB4)_"   "_ST1
 .S ST1=$$HBR^%L1FRM($J($P(ST,"\",2),2,2),TB5)_"   "_ST1
 .D S1(ST1)
 .
 .S ST1="" D S1(ST1)
 D S1($$KAV)
 S ST1=$J(SSUM,TB5,2)_"   "_$J("",TB4)_"   "_$J(SQN,TB3,3)
 D S1(ST1)
 ;
 ;
 D S1G
 S N="" F  S N=$O(@S1G@(N)) Q:N=""  D
 .N TXT S TXT=$G(^(N)) D S1^W4HZTH
 ;
 I $G(PRINT),'$D(SGYOM) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 I $G(PRINT),$D(SGYOM) D PROGON^W4CUT(PRINT,"")
 Q
 ; 
 ;
HDTB ; 
 D S1($$KAV)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"CODE"),TB1)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"NAME"),TB2)_" | "_HDTB
 D S1(HDTB)
 D S1($$KAV)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"QUANT"),TB3)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"PRICE"),TB4)_" | "_HDTB
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"TOTAL"),TB5)_" | "_HDTB
 D S1(HDTB)
 D S1($$KAV)
 Q 
 ;
RKV(TX,LN) ; 
 Q $$CENTR^%L1FRM(TX,LN) 
 ; 
S1(TX) ; 
 D S1G
 N SH S SH=$O(@S1G@(99999),-1)+1
 S @S1G@(SH)=TX 
 Q
 ;
S1G() 
 S S1G=$$^W4MAIN("TMPS111")
 Q
 ;
HD ;
 I $G(%ARG("MEDAT"))=$G(%ARG("ADDAT")) D
 .S HD=$$TV^%W1DICT(LNG,"REPEZMHD1",$G(%ARG("MEDAT")))
 .S HD=$J(HD,33)
 ;
 I $G(%ARG("MEDAT"))'=$G(%ARG("ADDAT")) D
 .S HD=$$TV^%W1DICT(LNG,"REPEZMHD",$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))
 Q
 ;
KAV() ;
 Q $TR($J("",38)," ","-")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPPZM
W4REPPZM ; [ 07.01.21 12:16 ] [ 10.02.19 11:45 ] [ 25.10.17 12:12 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 D GET
 ;
 S %SCRN="W4REPPZM"
 S S4B=""
 D PC^W4DMANY
 Q
 ;
 ;
GET ;
 K @$$TMP
 D GLDEF
 ;
 K @$$^W4MAIN("TMPREPB")
 ;
 N I,N,DATMH,HZMMH,TL,SUMTL,DATTS,HZMTS,SUMTS,A,FOR,PAID
 ;
 S I=0,(SSUMPZM,SSUMTS)=0
 S MEDT=$$^%L1DC(METRH,3)
 S ADDT=$$^%L1DC(ADTRH,3)
 ;
 S VRM=$$^W4MAIN("VRM")
 K @VRM
 ;
 S N="" F  S N=$O(@GLPZM@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLPZM@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1))
 ..S DT=$S(VD=1:$$DTMH(A),1:$$DTTS(A))
 ..S DT=$TR($J(DT,5)," ",0)
 ..S @VRM@(DT_N1)=A ; -- N1 - AZMANA
 ;
 S K="" F  S K=$O(@VRM@(K)) Q:K=""  D
 .S A=$G(^(K))
 .S DTMH=$$DTMH(A)
 .S N=$E(K,6,255) Q:N=""
 .;
 .I VD=1,DTMH<MEDT!(DTMH>ADDT) Q
 .S HZKN=N
 .S CONT=$TR($G(@GLORD@(N,"PIZUIM")),"_",$C(10)) Q:CONT=""&(VD=1)
 .S DATMH=$ZD(DTMH,"DD.MM.YY")
 .S MZMN=$$GETRKV(N,"MAZMIN")
 .S DTTS=$$DTTS(A)
 .;
 .I VD=2,DTTS<MEDT!(DTTS>ADDT) Q
 .S DATTS="" I DTTS S DATTS=$ZD(DTTS,"DD.MM.YY")
 .;
 .S HZTS=$$HZTS(A)
 .S PELE=$$GETRKV(N,"PELE")
 .S CMPN=$$GETRKV(N,"COMP")
 .S CAUSE=$$GETRKV(N,"COMPENSREASON")
 .S AD=$$GETRKV(N,"COMPENSUPTO")
 .S CONT=$TR($G(@GLORD@(N,"PIZUIM")),"_",$C(10))
 .S I=I+1
 .S @$$TMP@(I)=HZKN_"\"_DATMH_"\"_MZMN_"\"_PELE_"\"_CMPN_"\"_CAUSE_"\"_CONT_"\"_AD_"\"_HZTS_"\"_DATTS
 ;
 S SQN=I
 S SUM4B=$$BG^W4MAIN("S4B")_"99999)"
 S @SUM4B=$$TV^%W1DICT($$^%W1LNG,"TOTAL")_"\"_SQN
 Q
 ;
 ;
CHKPRM(STAM) ;
 Q $$DATRNG^W4REPSCR(METRH,ADTRH)
 ;
TR ;
 Q
 ;
TDHZ ;
 N A S A=$G(@$$TMP@(BG))
 N HZ S HZ=$P(A,"\",8) Q:'HZ
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowOrder('"_HZ_"','ifr')"""
 Q
 ;
TMP(STAM) ;
 Q $$^W4MAIN("S4B")
 ;
DTMH(A) ; 
 Q +$P(A,"\") 
 ;
HZTS(A) ; 
 Q $P(A,"\",3)
 ;
DTTS(A) ; 
 N DTTS S DTTS=""
 N HZTS S HZTS=$$HZTS(A) 
 ;
 I HZTS D
 .I $$DLVWEB S DTTS=$$^%L1DC($P($$DATCB^W3HZMST(HZTS,$$^W3ORD)," "),3) Q
 .S DTTS=$$^%L1DC($$DATK^W4HZMST(HZTS),3)
 Q DTTS 
 ;
 ;
GLDEF ; 
 S GLORD=$$^W4ORD 
 I $$DLVWEB S GLORD=$$^W3ORD
 S GLPZM=$$^W4GL("W4PIZUIM") 
 I $$DLVWEB S GLPZM=$$^W4GL("W3PIZUIM") 
 Q 
 ;
DLVWEB(STAM) ;
 Q $$DLVWEB^W4DLVCSR 
 ;
GETRKV(ORD,RKV) ; 
 N A
 I RKV="MAZMIN",$$DLVWEB S RKV="MZMNM"
 I '$$DLVWEB X "S A=$$"_RKV_"^W4HZMST("_ORD_")"
 I $$DLVWEB D
 .X "S A=$$"_RKV_"^W3HZMST("_ORD_","""_$$^W3ORD_""")"
 .I RKV="MZMNM",A="" S A=$$NAME^W3HZMST(ORD,$$^W3ORD)
 Q A 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPRVH
W4REPRVH ; [ 21.11.22 11:44 ] [ 20.11.22 19:01 ] [ 14.11.22 13:00 ] 
 N (JB,%ARG,%REM,SGYOM)
 S SET=0
 S DAT1=$G(%ARG("MEDAT"))
 S DAT2=$G(%ARG("ADDAT"))
 ;
 S LNG=$$^%W1LNG
 S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 D COMP(DAT1,DAT2)
 ;
 I $G(%ARG("PCCSR")) D PCCSR(DAT1,DAT2) G EREP
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  D HD
  S HD=$$H2U^%L1FRM(HD)_"<br><br>"
  W "<span style=""font-size:"_$$^W3FSZ(14)_""" >"_HD_"</span>",!
   
  W "<table id=""Tbl"" width=""70%"" cellpadding=""3"">",!
   W "<tr>"
    W "<th>"
      W $$^%W1DICT("CODE")
    W "</th>"
    W "<th width=""40%"">"
      W $$^%W1DICT("NAME")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("QUANT")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("PRICE")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("TOTAL")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("ALUT")
    W "</th>"
    W "<th width=""15%"">"
      W $$^%W1DICT("PROFIT")
    W "</th>"
   W "</tr>",!
   ;
  S (SQN,SSUM,SCOST)=0
  S N1="" F  S N1=$O(@TMP@(N1)) Q:N1=""  D
  .S A=$G(^(N1))
  .S QN=$P(A,"\"),SUM=$P(A,"\",2),COST=$P(A,"\",3)
  .Q:'QN
  . 
  .S PRC=$$MH^W4P(N1)
  .S SQN=SQN+QN,SSUM=SSUM+SUM,SCOST=SCOST+COST
  .
  .W "<tr>"
  . W "<td>"
  .  W N1
  . W "</td>" 
  .
  . W "<td>"
  .  W $$H2U^%L1FRM($$SHEM^W4P(N1))
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(QN,3,3)
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(PRC,2,2)
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(SUM,2,2)
  . W "</td>" 
  .
  . W "<td>"
  .  W $J(COST,2,2)
  . W "</td>" 
  .
  . W "<td>"
  .  N RZN S RZN="&nbsp;" 
  .  I COST S RZN=$J(SUM-COST,2,2)
  .  W RZN
  . W "</td>" 
  .W "</tr>",!
  ;
  W "<tr style=""background-color:yellow;font-weight:bold"">"
   W "<td>&nbsp;</td>"
   W "<td>&nbsp;</td>"
   W "<td>"_$J(SQN,3,3)_"</td>"
   W "<td>&nbsp;</td>"
   W "<td>"_$J(SSUM,2,2)_"</td>"
   W "<td>"_$J(SCOST,2,2)_"</td>"
   S RZN="&nbsp;"
   I SCOST S RZN=$J(SSUM-SCOST,2,2)_"</td>"
   W "<td>"_RZN_"</td>"
   ;
  W "</tr>",!
  ;
  W "</table>",!
 W "</div>",!
EREP ;
 D S1G
 K @TMP,@S1G
 Q 
 ;
 ; 
COMP(DAT1,DAT2) ; 
 N (JB,%ARG,DAT1,DAT2,SQN,SSUM,SCOST,SET)
 S VRM=$$^W4MAIN("VRM") K @VRM
 D FRMVC^W4DP1
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S TMPS111=$$^W4MAIN("TMPS111") K @TMPS111
 ;
 S GL=$$^W4GL("MLEZM")
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S IND=N I IND>100000000 D 
 ..S IND=N-100000000
 .S IND=+IND
 .S @TMP@(IND)=$G(@TMP@(IND))+$P(A,"*")_"\"_($P($G(@TMP@(IND)),"\",2)+$P(A,"*",2))
 ;
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N?1"K"1N.E D
 .S IND=$E(N,2,20),SUMML=0
 .S T=$G(@TMP@(IND))
 .
 .S SUMML=$$COST(IND)*+T
 .I +T S $P(@TMP@(IND),"\",3)=SUMML
 ;
 K @VRM
 Q
 ;
 ;
PCCSR(DAT1,DAT2) ;
 N N,N1,HD,TB1,TB2,TB3,TB4,TB5,ST,ST1,QN,SUM,COST,PRC
 D ^W4MDPPC
 ;
 S (SQN,SSUM,SCOST)=0
 D COMP(DAT1,DAT2) 
 ;
 D HD
 D S1(HD)
 D S1("")
 ;
 S TB1=8
 S TB2=24
 S TB3=8
 S TB4=7
 S TB5=8
 S TB6=8
 ;
 D HDTB
 D S1("")
 ;
 N ST,ST1
 S N1="" F  S N1=$O(@TMP@(N1)) Q:N1=""  D
 .S ST=$G(^(N1))
 .S QN=$P(ST,"\",1) Q:'QN
 .S SUM=$J($P(ST,"\",2),2,2)
 .S PRC=$J($$MH^W4P(N1),2,2)
 .S COST=$J($P(ST,"\",3),2,2)
 .S SQN=SQN+QN
 .S SSUM=SSUM+SUM
 .S SCOST=SCOST+COST
 .
 .S ST1=$$HBR^%L1FRM(N1,TB1)
 .S ST1=$$HBR^%L1FRM($$SHEM^W4P(N1),TB2)_"   "_ST1
 .;
 .D S1(ST1)
 .
 .S ST1=$$HBR^%L1FRM($J(QN,3,3),TB3)
 .S ST1=$$HBR^%L1FRM(PRC,TB4)_"   "_ST1
 .S ST1=$$HBR^%L1FRM($J(SUM,2,2),TB5)_"   "_ST1
 .S ST1=$$HBR^%L1FRM($J(COST,2,2),TB6)_"   "_ST1
 .;
 .D S1(ST1)
 .
 .S ST1="" D S1(ST1)
 ;
 D S1($$KAV)
 S ST1=$J(SCOST,TB6,2)_"   "_$J(SSUM,TB5,2)_"   "_$J("",TB4)_"   "_$J(SQN,TB3,3)
 D S1(ST1)
 ;
 ;
 D S1G
 ;
 S N="" F  S N=$O(@S1G@(N)) Q:N=""  D
 .N TXT S TXT=$G(^(N)) D S1^W4HZTH
 ;
 I $G(PRINT) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ; 
 ;
HDTB ; 
 D S1($$KAV)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"CODE"),TB1)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"NAME"),TB2)_" | "_HDTB
 D S1(HDTB)
 D S1($$KAV)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"QUANT"),TB3)
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"PRICE"),TB4)_" | "_HDTB
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"TOTAL"),TB5)_" | "_HDTB
 S HDTB=$$RKV($$TV^%W1DICT(LNG,"ALUT"),TB6)_" | "_HDTB
 D S1(HDTB)
 D S1($$KAV)
 Q 
 ;
RKV(TX,LN) ; 
 Q $$CENTR^%L1FRM(TX,LN) 
 ; 
S1(TX) ; 
 D S1G
 N SH S SH=$O(@S1G@(99999),-1)+1
 S @S1G@(SH)=TX 
 Q
 ;
S1G() 
 S S1G=$$^W4MAIN("TMPS111")
 Q
 ;
HD ;
 I $G(%ARG("MEDAT"))=$G(%ARG("ADDAT")) D
 .S HD=$$TV^%W1DICT(LNG,"REPRVHHD1",$G(%ARG("MEDAT")))
 .S HD=$J(HD,33)
 ;
 I $G(%ARG("MEDAT"))'=$G(%ARG("ADDAT")) D
 .S HD=$$TV^%W1DICT(LNG,"REPRVHHD",$G(%ARG("MEDAT"))_"<>"_$G(%ARG("ADDAT")))
 Q
 ;
KAV() ;
 Q $TR($J("",38)," ","-")
 ;
 ;
COST(IND) ;
 N N,N1,M,AHML,QNML,PRCML,SUMML
 ;
 S SUMML=0
 S N="K"_IND
 S N1="" F  S N1=$O(@GL@(N,N1)) Q:N1=""  D
 .S M=$G(^(N1))
 .;
 .S AHML=$P(M,"\",5)
 .I AHML S QNML=$P(M,"\",4)*(100/AHML)
 .I 'AHML S QNML=$P(M,"\",4)
 .S PRCML=$P(M,"\",6)
 .S SUMML=SUMML+(QNML*PRCML)
 ;
 Q SUMML
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPSC0
W4REPSCR(STAM) ; [ 11.09.13 15:09 ] [ 23.05.13 07:36 ] [ 05.12.12 11:33 ]
 Q "^[$$^W3MAIN]W4REPSCR"
 ;
REPST(REPN) Q:$G(REPN)=""
 S ST=$G(@$$^W4REPSCR@(REPN))
 Q
 ;
PRS(PRM) ;
 N A,B,I,COUP
 F I=1:1:$L(PRM,";") D
 .S COUP=$P(PRM,";",I)
 .S A=$P(COUP,"=") Q:A=""
 .S B=$P(COUP,"=",2)
 .S @A=B
 Q
 ;
REPNAME(REPN)
 I $G(REPN)="" Q ""
 N ST D REPST(REPN)
 D PUT^%W1PRM("REPNAME",$P(ST,";"))
 Q $$^%W1DICT($P(ST,";"))
 ;
CHKPRM(PRM) ;
 N (PRM,JB,%ARG,%REM)
 D PUT^%W3DEB("W4REPSCR-CHKPRM","PRM=PRM")
 S REPN=$P(PRM,";")
 I REPN["=" S REPN=$P(REPN,"=",2)
 I $G(REPN)="" Q 1
 ;
 D PRS($P(PRM,";",2,255))
 S OU=1
 ;
 N ST D REPST(REPN)
 S CHKPROG=$P(ST,";",2)
 I CHKPROG="" Q 1
 ;
 Q @CHKPROG
 ;
 ;
SCR(REPN) ;
 N ST,SCR D REPST(REPN)
 S SCR=$P(ST,";",3)
 I $E(SCR,1,2)'="$$" Q SCR
 ;
 Q @SCR
 ;
PROG(REPN) ;
 N ST,PROG D REPST(REPN)
 S PROG=$P(ST,";",4)
 I PROG="" Q
 I PROG'["^" S PROG="^"_PROG
 D @PROG
 Q
 ;
DATVLD(DAT) ;
 I '$$^%L1DC(DAT,3) Q "dd"
 I $E(DAT,1,2)<1 Q "dd"
 I $E(DAT,1,2)>31 Q "dd"
 I $E(DAT,1,2)'?2N Q "dd"
 I $E(DAT,4,5)>12 Q "mm"
 I $E(DAT,4,5)<1 Q "mm"
 I $E(DAT,4,5)'?2N Q "mm"
 I $E(DAT,7,8)'?2N Q "yy"
 Q 1
 ;
SORT(REPN) ;
 N NOM S NOM=$$GET^%W1PRM("CURSORT")
 I 'NOM D PROG(REPN) Q
 D SORT^%W1FREP($$SCR(REPN),NOM)
 S %SCRN=$$SCR(REPN)
 D PC2^W4DMANY
 Q

W4REPSCR
W4REPSCR(STAM) ; [ 28.07.16 13:11 ] [ 06.12.15 08:49 ] [ 12.06.15 19:25 ] 
 Q "^[$$^W3MAIN]W4REPSCR"
 ;
REPST(REPN) Q:$G(REPN)=""
 S ST=$G(@$$^W4REPSCR@(REPN))
 Q
 ;
PRS(PRM) ;
 N A,B,I,COUP
 F I=1:1:$L(PRM,";") D
 .S COUP=$P(PRM,";",I)
 .S A=$P(COUP,"=") Q:A=""
 .S B=$P(COUP,"=",2)
 .S @A=B
 Q
 ;
REPNAME(REPN)
 I $G(REPN)="" Q ""
 N ST D REPST(REPN)
 D PUT^%W1PRM("REPNAME",$P(ST,";"))
 Q $$^%W1DICT($P(ST,";"))
 ;
CHKPRM(PRM) ;
 N (PRM,JB,%ARG,%REM)
 D PUT^%W3DEB("W4REPSCR-CHKPRM","PRM=PRM")
 S REPN=$P(PRM,";")
 I REPN["=" S REPN=$P(REPN,"=",2)
 I $G(REPN)="" Q 1
 ;
 D PRS($P(PRM,";",2,255))
 S OU=1
 ;
 N ST D REPST(REPN)
 S CHKPROG=$P(ST,";",2)
 I CHKPROG="" Q 1
 ;
 Q @CHKPROG
 ;
 ;
SCR(REPN) ;
 N ST,SCR D REPST(REPN)
 S SCR=$P(ST,";",3)
 I $E(SCR,1,2)'="$$" Q SCR
 ;
 Q @SCR
 ;
 ;
PROG(JB) ;
 I '$G(JB) Q
 K %ARG M %ARG=^[$$^W3MAIN]TMPSCR(JB,"ARG")
 ;;K ^[$$^W3MAIN]TMPSCR(JB,"ARG")
 N REPN S REPN=$G(%ARG("REPN")) Q:REPN=""
 D PUT^%W1PRM(REPN,0)
 N ST,PROG D REPST(REPN)
 ;
 S ST=$G(ST)
 S PROG=$P(ST,";",4)
 I PROG="" Q
 I PROG'["^" S PROG="^"_PROG
 ;
 D @PROG
 ;
 D PUT^%W1PRM(REPN,1)
 Q
 ;
 ;
DATRNG(DAT1,DAT2) ;
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 Q 1
 ;
DATVLD(DAT) ;
 I '$$^%L1DC(DAT,3) Q "dd"
 I $E(DAT,1,2)<1 Q "dd"
 I $E(DAT,1,2)>31 Q "dd"
 I $E(DAT,1,2)'?2N Q "dd"
 I $E(DAT,4,5)>12 Q "mm"
 I $E(DAT,4,5)<1 Q "mm"
 I $E(DAT,4,5)'?2N Q "mm"
 I $E(DAT,7,8)'?2N Q "yy"
 Q 1
 ;
SORT(REPN) ;
 K %ARG M %ARG=^[$$^W3MAIN]TMPSCR(JB,"ARG")
 N NOM S NOM=$$GET^%W1PRM("CURSORT")
 ;;I 'NOM D PROG(REPN) Q
 I NOM'="" D SORT^%W1FREP($$SCR(REPN),NOM)
 S %SCRN=$$SCR(REPN)
 D PC2^W4DMANY
 K ^[$$^W3MAIN]TMPSCR(JB,"ARG")
 Q
 
 

W4REPSHV
W4REPSHV(PRM) ; ----  SHIDUR SHVA DETAILS [ 18.06.26 11:09 ] [ 07.06.26 11:28 ] [ 04.06.26 15:24 ] 
 N (JB,%ARG,%REM,PRM)
 ;
 ;;S ^AA("W4REPSHV","PRM")=PRM
 D CR(PRM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 D DIVBTN
 ;
 W "<table width=""100%"">",!
  W "<tr>",!
   W "<td width=""6%"" align=""center"">",!
     W "<img id=""calcid"" src=""w3calc.jpg"" alt=""Calculator"" onClick=""BOCalc('','','1')"" style=""cursor:pointer"" />",!
   W "</td>"
   W "<td width=""6%"">"
    W "<img id=""findid"" src=""w4find.png"" alt=""Find"" onClick=""BOSearch('','','1')"" style=""cursor:pointer"" />",!
   W "</td>"
   W "<td width=""10%"">&nbsp;</td>"
   W "<td style=""text-align:center;font-size:"_$$^W3FSZ(16)_";width:60%"">"_$$H2U^%L1FRM(KOT)
   W "</td>"
   W "<td width=""10%"">&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 ;
 ;;I $$NOSND^W4SNDEMV D RKZSHVA G END; -- 06/08/25
 I $$EMV4^W4SNDEMV,'$$OLDSND4^W4SNDEMV D RKZSHVA G END
 ;
 S AFTER=(PRM?1N.N)
 I AFTER D RKZSHVA
 I 'AFTER D LISTSHVA
 W "<br /><br >",!
 ;
 D CR(PRM)
 I AFTER D LISTSHVA
 I 'AFTER D RKZSHVA
END ;
 W "<br /><br >",!
 D DIVBTN
 Q
 ;
 ;
DIVBTN
 W " <div id=""divbut"" align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" >"
 W " <tr>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("Print",$$^%W1DICT("BIGPRINT"),"Print()","color:green",",,,160")
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("CSRPrint",$$^%W1DICT("CSRPRINT"),"CSRPrint('"_$G(ASM)_"','"_$P($G(ZMAN)," ")_"')","color:darkgreen",",,,160")
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red",",,,60")
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 W " </div>",!
 W "</div>",!
 ;
 Q
 ;
 ;
CR(PRM) ;
 K @$$^W4MAIN("TMPREP")
 ;
 S (SHHB,SHHK,SIHB,SIHK,SVHB,SVHK,SDHB,SDHK,SAHB,SAHK,SJHB,SJHK,SLHB,SLHK,SKHB,SKHK,SFHB,SFHK)=0
 S (SHZB,SHZK,SIZB,SIZK,SVZB,SVZK,SDZB,SDZK,SAZB,SAZK,SJZB,SJZK,SLZB,SLZK,SKZK,SKZB,SKZK,SFZB,SFZK)=0
 ;
 S KOT=" xeciyl zepken `ay zerepz "
 ;
 ;;I $$NOSND^W4SNDEMV D  Q  ; -- PELECARD ; -- 06/08/25
 I $$EMV4^W4SNDEMV&'$$OLDSND4^W4SNDEMV D  Q  ; -- PELECARD
 .I $G(PRM)="" Q
 .D GETDMP^W4EMVREP(PRM); --> MBC
 .D SETDMPPC^W4EMVREP(PRM)
 .S ZMAN=$G(MBC(PRM,"DAT"))_" "_$G(MBC(PRM,"TIME"))
 .S KOT=" "_PRM_" `zknq`  "_ZMAN_" -a "_$G(@$$^W4PRM@("ASH","MASOF"))
 .S KOT=KOT_" seqnn exceyy `ay zerepz zniyx "
 .N N S N="" F  S N=$O(MBC(PRM,N)) Q:N=""  S @N=MBC(PRM,N)
 .S SHHB=$G(MBC(PRM,"SUMH"))
 .S SHZB=$G(MBC(PRM,"SUMZ"))
 .S INDMP=PRM
 .S ASM=PRM
 ;
 S GLOB=$$^W4GL("TRAN")
 S OK=1
 S (IND,INDMP)=0
 ;
 I PRM?1N.N D
 .S INDMP=$P($G(@($$^W4GL("TRANL")_"(""ASM"","""_PRM_""")")),"^") ; IND V DUMP
 .S IND=$P($G(@($$^W4GL("TRANL")_"(""ASM"","""_PRM_""")")),"^",2) ; IND V TRANL
 .;;S ^LV("W4REPSHV","IND")=IND
 .;;S ^LV("W4REPSHV","INDMP")=INDMP
 .I 'IND S IND=$O(@GLOB@(9999999),-1)
 .I 'IND S IND=0
 .S GLOB=$$^W4GL("TRANL")_"("_IND_")"
 ;
 I GLOB["TRANL" D
 .S ASM=$P($G(@GLOB),"^",10)
 .S KVZ=$P($G(@GLOB),"^",8)
 .S ZMAN=$P($G(@GLOB),"^",11)
 .I ZMAN[":" D
 ..S KOT=" "_ASM_" `zknq`  "_ZMAN_" -a "_$G(@$$^W4PRM@("ASH","MASOF"))
 ..S KOT=KOT_" seqnn exceyy `ay zerepz zniyx "
 ;
 I $G(PRM)'=0 D CRTMP(GLOB)
 Q
 ;
 ;
CRTMP(GLOB) ;
 N N,N1,I,A,CARD,SID,MG,HEV,HEV1,SUM,SUM1,SUM2,ISKA,KOHAV,TS
 ;
 S N="",I=0 F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLOB@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1)) S SID=$E(A,1,6)
 ..I $L(A)>200 Q
 ..
 ..S CARD=$P($E(A,32,50),"="),MG=$E(A,32,68)
 ..I (($E(MG,1,2)="12")!($E(MG,1,2)="20")!($E(MG,1,2)="31")),$E(MG,18)="=" D
 ...S CARD=$E(MG,37)_$E(MG,20,27) ;****10.04
 ..S CARD=$E(CARD,$L(CARD)-15,255)
 ..
 ..S HEV=$E(A,69)
 ..S HEV1=$S(HEV=1:"yi",HEV=2:"ie",HEV=3:"ic",HEV=4:"n`",HEV=5:"JC",HEV=6:"nl",1:"")
 ..S SUM=$J($TR($E(A,12,19)," ","")*.01,2,2)
 ..S KOHAV=$J($TR($E(A,20,27)," ","")*.01,2,2)
 ..S TS=+$TR($E(A,114,116)," ","") S:'TS TS=""
 ..S SUM1=+$TR($E(A,98,105)," ","") S:'SUM1 SUM1=""
 ..S SUM2=+$TR($E(A,106,113)," ","") S:'SUM2 SUM2=""
 ..S ISKA=$E(A,7,8)
 ..
 ..I ISKA<50 S SHHB=SHHB+SUM,SHHK=SHHK+KOHAV D
 ...I HEV=1 S SIHB=SIHB+SUM,SIHK=SIHK+KOHAV
 ...I HEV=2 S SVHB=SVHB+SUM,SVHK=SVHK+KOHAV
 ...I HEV=3 S SDHB=SDHB+SUM,SDHK=SDHK+KOHAV
 ...I HEV=4 S SAHB=SAHB+SUM,SAHK=SAHK+KOHAV
 ...I HEV=5 S SJHB=SJHB+SUM,SJHK=SJHK+KOHAV
 ...I HEV=6 S SLHB=SLHB+SUM,SLHK=SLHK+KOHAV
 ...I HEV=7 S SKHB=SKHB+SUM,SKHK=SKHK+KOHAV
 ...I HEV=9 S SFHB=SFHB+SUM,SFHK=SFHK+KOHAV
 ..
 ..I ISKA>50 S SHZB=SHZB+SUM,SHZK=SHZK+KOHAV D
 ...I HEV=1 S SIZB=SIZB+SUM,SIZK=SIZK+KOHAV
 ...I HEV=2 S SVZB=SVZB+SUM,SVZK=SVZK+KOHAV
 ...I HEV=3 S SDZB=SDZB+SUM,SDZK=SDZK+KOHAV
 ...I HEV=4 S SAZB=SAZB+SUM,SAZK=SAZK+KOHAV
 ...I HEV=5 S SJZB=SJZB+SUM,SJZK=SJZK+KOHAV
 ...I HEV=6 S SLZB=SLZB+SUM,SLZK=SLZK+KOHAV
 ...I HEV=7 S SKZB=SKZB+SUM,SKZK=SKZK+KOHAV
 ...I HEV=9 S SFZB=SFZB+SUM,SFZK=SFZK+KOHAV
 ..
 ..Q:$D(W4RKZSHD)
 ..
 ..N FULL S FULL=1
 ..N PSW5 S PSW5=$G(@$$^W4PRM@("PSW5"))
 ..I $$PAPJ^W4PRM,$$GETP^%W1PRM("LASTPSW")'=PSW5 S FULL=0
 ..
 ..S MB=$E(A,28) S MB1=$S(MB=1:"y",MB=2:"c",MB=4:"cv",MB=5:"nv",1:"  ")
 ..S ISKA1=$S(ISKA="00":"meqg",ISKA="01":"bx eg",ISKA="02":"yn eg",ISKA="03":"ln eg",ISKA="51":"bx kf",ISKA="52":"hia",ISKA=53:"yn kf",1:"")
 ..S ISKA1=$S($E(A,9,10)="50":"lh",$E(A,9,10)="51":"ag",1:"")_" "_ISKA1
 ..S SUMCA=SUM
 ..I ISKA>50 S SUMCA=-SUM
 ..I 'FULL S CARD="..."_$E(CARD,$L(CARD)-3,$L(CARD))
 ..S ST=SID_"\"_CARD_"\"_HEV1_"\"_SUMCA_"\"_KOHAV_"\"_ISKA1_"\"_$E(A,29)_"\"_TS_"\"_(SUM1*.01)_"\"_(SUM2*.01)_"\"_MB1
 ..S I=I+1
 ..S @$$^W4MAIN("TMPREP")@("G",I)=ST
 Q
 ;
RKZSHVA ;
 S %SCRN="W4REPSHV"
 ;
 I $G(INDMP),$D(@$$^W4GL("DUMP")@(INDMP,"PC"))>9 D
 .S %SCRN="W4REPEMV"
 .K @$$^W4MAIN("TMPREP")@("G")
 .N N,I,ST
 .S I=0,N="" F  S N=$O(@$$^W4GL("DUMP")@(INDMP,"PC",N)) Q:N=""  I N D
 ..S ST=$G(^(N))
 ..S I=I+1 
 ..S @$$^W4MAIN("TMPREP")@("G",I)=$J(ST,40)
 ;
 S %ARG("NONEXTPG")=1
 D PC1^W4DMANY
 Q
 ;
LISTSHVA ;
 S %SCRN="W4REPSHD"
 D PC1^W4DMANY
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPTL
W4REPTL ; [ 16.01.16 16:05 ] [ 15.01.16 17:02 ] [ 20.07.15 08:42 ]
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 ;
 S VD=$S(VD=1:"dxikn jix`z itl",1:"melyz jix`z itl")
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
 ;
GET ;
 N TMP S TMP=$$^W4MAIN("TMPREP")
 K @TMP
 ;
 K @$$^W4MAIN("TMPREPB")
 ;
 N I,N,DATMH,HZMMH,TL,SUMTL,DATTS,HZMTS,SUMTS,A,FOR,PAID
 ;
 S I=0,(SSUMTL,SSUMTS)=0
 S MEDT=$$^%L1DC(METRH,3)
 S ADDT=$$^%L1DC(ADTRH,3)
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("CB",N)) Q:N=""  D
 .N LK S LK=$G(^(N)) Q:LK=""
 .S A=$G(@$$GLCB^W4CBGET(LK,N))
 .S FOR=$G(^(N,"FOR")) Q:FOR=""
 .S DATMH=""
 .N DATMH S DATMH=$$DAT^W4LCBCR(N) ; -- TAARIH AFAKAT TLUSH
 .N DTMH S DTMH=$$^%L1DC(DATMH,4)
 .I VD=1,DTMH<MEDT!(DTMH>ADDT) Q
 .S SUMTL=$$TOT^W4LCBCR(N)
 .S PAID=""
 .
 .I $D(@$$GLCB^W4CBGET(LK,N)@("PAID"))=1 D
 ..S PAID=$G(^("PAID"))
 ..S HZMTS=$P(PAID,"\",1)
 ..S SUMTS=$P(PAID,"\",2)
 ..
 .I $D(@$$GLCB^W4CBGET(LK,N)@("PAID"))>9 D
 ..S PAID=$G(@$$GLCB^W4CBGET(LK,N)@("PAID",1))
 ..S HZMTS=$P(PAID,"\",1)
 ..S SUMTS=$P(PAID,"\",2)
 .
 .S LK1=$G(@$$GLCB^W4CBGET(LK,N)@("LKHNAME"))
 .S SSUMTL=SSUMTL+SUMTL
 .N DTTS S DTTS=$P(PAID,"\",3)
 .I VD=2,DTTS<$$^%L1DC(METRH,3)!(DTTS>$$^%L1DC(ADTRH,3)) Q
 .S DATTS="" I DTTS S DATTS=$$^%L1DC(DTTS,1)
 .S HZMTS=$P(PAID,"\",1)
 .S SUMTS=$J($P(PAID,"\",2),2,2)
 .S SSUMTS=SSUMTS+SUMTS
 .S I=I+1,@TMP@("G",I)=N_"\"_$$^%L1DC(DATMH,1)_"\"_LK_"\"_LK1_"\"_FOR_"\"_SUMTL_"\"_DATTS_"\"_HZMTS_"\"_SUMTS
 .
 .S N1="" F  S N1=$O(@$$GLCB^W4CBGET(LK,N)@("TLMN",N1)) Q:N1=""  D
 ..S B=$G(^(N1))
 ..S SUMTL1=$J($P(B,"\"),2,2)
 ..S DATMH1=$P(B,"\",2)
 ..S HZMTS1=$P(B,"\",4)
 ..S SUMTS1=$J($P(B,"\",5),2,2)
 ..S DATTS1=$P(B,"\",6)
 ..S I=I+1,@TMP@("G",I)=(N_"-"_N1)_"\"_$$^%L1DC(DATMH1,1)_"\"_LK_"\"_LK1_"\"_FOR_"\[ "_SUMTL1_" ]\"_DATTS1_"\"_HZMTS1_"\"_SUMTS1
 ;
 S N="" F  S N=$O(@$$^W4GL("W4TLMTN")@(N)) Q:N=""  D
 .S DTMH=$$DTMH^W4TLMTN(N)
 .S LK=$$PAYERTEL^W4TLMTN(N)
 .S LK1=$$PAYERNAME^W4TLMTN(N)
 .S RCP=$$RCP^W4TLMTN(N)
 .S SUMTL=$J($$SUM^W4TLMTN(N),2,2)
 .I $$ODEFFROM^W4TLMTN(N) S SUMTL="[ "_SUMTL_" ]"
 .S DATTS=$$^%L1DC($$DTTS^W4TLMTN(N))
 .S HZMTS=$$HZMPAID^W4TLMTN(N)
 .S SUMTS=$$PAID^W4TLMTN(N)
 .S I=I+1
 .S @TMP@("G",I)=N_"\"_$$^%L1DC(DTMH,1)_"\"_LK_"\"_LK1_"\"_RCP_"\"_SUMTL_"\"_DATTS_"\"_HZMTS_"\"_SUMTS
 Q
 ;
 ;
CHKPRM(STAM) ;
 Q $$DATRNG^W4REPSCR(METRH,ADTRH)
 ;
SCRN(STAM) ;
 Q "W4REPTL"
 ;
TR ;
 Q
 ;
TDCB ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N CB S CB=$P(A,"\") Q:'CB
 N LK S LK=$G(@$$^W4GL("KLIN")@("CB",CB)) Q:LK=""
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowReceipt('"_CB_"','"_LK_"','ifr')"""
 Q
 ;
TDHZ ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HZ S HZ=$P(A,"\",8) Q:'HZ
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowOrder('"_HZ_"','ifr')"""
 Q
 
 
 
 

W4REPTL1
W4REPTL1 ; [ 06.04.23 18:45 ] [ 02.03.22 16:57 ] [ 12.09.21 13:17 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 D GET
 ;
 S %SCRN="W4REPTL1"
 S S4B=""
 D PC^W4DMANY
 Q
 ;
 ;
GET ;
 K @$$TMP
 ;
 K @$$^W4MAIN("TMPREPB")
 ;
 N I,N,DATMH,HZMMH,TL,SUMTL,DATTS,HZMTS,SUMTS,A,FOR,PAID
 ;
 S I=0,(SSUMTL,SSUMTS)=0
 S MEDT=$$^%L1DC(METRH,3)
 S ADDT=$$^%L1DC(ADTRH,3)
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("CB",N)) Q:N=""  D
 .I $G(METL),N<METL Q 
 .I $G(ADTL),N>ADTL Q 
 .N LK S LK=$G(^(N)) Q:LK=""
 .S A=$G(@$$GLCB^W4CBGET(LK,N))
 .S FOR=$G(^(N,"FOR")) Q:FOR=""
 .S DATMH=""
 .N DATMH S DATMH=$$DAT^W4LCBCR(N) ; -- TAARIH AFAKAT TLUSH
 .N DTMH S DTMH="" I DATMH S DTMH=$$^%L1DC(DATMH,4)
 .I VD=1,DTMH<MEDT!(DTMH>ADDT) Q
 .S SUMTL=$$TOT^W4LCBCR(N)
 .S PAID=""
 .
 .I $D(@$$GLCB^W4CBGET(LK,N)@("PAID"))=1 D
 ..S PAID=$G(^("PAID"))
 ..S HZMTS=$P(PAID,"\",1)
 ..S SUMTS=$P(PAID,"\",2)
 ..
 .I $D(@$$GLCB^W4CBGET(LK,N)@("PAID"))>9 D
 ..S PAID=$G(@$$GLCB^W4CBGET(LK,N)@("PAID",1))
 ..S HZMTS=$P(PAID,"\",1)
 ..S SUMTS=$P(PAID,"\",2)
 .
 .S LK1=$G(@$$GLCB^W4CBGET(LK,N)@("LKHNAME"))
 .N DTTS S DTTS=$P(PAID,"\",3)
 .I VD=2,DTTS<MEDT!(DTTS>ADDT) Q
 .S DATTS="" I DTTS S DATTS=$$^%L1DC(DTTS,1)
 .S HZMTS=$P(PAID,"\",1)
 .S SUMTS=$J($P(PAID,"\",2),2,2)
 .S SSUMTS=SSUMTS+SUMTS
 .S SSUMTL=SSUMTL+SUMTL
 .S I=I+1,@$$TMP@(I)=N_"\\"_$$^%L1DC(DATMH,1)_"\"_LK_"\"_LK1_"\"_FOR_"\"_SUMTL_"\"_HZMTS_"\"_DATTS_"\"_SUMTS
 .
 .S N1="" F  S N1=$O(@$$GLCB^W4CBGET(LK,N)@("TLMN",N1)) Q:N1=""  D
 ..S B=$G(^(N1))
 ..I $G(METL),N1<METL Q 
 ..I $G(ADTL),N1>ADTL Q 
 ..S SUMTL1=$J($P(B,"\"),2,2)
 ..S DATMH1=$P(B,"\",2)
 ..S DTMH1="" I DATMH1 S DTMH1=$$^%L1DC(DATMH1,3)
 ..I VD=1,DTMH1<MEDT!(DTMH1>ADDT) Q
 ..S HZMTS1=$P(B,"\",4)
 ..S SUMTS1=$J($P(B,"\",5),2,2)
 ..S SSUMTS=SSUMTS+SUMTS1
 ..S DATTS1=$P(B,"\",6)
 ..S DTTS1="" I DATTS1 S DTTS1=$$^%L1DC(DATTS1,3)
 ..I VD=2,DTTS1<MEDT!(DTTS1>ADDT) Q
 ..S I=I+1,@$$TMP@(I)=(N_"-"_N1)_"\\"_$$^%L1DC(DATMH1,1)_"\"_LK_"\"_LK1_"\"_FOR_"\[ "_SUMTL1_" ]\"_HZMTS1_"\"_DATTS1_"\"_SUMTS1_"\"_N_$S(N1>1:"-"_(N1-1),1:"")
 ;
 D CRTMPTLM(VD,MEDT,ADDT)
 ;
 S SQN=I
 ;
 S SUM4B=$$BG^W4MAIN("S4B")_"99999)"
 S @SUM4B=$$H2U^%L1FRM(SQN_" : miyelz k""dq")_"\\\\\\"_$J(SSUMTL,2,2)_"\\\"_$J(SSUMTS,2,2)_"\"
 Q
 ;
 ;
CHKPRM(STAM) ;
 Q $$DATRNG^W4REPSCR(METRH,ADTRH)
 ;
TR ;
 Q
 ;
TDCB ;
 N A S A=$G(@$$TMP@(BG))
 N CB S CB=$P(A,"\") Q:'CB
 N LK S LK=$G(@$$^W4GL("KLIN")@("CB",CB)) Q:LK=""
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowReceipt('"_CB_"','"_LK_"','ifr')"""
 Q
 ;
TDHZ ;
 N A S A=$G(@$$TMP@(BG))
 N HZ S HZ=$P(A,"\",8) Q:'HZ
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 W " onClick=""ShowOrder('"_HZ_"','ifr')"""
 Q
 ;
TMP(STAM) ;
 Q $$^W4MAIN("S4B")
 ;
 ;
CRTMPTLM(VD,MEDT,ADDT)
 N (JB,%ARG,%REM,VD,MEDT,ADDT,METL,ADTL,I,SSUMTL,SSUMTS,NOTLMTS)
 S N="" F  S N=$O(@$$^W4GL("W4TLMTN")@(N)) Q:N=""  D
 .I $G(METL),N<METL Q 
 .I $G(ADTL),N>ADTL Q 
 .S DTMH=$$DTMH^W4TLMTN(N)
 .I VD=1,N>0,DTMH<MEDT!(DTMH>ADDT) Q  ; -- LEFI TAARIH REHISHA
 .S HZMKN=$$HZM^W4TLMTN(N)
 .S LK=$$PAYERTEL^W4TLMTN(N)
 .S LK1=$$PAYERNAME^W4TLMTN(N)
 .S RCP=$$RCP^W4TLMTN(N)
 .S ODEFFROM=$$ODEFFROM^W4TLMTN(N)
 .S SUMTL=$J($$SUM^W4TLMTN(N),2,2)
 .I ODEFFROM S SUMTL="[ "_SUMTL_" ]"
 .S DTTS=$$DTTS^W4TLMTN(N)
 .I VD=2,DTTS<MEDT!(DTTS>ADDT) Q  ; -- LEFI TAARIH MIMUSH
 .I VD=1,N<0,DTTS<MEDT!(DTTS>ADDT) Q  ; -- LEFI TAARIH REHISHA
 .S SSUMTL=$G(SSUMTL)+SUMTL
 .S DATTS=""
 .I DTTS S DATTS=$$^%L1DC(DTTS,1)
 .S HZMTS=$$HZMPAID^W4TLMTN(N)
 .S SUMTS=$$PAID^W4TLMTN(N)
 .I DTTS!SUMTS!'$$SUM^W4TLMTN(N),$D(NOTLMTS) Q
 .S SSUMTS=$G(SSUMTS)+SUMTS
 .S I=$G(I)+1
 .N DATMH S DATMH="" I DTMH S DATMH=$$^%L1DC(DTMH,1)
 .S @$$TMP@(I)=$TR(N,"-","")_"\"_HZMKN_"\"_DATMH_"\"_LK_"\"_LK1_"\"_RCP_"\"_SUMTL_"\"_HZMTS_"\"_DATTS_"\"_SUMTS_"\"_ODEFFROM
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REPTRH
W4REPTRH ; [ 11.10.21 08:48 ] [ 09.09.21 11:39 ] [ 14.08.20 08:27 ] 
 N (JB,%ARG,%REM)
 I $G(%ARG("SHOW"))=0 Q
 I '$D(%ARG("MEDAT"))!'$D(%ARG("ADDAT")) W "A RANGE NOT DEFINED !" Q
 I $G(%ARG("REPTRH"))="" S %ARG("REPTRH")=3
 ;
 S %ARG("KNDO")="ALL"
 S %ARG("MKR")="ALL"
 S %ARG("SUGTS")="ALL"
 S %ARG("NOSENDEDORDS")=($G(%ARG("REPTRH"))'=2)
 S %ARG("SENDEDORDS")=1
 S %ARG("NOPAIDORDS")=1
 S %ARG("PAIDORDS")=1
 S %ARG("DELETEDORDS")=0
 S %ARG("FUTUREORDS")=($G(%ARG("REPTRH"))'=2)
 S %ARG("BIDS")=+$G(%ARG("HZMH"))
 S %ARG("SHOWTAW")=1
 S %ARG("TIMESORT")=2
 S %ARG("ASCENDING")=1
 I $G(%ARG("SIK"))="" S %ARG("SIK")=1
 ;
 ;;M ^AA("W4REPTRH","ARG")=%ARG
 ;
 S GLVIB=$$^W4MAIN("VIB")
 K @GLVIB
 ;
 W "<div id=""excel""></div>",!
 D ^W4DLVORD(4)
 ;
 S DT1=$$^%L1DC(%ARG("MEDAT"),3)
 S DT2=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 S %ARG("RKZ")=1
 ;
 N COD S COD="DEP"_DT2
 S FLCSV=$$FLCSV^W4MAAZAN(COD)
 D EXOP^W4MAAZAN(FLCSV)
 D PUT^%W1PRM("FLCSV",FLCSV)
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  I '$G(%ARG("ITEMS")) D
  .D DEPREP^W4MAAZAN
  I $G(%ARG("ITEMS")) D
  .D REPIT(DT1,DT2)
 W "</div>",!
 ;
 Q
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W1PRM("REM",$G(%REM,"UNKNOWN"))
 Q
 ;
 ;
REPIT(DT1,DT2) ; 
 N (DT1,DT2,JB,%ARG,%REM,RKZ,DAYS,PRMONTH)
 K @$$^W4MAIN("VRM")
 ;
 S SORT=+$G(%ARG("SORT"))
 ;
 S HZ="" F  S HZ=$O(@$$^W4MAIN("VIB")@(HZ)) Q:HZ=""  D
 .S HZM=$$SPA^%L1FRM($E(HZ,10,18)) Q:'$D(@$$^W4ORD@(HZM))
 .I $$HZM^W4MSD(HZM) Q
 .I $$^W4HZMH(HZM) Q
 .I $$I^W4PIZUL(HZM) Q
 .N DAT S DAT=$$TRH^W4HZMST(HZM)
 .I DAT="" S DAT=$$DATK^W4HZMST(HZM)
 .S DT=$$^%L1DC(DAT,3)
 .I $G(DAYS),'$E(DAYS,$$^%L1DC(DT,8)) Q
 .D PRTSUMHZ(DT,HZM)
 ;
 F DT=DT1:1:DT2 D
 .S HZM="" F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  I $$HZM^W4MSD(HZM) D
 ..N DAT S DAT=$$TRH^W4HZMST(HZM)
 ..I DAT="" S DAT=$$DATK^W4HZMST(HZM)
 ..S DT=$$^%L1DC(DAT,3)
 ..I $G(DAYS),'$E(DAYS,$$^%L1DC(DT,8)) Q
 ..D PRTSUMHZ(DT,HZM)
 ;
 S DAF=1
 S RSIZE=33
 S (SQN,SSUM,SSUMLM)=0
 ;
 W "<select id=""sort"" onChange=""Sort()"" >",!
  W "<option value=""0"" "_$$SELSORT(0)_">"
   W $$^%W1DICT("SORTPERITEMCODE")
  W "</option>",!
  W "<option value=""1"" "_$$SELSORT(1)_">"
   W $$^%W1DICT("SORTPERQN")
  W "</option>",!
  W "<option value=""2"" "_$$SELSORT(2)_" >"
   W $$^%W1DICT("SORTPERSUM")
  W "</option>",!
 W "</select>",!
 W "<br><br>",!
 ;
 D KOT
 S VRM=$$^W4MAIN("VRM")
 ;
 I SORT D
 .S VRM1=$$^W4MAIN("VRM1") K @VRM1
 .S N="" F  S N=$O(@VRM@("PRT",N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S QN=$P(A,"\"),SUM=$TR($J($P(A,"\",2),2,2),".","")
 ..S PREF=$S(SORT=1:$J(QN,10),1:$J(SUM,10))
 ..S @VRM1@("PRT",PREF_N)=$G(@VRM@("PRT",N))
 .;
 .K @VRM@("PRT")
 .M @VRM@("PRT")=@VRM1@("PRT")
 .K @VRM1@("PRT")
 ;
 S N1="",K=0 F I=1:1 S N1=$O(@VRM@("PRT",N1)) Q:N1=""  D
 .S A=$G(^(N1)),K=K+1
 .S N=N1
 .I SORT S N=$TR($E(N1,11,20)," ","")
 .I K>RSIZE D PEREH S K=0
 .S QN=$P(A,"\"),SUM=$P(A,"\",2),SUMLM=$P(A,"\",3)
 .W "<tr>"
 . W "<td>"_N_"</td>"
 . W "<td>"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
 . W "<td>"_QN_"</td><td>"_$J(SUM,2,2)_"</td><td>"_SUMLM_"</td>"
 . S SQN=SQN+QN,SSUM=SSUM+SUM,SSUMLM=SSUMLM+SUMLM
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(12)_""" >"
  W "<td >&nbsp;</td>"
  W "<td>&nbsp;</td>"
  W "<td style=""border:1px solid"">"_SQN_"</td>"
  W "<td style=""border:1px solid"">"_$J(SSUM,2,2)_"</td>"
  W "<td style=""border:1px solid"">"_$J(SSUMLM,2,2)_"</td>"
 W "</tr>"
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
PRTSUMHZ(DT,HZ) ;
 N (DT,JB,%ARG,%REM,RKZ,PRMONTH,HZ,WHAT)
 I '$G(%ARG("HZMH")),$$^W4HZMH(HZ) Q
 Q:$$I^W4PIZUL(HZ)
 ;
 I $G(%ARG("REPTRH"))<3,$$HZM^W4MSD(HZ) Q
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZ,I))  D
 .S ST=$G(^(I))
 .S PAR=$P(ST,"\") Q:PAR=""  Q:$E(PAR)="-"!($E(PAR)=":")
 .;;S ^AA("W4REPTRH",PAR,HZ)=""
 .S MH=$P(ST,"\",4)
 .S QN=$P(ST,"\",5)
 .S AH=0 N NXTCD S NXTCD=$G(@$$^W4ORD@(HZ,I+1))
 .I $E(NXTCD)="-",NXTCD["%" S AH=+$P(NXTCD,"-",2)
 .S SUM=(MH*QN)*(100-AH)*.01
 .S HNHP=(MH*QN)-SUM
 .
 .D SETVRM(DT,QN,(MH*QN),HNHP,HZ,PAR)
 .
 .S TSF="" F  S TSF=$O(@$$^W4ORD@(HZ,I,TSF)) Q:TSF=""  D
 ..S STT=$G(^(TSF))
 ..I $D(^(TSF))<9 D  Q
 ...S MHT=$P(STT,"\",2)
 ...S QNT=$P(STT,"\",3)
 ...S SUMT=QNT*MHT*(100-AH)*.01
 ...S HNHPT=(QNT*MHT)-SUMT
 ...D SETVRM(DT,QNT,(QNT*MHT),HNHPT,HZ,TSF) ; SUMT
 ..
 ..F II=1:1 Q:'$D(@$$^W4ORD@(HZ,I,TSF,II))  D
 ...S STT2=$G(^(II))
 ...S PAR2=$P(STT2,"\") I PAR2="" S PAR2=$P(STT2,"\",4)
 ...Q:PAR2=""
 ...S MH2=$P(STT2,"\",7)
 ...S QN2=$P(STT2,"\",3)
 ...S SUMT2=QN2*MH2*(100-AH)*.01
 ...S HNHPT2=(QN2*MH2)-SUMT2
 ...D SETVRM(DT,QN2,(QN2*MH2),HNHPT2,HZ,PAR2) ; SUMT2
 ;
 Q
 ;
 ;
SETVRM(DT,QN,SUM,HNHP,HZ,PRT) ;
 N DT1 S DT1=DT
 ;
 N A S A=$G(@$$^W4MAIN("VRM")@("DT",DT1,PRT,HZ))
 S SUMA=$P(A,"\",2)+SUM-HNHP
 ;
 N AHMAM S AHMAM=$$MAMD^W4L(DT)
 I $$NOMAM^W4P(PRT) S AHMAM=0
 ;
 S SUMLM=$J(SUMA*100/(100+AHMAM),2,2)
 ;
 N A1 S A1=$G(@$$^W4MAIN("VRM")@("DT",DT1,PRT))
 S SUMA1=$P(A1,"\",2)+SUM-HNHP
 S SUMLM1=$J(SUMA1*100/(100+AHMAM),2,2)
 ;
 N A2 S A2=$G(@$$^W4MAIN("VRM")@("PRT",PRT,DT))
 S SUMA2=$P(A2,"\",2)+SUM-HNHP
 S SUMLM2=$J(SUMA2*100/(100+AHMAM),2,2)
 ;
 N A3 S A3=$G(@$$^W4MAIN("VRM")@("PRT",PRT))
 S SUMA3=$P(A3,"\",2)+SUM-HNHP
 S SUMLM3=$J(SUMA3*100/(100+AHMAM),2,2)
 ;
 S @$$^W4MAIN("VRM")@("DT",DT1,PRT,HZ)=$P(A,"\")+QN_"\"_SUMA_"\"_SUMLM
 S @$$^W4MAIN("VRM")@("DT",DT1,PRT)=$P(A1,"\")+QN_"\"_SUMA1_"\"_SUMLM1
 ;
 S @$$^W4MAIN("VRM")@("PRT",PRT,DT)=$P(A2,"\")+QN_"\"_SUMA2_"\"_SUMLM2
 S @$$^W4MAIN("VRM")@("PRT",PRT)=$P(A3,"\")+QN_"\"_SUMA3_"\"_SUMLM3
 Q
 ;
 ;
KOT ; 
 N HD
 S HD=$ZD(DT2,"DD.MM.YY")_" - "_$ZD(DT1,"DD.MM.YY")_" dtewza mihixt z`ved g""ec"
 I DAF>1 D
 .W "<table width=""80%"" style=""layout:fixed"">",!
 . W "<tr>"
 .  W "<td width=""10%"">&nbsp;</td>"
 .  W "<td style=""font-size:"_$$^W3FSZ(16)_";text-align:center"">"
 .    W $$H2U^%L1FRM(HD)_"</span>",!
 .  W "</td>"
 .  W "<td width=""10%"">"_$$^%W1DICT("PAGE",DAF)_"</td>"
 . W "</tr>"
 .W "</table>",!
 .W "<br>",!
 ;
 ;
 W "<table width=""80%"" style=""layout:fixed"">",!
  W "<tr>"
   W "<th width=""20%"">"_$$H2U("hixt cew")_"</th>"
   W "<th width=""35%"">"_$$H2U("hixt my")_"</th>"
   W "<th width=""10%"">"_$$H2U("zenk")_"</th>"
   W "<th width=""18%"">"_$$H2U("mekq")_"</th>"
   W "<th width=""18%"">"_$$H2U("n""rn iptl")_"</th>"
  W "</tr>"
 Q
 ;
H2U(TXT) ;
 Q $$H2U^%L1FRM(TXT)
 ;
PEREH ;
 W "</table>",!
 D PGBREAK
 S DAF=DAF+1
 S RSIZE=40
 D KOT
 Q
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
ALLDLVORDS(STAM) ;
 Q ($G(%ARG("REPTRH"))=1)
 ;
SELSORT(SORT) ;
 I +$G(%ARG("SORT"))=SORT Q " selected=""selected"" "
 Q ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4REST
W4REST ; [ 08.05.18 12:30 ] [ 14.06.17 13:09 ] [ 28.02.17 10:09 ] 
 Q
FREEDOC ;
 D FREEDOC^W4MLREST
 Q
 ;
DIR ;
 D DIR^W4MLREST
 Q
 ;
DIROU ;
 D DIROU^W4MLREST
 Q
 ;
MLY ;
 D MLY^W4MLREST
 Q
 ;
ML D ML^W4MLREST
 Q
 ;
ITRAALL ;
 N GLINP S GLINP=$$^W4GL("W4INP")
 N GLIPY S GLIPY=$$^W4GL("W4IPY")
 N N,VD,SPK,ITRA
 ;
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 S SPK=""  F  S SPK=$O(@GLINP@(SPK)) Q:SPK=""  D
 .S VD="" F  S VD=$O(@GLINP@(SPK,VD)) Q:VD=""  D
 ..I VD'="IHB",VD'="IHBZ" Q
 ..S N="" F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ...S SUM=$P($G(^(N)),"\",6)
 ...I VD="IHBZ" S SUM=-SUM
 ...S @VRM@(SPK,"ITRA")=$G(@VRM@(SPK,"ITRA"))+SUM
 ;
 S NOM="" F  S NOM=$O(@GLIPY@(NOM)) Q:NOM=""  D
 .S SPK=$$SPK^W4PY(NOM) Q:SPK=""
 .S SUM=$$TOTPAID^W4PY(NOM)
 .S @VRM@(SPK,"ITRA")=$G(@VRM@(SPK,"ITRA"))-SUM
 ;
 S SPK="" F  S SPK=$O(@VRM@(SPK)) Q:SPK=""  D
 .S $P(@$$^W4GL("W4SPK")@(SPK,2),"*",4)=$G(@VRM@(SPK,"ITRA"))
 ;
 K @VRM
 Q
 ;
 ;
ITRASPK(SPK)
 N GLINP S GLINP=$$^W4GL("W4INP")
 N GLIPY S GLIPY=$$^W4GL("W4IPY")
 N N,VD,SPK,ITRA,SUM
 ;
 S ITRA=0
 S VD="" F  S VD=$O(@GLINP@(SPK,VD)) Q:VD=""  I VD="IHB"!(VD="IHBZ") D
 .S N="" F  S N=$O(@GLINP@(SPK,VD,N)) Q:N=""  D
 ..S SUM=$P($G(^(N)),"\",6)
 ..S ITRA=ITRA+SUM
 ;
 S NOM="" F  S NOM=$O(@GLIPY@(NOM)) Q:NOM=""  D
 .I $$SPK^W4PY(NOM)'=SPK Q
 .S SUM=$$TOTPAID^W4PY(NOM)
 .S ITRA=ITRA-SUM
 ;
 Q ITRA
 ;
 ;
NEWST ;
 N VD,SPK
 N GLINP S GLINP=$$^W4GL("W4INP")
 ;
 S VD="" F  S VD=$O(@GLINP@(VD)) Q:VD=""  I VD?1U.U D
 .S SPK="" F  S SPK=$O(@GLINP@(VD,SPK)) Q:SPK=""  D
 ..M @GLINP@(SPK,VD)=@GLINP@(VD,SPK)
 ..K @GLINP@(VD,SPK)
 ;
 D NEWDIR
 Q
 ;
 ;
NEWDIR ;
 N DT,VD,SPK
 N GLDIR S GLDIR=$$^W4GL("W4INPDIR")
 S DT="" F  S DT=$O(@GLDIR@(DT)) Q:DT=""  D
 .S VD="" F  S VD=$O(@GLDIR@(DT,VD)) Q:VD=""  I VD?1U.U D
 ..S SPK="" F  S SPK=$O(@GLDIR@(DT,VD,SPK)) Q:SPK=""  D
 ...M @GLDIR@(DT,SPK,VD)=@GLDIR@(DT,VD,SPK)
 ...K @GLDIR@(DT,VD,SPK)
 Q
 ;
RESTHB2 ;--- REST ^P1HB2,^P1HB2I LEFI ^P1HZ(*,"ETHB2")
 K ^P1HB2,^P1HB2I
 S HZM="" F  S HZM=$O(^P1HZ(HZM)) Q:HZM=""  D HB2(HZM)
 Q
 ;
HB2(HZM) ;
 I $G(^P1HZ(HZM,"ETHB2")) D
 .N HB2,DT1,DT2 S HB2=^("ETHB2") D
 .D ZMANK
 .S DT1=$$^%L1DC($P(^P1HZ(HZM),"\",29),3),DT2=D_","_T
 .I 'DT1,D S DT1=D
 .I $D(^P1HZ(HZM,"CB","ASR"))=10 D
 ..N I F I=1:1:$L(HB2,",") S HB2I=$P(HB2,",",I) I HB2I D
 ...S A=$G(^P1HZ(HZM,"CB","ASR",I))
 ...D GETAS
 ...S ^P1HB2(HB2I)=HZM_"\"_DT1_"\"_DT2_"\"_LKHN_"\"_SUM_"\"_LKHR_"\"_TLUSH_"\"_KMTL
 ...S ^P1HB2I(DT1,HB2I)=DT2
  Q
 ;
ZMANK N DATE,TIME S ZMANK=$P(^P1HZ(HZM),"\",4)
 S DATE=$P(ZMANK,"  ")
 S TIME=$P(ZMANK,"  ",2)
 S D=$$^%L1DC(DATE,3),T=$P(TIME,":")*3600+($P(TIME,":",2)*60)
 I 'D S D=$$^%L1DC($P(^P1HZ(HZM),"\",5),3)
 Q
 ;
GETAS ;
 S LKHN=$P(A,"*"),SUM=$P(A,"*",4),LKHR=$P(A,"*",6),TLUSH=$P(A,"*",7),KMTL=$P(A,"*",8)
 Q
 ;
ETHB2 ;--- RESTORE ^P1HZ(HZM,"ETHB2")
 S J=0 N H,N,I
 S H="" F  S H=$O(^P1H(H)) Q:H=""  D
 .S N="" F  S N=$O(^P1H(H,N)) Q:N=""  D
 ..K ^P1HZ(N,"ETHB2")
 ..I $D(^P1HZ(N,"CB","ASR")) D
 ...F I=1:1 Q:'$D(^P1HZ(N,"CB","ASR",I))  D
 ....S J=J+1,^P1HZ(N,"ETHB2")=$G(^P1HZ(N,"ETHB2"))_J_","
 Q
 ;
LKH ;
 N (JB,%ARG)
 I '$G(JB) S JB=$O(^TMPORD(999999999),-1)
 S N="" F  S N=$O(@$$^W4ORD@(N)) Q:N=""  D HZ2LKH(N)
 Q
 ;
HZ2LKH(N)
 N (JB,%ARG,N)
 S GLKH=$$^W4GL("LKH")
 S A=$G(@$$^W4ORD@(N)) 
 S NMB=$P(A,"\") Q:'$$^W4MSL(NMB)
 S NMB1=$$PROCNMB^W3SETHD(NMB)
 I NMB1="" S NMB1=$TR(NMB,"-","") 
 Q:'$$^W4MSL(NMB1)
 I $D(@GLKH@(NMB1))=11 Q 
 ;I '$D(@GLKH@(NMB1)) W NMB1,! 
 S NM=$$NAME^W4HZMST(N) 
 S STREET=$$KTV^W4HZMST(N) 
 S TELB="" I $L(NMB)>6 S TELB=NMB 
 S FLAT=$$DIRA^W4HZMST(N) 
 S FLOOR=$$KOMA^W4HZMST(N) 
 S HOME=$$BAIT^W4HZMST(N) 
 S ENTRANCE=$$CNISA^W4HZMST(N) 
 S COMMENT=$$CMNT^W4HZMST(N) 
 S CITY=$$IR^W4HZMST(N)
 S PELE=$$PELE^W4HZMST(N)
 S COMP=$$COMP^W4HZMST(N)
 I $$COMP^W3PRM,COMP="" S COMP=NM
 S FAX=$$FAX^W4HZMST(N)
 S EMAIL=$$EMAIL^W4HZMST(N)
 S MIKUD=$$MIKUD^W4HZMST(N)
 
 N PRM S PRM="LKH="_NM_"<>KTV="_$G(STREET)_"<>"
 S PRM=PRM_"TELB="_TELB_"<>DIRA="_$G(FLAT)_"<>KOMA="_$G(FLOOR)_"<>"
 S PRM=PRM_"BAIT="_$G(HOME)_"<>CNISA="_$G(ENTRANCE)_"<>"
 S PRM=PRM_"CMNT="_$G(COMMENT)_"<>IR="_$G(CITY)_"<>"
 S PRM=PRM_"PELE="_$G(PELE)_"<>COMP="_$G(COMP)_"<>"
 S PRM=PRM_"FAX="_$G(FAX)_"<>EMAIL="_$G(EMAIL)_"<>MIKUD="_$G(MIKUD)
 
 D PUT2^W4L(NMB1,PRM)
 Q
 ;
INVH(RKV) ;
 Q $$INVH^%L1FRM(RKV)
 ;
IDKLKT ;
 K @$$^W4GL("KLLKTH")
 N TELA,TELB,FAX,PELE,PELE1
 N N,GLLK S GLLK=$$^W4GL("LKH")
 S N=999 F  S N=$O(@GLLK@(N)) Q:N=""  D
 .S TELA=$$TELA^W4L(N) I TELA D LKHT^W4L(TELA,N) 
 .S TELB=$$TELB^W4L(N) I TELB D LKHT^W4L(TELB,N) 
 .S FAX=$$FAX^W4L(N) I FAX D LKHT^W4L(FAX,N) 
 .S PELE=$$PELE^W4L(N) I PELE D LKHT^W4L(PELE,N) 
 .S PELE1=$$PELE1^W4L(N) I PELE1 D LKHT^W4L(PELE1,N) 
 Q
 
 
 
 
 

W4RESTCA
W4RESTCA(HZM) ; [ 22.03.23 13:17 ] [ 11.10.22 11:49 ] [ 14.05.22 15:31 ] 
 ; -- TASHLUM B K-A LE HAZMANA ( LE KABALA - W4PAYCBA )
 ; ------------------------------------------------------
 N (HZM,JB,%ARG,%REM,PRBIT)
 S JB=1
 D PUT^%W1PRM("HZM",HZM)
 S SUMCA=600
 S PAY=SUMCA*100
 S FLOU="/tmp/600.json"
 ;
 S STRIN=""
 S STPRM=""
 S $E(STOUT,61,62)="01"
 S $E(STOUT,63)=1
 S $E(STOUT,36,43)=$$TR(PAY,8)
 S $E(STOUT,52,59)="00000000"
 S $E(STOUT,78,85)="00000000"
 S $E(STOUT,86,93)="00000000"
 S $E(STOUT,94,95)="00"
 ;
 D ^W4IN
 D GLORD
 S %REM=$$GET^%W1PRM("REM")
 ;
 I $G(HZM)>0,$$MSL^W4MSL(HZM) D
 .D PUT^W3HZMST(JB,"CODTS",3)
 .D PUT^W4HZMST(HZM,"CODTS",3)
 ;
 S SSHUL=$$SSHUL^W4HZMST(HZM)+$$SHULA^W4HZMST(HZM)
 S TSHL=$$TSHL^W4HZMST(HZM)
 S TIP=$$TIP^W4HZMST(HZM)
 ;
 S VIZ=""
 ;;I +VIZ="4580160015012117" Q "CALL2PROGRAMMER"
 ;
TV ;
 S VUID=$$VUID^W4STRINW
 ;
 S INDL0=$G(@$$^W4GL("TRANL"))
 S INDL=$O(@$$^W4GL("TRANL")@(999999),-1)
 S:INDL<1 INDL=1
 I INDL<INDL0 S INDL=INDL0
 ;
 S GL=$$^W4GL("TRANL")_"("_INDL_",901)"
 S ID=$O(@GL@(99999),-1)+1
 S ID=$TR($J(INDL,5)," ",0)_$TR($J(ID,5)," ",0)
 ;
 S A=$$OU^W4EMV3(FLOU)
 ;
 S ^LV("W4PAYCA-INOUT")=A
 S ER=$P(A,"~"),STA=$P(A,"~",2),S21=""
 S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 S UID=$P(A,"~",6)
 ;
 ;
 I STA["-" S STA="-"_$P(STA,"-",2)
 ;
 I $$^W4AUTHCD(STA),'$$EMV^W4PRM D
 .N TEL,MSG,VTS S VTS=$E(SOUT,25) Q:'VTS
 .S TEL=$$TELCA^W4OPT(VTS)
 .S $P(A,"~",3)=TEL
 ;
 I STA'="000" D  Q ER_";"_STA_";"_TRAN_";"_$$CLWEB^%L1FRM($P(A,"~",3))_";~"_$G(STRIN)_"~"_$G(SOUT)
 .N STRIN S STRIN=$$GETP^%W1PRM("STRIN") Q:$L(STRIN)=0
 .K @$$^W4GL("W4STRIN")@(HZM,"IN",STRIN)
 .D KILL^%W1PRM("STRIN")
 ;
 D
 .N IND S IND=$O(@$$^W4GIO@(99999999),-1)+1
 .S @$$^W4GIO@(IND,"IN")=STRIN
 .S @$$^W4GIO@(IND,"OU")=A
 ;
 S S21=""
 S TRAN("IN")=STRIN
 ;
 S TIPCA=0
 ;
 D
 .S TSHL=$$TSHL^W4HZMST(HZM)
 .S TIPCA=SUMCA-TSHL
 .I TIPCA<0&(TSHL>0)!(TIPCA>0&(TSHL<0)) S TIPCA=0
 ;
 I $G(TIPBIT) S TIPCA=-TIPBIT K TIPBIT
 ;
 S S21=$$^W4TRAN(SOUT,TRAN,TIPCA)
 ;;S ^LV("W4PAYCA-S21")=S21
 ;
 I $G(HZM),$$^W4MSL($$NMB^W4HZMST(HZM)) D
 .N STRING S STRING=$$NMB^W4HZMST(HZM)
 .N GL D GL^W4L
 .
 .I STRING,$D(@GL@(STRING))=11 D
 ..N VIZ S VIZ=$P(S21,"*",2)
 ..I $$CADFLT^W4PRM D
 ...N A S A=$$CADETS^W4L(STRING)
 ...N MM,YY S MM=$E($P(S21,"*",14),1,2)
 ...S YY=$E($P(S21,"*",14),3,4)
 ...N CVV2 S CVV2=$G(ASHCVV2)
 ...N TZ S TZ=$G(ASHTZ)
 ...I VIZ="" S VIZ=$P(A,"^") 
 ...I MM="" S MM=$P(A,"^",2)
 ...I YY="" S YY=$P(A,"^",3)
 ...I CVV2="" S CVV2=$P(A,"^",4)
 ...I TZ="" S TZ=$P(A,"^",5)
 ...N VL S VL=VIZ_"^"_MM_"^"_YY_"^"_CVV2_"^"_TZ
 ...D PUT^W4L(STRING,VL,"CADFLT")
 ;
TV1 ;
 I '$G(HZM) G OKEND
 ;
 D GLORD
 S SUMT=$P(S21,"*",7)
 S INDV=$O(@GLORD@("CB","V",999),-1)+1
 S @GLORD@("CB","V",INDV)=S21
 D SETPOS^W4HZMST(HZM,"V",INDV)
 S @GLORD@("CB","V",INDV,"STRIN")=$G(STRIN)
 S @GLORD@("CB","V",INDV,"STROU")=$G(SOUT)
 S @GLORD@("CB","V",INDV,"UID")=$G(UID)
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 S PORTDISP=$$DISP^W4PLUK(MYDVN)
 ;
 I PORTDISP D
 .N TX1,TX2 S TX2=""
 .S TX1=$J($$ITRA^W4HZMST(HZM),2,2)_" : melyzl" 
 .S TX2="i`xy` "_$J(SUMT,2,2)_" mley"
 .D ^W4TX2DSP(PORTDISP,TX1,TX2)
 ;
 D
 .N TIP S TIP=$$STIP^W4HZMST(HZM)
 .D PUT^W4HZMST(HZM,"TIP",TIP)
 ;
 S P1HZHB51($O(P1HZHB51(9999),-1)+1)=SUMT_","_3
 ;
 D ^W4T(HZM,1)
 ;
 I $G(PRBIT),'$D(PRBIT("BIT")) D ^W4SGNDEL(HZM,"V",PRBIT)
 ;;D ^W4CBOLD(HZM)
OKEND ;
 Q "OK;000;;;~"_$G(STRIN)_"~"_$G(SOUT)
 ;
 ;
GLORD D GLORD^W4HZMST
 Q
 ;
 ;
GETCA(ST,LET)
 N A,A1,J S A=$P(ST,LET,2)
 S A1=""
 F J=1:1:$L(A) Q:$E(A,J)?1U  S A1=A1_$E(A,J)
 Q A1
 ;
PUTCA(ST,LET,VL,FROM,TO)
 N A,A1,PREF,POST,VLN S A=$P(ST,LET,2)
 S PREF=$P(ST,LET,1)
 S VLN="" F J=1:1:$L(A) Q:$E(A,J)?1U  S VLN=VLN_$E(A,J)
 S POST=$E(A,J,255)
 I $G(FROM),$G(TO) S $E(VLN,FROM,TO)=VL
 E  S VLN=VL
 S A1=PREF_LET_VLN_POST
 Q A1
 ;
INOUT(STRIN,UIDBIT) ;
 N A S A=""
 S A=$$^W4STRINW(STRIN,$G(UIDBIT)) ; --- STRIN+HIYUV
 Q A
 ;
 ;
DBL(STRIN) ;
 I '$G(HZM) Q 0
 ;
 ;
 I $$GET^W4TMPPAY(3,"SUM")<0 Q 0
 ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","V",N)) Q:N=""  D  Q:OK
 .I $E($G(^(N,"STRIN")),1,65)=$E(STRIN,1,65),STRIN'["BC" S OK=1,@$$^W4ORD@(HZM,"DBLIN")=STRIN_"\"_$H_"\"_$$^W4MYDVN
 Q OK
 ;
 ;
TR(VL,LN) ;
 Q $$TR^W4STRINW(VL,LN)
 ;
VUID(HZM) ;
 S DV=1,JB=1
 S ID="0002200028"
 S VUID="000000000011737540124"
 S FLIND=DV_"_"_JB_"_"_HZM_"_"_$TR($H,",","")
 S URL=$$URL^W4EMV3(DV)
 D GETBYVUID^W4EMV3(VUID,ID,URL,FLIND)
 Q
 ;
TVTR ; 
 S REC="UCCtAmRXc85Uo+nC4NCNRKn9JJCyHiT5tGyUCiE0RUMtnUSD+BCjOCwsjAZemzNeFlw+DbN61/l1pA4Q2yLQyANMtmBRmPvO7oAoyza92adQjiylzDSPodcpeV1BOrP8itfLqCVVG0HzkevaQQRi3U6nOk5w7C6bL0Wz3yGPtHC4HulIadQU9UVDURoMzS1i0HoQAXIzG6ET5c5dKuULl6lCElO1bki7EEsnk509S7kysblQk/mcs7/VZRdilGy4k5ItfbIfoPKZK0zJ1qwEy5v9XWIuDNvDSWvmCvMxs7asTMPTtY15Ze5IVy7rOSym6rnVoK0xPfNz11F/+kM5owwSsErygeYtTgD3fP6zgG1O+lE4YwhIzGJ2WYxMCZhxVTkl3dxwIrGgPI7vc9m+7dYUVjGT/fU/Ct0PW6ffAX2bZ9tfWB7SHJg7xb+XK09YZQU0jbrS+hNr57FgvuKtwCB4BIDPrRSsSqmsocHPTCwE6QZ12sdhEZ3lSP51OjecjD+IfUeDqGW69NnaxrR5b0gMnnOtgKj2o1eDD/+orNdjfiEQlueRlCMjfGtF91VmSdd/i4dWaXiIvfk3xGyNxnEHN7Qxvw+RVl0aQTjqhPiXH5Zon3YutH1/UC8ui/BxWxUwsjgF5YKnZZFCyBy/4mleJ4ejDAd7EHJsPgJgzKRKNNIcsYIcpg9Y/fvzN4CAM6L3cFeQftKxOLrenZIpLDbMJ1L930Fkz6zQTwJggUw4GJ8WbtRoO+lihf0G+g9IPyO3COWDTeZgip4e+vYP73n4iB0oEhPS1ljPBoZpo5hq8kLJKrQ1xbJ608u9yTKR/csoYIDgW2+OV8A1dTkYt1+6OeNHWXrpXKvNbaaNfoVivOKgPuKCHWaDOlikNtcg5V1Y2K0oMc518/UwF0RZZFVIpUqbbAdSiaZb0mkKCz9yr1fHN8ZbeSP/7CU+GJaMj2EX2+ier+hJFEGOJlG/N90fgFN06I/9yUVbjfk1k6mu7rUYj+T5uUEdl3RzQJBJ6frpTsV0pIA1Vb/fdeTyX9p75fm8ZsynBzpIZt/D6CNYlyMs/YuCPnAb8huFn4dLplX/vJqFIcQCA8IkQ73lNMYD8gdvSfIMz8Vb4ZaKUDtAbuG3qIHymHqRI/73JZPIO9JSkzQ78EbP5ttiHH3d+60hxJxuAOt7mU55AWVANWdb/q9EUsFtO3J+b7lNgo3YEs7kh11GGOr6y28DcGVpIrBHVTvJ6cQlt9XvrCu5X7N/ZGgU/aievMRnojRo7HJjbTmX0aZTaa+RgFK9Y5qCW21DAHLTRAUNVIxeNWnGRDLre8MDD93rCcMYxt8RDOU32/O8ZKwxfyixa/E6HwzZM0ZUr7KdD8B9wcVN9Qf72ux1RN7jqxgkHA7dehK3YZqXD92DSqJeM0rzZO20UAnsEI8y0ELke1a2pdfsColC7PT2ySgv6mh76uFJ5OfCAu+MODhCTx/ahhQnq5Ghc7H/if9oz0GUZUX/0tFEs+1+dpPsO45W4YqUKDVKwAJPD1coCWg30aJZGWLSyyHsUE3scxbOnDcY84EeWT4xoj+gfMGlwI9omtTs4RWurp6B1sUrKM6Kt01WOQdyqq5MV7hOmA=="
 S DV=1,JB=1
 S HZM=90455
 S OUT("UID")="23032121570317020455623"
 S INDL=$O(@$$^W4GL("TRANL")@(999999),-1)
 S:INDL<1 INDL=1
 S GL=$$^W4GL("TRANL")_"("_INDL_",901)"
 D TVTR^KAKA ;W4EMV3 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RESTT0
W4RESTTO(HZM,JB) ; [ 24.05.15 14:23 ] [ 17.04.15 11:46 ] [ 16.04.15 20:04 ]
 N (JB,%ARG,%REM,HZM) ;
 S TO0="^[$$^W3MAIN]TMPORD0(JB)"
 D TMPORD
 K @TO0
 I '$$^W4GETHZ(HZM,TO0) Q
 ;
 K M0,M,NOM
 S N=""
 S LASTI0=$$LASTI0^W3HZMST(JB,TO0)
 ;
 S N0="" F  S N0=$O(@TO0@(N0)) Q:N0=""  I N0 D
 .S A0=$G(^(N0))
 .I '$$LV0(A0) Q
 .S OK=0
 .
 .S N=$O(M(99999),-1)
 .F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:OK
 ..S A=$G(^(N)) I '$$LV0(A) Q
 ..I $$COMP(A0,A) S M0(N0)=N,M(N)=N0,OK=1
 ;
 ;
 S N0="" F  S N0=$O(@TO0@(N0)) Q:N0=""  I N0 D
 .S A0=$G(^(N0))
 .I '$$LV0(A0) Q
 .I $D(M0(N0)) Q
 .S END=0
 .
 .S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:END
 ..S A=$G(^(N)) I '$$LV0(A) Q
 ..I $G(M(N))'<N0 S END=1
 .;
 .I N="" S N=$O(@TMPORD@(99999),-1)+1
 .;
 .D ADD^%L1GSEQ(TMPORD,N,A0,1)
 .S @TMPORD@("RESTTO",N)=$H
 .S NN=N,END=0
 .
 .S N1=N0 F  S N1=$O(@TO0@(N1)) Q:N1=""  I N1 D  Q:END
 ..S A1=$G(^(N1)) I $$LV0(A1) S END=1 Q
 ..S NN=NN+1
 ..D ADD^%L1GSEQ(TMPORD,NN,A1,1)
 ..S @TMPORD@("RESTTO",NN)=$H
 ;
 K @TO0
 Q
 ;
 ;
LV0(A) ;
 I $P(A,"~")=0 Q 1
 Q 0
 ;
 ;
CLEAR ;
 D TMPORD
 N I,N,ER,A S ER=0
 M ^[$$^W3MAIN]TMPORDERR(HZM)=@TMPORD
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) I N,$$LV0(A) D
 .I $P(A,"~",13)="HZ",'$D(M(N)) D
 ..I $D(@TMPORD@("ST",N)) Q
 ..I $D(@TMPORD@("BIT",N)) Q
 ..I $D(@TMPORD@("MRG",N)) Q
 ..I $D(@TMPORD@("MVTO",N)) Q
 ..K @TMPORD@(N) S ER=1
 ..N N1 S N1=N F  S N1=$O(@TMPORD@(N1)) Q:'N1  Q:$$LV0(^(N1))  K ^(N1)
 ;
 I 'ER K ^[$$^W3MAIN]TMPORDERR(HZM) Q
 ;
 N TMP S TMP="^[$$^W3MAIN]TMPORDT" K @TMP
 S N="",I=0 F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .S I=I+1 S @TMP@(I)=@TMPORD@(N) K @TMPORD@(N)
 ;
 M @TMPORD=@TMP K @TMP
 Q
 ;
REPEAT(STAM) ;
 D TMPORD
 N OK S OK=0
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) I N,$$LV0(A) D  Q:OK
 .S N1=N+2
 .F  S N1=$O(@TMPORD@(N1)) Q:N1=""  S A1=$G(^(N1)) I N1,$$LV0(A1) D  Q:OK
 ..Q:'$$COMP(A1,A)
 ..I '$$EQCHILD(N,N1) Q
 ..S NX0=$$NEXT0^W3HZMST(JB,N) Q:'NX0
 ..S NX1=$$NEXT0^W3HZMST(JB,N1) Q:'NX1
 ..S B=$G(@TMPORD@(NX0))
 ..S B1=$G(@TMPORD@(NX1))
 ..Q:'$$COMP(B1,B)
 ..I '$$EQCHILD(NX0,NX1) Q
 ..S NX01=$$NEXT0^W3HZMST(JB,NX0) Q:'NX01
 ..S NX11=$$NEXT0^W3HZMST(JB,NX1) Q:'NX11
 ..S C=$G(@TMPORD@(NX01))
 ..S C1=$G(@TMPORD@(NX11))
 ..Q:'$$COMP(C1,C)
 ..I '$$EQCHILD(NX01,NX11) Q
 ..S OK=1
 Q OK
 ;
TMPORD ;
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
EQCHILD(IND1,IND2) ;
 N IND,A,B S OK=1
 S IND=IND1,IND11=IND2
 F  S IND=$O(@TMPORD@(IND)) Q:IND=""  I IND S A=$G(^(IND)) Q:$$LV0(A)  I '$$CDA(A) D
EQCH1 .S IND11=$O(@TMPORD@(IND11)) I IND11="" S OK=0 Q
 .S B=$G(@TMPORD@(IND11)) I $$LV0(B) S OK=0 Q
 .I $$CDA(B) G EQCH1
 .I '$$COMP(A,B) S OK=0 Q
 Q OK
 ;
CDA(A) ;
 Q $$CDA^W3HZMST(A)
 ;
COMP(A,B) ;
 I $P(A,"~",1,5)=$P(B,"~",1,5) Q 1
 Q 0

W4RESTTM
W4RESTTM ; [ 23.01.12 19:31 ] [
 N (JB,%ARG,%REM)
 S (CODE,MSD)=$$GET^%W1PRM("MSD")
 D SELDAY^W3MSDRG
 Q

W4RESTTO
W4RESTTO(HZM,JB) ; [ 29.12.21 08:17 ] [ 18.03.19 14:19 ] [ 04.05.16 08:44 ] 
 N (JB,%ARG,%REM,HZM) ;
 S TO0="^[$$^W3MAIN]TMPORD0(JB)"
 D TMPORD
 K @TO0
 ;
 S K=0
 F I=1:1 Q:'$D(@$$^W4GL("P1HZ0")@(I))  D
 .S A=$G(^(I))
 .S PAR=$P(A,"\")
 .I $$BSL^W4PRM,PAR=$$PAR^WBPRM!(PAR=$$PARBON^WBPRM)!(PAR=$$PARNKD^WBPRM) Q
 .S K=K+1
 ;
 S LI0=K
 S LI=$O(@$$^W4ORD@(HZM,99999),-1)
 I LI<(LI0-2) D
 .M @$$^W4GL("P1HZER")@(HZM)=@$$^W4ORD@(HZM)
 .S @$$^W4GL("P1HZER")@(HZM,"RESTTO")=$ZD($H,"DD.MM.YY  24:60")
 .M @$$^W4ORD@(HZM)=@$$^W4GL("P1HZ0")@(HZM)
 .K @$$^W4ORD@(HZM,"S")
 ;
 I '$$^W4GETHZ(HZM,TO0) Q
 ;
 K M0,M,NOM
 S N=""
 S LASTI0=$$LASTI0^W3HZMST(JB,TO0)
 ;
 S N0="" F  S N0=$O(@TO0@(N0)) Q:N0=""  I N0 D
 .S A0=$G(^(N0))
 .I '$$LV0(A0) Q
 .S OK=0
 .
 .S N=$O(M(99999),-1)
 .F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:OK
 ..S A=$G(^(N)) I '$$LV0(A) Q
 ..I '$$WAS(A) Q
 ..I $$COMP(A0,A) D
 ...S M0(N0)=N,M(N)=N0,OK=1
 ;
 D CLEAR
 ;
 N TON S TON="^[$$^W3MAIN]TMPORDN" K @TON
 ;
 S LIN=0
 S N0="" F  S N0=$O(@TO0@(N0)) Q:N0=""  I N0 D
 .S A0=$G(^(N0))
 .I '$$LV0(A0) Q
 .
 .I $D(M0(N0)) D  Q
 ..S LIN=LIN+1
 ..M @TON@(LIN)=@TMPORD@(M0(N0))
 ..D ^W4SRVTO(TMPORD,M0(N0),TON,LIN)
 ..N N1 S N1=M0(N0) F  S N1=$O(@TMPORD@(N1)) Q:N1=""  Q:$$LV0($G(^(N1)))  I N1 D
 ...S LIN=LIN+1
 ...M @TON@(LIN)=@TMPORD@(N1)
 ...D ^W4SRVTO(TMPORD,N1,TON,LIN)
 .
 .S LIN=LIN+1
 .M @TON@(LIN)=@TO0@(N0)
 .D ^W4SRVTO(TO0,N0,TON,LIN)
 .
 .N N1 S N1=N0 F  S N1=$O(@TO0@(N1)) Q:N1=""  Q:$$LV0($G(^(N1)))  I N1 D
 ..S LIN=LIN+1
 ..M @TON@(LIN)=@TO0@(N1)
 ..D ^W4SRVTO(TO0,N1,TON,LIN)
 ;
 N LIN S LIN=$O(@TON@(99999),-1)
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) I N,$$LV0(A),'$$WAS(A) D
 .S LIN=LIN+1
 .S @TON@(LIN)=$G(@TMPORD@(N))
 .D ^W4SRVTO(TMPORD,N,TON,LIN)
 .N N1 S N1=N F  S N1=$O(@TMPORD@(N1)) Q:N1=""  Q:$$LV0($G(^(N1)))  I N1 D
 ..S LIN=LIN+1
 ..S @TON@(LIN)=$G(@TMPORD@(N1))
 ..D ^W4SRVTO(TMPORD,N1,TON,LIN)
 .
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  D
 .I N K ^(N) Q
 .F II="BIT","MRG","ST","HNHP","MVFROM","MVTO","HNH","TOAI","TS","FROM" D
 ..I N=II K ^(N)
 ;
 S N="" F  S N=$O(@TON@(N)) Q:N=""  M @TMPORD@(N)=@TON@(N)
 K @TO0,@TON
 Q
 ;
 ;
LV0(A) ;
 I $P(A,"~")=0 Q 1
 Q 0
 ;
 ;
CLEAR ;
 D TMPORD
 N I,N,ER,A S ER=0
 M ^[$$^W3MAIN]TMPORDERR(HZM)=@TMPORD
 ;
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) I N,$$LV0(A) D
 .I $$WAS(A),'$D(M(N)) D
 ..I $D(@TMPORD@("BIT",N)) D CLRHZ(N) Q
 ..I $D(@TMPORD@("MRG",N)) D CLRHZ(N) Q
 ..I $D(@TMPORD@("MVTO",N)) D CLRHZ(N) Q
 ..K @TMPORD@(N) S ER=1
 ..N N1 S N1=N F  S N1=$O(@TMPORD@(N1)) Q:'N1  Q:$$LV0(^(N1))  K ^(N1)
 ;
 I 'ER K ^[$$^W3MAIN]TMPORDERR(HZM)
 Q
 ;
CLRHZ(N) ;
 S $P(@TMPORD@(N),"~",13)=""
 Q
 ;
SEDER ;
 N TMP S TMP="^[$$^W3MAIN]TMPORDT" K @TMP
 S N="",I=0 F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .S I=I+1 S @TMP@(I)=$G(@TMPORD@(N)) K @TMPORD@(N)
 ;
 M @TMPORD=@TMP K @TMP
 Q
 ;
REPEAT(STAM) ;
 Q 0
 ;
 D TMPORD
 N OK S OK=0
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  S A=$G(^(N)) I N,$$LV0(A) D  Q:OK
 .S N1=N+2
 .F  S N1=$O(@TMPORD@(N1)) Q:N1=""  S A1=$G(^(N1)) I N1,$$LV0(A1) D  Q:OK
 ..Q:'$$COMP(A1,A)
 ..I '$$EQCHILD(N,N1) Q
 ..S NX0=$$NEXT0^W3HZMST(JB,N) Q:'NX0
 ..S NX1=$$NEXT0^W3HZMST(JB,N1) Q:'NX1
 ..S B=$G(@TMPORD@(NX0))
 ..S B1=$G(@TMPORD@(NX1))
 ..Q:'$$COMP(B1,B)
 ..I '$$EQCHILD(NX0,NX1) Q
 ..S NX01=$$NEXT0^W3HZMST(JB,NX0) Q:'NX01
 ..S NX11=$$NEXT0^W3HZMST(JB,NX1) Q:'NX11
 ..S C=$G(@TMPORD@(NX01))
 ..S C1=$G(@TMPORD@(NX11))
 ..Q:'$$COMP(C1,C)
 ..I '$$EQCHILD(NX01,NX11) Q
 ..S OK=1
 Q OK
 ;
TMPORD ;
 S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
EQCHILD(IND1,IND2) ;
 N IND,A,B S OK=1
 S IND=IND1,IND11=IND2
 F  S IND=$O(@TMPORD@(IND)) Q:IND=""  I IND S A=$G(^(IND)) Q:$$LV0(A)  I '$$CDA(A) D
EQCH1 .S IND11=$O(@TMPORD@(IND11)) I IND11="" S OK=0 Q
 .S B=$G(@TMPORD@(IND11)) I $$LV0(B) S OK=0 Q
 .I $$CDA(B) G EQCH1
 .I '$$COMP(A,B) S OK=0 Q
 Q OK
 ;
CDA(A) ;
 Q $$CDA^W3HZMST(A)
 ;
COMP(A,B) ;
 N CDA S CDA=$$CD^W3HZMST(A)
 N CDB S CDB=$$CD^W3HZMST(B)
 I $$LV0(A),$$LV0(B),CDB,CDB=$G(@$$^W4PRM@("TOAICD")),$G(N),$P($G(@TMPORD@("TOAI",N)),"~")=CDA Q 1
 I $P(A,"~",1,5)=$P(B,"~",1,5) Q 1
 Q 0
 ;
WAS(A) ;
 I $P(A,"~",13)="HZ" Q 1
 Q 0
 
 
 
 
 

W4RKZSHD
W4RKZSHD(DAT1,DAT2) ; [ 18.06.26 11:16 ] [ 16.09.25 13:43 ] [ 06.08.25 07:44 ] 
 N (JB,%ARG,%REM,DAT1,DAT2,MBC)
 ;
 K @$$^W4MAIN("TMPREPB")
 ;
 W "<br>",!
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 ;;I '$$NOSND^W4SNDEMV D CREX(DAT1,DAT2); -- 06/08/25
 I '$$EMV4^W4SNDEMV!$$OLDSND4^W4SNDEMV D CREX(DAT1,DAT2)
 ;
 D DIVEXC^%W1PC1("W4RKZSHD","%W1FREPX")
 ;
 D DIVBUT
 ;
 S TXT=" mixeciy fekix "
 D KOT(TXT)
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D DT
 ;
 D OPTBL
 ;
 D STTH; --> ST
 D ST2TH(ST)
 ;
 S (SSIHB,SSVHB,SSDHB,SSAHB,SSJHB,SSLHB,SSFHB,SSKHB)=0
 S (SSIHK,SSVHK,SSDHK,SSAHK,SSJHK,SSLHK,SSFHK,SSKHK)=0
 S (SSIZB,SSVZB,SSDZB,SSAZB,SSJZB,SSLZB,SSFZB,SSKZB)=0
 S (SSIZK,SSVZK,SSDZK,SSAZK,SSJZK,SSLZK,SSHFZK,SSKZK)=0
 S (SSHHB,SSHZB)=0
 ;
 I $$EMV4^W4SNDEMV,'$$OLDSND4^W4SNDEMV D  G TOT ; -- 06/08/25 
 .N GL S GL=$$^W4GL("DUMP")
 .N GL1 S GL1=$$^W4GL("DUMP1")
 .N DT1,DT2
 .S DT1=$$^%L1DC(DAT1,3)
 .S DT2=$$^%L1DC(DAT2,3)
 .N N,N1,ND S N1=DT1_"000000"
 .S N=N1  F  S N=$O(@GL1@(N)) Q:N=""  Q:$E(N,1,5)>DT2  D
 ..S ND=$G(^(N)) Q:'ND
 ..N ST0 S ST0=$G(@GL@(ND)) Q:ST0=""
 ..N ASM,DAT,TIME
 ..S ASM=$P(ST0,"|",5) Q:'ASM
 ..S DAT=$P(ST0,"|",7)
 ..S TIME=$P(ST0,"|",6)
 ..S DTM=$$^%L1DC(DAT,3)_","_(TIME*3600+($P(TIME,":",2)*60))
 ..D GETDET(ST0)
 ..D FRMST(ASM)
 ;
 S GL=$$^W4GL("TRANL")
 ;
 D
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 ..S A=$G(^(N))
 ..S DTM=$P(A,"^")
 ..I DTM<DT1!(DTM>DT2) Q
 ..S ASM=$P(A,"^",10) Q:ASM=""
 ..
 ..D SIN
 ..
 ..N W4RKZSHD S W4RKZSHD=""
 ..D CRTMP^W4REPSHV(GL_"("_N_")")
 ..
 ..D FRMST(ASM)
 ;
TOT ;
 S ST="\\\\\\\\\\\" D ST2TOT(ST)
 ;
 S ST="\\\"_$$H2U^%L1FRM("daeg")
 S ST=ST_"\"_$J(SSIHB,2,2)_"\"_$J(SSVHB,2,2)_"\"_$J(SSDHB,2,2)
 S ST=ST_"\"_$J(SSAHB,2,2)_"\"_$J(SSLHB,2,2)
 S ST=ST_"\"_$J(SSKHB,2,2)_"\"_$J(SSFHB,2,2)
 S ST=ST_"\"_$J(SSHHB,2,2)
 ;
 D ST2TOT(ST)
 ;
 D
 .N TDCOLOR S TDCOLOR="red"
 .S ST="\\\"_$$H2U^%L1FRM("zekf")
 .S ST=ST_"\"_$J(SSIZB,2,2)_"\"_$J(SSVZB,2,2)_"\"_$J(SSDZB,2,2)
 .S ST=ST_"\"_$J(SSAZB,2,2)_"\"_$J(SSLZB,2,2)
 .S ST=ST_"\"_$J(SSKZB,2,2)_"\"_$J(SSFZB,2,2)
 .S ST=ST_"\"_$J(SSHZB,2,2)
 .D ST2TOT(ST)
 ;
 S ST="\\\"_$$H2U^%L1FRM("kdq")
 S ST=ST_"\"_$J(SSIHB-SSIZB,2,2)_"\"_$J(SSVHB-SSVZB,2,2)_"\"_$J(SSDHB-SSDZB,2,2)
 S ST=ST_"\"_$J(SSAHB-SSAZB,2,2)_"\"_$J(SSLHB-SSLZB,2,2)
 S ST=ST_"\"_$J(SSKHB-SSKZB,2,2)_"\"_$J(SSFHB-SSFZB,2,2)
 S ST=ST_"\"_$J(SSHHB-SSHZB,2,2)
 D ST2TOT(ST)
 ;
 W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("TMPREP")
 K @$$^W4MAIN("TMPREPB")
 Q
 ;
 ;
OPTBL W "<table id=""tbshd"" border=""1"" cellspacing=""0"" cellpadding=""3"" "
 W "width=""98%"" style=""font-size:"_$$^W3FSZ(10)_""" >",!
 Q
 ;
STTH ;
 S ST=": `""k kdq :"_$$ST^W4VT_":beq: dzknq` : dry :  jix`z :"
 Q
 ;
STHV ;
 S ST=$ZD(DTM,"DD.MM.YY")_"\"_$ZD(DTM,"24:60")_"\"_ASM_"\daeg"
 S ST=ST_"\"_$J(SIHB,2,2)_"\"_$J(SVHB,2,2)_"\"_$J(SDHB,2,2)
 S ST=ST_"\"_$J(SAHB,2,2)_"\"_$J(SLHB,2,2)
 S ST=ST_"\"_$J(SKHB,2,2)_"\"_$J(SFHB,2,2)
 S ST=ST_"\"_$J(SHHB,2,2)
 Q
 ;
STZC ;
 S ST="\\\zekf"
 S ST=ST_"\"_$J(SIZB,2,2)_"\"_$J(SVZB,2,2)_"\"_$J(SDZB,2,2)
 S ST=ST_"\"_$J(SAZB,2,2)_"\"_$J(SLZB,2,2)
 S ST=ST_"\"_$J(SKZB,2,2)_"\"_$J(SFZB,2,2)
 S ST=ST_"\"_$J(SHZB,2,2)
 Q
 ;
STIT ;
 S ST="\\\kdq"
 S ST=ST_"\"_$J(SIHB-SIZB,2,2)_"\"_$J(SVHB-SVZB,2,2)_"\"_$J(SDHB-SDZB,2,2)
 S ST=ST_"\"_$J(SAHB-SAZB,2,2)_"\"_$J(SLHB-SLZB,2,2)
 S ST=ST_"\"_$J(SKHB-SKZB,2,2)_"\"_$J(SFHB-SFZB,2,2)
 S ST=ST_"\"_$J(SHHB-SHZB,2,2)
 Q
 ;
ST2TH(ST) ;
 N GL
 W "<tr>" N FLD1
 F J=$L(ST,":")-1:-1:2 D
 .S FLD=$P(ST,":",J)
 .I FLD="" S FLD1="&nbsp;"
 .E  S FLD1=$$H2U^%L1FRM(FLD)
 .W "<th "
 .W ">"_FLD1_"</th>"
 W "</tr>",!
 Q
 ;
ST2TD(ST,STP,ASM) ;
 N J,OK,FLD,GL S OK=0
 F J=1:1:$L(ST,"\")-1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .I FLD S OK=1
 Q:'OK
 ;
 I $G(ASM) D
 .W "<tr style=""cursor:pointer"" "
 . W " onClick=""ShowDetails(this,'"_ASM_"')"" ",!
 .W ">"
 ;
 F J=1:1:$L(ST,"\") D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style="""
 .I $P(STP,"\",J)["B" W "font-weight:bold;"
 .I $P(STP,"\",J)["C" W "text-align:center;"
 .I $P(STP,"\",J)["Z" W "cursor:pointer;"
 .I $L($G(TDCOLOR)) W "color:"_TDCOLOR
 .W """"
 .W ">"_$$SHOW(FLD,$S(J>3:"N",1:""))_"</td>"
 W "</tr>",!
 Q
 ;
 ;
ST2T(ST,ASM) ;
 N GL
 W "<tr style=""cursor:pointer"" "
  W " onClick=""ShowDetails(this,'"_ASM_"')"" ",!
 W ">"
 ;
 N J,FLD F J=1:1:$L(ST,"\") D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style=""font-weight:bold"
 .I J=$L(ST,"\") W ";text-align:center"
 .W """ "
 .W ">"_$$SHOW(FLD,"N")_"</td>"
 W "</tr>",!
 Q
 ;
 ;
ST2TOT(ST) ;
 N GL
 W "<tr>"
 F J=1:1:$L(ST,"\") D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style=""background-color:yellow;font-weight:bold;border:solid 1px brown"
 .I $L($G(TDCOLOR)) W ";color:"_TDCOLOR
 .I J=$L(ST,"\") W ";text-align:center"
 .W """ "
 .W ">"_$$SHOW(FLD,"N")_"</td>"
 W "</tr>",!
 Q
 ;
KOT(TXT) ;
 W "<span "
 W " style=""font-size:"_$$^W3FSZ(14)_""""
 W ">"
 I TXT'="",TXT'="&nbsp;" W $$H2U^%L1FRM(TXT)
 W "</span>",!
 Q
 ;
DIVBUT ;
 W " <div id=""divbut"" "_$$INV^%W1ALIGN_" >",!
 W "  <table dir="""_$$^%W1DIR_""" >"
 W "   <tr>",!
 W "    <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,60")
 W "    </td>",!
 W "    <td>&nbsp;</td>",!
 W "    <td>"
    D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red",",,,60")
 W "    </td>",!
 W "   </tr>",!
 W "  </table>",!
 W " </div>",!
 Q
 ;
SHOW(FLD,PR) ;
 I $$SPA^%L1FRM(FLD)="" Q "&nbsp;"
 I PR="N",$G(FLD),$$NUM(FLD) S FLD=$J(FLD,2,2)
 I '$$NUM(FLD),FLD'="",FLD'="&nbsp;" Q $$H2U^%L1FRM(FLD)
 I FLD<0 Q "<span style=""color:red;text-align:right"" dir=""LTR"" >"_FLD_"</span>"
 Q FLD
 ;
NUM(FLD) ;
 I FLD?."-"1N.N.".".N Q 1
 Q 0
 ;
CREX(DAT1,DAT2) ; --> ^TMPREP("G") ( FOR EXCEL )
 N (JB,%ARG,%REM,DAT1,DAT2)
 D DT S SH=0
 S GL=$$^W4GL("TRANL")
 S (SHHB,SHZB)=0
 ;
 D TMPREP^%W1FREP
 K @TMPREP
 ;
 D PCPRM^W4DMANY("W4RKZSHD")
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S DTM=$P(A,"^")
 .I DTM<DT1!(DTM>DT2) Q
 .S ASM=$P(A,"^",10)
 .D SIN
 .N W4RKZSHD S W4RKZSHD=""
 .D CRTMP^W4REPSHV(GL_"("_N_")")
 .
 .D STHV
 .S SH=SH+1,@TMPREP@("G",SH)=ST
 .D STZC
 .S SH=SH+1,@TMPREP@("G",SH)=ST
 .D STIT
 .S SH=SH+1,@TMPREP@("G",SH)=ST
 ;
 Q
 ;
SIN ;
 S (SHHB,SIHB,SVHB,SDHB,SAHB,SJHB,SLHB,SKHB,SFHB)=0
 S (SHHK,SIHK,SVHK,SDHK,SAHK,SJHK,SLHK,SKHK,SFHK)=0
 S (SHZB,SIZB,SVZB,SDZB,SAZB,SJZB,SLZB,SKZB,SFZB)=0
 S (SHZK,SIZK,SVZK,SDZK,SAZK,SJZK,SLZK,SKZK,SFZK)=0
 Q
 ;
DT ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 Q
 ;
FRMST(ASM) ;
 S STP="BC\C\C\\\\\"
 ;
 S SSIHB=SSIHB+SIHB
 S SSVHB=SSVHB+SVHB
 S SSDHB=SSDHB+SDHB
 S SSAHB=SSAHB+SAHB
 S SSJHB=SSJHB+SJHB
 S SSLHB=SSLHB+SLHB
 S SSFHB=SSFHB+$G(SFHB)
 S SSKHB=SSKHB+$G(SKHB)
 S SSIZB=SSIZB+SIZB
 S SSVZB=SSVZB+SVZB
 S SSDZB=SSDZB+SDZB
 S SSAZB=SSAZB+SAZB
 S SSJZB=SSJZB+SJZB
 S SSLZB=SSLZB+SLZB
 S SSFZB=SSFZB+$G(SFZB)
 S SSKZB=SSKZB+$G(SKZB)
 S SSHHB=SSHHB+SHHB
 S SSHZB=SSHZB+SHZB
 
 D STHV; --> ST
 D ST2TD(ST,STP,ASM)
 ;
 D STZC
 D
 .N TDCOLOR S TDCOLOR="red"
 .D ST2TD(ST,STP,ASM)
 
 D STIT
 D ST2T(ST,ASM)
 Q
 ;
 ;
GETDET(ST0) ;
 S SIHB=$P(ST0,"|",8)
 S SIZB=$P(ST0,"|",9)
 S SVHB=$P(ST0,"|",10)
 S SVZB=$P(ST0,"|",11)
 S SDHB=$P(ST0,"|",12)
 S SDZB=$P(ST0,"|",13)
 S SAHB=$P(ST0,"|",14)
 S SAZB=$P(ST0,"|",15)
 S SJHB=$P(ST0,"|",16)
 S SJZB=$P(ST0,"|",17)
 S SLHB=$P(ST0,"|",18)
 S SLZB=$P(ST0,"|",19)
 S SHHB=$P(ST0,"|",3)
 S SHZB=$P(ST0,"|",2)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RLD
W4RLD ; [ 03.03.26 14:37 ] [ 02.03.24 03:55 ] [ 11.02.24 08:39 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $$KLJ^%L1SS("W4GIB") H 1
 I $$KLJ^%L1SS("W4GIB") H 1
 S @$$^W4GL("STLOOP")@("PC")=1 H 3
 K @$$^W4GL("P1LOCK")@("PCHZ")
 K @$$^W4GL("flag") D ^W4JOB
 S ^W4RLD=$H
 Q
 
 
 
 

W4RLDPRN
W4RLDPRN ; [ 12.12.09 14:46 ] [
 S @$$^W4GL("STLOOP")@("PC")=1
 H 3 K @$$^W4GL("flag")
 D ^W4JOB
 Q

W4RMMLY
W4MRMMLY ; DOCH RAMAT MLAY [ 10.04.23 14:19 ] [ 09.04.23 15:26 ] [ 
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 ;
 K %L1PC
 S %REPN=$G(%ARG("REPN"))
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 Q
 ;
 ;
DEP(PAR) ;
 Q $$MLDEP^W4MLPRT(PAR)
 ;
KVZ(PAR) ;
 Q $$MLSUGP^W4MLPRT(PAR)
 ;
EM(PAR) ;
 N EM S EM=$$MLEMSFR^W4MLPRT(PAR)
 I EM="" S EM=1
 Q EM
 ;
EM1(PAR) ;
 N EM S EM=$$EM(PAR)
 N EM1 S EM1=$G(@$$^W4GL("MLMIDA")@(EM))
 I EM1="" S EM1="dcigi"
 Q EM1
 ;
 ;
PAR ;
 N KVZ,DEP
 I $G(MEPAR),PAR<MEPAR S OK=0 Q
 I $G(ADPAR),PAR>ADPAR S OK=0 Q
 I $G(SPK),$G(MESPK),SPK<MESPK S OK=0 Q
 I $G(SPK),$G(ADSPK),SPK>ADSPK S OK=0 Q
 S DEP=$$DEP(PAR)
 I $G(MEDEP),DEP<MEDEP S OK=0 Q
 I $G(ADDEP),DEP>ADDEP S OK=0 Q
 S KVZ=$$KVZ(PAR)
 I $G(MEKVZ),KVZ<MEKVZ S OK=0 Q
 I $G(ADKVZ),KVZ>ADKVZ S OK=0 Q
 ;
 S PAR1="" Q:$G(PAR)=""
 S PAR1=$$MLNAME^W4MLPRT(PAR)
 S KVZ1=$$KVZ1(PAR)
 S DEP1=$$DEP1(PAR)
 S x1=$$EM1(PAR)
 S x2=$$MLRAMA^W4MLPRT(PAR)
 I $$MLMIN S x2=$$MLMIN^W4MLPRT(PAR)
 S x3=$$MLITRA^W4MLPRT(PAR)
 S x4=x3-x2
 I x4'<0 S OK=0 Q
 Q
 ;
KVZ1(PAR) ;
 N KVZ
 S KVZ=$$KVZ(PAR),KVZ1=""
 I $L(KVZ) S KVZ1=$G(@$$^W4GL("MLSUGP")@(KVZ))
 Q KVZ1
 ;
DEP1(PAR) ; 
 N DEP
 S DEP=$$DEP(PAR),DEP1=""
 I $L(DEP) S DEP1=$G(@$$^W4GL("MLDEP")@(DEP))
 Q DEP1
 ;
MLMIN() ;
 Q $G(@$$^%W1GLPRM@("REPN"))="W4MLMIN"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RPR
W4RPR ; [ 04.04.25 10:14 ] [ 23.08.24 07:57 ] [ 17.07.23 13:17 ] 
 N OVED S OVED=$TR($G(%ARG("OVED")),"-","")
 I $G(MEDAT)="" S MEDAT=$$GETP^%W1PRM("MEDATRPR")
 I $G(ADDAT)="" S ADDAT=$G(%ARG("ADDAT"))
 ;
 I OVED?1N.N S OVED=$$DOP^W4NAME(OVED)
 W "<div align=""center"">",!
 W "<br><br><br>",!
 N WD S WD=55
 I $$GROUP S WD=45
 I $$1024^W4WDSCR S WD=WD+30
 I $$^W4TABLET=2 S WD=100
 ;
 W "<table border=""0"" style=""padding:10px;border:ridge 2px"" dir="""_$$^%W1DIR_""" width="""_WD_"%"" >",!
  D LINE
  I $$GROUP G DAT
  W "<tr>"
    W "<td colspan=""2"">",!
    W " <table width=""100%"" dir="""_$$^%W1DIR_""" border=""0""><tr>",!
    W "  <td>" W $$^%W1DICT("WORKERNUMBER")_"</td>",!
    W "  <td><input type=""text"" id=""oved""  maxlength=""5"" size=""5"" value="""_OVED_""" onClick=""this.select()"" onKeyUp=""ChangeCd()"" onChange=""Find('oved','oved','NAME')"" >",!
      W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick=""Find('oved','oved!','NAME')"" >",!
    W "  </td>",!
    ;
    W "  <td>"_$$^%W1DICT("NAME")_"</td>",!
    ;
    W "  <td "_$$^%W1ALIGN_" >"
     W "<input type=""text"" id=""ovednm"" readonly=""readonly"" size=""30"" value="""_$$H2U^%L1FRM($$^W4NAME(OVED))_""">",!
    W "  </td>",!
    ;
    W "</tr></table></td>",!
  W "</tr>",!
  ;
DAT ;
  W "<tr>",!
  W "<td colspan=""2"">"
  W " <table border=""0"" dir="""_$$^%W1DIR_""" width="""_$$WDDAT_""">",!
   W "<tr>"
    I '$$GROUP D 
    .  I $$^W4TABLET'=2 S %W1DAT("TD")=""
    .  W "<td >"
    .   I $$^W4TABLET=2 W "<table><tr><td>" 
    .    D ^%W1DAT("MEDAT",$G(MEDAT),$$^%W1DICT("FROMDATE")_"&nbsp;&nbsp;") W "</td>"
    .   I $$^W4TABLET=2 W "</td></tr></table>" 
    .  I $$^W4TABLET'=2 S %W1DAT("TD")=""
    .  W "<td>"
    .   I $$^W4TABLET=2 W "<table><tr><td>" 
    .    D ^%W1DAT("ADDAT",$G(ADDAT),$$^%W1DICT("UNTILDATE")_"&nbsp;&nbsp;") W "</td>"
    .   I $$^W4TABLET=2 W "</td></tr></table>" 
    ;
    I $$GROUP D
    . W "    <td width=""20%"" >"_$$^%W1DICT("CSRDATE")_" : </td>",!
    . W "    <td id=""todate"" dir=""LTR"" "_$$^%W1ALIGN_" width=""30%"" >"
    .  D ^%W1DAT("DAT","")
    . W "</td>"
    . W "<td>&nbsp;</td>"
    W "</tr>",!
   W "</table>",!
  W " </td>",!
  W "</tr>",!
 ;
 W "<tr><td colspan=""2"">&nbsp;</td></tr>",!
 ;
 W "<tr>"
  W "<td align=""center"" >"
   W $$^%W1DICT("DONAME")_$$NBSP^%L1FRM(5)
   W "<input id=""DONAME"" type=""text"" size=""15"">"
  W "</td>"
 W "</tr>",!
 ;
 W "<tr><td colspan=""2"">&nbsp;</td></tr>",!
 ;
 W "<tr>",!
 W " <td width=""50%"" align=""center"">",!
 S WTR="WORKTIMEREPAIR"
 I $$GROUP S WTR="GROUPWORKTIMEREPAIR"
 D ROUNDBUT^%W1JS("repair",$$^%W1DICT(WTR),"Repair()","color:green","wh,22")
 W "  </td>",!
 I '$$GROUP,$G(OVED) D
 .W "<td>"
 . D ROUNDBUT^%W1JS("showmonth",$$^%W1DICT("SHOWWORKERMONTHTIME"),"ShowMonth()","color:blue","wh,22")
 .W "</td>"
 ;
 W " <td align=""center"">",!
 D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W " </td>",!
 W "</tr>",!
 ;
 D LINE
 W "</table>",!
 W "</div>",!
 ;; I '$G(OVED) Q
 ;
 W "<br /><br />",!
 W "<div>",!
 W "</div>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
TEST(OVED) ;
 N OK S OK=1
 I OVED?1N.N D  Q OK
 .S OVED=$TR($J(OVED,5)," ",0)
 .I '$D(@$$^W4GL("NAME")@(OVED)) S OK="0;NOTEXIST" Q
 .I '$$GET1^W4LEVPR(OVED,"PAIL") S OK="0;WORKERNUMBERNOTINUSE" Q
 ;
 Q "FIND"
 ;
 ;
GROUP(STAM) ;
 Q $G(%ARG("GROUP"))
 ;
WDDAT() ; 
 I $$^W4TABLET=2 Q "85%" 
 I $$1024^W4WDSCR Q "74%" 
 Q "79%"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RPR0
W4REPAIR ;  [ 07.06.18 11:30 ] [ 16.01.17 05:08 ] [ 20.09.15 11:47 ] 
 ;--- INPUT - OVED,DAT
 N (JB,%ARG,%REM)
 ;
 S OVED=$G(%ARG("OVED"))
 ;
 I '$$GROUP Q:OVED=""
 I '$$GROUP D
 .S OVED=$$DOP^W4NAME(OVED)
 .S OVED1=$$OVED1(OVED)
 ;
 S DAT=$G(%ARG("DAT"))
 ;W "DAT="_DAT,!
 Q:DAT=""
 S DTOV=$$^%L1DC(DAT,3)
 ;
 D KOT
 ;
 D SEARCH^%W1FREPA($$SRCH)
 ;
 D PUT^%W3DEB("W4REPAIR","OVED=OVED & DATOV=DATOV")
 ;
 S K=0
 ;
 I '$$GROUP D SHOWOVED(OVED,OVED1)
 ;
 I $$GROUP D
 .S OVED="" F  S OVED=$O(@$$^W4GL("NAME")@(OVED)) Q:OVED=""  D
 ..S OVED1=$$OVED1(OVED)
 ..D SHOWOVED(OVED,OVED1)
 ;
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
KOT ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;;W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""">"_OVED_" "_$$H2U^%L1FRM($$^W4NAME(OVED))_"</span><br />",!
 W "<span style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("CSRDATE")_" "_DAT_"</span><br />",!
 ;
 W "<br />",!
 W " <table width=""80%"" id=""Tbl"" border=""1"" cellspacing=""0"" cellpadding=""3"">",!
 W "  <tr id=""trid0"">"
 W "   <th width=""5%"">&nbsp;</th>",!
 W "   <th width=""15%"">"_$$^%W1DICT("WORKERNUMBER")_"</th>",!
 W "   <th width=""20%"">"_$$^%W1DICT("WORKERNAME")_"</th>",!
 W "   <th width=""15%"">"_$$^%W1DICT("ENTRANCE")_"</th>",!
 W "   <th width=""15%"">"_$$^%W1DICT("EXIT")_"</th>",!
 W "   <th width=""15%"">"_$$^%W1DICT("WORKTIME")_"</th>",!
 W "   <th width=""15%"">"_$$^%W1DICT("CHANGED")_"</th>",!
 W "  </tr>",!
 Q
 ;
SAVE(PRM) ;
 N OVED,DAT,DATI,DATO,INTM,OUTM,END,WASIN
 D FILE
 D PUT^%W3DEB("W4REPAIR-SAVE","PRM=PRM")
 S DAT=$P(PRM,";",1)
 S DTOV=$$^%L1DC(DAT,3)
 S DAT=$$^%L1DC(DAT,2)
 I DAT'?6N Q -2
 S J=2 D
 .S OVED=$P(PRM,";",J) Q:'OVED
 .N VER S VER=$O(@FILE@(OVED,"OLD",DAT,99999),-1)+1
 .;
 .;
 .N INTM,OUTM
 .N LAST S LAST=0
 .I $O(@FILE@(OVED,DAT))'?6N S LAST=1
 .;
 .S INTM=$P(PRM,";",J+1)
 .S OUTM=$P(PRM,";",J+2)
 .S INTM=INTM*3600+($P(INTM,":",2)*60)
 .S OUTM=OUTM*3600+($P(OUTM,":",2)*60)
 .
 .S DATI=DAT,DATO=DAT
 .I OUTM<INTM,INTM,OUTM S DATO=$$^%L1DC(DTOV+1,2)
 .
 .I INTM S @FILE@(OVED,DATI,INTM)="I" D
 ..S @FILE@(OVED,DATI,INTM,"ARM")=$H
 ..N COD,CIO,DAT,%TIM
 ..S %TIM=$$T^%L1TIME(INTM)
 ..S COD=OVED,CIO="I",DAT=DATI ;;D PC^W4CLKVW
 ..D ^%S2GLSV(FILE_"("""_OVED_""","""_DATI_""")",$$^W4FGIB)
 .
 .I OUTM S @FILE@(OVED,DATO,OUTM)="O" D
 ..S @FILE@(OVED,DATO,OUTM,"ARM")=$H
 ..N COD,CIO,DAT,%TIM
 ..S %TIM=$$T^%L1TIME(OUTM)
 ..S COD=OVED,CIO="O",DAT=DATO ;;D PC^W4CLKVW
 ..D ^%S2GLSV(FILE_"("""_OVED_""","""_DATO_""")",$$^W4FGIB)
 .
 .D TIKCIO^W4DATL(OVED)
 .D ^%S2GLSV(FILE_"("""_OVED_""",""CIO"")",$$^W4FGIB)
 ;
 Q 1
 ;
 ;
SELTIME(PRM,SHK,SHI) ;
 N I,SEL
 S SEL="<select name=""hr"" id=""selhr"_PRM_SHK_""" onChange=""OnChange("_SHK_")"" >"
 F I=0:1:23 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""""_$S(+NN=+$$VALHR(PRM,SHI):" selected=""selected""",1:"")_" >"_NN_"</option>"
 S SEL=SEL_"</select>"
 ;
 S SEL=SEL_"<select name=""mn"" id=""selmn"_PRM_SHK_""" onChange=""OnChange("_SHK_")"" >"
 F I=0:5:55 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""""_$S(+NN=+$$VALMN(PRM,SHI):" selected=""selected""",1:"")_" >"_NN_"</option>"
 S SEL=SEL_"</select>"
 Q SEL
 ;
VALHR(PRM,SH) ;
 I PRM="IN" Q +$G(IN(SH))
 I PRM="OU" Q +$G(OU(SH))
 Q ""
 ;
VALMN(PRM,SH) ;
 N MN
 S MN=$S(PRM="IN":$G(IN(SH)),1:$G(OU(SH)))
 S MN=$P(MN,":",2)
 S MN=MN\5*5
 Q MN
 ;
FILE S FILE=$$^W4GL("FILE")
 Q
 ;
WORKTIME(PRM) ;
 N HROU,MNOU,HRIN,MNIN
 S HRIN=$P(PRM,";")
 S MNIN=$P(PRM,";",2)
 S HROU=$P(PRM,";",3)
 S MNOU=$P(PRM,";",4)
 I 'HRIN,'MNIN Q "&nbsp;"
 I 'HROU,'MNOU Q "&nbsp;"
 N DIF S DIF=HROU*3600+(MNOU*60)-(HRIN*3600)-(MNIN*60)
 I DIF<0 S DIF=DIF+(24*3600)
 Q $$T^%L1TIME(DIF)
 ;
GROUP(STAM) ;
 Q ($G(%ARG("OVED"))="")
 ;
 ;
SHOWOVED(OVED,OVED1) ;
 N IN,OU,DT,END,N,A,TM,I,WASIN D FILE
 S END=0,WASIN=0,I=0
 ;
 F DT=DTOV:1:DTOV+1 D
 .S DATOV=$$^%L1DC(DT,2)
 .S N="" F  S N=$O(@FILE@(OVED,DATOV,N)) Q:N=""  D  Q:END
 ..S A=$G(^(N))
 ..S TM=$$T^%L1TIME(N)
 ..I A="I",DT=(DTOV+1) S END=1 Q
 ..I A="I" S I=I+1,IN(I)=TM,IN(I,"DT")=DT S WASIN=N
 ..I A="O",DT=DTOV,N<21000,'WASIN Q
 ..I A="O" D  S OU(I)=TM
 ...S:'I I=1
 ...N I1 F I1=I:1 Q:'$D(OU(I1))
 ...S OU(I1)=TM
 ...I '$D(IN(I1)) S IN(I1)="00:00"
 ...S I=I1
 ;
 D PUT^%W3DEB("W4REPAIR","IN=[IN & OU=[OU")
 ;
 F I=1:1 Q:'$D(IN(I))&'$D(OU(I))  D OVLINE(OVED,I)
 ;
 I I=1,'$D(IN(I))&'$D(OU(I))  D OVLINE(OVED,I)
 Q
 ;
 ;
OVLINE(OVED,I) ;
 S K=K+1 ;
 S OVED1=$$OVED1(OVED)
 W "<tr id=""trid"_K_""" ",!
  I $L($$SRCH),$$^W4NAME(OVED)[$$SRCH W " style=""background-color:yellow"" "
 W ">"
 W " <td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 W " onClick=""NewLine('"_K_"','"_OVED_"','"_OVED1_"')""> + </span><br />"
 W " <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
 W "onClick=""DeleteRow('"_K_"')"" > - </span></td>",!
 W " <td id=""oved"_K_""" align=""center"">"_OVED_"</td>"
 W " <td >"_$$H2U^%L1FRM($$^W4NAME(OVED))_"</td>"
 W " <td align=""center"" dir=""LTR"">&nbsp;" W $$SELTIME("IN",K,I) W "&nbsp;</td>",!
 W " <td align=""center"" dir=""LTR"">&nbsp;" W $$SELTIME("OU",K,I) W "&nbsp;</td>",!
 W " <td id=""worktime"_K_""" align=""center"" dir=""LTR"">&nbsp;"
  S HROU=+$$VALHR("OU",I)
  S HRIN=+$$VALHR("IN",I)
  S MNOU=+$$VALMN("OU",I)
  S MNIN=+$$VALMN("IN",I)
  W $$WORKTIME(HRIN_";"_MNIN_";"_HROU_";"_MNOU)
 W "&nbsp;</td>",!
 W " <td align=""center"">",!
 W "  <input name=""chn"" id=""chn"_K_""" type=""checkbox"" disabled=""disabled"" />"
 W " </td>",!
 W "</tr>",!
 Q
 ;
OVED1(OVED) ;
 N OVED1
 S OVED1="" I $G(OVED) S OVED1=$$^W4NAME(OVED)
 S OVED1=$$RPL^%L1FRM(OVED1,"'","\'")
 S OVED1=$$H2U^%L1FRM(OVED1)
 Q OVED1
 ;
 ;
CLEAR(PRM)
 N DAT,OV
 S DAT=$P(PRM,";") Q:DAT="" "NOTDATE"
 S OV=$P(PRM,";",2) Q:OV="" "NOTWORKER"
 ;
 D CLEAROV(DAT,OV)
 Q 1
 ;
CLEAROV(DAT,OVED) ;
 N FILE D FILE
 N FILEOLD S FILEOLD=$$^W4GL("FILEOLD")
 N DATOV,DTOV,A,N,VERS,DT,END,WASIN
 S DTOV=$$^%L1DC(DAT,3)
 S END=0,WASIN=0
 ;
 F DT=DTOV:1:DTOV+1 D
 .S DATOV=$$^%L1DC(DT,2)
 .S N="" F  S N=$O(@FILE@(OVED,DATOV,N)) Q:N=""  D  Q:END
 ..S A=$G(^(N))
 ..I A="I",DT=(DTOV+1) S END=1 Q
 ..I A="I",DT=DTOV S WASIN=1
 ..I A="O",DT=DTOV,N,N<21000,'WASIN Q
 ..S VERS=+$H_$TR($J($P($H,",",2),5)," ",0)
 ..M @FILEOLD@(DATOV,VERS,OVED,N)=@FILE@(OVED,DATOV,N)
 ..K @FILE@(OVED,DATOV,N)
 ;
 Q
 ;
SRCH(STAM) ; 
 Q $$INVH^%L1FRM($G(%ARG("SRCH")))
 
 
 
 
 
 

W4RPRAB1
W4RPRAB1 ; [ 08.08.18 17:53 ] [ 20.05.14 10:36 ] [ 08.12.13 11:52 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 I $G(%ARG("OVED")) D PUT^%W1PRM("OVED",%ARG("OVED"))
 S OVED=$$GETP^%W1PRM("OVED")
 I 'OVED W " A WORKER NOT DEFINED !" Q
 S OVED1=$$^W4NAME(OVED)
 S DAT1=$G(%ARG("MEDAT"))
 S DAT2=$G(%ARG("ADDAT"))
 S ARGCS=$G(%ARG("CAUSE"))
 ;
 I $G(%ARG("FIRST")) D INIT
 ;
 W "<span style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"
  I '$$MKDM W $$^%W1DICT("WORKERABSENCECAUSES",OVED_"<>"_OVED1_"<>"_DAT1_"<>"_DAT2)
  I $$MKDM W $$^%W1DICT("PAYMENTKIND",OVED_"<>"_OVED1_"<>"_DAT1_"<>"_DAT2)
 W "</span>",!
 W "<br><br>",!
 ;
 W " <table id=""Tbl"" >",!
 W "  <tr>",!
  W "  <th>"_$$^%W1DICT("DATE")_"</th>",!
  I '$$MKDM W "  <th>"_$$^%W1DICT("ABSENCECAUSES")_"</th>",!
  I $$MKDM W "  <th>"_$$^%W1DICT("KINDOFPAYMENT")_"</th>",!
  W "  <th>"_$$^%W1DICT("TOPAY")_"</th>",!
  W "  <th>"_$$^%W1DICT("COMMENT")_"</th>",!
 W "  </tr>",!
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 F DT=DT1:1:DT2 D
 .W "<tr id="""_DT_""">",!
 .
 . W "<td id=""date"_DT_""" >"
 .  W $$^%L1DC(DT,1)
 . W "</td>"
 .
 . S AVAD=$$AVAD(OVED,DT)
 . W "<td>"
 . D
 . . N VL
 . . I AVAD'="",'$$MKDM D  Q
 . . . W $$RED($$^%W1DICT("WORKERWORKED",$$AVAD(OVED,DT)))
 . .
 . . S VL=$$CAUSE(OVED,$G(DT))
 . .
 . . I '$$MKDM,ARGCS'="",VL=ARGCS!(VL="") D  Q
 . . .W $$H2U^%L1FRM($G(@$$GLOB@(ARGCS)))
 . . .W "<input type=""text"" id=""cause"_DT_""" size=""2"" "
 . . .W " value="""_ARGCS_""" "
 . . .W " style=""visibility:hidden"" />"
 . .
 . . D SELCAUSE(OVED,DT)
 . W "</td>"
 .
 . W "<td>"
 .  D
 .  .I '$$MKDM,AVAD'="" W "&nbsp;" Q
 .  .W "<input type=""text"" id=""tshl"_DT_""" size=""7"" maxlength=""8"" "
 .  .I $$MKDM,$$CAUSE(OVED,DT)="" W " disabled=""disabled"" style=""color:grey"" "
 .  .I '$$MKDM!($$CAUSE(OVED,DT)'="") W " onClick=""this.select()"" "
 .  .W " value="""_$J($$TSHL(OVED,DT),2,2)_""" />"
 . W "</td>"
 .
 . W "<td>"
 .  D
 .  .I '$$MKDM,AVAD'="" W "&nbsp;" Q
 .  .W "<input type=""text"" id=""cmnt"_DT_""" size=""30"" maxlength=""50"" "
 .  .I $$MKDM,$$CAUSE(OVED,DT)="" W " disabled=""disabled"" style=""color:grey"" "
 .  .W " value="""_$$H2U^%L1FRM($$CMNT(OVED,DT))_""" />"
 . W "</td>"
 .W "</tr>",!
 ;
 W " </table>",!
 W "<br><br>",!
 D DIVBUT
 W "</div>",!
 Q
 ;
SELCAUSE(OVED,DT) ;
 I $G(DT)="" G SELC1
 S VL=$$CAUSE(OVED,$G(DT))
 S ARGCS=$G(%ARG("CAUSE"))
 I '$$MKDM,ARGCS'="",VL=ARGCS!(VL="") W $$H2U^%L1FRM($G(@$$GLOB@(ARGCS))) Q
SELC1 ;
 N N,ID
 S ID="cause"
 I $G(DT) S ID=ID_DT
 W "<select id="""_ID_""" "
  I $G(DT) W " onChange=""ChangeCause('"_DT_"')"" "
 W ">",!
  I '$$MKDM W "<option value=""0"">"_$$^%W1DICT("CHOICECAUSE")_"</option>",!
  I $$MKDM W "<option value=""0"">"_$$^%W1DICT("CHOICEPAYMENT")_"</option>",!
  S N="" F  S N=$O(@$$GLOB@(N)) Q:N=""  D
  .W "<option value="""_N_""" "
  . I $G(VL)'="",N=VL W " selected=""selected"" "
  . W " >"
  . W $$H2U^%L1FRM(^(N))
  .W "</option>",!
 W "</select>",!
 Q
 ;
 ;
CAUSE(OVED,DT) ;
 D FL
 N DAT S DAT=$ZD(DT,"YYMMDD")
 N N,OK S N="",OK=""
 F  S N=$O(@$$GLOB@(N)) Q:N=""  I $D(@FILE@(OVED,DAT,N)) S OK=N Q
 Q OK
 ;
TSHL(OVED,DT) ;
 D FL
 N VL S VL=$$CAUSE(OVED,DT) I VL="" Q ""
 N DAT S DAT=$ZD(DT,"YYMMDD")
 Q $G(@FILE@(OVED,DAT,VL,"TSHL"))
 ;
CMNT(OVED,DT) ;
 D FL
 N VL S VL=$$CAUSE(OVED,DT) I VL="" Q ""
 N DAT S DAT=$ZD(DT,"YYMMDD")
 Q $G(@FILE@(OVED,DAT,VL,"TXT"))
 ;
AVAD(COD,DT)
 N AVAD
 S AVAD=$P($$^W4LEVTIM(COD,$ZD(DT,"YYMMDD")),"\")
 Q AVAD
 ;
DIVBUT ;
  W "<table>",!
   W "<tr>",!
   W "  <td>"
    D ROUNDBUT^%W1JS("repair",$$^%W1DICT("SUBMIT"),"Save()","color:green","wh,22")
   W "  </td>"
   W "<td>&nbsp;</td>"
   W "  <td>"
    D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
   W "  </td>",!
  W "</tr>",!
 Q
 ;
RED(RKV) ;
 Q "<span style=""color:red;"_$$FONTFM^W3CSS_""">"_RKV_"</span>"
 ;
FL ;
 S FILE=$$^W4GL("FILE")
 Q
 ;
INIT ;
 N DT,DT1,DT2,DAT D FL
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 K @$$^W4MAIN("TMPABS")
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .M @$$^W4MAIN("TMPABS")@(DAT)=@FILE@(OVED,DAT)
 Q
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D FL
 S OVED=$$GETP^%W1PRM("OVED") Q:OVED=""
 S DONAME=$$DONAME
 ;
 F I=1:1:$L(PRM,";") D
 .S GR=$P(PRM,";",I)
 .S DT=$P(GR,"~")
 .S DAT=$ZD(DT,"YYMMDD")
 .S CAUSE=$P(GR,"~",2) Q:CAUSE=""
 .S TSHL=$P(GR,"~",3)
 .S CMNT=$$INVH^%L1FRM($$CNWEB^%L1FRM($P(GR,"~",4)))
 .S CAUSEOLD=$$CAUSE(OVED,DT)
 .S TSHLOLD=$$TSHL(OVED,DT)
 .S CMNTOLD=$$CMNT(OVED,DT)
 .
 .I $L(CAUSEOLD),CAUSE'=CAUSEOLD!(+TSHL'=+TSHLOLD)!(CMNTOLD'=CMNT) D
 ..D PROT(OVED,DAT,"DEL",CAUSEOLD)
 ..K @FILE@(OVED,DAT,CAUSEOLD)
 .
 .S @FILE@(OVED,DAT,CAUSE)=1
 .S @FILE@(OVED,DAT,CAUSE,"MVC")=DONAME_"\"_$H
 .I CAUSE="BONUS"!(CAUSE="HKDM") S @FILE@(OVED,DAT,CAUSE)=TSHL
 .S @FILE@(OVED,DAT,CAUSE,"TSHL")=TSHL
 .S @FILE@(OVED,DAT,CAUSE,"TXT")=CMNT
 .D PROT(OVED,DAT,"SET",CAUSE)
 Q  ;
 ;
 ;
PROT(OVED,DAT,ACT,CAUSE) ;
 D FL
 S @$$^W4GL("FILEPROT")@(DAT,OVED,ACT,CAUSE)=$H_"\"_$$DONAME
 M @$$^W4GL("FILEPROT")@(DAT,OVED,ACT,CAUSE)=@FILE@(OVED,DAT,CAUSE)
 Q
 ;
DONAME(STAM) ;
 Q $$GETP^%W1PRM("DONAME")
 ;
GLOB(STAM) ;
 I $$MKDM Q $$^W4GL("W4MKDM")
 Q $$^W4GL("W4ABS")
 ;
MKDM(STAM) ;
 Q $$MKDM^W4RPRABS
 
 

W4RPRABS
W4RPRABS ; [ 06.04.25 00:26 ] [ 04.04.25 11:35 ] [ 25.02.20 05:59 ] 
 I $G(%ARG("FIRST")) D INIT
 N OVED S OVED=$TR($G(%ARG("OVED")),"-","")
 I OVED?1N.N S OVED=$$DOP^W4NAME(OVED)
 I $G(%ARG("MKDM")) D PUT^%W1PRM("MKDM",%ARG("MKDM"))
 D CRGL
 W "<div align=""center"">",!
 W "<br><br><br>",!
 S WDT=$S($$^W4TABLET=2:96,$$1024^W4WDSCR:70,1:60) 
 W "<table border=""0"" style=""width:"_WDT_"%;padding:10px;border:ridge 2px"" dir="""_$$^%W1DIR_""">",!
  D LINE
  W "<tr>"
    W "<td colspan=""4"">",!
    W " <table width=""100%"" dir="""_$$^%W1DIR_""" border=""0""><tr>",!
    W "  <td>" W $$^%W1DICT("WORKERNUMBER")_"</td>",!
    W "  <td>&nbsp;<input type=""text"" id=""oved""  maxlength=""5"" size=""5"" value="""_OVED_""" onClick=""this.select()"" onKeyUp=""ChangeCd()"" onChange=""Find('oved','oved','NAME')"" >",!
      W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick=""Find('oved','oved!','NAME')"" >",!
    W "  </td>",!
    W "  <td width=""15%"" "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("NAME")_"</td>",!
    W "  <td "_$$^%W1ALIGN_" colspan=""2"" >&nbsp;<input type=""text"" id=""ovednm"" readonly=""readonly"" size=""30"" value="""_$$H2U^%L1FRM($$^W4NAME(OVED))_""">",!
    W "  </td>",!
    ;
    W "</tr>",!
  ;
  K VL,NM
  D LINE
  W "  <tr>"
  W "   <td>"
  W "    "_$$^%W1DICT("DONAME")
  W "   </td>"
  W "   <td>&nbsp;<input type=""text"" id=""doname"" size=""10"" ></td>"
  W "   <td>"
  ;I $$MKDM W "    "_$$^%W1DICT("PAYMENTKIND")
  I $$MKDM W "&nbsp;</td>"
  ;;I '$$MKDM D
  .W "    "_$$^%W1DICT("ABSENCECAUSE")
  .W "   </td>"
  .W "   <td>&nbsp;"
  . D SELCAUSE^W4RPRAB1($G(%ARG("OVED")))
  .W "    </select>",!
  .W "   </td>"
  W "  </tr>",!
  ;
  D LINE
  ;
  W "  <tr>",!
  W "    <td>"_$$^%W1DICT("MEDATE")_"</td>",!
  W "    <td id=""fromdate"" dir=""LTR"" "_$$^%W1ALIGN_" style=""font-weight:bold"">"
          D ^%W1DAT("MEDAT","")
  W "    </td>"
  W "    <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("ADDATE")_"</td>",!
  W "    <td id=""todate"" dir=""LTR"" align=""right"" style=""font-weight:bold"">"
          D ^%W1DAT("ADDAT","")
  W "    </td>"
  W "   </tr>",!
 ;
  W "  <tr><td colspan=""4"">&nbsp;</td></tr>",!
 ;
  W "<tr>",!
  W " <td>&nbsp;</td>",!
  W " <td>&nbsp;&nbsp;"
    D ROUNDBUT^%W1JS("repair",$$^%W1DICT("SUBMIT"),"Repair()","color:green","wh,22")
  W " &nbsp;</td>",!
  W "  <td>&nbsp;</td>",!
  W "  <td>&nbsp;&nbsp;"
    D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "&nbsp;</td>",!
 W "</tr>",!
 ;
 D LINE
 W "</table>",!
 W "</div>",!
 ;; I '$G(OVED) Q
 ;
 W "<br /><br />",!
 W "<div>",!
 W "</div>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
LINE ;
 W "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>",!
 Q
 ;
TEST(OVED) ;
 N OK S OK=1
 I OVED?1N.N D  Q OK
 .S OVED=$TR($J(OVED,5)," ",0)
 .I '$D(@$$^W4GL("NAME")@(OVED)) S OK=0
 Q "FIND"
 ;
MKDM(STAM) ;
 I $G(%ARG("MKDM")) Q 1
 I $$GETP^%W1PRM("MKDM") Q 1
 Q 0
 ;
CRGL ;
 K @$$^W4GL("W4ABS")
 N I,T F I=1:1 S T=$T(SIBA+I) Q:T=""  Q:T["Q  ;"  D
 .S IND=$P(T,";",2)
 .S CONT=$P(T,";",3)
 .I IND'="",CONT'="" S @$$^W4GL("W4ABS")@(IND)=CONT
 ;
 D
 .N I,T F I=1:1 S T=$T(PAYM+I) Q:T=""  Q:T["Q  ;"  D
 ..S IND=$P(T,";",2)
 ..S CONT=$P(T,";",3)
 ..I IND'="",CONT'="" S @$$^W4GL("W4MKDM")@(IND)=CONT
 Q
 ;
SIBA ;
 ;HAG;bg;
 ;HF;yteg;
 ;MHL;dlgn;
 ;MHLY;cli zlgn;
 ;ML;mie`lin;
 ;HT;zexcrd;
 Q  ;
 ;SHON;zepey;
 ;
PAYM ;
 ;BONUS;qepea;
 ;HKDM;dncwn;
 ;SHON;zepey;
Q  ;
 ;KN;zeipw;
 ;NS;zeriqp;
 Q  ;
 ;
INIT ;
 D KILL^%W1PRM("OVED")
 D KILL^%W1PRM("DONAME")
 D KILL^%W1PRM("MKDM")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTDMP
W4CRTRN ; [ 24.07.11 16:51 ] [ 25.10.09 11:10 ] [ 20.08.09 11:49 ]
 N (JB,%ARG,%REM)
 N FL
 S FL=$G(@$$^W4PRM@("ASH","PATHTRAN"))_"tran"_JB
 C FL:DELETE
 O FL:(WRITE:NEWVERSION:REWIND)
 U FL
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 ;
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 ;
 W " <soap:Body>",!
 W "   <DepositTransactionsEx xmlns=""http://shva.co.il/xmlwebservices/"">",!
 W "       <MerchantNumber>"_$G(@$$^W4PRM@("ASH","MASOF"))_"</MerchantNumber>",!
 W "         <UserName>"_$G(@$$^W4PRM@("ASH","USERNAME"))_"</UserName>",!
 W "         <Password>"_$G(@$$^W4PRM@("ASH","PASSWORD"))_"</Password>",!
 ;
 N I
 S TRANW=$$^W4GL("W4TRAN")
 W "<TransArr>",!
 F I=1:1 Q:'$D(@TRANW@(901,I))  D
 .N A S A=$G(^(I))
 .W "<string>"_A_"</string>",!
 W "</TransArr>",!
 ;
 W "   </DepositTransactionsEx>",!
 W "  </soap:Body>",!
 W "</soap:Envelope>",!
 ;
 C FL
 ;
 ;;W "<div align=""center"" dir="""_$$^%W1DIR_""" ><span style="""_$$FONTFM^W3CSS_""">"_$$^%W1DICT("WAIT")_"</span></div>",!
 S TRRES=$$^W4SHVTRN
 I TRRES D  ;-- ERROR
 .W "<div align=""center""><br /><br /><br />",!
 .W "<div dir="""_$$^%W1DIR_""" style=""top:200px;width:400px;border:2px solid black;background-color:yellow;color:black;font-weight:bold;font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">",!
 .N ERRCD S ERRCD=+TRRES
 .W "<br /><br />"_$$^%W1DICT("ERROR")_" "_ERRCD_"<br /><br />",!
 .W $$H2U^%L1FRM($G(^[$$^W3MAIN]W4SHVER($$COUNTRY^W3PRM,ERRCD))),!
 .W "<br /><br />",!
 .W "</div>",!
 .W "<br /><br >",!
 .D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red",",,,60")
 .W "</div>",!
 Q:TRRES
 ;
 K @TRANW
 K @$$^W4GL("TRAN")
 ;
 L +@$$^W4GL("DUMP"):2
 S IND=$O(@$$^W4GL("DUMP")@(999999),-1)+1
 S DAT=$ZD($H,"DD/MM/YEAR")
 S TIME=$ZD($H,"24:60")
 S HOV=$P(TRRES,"~",4)
 S ZHT=$P(TRRES,"~",3)
 S ASM=$P(TRRES,"~",2)
 S TN=$P(TRRES,"~",5)
 ;
 S @$$^W4GL("DUMP")@(IND)=(HOV-ZHT)_"|"_ZHT_"|"_HOV_"|"_TN_"|"_ASM_"|"_TIME_"|"_DAT
 S IND1=+$H_$P($H,",",2)_1
 S @$$^W4GL("DUMP1")@(IND1)=IND
 L -@$$^W4GL("DUMP")
 ;
 W "<div align=""center"">",!
 W "<br /><br />",!
 W "<span style=""font-size:"_$$^W3FSZ(18)_";color:green;"_$$FONTFM^W3CSS_""">"
 W $$^%W1DICT("SENDINGSUCCESSFULL"),!
 W "</span>",!
 W "<br /><br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""5"" >",!
 W "<tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white;font-size:"_$$^W3FSZ(12)_""">",!
 W " <th>"_$$^%W1DICT("DATE")_"</th>",!
 W " <th>"_$$^%W1DICT("TIME")_"</th>",!
 W " <th>"_$$^%W1DICT("AUTHNO")_"</th>",!
 W " <th>"_$$^%W1DICT("HOVA")_"</th>",!
 W " <th>"_$$^%W1DICT("ZHUT")_"</th>",!
 W " <th>"_$$^%W1DICT("NETO")_"</th>",!
 W "</tr>",!
 ;
 W "<tr style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">",!
 W " <td align=""center"">"_DAT_"</td>",!
 W " <td align=""center"">"_TIME_"</td>",!
 W " <td>"_ASM_"</td>",!
 W " <td>"_$J(HOV,2,2)_"</td>",!
 W " <td>"_$J(ZHT,2,2)_"</td>",!
 W " <td>"_$J(HOV-ZHT,2,2)_"</td>",!
 W "</tr>",!
 W "</table>",!
 W "<br /><br >",!
 W " <div id=""divbut"" align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" "
 W " <tr>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,60")
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red",",,,60")
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 W " </div>",!
 W "</div>",!
 W "</div>",!
 Q

W4RSTEND
W4RSTEND(TMPORD,TMPORDO) ; [ 19.01.23 19:15 ] [ 14.10.18 18:35 ] [ 20.07.17 13:05 ] 
 N (JB,%ARG,TMPORD,TMPORDO)
 K @TMPORDO
 S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0 S RES=$$^W4GETHZ(HZM,TMPORDO)
 S DT=$$^W4DZ
 ;
 F I=1:1 Q:'$D(@TMPORD@(I))  D
 .S A=$G(^(I))
 .S QN=$P(A,"~",5)
 .S CD=$P(A,"~",2) Q:'CD  Q:CD["-"
 .Q:$G(@$$^W4GL("PRTEND")@(DT,CD))'?1N.N
 .S RZN=$P($G(@TMPORDO@(I)),"~",5)-QN
 .D SET^W4ITEND(CD,RZN)
 K @TMPORDO
 ;
 I $$MM^W4PRM D
 .S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N K ^(N)
 .K ^[$$^W3MAIN]TMPORDB(JB)
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGNT
W4RSTGNT ; [ 17.06.26 10:58 ] [ 06.04.26 11:50 ] [ 20.11.25 12:40 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(%ARG("SHOW"))=0 Q
 ;
 D ^%W1ARG
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ;
 W "<style>tr {font-weight:bold}</style>",! 
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table width=""90%"" >",!
   W "<tr>"
    W "<td width=""93%"" "
     W "style=""text-align:center;font-family:sans-serif;font-size:"_$$^W3FSZ(14)_""" "
    W ">"
     W $$^%W1DICT("RSTGNETREPORT",MEDAT_"<>"_ADDAT)
    W "</td>"
    ;
   W "</tr>",!
   W "<tr>"
    W "<td colspan=""2"" style=""text-align:center;font-weight:bold;color:red"" >"
     W $$^%W1DICT("NOTSUCCESSSENDSONLY")
    W "</td>"
   W "</tr>",!
  W "</table>",!
  W "<br>",! 
  W "<br>",! 
  N MSDR S MSDR=$G(%ARG("MSDR"))
  I 'MSDR W " MSDR parameter is not defined ! " Q
  ;
  W "<table width=""100%"" id=""TbSnd"" align=""center"" style=""display:none"">",! 
   W "<tr><td colspan=7>"
    W "<table>",!
    D
     .D MMRKZ^W4MRKG(MSDR)
     .N N,I,J,IMAX
     .S N="",I=0 F  S N=$O(MMRKZ(N)) Q:N=""  S I=I+1
     .S IMAX=I,I=0,J=0
     .N II S N="" 
     .F  Q:I>IMAX  D
     ..W "<tr>"
     ..F J=1:1:20 S N=$O(MMRKZ(N)) Q:N=""  S I=I+1 Q:I>IMAX  D
     ...W "<td width=""5%"" style=""font-size:"_$$^W3FSZ(10)_";font-weight:normal"">" 
     ... W N_" "_$$H2U^%L1FRM(MMRKZ(N))
     ... W " <input type=""checkbox"" name=""mrkz"" id=""mrkz"_N_""" >" 
     ...W "</td>",!
     ..W "</tr>",!
    W "</table>",! 
   W "</td></tr>",!
   ;
   W "<tr>"
    W "<td width=""10%"">&nbsp;</td>"
    W "<td width=""25%"">" D ^%W1DAT("MEDTSND",$H-1,$$^%W1DICT("FROMDATE")) W "</td>"
    W "<td width=""25%"">" D ^%W1DAT("ADDTSND",$H-1,$$^%W1DICT("UNTILDATE")) W "</td>"
    ;
    W "<td width=""25%"" align=""center"" >" 
     W $$^%W1DICT("SIGNALL")_" "
     W "<input type=""checkbox"" id=""signall"" onClick=""SignAll()"" >"
    W "</td>"  
    ; 
    W "<td width=""10%"" id=""datsnd""></td>"
    ;
    W "<td align=""center"">" 
     W "<button style=""font-family:sans-serif;font-size:"_$$^W3FSZ(12)_";color:green"" "
      W "onClick=""Send()"" "
     W ">"
      W $$^%W1DICT("SEND")
     W "</button>",!
    W "</td>"
    ;
    W "<td align=""center"">" 
     W "<button style=""font-family:sans-serif;font-size:"_$$^W3FSZ(12)_";color:red"" "
      W "onClick=""CancelSend()"" "
     W ">"
      W $$^%W1DICT("CANCEL")
     W "</button>",!
    W "</td>"
   W "</tr>",!
  W "</table>",!
  ;
  W "<table id=""TbProt"" width=""90%"" >",!
   W "<tr>",!
    W "<th>"_$$^%W1DICT("DATE")_"</th>",!
    W "<th>"_$$^%W1DICT("ESEK")_"</th>",!
    W "<th>"_$$^%W1DICT("DEPARTREPORT")_"</th>",!
    W "<th>"_$$^%W1DICT("ITEMSSALEREP")_"</th>",!
    W "<th>"_$$^%W1DICT("WORKERCLOCKREPORT")_"</th>",!
    W "<th>"_$$^%W1DICT("LASTSENDTIME")_"</th>",!
   W "</tr>",!
  ;
  D GL
  ;
  S DTOLD="",I=0
  F DT=DT1:1:DT2 D 
  .S OKTR=0
  .S MSD="" F  S MSD=$O(@GL@(DT,MSD)) Q:MSD=""  D
  ..I $G(%ARG("MSD")),MSD'=%ARG("MSD") Q
  ..D REPMSD(DT,MSD)
  .I OKTR W "<tr><td colspan=""5"">&nbsp;</td></tr>",!
  ;
  W "</table>",!
  W "</div>",!
  Q
 ;
 ;
MEDAT(DT) ; 
 N DD S DD=+$ZD(DT,"DD") 
 N MM S MM=+$ZD(DT,"MM") 
 N YY S YY=$ZD(DT,"YY") 
 I DD=1 Q "01."_$S(MM=1:12,1:$$DOP^%L1FRM(MM-1))_"."_$S(MM=1:$$DOP^%L1FRM(YY-1),1:YY)
 Q "01."_$$DOP^%L1FRM(MM)_"."_YY
 ;
ADDAT(DT) ;
 Q $ZD(DT-1,"DD.MM.YY")
 ;
MSDRREP(MSD) 
 N OK S OK=""
 N GL S GL="^|$$^W3MAIN|W3MSDR"
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .I $D(@GL@(N,MSD)),$O(@GL@(N,MSD))'=""!($O(@GL@(N,MSD),-1)'="") S OK=N
 Q OK
 ;
 ;
REPMSD(DT,MSD) ;
 N MSDRREP,A
 S MSDRREP=$$MSDRREP(MSD) 
 N MSDR S MSDR=$G(%ARG("MSDR"))
 I MSDR,MSDRREP'=MSDR Q
 ;
 I $$RES1(MSDR,DT,MSD,"DEP")="OK",$$RES1(MSDR,DT,MSD,"ITM")="OK",$$RES1(MSDR,DT,MSD,"WRK")="OK" Q
 ;
 S I=I+1
 W "<tr "
 I '(I#2) W "style=""background-color:eaeaea"" "
 W ">"
  D TDDAT,TDMSD
  ;
  W "<td "_$$STYLE_">"
   W $$RES(DT,MSD,"DEP")
  W "</td>"
  W "<td "_$$STYLE_">"
   W $$RES(DT,MSD,"ITM")
  W "</td>"
  W "<td "_$$STYLE_">"
   W $$RES(DT,MSD,"WRK")
  W "</td>"
  W "<td align=""center"">"
   D
   .N DTLAST S DTLAST=$G(@GL@(DT,MSD)) Q:'DTLAST
   .W $ZD(DTLAST,"DD.MM.YY 24:60")
  W "</td>"
 W "</tr>",!
 ;
 S OKTR=1
 Q
 ;
 ;
TDDAT ;
  W "<td align=""center"">"
   I DT'=DTOLD W $ZD(DT,"DD.MM.YY") S DTOLD=DT
   I DT=DTOLD W "&nbsp;"
  W "</td>"
  Q
 ; 
 ;
TDMSD ;
  W "<td style=""cursor:pointer"" onClick=""ShowSnifProt('"_MSD_"','"_(DT1_"^"_DT2)_"','"_DT_"')"">"
   W MSD_" "_$$H2U^%L1FRM($$MSD^W3R(MSD))
  W "</td>"
 Q
 ; 
RES(DT,MSD,SUG) ; 
 N RES S RES=$$RES1(MSDR,DT,MSD,SUG)
 I RES="OK" Q "<span style=""color:darkgreen"">"_RES_"</span>"
 Q "<span style=""color:red"">"_RES_"</span>"
 ;
RES1(MSDR,DT,MSD,SUG)
 N RES S RES=$G(^|$$^W3MAIN|W4RSTGNET(MSDR,DT,MSD,SUG))
 Q RES
 ;
STYLE() ;
 Q "style=""text-align:center;font-weight:bold"" " 
 ;
 ;
SEND(JB,PRM) ; 
 ;;S ^AA("W4RSTGNT-SEND","PRM")=$G(PRM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N MSDR,MEDAT,ADDAT,DT,MEDT,ADDT,MSNIF,N,I 
 ;
 S MSDR=$P(PRM,";",1) I 'MSDR Q "NOMSDR"
 S MEDAT=$P(PRM,";",2) I 'MEDAT Q "NODAT"
 S ADDAT=$P(PRM,";",3) I 'ADDAT Q "NODAT"
 N MEDT,ADDT
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 ;
 S MSNIF=$P(PRM,";",4)
 ;
 F I=1:1:$L(MSNIF,"~") D
 .S N=$P(MSNIF,"~",I) Q:'N
 .D SEND2SNIF(MSDR,N,MEDAT_"^"_ADDAT) 
 .H 15*(ADDT-MEDT+1)
 ;
SENDE D PUT^%W1PRM("RSTGRES","END") Q
 ;
 ;
SEND2SNIF(MSDR,MSD,DAT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N GL,FL D GL
 S FL="/tmp/w4rstgnt"_MSDR_"-"_MSD
 C FL:(DELETE)
 O FL:(WRITE:NEWVERSION) U FL
  W "<Date>"_DAT_"</Date>",!
 C FL
 ;;S ^AA("W4RSTGNT-SEND2SNIF",MSDR,MSD)=$H_"\"_DAT
 N D,DT1,DT2
 S DT1=$$^%L1DC($P(DAT,"^",1),3)
 S DT2=$$^%L1DC($P(DAT,"^",2),3)
 I DT2<DT1 S DT2=DT1
 ;
 F D=DT1:1:DT2 S @GL@(D,MSD)=$H
 Q
 ;
GL ; 
 S GL="^[$$^W3MAIN]W4RSTGNET(MSDR)"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGNW
W4RSTGSN(JB,DT)  ; [ 29.12.24 12:09 ] [ 24.01.22 16:02 ] [ 09.01.22 08:16 ] 
 ;-------------------------------------------------------
 ; PARAMETERS :
 ; ^P1PRM("RSTG")=1
 ; ^P1PRM("RSTG","BRANCH")=BRANCH NUMBER
 ; ^P1PRM("RSTG","KEY")=BRANCH KEY
 ;
 ; ^W4RSTGO(1)=alcohol
 ; ^W4RSTGO(2)=drinks
 ; ^W4RSTGO(3)=desserts
 ;
 ; $$TAWMSD^W4PRM - IF TAW INCLUDE TAW OF REST
 ;-------------------------------------------------------
 ;
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 ;;S ^AA("RSTGSN","JB")=JB
 ;;S ^AA("RSTGSN","DT")=DT
 ;
 S DT=$$^%L1DC(DT,3)
 ;
 S HZ1=$O(@$$^W4REF@(DT,""))
 S HZ2=$O(@$$^W4REF@(DT,""),-1)
 ;
 I HZ1,HZ2 D
 .S DAT1=$P($P($G(@$$^W4ORD@(HZ1)),"\",4)," ")
 .S DAT2=$P($P($G(@$$^W4ORD@(HZ2)),"\",4)," ")
 .;
 .S DT1=$$^%L1DC(DAT1,3)
 .S DT2=$$^%L1DC(DAT2,3)
 ;
 ;;I 'HZ1!'HZ2 S (DT1,DT2)=DT
 S (DT1,DT2)=DT
 ;
 S Z1=$$^W4GL("Z1")
 ;
 D PREPPAR
 ; 
 D DEPS(DT,DT)
 D PAR(DT,DT)
 ;
 D OPNJSN(DT,"wrk")
 D WORK(DT)
 D SEND(DT,"wrk")
 ;
 D ^W4MNYSN(JB,DT,DT) ; 
 Q
 ;
 ; 
FILEIN(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_"."_KIND
 ;
FILEOU(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_KIND_".out"
 ; 
OPNJSN(DT,KIND) ; 
 S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN:(DELETE)
 O FILEIN:(WRITE:REWIND:NEWVERSION)
 U FILEIN
 Q
 ;
 ;
DEPS(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 D VRM,VRM1
 S (RESTSUM,TAWSUM,DLVSUM,CREDSUM,GUESTS,BIT)=0
 ;
 S DT=DT1
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .D ^W4SUMZRO
 .D ^W4SUM
 .;
 .S RESTSUM=RESTSUM+$G(SUMMSD) ;+$G(SUMAMSD)
 .S DLVSUM=DLVSUM+$G(SUMMSL) ; +$G(SUMMSL)
 .S TAWSUM=TAWSUM+$G(SUMDLP) ; +$G(SUMATAW)+$G(SUMADLP)
 .;;I $$TAWMSD^W4PRM S TAWSUM=TAWSUM+$G(SUMTAW)
 .S TAWSUM=TAWSUM+$G(SUMTAW)
 .S CREDSUM=CREDSUM+$G(SUMAMSD)+$G(SUMAMSL)+$G(SUMADLP)+$G(SUMATAW)
 .S GUESTS=GUESTS+$G(@$$^W4GL("TOT")@(DAT,"SD",1))
 .S BIT=BIT+$G(@$$^W4GL("TOT")@(DAT,"BIT",1))
 ;
 D OPNJSN(DT,"deps")
 D HD
 D W("income","{",1)
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT,"YEAR-MM-DD"))
 N NZ S NZ=$$NZ(DT)
 D W("z",NZ)
 ;
 D W("register",$J(RESTSUM+TAWSUM+DLVSUM,2,2))
 ;;D W("take_away",$J(TAWSUM,2,2))
 D W("take_away",$J(0,2,2))
 ;;D W("delivery",$J(DLVSUM,2,2))
 D W("delivery",$J(0,2,2))
 D W("credit",CREDSUM)
 ; 
 S N="" F  S N=$O(@$$^W4GL("W4RSTGO")@(N)) Q:N=""  D
 .S DEP=$G(^(N))
 .S SUM=$G(@VRM1@(DT,"DEP",N))
 .D W(DEP,$J(SUM,2,2))
 ;
 D W("cancel",BIT)
 D W("customers",GUESTS,1)
 D W1("}")
 ;
 D RSTGEND
 D SEND(DT,"deps")
 Q
 ;
NZ(DT) ;
 N N,Z S Z=""
 S N="" F  S N=$O(@$$^W4GL("Z")@(DT,N)) Q:N=""  S Z=Z_N_","
 Q $E(Z,1,$L(Z)-1)
 ;
 ; 
PREPPAR ;
 D ^W4RSTGP1(DT) Q
 ; --------------------  OLD !!! -------------------
 S PLUTOT=$$^W4GL("PLUTOT")
 ;
 K @$$^W4MAIN("TMPS111")
 D VRM K @VRM
 D VRM1 K @VRM1
 ;
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .S MRK="" F  S MRK=$O(@PLUTOT@(DAT,MRK)) Q:MRK=""  D
 ..S N="" F  S N=$O(@PLUTOT@(DAT,MRK,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S KV=$$SUG^W4P(N) ;;Q:'KV
 ...S QN=$P(A,"*",1)
 ...S SUM=$P(A,"*",2)
 ...S HNP=$P(A,"*",4)
 ...S @VRM1@(DT,"PAR",N,"QN")=$G(@VRM1@(DT,"PAR",N,"QN"))+QN
 ...S @VRM1@(DT,"PAR",N,"SUM")=$G(@VRM1@(DT,"PAR",N,"SUM"))+(SUM-HNP)
 ...S DEPR=+$G(@$$^W4GL("PARSUG")@(+KV,"RSTGO"))
 ...S @VRM1@("DEP",DEPR)=$G(@VRM1@("DEP",DEPR))+(SUM-HNP)
 ...
 ...S @VRM@("PAR",N,"QN")=$G(@VRM@("PAR",N,"QN"))+QN
 ...S @VRM@("PAR",N,"SUM")=$G(@VRM@("PAR",N,"SUM"))+(SUM-HNP)
 ...S @VRM@("DEP",DEPR)=$G(@VRM@("DEP",DEPR))+(SUM-HNP)
 Q
 ;
 ;
PAR(DT1,DT2) ;
 ;;I $G(@$$^W4PRM@("NEWRSTG")) D ^W4RSTGP2($G(DT1),$G(DT2)) Q
 D ^W4RSTGP2($G(DT1),$G(DT2)) Q
 N (JB,%ARG,%REM,DT1,DT2)
 S DT=DT1
 D ^%L1TS
 D VRM
 ;
 D OPNJSN(DT,"itm")
 D HD
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("products","[",1)
 S N="" F  S N=$O(@VRM@("PAR",N)) Q:N=""  D
 .D W1("{")
 .D W("id",N)
 .S NM=$$SHEM^W4P(N)
 .S NM=$$HB(NM)
 .S QN=$G(@VRM@("PAR",N,"QN"))
 .S SUM=$J($G(@VRM@("PAR",N,"SUM")),2,2)
 .D W("name",NM)
 .D W("sold",QN)
 .D W("total",SUM,1)
 .D W1("}")
 .I $O(@VRM@("PAR",N))'="" D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 D SEND(DT,"itm")
 Q
 ;
 ;
WORK(DT) ;
 N (JB,%ARG,%REM,DT) D ^%L1TS
 S TEMP=$$^W4MAIN("TEMP") K @TEMP
 S DT0=DT
 I $P($H,",",2)<(6*3600),'$D(@$$^W4GL("P1DZ")) S DT0=DT-1
 D PREP^W4LEVD(DT0,DT)
 ;
 D HD
 D W("employees","[",1)
 ;
 S SUG="" F  S SUG=$O(@TEMP@(SUG)) Q:SUG=""  D
 .S OV="" F  S OV=$O(@TEMP@(SUG,OV)) Q:OV=""  D
 ..S SHURA="" F  S SHURA=$O(@TEMP@(SUG,OV,SHURA)) Q:SHURA=""  D
 ...S A=$G(^(SHURA))
 ...S DATIN=$P(A,"*") ;;I 'DATIN Q
 ...S TIMEIN=$P(A,"*",3)
 ...S DATOU=$P(A,"*",4)
 ...S TIMEOU=$P(A,"*",6)
 ...D W1("{")
 ...D W("number",OV)
 ...S OV1=$$^W4NAME(OV)
 ...D W("full_name",$$HB(OV1))
 ...D W("start_date",$$DATRSTG(DATIN))
 ...D W("end_date",$$DATRSTG(DATOU))
 ...D W("start_time",$$TIMERSTG(TIMEIN))
 ...D W("end_time",$$TIMERSTG(TIMEOU))
 ...S ID=$$GET1^W4LEVPR(OV,"TZ")
 ...D W("identifier",ID,1)
 ...D W1("}")
 ...I $O(@TEMP@(SUG))="",$O(@TEMP@(SUG,OV))="",$O(@TEMP@(SUG,OV,SHURA))="" Q
 ...D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 Q
 ;
HD ;
 N KEY S KEY=$$KEY ;
 W !
 D W1("{")
 D W("restigo","{",1)
 D W("branch_id",$$BRANCH)
 D W("key",KEY)
 Q
 ;
KEY(STAM) ;
 ;"y$10$jCYx3tTVhkCDfrCwcrrGROh4E4WaNmNV5DvSPv7NePU7o98A7UIpi$2"
 Q $G(@$$^W4PRM@("RSTGO","KEY"))
 ;
BRANCH(STAM) ;
 Q $G(@$$^W4PRM@("RSTGO","BRANCH"))
 ;
W(TAG,VL,PR) ;
 ;;U 0 ; ***
 I '$$NUM(VL),$E(VL)'="""",VL'?1P S VL=""""_VL_""""
 W """"_TAG_""": "_VL I '$G(PR) W ","
 W !
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=""""_TAG_""": "_VL
 I '$G(PR) S @S1@(SH)=@S1@(SH)_","
 Q
 ;
W1(VL) ;
 ;;U 0 ; ***
 W VL,!
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=VL
 Q
 ;
NUM(VL)
 I VL?2N.N,$E(VL)="0" Q 0
 I VL?8N.N Q 0
 I VL?."-"1N.N.".".N Q 1
 Q 0
 ;
DATRSTG(DAT) ;
 I $G(DAT)="" Q ""
 N DT S DT=$$^%L1DC(DAT,3)
 Q $ZD(DT,"YEAR-MM-DD")
 ;
TIMERSTG(TIME) ;
 Q TIME
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
RSTGEND ;
 D W1(" }")
 D W1("}")
 Q
 ;
HB(TX) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S TX=$$INVH^%L1FRM(TX)
 S TX=$TR(TX,"\]},","/   ")
 I TX["""" S TX=$$RPL^%L1FRM(TX,"""","\""")
 Q $TR(TX,TS0,TS1)
 ;
 ;
SEND(DT,KIND) ;
 N FILEIN S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN
 N URL
 I KIND="deps" S URL="https://app.restigo.co.il/api/pos/elpos/receive/income"
 I KIND="itm" S URL="https://app.restigo.co.il/api/pos/elpos/receive/products"
 I KIND="wrk" S URL="https://app.restigo.co.il/api/pos/elpos/receive/employees"
 I KIND="emp" S URL="https://app.restigo.co.il/api/pos/elpos/receive/employees"
 Q:'$L($G(URL))
 ;
 N FILEOU S FILEOU=$$FILEOU(DT,KIND)
 N FLIN S FLIN=FILEIN_".utf"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FILEIN_" -o "_FLIN
 ;;D
 .S BZLTMP=$$^WBTMP_"bztmp"_+$$^W4MYDVN
 .O BZLTMP:(NEWVERSION:REWIND:GROUP="rw")
 .U BZLTMP W $C(239,187,191) C BZLTMP
 .S CMD0="/usr/bin/iconv -c -f cp862 -t utf-8 "_FILEIN_" >> "_BZLTMP_";/bin/cp "_BZLTMP_" "_FLIN
 .ZSY CMD0
 ;
 S CMD="curl -m 25 -s -w ""%{http_code}"" -H ""content-type:application/json"" -d@"_FLIN_" "_URL_" -o "_FILEOU
 ZSY CMD
 ;
 N H S H=+$H
 N SH S SH=$O(@$$^W4GL("W4RSTGPR")@(H,99999),-1)+1
 S @$$^W4GL("W4RSTGPR")@(H,SH,"CMD")=CMD
 S @$$^W4GL("W4RSTGPR")@(H,SH,"ZSY")=$ZSY
 ;;S @$$^W4GL("W4RSTGPR")@(H,SH,"ZS")=$ZS
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGO
W4RSTGO ; [ 06.03.19 10:53 ] [ 27.02.19 03:44 ] [ 26.02.19 09:55 ] 
 N (JB,ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table id=""Tbl"" width=""50%"" >"
   W "<tr>"
    W "<th>"_$$^%W1DICT("GROUPS")_"</th>"
    W "<th>"_$$^%W1DICT("RSTGODEPS")_"</th>"
   W "</tr>",!
   ;
   S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
   .S A=$G(^(N))
   .W "<tr id=""tr"_N_""">"
   . W "<td>"_N_" "_$$H2U^%L1FRM(A)_"</td>"
   . W "<td>"
   .  W "<select id=""dep"_N_""" onChange=""SetChn()"">"
   .   W "<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>",!
   .   S N1="" F  S N1=$O(@$$^W4GL("W4RSTGO")@(N1)) Q:N1=""  D
   .   .S A1=$G(^(N1))
   .   .W "<option value="""_N1_""" "
   .   .I $G(@$$^W4GL("PARSUG")@(N,"RSTGO"))=N1 W " selected=""selected"" "
   .   .W " >"_A1_"</option>",! 
   .  W "</select>",!
   .W "</tr>",!
   W "</table>",!
  W "</div>",!
  Q
  ;
SAVE(PRM) ;
 N I,COUPLE,IND,VL 
 F I=1:1:$L(PRM,";") D
 .S COUPLE=$P(PRM,";",I)
 .S IND=$P(COUPLE,":") Q:'IND
 .S VL=$P(COUPLE,":",2)
 .S @$$^W4GL("PARSUG")@(IND,"RSTGO")=VL
 Q 1
 
 
 
 
 
 

W4RSTGP
W4RSTGP ; [ 29.05.23 08:28 ] [ 02.07.20 13:21 ] [ 28.06.20 09:39 ] 
GET ;
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S @$$^W4PRM@("RSTGNEW")=RSTGNEW
 S @$$^W4PRM@("RSTGO","BRANCH")=BRANCH
 S @$$^W4PRM@("RSTGO","KEY")=KEY
 Q 1
 ;
END Q
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGP1
W4RSTGP1(DT,NZ) ; [ 14.01.24 13:02 ] [ 26.09.23 11:25 ] [ 14.12.20 14:50 ] 
 N (JB,%REM,%ARG,DT,NZ,NOCHILD)
 S NP=0
 S GLZ=$$^W4GL("Z")
 S NP=0
 I $G(NZ) D
 .S N="" F  S N=$O(@GLZ@(DT,N)) Q:N=""  S NP=NP+1 Q:N=NZ
 .I N'=NZ S NP=0
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 S REF=$$^W4REF 
 S NPZ=1
 ;
 S HZ="" F  S HZ=$O(@REF@(DT,HZ)) Q:HZ=""  D
 .S A0=$G(^(HZ))
 .I A0[",^" S NPZ=NPZ+1
 .I $G(NZ),NP,NPZ'=NP Q
 .
 .N W4ORD S W4ORD=$$^W4ORD
 .N NMB S NMB=$$NMB^W4HZMST(HZ)
 .I $$PAPJ^W4PRM,NMB=$$MPTBL^W4MPCHZ!(NMB=$$COUPTBL^W4MPCHZ) Q
 .
 .S HNH=$$HNH^W4HZMST(HZ)
 .S TOTORD=$$TOT^W4HZMST(HZ)
 .S N1="" F  S N1=$O(@W4ORD@(HZ,N1)) Q:N1=""  I N1 D
 ..S A=$G(^(N1))
 ..S PAR=$P(A,"\") Q:'PAR&(PAR'="0")&($E(PAR,1,2)'="0-")
 ..S QN=$P(A,"\",5)
 ..I $P(QN,".",2) S QN=$S(QN<0:-1,1:1)
 ..S SUM0=$P(A,"\",7)-$P(A,"\",6)
 ..S AHNHP=0
 ..S CDN=$P($G(@W4ORD@(HZ,N1+1)),"\")
 ..I $E(CDN)="-",CDN["%" S AHNHP=+$E(CDN,2,20)
 ..S SUM=$J(SUM0*(100-AHNHP)*.01,2,2)
 ..S HNHP=$$HNHP(SUM0,TOTORD,HNH)
 ..S SUM=SUM-HNHP
 ..
 ..D SETVRM(PAR,0,QN,SUM)
 ..
 ..S N2="" F  S N2=$O(@W4ORD@(HZ,N1,N2)) Q:N2=""  I N2 D
 ...I $D(^(N2))<10 D  Q
 ....S A2=$G(^(N2))
 ....S QN=$P(A2,"\",3)
 ....S MH=$P(A2,"\",2)
 ....S SUM0=$J(QN*MH,2,2),SUM=SUM0
 ....I $G(AHNHP) S SUM=$J(SUM0*(100-AHNHP)*.01,2,2)
 ....S HNHP=$$HNHP(SUM0,TOTORD,HNH)
 ....S SUM=SUM-HNHP
 ....D SETVRM(PAR,N2,QN,SUM)
 ...
 ...S N3=""  F  S N3=$O(@W4ORD@(HZ,N1,N2,N3)) Q:N3=""  I N3 D
 ....S A3=$G(^(N3))
 ....I $P(A3,"\") S CD=$P(A3,"\")
 ....E  S CD=$P(A3,"\",4)
 ....S QN=$P(A3,"\",3)
 ....S MH=$P(A3,"\",7)
 ....S SUM0=$J(QN*MH,2,2)
 ....Q:CD=""
 ....S SUM=SUM0
 ....I $G(AHNHP) S SUM=$J(SUM0*(100-AHNHP)*.01,2,2)
 ....S HNHP=$$HNHP(SUM0,TOTORD,HNH)
 ....S SUM=SUM-HNHP
 ....D SETVRM(PAR,CD,QN,SUM)
 Q
 ;
 ;
HNHP(SUM0,TOTORD,HNH) ;
 I '$G(TOTORD) Q 0
 Q $J(HNH/TOTORD*SUM0,2,2)
 ;
SETVRM(PAR,CDT,QN,SUM) ; 
 I '$G(NOCHILD) D  Q
 .S @VRM@("PAR",PAR,CDT,"QN")=$G(@VRM@("PAR",PAR,CDT,"QN"))+QN
 .S @VRM@("PAR",PAR,CDT,"SUM")=$G(@VRM@("PAR",PAR,CDT,"SUM"))+SUM
 ;
 I $G(CDT) S PAR=CDT
 S @VRM@("PAR",PAR,"QN")=$G(@VRM@("PAR",PAR,"QN"))+QN
 S @VRM@("PAR",PAR,"SUM")=$G(@VRM@("PAR",PAR,"SUM"))+SUM
 Q
 
 
 
 
 
 
 
 
 
 
 

W4RSTGP2
W4RSTGP2(DT1,DT2) ; [ 18.08.24 12:31 ] [ 15.02.24 14:34 ] [ 14.02.24 21:38 ] 
 N (JB,%ARG,%REM,DT1,DT2)
 S DT=DT1
 D ^%L1TS
 D VRM^W4RSTGSN
 ;
 D OPNJSN^W4RSTGSN(DT,"itm")
 D HD^W4RSTGSN
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("override","true")
 D W("products","[",1)
 ;
 S BLYGR=$G(@$$^W4GL("W4BLYGR"))
 ;
 S N="" F  S N=$O(@VRM@("PAR",N)) Q:N=""  D
 .D W1("{")
 .D WR(N,0)
 .D W1(",")
 .D W1("""items"" : [")
 .S N1=0 F  S N1=$O(@VRM@("PAR",N,N1)) Q:N1=""  D
 ..D W1("{")
 ..D WR(N,N1)
 ..D W1("}")
 ..I $O(@VRM@("PAR",N,N1))'="" D W1(",")
 .D W1("]") ;; -- ITEMS
 .D W1("}") ;;-- PRODUCT
 .I $O(@VRM@("PAR",N))'="" D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND^W4RSTGSN
 D SEND^W4RSTGSN(DT,"itm")
 Q
 ;
W(TAG,VL,PR) ;
 D W^W4RSTGSN($G(TAG),$G(VL),$G(PR))
 Q
 ;
W1(VL) ;
 D W1^W4RSTGSN($G(VL))
 Q
 ;
 ;
WR(N,N1) ;
 S N1=+$G(N1)
 N CD S CD=N
 I N1 S CD=N1
 ;
 N NM,PRC,QN,SUM
 S NM=$$SHEM^W4P(CD)
 S NM=$$HB^W4RSTGSN(NM)
 S PRC=$$MH^W4P(CD)
 S QN=$G(@VRM@("PAR",N,N1,"QN"))
 S SUM=$J($G(@VRM@("PAR",N,N1,"SUM")),2,2)
 ;
 D W("id",CD)
 D W("name",NM)
 D W("catalog_price",$J(PRC,2,2))
 ;
 N SUGP S SUGP=$$SUG^W4P(CD)
 I BLYGR,SUGP=BLYGR D 
 .D W("type",1) 
 .;;D W("Waste",QN) 
 .D W("throw",QN) 
 .D W("sold",0) 
 .D W("total",0,1) 
  
 I 'BLYGR!(BLYGR&(SUGP'=BLYGR)) D 
 .D W("type",0) 
 .;;D W("Waste",0) 
 .D W("throw",0) 
 .D W("sold",QN) 
 .I $$PAPJ^W4PRM,SUGP=52!(SUGP=23),SUM<(QN*PRC) D  ; -- 14/02/24 - BAKASHA SHEL ELIA
 ..S SUM=SUM+(QN*PRC)
 .D W("total",SUM,1) 
 Q
 
 
 
 
 
 
 
 
 

W4RSTGPR
W4RSTGPR ; [ 04.02.26 16:39 ] [ 10.12.24 13:37 ] [ 18.06.24 13:56 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 D DAT
 ;
 D FRM(MEDT,ADDT)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
  D DIVBUT
  D KOT
  D VW
  ;;D DIVBUT
 W "</div>",!
 ;
 Q
 ;
 ;
ASK ;
 D INIT^W4Z
 W "<div id=""divask"" align=""center"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("MEDAT",MEDAT,"<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("ADDAT",ADDAT,"<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FRM(MEDT,ADDT) ;
 N (JB,%ARG,MEDT,ADDT)
 D VRM K @VRM
 S DIR="/tmp/"
 ;
 S IND=0
 F DT=MEDT:1:ADDT D
 .D READ("DEP","deps")
 .D READ("ITM","itm")
 .D READ("WRK","wrk")
 Q
 ;
 ;
READ(SUG,sug)
 N FLIN S FLIN=$$FILEIN^W4RSTGSN(DT,sug)
 I $$^%L1ZOS(10,FLIN)<0 Q
 S @VRM@(DT,SUG,"IN")=FLIN
 C FLIN
 O FLIN:(REWIND:READONLY)
 U FLIN
 S @VRM@(DT,SUG,"IN")=FLIN
 N A,J F J=1:1 R A Q:$ZEOF  D
 .S @VRM@(DT,SUG,"IN",J)=A
 C FLIN
 ;
 N FLOU S FLOU=$$FILEOU^W4RSTGSN(DT,sug)
 ;
 I $$^%L1ZOS(10,FLOU)>-1 D
 .O FLOU:(REWIND:READONLY)
 .U FLOU
 .S @VRM@(DT,SUG,"OU")=FLOU
 .F J=1:1 R A Q:$ZEOF  D
 ..S @VRM@(DT,SUG,"OU",J)=$E(A,1,3800)
 .C FLOU
 Q
 ;
 ;
KOT ;
 W "<br>",!
 W "<table width=""80%"" >",!
  W "<tr>"
   W "<td style=""font-size:"_$$^W3FSZ(14)_";text-align:center"" >"
    W $$^%W1DICT("RSTGSENDINGPROTOCOL",MEDAT_"<>"_ADDAT)
   W "</td>",!
  W "</tr>",!
  W "</table>",!
 W "<br>",!
 Q
 ;
 ;
VW ;
 N (JB,%ARG,%REM)
  D DAT
  ;
  W "<table style=""width:98%"" cellpadding=0 cellspacing=0 border=""1"">"
  W " <tr>" 
   W "<th width=""6%"""_$$^%W1DICT("CSRDATE")_"</th>"
   W "<th width=""30%"">"_$$^%W1DICT("MANYSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("ITEMSSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("WORKERSSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("SENDAGAIN")_"</th>"
  W " </tr>",!
  ;
  S TOP=0,DATTOP=""
  D VRM
  ;
  F DT=ADDT:-1:MEDT D
  .N NOK S NOK=0
  .W "<tr align=""center"" "
  .I $G(%ARG("DTNET")),$$^%L1DC(%ARG("DTNET"),3)=DT D
  .. W "style=""background-color:yellow"" "
  .W ">"
  . W "<td >"
  .  W $ZD(DT,"DD.MM.YY")
  . W "</td>"
  .
  . W "<td id=""DEP"_DT_""">"
  .  D VWSEND(DT,"DEP")
  . W "</td>"
  .
  . W "<td id=""ITM"_DT_""">"
  .  D VWSEND(DT,"ITM")
  . W "</td>"
  .
  . W "<td id=""WRK"_DT_""">"
  .  D VWSEND(DT,"WRK")
  . W "</td>"
  .
  .W "<td align=""center"">"
  .;;I $G(NOK) D SENDAGAIN(DT)
  . D SENDAGAIN(DT)
  .W "</td>"
 .
  .W "</tr>",!
  W "</table>",!
  W "</div>",!
  Q
  ;
VWSEND(DT,SUG) ;
 D VRM
 W "<table align=""center"">",! 
  W "<tr>"
   W "<td width=""30%"">"
     D VWTIME(DT,SUG)
   W "</td>"
   W "<td dir=""LTR"" align=""center"" >"
     D VWFILE(DT,SUG)
   W "</td>"
   W "<td width="""_$S(SUG="DEP":"25%",1:"14%")_""" >"
     D VWRES(DT,SUG)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q 
 ; 
 ;
VWTIME(DT,SUG) ; 
 N FLIN S FLIN=$G(@VRM@(DT,SUG,"IN")) I FLIN="" W "&nbsp;" Q
 N FLOU,A,TIME
 S FLOU="Stat"_$J
 ZSY "stat --format=%z "_FLIN_" > "_FLOU
 O FLOU:(REWIND:READONLY)
 U FLOU R A C FLOU
 S TIME=$P(A,".") I TIME="" W "&nbsp;" Q 
 W TIME
 Q 
 ; 
VWFILE(DT,SUG) 
 N FLIN S FLIN=$G(@VRM@(DT,SUG,"IN")) I FLIN="" W "&nbsp;" Q
 N COLOR S COLOR="darkblue"
 I $$RES(DT,SUG)'="OK" S COLOR="red"
 W "<span style=""color:"_COLOR_";text-decoration:underline;cursor:pointer"" onClick=""ClickIn('"_DT_"','"_SUG_"')"" >"
  W FLIN 
 W "</span>",!
 Q 
 ;
VWRES(DT,SUG) ; 
 N VL,COLOR S VL=$$RES(DT,SUG) Q:VL=""
 W "<div class=""btns"">",!
 I SUG="DEP" D
 . W "<input type=""button"" onClick=""ShowZ('"_DT_"')"" value=""Z"" />"
   
  W "<input type=""button"" id=""btnou"" "
   S COLOR="green" I $$RES(DT,SUG)'="OK" S COLOR="red",NOK=1
   W " style=""color:"_COLOR_""" " 
   W "value="""_VL_""" onClick=""ClickOut('"_DT_"','"_SUG_"')"" "
  W " />"
 W "</div>",!
 Q 
 ;
SENDAGAIN(DT) ; 
 Q:'$G(DT)
 W "<input type=""button"" id=""btnou"" "
 W " style=""color:blue"" " 
 W "value="""_$$^%W1DICT("SENDAGAIN")_""" onClick=""SendAgain('"_DT_"')"" "
 W " />"
 Q 
 ;
DAT ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 S MEDAT=$ZD(MEDT,"DD.MM.YY")
 S ADDAT=$ZD(ADDT,"DD.MM.YY")
 Q
 ;
RES(DT,SUG) ;
 N FLOU S FLOU=$G(@VRM@(DT,SUG,"OU"))
 N VL S VL="NOK"
 N A S A=$G(@VRM@(DT,SUG,"OU",1))
 I A[("""status"":""ok""")!(A[("""status"":""success""")) S VL="OK"
 Q VL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGPW
W4RSTGPW(DAT,GLPR,NMPR) ; [ 27.04.26 19:35 ] [ 05.08.25 04:22 ] [ 15.06.25 15:28 ] 
 N (JB,%ARG,DAT,GLPR,NMPR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 I $G(GLPR)="" S GLPR="W4RSTGPW"
 I $G(NMPR)="" S NMPR="RSTGPW"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 S DT=$$^%L1DC(DAT,3)
 W "<p style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT(NMPR,$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 
 S GL=$$^W4GL(GLPR)
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .S PRB=0
 .S A=$G(^(N)),A1=$P(A,"\"),A2=$P(A,"\",2)
 .I A["""number""" D
 ..W "<br><br>"_$TR($J("",40)," ","-")_"<br>",! ;;_$$NBSP^%L1FRM(5)_$ZD(A2,"DD.MM.YY 24:60")_"<br>",!
 .I $E(A,1,3)="CMD" W "<br>",!
 .I $E(A,1,4)="TIME" W "<hr><b>",! S PRB=1
 .
 .W $$RKV(A1) W:PRB "</b><br>" W "<br>",!
 W "</div>",!
 Q
 ;
 ; 
RKV(VL) ; 
 N OK S OK=0
 D
 .I VL[$C(215) S OK=1 Q
 .N J F J=1:1:$L(VL) I $A(VL,J)>223 S OK=2
 ;
 N L0 S L0=""
 I VL?1U.U1" "1":".E S L0=$P(VL,":"),VL=$P(VL,":",2,200)
 ;
 I OK=1 D
 .N L,R
 .S L=$P(VL,":"),R=$P(VL,":",2,200)
 .S R=$P(R,"\")
 .;;S R=$$INVH^%L1FRM($TR(R,TS1,TS0))  
 .;;S R=$$H2U^%L1FRM(R)
 .S R=$$H2U^%L1FRM($$INVH^%L1FRM($$U2D^%L1CNV(R)))
 .S VL=L_":"_R
 ;
 I OK=2 D
 .N L,R
 .S L=$P(VL,":"),R=$P(VL,":",2,200)
 .S R=$P(R,"\")
 .S R=$$INVH^%L1FRM($TR(R,TS1,TS0))  
 .S R=$$H2U^%L1FRM(R)
 .S VL=L_":"_R
 ;
 I $L(L0) S VL=L0_" : "_VL
 Q VL 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGS0
W4RSTGSN(JB,DT)  ; [ 01.05.22 10:28 ] [ 28.02.22 11:02 ] [ 26.01.22 19:40 ] 
 ;-------------------------------------------------------
 ; PARAMETERS :
 ; ^P1PRM("RSTG")=1
 ; ^P1PRM("RSTG","BRANCH")=BRANCH NUMBER
 ; ^P1PRM("RSTG","KEY")=BRANCH KEY
 ;
 ; ^W4RSTGO(1)=alcohol
 ; ^W4RSTGO(2)=drinks
 ; ^W4RSTGO(3)=desserts
 ;
 ; $$TAWMSD^W4PRM - IF TAW INCLUDE TAW OF REST
 ;-------------------------------------------------------
 ;
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 ;;S ^AA("RSTGSN","JB")=JB
 ;;S ^AA("RSTGSN","DT")=DT
 ;
 S DT=$$^%L1DC(DT,3)
 ;
 S HZ1=$O(@$$^W4REF@(DT,""))
 S HZ2=$O(@$$^W4REF@(DT,""),-1)
 ;
 I HZ1,HZ2 D
 .S DAT1=$P($P($G(@$$^W4ORD@(HZ1)),"\",4)," ")
 .S DAT2=$P($P($G(@$$^W4ORD@(HZ2)),"\",4)," ")
 .;
 .S DT1=$$^%L1DC(DAT1,3)
 .S DT2=$$^%L1DC(DAT2,3)
 ;
 ;;I 'HZ1!'HZ2 S (DT1,DT2)=DT
 S (DT1,DT2)=DT
 ;
 S Z1=$$^W4GL("Z1")
 ;
 D PREPPAR
 ; 
 D DEPS(DT,DT)
 D PAR(DT,DT)
 ;
 D OPNJSN(DT,"wrk")
 D WORK(DT)
 D SEND(DT,"wrk")
 ;
 D ^W4MNYSN(JB,DT,DT) ; 
 Q
 ;
 ; 
FILEIN(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_"."_KIND
 ;
FILEOU(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_KIND_".out"
 ; 
OPNJSN(DT,KIND) ; 
 S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN:(DELETE)
 O FILEIN:(WRITE:REWIND:NEWVERSION)
 U FILEIN
 Q
 ;
 ;
DEPS(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 D VRM,VRM1
 S (RESTSUM,TAWSUM,DLVSUM,CREDSUM,GUESTS,BIT)=0
 ;
 S DT=DT1
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .D ^W4SUMZRO
 .D ^W4SUM
 .;
 .S RESTSUM=RESTSUM+$G(SUMMSD) ;+$G(SUMAMSD)
 .S DLVSUM=DLVSUM+$G(SUMMSL) ; +$G(SUMMSL)
 .S TAWSUM=TAWSUM+$G(SUMDLP) ; +$G(SUMATAW)+$G(SUMADLP)
 .;;I $$TAWMSD^W4PRM S TAWSUM=TAWSUM+$G(SUMTAW)
 .S TAWSUM=TAWSUM+$G(SUMTAW)
 .S CREDSUM=CREDSUM+$G(SUMAMSD)+$G(SUMAMSL)+$G(SUMADLP)+$G(SUMATAW)
 .S GUESTS=GUESTS+$G(@$$^W4GL("TOT")@(DAT,"SD",1))
 .S BIT=BIT+$G(@$$^W4GL("TOT")@(DAT,"BIT",1))
 ;
 D OPNJSN(DT,"deps")
 D HD
 ;
 I '$G(@$$^W4PRM@("RSTGNEW")) D MNYOLD(DT)
 I $G(@$$^W4PRM@("RSTGNEW")) D MNYNEW(DT)
 ;
 D SEND(DT,"deps")
 Q
 ;
NZ(DT) ;
 N N,Z S Z=""
 S N="" F  S N=$O(@$$^W4GL("Z")@(DT,N)) Q:N=""  S Z=Z_N_","
 Q $E(Z,1,$L(Z)-1)
 ;
 ; 
PREPPAR ;
 D ^W4RSTGP1(DT) Q
 ; --------------------  OLD !!! -------------------
 S PLUTOT=$$^W4GL("PLUTOT")
 ;
 K @$$^W4MAIN("TMPS111")
 D VRM K @VRM
 D VRM1 K @VRM1
 ;
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .S MRK="" F  S MRK=$O(@PLUTOT@(DAT,MRK)) Q:MRK=""  D
 ..S N="" F  S N=$O(@PLUTOT@(DAT,MRK,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S KV=$$SUG^W4P(N) ;;Q:'KV
 ...S QN=$P(A,"*",1)
 ...S SUM=$P(A,"*",2)
 ...S HNP=$P(A,"*",4)
 ...S @VRM1@(DT,"PAR",N,"QN")=$G(@VRM1@(DT,"PAR",N,"QN"))+QN
 ...S @VRM1@(DT,"PAR",N,"SUM")=$G(@VRM1@(DT,"PAR",N,"SUM"))+(SUM-HNP)
 ...S DEPR=+$G(@$$^W4GL("PARSUG")@(+KV,"RSTGO"))
 ...S @VRM1@("DEP",DEPR)=$G(@VRM1@("DEP",DEPR))+(SUM-HNP)
 ...
 ...S @VRM@("PAR",N,"QN")=$G(@VRM@("PAR",N,"QN"))+QN
 ...S @VRM@("PAR",N,"SUM")=$G(@VRM@("PAR",N,"SUM"))+(SUM-HNP)
 ...S @VRM@("DEP",DEPR)=$G(@VRM@("DEP",DEPR))+(SUM-HNP)
 Q
 ;
 ;
PAR(DT1,DT2) ;
 ;;I $G(@$$^W4PRM@("NEWRSTG")) D ^W4RSTGP2($G(DT1),$G(DT2)) Q
 D ^W4RSTGP2($G(DT1),$G(DT2)) Q
 N (JB,%ARG,%REM,DT1,DT2)
 S DT=DT1
 D ^%L1TS
 D VRM
 ;
 D OPNJSN(DT,"itm")
 D HD
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("products","[",1)
 S N="" F  S N=$O(@VRM@("PAR",N)) Q:N=""  D
 .D W1("{")
 .D W("id",N)
 .S NM=$$SHEM^W4P(N)
 .S NM=$$HB(NM)
 .S QN=$G(@VRM@("PAR",N,"QN"))
 .S SUM=$J($G(@VRM@("PAR",N,"SUM")),2,2)
 .D W("name",NM)
 .D W("sold",QN)
 .D W("total",SUM,1)
 .D W1("}")
 .I $O(@VRM@("PAR",N))'="" D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 D SEND(DT,"itm")
 Q
 ;
 ;
WORK(DT) ;
 N (JB,%ARG,%REM,DT) D ^%L1TS
 S TEMP=$$^W4MAIN("TEMP") K @TEMP
 S DT0=DT
 I $P($H,",",2)<(6*3600),'$D(@$$^W4GL("P1DZ")) S DT0=DT-1
 D PREP^W4LEVD(DT0,DT)
 ;
 D HD
 D W("employees","[",1)
 ;
 S SUG="" F  S SUG=$O(@TEMP@(SUG)) Q:SUG=""  D
 .S OV="" F  S OV=$O(@TEMP@(SUG,OV)) Q:OV=""  D
 ..S SHURA="" F  S SHURA=$O(@TEMP@(SUG,OV,SHURA)) Q:SHURA=""  D
 ...S A=$G(^(SHURA))
 ...S DATIN=$P(A,"*") ;;I 'DATIN Q
 ...S TIMEIN=$P(A,"*",3)
 ...S DATOU=$P(A,"*",4)
 ...S TIMEOU=$P(A,"*",6)
 ...D W1("{")
 ...D W("number",OV)
 ...S OV1=$$^W4NAME(OV)
 ...D W("full_name",$$HB(OV1))
 ...D W("start_date",$$DATRSTG(DATIN))
 ...D W("end_date",$$DATRSTG(DATOU))
 ...D W("start_time",$$TIMERSTG(TIMEIN))
 ...D W("end_time",$$TIMERSTG(TIMEOU))
 ...S ID=$$GET1^W4LEVPR(OV,"TZ")
 ...D W("identifier",ID,1)
 ...D W1("}")
 ...I $O(@TEMP@(SUG))="",$O(@TEMP@(SUG,OV))="",$O(@TEMP@(SUG,OV,SHURA))="" Q
 ...D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 Q
 ;
HD ;
 N KEY S KEY=$$KEY ;
 W !
 D W1("{")
 D W("restigo","{",1)
 D W("branch_id",$$BRANCH)
 D W("key",KEY)
 Q
 ;
KEY(STAM) ;
 ;"y$10$jCYx3tTVhkCDfrCwcrrGROh4E4WaNmNV5DvSPv7NePU7o98A7UIpi$2"
 Q $G(@$$^W4PRM@("RSTGO","KEY"))
 ;
BRANCH(STAM) ;
 Q $G(@$$^W4PRM@("RSTGO","BRANCH"))
 ;
W(TAG,VL,PR) ;
 ;;U 0 ; ***
 I '$$NUM(VL),$E(VL)'="""",VL'?1P,$G(PR)'<0 S VL=""""_VL_""""
 W """"_TAG_""": "_VL I '$G(PR) W ","
 W !
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=""""_TAG_""": "_VL
 I '$G(PR) S @S1@(SH)=@S1@(SH)_","
 Q
 ;
W1(VL) ;
 ;;U 0 ; ***
 W VL,!
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=VL
 Q
 ;
NUM(VL)
 I VL?2N.N,$E(VL)="0" Q 0
 I VL?8N.N Q 0
 I VL?."-"1N.N.".".N Q 1
 Q 0
 ;
DATRSTG(DAT) ;
 I $G(DAT)="" Q ""
 N DT S DT=$$^%L1DC(DAT,3)
 Q $ZD(DT,"YEAR-MM-DD")
 ;
TIMERSTG(TIME) ;
 Q TIME
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
RSTGEND ;
 D W1(" }")
 D W1("}")
 Q
 ;
HB(TX) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S TX=$$INVH^%L1FRM(TX)
 S TX=$TR(TX,"\]},","/   ")
 I TX["""" S TX=$$RPL^%L1FRM(TX,"""","\""")
 Q $TR(TX,TS0,TS1)
 ;
 ;
SEND(DT,KIND) ;
 N FILEIN S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN
 N URL
 I KIND="deps" S URL="https://app.restigo.co.il/api/pos/elpos/receive/income"
 I KIND="itm" S URL="https://app.restigo.co.il/api/pos/elpos/receive/products"
 I KIND="wrk" S URL="https://app.restigo.co.il/api/pos/elpos/receive/employees"
 I KIND="emp" S URL="https://app.restigo.co.il/api/pos/elpos/receive/employees"
 Q:'$L($G(URL))
 ;
 N FILEOU S FILEOU=$$FILEOU(DT,KIND)
 N FLIN S FLIN=FILEIN_".utf"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FILEIN_" -o "_FLIN
 ;
 S CMD="curl -m 15 -s -w ""%{http_code}"" -H ""content-type:application/json"" -d@"_FLIN_" "_URL_" -o "_FILEOU
 ZSY CMD
 ;
 N H S H=+$H
 N SH S SH=$O(@$$^W4GL("W4RSTGPR")@(H,99999),-1)+1
 S @$$^W4GL("W4RSTGPR")@(H,SH,"CMD")=CMD
 S @$$^W4GL("W4RSTGPR")@(H,SH,"ZSY")=$ZSY
 ;;S @$$^W4GL("W4RSTGPR")@(H,SH,"ZS")=$ZS
 Q
 ;
 ;
MNYOLD(DT) ; 
 D W("income","{",1)
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT,"YEAR-MM-DD"))
 N NZ S NZ=$$NZ(DT)
 D W("z",NZ)
 ;
 D W("register",$J(RESTSUM+TAWSUM+DLVSUM,2,2))
 ;;D W("take_away",$J(TAWSUM,2,2))
 D W("take_away",$J(0,2,2))
 ;;D W("delivery",$J(DLVSUM,2,2))
 D W("delivery",$J(0,2,2))
 D W("credit",CREDSUM)
 ; 
 S N="" F  S N=$O(@$$^W4GL("W4RSTGO")@(N)) Q:N=""  D
 .S DEP=$G(^(N))
 .S SUM=$G(@VRM1@(DT,"DEP",N))
 .D W(DEP,$J(SUM,2,2))
 ;
 D W("cancel",BIT)
 D W("customers",GUESTS,1)
 D W1("}")
 ;
 D RSTGEND
 Q
 ;
 ; 
MNYNEW(DT) ;
 N M S M(1)="xwea"
 S M(2)="axr"
 ; 
 N SOAD
 D W("income","{",1)
 D W("startDate",$ZD(DT1,"YEAR-MM-DD"))
 D W("endDate",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactionsDate",$ZD(DT,"YEAR-MM-DD"))
 N NZ S NZ=$$NZ(DT)
 D W1("""zNumber"":"""_NZ_""",")
 S SOAD=$$QNPAY(DT)
 D W("totalCustomers",SOAD)
 ;
 D W("breakdownShifts","[",1)
 S MAXSHIFT=$S($G(@$$^W4PRM@("SHIFT2")):2,1:1)
 F SHIFT=1:1:MAXSHIFT D
 .D W1("{")
 .D W("shiftType","shiftID-"_SHIFT)
 .D W("shiftName",$$HB(M(SHIFT)))
 .D W("totalCharged",$$TOT(DT,"SHOV",SHIFT))
 .D W("totalRefunded",$$TOT(DT,"SZIC",SHIFT))
 .D W("breakdownOrders","[",1)
 .D W1("{")
 .D PAYM(DT,SHIFT,2,"dcrqn")
 .D W1(",{")
 .D PAYM(DT,SHIFT,1,"TAKEAWAY")
 .D W1(",{")
 .D PAYM(DT,SHIFT,3,"migelyn")
 D W1("]}]}}}")
 Q  ; 
 ; 
 ;
PAYM(DT,SHIFT,SUG,SUG1)
 D W("orderType",SUG)
 D W("orderName",$$HB(SUG1))
 D W("totalCharged",$$TOT(DT,"SHOV",SHIFT,SUG))
 D W("totalRefunded",$$TOT(DT,"SZIC",SHIFT,SUG))
 D W("breakdownPayments","[",1)
 D PAYMKND(SUG,SHIFT,"credit","i`xy`")
 D W1(",")
 D PAYMKND(SUG,SHIFT,"cash","onefn")
 D W1(",")
 D PAYMKND(SUG,SHIFT,"wolt","hlee")
 D W1("]}")
 Q
 ;
 ;
PAYMKND(SUG,SHIFT,VT,VT1)
 N CODTS S CODTS=0
 I VT="credit" S CODTS=3
 I VT="cash" S CODTS=1
 I VT="wolt" S CODTS=4
 ;
 D W1("{") 
 D W("paymentType",VT)
 D W("paymentName",$$HB(VT1))
 D W("totalCharged",$$TOT(DT,"SHOV",SHIFT,SUG,CODTS))
 D W("totalRefunded",$$TOT(DT,"SZIC",SHIFT,SUG,CODTS))
 D W("totalCustomers",$$QNPAY(DT,SHIFT,SUG,CODTS))
 D W1("""calcInTotalZ"":true}")
 Q
 ;
 ; 
TOT(DT,HOV,SHIFT,SUG,CODTS) ; 
 I $G(DT)="" Q 0 
 I $G(HOV)="" Q 0 
 I $G(SHIFT)="" Q 0 
 N GL S GL=$$^W4GL("TOT")
 N SUM S SUM=0
 N N,N1
 N DAT S DAT=$ZD(DT,"YYMMDD")
 S N="" F  S N=$O(@GL@(DAT,HOV,SHIFT,N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GL@(DAT,HOV,SHIFT,N,N1)) Q:N1=""  D
 ..I $G(CODTS)="",N1="LKH" Q
 ..I '$$DEF($G(SUG),$G(CODTS),N,N1) Q
 ..N SUMHZ S SUMHZ=$G(^(N1))
 ..I $G(CODTS)=1,CODTS="T" S SUMHZ=-SUMHZ
 ..S SUM=SUM+SUMHZ
 Q SUM
 ;
 ;
QNPAY(DT,SHIFT,SUG,CODTS) ; 
 I $G(DT)="" Q 0 
 N GL S GL=$$^W4GL("TOT")
 ;
 N SUM S SUM=0
 N N,N1
 N DAT S DAT=$ZD(DT,"YYMMDD")
 N HOV F HOV="#SHOV","#SZIC" D
 .S SH="" F  S SH=$O(@GL@(DAT,HOV,SH)) Q:SH=""  D
 ..I $G(SHIFT),SH'=SHIFT Q
 ..S N="" F  S N=$O(@GL@(DAT,HOV,SH,N)) Q:N=""  D
 ...S N1="" F  S N1=$O(@GL@(DAT,HOV,SH,N,N1)) Q:N1=""  D
 ....I $G(CODTS)="",N1="LKH" Q
 ....I '$$DEF($G(SUG),$G(CODTS),N,N1) Q
 ....N QN S QN=$G(^(N1)) I HOV="#SZIC" S QN=-QN
 ....S SUM=SUM+QN
 Q SUM
 ;
 ;
DEF(SUG,CODTS,N,N1) ;
 I $G(SUG),SUG'=N Q 0
 I $G(CODTS)=1,N1'="F",N1'="T" Q 0
 I $G(CODTS)=2,N1'="G",N1'="GO",N1'="GB" Q 0
 I $G(CODTS)=3,$E(N1)'="V" Q 0
 I $G(CODTS)=4,$E(N1)'="H" Q 0
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGS1
W4RSTGSN(JB,DT)  ; [ 09.02.20 12:04 ] [ 23.01.20 11:10 ] [ 06.01.20 12:12 ] 
 ;-------------------------------------------------------
 ; PARAMETERS :
 ; ^P1PRM("RSTG")=1
 ; ^P1PRM("RSTG","BRANCH")=BRANCH NUMBER
 ; ^P1PRM("RSTG","KEY")=BRANCH KEY
 ;
 ; ^W4RSTGO(1)=alcohol
 ; ^W4RSTGO(2)=drinks
 ; ^W4RSTGO(3)=desserts
 ;
 ; $$TAWMSD^W4PRM - IF TAW INCLUDE TAW OF REST
 ;-------------------------------------------------------
 ;
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S DT=$$^%L1DC(DT,3)
 ;
 S HZ1=$O(@$$^W4REF@(DT,""))
 S HZ2=$O(@$$^W4REF@(DT,""),-1)
 ;
 I HZ1,HZ2 D
 .S DAT1=$P($P($G(@$$^W4ORD@(HZ1)),"\",4)," ")
 .S DAT2=$P($P($G(@$$^W4ORD@(HZ2)),"\",4)," ")
 .;
 .S DT1=$$^%L1DC(DAT1,3)
 .S DT2=$$^%L1DC(DAT2,3)
 ;
 I 'HZ1!'HZ2 S (DT1,DT2)=DT
 ;
 S Z1=$$^W4GL("Z1")
 S PLUTOT=$$^W4GL("PLUTOT")
 ;
 K @$$^W4MAIN("TMPS111")
 D VRM K @VRM
 D VRM1 K @VRM1
 ;
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .S MRK="" F  S MRK=$O(@PLUTOT@(DAT,MRK)) Q:MRK=""  D
 ..S N="" F  S N=$O(@PLUTOT@(DAT,MRK,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S KV=$$SUG^W4P(N) Q:'KV
 ...S QN=$P(A,"*",1)
 ...S SUM=$P(A,"*",2)
 ...S HNP=$P(A,"*",4)
 ...S @VRM1@(DT,"PAR",N,"QN")=$G(@VRM1@(DT,N,"QN"))+QN
 ...S @VRM1@(DT,"PAR",N,"SUM")=$G(@VRM1@(DT,N,"SUM"))+(SUM-HNP)
 ...S DEPR=+$G(@$$^W4GL("PARSUG")@(KV,"RSTGO"))
 ...S @VRM1@("DEP",DEPR)=$G(@VRM1@(DEPR))+(SUM-HNP)
 ...
 ...S @VRM@("PAR",N,"QN")=$G(@VRM@(N,"QN"))+QN
 ...S @VRM@("PAR",N,"SUM")=$G(@VRM@(N,"SUM"))+(SUM-HNP)
 ...S @VRM@("DEP",DEPR)=$G(@VRM@(DEPR))+(SUM-HNP)
 ;
 D PREP^W4LEVD(DT,DT)
 ; 
 D DEPS(DT1,DT2)
 D PAR(DT1,DT2)
 ;
 D OPNJSN(DT,"wrk")
 D WORK(DT)
 D SEND(DT,"wrk")
 ;
 Q
 ;
 ; 
FILEIN(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_"."_KIND
 ;
FILEOU(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_KIND_".out"
 ; 
OPNJSN(DT,KIND) ; 
 S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN:(DELETE)
 O FILEIN:(WRITE:REWIND:NEWVERSION)
 U FILEIN
 Q
 ;
 ;
DEPS(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 D VRM,VRM1
 S (RESTSUM,TAWSUM,DLVSUM,CREDSUM,GUESTS,BIT)=0
 ;
 S DT=DT1
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .D ^W4SUMZRO
 .D ^W4SUM
 .;
 .S RESTSUM=RESTSUM+$G(SUMMSD) ;+$G(SUMAMSD)
 .S DLVSUM=DLVSUM+$G(SUMMSL) ; +$G(SUMMSL)
 .S TAWSUM=TAWSUM+$G(SUMDLP) ; +$G(SUMATAW)+$G(SUMADLP)
 .I $$TAWMSD^W4PRM S TAWSUM=TAWSUM+$G(SUMTAW)
 .S CREDSUM=CREDSUM+$G(SUMAMSD)+$G(SUMAMSL)+$G(SUMADLP)
 .S GUESTS=GUESTS+$G(@$$^W4GL("TOT")@(DAT,"SD",1))
 .S BIT=BIT+$G(@$$^W4GL("TOT")@(DAT,"BIT",1))
 ;
 D OPNJSN(DT,"deps")
 D HD
 D W("income","{",1)
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT,"YEAR-MM-DD"))
 ;
 ;;D W("register",$J(RESTSUM,2,2)) ; -- 15/09/19 LEV 
 D W("register",$J(RESTSUM+TAWSUM+DLVSUM,2,2))
 D W("take_away",$J(TAWSUM,2,2))
 D W("delivery",$J(DLVSUM,2,2))
 D W("credit",CREDSUM)
 ; 
 S N="" F  S N=$O(@$$^W4GL("W4RSTGO")@(N)) Q:N=""  D
 .S DEP=$G(^(N))
 .S SUM=$G(@VRM1@(DT,"DEP",N))
 .D W(DEP,$J(SUM,2,2))
 ;
 D W("cancel",BIT)
 D W("customers",GUESTS,1)
 D W1("}")
 ;
 D RSTGEND
 D SEND(DT,"deps")
 Q
 ;
 ;
PAR(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 S DT=DT1
 D ^%L1TS
 D VRM
 D OPNJSN(DT,"itm")
 D HD
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("products","[",1)
 S N="" F  S N=$O(@VRM@("PAR",N)) Q:N=""  D
 .D W1("{")
 .D W("id",N)
 .S NM=$$SHEM^W4P(N)
 .S NM=$$HB(NM)
 .S QN=$G(@VRM@("PAR",N,"QN"))
 .S SUM=$J($G(@VRM@("PAR",N,"SUM")),2,2)
 .D W("name",NM)
 .D W("sold",QN)
 .D W("total",SUM,1)
 .D W1("}")
 .I $O(@VRM@("PAR",N))'="" D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 D SEND(DT,"itm")
 Q
 ;
 ;
WORK(DT) ;
 N (JB,%ARG,%REM,DT) D ^%L1TS
 S TEMP=$$^W4MAIN("TEMP") K @TEMP
 S DT0=DT
 ;;I $P($H,",",2)<(6*3600),'$D(@$$^W4GL("P1DZ")) S DT0=DT-1
 D PREP^W4LEVD(DT0,DT)
 ;
 D HD
 D W("employees","[",1)
 ;
 S SUG="" F  S SUG=$O(@TEMP@(SUG)) Q:SUG=""  D
 .S OV="" F  S OV=$O(@TEMP@(SUG,OV)) Q:OV=""  D
 ..S SHURA="" F  S SHURA=$O(@TEMP@(SUG,OV,SHURA)) Q:SHURA=""  D
 ...S A=$G(^(SHURA))
 ...S DATIN=$P(A,"*") I 'DATIN Q
 ...S TIMEIN=$P(A,"*",3)
 ...S DATOU=$P(A,"*",4)
 ...S TIMEOU=$P(A,"*",6)
 ...D W1("{")
 ...D W("number",OV)
 ...S OV1=$$^W4NAME(OV)
 ...D W("full_name",$$HB(OV1))
 ...D W("start_date",$$DATRSTG(DATIN))
 ...D W("end_date",$$DATRSTG(DATOU))
 ...D W("start_time",$$TIMERSTG(TIMEIN))
 ...D W("end_time",$$TIMERSTG(TIMEOU))
 ...S ID=$$GET1^W4LEVPR(OV,"TZ")
 ...D W("identifier",ID,1)
 ...D W1("}")
 ...I $O(@TEMP@(SUG))="",$O(@TEMP@(SUG,OV))="",$O(@TEMP@(SUG,OV,SHURA))="" Q
 ...D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 Q
 ;
HD ;
 N KEY S KEY=$$KEY ;
 W !
 D W1("{")
 D W("restigo","{",1)
 D W("branch_id",$$BRANCH)
 D W("key",KEY)
 Q
 ;
KEY(STAM) ;
 ;"y$10$jCYx3tTVhkCDfrCwcrrGROh4E4WaNmNV5DvSPv7NePU7o98A7UIpi$2"
 Q $G(@$$^W4PRM@("RSTGO","KEY"))
 ;
BRANCH(STAM) ;
 Q $G(@$$^W4PRM@("RSTGO","BRANCH"))
 ;
W(TAG,VL,PR) ;
 I '$$NUM(VL),$E(VL)'="""",VL'?1P S VL=""""_VL_""""
 W """"_TAG_""": "_VL I '$G(PR) W ","
 W !
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=""""_TAG_""": "_VL
 I '$G(PR) S @S1@(SH)=@S1@(SH)_","
 Q
 ;
W1(VL) ;
 W VL,!
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=VL
 Q
 ;
NUM(VL)
 I VL?2N.N,$E(VL)="0" Q 0
 I VL?8N.N Q 0
 I VL?."-"1N.N.".".N Q 1
 Q 0
 ;
DATRSTG(DAT) ;
 I $G(DAT)="" Q ""
 N DT S DT=$$^%L1DC(DAT,3)
 Q $ZD(DT,"YEAR-MM-DD")
 ;
TIMERSTG(TIME) ;
 Q TIME
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
RSTGEND ;
 D W1(" }")
 D W1("}")
 Q
 ;
HB(TX) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S TX=$$INVH^%L1FRM(TX)
 S TX=$TR(TX,"\]},","/   ")
 I TX["""" S TX=$$RPL^%L1FRM(TX,"""","\""")
 Q $TR(TX,TS0,TS1)
 ;
 ;
SEND(DT,KIND) ;
 N FILEIN S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN
 N URL
 ;;I KIND="deps" S URL="https://www.restigo.co.il/app/api/branch/receive/json/income.php"
 ;;I KIND="itm" S URL="https://www.restigo.co.il/app/api/branch/receive/json/products.php"
 ;;I KIND="wrk" S URL="https://www.restigo.co.il/app/api/branch/receive/json/employeehours.php"
 ;;I KIND="emp" S URL="https://www.restigo.co.il/app/api/elpos/receive/employees.php"
 ;
 I KIND="deps" S URL="https://app.restigo.co.il/api/pos/elpos/receive/income"
 I KIND="wrk" S URL="https://app.restigo.co.il/api/pos/elpos/receive/employees"
 I KIND="itm" S URL=" https://app.restigo.co.il/api/pos/elpos/receive/products"
 I KIND="emp" S URL="https://app.restigo.co.il/api/pos/elpos/receive/employees.php"
 Q:'$L($G(URL))
 ;
 N FILEOU S FILEOU=$$FILEOU(DT,KIND)
 N FLIN S FLIN=FILEIN_".utf"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FILEIN_" -o "_FLIN
 ;;D
 .S BZLTMP=$$^WBTMP_"bztmp"_+$$^W4MYDVN
 .O BZLTMP:(NEWVERSION:REWIND:GROUP="rw")
 .U BZLTMP W $C(239,187,191) C BZLTMP
 .S CMD0="/usr/bin/iconv -c -f cp862 -t utf-8 "_FILEIN_" >> "_BZLTMP_";/bin/cp "_BZLTMP_" "_FLIN
 .ZSY CMD0
 ;
 S CMD="curl -m 30 -s -d@"_FLIN_" "_URL_" -o "_FILEOU
 ZSY CMD
 ;
 N H S H=+$H
 N SH S SH=$O(@$$^W4GL("W4RSTGPR")@(H,99999),-1)+1
 S @$$^W4GL("W4RSTGPR")@(H,SH,"CMD")=CMD
 S @$$^W4GL("W4RSTGPR")@(H,SH,"ZSY")=$ZSY
 ;;S @$$^W4GL("W4RSTGPR")@(H,SH,"ZS")=$ZS
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGSN
W4RSTGSN(JB,DT)  ; [ 07.07.26 14:15 ] [ 16.06.26 09:18 ] [ 07.05.26 12:01 ] 
 ;-------------------------------------------------------
 ; PARAMETERS :
 ; ^P1PRM("RSTG")=1
 ; ^P1PRM("RSTG","BRANCH")=BRANCH NUMBER
 ; ^P1PRM("RSTG","KEY")=BRANCH KEY
 ;
 ; $$TAWMSD^W4PRM - IF TAW INCLUDE TAW OF REST
 ;-------------------------------------------------------
 ;
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 ;;S ^AA("RSTGSN","JB")=JB
 ;;S ^AA("RSTGSN","DT")=DT
 ;
 S DT=$$^%L1DC(DT,3)
 ;
 S HZ1=$O(@$$^W4REF@(DT,""))
 S HZ2=$O(@$$^W4REF@(DT,""),-1)
 ;
 I HZ1,HZ2 D
 .S DAT1=$P($P($G(@$$^W4ORD@(HZ1)),"\",4)," ")
 .S DAT2=$P($P($G(@$$^W4ORD@(HZ2)),"\",4)," ")
 .;
 .S DT1=$$^%L1DC(DAT1,3)
 .S DT2=$$^%L1DC(DAT2,3)
 ;
 ;;I 'HZ1!'HZ2 S (DT1,DT2)=DT
 S (DT1,DT2)=DT
 ;
 S Z1=$$^W4GL("Z1")
 ;
 D PREPPAR
 ; 
 D DEPS(DT,DT)
 D PAR(DT,DT)
 D SNDWORK(DT,1)
 ;
 D ^W4MNYSN(JB,DT,DT) ; 
 Q
 ;
 ; 
FILEIN(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_"."_KIND
 ;
FILEOU(DT,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT_KIND_".out"
 ; 
OPNJSN(DT,KIND) ; 
 S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN:(DELETE)
 O FILEIN:(WRITE:REWIND:NEWVERSION)
 U FILEIN
 Q
 ;
 ;
DEPS(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 D VRM,VRM1
 S (RESTSUM,TAWSUM,DLVSUM,CREDSUM,GUESTS,BIT)=0
 ;
 S DT=DT1
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .D ^W4SUMZRO
 .D ^W4SUM
 .;
 .S RESTSUM=RESTSUM+$G(SUMMSD) ;+$G(SUMAMSD)
 .S DLVSUM=DLVSUM+$G(SUMMSL) ; +$G(SUMMSL)
 .S TAWSUM=TAWSUM+$G(SUMDLP) ; +$G(SUMATAW)+$G(SUMADLP)
 .;;I $$TAWMSD^W4PRM S TAWSUM=TAWSUM+$G(SUMTAW)
 .S TAWSUM=TAWSUM+$G(SUMTAW)
 .S CREDSUM=CREDSUM+$G(SUMAMSD)+$G(SUMAMSL)+$G(SUMADLP)+$G(SUMATAW)
 .S GUESTS=GUESTS+$G(@$$^W4GL("TOT")@(DAT,"SD",1))
 .S BIT=BIT+$G(@$$^W4GL("TOT")@(DAT,"BIT",1))
 ;
 D OPNJSN(DT,"deps")
 D HD
 ;
 I '$G(@$$^W4PRM@("RSTGNEW")) D MNYOLD(DT)
 I $G(@$$^W4PRM@("RSTGNEW")) D MNYNEW(DT)
 ;
 D SEND(DT,"deps")
 Q
 ;
NZ(DT) ;
 N N,Z S Z=""
 S N="" F  S N=$O(@$$^W4GL("Z")@(DT,N)) Q:N=""  S Z=Z_N_","
 Q $E(Z,1,$L(Z)-1)
 ;
 ; 
PREPPAR ;
 D ^W4RSTGP1(DT) Q
 ; --------------------  OLD !!! -------------------
 S PLUTOT=$$^W4GL("PLUTOT")
 ;
 K @$$^W4MAIN("TMPS111")
 D VRM K @VRM
 D VRM1 K @VRM1
 ;
 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .S MRK="" F  S MRK=$O(@PLUTOT@(DAT,MRK)) Q:MRK=""  D
 ..S N="" F  S N=$O(@PLUTOT@(DAT,MRK,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S KV=$$SUG^W4P(N) ;;Q:'KV
 ...S QN=$P(A,"*",1)
 ...S SUM=$P(A,"*",2)
 ...S HNP=$P(A,"*",4)
 ...S @VRM1@(DT,"PAR",N,"QN")=$G(@VRM1@(DT,"PAR",N,"QN"))+QN
 ...S @VRM1@(DT,"PAR",N,"SUM")=$G(@VRM1@(DT,"PAR",N,"SUM"))+(SUM-HNP)
 ...S DEPR=+$G(@$$^W4GL("PARSUG")@(+KV,"RSTGO"))
 ...S @VRM1@("DEP",DEPR)=$G(@VRM1@("DEP",DEPR))+(SUM-HNP)
 ...
 ...S @VRM@("PAR",N,"QN")=$G(@VRM@("PAR",N,"QN"))+QN
 ...S @VRM@("PAR",N,"SUM")=$G(@VRM@("PAR",N,"SUM"))+(SUM-HNP)
 ...S @VRM@("DEP",DEPR)=$G(@VRM@("DEP",DEPR))+(SUM-HNP)
 Q
 ;
 ;
PAR(DT1,DT2) ;
 D ^W4RSTGP2($G(DT1),$G(DT2))
 Q
 ;
 ;
SNDWORK(DT,ALLWORK) ;
 D OPNJSN(DT,"wrk")
 D WORK(DT,1,$G(ALLWORK))
 D SEND(DT,"wrk")
 Q  ;
 ;
 ;
WORK(DT,COMPTIP,ALLWORK) ;
 N (JB,%ARG,%REM,DT,COMPTIP,ALLWORK,EMPCONT) D ^%L1TS
 S EMPCONT=0
 S TEMP=$$^W4MAIN("TEMP") K @TEMP
 S DT0=DT
 ;;I $P($H,",",2)<(6*3600),'$D(@$$^W4GL("P1DZ")) S DT0=DT-1; -- 04.12.25 --> COMMENT
 S DT2=$O(@$$^W4GL("Z")@(DT))
 S DT2=$S(DT2="":DT,1:DT2-1)
 I DT2<DT0 S DT2=DT0
 ;
 D PREP^W4LEVD(DT0,DT2)
 ;
 K MTIP
 ;
 I $G(COMPTIP) D
 .S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 ..S SL=$$PSL^W4HZMST(N)
 ..S OVN=$$SL2OV^W4CLKVW(SL)
 ..S OVN=$$DOP^W4NAME(OVN)
 ..I 'OVN S OVN=99999
 ..I 'SL S SL=9999,OVN=99999
 ..S N1="" F  S N1=$O(@$$^W4ORD@(N,"CB","V",N1)) Q:N1=""  D
 ...S A=$G(^(N1)),TIP=$P(A,"*",27)
 ...S MTIP(OVN)=$G(MTIP(OVN))+TIP
 ;
 D HD
 D W("employees","[",1)
 ;
 S FIRST=1
F S SUG="" F  S SUG=$O(@TEMP@(SUG)) Q:SUG=""  D
 .S OV="" F  S OV=$O(@TEMP@(SUG,OV)) Q:OV=""  D
 ..S SHURA="" F  S SHURA=$O(@TEMP@(SUG,OV,SHURA)) Q:SHURA=""  D
 ...N SGOVD S SGOVD=0
 ...S A=$G(^(SHURA))
 ...S SGOVD=+$G(@TEMP@(SUG,OV,SHURA,"SGOVD"))
 ...N OVD S OVD=$$DOP^W4NAME(OV)
 ...S WASEMP=0
 ...D EMPSTR(OV,A,$G(MTIP(OVD)),SGOVD)
 ...I '$G(COMPTIP),$O(@TEMP@(SUG))="",$O(@TEMP@(SUG,OV))="",$O(@TEMP@(SUG,OV,SHURA))="" Q
 ...;;I 'WASEMP D W1(",")
 ;
 I $G(COMPTIP) D
 .S OV=99999
 .I $G(MTIP(OV)) D
 ..S A=DT_"**00:00*"_DT_"**00:01"
 ..D EMPSTR(OV,A,$G(MTIP(OV)))
 ;
 D W1("]")
 ;
 D RSTGEND
 Q
 ;
 ;
HD ;
 N KEY S KEY=$$KEY ;
 W !
 D W1("{")
 D W("restigo","{",1)
 D W("branch_id",$$BRANCH)
 D W("key",KEY)
 Q
 ;
KEY(STAM) ;
 ;"y$10$jCYx3tTVhkCDfrCwcrrGROh4E4WaNmNV5DvSPv7NePU7o98A7UIpi$2"
 Q $G(@$$^W4PRM@("RSTGO","KEY"))
 ;
BRANCH(STAM) ;
 Q $G(@$$^W4PRM@("RSTGO","BRANCH"))
 ;
W(TAG,VL,PR) ;
 ;;U 0 ; ***
 I '$$NUM(VL),$E(VL)'="""",VL'?1P,$G(PR)'<0,VL'="true",VL'="false" S VL=""""_VL_""""
 W """"_TAG_""": "_VL I '$G(PR) W ","
 W !
 N SH,S1
 ;;S S1=$$^W4MAIN("TMPS111")
 ;;S SH=$O(@S1@(999999),-1)+1
 ;;S @S1@(SH)=""""_TAG_""": "_VL
 ;;I '$G(PR) S @S1@(SH)=@S1@(SH)_","
 ;
 I $G(WASEMP)'="0",'$G(ALLWORK) Q
 D
 .I TAG["restigo"!(TAG["branch_id")!(TAG["key")!(TAG["employees") Q
 .N H S H=+$H
 .N SHW S SHW=$O(@$$^W4GL("W4RSTGPW")@(H,9999999),-1)+1
 .S @$$^W4GL("W4RSTGPW")@(H,SHW)=""""_TAG_""": "_VL_"\"_$H
 Q
 ;
W1(VL) ;
 ;;U 0 ; ***
 W VL,!
 N SH,S1
 ;;S S1=$$^W4MAIN("TMPS111")
 ;;S SH=$O(@S1@(999999),-1)+1
 ;;S @S1@(SH)=VL
 Q
 ;
NUM(VL)
 I VL?2N.N,$E(VL)="0" Q 0
 I VL?8N.N Q 0
 I VL?."-"1N.N.".".N Q 1
 Q 0
 ;
DATRSTG(DAT) ;
 I $G(DAT)="" Q ""
 N DT S DT=$$^%L1DC(DAT,3)
 Q $ZD(DT,"YEAR-MM-DD")
 ;
TIMERSTG(TIME) ;
 Q TIME
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
RSTGEND ;
 D W1(" }")
 D W1("}")
 Q
 ;
HB(TX) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S TX=$$INVH^%L1FRM(TX)
 S TX=$TR(TX,"\]},","/   ")
 I TX["""" S TX=$$RPL^%L1FRM(TX,"""","\""")
 Q $TR(TX,TS0,TS1)
 ;
 ;
SEND(DT,KIND) ;
 N FILEIN S FILEIN=$$FILEIN(DT,KIND)
 C FILEIN
 N URL
 I KIND="deps" S URL="https://api.restigo.co.il/api/pos/elpos/receive/income"
 I KIND="itm" S URL="https://api.restigo.co.il/api/pos/elpos/receive/products"
 I KIND="wrk" S URL="https://api.restigo.co.il/api/pos/elpos/receive/employees"
 I KIND="emp" S URL="https://api.restigo.co.il/api/pos/elpos/receive/employees"
 Q:'$L($G(URL))
 ;
 N FILEOU S FILEOU=$$FILEOU(DT,KIND)
 N FLIN S FLIN=FILEIN_".utf"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FILEIN_" -o "_FLIN
 ;
 S CMD="curl -m 25 -s -w ""%{http_code}"" -H ""content-type:application/json"" -d@"_FLIN_" "_URL_" -o "_FILEOU
 ZSY CMD
 ;
 N H S H=+$H
 N SH S SH=$O(@$$^W4GL("W4RSTGPR")@(H,99999),-1)+1
 S @$$^W4GL("W4RSTGPR")@(H,SH,"CMD")=CMD
 S @$$^W4GL("W4RSTGPR")@(H,SH,"ZSY")=$ZSY
 S @$$^W4GL("W4RSTGPR")@(H,SH,"TIME")=$ZD($H,"DD.MM.YY 24:60")
 ;
 I KIND="wrk"!(KIND="emp") D
 .I $G(WASEMP),'$G(ALLWORK) Q
 .N SHW S SHW=$O(@$$^W4GL("W4RSTGPW")@(H,9999999),-1)+1
 .S @$$^W4GL("W4RSTGPW")@(H,SHW)="CMD  : "_CMD
 .S SHW=SHW+1
 .S @$$^W4GL("W4RSTGPW")@(H,SHW)="ZSY  : "_$ZSY
 .S SHW=SHW+1
 .S @$$^W4GL("W4RSTGPW")@(H,SHW)="TIME : "_$ZD($H,"DD.MM.YY 24:60")
 . 
 .O FLIN:(REWIND:READONLY)
 .N A F  U FLIN R A Q:$ZEOF  D
 ..N SHW S SHW=$O(@$$^W4GL("W4RSTGPW")@(H,9999999),-1)+1
 ..S @$$^W4GL("W4RSTGPW")@(H,SHW)="CONT : "_$E(A,1,2000)
 .C FLIN
 .
 .I '$$EXIST^%L1ZOS(FILEOU) Q
 .O FILEOU:(REWIND:READONLY)
 .N A F  U FILEOU R A Q:$ZEOF  D
 ..N SHW S SHW=$O(@$$^W4GL("W4RSTGPW")@(H,9999999),-1)+1
 ..I A="" Q
 ..S @$$^W4GL("W4RSTGPW")@(H,SHW)="RESP : "_$E(A,1,2000)
 .C FILEOU
 ;
 I $$PAPJ^W4PRM D
 .N URL1 S URL1="https://webhook.restomate.co.il/papa-johns/webhook/"_$P(URL,"/",$L(URL,"/"))
 .N FILEOU1 S FILEOU1=FILEOU_".1"
 .S CMD="curl -m 25 -s -w ""%{http_code}"" -H ""content-type:application/json"" -d@"_FLIN_" "_URL1_" -o "_FILEOU1
 .ZSY CMD
 ;
 H 2
 Q
 ;
 ;
MNYOLD(DT) ; 
 D W("income","{",1)
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD(DT,"YEAR-MM-DD"))
 N NZ S NZ=$$NZ(DT)
 D W("z",NZ)
 ;
 D W("register",$J(RESTSUM+TAWSUM+DLVSUM,2,2))
 ;;D W("take_away",$J(TAWSUM,2,2))
 D W("take_away",$J(0,2,2))
 ;;D W("delivery",$J(DLVSUM,2,2))
 D W("delivery",$J(0,2,2))
 D W("credit",CREDSUM)
 ; 
 S N="" F  S N=$O(@$$^W4GL("W4RSTGO")@(N)) Q:N=""  D
 .S DEP=$G(^(N))
 .S SUM=$G(@VRM1@(DT,"DEP",N))
 .D W(DEP,$J(SUM,2,2))
 ;
 D W("cancel",BIT)
 D W("customers",GUESTS,1)
 D W1("}")
 ;
 D RSTGEND
 Q
 ;
 ; 
MNYNEW(DT) ;
 D SCOMP^W4TOT(DT,DT)
 ;
 N M S M(1)="xwea"
 S M(2)="axr"
 ; 
 ;
 D 
 .N (JB,%ARG,%REM,DT,AVRPREP,DLVPREPN)
 .S (D1,D2)=DT N DT
 .D FRM^W4TMPREP
 .S AVRPREP=$G(AVR(D1))
 ;
 S AVRLEAV=$$AVR(DT,4,"*")
 ;
 N SOAD
 D W("income","{",1)
 D W("startDate",$ZD(DT,"YEAR-MM-DD"))
 D W("endDate",$ZD(DT,"YEAR-MM-DD"))
 D W("transactionsDate",$ZD(DT,"YEAR-MM-DD"))
 N NZ S NZ=$$NZ(DT)
 D W1("""zNumber"":"""_NZ_""",")
 S SOAD=$$QNPAY(DT)
 I SOAD["\" S SOAD=$P(SOAD,"\",2)
 D W("totalCustomers",SOAD)
 D W("AvgLeaveTime",AVRLEAV) ; -- 15.08.24
 ;
 S PREPORD=0 D
 .N TMPPC S TMPPC=$$^W4MAIN("TMPPC")
 .N N,K S N="",K=0 F  S N=$O(@TMPPC@(N)) Q:N=""  S K=K+1
 .S PREPORD=K
 D W("Sumorderprep",PREPORD) ; -- 15.08.24
 ;
 D W("Prepontime",+$G(DLVPREPN)) ; -- 15.08.24
 D W("Sumorderdelivery",+$G(DLVQS)) ; -- 15.08.24
 D W("Deliverontime",+$G(DLVQ30)) ; -- 15.08.24
 
 D W("breakdownShifts","[",1)
 S MAXSHIFT=$S($G(@$$^W4PRM@("SHIFT2")):2,1:1)
 F SHIFT=1:1:MAXSHIFT D
 .D W1("{")
 .D W("shiftType","shiftID-"_SHIFT)
 .D W("shiftName",$$HB(M(SHIFT)))
 .D W("totalCharged",$$TOT(DT,"SHOV",SHIFT))
 .D W("totalRefunded",$$TOT(DT,"SZIC",SHIFT)) ; -- 01/01/24
 .D W("countRefunded",$$TOT(DT,"#SZIC",SHIFT)) ; -- 23/01/26
 .;;D W("countRefundedcash",$$TOT(DT,"#SZIC",SHIFT,"",1)) ; -- 18/03/26
 .D BITHNH(DT,SHIFT)
 .;;D W("numberItemsRefunded",SQNBIT) ; -- 15.08.24
 .;;D W("sumItemsRefunded",SBITP) ; -- 15.08.24
 .D W("Totaldiscount",QHNH+QHNHP)
 .D W("Sumdiscount",SHNH+SHNHP)
 .D W("breakdownOrders","[",1)
 .D W1("{")
 .D PAYM(DT,SHIFT,2,"dcrqn")
 .D W1(",{")
 .D PAYM(DT,SHIFT,1,"TAKEAWAY")
 .D W1(",{")
 .D PAYM(DT,SHIFT,4,"WOLT")
 .D W1(",{")
 .D PAYM(DT,SHIFT,3,"migelyn")
 D W1("]}]}}}")
 Q  ; 
 ; 
 ;
PAYM(DT,SHIFT,SUG,SUG1)
 D W("orderType",SUG)
 D W("orderName",$$HB(SUG1))
 D W("totalCharged",$$TOT(DT,"SHOV",SHIFT,SUG))
 D W("totalRefunded",$$TOT(DT,"SZIC",SHIFT,SUG))
 D W("totalOrders",$$QNORDS(DT,SHIFT,SUG))
 I SUG'=2 D
 .;;D W("AvgPrepTime",$$AVRTIMPREP(DT,SHIFT,SUG))
 I SUG'=1,SUG'=2 D
 .;;D W("AvgDeliveryTime",$$AVRTIMDLV(DT,SHIFT,SUG))
 D W("breakdownPayments","[",1)
 D PAYMKND(SUG,SHIFT,"credit","i`xy`")
 D W1(",")
 D PAYMKND(SUG,SHIFT,"cash","onefn")
 D W1(",")
 D PAYMKND(SUG,SHIFT,"checks","miwiy")
 D W1(",")
 D PAYMKND(SUG,SHIFT,"gift",$$^W4VT($$GFC^W4VT))
 D W1(",")
 D PAYMKND(SUG,SHIFT,"EFT","zi`wpa dxard")
 N GL S GL=$$^W4GL("TOT")
 N DAT S DAT=$ZD(DT,"YYMMDD")
 N M,N1
 S N1="" F  S N1=$O(@GL@(DAT,"SHOV",SHIFT,SUG,N1)) Q:N1=""  I N1?4N.N  D
 .S M(N1)=""
 S N1="" F  S N1=$O(@GL@(DAT,"SZIC",SHIFT,SUG,N1)) Q:N1=""  I N1?4N.N  D
 .S M(N1)=""
 ;
 I $D(M)>9 D W1(",")
 ;
 S N1="" F  S N1=$O(M(N1)) Q:N1=""  D
 .D PAYMKND(SUG,SHIFT,N1,$$LKH^W4L(N1))
 .I $O(M(N1)) W ","
 ;
 D W1("]}")
 Q
 ;
 ;
PAYMKND(SUG,SHIFT,VT,VT1)
 N CODTS S CODTS=0
 I VT="credit" S CODTS=3
 I VT="cash" S CODTS=1
 I VT="checks" S CODTS=2
 I VT="gift" S CODTS=37
 I VT="EFT" S CODTS="2B"
 I VT?4N.N S CODTS=VT
 ;
 D W1("{") 
 D W("paymentType",VT)
 D W("paymentName",$$HB(VT1))
 N TOTH S TOTH=$$TOT(DT,"SHOV",SHIFT,SUG,CODTS)
 D W("totalCharged",TOTH)
 N TOTZ S TOTZ=$$TOT(DT,"SZIC",SHIFT,SUG,CODTS)
 D W("totalRefunded",TOTZ)
 I CODTS=1 D
 .D W("countRefundedcash",$$TOT(DT,"#SZIC",SHIFT,SUG,1)) ; -- 18/03/26
 N QNPAY S QNPAY=$$QNPAY(DT,SHIFT,SUG,CODTS)
 N QNSD S QNSD=QNPAY I QNPAY["\" S QNSD=$P(QNPAY,"\",2)
 D W("totalCustomers",QNSD)
 D W("totalOrders",+QNPAY)
 D W1("""calcInTotalZ"":true}")
 Q
 ;
 ; 
TOT(DT,HOV,SHIFT,SUG,CODTS) ; 
 I $G(DT)="" Q 0 
 I $G(HOV)="" Q 0 
 I $G(SHIFT)="" Q 0 
 N GL S GL=$$^W4GL("TOT")
 N SUM S SUM=0
 N N,N1
 N DAT S DAT=$ZD(DT,"YYMMDD")
 ;
 S N="" F  S N=$O(@GL@(DAT,HOV,SHIFT,N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GL@(DAT,HOV,SHIFT,N,N1)) Q:N1=""  D
 ..N SUMHZ S SUMHZ=$G(^(N1))
 ..I $G(CODTS)="",N1="LKH"!(N1="H") Q
 ..I $G(CODTS)="",N1="T",$$TIPMIN^W4TIPPD(DT) S SUMHZ=$S($$PAPJ^W4PRM:0,1:-SUMHZ)
 ..I $G(CODTS)="",N1="T",'$$TIPMIN^W4TIPPD(DT) S SUMHZ=0
 ..I '$$DEF($G(SUG),$G(CODTS),N,N1) Q
 ..I $G(CODTS)=1,N1="T",$$TIPMIN^W4TIPPD(DT) S SUMHZ=$S($$PAPJ^W4PRM:0,1:-SUMHZ)
 ..I $G(CODTS)=1,N1="T",'$$TIPMIN^W4TIPPD(DT) S SUMHZ=0
 ..S SUM=SUM+SUMHZ
 ;
 I SUM["." S SUM=$J(SUM,2,2)
 Q SUM
 ;
 ;
QNPAY(DT,SHIFT,SUG,CODTS) ; 
 I $G(DT)="" Q 0 
 N GL S GL=$$^W4GL("TOT")
 ;
 N SUM,SUMSD S SUM=0,SUMSD=0
 N N,N1
 N DAT S DAT=$ZD(DT,"YYMMDD")
 N HOV F HOV="#SHOV","#SZIC" D
 .S SH="" F  S SH=$O(@GL@(DAT,HOV,SH)) Q:SH=""  D
 ..I $G(SHIFT),SH'=SHIFT Q
 ..S N="" F  S N=$O(@GL@(DAT,HOV,SH,N)) Q:N=""  D
 ...S N1="" F  S N1=$O(@GL@(DAT,HOV,SH,N,N1)) Q:N1=""  D
 ....I $G(CODTS)="",N1="LKH" Q
 ....I '$$DEF($G(SUG),$G(CODTS),N,N1) Q
 ....N QN S QN=$G(^(N1)) I HOV="#SZIC" S QN=-QN
 ....N SD S SD=$G(^(N1,"SD")) I HOV="#SZIC" S SD=-SD
 ....S SUM=SUM+QN
 ....S SUMSD=SUMSD+SD
 Q SUM_"\"_SUMSD
 ;
 ;
DEF(SUG,CODTS,N,N1) ;
 I $G(SUG),SUG'=N Q 0
 I $G(CODTS)=1,N1'="F",N1'="T" Q 0
 I $G(CODTS)=2,N1'="GO" Q 0
 I $G(CODTS)="2B",N1'="GB" Q 0
 I $G(CODTS)=37,N1'="GFC" Q 0
 I $G(CODTS)=3,$E(N1)'="V" Q 0
 I $G(CODTS)=4,$E(N1)'="H" Q 0
 I CODTS?4N.N,N1'=CODTS Q 0
 Q 1
 ;
QNORDS(DT,SHIFT,SUG) ; 
 N QNORDS S QNORDS=0
 S (STIMPREP,SHPREP)=0
 N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 .I $$SHIFT^W4SUM(HZ)'=SHIFT Q
 .I $$VHZ^W4SUM(HZ)'=SUG Q
 .S QNORDS=QNORDS+1
 Q QNORDS
 ;
 ;
AVRTIMPREP(DT,SHIFT,SUG) ; 
 N TMPC,TMPREP,DIF,STIMPREP,SHPREP,AVRTIMPREP
 S (STIMPREP,SHPREP)=0
 N HZ ;;S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D  ; -- 25.08.24
 S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D
 .I '$$HZM^W4MSL(HZ) Q  ; -- ?
 .I $G(SHIFT),$$SHIFT^W4SUM(HZ)'=SHIFT Q
 .I $G(SUG),$$VHZ^W4SUM(HZ)'=SUG Q
 .S TMPC=$$TMPC^W4TMPREP(HZ,DT) ;;($G(@$$^W4ORD@(HZ,"PCAFTPAY"))
 .S TMPREP=$$TMRD^W4TMPREP(HZ,DT)
 .I TMPC=""!(TMPREP="") Q
 .S DIF=$$DIF^%L1TIME(TMPREP,TMPC,1) Q:'DIF
 .S DIF=$J(DIF/60,2,2)
 .I TMPC,TMPREP S STIMPREP=STIMPREP+DIF,SHPREP=SHPREP+1 
 ;
 S AVRTIMPREP=""
 I SHPREP S AVRTIMPREP=$J(STIMPREP/SHPREP,2,2)
 Q AVRTIMPREP 
 ;
 ;
AVRTIMDLV(DT,SHIFT,SUG) ; 
 N STIMDLV,SHTIMDLV,AVRTIMDLV
 S STIMDLV=0,SHTIMDLV=0
 N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 .N TIME
 .I '$$HZM^W4MSL(HZ) Q
 .I $$PSL^W4HZMST(HZ)<1 Q
 .I $$IR^W4HZMST(HZ)="TAKEAWAY" Q
 .I $$DEL^W4DEL(HZ) Q
 .I $$SHIFT^W4SUM(HZ)'=SHIFT Q
 .I $$VHZ^W4SUM(HZ)'=SUG Q
 .S TIME=$P($$TIMDLV^W4TOT(HZ),"\",2) I 'TIME Q  ; -- ,"\",2 -- 18/08/24
 .I $G(@$$^W4PRM@("MAXTIME"),180),TIME>^("MAXTIME") Q 
 .S STIMDLV=STIMDLV+TIME,SHTIMDLV=SHTIMDLV+1
 ;
 S AVRTIMDLV=""
 I SHTIMDLV S AVRTIMDLV=$J(STIMDLV/SHTIMDLV,2,2)
 Q AVRTIMDLV 
 ;
 ;
BITHNH(DT,SHIFT) 
 N SHIFTHZ S SQNBIT=0,SHNH=0,SHNHP=0,QHNH=0,QHNHP=0,SBITP=0,SBITDM=0
 ;
 N HZM S HZM="" F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  D 
 .S SHIFTHZ=$$SHIFT(HZM) I SHIFTHZ'=SHIFT Q 
 .I $$^W4HZMH(HZM) Q
 .I $$I^W4PIZUL(HZM) Q
 .
 .N HNH S HNH=$$SHNH^W4HZMST(HZM)
 .
 .I $$PAPJ^W4PRM,$D(@$$^W4ORD@(HZM,"CB","HNH1")) D
 ..N N1 S N1="",HNH=0 F  S N1=$O(@$$^W4ORD@(HZM,"CB","HNH1",N1)) Q:N1=""  D
 ...N A S A=$G(^(N1)) I $$NOHNH(HZM,N1,A) Q
 ...;;S ^AA("W4RSTGSN-BITHNH",HZM,N1,"HNH11")=$P(A,"*")
 ...S HNH=HNH+$P(A,"*")
 ...S QHNH=QHNH+$S(HNH>0:1,HNH<0:-1,1:0)
 .
 .I HNH S SHNH=SHNH+HNH I '$$PAPJ^W4PRM S QHNH=QHNH+1
 .N BITHN S BITHN=0
 .N I S I="" F  S I=$O(@$$^W4ORD@(HZM,I)) Q:I=""  I I D 
 ..N A,CD S A=$G(^(I)),CD=$P(A,"\")
 ..N SUM S SUM=$P(A,"\",7)
 ..I $E(CD)="-",CD["%" D  Q
 ...I SUM>0 S SBITP=SBITP-SUM
 ...S SHNHP=SHNHP-SUM,QHNHP=QHNHP+$S(SUM<0:1,SUM>0:-1,1:0)
 ..N QNBIT S QNBIT=$$QN^W4HZMST(HZM,I) 
 ..I QNBIT<0,$$AVAR^W4HZMST(HZM,I) Q 
 ..N SUM S SUM=$$SUM^W4HZMST(HZM,I) D  Q:SUM'<0 
 ...;;W "HZM="_HZM_" I="_I_" SUM="_SUM,!
 ..S SQNBIT=SQNBIT-QNBIT
 ..S SBITP=SBITP+SUM
 .N DM S DM=$$DMSH^W4HZMST(HZM) I DM<0 S SBITDM=SBITDM-DM 
 ;
 ;;S ^AA("W4RSTGSN","SHNH")=SHNH
 ;;S ^AA("W4RSTGSN","SHNHP")=SHNHP
 Q
 ;
SHIFT(HZ) ; 
 N TM S TM=$$DATCB^W4HZMST(HZ) 
 S TM=$P(TM,"  ",2) 
 S TM=TM*50+$P(TM,":",2) 
 N SHIFT2 S SHIFT2=$G(@$$^W4PRM@("SHIFT2")) 
 I SHIFT2,TM>(SHIFT2*60+$P(SHIFT2,":"))!(TM<$$SHAAZ^W4PRM*60) Q 2 
 Q 1 
 ;
 ; 
AVR(DT,NOM,DLM) 
 N (JB,%ARG,%REM,DT,NOM,DLM) 
 I $G(DLM)="" S DLM="\"
 S (MEDAT,ADDAT)=DT N DT 
 ;
 D PREP^W4TIMDLV ; --> @TMP 
 ;
 S DT=MEDAT 
 S TMP=$$^W4MAIN("TMP") 
 S (SMIN,QN)=0 
 ;
 S PRMIN=0
 S N="" F  S N=$O(@TMP@(DT,N)) Q:N=""  D 
 .S SUM=$P($G(^(N)),DLM,NOM) S:SUM[":" SUM=SUM*60+$P(SUM,":",2),PRMIN=1 Q:SUM'>0
 .S SMIN=SMIN+SUM,QN=QN+1 
 ;
 S AVR=0 
 I QN S AVR=SMIN/QN
 I PRMIN S AVR=AVR\60_":"_(AVR#60)
 K @TMP 
 Q $J(AVR,2,2) 
 ;
 ;
EMPSTR(OV,A,STIP,SGOVD) ;
 N (JB,%ARG,OV,A,STIP,COMPTIP,SGOVD,WASEMP,ALLWORK,FIRST,EMPCONT,MTIP)
 S WASEMP=0
 S DATIN=$P(A,"*") 
 S TIMEIN=$P(A,"*",3) I 'DATIN!(TIMEIN="") Q
 S DATOU=$P(A,"*",4)
 S TIMEOU=$P(A,"*",6)
 S DYH=$$GET1^W4LEVPR(OV,"JOMH")
 I DYH S DYH=$$DATRSTG(DYH)
 S TEL=$TR($$GET1^W4LEVPR(OV,"TEL"),"-","")
 S KTV=$$GET1^W4LEVPR(OV,"KTV")
 S EMAIL=$$GET1^W4LEVPR(OV,"EMAIL")
 I EMAIL'[".",EMAIL'["@" S EMAIL="MAIL.MAIL@MAIL.COM"
 I $L(EMAIL)<5 S EMAIL="MAIL.MAIL@MAIL.COM"
 S OV1=$$^W4NAME(OV)
 I OV1="" S OV1="illk"
 S ID=$$GET1^W4LEVPR(OV,"TZ")
 ;
 I $$WASEMP(OV),'$G(ALLWORK) S WASEMP=1 Q
 ;
 I '$G(FIRST) D W1(",")
 I $G(FIRST) S FIRST=0
 D W1("{")
 D W("number",+OV)
 S HR=""
 I $G(SGOVD)=1 S HR="cf"
 I $G(SGOVD)=2 S HR="zery jezig"
 ;
 I OV1=99999 D
 .S TEL=1111111
 .S KTV="zaezk"
 .S DYH="01.01.01"
 .S MAIL="MAIL.MAIL@MAIL.COM"
 ;
 D W("full_name",$$HB(OV1))
 D W("start_date",$$DATRSTG(DATIN))
 D W("end_date",$$DATRSTG(DATOU))
 D W("start_time",$$TIMERSTG(TIMEIN))
 D W("end_time",$$TIMERSTG(TIMEOU))
 I $L(TEL) D W("mobile_number",TEL)
 I $L(KTV) D W("address",$$HB(KTV))
 I $L(EMAIL) D W("eMail",EMAIL)
 I $L(HR) D W("notes",$$HB(HR))
 I DYH D W("date_of_birth",DYH)
 I $G(COMPTIP) D W("tip",$J(STIP,2,2))
 I OV=99999,ID="" S ID=123456782
 D W("identifier",ID,1)
 D W1("}")
 ;
 D SETEMP(OV)
 S EMPCONT=1
 N OVD S OVD=$$DOP^W4NAME(OV)
 K MTIP(OVD)
 Q
 ;
 ; 
SETEMP(OV) ;
 N I
 F I="OV1","DATIN","DATOU","TIMEIN","TIMEOU","TEL","KTV","EMAIL","DYH","STIP","ID" D
 .N A S A=$G(@I) I A="" S A="-"
 .S @$$^W4GL("W4EMP")@($$^W4DZ,OV,I,A)=""
 Q 
 ;
WASEMP(OV) ;
 N I,OK S OK=1
 N ZMANIN,ZMANOU
 S ZMANIN=DATIN_"-"_TIMEIN
 S ZMANOU=DATOU_"-"_TIMEOU
 ;
 F I="OV1","ZMANIN","ZMANOU","TEL","KTV","EMAIL","DYH","STIP","ID" D  Q:'OK
 .N A S A=$G(@I) S:A="" A="-"
 .I '$D(@$$^W4GL("W4EMP")@($$^W4DZ,OV,I,A)) D
 ..S OK=0_"\"_I_"\"_$G(@I)_"\"_$G(@$$^W4GL("W4EMP")@($$^W4DZ,OV,I))_"\"_$H
 ..S @$$^W4GL("W4EMP")@($$^W4DZ,OV)=OK
 ..S @$$^W4GL("W4EMP")@($$^W4DZ,OV,I,A)=""
 ..;;S ^AAA($$^W4DZ,OV,$H)=OK
 Q OK
 ;
 ; 
NOHNH(HZM,N1,A) ; 
 N HN,HN1 S HN=$P(A,"*")
 I $P(A,"*",5)="INTERNET" Q 1
 N A1
 N OK S OK=0
 I HN<0 D
 .N N2 S N2="" F  S N2=$O(@$$^W4ORD@(HZM,"CB","HNH1",N2)) Q:N2=""  Q:N2'<N1  D  Q:OK
 ..S A1=$G(^(N2)) S HN1=$P(A1,"*") I HN1<0 Q
 ..I +HN1=-HN,$P(A1,"*",5)="INTERNET" S OK=1
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGSO
W4RSTGSN(JB,DT1,DT2)  ; [ 14.03.19 18:26 ] [ 12.03.19 13:56 ] [ 11.03.19 18:50 ] 
 ;-------------------------------------------------------
 ; PARAMETERS : ^P1PRM("RSTG")=1
 ; ^P1PRM("RSTG","BRANCH")=BRANCH NUMBER
 ; $$TAWMSD^W4PRM - IF TAW INCLUDE TAW OF REST
 ;-------------------------------------------------------
 ;
 N (JB,%ARG,%REM,DT1,DT2)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S DT1=$$^%L1DC(DT1,3)
 S DT2=$$^%L1DC(DT2,3)
 S Z1=$$^W4GL("Z1")
 S PLUTOT=$$^W4GL("PLUTOT")
 ;
 K @$$^W4MAIN("TMPS111")
 D VRM K @VRM
 D VRM1 K @VRM1
 ;
 F DT=DT1:1:DT2 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .S MRK="" F  S MRK=$O(@PLUTOT@(DAT,MRK)) Q:MRK=""  D
 ..S N="" F  S N=$O(@PLUTOT@(DAT,MRK,N)) Q:N=""  D
 ...S A=$G(^(N))
 ...S KV=$$SUG^W4P(N) Q:'KV
 ...S QN=$P(A,"*",1)
 ...S SUM=$P(A,"*",2)
 ...S HNP=$P(A,"*",4)
 ...S @VRM1@(DT,"PAR",N,"QN")=$G(@VRM1@(DT,N,"QN"))+QN
 ...S @VRM1@(DT,"PAR",N,"SUM")=$G(@VRM1@(DT,N,"SUM"))+(SUM-HNP)
 ...S DEPR=+$G(@$$^W4GL("PARSUG")@(KV,"RSTGO"))
 ...S @VRM1@("DEP",DEPR)=$G(@VRM1@(DEPR))+(SUM-HNP)
 ...
 ...S @VRM@("PAR",N,"QN")=$G(@VRM@(N,"QN"))+QN
 ...S @VRM@("PAR",N,"SUM")=$G(@VRM@(N,"SUM"))+(SUM-HNP)
 ...S @VRM@("DEP",DEPR)=$G(@VRM@(DEPR))+(SUM-HNP)
 ;
 D PREP^W4LEVD(DT1,DT2)
 ; 
 D DEPS(DT1,DT2)
 D PAR(DT1,DT2)
 ;
 D OPNJSN(DT2,"wrk")
 D WORK(DT1,DT2)
 D SEND(DT2,"wrk")
 ;
 Q
 ;
 ; 
FILEIN(DT2,KIND) ;
 Q "/tmp/rstg"_$$BRANCH_"_"_DT2_"."_KIND
 ;
OPNJSN(DT2,KIND) ; 
 S FILEIN=$$FILEIN(DT2,KIND)
 C FILEIN:(DELETE)
 O FILEIN:(WRITE:REWIND:NEWVERSION)
 U FILEIN
 Q
 ;
 ;
DEPS(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 D VRM,VRM1
 S (RESTSUM,TAWSUM,DLVSUM,CREDSUM,GUESTS,BIT)=0
 ;
 F DT=DT1:1:DT2 D
 .N DAT S DAT=$ZD(DT,"YYMMDD")
 .D ^W4SUMZRO
 .D ^W4SUM
 .;
 .S RESTSUM=RESTSUM+$G(SUMMSD) ;+$G(SUMAMSD)
 .S DLVSUM=DLVSUM+$G(SUMMSL) ; +$G(SUMMSL)
 .S TAWSUM=TAWSUM+$G(SUMDLP) ; +$G(SUMATAW)+$G(SUMADLP)
 .I $$TAWMSD^W4PRM S TAWSUM=TAWSUM+$G(SUMTAW)
 .S CREDSUM=CREDSUM+$G(SUMAMSD)+$G(SUMAMSL)+$G(SUMADLP)+$G(SUMAMSL)
 .S GUESTS=GUESTS+$G(@$$^W4GL("TOT")@(DAT,"SD",1))
 .S BIT=BIT+$G(@$$^W4GL("TOT")@(DAT,"BIT",1))
 ;
 D OPNJSN(DT2,"deps")
 D HD
 D W("income","{",1)
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD($H,"YEAR-MM-DD"))
 ;
 D W("register",$J(RESTSUM,2,2))
 D W("take_away",$J(TAWSUM,2,2))
 D W("delivery",$J(DLVSUM,2,2))
 D W("credit",CREDSUM)
 ; 
 S N="" F  S N=$O(@$$^W4GL("W4RSTGO")@(N)) Q:N=""  D
 .S DEP=$G(^(N))
 .S SUM=$G(@VRM1@(DT,"DEP",N))
 .D W(DEP,$J(SUM,2,2))
 ;
 D W("cancel",BIT)
 D W("customers",GUESTS,1)
 D W1("}")
 ;
 D RSTGEND
 D SEND(DT2,"deps")
 Q
 ;
 ;
PAR(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2)
 D ^%L1TS
 D VRM
 D OPNJSN(DT2,"itm")
 D HD
 D W("start_date",$ZD(DT1,"YEAR-MM-DD"))
 D W("end_date",$ZD(DT2,"YEAR-MM-DD"))
 D W("transactions_date",$ZD($H,"YEAR-MM-DD"))
 D W("products","[",1)
 S N="" F  S N=$O(@VRM@("PAR",N)) Q:N=""  D
 .D W1("{")
 .D W("id",N)
 .S NM=$$SHEM^W4P(N)
 .S NM=$$HB(NM)
 .S QN=$G(@VRM@("PAR",N,"QN"))
 .S SUM=$J($G(@VRM@("PAR",N,"SUM")),2,2)
 .D W("name",NM)
 .D W("sold",QN)
 .D W("total",SUM,1)
 .D W1("}")
 .I $O(@VRM@("PAR",N))'="" D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 D SEND(DT2,"itm")
 Q
 ;
 ;
WORK(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2) D ^%L1TS
 S TEMP=$$^W4MAIN("TEMP") K @TEMP
 D PREP^W4LEVD(DT1,DT2)
 D HD
 D W("employees","[",1)
 ;
 S SUG="" F  S SUG=$O(@TEMP@(SUG)) Q:SUG=""  D
 .S OV="" F  S OV=$O(@TEMP@(SUG,OV)) Q:OV=""  D
 ..S SHURA="" F  S SHURA=$O(@TEMP@(SUG,OV,SHURA)) Q:SHURA=""  D
 ...S A=$G(^(SHURA))
 ...S DATIN=$P(A,"*") I 'DATIN Q
 ...S TIMEIN=$P(A,"*",3)
 ...S DATOU=$P(A,"*",4)
 ...S TIMEOU=$P(A,"*",6)
 ...D W1("{")
 ...D W("number",OV)
 ...S OV1=$$^W4NAME(OV)
 ...D W("full_name",$$HB(OV1))
 ...D W("start_date",$$DATRSTG(DATIN))
 ...D W("end_date",$$DATRSTG(DATOU))
 ...D W("start_time",$$TIMERSTG(TIMEIN))
 ...D W("end_time",$$TIMERSTG(TIMEOU))
 ...S ID=$$GET1^W4LEVPR("TZ",OV)
 ...D W("identifier",ID,1)
 ...D W1("}")
 ...I $O(@TEMP@(SUG))="",$O(@TEMP@(SUG,OV))="",$O(@TEMP@(SUG,OV,SHURA))="" Q
 ...D W1(",")
 ;
 D W1("]")
 ;
 D RSTGEND
 Q
 ;
HD ;
 N KEY S KEY=$$KEY ;
 W !
 D W1("{")
 D W("restigo","{",1)
 D W("branch_id",$$BRANCH)
 D W("key",KEY)
 Q
 ;
KEY(STAM) ;
 ;"y$10$jCYx3tTVhkCDfrCwcrrGROh4E4WaNmNV5DvSPv7NePU7o98A7UIpi$2"
 Q $G(@$$^W4PRM@("RSTGO","KEY"))
 ;
BRANCH(STAM) ;
 Q $G(@$$^W4PRM@("RSTGO","BRANCH"))
 ;
W(TAG,VL,PR) ;
 I '$$NUM(VL),$E(VL)'="""",VL'?1P S VL=""""_VL_""""
 W """"_TAG_""": "_VL I '$G(PR) W ","
 W !
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=""""_TAG_""": "_VL
 I '$G(PR) S @S1@(SH)=@S1@(SH)_","
 Q
 ;
W1(VL) ;
 W VL,!
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=VL
 Q
 ;
NUM(VL)
 I VL?."-"1N.N.".".N Q 1
 Q 0
 ;
DATRSTG(DAT) ;
 N DT S DT=$$^%L1DC(DAT,3)
 Q $ZD(DT,"YEAR-MM-DD")
 ;
TIMERSTG(TIME) ;
 Q TIME
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
RSTGEND ;
 D W1(" }")
 D W1("}")
 Q
 ;
HB(TX) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S TX=$$INVH^%L1FRM(TX)
 S TX=$TR(TX,"\","/")
 I TX["""" S TX=$$RPL^%L1FRM(TX,"""","\""")
 Q $TR(TX,TS0,TS1)
 ;
 ;
SEND(DT2,KIND) ;
 N FILEIN S FILEIN=$$FILEIN(DT2,KIND)
 C FILEIN
 N URL
 I KIND="deps" S URL="https://www.restigo.co.il/app/api/branch/receive/json/income.php"
 I KIND="itm" S URL="https://www.restigo.co.il/app/api/branch/receive/json/products.php"
 I KIND="wrk" S URL="https://www.restigo.co.il/app/api/branch/receive/json/employeehours.php"
 I KIND="emp" S URL="https://www.restigo.co.il/app/api/elpos/receive/employees.php"
 Q:'$L($G(URL))
 ;
 N FILEOU S FILEOU="/tmp/rstg"_$$BRANCH_"_"_DT2_KIND_".out"
 N FLIN S FLIN=FILEIN_".utf"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FILEIN_" -o "_FLIN
 ;;D
 .S BZLTMP=$$^WBTMP_"bztmp"_+$$^W4MYDVN
 .O BZLTMP:(NEWVERSION:REWIND:GROUP="rw")
 .U BZLTMP W $C(239,187,191) C BZLTMP
 .S CMD0="/usr/bin/iconv -c -f cp862 -t utf-8 "_FILEIN_" >> "_BZLTMP_";/bin/cp "_BZLTMP_" "_FLIN
 .ZSY CMD0
 ;
 S CMD="curl -m 30 -s -d@"_FLIN_" "_URL_" -o "_FILEOU
 ZSY CMD
 ;
 N H S H=+$H
 N SH S SH=$O(@$$^W4GL("W4RSTGPR")@(H,99999),-1)+1
 S @$$^W4GL("W4RSTGPR")@(H,SH,"CMD")=CMD
 S @$$^W4GL("W4RSTGPR")@(H,SH,"ZSY")=$ZSY
 ;;S @$$^W4GL("W4RSTGPR")@(H,SH,"ZS")=$ZS
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTGVW
W4RSTGVW ; [ 05.12.25 06:07 ] [ 04.12.25 03:40 ] [ 18.07.25 11:08 ] 
 N (JB,%ARG,%REM) ;
 D ^%L1TS
 D ^%W1ARG
 ;
 S VRM=$$^W4MAIN("VRM")
 S IND=$S($G(%ARG("IN")):"IN",1:"OU")
 ;
 I $G(%ARG("WIN"))="IFR" D READ^W4RSTGPR("DEP","deps")
 ;
 S FL=$G(@VRM@(DT,SUG,IND))
 ;;S ^AA("FL")=FL
 ;
 W "<div dir=""LTR"" style=""background-color:white"">",!
 W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">",!
  W $ZD(DT,"DD.MM.YY")
  S SM=80 I $$1024^W4WDSCR S SM=55
  W $$NBSP^%L1FRM(SM) D ^W4BCK
  W "<br>"_FL
 W "</span>",!
 W "<br><br>",!
 ;
 F I=1:1 Q:'$D(@VRM@(DT,SUG,IND,I))  D
 .S A=$G(^(I))
 .S A=$$W2U(A)
 .W A,"<br>",!
 ;
 W $$NBSP^%L1FRM(SM) D ^W4BCK
 W "</div>",!
 Q
 ;
W2U(TX) ; 
 N I,ST,SMB,SMB1 S ST=""
 F I=1:1:$L(TX) D
 .S SMB=$A(TX,I)  
 .S SMB1=$C(SMB)
 .I SMB>223,SMB<251 D
 ..S SMB1="&#"_(SMB+1392-128)_";"
 .S ST=ST_SMB1
 Q ST 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4RSTPAR
W4RSTPAR(STAM) ; [ 02.05.14 09:36 ] [
 N STPAR0 S STPAR0=$$GETP^%W1PRM("STPAR0")
 I '$$ISSTPAR0(STPAR0) S STPAR0=$$GETP^%W1PRM("STPAR00")
 Q STPAR0
 ;
ISSTPAR0(STPAR0)
 I STPAR0?1"0~"1N.E Q 1
 Q 0

W4RSTPRM
W4RSTPRM ; [ 25.10.14 12:40 ] [ 22.10.14 18:00 ] [ 30.04.14 04:47 ]
GET ;
 N I,A
 F I="RESTID","TMOUT" D
 .S A=$G(@$$^W4PRM@("RESTORAN",I))
 .I I="RESTID" S A=$$FUNC^%UCASE(A)
 .S @I=A
 Q
 ;
PUT(PRM) ;
 D PUT^%W3DEB("W4RSTPRM","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES="OK"
 ;
 N I,A
 ;
 S @$$^W4PRM@("RESTORAN")=0
 ;
 F I="RESTID","TMOUT" D
 .S A=$$SPA^%L1FRM($G(@I))
 .I I="RESTID" S A=$$FUNC^%LCASE(A)
 .S @$$^W4PRM@("RESTORAN",I)=A
 .I A'="",I="RESTID" S @$$^W4PRM@("RESTORAN")=1
 ;
END Q RES
 ;
 ;

W4RSTRN
W4RSTRN(MC,HZM,NMB,SOAD) ; [ 06.04.21 13:02 ] [ 25.03.21 14:20 ] [ 05.12.19 10:37 ] 
 N (JB,%ARG,%REM,MC,HZM,NMB,SOAD)
 I '$G(HZM) Q
 S HZM=+HZM
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(TSS) D ^%L1TS
 ;
 I $G(HZM) S SOAD=$$SOAD^W4HZMST(HZM),NMB=$$NMB^W4HZMST(HZM)
 ;
 I MC=1 S TXT=$G(SOAD)_" "_HZM
 ;
 I MC=2 S TXT=+HZM
 ;
 I MC=95 S TXT=+HZM ; -- HESHBON
 ;
 I MC=99 D  ; -- HESHBONIT
 .N TIMEH S TIMEH=$$HSBP^W4HZMST(HZM)
 .I TIMEH?5N1","1N.N S TIMEH=$$T^%L1TIME(TIMEH)
 .S TXT=TIMEH_" "_$J($$TSHL^W4HZMST(HZM),2,2)_" "_HZM
 ;
 S ST=MC_" "_+$G(NMB)_" "_TXT_" "
 ;
 S @$$GL@($O(@$$GL@(999999),-1)+1)=ST
 Q
 ;
 ;
SET(ST)
 N (JB,%ARG,ST)
 I $G(ST)="" Q
 S ST=$$SP1^%L1FRM(ST)
 S ST=$TR(ST," ","_")
 ;
 N RESTID S RESTID=$G(@$$^W4PRM@("RESTORAN","RESTID"))
 ;
 N FILE S FILE="/tmp/rstrnout"
 ;
 N TMOUT S TMOUT=$G(@$$^W4PRM@("RESTORAN","TMOUT"))
 ;;N ST S ST=1_2_2_123 ; PARSE MESSAGE
 ;
 I $$^%L1ZOS(2,FILE)
 ;
 N FILEIN S FILEIN="/tmp/rstrnin"
 ;
 N URL S URL="http://www.restorun.info/HttpPosInterfaceProxy/interface.aspx?"
 ;;S URL="http://restorun.info/HttpPosInterfaceProxy/httpposinterfacehandler.ashx?" ;;RestID=tesst243&Message=1_2_2_123
 S URL="https://toppos972.azurewebsites.net/api/pos?"
 N STR S STR=URL_"RestID="_RESTID_"&Message="_ST
 ;
 O FILEIN:(NEWVERSION:REWIND)
 U FILEIN W "url="_STR C FILEIN
 S CMD="curl -s -m "_TMOUT_" -o "_FILE_" -K "_FILEIN
 ZSY CMD
 ;
 N DD S DD=$$^W4DZ
 N IND S IND=$O(^[$$^W3MAIN]W3CMD(DD,99999999),-1)+1
 S ^[$$^W3MAIN]W3CMD(DD,IND,"IN0")=STR
 S ^[$$^W3MAIN]W3CMD(DD,IND,"IN")=ST
 S ^[$$^W3MAIN]W3CMD(DD,IND)=CMD
 S ^[$$^W3MAIN]W3CMD(DD,IND,"RES")=$ZC
 ZSY "rm -f "_FILEIN
 Q
 ;
GL(STAM) ;
 Q "^[$$^W3MAIN]pcrn"
 
 
 
 

W4S
W4S(STRIN,COMP,CARD,MMYY) ; [ 25.11.08 09:45 ] [ 24.11.08 18:32 ] [ 07.06.07 09:25 ]
 N %L1DEVCH
 I $G(@$$^W4PL@("MDPORTS"))=56 D ^W4S1(STRIN,COMP,CARD,MMYY) Q  ;-- NALAN
 I $G(@$$^W4PL@("MDXONS"))["TCP232" D ^W4S2(STRIN,COMP,CARD,MMYY) Q  ; -- ADSL
 ;
 N (JB,%REM,STRIN,COMP,CARD,MUTAG,MMYY,P3INOUT1)
 ;
 D ^W4SINIT
 ;
 K @$$^W4SA S ER=0
 S @$$^W4SA@("START")=$H
 ;
 S BEG=$C(1)_10800000
 S FIL=$TR($J("",37)," ",0)
 S ISH=$C(130)_$C(3)_$C(126)
 ;
 ;S CRC=$ZCRC(DATA,0)
 I '$G(@$$^W4PL@("MDPORTS")) D ER(1) G ENDM
 S PORTN=@$$^W4PL@("MDPORTS")
 I $G(@$$^W4PL@("MDPORTS2")),'(KUP#2) S PORTN=@$$^W4PL@("MDPORTS2")
 S PORTN=@$$^W4DEV@(PORTN)
 ;
 I $G(@$$^W4SG("PORTFL")@(PORTN)),^(PORTN)'=$$^W4MYDVN D
 .F I=1:1:50 Q:'$G(@$$^W4SG("PORTFL")@(PORTN))  H 1
 ;
 S @$$^W4SG("PORTFL")@(PORTN)=$$^W4MYDVN
 ;
 S KDM=$S($G(@$$^W4PL@("MDMRKS")):9,1:"")
 S MDPHONE=$E(@$$^W4SG("START"),10,11)_$E(@$$^W4SG("PARMNEW"),15,21)
 I '$E(MDPHONE,1,2) S MDPHONE=$E(MDPHONE,3,10)
 I KDM S MSPHONE=KDM_","_MDPHONE
 S US="O PORTN U PORTN:(NOECHO:NOWRAP:NOCENABLE)"
 S FRST=1 G M
MD D %L2MD(PORTN,1,MDPHONE,"T",US,$G(@$$^W4PL@("MDXONS")),"`ay")
 I $G(%L1MDOK)["INTR" S INTR=1
 S OK=$G(%L1MDOK)
 I $G(OK)'=1,FRST S MDPHONE=$S(KDM:KDM_",",1:"")_$S($E(@$$^W4SG("START"),10,11):$E(@$$^W4SG("START"),10,11),1:"")_$E(@$$^W4SG("PARMNEW"),24,30) S FRST=0 G MD
 I $G(OK)'=1,'FRST U 0 D ER(2) G ENDM
 X US F I=1:1:12 R A:1 S @$$^W4SA@("ISH",I)=A Q:A[ISH
 I A'[ISH U 0 D ER(3) G ENDM
 D CLPORT X US
 S OTB=$C(6)_"ASH96"_$C(13)
 W OTB_$TR($J($$^%L1ZCRC(OTB,0),2)," ",0)_$C(3)
 R A:1 S @$$^W4SA@("OTB0")=A
 D CLPORT
 S US="O PORTN U PORTN:(NOECHO:NOWRAP:NOCENABLE)"
M D KS(MASOF_"01")
 X US S DATA=MASOF_"01"_KS_"07TI"_$TR($J(CARD,19)," ",0)_COMP_SUM_KOH_"0000000" ; 58
 S DATA=DATA_SUGI_1_$J(SUGA,1)_FIRST_NEXT_NUMT_"000000000" ; 58+31 = 89
 S KV=$E($G(@$$^W4SG("TOTAL")),23,24)+1#100
 S KV=$TR($J(KV,2)," ",0) I KV<2 S KV="01"
 S DATA=DATA_MG_"0"_KV_KUP_NS_"0" ; 47+89 = 136
 S DATA=DATA_$TR($J("",13)," ","0")
 S DATA=DATA_$S(ASHTZ&CVV2:3,ASHTZ:1,CVV2:2,1:0)_"00"
 S DATA=DATA_$J("",16)_"01"
 S DATA=DATA_"000000000" ; 9 +170 = 179
 S DATA=DATA_YYMM ; 4+179 =183
 S DATA=DATA_$S(CVV2<10:+CVV2,1:1)
 S DATA=DATA_$S(ASHTZ:$J(+ASHTZ,9),1:"000000000")
 S DATA=DATA_$S(CVV2:$J(+CVV2,4),1:"0000")
 S DATA=DATA_"008"_MUTAG_4_$S(ASHTZ:1,1:0)_$TR($J("",17)," ",0) ; WAS 2
 S DATA=BEG_$TR($J($L(DATA),4)," ",0)_DATA ; 13+220=233
 S ZCRC=$$^%L1CRC(DATA)
 S DATA=DATA_ZCRC_$C(3)
 S @$$^W4SA@("SEND")=DATA
 X US W DATA
 D RD(1) I ER D DIS G ENDM
 S OTB=$C(1)
 D RDO(26) I ER D DIS G ENDM
 S @$$^W4SA@("OTB")=OTB
 ;
 I $E(OTB,24,27)="07SA" D  D DIS G ENDM
 .D RDO($E(OTB,11,13)+3) Q:ER
 .D OTB
 ;
 I $E(OTB,24,27)="07SN" D  D DIS G ENDM
 .S @$$^W4SA@("OTBH")=OTB
 .S RDC=$E(OTB,11,13)
 .D RDO(RDC) ;;Q:ER
 .D CLPORT X US S DATA=BEG_"0000"
 .S DATA=DATA_$$^%L1CRC(DATA)_$C(3)
 .X US W DATA
 .D RD(1) S ER=0 ;Q:ER
 .S OTB=$C(1)
 .D RDO(26)
 .I $E(OTB,24,27)'="07SA" D ER(4) Q
 .D RDO($E(OTB,11,13)+3) Q:ER
 .D OTB
 ;
 D RDO(30)
 S @$$^W4SA@("OTB")=$E(OTB,1,255)
 D ER(8) D DIS
 ;
ENDM S @$$^W4SA@("FIN")=$H Q:'$D(PORTN)   C PORTN Q
 N USERPORT
 I $G(%L1DEVCH("MODMA")) S USERPORT=PORTN S %L2MD="NOMSG" D ^%L1GETMD
 H 2 K @$$^W4SG("PORTFL")@(PORTN) U 0
 Q
 ;
%L2MD(PORTN,USERMOD,NUMBER,MDTONE,US,XON,MDLKH) ;
 N (JB,%REM,JOB,PORTN,USERMOD,NUMBER,MDTONE,MDLKH,%L1MDOK,US,XON,%DELAY,%L2MD)
 S %L1MDOK=0,%L2MD=""
 S PRT=%REM
 I PRT=PORTN D MSG("CANNOT SELECT YOUR OWN DEVICE.") G EXIT
 C PORTN O PORTN::0 E  D MSG("..LINE IN USE..WAITING..") O PORTN D MSG("READY")
 X US D DIS
 ;;I $$^%L1ZB($ZA,2,1) D MSG("DEVICE "_PORTN_" IS AN OUTPUT ONLY DEVICE.") G EXIT
 S %DC=0 S %DT=0,%Y=""
P0 X US D CLPORT S %ST="AT&F"_$G(XON)_$C(13)
 D MSG(%ST)
 X US F %J=1:1:$L(%ST) W $E(%ST,%J) D DELAY
P01 X US R *%Y1:1 E  S %DC=%DC+1 G:%DC<32 P01:%DC#16,P0 D MSG("NO CARRIER") G EXIT
 G:%Y1=1 EXIT
 I %Y1=48 G TP1
 I %Y1'=13 S %Y=%Y_$C(%Y1) G P01
 D MSG(%Y) S %DT=%DT+1
 G:%Y1=1 EXIT
 I %Y'["OK" G P01:%DT#18,P0:%DT<49 D MSG("NO CARRIER") G EXIT
 S %DT=0
 I $G(NUMBER) D DELAY G TP1
TP1 X US S NUMBER=$TR(NUMBER,"-","") D CLPORT
 S ST="ATD"_$G(MDTONE,"T")_"W"_NUMBER_$C(13) W ST
 D MSG(ST)
 H 1
 S OK=0
 F I=1:1:30 X US R A:1 D  S @$$^W4SA@("CONN",I)=A D MSG(A) Q:OK
 .I $F(A,"CONN")!(A=1) S OK=1 Q
 .I $F(A,"BUS")!(A=7) S OK=2 Q
 .I $F(A,"NO CAR")!(A=3) S OK=3 Q
 .I $F(A,"NO DIAL")!(A=6) S OK=4 Q
 I OK'=1 G EXIT
 I OK=1 D MSG("MODEM IN USE !")
 S %L1MDOK=OK
EXIT Q
 ;
ERR S %L1MDOK=$ZS G EXIT
 ;
HANGUP ;
 ;;D ^%L1DVRES(PORTN)
 ;O PORTN X US D HNG^%L1HANG("ATH0ZS0=0")
 Q
CLPORT Q  X US ;
 F I=1:1:%DELAY R *A:0
 I A>0 F  R *A:1 E  Q
 Q
DELAY ;
 F %JJJ=1:1:%DELAY
 Q
MSG(TXT) ;
 N IND S IND=$O(@$$^W4SA@("MSG",999999),-1)+1
 S @$$^W4SA@("MSG",IND)=TXT_" : "_$$^W4MYDVN_" %L1MODJ"
 Q
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:10000
 Q DLY
ER(CER) ;
 S ER=CER
 S @$$^W4SA@("ER")=CER
 Q
RD(SMB) ;
 N A,H0
 S H0=$P($H,",",2)
 X US F  R *A:1 Q:A=SMB  Q:$P($H,",",2)-H0>30
 I A'=SMB D ER(5)
 Q
RDO(COL) ;
 N I,A,H0,OK S ER=0
 S H0=$P($H,",",2)
 X US F I=1:1:COL S OK=0 Q:$P($H,",",2)-H0>20  R *A:1 Q:A<0  S OTB=OTB_$C(A),OK=1
 S @$$^W4SA@("OTB","COL")=$L(OTB)
 ;;I 'OK D ER(6)
 Q
DIS S DATA=$C(1)_"000000000010DISCONNECT"
 S B=$$^%L1CRC(DATA)
 X US D CLPORT W DATA_B_$C(3)
 S @$$^W4SA@("DIS")=DATA
 I '$G(%L1DEVCH("MODMA")) R A:4
 Q
OTB ;
 S @$$^W4SA@("OTB")=$E(OTB,1,255)
 S @$$^W4SA@("STA")=$TR($J($E(OTB,94,95),3)," ",0)
 S @$$^W4SA@("AUTHNO")=$E(OTB,96,102)
 Q
KS(M) ;
 N I,J
 S KS=0,J=1 F I=1:1:$L(M) D
 .S J=J+1 I J=7 S J=J+1
 .S KS=KS+(J*$E(M,I))
 S KS=KS#7
 Q

W4S1
W4S1(STRIN,COMP,CARD,MMYY) ; [ 25.11.08 16:21 ] [ 24.11.08 15:46 ] [ 17.06.07 14:21 ]
 N (JB,%REM,STRIN,COMP,CARD,MUTAG,MMYY,P3INOUT1)
 ;;S $ZT=""
 S ADDR="194.194.193.58"
 S PORTN="SCK$"_$J,PORT=8006
 ;
 D ^W4SINIT
 ;
 S FRST=1
 S US="U PORTN:(NOECHO:NOWRAP)"
MD S ER=$$^%L2NALAN(ADDR,PORT)
 I $G(ER) U 0 D ER(ER) G ENDM
 ;
 X US S B="" R *A:2 I A<0 D ER(3) G ENDM
 S B=$C(A)
 F I=1:1:8 R *A:1 S:A>0 B=B_$C(A) Q:A<0  Q:B[ISH
 S @$$^W4SA@("ISH")=B
 I B'[ISH D ER(3) G ENDM
 D CLPORT X US
 G TV^W4S2
 ;
ER(CER) ;
 S ER=CER
 S @$$^W4SA@("ER")=CER
 Q
 ;
CLPORT Q  X US ;
 F I=1:1:%DELAY R *A:0
 I A>0 F  R *A:1 E  Q
 Q
 ;
ENDM S @$$^W4SA@("FIN")=$H
 C PORTN K @$$^W4SG("PORTFL")@(PORTN)
 Q

W4S1VW
W4S1VW(I) ; [ 01.08.21 12:46 ] [ 01.07.21 11:49 ] [ 16.10.20 05:28 ] 
 N (JB,%ARG,I,COLS1VW)
 I '$D(COLS1VW) S COLS1VW=""
 N ST S ST=$$SPA^%L1FRM($G(@$$^W4MAIN("TMPS111")@(I)))
 I $D(^(I,"KOT")) S COLS1VW=$L(ST,":")
 ;
 I ST?.P1"----"."-".P,$D(@$$^W4MAIN("TMPS111")@(I+1,"KOT")) D
 .S COLS1VW=$L($G(@$$^W4MAIN("TMPS111")@(I+1)),":")
 ;
 D WTD(ST,COLS1VW)
 Q
 ;
 ;
WTD(ST,COL) ;
 N FLD 
 I '$G(COL) S COL=2
 S ST=$$SPA^%L1FRM(ST)
 ;
 I ST'[":" W "<td " D  W "</td>" Q
 .W "colspan="""_COL_""" >"
 .I ST?.P1"----"."-".P W "<hr>" Q
 .I ST["g""ec" W "<br><br>"
 .W $$H2U^%L1FRM($$SPA^%L1FRM(ST))
 ;
 I $$^%W1LNG="H" N J F J=$L(ST,":"):-1:1 D PCTD(J)
 I $$^%W1LNG'="H" N J F J=1:1:$L(ST,":") D PCTD(J)
 Q
 ;
 ;
PCTD(J) ;
 N FLD
 S FLD=$P(ST,":",J)
 I J=$L(ST,":") D  Q
 .W "<td>"
 . I $D(%ARG("MIN2DV",J)) S FLD=$TR(FLD,"-",":")
 . W $$H2U^%L1FRM($$SPA^%L1FRM(FLD)) ; -- TEUR
 .W "</td>"
 ;
 W "<td "
 D
 .I $G(%ARG("COLOR",J))="GRED" D  Q
 ..W " style=""color:"_$S(FLD>0:"green",+FLD=0&(FLD?1N.E):"grey",FLD<0:"red",1:"black")_""" "
 .I $G(%ARG("COLOR",J))'="" D  Q
 ..W " style=""color:"_%ARG("COLOR",J)_""" "
 .
 .I FLD?.P1"0.0"."0".P D
 ..W " style=""color:grey"" "
 W ">"
  W $$H2U^%L1FRM(FLD)
 W "</td>"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4S2
W4S2(STRIN,COMP,CARD,MMYY) ; [ 24.11.08 15:46 ] [ 07.06.07 09:25 ] [ 19.09.06 14:03 ]
 N (JB,%REM,STRIN,COMP,CARD,MUTAG,MMYY,P3INOUT1)
 D ^W4SINIT
 ;
 I '$G(@$$^W4PL@("MDPORTS")) D ER(1) G ENDM
 S PORTN=@$$^W4PL@("MDPORTS")
 I $G(@$$^W4PL@("MDPORTS2")),'(KUP#2) D
 .S PORTN=@$$^W4PL@("MDPORTS2")
 ;
 I $G(@$$^W4SG("PORTFL")@(PORTN)) D
 .F I=1:1:50 Q:'$G(@$$^W4SG("PORTFL")@(PORTN))  H 1
 ;
 S @$$^W4SG("PORTFL")@(PORTN)=$P
 S KDM=$S($G(@$$^W4PL@("MDMRKS")):9,1:"")
 S MDPHONE=$E(@$$^W4SG("START"),10,11)_$E(@$$^W4SG("PARMNEW"),15,21)
 I '$E(MDPHONE,1,2) S MDPHONE=$E(MDPHONE,3,10)
 I KDM S MSPHONE=KDM_","_MDPHONE
 S US="U PORTN"
 O PORTN::30 E  D ER(1) G ENDM
 C PORTN O PORTN
 S FRST=1
 X US W "TCP",!
 F I=1:1:8 R A:1 S @$$^W4SA@("ISH",I)=A Q:A[ISH
 I A'[ISH U 0 D ER(3) G ENDM
 S US="U PORTN"
 D CLPORT X US
TV S OTB=$C(6)_"ASH96"_$C(13)
 W OTB_$TR($J($$^%L1ZCRC(OTB,0),2)," ",0)_$C(3)
 R A:1 S @$$^W4SA@("OTB0")=A
 D CLPORT
 D KS(MASOF_"01")
 X US S DATA=MASOF_"01"_KS_"07TI"_$TR($J(CARD,19)," ",0)_COMP_SUM_KOH_"0000000" ; 58
 S DATA=DATA_SUGI_1_$J(SUGA,1)_FIRST_NEXT_NUMT_"000000000" ; 58+31 = 89
 S KV=$E($G(@$$^W4SG("TOTAL")),23,24)+1#100
 S KV=$TR($J(KV,2)," ",0) I KV<2 S KV="01"
 S DATA=DATA_MG_"0"_KV_KUP_NS_"0" ; 47+89 = 136
 S DATA=DATA_$TR($J("",13)," ","0")
 S DATA=DATA_$S(ASHTZ&CVV2:3,ASHTZ:1,CVV2:2,1:0)_"00"
 S DATA=DATA_$J("",16)_"01"
 S DATA=DATA_"000000000" ; 9 +170 = 179
 S DATA=DATA_YYMM ; 4+179 =183
 S DATA=DATA_$S(CVV2<10:+CVV2,1:1)
 S DATA=DATA_$S(ASHTZ:$J(+ASHTZ,9),1:"000000000")
 S DATA=DATA_$S(CVV2:$J(+CVV2,4),1:"0000")
 S DATA=DATA_"008"_MUTAG_4_$S(ASHTZ:1,1:0)_$TR($J("",17)," ",0) ; WAS 2
 S DATA=BEG_$TR($J($L(DATA),4)," ",0)_DATA ; 13+220=233
 S ZCRC=$$^%L1CRC(DATA)
 S DATA=DATA_ZCRC_$C(3)
 S @$$^W4SA@("SEND")=DATA
 X US W DATA
 D RD(1) I ER D DIS G ENDM
 S OTB=$C(1)
 D RDO(26) I ER D DIS G ENDM
 S @$$^W4SA@("OTB")=OTB
 ;
 I $E(OTB,24,27)="07SA" D  D DIS G ENDM
 .D RDO($E(OTB,11,13)+3) Q:ER
 .D OTB
 ;
 I $E(OTB,24,27)="07SN" D  D DIS G ENDM
 .S @$$^W4SA@("OTBH")=OTB
 .S RDC=$E(OTB,11,13)
 .D RDO(RDC) Q:ER
 .D CLPORT X US S DATA=BEG_"0000"
 .S DATA=DATA_$$^%L1CRC(DATA)_$C(3)
 .X US W DATA
 .D RD(1) S ER=0 ;Q:ER
 .S OTB=$C(1)
 .D RDO(26)
 .I $E(OTB,24,27)'="07SA" D ER(4) Q
 .D RDO($E(OTB,11,13)+3) Q:ER
 .D OTB
 ;
 D RDO(30)
 S @$$^W4SA@("OTB")=$E(OTB,1,255)
 D ER(8) D DIS
ENDM S @$$^W4SA@("FIN")=$H
 C PORTN K @$$^W4SG("PORTFL")@(PORTN)
 Q
 ;
CLPORT X US ;
 Q
 I PORTN=56 Q
 F I=1:1:%DELAY R *A:0
 I A>0 F  R *A:1 E  Q
 Q
DELAY ;
 F %JJJ=1:1:%DELAY
 Q
MSG(TXT) ;
 N IND S IND=$O(@$$^W4SA@("MSG",999999),-1)+1
 S @$$^W4SA@("MSG",IND)=TXT_" : "_$J_" %L1MODJ"
 Q
DLY() ;
 N JJJJ S DLY="" F JJJJ=1:1:10000
 Q DLY
ER(CER) ;
 S ER=CER
 S @$$^W4SA@("ER")=CER
 Q
RD(SMB) ;
 N A,H0
 S H0=$P($H,",",2)
 X US F  R *A:1 Q:A=SMB  Q:$P($H,",",2)-H0>30
 I A'=SMB D ER(5)
 Q
RDO(COL) ;
 N I,A,H0,OK
 S H0=$P($H,",",2)
 X US F I=1:1:COL S OK=0 Q:$P($H,",",2)-H0>20  R *A:1 Q:A<0  S OTB=OTB_$C(A),OK=1
 S @$$^W4SA@("OTB","COL")=$L(OTB)
 ;;I 'OK D ER(6)
 Q
DIS S DATA=$C(1)_"000000000010DISCONNECT"
 S B=$$^%L1CRC(DATA)
 ;W $A($E(B))_" "_$A($E(B,2))
 X US D CLPORT W DATA_B_$C(3)
 S @$$^W4SA@("DIS")=DATA
 R A:4
 Q
OTB ;
 S @$$^W4SA@("OTB")=$E(OTB,1,255)
 S @$$^W4SA@("STA")=$TR($J($E(OTB,94,95),3)," ",0)
 S @$$^W4SA@("AUTHNO")=$E(OTB,96,102)
 Q
GET(STR,LIM,P1,P2) ;
 N A,I S A=$P(STR,LIM,2)
 F I=1:1:$L(A) Q:$E(A,I)?1U
 I $E(A,I)?1U S I=I-1
 I '$D(P1),'$D(P2) Q $E(A,1,I)
 I $G(P1),$G(P2) S:P2>I P2=I Q $E(A,P1,P2)
 I P1?1P,$G(P2) S A=$P($E(A,1,I),P1,P2)
 Q A
KS(M) ;
 N I,J
 S KS=0,J=1 F I=1:1:$L(M) D
 .S J=J+1 I J=7 S J=J+1
 .S KS=KS+(J*$E(M,I))
 S KS=KS#7

W4S21
W4S21(STAM) ; [ 01.08.09 13:09 ] [
 N A S A=$$GET^%W1PRM("S21")
 I A["<UNDEF" S A=""
 I $E(A,1,2)="$V" Q 1
 Q 0

W4S212IN
W4S212IN(S21) ; [ 18.05.18 09:09 ] [ 22.11.11 13:10 ] [
 N (JB,%ARG,%REM,S21)
 S KUP=901
 S SUMCA=$P(S21,"*",7)
 S PAY=$S(SUMCA<0:-SUMCA,1:SUMCA)*100
 S SUGIS=$P(S21,"*",4)
 I SUGIS<1 S SUGIS=1
 S SUGIS=$S(SUGIS=1:"01",SUGIS=3:"51",SUGIS=5:"03",1:SUGIS)
 S SUGAS=$P(S21,"*",5)
 I SUGAS<1 S SUGAS=1
 S SUGMTB=$P(S21,"*",17)
 I SUGMTB<1 S SUGMTB=1
 S KOHAV=$P(S21,"*",18)
 S SUGMRB=1
 S AUTHNO=$P(S21,"*",11)
 I 'AUTHNO S AUTHNO="0000000" D
 .I $G(%ARG("AUTHNO")) S AUTHNO=1111111
 S (P1,PC,PN)=0
 S P1=$P(S21,"*",8)
 S PC=$P(S21,"*",10)*100
 S PN=$P(S21,"*",9)
 S (PF,PG,PH)=0
 S SUGBC=51
 S YYMM=$E($P(S21,"*",14),3,4)_$E($P(S21,"*",14),1,2)
 S ASHCVV2=$P(S21,"*",23)
 I ASHCVV2="" S ASHCVV2=2
 S ASHTZ=$P(S21,"*",22)
 S ASH4=$P(S21,"*",24)
 S VIZ=$P(S21,"*",2)
 I $$^W4MG(VIZ) S MG=VIZ
 ;
 D ^W4STRIN
 Q STRIN
 
 
 

W4SA
W4SA(STAM) ; [ 24.11.08 14:35 ] [
 Q "^[$$^W3MAIN]A2S($$^W4MYDVN)"

W4SALE
W4SALE(MVC) ; [ 19.11.24 11:17 ] [ 11.04.24 05:26 ] [ 23.01.24 14:24 ] 
 N (MVC,JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"_$$^%W1DICT("SIGNSALEITEM")_"</span>",!
 W "<br><br>",!
 D ^W4SBMBCK("AddMvc"_MVC_"()")
 W "<br>",!
 ;
 W " <table id=""TbMvc"" width=""90%"" dir="""_$$^%W1DIR_""" border=""0"" cellspacing=""0"" cellpadding=""7"">",!
 W "  <tr class=""tblordhd"">"
 W "   <th width=""40%"">"_$$^%W1DICT("NAME")_"</th>",!
 W "   <th>"_$$^%W1DICT("NORMALPRICE")_"</th>",!
 W "   <th>"_$$^%W1DICT("SALEPRICE")_"</th>",!
 W "   <th>"_$$^%W1DICT("DIFFERENCE")_"</th>",!
 W "   <th>"_$$^%W1DICT("SIGN")_"</th>",!
 W "  </tr>",!
 ;
 D PUT^%W1PRM("MVC",MVC)
 S GL=$$GL(MVC)
 S NMB=$$GETP^%W1PRM("NMB") Q:'NMB
 ;
 S I=0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D VIB(N,MVC)
 ;
ETB W " </table>",!
 D PUT^%W1PRM("WASMVC3",1)
 W "<br>",!
 D ^W4SBMBCK("AddMvc"_MVC_"()")
 W "</div>",!
 Q
 ;
 ;
GET(RKVZ,STR,MVC) ;
 I $G(MVC)=3,RKVZ="SET1" Q $P(STR,"\",1)
 I $G(MVC)=3,RKVZ="SQN" Q $P(STR,"\",2)
 I $G(MVC)=3,RKVZ="SET2" Q $P(STR,"\",3)
 I $G(MVC)=3,RKVZ="PRC" Q $P(STR,"\",4)
 I $G(MVC)=3,RKVZ="DAT1" Q $P(STR,"\",5)
 I $G(MVC)=3,RKVZ="DAT2" Q $P(STR,"\",6)
 Q ""
 ;
 ;
VIB(N,MVC)
 I '$$USVIB(N,MVC) Q
 ;
 N A S A=$G(@GL@(N,1))
 S SET2=$$GET("SET2",A,MVC)
 ;
 S PRC=$$GET("PRC",A,MVC)
 ;
 N GLSET S GLSET=$$^W4GL("P1SETM")
 N CD S CD="" F  S CD=$O(@GLSET@(SET2,CD)) Q:CD=""  D
 .S MH=$J($$MH^W4P(CD),2,2)
 .S NM=$$SHEM^W4P(CD)
 .D TRMTN(N,CD,MH,PRC,NM)
 W "<tr><td colspan=""6""><hr></td></tr>",!
 Q
 ;
 ;
USVIB(N,MVC) ;
 N (JB,%ARG,N,MVC)
 N GL S GL=$$GL(MVC) ; -- W4MVC3
 N A S A=$G(@GL@(N,1))
 N DT1,DT2,DZ,THUM,SET1,SET2,NMB
 ;
 S DT1=$$^%L1DC($$GET("DAT1",A,MVC),3)
 S DT2=$$^%L1DC($$GET("DAT2",A,MVC),3)
 S DZ=$$^W4DZ
 ;
 I DZ<DT1!(DZ>DT2) Q 0
 ;
 S THUM=$$GET("THUM",A,MVC)
 S NMB=$$GETP^%W1PRM("NMB")
 I NMB,$$^W4MSL(NMB),THUM=1 Q 0
 I NMB,$$^W4MSD(NMB),THUM=2 Q 0
 ;
 S PRC=$$GET("PRC",A,MVC)
 ;
 N LKHN,SUGL S LKHN="",SUGL=""
 S LKHN=$$LKHN^W3HZMST(JB)
 I $L(LKHN)>3,$D(@$$^W4GL("PARLKH")@(LKHN)),$G(@$$^W4PRM@("NOLKMVC1")) Q 0
 I $L(LKHN)>3 S SUGL=$$SUGL^W4L(LKHN) I SUGL,$D(@$$^W4GL("PARSLK")@(SUGL)),$G(@$$^W4PRM@("NOLKMVC1")) Q 0
 ;
 S SET1=$$GET("SET1",A,MVC)
 S SET2=$$GET("SET2",A,MVC)
 S QNMVC=$$GET("SQN",A,MVC)
 ;
 N SQN S SQN=$$SQN(SET1,MVC,QNMVC,PRC)
 I SQN<QNMVC Q 0
 Q 1
 ;
 ;
TRMTN(N,CD,MH,PRC,NM)
 W "<tr id=""tr"_N_"-"_CD_""" >" 
  W "<td>"_$$H2U^%L1FRM(NM)_"</td>"
  W "<td>"_$J(MH,2,2)_"</td>"
  W "<td>"_$J(PRC,2,2)_"</td>"
  W "<td dir=""LTR"" style=""text-align:right;color:red"">"
   W $J(PRC-MH,2,2)
  W "</td>"
  W "<td align=""center"">"
   D LBLCHK("lbl"_N_"-"_CD,"sign"_N_"-"_CD)
  W "</td>" 
 W "</tr>",!
 Q
 ;
 ;
SQN(SET,MVC,QNMVC,PRC) ;
 I $G(SET)="" Q 0
 N A,CD,LV,QN
 N SQN S SQN=0
 N TMPORD S TMPORD=$$^W4TMPORD
 N NP S NP="" F  S NP=$O(@TMPORD@(NP)) Q:NP=""  I NP D
 .S A=$G(^(NP))
 .S LV=$$LV(A),CD=$$CD(A),QN=$$QN(A)
 .I LV=0,CD,$D(@$$^W4GL("P1SETM")@(SET,CD)) S SQN=SQN+QN
 .
 .I $$MVCST(A)=("MVC"_MVC) D
 ..N QNST S QNST=$P(A,"~",5) S:'QNST QNST=1
 ..I $G(PRC)'["%" S SQN=$S($G(QNMVC):SQN-(QNMVC*QNST),1:0)
 ..I SQN<0 S SQN=0
 Q SQN
 ;
 ;
SSUM(SET,MVC,STMVC) ;
 N PR S PR=0
 N SQN S SQN=0
 N SSQN S SSQN=0
 I $G(SET)="" Q 0
 N CD,LV,SUM
 N SSUM S SSUM=0
 N SSSUM S SSSUM=0
 N SIZL S SIZL=0
 N QNMVC S QNMVC=$$GET("SQN",STMVC,MVC)
 N PRCMVC S PRCMVC=$$GET("PRC",STMVC,MVC)
 N PRCMVC1 S PRCMVC1=$TR(PRCMVC,"=","")
 ;
 N TMPORD S TMPORD=$$^W4TMPORD
 ;
 N NP S NP="" F  S NP=$O(@TMPORD@(NP)) Q:NP=""  I NP D
 .N A S A=$G(^(NP))
 .N QN S QN=$$QN(A)
 .S LV=$$LV(A),CD=$$CD(A),SUM=QN*$$PRC(A)
 .I PR,SUM<0 S PR=0 Q
 .S PR=0
 .
 .I LV=0,CD,$D(@$$^W4GL("P1SETM")@(SET,CD)) D
 ..S SSSUM=SSSUM+SUM
 ..S SSQN=SSQN+QN
 ..
 ..I PRCMVC["=",SQN'<QNMVC Q
 ..
 ..I PRCMVC["=",SQN+QN>QNMVC D
 ...N QN1 S QN1=SQN+QN-QNMVC
 ...N QN2 S QN2=SSQN#QNMVC
 ...N IZL S IZL=QN1*$$PRC(A)
 ...N IZL2 S IZL2=QN2*$$PRC(A)
 ...;
 ...S SIZL=IZL2
 ...S SUM=SUM-IZL
 ...S QN=QN-QN1
 ..S SQN=SQN+QN
 ..S SSUM=SSUM+SUM
 .
 .I $$MVCST(A)=("MVC"_MVC) D
 ..I PRCMVC["=" D
 ...S SSUM=SSSUM-(PRCMVC1*QN)+($$PRC(A)*QN),SSSUM=SSUM
 ..I PRCMVC'["=" S SSUM=0 Q
 ..;
 ..S SQN=SQN-QNMVC
 ..S SSQN=SSQN#QNMVC I SSQN'>0 S SIZL=0
 ..I SQN'>0 S SQN=0,SSUM=0
 ..S PR=1
 ;
 S SIZL=SIZL
 I PRCMVC["=",SSUM<PRCMVC1 S SSUM=SSUM+SIZL 
 Q SSUM
 ;
 ;
US(MVC) ;
 I '$G(MVC) Q 0
 N GL,HZM
 S GL=$$GL(MVC)
 I $G(GL)="" Q 0
 ;
 S HZM=$$GETP^%W1PRM("HZM")
 I HZM>0,$$CLOSE^W4HZMST(HZM) Q 0
 ;
 I $$GETP^%W1PRM("WASMVC3") Q 0
 ;
 N N,OK,PRC S OK=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  I OK Q
 .N GL S GL=$$GL(MVC)
 .N A S A=$G(@GL@(N,1))
 .S PRC=$$GET("PRC",A,MVC)
 .I PRC<0!(PRC["=") Q
 .I $$USVIB(N,MVC) S OK=1
 Q OK
 ;
 ;
GL(MVC) ;
 S GL=$$^W4GL("W4MVC3")
 Q GL
 ;
LBLCHK(IDL,IDC) ;
 W "<input type=""checkbox"" id="""_IDC_""" style=""display:none"">"
 I '$G(RZ) S RZ=30
 W "<label id ="""_IDL_""" for="""_IDC_""" onClick=""ClickLblChk('"_IDL_"','"_IDC_"','"_RZ_"')"""">"
  I '$G(CHK) W "<img src=""w4chkboxn.png"" height="""_RZ_""" width="""_RZ_"px"">"
  I $G(CHK) W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"" >"
 W "</label>"
 Q
 ;
 ;
ADDMVC(PRM) ;
 ;;N I,IND,N,A,ST,LAST,OK,MVC,NMMVC,QN,CD
 N (JB,%ARG,PRM)
 S OK=0,A=""
 S MVC=$$MVC
 ;
 F I=1:1:$L(PRM,";")-1 D
 .S IND=$P(PRM,";",I)
 .S N=$P(IND,"-"),CD=$P(IND,"-",2),NMMVC="" I 'N!'CD Q
 .S QN=1,SSUM=0,SQN=0,PRC=""
 .
 .I MVC=3 D
 ..S A=$G(@$$^W4GL("W4MVC3")@(N,1)),NMMVC=$G(@$$^W4GL("W4MVC3")@(N))
 ..S PRC=$$GET("PRC",A,MVC)
 ..N QNMVC S QNMVC=$$GET("SQN",A,MVC)
 ..I PRC<0!(PRC["=") D
 ...S SET1=$$GET("SET1",A,MVC)
 ...S SET2=$$GET("SET2",A,MVC)
 ...S SQN=$$SQN(SET1,MVC,QNMVC,PRC)
 ...S SSUM=$$SSUM(SET1,MVC,A)
 ...I QNMVC>0,SQN>0,SQN>QNMVC,PRC'["%" S QN=SQN\QNMVC
 .
 .S ST=""
 .I PRC'["%",PRC'["=" S ST=$$STMTN(CD,A,QN)
 .I PRC["%",SSUM>0 S ST=$$STMTNS(CD,A,SSUM,PRC)
 .I PRC["=",SSUM>0 S ST=$$STMTNE(CD,A,SSUM,QN)
 .Q:ST=""
 .;;S $P(ST,"~",7-1)=$$TV^%W1DICT($$^%W1LNG,"SALEITEM",NMMVC)
 .S $P(ST,"~",17-1)="MVC"_$$MVC
 .S $P(ST,"~",2)=""""_NMMVC_""" "_$$TV^%W1DICT($$^%W1LNG,"SALEDISCOUNT",NMMVC)
 .S LAST=$O(@$$^W4TMPORD@(99999),-1)+1
 .S @$$^W4TMPORD@(LAST)="0~"_ST,OK=1
 .;;S @$$^W4TMPORD@(LAST+1)="1~"_CD_"-C~"_$$TV^%W1DICT($$^%W1LNG,"SALEITEM",NMMVC)
 ;
 S @$$^W4TMPORD@("MVC"_$$MVC)=$H
 Q OK
 ;
 ;
STMTN(CD,A,QN) ; 
 N ST 
 S ST=CD_"~"_$$SHEM^W4P(CD)_"~"_$$GET("PRC",A,$$MVC)_"~"_QN
 Q ST 
 ;
 ;
STMTNS(CD,A,SUM,AH) ; 
 N ST 
 I AH>0 S AH=-AH
 N SUMAH S SUMAH=$J(SUM*AH*.01,2,2)
 S ST=CD_"~"_$$SHEM^W4P(CD)_"~"_SUMAH_"~1"
 Q ST 
 ;
 ;
STMTNE(CD,A,SUM,QN) ; 
 N ST 
 N MHMVC S MHMVC=$$GET("PRC",A,$$MVC)
 S MHMVC=$TR(MHMVC,"=","")
 N RZN S RZN=MHMVC-SUM
 S ST=CD_"~"_$$SHEM^W4P(CD)_"~"_RZN_"~"_QN
 Q ST
 ;
 ;
ITWASMVC(NP) ; ;
 ;;S ^AA("W4SALE-ITWASMVC","NP")=$G(NP)
 N TMPORD S TMPORD=$$^W4TMPORD
 N MVC S MVC=$$MVC I 'MVC Q 0
 N A,A1,C,NP1,LV,CD,QN,GL,SET,OK
 ;
 I '$$WASMVC(MVC) Q 0
 S OK=0
 ;
 I NP D
 .S A=$G(@TMPORD@(NP))
 .I $$MVCST(A)=("MVC"_MVC) Q
 .S LV=$$LV(A),CD=$$CD(A),QN=$$QN(A)
 .N N S N="",GL=$$GL(MVC) F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 ..S C="",SET=""
 ..I MVC=3 S C=$G(@GL@(N,1)),SET=$$GET("SET1",C,MVC)
 ..I C=""!(SET="") Q
 ..I LV=0,CD,$D(@$$^W4GL("P1SETM")@(SET,CD)) D
 ...S NP1=NP F  S NP1=$O(@TMPORD@(NP1)) Q:NP1=""  I NP1 D  Q:OK
 ....S A1=$G(^(NP1)) I $$MVCST(A1)=("MVC"_MVC) S OK=NP1
 Q OK
 ;
 ;
MVC(STAM) ;
 Q +$$GETP^%W1PRM("MVC")
 ;
LV(A) ;
 Q $P(A,"~")
 ;
CD(A) ;
 Q $P(A,"~",2)
 ;
PRC(A) ;
 Q $P(A,"~",4)
 ;
QN(A) ;
 Q $P(A,"~",5)
 ;
MVCST(A) ;
 Q $P(A,"~",17)
 ;
WASMVC(MVC) ;
 N OK S OK=0
 N TMPORD S TMPORD=$$^W4TMPORD
 N A,N S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:OK
 .S A=$G(^(N))
 .I $$MVCST(A)[("MVC"_MVC) S OK=1
 Q OK
 ;
USAH(STAM) ;
 N (JB,%ARG)
 S SUMHZ=$$TOTORD^W4GETSUM(JB)
 S GLMVC=$$^W4GL("W3MVCSAH")
 S OKMVC=0
 S DZ=$$^W4DZ
 S NMB=$$GETP^%W1PRM("NMB")
 ;
 N N S N="" F  S N=$O(@GLMVC@(N)) Q:N=""  D  Q:OKMVC
 .S A=$G(@GLMVC@(N))
 .S DAT1=$P(A,"\",1) Q:'DAT1
 .S DAT2=$P(A,"\",2) Q:'DAT2
 .S DT1=$$^%L1DC(DAT1,3)
 .S DT2=$$^%L1DC(DAT2,3)
 .I DZ<DT1!(DZ>DT2) Q
 .S SUMMVC=$P(A,"\",3)
 .I SUMHZ<SUMMVC Q
 .S AH=$P(A,"\",4)
 .S THUM=$P(A,"\",5)
 .I NMB,$$^W4MSL(NMB),THUM=1 Q
 .I NMB,$$^W4MSD(NMB),THUM=2 Q
 .S OKMVC=N,OKMVC("AH")=AH
 ;
 S HNHAH=$$AHUZ^W3HZMST(JB)
 ;
 I '$G(OKMVC("AH"))!(HNHAH'<$G(OKMVC("AH"))) Q 0
 ;
 D PUT^W3HZMST(JB,"AHUZ",OKMVC("AH"))
 ;
 Q OKMVC
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SALEST
W4SALEST ; [ 26.06.22 14:36 ] [ 23.12.15 14:42 ] [ 25.11.13 19:57 ] 
 N (JB,%ARG,%REM)
BG ;
 S VL=$G(%ARG("VL"))
 I VL="" W "Not value !" Q
 S TMPST=$$^W4MAIN("TMPST")
 K @TMPST M @TMPST=@$$^W4GL("P1SETM")@(VL)
 ;
VIEW ;
 W "<div align=""center"">",!
 W "<br>",!
  W "<span style=""font-size:"_$$^W3FSZ_";"_$$FONTFM^W3CSS_""" >"
   W $$^%W1DICT("SETCONTENT",VL_"<>"_$G(@$$^W4GL("P1SETM")@(VL)))
  W "</span>",!
 W "<br><br>",!
 ;
 W "<table id=""TblStr"" width=""100%"" dir="""_$$^%W1DIR_""" "
  I $G(%ARG("PADDING")) W " cellpadding="""_$G(%ARG("PADDING"))_""" "
 W ">",!
 ;
 S ITEM="" F  S ITEM=$O(@TMPST@(ITEM))  Q:ITEM=""  D
 .N ITEM1 S ITEM1=$$NAME(ITEM)
 .W "<tr "
 . W $$STYLE^W4PRTVW(ITEM)
 .W ">"
 .W "<td id=""tdid"_ITEM_""" "_$$^%W1ALIGN
 .W " dir="""_$$^%W1DIR_""" >"
 .W ITEM_" &nbsp; "_$$H2U^%L1FRM(ITEM1)_"</td>"
 .N MH S MH=$$MH^W4P(ITEM)
 .W "<td "_$$^%W1ALIGN_" >"_$J(MH,2,2)_"</td>"
 .W "</tr>",!
 W "</table>",!
 ;
 K @TMPST
 W "<br><br>",!
 W "<input type=""button"" value="""_$$^%W1DICT("CLOSE")_""" "
  W " onClick=""parent.ifrHide('MUST','ifrmsg')"" "
 W ">"
 W "</div>",!
 Q
 ;
 ;
NAME(ITEM) ;
 N ST,NAME
 Q $$SHEM^W4P(ITEM)
 
 

W4SBM
W4SBM ; [ 28.09.25 08:04 ] [ 11.08.20 06:27 ] [ 15.12.17 11:49 ] 
  N (JB,%ARG)
  D ^W4BTN("SUBMIT","Submit('"_$G(%ARG("W4SBM"))_"')","GREEN")
 Q
 ;
SBMBCK(FSZ,WD,PRINT) ;
 N STYLE S STYLE=" style="""
 I $G(FSZ) S STYLE=STYLE_"font-size:"_$$^W3FSZ(FSZ)_";"
 I $G(WD) S STYLE=STYLE_"width:"_WD_";"
 S STYLE=STYLE_""""
 W " <table dir="""_$$^%W1DIR_""" "_STYLE_">",!
 W "  <tr>"
 W "   <td>"
      D W4SBM
 W "   </td>"
 ;
 W "<td width=""7%"">&nbsp;</td>"
 ;
 W "   <td>"
      D ^W4BCK
 W "   </td>"
 W "  </tr>",!
 W " </table>",!
 Q
 
 
 
 
 
 
 
 
 

W4SBMBCK
W4SBMBCK(PROC,SBM,PRN) ; [ 07.02.25 07:32 ] [ 24.04.24 13:50 ] [ 29.05.23 16:55 ] 
 I $G(PROC)="" S PROC="Submit()"
 I $G(SBM)="" S SBM="SUBMIT"
 ;
 W "<table dir="""_$$^%W1DIR_""" >",!
  W "<tr>"
   W "<td>"
    D BTN(SBM,PROC,"green")
   W "</td>"
   W "<td>&nbsp;</td>"
   ;
   I $G(PRN) D
   .W "<td>"
   .D BTN("PRINT","Print()","blue")
   .W "</td>",!
   .W "<td>&nbsp;</td>"
   ;
   W "<td>"
   D BTN("BACK","Back()","red")
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
BTN(VL,PROC,COLOR) ;
 N SZ S SZ=18
 I $$GETP^%W1PRM("W4BO") S SZ=12
 I $G(W4SBMBCK("SZ")) S SZ=W4SBMBCK("SZ")
 D ^W4BTN(VL,$G(PROC),$G(COLOR),,SZ)
 Q
 ;
 
 
 
 
 
 
 

W4SBR
W4SBR(CD) ; [ 24.05.12 09:12 ] [ 23.05.12 20:40 ] [
 N (JB,%ARG,%REM,CD)
 N REF S REF=$$REF^W4EZAT(CD)
 ;
 N SET S SET="" F  S SET=$O(@REF@(SET)) Q:SET=""  D
 .S NP1=$G(^(SET))
 .S IND(SET)=NP1
 .S NSET=$E(SET,2,6)
 .S PAR="" F  S PAR=$O(@$$^W4GL("P1SETA")@(NSET,PAR)) Q:PAR=""  D
 ..S NP2=$G(^(PAR))
 ..S IND(PAR)=NP1_";"_NP2_";"_SET
 ;
 S (INDS,INDP)=0
 F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .S A=$G(^(I))
 .S LV=$P(A,"~")
 .S CD=$P(A,"~",2)
 .I LV=0,$D(IND(CD)) D  Q
 ..S INDS=$P(IND(CD),";")
 ..S INDP=$P(IND(CD),";",2)
 ..D SETTREE
 .I LV>0 D SETTREE
 ;
 S TMP=$$^W4MAIN("TMP")
 K @TMP
 M @TMP=@$$^W4TMPORD
 ;
 K @$$^W4TMPORD S K=0
 S INDS="" F  S INDS=$O(TREE(INDS)) Q:INDS=""  D
 .S INDP="" F  S INDP=$O(TREE(INDS,INDP)) Q:INDP=""  D
 ..S SH="" F  S SH=$O(TREE(INDS,INDP,SH)) Q:SH=""  D
 ...S K=K+1 M @$$^W4TMPORD@(K)=TREE(INDS,INDP,SH)
 ...S IS=$G(TO(+INDS,+INDP,SH))
 ...D ^W4SRVTO(TMP,IS,$$^W4TMPORD,K)
 Q
 ;
SETTREE ;
 S SH=$O(TREE(+INDS,+INDP,9999),-1)+1
 M TREE(+INDS,+INDP,SH)=A
 S TO(+INDS,+INDP,SH)=I
 Q

W4SCANER
W4SCANER ; [ 30.01.20 13:16 ] [ 15.09.19 11:55 ] [ 12.09.19 22:06 ] 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" ",!
  I $$SUPER^W3PRM W " style=""background-image:url('"_$$PIC^W4MAIN_"');WIDTH:100%;HEIGHT:100%"" "
 W ">"
  S SZ=14,FSZ=26
  I '$$1024^W4WDSCR S SZ=18,FSZ=32 W "<br><br>",!
  ;
  W "<table border=""0"" style=""font-size:"_$$^W3FSZ(FSZ)_";width:60%;text-align:center"""">",!
   D SPACE
   ;
   W "<tr>"
    ;;W "<td>"_$$^%W1DICT("CODE")_"</td>",!
    W "<td>" ;; colspan=""3"">"
     W "<input type=""text"" style=""font-size:"_$$^W3FSZ(FSZ)_""" "
     W " onKeyDown=""parent.bot.OnKeyPress(event,this)"" "
     W " value="""" " ; --- *** LEV 31/05/16
     W "id=""sccd"" size=""14"" maxlength=""18"" >"
    W "</td>",!
   W "</tr>"
   ;
   D SPACE
   ;
   W "<tr>"
    ;;W "<td>"_$$^%W1DICT("MESSAGE")_"</td>",!
    W "<td>" ;;W "<td colspan=""4"" >"
     W "<input type=""text"" style=""font-size:"_$$^W3FSZ(FSZ)_";text-align:center"" "
     W " id=""scmsg"" readonly=""readonly"" "
     W " onFocus=""FocSelID('sccd')"" "
     W " size=""14"" maxlength=""14"" >"
    W "</td>",!
   W "</tr>"
   ;
   D SPACE
   ;
   S MAXL=14
   W "<tr>"
   S WDTB=62
   I $$1024^W4WDSCR S WDTB=90
    ;;W "<td>&nbsp;</td>"
    W "<td align=""center"">"
     W "<table width="""_WDTB_"%"">"
     D SUBMITKB^W4KB
     S %ARG("ZW")=1
     D NUMPAD^W4KB
    W "</table></td>"
   W "</tr>",!
   ;
  W "</table>",!
  ;
  ;
 W "</div>",!
 Q
 ;
SPACE W "<tr><td>&nbsp;</td></tr>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SCASK
W4SCASK ; [ 28.09.26 10:17 ] [ 27.01.26 03:58 ] [ 25.11.25 22:24 ] 
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 K @$$^W4MAIN("TMPCLK")
 ;
 ;;D NOSELECT^%W1JS
 ;
 S VP=$$VP Q:VP=""
 I VP="YESNO"!(VP="FIRE")!(VP="COPY") S VZ="ASK"
 E  S VZ=$G(%ARG("VZ")) I VZ="" Q
 D PUT^%W1PRM("VZ",VZ)
 ;
 I $$FIRST!(VP="YESNO") D
 .D CREATE^W4ASK(VP,VZ)
 .D INITUR^W4MENU(VP)
 ;
 I $G(%ARG("NP")) D PUT^%W1PRM("NP",%ARG("NP"))
 ;
 N HZM S HZM=+$$GETP^%W1PRM("HZM")
 I $G(%ARG("VP"))="LL",$$QUESMS^W4PRM,HZM'<1,$L($$MZMNM^W4HZMST(HZM)) D PUT^%W1PRM("NP",3)
 ;
 S NP=$$NP(VP,VZ)
 Q:NP=""
 ;
 I $E(VP,1,5)="XMENU",VZ="MLZ"!(VZ="MSH") D
 .D CREATE^W4ASK(VP,VZ)
 .D CRTMPMLZ(VZ)
 ;
 I VZ="TBL" D
 .D CREATE^W4ASK(VP,VZ)
 ;
 I VZ="POS" D
 .D CREATE^W4ASK(VP,VZ)
 .D CRTMPPOS
 ;
 I VZ="ATAR" D
 .D CREATE^W4ASK(VP,VZ)
 .D CRTMPATAR
 ;
 I $G(%ARG("HEAD"))="" S %ARG("HEAD")=$$NM^W4ASK(VP,VZ,NP)
 ;
 N CD S CD=$$NM^W4ASK(VP,VZ,NP)
 ;
 ;;S ^AA("W4SCASK")=1
 I $$DELORDISC(VP),$$NOZAPR,$$SETDELDISCPRM(VP,VZ,CD)'<0 Q
 ;;S ^AA("W4SCASK")=2
 ;
 I CD="WHOSUBMIT",'$$GETP^%W1PRM("MLZR") G MET
 ;;S ^AA("W4SCASK")=3
 ;
 N VL
 I $L(CD),$D(@$$^W4GL("W4ANS")@(VP,CD))#2 D  Q:VL'="<->"
 .S VL=$G(^(CD))
 .I $E(VL,1,2)="$$" X ("S VL="_VL)
 .Q:VL="<->"
 .I VP="DEL",VZ="ASK",$G(CD)="CAUSEDEL" S NP=1
 .D SBMVL(VP,VZ,CD,VL) ; --> NP=NP+1
 ;
MET I $L(CD),$D(@$$^W4MAIN("TMPSCANS")@(VP,CD))#2 D  Q
 .S VL=$G(^(CD))
 .I $E(VL,1,2)="$$" X ("S VL="_VL)
 .K @$$^W4MAIN("TMPSCANS")@(VP,CD)
 .;;S ^AA("W4SCASK")=3.5
 .D SBMVL(VP,VZ,CD,VL) ; --> NP=NP+1
 ;;S ^AA("W4SCASK")=4
 ;
 N OKD S OKD=0
 ;
 I VP="DEL",VZ="ASK",$G(CD)="DELETE?" D  Q:OKD
 .N STPAR S STPAR=$$GETP^%W1PRM("STPAR")
 .N CD S CD=$P(STPAR,"~",2) Q:CD=""
 .;;S ^AA("W4SCASK")=4.5
 .I $$^W4TSF(CD),'$$DELREST^W4PRM Q
 .;;S ^AA("W4SCASK")=4.6
 .D SBMVL(VP,VZ,CD,1)
 .S OKD=1
 ;
 I $$DELORDISC(VP),VZ="ASK",$$CAUSE(VP,VZ,NP) D
 .N WHO,WHO1,ZAPR
 .S WHO=$$WHO
 .S WHO1="" I WHO S WHO1=$$^W4NAME(WHO)
 .S ZAPR="SUBMITDISCOUNT"
 .I $$DEL(VP) S ZAPR="SUBMITDEL"
 .;;S ^AA("W4SCASK")=4.7
 .S %ARG("HEAD")="<!>"_$$TV^%W1DICT($$^%W1LNG,ZAPR,WHO1)
 ;
 I VP="DELPAYM",VZ="ASK",$$CAUSE(VP,VZ,NP) D
 .N WHO,WHO1,ZAPR
 .S WHO=$$WHO
 .S WHO1="" I WHO S WHO1=$$^W4NAME(WHO)
 .S ZAPR="SUBMITDELPAYM"
 .S %ARG("HEAD")="<!>"_$$TV^%W1DICT($$^%W1LNG,ZAPR,WHO1)
 ;
 Q:%ARG("HEAD")=""
 ;
 ;;S ^AA("W4SCASK")=5
 S OU=$$OU^W4ASK(VP,VZ,NP) I OU,'$G(%ARG("IN")) Q
 ;
 ;;S ^AA("W4SCASK")=6
 I $$MENU^W4ASK(VP,VZ,NP) D MENU(VP,VZ,NP) Q
 ;
 ;;S ^AA("W4SCASK")=7
 Q:CD=""
 D PUT^%W3DEB("W4SCASK","VP=VP & VZ=VZ & NP=NP & CD=CD")
 ;;S ^AA("W4SCASK")=8
 I $G(%ARG("VL"))'="" S VL=%ARG("VL") D  G KB
 .I $$TIPMZMNOW S VL=""
 ;
 S VL=$$GET^W4TMPANS(VP,CD)
 I VL="" S VL=$$DFLT^W4ASK(VP,VZ,NP)
 ;
KB ;
 ;;S ^AA("W4SCASK")=9
 D
 .N DL S DL=$$DL^W4ASK(VP,VZ,NP)
 .I DL["!" S %ARG("PSW")=1
 .I DL["H" D  Q
 ..S %ARG("MAXL")=+DL
 ..S TXT="~~"_$$TV^%W1DICT($$^%W1LNG,$G(%ARG("HEAD")))
 ..S %ARG("VL")=VL
 ..D ^W4ABC(TXT)
 .
 .I VP="DEL"!(VP="DISCOTH") S %ARG("WIDTH")="70%"
 .I VP="DISCNIS"!$$TIPMZMNOW S %ARG("MINUS")=1
 .D KB^W4KB(+$$DL^W4ASK(VP,VZ,NP),VL)
 ;
 I VP="FNDORD"&(VZ="ORDNMB")&$G(%ARG("TABLE")) D  ; -- TABLE HISTORY
 .W "<div align=""center"">",!
 .W " <table>",!
 .W "  <tr>"
 .  W "<td align=""center"">"
 .  W "<input type=""button"" style=""height:"_$$^W4KF(50)_"px;width:"_$$^W4KF(232)_"px;text-align:center;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""" value="""_$$^W4DICTHS($G(%ARG("TABLE")))_""" "_$$^W4TOUCH_"=""TableHistory()"" >"
 .  W "</td>"
 .W "  </tr>",!
 .W " </table>",!
 .W "</div>",!
 ;
 Q
 ;
 ;
SBMVL(VP,VZ,CD,VL) ;
 N A S A=$$SBM(VL) ; --> NP=NP+1
 ;
 ;;S ^AA("W4SCASK-SBMVL","A")=A
 ;;S ^AA("W4SCASK-SBMVL","MENU")=$$MENU^W4ASK(VP,VZ,NP)
 ;
 W "<script>",!
 I +A!(A="END") D
 .I $$MENU^W4ASK(VP,VZ,NP) D  Q
 ..W "ClickMenu('"_VL_"','"_CD_"')"
 .W " ShowPage()",!
 ;
 I 'A,A'="END" D
 .D PUT^%W1PRM("NP",1)
 .W " Cnc()",!
 ;
 W "</script>",!
 Q
 ;
 ;
SBM(PRM) ;
 N %SC
 N NP,VP,VZ,VL,DL,CMD,PRMDEL
 S VP=$$VP
 S VZ=$$GET^%W1PRM("VZ")
 S:VZ["UNDEF" VZ=""
 ;
 I '$L(VP) D RESTUR Q "0;NOVP"
 I '$L(VZ) D RESTUR Q "0;NOVZ"
 ;
 S NP=$$NP(VP,VZ) I NP="" Q "0;NONP"
 ;;W "VP="_VP_"  VZ="_VZ_" NP="_NP,!
 ;
 S VL=$P(PRM,"::",1,2)
 ;
 I VP="DEL" D
 .S PRMDEL=$P(PRM,"::",3)
 ;
 S DL=$$DL^W4ASK(VP,VZ,NP)
 N CMD S CMD=$$CMD^W4ASK(VP,VZ,NP)
 S CD=$$NM^W4ASK(VP,VZ,NP)
 I CD="" D RESTUR Q "0;NOCD"
 N OK
 ;
 I $L(CMD) D @CMD I $D(%SC("ER")) S OK="0;"_$G(%SC("ER","MSG")) Q OK
 ;
 ;
 I VP="FNDORD"&(VZ="ORDNMB")&$L(VL) D  Q OK
 .I $E(VL)="W"!($E(VL)="w") S VL=+$P($G(@$$^W4GL("HZLINKI")@(+$E(VL,2,20))),"\")
 .I $D(@$$^W4ORD@(VL))<11 D  Q
 ..S OK="0;ORDERNOTEXIST"
 .S OK="ORD:"_VL
 ;
 I VP="ITRA",VL="" S OK="0;MUSTBEFILLED"
 ;
 I VP="ITRA" N ST S ST="" D  Q ST
 .S ST="OK;"_$$CLWEB^%L1FRM($$LKH^W4L(VL))
 .I $$HBNOW^W4L(VL) S ST=ST_";"_$$CBH^W4KLOST(VL,+$H,1) Q
 .S ST=ST_";"_$J($$ITRA^W4L(VL),2,2)
 ;
 I VP="FIRE" D  Q 1
 .N HZM S HZM=$$GET^%W1PRM("HZM")
 .N NOFIRE S NOFIRE=+$$GET^%W1PRM("NOFIRE")
 .D KILL^%W1PRM("NOFIRE")
 .D ^W4FIRE(HZM,$P(VL,"::"),NOFIRE)
 ;
 I DL["H" S VL=$$INVH^%L1FRM($$CNWEB^%L1FRM(VL))
 ;
 D PUT^W4TMPANS(VP,CD,VL) ; -- OTVET !
 ;
 K @$$^W4TMPANS@(VP,CD,"DFLT")
 D KILLUR^W4MENU(VP)
 ;
 S NP=$$NEXT^W4ASK(VP,VZ,NP)
 I NP="" Q "END"
 ;
 I VP="DEL"&(NP>3)&($G(PRMDEL)<4) Q "END"
 I VP="DEL"&(NP>2)&($G(PRMDEL)=1) Q "END"
 ;
 ;;S ^AA("W4SCASK-SBM","NP")=$G(NP)
 ;
 D PUT^%W1PRM("NP",NP)
 ;
 I $E(VP,1,5)="XMENU",NP=2 Q "1;"_+VL
 ;
 Q 1
 ;
 ;
SBM1 ;
 I $$SBM(VL)
 Q
 ;
TIPMZ ;
 ;;D NOZERO Q:$G(%SC("ER"))
 S VL=$J(VL,2,2)
 N IND,WAITER
 S IND=$$GET^%W1PRM("TIPMZIND")
 S WAITER=$$GET^%W1PRM("TIPMZWAITER")
 I IND=""!(IND["UNDEF") Q
 I WAITER=""!(WAITER["UNDEF") Q
 ;
 I '$$TIPMZM^W4PRM!$$MGR^W4KOTMLZ D
 .S @$$^W4GL("TIPMZ")@(IND,WAITER)=VL
 ;
 I $$TIPMZM^W4PRM,'$$MGR^W4KOTMLZ D
 .N NP
 .S NP=$O(@$$^W4GL("TIPMZ")@(IND,WAITER,999),-1)+1
 .S @$$^W4GL("TIPMZ")@(IND,WAITER)=$G(@$$^W4GL("TIPMZ")@(IND,WAITER))+VL
 .S @$$^W4GL("TIPMZ")@(IND,WAITER,NP)=VL_"\"_$ZD($H,"24:60")
 .
 .I $$GETP^%W1PRM("TIPMZCSR") D
 ..Q:$$MZSM^W4PRM
 ..I $$MZMK^W4KIOSKO(+$$GETP^%W1PRM("HZM")) Q
 ..N %MDP D ^W4MDPPC Q:$D(%MDP)<10
 ..;;S ^AA("W4SCASK-TIPMZ",+$$GETP^%W1PRM("HZM"),"PRINT")=PRINT
 ..D ^W4SETPC(PRINT,$G(%MDP("P"))) D ^W4PTHDLY
 ;
 D ^%S2GLSV($$^W4GL("TIPMZ")_"("""_IND_""","""_WAITER_""")",$$^W4FGIB)
 D KILL^%W1PRM("TIPMZIND")
 D KILL^%W1PRM("TIPMZWAITER")
 Q
 ;
CNC(PRM) ;
 N NP,VP,VZ,VL,DL
 S VP=$$VP
 S VZ=$$GETP^%W1PRM("VZ")
 I '$L(VP) Q "0;NOVP"
 I '$L(VZ) Q "0;NOVZ"
 S VL=$G(PRM)
 ;
 S NP=$$NP(VP,VZ)
 S NP=$$PREV^W4ASK(VP,VZ,NP) I NP="" Q "BEG"
 I $D(@$$^W4GL("W4ANS")@(VP)) Q "BEG"
 I $D(@$$^W4MAIN("TMPSCANS")@(VP)) Q "BEG"
 ;
 D PUT^%W1PRM("NP",NP)
 D KILLUR^W4MENU(VP)
 Q 1
 ;
 ;
HIPUS(STAM) ;
  N GLORD D GLORD^W4HZMST
  N VP,ER S ER="OK"
  S VP=$$VP
  S VZ=$$GET^%W1PRM("VZ")
  I '$L(VP) Q "0;NOVP"
  I '$L(VZ) Q "0;NOVZ"
  D CLEAR
  Q ER
  ;
CLEAR ;
  D KILL^W4TMPANS("")
  D KILL^W4ASK
  K @$$^W4MAIN("TMPSHOW")
  K @$$^W4MAIN("TMPSTAGE")
  D KILL^%W1PRM("ER")
  D PUT^%W1PRM("VP","")
  D PUT^%W1PRM("VZ","")
  D PUT^%W1PRM("NP","")
  Q
  ;
VOZVR
 D CLEAR
 Q
  ;
MLZR ;
 S VL=$$^W4NAME(VL)
 Q
 ;
LASTSTAGE(STAM) ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q " "
 Q $G(@$$^W4MAIN("TMPSTAGE")@(IND))
 ;
ADDSTAGE(STAGE)
 Q:$G(STAGE)=""
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 S @$$^W4MAIN("TMPSTAGE")@(IND+1)=STAGE
 D PUT^%W1PRM("NP",1)
 Q
 ;
KILLSTAGE ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q
 S STAGE=$G(^(IND)) Q:STAGE=""
 N N
 ;
 K @$$^W4MAIN("TMPSTAGE")@(IND)
 Q
 ;
KILLVAR(VP,STAGE)
 N N
 S N="" F  S N=$O(@$$^W4ASK@(VP,STAGE,N)) Q:N=""  D
 .N CD S CD=$P(^(N),";") Q:CD=""
 .K @$$^W4TMPANS@(VP,CD)
 Q
 ;
GLASK ;
 I '$D(GLASK) S GLASK="^[$$^W3MAIN]W4ASK"
 Q
 ;
MENU(VP,VZ,NP) ;
 D GLASK
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_""" "
  W "style=""width:"_$S($$^W4TABLET=2:300,1:250)_"px"" "
  I $$^W4TABLET=2 W " cellspacing=""20"" "
 W ">",!
 N N
  I $G(%ARG("BACK"))=2 D BACK
  W "<tr>"
   W "<td align=""center"" class=""rkvhd"" >"
    N ZASK S ZASK=$P($G(@GLASK@(VP,VZ,NP)),";")
    I $L($G(%ARG("ASK"))) S ZASK=%ARG("ASK")
    N ZASKPRM S ZASKPRM=""
    I ZASK["," D
    .S ZASKPRM=$P(ZASK,",",2)
    .S ZASK=$P(ZASK,",")
    D
    .I $L(ZASK) W $$^%W1DICT(ZASK,ZASKPRM) Q
    .I $G(%ARG("HEAD"))'="" W $$^%W1DICT(%ARG("HEAD"))
   ;
   W "</td></tr>",!
  ;
  S RL=$$MENURL^W4ASK(VP,VZ,NP)
  I $$^W4SMALL S RL=1000
  S N=$$LAST^W4MENUBT($$VP)
  ;
  W "<tr>"
   W "<td align=""center"">"
    W "<table class=""tblbut"" cellpadding="""_$S(VP="YESNO":20,1:15)_""" "
     W " cellspacing="""_$S($$^W4TABLET=2:40,1:10)_""" width=""100%"" "
    W ">",!
    ;
    S PREND=0,PRGLB=0
    N SH S SH=0
    ;
    I $$GLOB^W4ASK(VP,VZ,NP)?.P D
     .N I F I=1:1:RL S N=$O(@GLASK@(VP,VZ,NP,N)) Q:N=""  D
     ..N A S A=$G(^(N)) I $P(A,";",3)=0 Q
     ..N US,US1 S US=$P(A,";",8) I US'?.P X "S US1="_US Q:'US1
     ..S CD=$P(A,";"),VL=$P(A,";",2)
     ..S SIZE=14,COLOR="black"
     ..I VP="YESNO" S SIZE=20,COLOR=$S(N=1:"green",1:"red")
     ..D LINE(CD,VL,0,SIZE,COLOR)
    ;
    I $$GLOB^W4ASK(VP,VZ,NP)'?.P D
     .S PRGLB=1
     .N GL S GL=$$GLOB^W4ASK(VP,VZ,NP)
     .N GLB S @("GLB="_GL)
     .N I F I=1:1:RL S N=$O(@GLB@(N)) Q:N=""  D
     ..N A S A=$G(^(N))
     ..I '$$US^W4ASK(VP,VZ,NP,N) Q
     ..I GLB["P1SUGM" D 
     ...S A=" ( "_$P(A,"\")_" ) "_$P(A,"\",2)
     ..D LINE(A,N,1)
     .I $O(@GLB@(N))="" S PREND=1
    ;
    W "</table>",!
   W "</td>",!
  W "</tr>",!
  ;
  I N'="",'PRGLB,$O(@GLASK@(VP,VZ,NP,N))="" S N="END"
  I PRGLB,PREND S N="END"
  S:N="" N="END"
  D SETLAST^W4MENUBT($$VP,N)
  ;
  I N="END"&($$PG^W4MENUBT($$VP)<2)&(VP'="YESNO") D  G EMENU
  .I 'SH D
  ..W "<tr><td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("NODATA!")_"</td></tr>",!
  .I '$G(%ARG("NOBACK")) D
  ..W "<tr><td>&nbsp;</td></tr>",!
  ..I $$^W4SMALL W "<tr><td>&nbsp;</td></tr>",!
  ..D BACK
  .
  .I $$DELORDISC(VP),$$CAUSE(VP,VZ,NP) D FREETEXT
  ;
  I N'="END"!($$PG^W4MENUBT($$VP)>1) D
  .W "<tr>"
  . W "<td><table width=""100%"" height=""100%"" dir="""_$$^%W1DIR_""" border=""1"" cellpadding=""10"">"
  .  W "<tr>"
  .   W "<td class=""btntb"" style=""color:green"" "_$$^W4TOUCH_"=""PageDown()"" />"_$$^%W1DICT("DOWN")_"</td>",!
  .   I '$G(%ARG("NOBACK")) D
  .   .W "<td class=""btntb"" style=""color:red"" "_$$^W4TOUCH_"=""Cnc()"">"
  .   . W $$^%W1DICT("BACK")
  .   .W "</td>",!
  .   W "<td class=""btntb"" style=""color:green"" "_$$^W4TOUCH_"=""PageUp()"" />"_$$^%W1DICT("UP")_"</td>",!
  . W "</td>"
  .W "</tr></table></td></tr>",!
  .
  .I $$DELORDISC(VP),$$CAUSE(VP,VZ,NP) D FREETEXT
 ;
EMENU W "</table>",!
 W "</div>",!
 ;
 W "<div id=""cmnt"" align=""center"" dir="""_$$^%W1DIR_""">",!
 W "</div>",!
 Q
 ;
VP(STAM) ;
 D GLASK I GLASK["W4PAY" Q $$GETP^%W1PRM("VT")
 I $L($G(%ARG("VP"))) D
 .N VP S VP=$G(%ARG("VP"))
 .I VP="XMENU",$$SUPER^W3PRM S VP="XMENU1"
 .I $E(VP,1,5)="GCOUP" S VP=$$VP^W4GCOUP
 .I VP="DEL",$G(%ARG("PRMDEL"))=4 S VP="ZIC"
 .D PUT^%W1PRM("VP",VP)
 ;
 Q $$GETP^%W1PRM("VP")
 ;
 ;
FIRST(STAM) ;
 Q $G(%ARG("FIRST"))
 ;
LINE(CD,VL,PR,SIZE,COLOR) ;
  I '$G(SIZE) S SIZE=14
  S SH=SH+1
  W "<tr >"
   W "<td class=""digit"" style=""font-size:"_$$^W3FSZ(SIZE)
   I $L($G(COLOR)) W ";color:"_COLOR
   W """"
   W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
   W " onMouseDown=""this.style.backgroundColor='gray'"""
   N PROC S PROC="ClickMenu('"_VL_"','"_$$CLWEB^%L1FRM(CD)_"')"
   S @$$^W4MAIN("TMPCLK")@(SH)=PROC
   W " "_$$^W4TOUCH_"=""this.style.backgroundColor='#eaeaea'; "_PROC_""""
   W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
   W ">"
   I '$G(PR) W $$^%W1DICT(CD)
   I $G(PR) W $$H2U^%L1FRM(CD)
   W "</td>",!
  W "</tr>",!
 Q
 ;
DIGIT ;
 W " align=""center"" class=""digit"" style=""font-size:"_$$^W3FSZ(14)_""""
 Q
 ;
PUTDSCFREE(PRM) ;
 N VP S VP=$$VP
 D KILL^%W1PRM("W4ABC")
 D PUT^W4TMPANS(VP,"CAUSEDISC","0::"_$$INVH^%L1FRM($$CNWEB^%L1FRM(PRM)))
 Q $$PUTDSC
 ;
PUTDSC(STAM) ;
 N (JB,%ARG,%REM)
 S VP=$$VP Q:VP=""
 N HZM S HZM=$$GET^%W1PRM("HZM")
 S VL=$$GET^W4TMPANS(VP,"DISCPERCENT")
 I VL["::" S VL=+$P(VL,"::",2)
 S RES=1
 ;;S ^AA("W4SCASK-PUTDISC","VP")=VP
 ;
 I VP="DISCNIS" D  Q RES  ; ---- HANAHA LE HESH
 .S VL=$$GET^W4TMPANS(VP,"DISCNIS")
 .N NOM S NOM=$O(@$$^W4TMPORD@("CB","HNH1",999),-1)+1
 .N HNHO S HNHO=$$HNH^W3HZMST(JB)
 .N TSHL S TSHL=$$TSHL^W3HZMST(JB)
 .D PUT^W3HZMST(JB,"HNH",HNHO+VL)
 .D PUT^W3HZMST(JB,"TSHL",TSHL-VL)
 .D GETCAUSE(VP,"CAUSEDISC")
 .S @$$^W4TMPORD@("CB","HNH1",NOM)=VL_"*"_$H_"*"_WHO_"*"_$$^W4MYDVN_"*"_$G(SIBA)
 .;
 ;
 I VP="DISCIT" D  Q RES  ; ---- HANAHA LE PARIT
 .N LAST,MLZ,SIBA,SIBA1
 .I '$$GET^%W1PRM("SHIDH") S RES="NOTITEM" Q
 .S LAST=+$$GET^%W1PRM("SHIDH")
 .I 'LAST S RES="NOTITEM" Q
 .N ST,CD S ST=$G(@$$^W3TMPORD@(JB,LAST)),CD=$P(ST,"~",2)
 .;;S ^AA("W4SCASK-DISCIT","ST")=ST
 .;;S ^AA("W4SCASK-DISCIT","CD")=CD
 .S $P(@$$^W3TMPORD@(JB,LAST),"~",6)=VL
 .N MYDVN S MYDVN=$$^W4MYDVN
 .N PORTDISP S PORTDISP=$$DISP^W4PLUK(MYDVN)
 .I PORTDISP D PCPAR^W4TX2DSP(PORTDISP,$G(@$$^W3TMPORD@(JB,LAST)))
 .D KILL^%W1PRM("SHIDH")
 .D GETCAUSE(VP,"CAUSEDISC")
 .S @$$^W3TMPORD@(JB,"HNH",LAST)=VL_"*"_WHO_"*"_SIBA_"*"_SIBA1_"*"_$H_"**"_$$^W4MYDVN
 ;
 S SHNH=0 I $G(HZM) S SHNH=$$HNH^W4HZMST(HZM)
 ;
 I $$D^W3TMPORD(JB)=11 D  ; -- ANAHA LE HESHBON
 .D PUT^W3HZMST(JB,"AHUZ",VL)
 .S SHNH=$$HNH^W4HZORD
 .D PUT^W3HZMST(JB,"TSHL",$$CALC^W3HZMST(JB))
 .D PUT^W3HZMST(JB,"HNH",SHNH)
 .D GETCAUSE(VP,"CAUSEDISC")
 .S @$$^W3TMPORD@(JB,"HNH")=VL_"*"_WHO_"*"_SIBA_"*"_SIBA1_"*"_$H_"**"_$$^W4MYDVN
 .D PUT^W3HZMST(JB,"AHUZ",VL)
 ;
 I RES'=1 Q RES
 ;
 I $G(HZM),$D(@$$^W4ORD@(HZM)),'$$^W4CLOSE(HZM) D
 .D PUT^W4HZMST(HZM,"HNHAH",VL)
 .D PUT^W4HZMST(HZM,"HNH",SHNH)
 .D PUT^W4HZMST(HZM,"TSHL",$$TOTORD^W4HZMST(HZM))
 .D PUT^W3HZMST(JB,"HNH",SHNH)
 .D GETCAUSE(VP,"CAUSEDISC")
 .S @$$^W4ORD@(HZM,"HNH")=VL_"*"_WHO_"*"_SIBA_"*"_SIBA1_"*"_$H_"**"_$$^W4MYDVN
 .
 .I $$MYCHECK^W4PRM J SYNCORD^WMCHFUNC(HZM,JB)
 Q RES
 ;
 ;
GETCAUSE(VP,VC) ;--> MLZ,WHO,SIBA,SIBA1
 S MLZ=$$GETP^%W1PRM("MLZR")
 S WHO=$$WHO
 ;;S ^AA("W4SCASK-GETCAUSE","WHO")=WHO
 S SIBA=$$GET^W4TMPANS(VP,VC)
 S SIBA1=""
 I SIBA["::" S SIBA1=$$CNWEB^%L1FRM($P(SIBA,"::",2)),SIBA=$P(SIBA,"::")
 Q
 ;
PUTDELFREE(PRM) ;
 N VP S VP=$$VP
 D KILL^%W1PRM("W4ABC")
 D PUT^W4TMPANS(VP,"CAUSEDEL","0::"_$$INVH^%L1FRM($$CNWEB^%L1FRM(PRM)))
 N TMPS D TMPS^W4MENU K @TMPS@(VP,"LAST")
 ;;D PUTDEL
 Q
 ;
CRTMPMDP ;
 N N S N=""
 K @$$^W4MAIN("TMPMDP")
 F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .N PORT S PORT=$P(A,"\",3) Q:PORT=""
 .S NMDP=$P(A,"\",4) Q:NMDP'["gahn"
 .S @$$^W4MAIN("TMPMDP")@(N)=NMDP
 Q
 ;
CRTMPPOS ;
 N N S N=""
 K @$$^W4MAIN("TMPPOS")
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .N A S A=$G(^(N)) I A=""!(A="al")!(A="cind") Q
 .S @$$^W4MAIN("TMPPOS")@(N)=N
 Q
 ;
CRTMPATAR ;
 N N S N=0
 K @$$^W4MAIN("TMPATAR")
 F  S N=$O(@$$^W4GL("W4ATAR")@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S @$$^W4MAIN("TMPATAR")@(N)=N_" "_$$H2U^%L1FRM(A)
 Q
 ;
CRTMPMLZ(VZ) ;
 N N,MLZ,PSL S N="" I '$D(P1DZ) D ^W4IN
 S MLZ=""
 K @$$^W4MAIN("TMPMLZ")
 ;
 S N="" F  S N=$O(@$$^W4GL("P1H")@(P1DZ,N)) Q:N=""  D
 .I VZ="MLZ"&$$MSD^W4HZMST(N) D
 ..S MLZ=$G(@$$^W4GL("P1MLZ")@(N)) I 'MLZ S MLZ=$$MKBL^W4HZMST(N)
 .
 .I VZ="MSH"&$$MSL^W4HZMST(N) D
 ..S PSL=$$PSL^W4HZMST(N) I 'PSL S PSL=9999
 ..S MLZ=PSL
 .Q:'MLZ
 .
 .S @$$^W4MAIN("TMPMLZ")@(MLZ)=$S(VZ="MLZ":$$^W4NAME(MLZ),1:$G(@$$^W4GL("P1SL")@(MLZ)))
 Q
 ;
 ;
VW(VP,VZ) ;
 W "<div align=""center"" >",!
 ;
 I $$LASTSTAGE^W4SCASK()'?.P D  ; -- SHOW PREVIOUS ANSWERS
   .D CRTMPSHOW(VP,VZ)
   .Q:'$D(@$$^W4MAIN("TMPSHOW"))
   .N NP,K S NP="" F K=1:1 S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""
   .N WD S WD=12*K S:WD>90 WD=90
   .S WD=WD_"%"
   .W "<br />",!
   .W "<table dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
   .W "<tr>",!
   .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
   ..S A=$G(^(NP))
   ..S NM=$P(A,";")
   ..D TH W $$^%W1DICT(NM)_"</th>",!
   .W "</tr>",!
   .W "<tr>",!
   .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
   ..S A=$G(^(NP))
   ..S VL=$P(A,";",2)
   ..
   ..W "<td "_$$STYLEBOLD_" >"_$$RKV(VL)_"</td>",!
   .W "</tr>",!
   .W "</table>",!
   .W "<br />",!
  ;
  D  ;
  .I '$L($G(VZ)) Q
  .D VWTBL(VP,VZ,"W4ASK","W4TMPANS")
  .
  W "</div>",!
  Q
  ;
CRTMPSHOW(VP,VZ) ;
 N N,VZT,A,VL,NM,CD
 S VZT="SHOWTMP"
 K @$$^W4MAIN("TMPSHOW")
 S N="" F  S N=$O(^[$$^W3MAIN]W4ASK(VP,VZT,N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD=$P(A,";") Q:CD=""
 .I '$D(@$$^W4TMPANS@(VP,CD)) Q
 .N OK S OK=1
 .I $L($G(%ARG("VZ"))) D
 ..N N1 S N1="" F  S N1=$O(@$$^W4ASK@(VP,VZ,N1)) Q:N1=""  D  Q:'OK
 ...I $P($G(^(N1)),";")=CD S OK=0
 .Q:'OK
 .S VL=$$GET^W4TMPANS(VP,CD)
 .I VL["::" S VL=$$^%W1DICT($P(VL,"::",2))
 .S @$$^W4MAIN("TMPSHOW")@(N)=$P(A,";")_";"_VL
 Q
 ;
VWTBL(VP,VZ,GLZ,GLTMP)
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""10""><tr>",!
 ;
 N J S J=0
 N GL D @("GL^"_GLZ) ; GL=TMPZ
 N NP S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D
 .S J=J+1
 .N CD X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .I CD="" D TH W "&nbsp;" W "</th>",! Q
 .D TH W $$^%W1DICT(CD)_"</th>",!
 N MAXJ S MAXJ=J
 W "</tr>",!
 ;
 W "<tr>" S NS=1
 S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D
 .N NM,VL
 .X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .X "S VL=$$GET^"_GLTMP_"(VP,CD)"
 .I VL["::" S VL=$$^%W1DICT($P(VL,"::",2))
 .W "<td id="""_CD_NS_""" style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""">"
 .W $$RKV(VL)_"</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
TH W "<th class=""sheetgroups"" style=""font-size:"_$$^W3FSZ(12)_""""
   W ">"
 Q
 ;
STYLEBOLD(STAM) ;
 Q "style=""text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""""
 ;
RKV(VL) ;
 I VL="" Q "&nbsp;"
 Q $$H2U^%L1FRM(VL)
 ;
NOZERO ;
 D VLDNMB Q:$D(%SC("ER"))
 I 'VL D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOZERO"
 Q
 ;
VLDNMB ;
 I VL'?."-"1N.N.".".N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERONLY"
 Q
 ;
USDISCIT(STAM) ;
 Q 1
 ;
VLDDISCNIS ;
 N A S A=$G(@$$^W4TMPORD)
 N ITRA S ITRA=$$TOTORD^W3HZMST(JB)-$$HNH^W3HZMST(JB)-$P(A,"~",12)-$P(A,"~",17)
 I VL>ITRA&(ITRA>0)!(VL<ITRA&(ITRA<0)) D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="SUMTOOBIG"
 Q
 ;
USDISC(STAM) ;
 N HZM S HZM=$$GETP^%W1PRM("HZM") I 'HZM!(HZM=-1) Q 1
 I '$$SHUL^W4HZMST(HZM),'$$SHULA^W4HZMST(HZM),'$$HNH^W4HZMST(HZM) Q 1
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM) ;;I 'ITRA Q 0
 N NEWHNA S NEWHNA=$J(VL*$$TOTORD^W3HZMST(JB,"D")*.01,1,1)
 I ITRA'<0,NEWHNA-($J(ITRA,1,1)+$$HNHA^W4HZMST(HZM))>1 Q 0
 I ITRA<0,NEWHNA-($J(ITRA,1,1)+$$HNHA^W4HZMST(HZM))<-1 Q 0
 Q 1
 ;
VLDWHO ;
 ;
 I 'VL D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CODEMUSTBEFILLED"
 ;
 I +VL=+$G(@$$^W4PRM@("PSW")) Q
 ;
 I $$^W4NAME(VL)="" D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="CODENOTEXIST"
 ;
 I $$GET1^W4LEVPR($$DOP^W4NAME(VL),"PAIL")=0 D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="WORKEREXPIRED"
 .I $$DOP^W4NAME(VL)=$$GETWHO^W4PRMGN D
 ..I $L($G(VP)) K @$$^W4GL("W4ANS")@(VP,"WHOSUBMIT")
 ;
 I $G(@$$^W4PRM@("MGRSBM")),$$KVZ1^W4LEVPR($$DOP^W4NAME(VL))'["ldpn" D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="ITSNOTMANAGER"
 Q
 ;
RESTUR ;
 N UR S UR=+$$UR^W4MENU
 I 'UR D
 .N UROLD D TMPS^W4MENU
 .I UR["DISC" D KILL^%W1PRM("SHIDH")
 .S UROLD=$G(@TMPS@("UROLD")) Q:'UROLD
 .S UR=+UROLD
 ;
 D SETUR^W4MENU(UR)
 Q
 ;
WHO(STAM) ;
 N WHO S WHO=$$DOP^W4NAME($$GET^W4TMPANS($$VP,"WHOSUBMIT"))
 I WHO="00000",$$PSWDRG^W4PRM S WHO=$$DOP^W4NAME($$GETP^%W1PRM("MNL"))
 Q WHO 
 ;
NP(VP,VZ) ;
 N NP
 S NP=$$GETP^%W1PRM("NP")
 I NP<1 S NP=$$FIRST^W4ASK(VP,VZ)
 Q NP
 ;
DELORDISC(VP) ;
 I $$DISC(VP) Q 1
 I $$DEL(VP) Q 1
 Q 0
 ;
DEL(VP) ;
 I $E(VP,1,3)="DEL" Q 1
 Q 0
 ;
DISC(VP) ;
 I VP="DISCOUNT"!(VP="DISCIT")!(VP="DISCOTH") Q 1
 I VP="HNH"!(VP="HNH1") Q 1
 Q 0
 ;
CAUSE(VP,VZ,NP) ;
 I $$NM^W4ASK(VP,VZ,NP)["CAUSE" Q 1
 Q 0
 ;
NOZAPR(STAM) ;
 I $$MSDBAR^W4PRM Q 1
 N NMB S NMB=$$GETP^%W1PRM("NMB") I 'NMB Q 0
 I $$TLMTN^W4L(NMB) Q 1
 I '$$^W4DLPK(NMB) Q 0
 I '$$DELDISCNOASKDLPK^W4PRM Q 0
 Q 1
 ;
SETDELDISCPRM(VP,VZ,CD) ;
 N VL S VL=-1
 I CD["WHOSUBMIT" S VL=$$GETP^%W1PRM("MLZR")
 I CD["CAUSE" S VL=0
 I CD["DELETE" S VL=1
 I CD["EXIT2KITCHEN" S VL=0
 I VL<0 Q VL
 ; 
 D SBMVL(VP,VZ,CD,VL) ; --> NP=NP+1
 Q VL
 ;
 ; 
FREETEXT ;
 I $$NOFREECAUSE^W4PRM Q
 W "<tr>"
  W "<td align=""center"">"
   W "<input type=""button"" class=""rkvsbm"" style=""color:red;width:96%;HEIGHT:96%"" "
   W " value="""_$$^%W1DICT("FREETEXT")_""" "_$$^W4TOUCH_"=""FreeText()"" />",!
  W "</td>"
 W "</tr>",!
 Q
 ;
PCX(STAM) ; 
 I $$^W4SMALL Q 1 
 Q "<->" 
 ;
TIPMZMNOW(STAM) ;
 I VP="TIPMZ"&$$TIPMZM^W4PRM&'$$MGR^W4KOTMLZ Q 1
 Q 0 
 ;
BACK
 W "<tr "
  D TRDGSTYLE^W4KB
 W ">",! 
  W "<td align=""center"">"
   W "<input type=""button"" class=""rkvsbm"" style=""color:red;width:96%;height:96%"" "
   W " value="""_$$^%W1DICT("BACK")_""" "_$$^W4TOUCH_"=""Cnc()"" "
   W "/>",!
  W "</td>"
 W "</tr>",!
 Q
 ;
TSF(STAM) ; 
 Q 0 
 ;
BLIHNH(CD) ; 
 I $G(CD)="" Q 0
 Q $$^W4PRTBH(CD)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SCASK0
W4SCASK ; [ 20.09.12 15:46 ] [ 21.06.12 20:34 ] [ 20.06.12 10:56 ]
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 ;
 D NOSELECT^%W1JS
 ;
 S VP=$$VP Q:VP=""
 I VP="YESNO"!(VP="DISCOUNT")!(VP="DISCIT")!(VP="FIRE") S VZ="ASK"
 E  S VZ=$G(%ARG("VZ")) I VZ="" Q
 D PUT^%W1PRM("VZ",VZ)
 ;
 I $$FIRST!(VP="YESNO") D
 .D CREATE^W4ASK(VP,VZ)
 .;;D KILL^W4TMPANS(VP)
 .D INITUR^W4MENUBT(VP)
 ;
 I $G(%ARG("NP")) D PUT^%W1PRM("NP",%ARG("NP"))
 S NP=$$GET^%W1PRM("NP") I NP<1 S NP=$$FIRST^W4ASK(VP,VZ)
 ;
 Q:NP=""
 ;
 I VZ="MLZ"!(VZ="MSH") D
 .D CREATE^W4ASK(VP,VZ)
 .D CRTMPMLZ(VZ)
 ;
 I VZ="TBL" D
 .D CREATE^W4ASK(VP,VZ)
 ;
 I VZ="POS" D
 .D CREATE^W4ASK(VP,VZ)
 .D CRTMPPOS
 ;
 I $G(%ARG("HEAD"))="" S %ARG("HEAD")=$$NM^W4ASK(VP,VZ,NP)
 ;
 Q:%ARG("HEAD")=""
 ;
 S OU=$$OU^W4ASK(VP,VZ,NP) I OU,'$G(%ARG("IN")) Q
 ;
 I $$MENU^W4ASK(VP,VZ,NP) D MENU(VP,VZ,NP) Q
 ;
 S CD=$$NM^W4ASK(VP,VZ,NP) Q:CD=""
 D PUT^%W3DEB("W4SCASK","VP=VP & VZ=VZ & NP=NP & CD=CD")
 I $G(%ARG("VL"))'="" S VL=%ARG("VL") G KB
 S VL=$$GET^W4TMPANS(VP,CD)
 I VL="" S VL=$$DFLT^W4ASK(VP,VZ,NP)
 ;
KB ;
 D
 .N DL S DL=$$DL^W4ASK(VP,VZ,NP)
 .
 .I DL["H" D  Q
 ..S %ARG("MAXL")=+DL
 ..S TXT="~~"_$$TV^%W1DICT($$^%W1LNG,$G(%ARG("HEAD")))
 ..S %ARG("VL")=VL
 ..D ^W4ABC(TXT)
 .
 .D KB^W4KB(+$$DL^W4ASK(VP,VZ,NP),VL)
 ;
 I VP="FNDORD"&(VZ="ORDNMB")&$G(%ARG("TABLE")) D  ; -- TABLE HISTORY
 .W "<div align=""center"">",!
 .W " <table>",!
 .W "  <tr>"
 .  W "<td align=""center"">"
 .  W "<input type=""button"" style=""height:50px;width:100%;text-align:center;color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_""" value="""_$$^W4DICTHS(%ARG("TABLE"))_""" onMouseUp=""TableHistory()"" >"
 .  W "</td>"
 .W "  </tr>",!
 .W " </table>",!
 .W "</div>",!
 ;
 Q
 ;
 ;
SBM(PRM) ;
 N %SC
 N NP,VP,VZ,VL,DL,CMD,PRMDEL
 S NP=+$$GET^%W1PRM("NP")
 S VP=$$VP
 S VZ=$$GET^%W1PRM("VZ")
 S:VZ["UNDEF" VZ=""
 ;
 I '$L(VP) Q "0;NOVP"
 I '$L(VZ) Q "0;NOVZ"
 S:NP<1 NP=$$FIRST^W4ASK(VP,VZ)
 ;;W "NP="_NP,!
 ;
 S VL=$P(PRM,"::",1,2)
 ;
 I VP="DEL" D
 .S PRMDEL=$P(PRM,"::",3)
 ;
 S DL=$$DL^W4ASK(VP,VZ,NP)
 N CMD S CMD=$$CMD^W4ASK(VP,VZ,NP)
 S CD=$$NM^W4ASK(VP,VZ,NP)
 I CD="" Q "0;NOCD"
 N OK
 ;
 I $L(CMD) D @CMD I $D(%SC("ER")) S OK="0;"_$G(%SC("ER","MSG")) Q OK
 ;
 I VP="FNDORD"&(VZ="ORDNMB")&VL D  Q OK
 .I $D(@$$^W4ORD@(VL))<11 D  Q
 ..S OK="0;ORDERNOTEXIST"
 .S OK="ORD:"_VL
 ;
 I VP="DISCOUNT"!(VP="DISCIT") S OK=1 D PUTDSC(+$P(VL,"::",2)) Q OK
 ;
 I VP="FIRE" D  Q 1
 .N HZM S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 .N NOFIRE S NOFIRE=+$$GET^%W1PRM("NOFIRE")
 .D KILL^%W1PRM("NOFIRE")
 .D ^W4FIRE(HZM,$P(VL,"::"),NOFIRE)
 ;
 I DL["H" S VL=$$INVH^%L1FRM($$CNWEB^%L1FRM(VL))
 ;
 D PUT^W4TMPANS(VP,CD,VL) ; -- OTVET !
 ;
 K @$$^W4TMPANS@(VP,CD,"DFLT")
 ;;D KILLUR^W4MENUBT(VP)
 ;
 S NP=$$NEXT^W4ASK(VP,VZ,NP)
 I NP="" D  Q "END"
 .D KILLUR^W4MENUBT(VP)
 ;
 I VP="DEL"&(NP>2)&($G(PRMDEL)<4) D  Q "END"
 .;;D KILLUR^W4MENUBT(VP)
 ;
 D PUT^%W1PRM("NP",NP)
 ;
 I VP="XMENU",NP=2 Q "1;"_+VL
 ;
 Q 1
 ;
 ;
TIPMZ ;
 D NOZERO Q:$G(%SC("ER"))
 S VL=$J(VL,2,2)
 N IND,WAITER
 S IND=$$GET^%W1PRM("TIPMZIND")
 S WAITER=$$GET^%W1PRM("TIPMZWAITER")
 I IND=""!(IND["UNDEF") Q
 I WAITER=""!(WAITER["UNDEF") Q
 S @$$^W4GL("TIPMZ")@(IND,WAITER)=VL
 D ^%S2GLSV($$^W4GL("TIPMZ")_"("""_IND_""","""_WAITER_""")",$$^W4FGIB)
 D KILL^%W1PRM("TIPMZIND")
 D KILL^%W1PRM("TIPMZWAITER")
 Q
 ;
CNC(PRM) ;
 N NP,VP,VZ,VL,DL
 S NP=+$$GET^%W1PRM("NP")
 S VP=$$VP
 S VZ=$$GET^%W1PRM("VZ")
 I '$L(VP) Q "0;NOVP"
 I '$L(VZ) Q "0;NOVZ"
 S:NP<1 NP=$$FIRST^W4ASK(VP,VZ)
 S VL=PRM
 S NP=$$PREV^W4ASK(VP,VZ,NP) I NP="" Q "BEG"
 D PUT^%W1PRM("NP",NP)
 D KILLUR^W4MENUBT(VP)
 Q 1
 ;
HIPUS(STAM) ;
  N GLORD D GLORD^W4HZMST
  N VP,ER S ER="OK"
  S VP=$$VP
  S VZ=$$GET^%W1PRM("VZ")
  I '$L(VP) Q "0;NOVP"
  I '$L(VZ) Q "0;NOVZ"
  D CLEAR
  Q ER
  ;
CLEAR ;
  D KILL^W4TMPANS("")
  D KILL^W4ASK
  K @$$^W4MAIN("TMPSHOW")
  K @$$^W4MAIN("TMPSTAGE")
  D KILL^%W1PRM("ER")
  D PUT^%W1PRM("VP","")
  D PUT^%W1PRM("VZ","")
  D PUT^%W1PRM("NP","")
  Q
  ;
VOZVR
 D CLEAR
 Q
  ;
MLZR ;
 S VL=$$^W4NAME(VL)
 Q
 ;
LASTSTAGE(STAM) ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q " "
 Q $G(@$$^W4MAIN("TMPSTAGE")@(IND))
 ;
ADDSTAGE(STAGE)
 Q:$G(STAGE)=""
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 S @$$^W4MAIN("TMPSTAGE")@(IND+1)=STAGE
 D PUT^%W1PRM("NP",1)
 Q
 ;
KILLSTAGE ;
 N IND
 S IND=$O(@$$^W4MAIN("TMPSTAGE")@(999),-1)
 I IND="" Q
 S STAGE=$G(^(IND)) Q:STAGE=""
 N N
 ;
 K @$$^W4MAIN("TMPSTAGE")@(IND)
 Q
 ;
KILLVAR(VP,STAGE)
 N N
 S N="" F  S N=$O(@$$^W4ASK@(VP,STAGE,N)) Q:N=""  D
 .N CD S CD=$P(^(N),";") Q:CD=""
 .K @$$^W4TMPANS@(VP,CD)
 Q
 ;
GLASK ;
 I '$D(GLASK) S GLASK="^[$$^W3MAIN]W4ASK"
 Q
 ;
MENU(VP,VZ,NP) ;
 D GLASK
 W "<div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" style=""width:200px"">",!
 N N
  W "<tr>"
   W "<td align=""center"" class=""rkvhd"" >"
    N ZASK S ZASK=$P($G(@GLASK@(VP,VZ,NP)),";")
    I $L($G(%ARG("ASK"))) S ZASK=%ARG("ASK")
    W $$^%W1DICT(ZASK)
   W "</td></tr>",!
  ;
  S RL=$$MENURL^W4ASK(VP,VZ,NP)
  S N=$$LAST^W4MENUBT($$VP)
  ;
  W "<tr>"
   W "<td align=""center"">"
    W "<table border=""1"" cellpadding="""_$S(VP="YESNO":20,1:15)_""" width=""100%"">",!
    ;
    S PREND=0,PRGLB=0
    N SH S SH=0
    I $$GLOB^W4ASK(VP,VZ,NP)?.P D
     .N I F I=1:1:RL S N=$O(@GLASK@(VP,VZ,NP,N)) Q:N=""  D
     ..N A S A=$G(^(N)) I $P(A,";",3)=0 Q
     ..N US,US1 S US=$P(A,";",8) I US'?.P X "S US1="_US Q:'US1
     ..S CD=$P(A,";"),VL=$P(A,";",2)
     ..S SIZE=14,COLOR="black"
     ..I VP="YESNO" S SIZE=20,COLOR=$S(N=1:"green",1:"red")
     ..D LINE(CD,VL,0,SIZE,COLOR)
    ;
    I $$GLOB^W4ASK(VP,VZ,NP)'?.P D
     .S PRGLB=1
     .N GL S GL=$$GLOB^W4ASK(VP,VZ,NP)
     .N GLB S @("GLB="_GL)
     .N I F I=1:1:RL S N=$O(@GLB@(N)) Q:N=""  D
     ..N A S A=$G(^(N))
     ..I '$$US^W4ASK(VP,VZ,NP,N) Q
     ..D LINE(A,N,1)
     .I $O(@GLB@(N))="" S PREND=1
    ;
    W "</table>",!
   W "</td>",!
  W "</tr>",!
  ;
  I N'="",'PRGLB,$O(@GLASK@(VP,VZ,NP,N))="" S N="END"
  I PRGLB,PREND S N="END"
  S:N="" N="END"
  D SETLAST^W4MENUBT($$VP,N)
  ;
  I N="END"&($$PG^W4MENUBT($$VP)<2)&(VP'="YESNO") D  G EMENU
  .I 'SH D
  ..W "<tr><td style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("NODATA!")_"</td></tr>",!
  ..W "<tr><td>&nbsp;</td></tr>",!
  .Q:$G(%ARG("NOBACK"))
  .W "<tr>"
  . W "<td align=""center"">"
  .  W "<input type=""button"" class=""rkvsbm"" style=""color:red"" value="""_$$^%W1DICT("BACK")_""" onMouseUp=""Cnc()"" />",!
  . W "</td>"
  .W "</tr>",!
  ;
  I N'="END"!($$PG^W4MENUBT($$VP)>1) D
  .W "<tr>"
  . W "<td><table width=""100%"" height=""100%"" dir="""_$$^%W1DIR_""" border=""1"" cellpadding=""10"">"
  .  W "<tr>"
  .   W "<td class=""btntb"" style=""color:green"" onMouseUp=""PageDown()"" />"_$$^%W1DICT("DOWN")_"</td>",!
  .   I '$G(%ARG("NOBACK")) W "<td class=""btntb"" style=""color:red"" onMouseUp=""Cnc()"">"_$$^%W1DICT("BACK")_"</td>",!
  .   W "<td class=""btntb"" style=""color:green"" onMouseUp=""PageUp()"" />"_$$^%W1DICT("UP")_"</td>",!
  . W "</td>"
  .W "</tr></table></td></tr>",!
 ;
EMENU W "</table>",!
 W "</div>",!
 Q
 ;
VP(STAM) ;
 D GLASK I GLASK["W4PAY" Q $$GET^%W1PRM("VT")
 I $L($G(%ARG("VP"))) D PUT^%W1PRM("VP",%ARG("VP"))
 Q $$GET^%W1PRM("VP")
 ;
FIRST(STAM) ;
 Q $G(%ARG("FIRST"))
 ;
LINE(CD,VL,PR,SIZE,COLOR) ;
  I '$G(SIZE) S SIZE=14
  W "<tr >"
   W "<td class=""digit"" style=""font-size:"_$$^W3FSZ(SIZE)
   I $L($G(COLOR)) W ";color:"_COLOR
   W """"
   W " onMouseOver=""this.style.cursor='pointer';this.style.backgroundColor='gray'"""
   W " onMouseDown=""this.style.backgroundColor='gray'"""
   W " onMouseUp=""this.style.backgroundColor='#eaeaea'; ClickMenu('"_VL_"','"_CD_"')"""
   W " onMouseOut=""this.style.backgroundColor='#eaeaea'"""
   W ">"
   I '$G(PR) W $$^%W1DICT(CD)
   I $G(PR) W $$H2U^%L1FRM(CD)
   W "</td>",!
  W "</tr>",!
  S SH=SH+1
 Q
 ;
DIGIT ;
 W " align=""center"" class=""digit"" style=""font-size:"_$$^W3FSZ(14)_""""
 Q
 ;
PUTDSC(VL) ;
 N HZM S HZM=$$GET^%W1PRM("HZM") ;;Q:'HZM
 I VP="DISCIT" D  Q
 .N LAST
 .I '$$GET^%W1PRM("SHIDH") Q
 .S LAST=+$$GET^%W1PRM("SHIDH")
 .;;I '$$GET^%W1PRM("SHIDH") S LAST=$O(@$$^W3TMPORD@(JB,99999),-1)
 .Q:'LAST
 .S $P(@$$^W3TMPORD@(JB,LAST),"~",6)=VL
 .D KILL^%W1PRM("SHIDH")
 ;
 I $$D^W3TMPORD(JB)=11 D
 .D PUT^W3HZMST(JB,"AHUZ",VL)
 .D PUT^W3HZMST(JB,"TSHL",$$CALC^W3HZMST(JB))
 .D PUT^W3HZMST(JB,"HNH",$$SHNH^W4HZMST(HZM))
 ;
 I $G(HZM),$D(@$$^W4ORD@(HZM)) D
 .D PUT^W4HZMST(HZM,"HNHAH",VL)
 .D PUT^W4HZMST(HZM,"HNH",$$SHNH^W4HZMST(HZM))
 .D PUT^W4HZMST(HZM,"TSHL",$$TOTORD^W4HZMST(HZM))
 Q
 ;
CRTMPMDP ;
 N N S N=""
 K @$$^W4MAIN("TMPMDP")
 F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .N PORT S PORT=$P(A,"\",3) Q:PORT=""
 .S NMDP=$P(A,"\",4) Q:NMDP'["gahn"
 .S @$$^W4MAIN("TMPMDP")@(N)=NMDP
 Q
 ;
CRTMPPOS ;
 N N S N=""
 K @$$^W4MAIN("TMPPOS")
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .S @$$^W4MAIN("TMPPOS")@(N)=N
 Q
 ;
CRTMPMLZ(VZ) ;
 N N,MLZ,PSL S N="" I '$D(P1DZ) D ^W4IN
 S MLZ=""
 K @$$^W4MAIN("TMPMLZ")
 S N="" F  S N=$O(@$$^W4GL("P1H")@(P1DZ,N)) Q:N=""  D
 .I VZ="MLZ"&$$MSD^W4HZMST(N) D  Q:'MLZ
 ..S MLZ=$G(@$$^W4GL("P1MLZ")@(N)) I 'MLZ S MLZ=$$MKBL^W4HZMST(N)
 .
 .I VZ="MSH"&$$MSL^W4HZMST(N) D
 ..S PSL=$$PSL^W4HZMST(N) I 'PSL S PSL=9999
 ..S MLZ=PSL
 .I MLZ S @$$^W4MAIN("TMPMLZ")@(MLZ)=$$^W4NAME(MLZ)
 Q
 ;
VW(VP,VZ) ;
 W "<div align=""center"" >",!
 ;
 I $$LASTSTAGE^W4SCASK()'?.P D  ; -- SHOW PREVIOUS ANSWERS
   .D CRTMPSHOW(VP,VZ)
   .Q:'$D(@$$^W4MAIN("TMPSHOW"))
   .N NP,K S NP="" F K=1:1 S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""
   .N WD S WD=12*K S:WD>90 WD=90
   .S WD=WD_"%"
   .W "<br />",!
   .W "<table dir="""_$$^%W1DIR()_""" width="""_WD_""" border=""1"" cellspacing=""0"">",!
   .W "<tr>",!
   .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
   ..S A=$G(^(NP))
   ..S NM=$P(A,";")
   ..D TH W $$^%W1DICT(NM)_"</th>",!
   .W "</tr>",!
   .W "<tr>",!
   .N NP S NP="" F  S NP=$O(@$$^W4MAIN("TMPSHOW")@(NP)) Q:NP=""  D
   ..S A=$G(^(NP))
   ..S VL=$P(A,";",2)
   ..
   ..W "<td "_$$STYLEBOLD_" >"_$$RKV(VL)_"</td>",!
   .W "</tr>",!
   .W "</table>",!
   .W "<br />",!
  ;
  D  ;
  .I '$L($G(VZ)) Q
  .D VWTBL(VP,VZ,"W4ASK","W4TMPANS")
  .
  W "</div>",!
  Q
  ;
CRTMPSHOW(VP,VZ) ;
 N N,VZT,A,VL,NM,CD
 S VZT="SHOWTMP"
 K @$$^W4MAIN("TMPSHOW")
 S N="" F  S N=$O(^[$$^W3MAIN]W4ASK(VP,VZT,N)) Q:N=""  D
 .S A=$G(^(N))
 .S CD=$P(A,";") Q:CD=""
 .I '$D(@$$^W4TMPANS@(VP,CD)) Q
 .N OK S OK=1
 .I $L($G(%ARG("VZ"))) D
 ..N N1 S N1="" F  S N1=$O(@$$^W4ASK@(VP,VZ,N1)) Q:N1=""  D  Q:'OK
 ...I $P($G(^(N1)),";")=CD S OK=0
 .Q:'OK
 .S VL=$$GET^W4TMPANS(VP,CD)
 .I VL["::" S VL=$$^%W1DICT($P(VL,"::",2))
 .S @$$^W4MAIN("TMPSHOW")@(N)=$P(A,";")_";"_VL
 Q
 ;
VWTBL(VP,VZ,GLZ,GLTMP)
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""10""><tr>",!
 ;
 N J S J=0
 N GL D @("GL^"_GLZ) ; GL=TMPZ
 N NP S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D
 .S J=J+1
 .N CD X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .I CD="" D TH W "&nbsp;" W "</th>",! Q
 .D TH W $$^%W1DICT(CD)_"</th>",!
 N MAXJ S MAXJ=J
 W "</tr>",!
 ;
 W "<tr>" S NS=1
 S NP="" F  S NP=$O(@GL@(VP,VZ,NP)) Q:NP=""  D
 .N NM,VL
 .X "S CD=$$NM^"_GLZ_"(VP,VZ,NP)"
 .X "S VL=$$GET^"_GLTMP_"(VP,CD)"
 .I VL["::" S VL=$$^%W1DICT($P(VL,"::",2))
 .W "<td id="""_CD_NS_""" style=""font-size:"_$$^W3FSZ(12)_";text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""">"
 .W $$RKV(VL)_"</td>"
 W "</tr>",!
 W "</table>",!
 Q
 ;
TH W "<th class=""sheetgroups"" style=""font-size:"_$$^W3FSZ(12)_""""
   W ">"
 Q
 ;
STYLEBOLD(STAM) ;
 Q "style=""text-align:center;font-weight:bold;"_$$FONTFM^W3CSS_""""
 ;
RKV(VL) ;
 I VL="" Q "&nbsp;"
 Q $$H2U^%L1FRM(VL)
 ;
NOZERO ;
 D VLDNMB Q:$D(%SC("ER"))
 I 'VL D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NOZERO"
 Q
VLDNMB ;
 I VL'?."-"1N.N.".".N D  Q
 .S %SC("ER")=1
 .S %SC("ER","MSG")="NUMBERONLY"
 Q
USDISCIT(STAM) ;
 Q 1
 I VL<30 Q 1
 Q 0

W4SCPC
W4SCPC ; [ 28.02.17 12:32 ] [ 14.01.13 16:35 ] [ 11.10.12 10:21 ] 
 ; INPUT : 1) %SHP=%SCRN - SCREEN CODE  or 2) %SCRN("SHP") or 3) %L1SCPC("SHP")
 ;         %L1SCPC("MDP","B"), "N"), "R"), "PG") ,"GWPC")
 ;         %L1SCPC("USTR") IF =2 - WRITE TO FILE =$S($D(%L1SCPC("FILE)):%L1SCPC("FILE"),1:"LEVPC")
 ;         %L1SCPC("GLOB") - GLOBAL TO PRINT
 ;         %L1SCPC("NOKDM") - BLI KIDUM NEJAR
 ;         %L1SCPC("NIZ") - COMMAND BEFORE BOTTOM PARTITION PRINT
 ;         %L1SCPC("ZLIST") IF $D - ASK FOR BEG. & END PAGE NUMBER
 ;         %L1SCPC(1),...,%L1SCPC(97) <=> MAS(1) - MAS(97)
 ;---------------------------------------------------------------
 ; PARAMETERS FOR ^W4SHAP:
 ;    INP:
 ;       %L2("U") - $S($D(%L1SCPC("USTR)):%L1SCPC("USTR),1:%L1DEV)
 ;       %L2("COD") - CODE OF HEADER FROM ^SHP
 ;       %L2("SM") - LEFT OFFSET
 ;       %L2("PC") - SIMAN OF PRINT
 ;       %L2("RZ") - ":" - DELIMITER FOR GROUP MACKET
 ;       %L2("!") - BLI FORM FEED LIFNEJ HADPASA
 ;    OUT:
 ;       %L2("RL") - PAGE SIZE
 ;       %L2("PG1") - RIGHT MARGINE FOR GROUP REKVIZITS
 ;       %L2("MP") - MACKET POSITIONS
 ;-------------------------------------------------------
 N $ZT
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N LL,RR,%VAR,MAS,%POZ,%SUM,%M1,%M1,%M2,%STR,%PRPER,%PEND1,%ST,TS0,TSS,%L1LPT
 N %KNS,%SHL,%FF,%DLG,%DROB,%VV,%RZD,%RZ0,%VAR,%CHAST,%NR,%FRAZA
 N %K,%COLI,%IND,ZT,%USP,L1I,USTR,MAX,%L2,%I
 ;
 S %ENGLISH=($$^%W1DIR="LTR")
 I $D(%L1SCPC("FILE")) S %NMF=%L1SCPC("FILE")
 I $D(%L1SCPC("ARX")) S %L1LPT("ARX")=%L1SCPC("ARX")
 I $D(%L1SCPC("SND")) S MAC1="%L1SCPC(""SND"")",MAC2="%L1LPT(""SND"")" D ^%S1GC1
 I $D(%L1SCPC("EXCEL")),'$D(%L1SCPC("GLOB")) S %L1SCPC("GLOB")=$$^W4MAIN("L1SCEX") K @%L1SCPC("GLOB")
 ;I $D(%L1SCPC("GLOB")) K @%L1SCPC("GLOB")
 ;S %L1SCPC("NODT")=""
 N %RZD S %HBRY="" S %PRPER=0
 S %RZD="&",%RZ0="\" D ^%L1TS
 S %USP="%SHL'<%BEGS&(%SHL'>%ENDS)"
 S %KNS=0,%SHS=1,MAS(98)=1,%SHL=1
 F %I=1:1:97 I $D(%L1SCPC(%I)) S MAS(%I)=%L1SCPC(%I)
 G BEG
 ;
X1 S LL=$E(@$$^W4SHP@(%L2("COD"),%SHS+$G(%L2("VG"))-1),1,$G(%L2("LG2"))),%POZ=0,%JJ=0
 S %VV=LL ;D CX1
 S RR=$E(^(%SHS+$G(%L2("VG"))-1),$G(%L2("PG1"))+1,$G(%L2("PG2")))
 S %VV=RR ;D CX1
 K %VV,%M1,%JJ Q
 ;
CX1 S %POZ=$F(%VV,"&",%POZ)
 I %POZ S %JJ=%JJ+1 D  G CX1
 .S %VAR=$S($D(%M1)=0:$S($D(%M2(%JJ)):%M2(%JJ),1:" "),1:$S($D(%M1(%JJ)):%M1(%JJ),1:" "))
 .S %VV=$E(%VV,1,%POZ-2)_%VAR_$E(%VV,%POZ+$L(%VAR)-1,255)
 Q
 ;
PC ; ________________
 N MAX,%J,%FF,%FRAZA,%DLG,%NR,%KSS,%KG
 ;---------------- FORMAT OF PRINT LINE
 S MAX=1 F %J=1:1 Q:'$D(%L2("FF",%NT,%J))  S:'$D(%M(%J)) %M(%J)="" D
 .S %FF=%L2("FF",%NT,%J)
 .I %FF["TP" S %FRAZA=%M(%J),%DLG=$P(%FF,",",2),%NR=%J K %CHAST(%J) D DELG S %M(%J)=%CHAST(%J,1) S:%KSS>MAX MAX=%KSS Q
 .I $P(%FF,",")="T",'%ENGLISH S %DLG=$P(%FF,",",2),%M(%J)=$J($E(%M(%J),$L(%M(%J))-%DLG+1,$L(%M(%J))),%DLG) S:'$D(MAX) MAX=1 Q
 .I $P(%FF,",")="T",%ENGLISH S %DLG=$P(%FF,",",2) D  S %M(%J)=%MT_$J("",%DLG-$L(%MT)) S:'$D(MAX) MAX=1 Q
 ..S %MT=$E($$SPA^%L1FRM(%M(%J)),1,%DLG)
 .I $P(%FF,",")=9,$P(%FF,",",3)?1N S %DROB=$P(%FF,",",3) S %M(%J)=$S($P(%FF,",",$L(%FF,","))="S":$S(%M(%J)>0:"+",%M(%J)<0:"-",1:""),1:"")_$J(%M(%J),%DROB+1,%DROB) S:+%M(%J)=0 %M(%J)="-"_$J("",$P(%FF,",",2)\2-1) S %M(%J)=$J(%M(%J),$P(%FF,",",2)) Q
 .I $P(%FF,",")=9 S %M(%J)=$J(%M(%J),$P(%FF,",",2)) Q
 .Q
 S %KG=%J-1
 ;
 I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D  G ENDPC
 .S %ST="" F %J=1:1:%KG S %ST=%ST_$G(%M(%J))_"*"
 .S %ST=$E(%ST,1,$L(%ST)-1)_"@"
 .N IND S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 .S @%L1SCPC("GLOB")@(IND)=%ST
 ;
 S %KS=MAX I $G(%L2("RL")),%SHS+%KS+($D(%L2("MP",2))'=0)>%L2("RL") D PEREXL Q:'%PRPER
 I %SHL<%BEGS!(%SHL>%ENDS) S:%SHS %SHS=%SHS+%KS+($D(%L2("MP",2))'=0) G ENDPC
 ;------------------ PRINT LINE ----------------
 S %SHS=%SHS+1 D X1 S %ST=$J("",%L2("SM"))_LL
 S %ST=%ST_$J("",%L2("MP",%NT,1)-$L(%ST)-$L($G(%M(1)))-1) ;-- LEFT SPACE
 F %J=1:1:%KG S %ST=%ST_$G(%M(%J))_$J("",%L2("MP",%NT,%J)-$L(%ST)-$L($G(%M(%J))))
 S %ST=%ST_$J("",%PEND1-$L(%ST))_RR
 D STPC
 ;----------------- PRINT WRAP LINES ------------
 F I=2:1:%KS S %SHS=%SHS+1 D X1 S %ST=$J("",%L2("SM"))_LL D  S %ST=%ST_$J("",%PEND1-$L(%ST))_RR D STPC
 .S %ST=%ST_$J("",%L2("MP",%NT,1)-$L(%M(1))-$L(%ST)-1)
 .F %J=1:1:%KG S %M(%J)="" S:$D(%CHAST(%J,I))#2 %M(%J)=%CHAST(%J,I) S %ST=%ST_%M(%J)_$J("",%L2("MP",%NT,%J)-$L(%ST)-$L(%M(%J)))
 .Q
ENDPC K %CHAST,LL,RR,%KG,%KS,%NR,%DROB,M Q
 ;-
PCPUST S %SHS=%SHS+1 I @%USP D PCPUST1
 Q
PCPUST1 ;
 D X1 S %ST=$J("",%L2("SM"))_LL S %ST=%ST_$J("",%PEND1-$L(%ST))_RR D STPC
 Q
KAV ;
 D X1 S %ST=$J("",%L2("SM"))_LL S %ST=%ST_$TR($J("",%PEND1-$L(%ST))," ","-")_RR D STPC
 Q
STPC ;
 I $D(%L1SCPC("GLOB")) D  D ^%L1STPC(%ST,%L1SCPC("GLOB"),"%L1SCPC(""MDP"")") Q
 .I $L(%ST)<79,$A($E(%ST))'<$A(" ") S %ST=%ST_$J("",79-$L(%ST))
 ;
 U 0:(NOECHO:NOWRAP) W "<span style=""font-family:Miriam Fixed"">" W $$H2U^%L1FRM(%ST),"</span><br />",!
 Q
 ;-
DELG ;------------ %FRAZA --> %CHAST(1-%KSS) LEFI %DLG
 N %I,%POZ
 I '$D(%NR) S %NR=1
 S %I=0 G DELGEND1:$L(%FRAZA)'>%DLG
DELGC F %POZ=$L(%FRAZA)-%DLG+1:1:$L(%FRAZA) G DLG1:".,:;?!-  "[$E(%FRAZA,%POZ)
 S %I=%I+1,%CHAST(%NR,%I)="-"_$E(%FRAZA,$L(%FRAZA)-%DLG+2,$L(%FRAZA)),%FRAZA=$E(%FRAZA,1,$L(%FRAZA)-%DLG+1) G DELGEND1
DLG1 S %I=%I+1,%CHAST(%NR,%I)=$J($E(%FRAZA,%POZ,$L(%FRAZA)),%DLG)
 S %FRAZA=$E(%FRAZA,1,%POZ-1)
DELGEND1 G:$L(%FRAZA)>%DLG DELGC
 S %KSS=%I+1,%CHAST(%NR,%KSS)=$J(%FRAZA,%DLG)
 Q
 ;-
PEREXL ;
 I %SHL<%BEGS!(%SHL>%ENDS) G PRXL1
 S %SHS1=%SHS+1
 I $D(%L2("RL")) F %SHS=%SHS1:1:%SHS1+3 Q:%SHS'<%L2("RL")  D PCPUST1
 K %SHS1
 D PPNS
 I '%PRPER S %L2("PC")="1N" D NSHAP^W4SHAP
PRXL1 S %SHS=1
 Q:'%PRPER
 I @%USLVIX Q
 D KAV S %ST=$J("`ad sca jynd",%PEND1) D STPC
 S %SHL=%SHL+1 S MAS(98)=%SHL
 S %NEXTS=$G(@$$^W4SHP@(%L2("COD"),1)) D PSHAP K %NEXTS,I
 Q
 ;
KILL K %KODS,%PEND1,SHO,%NEXTS,PER,%POZ,LENGTH,%USLVIX,%SHPC
 K %L2,MAS,%KNS,%KSS,SSTR,L1I,%SHL,%BEGS,%ENDS,%SHS,TIPS,%STR,%CHAST
 K %L1SCPC
 Q
 ;-
BEG ;----------------------- BODY   --------------------------------
 I $D(%L1SCPC("MDP","DAF")) S %ST=%L1SCPC("MDP","DAF") D STPC
 K L1I D IP I %PRVIX G ENMK ;-- %PRVIX - ERROR
 S %L2("U")=0
 S %TIM=$ZD($H,"24:60") I '$D(%L1SCPC("NODT")) S %ST=" "_$$^%L1DC($H,1)_" "_%TIM_" "_$$^%L1DC($H,9)_" mei : dwtd zrye jix`z" D STPC
 S %KNS=0,%SHS=1
 S %L2("PC")=0 D ^W4SHAP
 S %L2("!")=1 ;-- FIRST HEADER WITHOUT PROGON
 I $D(%L2("PG1")),$D(%L2("SM")) D  ;--------- GROUP LINES
 .S %PEND1=%L2("PG1")-1+%L2("SM") S %PRPER=1
 D PSHAP K %L2("!")
 D PCKBL
 I $D(%L2("PG1")) D PEREXL ;-- IF GROUP LINES FORM FEED IN PRINT FINISH
ENMK ;
 I $D(%L1SCPC("NIZ")) X %L1SCPC("NIZ")
 I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D ^%L1SCEX(%L1SCPC("GLOB")) G ENDPROG
 I $D(%L1SCPC("GLOB")) D  G ENDPROG
 .N IND S IND=$O(@%L1SCPC("GLOB")@(999999),-1)+1
 .S @%L1SCPC("GLOB")@(IND)=$G(%L1SCPC("MDP","PG"))_$G(%L1SCPC("MDP","CUT"))_$G(%L1SCPC("MDP","PG"))
ENDPROG D KILL S:$D(ZT) $ZT=ZT Q
 ;-------------------------- END OF BODY ------------------------
 ;
IP ;---> %L2("RZ"),%L2("COD"),   L1I("ZS")
 S %PRVIX=0
 S %L2("RZ")=":" S @("L1I(""ZU"")=0")
 I $D(%L1SCPC("SMALL")) S %L1LPT("SMALL")=""
 I $D(%L1SCPC("SM")) S %L2("SM")=%L1SCPC("SM")
 K %L1LPT("DEV") I $D(%L1SCPC("USTR")) S L1I("ZU")=%L1SCPC("USTR") S %L1LPT("DEV")=%L1SCPC("USTR")
 S L1I("ZS")="" ;-------- WITHOUT QUESTION "FROM PAGE - TO PAGE"
 I $D(%L1SCPC("ZLIST")) K L1I("ZS") ;--- ASK "FROM PAGE TO PAGE"
 I $D(%SCRN) S %L2("COD")=%SCRN_"s"
 I $D(%SCRN("SHP")) S %L2("COD")=%SCRN("SHP")_"s"
 I $D(%L1SCPC("SHP")) S %L2("COD")=%L1SCPC("SHP")_"s" ;--- CODE FROM ^SHP
 D L1PCIN
 I '$D(%L1SCPC("MDP","B")) S %L1SCPC("MDP","B")=""
 I '$D(%L1SCPC("MDP","N")) S %L1SCPC("MDP","N")=""
 I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(12,13)
 I '$D(%L1SCPC("MDP","GWPC")) S %L1SCPC("MDP","GWPC")=80
 I $D(%L1SCPC("NOKDM")),$G(%L1SCPC("MDP","PG"))[$C(12) S %L1SCPC("MDP","PG")=$C(10,10,10)
 S %USLVIX="%PRPER=0"
 Q
 ;-
PSHAP ;
 S %L2("PC")="1V"
PSHAP1 ;
 N %NN S %NN="" F  S %NN=$O(@$$^W4SCR@(%SCRN,"P","NM",%NN)) Q:%NN=""  D
 .S MAS(%NN)=$G(@^(%NN))
 .I $D(%L1SCPC(%NN))#2 S MAS(%NN)=%L1SCPC(%NN)
 .S CRD=$G(@$$^W4SCR@(%SCRN,"P",%NN,"CRD"))
 .I $P(CRD,",",3)["H" S MAS(%NN)=$E(MAS(%NN),$L(MAS(%NN))-$P(CRD,",",4)+1,255)
 .I $P(CRD,",",3)["E",%ENGLISH S MAS(%NN)=$E(MAS(%NN),1,$P(CRD,",",4)) S MAS(%NN)=MAS(%NN)_$J("",$P(CRD,",",4)-$L(MAS(%NN)))
 .I $P(CRD,",",3)="N",$P(CRD,",",5),'$D(%L1SCPC(%NN)) S MAS(%NN)=$J(MAS(%NN),2,$P(CRD,",",5))
 D FSHAP
 Q
 ;
FSHAP ;
 S %L2("PC")=$S(%SHL'<%BEGS&(%SHL'>%ENDS):"1V",1:0)
 S (%TES1,%TES2,%TEN,%THB)=""
 D ^W4SHAP S %NEXTS=$G(@$$^W4SHP@(%L2("COD"),1)) K PER Q
 Q
 ;
SAY ;
 S V=@$$^W4SCR@(%SCRN,"P","NM",%NN) S CRD=@$$^W4SCR@(%SCRN,"P",%NN,"CRD")
 S TYP=^("TYP") I TYP="N"
 S VL=$G(@V) I $P(CRD,",",5)'>0 S VL=$J(VL,+$P(CRD,",",4))
 ;-
PCKBL ; -------------------------------------
 K %SUM S %PRPER=1
 S %REFG=$$^W4MAIN("TMPSCPC")
 I $D(%L1SCPC("REFG")) S %REFG=%L1SCPC("REFG")
 S %RZDG="\"
 I $D(%L1SCPC("RZDG")) S %RZDG=%L1SCPC("RZDG")
 ;
 F %SHPC=1:1 Q:'$D(@%REFG@(%SHPC))  D
 .N %REFST S %REFST=^(%SHPC)
 .K %M ;
 .S %SCPCOK=1 I $D(%L1SCPC("USL")) X %L1SCPC("USL") Q:%SCPCOK=0
 .I '%ENGLISH F %JII=1:1:$G(%L2("MP",1)) S %M(%L2("MP",1)-%JII+1)=$P(%REFST,%RZDG,%JII)
 .I %ENGLISH F %JII=1:1:$G(%L2("MP",1)) S %M(%JII)=$P(%REFST,%RZDG,%JII)
 .S %NT=1 D PC
 .I $D(%L2("MP",2)),$D(@%REFG@(%SHPC)) D
 ..S %COLGG=%L2("MP",1)+%L2("MP",2)
 ..I '%ENGLISH K %M F %JII=$G(%L2("MP",1))+1:1:%COLGG S %M(%COLGG-%JII+1)=$P(%REFST,%RZDG,%JII)
 ..I %ENGLISH K %M F %JII=$G(%L2("MP",1))+1:1:%COLGG S %M(%JII)=$P(%REFST,%RZDG,%JII)
 ..S %NT=2 D PC K %M D PCPUST
 S %PRPER=0
 Q
PPNS ;
 Q
 ;
L1PCIN ; [ 05/28/92  2:43 PM ]
 ;L1I("ZU")  ---> USTR,'$D(L1I("ZS")) --> %BEGS,%ENDS
 ;  O USTR, U USTR
 I $D(%L1SCPC("EXCEL")) S USTR=0,%BEGS=1,%ENDS=999 G END
 I $D(%L1SCPC("GLOB")) S USTR=+$G(L1I("ZU")) G ZS
ZU N $ZT S %PRVIX=0,$ZT="G M1^W4SCPC"
 I $D(L1I("ZU")) S USTR=L1I("ZU")
ZF N OTBS ;
ZS S %BEGS=1,%ENDS=999
 G:$D(L1I("ZS")) END
 S OTBS="1,999" S %BEGS=$P(OTBS,","),%ENDS=$P(OTBS,",",2)
 G:%BEGS="." ZU S:%ENDS="" %ENDS=%BEGS
END ;
 Q
ER Q
 
 

W4SCR
W4SCR(STAM) ; [ 20.10.09 13:14 ] [ 08.10.09 09:03 ] [ 12.05.09 07:52 ] [
 Q "^[$$^W3MAIN]SCR"
 ;;Q $$^W4GL("SCR")
BG(STAM) Q "^[$$^W3MAIN]SCR("

W4SCREF
W4SCREF ;   [ 29.12.21 08:19 ] [ 23.08.11 03:05 ] [ 08.11.09 09:46 ] 
GET ;
 N %R,%MKT,%V,%I
 S %MKT=@$$^W4SCR@(%SCRN,"P","REF",%L1SCREF("N"),"STR")
 S %R=^("RZD")
 F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I %V?."%"1U.E S @%V=$P(%L1SCREF("S"),%R,%I)
 Q
 ;
GETALL G GA1 ;
 ; INPUT - %L1SCREF - GLOBAL REFERENCE , %SCRN - SCREEN NAME
 ; OUTPUT - ALL VARIABLES
GA(%SCRN,%L1SCREF,%GLB1) ;
 I %L1SCREF["\V" S %L1SCREF("SCV")="",%L1SCREF=$P(%L1SCREF,"\")
GA1 N %GLB,%GLBO,%OST,%MKT,%R,%II,%V,%I
 I '$D(%GLB1) S %GLB1=$G(@$$^W4SCR@(%SCRN,"P","REF",1))
 S %GLB1=$$GLB(%GLB1)
 I %L1SCREF["=" S %GLB1=$$GLB($P(%L1SCREF,"=",2)),%L1SCREF=$P(%L1SCREF,"=")
 I $E(%GLB1,$L(%GLB1))=")" S %GLB1=$E(%GLB1,1,$L(%GLB1)-1)_","
 S:%GLB1'["(" %GLB1=%GLB1_"("
 F %II=1:1 Q:'$D(@$$^W4SCR@(%SCRN,"P","REF",%II,"STR"))  D
 .N %R,%MKT,%V,%I,%GLB
 .S %MKT=^("STR"),%R=^("RZD")
 .S %GLB=$$GLB(@$$^W4SCR@(%SCRN,"P","REF",%II)) Q:%GLB'[%GLB1&(%II>1)
 .S %OST=$P(%GLB,%GLB1,2,10)
 .I '$L(%OST) S %GLBO=$G(@%L1SCREF)
 .I $L(%OST),$E(%L1SCREF,$L(%L1SCREF))=")" D
 ..N %L1SCREF1 S %L1SCREF1=$E(%L1SCREF,1,$L(%L1SCREF)-1)
 ..S %GLBO=$G(@(%L1SCREF1_","_%OST))
 .I $L(%OST),%L1SCREF'["(" S %GLBO=$G(@(%L1SCREF_"("_%OST))
 .F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) D
 ..I $D(%L1SCREF("SCV")),%V?."%"1U.E S %SCV("MS",%V)=$P(%GLBO,%R,%I) Q
 ..I %V?."%"1U.E S @%V=$P(%GLBO,%R,%I)
 Q
 ;
GET1(%REF,%SCRN,%NMB,%NAME) ;
 N %R,%MKT,%V,%I,%OK
 S %MKT=@$$^W4SCR@(%SCRN,"P","REF",%NMB,"STR")
 S %R=^("RZD"),%OK=0
 F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I $L(%V),%V=%NAME S %OK=1 Q
 I %OK Q $P(%REF,%R,%I)
 Q "?????"
 Q
 ;
PUT(%REF,%SCRN,%NMB,%NAME) ;
 ; %REF - GLOBAL REFERENCE, %NMB - MACKET NUMBER, %NAME - LIST VARIABLE NAMES("%NM1,%NM2,...
 N %R,%MKT,%V,%I
 S %MKT=@$$^W4SCR@(%SCRN,"P","REF",%NMB,"STR")
 S %R=^("RZD")
 S %REF=$$GLB(%REF)
 N %N,%NM F %N=1:1:$L(%NAME,",") D
 .S %NM=$P(%NAME,",",%N)
 .F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I %V=%NM S $P(@%REF,%R,%I)=$G(@%NM) Q
 Q
 ;
PUT1(%SCRN,%FNAME) ;
 Q:$G(%FNAME)=""  Q:$G(%SCRN)=""  N %F,%FN
 F %F=1:1:$L(%FNAME,",") D
 .S %FN=$P(%FNAME,",",%F)
 .Q:'$D(@$$^W4SCR@(%SCRN,"P","NAME",%FN,"REF1"))
 .N %GL S %GL=^("REF1")
 .S %GL=$$GLB(%GL)
 .X "S "_%GL_"=$G(@%FN)"
 Q
 ;
PUTALL(%REF,%SCRN,%NMB) ;
 ;  %NMB - MACKET NUMBER (IF %NMB="A" - ALL MACKETS, %REF=^SCR(%SCRN,"P","REF",%NMB)
 I %NMB="A" D  Q
 .F %NMB=1:1 Q:'$D(@$$^W4SCR@(%SCRN,"P","REF",%NMB))  S %REF=$$GLB(^(%NMB)) D PA
 ;
PA S %MKT=@$$^W4SCR@(%SCRN,"P","REF",%NMB,"STR")
 S %R=^("RZD")
 F %I=1:1:$L(%MKT,%R) S %V=$P(%MKT,%R,%I) I %V?1U.E,$D(@%V) D
 .S $P(@%REF,%R,%I)=$G(@%V)
 Q
 ;
 ;
GLB(REF) ;
 N REF1
 I $E(REF,1,2)="^[" Q $TR(REF,"[]","||")
 I $E(REF,1,2)="^|" Q REF
 I $E(REF)="^",REF'["(" Q $$^W4GL($E(REF,2,20))
 I $E(REF)="^" D  Q REF1
 .S REF1=$P($E(REF,2,20),"(")
 .S REF1=$$^W4GL(REF1)_"("_$P(REF,"(",2,200)
 ;
 I REF'["(" Q $$^W4GL(REF)
 ;
 S REF1=$P(REF,"(")
 Q $$^W4GL(REF1)_"("_$P(REF,"(",2,200)
 

W4SCV
W4SCV ;     [ 29.12.21 08:19 ] [ 23.07.20 15:58 ] [ 19.07.20 15:29 ] 
G(%SCRN,%ST) ;
 N R,%I,NM S R=@$$^W4SCR@(%SCRN,"G","RZD")
 F %I=1:1 Q:'$D(@$$^W4SCR@(%SCRN,"G","NM",%I))  D
 .S NM=^(%I) I NM?."%"1U.E S @NM=$P(%ST,R,%I)
 Q
 ;
P(%SCRN,%ST) ;
 N R,%I,NM S R=@$$^W4SCR@(%SCRN,"G","RZD")
 F %I=1:1 Q:'$D(@$$^W4SCR@(%SCRN,"G","NM",%I))  D
 .S NM=^(%I) I NM?."%"1U.E S $P(@%ST,R,%I)=$G(@NM)
 Q
 ;
 ;
SCG(SCRN,ST,RZD) ; SHURA @$$^W4SCR@(SCRN)
 I SCRN="" S ST1="<SUBSCR>" Q ST1
 I '$D(@$$^W4SCR@(SCRN)) S ST1="<"_SCRN_">" Q ST1
 I $D(@$$^W4SCR@(SCRN,"G"))<10 S ST1="<"_SCRN_"(G)>" Q ST1
 I '$D(@$$^W4SCR@(SCRN,"G","STG")) S ST1="<"_SCRN_"(STG)>" Q ST1
 S %STG=^("STG") S ST1=""
 ;
 N EN S EN=($G(@$$^W4SCR@(%SCRN))="E")
 N %I F %I=1:1 Q:'$D(@$$^W4SCR@(SCRN,"G",%I))  D
 .N %DL,%SC,%HE,%DL1,%GR S %SC=^(%I,"CRD")
 .I 'EN S %DL=$L($P(%STG,":",$L(%STG,":")-%I))
 .I EN S %DL=$L($P(%STG,":",%I+1))
 .S %DL1=$P(%SC,",",5)
 .S %HE=$P(%SC,",",3),%GR=$P(ST,RZD,%I)
 .S %GR=$S(%HE="N":$J(%GR,%DL,%DL1),1:$$HBR^%L1FRM(%GR,%DL))
 .I 'EN S ST1=%GR_" "_ST1
 .I EN S ST1=ST1_" "_%GR
 I 'EN S ST1=$P(%STG,":")_" "_ST1
 I EN S ST1=$P(%STG,":")_ST1
 Q ST1
 ;
 ;
SCH ; HEAD
 N MAS,SMB1,SMB2,%SCRN,CRD,SC,ST,ST1,%I,%I1,%SHP
 S %SCRN=%SCV("SCRN")
 S %SHP=$G(%SCV("SHP"),%SCRN_"v")
 ;
 N %NN,%NB S %NN="" F  S %NN=$O(%SCV("MS",%NN)) Q:%NN=""  D
 .Q:'$G(@$$^W4SCR@(%SCRN,"P","NAME",%NN))
 .S %NB=^(%NN) S MAS(%NB)=%SCV("MS",%NN)
 .S CRD=@$$^W4SCR@(%SCRN,"P",%NB,"CRD")
 .
 .I $P(CRD,",",3)["H" D
 ..N LN S LN=$P(CRD,",",4)
 ..I LN["/" S LN=$P(LN,"/",2)
 ..S MAS(%NB)=$E(MAS(%NB),$L(MAS(%NB))-LN+1,255)
 .
 .I $P(CRD,",",3)["E",$$^%W1DIR="LTR" D
 ..S MAS(%NB)=$$SPA^%L1FRM(MAS(%NB))
 ..S MAS(%NB)=$E(MAS(%NB),1,$P(CRD,",",4))
 ..S MAS(%NB)=MAS(%NB)_$J("",$P(CRD,",",4)-$L(MAS(%NB)))
 .
 .I $P(CRD,",",5) S MAS(%NB)=$J(MAS(%NB),$P(CRD,",",4),$P(CRD,",",5))
 ;
 S %NN="" F  S %NN=$O(%SCV("MS1",%NN)) Q:%NN=""  D
 .I %NN?1N.N S MAS(%NN)=%SCV("MS1",%NN)
 ;
 N %STRS S %I1=0
 ;
 N MSHP
 I '$D(%SCV("MSHP")) M MSHP=@$$^W4SHP@(%SHP)
 I $D(%SCV("MSHP")) M MSHP=%SCV("MSHP")
 ;
 F %I=1:1 Q:'$D(MSHP(%I))  S ST=MSHP(%I) S:ST["$" %I1=%I1+1 Q:%SCV="V"&%I1  I ST'["$",(%SCV="V"&'%I1)!(%SCV="N"&(%I1=2)) D
 .I ST'["{",ST'["}",ST'["#",ST'["_",ST'["^",ST'["?" D W Q
 .S SMB1="{",SMB2="}" D FIG
 .S ST=$$PROC(ST,"#","B","N")
 .S ST=$$PROC(ST,"_","U","UE")
 .S ST=$$PROC(ST,"^","I","IE")
 .S ST=$$PROC(ST,"?","BB","N")
 .D W
 Q
 ;
PROC(ST,SMB,SGN1,SGN2)
 N ST1,%II S ST1=ST
 ;
 I ST[SMB S %W1=0,ST1=$P(ST,SMB) D  S ST=ST1
 .F %II=2:1:$L(ST,SMB) D
 ..S %W1='%W1  S:%W1 ST1=ST1_"<"_SGN1_">"_$P(ST,SMB,%II)
 ..S:'%W1 ST1=ST1_"<"_SGN2_">"_$P(ST,SMB,%II)
 Q ST1
 ;
 ;
W ;
 G WW1 ; ***
 N ST1
 N LN D
 .N J,PRB,PRS S LN=0,J=0,PRB=0,PRS=1
LNCYC .S J=J+1 I J>$L(ST) Q
 .I $E(ST,J,J+2)="<B>" S J=J+3,PRB=1,PRS=0 G LNCYC
 .I $E(ST,J,J+2)="<N>" S J=J+3,PRB=0,PRS=1 G LNCYC
 .I PRB S LN=LN+2 G LNCYC
 .S LN=LN+1 G LNCYC
 S ST1=$$RPL^%L1FRM(ST,"<B>","")
 S ST1=$$RPL^%L1FRM(ST1,"<N>","")
 I LN>40 D  Q
 .D DLG^%L1FRM(ST1,$$WD\2)
 .;
 .N I F I=1:1 Q:'$D(%CHAST(1,I))  D
 ..N TXT S TXT="<B>"_%CHAST(1,I)_"<N>"
 ..S ^AA("CHAST",I)=TXT
 ..D W1(TXT)
 ;
WW1 D W1(ST) 
 Q
 ;
W1(ST) ;
 N NEWI S NEWI=$O(@$$^W4MAIN("TMPS111")@(99999),-1)+1
 S @$$^W4MAIN("TMPS111")@(NEWI)=$E(ST,1,255)
 I $D(ST("MAS")) S @$$^W4MAIN("TMPS111")@(NEWI,"MAS")=""
 K ST Q
 ;
FIG N P1,P2,%IN
 F  S P1=$F(ST,SMB1) S:'P1 P1=1000 S P2=$F(ST,SMB2) S:'P2 P2=1000 Q:P1+P2>1000  D
 .S %IN=0
 .I $E(ST,P1)?1N S %IN=+$E(ST,P1,P1+1)
 .E  I $E(ST,P2-2)?1N S %IN=+$TR($E(ST,P2-3,P2-2)," ","")
 .I %IN S ST("MAS")=""
 .I $$^%W1DIR="RTL" S $E(ST,P1-1,P2-1)=$J($G(MAS(%IN)),P2-P1+1) Q
 .I $$^%W1DIR="LTR" S $E(ST,P1-1,P2-1)=$G(MAS(%IN))_$J("",P2-P1+1-$L($G(MAS(%IN)))) Q
 Q
 ;
WD(STAM) ;
 Q $$WD^W4HZPCFN
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SDPAR
W4SDPAR(HZM) ;      [ 10.11.08 18:24 ] [ 29.06.06 09:46 ] [ 29.06.04 14:35 ]
 Q:$G(HZM)=""
 N NMB S NMB=$P($G(@$$^W4ORD@(HZM)),"\") Q:'NMB
 I $$^W4PPG=4,$$SUGS^W4L(NMB)'=1 Q
 N A,I,PAR,KP S KP=0 I '$D(HZSCR) D ^W4IN
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S A=$G(^(I))
 .S PAR=$P(A,"\") I $$SUG^W4P(PAR)=1 S KP=KP+$P(A,"\",5)
 .I $$^W4PPG=4!($$^W4PPG=6),$$SUG^W4P(PAR)=2 S KP=KP+$P(A,"\",5)
 .I $$^W4PPG=3,$$SUG^W4P(PAR)=2!($$SUG^W4P(PAR)=16)!($$SUG^W4P(PAR)=20)!($$SUG^W4P(PAR)=19) S KP=KP+$P(A,"\",5)
 ;
 S SOAD=KP D P1^%L1SCSAY("SOAD")
 D PUT^W4SCREF($$^W4ORD_"(HZM)",HZSCR,1,"SOAD")
 Q

W4SEL
W4SEL ; [ 06.04.20 04:11 ] [ 05.04.20 23:51 ] [ 
 N (JB,%ARG,W4SEL)
 S WD="10%"
 S MAXL=0
 S ID=W4SEL("ID")
 S N="" F  S N=$O(W4SEL("OPT",N)) Q:N=""  D
 .I $L($G(W4SEL("OPT",N)))>MAXL S MAXL=$L($G(W4SEL("OPT",N)))
 ; 
 ;;I $D(W4SEL("WD")) S WD=W4SEL("WD")
 S WD=(MAXL*10)_"px"
 W "<table dir="""_$$^%W1DIR_""" width="""_WD_""" border=""0"">"
 W "<tr>"
   W "<td width=""95%"" >"
    W "<input type=""text"" id="""_ID_"-tx"" "
     W " size="""_MAXL_""""
     W " style=""width:100%;font-size:"_$$^W3FSZ(12)_""" "
     W "value="""_$G(W4SEL("OPT",W4SEL))_""" "
    W " />"
   W "</td>"
   W "<td>"
    W "<img src=""w4vniz.png"" style=""height:25px;width:25px"" "
     W " onClick=""W4SELClickImg('"_ID_"')"" "
    W "/>" 
   W "</td>"
  W "</tr>",!
  W "<tr>"
   W "<td style=""display:none"">"
    W "<input type=""text"" id="""_ID_""" "
     W "value="""_$G(W4SEL)_""" "
    W " />"
   W "</td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td colspan=""2"">"
    W "<div id="""_ID_"-div"" style=""border:1px solid;display:none"">"
    W "<table id="""_ID_"-tb"" width=""100%"">",!
     S N="" F  S N=$O(W4SEL("OPT",N)) Q:N=""  I N'="0" D
      .W "<tr onClick=""W4SELClickOpt('"_ID_"','"_N_"')"" "
      .W " onMouseOver=""this.style.backgroundColor='#EAEAEA'"" "
      .W " onMouseOut=""this.style.backgroundColor='white'"" "
      . S STYLETR=$G(W4SEL("OPT",N,"TR"))
      . I STYLETR'="" W "style="""_STYLETR_""" "
      .W ">"
       .W "<td "
       . W "id="""_ID_"-"_N_""" "
       . S STYLETD=""
       . I $D(W4SEL("OPT",N,"TD")) S STYLETD=W4SEL("OPT",N,"TD")
       . I N=W4SEL S STYLETD=STYLETD_";border:1px solid"
       . I STYLETD'="" W "style="""_STYLETD_""" "
       .W ">"
       . W $G(W4SEL("OPT",N))
       .W "</td>"
      .W "</tr>",! 
    W "</table>",!  
    W "</div>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
TV ;
 S W4SEL=2
 S W4SEL("ID")="sel"
 S W4SEL("OPT",1)="AAA aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
 S W4SEL("OPT",2)="BBBB"
 S W4SEL("OPT",3)="CCC"
 F I=4:1:100 S W4SEL("OPT",I)=I
 S W4SEL("WD")="25%"
 G W4SEL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SELDAT
W4SELDAT(TODATE,MIN,PLUS,ID,ONCHNG) ; [ 07.01.17 11:17 ] [ 06.01.17 18:15 ] [ 
 I '$G(TODATE) S TODATE=$S($$^W4LKH!'$G(P1DZ):$ZD($H,"DD.MM.YY"),1:$ZD(P1DZ,"DD.MM.YY"))
 I $G(MIN)<0 S MIN=-MIN
 I $G(MIN)="" S MIN=60
 I $G(PLUS)="" S PLUS=16
 ;
 N DT,DT0,DTLAST,DTCUR
 ;
 S DTCUR=$$^%L1DC(TODATE,3)
 S DT0=DTCUR-MIN
 S DTLAST=DTCUR+PLUS
 ;
 I MIN?5N S DT0=MIN
 I PLUS?5N S DTLAST=PLUS
 ;
 I $G(ID)="" S ID="DAT"
 N A
 S A="<select id="""_ID_""" dir="""_$$^%W1DIR_""" "
 I $L($G(ONCHNG)) S A=A_" onChange="""_ONCHNG_""" "
 S A=A_">"
 ;
 F DT=DT0:1:DTLAST D
 .S A=A_"<option "
 . S A=A_" value="""_$ZD(DT,"DD.MM.YY")_""""
 . I DT=DTCUR S A=A_"  selected=""selected"" "
 . S A=A_">"
 .  S A=A_$ZD(DT,"DD.MM.YY")_" "_$$H2U^%L1FRM($$^%L1DC(DT,9))_"'"
 .S A=A_"</option>"
 S A=A_"</select>"
 ;
 Q A
 
 
 
 
 
 
 

W4SERKU0
W4SERKUP(PRM) ; [ 28.10.13 05:16 ] [ 26.09.12 12:46 ] [ 18.08.12 14:37 ]
 N (JB,%ARG,%REM,PRM)
 ;
 D ^%L1TS
 D ^W4GETPRN
 ;
 S DAT=$P(PRM,";")
 S PORT=$P(PRM,";",2)
 S PATH=$$^W4PATH
 ;
 K @$$^W4MAIN("TMPSER")
 K @$$^W4MAIN("TMPSER1")
 ;
 I 'DAT G PC
 ;
 I $E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S FL=PATH_"#Z"_$$^%L1DC(DAT,2)_".001"
 ;
 I $$^%L1ZOS(10,FL)<0 D NODATA G END
 ;
 I '$G(%ARG("ORD")) D OPTB
 ;
 K PRCOPY,SHCOPY,PRORD
 ;
 O FL:(REWIND:READONLY)
 F II=1:1 U FL R A Q:$ZEOF  D
 .I $G(%ARG("ORD")) D SETTMP(A) Q
 .D PCST(A,+PORT,II)
 C FL
 I '$G(%ARG("ORD")) W "</table>",!
 G FNDORD
 ;
 ;----------- SHOW NOT PRINTED LINES ----------
PC I $G(PORT),'$D(@$$^W4PC@(PORT)) D NODATA G END
 I '$G(PORT),$D(@$$^W4PC)<10 D NODATA G END
 ;
 N N,N1 S STYLE=" style=""color:darkgreen"" "
 I '$G(%ARG("ORD")) D OPTB
 ;
 N II S II=0
 S N="" F  S N=$O(@$$^W4PC@(N)) Q:N=""  I 'PORT!(N=PORT) D
 .S N1="" F  S N1=$O(@$$^W4PC@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1)),II=II+1
 ..I $G(%ARG("ORD")) D SETTMP(N_":"_A) Q
 ..D PCST(N_":"_A,$G(PORT),II)
 ;
 I '$G(%ARG("ORD")) W "</table>",!
FNDORD ;
 I $G(%ARG("ORD")) D
 .D TV^W4MDP(6)
 .N II,II1,A,A1,BG S BG=1
 .F II=1:1 Q:'$D(@$$^W4MAIN("TMPSER")@(II))  D
 ..S A=$G(^(II))
 ..;;I A[%ARG("ORD") W "A="_A_" I="_I,!
 ..I A[":" S A=$P(A,":",2,120)
 ..I $$BG(A) S BG=II Q
 ..I $$ORD(A),$$CLNUM(A)=%ARG("ORD") D
 ...F II1=BG+1:1 Q:'$D(@$$^W4MAIN("TMPSER")@(II1))  S A1=$G(^(II1)),II=II+1 Q:$$XYZ(A1)  D SETTMP1(A1) Q:$$CUT(A1)  Q:$$FIN(A1)
 ...;;D SETTMP1("")
 .D OPTB
 .F II=1:1 Q:'$D(@$$^W4MAIN("TMPSER1")@(II))  D
 ..D PCST(^(II),$G(PORT),II)
 .W "</table>",!
 ;
END ;
 K @$$^W4MAIN("TMPSER")
 K @$$^W4MAIN("TMPSER1")
 Q
 ;
 ;
OPTB ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"" "
 I $L($G(STYLE)) W STYLE
 W ">",!
 Q
 ;
PCST(A,PORT,NOM) ;
 N PA S PA=$P(A,":") I $G(PORT),+PORT'=+PA Q
 ;
 N SUGMDP,MDP S SUGMDP=6
 I A?1N.N1":".E D
 .S MDP=$P(A,":") Q:'MDP
 .S SUGMDP=$G(MPRN(MDP,"SUG"))
 .S:'SUGMDP SUGMDP=6
 ;
 I PA S A=$P(A,PA_":",2,120)
 ;;S A=$$PRN2HTML(A,SUGMDP)
 S PA=+PA
 ;
 U 0 W "<tr>"
 W "<td style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"_NOM_"</td>"
 I PA W "<td dir=""LTR""><b>"_$S($$^%W1DIR="RTL":" : "_PA,1:PA_" : ")_"</b></td>"
 W "<td "
  S DIR=""
  I $$XYZ(A) D
  .S A=$$SPA^%L1FRM(A) W " align=""center"" "
  I '$$XYZ(A) D
  .I $$P(A) S DIR=" dir=""LTR"" " I $$^%W1DIR="RTL" W " align=""right"" "
  ;
  S COLOR="darkgreen"
  I A?.E1"-"1N.N.".".N.E S COLOR="red" W " style=""color:"_COLOR_""" "
  ;
  I $$ORD(A),'$G(PRCOPY(PA)) W " style=""font-weight:bold"" "
  I $$COPY(A),'$G(PRCOPY(PA)) S PRCOPY(PA)=1
  I $$COPY(A) S SHCOPY(PA)=$G(SHCOPY(PA))+1
  I $G(PRCOPY(PA)) S COLOR="brown" W " style=""color:"_COLOR_";"_$S($$ORD(A):"font-weight:bold",1:"")_""""
  I $$COPY(A),$G(SHCOPY(PA))=6 K PRCOPY(PA),SHCOPY(PA)
  ;
  W DIR
 W ">"
  S A=$$PRN2HTML(A,SUGMDP,COLOR)
  ;;W $$RPL^%L1FRM($$H2U^%L1FRM(A)," ","&nbsp;")
  W $$STR(A)
 W "</td></tr>",!
 Q
 ;
PRN2HTML(A,SUGMDP,COLOR)
 D TV^W4MDP(SUGMDP)
 N STARTB,ENDB
 ;;S STARTB="<E><B><E>"
 S STARTB="<E><SPAN STYLE=""FONT-WEIGHT:BOLD;COLOR:"_$G(COLOR)_"""><E>"
 ;;S ENDB="<E></B><E>"
 S ENDB="<E></span><E>"
 S A=$$RPL^%L1FRM(A,%MDP("B"),ENDB)
 S A=$$RPL^%L1FRM(A,%MDP("N"),STARTB)
 S A=$$RPL^%L1FRM(A,%MDP("BB"),ENDB)
 ;;S A=$$RPL^%L1FRM(A,%MDP("B"),STARTB)
 ;;S A=$$RPL^%L1FRM(A,%MDP("N"),ENDB)
 ;;S A=$$RPL^%L1FRM(A,%MDP("BB"),STARTB)
 S A=$$RPL^%L1FRM(A,%MDP("P"),"")
 S A=$$RPL^%L1FRM(A,%MDP("BEEP"),"")
 S A=$$RPL^%L1FRM(A,%MDP("PRG"),"<E><br><br><br><E>")
 S A=$$RPL^%L1FRM(A,%MDP("CUT"),"<E>>>>"_$TR($J("",32)," ","-")_"<<<<E>")
 S A=$$RPL^%L1FRM(A,$C(10),"<E><BR><E>")
 S A=$TR(A,TSS,TS0)
 Q A
 ;
SELDAT ;
 N N,N0
 W "<select id=""DAT"" >"
 N PATH S PATH=$$^W4PATH
 I $E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S N0=PATH_"#Z*"
 I $D(@$$^W4PC)>9 D
 .W "<option value=""0"">"_$$^%W1DICT("DATAREADY4PRINT")_"</option>",!
 ;
 K @$$^W4MAIN("VRM")
 F  S N=$ZSEARCH(N0) Q:N=""  Q:N'["/#Z"  D
 .N Z S Z=$ZPARSE(N,"NAME")
 .N DAT S DAT=$E(Z,3,8)
 .S @$$^W4MAIN("VRM")@(DAT)=""
 ;
 S N=""
 F  S N=$O(@$$^W4MAIN("VRM")@(N),-1) Q:N=""  D
 .N DAT S DAT=$$^%L1DC(N,1)
 .W "<option>"
 .W DAT
 .W "</option>",!
 W "</select>",!
 K @$$^W4MAIN("VRM")
 Q
 ;
SELPRN ;
 D ^W4GETPRN
 W "<select id=""PRN"" dir="""_$$^%W1DIR_""">"
 W "<option value=""ALL"">"_$$^%W1DICT("ALLPRN")_"</option>",!
 S N="" F  S N=$O(MPRN(N)) Q:N=""  D
 .W "<option value="""_N_""">"
 .W ""_N_" : "_$$H2U^%L1FRM(MPRN(N))
 .W "</option>",!
 W "</select>",!
 Q
 ;
P(A) ;
 I A["------------" Q 1
 S A=$TR(A,"b","")
 S A=$$RPL^%L1FRM(A,"&nbsp;"," ")
 I A?.P Q 1
 Q 0
 ;
NODATA ;
 W "<script>",!
 W " MsgA(""NODATA!"")",!
 W "</script>",!
 Q
 ;
PRINT(PRM) ;
 N (%ARG,JB,%REM,PRM)
 D ^%L1TS
 D ^W4GETPRN
 ;
 S DAT=$P(PRM,";") Q:'DAT
 S PORT=$P(PRM,";",2)
 S PATH=$$^W4PATH
 ;
 I $E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S FL=PATH_"#Z"_$$^%L1DC(DAT,2)_".001"
 ;
 I $$^%L1ZOS(10,FL)<0 D NODATA G ENDP
 ;
 O FL:(REWIND:READONLY)
 F  U FL R TXT Q:$ZEOF  D S1^W4PCST
 C FL
ENDP Q
 ;
XYZ(A) ;
 I A["- X -"!(A["- Y -")!(A["- Z -") Q 1
 Q 0
 ;
BG(A) ;
 I $$CUT(A) Q 1
 I A["!!!!!!" Q 1
 I A["======" Q 1
 I A["******" Q 1
 I A[$C(27,112,1,64) Q 1
 Q 0
 ;
FIN(A) ;
 I $$CUT(A) Q 1
 I A["!!!!!!" Q 1
 I A["======" Q 1
 I A[$C(27,112,1,64) Q 1
 Q 0
 ;
CUT(A) ;
 I A[">>>--" Q 1
 I $L($G(%MDP("CUT"))),A[%MDP("CUT") Q 1
 S A=$TR(A,TSS,TS0)
 I $L($G(%MDP("CUT"))),A[%MDP("CUT") Q 1
 Q 0
 ;
ORD(A) ;
 S A=$TR(A,TSS,TS0)
 I A["'qn dpnfd" Q 1
 ;;I A["dpnfd" Q 1
 Q 0
 ;
COPY(A)
 S A=$TR(A,TSS,TS0)
 I A["!!! wzrd" Q 1
 Q 0
 ;
CLNUM(A) ;
 N A1,J
 S A1=""
 F J=1:1:$L(A) D
 .I $E(A,J)?1N S A1=A1_$E(A,J)
 Q A1
 ;
STR(TXT) ;
 N TXT1,I S TXT1=""
 F I=1:1:$L(TXT,"<E>") D
 .S CH=$P(TXT,"<E>",I)
 .I '(I#2) S TXT1=CH_TXT1
 .E  S TXT1=$$RPL^%L1FRM($$H2U^%L1FRM(CH)," ","&nbsp;")_TXT1
 Q TXT1
 ;
SETTMP(A) ;
 N PA S PA=$P(A,":") I $G(PORT),+PORT'=+PA Q
 S @$$^W4MAIN("TMPSER")@($O(@$$^W4MAIN("TMPSER")@(999999),-1)+1)=A
 Q
SETTMP1(A) ;
 S @$$^W4MAIN("TMPSER1")@($O(@$$^W4MAIN("TMPSER1")@(999999),-1)+1)=A
 Q

W4SERKUP
W4SERKUP(PRM) ; [ 31.12.25 12:54 ] [ 28.07.25 04:37 ] [ 01.07.24 15:43 ] 
 N (JB,%ARG,%REM,PRM)
 ;
 I $$HSBHBR^W4PRM S %W1LNG="H"
 ;
 D ^%L1TS
 D ^W4GETPRN
 ;
 S DAT=$P(PRM,";")
 S PORT=$P(PRM,";",2)
 S SUGMDP=$$MDPS^W4MDP(PORT)
 S PATH=$$^W4PATH
 ;
 K @$$^W4MAIN("TMPSER")
 K @$$^W4MAIN("TMPSER1")
 ;
 D TV^W4MDP(SUGMDP)
 ;
 I 'DAT G PCNOTPRINTED ; --- NOT PRINTED LINES
 ;
 I $E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S FL=PATH_"#Z"_$$^%L1DC(DAT,2)_".001"
 ;
 I $$^%L1ZOS(10,FL)<0 D NODATA G END
 ;
 D DIVBUT
 ;
 I '$G(%ARG("ORD")) D OPTB
 ;
 K PRCOPY,SHCOPY,PRORD
 D SETMDP
 ;
 ;
 O FL:(REWIND:READONLY)
 F II=1:1 U FL R A Q:$ZEOF  D
 .I $G(%ARG("ORD")) D SETTMP(A) Q
 .D PCST(A,+PORT,II)
 C FL
 I '$G(%ARG("ORD")) W "</table>",!
 G FNDORD
 ;
 ;----------- SHOW NOT PRINTED LINES ----------
PCNOTPRINTED ;;I $G(PORT),'$D(@$$^W4PC@(PORT)) D NODATA G END
 I '$G(PORT),$D(@$$^W4PC)<10 D NODATA G END
 ;
 D DIVBUT
 ;
 N N,N1 S STYLE=" style=""color:darkgreen"" "
 I '$G(%ARG("ORD")) D OPTB
 ;
 N II S II=0
 S N="" F  S N=$O(@$$^W4PC@(N)) Q:N=""  I 'PORT!(+N=+PORT) D
 .S N1="" F  S N1=$O(@$$^W4PC@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1)),II=II+1
 ..I $G(%ARG("ORD")) D SETTMP(N_":"_A) Q
 ..D PCST(N_":"_A,$G(PORT),II)
 ;
 I '$G(%ARG("ORD")) W "</table>",!
 ;
FNDORD ;
 I $G(%ARG("ORD")) D
 .D SETMDP
 .N TMPS S TMPS=$$^W4MAIN("TMPS")
 .N K S K=0 K @TMPS
 .F II=1:1 Q:'$D(@$$^W4MAIN("TMPSER")@(II))  D
 ..S A=$G(^(II))
 ..S PORT=$P(A,":")
 ..I PORT?2N.E D
 ...S K=$O(@TMPS@(PORT,99999),-1)+1
 ...S @TMPS@(PORT,K)=$G(@$$^W4MAIN("TMPSER")@(II))
 .;
 .N II,II1,II2,A,A1,BG
 .S PORT="" F  S PORT=$O(@TMPS@(PORT)) Q:PORT=""  S II=0 D
CYC ..S II=$O(@TMPS@(PORT,II)) Q:II=""
 ..S A=$G(^(II))
 ..;;I A[%ARG("ORD") W "A="_A_" II="_II,! S ^AA("W4SERKUP-A",II)=A ;***
 ..I A[":" S A=$P(A,":",2,120)
 ..I $$ORD(A)!$$MDB(PORT) I (" "_$$CLNUM(A)_" ")[(" "_%ARG("ORD")_" ") D
 ...S OFFS=5
 ...I $$TR($G(@TMPS@(PORT,II+1)))["dpnfd zlaw onf" D
 ....S OFFS=1
 ....D SETTMP1("")
 ....D SETTMP1("")
 ...S II2=II,BG=II-OFFS S:BG<0 BG=0
 ...S EORD=0
 ...F II1=BG+1:1 S II=II1 Q:'$D(@TMPS@(PORT,II1))  D  Q:EORD
 ....S A1=$G(^(II1))
 ....I $$XYZ(A1)&(II1>II2) S EORD=1 Q
 ....I $$ORD(A1)&(II1>II2) S EORD=1 Q
 ....D SETTMP1(A1)
 ....I $$FIN(A1)&(II1>II2) S EORD=1 Q
 ..G CYC
 .
 .D OPTB
 .F II=1:1 Q:'$D(@$$^W4MAIN("TMPSER1")@(II))  D
 ..D PCST(^(II),$G(PORT),II)
 .W "</table>",!
 ;
 D DIVBUT
END ;
 K @$$^W4MAIN("TMPSER")
 K @$$^W4MAIN("TMPSER1")
 K @$$^W4MAIN("TMPS")
 Q
 ;
 ;
OPTB ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"" width=""60%"" "
 I $L($G(STYLE)) W STYLE
 W ">",!
 Q
 ;
PCST(A,PORT,NOM) ;
 N PA S PA=$P(A,":") I $G(PORT),+PORT'=+PA Q
 ;
 N SUGMDP,MDP S SUGMDP=$$MDPS^W4MDP(PORT)
 ;
 I PA S A=$P(A,PA_":",2,120)
 S PA=+PA
 ;
 U 0 W "<tr>"
 W "<td style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"_NOM_"</td>"
 I PA W "<td dir=""LTR""><b>"_$S($$^%W1DIR="RTL":" : "_PA,1:PA_" : ")_"</b></td>"
 ;
 W "<td width=""85%"" "
  S DIR=""
  I $$XYZ(A) D
  .S A=$$SPA^%L1FRM(A) W " align=""center"" "
  I '$$XYZ(A) D
  .I $$P(A) S DIR=" dir=""LTR"" " I $$^%W1DIR="RTL" W " align=""right"" "
  ;
  S COLOR="darkgreen"
  I A?.E1"-"1N.N.".".N.E S COLOR="red" W " style=""color:"_COLOR_""" "
  ;
  I $$ORD(A),'$G(PRCOPY(PA)) W " style=""font-weight:bold"" "
  I $$BGCOPY(A),'$G(PRCOPY(PA)) S PRCOPY(PA)=1
  I $$COPY(A),$G(PRCOPY(PA)) S SHCOPY(PA)=$G(SHCOPY(PA))+1
  I $G(PRCOPY(PA)) S COLOR="brown" W " style=""color:"_COLOR_";"_$S($$ORD(A):"font-weight:bold",1:"")_""""
  I $$COPY(A),$G(SHCOPY(PA))=6 K PRCOPY(PA),SHCOPY(PA)
  ;
  W DIR
 W ">"
  S A=$$PRN2HTML(A,SUGMDP,COLOR)
  ;;W $$RPL^%L1FRM($$H2U^%L1FRM(A)," ","&nbsp;")
  W $$STR(A)
 W "</td></tr>",!
 Q
 ;
SETMDP ;
 N I F I="B","N","BB","P","BEEP","PRG","CUT" S %MDP(I)=$G(%MDP(I))
 Q
 ;
PRN2HTML(A,SUGMDP,COLOR)
 D SETMDP
 N STARTB,ENDB
 ;;S STARTB="<E><B><E>"
 S STARTB="<E><SPAN STYLE=""FONT-WEIGHT:BOLD;COLOR:"_$G(COLOR)_"""><E>"
 ;;S ENDB="<E></B><E>"
 S ENDB="<E></span><E>"
 ;
 S A=$$RPL^%L1FRM(A,$C(27,33,40),ENDB)
 S A=$$RPL^%L1FRM(A,$C(27,33,41),ENDB)
 S A=$$RPL^%L1FRM(A,$C(27,33,56),ENDB)
 S A=$$RPL^%L1FRM(A,$C(27,33,57),ENDB)
 S A=$$RPL^%L1FRM(A,$C(27,33,49),ENDB)
 S A=$$RPL^%L1FRM(A,$C(27,114,0),"")
 S A=$$RPL^%L1FRM(A,$C(27,114,1),"")
 ;
 I $G(%MDP("N"))'="" D
 .I A[ENDB S A=$$RPL^%L1FRM(A,%MDP("N"),STARTB) Q
 .S A=$$RPL^%L1FRM(A,%MDP("N"),"") Q
 ;;S A=$$RPL^%L1FRM(A,%MDP("BB"),ENDB)
 I $G(%MDP("N"))'="" S A=$$RPL^%L1FRM(A,%MDP("N"),ENDB)
 S A=$$RPL^%L1FRM(A,"!","")
 I $G(%MDP("P"))'="" S A=$$RPL^%L1FRM(A,%MDP("P"),"")
 I $G(%MDP("R"))'="" S A=$$RPL^%L1FRM(A,%MDP("R"),"")
 I $G(%MDP("RL"))'="" S A=$$RPL^%L1FRM(A,%MDP("RL"),"")
 I $G(%MDP("BEEP"))'="" S A=$$RPL^%L1FRM(A,%MDP("BEEP"),"")
 I $G(%MDP("PRG"))'="" S A=$$RPL^%L1FRM(A,%MDP("PRG"),"<E><br><br><br><E>")
 I $G(%MDP("CUT"))'="" S A=$$RPL^%L1FRM(A,%MDP("CUT"),"<E>>>>"_$TR($J("",32)," ","-")_"<<<<E>")
 S A=$$RPL^%L1FRM(A,$C(10),"<E><BR><E>")
 S A=$$TR(A)
 Q A
 ;
 ;
SELDAT ;
 N N,N0
 W "<select id=""DAT"" >"
 N PATH S PATH=$$^W4PATH
 I $E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S N0=PATH_"#Z*"
 I $D(@$$^W4PC)>9 D
 .W "<option value=""0"">"_$$^%W1DICT("DATAREADY4PRINT")_"</option>",!
 ;
 K @$$^W4MAIN("VRM") N N00 S N00=""
 ;
 K VV N I
 F I=1:1:5000 S N=$ZSEARCH(N0) Q:N=""  Q:N'["/#Z"  Q:N=N00  S N00=N D
 .N Z S Z=$ZPARSE(N,"NAME")
 .N DAT S DAT=$E(Z,3,8)
 .S VV(DAT)=""
 ;
 M @$$^W4MAIN("VRM")=VV
 ;
 S N=""
 F  S N=$O(@$$^W4MAIN("VRM")@(N),-1) Q:N=""  D
 .N DAT S DAT=$$^%L1DC(N,1)
 .W "<option>"
 .W DAT
 .W "</option>",!
 W "</select>",!
 K @$$^W4MAIN("VRM")
 Q
 ;
SELPRN ;
 D ^W4GETPRN
 W "<select id=""PRN"" dir="""_$$^%W1DIR_""">"
 W "<option value=""ALL"">"_$$^%W1DICT("ALLPRN")_"</option>",!
 S N="" F  S N=$O(MPRN(N)) Q:N=""  D
 .W "<option value="""_N_""">"
 .W ""_N_" : "_$$H2U^%L1FRM(MPRN(N))
 .W "</option>",!
 W "</select>",!
 Q
 ;
P(A) ;
 I A["------------" Q 1
 S A=$TR(A,"b","")
 S A=$$RPL^%L1FRM(A,"&nbsp;"," ")
 I A?.P Q 1
 Q 0
 ;
NODATA ;
 W "<script>",!
 W " MsgA(""NODATA!"")",!
 W "</script>",!
 Q
 ;
PRINT(PRM) ;
 N (%ARG,JB,%REM,PRM)
 D ^%L1TS
 D ^W4MDPPC ;;W4GETPRN
 ;
 S DAT=$P(PRM,";") Q:'DAT
 S PORT=$P(PRM,";",2)
 S PATH=$$^W4PATH
 ;
 I $E(PATH,$L(PATH))'="/" S PATH=PATH_"/"
 S FL=PATH_"#Z"_$$^%L1DC(DAT,2)_".001"
 ;
 I $$^%L1ZOS(10,FL)<0 D NODATA G ENDP
 ;
 O FL:(REWIND:READONLY)
 F  U FL R TXT Q:$ZEOF  D S1^W4PCST
 C FL
ENDP Q
 ;
 ;
XYZ(A) ;
 I A["- X -"!(A["- Y -")!(A["- Z -") Q 1
 Q 0
 ;
BG(A) ;
 I $$CUT(A) Q 1
 I A["!!!!!!" Q 1
 I A["======" Q 1
 I A["******" Q 1
 ;;I A[$C(27,112,1,64) Q 1
 Q 0
 ;
FIN(A) ;
 I $$CUT(A) Q 1
 I A["!!!!!!" Q 1
 I A["======" Q 1
 ;;I A[$C(27,112,1,64) Q 1
 Q 0
 ;
CUT(A) ;
 I A[">>>--" Q 1
 I $L($G(%MDP("CUT"))),A[%MDP("CUT") Q 1
 S A=$$TR(A)
 I $L($G(%MDP("CUT"))),A[%MDP("CUT") Q 1
 Q 0
 ;
ORD(A) ;
 S A=$$TR(A)
 I A["qn dpnfd" Q 1
 I $G(PORT),$$MDB(+PORT),A?.E1N1":"2N.E Q 1
 I $G(PORT),$$MTBH(+PORT),A?.E5" "." "1N.N5" ".E,A[$C(27,33,8),A[$C(27,33,56) Q 1
 Q 0
 ;
COPY(A)
 S A=$$TR(A)
 I A["!!! wzrd" Q 1
 Q 0
 ;
BGCOPY(A)
 S A=$$TR(A)
 I A[("!!! wzrd"_$G(%MDP("N"))) Q 1
 Q 0
 ;
CLNUM(A) ;
 N A1,J
 S A=$$RPL^%L1FRM(A,$C(27,33,40),"")
 S A=$$RPL^%L1FRM(A,$C(27,33,41),"")
 S A=$$RPL^%L1FRM(A,$C(27,33,56),"")
 S A=$$RPL^%L1FRM(A,$C(27,33,57),"")
 S A=$$RPL^%L1FRM(A,$C(27,33,49),"")
 ;
 S A=$$RPL^%L1FRM(A,%MDP("N"),"")
 S A=$$RPL^%L1FRM(A,%MDP("BB"),"")
 S A=$$RPL^%L1FRM(A,%MDP("P"),"")
 S A=$$RPL^%L1FRM(A,%MDP("BEEP"),"")
 S A=$$RPL^%L1FRM(A,%MDP("PRG"),"")
 S A=$$RPL^%L1FRM(A,%MDP("CUT"),"")
 S A=$$RPL^%L1FRM(A,$C(10),"")
 S A=$$TR(A)
 S A=$$RPL^%L1FRM(A,"!)(","   ")
 ;
 S A1=""
 F J=1:1:$L(A) D
 .I $E(A,J)?1N S A1=A1_$E(A,J)
 .I $E(A,J)'?1N S A1=A1_" "
 Q A1
 ;
 ;
STR(TXT) ;
 N TXT1,I,CH S TXT1=""
 F I=1:1:$L(TXT,"<E>") D
 .S CH=$P(TXT,"<E>",I)
 .I '(I#2) S TXT1=CH_TXT1
 .E  S TXT1=$$RPL^%L1FRM($$H2U^%L1FRM(CH)," ","&nbsp;")_TXT1
 Q TXT1
 ;
SETTMP(A) ;
 N PA S PA=$P(A,":") I $G(PORT),+PORT'=+PA Q
 S @$$^W4MAIN("TMPSER")@($O(@$$^W4MAIN("TMPSER")@(999999),-1)+1)=A
 Q
 ;
SETTMP1(A) ;
 S @$$^W4MAIN("TMPSER1")@($O(@$$^W4MAIN("TMPSER1")@(999999),-1)+1)=A
 Q
 ;
PORTBON(PORT) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D  Q:OK
 .N A S A=$G(^(N)) I +$P(A,"\",3)=+PORT S OK=1
 Q OK
 ;
TR(A) ;
 Q $TR(A,TSS,TS0)
 ;
DIVBUT ;
 W "<div id=""divbut"" align=""center"">",!
 W " <table dir="""_$$^%W1DIR_""">",!
  W " <tr>",!
    W "  <td onClick=""BOSearch('410')""><img src=""w4find.png"" ></td>",!
    W "  <td width=""20%"" >&nbsp;</td>",!
     W " <td>" D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"Print()","color:green;font-weight:bold","wh,22,,70") W "</td>",!
     W " <td width=""4%"" >&nbsp;</td>"
      I $G(%ARG("DAT")) D
      .W "<td>" D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT2SMALL"),"Print2Small()","color:green;font-weight:bold","wh,22,,170") W "</td>",!
      .W "<td width=""4%"" >&nbsp;</td>",!
     W " <td>" D ROUNDBUT^%W1JS("back",$$^%W1DICT("CLOSE"),"Back()","color:red;font-weight:bold","wh,22,,70") W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q 
 ;
 ; 
MDB(PORT) ; 
 I $$^W4PRNNM(PORT)["wacn" Q 1
 Q 0
 ;
MTBH(PORT) ; 
 I $$^W4PRNNM(PORT)'="" Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SERV
W4SERV ; [ 11.02.24 08:39 ] [ 09.02.24 07:21 ] [ 30.04.23 10:15 ] 
 ;
DELPRNFL ;
 K @$$^W4PC
 Q
 ;
LOADPRNPRG ;
 D ^W4RLD
 Q
 ;
CHECKPRN ;
 N N
 S N="" F  S N=$O(@$$PLUK@(N)) Q:N=""  I $G(@$$PLUK@(N,"LP")) S PORT=^("LP") D PC(PORT)
 I $D(@$$^W4PRM@("MDPMSL")) D
 .N MDPMSL S MDPMSL=$$MDPMSL^W4PRM
 .N I F I=1:1:$L(MDPMSL,",") S PORT=$P(MDPMSL,",",I) D PC(PORT)
 S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  S PORT=$P($G(^(N)),"\",3) I PORT D PC(PORT)
 Q
 ;
PC(PORT) ;
 Q:'$G(PORT)
 Q:'$D(@$$DEV@(PORT))
 ;
 I $G(PORT)>4,PORT<51!(PORT>54),'$D(PC41(PORT)) D
 .G MDP
 .ZSY "echo > "_@$$DEV@(PORT)
 .ZSY "echo > "_@$$DEV@(PORT)
 .S TXT="echo ""  PRINTER PORT: "_PORT_" "_@$$DEV@(PORT)_""" > "_@$$DEV@(PORT)
 .W !,TXT,!!
 .ZSY TXT
 .ZSY "echo -e ""\n\n\n\n\n\n\n\n"" > "_@$$DEV@(PORT)
 .S PC41(PORT)=""
 .Q
MDP .D OPN^P1PC(PORT) Q:'$G(OK)
 .D UDEV^P1PC(PORT)
 .W !!!,"PRINTER PORT : ",PORT," ",@$$DEV@(PORT),!!!!!!!!
 .N %MDP D TV^P1MDP(6)
 .D UDEV^P1PC(PORT) W %MDP("CUT"),!!! H 1
 .S PC41(PORT)="" D CLN^P1PC(PORT,1)
 Q
 ;
DEV(STAM) ;
 Q $$^W4GL("dev")
 ;
PLUK(STAM) ;
 Q $$^W4GL("PLUK")
 
 
 
 
 
 

W4SERVIC
W4SERV ; [ 23.10.09 17:37 ] [
 ;
DELPRNFL ;
 Q
LOADPRNPRG ;
 Q
CHECKPRN ;
 Q

W4SET
W4SET(PARMAIN,CD) ; [ 23.03.17 09:59 ] [ 20.03.17 11:28 ] [ 
 N REF S REF=$$REF^W4EZAT(PARMAIN)
 N SET,NSET,SETOK S SETOK=0
 I $E(REF)'="^" Q 0
 ;
 S SET="" F  S SET=$O(@REF@(SET)) Q:SET=""  D  Q:SETOK
 .S NSET=$E(SET,2,7) Q:NSET=""
 .I $D(@$$^W4GL("P1SETA")@(NSET,CD)) S SETOK=NSET
 ;
 Q SETOK
 
 
 
 
 
 

W4SET11
W4SET11 ; [ 17.06.26 11:04 ] [ 20.07.23 19:58 ] [ 11.12.22 18:04 ] 
 Q
 ;
US(%TXT) ;
 N OK,SH,MHMIN S OK=0,MHMIN=0
 I $$LV^W3HZMST(%TXT)=0,'$$^W4AIN D
 .N COD,QN,CMNT S COD=$$CD^W3HZMST(%TXT)
 .N MH S MH=$$MH^W3HZMST(%TXT)
 .S SH=$$LASTI0^W3HZMST(JB)
 .;
 .;;S ^AA("W4SET11-US","COD")=COD
 .;;S ^AA("W4SET11-US","SH")=SH
 .S QN=$$ITRA(COD,SH) ; -- KAMA NIMKAR KVAR PRITIM BE MIVZA
 .;;S ^AA("W4SET11-US","QN")=QN
 .;
 .I 'QN Q
 .S MHMIN=$P(QN,";",2),QN=+QN
 .;;S ^AA("W4SET11-US","MHMIN")=MHMIN
 .I MH<MHMIN S MHMIN=MH 
 .N BELONG S BELONG=$$BELONG11^W4TSF(COD,QN) Q:'$L(BELONG)
 .;;S ^AA("W4SET11-US","BELONG")=BELONG
 .N QNMVC S QNMVC=$P(BELONG,";",3) I 'QNMVC S QNMVC=1 ; -- KAMA MAGIA BE MIVZA
 .;;S ^AA("W4SET11-US","QNMVC")=QNMVC
 .I QN>0 S OK=QNMVC
 ;
 I OK,'$$CD11^W4PRM Q "NOIT4SALE11"
 Q OK_";"_MHMIN
 ;
 ;
UST(STAM)
 N TXT S TXT=$$LAST0^W3HZMST(JB)
 Q $$US(TXT)
 ;
SALE11(COD,QN) ;
 N BELONG S BELONG=$$BELONG11^W4TSF(COD,$G(QN))
 I BELONG["!",$L(BELONG)>2 Q 2  ; -- MIVZA RAK LE OTO PARIT
 I $L(BELONG)>1 Q $S($$OLDMVC11^W4PRM:0,1:1)
 Q 0
 ;
 ;
ITRA(COD,SH) ; --- KAMUT PRITIM SHE MAT'IMIM LE MIVZA 1+1 ( LELO SH  )
 N (JB,COD,SH)
 I $$^W4AIN Q ""
 N I,A,ITRA,QN,MH,ONLY
 N MVC,MVC1
 ;
 N BELONG11 S BELONG11=$$BELONG11^W4TSF(COD) ; -- LE EISE MIVZA SHAYAH COD
 ;;S ^AA("W4SET11-ITRA","BELONG11")=BELONG11
 ;
 N MHMVC S MHMVC=$P(BELONG11,";",2)
 N SALE11 S SALE11=$$SALE11(COD)
 ;;S ^AA("W4SET11-ITRA","SALE11")=SALE11
 I SALE11=2 S BELONG11=COD
 ;
 S ITRA=0,ONLY=0
 ;
 S I="" F  S I=$O(^[$$^W3MAIN]TMPORD(JB,I))  Q:I=""  I I D
 .S A=$G(^(I))
 .Q:$$LV^W3HZMST(A)'=0
 .;
 .S EX=0
 .I $$CMST11^W3HZMST(JB,I) D  Q:EX
 ..N CMNT S CMNT=$$CMST^W3HZMST(JB,I)
 ..I CMNT'[("{{"_BELONG11_"}}") Q
 ..I CMNT["[[" D  S EX=1
 ...N QNMVC S QNMVC=+$$SPA^%L1FRM($P(CMNT,"[[",2))
 ...K MVC S ITRA=0
 .
 .N CDST S CDST=$$CD^W3HZMST(A)
 .N ADJ S ADJ=$$ADJ11(CDST,COD,BELONG11)
 .Q:'ADJ  ; -- PARIT LO SHAYAH LE MIVCA
 .S QN=$$QN^W3HZMST(A)
 .S MH=$$MHP^W3HZMST(A)
 .S MVC(I)=MH
 .I $G(SH),I=SH Q  ; -- LO COLEL SHURA NOHEHIT
 .S ITRA=ITRA+QN
 ;
 ;;M ^AA("W4SET11-ITRA","MVC")=MVC
 ;
 N MHMIN S MHMIN=99999
 S I="" F  S I=$O(MVC(I))  Q:I=""  I I D
 .S MHST=MVC(I)
 .I MHST<MHMIN S MHMIN=MHST
 ;
 I MHMIN>9999 S MHMIN=0
 ;;S ^AA("W4SET11-ITRA","MHMIN0")=MHMIN
 S MHMIN=$S(MHMVC["%":MHMIN*(100-MHMVC)*.01,1:MHMIN-MHMVC)
 ;;S ^AA("W4SET11-ITRA","MHMIN")=MHMIN
 Q ITRA_";"_MHMIN ; --- KAMA PRITIM NIMKERU AD KAN BE MIVZA ; MH. MIN
 ;
 ;
SET(STAM) ;
 N SH0 S SH0=$$LASTI0^W3HZMST(JB) I 'SH0 Q "NOPREVITEMS"
 N CD S CD=$$CDST^W3HZMST(JB,SH0) I 'CD Q "NOCODEITEMS"
 N MH S MH=$$MHST^W3HZMST(JB,SH0)
 ;
 N QN S QN=$$ITRA(CD,SH0)
 ;
 ;;S ^AA("W4SET11-SET","SH0")=SH0
 ;;S ^AA("W4SET11-SET","CD")=CD
 ;;S ^AA("W4SET11-SET","MH")=MH
 ;;S ^AA("W4SET11-SET","QN")=QN
 ;
 N MHMIN S MHMIN=0
 I QN[";" S MHMIN=$P(QN,";",2),QN=+QN
 I MH<MHMIN S MHMIN=MH
 I MHMIN="" Q "NOPRCSALE"
 ;
 N RES S RES=$$BELONG11^W4TSF(CD,QN) Q:'$L(RES) -1
 ;;S ^AA("W4SET11-SET","RES")=RES
 N MHMVC S MHMVC=$P(RES,";",2)
 N QNMVC S QNMVC=$P(RES,";",3) I 'QNMVC Q -2
 ;
 N CDMVC S CDMVC=$$CD11^W4PRM I 'CDMVC Q -3
 N ST S ST="0~"_CDMVC_"~"_$$SHEM^W4P(CDMVC)_"~"_-MHMIN_"~1"
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1)+1
 D ADD^%L1GSEQ($$^W4TMPORD,LAST,ST,1)
 I RES["!" S RES=CD
 S ST="1~"_CDMVC_"-C0~"_$$CMNT11(QNMVC)_" {{"_RES_"}}"
 D ADD^%L1GSEQ($$^W4TMPORD,LAST+1,ST,1)
 Q 1
 ;
 ;
DEL(SH) ;
 Q:$$^W4AIN
 N CD,MH,LV,A,A7,QN,A0,END
 S A0=$G(@$$^W4TMPORD@(SH))
 S LV=$$LVST^W3HZMST(JB,SH) I LV Q
 ;
 S CD=$$CDST^W3HZMST(JB,SH)
 S MH=$$MHST^W3HZMST(JB,SH)
 S QN=$$QNST^W3HZMST(JB,SH) ; -- NEW
 ;
 I 'CD!'MH Q
 N BELONG11 S BELONG11=$$BELONG11^W4TSF(CD,QN)
 ;
 N OK S OK=0
 N NMB S NMB=$$NMB^W3HZMST(JB)
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 ;
 N LVST,MHST,CDST
 ;
 ;;I $$SALE11(CD),MH,$$ITRA(CD,SH)<1 D  ; -- 11/12/22
 ;
 I $$SALE11(CD) D
 .N SH1 S SH1=SH
 .F  S SH1=$O(@$$^W4TMPORD@(SH1)) Q:SH1=""  D:SH1  Q:OK
 ..S A=$G(^(SH1))
 ..;
 ..S LVST=$$LV^W3HZMST(A)
 ..S CDST=$$CD^W3HZMST(A) Q:'CDST
 ..S MHST=$$MHP^W3HZMST(A)
 ..
 ..N STNX S STNX=$G(@$$^W4TMPORD@(SH1+1))
 ..;
 ..I LVST=0,A0'["@@",STNX["[[",STNX["]]",STNX["+" D  S OK=1 Q
 ...I STNX["{{",$L($G(BELONG11)),STNX'[BELONG11 Q
 ...D DEL^%L1GSEQ($$^W4TMPORD,SH1)
 ...D DEL^%L1GSEQ($$^W4TMPORD,SH1)
 ..;
 ..;;I LVST=0,$$ADJ11(CDST,CD),'MHST D  ; -- 11.12.22
 ..;
 ..I LVST=0,A0["@@" D
 ...I $$CMST11^W3HZMST(JB,SH1) D
 ....S A7=$P(A,"~",7)
 ....N BITMVC S BITMVC="[[ ""1+1"" rvan lehia ]]"
 ....;
 ....I A7["[[",A7["]]" D  Q
 .....I A7["{{",$L($G(BELONG11)),A7'[BELONG11 Q
 .....S A7=$P(A7,"[[")_" "_BITMVC_" "_$P(A7,"]]",2,20)
 .....S $P(@$$^W4TMPORD@(SH1),"~",4)=0
 .....S $P(@$$^W4TMPORD@(SH1),"~",7)=A7,OK=1
 ....;
 ....S CMST=$G(@$$^W4TMPORD@(SH1+1))
 ....I $P(CMST,"~",2)["-C" D
 .....N CMNT S CMNT=$P(CMST,"~",3)
 .....;
 .....I CMNT["[[",CMNT["]]" D  Q
 ......I CMNT["{{",$L($G(BELONG11)),CMNT'[BELONG11 Q
 ......S CMNT=$P(CMNT,"[[")_" "_BITMVC_" "_$P(CMNT,"]]",2,20)
 ......S $P(@$$^W4TMPORD@(SH1),"~",4)=0,OK=1
 ......S $P(@$$^W4TMPORD@(SH1+1),"~",3)=CMNT
 Q
 ;
 ;
CMNT11(QN);
 S:'$G(QN) QN=1
 N CMNT S CMNT="[[ "
 S CMNT=CMNT_QN_"+1 rvan ]]"
 Q CMNT
 ;
ADJ11(CDST,CD,BELONG11) ;
 N ONLY S ONLY=0
 I $$SALE11(CD)=2 S ONLY=1
 ;
 I ONLY,CDST=CD,$$BELONG11^W4TSF(CDST)'="" Q 1
 I $L($G(BELONG11)),$$BELONG11^W4TSF(CDST)=BELONG11 Q 1  ; -- BLI KAMUT - RAK BDIKAT SHIUH
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SET110
W4SET11 ; [ 17.06.26 10:59 ] [ 20.07.23 12:12 ] [ 11.12.22 18:04 ] 
 Q
 ;
US(%TXT) ;
 N OK,SH,MHMIN S OK=0,MHMIN=0
 I $$LV^W3HZMST(%TXT)=0,'$$^W4AIN D
 .N COD,QN,CMNT S COD=$$CD^W3HZMST(%TXT)
 .N MH S MH=$$MH^W3HZMST(%TXT)
 .S SH=$$LASTI0^W3HZMST(JB)
 .;
 .S ^AA("W4SET11-US","COD")=COD
 .S ^AA("W4SET11-US","SH")=SH
 .S QN=$$ITRA(COD,SH) ; -- KAMA NIMKAR KVAR PRITIM BE MIVZA
 .S ^AA("W4SET11-US","QN")=QN
 .;
 .I 'QN Q
 .S MHMIN=$P(QN,";",2),QN=+QN
 .S ^AA("W4SET11-US","MHMIN")=MHMIN
 .I MH<MHMIN S MHMIN=MH 
 .N BELONG S BELONG=$$BELONG11^W4TSF(COD,QN) Q:'$L(BELONG)
 .S ^AA("W4SET11-US","BELONG")=BELONG
 .N QNMVC S QNMVC=$P(BELONG,";",3) I 'QNMVC S QNMVC=1 ; -- KAMA MAGIA BE MIVZA
 .S ^AA("W4SET11-US","QNMVC")=QNMVC
 .I QN>0 S OK=QNMVC
 ;
 I OK,'$$CD11^W4PRM Q "NOIT4SALE11"
 Q OK_";"_MHMIN
 ;
UST(STAM)
 N TXT S TXT=$$LAST0^W3HZMST(JB)
 Q $$US(TXT)
 ;
SALE11(COD,QN) ;
 N BELONG S BELONG=$$BELONG11^W4TSF(COD,$G(QN))
 I BELONG["!",$L(BELONG)>2 Q 2  ; -- MIVZA RAK LE OTO PARIT
 I $L(BELONG)>1 Q $S($$OLDMVC11^W4PRM:0,1:1)
 Q 0
 ;
 ;
ITRA(COD,SH) ; --- KAMUT PRITIM SHE MAT'IMIM LE MIVZA 1+1 ( COD )
 I $$^W4AIN Q ""
 N I,A,ITRA,QN,MH,ONLY
 N MVC,MVC1
 N BELONG11 S BELONG11=$$BELONG11^W4TSF(COD)
 ;;S ^AA("W4SET11-ITRA","BELONG11")=BELONG11
 N MHMVC S MHMVC=$P(BELONG11,";",2)
 N SALE11 S SALE11=$$SALE11(COD)
 ;;S ^AA("W4SET11-ITRA","SALE11")=SALE11
 I SALE11=2 S BELONG11=COD
 S ITRA=0,ONLY=0
 ;
 S I="" F  S I=$O(^[$$^W3MAIN]TMPORD(JB,I))  Q:I=""  I I D
 .I $G(SH),I=SH Q
 .S A=$G(^(I))
 .Q:$$LV^W3HZMST(A)'=0
 .
 .I $$CMST11^W3HZMST(JB,I) D
 ..N CMNT S CMNT=$$CMST^W3HZMST(JB,I)
 ..I CMNT'[("{{"_BELONG11_"}}") Q
 ..I CMNT["[[" D
 ...N QNMVC S QNMVC=+$$SPA^%L1FRM($P(CMNT,"[[",2))
 ...S MVC(I)="SALE*"_QNMVC
 .
 .N CDST S CDST=$$CD^W3HZMST(A)
 .N ADJ S ADJ=$$ADJ11(CDST,COD,BELONG11)
 .;;W "I="_I_" A="_A_"  CDST="_CDST_"  COD="_COD_" ADJ="_ADJ,! ; ***
 .Q:'ADJ
 .S QN=$$QN^W3HZMST(A)
 .S MH=$$MHP^W3HZMST(A)
 .S MVC(I)=MH_"*"_QN
 ;
 N I1 ;
 S I="" F  S I=$O(MVC(I))  Q:I=""  I I D  ; --- NIKUY PRITIM SHE HISHTATFU BE MIVZA KODEMET
 .I MVC(I)["SALE" D  K MVC(I)
 ..S I1="" F  S I1=$O(MVC(I1)) Q:I1=""  Q:I1'<I  K MVC(I1)
 ..Q
 ..
 ..S QN11=$P(MVC(I),"*",2)
 ..N MHP S MHP=$$MH^W4P($$CDST^W3HZMST(JB,I))
 ..N MHST,QNST
 ..S I1="" F  S I1=$O(MVC(I1)) Q:I1=""  Q:I1'<I  D
 ...S MHST=$P(MVC(I1),"*",1)
 ...S QNST=$P(MVC(I1),"*",2)
 ...I QNST>0 D
 ....I QN11<QNST S $P(MVC(I1),"*",2)=QNST-QN11,QN11=0 Q
 ....S QN11=QN11-QNST K MVC(I1)
 ;
 N MHMIN S MHMIN=99999
 S I="" F  S I=$O(MVC(I))  Q:I=""  I I D
 .S MHST=$P(MVC(I),"*",1)
 .I MHST<MHMIN S MHMIN=MHST
 .S QNST=$P(MVC(I),"*",2)
 .;;I MHST<$$MHST^W3HZMST(JB,SH) Q  ; -- 16/06/21
 .S ITRA=ITRA+QNST
 ;
 S MHMIN=$S(MHMVC["%":MHMIN*(100-MHMVC)*.01,1:MHMIN-MHMVC)
 Q ITRA_";"_MHMIN ; --- KAMA PRITIM NIMKERU AD KAN BE MIVZA ; MH. MIN
 ;
 ;
SET(STAM) ;
 N SH0 S SH0=$$LASTI0^W3HZMST(JB) I 'SH0 Q "NOPREVITEMS"
 N CD S CD=$$CDST^W3HZMST(JB,SH0) I 'CD Q "NOCODEITEMS"
 N MH S MH=$$MHST^W3HZMST(JB,SH0)
 N QN S QN=$$ITRA(CD,SH0)
 ;
 ;;S ^AA("W4SET11-SET","SH0")=SH0
 ;;S ^AA("W4SET11-SET","CD")=CD
 ;;S ^AA("W4SET11-SET","MH")=MH
 ;;S ^AA("W4SET11-SET","QN")=QN
 ;
 N MHMIN S MHMIN=0
 I QN[";" S MHMIN=$P(QN,";",2),QN=+QN
 I MH<MHMIN S MHMIN=MH
 I 'MHMIN Q "NOPRCSALE"
 ;
 N RES S RES=$$BELONG11^W4TSF(CD,QN) Q:'$L(RES) -1
 ;;S ^AA("W4SET11-SET","RES")=RES
 N MHMVC S MHMVC=$P(RES,";",2)
 N QNMVC S QNMVC=$P(RES,";",3) I 'QNMVC Q -2
 ;
 N CDMVC S CDMVC=$$CD11^W4PRM I 'CDMVC Q -3
 N ST S ST="0~"_CDMVC_"~"_$$SHEM^W4P(CDMVC)_"~"_-MHMIN_"~1"
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1)+1
 D ADD^%L1GSEQ($$^W4TMPORD,LAST,ST,1)
 I RES["!" S RES=CD
 S ST="1~"_CDMVC_"-C0~"_$$CMNT11(QNMVC)_" {{"_RES_"}}"
 D ADD^%L1GSEQ($$^W4TMPORD,LAST+1,ST,1)
 Q 1
 ;
 ;
DEL(SH) ;
 Q:$$^W4AIN
 N CD,MH,LV,A,A7,QN,A0,END
 S A0=$G(@$$^W4TMPORD@(SH))
 S LV=$$LVST^W3HZMST(JB,SH) I LV Q
 ;
 S CD=$$CDST^W3HZMST(JB,SH)
 S MH=$$MHST^W3HZMST(JB,SH)
 S QN=$$QNST^W3HZMST(JB,SH) ; -- NEW
 ;
 I 'CD!'MH Q
 N BELONG11 S BELONG11=$$BELONG11^W4TSF(CD,QN)
 ;
 N OK S OK=0
 N NMB S NMB=$$NMB^W3HZMST(JB)
 N LKHN S LKHN=$$LKHN^W3HZMST(JB)
 ;
 N LVST,MHST,CDST
 ;
 ;;I $$SALE11(CD),MH,$$ITRA(CD,SH)<1 D  ; -- 11/12/22
 ;
 I $$SALE11(CD) D
 .N SH1 S SH1=SH
 .F  S SH1=$O(@$$^W4TMPORD@(SH1)) Q:SH1=""  D:SH1  Q:OK
 ..S A=$G(^(SH1))
 ..;
 ..S LVST=$$LV^W3HZMST(A)
 ..S CDST=$$CD^W3HZMST(A) Q:'CDST
 ..S MHST=$$MHP^W3HZMST(A)
 ..
 ..N STNX S STNX=$G(@$$^W4TMPORD@(SH1+1))
 ..;
 ..I LVST=0,A0'["@@",STNX["[[",STNX["]]",STNX["+" D  S OK=1 Q
 ...I STNX["{{",$L($G(BELONG11)),STNX'[BELONG11 Q
 ...D DEL^%L1GSEQ($$^W4TMPORD,SH1)
 ...D DEL^%L1GSEQ($$^W4TMPORD,SH1)
 ..;
 ..;;I LVST=0,$$ADJ11(CDST,CD),'MHST D  ; -- 11.12.22
 ..;
 ..I LVST=0,A0["@@" D
 ...I $$CMST11^W3HZMST(JB,SH1) D
 ....S A7=$P(A,"~",7)
 ....N BITMVC S BITMVC="[[ ""1+1"" rvan lehia ]]"
 ....;
 ....I A7["[[",A7["]]" D  Q
 .....I A7["{{",$L($G(BELONG11)),A7'[BELONG11 Q
 .....S A7=$P(A7,"[[")_" "_BITMVC_" "_$P(A7,"]]",2,20)
 .....S $P(@$$^W4TMPORD@(SH1),"~",4)=0
 .....S $P(@$$^W4TMPORD@(SH1),"~",7)=A7,OK=1
 ....;
 ....S CMST=$G(@$$^W4TMPORD@(SH1+1))
 ....I $P(CMST,"~",2)["-C" D
 .....N CMNT S CMNT=$P(CMST,"~",3)
 .....;
 .....I CMNT["[[",CMNT["]]" D  Q
 ......I CMNT["{{",$L($G(BELONG11)),CMNT'[BELONG11 Q
 ......S CMNT=$P(CMNT,"[[")_" "_BITMVC_" "_$P(CMNT,"]]",2,20)
 ......S $P(@$$^W4TMPORD@(SH1),"~",4)=0,OK=1
 ......S $P(@$$^W4TMPORD@(SH1+1),"~",3)=CMNT
 Q
 ;
 ;
CMNT11(QN);
 S:'$G(QN) QN=1
 N CMNT S CMNT="[[ "
 S CMNT=CMNT_QN_"+1 rvan ]]"
 Q CMNT
 ;
ADJ11(CDST,CD,BELONG11) ;
 N ONLY S ONLY=0
 I $$SALE11(CD)=2 S ONLY=1
 ;
 I ONLY,CDST=CD,$$BELONG11^W4TSF(CDST)'="" Q 1
 I $L($G(BELONG11)),$$BELONG11^W4TSF(CDST)=BELONG11 Q 1  ; -- BLI KAMUT - RAK BDIKAT SHIUH
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SETASC
W4SETASC(PRM) ; [ 17.11.16 13:13 ] [ 16.11.16 18:37 ] [ 13.11.16 17:14 ] 
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4SETASC","PRM=PRM")
 S QNM=""
 I PRM[";" S QNM=$P(PRM,";",2),PRM=$P(PRM,";")
 ;
 S FROM=PRM I FROM="" Q "NOFROM"
 S TMPOLD="^[$$^W3MAIN]TMPORD(JB,""OLD"")"
 S STOLD=$G(@TMPOLD@(FROM)) I STOLD="" Q "NOSTOLD"
 S CDSUN=$$CD^W3HZMST(STOLD) I CDSUN="" Q "NOCDSUN"
 S NMSUN=$$NM^W3HZMST(STOLD)
 I '$G(QNM) S QN=$$QN^W3HZMST(STOLD) S:'QN QN=1
 I $G(QNM) S QN=QNM
 S ASCWORD="jeiy"
 ;
 S I=0,STCMNT="1~"_CDSUN_"-C0~"_ASCWORD,SDV=1,STSF=0
 S N=FROM F J=1:1 S N=$O(@TMPOLD@(N)) Q:N=""  S A=$G(^(N)) Q:$P(A,"~")=0  I N D
 .S A=$G(^(N))
 .I J=1,$$CDC^W3HZMST(A) D  Q
 ..I $P(A,"~",3)'[ASCWORD D
 ...S $P(A,"~",3)=$P(A,"~",3)_" [ "_ASCWORD_" ]"
 ..S STCMNT=A,SDV=0
 .
 .S I=I+1
 .S STOLD(I)=A
 .S STSF=STSF+$$MHP^W3HZMST(A)
 ;
 N STPAR0 S STPAR0=$$GETP^%W1PRM("STPAR0") I STPAR0="" Q "NOSTPAR0"
 S CDMAIN=$$CD^W3HZMST(STPAR0) I CDMAIN="" Q "NOCDMAIN"
 S NMMAIN=$$NM^W3HZMST(STPAR0)
 ;
 S NSFROM=$$NS^W4BDAI(CDMAIN,CDSUN) I NSFROM="" Q "NONSFROM"
 S TMPORD=$$^W4TMPORD
 ;
 I '$$^W4BDAIA(CDSUN,QN) Q "ITSNOTSUITLUNCH"
 ;
 S MHT=$J($$MHT^W4HZTSF(CDMAIN,CDSUN),2,2)
 ;
 D CHNOLD(FROM,$G(QNM))
 ;
 S STN="0~"_$P(STOLD,"~",2,7)
 I $G(QNM) S $P(STN,"~",5)=QNM
 S $P(STN,"~",4)=MHT
 S $P(STN,"~",6)=""
 S $P(STN,"~",12)=$P(STOLD,"~",12) ; @@@
 S $P(STN,"~",13)=$P(STOLD,"~",13) ;  - "HZ"
 ;
 ;
 S OK=0,N1=0
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D  Q:OK
 .S A=$G(^(N)),N1=N
 .I $P(A,"~",2)=("A"_NSFROM) D  S OK=1 Q
 ..D ADDTOAI(N+1)
 ..D SDVIG(N+1,1+SDV+$O(STOLD(999),-1))
 ;
 I 'OK D  ;--- GROUP FOR NEW ITEM NOT FOUND
 .D ADD^%L1GSEQ(TMPORD,N1+1,"0~A"_NSFROM_"~"_$$NMSET^W3SET(NSFROM))
 .D ADDTOAI(N1+2)
 .D SDVIG(N1+1,2+SDV+$O(STOLD(999),-1))
 ;
 Q 1
 ;
 ;
CHNOLD(FROM,QNM) ;
 N SH0,OK,I,A,CDASC
 D CHNTMPOLD(FROM,$G(QNM))
 ;
 S SH0="",OK=0
 ;
 F I=1:1 Q:'$D(@TMPOLD@(I))  D  Q:OK
 .S A=$G(^(I)) I $P(A,"~")=0 S SH0=SH0+1
 .I $L($$GETP^%W1PRM("SHID0")),I=+$E($$GETP^%W1PRM("SHID0"),3,5) S OK=1
 ;
 I 'OK S SH0=SH0+1
 ;
 S @TMPOLD@("TOAI",FROM)=CDSUN_"~"_QN_"~"_CDMAIN_"~"_$$MHP^W3HZMST(STOLD)_"~"_MHT_"~"_STSF_"~"_SH0_"~"_$$GETP^%W1PRM("MLZR")
 D PUT^%W1PRM("WASTOAI",1)
 Q
 ;
 ;
ADDTOAI(N) ;
 N CDASC,BG S BG=1
 S CDASC=+$$TOAICD^W4PRM
 D ADD^%L1GSEQ(TMPORD,N,STN)
 ;
 I $L($G(STCMNT)) D
 .S $P(STCMNT,"~",12,13)="@@@!~HZ"
 .D ADD^%L1GSEQ(TMPORD,N+1,STCMNT)
 .I SDV=0 D
 ..N CDSUN,NMSUN S CDSUN="",NMSUN=$$NMST^W3HZMST(JB,FROM+1,TMPOLD)
 ..D CHNTMPOLD(FROM+1)
 ;
 N I,CDSUN,NMSUN,STN,STO
 F I=BG:1 Q:'$D(STOLD(I))  D
 .S STO=$G(STOLD(I))
 .S STN=$P(STO,"~",1,7)
 .S $P(STN,"~",6)=""
 .S $P(STN,"~",12)=$P(STO,"~",12) ; @@@
 .S $P(STN,"~",13)=$P(STO,"~",13) ;  - "HZ"
 .D ADD^%L1GSEQ(TMPORD,N+I+1,STN)
 .
 .S CDSUN=$$CD^W3HZMST(STO)
 .S NMSUN=$$NM^W3HZMST(STO)
 .N IND S IND=FROM+I+(SDV=0)
 .D CHNTMPOLD(IND)
 Q
 ;
 ;
CHNTMPOLD(IND,QNM) ;
 I $G(QNM)>0 D  Q
 .N ST S ST=$G(@TMPOLD@(IND))
 .S $P(ST,"~",5)=$P(ST,"~",5)-QNM
 .I $L(CDSUN) S $P(ST,"~",7)=NMMAIN_" "_CDMAIN_" -l "_$S(QNM=1:"cg` hixt",1:"mihixt "_QNM)_" jeiy"
 .S @TMPOLD@(IND)=ST
 ;
 N CDASC S CDASC=+$$TOAICD^W4PRM
 N TO I $G(CDSUN) S TO=NMMAIN_" "_CDMAIN_" -l """_NMSUN_""" jeiy"
 I '$G(CDSUN) S TO=NMSUN
 S $P(@TMPOLD@(IND),"~",2,3)=CDASC_"~"_TO
 S $P(@TMPOLD@(IND),"~",4)=""
 S $P(@TMPOLD@(IND),"~",5)=QN
 S $P(@TMPOLD@(IND),"~",12,13)="@@@!~HZ"
 Q
 ;
SDVIG(FROM,STEP) ;
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1)
 N K F K=LAST:-1:FROM D
 .D OUTIND^W4SRVTO($$^W4TMPORD,K,$$^W4TMPORD,K+STEP,1)
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4SETCH
W4SETCH(CODDOC,NUMBER) ; [ 28.06.14 08:55 ] [ 27.06.14 18:38 ] [
 N (JB,%ARG,%REM,CODDOC,NUMBER)
 I $G(CODDOC)="" Q
 I '$G(NUMBER) Q
 I $G(CODDOC)="HZ" D CHHZ(NUMBER) Q
 ;
 N GLCB S GLCB=$$GLCB^W4LCBCR(NUMBER)
 ;
 N HESH,BSN,NCHECK,TZ,CHS,DAT,DATP
 N KUP S KUP=901
 N DT S DT=$$^W4DZ
 S DAT=$ZD(DT,"YYMMDD")
 ;
 N N S N="" F  S N=$O(@GLCB@(N)) Q:N=""  I N D
 .S HESH=$$HESH^W4LCBCR(NUMBER,N)
 .S BANK=$$BANK^W4LCBCR(NUMBER,N)
 .S SNIF=$$SNIF^W4LCBCR(NUMBER,N)
 .S BSN=$TR($J(BANK,2)," ",0)_$TR($J(SNIF,3)," ",0)
 .S NCHECK=$$CHK^W4LCBCR(NUMBER,N)
 .S DATP=$$DATPR^W4LCBCR(NUMBER,N)
 .S TZ=$$TZ^W4LCBCR(NUMBER,N)
 .S CHS=$$SUM^W4LCBCR(NUMBER,N)
 .S HZM=NUMBER
 .D ^W4CH
 Q
 Q
 ;
 ;
CHHZ(NUMBER) ;
 N HZM S HZM=+NUMBER
 N HESH,BSN,NCHECK,TZ,CHS,DAT,DATP
 N KUP S KUP=901
 N DT S DT=$$^W4DZ
 S DAT=$ZD(DT,"DD.MM.YY")
 ;
 I '$D(@$$^W4ORD@(HZM,"CB","CH")) Q
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","CH",N)) Q:N=""  D
 .S HESH=$$GET^W4GTVCH(HZM,N,"CH","HESH")
 .S BSN=$$GET^W4GTVCH(HZM,N,"CH","BSN")
 .S NCHECK=$$GET^W4GTVCH(HZM,N,"CH","NCHECK")
 .S DATP=$$GET^W4GTVCH(HZM,N,"CH","DATP")
 .S TZ=$$GET^W4GTVCH(HZM,N,"CH","TZ")
 .S CHS=$$GET^W4GTVCH(HZM,N,"CH","CHS")
 .D ^W4CH
 Q

W4SETCHP
W4SETCHP(HZM) ; [ 14.07.23 06:52 ] [ 13.07.23 09:40 ] [ 17.02.21 18:01 ] 
 N (JB,%ARG,%REM,HZM)
 S N="" F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S CD=$P(A,"\") Q:'CD  Q:'$$^W4EZAT(CD)
 . ;
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N,N1)) Q:N1=""  I N1 D
 ..S B=$G(^(N1))
 ..S C=$P(B,"\",4)
 ..I C'["I",C'["V",C'["X" D
 ...S CHP=$$DEFCHP(CD,N1) I 'CHP Q
 ...S $P(@$$^W4ORD@(HZM,N,N1),"\",4)=$$GETI^W4DEFMN(CHP)
 Q
 ;
 ;
DEFCHP(CD,CDT) ;
 N (JB,CD,CDT)
 S HZM=$$GETP^%W1PRM("HZM")
 S CHP=""
 S P1SETA=$$GLSET($G(HZM))
 I $G(CD)=""!($G(CDT)="") Q ""
 N REF S REF=$$REF^W4EZAT(CD) I REF="" Q ""
 S SET="" F  S SET=$O(@REF@(SET)) Q:SET=""  D  Q:CHP
 .S NS=$E(SET,2,10)
 .I $D(@P1SETA@(NS,CDT)) S CHP=+$G(@REF@(SET))
 Q CHP
 ;
 ;
GLSET(HZM) ;
 Q $$^W4GLSET($G(HZM))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SETENG
W4SETENG ; [ 08.06.23 13:25 ] [ 02.02.16 11:57 ] [ 
 D PUT^%W1PRM("ABCLNG","E")
 D PUT^%W1PRM("ABCCAPS","1")
 Q
 
 

W4SETHN1
W4SETHN1(HZM) ; [ 12.12.21 18:45 ] [ 29.08.13 06:28 ] [ 27.08.13 23:36 ] 
 N HN,SHN
 S HN=$$HNH^W4HZMST(HZM)
 S SHN=$$SHNH^W4HZMST(HZM)
 I HN>.5!(HN<-.5),'$D(@$$^W4ORD@(HZM,"CB","HNH1")) D
 .D SETIND^W4HZMST(HZM,"HNH1",$$NEWIND^W4HZMST(HZM,"HNH1"),(HN-SHN)_"*"_$H_"*AUTO")
 ;
 N MZ,SMZ
 S MZ=$$MZM^W4HZMST(HZM)
 S SMZ=$$SMZ^W4HZMST(HZM)
 I MZ>.5!(MZ<-.5),'$D(@$$^W4ORD@(HZM,"CB","MZ")) D
 .D SETIND^W4HZMST(HZM,"MZ",$$NEWIND^W4HZMST(HZM,"MZ"),$J(MZ-SMZ,2,2)_"*"_$H_"*AUTO")
 Q
 

W4SETMIK
W4SETMIK ; [ 06.08.23 05:35 ] [ 03.06.21 05:40 ] [ 02.06.21 08:02 ] 
 N (JB,%ARG,SRCH)
 I '$G(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4SETMIK","%ARG=[%ARG")
 ;
 D GL
 ;
 I $G(%ARG("FIRST")) D
 .D
 ..K @GL
 ..M @GL=@$$GLSET
 ;
 W "<div align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""">",!
 W " <tr style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_";text-align:center"" >"
  W " <td "
   W "colspan=""3"" "
  W ">"
   W $$^%W1DICT($$HD)
  W "</td>"
 W "</tr>",!
 ;
 W "</table>",!
 ;
 ;
 W "<table id=""TblSet"" dir="""_$$^%W1DIR_""" border=""1"" "
  W " cellspacing=""0"" width=""100%"" "
  W " style=""background-color:white;color:black"" "
 W ">",!
 ;
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
  W "<th >"_$$^%W1DICT("ITEMCODE")_"</th>"
  W "<th >"_$$^%W1DICT("ITEMNAME")_"</th>"
  W "<th >"_$$^%W1DICT("PRICE")_"</th>"
  D
  .N HD S HD="QNMEATG"
  .I $$TIME S HD="ITTIME" 
  .W "<th >"_$$^%W1DICT(HD)_"</th>"
  ; 
  W "<th >"_$$^%W1DICT("SIGN2DELETE")_"</th>"
 W "</tr>",!
 ;
 N N,I
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .W "<tr id=""trset"_N_""" >"
 .W "<td>&nbsp;"_N_"&nbsp;</td>",!
 .
 .W " <td align=""center"" width=""40%"" >&nbsp;"
 . W " <span id=""name"_N_""">"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</span>"
 .W " &nbsp;</td>",!
 .
 .W "<td align=""center"" dir=""LTR"">"
 . W $J($$MH^W4P(N),2,2)
 .W "</td>",!
 .
 .W "<td align=""center"" dir=""LTR"" >"
 . W " <input type=""text"" id=""qnset"_N_""" size=""4"" value="""_$$QNSET(N)_""" dir=""LTR"" style=""text-align:center""  onClick=""this.select()"" />"
 .W "</td>",!
 .
 .N ID,PROC S ID="chset"_N
 .S PROC="OnClickTbl('"_N_"','TblSet','trset','chset')"
 .D ^W4TDCHBX(ID,PROC)
 .
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GL S GL="^[$$^W3MAIN]TMPSET($$^%W1JB)"
 Q
 ;
GL1 S GL1="^[$$^W3MAIN]TMPSET1($$^%W1JB)"
 Q
 ;
 ;
SAVE(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 ;
 S ST=PRM
 S CD=$$SPA^%L1FRM($P(ST,";"))
 S QN=$$SPA^%L1FRM($P(ST,";",2))
 D SETQN(CD,QN)
 ;
 Q 1
 ;
 ;
SAVEND(PRM) ;
 D PUT^%W3DEB("W3SETIDK-SAVEND","PRM=PRM")
 S PRM=$$CLEAR^%L1FRM(PRM)
 N MAX,SETKIND
 D GL
 ;
 N GLSET S GLSET=$$GLSET
 I $D(@GL)<10 Q 0
 K @GLSET M @GLSET=@GL
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S @(GLSET_"I")@(N)=""
 K @GL,@GL1
 ;
 Q 1
 ;
 ;
SETQN(CD,QN) S @$$GLSET@(CD)=QN
 Q
 ;
MVPR2KV(PRM) ;
 D PUT^%W3DEB("W4SETMIK-MVPR2KV","PRM=PRM")
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL
 S PRM=$E(PRM,1,$L(PRM)-1)
 ;;W "SET="_SET_"  PRM="_PRM,!
 N OK,NP S OK=0
 I PRM="" Q "0:NOPRM"
 ;
 S NP=0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@$$^W4GL("PAR")@(CD))
 .S NP=NP+1,OK=1
 .S @GL@(CD)=NP
 Q OK
 ;
 ;
EXIST(NP,CD)
 N OK S OK=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .I $G(^(N))=NP,N'=CD S OK=1
 Q OK
 ;
MVKV2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GL D CRGL1
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .N NP S NP=+$G(@GL@(CD))
 .K @GL@(CD) S OK=1
 D CRGL1
 Q OK
 ;
GROUP ;
 D GROUP^W3SETIDK
 Q
 ;
QNSET(PAR) ;
 N A S A=+$G(@$$GLSET@(PAR))
 Q A
 ;
 ;
CRGL1 ;
 D GL,GL1 K @GL1
 N N,NP,I S I=1,NP=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S NP=NP+1,@GL1@(NP)=N
 ;
 Q
 ;
 ;
INIT ;-- IF FIRST
 K MSD D ^%W1ARG
 D CLR
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 D KILL^%W1PRM("ITEMTIME")
 I $G(%ARG("TIME")) D PUT^%W1PRM("ITEMTIME",1)
 Q
 ;
GLSET(STAM) ;
 I $$TIME Q $$^W4GL("W4ITTIME")
 Q $$^W4GL("W4SETMT")
 ;
CLR ;
 D GL,GL1
 K @GL,@GL1
 Q
 ;
TIME(STAM) ; 
 Q +$$GETP^%W1PRM("ITEMTIME") 
 ;
HD(STAM) ;
 N HD S HD="SETMEATTABLE"
 I $$TIME S HD="ITEMTIMELIST"
 Q HD
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SETMLY
W4SETMLY(DT,VDOC,ORG,NOM,DEL) ; [ 11.04.24 05:26 ] [ 04.02.24 15:42 ] [ 08.08.23 17:48 ] 
 N (JB,%ARG,%REM,DT,VDOC,ORG,NOM,DEL)
 I $G(VDOC)="IHZ" Q
 S DEL=$G(DEL)
 S ZN=1 I DEL S ZN=-1
 S NOM=+$G(NOM)
 I VDOC="ITK",'ORG S ORG=0
 D DEFGL(VDOC,ORG)
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 ;;D PUT^%W3DEB("W4SETMLY","DT=DT & VDOC=VDOC &ORG=ORG & NOM=NOM &DEL=DEL &GL=GL")
 F I="DT","VDOC","NOM" D
 .S ^AA("W4SETMLY",I)=@I
 ;
 I VDOC="IHB"!(VDOC="IHBZ"),$D(@GL@(NOM,"ITM"))!$D(@GL@(NOM,"ITZ")) Q
 ;
 S GLP=$$^W4GL($$GLP^W4PRT)
 ;
 S N="" F  S N=$O(@GL@(NOM,N)) Q:N=""  I N D
 .S A=$G(^(N)) S PAR=$P(A,"\") Q:PAR=""  Q:$E(PAR)="~"
 .I GLP="PAR",'$$INP(VDOC),'$$ONEGLPAR^W3PRM,$$GETP^%W1PRM("PRKUP") S PAR=$$^W4PK(PAR,1) Q:PAR=""
 .S QNI=$P(A,"\",4)
 .S QNM=QNI
 .S SUG="O"
 .;
 .I $$INP(VDOC) D
 ..S ^AA("W4SETMLY",PAR,"A")=A
 ..S EM=$P(A,"\",7) S:'EM EM=1
 ..I VDOC="ITK" S QNI=$P(A,"\",5)-$P(A,"\",4)
 ..S KF=$$KF(PAR,EM) S:'KF KF=1
 ..D PUT^%W3DEB("W4SETMLY","PAR=PAR&EM=EM&KF=KF&A=A")
 ..S QNM=QNI*KF
 ..S ^AA("W4SETMLY",PAR,"QNM")=QNM
 ..S SUG="I"
 .
 .S QNM=QNM*ZN
 .S NR=$$NR(VDOC)
 .;
 .I $$INP(VDOC),QNM>0,NR=1!(NR=4) D
 ..I NR=4 S KF=1
 ..Q:'DT
 ..S MH=$P(A,"\",3)
 ..S DISC=$P(A,"\",5) I NR=4 S DISC=""
 ..S MH=$J(MH/KF,3,3)
 ..N DO S DO=$O(@GLSP@(ORG,"MH",PAR,DT+.1),-1)
 ..N MHO,DISCO S MHO="",DISCO="" I DO D
 ...S MHO=$$MH^W4MLLAST(ORG,PAR,DO)
 ...S DISCO=$$DISC^W4MLLAST(ORG,PAR,DO)
 ..I $J(MH,2,2)'=$J(MHO,2,2)!($J(DISC,2,2)'=$J(DISCO,2,2)) D
 ...S @GLSP@(ORG,"MH",PAR,DT)=MH_"\"_VDOC_"\"_NOM_"\"_DISC
 ...D SETSPKMH^W4SPKMH(ORG,PAR,DT,$J(MH,2,2)_"\\"_$J(DISC,2,2),VDOC,NOM)
 ..D
 ...N MHER S MHER=$$MLMHER^W4MLPRT(PAR)
 ...N ITRA S ITRA=$$MLITRA^W4MLPRT(PAR)
 ...I ITRA+QNM S MHER=(MHER*ITRA+(QNM*MH*(100-DISC)*.01))/(ITRA+QNM)
 ...S $P(@$$^W4GL("MLPAR")@(PAR,1),"\",7)=MHER ; -- W4SETMLY
 ...I '$$NEXT(PAR,DT) D
 ....S $P(@$$^W4GL("MLPAR")@(PAR,1),"\",10)=MH
 .
 .D SETMLY(NR,DT,PAR,SUG,ORG,VDOC,NOM,QNM)
 .
 .I $G(DT) S @VRM@(PAR,DT)=""
 .
 .D SETPAR(PAR,A)
 .
 ;
 ;
 N DT1
 S PAR="" F  S PAR=$O(@$$^W4MAIN("VRM")@(PAR)) Q:PAR=""  D
 .Q:$E(PAR)="~"
 .D ^%S3GLSV(GLML_"("""_PAR_""")",$$^W4FGIB)
 .S DT1="" F  S DT1=$O(@$$^W4MAIN("VRM")@(PAR,DT1)) Q:DT1=""  D
 ..D ^%S3GLSV(GLMLY_"("""_DT1_""","""_PAR_""")",$$^W4FGIB)
 ;
 K @VRM
 Q
 ;
 ;
KF(CODE,EM2)
 I $G(CODE)="" Q 1
 I $G(EM2)="" Q 1
 N EM1 S EM1=$$P^W4MLPRT("EMSFR")
 I 'EM1 S EM1=1
 Q $$NEWKF^W4PRT(EM2,EM1)
 ;
INP(VDOC) ;
 I $E(VDOC)="I" Q 1
 Q 0
 ;
GL(VDOC,ORG) ;
 I VDOC="ITK" Q $$GL^W4TKDOC1
 I $$INP(VDOC) Q $$^W4GL("W4INP")_"("""_ORG_""","""_VDOC_""")"
 Q $$^W4GL("W4DOC")
 ;
 ;
SETMLY(NR,DT,PAR,SUG,ORG,VD,NOM,QNM) ;
 N GL,GLMLY,GLML,GLSP,QNEZM
 I PAR["-T" S PAR=$P(PAR,"-T")
 I $G(DT)=""!($G(PAR)="")!($G(SUG)="")!($G(ORG)="")!($G(NOM)="") Q
 ;
 D DEFGL(VD,ORG)
 ;
 S @GLMLY@(DT,PAR,SUG,ORG,VD,NOM)=$G(@GLMLY@(DT,PAR,SUG,ORG,VD,NOM))+QNM
 S $P(@GLMLY@(DT,PAR),"*",NR)=$P($G(@GLMLY@(DT,PAR)),"*",NR)+QNM
 ;
 D SETML(NR,DT,PAR,SUG,ORG,VD,NOM,QNM)
 ;
 I $D(@GLEZM@(PAR)) D
 .N PRTML,KUP,NOMTD
 .N MANA S MANA=+$G(@GLEZM@(PAR)) I 'MANA S MANA=1
 .S PRTML="" F  S PRTML=$O(@GLEZM@(PAR,PRTML)) Q:PRTML=""  D
 ..N A S A=$G(^(PRTML))
 ..S KUP=99999,NOMTD=$ZD(DT,"YYMMDD")
 ..S QNEZM=$$QNONE^W4EZM(PAR,PRTML)
 ..D SETMLY(NR,DT,PRTML,SUG,KUP,"OUT",NOMTD,QNM*QNEZM) ;
 ;
 Q
 ;
 ;
SETML(NR,DT,PAR,SUG,ORG,VD,NOM,QNM) ;
 I $G(DT)=""!($G(PAR)="")!($G(SUG)="")!($G(ORG)="")!($G(NOM)="") Q
 N GL,GLMLY,GLML,GLSP D DEFGL(VD,ORG)
 ;
 S IND=$O(^AA("W4SETMLY-SETML","QNM",PAR,9999),-1)+1
 ;;S ^AA("W4SETMLY-SETML",PAR,"QNM",IND)=QNM
 S $P(@GLML@(PAR),"*",NR)=$P($G(@GLML@(PAR)),"*",NR)+QNM
 ;
 S @GLML@(PAR,DT,SUG,ORG,VD,NOM)=""
 S @GLMLS@(PAR,SUG,DT,ORG,VD,NOM)=""
 ;
 I $G(SUG)="I" D
 .S $P(@GLSP@(ORG,"D",DT,PAR),"*",NR)=$P($G(@GLSP@(ORG,"D",DT,PAR)),"*",NR)+QNM
 .S @GLSP@(ORG,"D",DT,PAR,VD,NOM)=""
 .S @GLSP@(ORG,"P",PAR,DT,VD,NOM)=""
 Q
 ;
 ;
GETMLY(DT,PAR,NR,SUG,ORG,VD,NOM) ;-- FOR DAY
 I $G(PAR)="" Q ""
 N MLY,GLMLY,GLSP
 D DEFGLM
 S NR=$G(NR)
 ;
 I $G(DT)="" Q ""
 ;
 I $G(ORG)=""!($G(SUG)=""),$D(@GLMLY@(DT,PAR))#2 D  Q MLY
 .I 'NR S MLY=$G(@GLMLY@(DT,PAR)) Q
 .E  S MLY=$P($G(@GLMLY@(DT,PAR)),"*",NR)
 ;
 I $G(ORG)'="",$G(SUG)="I",$G(VD)=""!($G(NOM)="") D  Q MLY
 .I 'NR S MLY=$G(@GLSP@(ORG,"D",DT,PAR)) Q
 .S MLY=$P($G(@GLSP@(ORG,"D",DT,PAR)),"*",NR)
 ;
 I $G(SUG)=""!($G(ORG)="")!($G(VD)="")!($G(NOM)="") Q ""
 ;
 S MLY=+$G(@GLMLY@(DT,PAR,SUG,ORG,VD,NOM))
 Q MLY
 ;
 ;
ITRA(DT,PAR) ;
 N A,ITRA
 S A=$$^W4GETMLY(PAR,DT)
 S ITRA=$P(A,"*",1)+$P(A,"*",4)-$P(A,"*",2)-$P(A,"*",3)
 Q ITRA
 ;
 ;
DEFGL(VD,ORG) ;
 S GL=$$GL(VD,ORG)
 D DEFGLM
 Q
 ;
GLMLY(STAM) Q $$^W4GL("W4MLY")
 ;
GLML(STAM) Q $$^W4GL("W4ML")
 ;
GLMLS(STAM) Q $$^W4GL("W4MLS")
 ;
GLSP(STAM) Q $$^W4GL("W4MLSP")
 ;
GLEZM(STAM) Q $$^W4GL("MLEZM")
 ;
DEFGLM ;
 S GLMLY=$$GLMLY
 S GLML=$$GLML
 S GLMLS=$$GLMLS
 S GLSP=$$GLSP
 S GLEZM=$$GLEZM
 Q
 ;
 ;
DELDOC(VD,ORG,NOM) ;
 D ^W4HSBGET(NOM,VD,ORG)
 S DT=$G(W4HSB("DT")) Q:'DT
 S SUG=$S(VD="I":"I",1:"O")
 D DEFGL(VD,ORG)
 I VD="IHB"!(VD="IHBZ"),$D(@GL@(NOM,"ITM")) Q
 ;
 D W4SETMLY(DT,VD,ORG,NOM,1)
 ;
 S SH="" F  S SH=$O(@GL@(NOM,SH)) Q:SH=""  I SH D
 .S A=$G(^(SH)),PAR=$P(A,"\") Q:PAR=""
 .K @GLMLY@(DT,PAR,SUG,ORG,VD,NOM)
 .K @GLML@(PAR,DT,SUG,ORG,VD,NOM)
 .K @GLMLS@(PAR,SUG,DT,ORG,VD,NOM)
 .K @GLSP@(ORG,"D",DT,PAR,VD,NOM)
 .K @GLSP@(ORG,"P",PAR,DT,VD,NOM)
 .S A=$G(@GLSP@(ORG,"MH",PAR,DT))
 .I $P(A,"\",2)=VD,$P(A,"\",3)=NOM D
 ..K @GLSP@(ORG,"MH",PAR,DT)
 Q
 ;
 ;
NR(VD) ;
 I $G(VD)="" Q ""
 I VD="ITM"!(VD="IHB") Q 1
 I VD="OUT" Q 2  ; -- MHIRA
 I VD="ORD" Q 2
 I VD="ITZ"!(VD="IHBZ") Q 3  ; -- ZIKUY
 I VD="ITK" Q 4  ; -- IDKUN MLAY
 Q ""
 ;
 ;
FULLREST ;-- ALL
 D MLY^W4MLREST
 Q
 ;
FULLREST1 ; -- ALL WITHOUT ^W4MLY
 N W4RESTML
 S W4RESTML=""
 D MLY^W4MLREST
 Q
 ;
MLREST ;--- W4MLY --> W4ML,W4MLS,W4MLSP
 D ML^W4MLREST
 Q
 ;
SETPAR(PAR,A)
 N EMHZ,EMSFR,GLP
 S EMHZ=$P(A,"\",7)
 S GLP=$$^W4GL("MLPAR")
 ;
 I $G(@GLP@(PAR))="" D
 .N NAME S NAME=$P(A,"\",2) Q:NAME?.P  S @GLP@(PAR)=NAME
 .I $$ONEGLPAR^W3PRM D PUT^W4P(PAR,"NAME",NAME)
 ;
 I $P($G(@GLP@(PAR,1)),"\",2)="",$G(@GLP@(PAR))'="" D  ; -- EMHZM
 .I EMHZ="" S EMHZ=1
 .S $P(@GLP@(PAR,1),"\",2)=EMHZ
 ;
 I $P($G(@GLP@(PAR,1)),"\",3)="",$G(@GLP@(PAR))'="",$L(EMHZ) D  ; -- EMHZM
 .S EMSFR=$$EM(EMHZ)
 .S $P(@GLP@(PAR,1),"\",3)=EMSFR
 ;
 Q
 ;
EM(EMHZ) ;
 I $G(EMHZ)="" Q 1
 N NMD S NMD=$G(@$$^W4GL("MLMIDA")@(EMHZ))
 I NMD="" Q 1
 N N,GLMD,MD S GLMD=$$^W4GL("MLMIDA")
 S MD=""
 I NMD["xhil" D
 .S N="" F  S N=$O(@GLMD@(N)) Q:N=""  I $G(^(N))="xhil" S MD=N Q
 I NMD["eliw"!(NMD["b""w") D
 .S N="" F  S N=$O(@GLMD@(N)) Q:N=""  I $G(^(N))="eliw"!($G(^(N))="b""w") S MD=N Q
 I MD="" Q 1
 Q MD
 ;
NEXT(PAR,DT) ; 
 Q $O(@GLMLS@(PAR,"I",DT))
 ;
 N OK S OK=0
 N N S N=DT F  S N=$O(@GLML@(PAR,N)) Q:N=""  D  Q:OK
 .I $D(@GLML@(PAR,N,"I")) S OK=1 
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SETNMH
W4SETNMH(CODE,NAME,MH) ; [ 13.08.14 17:12 ] [ 05.08.14 06:56 ] [ 04.08.14 18:09 ]
 I $G(CODE)="" Q
 I $G(NAME)="" Q
 I '$$ONEGLPAR^W3PRM Q
 ;
 S @$$^W4GL("MLPAR")@(CODE)=NAME
 I MH'["%" S MH=$J(MH,2,2)
 D PUT^W4P(CODE,"NAME",NAME)
 D PUT^W4P(CODE,"MH",MH)
 Q

W4SETPC
W4SETPC(PRINT,TXT) ; [ 24.09.13 09:19 ] [ 08.09.11 14:04 ] [ 05.11.09 12:07 ]
 ;S PRINT=+$G(PRINT)
 Q:'$G(PRINT)
 I PRINT=0 S PRINT=-1
 S @$$^W4PC@(PRINT,$O(@$$^W4PC@(PRINT,99999),-1)+1)=TXT
 Q

W4SETPIZ
W4SETPIZ(STPAR) ; [ 26.04.20 14:06 ] [ 23.06.14 14:15 ] [ 14.06.14 19:08 ] [
 N SET S SET=$P($G(STPAR),";") I $E(SET)'="A" Q 0
 I SET="" Q 0
 N NM S NM=$G(@$$^W4GL("P1SETA")@($E(SET,2,6)))
 I NM["[]" Q 4
 I NM'["()",NM'[")(" Q 0
 Q 2
 

W4SETSUG
W4SETSUG(OV) ; [ 21.03.25 13:45 ] [ 06.02.25 11:11 ] [ 11.01.25 19:11 ] 
 N GR,N,LEVKVZ,OK,SUGS
 S OK=0
 I $$BARMAN(OV)&'$G(@$$^W4PRM@("BARMANALL")) D  Q
 .D TMPS^W4HZGSH K @TMPS@("CURSUG")
 .S SUGS="" F  S SUGS=$O(@$$^W4GL("SUGS")@(SUGS)) Q:SUGS=""  D
 ..N A S A=$G(^(SUGS))
 ..I A'["BAR",A'["xa" Q
 ..D SETSUG^W4HZGSH(SUGS,1)
 Q
 ;
BARMAN(OV) ;
  I $$SUG1^W4LEVSUG(OV)["nxa" Q 1
  I $$SUG1^W4LEVSUG(OV)["BARM" Q 1
  I $D(@$$^W4GL("P1BARMAN")@(OV)) Q 1
  Q 0
  ;
  ;
CASHIER(OV) ;
  I $$GET1^W4LEVPR(N,"MTIP") Q 1
  ;
  I $$SUG1^W4LEVSUG(OV)["`tew" Q 1
  I $$SUG1^W4LEVSUG(OV)["CASHIER" Q 1
  I $$MNL(OV) Q 1
  I $D(@$$^W4GL("P1KUP")@(OV)) Q 1
  Q 0
  ;
  ;
MKBL(OV) ;
  I $$SUG1^W4LEVSUG(OV)["lawn" Q 1
  I $$SUG1^W4LEVSUG(OV)["tlh" Q 1
  I $$MNL(OV) Q 1
  I $$SUG1^W4LEVSUG(OV)["RECEIVER" Q 1
  I $D(@$$^W4PRM@("MKBL",OV)) Q 1
  I $$TAW^W4PRM,$$GET1^W4LEVPR(OV,"MTIP") Q 1
  Q 0
  ;
MNL(OV) ;
 I '$G(OV) Q 0
 I $$SUG1^W4LEVSUG(OV)["ldpn" Q 1
 I $$SUG1^W4LEVSUG(OV)["ledip" Q 1
 I $$SUG1^W4LEVSUG(OV)["dldpd" Q 1
 I $$SUG1^W4LEVSUG(OV)["y""ng`" Q 1
 I $$GET1^W4LEVPR(OV,"TFK")["ldpn",'$$DELIS^W4PRM Q 1
 ;;I $G(@$$^W4GL("W4PSWDRG")@(OV))>2,'$$DELIS^W4PRM Q 1 
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SG
W4SG(GLNM) ; [ 24.11.08 10:39 ] [
 Q "^[$$^W3MAIN]"_GLNM

W4SGDEP
W4SGDEP(DT,DISP) ; [ 23.11.22 10:56 ] [ 16.06.20 09:20 ] [ 15.06.20 21:23 ] 
 N (JB,%ARG,DISP,DT) 
 S TEMP=$$^W4MAIN("TEMP")
 S SM=3
 S TXT="" D S1(""),S1("")
 ;
 I '$$TOT(DT) D
 .I $$HB S TXT=$$^%L1DC(DT,1)_" - l mihixt zewlgn g""ec " D S1(TXT)
 .I '$$HB S TXT=$$PCTX("REPORTDEPSALES","S")_" "_$$^%L1DC(DT,1) D S1(TXT)
 ;
 I $$TOT(DT) D
 .D RNGDAT^W4TELREP(DT)
 .I $$HB S TXT=RNGDAT_" - l mihixt zewlgn g""ec " D S1(TXT)
 .I '$$HB S TXT=$$PCTX("REPORTDEPSALES","S")_" "_RNGDAT D S1(TXT)
 ;
 I $$HB S TXT="  mekq : zenk :    dwlgn my    "
 I '$$HB S TXT="   "_$$PCTX("DEPNAME","S")_"   : "_$$PCTX("QN","S")_" : "_$$PCTX("SUM","S")_" "
 S L=$L(TXT) D KAV(L)
 S PRKOT=1 D S1(TXT) K PRKOT
 D KAV(L)
 ;
 K MDPAR S (SKAM,SSUM)=0
 F I=1:1 Q:'$D(@TEMP@(I))  D
 .D G^%L1SCV("W4DP1",^(I))
 .S DEP=+$$DEP^W4P(PAR)
 .S $P(MDPAR(DEP),"*")=$G(MDPAR(DEP))+KAM
 .S $P(MDPAR(DEP),"*",2)=$P($G(MDPAR(DEP)),"*",2)+SUM
 .S SKAM=SKAM+KAM
 .S SSUM=SSUM+SUM
 ;
 S DEP="" F  S DEP=$O(MDPAR(DEP)) Q:DEP=""  D
 .S KAM=$P(MDPAR(DEP),"*"),SUM=$P(MDPAR(DEP),"*",2)
 .S DEP1=$G(^DEP(DEP))
 .I $$HB S TXT=$J(SUM,6,1)_" :"_$J(KAM,5)_" : "_$$HBR^%L1FRM(DEP1,16) D S1(TXT)
 .I '$$HB S TXT=$$ENG^%L1FRM(DEP1,16)_" : "_$J(KAM,5)_" : "_$J(SUM,6,1) D S1(TXT)
 ;
 D
 .D KAV(L)
 .I $$HB S TXT=$J(SSUM,6,1)_" :"_$J(SKAM,5)_" : k""dq" D S1(TXT)
 .I '$$HB S TXT=$$PCTX("TOTAL","S")_" : "_$J(SKAM,5)_" : "_$J(SSUM,6,1) D S1(TXT)
 ;
 I $G(PRINT)>0 D ^W4CUT($G(%MDP("CUT"))) 
 Q
 ;
S1(TXT) D ^W4PCST(TXT,DISP)
 Q
 ;
KAV(L) ; 
 N TXT S TXT=$TR($J("",L)," ","-") D S1(TXT)
 Q
 ;
TOT(DT) ;
 I $G(DT)["-" Q 1
 Q 0
 ;
PCTX(KEY,L,PRM) ; 
 Q $$^W4PCTX(KEY,$G(L),$G(PRM)) 
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 
 
 
 
 
 
 
 
 
 
 

W4SGHB
W4SGHB(HZM) ; [ 06.03.25 07:30 ] [ 31.05.17 04:11 ] [ 07.01.17 14:43 ] 
 Q:'$$^W4ISORD(HZM)
 I $G(HZM),$$^W4HZMH(HZM) D ^W4GIBHZ(HZM) Q
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I ITRA>.1!(ITRA<-.1) Q
 I $$^W4CLOSE(HZM) Q
 N IET,ITS,SHM,P1HZHB D ^W4IN
 S IET="ETHB",ITS=2,SHM="NCAB",P1HZHB=""
 K P1HZTM,P1HZHB1,P1HZHB2
 D ^W4MKR
 I HZM>0 D PUT^%W1PRM("SAVEORD",HZM)
 Q
 
 
 
 
 
 
 

W4SGKVZ
W4SGKVZ(DT,DISP) ; [ 22.04.21 16:57 ] [ 21.04.21 08:12 ] [ 16.06.20 09:20 ] 
 N (JB,%ARG,DISP,DT) 
 S TEMP=$$^W4MAIN("TEMP")
 S SM=3
 S TXT="" D S1(""),S1("")
 ;
 I '$$TOT(DT) D
 .I $$HB S TXT=$$^%L1DC(DT,1)_" -l mihixt zeveaw  g""ec " D S1(TXT)
 .I '$$HB S TXT=$$PCTX("REPORTGRSALES","S")_" "_$$^%L1DC(DT,1) D S1(TXT)
 ;
 I $$TOT(DT) D
 .D RNGDAT^W4TELREP(DT)
 .I $$HB S TXT=RNGDAT_" - l mihixt waevez g""ec " D S1(TXT)
 .I '$$HB S TXT=$$PCTX("REPORTGRSALES","S")_" "_RNGDAT D S1(TXT)
 ;
 I $$HB S TXT="  mekq : zenk :    dveaw  my    "
 I '$$HB S TXT="   "_$$PCTX("GRNAME","S")_"   : "_$$PCTX("QN","S")_" : "_$$PCTX("SUM","S")_" "
 S L=$L(TXT) D KAV(L)
 S PRKOT=1 D S1(TXT) K PRKOT
 D KAV(L)
 ;
 K MDPAR S (SKAM,SSUM)=0
 F I=1:1 Q:'$D(@TEMP@(I))  D
 .D G^%L1SCV("W4DP1",^(I))
 .S KVZ=+$$SUG^W4P(PAR)
 .S $P(MDPAR(KVZ),"*")=$G(MDPAR(KVZ))+KAM
 .S $P(MDPAR(KVZ),"*",2)=$P($G(MDPAR(KVZ)),"*",2)+SUM
 .S SKAM=SKAM+KAM
 .S SSUM=SSUM+SUM
 ;
 S KVZ="" F  S KVZ=$O(MDPAR(KVZ)) Q:KVZ=""  D
 .S KAM=$P(MDPAR(KVZ),"*"),SUM=$P(MDPAR(KVZ),"*",2)
 .S KVZ1=$G(@$$^W4GL("PARSUG")@(KVZ))
 .I $$HB S TXT=$J(SUM,6,1)_" :"_$J(KAM,5)_" : "_$$HBR^%L1FRM(KVZ1,16) D S1(TXT)
 .I '$$HB S TXT=$$ENG^%L1FRM(KVZ1,16)_" : "_$J(KAM,5)_" : "_$J(SUM,6,1) D S1(TXT)
 ;
 D
 .D KAV(L)
 .I $$HB S TXT=$J(SSUM,6,1)_" :"_$J(SKAM,5)_" : k""dq" D S1(TXT)
 .I '$$HB S TXT=$$PCTX("TOTAL","S")_" : "_$J(SKAM,5)_" : "_$J(SSUM,6,1) D S1(TXT)
 Q
 ;
S1(TXT) D ^W4PCST(TXT,DISP)
 Q
 ;
KAV(L) ; 
 N TXT S TXT=$TR($J("",L)," ","-") D S1(TXT)
 Q
 ;
TOT(DT) ;
 I $G(DT)["-" Q 1
 Q 0
 ;
PCTX(KEY,L,PRM) ; 
 Q $$^W4PCTX(KEY,$G(L),$G(PRM)) 
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SGMHB
W4SGMHB(LKH) ; [ 16.05.18 15:04 ] [ 18.09.16 06:29 ] [ 13.07.16 15:38 ] 
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br />",!
 ;
 S WHO=$G(%ARG("WHO"))
 ;
 I '$L(WHO) D  Q
 .W "<table dir="""_$$^%W1DIR_""">"
 . W "<tr>"
 .  W "<td>"
 .   W $$^%W1DICT("OPERATORNAME")
 .  W "</td>",!
 .  W "<td>"
 .   W "<input type=""text"" id=""who"" size=""11"">"
 .  W "</td>",!
 . W " <td>",!
 .   D ROUNDBUT^%W1JS("do",$$^%W1DICT("DO"),"Do()","color:green",",,,80")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 . W " <td>",!
 .   D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
 .  W "</td>",!
 . W "</tr>",!
 .W "</table>",!
 ;
 ;
 S WHO=$$INVH^%L1FRM($$CNWEB^%L1FRM(WHO))
 W "<span style=""color:darkblue"">"_$$^%W1DICT("OPERATORNAME")_" : "_$$H2U^%L1FRM(WHO)
 W "<br>",!
 ;
 S LKH=$G(LKH)
 ;
 D CUSTCARD^W4LHB(LKH)
 W "</table>",!
 ;
 W "<br />",!
 ;
 I $G(LKH)="" D BUTTONS Q
 ;
 D INVOICESLIST
 ;
 W "</div>",!
 ;
 I 'SHHB D  Q
 .W "<script>",!
 .W " MsgA('NOOPENINVOICESFORTHISCUSTOMER')",!
 .W " Back()",!
 .W "</script>",!
 ;
 ;
 W "<br />",!
 ;
 I '$G(%ARG("PRINT")) D
 .W "<div id=""divbut"" align=""center"">"
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 .W "<tr>",!
 . W " <td>",!
 .   D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
 .  W "<td>&nbsp;</td>",!
 .  W "<td>"
 .   D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:darkblue",",,,100")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .  W "<td>",!
 .   D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 .  W " </td>",!
 . W "</tr>",!
 .W "</table>",!
 .W "</div>",!
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
INVOICESLIST ;
 N STRING,TOT S STRING=LKH
 W "<br>",!
 W "<span style=""color:black;font-size:"_$$^W3FSZ(14)_""">"_$$^%W1DICT("INVOICESLIST")_"</span>",!
 W "<br>",!;
 W "<table border=""0""  width=""30%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr style=""color:darkblue"">",!
 W "  <td ><b>"_$$^%W1DICT("TOTALCLOSED")_" : </b></td>",!
 W "  <td id=""totalclosed"" "_$$STYLEBLACK_" "_$$^%W1ALIGN_">"_$G(TOTCLOSED)_"</td>",!
 W "</tr>",!
 W "</table>",!
 ;
 W "<table id=""listinvoices"" border=""1""  width=""50%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 W "  <tr>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("INVOICE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("TODATE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("BALANCE")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("CLOSE")
 W "   </th>",!
 W "  </tr>",!
 ;
 N KLIN D KLIN
 N GLHB D GLHB
 ;
 S SHHB=0
 D
 .N N,LK,LK0,A
 .N VD F VD="TZ","H","HI" D
 ..S N="" F  S N=$O(@KLIN@(VD,N)) Q:N=""  D
 ...S LK0=$G(^(N)),LK=$P(LK0,"+"),LK=$P(LK,"W"),LK=$P(LK,"^")
 ...I LK=LKH D
 ....D ^W4HSBGET(N,VD) Q:$D(W4HSB)<10
 ....I +W4HSB("TOT")=+W4HSB("PAID") Q
 ....I $$CLOSED(VD,N) Q
 ....N HB S HB=N
 ....I VD="TZ" S HB=-N
 ....I VD="HI" S HB=+HB_"HI"
 ....S SHHB=SHHB+1
 ....D TRSTYLE
 ....W " >",!
 ....W " <td " D SHOWINVOICE(HB,LK0) W " dir=""LTR"" align=""right"">&nbsp;&nbsp;&nbsp;"_+HB_"</td>"
 ....W " <td " D SHOWINVOICE(HB,LK0) W ">&nbsp;&nbsp;"_W4HSB("TODATE")_"</td>",!
 ....W " <td id=""tot"_SHHB_""" " D SHOWINVOICE(HB,LK0) W " dir=""LTR"" align=""right"">&nbsp;"_$J(W4HSB("TOT"),2,2)_"</td>",!
 ....W " <td id=""itra"_SHHB_""" " D SHOWINVOICE(HB,LK0) W " dir=""LTR"" align=""right"">&nbsp;"_$J(W4HSB("TOT")-W4HSB("PAID"),2,2)_"</td>",!
 ....S CHECKED="" I $$CLOSEDNOW(HB) S CHECKED=" checked=""checked"" "
 ....W " <td align=""center"" ><input type=""checkbox"" id=""chk"_HB_""" "_CHECKED_" onClick=""ClickChkBox('"_SHHB_"','"_HB_"')"" ></td>"
 ....W "</tr>",!
 ;
 W " </table>",!
 Q
 ;
ARM(LK0) ;
 I LK0["W" Q 2
 I LK0'["+" Q 1
 Q 0
 ;
SPAN(STAM) ;
 Q " <span style=""color:black"""
 ;
SHOWINVOICE(N,LK0) ;
 N LK
 S LK=$$LK^W4LHB(LK0)
 I '$$ARM(LK0) W " style=""cursor:pointer"" onClick=""ShowInvoice('"_N_"','"_LK_"')"""
 I $$ARM(LK0)=1 D
 .W " style=""cursor:pointer"" onClick=""ShowArmInvoice('"_N_"','"_LK_"')"""
 I $$ARM(LK0)=2 D
 .W " style=""cursor:pointer"" onClick=""ShowItemsInvoice('"_N_"','"_LK_"')"""
 Q
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold;text-align:right"""
 ;
TOTALCLOSED ;
 D TMPCL N N,SUM S SUM=0
 S N="" F  S N=$O(@TMPCL@(N)) Q:N=""  D
 .S SUM=SUM+$G(^(N))
 Q SUM
 ;
KLIN ;
 S KLIN=$$^W4GL("KLIN")
 Q
 ;
GLHB ;
 S GLHB=$$^W4GL("P1LHB")
 Q
GLHBY ;
 S GLHBY=$$^W4GL("KLF")
 Q
GLHBW ;
 S GLHBW=$$^W4GL("W4DOC")
 Q
 ;
SUBMIT(PRM) ;
 D PUT^%W3DEB("W4SGMHB-SUBMIT","PRM=PRM")
 ;
 N WHO,DATSG,TMPCL,GLCLS
 D TMPCL,GLCLS
 ;
 S WHO=$P(PRM,";",2)
 S WHO=$$INVH^%L1FRM($$CNWEB^%L1FRM(WHO))
 S DATSG=$ZD($H,"DD.MM.YY")
 N N,N1
 S N="" F  S N=$O(@TMPCL@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@TMPCL@(N,N1)) Q:N1=""  D
 ..S @GLCLS@(N,N1)=DATSG_"\"_WHO
 L  ;
 K @TMPCL
 Q 1
 ;
TRSTYLE ;
 W "<tr style=""background-color:"_$S($G(VD)="HI":"lightgreen",$G(VD)="TZ":"pink",$$ARM(LK0)=1:"lightblue",$$ARM(LK0)=2:"lightyellow",1:"white")_""""
 Q
 ;
CLOSED(VD,HB) ;
 D GLCLS
 I $D(@GLCLS@(VD,HB)) Q 1
 Q 0
 ;
CLOSEDNOW(HB) ;
 N VD D DEFVD
 D TMPCL
 I $D(@TMPCL@(VD,HB)) Q 1
 Q 0
 ;
GLCLS ;
 S GLCLS=$$^W4GL("P1SGMHB")
 Q
 ;
TMPCL ;
 S TMPCL=$$^W4MAIN("TMPCL")
 Q
 ;
BUTTONS ;
 W "<tr>",!
 W " <td colspan=""6"" align=""center"">",!
  W " <table><tr>",!
   W " <td>"
    D ROUNDBUT^%W1JS("closeinvoices",$$^%W1DICT("CLOSEINVOICES"),"CloseInvoices()","color:green","wh,22")
   W " </td>",!
   ;
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("clear",$$^%W1DICT("SHOWCUSTREPORT"),"ShowCustReport()","color:darkblue","wh,22")
   W " </td>",!
   ;
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("clear",$$^%W1DICT("FULLCUSTCARD"),"ShowCustCard()","color:brown","wh,22")
   W " </td>",!
   ;
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("clear",$$^%W1DICT("CLEAR"),"ClearHrf()","color:blue","wh,22")
   W " </td>",!
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "  </td>",!
  W " </tr></table>",!
 W " </td>",!
 W "</tr>",!
 Q
 ;
INIT ;
 D ^W3CSS
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I $G(%ARG("FIRST")) D
 .D TMPCL
 .K @TMPCL
 Q
 ;
CLOSE(PRM) ;
 N HB,VD
 D TMPCL
 S HB=$P(PRM,";")
 S SUM=$P(PRM,";",2)
 S VD="H"
 D DEFVD
 S @TMPCL@(VD,HB)=SUM
 Q 1
 ;
OPEN(PRM) ;
 N HB,VD
 D TMPCL
 S HB=$P(PRM,";")
 D DEFVD
 K @TMPCL@(VD,HB)
 Q 1
 ;
DEFVD ;
 S VD="H"
 I HB<0 S VD="TZ",HB=-HB
 I HB["HI" S VD="HI",HB=+HB
 Q
 
 
 
 
 
 
 
 

W4SGNDEL
W4SGNDEL(HZM,IND,NOM) ; [ 06.04.15 18:43 ] [ 23.02.15 05:50 ] [ 17.02.15 17:48 ]
 I '$D(%REM) S %REM=$$GET^%W1PRM("REM")
 I $L($G(@$$^W4ORD@(HZM,"CB",IND,NOM))) D
 .S @$$^W4ORD@(HZM,"CB",IND,NOM,"DEL")=$H_"\"_$$GET^%W1PRM("MLZR")_"\"_$$^W4MYDVN
 ;
 I $$MYCHCLIENT^W4HZMST(HZM),$$TSHL^W4HZMST(HZM)'<0,IND="V" D
 .N ASM S ASM=$$GET^W4GTVCH(HZM,NOM,IND,"AUTHNO")
 .N SUM S SUM=$$GET^W4GTVCH(HZM,NOM,IND,"CAV") Q:SUM<0
 .N CLCOD S CLCOD=$$MYCHCLIENT^W4HZMST(HZM)
 .;;I ASM'="" D CANPAY^WMCHFUNC(ASM)
 .D REJPAY^WMCHFUNC(CLCOD,ASM)
 Q

W4SGOVD
W4SGOVD ; [ 27.03.25 12:10 ] [ 26.03.25 13:40 ] [ 01.01.25 13:50 ] 
 N (JB,%ARG,%REM)
 D ^W4LEVSPR
 S TMP=$$BG^W4MAIN("TMPREP")_"""G"")"
 ;
 W "<br><br>",!
 W "<div align=""center"">",!
  W "<table id=""TblOvd"" border=""1"" dir="""_$$^%W1DIR_""" cellspacing=""0"" cellpadding=""7"">",!
   W "<tr>",!
    W "<th>"_$$^%W1DICT("WORKERNUMBER")_"</th>",!
    W "<th>"_$$^%W1DICT("WORKERNAME")_"</th>",!
    W "<th>"_$$^%W1DICT("ENTRANCEDATE")_"</th>",!
    W "<th>"_$$^%W1DICT("ENTRANCETIME")_"</th>",!
    I $$CLKOUT D
    .W "<th>"_$$^%W1DICT("EXITTIME")_"</th>",!
    W "<th>"_$$^%W1DICT("WORKTIME")_"</th>",!
    W "<th>"_$$^%W1DICT("EXIT")_"</th>",!
   W "</tr>",!
   ;
   F I=1:1 Q:'$D(@TMP@(I))  D
   .N A S A=$G(^(I))
   .S NMBOV=$P(A,"\")
   .W "<tr id=""tr"_I_""" >",!
   . W "<td>"
   .  W NMBOV
   . W "</td>"
   . W "<td>"
   .  W $$H2U^%L1FRM($P(A,"\",2))
   . W "</td>"
   . W "<td>"
   .  W $P(A,"\",3)
   . W "</td>"
   . W "<td>"
   .  W $P(A,"\",4)
   . W "</td>"
   . I $$CLKOUT D
   . . W "<td dir=""LTR"" >"
   .  .  D TIMEOUT(NMBOV)  
   . . W "</td>"  
   .
   . W "<td>"
   .  W $P(A,"\",5)
   . W "</td>"
   . W "<td >"
   .  W "<input type=""checkbox"" id=""chk"_I_""" checked=""checked"" "
   .   W " onClick=""CheckBox('"_I_"',this)"" "
   .   W " style=""display:none"" ",!
   .  W ">"
   . W "<label id =""lbov"_I_""" for=""chk"_I_""">"
   .  N RZ S RZ=35
   .  W "<img src=""w4chkboxc.png"" height="""_RZ_""" width="""_RZ_"px"">"
   . W "</label>"
   . W "</td>"
   .W "</tr>",!
  W "</table>",!
 W "</div>",!
 ;
 W "<br><br>",!
 ;
 D DIVBUT
 Q
 ;
DIVBUT ;
 W "<div id=""divbut"" align=""center"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 W "<tr>",!
  W " <td>",!
   D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>",!
   W "<td>&nbsp;</td>",!
   W "<td>",!
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SBM(PRM) ;
 D PUT^%W3DEB("W4SGOVD-SBM","PRM=PRM")
 N I,OV0,OV,DAT,SEC,OK,RESM
 S OK=1
 F I=1:1:$L(PRM,";")-1 D
 .S OV0=$P(PRM,";",I)
 .S OV=OV0 I OV0["^" S OV=$P(OV0,"^")
 .I $G(@$$^W4GL("FILE")@(OV,"CIO"))="O" Q
 .N SGOVD S SGOVD=1
 .S OK=$$SETTM^W4CLKVW(OV0,"O") Q:$P(OK,";")=0
 ;
 Q OK
 ;
 ; 
TIMEOUT(OV) ; 
  N I
  W "<select id=""shaa"_OV_""" >",!
  F I=0:1:23 D
  . W "<option "
  . I I=+$ZD($H,"24") W " selected=""selected"" "
  . W ">"_$TR($J(I,2)," ",0)
  . W "</option>",! 
  W "</select>",! 
 ;
  W "<select id=""min"_OV_""" >",!
  F I=0:1:59 D
  . W "<option "
  .  I I=+$ZD($H,"60") W " selected=""selected"" "
  . W ">"_$TR($J(I,2)," ",0)
  . W "</option>",! 
  W "</select>",! 
 Q
 ;
 ; 
CLKOUT() ; 
 I $$PAPJ^W4PRM Q 1 
 Q +$G(@$$^W4PRM@("ZCLKOUT"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SGYOM
W4SGYOM(DOCH,DISP) ; [ 18.01.26 20:22 ] [ 17.09.25 05:54 ] [ 09.09.25 09:26 ] 
 ; SGIRAT KUPA
 N (JB,%ARG,%REM,DOCH,DISP,P1X)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(DISP)="AUTO" S ZAUTO=""
 I $G(DISP)'?1N S DISP=$S($E($G(DOCH))="X":1,1:0)
 I $$^W4SMALL S DISP=1
 ;
 S A=$P($G(@$$^W4GL("w4zact")),"\")
 I $G(DOCH)="Z",$$DIF^%L1TIME($H,A)>30 K @$$^W4GL("w4zact") S A=""
 I $G(DOCH)="Z",A'="" Q -4
 ;
 D PUT^%W3DEB("W4SGYOM","DOCH=DOCH & DISP=DISP")
 D ^W4IN
 ;
 N FLAGZ S FLAGZ=$G(@$$^W4GL("FLAG")@("Z"))
 I DOCH="Z",FLAGZ,FLAGZ'=$$^W4MYDVN E  Q "-2;"_FLAGZ
 I DOCH="Z",'$$Z24^W4PRM D BUSYTEST D:BUSY  I $L(BUSY),BUSY,'$G(@$$^W4PRM@("ZAUTOALW")) Q "-3;"_BUSY  ; -- OPENORDERS
 .I '$$ZOPNDEL^W4PRM Q
 .N A,HZ,J,ER S ER=0
 .F J=1:1:$L(BUSY,",") S HZ=$P(BUSY,",",J) I HZ'<1 D 
 ..I $G(@$$^W4ORD@(HZ,"S")) Q
 ..I $$^W4HZMH(HZ) Q
 ..I $$DEL^W4DEL(HZ) Q
 ..N TSHL0 S TSHL0=$$TSHL^W4HZMST(HZ) Q:'TSHL0
 ..S A=$$^W4HZDEL(HZ) I A'="OK" S ER=1 Q
 ..N NZ S NZ=$G(@$$^W4GL("Z"))+1
 ..S @$$^W4GL("W4ZOPND")@(P1DZ,NZ,HZ)=TSHL0_"\"_A_"\"_$H
 ..S $P(BUSY,",",J)=""
 .
 .N BUSY1 S BUSY1=""
 .F J=1:1:$L(BUSY,",") D
 ..I $P(BUSY,",",J) S BUSY1=BUSY1_","_$P(BUSY,",",J)
 .I $E(BUSY1,$L(BUSY1))="," S BUSY1=$E(BUSY1,1,$L(BUSY1)-1)
 .S BUSY=BUSY1
 ;
 I $G(DOCH)="Z",$$PAPJ^W4PRM D ^W4MPCHZ ; -- 08/01/24
 I $G(DOCH)="Z",$$TIPCB^W4PRM D ^W4TIPCBZ ; -- 27/11/24
 ;
 S @$$^W4GL("FLAG")@("Z")=$$^W4MYDVN
 S (DAT,DATJ)=$$^%L1DC(P1DZ,2),DAT1=$$^%L1DC(P1DZ,1)
 S P1X=""
 I $E(DOCH)="X" S P1X=$E(DOCH,2,20) I 'P1X S P1X=1
 ;;W "DOCH="_DOCH_"  P1X="_P1X,! ;
 ;
 I P1X?1N.N.P.N1U.E D
 .N I,IND S IND=""
 .F I=2:1:$L(P1X) Q:$E(P1X,I)?1U
 .N I1 F I1=I:1:$L(P1X) Q:$E(P1X,I1)'?1U  S IND=IND_$E(P1X,I1)
 .Q:'$L(IND)
 .S P1X(IND)=$E(P1X,I1,20),P1X=+P1X
 ;;ZWR P1X ;
 ;;W "REP="_$$REPORT ;
 ;
 I $E(DOCH)="X" S DOCH="X"
 D PUT^%W3DEB("W4SGYOM","P1X=P1X & P1X=[P1X")
 ;
 K @$$^W4MAIN("VRMS")
 K @$$^W4MAIN("TMPS111")
 ;
 S DATH=$$^%L1DC(DAT,4)
 S NZ=$G(@$$^W4GL("Z"))+1
 ;
 ;--------------------------- PRINT REPORT HEADER
 D PUT^%W1PRM("NOPC",0)
 I DOCH="Z",$D(ZAUTO),$$SF^W4PRM!$G(@$$^W4PRM@("NOPCAUTO")) D PUT^%W1PRM("NOPC",1)
 I DOCH="Z",$G(@$$^W4PRM@("NOPCZ")) D PUT^%W1PRM("NOPC",1)
 ;
 K PRINT S STZ="" D ^W4PCST(STZ,DISP)
 I $G(DISP)!'$D(%MDB("B"))!'$D(%MDP("N")) S (%MDP("B"),%MDP("N"))=""
 S STZ=$J("",10)_%MDP("B")_$S(DOCH="Z":"- Z - ",DOCH="Y":"- Y -",1:"- X -")_%MDP("N") D ^W4PCST(STZ,DISP)
 ;
 I DOCH="Z" D
 .I $$HB S STZ=$$^%L1DC(P1DZ,1)_" jix`zl mei zxibq g""ec"
 .I '$$HB S STZ=$$PCTX("REPORTZ2DATE","S")_" "_$$^%L1DC(P1DZ,1)
 .D ^W4PCST(STZ,DISP)
 ;
 D TMAKOR
 ;
 I DOCH="Z" D
 .I $$HB S STZ=NZ_" ixeciq xtqn"
 .I '$$HB S STZ=$$PCTX("NPP","S")_" "_NZ
 .D ^W4PCST(STZ,DISP)
 .S STZ="" D ^W4PCST(STZ,DISP)
 ;
 S STZ="" D ^W4PCST(STZ,DISP)
 S STZ=$$CENTR^%L1FRM($TR(@$$^W4GL("PL")@("ESEK",1),"#_",""),32) D ^W4PCST(STZ,DISP)
 I $$HB D
 .S STZ=$J($TR(@$$^W4GL("PL")@("ESEK",2),"#_",""),32) D ^W4PCST(STZ,DISP)
 .S STZ=$J($TR(@$$^W4GL("PL")@("ESEK",4)_" "_$$NESEK,"#_",""),32) D ^W4PCST(STZ,DISP)
 I '$$HB D
 .S STZ=$$ENG^%L1FRM($TR(@$$^W4GL("PL")@("ESEK",2),"#_",""),32) D ^W4PCST(STZ,DISP)
 .S STZ=$$ENG^%L1FRM($$NESEK_" "_$TR(@$$^W4GL("PL")@("ESEK",4),"#_",""),32) D ^W4PCST(STZ,DISP)
 S STZ="" D ^W4PCST(STZ,DISP)
 ;
P10 ;
 S SGIRATJOM=""
 ;
 I $$NODLVORD^W4PRM D
 .D ^W4ETHB2(JB,P1DZ,P1DZ)
 ;
 D DJ ; ------------- HAHANAT KVAZIM LE DOCH
 K SGIRATJOM
 ;
 I $G(DISP) D VIEW L  D:$G(DOCH)="Z" CLEARALL^W4KLFL,CLRFLAGZ Q 1
 ;
 ;-------------------- GIBUY DOCH YOMI
 I DOCH="Y" D
 .S @$$^W4GL("Y")@(P1DZ)=$H
 .D ^%S3GLSV($$^W4GL("Y")_"("_P1DZ_")",$$^W4FGIB)
 ;
 I DOCH="Z" D
 .D ^%S3GLSV($$^W4GL("Z")_"("_P1DZ_")",$$^W4FGIB)
 .D ^%S3GLSV($$^W4GL("Z1")_"("""_$$^%L1DC(P1DZ,2)_""")",$$^W4FGIB)
 .D ^%S3GLSV($$^W4GL("TIPMZ")_"("""_P1DZ_"^"_NZ_""")",$$^W4FGIB)
 .N DATZ S DATZ=$$^%L1DC(P1DZ,2)
 .L +@$$^W4GL("MSHM")@(DATZ,901):1
 .S @$$^W4GL("MSHM")@(DATZ,901)=$G(@$$^W4GL("MSHM")@(DATZ,901))+1
 .D ^%S3GLSV($$^W4GL("MSHM")_"("""_DATZ_""")",$$^W4FGIB)
 .L -@$$^W4GL("MSHM")@(DATZ,901)
 .
 .K @$$^W4GL("P1DZ")
 .;; -- TO COMMENT -- 13/11/23
 .I $G(@$$^W4PRM@("ZNXTDAY")) D
 ..I +$H=P1DZ,$D(@$$^W4GL("P1H")@($H+1))>9 S @$$^W4GL("P1DZ")=$H+1 Q
 ..I +$H=(P1DZ+1),$D(@$$^W4GL("P1H")@(+$H))>9 S @$$^W4GL("P1DZ")=+$H Q
 .S @$$^W4GL("Z")=$G(@$$^W4GL("Z"))+1
 .
 .H 2
 .I $D(ZAUTO) H 25
 .D ^W4ZACT(JB,P1DZ)
 .
 .I $$PAPJ^W4PRM,'$D(ZAUTO) D  ; -- 18.02.25
 ..D ^W4MDPPC
 ..I $L(PRINT),'$$MZSM^W4PRM,'$G(@$$^W4PRM@("NOPTMGZ")) D ^W4SETPC(PRINT,$G(%MDP("P"))) D ^W4PTHDLY
 .
 .I $D(ZAUTO),$$CAJ^W4PRM'=1,$$Z2SHVA^W4PRM D
 ..S RES=$$SHVTRN^W4CRTRN Q:RES
 ..D REP^W4CRTRN(RES)
 .
 .K SGIRATJOM D ^W4IN
 .D KILL^%W1PRM("NOPC")
 .D INIT^W4MYDVN
 L  Q 1
 ;
 ;
TMAKOR S %TIM=$ZD($H,"24:60")
 I $$HB S STZ=%TIM_" "_$$^%L1DC($H,1)_" xewn zwtd jix`z"
 I '$$HB S STZ=$$PCTX("ISSUEORIGTIME","S")_" "_$$^%L1DC($H,1)_" "_%TIM
 D ^W4PCST(STZ,DISP)
 Q
 ;
 ;
ZACTIONS ;
 D ^W4ZACT(JB,P1DZ)
 Q
 ;
 ;
CLEAR ; 
 N N S N="" F  S N=$O(@$$^W4GL("WCGP")@(N)) Q:N=""  D
 .I N<($H-30) K ^(N)
 K @$$^W4MAIN("TMPS111")
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM1")
 K @$$^W4MAIN("TEMP")
 K @$$^W4MAIN("TMP")
 ;
 ;;D ^W4CLRAEM
 Q
 ;
DJ ;-------------------- DOCH JOMI
 I '$D(MISHL) D ^W4IN
 N DATJOM S DATJOM=DAT1 K LKHZ
 K @$$^W4MAIN("TMPS111")
 K %Q,LKHZ
 I ($G(DOCH)="X"&($G(P1X)<3))!($G(DOCH)="Y")!($G(DOCH)="Z"),$G(@$$^W4PRM@("DOCHL"),1) S LKHZ=""
 ;
 D ^W4SUMZRO
 ;
 S %SCRN=$S($G(@$$^W4PL@("MATB")):"P1TOTMT",$G(@$$^W4PRM@("TOTNA")):"P1TOTNA",1:"P1TOT")
 S %L1SCPC("SHP")=$E(%SCRN,1,6)_1
 S %L1SCPC(3)=$S($G(NZ)&($G(DOCH)="Z"):NZ_" 'qn",1:"")
 S %L1SCPC(7)=DOCH
 ;
 D ^W4SUM
 ;
 D GLBL^W4SUM($G(DOCH),DAT)
 ;
 D 100^W4TOT,1011^W4TOT
 I '$$^W4LKH,$G(DOCH)'="X" D
 .I $$HB S STZ=$G(HZ0)_" - "_$G(HZ1)_" zepnfd "
 .I '$$HB S STZ=$$PCTX("ORDERS","S")_" "_$G(HZ0)_" - "_$G(HZ1)
 .D ^W4PCST(STZ,DISP)
 ;
 S PCPROG="W4PCTOT" D ^W4PCPRM D PC
 ;
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("VRM")
 ;
 I $G(DOCH)="X",$G(P1X)'=1 G DJ1
 ;
 I $$^W4LKH!$$KZR G DJ1
 ;
 I '$$^W4CIBLKH G DM
 ;
 I $G(DOCH)="Z"!($G(P1X)=1) D ^W4DCIBZ
 I $G(DOCH)="Z"!($G(P1X)=1),$G(@$$^W4PRM@("ZDTLM")) D ^W4DTLM(P1DZ)
 ;
DM
 I '$D(LKHZ) D
 .I $$^W4TBLKH D DCMPN($$^W4TBLKH,"qia oz")
 .I $$COUPPH^W4PRM D DCMPN($$COUPPH^W4PRM,"oetpetew")
 ;
 I $$KSHCSH^W4PRM D
 .D DCMPKC
 ;
 I $$SF^W4PRM,$$ZBIG^W4PRM G DJE
 ;
DJ1 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("VRM")
 ;
 I $$^W4LKH!$$KZR G DJE
 ;
 I $G(@$$^W4PRM@("NOMLZZ")),$G(DOCH)="Z"!($G(DOCH)="Y") G DLKHZ
 ;
 I $G(DOCH)="Y"!($G(DOCH)="Z")!($G(DOCH)="X"&(P1X=1!(P1X=3)!(P1X=4))) D
 .S PRMSD=1
 .S PCPROG="W4PCMLZ" D PC
 ;
 I MISHL,$G(DOCH)="Y"!($G(DOCH)="Z")!($G(DOCH)="X"&(P1X=1!(P1X=5)!(P1X=6))) D
 .S PRMSD=0
 .S PCPROG="W4PCMLZ" D PC
 ;
 I MISHL,$G(DOCH)="Y"!($G(DOCH)="X"&(+P1X=6.2!(+P1X=6.4))) D
 .S PRMSD=0
 .I $G(DISP)=0 S %ARG("PRINT")=1
 .S PCPROG="W4HZHC2" D PC
 ;
DLKHZ ;
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("VRM"),P1JOM
DPARZ ;
 I $G(DOCH)="Z"!($G(P1X)=1) D
 .I $D(LKHZ),$G(DOCH)="Z"!($G(P1X)=1) D
 ..S PCPROG="W4LKHZ" D PC
 .;
 .I $G(@$$^W4PRM@("DOCHP")) D PARZ
 .
 .;;I $$NEWMLY^W4PRM,$G(DOCH)="Z" D PARMLY
 .
 .I $G(@$$^W4PRM@("ZXBIT")),'$G(@$$^W4PRM@("ZXBIT2TOT")) D
 ..I $G(DOCH)="X",$G(@$$^W4PRM@("ZXBIT"))=1 Q
 ..D ZXBIT(P1DZ),ZXHNH(P1DZ)
 .
 ;
DJE ;
 Q:$G(DISP)
 I $L($G(PRINT)) D ^W4CUT(PRINT,$G(%MDP("CUT"))) Q
 I $G(P1X),P1X'=1 Q
 Q
 ;
PC ;
  I $G(PCPROG)="W4PCTOT",$G(P1X),+P1X'=1,+P1X'=2,+P1X'=7,+P1X'=8,+P1X'=9 Q
  ;
  I $L($G(PCPROG)) D @("^"_PCPROG)
  Q
 ;
 ;
PREPPAR(DT) ;
 N (JB,%ARG,%REM,DT)
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("TEMP1"),@$$^W4MAIN("VRM")
 N DAT,DAT01,DAT02,DAT1,DAT2,MEDAT,ADDAT,SET,NS
 S DAT=$$^%L1DC(DT,2)
 S (MEDAT,ADDAT)=$$^%L1DC(DAT,1)
 S GLB=$$^W4GL("PLUTOT")
 S %ARG("MEDAT")=MEDAT
 S %ARG("ADDAT")=ADDAT
 S %ARG("MIUN")=1
 I $G(@$$^W4PRM@("DOCHP","SORT")) S %ARG("MIUN")=^("SORT")
 S SET="",NS=""
 I $G(@$$^W4PRM@("DOCHP","NSET")) S SET=1,NS=^("NSET")
 S %ARG("SET")=SET 
 S %ARG("NS")=NS
 ;;S %ARG("NZ")=NZ
 ;
 D TV^W4DP1
 Q
 ;
 ;
PARZ ;
 D PREPPAR(P1DZ)
 ;
 I $$SGKVZ^W4PRM D  Q  ;-- DOCH KVUZOT
 .D ^W4SGKVZ(P1DZ,$G(DISP))
 ;
 I $$SGDEP^W4PRM D  Q  ;-- DOCH MAHLAKOT
 .D ^W4SGDEP(P1DZ,$G(DISP))
 ;
 S PCPROG="W4PARZ" D PC
 ;
 Q
 ;
 ;
VIEW ;
 Q:+$G(P1X)["6."
 W "<div align=""center"">",!
 D BACKBUT
 W "<br><br>",!
 W "<table dir="""_$$^%W1DIR_""" border=""0"" "
 W " style=""font-size:"_$$^W3FSZ(11)_""" "
 W ">",!
 N I F I=1:1 Q:'$D(@$$^W4MAIN("TMPS111")@(I))  D
 .W "<tr "
 . I $$^%W1LNG'="H" W " dir=""LTR"" "
 .W ">"
 . D ^W4S1VW(I)
 .W "</tr></td>"
 W "</table>",!
 ;
 W "<br><br>",!
 D BACKBUT
 W "<br><br>",!
 W "</div>",!
 Q
 ;
 ;
REPORT(STAM) ;
 N REP S REP=$$GET^%W1PRM("REPORT")
 S REP=$P(REP,"::")
 I '$L(REP) Q ""
 ;
 I REP="X" D  Q REP
 .I $$^W4LKH S SUGREP=2,REP=REP_SUGREP Q
 .N SUGREP S SUGREP=+$$GET^W4TMPANS($$XMENU,"KINDOFREPORTX")
 .I SUGREP=4 S SUGREP=SUGREP_"MLZ"_$$GET^W4TMPANS($$XMENU,"CHOICEWAITER")
 .I SUGREP=6!(SUGREP=6.4) S SUGREP=SUGREP_"MSH"_$$GET^W4TMPANS($$XMENU,"CHOICEMESSENGER")
 .I SUGREP=7 S SUGREP=SUGREP_"SHUL"_$$GET^W4TMPANS($$XMENU,"CHOICETABLE")
 .I SUGREP=8 S SUGREP=SUGREP_"PART"_$$GET^W4TMPANS($$XMENU,"CHOICEPOSITION")
 .I SUGREP=9 S SUGREP=SUGREP_"ULAM"_$$GET^W4TMPANS($$XMENU,"CHOICEATAR")
 .S REP=REP_SUGREP
 Q REP
 ;
 ;
DISP(STAM) ;
 N REP S REP=$$GET^%W1PRM("REPORT")
 S REP=$P(REP,"::")
 I '$L(REP) Q ""
 N DISP I $E(REP)="X" D  S:$G(DISP)="" DISP=1
 .I $$^W4LKH S DISP=$$GET^W4TMPANS("XMENULK","KINDOFSHOW") Q
 .S DISP=$$GET^W4TMPANS($$XMENU,"KINDOFSHOW")
 ;
 I $E(REP)="X" Q DISP
 Q 0
 ;
 ;
TBL ;
 D NOZERO^W4SCASK Q:$D(%SC("ER"))
 ;
 I '$D(@$$^W4GL("LKH")@(VL)) D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="TABLENOTEXIST"
 Q
 ;
 ;
BUSYTEST ;
 N N,HZ S BUSY=""
 S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(P1DZ,HZ)) Q:HZ=""  D
 .I $$DEL^W4DEL(HZ) Q
 .I $$^W4HZMH(HZ) Q
 .I HZ>0,'$$^W4CLOSE(HZ),'$$ITRA^W4HZMST(HZ),'$$NOCLDLVZ^W4PRM D ^W4SGHB(HZ) Q
 .I HZ>0,'$$^W4CLOSE(HZ),$$^W4MSD($$NMB^W4HZMST(HZ)) S BUSY=BUSY_HZ_"," Q
 .I HZ>0,'$$^W4CLOSE(HZ),$$^W4MSL($$NMB^W4HZMST(HZ)) D
 ..N TODATE S TODATE=$$TRH^W4HZMST(HZ)
 ..I $$^%L1DC(TODATE,3)=P1DZ S BUSY=BUSY_HZ_"," Q
 ..I $$^%L1DC(TODATE,3)=(P1DZ+1),$$SHAA^W4HZMST(HZ)<6 S BUSY=BUSY_HZ_"," Q
 ;
 S BUSY=$E(BUSY,1,$L(BUSY)-1)
 Q:$L(BUSY)&BUSY
 D SETALL^W4KLFL
 Q
 ;
CLRFLAGZ ;
 K @$$^W4GL("FLAG")@("Z")
 Q
 ;
BACKBUT ;
 W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
 W " onClick=""Back()"" "
 W " style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""" "
 W " />"
 Q
 ;
WTD(ST) ;
 ; N A S A=$$H2U^%L1FRM(ST) W A,!
 ; Q
 S ST=$$SPA^%L1FRM(ST)
  W "<td "
  I ST'[":" D  W "</td>" Q
  .W "colspan=""2"" >"
  .I ST?1"----"."-" W "<hr>" Q
  .I ST["g""ec" W "<br><br>"
  .W $$H2U^%L1FRM($$SPA^%L1FRM(ST))
  ;
  W ">"
  W $$H2U^%L1FRM($$SPA^%L1FRM($P(ST,":",2)))
 W "</td><td>"
  W $$H2U^%L1FRM($$SPA^%L1FRM($P(ST,":",1)))
 W "</td>",!
 Q
 ;
DCMPN(LKCMPN,HD) ;
 N DT,HZ,N,ST,STB
 S DT=P1DZ D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","ASR")) D
 ..I $G(^(HZ))["^" K STB ; -- 22/04/25
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 ...S A=$G(^(N)),LKHN=$P(A,"*") Q:LKHN'=LKCMPN
 ...D ^W4GTVCH(A,"ASR")
 ...S STB("Q")=$G(STB("Q"))+1
 ...S STB("S")=$G(STB("S"))+ASR
 ;
 I '$$ZBIG^W4PRM D
 .S ST="" D W
 .N ST0
 .I $$HB S (ST0,ST)="   "_$$^%L1DC(P1DZ,1)_" - l "_HD_" zegewl g""ec" D W
 .I '$$HB S (ST0,ST)=$$PCTX("COMPANYZREPORT","S",HD_"<>"_$$^%L1DC(P1DZ,1)) D W
 .S ST=$TR($J("",$L(ST0))," ","-") D W
 .I $$HB S ST=" "_$J($G(STB("S")),7,2)_" k""dq "_$J($G(STB("Q")),5,0)_" miqihxk 'qn" D W
 .I '$$HB S ST=" "_$$PCTX("CARDAMOUNT",12)_" "_$J($G(STB("Q")),5,0)_" "_$$PCTX("TOTAL",6)_" "_$J($G(STB("S")),7,2) D W
 .S ST="" D W
 .I +$G(P1X)'=2,'$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 .Q
 ;
 I $$ZBIG^W4PRM D
 .W "<br>",!
 .W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 .W "<br>"
 .
 .W "<table >",!
 . W "<tr><td colspan=""3"" style=""font-size"_$$^W3FSZ(12)_""" >"
 .  W $$H2U^%L1FRM($$^%L1DC(P1DZ,1)_" - l "_HD_" zegewl g""ec")
 . W "</td></tr>",!
 . D HR
 . W "<tr>"
 .  W "<td>"
 .    W $$H2U^%L1FRM("miqihxk 'qn")
 .  W "</td>"
 .  W "<td>"
 .    W $G(STB("Q"))
 .  W "</td>"
 .  W "<td>"
 .    W $J($G(STB("S")),2,2)
 .  W "</td>"
 . W "</tr>",!
 . D HR
 .W "</table>",!
 Q
 ;
W N SM1 S:'$D(NZ) NZ=0 S SM1=1 D ^W4PCST(ST,$G(DISP))
 Q
 ;
 ;
HR W "<tr><td colspan=""3""><hr></td></tr>",!
 Q
 ;
DCMPKC ;
 N DT,HZ,N,ST,STB
 S DT=P1DZ D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","CH")) D
 ..I $G(^(HZ))["^" K STB ; -- 22/04/25
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","CH",N)) Q:N=""  D
 ...S A=$G(^(N)),TZ=$P(A,"*",3) Q:TZ'="KC"
 ...D ^W4GTVCH(A,"CH")
 ...S STB("Q")=$G(STB("Q"))+$S(CHS<0:-1,1:1)
 ...S STB("S")=$G(STB("S"))+CHS
 ;
 I '$$ZBIG^W4PRM D
 .S ST="" D W
 .N ST0
 .I $$HB S (ST0,ST)="   "_$$^%L1DC(P1DZ,1)_" - l "_$G(HD)_" y`w yw g""ec" D W
 .I '$$HB S (ST0,ST)=$$PCTX("KSHCSHREPORT","S",HD_"<>"_$$^%L1DC(P1DZ,1)) D W
 .S ST=$TR($J("",$L(ST0))," ","-") D W
 .I $$HB S ST=" "_$J($G(STB("S")),7,2)_" k""dq "_$J($G(STB("Q")),5,0)_" zeipw 'qn" D W
 .I '$$HB S ST=" "_$$PCTX("SALESAMOUNT",12)_" "_$J($G(STB("Q")),5,0)_" "_$$PCTX("TOTAL",6)_" "_$J($G(STB("S")),7,2) D W
 .S ST="" D W
 .I +$G(P1X)'=2,'$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 .Q
 ;
 I $$ZBIG^W4PRM D
 .W "<br>",!
 .W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 .W "<br>"
 .
 .W "<table >",!
 . W "<tr><td colspan=""3"" style=""font-size"_$$^W3FSZ(12)_""" >"
 .  W $$H2U^%L1FRM($$^%L1DC(P1DZ,1)_" - l "_HD_" y`w yw g""ec")
 . W "</td></tr>",!
 . D HR
 . W "<tr>"
 .  W "<td>"
 .    W $$H2U^%L1FRM("zeipw 'qn")
 .  W "</td>"
 .  W "<td>"
 .    W $G(STB("Q"))
 .  W "</td>"
 .  W "<td>"
 .    W $J($G(STB("S")),2,2)
 .  W "</td>"
 . W "</tr>",!
 . D HR
 .W "</table>",!
 Q
 ;
 ;
CLRVIP ;
 N GLDEV S GLDEV=$$^W4DEV
 N N,IP S N="" F  S N=$O(@GLDEV@(N)) Q:N=""  D
 .S IP=$G(^(N))
 .I $G(^(N,"H"))="VIP" D
 ..K @$$^W4PLUK@(N)
 ..K @GLDEV@(N)
 ..I IP K @$$^W4DEVI@(IP)
 Q
 ;
 ;
ZXBIT(DT) ;
 D CRVRM^W4MAILZB(DT) ; --> VRM
 ;
 N SM1 ;;S SM1=6
 S ST=$C(10,10) D W
 I $$HB S ST=$J("",6)_$ZD(DT,"DD.MM.YY")_" jix`zl milehia g""ec" D W
 I '$$HB S ST=$$PCTX("REPORTZDEL","S")_" "_$ZD(DT,"DD.MM.YY") D W
 ;
 S ST=" mekq : zenk :`vi:         daiq      "
 I '$$HB S ST="   "_$$PCTX("CAUSE","S")_"    : "_$$PCTX("OUT","S")_" : "_$$PCTX("QN","S")_" : "_$$PCTX("SUM","S")_" "
 N L S L=$L(ST)
 D KAV(L)
 S PRKOT=1 D W K PRKOT
 D KAV(L)
 ;
 K SKAM,SSUM
 S (SKAM,SSUM)=0
 S SIBA="" F  S SIBA=$O(@VRM@(SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM@(SIBA,SIBA1)) Q:SIBA1=""  D
 ..S EXIT="" F  S EXIT=$O(@VRM@(SIBA,SIBA1,EXIT)) Q:EXIT=""  D
 ...S A=$G(^(EXIT))
 ...S KAM=-$P(A,"*") S SKAM=SKAM+KAM
 ...S SUM=-$P(A,"*",2) S SSUM=SSUM+SUM
 ...I $$HB D
 ....S ST=$J(SUM,5,1)_" :"_$J(KAM,4)_" : "
 ....S ST=ST_$S(EXIT:"ok",1:"`l")_":"
 ....S ST=ST_$$HBR^%L1FRM(SIBA1,20) D W
 ...I '$$HB D
 ....S ST=ST_$$ENG^%L1FRM(SIBA1,20) D W
 ....S ST=ST_$S(EXIT:"Yes",1:"No")_":"
 ....S ST=$J(KAM,4)_" :"_$J(SUM,5,1)_" : "
 ...S SKAM(EXIT)=$G(SKAM(EXIT))+KAM
 ...S SSUM(EXIT)=$G(SSUM(EXIT))+SUM
 ;
 D KAV(L)
  I $$HB S ST=$J(+SSUM,6,1)_" : "_$J(+SKAM,4)_" ::  k""dq" D W
  I '$$HB S ST=$$PCTX("TOTAL",5)_" :: "_$J(+SKAM,4)_" : "_$J(+SSUM,6,1) D W
 D KAV(L)
 I $$HB D
  .S ST=$J(+$G(SSUM(1)),6,1)_" : "_$J(+$G(SKAM(1)),4)_" :: `vi k""dq" D W
  .S ST=$J(+$G(SSUM(0)),6,1)_" : "_$J(+$G(SKAM(0)),4)_" :: `vi `l k""dq" D W
 I '$$HB D
  .S ST=$$PCTX("TOTALEX","S")_" :: "_$J(+$G(SKAM(1)),4)_" : "_$J(+$G(SSUM(1)),6,1) D W
  .S ST=$$PCTX("TOTALNOEX","S")_" :: "_$J(+$G(SKAM(0)),4)_" : "_$J(+$G(SSUM(0)),6,1) D W
 K @VRM
 Q
 ;
KAV(L) ;
 I '$G(L) S L=38
 N ST S ST=$TR($J("",L)," ","-")
 D W
 Q
 ;
ZXHNH(DT) ;
 N (JB,%ARG,DT,DOCH,DISP)
 ;
 S METRH=$$^%L1DC(DT,1)
 S ADTRH=$$^%L1DC(DT,1)
 ;
 D TRH^W4DHNHA ; --> VRM
 ;
 S VRM1=$$^W4MAIN("VRM1")
 ;
 ;;S SM1=7
 S ST=$C(10,10) D W
 I $$HB S ST=$J("",5)_$ZD(DT,"DD.MM.YY")_" jix`zl zegpd g""ec" D W
 I '$$HB S ST=$$PCTX("REPORTZDISCOUNTS","S")_" "_$ZD(DT,"DD.MM.YY") D W
 ;
 G RKZHNH
 ;
 I $$HB S ST0=" oeayg :hixtl zegpd: dpnfd "
 I '$$HB S ST0=$$PCTX("ORDER","S")_":"_$$PCTX("ITEMDISCOUNTS","S")_":"_$$PCTX("BILL","S")
 N L S L=$L(ST0)
 I $$HB S ST="---------- daiq ----------- " D W
 I $$HB S ST="--------- "_$$PCTX("CAUSE","S")_"  ----------- " D W
 S ST=ST0,PRKOT=1 D W K PRKOT
 D KAV(L)
 ;
 S (SHNP,SHNH)=0
 S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ..S ST="" D W
 ..I $$HB S ST=$$HBR^%L1FRM(SIBA1,26)_" -------" D W
 ..I '$$HB S ST="------- "_$$ENG^%L1FRM(SIBA1,26) D W
 ..S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:HZM=""  D
 ...S A=$G(^(HZM))
 ...S HNP=$P(A,"*") S SHNP=SHNP+HNP
 ...S HNH=$P(A,"*",2) S SHNH=SHNH+HNH
 ...I $$HB S ST=$J(HNH,6,1)_" : "_$J(HNP,9,2)_" :"_$J(HZM,6) D W
 ...I $$HB S ST=$J(HZM,6)_" : "_$J(HNP,9,2)_" :"_$J(HNH,6,1) D W
 ;
 D KAV(L)
  I $$HB S ST=$J(SHNH,6,1)_" : "_$J(SHNP,9,2)_" : k""dq" D W
  I '$$HB S ST=$$PCTX("TOTAL","S")_" : "_$J(SHNP,9,2)_" : "_$J(SHNH,6,1) D W
  K @VRM1
 Q
 ;
RKZHNH ;
 I $$HB S ST=" oeaygl :hixtl zegpd:       daiq       "
 I '$$HB S ST="    "_$$PCTX("CAUSE","S")_"      :"_$$PCTX("ITEMDISCOUNTS","S")_":"_$$PCTX("BILL","S")
 ;
 S L=$L(ST)
 D KAV(L)
 S PRKOT=1 D W K PRKOT
 D KAV(L)
 ;
 D RKZVRM1^W4MAILZH
 ;
 S (SHNP,SHNH)=0
 S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ..S A=$G(^(SIBA1))
 ..S ST="" D W
 ..S HNP=$P(A,"*") S SHNP=SHNP+HNP
 ..S HNH=$P(A,"*",2) S SHNH=SHNH+HNH
 ..I $$HB S ST=$J(HNH,7,1)_" : "_$J(HNP,9,1)_" :"_$$HBR^%L1FRM(SIBA1,17) D W
 ..I '$$HB S ST=$$ENG^%L1FRM(SIBA1,17)_": "_$J(HNP,9,1)_" : "_$J(HNH,7,1) D W
 ;
 D KAV(L)
  I $$HB S ST=$J(SHNH,7,1)_" : "_$J(SHNP,9,1)_" : k""dq" D W
  I '$$HB S ST=$$PCTX("TOTAL","S")_" : "_$J(SHNP,9,1)_" : "_$J(SHNH,7,1) D W
  K @VRM1
 Q
 ;
NOREPY(STAM) ;
 Q $G(@$$^W4PRM@("NODOCHY"))
 ;
NESEK(STAM) ; 
 N NESEK S NESEK=$$SPA^%L1FRM($TR($G(@$$^W4PL@("ESEK",1)),"#_",""))
 I $$HB Q $S(NESEK["n""ra":".t.g",1:".n.r")
 Q "BsID"
 ;
PCTX(KEY,L,PRM) ; 
 Q $$^W4PCTX(KEY,$G(L),$G(PRM)) 
 ;
HB(STAM) ; 
 Q $$^%W1HB 
 ;
XMENU(STAM) ; 
 I $$SUPER^W3PRM Q "XMENU1"
 Q "XMENU" 
 ;
PARMLY ; 
 N SGYOM,P1DZ,%ARG
 S P1DZ=$$^W4DZ
 S %ARG("MEDAT")=$ZD(P1DZ,"DD.MM.YY")
 S %ARG("ADDAT")=$ZD(P1DZ,"DD.MM.YY")
 S %ARG("PCCSR")=1
 ;;S SGYOM=""
 ;
 D ^W4REPEZM 
 Q 
 ;
 ; 
KZR() ; 
 Q $$KZR^W4PCTOT 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SH2UL
W4SH2UL ; [ 30.12.14 09:47 ] [
 N VRMSU S VRMSU=$$^W4MAIN("VRMSU") K @VRMSU
 N UL S UL="" F  S UL=$O(@$$^W4GL("W4ULAM")@(UL)) Q:UL=""  D
 .S N="" F  S N=$O(@$$^W4GL("W4ULAM")@(UL,0,"M",N)) Q:N=""  D
 ..S A=$G(^(N)) I $P(A,";")="S" D
 ...S C=$P(A,";",2) Q:C=""
 ...S @VRMSU@(C)=UL
 Q

W4SHAA
W4SHAA(HZ) ;  [ 25.11.16 13:53 ] [ 13.07.16 20:42 ] [ 26.11.11 15:18 ] 
 N NMB,A,SHAA S SHAA=""
 S NMB=$$NMB^W4HZMST(HZ)
 I '$$^W4MSD(NMB),$$SHAA^W4HZMST(HZ) S SHAA=$$SHAA^W4HZMST(HZ)
 I $$^W4MSD(NMB)!($$SHAA^W4HZMST(HZ)="") D
 .S SHAA=$P($$DATCB^W4HZMST(HZ),"  ",2)
 I SHAA="" S SHAA=$$SHAAT^W4HZMST(HZ)
 Q $$SH(SHAA)
 ;
SH(SHAA) ;
 N MIN
 S MIN=$P(SHAA,":",2)
 S SHAA=SHAA+$J(MIN/60,2,2)
 I SHAA,SHAA<$$ENDZ,$$ENDZ<8 S SHAA=SHAA+24
 Q SHAA
 ;
ENDZ(STAM)
 Q $$SHAAZ^W4PRM
 
 
 
 

W4SHAAZ
W4SHAAZ(STAM) ; [ 21.12.18 07:38 ] [ 20.12.18 19:24 ] [ 
 I $$SHAAZ^W4PRM<12 Q 1
 Q 0
 

W4SHAP
W4SHAP ; SHP(%L2("COD")) ;                      [ 29.12.21 08:20 ] [ 28.02.17 11:59 ] [ 29.04.09 10:38 ] 
 ;--------------------------------------------
 ;%L2("U") - 0,3;KOD OF SHP - %L2("COD") ;
 ; ARRAY OF VALUE REKV (MAS);
 ; %L2("SM") - OFFSET, %L2("SC") -  COUNTER OF LINES, %L2("SL") - COUNTER OF PAGES
 ; %L2("PC") - PRINT FLAG, %L2("RZ") - DELIMITER
 ; %L2("RL") - SIZE OF PAGE, %L2("LAST") - LAST POSITION
 ;---------------------------------------------
 ;
 N %L2GLOB D L2GLOB
 I '$D(%L1SCPC("MDP","B")) S %L1SCPC("MDP","B")=""
 I '$D(%L1SCPC("MDP","N")) S %L1SCPC("MDP","N")=""
 I '$D(%L1SCPC("MDP","PG")) S %L1SCPC("MDP","PG")=$C(13,12)
 I '$D(%L1SCPC("MDP","GWPC")) S %L1SCPC("MDP","GWPC")=80
 ;
 S %L2("SS")="&"
 S:'$D(%L2("SM")) %L2("SM")=0
 S:'$D(%L2("SC")) %L2("SC")=0
 S:$D(%L2("SL")) %L2("SL")=%L2("SL")+1
 S:'$D(%L2("SL")) %L2("SL")=1
 S:'$D(%L2("PC")) %L2("PC")="1V"
 ;
 I %L2("PC"),'$D(%L2("U")) D MSG("A DEVICE WAS NOT DEFINED (%L2(""U"")) !") Q
 I '$D(%L2("COD")) D MSG("A HEADER CODE WAS NOT DEFINED (%L2(""COD"")) !") Q
 I '$D(@%L2GLOB@(%L2("COD"))) D MSG("A NODE "_%L2("COD")_" THERE IS NOT IN "_%L2GLOB_" !") Q
 S %NEXTS=$G(@%L2GLOB@(%L2("COD"),1))
 
 ;
 I +%L2("PC") D
 .S %ST="" D STPC S %ST="" D STPC Q
 ;
 I %L2("PC")="1V" D  S %L2BEG=1 D FSHAP
 .I '$G(%L1SCPC("LOGO")),'$D(%L1SCPC(1)) S %AT=$$SPA^%L1FRM($$^%L1HEAD("")) I $L(%AT) D
 ..I $G(%MDPSUG)=7 D  Q
 ...S %AT=$$SPC^%L1FRM(%AT)
 ...S %ST=%L1SCPC("MDP","B")_$$CENTR^%L1FRM($$TR($TR(%AT,"#_","")),%L1SCPC("MDP","GWPC"))_%L1SCPC("MDP","N")
 ...D STPC S %ST="" D STPC
 ..
 ..S %ST=%L1SCPC("MDP","B")_$$CENTRB^%L1FRM($$TR($TR(%AT,"#_","")),%L1SCPC("MDP","GWPC"))_%L1SCPC("MDP","N") D STPC S %ST="" D STPC
 .
 .N %J F %J=1:1:$G(%L1SCPC("LOGO")) W ! S %L2("SC")=$G(%L2("SC"))+1
 ;
 I %L2("PC")="1N" D NSHAP
 I %L2("PC")=0 D FSTR
END K %NEXTS,%IND,%J1,%J2,%K,%LENGTH,%NST,%POZ,%SHPZ,%STR,%STRS
 Q
 ;
 ;
FSHAP ;
 N %I,%DLMD
 S %DLMD="$" I $D(%L2("$")) S %DLMD=%L2("$")
 I $G(%L2("PC"))="1V" D
 F %I=%L2BEG:1 Q:'$D(@%L2GLOB@(%L2("COD"),%I))#10  Q:^(%I)[%DLMD  S %STRS=^(%I),%POZ=0 D PSK D
 .I %L2("PC") S %ST=$J("",%L2("SM")) D  D STPC Q
 ..
 ..I $D(%L1SCPC("EXCEL")),$D(%L1SCPC("GLOB")) D
 ...I $G(%L2("PC"))="1V"!($G(%L2("PC"))="1N") D
 ....N IND,%SMB S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 ....I %L2("PC")="1V" D  Q:%SMB="!"
 .....I %STRS?.P1"-"."-".P,$G(@%L2GLOB@(%L2("COD"),%I+1))?.P1":".E,%I'<(%L2("VG")-4) D  Q
 ......F %I1=%I+1:1 Q:'$D(@%L2GLOB@(%L2("COD"),%I1))#10  Q:^(%I1)[%DLMD  S %STRS=^(%I1) Q:%STRS?.P1"-"."-".P  D
 .......S %SMB="!"
 .......S @%L1SCPC("GLOB")@(IND)=$G(@%L2GLOB@(%L2("COD"),%I1))_%SMB
 .......S IND=$O(@%L1SCPC("GLOB")@(99999),-1)+1
 ......S %I=%L2("VG")-1
 .....S %SMB="^"
 ....I %L2("PC")="1N" S %SMB="="
 ....S @%L1SCPC("GLOB")@(IND)=%STRS_%SMB
 ..
 ..S %ST=%ST_$$TR(%STRS) D:'$D(%L1SCPC("GLOB"))
 ...S %ST=$J("",%L2("SM"))_$$TR($P(%STRS,"#")) S %W1=0
 ...F %II=2:1:$L(%STRS,"#") S %W1='%W1 D
 ....N %ST1 S %ST1=$P(%STRS,"#",%II)
 ....S %ST=%ST_$$TR(%ST1)
 ...I $D(%L1SCPC("MDP","_")),$D(%L1SCPC("MDP","\_")) D
 ....S %ST=$J("",%L2("SM"))_$$TR($P(%STRS,"~")) S %W1=0
 ....F %II=2:1:$L(%STRS,"~") S %ST=%ST_$$TR($P(%STRS,"~",%II))
 .
 .S %L2("SC")=%L2("SC")+1
 .I %L2("SC")>60 S %L2("SC")=0,%L2("SL")=%L2("SL")+1
 I $D(^(%I)) S %L2("VG")=%I
 Q
 ;
PSK ;
 F  S %POZ=$F(%STRS,%L2("SS"),%POZ) Q:%POZ<1  D
 .S %IND=+$E(%STRS,%POZ,%POZ+1) D DEFL
 .S %NST=$S($D(MAS(%IND)):$E($$CLST^%L1FRM(MAS(%IND),"",""),1,%LENGTH),1:"")
 .S %STRS=$E(%STRS,1,%POZ-2)_$J(%NST,%LENGTH)_$E(%STRS,%POZ-1+%LENGTH,255)
 .Q
 Q
 ;
DEFL ;
 F %K=%POZ+2:1:132 Q:$E(%STRS,%K)'=" "
 S %LENGTH=%K-%POZ+1 S:$E(%STRS,%K)=">" %LENGTH=%LENGTH+1 K %K
 Q
 ;
FSTR ;
 N %DLMD
 S %DLMD="$" I $D(%L2("$")) S DLMD=%L2("$")
 S FLAG="ER"
 I '$D(%L2("VG"))!'$D(%I) F %I=1:1 Q:'$D(^(%I))#10  Q:^(%I)[%DLMD
 I  I $D(^(%I)) S %L2("VG")=%I
 Q:'$D(%L2("VG"))
 S %STR=^(%I),%POZ=$F(%STR,%DLMD)-1,%L2("VG")=%I ;
 S %L2("LG1")=1,%L2("LG2")=%POZ-1
 S:'$D(%L2("RZ")) %L2("RZ")=":"
 K %L2("MP") F %J1=%I:1 Q:'$D(^(%J1))  S %STR=$$SPR^%L1FRM(^(%J1)),%NT=$E(%STR,$L(%STR)) Q:%NT'?1N.N  D
 .S %POZ=%L2("LG2")+1,%SHPZ=0
 .F  S %POZ=$F(%STR,%L2("RZ"),%POZ) Q:'%POZ  D
 ..S %SHPZ=%SHPZ+1,%L2("MP",%NT,%SHPZ)=%POZ+%L2("SM")-1
 .S %L2("MP",%NT)=%SHPZ
 ;
 K %NT,%STR,%POZ,%SHPZ
 Q:'$D(^(%J1))
 ; ________________________________;
 F %J2=%J1:1 Q:'$D(^(%J2))  S %STR=$$SPR^%L1FRM(^(%J2)) Q:%STR[%DLMD
 Q:'$D(^(%J2))
 S %L2("PG1")=$F(%STR,%DLMD),%L2("PG2")=$L(%STR)
 S %L2("NG")=%J2+1,%L2("RL")=%L2("NG")-%L2("VG")-1 ;-$G(%L1SCPC("LOGO"))
 F %J1=%I:1 Q:'$D(^(%J1))  S %STR=$$SPR^%L1FRM(^(%J1)),%NT=$E(%STR,$L(%STR)) Q:%NT'?1N.N  D
 .S %STR=$E(%STR,%L2("LG2")+1,%L2("PG1")-1)
 .F %J2=1:1:%L2("MP",%NT) S %S=$P(%STR,%L2("RZ"),%J2) X "F %OFF=$L(%S):-1:1 Q:$E(%S,%OFF)=9" D ALL^%S1KA D  S %L2("FF",%NT,%J2)=%FF
 ..I %S["9" S %FF=9_","_%OFF_":"_($L(%S)-(%S[".")) S:%S["." %FF=%FF_","_$L($P(%S,".",2)) S:$E(%S)="S" %FF=%FF_",S" Q
 ..I %S["TP" S %FF="TP," S %FF=%FF_$L($P(%STR,%L2("RZ"),%J2)) Q
 ..I %S?1"T"."T" S %FF="T,"_$L(%S) Q
 ..S %FF="T,"_$L($P(%STR,%L2("RZ"),%J2))
 K %NT,%S
 S FLAG=""
 Q
 ;
NSHAP ;
 D L2GLOB
 I '$D(%L2("NG")) D FSTR
 I '$D(%L2("NG")) Q
 S %L2BEG=%L2("NG") D FSHAP
 Q
 ;
MSG(TXT) ;
 U 0 W "*** %L2SHAP ."_TXT,!
 Q
 ;
STPC ;
 I $D(%L1SCPC("GLOB")) D  D ^%L1STPC(%ST,%L1SCPC("GLOB"),"%L1SCPC(""MDP"")") Q
 .I $L(%ST)<79,$A($E(%ST))<$A(" "),%L2("U")'=51 S %ST=%ST_$J("",79-$L(%ST))
 ;
 Q:$D(%L1SCPC("EXCEL"))
 U 0:(NOECHO:NOWRAP) W "<span style=""font-family:Miriam Fixed"">",$$H2U^%L1FRM(%ST),"</span><br />",! Q
 Q
 ;
L2GLOB ;
 I '$D(%L2("GLOB")) S %L2GLOB=$$^W4SHP
 E  S %L2GLOB=%L2("GLOB")
 Q
PCH(STAM)
 S:'$D(%L2("U")) %L2("U")=""
 I %L2("U")="0"!(%L2("U")=$P)!(%L2("U")["LEVPC")!(%L2("U")="") Q 0
 Q 1
 ;
TR(TXT) Q TXT
 
 

W4SHEET
W4SHEET(KOT,GROUP,STATUS,TOP,HG,HGDIV,SHEETBG) ; [ 13.04.26 10:07 ] [ 24.06.25 14:24 ] [ 13.05.25 14:24 ] 
 ;
 N I,J,TOPABS
 ;;D PUT^%W3DEB("W4SHEET","KOT=KOT & GROUP=GROUP & STATUS=STATUS & TOP=TOP & HG=HG")
 ; -------------- KOT
 D NOSELECT^%W1JS
 D CLEARSEL^%W1JS
 ;
 I '$G(HGDIV) S HGDIV="99%"
 D
 .W "<div align=""center"" height="""_HGDIV_""" "
 .I $$^W4SMALL!$$^W4TABLET W " class=""noselect"" "
 .D
 ..W "  style=""overflow-x:hidden;"
 ..D
 ...I $G(SHEETBG)="",'$$SHOWRCPT W $$BG^W4BGBODY Q
 ...I $G(SHEETBG)="",$$SHOWRCPT,$$PAPJ^W4PRM W "background-color:black" Q
 ...W $$RAD^W3CSM(6)_";border:2px white ridge;background-color:"_SHEETBG,!
 ..W """ "
 .W " >",!
 ;
 I $D(MFUNC),$D(MFUNC("TOP")) D FUNCTIONS
 ;
 N HGB S HGB=100 I $G(TOP) S HGB=HGB-(TOP*5)
 I $L($G(KOT)) D KOT(.KOT) S HGB=HGB-8
 I $D(MFUNC) S HGB=HGB-$G(%ARG("HGFUNC"),15)
 I $G(HG) S HGB=HG
 ;
 I $G(TOP),TOP'["px" F I=1:1:TOP W "<br />"
 ;;W "HGB="_HGB,!
 ;
 W !
 W "<table id=""TblSheet""  height="""_(HGB-2)_"%"" width=""100%"" "
 W "  border=""0"" dir="""_$$^%W1DIR_""" "
 W "  style=""text-align:center"
 I $$1024^W4WDSCR W ";margin-top:0px"
 W """>",!
 W " <tr>",!
 ;
 I $D(MGROUP),+$G(MGROUP)=1 D GROUP
 ;
 I $G(COLX),$G(COLY) D
 .D BODY(COLX,COLY,$S($D(MGROUP):$S($$^W4SMALL:"82%",1:"85%"),1:"100%"))
 ;
 I $D(MGROUP),+$G(MGROUP)'=1 D GROUP
 ;
 W "</tr></table>",!
 ;
 ;;W "MFUNC:",! ZWR MFUNC
 ;--------------- VIEW FUNCTIONS
 I $D(MFUNC),'$D(MFUNC("TOP")) D FUNCTIONS
 ;
 W "</div>",!
 Q
 ;
 ;
KOT(KOT) ;
 N SHID,CMNT S SHID="",CMNT=""
 ;
 I KOT["<ALGN=" D
 .S KOT("ALIGN")=$P(KOT,"<ALGN=",2)
 .I KOT("ALIGN")["<" S KOT("ALIGN")=$P(KOT("ALIGN"),"<")
 .S KOT=$P(KOT,"<ALGN=")
 ;
 I KOT["<CP-",KOT["<span" D
 .S SHID=$P(KOT,"<CP-",2)
 .S KOT=$P(KOT,"<CP-")
 ;
 I $D(KOT("MSD")),'$$^W4SMALL D KOTMSD
 ;
 W !,"<table width=""100%"" "
 W ">",!
 W " <tr"
 W " >"
  W "<td align=""center"" "
  W ">"
  D
  .N WDT S WDT="100"
  .I $G(KOT("WDT")) S WDT=KOT("WDT")+1
  .W "<table height=""100%"" "
  . W " class=""divsheet"" ",!
  . W " style=""width:"_WDT_"%;border:3px ridge lightgrey;background-color:yellow;font-weight:bold"" "
  . W " dir="""_$$^%W1DIR_""" ",!
  .W ">",!
   W "<tr>"
    W " <td width=""90%"" "
     W " style=""font-size:"_$$^W3FSZ(10)_";text-align:"_$S($D(KOT("ALIGN")):KOT("ALIGN"),1:"center")_";padding:2px"" "
    W " >"
     ;
     W KOT
     I $D(KOT(1)) W "<br>"_KOT(1),!
 
   W "  </td>",!
   ;
   I '$$^W4SMALL,'$D(KOT("NOTIME")) D
   .W "<td id=""curtime"" " ;;class=""sheetheader"" "
   . W " style=""font-size:"_$$^W3FSZ(12)_";text-align:center"">"
   .W "</td>"
   ;
  W "</tr>"
  W "</table>",!
 W "</td></tr>",!
 I $D(KOT("MRQ")),'$$^W4SMALL D KOTMRQ
 W "</table>",!
 Q
 ;
 ;
GRADYELLOW(STAM) ;
 Q $$GRAD1^W3CSM("#FFFF00","#FFFF80")
 ;
KOTMSD ;
 N HOV S HOV=$G(@$$GLHOV^W4HZGMLZ)
 I HOV,HOV-$$^W4DZ<14 Q
 W !,"<table width=""100%"" style=""position:absolute;top:0px;left:0px"" "
 W " cellspacing=""0"" border=""0"" "
  W " dir="""_$$^%W1DIR_""" ",!
 W ">"
 W !,"<tr "
 W ">"
  ;;W "<td style=""background-color:#990000;color:yellow;text-align:center;font-weight:bold;font-size:"_$$^W3FSZ(12)_";border-bottom:ridge "_$$^W4KF(3)_"px lightgrey"">"
  W "<td style=""background-color:"_$$BGHD^W4BGBODY_";color:"_$$FGHD^W4BGBODY_";text-align:center;font-weight:bold;font-size:"_$$^W3FSZ(12)_";border-bottom:ridge "_$$^W4KF(3)_"px lightgrey"">"
   S MSD=$$GETP^%W1PRM("MSD") I MSD D
   .W $$H2U^%L1FRM($$^W3MSDG(MSD))
  W "</td>",!
 W "</tr>",!
 W "</table>",!
 W "<br>",!
 Q
 ;
KOTMRQ ;
 W "<tr><td dir="""_$$^%W1DIR_""">"
 W "  <marquee id=""msgbrd"" style=""font-size:"_$$^W3FSZ(11)_""" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
  W KOT("MRQ")
 W "  </marquee>",!
 W "</tr>",!
 Q
 ;
BODY(COLX,COLY,WD) ;
  ;;M ^AA("W4SHEET","MTXT")=MTXT
  W "<td width="""_WD_""" >"
   W "<table id=""TblBody"" cellpadding=""3"" width=""100%"" height=""100%"" "
    W " class=""sheetbody"" border=""0"" "
    W " cellspacing=""8px"""
   W ">",!
   ;
   N I,J
   F I=1:1:COLY W "<tr height="""_$$HGBD(COLY)_""">" D  W "</tr>",!
   .F J=1:1:COLX D
   ..N CDI S CDI=$G(MTXT(I,J,"I"))
   ..I $E(CDI,1,2)="<>" D
   ...S MTXT(I,J,"BG")="#FF6A00<>#FFF960"
   ...S MTXT(I,J,"FG")="#000000"
   ...N CD S CD=$P(CDI,"<>",2) Q:CD=""
   ...N MH S MH=$$MH^W4P(CD)
   ...S MTXT(I,J)=$$H2U^%L1FRM($$SHEM^W4P(CD))_" <br>"_$J(MH,2,2)
   ...;;M ^AA("W4SHEET","MTXT")=MTXT
   ..
   ..W "<td width="""_$$WDBD(COLX)_""" ",!
   .. W " class=""tdsheet"" "
   .. D DIV(.MTXT)
   ..W "</td>",!
   ;
   W "</table>",!
  W "</td>",!
 Q
 ;
 ;
DIV(MTXT) ;
  N FSZ S FSZ=12
  I $$1700^W4WDSCR S FSZ=FSZ+1
  ;
  I $D(MTXT(I,J,"ID")) W " id="""_MTXT(I,J,"ID")_""" "
  ;
  W " style="""
   I '$$SHOWRCPT D 
   .I $D(MTXT(I,J,"BG")) D BGBODY(MTXT(I,J,"BG"))
   .I '$D(MTXT(I,J,"BG")),$D(%ARG("GRAD")) D BGBODY(%ARG("GRAD"))
   .I $D(MTXT(I,J,"FG")) W ";color:"_MTXT(I,J,"FG")
   .I $D(MTXT(I,J,"BORDER")) W ";border:"_MTXT(I,J,"BORDER")
 .
   .W ";text-align:center"
   .W ";word-break:break-word;overflow-wrap:break-word"
   .W ";font-size:"_$$^W3FSZ(FSZ)
   .I $D(MTXT(I,J,"TO")) W ";cursor:pointer"
   .I $D(MTXT(I,J,"PIC")) D
   ..W ";background-image:url('./"_MTXT(I,J,"PIC")_"');background-size:cover;"
   ..W "vertical-align:bottom"
   ;
   I $$SHOWRCPT D 
   .W ";text-align:center"
   .W ";font-size:"_$$^W3FSZ(FSZ)
   .I $D(MTXT(I,J,"TO")) W ";cursor:pointer"
  W """ "
  ;
  I '$D(MTXT(I,J)) W " onMouseDown=""ifrHide('MUST')"" >&nbsp;" Q
  ;
  I $D(MTXT(I,J,"TO")) D
  .N ACT S ACT=$$^W4TOUCH
  .I $D(MTXT(I,J,"TO","ACT")) S ACT=MTXT(I,J,"TO","ACT")
  .W " "_ACT_"="""_MTXT(I,J,"TO")_""" "
  .W " onMouseDown=""this.style.backgroundColor='lightgray';CurrentBorder(this)"""
  ;
  I $D(MTXT(I,J,"ASK")),'$$^W4SMALL D
  .N CD S CD=$G(MTXT(I,J,"I"))
  .I '$$SHOWRCPT,$D(MTXT(I,J,"PAR")),CD,$$DESC^W4P(CD)?.P W ">&nbsp;&nbsp;" Q
  .
  .W "><img src=""w3ask2.png"" "
  .W " onMouseOver=""openDesc('"_CD_"')"""
  .W " onMouseOut=""closeDesc('"_CD_"')"""
  .W " />"
  ;
  I $D(MTXT(I,J,"RCPT")) D
  .W "><img src=""w4rcpt.png"" class=""right-corner-image"" "
  ;
  I '$D(MTXT(I,J,"ASK"))!$$^W4SMALL D
  .W ">"
   ;
   W $G(MTXT(I,J))
 Q
 ;
 ;
HGBD(COLY)
 I $G(MTXT("HG")) Q MTXT("HG")
 I '$G(COLY) Q "15%"
 Q (100\COLY)_"%"
 ;
WDBD(COLX)
 I $G(MTXT("WD")) Q MTXT("WD")
 I '$G(COLX) Q "15%"
 Q (100\COLX)_"%"
 ;
BGBODY(BGCOLOR) ;
 I BGCOLOR["<>" D  Q
 .N GRAD1,GRAD2
 .S GRAD1=$P(BGCOLOR,"<>")
 .S GRAD2=$P(BGCOLOR,"<>",2)
 .W $$GRAD1^W3CSM(GRAD1,GRAD2)_";"
 ;
 W "background-color:"_BGCOLOR
 Q 
 ;
GROUP ;
  N COLGR S COLGR=$O(MGROUP(99),-1)
  I $G(COLY),COLGR<COLY S COLGR=COLY
  I '$G(COLY) S COLY=COLGR
  ;
  D
  .I COLGR>13,$G(MGROUP)'["FSZ" S MGROUP=$G(MGROUP)_";FSZ11" Q
  .I COLGR>10,$G(MGROUP)'["FSZ" S MGROUP=$G(MGROUP)_";FSZ12" Q
  ;
  W "<td valign=""top"">"
  ;
  W " <table width=""100%"" id=""TblGr"" "
  W "   height="""_$S($D(MGROUP("HG")):MGROUP("HG"),1:"100%")_""" "
  W "   cellpadding=""5"" "
  W "   cellspacing=""4"" "
  W "   border=""0"" class=""sheetgroups"" ",!
  W ">",!
  ;
  F I=1:1:COLGR W "<tr height="""_(100\COLGR)_"%"">" D  W "</tr>",!
   .W "<td class=""tdgroup"" " D  W "</td>",!
   ..
   ..S COLOR=0
   ..D
   ...I $L($G(MGROUP(I,"BG"))),MGROUP(I,"BG")'="FFFFFF" S COLOR=1 Q
   ...I $L($G(MGROUP(I,"FG"))),MGROUP(I,"FG")'="000000" S COLOR=1 Q
   ..
   ..I '$D(MGROUP(I)) W ">&nbsp;" Q
   ..
   ..I $D(MGROUP(I,"TO")) D
   ...W " "_$$^W4TOUCH_"="""_MGROUP(I,"TO")_""""
   ...
   ...W " style=""cursor:pointer"
   ...W " ;font-weight:bold"
   ...
   ...I $G(MGROUP)["CENTER"!$$^W4SMALL W ";text-align:center"
   ... 
   ...I $G(MGROUP)["FSZ" D
   ....N FSZ S FSZ=+$P(MGROUP,"FSZ",2) Q:FSZ<9
   ....I $$1700^W4WDSCR S FSZ=FSZ+2
   ....W ";font-size:"_$$^W3FSZ(FSZ)
   ...
   ...I $G(MGROUP(I,"I"))=GROUP,'COLOR D
   ....W ";color:"_$$GRCURFG^W4CSS
   ....W ";background-color:"_$$GRCURBG^W4CSS
   ...
   ...I COLOR D
   ....W ";color:"_$G(MGROUP(I,"FG"))
   ....W ";background-color:"_$G(MGROUP(I,"BG"))
   ....I $G(MGROUP(I,"I"))=GROUP W ";text-decoration:underline;"
   ....
   ...I $D(MGROUP(I,"IMG")) D
   ....W ";background-image:url('"_MGROUP(I,"IMG")_"');background-repeat:no-repeat"
   ...W """"
   ..W " >",!
   .. W "&nbsp;"_MGROUP(I)
   ;
  W "</table></td>",!
 Q
 ;
HGGR(COLY)
 I $G(MGROUP("HG")) Q MGROUP("HG")
 I '$G(COLY) Q "15%"
 Q (100\COLY)_"%"
 ;
 ;
FUNC(WD) ;
 N COLFN S COLFN=$O(MFUNC(99),-1)
 I $G(COLX),COLFN<COLX,COLFN S COLFN=COLX
 ;
 W "<td width="""_WD_""">"
 ;
 I 'COLFN W "&nbsp;</td>" Q
 ;
 W !,"<table width=""100%"" id=""TblFnc"" height="""_$$HGFUNC_""" border=""0"" "
  I $$^W4SMALL W " class=""noselect"" "
  W " cellspacing=""5"" cellpadding=""3"" "
 W ">",!
 ;
 W "<tr>" D  W "</tr>",!
 .I 'COLFN W "<td style=""background-color:"_$$BGCOLOR^W4CSS_""">&nbsp;</td>" Q
 .
 .F J=1:1:COLFN D
 ..W "<td width="""_$$WDFN(COLFN,J)_""" "
 .. W " class=""sheetfunctions"" "
 .. W " style="""
 ..
 .. I $D(MFUNC(J,"TO")) D
 ... W ";cursor:pointer"
 ... I $G(MFUNC)["CENTER" W ";text-align:center"
 ... N FSZ S FSZ=+$P($G(MFUNC),"FSZ",2); -- WAS MGROUP
 ... I $G(MFUNC(J,"FSZ")) S FSZ=MFUNC(J,"FSZ")
 ...
 ... I 'FSZ S FSZ=14
 ... I $$1024^W4WDSCR,FSZ>10 S FSZ=FSZ-2
 ... ;;I $$1700^W4WDSCR,FSZ>10 S FSZ=FSZ+1
 ...
 ... I FSZ W ";font-size:"_$$^W3FSZ(FSZ)
 ...
 ... I $L($G(STATUS)),$G(MFUNC(J,"I"))=STATUS D
 .... W ";background-color:"_$$GRCURFG^W4CSS
 .... W ";color:"_$$GRCURBG^W4CSS
 ...
 ... I '$L($G(STATUS))!($G(MFUNC(J,"I"))'=STATUS) D
 .... I $D(MFUNC(J,"BG")) W ";background-color:"_MFUNC(J,"BG")
 .... I $D(MFUNC(J,"FG")) W ";color:"_MFUNC(J,"FG")
 ...
 ... I $D(MFUNC(J,"IMG")) D
 .... W ";background-image:url('"_MFUNC(J,"IMG")_"');background-repeat:no-repeat"
 ... W """"
 ...
 ... W " "_$$^W4TOUCH_"="""_MFUNC(J,"TO")_""" "
 ..
 .. I '$D(MFUNC(J,"TO")) W """"
 ..
 .. W ">" ; -- END TD
 ..
 ..D
 ...I '$D(MFUNC(J)) W "&nbsp;" Q
 ...W $G(MFUNC(J))
 .. 
 ..W "</td>",!
 ;
 W "</table></td>",!
 Q
 ;
 ;
WDFN(COL,J)
 I $G(J),$G(MFUNC(J,"WD")) Q +MFUNC(J,"WD")_"%"
 I $G(MFUNC("WD")) Q +MFUNC("WD")_"%"
 I $G(COL) Q (100\COL)_"%"
 Q "15%"
 ;
EXIT(WD) ;
 Q:$D(MFUNC("NOEXIT"))
 W "<td width="""_WD_""">"
 W !,"<table width=""100%"" height="""_$$HGFUNC_""" border=""0"" cellspacing=""5"" ",!
  W "style="""_$$RAD_""" "
 W ">"
 W "<tr><td "
 I '$D(MFUNC("EXIT","TO")) W $$^W4TOUCH_"=""Exit()"" "
 I $D(MFUNC("EXIT","TO")) W $$^W4TOUCH_"="""_MFUNC("EXIT","TO")_""""
 W " class=""sheetexit"" "
 W " style="""
 I $D(MFUNC("EXIT","BG")) W "background-color:"_MFUNC("EXIT","BG")_";"
 I $D(MFUNC("EXIT","FG")) W "color:"_MFUNC("EXIT","FG")_";"
 W """"
 W ">"
 I '$D(MFUNC("EXIT")) W $$H2U^%L1FRM($$^%W1DICT("EXIT"))
 I $D(MFUNC("EXIT")) W $$^%W1DICT(MFUNC("EXIT"))
 W "</td></tr>",!
 W "</table></td>",!
 Q
 ;
FUNCTIONS ;
 W !,"<table width=""100%"" height="""_$S($D(HZGULM):6,1:12)_"%"" "
  W " style=""text-align:center"
  ;
  W """ "
  W "border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 W "<tr >",!
 N WDFN S WDFN="90%"
 I $$^W4SMALL S WDFN="85%"
 I '$D(MFUNC("INV")) D
 .D FUNC(WDFN)
 .D EXIT("100%")
 I $D(MFUNC("INV")) D
 .D EXIT("100%")
 .D FUNC(WDFN)
 W "</tr></table>",!
 Q
 ;
RAD(STAM) ; 
 Q $$RAD^W3CSM
 ;
HGFUNC(STAM) ; 
 ;;I $$1024^W4WDSCR&'$$INPCODE^W4PRM Q "80%"
 Q "100%"
 ;
SHOWRCPT()
 Q +$$GETP^%W1PRM("SHOWRCPT")
 
 

W4SHEET0
W4SHEET(KOT,GROUP,STATUS,TOP,HG) ; [ 05.03.17 03:33 ] [ 22.01.17 20:48 ] [ 31.07.16 17:54 ] 
 N I,J,TOPABS
 ;;D PUT^%W3DEB("W4SHEET","KOT=KOT & GROUP=GROUP & STATUS=STATUS & TOP=TOP & HG=HG")
 ; -------------- KOT
 D NOSELECT^%W1JS
 D CLEARSEL^%W1JS
 ;;W "<div align=""center"" onMouseUp=""clearSelection()"""
 W "<div align=""center"" height=""99%"" "
 W " >",!
 N HGB S HGB=100 I $G(TOP) S HGB=HGB-(TOP*5)
 I $L($G(KOT)) D KOT(.KOT) S HGB=HGB-8
 I $D(MFUNC) S HGB=HGB-$G(%ARG("HGFUNC"),15)
 I $G(HG) S HGB=HG
 ;
 I $G(TOP),TOP'["px" F I=1:1:TOP W "<br />"
 ;;W "HGB="_HGB,!
 W !,"<table id=""TblSheet""  height="""_HGB_"%"" width=""100%"" "
 W "border=""0"" dir="""_$$^%W1DIR_""" padding=""0px"" "
 W "style=""text-align:center"
 ;
 W """>",!
 W "<tr>",!
 ;
 I $D(MGROUP),$G(MGROUP)=1 D GROUP
 ;
 I $G(COLX),$G(COLY) D
 .D BODY(COLX,COLY,$S($D(MGROUP):$S($$^W4SMALL:"82%",1:"85%"),1:"100%"))
 ;
 I $D(MGROUP),$G(MGROUP)'=1 D GROUP
 ;
 W "</tr></table>",!
 ;
 ;;W "MFUNC:",! ZWR MFUNC
 ;--------------- VIEW FUNCTIONS
 I $D(MFUNC) D FUNCTIONS
 ;
 W "</div>",!
 Q
 ;
KOT(KOT) ;
 N SHID,CMNT S SHID="",CMNT=""
 ;
 I KOT["<ALGN=" D
 .S KOT("ALIGN")=$P(KOT,"<ALGN=",2)
 .I KOT("ALIGN")["<" S KOT("ALIGN")=$P(KOT("ALIGN"),"<")
 .S KOT=$P(KOT,"<ALGN=")
 ;
 I KOT["<CP-",KOT["<span" D
 .S SHID=$P(KOT,"<CP-",2)
 .S KOT=$P(KOT,"<CP-")
 ;
 I $D(KOT("MSD")),'$$^W4SMALL D KOTMSD
 ;
 W !,"<table width=""100%"" >"
 W "<tr"
 W ">"
  W "<td>"
  W "<table width=""100%"" hight=""100%"" style=""border:solid;border-style:ridge;color:lightgrey"" dir="""_$$^%W1DIR_""" >",!
   W "<tr><td width=""90%"" class=""sheetheader"" style=""text-align:"_$S($D(KOT("ALIGN")):KOT("ALIGN"),1:"center")_";padding:2px"">"
    W KOT
    I $D(KOT(1)) W "<br>"_KOT(1),!
   W "</td>",!
   ;
   I '$$^W4SMALL,'$D(KOT("NOTIME")) D
   .W "<td id=""curtime"" class=""sheetheader"" "
   . W " style=""font-size:"_$$^W3FSZ(12)_""">"
   .W "</td>"
   W "</tr>"
   ;
  W "</tr>"
  W "</table>",!
 W "</td></tr>",!
 I $D(KOT("MRQ")),'$$^W4SMALL D KOTMRQ
 W "</table>",!
 Q
 ;
KOTMSD ;
 W !,"<table width=""100%"" style=""position:absolute;top:0px;left:0px"" "
 W " cellspacing=""0"" cellpadding=""3px"" border=""0"" dir="""_$$^%W1DIR_""" ",!
 W ">"
 W !,"<tr "
 W ">"
  W "<td style=""background-color:#990000;color:yellow;text-align:center;font-weight:bold;font-size:"_$$^W3FSZ(12)_";border-bottom:ridge 3px lightgrey"">"
   S MSD=$$GETP^%W1PRM("MSD") I MSD D
   .W $$H2U^%L1FRM($$^W3MSDG(MSD))
  W "</td>",!
 W "</tr>",!
 W "</table>",!
 W "<br>",!
 Q
 ;
KOTMRQ ;
 W "<tr><td dir="""_$$^%W1DIR_""">"
 W "  <marquee id=""msgbrd"" style=""font-size:"_$$^W3FSZ(11)_""" direction="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
 W "  </marquee>",!
 W "</tr>",!
 Q
 ;
BODY(COLX,COLY,WD) ;
  W "<td width="""_WD_""" >"
   W "<table id=""TblBody"" cellpadding=""3"" width=""100%"" height=""100%"" class=""sheetbody"" border=""1"">",!
   F I=1:1:COLY W "<tr height="""_$$HGBD(COLY)_""">" D  W "</tr>",!
   .F J=1:1:COLX D
   ..W "<td width="""_$$WDBD(COLX)_""" ",!
   ..I '$D(MTXT(I,J)) W " onMouseDown=""ifrHide('MUST')"" >&nbsp;</td>" Q
   ..
   ..I '$D(MTXT(I,J,"TO")) D
   ...I '$D(MTXT(I,J,"BG")),'$D(MTXT(I,J,"FG")) Q
   ...W " style="""
   ...I $D(MTXT(I,J,"BG")) W "background-color:"_MTXT(I,J,"BG")
   ...I $D(MTXT(I,J,"FG")) W ";color:"_MTXT(I,J,"FG")
   ...I $D(MTXT(I,J,"BORDER")) W ";border:"_MTXT(I,J,"BORDER")
   ...W """"
   ..
   ..I $D(MTXT(I,J,"ID")) W " id="""_MTXT(I,J,"ID")_""" "
   ..
   ..I $D(MTXT(I,J,"TO")) D
   ...N ACT S ACT="onMouseUp"
   ...I $D(MTXT(I,J,"TO","ACT")) S ACT=MTXT(I,J,"TO","ACT")
   ...W " "_ACT_"="""_MTXT(I,J,"TO")_""" style=""cursor:pointer"
   ...I $D(MTXT(I,J,"BG")) W ";background-color:"_MTXT(I,J,"BG")
   ...I $D(MTXT(I,J,"FG")) W ";color:"_MTXT(I,J,"FG")
   ...I $D(MTXT(I,J,"BORDER")) W ";border:"_MTXT(I,J,"BORDER")
   ...W ";text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")
   ...W """"
   ...W " onMouseDown=""this.style.backgroundColor='gray'"""
   ..W ">"
   ..I $D(MTXT(I,J,"ASK")),'$$^W4SMALL D
   ...N CD S CD=$G(MTXT(I,J,"I"))
   ...I $D(MTXT(I,J,"PAR")),CD,$$DESC^W4P(CD)?.P W "&nbsp;&nbsp;" Q
   ...W "<img src=""w3ask2.png"" "
   ...W " onMouseOver=""openDesc('"_CD_"')"""
   ...W " onMouseOut=""closeDesc('"_CD_"')"""
   ...W ">"
   ..W $G(MTXT(I,J)) W "</td>",!
   W "</table>",!
  W "</td>",!
 Q
HGBD(COLY)
 I $G(MTXT("HG")) Q MTXT("HG")
 I '$G(COLY) Q "15%"
 Q (100\COLY)_"%"
WDBD(COLX)
 I $G(MTXT("WD")) Q MTXT("WD")
 I '$G(COLX) Q "15%"
 Q (100\COLX)_"%"
 ;
GROUP ;
  N COLGR S COLGR=$O(MGROUP(99),-1)
  I $G(COLY),COLGR<COLY S COLGR=COLY
  I '$G(COLY) S COLY=COLGR
  W "<td valign=""top"">"
  W " <table width=""100%"" id=""TblGr"" "
  W "  height="""_$S($D(MGROUP("HG")):MGROUP("HG"),1:"100%")_""" "
  W " cellpadding=""3"" "
  W " border=""1"" class=""sheetgroups"" >",!
  ;
  N COLOR S COLOR=0
  F I=1:1:COLGR D
  .I $L($G(MGROUP(I,"BG"))),MGROUP(I,"BG")'="FFFFFF" S COLOR=1 Q
  .I $L($G(MGROUP(I,"FG"))),MGROUP(I,"FG")'="000000" S COLOR=1 Q
  ;
  F I=1:1:COLGR W "<tr height="""_(100\COLGR)_"%"">" D  W "</tr>",!
   .S COLOR=0
   .D
   ..I $L($G(MGROUP(I,"BG"))),MGROUP(I,"BG")'="FFFFFF" S COLOR=1 Q
   ..I $L($G(MGROUP(I,"FG"))),MGROUP(I,"FG")'="000000" S COLOR=1 Q
   .W "<td "
   .I '$D(MGROUP(I)) W ">&nbsp;</td>" Q
   .
   .I $D(MGROUP(I,"TO")) D
   ..W " onMouseUp="""_MGROUP(I,"TO")_""""
   ..W " style=""cursor:pointer"
   ..
   ..I $G(MGROUP)["CENTER"!$$^W4SMALL W ";text-align:center"
   ..I $G(MGROUP)["FSZ" W ";font-size:"_$$^W3FSZ($P($P(MGROUP,"FSZ",2),":"))
   ..
   ..I $G(MGROUP(I,"I"))=GROUP,'COLOR D
   ...W ";color:"_$$GRCURFG^W4CSS
   ...W ";background-color:"_$$GRCURBG^W4CSS
   ..
   ..I COLOR D
   ...W ";color:"_$G(MGROUP(I,"FG"))
   ...W ";background-color:"_$G(MGROUP(I,"BG"))
   ...I $G(MGROUP(I,"I"))=GROUP W ";text-decoration:underline;"
   ...
   ..W """"
   .W " >",!
   .;;W "&nbsp;"_$$H2U^%L1FRM(MGROUP(I))
   .W "&nbsp;"_MGROUP(I)
   .W "</td>",!
  W "</table></td>",!
 Q
HGGR(COLY)
 I $G(MGROUP("HG")) Q MGROUP("HG")
 I '$G(COLY) Q "15%"
 Q (100\COLY)_"%"
 ;
FUNC(WD) ;
 N COLFN S COLFN=$O(MFUNC(99),-1)
 I $G(COLX),COLFN<COLX,COLFN S COLFN=COLX
 ;
 W "<td width="""_WD_""">"
 ;
 I 'COLFN W "&nbsp;</td>" Q
 ;
 W !,"<table width=""100%"" id=""TblFnc"" height=""100%"" border=""1"" class=""sheetfunctions"">",!
 W "<tr>" D  W "</tr>",!
 .I 'COLFN W "<td style=""background-color:"_$$BGCOLOR^W4CSS_""">&nbsp;</td>" Q
 .F J=1:1:COLFN D
 ..W "<td width="""_$$WDFN(COLFN,J)_""" "
 ..I '$D(MFUNC(J)) W ">&nbsp;</td>" Q
 ..I $D(MFUNC(J,"TO")) D
 ...W " onMouseUp="""_MFUNC(J,"TO")_""" style=""cursor:pointer"
 ...I $G(MFUNC)["CENTER" W ";text-align:center"
 ...I $G(MFUNC)["FSZ" W ";font-size:"_$$^W3FSZ($P($P(MGROUP,"FSZ",2),":"))
 ...I $L($G(STATUS)),$G(MFUNC(J,"I"))=STATUS D
 ....W ";background-color:"_$$GRCURFG^W4CSS
 ....W ";color:"_$$GRCURBG^W4CSS
 ....W """"
 ...I '$L($G(STATUS))!($G(MFUNC(J,"I"))'=STATUS) D
 ....I $D(MFUNC(J,"BG")) W ";background-color:"_MFUNC(J,"BG")
 ....I $D(MFUNC(J,"FG")) W ";color:"_MFUNC(J,"FG")
 ....W """"
 ..W ">"
 ..;;W $$H2U^%L1FRM(MFUNC(J))
 ..W MFUNC(J)
 ..W "</td>",!
 W "</table></td>",!
 Q
 ;
WDFN(COL,J)
 I $G(J),$G(MFUNC(J,"WD")) Q +MFUNC(J,"WD")_"%"
 I $G(MFUNC("WD")) Q +MFUNC("WD")_"%"
 I $G(COL) Q (100\COL)_"%"
 Q "15%"
 ;
EXIT(WD) ;
 W "<td>",! ;;  width="""_WD_""">"
 W !,"<table width=""100%"" height=""100%"" border=""1"">",!
 W "<tr><td "
 I '$D(MFUNC("EXIT","TO")) W "onMouseUp=""Exit()"" "
 I $D(MFUNC("EXIT","TO")) W "onMouseUp="""_MFUNC("EXIT","TO")_""""
 W " class=""sheetexit"" "
 W " style="""
 I $D(MFUNC("EXIT","BG")) W "background-color:"_MFUNC("EXIT","BG")_";"
 I $D(MFUNC("EXIT","FG")) W "color:"_MFUNC("EXIT","FG")_";"
 W """"
 W ">"
 I '$D(MFUNC("EXIT")) W $$H2U^%L1FRM($$^%W1DICT("EXIT"))
 I $D(MFUNC("EXIT")) W $$^%W1DICT(MFUNC("EXIT"))
 W "</td></tr>",!
 W "</table></td>",!
 Q
 ;
FUNCTIONS ;
 W !,"<table width=""100%"" height="""_$S($D(HZGULM):6,1:12)_"%"" "
  W " style=""text-align:center"
  ;
  W """ "
  W "border=""0"" dir="""_$$^%W1DIR_""" "
 W ">",!
 W "<tr>",!
 N WDFN S WDFN="85%"
 I $$^W4SMALL S WDFN="82%"
 I '$D(MFUNC("INV")) D
 .D FUNC(WDFN)
 .D EXIT("100%")
 I $D(MFUNC("INV")) D
 .D EXIT("100%")
 .D FUNC(WDFN)
 W "</tr></table>",!
 Q
 
 
 

W4SHOPIC
W4SHOPIC(NOM) ; [ 01.05.11 11:16 ] [ 30.04.11 18:44 ] [
 S PIC=$$PICDOC^W4SPHBY(NOM)
 S PIC=$P(PIC,"~",2) Q:PIC=""
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr><th>"_$$^%W1DICT("INVOICE")_" "_NOM_"</th></tr>",!
  W "<tr>"
   W "<td>"
    W "<img src="""_PIC_""" />"
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "<br>",!
 W "<div id=""divbut"">",!
 W "<table>",!
  W "<tr>",!
   W "<td align=""center"">"
     D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:black",",,,100")
   W "</td>",!
   W "<td width=""10%"">&nbsp;</td>",!
   W "<td align=""center"">"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q

W4SHOWCA
W4SHOWCA(GLOB) ;     [ 26.12.08 15:04 ] [ 26.10.05 14:39 ] [ 02.06.02  3:08 PM ]
 N (JB,%REM,GLOB)
TV S SRW=0,NP=0 I GLOB["OUTL" S SRW=1,NP=6
 ;
 K @$$^W4MAIN("TEMP")
 ;
 S (SHHB,SHHK,SIHB,SIHK,SVHB,SVHK,SDHB,SDHK,SAHB,SAHK,SJHB,SJHK,SLHB,SLHK)=0
 S (SHZB,SHZK,SIZB,SIZK,SVZB,SVZK,SDZB,SDZK,SAZB,SAZK,SJZB,SJZK,SLZB,SLZK)=0
 ;
 I GLOB["TRANL" D
 .S ASM=$P($G(@GLOB),"^",10)
 .S KVZ=$P($G(@GLOB),"^",8)
 .S ZMAN=$P($G(@GLOB),"^",11)
 ;
 S N="",I=0 F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S N1="" F  S N1=$O(@GLOB@(N,N1)) Q:N1=""  D
 ..S A=$G(^(N1))
 ..D SID(A)
 ..D CARD(A)
 ..D HEV(A)
 ..D SUM(A)
 ..D KOHAV(A)
 ..D TS(A)
 ..D SUM1(A)
 ..D SUM2(A)
 ..D ISKA(A)
 ..D SUGA(A)
 ..
 ..I ISKA<50 D
 ...S SHHB=SHHB+SUM,SHHK=SHHK+KOHAV
 ...I HEV=1 S SIHB=SIHB+SUM,SIHK=SIHK+KOHAV
 ...I HEV=2 S SVHB=SVHB+SUM,SVHK=SVHK+KOHAV
 ...I HEV=3 S SDHB=SDHB+SUM,SDHK=SDHK+KOHAV
 ...I HEV=4 S SAHB=SAHB+SUM,SAHK=SAHK+KOHAV
 ...I HEV=5 S SJHB=SJHB+SUM,SJHK=SJHK+KOHAV
 ...I HEV=6 S SLHB=SLHB+SUM,SLHK=SLHK+KOHAV
 ..
 ..I ISKA>50 D
 ...S SHZB=SHZB+SUM,SHZK=SHZK+KOHAV
 ...I HEV=1 S SIZB=SIZB+SUM,SIZK=SIZK+KOHAV
 ...I HEV=2 S SVZB=SVZB+SUM,SVZK=SVZK+KOHAV
 ...I HEV=3 S SDZB=SDZB+SUM,SDZK=SDZK+KOHAV
 ...I HEV=4 S SAZB=SAZB+SUM,SAZK=SAZK+KOHAV
 ...I HEV=5 S SJZB=SJZB+SUM,SJZK=SJZK+KOHAV
 ...I HEV=6 S SLZB=SLZB+SUM,SLZK=SLZK+KOHAV
 ..
 ..D MB(A)
 ..
 ..S I=I+1,@$$^W4MAIN("TEMP")@(I)=SID_"\"_CARD_"\"_HEV1_"\"_SUM_"\"_KOHAV_"\"_ISKA1_"\"_SUGA_"\"_TS_"\"_(SUM1*.01)_"\"_(SUM2*.01)_"\"_MB1
 ;
 S @$$^W4MAIN("TEMP")@("H")=SHHB_"^"_SHHK_"^"_SIHB_"^"_SIHK_"^"_SVHB_"^"_SVHK_"^"_SDHB_"^"_SDHK_"^"_SAHB_"^"_SAHK_"^"_SJHB_"^"_SJHK_"^"_SLHB_"^"_SLHK
 S @$$^W4MAIN("TEMP")@("Z")=SHZB_"^"_SHZK_"^"_SIZB_"^"_SIZK_"^"_SVZB_"^"_SVZK_"^"_SDZB_"^"_SDZK_"^"_SAZB_"^"_SAZK_"^"_SJZB_"^"_SJZK_"^"_SLZB_"^"_SLZK
 Q
 ;
SID(A) ;
 S SID=$E(A,1,6)
 Q
 ;
 ;
CARD(A) ;
 ;
 ;;I SRW S CARD=$$EA(A,5,19) Q
 I SRW S CARD=$$EA(A,8,16) Q
 ;
 N MG S CARD=$P($E(A,32,50),"="),MG=$E(A,32,68)
 I (($E(MG,1,2)="12")!($E(MG,1,2)="20")!($E(MG,1,2)="31")),$E(MG,18)="=" D
 .S CARD=$E(MG,37)_$E(MG,20,27)
 S CARD=$E(CARD,$L(CARD)-15,255)
 Q
 ;
 ;
HEV(A) ;
 I SRW S HEV=$E(A,NP+60) G HEV1
 ;
 S HEV=$E(A,69)
HEV1 S HEV1=$S(HEV=1:"yi",HEV=2:"ie",HEV=3:"ic",HEV=4:"n`",HEV=5:"JC",HEV=6:"nl",1:"")
 Q
 ;
 ;
SUM(A) ;
 I SRW S SUM=$J($TR($$EA(A,36,8)," ","")*.01,2,2) Q
 ;
 S SUM=$J($TR($E(A,12,19)," ","")*.01,2,2)
 Q
 ;
 ;
KOHAV(A) ;
 I SRW S KOHAV=$J($TR($$EA(A,52,8)," ",""),2,2) Q
 ;
 S KOHAV=$J($TR($E(A,20,27)," ","")*.01,2,2)
 Q
 ;
 ;
TS(A) ;
 I SRW S TS=+$TR($$EA(A,94,2)," ","") Q
 ;
 S TS=+$TR($E(A,114,116)," ","") S:'TS TS=""
 Q
 ;
 ;
SUM1(A) ;
 I SRW S SUM1=+$TR($$EA(A,78,8)," ","") S:'SUM1 SUM1="" Q
 ;
 S SUM1=+$TR($E(A,98,105)," ","") S:'SUM1 SUM1=""
 Q
 ;
 ;
SUM2(A) ;
 I SRW S SUM2=+$TR($$EA(A,86,8)," ","") S:'SUM2 SUM2="" Q
 ;
 S SUM2=+$TR($E(A,106,113)," ","") S:'SUM2 SUM2=""
 Q
 ;
 ;
ISKA(A) ;
 I SRW S ISKA=$$EA(A,61,2) G ISKA1
 ;
 S ISKA=$E(A,7,8)
ISKA1 S ISKA1=$S(ISKA="00":"meqg",ISKA="01":"bx eg",ISKA="02":"yn eg",ISKA="03":"ln eg",ISKA="51":"bx kf",ISKA="52":"hia",ISKA=53:"yn kf",1:"")
 S ISKA1=$S($E(A,9,10)="50":"lh",$E(A,9,10)="51":"ag",1:"")_" "_ISKA1
 Q
 ;
SUGA(A)
 I SRW S SUGA=$$EA(A,63,1) Q
 ;
 S SUGA=$E(A,29)
 Q
 ;
 ;
MB(A) ;
 I SRW S MB=$$EA(A,65,1)
 ;
 S MB=$E(A,28)
MB1 S MB1=$S(MB=1:"y",MB=2:"c",MB=4:"cv",MB=5:"nv",1:"  ")
 Q
 ;
 ;
VW(GLOB) ;
 N (JB,%REM,GLOB) D ^%L1C
 D TV
 K ^TEMP($P)
 M ^TEMP($P,"S")=@$$^W4MAIN("TEMP")
 S %SCRN="SHVA"
 S %SC("MIUN")=""
 D ^%L1SC
 S %SCRN="SHVA1" D A^%L1SC
 S %GET="99 - qitcdl" D N^%L1GET
 I %S=99 S %SCRN="SHVA" D ^%L1SCPC S %SCRN="SHVA1",%L1SCPC(1)="",%L1SCPC("NODT")="" D ^%L1SCPC
 K @$$^W4MAIN("TEMP")
 Q
 ;
EA(TXT,N,D)
 Q $E(TXT,NP+N,NP+N+D-1)

W4SHOWD
W4SHOWD(PRM) ; [ 01.10.17 12:27 ] [ 09.04.16 13:30 ] [ 06.09.14 16:34 ] [
 D PUT^%W3DEB("W4SHOWD","PRM=PRM")
 ;;S ^D("PRM0")=PRM
 ;;S ^D("PRM")=$$DCR^%W1ENCRL(PRM)
 Q $$DCR^%W1ENCRL(PRM)
 
 
 
 

W4SHOWDL
W4SHOWDL ; [ 26.11.19 10:53 ] [ 
 Q
 

W4SHOWER
W4SHOWER(VT,NOM) ; [ 26.08.11 12:07 ] [ 25.08.11 12:42 ] [ 21.08.11 19:35 ]
 N (JB,%ARG,%REM,VT,NOM)
 N HZM S HZM=$$GET^%W1PRM("HZM") Q:'HZM
 I VT=4,$$IFVC^WV(HZM,NOM) S VT=8
 I VT=8 D VC
 ;
 W "<br>",!
 W "<div id=""divbut"" align=""center"">",!
  W "   <input type=""button"" class=""btn"" style=""color:red"" value="""_$$^%W1DICT("CLOSE")_""" "_$$^W4TOUCH_"=""Close()"">"
 W "</div>",!
 .
 Q
 ;
 ;
GET(VP,RKV) ;
 Q $$GET^W4TMPANS(VP,RKV)
 ;
 ;
VC ;-------------- VALIOCARD ---------------
 ;
 W "<br>",!
 W "<table width=""90%"" dir="""_$$^%W1DIR_""">",!
  F I=1:1:12 Q:$$GET("VCARD","MES"_I)["VC.V1.END"  D
  .W "<tr>",!
  . W "<td>"_$$SHOW($$GET("VCARD","MES"_I),"H")_"</td>"
  .W "</tr>",!
 W "</table>",!
 Q
 ;
SHOW(VL,PR) ;
 N COLOR S COLOR="brown"
 I $G(PR)="N" S VL=$J(VL,2,2)
 I $G(PR)="H" S VL=$$H2U^%L1FRM(VL)
 I VL<0 S COLOR="red"
 Q "<span style=""color:"_COLOR_";font-weight:bold"">"_VL_"</span>"

W4SHOWGR
W4SHOWGR(KV) ; [ 06.10.14 09:43 ] [
 N (JB,%ARG,%REM,KV) ;
 D CLOSE^W4FIND
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">",!
  W KV_" "_$$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(KV)))
 W "</span>",!
 W "<br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
  S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  I $$SUG^W4P(N)=KV D
  .W "<tr>"
  .  W "<td>"_N_"</td>"
  .  W "<td>"_$$H2U^%L1FRM($$SHEM^W4P(N))_"</td>"
  .  W "<td>"_$$MH^W4P(N)_"</td>"
  .W "</tr>",!
 W "</table>",!
 W "<br>"
 W "</div>",!
 Q

W4SHOWKV
W4SHOWKV(PRM,PROC) ; [ 08.08.18 18:03 ] [ 08.04.18 04:13 ] [ 15.06.15 16:32 ] [
 I PRM="N" D  Q
 .N NN,II S NN="",II=0
 .F  S NN=$O(@$$^W4GL("PARSUG")@(NN)) Q:NN=""  D @PROC
 ;
 D ^W4ABCKVZ
 ;
 N TMPABC S TMPABC=$$TMPABC^W4ABCKVZ
 N N,II S N="",II=0 F  S N=$O(@TMPABC@(N)) Q:N=""  D
 .S NN=$G(^(N)) Q:NN=""
 .D @PROC
 Q
 
 
 

W4SHOWPZ
W4SHOWPZ(QN,SZ) ; [ 11.01.23 05:48 ] [ 28.06.22 12:00 ] [ 02.06.22 07:37 ] 
 N QN2,ST S ST=""
 S SZ=$G(SZ)
 ;
 I QN[":"!($L(QN)=4),QN["+" D
 .S QN2=QN I QN[":" S QN2=$P(QN,":",2)
 .S ST="<span dir=""LTR"">"
 .N J F J=1:1:4 D
 ..S ST=ST_"<img src=""w3pizza"_J_$S($E(QN2,J)="+":"c",1:"")_".jpg"" "_$$STL(SZ)_"/>"
 .S ST=ST_"</span>"
 ;
 I QN["|"!($L(QN)=2),QN["+" D
 .S QN2=QN I QN["|" S QN2=$P(QN,"|",2)
 .S ST="<span dir=""LTR"">"
 .N J F J=1:1:2 D
 ..S ST=ST_"<img src=""w3pizzah"_J_$S($E(QN2,J)="+":"c",1:"")_".jpg"" "_$$STL(SZ)_"/>"
 .S ST=ST_"</span>"
 ;
 Q ST
 ;
 ;
STL(SZ) ;
 I '$G(SZ),$$^W4TABLET=2 S SZ=10
 I '$G(SZ) Q ""
 Q " style=""width:"_$$^W4KF(SZ)_"px;height:"_$$^W4KF(SZ)_"px"" "
 ;
BON(QN,SZ) 
 N QN2,ST S ST=""
 I QN["|"!($L(QN)=2),QN["+" D
 .S QN2=QN I QN["|" S QN2=$P(QN,"|",2)
 .S ST="<span dir=""LTR""><img src="""
 .D
 ..I QN2="++" S ST=ST_"w4pizzaf.png" Q
 ..I $E(QN2)="+" S ST=ST_"w4pizzal.png" Q
 ..I $E(QN2,2)="+" S ST=ST_"w4pizzar.png" Q
 .S ST=ST_""" "
 .I $G(SZ) D
 ..S ST=ST_" width="_SZ_"px height="_SZ_"px "
 .S ST=ST_"/></span>"
 ;
 Q ST
 
 
 
 
 
 
 
 

W4SHOWTB
W4SHOWTB ; [ 09.10.14 10:46 ] [ 06.10.14 09:43 ] [
 N (JB,%ARG,%REM,KV) ;
 D CLOSE^W4FIND
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>",!
 ;
 I $G(KV) D
 .W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">",!
 . W KV_" "_$$H2U^%L1FRM($G(@$$^W4GL("SUGS")@(KV)))
 .W "</span>",!
 .W "<br><br>",!
 ;
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
  S N="" F  S N=$O(@$$^W4GL("LKH")@(N)) Q:N=""  Q:N>999  D
 .I $G(KV),$$SUGL^W4L(N)'=KV Q
  .W "<tr>"
  .  W "<td>"_N_"</td>"
  .  S NMTB=$G(@$$^W4GL("LKH")@(N))
  .  I NMTB?1N.N S NMTB=NMTB_" ogley"
  .  W "<td>"_$$H2U^%L1FRM(NMTB)_"</td>"
  .  W "<td> [ "_$$H2U^%L1FRM($$SUGL1^W4L(N))_" ] </td>"
  .W "</tr>",!
 W "</table>",!
 W "<br>"
 W "</div>",!
 Q

W4SHOWTS
W4SHOWTS(HZM,CODTS) ; [ 06.07.21 14:18 ] [ 
 N CODTS1,LKHN,A
 I $G(CODTS)="" S CODTS=$$CODTS^W4HZMST(HZM)
 ;
 I CODTS=1 Q $$^%W1DICT("CASH")
 ;
 I CODTS=2 D  Q $$^%W1DICT(CODTS1)
 .S CODTS1="CHECK"
 .I $O(@$$^W4ORD@(HZM,"CB","CH",1)) Q
 .S A=$G(^(1))
 .N CH S CH=$P(A,"*",2)
 .I CH="B" S CODTS1="MVBANK" 
 .
 I CODTS=3,$D(W4SHOWTS("CA")) Q $$^%W1DICT("CA")
 I CODTS=3 Q $$^%W1DICT("CRCARD")
 ;
 I CODTS=4 D  Q $$^%W1DICT(CRED)
 .S CRED="CREDIT"
 .I $O(@$$^W4ORD@(HZM,"CB","ASR",1)) Q
 .S A=$G(^(1))
 .N LK S LK=$P(A,"*") Q:'LK
 .I LK=$G(@$$^W4PRM@("10BIS"))!(LK=$G(@$$^W4PRM@("WEB","10BIS"))) S CRED="10BIS" Q
 .I LK=$G(@$$^W4PRM@("CIBUS"))!(LK=$G(@$$^W4PRM@("WEB","CIBUS"))) S CRED="CIBUS" Q
 .I LK=$G(@$$^W4PRM@("CPHON"))!(LK=$G(@$$^W4PRM@("WEB","CPHON"))) S CRED="COUPONPHONE" Q
 ;
 Q $$^W3SHOWTS(CODTS)
 
 
 
 
 
 
 
 
 

W4SHP
W4SHP(STAM) ; [ 20.10.09 13:14 ] [ 08.10.09 09:04 ] [ 12.05.09 07:53 ] [
 ;;Q $$^W4GL("SHP")
 Q "^[$$^W3MAIN]SHP"
 ;
BG(STAM) Q "^[$$^W3MAIN]SHP("

W4SHPORD
W4SHPORD(CODSHP) ; [ 31.12.25 14:00 ] [ 22.05.25 20:10 ] [ 13.03.25 12:49 ] 
 N I,K,T,US
 ;;M ^AA("W4SHPORD","MS1")=%SCV("MS1")
 I $E(CODSHP,$L(CODSHP))'="E",$$^%W1LNG="E",'$D(NOPCLOAZ) S CODSHP=CODSHP_"E"
 K %SCV("MSHP") S K=0
 F I=1:1 S T=$T(@CODSHP+I) Q:T=""  Q:T["Q  ;"  D
 .S US=$P(T,";",2)
 .S US=$$SPA^%L1FRM(US)
 .I @US S K=K+1,%SCV("MSHP",K)=$P(T,";",3,20)
 Q
 ;
 ;
KOTMS ;
                      ;1;**************************************
                  ;$$NIK;{                  03}  
 ;1;
     ;$$SHORTNAME&'$$NIK;  {                01}
     ;'$$SHORTNAME!$$NIK;{                                  01}
                      ;1;
                      ;1;{10        }:lh  {                 05}
                      ;1;                  {15        } : {12 }
               ;$$MEUHAD;        {16        } :cge`n dyxen wqer
                      ;0;{81                                  }
                      ;1;
                      ;1;{25   } : dry {20      } : dqtcd jix`z
                      ;1;{27           } : xewn zwtd drye jix`z
                      ;1;
              ;$$MSPYOMM;?^                   ^?
              ;$$MSPYOMM;?^      {85}         ^?
              ;$$MSPYOMM;?^                   ^?
              ;$$MSPYOMM;
              ;$$MSPYOMM;
    ;$$HESHBON&$$BIGHBHD;#{                 35}#
   ;$$HESHBON&'$$BIGHBHD;          {               35}
            ;$$TOCUSNAME;                                 ceakl     
            ;$$TOCUSNAME; #{             31}#
            ;$$TOCUSNAME;
             ;'$$HESHBON; #{              35}#
 ;'$$HESHBON&'$D(P1HZHB1); # {30  }{40   }{33}#
            ;$$HESHBONIT;{                                  36}
             ; 
             ;'$$HESHBON; {                                 80}
                      ;1;
          ;'$$POS^W4MTAW;{                52} #{51 }#: ogley
           ;$$POS^W4MTAW;                     #{51 }#:  dtew
             ;'$$HESHBON;            #{57    }#:'qn dpnfd
          ;'$$POS^W4MTAW;                 #{53 }# micreq 'qn
                      ;1;
                      ;1;  -------------------------------------
                      ;1;
 Q  ;
 ;
 ;
KOT ;
                  ;1;**************************************
              ;$$NIK;{                 03}
 ;$$SHORTNAME&'$$NIK; #{               01}#
 ;1;
 ;'$$SHORTNAME!$$NIK;{                                  01}
                  ;1;
                  ;1;{10        }:lh  {                 05}
                  ;1;                   {15        }: {12 }
           ;$$MEUHAD;        {16        } :cge`n dyxen wqer
                  ;0;{                                  81}
                  ;1;
                  ;1;{25   } : dry {20       } : dwtd jix`z
                  ;1;     
    ;'$$ADSHAA^W4PRM;{27   } : dry {26     } : jix`zl onfed
     ;$$ADSHAA^W4PRM;   {27           } {26     } - l onfed
                  ;1;
        ;$$TOCUSNAME;                                 ceakl     
        ;$$TOCUSNAME; #{             31}#
        ;$$TOCUSNAME;
                  ;1;#{             35}#
         ;'$$HESHBON;#{30 }{40    }{33}#
        ;$$HESHBONIT;{                                  36}
                  ;1;
                  ;1;               {75        } : gewld lh
          ;$$COMPANY; {                      55} :  dxag my
     ;'$$MAZMINEQLAK!'$$TOCUSNAME;        {               59} :   oinfnd
         ;'$$HESHBON;         #{57     }# :'qn dpnfd 
                  ;1;
                  ;1; mekq :------- hixt xe`ze cew -------:
                  ;1;
 Q  ;
 ;
 ;
KOTE ;
                  ;1;**************************************
              ;$$NIK; #{03               }#
 ;$$SHORTNAME&'$$NIK; #{01               }#
 ;'$$SHORTNAME!$$NIK;{                                  01}
                  ;1;
                  ;1;{05                 } Tel:{10        }
                  ;1;{12 }: {15        }
           ;$$MEUHAD;United Business ID : {16             }
                  ;0;{                                  81}
                  ;1;
                  ;1;Issue Time {20       } {25   }
                  ;1;     
    ;'$$ADSHAA^W4PRM;Invited to Time {26       } {27      }
     ;$$ADSHAA^W4PRM;Invited to {26      } {27            }
                  ;1;
                  ;1;#{35             }#
         ;'$$HESHBON;#{33 }{40    }{30}#
                  ;1;Cust. Tel : {75        }
          ;$$COMPANY;Company Name {55                     }
     ;'$$MAZMINEQLAK;Cust. Name {               59}
         ;'$$HESHBON;Order No.        #{57     }#
                  ;1;
                  ;1;                                      1$
                  ;1; Code and Name of Dish :    Sum 
                  ;1; $1
 Q  ;
 ;
 ; 
KOTTM ;
      ;$$DELIS^W4PRM;
      ;$$DELIS^W4PRM;?^{               07}^?  
      ;$$DELIS^W4PRM;
                  ;1;#!!!!!!!!!!!!!!!!!!!#
  ;$$MSPYOM&$$NOIKOT;?                   
  ;$$MSPYOM&$$NOIKOT;?      { 85}        
  ;$$MSPYOM&$$NOIKOT;?                   
 ;$$MSPYOM&'$$NOIKOT;?^      { 85}        ^?  
           ;$$MSPYOM;
    ;0;$$WOLT&'$$IWOLT;?     {45   } : WOLT
    ;0;$$WOLT&$$IWOLT;?^    {45   } : WOLT ^?
    ;0;         ;$$WOLT;?
              ;$$NIK;{               03}
              ;$$NIK;
 ;$$SHORTNAME&'$$NIK;{               01}
 ;'$$SHORTNAME!$$NIK; {                                 01}
                  ;1;
                  ;1; {10        }:lh {                 05}
                  ;1;                    {15        }:{12 }
           ;$$MEUHAD;        {16        } :cge`n dyxen wqer
                  ;1;  {25     }:dry {20       }:dwtd jix`z
 ;1;
                  ;1;    #{             35}#
        ;$$DOCNUMBER;#{30  }  {40   }{33}#
        ;$$HESHBONIT;{                                  36}
        ;$$DOCNUMBER;
        ;$$TOCUSNAME;                                 ceakl     
        ;$$TOCUSNAME; #{             31}#
        ;$$TOCUSNAME;
      ;'$$CHECKERDAY&$G(@$$^W4PRM@("INVHZ"));^?{57    } :'qn dpnfd?^
      ;'$$CHECKERDAY&$G(@$$^W4PRM@("INVHZ"));
      ;'$$CHECKERDAY&'$G(@$$^W4PRM@("INVHZ"));#{57    } :'qn dpnfd#
      ;'$$CHECKERDAY&'$G(@$$^W4PRM@("INVHZ"));
       ;$$CHECKERDAY;          {57    } :'qn dpnfd
       ;$$CHECKERDAY;
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;#{         44}#: dpnfd xewn
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;#{45         }#
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;
 ;$$SAHHZMLK^W4PRM;  #{46   }# : gewl ly zepnfd k"dq
 ;$$SAHHZMLK^W4PRM;
 ;$$POOLED^W4HZMST(HZM);# ** zfkexn dpnfd **#
 ;$$POOLED^W4HZMST(HZM);
    ;'$$ADSHAA^W4PRM;          #: jix`zl onfed#
    ;'$$ADSHAA^W4PRM;      #{27  } {26     }#
     ;$$ADSHAA^W4PRM;   {27           } {26     } - l onfed
                  ;1;
          ;$$COMPANY;                 {         51} :  dxag 
          ;$$COMPANY;#{               32}#
         ;'$$COMPANY;                 {         51} : gewld
         ;'$$COMPANY;#{                55}#
                  ;1;
            ;$$IFTEL;   #{75        }# : gewld lh
           ;$$IFPELE;   #{77        }# :     ciip
     ;'$$MAZMINEQLAK;#{          59}# :  oinfnd
 ;$$MSLSD^W4PRM&'$$SDSAK^W4PRM;                #{53 }#  zegewl 'qn 
                  ;1;#{56               }#
       ;$$TAW&'$$WOLT;#         invr seqi`#
  ;'$$BAITDIRA&'$$TAW;#{               60}#
   ;$$BAITDIRA&'$$TAW;#{               60}#
   ;$$BAITDIRA&'$$TAW;      #{ 63}# :dxic #{ 61}# :zia
        ;$$CNISAKOMA&'$$TAW;       #{62 }#:dnew #{64}# :dqipk
             ;'$$TAW;  #{           65}# : xir
          ;$$AZOR&'$$TAW;                #{    67}# :xef`
 ;$$MSLSD^W4PRM&$$SDSAK^W4PRM;
 ;$$MSLSD^W4PRM&$$SDSAK^W4PRM;  #{53 } :  zeiwy 'qn #
 ;$L($G(%SCV("MS1",83)));
 ;$L($G(%SCV("MS1",83)));{                                  83}
 ;$L($G(%SCV("MS1",84)));{                                  84}
                  ;1;
                  ;1;  -------------------------------------
                  ;1; $1
 Q  ;
 ;
 ;
KOTTME ;
                  ;1; #!!!!!!!!!!!!!!!!!!!#
           ;$$MSPYOM;^?#{               85}#
              ;$$NIK; #{               03}#
 ;$$SHORTNAME&'$$NIK; #{               01}#
 ;'$$SHORTNAME!$$NIK;{                                  01}
                  ;1;{05                 } Tel:{10        }
                  ;1;{12 }: {15        }
           ;$$MEUHAD;United Business ID : {16             }
                  ;1;Issue Time {20       } {25   }
                  ;1;     
    ;'$$ADSHAA^W4PRM;Invited to Time {26       } {27      }
     ;$$ADSHAA^W4PRM;Invited to {26      } {27            }
                  ;1;    #{             35}#
                  ;1;#Order No. {57     }#
                  ;1; 
          ;$$COMPANY;Company {51                     }
          ;$$COMPANY;#{               32}#
         ;'$$COMPANY;Customer {         51}
         ;'$$COMPANY;#{               55}#
                  ;1;
                  ;1;Cust. Tel.  #{75        }#
                  ;1;Mobile : #{77        }#
          ;$$COMPANY;Cust. Name : #{          59}#
      ;$$MSLSD^W4PRM;Diners : #{53 }#
                  ;1;
                  ;1; #{56               }#
                  ;1; #{60               }#
 ;$$CNISAKOMA&'$$TAW;Floor #{62 }# Entrance :#{64 }#
             ;'$$TAW;Sity #{           65}#
      ;$$AZOR&'$$TAW;District : #{     67}#
                  ;1;
                  ;1;{                                  83}
                  ;1;{                                  84}
                  ;1;  -------------------------------------
                  ;1; $1
 Q  ;
 ;
 ;
KOTTMS ;
                  ;1;#!!!!!!!!!!!!!!!!!!!#
  ;$$MSPYOM&$$NOIKOT;?                   
  ;$$MSPYOM&$$NOIKOT;?      { 85}        
  ;$$MSPYOM&$$NOIKOT;?                   
 ;$$MSPYOM&'$$NOIKOT;?^                   ^?
 ;$$MSPYOM&'$$NOIKOT;?^      { 85}        ^?  
 ;$$MSPYOM&'$$NOIKOT;?^                   ^?
           ;$$MSPYOM;                   
              ;$$NIK;{               03}
 ;$$SHORTNAME&'$$NIK;{               01}
 ;'$$SHORTNAME!$$NIK; {                                 01}
                  ;1; {10        }:lh {                 05}
                  ;1;                    {15        }:{12 }
           ;$$MEUHAD;        {16        } :cge`n dyxen wqer
                  ;1;  {25     }:dry {20       }:dwtd jix`z
                  ;1;
                  ;1;    #{             35}#
        ;$$DOCNUMBER;#{30  }  {40   }{33}#
        ;$$HESHBONIT;{                                  36}
        ;$$DOCNUMBER;
      ;'$$CHECKERDAY&$G(@$$^W4PRM@("INVHZ"));^?{57    } :'qn dpnfd?^
      ;'$$CHECKERDAY&$G(@$$^W4PRM@("INVHZ"));
      ;'$$CHECKERDAY&'$G(@$$^W4PRM@("INVHZ"));#{57    } :'qn dpnfd#
      ;'$$CHECKERDAY&'$G(@$$^W4PRM@("INVHZ"));
       ;$$CHECKERDAY;         {57    } :'qn dpnfd
       ;$$CHECKERDAY;
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;#{         44}#: dpnfd xewn
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;#{               45}#
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;
 ;$$POOLED^W4HZMST(HZM);# ** zfkexn dpnfd **#
 ;$$POOLED^W4HZMST(HZM);
    ;'$$ADSHAA^W4PRM;          #: jix`zl onfed#
    ;'$$ADSHAA^W4PRM;      #{27  } {26     }#
     ;$$ADSHAA^W4PRM;   {27           } {26     } - l onfed
                  ;1;
          ;$$COMPANY;                 {         51} :  dxag 
          ;$$COMPANY;#{               32}#
         ;'$$COMPANY;                               : gewld
         ;'$$COMPANY;#{               55}#
            ;$$IFTEL;   #{75        }# : gewld lh
           ;$$IFPELE;   #{77        }# :     ciip
          ;$$COMPANY;#{          59}# :  oinfnd
      ;$$MSLSD^W4PRM;                #{53 }#  zegewl 'qn 
                  ;1; #{56               }#
              ;$$TAW;#          invr seqi`#
             ;'$$TAW;#{                60}#
             ;'$$TAW;  #{           65}# : xir
              ;$$TAW;  #{           65}#
             ;'$$TAW;      #{ 63}# :dxic #{ 61}# :zia
 ;$$CNISAKOMA&'$$TAW;      #{62 }# :dnew #{64}# :dqipk
      ;$$AZOR&'$$TAW;                #{    67}# :xef`
                  ;1;{                                  83}
                  ;1;{                                  84}
                  ;1;  -------------------------------------
                  ;1; $1
 Q  ;
 ;
KOTMSE ;
                  ;1;**************************************
              ;$$NIK; #{03               }#
        ;$$SHORTNAME;  {01               }
       ;'$$SHORTNAME;{01                                  }
                  ;1;
                  ;1;{                 05} TEL:{10        }
                  ;1;Business ID : {15        }
           ;$$MEUHAD;United Business ID {16       }
                  ;1;{81                     }
                  ;1;Date {20      }   Time {25  }
           ;$$MSPYOM; #{             85}#
                  ;1;
                  ;1;{                         35}
         ;'$$HESHBON; #{33}{40   }{30  }#
         ;'$$HESHBON; {                                 80}
                  ;1;
      ;'$$POS^W4MTAW;Table     : #{51 }#
       ;$$POS^W4MTAW;POS Number: #{51 }#
         ;'$$HESHBON;Order No. : #{57    }#
      ;'$$POS^W4MTAW;Custs No. : #{53 }#
                  ;1;{                                  83}
                  ;1;{                                  84}
                  ;1;                                      1$
                  ;1;-------  Dish Name  ---------: Sum 
                  ;1; $1
 Q  ;
 ;
HD ;
                      ;1;**************************************
                  ;$$NIK;{                  03}  
     ;$$SHORTNAME&'$$NIK;  {                01}
     ;'$$SHORTNAME!$$NIK;{                                  01}
                      ;1;
                      ;1;{10        }:lh  {                 05}
                      ;1;                  {15        } : {12 }
 Q  ;
 ;
SHORTNAME(STAM) ;
 N A S A=$G(%SCV("MS","NESEK"))
 S A=$$RPL^%L1FRM(A,$G(%MDP("BB")),"")
 S A=$$RPL^%L1FRM(A,$G(%MDP("B")),"")
 S A=$$RPL^%L1FRM(A,$G(%MDP("N")),"")
 I $L(A)<21 Q 1
 Q 0
 ;
NIK(STAM) ;
 N A S A=$$SPA^%L1FRM($TR($G(@$$^W4PL@("ESEK",1.5)),"#_",""))
 Q $L(A)
 ;
HESHBON(STAM);
 I $D(P1HZHB1),P1HZHB1'="M",P1HZHB1'="R" Q 1
 Q 0
 ;
HESHBONIT(STAM);
 I $D(P1HZHB),$$SHUL^W4HZMST(HZM) Q 1
 Q 0
 ;
SHULHN(STAM);
 Q $L($$^W4SHULHN(NMB))>0
 ;
BIGHBHD(STAM) ;
 Q $G(@$$^W4PRM@("BIGHBHD"))
 ;
MSPYOM(STAM)
 I $G(@$$^W4PRM@("MSPYOM")) Q 1
 Q 0
 ;
MSPYOMM(STAM)
 I $G(@$$^W4PRM@("MSPYOMM"))&$$MSPYOM Q 1
 Q 0
 ;
LKHN1(STAM) ;
 I '$G(HZM) Q 0
 I $$LKHN1^W4HZMST(HZM)?.P Q 0
 Q 1
 ;
MEUHAD(STAM) ;
 Q $$MEUHAD^W4PRM
 ;
TOCUSNAME(STAM) ;
 N TOCUSNAME S TOCUSNAME=$$TOCUSNAME^W4HZMST(HZM)
 ;;I $$SPA^%L1FRM(TOCUSNAME)=$$SPA^%L1FRM($$NAME^W4HZMST(HZM)) Q 0  ; -- 28.07.24 -> COMMENT
 Q (TOCUSNAME'="")
 ;
TAW(STAM) ; 
 Q $$TAKEAWAY^W4HZMST(HZM)
 ;
COMPANY(STAM) ; 
 Q $$COMP^W4HZMST(HZM)'?.P
 ;
MAZMIN(STAM) ; 
 Q $$MAZMIN^W4HZMST(HZM)'?.P
 ;
CNISAKOMA(STAM) ; 
 I $$CNISA^W4HZMST(HZM)'=""!($$KOMA^W4HZMST(HZM)'="") Q 1
 Q 0
 ;
AZOR(STAM) ; 
 Q ($$SCV(67)'="")
 I $$AZOR^W4HZMST(HZM)'="" Q 1
 Q 0 
 ;
SCV(N) ;
 Q $$SPA^%L1FRM($G(%SCV("MS1",N)))
 ;
SCVL(N) ;
 Q $L($$SCV(N))
 ;
MAZMINEQLAK(STAM) ; 
 ;;I $G(CODSHP)="MSLKZR" Q 0
 I $$COMPANY,$E($G(CODSHP),1,5)="KOTTM" Q $$SCV(32)=$$SCV(59)
 I $$SCV(59)=$$SCV(55) Q 1
 I $L($$SCV(31)),$$SCV(59)=$$SCV(31) Q 1
 Q 0
 ;
CHECKERDAY(STAM) ; 
 I $$CHECKER&$$MSPYOM Q 1 
 Q 0 
 ;
CHECKER(STAM) ;
 Q ($G(P1HZHB1)="M")
 ;
DOCNUMBER(STAM)
 I '$$HESHBON,'$$CHECKER Q 1
 Q 0
 ;
IFTEL(STAM) ; 
 Q $$SCV(75)'?.P
 ;
IFPELE(STAM) ; 
 Q ($TR($$SCV(75),"-+","")'=$TR($$SCV(77),"-+",""))&($$SCV(77)'?.P)
 ;
NOIKOT(STAM) ; 
 I $$IWOLT Q 1
 Q $$NOIKOT^W4PRM 
 ;
WOLT() ; 
 Q $$WOLT^W4HZPCHD(HZM)
 ;
IWOLT(STAM) ; 
 Q $$IWOLT^W4PRM 
 ;
 ;
MSLKZR ; 
  ;$$MSPYOM&$$NOIKOT;?                   
  ;$$MSPYOM&$$NOIKOT;?      { 85}        
  ;$$MSPYOM&$$NOIKOT;?                   
 ;$$MSPYOM&'$$NOIKOT;?^      { 85}        ^?  
           ;$$MSPYOM;
    ;0;$$WOLT&'$$IWOLT;?     {45   } : WOLT
    ;0;$$WOLT&$$IWOLT;?^    {45   } : WOLT ^?
    ;0;       ;$$WOLT;?
                  ;1;  {25     }:dry {20       }:dwtd jix`z
 ;1;
                  ;1;    #{             35}#
        ;$$DOCNUMBER;#{30  }  {40   }{33}#
        ;$$DOCNUMBER;
        ;$$TOCUSNAME;                                 ceakl     
        ;$$TOCUSNAME; #{             31}#
        ;$$TOCUSNAME;
      ;'$$CHECKERDAY&$G(@$$^W4PRM@("INVHZ"));^?{57    } :'qn dpnfd?^
      ;'$$CHECKERDAY&$G(@$$^W4PRM@("INVHZ"));
      ;'$$CHECKERDAY&'$G(@$$^W4PRM@("INVHZ"));#{57    } :'qn dpnfd#
      ;'$$CHECKERDAY&'$G(@$$^W4PRM@("INVHZ"));
       ;$$CHECKERDAY;          {57    } :'qn dpnfd
       ;$$CHECKERDAY;
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;#{         44}#: dpnfd xewn
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;#{45         }#
 ;$$MKRDLV^W4HZMST(HZM)&'$$WOLT;
 ;$$SAHHZMLK^W4PRM;  #{46   }# : gewl ly zepnfd k"dq
 ;$$SAHHZMLK^W4PRM;
 ;$$POOLED^W4HZMST(HZM);# ** zfkexn dpnfd **#
 ;$$POOLED^W4HZMST(HZM);
    ;'$$ADSHAA^W4PRM;          #: jix`zl onfed#
    ;'$$ADSHAA^W4PRM;      #{27  } {26     }#
     ;$$ADSHAA^W4PRM;   {27           } {26     } - l onfed
                  ;1;
          ;$$COMPANY;                 {         51} :  dxag 
          ;$$COMPANY;#{               32}#
                  ;1;
            ;$$IFTEL;   #{75        }# : gewld lh
           ;$$IFPELE;   #{77        }# :     ciip
     ;'$$MAZMINEQLAK;#{          59}# :  oinfnd
 ;$$MSLSD^W4PRM&'$$SDSAK^W4PRM;                #{53 }#  zegewl 'qn 
                  ;1;#{56               }#
                     ;$$TAW;#         invr seqi`#
  ;'$$BAITDIRA&'$$TAW;#{               60}#
   ;$$BAITDIRA&'$$TAW;#{               60}#
   ;$$BAITDIRA&'$$TAW;      #{ 63}# :dxic #{ 61}# :zia
        ;$$CNISAKOMA&'$$TAW;       #{62 }#:dnew #{64}# :dqipk
             ;'$$TAW;  #{           65}# : xir
          ;$$AZOR&'$$TAW;                #{    67}# :xef`
 ;$$MSLSD^W4PRM&$$SDSAK^W4PRM;
 ;$$MSLSD^W4PRM&$$SDSAK^W4PRM;  #{53 } :  zeiwy 'qn #
 ;$L($G(%SCV("MS1",83)));
 ;$L($G(%SCV("MS1",83)));{                                  83}
 ;$L($G(%SCV("MS1",84)));{                                  84}
                  ;1;
                  ;1;  -------------------------------------
                  ;1; $1
 Q  ;
 ;
BAITDIRA() ; 
 I $G(@$$^W4PRM@("NOPCADR")) Q 0
 Q $$BAITDIRA^W4PRM 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SHULHN
W4SHULHN(NMB) ; [ 08.06.18 14:57 ] [ 
 N LKH1 S LKH1=$$LKH^W4L(NMB)
 I $L(LKH1),LKH1'?1N.N." ogley" Q LKH1
 Q ""

W4SHV
W4SHV ; [ 03.05.18 11:58 ] [ 17.10.16 14:27 ] [ 04.11.12 07:53 ] 
INIT(FUNC) ;
 S HEADER="""Content-Type:text/xml"""
 S HEADER1="""SOAPAction:http://shva.co.il/xmlwebservices/"_FUNC_""""
 S URL="https://www.shva-online.co.il/ash/test/abscheck/absrequest.asmx"
 I $$PRM^W4STRINW("MASOF")'["0962305" D
 .S URL="https://www.shva-online.co.il/ash/abscheck/absrequest.asmx"
 Q
 ;
INTIN(STAM) ;
 Q $$DIR_"intin"_$$^W4MYDVN
 ;
DIR(STAM) N DIR S DIR=$$PRM^W4STRINW("PATHINTIN")
 I $E(DIR,$L(DIR))'="/" S DIR=DIR_"/"
 Q DIR
 ;
INDT(ASM) ;
 N IND
 S IND=$G(@$$^W4GL("TRANL")@("ASM",ASM))
 Q $P(IND,"^",2)
 
 

W4SHV90
W4HSV90(STAM) ; [ 08.03.12 05:17 ] [
 I $G(@$$^W4PL@("HSV"))=90 Q 1
 Q 0

W4SHVCON
W4SHVCON(FUNC) ; [ 06.02.19 13:41 ] [ 27.12.18 21:31 ] [ 03.05.18 14:28 ] 
 N (JB,%ARG,%REM,FUNC)
 S PARAMS=$G(PARAMS)
 D INIT^W4SHV(FUNC) ; --> HEADER,HEADER1,URL
 S POST="@"_$$PRM^W4STRINW("PATHINTIN")_"intin"_$$^W4MYDVN ; JB
 D ^%L1TS
 ;
 S CMD="curl -s "_$$^W4IHTPPS_" -H "_HEADER_" -H "_HEADER1_" -d "_POST_" "_URL
 S CMD=CMD_" -m 40|xmllint --format --encode cp862 - "
 S ^CMD=CMD
 ;
 S CON="SHVA"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 U CON S I=0
 S (SOUT,TRAN)=""
 S STA=999
 D
 .S GL="^[$$^W3MAIN]TMPSHV(JB)"
 .N NOM S NOM=$O(@GL@(999999),-1)+1
 .
 .F  U CON R A Q:$ZEOF  D
 ..S I=I+1,@GL@(NOM,I)=$TR(A,TSS,TS0)
 ..I A["<AuthCreditCardFullResult" D
 ...S STA=$$GETVL(A,"AuthCreditCardFullResult")
 ..I A["<ResultRecord" D
 ...S SOUT=$$GETVL(A,"ResultRecord")
 ..I A["<TransactionRecord" D
 ...S TRAN=$$GETVL(A,"TransactionRecord")
 ..I A["<GetParam" D
 ...S STA=$$GETVL(A,"GetParamResult") ;
 ...I STA=0 S SOUT="OK"
 ..I A["<GetTerminalDataResult" D
 ...S STA=$$GETVL(A,"GetTerminalDataResult") ;
 ..I A["<TermData>",FUNC="GetTerminalData" S SOUT=A
 ;
 S ER="OK"
 I 'STA,'$L(SOUT) S STA=260
 C CON
 Q ER_"~"_$TR($J(STA,3)," ",0)_"~~"_SOUT_"~"_TRAN
 ;
GETVL(A,EL) ;
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 Q $$SPA^%L1FRM(ZN)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SHVDMP
W4SHVDMP(TRDATE,REFID) ; [ 07.03.17 11:22 ] [ 12.09.13 13:00 ] [ 05.11.12 09:57 ] 
 N (JB,%REM,%ARG,TRDATE,REFID,ER,ER1)
 D PUT^%W3DEB("W4SHVDMP","TRDATE=TRDATE & REFID=REFID")
 S MASOF=@$$^W4PRM@("ASH","MASOF")
 S USERNAME=@$$^W4PRM@("ASH","USERNAME")
 S PASSWORD=@$$^W4PRM@("ASH","PASSWORD")
 S FUNC="GetDepositMoreInformation"
 S FILE=@$$^W4PRM@("ASH","PATHINTIN")_"dump"_$$^W4MYDVN
 S POST=FILE
 D ^%L1TS
 ;
 C FILE:(DELETE)
 O FILE:(NEWVERSION)
 U FILE
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 ;
 ;W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 ;W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 ;W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 ;
 W "<soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"""
 W " xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">",!
 ;
 W " <soap:Body>",!
 ;
 W "   <GetDepositMoreInformation xmlns=""http://shva.co.il/xmlwebservices/"">",!
 ;
 W "     <MerchantNumber>"_MASOF_"</MerchantNumber>",!
 W "     <UserName>"_USERNAME_"</UserName>",!
 W "     <Password>"_PASSWORD_"</Password>",!
 W "     <TransmitDate_yyyyMMdd>"_TRDATE_"</TransmitDate_yyyyMMdd>",!
 W "     <ReferenceNumber>"_REFID_"</ReferenceNumber>",!
 W "   </GetDepositMoreInformation>",!
 W " </soap:Body>",!
 W "</soap:Envelope>",!
 C FILE
 ;
 D GL S RES=-9
 D CON(FUNC,POST) I ER G END
 S TAGRES="GetDepositMoreInformationResult"
 S ER=0,ER1=""
 N I F I=1:1 Q:'$D(@GL@(I))  I $G(@GL@(I))[TAGRES D  Q:ER
 .S ER=$$GETVL($G(^(I)),TAGRES)
 ;
END Q
 ;
 ;
GETVL(A,EL) ;
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 Q $$SPA^%L1FRM(ZN)
 ;
CON(FUNC,POST) ;
 D ^W4DMPCON(FUNC,POST)
 Q
 ;
GL D GL^W4DMPCON
 Q
 

W4SHVPSW
W4SHVPSW(NEWPASSWORD) ; [ 17.10.16 14:28 ] [ 13.09.16 12:08 ] [ 12.08.11 08:38 ] 
 N (JB,%REM,NEWPASSWORD)
 S FILE=@$$^W4PRM@("ASH","PATHINTIN")_"psw"_$$^W4MYDVN ;JB
 S POST="@"_FILE
 D ^%L1TS
 ;
 S MASOF=$G(@$$^W4PRM@("ASH","MASOF")) I MASOF="" Q -1
 S USERNAME=$G(@$$^W4PRM@("ASH","USERNAME")) I USERNAME="" Q -2
 S OLDPASSWORD=$G(@$$^W4PRM@("ASH","PASSWORD")) I OLDPASSWORD?.P Q -3
 I $G(NEWPASSWORD)?.P Q -4
 I NEWPASSWORD?1N.N Q -5
 I $L(NEWPASSWORD)<6 Q -6
 I NEWPASSWORD=OLDPASSWORD Q -7
 ;
 C FILE:(DELETE)
 O FILE:(NEWVERSION)
 U FILE
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 ;
 ;W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 ;W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 ;W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 ;
 W "<soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"""
 W " xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">",!
 ;
 W " <soap:Body>",!
 ;
 W "   <ChangePassword xmlns=""http://shva.co.il/xmlwebservices/"">",!
 ;
 W "     <MerchantNumber>"_MASOF_"</MerchantNumber>",!
 W "     <UserName>"_USERNAME_"</UserName>",!
 W "     <Password>"_OLDPASSWORD_"</Password>",!
 W "     <NewPassword>"_NEWPASSWORD_"</NewPassword>",!
 W "   </ChangePassword>",!
 W " </soap:Body>",!
 W "</soap:Envelope>",!
 C FILE
 ;
 D INIT^W4SHV("ChangePassword") ; --> HEADER,HEADER1,URL
 S CMD="curl -s "_$$^W4IHTPPS_" -H "_HEADER_" -H "_HEADER1_" -d "_POST_" "_URL
 S CMD=CMD_" | xmllint --format - "
 ;;S ^CMD=CMD
 ;
 S CON="SHVA"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 U CON S I=0
 S RES=-9
 D
 .S GL="^[$$^W3MAIN]TMPSHV(JB)"
 .N NOM S NOM=$O(@GL@(999999),-1)+1
 .F  R A Q:$ZEOF  D
 ..S I=I+1,@GL@(NOM,I)=$TR(A,TSS,TS0)
 ..I A["ChangePasswordResult" D
 ...S RES=$$GETVL(A,"ChangePasswordResult")
 ;
 C CON
 I RES=0 S @$$^W4PRM@("ASH","PASSWORD")=NEWPASSWORD
 Q RES
 ;
GETVL(A,EL) ;
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 Q $$SPA^%L1FRM(ZN)
 
 
 

W4SHVREP
W4SHVREP(MEDAT,ADDAT) ; [ 06.08.25 01:21 ] [ 13.05.25 14:35 ] [ 11.05.25 09:58 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT)
 ;
 I $$EMV4^W4SNDEMV D
 .N MBC,PRM,ASM,FN
 .S PRM="GetBroadcastsSummaryByDate~"_MEDAT_"~"_ADDAT
 .D ^W4EMVREP(PRM)
 .;
 .I $D(MBC)>9 D
 ..S ASM="" F  S ASM=$O(MBC(ASM)) Q:ASM=""  D
 ...S FN=$G(MBC(ASM,"FN")) Q:'FN
 ...S PRM="GetStatisRecord~"_FN_"~"_ASM
 ...D ^W4EMVREP(PRM)
 ;
 ;
 I $G(%ARG("DET")) D ^W4RKZSHD(MEDAT,ADDAT) Q
 ;
 S DUMP1=$$^W4GL("DUMP1")
 S DUMP=$$^W4GL("DUMP")
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 D PUT^%W3DEB("W4SHVREP","DT1=DT1 & DT2=DT2")
 ;
 D TMPREP^%W1FREP
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 ;
TV S %SCRN="W4SHVREP"
 ;
 D PCPRM^W4DMANY(%SCRN)
 D GET(DT1,DT2)
 D DIVEXC^%W1PC1(%SCRN,"%W1FREPX",1)
 ;
 W "<div align=""center"">",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_";color:brown"">"
  W $$^%W1DICT("MEDATE")_" &nbsp;<span style=""color:black"">"_MEDAT_"</span>"
  W "&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("ADDATE")_" &nbsp;"
  W "<span style=""color:black"">"_ADDAT_"</span>"
 W "</span>",!
 W "<br />"
  W "<span style=""font-size:"_$$^W3FSZ(12)_";"_$$FONTFM^W3CSS_";color:black"">"
   W $$^%W1DICT("SHVATERMINAL")_" "_$G(@$$^W4PRM@("ASH","MASOF"))
  W "</span>"
 W "<br /><br />",!
 ;
 W "<table id=""tbshd"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""5"" width=""70%"" >",!
 ;
 D KOT
 ;
 S (SHOV,SZHT)=0,SH=0
 ;
 F I=1:1 Q:'$D(@TMPREP@("G",I))  D
 .S ST=$G(^(I))
 .D PRS^%L1FRM(ST,"DAT\TIME\ASM\HOV\ZHT","\")
 .S SHOV=SHOV+HOV,SZHT=SZHT+ZHT
 .
 .W "<tr style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;cursor:pointer"" "
 . W " onClick=""ShowDetails(this,'"_ASM_"')"">",!
 .W " <td align=""center"">"_DAT_" "_$$H2U^%L1FRM($$^%L1DC(DAT,9))_"'</td>",!
 .W " <td align=""center"">"_TIME_"</td>",!
 .W " <td>"_ASM_"</td>",!
 .W " <td>"_$J(HOV,2,2)_"</td>",!
 .W " <td>"_$J(ZHT,2,2)_"</td>",!
 .W " <td dir=""LTR"" "_$$^%W1ALIGN_" >"_$J(HOV-ZHT,2,2)_"</td>",!
 .W "</tr>",!
 ;
 W "<tr style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;background-color:lightyellow;color:black"">",!
 W " <td align=""center"">"_$$^%W1DICT("TOTAL")_"</td>",!
 W " <td align=""center"">&nbsp;</td>",!
 W " <td>&nbsp;</td>",!
 W " <td>"_$J(SHOV,2,2)_"</td>",!
 W " <td>"_$J(SZHT,2,2)_"</td>",!
 W " <td dir=""LTR"" "_$$^%W1ALIGN_" >"_$J(SHOV-SZHT,2,2)_"</td>",!
 W "</tr>",!
 ;
 W "</table>",!
 W "<br /><br >",!
 W " <div id=""divbut"" align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" "
 W " <tr>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,60")
 W "  </td>",!
 W "  <td>&nbsp;</td>",!
 W "  <td>"
 D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red",",,,60")
 W "  </td>",!
 W " </tr>",!
 W "</table>",!
 W " </div>",!
 ;
 K @$$^W4MAIN("TMPREP")
 K @$$^W4MAIN("TMPREPB")
 Q
 ;
 ;
KOT ;
 W "<tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white;font-size:"_$$^W3FSZ(12)_""">",!
 W " <th>"_$$^%W1DICT("DATE")_"</th>",!
 W " <th>"_$$^%W1DICT("TIME")_"</th>",!
 W " <th>"_$$^%W1DICT("AUTHNO")_"</th>",!
 W " <th>"_$$^%W1DICT("HOVA")_"</th>",!
 W " <th>"_$$^%W1DICT("ZHUT")_"</th>",!
 W " <th>"_$$^%W1DICT("NETO")_"</th>",!
 W "</tr>",!
 Q
 ;
GET(DT1,DT2) ;
 N IND,NOMSHD,ST,DAT,TIME,ASM,HOV,SH
 S SH=0
 D TMPREP^%W1FREP
 S IND=DT1_"000000"
 ;
 F  S IND=$O(@DUMP1@(IND)) Q:IND=""  D
 .S DT=$E(IND,1,5)
 .I DT<DT1!(DT>DT2) Q
 .S NOMSHD=$G(@DUMP1@(IND)) Q:'NOMSHD
 .S ST=$G(@DUMP@(NOMSHD)) Q:ST?.P
 .S DAT=$P(ST,"|",7)
 .I $L(DAT)=10 S DAT=$E(DAT,1,2)_"."_$E(DAT,4,5)_"."_$E(DAT,9,10)
 .S TIME=$P(ST,"|",6)
 .S ASM=$P(ST,"|",5)
 .S HOV=$P(ST,"|",3)
 .S ZHT=$P(ST,"|",2)
 .S STEX=DAT_"\"_TIME_"\"_ASM_"\"_$J(HOV,2,2)_"\"_$J(ZHT,2,2)_"\"_$J(HOV-ZHT,2,2)
 .S SH=SH+1,@TMPREP@("G",SH)=STEX
 Q
 
 
 
 
 
 
 
 

W4SHVSIS
W4SHVSIS ; [ 11.12.09 18:10 ] [ 10.12.09 22:24 ] [
 N (JB,%ARG,%REM)
 W "<div align=""center"">",!
 W "<br><br><br>",!
 W "<table border=""0"" width=""40%"" style=""padding:10px;padding-left:30px;padding-right:70px;border:ridge 2px"" dir="""_$$^%W1DIR_""">",!
  D LINE
  W "<tr>"
    D ZAPR W $$^%W1DICT("MERCHANTNUMBER")_"</td>" D OTB W $G(@$$^W4PRM@("ASH","MASOF"))_"</td>",!
  W "</tr>",!
  W "<tr>"
    D ZAPR W $$^%W1DICT("USERCODE")_"</td>" D OTB W $G(@$$^W4PRM@("ASH","USERNAME"))_"</td>",!
  W "</tr>",!
  D LINE
  W "<tr>"
    D ZAPR W $$^%W1DICT("OLDPASSWORD")_"</td>" D OTB W $G(@$$^W4PRM@("ASH","PASSWORD"))_"</td>",!
  W "</tr>",!
  W "<tr>"
    D ZAPR W $$^%W1DICT("NEWPASSWORD")_"</td>"
    D OTB W "<input type=""password"" id=""newpassword""  maxlength=""20"" size=""20"" value="""" onClick=""this.select()"" /></td>",!
  W "</tr>",!
  ;
 D LINE
 D LINE
 W "<tr><td>"
  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22")
 W " </td>",!
 W "<td>"
  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W " </td>",!
 W "</tr>",!
 ;
 D LINE
 W "</table>",!
 W "</div>",!
 Q
 ;
ZAPR W "<td style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;color:brown"">"
 Q
 ;
OTB W "<td style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;color:black"">"
 Q
 ;
LINE ;
 W "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>",!
 Q

W4SHVTRN
W4SHVTRN(STAM) ;  [ 05.12.25 11:32 ] [ 11.03.22 09:11 ] [ 17.10.16 14:34 ] 
 N (JB,%REM); -------------------- NOT EMV ------------------------------
 S PATHTRAN=$G(@$$^W4PRM@("ASH","PATHTRAN")) I PATHTRAN="" Q 999
 S FUNC="DepositTransactionsEx"
 S PARAMS=$G(PARAMS)
 D INIT^W4SHV(FUNC) ; --> HEADER,HEADER1,URL
 ;
 S POST="@"_PATHTRAN_"tran"_$$^W4MYDVN ;JB
 ;
 D ^%L1TS
 S CMD="curl -s "_$$^W4IHTPPS_" -H "_HEADER_" -H "_HEADER1_" -d "_POST_" "_URL
 S CMD=CMD_" | xmllint --format --encode cp862 - "
 S CON="SHVA"
 O CON:(COMMAND=CMD:READONLY)::"PIPE"
 U CON S I=0
 S (REFNUM,CREDIT,DEBET,TOTNUM)=""
 S RES=999
 D
 .S GL="^[$$^W3MAIN]TMPTRN(JB)" K @GL
 .F  R A Q:$ZEOF  D
 ..S I=I+1,@GL@(I)=$TR(A,TSS,TS0)
 ..I A["<DepositTransactionsExResult" D
 ...S RES=$$GETVL(A,"DepositTransactionsExResult")
 ..I A["<ReferenceNumber" D
 ...S REFNUM=$$GETVL(A,"ReferenceNumber")
 ..I A["<TotalDebit" D
 ...S DEBET=$$GETVL(A,"TotalDebit")
 ..I A["<TotalCredit" D
 ...S CREDIT=$$GETVL(A,"TotalCredit")
 ..I A["<TotalNumber" D
 ...S TOTNUM=$$GETVL(A,"TotalNumber")
 ;
 C CON
 ;
 S:RES="" RES=999
 S OU=RES_"~"_REFNUM_"~"_$J(CREDIT*.01,2,2)_"~"_$J(DEBET*.01,2,2)_"~"_TOTNUM
 D PUT^%W3DEB("W4SHVTRN","OU=OU")
 Q OU
 ;
GETVL(A,EL) ;
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 Q $$SPA^%L1FRM(ZN)
 
 
 
 
 
 
 

W4SIMUL
W4SIMUL(STAM) ; [ 27.09.18 14:56 ] [ 09.05.17 05:38 ] [ 30.05.11 12:23 ] 
 Q 1
 I $$GETP^%W1PRM("SIMUL") Q 1
 Q 0
 
 
 

W4SINIT
W4SINIT ; [ 24.11.08 10:53 ] [
 I '$G(MUTAG) S MUTAG=0
 S COMP=$J($E(COMP,1,2),2)
 S MG=$TR($$GET(STRIN,"A"),"=",$C(13))
 S MG=MG_$TR($J("",37-$L(MG))," ",0)
 S MG=$E(MG,1,37) ;*** LEV
 S SUGA=$J($$GET(STRIN,"D",3,3),1)
 S SUGI=$J($$GET(STRIN,"D",5,6),2)
 S FIRST=$TR($J($$GET(STRIN,"F"),8)," ",0)
 S NEXT=$TR($J($$GET(STRIN,"G"),8)," ",0)
 S NUMT=$TR($J($$GET(STRIN,"H"),2)," ",0)
 S KUP=$TR($J($$GET(STRIN,"I"),3)," ",0)
 S:'$G(MMYY) MMYY=1010
 S YYMM=$E(MMYY,3,4)_$E(MMYY,1,2)
 S SUM=$TR($J($$GET(STRIN,"C","*",1),8)," ",0)
 S KOH=$TR($J($$GET(STRIN,"C","*",2),8)," ",0)
 S NS=$TR($J($E($G(@$$^W4SG("TOTAL")),23,24)+1,3)," ",0)
 ;
 S CVV2=$TR($$GET(STRIN,"U")," ","")
 S ASHTZ=$TR($$GET(STRIN,"Y")," ","")
 ;
 S MASOF=$E(@$$^W4SG("START"),1,7)
 Q
 ;
GET(STR,LIM,P1,P2) ;
 N A,I S A=$P(STR,LIM,2)
 F I=1:1:$L(A) Q:$E(A,I)?1U
 I $E(A,I)?1U S I=I-1
 I '$D(P1),'$D(P2) Q $E(A,1,I)
 I $G(P1),$G(P2) S:P2>I P2=I Q $E(A,P1,P2)
 I P1?1P,$G(P2) S A=$P($E(A,1,I),P1,P2)
 Q A

W4SIS
W4SIS(P3SSM,CD) ;                           [ 26.04.26 15:21 ] [ 23.03.26 17:33 ] [ 27.08.24 12:30 ] 
 N (JB,%REM,P3SSM,CD)
 ;
 N I1,SISM S I1=0 I $$NOTST(CD) Q 1
 I CD=1,$G(@$$^W4PRM@("PSW"))="" Q 1
 I CD=2,$G(@$$^W4PRM@("PSW2"))="" Q 1
 S SISM=0 I CD=2,$G(@$$^W4PRM@("PSW2")) S SISM=^("PSW2")
 I CD=3,$G(@$$^W4PRM@("PSW3")) S SISM=^("PSW3")
 I CD=5,$G(@$$^W4PRM@("PSW5")) S SISM=^("PSW5")
 I CD="B" S CD="lehial",SISM=$G(@$$^W4PRM@("PSWBIT")) D NOPSW
 I CD="DELPARTPSW",$G(@$$^W4PRM@("PSW2")) S SISM=^("PSW2")
 I CD="MAXOVD",$G(@$$^W4PRM@("PSW2")) S SISM=^("PSW2")
 I CD="DELORDPSW",$G(@$$^W4PRM@("PSW2")) S SISM=^("PSW2")
 I CD="CRCARDDET",$G(@$$^W4PRM@("PSW2")) S SISM=^("PSW2")
 I CD="PSWDELPY" S SISM=$G(@$$^W4PRM@("PSWDELPY")) D NOPSW
 I CD="PSWSRV" S SISM=$G(@$$^W4GL("W3PRM")@("PSWSRV")) D NOPSW
 I CD="H" S CD="dgpdl",SISM=$G(@$$^W4PRM@("PSWHNH")) D NOPSW
 I CD="HV"!(CD="M") S CD="dxardl",SISM=$G(@$$^W4PRM@("PSWHV"))
 I CD="SISPTM" S CD="dxibn zgiztl",SISM=$G(@$$^W4PRM@("SISPTM"))
 I CD="TIKYAD" D
 .S SISM=$G(@$$^W4PRM@("TIKYAD"))
 .S CD=$S($G(@$$^W4PRM@("TIKYADLV")):^("TIKYADLV"),1:4)
 ;
 I CD="CHNISCR" D  D NOPSW
 .S CD=$G(@$$^W4PRM@("CHNISCR"))
 .S SISM=$G(@$$^W4PRM@("PSW"_CD))
 ;
 I CD="C" S CD="zipci dclwdl",SISM=$G(@$$^W4PRM@("PSWCA"))
 I $G(SISM)="" S SISM=$G(@$$^W4PRM@("PSW2")) S:SISM="" SISM=1009
 S SIS=P3SSM
BDSIS ;
 I $L(SIS)=12 S SIS=+$E(SIS,3,10)
 I $L(SIS)=18 S SIS=+$E(SIS,6,13)
 I $P($G(@$$^W4PL@("BF")),"<>")=$E(SIS) S SIS=$E(SIS,2,20)
 I $P($G(@$$^W4PL@("BF")),"<>",2)=$E(SIS,$L(SIS)) S SIS=$E(SIS,1,$L(SIS)-1)
 I $$^W4SISALL(SIS)'<1 Q 1
 I CD<4,$$^W4SISALL(SIS) Q 1
 ;
 I SISM G BDK
 N I,CD1 S CD1=1 F I=1:1:CD-1 S CD1=CD1*10
 I CD1=1 S CD1=0
 S SISM=$G(@$$^W4PRM@("PSW"))+CD1
BDK I CD=1,$L($G(@$$^W4PRM@("PSW2"))),SIS=@$$^W4PRM@("PSW2") Q 1
 I CD<4,$L($G(@$$^W4PRM@("PSW3"))),SIS=@$$^W4PRM@("PSW3") Q 1
 I $L($G(@$$^W4PRM@("PSW4"))),SIS=@$$^W4PRM@("PSW4") Q 1
 I SIS'=SISM Q 0
 Q 1
NOTST(CD) ;
 I CD="B",$G(@$$^W4PRM@("PSWBIT"))="-" Q 1
 I CD="H",$G(@$$^W4PRM@("PSWHNH"))="-" Q 1
 I CD="C",'$G(@$$^W4PRM@("PSWCA")) Q 1
 I CD="HV",'$G(@$$^W4PRM@("PSWHV")) Q 1
 I CD="SISPTM",'$G(@$$^W4PRM@("SISPTM")) Q 1
 I CD="O",'$G(@$$^W4PRM@("POTH")) Q 1
 Q 0
 ;
NOPSW ;
 I SISM="" S SISM=$G(^("PSW2")),CD=2 Q
 I SISM="-" S SISM=""
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SISALL
W4SISALL(SIS) ; [ 14.08.23 11:30 ] [ 06.08.23 13:02 ] [ 03.07.23 11:06 ] 
 I SIS="LV"!(SIS="lv")!(SIS="dj")!(SIS=$C(234,228)) S OK=1.5 Q OK
 I $G(@$$^W4PRM@("SISALL")),SIS[^("SISALL") Q 1
 I $G(@$$^W4PRM@("SISHVA")),$G(@$$^W4SG("START")),SIS[$E(@$$^W4SG("START"),1,7) Q 1
 ;;I '$G(@$$^W4SG("START"))!'$G(@$$^W4PRM@("SISHVA")) D  I OK D PUT^%W1PRM("SISALL",OK) Q OK
 D  I OK D PUT^%W1PRM("SISALL",OK) Q OK
 .S OK=0
 .I SIS["17101957" S OK=.5 Q
 .;;I SIS["19571710" S OK=1 Q
 .I SIS["19571017" S OK=1 Q
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SISCC
W4SISCC ; [ 19.10.17 07:54 ] [ 27.10.15 12:32 ] [ 26.07.15 11:10 ] 
SAVE(PRM) ;
 D PUT^%W3DEB("W4SISCC","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S @$$^W4GL("W3PRM")@("PSW")=$G(PSWBO)
 N MSDR S MSDR=$$MSDR^W4PRM
 I MSDR D
 .S $P(^[$$^W3MAIN]W3MSDR(MSDR),"\",4)=PSWBO
 ;
 S @$$^W4PRM@("PSW2")=$G(PSW2)
 S @$$^W4PRM@("NOPSW0")='NOPSW0
 Q
 
 
 
 
 
 
 
 
 
 

W4SISDEF
W4SISDEF ; [ 22.01.23 17:45 ] [ 23.11.22 14:59 ] [ 27.10.15 12:32 ] 
SAVE(PRM) ;
 D PUT^%W3DEB("W4SISDEF","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 I '$$PSWDRG^W4PRM D
 .S @$$^W4PRM@("PSW")=$G(PSW)
 .S @$$^W4PRM@("PSW2")=$G(PSW2)
 .S @$$^W4PRM@("PSW3")=$G(PSW3)
 .S @$$^W4PRM@("PSW4")=$G(PSW4)
 .S @$$^W4PRM@("PSWCA")=$G(PSWCA)
 .S @$$^W4PRM@("TIKYAD")=$G(TIKYAD)
 ;
 I $G(@$$^W4PRM@("PSW"))="" S @$$^W4PRM@("PSW")=99999
 I $$PSWDRG^W4PRM D
 .I $G(@$$^W4PRM@("PSW2"))="" S @$$^W4PRM@("PSW2")=1009
 .I $G(@$$^W4PRM@("PSW3"))="" S @$$^W4PRM@("PSW3")=1099
 .I $G(@$$^W4PRM@("PSW4"))="" S @$$^W4PRM@("PSW4")=1999
 ;
 S @$$^W4PRM@("PSWBIT")=$G(PSWBIT)
 ;;S @$$^W4PRM@("PSWDELPY")=$G(PSWDELPY)
 S @$$^W4PRM@("PSWHNH")=$S($G(PSWHNH):PSWHNH,1:"-")
 S @$$^W4PRM@("PSWHV")=$G(PSWHV)
 S @$$^W4PRM@("SISPTM")=$G(SISPTM)
 Q
 
 
 
 
 

W4SISM
W4SISM(MNL,SIS,%DARGA) ;  [ 06.04.22 14:34 ] [ 15.11.14 19:06 ] [ 10.11.14 17:26 ] 
 S MNL=$TR($J(MNL,5)," ",0) I 'MNL Q 0
 I '$D(@$$^W4GNAME@(MNL,1)) Q 0
 I '$D(@$$^W4GL("W4PSWDRG")@(MNL)) Q 0
 I $P(@$$^W4GL("W4PSWDRG")@(MNL),"\")<%DARGA Q 0.5
 I SIS'=$P(@$$^W4GL("W4PSWDRG")@(MNL),"\",2) Q 0
 Q 1
 

W4SITE
W4SITE ; [ 21.07.19 12:04 ] [ 19.07.19 19:42 ] [ 17.07.19 13:22 ] 
 D DIR
 W "<div align=""center"" dir="""_DIR_""">",!
 D MAIN
 D ABOUTUS
 D CONTACTUS
 D CLIENTS
 W "</div>",!
 Q
 ;
DIR ;
 S DIR="RTL"
 Q
 ;
MAIN ;
 N DIR D DIR
 S COLOR=$$COLORTX
 ;
 S TOP=120
 I $$TABLET S TOP=300
 ;
 N HG S HG=65
 I $$TABLET S HG=30
 S WD=70
 I $$TABLET S WD=90
 ;
 W "<div align=""center"" dir="""_DIR_""">",!
  W "<img src=""w4elpos.jpg"" style=""position:absolute;top:"_TOP_"px;width:"_WD_"%;left:"_(100-WD\2)_"%;height:"_HG_"%""/>"
 W "<div>",!
 ;
 S PD=10 I $$TABLET S PD=$$PD
 D OPTABLE(10,PD)
 W "<tr>",!
  I '$$TABLET D
  .W "<td style=""width:30%;color:"_COLOR_";font-size:"_($$FSIZE+14)_"pt;font-family:Courier;font-weight:bold"">"
  . W "<img src=""w4levonln.png"" width=""180px"" height=""60px"" >"
  .W "</td>"
  .W "<td width=""20%"">&nbsp;</td>"
  ;
  D TDKOT(12,"#C2",COLOR,"ABOUTUS")
  D TDKOT(12,"#C3",COLOR,"CONTACTUS")
  D TDKOT(20,"#C4",COLOR,"OURCLIENTS")
 W "   </tr>",!
 W "   </table>",!
 ;
 S TOP=HG+$S($$TABLET:20,1:14)
 S PD=10 I $$TABLET S PD=$$PD
 ;
 D OPTABLE(TOP_"%",PD)
 S FSIZE=$$FSIZE+$S($$TABLET:120,1:48)
 ;
 W "<tr>",!
  W "<td style=""color:"_COLOR_";font-size:"_FSIZE_"pt;font-family:Arial;font-weight:bold;text-align:center"">"
   W $$H2U^%L1FRM("q e t l `")
  W "</td>"
 W "</tr>"
 ;
 W "<tr>"
  W "<td style=""color:"_COLOR_";font-size:"_($$FSIZE+2)_"pt;font-family:Arial;font-weight:bold;text-align:center"">"
   W $$H2U^%L1FRM("lke` igelyne zecrqn ledipl zkxrn")
  W "</td>"
 W "</tr>",! 
 W "</table>",!
 Q
 ;
TDKOT(WD,HRF,COLOR,NM)
 W "<td width="""_WD_"%"">"
  N FSIZE S FSIZE=$$FSIZE+2
  W "<a href="""_HRF_""" style=""color:"_COLOR_";font-size:"_FSIZE_"pt"">"_$$^%W1DICT(NM)_"</a>"
  W $$NBSP^%L1FRM(4)
 W "</td>",!
 Q
 ;
 ;
ABOUTUS ;
 D DIR
 N TOP S TOP=900
 I $$TABLET S TOP=2000
 ;
 D KOT("ABOUTUS",TOP,"C2")
 ;
 S TOP=TOP+$S($$TABLET:250,1:150)
 ;
 D OPTABLE(TOP)
 W "<tr>" 
  W "<td style=""background-color:white;width:60%;font-size:"_$$FSIZE_"pt""> "
   W "<br>",!
   N SITE1 S SITE1=$S($$TABLET:"W4SITE1T",1:"W4SITE1")
   D TX(SITE1)
  W "</td>"
  I '$$TABLET D
  . W "<td align=""center"" valign=""top"">"
  . W "<img src=""w4elpos1.jpg"" width=""90%"" height=""80%"">"
  .W "</td>"
 W "</table>",!
 Q
 ;
 ;
CLIENTS ;
 N TOP S TOP=2900
 I $$TABLET S TOP=6800
 D DIR
 D KOT("OURCLIENTS",TOP,"C4")
 ;
 S TOP=TOP+150
 ;
 D OPTABLE(TOP)
  F I=1:1 Q:'$D(^[$$^W3MAIN]SHP("W4SITEC"_I))  D
   .W "<tr>"
   .W "<td align=""center"">"
   .N WD S WD=60 I $$TABLET S WD=90
   . W "<img src=""w4sitec"_I_".jpg"" width="""_WD_"%"" >"
   .W "</td>"
   .W "</tr>"
   .
   .W "<tr>"
   . W "<td style=""text-align:center"">"
   . W "<br>",!
   . S A=$G(^[$$^W3MAIN]SHP("W4SITEC"_I,1))
   . W "<span style=""font-size:"_($$FSIZE+6)_"pt;color:"_$$COLORTX_""">"
   .  D TX1(A)
   . W "</span><br>",!
   . S A=$G(^[$$^W3MAIN]SHP("W4SITEC"_I,2))
   . W "<span style=""font-size:"_($$FSIZE-2)_"pt;color:"_$$COLORTX_""">"
   .  D TX1(A)
   . W "</span>",!
   . W "</td>"
   .W "</tr>",!
   .W "<tr>"
   . W "<td>"
   .  W "<br>"
   .  W "<hr>",!
   .  W "<br><br>"
   . W "</td>"
   .W "</tr>",!
  ;
 W "</table>",!
 ;
 Q
 ;
 ;
CONTACTUS ;
 D DIR
 N TOP S TOP=2100
 I $$TABLET S TOP=5200
 ;
 D KOT("CONTACTUS",TOP,"C3")
 ;
 S TOP=TOP+$S($$TABLET:250,1:150)
 W "<div align=""center"" dir="""_DIR_""" style=""position:absolute;top:"_TOP_"px;width:98%;color:black"" >",!
 W "<table cellpadding="_$$PD_" dir="""_DIR_""" align=""center"" width=""100%"" height=""90%"" >",!
 ;
 W "<tr>" 
  W "<td style=""background-color:white;color:black;width:60%;font-size:"_$$FSIZE_"pt""> "
   W "<br>",!
   D TX("W4SITETEL")
   W $$SM,$$^%W1DICT("EMAIL")
   W "<a href=""mailto:lev1957@gmail.com"">"
    W " lev1957@gmail.com</a>"
   W "</a>"
   W "<br><br><br>",!
  W "</td>"
  ;
  I '$$TABLET D
  .W "<td align=""center"" valign=""top"">"
  . W "<img src=""w4contactus.png"" width=""92%"" height=""100%"">"
  .W "</td>"
  W "</tr>"
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
TX(REF) ;
 N I F I=1:1 Q:'$D(^[$$^W3MAIN]SHP(REF,I))  S A=$G(^(I)) D TX1(A)
 Q
 ;
TX1(A) ;
 S A=$$RPL^%L1FRM(A,";",",")
 ;S A=$$INVH^%L1FRM(A)
 S A=$$H2U^%L1FRM(A)
 S A=$$RPL^%L1FRM(A,"<N>","&nbsp;")
 S A=$$RPL^%L1FRM(A,"<S1>","<span>")
 S A=$$RPL^%L1FRM(A,"<S2>","</span>")
 I A["LEV1957@GMAIL.COM" S A=$$FUNC^%LCASE(A)
 W $$SM
 W A,"<br>",!
 Q
 ;
COLORTX(STAM) ;
 Q "orange"
 ;
KOT(NM,TOP,TO) ;
 W "<div align=""center"" style=""position:absolute;top:"_TOP_";left:0;width:98%"" >",!
  W "<a name="""_TO_""">",!
  W "<hr>"
  W "<span style=""font-size:"_($$FSIZE+34)_"pt;color:"_$$COLORTX_""">"_$$^%W1DICT(NM)_"</span>",!
 W "</div>",!
 Q
 ;
TABLET(STAM) ;
 Q $G(%ARG("TABLET")) 
 ;
FSIZE(STAM) ;
 I $$TABLET Q 55
 Q 14
 ;
OPTABLE(TOP,PD) ;
 I TOP'["%" S TOP=TOP_"px"
 I '$G(PD) S PD=$$PD
 N LF S LF=0
 I $$TABLET S LF=50
 W "<table cellpadding="""_PD_""" dir="""_DIR_""" style=""zIndex:100;width:95%;position:absolute;top:"_TOP_";left:"_LF_""">",!
 Q
 ;
PD(STAM) ;
 I $$TABLET Q 60
 Q 0  ;30
 ;
SM(STAM) ;
 I '$$TABLET W $$NBSP^%L1FRM(5)
 Q ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SL
W4SL ; [ 26.01.25 03:18 ] [ 23.01.25 13:15 ] [ 26.11.23 12:06 ] 
 Q
NM(SL) ; 
 I $G(SL)="" Q ""
 N NM S NM=$G(@$$^W4GL("P1SL")@(SL))
 Q NM
 ;
NMH2U(SL)
 I $G(SL)="" Q ""
 Q $$H2U^%L1FRM($$NM(SL))
 ;
TEL(SL) ; 
 I $G(SL)="" Q ""
 N A1 S A1=$G(@$$^W4GL("P1SL")@(SL,1))
 I $L($P(A1,"\"))>5 Q $P(A1,"\")
 Q $P(A1,"\",2)
 ;
OV(SL) ;
 I $G(SL)="" Q ""
 I $G(@$$^W4GL("P1SL")@(SL,"OV"))?1N.N Q $G(^("OV"))
 N A1 S A1=$P($G(@$$^W4GL("P1SL")@(SL,1)),"\")
 I $L(A1)<6,A1?1N.N Q $TR($J(A1,5)," ",0)
 N OV S OV=$$SL2OV^W4CLKVW(SL)
 Q OV
 ;
PRES(SL) ;
 N OV S OV=$$OV(SL) I 'OV,$$SLAU^W4PRM Q 0
 I $$SLAU^W4PRM,'$$GET1^W4LEVPR(OV,"PAIL") Q 0
 I OV,$G(@$$^W4GL("FILE")@(OV,"CIO"))="I",'$$OLDDATIN^W4HZGMLZ(OV) Q 1
 Q 0
 ;
CV(SL) 
 I $G(SL)="" Q ""
 N A S A=$G(@$$^W4GL("P1SL")@(SL,1))
 Q $P(A,"\",4)_":"_$P(A,"\",5)
 
 
 
 
 

W4SLHFK
W4SLHFK(DAT) ; [ 05.12.24 20:06 ] [ 22.02.18 05:12 ] [ 04.12.17 22:26 ] 
 N (JB,%ARG,DAT)
 I $G(%ARG("SHOW"))=0 Q
 ;
 S DT=$$^%L1DC(DAT,3)
 I DT>$$^W4DZ Q "DATEERROR"
 S TODAY=0
 I DT=$$^W4DZ S TODAY=1
 ;
 S GLHFK=$$^W4GL("W4SLHFK")_"(DT)"
 S GLORD=$$^W4ORD
 K MZ
 S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 .S SL=$$PSL^W4HZMST(N) Q:'SL
 .S MZ(SL)=$G(MZ(SL))+$$MZM^W4HZMST(N)
 ;
 S (SMZ,SHFK,SDIF)=0
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_""" >"
  W $$^%W1DICT("DATE")_" "_$ZD(DT,"DD.MM.YY")
 W "</span><br><br>",!
 ;
 S RCVR=""
 S MLZR=$$GETP^%W1PRM("MLZR")
 I MLZR S RCVR=$$^W4NAME(MLZR)
 ;
 I TODAY D
 .W $$^%W1DICT("RECEIVER")_"&nbsp;&nbsp;"
 .W "<input type=""text"" id=""RCVR"" value="""_$$H2U^%L1FRM(RCVR)_""">",!
 .W "<br>",!
 ;
 W "<br>",!
 W "<table id=""Tbl"" width=""80%"" >",!
 W "<tr>"
  W "<th width=""12%"">"
   W $$^%W1DICT("COURIERNUMBER")
  W "</th>"
  W "<th width=""35%"" >" 
   W $$^%W1DICT("COURIERNAME")
  W "</th>"
  W "<th width=""12%"">"
   W $$^%W1DICT("CASH")
  W "</th>"
  W "<th width=""12%"">"
   W $$^%W1DICT("CSRDEPOSITION")
  W "</th>"
  W "<th width=""12%"">" 
   W $$^%W1DICT("DIF")
  W "</th>"
 ;
  W "<th>"
   W $$^%W1DICT("RECEIVER")
  W "</th>"
  ;
  W "<th>"
   W $$^%W1DICT("TIME")
  W "</th>"
 W "</tr>"
 ;
 S SL="",I=0 F  S SL=$O(MZ(SL)) Q:SL=""  D
 .I TODAY,$G(MZ(SL))<1 Q
 .S I=I+1
 .W "<tr id=""tr"_SL_""" >"
 . W "<td>"_SL_"</td>"
 . S SL1=$G(@$$^W4GL("P1SL")@(SL))
 . W "<td>"_$$H2U^%L1FRM(SL1)_"</td>"
 . W "<td id=""mz"_SL_""" >"_$J(MZ(SL),2,2)_"</td>"
 . S A=$G(@GLHFK@(SL))
 . S HFK=$J(A,2,2)
 . S RCVR=$P(A,"\",2)
 . S SHAA=$P(A,"\",3)
 . S DIF=$J(MZ(SL)-HFK,2,2)
 . S SMZ=SMZ+MZ(SL)
 . S SHFK=SHFK+HFK
 . S SDIF=SDIF+DIF
 .
 . W "<td>"
 . I 'TODAY D
 .. W HFK
 . I TODAY D
 .. W "<input type=""text"" size=""6"" id=""sl"_SL_""" "
 .. W " onClick=""this.select()"" "
 .. W " onKeyUp=""OnKeyUp(this)"" "
 .. W " value="""_HFK_""" />"
 . W "</td>",!
 .
 . W "<td id=""dif"_SL_""">"_$J(DIF,2,2)_"</td>"
 .
 . W "<td >"_$$H2U^%L1FRM(RCVR)_"</td>"
 . W "<td >"_SHAA_"</td>"
 .
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-size:"_$$^W3FSZ_""" >"
  W "<td>"
   W "&nbsp;"
  W "</td>"
  W "<td>"
   W "&nbsp;"
  W "</td>"
  W "<td>"
   W $J(SMZ,2,2)
  W "</td>"
  W "<td>"
  I 'TODAY D 
  .W $J(SHFK,2,2)
  I TODAY D
  .W "<input type=""text"" size=""8"" id=""Shfk"" value="""_SHFK_""" "
  .W " readonly=""readonly"" />"
  W "</td>"
  W "<td id=""Sdif"">"
   W $J(SDIF,2,2)
  W "</td>"
  ;
  W "<td>&nbsp;</td>",!
  W "<td>&nbsp;</td>",!
 W "</tr>",!
 W "</table>",!
 W "<br><br>",!
 ;
 D DIVBUT
 Q
 ;
DIVBUT ;
 S PRM="SP"
 I 'TODAY S PRM="P"
 I TODAY,$D(@$$^W4GL("W4SLHFK")@(DT))<10 S PRM="S"
 D ^W4DIVBUT(PRM)
 Q
 ;
SAVE(PRM) ;
 N (JB,PRM)
 D PUT^%W3DEB("W4SLHFK-SAVE","PRM=PRM")
 ;
 N DAT S DAT=$P(PRM,";")
 N RCVR S RCVR=$$INVH^%L1FRM($P(PRM,";",2))
 S DT=$$^%L1DC(DAT,3) I 'DT Q "WRONGDATE"
 I RCVR?.P Q "WRONGRECEIVER"
 ;
 ;;K @$$^W4GL("W4SLHFK")@(DT)
 ;
 F I=3:1:$L(PRM,";") D
 .S COUP=$P(PRM,";",I)
 .S SL=$P(COUP,"^") Q:SL'?1N.N
 .S VL=$P(COUP,"^",2)
 .S $P(@$$^W4GL("W4SLHFK")@(DT,SL),"\")=VL
 .I $P(@$$^W4GL("W4SLHFK")@(DT,SL),"\",2)'?.P Q
 .S $P(@$$^W4GL("W4SLHFK")@(DT,SL),"\",2)=RCVR
 .S $P(@$$^W4GL("W4SLHFK")@(DT,SL),"\",3)=$ZD($H,"24:60")
 ;
 D ^W4MDPPC
 I $D(%MDP("P")),'$$MZSM^W4PRM S @$$^W4PC@(PRINT,$O(@$$^W4PC@(PRINT,99999),-1)+1)=%MDP("P")
 ;
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SLNET
W4SLNET ;  [ 29.05.25 16:14 ] [ 30.10.23 09:47 ] [ 29.10.23 10:25 ] 
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 I $G(JB)="" W "JB NOT DEFINED !" Q
 ;
 N W3MSDR,TMP,TMPSN
 ;;S %ARG("MSDR")=10222
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 ;
 S GLMSD=$$^W4GL("TMPMSD") K @GLMSD
 N N S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @GLMSD@(N)=$G(^|$$^W3MAIN|W3MSD(N))
 ;
 D ^%W1ARG
 D ^W4IN K %L1PC S SHL=""
 S NP1=0
 ;
 K %L1PC
 S %REPN="W4SLNET"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
DT ;
 W "DT="_DT_" MEDAT="_MEDAT_" ADDAT="_ADDAT
 I DT<MEDAT S OK=0 Q
 I DT>ADDAT S OK=2 Q
 S DAT=$ZD(DT,"DD.MM.YY")
 D PUT^%W1PRM("PCPDAT",DAT)
 Q
 ;
HZ ;
 S OK=1
 N A S A=$G(@GLOB)
 S SL1=$P(A,"*",3) 
 S x1=$P(A,"*",4)
 F J=2:1:4 X "S x"_J_"=$J($P(A,""*"","_(J+4)_"),1,1)"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SLPLA0
W4SLPLAN ; [ 03.03.25 17:13 ] [ 27.01.25 13:14 ] [ 26.01.25 04:13 ] 
 N (JB,%ARG)
 I $G(%ARG("DAT"))="" W " A DATE NOT DEFINED !" Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S DT=$$^%L1DC(%ARG("DAT"),3)
 S P1DZ=$$^W4DZ
 N NOINPUT S NOINPUT=0
 I DT<P1DZ!$G(%ARG("PSL")) S NOINPUT=1
 ;
 D UCI
 S GL="^[UCI]W4LINKD(DT)"
 S GLSL=$$^W4GL("P1SL")
 D GLPLAN
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 W "<br>",!
 ;
 I $G(@GLPLAN)'="",$G(@GLPLAN)'=$$^W4MYDVN,'$G(%ARG("MAIL")) D  Q
 .W "<b>"_$$^%W1DICT("WORKFROMOTHERTERMINAL",$G(@GLPLAN))_"</b>"
 .W "<script>setTimeout('Back()',2000)</script>",!
 .W "</div>",!
 ;
 ;;D DIVBUT
 ;
 S @GLPLAN=$$^W4MYDVN
 W "<table width=""95%"" >" 
  W "<tr>"
   W "<td width="""_$S($G(%ARG("MAIL")):"100%",1:"65%")_""" style=""font-size:"_$$^W3FSZ(14)_";text-align:center"">"
     W $$^%W1DICT("COURIERSPLANTODATE",%ARG("DAT"))
   W "</td>"
   I '$G(%ARG("MAIL")) D
   .W "<td>"
   . D DIVBUT
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<p></p>",!
 ;
 S VRMPSL=$$^W4MAIN("VRMPSL") K @VRMPSL
 ;
 S N1="" F  S N1=$O(@$$^W4GL("P1SL")@(N1)) Q:N1=""  D
 .S A=$G(^(N1))
 .S @VRMPSL@($$^W4ABCIND(N1,A))=N1
 .I $$SLCEVA S @VRMPSL@($$^W4ABCIND(N1,A),"CV")=$$CV^W4SL(N1)
 ;
 W "<select id=""psl"" onChange=""ChangePsl()"" "
 W ">",!
  W "<option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
  S IND="" F  S IND=$O(@VRMPSL@(IND)) Q:IND=""  D
  .S PSL=$G(^(IND)) Q:PSL=""
  .W "<option value="""_PSL_""" "
  .I $G(%ARG("PSL")),PSL=%ARG("PSL") W " selected=""selected"" "
  .W ">"_$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))_"</option>",!
 W "</select>"
 ;
 I $G(%ARG("PSL")),'$G(%ARG("MAIL")) D
 .W $$NBSP^%L1FRM(5)
 .S PSL=%ARG("PSL")
 .W "<input type=""text"" id=""mailpsl"" value="""_$$EMAIL(PSL)_""" size=""40"" />"
 .W "&nbsp;"
 .W "<button style=""color:blue"" onClick=""Send2Psl()"">"_$$^%W1DICT("SEND2MAIL")_"</button>",! 
 ;
 W "<p></p>",!
 ;
 W "<table id=""Tbl"" width=""100%"" cellpadding=""3px"">",!
 ;
 W "<tr>"
  W "<th width=""6%"">"_$$^%W1DICT("ORDER")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th width=""25%"">"_$$^%W1DICT("ADDRESS")_"</th>"
  W "<th width=""9%"">"_$$^%W1DICT("ORDEREDTOTIME")_"</th>"
  W "<th width=""9%"">"_$$^%W1DICT("COURIEREXITTIME")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("COMMENT")_"</th>"
  I '$G(%ARG("PSL")) D
  .W "<th>"_$$^%W1DICT("COURIER")_"</th>"
 W "</tr>",!
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 S N1="" F  S N1=$O(@$$^W4GL("P1SL")@(N1)) Q:N1=""  D
 .S A=$G(^(N1))
 .S @VRM@($$^W4ABCIND(N1,A))=N1
 ;
 S VRMHZ=$$^W4MAIN("VRMHZ") K @VRMHZ
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$^W4HZMH(N) Q
 .I $$DEL^W4DEL(N) Q
 .I $$^W4PIZUL(N) Q
 .
 .S IND=$$TMHZ(N)
 .S @VRMHZ@(IND)=N
 ;
 S INDEX="" F  S INDEX=$O(@VRMHZ@(INDEX)) Q:INDEX=""  D
 .N N S N=$G(^(INDEX)) Q:N=""
 .N SL S SL=$P($G(@GLPLAN@(N)),"\")
 .I $G(%ARG("PSL")),SL'=%ARG("PSL") Q
 .
 .W "<tr id=""tr"_N_""" style=""color:"_$$COLOR(SL)_""" >"
 . W "<td onClick=""ShowOrd('"_N_"')"" style=""cursor:pointer"">"  
 .  W N
 . W "</td>"
 .
 . W "<td>"  
 .  W $$H2U^%L1FRM($$NAME^W4HZMST(N))
 . W "</td>"
 .
 . W "<td>"  
 .  W $$H2U^%L1FRM($$KTVM^W4HZMST(N,.5))
 . W "</td>"
 .
 . W "<td align=""center"" style=""color:grey"" >"
 .  S SHAA=$$SHAA^W4HZMST(N)
 .  S ADSHAA=$$ADSHAA^W4HZMST(N)
 .  I ADSHAA S SHAA=SHAA_"-"_ADSHAA
 .  ;;I $$SMSHAA^W4PRM S SHAA=$$SMSHAA(SHAA) 
 .  W SHAA
 . W "</td>"
 .
 . W "<td align=""center"">"
 .  S SHAA=$$SHAA^W4HZMST(N)
 .  S ADSHAA=$$ADSHAA^W4HZMST(N)
 .  I NOINPUT!'$$SF^W4PRM D
 .  . W $$LIFNEY(SHAA,ADSHAA,N)
 .  I 'NOINPUT,$$SF^W4PRM D
 .  . D HREXIT(SHAA,N)
 . W "</td>"
 . ;
 . W "<td align=""center"" id=""tdcmnt"_N_""" >"
 .  N HR S HR=$$HR(N)
 .  I NOINPUT D  Q
 . . W HR
 . 
 .  W "<input type=""text"" id=""cmnt"_N_""" value="""_HR_""" size=""40"" >" 
 . W "</td>",!
 .
 . W "<td align=""center"">"  
 . D
 . . N SL S SL=$P($G(@GLPLAN@(N)),"\")
 . . ;
 . . ;;I $$TAKEAWAY^W4HZMST(N),$$DELIS^W4PRM D  Q 
 . . .S SL=66 W $$H2U^%L1FRM($G(@GLSL@(SL)))
 . . .
 . . I NOINPUT D  Q
 . . .I 'SL W "&nbsp;" Q
 . . .W SL_" "_$$H2U^%L1FRM($G(@GLSL@(SL)))
 . . ;
 . .  D SELSL(N)
 .
 . W "</td>"
 .
 .W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 D DIVBUT
 W "</div>",!
 ;
 I $$SLCEVA D DIVCV
 ;
 K @VRM
 Q
 ;
 ;
DIVBUT ;
 Q:$G(%ARG("MAIL"))
 W "<div id=""divbut"">",!
  N CLASS S CLASS="" ;"btnrnd"
  I DT'<P1DZ D
  .D ^W4BUTTON("save","SAVE","Save(1)","color:green","",CLASS)
  .D SPACE
  D ^W4BUTTON("print","PRINT","Print()","color:blue","",CLASS)
  D
  .I '$G(@$$^W4PRM@("MAPSHOW")) Q
  .I '$$MAPLAT^W4MAPPRM(1)!'$$MAPLNG^W4MAPPRM(1)!'$$ZOOM^W4MAPPRM(1) Q
  .D SPACE
  .D ^W4BUTTON("rbtmap","MAPDLV","MapDlv()","color:green","",CLASS)
  ;
  ;;D SPACE
  ;;D ^W4BUTTON("send","SEND2MAIL","Send2All()","color:blue","",CLASS)
  ;
  I $D(@$$^W4GL("W4SLPLN0")@(DT)) D
  .D SPACE
  .D ^W4BUTTON("restore","RESTORE","Restore()","color:darkred","",CLASS)
  ;
  D SPACE
  D ^W4BUTTON("back","BACK","Back()","color:red","",CLASS)
 W "</div>",!
 Q
 ;
 ;
SPACE W $$NBSP^%L1FRM(7)
 Q
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,PRM)
 N DT S DT=$$^%L1DC($P(PRM,";"),3)
 I 'DT Q "WRONGDATE"
 ;
 D GLPLAN ;;K @GLPLAN
 S COUPLE=$P(PRM,";",2,255)
 S ORD=$P(COUPLE,"^")
 S SL=$P(COUPLE,"^",2)
 S SHAA=$P(COUPLE,"^",3)
 S HR=$$INVH^%L1FRM($P(COUPLE,"^",4))
 I ORD,SL!(HR'="") D
 .S @GLPLAN@(ORD)=SL_"\"_SHAA_"\"_HR
 .I SL S @$$^W4GL("W4SLPLN0")@(DT,ORD)=SL_"\"_SHAA_"\"_HR
 ;
 Q 1
 ;
 ;
CLRFLAG(DT)
 S DT=$$^%L1DC(DT,3)
 D GLPLAN
 I $D(@GLPLAN) S @GLPLAN=""
 Q
 ;
TMHZ(HZ) ; 
 N SHAA S SHAA=$$SHAA^W4HZMST(HZ) 
 S SHAA=SHAA*60+$P(SHAA,":",2)
 Q $J(SHAA,4)_$J(HZ,8) 
 ;
LIFNEY(SHAA,ADSHAA,HZ) ; 
 N SHAAMN,ADSHAAMN,NEWSHAA,NEWADSHAA
 S ADSHAA=$G(ADSHAA)
 N IR,CT S IR=$$SPA^%L1FRM($$IR^W4HZMST(HZ))
 N OK,MN S OK=0,MN=0
 N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:OK
 .S CT=$$SPA^%L1FRM($G(^(N)))
 .I IR=CT S OK=N
 I OK S MN=$P($G(@$$^W4GL("P1IR")@(OK,1)),"\",2)
 I 'MN S MN=45 
 S SHAAMN=SHAA*60+$P(SHAA,":",2)
 S ADSHAAMN=ADSHAA*60+$P(ADSHAA,":",2)
 S NEWSHAA=SHAAMN-MN
 S NEWADSHAA=ADSHAAMN-MN
 I NEWSHAA<0 S NEWSHAA=NEWSHAA+(24*60)
 I NEWADSHAA<0 S NEWADSHAA=NEWADSHAA+(24*60)
 ;;W "NEWSHAA="_NEWSHAA_"  NEWADSHAA="_NEWADSHAA,!
 S NEWSHAA=$$J(NEWSHAA\60)_":"_$$J(NEWSHAA#60)
 S NEWADSHAA=$$J(NEWADSHAA\60)_":"_$$J(NEWADSHAA#60)
 I 'ADSHAAMN Q NEWSHAA
 Q NEWSHAA_"-"_NEWADSHAA
 ;
HREXIT(SHAA,HZ) ; 
 D GLPLAN
 ;
 I $D(@GLPLAN@(HZ)) D  Q
 .S SHAA=$P($G(^(HZ)),"\",2)
 .D TIMENEW^%W1DAT("tim"_HZ,SHAA,"",1)
 ;
 N SHAAMN,NEWSHAA
 N IR,CT S IR=$$SPA^%L1FRM($$IR^W4HZMST(HZ))
 N OK,MN S OK=0,MN=0
 N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:OK
 .S CT=$$SPA^%L1FRM($G(^(N)))
 .I IR=CT S OK=N
 I OK S MN=$P($G(@$$^W4GL("P1IR")@(OK,1)),"\",2)
 S SHAAMN=SHAA*60+$P(SHAA,":",2)
 S NEWSHAA=SHAAMN-MN
 I NEWSHAA<0 S NEWSHAA=NEWSHAA+(24*60)
 S NEWSHAA=$$J(NEWSHAA\60)_":"_$$J(NEWSHAA#60)
 D TIMENEW^%W1DAT("tim"_HZ,NEWSHAA,"",1)
 Q
 ;
 ;
J(S) ; 
 Q $TR($J(S,2)," ",0)
 ;
UCI ;
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q
 S UCI=$$^%W1UCI(JB)
 Q
 ;
GLPLAN ;
 D UCI
 S GLPLAN="^|UCI|W4SLPLAN(DT)"
 Q
 ;
SMSHAA(SHAA) ; 
 N SMSHAA S SMSHAA=$$SMSHAA^W4PRM
 N ADSHAA
 I SHAA'["-" Q $$SMSHAA1(SHAA,SMSHAA)
 S ADSHAA=$P(SHAA,"-",2)
 S SHAA=$P(SHAA,"-")
 Q $$SMSHAA1(SHAA,SMSHAA)_"-"_$$SMSHAA1(ADSHAA,SMSHAA)
 ;
SMSHAA1(SHAA,SMSHAA) ; 
 N SHAA1 S SHAA1=SHAA*60+$P(SHAA,":",2)
 S SHAA1=SHAA1-SMSHAA 
 Q $$DOP(SHAA1\60)_":"_$$DOP(SHAA1#60) 
 ;
DOP(TM) ;
 Q $TR($J(TM,2)," ",0) 
 ;
COLOR(SL) ; 
 I SL Q "black" 
 Q "brown" 
 ;
RESTORE(DAT) ;
 I $G(DAT)="" Q
 N DT S DT=$$^%L1DC(DAT,3) 
 D GLPLAN 
 M @GLPLAN=@$$^W4GL("W4SLPLN0")@(DT) 
 Q
 ;
EMAIL(PSL) ;
 I $G(PSL)="" Q "" 
 N A S A=$G(@$$^W4GL("P1SL")@(PSL,1)) 
 Q $P(A,"\",3) 
 ;
 ;
SNDMAIL(PRM)
 N (JB,%ARG,PRM) D ^%L1TS
 ;
 S %ARG("DAT")=$P(PRM,";",1)
 S %ARG("PSL")=$P(PRM,";",2)
 S HDMAIL=$P(PRM,";",3)
 S EMAIL=$P(PRM,";",4)
 S HOWSEND=3
 ;
 S EMAIL=$$CLA^%L1FRM(EMAIL)
 I EMAIL'["@" Q "EMAILWRONG"
 ;
 D PRM^W4MAIL ; --> FROM,SMRP,USER,PSW
 ;
 N WEB S WEB=$$WEB^W3MAIN
 I WEB["//" S WEB=$P(WEB,"//",2,20)
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 ;
 S FILE="/tmp/sndmail"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  W "<html>",!
  S %ARG("MAIL")=1
  D W4SLPLAN
  W "</html>",!
 C FILE
 ;
 D PROCFILE^W4EMAIL(FILE,"",HOWSEND) ;; --> FILE1,FILEC
 ;
 S PRM1=";"_HDMAIL_";"_EMAIL
 J SEND^W4EMAIL(JB,PRM1,SMTP,USER,PSW,FROM,FILE1,FILEC)
 Q $ZSY
 ;
 ; 
HR(N) ; 
 N HR S HR=$P($G(@GLPLAN@(N)),"\",3)
 S HR=$$CLRDLM^%L1FRM(HR,"{","}")
 S HR=$$H2U^%L1FRM(HR)
 N CMNT S CMNT=$$CMNT^W4HZMST(N)
 I CMNT["{",CMNT["}" D
 .N CMNT1 S CMNT1=$P($P(CMNT,"{",2),"}")
 .I $L(CMNT1) S HR=HR_" {"_$$H2U^%L1FRM(CMNT1)_"}"
 Q HR
 ;
 ;
SELSL(N) ; 
 N IND,N1
 I $$SLCEVA D SHOWSLCEVA(N) Q
 ;
 ;;W "<select id=""sl"_N_""" onChange=""ChangeCourier('"_N_"')"" >",!
 W "<select id=""sl"_N_""" >",!
  W "<option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
  S IND="" F  S IND=$O(@VRM@(IND)) Q:IND=""  D
  .S N1=$G(^(IND)) Q:'N1
  .W "<option value="""_N1_""" "
  .D
  . .I $$TAKEAWAY^W4HZMST(N),$$DELIS^W4PRM S SL=66
  . .I SL,N1=SL W " selected=""selected"" "
  .W ">"
  .  W $$H2U^%L1FRM($G(@GLSL@(N1)))
  .W "</option>",!
  W "</select>",!
 Q  ;
 ;
 ; 
SHOWSLCEVA(HZ) ; 
 N IND,N1,VL,VL1
 S VL=0,VL1=$$^%W1DICT("CHOICECOURIER")
 N SL S SL=$P($G(@GLPLAN@(N)),"\")
 I $$TAKEAWAY^W4HZMST(N),$$DELIS^W4PRM S SL=66
 ; 
 S VL=SL
 I VL S VL1=$$H2U^%L1FRM($G(@GLSL@(VL)))
 ;
 W "<table dir="""_$$^%W1DIR_""" cellspacing=""0"" "
  W " style=""background-color:white;width:80%"" "  
 W ">"
  W "<tr>"
   W "<td id=""sl"_HZ_""" style=""display:none"" >"
    W VL
   W "</td>" 
   W "<td id=""nm"_HZ_""" onClick=""ChangeCourierCv('"_HZ_"',this)"" "
    W "style="""
     N CV,BG,FG S CV=$$CV^W4SL(VL) 
     S BG=$P(CV,":"),FG=$P(CV,":",2)
     I $L(BG) W "background-color:"_BG
     I $L(FG) W ";color:"_FG
    W """ " 
   W ">"
    W VL1
   W "</td>" 
  W "</tr>",! 
 W "</table>",!
 Q 
 ;
 ;
DIVCV ;
 N IND,SL,SL1,CURHZ
 ;
 W "<div id=""divcv"" dir=""$$^%W1DIR_"" "
  W "style=""display:none;position:absolute;height:200px;overflow-y:auto"" "
 W ">",!
  W "<table dir="""_$$^%W1DIR_""" border=""1"" style=""background-color:white;width:100%"" >",! 
  S IND="" F  S IND=$O(@VRMPSL@(IND)) Q:IND=""  D
  .S SL=$G(^(IND)) Q:'SL
  .S SL1="" I SL S SL1=$$H2U^%L1FRM($G(@GLSL@(SL)))
  .
  .W "<tr "_$$^W4TOUCH_"=""ChoiceSlCeva('"_SL_"')"" >"
  . W "<td id=""clcv"_SL_""" style=""display:none"" "
  . W ">"
  .  W SL
  . W "</td>" 
  . W "<td id=""nmcv"_SL_"""  style=""border:none"
  .  N BG,FG,CV S CV=$$CV^W4SL(SL)
  .  S BG=$P(CV,":"),FG=$P(CV,":",2)
  .  I $L(BG) W ";background-color:"_BG 
  .  I $L(FG) W ";color:"_FG 
  .  W """ "_$$^%W1ALIGN
  . W ">" 
  .  W $$NBSP^%L1FRM(3)_SL1
  . W "</td>"
  .W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q 
 ;
SLCEVA() ; 
 Q $$SLCEVA^W4PRM
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SLPLAN
W4SLPLAN ; [ 07.09.26 12:58 ] [ 27.10.25 15:33 ] [ 06.07.25 11:48 ] 
 N (JB,%ARG)
 I $G(%ARG("DAT"))="" W " A DATE NOT DEFINED !" Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S DT=$$^%L1DC(%ARG("DAT"),3)
 S P1DZ=$$^W4DZ
 N NOINPUT S NOINPUT=0
 I DT<P1DZ!$G(%ARG("PSL")) S NOINPUT=1
 ;
 D UCI
 S GL="^[UCI]W4LINKD(DT)"
 S GLSL=$$^W4GL("P1SL")
 D GLPLAN
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 W "<br>",!
 ;
 I $G(@GLPLAN)'="",$G(@GLPLAN)'=$$^W4MYDVN,'$G(%ARG("MAIL")),DT'<P1DZ D  Q
 .W "<b>"_$$^%W1DICT("WORKFROMOTHERTERMINAL",$G(@GLPLAN))_"</b>"
 .W "<script>setTimeout('Back()',2000)</script>",!
 .W "</div>",!
 ;
 ;;D DIVBUT
 ;
 I DT'<P1DZ S @GLPLAN=$$^W4MYDVN
 D
 .W "<table width=""95%"" onClick=""HideDivCv()"">" 
 . W "<tr>"
 .  N WD S WD=$S($G(%ARG("MAIL")):"100%",1:$S($$1024^W4WDSCR:55,1:65)_"%")
 .  W "<td width="""_WD_""" style=""font-size:"_$$^W3FSZ(14)_";text-align:center"">"
 .    W $$^%W1DICT("COURIERSPLANTODATE",%ARG("DAT"))
 .  W "</td>"
 .  I '$G(%ARG("MAIL")) D
 .  .W "<td>"
 .  . D DIVBUT
 .  .W "</td>"
 . W "</tr>",!
 .W "</table>",!
 ;
 W "<p></p>",!
 ;
 S VRMPSL=$$^W4MAIN("VRMPSL") K @VRMPSL
 ;
 S N1="" F  S N1=$O(@$$^W4GL("P1SL")@(N1)) Q:N1=""  D
 .S A=$G(^(N1))
 .S @VRMPSL@($$^W4ABCIND(N1,A))=N1
 .I $$SLCEVA S @VRMPSL@($$^W4ABCIND(N1,A),"CV")=$$CV^W4SL(N1)
 ;
 D VRMHZ S QNORDS=0
 S N="",I=0 F  S N=$O(@VRMHZ@(N)) Q:N=""  S I=I+1
 S QNORDS=I
 ;
 W "<table dir="""_$$^%W1DIR_""" style=""text-align:center;width:40%"" >",!
  W "<tr>"
   W "<td >"_$$^%W1DICT("ORDERQN")_" <span id=""qnords"" style=""font-weight:bold"">"_QNORDS_"</span></td>",!
   W "<td width=""30%"">&nbsp;</td>"
   W "<td>" 
      W "<select id=""psl"" onChange=""ChangePsl()"" "
      W ">",!
       W "<option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
       S IND="" F  S IND=$O(@VRMPSL@(IND)) Q:IND=""  D
       .S PSL=$G(^(IND)) Q:PSL=""
       .W "<option value="""_PSL_""" "
       .I $G(%ARG("PSL")),PSL=%ARG("PSL") W " selected=""selected"" "
       .W ">"_$$H2U^%L1FRM($G(@$$^W4GL("P1SL")@(PSL)))_"</option>",!
      W "</select>",!
    w "</td>"
  W "</tr>",!
 W "</table>",!
 W "<p></p>",!
 ;
 I $G(%ARG("PSL")),'$G(%ARG("MAIL")) D
 .W $$NBSP^%L1FRM(5)
 .S PSL=%ARG("PSL")
 .W "<input type=""text"" id=""mailpsl"" value="""_$$EMAIL(PSL)_""" size=""40"" />"
 .W "&nbsp;"
 .W "<button style=""color:blue"" onClick=""Send2Psl('')"">"_$$^%W1DICT("SEND2MAIL")_"</button>",! 
 .N PSL,PSL1 S PSL1="" S PSL=%ARG("PSL") I PSL S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 .N PELE S PELE=$P(PSL1," ") Q:'PELE
 .W "<button style=""color:blue"" onClick=""Send2Psl('"_PELE_"')"">"_$$^%W1DICT("SEND2WHATSAPP")_"</button>",! 
 ;
 W "<p></p>",!
 ;
 W "<table id=""Tbl"" width=""100%"" cellpadding=""3px"">",!
 ;
 W "<tr>"
  W "<th width=""5%"">"_$$^%W1DICT("ORDER")_"</th>"
  W "<th width=""16%"">"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th width=""20%"">"_$$^%W1DICT("ADDRESS")_"</th>"
  W "<th width=""6%"">"_$$^%W1DICT("QNITEMS")_"</th>"
  W "<th width=""6%"">"_$$^%W1DICT("ORDEREDTOTIME")_"</th>"
  W "<th width=""11%"">"_$$^%W1DICT("HZSLTIM")_"</th>"
  W "<th width=""6%"">"_$$^%W1DICT("RCMDTIME")_"</th>"
  W "<th width=""16%"">"_$$^%W1DICT("COMMENT")_"</th>"
  D  ;I '$G(%ARG("PSL")) D
  .W "<th width=""10%"">"_$$^%W1DICT("COURIER")_"</th>"
 W "</tr>",!
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 ;
 S N1="" F  S N1=$O(@$$^W4GL("P1SL")@(N1)) Q:N1=""  D
 .S A=$G(^(N1))
 .S @VRM@($$^W4ABCIND(N1,A))=N1
 ;
 D VRMHZ
 ;
 S INDEX="" F  S INDEX=$O(@VRMHZ@(INDEX)) Q:INDEX=""  D
 .N N S N=$G(^(INDEX)) Q:N=""
 .N SL S SL=$P($G(@GLPLAN@(N)),"\")
 .I $G(%ARG("PSL")),SL'=%ARG("PSL") Q
 .
 .W "<tr id=""tr"_N_""" style=""color:"_$$COLOR(SL)_""" >"
 . W "<td onClick=""ShowOrd('"_N_"')"" style=""cursor:pointer"">"  
 .  W N
 . W "</td>"
 .
 . W "<td>"  
 .  W $$H2U^%L1FRM($$NAME^W4HZMST(N))
 . W "</td>"
 .
 . W "<td>"  
 .  W $$H2U^%L1FRM($$KTVM^W4HZMST(N,.5))
 . W "</td>"
 .
 . W "<td align=""center"">"  
 .  W $$TOTQN^W4HZMST(N)
 . W "</td>"
 .
 . W "<td align=""center"" style=""color:black"" >"
 .  S SHAA=$$SHAA^W4HZMST(N)
 .  S ADSHAA=$$ADSHAA^W4HZMST(N)
 .  I ADSHAA S SHAA=SHAA_"-"_ADSHAA
 .  ;;I $$SMSHAA^W4PRM S SHAA=$$SMSHAA(SHAA) 
 .  W SHAA
 . W "</td>"
 .
 . N I,SLTIME S SLTIME=$P($G(@GLPLAN@(N)),"\",4)
 . W "<td id=""tdtime"_N_""" align=""center"" dir=""LTR"" "
 .  I SLTIME'=0,SLTIME'="",SLTIME'="00:00" D
 .  .W "style=""background-color:lightyellow"" "
 . W ">"
 .  I DT'<P1DZ&'$G(%ARG("PSL")) D SELTIME(N) 
 .  I DT<P1DZ!$G(%ARG("PSL")) W SLTIME
 . W "</td>"
 .
 . W "<td align=""center"" style=""color:grey"" >"
 .  S SHAA=$$SHAA^W4HZMST(N)
 .  S ADSHAA=$$ADSHAA^W4HZMST(N)
 .  I NOINPUT!'$$SF^W4PRM D
 .  . W $$LIFNEY(SHAA,ADSHAA,N)
 .  I 'NOINPUT,$$SF^W4PRM D
 .  . D HREXIT(SHAA,N)
 . W "</td>"
 . ;
 . W "<td align=""center"" id=""tdcmnt"_N_""" >"
 .  N HR S HR=$$HR(N)
 .  I NOINPUT W HR
 .  I 'NOINPUT D
 .  .N SZ S SZ=35 I $$1024^W4WDSCR S SZ=25
 .  .W "<input type=""text"" id=""cmnt"_N_""" value="""_HR_""" size="""_SZ_""" >" 
 . W "</td>",!
 .
 . W "<td align=""center"">"  
 . D
 . . N SL S SL=$P($G(@GLPLAN@(N)),"\")
 . . 
 . . ;
 . . ;;I $$TAKEAWAY^W4HZMST(N),$$DELIS^W4PRM D  Q 
 . . .S SL=66 W $$H2U^%L1FRM($G(@GLSL@(SL)))
 . . .
 . . I NOINPUT D  Q
 . . .I 'SL W "&nbsp;" Q
 . . .W SL_" "_$$H2U^%L1FRM($G(@GLSL@(SL)))
 . . ;
 . .  D SELSL(N)
 .
 . W "</td>"
 .
 .W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 D DIVBUT
 W "</div>",!
 ;
 I $$SLCEVA D DIVCV
 ;
 K @VRM
 Q
 ;
 ;
DIVBUT ;
 Q:$G(%ARG("MAIL"))
 W "<div id=""divbut"">",!
  N CLASS S CLASS="" ;"btnrnd"
  I DT'<P1DZ,'$G(%ARG("PSL")) D
  .D ^W4BUTTON("save","SAVE","Save(1)","color:green","",CLASS)
  .D SPACE
  D ^W4BUTTON("print","PRINT","Print()","color:blue","",CLASS)
  D
  .I '$G(@$$^W4PRM@("MAPSHOW")) Q
  .I '$$MAPLAT^W4MAPPRM(1)!'$$MAPLNG^W4MAPPRM(1)!'$$ZOOM^W4MAPPRM(1) Q
  .D SPACE
  .D ^W4BUTTON("rbtmap","MAPDLV","MapDlv()","color:green","",CLASS)
  ;
  ;;D SPACE
  ;;D ^W4BUTTON("send","SEND2MAIL","Send2All()","color:blue","",CLASS)
  ;
  I $D(@$$^W4GL("W4SLPLN0")@(DT))&('$G(%ARG("PSL"))) D
  .D SPACE
  .D ^W4BUTTON("restore","RESTORE","Restore()","color:darkred","",CLASS)
  ;
  D SPACE
  D ^W4BUTTON("back","BACK","Back()","color:red","",CLASS)
 W "</div>",!
 Q
 ;
 ;
SPACE W $$NBSP^%L1FRM(7)
 Q
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,PRM)
 N DT S DT=$$^%L1DC($P(PRM,";"),3)
 I 'DT Q "WRONGDATE"
 ;
 D GLPLAN ;;K @GLPLAN
 S COUPLE=$P(PRM,";",2,255)
 S ORD=$P(COUPLE,"^")
 S SL=$P(COUPLE,"^",2)
 S SHAA=$P(COUPLE,"^",3)
 S HR=$$INVH^%L1FRM($P(COUPLE,"^",4))
 S SLSHAA=$P(COUPLE,"^",5)
 I ORD,SL!(HR'="")!(SLSHAA'=""&(SLSHAA'="00:00")&(SLSHAA'="0:0")) D
 .S @GLPLAN@(ORD)=SL_"\"_SHAA_"\"_HR_"\"_SLSHAA
 .I SL S @$$^W4GL("W4SLPLN0")@(DT,ORD)=SL_"\"_SHAA_"\"_HR_"\"_SLSHAA
 ;
 Q 1
 ;
 ;
CLRFLAG(DT)
 S DT=$$^%L1DC(DT,3)
 D GLPLAN
 I $D(@GLPLAN) S @GLPLAN=""
 Q
 ;
TMHZ(HZ) ; 
 N SHAA S SHAA=$$SHAA^W4HZMST(HZ) 
 S SHAA=SHAA*60+$P(SHAA,":",2)
 Q $J(SHAA,4)_$J(HZ,8) 
 ;
LIFNEY(SHAA,ADSHAA,HZ) ; 
 N SHAAMN,ADSHAAMN,NEWSHAA,NEWADSHAA
 S ADSHAA=$G(ADSHAA)
 N IR,CT S IR=$$SPA^%L1FRM($$IR^W4HZMST(HZ))
 N OK,MN S OK=0,MN=0
 N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:OK
 .S CT=$$SPA^%L1FRM($G(^(N)))
 .I IR=CT S OK=N
 I OK S MN=$P($G(@$$^W4GL("P1IR")@(OK,1)),"\",2)
 I 'MN S MN=45 
 S SHAAMN=SHAA*60+$P(SHAA,":",2)
 S ADSHAAMN=ADSHAA*60+$P(ADSHAA,":",2)
 S NEWSHAA=SHAAMN-MN
 S NEWADSHAA=ADSHAAMN-MN
 I NEWSHAA<0 S NEWSHAA=NEWSHAA+(24*60)
 I NEWADSHAA<0 S NEWADSHAA=NEWADSHAA+(24*60)
 ;;W "NEWSHAA="_NEWSHAA_"  NEWADSHAA="_NEWADSHAA,!
 S NEWSHAA=$$J(NEWSHAA\60)_":"_$$J(NEWSHAA#60)
 S NEWADSHAA=$$J(NEWADSHAA\60)_":"_$$J(NEWADSHAA#60)
 I 'ADSHAAMN Q NEWSHAA
 Q NEWSHAA_"-"_NEWADSHAA
 ;
HREXIT(SHAA,HZ) ; 
 D GLPLAN
 ;
 I $D(@GLPLAN@(HZ)) D  Q
 .S SHAA=$P($G(^(HZ)),"\",2)
 .D TIMENEW^%W1DAT("tim"_HZ,SHAA,"",1)
 ;
 N SHAAMN,NEWSHAA
 N IR,CT S IR=$$SPA^%L1FRM($$IR^W4HZMST(HZ))
 N OK,MN S OK=0,MN=0
 N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:OK
 .S CT=$$SPA^%L1FRM($G(^(N)))
 .I IR=CT S OK=N
 I OK S MN=$P($G(@$$^W4GL("P1IR")@(OK,1)),"\",2)
 S SHAAMN=SHAA*60+$P(SHAA,":",2)
 S NEWSHAA=SHAAMN-MN
 I NEWSHAA<0 S NEWSHAA=NEWSHAA+(24*60)
 S NEWSHAA=$$J(NEWSHAA\60)_":"_$$J(NEWSHAA#60)
 D TIMENEW^%W1DAT("tim"_HZ,NEWSHAA,"",1)
 Q
 ;
 ;
J(S) ; 
 Q $TR($J(S,2)," ",0)
 ;
UCI ;
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 I $G(MSD) S UCI=$$TV^%W1UCI(MSD) Q
 S UCI=$$^%W1UCI(JB)
 Q
 ;
GLPLAN ;
 D UCI
 S GLPLAN="^|UCI|W4SLPLAN(DT)"
 Q
 ;
SMSHAA(SHAA) ; 
 N SMSHAA S SMSHAA=$$SMSHAA^W4PRM
 N ADSHAA
 I SHAA'["-" Q $$SMSHAA1(SHAA,SMSHAA)
 S ADSHAA=$P(SHAA,"-",2)
 S SHAA=$P(SHAA,"-")
 Q $$SMSHAA1(SHAA,SMSHAA)_"-"_$$SMSHAA1(ADSHAA,SMSHAA)
 ;
SMSHAA1(SHAA,SMSHAA) ; 
 N SHAA1 S SHAA1=SHAA*60+$P(SHAA,":",2)
 S SHAA1=SHAA1-SMSHAA 
 Q $$DOP(SHAA1\60)_":"_$$DOP(SHAA1#60) 
 ;
DOP(TM) ;
 Q $TR($J(TM,2)," ",0) 
 ;
COLOR(SL) ; 
 I SL Q "black" 
 Q "brown" 
 ;
RESTORE(DAT) ;
 I $G(DAT)="" Q
 N DT S DT=$$^%L1DC(DAT,3) 
 D GLPLAN 
 M @GLPLAN=@$$^W4GL("W4SLPLN0")@(DT) 
 Q
 ;
EMAIL(PSL) ;
 I $G(PSL)="" Q "" 
 N A S A=$G(@$$^W4GL("P1SL")@(PSL,1)) 
 Q $P(A,"\",3) 
 ;
 ;
SNDMAIL(PRM)
 N (JB,%ARG,PRM) D ^%L1TS
 ;
 S %ARG("DAT")=$P(PRM,";",1)
 S %ARG("PSL")=$P(PRM,";",2)
 S HDMAIL=$P(PRM,";",3)
 S EMAIL=$P(PRM,";",4)
 S WHATSAPP=$P(PRM,";",5)
 S HOWSEND=3
 ;
 S EMAIL=$$CLA^%L1FRM(EMAIL)
 I 'WHATSAPP I EMAIL'["@" Q "EMAILWRONG"
 ;
 D PRM^W4MAIL ; --> FROM,SMRP,USER,PSW
 ;
 N WEB S WEB=$$WEB^W3MAIN
 I WEB["//" S WEB=$P(WEB,"//",2,20)
 I $E(WEB,$L(WEB))'="/" S WEB=WEB_"/"
 ;
 S FILE="/tmp/sndmail"_$G(JB)
 O FILE:(NEWVERSION:REWIND:WRITE) U FILE
  W "<html>",!
  S %ARG("MAIL")=1
  D W4SLPLAN
  W "</html>",!
 C FILE
 ;
 D PROCFILE^W4EMAIL(FILE,"",HOWSEND) ;; --> FILE1,FILEC
 ;
 S PRM1=";"_HDMAIL_";"_EMAIL
 J SEND^W4EMAIL(JB,PRM1,SMTP,USER,PSW,FROM,FILE1,FILEC,WHATSAPP)
 Q $ZSY
 ;
 ; 
HR(N) ; 
 N HR S HR=$P($G(@GLPLAN@(N)),"\",3)
 S HR=$$CLRDLM^%L1FRM(HR,"{","}")
 S HR=$$H2U^%L1FRM(HR)
 N CMNT S CMNT=$$CMNT^W4HZMST(N)
 I CMNT["{",CMNT["}" D
 .N CMNT1 S CMNT1=$P($P(CMNT,"{",2),"}")
 .I $L(CMNT1) S HR=HR_" {"_$$H2U^%L1FRM(CMNT1)_"}"
 S HR=$$SPA^%L1FRM(HR)
 Q HR
 ;
 ;
SELSL(N) ; 
 N IND,N1
 I $$SLCEVA D SHOWSLCEVA(N) Q
 ;
 ;;W "<select id=""sl"_N_""" onChange=""ChangeCourier('"_N_"')"" >",!
 W "<select id=""sl"_N_""" >",!
  W "<option value=""0"">"_$$^%W1DICT("CHOICECOURIER")_"</option>",!
  S IND="" F  S IND=$O(@VRM@(IND)) Q:IND=""  D
  .S N1=$G(^(IND)) Q:'N1
  .W "<option value="""_N1_""" "
  .D
  . .I $$TAKEAWAY^W4HZMST(N),$$DELIS^W4PRM S SL=66
  . .I SL,N1=SL W " selected=""selected"" "
  .W ">"
  .  W $$H2U^%L1FRM($G(@GLSL@(N1)))
  .W "</option>",!
  W "</select>",!
 Q  ;
 ;
 ; 
SHOWSLCEVA(HZ) ; 
 N IND,N1,VL,VL1
 S VL=0,VL1=$$^%W1DICT("CHOICECOURIER")
 N SL S SL=$P($G(@GLPLAN@(N)),"\")
 I $$TAKEAWAY^W4HZMST(N),$$DELIS^W4PRM S SL=66
 ; 
 S VL=SL
 I VL S VL1=$$H2U^%L1FRM($G(@GLSL@(VL)))
 ;
 W "<table dir="""_$$^%W1DIR_""" cellspacing=""0"" "
  W " style=""background-color:white;width:80%"" "  
 W ">"
  W "<tr>"
   W "<td id=""sl"_HZ_""" style=""display:none"" >"
    W VL
   W "</td>" 
   W "<td id=""nm"_HZ_""" onClick=""ChangeCourierCv('"_HZ_"',this)"" "
    W "style="""
     N CV,BG,FG S CV=$$CV^W4SL(VL) 
     S BG=$P(CV,":"),FG=$P(CV,":",2)
     I $L(BG) W "background-color:"_BG
     I $L(FG) W ";color:"_FG
    W """ " 
   W ">"
    W VL1
   W "</td>" 
  W "</tr>",! 
 W "</table>",!
 Q 
 ;
 ;
DIVCV ;
 N IND,SL,SL1,CURHZ
 ;
 W "<div id=""divcv"" dir=""$$^%W1DIR_"" "
  W "style=""display:none;position:absolute;height:200px;overflow-y:auto"" "
 W ">",!
  W "<table dir="""_$$^%W1DIR_""" border=""1"" style=""background-color:white;width:100%"" >",! 
  W "<tr "_$$^W4TOUCH_"=""ChoiceSlCeva('0')"" >"
   W "<td id=""clcv0"" style=""border:none;display:none"" "
   W ">0</td>"
   W "<td id=""nmcv0""  style=""border:none"" >"
    W $$^%W1DICT("CHOICECOURIER")
   W "</td>" 
  W "</tr>",!
  S IND="" F  S IND=$O(@VRMPSL@(IND)) Q:IND=""  D
  .S SL=$G(^(IND)) Q:'SL
  .S SL1="" I SL S SL1=$$H2U^%L1FRM($G(@GLSL@(SL)))
  .
  .W "<tr "_$$^W4TOUCH_"=""ChoiceSlCeva('"_SL_"')"" >"
  . W "<td id=""clcv"_SL_""" style=""display:none"" "
  . W ">"
  .  W SL
  . W "</td>" 
  . W "<td id=""nmcv"_SL_"""  style=""border:none"
  .  N BG,FG,CV S CV=$$CV^W4SL(SL)
  .  S BG=$P(CV,":"),FG=$P(CV,":",2)
  .  I $L(BG) W ";background-color:"_BG 
  .  I $L(FG) W ";color:"_FG 
  .  W """ "_$$^%W1ALIGN
  . W ">" 
  .  W $$NBSP^%L1FRM(3)_SL1
  . W "</td>"
  .W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q 
 ;
SLCEVA() ; 
 Q $$SLCEVA^W4PRM
 ;
VRMHZ ; 
 N N,IND
 S VRMHZ=$$^W4MAIN("VRMHZ") K @VRMHZ
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I $$^W4HZMH(N) Q
 .I $$DEL^W4DEL(N) Q
 .I $$^W4PIZUL(N) Q
 .S IND=$$TMHZ(N)
 .S @VRMHZ@(IND)=N
 ;
 N INDEX D GLPLAN
 S INDEX="" F  S INDEX=$O(@VRMHZ@(INDEX)) Q:INDEX=""  D
 .N N S N=$G(^(INDEX)) Q:N=""
 .N SL S SL=$P($G(@GLPLAN@(N)),"\")
 .I $G(%ARG("PSL")),SL'=%ARG("PSL") K @VRMHZ@(INDEX)
 Q 
 ;
 ;
SELTIME(N) ; 
 N I,SLTIME S SLTIME=$P($G(@GLPLAN@(N)),"\",4)
 W "<select ID=""slshaa"_N_""" onChange=""ChangeTime('"_N_"')"">",!
 F I=0:1:23 D
 . W "<option "
 .  I SLTIME'="",+I=+SLTIME W " selected=""selected"" "
 . W ">"_$TR($J(I,2)," ",0)
 . W "</option>",! 
 W "</select>",! 
 
 W "<select ID=""slmin"_N_""" onChange=""ChangeTime('"_N_"')"">",!
 F I=0:15:45 D
 . W "<option "
 .  I SLTIME'="",+I=+$P(SLTIME,":",2) W " selected=""selected"" "
 . W ">"_$TR($J(I,2)," ",0)
  W "</select>",! 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SLRY
W4SLRY(OV,DT1,DT2) ; [ 03.10.21 13:07 ] [ 
 N (JB,%ARG,OV,DT1,DT2)
 S COMPUT="",FLSLR=""
 D TV^W4LEVTYP(OV,DT1,DT2)
 ;
 S SLRY=0
 S SUG="" F  S SUG=$O(MSCR(SUG)) Q:SUG=""  D
 .S JOM="" F  S JOM=$O(MSCR(SUG,JOM)) Q:JOM=""  D
 ..I $G(MSCR(SUG,JOM,"MSHAA")),$G(MSCR(SUG,JOM,"MSHAA","MHR")) D
 ...S SLRY=SLRY+(MSCR(SUG,JOM,"MSHAA")*MSCR(SUG,JOM,"MSHAA","MHR")) D
 Q $J(SLRY,2,2)
 
 

W4SMALH
W4SMALHD ; [ 19.06.11 16:44 ] [
 K MFUNC
 S NF=0
 ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("QN")
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="green"
 S MFUNC(NF,"TO")="Qn()"
 ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("COMMENT")
 S MFUNC(NF,"TO")="Comment()"
 ;
 D NOSELECT^%W1JS
 W "<table dir="""_$$^%W1DIR_""" style=""position:absolute;top:0;left:0;width:100%;height:100%"""
 W " class=""hdord"" "
 W " id=""TblSmallHd"""
 W ">",!
 ;
  W "<tr "
  W " >",!
 W "<td width=""62%"" align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""">",!
 ;
 I $$GET^%W1PRM("W4ABC")!$G(%ARG("NOFUNC")) D
 .W "&nbsp;</td>" K MFUNC
  ;
  W "<table width=""100%"" height=""100%"" padding=""0px""><tr>",!
  ;
  I $$ORDSMALL D  G SUME
  .D FUNC^W4SHEET("100%")
  .W "</tr></table>",!,"</td>"
  ;
  D FUNC^W4SHEET("85%")
  ;
  S MFUNC("EXIT")="BACK"
  ;

W4SMALHD
W4SMALHD ; [ 12.11.24 18:50 ] [ 02.05.17 15:01 ] [ 01.05.17 21:01 ] 
 K MFUNC
 S NF=0
 ;
 S NF=NF+1
 S MFUNC(NF)="+"
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="green"
 S MFUNC(NF,"TO")="Plus('+')"
 ;
 S NF=NF+1
 S MFUNC(NF)="-"
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="red"
 S MFUNC(NF,"TO")="Plus('-')"
 ;
 ;D
 .S NF=NF+1
 .S MFUNC(NF)=$$^%W1DICT("COMMENT")
 .S MFUNC(NF,"TO")="Comment()"
 ;
 ;;D NOSELECT^%W1JS
 ;
 W "<table border=""0"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:0;left:0;width:100%;height:100%"""
 W " class=""hdord"" "
 W " id=""TblSmallHd"""
 W ">",!
 ;
  W "<tr "
  W " >",!
 W "<td width=""72%"" rowspan=""2"" align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""">",!
 ;
 I $$GET^%W1PRM("W4ABC")!$G(%ARG("NOFUNC")) D
 .W "&nbsp;</td>" K MFUNC
  ;
 W " <table width=""100%"" height=""100%"" padding=""0px"">",!
 W "  <tr>"
 ;
 D FUNC^W4SHEET("100%")
 ;
 W "  </tr></table></td>"
 D
 .W "<td "_$$PADDING_" width=""22%"">"
 .N NMB
 .S NMB=$$GET^%W1PRM("NMB")
 .W $$^%W1DICT("SHULHAN")
 .W "</td>"
 .W "<td "_$$^%W1ALIGN_">"_$$SHOWRKV^W4HD(NMB)_"</td>"
 W "<tr>",!
 D
 .W "<td "_$$PADDING_" >"
 .W $$^%W1DICT("GUESTS")
 .W "</td>"
 .N SOAD S SOAD=$$SOAD^W3HZMST(JB)
 .W "<td "_$$^%W1ALIGN_" id=""soadid"" >"_$$SHOWRKV^W4HD(SOAD,"E")_"</td>"
 W "</tr></table>",!
 Q
 ;
 ;
LASTST(STAM) ;
 N N,OK,PRM,ST S OK=0,ST=""
 S N=99999 F  S N=$O(@$$^W4TMPORD@(N),-1) Q:N=""  Q:$$NOMOD^W4HZORD(N)  D  Q:OK
 .S ST=$G(@$$^W4TMPORD@(N))
 .I $P(ST,"~")=0,$$ISNUM^%L1FRM($P(ST,"~",2)) S OK=1
 I 'OK Q "NOK"
 Q "LV0"_N_";"_N_";"_ST
 ;
QN(ZN) ;
 N N,ST S ST=$$LASTST
 I ST="NOK" Q ""
 S N=$P(ST,";",2) I N="" Q ""
 S ST=$P(ST,";",3,200)
 S @("VL="_+$P(ST,"~",5)_ZN)
 I VL<1 Q ""
 N CD S CD=$P(ST,"~",2)
 S $P(@$$^W4TMPORD@(N),"~",5)=VL
 S @$$^W4MAIN("TMPQN")@(CD,N)=VL
 N HIST S HIST=$$QNHIST^W4HZPRTN(CD)
 Q CD_";"_HIST
 ;
 ;
PADDING(STAM) ;
 Q " style=""padding-"_$S($$^%W1DIR="LTR":"left",1:"right")_":15px"" "
 
 
 
 
 
 
 
 
 
 
 

W4SMALL
W4SMALL(STAM) ; [ 04.08.17 09:31 ] [ 06.06.11 20:04 ] [ 30.05.11 13:49 ] 
 I $G(W3ORDLS) Q 0
 I $$GET^%W1PRM("SMALL") Q 1
 Q 0
SMALL(STAM) ;
 I $$W4SMALL&'$$^W4SIMUL Q 1
 Q 0
 ;
VL(STAM) ;
 Q $$GETP^%W1PRM("SMALL")
 

W4SMALLH
W4SMALHD ; [ 19.06.11 16:48 ] [
 K MFUNC
 S NF=0
 ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("QN")
 S MFUNC(NF,"BG")="white"
 S MFUNC(NF,"FG")="green"
 S MFUNC(NF,"TO")="Qn()"
 ;
 S NF=NF+1
 S MFUNC(NF)=$$^%W1DICT("COMMENT")
 S MFUNC(NF,"TO")="Comment()"
 ;
 D NOSELECT^%W1JS
 W "<table dir="""_$$^%W1DIR_""" style=""position:absolute;top:0;left:0;width:100%;height:100%"""
 W " class=""hdord"" "
 W " id=""TblSmallHd"""
 W ">",!
 ;
  W "<tr "
  W " >",!
 W "<td width=""62%"" align="""_$S($$^%W1DIR="LTR":"left",1:"right")_""">",!
 ;
 I $$GET^%W1PRM("W4ABC")!$G(%ARG("NOFUNC")) D
 .W "&nbsp;</td>" K MFUNC
  ;
 W " <table width=""100%"" height=""100%"" padding=""0px"">",!
 W "  <tr>"
 ;
 D FUNC^W4SHEET("85%")
 ;
 S MFUNC("EXIT")="BACK"
  ;
 D EXIT^W4SHEET("15%")
 ;
 W "  </tr></table></td>"
 W "</tr></table>",!
 Q

W4SMBMTB
W4SMBMTB(STAM) ; [ 21.09.13 16:55 ] [
 N MTB,MTB1 S MTB=$G(%ARG("MTB"))
 I 'MTB S MTB=1
 S MTB1=$G(^[$$^W3MAIN]W4MTB(MTB))
 S MTB1=$P(MTB1," ")
 I MTB1="" S MTB1="&nbsp;"
 Q MTB1

W4SMSCON
W4SMSCON(FUNC,POST); ; [ 29.12.24 12:09 ] [ 18.12.18 06:38 ] [ 13.09.16 12:08 ] 
 N HEADER,HEADER1,URL,CMD,PROT,COUNTER
 S COUNTER=$O(@$$^W4GL("W4SMSGP")@("CON",""),-1)+1
 S PROT=$$^W4GL("W4SMSGP")_"(""CON"",COUNTER)"
 S SMSER=0,SMSER1=""
 S HEADER="""Content-Type:text/xml"""
 S HEADER1="""SOAPAction:http://www.smscenter.co.il/"_FUNC_""""
 S URL="https://www.smscenter.co.il/Web/WebServices/SendMessage.asmx"
 ;
 S FLOUT=POST_".o"
 C FLOUT:(DELETE) ; *** LEV 26/12
 S CMD="curl -m 30 "_$$^W4IHTPPS_" -s -H "_HEADER_" -H "_HEADER1_" -d@"_POST_" "_URL_" -o "_FLOUT
 ;;X "ZSY CMD"
 ;;Q
 ;;S CMD1="cat "_FLOUT_"|xmllint --format --encode cp862 -  > "_FLOUT
 S CMD1="export TERM=linux;/usr/bin/xmllint --format --encode cp862 "_FLOUT_" -o "_FLOUT
 ;
 S MYDVN=$$^W4MYDVN,UR=1,H=+$H
 ;
 D PROT("CMD",CMD)
 D PROT("CMD1",CMD1)
 D PROT("FLOUT",FLOUT)
 ;
 ZSY CMD ;;SUCCESS OF THIS COMMAND SHOULD BE CHECKED BEFORE CMD1
 D PROT("ZSY",$ZSY)
 I $ZSY S SMSER=-$ZSY,SMSER1="SMS zxeywza d`iby" G END
 ;
 F JJ=1:1:20  Q:$$^%L1ZOS(10,FLOUT)'<0  H 1
 I $$^%L1ZOS(10,FLOUT)<0 S SMSER=-.2,SMSER1="dlawzd `l daeyz" D  G END
 .D PROT("SMSER",SMSER)
 ;
 ZSY CMD1
 H 1
 I $ZSY S SMSER=-$ZSY,SMSER1=SMSER_" d`iby" D  G END
 .D PROT("SMSER-1",SMSER)
 ;
 D GL
 K @GL S I=0
 ;
 C FLOUT
 O FLOUT:(REWIND:READONLY)
 F  D  Q:$ZEOF
 .U FLOUT R A Q:$ZEOF
 .S I=I+1,@GL@(I)=$E(A,1,450)
 ;
 D PROTGT
 C FLOUT:(DELETE) ; *** LEV 26/12
END Q
 ;
 ;
PROT(NM,VL) ;
 Q:'$G(SMSDEB)
 S @PROT@(FUNC,POST,NM)=VL
 Q
 ;
PROTGT ;
 Q:'$G(SMSDEB)
 M @PROT@("SMSGT")=@GL
 Q
GL ;
 S GL=$$GLCON
 Q
 ;
GLCON(STAM) ;
 Q $$^W4GL("W4SMSGT")_"(MYDVN,UR)"
 
 
 
 
 
 
 
 
 
 
 

W4SMSHOW
W4SMSHOW(STAM) ; [ 17.07.12 15:43 ] [
 I $L($G(%ARG("SMALLSHOW"))) Q %ARG("SMALLSHOW")
 Q $$GETP^%W1PRM("SMALLSHOW")

W4SMSSND
W4SMSSND ; [ 20.07.20 17:02 ] [ 09.08.16 20:10 ] [ 05.08.16 20:15 ] 
 ;
MMSMS(HZM,TEL) ;
 N (JB,%ARG,%REM,HZM,TEL)
 I $G(TEL)="" Q
 N I D TMP
 K @TMP
 ;
 N SH S SH=0
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 D STSMS($$CNISA^W4HZMST(HZM)_" k "_$$KOMA^W4HZMST(HZM)_" w "_$$DIRA^W4HZMST(HZM)_" c "_$$BAIT^W4HZMST(HZM)_" "_$$KTV^W4HZMST(HZM))
 ;
 N IR S IR=$$IR^W4HZMST(HZM)
 I IR?.P S IR=$$IR^W4L(NMB)
 D STSMS(IR)
 ;
 N MAZMIN S MAZMIN=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",5)
 I MAZMIN?.P S MAZMIN=$P($G(@$$^W4ORD@(HZM)),"\",2)
 D STSMS(MAZMIN_" "_NMB_" 'wl")
 ;
 S VT="",CODTS=$$CODTS^W4HZMST(HZM)
 I CODTS S VT=$G(@$$^W4GL("P1CODTS")@(CODTS))
 ;
 I $D(@$$^W4ORD@(HZM,"CB")) D
 .I $$MZM^W4HZMST(HZM) D STSMS($$MZM^W4HZMST(HZM)_" onefn")
 .I $$CHK^W4HZMST(HZM) D STSMS($$CHK^W4HZMST(HZM)_" wiy")
 .I $$CA^W4HZMST(HZM) D STSMS($$CA^W4HZMST(HZM)_" `""k")
 .I $$ASR^W4HZMST(HZM) D STSMS($$ASR^W4HZMST(HZM)_" dtwd")
 ;
 I '$D(@$$^W4ORD@(HZM,"CB")) D
 .I VT="" S VT="melyzl"
 .D STSMS($$TSHL^W4HZMST(HZM)_" "_VT)
 ;
 N HD S HD=$$^%L1DC($H,1)_"  "_$$T^%L1TIME($P($H,",",2))
 N SL,SL1 S SL1=""
 S SL=$$PSL^W4HZMST(HZM)
 S (MSD,MSD1)="" ; ???
 I $G(SL) S SL1=$$NM^W4SL(SL)
 S HD=HD_"||"_SL1_"|"_TEL_"|"
 S HD=HD_MSD1_"|"_MSD_"|"_HZM_"|"
 ;
 N MSG,MSG2LOG S MSG="",MSG2LOG=""
 ;
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S A=$G(^(N)) Q:$TR(A," ","")=""
 .S MSG=MSG_$$H2U^%L1FRM(A)_" "
 .S MSG2LOG=MSG2LOG_A_"|"
 ;
 S MSG=$$SPA^%L1FRM(MSG)
 S MSG=$$SP1^%L1FRM(MSG)
 S HD=HD_MSG2LOG
 ;;U 0 W MSG
 D SMSCALL(TEL,MSG)
 ;
 N GL D GL^W4SMSCON
 N A,N,RES S RES=-1
 N TAGRES S TAGRES="SendMessagesV2Result"
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
  .S A=$G(^(N))
  .I $$TAG(A,TAGRES) S RES=$$GET(A,TAGRES) Q
 S IND=$O(@$$^W4GL("W4SMS")@(99999999),-1)+1
 S @$$^W4GL("W4SMS")@(IND,"SND")=HD
 S @$$^W4GL("W4SMS")@(IND,"RCV")=RES
 ;
 K @TMP
 ;
ESMS Q RES
 ;
TMP S TMP=$$^W4MAIN("TMPSMS")
 Q
 ;
STSMS(ST) ;
 S SH=SH+1
 S @TMP@(SH)=ST
 Q
 ;
SMSCALL(CLPHONE,MSG);
 S USERNAME=$G(@$$^W4PRM@("SMS","USERNAME"))
 S PASSWD=$G(@$$^W4PRM@("SMS","PASSWORD"))
 S FRPHONE=$G(@$$^W4PRM@("SMS","FRPHONE"))
 D HEADER
 W "   <SendMessagesV2 xmlns=""http://www.smscenter.co.il/"">",!
 W "       <UserName>"_USERNAME_"</UserName>",!
 W "       <Password>"_PASSWD_"</Password>",!
 W "       <SenderName>"_FRPHONE_"</SenderName>",!
 W "       <SendToPhoneNumbers>"_CLPHONE_"</SendToPhoneNumbers>",!
 W "       <Message>"_MSG_"</Message>",!
 W "       <CCToEmail>"_""_"</CCToEmail>",!
 W "       <SMSOperation>Push</SMSOperation>",!
 ;;W "       <DeliveryReportURL>"_""_"</DeliveryReportURL>",!
 ;;W "       <DeliveryReportMask>All</DeliveryReportMask>",!
 W "       <DeliveryDelayInMinutes>0</DeliveryDelayInMinutes>",!
 W "       <ExpirationDelayInMinutes>5</ExpirationDelayInMinutes>",!
 W "       <MessageOption>Regular</MessageOption>",!
 W "       <Price>0</Price>",!
 W "   </SendMessagesV2>",!
 D FOOTER
 D ^W4SMSCON("SendMessagesV2",FL)
 Q
 ;
HEADER ;
 S FL=$$FLIN
 C FL:DELETE
 O FL:(WRITE:NEWVERSION:REWIND)
 U FL
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 W " <soap:Body>",!
 Q
 ;
FOOTER ;
 W " </soap:Body>",!
 W "</soap:Envelope>",!
 C FL
 Q
 ;
 ;
GET(A,TAG) ;
 N VL
 S VL=$P(A,"<"_TAG_">",2)
 S VL=$P(VL,"</"_TAG_">")
 Q VL
 ;
TAG(A,TAGNAME) ;
 I A[("<"_TAGNAME_">") Q 1
 Q 0
FLIN()
 Q "/tmp/smsmsg"_$J
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SMXYAD
W4SMXYAD ; [ 16.04.13 10:37 ] [ 17.07.12 08:43 ] [
 S COLX=$$COLXADD^W4PRM,COLY=$$COLYADD^W4PRM
 Q

W4SNDCLK
W4SNDCLK(JB,D1,D2) ; [ 12.07.26 17:08 ] [ 07.07.26 04:54 ] [ 23.10.23 03:22 ] 
 N (JB,%ARG,%REM,D1,D2)
 I '$G(D2) S D2=D1
 S GL=$$^W4GL("Z1")
 S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 S TEMP=$$^W4MAIN("TEMP") K @TEMP
 D PREP^W4LEVD(D1,D2) ;
 ;
 S DLM="*"
 S SUGOV="" F  S SUGOV=$O(@TEMP@(SUGOV)) Q:SUGOV=""  D
 .S OV="" F  S OV=$O(@TEMP@(SUGOV,OV)) Q:OV=""  D
 ..S I="" F  S I=$O(@TEMP@(SUGOV,OV,I)) Q:I=""  D
 ...S A=$G(^(I))
 ...S DAT=$P(A,"*")
 ...S DT=$$^%L1DC(DAT,3) Q:'DT
 ...S TEL=$$GET1^W4LEVPR(OV,"TEL")
 ...S NM=$$GET1^W4LEVPR(OV,"SHEM")
 ...S NM=$$RPL^%L1FRM(NM," ","%20")
 ...S ST=DT_DLM_OV_DLM_NM_DLM_TEL_DLM_$P(A,"*")_DLM_$P(A,"*",3)_DLM_$P(A,"*",4)_DLM_$P(A,"*",6)_"^"
 ...S STO=$G(@TMP@(DT,1))
 ...I $L(STO)<1000 S @TMP@(DT,1)=$G(@TMP@(DT,1))_ST
 ...E  S @TMP@(DT,2)=$G(@TMP@(DT,2))_ST
 ;
 S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MSD="" S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q:MSD=""
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MSDR="" S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 Q:MSDR=""
 ;
 M ^AA("W4SNDCLK","TMP")=@TMP
 ;
 S DT="" F  S DT=$O(@TMP@(DT)) Q:DT=""  D
 .S IND="" F  S IND=$O(@TMP@(DT,IND)) Q:IND=""  D
 ..S FDB=$G(^(IND))
 ..D SND(MSDR,MSD,DT,FDB) H 1 
 ;
 K @TEMP,@TMP
 Q  ;
 ;
 ;
SND(MSDR,MSD,DT,FDB) ;
 N FILEIN S FILEIN="tmpclk"_MSD_"_"_DT
 N URL S URL=$$OU^W3ASKURL_"w3ansclk.jsp?"
 N PRM S PRM="MSDR="_MSDR_"&MSD="_MSD_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 S FDB=$$CLWEB^%L1FRM(FDB)
 D SEND(FILEIN,URL,PRM,FDB)
 Q
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDCLS
W4SNDCLS(HZM,JB) ; [ 06.04.23 21:11 ] [ 11.10.21 12:35 ] [ 22.09.21 16:10 ] 
 N (JB,%ARG,%REM,HZM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(HZM)<1 Q
 ;;S ^AA("SNDCLS-US")=$$US(HZM)
 H (.1*$R(10))
 ;
 I $$MAILBIT^W4PRM,$$SHNHP^W4HZMST(HZM)<-.9!($$SHNH^W4HZMST(HZM)>.9),'$D(@$$^W4ORD@(HZM,"MAILHNH")) D
 .D ^W4MAILBT(HZM,"H",JB)
 .S @$$^W4ORD@(HZM,"MAILHNH")=$ZD($H,"DD.MM.YY  24:60")
 ;
 I $$US(HZM)=1 D
 .D SYNCORD^WMCHFUNC(HZM,JB)
 .N OK ;
 .N NMB S NMB=$$NMB^W4HZMST(HZM) I NMB K @$$WTR^WMCGL@(NMB)
 .S CLCOD=$$MYCHCLIENT^W4HZMST(HZM) Q:CLCOD=""
 .S OK=$$^WMCINF(HZM,CLCOD)
 .D MNGTBL^WMCHFUNC(HZM,"close",CLCOD)
 .S OK=$$^WMCINF(HZM,CLCOD)
 .I OK S @$$^W4ORD@(HZM,"MYCH","CLOSETBL")=$ZD($H,"DD.MM.YY  24:60")
 .I 'OK S @$$^W4ORD@(HZM,"MYCH","CLOSETBLERROR")=$ZD($H,"DD.MM.YY  24:60")
 .S N="" F  S N=$O(@$$CL2HZ^WMCGL@(N)) Q:N=""  D
 ..D CLSCL^WMCCLORD(N)
 .
 I $$US(HZM)=2 D ^WBSGINVC(HZM)
 ;
 I $G(@$$^W4PRM@("SKEEPER")) D SENDSURV^WSCPFUNC(HZM,JB)
 ;
 ;;I $$US(HZM)=3 D SETTLMTN(HZM) ; -- TLUSH MATANA
 Q
 ;
 ;
US(HZM) ;
 ;;I $D(@$$^W4ORD@(HZM,"MYCH")),'$D(@$$^W4ORD@(HZM,"MYCH","CLOSETBL")),$$TSHL^W4HZMST(HZM)'<0 Q 1
 I $D(@$$^W4ORD@(HZM,"BSL"))>9 Q 2
 I $$GCOUPIT^W4HZMST(HZM) Q 3
 Q 0
 ;
SETTLMTN(HZM) ;
 I $$DBLTL(HZM) Q
 D PUT^%W3DEB("W4SNDCLS-SETTLMTN","HZM=HZM")
 N TLM S TLM=$O(@$$^W4GL("W4TLMTN")@(9999999),-1)+1
 I $$GCOUPC^W4PRM S TLM=$$GCOUPTLM^W4HZMST(HZM) I 'TLM D
 .S TLM=$O(@$$^W4GL("W4TLMTN")@(9999999),-1)+1
 I TLM<0 S TLM=1
 N PAYERNAME,PAYERTEL,SUM,RCP
 S SUM=$$GCOUPSUM^W4HZMST(HZM) Q:'SUM
 S PAYERNAME=$$GCOUPPAYER^W4HZMST(HZM)
 S PAYERTEL=$$GCOUPTEL^W4HZMST(HZM)
 S RCP=$$GCOUPRCP^W4HZMST(HZM) Q:RCP=""&'$$TLDFLT^W4PRM
 D SETTLMTN1(HZM,TLM,SUM,PAYERNAME,PAYERTEL,RCP)
 ;
 I $G(HZMBIT) D
 .S $P(@$$^W4GL("W4TLMTN")@(TLM),"\",7)=HZMBIT
 .N TLMBIT S TLMBIT=$G(@$$^W4ORD@(HZMBIT,"GCOUP","TLM")) Q:'TLMBIT
 .S $P(@$$^W4GL("W4TLMTN")@(TLM),"\",8)=TLMBIT
 .S $P(@$$^W4GL("W4TLMTN")@(TLMBIT),"\",8)=-TLM
 Q
 ;
SETTLMTN1(HZM,TLM,SUM,PAYERNAME,PAYERTEL,RCP,ODEFFROM) ;
 D PUT^%W3DEB("W4SNDCLS-SETTLMTN1","HZM=HZM&TLM=TLM&SUM=SUM&PAYERNAME=PAYERNAME&PAYERTEL=PAYERTEL&RCP=RCP&ODEFFROM=ODEFFROM") ;
 ;
 S @$$^W4GL("W4TLMTN")@(TLM)=SUM_"\"_HZM_"\"_$$^W4DZ_"\"_PAYERNAME_"\"_PAYERTEL_"\"_RCP
 I $G(ODEFFROM) D
 .S $P(@$$^W4GL("W4TLMTN")@(TLM),"\",10)=ODEFFROM
 .S @$$^W4ORD@(HZM,"GCOUP","ODEFFROM")=ODEFFROM
 ;
 S @$$^W4ORD@(HZM,"GCOUP","TLM")=TLM
 Q
 ;
DBLTL(HZM) ; 
 N A,N,OK S OK=0 
 S N="" F  S N=$O(@$$^W4GL("W4TLMTN")@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N)) 
 .I $P(A,"\",2)=HZM,$P(A,"\")>0 S OK=1 Q 
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDDLV
W4SNDDLV(PRM) ; [ 30.06.25 12:19 ] [ 10.06.20 14:21 ] [ 10.07.19 13:22 ] 
 N (JB,%ARG,%REM,PRM)
 ;
 S MEDEP=$P(PRM,";")
 S ADDEP=$P(PRM,";",2)
 S MEKVZ=$P(PRM,";",3)
 S ADKVZ=$P(PRM,";",4)
 S MEPAR=$P(PRM,";",5)
 S ADPAR=$P(PRM,";",6)
 ;
 S MRK=+$G(@$$^W4PRM@("WEB","MSD")) Q:'MRK
 S GLBP=$$^W4GL("PARSEND")_"("""_MRK_""")"
 ;
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I MEDEP,$$DEP^W4P(N)<MEDEP Q
 .I ADDEP,$$DEP^W4P(N)>ADDEP Q
 .I MEKVZ,$$SUG^W4P(N)<MEKVZ Q
 .I ADKVZ,$$SUG^W4P(N)>ADKVZ Q
 .I MEPAR,N<MEPAR Q
 .I ADPAR,N>ADPAR Q
 .D VIB(GLBP,N)
 ;
 I MEPAR="",ADPAR="",MEKVZ="",ADKVZ="",MEDEP="",ADDEP="" S @GLBP="ALL"
 ;
 ;;S ^[$$^W3MAIN]P1WEB(MRK,"PARSEND","FL")="PARSEND"
 ;;S ^[$$^W3MAIN]P1WEB(MRK,"PARSEND","DOP")=$$^W4MYDVN
 ;;S ^[$$^W3MAIN]P1WEB(MRK,"PARSEND","GLOB")="^PARSEND"
 Q
 ;
 ;
VIB(GLBP,PAR) ;
 D
 .N N S N="" F  S N=$O(@$$^W4PRM@("PARSEND",N)) Q:N=""  D
 ..M @GLBP@(N,N)=@N
 ;
 N DEP,SUGP,N,SUGP,DEP Q:$G(PAR)=""
 S @GLBP@(PAR)=$G(@$$^W4GL("PAR")@(PAR))
 S @GLBP@(PAR,"PAR",PAR)=$G(@$$^W4GL("PAR")@(PAR))
 S $P(@GLBP@(PAR,"PAR",PAR),"**",11)=""  ;-- BLI MADPESET
 ;
 I $D(@$$^W4GL("P1EZA")@(PAR)) M @GLBP@(PAR,"P1EZA",PAR)=@$$^W4GL("P1EZA")@(PAR) D PICK($$^W4GL("P1EZA")_"(PAR)",GLBP,PAR)
 I $D(@$$^W4GL("P1EZR")@(PAR)) M @GLBP@(PAR,"P1EZR",PAR)=@$$^W4GL("P1EZR")@(PAR)
 I $D(@$$^W4GL("P1EZT")@(PAR)) M @GLBP@(PAR,"P1EZT",PAR)=@$$^W4GL("P1EZT")@(PAR) D PICK($$^W4GL("P1EZT")_"(PAR)",GLBP,PAR)
 I $D(@$$^W4GL("P1EZ")@(PAR)) M @GLBP@(PAR,"P1EZ",PAR)=@$$^W4GL("P1EZ")@(PAR)
 I $D(@$$^W4GL("P1EZK")@(PAR)) M @GLBP@(PAR,"P1EZK",PAR)=@$$^W4GL("P1EZK")@(PAR)
 I $D(@$$^W4GL("P1EZI")@(PAR)) M @GLBP@(PAR,"P1EZI",PAR)=@$$^W4GL("P1EZI")@(PAR) D PICK1(GLBP,PAR)
 I $D(@$$^W4GL("MHT")@(PAR)) M @GLBP@(PAR,"MHT",PAR)=@$$^W4GL("MHT")@(PAR)
 I $D(@$$^W4GL("L1TIP")@("MTK",PAR)) M @GLBP@(PAR,"L1TIP",PAR)=@$$^W4GL("L1TIP")@("MTK",PAR)
 I $D(@$$^W4GL("L1TIPE")@("MTK",PAR)) M @GLBP@(PAR,"L1TIPE",PAR)=@$$^W4GL("L1TIPE")@("MTK",PAR)
 I $D(@$$^W4GL("QNDEF")@(PAR)) M @GLBP@(PAR,"QNDEF",PAR)=@$$^W4GL("QNDEF")@(PAR)
 I $D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR))) M @GLBP@(PAR,"P1EZKI",+$$SUG^W4P(PAR))=@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR))
 I $D(@$$^W4GL("P1SETAI")@(PAR)) M @GLBP@(PAR,"P1SETAI",PAR)=@$$^W4GL("P1SETAI")@(PAR)
 I $D(@$$^W4GL("MHT")@(PAR)) M @GLBP@(PAR,"MHT",PAR)=@$$^W4GL("MHT")@(PAR)
 I $D(@$$^W4GL("P1PRTMDB")@(PAR)) M @GLBP@(PAR,"P1PRTMDB",PAR)=@$$^W4GL("P1PRTMDB")@(PAR)
 I $D(@$$^W4GL("PRTBH")@(PAR)) M @GLBP@(PAR,"PRTBH",PAR)=@$$^W4GL("PRTBH")@(PAR)
 I $$NL^W4PRTVW(PAR) M @GLBP@(PAR,"PRTNO",PAR)=@$$^W4GL("PRTNO")@(PAR)
 I '$$NL^W4PRTVW(PAR) S @GLBP@(PAR,"PRTNNO",PAR)=1
 ;
 S SUGP=$$SUG^W4P(PAR) I SUGP D
 .S DEP=$G(@$$^W4GL("PARSUG")@(SUGP,1))
 .M @GLBP@(PAR,"PARSUG",SUGP)=@$$^W4GL("PARSUG")@(SUGP)
 .I DEP M @GLBP@(PAR,"DEP",DEP)=@$$^W4GL("DEP")@(DEP)
 ;
 Q
 ;
 ;
PICK(GLOB,GLBP,PAR) ;
 N N,N1 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .I $E(N)'="A" S @GLBP@(PAR,"PAR",N)=$G(@$$^W4GL("PAR")@(N)) Q
 .N SET S SET=$E(N,2,22)
 .M @GLBP@(PAR,"P1SETA",SET)=@$$^W4GL("P1SETA")@(SET)
 .S N1="" F  S N1=$O(@$$^W4GL("P1SETA")@(SET,N1)) Q:N1=""  D
 ..S @GLBP@(PAR,"PAR",N1)=$G(@$$^W4GL("PAR")@(N1)) Q
 Q
PICK1(GLBP,PAR) N N S N="" F  S N=$O(@$$^W4GL("P1EZI")@(PAR,N)) Q:N=""  D
 .S @GLBP@(PAR,"PAR",N)=$G(@$$^W4GL("PAR")@(N))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDEMV
W4SNDEMV() ; [ 06.08.25 07:47 ] [ 06.09.24 05:04 ] [ 05.09.24 13:21 ] 
 I '$$EMV4 Q 1
 I '$$NOSND Q 1
 Q 0
 ;
EMV4() ;
 I $$EMV^W4PRM=4 Q 1
 Q 0
 ;
NOSND() ;
 I $$EMV4,'$$SND4,'$$OLDSND4 Q 1
 Q 0
 ;
SND4() ;
 I $$EMV4,$G(@$$^W4PRM@("SNDEMV4")),'$$OLDSND4 Q 1
 Q 0
 ;
OLDSND4() ; 
 I $$EMV4,$G(@$$^W4PRM@("OLDSND4")) Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 

W4SNDGAP
W4SNDGAP(DT1,DT2) ; [ 14.03.24 15:12 ] [ 31.07.23 15:18 ] [ 03.07.22 17:12 ] 
 F DT=DT1:1:DT2 D
 .D SNDGAP^W4ZACT(DT)
 Q
 ;
TV(DAT1,DAT2) ;
 S JB=1
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 D W4SNDGAP(DT1,DT2)
 Q
 
 
 
 

W4SNDINV
W4SNDINV(PRM) ; [ 17.06.26 10:59 ] [ 29.03.26 13:04 ] [ 03.11.21 17:25 ] 
 N LK,NOM,BODY,HD,TO,HRF0,HRF,PRM1,VD
 S LK=$P(PRM,";")
 I LK="" Q "NOTCUST"
 ;
 S NOM=$P(PRM,";",2)
 S VD=$P(PRM,";",3)
 ;
 I VD="" D
 .N LKH S LKH=$G(@$$^W4GL("KLIN")@("H",NOM))
 .S VD="HY"
 .I LKH["+" S VD="HB"
 ;
 S HRF=$P(PRM,";",4,100)
 S HRF0=$$CNWEB^%L1FRM(HRF)
 S HRF0=$P(HRF0,"?")
 S HRF0=$P(HRF0,"/",1,$L(HRF0,"/")-1)
 ;
 I 'NOM Q "NOTNUMBER"
 ;;I '$$IFHBMAIL^W4L(LK) Q "SENDINVNOTPOSSIBLE"
 ;
 S TO=$$SPA^%L1FRM($$EMAIL1^W4L(LK))
 I $$NOMAIL(TO) S TO=$$SPA^%L1FRM($$EMAIL^W4L(LK))
 I $$NOMAIL(TO),$$DELIS^W4PRM S TO=$$MYMAIL^W4PRM
 ;
 I $$NOMAIL(TO) Q "WRONGMAIL"
 S HD="Invoice "_+NOM
 ;
 I $$DELIS^W4PRM S HD="Delis Invoice "_+NOM
 ;
 N RES S RES=0
 I $$SF^W4PRM D  Q RES
 .N MAIL,MAIL1
 .S MAIL1=TO
 .S MAIL=$$SPA^%L1FRM($$EMAIL^W4L(LK))
 .I MAIL="",MAIL1'="" S MAIL=MAIL1
 .I MAIL'="",'$$NOMAIL(MAIL) S RES=$$SEND(MAIL)
 .I MAIL1="",MAIL'="" S MAIL1=MAIL
 .I MAIL1'="",MAIL1'=MAIL,'$$NOMAIL(MAIL1) S RES=$$SEND(MAIL1)
 .I MAIL'=""&$$NOMAIL(MAIL)!(MAIL1'=""&$$NOMAIL(MAIL1)) S RES="WRONGMAIL"
 ;
 Q $$SEND(TO)
 ;
 ;
SEND(TO)
 N PRM1
 S PRM1=NOM_";"_HD_";"_TO_";"_VD_";0;1;"_$G(@$$^W4PRM@("HOWSEND"),3)_";;"
 ;;S ^AA("W4SNDINV-SEND","PRM1")=PRM1
 Q $$EMAILCONT^W4EMAIL(PRM1)
 ;
 ;
NOMAIL(TO) ;
 I TO'["@" Q 1
 I TO'["." Q 1 
 Q 0 
 ;
HB(TX) ; 
 I '$D(TS0)!'$D(TS1) D ^%L1TS 
 ;;Q $TR($$INVH^%L1FRM(TX),TS0,TS1)
 Q $$H2U^%L1FRM($$INVH^%L1FRM(TX))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDLK
W4SNDLK(JB,DT) ; [ 07.07.26 06:04 ] [ 24.11.25 09:43 ] [ 06.08.24 15:40 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 S KLF=$$^W4GL("KLF")
 S TMPF=$$^W4MAIN("TMP") K @TMP
 ; 
 S HL1=$$^W4GL("P1HL1")
 S LK="" F  S LK=$O(@HL1@(LK)) Q:LK=""  D
 .S HZ="" F  S HZ=$O(@HL1@(LK,HZ)) Q:HZ=""  D
 ..S DTLK=$G(^(HZ)) I '$D(@$$^W4REF@(DT,HZ)) Q
 ..N N,HV S HV=0 S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  I N D
 ...N A S A=$G(^(N)) I $P(A,"*")=LK D
 ....S HV=HV+$P(A,"*",4)
 ..S @TMP@(DT,LK,HZ)=HV_"\"_DTLK
 ;
 ;
 N LK,LKR,I S FDBLK=DT_"^"
 N MSD S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 ;
 S LK="" F  S LK=$O(@TMP@(DT,LK)) Q:LK=""  D
 .S I=0 S (SUGL,SUGL1)=""
 .S LK1=$$LKH^W4L(LK)
 .S LKR=$G(@$$^W4GL("P1EZL")@(LK)) I LKR="" S LKR=LK
 .S LKR1=$$LKH^W4L(LKR)
 .I LKR S SUGL=$$SUGL^W4L(LKR),SUGL1=$$SUGL1^W4L(LKR)
 .I 'LKR S SUGL=$$SUGL^W4L(LK),SUGL1=$$SUGL1^W4L(LK)
 .
 .S HZ="" F  S HZ=$O(@TMP@(DT,LK,HZ)) Q:HZ=""  D
 ..S HV=$G(^(HZ))
 ..S MAZMIN=$$MAZMIN^W4HZMST(HZ)
 ..S MAZMIN=$$CLWEB^%L1FRM(MAZMIN)
 ..S TEL=$$TELB^W4HZMST(HZ)
 ..S FDBLK=FDBLK_LKR_"~"_$$CLWEB^%L1FRM(LKR1)_"~"_LK_"~"_$$CLWEB^%L1FRM(LK1)_"~"_HZ_"~"_HV_"~"_MAZMIN_"~"_TEL_"~"_SUGL_"~"_$$CLWEB^%L1FRM(SUGL1)_"^"
 ..I $L(FDBLK)>1500 D SNDLK(MSD,DT) S FDBLK=DT_"^" H 2
 ;
 D SNDLK(MSD,DT)
 K @TMP
 Q  ;
 ;
 ;
SNDLK(MSD,DT) ;
 S SH=$G(SH)+1
 N FILEINT S FILEINT="tmplk"_MSD_"_"_DT
 N URLT S URLT=$$OU^W3ASKURL_"w3anslk.jsp?"
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 N PRM S PRM="MSDR="_MSDR_"&MSD="_$G(@$$^W4PRM@("WEB","MSD"))_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))_"&SH="_SH
 D SEND(FILEINT,URLT,PRM,FDBLK)
 Q
 ;
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 ;
SETTMP(LK,HZ) ; 
 N N,HV S HV=0 S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  I N D
 .N A S A=$G(^(N)) I $P(A,"*")=LK D
 ..S HV=HV+$P(A,"*",4)
 S @TMP@(DT,LK,HZ)=HV
 Q
 
 
 
 
 
 
 
 
 
 

W4SNDMZB
W4SNDMZB(JB,DT) ; [ 07.07.26 06:04 ] [ 16.08.24 10:51 ] [ 14.08.24 03:45 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 N LK S FDBMZB=DT_"^"
 N MSD S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 ; 
 S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 .N OK S OK=0,MZB=0
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","MZ",N)) Q:N=""  D:N
 ..I $G(^(N))<0 S OK=1,MZB=MZB+$G(^(N))
 .Q:'OK
 .S SHAA=$P($$DATCB^W4HZMST(HZ),"  ",2)
 .S MAZMIN=$$MAZMIN^W4HZMST(HZ)
 .S TEL=$$TELB^W4HZMST(HZ)
 .S FDBMZB=FDBMZB_HZ_"~"_MZB_"~"_SHAA_"~"_$$CLWEB^%L1FRM(MAZMIN)_"~"_TEL_"^"
 .I $L(FDBMZB)>1500 D SNDMZB(MSD,DT,FDBMZB) S FDBMZB=DT_"^" H 1
 ;
 I $L(FDBMZB)>6 D SNDMZB(MSD,DT,FDBMZB)
 K @TMP
 Q  ;
 ;
 ;
SNDMZB(MSD,DT,FDBMZB) ;
 S SH=$G(SH)+1
 N FILEINT S FILEINT="tmpmzb"_MSD_"_"_DT
 N URLT S URLT=$$OU^W3ASKURL_"w3ansmzb.jsp?"
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 N PRM S PRM="MSDR="_MSDR_"&MSD="_$G(@$$^W4PRM@("WEB","MSD"))_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))_"&SH="_SH
 D SEND(FILEINT,URLT,PRM,FDBMZB)
 Q
 ;
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDOUT
W4SNDOUT(JB,METRH,ADTRH,REP) ; [ 20.12.18 19:31 ] [ 03.07.17 14:27 ] [ 03.05.17 14:32 ] 
 N (JB,%ARG,%REM,METRH,ADTRH,REP)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D PUT^%W1PRM("W4SNDOUT",0)
 D ^W4IN
 K @$$^W4MAIN("TREPK")
 K @$$^W4MAIN("TREP")
 K @$$VRM
 ;
 S PRTN=$$^%W1JB
 ;
 S MIUN(1)=1
 S MIUN(2)=6
 S MIUN(3)=7
 S MIUN(4)=2
 S MIUN(5)=3
 S MIUN(6)=4
 S MIUN(7)=8
 S MIUN(8)=5
 ;
 S SIK(1)=0
 S SIK(2)=0
 S SIK(3)=0
 S SIK(4)=1
 S SIK(5)=0
 S SIK(6)=0
 S SIK(7)=0
 S SIK(8)=0
 ;
 I $$REP D
 .S SIK(1)=1
 .S SIK(2)=1
 .S SIK(3)=1
 .S SIK(4)=1
 .S SIK(5)=1
 .S SIK(6)=1
 .S SIK=1
 ;
 S CT(1)=0
 S CT(2)=0
 S CT(3)=0
 S CT(4)=1
 S CT(5)=1
 S CT(6)=2
 S CT(7)=0
 S CT(8)=0
 ;
 S MAXMIUN=8
 S %REPN="W4SNOU"
 S @$$^%W1GLPRM@("REPN")=%REPN
 ;
 S %L1PC("FLD")="MRK*TRH1*SHAA*SUGS*DEP*SUGP*PAR*HZM*x1*x2"
 ;
 ;
 I '$$REP D
 .S %L1PC("SIK")="0*0"
 .S %W1PCP("EXP")=""
 ;
 I $$REP D
 .S %L1PC("SIK")="1*1"
 .S %L1PC("SIK0")="1*1*1*1*1*1"
 ;
 S GLOB1="^|M|VRM"
 S GLOB2="^|M|VRM(PRTN,DT,SHAA,SUGL,HZM,PAR)"
 S COLG=2
 S COLGM=2
 S SIKUM=""
 S ONLYSIK=0
 ;
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 ;
 S MEMRK=1
 S ADMRK=1
 S MESHAA=""
 S ADSHAA=99
 S MESUGS=""
 S ADSUGS=""
 S MEDEP=""
 S ADDEP=""
 S MESUGP=""
 S ADSUGP=""
 S MEPAR=-10
 S @$$^%W1GLPRM@("VAL","MEPAR")=MEPAR
 S ADPAR=99999999
 S @$$^%W1GLPRM@("VAL","ADPAR")=ADPAR
 S MEHZM=""
 S ADHZM=9999999
 S MESUGL=""
 S ADSUGL=999999
 ;
 S METRH1=20_$$^%L1DC(MEDATH,2)
 S @$$^%W1GLPRM@("VAL","METRH1")=METRH1
 S ADTRH1=20_$$^%L1DC(ADDATH,2)
 S @$$^%W1GLPRM@("VAL","ADTRH1")=ADTRH1
 ;
 D ^%W1PCP
 ;
 ;"ñðéó","ùí ñðéó","ñåâ ì÷åç","úàåø ñåâ ì÷åç","îçì÷ä","ùí îçì÷ä","÷áåöú ôøéèéí"
 ;"yí ÷áåöú ôøéèéí","äæîðä","YYYYMMDD","ìùòä","îñ' ôøéè","úàåø ôøéè","ëîåú","ñëåí",
 ;
 ;"0","","1","","1","áùø","3","ñìèéí","45168","20150611","13","29","ñìè ÷éñø òí òåy"
 ;"1","50"
 ;
 S SIK=0
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 S %W1PCEX("DLM")="*"
 ;
 D ^%W1PCEX(%REPN,0) ; --> FLCSV
 ;
 S HST="RSD"
 S SHVA=$E($G(@$$^W4PRM@("ASH","MASOF")),1,7)
 ;
 S FLCSV1=$P(FLCSV,"/",1,$L(FLCSV,"/")-1)
 S FLCSV1=FLCSV1_"/OI_"_HST_"_"_SHVA_"_"_ADTRH1
 ;
 ;;S ^DEBLEV("SNDOUT","FLCSV1")=FLCSV1
 ;
 I '$$REP D
 .ZSY "mv "_FLCSV_" "_FLCSV1
 .D TV^%L1FTP($G(ADR),FLCSV1)
 .S @$$^W4GL("W4SNDOUT")@(+$H,$P($H,",",2))=$ZSY
 ;
END D PUT^%W1PRM("W4SNDOUT",1) Q
 ;
 ;
HZM ;
 N DT,KF
 S %SCRN=HZSCR D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 S PSL=""
 ;
 I $D(@$$^W4ORD@(HZM,"TM")) D
 .S %L1SCREF("N")=2,%L1SCREF("S")=$G(^(HZM,"TM")) D ^W4SCREF
 ;
 I $$^W4MSL(NMB) D
 .S SUGL=+$$SUGL^W4L(NMB)
 .S SHAA=+$P(SHAA,":",1,2)
 ;
 I $$^W4MSD(NMB) D
 .S SHAA=+$P(ZMANK,"  ",2)
 .;;S SUGL=+$$SUGL^W4L(LKHN)
 .S SUGL=$S($L($G(LKHN))>3:+$$SUGL^W4L(LKHN),1:0)
 ;
 I SUGL<MESUGL!(SUGL>ADSUGL) S OK=0 Q
 ;
 N SHAA1 S SHAA1=SHAA
 I $$^W4SHAAZ,SHAA1<$$SHAAZ^W4PRM S SHAA1=SHAA+24
 I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 Q
 ;
 ;
TRH K @$$VRM
 N STN,CDN,HD ;
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM)) D
 .S OK=1 D HZM Q:OK'=1
 .S KF=1 ;; D KFHZM^W4SNOU1(HZM)
 .N I,HNHP F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N PARIT,CAMP,STP,STT S STP=^(I)
 ..S PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5)
 ..I $E(PARIT)'?1N Q
 ..I PARIT<MEPAR!(PARIT>ADPAR) Q
 ..D CR1(STP,I)
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ...I $D(^(N))<10 D  Q
 ....Q:N<MEPAR!(N>ADPAR)
 ....N COL S COL=$P(STT,"\",3)
 ....N SUGPZ S SUGPZ=$$SUG^W4PIZZA($P(STP,"\",3))
 ....I SUGPZ,'COL,$P(STT,"\",2,7)["\+\" S COL=$L(STT,"+\")-1*CAMP
 ....D CR2(N,COL,COL*$P(STT,"\",2),$P(STT,"\"))
 ...
 ...N N1,STT1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,I,N,N1)) Q:N1=""  S STT1=$G(^(N1)) D
 ....N COL S COL=$P(STT1,"\",3)
 ....N MH S MH=$P(STT1,"\",7)
 ....N NM
 ....I $L($P(STT1,"\")) D  Q
 .....S NM=$P(STT1,"\",2)
 .....D CR2($P(STT1,"\"),COL,COL*MH,NM)
 ....I $P(STT1,"\",4)="" Q
 ....S NM=$P(STT1,"\",5)
 ....D CR2($P(STT1,"\",4),COL,COL*MH,NM)
 .
 .I $G(HNH) S @$$VRM@(DT,SHAA,SUGL,HZM,-1)=1_"*"_-HNH_"*zillk dgpd"
 .I $G(DMSH) S @$$VRM@(DT,SHAA,SUGL,HZM,-2)=1_"*"_DMSH_"*zexiy inc"
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
DT S TRH=$$^%L1DC(DT,1),MRK=$$^%L1MRK
 S MRK1=$G(@$$^W4PL@("ESEK",1))
 S TRH1=20_$P(TRH,".",3)_$P(TRH,".",2)_$P(TRH,".",1)
 Q
 ;
HZM1 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:NMB=""  Q:$$^W4MSL(NMB)
 S SUGS=+$$SUGL^W4L(NMB)
 I SUGS<MESUGS!(SUGS>ADSUGS) S OK=0 Q
 Q
 ;
PAR S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 S PAR1=$$SHEM^W4P(PAR)
 S SUGP=$$SUG^W4P(PAR) I SUGP<MESUGP!(SUGP>ADSUGP) S OK=0 Q
 S SUGP1=$G(@$$^W4GL("PARSUG")@(+SUGP))
 S DEP=$$DEP^W4P(PAR) I DEP<MEDEP!(DEP>ADDEP) S OK=0 Q
 S DEP1=$$DEP1^W4P(PAR)
 Q
 ;
VRM(STAM) ;
 Q $$^W4MAIN("VRM")
 ;
CR1(A,I) ;
 N CDN,STN,HNP S STN=$G(@$$^W4ORD@(HZM,I+1))
 S CDN=$P(STN,"\"),HNP=0
 I $E(CDN)="-",CDN["%" S HNP=$P(STN,"\",7)
 ;
 N B,PAR,N,N1 S PAR=$P(A,"\"),PAR1=$P(A,"\",3) D PRI
 S B=$G(@$$VRM@(DT,SHAA,SUGL,HZM,PAR))
 S @$$VRM@(DT,SHAA,SUGL,HZM,PAR)=$P(B,"*")+$P(A,"\",5)_"*"_($P(B,"*",2)+$P(A,"\",7)-$P(A,"\",6)+HNP)_"*"_PAR1
 Q
 ;
CR2(PAR,C,S,PAR1) ;
 N N,N1
 D PRI
 N B S B=$G(@$$VRM@(DT,SHAA,SUGL,HZM,PAR))
 S @$$VRM@(DT,SHAA,SUGL,HZM,PAR)=($P(B,"*")+C)_"*"_($P(B,"*",2)+S)_"*"_PAR1
 Q
 ;
PRI N I F I="SHAA","PAR","SUGL" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
REP(STAM) ; 
 Q $G(REP)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDPOS
W4SNDPOS(JB,DT) ; [ 07.07.26 16:34 ] [ 06.07.26 15:57 ] [ 28.06.26 15:05 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 N LK S FDBPOS=DT_"^"
 N MSD S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 ; 
 S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 .N OK S OK=0
 .N A S A=$G(@$$^W4ORD@(HZ,"CB"))
 .S NMB=$$NMB^W4HZMST(HZ)
 .S DATCB=$$DATCB^W4HZMST(HZ)
 .S SHAA=$P(DATCB,"  ",2)
 .S DATCB=$P(DATCB,"  ")
 .N INDJB S INDJB=$O(@$$^W4ORD@(HZ,"JB",""))
 .S EMDA=""
 .I INDJB S EMDA=$P($G(@$$^W4ORD@(HZ,"JB",INDJB)),"\",2)
 .I 'EMDA S EMDA=$$POS^W4HZMST(HZ)
 .I $$PAPJ^W4PRM,EMDA'=80 Q
 .S MKBL=$$MKBL^W4HZMST(HZ)
 .S MKBL1="" I MKBL S MKBL1=$$^W4NAME(MKBL)
 .S TS=$$TSHL^W4HZMST(HZ)
 .N MZ,AV,CA,ASR
 .S MZ=$$MZM^W4HZMST(HZ)
 .S AV=$$CHK^W4HZMST(HZ)
 .S CA=$$CA^W4HZMST(HZ)
 .S ASR=$$ASR^W4HZMST(HZ)
 .S FDBPOS=FDBPOS_EMDA_"~"_NMB_"~"_HZ_"~"_DATCB_"~"_SHAA_"~"_MKBL1_"~"_TS_"~"_MZ_"~"_AV_"~"_CA_"~"_ASR_"^"
 .I $L(FDBPOS)>1500 D SNDPOS(MSD,DT,FDBPOS) S FDBPOS=DT_"^" H 1
 ;
 I $L(FDBPOS)>6 D SNDPOS(MSD,DT,FDBPOS)
 K @TMP
 Q  ;
 ;
 ;
SNDPOS(MSD,DT,FDBPOS) ;
 S SH=$G(SH)+1
 N FILEINT S FILEINT="tmppos"_MSD_"_"_DT
 N URLT S URLT=$$OU^W3ASKURL_"w3anspos.jsp?"
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 N PRM S PRM="MSDR="_MSDR_"&MSD="_$G(@$$^W4PRM@("WEB","MSD"))_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))_"&SH="_SH
 S FDBPOS=$$CLWEB^%L1FRM(FDBPOS)
 D SEND(FILEINT,URLT,PRM,FDBPOS)
 Q
 ;
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDPRP
W4SNDPRP(JB,DT) ; [ 01.08.23 12:05 ] [ 23.06.23 14:46 ] [ 18.05.23 06:42 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N TMP S TMP=$$^W4MAIN("TMPPC") K @TMP
 ;
 D CRTMPPC^W4TMPREP(DT,DT)
 ;
 S N="",I=0 F  S N=$O(@TMP@(N)) S I=I+1 Q:N=""
 S ATIME=$G(AVR(DT))
 S SHZ=I
 S FDBT=DT_";"_ATIME_"~"_SHZ
 ;
 N MSD S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 N FILEINT S FILEINT="timprep"_MSD_"_"_DT
 N URLT S URLT=$$OU^W3ASKURL_"w3ansprep.jsp?"
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 S PRM="MSDR="_MSDR_"&MSD="_$G(@$$^W4PRM@("WEB","MSD"))_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 ;
 D SEND(FILEINT,URLT,PRM,FDBT)
 K @TMP
 Q  ;
 ;
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDSL
W4SNDSL(JB,D1,D2) ; [ 29.05.25 11:22 ] [ 28.05.25 20:44 ] [ 23.10.23 03:22 ] 
 N (JB,%ARG,%REM,D1,D2)
 I '$G(D2) S D2=D1
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 F DT=D1:1:D2 D
 .S N="" F  S N=$O(@$$^W4REF@(DT,N)) Q:N=""  D
 ..I '$$HZM^W4MSL(N) Q
 ..S PSL=$$PSL^W4HZMST(N) Q:PSL<1
 ..S TS=$$TSHL^W4HZMST(N)
 ..S DMS=$$DMSH^W4HZMST(N)
 ..S TIP=$$TIP^W4HZMST(N)
 ..S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 ..S PSL1=$$CLWEB^%L1FRM(PSL1) 
 ..S TEL=$P($G(@$$^W4GL("P1SL")@(PSL,1)),"\",2)
 ..S @TMP@(DT,PSL,N)=DT_"*"_PSL_"*"_PSL1_"*"_TEL_"*"_N_"*"_TS_"*"_DMS_"*"_TIP
 ;
 S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MSD="" S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q:MSD=""
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MSDR="" S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 Q:MSDR=""
 ;
 S DT="" F  S DT=$O(@TMP@(DT)) Q:DT=""  D
 .S SL="",FDB="" F  S SL=$O(@TMP@(DT,SL)) Q:SL=""  D
 ..S HZ="",II=0,K=1 F  S HZ=$O(@TMP@(DT,SL,HZ)) Q:HZ=""  D
 ...S II=II+1 I II>50 D
 ....D SND(MSDR,MSD,DT,SL,FDB,K) H .5
 ....S II=0,FDB="",K=K+1
 ...
 ...S FDB=FDB_$G(@TMP@(DT,SL,HZ))_"^"
 ..D SND(MSDR,MSD,DT,SL,FDB,K) H .5 
 ;
 K @TMP
 Q  ;
 ;
 ;
SND(MSDR,MSD,DT,SL,FDB,K) ;
 N FILEIN S FILEIN="tmpsl"_MSD_"_"_DT_"_"_SL_"_"_K
 N URL S URL=$$OU^W3ASKURL_"w3anssl.jsp?"
 N PRM S PRM="MSDR="_MSDR_"&MSD="_MSD_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 D SEND(FILEIN,URL,PRM,FDB)
 Q
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDSM0
W4SNDSMS ; [ 14.06.23 19:21 ] [ 08.06.23 12:58 ] [ 05.06.23 13:42 ] 
 Q
 ;
 ;
MAIL2SMS(JB,HZ,PRM,HD,NOBR) ;
 N (JB,%ARG,%REM,HZ,PRM,HD,NOBR)
 S TO0=$$TELB^W4HZMST(HZ)
 I $E(TO0,1,2)'="05",$E($$PELE^W4HZMST(HZ),1,2)="05"!(TO0="0500000000") D
 .S TO0=$$PELE^W4HZMST(HZ)
 S TO0=$TR(TO0,"-","")
 ;;I $G(HD)="" S HD=TO0
 ;
 S TO=$G(@$$^W4PRM@("SMSMAIL"))
 S:$E(TO)'="@" TO="@"_TO 
 S TO=TO0_TO
 S TXT=$G(@$$^W4PRM@("SMSCONT"))
 I $$TAKEAWAY^W4HZMST(HZ) S TXT=$G(@$$^W4PRM@("SMSTAW"))
 D 
 .I '$G(NOBR) S TXT=$$RPL^%L1FRM(TXT,"_"," <BR> ") Q
 .S TXT=$$RPL^%L1FRM(TXT,"_","") Q
 ;
 ;;S TXT=$$RPL^%L1FRM(TXT,"!"," ! ")
 I $G(PRM)="" D
 .S PRM=$$NAME^W4HZMST(HZ)
 ;
 D CHPRM^%W1DICT
 ;
 Q:TO="" ;;!(HD="")
 D ^%L1TS
 D
 .I TXT["<E>" D  Q
 ..N TX,TX1 S TX="" S TX1=$P(TXT,"<E>",3)
 ..S TX=$TR($$INVH^%L1FRM(TX1),TS0,TS1)
 ..S TX=TX_$P(TXT,"<E>",2)
 ..S TX1=$P(TXT,"<E>",1)
 ..I $L(TX1) S TX=TX_$TR($$INVH^%L1FRM(TX1),TS0,TS1)
 ..S TXT=TX
 .
 .S TXT=$TR($$INVH^%L1FRM(TXT),TS0,TS1)
 ;
 S RES=$$^W4MAIL(TXT,HD,TO)
 Q
 ;
 ;
SMSTIME(JB,HZ,PRM,HD,NOBR,DLY) ;
 N START S START=$P($H,",",2)\60+DLY
 I START>(24*60) S START=START-(24*60)
CYC ; 
 N MIN S MIN=$P($H,",",2)\60
 I MIN'<START D MAIL2SMS(JB,HZ,PRM,HD,NOBR) Q
 H 10 G CYC
 
 
 
 
 
 
 

W4SNDSMS
W4SNDSMS ; [ 03.12.25 03:53 ] [ 28.10.25 08:56 ] [ 27.10.25 18:59 ] 
 Q
 ;
 ;
MAIL2SMS(JB,HZ,PRM,HD,NOBR) ;
 ;; -- PRM - PARAMETERD V STAND SOOBSHENIE
 N (JB,%ARG,%REM,HZ,PRM,HD,NOBR)
 S HD=$G(HD)
 N HZMLAK S HZMLAK=$$HZMLAK^W3HZMST(HZ)
 N WEBORD S WEBORD=+$E(HZMLAK,2,20)
 N NMBKSK S NMBKSK=$TR($$NMBKSK^W4KIOSKO,"-","")
 ;
 D
 .I WEBORD,$D(@$$^W4GL("W3ORDA")@(WEBORD)) D  Q
 ..S TO0=$$TELB^W3HZMST(WEBORD)
 ..I TO0=""!($E(TO0,1,2)'="05") S TO0=$$PELE^W3HZMST(WEBORD)
 ..S TO0=$TR(TO0,"-","")
 .
 .S TO0=$$TELB^W4HZMST(HZ)
 .I $E(TO0,1,2)'="05",$E($$PELE^W4HZMST(HZ),1,2)="05"!(TO0=NMBKSK) D
 ..N MAIL2SMS S MAIL2SMS=""
 ..S TO0=$$PELE^W4HZMST(HZ)
 .S TO0=$TR(TO0,"-","")
 ;
 I TO0=NMBKSK!(TO0=$$TELB^W4L(NMBKSK))!(TO0=$$PELE^W4L(NMBKSK))!(TO0="") Q
 ;
 S TXT=$G(@$$^W4PRM@("SMSCONT"))
 I $$TAKEAWAY^W4HZMST(HZ) S TXT=$G(@$$^W4PRM@("SMSTAW"))
 S TXT=$$SPA^%L1FRM(TXT)
 Q:'$L(TXT)
 ;
 I $$PAPJ^W4PRM D
 .N NM S NM=$$NAME^W4HZMST(HZ)
 .S TXT=$$TVTXT^%W1DICT(TXT,NM_"<>"_HZ)
 ;
 I $G(PRM)="" D
 .S PRM=$$NAME^W4HZMST(HZ)
 ;
 D SNDSMS(TO0,TXT,$G(PRM),$G(HD),$G(NOBR))
 Q
 ;
 ;
SNDSMS(TO0,TXT,PRM,HD,NOBR) ;
 ;; -- TO0 - TELEPHOME FOR SMS
 N (JB,%ARG,TO0,TXT,PRM,HD,NOBR)
 Q:$G(TO0)=""
 S HD=$G(HD),PRM=$G(PRM)
 S TO=$G(@$$^W4PRM@("SMSMAIL")) Q:TO=""
 S:$E(TO)'="@" TO="@"_TO 
 S TO=TO0_TO
 D 
 .I '$G(NOBR) S TXT=$$RPL^%L1FRM(TXT,"_",$C(10)) Q
 .S TXT=$$RPL^%L1FRM(TXT,"_","") Q
 ;
 D CHPRM^%W1DICT
 ;
 D ^%L1TS
 D
 .I TXT["<E>" D  Q
 ..N TX,TX1 S TX="" S TX1=$P(TXT,"<E>",3)
 ..S TX=$$HB(TX1) ;;$TR($$INVH^%L1FRM(TX1),TS0,TS1)
 ..S TX=TX_$P(TXT,"<E>",2)
 ..S TX1=$P(TXT,"<E>",1)
 ..I $L(TX1) S TX=TX_$$HB(TX1) ;;$TR($$INVH^%L1FRM(TX1),TS0,TS1)
 ..S TXT=TX
 .
 .S TXT=$$HB(TXT) ;;$TR($$INVH^%L1FRM(TXT),TS0,TS1)
 ;
 S RES=$$^W4MAIL(TXT,HD,TO)
 Q
 ;
 ;
SMSTIME(JB,HZ,PRM,HD,NOBR,DLY) ;
 N START S START=$P($H,",",2)\60+DLY
 I START>(24*60) S START=START-(24*60)
 S PRM=$G(PRM)
 S HD=$G(HD)
 S NOBR=$G(NOBR)
 S DLY=$G(DLY)
CYC ; 
 N MIN S MIN=$P($H,",",2)\60
 I MIN'<START D MAIL2SMS(JB,HZ,PRM,HD,NOBR) Q
 H 10 G CYC
 ;
 ; 
HB(TXT) ; 
 ;;Q $$INVH^%L1FRM(TXT)
 Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDSRV
W4SNDSRV(FUNC,JSP,ST,RESP,ER,TMOUT) ; [ 17.06.26 10:59 ] [ 26.09.25 09:11 ] [ 21.09.25 09:35 ] 
 N (JB,%ARG,%REM,FUNC,JSP,ST,RESP,ER,TMOUT)
 S ER=0
 K RESP S RESP=""
 I '$G(TMOUT) S TMOUT=35
 I JSP'[".",$L(JSP) S JSP=JSP_".jsp"
 D ^%L1TS
 S MYDVN=$$^W4MYDVN
 N FILEOU S FILEOU=$$FLOU
 I $$^%L1ZOS(2,FILEOU)
 N FILEIN
 S FILEIN=$$FLIN
 S ST=$$RPL^%L1FRM(ST," ","%20")
 ;
 ;--- FORM-E ZAPROSA
 O FILEIN:(NEWVERSION:REWIND)
 S SRVADR="http://"_$$SRVADR_"/mumps-examples/jsp/"
 S URL=SRVADR_JSP_"?"
 S ST=$$RPL^%L1FRM(ST," ","%20")
 S PRM="MSDR="_$$MSDR_"&MSD="_$$MSD_"&PSW="_$$PSW_"&FUNC="_FUNC_"&FDB="_ST
 ;
 U FILEIN W "url="_URL_PRM
 C FILEIN
 ;
 S CMD="curl -s -m "_TMOUT
 ;;S CMD=CMD_" -w ""HTTP_CODE:%{http_code}"""
 S CMD=CMD_" -K "_FILEIN
 S CMD=CMD_" -o "_FILEOU
 ;;S ^AA("W4SNDSRV","CMD")=CMD
 ZSY CMD
 I $ZSY S ER=-$ZSY G END
 ;
 I $$EXIST^%L1ZOS(FILEOU) D
 .O FILEOU:(REWIND:READONLY)
 .F  U FILEOU R A Q:$ZEOF  D
 ..S RESP=RESP_$$RPL^%L1FRM(A,"%20"," ")_$C(9)
 .C FILEOU
 ;
END ; 
 ;;S ^AA("W4SNDSRV","CMD")=CMD
 ;;S ^AA("W4SNDSRV","RESP")=$E($G(RESP),1,3000)
 ;;S ^AA("W4SNDSRV","ER")=ER
 ;
 ZSY "rm "_FILEOU
 Q
 ;
 ;
SRVADR(STAM) ;
 N A S A=$G(@$$^W4PRM@("WEB","SRVADR"))
 I A="",$L($G(@$$^W4PRM@("IT4WEB","SRVADR"))) S A=^("SRVADR")
 Q A 
 ;
MSDR(STAM) ; 
 N A S A=$G(@$$^W4PRM@("WEB","MSDR"))
 I A="",$L($G(@$$^W4PRM@("IT4WEB","MSDR"))) S A=^("MSDR")
 Q A 
 ;
MSD(STAM) ; 
 N A S A=$G(@$$^W4PRM@("WEB","MSD"))
 I A="",$L($G(@$$^W4PRM@("IT4WEB","MSD"))) S A=^("MSD")
 Q A 
 ;
PSW(STAM) ;
 N A S A=$G(@$$^W4PRM@("WEB","PSW"))
 I A="",$L($G(@$$^W4PRM@("IT4WEB","PSW"))) S A=^("PSW")
 Q A 
 ;
FLIN(STAM) ; 
 Q "/tmp/tmpsnd"_+$H_"_"_$$^W4MYDVN_"_"_$P($H,",",2)
 ;
FLOU(STAM) ; 
 Q $$FLIN_".ou"
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDSTA
W4SNDSTA(JB,DT) ; [ 06.07.26 14:37 ] [ 17.06.26 10:51 ] [ 16.02.26 14:49 ] 
 N (NOMTB,JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB) S JB=$$^%W1SsID
 ;
 D ^W4IN
TV ; 
 S MYDVN=$$^W4MYDVN
 D DEFGL
 ;
 S FILEINS=$$INDBS^W3ASKPTH
 ;
 S URLS=$$OU^W3ASKURL_"w3ansstat.jsp"
 ;
 S PRM="MSD="_$G(@$$^W4PRM@("WEB","MSD"))_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MSDR="" S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 S PRM=PRM_"&MSDR="_MSDR
 ;
 S FDBS=""
 ;
 D ^W4LEVSPR
 ;
 S TMPREP=$$^W4MAIN("TMPREP")
 S N="",I=0,TM=0 F  S N=$O(@TMPREP@("G",N)) Q:N=""  D
 .S A=$G(^(N)),I=I+1
 .S TM=TM+$$MIN($P(A,"\",5))
 ;
 S TIMEPREP=$$TIMEPREP(P1DZ)
 ;
 K MT
 K QNORD,QNORDS,SSUM,SSUMS,SSOAD,SSOADS
 S (QNORD,QNORDS,SSUM,SSUMS,SSOAD,SSOADS)=0,(AVRG,AVRGS,SAVRG)=""
 ;
 S (QNSP,TMSP,QNSP0,QNSP17,TMSP17,QNSP30,TMSP30,QNRD5,TMRD5,SINGLE,SDLV)=0
 ;
 S HZ="" F  S HZ=$O(@P1H@(DT,HZ)) Q:HZ=""  D FRM(HZ)
 S TIMEPREP=$$TIMEPREP(DT)
 ; 
 S FIRSTHZ=$O(@P1H@(DT,"")),FIRSTTIME=""
 I FIRSTHZ S FIRSTTIME=$P($G(@$$^W4ORD@(FIRSTHZ)),"~",4)
 ;       1       2        3             4                  5
 S FDBS=DT_"~"_$H_"~"_QNORD_"~"_$G(QNORD("D"))_"~"_$G(QNORD("R"))
 ;                 6           7                 8
 S FDBS=FDBS_"~"_SSUM_"~"_$G(SSUM("D"))_"~"_$G(SSUM("R"))
 ;                 9            10                 11             12
 S FDBS=FDBS_"~"_SSOAD_"~"_$G(SSOAD("D"))_"~"_$G(SSOAD("R"))_"~"_AVRG
 ;                 13             14                 15
 S FDBS=FDBS_"~"_QNORDS_"~"_$G(QNORDS("D"))_"~"_$G(QNORDS("R"))
 ;                16           17                  18
 S FDBS=FDBS_"~"_SSUMS_"~"_$G(SSUMS("D"))_"~"_$G(SSUMS("R"))
 ;                 19            20                  21              22
 S FDBS=FDBS_"~"_SSOADS_"~"_$G(SSOADS("D"))_"~"_$G(SSOADS("R"))_"~"_AVRGS
 ;                23       24    25       26
 S FDBS=FDBS_"~"_SAVRG_"~"_I_"~"_TM_"~"_FIRSTTIME
 ;
 I $$PAPJ^W4PRM D
 .K MHZ D ^W4BONTM
 .;                  27              28              29             30
 .S FDBS=FDBS_"~"_$G(MHZ(3))_"~"_$G(MHZ(8))_"~"_$G(MHZ(100))_"~"_$G(MHZA)
 .;                    31               32              33                34
 .S FDBS=FDBS_"~"_$G(MHZM(20))_"~"_$G(MHZM(30))_"~"_$G(MHZM(60))_"~"_$G(MHZM(1000))
 .
 .S HZSG=$P($G(MHZM),"\")
 .S HZOP=$P($G(MHOP),"\",2)
 .S SHL=$P($G(MHZM),"\",3)
 .;                35       36      37
 .S FDBS=FDBS_"~"_HZOP_"~"_HZSG_"~"_SHL
 .
 .S $P(FDBS,"~",40)=TIMEPREP
 .;
 .S $P(FDBS,"~",41)=QNSP
 .S $P(FDBS,"~",42)=TMSP
 .S $P(FDBS,"~",43)=QNSP30
 .S $P(FDBS,"~",44)=TMSP30
 .S $P(FDBS,"~",45)=QNSP17
 .S $P(FDBS,"~",46)=TMSP17
 .S $P(FDBS,"~",47)=QNRD5
 .S $P(FDBS,"~",48)=$G(SINGLE)
 .S $P(FDBS,"~",49)=QNSP0
 .S $P(FDBS,"~",50)=SDLV
 .;
 .N N,J S N="",J=0 F  S N=$O(MT(N)) Q:N=""  D
 ..S J=J+1
 ..S $P(FDBS,"~",55+J)=N_"^"_$G(MT(N,"QR"))_"^"_$G(MT(N,"SR"))_"^"_$G(MT(N,"QD"))_"^"_$G(MT(N,"SD"))
 ;
 S FDBS=FDBS_"~"
 ;
 S FDBS=$$FDB(FDBS)
 S ^AA("W3ASKFDN","FDBS")=FDBS
 ;
 D SEND(FILEINS,URLS,PRM,FDBS)
 ;
 Q
 ;
 ;
DEFGL ;
 S ORD=$$^W4ORD
 S P1H=$$^W4REF
 S P1DEL=$$^W4GL("P1DEL")
 Q
 ;
FDB(FDB) ; 
 Q $$FDB^W3ASKFD1(FDB)
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 ;
 ;
FRM(N) ;
 I $$DEL^W4DEL(N) Q
 I $$DELIS^W4PRM,$$^W4HZMH(N) Q
 I $$DELIS^W4PRM,$$^W4PIZUL(N) Q
 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(N)
 N SOAD S SOAD=$$SOAD^W4HZMST(N)
 N HZMSL,HZMSD
 S HZMSL=$$HZM^W4MSL(N)
 S HZMSD='HZMSL
 ;
 N PRTAW S PRTAW=0
 I $$TAKEAWAY^W4HZMST(N) S PRTAW=1
 ;
 N ST S ST=$$TIME^W4TIMDLV(N)
 ;
 S DIF=$P(ST,"*",5)
 N SND S SND=$P(ST,"*")
 N RDTM S RDTM=$P(ST,"*",2)
 N DLVTIM S DLVTIM=$P(ST,"*",4)
 N PCTIME S PCTIME=$P(ST,"*",6)
 ;
 I PCTIME,$G(DT),PCTIME'<DT D
 .N SHAA S SHAA=+$$T^%L1TIME(PCTIME)
 .I PCTIME'>DT,SHAA<$$SHAAZ^W4PRM Q
 .I SHAA<6 S SHAA=SHAA+24
 .;
 .I $$HZM^W4MSL(N) D
 ..S MT(SHAA,"QD")=$G(MT(SHAA,"QD"))+1
 ..S MT(SHAA,"SD")=$G(MT(SHAA,"SD"))+TSHL
 .;
 .I $$HZM^W4MSD(N) D
 ..S MT(SHAA,"QR")=$G(MT(SHAA,"QR"))+1
 ..S MT(SHAA,"SR")=$G(MT(SHAA,"SR"))+TSHL
 ;
 ;
 I SND,'PRTAW D
 .S QNSP=QNSP+1
 .S TMSP=TMSP+DIF
 .I $G(@$$^W4ORD@(N,"SINGLE")) S SINGLE=$G(SINGLE)+1
 .
 .I SND,'DIF S QNSP0=QNSP0+1
 .
 .I SND'>17 D
 ..S QNSP17=QNSP17+1
 ..S TMSP17=TMSP17+SND
 .
 .I DIF,DIF'>30 D
 ..S QNSP30=QNSP30+1
 ..S TMSP30=TMSP30+DIF
 .
 .I RDTM,RDTM'>5 D
 ..S QNRD5=QNRD5+1
 ..S TMRD5=TMRD5+RDTM
 ;
 I '$$^W4CLOSE(N) D
 .S QNORD=QNORD+1
 .
 .I HZMSL S QNORD("D")=$G(QNORD("D"))+1
 .I HZMSD S QNORD("R")=$G(QNORD("R"))+1
 .I HZMSL,PRTAW S QNORD("TAW")=$G(QNORD("TAW"))+1
 .S SSUM=SSUM+TSHL
 .I HZMSL S SSUM("D")=$G(SSUM("D"))+TSHL
 .I HZMSD S SSUM("R")=$G(SSUM("R"))+TSHL
 .I HZMSL,PRTAW S SSUM("TAW")=$G(SSUM("TAW"))+TSHL
 .S SSOAD=SSOAD+SOAD
 .I HZMSL S SSOAD("D")=$G(SSOAD("D"))+SOAD
 .I HZMSD S SSOAD("R")=$G(SSOAD("R"))+SOAD
 .I HZMSL,PRTAW S SSOAD("TAW")=$G(SSOAD("TAW"))+SOAD
 .
 .S SDLV=SDLV+DLVTIM
 ;
 I $$^W4CLOSE(N) D
 .S QNORDS=QNORDS+1
 .S SSUMS=SSUMS+TSHL
 .S SSOADS=SSOADS+SOAD
 .I HZMSL S QNORDS("D")=$G(QNORDS("D"))+1
 .I HZMSD S QNORDS("R")=$G(QNORDS("R"))+1
 .I HZMSL S SSUMS("D")=$G(SSUMS("D"))+TSHL
 .I HZMSD S SSUMS("R")=$G(SSUMS("R"))+TSHL
 .I HZMSL S SSOADS("D")=$G(SSOADS("D"))+SOAD
 .I HZMSD S SSOADS("R")=$G(SSOADS("R"))+SOAD
 ;
 I SSOAD S AVRG=$J(SSUM/SSOAD,3,3)
 I SSOADS S AVRGS=$J(SSUMS/SSOADS,3,3)
 I (SSOAD+SSOADS) S SAVRG=$J((SSUM+SSUMS)/(SSOAD+SSOADS),3,3)
 ;
 Q
 ;
 ;
MIN(SHAA) ;
 Q SHAA*60+$P(SHAA,":",2)
 ;
TIMEPREP(DT) ; 
 N D1,D2,TMS,REST S (D1,D2)=DT
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 S REST=""
 D FRM^W4TMPREP
 N I,STM S I=0,STM=0,TMS=0
 N N S N="" F  S N=$O(@TMP@(DT,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S TM=$P(A,"\",4)
 .I TM>0,TM<50 S I=I+1,STM=STM+TM
 I I>0 S TMS=$J(STM/I,2,2)
 Q I_"^"_STM_"^"_TMS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDSTG
W4SNDSTG(HZ) ; [ 06.09.26 13:35 ] [ 04.09.26 06:58 ] [ 03.09.26 16:11 ] 
 N (JB,%ARG,HZ,RES,RESP)
 ;
 S GLSNDPR=$$^W4GL("W4STGPR")
 S HZM=HZ
 D PROT("HZM",HZ)
 ;
 S RES="NOK~998~ ERROR",RESP="",TRID=""
 S SUGT=$$CODTS^W4HZMST(HZ)
 I SUGT=3 S TRID=$$TRIDCA^W4HZMST(HZ)
 ;;I SUGT=1 S TRID=$$TRIDMZ^W4HZMST(HZ)
 I TRID="" Q
 S ITRA=$$ITRA^W4HZMST(HZ)
 ;
 S TS=$$TSHL^W4HZMST(HZ)
 S DT=+$H
 S DEV=$$^W4MYDVN
 S H2=$P($H,",",2)
 S FLTO="/tmp/tmpstg"_DT_"-"_H2_"-"_DEV_"-"_HZ
 ;;S STA="000" G STA ; ***
 ;
 ;;S URL="https://gateway21.pelecard.biz/services/CompleteDebitByUid"
 ;;S TERM=5794507012 
 ;;S USER="zachibasarimAPI"
 ;;S PSW="W73xNjBa"
 F I="URL","TERM","USER","PSW" D
 .S @I=$G(@$$^W4PRM@("CLICK",I))
 ;
 N TSAG S TSAG=$J(TS,2,2)*100
 C FLTO:(DELETE)
 O FLTO:(REWIND:WRITE) U FLTO
  W "{",!
   W """terminalNumber"": """_TERM_""",",!
   W """user"": """_USER_""",",!
   W """password"": """_PSW_""",",! 
   W """Uid"": """_TRID_""",",!
   W """NewAmount"": "_TSAG_",",!
   W """NewParamX"": """",",!
   W """debitTrxId"": """",",!
   W """NewTerminalNumber"": """" ",!
  W "}",! 
 C FLTO
 ;
 D PROT("FL",FLTO)
 ;
 S Timeout=45
 S Type="application/json"
 S Token=""
 ;
 S RES=$$^W1CURL(URL,FLTO,.RESP,Timeout,Type,Token)
 ;
 D PROT("RES",RES)
 D PROT("RESP",.RESP)
 ;
 N STA S STA=$$GET($G(RESP),"StatusCode")
STA I STA="0"!(STA="000") D
 .S @$$^W4ORD@(HZ,"STAGE")=3 
 .S RES="OK"
 ;
 N STA S STA=$$GET($G(RESP),"StatusCode")
 I STA D
 .N ERMSG
 .S ERMSG=$$GET($G(RESP),"ErrorMessage")
 .S ^AA("W4SNDSTG","ERMSG0")=ERMSG
 .D
 ..I '$$HB(ERMSG) S ERMSG=$$FUNC^%UCASE(ERMSG) Q
 ..S ERMSG=$$INVH^%L1FRM($$U2D^%L1CNV(ERMSG))
 .S RES="NOK~"_STA_"~"_ERMSG
 Q
 ;
 ;
GET(TX,KEY) ;
 N VL S VL=""
 I TX[KEY D
 .S VL=$P(TX,KEY,2)
 .S VL=$P(VL,",")
 .S VL=$P(VL,"]")
 .S VL=$P(VL,"}")
 .I VL[":" S VL=$P(VL,":",2)
 .I VL["""" S VL=$P(VL,"""",2)
 Q VL
 ;
HB(TX) ; 
 N OK S OK=0
 N J F J=1:1:$L(TX) I $A(TX,J)>127 S OK=1
 Q OK
 ;
 ; 
PROT(IND,VL) ; 
 D PROT^W4ZICSND(IND,VL) 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDTFK
W4SNDTFK(JB,DT) ; [ 12.07.26 18:54 ] [ 05.09.24 03:13 ] [ 08.04.24 13:57 ] 
 N (JB,%ARG,%REM,DT)
 S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MSD="" S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q:MSD=""
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MSDR="" S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 Q:MSDR=""
 ;
 D ^W4OVTFKA(DT,DT,1)
 ;
 S FDB=MSDR_"~"_DT_"~"_MSD
 ;
 S N=1 F  S N=$O(@TMP@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S FDB=FDB_"^"_$$CLWEB^%L1FRM($TR(A,"\","~"))
 ;
 ;;W "FDBLEN="_$L(FDB),!
 D SND(MSDR,MSD,DT,FDB)
 ;
 K @TMP
 Q  ;
 ;
 ;
SND(MSDR,MSD,DT,FDB) ;
 N FILEIN S FILEIN="tmpclk"_MSD_"_"_DT
 N URL S URL=$$OU^W3ASKURL_"w3anstfk.jsp?"
 N PRM S PRM="MSDR="_MSDR_"&MSD="_MSD_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 D SEND(FILEIN,URL,PRM,FDB)
 Q
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDTIM
W4SNDTIM(JB,DT) ; [ 18.09.25 05:41 ] [ 16.09.25 15:51 ] [ 23.06.23 14:46 ] 
 N (JB,%ARG,%REM,DT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 .I '$$HZM^W4MSL(HZ) Q
 .I $$PSL^W4HZMST(HZ)<1 Q
 .I $$IR^W4HZMST(HZ)="TAKEAWAY" Q
 .I $$DEL^W4DEL(HZ) Q
 .N IR S IR=$$IR^W4HZMST(HZ) Q:IR=""
 .S TIME=$$TIME^W4TIMDLV(HZ)
 .S @TMP@(DT,IR,HZ)=TIME
 ;
 N IR,I S FDBT=DT_";"
 S (SPREP,SSND,SDLV,SLEAV,SALL)=0
 S IR="" F  S IR=$O(@TMP@(DT,IR)) Q:IR=""  D
 .S I=0,STIME=0
 .S HZ="" F  S HZ=$O(@TMP@(DT,IR,HZ)) Q:HZ=""  D
 ..S TIME=$G(^(HZ))
 ..S I=I+1
 ..S SPREP=SPREP+$P(TIME,"*",2)
 ..S SSND=SSND+$P(TIME,"*",3)
 ..S SDLV=SDLV+$P(TIME,"*",4)
 ..S SLEAV=SLEAV+$P(TIME,"*",1)
 ..;;S SALL=SALL+$P(TIME,"*",5)
 ..S STIME=SLEAV_"*"_SPREP_"*"_SSND_"*"_SDLV
 .
 .I I D
 ..N ST S ST=""
 ..N J F J=1:1:4 D
 ...S ST=ST_$J($P(STIME,"*",J)/I,1,1)_"*"
 ..S ST=$E(ST,1,$L(ST)-1)
 ..S FDBT=FDBT_$$CLWEB^%L1FRM(IR)_"~"_ST_"~"_I_";"
 ;
 N MSD S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 N FILEINT S FILEINT="timdlv"_MSD_"_"_DT
 N URLT S URLT=$$OU^W3ASKURL_"w3anstim.jsp?"
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 S PRM="MSDR="_MSDR_"&MSD="_$G(@$$^W4PRM@("WEB","MSD"))_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 ;
 D SEND(FILEINT,URLT,PRM,FDBT)
 K @TMP
 Q  ;
 ;
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDY
W4SNDY ; [ 09.04.21 17:06 ] [ 05.07.20 17:27 ] [ 02.07.20 13:22 ] 
GET ;
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S @$$^W4PRM@("SNDY")=PRM
 S @$$^W4PRM@("SNDY","BRANCH")=BRANCH
 S @$$^W4PRM@("SNDY","REST")=REST
 S @$$^W4PRM@("SNDY","PW")=PW
 Q 1
 ;
END Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNDZIC
W4SNDZIC(JB,D1,D2) ; [ 29.09.26 10:24 ] [ 07.07.26 04:56 ] [ 28.05.26 05:39 ] 
 N (JB,%ARG,%REM,D1,D2)
 I '$G(D2) S D2=D1
 ;
 S GL=$$^W4GL("W4ZICRES")
 S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MSD="" S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q:MSD=""
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I MSDR="" S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 Q:MSDR=""
 ;
 S FDB=""
 F DT=D1:1:D2 D
 .S FDB=DT_"~"
 .S HZ="" F  S HZ=$O(@GL@(DT,HZ)) Q:HZ=""  D
 ..S SUGT="" F  S SUGT=$O(@GL@(DT,HZ,SUGT)) Q:SUGT=""  D
 ...S NOM="" F  S NOM=$O(@GL@(DT,HZ,SUGT,NOM)) Q:NOM=""  D
 ....S A=$G(^(NOM))
 ....S FDB=FDB_HZ_"*"_SUGT_"*"_NOM_"*"_$TR(A,"\","*")_"^"
 ....D SND(MSDR,MSD,DT,FDB) H 1
 ;
 Q  ;
 ;
 ;
SND(MSDR,MSD,DT,FDB) ;
 N FILEIN S FILEIN="tmpsndzic"_MSD_"_"_DT_"_"_$P($H,",",2)
 N URL S URL=$$OU^W3ASKURL_"w3anszic.jsp?"
 N PRM S PRM="MSDR="_MSDR_"&MSD="_MSD_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 S FDB=$$CLWEB^%L1FRM(FDB)
 D SEND(FILEIN,URL,PRM,FDB)
 Q
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNIFIM
W4SNIFIM ; [ 30.06.25 12:19 ] [ 31.10.17 08:11 ] [ 29.10.17 07:58 ] 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<br>",!
 W "<span style=""color:red;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT("CHOICEBRANCH")
 W "</span><br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"" width=""90%"" "
 W "align=""center"" style=""font-size:"_$$^W3FSZ(16)_""">",!
 ;
 N A,N S N="" F  S N=$O(@$$^W4GL("W4DLVWEB")@(N)) Q:N=""  D
 .W "<tr style=""height:40px"" onClick=""Send('"_N_"')"">"
 . S A=$G(^(N))
 . W "<td align=""center"" style=""background-color:white;border:ridge 3px white;cursor:pointer"">"
 .  W $$H2U^%L1FRM(A)
 . W "</td>"
 .W "</tr>",!
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td align=""center"">" D ^W4BCK W "</td></tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SEND(SNIF) ;
 N (JB,%ARG,SNIF)
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "ER:-1:ORDERNUMBERISWRONG"
 S MSDTO=SNIF
 K ^[$$^W3MAIN]HZ2WEB(MSDTO,HZM)
 M ^[$$^W3MAIN]HZ2WEB(MSDTO,HZM)=@$$^W4ORD@(HZM)
 K ^[$$^W3MAIN]HZ2WEB(MSDTO,HZM,"ST")
 S ASM=$$HZMLAK^W4HZMST(HZM)
 S:$E(ASM)="W" ASM=+$E(ASM,2,20)
 S ^[$$^W3MAIN]HZ2WEB(MSDTO,HZM,"WEB")=ASM_";;;"_HZM
 S ^[$$^W3MAIN]HZ2WEB(MSDTO,HZM,"MSDTO")=SNIF
 ;;S ^[$$^W3MAIN]P1WEB(MSDTO,"HZ2WEB","GLOB")="^HZ2WEB"
 ;;S ^[$$^W3MAIN]P1WEB(MSDTO,"HZ2WEB","FL")="HZ2WEB_"_MSDTO_"-"_HZM
 ;
 D PUT^W4TMPANS("DEL","EXIT2KITCHEN?",0)
 D PUT^W4TMPANS("DEL","CAUSEDEL","0::"_SNIF_" sipql dxard")
 D PUT^W4TMPANS("DEL","WHOSUBMIT",$$DOP^W4NAME($G(@$$^W4PRM@("PSW1"))))
 ;
 S CLOSED=$$CLOSE^W4HZMST(HZM)
 I CLOSED S RES=$$TV^W4HZBIT(0)
 I 'CLOSED S RES=$$TV^W4HZDEL
 Q RES
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNOU
W4SNOU ; [ 20.12.18 19:31 ] [ 03.07.17 14:27 ] [ 03.05.17 14:32 ] 
 N (JB,%ARG,%REM,METRH,ADTRH)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PUT^%W1PRM("W4SNDOUT",0)
 D ^W4IN
 K @$$^W4MAIN("TREPK")
 K @$$^W4MAIN("TREP")
 K @$$VRM
 ;
 S PRTN=$$^%W1JB
 ;
 S MIUN(1)=1
 S MIUN(2)=6
 S MIUN(3)=7
 S MIUN(4)=2
 S MIUN(5)=3
 S MIUN(6)=4
 S MIUN(7)=8
 S MIUN(8)=5
 ;
 S SIK(1)=0
 S SIK(2)=0
 S SIK(3)=0
 S SIK(4)=1
 S SIK(5)=0
 S SIK(6)=0
 S SIK(7)=0
 S SIK(8)=0
 ;
 S CT(1)=0
 S CT(2)=0
 S CT(3)=0
 S CT(4)=1
 S CT(5)=1
 S CT(6)=2
 S CT(7)=0
 S CT(8)=0
 ;
 S MAXMIUN=8
 S %REPN="W4SNOU"
 ;
 S %L1PC("FLD")="MRK*MRK1*TRH1*SHAA*SUGS*DEP*SUGP*PAR*HZM*x1*x2"
 S %L1PC("SIK")="0*0"
 ;
 S GLOB1="^|M|VRM"
 S GLOB2="^|M|VRM(PRTN,DT,SHAA,SUGL,HZM,PAR)"
 S COLG=2
 S COLGM=2
 S SIKUM=""
 S ONLYSIK=0
 ;
 S MEDATH=$$^%L1DC(METRH,3)
 S ADDATH=$$^%L1DC(ADTRH,3)
 ;
 S MEMRK=1
 S ADMRK=1
 S MESHAA=""
 S ADSHAA=99
 S MESUGS=""
 S ADSUGS=""
 S MEDEP=""
 S ADDEP=""
 S MESUGP=""
 S ADSUGP=""
 S MEPAR=""
 S ADPAR=99999999
 S MEHZM=""
 S ADHZM=9999999
 S MESUGL=""
 S ADSUGL=999999
 ;
 S %W1PCP("EXP")=""
 D ^%W1PCP
 ;
 ;"ñðéó","ùí ñðéó","ñåâ ì÷åç","úàåø ñåâ ì÷åç","îçì÷ä","ùí îçì÷ä","÷áåöú ôøéèéí"
 ;"yí ÷áåöú ôøéèéí","äæîðä","YYYYMMDD","ìùòä","îñ' ôøéè","úàåø ôøéè","ëîåú","ñëåí",
 ;
 ;"0","","1","","1","áùø","3","ñìèéí","45168","20150611","13","29","ñìè ÷éñø òí òåy"
 ;"1","50"
 ;
 S SIK=0
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 S %W1PCEX("DLM")="*"
 D ^%W1PCEX(%REPN,0) ; --> FLCSV
 ;
 S HST="RSD"
 S SHVA=$E($G(@$$^W4PRM@("ASH","MASOF")),1,7)
 ;
 S FLCSV1=$P(FLCSV,"/",1,$L(FLCSV,"/")-1)
 S ADTRH1=20_$$^%L1DC(ADDATH,2)
 S FLCSV1=FLCSV1_"/OI_"_HST_"_"_SHVA_"_"_ADTRH1
 ;
 ZSY "mv "_FLCSV_" "_FLCSV1
 ;
 ;;S ADR=$G(@$$^W4PRM@("SNDOUT","IP"))
 ;;I ADR=""!($TR(ADR,".","")'?1N.N)!($L(ADR,".")<4) D PUT^%W1PRM("SNDOUTERR","IPADDRESSISWRONG") G END
 ;
 ;;S ^DEBLEV("SNDOUT","ADR")=ADR
 ;;S ^DEBLEV("SNDOUT","FLCSV1")=FLCSV1
 D TV^%L1FTP($G(ADR),FLCSV1)
 S @$$^W4GL("W4SNDOUT")@(+$H,$P($H,",",2))=$ZSY
 ;
END D PUT^%W1PRM("W4SNDOUT",1) Q
 ;
 ;
HZM ;
 N DT,KF
 S %SCRN=HZSCR D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 S PSL=""
 ;
 I $D(@$$^W4ORD@(HZM,"TM")) D
 .S %L1SCREF("N")=2,%L1SCREF("S")=$G(^(HZM,"TM")) D ^W4SCREF
 ;
 I $$^W4MSL(NMB) D
 .S SUGL=+$$SUGL^W4L(NMB)
 .S SHAA=+$P(SHAA,":",1,2)
 ;
 I $$^W4MSD(NMB)<4 D
 .S SHAA=+$P(ZMANK,"  ",2)
 .S SUGL=+$$SUGL^W4L(LKHN)
 ;
 I SUGL<MESUGL!(SUGL>ADSUGL) S OK=0 Q
 ;
 N SHAA1 S SHAA1=SHAA
 I $$^W4SHAAZ,SHAA1<$$SHAAZ^W4PRM S SHAA1=SHAA+24
 I SHAA1<MESHAA!(SHAA1'<ADSHAA) S OK=0 Q
 Q
 ;
 ;
TRH K @$$VRM
 N STN,CDN,HD ;
 F DT=MEDATH:1:ADDATH S HZM=MEHZM-1 F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  Q:HZM>ADHZM  I $D(@$$^W4ORD@(HZM)) D
 .S OK=1 D HZM Q:OK'=1
 .S KF=1 ;; D KFHZM^W4SNOU1(HZM)
 .N I,HNHP F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N PARIT,CAMP,STP,STT S STP=^(I)
 ..S PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5)
 ..I $E(PARIT)'?1N Q
 ..I PARIT<MEPAR!(PARIT>ADPAR) Q
 ..D CR1(STP,I)
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ...I $D(^(N))<10 D  Q
 ....Q:N<MEPAR!(N>ADPAR)
 ....N COL S COL=$P(STT,"\",3)
 ....N SUGPZ S SUGPZ=$$SUG^W4PIZZA($P(STP,"\",3))
 ....I SUGPZ,'COL S COL=$L(STT,"+\")-1*CAMP
 ....D CR2(N,COL,COL*$P(STT,"\",2),$P(STT,"\"))
 ...
 ...N N1,STT1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,I,N,N1)) Q:N1=""  S STT1=$G(^(N1)) D
 ....N COL S COL=$P(STT1,"\",3)
 ....N MH S MH=$P(STT1,"\",7)
 ....N NM
 ....I $L($P(STT1,"\")) D  Q
 .....S NM=$P(STT1,"\",2)
 .....D CR2($P(STT1,"\"),COL,COL*MH,NM)
 ....I $P(STT1,"\",4)="" Q
 ....S NM=$P(STT1,"\",5)
 ....D CR2($P(STT1,"\",4),COL,COL*MH,NM)
 .
 .S @$$VRM@(DT,SHAA,SUGL,HZM,-1)=1_"*"_-HNH_"*zillk dgpd"
 .S @$$VRM@(DT,SHAA,SUGL,HZM,-2)=1_"*"_DMSH_"*zexiy inc"
 ;
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
DT S TRH=$$^%L1DC(DT,1),MRK=$$^%L1MRK
 S MRK1=$G(@$$^W4PL@("ESEK",1))
 S TRH1=20_$P(TRH,".",3)_$P(TRH,".",2)_$P(TRH,".",1)
 Q
 ;
HZM1 N NMB S NMB=$$NMB^W4HZMST(HZM) Q:NMB=""  Q:$$^W4MSL(NMB)
 S SUGS=+$$SUGL^W4L(NMB)
 I SUGS<MESUGS!(SUGS>ADSUGS) S OK=0 Q
 Q
 ;
PAR S x1=$P($G(@GLOB),"*")
 S x2=$P($G(@GLOB),"*",2)
 S PAR1=$$SHEM^W4P(PAR)
 S SUGP=$$SUG^W4P(PAR) I SUGP<MESUGP!(SUGP>ADSUGP) S OK=0 Q
 S SUGP1=$G(@$$^W4GL("PARSUG")@(+SUGP))
 S DEP=$$DEP^W4P(PAR) I DEP<MEDEP!(DEP>ADDEP) S OK=0 Q
 S DEP1=$$DEP1^W4P(PAR)
 Q
 ;
VRM(STAM) ;
 Q $$^W4MAIN("VRM")
 ;
CR1(A,I) ;
 N CDN,STN,HNP S STN=$G(@$$^W4ORD@(HZM,I+1))
 S CDN=$P(STN,"\"),HNP=0
 I $E(CDN)="-",CDN["%" S HNP=$P(STN,"\",7)
 ;
 N B,PAR,N,N1 S PAR=$P(A,"\"),PAR1=$P(A,"\",3) D PRI
 S B=$G(@$$VRM@(DT,SHAA,SUGL,HZM,PAR))
 S @$$VRM@(DT,SHAA,SUGL,HZM,PAR)=$P(B,"*")+$P(A,"\",5)_"*"_($P(B,"*",2)+$P(A,"\",7)-$P(A,"\",6)+HNP)_"*"_PAR1
 Q
 ;
CR2(PAR,C,S,PAR1) ;
 N N,N1
 D PRI
 N B S B=$G(@$$VRM@(DT,SHAA,SUGL,HZM,PAR))
 S @$$VRM@(DT,SHAA,SUGL,HZM,PAR)=($P(B,"*")+C)_"*"_($P(B,"*",2)+S)_"*"_PAR1
 Q
 ;
PRI N I F I="SHAA","PAR","SUGL" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNOU1
W4SNOU1(JB,METRH,ADTRH,REP) ; [ 19.03.25 17:26 ] [ 06.11.16 15:17 ] [ 24.08.16 13:08 ] 
 N (JB,%ARG,%REM,METRH,ADTRH,REP)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PUT^%W1PRM("W4SNOU1",0)
 D ^W4IN
 K @$$VRM
 ;
 D IN ; --> MRKSPK,MRKSPK1,ADR,USR,PORT,PSW
 I $G(MRKSPK)="" G END
 ;
 ;
 ;"ñðéó","ùí ñðéó","ñåâ ì÷åç","úàåø ñåâ ì÷åç","îçì÷ä","ùí îçì÷ä","÷áåöú ôøéèéí"
 ;"yí ÷áåöú ôøéèéí","äæîðä","YYYYMMDD","ìùòä","îñ' ôøéè","úàåø ôøéè","ëîåú","ñëåí",
 ;
 ;"0","","1","","1","áùø","3","ñìèéí","45168","20150611","13","29","ñìè ÷éñø òí òåy"
 ;"1","50"
 ;
 S MEDT=$$^%L1DC(METRH,3)
 S ADDT=$$^%L1DC(ADTRH,3)
 ;
 D GETDATA(MEDT,ADDT) ; ^P1HZ --> VRM
 ;
 S TMP=$$^W4MAIN("TMP")
 S VRM=$$VRM
 ;
 S DLM=","
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D  ; VRM --> TMP
 .S I=0 K @TMP
 .S SHAA="" F  S SHAA=$O(@VRM@(DT,SHAA)) Q:SHAA=""  D
 ..S HZM="" F  S HZM=$O(@VRM@(DT,SHAA,HZM)) Q:HZM=""  D
 ...S SUGP="" F  S SUGP=$O(@VRM@(DT,SHAA,HZM,SUGP)) Q:SUGP=""  D
 ....S PAR="" F  S PAR=$O(@VRM@(DT,SHAA,HZM,SUGP,PAR)) Q:PAR=""  D
 .....S A=$G(^(PAR))
 .....S SUGP1=$$SUG1^W4P(PAR)
 .....S PAR1=$$SHEM^W4P(PAR)
 .....S LKHN=$$LKHN^W4HZMST(HZM)
 .....S LKHN1="" I LKHN S LKHN1=$$LKH^W4L(LKHN)
 .....S QN=$P(A,"*")
 .....S SUM=$P(A,"*",2)
 .....S PRC=0 I QN S PRC=$J(SUM/QN,2,2)
 .....S ST=$$RKV(MRKSPK,"N")_DLM_$$RKV(MRKSPK1,"H",15)_DLM
 .....S ST=ST_$$RKV(PAR,"E",10)_DLM_$$RKV(PAR,"E",15)_DLM
 .....S ST=ST_$$RKV(PAR1,"H",15)_DLM_$$RKV(SUGP1,"H",15)_DLM
 .....S ST=ST_$$RKV(QN,"N",2)_DLM_$$RKV(SUM,"N",2)_DLM ; -- *** LEV 14/01/16 WAS PRC
 .....S ST=ST_$$RKV(DT,"D")_DLM_$$RKV(SHAA,"T")_DLM_$TR($J(HZM,15)," ",0)_DLM
 .....S ST=ST_$$RKV(LKHN1,"H",15)_DLM_$$RKV($TR(LKHN,"-",""),"N")
 .....S I=I+1,@TMP@(I)=ST
 .;
 .D  ;  TMP --> FLEX
 ..N I
 ..D FLEX(DT)
 ..D OPEN^%W1FREPX(FLEX)
 ..F I=1:1 Q:'$D(@TMP@(I))  D
 ...U FLEX W $G(^(I)),!
 ..C FLEX
 .
 .K @TMP ;
 .
 .I '$$REP D
 ..D SEND(DT)
 ..N HR S HR=$ZD($H,"24")-1 S:HR<0 HR=23
 ..S @$$^W4GL("W4SNOU1")@(DT,$ZD($H,"DDMMYY"),HR)=$ZSY_"\"_$ZD($H,"DD.MM.YY  24:60")
 ;
END D PUT^%W1PRM("W4SNOU1",1)
 K @$$VRM
 Q
 ;
 ;
KFHZM(HZM) ;
 N DTK,SUM S SUM=0
 S DTK=$$^%L1DC($$DATK^W4HZMST(HZM),3)
 N N S N=""  F  S N=$O(@$$^W4ORD@(HZM,N)) Q:N=""  I N D
 .S SUM=SUM+$P($G(^(N)),"\",7)
 S KF=1
 N TS S TS=$$TSHL^W4HZMST(HZM)
 N TIP S TIP=$$TIP^W4HZMST(HZM)
 I SUM S KF=TS+$S($$^W4TIPPD(DTK):TIP,1:0)/SUM
 Q
 ;
 ;
GETDATA(MEDATH,ADDATH) K @$$VRM
 N HZM
 F DT=MEDATH:1:ADDATH S HZM="" F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  I $D(@$$^W4ORD@(HZM)) D
 .S OK=1 D KFHZM(HZM) Q:OK'=1
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N PARIT,CAMP,STP,STT S STP=^(I)
 ..S PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5)
 ..Q:$E(PARIT)'?1N  D CR1(STP,I)
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ...I $D(^(N))<10 D  Q
 ....N COL S COL=$P(STT,"\",3)
 ....N SUGPZ S SUGPZ=$$SUG^W4PIZZA($P(STP,"\",3))
 ....I SUGPZ,'COL,$P(STT,"\",2,7)["\+\" S COL=$L(STT,"+\")-1*CAMP
 ....D CR2(N,COL,COL*$P(STT,"\",2),$P(STT,"\"))
 ...
 ...N N1,STT1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,I,N,N1)) Q:N1=""  S STT1=$G(^(N1)) D
 ....N COL S COL=$P(STT1,"\",3)
 ....N MH S MH=$P(STT1,"\",7)
 ....N NM
 ....I $L($P(STT1,"\")) D  Q
 .....S NM=$P(STT1,"\",2)
 .....D CR2($P(STT1,"\"),COL,COL*MH,NM)
 ....I $P(STT1,"\",4)="" Q
 ....S NM=$P(STT1,"\",5)
 ....D CR2($P(STT1,"\",4),COL,COL*MH,NM)
 Q
 ;
 ;
VRM(STAM) ;
 Q $$^W4MAIN("VRM")
 ;
CR1(A,I) ;
 N CDN,STN,HNP S STN=$G(@$$^W4ORD@(HZM,I+1))
 S CDN=$P(STN,"\"),HNP=0
 I $E(CDN)="-",CDN["%" S HNP=$P(STN,"\",7)
 N B,PAR,N,N1,SUGP,SHAA S PAR=$P(A,"\"),PAR1=$P(A,"\",3) D PRI
 S SUGP=+$$SUG^W4P(PAR)
 S SHAA=$$SHAA(HZM)
 D PRI
 S B=$G(@$$VRM@(DT,+SHAA,HZM,SUGP,PAR))
 S @$$VRM@(DT,+SHAA,HZM,SUGP,PAR)=$P(B,"*")+$P(A,"\",5)_"*"_(($P(B,"*",2)+$P(A,"\",7)-$P(A,"\",6)+HNP)*KF)_"*"_PAR1
 Q
 ;
CR2(PAR,C,S,PAR1) ;
 N N,N1
 N SUGP S SUGP=+$$SUG^W4P(PAR)
 D PRI
 N B S B=$G(@$$VRM@(DT,+SHAA,HZM,SUGP,PAR))
 S @$$VRM@(DT,+SHAA,HZM,SUGP,PAR)=($P(B,"*")+C)_"*"_(($P(B,"*",2)+S)*KF)_"*"_PAR1
 Q
 ;
SHAA(HZM) ;
 N SHAA S SHAA=$$SHAA^W4HZMST(HZM)
 I SHAA="" S SHAA=$P($$DATCB^W4HZMST(HZM),"  ",2)
 Q SHAA
 ;
PRI N I F I="SHAA","PAR","SUGP" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
RKV(VL,FMT,DL)
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S VL=$$SPA^%L1FRM(VL)
 ;
 I FMT="D" D
 .I +VL?5N S VL=$ZD(VL,"DD.MM.YY")
 .I VL?.N1".".N1".".N S VL=$TR(VL,".","/")
 .S DD=$TR($J($P(VL,"/"),2)," ",0)
 .S MM=$TR($J($P(VL,"/",2),2)," ",0)
 .S YY=$P(VL,"/",3) I $L(YY)=2 S YY=$S(YY<30:20_YY,1:19_YY)
 .S VL=DD_"/"_MM_"/"_YY
 ;
 I FMT="T" D
 .S VL=$P(VL,":",1,2)
 ;
 I FMT="H" D
 .I $G(DL) S VL=$$HBR^%L1FRM(VL,DL)
 .S VL=$TR($$INVH^%L1FRM(VL),TS0,TS1)
 ;
 I FMT="E" D
 .I $G(DL) S VL=$$ENG^%L1FRM(VL,DL)
 ;
 I FMT="N" D
 .I $G(DL) S VL=$J(VL,1,DL)
 ;
 D
 .I VL?9N.N S VL="'"_VL_"'" Q
 .I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N S VL="'"_VL_"'" Q
 .S VL=""""_VL_""""
 ;
 Q VL
 ;
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 N VL,RES,I
 S RES=1
 F I="SPK","SPK1","IP","USR","PORT","PSW" D  Q:RES'=1
 .S VL=$G(@I) I VL="" S RES="CODEMUSTBEFILLED;"_I Q
 .I I="SPK1" S VL=$$INVH^%L1FRM(VL)
 .S @$$^W4PRM@("W4SNOU1",I)=VL
 ;
 S @$$^W4PRM@("W4SNOU1")=$G(SNOU1)
 Q RES
 ;
 ;
GETPRM ;
 N I
 S SNOU1=$G(@$$^W4PRM@("W4SNOU1"))
 F I="SPK","SPK1","IP","USR","PORT","PSW" D
 .S @I=$G(@$$^W4PRM@("W4SNOU1",I))
 Q
 ;
REP(STAM) ; 
 Q $G(REP) 
 ;
IN ; ;
 S MRKSPK=$G(@$$^W4PRM@("W4SNOU1","SPK"))
 S MRKSPK1=$G(@$$^W4PRM@("W4SNOU1","SPK1"))
 S ADR=$G(@$$^W4PRM@("W4SNOU1","IP"))
 S USR=$G(@$$^W4PRM@("W4SNOU1","USR"))
 S PORT=$G(@$$^W4PRM@("W4SNOU1","PORT"))
 S PSW=$G(@$$^W4PRM@("W4SNOU1","PSW"))
 Q
 ;
FLEX(DT) ;
 S FLEX=$ZDIR_"1/tmp/"_MRKSPK_"_"_$ZD(DT,"DD")_"_"_$ZD(DT,"MM")_"_20"_$ZD(DT,"YY")_".csv"
 Q
 ;
SEND(DT) ; 
 N FLEX D IN
 D FLEX(DT)
 ZSY "/usr/bin/recode ISO_8859-8..UTF-8 "_FLEX
 D TV1^%L1FTP(FLEX,ADR,USR,PSW,PORT) ;
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SNOU10
W4SNOU1(JB,METRH,ADTRH) ; [ 09.03.16 20:08 ] [ 14.01.16 13:30 ] [ 23.11.15 17:12 ] 
 N (JB,%ARG,%REM,METRH,ADTRH)
 ;;N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D PUT^%W1PRM("W4SNOU1",0)
 D ^W4IN
 K @$$VRM
 ;
 S MRKSPK=$G(@$$^W4PRM@("W4SNOU1","SPK")) Q:MRKSPK=""
 S MRKSPK1=$G(@$$^W4PRM@("W4SNOU1","SPK1"))
 S ADR=$G(@$$^W4PRM@("W4SNOU1","IP"))
 S USR=$G(@$$^W4PRM@("W4SNOU1","USR"))
 S PORT=$G(@$$^W4PRM@("W4SNOU1","PORT"))
 S PSW=$G(@$$^W4PRM@("W4SNOU1","PSW"))
 ;
 ;
 ;"ñðéó","ùí ñðéó","ñåâ ì÷åç","úàåø ñåâ ì÷åç","îçì÷ä","ùí îçì÷ä","÷áåöú ôøéèéí"
 ;"yí ÷áåöú ôøéèéí","äæîðä","YYYYMMDD","ìùòä","îñ' ôøéè","úàåø ôøéè","ëîåú","ñëåí",
 ;
 ;"0","","1","","1","áùø","3","ñìèéí","45168","20150611","13","29","ñìè ÷éñø òí òåy"
 ;"1","50"
 ;
 S MEDT=$$^%L1DC(METRH,3)
 S ADDT=$$^%L1DC(ADTRH,3)
 ;
 D GETDATA(MEDT,ADDT) ; --> VRM
 ;
 S TMP=$$^W4MAIN("TMP")
 S VRM=$$VRM
 ;
 S DLM=","
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
 .S I=0 K @TMP
 .S SHAA="" F  S SHAA=$O(@VRM@(DT,SHAA)) Q:SHAA=""  D
 ..S HZM="" F  S HZM=$O(@VRM@(DT,SHAA,HZM)) Q:HZM=""  D
 ...S SUGP="" F  S SUGP=$O(@VRM@(DT,SHAA,HZM,SUGP)) Q:SUGP=""  D
 ....S PAR="" F  S PAR=$O(@VRM@(DT,SHAA,HZM,SUGP,PAR)) Q:PAR=""  D
 .....S A=$G(^(PAR))
 .....S SUGP1=$$SUG1^W4P(PAR)
 .....S PAR1=$$SHEM^W4P(PAR)
 .....S LKHN=$$LKHN^W4HZMST(HZM)
 .....S LKHN1="" I LKHN S LKHN1=$$LKH^W4L(LKHN)
 .....S QN=$P(A,"*")
 .....S SUM=$P(A,"*",2)
 .....S PRC=0 I QN S PRC=$J(SUM/QN,2,2)
 .....S ST=$$RKV(MRKSPK,"N")_DLM_$$RKV(MRKSPK1,"H",15)_DLM
 .....S ST=ST_$$RKV(PAR,"E",10)_DLM_$$RKV(PAR,"E",15)_DLM
 .....S ST=ST_$$RKV(PAR1,"H",15)_DLM_$$RKV(SUGP1,"H",15)_DLM
 .....S ST=ST_$$RKV(QN,"N",2)_DLM_$$RKV(SUM,"N",2)_DLM ; -- LEV 14/01/16 WAS PRC
 .....S ST=ST_$$RKV(DT,"D")_DLM_$$RKV(SHAA,"T")_DLM_$TR($J(HZM,15)," ",0)_DLM
 .....S ST=ST_$$RKV(LKHN1,"H",15)_DLM_$$RKV($TR(LKHN,"-",""),"N")
 .....S I=I+1,@TMP@(I)=ST
 .;
 .;;S FLEX=$$DIRL^%W1FREPX_MRKSPK_"_"_$ZD(DT,"DD")_"_"_$ZD(DT,"MM")_"_20"_$ZD(DT,"YY")_".csv"
 .S FLEX="/usr/local/mumps/1/tmp/"_MRKSPK_"_"_$ZD(DT,"DD")_"_"_$ZD(DT,"MM")_"_20"_$ZD(DT,"YY")_".csv"
 .D OPEN^%W1FREPX(FLEX)
 .;
 .F I=1:1 Q:'$D(@TMP@(I))  D
 ..U FLEX W $G(^(I)),!
 .C FLEX
 .ZSY "/usr/bin/recode ISO_8859-8..UTF-8 "_FLEX
 .D TV1^%L1FTP(FLEX,ADR,USR,PSW,PORT) ;
 .
 .K @TMP ;
 .N HR S HR=$ZD($H,"24")-1 S:HR<0 HR=23
 .S @$$^W4GL("W4SNOU1")@(DT,$ZD($H,"DDMMYY"),HR)=$ZSY_"\"_$ZD($H,"DD.MM.YY  24:60")
 ;
END D PUT^%W1PRM("W4SNOU1",1)
 K @$$VRM
 Q
 ;
 ;
HZM ;
 N DT
 ;;S %SCRN=HZSCR D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 Q
 ;
 ;
GETDATA(MEDATH,ADDATH) K @$$VRM
 N HZM
 F DT=MEDATH:1:ADDATH S HZM="" F  S HZM=$O(@$$^W4REF@(DT,HZM)) Q:HZM=""  I $D(@$$^W4ORD@(HZM)) D
 .S OK=1 D HZM Q:OK'=1
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N PARIT,CAMP,STP,STT S STP=^(I)
 ..S PARIT=$P(STP,"\"),CAMP=$P(STP,"\",5)
 ..Q:$E(PARIT)=":"  D CR1(STP)
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  S STT=$G(^(N)) D
 ...I $D(^(N))<10 D  Q
 ....N COL S COL=$P(STT,"\",3)
 ....I '$$NOPIZA^W4P(PARIT) S COL=$L(STT,"+\")-1*CAMP
 ....D CR2(N,COL,COL*$P(STT,"\",2),$P(STT,"\"))
 ...
 ...N N1,STT1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,I,N,N1)) Q:N1=""  S STT1=$G(^(N1)) D
 ....N COL S COL=$P(STT1,"\",3)
 ....N MH S MH=$P(STT1,"\",7)
 ....N NM
 ....I $L($P(STT1,"\")) D  Q
 .....S NM=$P(STT1,"\",2)
 .....D CR2($P(STT1,"\"),COL,COL*MH,NM)
 ....I $P(STT1,"\",4)="" Q
 ....S NM=$P(STT1,"\",5)
 ....D CR2($P(STT1,"\",4),COL,COL*MH,NM)
 Q
 ;
 ;
VRM(STAM) ;
 Q $$^W4MAIN("VRM")
 ;
CR1(A) ;
 N B,PAR,N,N1,SUGP,SHAA S PAR=$P(A,"\"),PAR1=$P(A,"\",3) D PRI
 S SUGP=+$$SUG^W4P(PAR)
 S SHAA=$$SHAA(HZM)
 D PRI
 S B=$G(@$$VRM@(DT,+SHAA,HZM,SUGP,PAR))
 S @$$VRM@(DT,+SHAA,HZM,SUGP,PAR)=$P(B,"*")+$P(A,"\",5)_"*"_($P(B,"*",2)+$P(A,"\",7)-$P(A,"\",6))_"*"_PAR1
 Q
 ;
CR2(PAR,C,S,PAR1) ;
 N N,N1
 N SUGP S SUGP=+$$SUG^W4P(PAR)
 D PRI
 N B S B=$G(@$$VRM@(DT,+SHAA,HZM,SUGP,PAR))
 S @$$VRM@(DT,+SHAA,HZM,SUGP,PAR)=($P(B,"*")+C)_"*"_($P(B,"*",2)+S)_"*"_PAR1
 Q
 ;
SHAA(HZM) ;
 N SHAA S SHAA=$$SHAA^W4HZMST(HZM)
 I SHAA="" S SHAA=$P($$DATCB^W4HZMST(HZM),"  ",2)
 Q SHAA
 ;
PRI N I F I="SHAA","PAR","SUGP" D
 .I $G(@I)="" S @I=" - "
 .I $G(@I)["*" S @I=$TR(@I,"*","X")
 Q
 ;
RKV(VL,FMT,DL)
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S VL=$$SPA^%L1FRM(VL)
 ;
 I FMT="D" D
 .I +VL?5N S VL=$ZD(VL,"DD.MM.YY")
 .I VL?.N1".".N1".".N S VL=$TR(VL,".","/")
 .S DD=$TR($J($P(VL,"/"),2)," ",0)
 .S MM=$TR($J($P(VL,"/",2),2)," ",0)
 .S YY=$P(VL,"/",3) I $L(YY)=2 S YY=$S(YY<30:20_YY,1:19_YY)
 .S VL=DD_"/"_MM_"/"_YY
 ;
 I FMT="T" D
 .S VL=$P(VL,":",1,2)
 ;
 I FMT="H" D
 .I $G(DL) S VL=$$HBR^%L1FRM(VL,DL)
 .S VL=$TR($$INVH^%L1FRM(VL),TS0,TS1)
 ;
 I FMT="E" D
 .I $G(DL) S VL=$$ENG^%L1FRM(VL,DL)
 ;
 I FMT="N" D
 .I $G(DL) S VL=$J(VL,1,DL)
 ;
 D
 .I VL?9N.N S VL="'"_VL_"'" Q
 .I $L($TR(VL," ",""))<6,$TR(VL," ","")?1N.N1"-"1N.N S VL="'"_VL_"'" Q
 .S VL=""""_VL_""""
 ;
 Q VL
 ;
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 N VL,RES,I
 S RES=1
 F I="SPK","SPK1","IP","USR","PORT","PSW" D  Q:RES'=1
 .S VL=$G(@I) I VL="" S RES="CODEMUSTBEFILLED;"_I Q
 .I I="SPK1" S VL=$$INVH^%L1FRM(VL)
 .S @$$^W4PRM@("W4SNOU1",I)=VL
 ;
 S @$$^W4PRM@("W4SNOU1")=$G(SNOU1)
 Q RES
 ;
 ;
GETPRM ;
 N I
 S SNOU1=$G(@$$^W4PRM@("W4SNOU1"))
 F I="SPK","SPK1","IP","USR","PORT","PSW" D
 .S @I=$G(@$$^W4PRM@("W4SNOU1",I))
 Q
 
 

W4SOAD
W4SOAD(ORD) ; [ 27.12.18 07:11 ] [ 
 N NMB,SOAD,TSHL
 S TSHL=$$TSHL^W4HZMST(ORD)
 S SOAD=$$SOAD^W4HZMST(ORD)
 S NMB=$$NMB^W4HZMST(ORD)
 ;
 S SOAD=$$SOAD(SOAD,TSHL,NMB)
 Q SOAD
 ;
 ;
SOAD(SOAD,TSHL,NMB) ;
 I 'TSHL Q 0
 I TSHL<0,SOAD>0 S SOAD=-SOAD
 I 'SOAD,$$^W4DLPK(NMB),$G(@$$^W4PRM@("MSPSD"))=1 S SOAD=$S(TSHL<0:-1,TSHL>0:1,1:0)
 I SOAD,$$^W4DLPK(NMB),$G(@$$^W4PRM@("NOMSPSD")) S SOAD=0
 I 'SOAD,$G(NMB),$$^W4MSL(NMB),$G(@$$^W4PRM@("SDMSL"))=1 D
 .S SOAD=$S(TSHL>0:1,TSHL<0:-1,1:0)
 I $G(NMB),$$^W4MSL(NMB),$G(@$$^W4PRM@("NOSDMSL")) S SOAD=0
 Q SOAD
 
 
 
 

W4SPAN
W4SPAN(DIR,STYLE,TX,DOP) ; [ 12.02.17 12:40 ] [ 
 W "<span "
  I $L($G(DIR)) W " dir="""_DIR_""" "
  I $L($G(STYLE)) W "style="""_STYLE_""" "
  I $L($G(DOP)) W DOP
 W ">" 
  W $G(TX)
 W "</span>",!
 Q
 

W4SPDOC
W4SPDOC ; [ 06.05.26 12:27 ] [ 21.07.24 13:00 ] [ 06.02.24 11:15 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 N SPK S SPK=$TR($G(%ARG("CODE")),"-","")
 N LNG S LNG=$$^%W1LNG
 N SHOWKIND S SHOWKIND=$G(%ARG("SHOWKIND"))
 I 'SHOWKIND S SHOWKIND=1
 S ONCLICKSHOW=" onClick=""OnClickShow(this)"" "
 S BORDER="border:solid gray 1px"
 ;
 D OPCSV
 W "<div align=""center"">",!
 ;----------------------------------------------------
 I $G(%ARG("PRINT")),$$IHZ D  Q  ; PRINT IHZ LIST
 .D INVOICESLIST("IHZ","",1)
 .W "</div>",!
 ;
 I $G(%ARG("PRINT")),$$HB D  Q  ; PRINT INVOICES LIST
 .D INVOICESLIST("IHB","",1)
 .W "</div>",!
 ;
 I $G(%ARG("PRINT")),$$TM D  Q  ; PRINT ITM LIST
 .D INVOICESLIST("ITM","",1)
 .W "</div>",!
 ;
 I $G(%ARG("PRINT")),$$ITZ D  Q  ; PRINT ITZ LIST
 .D INVOICESLIST("ITZ","",1)
 .W "</div>",!
 ;
 I $G(%ARG("PRINT")),$$PY D  Q  ; PRINT RECEIPTES LIST
 .D PAYMENTSLIST(1)
 .W "</div>",!
 ;----------------------------------------------------
 ;
 D SPKCARD(SPK)
 ;
 W "<tr><td colspan=""6"">&nbsp;</td></tr>",!
 ;
 D BUTTONS
 ;
 D LINE
 W "</table>",!
 W "</div>",!
 ;
 W "<br /><br />",!
 W "<div>",!
 ;
 D
 .I $G(%ARG("VD"))["IHB" D  Q
 ..D INVOICESLIST($$CODDOC,$G(%ARG("INVC")))
 .
 .I $$PY D PAYMENTSLIST(0) Q
 ..W "<br /><br />",!
 ..S %ARG("OPNINV")=1
 ..D INVOICESLIST("IHB",$$ALLHB)
 .
 .I $$TM D INVOICESLIST("ITM") Q
 .I $$ITZ D INVOICESLIST("ITZ") Q
 .I $$IHZ D INVOICESLIST("IHZ",$G(%ARG("ORDKND"))) Q
 .
 W "</div>",!
 Q
 ;
 ;
GLS(CODDOC)
 I $G(CODDOC)="IPY" Q $$^W4MAIN("TMPTS")
 Q $$^W4GLS
 ;
 ;
SPKCARD(SPK) ;
 N W4HSB
 I $G(%ARG("NOM")),'$G(%ARG("NEWSPK")) D
 .N NOM S NOM=+$G(%ARG("NOM"))
 .D ^W4HSBGET(NOM,$$CODDOC,SPK)
 ;
 W "<br><span style=""color:red;text-align:center"">"_$$^%W1DICT("FLDMUSTASTR")_"</span><br><br>",!
 W "<table width=""90%"" cellpadding=""3"" border=""0"" style=""padding:10px;border:ridge;2px"" dir="""_$$^%W1DIR_""">",!
  D LINE
  W "<tr>"
     W "<td width=""20%""> "
      W $$ZV_$$^%W1DICT("SUPPLCODE")
      I $$W4LKH D
      .W "<br><span style=""font-size:"_$$^W3FSZ(8)_";color:gray"">"
      .W "</span>"
     W "</td>",!
     W "  <td width=""34%"">"
      W "<input type=""text"" tabindex=""1"" id=""supplcd""  maxlength=""14"" "
       W "size=""14"" value="""_SPK_""" onClick=""this.select()"" "
       W "onKeyUp=""ChangeCd()"" "
       W "onKeyPress=""OnKeyPress(event)"" "
       W "onChange=""Find('supplcd','supplcd!','W4SPK')"" >",!
      W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick=""Find('supplcd','supplcd!','W4SPK')"" >",!
     W "  </td>",!
     W "  <td width=""18%"" >"_$$ZV_$$^%W1DICT("NAME")_"</td>",!
     W "  <td "_$$^%W1ALIGN_" colspan=""3"">"
      N SPKNAME S SPKNAME=$$NAME^W4SPK(SPK)
      I $L($G(W4HSB("SPKNAME"))) S SPKNAME=W4HSB("SPKNAME")
      W "<input type=""text"" tabindex=""2"" id=""supplnm"" "
      W $S($$W4LKH:"",1:" readonly=""readonly"" ")_" size=""30"" "
      W " value="""_$$H2U^%L1FRM(SPKNAME)_""">",!
     W "  </td>",!
     ;
   W "</tr>",!
     ;
   W "<tr>",!
     W " <td >"_$$^%W1DICT("TEL")_"</td>"
     W " <td >"
      D
      .N TELB S TELB=$$TELB^W4SPK(SPK)
      .I TELB="",$L(SPK)>6 S TELB=$TR(SPK,"! ","")
      .I $L($G(W4HSB("TEL"))) S TELB=W4HSB("TEL")
      .W "<input tabindex=""3"" id=""TELB"" type=""text"" "
      .W $S($$W4LKH:"",1:" readonly=""readonly"" ")
      .W " size=""11"" value="""_TELB_""" >"
     W " </td>",!
     W " <td >&nbsp;"_$$^%W1DICT("PELE")_"</td>"
     W " <td colspan=""3"">"
      N PELE S PELE=$$PELE^W4SPK(SPK)
      I $L($G(W4HSB("PELE"))) S PELE=W4HSB("PELE")
      W "<input tabindex=""4"" id=""PELE"" type=""text"" "
      W $S($$W4LKH:"",1:" readonly=""readonly"" ")
      W " size=""11"" value="""_PELE_""" >"
     W " </td>",!
   W "</tr>",!
     ;
   W "<tr>",!
     W " <td>"_$$^%W1DICT("FAX")_"</td>"
     W " <td>"
      W "<input tabindex=""5"" id=""FAX"" type=""text"" "
      W $S($$W4LKH:"",1:" readonly=""readonly"" ")
      W " size=""11"" value="""_$$FAX^W4SPK(SPK)_""" >"
     W " </td>",!
     ;
     W " <td>&nbsp;"_$$^%W1DICT("EMAIL")_"</td>"
     W " <td colspan=""3"">"
      W "<input tabindex=""6"" id=""EMAIL"" type=""text"" size=""40"" "
      W " value="""_$$EMAIL^W4SPK(SPK)_""""
       I $$W4LKH D
       .W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
       I '$$W4LKH D
       .W "readonly=""readonly"" "
      W ">"
     W " </td>",!
    ;W " </tr></table>",!
    ;W "</td>",!
  W "</tr>",!
  ;
  I $$W4LKH D
  .D ^W4SPKADR
  ;
  I '$$W4LKH D
  .W "<tr>",!
  .W " <td>"_$$^%W1DICT("ADDR")_"</td>",!
  .W "<td colspan=""4"">",!
  .  W " <input type=""text"" onKeyUp=""NoChangeCd()"" "
  .  W " readonly=""readonly"" size=""45"" "
  .  W "value="""_$$H2U^%L1FRM($$KTVM^W4SPK(SPK))_"""</td>",!
  .W "</td>",!
  .W "</tr>",!
  ;
  W "<tr>",!
  W "    <td > "_$$^%W1DICT("HOV")_" </td>",!
  W $$TDL_" "_$$^%W1ALIGN_" >",!
  W "     <input type=""text"" style=""text-align:right;font-weight:bold"" id=""balance"" size=""10"" readonly=""readonly"" id=""balance"" value="""_$J($$COMPITRA^W4SPK(SPK),2,2)_""" >",!
  W "    </td>",!
  ;;
  W "    <td >"_$$ZV_$$^%W1DICT("BUSINESSID")_" </td>",!
  W "    <td colspan=""3"" "_$$STYLE^%W1DIR("LTR")_" "_$$^%W1ALIGN_" style=""font-weight:bold"">"
   W "     <input type=""text"" style=""text-align:right"" id=""TZ"" size=""9"" value="""_$$TZ^W4SPK(SPK)_""" >",!
  W " </td>",!
  W "</tr>",!
  ;
  I $$TM!$$ITZ!$$IHZ D
  .W " <tr>"
  .  W "  <td>"_$$^%W1DICT("TODATE")_"</td>"
  .  W $$TDL_" "_$$^%W1ALIGN_" >" D ^%W1DAT("DAT") W "</td>"
  .  W "<td colspan=""5"">&nbsp;</td>"
  .W "</tr>",!
 Q
 ;
 ;
BUTTONS ;
 W "<tr>",!
   I $$HB!$$TM!$$HBZ D
   .W "<td width=""16%"">"_$$^%W1DICT("DOCNUMBER")_"</td>"
   .W "<td width=""34%"" >"
   . W "<input type=""text"" size=""8"" id=""docnumber"" onClick=""this.select()"" >"
   .W "</td>"
   ;
   S W4BUTTON("CLICK")=""
   ;
   I $$ITZ D
    .W "<td>&nbsp;</td>",!
    .W "<td>"
    . D ROUNDBUT^%W1JS("newdlvdoc",$$^%W1DICT("NEWDLVBACKDOC"),"NewInvoice('"_$$CODDOC_"')","color:green","wh,22")
    .W "</td>",!
   ;
   I $$IHZ D
    .W "<td>&nbsp;</td>",!
    .W "<td>",!
    .D ROUNDBUT^%W1JS("neworder",$$^%W1DICT("NEWORDER"),"NewInvoice('"_$$CODDOC_"')","color:green","wh,22")
    .W "</td>",!
   ;
   W "<td>&nbsp;</td>",!
   ;
   W " <td "_$$^%W1ALIGN_">",!
      D ROUNDBUT^%W1JS("clear",$$^%W1DICT("FULLSUPPLCARD"),"ShowSupplCard()","color:brown","wh,22,,90")
   W " </td>",!
   ;
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("item",$$^%W1DICT("ITEMCARD"),"ItemCard()","color:darkblue","wh,22")
   W " </td>",!                                         
   ;
   W " <td align=""center"">",!
         D ROUNDBUT^%W1JS("clear",$$^%W1DICT("CLEAR"),"ClearHrf()","color:blue","wh,22")
   W " </td>",!
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "  </td>",!
  W " </tr>"
  I $$ITZ!$$IHZ Q
  ;
  W " <tr><td colspan=""7""><hr></td></tr>",!
  W " <tr>"
   I $$HB!$$HBZ,$$NEWMLY^W3PRM,'$G(%ARG("ARM")) D
    .W "  <td>"_$$^%W1DICT("TODATE")_"</td>"
    .W $$TDL_" "_$$^%W1ALIGN_" >" D ^%W1DAT("DAT") W "</td>"
   ;
   W "<td colspan=""6"">",!
    W "<table width=""100%"">",!
     W "<tr>"
      I $$HB!$$HBZ,$$NEWMLY^W3PRM,'$G(%ARG("ARM")) D
      .W "  <td>"
      .  D ROUNDBUT^%W1JS("newinvoicetm",$$^%W1DICT($S($$IHBZ:"NEWBACKINVOICEASSEMBLY",1:"NEWINVOICEASSEMBLY")),"NewInvoice('"_$$CODDOC_"TM')","color:green","wh,22,,220")
      .W "  </td>"
      W "<td>"
       I $$HB!$$HBZ D
       .D ROUNDBUT^%W1JS("newinvoice",$$^%W1DICT("NEWINVOICETYPING"),"NewInvoice('"_$$CODDOC_"')","color:green","wh,22,,220")
       .I $$HB W "</td><td width=""10%"">&nbsp;"
       ;
       I $$PY D
        .D ROUNDBUT^%W1JS("newpy",$$^%W1DICT("NEWPAYMENT"),"NewPayment('"_(1+$G(%ARG("ADV")))_"')","color:green","wh,22")
       I $$TM D
        .D ROUNDBUT^%W1JS("newdlvdoc",$$^%W1DICT("NEWDLVSPDOC"),"NewInvoice('"_$$CODDOC_"')","color:green","wh,22")
      W "</td>"
     W "</tr>"
    W "</table>",!
  ;
 W " </td>",!
 W "</tr>",!
 ;
 Q
 ;
 ;
TD W "<td width=""32%"">"
 Q
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
TDL(STAM) ;
 Q "<td style=""direction:ltr;text-align:right"" "
 ;
TEST(SPK) ;
 I $TR(SPK,"-","")?1N.N,$$DC^W4SPK(SPK) Q 1
 I $TR(SPK,"-","")?1N.N,'$$DC^W4SPK(SPK) Q 0
 Q "FIND"
 ;
HB(STAM) ;
 I $G(%ARG("VD"))="IHB" Q 1
 I $$GET^%W1PRM("VD")="IHB" Q 1
 Q 0
 ;
PY(STAM) ;
 I $G(%ARG("IPY")) Q 1
 I $$GET^%W1PRM("VD")="IPY" Q 1
 Q 0
 ;
TM(STAM)
 I $G(%ARG("VD"))="ITM" Q 1
 I $$GET^%W1PRM("VD")="ITM" Q 1
 Q 0
 ;
WEX(RKV,PR)
 D ^W4EX(RKV,$G(PR))
 Q
 ;
WEXR ;
 D WEXR^W4EX
 Q
 ;
INVOICESLIST(CODDOC,INVC,PRINT) ;
 N INVLIST S INVC=$G(INVC)
 N INVD S INVD="INCOMEINVOICESLIST"
 S INVLIST=$$^%W1DICT(INVD)
 ;
 I $$DOCTM(CODDOC) S INVD="SUPPLDLVDOCLIST",INVLIST=$$^%W1DICT(INVD)
 I $$DOCHBZ(CODDOC) S INVD="INCOMEDEBETINVOICESLIST",INVLIST=$$^%W1DICT(INVD)
 I $$DOCITZ(CODDOC) S INVD="INCOMEDLVBACKLIST",INVLIST=$$^%W1DICT(INVD)
 I $$DOCIHZ(CODDOC) S INVD="ORDER2SUPPLIERLIST",INVLIST=$$^%W1DICT(INVD)
 I $$DOCPY(CODDOC) S INVD="PAYMENTSLIST",INVLIST=$$^%W1DICT(INVD)
 ;
 S WD="30%"
 ;
 I $G(SPK) D
 .N SPKSPK1 S SPKSPK1=SPK_"<>"_$$H2U^%L1FRM($$NAME^W4SPK(SPK))
 .S INVD="SUPPLINVOICESLIST"
 .S INVLIST=$$^%W1DICT(INVD,SPKSPK1)
 .I $$DOCTM(CODDOC) S INVD="SUPPLDLVDOCLIST",INVLIST=$$^%W1DICT(INVD,SPKSPK1)
 .I $$DOCHBZ(CODDOC) S INVD="SUPPLINCOMEDEBETINVOICESLIST",INVLIST=$$^%W1DICT(INVD)
 .I $$DOCITZ(CODDOC) S INVD="SUPPLINCOMEDLVBACKLIST",INVLIST=$$^%W1DICT(INVD)
 .I $$DOCIHZ(CODDOC) S INVD="SUPPLORDERLIST",INVLIST=$$^%W1DICT(INVD)
 .I $$DOCPY(CODDOC) S INVD="SUPPLPAYMENTSLIST",INVLIST=$$^%W1DICT(INVD)
 .S WD="16%"
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr>"
 W " <td width="""_WD_""">"
  W "&nbsp;"
 W " </td>",!
 W " <td"
 W "  style=""color:black;font-size:"_$$^W3FSZ(14)
 W """>"_INVLIST_"</td>"
 ;
 D WEX(""),WEX(""),WEX("")
 D WEX(INVD,"DICT")
 D WEXR
 ;
 I $G(%ARG("PRINT")) D  G INVCTB
 .W "</tr>",!
 .W "</table>",!
 ;
 W " <td width=""3%"">&nbsp;</td>",!
 W " <td>"
 I '$G(PRINT),CODDOC["IHB"!(CODDOC["ITM") D
 .D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"PrintInvoices('HRFB')","color:blue","wh,22")
 W " </td>",!
 W " <td width=""10%"">&nbsp;</td>",!
 W " <td id=""excel"">"
 W " </td>",!
 W "</tr>",!
 W "</table>",!
 ;
 I '$$PY D
 .N WDTB S WDTB=80
 .D RADIOSHOW^W4LHB
 .
 .I '$$TM,'$$ITZ,'$$IHZ D KINDSHOW
 .
 .I $$IHZ D ORDKINDSHOW
 .
 .I $$TM!$$ITZ!$$IHZ D
 ..W "<table width=""70%"" align=""center"" dir="""_$$^%W1DIR_""">",!
 ..N WD2 S WD2=70 I $$ITZ S WD2=40
 ..
 ..W "<tr>"
 .. W "<td width="""_WD2_"%"" "_$$INV^%W1ALIGN_" >"
 ..  W $$^%W1DICT("SHOWDOCSWITHOUTINVOICES")_"&nbsp;"
 ..  W "<input type=""checkbox"" id=""noinvc"""
 ..   W $S($G(%ARG("NOINVC")):" checked='checked'",1:"")
 ..   W " onClick=""ShowRed()"""
 ..  W " >",!
 .. W "</td>"
 ..
 .. W "<td width=""20%"">"
 ..  D SORTSP
 .. W "</td>",!
 .. W "<td>"
 .. D SHOWBUT
 .. W "</td>",!
 ..
 .. I $$ITZ D
 .. .W "<td width=""10%"">&nbsp;</td>"
 .. .W "<td width=""25%"">"
 .. .W " <span style=""font-size:"_$$^W3FSZ(10)_";color:darkblue"" >"_$$^%W1DICT("PLUSMININVOICES")_"</span>",!
 .. .W "</td>",!
 ..W "</tr>",!
 ..W "</table>",!
 ;
INVCTB ;
 N WDT S WDT=98
 I $$TM S WDT=70
 W "<br>",!
 ;
 W "<table id=""listinvoices"" border=""1""  width="""_WDT_"%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 N PY D KOT
 ;
 I $$DOCHB(CODDOC) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("PAYMENTDATE")
 .D WEX("PAYMENTDATE","DICT")
 .W "   </th>",!
 .W "   <th>",!
 .W "    "_$$^%W1DICT("PAID")
 .D WEX("PAID","DICT")
 .W "   </th>",!
 .I '$G(PRINT) D
 ..W "   <th>",!
 ..W "    "_$$^%W1DICT("PAYMENT")
 ..W "   </th>",!
 .W "   <th>",!
 .W "    "_$$^%W1DICT("BALANCE")
 .D WEX("BALANCE","DICT")
 .W "   </th>",!
 ;
 W "  </tr>",!
 D WEXR
 ;
 N STOT,SHSB,SSHUL,SITRA,SPY S (STOT,SHSB,SSHUL,SITRA,SPY)=0
 N DIR D DIR
 ;
 N NOM,SP,SP0,A,ENDCYC S ENDCYC=0
 S MAX=$$SHOWLAST I $G(%ARG("COLMAX")) S MAX=%ARG("COLMAX")
 I '$G(%ARG("COLMAX")),MAX S %ARG("COLMAX")=MAX
 ;
 I $G(SPK) D
 .N VRM S VRM=$$^W4MAIN("VRM")
 .I CODDOC["IHB" D SHOWALL(SPK,MAX,INVC) Q
 .I '$G(MAX) S MAX=$$MAX9
 .S NOM="" F  S NOM=$O(@$$GLS@(SPK,CODDOC,NOM),-1) Q:NOM=""  D
 ..I $E($G(^(NOM)),1,8)?.P K ^(NOM) Q
 ..D CRVRM(SPK,CODDOC,NOM)
 .S NOM="" F  S NOM=$O(@VRM@(SPK,CODDOC,NOM),-1) Q:NOM=""  D  Q:ENDCYC
 ..D LINEINVC($P(NOM,"-",2,20),SPK,CODDOC,$G(PRINT),INVC)
 .K @VRM
 ;
 I '$G(SPK) D
 .I $G(PRINT)!($$SHOWKIND>1)!$G(%ARG("OPNINV"))!$G(%ARG("ADDAT"))!$G(%ARG("SORTSPK")) S MAX=$$MAX9
 .I $G(%ARG("OPNINV")),'$$PY D
 ..S MAX=$S($G(%ARG("COLMAX")):%ARG("COLMAX"),1:$$MAX9)
 .
 .;
 .I CODDOC["IHB" D SHOWALL("",MAX,INVC) Q
 .
 .I $$SORTSPK D SHOWSPK(CODDOC) Q
 .
 .S DT="" F  S DT=$O(@DIR@(DT),-1) Q:DT=""  I DT D  Q:ENDCYC
 ..S SPK="" F  S SPK=$O(@DIR@(DT,SPK)) Q:SPK=""  D  Q:ENDCYC
 ...S NOM="" F  S NOM=$O(@DIR@(DT,SPK,CODDOC,NOM),-1) Q:NOM=""  D  Q:ENDCYC
 ....D LINEINVC(NOM,SPK,CODDOC,$G(PRINT),INVC)
 ;
INVCTB1 ;-- TOTALS
 I $G(%ARG("OPNINV"))!$$SORTSPK!$G(SPK)!(SHOWKIND=2) N PY D TOT("")
INVCTBEND ;
 W "</table>",!
 D CLCSV
 Q
 ;
 ;
KINDSHOW ;
 W "<table dir="""_$$^%W1DIR_""" width=""90%"">",!
   W "<tr>",!
   W " <td style=""background-color:lightyellow;"_BORDER_";width:17%"" >",!
    W " "_$$^%W1DICT("DETAILEDINVOICES")_" "
    W "<input type=""checkbox"" id=""iteminvc"" "
      W $S($$INVCHB(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W "</td>",!
   ;
   W "<td>&nbsp;</td>"
   ;
   W " <td style=""background-color:lightblue;"_BORDER_";width:17%"" >",!
    W " "_$$^%W1DICT("SERVICEINVOICES")_" "
    W "<input type=""checkbox"" id=""arminvc"" "
      W $S($$INVCARM(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W "</td>",!
   ;
   W "<td>&nbsp;</td>"
   ;
   W " <td style="""_BORDER_";width:17%"" >",!
    W " "_$$^%W1DICT("CONCENTRATEDINVOICES")_" "
    W "<input type=""checkbox"" id=""autoinvc"" "
      W $S($$INVCHBTM(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W "</td>",!
   ;
   W "<td>&nbsp;</td>"
   ;
   W " <td style=""background-color:pink;"_BORDER_";width:15%"" >",!
    W " "_$$^%W1DICT("DEBETINVOICES")_" "
    W "<input type=""checkbox"" id=""debetinvc"" "
      W $S($$INVCDEB(INVC):" checked=""checked"" ",1:"")
      W " onClick=""ShowRed()"" "
    W " />"
   W " </td>",!
   ;
   W "<td>&nbsp;</td>",!
   W "<td>"
   W $$^%W1DICT("SHOWOPENINVOICESONLY")_"&nbsp;"
   W "<input type=""checkbox"" id=""openinv"""
     W $S($G(%ARG("OPNINV")):" checked='checked'",1:"")
     W " onClick=""ClickOpenInvoices()"""
   W " >",!
   W "</td>",!
   ;
   W "<td>"
    D SORTSP
   W "</td>"
   ;
   W " <td>",!
    D SHOWBUT
   W " </td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
ORDKINDSHOW ;
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>",!
   W "<td>"_$$^%W1DICT("OPENORDERS")
    W "&nbsp;<input id=""openord"" type=""checkbox"" "
    W $S($$ORDOPEN($G(%ARG("ORDKND"))):" checked=""checked"" ",1:"")
   W "></td>",!
   W "<td>"_$$^%W1DICT("CLOSEDORDERS")
    W "&nbsp;<input id=""closedord"" type=""checkbox"" "
    W $S($$ORDCLOSED($G(%ARG("ORDKND"))):" checked=""checked"" ",1:"")
   W " ></td>"
   W "<td>"_$$^%W1DICT("DELETEDORDERS")
    W "&nbsp;<input id=""delord"" type=""checkbox"" "
    W $S($$ORDDEL($G(%ARG("ORDKND"))):" checked=""checked"" ",1:"")
   W " ></td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
SORTSP ;
 W $$^%W1DICT("SORTBYSUPPLIERS")_"&nbsp;"
 W "<input type=""checkbox"" id=""sortspk"""
  W $S($$SORTSPK:" checked='checked'",1:"")
  W " onClick=""ShowRed()"""
 W " >",!
 Q
 ;
SHOWBUT ;
 ;;D ROUNDBUT^%W1JS("ShowInvc",$$^%W1DICT("SHOW"),"ShowInvoices('"_$G(%ARG("VD"))_"')","color:green","wh,22")
 D ^W4BUTTON("ShowInvc",$$^%W1DICT("SHOW"),"ShowInvoices('"_$G(%ARG("VD"))_"')","color:green")
 Q
 ;
KOT ;
 W "  <tr>",!
 W "   <th>",!
 N HD S HD=$S($$IHZ:"ORDER2SUPPLIER",$$TM:"DELIVERYDOC",$$ITZ:"INCOMEDLVBACKDOC",$D(PY):"PAYMENT",1:"INVOICE")
 W "    "_$$^%W1DICT(HD)
 D WEX(HD,"DICT")
 W "   </th>",!
 I '$D(PY) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("TODATE")
 .D WEX("TODATE","DICT")
 .W "   </th>",!
 I '$G(PRINT)!$D(PY) D
 .W "   <th>",!
 .I '$D(PY) W "    "_$$^%W1DICT("TYPINGTIME")
 .I $D(PY) W "    "_$$^%W1DICT("PAYMENTDAT")
 .W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SPKNUMBER")
 D WEX("SPKNUMBER","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SPKNAME")
 D WEX("SPKNAME","DICT")
 W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("SUM")
 D WEX("SUM","DICT")
 W "   </th>",!
 I $$CODDOC="ITM"!($$CODDOC="ITZ")!($$CODDOC="IHZ") D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("INVOICE")
 .D WEX("INVOICE","DICT")
 .W "   </th>",!
 .
 .W "   <th>",!
 .W "    "_$$^%W1DICT("COMMENT")
 .D WEX("COMMENT","DICT")
 .W "   </th>",!
 Q
 ;
 ;
TOT(SPK) ;
 I $G(SPK),'$G(SHSB(SPK)) Q
 ;
 N BGCOLOR S BGCOLOR="yellow"
 I $G(SPK) S BGCOLOR="orange"
 ;
 W "<tr style=""background-color:"_BGCOLOR_";color:black;font-weight:bold"">",!
 W "<td>"_$$^%W1DICT("TOTAL")_"</td>",!
 ;
 W "<td align=""center"">"
  I $G(SPK)="" W $G(SHSB)
  I $G(SPK) W SHSB(SPK)
 W "</td>",!
 ;
 I '$G(PRINT),'$D(PY) D
 .W "<td align=""center"">"
 .D
 ..I $G(SPK)=""!($$CODDOC'="IHB") W "&nbsp;" Q
 ..I $G(SPK) D
 ...I '$J($G(SITRA(SPK)),1,1) W "&nbsp;" Q
 ...D ^W4BUTTON("pay","PAY","Pay2Suppl('"_SPK_"','"_$G(%ARG("MEDAT"))_"','"_$G(%ARG("ADDAT"))_"')","color:blue")
 .W "</td>"
 ;
 I $G(SPK)="" D
 .W "<td>&nbsp;</td>",!
 .W "<td>&nbsp;</td>",!
 ;
 I $G(SPK) D
 .W "<td>"_SPK_"</td>",!
 .W "<td>"_$$H2U^%L1FRM($$NAME^W4SPK(SPK))_"</td>",!
 ;
 W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN($S($G(SPK):$G(STOT(SPK)),1:STOT),1)_"</td>",!
 I $$TM!$$ITZ!$$IHZ D  Q
 .W "<td>&nbsp;</td>",!
 ;
 I '$D(PY) D
 .W "<td>&nbsp;</td>",!
 .W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN($S($G(SPK):$G(SSHUL(SPK)),1:SSHUL),1)_"</td>",!
 ;
 I $D(PY) W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN($S($G(SPK):STOPAY(SPK),1:STOPAY),1)_"</td>",!
 ;
 I '$G(PRINT) W "<td>&nbsp;</td>",!
 W "<td "_$$NUM^%W1ALIGN_" >"_$$RKVN($S($G(SPK):$G(SITRA(SPK)),1:SITRA),1)_"</td>",!
 ;;W "<td "_$$NUM^%W1ALIGN_" >&nbsp;</td>",!
 W "</tr>",!
 Q
 ;
 ;
PAYMENTSLIST(PRINT) ;
 N (SPK,NOM,PRINT,JB,SHOWKIND,ONCLICKSHOW,BORDER,%ARG,%REM,FLCSV)
 N INVLIST D ^%L1TS
 S INVLIST=$$^%W1DICT("PAYMENTSLIST")
 ;
 S WD="30%"
 ;
 I $G(SPK) D
 .N SPKSPK1 S SPKSPK1=SPK_"<>"_$$H2U^%L1FRM($$NAME^W4SPK(SPK))
 .S INVLIST=$$^%W1DICT("SUPPLPAYMENTSLIST")
 .S WD="16%"
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr>"
 W " <td width="""_WD_""">"
  W "&nbsp;"
 W " </td>",!
 W " <td"
 W "  style=""color:black;font-size:"_$$^W3FSZ(14)
 W """>"_INVLIST_"</td>"
 W " <td width=""3%"">&nbsp;</td>",!
 W " <td>"
 I '$G(PRINT) D
 .D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"PrintInvoices('HRFB')","color:blue","wh,22")
 W " </td>",!
 W "</tr>",!
 W "</table>",!
 ;
 D RADIOSHOW^W4LHB
 ;
 D SORTSP
 ;
PAYMTB ;
 N WDT S WDT=98
 I $$TM S WDT=70
 N STOT,SPY,SITRA,STOPAY S (STOT,SPY,STOPAY,SITRA)=0
 N DIR D DIR
 N NOM,SP,SP0,A
 ;
 W "<table id=""listpayments"" border=""1""  width="""_WDT_"%"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 S PY="" D KOT
 W "   <th>",!
 W "    "_$$^%W1DICT("TOPAY")
 D WEX("TOPAY","DICT")
 W "   </th>",!
 I '$G(PRINT) D
 .W "   <th>",!
 .W "    "_$$^%W1DICT("INVOICES")
 .W "   </th>",!
 W "   <th>",!
 W "    "_$$^%W1DICT("BALANCE")
 D WEX("BALANCE","DICT")
 W "   </th>",!
 D WEXR
 W "</tr>",!
 ;
 N MAX
 S MAX=$$SHOWLAST
 I $G(PRINT)!$G(%ARG("OPNINV")) S MAX=$$MAX9
 S ENDCYC=0
 ;
 I $$SORTSPK,'$G(SPK) D  G PAYMTB1
 .N N,SPK,TMPTS
 .S TMPTS=$$^W4MAIN("TMPTS") K @TMPTS
 .N DRC,I S DRC=1
 .I $$SHOWKIND=1,COLMAX S DRC=-1
 .S N="",I=0 F  S N=$O(@$$^W4GL("W4TSHL")@(N),DRC) Q:N=""  S I=I+1 Q:COLMAX&(I>COLMAX)  D
 ..S SPK=$P($G(^(N)),"\") Q:'SPK
 ..S @TMPTS@(SPK,N)=$G(@$$^W4GL("W4TSHL")@(N))
 .S SPK="" F  S SPK=$O(@TMPTS@(SPK)) Q:SPK=""  D
 ..S N="" F  S N=$O(@TMPTS@(SPK,N)) Q:N=""  D
 ...D LINEPY(N,$$SPK^W4PY(N),$G(PRINT))
 ..N SHSB S SHSB(SPK)=$G(SPY(SPK))
 ..D TOT(SPK)
 .K @TMPTS
 ;
 S NOM="" F  S NOM=$O(@$$^W4GL("W4TSHL")@(NOM),-1) Q:NOM=""  D  Q:ENDCYC
 .I $G(SPK),$$SPK^W4PY(NOM)'=SPK Q
 .D LINEPY(NOM,$$SPK^W4PY(NOM),$G(PRINT))
 ;
PAYMTB1 ;-- TOTALS
 I $G(%ARG("OPNINV"))!$$SORTSPK!$G(SPK)!(SHOWKIND=2) D
 .S PY="" D TOT("")
PAYMTBEND ;
 W "</table>",!
 Q
 ;
 ;
MAX9() Q 99999999
 ;
SP(SP0)
 N SP
 S SP=SP0
 I SP0["+" S SP=$P(SP0,"+")
 I SP0["^" S SP=$P(SP0,"^")
 I SP0["W" S SP=$P(SP0,"W")
 Q SP
 ;
 ;
IHB(SPK,CODDOC,N)
 N IHB
 I $G(SPK)="" Q ""
 I $G(CODDOC)="" Q ""
 I $G(N)="" Q ""
 S IHB=$G(@$$^W4GL("W4INP")@(SPK,CODDOC,N,"IHB"))
 I 'IHB S IHB=-$G(@$$^W4GL("W4INP")@(SPK,CODDOC,N,"IHBZ"))
 I IHB>0 S IHB1=+IHB
 I IHB<0 S IHB1=-IHB
 Q IHB
 ;
 ;
LINEINVC(N,SPK,CODDOC,PRINT,INVC) ;
 ;
 D ^W4HSBGET(N,CODDOC,SPK) Q:$D(W4HSB)<10
 ;
 I $$PY,$J($G(W4HSB("PAID")),1,1)'<$J($G(W4HSB("TOT")),1,1)&(W4HSB("TOT")>0) Q
 I $$PY,$J($G(W4HSB("PAID")),1,1)'>$J($G(W4HSB("TOT")),1,1)&(W4HSB("TOT")<0) Q
 ;
 I '$$PY,$$SHOWKIND=2,$G(W4HSB("DT"))<$$^%L1DC($G(%ARG("MEDAT")),3)!($G(W4HSB("DT"))>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 I '$$PY,$$SHOWKIND=3,$G(%ARG("NOMDOC"))'=N Q
 ;
 ;
 I CODDOC="IHBZ",INVC,INVC<8 Q
 I CODDOC="IHB",INVC,'$$IHBTM(SPK,+N),'$$NODET(SPK,CODDOC,+N),'$$INVCHB(INVC) Q
 I CODDOC="IHB",INVC,'$$IHBTM(SPK,+N),$$NODET(SPK,CODDOC,+N),'$$INVCARM(INVC) Q
 I CODDOC="IHB",INVC,$$IHBTM(SPK,+N),'$$INVCHBTM(INVC) Q
 ;
 I CODDOC="IHZ",INVC,'$$ORDCLOSED(INVC),$$CLOSEBYHB(SPK,CODDOC,N) Q
 I CODDOC="IHZ",INVC,'$$ORDOPEN(INVC),'$$CLOSEBYHB(SPK,CODDOC,N),'$$DELETED(SPK,CODDOC,N) Q
 I CODDOC="IHZ",INVC,'$$ORDDEL(INVC),$$DELETED(SPK,CODDOC,N) Q
 ;
 I $G(%ARG("NOINVC")),$$IHB(SPK,CODDOC,+N) Q
 ;
LI1 N ITRA S ITRA=""
 S ITRA=$J(W4HSB("TOT")-W4HSB("PAID"),1,1)
 ;;I $$IPY S ITRA=-ITRA
 ;
 I +ITRA=0,'$$TM,$G(%ARG("OPNINV")) Q
 ;
 I '$G(MAX) S MAX=$$MAX9
 I SHSB+1>MAX S ENDCYC=1 Q
 S SHSB=SHSB+1
 I $G(SPK) S SHSB(SPK)=$G(SHSB(SPK))+1
 ;
 W "<tr "
  D
  .I $$DOCHBZ(CODDOC)!$$ITZ D  Q
  ..W $$TRSTYLE("pink")
  .I $$DOCHB(CODDOC),$$NODET(SPK,CODDOC,+N) D  Q
  ..W $$TRSTYLE("lightblue")
  .I $$DOCTM(CODDOC)!($$DOCHB(CODDOC)&'$$IHBTM(SPK,+N)) D
  ..W $$TRSTYLE("lightyellow")
  .I $$DOCIHZ(CODDOC) D
  ..I $$DELETED(SPK,CODDOC,+N) W $$TRSTYLE("pink") Q
  ..W $$TRSTYLE("#BEFFDC")
 W ">"
 ;
 W $$TDL_" "
 W " id=""td"_+N_"_"_SPK_"_"_CODDOC_""" "
 W " style="""
 N LHBCUR
 S LHBCUR=$$GET^%W1PRM("LHBCUR")
 S LHBCUR=$P(LHBCUR,";")_";"_$P(LHBCUR,";",2)
 I $$DOCHBZ(CODDOC),N'["[-]",$G(PRALL) S N=N_"[-]"
 ;;I (N_";"_SPK)=LHBCUR W "border:solid 2px brown;"
 ;;I N["[-]" W "color:darkred;"
 W "text-align:center;cursor:pointer"
 W """"
 D ONCLICKHB(CODDOC,SPK,N)
 W ">&nbsp;&nbsp;&nbsp;"_N_"</td>"
 D WEX(N)
 ;
 W "<td " D ONCLICKHB(CODDOC,SPK,N) W ">&nbsp;&nbsp;"_W4HSB("TODATE")_"</td>",!
 D WEX(W4HSB("TODATE"),"D")
 ;
 I '$G(PRINT) D
 .W "<td " D ONCLICKHB(CODDOC,SPK,N) W ">&nbsp;&nbsp;"_W4HSB("TYPINGTIME")_"</td>",!
 ;
 W "<td " D ONCLICKHB(CODDOC,SPK,N) W ">&nbsp;"_SPK_"</td>",!
 D WEX(SPK)
 ;
 W "<td " D ONCLICKHB(CODDOC,SPK,N) W " >&nbsp;"_$$H2U^%L1FRM(W4HSB("SPKNAME"))_"</td>",!
 D WEX(W4HSB("SPKNAME"),"H")
 ;
 I $$DOCHBZ(CODDOC),$$HBZ S W4HSB("TOT")=$G(W4HSB("TOT"))*-1,ITRA=-ITRA
 ;
 W $$TDL_" "_$$^%W1ALIGN_" " D ONCLICKHB(CODDOC,SPK,N) W ">"
  W "&nbsp;"_$$RKVN(W4HSB("TOT"))
  D WEX(W4HSB("TOT"),"N")
 W "</td>",!
 ;
 S STOT=$G(STOT)+W4HSB("TOT")
 I $G(SPK) S STOT(SPK)=$G(STOT(SPK))+W4HSB("TOT")
 ;;S SHSB=$G(SHSB)+1
 ;
 I '$$DOCHB(CODDOC) D  G ELINE
 .N IHB,IHB1 S IHB=$$IHB(SPK,CODDOC,N)
 .I 'IHB S IHB1="&nbsp;"
 .W "<td align=""center"" " D ONCLICKHB("IHB",SPK,IHB1_$S(IHB<0:"IHBZ",IHB>0:"IHB",1:""),"'ifr'","1")
 .  W ">"_IHB1 I $$ITZ W $S(IHB<0:"[-]",IHB>0:"[+]",1:"")
 .  D WEX(IHB1_$S(IHB<0:"[-]",IHB>0:"[+]",1:""))
 .W "</td>",!
 .
 .W "<td " D ONCLICKHB(CODDOC,SPK,N) W " >&nbsp;"_$$H2U^%L1FRM(W4HSB("COMMENT"))_"</td>",!
 .D WEX(W4HSB("COMMENT"),"H")
 .
 ;
 ;
 S SSHUL=SSHUL+W4HSB("PAID")
 I $G(SPK) S SSHUL(SPK)=$G(SSHUL(SPK))+W4HSB("PAID")
 ;
 W $$TDL_" "_$$^%W1ALIGN_" " D ONCLICKHB(CODDOC,SPK,N)
   W ">&nbsp;"_W4HSB("PDATE")
   D WEX(W4HSB("PDATE"),"D")
 W "</td>",!
 ;
 W $$TDL_" "_$$^%W1ALIGN_" " D ONCLICKHB(CODDOC,SPK,N)
   W ">&nbsp;"_$S(W4HSB("TOT")<0:"",1:$$RKVN(W4HSB("PAID")))
   D WEX($S(W4HSB("TOT")<0:"",1:$$RKVN(W4HSB("PAID"))))
 W "</td>",!
 ;
 I '$G(PRINT) D
 .W "<td "_$$^%W1ALIGN_" >"
 . D SHOWPY(N,CODDOC,SPK)
 .W "</td>",!
 ;
 W $$TDL_" "_$$^%W1ALIGN_" >"
  W "&nbsp;"_$S(ITRA'="":$$RKVN(ITRA),1:"")
  D WEX(ITRA)
 W "</td>",!
 ;
 S SITRA=SITRA+ITRA
 I $G(SPK) S SITRA(SPK)=$G(SITRA(SPK))+ITRA
ELINE ;
 W "</tr>",!
 D WEXR
 Q
 ;
 ;
TRSTYLE(BGCOLOR)
 Q "style=""background-color:"_$G(BGCOLOR)_";cursor:pointer"" "
 ;
LINEPY(N,SPK,PRINT) ;
 ;
 S CODDOC="IPY"
 D ^W4HSBGET(N,CODDOC,SPK) Q:$D(W4HSB)<10
 I $G(%ARG("MESUM")),$G(W4HSB("TOT"))<%ARG("MESUM") Q
 I $G(%ARG("ADSUM")),$G(W4HSB("TOT"))>%ARG("ADSUM") Q
 ;
 I $$PY,$$SHOWKIND=2,$G(W4HSB("DT"))<$$^%L1DC($G(%ARG("MEDAT")),3)!($G(W4HSB("DT"))>$$^%L1DC($G(%ARG("ADDAT")),3)) Q
 I $$PY,$$SHOWKIND=3,$G(%ARG("NOMDOC"))'=N Q
 N OK
 I $$PY,$$SHOWKIND=4,$G(%ARG("CONTENT"))'="" D  Q:'OK
 .S OK=0 
 .N CONT S CONT=%ARG("CONTENT")
 .N GL S GL=$$^W4GL("W4TSHL")_"(N)"
 .N J F J=1:1:$L($G(@GL),"\") D  Q:OK
 ..I $P($G(@GL),"\",J)=CONT S OK=1
 .Q:OK
 .N I S I="" F  S I=$O(@GL@("C",I)) Q:I=""  I I D  Q:OK
 ..F J=1:1:$L($G(@GL@("C",I)),"\") I $P($G(@GL@("C",I)),"\",J)=CONT S OK=1
 .Q:OK
 .I CONT'="",$D(@GL@("H",CONT)) S OK=1 Q
 .N I S I="" F  S I=$O(@GL@("H",I)) Q:I=""  I I D  Q:OK
 ..F J=1:1:$L($G(@GL@("H",I)),"\") I $P($G(@GL@("H",I)),"\",J)=CONT S OK=1
 ;
 N ITRA S ITRA=""
 ;;S ITRA=$J(W4HSB("PAID")-W4HSB("TOPAY"),1,1)
 S ITRA=$J(W4HSB("TOPAY")-W4HSB("PAID"),1,1)
 ;
 I +ITRA=0,$G(%ARG("OPNINV")) Q
 ;
 I SPY+1>MAX S ENDCYC=1 Q
 S SPY=SPY+1
 I $G(SPK) S SPY(SPK)=$G(SPY(SPK))+1
 ;
 W "<tr "
 W ">"
 ;
 W " <td style=""direction:ltr;"
 N LHBCUR
 S LHBCUR=$$GET^%W1PRM("LHBCUR")
 S LHBCUR=LHBCUR_";"_$P(LHBCUR,";",2)
 I (N_";"_SPK)=LHBCUR W "border:solid 2px brown;"
 I N["[-]" W "color:darkred;"
 W "text-align:center;cursor:pointer"
 W """"
 D ONCLICKPY(N)
 W ">&nbsp;&nbsp;&nbsp;"_N_"</td>"
 D WEX(N)
 ;
 W "<td " D ONCLICKPY(N) W ">&nbsp;&nbsp;"_W4HSB("PDATE")_"</td>",!
 D WEX(W4HSB("PDATE"),"D")
 ;
 W "<td " D ONCLICKPY(N) W ">&nbsp;"_W4HSB("SPK")_"</td>",!
 D WEX(W4HSB("SPK"))
 ;
 W "<td " D ONCLICKPY(N) W " >&nbsp;"_$$H2U^%L1FRM(W4HSB("SPKNAME"))_"</td>",!
 D WEX(W4HSB("SPKNAME"),"H")
 ;
 W $$TDL_" "_$$^%W1ALIGN_" " D ONCLICKPY(N) W ">"
  W "&nbsp;"_$$RKVN(W4HSB("PAID"))
  D WEX(W4HSB("PAID"),"N")
 W "</td>",!
 ;
 S STOT=$G(STOT)+W4HSB("PAID")
 I $G(SPK) S STOT(SPK)=$G(STOT(SPK))+W4HSB("PAID")
 ;;S SPY=$G(SPY)+1
 ;
 S STOPAY=STOPAY+W4HSB("TOPAY")
 I $G(SPK) S STOPAY(SPK)=$G(STOPAY(SPK))+W4HSB("TOPAY")
 ;
 W $$TDL_" "_$$^%W1ALIGN_" " D ONCLICKPY(N)
   W ">&nbsp;"_$$RKVN(W4HSB("TOPAY"))
   D WEX(W4HSB("TOPAY"),"N")
 W "</td>",!
 ;
 I '$G(PRINT) D
 .W "<td "_$$^%W1ALIGN_" >"
 . D SHOWHB(N,"IPY",W4HSB("SPK"))
 .W "</td>",!
 ;
 W $$TDL_" "_$$^%W1ALIGN_" >"
  W "&nbsp;"_$S(ITRA:$$RKVN(ITRA),1:"")
  D WEX($S(ITRA'="":$$RKVN(ITRA),1:""))
 W "</td>",!
 ;
 S SITRA=SITRA+ITRA
 I $G(SPK) S SITRA(SPK)=$G(SITRA(SPK))+ITRA
ELINEPY W "</tr>",!
 D WEXR
 Q
 ;
W4LKH(STAM) ;
 Q +$$^W4LKH
 ;
 ;
NEWINVOICE(PRM) ;
 D GETDETSPK(PRM)
 D IFNEWSPK(PRM)
 N STHD
 K @$$^W4MAIN("TMPHB")
 S STHD=W4SPK_"\"_W4SPK1_"\"_W4KTV
 S $P(STHD,"\",15)=W4TZ
 S @$$^W4MAIN("TMPHB")=STHD
 Q
 ;
IFNEWSPK(SPK) ;
 D PUT^%W3DEB("W4SPDOC-IFNEWSPK","SPK=SPK")
 N W4SPK,W4SPK1,W4KTV,W4CITY,W4STREET,W4HOME,W4FLAT,W4FAX,W4EMAIL,W4ZIP,W4TZ
 S W4SPK=0,W4SPK1="",W4KTV=""
 ;
 I SPK["~" D GETDETSPK(SPK)
 ;
 S SPK=$P(SPK,"~")
 S SPK=$TR(SPK,"-","") Q:SPK=""
 ;
 I W4SPK,$L(W4SPK1) D
 .S @$$^W4GL("W4SPK")@(SPK)=W4SPK1
 .D
 ..I W4TEL'?.P D PUT^W4SPK(SPK,W4TEL,"TELB")
 ..I W4PELE'?.P D PUT^W4SPK(SPK,W4PELE,"PELE")
 ..I W4STREET'?.P D PUT^W4SPK(SPK,W4STREET,"KTV")
 ..I W4CITY'?.P D PUT^W4SPK(SPK,W4CITY,"IR")
 ..I W4HOME'?.P D PUT^W4SPK(SPK,W4HOME,"BAIT")
 ..I $L(W4FLAT) D PUT^W4SPK(SPK,W4FLAT,"DIRA")
 .I W4FAX D PUT^W4SPK(SPK,W4FAX,"FAX")
 .I $L(W4EMAIL) D PUT^W4SPK(SPK,W4EMAIL,"EMAIL")
 .I W4ZIP D PUT^W4SPK(SPK,W4ZIP,"MIKUD")
 .I W4TZ D PUT^W4SPK(SPK,W4TZ,"TZ")
 .I '$$D2^W4SPK(SPK) S @$$^W4GL("W4SPK")@(SPK,2)="*1*90000"
 .I '$$D3^W4SPK(SPK) S @$$^W4GL("W4SPK")@(SPK,3)=""
 ;
 Q
 ;
GETDETSPK(SPK) ;
 S W4SPK=$P(SPK,"~",1),W4SPK1=$P(SPK,"~",3)
 S W4SPK=$TR(W4SPK,"~-!.","")
 S W4SPK1=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4SPK1))
 S W4TEL=$$CNWEB^%L1FRM($P(SPK,"~",4))
 I W4TEL?.P,$L($P(SPK,"~"))>6 S W4TEL=$$TEL($P(SPK,"~"))
 S W4PELE=$$CNWEB^%L1FRM($P(SPK,"~",5))
 S W4FAX=$$CNWEB^%L1FRM($P(SPK,"~",6))
 S W4EMAIL=$$CNWEB^%L1FRM($P(SPK,"~",7))
 S W4CITY=$P(SPK,"~",8)
 S W4CITY=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4CITY))
 S W4STREET=$P(SPK,"~",9)
 S W4STREET=$$INVH^%L1FRM($$CNWEB^%L1FRM(W4STREET))
 S W4HOME=$$CNWEB^%L1FRM($P(SPK,"~",10))
 S W4FLAT=$$CNWEB^%L1FRM($P(SPK,"~",11))
 S W4ZIP=$$CNWEB^%L1FRM($P(SPK,"~",12))
 S W4TZ=$$CNWEB^%L1FRM($P(SPK,"~",13))
 S W4KTV=W4STREET
 I $L(W4HOME),$L(W4FLAT) S W4KTV=W4HOME_"/"_W4FLAT_" "_W4KTV
 I $L(W4HOME),'$L(W4FLAT) S W4KTV=W4HOME_" "_W4KTV
 I $L(W4CITY) S W4KTV=W4CITY_" , "_W4KTV
 I $L(W4ZIP) S W4KTV=W4ZIP_" "_W4KTV
 Q
 ;
 ;
TEL(SPK) ;
 S SPK=$TR(SPK,"-","")
 I $E(SPK)="1" Q $E(SPK)_"-"_$E(SPK,2,4)_"-"_$E(SPK,5,20)
 I $E(SPK)'="0" Q SPK
 I $E(SPK,1,2)="02"!($E(SPK,1,2)="03")!($E(SPK,1,2)="04")!($E(SPK,1,2)="08") Q $E(SPK,1,2)_"-"_$E(SPK,3,20)
 Q $E(SPK,1,3)_"-"_$E(SPK,4,20)
 ;
NOIDKKTV(SPK) ;
 I '$G(SPK) Q 0
 I $L($$BAIT^W4SPK(SPK)) Q 1
 I $L($$DIRA^W4SPK(SPK)) Q 1
 I $L($$CITY^W4SPK(SPK)) Q 1
 Q 0
 ;
ONCLICKHB(CODDOC,SPK,NOM,IFR,VW) ;
 ;;W " style=""cursor:pointer";
 ;;W """"
 I $$TM,NOM?1N.N S NOM=NOM_"ITM"
 I $$ITZ,NOM?1N.N S NOM=NOM_"ITZ"
 I $$IHZ,NOM?1N.N S NOM=NOM_"IHZ"
 I $G(IFR)="" S IFR="self"
 I $G(VW)="" S VW=""
 W " onClick=""ShowSupplInvoice('"_SPK_"','"_NOM_"',"_IFR_",'"_CODDOC_"','"_VW_"')"" "
 Q
 ;
ONCLICKPY(N) ;
 W " style=""cursor:pointer";
 W """"
 W " style=""cursor:pointer"" onClick=""ShowPayment('"_N_"')"""
 Q
 ;
CODDOC(STAM) ;
 I $G(%ARG("VD"))="IHBZ" Q "IHBZ"
 I $$GET^%W1PRM("VD")="IHBZ" Q "IHBZ"
 I $G(%ARG("VD"))="ITZ" Q "ITZ"
 I $$GET^%W1PRM("VD")="ITZ" Q "ITZ"
 I $G(%ARG("VD"))="IHZ" Q "IHZ"
 I $$GET^%W1PRM("VD")="IHZ" Q "IHZ"
 I $$TM Q "ITM"
 I $G(%ARG("VD"))="IPY" Q "IPY"
 I $$GET^%W1PRM("VD")="IPY" Q "IPY"
 Q "IHB"
 ;
HBZ(STAM)
 I $$CODDOC="IHBZ" Q 1
 Q 0
 ;
ITZ(STAM)
 I $$CODDOC="ITZ" Q 1
 Q 0
 ;
IHZ(STAM)
 I $$CODDOC="IHZ" Q 1
 Q 0
 ;
IPY(STAM)
 I $$CODDOC="IPY" Q 1
 Q 0
 ;
 ;
SHOWALL(SPK,MAX,INVC) ;
 N N,VRM,DT,CODDOC,PRALL,II,ENDCYC,NOM
 I '$G(MAX) S MAX=$$MAX9
 S PRALL=1,ENDCYC=0
 S II=0
 ;
 I $$SORTSPK,'$G(SPK) D  Q
 .N VRM,W4HSB,SPK,CODDOC,NOM,DT
 .S VRM=$$^W4MAIN("VRM") K @VRM
 .
 .S SPK="" F  S SPK=$O(@$$GLS@(SPK),-1) Q:SPK=""  D
 ..F CODDOC="IHB","IHBZ" D
 ...S NOM="" F  S NOM=$O(@$$GLS@(SPK,CODDOC,NOM)) Q:NOM=""  D
 ....I $D(^(NOM))=1,$E(^(NOM),1,5)="\\\\\" K ^(NOM) Q
 ....D ^W4HSBGET(NOM,CODDOC,SPK)
 ....N DT S DT=$G(W4HSB("DT"))
 ....S @VRM@(SPK,DT_"-"_CODDOC_"-"_NOM)=""
 ..
 ..S NOM="" F  S NOM=$O(@VRM@(SPK,NOM)) Q:NOM=""  D
 ...N NOM1 S NOM1=$P(NOM,"-",3,20)
 ...S CODDOC=$P(NOM,"-",2)
 ...D LINEINVC(NOM1,SPK,CODDOC,$G(PRINT),INVC)
 ..
 ..D TOT(SPK)
 .K @VRM
 ;
 D DIR
 ;
 N DRC S DRC=-1
 I $$SORTSPK S DRC=1
 ;
 S DT="" F  S DT=$O(@DIR@(DT),DRC) Q:DT=""  I DT D  Q:ENDCYC
 .I 'SPK D  Q
 ..F CODDOC="IHB","IHBZ" D
 ...S SPK="" F  S SPK=$O(@DIR@(DT,SPK)) Q:SPK=""  D SHOWALL1(DT,CODDOC,SPK,INVC) Q:ENDCYC
 .
 .F CODDOC="IHB","IHBZ" D
 ..D SHOWALL1(DT,CODDOC,SPK,INVC)
 ;
 I $$SORTSPK D TOT(SPK)
 Q
 ;
 ;
SHOWALL1(DT,CODDOC,SPK,INVC) ;
 N NOM
 I '$G(MAX) S MAX=$$MAX9
 N DRC S DRC=-1
 I $$SORTSPK S DRC=1
 S NOM="" F  S NOM=$O(@DIR@(DT,SPK,CODDOC,NOM),DRC) Q:NOM=""  D  Q:ENDCYC
 .D LINEINVC(NOM,SPK,CODDOC,$G(PRINT),INVC)
 Q
 ;
 ;
SHOWSPK(CODDOC) ;
 N N,VRM,DT,PRALL,II,ENDCYC,NOM,GLS
 N MAX I $$SHOWKIND'=1 S MAX=$$MAX9
 ;
 S PRALL=1,ENDCYC=0
 S II=0
 ;
 S VRM=$$^W4MAIN("VRM") K @VRM
 S SPK="" F  S SPK=$O(@$$GLS(CODDOC)@(SPK)) Q:SPK=""  D
 .S NOM="" F  S NOM=$O(@$$GLS(CODDOC)@(SPK,CODDOC,NOM)) Q:NOM=""  D
 ..D CRVRM(SPK,CODDOC,NOM)
 .S NOM="" F  S NOM=$O(@VRM@(SPK,CODDOC,NOM)) Q:NOM=""  D
 ..D LINEINVC($P(NOM,"-",2,20),SPK,CODDOC,$G(PRINT),INVC)
 .D TOT(SPK)
 K @VRM
 ;
 Q
 ;
 ;
CRVRM(SPK,CODDOC,NOM) ;
 N (JB,%ARG,SPK,CODDOC,NOM,VRM)
 ;;S NOM="" F  S NOM=$O(@$$GLS(CODDOC)@(SPK,CODDOC,NOM)) Q:NOM=""  D
 D
 .D ^W4HSBGET(NOM,CODDOC,SPK)
 .I $G(%ARG("MESUM")),$G(W4HSB("TOT"))<%ARG("MESUM") Q
 .I $G(%ARG("ADSUM")),$G(W4HSB("TOT"))>%ARG("ADSUM") Q
 .S DT=$G(W4HSB("DT"))
 .S @VRM@(SPK,CODDOC,DT_"-"_NOM)=""
 Q
 ;
RKVN(RKV,DR) ;
 I $G(DR)="" S DR=2
 N ST S ST=""
 I RKV<0 S ST="<span style=""color:darkred"">"
 S ST=ST_$J(RKV,DR,DR)
 I RKV<0 S ST=ST_"</span>"
 Q ST
 ;
ZV(STAM) ;
 Q "<span style=""color:red"">*</span>"
 ;
INIT ;
 I $G(%ARG("FIRST")) D
 .D KILL^%W1PRM("DAT")
 .D KILL^%W1PRM("LHBCUR")
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 D KILL^%W1PRM("VD")
 I $L($G(%ARG("VD"))) D PUT^%W1PRM("VD",%ARG("VD"))
 D KILL^%W1PRM("DOC")
 I $L($G(%ARG("DOC"))) D PUT^%W1PRM("DOC",%ARG("DOC"))
 D PUT^%W1PRM("IFRURSH",1)
 K @$$^W4MAIN("TMP")
 K @$$^W4MAIN("TMPHM")
 K @$$^W4MAIN("TMPY")
 K @$$^W4MAIN("TMPHB")
 Q
 ;
HEAD ;
 I $$PY D  Q
 .I '$G(%ARG("ADV")) W $$^%W1DICT("PAYMENTS") Q
 .I $G(%ARG("ADV")) W $$^%W1DICT("PAYMENTS2SUPPLIERSINADVANCE") Q
 I $$HBZ D  Q
 .W $$^%W1DICT("INCOMEDEBETINVOICES")
 I $$TM D  Q
 .W $$^%W1DICT("SUPPLDLVDOC")
 I $$ITZ D  Q
 .W $$^%W1DICT("INCOMEDLVBACKDOC")
 I $$IHZ D  Q
 .W $$^%W1DICT("ORDER2SUPPLIER")
 I '$G(%ARG("ARM")) D  Q
 .W $$^%W1DICT("SUPPLINVOICE")
 I $G(%ARG("ARM")) D  Q
 .W $$^%W1DICT("SUPPLSERVICEINVOICE")
 Q
 ;
DIR ;
 S DIR=$$^W4GL("W4INPDIR")
 Q
 ;
INVCHBTM(INVC) ; MERUCEZET
 I +$G(INVC)#2!(+$G(INVC)=0) Q 1
 Q 0
 ;
INVCARM(INVC) ;
 I (+$G(INVC)\2)#2!(+$G(INVC)=0) Q 1
 Q 0
 ;
INVCHB(INVC) ;
 I ($G(INVC)\4)#2!(+$G(INVC)=0) Q 1
 Q 0
 ;
INVCDEB(INVC) ;
 I (+$G(INVC)\8)#2!(+$G(INVC)=0) Q 1
 Q 0
 ;
SHOWHB(N,COODC,SPK) D SHOWPY(N,CODDOC,SPK)
 Q
 ;
SHOWPY(N,CODDOC,SPK) ;
  N (N,CODDOC,SPK,%ARG,JB,%REM,FLCSV) D ^%L1TS
  D ^W4HSBGET(N,CODDOC,SPK)
  I $G(W4HSB("NPY"))?.P W "&nbsp;" Q
  ;
  W "<table width=""100%"" cellspacing=""0"" ><tr>",!
  W " <td width=""55%"">",!
  I W4HSB("NPY")'["," D
  . W " <input type=""text"" size=""4"" id=""hbpy"_N_""" readonly=""readonly"""
  . W " value="""_$P(W4HSB("NPY"),":",2)_""" >",!
  ;
  I W4HSB("NPY")["," D
  .W "<select id=""hbpy"_N_""" >"
  .N K F K=1:1:$L(W4HSB("NPY"),",") D
  ..N DOC S DOC=$P($P(W4HSB("NPY"),",",K),":",2) Q:'DOC
  ..W "<option>"_DOC_"</option>",!
  .W "</select>",!
  W "</td>",!
  ;
  W "<td width=""45%"">"
   I '$$DOCPY(CODDOC) D ROUNDBUT^%W1JS("showpy",$$^%W1DICT("SHOW"),"ShowPayment(GetVl('hbpy"_N_"'),'1','ifr')","color:green","wh,22")
   I $$DOCPY(CODDOC) D ROUNDBUT^%W1JS("showhb",$$^%W1DICT("SHOW"),"ShowSupplInvoice('"_SPK_"',GetVl('hbpy"_N_"'),'ifr','','1')","color:green","wh,22")
  W "</td>",!
  W "</tr></table>",!
  Q
  ;
ALL(STAM) ;
 I $$CODDOC'["IHB" Q 0
 N INVC S INVC=+$G(%ARG("INVC"))
 I INVC=0 Q 1
 I INVC=15 Q 1
 Q 0
 ;
ALLHB(STAM) Q 15 ;9
 ;
DOCTM(CODDOC) ;
 I CODDOC="ITM" Q 1
 Q 0
 ;
DOCHB(CODDOC) ;
 I CODDOC["IHB" Q 1
 Q 0
 ;
IHBTM(SPK,NOM) ;
 I $D(@$$^W4GL("W4INP")@(SPK,"IHB",NOM,"ITM")) Q 1
 I $D(@$$^W4GL("W4INP")@(SPK,"IHB",NOM,"ITZ")) Q 1
 Q 0
 ;
DOCHBZ(CODDOC) ;
 I CODDOC["IHBZ" Q 1
 Q 0
 ;
DOCITZ(CODDOC) ;
 I CODDOC["ITZ" Q 1
 Q 0
 ;
DOCIHZ(CODDOC) ;
 I CODDOC["IHZ" Q 1
 Q 0
 ;
DOCPY(CODDOC) ;
 I CODDOC["IPY" Q 1
 Q 0
 ;
SHOWKIND(STAM) ;
 Q $G(%ARG("SHOWKIND"))
 ;
SHOWLAST(STAM) ;
 Q $$SHOWLAST^W4LHB
 ;
DOCEXIST(PRM) ;
 N SPK,VD,NOM
 S SPK=$P(PRM,";")
 S VD=$P(PRM,";",2)
 S NOM=+$P(PRM,";",3)
 I $G(SPK)=""!($G(VD)="")!($G(NOM)="") Q 0
 ;;I 'NOM Q 0
 I $L(VD)>4,$E(VD,$L(VD)-1,$L(VD))="TM" S VD=$E(VD,1,$L(VD)-2)
 I $D(@$$^W4GL("W4INP")@(SPK,VD,NOM))=11,$$NEWMLY^W3PRM Q 1
 I $D(@$$^W4GL("W4INP")@(SPK,VD,NOM)),'$$NEWMLY^W3PRM Q 1
 Q 0
 ;
IHBZ(STAM) ;
 I $G(%ARG("VD"))="IHBZ" Q 1
 I $$GETP^%W1PRM("VD")="IHBZ" Q 1
 Q 0
 ;
OFINVC(PRM) ;
 N SPK,VD,NOM
 S SPK=$P(PRM,";")
 S VD=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 I $G(SPK)=""!($G(VD)="")!($G(NOM)="") Q 0
 I '$D(@$$^W4GL("W4INP")@(SPK,VD,NOM)) Q 0
 S OK=+$G(@$$^W4GL("W4INP")@(SPK,VD,NOM,"IHB"))
 I 'OK S OK=+$G(@$$^W4GL("W4INP")@(SPK,VD,NOM,"IHBZ"))
 Q OK
 ;
FREE(PRM) ;
 N SPK,VD,NOM
 S SPK=$P(PRM,";")
 S VD=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 I $G(SPK)=""!($G(VD)="")!($G(NOM)="") Q 0
 I $D(@$$^W4GL("W4FREE")@(SPK,VD,NOM)) Q 1
 Q 0
 ;
NODET(SPK,VD,NOM) ;
 Q $$NODET^W4SPHBY(SPK,VD,NOM)
 ;
CLOSEBYHB(SPK,CODDOC,N) ;
 I $D(@$$^W4GL("W4INP")@(SPK,CODDOC,N,"IHB")) Q 1
 I $D(@$$^W4GL("W4INP")@(SPK,CODDOC,N,"IHBZ")) Q 1
 Q 0
 ;
DELETED(SPK,CODDOC,N) ;
 I $D(@$$^W4GL("W4INP")@(SPK,CODDOC,N,"DELETED")) Q 1
 Q 0
 ;
ORDOPEN(ORDKND) ;
 I ORDKND#2 Q 1
 Q 0
 ;
ORDCLOSED(ORDKND)
 I (ORDKND\2)#2 Q 1
 Q 0
 ;
ORDDEL(ORDKND) ;
 I (ORDKND\4)#2 Q 1
 Q 0
 ;
OPCSV ;
 D OPCSV^W4EX("W4SPDOC")
 Q
 ;
CLCSV ;
 D CLCSV^W4EX
 Q
 ;
DIRL(STAM) ;
 N DIR S DIR=$$WEBL^W3MAIN_+$$GET^%W1PRM("MSD")_"/"
 Q DIR
 ;
EXCEL(STAM) ;
 Q $$EXCEL^W4EX
 ;
SORTSPK(STAM) ; 
 Q $G(%ARG("SORTSPK")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPFIND
W4SPFIND(FIND,GLOB) ; [ 04.11.19 16:57 ] [ 08.11.09 08:20 ] [ 30.05.09 21:27 ] 
 N (JB,FIND,GLOB,%ARG)
 S FIND=$G(FIND)
 D PUT^%W3DEB("W4SPFIND","FIND=FIND")
 ;;I FIND="" Q
 S GLOB=$G(GLOB)
 S:$E(GLOB)="^" GLOB=$E(GLOB,2,20)
 S:GLOB="" GLOB="PAR"
 S GL=$$^W4GL(GLOB)
 ;
 K ^[$$^W3MAIN]TMPST(JB)
 I FIND'="" D
 .S FIND=$$SPA^%L1FRM($$CLEAR^%L1FRM(FIND))
 .S FIND=$$CNWEB^%L1FRM(FIND)
 .S FIND=$$INVH^%L1FRM(FIND)
 ;
 S ITEM=""
 I FIND="" D  G VIEW
 .F  S ITEM=$O(@GL@(ITEM)) Q:ITEM=""  D ADDTBL(ITEM)
 ;
 F  S ITEM=$O(@GL@(ITEM)) Q:ITEM=""  I (" "_$$SHEM(ITEM)_" ")[(FIND_" ")  D ADDTBL(ITEM)
 ;
VIEW ;
 W "<table dir="""_$$^%W1DIR_""" id=""TblSp"" width=""100%"" >",!
 S ITEM="" F  S ITEM=$O(^[$$^W3MAIN]TMPST(JB,ITEM))  Q:ITEM=""  D
 .W "  <tr>"
 . W "<td id=""tdid"_ITEM_""" align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
 . W "<a href=""#"" onClick=""ClickItem('"_ITEM_"','"_$$H2U^%L1FRM($$SHEM(ITEM))_"')"" "
 .  I GLOB="NAME",'$$GET1^W4LEVPR(ITEM,"PAIL") W "style=""color:lightgrey"" "
 . W ">"
 .  W ITEM_" &nbsp; "_$$H2U^%L1FRM($$SHEM(ITEM))
 . W "</a>"
 . W "</td>",!
 . I GLOB="NAME" W "<td>"_$$H2U^%L1FRM($$KVZ1^W4LEVPR(ITEM))_"</td>"
 . W "</tr>",!
 W "</table>",!
 Q
ADDTBL(ITEM) ;
 S ^[$$^W3MAIN]TMPST(JB,ITEM)=""
 Q
SHEM(ITEM) ;
 N A S A=$G(@GL@(ITEM))
 I $G(GLOB)="NAME" S A=$G(@GL@(ITEM,1))
 S A=$P(A,"**")
 S A=$P(A,"\")
 Q A
 
 
 
 
 
 

W4SPHBY
W4SPHBY ; [ 04.02.24 15:43 ] [ 29.01.19 07:00 ] [ 28.02.14 15:36 ] 
 N (JB,%ARG,%REM)
 N SPK S SPK=$G(%ARG("SPK"))
 S NOM=+$G(%ARG("NOM"))
 S VD=$G(%ARG("VD"))
 S SHOW=0
 S NODET=1
 S EXIST=$$DOCEXIST^W4SPDOC(SPK_";"_VD_";"_NOM)
 S EDIT=$$EDIT(SPK_";"_VD_";"_NOM)
 D PUT^%W3DEB("W4SPHBY","SPK=SPK&NOM=NOM&VD=VD&EDIT=EDIT&NODET=NODET")
 ;
 ;
 S DAT=""
 D ^W4HSBGET(NOM,VD,SPK) S DAT=$$DAT
 ;
 I 'DAT S DAT=$ZD($H,"DD.MM.YY")
 D KOTHSB(NOM,SPK,DAT,VD)
 ;
 D DAF
 ;
 W "<br/>"
 W "<div id=""divbut"" align=""center"" dir="""_$$^%W1DIR_""">"
 I $G(W4HSB("PAID")) D
 .W "<span style=""color:red;font-weight:bold"">"_$$^%W1DICT("INVOICEPAIDNOCHANGE")_"</span>",!
 .W "<br /><br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"" align=""center"" >",!
  W "<tr>"
   I $G(EDIT) D
   .W "<td align=""center"">"
   .  D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_VD_"','"_SPK_"','"_NOM_"')","color:green",",,,100")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   ;
   I $G(EXIST),'$G(EDIT) D
   .W "<td align=""center"">"
   .  D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_VD_"','"_SPK_"','"_NOM_"')","color:black",",,,100")
   .W "</td>"
   .W "<td>&nbsp;</td>"
   .
   .I '$G(W4HSB("PAID")),'$G(%ARG("VIEWONLY")),$G(EXIST) D
   ..W "<td align=""center"">"
   ..  D ROUNDBUT^%W1JS("Update",$$^%W1DICT("UPDATE"),"Update('"_VD_"','"_SPK_"','"_NOM_"')","color:blue",",,,100")
   ..W "</td>"
   ..W "<td>&nbsp;</td>"
   ..W "<td align=""center"">"
   ..  D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("DELETE"),"Delete('"_VD_"','"_SPK_"','"_NOM_"')","color:darkred",",,,100")
   ..W "</td>"
   ..W "<td>&nbsp;</td>"
   ;
   W "<td align=""center"">"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
KOTHSB(NOM,SPK,DAT,PR,EDIT) ;
 D ^W4KOTINP(NOM,SPK,DAT,PR,$G(EDIT))
 Q
 ;
TD W "<td width=""30%"">"
 Q
TDLTR W "<td dir=""LTR"" "_$$^%W1ALIGN
 Q
 ;
 ;
DAF ;
 N (JB,%ARG,SPK,DAT,NOM,VD,SHOW,EDIT,NODET,W4HSB)
 ;
 I $G(NOM) D ^W4HSBGET(NOM,VD,SPK)
 ;
 S WD=80
 I $$NEWMLY^W3PRM S WD=$S($$TM^W4SPDOC!$$ITZ^W4SPDOC:30,1:70)
 ;
 W "<br />",!
 W "<table id=""TblInvoice"" width="""_WD_"%"" cellpadding=""5"" border=""0"" "
  W "style=""padding:15px;border:ridge;2px"" dir="""_$$^%W1DIR_""""
 W ">",!
 W "<tr>"
  ;
  S W4SPK=""
  W "    <td colspan=""1"">"_$$^%W1DICT("DATE")_"</td>"
  W "    <td dir=""LTR"" "_$$^%W1ALIGN_" >" D SHOWDAT($G(DAT),NOM) W "</td>"
  I '$$TM^W4SPDOC,'$$ITZ^W4SPDOC D
  .W "    <td width=""15%"">&nbsp;</td>"
  .W "    <td colspan=""1"" "_$$^%W1ALIGN_" >"_$$^%W1DICT("PAYMENTDATE")_"</td>"
  .W "    <td dir=""LTR"" "_$$^%W1ALIGN_" >" D SHOWPDAT($G(DAT),SPK,NOM) W "</td>"
  W "</tr>",!
  ;
  I NODET D
  .W "<tr><td>"_$$^%W1DICT("DESCRIPTION")_"</td>"
  .W "    <td colspan=""5"">"_$$INP(NOM,"descr",85,"H","",1)_"</td>"
  .W "</tr>",!
  .W "<tr><td>"_$$^%W1DICT("BEFORETAX")_"</td><td>"_$$INP(NOM,"sumbft",7,2," onKeyUp=""OnChangeSum('1')"" ")_"</td>"
  .S AHMAM=$$MAMD^W4L(+$H)
  .I $G(NOM),$G(W4HSB("SPK")) S AHMAM=$G(W4HSB("AHMAM"))
  .W "    <td colspan=""2"">"_$$^%W1DICT("TAX")_"<span id=""ahmam"" >"_AHMAM_"</span>%&nbsp;&nbsp;&nbsp;"_$$INP(NOM,"tax",7,2,"readonly=""readonly"" ")_"</td>"
  .W "    <td colspan=""2"">"_$$^%W1DICT("AFTERTAX")_"&nbsp;&nbsp;&nbsp;"_$$INP(NOM,"sumaft",7,2," onKeyUp=""OnChangeSum('2')"" ")_"</td>"
  .W "</tr>",!
  ;
  I VD'="IHBZ",VD'="ITM",VD'="ITZ" D
  .W "<tr><td>"_$$^%W1DICT("PAID")_"</td><td id=""paid"">"_$$PAID_"</td>"
  .W " <td colspan=""2"">"_$$^%W1DICT("PAYMENTNUMBER")_$$SPC(8)_"<b>"_$$PAYMENT_"</b></td>"
  .W " <td colspan=""2"">"_$$^%W1DICT("ITRA")_$$SPC(10)_"<span id=""itra"" style=""font-weight:bold;color:red"">"_$$ITRA_"</span></td>"
  .W "</tr>",!
  ;
  I NODET D
  .W "<tr>"
  .I EDIT D
  ..W "<td colspan=""2"" >"
  .. D ROUNDBUT^%W1JS("Upload",$$^%W1DICT("UPLOADPICTURE"),"Upload(event)","color:darkblue",",,,180")
  ..W "</td>",!
  .I NOM,$$PICDOC(NOM)'="" D
  ..W "<td colspan=""2"" >"
  .. D ROUNDBUT^%W1JS("Show",$$^%W1DICT("SHOWDOCUMENT"),"ShowDoc('"_$G(NOM)_"')","color:darkred",",,,180")
  ..W "</td>",!
  .W "</tr>",!
 W "</table>",!
 Q
 ;
PUT(PRM) ; -- SAVE NEW INVOICE
 N (JB,%ARG,%REM,PRM)
 D PUT^%W3DEB("W4SPHBY-PUT","PRM=PRM")
 ;
 D PRS^%L1FRM(PRM,"EDIT;VD;SPK;NUMBER;DAT;PDAT;DESCR;SUM;MAM;PIC;HRA",";")
 N I
 F I="VD","SPK","NUMBER","DAT","PDAT","DESCR","SUM","MAM","PIC","HRA" D
 .S @I=$TR($G(@I),"\","/")
 ;
 I '$L(VD) Q "-1;DOCKINDISWRONG"
 ;
 S GLS=$$^W4GLS I GLS="" Q "-2;DOCKINDISWRONG"
 ;
 I $G(NUMBER)="" Q "-3;DOCNUMBERISWRONG"
 I '$G(SPK) Q "-4;SUPPLNUMBERISWRONG"
 ;
 N STHD S STHD=$G(@$$^W4MAIN("TMPHB"))
 ;
 I $D(@GLS@(SPK,VD,NUMBER)),'EDIT Q "-5;DOCEXIST"
 ;
 S DTOLD=$P(STHD,"\",4)
 I $D(@GLS@(SPK,VD,NUMBER)),EDIT,DTOLD D
 .S DTOLD=$$^%L1DC(DTOLD,3)
 .K @$$^W4INPDIR@(DTOLD,SPK,VD,NUMBER)
 ;
 L +@GLS@(SPK,VD,NUMBER):1
 ;
 K @GLS@(SPK,VD,NUMBER)
 S $P(STHD,"\",4)=DAT
 S AHMAM=$$MAMD^W4L($$^%L1DC(DAT,3))
 S $P(STHD,"\",5)=AHMAM
 S MAM=$J(SUM*AHMAM/(100+AHMAM),2,2)
 S $P(STHD,"\",6)=SUM
 S $P(STHD,"\",7)=MAM
 S $P(STHD,"\",8)=$ZD($H,"DD.MM.YY  24:60")
 S $P(STHD,"\",9)=$$HBR(HRA)
 S $P(STHD,"\",16)=$$HBR(DESCR)
 S $P(STHD,"\",17)=PDAT
 ;
 D SETITRA^W4SPK(SPK,$S(VD="IHBZ":-SUM,1:SUM))
 ;
 S @GLS@(SPK,VD,NUMBER)=STHD
 N DT S DT=$$^%L1DC(DAT,3)
 S @$$^W4INPDIR@(DT,SPK,VD,NUMBER)=$H
 ;
 L -@GLS@(SPK,VD,NUMBER)
 ;
PUTE ;
 ;;K @$$^W4MAIN("TMPHB")
 Q NUMBER
 ;
 ;
HBR(TXT) ;
 S TXT=$$CNWEB^%L1FRM(TXT)
 Q $$INVH^%L1FRM(TXT)
 ;
INP(NOM,ID,LN,PR,DOP,NOMXL) ;
 N VL S VL=""
 I $G(NOM) D  I '$G(EDIT) Q $$RKV(VL)
 .N FNC S FNC=$$FUNC^%UCASE(ID)
 .X "S VL=$$"_FNC
 .I $G(PR)="H" S VL=$$H2U^%L1FRM(VL)
 .I $G(PR)?1N.N D
 ..S VL=$J($S(VD="IHBZ":-VL,1:VL),PR,PR)
 ..I VD="IHBZ",'$G(EDIT) D
 ...S VL="<span style=""color:red"">"_$J(VL,PR,PR)_"</span>"
 ;
 N W S W="<input type=""text"" size="""_LN_""" "
 I '$G(NOMXL) S W=W_" maxlength="""_LN_""" "
 I ID'="descr" S W=W_" onClick=""this.select()"" "
 I $G(PR)="H" S W=W_" dir=""RTL"""
 E  S W=W_"  dir=""LTR"""
 N COLOR I VD="IHBZ" S COLOR=$S(VL'<0:"red",1:"black")
 E  S COLOR=$S(VL'<0:"black",1:"red")
 S W=W_" style=""color:"_COLOR_""" "
 S W=W_" id="""_ID_""""
 I $L($G(DOP)) S W=W_" "_DOP
 ;
 I $G(NOM) D
 .S W=W_" value="""_VL_""" "
 S W=W_">"
 ;
 Q W
 ;
 ;
DELETE(PRM) ;
 N VD,SPK,NOM,OK,W4HSB
 S OK=$$GETPRM(PRM) I 'OK Q OK  ; --> VD,DPK,NOM
 N GLS S GLS=$$^W4GLS I GLS="" Q "PRMWRONG"
 N GLSB S GLSB=$E(GLS,1,$L(GLS)-1)
 I '$D(@GLS@(SPK,VD,NOM)) Q "NOTDOCNMB"
 N GLSD S GLSD=$$^W4GLS("DEL")
 M @GLSD@(SPK,VD,NOM)=@GLS@(SPK,VD,NOM)
 N GLSDB S GLSDB=$E(GLSD,1,$L(GLSD)-1)
 D ^%S3GLSV(GLSDB_","""_SPK_""","""_VD_""","""_NOM_""")",$$^W4FGIB)
 D ^W4HSBGET(NOM,VD,SPK)
 I $G(W4HSB("DT")) D
 .K @$$^W4INPDIR@(W4HSB("DT"),SPK,VD,NOM)
 .D ^%S3GLSV($$^W4INPDIR_"("""_W4HSB("DT")_""","""_SPK_""","""_VD_""","""_NOM_""")",$$^W4FGIB,"K")
 K @GLS@(SPK,VD,NOM)
 D TIKITRA^W4SPK(SPK)
 D ^%S3GLSV(GLSB_","""_SPK_""","""_VD_""","""_NOM_""")",$$^W4FGIB,"K")
 Q 1
 ;
INVOICENMB(STAM)
 Q $G(NOM)
 ;
SPK(STAM) ;
 Q $G(W4HSB("SPK"))
 ;
SPK1(STAM) ;
 Q $G(W4HSB("SPKNAME"))
 ;
DAT(STAM) ;
 Q $G(W4HSB("TODATE"))
 ;
PDAT(STAM) ;
 Q $G(W4HSB("PDATE"))
 ;
DESCR(STAM) ;
 Q $G(W4HSB("DESCR"))
 ;
SUMBFT(STAM) ;
 Q $G(W4HSB("LMAM"))
 ;
SUMAFT(STAM) ;
 Q $G(W4HSB("TOT"))
 ;
TAX(STAM) ;
 Q $G(W4HSB("MAM"))
 ;
PAID(STAM) ;
 Q $G(W4HSB("PAID"))
 ;
PAYMENT(STAM) ;
 Q $P($G(W4HSB("NPY")),":",2)
 ;
ITRA(STAM) ;
 Q $J($G(W4HSB("TOT"))-$G(W4HSB("PAID")),2,2)
 ;
SHOWDAT(DAT,NOM) ;
 N DT
 I '$G(EDIT),$G(DAT) W $$RKV($$^%L1DC(DAT,".")) Q
 ;
 I $G(DAT) S DT=$$^%L1DC(DAT,3)
 I '$G(DAT) S DT=+$H
 D ^%W1DAT("DAT",DT)
 Q
 ;
SHOWPDAT(DAT,SPK,NOM) ;
 D PUT^%W3DEB("W4HSBY-SHOWPDAT","DAT=DAT&SPK=SPK&NOM=NOM")
 N DT
 I $G(DAT) S DT=$$^%L1DC(DAT,3)
 I '$G(DAT) S DT=+$H,DAT=$ZD(DT,"DD.MM.YY")
 N PDAT S PDAT=$$PDAT
 I 'PDAT S PDAT=$$PDATE^W4HSBGET(SPK,DAT)
 D PUT^%W3DEB("W4HSBY-SHOWPDAT","PDAT=PDAT")
 I '$G(EDIT) W $$RKV(PDAT) Q
 ;
 N DTP S DTP=$$^%L1DC(PDAT,3)
 D ^%W1DAT("PDAT",DTP)
 Q
 ;
RKV(TXT) ;
 Q "<font style=""font-weight:bold"">"_TXT_"</font>"
 ;
GETTMP(PRM) ;
 D PUT^%W3DEB("W4SPHBY-GETTMP","PRM=PRM")
 N VD,SPK,NOM,OK
 S OK=$$GETPRM(PRM) I 'OK Q OK
 ;
 K @$$^W4MAIN("TMPHB")
 S @$$^W4MAIN("TMPHB")=$G(@$$^W4GLS@(SPK,VD,NOM))
 I $P($G(@$$^W4MAIN("TMPHB")),"\")="" D
 .S $P(@$$^W4MAIN("TMPHB"),"\")=SPK
 Q 1
 ;
GETPRM(PRM) ;
 S VD=$P(PRM,";")
 S SPK=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 I VD="" Q "NOVD"
 I 'SPK Q "NOSPK"
 I 'NOM Q "NONOM"
 Q 1
 ;
SPC(N) ;
 N SP,J S SP=""
 F J=1:1:N S SP=SP_"&nbsp;"
 Q SP
 ;
PICDOC(NOM) ;
 N MSD
 S MSD=$$GET^%W1PRM("MSD")
 N PATH,PATHL,TYPE,NOPIC,PICNAME,FLPIC,FLPICL,NOPIC
 S PATH=$$WEB^W3MAIN
 S PATH=PATH_MSD_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_MSD_"/itp/"
 S TYPE="jpg"
 S:'$D(PRE) PRE="IHB"
 ;
 S NOPIC=PRE_"logo."_TYPE
 I NOM="" Q ""  ;Q "0~"_PATH_NOPIC
 ;
 S PICNAME=PRE_NOM_"."_TYPE
 S FLPIC=PATH_PICNAME
 S FLPICL=PATHL_PICNAME
 I '$$EXIST^%L1ZOS(FLPICL) Q "" ;;Q "1~"_PATH_NOPIC
 D PUT^%W3DEB("W4SPHBY-PIC","CD=CD & FLPICL=FLPICL & FLPIC=FLPIC")
 Q FLPICL_"~"_FLPIC
 ;
INIT ;
 D ^%W1ARG,^W3CSS Q:'$G(%ARG("FIRST"))
 K @$$^W4MAIN("TMPHB")
 N SPK,STHD
 S SPK=$G(%ARG("SPK")) Q:SPK=""
 D PUT^%W1PRM("SPK",SPK)
 S $P(STHD,"\")=SPK
 I SPK,'$G(%ARG("EDIT")) D
 .S $P(STHD,"\",2)=$$NAME^W4SPK(SPK)
 .S $P(STHD,"\",3)=$$KTVM^W4SPK(SPK)
 .S $P(STHD,"\",15)=$$TZ^W4SPK(SPK)
 S @$$^W4MAIN("TMPHB")=STHD
 S %ARG("NOM")=+$G(%ARG("NOM"))
 Q
 ;
NODET(SPK,VD,NOM)
 I $G(VD)="" Q '$$NEWMLY^W3PRM
 I $G(SPK)="" Q '$$NEWMLY^W3PRM
 I VD="ITM"!(VD="ITZ") Q 0
 I '$G(NOM) Q '$$NEWMLY^W3PRM
 I NOM["[-]" S NOM=+NOM,VD="IHBZ"
 N TOT S TOT=$P($G(@$$^W4GL("W4INP")@(SPK,VD,NOM)),"\",6)
 I '$D(@$$^W4GL("W4INP")@(SPK,VD,NOM)) Q 1
 I $D(@$$^W4GL("W4INP")@(SPK,VD,NOM)),'$D(@$$^W4GL("W4INP")@(SPK,VD,NOM,1)) Q 1
 Q 0
 ;
EDIT(PRM)
 N EDIT,EXIST,SPK,VD,NOM S EDIT=0
 S SPK=$P(PRM,";")
 S VD=$P(PRM,";",2)
 S NOM=$P(PRM,";",3)
 ;
 S EXIST=$$DOCEXIST^W4SPDOC(SPK_";"_VD_";"_NOM)
 I $G(%ARG("EDIT")) S EDIT=1
 I 'EXIST S EDIT=1
 Q EDIT
 
 
 
 

W4SPIDK
W4SPIDK ; [ 17.06.26 10:59 ] [ 23.04.26 13:40 ] [ 02.09.25 19:44 ] 
 N (JB,%ARG,%REM,SRCH)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$D(JB) W " JB number is not defined ! " Q
 N SRCH S SRCH=$$INVH^%L1FRM($G(%ARG("SRCH")))
 D SETGL
 I $G(%ARG("GLOB"))="P1SL",$$SLAU^W4PRM S %ARG("VIEW")=1
 D PUT^%W3DEB("W4SPIDK","%ARG=[%ARG & SRCH=SRCH")
 D PUT^%W1PRM("TMP",$G(%ARG("TMP")))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" "
  D
  .;;I $$^W4TABLET=2 W "style=""height:100%;overflow-x:auto"" "  Q
  .W "style=""height:86%"" "  Q
 W ">",!
 S WD=60+($$COLDOP*10)
 I WD>100 S WD=100
 ;
 I $$SCR="W4PSWDRG" D
 .N A
 .W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
 . W "<tr>"
 .  W "<td>"
 .   W $$^%W1DICT("PSWPREFIX")
 .   W " <input type=""text"" id=""prefix"" size=""1"" "
 .   W " onClick=""this.select()"" "
 .   W "  maxlength=""1"" value="""_$G(@$$^W4PRM@("BGPSW"))_""" />"
 .  W "</td>"
 .  W "<td>"
 .    W $$^%W1DICT("SHOWACTWORKERSONLY") 
 .    W "<input type=""checkbox"" id=""act"" "_$S($$GETP^%W1PRM("ACTWORKERS"):"checked=""checked"" ",1:"")_" onClick=""ShowActWorkersOnly(this)"" />",!
 .  W "</td>"
 .  W "<td>"
 .   W $$^%W1DICT("SORTINGPERCODE") W "<input type=""radio"" name=""sort"" "_$S(+$G(%ARG("SORT"))=0:"checked=""checked"" ",1:"")_" onClick=""SortName()"" />"
 .   W $$^%W1DICT("SORTINGPERNAME") W "<input type=""radio"" name=""sort"" "_$S(+$G(%ARG("SORT")):"checked=""checked"" ",1:"")_" onClick=""SortName()""/>"
 .  W "</td>" 
 . W "</tr>",!
 .W "</table>",!
 ;
 I $$SCR="SHULHAN" D
 .N A
 .W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
 . W "<tr>"
 .  W "<td>"
 .   W "<select id=""sugs"" onChange=""ChangeSugS()"" >",!
 .    W "<option value=""ALL"">"_$$^%W1DICT("ALLTABLEGROUPS")_"</option>",!
 .    W "<option value=""NONE"">"_$$^%W1DICT("TABLESWITHOUTGROUP")_"</option>",!
 .    S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D
 . .   S A=$G(^(N))
 . .   W "<option value="""_N_""" "
 . .   I $G(%ARG("SUGS")),N=$G(%ARG("SUGS")) W " selected=""selected"" "
 . .   ;;I '$G(%ARG("SUGS")),N=1 W " selected=""selected"" "
 . .   W ">"_$$H2U^%L1FRM(A)_"</option>",!
 .  W "</select>",!
 .  W "</td>"
 . W "</tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 I $$SCR="W4MVC11" D
 .N A
 .W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
 . W "<tr>"
 .  W "<td>"
 .   W $$^%W1DICT("ITEMCODE4SALE11")
 .   W $$NBSP^%L1FRM(2)
 .   W " <input type=""text"" id=""itemcode"" size=""8"" "
 .   W " onClick=""this.select()"" style=""font-size:"_$$^W3FSZ(11)_""""
 .   W " onChange=""ChangeItCode()"" "
 .   W "  maxlength=""8"" value="""_$G(@$$^W4PRM@("CD11"))_""" />"
 .   W $$NBSP^%L1FRM(3)
 .   D ^W4BUTTON("srch","SEARCH","Find('itemcode','PAR')","font-size:"_$$^W3FSZ(11)_";color:blue")
 .  W "</td>"
 .  W "<td>"
 .   W $$^%W1DICT("ASKBEFORE11")_"&nbsp;&nbsp;"
 .   W "<input type=""checkbox"" id=""ask11"" "
 .    I $$NOASK11^W4PRM=0 W " checked=""checked"" "
 .   W " />"
 .  W "</td>"
 . W "</tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 I $$PRINT,'$$VIEW D
 .W "<table style=""font-size:"_$$^W3FSZ(16)_""" width=""99%""><tr>"
 . W "<td width=""25%"">"
 .  D HEADFUNC
 . W "</td>"
 . W "<td width=""50%"">"
 . D NAME^%W1HD($$TBLNAME) 
 . W "</td>"
 .W "</tr></table>",!
 .W "<br>",!
 ;
 I $$SCR="W4MDP" D
 .W $$^%W1DICT("SHOWFIRELIST")
 .W "&nbsp;&nbsp;<input id=""fire"" type=""checkbox"" "
 .W " onClick=""ChangeFire(this)"" "
 .I $$GETP^%W1PRM("MDPFIRE") W "checked=""checked"" "
 .W ">"
 .W "<br>",!
 ;
 I $$SCR="W4LEVTB"!($$SCR="W4TBSLR") D
 .W $$^%W1DICT("SHOWACTWORKERSONLY")
 .W "&nbsp;&nbsp;<input id=""fire"" type=""checkbox"" "
 .W " onClick=""ShowActWorkersOnly(this)"" "
 .I $$GETP^%W1PRM("ACTWORKERS") W "checked=""checked"" "
 .W ">"
 .W "<br>",!
 ;
 I $$SCR="W4DEV" D
 .W $$^%W1DICT("MYADDR")_" : "_%REM,!
 ;
 I $L($G(%ARG("SEARCH"))) D
 .I $G(%ARG("GLOB"))="PARSUG" D  Q
 ..W "<table width=""40%"" border=""0"">"
 .. W "<tr>",!
 ..  W "<td>"
 ..   D SORTSUG("")
 ..  W "</td>"
 ..  W "<td>&nbsp;</td>"
 ..I $$^W4TABLET'=2 D
 ...  W "<td><br>"
 ...   D SEARCH^%W1FREPA($G(SRCH))
 ...  W "</td>"
 .. W "</tr>",!
 ..W "</table>",!
 .
 .D SEARCH^%W1FREPA($G(SRCH))
 ;
 W "<br>",!
 ;
 S WDTBL=87
 I $$1024^W4WDSCR S WDTBL=98
 W $$^W4DVTBFX(WDTBL_"%"),!
 W "<table align=""center"" id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_WD_"%"" "
  ;;W "style=""font-size:"_$$^W3FSZ(10)_";height:80%" ; ***
  W """ "
 W ">",!
 W "<thead class=""hdfix"">",!; ***
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3PRM)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3PRM)_""""
 W " >"
 N WD1 S WD1="3%"
 I $$NODEL S WD1="2%"
 I '$$PRINT W "<th width="""_WD1_""">&nbsp;</th>"
 ;;I '$$PRINT W "<th>&nbsp;</th>"
 W "<th >"_$$H2U^%L1FRM($$KEYNAME)_"</th>"
 W "<th >"_$$H2U^%L1FRM($$NAME(0))_"</th>"
 F J=1:1:$$COLDOP D
 .W "<th>"_$$H2U^%L1FRM($$NAME(J))_"</th>"
 ;
 I '$$PRINT W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 W "</thead>",!
 W "<tbody>",!
 N N,I
 D GLOB Q:$G(GLOB)=""
 ;
 I GLOB0="PARSUG" D CRSUG
 ;
 D GET ; -- CREATE GLOB IF NEED
 ;
 D GLTMP
 ;
 N GLOBT S GLOBT=GLOB
 ;
 N N
 I $G(GLOB0)="PARSUG"!($$SCR="W4PSWDRG") S GLOBT=$$CRGLOBT(GLOB)
 ;
 S N0="",I=0
 I $G(%ARG("GLOB"))="P1SL" S N0=.9
 F  S N0=$O(@GLOBT@(N0)) Q:N0=""  Q:N0>999&($$SCR="SHULHAN")  D
 .S N=N0
 .I $G(GLOB0)="PARSUG",$G(%ARG("SORT"))>1 S N=$G(@GLOBT@(N0))
 .I $$SCR="W4PSWDRG",$G(%ARG("SORT"))=1 S N=$G(@GLOBT@(N0))
 .
 .I $$SCR="SHULHAN",N<1 Q 
 .I '$$COND(N) Q
 .
 .W "<tr id=""tr"_N_""" "
 .I $$SCR="W4LEVTB"!($$SCR="W4TBSLR"),'$$GET1^W4LEVPR(N,"PAIL") W "style=""background-color:pink"" "
 .W ">" S I=I+1
 .I $$NODEL,'$$PRINT W "<td style=""background-color:#eaeaea"">"_I_"</td>",!
 .I '$$NODEL,'$$PRINT D
 ..N PR S PR=0 I GLOB0="PARSUG",$$HASITEMS(N) S PR=1
 ..
 ..D PLUSMIN(N,PR)
 .
 .W "<td id=""cd"_N_""" "
 . I $$KEYD W " align=""center"" "
 .W ">&nbsp;"_$$KEYVL(N)_"&nbsp;"
 .I GLOB0="PARSUG",$$HASITEMS(N) D
 ..W "&nbsp;<input type=""button"" value="""_$$^%W1DICT("SHOWCONT")_""" "
 ..W " onClick=""ClickGroup('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center"" valign=""center"""
 .I $$ENGNAME^W4TABL($$ARG)!($$TYP^W4TABL($$ARG)'="H") W " dir=""LTR"" "
 .W " >&nbsp;"
 .W $$INPUT(N) ;;I 'SEL S CHN=1
 .W "</td>",!
 .S CHN=0
 .;
 .F J=1:1:$$COLDOP D
 ..W "<td align=""center"" valign=""center"" "
 ..W $S($$TYP(J)="H"!($E($$TYP(J))="C")!($$GL(J)'=""&'$$GL(J)):" dir=""RTL""",1:" dir=""LTR""")
 ..W " >&nbsp;"
 .. S SEL=0
 .. W $$INPUT(N_";"_J_";"_$$DFLT(J)) ;;I 'SEL S CHN=1
 ..W "</td>",!
 .;
CHN .I '$$PRINT D
 ..W "<td align=""center"">"
 .. W "<input name=""chn"" id=""chn"_N_""" type=""checkbox"" "_$S(CHN:"checked=""checked""",1:"")_" disabled=""disabled"" />"
 ..W "</td>",!
 .W "</tr>",!
 .I $$SCR="W4ORDPLC" W $$ORDPLC2(N)
 ;
 ;;K @$$^W4MAIN("VRMT")
 W "</tbody>",!
 W "</table>",!
 W "</div>",!
 W "</div>",!
 ;
 I $$KBVRT^W4PRM D
 .D SETTOPSP
 .D ^W4KBABCL
 Q
 ;
 ;
PLUSMIN(N,PR) ;
 D ^W4PLMIN(N,$G(PR))
 Q
 ;
SETTOPSP ;
 N TOP S TOP=$S($$1024^W4WDSCR:500,1:585)
 D PUT^%W1PRM("ABCTOPDN",TOP)
 D SETTOP^W4KBABC(TOP)
 S TOP=$S($$1024^W4WDSCR:650,1:700)
 D PUT^%W1PRM("ABCTOPDNVIS",TOP)
 Q
 ;
 ;
SAVE(PRM) ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;S ^AA("W4SPIDK-SAVE","PRM")=PRM
 ;
 N CD,NM,NM1,MH,DESC,GR,SHOW,SCR,LSCR
 S CD=$P(PRM,";")
 ;
 N GLOB D GLOB
 D PUT^%W3DEB("W4SPIDK-SAVE","GLOB=GLOB & CD=CD")
 ;
 I $D(@$$^W4MAIN("TMPDEL")@(CD)) D  Q 1
 .K @$$^W4MAIN("TMPDEL")@(CD)
 .K @GLOB@(CD)
 ;
 D GLTMP
 ;
 S NM=$$CNWEB^%L1FRM($P(PRM,";",2))
 D
 .I $$^%W1DIR'="RTL" S NM1=NM Q
 .I $$^%W1LNG="E" S NM1=NM Q
 .I $$ENGNAME^W4TABL($$ARG) S NM1=NM Q
 .I $$TYP^W4TABL($$ARG)="E" S NM1=NM Q
 .S NM1=$$INVH^%L1FRM(NM)
 ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;;S ^AA("W4SPIDK-SAVE","SCR")=SCR
 ;;S ^AA("W4SPIDK-SAVE","LSCR")=LSCR
 I LSCR,$D(@W4SP@(SCR,"SAVE"))#2 X @W4SP@(SCR,"SAVE") Q 1
 ;
 I LSCR,$D(@W4SP@(SCR,"PUT",0))#2 X @W4SP@(SCR,"PUT",0)
 ;
 I LSCR,'($D(@W4SP@(SCR,"PUT",0))#2),'$$PUTMUST D
 .I $D(@W4SP@(SCR,"GET",0,"OU")) Q
 .I $L($G(@GLOB@(CD))),'$L(NM1) Q
 .S @GLOB@(CD)=NM1
 ;
 I 'LSCR,$L(NM1) D
 .S @GLOB@(CD)=NM1
 ;
 N J F J=3:1:$L(PRM,";") D
 .S NM=$$CNWEB^%L1FRM($P(PRM,";",J))
 .I $$TYP(J-2)="H",$$^%W1DIR="RTL" S NM=$$INVH^%L1FRM(NM)
 .D
 ..;;S ^AA("W4SPIDK-SAVE","CMD",J)=$G(@$$^W4GL("W4SP")@(SCR,"PUT",J-2))
 ..;;S ^AA("W4SPIDK-SAVE","LSCR",J)=LSCR
 . 
 .I LSCR,$D(@W4SP@(SCR,"PUT",J-2))#2 X @W4SP@(SCR,"PUT",J-2) Q
 .I LSCR,$D(@W4SP@(SCR,"GET",J-2,"OU")) Q
 .I LSCR,'($D(@W4SP@(SCR,"PUT",J-2))#2),$$PUTMUST Q
 .N ARGGL S ARGGL=$G(@$$^W4MAIN("TMPARG")@("GLOB"))
 .I $L(ARGGL),$D(@W4SP@(ARGGL,"PUT",J-2))#2 X @W4SP@(ARGGL,"PUT",J-2) Q
 .N J1 S J1=J-2
 .I GLOB["P1IR",J=6 S J1=J
 .S $P(@GLOB@(CD,1),"\",J1)=NM
 ;
 Q 1
 ;
 ;
SAVEND(STAM) ;
 N SCR,LSCR,ER
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 K @$$^W4MAIN("TMPSPER")
 I LSCR,$D(@W4SP@(SCR,"PUT"))#2 X @W4SP@(SCR,"PUT")
 I $D(@$$^W4MAIN("TMPSPER")) S ER=$G(^("TMPSPER")) K ^("TMPSPER") Q ER
 ;
 D ONEGLPAR
 ;
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMT")
 K @$$^W4MAIN("TMPDEL")
 K @$$^W4MAIN("TMPLAST")
 K @$$^W4MAIN("TMPARG")
 Q 1
 ;
 ;
DELROW(CD) ;
 Q:'$G(JB)
 I $D(@$$^W4MAIN("TMPDEL")@(CD)) K ^(CD) Q
 N GLOB D GLOB,GLTMP
 S @$$^W4MAIN("TMPDEL")@(CD)=$G(@GLOB@(CD))
 Q
 ;
 ;
NEWCOD(STAM) ;
 N GLOB D GLOB,GLTMP
 N A S A=$O(@GLOB@(9999999),-1)+1
 I $$SCR="SHULHAN" S A=$O(@GLOB@(999),-1)+1 I A=999,$D(@GLOB@(999)) Q ""
 I A'>$G(@$$^W4MAIN("TMPLAST")) D
 .S A=$G(@$$^W4MAIN("TMPLAST"))+1
 S @$$^W4MAIN("TMPLAST")=A
 Q A
 ;
GLOB ;
 N PRMAIN S PRMAIN=0
 I $L($G(%ARG("GLOB"))) S GLOB=%ARG("GLOB") G GLOBM
 S GLOB=$G(@$$^W4MAIN("TMPARG")@("GLOB"))
 Q:GLOB=""
GLOBM S GLOB0=GLOB S:$E(GLOB)="^" GLOB0=$E(GLOB,2,20)
 S @$$^W4MAIN("TMPARG")@("GLOB")=GLOB0
 I GLOB0["[W4MAIN]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I GLOB0["[M]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I GLOB0["[T]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I $E(GLOB0,1,3)="TMP" S PRMAIN=4
 I $E(GLOB0)="[" S GLOB0=$P(GLOB0,"]",2),PRMAIN=1
 S @$$^W4MAIN("TMPARG")@("GLOB0")=GLOB0
 I 'PRMAIN S GLOB=$$^W4GL(GLOB0)
 I PRMAIN=4 S GLOB="^[$$^W3MAIN]"_GLOB0_"($$^%W1JB)" G GLOBE
 I PRMAIN S GLOB="^[$$^W3MAIN]"_GLOB0
GLOBE Q
 ;
NODEL(STAM) ;
 N W4SP D W4SP
 I $D(@$$^W4MAIN("TMPARG")@("NODEL")) Q ^("NODEL")
 I '$L($$SCR) Q 0
 I $D(@W4SP@($$SCR,"NODEL")) Q 1
 Q 0
 ;
PUTMUST(STAM) ;
 I $D(@$$^W4MAIN("TMPARG")@("PUTMUST")) Q ^("PUTMUST")
 I '$L($$SCR) Q 0
 N W4SP D W4SP
 I $D(@W4SP@($$SCR,"PUTMUST")) Q 1
 Q 0
 ;
 ;
GLOBPRM ;
 I $L($$SCR),$D(^[$$^W3MAIN]W4SP($$SCR,"SETPRM"))#2 D  Q
 .X ^("SETPRM")
 ;
 N GLOB,GLOB0 D GLOB
 ;
 I $L($$SCR) S GLOB0=$$SCR
 ;
 Q:$G(GLOB0)=""
 I '$D(@$$^W4TABL@(GLOB0)) Q
 I '$D(@$$^W4MAIN("TMPARG")@("TBLNAME")) D
 .S @$$^W4MAIN("TMPARG")@("TBLNAME")=$$TBLNAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYSIZE")) D
 .S @$$^W4MAIN("TMPARG")@("KEYSIZE")=$$KEYSIZE^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYNAME")) D
 .S @$$^W4MAIN("TMPARG")@("KEYNAME")=$$KEYNAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYTYPE")) D
 .S @$$^W4MAIN("TMPARG")@("KEYTYPE")=$$KEYTYPE^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("NAME")) D
 .S @$$^W4MAIN("TMPARG")@("NAME")=$$NAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("LEN")) D
 .S @$$^W4MAIN("TMPARG")@("LEN")=$$LEN^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("TYP")) D
 .S @$$^W4MAIN("TMPARG")@("TYP")=$$TYP^W4TABL(GLOB0,0)
 I '$D(@$$^W4MAIN("TMPARG")@("VLDPROG")) D
 .S @$$^W4MAIN("TMPARG")@("VLDPROG")=$$VLDPROG^W4TABL(GLOB0)
 ;
 N J F J=1:1:$$COLDOP D
 .I '$D(@$$^W4MAIN("TMPARG")@("NAME"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("NAME"_J)=$$NAME^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("LEN"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("LEN"_J)=$$LEN^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("TYP"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("TYP"_J)=$$TYP^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("GL"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("GL"_J)=$$GL^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("MUST"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("MUST"_J)=$$MUST^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("DFLT"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("DFLT"_J)=$$DFLT^W4TABL(GLOB0,J)
 Q
 ;
D(PRM)
 N GLOB D GLOB,GLTMP
 I $G(PRM)="" Q $D(@GLOB)
 Q $D(@GLOB@(PRM))
 ;
COLDOP(STAM) ;
 N J F J=1:1 Q:'$D(@$$^W4MAIN("TMPARG")@("NAME"_J))
 I '(J-1),$L($G(GLOB0)) Q $$COLDOP^W4TABL($$ARG)
 Q (J-1)
 ;
VL(RKV)
 Q $G(@$$^W4MAIN("TMPARG")@(RKV))
 ;
COND(N) ;
 N W4SP N %COND,SCR,LSCR S %COND=1
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 I LSCR,$L($G(@W4SP@(SCR,"COND"))) X ^("COND")
 ;
 I $$SCR="SHULHAN" D
 .I $G(%ARG("SUGS")),$$SUGL^W4L(N)'=%ARG("SUGS") S %COND=0 Q
 .I $G(%ARG("SUGS"))="NONE",$$SUGL^W4L(N) S %COND=0 Q
 ;
 I $$SCR="W4LEVTB"!($$SCR="W4TBSLR")!($$SCR="W4PSWDRG") D
 .I '$$GET1^W4LEVPR(N,"PAIL"),$$GETP^%W1PRM("ACTWORKERS") S %COND=0
 .I $$GET^W4PSWDRG(N,"LEVEL"),$G(%ARG("MNL")) S %COND=0 Q
 ;
 Q %COND
 ;
NAME(J) ;
 I +$G(J)=0 S J=""
 Q $$VL("NAME"_J)
 ;
LEN(J) ;
 I +$G(J)=0 S J=""
 N LEN S LEN=$$VL("LEN"_J)
 I 'LEN S LEN=12
 Q LEN
 ;
TYP(J) ;
 I +$G(J)=0 S J=""
 N TYP S TYP=$$VL("TYP"_J)
 I TYP="" S TYP="E"
 Q TYP
 ;
MUST(J) ;
 I +$G(J)=0 S J=""
 N MUST S MUST=$$VL("MUST"_J)
 I MUST="" S MUST="N"
 I MUST="Y"!(MUST=1) Q 1
 Q 0
 ;
DFLT(J) ;
 I +$G(J)=0 S J=""
 N DFLT S DFLT=$$VL("DFLT"_J)
 Q DFLT
 ;
OU(J) ;
 N SCR,LSCR
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 S J=+$G(J)
 I SCR="W4POSMSK"!(SCR="W4MNSIS")!(SCR="W4KFM"),J=0 Q 1
 I $L(SCR) Q $D(@W4SP@(SCR,"GET",J,"OU"))
 Q 0
 ;
BOOL(J) I $$TYP(J)="B" Q 1
 Q 0
 ;
TIME(J) I $$TYP(J)="T" Q 1
 Q 0
 ;
DATE(J) I $$TYP(J)="D" Q 1
 Q 0
 ;
DAY(J) I $$TYP(J)="DY" Q 1
 Q 0
 ;
COLORB(J) I $$TYP(J)="CB" Q 1
 Q 0
 ;
COLORF(J) I $$TYP(J)="CF" Q 1
 Q 0
 ;
GL(J) ;
 I +$G(J)=0 S J=""
 N GL S GL=$$VL("GL"_J)
 Q GL
 ;
VAL(N,J) ;
 I $G(N)="" Q ""
 N GLOB,GLOB0,VAL D GLOB,GLTMP
 D W4SP
 S J=+$G(J)
 I $L($$SCR),$D(@W4SP@($$SCR,"GET",J)) Q @(@W4SP@($$SCR,"GET",J))
 ;
 I +$G(J)=0 Q $G(@GLOB@(N))
 N ARGGL S ARGGL=$G(%ARG("GLOB"))
 I $L(ARGGL),$D(@W4SP@(ARGGL,"GET",J)) Q @(@W4SP@(ARGGL,"GET",J))
 ;
 I GLOB0["P1IR",J=4 S J=6 ; -- MAHIR MINIMUM
 ;
 S VAL=$P($G(@GLOB@(N,1)),"\",J)
 ;
 I VAL="" D
 .I $L(ARGGL),$D(@W4SP@(ARGGL,"INI",J))#2 S VAL=@(@W4SP@(ARGGL,"INI",J)) Q
 .;
 .S VAL=$$DFLT(J)
 Q VAL
 ;
 ;
VALYES(N,J)
 I $$VAL(N,J) S SEL=1 Q 1
 I $$VAL(N,J)="k" S SEL=1 Q 1
 I $$VAL(N,J)=0 S SEL=1 Q 0
 I $$VAL(N,J)="l" S SEL=1 Q 0
 Q 0
 ;
VALDD(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,1,2)
 ;
VALMM(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,3,4)
 ;
VALYY(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,5,6)
 ;
VALHR(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,1,2)
 ;
VALMN(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,3,4)
 ;
 ;
KEYSIZE(STAM) ;
 Q $$VL("KEYSIZE")
 ;
KEYNAME(STAM) ;
 I $L($G(MRKVZ(1,1))) Q MRKVZ(1,1)
 Q $$VL("KEYNAME")
 ;
KEYD(STAM) ;
 I $$ARG="" Q 0
 I $$KEYTYPE^W4TABL($$ARG)="D" Q 1
 Q 0
 ;
KEYT(STAM) ;
 I $$ARG="" Q 0
 I $$KEYTYPE^W4TABL($$ARG)="T" Q 1
 Q 0
 ;
KEYVL(N) ;
 I $$KEYD,N?5N Q $ZD(N,"DD.MM.YY")
 Q N
 ;
VLDPROG(STAM)
 Q $$VL("VLDPROG")
 ;
ARG(STAM)
 N ARG S ARG=$$SCR
 I ARG="" S ARG=$G(@$$^W4MAIN("TMPARG")@("GLOB0"))
 Q ARG
 ;
TBLNAME(STAM)
 I $$SCR="W4ORDPLC" Q $ZD($$GETP^%W1PRM("DT"),"DD.MM.YY")_" -l zepgley zpnfd"
 I $L($G(MRKVZ("KOT"))) Q MRKVZ("KOT")
 Q $$VL("TBLNAME")
 ;
DOP(J) ;
 I $G(J) Q "dop"
 Q ""
 ;
 ;
INPUT(PRM) ;
 N CD,J,INP,GLOB,GLOB0,DFLT D GLOB
 S CD=$P(PRM,";")
 S J=$P(PRM,";",2)
 S DFLT=$P(PRM,";",3)
 I $D(NEWLINE) S GLOB0=$P(PRM,";",4)
 ;
 S INP="&nbsp;"
 ;
 I 'J,$$TYP?1"^"1A.E D  G EINP
 .S INP="<select id=""name"_CD_""" dir="""_$$^%W1DIR_""" "
 .S INP=INP_$$ONCHANGE(CD)_">"
 .S INP=INP_"<option value=""0"">&nbsp;</option>"
 .N GL S GL=$$TYP 
 .N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..S INP=INP_"<option value="""_N_""" "
 ..I $$VAL(CD)=N S INP=INP_" selected=""selected"" "
 ..S INP=INP_">"_$$H2U^%L1FRM(A)_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$BOOL(J) D  G EINP
 .;;S ^AA("W4SPIDK-INPUT","J",J)=GLOB0_";"_$D(NEWLINE)
 .S INP="<input id=""name"_CD_$$DOP(J)_J_""" "
 .S INP=INP_" type=""checkbox"" "
 .I $$OU(J)!$$PRINT S INP=INP_" disabled=""disabled"""
 .N CHECKED S CHECKED=$$CHECKED(CD,J,$G(GLOB0))
 .S INP=INP_$S(CHECKED:" checked=""checked""",1:"")_" "
 .S INP=INP_$$ONCHANGE(CD)_" />"
 ;
 I $$OU(J)!$$PRINT D  G EINP
 .S INP=$$H2U^%L1FRM($$VAL(CD,J))
 ;
 I $$TIME(J) D  G EINP
 .S INP="<select id=""name"_CD_$$DOP(J)_J_"hr"" "_$$ONCHANGE(CD)_" >"
 .F I=0:1:23 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALHR(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALHR(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 .S INP=INP_"<select id=""name"_CD_$$DOP(J)_J_"mn"" "_$$ONCHANGE(CD)_" >"
 .F I=0:15:45 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALMN(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALMN(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$DAY(J) D  G EINP
 .S INP="<select id=""name"_CD_$$DOP(J)_J_""" "_$$ONCHANGE(CD)_" >"
 .N I
 .F I=1:1:7 D
 ..S INP=INP_"<option value="""_I_""""
 ..I I=$$VAL(CD,J) S INP=INP_" selected=""selected"""
 ..S INP=INP_" >"_$$^%W1DICT("DAY"_I)_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$DATE(J) D  G EINP
 .S SEL=1
 .N %W1DAT S %W1DAT("CHANGE")="OnChange('"_CD_"')"
 .N CD1 S CD1=CD I CD?5N S CD1=$ZD(CD,"DD.MM.YY")
 .S %ARG("OLDDAT")=1
 .S INP=$$STDT^%W1DAT("name"_CD_$$DOP(J)_J,"",$$VALDD(CD1,J),$$VALMM(CD1,J),$$VALYY(CD1,J))
 ;
 I $$COLORB(J)!$$COLORF(J) D  G EINP
 .S SEL=1
 .N KIND S KIND="BG"
 .I $$COLORF(J) S KIND="FG"
 .N ID,IDV,IDE S ID="name"_CD_$$DOP(J)_J
 .S IDV="preview"_CD_$$DOP(J)_J
 .S IDE="name"_CD_$$DOP(J)_$$GL(J)
 .S INP="<input type=""text"" id="""_ID_""" size=""5"" "
 .
 .N VAL S VAL=$$SPA^%L1FRM($$VAL(CD,J))
 .S INP=INP_" value="""_VAL_""" "
 .N CMD S CMD=" onClick=""OnClickColor(event,'"_ID_"','"_IDV_"','"_IDE_"','"_KIND_"');OnChange('"_CD_"')"" "
 .I KIND="BG" S INP=INP_" onChange=""OnChangeBGColor('"_CD_"','"_IDV_"','"_ID_"','"_IDE_"')"" "
 .I KIND="FG" S INP=INP_" onChange=""OnChangeFGColor('"_CD_"','"_IDV_"','"_ID_"','"_IDE_"')"" "
 .S INP=INP_" style=""font-size:"_$$^W3FSZ(10)_""" "
 .S INP=INP_">&nbsp;&nbsp;<span id="""_IDV_""" class=""colorpreview"" "
 .S INP=INP_" style=""background-color:"_VAL_""" "
 .S INP=INP_" "_CMD
 .S INP=INP_"></span>"
 ;
 I $$GL(J)=""!$$GL(J),'$$BOOL(J) D INPTXT(CD,J,$G(GLOB0))  G EINP
 ;
 I $$GL(J)'="",'$$GL(J) D SELFROM(CD,J) G EINP
EINP ;
 Q INP
 ;
 ;
GLSEL ;
 N A S A=$G(^(NN))
 I $G(GL1)="NAME" S A=$G(^(NN,1))
 I $G(GL)="SHULH" S A=" "
 I NN=$$VAL(CD,J) S SEL=1
 S INP=INP_"<option value="""_NN_""""
 S INP=INP_$S(NN=$$VAL(CD,J):" selected=""selected""",1:"")_" >"
 S INP=INP_NN_" "_$S(GL1["dev":" : "_A,1:$$H2U^%L1FRM(A))_"</option>"
 Q
 ;
 ;
INPTXT(CD,J,GLOB0) ;
 N ID,LEN,TXTAREA S LEN=$$LEN(J),TXTAREA=0
 I LEN["*" S TXTAREA=1
 S ID="name"_CD_$S(J:"dop"_J,1:"")
 ;
 I 'TXTAREA D
 .S INP="<input id="""_ID_""" type=""text"" "
 .S INP=INP_" size="""_LEN_""" " ;;maxlength="""_LEN_""" "
 ;
 I TXTAREA D
 .S INP="<textarea id="""_ID_""" "
 .S INP=INP_" cols="""_+LEN_""" rows="""_$P(LEN,"*",2)_""" "
 ;
 N PRENG S PRENG=0
 ;
 I $$TYP(J)="N"!('J&$$ENGNAME^W4TABL($$ARG)) D
 .S INP=INP_" dir=""LTR"" ",PRENG=1
 .I $$TYP(J)="N" S INP=INP_" onFocus=""this.select()"" "
 ;
 I J,$$TYP(J)="E" D
 .I $$LEN(J)<10 S INP=INP_" onFocus=""this.select()"" "
 .S INP=INP_" OnKeyUp=""EnglishOnly(event,'"_ID_"')"" "
 .I GLOB0="W4MAPPRM",J=2 S INP=INP_" readonly=""readonly"" "
 ;
 S INP=INP_" style="""
 ;
 N PRM S PRM=$$GL(J) I PRM D  ; -- COLOR
 .N BGN,FGN S BGN=$P(PRM,";"),FGN=$P(PRM,";",2)
 .I BGN S INP=INP_"background-color:"_$$VAL(CD,BGN)_";"
 .I FGN S INP=INP_"color:"_$$VAL(CD,FGN)_";"
 .I PRENG,'BGN,'FGN S INP=INP_"text-align:right"
 .I BGN!FGN S INP=INP_"text-align:center"
 ;
 N VAL S VAL=$$VAL(CD,J)
 I $L($G(SRCH)),VAL[SRCH S INP=INP_";background-color:yellow"
 S INP=INP_";font-size:"_$$^W3FSZ(11)
 S INP=INP_""""
 ;
 D
 .N GLOB D GLOB
 .I $$ENGNAME^W4TABL($$ARG),'J Q
 .I $$TYP^W4TABL($$ARG,J)="E" Q
 .S VAL=$$H2U^%L1FRM(VAL)
 .I $$GL(J) S VAL="Preview"
 ;
 I 'TXTAREA S INP=INP_" value="""_VAL_""" "
 ;
 I GLOB0="W4MAPPRM",J=1 D  Q
 .S INP=INP_" onChange=""OnChange('"_CD_"');OnChangeMapCity('"_CD_"')"" />&nbsp;"
 ;
 S INP=INP_$$ONCHANGE(CD)_" >&nbsp;"
 ;
 I TXTAREA S INP=INP_VAL_"</textarea>"
 Q
 ;
 ;
SELFROM(CD,J) ;
 ; INPUT: CD,J
 ; OUTPUT - INP
 ;-------------------------------------------------
 N PRMAIN S PRMAIN=0
 N GL1 S GL1=$$GL1(J)
 ;
 I '$$SMALLG(GL1) W $$GLINPUT(CD,J,GL1) Q
 ;
 S INP=$G(INP)_" <select dir="""_$S(GL1["dev":"LTR",1:$$^%W1DIR)_""" id=""name"_CD_$$DOP(J)_J_""" "_$$ONCHANGE(CD)_" >"
 ;
 I GL1="S1" D  Q
 .S INP=INP_"<option value=""0"" "_$$CHKS1(GLOB0,CD,0)_" >"_$$^%W1DICT("BACK2WAITERS")_"</option>"
 .S INP=INP_"<option value=""1"" "_$$CHKS1(GLOB0,CD,1)_" >"_$$^%W1DICT("BACK2TABLES")_"</option>"
 .S INP=INP_"<option value=""2"" "_$$CHKS1(GLOB0,CD,2)_" >"_$$^%W1DICT("BACK2ITEMS")_"</option>"
 .S INP=INP_"</select>"
 ;
 D
 .I GL1="NAME" D
 ..S INP=INP_"<option value="""">"_$$^%W1DICT("CHOICEWORKER")_"</option>"
 .;
 .I GL1="SHULH" D
 ..S INP=INP_"<option value="""">"_$$^%W1DICT("CHOICETABLE")_"</option>"
 .
 .I GL1="W4DIAP" Q
 .
 .I GL1="W4DARGA",$G(%ARG("MNL")) S GL1="W4DARG1"
 .
 .S INP=INP_"<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>"
 ;
 ;;S ^AA("GL1")=GL1
 ;;S ^AA("GL")=$$GL(J)
 ;;S ^AA("PRMAIN")=PRMAIN
 ;
 I 'PRMAIN D
 .N NN S NN=""
 .F  S NN=$O(@$$REF(GL1)@(NN)) Q:NN=""  Q:NN>999&($$GL(J)="^SHULH")  D GLSEL
 ;
 I PRMAIN=1 D
 .N NN S NN="" F  S NN=$O(@("^[$$^W3MAIN]"_GL1)@(NN)) Q:NN=""  Q:NN>999&($$GL(J)="^SHULH")  D GLSEL
 ;
 S INP=INP_"</select>"
 ;
 I GL1="P1SETM" D
 .S INP=INP_"&nbsp;&nbsp;"
 .S INP=INP_"<input type=""button"" value="""_$$^%W1DICT("SHOW")_""" "
 . S INP=INP_" style=""color:green"" "
 . S INP=INP_" onClick=""ShowSaleSet('"_CD_"',"_J_")"" "
 .S INP=INP_">"
 Q
 ;
 ;
SCR(STAM)
 Q $$SCR^W4SPVIDK
 ;
SAVETABLES(STAM)
 Q 1
 ;
W4SP ;
 S W4SP="^[$$^W3MAIN]W4SP"
 Q
 ;
GET ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 N GLOB,GLOB0 D GLOB,GLTMP
 I LSCR,$D(@W4SP@(SCR,"GET"))#2 X @W4SP@(SCR,"GET")
 Q
 ;
 ;
GLTMP ;
 N TMP S TMP=$G(%ARG("TMP"))
 I TMP="" S TMP=$$GET^%W1PRM("TMP")
 I TMP["UNDEF" S TMP=""
 I $L(TMP) S GLOB=$$^W4MAIN(TMP)
 Q
 ;
HEADFUNC ;
 N W4SP D W4SP
 N SCR S SCR=$$SCR Q:'$L(SCR)
 I $D(@W4SP@(SCR,"HEADFUNC"))#2 X @W4SP@(SCR,"HEADFUNC") Q
 W "&nbsp;"
 Q
 ;
 ;--------------------------------- CALLS --------------------------------
SHULHAN1(CD,NM) ;
 I $G(CD)=""!($G(NM)="") Q
 S $P(@$$^W4GL("LKH")@(CD,2),"*",5)=NM
 I @$$^W4GL("SUGS")@(NM)="xa"!(@$$^W4GL("SUGS")@(NM)="BAR") D
 .S @$$^W4GL("BAR")@(CD)=""
 Q
SHULHAN2(CD,NM) ;
 S $P(@$$^W4GL("LKH")@(CD,2),"*",7)=NM
 Q
 ;
LEVTB1(CD,NM) ;
 S $P(@$$^W4GL("NAME")@(CD),"\",1)=NM
 Q
LEVTB2(CD,NM) ;
 S $P(@$$^W4GL("NAME")@(CD),"\",2)=NM
 Q
LEVTB3(CD,NM) ;
 S @$$^W4GL("NAME")@(CD,11)=NM
 Q
 ;
GETMDP ;
 N GLOB D GLOB K @GLOB
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S @GLOB@(N)=$P($G(@$$^W4PRM@("MDP",N)),"\",4)
 .S $P(@GLOB@(N,1),"\")=$P($G(@$$^W4PRM@("MDP",N)),"\",3)
 .S $P(@GLOB@(N,1),"\",2)=$P($G(@$$^W4PRM@("MDP",N)),"\",5)
 .S $P(@GLOB@(N,1),"\",3)=$P($G(@$$^W4PRM@("MDP",N)),"\",6)
 .S $P(@GLOB@(N,1),"\",4)=$P($G(@$$^W4PRM@("MDP",N)),"\",7)
 .S $P(@GLOB@(N,1),"\",5)=$P($G(@$$^W4PRM@("MDP",N)),"\",8)
 Q
 ;
GETACNT ;
 N GL S GL=$$^W4MAIN("TMP") K @GL
 N N S N="" F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  D
 .S @GL@(N)=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",1)
 .S $P(@GL@(N,1),"\")=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",2)
 .S $P(@GL@(N,1),"\",2)=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",3)
 .S $P(@GL@(N,1),"\",3)=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",4)
 Q
 ;
PUTACNT(PRM) ;
 N (JB,%ARG,PRM,%REM)
 ;;S ^AA("W4SPIDK-PUTACNT","PRM")=$G(PRM)
 S SH=$P(PRM,";")
 S BANK=$P(PRM,";",2)
 D
 .N NMBANK S NMBANK=$P(PRM,";",3)
 .I $E(NMBANK,1,2)="%u" S BANK1=$$UTF2H^%L1CNV(NMBANK) Q
 .S BANK1=$$CNWEB^%L1FRM(NMBANK)
 .S BANK1=$$INVH^%L1FRM(BANK1)
 ;
 S SNIF=$P(PRM,";",4)
 S HESH=$P(PRM,";",5)
 S @$$^W4MAIN("TMP")@(SH)=BANK
 S @$$^W4MAIN("TMP")@(SH,1)=BANK1_"\"_SNIF_"\"_HESH
 Q
 ;
SAVEACNT ;
 ;;K @$$^W4GL("W4ACNT")
 N N S N="" F  S N=$O(@$$^W4MAIN("TMP")@(N)) Q:N=""  D
 .S @$$^W4GL("W4ACNT")@(N)=$G(@$$^W4MAIN("TMP")@(N))_"\"_$G(@$$^W4MAIN("TMP")@(N,1))
 K @$$^W4MAIN("TMP")
 Q
 ;
SAVELEVTB(PRM) ;
 N KV,SUGMS,TIP,PAIL,WHOSURE
 S CD=$P(PRM,";") Q:CD'?5N
 S KV=$P(PRM,";",3)
 S SUGMS=$P(PRM,";",4)
 S TIP=$P(PRM,";",5)
 S PAIL=$P(PRM,";",6)
 S WHOSURE=$P(PRM,";",7)
 ;
 D LEVTB1^W4SPIDK(CD,KV)
 D LEVTB2^W4SPIDK(CD,SUGMS)
 D PUT1^W4LEVPR(CD,"MTIP",TIP)
 D PUT1^W4LEVPR(CD,"PAIL",PAIL)
 D PUT1^W4LEVPR(CD,"MAKESURE",WHOSURE)
 Q
 ;
MDP ;
 N GLOB,PORTLP,TEUR D GLOB
 K @$$^W4PRM@("MDP")
 N N S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S PORTLP=$P($G(@GLOB@(N,1)),"\") Q:PORTLP=""
 .S MDPS=$$MDPS^W4MDP(PORTLP)
 .S MDPS1=$$MDPS1^W4MDP(MDPS)
 .S $P(@$$^W4PRM@("MDP",N),"\",1)=MDPS
 .S $P(@$$^W4PRM@("MDP",N),"\",2)=MDPS1
 .S $P(@$$^W4PRM@("MDP",N),"\",4)=$G(@GLOB@(N))
 .S $P(@$$^W4PRM@("MDP",N),"\",3)=PORTLP
 .S $P(@$$^W4PRM@("MDP",N),"\",5)=$P($G(@GLOB@(N,1)),"\",2)
 .S $P(@$$^W4PRM@("MDP",N),"\",6)=$P($G(@GLOB@(N,1)),"\",3)
 .S $P(@$$^W4PRM@("MDP",N),"\",7)=$P($G(@GLOB@(N,1)),"\",4)
 .S $P(@$$^W4PRM@("MDP",N),"\",8)=$P($G(@GLOB@(N,1)),"\",5)
 ;
 S @$$^W4PRM@("MDP")=$$GETP^%W1PRM("MDPFIRE")
 D KILL^%W1PRM("MDPFIRE")
 K @GLOB
 Q
 ;
GETMDPH ;
 N GLOB D GLOB K @GLOB
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .I $G(^(N))="",$G(@$$^W4GL("PLUK")@(N,"LP"))="" Q
 .S I=I+1,@GLOB@(I)=$G(@$$^W4GL("PLUK")@(N))
 .S $P(@GLOB@(I,1),"\")=N
 .S $P(@GLOB@(I,1),"\",2)=$G(@$$^W4GL("PLUK")@(N,"LP"))
 .S $P(@GLOB@(I,1),"\",3)=$G(@$$^W4GL("PLUK")@(N,"MSK"))
 .S $P(@GLOB@(I,1),"\",4)=$G(@$$^W4GL("PLUK")@(N,"MSKPORT"))
 .S $P(@GLOB@(I,1),"\",5)=$G(@$$^W4GL("PLUK")@(N,"SCANER"))
 .S $P(@GLOB@(I,1),"\",6)=$G(@$$^W4GL("PLUK")@(N,"KUPA"))
 .S $P(@GLOB@(I,1),"\",7)=$G(@$$^W4GL("PLUK")@(N,"HSB"))
 .S $P(@GLOB@(I,1),"\",8)=$G(@$$^W4GL("PLUK")@(N,"BIT"))
 .S $P(@GLOB@(I,1),"\",9)=$G(@$$^W4GL("PLUK")@(N,"HNH"))
 .S $P(@GLOB@(I,1),"\",10)=$G(@$$^W4GL("PLUK")@(N,"MZM"))
 .S $P(@GLOB@(I,1),"\",11)='$G(@$$^W4GL("PLUK")@(N,"NOCHK"))
 .S $P(@GLOB@(I,1),"\",12)='$G(@$$^W4PRM@("NOPRINT",N))
 .I $$SUPER^W3PRM S $P(@GLOB@(I,1),"\",13)=$G(@$$^W4GL("PLUK")@(N,"DISP"))
 .I '$$SUPER^W3PRM S $P(@GLOB@(I,1),"\",13)=$G(@$$^W4GL("W4POSTEL")@(N))
 ;;M ^AA("PLUK","GLOB")=@GLOB
 ;;S ^AA("PLUK","GLOB")=GLOB
 Q
 ;
MDPH ;
 N GLOB D GLOB
 N N,A,KUP,PORT,PRINT
 N P S P=$G(@$$^W4GL("PLUK"))
 M @$$^W4GL("PLUK0")=@$$^W4GL("PLUK")
 K @$$^W4GL("PLUK")
 ;
 M @$$^W4GL("W4POSTEL0")=@$$^W4GL("W4POSTEL")
 K @$$^W4GL("W4POSTEL")
 ;
 ;;M ^AA("MDPHPUT","GLOB")=@GLOB
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S KUP=$G(^(N))
 .S A=$G(^(N,1))
 .;;S ^AA("MDPHPUT",N,"A")=A
 .S PORT=$P(A,"\",1) Q:'PORT
 .S @$$^W4GL("PLUK")@(PORT)=KUP
 .S PRINT=$P(A,"\",2)
 .S @$$^W4GL("PLUK")@(PORT,"LP")=PRINT
 .S @$$^W4GL("PLUK")@(PORT,"LP","SUG")=$$MDPS^W4MDP(PRINT)
 .S @$$^W4GL("PLUK")@(PORT,"MSK")=$P(A,"\",3)
 .S @$$^W4GL("PLUK")@(PORT,"MSKPORT")=$P(A,"\",4)
 .S @$$^W4GL("PLUK")@(PORT,"SCANER")=$P(A,"\",5)
 .S @$$^W4GL("PLUK")@(PORT,"KUPA")=$P(A,"\",6)
 .S @$$^W4GL("PLUK")@(PORT,"HSB")=$P(A,"\",7)
 .S @$$^W4GL("PLUK")@(PORT,"BIT")=$P(A,"\",8)
 .S @$$^W4GL("PLUK")@(PORT,"HNH")=$P(A,"\",9)
 .S @$$^W4GL("PLUK")@(PORT,"MZM")=$P(A,"\",10)
 .S @$$^W4GL("PLUK")@(PORT,"NOCHK")='$P(A,"\",11)
 .;
 .S @$$^W4PRM@("NOPRINT",PORT)='$P(A,"\",12)
 .S @$$^W4GL("PLUK")@(PORT,"DISP")=""
 .I $$SUPER^W3PRM S @$$^W4GL("PLUK")@(PORT,"DISP")=$P(A,"\",13)
 .I '$$SUPER^W3PRM,$P(A,"\",13) S @$$^W4GL("W4POSTEL")@(PORT)=$P(A,"\",13)
 ;
 S @$$^W4GL("PLUK")=P
 K @GLOB
 Q
 ;
GETMDPK ;
 N GLOB D GLOB K @GLOB
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .S I=I+1,@GLOB@(I)=$G(@$$^W4GL("PLUK")@(N))
 .S $P(@GLOB@(I,1),"\")=N
 .S $P(@GLOB@(I,1),"\",2)=$G(@$$^W4GL("PLUK")@(N,"LP"))
 .S $P(@GLOB@(I,1),"\",3)=$G(@$$^W4GL("PLUK")@(N,"MSK"))
 .S $P(@GLOB@(I,1),"\",4)=$G(@$$^W4GL("PLUK")@(N,"MSKPORT"))
 Q
 ;
 ;
MDPK ;
 N GLOB D GLOB
 N N,A,KUP,PORT,PRINT
 N P S P=$G(@$$^W4GL("PLUK"))
 M @$$^W4GL("PLUK0")=@$$^W4GL("PLUK")
 ;
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S KUP=$G(^(N))
 .S A=$G(^(N,1))
 .S PORT=$P(A,"\",1) Q:'PORT
 .S @$$^W4GL("PLUK")@(PORT)=KUP
 .S PRINT=$P(A,"\",2)
 .S @$$^W4GL("PLUK")@(PORT,"LP")=PRINT
 .S @$$^W4GL("PLUK")@(PORT,"LP","SUG")=$$MDPS^W4MDP(PRINT)
 .S @$$^W4GL("PLUK")@(PORT,"MSK")=$P(A,"\",3)
 .S @$$^W4GL("PLUK")@(PORT,"MSKPORT")=$P(A,"\",4)
 ;
 S @$$^W4GL("PLUK")=P
 K @GLOB
 Q
 ;
GETPOSMSK ;
 N GLOB D GLOB K @GLOB
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .S @GLOB@(N)=$G(@$$^W4GL("PLUK")@(N))
 .S $P(@GLOB@(N,1),"\",1)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";"),",")
 .S $P(@GLOB@(N,1),"\",2)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";"),",",2)
 .S $P(@GLOB@(N,1),"\",3)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",2),",")
 .S $P(@GLOB@(N,1),"\",4)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",2),",",2)
 .S $P(@GLOB@(N,1),"\",5)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",3),",")
 .S $P(@GLOB@(N,1),"\",6)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",3),",",2)
 Q
 ;
PUTPOSMSK ;
 N GLOB D GLOB
 N N,A,KUP,PORT
 K @$$^W4PRM@("JUMPTBL")
 ;
 ;;M ^AA("POSMSK")=@GLOB
 ;
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S A=$G(^(N,1)),ST=""
 .N K F K=1:2:5 S ST=ST_$P(A,"\",K)_","_$P(A,"\",K+1)_";"
 .S @$$^W4PRM@("JUMPTBL",N)=ST
 Q
 ;
GETPLCPRM ;
 N GLOB D GLOB K @GLOB
 N MSDR S MSDR=$$GETP^%W1PRM("MSDR") Q:'MSDR
 N A,N,I S N="",I=0
 F  S N=$O(^|$$^W3MAIN|W3MSDR(MSDR,N)) Q:N=""  D
 .S @GLOB@(N)=$$MSD^W3R(N)
 .S @GLOB@(N,1)=$G(^|$$^W3MAIN|W3PLCPRM(MSDR,N))
 Q
 ;
PUTPLCPRM ;
 N GLOB D GLOB
 N MSDR S MSDR=$$GETP^%W1PRM("MSDR") Q:'MSDR
 K ^|$$^W3MAIN|W3PLCPRM(MSDR)
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S A=$G(@GLOB@(N,1))
 .S ^|$$^W3MAIN|W3PLCPRM(MSDR,N)=A
 Q
 ;
SETGL ;
 N GL,I
 D SETGL^W4MANA
 ;
 S GL=$$^W4GL("W4VWGR")
 K @GL
 S @GL@(1)="bivdl"
 S @GL@(2)="bivdl `l "
 S @GL@(3)="dcrqn hixtza wx"
 S @GL@(4)="migelyn hixtza wx"
 ;
 S GL=$$^W4GL("W4EX2K")
 K @GL
 S @GL@(1)="`vi"
 S @GL@(0)="`vi `l "
 ;
 S GL=$$^W4GL("W4DARGA")
 K @GL
 S @GL@(2)="y""ng` zbxc"
 S @GL@(3)="dldpd zbxc"
 S @GL@(4)="ziad lra zbxc"
 ;
 S GL=$$^W4GL("W4DARG1")
 K @GL
 S @GL@(2)="y""ng` zbxc"
 ;
 Q
 ;
TOOMUCHLINES(STAM) ;
 N GLOB,TMP
 D GLOB,GLTMP
 N TOO S TOO=0
 I $G(%ARG("SCR"))["W4MDPH" D
 .N N,I S I=0 ;
 .S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 ..I N<50 S I=I+1
 .I $G(@$$^W4PRM@("MAXPOS")),I>^("MAXPOS") S TOO=1
 ;
 Q TOO
 ;
 ;
CHKS1(GLOB,CD,VL) ;
 I GLOB="SUGS" Q $S(+VL=+$P($G(@$$^W4GL("SUGS")@(CD,1)),"\",5):" selected=""selected"" ",1:"")
 Q ""
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 I $$VIEW Q 1
 Q 0
 ;
VIEW(STAM) I $G(%ARG("VIEW")) Q 1
 Q 0
 ;
CHKFILL(STAM) ;
 I $$VL^W4SPIDK("SCR")="SHULHAN" Q 0
 I $$KEYD Q 0
 Q 1
 ;
INIT ;
 I '$G(%ARG("FIRST")) Q
 D KILL^%W1PRM("MDPFIRE")
 I $$SCR="W4MDP" D PUT^%W1PRM("MDPFIRE",$G(@$$^W4PRM@("MDP")))
 Q
 ;
INITIDK ;
 D ^%W1ARG,^W3CSS,^W4CSS
 I $$GETP^%W1PRM("ACTWORKERS")="" D PUT^%W1PRM("ACTWORKERS",1)
 N TOP S TOP=$$HG^W4WDSCR-200
 D SETTOP^W4KBABC(TOP)
 Q
 ;
VLD(PRM) ;
 N RES S RES=1
 D PUT^%W3DEB("W4SPIDK-VLD","PRM=PRM")
 F J=1:1:$$COLDOP D  Q:RES'=1
 .I $$MUST(J),$P(PRM,";",J+2)=""  D
 ..S RES="WRONGFIELDVALUE;name"_$P(PRM,";")_$$DOP(J)_J_";"_$$NAME(J)
 I RES=1,$$VLDPROG'="" D
 .X "S RES=$$"_$$VLDPROG_"(PRM)"
 Q RES
 ;
ORDPLC2(CD) ;
 N J,INP S J=6
 S INP="<td>&nbsp;</td>"
  S INP=INP_"<td colspan=""2"">"
  S INP=INP_$$^%W1DICT("SHULHANOT")_" : "
  S INP=INP_"<input type=""text"" "_$$IFVIEW_" id=""TABLES"_CD_""" "_$$ONCHANGE(CD)_" dir=""LTR"" align=""right"" size=""25"" value="""_$$H2U^%L1FRM($$VAL(CD,J+1))_""">"
  S INP=INP_"</td>"
  S INP=INP_"<td colspan=""4"">"
  S INP=INP_$$^%W1DICT("COMMENT")_" : "
  S INP=INP_"<input type=""text"" "_$$IFVIEW_" id=""COMMENT"_CD_""" "_$$ONCHANGE(CD)_" size=""60"" value="""_$$H2U^%L1FRM($$VAL(CD,J+2))_""">"
  S INP=INP_"</td>"
  S INP=INP_"<td colspan=""4"">"
  S INP=INP_$$^%W1DICT("RECEIVER")_" : "
  S INP=INP_"<input type=""text"" "_$$IFVIEW_" id=""RCVR"_CD_""" "_$$ONCHANGE(CD)_" size=""12"" value="""_$$H2U^%L1FRM($$VAL(CD,J+3))_""">"
  S INP=INP_"</td>"
 S INP=INP_""
 Q INP
 ;
ONCHANGE(CD)
 Q " onChange=""OnChange('"_CD_"')"" "
 ;
IFVIEW(STAM) ;
 I $$VIEW Q " disabled=""disabled"" "
 Q ""
 ;
CRSUG ;
 N N,SUG
 K @$$^W4MAIN("VRM")
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .S SUG=$$SUG^W4P(N) Q:SUG=""
 .S @$$^W4MAIN("VRM")@(SUG,N)=""
 Q
 ;
HASITEMS(KV) ;
 I $D(@$$^W4MAIN("VRM")@(KV))>9 Q 1
 Q 0
 ;
GLINPUT(CD,J,GL) ;
 N VV,ID,TYP,LEN
 ;
 S ID="name"_CD_"dop"_J
 S TYP=$$TYP(J)
 S LEN=$$LEN(J)
 S VL=$$VAL(CD,J)
 D BEGVV(ID,TYP,LEN,VL)
 S VV=VV_" &nbsp;&nbsp; <input type=""button"""
 S VV=VV_" value="""_$$^%W1DICT("SEARCH")_""""
 S VV=VV_" onClick=""Find('"_ID_"','"_GL_"')"" />"
 N VL1 S VL1="" I VL S VL1=$G(@$$^W4GL(GL)@(VL))
 I GL="NAME",VL S VL1=$G(@$$^W4GL(GL)@(VL,1))
 I VL1'?.P S VV=VV_"<br><span id="""_ID_"_1"" style=""color:grey"">"_$$H2U^%L1FRM(VL1)_"</span>"
 Q VV
 ;
 ;
BEGVV(ID,TYP,LEN,VL) ;
 N CD S CD=""
 I $E(ID,1,4)="name" S CD=$P($P(ID,"name",2),"dop")
 S VV="<input type=""text"" style=""text-align:right"" "
 S VV=VV_" dir="""_$S(TYP="H":"RTL",1:"LTR")_""""
 S VV=VV_" size="""_LEN_""""
 ;;S VV=VV_" maxlength="""_LEN_""""
 S VV=VV_" "_$$ONCHANGE(CD)
 S VV=VV_$S(TYP="H":"",1:" onClick=""this.select()""")
 S VV=VV_" id="""_ID_""""
 S VV=VV_" value="""_$$H2U^%L1FRM(VL)_""" />"
 Q
 ;
SMALLG(GLB) ;
 N I,N,KF,A,LN S LN=0
 N REF S REF=$$REF(GLB)
 S N="" F I=1:1:100 S N=$O(@REF@(N)) Q:N=""  D  ;;Q:LN>1200
 .S A=$G(^(N)),A1=$$H2U^%L1FRM(A)
 .S LN=LN+$L(A1)
 I N="" Q 1
 Q 0
 ;
GL1(J)
 N GL,GL1 S GL=$$GL(J) S:$E(GL)="^" GL=$E(GL,2,25)
 I $E(GL,1,2)="[]" S GL="[$$^W3MAIN]"_$P(GL,"]",2,20)
 I $E(GL,1,3)="dev" S GL="[$$^W3MAIN]"_GL
 N GL1 S GL1=GL
 I GL="SHULH" S GL1="LKH"
 Q GL1
 ;
GLOB0(GLOB0) ; 
 I $L($$SCR) Q $$SCR
 Q $G(GLOB0)
 ;
REF(GLB) 
 N REF S REF=$$^W4GL(GLB)
 I GLB["[$$^W3MAIN]" S REF=GLB I $E(REF)'="^" S REF="^"_REF
 Q REF
 ;
SELSORT(VL) ;
 I $G(%ARG("SORT"))=VL Q " selected=""selected"" "
 Q "" 
 ;
SORTSUG(WIN) ;
 S:$G(WIN)="" WIN="self"
 W "<select id=""sort"" onChange=""SortChange("_WIN_")"" >"
   W "<option value=""1"" "_$$SELSORT(1)_" >"_$$^%W1DICT("SORTPERGRCODE")_"</option>",!
   W "<option value=""2"" "_$$SELSORT(2)_" >"_$$^%W1DICT("SORTPERABC")_"</option>",!
   W "<option value=""3"" "_$$SELSORT(3)_" >"_$$^%W1DICT("SORTPERGRSID")_"</option>",!
 W "</select>",! 
 Q
 ;
CRGLOBT(GLOB) ; --> GLOBT
 N N,GLOBT S GLOBT=GLOB
 ;
 ;;S ^AA("W4SPIDK-CRGLOBT","GLOB")=GLOB
 ;;S ^AA("W4SPIDK-CRGLOBT","SORT")=$G(%ARG("SORT"))
 ;
 I $G(%ARG("SORT"))<2,$P(GLOB,"|",3)="PARSUG"!(GLOB="PARSUG") D  Q GLOBT
 .S GLOBT=$$^W4MAIN("VRMT") K @GLOBT
 .N IND,A,I
 .S N="" F I=1:1 S N=$O(@GLOB@(N)) Q:N=""  D
 ..S @GLOBT@(N)=N
 ;
 I $G(%ARG("SORT"))=1,$P(GLOB,"|",3)="NAME" D  Q GLOBT
 .S GLOBT=$$^W4MAIN("VRMT") K @GLOBT
 .N IND,A,I
 .S N="" F I=1:1 S N=$O(@GLOB@(N)) Q:N=""  D
 ..S A=$$INV^%L1FRM($G(^(N,1)))
 ..S IND=$$ENG^%L1FRM(A,10)_I
 ..S @GLOBT@(IND)=N
 ;
 I $G(%ARG("SORT"))=2 D
 .S GLOBT=$$^W4MAIN("VRMT") K @GLOBT
 .N IND,A,I
 .S N="" F I=1:1 S N=$O(@GLOB@(N)) Q:N=""  D
 ..S A=$$INV^%L1FRM($G(^(N)))
 ..S IND=$$ENG^%L1FRM(A,10)_I
 ..S @GLOBT@(IND)=N
 ;
 I $G(%ARG("SORT"))=3 D
 .N N1,OK
 .S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 ..S OK=0
 ..S N1="" F  S N1=$O(@$$^W4GL("P1KVZSID")@(N1)) Q:N1=""  S:$G(^(N1))=N OK=1 Q:OK
 ..I 'OK D
 ...N IND S IND=$O(@$$^W4GL("P1KVZSID")@(99999),-1)+1
 ...S @$$^W4GL("P1KVZSID")@(IND)=N
 .S GLOBT=$$^W4GL("P1KVZSID")
 ;
 Q GLOBT
 ;
 ; 
ONEGLPAR ; 
 N GLOB,GLOB0
 D GLOB
 S GLOB0=$G(@$$^W4MAIN("TMPARG")@("GLOB0")) Q:GLOB0=""
 ;
 I $$ONEGLPAR^W3PRM!$$SUPER^W3PRM D  G EONEGLPAR
 .N CD S CD="" F  S CD=$O(@GLOB@(CD)) Q:CD=""  D
 ..N NM1 S NM1=$P($P($G(@GLOB@(CD)),"\"),"**")
 ..
 ..I GLOB0="MLSUGP" D
 ...S @$$^W4GL("PARSUG")@(CD)=NM1
 ...S $P(@$$^W4GL("PARSUG")@(CD,1),"\")=$P($G(@GLOB@(CD,1)),"\")
 ..
 ..I GLOB0="PARSUG" D
 ...S @$$^W4GL("MLSUGP")@(CD)=NM1
 ...S $P(@$$^W4GL("MLSUGP")@(CD,1),"\")=$P($G(@GLOB@(CD,1)),"\")
 ..
 ..I GLOB0="MLDEP" S @$$^W4GL("DEP")@(CD)=NM1
 ..I GLOB0="DEP" S @$$^W4GL("MLDEP")@(CD)=NM1
 ;
EONEGLPAR Q 
 ;
CHECKED(CD,J,GLOB0)
 I $$VALYES(CD,J) Q 1
 I $D(NEWLINE)&(J=1)&($G(GLOB0)="MLDEP") Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPIDK0
W4SPIDK ; [ 30.09.16 16:06 ] [ 29.09.16 03:27 ] [ 27.09.16 12:10 ] 
 N (JB,%ARG,%REM,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D SETGL
 I $G(%ARG("GLOB"))="P1SL",$$SLAU^W4PRM S %ARG("VIEW")=1
 D PUT^%W3DEB("W4SPIDK","%ARG=[%ARG & SRCH=SRCH")
 D PUT^%W1PRM("TMP",$G(%ARG("TMP")))
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 S WD=60+($$COLDOP*10)
 I WD>100 S WD=100
 ;
 I $$SCR="W4PSWDRG" D
 .N A
 .W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
 . W "<tr>"
 .  W "<td>"
 .   W $$^%W1DICT("PSWPREFIX")
 .   W " <input type=""text"" id=""prefix"" size=""1"" "
 .   W " onClick=""this.select()"" "
 .   W "  maxlength=""1"" value="""_$G(@$$^W4PRM@("BGPSW"))_""" />"
 .  W "</td>"
 . W "</tr>",!
 .W "</table>",!
 ;
 I $$SCR="SHULHAN" D
 .N A
 .W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
 . W "<tr>"
 .  W "<td>"
 .   W "<select id=""sugs"" onChange=""ChangeSugS()"" >",!
 .    W "<option value=""ALL"">"_$$^%W1DICT("ALLTABLEGROUPS")_"</option>",!
 .    W "<option value=""NONE"">"_$$^%W1DICT("TABLESWITHOUTGROUP")_"</option>",!
 .    S N="" F  S N=$O(@$$^W4GL("SUGS")@(N)) Q:N=""  D
 . .   S A=$G(^(N))
 . .   W "<option value="""_N_""" "
 . .   I $G(%ARG("SUGS")),N=$G(%ARG("SUGS")) W " selected=""selected"" "
 . .   ;;I '$G(%ARG("SUGS")),N=1 W " selected=""selected"" "
 . .   W ">"_$$H2U^%L1FRM(A)_"</option>",!
 .  W "</select>",!
 .  W "</td>"
 .  ;D
 .  .W "<td>"
 .  .  D ROUNDBUT^%W1JS("crtblgr",$$^%W1DICT("CREATEGROUPTABLES"),"CreateGroupTables()","color:green","wh,22")
 .  .W "</td>"
 . W "</tr>",!
 .W "</table>",!
 .W "<br>",!
 ;
 I $$PRINT,'$$VIEW D
 .W "<table style=""font-size:"_$$^W3FSZ(16)_""" ><tr>"
 . W "<td width=""25%"">"
 .  D HEADFUNC
 . W "</td>"
 . W "<td width=""50%"">"
 . S MSD=$$GET^%W1PRM("MSD")
 . W $$H2U^%L1FRM($$^W3MSDG(+MSD))_" : "_$$H2U^%L1FRM($$TBLNAME)
 . W "</td>"
 .W "</tr></table>",!
 .W "<br>",!
 ;
 I $$SCR="W4MDP" D
 .W $$^%W1DICT("SHOWFIRELIST")
 .W "&nbsp;&nbsp;<input id=""fire"" type=""checkbox"" "
 .W " onClick=""ChangeFire(this)"" "
 .I $$GETP^%W1PRM("MDPFIRE") W "checked=""checked"" "
 .W ">"
 .W "<br>",!
 ;
 I $$SCR="W4DEV" W $$^%W1DICT("MYADDR")_" : "_%REM,"<br>",!
 W "<br>",!
 ;
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_WD_"%"" style=""font-size:"_$$^W3FSZ(10)_""" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3PRM)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3PRM)_""""
 W " >"
 N WD1 S WD1="3%"
 I $$NODEL S WD1="2%"
 I '$$PRINT W "<th width="""_WD1_""">&nbsp;</th>"
 ;;I '$$PRINT W "<th>&nbsp;</th>"
 W "<th >"_$$H2U^%L1FRM($$KEYNAME)_"</th>"
 W "<th >"_$$H2U^%L1FRM($$NAME(0))_"</th>"
 F J=1:1:$$COLDOP D
 .W "<th>"_$$H2U^%L1FRM($$NAME(J))_"</th>"
 ;
 I '$$PRINT W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 N N,I
 D GLOB
 ;
 I GLOB0="PARSUG" D CRSUG
 ;
 D GET ; -- CREATE GLOB IF NEED
 ;
 D GLTMP
 ;
 S N="",I=0 F  S N=$O(@GLOB@(N)) Q:N=""  Q:$$^W4MSL(N)&($$SCR="SHULHAN")  D
 .I '$$COND(N) Q
 .
 .W "<tr id=""tr"_N_""">" S I=I+1
 .I $$NODEL,'$$PRINT W "<td style=""background-color:#eaeaea"">"_I_"</td>",!
 .I '$$NODEL,'$$PRINT D
 ..W "<td align=""center""><span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 ..W " onClick=""InsertRow('"_N_"')""> + </span><br />"
 ..I GLOB0="PARSUG",$$HASITEMS(N) Q
 ..W "<span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
 ..W " onClick=""DeleteRow('"_N_"')"" > - </span></td>"
 .
 .W "<td id=""cd"_N_""" "
 . I $$KEYD W " align=""center"" "
 .W ">&nbsp;"_$$KEYVL(N)_"&nbsp;"
 .I GLOB0="PARSUG",$$HASITEMS(N) D
 ..W "&nbsp;<input type=""button"" value="""_$$^%W1DICT("SHOWCONT")_""" "
 ..W " onClick=""ClickGroup('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center"" valign=""center"""
 .I $$ENGNAME^W4TABL(GLOB0)!($$TYP^W4TABL($$ARG)'="H") W " dir=""LTR"" "
 .W " >&nbsp;"
 .W $$INPUT(N) ;;I 'SEL S CHN=1
 .W "</td>",!
 .S CHN=0
 .;
 .F J=1:1:$$COLDOP D
 ..W "<td align=""center"" valign=""center"" "
 ..W $S($$TYP(J)="H"!($E($$TYP(J))="C")!($$GL(J)'=""&'$$GL(J)):" dir=""RTL""",1:" dir=""LTR""")
 ..W " >&nbsp;"
 .. S SEL=0
 .. W $$INPUT(N_";"_J_";"_$$DFLT(J)) ;;I 'SEL S CHN=1
 ..W "</td>",!
 .;
CHN .I '$$PRINT D
 ..W "<td align=""center"">"
 .. W "<input name=""chn"" id=""chn"_N_""" type=""checkbox"" "_$S(CHN:"checked=""checked""",1:"")_" disabled=""disabled"" />"
 ..W "</td>",!
 .W "</tr>",!
 .I $$SCR="W4ORDPLC" W $$ORDPLC2(N)
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W4SPIDK-SAVE","PRM=PRM")
 ;
 N CD,NM,NM1,MH,DESC,GR,SHOW,SCR,LSCR
 S CD=$P(PRM,";")
 ;
 N GLOB D GLOB
 D PUT^%W3DEB("W4SPIDK-SAVE","GLOB=GLOB & CD=CD")
 ;
 I $D(@$$^W4MAIN("TMPDEL")@(CD)) D  Q 1
 .K @$$^W4MAIN("TMPDEL")@(CD)
 .K @GLOB@(CD)
 ;
 D GLTMP
 ;
 S NM=$$CNWEB^%L1FRM($P(PRM,";",2))
 S NM1=$S($$^%W1DIR="RTL"&'$$ENGNAME^W4TABL(GLOB0):$$INVH^%L1FRM(NM),1:NM)
 ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 I LSCR,$D(@W4SP@(SCR,"SAVE"))#2 X @W4SP@(SCR,"SAVE") Q 1
 ;
 I LSCR,$D(@W4SP@(SCR,"PUT",0))#2 X @W4SP@(SCR,"PUT",0)
 ;
 I LSCR,'($D(@W4SP@(SCR,"PUT",0))#2),'$$PUTMUST D
 .I $D(@W4SP@(SCR,"GET",0,"OU")) Q
 .I $L($G(@GLOB@(CD))),'$L(NM1) Q
 .S @GLOB@(CD)=NM1
 ;
 I 'LSCR,$L(NM1) D
 .S @GLOB@(CD)=NM1
 ;
 N J F J=3:1:$L(PRM,";") D
 .S NM=$$CNWEB^%L1FRM($P(PRM,";",J))
 .I $$TYP(J-2)="H",$$^%W1DIR="RTL" S NM=$$INVH^%L1FRM(NM)
 .
 .I LSCR,$D(@W4SP@(SCR,"PUT",J-2))#2 X @W4SP@(SCR,"PUT",J-2) Q
 .I LSCR,$D(@W4SP@(SCR,"GET",J-2,"OU")) Q
 .I LSCR,'($D(@W4SP@(SCR,"PUT",J-2))#2),$$PUTMUST Q
 .N ARGGL S ARGGL=$G(@$$^W4MAIN("TMPARG")@("GLOB"))
 .I $L(ARGGL),$D(@W4SP@(ARGGL,"PUT",J-2))#2 X @W4SP@(ARGGL,"PUT",J-2) Q
 .S $P(@GLOB@(CD,1),"\",J-2)=NM
 ;
 I $$ONEGLPAR^W3PRM!$$SUPER^W3PRM D
 .I GLOB0="MLSUGP" D
 ..S @$$^W4GL("PARSUG")@(CD)=NM1
 ..S $P(@$$^W4GL("PARSUG")@(CD,1),"\")=$P($G(@GLOB@(CD,1)),"\")
 .I GLOB0="MLDEP" S @$$^W4GL("DEP")@(CD)=NM1
 ;
 K @$$^W4MAIN("VRM")
 Q 1
 ;
 ;
SAVEND(STAM) ;
 N SCR,LSCR,ER
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 K @$$^W4MAIN("TMPSPER")
 I LSCR,$D(@W4SP@(SCR,"PUT"))#2 X @W4SP@(SCR,"PUT")
 I $D(@$$^W4MAIN("TMPSPER")) S ER=$G(^("TMPSPER")) K ^("TMPSPER") Q ER
 ;
 K @$$^W4MAIN("TMPDEL")
 K @$$^W4MAIN("TMPLAST")
 Q 1
 ;
 ;
DELROW(CD) ;
 Q:'$G(JB)
 I $D(@$$^W4MAIN("TMPDEL")@(CD)) K ^(CD) Q
 N GLOB D GLOB,GLTMP
 S @$$^W4MAIN("TMPDEL")@(CD)=$G(@GLOB@(CD))
 Q
 ;
 ;
NEWCOD(STAM) ;
 N GLOB D GLOB,GLTMP
 N A S A=$O(@GLOB@(9999999),-1)+1
 I $$SCR="SHULHAN" S A=$O(@GLOB@(999),-1)+1 I A=999,$D(@GLOB@(999)) Q ""
 I A'>$G(@$$^W4MAIN("TMPLAST")) D
 .S A=@$$^W4MAIN("TMPLAST")+1
 S @$$^W4MAIN("TMPLAST")=A
 Q A
 ;
GLOB ;
 N PRMAIN S PRMAIN=0
 I $L($G(%ARG("GLOB"))) S GLOB=%ARG("GLOB") G GLOBM
 S GLOB=$G(@$$^W4MAIN("TMPARG")@("GLOB"))
 Q:GLOB=""
GLOBM S GLOB0=GLOB S:$E(GLOB)="^" GLOB0=$E(GLOB,2,20)
 S @$$^W4MAIN("TMPARG")@("GLOB")=GLOB0
 I GLOB0["[W4MAIN]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I GLOB0["[M]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I GLOB0["[T]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I $E(GLOB0,1,3)="TMP" S PRMAIN=4
 I $E(GLOB0)="[" S GLOB0=$P(GLOB0,"]",2),PRMAIN=1
 S @$$^W4MAIN("TMPARG")@("GLOB0")=GLOB0
 I 'PRMAIN S GLOB=$$^W4GL(GLOB0)
 I PRMAIN=4 S GLOB="^[$$^W3MAIN]"_GLOB0_"($$^%W1JB)" G GLOBE
 I PRMAIN S GLOB="^[$$^W3MAIN]"_GLOB0
GLOBE Q
 ;
NODEL(STAM) ;
 N W4SP D W4SP
 I $D(@$$^W4MAIN("TMPARG")@("NODEL")) Q ^("NODEL")
 I '$L($$SCR) Q 0
 I $D(@W4SP@($$SCR,"NODEL")) Q 1
 Q 0
 ;
PUTMUST(STAM) ;
 I $D(@$$^W4MAIN("TMPARG")@("PUTMUST")) Q ^("PUTMUST")
 I '$L($$SCR) Q 0
 N W4SP D W4SP
 I $D(@W4SP@($$SCR,"PUTMUST")) Q 1
 Q 0
 ;
 ;
GLOBPRM ;
 I $L($$SCR),$D(^[$$^W3MAIN]W4SP($$SCR,"SETPRM"))#2 D  Q
 .X ^("SETPRM")
 ;
 N GLOB,GLOB0 D GLOB
 I $L($$SCR) S GLOB0=$$SCR
 Q:$G(GLOB0)=""
 I '$D(@$$^W4TABL@(GLOB0)) Q
 I '$D(@$$^W4MAIN("TMPARG")@("TBLNAME")) D
 .S @$$^W4MAIN("TMPARG")@("TBLNAME")=$$TBLNAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYSIZE")) D
 .S @$$^W4MAIN("TMPARG")@("KEYSIZE")=$$KEYSIZE^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYNAME")) D
 .S @$$^W4MAIN("TMPARG")@("KEYNAME")=$$KEYNAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYTYPE")) D
 .S @$$^W4MAIN("TMPARG")@("KEYTYPE")=$$KEYTYPE^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("NAME")) D
 .S @$$^W4MAIN("TMPARG")@("NAME")=$$NAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("LEN")) D
 .S @$$^W4MAIN("TMPARG")@("LEN")=$$LEN^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("TYP")) D
 .S @$$^W4MAIN("TMPARG")@("TYP")=$$TYP^W4TABL(GLOB0,0)
 I '$D(@$$^W4MAIN("TMPARG")@("VLDPROG")) D
 .S @$$^W4MAIN("TMPARG")@("VLDPROG")=$$VLDPROG^W4TABL(GLOB0)
 ;
 N J F J=1:1:$$COLDOP D
 .I '$D(@$$^W4MAIN("TMPARG")@("NAME"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("NAME"_J)=$$NAME^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("LEN"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("LEN"_J)=$$LEN^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("TYP"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("TYP"_J)=$$TYP^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("GL"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("GL"_J)=$$GL^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("MUST"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("MUST"_J)=$$MUST^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("DFLT"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("DFLT"_J)=$$DFLT^W4TABL(GLOB0,J)
 Q
 ;
D(PRM)
 N GLOB D GLOB,GLTMP
 I $G(PRM)="" Q $D(@GLOB)
 Q $D(@GLOB@(PRM))
 ;
COLDOP(STAM) ;
 N J F J=1:1 Q:'$D(@$$^W4MAIN("TMPARG")@("NAME"_J))
 I '(J-1),$L($G(GLOB0)) Q $$COLDOP^W4TABL(GLOB0)
 Q (J-1)
 ;
VL(RKV)
 Q $G(@$$^W4MAIN("TMPARG")@(RKV))
 ;
COND(N) ;
 N W4SP N %COND,SCR,LSCR S %COND=1
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 I LSCR,$L($G(@W4SP@(SCR,"COND"))) X ^("COND")
 I $$SCR="SHULHAN" D
 .I $G(%ARG("SUGS")),$$SUGL^W4L(N)'=%ARG("SUGS") S %COND=0 Q
 .I $G(%ARG("SUGS"))="NONE",$$SUGL^W4L(N) S %COND=0 Q
 Q %COND
 ;
NAME(J) ;
 I +$G(J)=0 S J=""
 Q $$VL("NAME"_J)
 ;
LEN(J) ;
 I +$G(J)=0 S J=""
 N LEN S LEN=$$VL("LEN"_J)
 I 'LEN S LEN=12
 Q LEN
 ;
TYP(J) ;
 I +$G(J)=0 S J=""
 N TYP S TYP=$$VL("TYP"_J)
 I TYP="" S TYP="E"
 Q TYP
 ;
MUST(J) ;
 I +$G(J)=0 S J=""
 N MUST S MUST=$$VL("MUST"_J)
 I MUST="" S MUST="N"
 I MUST="Y"!(MUST=1) Q 1
 Q 0
 ;
DFLT(J) ;
 I +$G(J)=0 S J=""
 N DFLT S DFLT=$$VL("DFLT"_J)
 Q DFLT
 ;
OU(J) ;
 N SCR,LSCR
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 S J=+$G(J)
 I SCR="W4POSMSK"!(SCR="W4MNSIS"),J=0 Q 1
 I $L(SCR) Q $D(@W4SP@(SCR,"GET",J,"OU"))
 Q 0
 ;
BOOL(J) I $$TYP(J)="B" Q 1
 Q 0
 ;
TIME(J) I $$TYP(J)="T" Q 1
 Q 0
 ;
DATE(J) I $$TYP(J)="D" Q 1
 Q 0
 ;
DAY(J) I $$TYP(J)="DY" Q 1
 Q 0
 ;
COLORB(J) I $$TYP(J)="CB" Q 1
 Q 0
 ;
COLORF(J) I $$TYP(J)="CF" Q 1
 Q 0
 ;
GL(J) ;
 I +$G(J)=0 S J=""
 N GL S GL=$$VL("GL"_J)
 Q GL
 ;
VAL(N,J) ;
 I $G(N)="" Q ""
 N GLOB,GLOB0,VAL D GLOB,GLTMP
 D W4SP
 S J=+$G(J)
 I $L($$SCR),$D(@W4SP@($$SCR,"GET",J)) Q @(@W4SP@($$SCR,"GET",J))
 ;
 I +$G(J)=0 Q $G(@GLOB@(N))
 N ARGGL S ARGGL=$G(%ARG("GLOB"))
 I $L(ARGGL),$D(@W4SP@(ARGGL,"GET",J)) Q @(@W4SP@(ARGGL,"GET",J))
 ;
 S VAL=$P($G(@GLOB@(N,1)),"\",J)
 ;
 I VAL="" D
 .I $L(ARGGL),$D(@W4SP@(ARGGL,"INI",J)) S VAL=@(@W4SP@(ARGGL,"INI",J)) Q
 .;
 .S VAL=$$DFLT(J)
 Q VAL
 ;
 ;
VALYES(N,J)
 I $$VAL(N,J) S SEL=1 Q 1
 I $$VAL(N,J)="k" S SEL=1 Q 1
 I $$VAL(N,J)=0 S SEL=1 Q 0
 I $$VAL(N,J)="l" S SEL=1 Q 0
 Q 0
 ;
VALDD(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,1,2)
 ;
VALMM(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,3,4)
 ;
VALYY(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,5,6)
 ;
VALHR(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,1,2)
 ;
VALMN(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,3,4)
 ;
 ;
KEYSIZE(STAM) ;
 Q $$VL("KEYSIZE")
 ;
KEYNAME(STAM) ;
 I $L($G(MRKVZ(1,1))) Q MRKVZ(1,1)
 Q $$VL("KEYNAME")
 ;
KEYD(STAM) ;
 I $$ARG="" Q 0
 I $$KEYTYPE^W4TABL($$ARG)="D" Q 1
 Q 0
 ;
KEYT(STAM) ;
 I $$ARG="" Q 0
 I $$KEYTYPE^W4TABL($$ARG)="T" Q 1
 Q 0
 ;
KEYVL(N) ;
 I $$KEYD,N?5N Q $ZD(N,"DD.MM.YY")
 Q N
 ;
VLDPROG(STAM)
 Q $$VL("VLDPROG")
 ;
ARG(STAM)
 N ARG S ARG=$$SCR
 I ARG="" S ARG=$G(@$$^W4MAIN("TMPARG")@("GLOB0"))
 Q ARG
 ;
TBLNAME(STAM)
 I $$SCR="W4ORDPLC" Q $ZD($$GETP^%W1PRM("DT"),"DD.MM.YY")_" -l zepgley zpnfd"
 I $L($G(MRKVZ("KOT"))) Q MRKVZ("KOT")
 Q $$VL("TBLNAME")
 ;
DOP(J) ;
 I $G(J) Q "dop"
 Q ""
 ;
 ;
INPUT(PRM) ;
 N CD,J,INP,GLOB,GLOB0,DFLT D GLOB
 S CD=$P(PRM,";")
 S J=$P(PRM,";",2)
 S DFLT=$P(PRM,";",3)
 ;
 S INP="&nbsp;"
 ;
 I $$BOOL(J) D  G EINP
 .S INP="<input id=""name"_CD_$$DOP(J)_J_""" "
 .S INP=INP_" type=""checkbox"" "
 .I $$OU(J)!$$PRINT S INP=INP_" disabled=""disabled"""
 .S INP=INP_$S($$VALYES(CD,J):" checked=""checked""",1:"")
 .S INP=INP_$$ONCHANGE(CD)_" />"
 ;
 I $$OU(J)!$$PRINT D  G EINP
 .S INP=$$H2U^%L1FRM($$VAL(CD,J))
 ;
 I $$TIME(J) D  G EINP
 .S INP="<select id=""name"_CD_$$DOP(J)_J_"hr"" "_$$ONCHANGE(CD)_" >"
 .F I=0:1:23 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALHR(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALHR(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 .S INP=INP_"<select id=""name"_CD_$$DOP(J)_J_"mn"" "_$$ONCHANGE(CD)_" >"
 .F I=0:15:45 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALMN(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALMN(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$DAY(J) D  G EINP
 .S INP="<select id=""name"_CD_$$DOP(J)_J_""" "_$$ONCHANGE(CD)_" >"
 .N I
 .F I=1:1:7 D
 ..S INP=INP_"<option value="""_I_""""
 ..I I=$$VAL(CD,J) S INP=INP_" selected=""selected"""
 ..S INP=INP_" >"_$$^%W1DICT("DAY"_I)_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$DATE(J) D  G EINP
 .S SEL=1
 .N %W1DAT S %W1DAT("CHANGE")="OnChange('"_CD_"')"
 .N CD1 S CD1=CD I CD?5N S CD1=$ZD(CD,"DD.MM.YY")
 .S INP=$$STDT^%W1DAT("name"_CD_$$DOP(J)_J,"",$$VALDD(CD1,J),$$VALMM(CD1,J),$$VALYY(CD1,J))
 ;
 I $$COLORB(J)!$$COLORF(J) D  G EINP
 .S SEL=1
 .N KIND S KIND="BG"
 .I $$COLORF(J) S KIND="FG"
 .N ID,IDV,IDE S ID="name"_CD_$$DOP(J)_J
 .S IDV="preview"_CD_$$DOP(J)_J
 .S IDE="name"_CD_$$DOP(J)_$$GL(J)
 .S INP="<input type=""text"" id="""_ID_""" size=""5"" "
 .
 .N VAL S VAL=$$SPA^%L1FRM($$VAL(CD,J))
 .S INP=INP_" value="""_VAL_""" "
 .N CMD S CMD=" onClick=""OnClickColor(event,'"_ID_"','"_IDV_"','"_IDE_"','"_KIND_"');OnChange('"_CD_"')"" "
 .I KIND="BG" S INP=INP_" onChange=""OnChangeBGColor('"_CD_"','"_IDV_"','"_ID_"','"_IDE_"')"" "
 .I KIND="FG" S INP=INP_" onChange=""OnChangeFGColor('"_CD_"','"_IDV_"','"_ID_"','"_IDE_"')"" "
 .S INP=INP_" style=""font-size:"_$$^W3FSZ(10)_""" "
 .S INP=INP_">&nbsp;&nbsp;<span id="""_IDV_""" class=""colorpreview"" "
 .S INP=INP_" style=""background-color:"_VAL_""" "
 .S INP=INP_" "_CMD
 .S INP=INP_"></span>"
 ;
 I $$GL(J)=""!$$GL(J),'$$BOOL(J) D INPTXT(CD,J,$G(GLOB0))  G EINP
 ;
 I $$GL(J)'="",'$$GL(J) D SELFROM(CD,J) G EINP
EINP ;
 Q INP
 ;
 ;
GLSEL ;
 N A S A=$G(^(NN))
 I $G(GL1)="NAME" S A=$G(^(NN,1))
 I $G(GL)="SHULH" S A=" "
 I NN=$$VAL(CD,J) S SEL=1
 S INP=INP_"<option value="""_NN_""""
 S INP=INP_$S(NN=$$VAL(CD,J):" selected=""selected""",1:"")_" >"
 S INP=INP_NN_" "_$S(GL1["dev":" : "_A,1:$$H2U^%L1FRM(A))_"</option>"
 Q
 ;
 ;
INPTXT(CD,J,GLOB0) ;
 N ID
 S ID="name"_CD_$S(J:"dop"_J,1:"")
 S INP="<input id="""_ID_""" type=""text"""
 S INP=INP_" size="""_($$LEN(J)-2)_""" maxlength="""_$$LEN(J)_""""
 ;
 N PRENG S PRENG=0
 ;
 I $$TYP(J)="N"!('J&$$ENGNAME^W4TABL($G(GLOB0))) D
 .S INP=INP_" dir=""LTR"" ",PRENG=1
 .I $$TYP(J)="N" S INP=INP_" onFocus=""this.select()"" "
 ;
 I J,$$TYP(J)="E" D
 .I $$LEN(J)<10 S INP=INP_" onFocus=""this.select()"" "
 .S INP=INP_" OnKeyUp=""EnglishOnly(event,'"_ID_"')"" "
 ;
 S INP=INP_" style="""
 ;
 N PRM S PRM=$$GL(J) I PRM D  ; -- COLOR
 .N BGN,FGN S BGN=$P(PRM,";"),FGN=$P(PRM,";",2)
 .I BGN S INP=INP_"background-color:"_$$VAL(CD,BGN)_";"
 .I FGN S INP=INP_"color:"_$$VAL(CD,FGN)_";"
 .I PRENG,'BGN,'FGN S INP=INP_"text-align:right"
 .I BGN!FGN S INP=INP_"text-align:center"
 ;
 S INP=INP_";font-size:"_$$^W3FSZ(11)
 S INP=INP_""""
 N VAL S VAL=$$VAL(CD,J)
 D
 .N GLOB D GLOB
 .I $$ENGNAME^W4TABL($G(GLOB0)),'J Q
 .I $$TYP^W4TABL($G(GLOB0),J)="E" Q
 .S VAL=$$H2U^%L1FRM(VAL)
 .I $$GL(J) S VAL="Preview"
 ;
 S INP=INP_" value="""_VAL_""" "
 S INP=INP_$$ONCHANGE(CD)_" />&nbsp;"
 Q
 ;
 ;
SELFROM(CD,J) ;
 ; INPUT: CD,J
 ; OUTPUT - INP
 ;-------------------------------------------------
 N PRMAIN S PRMAIN=0
 N GL1 S GL1=$$GL1(J)
 ;
 I '$$SMALLG(GL1) W $$GLINPUT(CD,J,GL1) Q
 ;
 S INP=$G(INP)_" <select dir="""_$S(GL1["dev":"LTR",1:$$^%W1DIR)_""" id=""name"_CD_$$DOP(J)_J_""" "_$$ONCHANGE(CD)_" >"
 ;
 I GL1="S1" D  Q
 .S INP=INP_"<option value=""0"" "_$$CHKS1(GLOB0,CD,0)_" >"_$$^%W1DICT("BACK2WAITERS")_"</option>"
 .S INP=INP_"<option value=""1"" "_$$CHKS1(GLOB0,CD,1)_" >"_$$^%W1DICT("BACK2TABLES")_"</option>"
 .S INP=INP_"<option value=""2"" "_$$CHKS1(GLOB0,CD,2)_" >"_$$^%W1DICT("BACK2ITEMS")_"</option>"
 .S INP=INP_"</select>"
 ;
 D
 .I GL1="NAME" D
 ..S INP=INP_"<option value="""">"_$$^%W1DICT("CHOICEWORKER")_"</option>"
 .;
 .I GL1="SHULH" D
 ..S INP=INP_"<option value="""">"_$$^%W1DICT("CHOICETABLE")_"</option>"
 .
 .S INP=INP_"<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>"
 ;
 I 'PRMAIN D
 .N NN S NN=""
 .F  S NN=$O(@$$^W4GL(GL1)@(NN)) Q:NN=""  Q:NN>999&(GL1="SHULH")  D GLSEL
 ;
 I PRMAIN=1 D
 .N NN S NN="" F  S NN=$O(@("^[$$^W3MAIN]"_GL1)@(NN)) Q:NN=""  D GLSEL
 ;
 S INP=INP_"</select>"
 ;
 I GL1="P1SETM" D
 .S INP=INP_"&nbsp;&nbsp;"
 .S INP=INP_"<input type=""button"" value="""_$$^%W1DICT("SHOW")_""" "
 . S INP=INP_" style=""color:green"" "
 . S INP=INP_" onClick=""ShowSaleSet('"_CD_"',"_J_")"" "
 .S INP=INP_">"
 Q
 ;
 ;
SCR(STAM)
 Q $$SCR^W4SPVIDK
 ;
SAVETABLES(STAM)
 Q 1
 ;
W4SP ;
 S W4SP="^[$$^W3MAIN]W4SP"
 Q
 ;
GET ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 N GLOB,GLOB0 D GLOB,GLTMP
 I LSCR,$D(@W4SP@(SCR,"GET"))#2 X @W4SP@(SCR,"GET")
 Q
 ;
 ;
GLTMP ;
 N TMP S TMP=$G(%ARG("TMP"))
 I TMP="" S TMP=$$GET^%W1PRM("TMP")
 I TMP["UNDEF" S TMP=""
 I $L(TMP) S GLOB=$$^W4MAIN(TMP)
 Q
 ;
HEADFUNC ;
 N W4SP D W4SP
 N SCR S SCR=$$SCR Q:'$L(SCR)
 I $D(@W4SP@(SCR,"HEADFUNC"))#2 X @W4SP@(SCR,"HEADFUNC") Q
 W "&nbsp;"
 Q
 ;
 ;--------------------------------- CALLS --------------------------------
SHULHAN1(CD,NM) ;
 I $G(CD)=""!($G(NM)="") Q
 S $P(@$$^W4GL("LKH")@(CD,2),"*",5)=NM
 I @$$^W4GL("SUGS")@(NM)="xa"!(@$$^W4GL("SUGS")@(NM)="BAR") D
 .S @$$^W4GL("BAR")@(CD)=""
 Q
SHULHAN2(CD,NM) ;
 S $P(@$$^W4GL("LKH")@(CD,2),"*",7)=NM
 Q
 ;
LEVTB1(CD,NM) ;
 S $P(@$$^W4GL("NAME")@(CD),"\",1)=NM
 Q
LEVTB2(CD,NM) ;
 S $P(@$$^W4GL("NAME")@(CD),"\",2)=NM
 Q
LEVTB3(CD,NM) ;
 S @$$^W4GL("NAME")@(CD,11)=NM
 Q
 ;
GETMDP ;
 N GLOB D GLOB K @GLOB
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S @GLOB@(N)=$P($G(@$$^W4PRM@("MDP",N)),"\",4)
 .S $P(@GLOB@(N,1),"\")=$P($G(@$$^W4PRM@("MDP",N)),"\",3)
 .S $P(@GLOB@(N,1),"\",2)=$P($G(@$$^W4PRM@("MDP",N)),"\",5)
 .S $P(@GLOB@(N,1),"\",3)=$P($G(@$$^W4PRM@("MDP",N)),"\",6)
 .S $P(@GLOB@(N,1),"\",4)=$P($G(@$$^W4PRM@("MDP",N)),"\",7)
 Q
 ;
GETACNT ;
 N GL S GL=$$^W4MAIN("TMP") K @GL
 N N S N="" F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  D
 .S @GL@(N)=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",1)
 .S $P(@GL@(N,1),"\")=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",2)
 .S $P(@GL@(N,1),"\",2)=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",3)
 .S $P(@GL@(N,1),"\",3)=$P($G(@$$^W4GL("W4ACNT")@(N)),"\",4)
 Q
 ;
PUTACNT(PRM) ;
 N (JB,%ARG,PRM,%REM)
 S SH=$P(PRM,";")
 S BANK=$P(PRM,";",2)
 S BANK1=$$CNWEB^%L1FRM($P(PRM,";",3))
 S BANK1=$$INVH^%L1FRM(BANK1)
 S SNIF=$P(PRM,";",4)
 S HESH=$P(PRM,";",5)
 S @$$^W4MAIN("TMP")@(SH)=BANK
 S @$$^W4MAIN("TMP")@(SH,1)=BANK1_"\"_SNIF_"\"_HESH
 Q
 ;
SAVEACNT ;
 ;;K @$$^W4GL("W4ACNT")
 N N S N="" F  S N=$O(@$$^W4MAIN("TMP")@(N)) Q:N=""  D
 .S @$$^W4GL("W4ACNT")@(N)=$G(@$$^W4MAIN("TMP")@(N))_"\"_$G(@$$^W4MAIN("TMP")@(N,1))
 K @$$^W4MAIN("TMP")
 Q
 ;
MDP ;
 N GLOB D GLOB
 K @$$^W4PRM@("MDP")
 N N S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S $P(@$$^W4PRM@("MDP",N),"\",1)=6
 .S $P(@$$^W4PRM@("MDP",N),"\",2)="CBM-231"
 .S $P(@$$^W4PRM@("MDP",N),"\",4)=$G(@GLOB@(N))
 .S $P(@$$^W4PRM@("MDP",N),"\",3)=$P($G(@GLOB@(N,1)),"\")
 .S $P(@$$^W4PRM@("MDP",N),"\",5)=$P($G(@GLOB@(N,1)),"\",2)
 .S $P(@$$^W4PRM@("MDP",N),"\",6)=$P($G(@GLOB@(N,1)),"\",3)
 .S $P(@$$^W4PRM@("MDP",N),"\",7)=$P($G(@GLOB@(N,1)),"\",4)
 S @$$^W4PRM@("MDP")=$$GETP^%W1PRM("MDPFIRE")
 D KILL^%W1PRM("MDPFIRE")
 K @GLOB
 Q
 ;
GETMDPH ;
 N GLOB D GLOB K @GLOB
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .S I=I+1,@GLOB@(I)=$G(@$$^W4GL("PLUK")@(N))
 .S $P(@GLOB@(I,1),"\")=N
 .S $P(@GLOB@(I,1),"\",2)=$G(@$$^W4GL("PLUK")@(N,"LP"))
 .S $P(@GLOB@(I,1),"\",3)=$G(@$$^W4GL("PLUK")@(N,"MSK"))
 .S $P(@GLOB@(I,1),"\",4)=$G(@$$^W4GL("PLUK")@(N,"MSKPORT"))
 .S $P(@GLOB@(I,1),"\",5)=$G(@$$^W4GL("PLUK")@(N,"SCANER"))
 .S $P(@GLOB@(I,1),"\",6)=$G(@$$^W4GL("PLUK")@(N,"KUPA"))
 .S $P(@GLOB@(I,1),"\",7)=$G(@$$^W4GL("PLUK")@(N,"HSB"))
 .S $P(@GLOB@(I,1),"\",8)=$G(@$$^W4GL("PLUK")@(N,"BIT"))
 .S $P(@GLOB@(I,1),"\",9)=$G(@$$^W4GL("PLUK")@(N,"HNH"))
 .S $P(@GLOB@(I,1),"\",10)=$G(@$$^W4GL("PLUK")@(N,"MZM"))
 .S $P(@GLOB@(I,1),"\",11)='$G(@$$^W4GL("PLUK")@(N,"NOCHK"))
 .S $P(@GLOB@(I,1),"\",12)='$G(@$$^W4PRM@("NOPRINT",N))
 .S $P(@GLOB@(I,1),"\",13)=$G(@$$^W4GL("PLUK")@(N,"DISP"))
 Q
 ;
MDPH ;
 N GLOB D GLOB
 N N,A,KUP,PORT
 N P S P=$G(@$$^W4GL("PLUK"))
 M @$$^W4GL("PLUK0")=@$$^W4GL("PLUK")
 K @$$^W4GL("PLUK")
 ;
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S KUP=$G(^(N))
 .S A=$G(^(N,1))
 .S PORT=$P(A,"\",1) Q:'PORT
 .S @$$^W4GL("PLUK")@(PORT)=KUP
 .S @$$^W4GL("PLUK")@(PORT,"LP")=$P(A,"\",2)
 .S @$$^W4GL("PLUK")@(PORT,"LP","SUG")=6
 .S @$$^W4GL("PLUK")@(PORT,"MSK")=$P(A,"\",3)
 .S @$$^W4GL("PLUK")@(PORT,"MSKPORT")=$P(A,"\",4)
 .S @$$^W4GL("PLUK")@(PORT,"SCANER")=$P(A,"\",5)
 .S @$$^W4GL("PLUK")@(PORT,"KUPA")=$P(A,"\",6)
 .S @$$^W4GL("PLUK")@(PORT,"HSB")=$P(A,"\",7)
 .S @$$^W4GL("PLUK")@(PORT,"BIT")=$P(A,"\",8)
 .S @$$^W4GL("PLUK")@(PORT,"HNH")=$P(A,"\",9)
 .S @$$^W4GL("PLUK")@(PORT,"MZM")=$P(A,"\",10)
 .S @$$^W4GL("PLUK")@(PORT,"NOCHK")='$P(A,"\",11)
 .S @$$^W4PRM@("NOPRINT",PORT)='$P(A,"\",12)
 .S @$$^W4GL("PLUK")@(PORT,"DISP")=$P(A,"\",13)
 ;
 S @$$^W4GL("PLUK")=P
 K @GLOB
 Q
 ;
GETMDPK ;
 N GLOB D GLOB K @GLOB
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .S I=I+1,@GLOB@(I)=$G(@$$^W4GL("PLUK")@(N))
 .S $P(@GLOB@(I,1),"\")=N
 .S $P(@GLOB@(I,1),"\",2)=$G(@$$^W4GL("PLUK")@(N,"LP"))
 .S $P(@GLOB@(I,1),"\",3)=$G(@$$^W4GL("PLUK")@(N,"MSK"))
 .S $P(@GLOB@(I,1),"\",4)=$G(@$$^W4GL("PLUK")@(N,"MSKPORT"))
 Q
 ;
MDPK ;
 N GLOB D GLOB
 N N,A,KUP,PORT
 N P S P=$G(@$$^W4GL("PLUK"))
 M @$$^W4GL("PLUK0")=@$$^W4GL("PLUK")
 ;;K @$$^W4GL("PLUK")
 ;
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S KUP=$G(^(N))
 .S A=$G(^(N,1))
 .S PORT=$P(A,"\",1) Q:'PORT
 .S @$$^W4GL("PLUK")@(PORT)=KUP
 .S @$$^W4GL("PLUK")@(PORT,"LP")=$P(A,"\",2)
 .S @$$^W4GL("PLUK")@(PORT,"LP","SUG")=6
 .S @$$^W4GL("PLUK")@(PORT,"MSK")=$P(A,"\",3)
 .S @$$^W4GL("PLUK")@(PORT,"MSKPORT")=$P(A,"\",4)
 ;
 S @$$^W4GL("PLUK")=P
 K @GLOB
 Q
 ;
GETPOSMSK ;
 N GLOB D GLOB K @GLOB
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .S @GLOB@(N)=$G(@$$^W4GL("PLUK")@(N))
 .S $P(@GLOB@(N,1),"\",1)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";"),",")
 .S $P(@GLOB@(N,1),"\",2)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";"),",",2)
 .S $P(@GLOB@(N,1),"\",3)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",2),",")
 .S $P(@GLOB@(N,1),"\",4)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",2),",",2)
 .S $P(@GLOB@(N,1),"\",5)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",3),",")
 .S $P(@GLOB@(N,1),"\",6)=$P($P($G(@$$^W4PRM@("JUMPTBL",N)),";",3),",",2)
 Q
 ;
PUTPOSMSK ;
 N GLOB D GLOB
 N N,A,KUP,PORT
 K @$$^W4PRM@("JUMPTBL")
 ;
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S A=$G(^(N,1)),ST=""
 .N K F K=1:2:5 S ST=ST_$P(A,"\",K)_","_$P(A,"\",K+1)_";"
 .S @$$^W4PRM@("JUMPTBL",N)=ST
 Q
 ;
SETGL ;
 N GL,I
 D SETGL^W4MANA
 ;
 S GL=$$^W4GL("W4VWGR")
 K @GL
 S @GL@(1)="bivdl"
 S @GL@(2)="bivdl `l "
 S @GL@(3)="dcrqn hixtza wx bivdl"
 S @GL@(4)="migelyn hixtza wx bivdl"
 ;
 S GL=$$^W4GL("W4EX2K")
 K @GL
 S @GL@(1)="`vi"
 S @GL@(0)="`vi `l "
 ;
 S GL=$$^W4GL("W4DARGA")
 K @GL
 S @GL@(2)="y""ng` zbxc"
 S @GL@(3)="dldpd zbxc"
 S @GL@(4)="ziad lra zbxc"
 ;
 Q
 ;
TOOMUCHLINES(STAM) ;
 N GLOB,TMP
 D GLOB,GLTMP
 N TOO S TOO=0
 I $G(%ARG("SCR"))["W4MDPH" D
 .N N,I S I=0 ;
 .S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 ..I N<50 S I=I+1
 .I $G(@$$^W4PRM@("MAXPOS")),I>^("MAXPOS") S TOO=1
 ;
 Q TOO
 ;
 ;
CHKS1(GLOB,CD,VL) ;
 I GLOB="SUGS" Q $S(+VL=+$P($G(@$$^W4GL("SUGS")@(CD,1)),"\",5):" selected=""selected"" ",1:"")
 Q ""
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 I $$VIEW Q 1
 Q 0
 ;
VIEW(STAM) I $G(%ARG("VIEW")) Q 1
 Q 0
 ;
CHKFILL(STAM) ;
 I $$VL^W4SPIDK("SCR")="SHULHAN" Q 0
 I $$KEYD Q 0
 Q 1
 ;
INIT ;
 I '$G(%ARG("FIRST")) Q
 D KILL^%W1PRM("MDPFIRE")
 I $$SCR="W4MDP" D PUT^%W1PRM("MDPFIRE",$G(@$$^W4PRM@("MDP")))
 Q
 ;
VLD(PRM) ;
 N RES S RES=1
 D PUT^%W3DEB("W4SPIDK-VLD","PRM=PRM")
 F J=1:1:$$COLDOP D  Q:RES'=1
 .I $$MUST(J),$P(PRM,";",J+2)=""  D
 ..S RES="WRONGFIELDVALUE;name"_$P(PRM,";")_$$DOP(J)_J_";"_$$NAME(J)
 I RES=1,$$VLDPROG'="" D
 .X "S RES=$$"_$$VLDPROG_"(PRM)"
 Q RES
 ;
ORDPLC2(CD) ;
 N J,INP S J=6
 S INP="<td>&nbsp;</td>"
  S INP=INP_"<td colspan=""2"">"
  S INP=INP_$$^%W1DICT("SHULHANOT")_" : "
  S INP=INP_"<input type=""text"" "_$$IFVIEW_" id=""TABLES"_CD_""" "_$$ONCHANGE(CD)_" dir=""LTR"" align=""right"" size=""25"" value="""_$$H2U^%L1FRM($$VAL(CD,J+1))_""">"
  S INP=INP_"</td>"
  S INP=INP_"<td colspan=""4"">"
  S INP=INP_$$^%W1DICT("COMMENT")_" : "
  S INP=INP_"<input type=""text"" "_$$IFVIEW_" id=""COMMENT"_CD_""" "_$$ONCHANGE(CD)_" size=""60"" value="""_$$H2U^%L1FRM($$VAL(CD,J+2))_""">"
  S INP=INP_"</td>"
  S INP=INP_"<td colspan=""4"">"
  S INP=INP_$$^%W1DICT("RECEIVER")_" : "
  S INP=INP_"<input type=""text"" "_$$IFVIEW_" id=""RCVR"_CD_""" "_$$ONCHANGE(CD)_" size=""12"" value="""_$$H2U^%L1FRM($$VAL(CD,J+3))_""">"
  S INP=INP_"</td>"
 S INP=INP_""
 Q INP
 ;
ONCHANGE(CD)
 Q " onChange=""OnChange('"_CD_"')"" "
 ;
IFVIEW(STAM) ;
 I $$VIEW Q " disabled=""disabled"" "
 Q ""
 ;
CRSUG ;
 N N,SUG
 K @$$^W4MAIN("VRM")
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .S SUG=$$SUG^W4P(N) Q:SUG=""
 .S @$$^W4MAIN("VRM")@(SUG,N)=""
 Q
 ;
HASITEMS(KV) ;
 I $D(@$$^W4MAIN("VRM")@(KV))>9 Q 1
 Q 0
 ;
GLINPUT(CD,J,GL) ;
 N VV,ID,TYP,LEN
 ;
 S ID="name"_CD_"dop"_J
 S TYP=$$TYP(J)
 S LEN=$$LEN(J)
 S VL=$$VAL(CD,J)
 D BEGVV(ID,TYP,LEN,VL)
 S VV=VV_" &nbsp;&nbsp; <input type=""button"""
 S VV=VV_" value="""_$$^%W1DICT("SEARCH")_""""
 S VV=VV_" onClick=""Find('"_ID_"','"_GL_"')"" />"
 N VL1 S VL1="" I VL S VL1=$G(@$$^W4GL(GL)@(VL))
 I VL1'?.P S VV=VV_"<br><span style=""color:grey"">"_$$H2U^%L1FRM(VL1)_"</span>"
 Q VV
 ;
 ;
BEGVV(ID,TYP,LEN,VL) ;
 S VV="<input type=""text"" style=""text-align:right"" "
 S VV=VV_" dir="""_$S(TYP="H":"RTL",1:"LTR")_""""
 S VV=VV_" size="""_LEN_""""
 S VV=VV_" maxlength="""_LEN_""""
 S VV=VV_$S(TYP="H":"",1:" onClick=""this.select()""")
 S VV=VV_" id="""_ID_""""
 S VV=VV_" value="""_$$H2U^%L1FRM(VL)_""" />"
 Q
 ;
SMALLG(GLB) ;
 N I,N,KF,A,LN S LN=0
 S N="" F I=1:1:100 S N=$O(@$$^W4GL(GLB)@(N)) Q:N=""  D  Q:LN>1200
 .S A=$G(^(N)),A1=$$H2U^%L1FRM(A)
 .S LN=LN+$L(A1)
 I N="" Q 1
 Q 0
 ;
GL1(J)
 N GL,GL1 S GL=$$GL(J) S:$E(GL)="^" GL=$E(GL,2,25)
 N GL1 S GL1=GL
 I GL="SHULH" S GL1="LKH"
 Q GL1
 
 
 
 
 
 
 

W4SPIDKX
W4SPIDKX ; [ 23.04.26 13:50 ] [ 29.12.21 08:22 ] [ 14.04.21 08:49 ] 
 N (JB,%ARG,%REM,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4SPIDKX","%ARG=[%ARG & SRCH=SRCH")
 D PUT^%W1PRM("TMP",$G(%ARG("TMP")))
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""width:100%;overflow-x:auto"">",!
 S WD=$$WD
 ;;W "WD="_WD,!
 ;
 I $$PRINT,'$$VIEW D
 .W "<table style=""font-size:"_$$^W3FSZ(16)_""" ><tr>"
 . W "<td width=""25%"">"
 .  D HEADFUNC
 . W "</td>"
 . W "<td width=""50%"">"
 . W $$H2U^%L1FRM($$TBLNAME)
 . W "</td>"
 .W "</tr></table>",!
 .W "<br>",!
 ;
 W "<br>",!
 ;
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""99%"" style=""font-size:"_$$^W3FSZ(10)_""" >",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3PRM)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3PRM)_""""
 W " >"
 S WD1="25px"
 I '$$PRINT W "<th width="""_WD1_""">&nbsp;</th>"
 W "<th >"_$$H2U^%L1FRM($$KEYNAME)_"</th>"
 W "<th >"_$$H2U^%L1FRM($$NAME(0))_"</th>"
 F J=1:1:$$COLDOP D
 .W "<th>"_$$H2U^%L1FRM($$NAME(J))_"</th>"
 ;
 I '$$PRINT W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 N N,I
 D GLOB
 ;
 D GET ; -- CREATE GLOB IF NEED
 ;
 D GLTMP
 ;
 S N="",I=0,K=0 F  S N=$O(@GLOB@(N)) Q:N=""  D
 .I '$$COND(N) Q
 .
 .W "<tr id=""tr"_N_""" "
 .W " onMouseOver=""ChangeColor(this)"" "
 .W " onMouseOut=""RestColor(this)"" "
 .I GLOB0="NEWCSR1" D
 ..I '$$VALYES(N,4) W " style=""background-color:grey"" "
 ..I $$VALYES(N,4) S K=K+1
 .W ">" S I=I+1
 .I $$NODEL,'$$PRINT W "<td style=""background-color:#eaeaea"">"_I_"</td>",!
 .
 .I '$$NODEL,'$$PRINT D
 ..W "<td align=""center"">"
 ..W " <span style=""font-size:"_$$^W3FSZ(7)_";color:grey"">"_I_"</span><br>",!
 ..W " <span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 ..W "  onClick=""InsertRow('"_N_"')""> + </span><br />"
 ..I GLOB0="PARSUG",$$HASITEMS(N) Q
 ..W " <span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""" "
 ..W "  onClick=""DeleteRow('"_N_"')"" > - </span></td>"
 .
 .W "<td id=""cd"_N_""" "
 . I $$KEYD W " align=""center"" "
 .W ">&nbsp;"_$$KEYVL(N)_"&nbsp;"
 .I GLOB0="NEWCSR1",$$VALYES(N,4) W "<span style=""color:lightgrey;font-size:"_$$^W3FSZ(7)_""">"_K_"</span>"
 .I GLOB0="PARSUG",$$HASITEMS(N) D
 ..W "&nbsp;<input type=""button"" value="""_$$^%W1DICT("SHOWCONT")_""" "
 ..W " onClick=""ClickGroup('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center"" valign=""center"""
 .I $$ENGNAME^W4TABL(GLOB0)!($$TYP^W4TABL($$ARG)'="H") W " dir=""LTR"" "
 .W " >"
 .W $$INPUT(N) ;;I 'SEL S CHN=1
 .W "</td>",!
 .S CHN=0
 .;
 .F J=1:1:$$COLDOP D
 ..W "<td valign=""center"" "
 ..W $S($$TYP(J)="H"!($E($$TYP(J))="C")!($$GL(J)'=""&'$$GL(J)):" dir=""RTL""",1:" dir=""LTR""")
 ..I $$TYP(J)="H" W $$^%W1ALIGN
 ..I $$TYP(J)'="H" W " align=""center"" "
 ..W " >&nbsp;"
 .. S SEL=0
 .. W $$INPUT(N_";"_J_";"_$$DFLT(J)) ;;I 'SEL S CHN=1
 ..W "</td>",!
 .;
CHN .I '$$PRINT D
 ..W "<td align=""center"">"
 .. W "<input name=""chn"" id=""chn"_N_""" type=""checkbox"" "_$S(CHN:"checked=""checked""",1:"")_" disabled=""disabled"" />"
 ..W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "<br>",!
 W "<br>",!
 W "<br>",!
 W "<br>",!
 W "</div>",!
 W "<br>",!
 W "<br>",!
 Q
 ;
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W4SPIDKX-SAVE","PRM=PRM")
 ;
 N CD,NM,NM1,MH,DESC,GR,SHOW,SCR,LSCR
 S CD=$P(PRM,";")
 ;
 N GLOB D GLOB
 D PUT^%W3DEB("W4SPIDKX-SAVE","GLOB=GLOB & CD=CD")
 ;
 I $D(@$$^W4MAIN("TMPDEL")@(CD)) D  Q 1
 .K @$$^W4MAIN("TMPDEL")@(CD)
 .K @GLOB@(CD)
 ;
 D GLTMP
 ;
 S NM=$$CNWEB^%L1FRM($P(PRM,";",2))
 S NM1=$S($$^%W1DIR="RTL"&'$$ENGNAME^W4TABL(GLOB0):$$INVH^%L1FRM(NM),1:NM)
 ;;S NM1=NM
 ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 I LSCR,$D(@W4SP@(SCR,"SAVE"))#2 X @W4SP@(SCR,"SAVE") Q 1
 ;
 I LSCR,$D(@W4SP@(SCR,"PUT",0))#2 X @W4SP@(SCR,"PUT",0)
 ;
 I LSCR,'($D(@W4SP@(SCR,"PUT",0))#2),'$$PUTMUST D
 .I $L($G(@GLOB@(CD))),'$L(NM1) Q
 .S @GLOB@(CD)=NM1
 ;
 I 'LSCR,$L(NM1) D
 .S @GLOB@(CD)=NM1
 ;
 N J F J=3:1:$L(PRM,";") D
 .S NM=$$CNWEB^%L1FRM($P(PRM,";",J))
 .I $$TYP(J-2)="H",$$^%W1DIR="RTL" S NM=$$INVH^%L1FRM(NM)
 .
 .I LSCR,$D(@W4SP@(SCR,"PUT",J-2))#2 X @W4SP@(SCR,"PUT",J-2) Q
 .I LSCR,'($D(@W4SP@(SCR,"PUT",J-2))#2),$$PUTMUST Q
 .N ARGGL S ARGGL=$G(@$$^W4MAIN("TMPARG")@("GLOB"))
 .I $L(ARGGL),$D(@W4SP@(ARGGL,"PUT",J-2))#2 X @W4SP@(ARGGL,"PUT",J-2) Q
 .S $P(@GLOB@(CD,1),"\",J-2)=NM
 ;
 K @$$^W4MAIN("VRM")
 Q 1
 ;
 ;
SAVEND(STAM) ;
 N SCR,LSCR,ER
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 K @$$^W4MAIN("TMPSPER")
 I LSCR,$D(@W4SP@(SCR,"PUT"))#2 X @W4SP@(SCR,"PUT")
 I $D(@$$^W4MAIN("TMPSPER")) S ER=$G(^("TMPSPER")) K ^("TMPSPER") Q ER
 ;
 K @$$^W4MAIN("TMPDEL")
 K @$$^W4MAIN("TMPLAST")
 Q 1
 ;
 ;
DELROW(CD) ;
 Q:'$G(JB)
 I $D(@$$^W4MAIN("TMPDEL")@(CD)) K ^(CD) Q
 N GLOB D GLOB,GLTMP
 S @$$^W4MAIN("TMPDEL")@(CD)=$G(@GLOB@(CD))
 Q
 ;
 ;
NEWCOD(STAM) ;
 N GLOB D GLOB,GLTMP
 N A S A=$O(@GLOB@(9999999),-1)+1
 I A'>$G(@$$^W4MAIN("TMPLAST")) D
 .S A=$G(@$$^W4MAIN("TMPLAST"))+1
 S @$$^W4MAIN("TMPLAST")=A
 Q A
 ;
GLOB ;
 N PRMAIN S PRMAIN=0
 I $L($G(%ARG("GLOB"))) S GLOB=%ARG("GLOB") G GLOBM
 S GLOB=$G(@$$^W4MAIN("TMPARG")@("GLOB"))
 Q:GLOB=""
GLOBM S GLOB0=GLOB S:$E(GLOB)="^" GLOB0=$E(GLOB,2,20)
 S @$$^W4MAIN("TMPARG")@("GLOB")=GLOB0
 I GLOB0["[W4MAIN]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I GLOB0["[M]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I GLOB0["[T]" S GLOB0=$P(GLOB0,"]",2),PRMAIN=4
 I $E(GLOB0,1,3)="TMP" S PRMAIN=4
 I $E(GLOB0)="[" S GLOB0=$P(GLOB0,"]",2),PRMAIN=1
 S @$$^W4MAIN("TMPARG")@("GLOB0")=GLOB0
 I 'PRMAIN S GLOB=$$^W4GL(GLOB0)
 I PRMAIN=4 S GLOB="^[$$^W3MAIN]"_GLOB0_"($$^%W1JB)" G GLOBE
 I PRMAIN S GLOB="^[$$^W3MAIN]"_GLOB0
GLOBE Q
 ;
NODEL(STAM) ;
 N W4SP D W4SP
 I $D(@$$^W4MAIN("TMPARG")@("NODEL")) Q ^("NODEL")
 I '$L($$SCR) Q 0
 I $D(@W4SP@($$SCR,"NODEL")) Q 1
 Q 0
 ;
PUTMUST(STAM) ;
 I $D(@$$^W4MAIN("TMPARG")@("PUTMUST")) Q ^("PUTMUST")
 I '$L($$SCR) Q 0
 N W4SP D W4SP
 I $D(@W4SP@($$SCR,"PUTMUST")) Q 1
 Q 0
 ;
 ;
GLOBPRM ;
 I $L($$SCR),$D(^[$$^W3MAIN]W4SP($$SCR,"SETPRM"))#2 D  Q
 .X ^("SETPRM")
 ;
 N GLOB,GLOB0 D GLOB
 I $L($$SCR) S GLOB0=$$SCR
 Q:$G(GLOB0)=""
 I '$D(@$$^W4TABL@(GLOB0)) Q
 I '$D(@$$^W4MAIN("TMPARG")@("TBLNAME")) D
 .S @$$^W4MAIN("TMPARG")@("TBLNAME")=$$TBLNAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYSIZE")) D
 .S @$$^W4MAIN("TMPARG")@("KEYSIZE")=$$KEYSIZE^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYNAME")) D
 .S @$$^W4MAIN("TMPARG")@("KEYNAME")=$$KEYNAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("KEYTYPE")) D
 .S @$$^W4MAIN("TMPARG")@("KEYTYPE")=$$KEYTYPE^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("NAME")) D
 .S @$$^W4MAIN("TMPARG")@("NAME")=$$NAME^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("LEN")) D
 .S @$$^W4MAIN("TMPARG")@("LEN")=$$LEN^W4TABL(GLOB0)
 I '$D(@$$^W4MAIN("TMPARG")@("TYP")) D
 .S @$$^W4MAIN("TMPARG")@("TYP")=$$TYP^W4TABL(GLOB0,0)
 I '$D(@$$^W4MAIN("TMPARG")@("VLDPROG")) D
 .S @$$^W4MAIN("TMPARG")@("VLDPROG")=$$VLDPROG^W4TABL(GLOB0)
 ;
 N J F J=1:1:$$COLDOP D
 .I '$D(@$$^W4MAIN("TMPARG")@("NAME"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("NAME"_J)=$$NAME^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("LEN"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("LEN"_J)=$$LEN^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("TYP"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("TYP"_J)=$$TYP^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("GL"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("GL"_J)=$$GL^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("MUST"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("MUST"_J)=$$MUST^W4TABL(GLOB0,J)
 .I '$D(@$$^W4MAIN("TMPARG")@("DFLT"_J)) D
 ..S @$$^W4MAIN("TMPARG")@("DFLT"_J)=$$DFLT^W4TABL(GLOB0,J)
 Q
 ;
D(PRM)
 N GLOB D GLOB,GLTMP
 I $G(PRM)="" Q $D(@GLOB)
 Q $D(@GLOB@(PRM))
 ;
COLDOP(STAM) ;
 N J F J=1:1 Q:'$D(@$$^W4MAIN("TMPARG")@("NAME"_J))
 I '(J-1),$L($G(GLOB0)) Q $$COLDOP^W4TABL(GLOB0)
 Q (J-1)
 ;
VL(RKV)
 N VL
 S VL=$G(@$$^W4MAIN("TMPARG")@(RKV))
 Q VL
 ;
COND(N) ;
 N W4SP N %COND,SCR,LSCR S %COND=1
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 I LSCR,$L($G(@W4SP@(SCR,"COND"))) X ^("COND")
 Q %COND
 ;
NAME(J) ;
 I +$G(J)=0 S J=""
 Q $$VL("NAME"_J)
 ;
LEN(J) ;
 I +$G(J)=0 S J=""
 N LEN S LEN=$$VL("LEN"_J)
 I 'LEN S LEN=12
 Q LEN
 ;
TYP(J) ;
 I +$G(J)=0 S J=""
 N TYP S TYP=$$VL("TYP"_J)
 I TYP="" S TYP="E"
 Q TYP
 ;
MUST(J) ;
 I +$G(J)=0 S J=""
 N MUST S MUST=$$VL("MUST"_J)
 I MUST="" S MUST="N"
 I MUST="Y"!(MUST=1) Q 1
 Q 0
 ;
DFLT(J) ;
 I +$G(J)=0 S J=""
 N DFLT S DFLT=$$VL("DFLT"_J)
 Q DFLT
 ;
OU(J) ;
 N SCR,LSCR
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 S J=+$G(J)
 I $L(SCR) Q $D(@W4SP@(SCR,"GET",J,"OU"))
 Q 0
 ;
BOOL(J) I $$TYP(J)="B" Q 1
 Q 0
 ;
TIME(J) I $$TYP(J)="T" Q 1
 Q 0
 ;
DATE(J) I $$TYP(J)="D" Q 1
 Q 0
 ;
DAY(J) I $$TYP(J)="DY" Q 1
 Q 0
 ;
COLORB(J) I $$TYP(J)="CB" Q 1
 Q 0
 ;
COLORF(J) I $$TYP(J)="CF" Q 1
 Q 0
 ;
GL(J) ;
 I +$G(J)=0 S J=""
 N GL S GL=$$VL("GL"_J)
 Q GL
 ;
VAL(N,J) ;
 I $G(N)="" Q ""
 N GLOB,GLOB0,VAL D GLOB,GLTMP
 D W4SP
 S J=+$G(J)
 I $L($$SCR),$D(@W4SP@($$SCR,"GET",J)) Q @(@W4SP@($$SCR,"GET",J))
 ;
 I +$G(J)=0 Q $G(@GLOB@(N))
 N ARGGL S ARGGL=$G(%ARG("GLOB"))
 I $L(ARGGL),$D(@W4SP@(ARGGL,"GET",J)) Q @(@W4SP@(ARGGL,"GET",J))
 ;
 S VAL=$P($G(@GLOB@(N,1)),"\",J)
 ;
 I VAL="" D
 .I $L(ARGGL),$D(@W4SP@(ARGGL,"INI",J))#2 S VAL=@(@W4SP@(ARGGL,"INI",J)) Q
 .;
 .S VAL=$$DFLT(J)
 Q VAL
 ;
 ;
VALYES(N,J)
 I $$VAL(N,J) S SEL=1 Q 1
 I $$VAL(N,J)="k" S SEL=1 Q 1
 I $$VAL(N,J)=0 S SEL=1 Q 0
 I $$VAL(N,J)="l" S SEL=1 Q 0
 Q 0
 ;
VALDD(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,1,2)
 ;
VALMM(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,3,4)
 ;
VALYY(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,5,6)
 ;
VALHR(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,1,2)
 ;
VALMN(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,3,4)
 ;
 ;
KEYSIZE(STAM) ;
 Q $$VL("KEYSIZE")
 ;
KEYNAME(STAM) ;
 I $L($G(MRKVZ(1,1))) Q MRKVZ(1,1)
 Q $$VL("KEYNAME")
 ;
KEYD(STAM) ;
 I $$ARG="" Q 0
 I $$KEYTYPE^W4TABL($$ARG)="D" Q 1
 Q 0
 ;
KEYT(STAM) ;
 I $$ARG="" Q 0
 I $$KEYTYPE^W4TABL($$ARG)="T" Q 1
 Q 0
 ;
KEYVL(N) ;
 I $$KEYD,N?5N Q $ZD(N,"DD.MM.YY")
 Q N
 ;
VLDPROG(STAM)
 Q $$VL("VLDPROG")
 ;
ARG(STAM)
 N ARG S ARG=$$SCR
 I ARG="" S ARG=$G(@$$^W4MAIN("TMPARG")@("GLOB0"))
 Q ARG
 ;
TBLNAME(STAM)
 I $L($G(MRKVZ("KOT"))) Q MRKVZ("KOT")
 Q $$VL("TBLNAME")
 ;
DOP(J) ;
 I $G(J) Q "dop"
 Q ""
 ;
 ;
INPUT(PRM) ;
 N CD,J,INP,GLOB,GLOB0,DFLT D GLOB
 S CD=$P(PRM,";")
 S J=$P(PRM,";",2)
 S DFLT=$P(PRM,";",3)
 ;
 S INP="&nbsp;"
 ;
 I $$BOOL(J) D  G EINP
 .S INP="<input id=""name"_CD_$$DOP(J)_J_""" "
 .S INP=INP_" type=""checkbox"" "
 .I $$OU(J)!$$PRINT S INP=INP_" disabled=""disabled"""
 .S INP=INP_$S($$VALYES(CD,J):" checked=""checked""",1:"")
 .S INP=INP_$$ONCHANGE(CD)_" />"
 ;
 I $$OU(J)!$$PRINT D  G EINP ; -- NOT EDIT
 .N VAL S VAL=$$VAL(CD,J)
 .I $$TYP(J)="H" S INP=$$H2U^%L1FRM(VAL) D  Q
 ..I $$MULTY(J) S INP=$$RPL^%L1FRM(INP,"_","&nbsp;<BR>&nbsp;")
 .S INP=VAL
 .I $E(INP,1,4)="http" D
 ..S INP="<a href="""_INP_""" target=""_blank"" >"_INP_"</a>"
 .Q
 ;
 I $$TIME(J) D  G EINP
 .S INP="<select id=""name"_CD_$$DOP(J)_J_"hr"" "_$$ONCHANGE(CD)_" >"
 .F I=0:1:23 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALHR(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALHR(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 .S INP=INP_"<select id=""name"_CD_$$DOP(J)_J_"mn"" "_$$ONCHANGE(CD)_" >"
 .F I=0:15:45 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALMN(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALMN(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$DAY(J) D  G EINP
 .S INP="<select id=""name"_CD_$$DOP(J)_J_""" "_$$ONCHANGE(CD)_" >"
 .N I
 .F I=1:1:7 D
 ..S INP=INP_"<option value="""_I_""""
 ..I I=$$VAL(CD,J) S INP=INP_" selected=""selected"""
 ..S INP=INP_" >"_$$^%W1DICT("DAY"_I)_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$DATE(J) D  G EINP
 .S SEL=1
 .N %W1DAT S %W1DAT("CHANGE")="OnChange('"_CD_"')"
 .N CD1 S CD1=CD
 .I CD="" S CD=+$H
 .I CD?5N S CD1=$ZD(CD,"DDMMYY")
 .S %ARG("OLDDAT")=1
 .S INP=$$STDT^%W1DAT("name"_CD_$$DOP(J)_J,"",$$VALDD(CD1,J),$$VALMM(CD1,J),$$VALYY(CD1,J))
 ;
 I $$COLORB(J)!$$COLORF(J) D  G EINP
 .S SEL=1
 .N KIND S KIND="BG"
 .I $$COLORF(J) S KIND="FG"
 .N ID,IDV,IDE S ID="name"_CD_$$DOP(J)_J
 .S IDV="preview"_CD_$$DOP(J)_J
 .S IDE="name"_CD_$$DOP(J)_$$GL(J)
 .S INP="<input type=""text"" id="""_ID_""" size=""5"" "
 .
 .N VAL S VAL=$$SPA^%L1FRM($$VAL(CD,J))
 .S INP=INP_" value="""_VAL_""" "
 .N CMD S CMD=" onClick=""OnClickColor(event,'"_ID_"','"_IDV_"','"_IDE_"','"_KIND_"');OnChange('"_CD_"')"" "
 .I KIND="BG" S INP=INP_" onChange=""OnChangeBGColor('"_CD_"','"_IDV_"','"_ID_"','"_IDE_"')"" "
 .I KIND="FG" S INP=INP_" onChange=""OnChangeFGColor('"_CD_"','"_IDV_"','"_ID_"','"_IDE_"')"" "
 .S INP=INP_" style=""font-size:"_$$^W3FSZ(10)_""" "
 .S INP=INP_">&nbsp;&nbsp;<span id="""_IDV_""" class=""colorpreview"" "
 .S INP=INP_" style=""background-color:"_VAL_""" "
 .S INP=INP_" "_CMD
 .S INP=INP_"></span>"
 ;
 I $$GL(J)=""!$$GL(J),'$$BOOL(J) D  G EINP
 .S SEL=1
 .S ID="name"_CD_$S(J:"dop"_J,1:"")
 .
 .I '$$MULTY(J) D
 ..S INP="<input id="""_ID_""" type=""text"""
 ..S INP=INP_" size="""_($$LEN(J)-2)_""" " ;;maxlength="""_$$LEN(J)_""""
 .
 .I $$MULTY(J) D
 ..S INP="<textarea id="""_ID_""" "
 ..S INP=INP_" cols="""_$P($$LEN(J),"*")_""" rows="""_$P($$LEN(J),"*",2)_""" " ;;maxlength="""_$$LEN(J)_""""
 .
 .N PRENG S PRENG=0
 .
 .I $$TYP(J)="N"!('J&$$ENGNAME^W4TABL(GLOB0)) D
 ..S INP=INP_" dir=""LTR"" ",PRENG=1
 ..I $$TYP(J)="N" S INP=INP_" onFocus=""this.select()"" "
 .
 .I J,$$TYP(J)="E" D
 ..;;S INP=INP_" OnKeyUp=""EnglishOnly(event,'"_ID_"')"" "
 .
 .S INP=INP_" style="""
 .
 .N PRM S PRM=$$GL(J) I PRM D
 ..N BGN,FGN S BGN=$P(PRM,";"),FGN=$P(PRM,";",2)
 ..I BGN S INP=INP_"background-color:"_$$VAL(CD,BGN)_";"
 ..I FGN S INP=INP_"color:"_$$VAL(CD,FGN)_";"
 ..I PRENG,'BGN,'FGN S INP=INP_"text-align:right"
 ..I BGN!FGN S INP=INP_"text-align:center"
 .
 .S INP=INP_";font-size:"_$$^W3FSZ(11)
 .S INP=INP_""""
 .
 .N VAL S VAL=$$VAL(CD,J)
 .D
 ..N GLOB D GLOB
 ..I $$ENGNAME^W4TABL(GLOB0),'J Q
 ..I $E($$TYP(J))="H" S VAL=$$H2U^%L1FRM(VAL)
 ..I $$GL(J) S VAL="Preview"
 .
 .I '$$MULTY(J) S INP=INP_" value="""_VAL_""" "
 .S INP=INP_$$ONCHANGE(CD)
 .I '$$MULTY(J) S INP=INP_" />&nbsp;" Q
 .;
 .S INP=INP_">"_$TR(VAL,"_",$C(10))_"</textarea>"
 ;
 I $$GL(J)'="",'$$GL(J) D SELFROM(CD,J) G EINP
EINP ;
 Q INP
 ;
 ;
GLSEL ;
 N A S A=$G(^(NN))
 I NN=$$VAL(CD,J) S SEL=1
 S INP=INP_"<option value="""_NN_""""_$S(NN=$$VAL(CD,J):" selected=""selected""",1:"")_" >"_NN_" "_$S(GL1["dev":" : "_A,1:$$H2U^%L1FRM(A))_"</option>"
 Q
 ;
 ;
SELFROM(CD,J) ;
 ; INPUT: CD,J
 ; OUTPUT - INP
 N GL S GL=$$GL(J)
 N ID S ID="name"_CD_$$DOP(J)_J
 N VL S VL=$$VAL(CD,J)
 N TYP S TYP=$$TYP(J)
 N LEN S LEN=$$LEN(J)
 N JJ,NN S NN="" F JJ=1:1:20 S NN=$O(@GL@(NN)) Q:NN=""
 ;
 I NN'="" D  Q
 .S:$E(GL)="^" GL=$E(GL,2,25)
 .N VV S VV="<input type=""text"" style=""text-align:right"""
 .S VV=VV_" dir="""_$S(TYP="H":"RTL",1:"LTR")_""""
 .S VV=VV_" size="""_LEN_""""
 .S VV=VV_" maxlength="""_LEN_""""
 .S VV=VV_$S(TYP="H":"",1:" onClick=""this.select()""")
 .S VV=VV_" name="""_ID_""" id="""_ID_""""
 .S VV=VV_" "_$$ONCHANGE(CD)
 .S VV=VV_" value="""_VL_""">"
 .S VV=VV_" &nbsp;&nbsp; <input type=""button"""
 .S VV=VV_" value="""_$$^%W1DICT("SEARCH")_""""
 .S VV=VV_" onClick=""Find('"_ID_"','"_GL_"')"" />"
 .S INP=VV
 ;
 S INP=$G(INP)_" <select dir="""_$S(GL["dev":"LTR",1:$$^%W1DIR)_""" id="""_ID_""" "_$$ONCHANGE(CD)_" >"
 S INP=INP_"<option value="""">"_$$^%W1DICT("CHOICEDATA")_"</option>"
 ;
 N PRMAIN S PRMAIN=0
 I GL["[]" S GL=$P(GL,"[]",2) S PRMAIN=1
 I GL["dev" S PRMAIN=1
 ;
 ;
 N GL1 S GL1=$$GL1(GL)
 ;
 D
 .N NN S NN=""
 .F  S NN=$O(@GL1@(NN)) Q:NN=""  D GLSEL
 ;
 S INP=INP_"</select>"
 ;
 Q
 ;
 ;
GL1(GL) ;
 N PRMAIN S PRMAIN=0
 I GL["[]" S GL=$P(GL,"[]",2) S PRMAIN=1
 I GL["|M|" S GL=$P(GL,"|",3) S PRMAIN=1
 I GL["dev" S PRMAIN=1
 ;
 I 'PRMAIN Q $$^W4GL(GL)
 Q "^["_$$^W3MAIN_"]"_GL
 ;
SCR(STAM)
 Q $$SCR^W4SPVIDK
 ;
SAVETABLES(STAM)
 Q 1
 ;
W4SP ;
 S W4SP="^[$$^W3MAIN]W4SP"
 Q
 ;
GET ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 N GLOB,GLOB0 D GLOB,GLTMP
 I LSCR,$D(@W4SP@(SCR,"GET"))#2 X @W4SP@(SCR,"GET")
 Q
 ;
 ;
GLTMP ;
 N TMP S TMP=$G(%ARG("TMP"))
 I TMP="" S TMP=$$GET^%W1PRM("TMP")
 I TMP["UNDEF" S TMP=""
 I $L(TMP) S GLOB=$$^W4MAIN(TMP)
 Q
 ;
HEADFUNC ;
 N W4SP D W4SP
 N SCR S SCR=$$SCR Q:'$L(SCR)
 I $D(@W4SP@(SCR,"HEADFUNC"))#2 X @W4SP@(SCR,"HEADFUNC") Q
 W "&nbsp;"
 Q
 ;
 ;--------------------------------- CALLS --------------------------------
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 I $$VIEW Q 1
 Q 0
 ;
VIEW(STAM) I $G(%ARG("VIEW")) Q 1
 Q 0
 ;
CHKFILL(STAM) ;
 I $$KEYD Q 0
 Q 1
 ;
INIT ;
 I '$G(%ARG("FIRST")) Q
 D ^W4BGBODY
 D ^W4CSS
 Q
 ;
VLD(PRM) ;
 N RES S RES=1
 D PUT^%W3DEB("W4SPIDK-VLD","PRM=PRM")
 F J=1:1:$$COLDOP D  Q:RES'=1
 .I $$MUST(J),$P(PRM,";",J+2)=""  D
 ..S RES="WRONGFIELDVALUE;name"_$P(PRM,";")_$$DOP(J)_J_";"_$$NAME(J)
 I RES=1,$$VLDPROG'="" D
 .X "S RES=$$"_$$VLDPROG_"(PRM)"
 Q RES
 ;
ONCHANGE(CD)
 Q " onChange=""OnChange('"_CD_"')"" "
 ;
IFVIEW(STAM) ;
 I $$VIEW Q " disabled=""disabled"" "
 Q ""
 ;
CRSUG ;
 N N,SUG
 K @$$^W4MAIN("VRM")
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .S SUG=$$SUG^W4P(N) Q:SUG=""
 .S @$$^W4MAIN("VRM")@(SUG,N)=""
 Q
 ;
HASITEMS(KV) ;
 I $D(@$$^W4MAIN("VRM")@(KV))>9 Q 1
 Q 0
 ;
WD(STAM)
 D PUT^%W1PRM("TMP",$G(%ARG("TMP")))
 N WD S WDCOL=10
 I $G(%ARG("WDCOL")) S WDCOL=%ARG("WDCOL")
 S WD=70+($$COLDOP*WDCOL)
 I WD>100 S WD=100
 Q WD
 ;
MULTY(J) ;
 Q $$LEN(J)["*"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPK
W4SPK ; [ 04.03.24 11:15 ] [ 04.04.23 17:45 ] [ 28.01.19 15:24 ] 
 ;
NAME(SPK,GL) ;
 I $G(SPK)="" Q ""
 I $G(SPK)="-" Q ""
 D GL
 I '($$D(SPK,GL)#2) S SPK=$TR(SPK,"-","")
 I '($$D(SPK,GL)#2) Q ""
 Q $P(@GL@(SPK),"*")
 ;
D(SPK,GL) I $G(SPK)="" Q 0
 D GL
 Q $D(@GL@(SPK))
 ;
D1(SPK,GL) I $G(SPK)="" Q 0
 D GL
 Q $D(@GL@(SPK,1))
 ;
D2(SPK,GL) I $G(SPK)="" Q 0
 D GL
 Q $D(@GL@(SPK,2))
 ;
D3(SPK,GL) I $G(SPK)="" Q 0
 D GL
 Q $D(@GL@(SPK,3))
 ;
DC(SPK,GL) ;
 S GL=$G(GL)
 ;;I $$D(SPK,GL),$$D1(SPK,GL),$$D2(SPK,GL) Q 1
 I $$D(SPK,GL) Q 1
 Q 0
 ;
KTV(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D1(SPK,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(SPK,1),"*",5))
 ;
KTV1(SPK,GL) D GL N KTV S KTV=$$KTV(SPK,GL)
 I $$DIRA(SPK,GL),$$BAIT(SPK,GL) S KTV=$$BAIT(SPK,GL)_"/"_$$DIRA(SPK,GL)_" "_KTV G KTV11
 I $$BAIT(SPK,GL) S KTV=$$BAIT(SPK,GL)_" "_KTV
KTV11 ;
 I $L($$IR(SPK,GL)) S KTV=$$IR(SPK,GL)_","_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTV2(SPK,GL) ;
 N KTV D GL
 I $G(SPK)="" Q ""
 I '($$D1(SPK,GL)#2) Q ""
 S KTV=$$KTV(SPK,GL)
 I $$DIRA(SPK,GL),$$BAIT(SPK,GL) S KTV=$$BAIT(SPK,GL)_"/"_$$DIRA(SPK,GL)_" "_KTV Q KTV
 I $$BAIT(SPK,GL) S KTV=$$BAIT_" "_KTV
 Q KTV
 ;
KTVM(SPK,GL) ;
 N KTV D GL
 S KTV=$$KTV2(SPK,GL) I KTV="" Q ""
KTVM1 I $$KOMA(SPK,GL) S KTV=$$KOMA(SPK,GL)_" "_$$TV^%W1DICT($$^%W1LNG,"FLOOR")_" "_KTV
 I $L($$CITY(SPK,GL)) S KTV=$$CITY(SPK,GL)_" , "_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
KTVMM(SPK,GL) ;
 N KTV D GL S KTV=$$KTVM(SPK,GL) Q:KTV?.P $$MIKUD(SPK,GL)
 I $$MIKUD(SPK,GL) S KTV=$$MIKUD(SPK,GL)_" , "_KTV
 Q $$SPA^%L1FRM(KTV)
 ;
ITRA(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $P(@GL@(SPK,2),"*",4)
 ;
SETITRA(SPK,SUM) ;
 I $G(SPK)="" Q
 N GL D GL
 I '($$D2(SPK,GL)#2) Q
 S $P(@GL@(SPK,2),"*",4)=$P($G(@GL@(SPK,2)),"*",4)+SUM
 Q
 ;
SHOTEF(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $P(@GL@(SPK,2),"*",14)
 ;
CONTACTMAN(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $P(@GL@(SPK,1),"*",21)
 ;
ROLE(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $P($G(@GL@(SPK,3)),"*",6)
 ;
EMAIL(SPK,GL) ;
 I $G(SPK)="" Q ""
 ;;I $L(SPK)<4 Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(SPK,2),"*",22))
 ;
MAM(SPK,DT,GL) Q $$MAM^W4L(SPK,DT,GL)
MAMD(DT) Q $$MAMD^W4L(DT) ;
MAM2(DT) Q $$MAM2^W4L(DT)
 ;
NOMAM(SPK,GL) ;
 I '$G(@$$^W4GL("P1PRM")@("MAM")) Q 1
 I $G(SPK)="" Q ""
 ;;I $L(SPK)<4 Q 0
 D GL
 Q $$IR(SPK,GL)["zli`"
 ;
MAZAV(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 I $P(@GL@(SPK,2),"*",18)="d" Q 0.5
 I +$P(@GL@(SPK,2),"*",18)=0.5 Q 0.5
 I $P(@GL@(SPK,2),"*",18)="q" Q 0
 I $P(@GL@(SPK,2),"*",18)=0 Q 0
 Q 1
 ;
PELE(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(SPK,2),"*",19))
 ;
DATPTH(SPK,GL) ;
 I $G(SPK)="" Q ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $P(@GL@(SPK,2),"*",13)
 ;
HESB(SPK,GL) Q:$G(SPK)="" ""
 D GL
 I '($$D1(SPK,GL)#2) Q ""
 Q $P(@GL@(SPK,1),"*",1)
 ;
TZ(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",2))
 ;
BAIT(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",3))
 ;
DIRA(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",6))
 ;
KOMA(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",4))
 ;
TEL(SPK,GL) ;
 Q $$TELB(SPK,$G(GL))
 ;
TELB(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($S($P($G(@GL@(SPK,1)),"*",7):$P($G(@GL@(SPK,1)),"*",7),$$TELA(SPK,GL):$$TELA(SPK,GL),1:$$PELE(SPK,GL)))
 ;
TELA(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",8))
 ;
SHLUHA(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",22))
 ;
FAX(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",15))
 ;
AHNIKMAS(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",18))
 ;
NIKMASAD(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",19))
 ;
CNISA(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $P($G(@GL@(SPK,1)),"*",9)
 ;
CMNT(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",10))
 ;
IR(SPK,GL) Q:$G(SPK)="" ""  N IR
 D GL
 S IR=$$CITY(SPK,GL)
 S:IR="" IR=$G(@$$^W4GL("P1PRM")@("IR"))
 Q $$SPA^%L1FRM(IR)
 ;
CITY(SPK,GL) Q:$G(SPK)="" ""  N CITY
 D GL
 S CITY=$P($G(@GL@(SPK,1)),"*",13)
 Q $$SPA^%L1FRM(CITY)
 ;
MIKUD(SPK,GL) Q:$G(SPK)="" ""
 D GL
 Q $$SPA^%L1FRM($P($G(@GL@(SPK,1)),"*",14))
 ;
SUGS(SPK,GL) Q:$G(SPK)="" ""
 D GL
 I '($$D2(SPK,GL)#2) Q ""
 Q $$SPA^%L1FRM($P(@GL@(SPK,2),"*",5))
 ;
SUGS1(SPK,GL) Q:$G(SPK)="" ""
 D GL
 I SPK>$$FIRST Q:'$$SUGS(SPK,GL) ""  Q $G(@$$^W4GL("W4SUGS")@(+$$SUGS(SPK,GL)))
 Q:'$$SUGS(SPK,GL) ""
 Q $G(@$$^W4GL("SUGS")@(+$$SUGS(SPK,GL)))
 ;
PUT(SPK,RKV,PRZ,GL) ;
 S RKV=$TR(RKV,"*\","X/")
PUT1 D GL
 I PRZ="NAME" S @GL@(SPK)=RKV Q
 I PRZ="HESB" S $P(@GL@(SPK,1),"*",1)=RKV Q
 I PRZ="TZ" S $P(@GL@(SPK,1),"*",2)=RKV Q
 I PRZ="BAIT" S $P(@GL@(SPK,1),"*",3)=RKV Q
 I PRZ="KOMA" S $P(@GL@(SPK,1),"*",4)=RKV Q
 I PRZ="KTV" S $P(@GL@(SPK,1),"*",5)=RKV Q
 I PRZ="DIRA" S $P(@GL@(SPK,1),"*",6)=RKV Q
 I PRZ="TELB" S $P(@GL@(SPK,1),"*",7)=RKV Q
 I PRZ="TELA" S $P(@GL@(SPK,1),"*",8)=RKV Q
 I PRZ="CNISA" S $P(@GL@(SPK,1),"*",9)=RKV Q
 I PRZ="CMNT" S $P(@GL@(SPK,1),"*",10)=RKV Q
 I PRZ="IR" S $P(@GL@(SPK,1),"*",13)=RKV Q
 I PRZ="MIKUD" S $P(@GL@(SPK,1),"*",14)=RKV Q
 I PRZ="FAX" S $P(@GL@(SPK,1),"*",15)=RKV Q
 I PRZ="AHNIKMAS" S $P(@GL@(SPK,1),"*",18)=RKV Q
 I PRZ="NIKMASAD" S $P(@GL@(SPK,1),"*",19)=RKV Q
 I PRZ="CONTACTMAN" S $P(@GL@(SPK,1),"*",21)=RKV Q
 I PRZ="SHLUHA" S $P(@GL@(SPK,1),"*",22)=RKV Q
 I PRZ="SUGS" S $P(@GL@(SPK,2),"*",5)=RKV Q
 I PRZ="DATPTH" S $P(@GL@(SPK,2),"*",13)=RKV Q
 I PRZ="SHOTEF" S $P(@GL@(SPK,2),"*",14)=RKV Q
 I PRZ="MAZAV" S $P(@GL@(SPK,2),"*",18)=RKV Q
 I PRZ="PELE" S $P(@GL@(SPK,2),"*",19)=RKV Q
 I PRZ="EMAIL" S $P(@GL@(SPK,2),"*",22)=$$FUNC^%UCASE(RKV) Q
 I PRZ="ROLE" S $P(@GL@(SPK,3),"*",6)=RKV Q
 Q
 ;
PUT2(SPK,PRZ,GL) ;
 I PRZ["=" N PRZ1,PRZ2,I S PRZ1=PRZ F I=1:1:$L(PRZ1,"<>") D
 .S PRZ2=$P(PRZ1,"<>",I),PRZ=$P(PRZ2,"="),RKV=$P(PRZ2,"=",2) I PRZ'?.P D PUT1
 Q
GL ;
 I $G(GL)'="" Q
 S GL=$$^W4GL("W4SPK")
 Q
 ;
TIKITRA(SPK) ;
 N ITRA S ITRA=+$$COMPITRA(SPK)
 ;
 D GL
 I '($$D2(SPK,GL)#2) Q
 S $P(@GL@(SPK,2),"*",4)=ITRA
 Q
 ;
COMPITRA(SPK) ;
 I $G(SPK)="" Q ""
 N W4INP
 S W4INP=$$^W4GL("W4INP")
 N A,N,VD,PY,J,HOV,ZIC,H
 S (HOV,ZIC)=0
 S VD="" F  S VD=$O(@W4INP@(SPK,VD)) Q:VD=""  D
 .I VD'="IHB",VD'="IHBZ",VD'="ITZ" Q
 .S N="" F   S N=$O(@W4INP@(SPK,VD,N)) Q:N=""  D
 ..S A=$G(^(N))
 ..S H=$P(A,"\",6)
 ..I VD="IHBZ"!(VD="ITZ") S H=-H
 ..S HOV=HOV+H
 ..S PY=$P(A,"\",19),ZIC=ZIC+PY
 ..;;F J=1:1:$L(PY,",") S ZIC=ZIC+$P(PY,",",J)
 Q $J(HOV-ZIC,2,2)_"\"_$J(HOV,2,2)_"\"_$J(ZIC,2,2)
 ;
FIRST(STAM) ;
 I $G(@$$^W4PRM@("SPK4DG")) Q 999
 Q ""
 
 
 
 
 
 
 
 

W4SPK0
W4SPK ; [ 29.01.11 07:56 ] [ 28.01.11 21:41 ] [
NAME(SPK)
 N NAME ;
 I $G(SPK)="" Q ""
 S NAME="NAME"
 Q NAME
 ;
TELB(SPK) ;
 I $G(SPK)="" Q ""
 N TELB
 S TELB="TELB"
 Q TELB
 ;
PELE(SPK) ;
 I $G(SPK)="" Q ""
 N PELE
 S PELE="PELE"
 Q PELE
 ;
FAX(SPK) ;
 I $G(SPK)="" Q ""
 N FAX
 S FAX="FAX"
 Q FAX
 ;
EMAIL(SPK) ;
 I $G(SPK)="" Q ""
 N EMAIL
 S EMAIL="EMAIL"
 Q EMAIL
 ;
KTVM(SPK) ;
 I $G(SPK)="" Q ""
 N KTVM
 S KTVM="KTVM"
 Q KTVM
 ;
CITY(SPK) Q $$IR(SPK)
 ;
IR(SPK) ;
 I $G(SPK)="" Q ""
 N IR
 S IR="IR"
 Q IR
 ;
KTV(SPK)
 Q $$STREET(SPK)
 ;
STREET(SPK) ;
 I $G(SPK)="" Q ""
 N STREET
 S STREET="STREET"
 Q STREET
 ;
BAIT(SPK)
 Q $$HOME(SPK)
 ;
HOME(SPK) ;
 I $G(SPK)="" Q ""
 N HOME
 S HOME="HOME"
 Q HOME
 ;
DIRA(SPK)
 Q $$FLAT(SPK)
 ;
FLAT(SPK) ;
 I $G(SPK)="" Q ""
 N FLAT
 S FLAT="FLAT"
 Q FLAT
 ;
MIKUD(SPK)
 Q $$ZIP(SPK)
 ;
ZIP(SPK) ;
 I $G(SPK)="" Q ""
 N ZIP
 S ZIP="ZIP"
 Q ZIP
 ;

W4SPKACM
W4SPKACM ; [ 26.12.13 11:05 ] [ 15.09.13 14:37 ] [ 05.09.10 15:57 ]
GET ;
 N SPK S SPK=$$GETP^%W1PRM("CODE") Q:SPK=""
 N GL,TMP D GL,TMP K @TMP
 N N,A S N="",I=0
 F  S N=$O(@GL@(SPK,"ACM",N)) Q:N=""  D
 .S A=$G(^(N))
 .S @TMP@(N)=$P(A,"\")
 .S @TMP@(N,1)=$P(A,"\",2,20)
 Q
 ;
SAVEND ;
 N GL,TMP D GL,TMP
 N CODE,I,N,A S CODE=$$GETP^%W1PRM("CODE") Q:CODE=""
 K @GL@(CODE,"ACM")
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .S NM=$G(^(N))
 .S A=$G(^(N,1))
 .S $P(A,"\",6)=$$FUNC^%UCASE($P(A,"\",6))
 .S @GL@(CODE,"ACM",N)=NM_"\"_A
 K @TMP
 Q
 ;
HEADFUNC ;
 N CODE S CODE=$$GETP^%W1PRM("CODE") Q:CODE=""
 W "<span style=""font-weight:bold"">"
  W $$^%W1DICT("SUPPLIER")_" : "_CODE_" "_$$H2U^%L1FRM($$NAME^W4SPK(CODE))
 W "</span>"
 Q
GL S GL=$$^W4GL("W4SPK")
 Q
TMP S TMP=$$^W4MAIN("TMPACM")
 Q

W4SPKADR
W4SPKADR ; [ 17.10.18 13:05 ] [ 07.10.12 19:36 ] [ 28.01.11 13:37 ] 
   N WIDTH,TABCITY S TABCITY=7
   W "<tr>",!
    S WIDTH="14%"
    D TD W $$^%W1DICT("CITY") D TDE
    S WIDTH="32%"
    D TD D INPCT("CITY",120,20,$$^%W1DIR,"T")
    S WIDTH="12%"
    D TD W $$^%W1DICT("STREET") D TDE
    W "<td colspan=""3"" id=""tdstreet"">" D INP("STREET","100%",40,$$^%W1DIR,"T") D TDE
   W "</tr>",!
   ;
   W "<tr>"
    D TD W $$^%W1DICT("HOME") D TDE
    D TD D INP("HOME",30,3,"LTR") D TDE
    ;
    D TD W $$^%W1DICT("FLAT") D TDE
    D TD D INP("FLAT",50,5,"LTR") D TDE
    ;
    D TD W $$^%W1DICT("ZIP") D TDE
    D TD D INP("ZIP",70,8,"LTR") D TDE
    ;
   W "</tr>",!
 Q
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 I $D(SIZE) W " style=""font-size:"_SIZE_""""
 I $D(DIR) W " dir="""_DIR_""""
 W " >",!
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
TDE W "</td>",!
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 W "<input type=""text"" maxlength="""_SIZE_""""
 W " style=""width:"_WD_$S(DIR="LTR":";text-align:"_$S($G(PRTX)="T":"left",1:"right"),1:"")_""""
 W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 ;
 I RKV'="STREET" D
 .W " onClick=""noIfrHide=0;HideStreet('"_RKV_"')"
 .I RKV="HOME"!(RKV="FLAT") W ";this.select()"
 .W """"
 .W " value="""_$$RKV(RKV)_""""
 .W " tabindex="""_$S(RKV="CITY":TABCITY,RKV="HOME":9,RKV="FLAT":10,1:11)_""""
 ;
 I RKV="STREET" D
 .N VL,VL1 S VL=$$RKV(RKV)
 .I VL'?1N.N W " value="""_$$RPL^%L1FRM(VL,"""","''")_"""" S VL1=0
 .I VL?1N.N W " value="""_VL_"""" S VL1=+VL
 .W " tabindex=""8"""
 .W " onFocus=""ClickStreet('"_VL1_"')"""
 .I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 W " />"
 Q
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 N SEL S SEL=""
 I $D(@$$^W4GL("P1IR"))>9 D
 .W "<select"
 .W " name="""_RKV_""" id="""_RKV_""""
 .W " tabindex="""_TABCITY_""""
 .W " onChange=""ChangeCity()"" >",!
 .
 .W "<option>&nbsp;</option>",!
 .
 .N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D
 ..N IR S IR=$G(^(N))
 ..N IRI S IRI=IR I $$^%W1DIR="RTL" S IRI=$$H2U^%L1FRM(IR)
 ..W "<option value='"_IRI_"'"
 ..I $G(SPK),$TR($$CITY^W4SPK(SPK),"-"," ")=$TR(IR,"-"," ") W " selected=""selected"""
 ..W " >"_IRI_"</option>",!
 .W "</select>",!
 ;
 I '$D(@$$^W4GL("P1IR")) D
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";"
 .W "text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir="""_$$^%W1DIR_""""
 .N VL S VL=$$RKV("CITY")
 .W " name="""_RKV_""" id="""_RKV_""" value="""_VL_""""
 .W " tabindex="""_TABCITY_""""
 .W " onChange=""ChangeCity()""",!
 .W " onKeyPress=""OnKeyPress(event)"""
 .W " onFocus=""clearMenu()"" >",!
 W "&nbsp;</td>",!
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q " "
 Q "<span style=""color:red"">*</span>"
 ;
RKV(RKV) ;
 N VL S VL="&nbsp;"
 Q:'$G(SPK) VL
 I RKV="CITY" S VL=$$IR^W4SPK(SPK)
 I RKV="STREET" S VL=$$KTV^W4SPK(SPK)
 I RKV="HOME" S VL=$$BAIT^W4SPK(SPK)
 I RKV="FLAT" S VL=$$DIRA^W4SPK(SPK)
 I RKV="FAX" S VL=$$FAX^W4SPK(SPK)
 I RKV="TZ" S VL=$$TZ^W4SPK(SPK)
 I RKV="EMAIL" S VL=$$EMAIL^W4SPK(SPK)
 I RKV="ZIP" S VL=$$MIKUD^W4SPK(SPK)
 ;
 S VL=$$SPA^%L1FRM(VL)
 S VL=$$H2U^%L1FRM(VL)
 ;;I VL="" S VL="&nbsp;"
 Q VL
 

W4SPKMH
W4SPKMH ; [ 12.11.24 18:50 ] [ 01.06.23 15:23 ] [ 01.08.21 14:36 ] 
 N (JB,%ARG,SRCH)
 ;------------ RIGHT WINDOW -- SUPPLIER PRICE LIST -----------------
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4SPKMH","%ARG=[%ARG")
 I '$D(@$$GLSPKMHSI) D CRGLSPKMHSI
 D GLTMPPAR
 ;
 S SPK=$G(%ARG("SPK")) Q:'SPK
 I $D(%ARG("SPK")) D PUT^%W1PRM("SPK",%ARG("SPK"))
 ;
 S LDT=+$H
 I LDT D
 .S LDAT=$ZD(LDT,"DD.MM.YY")
 ;
 D SHOWSPKMH(SPK,LDAT,GLTMPPAR,"IN")
 Q
 ;
 ;
SHOWSPKMH(SPK,DAT,GL,PRM) ;
 S PRM=$G(PRM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D KOTSPK(SPK,DAT,PRM)
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GL@(N)) Q:N=""  D
 .S DEL=$G(^(N,"DEL"))
 .D STR(N,$G(@GL@(N)),PRM,DEL)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
KOTSPK(SPK,DAT,PRM) ;
 N (JB,%ARG,%REM,SPK,DAT,PRM,I)
 ;;W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" dir="""_$$^%W1DIR_""" >"
 W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" dir="""_$$^%W1DIR_""" >"
  W $$CAPTION(SPK,DAT)
 W "</span>",!
 ;
 S WD=100
 I $$VW(PRM) S WD=90
 W "<table id=""TblSpP"" border=""1"" cellspacing=""0"" width="""_WD_"%"" "
 W " style=""background-color:white;color:black"">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W "  >"
 W "  <th>"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "  <th>"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("EM")_"</th>"
 ;
 I $$IN(PRM) D
 .W " <th>"_$$^%W1DICT("LASTPRICE")_"</th>"
 .W " <th>"_$$^%W1DICT("LASTDISC")_"</th>"
 ;
 W "  <th>"_$$^%W1DICT("SUPPLITEMCODE")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLIERPRICE")_"</th>"
 W "  <th>"_$$^%W1DICT("SUPPLDISCOUNT")_"</th>"
 ;
 I $$VW(PRM) D
 .W " <th>"_$$^%W1DICT("PRICEAFTERDISCOUNT")_"</th>"
 ;
 ;
 I $$IN(PRM) D
 .W "  <th>"_$$^%W1DICT("LOPAIL")_"</th>"
 .W "  <th>"_$$^%W1DICT("SIGN")_"</th>"
 W " </tr>",!
 Q
 ;
 ;
STR(N,CONT,PRM,DEL) ;
 N (JB,%ARG,%REM,SPK,DAT,PRM,N,CONT,I,DEL)
 I '$D(I) S I=0
 W "<tr id=""trspkmh"_N_""" "
 I $G(%ARG("PRT"))=N W " style=""background-color:yellow"" "
 W ">" S I=I+1
 ;
 W "<td id=""cd"_N_""" style=""cursor:pointer"" "
  W " onClick=""ShowItemCard('"_N_"','ifr',parent,'&BACK=1')"" "
 W ">&nbsp;"_N_"&nbsp;</td>"
 ;
 W "<td>&nbsp;"_$$H2U^%L1FRM($$SHEMPAR(N))_"&nbsp;</td>"
 W "<td>&nbsp;"_$$H2U^%L1FRM($$EMSFR1^W4PRT(N))_"&nbsp;</td>"
 ;
 I $$IN(PRM) D
 .W "<td id=""mhspko"_N_""" "
 .W "  onMouseOver=""OpenPrice('"_N_"','mhspko','disco','I')"" "
 .W "  onMouseOut=""ClosePrice('"_N_"')"" "
 .W ">"_$J($$MHL(N),2,2)_" </td>"
 .W "<td id=""disco"_N_""" "
 .W "  onMouseOver=""OpenPrice('"_N_"','mhspko','disco','I')"" "
 .W "  onMouseOut=""ClosePrice('"_N_"')"" "
 .W ">"_$J($$DISC(N),2,2)_" </td>"
 ;
 N ITSP S ITSP=$P(CONT,"\",2),BGR="white"
 ;
 W "<td >"
 I $$IN(PRM) D
 .W " <input style=""background-color:"_BGR_""" type=""text"" "
 .W "  id=""spkitem"_N_""" size=""8"" maxlength=""13"" value="""_ITSP_""" "
 .W "  onClick=""this.select()"" onKeyUp=""parent.SupplierPrice('"_N_"',this.value,'CD')"">"
 ;
 I '$$IN(PRM) D
 .W $S(ITSP:ITSP,1:"&nbsp;")
 W "</td>",!
 ;
 N MHSP S MHSP=$P(CONT,"\")
 I MHSP="" S MHSP=$$^%W1DICT("NOTDEFINED"),BGR="yellow"
 I MHSP S MHSP=$J(MHSP,2,2),BGR="white"
 ;
 W "<td>"
  I $$IN(PRM) D
  .W " <input style=""background-color:"_BGR_""" type=""text"" "
  .W "  onMouseOver=""OpenPrice('"_N_"','mhspk','discspk')"" "
  .W "  onMouseOut=""ClosePrice('"_N_"')"" "
  .W "  id=""mhspk"_N_""" size=""4"" maxlength=""7"" value="""_MHSP_""" "
  .W "  onClick=""this.select()"" onKeyUp=""parent.SupplierPrice('"_N_"',this.value,'PRC')"">"
  ;
  I '$$IN(PRM) W MHSP
 W "</td>",!
 ;
 N DISCSPK S DISCSPK=$P(CONT,"\",3)
 I DISCSPK S DISCSPK=$J(DISCSPK,2,2),BGR="white"
 ;
 W "<td>"
  I $$IN(PRM) D
  .W " <input style=""background-color:"_BGR_""" type=""text"" "
  .W "  onMouseOver=""OpenPrice('"_N_"','mhspk','discspk')"" "
  .W "  onMouseOut=""ClosePrice('"_N_"')"" "
  .W "  id=""discspk"_N_""" size=""4"" maxlength=""7"" value="""_DISCSPK_""" "
  .W "  onClick=""this.select()"" onKeyUp=""parent.SupplierPrice('"_N_"',this.value,'DISC')"">"
  ;
  I '$$IN(PRM) W DISCSPK
 W "</td>",!
 ;
 I $$VW(PRM) D
 .W "<td>"
 . W $J(MHSP*(100-$G(DISCSPK))*.01,2,2)
 .W "</td>",!
 ;
 I $$IN(PRM) D
 .W "<td align=""center"">"
 .W " <input type=""checkbox"" id=""lopail"_N_""" "
 .I $G(DEL) W " checked=""checked"" "
 .W " onClick=""OnClickActive('"_N_"')"" />"
 .W "</td>"
 .
 .W "<td align=""center"">"
 .W " <input type=""checkbox"" id=""chspmh"_N_""" "
 .W " onClick=""OnClickTbl('"_N_"','TblSpP','trspkmh','chspmh')"" />"
 .W "</td>"
 ;
 W "</tr>",!
 Q
 ;
GLTMPPAR S GLTMPPAR="^[$$^W3MAIN]TMPPAR($$^%W1JB)"
 Q
 ;
SAVE(NEWSPK) ;
 N CD,NM,MH,DESC,GR,SHOW
 D GLTMPPAR
 N OLDSPK S OLDSPK=$$GET^%W1PRM("SPK")
 ;
 D PUT^%W3DEB("W4SPKMH-SAVE","OLDSPK=OLDSPK & NEWSPK=NEWSPK & GLTMPPAR = GLTMPPAR")
 N DT S DT=+$H
 ;
 I OLDSPK D
 .S N="" F  S N=$O(@GLTMPPAR@(N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..N DEL S DEL=0 I $D(^(N,"DEL")) S DEL=^("DEL")
 ..D DELSPKMH(OLDSPK,N,DT)
 ..I $$ISNUM^%L1FRM($P(A,"\"))!$P(A,"\",2) D
 ...I DEL S @$$GLSPKMH@(OLDSPK,N,DT,"DEL")=DEL
 ...D SETSPKMH(OLDSPK,N,DT,A)
 ;
 K @GLTMPPAR
 I $G(NEWSPK) D PAR2TMP(NEWSPK)
 Q
 ;
 ;
DEL(SPK) ;
 N CD,NM,MH,DESC,GR,SHOW
 D PUT^%W3DEB("W4SPKMH-DEL","SPK=SPK & GLTMPPAR = GLTMPPAR")
 Q:'$G(SPK)
 N LDT S LDT=$O(@$$GLSPKMHI@(SPK,99999),-1) Q:LDT=""
 K @$$GLSPKMHI@(SPK,LDT)
 N N S N="" F  S N=$O(@$$GLSPKMH@(SPK,N)) Q:N=""  D
 .D DELSPKMH(SPK,N,LDT)
 Q
 ;
MVPR2SPMH(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GLTMPPAR
 D PUT^%W3DEB("W4SPKMH-MVPR2SPMH","PRM=PRM & GLTMPPAR=GLTMPPAR")
 S PRM=$E(PRM,1,$L(PRM)-1)
 S PRM=$P(PRM,";",2,$L(PRM,";"))
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:$D(@GLTMPPAR@(CD))
 .S @GLTMPPAR@(CD)=""
 .S OK=1
 Q OK
 ;
MVSPMH2PR(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D GLTMPPAR
 D PUT^%W3DEB("W4SPKMH-MVSPMH2PR","PRM=PRM & GLTMPPAR=GLTMPPAR")
 S PRM=$E(PRM,1,$L(PRM)-1)
 N OK S OK=0
 I PRM="" Q 0
 N I,CD F I=1:1:$L(PRM,";") D
 .S CD=$P(PRM,";",I) Q:CD=""
 .Q:'$D(@GLTMPPAR@(CD))
 .K @GLTMPPAR@(CD)
 .S OK=1
 Q OK
 ;
 ;
GROUP ;
 I FIRSTGR="SPK",'$$SMALL,'$G(%ARG("MHONLY")) D SUPPLINPUT Q
 ;
 W "<select "
 ;
 I FIRSTGR="KVPRT" D
 .W " id=""grprt"""
 .W " onChange=""ShowPrt()"" >",!
 .W "<option value=""ALL"">"_$$^%W1DICT("ALLGROUPS")_"</option>",!
 .N NN,II S NN="",II=0 F  S NN=$O(@$$SUGP@(NN)) Q:NN=""  D
 ..;;I $G(@$$^W4GL("W3SUG")@(NN))=0 Q
 ..S II=II+1
 ..W "<option value="""_NN_""""
 ..I II=1 W " selected=""selected"""
 ..W " >"_$$H2U^%L1FRM($G(@$$SUGP@(NN)))_"</option>",!
 ;
 ;
 I FIRSTGR="SPK" D
 .W " id=""spk"""
 .W " onChange=""AskSave();ShowSpP(this.value);ShowPrt()"""
 .W " >",!
 .D GLSP
 .
 .I '$G(%ARG("MHONLY")) D
 ..N NN,II S NN=$$FIRST^W4SPK,II=0 ; N=999
 ..F  S NN=$O(@GLSP@(NN)) Q:NN=""  D HZGSPK(NN)
 .
 .I $G(%ARG("MHONLY")) D
 ..N NN,II S NN="",II=0
 ..F  S NN=$O(@$$GLSPKMH@(NN)) Q:NN=""  I $D(^(NN))>9 D HZGSPK(NN)
 ;
 ;
 W "</select>",!
 Q
 ;
 ;
HZGSPK(NN) ;
 S II=II+1
 W "<option value="""_NN_""""
 I II=1 W " selected=""selected"""
 W " >"_NN_"&nbsp;"_$J($$H2U^%L1FRM($$NAME^W4SPK(NN)),20)_"</option>",!
 Q
 ;
PAR2TMP(SPK) ;
 Q:'$G(SPK)
 D GLTMPPAR K @GLTMPPAR
 N N S N="" F  S N=$O(@$$GLSPKMH@(SPK,N)) Q:N=""  D
 .S LDT=$O(@$$GLSPKMH@(SPK,N,$H+1),-1) Q:LDT=""
 .I $D(@$$GLSPKMH@(SPK,N,LDT,"DEL")) Q
 .S @GLTMPPAR@(N)=$G(@$$GLSPKMH@(SPK,N,LDT))
 Q
 ;
FIRSTGR(STAM) ;
 N N,GLSP
 D GLSP
 S N=$$FIRST^W4SPK F  S N=$O(@GLSP@(N)) Q:N=""  I $$MAZAV^W4SPK(N) Q
 Q N
 ;
SETMH(PRM) ;
 D PUT^%W3DEB("W4SPKMH-SETMH","PRM=PRM")
 N CODP,VL,WHAT,TO
 S CODP=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S WHAT=$P(PRM,";",3)
 S TO=$S(WHAT="CD":2,WHAT="DISC":3,1:1)
 I CODP=""!(VL="") Q
 D GLTMPPAR
 S $P(@GLTMPPAR@(CODP),"\",TO)=VL
 Q
 ;
SETACT(PRM) ;
 N CODP,VL
 S CODP=$P(PRM,";") I CODP="" Q
 S VL=$P(PRM,";",2)
 D GLTMPPAR
 I VL=1 S @GLTMPPAR@(CODP,"DEL")=$H
 I VL=0 K @GLTMPPAR@(CODP,"DEL")
 Q
 ;
SUPPLINPUT ;
 N GLSP D GLSP
 S:'$D(SPK) SPK=$O(@GLSP@($$FIRST^W4SPK))
 W "<table width=""100%"" border=""0"" cellpadding=""0"" cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
  W "<tr valign=""top"">"
     W "  <td width=""15%""> "_$$^%W1DICT("SUPPLIERNUMBER")_"</td>",!
     W "  <td width=""30%""><input type=""text"" id=""spk""  maxlength=""11"" size=""8"" value="""_SPK_""" onClick=""this.select()"" onKeyUp=""ChangeCd()"" onChange=""AskSave();Find('spk','spk','SPK','600px','120px')"" >",!
      W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick=""Find('spk','spk','SPK','600px','120px')"" >",!
     W "  </td>",!
     W "  <td width=""8%"" >"_$$^%W1DICT("NAME")_"</td>",!
     W "  <td "_$$^%W1ALIGN_" ><input type=""text"" id=""spk1"" readonly=""readonly"" size=""24"" value="""_$$H2U^%L1FRM($$NAME^W4SPK(SPK))_""">",!
     W "  </td>",!
  W "</tr>",!
  ;
  W "<tr>"
  W " <td colspan=""4"">"
   W $$^%W1DICT("SHOWSUPPLIERSWITHPRICESLISTONLY")
   W "&nbsp;<input type=""checkbox"" id=""mhonly"""
   W $S($G(%ARG("MHONLY")):"checked=""checked""",1:"")
   W " onChange=""PageReload()"""
  W " </td>",!
  W "</tr>",!
 W "</table>",!
 Q
 ;
SMALL(STAM) ;
 N N,I S N=$$FIRST^W4SPK,I=0
 N GLSP D GLSP
 F I=1:1 S N=$O(@GLSP@(N)) Q:N=""
 I I>50 Q 0
 Q 1
 ;
GLSPKMH(STAM) ;
 Q $$^W4GL("MLSPKMH")
 ;
GLSPKMHI(STAM) ;
 Q $$^W4GL("MLSPKMHI")
 ;
GLSPKMHP(STAM) ;
 Q $$^W4GL("MLSPKMHP")
 ;
GLSPKMHS(STAM) ;
 Q $$^W4GL("MLSPKMHS")
 ;
GLSPKMHSI(STAM) ;
 Q $$^W4GL("MLSPKMHSI")
 ;
CAPTION(SPK,DAT) ;
 N (JB,%ARG,%REM,SPK,DAT)
 S SPK=$G(SPK)
 I SPK="" S PRM=";"
 I SPK'="" S PRM=SPK_"<>"_$$NAME^W4SPK(SPK)_"<>"_DAT
 Q $$^%W1DICT("SUPPLPRICESLIST",PRM)
 ;
GLSP N GL D GL^W4SPK S GLSP=GL
 Q
 ;
SHEMPAR(PAR) ;
 Q $$MLNAME^W4MLPRT(PAR)
 ;
MHL(PAR) ;
 Q $$MHL^W4MLPRT(PAR)
 ;
DISC(PAR) ;
 Q $$DISC^W4MLPRT(PAR)
 ;
SUGP(STAM) ;
 Q $$GLSUGP^W4MLPRT
 ;
LASTDAT(SPK) ;
 N LDT
 S LDT=$O(@$$GLSPKMHI@(SPK,99999),-1)
 I 'LDT Q ""
 Q $ZD(LDT,"DD.MM.YY")
 ;
IN(PRM) ;
 Q $G(PRM)="IN"
 ;
VW(PRM) ;
 Q $G(PRM)="VW"
 ;
 ;
SETSPKMH(OLDSPK,N,DT,A,VD,NOM)
 ;
 I '$G(DT) Q
 S:$G(OLDSPK)="" OLDSPK=0
 I '$L($G(N)) Q
 ;
 I A["\" D
 .I $L($P(A,"\",2)) D
 ..S @$$GLSPKMHS@(OLDSPK,$P(A,"\",2))=N
 .
 .N J F J=1:1:$L(A,"\") D
 ..I $P(A,"\",J)="" Q
 ..S $P(@$$GLSPKMH@(OLDSPK,N),"\",J)=$P(A,"\",J)
 ..S $P(@$$GLSPKMH@(OLDSPK,N,DT),"\",J)=$P(A,"\",J)
 .
 .S @$$GLSPKMHI@(OLDSPK,DT,N)=""
 .S @$$GLSPKMHSI@(N,OLDSPK,DT)=""
 ;
 ;;S ^AA("W4SPKMH","A")=A
 ;;S ^AA("W4SPKMH","DT")=DT
 ;;S ^AA("W4SPKMH","N")=N
 I A'["\" D
 .S $P(@$$GLSPKMH@(OLDSPK,N),"\")=A
 .S $P(@$$GLSPKMH@(OLDSPK,N,DT),"\")=A
 .S @$$GLSPKMHI@(OLDSPK,DT,N)=""
 .S @$$GLSPKMHSI@(N,OLDSPK,DT)=""
 ;
 I $G(VD)'="",$G(NOM)'="" S @$$GLSPKMH@(OLDSPK,N,DT,"UPD")=VD_"\"_NOM
 S @$$GLSPKMHP@(N,DT,OLDSPK)=""
 Q
 ;
 ;
DELSPKMH(OLDSPK,N,DT) ;
 K @$$GLSPKMH@(OLDSPK,N,DT)
 K @$$GLSPKMHI@(OLDSPK,DT,N)
 K @$$GLSPKMHP@(N,DT,OLDSPK)
 K @$$GLSPKMHSI@(N,OLDSPK,DT)
 Q
 ;
CRGLSPKMHSI ;
 N SPK,PRT,DT,GLSPKMH,GLSPKMHSI
 S GLSPKMH=$$GLSPKMH
 S GLSPKMHSI=$$GLSPKMHSI
 S SPK="" F  S SPK=$O(@GLSPKMH@(SPK)) Q:SPK=""  D
 .S PRT="" F  S PRT=$O(@GLSPKMH@(SPK,PRT)) Q:PRT=""  D
 ..S DT="" F  S DT=$O(@GLSPKMH@(SPK,PRT,DT)) Q:DT=""  I DT D
 ...S @GLSPKMHSI@(PRT,SPK,DT)=""
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPKMHA
W4SPKMHA ; [ 22.02.14 12:20 ] [ 27.01.14 23:09 ] [ 14.01.14 15:27 ]
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 D ^%W1ARG
 ;
 I $G(SPK)="" D  Q
 .W "<script>",!
 .W " MsgA(""SUPPLIERNOTDEFINED"")",!
 .W "</script>",!
 ;
 I $G(DAT)="" S DAT=$$LASTDAT^W4SPKMH(SPK)
 I '$G(DAT) D  Q
 .W "<script>",!
 .W " MsgA(""NODATA!"")",!
 .W "</script>",!
 ;
 S DT=$$^%L1DC(DAT,3)
 ;
 S RSIZE=40,PG=0,I=0
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 I $$SNDMAIL G BODY
 ;
 W "<div id=""divbut"" "_$$INV^%W1ALIGN_" >"
 W "<br />" D VOSC
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">" D VOSC
  W "<tr>"
   W "<td width=""60%"">"
    I '$G(%ARG("PRT")) D
    .W $$^%W1DICT("PRICESLISTDATE"),"&nbsp;"
    .D SELDAT
   W "</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>" D VOSC
 W "</table>",!
 W "</div>" D VOSC
 W "<br />" D VOSC
 ;
BODY ;
 D KOTSPK^W4SPKMH(SPK,DAT,"VW") ; -- HEADER + OPEN TABLE
 ;
 N GLMH,GLMHI
 S GLMH=$$GLSPKMH^W4SPKMH_"(SPK)"
 S GLMHI=$$GLSPKMHI^W4SPKMH_"(SPK,DT)"
 ;
 S PRT="" F  S PRT=$O(@GLMHI@(PRT)) Q:PRT=""  D
 .I '$D(@GLMH@(PRT,DT)) Q
 .S A=$G(^(DT))
 .I $D(@GLMH@(PRT,DT,"DEL")) Q
 .S I=I+1 I I>RSIZE D PEREH
 .D STR^W4SPKMH(PRT,A,"VW")
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
PEREH ;
 D CLOSETBL
 D PGBREAK
 D KOTSPK^W4SPKMH(SPK,DAT,"VW")
 Q
 ;
CLOSETBL ;
 W "</table>",!
 Q
 ;
KOT(PRH) ;
 W "<br>" S PG=PG+1,I=1
 W "<table width=""94%"" dir="""_$$^%W1DIR_""">" D VOSC
  W "<tr>" D VOSC
   W "<td "
    W " style=""text-align:center;width:90%;color:darkred;font-size:"_$$^W3FSZ(18)
    W """>"
     I $G(PRH) D
      .W "&nbsp;&nbsp;"
      .W "<span style=""color:black;font-size:"_$$^W3FSZ(12)_""">"
      . W " ( "_$$^%W1DICT("CONTINUE")_" ) "
      .W "</span>" D VOSC
    W "</td>" D VOSC
    W "<td>"
     W $$^%W1DICT("PAGE")_" "_PG
    W "</td>"
  W "</tr>" D VOSC
 W "</table>",!
 ;
 D KOTSPK^W4SPKMH(SPK,DAT,"VW")
 S BORD=0 ;1
 I $$SNDMAIL S BORD=0
 ;
 Q
 ;
 ;
PGBREAK ;
 W "<p style=""page-break-before:always"">" D VOSC
 Q
 ;
VOSC ;
 I '$$SNDMAIL W !
 Q
 ;
SNDMAIL(STAM) ;
 I $G(%ARG("SNDMAIL")) Q 1
 Q 0
 ;
SELDAT ;
 N DT,GLSPKMHI S GLSPKMHI=$$GLSPKMHI^W4SPKMH_"(SPK)"
 W "<select id=""dat"" onChange=""Show()"" >",!
  S DT=99999 F  S DT=$O(@GLSPKMHI@(DT),-1) Q:DT=""  D
  .W "<option "
  . I $ZD(DT,"DD.MM.YY")=$G(%ARG("DAT")) W " selected=""selected"" "
  .W ">"_$ZD(DT,"DD.MM.YY")_"</option>",!
 W "</select>",!
 Q

W4SPKMHP
W4SPKMHP ; [ 18.09.14 06:09 ] [ 15.09.14 20:29 ] [ 05.08.14 09:29 ]
 N (JB,%ARG,SRCH)
 ; ----------- LEFT WINDOW - ITEMS TABLE ----
 D GLPAR
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4SPKMHP","%ARG=[%ARG & SRCH=SRCH")
 I $D(%ARG("KV")) D PUT^%W1PRM("KV",%ARG("KV"))
 ;
 W "<div align=""center"" >",!
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"_$$^%W1DICT("ITEMSTABLE")_"</span>",!
 ;
 W "<table id=""TblPrt"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"" >",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
  W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""13%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "  <th width=""33%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "  <th width=""13%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "  <th width=""8%"">"_$$^%W1DICT("SIGN")_"</th>"
 W " </tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GLPAR@(N)) Q:N=""  D
 .I $$NOSHOW(N) Q
 .I $D(@$$^W4MAIN("TMPPAR")@(N)) Q
 .S SUG=$$SUGP(N)
 .I $G(%ARG("KV")),%ARG("KV")'=SUG Q
 .I $G(%ARG("KV"))="NO",SUG Q
 .;;W "N="_N_" 5",!
 .I $L($G(SRCH)),'$$^W1SRCH(SRCH,N,"","ML") Q
 .;;W "N="_N_" 6",!
 .W "<tr id=""trprt"_N_""" >" S I=I+1
 .
 .W "<td id=""cd"_N_""" "
 .W " style=""cursor:pointer"" onClick=""ShowItemCard('"_N_"','ifr',parent,'&BACK=1')"" "
 .W ">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEMPAR(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$J($$MHAL(N),2,2)_"&nbsp;</td>"
 .
 .W "<td align=""center""><input type=""checkbox"" id=""chprt"_N_""" onClick=""OnClickTbl('"_N_"','TblPrt','trprt','chprt')"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
GLPAR ;
 S GLPAR=$$^W4GL("MLPAR")
 Q
 ;
SUGP(PAR) ;
 Q $$MLSUGP^W4MLPRT(PAR)
 ;
SUG1(PAR) D GLPAR
 N SUG S SUG=$$SUGP(PAR)
 I 'SUG Q $$^%W1DICT("NOGROUP")
 Q $$H2U^%L1FRM($G(@$$^W4GL("PARSUG")@(SUG)))
 ;
NOSHOW(PAR) ;
 Q 0
 ;
SHEMPAR(PAR) ;
 Q $$MLNAME^W4MLPRT(PAR)
 ;
MHAL(PAR) ;
 Q $$MHAL^W4MLPRT(PAR)

W4SPKMHV
W4SPKMHV ; [ 29.12.21 08:22 ] [ 05.01.14 07:18 ] [ 03.01.14 19:39 ] 
 N (JB,%ARG)
 I '$D(JB) W " JB number is not defined ! " Q
 D PUT^%W3DEB("W4SPKMHV","%ARG=[%ARG")
 S DAT=$G(%ARG("DAT"))
 I 'DAT W "PRICESLIST DATE NOT DEFINED !"
 S DT=$$^%L1DC(DAT,3)
 ;
 D GLTMPPAR
 ;
 S SPK=$G(%ARG("SPK")) Q:'SPK
 D PAR2TMP(SPK,DT)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<span style=""color:"_$$FC^W3CSS($$COLOR^W3CSS)_";font-size:"_$$^W3FSZ_""" >"
  F J=1:1:24 W "&nbsp;"
  W $$CAPTION(SPK)
 W "</span>",!
 W "&nbsp;&nbsp;"_$$^%W1DICT("DATE",DAT)
 ;
 W "<table id=""TblSpP"" border=""1"" cellspacing=""0"" width=""100%"" style=""background-color:white;color:black"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""15%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "<th width=""35%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "<th width=""15%"">"_$$^%W1DICT("SUPPLITEMCODE")_"</th>"
 W "<th width=""15%"">"_$$^%W1DICT("SUPPLIERPRICE")_"</th>"
 W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GLTMPPAR@(N)) Q:N=""  D
 .W "<tr id=""trspkmh"_N_""" >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEMPAR(N))_"&nbsp;</td>"
 .
 .N ITSP S ITSP=$P($G(@GLTMPPAR@(N)),"\",2),BGR="white"
 .
 .W "<td align=""center"">"_ITSP_"</td>"
 .
 .N MHSP S MHSP=$P($G(@GLTMPPAR@(N)),"\")
 .I MHSP="" S MHSP=$$^%W1DICT("NOTDEFINED"),BGR="yellow"
 .I MHSP S MHSP=$J(MHSP,2,2),BGR="white"
 .
 .W "<td align=""center"">"
 . W MHSP
 .W "</td>",!
 .
 .W "</tr>",!
 W "</div>",!
 Q
 ;
GLTMPPAR S GLTMPPAR="^[$$^W3MAIN]TMPPAR($$^%W1JB)"
 Q
 ;
DEL(SPK,DT) ;
 N CD,NM,MH,DESC,GR,SHOW
 D PUT^%W3DEB("W4SPKMH-DEL","SPK=SPK & GLTMPPAR = GLTMPPAR")
 Q:'$G(SPK)
 K @$$GLSPKMHI@(SPK,DT)
 N N S N="" F  S N=$O(@$$GLSPKMH@(SPK,N)) Q:N=""  K @$$GLSPKMH@(SPK,N,DT)
 Q
 Q
 ;
 ;
PAR2TMP(SPK,DT) ;
 Q:'$G(SPK)
 D GLTMPPAR K @GLTMPPAR
 N N S N="" F  S N=$O(@$$GLSPKMHI@(SPK,DT,N)) Q:N=""  D
 .S @GLTMPPAR@(N)=$G(@$$GLSPKMH@(SPK,N,DT))
 Q
 ;
GLSPKMH(STAM) ;
 Q $$GLSPKMH^W4SPKMH
 ;
GLSPKMHI(STAM) ;
 Q $$GLSPKMHI^W4SPKMH
 ;
GLSPKMHP(STAM) ;
 Q $$GLSPKMHP^W4SPKMH
 ;
CAPTION(SPK) ;
 Q $$CAPTION^W4SPKMH(SPK)
 ;
GLSP N GL D GL^W4SPK S GLSP=GL
 Q
 ;
SHEMPAR(PAR) ;
 Q $$MLNAME^W4MLPRT(PAR)
 ;
MHAL(PAR) ;
 Q $$MHAL^W4MLPRT(PAR)
 ;
SUGP(STAM) ;
 Q $$GLSUGP^W4MLPRT
 

W4SPKTB
W4SPKTB(PRM,CODE) ; [ 23.02.24 08:11 ] [ 04.02.24 15:43 ] [ 25.02.20 05:20 ] 
 ;
 ;;W "<form onsubmit=""return ValidateRG()"" action=""w3ordlk.jsp"" >",!
 N (JB,%ARG,CODE,PRM)
 D TMP^W4SPKACM K @TMP
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W4SPKTB")
 D PUT^%W3DEB("W4SPKTB","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 S PR800=$$GET^%W1PRM("PR800")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;;I $G(MSD) S $ZGBLDIR=$$^W3UCI(MSD)
 D PUT^%W3DEB("W4SPKTB","MSD=MSD")
 ;
 N GL D GL
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0 I $G(CODE)["NEW" S CODE="",PRNEW=1
 ;
 D PUT^%W1PRM("CODE",CODE)
 ;
 W "<div align=""center"">",!
 D ^%W1HD("SUPPLTABLE")
 ;
 W "<span style='color:red'>"_$$^%W1DICT("FLDMUSTASTR")_"</span>",!
 W "<br>",!
 ;
 W "<table width=""96%"" border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>"
 S TDSPAN=2 D CODE
 W "</tr>",!
 W "</table>",!
 ;
 W "<table style=""border:solid;border-style:groove;border-color:#eaeaea"" cellpadding=""10"" width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D NAME,TZ W "</tr>",!
 ;
 W "<tr>",!
  D MAZAV
  D HESHBON
 W "</tr>",!
 ;
 W "<tr>",!
  D CONTACTMAN
  D ROLE
 W "</tr>",!
 ;
 W "<tr>",!
  D NMB
  D PELE
 W "</tr>",!
 ;
 W "<tr>"
  D EMAIL
  D FAX
 W "</tr>",!
 ;
 W "<tr>"
  D CITY
  D STREET
 W "</tr>",!
 ;
 W "<tr>",!
  D HOME
  D FLAT
 W "</tr>",!
 ;
 W "<tr>",!
  D FLOOR
  D MIKUD
 W "</tr>",!
 ;
 W "<tr>",!
  D COMMENT
  D SHOTEF
 W "</tr>",!
 ;
 W "<tr>",!
  D NIKMAS
  D NIKMASAD
 W "</tr>",!
 ;
 W "<tr>",!
  D ITRA
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 W "<br>",!
 ;
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<table><tr>",!
 I $G(%ARG("CODE")) D
 .W "<td>"
 . D ROUNDBUT^%W1JS("rbtcontact",$$^%W1DICT("ADDCONTACTMANS"),"AddContactMans()","color:blue","wh,22")
 .W "</td>"
 W "<td>"
  D ROUNDBUT^%W1JS("rbtsubm",$$^%W1DICT("SUBMIT"),"Submit('"_PRNEW_"','"_MSD_"')","color:green","wh,22")
 W "</td>"
 W "<td>",!
  D ROUNDBUT^%W1JS("rbtback",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
 W "</td></tr></table>",!
 W "</div>",!
 ;W "</form>",!
 Q
 ;
CODE D TD W "&nbsp;"_$$ZW_$$^%W1DICT("SUPPLCODE")_"<br>"
 W "<span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"_$$^%W1DICT("MINLNG",4)_"</span><br>"
 ;W "<span style=""font-size:"_$$^W3FSZ(8)_";color:darkblue"">"_$$^%W1DICT("TELRECOMMEND")_"</span></td>"
 W "<td>" D INPC("CODE",100,12)
 W "&nbsp;&nbsp;<img id=""filter"" src=""w3filter.jpg"""
 W " "_$$^W4TOUCH_"=""Find('CODE','CODE!','W4SPK')"" >",!
 W "</td>",!
 Q
 ;
HESHBON D TD W "&nbsp;"_$$^%W1DICT("ACCOUNTMG")_"</td><td>&nbsp;"
 D INP("HESB",100,12,"LTR")
 Q
 ;
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"</td><td>"
 W "<table><tr><td>"
 D INP("NMB",100,12,"LTR")
 D SHLUHA
 W "</tr></table></td>"
 Q
 ;
SHLUHA ;
 D TD W "&nbsp;"_$$^%W1DICT("SHLUHA")_"</td><td>&nbsp;&nbsp;"
 D INP("SHLUHA",50,4,"LTR")
 Q
 ;
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td><td>&nbsp;" D INP("PELE",100,12,"LTR")
 Q
 ;
NAME ;
 N TDWIDTH S TDWIDTH="10%"
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td>"
 W "<td width=""35%"">&nbsp;"
 D INP("NAME","95%",50,$$^%W1DIR)
 Q
 ;
STREET ;;D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td><td>&nbsp;"
 D TD W "&nbsp;"_$$^%W1DICT("STREET")_"</td><td>&nbsp;"
 D INP("STREET","95%",40,$$^%W1DIR)
 Q
 ;
HOME ;;D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td><td>&nbsp;&nbsp;"
 D TD W "&nbsp;"_$$^%W1DICT("HOME")_"</td><td>&nbsp;&nbsp;"
 D INP("HOME",40,4,"LTR")
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("FLAT")_"</td><td>&nbsp;"
 D INP("FLAT",30,5,"LTR")
 Q
 ;
FLOOR D TD W "&nbsp;"_$$^%W1DICT("FLOOR")_"</td><td>&nbsp;&nbsp;"
 D INP("FLOOR",30,3,$$^%W1DIR)
 Q
 ;
CITY ;;D TD W "&nbsp;"_$$^%W1DICT("CITY")_"</td><td>&nbsp;&nbsp;"
 D TD W "&nbsp;"_$$^%W1DICT("CITY")_"</td><td>&nbsp;&nbsp;"
 N RKV S RKV="CITY"
 ;
 I $D(@$$GLCITY)>9,'$$CITYINPUT^W4PRM D  Q
 .W "<select"
 .W " name="""_RKV_""" id="""_RKV_""""
 .W " tabindex=""4"""
 .W " onChange=""ChangeCity()"" >",!
 .W "<option>&nbsp;</option>",!
 .N N S N="" F  S N=$O(@$$GLCITY@(N)) Q:N=""  D
 ..N IR S IR=$G(^(N))
 ..W "<option value='"_N_"'"
 ..I IR=$$CITY^W4SPK(CODE) W " selected=""selected"""
 ..W " >"_$$H2U^%L1FRM(IR)_"</option>",!
 .W "</select>",!
 .W "</td>"
 ;
 D INPCT
 W "</td>"
 Q
 ;
MIKUD D TD W "&nbsp;"_$$^%W1DICT("ZIP")_"</td><td>&nbsp;"
 D INP("MIKUD",80,8,"LTR")
 Q
 ;
TZ N TDWIDTH S TDWIDTH="14%" D TD
 ;;W "&nbsp;"_$$ZW_$$^%W1DICT("BUSINESSID")_"</td>"
 W "&nbsp;"_$$^%W1DICT("BUSINESSID")_"</td>"
 W "<td width=""45%"">&nbsp;"
 D INP("TZ",120,10,"LTR")
 Q
 ;
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"</td>"
 W "<td dir="""_$$^%W1DIR_""">&nbsp;&nbsp;"
  W "<textarea cols=""40"" rows=""2"" id=""COMMENT"" >"
   N RKV S RKV=$$RKV("COMMENT")
   I $TR(RKV," ","")="&nbsp;" S RKV=""
   W $$H2U^%L1FRM(RKV)
  W "</textarea>",!
 W "</td>"
 Q
 ;
EMAIL D TD W "&nbsp;"_$$^%W1DICT("EMAIL")_"</td><td>&nbsp;&nbsp;"
 N EMAIL S EMAIL="" I $G(CODE) S EMAIL=$$EMAIL^W4SPK(CODE)
 I $L(EMAIL) W $$^W4MAILTO(EMAIL)
 D INP("EMAIL","95%",60,"LTR")
 Q
 ;
FAX D TD W "&nbsp;"_$$^%W1DICT("FAX")_"</td><td>&nbsp;"
 D INP("FAX",100,12,"LTR")
 Q
 ;
MAZAV ;
 D TD
 W "&nbsp;"_$$^%W1DICT("SPKCLOSED")_"</td><td>&nbsp;&nbsp;"
 W "<input type=""checkbox"" id=""MAZAV"" "_$S('$$RKV("MAZAV")&$$D^W4SPK(CODE):" checked=""checked""",1:"")_" />"
 Q
 ;
NIKMAS D TD W "&nbsp;"_$$^%W1DICT("AHNIKMAS")_"</td><td>&nbsp;&nbsp;"
 D INP("AHNIKMAS",30,3,$$^%W1DIR)
 Q
 ;
NIKMASAD D TD
 W "&nbsp;"_$$^%W1DICT("NIKMASAD")_"</td><td dir=""LTR"" "_$$^%W1ALIGN_" >&nbsp;"
 N DAT S DAT=$$NIKMASAD^W4SPK(CODE)
 D ^%W1DAT("NIKMASAD",DAT)
 Q
 ;
ITRA ;
 D TD N ITRA S ITRA="&nbsp;"
 I $G(CODE) S ITRA=$J($$ITRA^W4SPK(CODE),2,2)
 W "&nbsp;"_$$^%W1DICT("ITRA")_"</td><td dir=""LTR"" "_$$^%W1ALIGN_" >&nbsp;&nbsp;"
 I $G(CODE) W "<span style=""color:"_$S(ITRA<0:"red",1:"black")_";font-size:"_$$^W3FSZ(12)_";font-weight:bold"">"_$J($$ITRA^W4SPK(CODE),2,2)_"</span>"
 W "</td>",!
 Q
 ;
CONTACTMAN ;
 D TD W "&nbsp;"_$$^%W1DICT("CONTACTMAN")_"</td><td>&nbsp;&nbsp;"
 D INP("CONTACTMAN",120,14,$$^%W1DIR)
 Q
 ;
ROLE ;
 D TD W "&nbsp;"_$$^%W1DICT("ROLE")_"</td><td>&nbsp;"
 D INP("ROLE",120,14,$$^%W1DIR)
 Q
 ;
SHOTEF D TD W "&nbsp;"_$$^%W1DICT("SHOTEF")_"</td><td>&nbsp;"
 D INP("SHOTEF",40,4,"LTR")
 Q
 ;
 ;
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN",DIR'="D" D
 .W "<input type=""text"" maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .D
 ..I RKV="HOME",$G(HOME) W " value="""_HOME_"""" Q
 ..
 ..I RKV="STREET" D
 ...N VL S VL=$$RKV(RKV)
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 W " onKeyUp=""FindStreet(this)"""
 ..
 ..W " value="""_RKVL_""""
 .
 .I RKV="EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
 .
 .W " />",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0)_"<a/>"
 I RKV="EMAIL",$L($G(EMAIL)) W "</a>"
 W "</td>",!
 Q
 ;
INPC(RKV,WD,SIZE) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW S CODE=$TR(CODE,"-","")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 .W " dir=""LTR"" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onChange=""Find('CODE','CODE','W4SPK')"" >",!
 ;
 I $G(PRM)="VW" W "<a> :&nbsp;"_$$RKV(0) ; NOM
 Q
 ;
 ;
INPCT ;
 W "<input type=""text"" size=""12"" style=""width:160px"
 W ";text-align:"_$S($$^%W1DIR="LTR":"left",1:"right")_""""
 W " dir="""_$$^%W1DIR_""""
 N VL S VL="" I $G(CODE) S VL=$$H2U^%L1FRM($TR($$CITY^W4SPK(CODE),"-"," "))
 W " name=""CITY"" id=""CITY"" value="""_VL_""""
 W " tabindex=""4"""
 W " onChange=""ChangeCity()"" "
 ;
 I $$CITYINPUT^W4PRM,$$CITIESTABLE D
 .W " OnKeyPress=""KeyPressCity(event,this,'45%','300px')"" "
 Q
 ;
GLCITY(STAM) ;
 Q $$^W4GL("P1IR")
 ;
CITIESTABLE(STAM) ; 
 I $D(@$$GLCITY)>9 Q 1
 Q 0
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D^W4SPK(CODE) Q $$P(FLD)
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I '$$D^W4SPK(CODE) Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NMB" Q $$TELB^W4SPK(CODE)
 I FLD="SHLUHA" Q $$SHLUHA^W4SPK(CODE)
 I FLD="NAME" Q $$H2U^%L1FRM($$NAME^W4SPK(CODE))
 I FLD="MAZAV" Q $$MAZAV^W4SPK(CODE)
 I FLD="PELE" Q $$PELE^W4SPK(CODE)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV^W4SPK(CODE))
 I FLD="HOME" Q $$BAIT^W4SPK(CODE)
 I FLD="FLAT" Q $$DIRA^W4SPK(CODE)
 I FLD="FLOOR" Q $$H2U^%L1FRM($$KOMA^W4SPK(CODE))
 I FLD="CITY" Q $$H2U^%L1FRM($$IR^W4SPK(CODE))
 I FLD="COMMENT" Q $$H2U^%L1FRM($$CMNT^W4SPK(CODE))
 I FLD="EMAIL" Q $$EMAIL^W4SPK(CODE)
 I FLD="FAX" Q $$FAX^W4SPK(CODE)
 I FLD="COMP" Q $$H2U^%L1FRM($$COMP^W4SPK(CODE))
 I FLD="HESB" Q $$H2U^%L1FRM($$HESB^W4SPK(CODE))
 I FLD="TZ" Q $$TZ^W4SPK(CODE)
 I FLD="MIKUD" Q $$MIKUD^W4SPK(CODE)
 I FLD="SHOTEF" Q $$SHOTEF^W4SPK(CODE)
 I FLD="CONTACTMAN" Q $$H2U^%L1FRM($$CONTACTMAN^W4SPK(CODE))
 I FLD="ROLE" Q $$H2U^%L1FRM($$ROLE^W4SPK(CODE))
 I FLD="AHNIKMAS" Q $$AHNIKMAS^W4SPK(CODE)
 I FLD="NIKMASAD" Q $$NIKMASAD^W4SPK(CODE)
 Q ""
 ;
VW ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 W "<table width=100% dir="""_$$^%W1DIR_""" >",!
 W "<tr>" D NMB
 D PELE
 D NAME
 W "</tr><tr>",!
 D STREET
 D HOME
 D FLAT
 D FLOOR
 W "</tr>",!
 W "</table>",!
 W "<table width=100% dir="""_$$^%W1DIR_""" />",!
 W "<tr>",!
 D CITY
 D COMMENT
 D EMAIL
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ;
 N MC,I
 S MC="CODE~NAME!H~CONTACTMAN!H~ROLE!H~NMB~SHLUHA~PELE~EMAIL~FAX~STREET!H~HOME~FLAT"
 S MC=MC_"~FLOOR~CITY!H~COMMENT!H~HESB~MIKUD~TZ~MAZAV~SHOTEF"
 S MC=MC_"~AHNIKMAS~NIKMASAD"
 ;
 D KILL^%W3DEB("W4SPKTB")
 D PUT^%W3DEB("W4SPKTB","PRM=PRM")
 ;
 F I=1:1:$L(MC,"~") D
 .N FLD,RG,VL
 .S FLD=$P(MC,"~",I)
 .S RG=$P(FLD,"!",2),FLD=$P(FLD,"!")
 .S VL=$TR($P(PRM,"~",I),$C(160)_"?","")
 .S VL=$$CLEAR^%L1FRM(VL)
 .S VL=$$CNWEB^%L1FRM(VL)
 .S VL=$TR(VL,"\*","/X")
 .I RG="H"&($$^%W1DIR="RTL") S VL=$$INVH^%L1FRM(VL)
 .N A,A1,J S A=$$SPA^%L1FRM(VL)
 .S A1="" F J=1:1:$L(A) D
 ..N SMB S SMB=$E(A,J)
 ..I $A(SMB)<32!($A(SMB)>122) Q
 ..S A1=A1_SMB
 .S @FLD=A1
 ;
 I CITY?1N.N,$D(@$$GLCITY@(CITY)) S CITY=^(CITY)
 ;
 I $G(CODE)="" Q "CODE!D"
 ;
 S CODE=$TR(CODE," -","")
 ;
 I CODE'?1N.N Q "CODE!D"
 I '$$TEL(NMB,"M") Q "TEL!D"
 I $L(PELE),'$$TEL(PELE) Q "PELE!D"
 I $L(PELE),$L(PELE)<10 Q "PELE!D"
 ;;I HOME'?1N.E Q "HOME!D"
 ;;I '$L(CITY) Q "CITY!D"
 I '$L(NAME) Q "NAME!D"
 ;;I '$L(STREET) Q "STREET!D"
 I '$$TEL(FAX) Q "FAX!D"
 ;;I '$$N(TZ)!'$L(TZ) Q "TZ!D"
 I $L(TZ),'$$^W4TZ(TZ) Q "TZ!D"
 ;
PUT21 N RZD S RZD="*" Q:NAME=""  Q:CODE=""
 N ST S ST="NAME="_NAME_"<>MAZAV="_'$G(MAZAV)_"<>KTV="_STREET_"<>HESB="_HESB_"<>TELB="_NMB_"<>DIRA="_FLAT
 S ST=ST_"<>KOMA="_FLOOR_"<>BAIT="_HOME_"<>CMNT="_COMMENT
 S ST=ST_"<>IR="_CITY_"<>MIKUD="_$G(MIKUD)_"<>TZ="_TZ_"<>PELE="_$G(PELE)
 S ST=ST_"<>EMAIL="_EMAIL_"<>FAX="_FAX_"<>SHLUHA="_SHLUHA
 S ST=ST_"<>SHOTEF="_SHOTEF_"<>CONTACTMAN="_CONTACTMAN_"<>ROLE="_ROLE
 S ST=ST_"<>AHNIKMAS="_AHNIKMAS_"<>NIKMASAD="_NIKMASAD
 ;
 D PUT^%W3DEB("W4SPKTB-SAVE","ST=ST")
 ;
 S GL=$$^W4GL("W4SPK")
 ;
 D PUT2^W4SPK(CODE,ST)
 ;
 S MSD=$$GET^%W1PRM("MSD")
 I $G(MSD) D ^%S3GLSV(GL_"("""_CODE_""")",$$^W3FGIB(MSD))
 M @(GL_"1")=@GL
 Q 1
 ;
TEL(TEL,PR)
 I $G(PR)="M"!$L(TEL),$TR(TEL,"-","")'?7N.N Q 0
 Q 1
 ;
N(RKV,PR) ;
 I $G(PR)="M"!$L(RKV),RKV'?1N.N Q 0
 Q 1
 ;
GL S GL=$$^W4GL("W4SPK")
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPPY
W4SPPY ; [ 04.02.24 15:44 ] [ 03.07.23 15:38 ] [ 24.06.22 04:34 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 S NOM=$$NOM
 I 'NOM S (STRING,SPK)=$$LK^W4LHB($G(%ARG("SPK")))
 I NOM S (STRING,SPK)=$$SPK^W4PY(NOM)
 ;
 I SPK="" D  Q
 .W "<script>",!
 . W "MsgA('SUPPLNUMBERISWRONG')",!
 . W "Back()",!
 .W "</script>",!
 ;
 I NOM,$G(%ARG("EDIT"))=2 D
 .K @$$TMPY
 .M @$$TMPY=@$$GLPY(NOM)
 ;
 D PUT^%W3DEB("W4SPPY","ARG=[%ARG")
 ;
 I $G(%ARG("ADV"))=1 D PAYMADV Q  ; -- TASHLUM MIROSH
 ;
 I $G(%ARG("SUMADV")) D SUMADV(%ARG("SUMADV"))
 ;
 I $G(%ARG("COLPM")),NOM,$$COLPM^W4PY(NOM)>%ARG("COLPM") D  Q
 .W "<script>",!
 . W "MsgA('PAYMENTSNUMBERISWRONG')",!
 . W "Back()",!
 .W "</script>",!
 ;
 I $G(%ARG("COLPM")) D
 .S $P(@$$TMPY,"\",11)=%ARG("COLPM")
 .I $D(%ARG("FIRSTNUM")) S $P(@$$TMPY@("C",1),"\",4)=%ARG("FIRSTNUM")
 .I $D(%ARG("FIRSTDAT")) S $P(@$$TMPY@("C",1),"\",5)=%ARG("FIRSTDAT")
 .I $D(%ARG("NH")) S $P(@$$TMPY,"\",4)=%ARG("NH")
 .I $D(%ARG("SUGT")) S $P(@$$TMPY,"\",10)=%ARG("SUGT")
 .I $D(%ARG("DATT")) S $P(@$$TMPY,"\",2)=%ARG("DATT")
 .I $D(%ARG("MZ")) S $P(@$$TMPY,"\",9)=%ARG("MZ")
 ;
 ;
 S CODDOC=$$CODDOC
 ;
 D KOTPY(SPK)
 ;
 D DAF1
 ;
 I $$SHOW,$D(@$$GLPY(NOM)@("H"))>9 D
 .D ^W4HBPY(SPK,NOM,1)
 ;
 ;;W "<br/>"
 ;
 I '$$PRINT D
 .W "<div id=""divbut"">"
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"" align=""center"" >",!
 . W "<tr>"
 .  W "<td>"
 .  I '$$SHOW D
 ..    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_SPK_"')","color:green",",,,100")
 .  I $$SHOW D
 ..    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_SPK_"','"_$$NOM_"')","color:green",",,,100")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .
 . I $$SHOW,'$G(%ARG("VIEWONLY")) D
 ..  W "<td>"
 ..   D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("CANCEL"),"Delete('"_$$NOM_"')","color:black",",,,100")
 ..  W "</td>",!
 ..  W "<td>&nbsp;</td>",!
 ..
 ..  I $$NOM,$$ADV($$NOM) D
 ...  W "<td>"
 ...   D ROUNDBUT^%W1JS("Asc",$$^%W1DICT("ASCHB2TSHL"),"AscHb2Tshl('"_$$NOM_"')","color:darkblue",",,,100")
 ...  W "</td>",!
 ...  W "<td>&nbsp;</td>",!
 ..
 ..  I $$PRINTCHK($$NOM)'="" D
 ...  W "<td>"
 ...   D ROUNDBUT^%W1JS("Update",$$^%W1DICT("UPDATE"),"Update('"_$$NOM_"')","color:darkblue",",,,100")
 ...  W "</td>",!
 ...  W "<td>&nbsp;</td>",!
 ...  W "<td>"
 ...   D ROUNDBUT^%W1JS("PrintChk",$$^%W1DICT("PRINTCHK"),"PrnChk('"_$$NOM_"')","color:blue",",,,100")
 ...  W "</td>",!
 .
 . W "<td>&nbsp;</td>",!
 . W "<td>"
 .  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 . W "</td>",!
 . W "</tr>",!
 .W "</table>",!
 .W "</div>",!
 ;
 Q
 ;
 ;
KOTPY(SPK) ;
  N (SPK,JB,%ARG,%REM)
  N DAT S NOM=$$NOM
  ;
  I '$$SHOW D
  .S DAT=$$NEWDAT
  .W "<br />",!
  .W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
  . W $$^%W1DICT("TOPAYMENT")_" "_$$RKVB($$TOPAY($S($$SHOW:NOM,1:0)),"N")
  .W "</span>"
  .W "<br /><br />",!
  .
  .W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
  .
  .I NOM W " <tr><td colspan=""4"" style=""font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("PAYMENT")_" "_NOM_"</td><tr>"
  .N N,A,BANK,SNIF,HESBON
  .W " <tr>",!
  . W "<td>"
  .  W $$^%W1DICT("PAYMENTFROM")
  . W "</td>"
  . W "<td>",!
  .  W " <select id=""NH"" >",!
  .   ;;W "<option value=""0"" >"_$$^%W1DICT("ACCOUNTNOTDEFINED")_"</option>",!
  .   S N="" F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  D
  .   . S A=$G(^(N))
  .   . S BANK=$P(A,"\")
  .   . S SNIF=$P(A,"\",3)
  .   . S HESBON=$P(A,"\",4)
  .   . W " <option value="""_N_""""
  .   .  I N=$$NH(NOM) W " selected=""selected"" "
  .   . W " >"
  .   .  W $$^%W1DICT("BANK")_BANK_" "_$$^%W1DICT("SNIF")_" "_SNIF_" "_$$^%W1DICT("ACCOUNT")_" "_HESBON
  .   . W " </option>",!
  .  W " </select>",!
  . W "</td>",!
  . W "<td>",!
  .  W $$^%W1DICT("PAYMENTDAT")
  . W "</td>",!
  .
  . W "<td>",!
  .  S TODATE=$S($$PAYMDAT(NOM):$$PAYMDAT(NOM),1:$ZD($H,"DD.MM.YY"))
  .  W $$^W4SELDAT(TODATE,30,15,"paymdate") ;
  . W "</td>",!
  .W " </tr>",!
  .D LINE
  .D SUPPLDET(SPK)
  .D LINE
  .W "<tr><td colspan=""6"" style=""font-size:"_$$^W3FSZ(14)_";text-align:center"">"_$$^%W1DICT("CHOICEIFNOTCASH")_"</td></tr>",!
  .W "<tr>",!
  . W " <td>"
  .  W $$^%W1DICT("KINDOFPAYMENT")
  . W " </td>"
  . W " <td>"
  .  D SELSUGT(NOM)
  . W " </td>"
  . W " <td>"
  .  W $$^%W1DICT("COLPM")
  . W " </td>"
  . W " <td>"
  .  N COLPM S COLPM=$$COLPM(NOM) I 'COLPM S COLPM=1
  .  W " <input type=""text"" id=""colpm"" size=""2"" maxlength=""2"" value="""_COLPM_""" onKeyUp=""ColPm()"" onClick=""this.select()"" />"
  . W " </td>"
  .W "</tr>",!
  .;;N VIS S VIS="hidden" I $$COLPM(NOM) S VIS="visible"
  .N VIS S VIS="visible"
  .W "<tr id=""firstdetails"" style=""visibility:"_VIS_""">"
  . W " <td id=""firstnm"">"
  . W $$SUGT1($G(%ARG("SUGT")))
  . W " </td>"
  . W " <td>"
  .  W " <input type=""text"" id=""first"" size=""10"" maxlength=""10"" value="""_$$FIRST(NOM)_""" />"
  . W " </td>"
  . W " <td>"
  .  W $$^%W1DICT("FIRSTPAYMENTDATE")
  . W " </td>"
  . N FIRSTDAT
  . S FIRSTDAT=$$FIRSTDAT(NOM)
  . W " <td>"
  .  W $$^W4SELDAT(FIRSTDAT,60,120,"firstdate")
  . W " </td>"
  . W " <td>"
  .  D ROUNDBUT^%W1JS("DoPaym",$$^%W1DICT("DO"),"DoPayments()","color:yellow;background-color:red",",,,60")
  . W " </td>"
  .W "</tr>"
  .W "</table>",!
  .W "<br />",!
  ;
  ;
  I $$SHOW D
  .S DAT=$$PAYMDAT(NOM)
  .D ^W4KOTHSB(NOM,SPK,DAT,"IPY")
  .W "<br />",!
  .W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
  . W $$^%W1DICT("TOPAYMENT")_" "_$$RKVB($$TOPAY($S($$SHOW:NOM,1:0)),"N")
  .W "</span>"
  .W "<br /><br />",!
  .W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"">",!
  .W "<tr>"
  . W "<td width=""15%"" >"
  .  W $$^%W1DICT("PAYMENTDAT")
  . W "</td>"
  . W "<td>"
  .  W $$PAYMDAT(NOM)
  . W "</td>"
  . W "<td>"
  .  W $$^%W1DICT("BANK")_" : "_$$RKVB($$BANK^W4PY(NOM))_" "_$$RKVB($$BANK1^W4PY(NOM),"H")
  . W "</td>"
  . W "<td>"
  .  W $$^%W1DICT("SNIF")_" : "_$$RKVB($$SNIF^W4PY(NOM))
  . W "</td>"
  . W "<td>"
  .  W $$^%W1DICT("ACCOUNT")_" : "_$$RKVB($$HSBB^W4PY(NOM))
  . W "</td>"
  .W "</tr>",!
  .D SUPPLDET(SPK)
  .W "<tr>"
  . W "<td>"
  .  W $$^%W1DICT("AUTHNO")_$$NBSP^%L1FRM(3)_$$RKVB($$ASM^W4PY(NOM))
  . W "</td>"
  . W "<td>"
  . W "</td>"
  .W "</tr>",!
  .W "</table>",!
EKPY Q
  ;
TD W "<td width=""30%"">"
 Q
 ;
LINE ;
 W "<tr><td>&nbsp;</td></tr>"
 Q
 ;
SUPPLDET(SPK) ;
 I '$$SHOW D
 .W "<tr>"
 . W " <td>"
 .  W $$^%W1DICT("SPKNUMBER")
 . W " </td>"
 . W "<td>"
 .  W $$RKVB(SPK)
 . W " </td>"
 . W "<td>"
 .  W $$^%W1DICT("SPKNAME")
 . W " </td>"
 . W " <td>"
 .  W $$RKVB($$NAME^W4SPK(SPK),"H")
 . W " </td>"
 . W "<td>"
 .  W $$^%W1DICT("BUSINESSID")
 . W " </td>"
 . W " <td>"
 .  W $$TZ^W4SPK(SPK)
 . W " </td>"
 .W "</tr>",!
 ;
 W "<tr>"
  W " <td>"
   W $$^%W1DICT("AHNIKMAS")
  W " </td>"
  W " <td id=""ahnik"">"
   W $$RKVB($$AHNIKMAS^W4SPK(SPK),"N")
  W " </td>"
  W " <td>"
   W $$^%W1DICT("NIKMASAD")
  W " </td>"
  W " <td>"
   W $$RKVB($$NIKMASAD^W4SPK(SPK))
  W " </td>"
  W " <td width=""15%"">"
   W $$^%W1DICT("SHOTEF")
  W " </td>"
  W " <td>"
   W $$RKVB($$SHOTEF^W4SPK(SPK))
  W " </td>"
 W "<tr>"
 Q
 ;
TDLEFT ;
 W "<td "_$$INV^%W1ALIGN
 W ">&nbsp;"
 Q
 ;
SELSUGT(NOM) ;
 N SELECTED
 S SELECTED=" selected=""selected"" "
 W "<select id=""sugt"" onChange='SetSugt1()' >",!
  W "<option value=""1"" "_$S($$SUGT(NOM)=1:SELECTED,1:"")_">"_$$^%W1DICT("CHECK")_"</option>",!
  W "<option value=""2"" "_$S($$SUGT(NOM)=2:SELECTED,1:"")_">"_$$^%W1DICT("CREDITCARD")_"</option>",!
  W "<option value=""3"" "_$S($$SUGT(NOM)=3:SELECTED,1:"")_">"_$$^%W1DICT("BANKMOVING")_"</option>",!
  W "<option value=""4"" "_$S($$SUGT(NOM)=4:SELECTED,1:"")_">"_$$^%W1DICT("CASH")_"</option>",!
 W "</select>",!
 Q
 ;
DAF1 ;
  N (JB,%ARG,SPK,DAT,CMNT,BFTAX,AFTAX,SHUM,LMAM)
  S STRING=SPK
  ;
  S NOM=$$NOM
  S COLST=$G(%ARG("COLPM"))
  I COLST<1 S COLST=$$COLPM(NOM)
  ;
  I $G(%ARG("SUGT"))=4 S COLST=0
  D DIVPYM(COLST)
  ;
  W "<br />"
  W "<table id=""TblPymBt"" dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"">",!
   W "<tr>",!
   W " <td>"
    W $$^%W1DICT("PAIDCASH")_" : "
    I '$$SHOW D
    .W "<input type=""text"" size=""8"" id=""cash"" "
    .W "onClick=""FocSel(this)"" maxlength=""8"" "
    .W "onKeyUp=""ChangeSum('CASH');VisBut()"" onChange=""ChangeValue(this)"" "
    .N MZ S MZ=$$MZ(NOM)
    .W "value="""_MZ_""">"
    ;
    I $$SHOW W $$RKVB($$MZ(NOM))
   W " </td>",!
   ;
  D LINE
  W "<tr>",!
  N PAID
  W " <td style=""font-size:"_$$^W3FSZ(14)_""">"
   W $$^%W1DICT("TOTAL")_" : "
   S PAID=$$TOTPAID(NOM)
   I '$$SHOW,$G(%ARG("COLPM")) D
   .S PAID=$G(SSUM)+$G(%ARG("MZ"))
   W "<span id=""total"">"_$$RKVB(PAID,"N")_"</span>"
  W " </td>",!
  ;
  W " <td style=""font-size:"_$$^W3FSZ(14)_""">"
   W $$^%W1DICT("ITRA2PAY")_" : "
   W "<span id=""iditra"">"
   W $$RKVB($$TOPAY($S($$SHOW:NOM,1:0))-PAID,"N")
   W "</span>",!
  W " </td>"
  ;
  W "</table>",!
  W "<br />",!
  ;
 Q
 ;
 ;
DIVPYM(COLST) ;
 W "<div id=""TblPymDiv"" >",!
  I '$$SHOW D
  .W "<div id=""divchkdet"" dir="""_$$^%W1DIR_""">",!
  . N CHECKED
  . S CHECKED=""
  . I '$G(%ARG("NOCHECKED")) S CHECKED=" checked=""checked"" "
  . W $$^%W1DICT("CHECKFIELDSFILLING")_" <input type=""checkbox"" id=""chkdet"" "_CHECKED_" >"
  .W "</div>",!
 ;
 W "<br>"
 W "<table id=""TblPymBd"" dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">",!
  ;
  W $$TRTH
  ;
  S NOM=$$NOM
  ;
  I '$$SHOW D
  .S SSUM=0
  .S SNIC=0
  .S SNET=0
  .S SUMCH=0
  .F I=1:1:COLST D
  ..W "<tr align=""center"" >"_$$STPY(I)_"</tr>",!
  ..S SSUM=SSUM+$$SUM($$NOM,I)
  ..S SNIC=SNIC+$$NICUY($$NOM,I)
  ..S SNET=SNET+$$NETTO($$NOM,I)
  .;---------------------------- TOTALS
  .W "<tr>"
  . W " <td "_$$^%W1ALIGN_" id=""sumch"" >"_$$^%W1DICT("TOTAL")_"&nbsp; "_$$RKVB(SSUM,"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnic"" >"_$$RKVB(SNIC,"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnetto"" >"_$$RKVB(SSUM-SNIC,"N")_"</td>"
  .W "</tr>",!
  ;
  I $$SHOW D
  .S SUMCH=0
  .F I=1:1 Q:'$D(@$$GLPY(NOM)@("C",I))  W $$TRVW(NOM,I)
  .
  .N SUMCH S SUMCH=$$SUMTS(NOM) ;
  .W "<tr>"
  . W " <td "_$$^%W1ALIGN_" id=""sumch"" >"_$$^%W1DICT("TOTAL")_"&nbsp; "_$$RKVB(SUMCH,"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnic"" >"_$$RKVB($$NIKMAS(NOM),"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnetto"" >"_$$RKVB(SUMCH-$$NIKMAS(NOM),"N")_"</td>"
  .W "</tr>",!
  ;
  W "</table>",!
  W "</div>",! ; ----------- END PAYMTBLDIV
  Q
  ;
  ;
TRTH(STAM) ;
  N ST
  S ST="<tr>"
  S ST=ST_"<th>"_$$^%W1DICT("SUM")_"</th>"
  S ST=ST_"<th>"_$$^%W1DICT("NIKMAS")_"</th>"
  S ST=ST_"<th>"_$$^%W1DICT("NETTO")_"</th>"
  S ST=ST_"<th id=""sugt1"">"_$$SUGT1($$SUGT(NOM),1)_"</th>"
  ;
  S ST=ST_"</th>"
  S ST=ST_"<th>"_$$^%W1DICT("TODATE")_"</th>"
  S ST=ST_"</tr>"
 Q ST
 ;
TRVW(NOM,I) ;
 N ST
 S ST="<tr>"
 S ST=ST_" <td dir=""LTR"" "_$$^%W1ALIGN_" >"_$$RKV($$SUM(NOM,I),"N")_"&nbsp;&nbsp;&nbsp;</td>" S SUMCH=SUMCH+$$SUM(NOM,I)
 S ST=ST_" <td>"_$$RKV($$NICUY(NOM,I))_"</td>"
 S ST=ST_" <td>"_$$RKV($$NETTO(NOM,I))_"</td>"
 S ST=ST_" <td>"_$$RKV($$CHECK(NOM,I))_"</td>"
 S ST=ST_" <td align=""center"" >"_$$RKV($$DATPR(NOM,I))_"</td>"
 S ST=ST_"</tr>"
 Q ST
 ;
STPY(I) ;
 I $$NOM,$D(@$$^W4GL("W4TSHL")@($$NOM,"C",I,"PC")) Q $$TRVW($$NOM,I)
 ;
 S ST="<td ><input type=""text"" size=""9"" id=""sum"_I_""" maxlength=""10"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"')"" onChange=""ChangeValue('"_I_"','1')"" value="""_$$SUM($$NOM,I)_"""></td>"
 S ST=ST_"<td ><input type=""text"" size=""8"" id=""nicuy"_I_""" maxlength=""8"" readonly=""readonly"" value="""_$$NICUY($$NOM,I)_"""></td>"
 S ST=ST_"<td ><input type=""text"" size=""9"" id=""netto"_I_""" maxlength=""9"" readonly=""readonly"" value="""_$$NETTO($$NOM,I)_"""></td>"
 N READONLY S READONLY=""
 I $$SUGT($$NOM)>1 S READONLY=" readonly=""readonly"" "
 S ST=ST_"<td ><input type=""text"" "_READONLY_" size=""10"" id=""check"_I_""" maxlength=""9"" onChange=""ChangeValue('"_I_"','4')"" onClick=""FocSel(this)"" value="""_$$CHECK($$NOM,I)_"""></td>"
 ;;S %W1DAT("CHANGE")=" ChangeValue('"_I_"','5') "
 S ST=ST_"<td dir=""LTR"" onClick=""ChangeValue('"_I_"','5')"" >"_$$STDT^%W1DAT("DATPR"_I,"",$$DATPR($$NOM,I))_"</td>"
 Q ST
 ;
RKVB(VL,PR)
 Q "<span style=""font-weight:bold"">"_$$RKV($G(VL),$G(PR))_"</span>"
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
VW(VL) ;
 I 'VL Q VL
 Q "<b>"_VL_"</b>"
 ;
PUTC(PRM) ;
 N (JB,PRM,%ARG,%REM)
 S SH=$P(PRM,";") I 'SH Q 0
 S ST=$P(PRM,";",2)
 S @$$TMPY@("C",SH)=$TR(ST,"~","\")
 Q 1
 ;
 ;
PUTTMP(PRM) ;
 N (JB,%ARG,PRM)
 I '$D(@$$TMPY) Q "NOSPKNMB"
 ;
 S COLPM=$P(PRM,";",2)
 S FIRSTDAT=$P(PRM,";",3)
 S FIRSTNUM=$P(PRM,";",4)
 S NH=$P(PRM,";",5) I 'NH Q "NONH;NH"
 S PAYMDAT=$P(PRM,";",6) I PAYMDAT="" Q "NOPAYMDAT;paymdate"
 S SUGT=$P(PRM,";",7)
 S MZ=$P(PRM,";",8)
 S BDIKA=$P(PRM,";",9)
 ;
 S SUMCH=0
 S SUMB=0
 ;
 S ER=""
 S MC="SUM~NIKMAS~NETTO~CHECK~DATPR"
 S ID="sum~nicuy~netto~check~DATPR"
 ;
 K CHK
 F SH=1:1 Q:'$D(@$$TMPY@("C",SH))  D  Q:$L(ER)
 .N ST S ST=$G(^(SH))
 .S ST=$$CNWEB^%L1FRM(ST)
 .F J=1:1:$L(MC,"~") D  Q:$L(ER)
 ..N VL S VL=$P(ST,"\",J),IDJ=$P(ID,"~",J)
 ..S @$P(MC,"~",J)=VL
 ..I BDIKA D
 ...I VL="",J'=2 S ER="NO"_$P(MC,"~",J)_";"_IDJ_SH_$S(IDJ["DAT":"IDdd",1:"") Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,1,2)<1!($E(VL,1,2)>31)!($E(VL,1,2)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDdd" Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,4,5)<1!($E(VL,4,5)>12)!($E(VL,4,5)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDmm" Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,7,8)'?2N S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDyy" Q
 ...I $P(MC,"~",J)="CHECK",VL,$D(CHK(VL)),SUGT=1 S ER="SAMECHECK;"_$P(ID,"~",J)_SH Q
 ...N OLDT I SUGT=1 S OLDT=$$CHECKINUSE(SH) I OLDT,+OLDT'=$$NOM D  Q
 ....N NT,CH S NT=+OLDT,CH=$P(OLDT,",",2)
 ....S ER="CHECKINUSE;"_CH_"<>"_NT_";"_$P(ID,"~",J)_SH
 ...I $P(MC,"~",J)="CHECK",VL S CHK(VL)=""
 .
 .I 'SUM,$G(CHECK)!$G(DATPR) S ER="NOSUM;sum"_SH Q
 ;
 I SUGT=4 D
 .I 'MZ S ER="NOSUM;cash" Q
 .S ER=""
 ;
 S SUMTS=$$SUMTS(0)
 ;;I SUMTS-.1>$$TOPAY(0) S ER="PAIDTOOMUCH" ; -->23/06/22
 ;
 I $L(ER) Q ER
 ;
 S COLST=SH-1
 ;
 D PUT^%W3DEB("W4SPPY-PUTTMP","PRM=PRM")
 ;
 I NH D
 .N AC S AC=$G(@$$^W4GL("W4ACNT")@(NH))
 .S BANK=$P(AC,"\",1)
 .S BANK1=$P(AC,"\",2)
 .S SNIF=$P(AC,"\",3)
 .S HESB=$P(PRM,"\",4)
 .S $P(@$$TMPY,"\",21)=BANK
 .S $P(@$$TMPY,"\",22)=BANK1
 .S $P(@$$TMPY,"\",23)=SNIF
 .S $P(@$$TMPY,"\",24)=HESB
 ;
 S $P(@$$TMPY,"\",2)=PAYMDAT
 S $P(@$$TMPY,"\",4)=NH
 S $P(@$$TMPY,"\",9)=MZ
 ;
 S $P(@$$TMPY,"\",8)=$$SUMPAID(0)
 ;
 I SUGT=1 S $P(@$$TMPY,"\",12)=SUMTS ; - CHECK
 I SUGT=2 S $P(@$$TMPY,"\",13)=SUMTS ; - CA
 I SUGT=3 S $P(@$$TMPY,"\",14)=SUMTS ; - HAAV BANK
 I SUGT=4 S $P(@$$TMPY,"\",15)=SUMTS ; - KEVA
 ;
 S $P(@$$TMPY,"\",16)=$$SUMNIC(0)
 ;
 L  ;
 ;
PUTTMPE ;
 Q 1
 ;
 ;
PUT(NUMBER) ;
 N (JB,%ARG,NUMBER)
 N FRST S FRST="" S SUGT=""
 ;
 I NUMBER[";" D
 .S FRST=$P(NUMBER,";",2)
 .S SUGT=$P(NUMBER,";",3)
 .S NUMBER=$P(NUMBER,";",1)
 ;
 N SPK,SPK1,SPK,SPK10
 I $G(NUMBER) D CLR(NUMBER) D
 .S SPK0=$$SPK^W4PY(NUMBER)
 .S SPK10="" I SPK S SPK1=$$NAME^W4SPK(SPK)
 ;
 I '$G(NUMBER) S NUMBER=$O(@$$GLPY(999999),-1)+1
 ;
 K @$$GLPY(NUMBER)
 M @$$GLPY(NUMBER)=@$$TMPY
 ;
 I '$D(@$$GLPY(NUMBER)@("H")) S @$$GLPY(NUMBER)@("ADV")=$H
 I SUGT=3 S @$$GLPY(NUMBER)@("ASM")=FRST
 ;
 S SPK=$$SPK^W4PY(NUMBER)
 S SPK1="" I SPK S SPK1=$$NAME^W4SPK(SPK)
 I SPK="",SPK0'="" S SPK=SPK0,SPK1=SPK10
 ;
 I '$P($G(@$$GLPY(NUMBER)),"\") D
 .S $P(@$$GLPY(NUMBER),"\")=SPK
 .S $P(@$$GLPY(NUMBER),"\",3)=SPK1
 ;
 N N S N="" F  S N=$O(@$$GLPY(NUMBER)@("C",N))  Q:N=""  D
 .N A S A=$G(^(N))
 .S CHK=$P(A,"\")
 ;
 I 1; ???
 D ^%S3GLSV($$GLPY(NUMBER),$$^W4FGIB)
 ;
 N PAID S PAID=$$TOTPAID^W4PY(NUMBER)
 N HBPAY,HBPAID
 ;
 N N S N="" F  S N=$O(@$$GLPY(NUMBER)@("H",N))  Q:N=""  D  Q:PAID'>0
 .S HBPAY=+$G(^(N))-$P(^(N),"\",3)
 .S HBPAID=$S(PAID'<HBPAY:HBPAY,1:PAID)
 .S $P(^(N),"\",2)=HBPAID
 .N CODDOC S CODDOC="IHB"
 .N HB S HB=N
 .I N<0 S CODDOC="IHBZ",HB=-N
 .I '$D(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)) Q
 .N A S A=$G(^(HB)) Q:$P(A,"\",1,5)?.P
 .
 .S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",19)=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",19)+HBPAID
 .N NPY S NPY=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",20)
 .S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",20)=$S($L(NPY):NPY_",",1:"")_HBPAID_":"_NUMBER
 .D ^%S3GLSV($$^W4GL("W4INP")_"("""_SPK_""","""_CODDOC_""","""_HB_""")",$$^W4FGIB)
 .S PAID=PAID-HBPAID
 ;
 Q NUMBER
 ;
 ;
CLR(NUMBER) ;
 N PAID S PAID=$$TOTPAID^W4PY(NUMBER)
 N SPK S SPK=$$SPK^W4PY(NUMBER)
 N HBPAY,HBPAID
 N N S N="" F  S N=$O(@$$GLPY(NUMBER)@("H",N))  Q:N=""  D
 .N CODDOC S CODDOC="IHB"
 .S HBPAID=$P(^(N),"\",2)
 .N HB S HB=N
 .I N<0 S CODDOC="IHBZ",HB=-N
 .
 .I $D(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)) D
 ..S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",19)=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",19)-HBPAID
 ..N ST,TS S ST=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",20)
 ..N OK S OK=0
 ..N J F J=1:1:$L(ST,",")  S TS=$P(ST,",",J) I $P(TS,":",2)=NUMBER S OK=J
 ..I OK D
 ...N ST1,ST2
 ...S ST1=$P(ST,",",1,OK-1)
 ...S ST2=$P(ST,",",OK+1,255)
 ...S ST=ST1_$S($L(ST1)&$L(ST2):",",1:"")_ST2
 ..S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",20)=ST
 .
 .S $P(@$$GLPY(NUMBER)@("H",N),"\",2)=0
 Q
 ;
 ;
DELETE(NUMBER) ;
 N (JB,%REM,NUMBER)
 I '$G(NUMBER) Q "NONUMBER"
 D CLR(NUMBER)
 M @$$^W4GL("W4TSHLD")@(NUMBER)=@$$GLPY(NUMBER)
 D ^%S3GLSV($$^W4GL("W4TSHLD")_"("""_NUMBER_""")",$$^W4FGIB)
 K @$$GLPY(NUMBER)
 D ^%S3GLSV($$GLPY(NUMBER),$$^W4FGIB,"K")
 Q 1
 ;
 ;
GLHB(NOM) ;
 Q $$^W4GLS_"(SPK,""IHB"",NOM)"
 ;
 ;
 ;
GETKOT(STRING,NOM) ;
 N A S A=$G(@$$GLPY(NOM))
 S ORGTIME=$ZD($P(A,"\",13),"DD.MM.YY  24:60")
 I ORGTIME="" S ORGTIME=$$^%L1DC($P(A,"\",4),1)
 S SPKNAME=$P(A,"\",3)
 I SPKNAME="" S SPKNAME=$$NAME^W4SPK(STRING)
 S SPKKTV=$$KTVM^W4SPK(STRING)
 Q
 ;
NH(NOM) ;
 I $$SHOW Q $$NH^W4PY(NOM)
 N NH 
 I '$G(%ARG("NH")) D  Q NH
 .S NH=$P($G(@$$TMPY),"\",4)
 .I 'NH,$G(NOM) S NH=$$NH^W4PY(NOM)
 Q %ARG("NH")
 ;
SUGT(NOM) ;
 I $$SHOW Q $$SUGT^W4PY(NOM)
 N SUGT
 I '$G(%ARG("SUGT")) D  Q SUGT
 .S SUGT=$P($G(@$$TMPY),"\",10)
 .I $G(NOM),'SUGT S SUGT=$$SUGT^W4PY(NOM)
 Q %ARG("SUGT")
 ;
SUGT1(SUGT,PR) ;
 I SUGT=2 Q $$^%W1DICT("ASH4")
 I SUGT=3 Q $$^%W1DICT("BANKMOVING")
 I '$G(PR) Q $$^%W1DICT("FIRSTCHECKNUMBER")
 I $G(PR) Q $$^%W1DICT("CHECKNUMBER")
 ;
COLPM(NOM) ;
 I $$SHOW Q $$COLPM^W4PY(NOM)
 I $G(%ARG("COLPM")) Q %ARG("COLPM")
 N COLPM S COLPM=$P($G(@$$TMPY),"\",11)
 I 'COLPM,$G(NOM) S COLPM=$$COLPM^W4PY(NOM)
 Q COLPM
 ;
FIRST(NOM) ;
 N FIRST
 I $$SHOW Q $$FIRST^W4PY(NOM)
 I '$G(%ARG("FIRSTNUM")) D  Q FIRST
 .S FIRST=$P($G(@$$TMPY@("C",1)),"\",4)
 .I 'FIRST,$$SUGT(+$G(NOM))<2 S FIRST=$G(@$$^W4GL("W4TSHL"))+1
 Q %ARG("FIRSTNUM")
 ;
FIRSTDAT(NOM) ;
 I $$SHOW Q $$FIRSTDAT^W4PY(NOM)
 I $G(%ARG("FIRSTDAT")) Q %ARG("FIRSTDAT")
 N FDAT S FDAT=$P($G(@$$TMPY@("C",1)),"\",5)
 I FDAT Q FDAT
 S FDAT=$S($$PAYMDAT(NOM):$$PAYMDAT(NOM),1:$ZD($H,"DD.MM.YY"))
 Q $$^%L1DC($$^%L1DC(FDAT,3)+$$SHOTEF^W4SPK(SPK),1)
 ;
 ;
BANK(NOM) ;
 I $$SHOW Q $$BANK^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",21)
 ;
BANK1(NOM) ;
 I $$SHOW Q $$BANK1^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",22)
 ;
SNIF(NOM) ;
 I $$SHOW Q $$SNIF^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",23)
 ;
HSBB(NOM) ;
 I $$SHOW Q $$HSBB^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",24)
 ;
NEWDAT(STAM) ;
 Q $ZD($H,"DD.MM.YY")
 ;
MZ(NOM) ;
 I $$SHOW Q $$MZ^W4PY(NOM)
 I $G(%ARG("MZ"))="" Q $J($P($G(@$$TMPY),"\",9),2,2)
 Q %ARG("MZ")
 ;
SUMCH(NOM) ;
 I $$SHOW Q $$SUMCH^W4PY(NOM)
 I $$SUGT(NOM)=1 Q $$SUMTS(0)
 Q 0
 ;
SUMCA(NOM) ;
 I $$SHOW Q $$SUMCA^W4PY(NOM)
 I $$SUGT(NOM)=2 Q $$SUMTS(0)
 Q 0
 ;
SUMB(NOM) ;
 I $$SHOW Q $$SUMB^W4PY(NOM)
 I $$SUGT(NOM)=3 Q $$SUMTS(0)
 Q 0
 ;
SUMKEVA(NOM) ;
 I $$SHOW Q $$SUMKEVA^W4PY(NOM)
 I $$SUGT(NOM)=4 Q $$SUMTS(0)
 Q 0
 ;
NIKMAS(NOM) ;
 I $$SHOW Q $$NIKMAS^W4PY(NOM)
 Q $$SUMNIC(0)
 ;
PAYMDAT(NOM) ;
 I $$SHOW Q $$PAYMDAT^W4PY(NOM)
 I '$G(%ARG("DATT")) Q $P($G(@$$TMPY),"\",2)
 Q %ARG("DATT")
 ;
 ;
NOM(STAM) ;
 I $G(%ARG("NOM")) Q %ARG("NOM")
 Q 0
 ;
EDIT(STAM) ;
 I $G(%ARG("EDIT")) Q %ARG("EDIT")
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q %ARG("PRINT")
 Q 0
 ;
SHOW(STAM)
 I '$$NOM!$$EDIT Q 0
 Q 1
 ;
TMPY(STAM) ;
 Q $$^W4MAIN("TMPY")
 ;
SPANBLACK(VL) ;
 Q "<span dir=""LTR"" "_$$^%W1ALIGN_" style=""color:"_$S($G(VL)<0:"red",1:"black")_""""
 ;
TOPAY(NOMPY) ;
 I '$G(NOMPY)!$$EDIT Q $P($G(@$$TMPY),"\",7)
 Q $P($G(@$$GLPY(NOMPY)),"\",7)
 ;
 ;
ITRAPY(NOMPY) ;
 Q $$TOPAY(NOMPY)-$$SUMPAID(NOMPY)
 ;
TOTPAID(NOMPY) ;
 I '$G(NOMPY) Q $$SUMPAID(NOMPY)
 Q $P($G(@$$GLPY(NOMPY)),"\",8)
 ;
SUMPAID(NOMPY) ;
 Q $$SUMTS(NOMPY)+$$MZ(NOMPY)
 ;
SUMTS(NOMPY) ;
 N SSUM,I,N S SSUM=0
 D
 .I '$G(NOMPY)!$$EDIT D  Q
 ..F I=1:1 Q:'$D(@$$TMPY@("C",I))  S SSUM=SSUM+$G(^(I))
 .S N="" F  S N=$O(@$$GLPY(NOMPY)@("C",N)) Q:N=""  D
 ..S SSUM=SSUM+$G(^(N))
 Q SSUM
 ;
SUMNIC(NOMPY) ;
 N SSUM,I,N S SSUM=0
 D
 .I '$G(NOMPY)!$$EDIT D  Q
 ..F I=1:1 Q:'$D(@$$TMPY@("C",I))  S SSUM=SSUM+$$NICUY(0,I)
 .S N="" F  S N=$O(@$$GLPY(NOMPY)@("C",N)) Q:N=""  D
 ..S SSUM=SSUM+$$NICUY(NOMPAY,I)
 Q SSUM
 ;
UPDHB(A,NOMPY,NDLM1,NDLM2) ;
 N PYO,SUMO
 S PYO=$P(A,"\",NDLM2)
 S SUMO=$P(A,"\",NDLM1)
 S PYO=","_PYO_","
 S PYO=$P(PYO,","_NOMPY_",")_","_$P(PYO,","_NOMPY_",",2)
 S:$E(PYO)="," PYO=$E(PYO,2,120)
 S:$E(PYO,$L(PYO))="," PYO=$E(PYO,1,$L(PYO)-1)
 S $P(A,"\",NDLM1)=$J(SUMO-SUM,2,2)
 S $P(A,"\",NDLM2)=PYO
 Q A
 ;
CODDOC(STAM) ;
 Q "IPY"
 ;
SUM(NOM,I) ;
 N COLPM,SUM,SUMCH S COLPM=$G(%ARG("COLPM"))
 S SUM=$P($G(@$$GLPY(NOM)@("C",I)),"\",1)
 I $$SHOW Q $J(SUM,2,2)
 I $G(NOM),SUM Q SUM
 I $G(NOM) D  Q SUM
 .S SUM=$J($$TOPAY(0)-$$MZ(0)-$$SUMCH^W4PY(NOM)/(COLPM-$$COLPM^W4PY(NOM)),2,2)
 .I SUM<0 S SUM=""
 .S $P(@$$TMPY@("C",I),"\",1)=SUM
 ;
 I 'COLPM Q $P($G(@$$TMPY@("C",I)),"\",1)
 ;
 S SUMCH=$$TOPAY(0)-$$MZ(0)
 S SUM=$J(SUMCH/COLPM,2,2)
 N SUMP S SUMP=$J(SUMCH/COLPM,2,2)*(COLPM-1)
 I I=COLPM S SUM=$J(SUMCH-SUMP,2,2)
 S $P(@$$TMPY@("C",I),"\",1)=SUM
 Q SUM
 ;
NICUY(NOM,I) ;
 N NIC S NIC=$P($G(@$$GLPY(NOM)@("C",I)),"\",2)
 I $$SHOW Q NIC
 I $G(NOM),NIC Q NIC
 N AHNIK S AHNIK=$G(%ARG("AHNIK"))
 I AHNIK="" Q NIC
 S NIC=$J($$SUM(NOM,I)*AHNIK/(100+AHNIK),2,2)
 S $P(@$$TMPY@("C",I),"\",2)=NIC
 Q NIC
 ;
NETTO(NOM,I) ;
 N NETTO S NETTO=$P($G(@$$GLPY(NOM)@("C",I)),"\",3)
 I $$SHOW Q NETTO
 I $G(NOM),NETTO Q NETTO
 S NETTO=$$SUM(NOM,I)-$$NICUY(NOM,I)
 S $P(@$$TMPY@("C",I),"\",3)=NETTO
 Q NETTO
 ;
CHECK(NOM,I) ;
 N NUM S NUM=$P($G(@$$GLPY(NOM)@("C",I)),"\",4)
 I $$SHOW Q NUM
 I $G(NOM),NUM Q NUM
 I $G(%ARG("SUGT"))=3 S NUM="BANK" G CHECKE
 I $G(%ARG("FIRSTNUM"))="" S NUM=$P($G(@$$TMPY@("C",I)),"\",4) G CHECKE
 I $G(%ARG("SUGT"))=1 S NUM=%ARG("FIRSTNUM")+I-1 G CHECKE
 I $G(%ARG("SUGT"))=2 S NUM=%ARG("FIRSTNUM") G CHECKE
 Q ""
CHECKE S $P(@$$TMPY@("C",I),"\",4)=NUM Q NUM
 ;
DATPR(NOM,I) ;
 N DAT,DD,MM,YY,DD1,MM1,YY1,DTPR
 S DTPR=$P($G(@$$GLPY(NOM)@("C",I)),"\",5)
 I $$SHOW Q DTPR
 I $G(NUM),DTPR Q DTPR
 ;
 I '$G(%ARG("FIRSTDAT")) Q DTPR
 S DAT=%ARG("FIRSTDAT")
 S DD=$E(DAT,1,2)
 S MM=$E(DAT,4,5)
 S YY=$E(DAT,7,8)
 S MM1=$S(MM+I-1<13:$TR($J(MM+I-1,2)," ",0),1:$TR($J(MM+I-1.1#12+.1,2)," ",0))
 S YY1=$S(MM+I-1<13:YY,1:YY+((MM+I-1.1)\12))
 S DD1=DD
 I DD=29,+MM1=2 S DD1=28
 N DTPR S DTPR=DD1_"."_MM1_"."_YY1
 S $P(@$$TMPY@("C",I),"\",5)=DTPR
 Q DTPR
 ;
GLPY(NUMBER) ;
 Q $$^W4GL("W4TSHL")_"("""_NUMBER_""")"
 ;
PAYMADV ; 
 W "<br><br><br>",!
 W "<div dir="""_$$^%W1DIR_""">",!
 W " <span style=""font-size:"_$$^W3FSZ_""">"
  W $$^%W1DICT("TOPAY")
 W " </span>",!
 W " &nbsp;&nbsp;"
 W "<input type=""text"" id=""topay"" size=""8"" style=""font-size:"_$$^W3FSZ_""" onFocus=""this.select()"" >",!
 W " &nbsp;&nbsp;"
 D ^W4BUTTON("sbm","SUBMIT","SubmSum()","color:green")
 W $$NBSP^%L1FRM(4)
 D ^W4BUTTON("back","BACK","Back()","color:red")
 W "</div>",!
 Q 
 ;
SUMADV(SUM) ;
 N TMPY S TMPY=$$TMPY
 N SPK 
 S SPK=$S($G(%ARG("EDIT")):$$SPK^W4SPY($$NOM),1:$G(%ARG("SPK")))
 S $P(@TMPY,"\")=SPK
 N NAME S NAME=$$NAME^W4SPK(SPK)
 S $P(@TMPY,"\",3)=NAME
 S $P(@TMPY,"\",7)=SUM
 N AHNIK S AHNIK=$$AHNIKMAS^W4SPK(SPK)
 S $P(@TMPY,"\",17)=AHNIK
 N TOKNIK S TOKNIK=$$NIKMASAD^W4SPK(SPK)
 S $P(@TMPY,"\",18)=TOKNIK
 N YA S YA=$$SHOTEF^W4SPK(SPK)
 S $P(@TMPY,"\",19)=YA
 Q
 ;
TIKPY ; 
 N N S N="" F  S N=$O(@$$GLPY(N)) Q:N=""  D TIKPY1(N) ;
 Q
 ;
 ;
TIKPY1(N) ;
 N W4INP S W4INP=$$^W4GL("W4INP")
 N GLPY S GLPY=$$GLPY(N)
 N A,SPK,HB,HDHB
 S SPK=$P($G(@GLPY),"\") Q:'SPK
 ;
 S HB="" F  S HB=$O(@GLPY@("H",HB)) Q:HB=""  D 
 .S A=$G(^(HB)) Q:'A
 .S IND="IHB"
 .S HB1=HB I HB<0 S IND="IHBZ",HB1=-HB
 .S HDHB=$G(@W4INP@(SPK,IND,HB1)) Q:HDHB=""
 .I '$P(HDHB,"\",19),'$P(HDHB,"\",20) D
 ..S $P(@W4INP@(SPK,IND,HB1),"\",19)=$P(@W4INP@(SPK,IND,HB1),"\",19)+A
 ..S $P(@W4INP@(SPK,IND,HB1),"\",20)=+A_":"_N
 Q 
 ;
PRINTCHK(NOM) ; 
 N (JB,%ARG,%REM,NOM)
 I '$$PRINTCHK^W4PRM Q ""
 S GL=$$^W4GL("W4TSHL")
 S OU="",A=""
 S TS=$G(@GL@(NOM))
 S SPK=$P(TS,"\",1)
 S AHN=$P(TS,"\",17)
 S N="" F  S N=$O(@GL@(NOM,"C",N)) Q:N=""  D  I A'="" S OU=NOM_"\"_N_"\"_A Q
 .S A=$G(^(N))
 .I $D(^(N,"PC")) S A="" Q
 .I $P(TS,"\",10)'=1 S A="" Q  ; SUGT
 .S $P(A,"\",6)=AHN
 .S $P(A,"\",7)=SPK
 I $E(OU,$L(OU))=";" S OU=$E(OU,1,$L(OU)-1)
 Q $TR(OU,"\","^")
 ;
CHECKINUSE(SH) ; 
 N (JB,%ARG,SH)
 S NOMCHK=$P($G(@$$TMPY@("C",SH)),"\",4)
 S GL=$$^W4GL("W4TSHL")
 S NT=0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:NT
 .S N1="" F  S N1=$O(@GL@(N,"C",N1)) Q:N1=""  D  Q:NT
 ..S B=$$SPA^%L1FRM($G(^(N1)))
 ..I NOMCHK=$P(B,"\",4) S NT=N Q
 Q NT_","_NOMCHK
 ;
CHNSUM(PRM) ; 
 N (JB,PRM)
 D PRS^%L1FRM(PRM,"SH;SUM;NIK;NET",";") 
 I '$G(SH) Q 0
 S $P(@$$TMPY@("C",SH),"\",1)=SUM
 S $P(@$$TMPY@("C",SH),"\",2)=NIK
 S $P(@$$TMPY@("C",SH),"\",3)=NET
 Q 1 
 ;
ADV(NOM) ; 
 I '$D(@$$GLPY(NOM)@("H")) Q 1
 I $D(@$$GLPY(NOM)@("ADV")) Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPPY0
W4SPPY ; [ 07.01.20 08:18 ] [ 24.12.19 15:43 ] [ 23.12.19 16:31 ] 
 N (JB,%ARG,%REM)
 S NOM=$$NOM
 I 'NOM S (STRING,SPK)=$$LK^W4LHB($G(%ARG("SPK")))
 I NOM S (STRING,SPK)=$$SPK^W4PY(NOM)
 ;
 I SPK="" D  Q
 .W "<script>",!
 . W "MsgA('SUPPLNUMBERISWRONG')",!
 . W "Back()",!
 .W "</script>",!
 ;
 D PUT^%W3DEB("W4SPPY","ARG=[%ARG")
 ;
 I $G(%ARG("ADV"))=1 D PAYMADV Q  ; -- TASHLUM MIROSH
 ;
 I $G(%ARG("SUMADV")) D SUMADV(%ARG("SUMADV"))
 ;
 I $G(%ARG("COLPM")),NOM,$$COLPM^W4PY(NOM)>%ARG("COLPM") D  Q
 .W "<script>",!
 . W "MsgA('PAYMENTSNUMBERISWRONG')",!
 . W "Back()",!
 .W "</script>",!
 ;
 I $G(%ARG("COLPM")) D
 .S $P(@$$TMPY,"\",11)=%ARG("COLPM")
 .I $D(%ARG("FIRSTNUM")) S $P(@$$TMPY@("C",1),"\",4)=%ARG("FIRSTNUM")
 .I $D(%ARG("FIRSTDAT")) S $P(@$$TMPY@("C",1),"\",5)=%ARG("FIRSTDAT")
 .I $D(%ARG("NH")) S $P(@$$TMPY,"\",4)=%ARG("NH")
 .I $D(%ARG("SUGT")) S $P(@$$TMPY,"\",10)=%ARG("SUGT")
 .I $D(%ARG("DATT")) S $P(@$$TMPY,"\",2)=%ARG("DATT")
 .I $D(%ARG("MZ")) S $P(@$$TMPY,"\",9)=%ARG("MZ")
 ;
 ;
 S CODDOC=$$CODDOC
 ;
 D KOTPY(SPK)
 ;
 D DAF1
 ;
 I $$SHOW,$D(@$$GLPY(NOM)@("H"))>9 D
 .;;I $$PRINT W "<p style=""page-break-before:always"">",!
 .;;W "<br />",!
 .D ^W4HBPY(SPK,NOM,1)
 ;
 ;;W "<br/>"
 ;
 I '$$PRINT D
 .W "<div id=""divbut"">"
 .W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"" align=""center"" >",!
 . W "<tr>"
 .  W "<td>"
 .  I '$$SHOW D
 ..    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_SPK_"')","color:green",",,,100")
 .  I $$SHOW D
 ..    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_SPK_"','"_$$NOM_"')","color:green",",,,100")
 .  W "</td>",!
 .  W "<td>&nbsp;</td>",!
 .
 . I $$SHOW,'$G(%ARG("VIEWONLY")) D
 ..  W "<td>"
 ..   D ROUNDBUT^%W1JS("Delete",$$^%W1DICT("CANCEL"),"Delete('"_$$NOM_"')","color:black",",,,100")
 ..  W "</td>",!
 ..  W "<td>&nbsp;</td>",!
 ..  W "<td>"
 ..   D ROUNDBUT^%W1JS("Update",$$^%W1DICT("UPDATE"),"Update('"_$$NOM_"')","color:darkblue",",,,100")
 ..  W "</td>",!
 ..  W "<td>&nbsp;</td>",!
 ..  I $$PRINTCHK($$NOM)'="" D 
 ...  W "<td>"
 ...   D ROUNDBUT^%W1JS("PrintChk",$$^%W1DICT("PRINTCHK"),"PrnChk('"_$$NOM_"')","color:blue",",,,100")
 ...  W "</td>",!
 .
 . W "<td>&nbsp;</td>",!
 . W "<td>"
 .  D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
 . W "</td>",!
 . W "</tr>",!
 .W "</table>",!
 .W "</div>",!
 ;
 Q
 ;
 ;
KOTPY(SPK) ;
  N (SPK,JB,%ARG,%REM)
  N DAT S NOM=$$NOM
  ;
  I '$$SHOW D
  .S DAT=$$NEWDAT
  .W "<br />",!
  .W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
  . W $$^%W1DICT("TOPAYMENT")_" "_$$RKVB($$TOPAY($S($$SHOW:NOM,1:0)),"N")
  .W "</span>"
  .W "<br /><br />",!
  .
  .W "<table dir="""_$$^%W1DIR_""" width=""80%"" >",!
  .
  .I NOM W " <tr><td colspan=""4"" style=""font-size:"_$$^W3FSZ(16)_""">"_$$^%W1DICT("PAYMENT")_" "_NOM_"</td><tr>"
  .N N,A,BANK,SNIF,HESBON
  .W " <tr>",!
  . W "<td>"
  .  W $$^%W1DICT("PAYMENTFROM")
  . W "</td>"
  . W "<td>",!
  .  W " <select id=""NH"" >",!
  .   ;;W "<option value=""0"" >"_$$^%W1DICT("ACCOUNTNOTDEFINED")_"</option>",!
  .   S N="" F  S N=$O(@$$^W4GL("W4ACNT")@(N)) Q:N=""  D
  .   . S A=$G(^(N))
  .   . S BANK=$P(A,"\")
  .   . S SNIF=$P(A,"\",3)
  .   . S HESBON=$P(A,"\",4)
  .   . W " <option value="""_N_""""
  .   .  I N=$$NH(NOM) W " selected=""selected"" "
  .   . W " >"
  .   .  W $$^%W1DICT("BANK")_BANK_" "_$$^%W1DICT("SNIF")_" "_SNIF_" "_$$^%W1DICT("ACCOUNT")_" "_HESBON
  .   . W " </option>",!
  .  W " </select>",!
  . W "</td>",!
  . W "<td>",!
  .  W $$^%W1DICT("PAYMENTDAT")
  . W "</td>",!
  .
  . W "<td>",!
  .  S TODATE=$S($$PAYMDAT(NOM):$$PAYMDAT(NOM),1:$ZD($H,"DD.MM.YY"))
  .  W $$^W4SELDAT(TODATE,30,15,"paymdate") ;
  . W "</td>",!
  .W " </tr>",!
  .D LINE
  .D SUPPLDET(SPK)
  .D LINE
  .W "<tr><td colspan=""6"" style=""font-size:"_$$^W3FSZ(14)_";text-align:center"">"_$$^%W1DICT("CHOICEIFNOTCASH")_"</td></tr>",!
  .W "<tr>",!
  . W " <td>"
  .  W $$^%W1DICT("KINDOFPAYMENT")
  . W " </td>"
  . W " <td>"
  .  D SELSUGT(NOM)
  . W " </td>"
  . W " <td>"
  .  W $$^%W1DICT("COLPM")
  . W " </td>"
  . W " <td>"
  .  W " <input type=""text"" id=""colpm"" size=""2"" maxlength=""2"" value="""_$$COLPM(NOM)_""" onKeyUp=""ColPm()"" onClick=""this.select()"" />"
  . W " </td>"
  .W "</tr>",!
  .N VIS S VIS="hidden" I $$COLPM(NOM) S VIS="visible"
  .W "<tr id=""firstdetails"" style=""visibility:"_VIS_""">"
  . W " <td id=""firstnm"">"
  . W $$SUGT1($G(%ARG("SUGT")))
  . W " </td>"
  . W " <td>"
  .  W " <input type=""text"" id=""first"" size=""10"" maxlength=""10"" value="""_$$FIRST(NOM)_""" />"
  . W " </td>"
  . W " <td>"
  .  W $$^%W1DICT("FIRSTPAYMENTDATE")
  . W " </td>"
  . N FIRSTDAT
  . S FIRSTDAT=$$FIRSTDAT(NOM)
  . W " <td>"
  .  W $$^W4SELDAT(FIRSTDAT,60,120,"firstdate")
  . W " </td>"
  . W " <td>"
  .    D ROUNDBUT^%W1JS("DoPaym",$$^%W1DICT("DO"),"DoPayments()","color:yellow;background-color:red",",,,60")
  . W " </td>"
  .W "</tr>"
  .W "</table>",!
  .W "<br />",!
  ;
  ;
  I $$SHOW D
  .S DAT=$$PAYMDAT(NOM)
  .D ^W4KOTHSB(NOM,SPK,DAT,"IPY")
  .W "<br />",!
  .W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
  . W $$^%W1DICT("TOPAYMENT")_" "_$$RKVB($$TOPAY($S($$SHOW:NOM,1:0)),"N")
  .W "</span>"
  .W "<br /><br />",!
  .W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"">",!
  .W "<tr>"
  . W "<td width=""15%"" >"
  .  W $$^%W1DICT("PAYMENTDAT")
  . W "</td>"
  . W "<td>"
  .  W $$PAYMDAT(NOM)
  . W "</td>"
  . W "<td>"
  .  W $$^%W1DICT("BANK")_" : "_$$RKVB($$BANK^W4PY(NOM))_" "_$$RKVB($$BANK1^W4PY(NOM),"H")
  . W "</td>"
  . W "<td>"
  .  W $$^%W1DICT("SNIF")_" : "_$$RKVB($$SNIF^W4PY(NOM))
  . W "</td>"
  . W "<td>"
  .  W $$^%W1DICT("ACCOUNT")_" : "_$$RKVB($$HSBB^W4PY(NOM))
  . W "</td>"
  .W "</tr>",!
  .D SUPPLDET(SPK)
  .W "<tr>"
  . W "<td>"
  . W "</td>"
  . W "<td>"
  . W "</td>"
  .W "</tr>",!
  .W "</table>",!
EKPY Q
  ;
TD W "<td width=""30%"">"
 Q
 ;
LINE ;
 W "<tr><td>&nbsp;</td></tr>"
 Q
 ;
SUPPLDET(SPK) ;
 I '$$SHOW D
 .W "<tr>"
 . W " <td>"
 .  W $$^%W1DICT("SPKNUMBER")
 . W " </td>"
 . W "<td>"
 .  W $$RKVB(SPK)
 . W " </td>"
 . W "<td>"
 .  W $$^%W1DICT("SPKNAME")
 . W " </td>"
 . W " <td>"
 .  W $$RKVB($$NAME^W4SPK(SPK),"H")
 . W " </td>"
 . W "<td>"
 .  W $$^%W1DICT("BUSINESSID")
 . W " </td>"
 . W " <td>"
 .  W $$TZ^W4SPK(SPK)
 . W " </td>"
 .W "</tr>",!
 ;
 W "<tr>"
  W " <td>"
   W $$^%W1DICT("AHNIKMAS")
  W " </td>"
  W " <td id=""ahnik"">"
   W $$RKVB($$AHNIKMAS^W4SPK(SPK),"N")
  W " </td>"
  W " <td>"
   W $$^%W1DICT("NIKMASAD")
  W " </td>"
  W " <td>"
   W $$RKVB($$NIKMASAD^W4SPK(SPK))
  W " </td>"
  W " <td width=""15%"">"
   W $$^%W1DICT("SHOTEF")
  W " </td>"
  W " <td>"
   W $$RKVB($$SHOTEF^W4SPK(SPK))
  W " </td>"
 W "<tr>"
 Q
 ;
TDLEFT ;
 W "<td "_$$INV^%W1ALIGN
 W ">&nbsp;"
 Q
 ;
SELSUGT(NOM) ;
 N SELECTED
 S SELECTED=" selected=""selected"" "
 W "<select id=""sugt"" onChange='SetSugt1()' >",!
  W "<option value=""1"" "_$S($$SUGT(NOM)=1:SELECTED,1:"")_">"_$$^%W1DICT("CHECK")_"</option>",!
  W "<option value=""2"" "_$S($$SUGT(NOM)=2:SELECTED,1:"")_">"_$$^%W1DICT("CREDITCARD")_"</option>",!
  W "<option value=""3"" "_$S($$SUGT(NOM)=3:SELECTED,1:"")_">"_$$^%W1DICT("BANKMOVING")_"</option>",!
 W "</select>",!
 Q
 ;
DAF1 ;
  N (JB,%ARG,SPK,DAT,CMNT,BFTAX,AFTAX,SHUM,LMAM)
  S STRING=SPK
  ;
  S NOM=$$NOM
  S COLST=$G(%ARG("COLPM"))
  I COLST<1 S COLST=$$COLPM(NOM)
  ;
  D DIVPYM(COLST)
  ;
  W "<br />"
  W "<table id=""TblPymBt"" dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"">",!
   W "<tr>",!
   W " <td>"
    W $$^%W1DICT("PAIDCASH")_" : "
    I '$$SHOW D
    .W "<input type=""text"" size=""8"" id=""cash"" "
    .W "onClick=""FocSel(this)"" maxlength=""8"" "
    .W "onKeyUp=""ChangeSum('CASH');VisBut()"" onChange=""ChangeValue(this)"" "
    .W "value="""_$$MZ(NOM)_""">"
    ;
    I $$SHOW W $$RKVB($$MZ(NOM))
   W " </td>",!
   ;
  D LINE
  W "<tr>",!
  N PAID
  W " <td style=""font-size:"_$$^W3FSZ(14)_""">"
   W $$^%W1DICT("TOTAL")_" : "
   S PAID=$$TOTPAID(NOM)
   I '$$SHOW,$G(%ARG("COLPM")) D
   .S PAID=$G(SSUM)+$G(%ARG("MZ"))
   W "<span id=""total"">"_$$RKVB(PAID,"N")_"</span>"
  W " </td>",!
  ;
  W " <td style=""font-size:"_$$^W3FSZ(14)_""">"
   W $$^%W1DICT("ITRA2PAY")_" : "
   W "<span id=""iditra"">"
   W $$RKVB($$TOPAY($S($$SHOW:NOM,1:0))-PAID,"N")
   W "</span>",!
  W " </td>"
  ;
  W "</table>",!
  W "<br />",!
  ;
 Q
 ;
 ;
DIVPYM(COLST) ;
 W "<div id=""TblPymDiv"" >",!
  I '$$SHOW D
  .W "<div id=""divchkdet"" dir="""_$$^%W1DIR_""">",!
  . N CHECKED
  . S CHECKED=""
  . I '$G(%ARG("NOCHECKED")) S CHECKED=" checked=""checked"" "
  . W $$^%W1DICT("CHECKFIELDSFILLING")_" <input type=""checkbox"" id=""chkdet"" "_CHECKED_" >"
  .W "</div>",!
 ;
 W "<br>"
 W "<table id=""TblPymBd"" dir="""_$$^%W1DIR_""" width=""70%"" border=""1"" cellspacing=""0"">",!
  ;
  W $$TRTH
  ;
  S NOM=$$NOM
  ;
  I '$$SHOW D
  .S SSUM=0
  .S SNIC=0
  .S SNET=0
  .F I=1:1:COLST D
  ..W "<tr align=""center"" >"_$$STPY(I)_"</tr>",!
  ..S SSUM=SSUM+$$SUM($$NOM,I)
  ..S SNIC=SNIC+$$NICUY($$NOM,I)
  ..S SNET=SNET+$$NETTO($$NOM,I)
  .;---------------------------- TOTALS
  .W "<tr>"
  . W " <td "_$$^%W1ALIGN_" id=""sumch"" >"_$$^%W1DICT("TOTAL")_"&nbsp; "_$$RKVB(SSUM,"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnic"" >"_$$RKVB(SNIC,"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnetto"" >"_$$RKVB(SSUM-SNIC,"N")_"</td>"
  .W "</tr>",!
  ;
  I $$SHOW D
  .S SUMCH=0
  .F I=1:1 Q:'$D(@$$GLPY(NOM)@("C",I))  D
  ..W "<tr>",!
  ..W " <td dir=""LTR"" "_$$^%W1ALIGN_" >"_$$RKV($$SUM(NOM,I),"N")_"&nbsp;&nbsp;&nbsp;</td>",! S SUMCH=SUMCH+$$SUM(NOM,I)
  ..W " <td>"_$$RKV($$NICUY(NOM,I))_"</td>",!
  ..W " <td>"_$$RKV($$NETTO(NOM,I))_"</td>",!
  ..W " <td>"_$$RKV($$CHECK(NOM,I))_"</td>",!
  ..W " <td align=""center"" >"_$$RKV($$DATPR(NOM,I))_"</td>",!
  ..W "</tr>",!
  .
  .N SUMCH S SUMCH=$$SUMTS(NOM) ;
  .W "<tr>"
  . W " <td "_$$^%W1ALIGN_" id=""sumch"" >"_$$^%W1DICT("TOTAL")_"&nbsp; "_$$RKVB(SUMCH,"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnic"" >"_$$RKVB($$NIKMAS(NOM),"N")_"</td>"
  . W " <td "_$$^%W1ALIGN_" id=""sumnetto"" >"_$$RKVB(SUMCH-$$NIKMAS(NOM),"N")_"</td>"
  .W "</tr>",!
  ;
  W "</table>",!
  W "</div>",! ; ----------- END PAYMTBLDIV
  Q
  ;
  ;
TRTH(STAM) ;
  N ST
  S ST="<tr>"
  S ST=ST_"<th>"_$$^%W1DICT("SUM")_"</th>"
  S ST=ST_"<th>"_$$^%W1DICT("NIKMAS")_"</th>"
  S ST=ST_"<th>"_$$^%W1DICT("NETTO")_"</th>"
  S ST=ST_"<th id=""sugt1"">"_$$SUGT1($$SUGT(NOM),1)_"</th>"
  ;
  S ST=ST_"</th>"
  S ST=ST_"<th>"_$$^%W1DICT("TODATE")_"</th>"
  S ST=ST_"</tr>"
 Q ST
 ;
STPY(I) ;
 S ST="<td ><input type=""text"" size=""9"" id=""sum"_I_""" maxlength=""10"" onClick=""FocSel(this)"" onKeyUp=""ChangeSum('"_I_"')"" onChange=""ChangeValue('"_I_"','1')"" value="""_$$SUM($$NOM,I)_"""></td>"
 S ST=ST_"<td ><input type=""text"" size=""8"" id=""nicuy"_I_""" maxlength=""8"" readonly=""readonly"" value="""_$$NICUY($$NOM,I)_"""></td>"
 S ST=ST_"<td ><input type=""text"" size=""9"" id=""netto"_I_""" maxlength=""9"" readonly=""readonly"" value="""_$$NETTO($$NOM,I)_"""></td>"
 N READONLY S READONLY="" I $$SUGT($$NOM)'=1 S READONLY=" readonly=""readonly"" "
 S ST=ST_"<td ><input type=""text"" "_READONLY_" size=""10"" id=""check"_I_""" maxlength=""9"" onChange=""ChangeValue('"_I_"','4')"" onClick=""FocSel(this)"" value="""_$$CHECK($$NOM,I)_"""></td>"
 S %W1DAT("CHANGE")=" ChangeValue('"_I_"','5') "
 S ST=ST_"<td dir=""LTR"">"_$$STDT^%W1DAT("DATPR"_I,"",$$DATPR($$NOM,I))_"</td>"
 Q ST
STPYE Q "<PUSTO>"
 ;
RKVB(VL,PR)
 Q "<span style=""font-weight:bold"">"_$$RKV($G(VL),$G(PR))_"</span>"
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="H" Q $$H2U^%L1FRM(VL)
 I $G(PR)="N" Q $S(VL<0:"<span style=""color:red"">",1:"")_$J(VL,2,2)_$S(VL<0:"</span>",1:"")
 Q VL
 ;
VW(VL) ;
 I 'VL Q VL
 Q "<b>"_VL_"</b>"
 ;
PUTC(PRM) ;
 N (JB,PRM,%ARG,%REM)
 S SH=$P(PRM,";") I 'SH Q 0
 S ST=$P(PRM,";",2)
 S @$$TMPY@("C",SH)=$TR(ST,"~","\")
 Q 1
 ;
PUTTMP(PRM) ;
 N (JB,%ARG,PRM)
 I '$D(@$$TMPY) Q "NOSPKNMB"
 ;
 S COLPM=$P(PRM,";",2)
 S FIRSTDAT=$P(PRM,";",3)
 S FIRSTNUM=$P(PRM,";",4)
 S NH=$P(PRM,";",5) I 'NH Q "NONH;NH"
 S PAYMDAT=$P(PRM,";",6) I PAYMDAT="" Q "NOPAYMDAT;paymdate"
 S SUGT=$P(PRM,";",7)
 S MZ=$P(PRM,";",8)
 S BDIKA=$P(PRM,";",9)
 ;
 S SUMCH=0
 S SUMB=0
 ;
 S ER=""
 S MC="SUM~NIKMAS~NETTO~CHECK~DATPR"
 S ID="sum~nicuy~netto~check~DATPR"
 ;
 K CHK
 F SH=1:1 Q:'$D(@$$TMPY@("C",SH))  D  Q:$L(ER)
 .N ST S ST=$G(^(SH))
 .S ST=$$CNWEB^%L1FRM(ST)
 .F J=1:1:$L(MC,"~") D  Q:$L(ER)
 ..N VL S VL=$P(ST,"\",J),IDJ=$P(ID,"~",J)
 ..S @$P(MC,"~",J)=VL
 ..I BDIKA D
 ...I VL="",J'=2 S ER="NO"_$P(MC,"~",J)_";"_IDJ_SH_$S(IDJ["DAT":"IDdd",1:"") Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,1,2)<1!($E(VL,1,2)>31)!($E(VL,1,2)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDdd" Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,4,5)<1!($E(VL,4,5)>12)!($E(VL,4,5)'?2N) S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDmm" Q
 ...I $P(MC,"~",J)="DATPR",$E(VL,7,8)'?2N S ER="DATERR"_";"_$P(ID,"~",J)_SH_"IDyy" Q
 ...I $P(MC,"~",J)="CHECK",VL,$D(CHK(VL)),SUGT=1 S ER="SAMECHECK;"_$P(ID,"~",J)_SH Q
 ...I $P(MC,"~",J)="CHECK",VL S CHK(VL)=""
 .
 .I 'SUM,CHECK!DATPR S ER="NOSUM;sum"_SH Q
 ;
 I $L(ER) Q ER
 ;
 S COLST=SH-1
 ;
 D PUT^%W3DEB("W4SPPY-PUTTMP","PRM=PRM")
 ;
 I NH D
 .N AC S AC=$G(@$$^W4GL("W4ACNT")@(NH))
 .S BANK=$P(AC,"\",1)
 .S BANK1=$P(AC,"\",2)
 .S SNIF=$P(AC,"\",3)
 .S HESB=$P(PRM,"\",4)
 .S $P(@$$TMPY,"\",21)=BANK
 .S $P(@$$TMPY,"\",22)=BANK1
 .S $P(@$$TMPY,"\",23)=SNIF
 .S $P(@$$TMPY,"\",24)=HESB
 ;
 S $P(@$$TMPY,"\",2)=PAYMDAT
 S $P(@$$TMPY,"\",4)=NH
 S $P(@$$TMPY,"\",9)=MZ
 ;
 S $P(@$$TMPY,"\",8)=$$SUMPAID(0)
 ;
 S SUMTS=$$SUMTS(0)
 I SUGT=1 S $P(@$$TMPY,"\",12)=SUMTS ; - CHECK
 I SUGT=2 S $P(@$$TMPY,"\",13)=SUMTS ; - CA
 I SUGT=3 S $P(@$$TMPY,"\",14)=SUMTS ; - HAAV BANK
 I SUGT=4 S $P(@$$TMPY,"\",15)=SUMTS ; - KEVA
 ;
 S $P(@$$TMPY,"\",16)=$$SUMNIC(0)
 ;
 L  ;
 ;
PUTTMPE ;
 Q 1
 ;
 ;
PUT(NUMBER) ;
 I $G(NUMBER) D CLR(NUMBER)
 I '$G(NUMBER) S NUMBER=$O(@$$GLPY(999999),-1)+1
 K @$$GLPY(NUMBER)
 M @$$GLPY(NUMBER)=@$$TMPY
 D ^%S2GLSV($$GLPY(NUMBER),$$^W4FGIB)
 N SPK S SPK=$$SPK^W4PY(NUMBER)
 N PAID S PAID=$$TOTPAID^W4PY(NUMBER)
 N HBPAY,HBPAID
 N N S N="" F  S N=$O(@$$GLPY(NUMBER)@("H",N))  Q:N=""  D  Q:PAID'>0
 .S HBPAY=+$G(^(N))-$P(^(N),"\",3)
 .S HBPAID=$S(PAID'<HBPAY:HBPAY,1:PAID)
 .S $P(^(N),"\",2)=HBPAID
 .N CODDOC S CODDOC="IHB"
 .N HB S HB=N
 .I N<0 S CODDOC="IHBZ",HB=-N
 .I '$D(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)) Q
 .N A S A=$G(^(HB)) Q:$P(A,"\",1,5)?.P
 .S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",19)=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",19)+HBPAID
 .N NPY S NPY=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",20)
 .S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",20)=$S($L(NPY):NPY_",",1:"")_HBPAID_":"_NUMBER
 .D ^%S2GLSV($$^W4GL("W4INP")_"("""_SPK_""","""_CODDOC_""","""_HB_""")",$$^W4FGIB)
 .S PAID=PAID-HBPAID
 Q NUMBER
 ;
 ;
CLR(NUMBER) ;
 N PAID S PAID=$$TOTPAID^W4PY(NUMBER)
 N SPK S SPK=$$SPK^W4PY(NUMBER)
 N HBPAY,HBPAID
 N N S N="" F  S N=$O(@$$GLPY(NUMBER)@("H",N))  Q:N=""  D
 .N CODDOC S CODDOC="IHB"
 .S HBPAID=$P(^(N),"\",2)
 .N HB S HB=N
 .I N<0 S CODDOC="IHBZ",HB=-N
 .
 .I $D(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)) D
 ..S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",19)=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",19)-HBPAID
 ..N ST,TS S ST=$P($G(@$$^W4GL("W4INP")@(SPK,CODDOC,HB)),"\",20)
 ..N OK S OK=0
 ..N J F J=1:1:$L(ST,",")  S TS=$P(ST,",",J) I $P(TS,":",2)=NUMBER S OK=J
 ..I OK D
 ...N ST1,ST2
 ...S ST1=$P(ST,",",1,OK-1)
 ...S ST2=$P(ST,",",OK+1,255)
 ...S ST=ST1_$S($L(ST1)&$L(ST2):",",1:"")_ST2
 ..S $P(@$$^W4GL("W4INP")@(SPK,CODDOC,HB),"\",20)=ST
 .
 .S $P(@$$GLPY(NUMBER)@("H",N),"\",2)=0
 Q
 ;
 ;
DELETE(NUMBER) ;
 N (JB,%REM,NUMBER)
 I '$G(NUMBER) Q "NONUMBER"
 D CLR(NUMBER)
 M @$$^W4GL("W4TSHLD")@(NUMBER)=@$$GLPY(NUMBER)
 D ^%S2GLSV($$^W4GL("W4TSHLD")_"("""_NUMBER_""")",$$^W4FGIB)
 K @$$GLPY(NUMBER)
 D ^%S2GLSV($$GLPY(NUMBER),$$^W4FGIB,"K")
 Q 1
 ;
 ;
GLHB(NOM) ;
 Q $$^W4GLS_"(SPK,""IHB"",NOM)"
 ;
 ;
 ;
GETKOT(STRING,NOM) ;
 N A S A=$G(@$$GLPY(NOM))
 S ORGTIME=$ZD($P(A,"\",13),"DD.MM.YY  24:60")
 I ORGTIME="" S ORGTIME=$$^%L1DC($P(A,"\",4),1)
 S SPKNAME=$P(A,"\",3)
 I SPKNAME="" S SPKNAME=$$NAME^W4SPK(STRING)
 S SPKKTV=$$KTVM^W4SPK(STRING)
 Q
 ;
NH(NOM) ;
 I $$SHOW Q $$NH^W4PY(NOM)
 I '$G(%ARG("NH")) Q $P($G(@$$TMPY),"\",4)
 Q %ARG("NH")
 ;
SUGT(NOM) ;
 I $$SHOW Q $$SUGT^W4PY(NOM)
 I '$G(%ARG("SUGT")) Q $P($G(@$$TMPY),"\",10)
 Q %ARG("SUGT")
 ;
SUGT1(SUGT,PR) ;
 I SUGT=2 Q $$^%W1DICT("ASH4")
 I SUGT=3 Q $$^%W1DICT("BANKMOVING")
 I '$G(PR) Q $$^%W1DICT("FIRSTCHECKNUMBER")
 I $G(PR) Q $$^%W1DICT("CHECKNUMBER")
 ;
COLPM(NOM) ;
 I $$SHOW Q $$COLPM^W4PY(NOM)
 I $G(%ARG("COLPM")) Q %ARG("COLPM")
 Q $P($G(@$$TMPY),"\",11)
 ;
FIRST(NOM) ;
 I $$SHOW Q $$FIRST^W4PY(NOM)
 I '$G(%ARG("FIRSTNUM")) Q $P($G(@$$TMPY@("C",1)),"\",4)
 Q %ARG("FIRSTNUM")
 ;
FIRSTDAT(NOM) ;
 I $$SHOW Q $$FIRSTDAT^W4PY(NOM)
 I $G(%ARG("FIRSTDAT")) Q %ARG("FIRSTDAT")
 N FDAT S FDAT=$P($G(@$$TMPY@("C",1)),"\",5)
 I FDAT Q FDAT
 S FDAT=$S($$PAYMDAT(NOM):$$PAYMDAT(NOM),1:$ZD($H,"DD.MM.YY"))
 Q $$^%L1DC($$^%L1DC(FDAT,3)+$$SHOTEF^W4SPK(SPK),1)
 ;
 ;
BANK(NOM) ;
 I $$SHOW Q $$BANK^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",21)
 ;
BANK1(NOM) ;
 I $$SHOW Q $$BANK1^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",22)
 ;
SNIF(NOM) ;
 I $$SHOW Q $$SNIF^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",23)
 ;
HSBB(NOM) ;
 I $$SHOW Q $$HSBB^W4PY(NOM)
 Q $P($G(@$$TMPY),"\",24)
 ;
NEWDAT(STAM) ;
 Q $ZD($H,"DD.MM.YY")
 ;
MZ(NOM) ;
 I $$SHOW Q $$MZ^W4PY(NOM)
 I $G(%ARG("MZ"))="" Q $J($P($G(@$$TMPY),"\",9),2,2)
 Q %ARG("MZ")
 ;
SUMCH(NOM) ;
 I $$SHOW Q $$SUMCH^W4PY(NOM)
 I $$SUGT(NOM)=1 Q $$SUMTS(0)
 Q 0
 ;
SUMCA(NOM) ;
 I $$SHOW Q $$SUMCA^W4PY(NOM)
 I $$SUGT(NOM)=2 Q $$SUMTS(0)
 Q 0
 ;
SUMB(NOM) ;
 I $$SHOW Q $$SUMB^W4PY(NOM)
 I $$SUGT(NOM)=3 Q $$SUMTS(0)
 Q 0
 ;
SUMKEVA(NOM) ;
 I $$SHOW Q $$SUMKEVA^W4PY(NOM)
 I $$SUGT(NOM)=4 Q $$SUMTS(0)
 Q 0
 ;
NIKMAS(NOM) ;
 I $$SHOW Q $$NIKMAS^W4PY(NOM)
 Q $$SUMNIC(0)
 ;
PAYMDAT(NOM) ;
 I $$SHOW Q $$PAYMDAT^W4PY(NOM)
 I '$G(%ARG("DATT")) Q $P($G(@$$TMPY),"\",2)
 Q %ARG("DATT")
 ;
 ;
NOM(STAM) ;
 I $G(%ARG("NOM")) Q %ARG("NOM")
 Q 0
 ;
EDIT(STAM) ;
 I $G(%ARG("EDIT")) Q %ARG("EDIT")
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q %ARG("PRINT")
 Q 0
 ;
SHOW(STAM)
 I '$$NOM!$$EDIT Q 0
 Q 1
 ;
TMPY(STAM) ;
 Q $$^W4MAIN("TMPY")
 ;
SPANBLACK(VL) ;
 Q "<span dir=""LTR"" "_$$^%W1ALIGN_" style=""color:"_$S($G(VL)<0:"red",1:"black")_""""
 ;
TOPAY(NOMPY) ;
 I '$G(NOMPY)!$$EDIT Q $P($G(@$$TMPY),"\",7)
 Q $P($G(@$$GLPY(NOMPY)),"\",7)
 ;
 ;
ITRAPY(NOMPY) ;
 Q $$TOPAY(NOMPY)-$$SUMPAID(NOMPY)
 ;
TOTPAID(NOMPY) ;
 I '$G(NOMPY) Q $$SUMPAID(NOMPY)
 Q $P($G(@$$GLPY(NOMPY)),"\",8)
 ;
SUMPAID(NOMPY) ;
 Q $$SUMTS(NOMPY)+$$MZ(NOMPY)
 ;
SUMTS(NOMPY) ;
 N SSUM,I,N S SSUM=0
 D
 .I '$G(NOMPY)!$$EDIT D  Q
 ..F I=1:1 Q:'$D(@$$TMPY@("C",I))  S SSUM=SSUM+$G(^(I))
 .S N="" F  S N=$O(@$$GLPY(NOMPY)@("C",N)) Q:N=""  D
 ..S SSUM=SSUM+$G(^(N))
 Q SSUM
 ;
SUMNIC(NOMPY) ;
 N SSUM,I,N S SSUM=0
 D
 .I '$G(NOMPY)!$$EDIT D  Q
 ..F I=1:1 Q:'$D(@$$TMPY@("C",I))  S SSUM=SSUM+$$NICUY(0,I)
 .S N="" F  S N=$O(@$$GLPY(NOMPY)@("C",N)) Q:N=""  D
 ..S SSUM=SSUM+$$NICUY(NOMPAY,I)
 Q SSUM
 ;
UPDHB(A,NOMPY,NDLM1,NDLM2) ;
 N PYO,SUMO
 S PYO=$P(A,"\",NDLM2)
 S SUMO=$P(A,"\",NDLM1)
 S PYO=","_PYO_","
 S PYO=$P(PYO,","_NOMPY_",")_","_$P(PYO,","_NOMPY_",",2)
 S:$E(PYO)="," PYO=$E(PYO,2,120)
 S:$E(PYO,$L(PYO))="," PYO=$E(PYO,1,$L(PYO)-1)
 S $P(A,"\",NDLM1)=$J(SUMO-SUM,2,2)
 S $P(A,"\",NDLM2)=PYO
 Q A
 ;
CODDOC(STAM) ;
 Q "IPY"
 ;
SUM(NOM,I) ;
 N COLPM,SUM,SUMCH S COLPM=$G(%ARG("COLPM"))
 S SUM=$P($G(@$$GLPY(NOM)@("C",I)),"\",1)
 I $$SHOW Q $J(SUM,2,2)
 I $G(NOM),SUM Q SUM
 I $G(NOM) D  Q SUM
 .S SUM=$J($$TOPAY(0)-$$MZ(0)-$$SUMCH^W4PY(NOM)/(COLPM-$$COLPM^W4PY(NOM)),2,2)
 .I SUM<0 S SUM=""
 .S $P(@$$TMPY@("C",I),"\",1)=SUM
 ;
 I 'COLPM Q $P($G(@$$TMPY@("C",I)),"\",1)
 ;
 S SUMCH=$$TOPAY(0)-$$MZ(0)
 S SUM=$J(SUMCH/COLPM,2,2)
 N SUMP S SUMP=$J(SUMCH/COLPM,2,2)*(COLPM-1)
 I I=COLPM S SUM=$J(SUMCH-SUMP,2,2)
 S $P(@$$TMPY@("C",I),"\",1)=SUM
 Q SUM
 ;
NICUY(NOM,I) ;
 N NIC S NIC=$P($G(@$$GLPY(NOM)@("C",I)),"\",2)
 I $$SHOW Q NIC
 I $G(NOM),NIC Q NIC
 N AHNIK S AHNIK=$G(%ARG("AHNIK"))
 I AHNIK="" Q NIC
 S NIC=$J($$SUM(NOM,I)*AHNIK/(100+AHNIK),2,2)
 S $P(@$$TMPY@("C",I),"\",2)=NIC
 Q NIC
 ;
NETTO(NOM,I) ;
 N NETTO S NETTO=$P($G(@$$GLPY(NOM)@("C",I)),"\",3)
 I $$SHOW Q NETTO
 I $G(NOM),NETTO Q NETTO
 S NETTO=$$SUM(NOM,I)-$$NICUY(NOM,I)
 S $P(@$$TMPY@("C",I),"\",3)=NETTO
 Q NETTO
 ;
CHECK(NOM,I) ;
 N NUM S NUM=$P($G(@$$GLPY(NOM)@("C",I)),"\",4)
 I $$SHOW Q NUM
 I $G(NOM),NUM Q NUM
 I $G(%ARG("SUGT"))=3 S NUM="BANK" G CHECKE
 I $G(%ARG("FIRSTNUM"))="" S NUM=$P($G(@$$TMPY@("C",I)),"\",4) G CHECKE
 I $G(%ARG("SUGT"))=1 S NUM=%ARG("FIRSTNUM")+I-1 G CHECKE
 I $G(%ARG("SUGT"))=2 S NUM=%ARG("FIRSTNUM") G CHECKE
 Q ""
CHECKE S $P(@$$TMPY@("C",I),"\",4)=NUM Q NUM
 ;
DATPR(NOM,I) ;
 N DAT,DD,MM,YY,DD1,MM1,YY1,DTPR
 S DTPR=$P($G(@$$GLPY(NOM)@("C",I)),"\",5)
 I $$SHOW Q DTPR
 I $G(NUM),DTPR Q DTPR
 ;
 I '$G(%ARG("FIRSTDAT")) Q DTPR
 S DAT=%ARG("FIRSTDAT")
 S DD=$E(DAT,1,2)
 S MM=$E(DAT,4,5)
 S YY=$E(DAT,7,8)
 S MM1=$S(MM+I-1<13:$TR($J(MM+I-1,2)," ",0),1:$TR($J(MM+I-1.1#12+.1,2)," ",0))
 S YY1=$S(MM+I-1<13:YY,1:YY+((MM+I-1.1)\12))
 S DD1=DD
 I DD=29,+MM1=2 S DD1=28
 N DTPR S DTPR=DD1_"."_MM1_"."_YY1
 S $P(@$$TMPY@("C",I),"\",5)=DTPR
 Q DTPR
 ;
GLPY(NUMBER) ;
 Q $$^W4GL("W4TSHL")_"("""_NUMBER_""")"
 ;
PAYMADV ; 
 W "<br><br><br>",!
 W "<div dir="""_$$^%W1DIR_""">",!
 W " <span style=""font-size:"_$$^W3FSZ_""">"
  W $$^%W1DICT("TOPAY")
 W " </span>",!
 W " &nbsp;&nbsp;"
 W "<input type=""text"" id=""topay"" size=""8"" style=""font-size:"_$$^W3FSZ_""" onFocus=""this.select()"" >",!
 W " &nbsp;&nbsp;"
 D ^W4BUTTON("sbm","SUBMIT","SubmSum()","color:green")
 W $$NBSP^%L1FRM(4)
 D ^W4BUTTON("back","BACK","Back()","color:red")
 W "</div>",!
 Q 
 ;
SUMADV(SUM) ;
 N TMPY S TMPY=$$TMPY
 S $P(@TMPY,"\")=$G(%ARG("SPK"))
 N NAME S NAME=$$NAME^W4SPK(SPK)
 S $P(@TMPY,"\",3)=NAME
 S $P(@TMPY,"\",7)=SUM
 N AHNIK S AHNIK=$$AHNIKMAS^W4SPK(SPK)
 S $P(@TMPY,"\",17)=AHNIK
 N TOKNIK S TOKNIK=$$NIKMASAD^W4SPK(SPK)
 S $P(@TMPY,"\",18)=TOKNIK
 N YA S YA=$$SHOTEF^W4SPK(SPK)
 S $P(@TMPY,"\",19)=YA
 Q
 ;
TIKPY ; 
 N N S N="" F  S N=$O(@$$GLPY(N)) Q:N=""  D TIKPY1(N) ;
 Q
 ;
 ;
TIKPY1(N) ;
 N W4INP S W4INP=$$^W4GL("W4INP")
 N GLPY S GLPY=$$GLPY(N)
 N A,SPK,HB,HDHB
 S SPK=$P($G(@GLPY),"\") Q:'SPK
 ;
 S HB="" F  S HB=$O(@GLPY@("H",HB)) Q:HB=""  D 
 .S A=$G(^(HB)) Q:'A
 .S IND="IHB"
 .S HB1=HB I HB<0 S IND="IHBZ",HB1=-HB
 .S HDHB=$G(@W4INP@(SPK,IND,HB1)) Q:HDHB=""
 .I '$P(HDHB,"\",19),'$P(HDHB,"\",20) D
 ..S $P(@W4INP@(SPK,IND,HB1),"\",19)=$P(@W4INP@(SPK,IND,HB1),"\",19)+A
 ..S $P(@W4INP@(SPK,IND,HB1),"\",20)=+A_":"_N
 Q 
 ;
PRINTCHK(NOM) ; 
 N (JB,%ARG,%REM,NOM)
 I '$$PRINTCHK^W4PRM Q ""
 S GL=$$^W4GL("W4TSHL")
 S OU="",A=""
 S TS=$G(@GL@(NOM))
 S SPK=$P(TS,"\",1)
 S AHN=$P(TS,"\",17)
 S N="" F  S N=$O(@GL@(NOM,"C",N)) Q:N=""  D  I A'="" S OU=NOM_"\"_N_"\"_A Q
 .S A=$G(^(N))
 .I $D(^(N,"PC")) S A="" Q
 .I $P(TS,"\",10)'=1 S A="" Q  ; SUGT
 .S $P(A,"\",6)=AHN
 .S $P(A,"\",7)=SPK
 I $E(OU,$L(OU))=";" S OU=$E(OU,1,$L(OU)-1)
 Q $TR(OU,"\","^")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPSLR
W4SPSLR ; [ 26.10.16 13:24 ] [ 27.04.10 12:06 ] [ 16.04.10 11:06 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width=""100%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3PRM)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3PRM)_""""
 W " >"
 W "<th width=""10%"">&nbsp;</th>"
 W "<th width=""10%"">"_$$H2U^%L1FRM($$KEYNAME)_"</th>"
 W "<th width=""20%"">"_$$H2U^%L1FRM($$NAME(0))_"</th>"
 F J=1:1:$$COLDOP D
 .W "<th>"_$$H2U^%L1FRM($$NAME(J))_"</th>"
 ;
 W "<th>"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 N N,I
 D GLOB
 D GET
 S N="",I=0 F  S N=$O(@GLOB@(N)) Q:N=""  D
 .W "<tr>" S I=I+1
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;<input id=""name"_N_""" type=""text"" size="""_$$LEN(0)_""" maxlength="""_$$LEN(0)_""" value="""_$$H2U^%L1FRM($$VAL(N,0))_""" "_$S($$READONLY(N,0):" readonly=""readonly""",1:"")_" onChange=""OnChange('"_N_"')"" />&nbsp;</td>"
 .S CHN=0
 .F J=1:1:$$COLDOP D
 ..W "<td align=""center"" "_$S($$TYP(J)="H":" dir=""RTL""",1:" dir=""LTR""")_" >&nbsp;"
 ..S SEL=0
 ..W $$INPUT(N_";"_J) I 'SEL S CHN=1
 ..W "</td>"
CHN .W "<td align=""center""><input name=""chn"" id=""chn"_N_""" type=""checkbox"" "_$S(CHN:"checked=""checked""",1:"")_" disabled=""disabled"" /></td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("W4SPSLR-SAVE","PRM=PRM")
 ;
 N CD,NM,NM1,MH,DESC,GR,SHOW,SCR,LSCR
 S CD=$P(PRM,";")
 ;
 N GLOB D GLOB
 ;
 S NM=$$CNWEB^%L1FRM($P(PRM,";",2))
 S NM1=$S($$^%W1DIR="RTL":$$INVH^%L1FRM(NM),1:NM)
 ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 I LSCR,$D(@W4SP@(SCR,"PUT",0))#2 X @W4SP@(SCR,"PUT",0)
 I LSCR,'$D(@W4SP@(SCR,"PUT",0))#2 D
 .S @GLOB@(CD)=NM1
 I 'LSCR D
 .S @GLOB@(CD)=NM1
 ;
 N J F J=3:1:$L(PRM,";") D
 .S NM=$$CNWEB^%L1FRM($P(PRM,";",J))
 .I $$TYP(J-2)="H",$$^%W1DIR="RTL" S NM=$$INVH^%L1FRM(NM)
 .
 .I LSCR,$D(@W4SP@(SCR,"PUT",J))#2 X @W4SP@(SCR,"PUT",J) Q
 .
 .S $P(@GLOB@(CD,1),"\",J-2)=NM
 Q 1
 ;
SAVEND ;
 N SCR,LSCR
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 I LSCR,$D(@W4SP@(SCR,"PUT"))#2 X @W4SP@(SCR,"PUT")
 ;
 K @$$^W4MAIN("TMPDEL")
 K @$$^W4MAIN("TMPLAST")
 Q
 ;
GLOB ;
 I $L($G(%ARG("GLOB"))) S GLOB=%ARG("GLOB") G GLOBM
 S GLOB=$G(@$$^W4MAIN("TMPARG")@("GLOB"))
GLOBM S GLOB0=GLOB S:$E(GLOB)="^" GLOB0=$E(GLOB,2,20)
 S @$$^W4MAIN("TMPARG")@("GLOB")=GLOB0
 S GLOB=$$^W4GL(GLOB0)
 Q
 ;
GLOBPRM ;
 N GLOB,GLOB0 D GLOB
 Q:$G(GLOB0)=""
 I '$D(@$$^W4TABL@(GLOB0)) Q
 S @$$^W4MAIN("TMPARG")@("TBLNAME")=$$^%W1DICT("SLRTBLHR")
 S @$$^W4MAIN("TMPARG")@("KEYSIZE")=5
 S @$$^W4MAIN("TMPARG")@("KEYNAME")=$$^%W1DICT("EMPLID")
 S @$$^W4MAIN("TMPARG")@("NAME")=$$^%W1DICT("EMPLNAME")
 S @$$^W4MAIN("TMPARG")@("LEN")=16
 ;
 Q
 ;
D(PRM)
 N GLOB D GLOB
 I $G(PRM)="" Q $D(@GLOB)
 Q $D(@GLOB@(PRM))
 ;
COLDOP(STAM) ;
 N J F J=1:1 Q:'$D(@$$^W4MAIN("TMPARG")@("NAME"_J))
 Q (J-1)
 ;
VL(RKV)
 Q $G(@$$^W4MAIN("TMPARG")@(RKV))
 ;
NAME(J) ;
 I +$G(J)=0 S J=""
 Q $$VL("NAME"_J)
 ;
LEN(J) ;
 I +$G(J)=0 S J=""
 N LEN S LEN=$$VL("LEN"_J)
 I 'LEN S LEN=12
 Q LEN
 ;
TYP(J) ;
 I +$G(J)=0 S J=""
 N TYP S TYP=$$VL("TYP"_J)
 I TYP="" S TYP="E"
 Q TYP
 ;
BOOL(J) I $$TYP(J)="B" Q 1
 Q 0
 ;
TIME(J) I $$TYP(J)="T" Q 1
 Q 0
 ;
DATE(J) I $$TYP(J)="D" Q 1
 Q 0
 ;
GL(J) ;
 I +$G(J)=0 S J=""
 N GL S GL=$$VL("GL"_J)
 Q GL
 ;
VAL(N,J) ;
 N GLOB,VAL D GLOB
 D W4SP
 I $L($$SCR),$D(@W4SP@($$SCR,"GET",J)) Q @(@W4SP@($$SCR,"GET",J))
 ;
 I +$G(J)=0 Q $G(@GLOB@(N))
 Q $P($G(@GLOB@(N,1)),"\",J)
 ;
VALYES(N,J)
 I $$VAL(N,J) S SEL=1 Q 1
 I $$VAL(N,J)="k" S SEL=1 Q 1
 I $$VAL(N,J)=0 S SEL=1 Q 0
 I $$VAL(N,J)="l" S SEL=1 Q 0
 Q 0
 ;
VALDD(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,1,2)
 ;
VALMM(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,3,4)
 ;
VALYY(N,J)
 N VL S VL=$TR($$VAL(N,J),"./","")
 I VL'?6N Q ""
 Q $E(VL,5,6)
 ;
VALHR(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,1,2)
 ;
VALMN(N,J)
 N VL S VL=$TR($$VAL(N,J),":","")
 Q $E(VL,3,4)
 ;
READONLY(N,J) ;
 I '$L($$SCR) Q 0
 N GLOB,VAL D GLOB
 D W4SP
 I $D(@W4SP@($$SCR,"GET",J,"OU")) Q 1
 Q 0
 ;
KEYSIZE(STAM) ;
 Q $$VL("KEYSIZE")
 ;
KEYNAME(STAM) ;
 I $L($G(MRKVZ(1,1))) Q MRKVZ(1,1)
 Q $$VL("KEYNAME")
 ;
TBLNAME(STAM)
 I $L($G(MRKVZ("KOT"))) Q MRKVZ("KOT")
 Q $$VL("TBLNAME")
 ;
INPUT(PRM) ;
 N CD,J,INP
 S CD=$P(PRM,";")
 S J=$P(PRM,";",2)
 ;
 S INP="&nbsp;"
 ;
 I $$BOOL(J) D  G EINP
 .S INP="<input id=""name"_CD_"dop"_J_""" type=""checkbox"""_$S($$VALYES(CD,J):" checked=""checked""",1:"")_" onChange=""OnChange('"_CD_"')"" />"
 ;
 I $$TIME(J) D  G EINP
 .S INP="<select id=""name"_CD_"dop"_J_"hr"" onChange=""OnChange('"_CD_"')"" >"
 .F I=0:1:23 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALHR(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALHR(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 .S INP=INP_"<select id=""name"_CD_"dop"_J_"mn"" onChange=""OnChange('"_CD_"')"" >"
 .F I=0:5:55 D
 ..N NN S NN=$TR($J(I,2)," ",0)
 ..I NN=$$VALMN(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(+NN=+$$VALMN(CD,J):" selected=""selected""",1:"")_" >"_NN_"</option>"
 .S INP=INP_"</select>"
 ;
 I $$DATE(J) D  G EINP
 .S SEL=1
 .N %W1DAT S %W1DAT("CHANGE")="OnChange('"_CD_"')"
 .S INP=$$STDT^%W1DAT("name"_CD_"dop"_J,"",$$VALDD(CD,J),$$VALMM(CD,J),$$VALYY(CD,J))
 ;
 I $$GL(J)="",'$$BOOL(J) D  G EINP
 .S SEL=1
 .S INP="<input id=""name"_CD_"dop"_J_""" type=""text"" size="""_$$LEN(J)_""" maxlength="""_$$LEN(J)_""" value="""_$$H2U^%L1FRM($$VAL(CD,J))_""" "_$S($$READONLY(CD,J):" readonly=""readonly""",1:"")_" onChange=""OnChange('"_CD_"')"" />&nbsp;"
 ;
 I $$GL(J)'="" D  G EINP
 .N GL S GL=$$GL(J) S:$E(GL)="^" GL=$E(GL,2,25)
 .S INP="<select dir="""_$S(GL["dev":"LTR",1:$$^%W1DIR)_""" id=""name"_CD_"dop"_J_""" onChange=""OnChange('"_CD_"')"" >"
 .N NN S NN="" F  S NN=$O(@$$^W4GL(GL)@(NN)) Q:NN=""  D
 ..N A S A=$G(^(NN))
 ..I NN=$$VAL(CD,J) S SEL=1
 ..S INP=INP_"<option value="""_NN_""""_$S(NN=$$VAL(CD,J):" selected=""selected""",1:"")_" >"_NN_" "_$S(GL["dev":" : "_A,1:$$H2U^%L1FRM(A))_"</option>"
 .S INP=INP_"</select>"
EINP ;
 Q INP
 ;
SCR(STAM)
 Q $$SCR^W4SPVIDK
 ;
SAVETABLES(STAM)
 Q 1
 ;
W4SP ;
 S W4SP="^[$$^W3MAIN]W4SP"
 Q
 ;
GET ;
 D W4SP
 S SCR=$$SCR,LSCR=$L(SCR)
 ;
 I LSCR,$D(@W4SP@(SCR,"GET"))#2 X @W4SP@(SCR,"GET")
 Q
 ;
SHULHAN3(CD,NM) ;
 S $P(@$$^W4GL("LKH")@(CD,2),"*",5)=NM D
 .I @$$^W4GL("SUGS")@(NM)="xa"!(@$$^W4GL("SUGS")@(NM)="BAR") D
 ..S @$$^W4GL("BAR")@(CD)=""
 Q
SHULHAN4(CD,NM) ;
 S $P(@$$^W4GL("LKH")@(CD,2),"*",7)=NM
 Q
 ;
LEVTB3(CD,NM) ;
 S $P(@$$^W4GL("NAME")@(CD),"\",1)=NM
 Q
LEVTB4(CD,NM) ;
 S $P(@$$^W4GL("NAME")@(CD),"\",2)=NM
 Q
LEVTB5(CD,NM) ;
 S @$$^W4GL("NAME")@(CD,11)=NM
 Q
GETMDP ;
 N GLOB D GLOB K @GLOB
 N N S N="" F  S N=$O(@$$^W4PRM@("MDP",N)) Q:N=""  D
 .S @GLOB@(N)=$P($G(@$$^W4PRM@("MDP",N)),"\",4)
 .S $P(@GLOB@(N,1),"\")=$P($G(@$$^W4PRM@("MDP",N)),"\",3)
 .S $P(@GLOB@(N,1),"\",2)=$P($G(@$$^W4PRM@("MDP",N)),"\",5)
 .S $P(@GLOB@(N,1),"\",3)=$P($G(@$$^W4PRM@("MDP",N)),"\",6)
 Q
 ;
MDP ;
 N GLOB D GLOB
 N PORTLP
 N N S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S PORTLP=$P($G(@GLOB@(N,1)),"\") Q:PORTLP=""
 .S $P(@$$^W4PRM@("MDP",N),"\",1)=$$MDPS^W4MDP(PORTLP)
 .S $P(@$$^W4PRM@("MDP",N),"\",2)=$$MDPS1^W4MDP(PORTLP)
 .S $P(@$$^W4PRM@("MDP",N),"\",4)=$G(@GLOB@(N))
 .S $P(@$$^W4PRM@("MDP",N),"\",3)=PORTLP
 .S $P(@$$^W4PRM@("MDP",N),"\",5)=$P($G(@GLOB@(N,1)),"\",2)
 .S $P(@$$^W4PRM@("MDP",N),"\",6)=$P($G(@GLOB@(N,1)),"\",3)
 K @GLOB
 Q
 ;
GETMDPH ;
 N GLOB D GLOB K @GLOB
 N N,I S N="",I=0
 F  S N=$O(@$$^W4GL("PLUK")@(N)) Q:N=""  D
 .S I=I+1,@GLOB@(I)=$G(@$$^W4GL("PLUK")@(N))
 .S $P(@GLOB@(I,1),"\")=N
 .S $P(@GLOB@(I,1),"\",2)=$G(@$$^W4GL("PLUK")@(N,"LP"))
 .S $P(@GLOB@(I,1),"\",3)=$G(@$$^W4GL("PLUK")@(N,"HSB"))
 .S $P(@GLOB@(I,1),"\",4)=$G(@$$^W4GL("PLUK")@(N,"BIT"))
 .S $P(@GLOB@(I,1),"\",5)=$G(@$$^W4GL("PLUK")@(N,"HNH"))
 .S $P(@GLOB@(I,1),"\",6)=$G(@$$^W4GL("PLUK")@(N,"MZM"))
 Q
 ;
MDPH ;
 N GLOB D GLOB
 N N,A,KUP,PORT,PORTLP
 N P S P=$G(@$$^W4GL("PLUK"))
 M @$$^W4GL("PLUK0")=@$$^W4GL("PLUK")
 K @$$^W4GL("PLUK")
 S N="" F  S N=$O(@GLOB@(N)) Q:N=""  D
 .S KUP=$G(^(N))
 .S A=$G(^(N,1))
 .S PORT=$P(A,"\",1) Q:'PORT
 .S @$$^W4GL("PLUK")@(PORT)=KUP
 .S PORTLP=$P(A,"\",2)
 .S @$$^W4GL("PLUK")@(PORT,"LP")=PORTLP
 .S @$$^W4GL("PLUK")@(PORT,"LP","SUG")=$$MDPS^W4P(PORTLP)
 .S @$$^W4GL("PLUK")@(PORT,"HSB")=$P(A,"\",3)
 .S @$$^W4GL("PLUK")@(PORT,"BIT")=$P(A,"\",4)
 .S @$$^W4GL("PLUK")@(PORT,"HNH")=$P(A,"\",5)
 .S @$$^W4GL("PLUK")@(PORT,"MZM")=$P(A,"\",6)
 ;
 S @$$^W4GL("PLUK")=P
 K @GLOB
 Q
 

W4SPVID0
W4SPVIDK ; [ 04.06.14 10:40 ] [ 16.09.13 05:30 ] [ 18.01.12 14:02 ]
 N (JB,%ARG,%REM)
 I $G(%ARG("FIRST")) D
 .K @$$^W4MAIN("TMPARG") M @$$^W4MAIN("TMPARG")=%ARG
 ;
 D GLOB^W4SPIDK
 ;
 I $$SCR'="",$D(@$$^W4SCR@($$SCR)) D  G P
 .D GETSCR
 .D FRMRKV^%W1FREPA(SCR)
 .N KEY S KEY=$$KEY
 .S MRKVZ(1,"VL")=KEY
 .D PUT^%W1PRM("W4SPVKEY",KEY)
 ;
 D GETRKVZ
 ;
P ;
 D PC
 K @$$^W4MAIN("TMPARG")@("VL")
 Q
 ;
GETRKVZ ;
 D GLOBPRM^W4SPIDK
 D GLOB^W4SPIDK
 S MRKVZ("KOT")=$$TBLNAME^W4SPIDK
 S MRKVZ(1,1)=$$KEYNAME^W4SPIDK
 S MRKVZ(1,"TYP")="E"
 S MRKVZ(1,"ID")="KEY"
 S MRKVZ(1,"LEN")=$$KEYSIZE^W4SPIDK
 S MRKVZ(1,"VL")=$$KEY
 ;
 S MRKVZ(2,1)=$$NAME^W4SPIDK(0)
 S MRKVZ(2,"TYP")=$S($$^%W1DIR="RTL":"H",1:"E")
 S MRKVZ(2,"LEN")=$$LEN^W4SPIDK(0)
 S MRKVZ(2,"ID")="NAME"
 ;
 S J1=2
 F J=1:1:$$COLDOP^W4SPIDK D
 .S J1=J1+1
 .S MRKVZ(J1,1)=$$NAME^W4SPIDK(J)
 .S MRKVZ(J1,"TYP")=$$TYP^W4SPIDK(J)
 .S MRKVZ(J1,"LEN")=$$LEN^W4SPIDK(J)
 .S MRKVZ(J1,"ID")=GLOB0_J
 .S MRKVZ(J1,"GL")=$$GL^W4SPIDK(J)
 ;
 Q
 ;
PC W "<div align=""center"">",!
 I '$$PRINT W "<span style=""font-size:"_$$^W3FSZ(20)_";color:"_$$BGHD^W3CSS($$COLOR^W3CSS)_""">"_$$H2U^%L1FRM($G(MRKVZ("KOT")))_"</span>",!
 W "<br /><br />"
 W "<table id=""TblMain"" onMouseDown=""ifrHide('TblMain')"" dir="""_$$^%W1DIR_""" border=""0"" width="""_$S($$PRINT:"80",1:"70")_"%"" style="""_$$FONTFM^W3CSS_""" >",!
  W "<tr>"
   W "<td width=""40%"" style=""font-weight:bold"">"_$$H2U^%L1FRM(MRKVZ(1,1))_"&nbsp;&nbsp;"
   W $$VV(1)_"</td>",!
   W "<td width=""60%"" style=""font-weight:bold"">"_$$H2U^%L1FRM(MRKVZ(2,1))_"&nbsp;&nbsp;"
   W $$VV(2)_"&nbsp;"
   I '$$PRINT D
   .W "<img src=""w3filter.jpg"" onClick=""Find('"_$$ID(2)_"','"_$$ID(1)_"','"_GLOB0_"','2')"" >",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "<br /><br />",!
 ;
 S SH=5
 ;
 W "<table id=""TblPrm"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_$S($$PRINT:"80",1:"60")_"%"" style="""_$$FONTFM^W3CSS_";background-color:white;color:black"" >",!
 ;
 F K=3:1 Q:'$D(MRKVZ(K))  D
 .W "<tr>" S SH=SH+2
 .W "<td width=""50%"" style=""font-weight:bold"">"
 . W $$H2U^%L1FRM(MRKVZ(K,1))
 . I $$SCR["W3COLOR",$E($$ID(K),1,2)="BG" D
 .. W "<input type=""button"" value=""Upl"" "
 .. W " onClick=""Upload('"_$$VL(K)_"',event)"" "
 .. W " />"
 .W "</td>"
 .W "<td align=""center"" "_$S($$TYP(K)="D"!($$TYP(K)="T"):" dir=""LTR""",1:"")_" >"_$$VV(K)_"</td></tr>",!
 ;
 W "</table></div>",!
 Q:$$PRINT
 W "<br/><br />",!
 W "<div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" >"
 W "<tr><td>"
 D ROUNDBUT^%W1JS("save",$$^%W1DICT("SUBMIT"),"Save()","color:green","wh,22")
 W "</td><td>"
 D ROUNDBUT^%W1JS("cancel",$$^%W1DICT("CANCELACTION"),"Cancel()","color:red","wh,22")
 W "</td><td>"
 I '$$NODEL D
 .D ROUNDBUT^%W1JS("delete",$$^%W1DICT("DELETE"),"Delete()","color:red","wh,22")
 ;
 D ROUNDBUT^%W1JS("change",$$^%W1DICT("CHANGENUMBER"),"ChangeNumber()","color:brown","wh,22")
 ;
 W "</td><td>"
 D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINTSHOWTABLE"),"Print('0')","color:blue","wh,22")
 W "</td><td>"
 D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINTSHORT"),"Print('1')","color:darkblue","wh,22")
 W "</td><td>"
 D ROUNDBUT^%W1JS("exit",$$^%W1DICT("EXIT"),"Exit()","color:red","wh,22")
 W "</td></tr></table>",!
 W "</div>",!
 Q
 ;
VV(K) ;
 N TYP,LEN,GLB,GLB1,ID,VL
 S TYP=$$TYP(K) Q:TYP="" ""
 S LEN=$$LEN(K) Q:LEN="" ""
 S GLB=$$GLB(K) S:$E(GLB)="^" GLB=$E(GLB,2,20)
 S GLB1=$$^W4GL(GLB)
 S ID=$$ID(K)
 S VL=$$VL(K)
 I $$MUMPS1(K)'="" X $$MUMPS1(K) ; *** NEW
 ;;W ID_" = "_VL,!
 N VV S VV=""
 ;
 I $$PRINT Q $$VVPRINT(K)
 ;
 I TYP="N"!(TYP="E")!(TYP="H"),GLB=""!'$$SMALLG(GLB)!(K=1) D
 .I $D(MRKVZ(K,"SEL")),GLB="" S VV=$$SELRKV^%W1FREPA(ID,VL) Q
 .D BEGVV^%W1FREPA
 .S VV=VV_" value="""_$S(TYP="H":$$H2U^%L1FRM(VL),1:VL)_""" "
 .I K=1 S VV=VV_" onChange=""OnChangedKey(this)"" "
 .S VV=VV_" >"
 .I GLB'="",K>1 D
 ..S VV=VV_" &nbsp;&nbsp;"
 ..S VV=VV_"<input type=""text"" style=""text-align:right"" dir="""_$S(TYP="H":"RTL",1:"LTR")_""" size=""20"" maxlength=""20"" name="""_ID_"1"" id="""_ID_"1"" value="""_$S(VL="":"",1:$$H2U^%L1FRM($G(@GLB1@(VL))))_""" >"
 ..S VV=VV_" <img src=""w3filter.jpg""  onClick=""Find('"_ID_"1','"_ID_"','"_GLB_"','"_K_"')"" />"
 ;
 I TYP="N"!(TYP="E")!(TYP="H"),GLB'="",$$SMALLG(GLB),K>1 D
 .S VV="<select name="""_ID_""" id="""_ID_""">"
 .N N S N=$$FIRST^%W1FREPA(GLB)
 .F  S N=$O(@GLB1@(N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..S VV=VV_"<option value="""_N_""" "_$S(N=VL:" selected=""selected""",1:"")_" >"
 ..S VV=VV_N_"&nbsp;&nbsp;"_$$H2U^%L1FRM($P(A,"**"))_"</option>"
 .S VV=VV_"</select>"
 ;
 I TYP="B" S VV="<input type=""checkbox"" name="""_ID_""" id="""_ID_""" "_$S($$VL(K)!($$VL(K)="k"):" checked=""checked"" ",1:"")_" >"
 I TYP="D" D  ;; ^%W1DAT(ID,"")
 .S VV=$$STDT^%W1DAT(ID,"",$$VLDAT(K,"DD"),$$VLDAT(K,"MM"),$$VLDAT(K,"YY"))
 I TYP="T" D TIMENEW^%W1DAT(ID,$$VL(K),"",1)
 Q VV
 ;
VVPRINT(K)
 S VV=""
 I TYP="N"!(TYP="E")!(TYP="H") D
 .S VV="&nbsp;"_$$H2U^%L1FRM(VL)_"&nbsp;"
 .I GLB'="",K>1 D
 ..S VV=VV_"&nbsp;"_$S(VL="":"",1:$$H2U^%L1FRM($G(@GLB1@(VL))))_"&nbsp;"
 I TYP="B" S VV=$S($$VL(K)!($$VL(K)="k"):" + ",1:" - ")
 I TYP="D" S VV=$$VLDAT(K,"DD")_"."_$$VLDAT(K,"MM")_"."_$$VLDAT(K,"YY")
 I TYP="T" S VV=$$VL(K)
 S VV="<span style=""color:brown"">"_VV_"</span>"
 Q VV
 ;
TYP(K) Q $G(MRKVZ(K,"TYP"))
LEN(K) Q $G(MRKVZ(K,"LEN"))
ID(K) Q $G(MRKVZ(K,"ID"))
IDW(K) N ID,TYP
 S ID=$$ID(K)
 S TYP=$$TYP(K)
 I TYP="T" Q ID_"hr"
 I TYP="D" Q ID_"IDdd"
 Q ID
 ;
GLB(K) Q $G(MRKVZ(K,"GL"))
MUMPS1(K) Q $G(MRKVZ(K,"MUMPS1"))
MUMPS2(K) Q $G(MRKVZ(K,"MUMPS2"))
 ;
VL(K) ;
 I $D(@$$^W4MAIN("TMPARG")@("VL",K)) Q $G(^(K))
 N KEY S KEY=$G(MRKVZ(1,"VL")) I KEY="" Q ""
 I K=1 Q KEY
 ;
 N VL
 I $L($$SCR) S VL=$$GET^W4SPVL($$SCR,KEY,$$ID(K)) I VL'="<NOGET>" Q VL
 ;
 I K=2,$G(GLOB0)'="NAME" Q $P($P($G(@GLOB@(KEY)),"**"),"\")
 I K=2,$G(GLOB0)="NAME" Q $P($P($G(@GLOB@(KEY,1)),"**"),"\")
 ;
 I $$SCR="" Q $P($G(@GLOB@(KEY,1)),"\",K-2)
 ;
 D GA^W4SCREF($$SCR,GLOB_"("""_KEY_""")")
 Q $G(@$$ID(K))
 ;
VLDAT(K,PR) ;
 N DAT S DAT=$$VL(K)
 I $P(DAT,",")?5N S DAT=$$^%L1DC(DAT,1)
 S DAT=$TR(DAT,"/.","")
 I DAT'?6N Q ""
 I PR="DD" Q $E(DAT,1,2)
 I PR="MM" Q $E(DAT,3,4)
 I PR="YY" Q $E(DAT,5,6)
 Q ""
 ;
SMALLG(GLB) Q $$SMALLG^%W1FREPA(GLB)
GLOB(STAM) N GLOB D GLOB^W4SPIDK
 Q GLOB
TBLNAME(STAM) ;
 Q $$TBLNAME^W4SPIDK
 ;
GETSCR ;
 S SCR=$$SCR
 Q
 ;
SAVE(PRM) ;
 N (JB,PRM)
 S KEY=$P(PRM,";") I KEY="" Q -1
 D GLOB^W4SPIDK
 ;
 D GETSCR
 ;
 I $$SCR="" D  Q 1
 .D GETRKVZ
 .S @GLOB@(KEY)=$$CLEAR(PRM,2)
 .N K F K=3:1 Q:'$D(MRKVZ(K))  D
 ..S $P(@GLOB@(KEY,1),"\",K-2)=$$CLEAR(PRM,K)
 ;
 ;----------------- SCR ---------------------
 N MRKVZ,K,ID
 D FRMRKV^%W1FREPA(SCR)
 ;
 S ER=0
 F K=1:1 Q:'$D(MRKVZ(K))  D  I ER'=0 S ER=$$IDW(K)_";"_ER_"::"_$G(MRKVZ(K,1)) Q
 .S ID=$G(MRKVZ(K,"ID")) Q:ID=""
 .S @ID=$$CLEAR(PRM,K)
 .N %FNAME S %FNAME=ID
 .I $G(MRKVZ(K,"MUMPS2"))'="" D
 ..X MRKVZ(K,"MUMPS2")
 ..I $G(%SC("ER")) S ER="ERRKV" Q
 ..I $G(%SC("ST")) S ER="ERRKV" Q
 ;
 I ER'=0 D  Q ER
 .N I F I=1:1 Q:'$D(MRKVZ(I))  D
 ..S @$$^W4MAIN("TMPARG")@("VL",I)=$$CLEAR(PRM,I)
 ;
 ;------------ NADO BUDET DEL VSTAVKU ( PRM - SCR,KEY, ID , $P(PRM,";",I) )
 N OK S OK=0
 I $L($G(KEY)) D
 .F K=1:1 Q:'$D(MRKVZ(K))  D
 ..S ID=$G(MRKVZ(K,"ID")) Q:ID=""
 ..N VL S VL=$$CLEAR(PRM,K)
 ..I $L($$SCR),$$PUT^W4SPVL($$SCR,KEY,ID,VL) S OK=1 Q
 ..I '$L($$SCR),$L($G(GLOB0)),$L($G(KEY)),$$PUTGL^W4SPVL(GLOB0,KEY,ID,VL) S OK=1 Q
 ;
 I $L($$SCR),$L($G(KEY)),$$PUTALL^W4SPVL($$SCR,KEY) Q 1
 I '$L($$SCR),$L($G(GLOB0)),$L($G(KEY)),$$PUTGLALL^W4SPVL(GLOB0,KEY) Q 1
 I OK Q 1
 ;
 D PUTALL^W4SCREF("",SCR,"A")
 ;
 N I,REF
 F I=1:1 Q:'$D(@$$^W4SCR@(SCR,"P","REF",I))  D
 .S REF=$G(^(I)),REF1=REF
 .I REF["($P," S REF2=$P(REF,"$P,",2),REF1=GLOB_"("_REF2
 .S @REF1=$G(@REF)
 Q 1
 ;
 ;
GETIDS(STAM) ;
 N MRKV,MRKVZ
 D GLOB^W4SPIDK
 I $$SCR'="" D  G GETIDS1
 .D GETSCR
 .D FRMRKV^%W1FREPA(SCR)
 .S MRKVZ(1,"VL")=$$KEY
 ;
 D GETRKVZ
 ;
GETIDS1 ;
 N IDS S IDS=""
 N I F I=1:1 Q:'$D(MRKVZ(I))  D
 .S IDS=IDS_$G(MRKVZ(I,"ID"))_";"
 Q IDS
 ;
 ;
CLEAR(PRM,K) ;
 N VL
 S VL=$$SPA^%L1FRM($P(PRM,";",K))
 I VL'?1N.N D
 .S VL=$$CNWEB^%L1FRM($$CLEAR^%L1FRM(VL))
 .I $G(MRKVZ(K,"TYP"))="H" S VL=$$INVH^%L1FRM(VL)
 Q VL
 ;
KEY(STAM) ;
 I $D(%ARG("KEY")) Q $G(%ARG("KEY"))
 Q $G(@$$^W4MAIN("TMPARG")@("KEY"))
 ;
SCR(STAM) ;
 I $D(%ARG("SCR")) Q $G(%ARG("SCR"))
 Q $G(@$$^W4MAIN("TMPARG")@("SCR"))
 ;
PRINT(STAM)
 I $D(%ARG("PRINT")) Q $G(%ARG("PRINT"))
 Q $G(@$$^W4MAIN("TMPARG")@("PRINT"))
 ;
NODEL(STAM)
 I $D(%ARG("NODEL")) Q $G(%ARG("NODEL"))
 Q $G(@$$^W4MAIN("TMPARG")@("NODEL"))
 ;
DEL(KEY) ;
 D GLOB^W4SPIDK
 N STRING S STRING=KEY
 N FILE S FILE=GLOB
 D KF^%L1SCSV
 K @GLOB@(KEY)
 Q 1
 ;
CHANGE(PRM) ;
 N OLDKEY,NEWKEY
 S OLDKEY=$P(PRM,";")
 S NEWKEY=$P(PRM,";",2)
 I 'OLDKEY Q "0;NOOLDKEY"
 I 'NEWKEY Q "0;NONEWKEY"
 ;
 S SCR=$P(PRM,";",3)
 I SCR="W4LEVPR" D
 .S OLDKEY=$$DOP^W4NAME(OLDKEY)
 .S NEWKEY=$$DOP^W4NAME(NEWKEY)
 ;
 D GLOB^W4SPIDK
 I $D(@GLOB@(NEWKEY)) Q "0;NEWKEYEXIST"
 ;
 I SCR="W4LEVPR" D
 .M @$$^W4GL("NAMEOLD")@(OLDKEY)=@$$^W4GL("NAME")@(OLDKEY)
 .M @$$^W4GL("FILEOLD")@(OLDKEY)=@$$^W4GL("FILE")@(OLDKEY)
 ;
 M @GLOB@(NEWKEY)=@GLOB@(OLDKEY)
 ;
 I SCR="W4LEVPR" D
 .M @$$^W4GL("FILE")@(NEWKEY)=@$$^W4GL("FILE")@(OLDKEY)
 .M @$$^W4GL("FILE1")@(NEWKEY)=@$$^W4GL("FILE")@(NEWKEY)
 .D ^W4SHNMLZ(OLDKEY,NEWKEY)
 ;
 N STRING S STRING=OLDKEY
 N FILE S FILE=GLOB
 D KF^%L1SCSV
 ;
 K @GLOB@(OLDKEY)
 ;
 I SCR="W4LEVPR" K @$$^W4GL("FILE")@(OLDKEY)
 Q 1

W4SPVIDK
W4SPVIDK ; [ 08.04.25 13:08 ] [ 04.04.25 10:51 ] [ 16.02.25 06:54 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(%ARG("HD"))'="" D ^%W1HD(%ARG("HD"),"",2)
 ;
 I $G(%ARG("FIRST")) D
 .K @$$^W4MAIN("TMPARG") M @$$^W4MAIN("TMPARG")=%ARG
 ;
 D GLOB^W4SPIDK
 ;
 I $$SCR'="",$D(@$$^W4SCR@($$SCR)) D  G P
 .D GETSCR
 .D FRMRKV^%W1FREPA(SCR)
 .;
 .N KEY S KEY=$$KEY
 .S MRKVZ(1,"VL")=KEY
 .D PUT^%W1PRM("W4SPVKEY",KEY)
 ;
 ;
 D GETRKVZ
 ;
P ;
 D PC
 K @$$^W4MAIN("TMPARG")@("VL")
 Q
 ;
GETRKVZ ;
 D GLOBPRM^W4SPIDK
 D GLOB^W4SPIDK
 S MRKVZ("KOT")=$$TBLNAME^W4SPIDK
 S MRKVZ(1,1)=$$KEYNAME^W4SPIDK
 S MRKVZ(1,"TYP")="E"
 S MRKVZ(1,"ID")="KEY"
 S MRKVZ(1,"LEN")=$$KEYSIZE^W4SPIDK
 S MRKVZ(1,"VL")=$$KEY
 ;
 S MRKVZ(2,1)=$$NAME^W4SPIDK(0)
 S MRKVZ(2,"TYP")=$S($$^%W1DIR="RTL":"H",1:"E")
 S MRKVZ(2,"LEN")=$$LEN^W4SPIDK(0)
 S MRKVZ(2,"ID")="NAME"
 ;
 S J1=2
 F J=1:1:$$COLDOP^W4SPIDK D
 .S J1=J1+1
 .S MRKVZ(J1,1)=$$NAME^W4SPIDK(J)
 .S MRKVZ(J1,"TYP")=$$TYP^W4SPIDK(J)
 .S MRKVZ(J1,"LEN")=$$LEN^W4SPIDK(J)
 .S MRKVZ(J1,"ID")=GLOB0_J
 .S MRKVZ(J1,"GL")=$$GL^W4SPIDK(J)
 ;
 Q
 ;
PC W "<div align=""center"">",!
 I '$$PRINT W "<span style=""font-size:"_$$^W3FSZ(20)_";color:"_$$BGHD^W3CSS($$COLOR^W3CSS)_""">"_$$H2U^%L1FRM($G(MRKVZ("KOT")))_"</span>",!
 W "<br /><br />"
 W "<table id=""TblMain"" onMouseDown=""ifrHide('TblMain')"" dir="""_$$^%W1DIR_""" border=""0"" width="""_$$WD_""" style="""_$$FONTFM^W3CSS_""" >",!
  W "<tr>"
   W "<td width=""40%"" style=""font-weight:bold"">"
    W $$H2U^%L1FRM(MRKVZ(1,1))_"&nbsp;&nbsp;"
    W $$VV(1)
    W "&nbsp;"
    I $G(%ARG("FREE")) D
    .W "<input id=""free"" value="""_$$^%W1DICT("FREE")_""" onClick=""Free('"_$$ID(1)_"','"_GLOB0_"','"_$$ID(2)_"')"" style=""text-align:center;color:green;width:50px;cursor:pointer"" />"
   W "</td>",!
   ;
   W "<td width=""60%"" style=""font-weight:bold"">"
    W "<div style=""display:inline-flex;align-items:center"">"
    W $$H2U^%L1FRM(MRKVZ(2,1))_"&nbsp;&nbsp;"
    W $$VV(2)_"&nbsp;"
    I '$$PRINT D
    .W "&nbsp;<img src=""w3filter.jpg"" width="""_$$^W4KF(23)_"px"" height="_$$^W4KF(23)_"px"" "
    . W " onClick=""Find('"_$$ID(2)_"','"_$$ID(1)_"','"_GLOB0_"','2')"" "
    .W ">",!
    W "</div>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 W "<br /><br />",!
 ;
 S SH=5
 ;
 W "<table id=""TblPrm"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" width="""_$$WD_""" style="""_$$FONTFM^W3CSS_";background-color:white;color:black"" >",!
 I $E($$SCR,1,7)="W4LEVPR" S %ARG("OLDDAT")=1
 ;
 F K=3:1 Q:'$D(MRKVZ(K))  D
 .W "<tr>" S SH=SH+2
 .W "<td width=""50%"" style=""font-weight:bold"">"
 . W $$H2U^%L1FRM(MRKVZ(K,1))
 . I $$SCR["W3COLOR",$E($$ID(K),1,2)="BG" D
 .. W "<input type=""button"" value=""Upl"" "
 .. W " onClick=""Upload('"_$$VL(K)_"',event)"" "
 .. W " />"
 .W "</td>"
 .W "<td align=""center"" "_$S($$TYP(K)="D"!($$TYP(K)="T"):" dir=""LTR""",1:"")_" >"_$$VV(K)_"</td></tr>",!
 ;
 W "</table></div>",!
 Q:$$PRINT
 W "<br/><br />",!
 W "<div align=""center"">",!
 W "<table dir="""_$$^%W1DIR_""" >"
 W "<tr><td>"
 D ROUNDBUT^%W1JS("save",$$^%W1DICT("SUBMIT"),"Save()","color:green","wh,22")
 W "</td><td>"
 D ROUNDBUT^%W1JS("cancel",$$^%W1DICT("CLEAR"),"Cancel()","color:red","wh,22")
 W "</td><td>"
 I '$$NODEL D
 .D ROUNDBUT^%W1JS("delete",$$^%W1DICT("DELETERECORD"),"Delete()","color:red","wh,22")
 ;
 I $$CHANGEPRM D
 .D ROUNDBUT^%W1JS("change",$$^%W1DICT("CHANGENUMBER"),"ChangeNumber()","color:brown","wh,22")
 ;
 W "</td><td>"
 D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINTSHOWTABLE"),"Print('0')","color:blue","wh,22")
 W "</td><td>"
 D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINTSHORT"),"Print('1')","color:darkblue","wh,22")
 W "</td><td>"
 ;
 I $E($$SCR,1,7)="W4LEVPR",$G(%ARG("KEY")) D
 .N COLOR S COLOR="color:darkgreen"
 .I $D(@$$^W4GL("W4CORWR")@(%ARG("KEY"))) S COLOR="background-color:yellow;color:darkgreen"
 .D ROUNDBUT^%W1JS("details",$$^%W1DICT("COMMENTS"),"Details()",COLOR,"wh,22")
 ;
 W "</td><td>"
 D ROUNDBUT^%W1JS("exit",$$^%W1DICT("EXIT"),"Exit()","color:red","wh,22")
 W "</td></tr></table>",!
 W "</div>",!
 Q
 ;
VV(K) ;
 N TYP,LEN,GLB,GLB1,ID,VL
 S TYP=$$TYP(K) Q:TYP="" ""
 S LEN=$$LEN(K) Q:LEN="" ""
 S GLB=$$GLB(K) S:$E(GLB)="^" GLB=$E(GLB,2,20)
 S GLB1=$$^W4GL(GLB)
 S ID=$$ID(K)
 S VL=$$VL(K)
 I $$MUMPS1(K)'="" X $$MUMPS1(K)
 ;;W ID_" = "_VL,!
 N VV S VV=""
 ;
 I $$PRINT Q $$VVPRINT(K)
 ;
 I TYP="N"!(TYP="E")!(TYP="H"),GLB=""!'$$SMALLG(GLB)!(K=1) D
 .I $D(MRKVZ(K,"SEL")),GLB="" S VV=$$SELRKV^%W1FREPA(ID,VL) Q
 .N COD S COD=$S($$SCR="":GLB,1:$$SCR)
 .D BEGVV^%W1FREPA
 .S VV=VV_" value="""_$S(TYP="H":$$H2U^%L1FRM(VL),1:VL)_""" "
 .I K=1 S VV=VV_" onChange=""OnChangedKey(this)"" "
 .S VV=VV_" >"
 .I GLB'="",K>1 D
 ..S VV=VV_" &nbsp;&nbsp;"
 ..S VV=VV_"<input type=""text"" style=""text-align:right"" dir="""_$S(TYP="H":"RTL",1:"LTR")_""" size=""20"" maxlength=""20"" name="""_ID_"1"" id="""_ID_"1"" value="""_$S(VL="":"",1:$$H2U^%L1FRM($G(@GLB1@(VL))))_""" >"
 ..S VV=VV_" <img src=""w3filter.jpg""  onClick=""Find('"_ID_"1','"_ID_"','"_GLB_"','"_K_"')"" />"
 ;
 I TYP="N"!(TYP="E")!(TYP="H"),GLB'="",$$SMALLG(GLB),K>1 D
 .S VV="<select name="""_ID_""" id="""_ID_""">"
 .N N S N=$$FIRST^%W1FREPA(GLB)
 .F  S N=$O(@GLB1@(N)) Q:N=""  D
 ..N A S A=$G(^(N))
 ..S VV=VV_"<option value="""_N_""" "_$S(N=VL:" selected=""selected""",1:"")_" >"
 ..S VV=VV_N_"&nbsp;&nbsp;"_$$H2U^%L1FRM($P(A,"**"))_"</option>"
 .S VV=VV_"</select>"
 ;
 I TYP="B" S VV="<input type=""checkbox"" name="""_ID_""" id="""_ID_""" "_$S($$VL(K)!($$VL(K)="k"):" checked=""checked"" ",1:"")_" >"
 I TYP="D" D  ;; ^%W1DAT(ID,"")
 .;;S %ARG("OLDDAT")=1
 .S VV=$$STDT^%W1DAT(ID,"",$$VLDAT(K,"DD"),$$VLDAT(K,"MM"),$$VLDAT(K,"YY"))
 ;
 I TYP="T" D TIMENEW^%W1DAT(ID,$$VL(K),"",1)
 Q VV
 ;
VVPRINT(K)
 S VV=""
 I TYP="N"!(TYP="E")!(TYP="H") D
 .S VV="&nbsp;"_$$H2U^%L1FRM(VL)_"&nbsp;"
 .I GLB'="",K>1 D
 ..S VV=VV_"&nbsp;"_$S(VL="":"",1:$$H2U^%L1FRM($G(@GLB1@(VL))))_"&nbsp;"
 I TYP="B" S VV=$S($$VL(K)!($$VL(K)="k"):" + ",1:" - ")
 I TYP="D" S VV=$$VLDAT(K,"DD")_"."_$$VLDAT(K,"MM")_"."_$$VLDAT(K,"YY")
 I TYP="T" S VV=$$VL(K)
 S VV="<span style=""color:brown"">"_VV_"</span>"
 Q VV
 ;
TYP(K) Q $G(MRKVZ(K,"TYP"))
LEN(K) Q $G(MRKVZ(K,"LEN"))
ID(K) Q $G(MRKVZ(K,"ID"))
IDW(K) N ID,TYP
 S ID=$$ID(K)
 S TYP=$$TYP(K)
 I TYP="T" Q ID_"hr"
 I TYP="D" Q ID_"IDdd"
 Q ID
 ;
GLB(K) Q $G(MRKVZ(K,"GL"))
MUMPS1(K) Q $G(MRKVZ(K,"MUMPS1"))
MUMPS2(K) Q $G(MRKVZ(K,"MUMPS2"))
 ;
VL(K) ;
 I $D(@$$^W4MAIN("TMPARG")@("VL",K)) Q $G(^(K))
 N KEY S KEY=$G(MRKVZ(1,"VL")) I KEY="" Q ""
 I K=1 Q KEY
 ;
 N VL
 I $L($$SCR) S VL=$$GET^W4SPVL($$SCR,KEY,$$ID(K)) I VL'="<NOGET>" Q VL
 ;
 I K=2,$G(GLOB0)'="NAME" Q $P($P($G(@GLOB@(KEY)),"**"),"\")
 I K=2,$G(GLOB0)="NAME" Q $P($P($G(@GLOB@(KEY,1)),"**"),"\")
 ;
 I $$SCR="" Q $P($G(@GLOB@(KEY,1)),"\",K-2)
 ;
 D GA^W4SCREF($$SCR,GLOB_"("""_KEY_""")")
 Q $G(@$$ID(K))
 ;
VLDAT(K,PR) ;
 N DAT S DAT=$$VL(K)
 I $P(DAT,",")?5N S DAT=$$^%L1DC(DAT,1)
 S DAT=$TR(DAT,"/.","")
 I DAT'?6N Q ""
 I PR="DD" Q $E(DAT,1,2)
 I PR="MM" Q $E(DAT,3,4)
 I PR="YY" Q $E(DAT,5,6)
 Q ""
 ;
SMALLG(GLB) Q $$SMALLG^%W1FREPA(GLB)
GLOB(STAM) N GLOB D GLOB^W4SPIDK
 Q GLOB
TBLNAME(STAM) ;
 Q $$TBLNAME^W4SPIDK
 ;
GETSCR ;
 S SCR=$$SCR
 Q
 ;
SAVE(PRM) ;
 N (JB,PRM,%ARG)
 S KEY=$P(PRM,";") I KEY="" Q -1
 ;
 D GLOB^W4SPIDK
 ;
 D GETSCR
 ;
 I $$SCR="" D  Q 1
 .D GETRKVZ
 .S @GLOB@(KEY)=$$CLEAR(PRM,2)
 .N K F K=3:1 Q:'$D(MRKVZ(K))  D
 ..S $P(@GLOB@(KEY,1),"\",K-2)=$$CLEAR(PRM,K)
 ;
 ;----------------- SCR ---------------------
 N MRKVZ,K,ID
 D FRMRKV^%W1FREPA(SCR)
 ;
 S ER=0
 F K=1:1 Q:'$D(MRKVZ(K))  D  I ER'=0 S ER=$$IDW(K)_";"_ER_"::"_$G(MRKVZ(K,1)) Q
 .S ID=$G(MRKVZ(K,"ID")) Q:ID=""
 .S @ID=$$CLEAR(PRM,K)
 .N %FNAME S %FNAME=ID
 .I $G(MRKVZ(K,"MUMPS2"))'="" D
 ..X MRKVZ(K,"MUMPS2")
 ..I $G(%SC("ER")) S ER=$P(%SC("ER"),"~",2) S:ER="" ER="ERRKV" Q
 ..I $G(%SC("ST")) S ER=$P(%SC("ER"),"~",2) S:ER="" ER="ERRKV" Q
 ;
 I ER'=0 D  Q ER
 .N I F I=1:1 Q:'$D(MRKVZ(I))  D
 ..S @$$^W4MAIN("TMPARG")@("VL",I)=$$CLEAR(PRM,I)
 ;
 ;------------ NADO BUDET DEL VSTAVKU ( PRM - SCR,KEY, ID , $P(PRM,";",I) )
 N OK S OK=0
 I $L($G(KEY)) D
 .F K=1:1 Q:'$D(MRKVZ(K))  D
 ..S ID=$G(MRKVZ(K,"ID")) Q:ID=""
 ..N VL S VL=$$CLEAR(PRM,K)
 ..I $L($$SCR),$$PUT^W4SPVL($$SCR,KEY,ID,VL) S OK=1 Q
 ..I '$L($$SCR),$L($G(GLOB0)),$L($G(KEY)),$$PUTGL^W4SPVL(GLOB0,KEY,ID,VL) S OK=1 Q
 ;
 I $L($$SCR),$L($G(KEY)),$$PUTALL^W4SPVL($$SCR,KEY) Q 1
 I '$L($$SCR),$L($G(GLOB0)),$L($G(KEY)),$$PUTGLALL^W4SPVL(GLOB0,KEY) Q 1
 I OK Q 1
 ;
 D PUTALL^W4SCREF("",SCR,"A")
 ;
 N I,REF
 F I=1:1 Q:'$D(@$$^W4SCR@(SCR,"P","REF",I))  D
 .S REF=$G(^(I)),REF1=REF
 .I REF["($P," S REF2=$P(REF,"$P,",2),REF1=GLOB_"("_REF2
 .S @REF1=$G(@REF)
 Q 1
 ;
 ;
GETIDS(STAM) ;
 N MRKV,MRKVZ
 D GLOB^W4SPIDK
 I $$SCR'="" D  G GETIDS1
 .D GETSCR
 .D FRMRKV^%W1FREPA(SCR)
 .S MRKVZ(1,"VL")=$$KEY
 ;
 D GETRKVZ
 ;
GETIDS1 ;
 N IDS S IDS=""
 N I F I=1:1 Q:'$D(MRKVZ(I))  D
 .S IDS=IDS_$G(MRKVZ(I,"ID"))_";"
 Q IDS
 ;
 ;
CLEAR(PRM,K) ;
 N VL
 S VL=$$SPA^%L1FRM($P(PRM,";",K))
 I VL'?1N.N D
 .S VL=$$CNWEB^%L1FRM($$CLEAR^%L1FRM(VL))
 .I $G(MRKVZ(K,"TYP"))="H" S VL=$$INVH^%L1FRM(VL)
 Q VL
 ;
KEY(STAM) ;
 I $D(%ARG("KEY")) Q $G(%ARG("KEY"))
 Q $G(@$$^W4MAIN("TMPARG")@("KEY"))
 ;
SCR(STAM) ;
 N SCR
 D
 .I $D(%ARG("SCR")) S SCR=$G(%ARG("SCR")) Q
 .S SCR=$G(@$$^W4MAIN("TMPARG")@("SCR")) Q
 ;
 I SCR="W4LEVPR",$$DELIS^W4PRM S SCR="W4LEVPR1"
 Q SCR
 ;
 ;
PRINT(STAM)
 I $D(%ARG("PRINT")) Q $G(%ARG("PRINT"))
 Q $G(@$$^W4MAIN("TMPARG")@("PRINT"))
 ;
NODEL(STAM)
 I $D(%ARG("NODEL")) Q $G(%ARG("NODEL"))
 Q $G(@$$^W4MAIN("TMPARG")@("NODEL"))
 ;
CHANGEPRM(STAM)
 I $D(%ARG("CHANGE")) Q $G(%ARG("CHANGE"))
 Q $G(@$$^W4MAIN("TMPARG")@("CHANGE"))
 ;
DEL(KEY) ;
 D GLOB^W4SPIDK
 N STRING S STRING=KEY
 N FILE S FILE=GLOB
 D KF^%L1SCSV
 K @GLOB@(KEY)
 Q 1
 ;
CHANGE(PRM) ;
 N OLDKEY,NEWKEY
 S OLDKEY=$P(PRM,";")
 S NEWKEY=$P(PRM,";",2)
 I 'OLDKEY Q "0;NOOLDKEY"
 I 'NEWKEY Q "0;NONEWKEY"
 ;
 S SCR=$P(PRM,";",3)
 ;
 D GLOB^W4SPIDK
 I $D(@GLOB@(NEWKEY)) Q "0;NEWKEYEXIST"
 ;
 M @GLOB@(NEWKEY)=@GLOB@(OLDKEY)
 ;
 N STRING S STRING=OLDKEY
 N FILE S FILE=GLOB
 D KF^%L1SCSV
 ;
 K @GLOB@(OLDKEY)
 ;
 Q 1
 ;
FREE(PRM) ;
 N START,GL,OK,I,NMGL,IND
 S START=$P(PRM,";")
 S GL=$P(PRM,";",2)
 I GL="" Q ""
 S OK=""
 S NMGL=GL
 I $E(NMGL)="^" S NMGL=$E(NMGL,2,30)
 I NMGL["]" S NMGL=$P(NMGL,"]",2)
 I NMGL["|" S NMGL=$P(NMGL,"|",3)
 I NMGL["(" S NMGL=$P(NMGL,"(")
 S GLOB=$$^W4GL(NMGL)
 F I=START+1:1:99999 D  I '$D(@GLOB@(IND)) S OK=IND Q
 .S IND=I
 .I NMGL="NAME" S IND=$$DOP^W4NAME(I)
 ;
 Q OK
 ;
 ; 
WD() ; 
 I $$^W4TABLET=2 Q "98%"
 I $$PRINT Q "80%"
 Q "70%" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SPVL
W4SPVL ; [ 01.01.23 10:30 ] [ 09.04.15 19:30 ] [ 09.01.12 19:39 ] 
 Q
GET(SCR,KEY,ID) ; [ 19.06.10 11:03 ] [
 N VL S VL="<NOGET>"
 I $G(SCR)=""!($G(KEY)="")!($G(ID)="") Q VL
 ;
 I $E(SCR,1,7)="W4LEVPR" D  ;------------------------------------------
 .I ID'="KVZ",ID'="SUGMS" S VL=$$GET1^W4LEVPR(KEY,ID)
 .I ID="KVZ" S VL=$P($G(@$$^W4GNAME@(KEY)),"\")
 .I ID="SUGMS" S VL=$P($G(@$$^W4GNAME@(KEY)),"\",2)
 ;
 ;
 I SCR["W3COLOR" S VL=$$^W3COLORG(SCR,KEY,ID)
 ;
 Q VL
 ;
 ;
PUT(SCR,KEY,ID,VL) ;
 N OK S OK=0
 I $G(SCR)=""!($G(KEY)="")!($G(ID)="") Q 0
 ;
 I SCR["W3COLOR" S OK=$$^W3COLORS(SCR,KEY,ID,VL)
 Q OK
 ;
 ;
PUTALL(SCR,KEY) ;
 N OK S OK=0
 I $G(SCR)=""!($G(KEY)="") Q 0
 ;
 I $E(SCR,1,7)="W4LEVPR" D
 .N OVED S OVED=KEY
 .D PUT^W4LEVPR
 .S @$$^W4GNAME@(OVED)=$G(KVZ)_"\"_$G(SUGMS)
 .S OK=1
 ;
 Q OK
 ;
GETGL(GL,KEY,ID) ;
 N VL S VL="<NOGET>"
 I $G(GL)=""!($G(KEY)="")!($G(ID)="") Q VL
 ;
 I GL="W3COLOR" D
 .S VL=$G(@$$^W4GL(GL)@(KEY,ID))
 ;
 Q VL
 ;
 ;
PUTGL(GL,KEY,ID,VL) ;
 N OK S OK=0
 I $G(GL)=""!($G(KEY)="")!($G(ID)="") Q 0
 ;
 I GL="W3COLOR" D
 .S @$$^W4GL(GL)@(KEY,ID)=VL
 .S OK=1
 ;
 Q OK
 ;
PUTGLALL(GL,KEY,VL) ;
 N OK S OK=0
 I $G(GL)=""!($G(KEY)="") Q 0
 ;
 Q OK
 
 

W4SPVPRN
W4SPVPRN(SHORT) ; [ 04.11.19 17:52 ] [ 09.06.18 09:26 ] [ 10.03.17 18:49 ] 
 N (JB,%ARG,%REM,SHORT)
 I $G(%ARG("SHOW"))=0 Q
 I $G(SHORT),$G(%ARG("SCR"))="W4LEVPR" D  Q
 .D ^W4DCLKS("","",$G(%ARG("PRINT")))
 ;
 S %ARG("PRINT")=1
 D GLOB^W4SPIDK
 ;
 I $$SCR'="",$D(@$$^W4SCR@($$SCR)) D  G BG
 .D GETSCR^W4SPVIDK
 .D FRMRKV^%W1FREPA(SCR)
 ;
 D GETRKVZ^W4SPVIDK
 ;
BG ;
 W "<span style=""color:darkred;font-size:"_$$^W3FSZ(18)_""">"_$$H2U^%L1FRM($$TBLNAME^W4SPIDK)_"</span>",!
 ;
 S RSZ=0,SRSZ=0,SPG=59
 S N=$S(GLOB0="LKH":999,1:"")
 ;
 I $G(SHORT) D  Q
 .W "<br /><br />",!
 .W "<table width=""60%"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""font-size:"_$$^W3FSZ(12)_""">",!
 .W "<tr style=""background-color:brown;color:white""><th>"_$$H2U^%L1FRM($G(MRKVZ(1,1)))_"</th><th>"_$$H2U^%L1FRM($G(MRKVZ(2,1)))_"</th></tr>"
 .I '$G(%ARG("ABCSORT")) D
 ..N NM F  S N=$O(@GLOB@(N)) Q:N=""  D
 ...S NM=$G(^(N))
 ...I GLOB0="NAME" S NM=$G(^(N,1))
 ...D SHOWLINE(N,NM)
 .
 .I $G(%ARG("ABCSORT")) D
 ..N VRM S VRM=$$^W4MAIN("VRMABC") K @VRM
 ..N NM,IND S IND=""
 ..F  S N=$O(@GLOB@(N)) Q:N=""  D
 ...S NM=$P($G(^(N)),"**")
 ...S IND=$$^W4ABCIND(N,NM) Q:IND=""
 ...S @VRM@(IND)=N
 ..S IND="" F  S IND=$O(@VRM@(IND)) Q:IND=""  D
 ...S N=$G(^(IND))
 ...S NM=$G(@GLOB@(N))
 ...I GLOB0="NAME" S NM=$G(^(N,1))
 ...D SHOWLINE(N,NM)
 ..;;K @VRM
 .W "</table>",!
 ;
 F  S N=$O(@GLOB@(N)) Q:N=""  D
 .N N1 S N1="" F  S N1=$O(MRKVZ(N1)) Q:N1=""  K MRKVZ(N1,"VL")
 .S %ARG("KEY")=N,SH=0
 .S MRKVZ(1,"VL")=$G(%ARG("KEY"))
 .K @$$^W4MAIN("TMPARG")@("VL")
 .D PC^W4SPVIDK
 .K @$$^W4MAIN("TMPARG")@("VL")
 .S RSZ=$J(SH*.9,0,0)
 .S SRSZ=SRSZ+RSZ
 .I SRSZ+RSZ>SPG D  Q
 ..D PROGON S SRSZ=0
 Q
 ;
PROGON ;
 W "<p style=""page-break-before:always"">",!
 Q
 ;
SCR(STAM) I $D(%ARG("SCR")) Q %ARG("SCR")
 Q $G(@$$^W4MAIN("TMPARG")@("SCR"))
 ;
SHOWLINE(ITEM,NM) ;
 W "  <tr>"
  W "<td align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""" >"
   I $G(GLOB0)="NAME",'$$GET1^W4LEVPR(ITEM,"PAIL") W "style=""color:lightgrey"" "
  W ">"
   W ITEM_" &nbsp; "_$$H2U^%L1FRM(NM)
  W "</td>",!
  I $G(GLOB0)="NAME" W "<td>"_$$H2U^%L1FRM($$KVZ1^W4LEVPR(ITEM))_"</td>"
  W "</tr>",!
  Q
 
 
 
 
 
 
 
 
 
 
 
 

W4SRCCA
W4SRCCA(HZ,NCA) ; [ 14.01.22 08:15 ] [ 
 N OK S OK=0
 I $D(@$$^W4ORD@(HZ,"CB","V"))<10 Q 0
 N CRCARDS S CRCARDS=$$CRCARDS^W4HZMST(HZ)
 I NCA,$L(NCA)>4,(","_CRCARDS_",")[+NCA Q 1
 I NCA,$L(NCA)=4 D
 .N J F J=1:1:$L(CRCARDS,",") D  Q:OK
 ..N CARD S CARD=$P(CRCARDS,",",J)
 ..I $E(CARD,$L(CARD)-3,$L(CARD))=NCA S OK=1
 Q OK
 

W4SRVC
W4SRVC ; [ 31.01.10 12:31 ] [ 30.01.10 14:05 ] [
DAT(N) ;
 N GL D GL
 Q $P($G(@GL@(N)),"\",1)
CUST(N) ;
 N GL D GL
 Q $P($G(@GL@(N)),"\",2)
CUSTNAME(N) ;
 N GL D GL
 Q $P($G(@GL@(N)),"\",3)
DEV(N) ;
 N GL D GL
 Q $P($G(@GL@(N)),"\",7)
 ;
GL ;
 S GL=$$^W4GL("SRVC")
 Q

W4SRVTO
W4SRVTO(GLOLD,IO,GLNEW,IN) ; [ 29.06.22 21:09 ] [ 18.03.19 14:19 ] [ 09.07.18 10:10 ] 
 D OUTIND(GLOLD,IO,GLNEW,IN)
 D SUBIND(GLOLD,IO,GLNEW,IN)
 Q
 ;
REST(GLOLD,IO,GLNEW,IN)
 F II="HNHP","HNH" D
 .I $D(@GLOLD@(II,IO)) M @GLNEW@(II,IN)=@GLOLD@(II,IO)
 D SUBIND(GLOLD,IO,GLNEW,IN)
 Q
 ;
OUTIND(GLOLD,IO,GLNEW,IN,PRDEL)
 N II
 F II="BIT","MRG","ST","HNHP","MVFROM","MVTO","HNH","TOAI","TS","FROM" D
 .I $D(@GLOLD@(II,IO)) M @GLNEW@(II,IN)=@GLOLD@(II,IO)
 .I $G(PRDEL) K @GLOLD@(II,IO)
 ;
 M @GLNEW@("FIRE")=@GLOLD@("FIRE")
 Q
 ;
SUBIND(GLOLD,IO,GLNEW,IN)
 N IND S IND=""
 F  S IND=$O(@GLOLD@(IO,IND)) Q:IND=""  I IND?1U.E D
 .I $D(@GLOLD@(IO,IND))#2 D
 ..S @GLNEW@(IN,IND)=@GLOLD@(IO,IND)
 ..I $G(PRDEL) K @GLOLD@(IO,IND)
 Q
 
 
 
 
 
 
 

W4SRVWIN
W4SRVWIN(JB) ; [ 31.12.16 19:26 ] [ 11.08.09 12:02 ] [ 18.12.08 08:13 ] [
 Q 2
 

W4SSM
W4SSM(SISMA,DARGA) ; [ 04.06.26 15:19 ] [ 26.04.26 15:25 ] [ 05.09.23 08:27 ] 
 D PUT^%W3DEB("W4SSM","SISMA=SISMA&DARGA=DARGA")
 ;;S ^AA("W4SSM-SISMA")=SISMA
 ;;S ^AA("W4SSM-DARGA")=DARGA
 ;
 N MNL
 I $G(SISMA)="" Q 0
 I '$D(DARGA) S DARGA=2
 ;
 S DARGA=$$LV2NUM(DARGA)
 ;
 D PUT^%W1PRM("LASTPSW",SISMA)
 I DARGA=5,SISMA=$G(@$$^W4PRM@("PSW5")) Q 1
 ;
 I '$$PSWDRG^W4PRM D  G END
 .S OTB=$$^W4SIS(SISMA,DARGA)
 ;
 I $$^W4SISALL(SISMA)'<1 Q 1
 ;
 S MNL=0
 ;
 I $$PSWDRG(SISMA) D
 .S BG=$$BGPSW^W4PRM
 .S MNL=$$DECR($E(SISMA,BG+1,BG+5)),SISMA=+$$DECR($E(SISMA,BG+6,BG+6+7))
 .D KILL^%W1PRM("MNL")
 ;
 I SISMA[" " D
 .S MNL=$$DOP^W4NAME($P(SISMA," "))
 .S SISMA=$P(SISMA," ",2)
 .D KILL^%W1PRM("MNL")
 ;
 I 'MNL Q 0
 I 'SISMA Q 0
 ;
 S OTB=$$^W4SISM(MNL,SISMA,DARGA)
 I $G(MNL),OTB D PUT^%W1PRM("MNL",MNL)
END Q OTB
 ;
 ;
DECR(VL) ;
 N J,V S V="" F J=1:1:$L(VL) D
 .S V=V_$S($E(VL,J)>0:$E(VL,J)-1,1:9)
 Q V
 ;
PSWDRG(SISMA) ;
 I $L(SISMA)>12,SISMA'[" " Q 1
 Q 0
 ;
LV2NUM(DARGA)
 I $G(DARGA)="ZERO" S DARGA=$S($G(@$$^W4PRM@("DRGZERO")):^("DRGZERO"),$G(@$$^W4PRM@("PSWZERO3")):3,1:2)
 I $G(DARGA)="SOADZERO" S DARGA=2
 I $G(DARGA)="PSWDELPY" S DARGA=2
 I $G(DARGA)="TAKEDTIME" S DARGA=2
 I $G(DARGA)="SUPPLIEDTIME" S DARGA=2
 I $G(DARGA)="READYTIME" S DARGA=2
 I $G(DARGA)="CRCARDDET" S DARGA=2
 I $G(DARGA)="B" S DARGA=2 I $G(@$$^W4PRM@("BITLVL")) S DARGA=^("BITLVL")
 I $G(DARGA)="H" S DARGA=2
 I $G(DARGA)="DELPARTPSW" S DARGA=2
 I $G(DARGA)="CRCARDDET" S DARGA=2
 I $G(DARGA)="TIKYAD" S DARGA=$S($$PAPJ^W4PRM:3,$G(@$$^W4PRM@("TIKYADLV")):^("TIKYADLV"),1:4)
 Q DARGA
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4STACK
W4STACK ; [ 21.02.24 14:00 ] [ 18.02.24 14:40 ] [ 20.05.20 09:59 ] 
CLEAR(PRM,DW) ;
 D CLRSTACK(PRM)
 ;;I REF'="" D KILL^%W1PRM(PRM_"-S"_I) Q
 I '$G(DW) D KILL^%W1PRM(PRM)
 Q
 ;
CLRSTACK(PRM) ;
 I $G(PRM)?1N Q  ; -- 18.02.24
 N I,REF S REF=""
 F I=20:-1:1 S REF=$$GETP^%W1PRM(PRM_"-S"_I) D KILL^%W1PRM(PRM_"-S"_I)
 Q
 ;
PUT(PRM) ;
 N NMHRF,HRF,A,STACK,I,REF S STACK=0,A=""
 S NMHRF=$P(PRM,";"),HRF=$P(PRM,";",2,200)
 I NMHRF'["-S" D CLEAR(NMHRF) D PUT^%W1PRM(NMHRF,HRF) Q
 ;
 S STACK=1,NMHRF=$P(NMHRF,"-")
 ;
 F I=20:-1:1 S REF=$$GETP^%W1PRM(NMHRF_"-S"_I) Q:REF'=""
 I REF'="" S NMHRF=NMHRF_"-S"_$S(I<20:I+1,1:I) D PUT^%W1PRM(NMHRF,HRF) Q
 ;
 S A=$$GETP^%W1PRM(NMHRF)
 I A="" D PUT^%W1PRM(NMHRF,HRF) Q
 ;
 D PUT^%W1PRM(NMHRF_"-S1",HRF)
 Q
 ;
 ;
GET(PRM,NOCLR) ;
 N I,REF S REF=""
 F I=20:-1:1 S REF=$$GETP^%W1PRM(PRM_"-S"_I) Q:REF'=""  D KILL^%W1PRM(PRM_"-S"_I)
 ;
 ;;S ^AA("W4STACK-GET","REF0")=REF
 I $L(REF)>5 D:'$G(NOCLR) KILL^%W1PRM(PRM_"-S"_I) Q REF
 ;
 S REF=$$GETP^%W1PRM(PRM)
 ;;S ^AA("W4STACK-GET","REF1")=REF
 D:'$G(NOCLR) KILL^%W1PRM(PRM)
 Q REF
 
 
 
 
 
 
 
 
 
 
 
 

W4STADD
W4STADD(TXT) ; [ 17.06.26 11:00 ] [ 19.04.26 14:41 ] [ 23.09.24 20:22 ] 
 N (JB,%ARG,TXT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S TXT=$$CNWEB^%L1FRM(TXT)
 D PUT^%W1PRM("STPAR",TXT)
 N A S A="-"
 ;
 S CD=$P(TXT,"~",2)
 ;
 I CD=$$DESERTCD^W4PRM Q "DESERT"
 ;
 I '$$^W4AIN,$$^W4ASKPRC!$$PRCVAR^W4P(CD) Q A
 ;
 S A=$$STADD(TXT)
 ;
 I A["ITEMREMAINDER" Q A
 I A["QNTOOMUCH" Q A
 I A["ERR" Q A
 ;
 ;;I '$$^W4AIN D SETTMPQN(TXT)
 D SETTMPQN(TXT)
 ;
 Q A
 ;
 ;
STADD(TXT) ;
 N GORD,MSG,ER,NM S MSG=""
 D TMPORD
 ;;K @TMPORD@("SCRY")
 D PUT^%W3DEB("W4STADD-STADD","TXT=TXT")
 N CD S CD=$P(TXT,"~",2) I CD="" Q "0:NOTITEMCODE"
 ;
 S NM=$$CNWEB^%L1FRM($P(TXT,"~",3))
 S $P(TXT,"~",3)=NM
 ;
 IF $$ISFIRENM^W4FIRE(NM),'$$AIN D SET^W4FIRE
 ;
 N QN S QN=$S($$TYP(CD)="C":"",$P(TXT,"~",5):$P(TXT,"~",5),1:1)
 I QN=1,$$MSK^W4P(CD),'$$MSK^W4POSPRM S ER="0:WEIGHTERROR" Q ER; *** 19.04.26
 I $$MSK^W4P(CD),$$MSK^W4POSPRM,'QN!(QN=1) D  I QN'>0 S ER="0:WEIGHTERROR" S:QN<0 ER=ER_";"_$P(QN,";",2) Q ER
 .S QN=$$QNMSK
 ;
 N QNMIN S QNMIN=$G(@$$^W4GL("W4QNMIN")@(CD))
 I QN>0,QN<QNMIN Q "0:QNMIN:"_QNMIN
 ;
 S MSG=$$MSG^W4ITEND("CD="_CD,QN) I MSG'="" Q "0:"_MSG
 ;
 D NEWST^W4HZTSF(TXT,QN)
 ;
 I $$MUST^W4EZH(CD),'$$SCANER^W4HZTFR Q 2  ; -- WAS $$MUST^W4EZH
 ;
 I $$HRA^W4P(CD)'="" S $P(TXT,"~",7)=$$HRA^W4P(CD) ; -- 24/09/18
 ;
 I $$AIN D  ; *** 01/07/24
 .D SBR^W4HZTSF(TXT,QN) ; -- TMPA --> TMPORD
 ;
 Q 1
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
AIN(STAM) ;
 Q $$^W4AIN
 ;
QNMSK(STAM) ;
 N A,B,ADDR,PORT,PORTN,ERCON,MSK,MSKDEV,SHMSK
 S SHMSK=0
 N DV S DV=$$^W4MYDVN
 S MSKDEV=$G(@$$^W4GL("PLUK")@(DV,"MSKPORT"))
 ;;I $G(^DB) S MSKDEV=$G(@$$^W4GL("PLUK")@(DV,"MSKPORT"))
 D DBMSK("MSKDEV",MSKDEV)
 I 'MSKDEV Q "-1;NOWEIGHTPORT"
 S ADDR=$G(@$$^W4DEV@(MSKDEV))
 D DBMSK("ADDR",ADDR)
 I 'ADDR Q "-2;NOWEIGHTADDR"
 S PORT=9300
 S PORTN="SCK$"_$J
 C PORTN
 ;
 S ERCON=$$^%L2NALAN(ADDR,PORT)
 ;
 D DBMSK("ERCON",ERCON)
 ;
 I $G(ERCON) C PORTN Q "-3;CONNECTERROR;"_ERCON
 S MSK=0
 ;
 N SHMSK,LOOP S SHMSK=0,SH=0
 I '$$MSKCOMP,$$NEWLIN F  R *A:0 Q:A<0  ; -- 26/02/24
QNMSK1 I '$$MSKCOMP W "W",! D DBMSK("W","W")
 S A=""
 I '$$MSKCOMP D
 .I '$$NEWLIN F J=1:1:2000 D DLY R *B:0 Q:B=-1  Q:B=4  S A=A_$C(B) ; -- .02 --> .05 10/11/19 ;;15/09/19 LEV
 .;;I $$NEWLIN F  R *B:.4 Q:B=-1  Q:B=4  S A=A_$C(B)
 .N DV S DV=$$^W4MYDVN
 .N DLY S DLY=.4 I DV,$G(@$$^W4PRM@("DLYMSK",DV)) S DLY=^(DV)
 .I $$NEWLIN D
 ..R A:DLY Q
 ..;;F  R *B:DLY Q:B=-1  Q:B=4  Q:B=10  S A=A_$C(B)
 ;
 I $$MSKCOMP D
 .R A:5
 ;
 D DBMSK("A00",A)
 ;
 S LOOP=0
 ;
 I $$MSKCOMP D  I LOOP S SHMSK=SHMSK+1 I SHMSK<8 H .5 G QNMSK1
 .I A'["WGT:" S LOOP=1 Q
 .S A=$P(A,"WGT:",2)
 .D DBMSK("A1",$E(A))
 .I '($E(A)#2) S LOOP=2 Q
 ;
 C PORTN
 D DBMSK("A",A)
 I LOOP Q "-5;NOWEIGHT"
 I A="",SHMSK<2 S SHMSK=SHMSK+1 G QNMSK1
 I A="" Q "-4;NOANSWER"
 ;
 I '$$MSKCOMP S MSK=$P($P(A,$C(13),2),$C(10))
 D DBMSK("MSK",MSK)
 ;
 I $$MSKCOMP D
 .S MSK=$E(A,2,200)
 .S MSK=$$SPA^%L1FRM(MSK)
 .I MSK,MSK["P" S MSK=MSK-$$SPA^%L1FRM($P(MSK,"P",2))
 .D DBMSK("MSK",MSK)
 ;
 I MSK'>0 Q "-5;NOWEIGHT"
 Q $P(MSK,".")_"."_$E($P(MSK,".",2),1,3)
 ;
 ;
TYP(T)
 N CT
 S CT=$P(T,"~")
 I CT'["-",$E(CT)="A" Q "A"
 I CT["-" S CT=$P(CT,"-",2) I $E(CT)="C" Q "C"
 Q ""
 ;
SETTMPQN(TXT) ;
 N CD,LAST,QN
 S CD=$P(TXT,"~",2)
 S QN=$P(TXT,"~",5) I 'QN S QN=1
 S LAST=$$LASTI0^W3HZMST(JB)
 I CD,LAST D
 .S @$$^W4MAIN("TMPQN")@(CD,LAST)=QN
 Q
 ;
DLY ; 
 N DLYMSK
 S DLYMSK=$$DLYMSK^W4PRM
 I DLYMSK="" S DLYMSK=.05
 I DLYMSK H DLYMSK
 Q
 ;
NEWLIN(STAM) ;
 I $P($ZV," V",2)>6.99 Q 1
 Q $G(@$$^W4PRM@("NEWLIN"))
 ;
MSKCOMP() ; 
 N DV S DV=$$^W4MYDVN
 I DV,$G(@$$^W4PRM@("MSKCOMP",DV)) Q ^(DV)
 Q $G(@$$^W4PRM@("MSKCOMP")) 
 ;
DBMSK(RKV,VL) ; 
 Q:'$G(^DB)
 N DV S DV=$$^W4MYDVN
 ;;S ^AA("W4STADD-QNMSK",DV,+$H,$P($H,",",2))=$ZD($H,"DD.MM.YY 24:60")
 ;;S ^AA("W4STADD-QNMSK",DV,+$H,$P($H,",",2),RKV)=VL
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4STAMP
W4STAMP ; [ 08.07.17 11:01 ] [ 09.05.17 11:26 ] [ 24.11.15 09:13 ] 
 D BODY("brown","black")
 Q
BODY(CL1,CL2) ;
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" style=""font-weight:bold"">",!
  W "<tr>"
   I '$$^W4SMALL W "<td width=""40%"">&nbsp;</td>"
   ;;W "<td width=""32%"">&nbsp;</td>"
   W "<td>",!
    W "<span style=""color:"_CL1_""">"_$$^%W1DICT("DEVELOPMENT")_"</span>",!
    W "<span style=""color:"_CL2_""">"
     W $$^%W1DICT("LEVONLN")
    W "</span>",!
    W "&nbsp;&nbsp;&nbsp;"
    W "<span style=""color:"_CL1_""">"_$$^%W1DICT("DEVELOPERTEL")_"</span>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 ;
RSD ;
 W "<td "_$$^%W1ALIGN_">",!
  W "<span style=""color:"_CL1_""">"_$$H2U^%L1FRM(" : weeiy")_"</span>",!
  W "<span style=""color:"_CL2_""">"_$$H2U^%L1FRM("n""ra zeipexhwl` zekxrn .c.y.x ")_"</span>"
  W "&nbsp;&nbsp;&nbsp;"
  W "<span style=""color:"_CL1_""">"_$$H2U^%L1FRM(" 03-5225075 'lh")_"</span>",!
 W "</td>",!
 Q
 
 
 
 
 

W4STLOOP
W4STLOOP(STAM) ; [ 04.01.13 13:00 ] [
 Q $$^W4GL("STLOOP")

W4STOP
W4STOP ;  [ 16.04.09 14:19 ] [ 09.04.09 14:49 ] [
 K @$$^W4GL("FLAG"),@$$^W4GL("zms"),@$$^W4GL("STLOOP")
 K @$$^W4GL("flag"),@$$^W4GL("flagio")
 D KMSF
 D ^W4STOP1
 K @$$^W4GL("P1INIT")@(+$H)
 M @$$^W4GL("FILE1")=@$$^W4GL("FILE")
 Q
KMSF ;
 N (JB,%REM,%ARG)
 D ^W4KILM
 S N="" F  S N=$O(@$$^W4MAIN("TMPS111")@(N)) Q:N=""  D
 .S MSF=$G(@$$^W4MAIN("TMPS111")@(N,"MSF")) Q:'MSF
 .S PID=$G(@$$^W4MAIN("TMPS111")@(N,"PID")) Q:'PID
 .ZSY "kill "_PID
 .D ^W4HTOFF(MSF) H 3
 .ZSY "kill "_PID
 Q

W4STOP1
W4STOP1 ; [ 12.04.09 15:06 ] [ 29.12.06 11:24 ] [ 24.12.06 10:17 ]
 S @$$^W4GL("STLOOP")@("PC")=1 H 3
 N %NMF K @$$^W4GL("flag"),@$$^W4GL("flagio"),@$$^W4GL("STLOOP"),@$$^W4GL("FLAG"),@$$^W4GL("zms")
 S %NMF="l1ss"_$J
 I $$^%L1ZOS(2,%NMF)
 ZSY "ps -fC mumps > "_%NMF
 C %NMF O %NMF:(REWIND:READONLY)
 F  U %NMF R A Q:$ZEOF  D
 .S PID=$TR($E(A,10,14)," ","") Q:'PID  Q:PID=$J
 .I PID=$P($G(@$$^W4GL("VESoTCP")@(0,"In Use",9000)),";",3) Q
 .ZSY "kill "_PID
 C %NMF:(DELETE)
 H 1 Q

W4STREET
W4STREET ; [ 17.06.26 11:00 ] [ 10.12.25 11:01 ] [ 09.12.25 14:46 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 D ^%W1HD("CITYSTREETSTABLE")
 W "<p></p>",!
 ;
 D TMP
 D GLIR
 ;
 D ^W4SBMBCK 
 W "<p></p>",!
 ;
 D ABCIR
 ;
 S CITY=+$G(%ARG("CITY"))
 ;
 W "<select id=""city"" onChange=""ChangeCity()"" >",!  
  W "<option value=""0"">-- "_$$^%W1DICT("CHOICE_CITY")_" --</option>",!
  S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
  .N A S A=$G(^(N))
  .S K=$P(A,"\",2) Q:'K
  .S A=$P(A,"\")
  .S CITY1=$$H2U^%L1FRM(A)
  .W "<option value="""_K_""" "
  .I K=CITY W " selected=""selected"" "
  .W ">"_CITY1_"</option>",!
 W "</select>",!
 I 'CITY Q 
 ;
 K @TMP
 I $$SPA^%L1FRM($G(%ARG("CITY")))="" Q 
 S CITY=$$SPA^%L1FRM(%ARG("CITY"))
 S CITY1=$G(@GLIR@(CITY))
 ;
 W "<p></p>",!
 W $$^%W1DICT("NEWSTREET")_$$NBSP^%L1FRM(2)
 W "<input type=""text"" id=""newstreet"" size=""40"" />"_$$NBSP^%L1FRM(2)
 W "<button "_$$^W4TOUCH_"=""AddStreet()"" >"_$$^%W1DICT("ADD")_"</button>",!
 W "<p></p>",!
 ;
 W "<table id=""TbStreet"" width=""40%"">",!
  W "<tr>"
   W "<th width=""5%"">&nbsp;</th>"
   W "<th>"
    W $$^%W1DICT("STREETNAME") 
   W "</th>" 
   W "<th>"
    W $$^%W1DICT("CHANGED") 
   W "</th>" 
 W "</tr>",!
 ;
 D GLST
 ;
 S CITYI=$$INVH^%L1FRM(CITY1)
 ;
 ;;S ^AA("W4STREET","CITY1")=CITY1
 ;;S ^AA("W4STREET","CITYI")=CITYI
 ;
 D TMPS K @TMPS
 S ST="",SH=0 F  S ST=$O(@GLST@(CITYI,ST)) Q:ST=""  D
 .S STI=$$INVH^%L1FRM(ST)
 .S SH=SH+1
 .S @TMPS@(SH)=CITYI_"~"_ST
 .W "<tr style=""height:30px"">"
 . W "<td><button "_$$^W4TOUCH_"=""DelStreet('"_SH_"')"" style=""height:"_$$^W4KF(25)_";width:"_$$^W4KF(25)_";""><hr style=""color:red;font-weight:bold""></button></td>"
 . W "<td align=""center""><input type=""text"" size=""40"" id=""street"_SH_""" value="""_$$H2U^%L1FRM(STI)_""" onChange=""StreetChanged('"_SH_"')"" /></td>"
 . W "<td width=""5%"" align=""center""><input type=""checkbox"" readonly=""readonly"" id=""chn"_SH_""" /></td>"
 .W "</tr>"
 ;
 W "</table>",!
 W "<p></p>",!
 D ^W4SBMBCK
 W "</div>",!
 Q
 ;
 ;
ABCIR ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S GL=$$^W4GL("P1IR")
 N N,NP,NM,J
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .I N<1 Q
 .S NP=$G(^(N)) Q:NP=""
 .S NM=$$SPA^%L1FRM(NP)
 .S NM=$$INV^%L1FRM(NM)
 .S NM=$E(NM,1,10)
 .S NM=NM_$J("",10-$L(NM))
 .F J=1:1 Q:'$D(@TMP@(NM_J))
 .S @TMP@(NM_J)=NP_"\"_N
 ;
 Q
 ;
 ;
GLIR ;
 S GLIR=$$^W4GL("P1IR")
 Q
 ;
GLST ;
 S GLST=$$^W4GL("P1STREET")_"(""IS"")"
 Q
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
TMPS ;
 S TMPS=$$^W4MAIN("TMPS")
 Q
 ;
DEL(PRM) ;
 N CITY,CITYI,STR
 S CITY=$P(PRM,"~")
 S STR=$P(PRM,"~",2)
 S STR=$$CNWEB^%L1FRM(STR)
 ;;S ^AA("W4STREET-DEL","PRM")=PRM
 ;;S ^AA("W4STREET-DEL","STR")=STR
 I CITY="" Q "NOTCITY"
 I STR="" Q "NOTSTREET"
 N GLIR D GLIR
 N GLST D GLST
 S CITY1=$G(@GLIR@(CITY))
 S CITYI=$$INVH^%L1FRM(CITY1)
 ;;S ^AA("W4STREET-DEL","CITYI")=CITYI
 K @GLST@(CITYI,STR)
 Q 1
 ;
 ;
SAVE(PRM,ADD) ;
 N CITY,CITY1,CITYI,SH,STR,CITYOLD,STROLD
 S SH=$P(PRM,"~") I 'SH,'$G(ADD) Q "NOTSH"
 S CITY=$P(PRM,"~",2) I CITY<1 Q "NOTCITY"
 S STR=$P(PRM,"~",3)
 S STR=$$CNWEB^%L1FRM(STR)
 I STR="" Q "NOTSTREET"
 N GLIR D GLIR
 N GLST D GLST
 S CITY1=$G(@GLIR@(CITY))
 S CITYI=$$INVH^%L1FRM(CITY1)
 D TMPS
 ;
 I '$G(ADD) D
 .N OLD S OLD=$G(@TMPS@(SH))
 .S CITYOLD=$P(OLD,"~")
 .S STROLD=$P(OLD,"~",2)
 .I $L(CITYOLD),$L(STROLD) D
 ..K @GLST@(CITYOLD,STROLD)
 ;
 S @GLST@(CITYI,STR)=$$INVH^%L1FRM(STR)
 Q 1
 ;
 ;
SAVEND ;
 D TMPS K @TMPS
 D TMP K @TMP
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4STRIN
W4STRIN ; [ 18.12.18 06:36 ] [ 11.06.18 15:04 ] [ 03.05.18 14:07 ] 
 S MG=$G(MG)
 ;;S ^LV("W4STRIN","AUTHNO")=$G(AUTHNO)
 N N,N1 I $L(MG) S STRIN="A"_$TR(MG,")","=")
 I '$L(MG) S STRIN="B"_$P(VIZ," ",1)
 ;--- SUGIS="03" - MEULEZET, 51 - ZICUJ
FORW S SUGIS=$S(SUGIS=1:"01",SUGIS=3:"51",SUGIS=5:"03",1:$TR($J(SUGIS,2)," ",0))
 S DATT="" I $G(MG)'="CHIP",$G(YYMM) S DATT=$E(YYMM,3,4)_$E(YYMM,1,2)
 S STRIN=STRIN_"C"_PAY I $G(KOHAV) S STRIN=STRIN_"*"_KOHAV
 S STRIN=STRIN_"D"_SUGIS_SUGAS_SUGMTB_$S($L(MG):"00",1:SUGBC) ;-- SUGBC - KOD ISKA (00 - MG, 51 - YADANIT)
 S STRIN=STRIN_"E"_$TR($J(AUTHNO,7)," ",0)
 I P1,PN,PC S P1=PAY-(PN*PC)
 I P1'=0 S STRIN=STRIN_"F"_P1
 I PC'=0 S STRIN=STRIN_"G"_PC
 I PN'=0 S STRIN=STRIN_"H"_PN
AT S STRIN=STRIN_"I"_KUP
 ;-- J1 - LELO SHEILTA, J4 -SHEILTA OTOMATIT
 ;-- SHVSH - LEHITKASHER DEREH HAMAHSEV ( LEFI DRISHA )
 ;--
 S STRIN=STRIN_$S($G(%ARG("J5")):"J5",SUGIS="03":"J1",1:"J4")
 I $L($G(MOAD)) S STRIN=STRIN_"Q"_MOAD
 I $L($G(MOADTH)) S STRIN=STRIN_"R"_MOADTH
 I $G(DATT) S STRIN=STRIN_"T"_DATT ;(900+$P) ;*** 28.05.02
 ;----- ASH571
 I $G(ASHCVV2) S STRIN=STRIN_"U"_ASHCVV2
 I $G(ASHTZ) S STRIN=STRIN_"Y"_ASHTZ
 I $G(ASH4) S STRIN=STRIN_"W"_$$HBR^%L1FRM($G(ASH4),4)
 ;;S STRIN=STRIN_"X"_$$^W4MYDVN_"-"_+$G(HZM)_"-"_$P($H,",",2)
 D PUT^%W3DEB("W4STRIN","STRIN=STRIN")
 Q
 
 
 
 
 
 
 
 

W4STRING
W4STRING(CODDOC,NOM) ; [ 15.04.12 13:15 ] [ 11.06.11 19:46 ] [ 15.01.11 14:27 ]
 N KLIN S KLIN=$$^W4KLIN
 I $G(CODDOC)=""!'NOM Q ""
 Q $G(@KLIN@(CODDOC,+NOM))
 ;
LK(CODDOC,NOM)
 N LK0 S LK0=$$W4STRING(CODDOC,+NOM)
 N LK S LK=$P(LK0,"+")
 S LK=$P(LK,"W")
 S LK=$P(LK,"^")
 Q LK

W4STRINW
W4STRINW(STRIN,UIDBIT) ; [ 05.12.25 14:52 ] [ 03.08.25 11:28 ] [ 16.06.25 12:26 ] 
 N (STRIN,UIDBIT,JB,%ARG,%REM)
 D DB1^W4EMVCON(+$H,$P($H,",",2),"A-W4STRINW","BG",$TR($J("",40)," ","-"))
 D DB1^W4EMVCON(+$H,$P($H,",",2),"A-W4STRINW","STRIN",STRIN)
 ;
 S MG=$$GET(STRIN,"A")
 S VIZ=$$GET(STRIN,"B")
 S PAY=$$GET(STRIN,"C")
 S KOHAV=$P(PAY,"*",2),PAY=$P(PAY,"*")
 S SUG=$$GET(STRIN,"D")
 S SUGIS=$E(SUG,1,2)
 S SUGAS=$E(SUG,3)
 S SUGMTB=$E(SUG,4)
 S SUGBC=$E(SUG,5,6)
 S AUTHNO=$$GET(STRIN,"E")
 I 'AUTHNO S AUTHNO=""
 S P1=$$GET(STRIN,"F")
 S PC=$$GET(STRIN,"G")
 S PN=$$GET(STRIN,"H")
 S KUP=$$GET(STRIN,"I")
 S PRMJ=$$GET(STRIN,"J")
 S MOAD=$$GET(STRIN,"Q")
 S DATT=$$GET(STRIN,"T") ; -- MMYY
 S ASHCVV2=$$GET(STRIN,"U")
 S UN=$$GET(STRIN,"X")
 S ASHTZ=$$GET(STRIN,"Y")
 S ASH4=$$GET(STRIN,"W")
 ;
 S ARM=0
 I $G(VIZ) S ARM=1
 ;
 S ZIP=$$GET^W4TMPPAY(3,"ZIP")
 ;
 D TMPIN
 K @TMPIN
 S MG=$G(MG)
 ;
 I $G(UIDBIT) D  I $P(RES,"~",2)="000" Q RES
 .D CANCEL(UIDBIT)
 .I $P(RES,"~",2)'="000" S UIDBIT="",RES="" K OUT
 ;
 I $$EMV^W4PRM=1!($$EMV^W4PRM=2) D EMV D  Q RES
 .N RES0 S RES0=$$^W4EMVCON(ST,STOUT,$G(VUID))
 .
 .I $G(OUT("UID")),$G(OUT("VUID")),$G(VUID)'="",VUID'=$G(OUT("VUID")) D  Q
 ..H 1
 ..D CANCEL(OUT("UID"))
 ..I $P(RES,"~",1,2)'="OK~000" S RES=RES0 Q
 ..S RES="OK~992~VUID IS WRONG" Q
 .
 .S RES=RES0
 ;
 I $$EMV^W4PRM=3 D PREPEMV Q $$^W4EMV3(PAY,SUGIS,SUGAS,MG,VIZ,DATT,P1,PN,PC,ASHTZ,ASHCVV2,AUTHNO)
 I $$EMV^W4PRM=4 D PREPEMV Q $$^W4EMV4(PAY,SUGIS,SUGAS,MG,VIZ,DATT,P1,PN,PC,ASHTZ,ASHCVV2,AUTHNO)
 ;
 ; ----------------------------------- NO EMV ---------------------------------
 I $L(MG) D
 .D XML("Track2",MG)
 .D XML("CardNum","")
 ;
 I '$L(MG) D
 .D XML("Track2","")
 .D XML("CardNum",VIZ)
 ;
 D XML("ExpDate_YYMM",$E(DATT,3,4)_$E(DATT,1,2))
 ;
 ;--- SUGIS="03" - MEULEZET, 51 - ZICUJ
FORW ;
 ;
 D XML("Amount",PAY)
 D XML("CochavAmount",$G(KOHAV))
 D XML("TransactionType",SUGIS)
 D XML("CreditTerms",SUGAS)
 D XML("Currency",SUGMTB)
 D XML("AuthNum",AUTHNO)
 D XML("Code",SUGBC)
 ;
 D XML("FirstAmount",$S(P1:P1,1:""))
 D XML("NonFirstAmount",$S(PC:PC,1:""))
 D XML("NumOfPayment",$S(PN:PN,1:""))
 ;
 D XML("SapakMutav","")
 D XML("SapakMutavNo","")
 D XML("UniqNum",UN)
 D XML("ClubCode",MOAD)
 ;
AT D XML("UniqueTransactionNumber_SixDigits","") ; -- WAS UniqTr..
 ;-- J1 - LELO SHEILTA, J4 -SHEILTA OTOMATIT
 ;
 I 'PRMJ S PRMJ=4
 ;
 D XML("ParamJ",PRMJ)
 ;;D XML("ParamJ",4) ; -- ALWAYS CONNECT
 ;
 ;;I $L($G(MOADTH)) S STRIN=STRIN_"R"_MOADTH
 ;
 D XML("AddData","")
 D XML("Eci","")
 D XML("Cvv2",ASHCVV2)
 D XML("Id",ASHTZ)
 D XML("CavvUcaf","")
 D XML("Last4Digits",ASH4)
 D XML("TransactionCurrency","")
 D XML("TransactionAmount","")
 ;
 D CRSTRIN
 Q $$^W4SHVCON("AuthCreditCardFull")
 ;
XML(TAG,VL) ;
 D TMPIN
 N IND
 S IND=$O(@TMPIN@(99999),-1)+1
 S @TMPIN@(IND)="<"_TAG_">"_VL_"</"_TAG_">"
 Q
 ;
TMPIN ;
 S TMPIN=$$^W4MAIN("TMPIN")
 Q
 ;
HEAD(FUNC)
 S FL=$$PRM("PATHINTIN")_"intin"_$$^W4MYDVN ;JB
 C FL:DELETE
 O FL:(WRITE:NEWVERSION:REWIND)
 U FL
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 ;
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 ;
 W " <soap:Body>",!
 W "   <"_FUNC_" xmlns=""http://shva.co.il/xmlwebservices/"">",!
 W "       <MerchantNumber>"_$$PRM("MASOF")_"</MerchantNumber>",!
 W "         <UserName>"_$$PRM("USERNAME")_"</UserName>",!
 W "         <Password>"_$$PRM("PASSWORD")_"</Password>",!
 Q
 ;
 ;
CRSTRIN ;
 ;
 N FL
 D HEAD("AuthCreditCardFull")
 W "         <TransactionDate_yyyyMMdd>20"_$ZD($H,"YYMMDD")_"</TransactionDate_yyyyMMdd>",!
 W "         <TransactionTime_HHmm>"_$ZD($H,"2460")_"</TransactionTime_HHmm>",!
 ;
 N I
 F I=1:1 Q:'$D(@TMPIN@(I))  D
 .W ^(I),!
 ;
 W "   </AuthCreditCardFull>",!
 W "  </soap:Body>",!
 W "</soap:Envelope>",!
 ;
 C FL
 Q
 ;
 ;
GET(STRIN,LET) ;
 N RKV S RKV=$P(STRIN,LET,2)
 N J,J1 S J1=0 F J=1:1:$L(RKV) Q:$E(RKV,J)?1U  S J1=J1+1
 Q $E(RKV,1,J1)
 ;
PRM(PRM) ; 
 I $G(%ARG("J5")) Q $G(^[$$^W3MAIN]P1PRM("ASH",PRM))
 Q $G(@$$^W4PRM@("ASH",PRM))
 ;
TR(VL,LN) ;
 S VL=$E(VL,1,LN)
 S VL=$TR($J(VL,LN)," ",0)
 Q VL
 ;
 ;
EMV ; 
 ; -- IN :
 ; SUGIS,SUGAS,PAY,KOHAV,P1,PC,PN,DATT,ASHTZ
 ;-- OU :
 ; VUID
 ;
 D PREPEMV
 ;
 I VIZ D
 .S $E(STOUT,5,23)=$$TR(VIZ,19)
 
 S VUID=$$VUID
 
 I SUGIS=51,$G(UIDBIT) D  Q
 .S ST=$$CANC(VUID,UIDBIT)
 
 S ST=$$EMVDIR^W4PRM_"SPIShell "
 I $D(EMV3) S ST=ST_" --slave-mode " 
 S ST=ST_"transaction --amount="_PAY
 I SUGIS=51 S ST=ST_" --refund"
 I $G(ASHTZ) S ST=ST_" --holder-id="_ASHTZ
 I $G(AUTHNO) S ST=ST_" --auth-num="_AUTHNO
 I $G(ZIP) S ST=ST_" --zip="_ZIP
 S ST=ST_" --vuid="_VUID
 S ST=ST_" --wait=40"
 I $$CATEST^W4PRM,$$EMVADR^W4PRM S ST=ST_" --proc-ip "_$$EMVADR^W4PRM
 
 I SUGAS=8 D  ; --- PAYMENTS
 .I PN,P1,PC D
 ..S ST=ST_" --payments="_(PN+1)
 ..S ST=ST_" --first-payment="_P1
 ;
 I SUGAS=6,PC D  ; -- CREDIT PAYMENT
 .S ST=ST_" --credit-payments="_PN
 ;
 N MYDVN S MYDVN=$$^W4MYDVN
 ;
 I VIZ D  ; -- NO TRACK2
 .S ST=ST_" --cnp-type=phone"
 .S ST=ST_" --pan="_VIZ
 .I ASHCVV2 S ST=ST_" --cvv="_ASHCVV2
 .I DATT="" S DATT=1249
 .S ST=ST_" --exp="_$E(DATT,3,4)_$E(DATT,1,2)
 .I $D(EMV3),$G(TRCNMB) D
 ..S ST=ST_" --system-trace="""_TRCNMB_""""
 ;
ENDEMV S MYDVN=$$^W4MYDVN I '$G(ARM) D
 .I $$EMV^W4PRM=2,$L(MG) S ST=ST_" --msr-data="_MG Q
 .N EMVNUM S ENVNUM=$$EMVNUM^W4POSEMV(MYDVN)
 .I ENVNUM'="",'$G(VIZ)!($$EMV^W4PRM=1) S ST=ST_" --pinpad="_ENVNUM
 ;
 S ST=ST_" --output-file="_$$OUTFILE(VUID)
 S ST=ST_" 2>/dev/null"
 Q
 ;
 ; 
VUID(STAM) ; 
 N VUID
 N HZ S HZ="0000000000"
 I $$GETP^%W1PRM("HZM") D
 .S HZ=$$GETP^%W1PRM("HZM")
 .S HZ=$TR($J(HZ,10)," ",0)
 S VUID=HZ_$$^W4MYDVN_($O(@$$^W4GL("TRAN")@(901,99999),-1)+1)_$P($H,",",2)_$R(1000)
 Q VUID
 ;
 ;
OUTFILE(VUID) ;
 Q $$DIROU^W4EMVCON_"result"_$$^W4MYDVN_"_"_$G(VUID)_".json"
 ;
 ;
PREPEMV ; 
 I '$G(DATT) S DATT="0000"
 I $D(UIDBIT),DATT="0000" S DATT=1249
 S VIZ=$G(VIZ)
 S MG=$G(MG)
 ;
 I $G(UIDBIT) S STOUT=$$GETP^%W1PRM("STOUTBIT")
 ;
 S $E(STOUT,61,62)=$$TR(SUGIS,2)
 S $E(STOUT,63)=$E(SUGAS)
 S $E(STOUT,36,43)=$$TR(PAY,8)
 S $E(STOUT,52,59)=$$TR($G(KOHAV),8)
 S $E(STOUT,78,85)=$$TR($G(P1),8)
 S $E(STOUT,86,93)=$$TR($G(PC),8)
 S $E(STOUT,94,95)=$$TR($G(PN),2)
 S $E(STOUT,30,33)=$$TR(DATT,4)
 ;
 I VIZ D
 .S $E(STOUT,5,23)=$$TR(VIZ,19)
 Q
 ;
 ;
CANCEL(UIDBIT,AUTH)
 N ST
 I $$EMV^W4PRM=4 D CANCEL4(UIDBIT,$$GETP^%W1PRM("HZM")) Q
 ;
 N VUID S VUID=$$VUID
 S ST=$$CANC(VUID,UIDBIT)
 ;
 D PREPEMV
 I $G(VIZ) D
 .S $E(STOUT,5,23)=$$TR(VIZ,19)
 S RES=$$^W4EMVCON(ST,$G(STOUT),$G(VUID))
 Q
 ;
 ;
CANC(VUID,UIDBIT) 
 N ST
 S ST=$$EMVDIR^W4PRM_"SPIShell cancel --original-uid="_UIDBIT
 I $G(AUTH) S ST=ST_" --auth-num="_AUTH
 S ST=ST_" --wait=40"
 I $G(VUID) S ST=ST_" --vuid="_VUID ; -- ???
 I $$CATEST^W4PRM,$$EMVADR^W4PRM S ST=ST_" --proc-ip "_$$EMVADR^W4PRM
 S ST=ST_" --output-file="_$$OUTFILE(VUID)
 S ST=ST_" 2>/dev/null"
 Q ST
 ;
 ;
CANCEL4(UIDBIT,HZM) ;
 N DZ S DZ=$$^W4DZ
 N DV ;; S DV=$$^W4MYDVN ; --> 13/08/24
 S DV=$P(UIDBIT,"_",2)
 N SEC S SEC=$P($H,",",2)
 N VUID S VUID=DZ_"_"_DV_"_"_SEC_"_"_HZM
 N PARAM S PARAM=VUID_";"_$G(UIDBIT)_";"_DV
 ;
 ;;S STOUT=$$GETP^%W1PRM("STOUTBIT")
 D PREPEMV
 ;
 N RS S RS=$$DOCMD^W4EMV4("REFUND",PARAM,HZM)
 ;
 I $G(OUT("VIZ")) D
 .S $E(STOUT,5,23)=$$TR($G(OUT("VIZ")),19)
 I $L($G(OUT("AUTHNO"))) S $E(STOUT,71,77)=$$TR($G(OUT("AUTHNO")),7)
 I $L($G(OUT("NMCARD"))) S $E(STOUT,104,118)=$$HBR^%L1FRM($G(OUT("NMCARD")),15)
 ;
 S STA=OUT("STA")
 S MSG=$G(OUT("RESMSG"))
 ;
 I $$^W4AUTHCD(STA) D
 .S MSG=$TR($G(OUT("SAPAKTEL"))_"^"_$G(OUT("SAPAK")),"""","")
 ;
 S RES="OK~"_STA_"~"_MSG_"~"_STOUT_"~"_$G(UIDBIT)_"~"_$G(OUT("UID"))_"~"_$G(VUID)
 Q 
 
 
 
 
 
 
 
 
 
 
 

W4SUGMS
W4SUGMS(STAM) ; [ 23.05.09 10:40 ] [
 Q $$^W4GL("LEVSUGMS")

W4SUGS
W4SUGS ; [ 23.12.14 08:53 ] [ 07.10.13 12:41 ] [ 01.10.13 15:37 ] [
 Q
BGCOLOR(SUGS) ;
 I '$G(SUGS) Q 0
 Q $P(@$$^W4GL("SUGS")@(SUGS,1),"\")
 ;
FGCOLOR(SUGS) ;
 I '$G(SUGS) Q 0
 Q $P(@$$^W4GL("SUGS")@(SUGS,1),"\",2)
 ;
SOAD(NMB) ;
 I $G(NMB)="" Q 0
 N SUGS S SUGS=$$SUGS^W4L(NMB)
 I 'SUGS Q 0
 Q $P(@$$^W4GL("SUGS")@(SUGS,1),"\",4)
 ;
BACKTO(NMB) ;
 I $G(NMB)="" Q 0
 N SUGS S SUGS=$$SUGS^W4L(NMB)
 I 'SUGS Q 0
 Q $P(@$$^W4GL("SUGS")@(SUGS,1),"\",5)
 ;
ASKCUST(NMB) ;
 I $G(NMB)="" Q 0
 N SUGS S SUGS=$$SUGS^W4L(NMB)
 I 'SUGS Q 0
 Q +$P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",6)
 ;
LL(NMB) ;
 I $G(NMB)="" Q 0
 N SUGS S SUGS=$$SUGS^W4L(NMB)
 I 'SUGS Q 0
 Q +$P($G(@$$^W4GL("SUGS")@(SUGS,1)),"\",7)
 ;

W4SUM
W4SUM ; SIKUM JOMI CASPI [ 03.08.26 15:28 ] [ 03.06.26 15:51 ] [ 14.04.26 14:41 ] 
 I $$^W4LKH D ^W4LKHSUM(DAT) Q
 ;
 ;;S ^AA("W4SUM","DAT")=DAT
 N (JB,%ARG,%REM,DAT,SGIRATJOM,MEK,GLBL,HZ0,HZ1,DOCH,SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSDW,SMSH,SMSHT,SHZM,SUMMTB,P1X,HAVT,SUMTAW,SUMATAW,STAW,LLQNS,LLSUMS,LLQNM,LLSUMM,LLQNT,LLSUMT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 S (DSUMMSD,DSUMMSL,DSUMDLP,DSUMAMSD,DSUMAMSL,DSUMTAW,DSUMATAW,DSUMADLP,DSSOAD,DSMSH,DHAVT,CAOUT,CAFUT)=0
 ;;M ^P1X=P1X ;
 S DD=$$^%L1DC(DAT,4),KUP=901,NZ=0
 ;
 D GLBLTMP ; --> GLBL=TEMP
 I $D(SGIRATJOM) S NZ=$G(@$$^W4GL("Z"))+1
 ;
 K @GLBL
 ;
 S P1HDD=$$^W4GL("P1H")_"(DD)"
 ;
 S DD1=DD F  S DD1=$O(@$$^W4GL("P1H")@(DD1)) Q:DD1=""  D
 .N HZ S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DD1,HZ)) Q:HZ=""  D
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  I N D
 ...N A S A=$G(^(N))
 ...N SUM S SUM=$P(A,"*",7)
 ...N DTCA S DTCA=$P(A,"*",29)
 ...I DTCA<(6*3600) S DTCA=DTCA-1
 ...I +DTCA'=DD Q
 ...S CAFUT=CAFUT+SUM
 ...S CAFUT(1)=$G(CAFUT(1))+1
 ;
 N HZ S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DD,HZ)) Q:HZ=""  D
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  I N D
 ..N A S A=$G(^(N))
 ..N SUM S SUM=$P(A,"*",7)
 ..;
 ..I '$P(A,"*",2) D
 ...S CAOUT=CAOUT+SUM
 ...S CAOUT(1)=$G(CAOUT(1))+1
 ;
 S @GLBL@("CAFUT",1)=CAFUT
 S @GLBL@("CAFUT#",1)=$G(CAFUT(1))
 S @GLBL@("CAOUT",1)=CAOUT
 S @GLBL@("CAOUT#",1)=$G(CAOUT(1))
 K CAFUT,CAOUT
 ;
 I $D(SGIRATJOM) D
 .K @$$^W4MAIN("P1LKHZ")
 .K @P1HDD@(0)
 .K @P1HDD@("ycg")
 ;
 ;------------ SGIRAT HESHB-T PTUCHOT
 I $D(SGIRATJOM),$G(DOCH)'="X" S HZM="" D
 .F  S HZM=$O(@P1HDD@(HZM)) Q:HZM=""  I '$$^W4CLOSE(HZM) D
 ..N TRH,DTHZ S TRH=$$TRH^W4HZMST(HZM),DTHZ=$$^%L1DC(TRH,3)
 ..N SHAA S SHAA=$$SHAA^W4HZMST(HZM)
 ..I SHAA<$$SHAAZ^W4PRM S DTHZ=DTHZ-1
 ..I $$HZM^W4MSL(HZM),DTHZ>P1DZ,$$NOCLDLVZ^W4PRM,$$MZM^W4HZMST(HZM)<10 Q
 ..D CLOSEORD(HZM)
 ;
 I $D(SGIRATJOM),$G(DOCH)="Z" D ^W4CLPLU(P1DZ,P1DZ) ;-- TIKUN DOCH PRITIM
 ;
 ;
 K TIPHZM S FIRSTHZ=1
 K TAS,MINAS,MIN2AS,BITAS
 S SSHULA=0,TIPASNO=0
 ;
 D  ; --- DOCUMENTS FROM ^W4DOC
 .Q:$D(P1X("SHUL"))
 .Q:$D(P1X("PART"))
 .Q:$D(P1X("ULAM"))
 .N DT
 .S DT=$$^%L1DC(DAT,4)
 .D DOCSUM^W4LKHSUM(DT)
 ;
 ;--------------------------------- HAZM-T --------------------------------
 ;
 I $$NOMAM D
 .N A S A=$$^W4DMAM(DD,DD)
 .S @GLBL@("MAM",1)=+A
 .S @GLBL@("CMAM",1)=$P(A,"\",2)
 .S @GLBL@("NOMAM",1)=$P(A,"\",3)
 ;
 S (HZ,HZ0,HZ1)=""
 ;
 N DDHZ S DDHZ=""
 F  S HZ=$O(@P1HDD@(HZ)) Q:HZ=""  D
 .I $$^W4CLOSE(HZ) S HZ1=HZ,DDHZ=$G(@P1HDD@(HZ))
 .
 .I '$$Z24^W4PRM,$D(SGIRATJOM),$$SIGNZ(DD,HZ) D  Q
 ..K @GLBL,SUMMTB K @$$^W4MAIN("P1LKHZ")
 ..D ^W4SUMZRO
 ..S FIRSTHZ=1
 .
 .I $D(SGIRATJOM),DDHZ[",Z" Q
 .I $D(SGIRATJOM),$G(DOCH)'="Z",DDHZ[",Y" Q
 .
 .D HISHUV(HZ) ; ----- !!!!
 ;
 ;
 I '$$Z24^W4PRM,HZ1,NZ,'$$SIGNZ(DD,HZ1),$D(SGIRATJOM),$G(DOCH)="Z" D
 .S ^(HZ1)=$G(@P1HDD@(HZ1))_",^"
 ;
 I '$$Z24^W4PRM,HZ1,$D(SGIRATJOM),'$$SIGNY(DD,HZ1),'$$SIGNZ(DD,HZ1),$G(DOCH)="Y" D
 .S ^(HZ1)=$G(@P1HDD@(HZ1))_",?"
 ;
 I $D(SGIRATJOM) D
 .D ^%S2GLSV($$^W4GL("P1H")_"("_DD_")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HBI")_"("_DD_")",$$^W4FGIB)
 .D ^%S2GLSV($$^W4GL("P1HB2I")_"("_DD_")",$$^W4FGIB)
 ;
TIP ;
 ;---------- KABALAT TIP MEZUMAN MI MELZARIM FOR MASKORET
 ;
 I NZ I $D(@$$^W4GL("TIPMZ")@(DD_"^"_NZ)) D TIPMZNZ(DD_"^"_NZ) G MISC ;----------- X,Z
 I 'NZ D TIPMZ(DD) ;--------------- DOCH KASPI RAGIL - HISHUV TIPIM
 ;
MISC ;
 ;-------------------------- KABALOT --------------------------
 D CBHMK(DAT)
 ;
 S @GLBL@("TIME",$P($ZG,"/",$L($ZG,"/")))=$$^%L1DC($H,1)_"\"_$$T^%L1TIME($H)
 S @GLBL=$$^%L1DC($H,1)_"\"_$$T^%L1TIME($H)_"^"
 ;
 ;--------------------- HESHBONIOT FOR HASHAVSEVET
 D FRMHSVH(DAT)
 ;
 K @$$^W4GL("HSV")@(DAT,KUP)
 D ^%S2GLSV($$^W4GL("HSV")_"("""_DAT_""","""_KUP_""")",$$^W4FGIB,"K")
 ;
 S MAC1=$$BG^W4MAIN("TEMP")_"""HSV"")"
 S MAC2=$$^W4GL("HSV")_"(DAT,KUP)"
 D ^%S1GC1 K @$$^W4MAIN("TEMP")@("HSV")
 D ^%S2GLSV($$^W4GL("HSV")_"("""_DAT_""","""_KUP_""")",$$^W4FGIB)
 ;
 ; ----------------------- ^TEMP ---> ^TOT ( OR ^Z1 )
 D GLBL($G(DOCH),DAT) K @GLBL
 ;
 K @$$^W4MAIN("TEMP")@("HZM")
 L +@GLBL:1
 S MAC1=$$^W4MAIN("TEMP"),MAC2=GLBL D ^%S1GC1 K @$$^W4MAIN("TEMP")
 ;
 S @GLBL@("MSD",1)=DSUMMSD,@GLBL@("AMSD",1)=DSUMAMSD
 S @GLBL@("MSL",1)=DSUMMSL,@GLBL@("AMSL",1)=DSUMAMSL
 S @GLBL@("SUMDLP",1)=DSUMDLP,@GLBL@("SUMADLP",1)=DSUMADLP
 L -@GLBL
 ;
 D V2G^W4SUMZRO ; SUMMSD,SUMMSL,... --> VRMSUM
 Q
 ;
 ;
CLOSEORD(HZM) ;
 N DDD,SSS
 S DDD=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 S SSS=$$SHAA^W4HZMST(HZM)
 ;
 I $G(DOCH)="Z" D
 .I $G(@$$^W4PRM@("MM")),$$MSL^W4HZMST(HZM) D
 ..I '($$CLOSE^W4HZMST(HZM)#2),DDD'>DD!(DDD=DD+1&((SSS<$$SHAAZ^W4PRM)!$$^W4SHAAZ)) D
 ...D PLU^W4HZMPC
 ...S @$$^W4ORD@(HZM,"S")=$G(@$$^W4ORD@(HZM,"S"))+1
 ;
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 ;;I $$MSL^W4HZMST(HZM),DDD>P1DZ,SSS'<$$SHAAZ^W4PRM Q
 ;
 I 'TSHL,'$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 
 I ITRA>.1!(ITRA<-.1)!'$$NCAB^W4HZMST(HZM),$$^W4CLOSE(HZM) D  ; -- BITUL SGIRA
 .S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)#2
 
 I $$^W4CLOSE(HZM) Q
 I ITRA>.1!(ITRA<-.1) Q
 ;
 I TSHL D SGHZ(HZM)
 ;
 I $D(@$$^W4ORD@(HZM,"ETHB"))#2,'$$^W4CLOSE(HZM) D
 .S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)+2
 ;
 I $G(@$$^W4ORD@(HZM,"ETHB2")),$$CLOSE^W4HZMST(HZM)<4 D
 .S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)+4
 ;
 Q
 ;
 ;
TIPMZ(DD) ;
 N J0,J1,TIPMZ,TIPMZ1
 S J0=DD_"^",TIPMZ=0
 F  S J0=$O(@$$^W4GL("TIPMZ")@(J0)) Q:J0=""  I $P(J0,"^")=DD D
 .S J1="" F  S J1=$O(@$$^W4GL("TIPMZ")@(J0,J1)) Q:J1=""  D
 ..S TIPMZ1=$G(^(J1))
 ..S TIPMZ=TIPMZ+TIPMZ1
 ..S @GLBL@("TS",1)=$G(@GLBL@("TS",1))+TIPMZ1
 ..S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIPMZ1
 ..S @GLBL@("T",1,J1)=$G(@GLBL@("T",1,J1))+TIPMZ1
 ..
 ..I '$$TIPNO^W4TIPPD(DD) D
 ...S @GLBL@("FS",1)=$G(@GLBL@("FS",1))+TIPMZ1
 ...S @GLBL@("F",1)=$G(@GLBL@("F",1))+TIPMZ1
 ...S @GLBL@("F",1,J1)=$G(@GLBL@("F",1,J1))+TIPMZ1
 ...Q:'$$^W4TIPPD(DD)
 ...S:'$G(TAWMSD) SUMMSD=SUMMSD+TIPMZ1,DSUMMSD=DSUMMSD+TIPMZ1
 ...S:$G(TAWMSD) SUMTAW=SUMTAW+TIPMZ1,DSUMTAW=DSUMTAW+TIPMZ1
 .
 .S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+TIPMZ
 Q
 ;
 ;
TIPMZNZ(IND) ;
 N N S N="" F  S N=$O(@$$^W4GL("TIPMZ")@(IND,N)) Q:N=""  D
 .N TIPMZ,TIM,MESHAA1,MESHAA2
 .S TIPMZ=$G(@$$^W4GL("TIPMZ")@(IND,N))
 .
 .I $G(DOCH)="Z" S TIPMZ=+TIPMZ
 .S TIM=$P($H,",",2)\3600
 .S MESHAA1=$G(@$$^W4PRM@("TIPDAY","MESHAA1"))
 .S MESHAA2=$G(@$$^W4PRM@("TIPDAY","MESHAA2"))
 .N TIPMZY S TIPMZY=0
 .
 .I $G(DOCH)'="Z" D
 ..N LY S LY=$O(@$$^W4GL("TIPMZ")@(IND,N,"Y",9999),-1)+1
 ..N J F J=1:1 Q:'$D(@$$^W4GL("TIPMZ")@(IND,N,"Y",J))  D
 ...S TIPMZY=TIPMZY+$G(^(J))
 ..
 ..I $G(DOCH)="Y" D
 ...L +@$$^W4GL("TIPMZ")@(IND,N,"Y",LY):1
 ...S @$$^W4GL("TIPMZ")@(IND,N,"Y",LY)=TIPMZ-TIPMZY
 ...L -@$$^W4GL("TIPMZ")@(IND,N,"Y",LY)
 ..
 ..S TIPMZ=TIPMZ-TIPMZY
 .
 .I $G(DOCH)'="Z",MESHAA2,TIM>(MESHAA2+3)!(TIM<MESHAA1),TIPMZ["?" D
 ..S TIPMZ=$P(TIPMZ,"?",3)
 .
 .I $G(DOCH)'="Z",MESHAA1,TIM'>(MESHAA2+3),(TIM>MESHAA1+5),TIPMZ["?" D
 ..S TIPMZ=$P(TIPMZ,"?",2)
 .
 .S @GLBL@("TS",1)=$G(@GLBL@("TS",1))+TIPMZ
 .S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIPMZ
 .S @GLBL@("T",1,N)=$G(@GLBL@("T",1,N))+TIPMZ
 .
 .I '$$TIPNO^W4TIPPD(DD) D
 ..S @GLBL@("FS",1)=$G(@GLBL@("FS",1))+TIPMZ
 ..S @GLBL@("F",1)=$G(@GLBL@("F",1))+TIPMZ
 ..S @GLBL@("F",1,N)=$G(@GLBL@("F",1,N))+TIPMZ
 .
 .I $$^W4TIPPD(DD) D
 ..S:'$G(TAWMSD) SUMMSD=SUMMSD+TIPMZ,DSUMMSD=DSUMMSD+TIPMZ
 ..S:$G(TAWMSD) SUMTAW=SUMTAW+TIPMZ,DSUMTAW=DSUMTAW+TIPMZ
 .
 .S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+TIPMZ
 ;
 Q
 ;
 ;
CBHMK(DAT) ;
 D CB(DAT,"CB")
 ;
 N N
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 ;
 I $G(NUMBER1),$G(NZ),$G(STRING),$P($G(@$$^W4GL("KLF")@(STRING,"CB",NUMBER1)),"\",10)'="^",$G(DOCH)="Z" D
 .S $P(^(NUMBER1),"\",10)="^"
 .D ^%S3GLSV($$^W4GL("KLF")_"("""_STRING_""",""CB"","""_NUMBER1_""")",$$^W4FGIB)
 ;
 I $G(NUMBER1),$G(STRING),$D(SGIRATJOM),$P($G(@$$^W4GL("KLF")@(STRING,"CB",NUMBER1)),"\",10)'="?",$P($G(^(NUMBER1)),"\",10)'="^",$G(DOCH)="Y" D
 .S $P(^(NUMBER1),"\",10)="?"
 .D ^%S3GLSV($$^W4GL("KLF")_"("""_STRING_""",""CB"","""_NUMBER1_""")",$$^W4FGIB)
 ;
 ; ------------------------- HMK ---------------------------
 K CBCB
 D CB(DAT,"HMK")
 ;
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 Q
 ;
 ;
FRMHSVH(DAT) ; -- HACHANAT KOVEZ LE HASHAVSHEVET -------
 Q:$D(P1X("SHUL"))
 Q:$D(P1X("PART"))
 Q:$D(P1X("ULAM"))
 N N,DATS,DATF,NUMBER,DAT2,LKH,SUM,STRING,NMB,HB,DHB
 S (DT,DATS,DATF)=$$^%L1DC(DAT,4)
 N HB1,HB2 S (HB1,HB2)=""
 N PI,NI
 S PI=$O(@$$^W4GL("KLIN")@("DT","H",DATS),-1)
 I PI S HB1=$G(@$$^W4GL("KLIN")@("DT","H",PI))
 S NI=$O(@$$^W4GL("KLIN")@("DT","H",DATS))
 I NI S HB2=$G(@$$^W4GL("KLIN")@("DT","H",NI))
 ;
 ;;S N=HB1 F  S N=$O(@$$^W4GL("KLIN")@("H",N)) Q:N=""  Q:HB2&(N>HB2)  D
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("DT","H",DT,N)) Q:N=""  D
 .I $D(SGIRATJOM),$L($G(DOCH)),$D(@$$^W4GL("KLIN")@("H",N,"Z")) Q
 .I $D(SGIRATJOM),$G(DOCH)="Y",$D(@$$^W4GL("KLIN")@("H",N,"Y")) Q
 .I $D(SGIRATJOM),$L($G(DOCH)),DOCH'="X" D
 ..S @$$^W4GL("KLIN")@("H",N,DOCH)=$S($G(DOCH)="Y":$H,1:NZ)
 .S STRING=$G(@$$^W4GL("KLIN")@("H",N)),LKH=$$LK^W4STRING("H",N)
 .S HB=N,ER=0
 .
 .I STRING'["+",STRING'["^",STRING'["W" D  Q:ER  G EC ;------ JAD
 ..I '$D(@$$^W4GL("KLF")@(LKH,"H",HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",2),DHB=$$^%L1DC($P(ST,"\",4),4)
 ..S MAM=$P(ST,"\",3)
 ..Q:DHB'=DATS
 ..D TMPHSVH(LKH,HB,SUM,MAM)
 .;
 .I STRING'["+",STRING["^MLY",$$MLY^W4PRM D  Q:ER  G EC ;------ MLY JASHAN
 ..N A S A=$G(@("^["""_@$$^W4GL("UCI")@("MLG")_"""]"_$P(STRING,"^",2)))
 ..I A="" S ER=1 Q
 ..S SUM=$P(A,"*",10),MAM=SUM-$P(A,"*",9)
 ..S DHB=$$^%L1DC($P(A,"*",15),3) Q:DHB'=DATS
 ..D TMPHSVH(LKH,HB,SUM,MAM)
 .
 .I STRING["+" D  Q:ER  G EC ;------ OTOMAT
 ..I '$D(@$$^W4GL("P1LHB")@(LKH,HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",4),DHB=$P(ST,"\",8)
 ..;;Q:DHB'=DATS
 ..I STRING["+M" S MAM=$$MAM(LKH,HB)
 ..;;I STRING'["+M" S MAM=$$MAM^W4L(LKH,DHB),MAM=$J(SUM*MAM/(100+MAM),2,2)
 ..
 ..I STRING'["+M" D
 ...N SHUMMAM S SHUMMAM=$$SHUMMAM^W4HSBGET(LKH,HB) ;$G(@$$^W4GL("P1LHB")@(LKH,HB,"HB","SHUMMAM"))
 ...I SHUMMAM="" S SHUMMAM=SUM
 ...N AHMAM S AHMAM=$G(@$$^W4GL("P1LHB")@(LKH,HB,"AHMAM"))
 ...
 ...S MAM=SHUMMAM*AHMAM/(100+AHMAM)
 ...
 ..D TMPHSVH(LKH,HB,SUM,MAM)
EC .Q
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("TZ",N)) Q:N=""  D  ; - HESB ZIC YAD
 .I $D(SGIRATJOM),$D(@$$^W4GL("KLIN")@("TZ",N,"Z")) Q
 .I $D(SGIRATJOM),$G(DOCH)="Y",$D(@$$^W4GL("KLIN")@("TZ",N,"Y")) Q
 .I $D(SGIRATJOM),$L($G(DOCH)),DOCH'="X" D
 ..S @$$^W4GL("KLIN")@("TZ",N,DOCH)=$S($G(DOCH)="Y":$H,1:NZ)
 .
 .S STRING=$G(^(N)),LKH=$$LK^W4STRING("TZ",N)
 .S HB=N,ER=0
 .
 .I STRING["+" D  Q:ER  G EC ;------ OTOMAT
 ..N HB S HB=-N
 ..I '$D(@$$^W4GL("P1LHB")@(LKH,HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",4),DHB=$P(ST,"\",8)
 ..Q:DHB'=DATS
 ..S MAM=$$MAM^W4L(LKH,DHB),MAM=$J(SUM*MAM/(100+MAM),2,2)
 ..D TMPHSVTZ(LKH,-HB,-SUM,-MAM)
 .;
 .I STRING'["W" D  ;------ JAD
 ..I '$D(@$$^W4GL("KLF")@(LKH,"TZ",HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",2),DHB=$$^%L1DC($P(ST,"\",4),4)
 ..S MAM=$P(ST,"\",3)
 ..Q:DHB'=DATS
 ..D TMPHSVTZ(LKH,HB,SUM,MAM)
 ;
 K @$$^W4MAIN("TMPW")
 S N="" F  S N=$O(@$$^W4GL("W4DIRD")@(DATS,N)) Q:N=""  D  ; -- HESB MEFURETET
 .N A S A=$G(^(N))
 .I $D(SGIRATJOM),A[",^" K @$$^W4MAIN("TMPW") Q
 .I $D(@$$^W4GL("W4DOC")@(N,"H")) D
 ..N HB S HB=$G(^("H"))
 ..S SUM=$$SUMTD^W4DOC(N),MAM=$$MAM^W4DOC(N),LKH=$$LKH^W4DOC(N)
 ..D TMPHSVH(LKH,HB,SUM,MAM,"W")
 .
 .I $D(@$$^W4GL("W4DOC")@(N,"TZ")) D  ;-- HESB ZIC MEFURETET
 ..N HB S HB=$G(^("TZ"))
 ..S SUM=$$SUMTD^W4DOC(N),MAM=$$MAM^W4DOC(N),LKH=$$LKH^W4DOC(N)
 ..D TMPHSVTZ(LKH,HB,SUM,MAM,"W")
 ;
 D
 .N TEMP S TEMP=$$^W4MAIN("TEMP")
 .N TMPW S TMPW=$$^W4MAIN("TMPW")
 .N N S N="" F  S N=$O(@TMPW@(N)) Q:N=""  D
 ..I N["-" M @TEMP@(N)=@TMPW@(N) Q
 ..S @TEMP@(N,1)=$G(@TEMP@(N,1))+$G(@TMPW@(N,1))
 K @$$^W4MAIN("TMPW")
 ;
 Q
 ;
 ;
TMPHSVH(LKH,HB,SUM,MAM,PR) ;
 N TEMP S TEMP=$$^W4MAIN("TEMP")
 I $L($G(LKH)) S @TEMP@("HSV",LKH,"H-"_HB)=SUM_"\"_MAM
 I $G(PR)["W" S TEMP=$$^W4MAIN("TMPW")
 S @TEMP@("HB",1)=$G(@TEMP@("HB",1))+SUM
 S @TEMP@("HB#",1)=$G(@TEMP@("HB#",1))+1
 S @TEMP@("HBMAM",1)=$G(@TEMP@("HBMAM",1))+MAM
 Q
 ;
TMPHSVTZ(LKH,HB,SUM,MAM,PR) ;
 N TEMP S TEMP=$$^W4MAIN("TEMP")
 I $L($G(LKH)) S @TEMP@("HSV",LKH,"HBZ-"_HB)=SUM_"\"_MAM
 I $G(PR)["W" S TEMP=$$^W4MAIN("TMPW")
 S @TEMP@("HBZ",1)=$G(@TEMP@("HBZ",1))+SUM
 S @TEMP@("HBZ#",1)=$G(@TEMP@("HBZ#",1))+1
 S @TEMP@("HBZMAM",1)=$G(@TEMP@("HBZMAM",1))+MAM
 Q
 ;
 ;
HNH(HZM) ;
 Q:$G(HZM)=""
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 N SHIFT S SHIFT=$$SHIFT(HZM)
 ;
 N HNHP S HNHP=$$SSUMHNHP^W4HZMST(HZM) I HNHP D
 .S @GLBL@("MINPAR",1)=$G(@GLBL@("MINPAR",1))+HNHP
 .S @GLBL@("#MINPAR",1)=$G(@GLBL@("#MINPAR",1))+1
 .S @GLBL@("SHNHP",SHIFT)=$G(@GLBL@("SHNHP",SHIFT))+HNHP
 .S @GLBL@("#SHNHP",SHIFT)=$G(@GLBL@("#SHNHP",SHIFT))+1
 ;
 I $G(HNH) D
 .I $P(HNH,"=")'["%" D  Q
 ..S @GLBL@("MIN",1)=$G(@GLBL@("MIN",1))+HNH
 ..S @GLBL@("MIN",1,MKB)=$G(@GLBL@("MIN",1,MKB))+HNH
 ..S @GLBL@("SHNH",SHIFT)=$G(@GLBL@("SHNH",SHIFT))+HNH
 ..S @GLBL@("#SHNH",SHIFT)=$G(@GLBL@("#SHNH",SHIFT))+HNH
 ..I $D(AS) D
 ...S MINAS(MKB)=$G(MINAS(MKB))+HNH
 ...S MINAS=$G(MINAS)+HNH
 .
 .S HNH=+HNH
 .N HN S HN=0 I HNH'=100 S HN=$J(TSHL*100/(100-HNH)-TSHL,2,2)
 .S @GLBL@("MIN",1)=$G(@GLBL@("MIN",1))+HN
 .S:$D(AS) MINAS=$G(MINAS)+HN
 .S @GLBL@("MIN",1,MKB)=$G(@GLBL@("MIN",1,MKB))+HN
 .S:$D(AS) MINAS(MKB)=$G(MINAS(MKB))+HN
 ;
 ;
 I $G(HNH2) D  ;-- HANAHA NOSEFET
 .I HNH2'["%" D  Q
 ..S @GLBL@("MIN2",1)=$G(@GLBL@("MIN2",1))+HNH2
 ..S @GLBL@("MIN2",1,MKB)=$G(@GLBL@("MIN2",1,MKB))+HNH2
 ..S:$D(AS) MIN2AS(MKB)=$G(MIN2AS(MKB))+HNH2
 ..S:$D(AS) MIN2AS=$G(MIN2AS)+HNH2
 .
 .S @GLBL@("MIN2",1)=$G(@GLBL@("MIN2",1))+(TSHL*HNH2*.01)
 .S:$D(AS) MIN2AS=$G(MIN2AS)+(TSHL*HNH2*.01)
 .S @GLBL@("MIN2",1,MKB)=$G(@GLBL@("MIN2",1,MKB))+(TSHL*HNH2*.01)
 .S:$D(AS) MIN2AS(MKB)=$G(MIN2AS(MKB))+(TSHL*HNH2*.01) Q
 ;
 I $G(HNHTL) D  ;-- TLUSH
 .S @GLBL@("MINT",1)=$G(@GLBL@("MINT",1))+HNHTL
 .S @GLBL@("MINT",1,MKB)=$G(@GLBL@("MINT",1,MKB))+HNHTL
 ;
 S HNHCIB=$G(@$$^W4ORD@(HZM,"CIBHN"))
 I $G(HNHCIB) D
 .S @GLBL@("CIBHN",1)=$G(@GLBL@("CIBHN",1))+HNHCIB
 .S @GLBL@("CIBHN",1,MKB)=$G(@GLBL@("CIBHN",1,MKB))+HNHCIB
 ;
 I $G(@$$^W4ORD@(HZM,"LKHAH")) D  ; ----- ?????????????
 .N CIBAH,HNHCIBA S CIBAH=^("LKHAH")
 .N I,T3 S T3=0 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N A S A=$G(^(I))
 ..I $P(A,"\")'="",'$D(@$$^W4GL("PRTBH")@($P(A,"\"))) D
 ...S T3=T3+$P(A,"\",7)
 .
 .S HNHCIBA=$J(T3*CIBAH*.01,2,2)
 .S @GLBL@("CIBHN",1)=$G(@GLBL@("CIBHN",1))+HNHCIBA
 .S @GLBL@("CIBHN",1,MKB)=$G(@GLBL@("CIBHN",1,MKB))+HNHCIBA
 ;
 N N,HNHL S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S HNHL=$P($G(^(N)),"*",3)
 .S @GLBL@("HNHL",1)=$G(@GLBL@("HNHL",1))+HNHL
 .S @GLBL@("HNHL",1,MKB)=$G(@GLBL@("HNHL",1,MKB))+HNHL
 ;
 I $G(DMSH) D
 .S @GLBL@("DMSH",1)=$G(@GLBL@("DMSH",1))+DMSH
 .S:$D(AS) DMSHAS=$G(DMSHAS)+DMSH
 .S @GLBL@("DMSH",1,MKB)=$G(@GLBL@("DMSH",1,MKB))+DMSH
 .S:$D(AS) DMSHAS(MKB)=$G(DMSHAS(MKB))+DMSH Q
 ;;L -@GLBL
 Q
 ;
 ;
TIPSUG(HZM) ;
 S @GLBL@("TCA",1)=$G(@GLBL@("TCA",1))+$$STIPVT^W4HZMST(HZM,"V")
 S @GLBL@("TCHK",1)=$G(@GLBL@("TCHK",1))+$$STIPVT^W4HZMST(HZM,"CH")
 S @GLBL@("TASR",1)=$G(@GLBL@("TASR",1))+$$STIPVT^W4HZMST(HZM,"ASR")
 S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+$$STIPVT^W4HZMST(HZM,"MZ")
 Q
 ;
 ;
MKBL(HZM) ;
 N MKBL,PSL
 S MKBL=$$MKBL^W4HZMST(HZM)
 S PSL=$$PSL^W4HZMST(HZM)
 I $$MSD^W4HZMST(HZM),$G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)) D
 .S MKBL=@$$^W4GL("P1MLZ")@(HZM)
 I $G(MKBL),$$^W4MSD(NMB) Q MKBL
 I $G(PSL),$$^W4MSL(NMB) Q PSL
 I $G(MKBL),$$^W4MSL(NMB) Q 9999
 Q 0
 ;
 ;
BIT(HZM) S BIT=0
 I $$^W4HZMH(HZM) Q
 I $$I^W4PIZUL(HZM) Q
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 N OKBIT S OKBIT=1
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:'OKBIT
 .I $D(@$$^W4ORD@(HZM,"BIT",I)),'$$DELPOS^W4HZMST(HZM,I) S OKBIT=0
 ;
 D GLBLTMP
 N SHIFT S SHIFT=$$SHIFT(HZM)
 ;
 I '$D(@$$^W4ORD@(HZM,"BIT")) S OKBIT=0
 ;
 I $G(P1X("PART")),'OKBIT!$$TSHL^W4HZMST(HZM)<0,$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),'OKBIT!$$TSHL^W4HZMST(HZM)<0,$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 I $$SHIHZUR(HZM) Q
 I $$^W4DEL(HZM),$$^W4DEL(HZM)'=HZM Q
 ;
 I $D(SGIRATJOM) Q:'$$^W4CLOSE(HZM)&($G(DOCH)'="X")
 ;
 I $$TSHL^W4HZMST(HZM)<0 D  Q
 .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 .I '$$I^W4DEL(HZM) D
 ..S @GLBL@("MIN3",1)=$G(@GLBL@("MIN3",1))-TSHL
 ..N MKB S MKB=$$MKBL(HZM) Q:MKB=""
 ..S @GLBL@("MIN3",1,MKB)=$G(@GLBL@("MIN3",1,MKB))-TSHL
 .
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..I $$QN^W4HZMST(HZM,I)<0,'$$AVAR^W4HZMST(HZM,I) D
 ...N SUM S SUM=$$SUM^W4HZMST(HZM,I) ;+$$SUMHNHP^W4HZMST(HZM,I)
 ...;;S ^AA("W4SUM",HZM)=$G(^AA("W4SUM",HZM))+SUM
 ...D SETBIT(HZM,SUM)
 ;
 I '$D(@$$^W4ORD@(HZM,"BIT")) D  Q
 .N I
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $$QN^W4HZMST(HZM,I)<0 D
 ..Q:$$AVAR^W4HZMST(HZM,I)
 ..S SUM=$$SUM^W4HZMST(HZM,I) ;+$$SUMHNHP^W4HZMST(HZM,I)
 ..;;S ^AA("W4SUM",HZM)=$G(^AA("W4SUM",HZM))+SUM
 ..D SETBIT(HZM,SUM)
 ;
 N N
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .Q:$$AVAR^W4HZMST(HZM,N)
 .I $G(P1X("PART")),$$DELPOS^W4HZMST(HZM,N)'=P1X("PART") Q
 .I $G(P1X("ULAM")),$$ULAM($$DELPOS^W4HZMST(HZM,N))'=P1X("ULAM") Q
 .S SUM=$$SUM^W4HZMST(HZM,N) ;+$$SUMHNHP^W4HZMST(HZM,N)
 .;;S ^AA("W4SUM",HZM)=$G(^AA("W4SUM",HZM))+SUM
 .D SETBIT(HZM,SUM)
 Q
 ;
 ;
SETBIT(HZM,SUM) ;
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 I $$PAPJ^W4PRM,HZM'<1,NMB=$$MPLK^W4MPCHZ!(NMB=$$COUPLK^W4MPCHZ) Q
 S BIT=BIT-SUM
 I $$HZM^W4MSL(HZM) D  Q
 .I $$^W4TAWMSL(HZM) S BIT("T")=$G(BIT("T"))-SUM Q
 .S BIT("D")=$G(BIT("D"))-SUM
 I $$HZM^W4MSD(HZM) S BIT("R")=$G(BIT("R"))-SUM
 Q
 ;
CB(DAT,CODDOC) ; --> CBCB
 N HZM
 Q:$D(P1X("SHUL"))
 Q:$D(P1X("PART"))
 Q:$D(P1X("ULAM"))
 K CBCB
 N CAV,DOP,MZMN,MASMK,NUMBER,NUMBER1,STRING,SUM,SUMCHO,SUMCHB,SUMCH,SUMTZ1,VTS
 N DATS,DATF,DAT2,DATPR,DATCB,DTCB
 D GLBLTMP ;-- GLBL=TEMP
 ;
 S (DATS,DATF)=$$^%L1DC(DAT,4)
 ;
 N CB1,CB2 S (CB1,CB2)=""
 F NUMBER=1:100 Q:'$D(@$$^W4GL("KLIN")@(CODDOC,NUMBER))  D  Q:CB2
 .S STRING=$G(@$$^W4GL("KLIN")@(CODDOC,NUMBER)) Q:STRING=""
 .N GLCB S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER)"
 .I CODDOC="HMK" S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER,""CB"")"
 .N HDCB S HDCB=$G(@GLCB)
 .S DATCB=$P(HDCB,"\",4)
 .I DATCB?2N1"."2N1"."2N S DATCB=$$^%L1DC(DATCB,2)
 .S DTCB=$$^%L1DC(DATCB,4)
 .I DTCB>DATS S CB2=NUMBER Q
 .I DTCB<DATS S CB1=NUMBER
 ;
 I ('$G(P1X("SHUL"))&'$G(P1X("PART"))&'$G(P1X("ULAM")))!$$^W4LKH D
 .S NUMBER=CB1,NUMBER1="" K CBCB
 .F  S NUMBER=$O(@$$^W4GL("KLIN")@(CODDOC,NUMBER)) Q:NUMBER=""  Q:CB2&(NUMBER>CB2)  D
 ..S STRING=$G(@$$^W4GL("KLIN")@(CODDOC,NUMBER)) Q:STRING=""
 ..N GLCB S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER)"
 ..I CODDOC="HMK" S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER,""CB"")"
 ..N HDCB S HDCB=$G(@GLCB)
 ..S DATCB=$P(HDCB,"\",4)
 ..I DATCB?2N1"."2N1"."2N S DATCB=$$^%L1DC(DATCB,2)
 ..S DTCB=$$^%L1DC(DATCB,4)
 ..Q:DTCB<DATS!(DTCB>DATF)
 ..I $G(NZ),$P(HDCB,"\",10)="^" K CBCB Q
 ..I $D(SGIRATJOM),$P(HDCB,"\",10)="?",$G(DOCH)'="Z" K CBCB Q
 ..I $D(SGIRATJOM),$G(DOCH)="Z" S $P(@GLCB,"\",10)="^"
 ..I $D(SGIRATJOM),$G(DOCH)="Y",$P($G(@GLCB),"\",10)="" S $P(@GLCB,"\",10)="?"
 ..S NUMBER1=NUMBER
 ..D ^W4CBGT(STRING,CODDOC,NUMBER) S SHUL=SUMTZ1
 ..;
 ..S DOP="" I CODDOC="CB" S DOP="D"
 ..D
 ...I $G(CAV),$D(CAV)=1 S:$E(VTS)="$" VTS=$E(VTS,2,3) D  K CAV
 ....S CBCB("V"_DOP)=$G(CBCB("V"_DOP))+CAV
 ....S CBCB(VTS_DOP)=$G(CBCB(VTS_DOP))+CAV
 ....S CBCB(VTS_DOP_"#")=$G(CBCB(VTS_DOP_"#"))+1
 ....I CODDOC="CB" S @GLBL@("HSV",STRING,"D-"_NUMBER_"-"_$C($A("I")+$E(VTS,2)-1))=CAV
 ...
 ...I $D(CAV)>1 D  K CAV,VTS
 ....N N S N="" F  S N=$O(CAV(N)) Q:N=""  D
 .....S CAV=$G(CAV(N)),VTS=$G(VTS(N))
 .....S:$E(VTS)="$" VTS=$E(VTS,2,3)
 .....S CBCB("V"_DOP)=$G(CBCB("V"_DOP))+CAV
 .....S CBCB(VTS_DOP)=$G(CBCB(VTS_DOP))+CAV
 .....S CBCB(VTS_DOP_"#")=$G(CBCB(VTS_DOP_"#"))+1
 .....I CODDOC="CB" S @GLBL@("HSV",STRING,"D-"_NUMBER_"-"_$C($A("I")+$E(VTS,2)-1)_"-"_N)=CAV
 ..;
 ..I MZMN D
 ...S CBCB("F"_DOP)=$G(CBCB("F"_DOP))+MZMN
 ...S CBCB("F"_DOP_"#")=$G(CBCB("F"_DOP_"#"))+1
 ...I CODDOC="CB" S @$$^W4MAIN("TEMP")@("HSV",STRING,"D-"_NUMBER_"-F")=MZMN
 ..;
 ..I MASMK,CODDOC="CB" S @GLBL@("HSV",STRING,"D-"_NUMBER_"-MK")=MASMK
 ..;
 ..I SUMCHO D
 ...S CBCB("G"_DOP_"O")=$G(CBCB("G"_DOP_"O"))+SUMCHO
 ...S CBCB("G"_DOP_"O#")=$G(CBCB("G"_DOP_"O#"))+1
 ..;
 ..I $G(SUMCHB) D
 ...S CBCB("G"_DOP_"B")=$G(CBCB("G"_DOP_"B"))+SUMCHB
 ...S CBCB("G"_DOP_"B#")=$G(CBCB("G"_DOP_"B#"))+1
 ..;
 ..I SUMCH,CODDOC="CB" D
 ...N DATPR,NN,SUMG
 ...S NN="" F  S NN=$O(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER,NN)) Q:NN=""  I NN D
 ....S SUMG=+$G(^(NN)) Q:'SUMG
 ....S DATPR=$TR($P(^(NN),"\",7),"./","")
 ....I $G(SUMCHB) D  Q
 .....S @GLBL@("HSV",STRING,"D-"_NUMBER_"-B-"_DATPR)=$G(@GLBL@("HSV",STRING,"D-"_NUMBER_"-G-"_DATPR))+SUMG
 ....S @GLBL@("HSV",STRING,"D-"_NUMBER_"-G-"_DATPR)=$G(@GLBL@("HSV",STRING,"D-"_NUMBER_"-G-"_DATPR))+SUMG
 ..;
 ..S CBCB("G"_DOP)=$G(CBCB("G"_DOP))+SUMCH
 ..S CBCB("G"_DOP_"#")=$G(CBCB("G"_DOP_"#"))+1
 Q
 ;
 ;
SHIHZUR(HZM) ;
 N B S B=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",2)
 I $E(B,$L(B))=">" Q 1
 Q 0
 ;
SUMMTB(HZM) ;
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","M",N)) Q:N=""  D
 .N A S A=$G(^(N))
 .;;S $P(SUMMTB(N),"!")=$G(SUMMTB(N))+A
 .;;S $P(SUMMTB(N),"!",2)=$P($G(SUMMTB(N)),"!",2)+(A*$P(A,"!",2))
 .;;S SUMMTB=$G(SUMMTB)+(A*$P(A,"!",2))
 .S $P(@GLBL@("MTB",N),"!")=$G(@GLBL@("MTB",N))+A
 .S $P(@GLBL@("MTB",N),"!",2)=$P($G(@GLBL@("MTB",N)),"!",2)+(A*$P(A,"!",2))
 .S $P(@GLBL@("MTB",N,MKB),"!")=$G(@GLBL@("MTB",N,MKB))+A
 .S $P(@GLBL@("MTB",N,MKB),"!",2)=$P($G(@GLBL@("MTB",N,MKB)),"!",2)+(A*$P(A,"!",2))
 Q
 ;
 ;
DIF(VT,NMB,SUM) ; --- LEFI MISSADA, TAW & MISHLOHIM
 Q:'$G(NMB)
 Q:$G(VT)=""
 Q:'$G(SUM)
 ;
 ;I VT="F" I $G(DAT),$D(SGIRATJOM),$G(DOCH)="Z",$G(HZM)>0 D
 .S ^DB(DAT,HZM)=$G(^DB(DAT,HZM))+SUM
 ;
 I $G(HZM)>0,$$NOMAM D
 .N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM"))
 .I KMAM="" S KMAM=1
 .S @GLBL@(VT,"CMAM")=$G(@GLBL@(VT,"CMAM"))+(SUM*KMAM)
 ;
 S @GLBL@(VT_"#",1)=$G(@GLBL@(VT_"#",1))+1 ;;$$CHZ(HZM) ; -- WAS 1
 ;
 I $$^W4MSD(NMB),'$G(TAWMSD) D  Q
 .S @GLBL@(VT_"S",1)=$G(@GLBL@(VT_"S",1))+SUM
 .S @GLBL@(VT_"S#",1)=$G(@GLBL@(VT_"S#",1))+1 ;;$$CHZ(HZM) ; -- WAS 1
 ;
 I $$^W4MSD(NMB),$G(TAWMSD) D  Q
 .S @GLBL@(VT_"W",1)=$G(@GLBL@(VT_"W",1))+SUM
 .S @GLBL@(VT_"W#",1)=$G(@GLBL@(VT_"W#",1))+1 ;;$$CHZ(HZM) ; -- WAS 1
 ;
 I $$^W4MSL(NMB) D
 .;;S ^LEVDEB(HZM,VT_"L")=$G(^LEVDEB(HZM,VT_"L"))+SUM
 .I '$G(TAWMSL) D
 ..S @GLBL@(VT_"L",1)=$G(@GLBL@(VT_"L",1))+SUM
 ..S @GLBL@(VT_"L#",1)=$G(@GLBL@(VT_"L#",1))+1 ;;$$CHZ(HZM) ; -- WAS 1
 .I $G(TAWMSL) D
 ..S @GLBL@(VT_"T",1)=$G(@GLBL@(VT_"T",1))+SUM
 ..S @GLBL@(VT_"T#",1)=$G(@GLBL@(VT_"T#",1))+1 ;;$$CHZ(HZM) ; -- WAS 1
 Q
 ;
 ;
SIGNZ(DD,HZ) ;
 I $G(@$$^W4GL("P1H")@(DD,HZ))[",^" Q 1
 Q 0
SIGNY(DD,HZ) ;
 I $G(@$$^W4GL("P1H")@(DD,HZ))[",?" Q 1
 Q 0
MLZ(MKB) ;
 I $L($G(MKB))'=5 Q 0
 Q 1
PSL(MKB) ;
 I $L($G(MKB)),$L($G(MKB))<5 Q 1
 Q 0
 ;
MAM(STRING,HB) ;
 N MAM S MAM=0
 N N S N="" F  S N=$O(@$$^W4GL("KLIN")@("H",HB,STRING,N)) Q:N=""  D
 .N TD S TD=$P($G(^(N)),"\",3)
 .N SHANA,MRK,STR,TSTR,A
 .S SHANA=$P(N,"-"),MRK=$P(N,"-",2)
 .Q:SHANA=""  Q:MRK=""  Q:TD=""
 .S STR=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",3) Q:STR=""
 .S TSTR=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",4) Q:TSTR=""
 .S A=$G(@$$^W4GLM("MLY")@(SHANA,STR,TSTR,2,TD))
 .S MAM=MAM+$P(A,"*",10)-$P(A,"*",9)
 Q MAM
 ;
MZMPART(HZM,PART) ;
 Q $$SMZ^W4HZMST(HZM,PART)
CHKPART(HZM,PART) ;
 Q $$SCH^W4HZMST(HZM,PART)
ASRPART(HZM,PART) ;
 Q $$SAS^W4HZMST(HZM,PART)
CAPART(HZM,PART) ;
 Q $$SCA^W4HZMST(HZM,PART)
TLPART(HZM,PART) ;
 Q $$STL^W4HZMST(HZM,PART)
 ;
 ;
SSOAD(SOAD) ;
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 N MKB S MKB=$$MKBL(HZM)
 S @GLBL@("SD",1)=$G(@GLBL@("SD",1))+SOAD
 S @GLBL@("SD",1,MKB)=$G(@GLBL@("SD",1,MKB))+SOAD
 ;
 I $$HZM^W4MSL(HZM) D
 .N SOADM S SOADM=SOAD
 .I 'SOADM,$$TSHL^W4HZMST(HZM)+$$HNH^W4HZMST(HZM)>0,$$SDMSL^W4PRM!$$MSLSD^W4PRM S SOADM=1
 .I $$^W4TAWMSL(HZM) S @GLBL@("SD",1,"T")=$G(@GLBL@("SD",1,"T"))+SOADM Q
 .S @GLBL@("SD",1,"D")=$G(@GLBL@("SD",1,"D"))+SOADM
 ;
 I $$HZM^W4MSD(HZM) D
 .I $G(TAWMSD) S @GLBL@("SD",1,"W")=$G(@GLBL@("SD",1,"W"))+SOAD Q
 .S @GLBL@("SD",1,"R")=$G(@GLBL@("SD",1,"R"))+SOAD
 Q
 ;
 ;
SHZ(CHZ) ;
 N MKB S MKB=$$MKBL(HZM)
 ;;L +@GLBL@("SHZ"):1
 S @GLBL@("SHZ",1)=$G(@GLBL@("SHZ",1))+CHZ
 S @GLBL@("SHZ",1,MKB)=$G(@GLBL@("SHZ",1,MKB))+CHZ
 ;;L -@GLBL@("SHZ")
 Q
 ;
GLBL(DOCH,DAT) ;
 S GLBL=$S('$G(MRK):$$^W4GL("TOT")_"(DAT)",1:$$^W4GL("TOT")_"(DAT,MRK)") ;--- FOR X
 I $G(DOCH)="Z" S GLBL=$$^W4GL("Z1")_"(DAT,NZ)"
 Q
 ;
GLBLTMP ;
 S GLBL=$$^W4MAIN("TEMP")
 Q
 ;
TIPNO ;
 I $G(P1X("SHUL")),NMB'=P1X("SHUL") Q
 I $G(P1X("PART")),$G(HZM),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$G(HZM),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 S @GLBL@("F",1)=$G(@GLBL@("F",1))-TIP D
 .S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))-TIP Q
 D DIF("F",NMB,-TIP)
 Q
 ;
CHZ(HZM) ; 
 N SUMHZ S SUMHZ=$$TSHL^W4HZMST(HZM)+$$HNH^W4HZMST(HZM)
 I SUMHZ>0 Q 1
 I SUMHZ<0 Q -1
 Q 0
 ;
 ;
HISHUV(HZM) ;
 N SHIFT,VHZ,DTHZ,SHAA
 S (SHUL,NMB,NAME)=""
 Q:'$D(@$$^W4ORD@(HZM))
 S DTHZ=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 S SHAA=$$SHAA^W4HZMST(HZM)
 I SHAA<$$SHAAZ^W4PRM S DTHZ=DTHZ-1
 I $D(SGIRATJOM),$$Z24^W4PRM,$G(DOCH)="Z",'$$^W4CLOSE(HZM),$H>P1DZ D ^W4MVDTL(+$H,P1DZ,HZM) Q
 I $D(SGIRATJOM),$$NOCLDLVZ^W4PRM,'$$^W4CLOSE(HZM),DTHZ>P1DZ D  Q
 .N TODT
 .F TODT=P1DZ+1:1:DTHZ Q:$$^W3VLDDT($ZD(TODT,"DD.MM.YY"))>0
 .D ^W4MVDTL(TODT,P1DZ,HZM)
 ;
 I $D(SGIRATJOM),$G(DOCH)'="X" Q:'$$^W4CLOSE(HZM)
 ;
 I $D(SGIRATJOM),$G(DOCH)="Y" D
 .I DDHZ[",Y" Q
 .S ^(HZM)=$G(@P1HDD@(HZM))_",Y"_NZ
 ;
 I $$Z24^W4PRM,$D(SGIRATJOM),$G(DOCH)="Z" D
 .I DDHZ[",Z" Q
 .S ^(HZM)=$G(@P1HDD@(HZM))_",Z"_NZ
 ;
 ;
 I FIRSTHZ S HZ0=HZM S FIRSTHZ=0
 ;
 N DD1 S DD1=DD N DD,HB S DD=DD1
 S NMB=$$NMB^W4HZMST(HZM)
 I $G(P1X("SHUL")),NMB'=P1X("SHUL") Q
 Q:'$D(@$$^W4ORD@(HZM))
 ;
 S SHIFT=$$SHIFT(HZ)
 S VHZ=$$VHZ(HZ)
 ;
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 ;
 S SOAD=$$SOAD^W4SOAD(SOAD,TSHL,NMB)
 ;
 S LL=$$LL^W4HZMST(HZM)
 I LL D
 .I LL=1 S LLQNS=LLQNS+$S(+$G(SOAD)=0:0,$G(SOAD)>0:1,1:-1),LLSUMS=LLSUMS+TSHL
 .I LL=2 S LLQNT=LLQNT+$S(+$G(SOAD)=0:0,$G(SOAD)>0:1,1:-1),LLSUMT=LLSUMT+TSHL
 .I LL=3 S LLQNM=LLQNM+$S(+$G(SOAD)=0:0,$G(SOAD)>0:1,1:-1),LLSUMM=LLSUMM+TSHL
 ;
 I $G(@$$^W4PRM@("HAVT")) D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..I $$PAR^W4HZMST(HZM,I)=@$$^W4PRM@("HAVT") D
 ...S HAVT=$G(HAVT)+$$SUM^W4HZMST(HZM,I)
 ;
 I $$MSL^W4HZMST(HZM) D
 .N CHZ S CHZ=$$CHZ(HZM)
 .S SMSH=$G(SMSH)+CHZ
 .I $$TAKEAWAY^W4HZMST(HZM) S SMSHT=$G(SMSHT)+CHZ
 .D SHZ(CHZ)
 ;
 I '$$MSL^W4HZMST(HZM) D
 .N CHZ S CHZ=$$CHZ(HZM)
 .S SHZM=$G(SHZM)+CHZ
 .
 .D SHZ(CHZ)
 ;
 S TAWMSL=0 S TAWMSL=$$^W4TAWMSL(HZM)
 S TAWMSD=0
 I $G(NMB),$$TAWMSD^W4PRM,$$TAW^W4MSD(NMB) S TAWMSD=1
 ;
 S SHUL=$$SSHUL^W4HZMST(HZM) ; -- 27/10/20 
 N PAID S PAID=SHUL-$G(TL)
 ;
 D  ; -- 24/03/26,03/04/26
 .N N1,N2,IND,SUM
 .N HZCB S HZCB=$G(@$$^W4ORD@(HZM,"CB"))
 .I $P(HZCB,"\",2),'$D(@$$^W4ORD@(HZM,"CB","MZ")) D
 ..S @$$^W4ORD@(HZM,"CB","MZ",1)=$P(HZCB,"\",2)
 .
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N1)) Q:N1=""  D
 ..S N2="" F  S N2=$O(@$$^W4ORD@(HZM,"CB",N1,N2)) Q:N2=""  I N2 D
 ...N A S A=$G(^(N2)) Q:A=""
 ...S IND="",SUM=0
 ...I N1="MZ" S IND="F",SUM=$P(A,"*")-$P(A,"*",5)
 ...I N1="CH" Q  ;S IND="G",SUM=$P(A,"*")
 ...I N1="V" D
 ....I $$PAPJ^W4PRM,$P(A,"*")[("V"_$$GFC^W4VT) D  Q
 .....S IND="GFC",SUM=$P(A,"*",7)
 ....S IND="V",SUM=$P(A,"*",7)
 ....I $$PAPJ^W4PRM S SUM=SUM-$P(A,"*",27) ; -- 03.06.26
 ...I N1="ASR" S IND="H",SUM=$P(A,"*",4) 
 ...Q:IND=""  Q:'SUM
 ...I SHIFT'="",VHZ'="" D SUMVHZ(SHIFT,VHZ,IND,SUM)
 ;
 I $$^W4MSD(NMB),'$G(TAWMSD) D
 .S SUMMSD=SUMMSD+PAID
 .S DSUMMSD=DSUMMSD+PAID
 .S SUMAMSD=SUMAMSD+$G(SHULA)
 .S DSUMAMSD=DSUMAMSD+$G(SHULA)
 .I '(PAID+$G(SHULA)) Q
 .I TSHL+$G(HNH)!$$^W4PPG D SSOAD(SOAD)
 ;
 I $$^W4MSD(NMB),$G(TAWMSD) D
 .S SUMTAW=$G(SUMTAW)+PAID
 .S DSUMTAW=$G(DSUMTAW)+PAID
 .S SUMATAW=SUMATAW+$G(SHULA)
 .S DSUMATAW=DSUMATAW+$G(SHULA)
 .I '(PAID+$G(SHULA)) Q
 .N SDW
 .S SMSDW=$G(SMSDW)+$$CHZ(HZM)
 .I TSHL+$G(HNH)!$$^W4PPG D SSOAD(SOAD)
 ;
 I TAWMSL D
 .S SUMDLP=SUMDLP+PAID
 .;;S ^AA("W4SUM",HZM,"TAWMSL")=PAID
 .S DSUMDLP=DSUMDLP+PAID
 .S SUMADLP=SUMADLP+$G(SHULA)
 .S DSUMADLP=DSUMADLP+$G(SHULA)
 .I $$^W4PPG!(TSHL+$G(HNH)) D
 ..I '(PAID+$G(SHULA)) Q
 ..I $$SDMSL D SSOAD(SOAD)
 ..S DSSOAD=DSSOAD+SOAD
 ..I $$HZM^W4MSL(HZM) S DSSOAD("D")=$G(DSSOAD("D"))+SOAD
 ..I $$HZM^W4MSD(HZM) S DSSOAD("R")=$G(DSSOAD("R"))+SOAD
 ;
 I $$^W4MSL(NMB)&'TAWMSL D
 .;;S ^AA("W4SUM",HZM,"PAID")=PAID
 .S SUMMSL=SUMMSL+PAID
 .S ^AA("W4SUM",HZM,"SHULA")=$G(SHULA)
 .S DSUMMSL=DSUMMSL+PAID
 .S SUMAMSL=SUMAMSL+$G(SHULA)
 .S DSUMAMSL=DSUMAMSL+$G(SHULA)
 .I $$SDMSL D SSOAD(SOAD) ; --- 6/6/19
 ;
 N MKB S MKB=$$MKBL(HZM)
 ;
 I $G(P1X("PART")) D
 .N PART S PART=P1X("PART")
 .S MZM=$$MZMPART(HZM,PART)
 .S CHK=$$CHKPART(HZM,PART)
 .S CA=$$CAPART(HZM,PART)
 .S TL=$$TLPART(HZM,PART)
 .S ASR=$$ASRPART(HZM,PART)
 .S TIP=$S($$POS^W4HZMST(HZM)=PART:TIP,1:0)
 ;
 I $G(P1X("ULAM")) D
 .N ULAM S ULAM=P1X("ULAM")
 .S MZM=$$MZMULAM(HZM,ULAM)
 .S CHK=$$CHKULAM(HZM,ULAM)
 .S CA=$$CAULAM(HZM,ULAM)
 .S TL=$$TLULAM(HZM,ULAM)
 .S ASR=$$ASRULAM(HZM,ULAM)
 .S TIP=$S($$ULAM($$POS^W4HZMST(HZM))=ULAM:TIP,1:0)
 ;
 I $G(TL) D
 .S @GLBL@("Z",1)=$G(@GLBL@("Z",1))+TL
 .D DIF("Z",NMB,TL)
 .S @GLBL@("Z",1,MKB)=$G(@GLBL@("Z",1,MKB))+TL
 ;
 I $G(MZM) D
 .S @GLBL@("F",1)=$G(@GLBL@("F",1))+MZM
 .D DIF("F",NMB,MZM)
 .S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))+MZM
 .S @GLBL@("F#",1,MKB)=$G(@GLBL@("F#",1,MKB))+1
 .D:$$MATB^W4PRM SUMMTB(HZM)
 .I VHZ'="",SHIFT'="" D
 ..;;D SUMVHZ(SHIFT,VHZ,"F",MZM) ; *** 24.03.26
 ;
 N MP S MP=$$SSHULMP^W4T(HZM)
 I MP D
 .S @GLBL@("MP",1)=$G(@GLBL@("MP",1))+MP
 .D DIF("MP",NMB,MP)
 .S @GLBL@("MP",1,MKB)=$G(@GLBL@("MP",1,MKB))+MP
 .S @GLBL@("MP#",1,MKB)=$G(@GLBL@("MP#",1,MKB))+1
 ;
 ; --------------  TIPNT - VYCITAT TIP IZ PIDJONA ----------
 I $G(TIP) D  S TIPHZM(HZM)=""
 .S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIP
 .D DIF("T",NMB,TIP)
 .S @GLBL@("T",1,MKB)=$G(@GLBL@("T",1,MKB))+TIP
 .S @GLBL@("T#",1,MKB)=$G(@GLBL@("T#",1,MKB))+1
 .D SUMVHZ(SHIFT,VHZ,"T",TIP)
 .
 .I $$TIPNO^W4TIPPD($G(DD)) D
 ..N MZ S MZ=$G(@GLBL@("F",1))-TIP ;;I MZ<0 S MZ=0
 ..S @GLBL@("F",1)=MZ
 ..I $G(MKB) S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))-TIP
 .
 .I $$^W4MSD(NMB),'$G(TAWMSD),'$$^W4TIPPD(DD) S SUMMSD=SUMMSD-TIP,DSUMMSD=DSUMMSD-TIP
 .I $$^W4MSD(NMB),$G(TAWMSD),'$$^W4TIPPD(DD) S SUMTAW=SUMTAW-TIP
 .I $$^W4MSL(NMB),'$$^W4TIPPD(DD) S SUMMSL=SUMMSL-TIP,DSUMMSL=DSUMMSL-TIP
 ;
 ;
 I $G(CHK) D
 .S @GLBL@("G",1)=$G(@GLBL@("G",1))+CHK
 .D DIF("G",NMB,CHK)
 .S @GLBL@("G",1,MKB)=$G(@GLBL@("G",1,MKB))+CHK
 .S @GLBL@("G#",1,MKB)=$G(@GLBL@("G#",1,MKB))+1
 .;;D SUMVHZ(SHIFT,VHZ,"G",CHK) ; *** 24.03.26
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","CH",I))  D
 ..D ^W4GTVCH($G(^(I)),"CH")
 ..I $G(P1X("PART")),$$POSVT^W4HZMST(HZM,"CH",I)'=P1X("PART") Q
 ..I $G(P1X("ULAM")),$$ULAM($$POSVT^W4HZMST(HZM,"CH",I))'=P1X("ULAM") Q
 ..
 ..D
 ...I $E(NCHECK)="B"!($E(NCHECK)="a") D  Q
 ....S @GLBL@("GB",1,MKB)=$G(@GLBL@("GB",1,MKB))+CHS
 ....S @GLBL@("GB",1)=$G(@GLBL@("GB",1))+CHS
 ....D DIF("GB",NMB,CHS)
 ....D SUMVHZ(SHIFT,VHZ,"GB",CHS)
 ...
 ...S @GLBL@("GO",1)=$G(@GLBL@("GO",1))+CHS
 ...S @GLBL@("GO",1,MKB)=$G(@GLBL@("GO",1,MKB))+CHS
 ...D SUMVHZ(SHIFT,VHZ,"GO",CHS)
 ...D DIF("GO",NMB,CHS)
 ;
 S NMP=0
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB","ASR",N1)) Q:N1=""  D
 .N A S A=$G(^(N1))
 .S LKH=$P(A,"*") I $P(A,"*",6) S LKH=$P(A,"*",6) ; --- LKHR
 .S SUM=$P(A,"*",4),TLUSH=$P(A,"*",8),KMTL=$P(A,"*",9)
 .Q:LKH=""
 .I $E(LKH,1,2)="MP" S NMP=NMP+1 Q:'$$^W4HZMP(HZM,NMP,"CRED")
 .
 .I $G(P1X("PART")),$$POSVT^W4HZMST(HZM,"ASR",N1)'=P1X("PART") Q
 .I $G(P1X("ULAM")),$$ULAM($$POSVT^W4HZMST(HZM,"ASR",N1))'=P1X("ULAM") Q
 .;;S ^AA2("W4SUM",HZM,N1)=SUM
 .S @GLBL@("H",1)=$G(@GLBL@("H",1))+SUM
 .D DIF("H",NMB,SUM)
 .S @GLBL@("H",1,MKB)=$G(@GLBL@("H",1,MKB))+SUM
 .S @GLBL@("H#",1,MKB)=$G(@GLBL@("H#",1,MKB))+1
 .;;D SUMVHZ(SHIFT,VHZ,"H",SUM) ; *** 24.03.26
 .
 .S @$$^W4MAIN("P1LKHZ")@(LKH)=$G(@$$^W4MAIN("P1LKHZ")@(LKH))+SUM
 .S @GLBL@("LKH",1,MKB,LKH)=$G(@GLBL@("LKH",1,MKB,LKH))+SUM
 .D SUMVHZ(SHIFT,VHZ,LKH,SUM)
 .I $G(TLUSH),$G(KMTL) D
 ..S @GLBL@("LKH",1,MKB,LKH,TLUSH)=$G(@GLBL@("LKH",1,MKB,LKH,TLUSH))+KMTL
 ..S @$$^W4MAIN("P1LKHZ")@(LKH,TLUSH)=$G(@$$^W4MAIN("P1LKHZ")@(LKH,TLUSH))+KMTL
 ;
 I $D(@$$^W4ORD@(HZM,"CB","V")) D
 .D DIF("V",NMB,CA)
 .S @GLBL@("V",1)=$G(@GLBL@("V",1))+CA
 .S @GLBL@("V",1,MKB)=$G(@GLBL@("V",1,MKB))+CA
 .S @GLBL@("V#",1,MKB)=$G(@GLBL@("V#",1,MKB))+1
 .N I S I=""
 .F  S I=$O(@$$^W4ORD@(HZM,"CB","V",I)) Q:I=""  D
 ..N A S A=$G(^(I)) Q:A=""  D ^W4GTVCH(A,"V")
 ..S VTS=$E(VTS,2,6) Q:VTS=""
 ...
 ..I $G(P1X("PART")),P1X("PART")'=$$POSVT^W4HZMST(HZM,"V",I) Q
 ..I $G(P1X("ULAM")),P1X("ULAM")'=$$ULAM($$POSVT^W4HZMST(HZM,"V",I)) Q
 ..
 ..I NCA="MYCHECK" D
 ...D VSUM("VMYCH",NMB,CAV,MKB)
 ..
 ..I $$TIPCB^W4PRM S CAV=CAV-TIPCA ; -- 26/11/24
 ..
 ..D VSUM(VTS,NMB,CAV,MKB,$G(NCA))
 ;
 D HNH(HZM) ; --- HISHUV HANAHOT
 ;
 D:$G(TIP) TIPSUG(HZM) ; --- HISHUV TIPIM
 ;
 D BIT(HZM)
 ;
 I $G(BIT) D
 .I $G(@$$^W4PRM@("BITA")),TSHL'<0 Q
 .I $G(@$$^W4PRM@("BITA")),TSHL<0 S BIT=-TSHL
 .N MKBL S MKBL=$$MKBL^W4HZMST(HZM)
 .S @GLBL@("BIT",1)=$G(@GLBL@("BIT",1))+BIT
 .S @GLBL@("BIT#",1)=$G(@GLBL@("BIT#",1))+1
 .I $G(PSL) D  Q
 ..S @GLBL@("BIT",1,PSL)=$G(@GLBL@("BIT",1,PSL))+BIT
 ..S @GLBL@("BIT",1,"D")=$G(@GLBL@("BIT",1,"D"))+BIT
 .
 .I $$^W4MSL(NMB) D
 ..S @GLBL@("BIT",1,9999)=$G(@GLBL@("BIT",1,9999))+BIT
 ..S @GLBL@("BIT",1,"D")=$G(@GLBL@("BIT",1,"D"))+BIT
 .
 .I $$^W4MSD(NMB) D
 ..S @GLBL@("BIT",1,"R")=$G(@GLBL@("BIT",1,"R"))+BIT
 .
 .I $G(MKBL),$$^W4MSD(NMB),'$G(@$$^W4PRM@("MLZ"))!$G(@$$^W4PRM@("BITMKBL")) D  Q
 ..S @GLBL@("BIT",1,MKBL)=$G(@GLBL@("BIT",1,MKBL))+BIT
 ..S @GLBL@("BIT#",1,MKBL)=$G(@GLBL@("BIT#",1,MKBL))+1
 .;
 .I $G(MKBL),$$^W4MSD(NMB) D  Q
 ..N N,BTL S N=""
 ..F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 ...N MZ S MZ=$P($G(^(N)),"*",2)
 ...I 'MZ,$P($G(^(N)),"*") S MZ=$P($G(^(N)),"*")
 ...Q:$$AVAR^W4HZMST(HZM,N)
 ...S BTL=0
 ...I $$SUM^W4HZMST(HZM,N)<0,$E($$PAR^W4HZMST(HZM,N)) D
 ....S BTL=-$$SUM^W4HZMST(HZM,N)
 ...I 'MZ!'$G(@$$^W4PRM@("MLZ")),$G(MKBL) S MZ=MKBL
 ...I MZ S @GLBL@("BIT",1,MZ)=$G(@GLBL@("BIT",1,MZ))+BTL
 ...;;S ^AA("W4SUM",HZM,$O(^AA(HZM,99999),-1)+1)=BTL
 Q
 ;
 ;
VSUM(VTS,NMB,CAV,MKB,NCA)
 D DIF(VTS,NMB,CAV)
 S @GLBL@(VTS,1)=$G(@GLBL@(VTS,1))+CAV
 ;
 I VTS?1"V"1N.N,$G(NCA)'?5N.N D
 .N VTS1 S VTS1="J"_VTS
 .S @GLBL@(VTS1,1)=$G(@GLBL@(VTS1,1))+CAV
 .S @GLBL@("#"_VTS1,1)=$G(@GLBL@("#"_VTS1,1))+1
 ;
 ;;I VTS?1"V"1N.N D SUMVHZ(SHIFT,VHZ,VTS,CAV) ; *** 24.03.26
 ;
 I $G(MKB) D
 .S @GLBL@(VTS,1,MKB)=$G(@GLBL@(VTS,1,MKB))+CAV
 .S @GLBL@(VTS_"#",1,MKB)=$G(@GLBL@(VTS_"#",1,MKB))+1
 Q
 ;
 ;
SGHZ(HZ) ;
 N IITRA S ITRA=$$ITRA^W4HZMST(HZ)
 I '$$^W4CLOSE(HZ),ITRA<.1&(ITRA>-.1) D
 .N P1TNOPR,BLIPR S BLIPR="",P1TNOPR=""
 .I $$SHUL^W4HZMST(HZ) D ^W4PCHB(HZ,1)
 .I $$SHULA^W4HZMST(HZ),'$$SHUL^W4HZMST(HZ) D ^W4PCHB2(HZ)
 .D SETCLOSE^W4HZMST(HZ)
 .;;D ^W4SGHB(HZM)
 Q
 ;
ULAM(POS) ;
 I $G(POS)="" Q ""
 Q $G(@$$POSULM@(POS))
 ;
MZMULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SMZ S SMZ=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SMZ=SMZ+$$SMZ^W4HZMST(HZM,N)
 Q SMZ
 ;
CHKULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SCH S SCH=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SCH=SCH+$$SCH^W4HZMST(HZM,N)
 Q SCH
 ;
ASRULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SAS S SAS=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SAS=SAS+$$SAS^W4HZMST(HZM,N)
 Q SAS
 ;
CAULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SCA S SCA=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SCA=SCA+$$SCA^W4HZMST(HZM,N)
 Q SCA
 ;
TLULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N STL S STL=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S STL=STL+$$STL^W4HZMST(HZM,N)
 Q STL
 ;
POSULM(STAM)
 Q $$^W4GL("W4POSATR")
 ;
SDMSL(STAM) ; 
 Q $$SDMSL^W4PRM 
 ; 
NOMAM(STAM) ; 
 Q $$NOMAM^W4PRM 
 ;
VHZ(HZ) ;
 I $G(@$$^W4PRM@("RSTGNEW")),$$WOLT^W4HZMST(HZ) Q 4
 I $$HZM^W4MSL(HZ),$$TAKEAWAY^W4HZMST(HZ) Q 1
 I $$HZM^W4MSL(HZ) Q 3
 Q 2
 ;
SHIFT(HZ) ; 
 N TM S TM=$$DATCB^W4HZMST(HZ)
 S TM=$P(TM,"  ",2)  
 S TM=TM*50+$P(TM,":",2) 
 N SHIFT2 S SHIFT2=$G(@$$^W4PRM@("SHIFT2"))
 I SHIFT2,TM>(SHIFT2*60+$P(SHIFT2,":"))!(TM<$$SHAAZ^W4PRM*60) Q 2 
 Q 1 
 ;
SUMVHZ(SHIFT,VHZ,VT,SUM)
 I $G(VHZ)=""!($G(SHIFT)="")!($G(VT)="") Q
 I SUM>0 D
 .S @GLBL@("SHOV",SHIFT,VHZ,VT)=$G(@GLBL@("SHOV",SHIFT,VHZ,VT))+SUM
 .S @GLBL@("#SHOV",SHIFT,VHZ,VT)=$G(@GLBL@("#SHOV",SHIFT,VHZ,VT))+1
 .I $G(HZM) D
 ..I $$HZM^W4MSL(HZM),'$$SDMSL^W4PRM,'$$MSLSD^W4PRM Q
 ..S @GLBL@("#SHOV",SHIFT,VHZ,VT,"SD")=$G(@GLBL@("#SHOV",SHIFT,VHZ,VT,"SD"))+$$SOAD^W4HZMST(HZM)
 I SUM<0 D
 .S @GLBL@("SZIC",SHIFT,VHZ,VT)=$G(@GLBL@("SZIC",SHIFT,VHZ,VT))+SUM
 .S @GLBL@("#SZIC",SHIFT,VHZ,VT)=$G(@GLBL@("#SZIC",SHIFT,VHZ,VT))+1
 .I $G(HZM) D
 ..I $$HZM^W4MSL(HZM),'$$SDMSL^W4PRM,'$$MSLSD^W4PRM Q
 ..S @GLBL@("#SZIC",SHIFT,VHZ,VT,"SD")=$G(@GLBL@("#SZIC",SHIFT,VHZ,VT,"SD"))-$$SOAD^W4HZMST(HZM)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SUM0
W4SUM ; SIKUM JOMI CASPI [ 20.06.16 12:39 ] [ 19.05.16 16:34 ] [ 01.04.16 18:29 ] 
 I $$^W4LKH D ^W4LKHSUM(DAT) Q
 ;
 N (JB,%ARG,%REM,DAT,SGIRATJOM,MEK,GLBL,HZ0,HZ1,DOCH,SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSH,SHZM,SUMMTB,P1X,HAVT,SUMTAW,SUMATAW,STAW,LLQNS,LLSUMS,LLQNT,LLSUMT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 S (DSUMMSD,DSUMMSL,DSUMDLP,DSUMAMSD,DSUMAMSL,DSUMTAW,DSUMATAW,DSUMADLP,DSSOAD,DSMSH,DHAVT)=0
 ;
 S DD=$$^%L1DC(DAT,4),KUP=901,NZ=0
 ;
 D GLBLTMP ; --> GLBL=TEMP
 I $D(SGIRATJOM) S NZ=$G(@$$^W4GL("Z"))+1
 ;
 K @GLBL
 ;
 S P1HDD=$$^W4GL("P1H")_"(DD)"
 I $D(SGIRATJOM) D
 .K @$$^W4MAIN("P1LKHZ")
 .K @P1HDD@(0)
 .K @P1HDD@("ycg")
 ;
 ;------------ SGIRAT HESHB-T PTUCHOT
 I $D(SGIRATJOM),$G(DOCH)'="X" S HZM="" D
 .F  S HZM=$O(@P1HDD@(HZM)) Q:HZM=""  D
 ..N DDD,SSS
 ..S DDD=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 ..S SSS=$$SHAA^W4HZMST(HZM)
 ..
 ..I $G(DOCH)="Z" D
 ...I $G(@$$^W4PRM@("MM")),$$MSL^W4HZMST(HZM) D
 ....I '($$CLOSE^W4HZMST(HZM)#2),DDD'>DD!(DDD=DD+1&(SSS<$$SHAAZ^W4PRM)) D
 .....D PLU^W4HZMPC
 .....S @$$^W4ORD@(HZM,"S")=$G(@$$^W4ORD@(HZM,"S"))+1
 ..
 ..N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 ..S TSHL=$$TSHL^W4HZMST(HZM)
 ..
 ..I $$MSL^W4HZMST(HZM),DDD>P1DZ,SSS'<$$SHAAZ^W4PRM Q
 ..
 ..I 'TSHL,'$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 ..
 ..I ITRA>.1!(ITRA<-.1),$$^W4CLOSE(HZM),$G(DOCH)'="Z" D  ; -- BITUL SGIRA
 ...S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)#2
 ..
 ..I $$^W4CLOSE(HZM) Q
 ..I ITRA Q
 ..
 ..I TSHL D SGHZ(HZM)
 ..
 ..I $D(@$$^W4ORD@(HZM,"ETHB")),'$$^W4CLOSE(HZM) D
 ...S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)+2
 ..I $G(@$$^W4ORD@(HZM,"ETHB2")),$$CLOSE^W4HZMST(HZM)<4 D
 ...S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)+4
 ;
 ;
 I $D(SGIRATJOM),$G(DOCH)="Z" D ^W4CLPLU(P1DZ,P1DZ) ;-- TIKUN DOCH PRITIM
 ;
 ;
 K TIPHZM S FIRSTHZ=1
 K TAS,MINAS,MIN2AS,BITAS
 S SSHULA=0,TIPASNO=0
 ;
 D  ; --- DOCUMENTS FROM ^W4DOC
 .N DT
 .S DT=$$^%L1DC(DAT,4)
 .D DOCSUM^W4LKHSUM(DT)
 ;
 ;--------------------------------- HAZM-T --------------------------------
 I $$SUPER^W3PRM D
 .N A S A=$$^W4DMAM(DD,DD)
 .S @GLBL@("MAM",1)=+A
 .S @GLBL@("CMAM",1)=$P(A,"\",2)
 .S @GLBL@("NOMAM",1)=$P(A,"\",3)
 ;
 S (HZ,HZ0,HZ1)=""
 F  S HZ=$O(@P1HDD@(HZ)) Q:HZ=""  D
 .N DDHZ S HZ1=HZ,DDHZ=$G(^(HZ))
 .
 .;;I '$$Z24^W4PRM,$D(SGIRATJOM),$$SIGNZ(DD,HZ)!($$SIGNY(DD,HZ)&($G(DOCH)'="Z")) D  Q
 .I '$$Z24^W4PRM,$D(SGIRATJOM),$$SIGNZ(DD,HZ) D  Q
 ..K @GLBL,SUMMTB K @$$^W4MAIN("P1LKHZ")
 ..D ^W4SUMZRO
 ..S FIRSTHZ=1
 .
 .I $D(SGIRATJOM),DDHZ[",Z" Q
 .I $D(SGIRATJOM),$G(DOCH)'="Z",DDHZ[",Y" Q
 .
 .D HISHUV(HZ)
 ;
 I $D(SGIRATJOM) D ^%S2GLSV($$^W4GL("P1H")_"("_DD_")",$$^W4FGIB)
 ;
 I '$$Z24^W4PRM,HZ1,NZ,'$$SIGNZ(DD,HZ1),$D(SGIRATJOM),$G(DOCH)="Z" D
 .S ^(HZ1)=@P1HDD@(HZ1)_",^"
 ;
 I '$$Z24^W4PRM,HZ1,$D(SGIRATJOM),'$$SIGNY(DD,HZ1),'$$SIGNZ(DD,HZ1),$G(DOCH)="Y" D
 .S ^(HZ1)=@P1HDD@(HZ1)_",?"
 ;
 ;---------- KABALAT TIP MEZUMAN MI MELZARIM FOR MASKORET
 I NZ,'$$TIPMZM^W4PRM I $D(@$$^W4GL("TIPMZ")@(DD_"^"_NZ)) D  G MISC ;----------- X,Z
 .;
 .N N S N="" F  S N=$O(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N)) Q:N=""  D
 ..N TIPMZ,TIM,MESHAA1,MESHAA2
 ..S TIPMZ=$G(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N))
 ..I $G(DOCH)="Z" S TIPMZ=+TIPMZ
 ..S TIM=$P($H,",",2)\3600
 ..S MESHAA1=$G(@$$^W4PRM@("TIPDAY","MESHAA1"))
 ..S MESHAA2=$G(@$$^W4PRM@("TIPDAY","MESHAA2"))
 ..N TIPMZY S TIPMZY=0
 ..
 ..I $G(DOCH)'="Z" D
 ...N LY S LY=$O(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",9999),-1)+1
 ...N J F J=1:1 Q:'$D(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",J))  D
 ....S TIPMZY=TIPMZY+$G(^(J))
 ...I $G(DOCH)="Y" D
 ....L +@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",LY):1
 ....S @$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",LY)=TIPMZ-TIPMZY
 ....L -@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",LY)
 ...S TIPMZ=TIPMZ-TIPMZY
 ..
 ..I $G(DOCH)'="Z",MESHAA2,TIM>(MESHAA2+3)!(TIM<MESHAA1),TIPMZ["?" D
 ...S TIPMZ=$P(TIPMZ,"?",3)
 ..
 ..I $G(DOCH)'="Z",MESHAA1,TIM'>(MESHAA2+3),(TIM>MESHAA1+5),TIPMZ["?" D
 ...S TIPMZ=$P(TIPMZ,"?",2)
 ..
 ..S @GLBL@("TS",1)=$G(@GLBL@("TS",1))+TIPMZ
 ..S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIPMZ
 ..S @GLBL@("T",1,N)=$G(@GLBL@("T",1,N))+TIPMZ
 ..I '$$TIPNO^W4TIPPD(DD) D
 ...S @GLBL@("FS",1)=$G(@GLBL@("FS",1))+TIPMZ
 ...S @GLBL@("F",1)=$G(@GLBL@("F",1))+TIPMZ
 ...S @GLBL@("F",1,N)=$G(@GLBL@("F",1,N))+TIPMZ
 ..I $$^W4TIPPD(DD) D
 ...S:'$G(TAWMSD) SUMMSD=SUMMSD+TIPMZ,DSUMMSD=DSUMMSD+TIPMZ
 ...S:$G(TAWMSD) SUMTAW=SUMTAW+TIPMZ,DSUMTAW=DSUMTAW+TIPMZ
 ..S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+TIPMZ
 ;
 ;
 I 'NZ,'$$TIPMZM^W4PRM D  ;--------------- DOCH KASPI RAGIL - HISHUV TIPIM
 .N J0,J1,TIPMZ,TIPMZ1
 .S J0=DD_"^",TIPMZ=0
 .F  S J0=$O(@$$^W4GL("TIPMZ")@(J0)) Q:J0=""  I $P(J0,"^")=DD D
 ..S J1="" F  S J1=$O(@$$^W4GL("TIPMZ")@(J0,J1)) Q:J1=""  D
 ...S TIPMZ1=$G(^(J1))
 ...S TIPMZ=TIPMZ+TIPMZ1
 ...S @GLBL@("TS",1)=$G(@GLBL@("TS",1))+TIPMZ1
 ...S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIPMZ1
 ...S @GLBL@("T",1,J1)=$G(@GLBL@("T",1,J1))+TIPMZ1
 ...I '$$TIPNO^W4TIPPD(DD) D
 ....S @GLBL@("FS",1)=$G(@GLBL@("FS",1))+TIPMZ1
 ....S @GLBL@("F",1)=$G(@GLBL@("F",1))+TIPMZ1
 ....S @GLBL@("F",1,J1)=$G(@GLBL@("F",1,J1))+TIPMZ1
 ....Q:'$$^W4TIPPD(DD)
 ....S:'$G(TAWMSD) SUMMSD=SUMMSD+TIPMZ1,DSUMMSD=DSUMMSD+TIPMZ1
 ....S:$G(TAWMSD) SUMTAW=SUMTAW+TIPMZ1,DSUMTAW=DSUMTAW+TIPMZ1
 ..
 ..S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+TIPMZ
 ;
 ;
MISC ;
 ;-------------------------- KABALOT --------------------------
 D CB(DAT,"CB")
 ;
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 ;
 I $G(NUMBER1),$G(NZ),$G(STRING),$P($G(@$$^W4GL("KLF")@(STRING,"CB",NUMBER1)),"\",10)'="^",$G(DOCH)="Z" D
 .S $P(^(NUMBER1),"\",10)="^"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_STRING_""",""CB"","""_NUMBER1_""")",$$^W4FGIB)
 ;
 I $G(NUMBER1),$G(STRING),$D(SGIRATJOM),$P($G(@$$^W4GL("KLF")@(STRING,"CB",NUMBER1)),"\",10)'="?",$P($G(^(NUMBER1)),"\",10)'="^",$G(DOCH)="Y" D
 .S $P(^(NUMBER1),"\",10)="?"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_STRING_""",""CB"","""_NUMBER1_""")",$$^W4FGIB)
 ;
 ; ------------------------- HMK ---------------------------
 K CBCB
 D CB(DAT,"HMK")
 ;
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 ;
 S @GLBL@("TIME",$P($ZG,"/",$L($ZG,"/")))=$$^%L1DC($H,1)_"\"_$$T^%L1TIME($H)
 S @GLBL=$$^%L1DC($H,1)_"\"_$$T^%L1TIME($H)_"^"
 ;
 ;----------------- HMK ( W4DOC ) -----------------
 ;;I $$^W4LKH D SUM^W4SUML(DD,$G(DOCH))
 ;
 ;--------------------- HESHBONIOT FOR HASHAVSEVET
 D FRMHSVH(DAT)
 ;
 K @$$^W4GL("HSV")@(DAT,KUP)
 D ^%S2GLSV($$^W4GL("HSV")_"("""_DAT_""","""_KUP_""")",$$^W4FGIB,"K")
 ;
 S MAC1=$$BG^W4MAIN("TEMP")_"""HSV"")"
 S MAC2=$$^W4GL("HSV")_"(DAT,KUP)"
 D ^%S1GC1 K @$$^W4MAIN("TEMP")@("HSV")
 D ^%S2GLSV($$^W4GL("HSV")_"("""_DAT_""","""_KUP_""")",$$^W4FGIB)
 ;
 ; ----------------------- ^TEMP ---> ^TOT ( OR ^Z1 )
 D GLBL($G(DOCH),DAT) K @GLBL
 ;
 K @$$^W4MAIN("TEMP")@("HZM")
 L +@GLBL:1
 S MAC1=$$^W4MAIN("TEMP"),MAC2=GLBL D ^%S1GC1 K @$$^W4MAIN("TEMP")
 ;
 S @GLBL@("MSD",1)=DSUMMSD,@GLBL@("AMSD",1)=DSUMAMSD
 S @GLBL@("MSL",1)=DSUMMSL,@GLBL@("AMSL",1)=DSUMAMSL
 L -@GLBL
 Q
 ;
 ;
FRMHSVH(DAT) ; -- HACHANAT KOVEZ LE HASHAVSHEVET -------
 Q:$D(P1X("SHUL"))
 Q:$D(P1X("PART"))
 Q:$D(P1X("ULAM"))
 N N,DATS,DATF,NUMBER,DAT2,LKH,SUM,STRING,NMB,HB,DHB
 S (DATS,DATF)=$$^%L1DC(DAT,4)
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("H",N)) Q:N=""  D
 .I $D(SGIRATJOM),$L($G(DOCH)),$D(@$$^W4GL("KLIN")@("H",N,"Z")) Q
 .I $D(SGIRATJOM),$G(DOCH)="Y",$D(@$$^W4GL("KLIN")@("H",N,"Y")) Q
 .I $D(SGIRATJOM),$L($G(DOCH)),DOCH'="X" D
 ..S @$$^W4GL("KLIN")@("H",N,DOCH)=$S($G(DOCH)="Y":$H,1:NZ)
 .
 .S STRING=$G(^(N)),LKH=$$LK^W4STRING("H",N)
 .S HB=N,ER=0
 .
 .I STRING["+" D  Q:ER  G EC ;------ OTOMAT
 ..I '$D(@$$^W4GL("P1LHB")@(LKH,HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",4),DHB=$P(ST,"\",8)
 ..Q:DHB'=DATS
 ..I STRING["+M" S MAM=$$MAM(LKH,HB)
 ..I STRING'["+M" S MAM=$$MAM^W4L(LKH,DHB),MAM=$J(SUM*MAM/(100+MAM),2,2)
 ..D TMPHSVH(LKH,HB,SUM,MAM)
 .;
 .I STRING'["+",STRING'["^",STRING'["W" D  Q:ER  G EC ;------ JAD
 ..I '$D(@$$^W4GL("KLF")@(LKH,"H",HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",2),DHB=$$^%L1DC($P(ST,"\",4),4)
 ..S MAM=$P(ST,"\",3)
 ..Q:DHB'=DATS
 ..D TMPHSVH(LKH,HB,SUM,MAM)
 .;
 .I STRING'["+",STRING["^MLY",$$MLY^W4PRM D  Q:ER  G EC ;------ MLY JASHAN
 ..N A S A=$G(@("^["""_@$$^W4GL("UCI")@("MLG")_"""]"_$P(STRING,"^",2)))
 ..I A="" S ER=1 Q
 ..S SUM=$P(A,"*",10),MAM=SUM-$P(A,"*",9)
 ..S DHB=$$^%L1DC($P(A,"*",15),3) Q:DHB'=DATS
 ..D TMPHSVH(LKH,HB,SUM,MAM)
EC .Q
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("TZ",N)) Q:N=""  D  ; - HESB ZIC YAD
 .I $D(SGIRATJOM),$D(@$$^W4GL("KLIN")@("TZ",N,"Z")) Q
 .I $D(SGIRATJOM),$G(DOCH)="Y",$D(@$$^W4GL("KLIN")@("TZ",N,"Y")) Q
 .I $D(SGIRATJOM),$L($G(DOCH)),DOCH'="X" D
 ..S @$$^W4GL("KLIN")@("TZ",N,DOCH)=$S($G(DOCH)="Y":$H,1:NZ)
 .
 .S STRING=$G(^(N)),LKH=$$LK^W4STRING("TZ",N)
 .S HB=N,ER=0
 .
 .I STRING["+" D  Q:ER  G EC ;------ OTOMAT
 ..N HB S HB=-N
 ..I '$D(@$$^W4GL("P1LHB")@(LKH,HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",4),DHB=$P(ST,"\",8)
 ..Q:DHB'=DATS
 ..S MAM=$$MAM^W4L(LKH,DHB),MAM=$J(SUM*MAM/(100+MAM),2,2)
 ..D TMPHSVTZ(LKH,-HB,-SUM,-MAM)
 .;
 .I STRING'["W" D  ;------ JAD
 ..I '$D(@$$^W4GL("KLF")@(LKH,"TZ",HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",2),DHB=$$^%L1DC($P(ST,"\",4),4)
 ..S MAM=$P(ST,"\",3)
 ..Q:DHB'=DATS
 ..D TMPHSVTZ(LKH,HB,SUM,MAM)
 ;
 K @$$^W4MAIN("TMPW")
 S N="" F  S N=$O(@$$^W4GL("W4DIRD")@(DATS,N)) Q:N=""  D  ; -- HESB MEFURETET
 .N A S A=$G(^(N))
 .I $D(SGIRATJOM),A[",^" K @$$^W4MAIN("TMPW") Q
 .I $D(@$$^W4GL("W4DOC")@(N,"H")) D
 ..N HB S HB=$G(^("H"))
 ..S SUM=$$SUMTD^W4DOC(N),MAM=$$MAM^W4DOC(N),LKH=$$LKH^W4DOC(N)
 ..D TMPHSVH(LKH,HB,SUM,MAM,"W")
 .
 .I $D(@$$^W4GL("W4DOC")@(N,"TZ")) D  ;-- HESB ZIC MEFURETET
 ..N HB S HB=$G(^("TZ"))
 ..S SUM=$$SUMTD^W4DOC(N),MAM=$$MAM^W4DOC(N),LKH=$$LKH^W4DOC(N)
 ..D TMPHSVTZ(LKH,HB,SUM,MAM,"W")
 ;
 D
 .N TEMP S TEMP=$$^W4MAIN("TEMP")
 .N TMPW S TMPW=$$^W4MAIN("TMPW")
 .N N S N="" F  S N=$O(@TMPW@(N)) Q:N=""  D
 ..I N["-" M @TEMP@(N)=@TMPW@(N) Q
 ..S @TEMP@(N,1)=$G(@TEMP@(N,1))+$G(@TMPW@(N,1))
 K @$$^W4MAIN("TMPW")
 ;
 Q
 ;
 ;
TMPHSVH(LKH,HB,SUM,MAM,PR) ;
 N TEMP S TEMP=$$^W4MAIN("TEMP")
 I $L($G(LKH)) S @TEMP@("HSV",LKH,"H-"_HB)=SUM_"\"_MAM
 I $G(PR)["W" S TEMP=$$^W4MAIN("TMPW")
 S @TEMP@("HB",1)=$G(@TEMP@("HB",1))+SUM
 S @TEMP@("HB#",1)=$G(@TEMP@("HB#",1))+1
 S @TEMP@("HBMAM",1)=$G(@TEMP@("HBMAM",1))+MAM
 Q
 ;
TMPHSVTZ(LKH,HB,SUM,MAM,PR) ;
 N TEMP S TEMP=$$^W4MAIN("TEMP")
 I $L($G(LKH)) S @TEMP@("HSV",LKH,"HBZ-"_HB)=SUM_"\"_MAM
 I $G(PR)["W" S TEMP=$$^W4MAIN("TMPW")
 S @TEMP@("HBZ",1)=$G(@TEMP@("HBZ",1))+SUM
 S @TEMP@("HBZ#",1)=$G(@TEMP@("HBZ#",1))+1
 S @TEMP@("HBZMAM",1)=$G(@TEMP@("HBZMAM",1))+MAM
 Q
 ;
CH ;I $$^%L1DC(DATP,3)'>(DD+1) S @GLBL@("GM",1)=$G(@GLBL@("GM",1))+CHS
 S @GLBL@("GO",1)=$G(@GLBL@("GO",1))+CHS
 Q
 ;
 ;
HNH(HZM) ;
 Q:$G(HZM)=""
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 ;;L +@GLBL:1
 N HNHP S HNHP=$$SSUMHNHP^W4HZMST(HZM) I HNHP D
 .S @GLBL@("MINPAR",1)=$G(@GLBL@("MINPAR",1))+HNHP
 .S ^AA(DAT,HZM)=$G(^AA(DAT,HZM))+HNHP
 ;
 I $G(HNH) D
 .I $P(HNH,"=")'["%" D  Q
 ..S @GLBL@("MIN",1)=$G(@GLBL@("MIN",1))+HNH
 ..S @GLBL@("MIN",1,MKB)=$G(@GLBL@("MIN",1,MKB))+HNH
 ..I $D(AS) D
 ...S MINAS(MKB)=$G(MINAS(MKB))+HNH
 ...S MINAS=$G(MINAS)+HNH
 .
 .S HNH=+HNH
 .N HN S HN=0 I HNH'=100 S HN=$J(TSHL*100/(100-HNH)-TSHL,2,2)
 .S @GLBL@("MIN",1)=$G(@GLBL@("MIN",1))+HN
 .S:$D(AS) MINAS=$G(MINAS)+HN
 .S @GLBL@("MIN",1,MKB)=$G(@GLBL@("MIN",1,MKB))+HN
 .S:$D(AS) MINAS(MKB)=$G(MINAS(MKB))+HN
 ;
 ;
 I $G(HNH2) D  ;-- HANAHA NOSEFET
 .I HNH2'["%" D  Q
 ..S @GLBL@("MIN2",1)=$G(@GLBL@("MIN2",1))+HNH2
 ..S @GLBL@("MIN2",1,MKB)=$G(@GLBL@("MIN2",1,MKB))+HNH2
 ..S:$D(AS) MIN2AS(MKB)=$G(MIN2AS(MKB))+HNH2
 ..S:$D(AS) MIN2AS=$G(MIN2AS)+HNH2
 .
 .S @GLBL@("MIN2",1)=$G(@GLBL@("MIN2",1))+(TSHL*HNH2*.01)
 .S:$D(AS) MIN2AS=$G(MIN2AS)+(TSHL*HNH2*.01)
 .S @GLBL@("MIN2",1,MKB)=$G(@GLBL@("MIN2",1,MKB))+(TSHL*HNH2*.01)
 .S:$D(AS) MIN2AS(MKB)=$G(MIN2AS(MKB))+(TSHL*HNH2*.01) Q
 ;
 I $G(HNHTL) D  ;-- TLUSH
 .S @GLBL@("MINT",1)=$G(@GLBL@("MINT",1))+HNHTL
 .S @GLBL@("MINT",1,MKB)=$G(@GLBL@("MINT",1,MKB))+HNHTL
 ;
 S HNHCIB=$G(@$$^W4ORD@(HZM,"CIBHN"))
 I $G(HNHCIB) D
 .S @GLBL@("CIBHN",1)=$G(@GLBL@("CIBHN",1))+HNHCIB
 .S @GLBL@("CIBHN",1,MKB)=$G(@GLBL@("CIBHN",1,MKB))+HNHCIB
 ;
 I $G(@$$^W4ORD@(HZM,"LKHAH")) D  ; ----- ?????????????
 .N CIBAH,HNHCIBA S CIBAH=^("LKHAH")
 .N I,T3 S T3=0 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N A S A=$G(^(I))
 ..I $P(A,"\")'="",'$D(@$$^W4GL("PRTBH")@($P(A,"\"))) D
 ...S T3=T3+$P(A,"\",7)
 .
 .S HNHCIBA=$J(T3*CIBAH*.01,2,2)
 .S @GLBL@("CIBHN",1)=$G(@GLBL@("CIBHN",1))+HNHCIBA
 .S @GLBL@("CIBHN",1,MKB)=$G(@GLBL@("CIBHN",1,MKB))+HNHCIBA
 ;
 N N,HNHL S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S HNHL=$P($G(^(N)),"*",3)
 .S @GLBL@("HNHL",1)=$G(@GLBL@("HNHL",1))+HNHL
 .S @GLBL@("HNHL",1,MKB)=$G(@GLBL@("HNHL",1,MKB))+HNHL
 ;
 I $G(DMSH) D
 .S @GLBL@("DMSH",1)=$G(@GLBL@("DMSH",1))+DMSH
 .S:$D(AS) DMSHAS=$G(DMSHAS)+DMSH
 .S @GLBL@("DMSH",1,MKB)=$G(@GLBL@("DMSH",1,MKB))+DMSH
 .S:$D(AS) DMSHAS(MKB)=$G(DMSHAS(MKB))+DMSH Q
 ;;L -@GLBL
 Q
 ;
 ;
TIPSUG(HZM) ;
 S @GLBL@("TCA",1)=$G(@GLBL@("TCA",1))+$$STIPVT^W4HZMST(HZM,"V")
 S @GLBL@("TCHK",1)=$G(@GLBL@("TCHK",1))+$$STIPVT^W4HZMST(HZM,"CH")
 S @GLBL@("TASR",1)=$G(@GLBL@("TASR",1))+$$STIPVT^W4HZMST(HZM,"ASR")
 S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+$$STIPVT^W4HZMST(HZM,"MZ")
 Q
 ;
 ;
MKBL(HZM) ;
 N MKBL,PSL
 S MKBL=$$MKBL^W4HZMST(HZM)
 S PSL=$$PSL^W4HZMST(HZM)
 I $$MSD^W4HZMST(HZM),$G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)) D
 .S MKBL=@$$^W4GL("P1MLZ")@(HZM)
 I $G(MKBL),$$^W4MSD(NMB) Q MKBL
 I $G(PSL),$$^W4MSL(NMB) Q PSL
 I $G(MKBL),$$^W4MSL(NMB) Q 9999
 Q 0
 ;
BIT(HZM) S BIT=0
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 N OKBIT S OKBIT=1
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:'OKBIT
 .I $D(@$$^W4ORD@(HZM,"BIT",I)),'$$DELPOS^W4HZMST(HZM,I) S OKBIT=0
 ;
 I '$D(@$$^W4ORD@(HZM,"BIT")) S OKBIT=0
 ;
 I $G(P1X("PART")),'OKBIT!$$TSHL^W4HZMST(HZM)<0,$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),'OKBIT!$$TSHL^W4HZMST(HZM)<0,$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 I $$SHIHZUR(HZM) Q
 I $$^W4DEL(HZM),$$^W4DEL(HZM)'=HZM Q
 ;
 Q:'$$^W4CLOSE(HZM)&($G(DOCH)'="X")
 ;
 I $$TSHL^W4HZMST(HZM)<0 D  Q
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..I $$QN^W4HZMST(HZM,I)<0,'$$AVAR^W4HZMST(HZM,I) D
 ...N SUM S SUM=$$SUM^W4HZMST(HZM,I) ;+$$SUMHNHP^W4HZMST(HZM,I)
 ...;;S ^AA(HZM)=$G(^AA(HZM))+SUM
 ...S BIT=BIT-SUM
 ;
 I '$D(@$$^W4ORD@(HZM,"BIT")) D  Q
 .N I
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $$QN^W4HZMST(HZM,I)<0 D
 ..Q:$$AVAR^W4HZMST(HZM,I)
 ..S SUM=$$SUM^W4HZMST(HZM,I) ;+$$SUMHNHP^W4HZMST(HZM,I)
 ..;;S ^AA(HZM)=$G(^AA(HZM))+SUM
 ..S BIT=BIT-SUM
 ;
 N N
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .Q:$$AVAR^W4HZMST(HZM,N)
 .I $G(P1X("PART")),$$DELPOS^W4HZMST(HZM,N)'=P1X("PART") Q
 .I $G(P1X("ULAM")),$$ULAM($$DELPOS^W4HZMST(HZM,N))'=P1X("ULAM") Q
 .S SUM=$$SUM^W4HZMST(HZM,N) ;+$$SUMHNHP^W4HZMST(HZM,N)
 .;;S ^AA(HZM)=$G(^AA(HZM))+SUM
 .S BIT=BIT-SUM
 Q
 ;
 ;
CB(DAT,CODDOC) ; --> CBCB
 K CBCB
 N CAV,DOP,MZMN,MASMK,NUMBER,NUMBER1,STRING,SUM,SUMCHO,SUMCHB,SUMCH,SUMTZ1,VTS
 N DATS,DATF,DAT2,DATPR,DATCB,DTCB
 D GLBLTMP ;-- GLBL=TEMP
 ;
 S (DATS,DATF)=$$^%L1DC(DAT,4)
 ;
 I ('$G(P1X("SHUL"))&'$G(P1X("PART"))&'$G(P1X("ULAM")))!$$^W4LKH D
 .S NUMBER="",NUMBER1="" K CBCB
 .F  S NUMBER=$O(@$$^W4GL("KLIN")@(CODDOC,NUMBER)) Q:NUMBER=""  D
 ..S STRING=$G(@$$^W4GL("KLIN")@(CODDOC,NUMBER)) Q:STRING=""
 ..N GLCB S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER)"
 ..I CODDOC="HMK" S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER,""CB"")"
 ..N HDCB S HDCB=$G(@GLCB)
 ..S DATCB=$P(HDCB,"\",4)
 ..I DATCB?2N1"."2N1"."2N S DATCB=$$^%L1DC(DATCB,2)
 ..S DTCB=$$^%L1DC(DATCB,4)
 ..Q:DTCB<DATS!(DTCB>DATF)
 ..I $G(NZ),$P(HDCB,"\",10)="^" K CBCB Q
 ..I $D(SGIRATJOM),$P(HDCB,"\",10)="?",$G(DOCH)'="Z" K CBCB Q
 ..I $D(SGIRATJOM),$G(DOCH)="Z" S $P(@GLCB,"\",10)="^"
 ..I $D(SGIRATJOM),$G(DOCH)="Y",$P($G(@GLCB),"\",10)="" S $P(@GLCB,"\",10)="?"
 ..S NUMBER1=NUMBER
 ..D ^W4CBGT(STRING,CODDOC,NUMBER) S SHUL=SUMTZ1
 ..;
 ..S DOP="" I CODDOC="CB" S DOP="D"
 ..I $G(CAV) S:$E(VTS)="$" VTS=$E(VTS,2,3) D  K CAV
 ...S CBCB("V"_DOP)=$G(CBCB("V"_DOP))+CAV
 ...S CBCB(VTS_DOP)=$G(CBCB(VTS_DOP))+CAV
 ...S CBCB(VTS_DOP_"#")=$G(CBCB(VTS_DOP_"#"))+1
 ...I CODDOC="CB" S @GLBL@("HSV",STRING,"D-"_NUMBER_"-"_$C($A("I")+$E(VTS,2)-1))=CAV
 ..;
 ..I MZMN D
 ...S CBCB("F"_DOP)=$G(CBCB("F"_DOP))+MZMN
 ...S CBCB("F"_DOP_"#")=$G(CBCB("F"_DOP_"#"))+1
 ...I CODDOC="CB" S @$$^W4MAIN("TEMP")@("HSV",STRING,"D-"_NUMBER_"-F")=MZMN
 ..;
 ..I MASMK,CODDOC="CB" S @GLBL@("HSV",STRING,"D-"_NUMBER_"-MK")=MASMK
 ..;
 ..I SUMCHO D
 ...S CBCB("G"_DOP_"O")=$G(CBCB("G"_DOP_"O"))+SUMCHO
 ...S CBCB("G"_DOP_"O#")=$G(CBCB("G"_DOP_"O#"))+1
 ..;
 ..I $G(SUMCHB) D
 ...S CBCB("G"_DOP_"B")=$G(CBCB("G"_DOP_"B"))+SUMCHB
 ...S CBCB("G"_DOP_"B#")=$G(CBCB("G"_DOP_"B#"))+1
 ..;
 ..I SUMCH,CODDOC="CB" D
 ...N DATPR,NN,SUMG
 ...S NN="" F  S NN=$O(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER,NN)) Q:NN=""  I NN D
 ....S SUMG=+^(NN) Q:'SUMG
 ....S DATPR=$TR($P(^(NN),"\",7),"./","")
 ....;;I $$^%L1DC(DATPR,3)'>DTCB D  Q  ; --> COMMENT *** LEV 05/12/15
 .....S @GLBL@("HSV",STRING,"D-"_NUMBER_"-GM-"_DATCB)=$G(@GLBL@("HSV",STRING,"D-"_NUMBER_"-GM-"_DATCB))+SUMG
 ....S @GLBL@("HSV",STRING,"D-"_NUMBER_"-G-"_DATPR)=$G(@GLBL@("HSV",STRING,"D-"_NUMBER_"-G-"_DATPR))+SUMG
 ..;
 ..S CBCB("G"_DOP)=$G(CBCB("G"_DOP))+SUMCH
 ..S CBCB("G"_DOP_"#")=$G(CBCB("G"_DOP_"#"))+1
 Q
 ;
 ;
SHIHZUR(HZM) ;
 N B S B=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",2)
 I $E(B,$L(B))=">" Q 1
 Q 0
 ;
SUMMTB(HZM) ;
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","M",N)) Q:N=""  D
 .S $P(SUMMTB(N),"!")=$G(SUMMTB(N))+^(N)
 .S $P(SUMMTB(N),"!",2)=$P($G(SUMMTB(N)),"!",2)+(^(N)*$P(^(N),"!",2))
 .S SUMMTB=$G(SUMMTB)+(^(N)*$P(^(N),"!",2))
 .N A S A=$G(^(N))
 .;;L +@GLBL@("MTB"):1
 .S $P(@GLBL@("MTB",N),"!")=$G(@GLBL@("MTB",N))+A
 .S $P(@GLBL@("MTB",N),"!",2)=$P($G(@GLBL@("MTB",N)),"!",2)+(A*$P(A,"!",2))
 .S $P(@GLBL@("MTB",N,MKB),"!")=$G(@GLBL@("MTB",N,MKB))+A
 .S $P(@GLBL@("MTB",N,MKB),"!",2)=$P($G(@GLBL@("MTB",N,MKB)),"!",2)+(A*$P(A,"!",2))
 .;;L -@GLBL@("MTB")
 Q
 ;
DIF(VT,NMB,SUM) ; --- LEFI MISSADA, TAW & MISHLOHIM
 Q:'NMB
 I $G(HZM)>0,$$SUPER^W3PRM D
 .N KMAM S KMAM=$G(@$$^W4ORD@(HZM,"KMAM"))
 .I KMAM="" S KMAM=1
 .S @GLBL@(VT,"CMAM")=$G(@GLBL@(VT,"CMAM"))+(SUM*KMAM)
 ;
 S @GLBL@(VT_"#",1)=$G(@GLBL@(VT_"#",1))+1
 ;
 I $$^W4MSD(NMB),'$G(TAWMSD) D  Q
 .S @GLBL@(VT_"S",1)=$G(@GLBL@(VT_"S",1))+SUM
 .S @GLBL@(VT_"S#",1)=$G(@GLBL@(VT_"S#",1))+1
 ;
 I $$^W4MSD(NMB),$G(TAWMSD) D  Q
 .S @GLBL@(VT_"W",1)=$G(@GLBL@(VT_"W",1))+SUM
 .S @GLBL@(VT_"W#",1)=$G(@GLBL@(VT_"W#",1))+1
 ;
 I $$^W4MSL(NMB) D
 .S ^LEVDEB(HZM,VT_"L")=$G(^LEVDEB(HZM,VT_"L"))+SUM
 .S @GLBL@(VT_"L",1)=$G(@GLBL@(VT_"L",1))+SUM
 .S @GLBL@(VT_"L#",1)=$G(@GLBL@(VT_"L#",1))+1
 .I $G(TAWMSL) D
 ..S @GLBL@(VT_"T",1)=$G(@GLBL@(VT_"T",1))+SUM
 ..S @GLBL@(VT_"T#",1)=$G(@GLBL@(VT_"T#",1))+1
 Q
 ;
SIGNZ(DD,HZ) ;
 I $G(@$$^W4GL("P1H")@(DD,HZ))[",^" Q 1
 Q 0
SIGNY(DD,HZ) ;
 I $G(@$$^W4GL("P1H")@(DD,HZ))[",?" Q 1
 Q 0
MLZ(MKB) ;
 I $L($G(MKB))'=5 Q 0
 Q 1
PSL(MKB) ;
 I $L($G(MKB)),$L($G(MKB))<5 Q 1
 Q 0
 ;
MAM(STRING,HB) ;
 N MAM S MAM=0
 N N S N="" F  S N=$O(@$$^W4GL("KLIN")@("H",HB,STRING,N)) Q:N=""  D
 .N TD S TD=$P($G(^(N)),"\",3)
 .N SHANA,MRK,STR,TSTR,A
 .S SHANA=$P(N,"-"),MRK=$P(N,"-",2)
 .Q:SHANA=""  Q:MRK=""  Q:TD=""
 .S STR=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",3) Q:STR=""
 .S TSTR=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",4) Q:TSTR=""
 .S A=$G(@$$^W4GLM("MLY")@(SHANA,STR,TSTR,2,TD))
 .S MAM=MAM+$P(A,"*",10)-$P(A,"*",9)
 Q MAM
 ;
MZMPART(HZM,PART) ;
 Q $$SMZ^W4HZMST(HZM,PART)
CHKPART(HZM,PART) ;
 Q $$SCH^W4HZMST(HZM,PART)
ASRPART(HZM,PART) ;
 Q $$SAS^W4HZMST(HZM,PART)
CAPART(HZM,PART) ;
 Q $$SCA^W4HZMST(HZM,PART)
TLPART(HZM,PART) ;
 Q $$STL^W4HZMST(HZM,PART)
 ;
SSOAD(SOAD) ;
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 N MKB S MKB=$$MKBL(HZM)
 S @GLBL@("SD",1)=$G(@GLBL@("SD",1))+SOAD
 S @GLBL@("SD",1,MKB)=$G(@GLBL@("SD",1,MKB))+SOAD
 Q
 ;
SHZ(CHZ) ;
 N MKB S MKB=$$MKBL(HZM)
 ;;L +@GLBL@("SHZ"):1
 S @GLBL@("SHZ",1)=$G(@GLBL@("SHZ",1))+CHZ
 S @GLBL@("SHZ",1,MKB)=$G(@GLBL@("SHZ",1,MKB))+CHZ
 ;;L -@GLBL@("SHZ")
 Q
 ;
GLBL(DOCH,DAT) ;
 S GLBL=$S('MRK:$$^W4GL("TOT")_"(DAT)",1:$$^W4GL("TOT")_"(DAT,MRK)") ;--- FOR X
 I $G(DOCH)="Z" S GLBL=$$^W4GL("Z1")_"(DAT,NZ)"
 Q
 ;
GLBLTMP ;
 S GLBL=$$^W4MAIN("TEMP")
 Q
 ;
TIPNO ;
 I $G(P1X("SHUL")),NMB'=P1X("SHUL") Q
 I $G(P1X("PART")),$G(HZM),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$G(HZM),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 S @GLBL@("F",1)=$G(@GLBL@("F",1))-TIP D
 .S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))-TIP Q
 D DIF("F",NMB,-TIP)
 Q
 ;
HISHUV(HZM) ;
 S (SHUL,NMB,NAME)=""
 Q:'$D(@$$^W4ORD@(HZM))
 I $D(SGIRATJOM),$$Z24^W4PRM,$G(DOCH)="Z",'$$^W4CLOSE(HZM),$H>P1DZ D ^W4MVDTL(+$H,P1DZ,HZM) Q
 I '$D(SGIRATJOM)!($G(DOCH)'="X") Q:'$$^W4CLOSE(HZM)
 ;
 I $D(SGIRATJOM),$G(DOCH)="Y" D
 .I DDHZ[",Y" Q
 .S ^(HZM)=$G(@P1HDD@(HZM))_",Y"_NZ
 ;
 I $$Z24^W4PRM,$D(SGIRATJOM),$G(DOCH)="Z" D
 .I DDHZ[",Z" Q
 .S ^(HZM)=$G(@P1HDD@(HZM))_",Z"_NZ
 ;
 ;
 I FIRSTHZ S HZ0=HZM S FIRSTHZ=0
 ;
 N DD1 S DD1=DD N DD,HB S DD=DD1
 S NMB=$$NMB^W4HZMST(HZM)
 I $G(P1X("SHUL")),NMB'=P1X("SHUL") Q
 Q:'$D(@$$^W4ORD@(HZM))
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 S LL=$$LL^W4HZMST(HZM)
 I LL D
 .I LL=1 S LLQNS=LLQNS+$S(+$G(SOAD)=0:0,$G(SOAD)>0:1,1:-1),LLSUMS=LLSUMS+TSHL
 .I LL=2 S LLQNT=LLQNT+$S(+$G(SOAD)=0:0,$G(SOAD)>0:1,1:-1),LLSUMT=LLSUMT+TSHL
 ;
 I $G(@$$^W4PRM@("HAVT")) D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..I $$PAR^W4HZMST(HZM,I)=@$$^W4PRM@("HAVT") D
 ...S HAVT=$G(HAVT)+$$SUM^W4HZMST(HZM,I)
 ;
 I '$G(SOAD),$G(NMB),$$^W4MSD(NMB),$$^W4DLPK(NMB),$G(@$$^W4PRM@("MSPSD"))=1 D
 .S SOAD=1
 ;
 I $G(NMB),$$^W4MSD(NMB),$$^W4DLPK(NMB),$G(@$$^W4PRM@("MSPSD"))=0 D
 .S SOAD=0
 ;
 I '$G(SOAD),$G(NMB),$$^W4MSL(NMB),$G(@$$^W4PRM@("SDMSL"))=1 D
 .S SOAD=$S(TSHL>0:1,TSHL<0:-1,1:0)
 ;
 I $$MSL^W4HZMST(HZM) D
 .N CHZ S CHZ=$S(TSHL>0:1,TSHL<0:-1,1:0)
 .S SMSH=$G(SMSH)+CHZ
 .D SHZ(CHZ)
 ;
 I '$$MSL^W4HZMST(HZM) D
 .N CHZ S CHZ=$S(TSHL>0:1,TSHL<0:-1,1:0)
 .S SHZM=$G(SHZM)+CHZ
 .D SHZ(CHZ)
 ;
 S TAWMSL=0 S TAWMSL=$$^W4TAWMSL(HZM)
 S TAWMSD=0
 I $G(NMB),$$TAWMSD^W4PRM,$$TAW^W4MSD(NMB) S TAWMSD=1
 ;
 N PAID S PAID=SHUL-$G(TL)
 ;
 I $$^W4MSD(NMB),'$G(TAWMSD) D
 .S SUMMSD=SUMMSD+PAID
 .S DSUMMSD=DSUMMSD+PAID
 .S SUMAMSD=SUMAMSD+$G(SHULA)
 .S DSUMAMSD=DSUMAMSD+$G(SHULA)
 .I '(PAID+$G(SHULA)) Q
 .I TSHL+HNH!$$^W4PPG D SSOAD(SOAD)
 ;
 I $$^W4MSD(NMB),$G(TAWMSD) D
 .S SUMTAW=$G(SUMTAW)+PAID
 .S DSUMTAW=$G(DSUMTAW)+PAID
 .S SUMATAW=SUMATAW+$G(SHULA)
 .S DSUMATAW=DSUMATAW+$G(SHULA)
 .I '(PAID+$G(SHULA)) Q
 .I TSHL+HNH!$$^W4PPG D SSOAD(SOAD)
 ;
 I TAWMSL D
 .S SUMDLP=SUMDLP+PAID
 .S DSUMDLP=DSUMDLP+PAID
 .S SUMADLP=SUMADLP+$G(SHULA)
 .S DSUMADLP=DSUMADLP+$G(SHULA)
 .I $$^W4PPG!(TSHL+HNH) D
 ..I '(PAID+$G(SHULA)) Q
 ..D SSOAD(SOAD) S DSSOAD=DSSOAD+SOAD
 ;
 I $$^W4MSL(NMB)&'TAWMSL D
 .S SUMMSL=SUMMSL+PAID
 .S DSUMMSL=DSUMMSL+PAID
 .S SUMAMSL=SUMAMSL+$G(SHULA)
 .S DSUMAMSL=DSUMAMSL+$G(SHULA)
 ;
 N MKB S MKB=$$MKBL(HZM)
 ;
 I $G(P1X("PART")) D
 .N PART S PART=P1X("PART")
 .S MZM=$$MZMPART(HZM,PART)
 .S CHK=$$CHKPART(HZM,PART)
 .S CA=$$CAPART(HZM,PART)
 .S TL=$$TLPART(HZM,PART)
 .S ASR=$$ASRPART(HZM,PART)
 .S TIP=$S($$POS^W4HZMST(HZM)=PART:TIP,1:0)
 ;
 I $G(P1X("ULAM")) D
 .N ULAM S ULAM=P1X("ULAM")
 .S MZM=$$MZMULAM(HZM,ULAM)
 .S CHK=$$CHKULAM(HZM,ULAM)
 .S CA=$$CAULAM(HZM,ULAM)
 .S TL=$$TLULAM(HZM,ULAM)
 .S ASR=$$ASRULAM(HZM,ULAM)
 .S TIP=$S($$ULAM($$POS^W4HZMST(HZM))=ULAM:TIP,1:0)
 ;
 I $G(TL) D
 .S @GLBL@("Z",1)=$G(@GLBL@("Z",1))+TL
 .D DIF("Z",NMB,TL)
 .S @GLBL@("Z",1,MKB)=$G(@GLBL@("Z",1,MKB))+TL
 ;
 I $G(MZM) D
 .;
 .S @GLBL@("F",1)=$G(@GLBL@("F",1))+MZM
 .D DIF("F",NMB,MZM)
 .S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))+MZM
 .S @GLBL@("F#",1,MKB)=$G(@GLBL@("F#",1,MKB))+1
 .D:$G(@$$^W4PL@("MATB")) SUMMTB(HZM)
 ;
 N MP S MP=$$SSHULMP^W4T(HZM)
 I MP D
 .S @GLBL@("MP",1)=$G(@GLBL@("MP",1))+MP
 .D DIF("MP",NMB,MP)
 .S @GLBL@("MP",1,MKB)=$G(@GLBL@("MP",1,MKB))+MP
 .S @GLBL@("MP#",1,MKB)=$G(@GLBL@("MP#",1,MKB))+1
 ;
 ; --------------  TIPNT - VYCITAT TIP IZ PIDJONA ----------
 I $G(TIP) D  S TIPHZM(HZM)=""
 .S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIP
 .D DIF("T",NMB,TIP)
 .S @GLBL@("T",1,MKB)=$G(@GLBL@("T",1,MKB))+TIP
 .S @GLBL@("T#",1,MKB)=$G(@GLBL@("T#",1,MKB))+1
 .
 .I $$TIPNO^W4TIPPD($G(DD)) D
 ..N MZ S MZ=$G(@GLBL@("F",1))-TIP ;;I MZ<0 S MZ=0
 ..S @GLBL@("F",1)=MZ
 ..I $G(MKB) S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))-TIP
 .
 .I $$^W4MSD(NMB),'$G(TAWMSD),'$$^W4TIPPD(DD) S SUMMSD=SUMMSD-TIP,DSUMMSD=DSUMMSD-TIP
 .I $$^W4MSD(NMB),$G(TAWMSD),'$$^W4TIPPD(DD) S SUMTAW=SUMTAW-TIP
 .I $$^W4MSL(NMB),$$^W4TIPPD(DD) S SUMMSL=SUMMSL-TIP,DSUMMSL=DSUMMSL-TIP
 ;
 ;
 I $G(CHK) D
 .S @GLBL@("G",1)=$G(@GLBL@("G",1))+CHK
 .D DIF("G",NMB,CHK)
 .S @GLBL@("G",1,MKB)=$G(@GLBL@("G",1,MKB))+CHK
 .S @GLBL@("G#",1,MKB)=$G(@GLBL@("G#",1,MKB))+1
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","CH",I))  D
 ..D ^W4GTVCH(^(I),"CH")
 ..I $G(P1X("PART")),$$POSVT^W4HZMST(HZM,"CH",I)'=P1X("PART") Q
 ..I $G(P1X("ULAM")),$$ULAM($$POSVT^W4HZMST(HZM,"CH",I))'=P1X("ULAM") Q
 ..D CH
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB","ASR",N1)) Q:N1=""  D
 .N A S A=$G(^(N1))
 .S LKH=$P(A,"*") I $P(A,"*",6) S LKH=$P(A,"*",6) ; --- LKHR
 .S SUM=$P(A,"*",4),TLUSH=$P(A,"*",8),KMTL=$P(A,"*",9)
 .Q:LKH=""
 .
 .I $G(P1X("PART")),$$POSVT^W4HZMST(HZM,"ASR",N1)'=P1X("PART") Q
 .I $G(P1X("ULAM")),$$ULAM($$POSVT^W4HZMST(HZM,"ASR",N1))'=P1X("ULAM") Q
 .
 .S @GLBL@("H",1)=$G(@GLBL@("H",1))+SUM
 .D DIF("H",NMB,SUM)
 .S @GLBL@("H",1,MKB)=$G(@GLBL@("H",1,MKB))+SUM
 .S @GLBL@("H#",1,MKB)=$G(@GLBL@("H#",1,MKB))+1
 .
 .S @$$^W4MAIN("P1LKHZ")@(LKH)=$G(@$$^W4MAIN("P1LKHZ")@(LKH))+SUM
 .S @GLBL@("LKH",1,MKB,LKH)=$G(@GLBL@("LKH",1,MKB,LKH))+SUM
 .I $G(TLUSH),$G(KMTL) D
 ..S @GLBL@("LKH",1,MKB,LKH,TLUSH)=$G(@GLBL@("LKH",1,MKB,LKH,TLUSH))+KMTL
 ..S @$$^W4MAIN("P1LKHZ")@(LKH,TLUSH)=$G(@$$^W4MAIN("P1LKHZ")@(LKH,TLUSH))+KMTL
 ;
 I $D(@$$^W4ORD@(HZM,"CB","V")) D
 .D DIF("V",NMB,CA)
 .S @GLBL@("V",1)=$G(@GLBL@("V",1))+CA
 .S @GLBL@("V",1,MKB)=$G(@GLBL@("V",1,MKB))+CA
 .S @GLBL@("V#",1,MKB)=$G(@GLBL@("V#",1,MKB))+1
 .N I S I=""
 .F  S I=$O(@$$^W4ORD@(HZM,"CB","V",I)) Q:I=""  D
 ..N A S A=$G(^(I)) Q:A=""  D ^W4GTVCH(A,"V")
 ..S VTS=$E(VTS,2,6) Q:VTS=""
 ...
 ..I $G(P1X("PART")),P1X("PART")'=$$POSVT^W4HZMST(HZM,"V",I) Q
 ..I $G(P1X("ULAM")),P1X("ULAM")'=$$ULAM($$POSVT^W4HZMST(HZM,"V",I)) Q
 ..
 ..I NCA="MYCHECK" D
 ...D VSUM("VMYCH",NMB,CAV,MKB)
 ..
 ..D VSUM(VTS,NMB,CAV,MKB)
 ;
 D HNH(HZM) ; --- HISHUV HANAHOT
 ;
 D:$G(TIP) TIPSUG(HZM) ; --- HISHUV TIPIM
 ;
 D BIT(HZM)
 ;
 I $G(BIT) D
 .I $G(@$$^W4PRM@("BITA")),TSHL'<0 Q
 .N MKBL S MKBL=$$MKBL^W4HZMST(HZM)
 .S @GLBL@("BIT",1)=$G(@GLBL@("BIT",1))+BIT
 .S @GLBL@("BIT#",1)=$G(@GLBL@("BIT#",1))+1
 .I $G(PSL) S @GLBL@("BIT",1,PSL)=$G(@GLBL@("BIT",1,PSL))+BIT Q
 .I $$^W4MSL(NMB) S @GLBL@("BIT",1,9999)=$G(@GLBL@("BIT",1,9999))+BIT Q
 .I $G(MKBL),$$^W4MSD(NMB),'$G(@$$^W4PRM@("MLZ"))!$G(@$$^W4PRM@("BITMKBL")) D  Q
 ..S @GLBL@("BIT",1,MKBL)=$G(@GLBL@("BIT",1,MKBL))+BIT
 ..S @GLBL@("BIT#",1,MKBL)=$G(@GLBL@("BIT#",1,MKBL))+1
 .;
 .I $G(MKBL),$$^W4MSD(NMB) D  Q
 ..N N,BTL S N=""
 ..F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 ...N MZ S MZ=$P(^(N),"*",2)
 ...I 'MZ,$P(^(N),"*") S MZ=$P(^(N),"*")
 ...Q:$$AVAR^W4HZMST(HZM,N)
 ...S BTL=0
 ...I $$SUM^W4HZMST(HZM,N)<0,$E($$PAR^W4HZMST(HZM,N)) D
 ....S BTL=-$$SUM^W4HZMST(HZM,N)
 ...I 'MZ!'$G(@$$^W4PRM@("MLZ")),$G(MKBL) S MZ=MKBL
 ...I MZ S @GLBL@("BIT",1,MZ)=$G(@GLBL@("BIT",1,MZ))+BTL
 ...;;S ^AA(HZM,$O(^AA(HZM,99999),-1)+1)=BTL
 Q
 ;
VSUM(VTS,NMB,CAV,MKB)
 D DIF(VTS,NMB,CAV)
 S @GLBL@(VTS,1)=$G(@GLBL@(VTS,1))+CAV
 I $G(MKB) D
 .S @GLBL@(VTS,1,MKB)=$G(@GLBL@(VTS,1,MKB))+CAV
 .S @GLBL@(VTS_"#",1,MKB)=$G(@GLBL@(VTS_"#",1,MKB))+1
 Q
 ;
SGHZ(HZ) ;
 I '$$^W4CLOSE(HZ),'$$ITRA^W4HZMST(HZ) D  ; -- HADP HESH TAW
 .N P1TNOPR,BLIPR S BLIPR="",P1TNOPR=""
 .I $$SHUL^W4HZMST(HZ) D ^W4PCHB(HZ,1)
 .I $$SHULA^W4HZMST(HZ),'$$SHUL^W4HZMST(HZ) D ^W4PCHB2(HZ)
 .D SETCLOSE^W4HZMST(HZ)
 .;;D ^W4SGHB(HZM)
 Q
 ;
ULAM(POS) ;
 I $G(POS)="" Q ""
 Q $G(@$$POSULM@(POS))
 ;
MZMULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SMZ S SMZ=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SMZ=SMZ+$$SMZ^W4HZMST(HZM,N)
 Q SMZ
 ;
CHKULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SCH S SCH=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SCH=SCH+$$SCH^W4HZMST(HZM,N)
 Q SCH
 ;
ASRULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SAS S SAS=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SAS=SAS+$$SAS^W4HZMST(HZM,N)
 Q SAS
 ;
CAULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SCA S SCA=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SCA=SCA+$$SCA^W4HZMST(HZM,N)
 Q SCA
 ;
TLULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N STL S STL=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S STL=STL+$$STL^W4HZMST(HZM,N)
 Q STL
 ;
POSULM(STAM)
 Q $$^W4GL("W4POSATR")
 
 
 

W4SUM1
W4SUM1 ; SIKUM JOMI CASPI LEFI MISHMEROT [ 22.05.13 11:18 ] [ 22.04.13 12:02 ] [ 21.04.13 14:22 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,DAT,KAMSUM) D ^%L1C,^P1IN
 S DD=$$^%L1DC(DAT,4),KUP=901,NZ=0
 D ^W4SUMY(DD)
 S GLBL=$$^W4MAIN("TEMP")
 K @GLBL
 ;------------ HESBONIOT MAS-KABALA
 S MSHM=1
 K TIPHZM S HZM="" F  S HZM=$O(@$$^W4REF@(DD,HZM)) Q:HZM=""  D
 .S MSHM=$$MSHM(HZM)
 .S (SHUL,NMB,NAME)=""
 .Q:'$D(@$$^W4ORD@(HZM))   Q:$G(^P1HZ(HZM,"S"))<2
 .;
 .N DD1 S DD1=DD N DD,HB S DD=DD1
 .D GA^%L1SCREF(HZSCR,"^P1HZ(HZM)")
 .;
 .S TAWMSL=$$^P1TAWMSL(HZM) ;-- BDIKA IM MISHLOAH TAW
 .I $$TAW^P1DLPK(NMB) S TAWMSL=1
 .
 .I TAWMSL D  Q
 ..S KAMSUM("SUMDLP",MSHM)=$G(KAMSUM("SUMDLP",MSHM))+SHUL+SHULA-$G(TL)-$G(TIP)
 ..S KAMSUM("KAMDLP",MSHM)=$G(KAMSUM("KAMDLP",MSHM))+$S(TSHL>0:1,TSHL<0:-1,1:0)
 ..S KAMSUM("TIPDLP",MSHM)=$G(KAMSUM("TIPDLP",MSHM))+$G(TIP)
 ..I $$^P1PPG=3 S KAMSUM("SSOAD",MSHM)=$G(KAMSUM("SSOAD",MSHM))+SOAD Q
 ..I TSHL+HNH!$$^P1PPG S KAMSUM("SSOAD",MSHM)=$G(KAMSUM("SSOAD",MSHM))+($G(^P1PRM("MSPSD"))*$S(TSHL>0:1,1:-1)) Q
 .
 .I $L(NMB)<4 D
 ..S KAMSUM("TIPMSD",MSHM)=$G(KAMSUM("TIPMSD",MSHM))+$G(TIP)
 .
 .I $L(NMB)>3 D
 ..S KAMSUM("TIPMSL",MSHM)=$G(KAMSUM("TIPMSL",MSHM))+$G(TIP)
 ;
 D KAMSUM
 Q
MSHM(HZM) ;
 N MSHM S MSHM=$S(HZM'>$G(YDT(1,"HZ2")):1,1:2)
 Q MSHM
 ;
KAMSUM ;
 N N
 S KAMSUM("SUMMSD",1)=$G(YDT(1,"MSDNT"))+$G(YDT(1,"MSDAS"))
 I '$G(YDT("TAW")) S KAMSUM("SUMMSD",1)=KAMSUM("SUMMSD",1)-$G(KAMSUM("SUMDLP",1))
 I $G(YDT("TAW")) D
 .S KAMSUM("SUMDLP",1)=$G(YDT(1,"TAW"))+$G(YDT(1,"TAWAS"))-$G(KAMSUM("TIPDLP",1))
 S KAMSUM("SUMMSD",1)=KAMSUM("SUMMSD",1)-$G(YDT(1,"TIP"))+$G(KAMSUM("TIPDLP",1))+$G(KAMSUM("TIPMSL",1))
 S KAMSUM("SUMMSL",1)=$G(YDT(1,"MSHNT"))+$G(YDT(1,"MSHAS"))-$G(YDT(1,"DMSH"))-$G(KAMSUM("TIPMSL",1))
 I $G(^P1PRM("TIPNOMSL")),DD<^P1PRM("TIPNOMSL") D
 .S KAMSUM("SUMMSL",1)=$G(KAMSUM("SUMMSL",1))+$G(KAMSUM("TIPMSL",1))
 S KAMSUM("SSOAD",1)=$G(YDT(1,"SOAD"))
 S KAMSUM("KAMMSL",1)=$G(YDT(1,"MSHL"))
 ;
 S KAMSUM("SUMMSD",2)=$G(KAMSUM("SUMMSD",2))+$G(YDT(2,"MSDNT"))+$G(YDT(2,"MSDAS"))
 S KAMSUM("SUMMSD",2)=$G(KAMSUM("SUMMSD",2))-$G(YDT(2,"TIP"))+$G(KAMSUM("TIPDLP",2))+$G(KAMSUM("TIPMSL",2))
 S KAMSUM("SUMMSL",2)=$G(KAMSUM("SUMMSL",2))+$G(YDT(2,"MSHNT"))+$G(YDT(2,"MSHAS"))-$G(YDT(2,"DMSH"))-$G(KAMSUM("TIPMSL",2))
 I $G(^P1PRM("TIPNOMSL")),DD<^P1PRM("TIPNOMSL") D
 .S KAMSUM("SUMMSL",2)=$G(KAMSUM("SUMMSL",2))+$G(KAMSUM("TIPMSL",2))
 S KAMSUM("SSOAD",2)=$G(KAMSUM("SSOAD",2))+$G(YDT(2,"SOAD"))
 S KAMSUM("KAMMSL",2)=$G(KAMSUM("KAMMSL",2))+$G(YDT(2,"MSHL"))
 I '$G(YDT("TAW")) S KAMSUM("SUMMSD",2)=$G(KAMSUM("SUMMSD",2))-$G(KAMSUM("SUMDLP",2))
 I $G(YDT("TAW")) D
 .S KAMSUM("SUMDLP",2)=$G(YDT(2,"TAW"))+$G(YDT(2,"TAWAS"))-$G(KAMSUM("TIPDLP",2))
 Q

W4SUM1O
W4SUM1O ; SIKUM JOMI CASPI LEFI MISHMEROT [ 13.07.16 15:34 ] [ 23.03.14 10:05 ] [ 22.03.14 14:34 ] 
 N (JB,%ARG,%REM,DAT,KAMSUM)
 D ^W4IN
 S DD=$$^%L1DC(DAT,4)
 S GLBL=$$^W4MAIN("TEMP")
 K @GLBL
 ;------------ HESBONIOT MAS-KABALA
 K TIPHZM S HZM="" F  S HZM=$O(@$$^W4REF@(DD,HZM)) Q:HZM=""  D
 .S (SHUL,NMB,NAME)=""
 .Q:'$D(@$$^W4ORD@(HZM))   Q:$G(@$$^W4ORD@(HZM,"S"))<2
 .;
 .N DD1 S DD1=DD N DD,HB S DD=DD1
 .D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 .I '$G(SOAD),$G(NMB),$L(NMB)<4,$$^W4DLPK(NMB),$G(@$$^W4PRM@("MSPSD"))=1,'$$^W4PPG S SOAD=1
 .;
 .S TAWMSL=$$^W4TAWMSL(HZM) ;-- BDIKA IM MISHLOAH TAW
 .I $$TAW^W4DLPK(NMB) S TAWMSL=1
 .N TIME S TIME=$P(ZMANK,"  ",2)
 .I TIME="" S TIME=$G(SHAAT)
 .S MSHM=$$MSHM(TIME)
 .
 .I TAWMSL D  Q
 ..S KAMSUM("SUMDLP",MSHM)=$G(KAMSUM("SUMDLP",MSHM))+SHUL+SHULA-$G(TL)
 ..S KAMSUM("KAMDLP",MSHM)=$G(KAMSUM("KAMDLP",MSHM))+1
 ..I $$^W4PPG=3 S KAMSUM("SSOAD",MSHM)=$G(KAMSUM("SSOAD",MSHM))+SOAD Q
 ..I TSHL+HNH!$$^W4PPG S KAMSUM("SSOAD",MSHM)=$G(KAMSUM("SSOAD",MSHM))+1 Q
 .
 .I $L(NMB)<4 D
 ..S KAMSUM("SUMMSD",MSHM)=$G(KAMSUM("SUMMSD",MSHM))+SHUL+SHULA-$G(TL)
 ..S KAMSUM("KAMMSD",MSHM)=$G(KAMSUM("KAMMSD",MSHM))+1
 ..I TSHL+HNH!$$^W4PPG S KAMSUM("SSOAD",MSHM)=$G(KAMSUM("SSOAD",MSHM))+SOAD
 .
 .I $L(NMB)>3 D
 ..S KAMSUM("SUMMSL",MSHM)=$G(KAMSUM("SUMMSL",MSHM))+SHUL+SHULA-$G(TL)
 ..S KAMSUM("KAMMSL",MSHM)=$G(KAMSUM("KAMMSL",MSHM))+1
 ..I $$^W4PPG=3 S KAMSUM("SSOAD",MSHM)=$G(KAMSUM("SSOAD",MSHM))+SOAD
 .;
 .; --------------  TIPNT - VYCITAT TIP IZ PIDJONA ----------
 .I $G(TIP) D
TIP ..I $L(NMB)<4,'$$^W4TIPPD(DD) S KAMSUM("SUMMSD",MSHM)=$G(KAMSUM("SUMMSD",MSHM))-TIP
 ..I $L(NMB)>3,'$$^W4TIPPD(DD) S KAMSUM("SUMMSL",MSHM)=$G(KAMSUM("SUMMSL",MSHM))-TIP
 .;
 ;
 D
 .N J0,J1 S J0=DD_"^" F  S J0=$O(@$$^W4GL("TIPMZ")@(J0)) Q:J0=""  Q:$P(J0,"^")'=DD  D
 ..S J1="" F  S J1=$O(@$$^W4GL("TIPMZ")@(J0,J1)) Q:J1=""  D
 ...S KAMSUM("SUMMSD",2)=$G(KAMSUM("SUMMSD",2))+$G(@$$^W4GL("TIPMZ")@(J0,J1))
 ;
 ;------------------ TEUDOT ZIKUJ ---
 D TZ(DD)
 F MSHM=1:1:2 D
 .S KAMSUM("SUMMSL",MSHM)=$J($G(KAMSUM("SUMMSL",MSHM))-$G(MINMSL(MSHM)),2,2)
 .S KAMSUM("SUMMSD",MSHM)=$J($G(KAMSUM("SUMMSD",MSHM))-$G(MINMSD(MSHM)),2,2)
 .S KAMSUM("SUMDLP",MSHM)=$J($G(KAMSUM("SUMDLP",MSHM))-$G(MINDLP(MSHM)),2,2)
 Q
 ;
TZ(DD) ; --> TZTZ
 N (TZTZ,MINMSD,MINMSL,MINDLP,DD,NZ,P1S,TZK,DOCH,P1X)
 S (MINMSD,MINMSL,MINDLP)=0
 S N="",TZK="" K TZTZ F  S N=$O(@$$^W4GL("P1TZ")@(N)) Q:N=""  D
 .N NMB,NAME,MZM,CHK,CA,DZ,SHUL,SUGT
 .D GA^W4SCREF("P1TZ",$$^W4GL("P1TZ")_"(N)")
 .S MSHM=$$MSHM(SHTZ)
 .I DZ'=DD Q
 .S TZK=N S SHUL=$G(MZM)+$G(CHK)+$G(CA)
 .S TAWMSL=0 I NMB=$G(@$$^W4PRM@("TAWMSL")) S MINDLP(MSHM)=$G(MINDLP(MSHM))+SHUL
 .E  I $L(NMB)<4 S MINMSD(MSHM)=$G(MINMSD(MSHM))+SHUL
 .E  S MINMSL(MSHM)=$G(MINMSL(MSHM))+SHUL
 Q
 ;
MSHM(TIME) ;
 N MESHAA1,MESHAA2
 S MESHAA1=$G(@$$^W4PRM@("TIPDAY","MESHAA1"))
 I MESHAA1?.P S MESHAA1=5
 S MESHAA2=$G(@$$^W4PRM@("TIPDAY","MESHAA2"))
 I MESHAA2?.P S MESHAA2=18
 I TIME'<MESHAA1,TIME<MESHAA2 Q 1
 Q 2
 

W4SUMDAT
W4SUMDAT(DAT1,DAT2,JB,P1X) ; [ 17.09.25 04:52 ] [ 28.08.22 09:35 ] [ 18.01.22 13:02 ] 
 N (JB,%ARG,%REM,DAT1,DAT2,JB,P1X)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 D PUT^%W1PRM("W4SUM",0)
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 I $$GETP^%W1PRM("CSRPRINT")'="" D
 .D PUT^%W1PRM("P1TOT",DAT1_"-"_DAT2)
 ;
 D ^W4IN
 D ^W4SUMZRO
 ;
 D 100^W4TOT
 ;
 I $L($G(P1X)),$E(P1X)?1U,P1X["," D
 .S P1X($P(P1X,","))=$P(P1X,",",2,25)
 ;
 D KILL^%W1PRM("COMPDAT")
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .D PUT^%W1PRM("COMPDAT",$ZD(DT,"DD.MM.YY"))
 .D ^W4SUM
 .H .1
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .D 101^W4TOT
 ;
 D V2G^W4SUMZRO
 ;
 D PUT^%W1PRM("W4SUM",1)
 ;
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SUML
W4SUML(DT1,DT2,DOCH) ; [ 13.04.12 15:05 ] [
 N DT
 F DT=D1:1:D2 D SUM(DT,$G(DOCH))
 Q
 ;
SUM(DT,DOCH) ;
 N GLT,DAT
 D GLT K @GLT
 S DAT=$ZD(DT,"YYMMDD")
 N DOC,I,V,CA,VT,BITQ,BITS,HNHP,DISCA,DISCNIS
 S DOC="" F  S DOC=$O(@$$^W4GL("W4DIRD")@(DT,DOC)) Q:DOC=""  D
 .I $D(SGIRATJOM),$G(^(DOC))["^" K @GLT Q
 .I $D(@$$^W4GL("W4DOC")@(DOC,"HMK")) D
 ..I $$MZDOC(DOC) D
 ...S @GLT@("F")=$G(@GLT@("F"))+$$MZDOC(DOC)
 ...S @GLT@("F#")=$G(@GLT@("F#"))+1
 ..I $$CHDOC(DOC) D
 ...S @GLT@("GO")=$G(@GLT@("GO"))+$$CHDOC(DOC)
 ...S @GLT@("GO#")=$G(@GLT@("GO#"))+$O(@$$^W4GL("W4DOC")@(DOC,"HMK","CB",999),-1)
 ..S V=$$CADOC(DOC)
 ..S VT=$P(V,"*"),CA=$P(V,"*",2)
 ..I CA D
 ...S @GLT@(VT)=$G(@GLT@(VT))+CA
 ...S @GLT@(VT_"#")=$G(@GLT@(VT_"#"))+1
 ..
 ..S (BITQ,BITS,HNHP)=0
 ..F I=1:1 Q:'$D(@$$^W4GL("W4DOC")@(DOC,I))  D
 ...N A,QN,SUM S A=$G(^(I))
 ...S QN=$P(A,"\",3),SUM=$P(A,"\",7)
 ...I QN<0 S BITQ=BITQ+QN,BITS=BITS+SUM
 ...S HNHP=HNHP+$$DISC^W4DOC(DOC,I)
 ..
 ..S @GLT@("BIT")=$G(@GLT@("BIT"))+BITS
 ..S @GLT@("BIT#")=$G(@GLT@("BIT#"))+BITQ
 ..
 ..D TOT^W4DOC(DOC)
 ..I DISCNIS+DISCA D
 ...S @GLT@("MIN")=$G(@GLT@("MIN"))+DISCNIS+DISCA+HNHP
 ...S @GLT@("MIN#")=$G(@GLT@("MIN#"))+1
 ;
 D GLBL^W4SUM($G(DOCH),DAT)
 ;
 N IND S IND="" F  S IND=$O(@GLT@(IND)) Q:IND=""  D
 .S @GLBL@(IND,1)=$G(@GLBL@(IND,1))+$G(@GLT@(IND))
 ;
 I $G(DOCH)="Z" D
 .N LAST S LAST=$O(@$$^W4GL("W4DIRD")@(DT,999999),-1)
 .I LAST,$G(^(LAST))'["^" S ^(LAST)=$G(^(LAST))_",^"
 ;
 K @GLT
 Q
 ;
 ;
GLT ;
 S GLT=$$^W4MAIN("TMPDAY")
 Q
 ;
MZDOC(NOM) ;
 Q $P($G(@$$^W4GL("W4DOC")@(NOM,"HMK","CB")),"\",2)
 ;
CHDOC(NOM) ;
 Q $P($G(@$$^W4GL("W4DOC")@(NOM,"HMK","CB")),"\",6)
 ;
CADOC(NOM) ;
 N CBV S CBV=$G(@$$^W4GL("W4DOC")@(NOM,"HMK","CBV"))
 Q $E($P(CBV,"*",1),2,6)_"*"_$P(CBV,"*",7)

W4SUMO
W4SUM ; SIKUM JOMI CASPI [ 26.12.18 12:52 ] [ 20.12.18 19:33 ] [ 27.08.14 18:56 ] 
 I $$^W4LKH D ^W4LKHSUM(DAT) Q
 ;
 N (JB,%ARG,%REM,DAT,SGIRATJOM,MEK,GLBL,HZ0,HZ1,DOCH,SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSH,SHZM,SUMMTB,P1X,HAVT,SUMTAW,SUMATAW,STAW,LLQNS,LLSUMS,LLQNT,LLSUMT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^W4IN
 S (DSUMMSD,DSUMMSL,DSUMDLP,DSUMAMSD,DSUMAMSL,DSUMTAW,DSUMATAW,DSUMADLP,DSSOAD,DSMSH,DHAVT)=0
 ;
 S DD=$$^%L1DC(DAT,4),KUP=901,NZ=0
 ;
 D GLBLTMP ; --> GLBL=TEMP
 I $D(SGIRATJOM) S NZ=$G(@$$^W4GL("Z"))+1
 ;
 K @GLBL
 ;
 I $D(SGIRATJOM) K @$$^W4MAIN("P1LKHZ")
 ;
 S P1HDD=$$^W4GL("P1H")_"(DD)"
 ;
 ;------------ SGIRAT HESHB-T PTUCHOT
 I $D(SGIRATJOM),$G(DOCH)'="X" S HZM="" D
 .F  S HZM=$O(@P1HDD@(HZM)) Q:HZM=""  D
 ..N DDD,SSS
 ..S DDD=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 ..S SSS=$$SHAA^W4HZMST(HZM)
 ..
 ..I $G(DOCH)="Z" D
 ...I $G(@$$^W4PRM@("MM")),$$MSL^W4HZMST(HZM) D
 ....I '($$CLOSE^W4HZMST(HZM)#2),DDD'>DD!(DDD=DD+1&((SSS<$$SHAAZ^W4PRM)&$$^W4SHAAZ)) D
 .....D PLU^W4HZMPC
 .....S @$$^W4ORD@(HZM,"S")=$G(@$$^W4ORD@(HZM,"S"))+1
 ..
 ..N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 ..S TSHL=$$TSHL^W4HZMST(HZM)
 ..
 ..I $$MSL^W4HZMST(HZM),DDD>P1DZ,SSS'<$$SHAAZ^W4PRM!'$$^W4SHAAZ Q
 ..
 ..I 'TSHL,'$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 ..
 ..I ITRA>.1!(ITRA<-.1),$$^W4CLOSE(HZM),$G(DOCH)'="Z" D  ; -- BITUL SGIRA
 ...S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)#2
 ..
 ..I $$^W4CLOSE(HZM) Q
 ..I ITRA Q
 ..
 ..I TSHL D SGHZ(HZM)
 ..
 ..I $D(@$$^W4ORD@(HZM,"ETHB")),'$$^W4CLOSE(HZM) D
 ...S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)+2
 ..I $G(@$$^W4ORD@(HZM,"ETHB2")),$$CLOSE^W4HZMST(HZM)<4 D
 ...S @$$^W4ORD@(HZM,"S")=$$CLOSE^W4HZMST(HZM)+4
 ;
 ;
 I $D(SGIRATJOM),$G(DOCH)="Z" D ^W4CLPLU(P1DZ,P1DZ) ;-- TIKUN DOCH PRITIM
 ;
 ;
 K TIPHZM S FIRSTHZ=1
 K TAS,MINAS,MIN2AS,BITAS
 S SSHULA=0,TIPASNO=0
 ;
 ;--------------------------------- HAZM-T --------------------------------
 S (HZ,HZ0,HZ1)=""
 F  S HZ=$O(@P1HDD@(HZ)) Q:HZ=""  D
 .N DDHZ S HZ1=HZ,DDHZ=$G(^(HZ))
 .
 .I $D(SGIRATJOM),$$SIGNZ(DD,HZ)!($$SIGNY(DD,HZ)&($G(DOCH)'="Z")) D  Q
 ..K @GLBL,SUMMTB K @$$^W4MAIN("P1LKHZ")
 ..D ^W4SUMZRO
 ..S FIRSTHZ=1
 .
 .D HISHUV(HZ)
 ;
 ;
 I $D(SGIRATJOM) D ^%S2GLSV($$^W4GL("P1H")_"("_DD_")",$$^W4FGIB)
 ;
 I HZ1,NZ,'$$SIGNZ(DD,HZ1),$G(DOCH)="Z" D
 .S ^(HZ1)=@P1HDD@(HZ1)_",^"
 ;
 I HZ1,$D(SGIRATJOM),'$$SIGNY(DD,HZ1),'$$SIGNZ(DD,HZ1),$G(DOCH)="Y" D
 .S ^(HZ1)=@P1HDD@(HZ1)_",?"
 ;
 ;---------- KABALAT TIP MEZUMAN MI MELZARIM FOR MASKORET
 I NZ,'$$TIPMZM^W4PRM I $D(@$$^W4GL("TIPMZ")@(DD_"^"_NZ)) D  G MISC ;----------- X,Z
 .;
 .N N S N="" F  S N=$O(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N)) Q:N=""  D
 ..N TIPMZ,TIM,MESHAA1,MESHAA2
 ..S TIPMZ=$G(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N))
 ..I $G(DOCH)="Z" S TIPMZ=+TIPMZ
 ..S TIM=$P($H,",",2)\3600
 ..S MESHAA1=$G(@$$^W4PRM@("TIPDAY","MESHAA1"))
 ..S MESHAA2=$G(@$$^W4PRM@("TIPDAY","MESHAA2"))
 ..N TIPMZY S TIPMZY=0
 ..
 ..I $G(DOCH)'="Z" D
 ...N LY S LY=$O(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",9999),-1)+1
 ...N J F J=1:1 Q:'$D(@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",J))  D
 ....S TIPMZY=TIPMZY+$G(^(J))
 ...I $G(DOCH)="Y" D
 ....L +@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",LY):1
 ....S @$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",LY)=TIPMZ-TIPMZY
 ....L -@$$^W4GL("TIPMZ")@(DD_"^"_NZ,N,"Y",LY)
 ...S TIPMZ=TIPMZ-TIPMZY
 ..
 ..I $G(DOCH)'="Z",MESHAA2,TIM>(MESHAA2+3)!(TIM<MESHAA1),TIPMZ["?" D
 ...S TIPMZ=$P(TIPMZ,"?",3)
 ..
 ..I $G(DOCH)'="Z",MESHAA1,TIM'>(MESHAA2+3),(TIM>MESHAA1+5),TIPMZ["?" D
 ...S TIPMZ=$P(TIPMZ,"?",2)
 ..
 ..S @GLBL@("TS",1)=$G(@GLBL@("TS",1))+TIPMZ
 ..S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIPMZ
 ..S @GLBL@("T",1,N)=$G(@GLBL@("T",1,N))+TIPMZ
 ..I '$$TIPNO^W4TIPPD(DD) D
 ...S @GLBL@("FS",1)=$G(@GLBL@("FS",1))+TIPMZ
 ...S @GLBL@("F",1)=$G(@GLBL@("F",1))+TIPMZ
 ...S @GLBL@("F",1,N)=$G(@GLBL@("F",1,N))+TIPMZ
 ..I $$^W4TIPPD(DD) D
 ...S:'$G(TAWMSD) SUMMSD=SUMMSD+TIPMZ,DSUMMSD=DSUMMSD+TIPMZ
 ...S:$G(TAWMSD) SUMTAW=SUMTAW+TIPMZ,DSUMTAW=DSUMTAW+TIPMZ
 ..S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+TIPMZ
 ;
 ;
 I 'NZ,'$$TIPMZM^W4PRM D  ;--------------- DOCH KASPI RAGIL - HISHUV TIPIM
 .N J0,J1,TIPMZ,TIPMZ1
 .S J0=DD_"^",TIPMZ=0
 .F  S J0=$O(@$$^W4GL("TIPMZ")@(J0)) Q:J0=""  I $P(J0,"^")=DD D
 ..S J1="" F  S J1=$O(@$$^W4GL("TIPMZ")@(J0,J1)) Q:J1=""  D
 ...S TIPMZ1=$G(^(J1))
 ...S TIPMZ=TIPMZ+TIPMZ1
 ...S @GLBL@("TS",1)=$G(@GLBL@("TS",1))+TIPMZ1
 ...S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIPMZ1
 ...S @GLBL@("T",1,J1)=$G(@GLBL@("T",1,J1))+TIPMZ1
 ...I '$$TIPNO^W4TIPPD(DD) D
 ....S @GLBL@("FS",1)=$G(@GLBL@("FS",1))+TIPMZ1
 ....S @GLBL@("F",1)=$G(@GLBL@("F",1))+TIPMZ1
 ....S @GLBL@("F",1,J1)=$G(@GLBL@("F",1,J1))+TIPMZ1
 ....Q:'$$^W4TIPPD(DD)
 ....S:'$G(TAWMSD) SUMMSD=SUMMSD+TIPMZ1,DSUMMSD=DSUMMSD+TIPMZ1
 ....S:$G(TAWMSD) SUMTAW=SUMTAW+TIPMZ1,DSUMTAW=DSUMTAW+TIPMZ1
 ..
 ..S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+TIPMZ
 ;
 ;
MISC ;
 ;------------------ TEUDOT ZIKUJ ----------------------
 D TZ(DD)
 ;
 S N="" F  S N=$O(TZTZ(N)) Q:N=""  D
 .I N'["#" S @GLBL@(N,1)=$G(@GLBL@(N,1))-TZTZ(N)
 .I N["#" S @GLBL@(N,1)=$G(@GLBL@(N,1))+$G(TZTZ(N))
 .S N1="" F  S N1=$O(TZTZ(N,N1)) Q:N1=""  D  ; - N -SUG TS,N1 - MELZAR,PSL
 ..I N'["#" D
 ...S @GLBL@(N,1,N1)=$G(@GLBL@(N,1,N1))-TZTZ(N,N1)
 ...I $$MLZ(N1) S @GLBL@(N_"S",1)=$G(@GLBL@(N_"S",1))-TZTZ(N,N1)
 ...I $$PSL(N1) S @GLBL@(N_"L",1)=$G(@GLBL@(N_"L",1))-TZTZ(N,N1)
 ..I N["#" D
 ...S @GLBL@(N,1,N1)=$G(@GLBL@(N,1,N1))+TZTZ(N,N1)
 ...I $$MLZ(N1) S @GLBL@(N_"S",1)=$G(@GLBL@(N_"S",1))+TZTZ(N,N1)
 ...I $$PSL(N1) S @GLBL@(N_"L",1)=$G(@GLBL@(N_"L",1))+TZTZ(N,N1)
 ;
 I TZK,NZ,'$$SIGNZTZ(TZK),$G(DOCH)="Z" D
 .S $P(@$$^W4GL("P1TZ")@(TZK),"\",15)="^"
 .D ^%S2GLSV($$^W4GL("P1TZ")_"("_TZK_")",$$^W4FGIB)
 ;
 I TZK,$D(SGIRATJOM),'$$SIGNYTZ(TZK),'$$SIGNZTZ(TZK),$G(DOCH)="Y" D
 .S $P(^(TZK),"\",15)="?"
 .D ^%S2GLSV($$^W4GL("P1TZ")_"("_TZK_")",$$^W4FGIB)
 ;
 S SUMMSL=$J($G(SUMMSL)-$G(MINMSL),2,2),DSUSMMSL=DSUMMSL-$G(MINMSL)
 S:'$G(TAWMSD) SUMMSD=$J($G(SUMMSD)-$G(MINMSD),2,2),DSUMMSD=DSUMMSD-$G(MINMSD)
 S:$G(TAWMSD) SUMTAW=$J(SUMTAW-MINMSD,2,2),DSUMTAW=DSUMTAW-MINMSD
 S SUMDLP=$J($G(SUMDLP)-$G(MINDLP),2,2),DSUMDLP=DSUMDLP-$G(MINDLP)
 ;
 ;-------------------------- KABALOT --------------------------
 D CB(DAT,"CB")
 ;
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 ;
 I $G(NUMBER1),$G(NZ),$G(STRING),$P($G(@$$^W4GL("KLF")@(STRING,"CB",NUMBER1)),"\",10)'="^",$G(DOCH)="Z" D
 .S $P(^(NUMBER1),"\",10)="^"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_STRING_""",""CB"","""_NUMBER1_""")",$$^W4FGIB)
 ;
 I $G(NUMBER1),$G(STRING),$D(SGIRATJOM),$P($G(@$$^W4GL("KLF")@(STRING,"CB",NUMBER1)),"\",10)'="?",$P($G(^(NUMBER1)),"\",10)'="^",$G(DOCH)="Y" D
 .S $P(^(NUMBER1),"\",10)="?"
 .D ^%S2GLSV($$^W4GL("KLF")_"("""_STRING_""",""CB"","""_NUMBER1_""")",$$^W4FGIB)
 ;
 ; ------------------------- HMK ---------------------------
 K CBCB
 D CB(DAT,"HMK")
 ;
 S N="" F  S N=$O(CBCB(N)) Q:N=""  S @GLBL@(N,1)=$G(@GLBL@(N,1))+CBCB(N)
 ;
 S @GLBL@("TIME",$P($ZG,"/",$L($ZG,"/")))=$$^%L1DC($H,1)_"\"_$$T^%L1TIME($H)
 S @GLBL=$$^%L1DC($H,1)_"\"_$$T^%L1TIME($H)_"^"
 ;
 ;----------------- HMK ( W4DOC ) -----------------
 ;;I $$^W4LKH D SUM^W4SUML(DD,$G(DOCH))
 ;
 ;--------------------- HESHBONIOT FOR HASHAVSEVET
 D FRMHSVH(DAT)
 ;
 K @$$^W4GL("HSV")@(DAT,KUP)
 D ^%S2GLSV($$^W4GL("HSV")_"("""_DAT_""","""_KUP_""")",$$^W4FGIB,"K")
 ;
 S MAC1=$$BG^W4MAIN("TEMP")_"""HSV"")"
 S MAC2=$$^W4GL("HSV")_"(DAT,KUP)"
 D ^%S1GC1 K @$$^W4MAIN("TEMP")@("HSV")
 D ^%S2GLSV($$^W4GL("HSV")_"("""_DAT_""","""_KUP_""")",$$^W4FGIB)
 ;
 ; ----------------------- ^TEMP ---> ^TOT ( OR ^Z1 )
 D GLBL($G(DOCH),DAT) K @GLBL
 ;
 K @$$^W4MAIN("TEMP")@("HZM")
 L +@GLBL:1
 S MAC1=$$^W4MAIN("TEMP"),MAC2=GLBL D ^%S1GC1 K @$$^W4MAIN("TEMP")
 ;
 S @GLBL@("MSD",1)=DSUMMSD,@GLBL@("AMSD",1)=DSUMAMSD
 S @GLBL@("MSL",1)=DSUMMSL,@GLBL@("AMSL",1)=DSUMAMSL
 L -@GLBL
 Q
 ;
 ;
FRMHSVH(DAT) ; -- HACHANAT KOVEZ LE HASHAVSHEVET -------
 Q:$D(P1X("SHUL"))
 Q:$D(P1X("PART"))
 Q:$D(P1X("ULAM"))
 N N,DATS,DATF,NUMBER,DAT2,LKH,SUM,STRING,NMB,HB,DHB
 S (DATS,DATF)=$$^%L1DC(DAT,4)
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("H",N)) Q:N=""  D
 .I $D(SGIRATJOM),$L($G(DOCH)),$D(@$$^W4GL("KLIN")@("H",N,"Z")) Q
 .I $D(SGIRATJOM),$G(DOCH)="Y",$D(@$$^W4GL("KLIN")@("H",N,"Y")) Q
 .I $D(SGIRATJOM),$L($G(DOCH)),DOCH'="X" D
 ..S @$$^W4GL("KLIN")@("H",N,DOCH)=$S($G(DOCH)="Y":$H,1:NZ)
 .
 .S STRING=$G(^(N)),LKH=$$LK^W4STRING("H",N)
 .S HB=N,ER=0
 .
 .I STRING["+" D  Q:ER  G EC ;------ OTOMAT
 ..I '$D(@$$^W4GL("P1LHB")@(LKH,HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",4),DHB=$P(ST,"\",8)
 ..Q:DHB'=DATS
 ..I STRING["+M" S MAM=$$MAM(LKH,HB)
 ..I STRING'["+M" S MAM=$$MAM^W4L(LKH,DHB),MAM=$J(SUM*MAM/(100+MAM),2,2)
 ..D TMPHSVH(LKH,HB,SUM,MAM)
 .;
 .I STRING'["+",STRING'["^",STRING'["W" D  Q:ER  G EC ;------ JAD
 ..I '$D(@$$^W4GL("KLF")@(LKH,"H",HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",2),DHB=$$^%L1DC($P(ST,"\",4),4)
 ..S MAM=$P(ST,"\",3)
 ..Q:DHB'=DATS
 ..D TMPHSVH(LKH,HB,SUM,MAM)
 .;
 .I STRING'["+",STRING["^MLY",$$MLY^W4PRM D  Q:ER  G EC ;------ MLY JASHAN
 ..N A S A=$G(@("^["""_@$$^W4GL("UCI")@("MLG")_"""]"_$P(STRING,"^",2)))
 ..I A="" S ER=1 Q
 ..S SUM=$P(A,"*",10),MAM=SUM-$P(A,"*",9)
 ..S DHB=$$^%L1DC($P(A,"*",15),3) Q:DHB'=DATS
 ..D TMPHSVH(LKH,HB,SUM,MAM)
EC .Q
 ;
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("TZ",N)) Q:N=""  D  ; - HESB ZIC YAD
 .I $D(SGIRATJOM),$D(@$$^W4GL("KLIN")@("TZ",N,"Z")) Q
 .I $D(SGIRATJOM),$G(DOCH)="Y",$D(@$$^W4GL("KLIN")@("TZ",N,"Y")) Q
 .I $D(SGIRATJOM),$L($G(DOCH)),DOCH'="X" D
 ..S @$$^W4GL("KLIN")@("TZ",N,DOCH)=$S($G(DOCH)="Y":$H,1:NZ)
 .
 .S STRING=$G(^(N)),LKH=$$LK^W4STRING("TZ",N)
 .S HB=N,ER=0
 .
 .I STRING["+" D  Q:ER  G EC ;------ OTOMAT
 ..N HB S HB=-N
 ..I '$D(@$$^W4GL("P1LHB")@(LKH,HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",4),DHB=$P(ST,"\",8)
 ..Q:DHB'=DATS
 ..S MAM=$$MAM^W4L(LKH,DHB),MAM=$J(SUM*MAM/(100+MAM),2,2)
 ..D TMPHSVTZ(LKH,-HB,-SUM,-MAM)
 .;
 .I STRING'["W" D  ;------ JAD
 ..I '$D(@$$^W4GL("KLF")@(LKH,"TZ",HB)) S ER=1 Q
 ..S ST=$G(^(HB))
 ..S SUM=$P(ST,"\",2),DHB=$$^%L1DC($P(ST,"\",4),4)
 ..S MAM=$P(ST,"\",3)
 ..Q:DHB'=DATS
 ..D TMPHSVTZ(LKH,HB,SUM,MAM)
 ;
 K @$$^W4MAIN("TMPW")
 S N="" F  S N=$O(@$$^W4GL("W4DIRD")@(DATS,N)) Q:N=""  D  ; -- HESB MEFURETET
 .N A S A=$G(^(N))
 .I $D(SGIRATJOM),A[",^" K @$$^W4MAIN("TMPW") Q
 .I $D(@$$^W4GL("W4DOC")@(N,"H")) D
 ..N HB S HB=$G(^("H"))
 ..S SUM=$$SUMTD^W4DOC(N),MAM=$$MAM^W4DOC(N),LKH=$$LKH^W4DOC(N)
 ..D TMPHSVH(LKH,HB,SUM,MAM,"W")
 .
 .I $D(@$$^W4GL("W4DOC")@(N,"TZ")) D  ;-- HESB ZIC MEFURETET
 ..N HB S HB=$G(^("TZ"))
 ..S SUM=$$SUMTD^W4DOC(N),MAM=$$MAM^W4DOC(N),LKH=$$LKH^W4DOC(N)
 ..D TMPHSVTZ(LKH,HB,SUM,MAM,"W")
 ;
 D
 .N TEMP S TEMP=$$^W4MAIN("TEMP")
 .N TMPW S TMPW=$$^W4MAIN("TMPW")
 .N N S N="" F  S N=$O(@TMPW@(N)) Q:N=""  D
 ..I N["-" M @TEMP@(N)=@TMPW@(N) Q
 ..S @TEMP@(N,1)=$G(@TEMP@(N,1))+$G(@TMPW@(N,1))
 K @$$^W4MAIN("TMPW")
 ;
 Q
 ;
 ;
TMPHSVH(LKH,HB,SUM,MAM,PR) ;
 N TEMP S TEMP=$$^W4MAIN("TEMP")
 I $G(PR)["W" S TEMP=$$^W4MAIN("TMPW")
 I $L($G(LKH)) S @TEMP@("HSV",LKH,"H-"_HB)=SUM_"\"_MAM
 S @TEMP@("HB",1)=$G(@TEMP@("HB",1))+SUM
 S @TEMP@("HB#",1)=$G(@TEMP@("HB#",1))+1
 S @TEMP@("HBMAM",1)=$G(@TEMP@("HBMAM",1))+MAM
 Q
 ;
TMPHSVTZ(LKH,HB,SUM,MAM,PR) ;
 N TEMP S TEMP=$$^W4MAIN("TEMP")
 I $G(PR)["W" S TEMP=$$^W4MAIN("TMPW")
 I $L($G(LKH)) S @TEMP@("HSV",LKH,"HBZ-"_HB)=SUM_"\"_MAM
 S @TEMP@("HBZ",1)=$G(@TEMP@("HBZ",1))+SUM
 S @TEMP@("HBZ#",1)=$G(@TEMP@("HBZ#",1))+1
 S @TEMP@("HBZMAM",1)=$G(@TEMP@("HBZMAM",1))+MAM
 Q
 ;
CH ;I $$^%L1DC(DATP,3)'>(DD+1) S @GLBL@("GM",1)=$G(@GLBL@("GM",1))+CHS
 S @GLBL@("GO",1)=$G(@GLBL@("GO",1))+CHS
 Q
 ;
 ;
HNH(HZM) ;
 Q:$G(HZM)=""
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 ;;L +@GLBL:1
 I $G(HNH) D
 .I $P(HNH,"=")'["%" D  Q
 ..S @GLBL@("MIN",1)=$G(@GLBL@("MIN",1))+HNH
 ..S @GLBL@("MIN",1,MKB)=$G(@GLBL@("MIN",1,MKB))+HNH
 ..I $D(AS) D
 ...S MINAS(MKB)=$G(MINAS(MKB))+HNH
 ...S MINAS=$G(MINAS)+HNH
 .
 .S HNH=+HNH
 .N HN S HN=0 I HNH'=100 S HN=$J(TSHL*100/(100-HNH)-TSHL,2,2)
 .S @GLBL@("MIN",1)=$G(@GLBL@("MIN",1))+HN
 .S:$D(AS) MINAS=$G(MINAS)+HN
 .S @GLBL@("MIN",1,MKB)=$G(@GLBL@("MIN",1,MKB))+HN
 .S:$D(AS) MINAS(MKB)=$G(MINAS(MKB))+HN
 ;
 ;
 I $G(HNH2) D  ;-- HANAHA NOSEFET
 .I HNH2'["%" D  Q
 ..S @GLBL@("MIN2",1)=$G(@GLBL@("MIN2",1))+HNH2
 ..S @GLBL@("MIN2",1,MKB)=$G(@GLBL@("MIN2",1,MKB))+HNH2
 ..S:$D(AS) MIN2AS(MKB)=$G(MIN2AS(MKB))+HNH2
 ..S:$D(AS) MIN2AS=$G(MIN2AS)+HNH2
 .
 .S @GLBL@("MIN2",1)=$G(@GLBL@("MIN2",1))+(TSHL*HNH2*.01)
 .S:$D(AS) MIN2AS=$G(MIN2AS)+(TSHL*HNH2*.01)
 .S @GLBL@("MIN2",1,MKB)=$G(@GLBL@("MIN2",1,MKB))+(TSHL*HNH2*.01)
 .S:$D(AS) MIN2AS(MKB)=$G(MIN2AS(MKB))+(TSHL*HNH2*.01) Q
 ;
 I $G(HNHTL) D  ;-- TLUSH
 .S @GLBL@("MINT",1)=$G(@GLBL@("MINT",1))+HNHTL
 .S @GLBL@("MINT",1,MKB)=$G(@GLBL@("MINT",1,MKB))+HNHTL
 ;
 S HNHCIB=$G(@$$^W4ORD@(HZM,"CIBHN"))
 I $G(HNHCIB) D
 .S @GLBL@("CIBHN",1)=$G(@GLBL@("CIBHN",1))+HNHCIB
 .S @GLBL@("CIBHN",1,MKB)=$G(@GLBL@("CIBHN",1,MKB))+HNHCIB
 ;
 I $G(@$$^W4ORD@(HZM,"LKHAH")) D  ; ----- ?????????????
 .N CIBAH,HNHCIBA S CIBAH=^("LKHAH")
 .N I,T3 S T3=0 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N A S A=$G(^(I))
 ..I $P(A,"\")'="",'$D(@$$^W4GL("PRTBH")@($P(A,"\"))) D
 ...S T3=T3+$P(A,"\",7)
 .
 .S HNHCIBA=$J(T3*CIBAH*.01,2,2)
 .S @GLBL@("CIBHN",1)=$G(@GLBL@("CIBHN",1))+HNHCIBA
 .S @GLBL@("CIBHN",1,MKB)=$G(@GLBL@("CIBHN",1,MKB))+HNHCIBA
 ;
 N N,HNHL S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D
 .S HNHL=$P($G(^(N)),"*",3)
 .S @GLBL@("HNHL",1)=$G(@GLBL@("HNHL",1))+HNHL
 .S @GLBL@("HNHL",1,MKB)=$G(@GLBL@("HNHL",1,MKB))+HNHL
 ;
 I $G(DMSH) D
 .S @GLBL@("DMSH",1)=$G(@GLBL@("DMSH",1))+DMSH
 .S:$D(AS) DMSHAS=$G(DMSHAS)+DMSH
 .S @GLBL@("DMSH",1,MKB)=$G(@GLBL@("DMSH",1,MKB))+DMSH
 .S:$D(AS) DMSHAS(MKB)=$G(DMSHAS(MKB))+DMSH Q
 ;;L -@GLBL
 Q
 ;
 ;
TIPSUG(HZM) ;
 S @GLBL@("TCA",1)=$G(@GLBL@("TCA",1))+$$STIPVT^W4HZMST(HZM,"V")
 S @GLBL@("TCHK",1)=$G(@GLBL@("TCHK",1))+$$STIPVT^W4HZMST(HZM,"CH")
 S @GLBL@("TASR",1)=$G(@GLBL@("TASR",1))+$$STIPVT^W4HZMST(HZM,"ASR")
 S @GLBL@("TMZ",1)=$G(@GLBL@("TMZ",1))+$$STIPVT^W4HZMST(HZM,"MZ")
 Q
 ;
 ;
MKBL(HZM) ;
 N MKBL,PSL
 S MKBL=$$MKBL^W4HZMST(HZM)
 S PSL=$$PSL^W4HZMST(HZM)
 I $$MSD^W4HZMST(HZM),$G(@$$^W4PRM@("LAST")),$G(@$$^W4PRM@("MLZ")),$G(@$$^W4GL("P1MLZ")@(HZM)) D
 .S MKBL=@$$^W4GL("P1MLZ")@(HZM)
 I $G(MKBL),$$^W4MSD(NMB) Q MKBL
 I $G(PSL),$$^W4MSL(NMB) Q PSL
 I $G(MKBL),$$^W4MSL(NMB) Q 9999
 Q 0
 ;
TZ(DD) ; --> TZTZ
 N (JB,%ARG,%REM,TZTZ,MINMSD,MINMSL,MINDLP,DD,NZ,P1S,TZK,DOCH,P1X)
 S (MINMSD,MINMSL,MINDLP)=0
 ;
 S N="",TZK="" K TZTZ F  S N=$O(@$$^W4GL("P1TZ")@(N)) Q:N=""  D
 .N NMB,NAME,MZM,CHK,CA,DZ,SHUL,SUGT
 .D GA^W4SCREF("P1TZ",$$^W4GL("P1TZ")_"(N)")
 .I DZ'=DD Q
 .I CA<0 S CA=-CA
 .I $G(P1X("SHUL")),NMB'=P1X("SHUL") Q
 .I $G(P1X("PART")),$G(PART)'=P1X("PART") Q
 .I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 .S TZK=N S SHUL=$G(MZM)+$G(CHK)+$G(CA)
 .S TAWMSL=0
 .I NMB=$G(@$$^W4PRM@("TAWMSL"))!$$TAW^W4DLPK(NMB) S MINDLP=MINDLP+SHUL
 .E  I $$^W4MSD(NMB) S MINMSD=MINMSD+SHUL
 .E  S MINMSL=MINMSL+SHUL
 .
 .I $G(NZ)!$D(P1S),$$SIGNZTZ(TZK) D  Q
 ..K TZTZ S (MINMSD,MINMSL,MINDLP)=0
 .
 .I $G(NZ),$$SIGNYTZ(TZK),$G(DOCH)="X"!($G(DOCH)="Y") D  Q
 ..K TZTZ S (MINMSD,MINMSL,MINDLP)=0
 .;
 .I $G(MZM) D
 ..S TZTZ("F")=$G(TZTZ("F"))+MZM
 ..S TZTZ("F#")=$G(TZTZ("F#"))+1
 ..I $G(PSL) S TZTZ("F",PSL)=$G(TZTZ("F",PSL))+MZM Q
 ..I $G(MLZ) S TZTZ("F",MLZ)=$G(TZTZ("F",MLZ))+MZM
 .
 .I $G(CHK) D
 ..S TZTZ("G")=$G(TZTZ("G"))+CHK
 ..S TZTZ("G#")=$G(TZTZ("G#"))+1
 ..S TZTZ("GO#")=$G(TZTZ("GO#"))+1
 ..I $G(PSL) S TZTZ("G",PSL)=$G(TZTZ("G",PSL))+CHK Q
 ..I $G(MLZ) S TZTZ("G",MLZ)=$G(TZTZ("G",MLZ))+CHK
 .;
 .I $D(@$$^W4GL("P1TZ")@(TZK,"V")) D
 ..S VTS=$E($P(^("V"),"*"),2,6) Q:VTS=""
 ..I CA<0 S CA=-CA
 ..S TZTZ(VTS)=$G(TZTZ(VTS))+CA
 ..S TZTZ(VTS_"#")=$G(TZTZ(VTS_"#"))+1
 ..S TZTZ("V")=$G(TZTZ("V"))+CA
 ..S TZTZ("V#")=$G(TZTZ("V#"))+1
 ..I $G(PSL) D  Q
 ...S TZTZ("V",PSL)=$G(TZTZ("V",PSL))+CA
 ...S TZTZ("V#",PSL)=$G(TZTZ("V#",PSL))+1
 ..I $G(MLZ) D
 ...S TZTZ("V",MLZ)=$G(TZTZ("V",MLZ))+CA
 ...S TZTZ("V#",MLZ)=$G(TZTZ("V#",MLZ))+1
 .;
 .S TZTZ("MIN3")=$G(TZTZ("MIN3"))-SHUL D
 ..I $G(PSL) S TZTZ("MIN3",PSL)=$G(TZTZ("MIN3",PSL))-SHUL Q
 ..I $G(MLZ) S TZTZ("MIN3",MLZ)=$G(TZTZ("MIN3",MLZ))-SHUL
 Q
 ;
 ;
BIT(HZM) S BIT=0
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 N OKBIT S OKBIT=1
 N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D  Q:'OKBIT
 .I $D(@$$^W4ORD@(HZM,"BIT",I)),'$$DELPOS^W4HZMST(HZM,I) S OKBIT=0
 ;
 I '$D(@$$^W4ORD@(HZM,"BIT")) S OKBIT=0
 ;
 I $G(P1X("PART")),'OKBIT!$$TSHL^W4HZMST(HZM)<0,$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),'OKBIT!$$TSHL^W4HZMST(HZM)<0,$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 I $$SHIHZUR(HZM) Q
 I $D(@$$^W4GL("P1DEL")@(HZM)),$G(^(HZM))'=HZM Q
 ;
 Q:'$$^W4CLOSE(HZM)&($G(DOCH)'="X")
 ;
 I $$TSHL^W4HZMST(HZM)<0 D  Q
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..I $$QN^W4HZMST(HZM,I)<0,'$$AVAR^W4HZMST(HZM,I) D
 ...N SUM S SUM=$$SUM^W4HZMST(HZM,I) ;+$$SUMHNHP^W4HZMST(HZM,I)
 ...;;S ^AA(HZM)=$G(^AA(HZM))+SUM
 ...S BIT=BIT-SUM
 ;
 I '$D(@$$^W4ORD@(HZM,"BIT")) D  Q
 .N I
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  I $$QN^W4HZMST(HZM,I)<0 D
 ..Q:$$AVAR^W4HZMST(HZM,I)
 ..S SUM=$$SUM^W4HZMST(HZM,I) ;+$$SUMHNHP^W4HZMST(HZM,I)
 ..;;S ^AA(HZM)=$G(^AA(HZM))+SUM
 ..S BIT=BIT-SUM
 ;
 N N
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 .Q:$$AVAR^W4HZMST(HZM,N)
 .I $G(P1X("PART")),$$DELPOS^W4HZMST(HZM,N)'=P1X("PART") Q
 .I $G(P1X("ULAM")),$$ULAM($$DELPOS^W4HZMST(HZM,N))'=P1X("ULAM") Q
 .S SUM=$$SUM^W4HZMST(HZM,N) ;+$$SUMHNHP^W4HZMST(HZM,N)
 .;;S ^AA(HZM)=$G(^AA(HZM))+SUM
 .S BIT=BIT-SUM
 Q
 ;
 ;
CB(DAT,CODDOC) ; --> CBCB
 K CBCB
 N CAV,DOP,MZMN,MASMK,NUMBER,NUMBER1,STRING,SUM,SUMCHO,SUMCHB,SUMCH,SUMTZ1,VTS
 N DATS,DATF,DAT2,DATPR,DATCB,DTCB
 D GLBLTMP ;-- GLBL=TEMP
 ;
 S (DATS,DATF)=$$^%L1DC(DAT,4)
 ;
 I ('$G(P1X("SHUL"))&'$G(P1X("PART"))&'$G(P1X("ULAM")))!$$^W4LKH D
 .S NUMBER="",NUMBER1="" K CBCB
 .F  S NUMBER=$O(@$$^W4GL("KLIN")@(CODDOC,NUMBER)) Q:NUMBER=""  D
 ..S STRING=$G(@$$^W4GL("KLIN")@(CODDOC,NUMBER)) Q:STRING=""
 ..N GLCB S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER)"
 ..I CODDOC="HMK" S GLCB=$$^W4GL("KLF")_"(STRING,CODDOC,NUMBER,""CB"")"
 ..N HDCB S HDCB=$G(@GLCB)
 ..S DATCB=$P(HDCB,"\",4)
 ..I DATCB?2N1"."2N1"."2N S DATCB=$$^%L1DC(DATCB,2)
 ..S DTCB=$$^%L1DC(DATCB,4)
 ..Q:DTCB<DATS!(DTCB>DATF)
 ..I $G(NZ),$P(HDCB,"\",10)="^" K CBCB Q
 ..I $D(SGIRATJOM),$P(HDCB,"\",10)="?",$G(DOCH)'="Z" K CBCB Q
 ..I $D(SGIRATJOM),$G(DOCH)="Z" S $P(@GLCB,"\",10)="^"
 ..I $D(SGIRATJOM),$G(DOCH)="Y",$P($G(@GLCB),"\",10)="" S $P(@GLCB,"\",10)="?"
 ..S NUMBER1=NUMBER
 ..D ^W4CBGT(STRING,CODDOC,NUMBER) S SHUL=SUMTZ1
 ..;
 ..S DOP="" I CODDOC="CB" S DOP="D"
 ..I $G(CAV) S:$E(VTS)="$" VTS=$E(VTS,2,3) D  K CAV
 ...S CBCB("V"_DOP)=$G(CBCB("V"_DOP))+CAV
 ...S CBCB(VTS_DOP)=$G(CBCB(VTS_DOP))+CAV
 ...S CBCB(VTS_DOP_"#")=$G(CBCB(VTS_DOP_"#"))+1
 ...I CODDOC="CB" S @GLBL@("HSV",STRING,"D-"_NUMBER_"-"_$C($A("I")+$E(VTS,2)-1))=CAV
 ..;
 ..I MZMN D
 ...S CBCB("F"_DOP)=$G(CBCB("F"_DOP))+MZMN
 ...S CBCB("F"_DOP_"#")=$G(CBCB("F"_DOP_"#"))+1
 ...I CODDOC="CB" S @$$^W4MAIN("TEMP")@("HSV",STRING,"D-"_NUMBER_"-F")=MZMN
 ..;
 ..I MASMK,CODDOC="CB" S @GLBL@("HSV",STRING,"D-"_NUMBER_"-MK")=MASMK
 ..;
 ..I SUMCHO D
 ...S CBCB("G"_DOP_"O")=$G(CBCB("G"_DOP_"O"))+SUMCHO
 ...S CBCB("G"_DOP_"O#")=$G(CBCB("G"_DOP_"O#"))+1
 ..;
 ..I $G(SUMCHB) D
 ...S CBCB("G"_DOP_"B")=$G(CBCB("G"_DOP_"B"))+SUMCHB
 ...S CBCB("G"_DOP_"B#")=$G(CBCB("G"_DOP_"B#"))+1
 ..;
 ..I SUMCH,CODDOC="CB" D
 ...N DATPR,NN,SUMG
 ...S NN="" F  S NN=$O(@$$^W4GL("KLF")@(STRING,CODDOC,NUMBER,NN)) Q:NN=""  I NN D
 ....S SUMG=+^(NN) Q:'SUMG
 ....S DATPR=$TR($P(^(NN),"\",7),"./","")
 ....I $$^%L1DC(DATPR,3)'>DTCB D  Q
 .....S @GLBL@("HSV",STRING,"D-"_NUMBER_"-GM-"_DATCB)=$G(@GLBL@("HSV",STRING,"D-"_NUMBER_"-GM-"_DATCB))+SUMG
 ....S @GLBL@("HSV",STRING,"D-"_NUMBER_"-G-"_DATPR)=$G(@GLBL@("HSV",STRING,"D-"_NUMBER_"-G-"_DATPR))+SUMG
 ..;
 ..S CBCB("G"_DOP)=$G(CBCB("G"_DOP))+SUMCH
 ..S CBCB("G"_DOP_"#")=$G(CBCB("G"_DOP_"#"))+1
 Q
 ;
 ;
SHIHZUR(HZM) ;
 N B S B=$P($G(@$$^W4ORD@(HZM,"HR2")),"\\",2)
 I $E(B,$L(B))=">" Q 1
 Q 0
 ;
SUMMTB(HZM) ;
 I $G(P1X("SHUL")),$$NMB^W4HZMST(HZM)'=P1X("SHUL") Q
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","M",N)) Q:N=""  D
 .S $P(SUMMTB(N),"!")=$G(SUMMTB(N))+^(N)
 .S $P(SUMMTB(N),"!",2)=$P($G(SUMMTB(N)),"!",2)+(^(N)*$P(^(N),"!",2))
 .S SUMMTB=$G(SUMMTB)+(^(N)*$P(^(N),"!",2))
 .N A S A=$G(^(N))
 .;;L +@GLBL@("MTB"):1
 .S $P(@GLBL@("MTB",N),"!")=$G(@GLBL@("MTB",N))+A
 .S $P(@GLBL@("MTB",N),"!",2)=$P($G(@GLBL@("MTB",N)),"!",2)+(A*$P(A,"!",2))
 .S $P(@GLBL@("MTB",N,MKB),"!")=$G(@GLBL@("MTB",N,MKB))+A
 .S $P(@GLBL@("MTB",N,MKB),"!",2)=$P($G(@GLBL@("MTB",N,MKB)),"!",2)+(A*$P(A,"!",2))
 .;;L -@GLBL@("MTB")
 Q
 ;
DIF(VT,NMB,SUM) ; --- LEFI MISSADA, TAW & MISHLOHIM
 Q:'NMB
 ;;L +@GLBL@(VT_"#",1):1
 S @GLBL@(VT_"#",1)=$G(@GLBL@(VT_"#",1))+1
 ;;L -@GLBL@(VT_"#",1)
 ;
 I $$^W4MSD(NMB),'$G(TAWMSD) D  Q
 .;;L +@GLBL@(VT_"S",1):1
 .S @GLBL@(VT_"S",1)=$G(@GLBL@(VT_"S",1))+SUM
 .;;L -@GLBL@(VT_"S",1)
 .;;L +@GLBL@(VT_"S#",1):1
 .S @GLBL@(VT_"S#",1)=$G(@GLBL@(VT_"S#",1))+1
 .;;L -@GLBL@(VT_"S#",1)
 ;
 I $$^W4MSD(NMB),$G(TAWMSD) D  Q
 .;;L +@GLBL@(VT_"W",1):1
 .S @GLBL@(VT_"W",1)=$G(@GLBL@(VT_"W",1))+SUM
 .;;L -@GLBL@(VT_"W",1)
 .;;L +@GLBL@(VT_"W#",1):1
 .S @GLBL@(VT_"W#",1)=$G(@GLBL@(VT_"W#",1))+1
 .;;L -@GLBL@(VT_"W#",1)
 ;
 I $$^W4MSL(NMB) D
 .;;L +@GLBL@(VT_"L",1):1
 .S @GLBL@(VT_"L",1)=$G(@GLBL@(VT_"L",1))+SUM
 .;;L -@GLBL@(VT_"L",1)
 .;;L +@GLBL@(VT_"L#",1):1
 .S @GLBL@(VT_"L#",1)=$G(@GLBL@(VT_"L#",1))+1
 .;;L -@GLBL@(VT_"L#",1)
 Q
 ;
SIGNZ(DD,HZ) ;
 I $G(@$$^W4GL("P1H")@(DD,HZ))[",^" Q 1
 Q 0
SIGNY(DD,HZ) ;
 I $G(@$$^W4GL("P1H")@(DD,HZ))[",?" Q 1
 Q 0
SIGNZTZ(TZK) ;
 I $P($G(@$$^W4GL("P1TZ")@(TZK)),"\",15)="^" Q 1
 Q 0
SIGNYTZ(TZK) ;
 I $P($G(@$$^W4GL("P1TZ")@(TZK)),"\",15)="?" Q 1
 Q 0
MLZ(MKB) ;
 I $L($G(MKB))'=5 Q 0
 Q 1
PSL(MKB) ;
 I $L($G(MKB)),$L($G(MKB))<5 Q 1
 Q 0
 ;
MAM(STRING,HB) ;
 N MAM S MAM=0
 N N S N="" F  S N=$O(@$$^W4GL("KLIN")@("H",HB,STRING,N)) Q:N=""  D
 .N TD S TD=$P($G(^(N)),"\",3)
 .N SHANA,MRK,STR,TSTR,A
 .S SHANA=$P(N,"-"),MRK=$P(N,"-",2)
 .Q:SHANA=""  Q:MRK=""  Q:TD=""
 .S STR=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",3) Q:STR=""
 .S TSTR=$P($G(@$$^W4GLM("YZRN")@(MRK,10)),"*",4) Q:TSTR=""
 .S A=$G(@$$^W4GLM("MLY")@(SHANA,STR,TSTR,2,TD))
 .S MAM=MAM+$P(A,"*",10)-$P(A,"*",9)
 Q MAM
 ;
MZMPART(HZM,PART) ;
 Q $$SMZ^W4HZMST(HZM,PART)
CHKPART(HZM,PART) ;
 Q $$SCH^W4HZMST(HZM,PART)
ASRPART(HZM,PART) ;
 Q $$SAS^W4HZMST(HZM,PART)
CAPART(HZM,PART) ;
 Q $$SCA^W4HZMST(HZM,PART)
TLPART(HZM,PART) ;
 Q $$STL^W4HZMST(HZM,PART)
 ;
SSOAD(SOAD) ;
 I $G(P1X("PART")),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 ;
 N MKB S MKB=$$MKBL(HZM)
 S @GLBL@("SD",1)=$G(@GLBL@("SD",1))+SOAD
 S @GLBL@("SD",1,MKB)=$G(@GLBL@("SD",1,MKB))+SOAD
 Q
 ;
SHZ(CHZ) ;
 N MKB S MKB=$$MKBL(HZM)
 ;;L +@GLBL@("SHZ"):1
 S @GLBL@("SHZ",1)=$G(@GLBL@("SHZ",1))+CHZ
 S @GLBL@("SHZ",1,MKB)=$G(@GLBL@("SHZ",1,MKB))+CHZ
 ;;L -@GLBL@("SHZ")
 Q
 ;
GLBL(DOCH,DAT) ;
 S GLBL=$S('MRK:$$^W4GL("TOT")_"(DAT)",1:$$^W4GL("TOT")_"(DAT,MRK)") ;--- FOR X
 I $G(DOCH)="Z" S GLBL=$$^W4GL("Z1")_"(DAT,NZ)"
 Q
 ;
GLBLTMP ;
 S GLBL=$$^W4MAIN("TEMP")
 Q
 ;
TIPNO ;
 I $G(P1X("SHUL")),NMB'=P1X("SHUL") Q
 I $G(P1X("PART")),$G(HZM),$$POS^W4HZMST(HZM)'=P1X("PART") Q
 I $G(P1X("ULAM")),$G(HZM),$$ULAM($$POS^W4HZMST(HZM))'=P1X("ULAM") Q
 S @GLBL@("F",1)=$G(@GLBL@("F",1))-TIP D
 .S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))-TIP Q
 D DIF("F",NMB,-TIP)
 Q
 ;
HISHUV(HZM) ;
 S (SHUL,NMB,NAME)=""
 Q:'$D(@$$^W4ORD@(HZM))
 I '$D(SGIRATJOM)!($G(DOCH)'="X") Q:'$$^W4CLOSE(HZM)
 I $D(SGIRATJOM),$G(DOCH)="Y" D
 .I DDHZ[",Y" Q
 .S ^(HZM)=$G(@P1HDD@(HZM))_",Y"
 ;
 I FIRSTHZ S HZ0=HZM S FIRSTHZ=0
 ;
 N DD1 S DD1=DD N DD,HB S DD=DD1
 S NMB=$$NMB^W4HZMST(HZM)
 I $G(P1X("SHUL")),NMB'=P1X("SHUL") Q
 Q:'$D(@$$^W4ORD@(HZM))
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 ;
 S LL=$$LL^W4HZMST(HZM)
 I LL D
 .I LL=1 S LLQNS=LLQNS+$S(+$G(SOAD)=0:0,$G(SOAD)>0:1,1:-1),LLSUMS=LLSUMS+TSHL
 .I LL=2 S LLQNT=LLQNT+$S(+$G(SOAD)=0:0,$G(SOAD)>0:1,1:-1),LLSUMT=LLSUMT+TSHL
 ;
 I $G(@$$^W4PRM@("HAVT")) D
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..I $$PAR^W4HZMST(HZM,I)=@$$^W4PRM@("HAVT") D
 ...S HAVT=$G(HAVT)+$$SUM^W4HZMST(HZM,I)
 ;
 I '$G(SOAD),$G(NMB),$$^W4MSD(NMB),$$^W4DLPK(NMB),$G(@$$^W4PRM@("MSPSD"))=1 D
 .S SOAD=1
 ;
 I $G(NMB),$$^W4MSD(NMB),$$^W4DLPK(NMB),$G(@$$^W4PRM@("NOMSPSD")) D
 .S SOAD=0
 ;
 I '$G(SOAD),$G(NMB),$$^W4MSL(NMB),$G(@$$^W4PRM@("SDMSL"))=1 D
 .S SOAD=$S(TSHL>0:1,TSHL<0:-1,1:0)
 ;
 I $$MSL^W4HZMST(HZM) D
 .N CHZ S CHZ=$S(TSHL>0:1,TSHL<0:-1,1:0)
 .S SMSH=$G(SMSH)+CHZ
 .D SHZ(CHZ)
 I '$$MSL^W4HZMST(HZM) D
 .N CHZ S CHZ=$S(TSHL>0:1,TSHL<0:-1,1:0)
 .S SHZM=$G(SHZM)+CHZ
 .D SHZ(CHZ)
 S TAWMSL=0 S TAWMSL=$$^W4TAWMSL(HZM)
 S TAWMSD=0
 I $G(NMB),$G(@$$^W4PRM@("TAWMSD")),$$TAW^W4MSD(NMB) S TAWMSD=1
 ;
 N PAID S PAID=SHUL-$G(TL)
 ;
 I $$^W4MSD(NMB),'$G(TAWMSD) D
 .S SUMMSD=SUMMSD+PAID
 .S DSUMMSD=DSUMMSD+PAID
 .S SUMAMSD=SUMAMSD+$G(SHULA)
 .S DSUMAMSD=DSUMAMSD+$G(SHULA)
 .I TSHL+HNH!$$^W4PPG D SSOAD(SOAD)
 ;
 I $$^W4MSD(NMB),$G(TAWMSD) D
 .S SUMTAW=$G(SUMTAW)+PAID
 .S DSUMTAW=$G(DSUMTAW)+PAID
 .S SUMATAW=SUMATAW+$G(SHULA)
 .S DSUMATAW=DSUMATAW+$G(SHULA)
 .I TSHL+HNH!$$^W4PPG D SSOAD(SOAD)
 ;
 I TAWMSL D
 .S SUMDLP=SUMDLP+PAID
 .S DSUMDLP=DSUMDLP+PAID
 .S SUMADLP=SUMADLP+$G(SHULA)
 .S DSUMADLP=DSUMADLP+$G(SHULA)
 .I $$^W4PPG!(TSHL+HNH) D
 ..D SSOAD(SOAD) S DSSOAD=DSSOAD+SOAD
 I $$^W4MSL(NMB)&'TAWMSL D
 .S SUMMSL=SUMMSL+PAID
 .S DSUMMSL=DSUMMSL+PAID
 .S SUMAMSL=SUMAMSL+$G(SHULA)
 .S DSUMAMSL=DSUMAMSL+$G(SHULA)
 ;
 N MKB S MKB=$$MKBL(HZM)
 ;
 I $G(P1X("PART")) D
 .N PART S PART=P1X("PART")
 .S MZM=$$MZMPART(HZM,PART)
 .S CHK=$$CHKPART(HZM,PART)
 .S CA=$$CAPART(HZM,PART)
 .S TL=$$TLPART(HZM,PART)
 .S ASR=$$ASRPART(HZM,PART)
 .S TIP=$S($$POS^W4HZMST(HZM)=PART:TIP,1:0)
 ;
 I $G(P1X("ULAM")) D
 .N ULAM S ULAM=P1X("ULAM")
 .S MZM=$$MZMULAM(HZM,ULAM)
 .S CHK=$$CHKULAM(HZM,ULAM)
 .S CA=$$CAULAM(HZM,ULAM)
 .S TL=$$TLULAM(HZM,ULAM)
 .S ASR=$$ASRULAM(HZM,ULAM)
 .S TIP=$S($$ULAM($$POS^W4HZMST(HZM))=ULAM:TIP,1:0)
 ;
 I $G(TL) D
 .S @GLBL@("Z",1)=$G(@GLBL@("Z",1))+TL
 .D DIF("Z",NMB,TL)
 .S @GLBL@("Z",1,MKB)=$G(@GLBL@("Z",1,MKB))+TL
 ;
 I $G(MZM) D
 .S @GLBL@("F",1)=$G(@GLBL@("F",1))+MZM
 .D DIF("F",NMB,MZM)
 .S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))+MZM
 .S @GLBL@("F#",1,MKB)=$G(@GLBL@("F#",1,MKB))+1
 .D:$G(@$$^W4PL@("MATB")) SUMMTB(HZM)
 ;
 N MP S MP=$$SSHULMP^W4T(HZM)
 I MP D
 .S @GLBL@("MP",1)=$G(@GLBL@("MP",1))+MP
 .D DIF("MP",NMB,MP)
 .S @GLBL@("MP",1,MKB)=$G(@GLBL@("MP",1,MKB))+MP
 .S @GLBL@("MP#",1,MKB)=$G(@GLBL@("MP#",1,MKB))+1
 ;
 ; --------------  TIPNT - VYCITAT TIP IZ PIDJONA ----------
 I $G(TIP) D  S TIPHZM(HZM)=""
 .S @GLBL@("T",1)=$G(@GLBL@("T",1))+TIP
 .D DIF("T",NMB,TIP)
 .S @GLBL@("T",1,MKB)=$G(@GLBL@("T",1,MKB))+TIP
 .S @GLBL@("T#",1,MKB)=$G(@GLBL@("T#",1,MKB))+1
 .
 .I $$TIPNO^W4TIPPD($G(DD)) D
 ..N MZ S MZ=$G(@GLBL@("F",1))-TIP ;;I MZ<0 S MZ=0
 ..S @GLBL@("F",1)=MZ
 ..I $G(MKB) S @GLBL@("F",1,MKB)=$G(@GLBL@("F",1,MKB))-TIP
 .
 .I $$^W4MSD(NMB),'$G(TAWMSD),'$$^W4TIPPD(DD) S SUMMSD=SUMMSD-TIP,DSUMMSD=DSUMMSD-TIP
 .I $$^W4MSD(NMB),$G(TAWMSD),'$$^W4TIPPD(DD) S SUMTAW=SUMTAW-TIP
 .I $$^W4MSL(NMB),$$^W4TIPPD(DD) S SUMMSL=SUMMSL-TIP,DSUMMSL=DSUMMSL-TIP
 ;
 ;
 I $G(CHK) D
 .S @GLBL@("G",1)=$G(@GLBL@("G",1))+CHK
 .D DIF("G",NMB,CHK)
 .S @GLBL@("G",1,MKB)=$G(@GLBL@("G",1,MKB))+CHK
 .S @GLBL@("G#",1,MKB)=$G(@GLBL@("G#",1,MKB))+1
 .N I F I=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","CH",I))  D
 ..D ^W4GTVCH(^(I),"CH")
 ..I $G(P1X("PART")),$$POSVT^W4HZMST(HZM,"CH",I)'=P1X("PART") Q
 ..I $G(P1X("ULAM")),$$ULAM($$POSVT^W4HZMST(HZM,"CH",I))'=P1X("ULAM") Q
 ..D CH
 ;
 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB","ASR",N1)) Q:N1=""  D
 .N A S A=$G(^(N1))
 .S LKH=$P(A,"*") I $P(A,"*",6) S LKH=$P(A,"*",6) ; --- LKHR
 .S SUM=$P(A,"*",4),TLUSH=$P(A,"*",8),KMTL=$P(A,"*",9)
 .Q:LKH=""
 .
 .I $G(P1X("PART")),$$POSVT^W4HZMST(HZM,"ASR",N1)'=P1X("PART") Q
 .I $G(P1X("ULAM")),$$ULAM($$POSVT^W4HZMST(HZM,"ASR",N1))'=P1X("ULAM") Q
 .
 .S @GLBL@("H",1)=$G(@GLBL@("H",1))+SUM
 .D DIF("H",NMB,SUM)
 .S @GLBL@("H",1,MKB)=$G(@GLBL@("H",1,MKB))+SUM
 .S @GLBL@("H#",1,MKB)=$G(@GLBL@("H#",1,MKB))+1
 .
 .S @$$^W4MAIN("P1LKHZ")@(LKH)=$G(@$$^W4MAIN("P1LKHZ")@(LKH))+SUM
 .S @GLBL@("LKH",1,MKB,LKH)=$G(@GLBL@("LKH",1,MKB,LKH))+SUM
 .I $G(TLUSH),$G(KMTL) D
 ..S @GLBL@("LKH",1,MKB,LKH,TLUSH)=$G(@GLBL@("LKH",1,MKB,LKH,TLUSH))+KMTL
 ..S @$$^W4MAIN("P1LKHZ")@(LKH,TLUSH)=$G(@$$^W4MAIN("P1LKHZ")@(LKH,TLUSH))+KMTL
 ;
 I $D(@$$^W4ORD@(HZM,"CB","V")) D
 .D DIF("V",NMB,CA)
 .S @GLBL@("V",1)=$G(@GLBL@("V",1))+CA
 .S @GLBL@("V",1,MKB)=$G(@GLBL@("V",1,MKB))+CA
 .S @GLBL@("V#",1,MKB)=$G(@GLBL@("V#",1,MKB))+1
 .N I S I=""
 .F  S I=$O(@$$^W4ORD@(HZM,"CB","V",I)) Q:I=""  D ^W4GTVCH(^(I),"V") D
 ..S VTS=$E(VTS,2,6) Q:VTS=""
 ..I $G(P1X("PART")),P1X("PART")'=$$POSVT^W4HZMST(HZM,"V",I) Q
 ..I $G(P1X("ULAM")),P1X("ULAM")'=$$ULAM($$POSVT^W4HZMST(HZM,"V",I)) Q
 ..D DIF(VTS,NMB,CAV)
 ..S @GLBL@(VTS,1)=$G(@GLBL@(VTS,1))+CAV
 ..S @GLBL@(VTS,1,MKB)=$G(@GLBL@(VTS,1,MKB))+CAV
 ..S @GLBL@(VTS_"#",1,MKB)=$G(@GLBL@(VTS_"#",1,MKB))+1
 ;
 D HNH(HZM) ; --- HISHUV HANAHOT
 ;
 D:$G(TIP) TIPSUG(HZM) ; --- HISHUV TIPIM
 ;
 D BIT(HZM)
 ;
 I $G(BIT) D
 .I $G(@$$^W4PRM@("BITA")),TSHL'<0 Q
 .N MKBL S MKBL=$$MKBL^W4HZMST(HZM)
 .S @GLBL@("BIT",1)=$G(@GLBL@("BIT",1))+BIT
 .S @GLBL@("BIT#",1)=$G(@GLBL@("BIT#",1))+1
 .I $G(PSL) S @GLBL@("BIT",1,PSL)=$G(@GLBL@("BIT",1,PSL))+BIT Q
 .I $$^W4MSL(NMB) S @GLBL@("BIT",1,9999)=$G(@GLBL@("BIT",1,9999))+BIT Q
 .I $G(MKBL),$$^W4MSD(NMB),'$G(@$$^W4PRM@("MLZ"))!$G(@$$^W4PRM@("BITMKBL")) D  Q
 ..S @GLBL@("BIT",1,MKBL)=$G(@GLBL@("BIT",1,MKBL))+BIT
 ..S @GLBL@("BIT#",1,MKBL)=$G(@GLBL@("BIT#",1,MKBL))+1
 .I $G(MKBL),$$^W4MSD(NMB) D
 ..N N,BTL S N="",BTL=0
 ..F  S N=$O(@$$^W4ORD@(HZM,"BIT",N)) Q:N=""  D
 ...N MZ S MZ=$P(^(N),"*",2)
 ...I 'MZ,$P(^(N),"*") S MZ=$P(^(N),"*")
 ...I $$SUM^W4HZMST(HZM,N)<0,$E($$PAR^W4HZMST(HZM,N)) D
 ....S BTL=-$$SUM^W4HZMST(HZM,N)
 ...I 'MZ!'$G(@$$^W4PRM@("MLZ")),$G(MKBL) S MZ=MKBL
 ...I MZ S @GLBL@("BIT",1,MZ)=$G(@GLBL@("BIT",1,MZ))+BTL
 Q
 ;
SGHZ(HZ) ;
 I '$$^W4CLOSE(HZ),'$$ITRA^W4HZMST(HZ) D  ; -- HADP HESH TAW
 .N P1TNOPR,BLIPR S BLIPR="",P1TNOPR=""
 .I $$SHUL^W4HZMST(HZ) D ^W4PCHB(HZ,1)
 .I $$SHULA^W4HZMST(HZ),'$$SHUL^W4HZMST(HZ) D ^W4PCHB2(HZ)
 .D SETCLOSE^W4HZMST(HZ)
 .;;D ^W4SGHB(HZM)
 Q
 ;
ULAM(POS) ;
 I $G(POS)="" Q ""
 Q $G(@$$POSULM@(POS))
 ;
MZMULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SMZ S SMZ=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SMZ=SMZ+$$SMZ^W4HZMST(HZM,N)
 Q SMZ
 ;
CHKULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SCH S SCH=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SCH=SCH+$$SCH^W4HZMST(HZM,N)
 Q SCH
 ;
ASRULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SAS S SAS=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SAS=SAS+$$SAS^W4HZMST(HZM,N)
 Q SAS
 ;
CAULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N SCA S SCA=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S SCA=SCA+$$SCA^W4HZMST(HZM,N)
 Q SCA
 ;
TLULAM(HZM,ULAM) ;
 N POSULM S POSULM=$$POSULM
 N STL S STL=0
 N N S N="" F  S N=$O(@POSULM@(N)) Q:N=""  D
 .I $G(^(N))'=ULAM Q
 .S STL=STL+$$STL^W4HZMST(HZM,N)
 Q STL
 ;
POSULM(STAM)
 Q $$^W4GL("W4POSATR")
 
 
 

W4SUMV
W4SUMV(DT1,DT2) ; [ 14.04.12 05:02 ] [ 19.08.11 12:23 ] [ 28.04.09 15:34 ] [
 N (JB,%ARG,%REM,DT1,DT2)
 S OK=1,SUM=0
 S N="" F  S N=$O(@$$^W4GL("DUMP")@(N)) Q:N=""  D
 .S A=$G(^(N)) Q:A=""
 .S TM=$P(A,"|",6),DT=$$^%L1DC($P(A,"|",7),3)
 .I TM<12 S DT=DT-1
 .I DT'<DT1,DT'>DT2 S SUM=SUM+A
 Q SUM

W4SUMVJ
W4SUMVJ(DT1,DT2) ; [ 03.07.22 09:23 ] [ 
 N (JB,%ARG,%REM,DT1,DT2) ;
 S SUMJ=0
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..S IND="" F  S IND=$O(@$$^W4ORD@(HZ,"CB","V",IND)) Q:IND=""  I IND D
 ...S ST=$G(^(IND))
 ...S NCA=$P(ST,"*",2)
 ...I $L(NCA)<4!'NCA S SUMJ=SUMJ+$P(ST,"*",7)
 Q SUMJ
 
 
 
 

W4SUMZRO
W4SUMZRO ; [ 03.11.22 05:45 ] [ 12.08.19 13:08 ] [ 30.07.19 10:59 ] 
 D IN
 X "S ("_W4SUMZRO_")=0"
 K @$$^W4MAIN("P1LKHZ")
 Q
 ;
IN ;
 S W4SUMZRO="SUMB,SHUM,SUMMSD,SUMMSL,SUMMTB,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SSOAD,SMSDW,SMSH,SMSHT,SMSL,TIP1"
 S W4SUMZRO=W4SUMZRO_","_"HAVT,CASHD,SMP,SPRP,SUMTAW,SUMATAW,STAW,LLQNT,LLQNS,LLQNM,LLSUMT,LLSUMS,LLSUMM,LLSUMT"
 S W4SUMZRO=W4SUMZRO_","_"SUMMAM,SUMNOMAM,MAMS,CAFUT,CAOUT,BIT,BITR,BITD,BITT,SOADR,SOADW,SOADD,SOADT,AVR,AVD,AVT,SMC"
 Q
 ;
IN1 ;
 S W4SUMZRO="SUMMSD,SUMMSL,SUMDLP,SUMAMSD,SUMAMSL,SUMADLP,SMSDW,SMSH,SMSHT,SMSL,SMP,SPRP"
 S W4SUMZRO=W4SUMZRO_","_"SUMTAW,SUMATAW,STAW,LLQNT,LLQNS,LLQNM,LLSUMT,LLSUMS,LLSUMM,CAFUT,CAOUT"
 Q
 ;
V2G ;
 N J,V,W4SUMZRO
 D ^W4IN
 K @$$^W4MAIN("VRMSUM")
 D IN1
 F J=1:1:$L(W4SUMZRO,",") D
 .S V=$P(W4SUMZRO,",",J) Q:V=""
 .S @$$^W4MAIN("VRMSUM")@(V)=$G(@V)
 Q
 ;
G2V ;
 N J,V,W4SUMZRO
 D ^W4IN
 D IN1
 F J=1:1:$L(W4SUMZRO,",") D
 .S V=$P(W4SUMZRO,",",J) Q:V=""
 .S @V=$G(@$$^W4MAIN("VRMSUM")@(V))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SUPPL
W4SUPPL ; [ 16.03.25 19:29 ] [ 07.05.17 09:50 ] [ 15.09.14 10:29 ] [
 Q
INIT ;
 D ^W3CSS,^W4CSS
 D KILL^%W1PRM("DAT"),KILL^%W1PRM("MLPRT")
 D KILL^%W1PRM("PRKUP")
 D PUT^%W1PRM("IFRURSH",1)
 D PUT^%W1PRM("SUPPL",1)
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 Q
 
 

W4SVEX
W4SVEX(COD) ; [ 21.05.26 08:43 ] [ 04.02.19 16:26 ] [ 29.03.18 15:14 ] 
 N $ZT S $ZT="G ER"
 I $G(DLM)="" S DLM=","
 D ^%L1TS S FMT=0
 S FL=$$FL^%W1FREPX(COD,FMT)
 S FLCSV=FL_"."_$$FMT^%W1PCEX(FMT)
 ;
 D TMPREP
 ;
 N A,B,I,J,RZD
 C FLCSV:(DELETE)
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 ;
 F I=1:1 Q:'$D(@TMPREP@("HD0",I))  D
 .N B S B=$G(^(I)),B1=B
 .I I=1 S B1="" N J F J=$L(B," "):-1:1 S B1=$P(B," ",J)_" "_B1
 .D SVEX1(B1," ")
 ;
 D SVEX1(" "," ")
 ;
 S B=$G(@TMPREP@("HD"))
 S B=$$SPA^%L1FRM(B)
 I $E(B,$L(B))=DLM S B=$E(B,1,$L(B)-1)
 ;
 D SVEX1(B,DLM)
 ;
 F BG=1:1 Q:'$D(@TMPREP@(BG))  S A=$G(^(BG)) D SVEX1(A,DLM)
 ;
 C FLCSV
 ;
END ;
 Q
 ;
 ;
DIVEXC(COD) ; 
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 N IND S IND=COD_$$^W4MYDVN
 S FL=COD_$$^W4MYDVN_"_"_$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 S FLCSV=DIR_FL_".csv"
 S FLTXT=DIR_FL_".txt"
  ;
 W "<div id=""excel"" dir="""_$$^%W1DIR_""">",!
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
   I $$GETP^%W1PRM("MANYREPS")&'$G(%ARG("NOMNREP")) D
   .W "<td>" 
   . D ^W4MNREP
   .W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 Q
 ;
 ;
TMPREP ;
 S TMPREP=$$^W4MAIN("TMPREP")
 Q
 ;
SVEX1(A,RZD)
 N B S B=""
 N J,F,ZN S J=0,F=0
 F F=1:1:$L(A,RZD)  D
 .S ZN=$P(A,RZD,F)
 .S B=$$RKV^%W1PCEX(ZN,0)_B
 S B=$E(B,1,$L(B)-1)
 U FLCSV W B,!
 Q
 ;
ER ;
 D SVER^%L1X
 G END
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4SVLK
W4SVLK(HZW,GL) ; [ 13.06.23 17:05 ] [ 29.06.22 07:14 ] [ 28.06.22 19:41 ] 
 N (JB,%ARG,HZW,GL)
 ;
 N T S T=$$T^W3HZHD
 S HD=$G(@GL@(HZW))
 ;
 F J=1:1:$L(HD,"~") D
 .S FLD=$P(T,";",J) Q:FLD=""  Q:$E(FLD)'?1U
 .S FLD=$P(FLD,":")
 .;;W "FLD="_FLD,! H 1
 .S @FLD=$P(HD,"~",J)
 ;
 S NMB1=$$PROCNMB^W3SETHD(NMB)
 I NMB1="" S NMB1=$TR(NMB,"-\*!","")
 ;
 I $L(NMB1)<4 Q
 I $$ISCR^W4L(NMB1) Q
 ;
 N PRM S PRM="LKH="_$$HB(NAME)_"<>"
 I CITY="" S CITY="TAKEAWAY"
 I CITY'="TAKEAWAY" S PRM=PRM_"KTV="_$$HB($G(STREET))_"<>"
 S PRM=PRM_"TELB="_TELB
 
 I CITY'="TAKEAWAY" D
 .S PRM=PRM_"<>DIRA="_$G(FLAT)_"<>KOMA="_$$HB($G(FLOOR))_"<>"
 .S PRM=PRM_"BAIT="_$G(HOME)_"<>CNISA="_$$HB($G(ENTRANCE))_"<>"
 .S PRM=PRM_"IR="_CITY_"<>"
 .S PRM=PRM_"<>MIKUD="_$G(MIKUD)
 ;
 S PRM=PRM_"<>CMNT="_$$HB($G(COMMENT))_"<>"
 S PRM=PRM_"CMNTIN="_$$HB($G(CMNTIN))_"<>"
 S PRM=PRM_"PELE="_$G(PELE)_"<>COMP="_$$HB($G(COMP))_"<>"
 S PRM=PRM_"FAX="_$G(FAX)
 I $L($G(EMAIL)) S PRM=PRM_"<>EMAIL="_$G(EMAIL)
 S PRM=PRM_"<>TZ="_$G(TZ)
 S PRM=PRM_"<>PRIVATE="_$G(KINDORD)
 ;;S ^AA("W4SVLK","PRM")=PRM
 D PUT2^W4L(NMB1,PRM)
 Q
 ;
 ;
HB(RKV) ;
 Q RKV
 
 
 
 
 
 
 
 
 
 
 

W4T
W4T(HZM,PRN) ;  [ 02.11.22 09:15 ] [ 29.10.20 11:13 ] [ 14.02.19 05:19 ] 
 N (HZM,PRN,P1HZHB51,JB,%REM,%ARG,P1TNOPR,BLIPR,W4ASR)
 D GLORD
 Q:$D(@GLORD@("ETHB"))&$$^W4CLOSE(HZM)
 Q:$D(@GLORD@("ETHB2"))&$$^W4CLOSE(HZM)
 D ^W4IN
 S NMB=$$NMB^W4HZMST(HZM)
 S TSHL=$$TSHL^W4HZMST(HZM)
 S DAT=$ZD(P1DZ,"YYMMDD")
 ;
 S CBO=$G(@GLORD@("CBOLD"))
 S (MZMO,MZMOO)=$P(CBO,"\",2)
 S (CHKO,CHKOO)=$P(CBO,"\",3)
 S (CAO,CAOO)=$P(CBO,"\",4)
 S (TLO,TLOO)=$P(CBO,"\",9)
 S TIPO=$P(CBO,"\",10)
 S SHULO=(MZMO+CHKO+CAO+TLO)
 S (SHULAO,ASRO)=$P(CBO,"\",5)
 ;
 S MZM=$J($$MZM^W4HZMST(HZM),2,2)
 S CHK=$J($$SCH(HZM),2,2)
 S CA=$J($$SCA(HZM),2,2)
 S TL=$J($$TL^W4HZMST(HZM),2,2)
 S TIP=$J($$STIP^W4HZMST(HZM),2,2)
 S ODEF=$J($$ODEF^W4HZMST(HZM),2,2)
 S ODEFTL=$$ODEFTL^W4HZMST(HZM)
 ;
 S SHULA=$J($$SAS(HZM)+$$GET^W4TMPPAY(4,"ASR"),2,2)
 S SHUL=$J($$SHUL^W4HZMST(HZM),2,2)
 ;
 S HNH=$J($$HNH^W4HZMST(HZM),2,2)
 S LKHN=$$LKHN^W4HZMST(HZM)
 S MKBL=$$MKBL^W4HZMST(HZM)
 ;
 I $D(@$$^W4TMPPAY(4))>9 D  ;-- TASHLUM HAKAFA ESHE NE SDELAN, TIP = TIPAS
 .N N S HRA=""
 .S N="" F  S N=$O(@$$^W4TMPPAY@(4,N)) Q:N=""  D
 ..S @N=$G(^(N))
 ..I $L($G(HRA1)) S HRA=HRA1
 .I $G(TLUSH),$G(TLAL),+TLUSH'=+TLAL S TLUSH=TLAL
 .K @$$^W4TMPPAY@(4)
 ;
 N P3T S P3T="",NOV=""
 I $G(PRN)=0 S P1TNOPR=""
 I $G(PRN)=1 S BLIPR="" ;-- HESHBONIT BLI PERUT
 ;
 I $$POS^W4MTAW!$$^W4MTAW!$$PRINTDET^W4PRM!$$^W4DLPK(NMB) K BLIPR
 ;
 D ^W4T1
 ;
 I $$MYCHECK^W4PRM,'$$^W4CLOSE(HZM) D
 .D SYNCORD^WMCHFUNC(HZM,JB)
 ;
 Q
 ;
SMZ(HZM) Q $$SMZ^W4HZMST(HZM)
 ;
SCH(HZM) Q $$SCH^W4HZMST(HZM)
 ;
SCA(HZM) Q $$SCA^W4HZMST(HZM)
 ;
SAS(HZM) Q $$SAS^W4HZMST(HZM)
 ;
STL(HZM) Q $$STL^W4HZMST(HZM)
 ;
GLORD D GLORD^W4HZMST
 Q
 ;
SSHULMP(HZM) ;
 N SSHULMP S SSHULMP=0
 I $D(@$$^W4ORD@(HZM,"MP","PAY")) D
 .N N S N="" F  S N=$O(@$$^W4HZMP(HZM)@(N)) Q:N=""  D
 ..Q:$G(@$$^W4HZMP(HZM,N,"CRED"))
 ..S SSHULMP=SSHULMP+$G(@$$^W4HZMP(HZM,N,"SHUL"))
 Q SSHULMP
 ;
 
 
 
 
 
 

W4T1
W4T1 ; [ 17.09.26 14:31 ] [ 05.08.26 12:11 ] [ 12.03.26 02:43 ] 
 N GLORD D GLORD^W4HZMST
 D ^W4IN S DAT=$$^%L1DC(P1DZ,2)
 ;
 I $G(ODEFTL) D
 .S TLN=$O(@$$^W4GL("P1TL")@(9999999),-1)+1
 .S @$$^W4GL("P1TL")@(TLN)=HZM
 .D ^%S2GLSV($$^W4GL("P1TL")_"("_TLN_")",$$^W4FGIB)
 ;
 S NOV=""
 ;
 S SHUL=MZM+CHK+CA+TL-$G(ODEFTL) ; -- SSHULMP+ SSHULPRP - FUTURE
 ;
 I '$G(NCAB) S NCAB=0
 ;
 ;;I '$G(NCAB),'$$^W4CLOSE(HZM) D NCAB ; -- 26/04/17 -> COMMENT
 ;
 S:'SHUL&'$D(@GLORD@("CB","V")) NCAB=""
 ;
 S @GLORD@("CB")=NCAB_"\"_MZM_"\"_CHK_"\"_CA_"\"_$G(SHULA)_"\"_P1DZ_"\"_$H_"\"_ODEF_"\"_TL_"\"_$G(TIP)_"\"_$G(ODEFTL)_"\"_$G(TLN)_"\"_$G(HNHTL)_"\"_$$^W4MYDVN
 ;
 D PUT^W4SCREF(GLORD,HZSCR,1,"SHUL")
 ;
 I $$^W4MSL(NMB) D
 .I '$$^W4CLOSE(HZM),'$$MSHHBNOW^W4PRM,$$TSHL^W4HZMST(HZM)>0 S P1TNOPR=""
 .N CODTS S CODTS=$$MAX(MZM,CHK,CA,SHULA,TL) Q:'CODTS
 .S $P(@GLORD,"\",21)=CODTS
 .
 .I $$TEAV^W4PRM,$$HZM^W4MSL(HZM) D TVORD(HZM)
 ;
 S SASR=$$SASR("")
 ;
 I SHUL,$L(NMB)>3!($G(LKHN)>3) D
 .N (%REM,JB,TSHL,SHUL,DAT,NMB,HZM,NCAB,SUGT,LKHN)
 .Q:'$$^W4ISORD(HZM)
 .S SUM=SHUL I SUM D
 ..S CODDOC="HZ",DATE=DAT,COD="F",CUSN=NMB,NUMBER=HZM
 ..I $L(NMB)<4,$L($G(LKHN))>3 S CUSN=LKHN
 ..Q:$L(CUSN)<4
 ..D ^W4KLINIT D ^W4KLUP
 ;
 I SHUL,$$FULL,'SHULA,$$^W4ISORD(HZM) D  D PRINT G SG
 .I $D(@$$^W4ORD@(HZM,"ETHB5")) D PCHB5(1)
 ;
 I SHUL,$$FULL D  I $J(SHULA,1,1)=$J(SASR,1,1) D PRINT G SG
 .I $$^W4ISORD(HZM),$D(@$$^W4ORD@(HZM,"ETHB5")) D PCHB5(1)
 ;
 D PUT^%W3DEB("W4T1","SHULA=SHULA&SASR=SASR&LKHN=LKHN")
 ;
 N TS S TS=$$TSHL^W4HZMST(HZM)
 I $$MZM^W4HZMST(HZM)'<TS S $P(@$$^W4ORD@(HZM),"\",21)=1
 I $$CHK^W4HZMST(HZM)'<TS S $P(@$$^W4ORD@(HZM),"\",21)=2
 I $$CA^W4HZMST(HZM)'<TS S $P(@$$^W4ORD@(HZM),"\",21)=3
 I $$ASR^W4HZMST(HZM)'<TS S $P(@$$^W4ORD@(HZM),"\",21)=4
 ;
 I SHULA!SASR,$$^W4ISCDLK(LKHN),'$D(W4ASR) D
 .Q:'$$^W4ISORD(HZM)
 .;
 .I $J(SHULA,1,1)'=$J(SASR,1,1) D
 ..S ASR=SHULA-SASR,SHULA=SASR
 ..D PUT^W4SCREF(GLORD,HZSCR,1,"SHULA")
 ..N CUSN S CUSN=LKHN
 ..S HZMLK=$G(HZMLK)
 ..S LKAH=$$AH^W4L(CUSN)
 ..I $$HZM^W4MSL(HZM),$$HNHAH^W4HZMST(HZM)>1,$$NOKFLMVC^W4PRM S LKAH=0
 ..N SHNHP S SHNHP=$$SSUMHNHP^W4HZMST(HZM)
 ..N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ..I (TSHL+SHNHP)*LKAH*.01<(SHNHP*.5),$$NOKFLMVC^W4PRM S LKAH=0
 ..N W4T1 S W4T1=""
 ..D ^W4ASR
 ..S SHULA=$$SHULA^W4HZMST(HZM) Q:'$$FULL
 ..I $$TAKEAWAY^W4HZMST(HZM),$$TODAY(HZM) D SGPSLTAW(HZM,1)
 ..I '$$TAKEAWAY^W4HZMST(HZM),$G(@$$^W4PRM@("PSLAUTO")) D SGPSL(HZM,1)
 ;
 I '$$FULL,'$$^W4ISPART(HZM) D PETEK D ^W4GIBHZ(HZM) G END
 ;
SG D MVDT(HZM)
 D PCAFT(HZM)
 ;
 D
 .I $G(@$$^W4GL("W4PIZUL")@(HZM)) Q
 .I $$D^W4PIZUL(HZM)=1 S RES=$$DO^W4PIZUL(HZM) Q
 .I '$$D^W4PIZUL(HZM),$$IFPIZUL^W4HMH2HZ(HZM) S RES=$$DO^W4PIZUL(HZM) Q
 ;
 I '$$ITRA^W4HZMST(HZM),$$TEAV^W4PRM,$$HZM^W4MSL(HZM),'$$TAKEAWAY^W4HZMST(HZM),'$$I^W4DEL(HZM) D SETTV^W3SETHD(HZM)
 ;
 I '$$ITRA^W4HZMST(HZM),$G(@$$^W4GL("W4PIZUL")@(HZM)),'$$^W4CLOSE(HZM) D  ; -- 1
 .D SETCLOSE^W4HZMST(HZM)
 ;
END ;
 Q
 ;
NCAB ;
 S NCAB=$P($G(@$$^W4ORD),"\",2)+1
 ;
 I $$^W4HSPART(HZM) S NCAB=$$NCAB^W4PARTGT(HZM) Q
 ;
 I 'TSHL S NCAB=""
 I $D(@GLORD@("ETHBL")) S NCAB=$G(@$$^W4GL("P1CB"),1000000)+1
 I $D(@GLORD@("ETHB")) S NCAB=$G(^("ETHB"))
 Q
 ;
MAX(N1,N2,N3,N4,N5) ;
 N M,I,IM
 F I="N1","N2","N3","N4","N5" S M(+@I)=$E(I,2)
 S IM=$O(M(""),-1) I 'IM Q 0
 Q M(IM)
 ;
FULL(DUMP) ;
 I SHUL+SHULA-$G(TIP)+.05'<TSHL&(TSHL>0)!(SHUL+SHULA-$G(TIP)-.05'>TSHL&(TSHL<0)) Q 1
 I 'TSHL Q 1
 Q 0
 ;
 ;
PRINT ;
 Q:'$$^W4ISORD(HZM)
 D GLORD^W4HZMST
 Q:'$G(SHUL)
PRINT1 N LKHN
 S MAKOR=0 I '$$^W4CLOSE(HZM) S MAKOR=1
 ;
 I '$$^W4CLOSE(HZM),$$FULL D  Q
 .I $$TAKEAWAY^W4HZMST(HZM),$$TODAY(HZM) D  Q  ; --  26/12/23 -> Q, SETCLOSE
 ..D SGPSLTAW(HZM)
 ..D SETCLOSE^W4HZMST(HZM)
 .
 .I '$$TAKEAWAY^W4HZMST(HZM),$G(@$$^W4PRM@("PSLAUTO")) D SGPSL(HZM)
 .;
 .I $$^W4CLOSE(HZM) Q
 .
 .Q:$$MSL^W4MSL(HZM)&'$$DLV^W4CLOSE(HZM)&'$$MSHHBNOW^W4PRM&($$TSHL^W4HZMST(HZM)'<0)
 .D
 ..I $$MSL^W4MSL(HZM),$$TMMSL^W4PRM,$$NOTM^W4PRM,'$D(@$$^W4ORD@(HZM,"PCMSL")) Q
 ..D ^W4PCHB(HZM,MAKOR)
 ..D SETCLOSE^W4HZMST(HZM)
 ;
 ;;S ^AA("W4T1","PRINT","W4PCHB",HZM,$H)=1 ; ***
 D ^W4PCHB(HZM,MAKOR)
 Q
 ;
 ;
SASR(T) ;
 N SUM,N S N="",SUM=0
 F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  I N D
 .S SUM=SUM+$P($G(^(N)),"*",4)
 Q SUM
 ;
PETEK ; ---- PECHAT --> ^W4HB2LK
 ;S ^PETEK=1
 Q:$D(NOPETEK)
 Q:$$POS^W4MTAW
 Q:$$MSL^W4MSL(HZM)
 Q:'$$^W4ISORD(HZM)
 ;
 S:'$D(SHUL) SHUL=0 S:'$D(SHULA) SHULA=0
 S:'$D(SHULO) SHULO=0 S:'$D(SHULAO) SHULAO=0
 S:'$D(MZMOO) MZMOO=0
 ;
 ;S ^PETEK=2
 ;
 I '(SHUL-SHULO) G PTKASR
 ;
 S NCAB=""
 ;
 D PCHB5(0)
 I '$D(P1TNOPR),$$^W4ISORD(HZM) D
 .N VT,IND
 .S VT="" F  S VT=$O(@$$^W4ORD@(HZM,"CB",VT)) Q:VT=""  D
 ..S IND="" F  S IND=$O(@$$^W4ORD@(HZM,"CB",VT,IND)) Q:IND=""  D
 ...I '$D(@$$^W4ORD@(HZM,"TOCUSNAME",VT,IND)) D
 ....S @$$^W4ORD@(HZM,"TOCUSNAME",VT,IND)=IND_"-"_VT_"\"_$H
 ....S @$$^W4ORD@(HZM,"TOCUSNAME",VT,IND,"MKR")=$H
 ;
PTKASR ;
 Q:'$$^W4ISORD(HZM)
 I (SHULA-$G(SHULAO)) D PCASR(HZM)
 S SHULO=SHUL,SHULAO=SHULA
 Q
 ;
PCASR(HZM) ;
 N (JB,%REM,HZM,PRINT,%MDP,P1TNOPR)
 S P1HZHB2="",SHM="HB2",ITS=4,IET="ETHB2"
 S GLBV=$$^W4ORD_"(HZM)",SM=1
 S MAKOR=1
 ;
 N PTKCNT F PTKCNT=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","ASR",PTKCNT))  D
 .N STA S STA=$G(^(PTKCNT))
 .N %MDP D ^W4MDPPC
 .D ^W4GTVCH(STA,"ASR") Q:FLP
 .D ASR^W4HZTH(PTKCNT) ;--  PRINT TLUSH
 .Q:$D(P1TNOPR)
 .S $P(@$$^W4ORD@(HZM,"CB","ASR",PTKCNT),"*",11)=1 ;----- FLP=1
 ;
 Q
 ;
 ;
HB5 Q:'$$^W4ISORD(HZM)
 D MSP5^W4MKR
 Q
 ;
SUM5(HZM) ;
 N N,SUM S N="",SUM=0
 F  S N=$O(@$$^W4ORD@(HZM,"ETHB5",N)) Q:N=""  D
 .S SUM=SUM+^(N)
 Q SUM
 ;
 ;
PCHB5(PCHB5) ;
 N MVT,J1,J2,J3,VT
 S (J1,J2,J3)=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"ETHB5",N)) Q:N=""  D
 .S VT=$P($G(^(N)),",",2)
 .S MVT(VT,$O(MVT(VT,99),-1)+1)=+$G(^(N))
 ;
 N I S I=0 K P1HZHB5
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","MZ",N)) Q:N=""  D
 .N SUM S SUM=+$G(^(N))
 .I $O(^(N))="",$$ODEF^W4HZMST(HZM) S SUM=SUM-$$ODEF^W4HZMST(HZM)
 .I '$D(MVT(1,N)) S I=I+1,P1HZHB5(I)=SUM_",1"
 D HB5
 ;
 S I=0 K P1HZHB5
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","CH",N)) Q:N=""  D
 .I '$D(MVT(2,N)) S I=I+1,P1HZHB5(I)=+$G(^(N))_",2"
 D HB5
 ;
 K P1HZHB5
 ;;S ^PETEK=3
 I $D(@$$^W4ORD@(HZM,"CB","V")) D
 .N (JB,%REM,HZM,FLAGSHVA,P1TNOPR) D ^W4IN
 .S MAKOR=1,NCAB="",DCM="`ay"
 .N PTKCNT S PTKCNT=""
 .
 .F  S PTKCNT=$O(@$$^W4ORD@(HZM,"CB","V",PTKCNT)) Q:PTKCNT=""  D
 ..N A S A=$G(^(PTKCNT)) Q:A=""
 ..D ^W4GTVCH(A,"V") Q:FLP
 ..;;S ^PETEK=4
 ..S P1HZHB5(1)=CAV_",3" D HB5
 ..Q:$D(P1TNOPR)  Q:$G(PCHB5)
 ..;;S ^PETEK=5
 ..S SM=0 D CA^W4HZTH(PTKCNT)
 ..S $P(@$$^W4ORD@(HZM,"CB","V",PTKCNT),"*",11)=1
 ..;;D ^W4MDPPC,^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
 ;
PRINTASR(HZM) ;
 N N,OK S OK=1
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","ASR",N)) Q:N=""  D  Q:'OK
 .I '$$GET^W4GTVCH(HZM,N,"ASR","FLP") S OK=0
 Q OK
 ;
 ;
PCAFT(HZM) ;
 I '$$HZAFTPAY^W4PRM Q
 ;
 N PRPC S PRPC=1
 ;;N L S L=$O(@$$^W4ORD@(HZM,99999),-1); -- 17.09.26 --> COMMENT
 ;;I L,$G(@$$^W4ORD@(HZM,L))["\@@" S PRPC=0
 ;
 I '$$HZM^W4MSL(HZM),'PRPC Q
 ;
 N SHUL S SHUL=$$SSHUL^W4HZMST(HZM)
 N SHULA S SHULA=$$SHULA^W4HZMST(HZM)
 N TIP S TIP=$$TIP^W4HZMST(HZM)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 I '$$FULL,SHUL,$$ERR(HZM) Q
 ;
 I $$DEL^W4DEL(HZM) Q
 ;
 D CHKTIME(HZM) ;
 ;
 I $$FULL D
 .I $$^W4USHZPC(HZM),'$G(@$$^W4ORD@(HZM,"PCAFTPAY")) D
 ..;;I $G(@$$^W4PRM@("NOPCDLV")),$$HZM^W4MSL(HZM) Q
 ..I '$$DLYPRN^W4PRM!$$HZM^W4MSD(HZM) D  Q
 ...I $$GETP^%W1PRM("BGJ")=HZM D ^W4HZM(HZM,JB) D KILL^%W1PRM("BGJ") Q
 ...J TV^W4HZM(HZM,$P(JB,".")_".1")
 ..D ^W4HZM(HZM,JB) Q
 .;
 .I $G(@$$^W4GL("W4PIZUL")@(HZM)) Q
 .I $$D^W4PIZUL(HZM)=1 S RES=$$DO^W4PIZUL(HZM) Q
 .I '$$D^W4PIZUL(HZM),$$IFPIZUL^W4HMH2HZ(HZM) S RES=$$DO^W4PIZUL(HZM) Q
 Q
 ;
ERR(HZ) ;
 N A,ER S ER=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  D  Q:ER
 .S A=$G(^(N,"STROU"))
 .I $E(A,1,3)'="000" S ER=1
 I ER Q ER
 I $G(@$$^W4ORD@(HZ,"CIB","ERR")) Q 1
 I $D(@$$^W4ORD@(HZ,"TBERR")) Q 1
 Q 0 
 ;
 ;
CHKTIME(HZM) ;
 N TVAH,N
 N DAT S DAT=$$TRH^W4HZMST(HZM)
 N SHAA S SHAA=$$SHAA^W4HZMST(HZM)
 N CITY S CITY=$$IR^W4HZMST(HZM)
 N TVAH S TVAH=$G(@$$^W4PRM@("TIMEHZ"))
 ;
 I $$KTV^W4HZMST(HZM)="TAKEAWAY"!(CITY="TAKEAWAY")!(CITY="TAW")!(CITY="") D
 .S TVAH=$$THZTAW^W3TIME
 ;
 S TVAH=TVAH*60
 ;
 I DAT=$ZD($H,"DD.MM.YY") D
 .N DIF S DIF=SHAA*3600+($P(SHAA,":",2)*60)-$P($H,",",2)
 .I DIF<0 S DIF=DIF+(24*3600)
 .
 .I DIF<TVAH D
 ..N SHAA0 S SHAA0=SHAA
 ..S SHAA=$$TM^W3TIME($H,CITY,1)
 ..I SHAA<SHAA0,SHAA<6 S DAT=$ZD($H+1,"DD.MM.YY")
 ..D PUT^W4HZMST(HZM,"TRH",DAT)
 ..D PUT^W4HZMST(HZM,"SHAA",SHAA)
 Q 
 ;
 ;
SGPSLTAW(HZM,NOPCHB) ;
 I $$NOSGTAW^W4PRM=1,'$$MZM^W4HZMST(HZM) Q
 I $$NOSGTAW^W4PRM=2 Q
 N SHAA,SEC S SHAA=$$SHAA^W4HZMST(HZM)
 ;
 S SEC=SHAA*3600+($P(SHAA,":",2)*60)
 I ($P($H,",",2)>SEC&$$^%L1DC($$TRH^W4HZMST(HZM),3)'>+$H)!$$MZM^W4HZMST(HZM) D
 .N PSL S PSL=-1 I $G(@$$^W4PRM@("PSLTAW")) S PSL=^("PSLTAW")
 .D SGPSL^W4DLVORD(HZM,PSL)
 .I $$^W4CLOSE(HZM),'$G(NOPCHB),$G(SHUL) D ^W4PCHB(HZM,MAKOR)
 .I $$^W4NOPCBN(HZM),$$MDBYAD^W4PRM!$$PAPJ^W4PRM,'$G(@$$^W4ORD@(HZM,"NOPCBNMDB")) D ^W4MDBPC(HZM) S @$$^W4ORD@(HZM,"NOPCBNMDB")=$H
 .
 .I $$MZM^W4HZMST(HZM),'$$MZSM^W4PRM D
 ..I $$MZMK^W4KIOSKO(HZM) Q
 ..D ^W4MDPPC
 ..I $L(PRINT) D ^W4SETPC(PRINT,$G(%MDP("P"))) D ^W4PTHDLY
 Q  ;
 ;
 ;
SGPSL(HZM,NOPCHB) ; 
 N SHAA,SEC S SHAA=$$SHAA^W4HZMST(HZM)
 S SEC=SHAA*3600+($P(SHAA,":",2)*60)
 D  ;I ($P($H,",",2)>SEC&$$^%L1DC($$TRH^W4HZMST(HZM),3)'>+$H)!$$MZM^W4HZMST(HZM) D
 .N PSL S PSL=$G(@$$^W4PRM@("PSLAUTO"))
 .D SGPSL^W4DLVORD(HZM,PSL)
 .I $$^W4CLOSE(HZM),'$G(NOPCHB),$G(SHUL) D ^W4PCHB(HZM,MAKOR)
 Q
 ;
MVDT(HZM) ;
 N P1DZ S P1DZ=$$^W4DZ
 N DTO S DTO=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 N SHAA S SHAA=$$SHAA^W4HZMST(HZM)
 I SHAA<$$SHAAZ^W4PRM S DTO=DTO-1
 ;;S ^AA("W4T1-MVDT","DTO")=DTO
 I $$HZM^W4MSL(HZM),'$$ITRA^W4HZMST(HZM),P1DZ<DTO D
 .D MVDT^W4MKR(HZM)
 Q
 ;
TVORD(HZM) ;
 I $$ITRA^W4HZMST(HZM)!'$$HZM^W4MSL(HZM)!$$TAKEAWAY^W4HZMST(HZM)!$$I^W4DEL(HZM) Q
 I $$MZM^W4HZMST(HZM)'<$$SHUL^W4HZMST(HZM),$G(@$$^W4GL("W4TVH2O")@(HZM,"TIME")) Q
 ;;S ^AA("W4T1-TEAV",$P($H,",",2))=HZM
 N DTTV S DTTV=$$^%L1DC($$TRH^W4HZMST(HZM),3) Q:DTTV<$$^W4DZ
 I '$$WEBORD^W4HZMST(HZM) D DELTIME^W4TVDEL(HZM)
 D SETTV^W3SETHD(HZM)
 Q
 ;
TODAY(HZM) ;
 N DTT S DTT=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 N SHAAT S SHAAT=$$SHAA^W4HZMST(HZM)
 I SHAAT?2N1":".E,SHAAT<$$SHAAZ^W4PRM S DTT=DTT-1
 I DTT=$$^W4DZ Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4T10
W4T1 ; [ 31.10.12 10:08 ] [ 18.10.12 21:17 ] [ 17.10.12 11:19 ]
 N GLORD D GLORD^W4HZMST
 D ^W4IN S DAT=$$^%L1DC(P1DZ,2)
 ;
 I $G(ODEFTL) D
 .S TLN=$O(@$$^W4GL("P1TL")@(9999999),-1)+1
 .S @$$^W4GL("P1TL")@(TLN)=HZM
 .D ^%S2GLSV($$^W4GL("P1TL")_"("_TLN_")",$$^W4FGIB)
 ;
 S NOV=""
 ;
 S SHUL=MZM+CHK+CA+TL
 ;
 I '$G(NCAB) S NCAB=0
 ;
 I '$G(NCAB),'$$^W4CLOSE(HZM) D NCAB
 ;
 S:'SHUL&'$D(@GLORD@("CB","V")) NCAB=""
 S @GLORD@("CB")=NCAB_"\"_MZM_"\"_CHK_"\"_CA_"\"_$G(SHULA)_"\"_P1DZ_"\"_$H_"\"_ODEF_"\"_TL_"\"_$G(TIP)_"\"_$G(ODEFTL)_"\"_$G(TLN)_"\"_$G(HNHTL)_"\"_$$^W4MYDVN
 ;
 D PUT^W4SCREF(GLORD,HZSCR,1,"SHUL")
 ;
 I $$^W4MSL(NMB) D
 .I '$$^W4CLOSE(HZM) S P1TNOPR=""
 .N CODTS S CODTS=$$MAX(MZM,CHK,CA,SHULA,TL) Q:'CODTS
 .S $P(@GLORD,"\",21)=CODTS
 ;
 S SASR=$$SASR("")
 I SHUL,$L(NMB)>3!($G(LKHN)>3) D
 .N (%REM,JB,TSHL,SHUL,DAT,NMB,HZM,NCAB,SUGT,LKHN)
 .Q:HZM<1
 .S SUM=SHUL I SUM D
 ..S CODDOC="HZ",DATE=DAT,COD="F",CUSN=NMB,NUMBER=HZM
 ..I $L(NMB)<4,$L($G(LKHN))>3 S CUSN=LKHN
 ..D ^W4KLINIT D ^W4KLUP
 ;
 I SHUL,'SHULA,$$FULL D:$D(@$$^W4ORD@(HZM,"ETHB5")) PCHB5(1) D PRINT G SG
 ;
 I SHUL,$$FULL D:$D(@$$^W4ORD@(HZM,"ETHB5")) PCHB5(1) D PRINT
 ;
 D PUT^%W3DEB("W4T1","SHULA=SHULA&SASR=SASR&LKHN=LKHN")
 ;
 I SHULA!SASR,$G(LKHN) D
 .Q:HZM<1
 .I $J(SHULA,2,2)'=$J(SASR,2,2) D
 ..S ASR=SHULA-SASR,SHULA=SASR
 ..D PUT^W4SCREF(GLORD,HZSCR,1,"SHULA")
 ..N CUSN S CUSN=LKHN
 ..S HZMLK=$G(HZMLK)
 ..I $G(ASR) D ^W4ASR ;; G END
 ..S SHULA=$$SHULA^W4HZMST(HZM)
 ;
 I '$$FULL D PETEK D ^W4GIBHZ(HZM) G END
 ;
SG I $$FULL D  I '$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 .I '$$NCAB^W4HZMST(HZM),$$SHUL^W4HZMST(HZM),HZM>0 D
 ..D NCAB D PUT^W4HZMST(HZM,"NCAB",NCAB)
 ..N POS S POS=$$^W4MYDVN
 ..D PUT^W4HZMST(HZM,"POS",POS)
 ;
END ;
 Q
 ;
NCAB ;
 S NCAB=$P($G(@$$^W4ORD),"\",2)+1
 I 'TSHL S NCAB=""
 I $D(@GLORD@("ETHBL")) S NCAB=$G(@$$^W4GL("P1CB"),1000000)+1
 I $D(@GLORD@("ETHB")) S NCAB=$G(^("ETHB"))
 Q
 ;
MAX(N1,N2,N3,N4,N5) ;
 N M,I,IM
 F I="N1","N2","N3","N4","N5" S M(+@I)=$E(I,2)
 S IM=$O(M(""),-1) I 'IM Q 0
 Q M(IM)
 ;
FULL(DUMP) ;
 I SHUL+SHULA-$G(TIP)+.05'<TSHL&(TSHL>0)!(SHUL+SHULA-$G(TIP)-.05'>TSHL&(TSHL<0)) Q 1
 I 'TSHL Q 1
 Q 0
 ;
PRINT ;
 Q:$G(HZM)<1
 D GLORD^W4HZMST
 Q:'$G(SHUL)
PRINT1 N LKHN
 S MAKOR=0 I '$$^W4CLOSE(HZM) S MAKOR=1
 D ^W4PCHB(HZM,MAKOR)
 ;
 I '$$^W4CLOSE(HZM),$$FULL D
 .S @GLORD@("S")=2,@THZ@("S")=2
 .D ^W4HZSHAA
 Q
 ;
 ;
SASR(T) ;
 N SUM,N S N="",SUM=0
 F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  D
 .S SUM=SUM+$P($G(^(N)),"*",4)
 Q SUM
 ;
PETEK ;
 Q:$D(NOPETEK)
 Q:$$POS^W4MTAW
 Q:$G(HZM)<1
 ;
 S:'$D(SHUL) SHUL=0 S:'$D(SHULA) SHULA=0
 S:'$D(SHULO) SHULO=0 S:'$D(SHULAO) SHULAO=0
 S:'$D(MZMOO) MZMOO=0
 ;
 I '(SHUL-SHULO) G PTKASR
 ;
 S NCAB=""
 ;
 D PCHB5(0)
 ;
PTKASR ;
 Q:$G(HZM)<1
 ;
 I (SHULA-$G(SHULAO)) D
 .N (JB,%REM,HZM,PRINT,%MDP)
 .S P1HZHB2="",SHM="HB2",ITS=4,IET="ETHB2"
 .S GLBV=$$^W4ORD_"(HZM)",SM=1
 .S MAKOR=1
 .
 .N PTKCNT F PTKCNT=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","ASR",PTKCNT))  D
 ..D ^W4GTVCH(^(PTKCNT),"ASR") Q:FLP
 ..D ASR^W4HZTH(PTKCNT) ;--  PRINT TLUSH
 ..Q:$D(P1TNOPR)
 ..S $P(@$$^W4ORD@(HZM,"CB","ASR",PTKCNT),"*",11)=1 ;----- FLP=1
 ..D ^W4MDPPC
 ..I $D(%MDP("CUT")) D ^W4CUT(PRINT,%MDP("CUT"))
 ;
 S SHULO=SHUL,SHULAO=SHULA
 Q
 ;
 ;
HB5 Q:$G(HZM)<1
 D MSP5^W4MKR
 I '$D(P1TNOPR) D ^W4HB5(HZM,1) ; -- PRINT TLUSH
 Q
 ;
SUM5(HZM) ;
 N N,SUM S N="",SUM=0
 F  S N=$O(@$$^W4ORD@(HZM,"ETHB5",N)) Q:N=""  D
 .S SUM=SUM+^(N)
 Q SUM
 ;
 ;
PCHB5(PCHB5) ;
 N MVT,J1,J2,J3,VT
 S (J1,J2,J3)=0
 N N S N="" F  S N=$O(@$$^W4ORD@(HZM,"ETHB5",N)) Q:N=""  D
 .S VT=$P($G(^(N)),",",2)
 .S MVT(VT,$O(MVT(VT,99),-1)+1)=+$G(^(N))
 ;
 N I S I=0 K P1HZHB5
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","MZ",N)) Q:N=""  D
 .N SUM S SUM=+$G(^(N))
 .I $O(^(N))="",$$ODEF^W4HZMST(HZM) S SUM=SUM-$$ODEF^W4HZMST(HZM)
 .I '$D(MVT(1,N)) S I=I+1,P1HZHB5(I)=SUM_",1"
 D HB5
 ;
 S I=0 K P1HZHB5
 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB","CH",N)) Q:N=""  D
 .I '$D(MVT(2,N)) S I=I+1,P1HZHB5(I)=+$G(^(N))_",2"
 D HB5
 ;
 K P1HZHB5
 I $D(@$$^W4ORD@(HZM,"CB","V")) D
 .N (JB,%REM,HZM,FLAGSHVA,P1TNOPR) D ^W4IN
 .S MAKOR=1,NCAB="",DCM="`ay"
 .N PTKCNT S PTKCNT=""
 .
 .F  S PTKCNT=$O(@$$^W4ORD@(HZM,"CB","V",PTKCNT)) Q:PTKCNT=""  D
 ..D ^W4GTVCH(^(PTKCNT),"V") Q:FLP
 ..S P1HZHB5(1)=CAV_",3" D HB5
 ..Q:$D(P1TNOPR)  Q:$G(PCHB5)
 ..S SM=0 D CA^W4HZTH
 ..S $P(@$$^W4ORD@(HZM,"CB","V",PTKCNT),"*",11)=1
 ..D ^W4MDPPC,^W4CUT(PRINT,%MDP("CUT"))
 Q

W4T100
W4T1 ; [ 31.10.12 10:19 ] [ 30.08.12 17:27 ] [ 29.08.12 10:07 ]
 N GLORD D GLORD^W4HZMST
 D ^W4IN S DAT=$$^%L1DC(P1DZ,2)
 ;
 I $G(ODEFTL) D
 .S TLN=$O(@$$^W4GL("P1TL")@(9999999),-1)+1
 .S @$$^W4GL("P1TL")@(TLN)=HZM
 .D ^%S2GLSV($$^W4GL("P1TL")_"("_TLN_")",$$^W4FGIB)
 ;
 S NOV=""
 ;
 S SHUL=MZM+CHK+CA+TL
 ;
 I '$G(NCAB) S NCAB=0
 ;
 I '$G(NCAB),'$$^W4CLOSE(HZM) D NCAB
 ;
 S:'SHUL&'$D(@GLORD@("CB","V")) NCAB=""
 S @GLORD@("CB")=NCAB_"\"_MZM_"\"_CHK_"\"_CA_"\"_$G(SHULA)_"\"_P1DZ_"\"_$H_"\"_ODEF_"\"_TL_"\"_$G(TIP)_"\"_$G(ODEFTL)_"\"_$G(TLN)_"\"_$G(HNHTL)_"\"_$$^W4MYDVN
 ;
 D PUT^W4SCREF(GLORD,HZSCR,1,"SHUL")
 ;
 I $$^W4MSL(NMB) D
 .I '$$^W4CLOSE(HZM) S P1TNOPR=""
 .N CODTS S CODTS=$$MAX(MZM,CHK,CA,SHULA,TL) Q:'CODTS
 .S $P(@GLORD,"\",21)=CODTS
 ;
 S SASR=$$SASR("")
 I SHUL,$L(NMB)>3!($G(LKHN)>3) D
 .N (%REM,JB,TSHL,SHUL,DAT,NMB,HZM,NCAB,SUGT,LKHN)
 .Q:HZM<1
 .S SUM=SHUL I SUM D
 ..S CODDOC="HZ",DATE=DAT,COD="F",CUSN=NMB,NUMBER=HZM
 ..I $L(NMB)<4,$L($G(LKHN))>3 S CUSN=LKHN
 ..D ^W4KLINIT D ^W4KLUP
 ;
 I SHUL,'SHULA,$$FULL D PRINT G SG
 ;
 I SHUL,$$FULL D PRINT
 ;
 D PUT^%W3DEB("W4T1","SHULA=SHULA&SASR=SASR&LKHN=LKHN")
 ;
 I SHULA!SASR,$G(LKHN) D
 .Q:HZM<1
 .I $J(SHULA,2,2)'=$J(SASR,2,2) D
 ..S ASR=SHULA-SASR,SHULA=SASR
 ..D PUT^W4SCREF(GLORD,HZSCR,1,"SHULA")
 ..N CUSN S CUSN=LKHN
 ..S HZMLK=$G(HZMLK)
 ..I $G(ASR) D ^W4ASR ;; G END
 ..S SHULA=$$SHULA^W4HZMST(HZM)
 ;
 I '$$FULL D PETEK D ^W4GIBHZ(HZM) G END
 ;
SG I $$FULL D  I '$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 .I '$$NCAB^W4HZMST(HZM),$$SHUL^W4HZMST(HZM),HZM>0 D
 ..D NCAB D PUT^W4HZMST(HZM,"NCAB",NCAB)
 ..N POS S POS=$$^W4MYDVN
 ..D PUT^W4HZMST(HZM,"POS",POS)
 ;
END ;
 Q
 ;
NCAB ;
 S NCAB=$P($G(@$$^W4ORD),"\",2)+1
 I 'TSHL S NCAB=""
 I $D(@GLORD@("ETHBL")) S NCAB=$G(@$$^W4GL("P1CB"),1000000)+1
 I $D(@GLORD@("ETHB")) S NCAB=$G(^("ETHB"))
 Q
 ;
MAX(N1,N2,N3,N4,N5) ;
 N M,I,IM
 F I="N1","N2","N3","N4","N5" S M(+@I)=$E(I,2)
 S IM=$O(M(""),-1) I 'IM Q 0
 Q M(IM)
 ;
FULL(DUMP) ;
 I SHUL+SHULA-$G(TIP)+.05'<TSHL&(TSHL>0)!(SHUL+SHULA-$G(TIP)-.05'>TSHL&(TSHL<0)) Q 1
 I 'TSHL Q 1
 Q 0
 ;
PRINT ;
 Q:$G(HZM)<1
 D GLORD^W4HZMST
 Q:'$G(SHUL)
PRINT1 N LKHN
 S MAKOR=0 I '$$^W4CLOSE(HZM) S MAKOR=1
 D ^W4PCHB(HZM,MAKOR)
 ;
 I '$$^W4CLOSE(HZM),$$FULL D
 .S @GLORD@("S")=2,@THZ@("S")=2
 .D ^W4HZSHAA
 Q
 ;
 ;
SASR(T) ;
 N SUM,N S N="",SUM=0
 F  S N=$O(@GLORD@("CB","ASR",N)) Q:N=""  D
 .S SUM=SUM+$P($G(^(N)),"*",4)
 Q SUM
 ;
PETEK ;
 Q:$D(NOPETEK)
 Q:$$POS^W4MTAW
 Q:$G(HZM)<1
 ;
 S:'$D(SHUL) SHUL=0 S:'$D(SHULA) SHULA=0
 S:'$D(SHULO) SHULO=0 S:'$D(SHULAO) SHULAO=0
 S:'$D(MZMOO) MZMOO=0
 ;
 I '(SHUL-SHULO) G PTKASR
 ;
 S NCAB=""
 ;
 I +MZM'=+MZMOO K P1HZHB5 S P1HZHB5(1)=(MZM-MZMOO)_",1" D HB5 ;;,^W4PETEK(MZM-MZMOO,1)
 ;
 I +CHK'=+CHKOO K P1HZHB5 S P1HZHB5(1)=(CHK-CHKOO)_",2" D HB5 ;;,^W4PETEK(CHK-CHKOO,2)
 ;
 ;
 I $D(@$$^W4ORD@(HZM,"CB","V")) D
 .N (JB,%REM,HZM,FLAGSHVA,P1TNOPR) D ^W4IN
 .S MAKOR=1,NCAB="",DCM="`ay"
 .N PTKCNT S PTKCNT=""
 .
 .F  S PTKCNT=$O(@$$^W4ORD@(HZM,"CB","V",PTKCNT)) Q:PTKCNT=""  D
 ..D ^W4GTVCH(^(PTKCNT),"V") Q:FLP
 ..S P1HZHB5(1)=CAV_",3" D HB5
 ..Q:$D(P1TNOPR)
 ..S SM=0 D CA^W4HZTH
 ..S $P(@$$^W4ORD@(HZM,"CB","V",PTKCNT),"*",11)=1
 ..D ^W4MDPPC,^W4CUT(PRINT,%MDP("CUT"))
 ;
 ;
PTKASR ;
 Q:$G(HZM)<1
 ;
 I (SHULA-$G(SHULAO)) D
 .N (JB,%REM,HZM,PRINT,%MDP)
 .S P1HZHB2="",SHM="HB2",ITS=4,IET="ETHB2"
 .S GLBV=$$^W4ORD_"(HZM)",SM=1
 .S MAKOR=1
 .
 .N PTKCNT F PTKCNT=1:1 Q:'$D(@$$^W4ORD@(HZM,"CB","ASR",PTKCNT))  D
 ..D ^W4GTVCH(^(PTKCNT),"ASR") Q:FLP
 ..D ASR^W4HZTH(PTKCNT) ;--  PRINT TLUSH
 ..Q:$D(P1TNOPR)
 ..S $P(@$$^W4ORD@(HZM,"CB","ASR",PTKCNT),"*",11)=1 ;----- FLP=1
 ..D ^W4MDPPC
 ..I $D(%MDP("CUT")) D ^W4CUT(PRINT,%MDP("CUT"))
 ;
 S SHULO=SHUL,SHULAO=SHULA
 Q
 ;
 ;
HB5 Q:$G(HZM)<1
 D MSP5^W4MKR I '$D(P1TNOPR) D ^W4HB5(HZM,1) ; -- PRINT TLUSH
 Q
 ;
SUM5(HZM) ;
 N N,SUM S N="",SUM=0
 F  S N=$O(@$$^W4ORD@(HZM,"ETHB5",N)) Q:N=""  D
 .S SUM=SUM+^(N)
 Q SUM

W4TAB
W4TAB ; [ 23.02.20 17:08 ] [ 14.11.18 14:48 ] [ 07.09.18 17:11 ] 
 N (JB,%ARG,%REM)
 S W4TAB=$$GLTAB
 S MENU=$G(%ARG("MENU"))
 I MENU="" W "A MENU NOT DEFINED !" Q
 I '$G(%ARG("TAB")) S %ARG("TAB")=1
 ;
  W "<table cellpadding=""2"" cellspacing=""2"" "
   W " style=""position:absolute;top:20px;height:40px;left:10%;width:80%;background-color:lightgrey;cursor:pointer"" "
  W ">",!
   W "<tr>"
     S N="" F  S N=$O(@W4TAB@(MENU,N)) Q:N=""  D
     .S A=$G(^(N))
     .S NM=$P(A,";")
     .S CMD=$P(A,";",2)
     .I NM="" Q
     .W "<td class=""tab"" id=""tab"_N_""" dir="""_$$^%W1DIR_""" "
     . I N=$G(%ARG("TAB")) W "style='background-color:white'"
     . I N'=$G(%ARG("TAB")) W "style='background-color:lightgrey'"
     . W " onClick=""OnTabClick('"_CMD_"','"_N_"')"" "
     .W ">"
     .  W $$^%W1DICT(NM)
     .W "</td>",!
     ;
     W "<td style=""background-color:red;color:white;width:10%;font-weight:bold;border:2px solid grey;text-align:center"" "
     W "    onClick=""Back()"" >"
       W $$^%W1DICT("BACK")
     W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 ;
 Q
 ;
 ;
GLTAB(STAM) ;
 N GLTAB S GLTAB=$$^W4GL("W4TAB")
 Q GLTAB
 ;
TABTO(PRM) ;
 N MENU,N
 S MENU=$P(PRM,";") I MENU="" Q "<PUSTO>"
 S N=$P(PRM,";",2) I N="" S N=1
 N A,CMD
 S A=$G(@$$GLTAB@(MENU,N))
 S CMD=$P(A,";",2)
 S:CMD="" CMD="<PUSTO>"
 Q CMD
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TABL
W4TABL(STAM) ; [ 03.09.23 15:58 ] [ 14.06.16 07:16 ] [ 23.07.15 16:47 ] 
 ;;Q $$^W4GL("TABLs")
 ;;Q "^[$$^W3MAIN]W4TABL($$^%W1LNG)"
 Q "^[$$^W3MAIN]TABLs"
 ;
BG(STAM) Q "^[$$^W3MAIN]TABLs("
 ;
TBLNAME(GLOB0) ;
 N A S A=$G(@$$W4TABL@(GLOB0))
 Q $P(A,"\")
 ;
KEYNAME(GLOB0)
 N A S A=$G(@$$W4TABL@(GLOB0))
 Q $P(A,"\",2)
 ;
KEYSIZE(GLOB0) ;
 N A S A=$G(@$$W4TABL@(GLOB0))
 Q $P(A,"\",3)
 ;
KEYTYPE(GLOB0) ;
 N A S A=$G(@$$W4TABL@(GLOB0))
 N KT S KT=$P(A,"\",7)
 I KT="" S KT="E"
 Q KT
 ;
NAME(GLOB0,J) ;
 I '$G(J) N A S A=$G(@$$W4TABL@(GLOB0)) Q $P(A,"\",4)
 Q $P($G(@$$W4TABL@(GLOB0,J)),"\",1)
 ;
NAMESIZE(GLOB0) ;
 N A S A=$G(@$$W4TABL@(GLOB0))
 Q +$P(A,"\",5)
 ;
ENGNAME(GLOB0) ;
 I $G(GLOB0)="" Q 0
 N A S A=$G(@$$W4TABL@(GLOB0))
 Q $P(A,"\",8)["E"
 ;
LEN(GLOB0,J) ;
 N A S A=@$$W4TABL@(GLOB0)
 I '$G(J) Q $P(A,"\",5)
 Q $P($G(@$$W4TABL@(GLOB0,J)),"\",2)
 ;
TYP(GLOB0,J) ;
 I $G(GLOB0)="" Q ""
 N TYP
 I '$G(J) D  Q TYP
 .S TYP=$P($G(@$$W4TABL@(GLOB0)),"\",8)
 .I TYP="" S TYP=$S($$^%W1DIR="LTR":"E",1:"H")
 ;
 Q $P($G(@$$W4TABL@(GLOB0,J)),"\",3)
 ;
 ;
VLDPROG(GLOB0) ;
 N A S A=$G(@$$W4TABL@(GLOB0))
 Q $P(A,"\",9)
 ;
GL(GLOB0,J) ;
 N GL
 S GL=$P($G(@$$W4TABL@(GLOB0,J)),"\",4)
 Q GL
 ;
MUST(GLOB0,J) ;
 N VL
 S VL=$P($G(@$$W4TABL@(GLOB0,J)),"\",5)
 Q VL
 ;
DFLT(GLOB0,J) ;
 N VL
 S VL=$P($G(@$$W4TABL@(GLOB0,J)),"\",6)
 Q VL
 ;
COLDOP(GLOB0) ;
 Q $O(@$$W4TABL@(GLOB0,9999),-1)
 
 

W4TABLET
W4TABLET(STAM) ; [ 12.06.18 21:15 ] [ 07.08.17 08:19 ] [ 15.05.17 12:11 ] 
 I $G(%ARG("TABLET")) Q %ARG("TABLET")
 Q +$$GETP^%W1PRM("TABLET")
 ;
NO(STAM) ; 
 Q 'W4TABLET 
 
 

W4TADEL
W4TVDEL(HZM) ; [ 19.09.24 12:13 ] [ 27.05.24 14:17 ] [ 26.05.24 14:25 ] 
 N TIME S TIME=$G(@$$^W4GL("W4TVH2O")@(HZM,"TIME"))
 I TIME D
 .D ^W4TVSND(JB,HZM,"DEL")
 Q
 ;
DELTIME(HZM)
 K @$$^W4GL("W4TVH2O")@(HZM,"TIME")
 Q
 

W4TAG
W4TAG ; [ 09.03.15 12:56 ] [
 Q
 ;
DIV ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 Q
 ;
TBL(SP,PD,ID,WD,STYLE,DOP) ;
 W "<table dir="""_$$^%W1DIR_""" "
 W " cellspacing="""_SP_""" "
 I $G(PD)?1N.N W " cellpadding="""_PD_""" "
 I $G(WD) W " width="""_WD_"%"" "
 I $G(ID)'="" W " id="""_ID_""" "
 I $G(STYLE)'="" W " style="""_STYLE_""" "
 I $G(DOP)'="" W DOP
 W ">",!
 Q

W4TATSUG
W4TATSUG ; [ 14.06.23 06:43 ] [ 10.06.23 18:48 ] [ 10.08.21 11:50 ] 
 N (JB,%ARG,SRCH)
 I '$D(JB) W " JB number is not defined ! " Q
 Q:$G(%ARG("SHOW"))=0
 ;
 I '$D(%ARG("GR")) W "A group code is not defined ! " Q
 ;
 D GLTSUG
 S GR=%ARG("GR")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 ;
 W "<br />",!
 ;
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"""
  W " cellspacing=""0"" width=""94%"">",!
 W "<tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "<th width=""7%"">&nbsp;</th>"
 W "<th width=""8%"">"_$$^%W1DICT("SUBGRCODE")_"</th>"
 W "<th width=""25%"">"_$$^%W1DICT("SUBGRNAME")_"</th>"
 W "<th width=""12%"">"_$$^%W1DICT("CHANGED")_"</th>"
 W "</tr>",!
 ;
 N N,I
 S N="",I=0 F  S N=$O(@GLTSUG@(N)) Q:N=""  I N D
 .W "<tr>" S I=I+1
 .
 .W "<td align=""center"">"
 . W "<span style=""font-size:"_$$^W3FSZ_";color:green;cursor:pointer"""
 . W " onClick=""InsertRow('"_N_"')""> + </span><br />"
 . W "<span style=""color:red;cursor:pointer;font-size:"_$$^W3FSZ(18)_""""
 . W " onClick=""DeleteRow('"_N_"')"" > - </span>"
 .W "</td>"
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">"
 . W "&nbsp;<input id=""name"_N_""" type=""text"" size=""24"" maxlength=""24"""
 . W " value="""_$$H2U^%L1FRM($$NM(GR,N))_""" onChange=""OnChange('"_N_"')"""
 . W " onKeyPress=""OnKeyPressNm("_N_")"" />&nbsp;"
 .W "</td>"
 .
 .W "<td align=""center"">"
 . W "<input name=""chn"" id=""chn"_N_""" type=""checkbox"""
 . W " disabled=""disabled"" />"
 .W "</td>"
 .
 .W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 ;
 I $$KBVRT^W4PRM D ^W4KBABCL
 Q
 ;
 ;
SAVE(PRM) ;
 S PRM=$$CLEAR^%L1FRM(PRM)
 D PUT^%W3DEB("W4TATSUG-SAVE","PRM=PRM")
 D GLTSUG
 N CD,NM,MH,DESC,GR,SHOW
 S GR=$P(PRM,";",1) I GR="" Q 0
 S CD=$P(PRM,";",2) I CD="" Q 0
 ;
 S NM=$$CLEAR^%L1FRM($$CNWEB^%L1FRM($P(PRM,";",3)))
 ;
 S @GLTSUG@(CD)=$S($$^%W1DIR="RTL":$$INVH^%L1FRM(NM),1:NM)
 Q 1
 ;
 ;
SAVEND(PRM) ;
 Q
 ;
EXIST(GR)
 N GLTSUG D GLTSUG
 I $D(@GLTSUG)>9 Q 1
 Q 0
 ;
D(PRM) ;
 N NIR,CD,COUNTRY,MSD
 D GLTSUG
 S GR=$P(PRM,";") Q:GR="" 0
 S CD=$P(PRM,";",2) Q:CD="" 0
 I '$D(@GLTSUG@(CD)) Q 0
 Q 1
 ;
DELROW(PRM) ;
 D GLTSUG
 D PUT^%W3DEB("W4TATSUG-DELROW","JB=JB & PRM=PRM")
 Q:'$G(JB)
 N GR,CD
 S GR=$P(PRM,";") Q:GR=""
 S CD=$P(PRM,";",2) Q:CD=""
 I $D(^[$$^W3MAIN]TMPDEL(JB,CD)) K ^(CD) Q
 S ^[$$^W3MAIN]TMPDEL(JB,CD)=$G(@GLTSUG@(CD))
 Q
 ;
NEWCOD(GR) ;
 N SH S SH=1
 I GR[";" S SH=$P(GR,";",2),GR=$P(GR,";")
 Q:$G(GR)="" "NOK"
 N GLTSUG
 D GLTSUG
 N A S A=$O(@GLTSUG@(SH))
 I A="" Q SH+1
 Q (SH+A)/2
 ;
SELGR ;
 W $$^%W1DICT("GROUP")_"&nbsp;&nbsp;"
 N FIRSTGR,GRSEL S:$G(%ARG("CDKV"))="" FIRSTGR=""
 S:$G(%ARG("CDKV")) GRSEL=%ARG("CDKV"),GRSEL("CDKV")=""
 W "<select id=""grid"" onChange=""ChangeGr()"">",!
 N PRM
 S PRM=$S($G(%ARG("ABCKV")):"A",1:"N")
 D ^W4SHOWKV(PRM,"VWKV^W4TATSUG("""_PRM_""")")
 W "</select>"
 W $$NBSP^%L1FRM(5)
 W $$^%W1DICT("ABC")
 W "<input id=""abcgrsort"" type=""checkbox"" onClick=""GroupSort(this)"" "
 I $G(%ARG("ABCKV")) W " checked=""checked"" "
 W " />"
 Q
 ;
VWKV(PRM) ;
 I '$$^W4VWGR(NN) Q
 S II=II+1
 W "<option value="""_NN_""""
 I '$D(GRSEL),$D(FIRSTGR),II=1 W " selected=""selected"""
 I $G(GRSEL),NN=GRSEL W " selected=""selected"""
 W " >"_$S(PRM="N":NN_" ",1:"")_$$^W3SHOWKV(NN)_"</option>"
 Q
 ;
NM(GR,CD) ;
 D GLTSUG
 Q $G(@GLTSUG@(CD))
 ;
SHOW(IRI,CD)
 D GLTSUG
 Q $P($G(@GLTSUG@(CD)),"\",2)
 ;
GLTSUG S GLTSUG=$$^W4GL("W4TATSUG")_"(GR)"
 Q
 ;
INV(TXT) ;
 I $$^%W1DIR="LTR" Q TXT
 Q $$INV^%L1FRM(TXT)
 ;
PUTPRM(PRM) ;
 N GL,GR
 S GR=$P(PRM,";") Q:GR=""
 D PUT^%W1PRM("GROLD",GR)
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TAWMSL
W4TAWMSL(HZM) ; [ 27.10.21 12:43 ] [ 08.02.16 19:27 ] [ 23.01.16 14:35 ] 
 Q:'$G(HZM) 0
 I '$$^W4HZFULL(HZM) Q 0
 N NMB S NMB=$$NMB^W4HZMST(HZM) I $$^W4MSD(NMB) G MSLS
 N IR S IR=$TR($$IR^W4HZMST(HZM),". ","")
 I IR="TAW"!(IR="TAKEAWAY")!(IR["zgwl")!(IR="") Q 1
 N KTV S KTV=$TR($$KTV^W4HZMST(HZM)," .","")
 I KTV="TAW"!(KTV="TAKEAWAY") Q 1
 I NMB=$G(@$$^W4PRM@("TAWMSL")) Q 1
 ;
MSLS N TAWMSLS S TAWMSLS=$G(@$$^W4PRM@("TAWMSLS"))
 N SUGS S SUGS=$$SUGS^W4L(NMB)
 N SUGS1 S SUGS1=$$SUGL1^W4L(NMB)
 I SUGS1["migelyn" Q 1
 ;
 I $L(TAWMSLS),$$^W4MSD(NMB),(","_TAWMSLS_",")[(","_SUGS_",") Q 1
 ;
 Q 0
 
 

W4TBCHSV
W4TBCHSV ; [ 28.10.20 08:13 ] [ 08.10.20 10:57 ] [ 07.10.20 19:23 ] 
 N (JB,%ARG,%REM) ;
 I '$G(%ARG("MEDAT")) Q
 I '$G(%ARG("ADDAT")) Q
 ;
 S DAT1=%ARG("MEDAT")
 S DAT2=%ARG("ADDAT")
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 D CRVRM(DT1,DT2)
 D SHOWTB(DAT1,DAT2)
 Q
 ;
 ;
CRVRM(DT1,DT2)
 N (JB,%ARG,%REM,DT1,DT2)
 S VRM=$$^W4MAIN("VRM") K @VRM
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","ASR")) D
 ..S K=0
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 ...S A=$G(^(N)),LKHN=$P(A,"*"),LKHR=$P(A,"*",6)
 ...I $$^W4CIBLKH,LKHN=$$^W4CIBLKH!(LKHR=$$^W4CIBLKH) D
 ....S SUM=$P(A,"*",4)
 ....S @VRM@(DT,"CIB")=$G(@VRM@(DT,"CIB"))+SUM
 ....S @VRM@(DT,HZ,"CIB")=$G(@VRM@(DT,HZ,"CIB"))+SUM
 ...I $$^W4TBLKH,LKHN=$$^W4TBLKH!(LKHR=$$^W4TBLKH) D
 ....S K=K+1
 ....S SUM=$P(A,"*",4)
 ....I $D(@$$^W4ORD@(HZ,"TB")) D
 .....N N1,K1 S N1="",K1=0
 .....F  S N1=$O(@$$^W4ORD@(HZ,"TB",N1)) Q:N1=""  S K1=K1+1 I K1=K D 
 ......I $G(@$$^W4ORD@(HZ,"TB",N1,"SUM")) S SUM=^("SUM")
 ....S @VRM@(DT,"TNB")=$G(@VRM@(DT,"TNB"))+SUM
 ....S @VRM@(DT,HZ,"TNB")=$G(@VRM@(DT,HZ,"TNB"))+SUM
 Q
 ;
SHOWTB(DAT1,DAT2) ;
 N (JB,%ARG,%REM,DAT1,DAT2)
 N VRM S VRM=$$^W4MAIN("VRM")
 S (SCIB1,SCIB2,STNB1,STNB2)=0
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""">",!
   W $$^%W1DICT("CMPRCMPNREPORT")
   W " "_$$^%W1DICT("FROMDATE")_" "_DAT1_" "_$$^%W1DICT("TODATE")_" "_DAT2
  W "</span>",!
  ;
  W "<br>",!
  W $$^%W1DICT("SHOWORDERS")_" "
  W "<input type=""checkbox"" id=""showords"" "_$S($G(%ARG("DET")):"checked=""checked"" ",1:"")_" OnClick=""ShowOrds()"" />"  
  W "<br>",!
  W "<table id=""tbcmp"" border=""1"" cellspacing=""0"" cellpadding=""3"">",!
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>"
    W "<th>"_$$^%W1DICT("CIBORDSUM")_"</th>"
    W "<th>"_$$^%W1DICT("CIBCMPSUM")_"</th>"
    W "<th>"_$$^%W1DICT("DIFCIB")_"</th>"
    W "<th>"_$$^%W1DICT("TNBORDSUM")_"</th>"
    W "<th>"_$$^%W1DICT("TNBCMPSUM")_"</th>"
    W "<th>"_$$^%W1DICT("DIFTNB")_"</th>"
   W "</tr>",!
  ;
 D TMP K @TMP
 S DT="" F  S DT=$O(@VRM@(DT)) Q:DT=""  D
  .M @TMP@(DT)=@$$^W4GL("W4TBCHSV")@(DT)
  .I $$DET D SHOWDET(DT)
  .W "<tr id=""tr"_DT_""">"
  . W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>"
  . N VL1,VL2,RZN
  . S VL1=$G(@VRM@(DT,"CIB"))
  . S VL2=$G(@TMP@(DT,"CIB"))
  . S SCIB1=SCIB1+VL1
  . S SCIB2=SCIB2+VL2 
  . W "<td id=""ordcib"_DT_""">"_$J(VL1,2,2)_"</td>"
  . W "<td >"
  .  W "<input type=""text"" id=""cib"_DT_""" onClick=""this.select()"" onChange=""OnChangeCib('"_DT_"')"" size=""8"" value="""_$J(VL2,2,2)_""" />"
  . W "</td>"
  . ;;S RZN=VL1-VL2
  . S RZN=VL2-VL1
  . W "<td id=""difcib"_DT_""" style=""color:"_$S(RZN>0:"green",RZN=0:"black",1:"red")_""">"
  .  W $J(RZN,2,2)
  . W "</td>"
  .
  . S VL1=$G(@VRM@(DT,"TNB"))
  . S VL2=$G(@TMP@(DT,"TNB"))
  . S STNB1=STNB1+VL1
  . S STNB2=STNB2+VL2 
  . W "<td id=""ordtnb"_DT_""">"_$J(VL1,2,2)_"</td>"
  . W "<td>"
  .  W "<input id=""tnb"_DT_""" onClick=""this.select()"" onChange=""OnChangeTnb('"_DT_"')"" type=""text"" size=""8"" value="""_$J(VL2,2,2)_""" />"
  . W "</td>"
  . ;;S RZN=VL1-VL2
  . S RZN=VL2-VL1
  . W "<td id=""diftnb"_DT_""" style=""color:"_$S(RZN>0:"green",RZN=0:"black",1:"red")_""">"
  .  W $J(RZN,2,2)
  . W "</td>"
  .W "</tr>",!
  ;
  W "<tr style=""background-color:yellow;color:black;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">"
   W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
   W "<td id=""ordcib"">"_$J(SCIB1,2,2)_"</td>"
   W "<td id=""cmpcib"">"_$J(SCIB2,2,2)_"</td>"
   ;;S RZN=SCIB1-SCIB2
   S RZN=SCIB2-SCIB1
   W "<td id=""difcib"" "_$$COLOR(RZN)_">"_$J(RZN,2,2)_"</td>"
   W "<td id=""ordtnb"">"_$J(STNB1,2,2)_"</td>"
   W "<td id=""cmptnb"">"_$J(STNB2,2,2)_"</td>"
   ;;S RZN=STNB1-STNB2
   S RZN=STNB2-STNB1
   W "<td id=""diftnb"" "_$$COLOR(RZN)_" >"_$J(RZN,2,2)_"</td>"
  W "</tr>",!
 W "</table>",!
 W "<br>",!
 W "<div id=""but"" align=""center"">",!
  D ^W4SBMBCK("","",1)
 W "</div>",!
 W "</div>",!
 Q
 ;
SET(PRM) ;
 N DT,VL,IND
 S DT=$P(PRM,";")
 S VL=$P(PRM,";",2)
 S IND=$P(PRM,";",3)
 I DT=""!(IND="") Q 0
 N TMP D TMP
 S @TMP@(DT,IND)=VL
 Q 1
 ;
SETORD(PRM) ;
 N DT,ORD,VL,IND
 S DT=$P(PRM,";")
 S ORD=$P(PRM,";",2)
 S VL=$P(PRM,";",3)
 S IND=$P(PRM,";",4)
 I DT=""!'ORD!(IND="") Q 0
 N TMP D TMP
 S @TMP@(DT,IND,ORD)=VL
 Q 1
 ;
TMP ;
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
SAVE ;
 D TMP
 N DT S DT="" F  S DT=$O(@TMP@(DT)) Q:DT=""  D
 .K @$$^W4GL("W4TBCHSV")@(DT)
 .M @$$^W4GL("W4TBCHSV")@(DT)=@TMP@(DT)
 K @TMP
 Q
 ;
INIT ;
 D ^W3CSS D:$G(%ARG("MSD")) PUT^%W1PRM("MSD",%ARG("MSD"))
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 Q 
 ;
SHOWDET(DT) ;
 N (JB,%ARG,%REM,DT,VRM) D TMP
 S VRM=$$^W4MAIN("VRM")
 S HZ="" F  S HZ=$O(@VRM@(DT,HZ)) Q:HZ=""  I HZ D
  .W "<tr id=""tr"_DT_"_"_HZ_""" style=""background-color:lightgrey;font-size:"_$$^W3FSZ(8)_""">"
  . W "<td align=""center"">"
  .  W "<span style=""color:blue;font-size:"_$$^W3FSZ(8)_""">"
  .    W $ZD(DT,"DD.MM.YY")
  .  W "</span><br>"
  .  W "<span style=""font-size:"_$$^W3FSZ(10)_""">"_HZ_"</span>"
  . W "</td>"
  . N VL1,VL2,RZN
  . S VL1=$G(@VRM@(DT,HZ,"CIB"))
  . S VL2=$G(@TMP@(DT,HZ,"TNB"))
  . W "<td id=""ordcib"_DT_"_"_HZ_""">"_$J(VL1,2,2)_"</td>"
  . W "<td >"
  .  W "<input type=""text"" id=""cib"_DT_"_"_HZ_""" onClick=""this.select()"" onChange=""OnChangeCibOrd('"_DT_"','"_HZ_"')"" size=""8"" style=""font-size:"_$$^W3FSZ(8)_""" value="""_$J(VL2,2,2)_""" />"
  . W "</td>"
  . ;;S RZN=VL1-VL2
  . S RZN=VL2-VL1
  . W "<td id=""difcib"_DT_"_"_HZ_""" style=""color:"_$S(RZN>0:"green",RZN=0:"black",1:"red")_""">"
  .  W $J(RZN,2,2)
  . W "</td>"
  .
  . S VL1=$G(@VRM@(DT,HZ,"TNB"))
  . S VL2=$G(@TMP@(DT,HZ,"TNB"))
  . W "<td id=""ordtnb"_DT_"_"_HZ_""">"_$J(VL1,2,2)_"</td>"
  . W "<td>"
  .  W "<input id=""tnb"_DT_"_"_HZ_""" onClick=""this.select()"" onChange=""OnChangeTnbOrd('"_DT_"','"_HZ_"')"" type=""text"" size=""8"" style=""font-size:"_$$^W3FSZ(8)_""" value="""_$J(VL2,2,2)_""" />"
  . W "</td>"
  . ;;S RZN=VL1-VL2
  . S RZN=VL2-VL1
  . W "<td id=""diftnb"_DT_"_"_HZ_""" style=""color:"_$S(RZN>0:"green",RZN=0:"black",1:"red")_""">"
  .  W $J(RZN,2,2)
  . W "</td>"
  .W "</tr>",!
 Q
 ;
DET(STAM) ; 
 Q $G(%ARG("DET")) 
 ;
COLOR(RZN) ; 
 I RZN<0 Q " style=""color:red"" "
 I +RZN=0 Q " style=""color:black"" "
 Q " style=""color:green"" "
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TBLBUT
W4TBLBUT(MBUT,KIND,CSP,STYLE) ; [ 31.12.25 12:43 ] [ 08.04.17 19:07 ] [ 04.04.17 12:17 ] 
 N (JB,%ARG,MBUT,KIND,CSP,STYLE)
 ;
 W "<div align=""center"" id=""divtblbut"" dir="""_$$^%W1DIR_""">",!
 I $G(KIND)="V" W "<br>",!
 ;
 I $D(MBUT("HEADER"))#2 D
 .N A S A=MBUT("HEADER")
 .W "<span style=""font-size:"_$$^W3FSZ(16)_";color:red;"_$$FONTFM^W3CSS_""">",! 
 . D
 . .I $E(A)="!" W $E(A,2,600),! Q
 . . W $$^%W1DICT(A),!
 .W "</span>",!
 .W "<br>",!
 ;
 W "<table id=""TblBut"" class=""tblbut"" "
 I '$G(CSP),$G(KIND)="V" S CSP="10px"
 I $G(CSP) W " cellspacing="""_CSP_""" "
 I $G(STYLE)'="" W " style="""_STYLE_""" "
 W ">",!
 ;
 I $G(KIND)'="V" W "<tr>",!
 S N="" F  S N=$O(MBUT(N)) Q:N=""  I N D
 .D PARSE(N)
 .I $G(KIND)="V" D
 ..W "<tr>"
 .. D TD
 ..W "</tr>",!
 .I $G(KIND)'="V" D TD
 I $G(KIND)'="V" W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 
PARSE(N) ;
 N A
 S A=MBUT(N)
 S VL=$P(A,";")
 S PROC=$P(A,";",2)
 S BG=$P(A,";",3) S:BG="" BG="white"
 S FG=$P(A,";",4) S:FG="" FG="blue"
 Q
 ;
TD ;
 W "<td style=""background-color:"_BG_";color:"_FG_";cursor:pointer"" "
  W " onMouseUp="""_PROC_""" "
 W ">"
  W " "_$$^%W1DICT(VL)_" "
 W "</td>"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TBLDIC
W4DICTBL(STAM) ; [ 27.02.10 18:44 ] [ 25.02.10 16:34 ] [
 I '$$POS^W4MTAW Q $$^%W1DICT("SHULHAN")
 Q $$^%W1DICT("CSR")
PC(STAM) ;
 I $$POS^W4MTAW Q " dtew"
 Q " ogley"

W4TBLET1
W4TBLET1(STAM) ; [ 12.06.18 21:17 ] [ 
 Q $$^W4TABLET=1
 ;
NO(STAM) ;
 Q '$$W4TBLET1

W4TBLKH
W4TBLKH(STAM) ; [ 12.05.20 16:28 ] [ 13.10.11 12:23 ] [ 12.10.11 13:28 ] 
 I $G(@$$^W4PRM@("WEB","10BIS")) Q ^("10BIS")
 Q $G(@$$^W4PRM@("10BIS"))
 

W4TBMN
W4TBMN ; [ 10.01.11 21:38 ] [
 F I=1:1:10 S M(I)=" "_I_" dlaw/qn zipeayg"
 W "<table>",!
  W "<tr>"
  W "</tr>",!
 W "</table>",!

W4TBMNL
W4TBMNL ; [ 04.07.23 10:35 ] [ 30.05.23 04:53 ] [ 25.05.23 09:09 ] 
 N (JB,%ARG,%REM)
 S JB=+$G(JB)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width=""80%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""20%"">"_$$^%W1DICT("MANAGERCODE")_"</th>"
 W "  <th width=""20%"">"_$$^%W1DICT("MANAGERNAME")_"</th>"
 ;
 W "  <th width=""10%"">"_$$^%W1DICT("TEL")_"</th>"
 W "  <th width=""50%"">"_$$^%W1DICT("EMAIL")_"</th>"
 ;
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 S GLTB=$$^W4GL("W4TBMNL")
 ;
 M @GLTMP=@GLTB
 ;
 S I=0
 S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S I=I+1
 .N PRM S PRM=I_";"_N_";"_$P(A,"\")_";"_$P(A,"\",2)
 .W "<tr >" W $$LINE(PRM) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVEND(PRM) ;
 N I,GLTMP,CD,TEL,MAIL
 D GLTMP
 ;
 S GLNM="W4TBMNL"
 K @$$^W4GL(GLNM)
 ;
 F I=1:1:$L(PRM,";") D
 .N VL S VL=$P(PRM,";",I) 
 .S CD=$P(VL,"~") Q:'CD
 .I CD'?5N S CD=$$DOP^%L1FRM(CD,5)
 .S TEL=$P(VL,"~",2)
 .S MAIL=$P(VL,"~",3)
 .S @$$^W4GL(GLNM)@(CD)=TEL_"\"_MAIL
 ;
 K @GLTMP
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
 ;
LINE(PRM) ;
 N MGCD,TEL,MAIL,SH
 S SH=$P(PRM,";",1)
 S MGCD=$P(PRM,";",2)
 S TEL=$P(PRM,";",3)
 S MAIL=$P(PRM,";",4)
 ;
 N ST
 S ST=""
  ;
  S ST=ST_" <td style=""text-align:center"" >"
   S ST=ST_$$VVCD(MGCD)
  S ST=ST_"  </td>"
  ;
  N MGNM S MGNM=$$^W4NAME(MGCD)
  S ST=ST_"  <td "_$$^%W1ALIGN_" >"
   S ST=ST_"&nbsp;&nbsp;"_$$H2U^%L1FRM(MGNM)
  S ST=ST_"  </td>"
  ;
  D
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <input type=""text"" value="""_TEL_""" size=""11"" />"
  .S ST=ST_"</td>"
  .
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <input type=""text"" value="""_MAIL_""" onChange=""VldMail(this)"" size=""40""/>"
  .S ST=ST_"</td>"
  ;
 Q ST
 ;
 ;
GETVL(PRM)
 D PUT^%W3DEB("W4TBMNL-SETNAME","PRM=PRM")
 N MGCD,I,VL,BC
 S MGCD=$P(PRM,";")
 I MGCD="" Q "CODENOTEXIST"
 S TEL=$P($G(@$$^W4GL("W4TBMNL")@(MGCD)),"\",1)
 S EMAIL=$P($G(@$$^W4GL("W4TBMNL")@(MGCD)),"\",2)
 ;
 N NAME1 S NAME1=$$^W4NAME(MGCD)
 Q $$DOP^%L1FRM(MGCD,5)_"~"_$$CLWEB^%L1FRM($$H2U^%L1FRM(NAME1))_"~"_TEL_"~"_EMAIL
 ;
 ;
VVCD(VL) ;
 N I,IDCD,IDNM
 N FIND S FIND="Find(this)"
 N A
 S A="<div style=""display:flex"">"
 S A=A_"<button onClick=""DelRow(this)"">X</button>&nbsp;"
 S A=A_"<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"onFocus='this.select()' "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img src=""w3filter.jpg"" style=""width:22px;height:22px"" onClick=""Find(this)"" />&nbsp;"
 S A=A_"<button onClick=""NewLine(this)"">+</button></div>"
 Q A
 ;
 ;
HD() ; 
 Q "MGRDEPTABLE" 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TBMNLN
W4TBMNLN ; [ 09.07.23 11:34 ] [ 04.07.23 10:35 ] [ 30.05.23 04:53 ] 
 N (JB,%ARG,%REM)
 S JB=+$G(JB)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(JB)="" W " JB number is not defined ! " Q
 ;
 W "<div id=""maindiv"" align=""center"" >",!
 ;
 W "<table id=""Tbl"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" "
 W " style=""background-color:white;color:black"" width=""80%"" "
 W ">",!
 W " <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
 W " ;color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
 W " >"
 W "  <th width=""20%"">"_$$^%W1DICT("MANAGERCODE")_"</th>"
 W "  <th width=""20%"">"_$$^%W1DICT("MANAGERNAME")_"</th>"
 ;
 W "  <th width=""10%"">"_$$^%W1DICT("TEL")_"</th>"
 W "  <th width=""50%"">"_$$^%W1DICT("EMAIL")_"</th>"
 ;
 W " </tr>",!
 N N,NN,I
 D GLTMP
 K @GLTMP
 ;
 D GLTB
 ;
 M @GLTMP=@GLTB
 ;
 S I=0
 S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  D
 .N A S A=$G(^(N))
 .S I=I+1
 .N PRM S PRM=I_";"_N_";"_$P(A,"\")_";"_$P(A,"\",2)
 .W "<tr >" W $$LINE(PRM) W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SAVEND(PRM) ;
 N I,GLTMP,CD,NM,TEL,MAIL
 D GLTMP
 ;
 S GLNM="W4TBMNLN"
 K @$$^W4GL(GLNM)
 ;
 F I=1:1:$L(PRM,";") D
 .N VL S VL=$P(PRM,";",I) 
 .S CD=$P(VL,"~") Q:'CD
 .I CD'?5N S CD=$$DOP^%L1FRM(CD,5)
 .S NM=$$INVH^%L1FRM($P(VL,"~",2))
 .S TEL=$P(VL,"~",3)
 .S MAIL=$P(VL,"~",4)
 .S @$$^W4GL(GLNM)@(CD)=NM_"\"_TEL_"\"_MAIL
 ;
 K @GLTMP
 Q 0
 ;
 ;
GLTMP S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
 ;
LINE(PRM) ;
 N MGCD,TEL,MAIL,SH
 S SH=$P(PRM,";",1)
 S MGCD=$P(PRM,";",2)
 S NM=$P(PRM,";",3)
 S TEL=$P(PRM,";",4)
 S MAIL=$P(PRM,";",5)
 ;
 N ST
 S ST=""
  ;
  S ST=ST_" <td style=""text-align:center"" >"
   S ST=ST_$$VVCD(MGCD)
  S ST=ST_"  </td>"
  ;
  N MGNM S MGNM=$$NAME(MGCD)
  S ST=ST_"  <td "_$$^%W1ALIGN_" >"
  S ST=ST_" <input type=""text"" value="""_$$H2U^%L1FRM(MGNM)_""" size=""11"" />"
  S ST=ST_"  </td>"
  ;
  D
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <input type=""text"" value="""_TEL_""" size=""11"" />"
  .S ST=ST_"</td>"
  .
  .S ST=ST_"<td align=""center"" >"
  .S ST=ST_" <input type=""text"" value="""_MAIL_""" onChange=""VldMail(this)"" size=""40""/>"
  .S ST=ST_"</td>"
  ;
 Q ST
 ;
 ;
GETVL(PRM)
 D PUT^%W3DEB("W4TBMNL-SETNAME","PRM=PRM")
 N MGCD,I,VL,BC
 S MGCD=$P(PRM,";")
 I MGCD="" Q "CODENOTEXIST"
 S NAME1=$P($G(@$$^W4GL("W4TBMNL")@(MGCD)),"\",1)
 S TEL=$P($G(@$$^W4GL("W4TBMNL")@(MGCD)),"\",2)
 S EMAIL=$P($G(@$$^W4GL("W4TBMNL")@(MGCD)),"\",3)
 ;
 N NAME1 S NAME1=$$^W4NAME(MGCD)
 Q $$DOP^%L1FRM(MGCD,5)_"~"_$$CLWEB^%L1FRM($$H2U^%L1FRM(NAME1))_"~"_TEL_"~"_EMAIL
 ;
 ;
VVCD(VL) ;
 N I,IDCD,IDNM
 N FIND S FIND="Find(this)"
 N A
 S A="<div style=""display:flex"">"
 S A=A_"<button onClick=""DelRow(this)"">X</button>&nbsp;"
 S A=A_"<input type=""text"" size=""12"" maxlength=""12"" "
 S A=A_"onChange="""_FIND_""" "
 S A=A_"onFocus='this.select()' "
 S A=A_"value="""_$G(VL)_""">&nbsp;"
 S A=A_"<img src=""w3filter.jpg"" style=""width:22px;height:22px"" onClick=""Find(this)"" />&nbsp;"
 S A=A_"<button onClick=""NewLine(this)"">+</button></div>"
 Q A
 ;
 ;
HD() ; 
 Q "MGRTABLE" 
 ;
GLTB ;
 S GLTB=$$^W4GL("W4TBMNLN")
 Q
 ;
NAME(CD) ;
 I '$G(CD) Q ""
 D GLTB
 N A S A=$G(@GLTB@(CD)) 
 Q $P(A,"\") 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TBPAY
W4TBPAY ; [ 29.08.10 21:40 ] [ 08.09.09 10:40 ] [ 07.09.09 09:53 ]
 ;
DEBIT(HZM)
 S MYMSD=1
 S VEND="ToOrder"
 S TBMSD=4777
 S TBCARD=1462441778110538
 S REQID=$J
 S SUM="1.00"
 S PARAMS=VEND_"/"_TBMSD_"/"_REQID_"/"_TBCARD_"/"_SUM
 D ^W3TBGET(1,"DebitMoneycard",PARAMS,MYMSD)
 Q
 ;
REFUND(HZM)
 S MYMSD=1
 S VEND="ToOrder"
 S TBMSD=4777
 S TBCARD=1462441778110538
 S REQID=$J
 S SUM="1.00"
 S PARAMS=VEND_"/"_TBMSD_"/"_REQID_"/"_TBCARD_"/"_SUM
 D ^W3TBGET(1,"RefundMoneycard",PARAMS,MYMSD)
 Q
 ;
KILLTMP ;
 K ^[$$^W3MAIN]TMPBIS(MYDVN)
 Q
 ;
MYDVN ;
 S MYDVN=$$^%L3MYDVN
 Q
 ;
INIT ;
 D MYDVN
 S VEND="toorder"
 D KILLTMP
 Q
 ;
ER ;
 D SVER^%L1X
 H
 ;G ASK

W4TBPSL
W4TBPSL ; [ 15.07.26 17:57 ] [ 08.04.25 13:01 ] [ 26.11.23 11:28 ] 
 N (JB,%ARG,%REM)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 
  D ^%W1HD("COURIERTABLE","",2)
 
  W "<br><br>",!
  ;
  W "<table id=""TblPsl"" width=""60%"" border=""1"" "
    W "cellspacing=""0"" cellpadding=""0"" ",!
  W ">"
   W "<tr>"
    W "<th>"_$$^%W1DICT("COURIERNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("WORKERNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("COURIERNAME")_"</th>" 
    W "<th>"_$$^%W1DICT("PHONE")_"</th>" 
   W "</tr>",!
   ;
   S GL=$$^W4GL("P1SL")
   ;
   I $$MM^W4PRM D CRSL
   ;
   I '$$MM^W4PRM D
   .N GL,GLNAME
   .S GL=$$^W4GL("P1SL")
   .S GLNAME=$$^W4GL("NAME")
   .N N S N="" F  S N=$O(@GLNAME@(N)) Q:N=""  D
   ..N OV S OV=$$DOP^W4NAME(N)
   ..I '$$SL^W4LEVPR(OV) Q
   ..I $D(@GL@(+OV)) Q
   ..S @GL@(+OV)=$$GET1^W4LEVPR(OV,"SHEM")
   ..S $P(@GL@(+OV,1),"\")=OV
   ..S $P(@GL@(+OV,1),"\",2)=$$GET1^W4LEVPR(OV,"TEL")
   ;
   S N=0 F  S N=$O(@GL@(N)) Q:N=""  D
   .S OV=$P($G(@GL@(N,1)),"\")
   .S NM=$G(@GL@(N))
   .I $L(OV)'=5!'OV D
   ..S OV=$$OVSL(NM)
   ..S $P(@GL@(N,1),"\")=OV
   .N NOPAIL S NOPAIL=($$GET1^W4LEVPR(OV,"PAIL")=0)
   .;;I 'OV S OV=$TR($J(N,5)," ",0)
   .
   .;;I $$GET1^W4LEVPR(OV,"PAIL")=0!(OV?1"0"."0") Q
   .
   .W "<tr "
   .D 
   ..I NOPAIL!(+OV=0) D  Q
   ...W "style=""background-color:pink"" "
   ..I $$SPA^%L1FRM(NM)'=$$SPA^%L1FRM($$^W4NAME(OV)) D
   ...W "style=""background-color:yellow"" "
   .W ">"
   . W "<td align=""center"" >"
   .  W N
   . W "</td>"
   .
   . W "<td align=""center"" >"
   .  W OV
   .  I NOPAIL W " <span style=""color:red;font-size:"_$$^W3FSZ(20)_""">-</span>"
   .  W "<br><span style=""color:grey"">"_$$H2U^%L1FRM($$^W4NAME(OV))_"</span>"
   . W "</td>"
   .
   . W "<td align=""center"" >"
   .  W $$H2U^%L1FRM(NM) ;; $$H2U^%L1FRM($$^W4NAME(OV))
   . W "</td>"
   .
   . W "<td align=""center"" >"
   .  W "<input id=""tel"_N_""" type=""text"" size=""23"" "
   .   ;;W " value="""_$$GET1^W4LEVPR(OV,"TEL")_""" "
   .   W " value="""_$P($G(@GL@(N,1)),"\",2)_""" "
   .  W " />"
   . W "</td>"
   .W "</tr>"
   ;
   W "</table>",!
  W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N PSL,TEL
 S PSL=$P(PRM,";") I 'PSL Q 0
 S TEL=$P(PRM,";",2)
 N OV S OV=$P($G(@$$^W4GL("P1SL")@(PSL,1)),"\")
 N NMSL S NMSL=$G(@$$^W4GL("P1SL")@(PSL))
 I 'OV S OV=$$OVSL(NMSL)
 S $P(@$$^W4GL("P1SL")@(PSL,1),"\",1)=OV
 S $P(@$$^W4GL("P1SL")@(PSL,1),"\",2)=TEL
 I OV'="" S @$$^W4GL("NAME")@(OV,4)=TEL
 I $$TEAV^W4PRM S RES=$$CRSLTV^W4LEVPR(OV,NMSL,TEL)
 Q 1
 ;
CRSL ;
 N GL,GLNAME
 S GL=$$^W4GL("P1SL")
 S GLNAME=$$^W4GL("NAME")
 K @GL
 S N="" F  S N=$O(@GLNAME@(N)) Q:N=""  D
 .S OV=$$DOP^W4NAME(N)
 .I '$$SL^W4LEVPR(OV) Q
 .S @GL@(+OV)=$$GET1^W4LEVPR(OV,"SHEM")
 .S $P(@GL@(+OV,1),"\")=OV
 .S $P(@GL@(+OV,1),"\",2)=$$GET1^W4LEVPR(OV,"TEL")
 Q
 ;
OVSL(NM) 
 N N,OV,OK,NMOV S OV="",OK=""
 S NM=$$SPA^%L1FRM(NM)
 S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D  Q:OK
 .S NMOV=$G(@$$^W4GL("NAME",1)) 
 .I $$SPA^%L1FRM(NMOV)=NM S OK=N 
 ;
 Q $TR($J(OK,5)," ",0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TBSLR
W4TBSLR ; [ 20.07.20 18:32 ] [ 14.12.17 11:02 ] [ 25.05.10 17:09 ] 
SETPRM ;
 N (JB,%ARG,%REM)
 D TMPARG
 S @TMPARG@("GLOB")="NAME"
 S LEN=7
 ;
 I '$G(@TMPARG@("SUGMS")) S @TMPARG@("SUGMS")=1
 ;
 S @TMPARG@("TBLNAME")=$$^%W1DICT("TBLSLR")
 ;
 S @TMPARG@("KEYNAME")=$$^%W1DICT("EMPID")
 S @TMPARG@("KEYSIZE")=5
 ;
 S @TMPARG@("NAME")=$$^%W1DICT("EMPNAME")
 S @TMPARG@("LEN")=12
 S @TMPARG@("OU")=1
 ;
 S @TMPARG@("NAME1")=$$^%W1DICT("PAIL")
 S @TMPARG@("LEN1")="1"
 S @TMPARG@("TYP1")="B"
 S @TMPARG@("OU1")=1
 ;
 S @TMPARG@("NAME2")=$$^%W1DICT("TAFKID")
 S @TMPARG@("LEN2")="10"
 S @TMPARG@("TYP2")="H"
 S @TMPARG@("OU2")=1
 ;
 S @TMPARG@("NAME3")=$$^%W1DICT("DATBGWORK")
 S @TMPARG@("LEN3")="8"
 S @TMPARG@("TYP3")="D"
 S @TMPARG@("OU3")=1
 ;
 S @TMPARG@("NAME4")=$$^%W1DICT("AHPENS")
 S @TMPARG@("LEN4")="4"
 S @TMPARG@("TYP4")="N"
 ;
 I $$SUGMS=1 D  ;  SHAOT RAGILOT
 .S @TMPARG@("NAME5")=$$^%W1DICT("SLRNORMAL")
 .S @TMPARG@("LEN5")=LEN
 .S @TMPARG@("TYP5")="N"
 .
 .S @TMPARG@("NAME6")=$$^%W1DICT("SLRSHBT")
 .S @TMPARG@("LEN6")=LEN
 .S @TMPARG@("TYP6")="N"
 ;
 I $$SUGMS=2 D  ;  SHAOT BASIS+NOSAFOT
 .S @TMPARG@("NAME5")=$$^%W1DICT("SLRNORMAL")
 .S @TMPARG@("LEN5")=LEN
 .S @TMPARG@("TYP5")="N"
 .
 .S @TMPARG@("NAME6")=$$^%W1DICT("SLRADD1")
 .S @TMPARG@("LEN6")=LEN
 .S @TMPARG@("TYP6")="N"
 .
 .S @TMPARG@("NAME7")=$$^%W1DICT("SLRADD2")
 .S @TMPARG@("LEN7")=LEN
 .S @TMPARG@("TYP7")="N"
 .
 .S @TMPARG@("NAME8")=$$^%W1DICT("SLRSHBT")
 .S @TMPARG@("LEN8")=LEN
 .S @TMPARG@("TYP8")="N"
 ;
 I $$SUGMS=3 D  ;  MISHMEROT
 .S @TMPARG@("NAME5")=$$^%W1DICT("SLRMSHM1")
 .S @TMPARG@("LEN5")=LEN
 .S @TMPARG@("TYP5")="N"
 .
 .S @TMPARG@("NAME6")=$$^%W1DICT("SLRMSHM2")
 .S @TMPARG@("LEN6")=LEN
 .S @TMPARG@("TYP6")="N"
 .
 .S @TMPARG@("NAME7")=$$^%W1DICT("SLRMSHM3")
 .S @TMPARG@("LEN7")=LEN
 .S @TMPARG@("TYP7")="N"
 .
 .S @TMPARG@("NAME8")=$$^%W1DICT("SLRSHBT")
 .S @TMPARG@("LEN8")=LEN
 .S @TMPARG@("TYP8")="N"
 .
 I $$SUGMS=4 D  ;  MASKORET YOMI
 .S @TMPARG@("NAME5")=$$^%W1DICT("SLRDAY")
 .S @TMPARG@("LEN5")=LEN
 .S @TMPARG@("TYP5")="N"
 .
 .S @TMPARG@("NAME6")=$$^%W1DICT("SLRDAYSHBT")
 .S @TMPARG@("LEN6")=LEN
 .S @TMPARG@("TYP6")="N"
 ;
 I $$SUGMS=5 D  ;  MASKORET HODSHI
 .S @TMPARG@("NAME5")=$$^%W1DICT("SLRMONTH")
 .S @TMPARG@("LEN5")=LEN
 .S @TMPARG@("TYP5")="N"
 ;
 Q
 ;
TMPARG ;
 S TMPARG=$$^W4MAIN("TMPARG")
 Q
 ;
SUGMS(STAM) ;
 D TMPARG
 I '$G(@TMPARG@("SUGMS")) Q 1
 Q $G(@TMPARG@("SUGMS"))
 ;
GET1(OV) ;
 I $$SUGMS=1 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAA"))
 I $$SUGMS=2 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAA0"))
 I $$SUGMS=3 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAAM1"))
 I $$SUGMS=4 Q $$NUM($$GET1^W4LEVPR(OV,"MJOM"))
 I $$SUGMS=5 Q $$NUM($$GET1^W4LEVPR(OV,"MHODESH"))
 Q ""
GET2(OV) ;
 I $$SUGMS=1 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAAS"))
 I $$SUGMS=2 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAA1"))
 I $$SUGMS=3 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAAM2"))
 I $$SUGMS=4 Q $$NUM($$GET1^W4LEVPR(OV,"MJOMS"))
 Q ""
GET3(OV) ;
 I $$SUGMS=2 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAA2"))
 I $$SUGMS=3 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAAM3"))
 Q ""
GET4(OV) ;
 I $$SUGMS=2 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAAS"))
 I $$SUGMS=3 Q $$NUM($$GET1^W4LEVPR(OV,"MSHAAS"))
 Q ""
PUT1(OV,VL) ;
 I $$SUGMS=1 D PUT1^W4LEVPR(OV,"MSHAA",VL)
 I $$SUGMS=2 D PUT1^W4LEVPR(OV,"MSHAA0",VL)
 I $$SUGMS=3 D PUT1^W4LEVPR(OV,"MSHAAM1",VL)
 I $$SUGMS=4 D PUT1^W4LEVPR(OV,"MJOM",VL)
 I $$SUGMS=5 D PUT1^W4LEVPR(OV,"MHODESH",VL)
 Q
PUT2(OV,VL) ;
 I $$SUGMS=1 D PUT1^W4LEVPR(OV,"MSHAAS",VL)
 I $$SUGMS=2 D PUT1^W4LEVPR(OV,"MSHAA1",VL)
 I $$SUGMS=3 D PUT1^W4LEVPR(OV,"MSHAAM2",VL)
 I $$SUGMS=4 D PUT1^W4LEVPR(OV,"MJOMS",VL)
 Q
PUT3(OV,VL) ;
 I $$SUGMS=2 D PUT1^W4LEVPR(OV,"MSHAA2",VL)
 I $$SUGMS=3 D PUT1^W4LEVPR(OV,"MSHAAM3",VL)
 Q
PUT4(OV,VL) ;
 I $$SUGMS=2 D PUT1^W4LEVPR(OV,"MSHAAS",VL)
 I $$SUGMS=3 D PUT1^W4LEVPR(OV,"MSHAAS",VL)
 Q
 ;
COND(OV) ;
 S %COND=1
 I $$SUGMS="" Q
 I $$SUGMS^W4LEVSUG(OV)'=$$SUGMS S %COND=0
 Q
 ;
GETPAIL(OV) ;
 I $$GET1^W4LEVPR(OV,"PAIL") Q 1
 Q 0
 ;
NUM(RKV) ;
 I 'RKV Q ""
 Q $J(RKV,2,2)
 ;
HEADFUNC ;
 D MSUGMS^W4LEVPR
 W "<b>"_$$^%W1DICT("CHOICEKINDOFSALARY")_"</b> : "
 W "<select id=""sugms"" onChange=""ChangeTblSlr()"">",!
 N N S N="" F  S N=$O(@$$^W4SUGMS@(N)) Q:N=""  D
 .W " <option value="""_N_""">"
 .W "  "_$$H2U^%L1FRM($G(^(N)))
 .W " </option>",!
 W "</select>",!
 Q
 ;
SETSUGMS(SUGMS) ;
 I '$G(SUGMS) Q
 D TMPARG
 N I F I=5:1:8 D
 .K @TMPARG@("NAME"_I)
 .K @TMPARG@("LEN"_I)
 .K @TMPARG@("TYPE"_I)
 ;
 S @TMPARG@("SUGMS")=SUGMS
 D SETPRM
 Q
 
 
 
 

W4TBTABC
W4TBTABC() ; [ 25.03.25 13:57 ] [ 24.03.25 16:38 ] [ 
 I $$^W4TABLET'=1 Q 0
 I $G(@$$^W4PRM@("NOTBLTKB")) Q 0
 Q $G(@$$^W4PRM@("TABLETABC"))
 
 
 

W4TBZAG
W4TBZAG ; [ 21.12.18 15:39 ] [ 14.11.18 11:26 ] [ 
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  W "<table width=""50%"">",! 
   W "<tr>",!
    W " <td width=""90%""></td>",!
     W "<td><img src=""w3save.jpg"" name=""save"" id=""saveid"" style=""pointer:cursor"" alt="""_$$^%W1DICT("SAVE")_""" onClick=""Save()"" /></td>",!
     W "<td><img src=""w3close.jpg"" name=""back"" id=""backid"" style=""pointer:cursor"" alt="""_$$^%W1DICT("BACK")_""" onClick=""Back()"" /></td>",!
   W "</tr>",! 
  W "</table>",!
  ;
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
    W $$^%W1DICT("ZAGTABLE")
  W "</span>",!
  W "<br><br>",!
  ;
  W "<table id=""TblZag"" width=""50%"" border=""1"" "
    W "cellspacing=""0"" cellpadding=""0"" ",!
  W ">"
   W "<tr>"
    W "<th>"_$$^%W1DICT("POSNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("POSNAME")_"</th>"
    W "<th>"_$$^%W1DICT("ZAGNUMBER")_"</th>" 
   W "</tr>",!
   ;
   S GL=$$^W4GL("PLUK")
   ;
   S N="" F I=1:1 S N=$O(@GL@(N)) Q:N=""  S A=$G(^(N)) D
   .W "<tr>"
   . W "<td id=""pos"_I_""" align=""center"" >"
   .  W N
   . W "</td>"
   .
   . W "<td align=""center"" >"
   .  W $$H2U^%L1FRM(A)
   . W "</td>"
   .
   . W "<td align=""center"" >"
   .  W "<select id=""zag"_I_""" >",!
   .  W "<option value=""0"" >"_$$^%W1DICT("CHOICEZAG")_"</option>",!
   .  S N1="" F  S N1=$O(@$$^W4DEV@(N1)) Q:N1=""  S B=$G(^(N1)) D
   .  .W "<option value="""_N1_""" "
   .  .I +$G(@$$^W4GL("W4ZAG")@(N1))=+N W " selected=""selected"" "
   .  .W ">"
   .  .W "<b>"_N1_"</b>"_$$NBSP^%L1FRM(5)_B
   .  W "</select>",!
   . W "</td>"
   .W "</tr>"
   ;
   W "</table>",!
  W "</div>",!
 Q
 ;
 ;
SAVE(PRM) ;
 N POS,ZAG
 S POS=$P(PRM,";") I 'POS Q "NOPOS"
 S ZAG=$P(PRM,";",2) I 'ZAG Q "NOZAG"
 S @$$^W4GL("W4ZAG")@(ZAG)=POS
 Q 1
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TCHLL
W4TCHLL(STAM) ; [ 05.11.17 12:57 ] [ 12.09.08 02:22 ] [ 29.06.04 08:29 ] 
 I $$LL^W4PRM,$G(HZSCR)'="P1HZTA" Q 1
 I $$LL^W4PRM,$G(HZSCR)="P1HZTA" Q 2
 Q 0
 

W4TDCHBX
W4TDCHBX(ID,PROC) ; [ 05.08.23 11:54 ] [ 04.08.23 15:59 ] [ 
 W "<td align=""center"" "
  W "onMouseDown=""handleCellChBxClick(event);"_PROC_";CellChBxClicked=true"" "
  W "OnMouseUp=""CellChBxClicked=false"" "
 W ">" 
  W "<input type=""checkbox"" id="""_ID_""" "
   W "OnMouseDown="""_PROC_";CellChBxClicked=true"" "
   W "OnMouseUp=""CellChBxClicked=false"" "
  W ">" 
 W "</td>",!
Q
 
 
 
 

W4TELMLZ
W4TELMLZ ; [ 14.05.26 11:37 ] [ 20.05.20 13:20 ] [ 13.07.17 14:25 ] 
 N (JB,%REM,%ARG,DISP,P1TOT)
 D PUT^%W3DEB("W4TELMLZ","P1TOT=P1TOT")
 S PRMSD=1
 S DOCH=$$GETP^%W1PRM("TELREP") Q:DOCH=""
 S MLZPRM=$$DOP^W4TELREP(DOCH)
 I $P(MLZPRM,"_",2) S MLZPRM=$P(MLZPRM,"_",2)
 ;
 I $E(DOCH,1,3)="MSH" S PRMSD=0
 ;
 S:'$D(DISP) DISP=1
 D PUT^%W3DEB("W4TELMLZ","DOCH=DOCH&P1MSD=P1MSD&MLZPRM=MLZPRM")
 I $G(DISP) S NOPC=""
 ;
 D ^W4IN,^W4MDPPC,^%L1TS
 ;
 D GLBL
 ;
 S (SPDN,SBTL,SSHER,SHNH,SSOAD,SHZM,STIP)=0
 S (SHNHCIB,SZIC,SPDN)=0
 ;
 D RNGDAT^W4TELREP(P1TOT)
 ;
 K @$$^W4MAIN("VRM")
 ;
 S STZ="" D STZ
 S STZ=RNGDAT_" - l "_$S($G(PRMSD):"mixvln",1:"migily")_" g""ec " D STZ
 ;;D KAV
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .N VT S VT="" F  S VT=$O(@GLBL@(VT)) Q:VT=""  D
 ..S MLZ="" F  S MLZ=$O(@GLBL@(VT,1,MLZ)) Q:MLZ=""  I $G(^(MLZ)) D
 ...I $G(PRMSD),$L(MLZ)<5 Q
 ...I '$G(PRMSD),$L(MLZ)=5 Q
 ...S @$$^W4MAIN("VRM")@(MLZ)=""
 ;
 S MLZ="" F  S MLZ=$O(@$$^W4MAIN("VRM")@(MLZ)) Q:MLZ=""  D
 .S (SHER,BTL,HNHCIB,TIP,HNH,ZIC,SOAD,CHZ,MZM,CHK,CA,TL,ASR,CAQ,ASRQ,GIFT,GIFTQ)=0
 .N I,N K SUMMTB,MTB,SHAAR
 .I MLZPRM,MLZ'=MLZPRM Q
 .S NAME=$S($G(PRMSD):$$^W4NAME(MLZ),1:$G(@$$^W4GL("P1SL")@(MLZ)))
 .D KAVB
 .S STZ="" D STZ
 .S SM1=5,STZ=$G(%MDP("B"))_$$HBR^%L1FRM(NAME,12)_" "_$J(MLZ,5)_$G(%MDP("N"))
 .S NOJ=""
 .D STZ K SM1
 .D KAVB
 .S STZ="" D STZ
 .
 .F DT=DT1:1:DT2 D
 ..S DAT=$ZD(DT,"YYMMDD")
 ..S SHER=SHER+$G(@GLBL@("DMSH",1,MLZ))
 ..S BTL=BTL+$G(@GLBL@("BIT",1,MLZ))
 ..S HNHCIB=HNHCIB+$G(@GLBL@("CIBHN",1,MLZ))
 ..S TIP=TIP+$G(@GLBL@("T",1,MLZ))
 ..S HNH=HNH+$G(@GLBL@("MIN",1,MLZ))+$G(@GLBL@("MIN2",1,MLZ))-HNHCIB
 ..S ZIC=ZIC+$G(@GLBL@("MIN3",1,MLZ))
 ..S SOAD=SOAD+$G(@GLBL@("SD",1,MLZ))
 ..S CHZ=CHZ+$G(@GLBL@("SHZ",1,MLZ))
 ..S MZM=MZM+$G(@GLBL@("F",1,MLZ))
 ..S CHK=CHK+$G(@GLBL@("G",1,MLZ))
 ..S CA=CA+$G(@GLBL@("V",1,MLZ))
 ..S CAQ=CAQ+$G(@GLBL@("V#",1,MLZ))
 ..I $$PAPJ^W4PRM D
 ...S GIFT=GIFT+$G(@GLBL@("V"_$$GFC^W4VT,1,MLZ)),CA=CA-GIFT
 ...S GIFTQ=GIFTQ+$G(@GLBL@("V"_$$GFC^W4VT_"#",1,MLZ)),CAQ=CAQ-GIFTQ
 ..S TL=TL+$G(@GLBL@("Z",1,MLZ))
 ..S ASR=ASR+$G(@GLBL@("H",1,MLZ))
 ..S ASRQ=ASRQ+$G(@GLBL@("H#",1,MLZ))
 ..
 ..I $G(@$$^W4PL@("MATB")) D
 ...S SUMMTB=0,N=""
 ...F  S N=$O(@GLBL@("MTB",N)) Q:N=""  D
 ....N A S A=$G(@GLBL@("MTB",N,MLZ))
 ....S MTB(N)=$G(MTB(N))+A 
 ....S SHAAR=1 I A S SHAAR(N)=$P(A,"!",2)/A
 ....S SUMMTB=SUMMTB+(A*SHAAR)
 ..
 .S STZ=$J(MZM,8,2)_" : onefn" D STZ
 .
 .I $G(@$$^W4PL@("MATB")) D
 ..N SM1,N S I=0
 ..S SM1=0
 ..S STZ="" D STZ
 ..S N="" F  S N=$O(MTB(N)) Q:N=""  D
 ...N A S A=$G(MTB(N))
 ...S I=I+1 S STZ=$J(A*SHAAR(N),7,2)_" = "_$J(SHAAR(N),7,3)_" *"_$J(A,7,2)_" : "_$J($P($G(@$$^W4GL("P1SUGM")@(N)),"\",2),5) D STZ
 ..
 ..S STZ=$J(MZM-SUMMTB,7,2)_$J("",19)_" :   g""y" D STZ
 ..S STZ="" D STZ
 .
 .I $$^W4TIPMIN D
 ..S STZ=$J(TIP,7,2)_" :  "_$$TIPPS^W4TOT("") D STZ
 ..S STZ=$J(MZM-TIP,7,2)_" : ehp onefn "_$J("",3) D STZ
 .
 .I $$^W4TIPMIN S STZ=$J(TIP,8,2)_" : "_$$TIPPS^W4TOT("") D STZ
 .
 .S STZ=$J(CHK,8,2)_" :  wiy" D STZ
 .S STZ=$J(TL,8,2)_" : yelz" D STZ
 .S STZ=$J(CA,8,2)_" :  `""k " D STZ
 .S STZ=$J(GIFT,8,2)_" :  htib " D STZ
 .S STZ=$J(ASR,8,2)_" : dtwd " D STZ
 .S STZ="" D STZ
 .S PDN=MZM+CHK+TL+CA+ASR-$S('$$^W4TIPMIN:0,1:TIP)
 .S STZ=$J(PDN,8,2)_" : minelyz k""dq" D STZ
 .S STZ="" D STZ
 .
 .S STZ=$J(BTL,8,2)_" : milehia" D STZ
 .S SBTL=SBTL+BTL
 .
 .S STZ=$J(HNH,8,2)_" : zegpd" D STZ
 .S SHNH=SHNH+HNH
 .
 .I HNHCIB D
 ..S STZ=$J(HNHCIB,8,2)_" :'SODEXO' zegpd" D STZ
 ..S SHNHCIB=SHNHCIB+HNHCIB
 .
 .I $$^W4TIPPD($G(DAT)) D
 ..I '$$^W4TIPMIN S STZ=$J(TIP,8,2)_" : "_$$TIPPS^W4TOT("") D STZ
 ..S STIP=STIP+TIP
 .
 .S STZ=$J(ZIC,8,2)_" : miekif" D STZ
 .
 .S STZ=$J(PDN+ZIC+BTL+HNH-$S($G(@$$^W4PRM@("BRTDM")):0,1:SHER),8,2)_" : ehexa k""dq" D STZ
 .S STZ="" D STZ
 .
 .S STZ=$J(CHZ,8)_" : zepnfd zenk" D STZ
 .S SHZM=SHZM+CHZ
 .
 .S STZ=$J(SOAD,8)_" : micreq 'qn" D STZ
 .S SSOAD=SSOAD+SOAD
 .
 .I SOAD D
 ..S STZ=$J(PDN/SOAD,8,2)_" : creql rvenn" D STZ
 ..S STZ="" D STZ
 ;
 I '$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 ;
 K @$$^W4MAIN("VRM")
 Q
 ;
 ;
STZ ;
 I '$D(NOJ) S STZ=$J(STZ,30)
STZ1 ; 
 D ^W4PCST(STZ,DISP) K NOJ
 Q
 ;
KAV S STZ=$TR($J("",23)," ","-") D STZ
 Q
KAVB ;
 N SM1
 S SM1=5,STZ=$G(%MDP("B"))_$TR($J("",18)," ","-")_$G(%MDP("N")) D STZ1
 Q
 ;
GLBL ;
 D MRK^W4IN
 S GLBL=$S('MRK:$$^W4GL("TOT")_"(DAT)",1:$$^W4GL("TOT")_"(DAT,MRK)")
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TELMZV
W4TELMZV ; [ 02.05.18 10:55 ] [ 15.04.18 14:41 ] [ 20.02.18 17:04 ] 
 N (JB,%ARG,%REM)
 D TODT
 ;
 D FRMSHOW0^W4HZGSH
 D FRMSHOW^W4HZGSH
 ;
 D SZ
 ;
 N OPORD S OPORD="QNOPENORDERS"
 I PRMSL S OPORD="QNOPENDLVORDERS"
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<span style=""font-size:"_$$^W3FSZ(16)_""">"
  W $$^%W1DICT("RESTSTATUS",$ZD($H,"DD.MM.YY")_"<>"_$ZD($H,"24:60"))
 W "</span>",!
 W "<br><br>",!
 ;
 W " <table>"
  W "<tr>"
   W "<td style=""font-weight:bold"">"_$$^%W1DICT(OPORD)_"</td><td>"_$$RKV(QNORD)_"</td>"
  W "</tr>",!
  ; 
  W "<tr>" 
   W "<td>"_$$^%W1DICT("TOSUM")_"</td><td>"_$$RKV($J(SSUM,2,2))_"</td>"
  W "</tr>",!
 ;
 I 'PRMSL D
 .W "<tr>"
 . W "<td>"_$$^%W1DICT("GUESTSQN")_"</td><td>"_$$RKV(SSOAD)_"</td>"
 .W "</tr>",! 
 .
 .W "<tr>"
 . W "<td>"_$$^%W1DICT("AVMSD")_"</td><td>"_$$RKV($J(AVRG,2,2))_"</td>"
 .W "</tr>",!
 ;
 I PRMSL D TRSP
 ;
 N CLORD S CLORD="QNCLOSEORDERS"
 I PRMSL S CLORD="QNCLOSEDLVORDERS"
 ;
 D TRSP
 ;
 W "<tr>"
  W "<td style=""font-weight:bold"" >"_$$^%W1DICT(CLORD)_"</td><td>"_$$RKV(QNORDS)_"</td>"
 W "</tr>",!
 W "<tr>"
  W "<td>"_$$^%W1DICT("TOSUM")_"</td><td>"_$$RKV($J(SSUMS,2,2))_"</td>"
 W "</tr>",!
 ;
 I 'PRMSL D
 .W "<tr>" 
 . W "<td>"_$$^%W1DICT("GUESTSQN")_"</td><td>"_$$RKV(SSOADS)_"</td>"
 .W "</tr>",!
 .W "<tr>"
 . W "<td>"_$$^%W1DICT("AVMSD")_"</td><td>"_$$RKV($J(AVRGS,2,2))_"</td>"
 .W "</tr>",!
 ;
 I 'PRMSL,SSSOAD+SSSOADS D
 .D TRSP
 .W "<tr>"
 .I 'PRMSL D
 .. W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTMANY")_"</td>"
 .. W "<td> "_$$RKV($J(SSSUM+SSSUMS,2,2),"brown")_"</td>"
 .;
 .I PRMSL D
 .. W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTCLORDERS")_"</td>"
 .. W "<td>"_$$RKV($J(SSSUMS,2,2),"brown")_"</td>"
 .;
 .W "</tr>",!
 .
 .W "<tr>"
 . W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTAVMSD")_"</td>"
 . W "<td>"_$$RKV($J((SSSUM+SSSUMS)/(SSSOAD+SSSOADS),2,2),"brown")_"</td>"
 .W "</tr>",!
 .
 D TRSP
 D SZ0
 ;
 W "<tr>"
  W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTALPREV")_"</td>"
  W "<td>"_$$RKV($J(TOT0,2,2),"brown")_"</td>"
 W "</tr>",!
 ;
 D TRSP
 ;
 W "<tr>"
  W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTALMM")_"</td>"
  W "<td>"_$$RKV($J(TOTM+SSSUM+SSUMS,2,2),"brown")_"</td>"
 W "</tr>",!
 ;
 W "<tr>"
  W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTALMMC")_"</td>"
  W "<td>"_$$RKV($J(TOTM+SSUMS,2,2),"brown")_"</td>"
 W "</tr>",!
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr>"
  W "<td style=""font-weight:bold"">"_$$^%W1DICT("TOTALMM0")_"</td>"
  W "<td>"_$$RKV($J(TOTM0,2,2),"brown")_"</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "<br><br>",!
 D ^W4BCK
 W "</div>",!
 Q
 ;
 ;
RKV(RKV,COLOR) ;
 I $G(COLOR)="" S COLOR="green"
 Q "&nbsp;&nbsp;<span style=""color:"_COLOR_";font-weight:bold"">"_RKV_"</span>"
 ;
TRSP ;
 W "<tr>"
  W "<td>&nbsp;</td><td>&nbsp;</td>"
 W "</tr>",!
 Q
 ;
SZ ;
 S TOTM=0
 D TODT
 S DAT=$ZD(TODT,"DDMMYY")
 S DT1=$$^%L1DC("01"_$E(DAT,3,6),3)
 K SZ
 D PREP^W4Z(DT1,TODT-1)
 D KILLS^W4Z
 S TOTM=$G(SZ("A"))+$G(SZ("H"))
 ;
 S TOTM0=0
 S DAT=$ZD(TODT,"DDMMYY")
 N DT01,DT02
 S DT02=$TR($$^%L1DC("01"_$E(DAT,3,6),"1-1"),"./","")
 S DT01="01"_$E(DT02,3,6)
 K SZ
 D PREP^W4Z(DT01,DT02)
 D KILLS^W4Z
 S TOTM0=$G(SZ("A"))+$G(SZ("H"))
 Q
 ;
SZ0 ;
 S TOT0=0
 D TODT
 N DT S DT=$O(@$$^W4GL("Z")@(TODT),-1) Q:DT=""
 K SZ
 D PREP^W4Z(DT,DT)
 D KILLS^W4Z
 S TOT0=$G(SZ("A"))+$G(SZ("H"))
 Q
 ;
TODT ; 
 S TODT=$$^W4DZ
 I $G(%ARG("DAT")) S TODT=$$^%L1DC(%ARG("DAT"),3)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TELRE0
W4TELREP(DOCH,DISP) ; [ 08.04.25 08:03 ] [ 14.03.24 15:25 ] [ 17.08.23 11:00 ] 
 N (JB,%ARG,%REM,DOCH,DISP,NOBACKBUT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 K @$$^W4MAIN("VRMSUM")
 ;
 S VZ=$$GETP^%W1PRM("VZ")
 ;
 S DAT1=$$GETDAT("MEDATE")
 S DAT2=$$GETDAT("ADDATE")
 ;
 I $G(%ARG("PRINT")) S DISP=0
 I '$D(DISP) S DISP=1
 I $$^W4SMALL S DISP=1
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 D PUT^%W1PRM("TELREP",DOCH)
 ;
 S CODREP=$G(%ARG("CODREP"))
 ;
 I $$CSR,DOCH["MLZ"!(DOCH["MSH"),DOCH[1,$G(DISP),$G(%ARG("DOP"))="" D DIVDOP(DOCH) Q 1
 I $$CSR,DOCH="TBL"!(DOCH="POS")!(DOCH="ULM"),$G(DISP),$G(%ARG("DOP"))="" D DIVDOP(DOCH) Q 1
 ;
 D PUT^%W3DEB("W4TELREP","DOCH=DOCH & DISP=DISP & DAT1=DAT1&DAT2=DAT2&CODREP=CODREP")
 D ^W4IN
 ;
 K @$$^W4MAIN("VRMS")
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("TEMP")
 K @$$^W4MAIN("TMPS111")
 ;
 S P1TOT=DAT1_"-"_DAT2
 ;
 ;--------------------------- PRINT REPORT HEADER
 D KOT
 I DOCH="ZRS"!(DOCH="GAPZ") G P10
 ;
 S P1X=""
 I DOCH="TBL" S P1X="SHUL,"_$$DOP("TBL")
 I DOCH="POS" S P1X="PART,"_$$DOP("POS")
 I DOCH="ULM" S P1X="ULAM,"_$$DOP("ULM")
 ;
 D SUM(P1TOT)
 ;
P10 ;
 D DJ ; ------------- HAHANAT KVAZIM LE DOCH
 I $G(DISP),$G(DOCH)'="MNS",$G(DOCH)'="GAPZ" D VIEW
 L  Q 1
 ;
 ;
DJ ;-------------------- DOCH JOMI
 I DOCH="MNY"!(DOCH="TBL")!(DOCH="POS")!(DOCH="ULM") D  Q
 .D DMANY(P1TOT,P1X)
 ;
 I DOCH="MNS" D  G DJE
 .S PCPROG="W4GAPREP" D PC
 ;
 I DOCH="DLVGAP" D  G DJE
 .N SND S SND=0
 .I $G(%ARG("REPFORM")) S SND=.5
 .D ^W4GAP(JB,DT1,DT2,SND)
 .N S1PC,SM1,GWPC S SM1=0,GWPC=40
 .I $G(DISP)=0 D S1PC
 ;
 I DOCH="GAPZ" D  G DJE
 .D ^W4GAPZ(DT1,DT2)
 .N S1PC,SM1,GWPC S SM1=0,GWPC=40
 .I $G(DISP)=0 D S1PC
 ;
 D TMPS111
 K @TMPS111
 ;
 I DOCH["MLZ" D
 .S PRMSD=1
 .S PCPROG="W4TELMLZ" D PC
 ;
 I DOCH["MSHD" D ^W4HZHC2 G DJE
 ;
 I DOCH["MSH" D
 .S PRMSD=0
 .S PCPROG="W4TELMLZ" D PC
 ;
 I DOCH="DCLK" D ^W4DCLKS(DT1,DT2,'$G(DISP)) K @$$^W4MAIN("TMPS111") D PC G DJE 
 ;
 I DOCH="LKH" D
 .S PCPROG="W4DLK" D PC
 ;
 I DOCH="PAR"!(DOCH="DEP")!(DOCH="KVZ") D
 .D PARZ(DT1,DT2)
 ;
 I DOCH="BIT"!(DOCH="BITD") D DBIT(DT1,DT2)
 ;
 I DOCH="HNH"!(DOCH="HNHD") D DHNH(DT1,DT2)
 ;
 I DOCH="CIB" D ^W4DCIBZ
 ;
 I DOCH="TLM" D
 .D ^W4DTLM(P1DZ)
 ;
 I DOCH="TNB" D DCMPN($$^W4TBLKH,"qia oz",DT1,DT2)
 I DOCH="CPN" D DCMPN($$^W4CPNLKH,"oetpetew",DT1,DT2)
 I DOCH="ZRS" D ZRS(DT1,DT2)
 ;
DJE ;
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("VRM")
 Q:$G(DISP)
 ;;I $L($G(PRINT)) D ^W4CUT(PRINT,$G(%MDP("CUT"))) Q
 Q
 ;
 ;
PC ;
 I $L($G(PCPROG)) D @("^"_PCPROG)
 Q
 ;
 ;
PARZ(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2,DOCH,DISP,P1TOT,VZ,P1X)
 I '$G(DT2) S DT2=DT1
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("TEMP1"),@$$^W4MAIN("VRM")
 N DAT,DAT01,DAT02,DAT1,DAT2,MEDAT,ADDAT
 S MEDAT=$$^%L1DC(DT1,1)
 S ADDAT=$$^%L1DC(DT2,1)
 S GLB=$$^W4GL("PLUTOT")
 ;
 S %ARG("MEDAT")=MEDAT
 S %ARG("ADDAT")=ADDAT
 S %ARG("SET")=$G(%ARG("SET"))
 ;
 D TV^W4DP1
 I $G(DOCH)="KVZ" D ^W4SGKVZ(P1TOT,DISP) G EPARZ
 I $G(DOCH)="DEP" D ^W4SGDEP(P1TOT,DISP) G EPARZ
 ;
 S PCPROG="W4PARZ" D PC
EPARZ ;
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("TEMP1"),@$$^W4MAIN("VRM")
 Q
 ;
 ;
VIEW ;
 W "<div align=""center"" >",!
 ;
 I $G(DOCH)="DLVGAP",$G(%ARG("MEDATE"))=$G(%ARG("ADDATE")) D
 .W "<table dir="""_$$^%W1DIR_""" ><tr>",!
 .W "<td>"
 .W $$^%W1DICT("REPORTFORM")
 .W "<input type=""radio"" name=""repform"" "
 .I '$G(%ARG("REPFORM")) W "checked=""checked"" "
 .W "onClick=""ClickForm()"" "
 .W "/>",! 
 .W "</td>"
 .W "<td>"
 .W $$^%W1DICT("FILEFORM")
 .W "<input type=""radio"" name=""repform"" "
 .I $G(%ARG("REPFORM")) W "checked=""checked"" "
 .W "onClick=""ClickForm()"" "
 .W "/>",! 
 .W "</td>"
 .W "</tr></table>",!
 D BACKBUT
 W "<table dir="""_$$^%W1DIR_""" "
 D
 .I $G(DOCH)="DLVGAP" D  Q
 .. W "border=""1"" "
 .. W "cellspacing=""0"" "
 .. W "cellpadding=""5"" "
 . W "border=""0"" "
 W " style=""font-size:"_$$^W3FSZ(11)_""" "
 W ">",!
  N COL S COL=0
  N I F I=1:1 Q:'$D(@$$^W4MAIN("TMPS111")@(I))  D
  .W "<tr "
  .I $L($G(^(I,"COLOR"))) D
  ..W "style=""color:"_^("COLOR")_""" "
  .W ">"
  .D ^W4S1VW(I)
  .W "</tr>"
 W "</table>",!
 ;
 D BACKBUT
 W "</div>",!
 Q
 ;
 ;
REPORT(STAM) ;
 N SUGREP S SUGREP=$$GET^W4TMPANS("TELMENU","KINDOFREPORT")
 Q SUGREP
 ;
 ;
DISP(STAM) ;
 N REP S REP=$$GET^%W1PRM("REPORT")
 S REP=$P(REP,"::")
 I '$L(REP) Q ""
 Q +$$GET^W4TMPANS("TELMENU","KINDOFSHOW")
 ;
 ;
TBL ;
 D NOZERO^W4SCASK Q:$D(%SC("ER"))
 I '$D(@$$^W4GL("LKH")@(VL)) D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="TABLENOTEXIST"
 Q
 ;
BACKBUT ;
 I $$CSR Q
 I $D(NOBACKBUT) Q
 W "<br><br>",!
 W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
 W " onClick=""Back()"" "
 W " style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""" "
 W " />"
 W "<br><br>",!
 Q
 ;
 ;
DCMPN(LKCMPN,HD,DT1,DT2) ;
 N DT,HZ,N,ST,STB
 ;
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","ASR")) D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 ...S A=$G(^(N)),LKHN=$P(A,"*") Q:LKHN'=LKCMPN
 ...D ^W4GTVCH(A,"ASR")
 ...S STB("Q")=$G(STB("Q"))+1
 ...S STB("S")=$G(STB("S"))+ASR
 ;
 S ST="" D W
 N ST0
 S (ST0,ST)="  "_$$^%L1DC(DT2,1)_" cr "_$$^%L1DC(DT1,1)_" -n "_HD_" zegewl g""ec" D W
 S ST=$TR($J("",$L(ST0))," ","-") D W
 S ST=" "_$J($G(STB("S")),7,2)_" k""dq "_$J($G(STB("Q")),5,0)_" zerepz 'qn" D W
 S ST="" D W
 I +$G(P1X)'=2,'$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
W D W1(ST,$G(DISP))
 K WCOLOR,PRKOT
 Q
 ;
W1(STZ,DISP) ;
 N (JB,%ARG,STZ,DISP,%MDP,PRINT,PRKOT,WCOLOR)
 I '$G(DISP),'$D(%MDP("B"))!'$D(%MDP("N"))!'$D(PRINT) D ^W4MDPPC
 ;
 N STZNP S STZNP=STZ
 I $D(%MDP("B")),$D(%MDP("N")) D
 .S STZNP=$$RPL^%L1FRM(STZ,%MDP("B"),"")
 .S STZNP=$$RPL^%L1FRM(STZNP,%MDP("N"),"")
 ;
 S STZNP=$$RPL^%L1FRM(STZNP,$C(27)_"W1","")
 S STZNP=$$RPL^%L1FRM(STZNP,$C(27)_"W0","")
 ;
 I $G(DISP) D  Q
 .N IND S IND=$O(@$$^W4MAIN("TMPS111")@(999999),-1)+1
 .S @$$^W4MAIN("TMPS111")@(IND)=$J("",20)_STZNP
 .I $G(PRKOT) S @$$^W4MAIN("TMPS111")@(IND,"KOT")=1
 .I $L($G(WCOLOR)) S @$$^W4MAIN("TMPS111")@(IND,"COLOR")=WCOLOR
 ;
 N TXT S TXT=STZ
S1 Q:'$G(PRINT)
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 N SM S SM=6 S:$D(SM1) SM=SM1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 N ST S ST=$J("",SM)_$TR(TXT,TS0,TSS)
 I PRINT=54,$$^%L1T2P(ST) G ES1
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=ST
ES1 K TXT,STZ
 Q
 ;
CLRVIP ;
 N GLDEV S GLDEV=$$^W4DEV
 N N,IP S N="" F  S N=$O(@GLDEV@(N)) Q:N=""  D
 .S IP=$G(^(N))
 .I $G(^(N,"H"))="VIP" D
 ..K @$$^W4PLUK@(N)
 ..K @GLDEV@(N)
 ..I IP K @$$^W4DEVI@(IP)
 Q
 ;
 ;
DBIT(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2,P1TOT,DISP,DOCH)
 ;
 D CRVRM^W4MAILZB(DT1,DT2) ; --> VRM
 ;
 S ST=$ZD(DT2,"DD.MM.YY")_" cr "_$ZD(DT1,"DD.MM.YY")_" -n milehia g""ec" D W
 ;
 I DOCH="BITD" G DBITD
 ;
 D KAV
 S ST="  mekq :zenk: `vi:         daiq       ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SKAM,SSUM,PRKOT
 S (SKAM,SSUM)=0
 S SIBA="" F  S SIBA=$O(@VRM@(SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM@(SIBA,SIBA1)) Q:SIBA1=""  D
 ..S EXIT="" F  S EXIT=$O(@VRM@(SIBA,SIBA1,EXIT)) Q:EXIT=""  D
 ...S A=$G(^(EXIT))
 ...S KAM=-$P(A,"*") S SKAM=SKAM+KAM
 ...S SUM=-$P(A,"*",2) S SSUM=SSUM+SUM
 ...S ST=$J(SUM,6,1)_" :"_$J(KAM,3)_" : "
 ...S ST=ST_$S(EXIT:"ok",1:"`l")_" : "
 ...S ST=ST_$$HBR^%L1FRM(SIBA1,20) D W
 ...S SKAM(EXIT)=$G(SKAM(EXIT))+KAM
 ...S SSUM(EXIT)=$G(SSUM(EXIT))+SUM
 ;
 D KAV
  S ST=$J(+SSUM,6,1)_": "_$J(+SKAM,4)_" ::  k""dq " D W
 D KAV
  S ST=$J(+$G(SSUM(1)),6,1)_" :"_$J(+$G(SKAM(1)),3)_" :: `vi k""dq" D W
  S ST=$J(+$G(SSUM(0)),6,1)_" :"_$J(+$G(SKAM(0)),3)_" :: `vi `l k""dq" D W
 K @VRM,@VRM1
 Q
 ;
DBITD ;
 D KAV
 S ST="  mekq :zenk: `vi: dpnfd ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SKAM,SSUM,PRKOT
 S (SKAM,SSUM)=0
 F DT=DT1:1:DT2 D
 .S FRST=1
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...I FRST D
 ....S ST="" D W S ST="" D W
 ....S ST="---------- "_$ZD(DT,"DD.MM.YY")_" ----------",WCOLOR="green" D W
 ....S FRST=0
 ...S ST="" D W
 ...S ST=$$HBR^%L1FRM(SIBA1,26)_" ---",WCOLOR="brown" D W
 ...
 ...S EXIT="" F  S EXIT=$O(@VRM1@(DT,SIBA,SIBA1,EXIT)) Q:EXIT=""  D
 ....S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,EXIT,HZM)) Q:HZM=""  D
 .....S A=$G(^(HZM))
 .....S KAM=-$P(A,"*") D
 ......S SKAM=$G(SKAM)+KAM
 ......S SKAM(DT)=$G(SKAM(DT))+KAM
 ......S SKAM(EXIT)=$G(SKAM(EXIT))+KAM
 .....S SUM=-$P(A,"*",2) D
 ......S SSUM=$G(SSUM)+SUM
 ......S SSUM(DT)=$G(SSUM(DT))+SUM
 ......S SSUM(EXIT)=$G(SSUM(EXIT))+SUM
 .....S ST=$J(SUM,6,1)_" :"_$J(KAM,3)_" : "
 .....S ST=ST_$S(EXIT:"ok",1:"`l")_" : "
 .....S ST=ST_$J(HZM,7) D W
 .
 .I $D(SSUM(DT))!$D(SKAM(DT)) D
 ..D KAV
 ..S ST=$J($G(SSUM(DT)),7,1)_" :"_$J($G(SKAM(DT)),8,2)_" :: "_$ZD(DT,"DD.MM.YY")_" k""dq" D W
 ;
 D KAV
  S ST=$J(+SSUM,6,1)_": "_$J(+SKAM,4)_" ::  k""dq " D W
 D KAV
  S ST=$J(+$G(SSUM(1)),6,1)_" :"_$J(+$G(SKAM(1)),3)_" :: `vi k""dq" D W
  S ST=$J(+$G(SSUM(0)),6,1)_" :"_$J(+$G(SKAM(0)),3)_" :: `vi `l k""dq" D W
 K @VRM,@VRM1
 Q
 ;
KAV ;
 S ST=$TR($J("",38)," ","-")
 D W
 Q
 ;
DHNH(DT1,DT2) ;
 N (JB,%ARG,DT1,DT2,DOCH,DISP,DT1,DT2,P1TOT)
 ;
 S METRH=$$^%L1DC(DT1,1)
 S ADTRH=$$^%L1DC(DT2,1)
 ;
 D TRH^W4DHNHA ; --> VRM
 ;
 S VRM1=$$^W4MAIN("VRM1")
 S VRM2=$$^W4MAIN("VRM2") K @VRM2
 ;
 S ST=$ZD(DT2,"DD.MM.YY")_" cr "_$ZD(DT1,"DD.MM.YY")_" -n zegpd g""ec" D W
 ;
 I DOCH="HNHD" G DHNHD
 ;
 F DT=DT1:1:DT2 D
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:HZM=""  D
 ....S B=$G(^(HZM))
 ....S A=$G(@VRM2@(SIBA,SIBA1))
 ....S @VRM2@(SIBA,SIBA1)=$P(A,"*")+$P(B,"*")_"*"_($P(A,"*",2)+$P(B,"*",2))
 ;
 D KAV
 S ST=" oeaygl :hixtl zegpd:       daiq       " S PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SHNH,SHNP
 S SIBA="" F  S SIBA=$O(@VRM2@(SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM2@(SIBA,SIBA1)) Q:SIBA1=""  D
 ..S A=$G(^(SIBA1))
 ..S HNP=$P(A,"*") D
 ...S SHNP=$G(SHNP)+HNP
 ..S HNH=$P(A,"*",2) D
 ...S SHNH=$G(SHNH)+HNH
 ..S ST=$J(HNH,7,2)_" :"_$J(HNP,8,2)_" :"_$J(SIBA1,20) D W
 ;
 D KAV
 S ST=$J($G(SHNH),7,1)_" :"_$J($G(SHNP),8,2)_" : k""dq" D W
 K @VRM1,@VRM2
 Q
 ;
DHNHD ; 
 D KAV
 ;;S ST="------------- daiq ----------- " D W
 S ST=" oeaygl : hixtl zegpd:  dpnfd " S PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SHNP,SHNH
 S (SHNP,SHNH)=0
 ;
 F DT=DT1:1:DT2 D
 .S FRST=1
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...I FRST D
 ....S ST="" D W S ST="" D W
 ....S ST="---------- "_$ZD(DT,"DD.MM.YY")_" ----------" S WCOLOR="green" D W
 ....S FRST=0
 ...S ST="" D W
 ...S ST=$$HBR^%L1FRM(SIBA1,26)_" ---",WCOLOR="brown" D W
 ...S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:HZM=""  D
 ....S A=$G(^(HZM))
 ....S HNP=$P(A,"*") D
 .....S SHNP=$G(SHNP)+HNP,SHNP(DT)=$G(SHNP(DT))+HNP
 ....S HNH=$P(A,"*",2) D
 .....S SHNH=$G(SHNH)+HNH
 .....S SHNH(DT)=$G(SHNH(DT))+HNH
 ....S ST=$J(HNH,7,2)_" :"_$J(HNP,8,2)_" :"_$J(HZM,7) D W
 .
 .I $D(SHNH(DT))!$D(SHNP(DT)) D
 ..D KAV
 ..S ST=$J($G(SHNH(DT)),7,1)_" :"_$J($G(SHNP(DT)),8,2)_" : "_$ZD(DT,"DD.MM.YY")_" k""dq" D W
 ;
 D KAV
 S ST=$J(SHNH,7,1)_" :"_$J(SHNP,8,2)_" : k""dq" D W
 K @VRM1
 Q
 ;
RKZHNH ;
 D KAV N PRKOT
 S ST=" oeaygl :hixtl zegpd:      daiq      ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 D RKZVRM1^W4MAILZH
 ;
 S (SHNP,SHNH)=0
 F DT=DT1:1:DT2 D 
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...S A=$G(^(SIBA1))
 ...S ST="" D W
 ...S HNP=$P(A,"*") S SHNP=SHNP+HNP
 ...S HNH=$P(A,"*",2) S SHNH=SHNH+HNH
 ...S ST=$J(HNH,8,2)_"  "_$J(HNP,10,2)_" :"_$$HBR^%L1FRM(SIBA1,16) D W
 ;
 D KAV
  S ST=$J(SHNH,7,1)_" "_$J(SHNP,10,2)_" : k""dq" D W
  K @VRM1
 Q
 ;
 ;
KOT ;
 N SM1 I '$G(DISP) S SM1=0
 K PRINT S STZ="" D ^W4PCST(STZ,DISP)
 I $G(DISP)!'$D(%MDB("B"))!'$D(%MDP("N")) S (%MDP("B"),%MDP("N"))=""
 S STZ="" D ^W4PCST(STZ,DISP)
 N HD S HD=$G(@$$^W4GL("PL")@("ESEK",1.5))
 I HD="" S HD=$G(@$$^W4GL("PL")@("ESEK",1))
 S HD=$TR(HD,"#_","")
 ;
 I 'DISP D
 .D ^W4MDPPC
 .I $L(HD)<20 S HD=$G(%MDP("B"))_$$CENTRB^%L1FRM(HD)_$G(%MDP("N"))
 ;
 S STZ=HD D ^W4PCST(STZ,DISP)
 S STZ="" D ^W4PCST(STZ,DISP)
 S STZ=$J($TR(@$$^W4GL("PL")@("ESEK",2),"#_",""),32) D ^W4PCST(STZ,DISP)
 S STZ=$J($TR(@$$^W4GL("PL")@("ESEK",4)_" .n.r","#_",""),32) D ^W4PCST(STZ,DISP)
 S STZ="" D ^W4PCST(STZ,DISP)
 Q
 ;
SUM(P1TOT) ;
 D RNGDAT(P1TOT)
 ;
 D ^W4IN
 ;
 D PUT^%W1PRM("W4SUM",0)
 D PUT^%W1PRM("P1TOT",P1TOT)
 ;
 J ^W4SUMDAT(DAT1,DAT2,JB,P1X)
 ;
 F J=1:1:1000 Q:$$GETP^%W1PRM("W4SUM")  H 1 W "."
 Q
 ;
 ;
DMANY(P1TOT,P1X) ;
 N (JB,%ARG,%REM,DISP,P1TOT,P1X)
 ;;K @$$^W4MAIN("VRMSUM")
 I '$D(DISP) S DISP=1
 ;
 I $G(P1X)["SHUL," S P1X("SHUL")=+$P(P1X,",",2),P1X=7
 I $G(P1X)["PART," S P1X("PART")=+$P(P1X,",",2),P1X=8
 I $G(P1X)["ULAM," S P1X("ULAM")=+$P(P1X,",",2),P1X=9
 ;
 D ^W4DMANYC
 ;
 Q
 ;
 ;
RNGDAT(P1TOT) ;
 S DAT1=$P(P1TOT,"-")
 S DAT2=$P(P1TOT,"-",2)
 I DAT2="" S DAT2=DAT1
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 S RNGDAT=$S(DAT1'=DAT2:DAT1_" - "_DAT2,1:DAT1)
 Q
 ;
 ;
INIT ;
 I '$G(JB) S JB=1
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 ;
 I +$$GETP^%W1PRM("MSD")=0 D
 .S %ARG("MSD")=1,MSD=1
 .D PUT^%W1PRM("MSD",1)
 ;
 D PUT^%W1PRM("VP","TELMENU")
 D PUT^%W1PRM("SMALL",1)
 I $G(%ARG("NOSMALL")) D PUT^%W1PRM("NOSMALL",1)
 I $$GETP^%W1PRM("NOSMALL") D PUT^%W1PRM("SMALL",0)
 D ^W4BGBODY
 D CLEAR
 I $G(%ARG("SIMUL"))'="" D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 Q
 ;
 ;
CLEAR ;
 D CLEAR^W4SCASK
 K @$$^W4MAIN("TMPS111")
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM1")
 K @$$^W4MAIN("VRM2")
 K @$$^W4MAIN("VRMASK")
 K @$$^W4MAIN("TMPZ")
 K @$$^W4MAIN("TMPMLZ")
 K @$$^W4MAIN("TMPPOS")
 K @$$^W4MAIN("TMPATAR")
 Q
 ;
CREATE ; 
 N (JB,%ARG)
 S VP="TELMENU" 
 S DAT1=$$GETDAT("MEDATE")
 S DAT2=$$GETDAT("ADDATE")
 ;
 S DOCH=$$GETP^%W1PRM("TELREP") Q:DOCH=""
 ;
 I '$$CSR D CREATE^W4ASK(VP,DOCH) 
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 D GLBL^W4TELMLZ
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .N VT S VT="" F  S VT=$O(@GLBL@(VT)) Q:VT=""  D
 ..S MLZ="" F  S MLZ=$O(@GLBL@(VT,1,MLZ)) Q:MLZ=""  I $G(^(MLZ)) D
 ...I DOCH["MLZ",$L(MLZ)<5 Q
 ...I DOCH["MSH",$L(MLZ)=5 Q
 ...S @VRM@(MLZ)=""
 ;
 N N,MLZ,NM S N=""
 S MLZ=""
 K @$$^W4MAIN("TMPMLZ")
 N N S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S NM=""
 .I DOCH["MLZ" S NM=$$^W4NAME(N)
 .I DOCH["MSH" S NM=$G(@$$^W4GL("P1SL")@(N))
 .Q:NM=""
 .S IND=$$ENG^%L1FRM($$INV^%L1FRM(NM),10)_"_"_$J(N,5)
 .S @$$^W4MAIN("TMPMLZ")@(IND)=NM
 ;
 K @VRM
 Q
 ;
 ;
SHOW(N,DOCH)
 S N=$$DOP^W4NAME(N)
 I '$$GET1^W4LEVPR(N,"PAIL") Q 0
 I DOCH["MLZ",'$$OVTIP^W4HZGMLZ(N),'$$MNL^W4SETSUG(N) Q 0
 I DOCH["MSH",'$$MKBL^W4SETSUG(N) Q 0
 Q 1
 ;
GETDAT(DATID) ;
 I $$CSR Q $G(%ARG(DATID))
 I $G(%ARG("VZ"))="ASK"!($$GETP^%W1PRM("VZ")="ASK") Q $$GET^W4TMPANS("TELMENU",DATID)
 Q $G(@$$^W4MAIN("VRMASK")@(DATID))
 ;
P1X(P1X) ;
 I P1X["SHUL," S P1X=7,P1X("SHUL")=+$P(P1X,",",2)
 Q
 ;
CSR(STAM) ; 
 I $G(%ARG("CODREP"))'="" Q 1
 Q 0
 ;
 ;
DOP(DOCH) 
 N PRM S PRM=""
 I $$CSR,$G(%ARG("DOP")) Q $G(%ARG("DOP"))
 ;
 I DOCH="TBL" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICETABLE")
 ;
 I DOCH="POS" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEPOSITION")
 ;
 I DOCH="ULM" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEATAR")
 ;
 I DOCH["MLZ" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEWAITER")
 ;
 I DOCH["MSH" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEMESSENGER")
 ;
 Q PRM 
 ;
 ;
PRINT(PRM) ; 
 N (JB,%ARG,%REM,PRM) 
 S DOCH=$P(PRM,";") 
 S %ARG("CODREP")=DOCH
 S %ARG("MEDATE")=$P(PRM,";",2) 
 S %ARG("ADDATE")=$P(PRM,";",3) 
 S %ARG("DOP")=$P(PRM,";",4) 
 S %ARG("PRINT")=1 
 Q $$W4TELREP(DOCH,0) 
 ;
PRINT1(PRM)
 S RES=$$PRINT(PRM)
 Q
 ;
DIVDOP(DOCH) ; 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""font-size:"_$$^W3FSZ(12)_""" >",!
 W "<br>",!
 I DOCH["MLZ" W $$^%W1DICT("CHOICEWAITER")
 I DOCH["MSH" W $$^%W1DICT("CHOICEMESSENGER")
 I DOCH["TBL" W $$^%W1DICT("CHOICETABLE")
 I DOCH["POS" W $$^%W1DICT("CHOICEPOSITION")
 I DOCH["ULM" W $$^%W1DICT("CHOICEATAR")
 W " "
 D DOP^W4CSRREP(DOCH)
 W " &nbsp;&nbsp;"
 W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" style=""color:green"" onClick=""ClickDop()"" />"
 W "</div>",!
 Q
 ;
 ;
ZRS(DT1,DT2) ; 
 N (JB,%ARG,DT1,DT2,DISP)
 S GLOB=$$^W4GL("Z1")_"(DAT)"
 S TOT=0
 I '$G(DISP) D ^W4MDPPC
 ;
 S ST="" D W
 S ST=$ZD(DT2,"DD.MM.YY")_" cr "_$ZD(DT1,"DD.MM.YY")_" -n m- Z fekix" D W
 S ST="" D W
 D KAV
 S ST="  mekq   : dwtd onf :   jix`z  :  Z  ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  K Z D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S TIME=$G(^(N1))
 ..S TRH=$P(TIME,"\")
 ..I TRH="" S TRH=$ZD(DT,"DD.MM.YY")
 ..S SHAA=$P(TIME,"\",2)
 ..I SHAA["^" S SHAA=$P(SHAA,"^")
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(N2)=$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z("MTB",N3)=$G(^(N3))
 ..
 ..S Z("V")=0 F J=1:1:9 S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 ..S Z("A")=$G(Z("F"))+$G(Z("G"))+$G(Z("V"))+$G(Z("MP"))
 ..
 ..I '$$^W4TIPPD(DT) D
 ...S Z("A")=Z("A")-$G(Z("T"))
 ..
 ..S TOT=TOT+Z("A")
 ..S ST=$J(Z("A"),8,2)_" :   "_$TR(SHAA,":","-")_"  : "_$ZD(DT,"DD.MM.YY")_" : "_$J(NZ,5) D W
 ;
 D KAV
 ;
 I $G(DISP) D
 .S ST=$J(TOT,9,2)_" : k""dq :       " D W
 .S %ARG("MIN2DV",2)=""
 .S %ARG("COLOR",2)="GRED"
 .S %ARG("COLOR",3)="GREY"
 ;
 I '$G(DISP) D
 .S ST=%MDP("B")_$J(TOT,8,2)_" : k""dq   "_%MDP("N") D W
 .D ^W4CUT(PRINT,$G(%MDP("CUT")))
 ;
 Q
 ;
 ;
S1PC ; 
 N TMPS111 D TMPS111
 N PRINT,TXT,%MDP
 D ^W4MDPPC Q:$G(PRINT)=""
 I '$D(SM1) S SM1=1
 I '$D(GWPC) S GWPC=39
 ;
 N N S N="" F  S N=$O(@TMPS111@(N)) Q:N=""  I N S TXT=$G(^(N)) D
 .D
 ..I TXT[":" D  Q
 ...N L,VL S VL=$P(TXT,":"),L=$L(VL) I L<8 S L=8
 ...N TX S TX=$P(TXT,":",2,20)
 ...D DLG^%L1FRM(TX,GWPC-L-3)
 ...S TXT=$J(VL,L)_" : "_%CHAST(1,1) D S1^W4PCST
 ...N J F J=2:1 Q:'$D(%CHAST(1,J))  D
 ....S TXT=$J("",L)_"   "_%CHAST(1,J) D S1^W4PCST
 ..
 ..S TXT=$$HBR^%L1FRM(TXT,GWPC)
 ..D S1^W4PCST
 .
 .I '$D(S1PC("NOSPACE")) S TXT="" D S1^W4PCST
 ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
TMPS111 ; 
 S TMPS111=$$^W4MAIN("TMPS111")
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TELREP
W4TELREP(DOCH,DISP) ; [ 14.04.26 02:42 ] [ 08.04.25 07:58 ] [ 14.03.24 15:25 ] 
 N (JB,%ARG,%REM,DOCH,DISP,NOBACKBUT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 K @$$^W4MAIN("VRMSUM")
 ;
 S VZ=$$GETP^%W1PRM("VZ")
 ;
 S DAT1=$$GETDAT("MEDATE")
 S DAT2=$$GETDAT("ADDATE")
 ;
 I $G(%ARG("PRINT")) S DISP=0
 I '$D(DISP) S DISP=1
 I $$^W4SMALL S DISP=1
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 D PUT^%W1PRM("TELREP",DOCH)
 ;
 S CODREP=$G(%ARG("CODREP"))
 ;
 I $$CSR,DOCH["MLZ"!(DOCH["MSH"),DOCH[1,$G(DISP),$G(%ARG("DOP"))="" D DIVDOP(DOCH) Q 1
 I $$CSR,DOCH="TBL"!(DOCH="POS")!(DOCH="ULM"),$G(DISP),$G(%ARG("DOP"))="" D DIVDOP(DOCH) Q 1
 ;
 D PUT^%W3DEB("W4TELREP","DOCH=DOCH & DISP=DISP & DAT1=DAT1&DAT2=DAT2&CODREP=CODREP")
 D ^W4IN
 ;
 K @$$^W4MAIN("VRMS")
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("TEMP")
 K @$$^W4MAIN("TMPS111")
 ;
 S P1TOT=DAT1_"-"_DAT2
 ;
 ;--------------------------- PRINT REPORT HEADER
 D KOT
 I DOCH="ZRS"!(DOCH="GAPZ") G P10
 ;
 S P1X=""
 I DOCH="TBL" S P1X="SHUL,"_$$DOP("TBL")
 I DOCH="POS" S P1X="PART,"_$$DOP("POS")
 I DOCH="ULM" S P1X="ULAM,"_$$DOP("ULM")
 ;
 D SUM(P1TOT)
 ;
P10 ;
 D DJ ; ------------- HAHANAT KVAZIM LE DOCH
 I $G(DISP),$G(DOCH)'="MNS",$G(DOCH)'="GAPZ" D VIEW
 L  Q 1
 ;
 ;
DJ ;-------------------- DOCH JOMI
 I DOCH="MNY"!(DOCH="TBL")!(DOCH="POS")!(DOCH="ULM") D  Q
 .D DMANY(P1TOT,P1X)
 ;
 I DOCH="MNS" D  G DJE
 .S PCPROG="W4GAPREP" D PC
 ;
 I DOCH="DLVGAP" D  G DJE
 .N SND S SND=0
 .I $G(%ARG("REPFORM")) S SND=.5
 .D ^W4GAP(JB,DT1,DT2,SND)
 .N S1PC,SM1,GWPC S SM1=0,GWPC=40
 .I $G(DISP)=0 D S1PC
 ;
 I DOCH="GAPZ" D  G DJE
 .D ^W4GAPZ(DT1,DT2)
 .N S1PC,SM1,GWPC S SM1=0,GWPC=40
 .I $G(DISP)=0 D S1PC
 ;
 D TMPS111
 K @TMPS111
 ;
 I DOCH["MLZ" D
 .S PRMSD=1
 .S PCPROG="W4TELMLZ" D PC
 ;
 I DOCH["MSHD" D ^W4HZHC2 G DJE
 ;
 I DOCH["MSH" D
 .S PRMSD=0
 .S PCPROG="W4TELMLZ" D PC
 ;
 I DOCH="DCLK" D ^W4DCLKS(DT1,DT2,'$G(DISP)) K @$$^W4MAIN("TMPS111") D PC G DJE 
 ;
 I DOCH="LKH" D
 .S PCPROG="W4DLK" D PC
 ;
 I DOCH="PAR"!(DOCH="DEP")!(DOCH="KVZ") D
 .D PARZ(DT1,DT2)
 ;
 I DOCH="BIT"!(DOCH="BITD") D DBIT(DT1,DT2)
 ;
 I DOCH="HNH"!(DOCH="HNHD") D DHNH(DT1,DT2)
 ;
 I DOCH="CIB" D ^W4DCIBZ
 ;
 I DOCH="TLM" D
 .D ^W4DTLM(P1DZ)
 ;
 I DOCH="TNB" D DCMPN($$^W4TBLKH,"qia oz",DT1,DT2)
 I DOCH="CPN" D DCMPN($$^W4CPNLKH,"oetpetew",DT1,DT2)
 I DOCH="ZRS" D ZRS(DT1,DT2)
 ;
DJE ;
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("VRM")
 Q:$G(DISP)
 ;;I $L($G(PRINT)) D ^W4CUT(PRINT,$G(%MDP("CUT"))) Q
 Q
 ;
 ;
PC ;
 I $L($G(PCPROG)) D @("^"_PCPROG)
 Q
 ;
 ;
PARZ(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2,DOCH,DISP,P1TOT,VZ,P1X)
 I '$G(DT2) S DT2=DT1
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("TEMP1"),@$$^W4MAIN("VRM")
 N DAT,DAT01,DAT02,DAT1,DAT2,MEDAT,ADDAT
 S MEDAT=$$^%L1DC(DT1,1)
 S ADDAT=$$^%L1DC(DT2,1)
 S GLB=$$^W4GL("PLUTOT")
 ;
 S %ARG("MEDAT")=MEDAT
 S %ARG("ADDAT")=ADDAT
 S %ARG("SET")=$G(%ARG("SET"))
 ;
 D TV^W4DP1
 I $G(DOCH)="KVZ" D ^W4SGKVZ(P1TOT,DISP) G EPARZ
 I $G(DOCH)="DEP" D ^W4SGDEP(P1TOT,DISP) G EPARZ
 ;
 S PCPROG="W4PARZ" D PC
EPARZ ;
 K @$$^W4MAIN("TEMP"),@$$^W4MAIN("TEMP1"),@$$^W4MAIN("VRM")
 Q
 ;
 ;
VIEW ;
 W "<div align=""center"" >",!
 ;
 I $G(DOCH)="DLVGAP",$G(%ARG("MEDATE"))=$G(%ARG("ADDATE")) D
 .W "<table dir="""_$$^%W1DIR_""" ><tr>",!
 .W "<td>"
 .W $$^%W1DICT("REPORTFORM")
 .W "<input type=""radio"" name=""repform"" "
 .I '$G(%ARG("REPFORM")) W "checked=""checked"" "
 .W "onClick=""ClickForm()"" "
 .W "/>",! 
 .W "</td>"
 .W "<td>"
 .W $$^%W1DICT("FILEFORM")
 .W "<input type=""radio"" name=""repform"" "
 .I $G(%ARG("REPFORM")) W "checked=""checked"" "
 .W "onClick=""ClickForm()"" "
 .W "/>",! 
 .W "</td>"
 .W "</tr></table>",!
 D BACKBUT
 W "<table dir="""_$$^%W1DIR_""" "
 D
 .I $G(DOCH)="DLVGAP" D  Q
 .. W "border=""1"" "
 .. W "cellspacing=""0"" "
 .. W "cellpadding=""5"" "
 . W "border=""0"" "
 W " style=""font-size:"_$$^W3FSZ(11)_""" "
 W ">",!
  N COL S COL=0
  N I F I=1:1 Q:'$D(@$$^W4MAIN("TMPS111")@(I))  D
  .W "<tr "
  .I $L($G(^(I,"COLOR"))) D
  ..W "style=""color:"_^("COLOR")_""" "
  .W ">"
  .D ^W4S1VW(I)
  .W "</tr>"
 W "</table>",!
 ;
 D BACKBUT
 W "</div>",!
 Q
 ;
 ;
REPORT(STAM) ;
 N SUGREP S SUGREP=$$GET^W4TMPANS("TELMENU","KINDOFREPORT")
 Q SUGREP
 ;
 ;
DISP(STAM) ;
 N REP S REP=$$GET^%W1PRM("REPORT")
 S REP=$P(REP,"::")
 I '$L(REP) Q ""
 Q +$$GET^W4TMPANS("TELMENU","KINDOFSHOW")
 ;
 ;
TBL ;
 D NOZERO^W4SCASK Q:$D(%SC("ER"))
 I '$D(@$$^W4GL("LKH")@(VL)) D
 .S %SC("ER")=1
 .S %SC("ER","MSG")="TABLENOTEXIST"
 Q
 ;
BACKBUT ;
 I $$CSR Q
 I $D(NOBACKBUT) Q
 W "<br><br>",!
 W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
 W " onClick=""Back()"" "
 W " style=""color:red;"_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(12)_""" "
 W " />"
 W "<br><br>",!
 Q
 ;
 ;
DCMPN(LKCMPN,HD,DT1,DT2) ;
 N DT,HZ,N,ST,STB
 ;
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"CB","ASR")) D
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 ...S A=$G(^(N)),LKHN=$P(A,"*") Q:LKHN'=LKCMPN
 ...D ^W4GTVCH(A,"ASR")
 ...S STB("Q")=$G(STB("Q"))+1
 ...S STB("S")=$G(STB("S"))+ASR
 ;
 S ST="" D W
 N ST0
 S (ST0,ST)="  "_$$^%L1DC(DT2,1)_" cr "_$$^%L1DC(DT1,1)_" -n "_HD_" zegewl g""ec" D W
 S ST=$TR($J("",$L(ST0))," ","-") D W
 S ST=" "_$J($G(STB("S")),7,2)_" k""dq "_$J($G(STB("Q")),5,0)_" zerepz 'qn" D W
 S ST="" D W
 I +$G(P1X)'=2,'$G(DISP) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
W D W1(ST,$G(DISP))
 K WCOLOR,PRKOT
 Q
 ;
W1(STZ,DISP) ;
 N (JB,%ARG,STZ,DISP,%MDP,PRINT,PRKOT,WCOLOR)
 I '$G(DISP),'$D(%MDP("B"))!'$D(%MDP("N"))!'$D(PRINT) D ^W4MDPPC
 ;
 N STZNP S STZNP=STZ
 I $D(%MDP("B")),$D(%MDP("N")) D
 .S STZNP=$$RPL^%L1FRM(STZ,%MDP("B"),"")
 .S STZNP=$$RPL^%L1FRM(STZNP,%MDP("N"),"")
 ;
 S STZNP=$$RPL^%L1FRM(STZNP,$C(27)_"W1","")
 S STZNP=$$RPL^%L1FRM(STZNP,$C(27)_"W0","")
 ;
 I $G(DISP) D  Q
 .N IND S IND=$O(@$$^W4MAIN("TMPS111")@(999999),-1)+1
 .S @$$^W4MAIN("TMPS111")@(IND)=$J("",20)_STZNP
 .I $G(PRKOT) S @$$^W4MAIN("TMPS111")@(IND,"KOT")=1
 .I $L($G(WCOLOR)) S @$$^W4MAIN("TMPS111")@(IND,"COLOR")=WCOLOR
 ;
 N TXT S TXT=STZ
S1 Q:'$G(PRINT)
 S:$D(TXT("R")) TXT=%MDP("R")_TXT_%MDP("RL")
 N SM S SM=6 S:$D(SM1) SM=SM1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 N ST S ST=$J("",SM)_$TR(TXT,TS0,TSS)
 I PRINT=54,$$^%L1T2P(ST) G ES1
 S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,""))+1)=ST
ES1 K TXT,STZ
 Q
 ;
CLRVIP ;
 N GLDEV S GLDEV=$$^W4DEV
 N N,IP S N="" F  S N=$O(@GLDEV@(N)) Q:N=""  D
 .S IP=$G(^(N))
 .I $G(^(N,"H"))="VIP" D
 ..K @$$^W4PLUK@(N)
 ..K @GLDEV@(N)
 ..I IP K @$$^W4DEVI@(IP)
 Q
 ;
 ;
DBIT(DT1,DT2) ;
 N (JB,%ARG,%REM,DT1,DT2,P1TOT,DISP,DOCH)
 ;
 D CRVRM^W4MAILZB(DT1,DT2) ; --> VRM
 ;
 S ST=$ZD(DT2,"DD.MM.YY")_" cr "_$ZD(DT1,"DD.MM.YY")_" -n milehia g""ec" D W
 ;
 I DOCH="BITD" G DBITD
 ;
 D KAV
 S ST="  mekq :zenk: `vi:         daiq       ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SKAM,SSUM,PRKOT
 S (SKAM,SSUM)=0
 S SIBA="" F  S SIBA=$O(@VRM@(SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM@(SIBA,SIBA1)) Q:SIBA1=""  D
 ..S EXIT="" F  S EXIT=$O(@VRM@(SIBA,SIBA1,EXIT)) Q:EXIT=""  D
 ...S A=$G(^(EXIT))
 ...S KAM=-$P(A,"*") S SKAM=SKAM+KAM
 ...S SUM=-$P(A,"*",2) S SSUM=SSUM+SUM
 ...S ST=$J(SUM,6,1)_" :"_$J(KAM,3)_" : "
 ...S ST=ST_$S(EXIT:"ok",1:"`l")_" : "
 ...S ST=ST_$$HBR^%L1FRM(SIBA1,20) D W
 ...S SKAM(EXIT)=$G(SKAM(EXIT))+KAM
 ...S SSUM(EXIT)=$G(SSUM(EXIT))+SUM
 ;
 D KAV
  S ST=$J(+SSUM,6,1)_": "_$J(+SKAM,4)_" ::  k""dq " D W
 D KAV
  S ST=$J(+$G(SSUM(1)),6,1)_" :"_$J(+$G(SKAM(1)),3)_" :: `vi k""dq" D W
  S ST=$J(+$G(SSUM(0)),6,1)_" :"_$J(+$G(SKAM(0)),3)_" :: `vi `l k""dq" D W
 K @VRM,@VRM1
 Q
 ;
DBITD ;
 D KAV
 S ST="  mekq :zenk: `vi: dpnfd ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SKAM,SSUM,PRKOT
 S (SKAM,SSUM)=0
 F DT=DT1:1:DT2 D
 .S FRST=1
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...I FRST D
 ....S ST="" D W S ST="" D W
 ....S ST="---------- "_$ZD(DT,"DD.MM.YY")_" ----------",WCOLOR="green" D W
 ....S FRST=0
 ...S ST="" D W
 ...S ST=$$HBR^%L1FRM(SIBA1,26)_" ---",WCOLOR="brown" D W
 ...
 ...S EXIT="" F  S EXIT=$O(@VRM1@(DT,SIBA,SIBA1,EXIT)) Q:EXIT=""  D
 ....S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,EXIT,HZM)) Q:HZM=""  D
 .....S A=$G(^(HZM))
 .....S KAM=-$P(A,"*") D
 ......S SKAM=$G(SKAM)+KAM
 ......S SKAM(DT)=$G(SKAM(DT))+KAM
 ......S SKAM(EXIT)=$G(SKAM(EXIT))+KAM
 .....S SUM=-$P(A,"*",2) D
 ......S SSUM=$G(SSUM)+SUM
 ......S SSUM(DT)=$G(SSUM(DT))+SUM
 ......S SSUM(EXIT)=$G(SSUM(EXIT))+SUM
 .....S ST=$J(SUM,6,1)_" :"_$J(KAM,3)_" : "
 .....S ST=ST_$S(EXIT:"ok",1:"`l")_" : "
 .....S ST=ST_$J(HZM,7) D W
 .
 .I $D(SSUM(DT))!$D(SKAM(DT)) D
 ..D KAV
 ..S ST=$J($G(SSUM(DT)),7,1)_" :"_$J($G(SKAM(DT)),8,2)_" :: "_$ZD(DT,"DD.MM.YY")_" k""dq" D W
 ;
 D KAV
  S ST=$J(+SSUM,6,1)_": "_$J(+SKAM,4)_" ::  k""dq " D W
 D KAV
  S ST=$J(+$G(SSUM(1)),6,1)_" :"_$J(+$G(SKAM(1)),3)_" :: `vi k""dq" D W
  S ST=$J(+$G(SSUM(0)),6,1)_" :"_$J(+$G(SKAM(0)),3)_" :: `vi `l k""dq" D W
 K @VRM,@VRM1
 Q
 ;
KAV ;
 S ST=$TR($J("",38)," ","-")
 D W
 Q
 ;
DHNH(DT1,DT2) ;
 N (JB,%ARG,DT1,DT2,DOCH,DISP,DT1,DT2,P1TOT)
 ;
 S METRH=$$^%L1DC(DT1,1)
 S ADTRH=$$^%L1DC(DT2,1)
 ;
 D TRH^W4DHNHA ; --> VRM
 ;
 S VRM1=$$^W4MAIN("VRM1")
 S VRM2=$$^W4MAIN("VRM2") K @VRM2
 ;
 S ST=$ZD(DT2,"DD.MM.YY")_" cr "_$ZD(DT1,"DD.MM.YY")_" -n zegpd g""ec" D W
 ;
 I DOCH="HNHD" G DHNHD
 ;
 F DT=DT1:1:DT2 D
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:HZM=""  D
 ....S B=$G(^(HZM))
 ....S A=$G(@VRM2@(SIBA,SIBA1))
 ....S @VRM2@(SIBA,SIBA1)=$P(A,"*")+$P(B,"*")_"*"_($P(A,"*",2)+$P(B,"*",2))
 ;
 D KAV
 S ST=" oeaygl :hixtl zegpd:       daiq       " S PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SHNH,SHNP
 S SIBA="" F  S SIBA=$O(@VRM2@(SIBA)) Q:SIBA=""  D
 .S SIBA1="" F  S SIBA1=$O(@VRM2@(SIBA,SIBA1)) Q:SIBA1=""  D
 ..S A=$G(^(SIBA1))
 ..S HNP=$P(A,"*") D
 ...S SHNP=$G(SHNP)+HNP
 ..S HNH=$P(A,"*",2) D
 ...S SHNH=$G(SHNH)+HNH
 ..S ST=$J(HNH,7,2)_" :"_$J(HNP,8,2)_" :"_$J(SIBA1,20) D W
 ;
 D KAV
 S ST=$J($G(SHNH),7,1)_" :"_$J($G(SHNP),8,2)_" : k""dq" D W
 K @VRM1,@VRM2
 Q
 ;
DHNHD ; 
 D KAV
 ;;S ST="------------- daiq ----------- " D W
 S ST=" oeaygl : hixtl zegpd:  dpnfd " S PRKOT=1 D W K PRKOT
 D KAV
 ;
 K SHNP,SHNH
 S (SHNP,SHNH)=0
 ;
 F DT=DT1:1:DT2 D
 .S FRST=1
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...I FRST D
 ....S ST="" D W S ST="" D W
 ....S ST="---------- "_$ZD(DT,"DD.MM.YY")_" ----------" S WCOLOR="green" D W
 ....S FRST=0
 ...S ST="" D W
 ...S ST=$$HBR^%L1FRM(SIBA1,26)_" ---",WCOLOR="brown" D W
 ...S HZM="" F  S HZM=$O(@VRM1@(DT,SIBA,SIBA1,HZM)) Q:HZM=""  D
 ....S A=$G(^(HZM))
 ....S HNP=$P(A,"*") D
 .....S SHNP=$G(SHNP)+HNP,SHNP(DT)=$G(SHNP(DT))+HNP
 ....S HNH=$P(A,"*",2) D
 .....S SHNH=$G(SHNH)+HNH
 .....S SHNH(DT)=$G(SHNH(DT))+HNH
 ....S ST=$J(HNH,7,2)_" :"_$J(HNP,8,2)_" :"_$J(HZM,7) D W
 .
 .I $D(SHNH(DT))!$D(SHNP(DT)) D
 ..D KAV
 ..S ST=$J($G(SHNH(DT)),7,1)_" :"_$J($G(SHNP(DT)),8,2)_" : "_$ZD(DT,"DD.MM.YY")_" k""dq" D W
 ;
 D KAV
 S ST=$J(SHNH,7,1)_" :"_$J(SHNP,8,2)_" : k""dq" D W
 K @VRM1
 Q
 ;
RKZHNH ;
 D KAV N PRKOT
 S ST=" oeaygl :hixtl zegpd:      daiq      ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 D RKZVRM1^W4MAILZH
 ;
 S (SHNP,SHNH)=0
 F DT=DT1:1:DT2 D 
 .S SIBA="" F  S SIBA=$O(@VRM1@(DT,SIBA)) Q:SIBA=""  D
 ..S SIBA1="" F  S SIBA1=$O(@VRM1@(DT,SIBA,SIBA1)) Q:SIBA1=""  D
 ...S A=$G(^(SIBA1))
 ...S ST="" D W
 ...S HNP=$P(A,"*") S SHNP=SHNP+HNP
 ...S HNH=$P(A,"*",2) S SHNH=SHNH+HNH
 ...S ST=$J(HNH,8,2)_"  "_$J(HNP,10,2)_" :"_$$HBR^%L1FRM(SIBA1,16) D W
 ;
 D KAV
  S ST=$J(SHNH,7,1)_" "_$J(SHNP,10,2)_" : k""dq" D W
  K @VRM1
 Q
 ;
 ;
KOT ;
 N SM1 I '$G(DISP) S SM1=0
 K PRINT S STZ="" D ^W4PCST(STZ,DISP)
 I $G(DISP)!'$D(%MDB("B"))!'$D(%MDP("N")) S (%MDP("B"),%MDP("N"))=""
 S STZ="" D ^W4PCST(STZ,DISP)
 N HD S HD=$G(@$$^W4GL("PL")@("ESEK",1.5))
 I HD="" S HD=$G(@$$^W4GL("PL")@("ESEK",1))
 S HD=$TR(HD,"#_","")
 ;
 I 'DISP D
 .D ^W4MDPPC
 .I $L(HD)<20 S HD=$G(%MDP("B"))_$$CENTRB^%L1FRM(HD)_$G(%MDP("N"))
 ;
 S STZ=HD D ^W4PCST(STZ,DISP)
 S STZ="" D ^W4PCST(STZ,DISP)
 S STZ=$J($TR(@$$^W4GL("PL")@("ESEK",2),"#_",""),32) D ^W4PCST(STZ,DISP)
 S STZ=$J($TR(@$$^W4GL("PL")@("ESEK",4)_" .n.r","#_",""),32) D ^W4PCST(STZ,DISP)
 S STZ="" D ^W4PCST(STZ,DISP)
 Q
 ;
SUM(P1TOT) ;
 D RNGDAT(P1TOT)
 ;
 D ^W4IN
 ;
 D PUT^%W1PRM("W4SUM",0)
 D PUT^%W1PRM("P1TOT",P1TOT)
 ;
 J ^W4SUMDAT(DAT1,DAT2,JB,P1X)
 ;
 F J=1:1:1000 Q:$$GETP^%W1PRM("W4SUM")  H 1 W "."
 Q
 ;
 ;
DMANY(P1TOT,P1X) ;
 N (JB,%ARG,%REM,DISP,P1TOT,P1X)
 ;;K @$$^W4MAIN("VRMSUM")
 I '$D(DISP) S DISP=1
 ;
 I $G(P1X)["SHUL," S P1X("SHUL")=+$P(P1X,",",2),P1X=7
 I $G(P1X)["PART," S P1X("PART")=+$P(P1X,",",2),P1X=8
 I $G(P1X)["ULAM," S P1X("ULAM")=+$P(P1X,",",2),P1X=9
 ;
 D ^W4DMANYC
 ;
 Q
 ;
 ;
RNGDAT(P1TOT) ;
 S DAT1=$P(P1TOT,"-")
 S DAT2=$P(P1TOT,"-",2)
 I DAT2="" S DAT2=DAT1
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S DAT1=$ZD(DT1,"DD.MM.YY")
 S DAT2=$ZD(DT2,"DD.MM.YY")
 S RNGDAT=$S(DAT1'=DAT2:DAT1_" - "_DAT2,1:DAT1)
 Q
 ;
 ;
INIT ;
 I '$G(JB) S JB=1
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 ;
 I +$$GETP^%W1PRM("MSD")=0 D
 .S %ARG("MSD")=1,MSD=1
 .D PUT^%W1PRM("MSD",1)
 ;
 D PUT^%W1PRM("VP","TELMENU")
 D PUT^%W1PRM("SMALL",1)
 I $G(%ARG("NOSMALL")) D PUT^%W1PRM("NOSMALL",1)
 I $$GETP^%W1PRM("NOSMALL") D PUT^%W1PRM("SMALL",0)
 D ^W4BGBODY
 D CLEAR
 I $G(%ARG("SIMUL"))'="" D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 Q
 ;
 ;
CLEAR ;
 D CLEAR^W4SCASK
 K @$$^W4MAIN("TMPS111")
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM1")
 K @$$^W4MAIN("VRM2")
 K @$$^W4MAIN("VRMASK")
 K @$$^W4MAIN("TMPZ")
 K @$$^W4MAIN("TMPMLZ")
 K @$$^W4MAIN("TMPPOS")
 K @$$^W4MAIN("TMPATAR")
 Q
 ;
CREATE ; 
 N (JB,%ARG)
 S VP="TELMENU" 
 S DAT1=$$GETDAT("MEDATE")
 S DAT2=$$GETDAT("ADDATE")
 ;
 S DOCH=$$GETP^%W1PRM("TELREP") Q:DOCH=""
 ;
 I '$$CSR D CREATE^W4ASK(VP,DOCH) 
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 N VRM S VRM=$$^W4MAIN("VRM") K @VRM
 D GLBL^W4TELMLZ
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .N VT S VT="" F  S VT=$O(@GLBL@(VT)) Q:VT=""  D
 ..S MLZ="" F  S MLZ=$O(@GLBL@(VT,1,MLZ)) Q:MLZ=""  I $G(^(MLZ)) D
 ...I DOCH["MLZ",$L(MLZ)<5 Q
 ...I DOCH["MSH",$L(MLZ)=5 Q
 ...S @VRM@(MLZ)=""
 ;
 N N,MLZ,NM S N=""
 S MLZ=""
 K @$$^W4MAIN("TMPMLZ")
 N N S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S NM=""
 .I DOCH["MLZ" S NM=$$^W4NAME(N)
 .I DOCH["MSH" S NM=$G(@$$^W4GL("P1SL")@(N))
 .Q:NM=""
 .S IND=$$ENG^%L1FRM($$INV^%L1FRM(NM),10)_"_"_$J(N,5)
 .S @$$^W4MAIN("TMPMLZ")@(IND)=NM
 ;
 K @VRM
 Q
 ;
 ;
SHOW(N,DOCH)
 S N=$$DOP^W4NAME(N)
 I '$$GET1^W4LEVPR(N,"PAIL") Q 0
 I DOCH["MLZ",'$$OVTIP^W4HZGMLZ(N),'$$MNL^W4SETSUG(N) Q 0
 I DOCH["MSH",'$$MKBL^W4SETSUG(N) Q 0
 Q 1
 ;
GETDAT(DATID) ;
 I $$CSR Q $G(%ARG(DATID))
 I $G(%ARG("VZ"))="ASK"!($$GETP^%W1PRM("VZ")="ASK") Q $$GET^W4TMPANS("TELMENU",DATID)
 Q $G(@$$^W4MAIN("VRMASK")@(DATID))
 ;
P1X(P1X) ;
 I P1X["SHUL," S P1X=7,P1X("SHUL")=+$P(P1X,",",2)
 Q
 ;
CSR(STAM) ; 
 I $G(%ARG("CODREP"))'="" Q 1
 Q 0
 ;
 ;
DOP(DOCH) 
 N PRM S PRM=""
 I $$CSR,$G(%ARG("DOP")) Q $G(%ARG("DOP"))
 ;
 I DOCH="TBL" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICETABLE")
 ;
 I DOCH="POS" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEPOSITION")
 ;
 I DOCH="ULM" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEATAR")
 ;
 I DOCH["MLZ" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEWAITER")
 ;
 I DOCH["MSH" D
 .S PRM=$$GET^W4TMPANS("TELMENU","CHOICEMESSENGER")
 ;
 Q PRM 
 ;
 ;
PRINT(PRM) ; 
 N (JB,%ARG,%REM,PRM) 
 S DOCH=$P(PRM,";") 
 S %ARG("CODREP")=DOCH
 S %ARG("MEDATE")=$P(PRM,";",2) 
 S %ARG("ADDATE")=$P(PRM,";",3) 
 S %ARG("DOP")=$P(PRM,";",4) 
 S %ARG("PRINT")=1 
 Q $$W4TELREP(DOCH,0) 
 ;
PRINT1(PRM)
 S RES=$$PRINT(PRM)
 Q
 ;
DIVDOP(DOCH) ; 
 W "<div dir="""_$$^%W1DIR_""" align=""center"" style=""font-size:"_$$^W3FSZ(12)_""" >",!
 W "<br>",!
 I DOCH["MLZ" W $$^%W1DICT("CHOICEWAITER")
 I DOCH["MSH" W $$^%W1DICT("CHOICEMESSENGER")
 I DOCH["TBL" W $$^%W1DICT("CHOICETABLE")
 I DOCH["POS" W $$^%W1DICT("CHOICEPOSITION")
 I DOCH["ULM" W $$^%W1DICT("CHOICEATAR")
 W " "
 D DOP^W4CSRREP(DOCH)
 W " &nbsp;&nbsp;"
 W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" style=""color:green"" onClick=""ClickDop()"" />"
 W "</div>",!
 Q
 ;
 ;
ZRS(DT1,DT2) ; 
 N (JB,%ARG,DT1,DT2,DISP)
 S GLOB=$$^W4GL("Z1")_"(DAT)"
 S (TOT,TOTH)=0
 I '$G(DISP) D ^W4MDPPC
 ;
 S ST="" D W
 S ST=$ZD(DT2,"DD.MM.YY")_" cr "_$ZD(DT1,"DD.MM.YY")_" -n m- Z fekix  " D W
 S ST="" D W
 D KAV
 S ST="  dtwd  :  oeict :   jix`z  :  Z  ",PRKOT=1 D W K PRKOT
 D KAV
 ;
 F DT=DT1:1:DT2 D
 .S DAT=$ZD(DT,"YYMMDD")
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  K Z D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S TIME=$G(^(N1))
 ..S TRH=$P(TIME,"\")
 ..I TRH="" S TRH=$ZD(DT,"DD.MM.YY")
 ..S SHAA=$P(TIME,"\",2)
 ..I SHAA["^" S SHAA=$P(SHAA,"^")
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(N2)=$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z("MTB",N3)=$G(^(N3))
 ..
 ..S Z("V")=0 F J=1:1:9 D
 ...I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ...S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 ..
 ..S Z("A")=$G(Z("F"))+$G(Z("G"))+$G(Z("V"))+$G(Z("MP"))
 ..
 ..I '$$^W4TIPPD(DT) D
 ...S Z("A")=Z("A")-$G(Z("T"))
 ..
 ..S TOT=TOT+Z("A")
 ..S TOTH=TOTH+Z("H")
 ..S ST=$J(Z("H"),8,2)_" : "_$J(Z("A"),8,2)_" : "_$ZD(DT,"DD.MM.YY")_" : "_$J(NZ,5) D W
 ;
 D KAV
 ;
 I $G(DISP) D
 .S ST=$J(TOTH,9,2)_" : "_$J(TOT,9,2)_" : k""dq :       " D W
 .S ST=$J(TOTH+TOT,9,2)_" :       : zexikn k""dq :      " D W
 .S %ARG("MIN2DV",2)=""
 .S %ARG("COLOR",2)="GRED"
 .S %ARG("COLOR",3)="GREY"
 ;
 I '$G(DISP) D
 .S ST=$J(TOTH,8,2)_" : "_$J(TOT,8,2)_" : k""dq   " D W
 .S ST=$J(TOTH+TOT,8,2)_" : zexikn k""dq   " D W
 .D ^W4CUT(PRINT,$G(%MDP("CUT")))
 ;
 Q
 ;
 ;
S1PC ; 
 N TMPS111 D TMPS111
 N PRINT,TXT,%MDP
 D ^W4MDPPC Q:$G(PRINT)=""
 I '$D(SM1) S SM1=1
 I '$D(GWPC) S GWPC=39
 ;
 N N S N="" F  S N=$O(@TMPS111@(N)) Q:N=""  I N S TXT=$G(^(N)) D
 .D
 ..I TXT[":" D  Q
 ...N L,VL S VL=$P(TXT,":"),L=$L(VL) I L<8 S L=8
 ...N TX S TX=$P(TXT,":",2,20)
 ...D DLG^%L1FRM(TX,GWPC-L-3)
 ...S TXT=$J(VL,L)_" : "_%CHAST(1,1) D S1^W4PCST
 ...N J F J=2:1 Q:'$D(%CHAST(1,J))  D
 ....S TXT=$J("",L)_"   "_%CHAST(1,J) D S1^W4PCST
 ..
 ..S TXT=$$HBR^%L1FRM(TXT,GWPC)
 ..D S1^W4PCST
 .
 .I '$D(S1PC("NOSPACE")) S TXT="" D S1^W4PCST
 ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
TMPS111 ; 
 S TMPS111=$$^W4MAIN("TMPS111")
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TFKNET
W4TFKNET ; [ 08.04.24 17:06 ] [ 05.10.23 09:46 ] [ 23.06.23 14:00 ] 
 I $G(JB)="" W "JB NOT DEFINED !" Q
 N MSDR,W3MSDR,TMP,TMPSN
 S MSDR=$G(%ARG("MSDR"))
 S W3MSDR="^|$$^W3MAIN|W3MSDR"
 I MSDR="" W "MSDR NOT DEFINED !" Q
 K %L1PC
 D ^%W1ARG
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S %REPN="W4TFKNET"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("MSDR")=MSDR
 S TMPSN="^|$$^W3MAIN|TMPSN" K @TMPSN
 ;
 S N="" F  S N=$O(@W3MSDR@(MSDR,N)) Q:N=""  D
 .S @TMPSN@(N)=$$MSD^W3R(N)
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("BEGIN")=1
 S @$$^%W1GLPRM@("MSDR")=MSDR
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 S MSDR=+$G(MSDR)
 Q
 ;
 ;
DAT ;
 S DAT=$ZD(DT,"DD.MM.YY")
 I DT<$G(MEDAT) S OK=0 Q
 I DT>$G(ADDAT) S OK=2 Q
 Q
 ;
NP ;
 ;;N MSD1 S MSD1=$G(^|$$^W3MAIN|W3MSD(MSD))
 N MSDR S MSDR=$G(@$$^%W1GLPRM@("MSDR"))
 I MSDR,'$D(^|$$^W3MAIN|W3MSDR(MSDR,MSD)) S OK=0 Q
 N A,DLM,PD S A=$G(@GLOB)
 S NP1=NP-1
 N J F J=1:1:11 S @("x"_J)=$P(A,"*",J)
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TGLI
W4TGLI(STAM) ; [ 27.09.16 15:12 ] [ 14.02.16 09:40 ] [ 12.02.16 13:31 ] 
 N MASOF S MASOF=$G(@$$^W4PRM@("ASH","MASOF"))
 I $E(MASOF,1,7)=2522261 Q 1
 I $E(MASOF,1,7)=2522317 Q 2
 I $E(MASOF,1,7)=2522434 Q 3
 Q 0
 
 
 
 

W4THN
W4THN(DAT) ; [ 11.08.26 14:29 ] [ 02.08.26 16:10 ] [ 30.07.26 06:22 ] 
 N (JB,%ARG,DAT)
 I $G(%ARG("SHOW"))=0 Q
 S ISSUETIME=$H
 ;
 S TMPTHN=$$^W4MAIN("TMPTHN")
 K @TMPTHN
 I $$DEP S TMPTHN=$E(TMPTHN,1,$L(TMPTHN)-1)_",DEP)"
 ;
 I $G(%ARG("DAY")),'$G(%ARG("DAY1")),$G(%ARG("SHAOT"))?.P D DEPCHKBOX Q
 I $G(%ARG("DAY")),'$G(%ARG("DAY1")),$G(%ARG("SHAOT"))'?.P D DAY(DAT,%ARG("SHAOT")) Q
 ;
 S DAT0=DAT
 D ^%W1ARG
 S DAT=DAT0
 ;
 I $G(%ARG("ACTORDS"))="" S %ARG("ACTORDS")=1
 ;
 I $$DEP!$$SET,DAT'["-",$G(%ARG("DAY1"))<2 D DETRKZ
 I $G(%ARG("DAY1"))=1 S %ARG("DAY1")=2
 ;
 S (DAT1,DAT2)=DAT
 S (DTP1,DTP2)=$$^%L1DC(DAT,3)
 I DAT["-" D
 .S DAT1=$P(DAT,"-"),DAT2=$P(DAT,"-",2)
 .S DTP1=$$^%L1DC(DAT1,3)
 .S DTP2=$$^%L1DC(DAT2,3)
 ;
 D TEMP,TEMPT,TEMPTOT
 ;
 K @TEMP,@TEMPT,@TEMPTOT
 ;
 I $$DEP S TEMP=$E(TEMP,1,$L(TEMP)-1)_",DEP)"
 S TMPTHN=$$^W4MAIN("TMPTHN")
 K @TMPTHN
 I $$DEP S TMPTHN=$E(TMPTHN,1,$L(TMPTHN)-1)_",DEP)"
 ;
 S TMPTHN1=$$^W4MAIN("TMPTHN1")
 K @TMPTHN1
 I $$DEP S TMPTHN1=$E(TMPTHN1,1,$L(TMPTHN1)-1)_",DEP)"
 ;
 S TMPTHN2=$$^W4MAIN("TMPTHN2")
 K @TMPTHN2
 I $$DEP S TMPTHN2=$E(TMPTHN2,1,$L(TMPTHN2)-1)_",DEP)"
 ;
 S TMPTHN3=$$^W4MAIN("TMPTHN3")
 K @TMPTHN3
 I $$DEP S TMPTHN3=$E(TMPTHN3,1,$L(TMPTHN3)-1)_",DEP)"
 ;
 ;-------------------------------------------------------------------
 ;
 S MESHAA=$G(MESHAA),ADSHAA=$G(ADSHAA)
 ;
 I '$$DEPDET D
 .K @TEMP
 .F DT=DTP1:1:DTP2 D
 ..S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D VWIT4ORD(HZ,1)
 .M @TEMPTOT=@TEMP K @TEMP
 ;
 I '$G(%ARG("DISPATH")) D
 .F DT=DTP1:1:DTP2 D
 ..S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D VWIT4ORD(HZ)
 ;
 I $G(%ARG("DISPATH")) D
 .N DT S DT=$$^W4DZ
 .S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D
 ..I $$DLV^W4CLOSE(HZ) Q
 ..I $$^W4HZMH(HZ) Q
 ..N READY S READY=$G(@$$^W4ORD@(HZ,"READY"))
 ..I $$DELIS^W4PRM,READY Q  ; -- 19.03.24
 ..D VWIT4ORD(HZ)
 ;------------------------ SHOW ------------------------------------
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 I $G(%ARG("DISPATH")) D PRNBACK
 ;
 I $G(%ARG("DAY1"))<2 D
 .W "<br>",!
 . D SPAN(16) W $$H2U^%L1FRM($G(@$$^W4PL@("ESEK",1))) W "</span>",!
 .W "<br>",!
 ;
 ;
 N PRMDEP S PRMDEP=$G(%ARG("MDEP"))
 ;
 I $$DEP D  I $G(%ARG("LATE")),$G(%ARG("LATEHOUR"))="" Q
 .I '$G(%ARG("DAY1")) D DEPCHKBOX
 .I $G(%ARG("LATE")),$G(%ARG("LATEHOUR"))="" Q
 .;
 .I $$DEPRKZ D  ; ***21/6/25
 ..W "<hr>",!
 .. D SPAN
 .. D HZGTRH(DAT) ; --> TX
 .. W $$H2U^%L1FRM(TX)
 .. W "</span>",!
 ..I $D(MHZ)>9,$G(^DBTHN) D 
 ...W "<br>",!
 ...N N S N="" F  S N=$O(MHZ(N)) Q:N=""  D
 ....W "<span style=""color:darkblue;cursor:pointer"" onClick=""ShowOrd('"_N_"')""> "_N_" </span>"
 ..W "<hr><br>",!
 .
 .S DEP="" F  S DEP=$O(@TMPTHN) Q:DEP=""  D
 ..I PRMDEP,","_PRMDEP_","'[(","_DEP_",") Q
 ..D BODY
 ;
 I '$$DEP D BODY
 ;
 I $G(%ARG("DISPATH")) D PRNBACK
 ;
 W "</div>",!
 K @$$^W4MAIN("TMPTHN")
 K @$$^W4MAIN("TMPTHN1")
 K @$$^W4MAIN("TMPTHN2")
 K @$$^W4MAIN("TMPTHN3")
 K @$$^W4MAIN("TEMP")
 Q
 ;
 ;
BODY ;
 I $$DEPRKZ G BODY1
 I $$DEP,'$$DEPDET,$O(@TEMP@(""))="" Q; -- 19/06/25
 ;
 I $$DEP,$G(DEP) W "<div id=""deptrh"_DEP_""" dir="""_$$^%W1DIR_""" align=""center"">",!
 W "<hr>",!
 D SPAN
 D HZGTRH(DAT) ; --> TX
 W $$H2U^%L1FRM(TX)
 W "</span>",!
 I $$DEP,$G(DEP) W "</div>",!
 ;
 I $$SET,'$$NSET D  Q
 .N SHEM
 .W "<br>"
 .W "<select id=""SET"" onChange=""ChangeSet()"" >",!
 . W "<option value=""0"">"_$$H2U^%L1FRM("-- hq xga --")_"</option>",!
 . S N="" F  S N=$O(@$$^W4GL("P1SET")@(N)) Q:N=""  D
 . . S SHEM=$G(^(N))
 . . W "<option value="""_N_""">"_N_" "_$$H2U^%L1FRM(SHEM)_"</option>",!
 .W "</select>",!
 ;
BODY1 N DEPCONT
 ;
 I $$DEP,'$$DEPDET,$O(@TEMP@(""))="" Q
 ;
 I $$DEP D  W "</div>",! D CONC(1) G EBODY
 .S DEPCONT=0
 .W $$SDVIG
 .W "<div id=""dep"_DEP_""" name=""dep"" dir="""_$$^%W1DIR_""" align=""center"" >",!
 .W " <span style=""font-size:"_$$^W3FSZ(14)_";color:brown"">"
 .W $$^%W1DICT("DEPARTMENT")_" : "_DEP_" "_$$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
 .W "</span>",!
 .W " <span style=""font-size:"_$$^W3FSZ(9)_";color:grey"">"
 . W "<br>",!
 . W $$^%W1DICT("ISSUEREPTIME",$ZD(ISSUETIME,"DD.MM.YY 24:60"))
 .W " </span>"  
 .W "<hr>",!
 .I '$$DEPDET Q
 .
 .D TBL($G(DEP),$$WDTB,1)
 .N TMZ,HZ,PAR,N,QN,FIRST,HR
 .
 .I $$THNDEPHR D  W "</table>" Q
 ..S TMZ="" F  S TMZ=$O(@TMPTHN2@(TMZ)) Q:TMZ=""  D
 ...S HZ="" F  S HZ=$O(@TMPTHN2@(TMZ,HZ)) Q:HZ=""  I $D(^(HZ))>9 D
 ....S FIRST=1
 ....S N="" F  S N=$O(@TMPTHN2@(TMZ,HZ,N)) Q:N=""  D
 .....N ST S ST=$G(^(N)),PAR=$P(ST,"\"),NAME=$P(ST,"\",2),QN=$P(ST,"\",3),HR=$P(ST,"\",4)
 .....I $$SET,$$NSET,'$D(@$$^W4GL("P1SET")@($$NSET,PAR)) Q 
 .....I FIRST D KOTHZ S FIRST=0,DEPCONT=1
 .....W "<tr><td>"_PAR_"</td><td>"_$$H2U^%L1FRM(NAME)_$$LOAZ(PAR)_"</td><td> "_$$VWQN(QN)_" </td><td>"_$$H2U^%L1FRM(HR)_"</td>"
 .....W "</tr>",!
 .
 .I $$THNDEPARZ D  W "</table>" Q
 ..S FIRST=1 N I,I1
 ..S PAR="" F  S PAR=$O(@TMPTHN3@(PAR)) Q:PAR=""  D  S FIRST=0
 ...N SQN S SQN=0
 ...N OK S OK=0 S HZ="" F I=1:1 S HZ=$O(@TMPTHN3@(PAR,HZ)) Q:HZ=""  D
 ....S QN=$G(^(HZ)) I QN S OK=1 S SQN=SQN+QN
 ...Q:'OK
 ...W "<tr><td width=""10%"">"_PAR_"</td><td width=""25%"">"_$$NAME(PAR,$G(DEP))_"</td>"
 ...W "<td width=""5%"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;background-color:yellow""> "
 ... W $$VWQN(SQN)
 ...W "</td>"
 ...S HZ="" F I=1:1 S HZ=$O(@TMPTHN3@(PAR,HZ)) Q:HZ=""  D
 ....S QN=$G(^(HZ))
 ....;;I FIRST D KOTHZ S FIRST=0,DEPCONT=1
 ....W "<td width=""3%"" style=""cursor:pointer"" onClick=""CurrentBorder(this);ShowOrd('"_HZ_"')""> "_$$VWQN(QN)_" </td>"
 ...I $$DEPDET F I1=I+1:1:20 W "<td>&nbsp;</td>"
 ...W "</tr>",!
 .
 .
 .S TMZ="" F  S TMZ=$O(@TMPTHN1@(TMZ)) Q:TMZ=""  D
 ..S HZ="" F  S HZ=$O(@TMPTHN1@(TMZ,HZ)) Q:HZ=""  I $D(^(HZ))>9 D
 ...I $G(MESHAA)?1N.E,$$MIN(TMZ)<$$MIN(MESHAA) Q
 ...I $G(ADSHAA)?1N.E,$$MIN(TMZ)>$$MIN(ADSHAA) Q
 ...S FIRST=1
 ...S N="" F  S N=$O(@TMPTHN1@(TMZ,HZ,N)) Q:N=""  D
 ....I N["%" Q
 ....S QN=$G(^(N))
 ....I $$SET,$$NSET,'$D(@$$^W4GL("P1SET")@($$NSET,N)) Q 
 ....I FIRST D KOTHZ S FIRST=0,DEPCONT=1
 ....S NAME=$$SHEM^W4P(N)
 ....W "<tr><td>"_N_"</td><td>"_$$NAME(N,$G(DEP))_"</td><td> "_$$VWQN(QN)_" </td>"
 ....W "</tr>",!
 .W "</table>",!
 .
 ;
 S NSET=$$NSET
 I $$SET,NSET D:'$G(%ARG("CONC"))  D CONC(1) G EBODY
 .W $$SDVIG
 .W " <span style=""font-size:"_$$^W3FSZ(12)_";color:green"">"
 .W $$^%W1DICT("SET")_" : "_NSET_" "_$$H2U^%L1FRM($G(@$$^W4GL("P1SET")@(NSET)))
 .W "</span>",!
 .W "<hr>",!
 ;
 I $G(%ARG("CONC")) G END
 ;
 D TBL($G(DEP),90)
 S TMZ="" F  S TMZ=$O(@TMPTHN@(TMZ)) Q:TMZ=""  D
 .S LKH="" F  S LKH=$O(@TMPTHN@(TMZ,LKH)) Q:LKH=""  D
 ..S HZ="" F  S HZ=$O(@TMPTHN@(TMZ,LKH,HZ)) Q:HZ=""  D
 ...D HZGLKH(LKH,TMZ,HZ) ; ---- LAK & ZMAN
 ...S N="" F  S N=$O(@TMPTHN@(TMZ,LKH,HZ,N)) Q:N=""  D
 ....S NS="",NS1=0 F  S NS=$O(@TMPTHN@(TMZ,LKH,HZ,N,NS)) Q:NS=""  S NS1=NS D
 .....S ST=$G(^(NS)) Q:ST=""
 .....I NS=1 D  Q
 ......S CDP=$P(ST,"\") I CDP["-"!(CDP["%") Q
 ......W "<tr "_$$^%W1ALIGN_" style=""font-weight:bold"" >" 
 ...... S NMP=$P(ST,"\",3) I NMP="" S NMP=""
 ...... S QNP=$P(ST,"\",5)
 ...... S HRP=$$CLR($P(ST,"\",8))
 ......
 ...... W "<td width=""15%"">"_CDP_"</td>"
 ...... W "<td width=""40%"">"_$$H2U^%L1FRM(NMP)_"</td>"
 ...... W "<td>"_$$VWQN(QNP)_"</td>"
 ...... W "<td>"_$$H2U^%L1FRM(HRP)_"</td>"
 ......W "</tr>",!
 .....
 .....S CDT=$P(ST,"\")
 .....S NMT=$P(ST,"\",2)
 .....S QNT=$P(ST,"\",4)
 .....S HRT=$$CLR($P(ST,"\",5))
 .....
 .....W "<tr>" 
 ..... W "<td>"_$$SDVIG_CDT_"</td>"
 ..... W "<td>"_$$SDVIG_$$H2U^%L1FRM(NMT)_"</td>"
 ..... W "<td>"_$$SDVIG_$$VWQN(QNT)_"</td>"
 ..... W "<td>"_$$SDVIG_$$H2U^%L1FRM(HRT)_"</td>"
 .....W "</tr>",!
 ....
 ....I NS1>1 W "<tr><td colspan=""4"" >&nbsp;</td></tr>",!
 
 W "</table>",!
 ;
 ;------------------ SVODNY DOCH
 W "<hr>",!
 ;
END I '$$DEP D CONC(2)
 K @TEMP,@TEMPT,@TEMPTOT
 Q
 ;
 ;
TEMP S TEMP=$$^W4MAIN("TEMP")
 Q
TEMPT S TEMPT=$$^W4MAIN("TEMPT")
 Q
 ;
TEMPTOT S TEMPTOT=$$^W4MAIN("TEMPTOT")
 Q
 ;
CONC(COL) ;
 D TEMPTOT
 I $$DEP,$G(DEP) D
 .W "<div id=""depcnc"_DEP_""" name=""depcnc"" dir="""_$$^%W1DIR_""" align=""center"" >",!
 I $$DEPRKZ G CONCB
 I $$DEPDET,'$G(DEPCONT) W:$$DEP&$G(DEP) "</div>",! Q
 ;
 S I=0
 W "<br>",!
 D SPAN
  W $$^%W1DICT("ITEMCONCDEPREP")
 W "</span>",!
 ;
 I $$DEP D
 .N DEP1 S DEP1="" I DEP S DEP1=$G(@$$^W4GL("DEP")@(DEP))
 .W $$SDVIG
 .W " <span style=""font-size:"_$$^W3FSZ(14)_";color:brown"">"
 . W " "_$$^%W1DICT("DEPARTMENT")_" "_DEP_" "_$$H2U^%L1FRM(DEP1)
 .W "</span>",!
 ;
 W "<br><br>",!
CONCB ;
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 N I S N="",I=0 F  S N=$O(@TEMP@(N)) Q:N=""  S I=I+1
 N MAX S MAX=I\2+1
 ;
 N K,AMUD S K=0
 S N="" F  S N=$O(@TEMP@(N)) Q:N=""  D  Q:N=""
 .;;N IND S IND=$J($$DEP^W4P(N),5)_"--"_$$ABCPAR(N)_"-"_$J(N,8)
 .N IND S IND="--"_$$ABCPAR(N)_"-"_$J(N,8)
 .I COL=1 S @TMP@(IND)=$G(@TEMP@(N))
 .I COL=2 D
 ..S @TMP@(IND)=$G(@TEMP@(N)),@TMP@(IND,"N")=N
 ;
 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 ;
 N N,K,K1
 S N="",K=0,K1=0 F  S N=$O(@TMP@(N)) Q:N=""  D
 .S K=K+1,K1=K1+1
 .I K'>MAX M @TMP1@(1,K1)=@TMP@(N) S:K=MAX K1=0 Q
 .M @TMP1@(2,K1)=@TMP@(N)
 ;
 M ^TEMP2=@TEMP
 ;
 I COL=1 D
 .N NN
 .D TBL("cnc"_$G(DEP),$$WDTB,1)
 .S (SVQN,SVQN1,STIM)=0
 .S N="" F  S N=$O(@TMP@(N)) Q:N=""  D  Q:N=""
 ..I N["%" Q
 ..S QN=+$G(^(N)) Q:'QN
 ..S NN=$$NN(N) Q:NN=""
 ..I $$DEP,+$$DEP^W4P(NN)'=DEP,$$PRTDEP(NN)'=DEP Q
 ..I $$SET,$$NSET,'$D(@$$^W4GL("P1SET")@($$NSET,NN)) Q 
 ..S NAME=$$SHEM^W4P(NN)
 ..N QNTOT S QNTOT=$G(@TEMPTOT@(NN))
 ..N VQN S VQN=$$VWQN(QN)
 ..I '$$DEPDET,$G(%ARG("SHAOT"))'?.P S VQN=VQN_" <span style=""color:grey;font-size:"_$$^W3FSZ(10)_""" > ( "_QNTOT_" ) </span>"
 ..W "<tr style=""cursor:pointer"
 .. I $$NODPIT(NN,DEP) W ";background-color:lightgrey"
 .. W """ "
 .. W " onClick=""OrdList('"_NN_"','"_DAT_"','"_MESHAA_"','"_ADSHAA_"','"_$G(%ARG("BIDS"))_"','"_$G(%ARG("LATEHOUR"))_"')"" "
 ..W ">",!
 .. W "<td "_$$LEFT_" width=""20%"">"_NN_"</td>"
 .. ;;W "<td width=""50%"">"_$$NAME(NN,$G(DEP))_"</td>"
 .. W "<td >"_$$NAME(NN,$G(DEP))_"</td>"
 .. W "<td "_$$LEFT_" width=""15%""> "_VQN_" </td>"
 .. I '$$NODPIT(NN,DEP) S SVQN=SVQN+VQN
 .. I '$$NODPIT(NN,DEP),QNTOT,'$$DEPDET S SVQN1=SVQN1+QNTOT
 .. S STIM=STIM+$G(@TEMPT@(NN))
 .. W $$VWTIME(NN)
 ..W "</tr>",!
 .
 .W "<tr style=""background-color:lightyellow"" >"
 . W "<td>&nbsp;</td>"
 . W "<td>&nbsp;</td>"
 . W "<td style=""font-weight:bold"">" W:SVQN1&($G(%ARG("SHAOT"))'?.P) " ("_SVQN1_") " W SVQN W "</td>"
 . I $$THNDEPHR W "<td style=""font-weight:bold"">"_$S(STIM:STIM,1:"&nbsp;")_"</td>"
 .W "</table>",!
 ;
 I COL=2 D
 .D TBL("cnc"_$G(DEP),90,1)
 .S K=0
 .S K="" F  S K=$O(@TMP1@(1,K)) Q:K=""  D
 ..S QN=$G(@TMP1@(1,K)) Q:'QN
 ..N NN S NN=$G(@TMP1@(1,K,"N"))
 ..S NAME=$$SHEM^W4P(NN)
 ..
 ..W "<tr>"
 .. W "<td>"_$$NAME(NN,$G(DEP))_"</td><td "_$$LEFT_"> "_$$VWQN(QN)_" </td>"_$$VWTIME(NN),!
 ..
 .. W "<td style=""background-color:grey"">&nbsp;</td>"
 ..
 .. S QN=$G(@TMP1@(2,K))
 .. S NN=$G(@TMP1@(2,K,"N"))
 .. S NAME=$$SHEM^W4P(NN)
 ..
 .. W "<td width=""3%"" style=""background-color:grey"" >&nbsp;</td>"
 ..
 .. W "<td>"_$$NAME(NN,$G(DEP))_"</td><td "_$$LEFT_"> "_$$VWQN(QN)_" </td>"_$$VWTIME(NN),!
 ..W "</tr>",!
 .
 .W "</table>",!
 ;
 I '$$DEPDET W "<br>",!
 I $$DEPDET D
 .I TMPTHN[",DEP",$O(@TMPTHN)="" Q
 .W "<p style=""page-break-before:always"">",!
 .W "<br><br>",!
 ;
 W "</div>",!
 K @TMP
EBODY Q
 ;
 ;
LEFT(STAM) ;
 Q " dir=""LTR"" "_$$^%W1ALIGN
 ;
NN(N) ;
 Q $$SPA^%L1FRM($P(N,"-",4))
 ;
NS(STAM) ;
 Q $O(@TMPTHN@(TMZ,LKH,HZ,N,99999),-1)+1
 ;
NS2(STAM) ;
 Q $O(@TMPTHN2@(TMZ,HZ,99999),-1)+1
 ;
FNDSLPLAN(HZ)
 N D S D=$$^%L1DC(DAT,3)+1
 N END S END=""
 N J F J=1:1:500 S D=$O(@$$^W4GL("W4SLPLAN")@(D),-1) Q:D=""  D  Q:END
 .I $D(@$$^W4GL("W4SLPLAN")@(D,HZ)) S END=$G(^(HZ))
 Q END
 ;
TMZ(HZ) ;--- KOGDA NACHAT GOTOVIT
 N TM,TMZ
 S TM=$$SHAA^W4HZMST(HZ)
 N IR S IR=$TR($$IR(HZ),"-"," ")
 S SMT=0
 S TMZ=""
 ;
 ;;I $$DELIS^W4PRM D  I TMZ'="" Q TMZ
 .N A S A=$$FNDSLPLAN(HZ)
 .N TIM S TIM=$P(A,"\",4)
 .I TIM?1N.E,TIM'="00:00" D
 ..S TMZ=TIM
 ..;;N NEWSHAA S NEWSHAA=TMZ-1 I NEWSHAA<0 S NEWSHAA=23
 ..;;S TMZ=NEWSHAA_":"_$P(TMZ,":",2)
 ..N NEWSHAA S NEWSHAA=TMZ*60+$P(TMZ,":",2)-30 I NEWSHAA<0 S NEWSHAA=NEWSHAA+(24*60)
 ..S TMZ=NEWSHAA\60_":"_(NEWSHAA#60)
 ..S TMZ=$$TS^%L1TIME(TMZ)
  ;
 N INDIR S INDIR=$$FND(IR)
 I $L(IR),INDIR D
 .N SMMIN S SMMIN=$P($G(@$$^W4GL("P1IR")@(INDIR,1)),"\",2)
 .N TMIN S TMIN=TM*60+$P(TM,":",2)-SMMIN
 .S TM=TMIN\60_":"_(TMIN#60)
 S TMZ=$$J($P(TM,":",1)-SMT)_":"_$P($$J(TM),":",2)
 S TMZ=$$TS^%L1TIME(TMZ)
 Q TMZ
 ;
 ;
J(TM) Q $TR($J(TM,2)," ",0)
 ;
IR(HZ) ;
 N IR S IR=$$IR^W4HZMST(HZ)
 N LK S LK=$$NMB^W4HZMST(HZ)
 I IR?.P,LK S IR=$$IR^W4L(LK)
 Q IR
 ;
HZGTRH(DAT) ;
 I DAT'["-" D  Q
 .S TX="'"_$$^%L1DC(DAT,9)_" "_DAT_" : jix`zl dcear zipkez "
 .I $G(%ARG("LATE")) D
 ..S TX=$G(%ARG("LATEHOUR"))_" dry ixg` mcew meia eribdy  '"_$$^%L1DC(DAT,9)_" "_DAT_" jix`zl zepnfd zniyx "
 .  
 .I $$MIN(MESHAA)!$$MIN(ADSHAA) D
 ..S TX=ADSHAA_" dry cr "_MESHAA_" dryn "_TX
 .I '$$MIN(MESHAA),'$$MIN(ADSHAA),$G(%ARG("DAY")) D
 ..S TX="zeryd lk- "_TX
 ;
 N DAT1,DAT2
 S DAT1=$P(DAT,"-"),DAT2=$P(DAT,"-",2)
 S TX=DAT1_" - "_DAT2_" : dtewzl mihixt z`ved "
 Q
 ;
HZGLKH(LKH,TMZ,HZ) ;
 N LKHNAME,IR
 S LKHNAME=$$LKH^W4L(LKH)
 S IR=$$IR^W4HZMST(HZ)
 ;
 W "<tr><td colspan=""5"">"
  W "<br>"
  W $$H2U^%L1FRM(TMZ_" : dryl oikdl")_$$SDVIG
  W $$H2U^%L1FRM($S($L(IR):IR_" , ",1:"")_LKHNAME_" "_LKH_" : gewll")
  W "&nbsp;&nbsp;&nbsp;"
  W "<span style=""color:darkblue;cursor:pointer"" onClick=""ShowOrd('"_HZ_"')"" >"
   W $$H2U^%L1FRM(HZ_" : dpnfd")
  W "</span>",!
 W "</td></tr>",!
 Q
 ;
TA(IR) ;
 I IR="aia` lz" Q 1
 I IR="aia`-lz" Q 1
 I IR="`z" Q 1
 I IR="`""z" Q 1
 I IR="`''z" Q 1
 Q 0
 ;
SPAN(SZ) ; 
 I '$G(SZ) S SZ=14
 W "<span style=""font-size:"_$$^W3FSZ(SZ)_";text-align:center"">"
 Q 
 ;
SDVIG(STAM) ; 
 Q $$NBSP^%L1FRM(10) 
 ;
TBL(DEP,WD,BORDER) ; 
 W "<table width="""_WD_"%"" style=""font-size:"_$$^W3FSZ(12)_""" "
 I $L($G(DEP)) D
 .I DEP'["cnc" W " id=""tbl"_DEP_""" name=""tbl"" " Q
 .W " id=""tbl"_DEP_""" name=""tblcnc"" " Q
 I $G(BORDER) W "border=""1"" cellspacing=""0"" cellpadding=""1"" "
 W ">",! 
 Q 
 ;
CLR(TX) 
 S TX=$$CLR^W4CLRMN(TX)
 S TX=$$^W4CLRCMN(TX) 
 Q TX 
 ;
DEP(STAM) ; 
 Q $G(%ARG("DEP")) 
 ;
DEPDET(STAM) ; 
 Q $G(%ARG("DEPDET"))&(+$G(%ARG("CONC"))=0)
 ;
DEPRKZ(STAM) ; 
 Q 0 ; --- 22/06/25 ; ***
 Q $G(%ARG("DEPRKZ"))
 ;
SET(STAM) ; 
 Q $G(%ARG("SET")) 
 ;
NSET(STAM) ; 
 Q $G(%ARG("NSET")) 
 ;
SMSHAA(SHAA) 
 Q $$SMSHAA^W4SLPLAN(SHAA) 
 ;
SELTIME(TX,ID) ;
 W "<td align=""left"">"_$$^%W1DICT(TX)_"</td>"
 W "<td dir=""LTR"">"
 N I,SEL
 S SEL="<select name=""hr"" id="""_ID_"hr"" >"
 F I=0:1:23 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""">"_NN_"</option>"
 S SEL=SEL_"</select>"
 ;
 S SEL=SEL_"<select name=""mn"" id="""_ID_"mn"" >"
 F I=0:1:59 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""">"_NN_"</option>"
 S SEL=SEL_"</select>"
 W SEL
 W "</td>"
 Q
 ;
MIN(SHAA) ;
 Q SHAA*60+$P(SHAA,":",2)
 ;
 ;---------------------------- PREP ---------------------------------
 ;
VWIT4ORD(HZ,TOT) ;
 N (JB,%ARG,HZ,DAT,DEP,SHOW,MESHAA,ADSHAA,DAT1,DAT2,DTP1,DTP2,TEMP,TMPTHN,TMPTHN1,TMPTHN2,TMPTHN3,TOT,MHZ)
 D TEMP,TEMPT
 S A=$G(@$$^W4ORD@(HZ)) Q:A=""
 S LKH=$$NMB^W4HZMST(HZ) I '$$^W4MSL(LKH) Q
 I $$^W4PIZUL(HZ) Q
 ;;I $$TSHL^W4HZMST(HZ)<0 Q
 ;;I $D(@$$^W4GL("P1DEL")@(HZ)) Q
 I $$DEL^W4DEL(HZ) Q
 I $$^W4HZMH(HZ),'$G(%ARG("BIDS")) Q
 I '$$^W4HZMH(HZ),'$G(%ARG("ACTORDS")) Q
 N DATCB S DATCB=$$DATCB^W4HZMST(HZ)
 N DTCB S DTCB=$$^%L1DC($P(DATCB,"  "),3)
 ;
 I $G(%ARG("TODAY")),DTCB'=+$H Q
 ;
 S TRH=$$TRH^W4HZMST(HZ)
 N TDT S TDT=$$^%L1DC(TRH,3)
 I TDT<DTP1!(TDT>DTP2) Q
 ;
 S TIMECB=$P($$DATCB^W4HZMST(HZ),"  ",2)
 ;
 S OK=0
 I $G(%ARG("LATE")) D  Q:'OK
 .;;S (MESHAA,ADSHAA)=0
 .S DTT1=$$^%L1DC(TRH,8)
 .I $$DELIS^W4PRM D
 ..I DTCB=(TDT-1)&(DTT1'=1)!(DTCB=(TDT-2)&(DTT1=1)),$$MIN(TIMECB)'<$$MIN($G(%ARG("LATEHOUR"))) S OK=1 Q
 ;
 S TMZ=$$TMZ(HZ)
 I '$G(TOT),$$MIN(MESHAA)!$$MIN(ADSHAA),$$MIN(TMZ)<$$MIN(MESHAA)!($$MIN(TMZ)>$$MIN(ADSHAA)) Q
 I $G(TOT),$$MIN(MESHAA),$$MIN(TMZ)<$$MIN(MESHAA) Q
 ;
 S MHZ(HZ)=""
 S N="",NS=0 F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N?1N.E,$G(^(N))'?.P D
 .N ST S ST=$G(^(N)) 
 .S PAR=$P($G(^(N)),"\") Q:PAR=""  Q:$E(PAR)="-"  Q:$E(PAR)=":"
 .I $$^W4CDSRV(PAR) Q
 .I PAR=0 S PAR="0-"_N
 .S DEP=+$$DEP^W4P(PAR)
 .N QN S QN=$P($G(@$$^W4ORD@(HZ,N)),"\",5)
 .S @TEMP@(PAR)=$G(@TEMP@(PAR))+QN
 .Q:$G(TOT)
 .I $G(@$$^W4GL("W4ITTIME")@(PAR)) D
 ..N TIME S TIME=$G(^(PAR))
 ..S @TEMPT@(PAR)=$G(@TEMPT@(PAR))+(TIME*QN)
 .
 .S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=$G(@$$^W4ORD@(HZ,N))
 .
 .I '$$NODPIT(PAR) D
 ..S @TMPTHN1@(TMZ,HZ,PAR)=$G(@TMPTHN1@(TMZ,HZ,PAR))+QN
 ..I $$PRTDEP(PAR) D
 ...N DEP S DEP=$$PRTDEP(PAR)
 ...S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=$G(@$$^W4ORD@(HZ,N))
 ...S @TMPTHN1@(TMZ,HZ,PAR)=$G(@TMPTHN1@(TMZ,HZ,PAR))+QN
 .
 .S PAR1=$P(ST,"\",3)
 .S HR=$P(ST,"\",8)
 .S:PAR="" PAR="0-"_N
 .S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 .I '$$NODPIT(PAR) D
 ..S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN
 ..I $$PRTDEP(PAR) D
 ...N DEP S DEP=$$PRTDEP(PAR)
 ...S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 ...S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN
 .
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZ,N,N1)) Q:N1=""  I N1?1N.E D
 ..S ST=$G(@$$^W4ORD@(HZ,N,N1))
 ..I $$^W4CDSRV(N1) Q
 ..S DEP=+$$DEP^W4P(N1)
 ..S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=N1_"\"_ST
 ..N QN1 S QN1=$P($G(@$$^W4ORD@(HZ,N,N1)),"\",3)
 ..I $$DELIS^W4PRM,$$SUG^W4P(PAR)=2 S DEP=+$$DEP^W4P(N1)
 ..
 ..I '$$NODPIT(N1) D
 ...S @TEMP@(N1)=$G(@TEMP@(N1))+QN1
 ...S @TMPTHN1@(TMZ,HZ,N1)=$G(@TMPTHN1@(TMZ,HZ,N1))+QN1
 ...I $$PRTDEP(N1) D
 ....N DEP S DEP=$$PRTDEP(N1)
 ....S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=N1_"\"_ST
 ....S @TMPTHN1@(TMZ,HZ,N1)=$G(@TMPTHN1@(TMZ,HZ,N1))+QN
 ..
 ..N PAR,QN,HR S PAR=N1,PAR1=$P(ST,"\"),QN=$P(ST,"\",3),HR=$P(ST,"\",4)
 ..S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 ..I '$$NODPIT(PAR) D
 ...S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN1
 ...I $$PRTDEP(PAR) D
 ....N DEP S DEP=$$PRTDEP(PAR)
 ....S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 ....S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN1
 Q
 ;
 ;
NODPIT(PAR,DEP) ;
 I $G(PAR)="" Q 1
 I $D(@$$^W4GL("W4NODPIT")@(PAR)) Q 1
 I $G(DEP),$$PRTDEP(PAR),$$PRTDEP(PAR)=DEP Q 1
 Q 0
 ;
RKV(VL,PRM)
 I $G(PRM)="H" S VL=$$H2U^%L1FRM(VL)
 Q "<span style=""font-weight:bold"">"_VL_"</span>"
 ;
KOTHZ ; 
 N COLSP S COLSP=3
 I $$DEPDET,$$THNDEPHR S COLSP=COLSP+1
 ;
 W "<tr><td colspan="""_COLSP_""" align=""center"" style=""background-color:lightgrey"">"
  W "<table dir="""_$$^%W1DIR_""" width=""100%"">",!
  W " <tr>"
   W "<td width=""25%"">"_$$^%W1DICT("TIME")_" "_$$RKV(TMZ)_"</td>"
   W "<td width=""25%"" style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"')"" >"
    W $$^%W1DICT("ORDER")_" "_$$RKV(HZ)
   W "</td>"
   I '$$DELIS^W4PRM D
   .W "<td>"_$$^%W1DICT("CUSTOMER")_" "_$$RKV($$NMB^W4HZMST(HZ))_" "_$$RKV($$NAME^W4HZMST(HZ),"H")_"</td>"
   I $$THNDEPHR D
   .W "<td>&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 W "</td></tr>",!
 Q
 ;
WDTB(STAM) ; 
 I $$DEPDET Q $S($$THNDEPARZ:90,1:80) 
 Q 70; 60
 ;
CALCKIND ; 
 W "<td>" 
  W $$^%W1DICT("ACTORDS")
  W "&nbsp;"
  W "<input type=""checkbox"" id=""actords"" "
  I $G(%ARG("ACTORDS"))!($G(%ARG("ACTORDS"))="") W "checked=""checked"" "
  W "onClick=""ShowProgramm()"" >"
 W "</td>" 
 ;
 W "<td>" 
  W $$^%W1DICT("BIDS")
  W "&nbsp;"
  W "<input type=""checkbox"" id=""bids"" "
  I $G(%ARG("BIDS")) W "checked=""checked"" "
  W "onClick=""ShowProgramm()"" >"
 W "</td>" 
 ;
 W "<td>" 
  W $$^%W1DICT("TODAYORDERSONLY")
  W "&nbsp;"
  W "<input type=""checkbox"" id=""today"" "
  I $G(%ARG("TODAY")) W "checked=""checked"" "
  W "onClick=""ShowProgramm()"" >"
 W "</td>" 
 ;
 I '$$DEP D
  .W "<td>" 
  .W $$^%W1DICT("CONCONLY")
  .W "&nbsp;"
  .W "<input type=""checkbox"" id=""conc"" "
  .I $G(%ARG("CONC")) W "checked=""checked"" "
  .W "onClick=""ShowProgramm()"" >"
  .W "</td>" 
 Q 
 ;
 ;
THNDEPHR(STAM) ;
 Q $G(@$$^W4PRM@("THNDEP"))=1 
 ; 
THNDEPARZ(STAM) ;
 Q $G(@$$^W4PRM@("THNDEP"))=2 
 ; 
VWQN(QN) ; 
 I QN'["." Q QN 
 Q $J(QN,3,3) 
 ; 
VWHZMH(STAM) ;
 I $$GETP^%W1PRM("REPNAME")="WORKPROGRAMM" Q 1
 I $$GETP^%W1PRM("REPNAME")="DEPPERIODREPORT" Q 1
 Q 0
 ;
ITTIME(STAM) ;
 Q $D(@$$^W4GL("W4ITTIME"))>9
 ;
VWTIME(PAR) ;
 I '$$ITTIME Q "" 
 I $G(PAR)="" Q ""
 N ST 
 S ST="<td style=""color:darkblue"">"_$G(@TEMPT@(PAR))_" "_$$^%W1DICT("MINUT")_"</td>"
 Q ST 
 ;
STIME(DEP) ;
 D TEMPT
 N STIME S STIME=0
 N N S N="" F  S N=$O(@TEMPT@(N)) Q:N=""  D
 .I $$DEP,$G(DEP)?1N.N,$$DEP^W4P(N)'=DEP,$$PRTDEP(N)'=DEP Q
 .S STIME=STIME+$G(@TEMPT@(N)) 
 Q STIME 
 ;
 ;
ORDLIST(DAT,PAR,MESHAA,ADSHAA,BIDS,LATEHOUR) ;
 N (JB,%ARG,DAT,PAR,MESHAA,ADSHAA,BIDS,LATEHOUR)
 ;;S ^AA("W4THN","MESHAA")=MESHAA
 ;;S ^AA("W4THN","ADSHAA")=ADSHAA
 ;;S ^AA("W4THN","PAR")=PAR
 ;;S ^AA("W4THN","DAT")=DAT
 ;;S ^AA("W4THN","BIDS")=$G(BIDS)
 ;
 S %ARG("BIDS")=+$G(BIDS)
 I $L($G(LATEHOUR)) D
 .S %ARG("LATE")=1
 .S %ARG("LATEHOUR")=LATEHOUR
 ;
 D ^W4IN
 S MEPAR="",ADPAR=99999999
 S MESHAA1="",ADSHAA1=24
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I DAT["-" S DT1=$$^%L1DC($P(DAT,"-",1),3),DT2=$$^%L1DC($P(DAT,"-",2),3)
 E  S (DT1,DT2)=$$^%L1DC(DAT,3)
 I $G(PAR)="" Q
 ;
 D ^%W1PCVRM K @VRM
 ;
 S HZM=""
 F DT=DT1:1:DT2 D
 .F  S HZM=$O(@$$^W4GL("W4LINKD")@(DT,HZM)) Q:HZM=""  I $D(@$$^W4ORD@(HZM)) D
 ..I $$HZM^W4MSD(HZM) Q
 ..I $$^W4HZMH(HZM),'$G(%ARG("BIDS")) Q
 ..N SHAA S SHAA=$$TMZ(HZM) ;;$$SHAA^W4HZMST(HZM)
 ..I $G(MESHAA),$$MIN(SHAA)<$$MIN(MESHAA) Q
 ..I $G(ADSHAA),$$MIN(SHAA)>$$MIN(ADSHAA) Q
 ..
 ..I $G(%ARG("LATE")) D  Q:'OK
 ...S OK=0
 ...N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 ...N DTCB S DTCB=$$^%L1DC($P(DATCB,"  "),3)
 ...N TIMECB S TIMECB=$P(DATCB,"  ",2)
 ...N DTT1,TDT S TDT=DT,DTT1=$$^%L1DC(DT,8)
 ...I $$DELIS^W4PRM D
 ....I DTCB=(TDT-1)&(DTT1'=1)!(DTCB=(TDT-2)&(DTT1=1)),$$MIN(TIMECB)'<$$MIN($G(%ARG("LATEHOUR"))) S OK=1
 ..
 ..I $G(%ARG("DISPATH")),$$TM^W4HZMST(HZM) Q
 ..
 ..D CRPAR^W4PRHZ(HZM)
 ..S M1(HZM)=""
 ;
 S SHAA="" F  S SHAA=$O(@VRM@(DT,SHAA)) Q:SHAA=""  D
 .S HZM="" F  S HZM=$O(@VRM@(DT,SHAA,HZM)) Q:HZM=""  D
 ..I $D(@VRM@(DT,SHAA,HZM,PAR)) D
 ...S M(PAR,HZM)=$P($G(^(PAR)),"*")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_"""> ",!
 W "<p>"
  W "<h3>"
   S PAR1=$$SHEM^W4P(PAR)
   W $$^%W1DICT("ORDERLIST4ITEM")
  W "</h3>"
    W "<span style=""color:brown""><h3>" 
     W PAR_" "_$$H2U^%L1FRM(PAR1)
    W "</h3></span>"
 W "</p>",!
 ;
 W "<table cellpadding=""5"" style=""width:80%;font-size:"_$$^W3FSZ(12)_""" border=""1"" cellspacing=""0"" >",! 
 S HZM="" F  S HZM=$O(M(PAR,HZM)) Q:HZM=""  D 
 .W "<tr style=""cursor:pointer"">",!
 . W "<td id=""td"_HZM_""" onClick=""ShowOrd('"_HZM_"',this)"" align=""center"">"
 .  W HZM_"<span style=""color:grey""> [ "_M(PAR,HZM)_" ]</span>"
 . W "</td>"
 .W "</tr>",!   
 W "</table>",!
 W "<br><br>",!
 D ^W4BTN("CLOSE","Close()","RED")
 W "</div>",! 
 Q 
 ;
 ;
DAY(DAT,SHAOT) ; 
 N (JB,%ARG,DAT,SHAOT) 
 I $G(SHAOT)="",$$DELIS^W4PRM S SHAOT="7,8,10,12,14,15,16"
 ;
 K %ARG("DAY")
 S %ARG("SHAOT")=SHAOT
 S %ARG("DAY1")=1
 ;
 F I=$L(SHAOT,","):-1:1 I $P(SHAOT,",",I)="" S SHAOT=$P(SHAOT,",",1,I-1)
 ;
 S MESHAA=""
 S ^AA("W4THN","SHAOT")=SHAOT
 S SHAOT="0,"_SHAOT_",23"
 S ^AA("W4THN","SHAOT1")=SHAOT
 ;
 F I=1:1:$L(SHAOT,",")-1 D 
 .S MESHAA=$P(SHAOT,",",I)
 .S ADSHAA=$P(SHAOT,",",I+1)
 .S %ARG("ADSHAA")=$TR($J(ADSHAA,2)," ",0)_$S(ADSHAA=23:":59",1:":00")
 .S %ARG("MESHAA")=$TR($J(MESHAA,2)," ",0)_":01"
 .S ^AA("W4THN","MEADSHAA",MESHAA_"-"_ADSHAA)=""
 .D W4THN(DAT)
 ;
 S %ARG("MESHAA")="00:00"
 S %ARG("ADSHAA")="00:00"
 D ^W4THN(DAT)
 Q
 ;
 ; 
GETSHAOT ; 
 W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""100%"" >",!
 W "<tr>",!
  W "<td width=""20%"">"
   W $$^%W1DICT("HOURSDIVIDES"),"&nbsp;"
  W "</td>"   
   D
   . N TVAH,TVH,I
   . S TVAH=$G(@$$^W4PRM@("THNSHAOT"))
   . F I=1:1:11 D
   .. S TVH(I)=$P(TVAH,",",I)
   .. W "<td><input type=""text"" size=""1"" id=""shaot"_I_""" value='"_$G(TVH(I))_"' onClick=""this.select()"" /></td>"
  W "</td>",!
  ;
 W "</tr>",! 
 W "</table>",!
 Q
 ;
 ;
DETRKZ ;
 W $$^%W1DICT("SHOWDETAILREP")," "
 W "<input type=""radio"" id=""detail"" name=""depdet"" "
 ;;I $$DEPDET,'$$DEPRKZ W " checked=""checked"" "; -- 22/06/25
 I $$DEPDET W " checked=""checked"" "
 D
 .I $$DEP=1.7!($$DEP=1.8) W "onChange=""ClickDetail()"" />" Q
 .W "onChange=""ShowDeps()"" />"
 ;
 I $$DEP D
 .W $$NBSP^%L1FRM(10)
 .W $$^%W1DICT("SHOWCONCDEP")," "
 .W "<input type=""radio"" id=""deprkz"" name=""depdet"" "
 .;;I $$DEPRKZ,'$$DEPDET W " checked=""checked"" "; -- 22/06/25
 .I '$$DEPDET W " checked=""checked"" "
 .D
 .I $$DEP=1.7!($$DEP=1.8) W "onChange=""ClickDepRkz()"" />" Q
 .W "onChange=""ShowDeps()"" />"
 Q
 ;
 ;
DEPCHKBOX ;
 S PRMDEP=$G(%ARG("MDEP"))
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 W "<table width=""98%"" border=""0"">",!
  W "<tr>",!
  D
  .S TMPTHN=$$^W4MAIN("TMPTHN") K @TMPTHN
  .S TMPTHN=$E(TMPTHN,1,$L(TMPTHN)-1)_",DEP)"
  .N DEP S DEP=""
  .F  S DEP=$O(@$$^W4GL("DEP")@(DEP)) Q:DEP=""  D
  ..N DEP1 S DEP1=$G(@$$^W4GL("DEP")@(DEP))
  ..;;I $$MAAD^W4PRM,$E(DEP1,$L(DEP1)-1,$L(DEP1))=".x" Q; -- 30.07.25 --> COMMENT
  ..S @TMPTHN=DEP1
  ;
  N JJ,KK S JJ=0,KK=0
  N DEP S DEP="" F  S DEP=$O(@TMPTHN) Q:DEP=""  D
  .I KK>18 D  S KK=0
  ..W "</tr>",!,"<tr>",!
  .W "<td>"
  . N DEP1 S DEP1=$$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
  . I DEP1?.P S DEP1=$$^%W1DICT("DEPARTMENT")_" "_DEP
  . W "<span style=""font-size:"_$$^W3FSZ(9)_""">"_DEP1_"&nbsp;</span>"
  . W " <input type=""checkbox"" name=""mdep"" id=""mdep"_DEP_""" "
  . W " onClick=""ClickDep('"_DEP_"',this)"" "
  . D
  .. I ","_PRMDEP_","[(","_DEP_",") W " checked=""checked"" " Q
  . W ">"
  .S JJ=JJ+1,KK=KK+1
  .W "</td>" 
  ;  
 W "<td "_$$INV^%W1ALIGN_" >" 
  D ^W4BUTTON("clear","CLEAR","ChkDeps(false)","color:red")
  S JJ=JJ+1
 W "</td>"
 ;
 W "<td>"
  D ^W4BUTTON("all","ALL","ChkDeps(true)","color:green")
  S JJ=JJ+1
 W "</td>"
 ;
 I $$1024^W4WDSCR W "</tr>",!,"<tr>"
 D
 .S WD=$$^W4KF(180)
 .I $$1024^W4WDSCR S WD=WD*.7 
 .W "<td "
 . I '$$1024^W4WDSCR W "width="""_WD_"px"" "
 . I $$1024^W4WDSCR W "colspan="""_(JJ-2)_"""  "
 .W ">"
 .I $G(%ARG("DAY")),$G(%ARG("SHAOT"))?.P D GETSHAOT
 .W "</td>"
 ;
 I $G(%ARG("LATE")) D
 .S WD=$$^W4KF(220)
 .I $$1024^W4WDSCR S WD=WD*.7 
 .W "<td width="""_WD_"px"" dir=""LTR"" >"
 .  N VL S VL=$G(%ARG("LATEHOUR"))
 .  I VL="" S VL=$G(@$$^W4PRM@("LATEHOUR"))
 .  D TIME^%W1DAT("shaot",VL)
 .  W "&nbsp;"
 .  W $$^%W1DICT("LATEHOUR")
 .W "</td>"
 ;
 W "<td>"
   D ^W4BUTTON("show","SHOW","ShowDeps()")
 W "</td>"
 ;
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ; 
PRNBACK ; 
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">",!
 D ^W4BTN("PRINT","Print()","blue")
 W $$NBSP^%L1FRM(10)
 D ^W4BTN("BACK","Back()","red")
 W "</div>",!
 Q
 ;
FND(IR) ; 
 I $G(IR)="" Q 0
 S IR=$$SPA^%L1FRM(IR)
 S IR=$TR(IR,"-"," ")
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:OK
 .I $TR($G(^(N)),"-"," ")=IR S OK=N
 Q OK 
 ;
ABCPAR(PAR) ; 
 N PAR1 S PAR1=$$SHEM^W4P(PAR)
 S PAR1=$$SPA^%L1FRM(PAR1) 
 S PAR1=$TR(PAR1,"-"," ")
 ;;S PAR1=$$RPL^%L1FRM(PAR1,"ybn","")
 S PAR1=$$INVH^%L1FRM(PAR1)
 S PAR1=PAR1_$J("",10)
 S PAR1=$E(PAR1,1,10)
 S PAR1=PAR1_$J(PAR,1,8)
 Q PAR1 
 ;
NAME(PAR,DEP) ; 
 I $G(PAR)="" Q ""
 N SHEM S SHEM=$$SHEM^W4P(PAR) 
 S SHEM=$$H2U^%L1FRM(SHEM)
 I $$SHEML^W4P(PAR)'?.P S SHEM=SHEM_$$LOAZ(PAR)
 I $D(@$$^W4GL("W4NODPIT")@(PAR)) S SHEM="*** "_SHEM_" ***" 
 I $G(DEP),$$PRTDEP(PAR),$$PRTDEP(PAR)=DEP S SHEM="--- "_SHEM_" ---" 
 Q SHEM 
 ;
PRTDEP(PAR) ; 
 I $G(PAR)="" Q ""
 Q $G(@$$^W4GL("W4PRTDEP")@(PAR))
 ;
LOAZ(PAR) ; 
 N SHEML S SHEML=$$SHEML^W4P(PAR)
 I SHEML?.P Q ""
 Q "<br>"_SHEML
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4THN0
W4THN(DAT) ; [ 21.06.25 13:05 ] [ 19.06.25 19:48 ] [ 11.06.25 11:37 ] 
 N (JB,%ARG,DAT)
 I $G(%ARG("SHOW"))=0 Q
 S ISSUETIME=$H
 ;
 S TMPTHN=$$^W4MAIN("TMPTHN")
 K @TMPTHN
 I $$DEP S TMPTHN=$E(TMPTHN,1,$L(TMPTHN)-1)_",DEP)"
 ;
 I $G(%ARG("DAY")),'$G(%ARG("DAY1")),$G(%ARG("SHAOT"))?.P D DEPCHKBOX Q
 I $G(%ARG("DAY")),'$G(%ARG("DAY1")),$G(%ARG("SHAOT"))'?.P D DAY(DAT,%ARG("SHAOT")) Q
 ;
 S DAT0=DAT
 D ^%W1ARG
 S DAT=DAT0
 ;
 I $G(%ARG("ACTORDS"))="" S %ARG("ACTORDS")=1
 ;
 I $$DEP!$$SET,DAT'["-",$G(%ARG("DAY1"))<2 D DETRKZ
 I $G(%ARG("DAY1"))=1 S %ARG("DAY1")=2
 ;
 S (DAT1,DAT2)=DAT
 S (DTP1,DTP2)=$$^%L1DC(DAT,3)
 I DAT["-" D
 .S DAT1=$P(DAT,"-"),DAT2=$P(DAT,"-",2)
 .S DTP1=$$^%L1DC(DAT1,3)
 .S DTP2=$$^%L1DC(DAT2,3)
 ;
 D TEMP,TEMPT,TEMPTOT
 ;
 K @TEMP,@TEMPT,@TEMPTOT
 ;
 I $$DEP S TEMP=$E(TEMP,1,$L(TEMP)-1)_",DEP)"
 S TMPTHN=$$^W4MAIN("TMPTHN")
 K @TMPTHN
 I $$DEP S TMPTHN=$E(TMPTHN,1,$L(TMPTHN)-1)_",DEP)"
 ;
 S TMPTHN1=$$^W4MAIN("TMPTHN1")
 K @TMPTHN1
 I $$DEP S TMPTHN1=$E(TMPTHN1,1,$L(TMPTHN1)-1)_",DEP)"
 ;
 S TMPTHN2=$$^W4MAIN("TMPTHN2")
 K @TMPTHN2
 I $$DEP S TMPTHN2=$E(TMPTHN2,1,$L(TMPTHN2)-1)_",DEP)"
 ;
 S TMPTHN3=$$^W4MAIN("TMPTHN3")
 K @TMPTHN3
 I $$DEP S TMPTHN3=$E(TMPTHN3,1,$L(TMPTHN3)-1)_",DEP)"
 ;
 ;-------------------------------------------------------------------
 ;
 S MESHAA=$G(MESHAA),ADSHAA=$G(ADSHAA)
 ;
 I $$DEPRKZ D
 .K @TEMP
 .F DT=DTP1:1:DTP2 D
 ..S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D VWIT4ORD(HZ,1)
 .M @TEMPTOT=@TEMP K @TEMP
 ;
 I '$G(%ARG("DISPATH")) D
 .F DT=DTP1:1:DTP2 D
 ..S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D VWIT4ORD(HZ)
 ;
 I $G(%ARG("DISPATH")) D
 .N DT S DT=$$^W4DZ
 .S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D
 ..I $$DLV^W4CLOSE(HZ) Q
 ..I $$^W4HZMH(HZ) Q
 ..N READY S READY=$G(@$$^W4ORD@(HZ,"READY"))
 ..I $$DELIS^W4PRM,READY Q  ; -- 19.03.24
 ..D VWIT4ORD(HZ)
 ;------------------------ SHOW ------------------------------------
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 ;
 I $G(%ARG("DISPATH")) D PRNBACK
 ;
 I $G(%ARG("DAY1"))<2 D
 .W "<br>",!
 . D SPAN(16) W $$H2U^%L1FRM($G(@$$^W4PL@("ESEK",1))) W "</span>",!
 .W "<br>",!
 ;
 ;
 N PRMDEP S PRMDEP=$G(%ARG("MDEP"))
 ;
 I $$DEP D  I $G(%ARG("LATE")),$G(%ARG("LATEHOUR"))="" Q
 .I '$G(%ARG("DAY1")) D DEPCHKBOX
 .I $G(%ARG("LATE")),$G(%ARG("LATEHOUR"))="" Q
 .;
 .D  ; I $$DEPRKZ D
 ..W "<hr>",!
 .. D SPAN
 .. D HZGTRH(DAT) ; --> TX
 .. W $$H2U^%L1FRM(TX)
 .. W "</span>",!
 ..I $D(MHZ)>9,$G(^DBTHN) D 
 ...W "<br>",!
 ...N N S N="" F  S N=$O(MHZ(N)) Q:N=""  D
 ....W "<span style=""color:darkblue;cursor:pointer"" onClick=""ShowOrd('"_N_"')""> "_N_" </span>"
 ..W "<hr><br>",!
 .
 .S DEP="" F  S DEP=$O(@TMPTHN) Q:DEP=""  D
 ..I PRMDEP,","_PRMDEP_","'[(","_DEP_",") Q
 ..D BODY
 ;
 I '$$DEP D BODY
 ;
 I $G(%ARG("DISPATH")) D PRNBACK
 ;
 W "</div>",!
 K @$$^W4MAIN("TMPTHN")
 K @$$^W4MAIN("TMPTHN1")
 K @$$^W4MAIN("TMPTHN2")
 K @$$^W4MAIN("TMPTHN3")
 K @$$^W4MAIN("TEMP")
 Q
 ;
 ;
BODY ;
 I $$DEPRKZ G BODY1
 I $$DEP,'$$DEPDET,$O(@TEMP@(""))="" Q; -- 19/06/25
 ;
 W "<hr>",!
 D SPAN
 D HZGTRH(DAT) ; --> TX
 W $$H2U^%L1FRM(TX)
 W "</span>",!
 ;
 I $$SET,'$$NSET D  Q
 .N SHEM
 .W "<br>"
 .W "<select id=""SET"" onChange=""ChangeSet()"" >",!
 . W "<option value=""0"">"_$$H2U^%L1FRM("-- hq xga --")_"</option>",!
 . S N="" F  S N=$O(@$$^W4GL("P1SET")@(N)) Q:N=""  D
 . . S SHEM=$G(^(N))
 . . W "<option value="""_N_""">"_N_" "_$$H2U^%L1FRM(SHEM)_"</option>",!
 .W "</select>",!
 ;
BODY1 N DEPCONT
 ;
 I $$DEP,'$$DEPDET,$O(@TEMP@(""))="" Q
 ;
 I $$DEP D  W "</div>",! D CONC(1) G EBODY
 .S DEPCONT=0
 .W $$SDVIG
 .W "<div id=""dep"_DEP_""" name=""dep"" dir="""_$$^%W1DIR_""" align=""center"" >",!
 .W " <span style=""font-size:"_$$^W3FSZ(14)_";color:brown"">"
 .W $$^%W1DICT("DEPARTMENT")_" : "_DEP_" "_$$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
 .W "</span>",!
 .W " <span style=""font-size:"_$$^W3FSZ(9)_";color:grey"">"
 . W "<br>",!
 . W $$^%W1DICT("ISSUEREPTIME",$ZD(ISSUETIME,"DD.MM.YY 24:60"))
 .W " </span>"  
 .W "<hr>",!
 .I '$$DEPDET Q
 .
 .D TBL($G(DEP),$$WDTB,1)
 .N TMZ,HZ,PAR,N,QN,FIRST,HR
 .
 .I $$THNDEPHR D  W "</table>" Q
 ..S TMZ="" F  S TMZ=$O(@TMPTHN2@(TMZ)) Q:TMZ=""  D
 ...S HZ="" F  S HZ=$O(@TMPTHN2@(TMZ,HZ)) Q:HZ=""  I $D(^(HZ))>9 D
 ....S FIRST=1
 ....S N="" F  S N=$O(@TMPTHN2@(TMZ,HZ,N)) Q:N=""  D
 .....N ST S ST=$G(^(N)),PAR=$P(ST,"\"),NAME=$P(ST,"\",2),QN=$P(ST,"\",3),HR=$P(ST,"\",4)
 .....I $$SET,$$NSET,'$D(@$$^W4GL("P1SET")@($$NSET,PAR)) Q 
 .....I FIRST D KOTHZ S FIRST=0,DEPCONT=1
 .....W "<tr><td>"_PAR_"</td><td>"_$$H2U^%L1FRM(NAME)_"</td><td> "_$$VWQN(QN)_" </td><td>"_$$H2U^%L1FRM(HR)_"</td>"
 .....W "</tr>",!
 .
 .I $$THNDEPARZ D  W "</table>" Q
 ..S FIRST=1 N I,I1
 ..S PAR="" F  S PAR=$O(@TMPTHN3@(PAR)) Q:PAR=""  D  S FIRST=0
 ...N SQN S SQN=0
 ...N OK S OK=0 S HZ="" F I=1:1 S HZ=$O(@TMPTHN3@(PAR,HZ)) Q:HZ=""  D
 ....S QN=$G(^(HZ)) I QN S OK=1 S SQN=SQN+QN
 ...Q:'OK
 ...W "<tr><td width=""10%"">"_PAR_"</td><td width=""25%"">"_$$NAME(PAR,$G(DEP))_"</td>"
 ...W "<td width=""5%"" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;background-color:yellow""> "
 ... W $$VWQN(SQN)
 ...W "</td>"
 ...S HZ="" F I=1:1 S HZ=$O(@TMPTHN3@(PAR,HZ)) Q:HZ=""  D
 ....S QN=$G(^(HZ))
 ....;;I FIRST D KOTHZ S FIRST=0,DEPCONT=1
 ....W "<td width=""3%"" style=""cursor:pointer"" onClick=""CurrentBorder(this);ShowOrd('"_HZ_"')""> "_$$VWQN(QN)_" </td>"
 ...F I1=I+1:1:20 W "<td>&nbsp;</td>"
 ...W "</tr>",!
 .
 .
 .S TMZ="" F  S TMZ=$O(@TMPTHN1@(TMZ)) Q:TMZ=""  D
 ..S HZ="" F  S HZ=$O(@TMPTHN1@(TMZ,HZ)) Q:HZ=""  I $D(^(HZ))>9 D
 ...I $G(MESHAA)?1N.E,$$MIN(TMZ)<$$MIN(MESHAA) Q
 ...I $G(ADSHAA)?1N.E,$$MIN(TMZ)>$$MIN(ADSHAA) Q
 ...S FIRST=1
 ...S N="" F  S N=$O(@TMPTHN1@(TMZ,HZ,N)) Q:N=""  D
 ....I N["%" Q
 ....S QN=$G(^(N))
 ....I $$SET,$$NSET,'$D(@$$^W4GL("P1SET")@($$NSET,N)) Q 
 ....I FIRST D KOTHZ S FIRST=0,DEPCONT=1
 ....S NAME=$$SHEM^W4P(N)
 ....W "<tr><td>"_N_"</td><td>"_$$NAME(N,$G(DEP))_"</td><td> "_$$VWQN(QN)_" </td>"
 ....W "</tr>",!
 .W "</table>",!
 .
 ;
 S NSET=$$NSET
 I $$SET,NSET D:'$G(%ARG("CONC"))  D CONC(1) G EBODY
 .W $$SDVIG
 .W " <span style=""font-size:"_$$^W3FSZ(12)_";color:green"">"
 .W $$^%W1DICT("SET")_" : "_NSET_" "_$$H2U^%L1FRM($G(@$$^W4GL("P1SET")@(NSET)))
 .W "</span>",!
 .W "<hr>",!
 ;
 I $G(%ARG("CONC")) G END
 ;
 D TBL($G(DEP),90)
 S TMZ="" F  S TMZ=$O(@TMPTHN@(TMZ)) Q:TMZ=""  D
 .S LKH="" F  S LKH=$O(@TMPTHN@(TMZ,LKH)) Q:LKH=""  D
 ..S HZ="" F  S HZ=$O(@TMPTHN@(TMZ,LKH,HZ)) Q:HZ=""  D
 ...D HZGLKH(LKH,TMZ,HZ) ; ---- LAK & ZMAN
 ...S N="" F  S N=$O(@TMPTHN@(TMZ,LKH,HZ,N)) Q:N=""  D
 ....S NS="",NS1=0 F  S NS=$O(@TMPTHN@(TMZ,LKH,HZ,N,NS)) Q:NS=""  S NS1=NS D
 .....S ST=$G(^(NS)) Q:ST=""
 .....I NS=1 D  Q
 ......S CDP=$P(ST,"\") I CDP["-"!(CDP["%") Q
 ......W "<tr "_$$^%W1ALIGN_" style=""font-weight:bold"" >" 
 ...... S NMP=$P(ST,"\",3) I NMP="" S NMP=""
 ...... S QNP=$P(ST,"\",5)
 ...... S HRP=$$CLR($P(ST,"\",8))
 ......
 ...... W "<td width=""15%"">"_CDP_"</td>"
 ...... W "<td width=""40%"">"_$$H2U^%L1FRM(NMP)_"</td>"
 ...... W "<td>"_$$VWQN(QNP)_"</td>"
 ...... W "<td>"_$$H2U^%L1FRM(HRP)_"</td>"
 ......W "</tr>",!
 .....
 .....S CDT=$P(ST,"\")
 .....S NMT=$P(ST,"\",2)
 .....S QNT=$P(ST,"\",4)
 .....S HRT=$$CLR($P(ST,"\",5))
 .....
 .....W "<tr>" 
 ..... W "<td>"_$$SDVIG_CDT_"</td>"
 ..... W "<td>"_$$SDVIG_$$H2U^%L1FRM(NMT)_"</td>"
 ..... W "<td>"_$$SDVIG_$$VWQN(QNT)_"</td>"
 ..... W "<td>"_$$SDVIG_$$H2U^%L1FRM(HRT)_"</td>"
 .....W "</tr>",!
 ....
 ....I NS1>1 W "<tr><td colspan=""4"" >&nbsp;</td></tr>",!
 
 W "</table>",!
 ;
 ;------------------ SVODNY DOCH
 W "<hr>",!
 ;
END I '$$DEP D CONC(2)
 K @TEMP,@TEMPT,@TEMPTOT
 Q
 ;
 ;
TEMP S TEMP=$$^W4MAIN("TEMP")
 Q
TEMPT S TEMPT=$$^W4MAIN("TEMPT")
 Q
 ;
TEMPTOT S TEMPTOT=$$^W4MAIN("TEMPTOT")
 Q
 ;
CONC(COL) ;
 D TEMPTOT
 I $$DEPRKZ G CONCB
 I $$DEPDET,'$G(DEPCONT) Q
 S I=0
 W "<br>",!
 D SPAN
  W $$^%W1DICT("ITEMCONCDEPREP")
 W "</span>",!
 ;
 I $$DEP D
 .N DEP1 S DEP1="" I DEP S DEP1=$G(@$$^W4GL("DEP")@(DEP))
 .W $$SDVIG
 .W " <span style=""font-size:"_$$^W3FSZ(14)_";color:brown"">"
 . W " "_$$^%W1DICT("DEPARTMENT")_" "_DEP_" "_$$H2U^%L1FRM(DEP1)
 .W "</span>",!
 ;
 W "<br><br>",!
CONCB ;
 N TMP S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 N I S N="",I=0 F  S N=$O(@TEMP@(N)) Q:N=""  D  Q:N=""  S I=I+1
 N MAX S MAX=I\2+1
 ;
 N K,AMUD S K=0
 S N="" F  S N=$O(@TEMP@(N)) Q:N=""  D  Q:N=""
 .;;N IND S IND=$J($$DEP^W4P(N),5)_"--"_$$ABCPAR(N)_"-"_$J(N,8)
 .N IND S IND="--"_$$ABCPAR(N)_"-"_$J(N,8)
 .I COL=1 S @TMP@(IND)=$G(@TEMP@(N))
 .I COL=2 D
 ..S @TMP@(IND)=$G(@TEMP@(N)),@TMP@(IND,"N")=N
 ;
 S TMP1=$$^W4MAIN("TMP1") K @TMP1
 ;
 N N,K,K1
 S N="",K=0,K1=0 F  S N=$O(@TMP@(N)) Q:N=""  D
 .S K=K+1,K1=K1+1
 .I K'>MAX M @TMP1@(1,K1)=@TMP@(N) S:K=MAX K1=0 Q
 .M @TMP1@(2,K1)=@TMP@(N)
 ;
 M ^TEMP2=@TEMP
 ;
 I COL=1 D
 .N NN
 .D TBL($G(DEP),$$WDTB,1)
 .S (SVQN,SVQN1,STIM)=0
 .S N="" F  S N=$O(@TMP@(N)) Q:N=""  D  Q:N=""
 ..I N["%" Q
 ..S QN=+$G(^(N)) Q:'QN
 ..S NN=$$NN(N) Q:NN=""
 ..I $$DEP,+$$DEP^W4P(NN)'=DEP,$$PRTDEP(NN)'=DEP Q
 ..I $$SET,$$NSET,'$D(@$$^W4GL("P1SET")@($$NSET,NN)) Q 
 ..S NAME=$$SHEM^W4P(NN)
 ..N QNTOT S QNTOT=$G(@TEMPTOT@(NN))
 ..N VQN S VQN=$$VWQN(QN)
 ..I $$DEPRKZ S VQN=VQN_" <span style=""color:grey;font-size:"_$$^W3FSZ(10)_""" > ( "_QNTOT_" ) </span>"
 ..W "<tr style=""cursor:pointer"
 .. I $$NODPIT(NN,DEP) W ";background-color:lightgrey"
 .. W """ "
 .. W " onClick=""OrdList('"_NN_"','"_DAT_"','"_MESHAA_"','"_ADSHAA_"','"_$G(%ARG("BIDS"))_"','"_$G(%ARG("LATEHOUR"))_"')"" "
 ..W ">",!
 .. W "<td "_$$LEFT_" width=""20%"">"_NN_"</td>"
 .. W "<td width=""50%"">"_$$NAME(NN,$G(DEP))_"</td>"
 .. W "<td "_$$LEFT_" width=""15%""> "_VQN_" </td>"
 .. I '$$NODPIT(NN,DEP) S SVQN=SVQN+VQN
 .. I '$$NODPIT(NN,DEP),QNTOT,$$DEPRKZ S SVQN1=SVQN1+QNTOT
 .. S STIM=STIM+$G(@TEMPT@(NN))
 .. W $$VWTIME(NN)
 ..W "</tr>",!
 .
 .W "<tr style=""background-color:lightyellow"" >"
 . W "<td>&nbsp</td><td>&nbsp;</td>"
 . W "<td style=""font-weight:bold"">" W:SVQN1 " ("_SVQN1_") " W SVQN W "</td>"
 . W "<td style=""font-weight:bold"">"_$S(STIM:STIM,1:"&nbsp;")_"</td>"
 .W "</table>",!
 ;
 I COL=2 D
 .D TBL($G(DEP),90,1)
 .S K=0
 .S K="" F  S K=$O(@TMP1@(1,K)) Q:K=""  D
 ..S QN=$G(@TMP1@(1,K)) Q:'QN
 ..N NN S NN=$G(@TMP1@(1,K,"N"))
 ..S NAME=$$SHEM^W4P(NN)
 ..
 ..W "<tr>"
 .. W "<td>"_$$NAME(NN,$G(DEP))_"</td><td "_$$LEFT_"> "_$$VWQN(QN)_" </td>"_$$VWTIME(NN),!
 ..
 .. W "<td style=""background-color:grey"">&nbsp;</td>"
 ..
 .. S QN=$G(@TMP1@(2,K))
 .. S NN=$G(@TMP1@(2,K,"N"))
 .. S NAME=$$SHEM^W4P(NN)
 ..
 .. W "<td width=""3%"" style=""background-color:grey"" >&nbsp;</td>"
 ..
 .. W "<td>"_$$NAME(NN,$G(DEP))_"</td><td "_$$LEFT_"> "_$$VWQN(QN)_" </td>"_$$VWTIME(NN),!
 ..W "</tr>",!
 .
 .;;I $$ITTIME,'$$DEPRKZ D
 ..W "<tr style=""background-color:yellow"" >"
 .. W "<td colspan=""8"" style=""text-align:center;font-weight:bold;color:darkblue"""">"
 ..  W $$^%W1DICT("TOTALTIME2PREP")_" : "_$$STIME($G(DEP))_" "_$$^%W1DICT("MINUT")
 .. W "</td>"
 ..W "</tr>",!
 .
 .W "</table>",!
 ;
 I $$DEPRKZ W "<br>",!
 I '$$DEPRKZ D
 .I TMPTHN[",DEP",$O(@TMPTHN)="" Q
 .W "<p style=""page-break-before:always"">",!
 .W "<br><br>",!
 ;
 K @TMP
EBODY Q
 ;
 ;
LEFT(STAM) ;
 Q " dir=""LTR"" "_$$^%W1ALIGN
 ;
NN(N) ;
 Q $$SPA^%L1FRM($P(N,"-",4))
 ;
NS(STAM) ;
 Q $O(@TMPTHN@(TMZ,LKH,HZ,N,99999),-1)+1
 ;
NS2(STAM) ;
 Q $O(@TMPTHN2@(TMZ,HZ,99999),-1)+1
 ;
TMZ(HZ) ;--- KOGDA NACHAT GOTOVIT
 N TM,TMZ
 S TM=$$SHAA^W4HZMST(HZ)
 ;;I $$SMSHAA^W4PRM S TM=$$SMSHAA(TM) ; -- 17.04.23 
 ;;S SMT=1
 N IR S IR=$TR($$IR(HZ),"-"," ")
 ;;I '$$TA(IR) S SMT=2
 ;;I $$TSHL^W4HZMST(HZ)>700 S SMT=2
 S SMT=0
  ;
 N INDIR S INDIR=$$FND(IR)
 I $L(IR),INDIR D
 .N SMMIN S SMMIN=$P($G(@$$^W4GL("P1IR")@(INDIR,1)),"\",2)
 .N TMIN S TMIN=TM*60+$P(TM,":",2)-SMMIN
 .S TM=TMIN\60_":"_(TMIN#60)
 S TMZ=$$J($P(TM,":",1)-SMT)_":"_$P($$J(TM),":",2)
 Q TMZ
 ;
J(TM) Q $TR($J(TM,2)," ",0)
 ;
IR(HZ) ;
 N IR S IR=$$IR^W4HZMST(HZ)
 N LK S LK=$$NMB^W4HZMST(HZ)
 I IR?.P,LK S IR=$$IR^W4L(LK)
 Q IR
 ;
HZGTRH(DAT) ;
 I DAT'["-" D  Q
 .S TX="'"_$$^%L1DC(DAT,9)_" "_DAT_" : jix`zl dcear zipkez "
 .I $G(%ARG("LATE")) D
 ..S TX=$G(%ARG("LATEHOUR"))_" dry ixg` mcew meia eribdy  '"_$$^%L1DC(DAT,9)_" "_DAT_" jix`zl zepnfd zniyx "
 .  
 .I $$MIN(MESHAA)!$$MIN(ADSHAA) D
 ..S TX=ADSHAA_" dry cr "_MESHAA_" dryn "_TX
 .I '$$MIN(MESHAA),'$$MIN(ADSHAA),$G(%ARG("DAY")) D
 ..S TX="zeryd lk- "_TX
 ;
 N DAT1,DAT2
 S DAT1=$P(DAT,"-"),DAT2=$P(DAT,"-",2)
 S TX=DAT1_" - "_DAT2_" : dtewzl mihixt z`ved "
 Q
 ;
HZGLKH(LKH,TMZ,HZ) ;
 N LKHNAME,IR
 S LKHNAME=$$LKH^W4L(LKH)
 S IR=$$IR^W4HZMST(HZ)
 ;
 W "<tr><td colspan=""5"">"
  W "<br>"
  W $$H2U^%L1FRM(TMZ_" : dryl oikdl")_$$SDVIG
  W $$H2U^%L1FRM($S($L(IR):IR_" , ",1:"")_LKHNAME_" "_LKH_" : gewll")
  W "&nbsp;&nbsp;&nbsp;"
  W "<span style=""color:darkblue;cursor:pointer"" onClick=""ShowOrd('"_HZ_"')"" >"
   W $$H2U^%L1FRM(HZ_" : dpnfd")
  W "</span>",!
 W "</td></tr>",!
 Q
 ;
TA(IR) ;
 I IR="aia` lz" Q 1
 I IR="aia`-lz" Q 1
 I IR="`z" Q 1
 I IR="`""z" Q 1
 I IR="`''z" Q 1
 Q 0
 ;
SPAN(SZ) ; 
 I '$G(SZ) S SZ=14
 W "<span style=""font-size:"_$$^W3FSZ(SZ)_";text-align:center"">"
 Q 
 ;
SDVIG(STAM) ; 
 Q $$NBSP^%L1FRM(10) 
 ;
TBL(DEP,WD,BORDER) ; 
 W "<table width="""_WD_"%"" style=""font-size:"_$$^W3FSZ(12)_""" "
 I $G(DEP) W " id=""tbl"_DEP_""" name=""tbl"" "
 I $G(BORDER) W "border=""1"" cellspacing=""0"" cellpadding=""1"" "
 W ">",! 
 Q 
 ;
CLR(TX) 
 S TX=$$CLR^W4CLRMN(TX)
 S TX=$$^W4CLRCMN(TX) 
 Q TX 
 ;
DEP(STAM) ; 
 Q $G(%ARG("DEP")) 
 ;
DEPDET(STAM) ; 
 Q $G(%ARG("DEPDET"))&(+$G(%ARG("CONC"))=0)
 ;
DEPRKZ(STAM) ; 
 Q $G(%ARG("DEPRKZ"))
 ;
SET(STAM) ; 
 Q $G(%ARG("SET")) 
 ;
NSET(STAM) ; 
 Q $G(%ARG("NSET")) 
 ;
SMSHAA(SHAA) 
 Q $$SMSHAA^W4SLPLAN(SHAA) 
 ;
SELTIME(TX,ID) ;
 W "<td align=""left"">"_$$^%W1DICT(TX)_"</td>"
 W "<td dir=""LTR"">"
 N I,SEL
 S SEL="<select name=""hr"" id="""_ID_"hr"" >"
 F I=0:1:23 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""">"_NN_"</option>"
 S SEL=SEL_"</select>"
 ;
 S SEL=SEL_"<select name=""mn"" id="""_ID_"mn"" >"
 F I=0:1:59 D
 .N NN S NN=$TR($J(I,2)," ",0)
 .S SEL=SEL_"<option value="""_NN_""">"_NN_"</option>"
 S SEL=SEL_"</select>"
 W SEL
 W "</td>"
 Q
 ;
MIN(SHAA) ;
 Q SHAA*60+$P(SHAA,":",2)
 ;
 ;---------------------------- PREP ---------------------------------
 ;
VWIT4ORD(HZ,TOT) ;
 N (JB,%ARG,HZ,DAT,DEP,SHOW,MESHAA,ADSHAA,DAT1,DAT2,DTP1,DTP2,TEMP,TMPTHN,TMPTHN1,TMPTHN2,TMPTHN3,TOT,MHZ)
 D TEMP,TEMPT
 S A=$G(@$$^W4ORD@(HZ)) Q:A=""
 S LKH=$$NMB^W4HZMST(HZ) I '$$^W4MSL(LKH) Q
 I $$^W4PIZUL(HZ) Q
 ;;I $$TSHL^W4HZMST(HZ)<0 Q
 ;;I $D(@$$^W4GL("P1DEL")@(HZ)) Q
 I $$DEL^W4DEL(HZ) Q
 I $$^W4HZMH(HZ),'$G(%ARG("BIDS")) Q
 I '$$^W4HZMH(HZ),'$G(%ARG("ACTORDS")) Q
 N DATCB S DATCB=$$DATCB^W4HZMST(HZ)
 N DTCB S DTCB=$$^%L1DC($P(DATCB,"  "),3)
 ;
 I $G(%ARG("TODAY")),DTCB'=+$H Q
 ;
 S TRH=$$TRH^W4HZMST(HZ)
 N TDT S TDT=$$^%L1DC(TRH,3)
 I TDT<DTP1!(TDT>DTP2) Q
 ;
 S TIMECB=$P($$DATCB^W4HZMST(HZ),"  ",2)
 ;
 S OK=0
 I $G(%ARG("LATE")) D  Q:'OK
 .;;S (MESHAA,ADSHAA)=0
 .S DTT1=$$^%L1DC(TRH,8)
 .I $$DELIS^W4PRM D
 ..I DTCB=(TDT-1)&(DTT1'=1)!(DTCB=(TDT-2)&(DTT1=1)),$$MIN(TIMECB)'<$$MIN($G(%ARG("LATEHOUR"))) S OK=1 Q
 ;
 S TMZ=$$TMZ(HZ)
 I '$G(TOT),$$MIN(MESHAA)!$$MIN(ADSHAA),$$MIN(TMZ)<$$MIN(MESHAA)!($$MIN(TMZ)>$$MIN(ADSHAA)) Q
 I $G(TOT),$$MIN(MESHAA),$$MIN(TMZ)<$$MIN(MESHAA) Q
 ;
 S MHZ(HZ)=""
 S N="",NS=0 F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N?1N.E,$G(^(N))'?.P D
 .N ST S ST=$G(^(N)) 
 .S PAR=$P($G(^(N)),"\") Q:PAR=""  Q:$E(PAR)="-"  Q:$E(PAR)=":"
 .I $$^W4CDSRV(PAR) Q
 .I PAR=0 S PAR="0-"_N
 .S DEP=+$$DEP^W4P(PAR)
 .N QN S QN=$P($G(@$$^W4ORD@(HZ,N)),"\",5)
 .S @TEMP@(PAR)=$G(@TEMP@(PAR))+QN
 .Q:$G(TOT)
 .I $G(@$$^W4GL("W4ITTIME")@(PAR)) D
 ..N TIME S TIME=$G(^(PAR))
 ..S @TEMPT@(PAR)=$G(@TEMPT@(PAR))+(TIME*QN)
 .
 .S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=$G(@$$^W4ORD@(HZ,N))
 .
 .I '$$NODPIT(PAR) D
 ..S @TMPTHN1@(TMZ,HZ,PAR)=$G(@TMPTHN1@(TMZ,HZ,PAR))+QN
 ..I $$PRTDEP(PAR) D
 ...N DEP S DEP=$$PRTDEP(PAR)
 ...S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=$G(@$$^W4ORD@(HZ,N))
 ...S @TMPTHN1@(TMZ,HZ,PAR)=$G(@TMPTHN1@(TMZ,HZ,PAR))+QN
 .
 .S PAR1=$P(ST,"\",3)
 .S HR=$P(ST,"\",8)
 .S:PAR="" PAR="0-"_N
 .S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 .I '$$NODPIT(PAR) D
 ..S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN
 ..I $$PRTDEP(PAR) D
 ...N DEP S DEP=$$PRTDEP(PAR)
 ...S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 ...S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN
 .
 .S N1="" F  S N1=$O(@$$^W4ORD@(HZ,N,N1)) Q:N1=""  I N1?1N.E D
 ..S ST=$G(@$$^W4ORD@(HZ,N,N1))
 ..I $$^W4CDSRV(N1) Q
 ..S DEP=+$$DEP^W4P(N1)
 ..S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=N1_"\"_ST
 ..N QN1 S QN1=$P($G(@$$^W4ORD@(HZ,N,N1)),"\",3)
 ..I $$DELIS^W4PRM,$$SUG^W4P(PAR)=2 S DEP=+$$DEP^W4P(N1)
 ..
 ..I '$$NODPIT(N1) D
 ...S @TEMP@(N1)=$G(@TEMP@(N1))+QN1
 ...S @TMPTHN1@(TMZ,HZ,N1)=$G(@TMPTHN1@(TMZ,HZ,N1))+QN1
 ...I $$PRTDEP(N1) D
 ....N DEP S DEP=$$PRTDEP(N1)
 ....S @TMPTHN@(TMZ,LKH,HZ,N,$$NS)=N1_"\"_ST
 ....S @TMPTHN1@(TMZ,HZ,N1)=$G(@TMPTHN1@(TMZ,HZ,N1))+QN
 ..
 ..N PAR,QN,HR S PAR=N1,PAR1=$P(ST,"\"),QN=$P(ST,"\",3),HR=$P(ST,"\",4)
 ..S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 ..I '$$NODPIT(PAR) D
 ...S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN1
 ...I $$PRTDEP(PAR) D
 ....N DEP S DEP=$$PRTDEP(PAR)
 ....S @TMPTHN2@(TMZ,HZ,$$NS2)=PAR_"\"_PAR1_"\"_QN_"\"_HR
 ....S @TMPTHN3@(PAR,HZ)=$G(@TMPTHN3@(PAR,HZ))+QN1
 Q
 ;
 ;
NODPIT(PAR,DEP) ;
 I $G(PAR)="" Q 1
 I $D(@$$^W4GL("W4NODPIT")@(PAR)) Q 1
 I $G(DEP),$$PRTDEP(PAR),$$PRTDEP(PAR)=DEP Q 1
 Q 0
 ;
RKV(VL,PRM)
 I $G(PRM)="H" S VL=$$H2U^%L1FRM(VL)
 Q "<span style=""font-weight:bold"">"_VL_"</span>"
 ;
KOTHZ ; 
 N COLSP S COLSP=3
 I $$DEPDET,$$THNDEPHR S COLSP=COLSP+1
 ;
 W "<tr><td colspan="""_COLSP_""" align=""center"" style=""background-color:lightgrey"">"
  W "<table dir="""_$$^%W1DIR_""" width=""100%"">",!
  W " <tr>"
   W "<td width=""25%"">"_$$^%W1DICT("TIME")_" "_$$RKV(TMZ)_"</td>"
   W "<td width=""25%"" style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"')"" >"
    W $$^%W1DICT("ORDER")_" "_$$RKV(HZ)
   W "</td>"
   I '$$DELIS^W4PRM D
   .W "<td>"_$$^%W1DICT("CUSTOMER")_" "_$$RKV($$NMB^W4HZMST(HZ))_" "_$$RKV($$NAME^W4HZMST(HZ),"H")_"</td>"
   I $$THNDEPHR D
   .W "<td>&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 W "</td></tr>",!
 Q
 ;
WDTB(STAM) ; 
 I $$DEPDET Q $S($$THNDEPARZ:90,1:80) 
 Q 70; 60
 ;
CALCKIND ; 
 W "<td>" 
  W $$^%W1DICT("ACTORDS")
  W "&nbsp;"
  W "<input type=""checkbox"" id=""actords"" "
  I $G(%ARG("ACTORDS"))!($G(%ARG("ACTORDS"))="") W "checked=""checked"" "
  W "onClick=""ShowProgramm()"" >"
 W "</td>" 
 ;
 W "<td>" 
  W $$^%W1DICT("BIDS")
  W "&nbsp;"
  W "<input type=""checkbox"" id=""bids"" "
  I $G(%ARG("BIDS")) W "checked=""checked"" "
  W "onClick=""ShowProgramm()"" >"
 W "</td>" 
 ;
 W "<td>" 
  W $$^%W1DICT("TODAYORDERSONLY")
  W "&nbsp;"
  W "<input type=""checkbox"" id=""today"" "
  I $G(%ARG("TODAY")) W "checked=""checked"" "
  W "onClick=""ShowProgramm()"" >"
 W "</td>" 
 ;
 I '$$DEP D
  .W "<td>" 
  .W $$^%W1DICT("CONCONLY")
  .W "&nbsp;"
  .W "<input type=""checkbox"" id=""conc"" "
  .I $G(%ARG("CONC")) W "checked=""checked"" "
  .W "onClick=""ShowProgramm()"" >"
  .W "</td>" 
 Q 
 ;
 ;
THNDEPHR(STAM) ;
 Q $G(@$$^W4PRM@("THNDEP"))=1 
 ; 
THNDEPARZ(STAM) ;
 Q $G(@$$^W4PRM@("THNDEP"))=2 
 ; 
VWQN(QN) ; 
 I QN'["." Q QN 
 Q $J(QN,3,3) 
 ; 
VWHZMH(STAM) ;
 I $$GETP^%W1PRM("REPNAME")="WORKPROGRAMM" Q 1
 I $$GETP^%W1PRM("REPNAME")="DEPPERIODREPORT" Q 1
 Q 0
 ;
ITTIME(STAM) ;
 Q $D(@$$^W4GL("W4ITTIME"))>9
 ;
VWTIME(PAR) ;
 I '$$ITTIME Q "" 
 I $G(PAR)="" Q ""
 N ST 
 S ST="<td style=""color:darkblue"">"_$G(@TEMPT@(PAR))_" "_$$^%W1DICT("MINUT")_"</td>"
 Q ST 
 ;
STIME(DEP) ;
 D TEMPT
 N STIME S STIME=0
 N N S N="" F  S N=$O(@TEMPT@(N)) Q:N=""  D
 .I $$DEP,$G(DEP)?1N.N,$$DEP^W4P(N)'=DEP,$$PRTDEP(N)'=DEP Q
 .S STIME=STIME+$G(@TEMPT@(N)) 
 Q STIME 
 ;
 ;
ORDLIST(DAT,PAR,MESHAA,ADSHAA,BIDS,LATEHOUR) ;
 N (JB,%ARG,DAT,PAR,MESHAA,ADSHAA,BIDS,LATEHOUR)
 ;;S ^AA("W4THN","MESHAA")=MESHAA
 ;;S ^AA("W4THN","ADSHAA")=ADSHAA
 ;;S ^AA("W4THN","PAR")=PAR
 ;;S ^AA("W4THN","DAT")=DAT
 ;;S ^AA("W4THN","BIDS")=$G(BIDS)
 ;
 S %ARG("BIDS")=+$G(BIDS)
 I $L($G(LATEHOUR)) D
 .S %ARG("LATE")=1
 .S %ARG("LATEHOUR")=LATEHOUR
 ;
 D ^W4IN
 S MEPAR="",ADPAR=99999999
 S MESHAA1="",ADSHAA1=24
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I DAT["-" S DT1=$$^%L1DC($P(DAT,"-",1),3),DT2=$$^%L1DC($P(DAT,"-",2),3)
 E  S (DT1,DT2)=$$^%L1DC(DAT,3)
 I $G(PAR)="" Q
 ;
 D ^%W1PCVRM K @VRM
 ;
 S HZM=""
 F DT=DT1:1:DT2 D
 .F  S HZM=$O(@$$^W4GL("W4LINKD")@(DT,HZM)) Q:HZM=""  I $D(@$$^W4ORD@(HZM)) D
 ..I $$HZM^W4MSD(HZM) Q
 ..I $$^W4HZMH(HZM),'$G(%ARG("BIDS")) Q
 ..N SHAA S SHAA=$$TMZ(HZM) ;;$$SHAA^W4HZMST(HZM)
 ..I $G(MESHAA),$$MIN(SHAA)<$$MIN(MESHAA) Q
 ..I $G(ADSHAA),$$MIN(SHAA)>$$MIN(ADSHAA) Q
 ..
 ..I $G(%ARG("LATE")) D  Q:'OK
 ...S OK=0
 ...N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 ...N DTCB S DTCB=$$^%L1DC($P(DATCB,"  "),3)
 ...N TIMECB S TIMECB=$P(DATCB,"  ",2)
 ...N DTT1,TDT S TDT=DT,DTT1=$$^%L1DC(DT,8)
 ...I $$DELIS^W4PRM D
 ....I DTCB=(TDT-1)&(DTT1'=1)!(DTCB=(TDT-2)&(DTT1=1)),$$MIN(TIMECB)'<$$MIN($G(%ARG("LATEHOUR"))) S OK=1
 ..
 ..I $G(%ARG("DISPATH")),$$TM^W4HZMST(HZM) Q
 ..
 ..D CRPAR^W4PRHZ(HZM)
 ..S M1(HZM)=""
 ;
 S SHAA="" F  S SHAA=$O(@VRM@(DT,SHAA)) Q:SHAA=""  D
 .S HZM="" F  S HZM=$O(@VRM@(DT,SHAA,HZM)) Q:HZM=""  D
 ..I $D(@VRM@(DT,SHAA,HZM,PAR)) D
 ...S M(PAR,HZM)=$P($G(^(PAR)),"*")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_"""> ",!
 W "<p>"
  W "<h3>"
   S PAR1=$$SHEM^W4P(PAR)
   W $$^%W1DICT("ORDERLIST4ITEM")
  W "</h3>"
    W "<span style=""color:brown""><h3>" 
     W PAR_" "_$$H2U^%L1FRM(PAR1)
    W "</h3></span>"
 W "</p>",!
 ;
 W "<table cellpadding=""5"" style=""width:80%;font-size:"_$$^W3FSZ(12)_""" border=""1"" cellspacing=""0"" >",! 
 S HZM="" F  S HZM=$O(M(PAR,HZM)) Q:HZM=""  D 
 .W "<tr style=""cursor:pointer"">",!
 . W "<td id=""td"_HZM_""" onClick=""ShowOrd('"_HZM_"',this)"" align=""center"">"
 .  W HZM_"<span style=""color:grey""> [ "_M(PAR,HZM)_" ]</span>"
 . W "</td>"
 .W "</tr>",!   
 W "</table>",!
 W "<br><br>",!
 D ^W4BTN("CLOSE","Close()","RED")
 W "</div>",! 
 Q 
 ;
 ;
DAY(DAT,SHAOT) ; 
 N (JB,%ARG,DAT,SHAOT) 
 I $G(SHAOT)="",$$DELIS^W4PRM S SHAOT="8,11,13"
 ;
 K %ARG("DAY")
 K %ARG("SHAOT")
 S %ARG("DAY1")=1
 ;
 S MESHAA=""
 F I=1:1:$L(SHAOT,",") D 
 .N SHAA S SHAA=$P(SHAOT,",",I) Q:SHAA=""
 .S %ARG("ADSHAA")=$TR($J(SHAA,2)," ",0)_":00"
 .I I=1 S %ARG("MESHAA")="00:01"
 .E  S %ARG("MESHAA")=MESHAA
 .S MESHAA=$P(%ARG("ADSHAA"),":")_":01"
 .D W4THN(DAT)
 ;
 S %ARG("MESHAA")=MESHAA
 S %ARG("ADSHAA")="23:59"
 ;
 D ^W4THN(DAT)
 ;
 S %ARG("MESHAA")="00:00"
 S %ARG("ADSHAA")="00:00"
 D ^W4THN(DAT)
 Q
 ;
 ; 
GETSHAOT ; 
 W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""100%"" >",!
 W "<tr>",!
  W "<td width=""20%"">"
   W $$^%W1DICT("HOURSDIVIDES"),"&nbsp;"
  W "</td>"   
   D
   . N TVAH,TVH,I
   . S TVAH=$G(@$$^W4PRM@("THNSHAOT"))
   . F I=1:1:8 D
   .. S TVH(I)=$P(TVAH,",",I)
   .. W "<td><input type=""text"" size=""1"" id=""shaot"_I_""" value='"_$G(TVH(I))_"' onClick=""this.select()"" /></td>"
  W "</td>",!
  ;
 W "</tr>",! 
 W "</table>",!
 Q
 ;
 ;
DETRKZ ;
 W $$^%W1DICT("SHOWDETAILREP")," "
 W "<input type=""checkbox"" id=""detail"" "
 I $$DEPDET,'$$DEPRKZ W " checked=""checked"" "
 W "onChange=""ClickDetail()"" />"
 ;
 I $$DEP D
 .W $$NBSP^%L1FRM(10)
 .W $$^%W1DICT("SHOWCONCDEP")," "
 .W "<input type=""checkbox"" id=""deprkz"" "
 .I $$DEPRKZ,'$$DEPDET W " checked=""checked"" "
 .W "onChange=""ClickDepRkz()"" />"
 Q
 ;
 ;
DEPCHKBOX ;
 S PRMDEP=$G(%ARG("MDEP"))
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 W "<table width=""90%"" border=""0"">",!
  W "<tr>",!
  D
  .S TMPTHN=$$^W4MAIN("TMPTHN") K @TMPTHN
  .S TMPTHN=$E(TMPTHN,1,$L(TMPTHN)-1)_",DEP)"
  .N DEP S DEP=""
  .F  S DEP=$O(@$$^W4GL("DEP")@(DEP)) Q:DEP=""  S @TMPTHN=$G(@$$^W4GL("DEP")@(DEP))
  ;
  N JJ S JJ=0
  N DEP S DEP="" F  S DEP=$O(@TMPTHN) Q:DEP=""  D
  .W "<td>"
  . N DEP1 S DEP1=$$H2U^%L1FRM($G(@$$^W4GL("DEP")@(DEP)))
  . I DEP1?.P S DEP1=$$^%W1DICT("DEPARTMENT")_" "_DEP
  . W DEP1,"&nbsp;"
  . W " <input type=""checkbox"" name=""mdep"" id=""mdep"_DEP_""" "
  . D
  .. I ","_PRMDEP_","[(","_DEP_",") W " checked=""checked"" " Q
  . W ">"
  .S JJ=JJ+1
  .W "</td>" 
  ;  
 W "<td "_$$INV^%W1ALIGN_" >" 
  D ^W4BUTTON("clear","CLEAR","ChkDeps(false)","color:red")
  S JJ=JJ+1
 W "</td>"
 ;
 W "<td>"
  D ^W4BUTTON("all","ALL","ChkDeps(true)","color:green")
  S JJ=JJ+1
 W "</td>"
 ;
 I $$1024^W4WDSCR W "</tr>",!,"<tr>"
 D
 .S WD=$$^W4KF(180)
 .I $$1024^W4WDSCR S WD=WD*.7 
 .W "<td "
 . I '$$1024^W4WDSCR W "width="""_WD_"px"" "
 . I $$1024^W4WDSCR W "colspan="""_(JJ-2)_"""  "
 .W ">"
 .I $G(%ARG("DAY")),$G(%ARG("SHAOT"))?.P D GETSHAOT
 .W "</td>"
 ;
 I $G(%ARG("LATE")) D
 .S WD=$$^W4KF(220)
 .I $$1024^W4WDSCR S WD=WD*.7 
 .W "<td width="""_WD_"px"" dir=""LTR"" >"
 .  N VL S VL=$G(%ARG("LATEHOUR"))
 .  I VL="" S VL=$G(@$$^W4PRM@("LATEHOUR"))
 .  D TIME^%W1DAT("shaot",VL)
 .  W "&nbsp;"
 .  W $$^%W1DICT("LATEHOUR")
 .W "</td>"
 ;
 W "<td>"
   D ^W4BUTTON("show","SHOW","ShowDeps()")
 W "</td>"
 ;
 W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ; 
PRNBACK ; 
 W "<div id=""divbut"" dir="""_$$^%W1DIR_""" align=""center"">",!
 D ^W4BTN("PRINT","Print()","blue")
 W $$NBSP^%L1FRM(10)
 D ^W4BTN("BACK","Back()","red")
 W "</div>",!
 Q
 ;
FND(IR) ; 
 I $G(IR)="" Q 0
 S IR=$$SPA^%L1FRM(IR)
 S IR=$TR(IR,"-"," ")
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1IR")@(N)) Q:N=""  D  Q:OK
 .I $TR($G(^(N)),"-"," ")=IR S OK=N
 Q OK 
 ;
ABCPAR(PAR) ; 
 N PAR1 S PAR1=$$SHEM^W4P(PAR)
 S PAR1=$$SPA^%L1FRM(PAR1) 
 S PAR1=$TR(PAR1,"-"," ")
 ;;S PAR1=$$RPL^%L1FRM(PAR1,"ybn","")
 S PAR1=$$INVH^%L1FRM(PAR1)
 S PAR1=PAR1_$J("",10)
 S PAR1=$E(PAR1,1,10)
 S PAR1=PAR1_$J(PAR,1,8)
 Q PAR1 
 ;
NAME(PAR,DEP) ; 
 I $G(PAR)="" Q ""
 N SHEM S SHEM=$$SHEM^W4P(PAR) 
 S SHEM=$$H2U^%L1FRM(SHEM)
 I $D(@$$^W4GL("W4NODPIT")@(PAR)) S SHEM="*** "_SHEM_" ***" 
 I $G(DEP),$$PRTDEP(PAR),$$PRTDEP(PAR)=DEP S SHEM="--- "_SHEM_" ---" 
 Q SHEM 
 ;
PRTDEP(PAR) ; 
 I $G(PAR)="" Q ""
 Q $G(@$$^W4GL("W4PRTDEP")@(PAR))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4THNSND
W4THNSND(DAT) ; [ 14.07.21 06:27 ] [ 12.07.21 07:13 ] [ 
 N (JB,%ARG,%REM,DAT)
 S DAT1=$ZD(DAT,"YYMMDD")
 S FILE="/tmp/thn"_DAT1
 ;
 C FILE:(DELETE)
 O FILE:(REWIND:WRITE)
 U FILE
 W "<html>",!
  D ^W4THN(DAT)
 W "</html>",!
 C FILE
 ;
 D PRM^W4MAIL ; --SMTP,USER,PSW,FROM
 D PROCFILE^W4EMAIL(FILE,"",3) ; --> FILE1,FILEC
 ;
 S EMAIL=$$MYMAIL^W4PRM
 ;;S EMAIL="LEV1957@GMAIL.COM"
 S PRM=";WORK PROGRAM "_DAT_";"_EMAIL_";;;;3"
 ;
 D SEND^W4EMAIL(JB,PRM,SMTP,USER,PSW,FROM,FILE1,FILEC)
 Q 
 
 
 
 
 
 
 
 

W4THUM
W4THUM ; [ 01.04.21 12:22 ] [ 25.12.15 14:23 ] [ 29.09.12 16:59 ] 
 N (JB,%ARG,%REM)
 I $G(JB)="" W " JB number is not defined ! " Q
 S SRCH=$G(%ARG("SRCH"))
 ;
 I $G(%ARG("CDKV"))="" S %ARG("CDKV")="ALL"
 I SRCH="" D PUT^%W1PRM("CDKV",%ARG("CDKV"))
 ;
 W "<div align=""center"" >",!
 W " <table id=""TblKvz"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" style=""background-color:white;color:black"" width=""70%"">",!
 W "  <tr style=""background-color:"_$$BGHD^W3CSS($$COLOR^W3CSS)
      W ";color:"_$$FRHD^W3CSS($$COLOR^W3CSS)_""""
  W " >"
 W "   <th width=""10%"">"_$$^%W1DICT("ITEMCODE")_"</th>"
 W "   <th width=""30%"">"_$$^%W1DICT("ITEMNAME")_"</th>"
 W "   <th width=""15%"">"_$$^%W1DICT("PRICE")_"</th>"
 W "   <th width=""15%"">"_$$^%W1DICT("RESTAURANT")_"</th>"
 W "   <th width=""15%"">"_$$^%W1DICT("DELIVERY")_"</th>"
 W "   <th width=""15%"">"_$$^%W1DICT("KIOSK")_"</th>"
 W "  </tr>",!
 N N,NN,I
 D GLP
 ;
 N I S I=0
 K @GLP
 S N="" F  S N=$O(@$$^W4GL("PAR")@(N)) Q:N=""  D
 .I SRCH?1N.N,N'=SRCH," "_$$SHEM^W4P(N)_" "'[(" "_SRCH_" ") Q
 .I SRCH'="",SRCH'?1N.N,'$$^W1SRCH(SRCH,N) Q
 .I $$SUG^W4P(N)=$G(%ARG("CDKV"))!($G(%ARG("CDKV"))="ALL") D
 ..S @GLP@(N)=$$VL($G(@$$GLTHUM@(N)))
 ;
 S NN="",I=0 F  S NN=$O(@GLP@(NN)) Q:NN=""  D
 .S N=NN Q:N=""
 .W "<tr id=""tr"_N_""""
 . W $$STYLE^W4PRTVW(N)
 .W " >" S I=I+1
 .
 .W "<td id=""cd"_N_""">&nbsp;"_N_"&nbsp;</td>"
 .
 .W "<td align=""center"">&nbsp;"_$$H2U^%L1FRM($$SHEM^W4P(N))_"&nbsp;</td>"
 .
 .W "<td align=""center"">"_$J($$MH^W4P(N),2,2)_"</td>",!
 .W "<td align=""center"" >"
 . W "<input type=""checkbox"" id=""rest"_N_""" onClick=""Click('rest','1','"_N_"')"""_$$CHECKED(1,N)_" >"
 .W "</td>"
 .W "<td align=""center"">"
 . W "<input type=""checkbox"" id=""dlv"_N_""" onClick=""Click('dlv','2','"_N_"')"""_$$CHECKED(2,N)_" >"
 .W "</td>"
 .W "<td align=""center"">"
 . W "<input type=""checkbox"" id=""kiosk"_N_""" onClick=""Click('kiosk','3','"_N_"')"""_$$CHECKED(3,N)_">"
 .W "</td>",!
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
CHANGE(PRM) ;
 N GLP,CD,VL,IND D GLP
 S CD=$P(PRM,";") I CD="" Q 0
 S VL=$P(PRM,";",2)
 S IND=$P(PRM,";",3)
 S $P(@GLP@(CD),"\",IND)=VL
 Q 1
 ;
SAVEND ;
 N GLP D GLP
 N N,VL,A
 S N="" F  S N=$O(@GLP@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S VL=$$VL(A)
 .I VL="1\1\1",'$D(@$$GLTHUM@(N)) Q
 .I VL=""!(VL=0),'$D(@$$GLTHUM@(N)) Q
 .S @$$GLTHUM@(N)=VL
 K @GLP
 Q
 ;
GLP S GLP=$$^W4MAIN("TMPPAR")
 Q
 ;
GLTHUM(STAM) ;
 Q $$^W4GL("P1THUM")
 ;
SRCSID(CD) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("P1PARSID")@(%ARG("CDKV"),N)) Q:N=""  I $G(^(N))=CD S OK=N Q
 Q OK
 ;
 ;
CHECKED(IND,PAR) ;
 N VLP S VLP=$$VL($G(@GLP@(PAR)))
 I $P(VLP,"\",IND) Q " checked=""checked"" "
 Q ""
 ;
VL(VLP)
 I VLP=0!(VLP="") S VLP="1\1\1"
 I VLP=1 S VLP="1\0\1"
 I VLP=2 S VLP="0\1\1"
 Q VLP
 ;
NOMSD(PRT) ;
 N A
 S A=$G(@$$GLTHUM@(PRT))
 I A=2 Q 1
 I A["\",$P(A,"\",1)=0 Q 1
 Q 0
 ;
NOMSL(PRT) ;
 N A
 S A=$G(@$$GLTHUM@(PRT))
 I A=1 Q 1
 I $P(A,"\",2)=0 Q 1
 Q 0
 ;
NOKIOSK(PRT) ;
 N A
 S A=$G(@$$GLTHUM@(PRT))
 I $P(A,"\",3)=0 Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4THZ
W4THZ(STAM) ; [ 15.09.17 14:01 ] [ 12.09.08 03:59 ] [
 Q "^[$$^W3MAIN]THZ(""J"_$J_""",HZM)"
 
 

W4THZ1
W4THZ1(STAM) ; [ 15.09.17 14:01 ] [ 16.11.08 16:32 ] [ 12.09.08 03:59 ] [
 Q "^[$$^W3MAIN]THZ1(""J"_$J_""")"
BG(STAM) ;
 Q "^[$$^W3MAIN]THZ1(""J"_$J_""","
 

W4TIKHZ
W4TIKHZ(HZW) ; [ 06.01.22 15:40 ] [ 02.11.16 18:04 ] [ 30.10.16 18:50 ] 
 N (HZW,%ARG,%REM)
 N ER S ER=0
 S TMP="^[$$^W3MAIN]TMPTIK(HZW)"
 D TMPORD
 ;
 S MAIN=""
 I $E($P($G(@TMPORD@(HZW,1)),"~",2))="A" D  I MAIN="" Q
 .S N=1 F  S N=$O(@TMPORD@(HZW,N)) Q:N=""  S A=$G(^(N)) I N,$$LV(A)=0,$$MAIN(A)["^" S MAIN=$$MAIN(A) Q
 .S ER=1
 ;
 I 'ER D
 .S N="" F  S N=$O(@TMPORD@(HZW,N)) Q:N=""  I N D  Q:ER
 ..S A=$G(^(N))
 ..I $$MAIN(A)["^",$$LV(A)=0 S ER=2
 ;
 Q:'ER
 ;
 K @TMP  S K=0 S PRTIK=0
 ;
 S MANA=0
 I ER>1 S MANA=1
 ;
 S N="" F  S N=$O(@TMPORD@(HZW,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .
 .I $$LV(A)=0,$$CD(A),ER>1 S MAIN=$$MAIN(A)
 .I $$LV(A)=0,$E($$CD(A))="A",ER>1 S MAIN=$$FNDMAIN(N)
 .
 .I ER>1,$$LV(A)=0,$$CD(A),$$MAIN(A)'["^" D  Q
 ..S K=K+1 M @TMP@(K)=@TMPORD@(HZW,N)
 ..S PRTIK=0
 .
 .I ER=1,$E($$CD(A))="A" S MANA=$$MANA(N,MAIN)
 .
 .I $$LV(A)=0,MAIN?1"0^".E,'PRTIK D  Q
 ..S K=K+1
 ..S @TMP@(K)=$TR(MAIN,"^","~")
 ..S K=K+1
 ..S @TMP@(K)="1~"_$P(A,"~",2,30)
 ..I $E($$CD(A))="A" S MANA=$$MANA(N,MAIN)
 ..I $$CD(A),MANA="",MAIN,$$^W4EZAT(MAIN) D
 ...S MANA=$$FNDMANA(MAIN,$$CD(A))
 ..D DOP(N,K)
 ..S PRTIK=1
 .;
 .I PRTIK D
 ..S K=K+1
 ..S UR=$$LV(A)+1
 ..S @TMP@(K)=UR_"~"_$P(A,"~",2,20)
 ..D DOP(N,K)
 .
 .I ER>1,'PRTIK D  Q
 ..I $$LV(A)=0,$E($$CD(A))="A" Q
 ..S K=K+1 M @TMP@(K)=@TMPORD@(HZW,N)
 ;
 S N="" F  S N=$O(@TMPORD@(HZW,N)) Q:N=""  I N K ^(N)
 ;
 S K=0
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  I N S K=K+1 M @TMPORD@(HZW,K)=@TMP@(N)
 S @TMPORD@(HZW,"W4TIKHZ")=$ZD($H,"DD.MM.YY  24:60")
 ;
 K @TMP
 Q
 ;
 ;
DOP(N,K) ;
 N MANAK
 S MANAK=$G(@TMPORD@(N,"MANA")) I 'MANAK,$G(MANA) S MANAK=MANA
 I MANAK S @TMP@(K,"MANA")=MANAK
 I $L($G(@TMPORD@(N,"GLIST"))) S @TMP@(K,"GLIST")=@TMPORD@(N,"GLIST")
 Q
 ;
MAIN(A) ;
 Q $P(A,"~",15)
 ;
LV(A) ;
 Q $P(A,"~",1)
 ;
CD(A) ;
 Q $P(A,"~",2)
 ;
FNDMAIN(SH) ;
 N A,N,MAIN S N=$O(@TMPORD@(HZW,SH)) Q:N=""
 S MAIN=""
 S A=$G(^(N)) I N,$$LV(A)=0,$$MAIN(A)["^" S MAIN=$$MAIN(A)
 Q MAIN
 ;
MANA(SH,MAIN)
 N MANA S MANA=""
 D TMPORD
 N A S A=$G(@TMPORD@(HZW,SH))
 I $G(MAIN)="" S MAIN=$$FNDMAIN(SH) I MAIN="" Q ""
 N CD S CD=$$CD(A)
 N CDMAIN S CDMAIN=$P(MAIN,"^",2) I CDMAIN="" Q ""
 I $E(CD)="A" D
 .I $$DD^W4EZA(CDMAIN) S MANA=$G(@$$^W4GL("P1EZA")@(CDMAIN,CD)) Q
 .I $$DD^W4EZT(CDMAIN) S MANA=$G(@$$^W4GL("P1EZT")@(CDMAIN,CD)) Q
 Q MANA
 ;
TMPORD ;
 S TMPORD=$$^W3TMPORD
 Q
 ;
FNDMANA(MAIN,CD) ;
 I $G(MAIN)=""!($G(CD)="") Q ""
 N GL S GL=$$^W4GL("P1EZA")
 N MANA S MANA=""
 I $D(@GL@(MAIN))<10 S GL=$$^W4GL("P1EZT")
 N SET S SET="" F  S SET=$O(@GL@(MAIN,SET)) Q:SET=""  D  Q:MANA
 .N NS S NS=$E(SET,2,10) Q:NS=""
 .I $D(@$$^W4GL("P1SETA")@(NS,CD)) S MANA=$G(@GL@(MAIN,SET))
 Q MANA
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIKKL
W4TIKKL ; [ 14.02.19 05:34 ] [ 12.02.19 15:23 ] [ 01.01.19 17:55 ] 
 Q
1 S LK="" F  S LK=$O(^KLF(LK)) Q:LK=""  D
 .S DAT="" F  S DAT=$O(^KLF(LK,"KP",DAT)) Q:DAT=""  D
 ..S VD="" F  S VD=$O(^KLF(LK,"KP",DAT,VD)) Q:VD=""  D
 ...S NOM="" F  S NOM=$O(^KLF(LK,"KP",DAT,VD,NOM)) Q:NOM=""  D
 ....S A=$G(^(NOM))
 ....I $E(DAT,$L(DAT)-3,$L(DAT))="0099" D
 .....I $D(^KLF(LK,"KP",$E(DAT,3,8)_"0001",VD,NOM)) Q:NOM=""  D
 ......W "LK="_LK_"  DAT="_DAT_" VL="_A,!
 ......K ^KLF(LK,"KP",DAT,VD,NOM)
 ......M ^KLF(LK,"KP",$E(DAT,1,8)_"0001",VD,NOM)=^KLF(LK,"KP",$E(DAT,3,8)_"0001",VD,NOM)
 ......K ^KLF(LK,"KP",$E(DAT,3,8)_"0001",VD,NOM)
 ;
2 S LK="" F  S LK=$O(^KLF(LK)) Q:LK=""  D
 .S DAT="" F  S DAT=$O(^KLF(LK,"KP",DAT)) Q:DAT=""  D
 ..S VD="" F  S VD=$O(^KLF(LK,"KP",DAT,VD)) Q:VD=""  D
 ...S NOM="" F  S NOM=$O(^KLF(LK,"KP",DAT,VD,NOM)) Q:NOM=""  D
 ....S A=$G(^(NOM))
 ....I $E(DAT,1,2)=19 D
 .....I '$D(^KLF(LK,"KP",20_DAT,VD,NOM)) Q:NOM=""  D
 ......W "LK="_LK_"  DAT="_DAT_" VL="_A,!
 ......M ^KLF(LK,"KP",20_DAT,VD,NOM)=^KLF(LK,"KP",DAT,VD,NOM)
 ......K ^KLF(LK,"KP",DAT,VD,NOM)
 Q
 ;
99 ; 
 S LK="" F  S LK=$O(^KLF(LK)) Q:LK=""  D
 .S DAT="" F  S DAT=$O(^KLF(LK,"KP",DAT)) Q:DAT=""  D
 ..S VD="" F  S VD=$O(^KLF(LK,"KP",DAT,VD)) Q:VD=""  D
 ...S NOM="" F  S NOM=$O(^KLF(LK,"KP",DAT,VD,NOM)) Q:NOM=""  D
 ....I $E(DAT,1,4)<2019 Q
 ....I VD'="H" Q
 ....I $E(DAT,$L(DAT)-3,$L(DAT))="0099" W $R,!
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIKLKH
W4TIKLKH ; [ 10.08.23 07:51 ] [ 09.08.23 18:02 ] [ 
 K ^W4TIKLKH
 S N="" F  S N=$O(^P1HZ(N)) Q:N=""  D
 .S A=$G(^(N))
 .S NMB=$P(A,"\") Q:$L(NMB)<4
 .S NM=$P(A,"\",2)
 .S KTV=$P(A,"\",3)
 .S IR=$$IR^W4HZMST(N)
 .S ^W4TIKLKH(NMB,"NM")=NM
 .S ^W4TIKLKH(NMB,"STREET")=KTV
 .S ^W4TIKLKH(NMB,"CITY")=IR
 ;
 S NMB="" F  S NMB=$O(^W4TIKLKH(NMB)) Q:NMB=""  D
 .I $$ISCR^W4L(NMB),$G(W4TIKLH)'="CR" Q
 .S NM=$G(^W4TIKLKH(NMB,"NM")) Q:NM=""
 .D PUT^W4L(NMB,NM,"LKH")
 .S STREET=$G(^W4TIKLKH(NMB,"STREET")) Q:STREET=""
 .S CITY=$G(^W4TIKLKH(NMB,"CITY"))
 .D PUT^W4L(NMB,STREET,"KTV")
 .D PUT^W4L(NMB,CITY,"IR")
 Q
 

W4TIKMSD
W4TIKMSD ; [ 26.01.23 15:55 ] [ 16.01.20 08:53 ] [ 
 S JB=14461
 K ^W4LINKI,^W4LINKR
 ;
 S HZ="" F  S HZ=$O(@$$^W4GL("W4LINK")@(HZ)) Q:HZ=""  D
 .I '$D(@$$^W4ORD@(HZ)) K @$$^W4GL("W4LINK")@(HZ)
 ;
 S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKO")@(HZ)) Q:HZ=""  D
 .I '$D(@$$^W4ORD@(HZ)) K @$$^W4GL("W4LINKO")@(HZ)
 ;
 S HZ="" F  S HZ=$O(@$$^W4ORD@(HZ)) Q:HZ=""  D
 .S MSD=$$MSDHZM^W4HZMST(HZ) Q:'MSD
 .I '$$HZM^W4MSL(HZ) Q
 .S $P(@$$^W4GL("W4LINK")@(HZ),"~")=MSD
 .S $P(@$$^W4GL("W4LINKO")@(HZ),"~")=MSD
 .S DT=$$^%L1DC($P($$DATCB^W4HZMST(HZ)," "),3) Q:'DT
 .S CODE=$$NMB^W4HZMST(HZ) Q:CODE=""
 .S @$$^W4GL("W4LINKI")@(CODE,MSD,HZ)=DT
 .S @$$^W4GL("W4LINKR")@(MSD,HZ)=DT
 ;
 S LINKD=$$^W4GL("W4LINKD")
 S LINKDR=$$^W4GL("W4LINKDR")
 ;
 S DT="" F  S DT=$O(@LINKD@(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(@LINKD@(DT,HZ)) Q:HZ=""  D
 ..I '$D(@$$^W4ORD@(HZ)) K @LINKD@(DT,HZ) Q
 ..S $P(@LINKD@(HZ),"~")=$$MSDHZM^W4HZMST(HZ)
 ;
 S DT="" F  S DT=$O(@LINKDR@(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(@LINKDR@(DT,HZ)) Q:HZ=""  D
 ..I '$D(@$$^W4ORD@(HZ)) K @LINKDR@(DT,HZ) Q
 ..S $P(@LINKDR@(HZ),"~")=$$MSDHZM^W4HZMST(HZ)
 ;
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4TIKSHV
W4TIKSHV ; [ 08.05.25 05:49 ] [ 
 N (JB,%ARG)
 S N=""  F  S N=$O(^DUMP(N)) Q:N=""  D
 .S A=$G(^(N))
 .S DAT=$P(A,"|",7)
 .S TIM=$P(A,"|",6)
 .I '$P(A,"|",2),'$P(A,"|",3) Q
 .S TIM=TIM*3600+($P(TIM,":",2)*60)
 .S IND=$$^%L1DC(DAT,3)_$TR($J(TIM,5)," ",0)_1
 .;;I '$D(^DUMP1(IND)) W "ERR1: N="_N_" IND="_IND,! Q
 .;;I $G(^DUMP1(IND))'=N W "ERR2: N="_N_" IND="_IND_" N1="_$G(^DUMP1(IND)),!
 .I '$D(^DUMP1(IND)) S ^DUMP1(IND)=N Q
 .I $G(^DUMP1(IND))'=N S ^DUMP1(IND)=N
 ;
 ;
 S TRANL="^TRANL"
 S N="" F  S N=$O(^TRANL("ASM",N)) Q:N=""  D
 .S A=$G(^(N)) 
 .S ND=$P(A,"^")
 .S LI=$P(A,"^",2)
 .S DA=$G(^DUMP(ND)) Q:DA=""
 .S HOV=$P(DA,"|",3)
 .S ZIK=$P(DA,"|",2)
 .S DAT=$P(DA,"|",7)
 .S TIME=$P(DA,"|",6)
 .S ASM=$P(DA,"|",5)
 .I ('HOV&'ZIK)!'ASM Q
 .S TM=TIME*3600+($P(TIME,":",2)*60)
 .S HH=$$^%L1DC(DAT,3)_","_TM
 .S @TRANL@(LI)=HH_"^"_$G(HOV)_"^"_$G(HOVI)_"^"_$G(ZIK)_"^"_$G(ZIKI)
 .S $P(@TRANL@(LI),"^",10)=ASM
 .S $P(@TRANL@(LI),"^",11)=DAT_" "_TIME
 .S $P(@TRANL@(LI),"^",12)=$G(@$$^W4PRM@("ASH","MASOF"))
 .S $P(@TRANL@(LI),"^",15)=ND
 Q
 

W4TIKTIK
W4TIKTIK ; [ 29.06.25 15:21 ] [ 
 S N="" F  S N=$O(^W4ML(N)) Q:N=""  D
 .D PREP(N)
 Q
 ;
 ;
PREP(N) ;
 N (JB,N)
 S A=$G(^W4ML(N))
 S IT=$P(A,"*",4)-$P(A,"*",2)
 S REF0="^W4ML("""_N_""""
 S REF=REF0_")"
 S END=0,OU=0
 ;
 S IT1=0
 S REF0=$NAME(@REF)
 S REF0=$E(REF0,1,$L(REF0)-1)
 ;
 F  S REF=$Q(@REF) Q:REF'[REF0  D
 .I REF["ITK",REF'[",660" D
 ..S IT1=0
 ..S A=$G(@REF)
 ..S ND=$QS(REF,$QL(REF)) Q:ND=""
 ..S J="" F  S J=$O(^W4IDK(ND,J)) Q:J=""  I J D
 ...S ST=$G(^(J)) Q:$P(ST,"\")'=N
 ...S IT1=IT1+$P(ST,"\",5)
 .
 .I REF["ORD" D
 ..S ORD=$QS(REF,$QL(REF)) Q:ORD=""
 ..S J="" F  S J=$O(^P1HZ(ORD,J)) Q:J=""  I J D
 ...S ST=$G(^(J))
 ...I $P(ST,"\")=N S IT1=IT1-$P(ST,"\",5)
 .
 .I REF["OUT" D
 ..S TM=$QS(REF,$QL(REF)) Q:TM=""
 ..S J="" F  S J=$O(^W4DOC(TM,J)) Q:J=""  I J D
 ...S ST=$G(^(J))
 ...I $P(ST,"\")=N S IT1=IT1-$P(ST,"\",4)
 ;
 W "IT="_IT_"  IT1="_IT1,!
 ;
 S NDL=660 ;$O(^W4IDK(999999),-1)
 S LAST=$O(^W4IDK(NDL,99999),-1)+1
 S ST=N
 S $P(ST,"\",2)=$G(^MLPAR(N))
 S $P(ST,"\",4)=IT
 S $P(ST,"\",5)=IT1
 S ^W4IDK(NDL,LAST)=ST
 S ^W4ML(N,$H-1,"I",0,"ITK",NDL)=""
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIMDLV
W4TIMDLV ; [ 16.02.26 17:40 ] [ 28.01.26 12:55 ] [ 02.01.26 05:10 ] 
 N (JB,%ARG,%REM,%REPN) ; ---- LIFNEY QUERY !!
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 Q:'$G(JB)
 D ^W4IN K %L1PC S SHL=""
 S %REPN="TIMDLV"
 ;
 K %L1PC
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 S @$$^%W1GLPRM@("REPN")="TIMDLV"
 S @$$^%W1GLREP@("MIUN","PROG")="PREP^W4TIMDLV"
 S @$$^%W1GLPRM@("BEGIN")=1
 Q
 ;
 ;
PREP ;
 N TMP,DT,TIME,HZ,DT1,DT2
 S TMP=$$^W4MAIN("TMP") K @TMP
 S PRTN=$$^%W1JB
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 N REPDAYS S REPDAYS=$$GETP^%W1PRM("REPDAYS")
 ;
 S DR=0
 F DT=DT1:1:DT2 D
 .I REPDAYS,'$E(REPDAYS,$$^%L1DC(DT,8)) Q
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..I '$$HZM^W4MSL(HZ) Q
 ..I $$PSL^W4HZMST(HZ)<1 Q
 ..I $$TAKEAWAY^W4HZMST(HZ) Q
 ..I $$DEL^W4DEL(HZ) Q
 ..S TIME=$$TIMDLV^W4TOT(HZ) I 'TIME Q
 ..S ST=$$TIME(HZ)
 ..I ST'="" S @TMP@(DT,HZ)=ST
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
HZ ;
 S MSL=$$PSL^W4HZMST(HZ) I MSL="" S OK=0 Q
 S MSL1=$G(@$$^W4GL("P1SL")@(MSL))
 S KTV=$$KTV^W4HZMST(HZ)
 S IR=$$IR^W4HZMST(HZ)
 S x1=1
 N A S A=$G(@GLOB)
 S x2=$P(A,"*",2)
 S x3=$P(A,"*",3)
 S x4=$P(A,"*",4)
 S x5=x2+x3
 S x6=x2+x3+x4
 Q
 ;
SUM ; 
 N DR S DR=0
 I '$G(SUM(K,1)) Q
 S SUM(K,2)=$J(SUM(K,2)/SUM(K,1),DR,DR)
 S SUM(K,3)=$J(SUM(K,3)/SUM(K,1),DR,DR)
 S SUM(K,4)=$J(SUM(K,4)/SUM(K,1),DR,DR)
 S SUM(K,1)=$J(SUM(K,1),0,0)
 Q
 ;
TIME(HZ) ;
 N (JB,%ARG,%REM,HZ)
 S TIME=$$TIMDLV^W4TOT(HZ) ;;I 'TIME Q ""
 S MAX=$G(@$$^W4PRM@("MAXTIME"),180) ;;I TIME>MAX Q ""
 N PCTIME S PCTIME=$G(@$$^W4ORD@(HZ,"FIRSTPC"))
 I 'PCTIME,$G(@$$^W4ORD@(HZ,"LASTPC")) D
 .S PCTIME=^("LASTPC")
 I 'PCTIME,$G(@$$^W4ORD@(HZ,"PCAFTPAY")) D
 .S PCTIME=^("PCAFTPAY")
 ;
 N PREPTIME S PREPTIME=$G(@$$^W4ORD@(HZ,"TRICKPREP"))
 I 'PREPTIME S PREPTIME=$G(@$$^W4ORD@(HZ,"TEAVPREP"))
 I 'PREPTIME S PREPTIME=$G(@$$^W4ORD@(HZ,"READY"))
 I 'PREPTIME D
 .N GL S GL=$$^W4GL("W4BONA")
 .N PRN,TIME
 .N DZ S DZ=$$^%L1DC($$TRH^W4HZMST(HZ),3)
 .N DT,OK S DT=DZ-1,OK=0
 .F  S DT=$O(@GL@(DT)) Q:DT=""  Q:DT>(DZ+1)  D  Q:OK
 ..S PRN="" F  S PRN=$O(@GL@(DT,PRN)) Q:PRN=""  D  Q:OK
 ...S TIME="" F  S TIME=$O(@GL@(DT,PRN,TIME)) Q:TIME=""  I $D(^(TIME,HZ)) S OK=$G(^(HZ))
 .I OK S PREPTIME=OK
 ;
 N SNDTIME S SNDTIME=$G(@$$^W4ORD@(HZ,"TRICKWAY"))
 ;
 I 'SNDTIME D
 .N A S A=$G(@$$^W4ORD@(HZ,"TM"))
 .N TM S TM=$P(A,"\",2)
 .N DT S DT=$$^%L1DC($$TRH^W4HZMST(HZ),3)
 .N SHAA S SHAA=$$SHAA^W4HZMST(HZ) I SHAA>9,TM<6 S DT=DT-1
 .S SNDTIME=DT_","_(TM*3600+($P(TM,":",2)*60))
 ;
 N DLVTIME
 S DLVTIME=$G(@$$^W4ORD@(HZ,"SUPPLIED"))
 I 'DLVTIME S DLVTIME=$G(@$$^W4ORD@(HZ,"TRICKCOMPL"))
 N DIFPREP,DIFSND,DIFDLV,DIFLEAV,DIFALL
 S (DIFPREP,DIFSND,DIFDLV,DIFLEAV,DIFALL)="" 
 ;
 I PREPTIME,PCTIME S DIFPREP=$$DIF^%L1TIME(PREPTIME,PCTIME)
 I SNDTIME,PREPTIME S DIFSND=$$DIF^%L1TIME(SNDTIME,PREPTIME)
 I DLVTIME,SNDTIME S DIFDLV=$$DIF^%L1TIME(DLVTIME,SNDTIME)
 I SNDTIME,PCTIME S DIFLEAV=$$DIF^%L1TIME(SNDTIME,PCTIME)
 I DLVTIME,PCTIME S DIFALL=$$DIF^%L1TIME(DLVTIME,PCTIME)
 ;
 I DIFPREP<0!(DIFPREP>MAX) S DIFPREP=""
 I DIFSND<0!(DIFSND>MAX) S DIFSND=""
 I DIFDLV<0!(DIFDLV>MAX) S DIFDLV=""
 I DIFLEAV<0!(DIFLEAV>MAX) S DIFLEAV=""
 I DIFALL<0!(DIFALL>300) S DIFALL="" 
 Q DIFLEAV_"*"_DIFPREP_"*"_DIFSND_"*"_DIFDLV_"*"_DIFALL_"*"_PCTIME_"*"_PREPTIME
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIMPR
W4TIMPR ; [ 18.06.25 14:58 ] [ 19.05.25 11:53 ] [ 18.05.25 15:56 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) Q
 ;
 S MEDT=$$^%L1DC(%ARG("MEDAT"),3)
 S ADDT=$$^%L1DC(%ARG("ADDAT"),3)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  ;
  W "<table ""tbprot"" width=""60%"" border=""1"" cellspacing=""0"">",!
   D KOT
   D BODY
  W "</table>",!
 W "</div>",! 
 Q
 ; 
 ;
KOT ;
 W "<tr>"
  W "<th>"
    W $$^%W1DICT("CHANGETIME")
  W "</th>"
  ;
  W "<th>"
   W $$^%W1DICT("ORDER")
  W "</th>"
  ;
  W "<th>"
   W $$^%W1DICT("OLDTIME")
  W "</th>"
  ;
  W "<th>"
    W $$^%W1DICT("NEWTIME")
  W "</th>"
  ;
  W "<th>"
    W $$^%W1DICT("DONAME")
  W "</th>"
  ;
 W "</tr>",!
 Q
 ;
 ;
BODY ;
 S GL=$$^W4GL("W4TIMPR")
 ;
 F DT=MEDT:1:ADDT D
 .S TM="" F  S TM=$O(@GL@(DT,TM)) Q:TM=""  D
 ..S ST=$G(@GL@(DT,TM))
 ..D PRS^%L1FRM(ST,"ORD\DATOLD\TIMOLD\DATNEW\TIMNEW\WHO","\")
 ..W "<tr>"
 .. W "<td align=""center"" dir=""LTR"">"
 ..W $ZD(DT_","_TM,"DD.MM.YY 24:60")
 .. W "</td>"
 ..
 .. W "<td align=""center"">"
 ..  W ORD
 .. W "</td>"
 ..
 .. W "<td align=""center"" dir=""LTR"">"
 ..  W DATOLD_" "_TIMOLD
 .. W "</td>"
 ..
 .. W "<td align=""center"" dir=""LTR"" >"
 ..  W DATNEW_" "_TIMNEW
 .. W "</td>"
 ..
 .. W "<td>"
 ..  I WHO?5N S WHO=$$^W4NAME(WHO)
 ..  W $$NBSP^%L1FRM(3)_$$H2U^%L1FRM(WHO)_$$NBSP^%L1FRM(3)
 .. W "</td>"
 ..W "</tr>",! 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIMPRP
W4TIMPRP ; [ 26.04.26 02:16 ] [ 29.01.26 10:59 ] [ 08.01.25 14:51 ] 
 N (JB,%ARG,%REM)
 S FS=14
 D ^%W1HD("TIMEPREPREPORT")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
 W "<p></p>",!
 W "<table>"
  W "<tr>"
   W "<td>"
    D ^%W1DAT("DAT",$$^W4DZ,$$^%W1DICT("DATE"))
   W "</td>"
   D TDSP1
   W "<td>"
    D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22,,,"_FS)
   W "</td>"
   D TDSP1
   W "<td>"
    D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"Print()","color:blue","wh,22,,,"_FS)
   W "</td>"
   D TDSP1
   W "<td>"
    D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22,,,"_FS)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 S DAT=$G(%ARG("DAT")) Q:'DAT
 S DT=$$^%L1DC(DAT,3)
 ;
 W "<p>&nbsp;</p>",!
 W "<table id=""tbtimprp"" cellpadding=""5"" style=""font-size:"_$$^W3FSZ(12)_""" width=""60%"" >",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>",!
   W "<th>"_$$^%W1DICT("MKLINEINPTIME")_"</th>",!
   W "<th>"_$$^%W1DICT("ENDPREPARINGTIME")_"</th>",!
   W "<th>"_$$^%W1DICT("MAKETIME")_"</th>",!
  W "</tr>",!
  ;
 S (D1,D2)=DT,REST=""
 D FRM^W4TMPREP
 D TMP^W4TMPREP
 ;
 S (I,STIME)=0
 S N="" F  S N=$O(@TMP@(DT,N)) Q:N=""  D
 .W "<tr>"
 .S A=$G(^(N))
 .S ORD=N
 .S TIMEIN=$P(A,"\",2)
 .S TIMEOUT=$P(A,"\",3)
 .S TIMEPREP=$P(A,"\",4)
 .W "<td "
 .W $$^W4TOUCH_"=""ShowOrd('"_ORD_"')"" style=""cursor:pointer"" "
 .W ">"_ORD_"</td>"
 .S I=I+1
 .W "<td>"_TIMEIN_"</td>"
 .W "<td>"_TIMEOUT_"</td>"
 .W "<td>"_TIMEPREP_"</td>"
 .S STIME=STIME+TIMEPREP 
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">",!
  D TDSP,TDSP,TDSP
  W "<td>"_$J(STIME,2,2)_"</td>"
 W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">",!
  D TDSP,TDSP
  W "<td>"_$$^%W1DICT("ORDQN")_" "_I_"</td>"
  S AVRG=0
  I I S AVRG=STIME/I
  W "<td>"_$$^%W1DICT("HACHANA")_" "_$J(AVRG,2,2)_"</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ; 
TDSP ;
 W "<td>&nbsp;</td>"
 Q 
TDSP1 ;
 W "<td width=""2%"">&nbsp;</td>"
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIMSP
W4TIMSP ; [ 26.04.26 02:13 ] [ 28.01.26 11:00 ] [ 06.04.25 15:43 ] 
 N (JB,%ARG,%REM)
 S FS=14
 D ^%W1HD("DLVTIMEDAYREPORT")
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
 W "<p></p>",!
 W "<table>"
  W "<tr>"
   W "<td>"
    S DT=$G(%ARG("DAT"))
    I 'DT S DT=$$^W4DZ
    S DT=$$^%L1DC(DT,3)
    D ^%W1DAT("DAT",DT,$$^%W1DICT("DATE"))
   W "</td>"
   D TDSP1
   W "<td>"
    D ROUNDBUT^%W1JS("submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green","wh,22,,,"_FS)
   W "</td>"
   D TDSP1
   W "<td>"
    D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"Print()","color:blue","wh,22,,,"_FS)
   W "</td>"
   D TDSP1
   W "<td>"
    D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22,,,"_FS)
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 S DAT=$G(%ARG("DAT")) Q:'DAT
 S DT=$$^%L1DC(DAT,3)
 ;
 W "<p>&nbsp;</p>",!
 W "<table id=""tbtimsp"" cellpadding=""5"" style=""font-size:"_$$^W3FSZ(12)_""" width=""98%"" >",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("NPP")_"</th>",!
   W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>",!
   W "<th>"_$$^%W1DICT("ADDRESS")_"</th>",!
   W "<th>"_$$^%W1DICT("SUM")_"</th>",!
   W "<th>"_$$^%W1DICT("COURIERNUMBER")_"</th>",!
   W "<th>"_$$^%W1DICT("COURIERNAME")_"</th>",!
   W "<th>"_$$^%W1DICT("PREPIN")_"</th>",!
   W "<th>"_$$^%W1DICT("ARRIVEDTIME")_"</th>",!
   W "<th>"_$$^%W1DICT("DELIVERYTIME")_"</th>",!
   W "<th>"_$$^%W1DICT("DELIVERYTIME30")_"</th>",!
   W "<th>"_$$^%W1DICT("DELIVERYTIME30QN")_"</th>",!
  W "</tr>",!
  ;
 S (D1,D2)=DT,REST=""
 D TMP
 D FRM(DT)
 ;
 S (I,K,STIME,STIME30)=0
 S NORM=30
 S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
 .W "<tr>"
 .S A=$G(^(N))
 .S ORD=N
 .S TIMEIN=$P(A,"\")
 .S TIMEOUT=$P(A,"\",2)
 .S TIMEDLV=$P(A,"\",3)
 .S I=I+1
 .W "<td>"_I_"</td>"
 .W "<td "
 .W $$^W4TOUCH_"=""ShowOrd('"_ORD_"')"" style=""cursor:pointer"" "
 .W ">"_ORD_"</td>"
 .W "<td>"_$$HB($$KTVM^W4HZMST(ORD))_"</td>"
 .W "<td>"_$$TSHL^W4HZMST(ORD)_"</td>"
 .S PSL=$$PSL^W4HZMST(ORD),PSL1=""
 .I PSL S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
 .W "<td>"_PSL_"</td>"
 .W "<td>"_$$HB(PSL1)_"</td>"
 .W "<td>"_$$T^%L1TIME(TIMEIN)_"</td>"
 .W "<td>"_$$T^%L1TIME(TIMEOUT)_"</td>"
 .W "<td>"_TIMEDLV_"</td>"
 .W "<td>"_$S(TIMEDLV'>NORM:TIMEDLV,1:"&nbsp;")_"</td>"
 .I TIMEDLV,TIMEDLV'>NORM S K=K+1
 .W "<td align=""center"">"_$S((TIMEDLV'>NORM)&TIMEDLV:K,1:"&nbsp;")_"</td>"
 .S STIME=STIME+TIMEDLV 
 .I TIMEDLV,TIMEDLV'>NORM S STIME30=STIME30+TIMEDLV 
 .W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">",!
  D TDSP,TDSP,TDSP,TDSP,TDSP,TDSP,TDSP,TDSP
  W "<td>"_$J(STIME,2,2)_"</td>"
  W "<td>"_$J(STIME30,2,2)_"</td>"
  D TDSP
 W "</tr>",!
 ;
 W "<tr style=""background-color:yellow;font-weight:bold"">",!
  D TDSP,TDSP,TDSP,TDSP,TDSP,TDSP,TDSP,TDSP
  W "<td>"_$$^%W1DICT("ORDQN")_" "_I_"</td>"
  W "<td>"_$$^%W1DICT("TOTORDQN30")_" "_K_"</td>"
  W "<td>"_$$^%W1DICT("PERCENT30")_" "_$S('I:"",1:$J((K/I)*100,2,2)_"%")_"</td>"
 W "</tr>",!
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ; 
FRM(DT) ;
 N T1,T2,DIF
 K @TMP
 N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 .I $$HZM^W4MSD(HZ) Q
 .I $$DEL^W4DEL(HZ) Q
 .I $$TAKEAWAY^W4HZMST(HZ) Q
 .I $$PAPJ^W4PRM,$$NMB^W4HZMST(HZ)=$$MPLK^W4MPCHZ!($$NMB^W4HZMST(HZ)=$$COUPLK^W4MPCHZ) Q
 .S T1=$G(@$$^W4ORD@(HZ,"FIRSTPC"))
 .S T2=$G(@$$^W4ORD@(HZ,"SUPPLIED"))
 .;;I 'T1!'T2 Q
 .I 'T1 Q
 .S DIF=$$DIF^%L1TIME(T2,T1)
 .I DIF<0 S DIF="-"
 .S @TMP@(HZ)=T1_"\"_T2_"\"_DIF
 Q
 ;
 ;
TDSP ;
 W "<td>&nbsp;</td>"
 Q 
TDSP1 ;
 W "<td width=""2%"">&nbsp;</td>"
 Q 
 ;
TMP S TMP=$$^W4MAIN("TMP")
 Q 
 ;
HB(TX) ; 
 Q $$H2U^%L1FRM(TX) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIPAH
W4TIPAH ; [ 28.02.14 16:17 ] [
 N (JB,%ARG,%REM)
 W "<div align=""center"" >",!
 W "<table>"
  F I=1:1:3 D TR(I)
 W "</table>"
 D BUTTONS
 W "</div>",!
 Q
 ;
TR(I) ;
 W "<tr>"
  W "<td>"
   W $$^%W1DICT("TIPAH",I)
  W "</td>"
  W "<td>"
   W "<input id=""tipah"_I_""" type=""text"" value="""_$$VL(I)_""" maxlength=""5"" size=""3"" />"
  W "</td>"
 W "</tr>",!
 Q
 ;
VL(I) ;
 Q $G(@$$^W4GL("W4TIPAH")@(I))
 ;
BUTTONS ;
 W "<table>",!
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("sbmid",$$^%W1DICT("SUBMIT"),"Sbm()","color:green","wh,22")
  W "  </td>",!
  ;
  W "  <td align=""center"">",!
   D ROUNDBUT^%W1JS("backid",$$^%W1DICT("BACK"),"Back()","color:red","wh,22")
  W "  </td>",!
 W "</table>",!
 Q
 ;
SBM(PRM) ;
 N I,K S K=0
 K @$$^W4GL("W4TIPAH")
 F I=1:1:$L(PRM,";") D
 .S VL=$P(PRM,";",I) Q:'VL
 .S K=K+1
 .S @$$^W4GL("TIPAH")=VL
 Q

W4TIPCB
W4TIPCB(HZ,IND,KLAL) ; [ 28.11.24 16:05 ] [ 27.11.24 13:47 ] [ 26.11.24 15:38 ] 
 N (JB,%ARG,HZ,IND,KLAL)
 ;
 I $D(@$$^W4ORD@(HZ,"TIPCB",IND)) Q "TIPCBEXIST"
 ;
 S SNIF=$$SNIF
 I 'SNIF S SNIF=0
 ;
 I $G(KLAL) S OV=SNIF_".99999" G M
 ;
 S SL=$$PSL^W4HZMST(HZ) I 'SL Q "NOSL"
 S TEL=$$TEL^W4SL(SL)
 S NM=$$NM^W4SL(SL)
 ;
 S OV=SL S OV=$$SL2OV^W4CLKVW(SL) S OV=$$DOP^W4NAME(OV) I 'OV S OV=+SL
 ;
 S OV=SNIF_"."_OV_""
 I '$$D^W4L(OV) D CRLKH(OV,NM,TEL)
M ;
 S VTS=$$GET^W4GTVCH(HZ,IND,"V","VTS") I VTS="" Q "NOVTS"
 S NCA=$E(VTS,3)
 S TIPCA=$$GET^W4GTVCH(HZ,IND,"V","TIPCA") I 'TIPCA Q "NOTIPCA"
 ;
 S GLTMP=$$^W4MAIN("TMPCB") K @GLTMP
 S TZ=""
 S ST=OV_";"_TZ_";"
 ;
 S @GLTMP@("S21",1)=VTS_"*"_NCA_"****"_TIPCA_"*"_TIPCA
 S RES=$$PUT^W4LCBCR(ST) ;
 I RES D
 .S @$$^W4ORD@(HZ,"TIPCB",IND)=RES_"\"_$ZD($H,"DD.MM.YY 24:60")_"\"_$J(TIPCA,2,2)
 .S @$$^W4GL("KLF")@(OV,"CBP",+RES)="[ "_IND_" ] "_HZ_" "_$$TV^%W1DICT($$^%W1LNG,"ORDER")
 Q RES
 ;
 ;
SNIF() ;
 N SNIF
 S SNIF=$G(@$$^W4PRM@("WEB","MSD"))
 I 'SNIF S SNIF=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q SNIF
 ;
 ;
CRLKH(LKH,LKHNAME,TEL) ;
 S @$$^W4GL("LKH")@(LKH)=LKHNAME
 ;
 D PUT^W4L(LKH,.1,"GDCR")
 ;
 D PUT^W4L(LKH,1,"ISCR")
 D PUT^W4L(LKH,TEL,"TELB")
 ;
 I $G(@$$^W4PRM@("TIPCB","SUGL")) D
 .N SUGL S SUGL=$G(^("SUGL"))
 .D PUT^W4L(LKH,SUGL,"SUGL")
 ;
 I $G(@$$^W4PRM@("TIPCB","ACC")) D
 .N HESB S HESB=$G(^("ACC"))
 .D PUT^W4L(LKH,HESB,"HESB")
 ;
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIPCBU
W4TIPCBU(DT) ; [ 28.11.24 17:36 ] [ 
 I '$G(DT) S DT=$$^W4DZ
 S DT=$$^%L1DC(DT,3)
 N TIPCB S TIPCB=$$TIPCB^W4PRM
 I TIPCB?5N.E,DT'<TIPCB Q 1
 Q 0
 
 

W4TIPCBZ
W4TIPCBZ ; [ 05.12.24 04:42 ] [ 04.12.24 12:35 ] [ 27.11.24 15:07 ] 
 N (JB,%ARG)
 S DZ=$$^W4DZ
 S STIP=0
 S N="" F  S N=$O(@$$^W4REF@(DZ,N)) Q:N=""  I N>0 D
 .S TIP=$$TIP^W4HZMST(N) Q:'TIP
 .Q:$G(@$$^W4ORD@(N,"TIPCB"))
 .S N1="" F  S N1=$O(@$$^W4ORD@(N,"CB","V",N1)) Q:N1=""  I N1 D
 ..S A=$G(^(N1))
 ..S TIP=$P(A,"*",27) I 'TIP Q
 ..S RES=$$^W4TIPCB(N,N1,1)
 ..S @$$^W4GL("W4TIPCBZ")@(DZ,N)=RES
 Q
 
 

W4TIPMIN
W4TIPMIN(DD) ; [ 02.12.24 11:20 ] [ 28.11.24 17:34 ] [ 26.11.24 14:37 ] 
 ;;I $$NOTIPALL^W4PRM Q 0
 I '$G(DD) S DD=$$^W4DZ
 S DD=$$^%L1DC(DD,3)
 I $$TIPMIN^W4TIPPD($G(DD)) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 

W4TIPMZ
W4TIPMZ ; [ 18.11.15 18:38 ] [ 19.05.14 18:23 ] [ 25.10.09 09:58 ]
BG N (JB,%ARG,%REM)
  D ^W4IN
  S LDZ=$$^W4FZ(P1DZ)
  S LASTZ=P1DZ_"^"_LDZ
  I '$D(@$$TIPMZ@(LASTZ)) S @$$TIPMZ@(LASTZ)=""
  W "<div align=""center"">",!
  ;
  W "<br />",!
  W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(16)_";width:100%;height:70px"" dir="""_$$^%W1DIR_""" >"
   W "<tr>",!
   W " <td width=""90%"">&nbsp;</td>",!
   W " <td "_$$INV^%W1ALIGN_" >"
     W "<input type=""button"" class=""btn"" style=""width:100%;height:100%;color:red"" value="""_$$^%W1DICT("EXIT")_""" "_$$^W4TOUCH_"=""Back()"">"
   W " </td>",!
   W "</tr>",!
  W "</table>",!
  ;
  ;;W "<br /><br  />",!
  W " <table dir="""_$$^%W1DIR_""" border=""1"" width=""30%"" cellspacing=""0"">",!
  W "  <tr>",!
  W "   <th width=""50%"">",!
  W "     "_$$^%W1DICT("DATE"),!
  W "   </th>",!
  W "   <th>",!
  W "     "_$$^%W1DICT("TIPMZ"),!
  W "   </th>",!
  W "  </tr>",!
  ;
  S IND="" F  S IND=$O(@$$TIPMZ@(IND),-1) Q:IND=""  D
  .S DT=$P(IND,"^")
  .W "<tr style=""cursor:pointer;height:50px;color:black;font-weight:bold"" "
  .W " "_$$^W4TOUCH_"=""ClickInd('"_IND_"','"_$S(IND=LASTZ:"1",1:"0")_"')"""
  .W " >",!
  .W " <td align=""center"">",!
  . W $ZD(DT,"DD.MM.YY"),!
  .W " </td>",!
  .W " <td>",!
  . W "&nbsp;",$J($$SUMTIP(IND),2,2),"&nbsp;"
  .W " </td>",!
  .W "</tr>",!
  ;
  W " </table>",!
  W "</div>",!
END Q
 ;
 ;
SUMTIP(IND) ;
 N MLZ,SUM S SUM=0
 S MLZ="" F  S MLZ=$O(@$$TIPMZ@(IND,MLZ)) Q:MLZ=""  D
 .S SUM=SUM+$G(^(MLZ))
 Q SUM
 ;
SUMDAY(DT) ;
 N SUM S SUM=0
 N IND S IND=DT_"^"
 F  S IND=$O(@$$TIPMZ@(IND)) Q:IND=""  Q:IND'[(DT_"^")  S SUM=SUM+$$SUMTIP(IND)
 Q SUM
 ;
TIPMZ(STAM) Q $$^W4GL("TIPMZ")

W4TIPMZ1
W4TIPMZ1 ; [ 18.12.25 17:04 ] [ 29.09.16 15:49 ] [ 07.07.16 18:49 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4TIPMZ1")
 I '$G(JB) Q
 ;
 D TMPS^W4MENUBT
 ;
 S VP="TIPMZ"
 S GL=$$^W4ORD
 ;
 S IND=$G(%ARG("IND")) Q:IND=""
 S DT=$P(IND,"^")
 ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 ;
 D KOT ; --> ^VRM
 ;
 N J S J=0 S WAITER=""
 F  S WAITER=$O(@$$^W4MAIN("VRM")@(WAITER)) Q:WAITER=""  I WAITER S J=J+1
 ;
 S NPP=0
 D PRMHD
 ;
 S DT=$P(IND,"^")
 S DAT1=$ZD(DT,"YYMMDD")
 S DAT2=DAT1
 ;
 S STIP=0,SMIN=0,SSLR=0
 ;
 S WAITER="",SW=0
 F  S WAITER=$O(@$$^W4MAIN("VRM")@(WAITER)) Q:WAITER=""  I WAITER D
 .N A S A=$G(^(WAITER))
 .I '$$GET1^W4LEVPR(WAITER,"MTIP") Q
 .S STIP=STIP+$$TIP(A) ; --- KAMA TIPIM ESH LE MELZAR
 .N A,FLSLR S FLSLR=1 S A=$$^W4LEVTIM(WAITER,DAT1,DAT2)
 .S SW=SW+1
 .N MIN S MIN=$P(A,"\")
 .S SMIN(WAITER)=MIN*60+$P(MIN,":",2)
 .S SMIN=SMIN+SMIN(WAITER) ; -- KAMA ZMAN AVDU SAH
 .S SLR(WAITER)=$P(A,"\",3)
 .;
 .I $G(@$$^W4PRM@("TIPMZ","SLR")) D
 ..S SLR(WAITER)=$J(@$$^W4PRM@("TIPMZ","SLR")*SMIN(WAITER)/60,2,2)
 ;
 ;
 S WAITER=""
 F  S WAITER=$O(@$$^W4MAIN("VRM")@(WAITER)) Q:WAITER=""  I WAITER D
 .N A S A=$G(^(WAITER)) S NPP=NPP+1
 .N VL S VL=$J($G(@$$^W4GL("TIPMZ")@(IND,WAITER)),2,2)
 .;
 .S CLICK=$$^W4TOUCH_"=""ClickTip('"_IND_"','"_WAITER_"','"_VL_"')"" "
 .I '$G(%ARG("INPUT")) S CLICK=""
 .
 .W "<tr "_CLICK_" style=""background-color:"
 . W $S(WAITER=$G(@$$^W4MAIN("VRM")@("CURW")):"yellow",$G(%ARG("INPUT")):"lightyellow",1:"white")
 . W $S($G(%ARG("INPUT")):";cursor:pointer",1:"")_""" >"
 .
 . S J=0
 . S J=J+1 W "<td style=""background-color:#fafad2;width:3%"">"_NPP_"</td>"
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_">"_WAITER_"</td>"
 . S J=J+1 W "<td "_$$FIXSTYLE(PRMWD,J)_">"_$$RKV($$^W4NAME(WAITER),"H")_"</td>"
 .
 .;SORDERS\SOPORD\STSHL\SSHUL\SSHULA\SMZM\STIP\SITRA\SSOAD\SDMSH
 .;   1       2     3     4      5     6    7    8     9     10
 .
 .D FRMST
 .;
 .W "</tr>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "</div>",!
 W "<br /><br /><br />",!
END Q
 ;
 ;
RKV(FLD,REG) ;
 I $G(REG)="H",FLD'="" Q $$H2U^%L1FRM(FLD)
 I $G(REG)?1N.N Q $J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 Q FLD
 ;
SETCUR(ORD) ;
 Q:$D(@$$^W4MAIN("VRM"))<10
 S @$$^W4MAIN("VRM")@("CUR")=ORD
 Q
 ;
KOT ;
 D ^W4IN
 D CRVRM(DT) ; --> ^VRM
 ;
 W "<div align=""center"">",!
 W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";width:94%"" "
 W " dir="""_$$^%W1DIR_""" >"
  W "<tr>"
    W "<td width=""30%"">&nbsp;</td>"
    W "<td style=""text-align:center;font-size:"_$$^W3FSZ(20)_";color:"_$$BGCOLOR^W4CSS_""">"
     W $$^%W1DICT("TIPTYPINGDT",$ZD(DT,"DD.MM.YY"))
    W "</td>"
    W "<td width=""10%"">"
     ;W "<input type=""button"" class=""btn"" "
     ; W " style=""width:100%;color:blue"" value="""_$$^%W1DICT("CALCULATOR")_""" "
     ; W " "_$$^W4TOUCH_"=""BOCalc('350px','100px')"">"
     W "<img src=""w3calc.jpg"" "_$$^W4TOUCH_"=""BOCalc('350px','100px')"">"
    W "</td>"
    ;
    W "<td width=""10%"" "_$$INV^%W1ALIGN_" >"
     W "<input type=""button"" class=""btn"" "
      W " style=""width:100%;color:red"" value="""_$$^%W1DICT("EXIT")_""" "
      W " "_$$^W4TOUCH_"=""Back()"">"
    W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br >",!
 W "<table id=""TblTip"" style=""table-layout:fixed;text-align:center"" "
 W " dir="""_$$^%W1DIR_""" border=""1"" width=""94%"" cellpadding=""16"" >",!
 ;
 W "<tr "
 W " style=""background-color:"_$$FNFG^W4CSS_";"
 W " color:white"""
 W "  >",!
  D PRMHD
  ;W "PRMHD="_PRMHD,!
  F J=1:1:$L(PRMHD,";")-1 D
  .W "<th "_$$FIXSTYLE(PRMWD,J)_">"_$$^%W1DICT($$SPA^%L1FRM($P(PRMHD,";",J)))_"</th>",!
 W "</tr>",!
 ;
 Q
 ;
 ;
CRVRM(DT) ;
 N (JB,%ARG,%REM,DT)
 D CRVRM^W4CLSDAY(DT)
 Q
 ;
TOT(RKV) ;
 Q:$G(RKV) ""
 Q:$G(RKV)="" ""
 Q $G(@$$^W4MAIN("VRM")@(RKV))
 ;
FIXSTYLE(PRMWD,J) ;
 N WD S WD=$P(PRMWD,";",J)
 S WD=$$SPA^%L1FRM(WD)_"%"
 Q " style=""width:"_WD_""""
 ;
P10 ;
 ;NPP;WAITERNUMBER;WAITERNAME;DMSH;TIP;TIMECALC;TIPCALC;SALARY; ITRA ;TIPMZ ; STIPCALC ; SUM2FULL ;
 ; 2 ;       7    ;   21     ; 9  ; 7 ;    7   ;   9   ;  10  ;  9   ;  9   ;    9     ;    9     ;
 Q  ;
P11 ;
 ;NPP;WAITERNUMBER;WAITERNAME;DMSH;TIPA;TIMECALC;SALARY; ITRA ;TIPMZ ; STIPCALC ; SUM2FULL ;
 ; 2 ;       7    ;   21     ; 9  ; 7  ;    7   ;  10  ;  9   ;  9   ;     9    ;    9     ;
 Q  ;
 ;
TIP(A) ;
 Q $P(A,"\",7)
 ;
 I $$COMMON Q $P(A,"\",7)
 Q $P(A,"\",5)
 ;
 ;
FRMST ; --- INPUT : WAITER, A , PRMWD
 N I F I=10 D  ; --- DMSH
 .S J=J+1
 . W "<td "_$$FIXSTYLE(PRMWD,J)_">"
 .  W $$RKV(+$P(A,"\",I),2)
 . W "</td>"
 ;
 S J=J+1
 S TIP=$$TIP(A)
 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  W $$RKV(TIP,2)
 W "</td>"
 ;
 S J=J+1
 W "<td "_$$FIXSTYLE(PRMWD,J)_">" ; --  KAMA SHAOT MELZAR AVAD
  D
  .I '$G(SMIN(WAITER)) W "&nbsp;" Q
  .;;W SMIN(WAITER)\60_":"_(SMIN(WAITER)#60)
  .W $J(SMIN(WAITER)/60,2,2)
 W "</td>"
 ;
 S J=J+1 ; -------  TIP MEHUSHAV LEFI ZMAN AVODA
 ;
 S TIPC="" I SMIN D
 .S TIPC=$J(STIP*$G(SMIN(WAITER))/SMIN,2,2)
 ;
 I $$COMMON D
 .S TIPC=$S(SW:STIP\SW,1:0)
 .;
 .W "<td "_$$FIXSTYLE(PRMWD,J)_">"
 . W $$RKV(TIPC,2)
 .W "</td>"
 ;
 S J=J+1 ; -------  SALARY
 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  W $$RKV($G(SLR(WAITER)),2)
 W "</td>"
 ;
 S J=J+1 ; -------  ITRA
 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  W $$RKV($G(SLR(WAITER))-TIPC,2)
 W "</td>"
 ;
 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  W $$RKV(VL,2)
 W "</td>"
 ;
 S J=J+1 ; ------ SAH TIP MEHUSHAV
 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  W $$RKV(TIPC+VL,2)
 W "</td>"
 ;
 S J=J+1 ; ------ SHUM LE HASLAMA
 W "<td "_$$FIXSTYLE(PRMWD,J)_">"
  D
  .N DOP S DOP=$G(SLR(WAITER))-TIPC-VL
  .I DOP<0 S DOP=""
  .W $$RKV(DOP,2)
 W "</td>"
 ;
 Q
 ;
 ;
COMMON(STAM) ;
 Q '$G(@$$^W4PRM@("NOCOMMONTIP"))
 ;
PRMHD ;
 I '$$COMMON D  Q
 .S PRMHD=$P($T(P11+1),";",2,50)
 .S PRMWD=$P($T(P11+2),";",2,50)
 ;
 S PRMHD=$P($T(P10+1),";",2,50)
 S PRMWD=$P($T(P10+2),";",2,50)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIPMZ3
W4TIPMZ3 ; [ 18.12.25 17:04 ] [ 22.09.17 09:26 ] [ 21.09.17 13:58 ] 
 N (JB,%ARG,%REM)
 D KILL^%W3DEB("W4TIPMZ3")
 I '$G(JB) Q
 ;
 D TMPS^W4MENU
 ;
 S VP="TIPMZ"
 S GL=$$^W4ORD
 ;
 S P1DZ=$$^W4DZ
 S IND=P1DZ_"^"_$$^W4FZ
 S DT=P1DZ
 ;
 I $G(%REM) D PUT^%W1PRM("REM",%REM)
 ;
 D KOT ; --> ^VRM
 ;
 N J S J=0 S WAITER=""
 F  S WAITER=$O(@$$^W4MAIN("VRM")@(WAITER)) Q:WAITER=""  I WAITER S J=J+1
 ;
 S NPP=0
 D PRMHD
 ;
 S DAT1=$ZD(DT,"YYMMDD")
 S DAT2=DAT1
 ;
 S WAITER=""
 F  S WAITER=$O(@$$^W4MAIN("VRM")@(WAITER)) Q:WAITER=""  I WAITER D
 .N A S A=$G(^(WAITER))
 .I $$^W4NAME(WAITER)="" Q
 .S NPP=NPP+1
 .N VL S VL=$J($G(@$$^W4GL("TIPMZ")@(IND,WAITER)),2,2)
 .;
 .S CLICK=$$^W4TOUCH_"=""ClickTip('"_IND_"','"_WAITER_"','"_VL_"')"" "
 .
 .W "<tr style=""background-color:"
 . W $S(WAITER=$G(@$$^W4MAIN("VRM")@("CURW")):"yellow",1:"lightyellow",1:"white")
 . W ";cursor:pointer"" >"
 .
 . S J=0
 . S J=J+1 W "<td "_CLICK_" style=""background-color:#fafad2;width:3%"">"_NPP_"</td>"
 . S J=J+1 W "<td "_CLICK_" "_$$FIXSTYLE(PRMWD,J)_">"_WAITER_"</td>"
 . S J=J+1 W "<td "_CLICK_" "_$$FIXSTYLE(PRMWD,J)_">"_$$RKV($$^W4NAME(WAITER),"H")_"</td>"
 .
 .;SORDERS\SOPORD\STSHL\SSHUL\SSHULA\SMZM\STIP\SITRA\SSOAD\SDMSH
 .;   1       2     3     4      5     6    7    8     9     10
 .
 .D FRMST
 .
 . S J=J+1 W "<td>" D ^W4BTN("SHOW","Show('"_WAITER_"')") W "</td>"
 .;
 .W "</tr>",!
 ;
EN W "</table>",!
 W "<br>",!
 ;
 W "</div>",!
 W "<br /><br /><br />",!
END Q
 ;
 ;
RKV(FLD,REG) ;
 I $G(REG)="H",FLD'="" Q $$H2U^%L1FRM(FLD)
 I $G(REG)?1N.N Q $J(FLD,REG,REG)
 I FLD="" Q "&nbsp;"
 Q FLD
 ;
SETCUR(ORD) ;
 Q:$D(@$$^W4MAIN("VRM"))<10
 S @$$^W4MAIN("VRM")@("CUR")=ORD
 Q
 ;
 ;
KOT ;
 D ^W4IN
 D CRVRM(DT) ; --> ^VRM
 ;
 W "<div align=""center"">",!
 W "<table style="""_$$FONTFM^W3CSS_";font-size:"_$$^W3FSZ(14)_";width:60%"" "
 W " dir="""_$$^%W1DIR_""" >"
  W "<tr>"
    W "<td width=""30%"">&nbsp;</td>"
    W "<td style=""text-align:center;font-size:"_$$^W3FSZ(20)_";color:"_$$BGCOLOR^W4CSS_""">"
     W $$^%W1DICT("TIPTYPINGDT",$ZD(DT,"DD.MM.YY"))
    W "</td>"
    W "<td width=""10%"">"
     W "<img src=""w3calc.jpg"" "_$$^W4TOUCH_"=""BOCalc('350px','100px')"">"
    W "</td>"
    ;
    W "<td width=""10%"" "_$$INV^%W1ALIGN_" >"
     W "<input type=""button"" class=""btn"" "
      W " style=""width:100%;background-color:white;color:red"" value="""_$$^%W1DICT("EXIT")_""" "
      W " "_$$^W4TOUCH_"=""Back()"">"
    W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "<br >",!
 W "<table id=""TblTip"" style=""table-layout:fixed;text-align:center"" "
 W " dir="""_$$^%W1DIR_""" border=""1"" width=""60%"" cellpadding=""16"" >",!
 ;
 W "<tr "
 W " style=""background-color:"_$$FNFG^W4CSS_";"
 W " color:white"""
 W "  >",!
  D PRMHD
  F J=1:1:$L(PRMHD,";")-1 D
  .W "<th "_$$FIXSTYLE(PRMWD,J)_">"_$$^%W1DICT($$SPA^%L1FRM($P(PRMHD,";",J)))_"</th>",!
 W "</tr>",!
 ;
 Q
 ;
 ;
CRVRM(DT) ;
 N (JB,%ARG,%REM,DT)
 ;
 D CRVRM^W4CLSDAY(DT)
 ;
 N VRM S VRM=$$^W4MAIN("VRM")
 N N S N=""
 F  S N=$O(@$$^W4GNAME@(N)) Q:N=""  D
 .I '$$SHOW^W4HZGMLZ(N) Q
 .I '$D(@VRM@(N)) D
 ..S @VRM@(N)=""
 Q
 ;
TOT(RKV) ;
 Q:$G(RKV) ""
 Q:$G(RKV)="" ""
 Q $G(@$$^W4MAIN("VRM")@(RKV))
 ;
FIXSTYLE(PRMWD,J) ;
 N WD S WD=$P(PRMWD,";",J)
 S WD=$$SPA^%L1FRM(WD)_"%"
 Q " style=""width:"_WD_""""
 ;
P10 ;
 ;NPP;WAITERNUMBER;WAITERNAME;TIPMZ; SHOW ;
 ; 2 ;       7    ;   21     ;  9  ;  10  ;
 Q  ;
 ;
TIP(A) ;
 Q $P(A,"\",7)
 ;
 ;
FRMST ; --- INPUT : WAITER, A , PRMWD
 S J=J+1 ; ------ SHUM LE HASLAMA
 W "<td "_CLICK_" "_$$FIXSTYLE(PRMWD,J)_">"
  W $$RKV(VL,2)
 W "</td>"
 ;
 Q
 ;
 ;
PRMHD ;
 S PRMHD=$P($T(P10+1),";",2,50)
 S PRMWD=$P($T(P10+2),";",2,50)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TIPMZ4
W4TIPMZ4(MLZ) ; [ 22.09.17 09:10 ] [ 
 N (JB,%ARG,MLZ)
 S LDZ=$$^W4FZ
 S P1DZ=$$^W4DZ
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 D CLOSE
 W "<br><br>",!
 W "<span style=""font-size:"_$$^W3FSZ(14)_""">"
  W $$H2U^%L1FRM($$^W4NAME(MLZ))
 W "</span>",!
 W "<br><br>",!
 W "<table width=""50%"">",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("TIME")_"</th>"
   W "<th>"_$$^%W1DICT("TIPMZ")_"</th>"
  W "</tr>",!
  ;
  S GLTIPMZ=$$^W4GL("TIPMZ")_"("""_P1DZ_"^"_LDZ_""","""_MLZ_""")"
  S N="" F  S N=$O(@GLTIPMZ@(N)) Q:N=""  D
  .S A=$G(^(N))
  .W "<tr align=""center"" >"
  . W "<td>"_$P(A,"\",2)_"</td>"
  . W "<td>"_$J($P(A,"\"),2,2)_"</td>"
  .W "</tr>",!
  ;
 W "</table>",!
 W "<br><br>"
 D CLOSE
 Q
 ;
CLOSE ;
 D ^W4BTN("CLOSE","Close()","red")
 Q
 
 
 
 

W4TIPPD
W4TIPPD(DAT) ; [ 02.12.24 11:27 ] [ 28.11.24 17:59 ] [ 30.06.22 16:37 ] 
 ;;I $$NOTIPALL^W4PRM Q 0
 I '$G(DAT) S DAT=$$^W4DZ
 I $$^W4TIPCBU($G(DAT)) Q 1
 ;
 I '$$NOTIP($G(DAT)) Q 1
 Q 0
 ;
TIPNO(DT) ;
 I '$G(DT) S DT=$$^W4DZ
 I $$^W4TIPCBU($G(DT)) Q 0
 I $$NOTIP($G(DT))=2 Q 1
 Q 0
 ;
TIPNT(DT) ;
 I $$NOTIP($G(DT))=1 Q 0
 Q 1
 ;
TIPMIN(DT)
 I '$G(DT) S DT=$$^W4DZ
 S DT=$$^%L1DC(DT,3)
 I $$^W4TIPCBU(DT) Q 0
 I '$$TIPNO($G(DT)),'$$TIPNT($G(DT)) Q 1
 Q 0
 ;
 ;
NOTIP0(STAM)
 Q $S($G(@$$^W4PRM@("TIPNO")):2,$G(@$$^W4PRM@("TIPNT")):1,1:0)
 ;
NOTIP(DT)
 I '$G(DT) S DT=$$^W4DZ
 I $$^W4TIPCBU(DT) Q 0
 N OU,OU0
 S OU0=$$NOTIP0
 S DT=$$^%L1DC(DT,3)
 I DT'<$$^W4DZ Q OU0
 ;
 S OU=0
 I DT'?5N S DT=$$^%L1DC(DT,3)
 ;
 I $D(@$$^W4PRM@("NOTIP"))>9 Q $$NOTIP1(DT)
 Q OU0
 ;
 ;
NOTIP1(DT) ;
 I '$G(DT) S DT=$$^W4DZ
 I $G(DT)'<$$^W4DZ Q $$NOTIP0
 I $$^W4TIPCBU($G(DT)) Q 0
 ;
 D TIKTIPPRM
 ;
 N NOTIP
 S NOTIP=0
 N N,RNG,DT1,DT2
 S N="" F  S N=$O(@$$^W4PRM@("NOTIP",N)) Q:N=""  D  Q:NOTIP
 .S A=$G(^(N))
 .S RNG=$P(N,";")
 .S DT1=$P(RNG,"-") I DT1'?5N S DT1=$$^%L1DC(DT1,3)
 .S DT2=$P(RNG,"-",2) I DT2'?5N S DT2=$$^%L1DC(DT2,3)
 .I RNG["-",DT'<DT1,DT'>DT2 S NOTIP=$S(A["NO":2,1:1)
 ;
 I NOTIP Q NOTIP
 Q 0
 ;
 ;
TIKTIPPRM ;
 N N,N1,IND
 S N="" F  S N=$O(@$$^W4PRM@("NOTIP",N)) Q:N=""  D
 .S N1=$O(@$$^W4PRM@("NOTIP",N),-1) I N1,N,+N'=99999 D
 ..S IND=$P(N1,"-")_"-"_(N-1)
 ..N C S C=$G(@$$^W4PRM@("NOTIP",N1))
 ..K @$$^W4PRM@("NOTIP",N1)
 ..S @$$^W4PRM@("NOTIP",IND)=C
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TKDOC
W4TKDOC ; [ 19.04.26 13:35 ] [ 09.04.26 10:58 ] [ 06.01.25 13:13 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 S SPK=$G(%ARG("CODE"))
 ;
 W "<div dir="""_$$^%W1DIR_""">",!
 W "<br><br><br>",!
 D KOT
 W "<br><br>",!
 D LISTTK
 W "</div>",!
 Q
 ;
KOT ;
 W "<table width=""80%"" cellpadding=""3"" border=""0"" style=""padding:10px;border:ridge;2px"" dir="""_$$^%W1DIR_""">",!
  D LINE
  ;
  W "<tr>"
   D SPK
  W "</tr>",!
  W "<tr>"
   D DEP
   D DATE
  W "</tr>",!
  ;
  W "<tr>"
   D HOW
  W "</tr>",!
  ;
  D LINE
  ;
  W "<tr>"
   D BUTTONS
  W "</tr>",!
  ;
  D LINE
 W "</table>",!
 Q
 ;
 ;
BUTTONS ;
 W "<td>&nbsp;</td>"
 D NEWDOC
 W "<td>&nbsp;</td>"
 D BACK
 Q
 ;
 ;
NEWDOC ;
 W "<td>"
   D ROUNDBUT^%W1JS("newdoc",$$^%W1DICT("NEWDOC"),"NewDoc()","color:green","wh,22,,180")
 W "</td>",!
 Q
 ;
BACK ;
 W "<td>"
   D ROUNDBUT^%W1JS("back",$$^%W1DICT("BACK"),"Back()","color:red","wh,22,,70")
 W "</td>",!
 Q
 ;
 ;
SPK ;
  W "<td width=""20%""> "
   W $$^%W1DICT("SUPPLCODE")
   D NOMUST
  W "</td>",!
  ;
  W "<td width=""35%"">"
   W "<input type=""text"" tabindex=""1"" id=""supplcd""  maxlength=""14"" "
    W "size=""14"" value="""_$G(SPK)_""" onClick=""this.select()"" "
    W "onKeyUp=""ChangeCd()"" "
    W "onChange=""Find('supplcd','supplcd!','W4SPK')"" >",!
   W "&nbsp;<img id=""filter"" src=""w3filter.jpg"" onClick=""Find('supplcd','supplcd!','W4SPK')"" >",!
  W "  </td>",!
  ;
  W "  <td width=""20%"" >"_$$^%W1DICT("NAME")_"</td>",!
  ;
  W "  <td "_$$^%W1ALIGN_" colspan=""3"" >"
   N SPKNAME S SPKNAME=$$NAME^W4SPK(SPK)
   I $L($G(W4HSB("SPKNAME"))) S SPKNAME=W4HSB("SPKNAME")
   W "<input type=""text"" tabindex=""2"" id=""supplnm"" "
   W " readonly=""readonly"" "_" size=""30"" "
   W " value="""_$$H2U^%L1FRM(SPKNAME)_""">",!
  W "  </td>",!
 Q
 ;
 ;
NOMUST ;
 W " <span style=""color:red;font-size:"_$$^W3FSZ(8)_""">"_$$^%W1DICT("NOMUST")_"</span>"
 Q
 ;
 ;
DEP ;
 W "<td>"
  W $$^%W1DICT("DEPARTMENT")
 W "</td>"
 ;
 N DEP S DEP=$G(%ARG("DEP"))
 I DEP="",$$DELIS^W4PRM S DEP=9
 W "<td>"
  W "<select id=""dep"" >",!
   W "<option value=""0"" >"_$$^%W1DICT("ALLDEPS")_"</option>",!
   S N="" F  S N=$O(@$$^W4GL("MLDEP")@(N)) Q:N=""  D
   .W "<option value="""_N_""" "_$S(+N=DEP:" selected=""selected"" ",1:"")_" >",!
   . W $$H2U^%L1FRM($G(^(N)))
   .W "</option>",!
  W "</select>",!
 W "</td>",!
 Q
 ;
DATE ;
 W "<td>"
  W $$^%W1DICT("TOENDDAY")
 W "</td>",!
 W "<td dir=""LTR"" "_$$^%W1ALIGN_"  >"
  W "<table>",! 
   W "<tr>",!
   W "<td width=""30%"">&nbsp;</td>",!
   W "<td>"
    D
    .N DAT S DAT=$G(%ARG("DAT"))
    .I DAT="" S DAT=$ZD(+$H,"DD.MM.YY")
    .D ^%W1DAT("DAT",DAT)
   W "</td>",!
   W "</tr>",!
  W "</table>",!
 W "</td>",!
 Q
 ;
HOW ;
 W "<td >"_$$^%W1DICT("TYPEITEMSINDOC")_"</td>"
 W "<td>"
  W " <input type=""radio"" name=""how"" "_$S('$G(%ARG("HOW")):"checked=""checked"" ",1:"")_" >"
 W "</td>",!
 ;
 W "<td colspan=""3"">"
 W " <table dir="""_$$^%W1DIR_""">",!
 W "  <tr>"
 ;
 W "   <td>"_$$^%W1DICT("SHOWITEMSINDOCNUM")_"</td>"
 W "   <td>"
  W "    <input type=""radio"" name=""how"" "_$S($G(%ARG("HOW"))=1:"checked=""checked"" ",1:"")_" >"
 W "   </td>",!
 W "   <td>"_$$^%W1DICT("SHOWITEMSINDOCAB")_"</td>"
 W "   <td>"
  W "    <input type=""radio"" name=""how"" "_$S($G(%ARG("HOW"))=2:"checked=""checked"" ",1:"")_" >"
 W "   </td>",!
 W "  </tr>",!
 W " </table>",!
 W "</td>",!
 Q
 ;
 ;
LISTTK ;
 N DOCLIST
 S DOCLIST=$$^%W1DICT("TKDOCLIST")
 N SHOWKIND S SHOWKIND=$G(%ARG("SHOWKIND"))
 I 'SHOWKIND S SHOWKIND=1
 S ONCLICKSHOW=" onClick=""OnClickShow(this)"" "
 S BORDER="border:solid gray 1px"
 ;
 S WD="30%"
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr>"
 W " <td width="""_WD_""">"
  W "&nbsp;"
 W " </td>",!
 W " <td"
 W "  style=""color:black;font-size:"_$$^W3FSZ(14)
 W """>"_DOCLIST_"</td>"
 W " <td width=""3%"">&nbsp;</td>",!
 W " <td>"
 I '$G(PRINT) D
 .D ROUNDBUT^%W1JS("print",$$^%W1DICT("PRINT"),"PrintDocs()","color:blue","wh,22")
 W " </td>",!
 W "</tr>",!
 W "</table>",!
 ;
 D RADIOSHOW^W4LHB
 ;
 W "<table width=""84%"">",!
  W "<tr>",!
   W " <td align=""center"" >",!
    D ROUNDBUT^%W1JS("Show",$$^%W1DICT("SHOW"),"ShowListDocs()","color:green","wh,22")
   W " </td>",!
  W "</tr>",!
 W "</table>",!
 ;
 N WDT S WDT=98
 W "<table id=""listinvoices"" border=""1""  width="""_WDT_"%"" "
 W "cellspacing=""0"" dir="""_$$^%W1DIR_""">",!
 ;
 D LISTKOT
 ;
 N DT,CODDOC,SPK,NOM,ENDCYC
 N DIR S DIR=$$^W4GL("W4INPDIR")
 ;
 N MAX,SH
 S MAX=$$SHOWLAST^W4LHB
 I $G(PRINT) S MAX=99999999
 S CODDOC="ITK"
 ;
 S ENDCYC=0,SH=0
 S GL=$$GL^W4TKDOC1
 S NOM="" F  S NOM=$O(@GL@(NOM),-1) Q:NOM=""  D  Q:ENDCYC
 .D LINETK(NOM)
 ;
 W "</table>",!
 Q
 ;
 ;
LISTKOT ;
 W "<tr>"
  W "<th width=""12%"">"
   W $$^%W1DICT("NUMBEROFDOC")
  W "</th>"
  W "<th width=""12%"">"
   W $$^%W1DICT("TODATE")
  W "</th>"
  W "<th width=""20%"">"
   W $$^%W1DICT("SUPPLIER")
  W "</th>"
  W "<th width=""18%"">"
   W $$^%W1DICT("DEPARTMENT")
  W "</th>"
  W "<th>"
   W $$^%W1DICT("COMMENT")
  W "</th>"
 W "</tr>",!
 Q
 ;
LINETK(NOM)
 D ^W4HSBGET(NOM,"ITK",0)
 I $G(W4HSB("DT")),$G(MEDAT),$G(ADDAT),W4HSB("DT")<$$^%L1DC(MEDAT,3)!(W4HSB("DT")>$$^%L1DC(ADDAT,3)) Q
 I $L($G(CONTENT)),W4HSB("COMMENT")'[$$INVH^%L1FRM(CONTENT) Q
 ;
 W "<tr onClick=""ShowDoc('"_NOM_"')"" style=""cursor:pointer"">",!
  W "<td "
  I NOM=$$GETP^%W1PRM("LHBCUR") W " style=""border:solid 2px brown"" "
  W ">"_NOM_"</td>"
  W "<td>"_W4HSB("TODATE")_"</td>"
  W "<td>"_W4HSB("SPK")_" "_$$H2U^%L1FRM(W4HSB("SPKNAME"))_"</td>"
  W "<td>"_W4HSB("DEP")_" "_$$H2U^%L1FRM(W4HSB("DEPNAME"))_"</td>"
  W "<td>"_$S($L(W4HSB("COMMENT")):$$H2U^%L1FRM(W4HSB("COMMENT")),1:"&nbsp;")_"</td>"
 W "</tr>",!
 S SH=SH+1 I SH>MAX S ENDCYC=1
 Q
 ;
W4LKH(STAM) ;
 Q +$$^W4LKH
 ;
LINE ;
 W "<tr><td></td><td></td></tr>",!
 Q
 ;
DIR ;
 S DIR=$$^W4GL("W4INPDIR")
 Q
 ;
INIT ;
 I $G(%ARG("FIRST")) D
 .D KILL^%W1PRM("DAT")
 .D KILL^%W1PRM("LHBCUR")
 .D PUT^%W1PRM("DOC","ITK")
 I +$G(MSD)=0 S MSD=$$GET^%W1PRM("MSD")
 I $G(%ARG("MSD")) D PUT^%W1PRM("MSD",%ARG("MSD"))
 Q
 ;
VLDDAT(DAT) ;
 N DT S DT=$$^%L1DC(DAT,3)
 I DT<($H-365) Q 0
 I DT>$H Q 0
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TKDOC1
W4TKDOC1 ; [ 19.04.26 13:31 ] [ 09.04.26 11:36 ] [ 03.06.25 11:00 ] 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 D PUT^%W3DEB("W4TKDOC1","%ARG=[%ARG")
 S NUMBER=$G(%ARG("NUMBER"))
 I $G(SPK) D PUT^%W1PRM("SPK",SPK)
 ;
 S NOM=NUMBER
 S NUMBER=+NUMBER
 ;
 S DAT=$$DAT(NOM)
 S SPK=$$SPK(NOM)
 ;
 S DOC=$$GETDOC(NOM)
 D PUT^%W1PRM("DOC",DOC)
 ;
 D GLTMP
 S GL=$$GL
 ;
 I NOM,$D(@GL@(NOM))=11 D
 .N DT S DT=$$^%L1DC(DAT,3)
 .K @GLTMP N PAR,SUG,SUGO S SUGO=""
 .N GLSUGP S GLSUGP=$$GLSUGP^W4MLPRT
 . 
 .N A,N S N="",I=0 F  S N=$O(@GL@(NOM,N)) Q:N=""  D
 ..S A=$G(^(N)),CD=$P(A,"\") Q:CD=""
 ..S SUG=$$MLSUGP^W4MLPRT(CD)
 ..I $G(%ARG("KVZ")),SUG'=%ARG("KVZ") Q
 ..D FRMLN(NOM,N,CD)
 .;
 .I $$HOW!$$IDKSUG D TMPA2TMP
 .Q  ; -- 02/01/25
 .S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  I N D
 ..N A S A=$G(^(N)) Q:$E(A)="~"
 ..S PAR=$P($G(^(N)),"\")
 ..S $P(@GLTMP@(N),"\",4)=$$QNC(PAR,DT)
 ;
 ;
 I 'NOM,$$HOW D  ; -- SHOW ALL
 .N GLMLPAR,N,I,MH,QNC S I=0
 .D GLTMPA K @GLTMPA
 .S GLMLPAR=$$GLMLPAR^W4MLPRT ;$$^W4GL("PAR")
 .N GLSUGP S GLSUGP=$$GLSUGP^W4MLPRT
 .N SUG
 .
 .S N="" F  S N=$O(@GLMLPAR@(N)) Q:N=""  D
 ..I $G(%ARG("SPK")),'$D(@$$^W4GL("W4MLSP")@(%ARG("SPK"),"P",N)) Q
 ..I $G(%ARG("DEP")),$$MLDEP^W4MLPRT(N)'=%ARG("DEP") Q
 ..I $$MLMAZAV^W4MLPRT(N) Q
 ..S SUG=$$MLSUGP^W4MLPRT(N)
 ..I $G(%ARG("KVZ")),SUG'=%ARG("KVZ") Q
 ..D FRMLN(+NOM,0,N)
 .
 .I $$HOW!$$IDKSUG D TMPA2TMP
 ;
 S GLEX=$$^%W1GLPRM K @GLEX
 S HD="lreta  mekq*aeyig itl mekq*yxtd*lreta zenk*aeyig itl zenk*xign*dcin zcigi*hixt my*cew"
 S HD=$$INVD^%L1FRM(HD,"*")
 S @GLEX@("GLOUT",1)=HD
 F I=1:1 Q:'$D(@GLTMP@(I))  D
 .S A=$G(^(I))
 .S A=$TR(A,"\","*")
 .N SUM1,SUM2
 .S SUM1=$J($P(A,"*",3)*$P(A,"*",4),2,2)
 .S SUM2=$J($P(A,"*",3)*$P(A,"*",5),2,2)
 .S A=$P(A,"*",1,2)_"*"_$P(A,"*",7)_"*"_$P(A,"*",3,6)_"*"_SUM1_"*"_SUM2
 .S @GLEX@("GLOUT",I+1)=A
 ;
 I $O(@GLTMP@(99999),-1)<2,'$$SHOW,$$HOW D
 .K %ARG("HOW")
 .W "<script>",!
 .W " MsgA('GO2INPUTMODE')",!
 .W "</script>",!
 ;
 D KOTHSB(NUMBER,SPK,DAT,DOC)
 ;
 W "<br />",!
 ;
 D DIVBUT
 ;
 W "<br />",!
 ;
 D DAF1
 ;
 D DIVBUT
 ;
 Q
 ;
 ;
KOTHSB(NMB,SPK,DAT,DOC) ;
 D ^W4KOTHSB(NMB,SPK,DAT,DOC)
 Q
 ;
DIVBUT ;
 W "<br/>"
 W "<div id=""divbut"">",!
 W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    W "<select id=""kvz"" onChange=""ChoiceGroup()"">",!
     W "<option value=""0"" >-- "_$$^%W1DICT("CHOICEGRIT")_" --</option>",!
     D
     .N GLSUGP S GLSUGP=$$GLSUGP^W4MLPRT
     .N A,N S N="" F  S N=$O(@GLSUGP@(N)) Q:N=""  D
     ..S A=$G(^(N))
     ..W "<option value="""_N_""" "
     ..I $G(%ARG("KVZ")),N=%ARG("KVZ") W " selected=""selected"" "
     ..W ">"_N_" "_$$H2U^%L1FRM(A)_"</option>",!
    W "</select>",!
   W "</td>",!
   ;
   W "<td width=""33%"">&nbsp;</td>"
   ; 
   W "<td>"
    I '$$SHOW D
     .D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit('"_NOM_"')","color:green",",,,80")
     .W "</td>"
     .W "<td>&nbsp;</td>"
    D
     .W "<td>"
     .D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print('"_NOM_"')","color:blue",",,,80")
     .W "</td>"
   ;
   W "<td>&nbsp;</td>"
   I $$SHOW,'$$VIEWONLY D
    .W "<td>"
    . D ROUNDBUT^%W1JS("Update",$$^%W1DICT("UPDATE"),"Update('"_NOM_"')","color:blue",",,,80")
    .W "</td>",!
   W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,80")
   W "</td>"
   W "<td width=""38%"">&nbsp;</td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
TD W "<td width=""30%"">"
 Q
 ;
TDLTR W "<td "_$$LTR_" align=""right"" "
 Q
 ;
LTR(STAM) ;
 Q " dir=""LTR"" align=""right"" "
 ;
TDN W "<td>&nbsp;</td>",!
 Q
 ;
COLST(NOM)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL,COL,N S COL=0
 I '$G(NOM) D  Q COL
 .S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  S COL=COL+1
 Q $O(@GL@(NOM,99999),-1)
 ;
SHOWPRMAM ;
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
 W " <tr>"
 W "  <td>"
 W "  "_$$^%W1DICT("PRICENOTINCLUDEDTAX")_"&nbsp;"
 W "   <input type=""radio"" name=""prmam"" value=""0"" "_$S('$$PRMAM(NOM):" checked=""checked""",1:"")_" "_$S($G(NOM):" disabled=""disabled""",1:"")_" onClick=""OnChangePrMam()"""_" >"
 W "  </td>",!
 W "  <td>"
 W "  "_$$^%W1DICT("PRICEINCLUDEDTAX")_"&nbsp;"
 W "   <input type=""radio"" name=""prmam"" value=""1"" "_$S($$PRMAM(NOM):" checked=""checked""",1:"")_" "_$S($G(NOM):" disabled=""disabled""",1:"")_" onClick=""OnChangePrMam()"""_" >"
 W "  </td>"
 W " </tr>",!
 W "</table>",!
 Q
 ;
 ;
DAF1 ;
  W "<div id=""divcmnt"" align=""center"" dir="""_$$^%W1DIR_""">",!
   D DIVCMNT(NOM)
  W "</div>",!
  ;
  D DAFBODY(NOM)
  ;
  D SHOWTOT(NOM)
ET ;
  W "</table>",!
  ;;W "</div>",!
  ;
 Q
 ;
 ;
DAFBODY(NOM) ;
 N (JB,%ARG,SPK,DAT,NOM,NUMBER,SQNC,SQNR,SSUMC,SSUMR)
 ;
 I '$D(NOM) S NOM=0
 S (SQNC,SQNR,SSUMC,SSUMR)=0
 ;
 D PUT^%W1PRM("PRMAM",$$PRMAM(NOM))
 ;
 W "<br /><br />",!
 ;;W "<div style=""height:600px"" >",!
 W "<table id=""TblTk"" dir="""_$$^%W1DIR_""" width=""98%"" border=""1"" cellspacing=""0"">",!
  W "<thead class=""hdfix"" >",!
  W "<tr>"
  W " <th width=""18%"">"_$$^%W1DICT("CODE")_"</th>",!
  W " <th width=""20%"">"_$$^%W1DICT("ITEMNAME")_"</th>",!
  W " <th width=""9%"">"_$$^%W1DICT("EM")_"</th>",!
  W " <th width=""7%"">"_$$^%W1DICT("PRICE")_"</th>",!
  W " <th width=""8%"">"_$$^%W1DICT("QNCOMP")_"</th>",!
  W " <th width=""8%"">"_$$^%W1DICT("QNREAL")_"</th>",!
  W " <th width=""6%"">"_$$^%W1DICT("QNDIF")_"</th>",!
  W " <th width=""10%"">"_$$^%W1DICT("SUMCOMP")_"</th>",!
  W " <th width=""10%"">"_$$^%W1DICT("SUMREAL")_"</th>",!
  W "</tr>",!
  W "</thead>",!
  ;
  D GLTMP
  S COLST=$O(@GLTMP@(99999),-1) ;; $COLST(NOM)
  I COLST<5,'$$SHOW S COLST=5
  ;
  I $G(NOM) D
  .;
  .F I=1:1:COLST D LINE(NOM,I)
  .I '$$SHOW N I1 F I1=I+1:1:I+5 D LINE(0,I1)
  ;
  I '$G(NOM) D
  .N I,I1,N1 S I=0,N1=""
  .N GLTMP D GLTMP
  .N N S N="" F  S N=$O(@GLTMP@(N)) Q:N=""  S I=I+1,N1=N D LINE(0,N)
  .F I1=I+1:1:I+5 S N1=N1+1 D LINE(0,I1)
  Q
 ;
 ;
DIVCMNT(NOM) ;
  N COMMENT S COMMENT=""
  I $G(NOM) D
  .D GETINP^W4HSBGET("ITK",0,NOM)
  .S COMMENT=$G(W4HSB("COMMENT"))
  W "<table dir="""_$$^%W1DIR_""" width=""90%"" border=""0"" cellspacing=""0"">",!
  ;
  I $G(PRV),$$PRINT G ETB
  ;
  W " <tr>",!
  I '$$PRINT D 
  .W "<td width=""3%"">",!
  . S %W1PCEX("NOHD")=""
  . S %W1PCEX("NOHD1")=""
  . D DIVEXC^%W1PC1("W4TKDOC","%W1PCEX")
  .W "</td>"
  .W "<td width=""3%"">",!
  . W "&nbsp;"
  .W "</td>"
  .W "<td width=""3%"">",!
  . D FND
  .W "</td>"
  .W "<td>&nbsp;</td>"
  .W "<td width=""30%"">",!
  . D FINDIT
  .W "</td>"
  ;
  W "<td width=""4%"">"_$$^%W1DICT("COMMENT")_"</td>",!
  I '$$SHOW D
  .W "  <td width=""40%""><input type=""text"" size="""_$S($$1024^W4WDSCR:45,1:70)_""" maxlength=""75"" id=""comment"" value="""_$$H2U^%L1FRM(COMMENT)_"""></td>",!
  .W "  <td width=""3%"">&nbsp;</td>"
  .W "  <td "_$$^%W1ALIGN_" ><input type=""checkbox"" id=""chkprv"" >"_$$^%W1DICT("PRIVATEINF")_"</td>"
  I $$SHOW D
  .W "  <td id=""tdcmnt"" style=""color:black;font-weight:bold"">"_$$H2U^%L1FRM(COMMENT)_"</td>",!
  .I $G(PRV) W "<td id=""tdprv"">["_$$^%W1DICT("PRIVATEINF")_"]</td>"
  W " </tr>",!
ETB ;
  W "</table>",!
 Q
 ;
ONKEYPRESS ;
 S ONKEYPRESS=" onKeyPress=""OnKeyPress(event,'"_I_"','"_NOM_"')"" "
 Q
 ;
READONLY(NOM)
 S NOM=$G(NOM)
 N TX S TX=""
 I $$NOTEDIT(NOM) S TX=" readonly=""readonly"" "
 ;
 S TX=TX_" style=""color:black"
 I $$NOTEDIT(NOM) S TX=TX_";background-color:#eaeaea"
 S TX=TX_""""
 Q TX
 ;
 ;
NOTEDIT(NOM) Q 0
 ;
 ;
FINDIT ;
 W $$^%W1DICT("ITEMNUMBER") W $$NBSP^%L1FRM(2)
 W "<input id=""findItem"" type=""text"" size=""8"" "
 W " onKeyPress=""FindItemEnter(event)"" "
 W " onClick=""this.select()"" />"
 W "&nbsp;"
 W "<input type=""button"" id=""fnditbtn"" value="""_$$^%W1DICT("SEARCH")_""" "
  W " onClick=""FindItem()"" "
 W ">",!
 Q
 ;
LINE(NOM,I) ;
 N ONKEYPRESS D ONKEYPRESS
 N PRM S PRM=NOM_";"_I
 N A S A=$G(@GLTMP@(I))
 ;
 I $E(A)="~" D  Q
 .W "<tr><td colspan=""9"" style=""background-color:darkgreen;color:white;font-weight:bold;text-align:center"">"
 . W $E(A,2,200)
 .W "</td></tr>",!
 ;
 W "<tr id=""trid"_I_""" "
 D
 .I $L($G(%ARG("PAR"))),$$INPCODE(PRM)=%ARG("PAR") D  Q
 ..W " style=""background-color:lightyellow"" "
 .I $G(I)#2 W " style=""background-color:lightgrey"" "
 W ">"
 W "<td id=""tdcdid"_I_""" align=""center"" "
  W "  style=""cursor:pointer"" "
  N CD S CD=$$CODE(NOM,I)
  I $$SHOW!$$HOW!$G(NOM),CD'?.P W "onClick=""ShowItemCard('"_CD_"','ifr',self,'&VIEW=1&BACK=1')"" "
 W ">"_$$INPCODE(PRM) W "</td>",!
 ;
 W "<td id=""tdnmid"_I_""" align=""center"">"_$$INPNAME(PRM)_"</td>",!
 ;
 W " <td align=""center"">"
  W $$INPEM(PRM)
 W "</td>",!
 ;
 W " <td align=""center"">"_$$INPPRC(PRM)_"</td>",!
 ;
 N QNC,QNR S QNC=$$QNCOMP(NOM,I),QNR=$$QNREAL(NOM,I)
 W " <td align=""right"" dir=""LTR"" id=""qncomp"_I_""" "
 W " style=""cursor:pointer"" "
 ;;W " onClick=""ShowItemHist('code"_I_"','"_DAT_"')"" "
 W " onClick=""ShowItemHist('"_$$CODE(NOM,I)_"','"_DAT_"')"" "
 W " >"_$$INPQNC(PRM)_"</td>",!
 ;
 D TDLTR W ">"_$$INPQNR(PRM)_"</td>",!
 ;
 D TDLTR W " id=""qndif"_I_""">"_(QNR-QNC)_"</td>"
 S SQNC=SQNC+QNC,SQNR=SQNR+QNR
 S SUMC=$$SUMCOMP(NOM_";"_I),SUMR=$$SUMREAL(NOM_";"_I)
 S SSUMC=SSUMC+SUMC,SSUMR=SSUMR+SUMR
 ;
 D TDLTR
 W " id=""sumcomp"_I_""">"_$$INPSUMC(PRM)_"</td>",!
 ;
 D TDLTR W " id=""sumreal"_I_""">"_$$INPSUMR(PRM)_"</td>",!
 W "</tr>",!
 Q
 ;
 ;
INPCODE(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N CODE S CODE=$$CODE(NOM,I)
 ;
 I $$SHOW!$$HOW!$G(NOM),CODE Q CODE
 N SPK S SPK=$$SPK(NOM)
 ;
 I '$$NOTEDIT(NOM) D
 .S ST=ST_"<img id=""delete"" src=""w4delete.jpg"" onClick=""Delete('trid"_I_"')"" >"
 ;
 S ST=ST_"&nbsp;<input type=""text"" name=""code"" id=""code"_I_""" size=""8"" maxlength=""14"" value="""_CODE_""" "
 S ST=ST_" onKeyUp=""OnKeyCode(event,'"_I_"','"_NOM_"',this)"" "_$$READONLY(NOM)
 ;
 I '$$NOTEDIT(NOM) D
 .S ST=ST_" onChange=""Find('code"_I_"','code"_I_"','name"_I_"','MLPAR','','','','','','&SPK="_SPK_"')"" >"
 .S ST=ST_"&nbsp;<img id=""codefltr"_I_""" src=""w3filter.jpg"" onClick=""Find('code"_I_"','code"_I_"','name"_I_"','MLPAR','','','','','','&SPK="_SPK_"')"" >"
 .S ST=ST_"&nbsp;<img src=""w4plus.jpg"" onClick=""Plus('"_NOM_"','"_I_"')"" "
 ;
 S ST=ST_" >"
 Q ST
 ;
 ;
INPNAME(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N NAME,DIRNAME
 S DIRNAME=$$DIRNAME
 N NM S NM=$$NAME(NOM,I)
 I NM?.P D
 .N CD S CD=$$CODE(NOM,I)
 .I $L(CD) S NM=$$MLNAME^W4MLPRT(CD)
 S NAME=$$SHOWNAME(NM)
 ;
 I $$SHOW!$$HOW!$G(NOM),NAME'="" Q NAME
 ;
 N ST
 S ST="<input type=""text"" dir="""_DIRNAME_""" size=""30"" "
 S ST=ST_"id=""name"_I_""" maxlength=""30"" value="""_NAME_""" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"onChange=""OnChangeName('"_I_"')"" >"
 Q ST
 ;
 ;
INPEM(PRM)
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST S ST=""
 N VL S VL=+$$GET(NOM,I,7) S:'VL VL=1
 N GLMLEM S GLMLEM=$$^W4GL("MLMIDA")
 ;
 I $$NOTEDIT(NOM)!$$SHOW D  Q ST
 .N ZN S ZN=$G(@GLMLEM@(VL))
 .I ZN="" S ST="&nbsp;" Q
 .S ST=$$H2U^%L1FRM(ZN)
 ;
 S ST="&nbsp;<select id=""em"_I_""" "
 S ST=ST_" onChange=""ChangeEM('code"_I_"','em"_I_"')"" >"
 S ST=ST_">"
 ;
 I '$D(@GLMLEM@(1)) S @GLMLEM@(1)="dcigi"
 ;
 N N S N="" F  S N=$O(@GLMLEM@(N)) Q:N=""  D
 .S ST=ST_"<option value="""_N_""" "_$S(N=VL:" selected=""selected"" ",1:"")_">"
 .S ST=ST_N_" "_$$H2U^%L1FRM($G(^(N)))_"</option>"
 S ST=ST_"</select>"
 Q ST
 ;
 ;
INPPRC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 ;
 I $$SHOW Q $$NUM($$PRC(NOM,I))
 ;
 D ONKEYPRESS
 N ST
 S ST="<input type=""text"" "_$$LTR_" align=""right"" size=""5"" "
 S ST=ST_"id=""prc"_I_""" maxlength=""8"" onClick=""FocSel(this)"" "
 S ST=ST_"onKeyUp=""ChangeSum('"_I_"')"" onChange=""OnChangePrice('"_I_"')"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"onBlur=""OnChangeSum(this)"" value="""_$$NUM($$PRC(NOM,I))_""">"
 Q ST
 ;
 ;
INPQNC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 D ONKEYPRESS
 N ST
 ;
 N QN S QN=$$QNCOMP(NOM,I)
 S ST=""
 I QN<0 S ST="<span style=""color:red"">"
 S ST=ST_$$NUM(QN)
 I QN<0 S ST=ST_"</span>"
 Q ST
 ;
INPQNR(PRM) ;
 N NOM,I,ST S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 I '$$SHOW,$$PRINT D  Q ST
 .S ST="<input type=""text"" size=""4"" />"
 ;
 N QN S QN=$$QNREAL(NOM,I)
 I $$SHOW D  Q $$NUM(QN)
 .I QN<0 S QN="<span style=""color:red"">"_QN_"</span>"
 ;
 D ONKEYPRESS
 ;
 S ST="<input type=""text"" "_$$LTR_" align=""right"" size=""6"" id=""qnreal"_I_""" "
 S ST=ST_"maxlength=""7"" onClick=""FocSel(this)"" "
 S ST=ST_"onKeyUp=""ChangeSum('"_I_"')"" onBlur=""OnChangeSum(this)"" "
 S ST=ST_$G(ONKEYPRESS)_" "_$$READONLY(NOM)
 S ST=ST_"value="""_$$NUM(QN)_""">"
 Q ST
 ;
INPSUMC(PRM) ;
 N NOM,I S NOM=$P(PRM,";"),I=$P(PRM,";",2)
 N SUMC S SUMC=$$SUMCOMP(NOM_";"_I)
 Q $S(SUMC<0:"<span style=""color:red"">",1:"")_$$NUM(SUMC)_$S(SUMC<0:"</span>",1:"")
 ;
INPSUMR(PRM) ;
 N SUMR S SUMR=$$SUMREAL(PRM)
 Q $S(SUMR<0:"<span style=""color:red"">",1:"")_$$NUM(SUMR)_$S(SUMR<0:"</span>",1:"")
 ;
SHOWTOT(NOM)
  W "<tr style=""background-color:yellow;font-weight:bold"">"
   D SPACE
   W " <td "_$$INV^%W1ALIGN_">"_$$^%W1DICT("TOTAL")_"&nbsp;</td>"
   D TDLTR W " id=""totqnc""><b>"_SQNC_"</b></td>"
   D TDLTR W " id=""totqnr""><b>"_SQNR_"</b></td>"
   D TDLTR W " id=""totdif""><b>"_(SQNR-SQNC)_"</b></td>"
   D TDLTR W " id=""totsumc""><b>"_$J(SSUMC,2,2)_"</b></td>"
   D TDLTR W " id=""totsumr""><b>"_$J(SSUMR,2,2)_"</b></td>"
  W "</tr>",!
 Q
 ;
GETSPK(NOM)
 I '$G(NOM) Q $$SPK
 Q $P($G(@$$GL@(NOM)),"\",1)
 ;
SPK(STAM)
 I $G(%ARG("SPK")) Q +%ARG("SPK")
 Q +$$GETP^%W1PRM("SPK")
 ;
GETDEP(NOM)
 I '$G(NOM) Q $$DEP
 Q $P($P($G(@$$GL@(NOM)),"\",3)," ")
 ;
DEP(STAM)
 I $G(%ARG("DEP")) Q +%ARG("DEP")
 Q +$$GETP^%W1PRM("DEP")
 ;
DEPNAME(NOM)
 I '$G(NOM),'$$DEP Q ""
 I '$G(NOM) Q $G(@$$^W4GL("DEP")@($$DEP))
 Q $P($P($G(@$$GL@(NOM)),"\",3)," ",2,20)
 ;
GETDAT(NOM)
 I '$G(NOM) Q $$SPA^%L1FRM($$GETP^%W1PRM("DAT"))
 Q $P($G(@$$GL@(NOM)),"\",4)
 ;
GETDOC(NOMDOC) ;
 Q "ITK"
 ;
GETPRMAM(STAM)
 Q $$GET^%W1PRM("PRMAM")
 ;
 ;
PUTHD(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D GLTMP
 S ST=PRM
 S HRA=$$CNWEB^%L1FRM($P(ST,";",5))
 S HRA=$$INVH^%L1FRM(HRA)
 S $P(@GLTMP,"\",9)=HRA
 Q
 ;
 ;
PUT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 D GLTMP
 S ST=PRM
 S SH=$P(ST,";") Q:'SH
 S CD=$P(ST,";",2)
 S NAME=$$CNWEB^%L1FRM($P(ST,";",3))
 I $$DIRNAME="RTL" S NAME=$$INVH^%L1FRM(NAME)
 S PRC=$P(ST,";",4)
 S QNC=+$P(ST,";",5)
 S QNR=+$P(ST,";",6)
 S EM=$P(ST,";",7)
 S:'EM EM=1
 S @GLTMP@(SH)=CD_"\"_NAME_"\"_PRC_"\"_QNC_"\"_QNR_"\"_$G(PRMAM)_"\"_EM
 Q
 ;
 ;
SUBMIT(PRM) ; -- SAVE NEW
 N (JB,%ARG,%REM,PRM,PR)
 D PUT^%W3DEB("W4TKDOC1-SUBMIT","PRM=PRM & PR=PR")
 ;
 D GLTMP S COLST=$$COLST
 ;
 S NOM=$P(PRM,";",1)
 ;
 S HRA=$P(PRM,";",2)
 S HRA=$$CNWEB^%L1FRM(HRA)
 S PRV=$P(HRA,"~",2)
 S HRA=$P(HRA,"~")
 S HRA=$$INVH^%L1FRM(HRA)
 ;
 S SPK=$$GETSPK(NOM)
 I SPK="" S SPK=0
 S SPK1=$$SPKNAME(NOM)
 S DEP=$$GETDEP(NOM)
 S DEP1=$$DEPNAME(NOM)
 S DAT=$$DAT(NOM)
 ;
 S PRMAM=$$GETPRMAM
 ;
SBMTV ;
 N GL S GL=$$GL
 S NMBDOC=NOM
 I 'NOM S NMBDOC=$$LASTNOM+1
 ;
 I $G(NOM) D
 .N DATOLD,DT,VDOC
 .S DATOLD=$$DAT(NOM) D PUT^%W3DEB("W4TKDOC1-SUBMIT","DATOLD=DATOLD&NOM=NOM")
 .D  ; --------- DELETE OLD
 ..S DT=$$^%L1DC(DATOLD,3)
 ..S VDOC=$$DOC(NOM)
 ..N SPK S SPK=$G(%ARG("SPK")) I SPK="" S SPK=0
 ..D ^W4SETMLY(DT,VDOC,SPK,+NOM,-1)
 .
 .S NMBDOC=NOM
 ;
 K @GL@(NMBDOC)
 ;
 D ^%S3GLSV(GL_"("""_NMBDOC_""")",$$^W4FGIB,"K")
 ;
 S (SQNC,SQNR,SSUMC,SSUMR)=0
 S AHMAM=$$AHMAM(0)
 ;
 N N,I,SQN S N="",I=0,SQN=0 F  S N=$O(@GLTMP@(N)) Q:N=""  I N D
 .N ST S ST=$G(^(N))
 .I $E(ST)="~" Q
 .N QN,PRC
 .S QNC=$$QNCOMP(0,N),QNR=$$QNREAL(0,N),PRC=$$PRC(0,N)
 .S SUMC=$$SUMCOMP(0_";"_N),SUMR=$$SUMREAL(0_";"_N)
 .I 'QNC,'QNR,'PRC,'SUMC,'SUMR Q
 .S SQNC=SQNC+QNC
 .S SQNR=SQNR+QNR
 .N A S A=$G(@GLTMP@(N))
 .S I=I+1,@GL@(NMBDOC,I)=A ; --- !!!!!!-- SAVING --!!!!!!!!!
 .S SSUMC=SSUMC+SUMC
 .S SSUMR=SSUMR+SUMR
 ;
 ;;I 'SQNR Q "NODATA!"
 ;
 D PUT^%W3DEB("W4DOC-SUBMIT","SSUMC=SSUMC & SSUMR=SSUMR")
 ;
 L +@GL@(NMBDOC):1
 ;
 N STHD
 S STHD=SPK_"\"_SPK1_"\"_DEP_" "_DEP1_"\"_DAT_"\"_AHMAM_"\"_SSUMR_"\"_SSUMC_"\"_$ZD($H,"DD.MM.YY  24:60")_"\"_HRA_"\"_SQNC_"\"_SQNR_"\"_PRMAM
 ;
 D PUT^%W3DEB("W4DOC-SUBMIT","STHD=STHD&NMBDOC=NMBDOC")
 ;
 N VDOC S VDOC=$$GETDOC(NOM)
 ;
 ; -------- SAVING
 S @GL@(NMBDOC)=STHD
 K @GLTMP
 ;
 N DT S DT=$$^%L1DC(DAT,3)
 ;
 D PUT^%W3DEB("W4DOC-SUBMIT-SETMLY","DT=DT&VDOC=VDOC&SPK=SPK&DEP=DEP&NMBDOC=NMBDOC")
 I $G(SPK)="" S SPK=0
 ;
 D ^W4SETMLY(DT,VDOC,SPK,NMBDOC)
 ;
 S N="" F  S N=$O(@GL@(NMBDOC,N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .S $P(A,"\",4)=$P(A,"\",5)
 .S ^(N)=A
 ;
 D PUT^%W1PRM("LHBCUR",NMBDOC)
 ;
 L  ;
SUBMITE ;
 K @$$^W4MAIN("VRM")
 Q NMBDOC
 ;
 ;
GL(STAM) ;
 Q $$^W4GL("W4IDK")
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMPHBK")
 Q
 ;
GLTMPA ;
 S GLTMPA=$$^W4MAIN("TMPA")
 Q
 ;
 ;
GET(NOM,SH,NRZ)
 N GL,GLTMP
 S GL=$$GL
 D GLTMP
 N VL
 N SH0 S SH0=0 I NOM S SH0=$$COLST(NOM)
 ;;I '$G(NOM)!'$$SHOW!(NOM&(SH>SH0)) D  Q VL
 D  Q VL
 .S VL=$P($G(@GLTMP@(SH)),"\",NRZ)
 ;
 ;;S VL=$P($G(@GL@(NOM,SH)),"\",NRZ)
 Q VL
 ;
 ;
CODE(NOM,SH) ;
 Q $$GET(NOM,SH,1)
 ;
NAME(NOM,SH) ;
 Q $$GET(NOM,SH,2)
 ;
EM(NOM,SH) ;
 Q $$GET(NOM,SH,7)
 ;
PRC(NOM,SH) ;
 Q $J($$GET(NOM,SH,3),2,2)
 ;
QNCOMP(NOM,SH) ;
 N QN
 S QN=$$GET(NOM,SH,4)
 I QN["." Q $J(QN,2,2)
 Q QN
 ;
QNREAL(NOM,SH) ;
 N QN
 S QN=$$GET(NOM,SH,5)
 I QN<0,'$$SHOW S QN=0
 I QN["." Q $J(QN,2,2)
 Q QN
 ;
 ;
SUMCOMP(PRM) ;
 N NOM,SH S NOM=$P(PRM,";"),SH=$P(PRM,";",2)
 I '$$QNCOMP(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 ;;I $$PRMAM(NOM) Q $J($$SUMST(NOM,SH,"C")*100/(100+$$AHMAM(NOM)),2,2)
 Q $J($$SUMST(NOM,SH,"C"),2,2)
 ;
SUMREAL(PRM) ;
 N NOM,SH S NOM=$P(PRM,";"),SH=$P(PRM,";",2)
 I '$$QNREAL(NOM,SH)!'$$PRC(NOM,SH) Q "&nbsp;"
 ;;I $$PRMAM(NOM) Q $J($$SUMST(NOM,SH,"R")*(100+$$AHMAM(NOM))*.01,2,2)
 Q $J($$SUMST(NOM,SH,"R"),2,2)
 ;
SUMST(NOM,SH,PRM)
 N QN S QN=0
 I PRM="C" S QN=$$QNCOMP(NOM,SH)
 I PRM="R" S QN=$$QNREAL(NOM,SH)
 Q $J(QN*$$PRC(NOM,SH),2,2)
 ;
LASTNOM(STAM)
 Q $O(@GL@(999999),-1)
 ;
 ;
SPKNAME(NOM) ;
 N SPK S SPK=$$GETSPK(NOM)
 Q $$NAME^W4SPK(SPK)
 ;
DAT(NOM) ;
 I '$G(NOM) Q $$GETDAT
 N DAT
 N GLOB S GLOB=$$GL
 D PUT^%W3DEB("W4DOC-DAT","GLOB=GLOB & NOM=NOM")
 S DAT=$$SPA^%L1FRM($P($G(@GLOB@(NOM)),"\",4))
 I DAT="" Q $$GETDAT
 Q DAT
 ;
AHMAM(NOM) ;
 I '$G(NOM) Q $G(@$$^W4PRM@("MAM"))
 N AHMAM S AHMAM=$P($G(@$$GL@(NOM)),"\",5)
 I AHMAM="" Q $G(@$$^W4PRM@("MAM"))
 Q AHMAM
 ;
ISSUE(NOM) ;
 I '$G(NOM) Q $ZD($H,"DD.MM.YY")
 Q $P($G(@$$GL@(NOM)),"\",8)
 ;
CMNT(NOM) ;
 N GLTMP D GLTMP
 I '$G(NOM) Q $$H2U^%L1FRM($P($G(@GLTMP),"\",9))
 Q $$H2U^%L1FRM($P($G(@$$GL@(NOM)),"\",9))
 ;
PRMAM(NOM) ;
 I $$INP Q 0
 I '$G(NOM) Q $S($G(%ARG("PRMAM"))="":$$PRMAM^W4LKH,1:$G(%ARG("PRMAM")))
 Q $P($G(@$$GL@(NOM)),"\",11)
 ;
HRA(NOM) ;
 N HRA,GLTMP D GLTMP
 I '$G(NOM) Q $P($G(@GLTMP),"\",9)
 Q $P($G(@$$GL@(NOM)),"\",9)
 ;
DIRNAME()
 Q $$DIRNAME^W3PRM
 ;
SHOWNAME(NAME) ;
 I $$DIRNAME="RTL" Q $$H2U^%L1FRM(NAME)
 Q NAME
 ;
NUM(RKV)
 I RKV?."0"."."."0" Q "&nbsp;"
 Q RKV
 ;
SPACE D TDN,TDN,TDN
 Q
 ;
 ;
INIT ;
 D ^%W1ARG,^W3CSS,GLTMP
 I $G(FIRST) K @GLTMP
 D PUT^%W1PRM("SPK",$G(SPK))
 D PUT^%W1PRM("DEP",$G(DEP))
 D PUT^%W1PRM("DAT",$$SPA^%L1FRM($G(DAT)))
 D PUT^%W1PRM("DOC","ITK")
 S $P(@GLTMP,"\")=$G(SPK)
 S $P(@GLTMP,"\",2)=$G(SPK1)
 S $P(@GLTMP,"\",4)=$G(DAT)
 Q
 ;
DEL(SH) ;
 D PUT^%W3DEB("W4DOC-DEL","SH=SH")
 N GLTMP D GLTMP
 D DEL^%L1GSEQ(GLTMP,SH)
 Q
 ;
W4DIRD(DT,NOMDOC) ;
 L +@$$^W4GL("W4DIRD")@(DT):1
 S @$$^W4GL("W4DIRD")@(DT,NOMDOC)=$H
 L -@$$^W4GL("W4DIRD")@(DT)
 D ^%S3GLSV($$^W4GL("W4DIRD")_"("_DT_","_NOMDOC_")",$$^W4FGIB)
 Q
 ;
INP(NUMBER) ;
 Q ($E($$DOC($G(NUMBER)))="I")
 ;
DOC(NUMBER) ;
 N D
 I $L($G(%ARG("DOC"))) S D=%ARG("DOC")
 I $G(D)="" S D=$$GETP^%W1PRM("DOC")
 Q D
 ;
SHOW(STAM) ;
 I $G(%ARG("SHOW")) Q 1
 Q 0
 ;
PRINT(STAM) ;
 I $G(%ARG("PRINT")) Q 1
 Q 0
 ;
VIEWONLY(STAM) ;
 I $G(%ARG("VIEWONLY")) Q 1
 Q 0
 ;
HOW(STAM) ;
 I $$IDKSUG Q 2
 I $G(%ARG("HOW")) Q $G(%ARG("HOW"))
 Q 0
 ;
IDKSUG()
 Q $G(@$$^W4GL("W3PRM")@("IDKSUG"))
 ;
 ;
FRMLN(NOM,N,CD) ;
 N MH,QNCNM,IND,NM,QNC,QNR,IND
 I '$G(NOM) S MH=$J($$MLMHER^W4MLPRT(CD),2,2)
 I $G(NOM) S MH=$P($G(@$$GL@(NOM,N)),"\",3)
 S NM=$$MLNAME^W4MLPRT(CD)
 N DT S DT=$$^%L1DC(DAT,3) ;;-1
 I '$G(NOM) S QNC=$$QNC(CD,DT)
 I $G(NOM) S QNC=$P($G(@$$GL@(NOM,N)),"\",4)
 S QNR=QNC D:$G(NOM)  I QNR<0,'$$SHOW S QNR=0
 .N QR S QR=$P($G(@$$GL@(NOM,N)),"\",5)
 .I +QR'=+QNC S QNR=QNC_" => "_QR
 ;
 I '$$HOW,'$$IDKSUG D  Q
 .N EM I '$G(NOM) S EM=$$MLEMSFR^W4MLPRT(CD)
 .I $G(NOM) S EM=$P($G(@$$GL@(NOM,N)),"\",7)
 .S I=I+1,@GLTMP@(I)=CD_"\"_NM_"\"_MH_"\"_QNC_"\"_QNR_"\"_(QNR-QNC)_"\"_EM
 ;
 D GLTMPA
 ;
 I $$HOW!$$IDKSUG D  ; --- ABC SORT
 .N J
 .S IND=$$INV^%L1FRM(NM)
 .S IND=$$ENG^%L1FRM(IND,10)
 .N SUGP S SUGP=$$MLSUGP^W4MLPRT(CD)
 .S SUGP=$J(SUGP,7)
 .I $$IDKSUG S IND=SUGP_"^"_IND_"^"_$J(CD,8)
 .I '$$IDKSUG S IND=IND_"^"_$J(CD,8)
 .I $$HOW=1 S IND=$J(CD,8)
 .S @GLTMPA@(IND)=CD_"\"_NM_"\"_MH_"\"_QNC_"\"_QNR_"\"_(QNR-QNC)_"\1"
 Q
 ;
 ;
QNC(CD,DT) ;
 N QN S QN=+$$^W4GETMLY(CD,DT)
 I $G(NUMBER) D
 .N GLMLY S GLMLY=$$^W4GL("W4MLY")
 .N HD S HD=$G(@$$^W4GL("W4IDK")@(NUMBER))
 .N SPK S SPK=$P(HD,"\") S:SPK="" SPK=0
 .N QNI S QNI=$G(@GLMLY@(DT,CD,"I",SPK,"ITK",NUMBER))
 .S QN=QN-QNI
 Q QN
 ;
FND ;
  W "<img id=""imgsrc"" src=""w4find.png"" onClick=""SearchText()"" "
  W "style=""cursor:pointer;width:"_$$^W4KF(25)_"px;height:"_$$^W4KF(25)_"px"" />"
 Q
 ;
 ;
NEWPAR(NOM) ; 
 Q:'$G(NOM)
 N GL S GL=$$GL
 N TMPPAR S TMPPAR=$$^W4MAIN("TMPPAR") K @TMPPAR
 N N S N="" F  S N=$O(@GL@(NOM,N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .N CD S CD=$P(A,"\") Q:CD=""
 .S @TMPPAR@(CD)="" 
 ; 
 D GLTMP
 N GLPAR S GLPAR=$$GLMLPAR^W4MLPRT
 N SH S SH=$$COLST(NOM)
 N DT S DT=$$^%L1DC(DAT,3) ;;-1 ; ***
 ;
 S N="" F  S N=$O(@GLPAR@(N)) Q:N=""  D
 .I '$D(@TMPPAR@(N)) D
 ..S SH=SH+1
 ..N MH,QNCNM,IND,NM,QNC,QNR,IND
 ..S MH=$J($$MLMHER^W4MLPRT(N),2,2)
 ..S NM=$$MLNAME^W4MLPRT(N)
 ..S QNC=$$QNC(N,DT)
 ..S QNR=QNC I QNR<0 S QNR=0
 ..S @GLTMP@(SH)=N_"\"_NM_"\"_MH_"\"_QNC_"\"_QNR_"\"_(QNR-QNC)_"\"_$$MLEMSFR^W4MLPRT(N)
 ;
 S COLST=SH 
 Q
 ;
TMPA2TMP ;
 N N1 S N1=$O(@GLTMPA@("")) Q:N1=""
 N I S I=0
 N SUGO S SUGO=""
 ;
 S N="" F  S N=$O(@GLTMPA@(N)) Q:N=""  D
 .I $$IDKSUG D 
 ..S SUG=$P(N,"^")
 ..
 ..I SUG'=SUGO D
 ...N SUGP S SUGP=$$SPA^%L1FRM(SUG) S:SUGP="" SUGP=" "
 ...S I=I+1
 ...S @GLTMP@(I)="~"_SUGP_" "_$$H2U^%L1FRM($G(@GLSUGP@(SUGP)))
 ...S SUGO=SUG
 .
 .S I=I+1
 .S @GLTMP@(I)=@GLTMPA@(N)
 ;
 K @GLTMPA
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TLMLST
W4TLMLST ; [ 06.07.22 13:23 ] [ 17.09.21 11:15 ] [ 12.09.21 13:19 ] 
 N (JB,%ARG)
 S I=0,(SSUMTL,SSUMTS)=0
 S ADDT=+$H
 S MEDT=ADDT-200
 S VD=1
 S GL=$$TMP^W4REPTL1 K @GL
 S NOTLMTS=""
 ;
 D CRTMPTLM^W4REPTL1(VD,MEDT,ADDT)
 N TMP S TMP=$$^W4MAIN("TMPLST") K @TMP
 S N="" F I=1:1 S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(^(N))
 .S NM=$$INVH^%L1FRM($P(A,"\",5)) S:NM="" NM=" "
 .S @TMP@($E(NM,1,10)_$J(I,3))=A
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 D CLOSE
 W "<br><br>",!
 W "<table width=""98%"" border=""1"" dir="""_$$^%W1DIR_""" cellpadding=""12"" style=""background-color:white"">",!
  W "<th>"_$$H2U^%L1FRM("yelz 'qn")_"</th>"
  W "<th>"_$$H2U^%L1FRM("dyikx jix`z")_"</th>"
  W "<th>"_$$H2U^%L1FRM("mlynd 'qn")_"</th>"
  W "<th>"_$$H2U^%L1FRM("mlynd my")_"</th>"
  W "<th>"_$$H2U^%L1FRM("inl")_"</th>"
  W "<th>"_$$H2U^%L1FRM("mekq")_"</th>"
  ;
  S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
  .S A=$G(^(N))
  .S TL=$$SPA^%L1FRM($P(A,"\"))
  .I $P(TL," ",2) S TL=$P(TL," ",2)
  .W "<tr style=""cursor:pointer"" onClick=""ClickMtn('"_TL_"')"">"
  . W "<td>"_$P(A,"\")_"</td>"
  . W "<td>"_$P(A,"\",3)_"</td>"
  . W "<td>"_$P(A,"\",4)_"</td>"
  . W "<td>"_$$H2U^%L1FRM($P(A,"\",5))_"</td>"
  . W "<td>"_$$H2U^%L1FRM($P(A,"\",6))_"</td>"
  . W "<td>"_$J($TR($P(A,"\",7)," []",""),2,2)_"</td>"
  .W "</tr>",!
 W "</table>",!
 W "<br><br>",!  
 D CLOSE
 W "</div>",! 
 ;;K @TMP,@GL ;
 K @GL
 Q
 ;
 ;
CLOSE ;
 D ^W4BTN("CLOSE","Close()","RED")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TLMTN
W4TLMTN ; [ 06.04.23 21:13 ] [ 22.02.21 21:00 ] [ 18.12.18 06:30 ] 
 Q
LAST(STAM) ;
 N LAST
 S LAST=$O(@$$^W4GL("W4TLMTN")@(999999),-1)
 I LAST<0 S LAST=0
 Q LAST
 ;
SUM(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\")
 ;
HZM(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",2)
 ;
DTMH(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",3)
 ;
PAYERNAME(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",4)
 ;
PAYERTEL(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",5)
 ;
RCP(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",6)
 ;
HZMBIT(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",7)
 ;
PAID(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",8)
 ;
HZMPAID(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",9)
 ;
ODEFFROM(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",10)
 ;
DTTS(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",11)
 ;
CB(NOMTL) ;
 I $G(NOMTL)="" Q ""
 Q $P($G(@$$^W4GL("W4TLMTN")@(NOMTL)),"\",12)
 ;
PUT(NOMTL,RKV,VL) ;
 I '$G(NOMTL) Q
 I $G(RKV)="" Q
 I '$D(VL) Q
 I RKV="SUM" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\")=VL
 I RKV="HZM" D
 .S VL=$$HZM^W4ORD(VL)
 .S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",2)=VL
 I RKV="DTMH" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",3)=VL
 I RKV="PAYERNAME" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",4)=VL
 I RKV="PAYERTEL" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",5)=VL
 I RKV="RCP" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",6)=VL
 I RKV="HZMBIT" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",7)=VL
 I RKV="PAID" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",8)=VL
 I RKV="HZMPAID" D
 .S VL=$$HZM^W4ORD(VL)
 .S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",9)=VL
 I RKV="ODEFFROM" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",10)=VL
 I RKV="DTTS" S $P(@$$^W4GL("W4TLMTN")@(NOMTL),"\",11)=VL
 Q
 ;
PC(HZM)
 N LAB,MAS
 S LAB="TLMTN"
 S MAS(1)="dpzn yelz    "
 I $G(ODEFTL) S MAS(1)="(scer) dpzn yelz"
 N GCOUP S GCOUP=$$GCOUPTLM^W4HZMST(HZM)
 S MAS(3)=GCOUP
 ;;S ^AA("W4TLMTN-PC","GCOUP")=GCOUP
 ;;S ^AA("W4TLMTN-PC","HZM")=HZM
 N TIME S TIME=$$MKRTIME^W4HZMST(HZM)
 I TIME?5N1",".E S TIME=$ZD(TIME,"DD.MM.YY  24:60")
 S MAS(5)=TIME
 S MAS(10)=$$GCOUPRCP^W4HZMST(HZM)
 S MAS(15)=$J($$GCOUPSUM^W4HZMST(HZM),2,2)
 S MAS("EHAD")=1
 S MAS("CUT")=1
 S MAS("HD")=1
 D ^W4CB
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TMP2QN
W4TMP2QN ; [ 02.05.17 16:55 ] [ 
 N TMPORD S TMPORD=$$^W4TMPORD
 N TMPQN S TMPQN=$$^W4MAIN("TMPQN")
 K @TMPQN
 N N S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .S CD=$P(A,"~",2)
 .S QN=$P(A,"~",5) Q:'QN
 .S @TMPQN@(CD,N)=QN
 Q
 

W4TMPANS
W4TMPANS(STAM) ; [ 03.04.12 21:57 ] [ 13.11.09 16:07 ] [ 22.09.09 21:10 ]
 N GL D GL
 Q GL
 ;
KILL(VP,ID) ;
 N GL D GL
 I $G(VP)="" K @GL Q
 I $G(ID)="" K @GL@(VP) Q
 K @GL@(VP,ID)
 Q
 ;
GET(VP,ID) ;
 I $G(VP)=""!($G(ID)="") Q ""
 N GL D GL
 Q $G(@GL@(VP,ID))
 ;
DFLT(VP,ID) ;
 I $G(VP)=""!($G(ID)="") Q ""
 N GL D GL
 Q $G(@GL@(VP,ID,"DFLT"))
 ;
PUT(VP,ID,VL) ;
 N GL D GL
 S @GL@(VP,ID)=VL
 Q
 ;
PUTDFLT(VP,ID,VL) ;
 N GL D GL
 S @GL@(VP,ID,"DFLT")=VL
 Q
 ;
GL S GL=$$^W4MAIN("TMPANS")
 Q

W4TMPHD
W4TMPHD ; [ 23.05.23 17:59 ] [ 23.10.14 03:47 ] [ 22.03.14 17:22 ] [
 S @$$^W4MAIN("TMPHD")=$G(@$$^W4TMPORD)
 Q
 ;
NMB(STAM) ;
 Q $P($$GET,"~")
 ;
GET(STAM) ;
 Q $G(@$$^W4MAIN("TMPHD"))
 ;
SETSOAD(VL) ;
 S $P(@$$^W4MAIN("TMPHD"),"~",24)=$G(VL)
 N NMB S NMB=$$NMB^W3HZMST(JB)
 I $$^W4MSL(NMB),$$SDSAK^W4PRM,'$D(@$$^W4TMPORD@("SDSAK")) S ^("SDSAK")=$H
 I $$RESTORAN^W4PRM D ^W4RSTRN(1,0,NMB,$G(VL))
 Q
 ;
KILL ;
 K @$$^W4MAIN("TMPHD")
 Q
 
 
 

W4TMPOP
W4TMPOP(PRCOPY) ; [15.06] [ 10.03.26 01:56 ] [ 04.03.25 18:25 ] [ 20.08.23 13:56 ] 
 N (JB,%ARG,PRCOPY)
 D TMPCOPY
 K @TMPCOPY
 S TMPORD=$$^W4TMPORD
 S TMPORDB="^[$$^W3MAIN]TMPORDB(JB)"
 N HD0 S HD0=$G(@TMPORDB)
 N COPY2NMB S COPY2NMB=$P(HD0,"~")
 ;
 S I=0
 I $O(@TMPORDB@(99999),-1)=1 D
 .S A=$G(@TMPORDB@(1))
 .S B=$G(@TMPORD@(1))
 .I $P(A,"~")=0,$P(A,"~",2)=$$HZMH^W3PRM,$P(B,"~",2)'=$$HZMH^W3PRM D
 ..S I=I+1
 ..S @TMPCOPY@(I)=$G(@TMPORDB@(1))
 ;
 D TMP2COPY
 ;
 N HD S HD=$G(@TMPORD)
 ;
 I $$GETP^%W1PRM("COPYORD")<0 D  Q
 .N J F J=5,6,8:1:12,17,18,21,23,26,39:1:46,51:1:55,60:1:63 D
 ..S $P(HD,"~",J)=$P(HD0,"~",J) ; -- TAAR,SHAA,ASM
 .S @TMPCOPY=HD
 .D SETDAT(TMPCOPY)
 ;
 K @TMPORD
 M @TMPORD=@TMPCOPY
 ;
 I $G(PRCOPY)="REST",'$$DELIS^W4PRM G MET
 ;
 N I S I="" F  S I=$O(@TMPORD@(I)) Q:I=""  I I D
 .D UPDMH^W4MENU(I)
 ;
MET ;
 K @TMPCOPY
 S @TMPORD=$S(PRCOPY="HIST"&$L(HD0):HD0,1:HD)
 D SETDAT(TMPORD)
 ;
 N HZM S HZM=$$GETP^%W1PRM("COPYTO")
 D KILL^%W1PRM("COPYTO")
 ;
 N DM S DM=$P($G(@TMPORD),"~",9)
 I 'DM,'$$POLYGON^W4PRM D
 .N CODE,CITY,STREET,HOME,SUM
 .S CODE=$$NMB^W3HZMST(JB)
 .S CITY=$$CITY^W3HZMST(JB)
 .S STREET=$$STREET^W3HZMST(JB)
 .S HOME=$$HOME^W3HZMST(JB)
 .S SUM=$$TSHL^W3HZMST(JB)
 .N PRM S PRM=CODE_"^"_CITY_"^"_STREET_"^"_HOME_"^"_SUM_"^1"
 .S DM=+$$^W4COMPDM(JB,"",HZM,PRM)
 .S $P(@TMPORD,"~",9)=DM
 ;
 S $P(@TMPORD,"~",4)=$ZD($H,"DD.MM.YY  24:60")
 ;
 I HZM>0 D
 .S HZM=$$^W4NEWHZ(JB,HZM,1)
 .D PUT^%W1PRM("HZM",HZM)
 Q
 ; 
SETDAT(GL) ;
 N DAT S DAT=$P($G(@GL),"~",5)
 I $$^%L1DC(DAT,3)<$H D
 .S $P(@GL,"~",5)=$ZD($H,"DD.MM.YY") 
 Q 
 ;
TMP2COPY ;
 D TMPCOPY
 N QNM S QNM=""
 N N S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .N A S A=$G(^(N)) I $P(A,"~",5)<0 Q
 .N LV,CD S LV=$P(A,"~"),CD=$P(A,"~",2)
 .I CD,$G(@$$^W4PRM@("NOCPNOUS")),$$NOPAR^W4PRTVW(CD)!'$D(@$$^W4GL("PAR")@(CD)) Q
 .S I=I+1
 .M @TMPCOPY@(I)=@TMPORD@(N)
 .S @TMPCOPY@(I)=$P($G(@TMPORD@(N)),"~",1,8)
 .
 .I $P(@TMPCOPY@(I),"~")=0 D  Q
 ..N QNM0 S QNM0=$P($G(@TMPORD@(N)),"~",5)
 ..S QNM=$$ITRAST^W3HZMST(JB,N)
 ..N QNPIZZA S QNPIZZA=$P(QNM0,"|",2)
 ..I QNPIZZA'="",QNM'["|",QNM'["+" S QNM=QNM_"|"_QNPIZZA
 ..S $P(@TMPCOPY@(I),"~",5)=QNM
 .; -------------- LV>0 -------------
 .N QN S QN=$P(@TMPCOPY@(I),"~",5)
 .N QNPIZZA S QNPIZZA=$P(QN,"|",2)
 .I QN["*",$P(@TMPCOPY@(I),"~") S QN=QNM_"*"_$P(QN,"*",2)
 .I QNPIZZA'="",QN'["|",QN'["+" S QN=QN_"|"_QNPIZZA
 .S $P(@TMPCOPY@(I),"~",5)=QN
 Q
 ;
TMPCOPY ;
 S TMPCOPY="^[$$^W3MAIN]TMPCOPY(JB)"
 Q
 
 
 
 

W4TMPORD
W4TMPORD(STAM) ; [ 17.12.20 12:00 ] [ 02.12.20 13:23 ] [ 25.11.20 16:39 ] 
 Q "^["""_$$^W3MAIN_"""]TMPORD(JB)"
 ;
PUT(NM,RKV,IND) ;
 N TMP D TMP
 I $G(NM)="" Q
 I $G(JB)="" Q
 I NM="NMB" S $P(@TMP,"~",1)=RKV Q
 I NM="DATCB" S $P(@TMP,"~",4)=RKV Q
 I NM="TSHL" S $P(@TMP,"~",11)=RKV Q
 I NM="MLZR" D  Q
 .I $$MKBL^W3HZMST(JB),'$G(@$$^W4PRM@("LAST")) Q
 .S $P(@TMP,"~",18)=$TR($J(RKV,5)," ",0)
 I NM="SOAD" S $P(@TMP,"~",24)=RKV Q
 I NM="LKHN" S $P(@TMP,"~",27)=RKV Q
 I NM="DATK" S $P(@TMP,"~",29)=RKV Q
 ;
 I NM["QNID",$G(IND) D
 .S $P(@TMP@(IND),"~",5)=RKV
 Q
 ;
TMP S TMP="^["""_$$^W3MAIN_"""]TMPORD(JB)"
 Q
 ;
KORD(HZ) K ^[$$^W3MAIN]TMPORD(HZ)
 Q
 ;
SAVE ;
 N VAR
 D SAVE1
 ;
 F VAR="HZM","NMB","MLZR","DELROW","CODE","FUTDAT","URMENU" D
 .N @VAR,A S A=$$GETP^%W1PRM(VAR)
 .I A'["<UNDEF" D PUT^%W1PRM(VAR_"B",A)
 ;
 N GL
 K @$$^W4MAIN("TMPSAVE")
 F GL="TMPOP","TMPMV","TMPMVD","TMPMVD0","TMPANS","TMPS" D
 .M @$$^W4MAIN("TMPSAVE")@(GL)=@$$^W4MAIN(GL)
 Q
 ;
 ;
SAVE1 ;
 Q:$G(JB)=""
 N MAIN S MAIN=$$^W3MAIN
 L +^[MAIN]TMPORDB(JB):1
 K ^[MAIN]TMPORDB(JB)
 M ^[MAIN]TMPORDB(JB)=^[MAIN]TMPORD(JB)
 L -^[MAIN]TMPORDB(JB)
 Q
 ;
SAVEC ;
 N MAIN S MAIN=$$^W3MAIN
 S ^[MAIN]TMPORDC(JB)=$G(^[MAIN]TMPORD(JB))
 Q
 ;
REST ;
 I '$D(^[$$^W3MAIN]TMPORDB(JB)) Q
 ;
 D KORD(JB)
 K @$$^W4MAIN("TMPORDO")
 K @$$^W4MAIN("TMPOP")
 K @$$^W4MAIN("TMPOAI")
 D KILL^%W1PRM("HZM")
 ;
 D REST1
 ;
 F VAR="HZM","NMB","MLZR","DELROW","CODE","FUTDAT","URMENU" D
 .N @VAR,A S A=$$GET^%W1PRM(VAR_"B")
 .I A'["<UNDEF" D PUT^%W1PRM(VAR,A) D KILL^%W1PRM(VAR_"B")
 ;
 N GL
 F GL="TMPOP","TMPMV","TMPMVD","TMPMVD0","TMPANS","TMPS" D
 .I $D(@$$^W4MAIN("TMPSAVE")@(GL))>9
 ..K @$$^W4MAIN(GL)
 ..M @$$^W4MAIN(GL)=@$$^W4MAIN("TMPSAVE")@(GL)
 ;
 K @$$^W4MAIN("TMPSAVE")
 Q
 ;
REST1 ;
 N MAIN S MAIN=$$^W3MAIN
 M ^[MAIN]TMPORD(JB)=^[MAIN]TMPORDB(JB)
 K ^[MAIN]TMPORDB(JB)
 Q
 
 
 
 
 
 
 

W4TMPP
W4TMPP(STAM) ; [ 14.12.08 10:05 ] [ 12.12.08 22:02 ] [
 N GL D GL
 Q GL
 ;
GET(CD) N GL D GL
 Q $G(@GL@(CD))
 ;
PUT(CD,VL) ;
 N GL D GL
 S @GL@(CD)=VL
 Q
 ;
KILL ;
 N GL D GL
 K @GL
 Q
 ;
GL S GL=$$^W4MAIN("TMPP")
 Q

W4TMPPAY
W4TMPPAY(STAM) ; [ 04.01.19 15:26 ] [ 03.01.19 22:18 ] [ 30.05.18 12:27 ] 
 N GL D GL
 Q GL
 ;
KILL ;
 N GL D GL
 K @GL
 Q
 I $G(VT)="" K @GL
 K @GL(VT)
 Q
 ;
GET(VT,ID) ;
 N GL D GL
 Q $G(@GL@(VT,ID))
 ;
DFLT(VT,ID) ;
 N GL D GL
 Q $G(@GL@(VT,ID,"DFLT"))
 ;
SKIP(VT,ID) ;
 N GL D GL
 Q $G(@GL@(VT,ID,"SKIP"))
 ;
ISSKIP(VT,ID) ;
 N GL D GL
 Q $D(@GL@(VT,ID,"SKIP"))#2
 ;
PUT(VT,ID,VL) ;
 N GL D GL
 S @GL@(VT,ID)=VL
 Q
 ;
PUTDFLT(VT,ID,VL) ;
 N GL D GL
 S @GL@(VT,ID,"DFLT")=VL
 Q
 ;
PUTSKIP(VT,ID,VL) ;
 N GL D GL
 S @GL@(VT,ID,"SKIP")=VL
 Q
 ;
GL S GL=$$^W4MAIN("TMPPAY")
 Q
 
 
 
 
 
 

W4TMPREP
W4TMPREP ; [ 14.09.25 14:20 ] [ 17.02.25 02:19 ] [ 03.02.25 05:46 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(%ARG("SHOW"))=0 Q
 D ^W4IN
 D ^%W1ARG I '$G(MEDAT),'$G(ADDAT) Q
 S D1=$$^%L1DC(MEDAT,3)
 S D2=$$^%L1DC(ADDAT,3)
 ;
 D FRM
 ;
 D DIVEX
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
 W "<p style=""font-size:"_$$^W3FSZ(14)_""">",!
  W $$^%W1DICT("TMPREPREPORT",MEDAT_"<>"_ADDAT)
 W "</p>",!
 ;
 D TMP
 ;
 W "<table dir="""_$$^%W1DIR_""" align=""center"" width=""80%"" >",!
 W "<tr>",!
  W "<th>"
    W $$^%W1DICT("DATE")
  W "</th>"
  W "<th>"
    W $$^%W1DICT("ORDER")
  W "</th>"
  W "<th>"
    W $$^%W1DICT("MAKOR")
  W "</th>"
  W "<th>"
    W $$^%W1DICT("STARTPREPTIME")
  W "</th>"
  W "<th>"
    W $$^%W1DICT("FINPREPTIME")
  W "</th>"
  W "<th>"
    W $$^%W1DICT("PREPTIME")
  W "</th>"
 W "</tr>",!
 ;
 N A
 S DT="" F  S DT=$O(@TMP@(DT)) Q:DT=""  D 
 .S HZ="" F  S HZ=$O(@TMP@(DT,HZ)) D:HZ="" AVR  Q:HZ=""  D  
 ..S A=$G(^(HZ))
 ..W "<tr>",!
 .. W "<td style=""text-align:center"">"  
 ..  W $ZD(DT,"DD.MM.YY") 
 .. W "</td>"
 ..
 .. W "<td "_$$^W4TOUCH_" = ""ShowOrd('"_HZ_"')"" style=""cursor:pointer"" >"  
 ..  W HZ
 .. W "</td>"
 ..
 .. W "<td>"
 ..  W $$H2U^%L1FRM($P(A,"\")) ; -- MAKOR
 .. W "</td>"
 ..
 .. W "<td style=""text-align:center"">"  
 ..  W $P(A,"\",2) ; -- TM PC
 .. W "</td>"
 ..
 .. W "<td style=""text-align:center"">"  
 ..  W $P(A,"\",3) ; -- TM PREP
 .. W "</td>"
 ..
 .. W "<td style=""text-align:center"">"  
 ..  W $P(A,"\",4) ; -- DIF
 .. W "</td>"
 ..
 ..W "</tr>",! 
 ;
 W "</table>",!
 W "</div>",!
 ;
 K @$$^W4MAIN("TMP"),@$$^W4MAIN("TMPPC")
 Q
 ;
 ;
FRM ;
 N DT,K,HZ,SDIF,MKR,MKR1,TMPC,TMPREP,DIF,DIFM,ST,I,K,DT,SDIF
 D TMP
 K @TMP
 ;
 S I=0
 ;
 D CRTMPPC(D1,D2)
 ;
 S DLVPREPN=0
 ;
 F DT=D1:1:D2 D
 .S K=0,SDIF=0
 .S HZ="" F  S HZ=$O(@$$^W4GL("W4LINKD")@(DT,HZ)) Q:HZ=""  D
 ..I $$HZM^W4MSL(HZ) D FRMHZ(HZ)
 .I $D(REST) D
 ..S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ...I $$HZM^W4MSD(HZ) D FRMHZ(HZ)
 .I K S AVR(DT)=$J(SDIF/K,2,2)
 Q
 ;
 ;
FRMHZ(HZ) ;
 N MKR,MKR1,TMPC,TMPREP,DIF,DIFM,ST
 S MKR=$$MKRDLV^W4HZMST(HZ),MKR1=""
 I MKR S MKR1=$G(@$$^W4GL("W3MKR")@(MKR))
 S TMPC=$$TMPC(HZ,DT)
 S TMPREP=$$TMRD(HZ,DT)
 I TMPC=""!(TMPREP="") Q
 S DIF=$$DIF^%L1TIME(TMPREP,TMPC,1) Q:'DIF
 S DIFM=$J(DIF/60,2,2) Q:DIFM<$$MINTIME(HZ)  ; -- 09/01/25
 S ST=MKR1_"\"_$$T^%L1TIME(TMPC)_"\"_$$T^%L1TIME(TMPREP)_"\"_$$TMIN^%L1TIME(DIFM)
 I TMPC,TMPREP S K=K+1,SDIF=SDIF+DIFM
 I DIFM'>$$NORMPREP S DLVPREPN=DLVPREPN+1
 S I=I+1,@TMP@(DT,HZ)=ST
 Q
 ;
AVR ; 
 S AVRTM=""
 I $D(AVR(DT)) S AVRTM=AVR(DT)
 ;
 W "<tr style=""font-weight:bold;background-color:yellow"">",!
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  W "<td>&nbsp;</td>"
  W "<td style=""text-align:center"">"_$$^%W1DICT("AVRGPREPTIME")_"</td>"
  W "<td style=""text-align:center"">"  
   W $$TMIN^%L1TIME(AVRTM) 
  W "</td>"
 W "</tr>",!
 Q 
 ;
TMP ; 
 S TMP=$$^W4MAIN("TMP")
 Q
 ;
DIVEX ;
  W "<div id=""excel"">",!
   D FRMEX
   D DIVEXC^W4SVEX("TMP")
  W "</div>",!
 Q
 ;
 ;
FRMEX ;
 N (JB,%ARG,%REM)
 D TMP,TMPREP
 K @TMPREP
 ;
 S LNG="H",DLM=","
 ;
 S HD=$$TV^%W1DICT(LNG,"DATE")_DLM
 S HD=HD_$$TV^%W1DICT(LNG,"ORDER")_DLM
 S HD=HD_$$TV^%W1DICT(LNG,"MAKOR")_DLM
 S HD=HD_$$TV^%W1DICT(LNG,"STARTPREPTIME")_DLM
 S HD=HD_$$TV^%W1DICT(LNG,"FINPREPTIME")_DLM
 S HD=HD_$$TV^%W1DICT(LNG,"PREPTIME")
 ;
 S @TMPREP@("HD")=$$REV(HD,DLM)
 ;
 S I=0
 S DT="" F  S DT=$O(@TMP@(DT)) Q:DT=""  D
 .S HZ="" F  S HZ=$O(@TMP@(DT,HZ)) Q:HZ=""  D
 ..S A=$G(^(HZ))
 ..S ST=$ZD(DT,"DD.MM.YY")_"\"_HZ_"\"_A
 ..S ST1=$$REV(ST,"\")
 ..S I=I+1,@TMPREP@(I)=$TR(ST1,"\",",")
 ;
 D ^W4SVEX("TMP")
 Q
 ;
TMPREP ;
 D TMPREP^W4SVEX
 Q
 ;
REV(ST,DLM) ; 
 N ST1 S ST1="" 
 N I F I=$L(ST,DLM):-1:1 S ST1=ST1_$P(ST,DLM,I)_DLM
 S ST1=$E(ST1,1,$L(ST1)-1) 
 Q ST1 
 ;
TMPC(HZ,DT) ; 
 N TMPC,BON
 S TMPC=$G(@$$^W4ORD@(HZ,"PCAFTPAY"))
 N TMPPC S TMPPC=$$^W4MAIN("TMPPC") 
 I $D(@TMPPC@(HZ)) D
 .N A S A=$G(^(HZ))
 .N D S D=$P(A,"\") I DT'=D Q
 .N ZMAN S ZMAN=$P(A,"\",2)
 .S TMPPC=$E(ZMAN,1,5)_","_$E(ZMAN,6,10)
 Q TMPC
 ;
TMRD(HZ,DT)  
 N TMRD S TMRD=$G(@$$^W4ORD@(HZ,"READY"))
 N TMPPC S TMPPC=$$^W4MAIN("TMPPC") 
 I $D(@TMPPC@(HZ)) D
 .N A S A=$G(^(HZ))
 .N D S D=$P(A,"\") I DT'=D Q
 .N ZMAN S ZMAN=$P(A,"\",3)
 .S TMRD=ZMAN
 Q TMRD 
 ;
CRTMPPC(D1,D2) ;
 N BON S BON=$$^W4GL("W4BONA")
 N TMPPC S TMPPC=$$^W4MAIN("TMPPC") K @TMPPC
 N DT F DT=D1:1:D2 D
 .I $D(@BON@(DT)) D
 ..N N,ZMAN,ORD,TIME
 ..S N="" F  S N=$O(@BON@(DT,N)) Q:N=""  D
 ...S ZMAN="" F  S ZMAN=$O(@BON@(DT,N,ZMAN)) Q:ZMAN=""  D
 ....S ORD="" F  S ORD=$O(@BON@(DT,N,ZMAN,ORD))  Q:ORD=""  D
 .....S TIME=$G(^(ORD))
 .....I '$D(@TMPPC@(ORD)) S @TMPPC@(ORD)=DT_"\"_ZMAN 
 .....S $P(@TMPPC@(ORD),"\",3)=TIME
 Q
 ;
NORMPREP() ; 
 Q 3
 ;
MINTIME(HZ) ; 
 N MINMANA S MINMANA=.5
 N MINTIME S MINTIME=0
 ;
 N N,A,A1,CD,CDT,QN,QNT
 S N="" F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N D
 .S A=$G(^(N)),CD=$P(A,"\"),QN=$P(A,"\",5)
 .I $$TNR(CD) S MINTIME=MINTIME+(QN*MINMANA) ;;W "CD="_CD_"  QN="_QN,! ; ***
 .I '$$^W4EZAT(CD) Q
 .S CDT="" F  S CDT=$O(@$$^W4ORD@(HZ,N,CDT)) Q:CDT=""  I CDT D
 ..S A1=$G(^(CDT))
 ..S QNT=$P(A1,"\",3)
 ..I $$TNR(CDT) S MINTIME=MINTIME+(QNT*MINMANA) ;;W "CDT="_CDT_" QNT="_QNT,! ; ***
 I MINTIME<1 S MINTIME=1
 Q MINTIME
 ;
 ;
TNR(CD) ; 
 N A S A=$$PRINTIG^W3PRMDP(CD) 
 I +$P(A,">"),$P(A,">",2) Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TMPWRD
W4TMPWRD(JB) ; [ 22.06.23 14:37 ] [ 13.01.22 17:05 ] [ 10.08.21 12:08 ] 
 N (JB)
 S TMPWRD=$$^W4MAIN("TMPWRD") K @TMPWRD
 S GLP=$$^W4GL("PAR")
 S N="" F  S N=$O(@GLP@(N)) Q:N=""  D
 .S SUG=$$SUG^W4P(N)
 .S A=$P($G(@GLP@(N)),"**")
 .F I=1:1:$L(A," ") S WORD=$P(A," ",I) I WORD'?.P D
 ..S WORD=$TR(WORD,"""","")
 ..S WORDI=$$INVH^%L1FRM(WORD)
 ..S @TMPWRD@(WORDI,N)=""
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4TMPZ
W4TMPZ(STAM) ; [ 14.12.08 10:05 ] [ 12.12.08 22:02 ] [
 N GL D GL
 Q GL
 ;
GET(CD) N GL D GL
 Q $G(@GL@(CD))
 ;
PUT(CD,VL) ;
 N GL D GL
 S @GL@(CD)=VL
 Q
 ;
KILL ;
 N GL D GL
 K @GL
 Q
 ;
GL S GL=$$^W4MAIN("TMPZ")
 Q

W4TMPZP
W4TMZP(STAM) ; [ 14.12.08 11:53 ] [ 12.12.08 22:02 ] [
 N GL D GL
 Q GL
 ;
GET(CD) N GL D GL
 Q $G(@GL@(CD))
 ;
PUT(CD,VL) ;
 N GL D GL
 S @GL@(CD)=VL
 Q
 ;
KILL ;
 N GL D GL
 K @GL
 Q
 ;
GL S GL=$$^W4MAIN("TMPZP")
 Q

W4TMSPNT
W4TMSPNT ; [ 16.01.25 18:38 ] [ 08.01.25 10:38 ] [ 09.06.24 13:33 ] 
 N (JB,%ARG,%REM,MSDR,DT,DAT,VRM)
BG ;
 S MSDR=$G(%ARG("MSDR")) Q:'MSDR
 S DAT=$ZD(DT,"DD.MM.YY")
 S TOT=0,QND=0
 ;
 S MSD="" F  S MSD=$O(^[$$^W3MAIN]W3MSDR(MSDR,MSD)) Q:MSD=""  I $G(^(MSD)) D
 .D GET^W4MZVM(MSD,DT)
 .N AH S AH=0 I QNSP S AH=$J(QNSP30/QNSP,2,2)*100
 .I 'QNSP S QNSP30="",QNSP=""
 .S MKF(100-AH,MSD)=AH_"\"_QNSP_"\"_QNSP30
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT("SUPPLIEDTIME",DAT)
  W "</span>",!
  W "<br>"
  W "<span style=""font-size:"_$$^W3FSZ(11)_""" >"
   W $$^%W1DICT("SHOWTIME",$ZD($H,"DD.MM.YY")_"<>"_$ZD($H,"24:60"))
  W "</span>",!
 W "<br><br>",!
 ;
 ;D SORT
 ;W "<p></p>",!
 ;
 W " <table border=""1"" cellpadding=""5"" cellspacing=""0"" >"
 W "<tr>"
  W "<th>"_$$^%W1DICT("SNIF")_"</th>"
  W "<th>"_$$^%W1DICT("SNIFNAME")_"</th>"
  W "<th>"_$$^%W1DICT("ALLDLVORDS")_"</th>"
  W "<th>"_$$^%W1DICT("DELIVERYTIME30QN")_"</th>"
  W "<th>"_$$^%W1DICT("PERCENT30")_"</th>"
  W "<th>"_$$^%W1DICT("NETPLACE")_"</th>"
 W "</tr>",!
 ;
 S K=0
 ;
 ;;ZWR MKF ; ***
 S N="" F  S N=$O(MKF(N)) Q:N=""  D
 .S MSD="" F  S MSD=$O(MKF(N,MSD)) Q:MSD=""  D
 ..S A=MKF(N,MSD)
 ..S AH=$P(A,"\"),QN=$P(A,"\",2),QN30=$P(A,"\",3)
 ..
 ..W "<tr ",!
 .. I 'AH W "style=""background-color:pink"" " 
 ..W ">"
 .. S NAME=$$H2U^%L1FRM($$MSD^W3R(MSD))
 .. I AH S K=K+1
 .. W "<td >"_MSD_"</td>"
 .. W "<td >"_NAME_"</td>"
 .. W "<td align=""center"">"_QN_"</td>"
 .. W "<td align=""center"">"_QN30_"</td>"
 .. W "<td align=""center"">"_$S(AH:$J(AH,2,2)_"%",1:"&nbsp;")_"</td>"
 .. W "<td >"_$S(AH:K,1:"&nbsp;")_"</td>"
 .. W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<br><br>",!
 I $G(%ARG("USR")) W $$NBSP^%L1FRM(5) D BACK Q
 ;
 W "</div>",!
 Q
 ;
 ;
TRSP ;
 W "<tr>"
  W "<td>&nbsp;</td><td>&nbsp;</td>"
 W "</tr>",!
 Q
 ;
 ;
INIT ;
 D PUT^%W1PRM("SMALL",1)
 I $G(%ARG("NOSMALL")) D PUT^%W1PRM("SMALL",0)
 D ^W4BGBODY
 I $G(%ARG("SIMUL"))'="" D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 Q
 ;
VRM ; 
 S VRM=$$^W4MAIN("VRM")
 Q 
 ;
SORT ; 
 Q 
 ;
SELECTED(SORT) ; 
 I SORT=1,$G(%ARG("SORT"))<2 Q "selected=""selected"" " 
 I SORT>1,$G(%ARG("SORT"))=SORT Q "selected=""selected"" " 
 Q ""
 ;
US(MSD) ;
 N OK S OK=1
 I $D(MMSD)>9,$G(MSD),'$D(MMSD(MSD)) S OK=0
 Q OK 
 ;
BACK ; 
 D ^W4BTN("BACK","parent.location.reload()","red")
 Q
 ;
PAPJ(MSDR) ; 
 I MSDR=10222 Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TNBEMV
W4TNBEMV ; [ 05.02.26 12:49 ] [ 05.07.24 11:29 ] [ 04.07.24 12:03 ] 
 N (JB,UIDBIT,OUT,RES)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D KILL^%W1PRM("TNBEMVER")
 ;
 S VT=10
 D PUT^W4TMPPAY(VT,"CARDNUMBER","")
 ;
 S GLTNBEMV="^[$$^W3MAIN]W4TNBEMV(DZ)"
 S DZ=$$^W4DZ
 N SH S SH=$O(@GLTNBEMV@(99999999),-1)+1
 ;
 S ER=0
 S (RES,RESMSG,MSG)=""
 ;
 S DV=$$^W4MYDVN
 ;
 I $$EMV^W4PRM=4 D  G END
 .N DZ,SEC,VUID,PRM
 .S DZ=$$^W4DZ
 .S SEC=$P($H,",",2) 
 .S HZM=+$$GETP^%W1PRM("HZM") I 'HZM S RES="NOORD" Q
 .S VUID=DZ_"_"_DV_"_"_SEC_"_"_HZM
 .S PRM=VUID
 .
 .N IND S IND=$O(@$$^W4ORD@(HZM,"EMVTNB",9999),-1)+1
 .S @$$^W4ORD@(HZM,"EMVTNB",IND,"VUID")=VUID
 .S @$$^W4ORD@(HZM,"EMVTNB",IND,"DV")=$$^W4MYDVN
 .K OUT
 .D ^W4EMVN("EMVTNB",PRM,HZM)
 .
 .;;N TMPRSP S TMPRSP=$$TMPRSP^W4EMVN ; ***
 .;;K @TMPRSP M @TMPRSP=^W4EMVNPR(67024,11,"RESP",145,67091) ; ***
 .
 .S OUT("ER")=$$GET("result_code")
 .S ER=OUT("ER")
 .N SUCCESS S SUCCESS=$$GET("success")
 .I SUCCESS="eurt" S SUCCESS="true"
 .S ^AA("W4TNBEMV","SUCCESS")=SUCCESS 
 .I 'ER,$$FUNC^%UCASE(SUCCESS)'="TRUE" S ER=998,RES=998
 .I $$FUNC^%UCASE(SUCCESS)="TRUE" S ER=0,RES=0
 .
 .S RESMSG=$$GET("result_msg")
 . 
 .I RESMSG=""!(RESMSG="-") S RESMSG=$$GET("message")
 .I RESMSG=""!(RESMSG="-") S RESMSG=$$GET("ERROR")
 .I RESMSG=""!(RESMSG="-") S RESMSG="ERROR "_ER
 .
 .S RES=ER
 .S OUT("ER")=ER
 .S OUT("RES")=RES
 .S OUT("SUCCESS")=SUCCESS
 .S OUT("RESMSG")=RESMSG
 .S (CARD,OUT("CARD"))=$$GET("track2")
 .M @$$^W4ORD@(HZM,"EMVTNB",IND,"OUT")=OUT
 ;
 ;
 S ID=DV_JB_$R(1000)
 ;
 S HD="{"
 S HD=HD_$$RKV("jsonrpc","2.0",1)
 S HD=HD_","_$$RKV("method","displaySwipeCard",1)
 S HD=HD_","_$$RKV("id",ID,1)
 S HD=HD_",""params"":["
 S HD=HD_"""ashrait"",{"
 ;
 S DV=$$^W4MYDVN
 S HZM=$$GETP^%W1PRM("HZM")
 S MSG="DONE"
 I 'HZM S ER=-1,MSG="NOORD" G END
 ;
 S FLIND=DV_"_"_JB_"_"_HZM
 ;
 S MSG1="Hello"
 S MSG2="Swipe Tenbis Card"
 S MSG3=""
 ;
 S ST=$$RKV("string1",MSG1) 
 S ST=ST_","_$$RKV("string2",MSG2,1)
 S ST=ST_","_$$RKV("string3",MSG3,1)
 S ST=ST_","_$$RKV("OpenMSR","true")
 S ST=ST_","_$$RKV("timeout",30)
 ;
 S FOOT="}]}"
 ;
 ;
 S STR=HD_ST_FOOT
 ;
 S FL=$$PATH_"tnbemv"_FLIND
 ;
 C FL:(DELETE)
 O FL:(NEWVERSION:REWIND) U FL
  W STR
 C FL
 ;
 S ADR=$$EMVADR^W4POSEMV(DV)
 I ADR="" S ADR=$$EMVADR^W4POSEMV(1)
 I ADR="" S ER=-2,MSG="NOADR" G END
 ;
 I ADR'[":" S ADR=ADR_":8080"
 S URL="http://"_ADR_"/SPICy"
 S FLOU=$$PATH_"tnbemvou"_FLIND
 S CMD="curl -s -m 90 -k -H ""Content-Type:application/json"" -d@"_FL_" "_URL_" -o "_FLOU
 S @GLTNBEMV@(SH,"CMD")=CMD
 ZSY CMD
 S ER=$ZSY
 S @GLTNBEMV@(SH,"ZSY")=ER
 ;;ZSY "rm -f "_FL ; --- *** VERNUT !
 I '$$EXIST^%L1ZOS(FLOU) S ER=-3,MSG="NOANSWER" G END
 ;
TV D FL2ARR^W4EMV3(FLOU)
 N A,I S A=""
 M @GLTNBEMV@(SH,"ARR")=ARR
 ;
 F I=1:1 Q:'$D(ARR(I))  S A=A_ARR(I)
 K ARR
 ;
 I $$GET(A,"id")'=ID S ER=-4,MSG="IDWRONG" G END
 ;
 S RES=$$GET(A,"statusCode")
 S RESMSG=$$FUNC^%UCASE($$GET(A,"statusMessage"))
 ;
 S OUT("RES")=RES
 S OUT("RESMSG")=$$U2H($$CLR(RESMSG))
 S OUT("ID")=$$GET(A,"id")
 ;
 S (CARD,OUT("CARD"))=$$GET(A,"track2")
 I 'CARD S ER=-5,MSG="NOCARD" G END 
 ;
 M @GLTNBEMV@(SH,"OUT")=OUT
 ;
END ;
 S @GLTNBEMV@(SH,"ER")=$G(ER)
 S @GLTNBEMV@(SH,"MSG")=$G(MSG)
 ;
 I ER D
 .I $G(RES) S ER=RES,MSG=$G(RESMSG)
 .S MSG=$$FUNC^%UCASE(MSG)
 .;;S RES=ER_"*******"_ER_"*"_$G(MSG) ; --19/11/23
 .S RES=ER_"*"_$G(MSG) ; --19/11/23
 .D PUT^%W1PRM("TNBEMVER",RES)
 .;;I '$$GETP^%W1PRM("TNBEMV") D 
 ..W "<script>",!
 ..W " MsgI(Txt4Msg('"_$G(MSG)_"'))",!
 ..W "</script>",!
 ;
 S @GLTNBEMV@(SH,"RES")=$G(RES)
 S @GLTNBEMV@(SH,"HZM")=$G(HZM)
 S @GLTNBEMV@(SH,"CARD")=$G(CARD)
 ; 
 I RES=0,$G(HZM),$G(CARD) D
 .D PUT^W4TMPPAY(VT,"CARDNUMBER",CARD)
 .D PAYTB^W4PAYKB(HZM)
 ;
 D PUT^%W1PRM("TNBEMVER",RES) 
 Q
 ;
 ;
TR(VL,LN) ;
 Q $$TR^W4STRINW(VL,LN)
 ;
RKV(NM,VL,PRTX) ;
 Q $$RKV^W4EMV3($G(NM),$G(VL),$G(PRTX))
 ;
GET(A,NM)
 I $$EMV^W4PRM=4 Q $$GET^W4EMV4(A)
 Q $$GET^W4EMV3($G(A),$G(NM))
 ;
CLR(B) ;
 Q $$CLR^W4EMV3($G(B))
 ;
 ;
U2H(ST)
 S OU=$$CLRQ^W3SORD(ST)
 Q OU
 ;
DIR(STAM) ;
 Q $$EMVDIR^W4PRM
 ;
PATH(STAM) ;
 Q $$PATH^W4EMV3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TO
W4TO(PRM) ; [ 25.05.23 12:20 ] [ 
 K @$$^W4PARCAT D ^W4KORD(JB)
 D PUT^%W1PRM("DLVCSR",$S($G(PRM)="DLV":1,1:0))
 Q 1
 

W4TOT
W4TOT ; [ 05.08.26 15:34 ] [ 26.07.26 13:19 ] [ 20.07.26 17:08 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
100 K M S M("MZM")="F",M("CHK")="G"
 S M("VIZ")="V2",M("ISR")="V1",M("DNR")="V3",M("AEX")="V4"
 S M("JCB")="V5",M("ALPHA")="V6",M("KK")="V7",M("FI")="V9"
 S M("SMC")="VMYCH"
 S M("CHKO")="GO"
 S M("ASR")="H",M("HTK")="D",M("TL")="Z",M("HTL")="ZD"
 S M("HMZM")="FD",M("HCHK")="GD",M("HVIZ")="V2D",M("HISR")="V1D"
 S M("HDNR")="V3D"
 S M("HAEX")="V4D"
 S M("HJCB")="V5D"
 S M("HALPHA")="V6D"
 S M("HKK")="V7D"
 S M("HFI")="V9D"
 S M("HCHKO")="GDO",M("HCHKB")="GDB"
 S M("CHKM")="GB"
 S M("HNHS")="MIN",M("DMSHS")="DMSH"
 S M("HNHP")="MINPAR"
 S M("HNHT")="MINT"
 S M("HNHL")="HNHL"
 S M("HNHCIB")="CIBHN"
 S M("HNHS2")="MIN2"
 S M("MIN3")="MIN3"
 S M("BIT")="BIT"
 S M("TIP")="T"
 S M("TMZ")="TMZ"
 S M("MP")="MP"
 S M("TCA")="TCA"
 S M("TCHK")="TCHK"
 S M("TASR")="TASR"
 S M("SSOAD")="SD"
 S M("CAFUT")="CAFUT"
 S M("CAOUT")="CAOUT"
 S M("CAOUTQ")="CAOUT#"
 S M("HB")="HB"
 S M("HBMAM")="HBMAM"
 S M("HBZ")="HBZ"
 S M("TM")="TM"
 S M("HBZMAM")="HBZMAM"
 S M("MZQ")="F#"
 S M("CHQ")="GO#"
 S M("BNQ")="GB#"
 S M("ISQ")="V1#"
 S M("VZQ")="V2#"
 S M("DNQ")="V3#"
 S M("AEQ")="V4#"
 S M("JCQ")="V5#"
 S M("ALQ")="V6#"
 S M("KKQ")="V7#"
 S M("FIQ")="V9#"
 S M("TIQ")="T#"
 S M("HBQ")="HB#"
 S M("HBZQ")="HBZ#"
 S M("TMQ")="TM#"
 ;
 N N S N="" F  S N=$O(M(N)) Q:N=""  K @N S @N=0
 Q
 ;
 ;----------------------------------------------------------------
101 S GLBL=$S(MRK:$$^W4GL("TOT")_"(DAT,MRK)",1:$$^W4GL("TOT")_"(DAT)")
1011 N EMT,J
 ; ------------- TOT ------------------
 F J=1:1 S EMT=$P("MZM,CHK,CHKM,CHKO,VIZ,ISR,DNR,AEX,ALPHA,KK,MP,FI,ASR,TL,DMSHS,HNHS,HNHS2,HNHP,HNHT,HNHL,HNHCIB,MIN3,BIT,TIP,TMZ,TCA,TCHK,TASR,SSOAD,HB,HBMAM,HBZ,HBZMAM,TM,CAFUT,CAOUT",",",J) Q:EMT=""  D
 .I $$NOTIPALL^W4PRM,'$$^W4TIPCBU($G(DAT)),EMT="TIP" S @GLBL@("T",1)=0
 .S @EMT=$J($G(@EMT)+$G(@GLBL@(M(EMT),1)),2,2)
 .I EMT="SSOAD" S SSOAD=$J(SSOAD,0,0)
 .Q:EMT="SSOAD"!(EMT="CAFUT")!(EMT="CAOUT")
 .S @EMT@("S")=$J($G(@EMT@("S"))+$G(@GLBL@(M(EMT)_"S",1)),2,2)
 .S @EMT@("W")=$J($G(@EMT@("W"))+$G(@GLBL@(M(EMT)_"W",1)),2,2)
 .S @EMT@("L")=$J($G(@EMT@("L"))+$G(@GLBL@(M(EMT)_"L",1)),2,2)
 .S @EMT@("T")=$J($G(@EMT@("T"))+$G(@GLBL@(M(EMT)_"T",1)),2,2)
 ;
 ;--------------- QN -------------------
 F J=1:1 S EMT=$P("MZM,CHK,CHKM,CHKO,VIZ,ISR,DNR,AEX,ALPHA,KK,MP,FI,ASR,TL,CAFUT,CAOUT",",",J) Q:EMT=""  D
 .S @EMT@(1)=$J($G(@EMT@(1))+$G(@GLBL@(M(EMT)_"#",1)),2,2)
 .S @EMT@("S1")=$J($G(@EMT@("S1"))+$G(@GLBL@(M(EMT)_"S#",1)),2,2)
 .S @EMT@("W1")=$J($G(@EMT@("W1"))+$G(@GLBL@(M(EMT)_"W#",1)),2,2)
 .S @EMT@("L1")=$J($G(@EMT@("L1"))+$G(@GLBL@(M(EMT)_"L#",1)),2,2)
 .S @EMT@("T1")=$J($G(@EMT@("T1"))+$G(@GLBL@(M(EMT)_"T#",1)),2,2)
 ;
 F EMT="MZQ","CHQ","BNQ","ISQ","VZQ","DNQ","AEQ","JCQ","ALQ","KKQ","FIQ","TIQ","HBQ","HBZQ","TMQ" D
 .S @EMT=$G(@EMT)+$G(@GLBL@(M(EMT),1))
 ;
 I $$PAPJ^W4PRM S CAOUT=CAOUT-KK,CAOUTQ=CAOUTQ-KKQ
 ;
 I $$MATB^W4PRM D
 .N SUMNIS S SUMNIS=0
 .F J=2:1:3 D
 ..N A S A=$G(@GLBL@("MTB",J))
 ..S SUMNIS=$P($G(SUMMTB(J)),"!",2)+$P(A,"!",2)
 ..S SUMMTB(J)=($G(SUMMTB(J))+$P(A,"!"))_"!"_SUMNIS
 ..S SUMMTB=SUMMTB+SUMNIS
 ;
 ;---------------- HITKABEL --------------
 F J=1:1 S EMT=$P("HMZM,HCHK,HVIZ,HISR,HDNR,HAEX,HALPHA,HKK,HFI,HCHKB,HCHKO,HTL",",",J) Q:EMT=""  D
 .S @EMT=$J($G(@EMT)+$G(@GLBL@(M(EMT),1)),2,2)
 ;
 F J=1:1 S EMT=$P("HCHK,HVIZ,HISR,HDNR,HAEX,HALPHA,HKK,HFI,HCHKB,HCHKO,HTL",",",J) Q:EMT=""  D
 .N IND S IND=$G(M(EMT)) Q:IND=""
 .S @EMT@(1)=$J($G(@EMT@(1))+$G(@GLBL@(IND_"#",1)),2,2) ; ---- QN
 ;----------------------------------------
 N SHUMDAY S (SHUMDAY,SHUMMSD,SHUMMSL)=0
 ;
 F J=1:1 S EMT=$P("MZM,CHK,VIZ,ISR,DNR,AEX,ALPHA,MP",",",J) Q:EMT=""  D
 .N IND S IND=$G(M(EMT)) Q:IND=""
 .S SHUMDAY=SHUMDAY+$G(@GLBL@(IND,1))
 .S SHUMMSD=SHUMMSD+$G(@GLBL@(IND_"W",1))
 .S SHUMMSL=SHUMMSL+$G(@GLBL@(IND_"L",1))
 ;
 S SHUMDAY=SHUMDAY-$S('$$^W4TIPMIN($$DD(DAT)):0,1:$G(@GLBL@("T",1)))
 S SHUM=$G(SHUM)+SHUMDAY
 ;
 D
 .N DT S DT=$$^%L1DC(DAT,4)
 .S MAMD=$$MAMD^W4L(DT)
 .
 .I $$NOMAM^W4PRM D  Q
 ..N TOTPD,TOT
 ..D SUMV
 ..S TOTPD=$G(@GLBL@("F",1))+$G(@GLBL@("G",1))+$G(@GLBL@("V",1))
 ..S TOT=$G(@GLBL@("F",1))+$G(@GLBL@("G",1))+$G(@GLBL@("V",1))+$G(@GLBL@("H",1))
 ..N KFPD S KFPD=1 I TOT S KFPD=TOTPD/TOT
 ..N MAM ;;S MAM=$G(@GLBL@("MAM",1))
 ..N SMAM S SMAM=$G(@GLBL@("F","CMAM"))+$G(@GLBL@("G","CMAM"))+$G(@GLBL@("V","CMAM"))
 ..S SUMMAM=$G(SUMMAM)+SMAM
 ..;;S SUMNOMAM=$G(SUMNOMAM)+$G(@GLBL@("NOMAM",1))
 ..S MAMS=$G(MAMS)+(SMAM*MAMD/(100+MAMD))
 .
 .S MAMS=$G(MAMS)+(SHUMDAY*MAMD/(100+MAMD))
 ;
 I $G(W4LKH) S MAMS=MAMS+HBMAM-HBZMAM
 S LMAM=SHUM-MAMS
 ;
 S BITR=BITR+$G(@GLBL@("BIT",1,"R"))
 S BITD=BITD+$G(@GLBL@("BIT",1,"D"))
 S BITT=BITT+$G(@GLBL@("BIT",1,"T"))
 S SOADR=SOADR+$G(@GLBL@("SD",1,"R"))
 S SOADW=SOADW+$G(@GLBL@("SD",1,"W"))
 S SOADD=SOADD+$G(@GLBL@("SD",1,"D"))
 S SOADT=SOADT+$G(@GLBL@("SD",1,"T"))
 Q
 ;
 ;
102 ;--------------------------  SAH  ------------------------------------
 N DAT
 I '$D(MISHL) S MISHL=$G(@$$^W4PRM@("MSL"))
 S DAT=$$^%L1DC($G(DAT2),2)
 D
 .N I F I="MZM","VIZ","ISR","DNR","AEX","ALPHA","KK","FI","SHUM","SCA","TIP","HVIZ","HISR","HDNR","HAEX","HALPHA","HKK","HFI","HMZM","HCHKB","HCHKB","HSCA","TL","HTL","MP","ASR","TM" D
 ..S @I=$G(@I),@I@(1)=$G(@I@(1))
 ;
 S SCA=$J(VIZ+ISR+DNR+AEX+ALPHA+$S($$PAPJ^W4PRM:0,1:KK)+FI,2,2)
 S SCA(1)=$J($G(VIZ(1))+$G(ISR(1))+$G(DNR(1))+$G(AEX(1))+$G(JCB(1))+$G(ALPHA(1))+$S($$PAPJ^W4PRM:0,1:$G(KK(1)))+$G(FI(1)),2,2) ; -- QN
 ;
 S SHUM=$J(MZM+$G(CHKM)+CHKO+$G(MP)+SCA-$S('$$^W4TIPMIN($$DD(DAT)):0,1:TIP),2,2)
 I $$PAPJ^W4PRM S SHUM=SHUM+KK ; --- 11.05.26
 I '$$NOMAM^W4PRM S SUMMAM=SHUM ; -- 22/10/23
 S SUMNOMAM=$J(SHUM-$G(SUMMAM),2,2) ; --- 27.01.21 CMNT
 ;
 S HSCA=$J(HVIZ+HISR+HDNR+HAEX+HALPHA+$S($$PAPJ^W4PRM:0,1:HKK)+HFI,2,2)
 S HSCA(1)=$J($G(HVIZ(1))+$G(HISR(1))+$G(HDNR(1))+$G(HAEX(1))+$G(HALPHA(1))+$S($$PAPJ^W4PRM:0,1:$G(HKK(1)))+$G(HFI(1)),2,2)
 S HSHUM=$J(HMZM+HCHKB+HCHKO+HSCA,2,2)
 ;
 S VIZS=$J(VIZ+HVIZ,2,2)
 S ISRS=$J(ISR+HISR,2,2)
 S MZMNT=MZM
 I $$^W4TIPMIN($$DD(DAT)) S MZMNT=MZM-$G(TIP)
 S MZMS=$J(MZMNT+HMZM,2,2)
 S TLS=$J(TL+HTL,2,2)
 S TIPS=$J(TIP,2,2)
 S CAS=$J(SCA+HSCA,2,2)
 
 S DNRS=$J(DNR+HDNR,2,2)
 S AEXS=$J(AEX+HAEX,2,2)
 S ALPHAS=$J(ALPHA+HALPHA,2,2)
 S KKS=$J(KK+HKK,2,2)
 S MPS=$J($G(MP),2,2)
 S FIS=$J(FI+HFI,2,2)
 S CHKS=$J(CHKO+HCHKO,2,2)
 S CHKMS=0
 ;;S ^AA("W4TOT","SHUM")=SHUM
 ;;S ^AA("W4TOT","HSHUM")=HSHUM
 ;;S ^AA("W4TOT","HCHKB")=HCHKB
 S SHUMS=$J(SHUM+HSHUM-HCHKB-$G(CHKM),2,2)
 S ASRS=ASR+$G(TM)
 I $$^W4LKH S ASRS=ASRS+$G(HB)-$G(HBZ)
 S ASRS=$J(ASRS,2,2)
 ;;I '$D(P1PCTOT) S HNHS=$J(HNHS-$G(HNHT)-$G(HNHCIB)-$G(HNHL),2,2) ; -- -HNHS2
 S HNHS=$J($G(HNHS)-$G(HNHT)-$G(HNHCIB)-$G(HNHL),2,2) ; -- -HNHS2
 S HNHS=HNHS+$G(HNHS2)
 S SMHIRA=$J(SHUM+ASRS,2,2)
 S SUMP=$J(SMHIRA+$G(HNHS)+$G(HNHCIB)+$G(HNHT)+$G(HNHL)-$G(DMSHS)-$S($$TIPPD:$G(TIP),1:0),2,2)
 S SUMB=$J(SUMP+$G(BIT),2,2)
 ;
 ;;I $$TIPNO S (TIP,TIPS,TIP1,TIPPS1,TIQ)=""
 S SUMB=SUMB+$G(DMSHS) I '$$TIPPD,'$$TIPNO S SUMB=SUMB+$G(TIP)
 ;
 S MSDMSL=""
 I MISHL D  S MSDMSL=$$SPR^%L1FRM(MSDMSL)
 .I SUMDLP S MSDMSL=MSDMSL_$J(SUMDLP,8,2)_" : ""zgwl"" ehp oeict "
 .S MSDMSL=MSDMSL_$J(SUMMSL,8,2)_" : migelyn ehp oeict "
 .I $$MSD^W4PRM!$$TAW^W4PRM S MSDMSL=MSDMSL_$J(SUMMSD+$G(SUMTAW),8,2)_" : dcrqn ehp oeict "
 ;
 S MSDAMSL="" I MISHL D  S MSDAMSL=$$SPR^%L1FRM(MSDAMSL)
 .I SUMADLP S MSDAMSL=MSDAMSL_$J(SUMADLP,8,2)_" : ""zgwl"" ly dtwd "
 .S MSDAMSL=MSDAMSL_$J(SUMAMSL,8,2)_" :   migelyn ly dtwd "
 .I $$MSD^W4PRM!$$TAW^W4PRM S MSDAMSL=MSDAMSL_$J(SUMAMSD+$G(SUMATAW),8,2)_" :   dcrqn ly dtwd "
 ;
 I $$LL^W4PRM D
 .S LLT=$J(LLSUMT,8,2)_" : jq "_$J(LLQNT,5)_" : ""zgwl"" zepnfd 'qn"
 .S LLS=$J(LLSUMS,8,2)_" : jq "_$J(LLQNS,5)_" : ""zayl"" zepnfd 'qn"
 .S LLM=$J(LLSUMM,8,2)_" : jq "_$J(LLQNM,5)_" : ""ybnd lr"" zepnfd 'qn"
 ;
 S SMSL="" I MISHL S SMSL=$G(SMSH)_"  migelyn 'qn"
 ;
 I $$MATB^W4PRM D
 .;;M ^AA("W4TOT","SUMMTB")=SUMMTB
 .N N,I,SHAAR
 .S N="",I=1
 .S SMTB=MZMS
 .S SHAAR2="" I $G(SUMMTB(2)) D
 ..S SHAAR2=$P(SUMMTB(2),"!",2)/SUMMTB(2)
 ..S SUMMTB2=SUMMTB(2),SUMMTS2=$J(SUMMTB2*SHAAR2,1,1)
 .S SHAAR3="" I $G(SUMMTB(3)) D
 ..S SHAAR3=$P(SUMMTB(3),"!",2)/SUMMTB(3)
 ..S SUMMTB3=SUMMTB(3),SUMMTS3=$J(SUMMTB3*SHAAR3,1,1)
 .S SUMMTS1=MZMS-SUMMTB
 ;
 I '$D(DT1) S DT1=$$^%L1DC(DAT1,3)
 I '$D(DT2) S DT2=$$^%L1DC(DAT2,3)
 ;;D SCOMP(DT1,DT2) ; --> SCIB,STENB,SCOUP
 K SCIB,SCIBM,STENB,SCOUP
 S (SCIB,SCIBM,STENB,SCOUP)=0
 F DT=DT1:1:DT2 D
 .N N S N="" F  S N=$O(@$$^W4REF@(N)) Q:N=""  I $G(^(N))[",^" Q
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D CMPN(HZ)
 Q
 ;
 ;
TIPPS(DUMP) I $$TIPNO Q ""
 ;
 N MIN S MIN=$S($$TIPMIN:"(-) ",1:"")
 I $L($G(@$$^W4PRM@("TIPPS"))) Q MIN_$G(@$$^W4PRM@("TIPPS"))
 Q MIN_"mitih"
 ;
TIPPD(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$^W4TIPPD(DD)
 ;
TIPNT(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$TIPNT^W4TIPPD(DD)
 ;
TIPNO(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$TIPNO^W4TIPPD(DD)
 ;
TIPMIN(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$TIPMIN^W4TIPPD(DD)
 ;
DD(DAT) ;
 I $G(DAT)="" Q ""
 Q $$^%L1DC(DAT,4)
 ;
 ;
SCOMP(DT1,DT2,SCOMPOPN) ;
 N N,HZ,N,A,ASR,LKHN,PRWEB,LKHR
 K SMKR,MKRQN,SMKRT,MKRTQN,SHAA
 K SDEL,QDEL
 S (SDEL,QDEL)=0
 ;
 K SCIB,SCIBR,SCIBM,STENB,SCOUP,SPAIDIT,SPAIDCA,SWOLT,SWOLTCA,SHAT,SHATCA,SCAOUT,SCAOUTQ,SMAM,SATAR,SATARQ,SBIT,SBITDM,SDISC,SZIC,STIP
 K SASR,SREST,SSOAD,SDLV,SWEB,SWEBDLV,STAW,SWEBTAW,SMIN,SDMS,SZIC,SOTH
 K SBITQ,SBITPQ,SZICQ,SDISCQ,SHNHPQ,RESTQ,ORDQ,DLVQ,DLVDLYQ,DLVQMIN,WEBQ,WEBDLVQ,WEBTAWQ,TAWQ,SOTHQ,SHNHPQ
 K QCIB,QCIBR,QCIBM,QTENB,QCOUP,QPAIDIT,QPAIDCA,QWOLT,QWOLTCA,QHAT,QHATCA,QCAOUT,SCAOUTQ,QBIT,QDISC,QZIC
 K QASR,QWEB,QWEBDLV,QTAW,QWEBTAW,QMIN,QDMS,QHNH
 ;
 S (SCIB,SCIBR,SCIBM,STENB,SCOUP,SPAIDIT,SPAIDCA,SWOLT,SWOLTCA,SHAT,SHATCA,SCAOUT,SMAM,SATAR,SBIT,SBITP,SBITDM,SDISC,SZIC,SHNH,SHNHP,SOTH)=0
 S (QCIB,QCIBR,QCIBM,QTENB,QCOUP,QPAIDIT,QPAIDCA,QWOLT,QWOLTCA,QHAT,QHATCA,QCAOUT,SCAOUTQ,SMAM,SATAR,SATARQ,QBIT,QDISC,QHNH,QZIC)=0
 S (SASR,SREST,SSOAD,SDLV,SWEB,SWEBDLV,STAW,SWEBTAW,SMIN,SDMS)=0
 S (SBITQ,SBITPQ,SZICQ,SDISCQ,SHNHPQ,RESTQ,ORDQ,DLVQ,DLVDLYQ,DLVQMIN,WEBQ,WEBDLVQ,WEBTAWQ,TAWQ,SOTHQ)=0
 S (QASR,QWEB,QWEBDLV,QTAW,QWEBTAW,QMIN,QDMS)=0
 ;
 I '$D(DT1)!'$D(DT2) Q
 ;
 S STIP=0
 S (STIMDLV,SHTIMDLV)=0
 S (STIMSUPPL,DLVQSUPPL)=0
 S (DLVQ30,DLVQ40,DLVQS)=0
 S (STIMPREP,SHPREP)=0
 S DLVFCTQ=0
 ;
 S SBITDM=0
 ;
 F DT=DT1:1:DT2 D
 .N MAXHZ 
 .N N S N="" F  S N=$O(@$$^W4REF@(N)) Q:N=""  I $G(^(N))[",^" Q
 .S MAXHZ=N
 .;;S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  I $$HZM^W4MSD(HZ) D SCOMP1(DT,HZ)
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D SCOMP1(DT,HZ)
 ;
 I $$PAPJ^W4PRM D
 .S SBITP=-SDEL
 .S SBITPQ=QDEL 
 ;
 Q
 ;
 ;
PAIDIT(NMB) ;
 Q $$PAIDITN^W4HZPCHD(NMB)
 ;
WOLT(HZ) ;
 Q $$WOLT^W4HZPCHD(HZ)
 ;
HAAT(HZ) ;
 Q $$HAAT^W4HZMST(HZ)
 ;
ATAR(HZM) ;
 I $$SF^W4PRM,$$MKRDLV^W4HZMST(HZM)=21 Q 1
 Q 0 
 ;
QN(TS) ; 
 I $G(HZ),$$DELYOM^W4DEL(HZ),'TS Q 0
 N QN S QN=0 I TS<0,$G(HZ),$$I^W4DEL(HZ) S QN=-1
 I TS<0 Q QN
 Q 1
 ;
 ;
TIMDLV(HZ) ; 
 N (JB,HZ)
 I '$D(@$$^W4ORD@(HZ,"TM")) Q 0
 S TIMCB=$P($$DATCB^W4HZMST(HZ),"  ",2)
 S MIN1=0 ;;TIMCB*60+$P(TIMCB,":",2)  
 ;
 D
 .I $G(@$$^W4ORD@(HZ,"FIRSTPC")) D  Q
 ..N T1 S T1=$P($G(^("FIRSTPC")),",",2)
 ..S MIN1=T1\60
 .
 .I 'MIN1,$G(@$$^W4ORD@(HZ,"LASTPC")) D  Q
 ..N T1 S T1=$P($G(^("LASTPC")),",",2)
 ..S MIN1=T1\60
 .
 .I 'MIN1,$G(@$$^W4ORD@(HZ,"PCAFTPAY")) D  Q
 ..N T1 S T1=$P($G(^("PCAFTPAY")),",",2)
 ..S MIN1=T1\60
 ;
 S TIMSUPPL=$P($G(@$$^W4ORD@(HZ,"SUPPLIED")),",",2)\60
 S RZNS=0
 I TIMSUPPL S RZNS=TIMSUPPL-MIN1 D
 .I RZNS<0 S RZNS=RZNS+(24*60) 
 ;
 S TIMSND=$P($G(@$$^W4ORD@(HZ,"TM")),"\",2)
 S MIN2=TIMSND*60+$P(TIMSND,":",2)  
 S RZN=MIN2-MIN1
 I RZN<0 S RZN=RZN+(24*60) 
 Q RZN_"\"_RZNS
 ;
 ;
CMPN(HZ) ; --> SCIBR,SCIBM,SCIB,STENB,SCOUP
 N A,ASR,N,LKHN,LKHR,NMB
 S NMB=$$NMB^W4HZMST(HZ)
 S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 .S A=$G(^(N)),LKHN=$P(A,"*"),LKHR=$P(A,"*",6)
 .S ASR=$P(A,"*",4)
 .
 .I $$^W4CIBLKH,LKHN=$$^W4CIBLKH!(LKHR=$$^W4CIBLKH) D  Q
 ..D
 ...I $$SF^W4PRM,$$PAIDIT(NMB)!$$^W4MSD(NMB) S SCIBR=SCIBR+ASR Q
 ...S SCIBM=SCIBM+ASR
 ..S SCIB=SCIB+ASR,SCIB(HZ)=ASR
 .
 .I $$^W4TBLKH,LKHN=$$^W4TBLKH!($G(@$$^W4GL("P1EZL")@(LKHN))=$$^W4TBLKH) D  S STENB=STENB+ASR Q
 ..;;S ^AA("W4TOT","TENB",HZ)=$G(^AA("W4TOT","TENB",HZ))+ASR
 .
 .I $$LKH^W4COUPPH,LKHN=$$LKH^W4COUPPH!(LKHR=$$LKH^W4COUPPH) S SCOUP=SCOUP+ASR
 Q
 ;
 ;
SUMV ; 
 N SUM,SUM1 S SUM=0,SUM1=0
 L +@GLBL@("V"):1
 K @GLBL@("V")
 N J F J=1:1:9 D
 .I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 .S @GLBL@("V")=$G(@GLBL@("V"))+$G(@GLBL@("V"_J))
 .N N1 S N1="" F  S N1=$O(@GLBL@("V"_J,N1)) Q:N1=""  D
 ..S @GLBL@("V",N1)=$G(@GLBL@("V",N1))+$G(@GLBL@("V"_J,N1))
 ..N N2 S N2="" F  S N2=$O(@GLBL@("V"_J,N1,N2)) Q:N2=""  D
 ...S @GLBL@("V",N1,N2)=$G(@GLBL@("V",N1,N2))+$G(@GLBL@("V"_J,N1,N2))
 L -@GLBL@("V")
 Q 
 ;
 ; 
SCOMP1(DT,HZ) ; 
 N NMB S NMB=$$NMB^W4HZMST(HZ)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZ)
 N HNH S HNH=$$HNH^W4HZMST(HZ)
 I HNH S SHNH=SHNH+HNH,QNHN=QHNH+$S(HNH>0:1,HNH<0:-1,1:0)
 N TS S TS=TSHL+HNH
 I $$I^W4PIZUL(HZ) Q
 D CMPN(HZ)
 I $$^W4HZMH(HZ) Q
 ;;I '$$^W4CLOSE(HZ),'$G(SCOMPOPN) Q
 D SUMASR(HZ)
 I $G(MAXHZ),HZ>MAXHZ,'$$^W4CLOSE(HZ),'$G(SCOMPOPN) Q
 ;
 N PRMSL S PRMSL=+$$HZM^W4MSL(HZ)
 N PRTAW S PRTAW=$$TAKEAWAY^W4HZMST(HZ)
 ;
 I PRMSL D
 .N QN S QN=$$QN(TS)
 .N MAKOR S MAKOR=$$MKRDLV^W4HZMST(HZ) S:MAKOR="" MAKOR=99
 .S SMKR(MAKOR)=$G(SMKR(MAKOR))+TSHL
 .S MKRQN(MAKOR)=$G(MKRQN(MAKOR))+QN
 .
 .N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  D
 ..N A S A=$G(^(N)) S CARD=$P(A,"*",2) Q:CARD?3N.E
 ..N SUM S SUM=$P(A,"*",7)
 ..S SMKR(MAKOR,"CAJ")=$G(SMKR(MAKOR,"CAJ"))+SUM
 ..S MKRQN(MAKOR,"CAJ")=$G(MKRQN(MAKOR,"CAJ"))+$$QN(SUM)
 .
 .I PRTAW D
 ..S SMKRT(MAKOR)=$G(SMKRT(MAKOR))+TSHL
 ..S MKRTQN(MAKOR)=$G(MKRTQN(MAKOR))+QN
 ;
 I $$PAPJ^W4PRM,NMB=$$MPLK^W4MPCHZ!(NMB=$$COUPLK^W4MPCHZ) Q
 I $$PAPJ^W4PRM,$D(@$$^W4ORD@(HZ,"CB"))<10 Q
 ;
 S STIP=STIP+$$STIP^W4HZMST(HZ)
 ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .I $P(A,"\",7)<0 D
 ..Q:$$AVAR^W4HZMST(HZ,N)
 ..N CD S CD=$P(A,"\")
 ..I $E(CD)="-",CD["%",$P(A,"\",7)>0 S SDEL=SDEL-$P(A,"\",7) Q
 ..I $E(CD)'="-",CD'["%" D
 ...S SDEL=SDEL-$P(A,"\",7)
 ...S QDEL=QDEL-$P(A,"\",5)
 ;
 S PRZIC=0
 N DM S DM=$$DMSH^W4HZMST(HZ)
 D
 .I TSHL'<0!(TSHL<0&$$I^W4DEL(HZ)) D  S:DM<0 SBIT=SBIT-DM,SBITDM=SBITDM-DM Q
 ..N SB S SB=0,SBHZ=0
 ..N N S N="" F  S N=$O(@$$^W4ORD@(HZ,N)) Q:N=""  I N D
 ...N A S A=$G(^(N)) I $P(A,"\",7)<0 D
 ....Q:$$AVAR^W4HZMST(HZ,N)
 ....N CD,HNHP,HRP S CD=$P(A,"\"),HNHP=-$P(A,"\",7),HRP=$P(A,"\",8) 
 ....I $E(CD)="-",CD["%" D  Q
 .....I +CD=-100 S SOTH=SOTH+HNHP,SOTHQ=SOTHQ+1 Q 
 .....S SHNHP=SHNHP+HNHP,SHNHPQ=SHNHPQ+1
 ....S SB=-$P(A,"\",7),SBITQ=SBITQ-$P(A,"\",5)
 ....S SBIT=SBIT+SB
 ....S SBHZ=SBHZ+SB
 ..;;I SBHZ>0 W "HZ="_HZ_" SBHZ="_SBHZ_" SBIT="_SBIT,! ; ***
 .
 .I $$TSHL^W4HZMST(HZ)<0,'$$I^W4DEL(HZ) D
 ..S PRZIC=1
 ..S SZIC=SZIC-TSHL
 ..S SZICQ=SZICQ+1
 ..S QZIC=QZIC+1
 ;
 I $$DELYOM^W4DEL(HZ) Q
 ;
 N QN S QN=$$QN(TS)
 
 N SHAA,SHAA0 S SHAA0=$$T^%L1TIME($$MKRTIME^W4HZMST(HZ)),SHAA=$S(SHAA0="":-1,1:+SHAA0) 
 I $$HZM^W4MSL(HZ),'$$TAKEAWAY^W4HZMST(HZ) D
 .N TM S TM=$G(@$$^W4ORD@(HZ,"TM"))
 .S SHAA0=$P(TM,"\",2),SHAA=$S(SHAA0="":-1,1:+SHAA0)
 
 I $$PAIDIT(NMB) D
 .S SPAIDIT=SPAIDIT+TSHL
 .N VL S VL=$$SCA^W4HZMST(HZ)
 .I VL D
 ..S SPAIDCA=SPAIDCA+VL
 ..S QPAIDCA=QPAIDCA+$$QN(VL)
 
 I $$WOLT(HZ) D
 .S SWOLT=SWOLT+TSHL
 .N VL S VL=$$SCA^W4HZMST(HZ)
 .I VL D
 ..S SWOLTCA=SWOLTCA+VL
 ..S QWOLTCA=QWOLTCA+$$QN(VL)
 
 I $$HAAT(HZ) D
 .S SHAT=SHAT+TSHL
 .N VL S VL=$$SCA^W4HZMST(HZ)
 .I VL D
 ..S SHATCA=SHATCA+VL
 ..S QHATCA=QHATCA+$$QN(VL)
 
 I '$$PAIDIT(NMB) D  ; --- ???
 .S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  D
 ..N A S A=$G(^(N)) S CARD=$P(A,"*",2) Q:CARD?3N.E
 ..I $P(A,"*")[("V"_$$GFC^W4VT),$$PAPJ^W4PRM Q
 ..N SUM S SUM=$P(A,"*",7)
 ..S SCAOUT=SCAOUT+SUM
 ..S SCAOUTQ=SCAOUTQ+$$QN(SUM)
 
 N DMS S DMS=$$DMSH^W4HZMST(HZ)
 N HZMLAK S HZMLAK=$$HZMLAK^W4HZMST(HZ)
 
 N PRWEB S PRWEB=($E(HZMLAK)="W")
 N PRCNT S PRCNT=1 I $P(@$$^W4ORD@(HZ),"\",80) S PRCNT=0
 I $$PAPJ^W4PRM,NMB=$$COUPLK^W4MPCHZ!(NMB=$$MPLK^W4MPCHZ) S PRCNT=0
 I 'PRCNT S DLVFCTQ=DLVFCTQ+1 Q
 S SDISC=SDISC+$$HNH^W4HZMST(HZ)
 I $$HNH^W4HZMST(HZ) S SDISCQ=SDISCQ+1
 
 I PRMSL,'PRTAW,PRCNT D
 .N TIMDLV S TIMDLV=$$TIMDLV(HZ)
 .N TIMSUPPL S TIMSUPPL=$P(TIMDLV,"\",2),TIMDLV=+TIMDLV
 .N PRMTIMDLV S PRMTIMDLV=$G(@$$^W4PRM@("TIMEHZ"))
 .I PRMTIMDLV,TIMDLV>PRMTIMDLV S DLVDLYQ=DLVDLYQ+1
 .N MAXTIM S MAXTIM=$G(@$$^W4PRM@("MAXTIM"))
 .I $$PSL^W4HZMST(HZ)<1 Q
 .I $$IR^W4HZMST(HZ)="TAKEAWAY" Q
 .I $$DELYOM^W4DEL(HZ) Q
 .I 'MAXTIM!(TIMDLV<MAXTIM) S SMIN=SMIN+TIMDLV,DLVQMIN=DLVQMIN+1
 .
 .I TIMSUPPL S DLVQS=DLVQS+1
 .I TIMSUPPL,'MAXTIM!(TIMSUPPL<(MAXTIM+20)) D
 ..S STIMSUPPL=STIMSUPPL+TIMSUPPL
 ..S DLVQSUPPL=DLVQSUPPL+1
 ..I TIMSUPPL<31 S DLVQ30=DLVQ30+1
 ..I TIMSUPPL>40 S DLVQ40=DLVQ40+1
 
 I PRCNT S ORDQ=ORDQ+QN
 
 I PRWEB,PRCNT D
 .S SWEB=SWEB+TSHL,WEBQ=WEBQ+QN
 .I 'PRTAW S SWEBDLV=SWEBDLV+TSHL,WEBDLVQ=WEBDLVQ+QN
 
 I PRTAW,PRCNT D
 .S STAW=STAW+TSHL,TAWQ=TAWQ+QN
 .S STAW(SHAA)=$G(STAW(SHAA))+TSHL,TAWQ(SHAA)=$G(TAWQ(SHAA))+QN
 .I PRWEB S SWEBTAW=SWEBTAW+TSHL,WEBTAWQ=WEBTAWQ+QN
 
 I PRMSL,PRCNT D
 .S SDLV=SDLV+TSHL,DLVQ=DLVQ+QN,SDMS=SDMS+DMS S ^DLVQ(HZ)=QN,^DLVS(HZ)=TSHL
 .I 'PRTAW D
 ..S SDLV(SHAA)=$G(SDLV(SHAA))+TSHL
 ..S DLVQ(SHAA)=$G(DLVQ(SHAA))+QN
 ;
 I 'PRMSL,PRCNT D
 .S SREST=SREST+TSHL,RESTQ=RESTQ+$S($G(PRZIC):0,1:QN)
 .S SSOAD=SSOAD+$$SOAD^W4HZMST(HZ)
 .S SREST(SHAA)=$G(SREST(SHAA))+TSHL,RESTQ(SHAA)=$G(RESTQ(SHAA))+QN
 
 S MAMHZ=$$MAMD^W4L(DT)
 S SMAM=SMAM+$J(TSHL*MAMHZ/(100+MAMHZ),3,3)
 
 I $$ATAR(HZ),PRCNT D
 .S SATAR=SATAR+TSHL
 .S SATARQ=SATARQ+QN
 Q
 ;
SUMASR(HZ) ;
 N N S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","ASR",N)) Q:N=""  D
 .N A,LK S A=$G(^(N)) S LK=$P(A,"*",1) Q:$L(LK)<4 
 .N SUM S SUM=$P(A,"*",4) 
 .N LKR S LKR=$P(A,"*",6) I $L(LKR)<4 S LKR=LK 
 .S SASR(LKR,LK)=$G(SASR(LKR,LK))+SUM ;; 
 .S SASR(LKR,LK,"Q")=$G(SASR(LKR,LK,"Q"))+1 ;$$QN(SUM) 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TOT0
W4TOT ; [ 15.01.13 02:58 ] [ 18.09.12 21:36 ] [ 11.09.12 11:15 ]
100 K M S M("MZM")="F",M("CHK")="G"
 S M("VIZ")="V2",M("ISR")="V1",M("DNR")="V3",M("AEX")="V4"
 S M("JCB")="V5",M("ALPHA")="V6"
 S M("CHKO")="GO",M("CHKB")="GB"
 S M("ASR")="H",M("HTK")="D",M("TL")="Z",M("HTL")="ZD"
 S M("HMZM")="FD",M("HCHK")="GD",M("HVIZ")="V2D",M("HISR")="V1D"
 S M("HDNR")="V3D"
 S M("HAEX")="V4D"
 S M("HJCB")="V5D"
 S M("HALPHA")="V6D"
 S M("HCHKM")="GDM",M("HCHKO")="GDO",M("HCHKB")="GDB"
 S M("HNHS")="MIN",M("DMSHS")="DMSH"
 S M("HNHT")="MINT"
 S M("HNHL")="HNHL"
 S M("HNHCIB")="CIBHN"
 S M("HNHS2")="MIN2"
 S M("MIN3")="MIN3"
 S M("BIT")="BIT"
 S M("TIP")="T"
 S M("TMZ")="TMZ"
 S M("MP")="MP"
 S M("TCA")="TCA"
 S M("TCHK")="TCHK"
 S M("TASR")="TASR"
 S M("SSOAD")="SD"
 S M("HB")="HB"
 S M("HBMAM")="HBMAM"
 S M("HBZ")="HBZ"
 S M("TM")="TM"
 S M("HBZMAM")="HBZMAM"
 S M("MZQ")="F#"
 S M("CHQ")="GO#"
 S M("BNQ")="GM#"
 S M("ISQ")="V1#"
 S M("VZQ")="V2#"
 S M("DNQ")="V3#"
 S M("AEQ")="V4#"
 S M("JCQ")="V5#"
 S M("ALQ")="V6#"
 S M("TIQ")="T#"
 S M("HBQ")="HB#"
 S M("HBZQ")="HBZ#"
 S M("TMQ")="TM#"
 ;
 N N S N="" F  S N=$O(M(N)) Q:N=""  K @N S @N=0
 Q
 ;
 ;----------------------------------------------------------------
101 S GLBL=$S(MRK:$$^W4GL("TOT")_"(DAT,MRK)",1:$$^W4GL("TOT")_"(DAT)")
1011 N EMT,J
 ; ------------- TOT ------------------
 F J=1:1 S EMT=$P("MZM,CHK,CHKB,CHKO,VIZ,ISR,DNR,AEX,JCB,ALPHA,MP,ASR,TL,DMSHS,HNHS,HNHS2,HNHT,HNHL,HNHCIB,MIN3,BIT,TIP,TMZ,TCA,TCHK,TASR,SSOAD,HB,HBMAM,HBZ,HBZMAM,TM",",",J) Q:EMT=""  D
 .S @EMT=$J($G(@EMT)+$G(@GLBL@(M(EMT),1)),2,2)
 .Q:EMT="SSOAD"
 .S @EMT@("S")=$J($G(@EMT@("S"))+$G(@GLBL@(M(EMT)_"S",1)),2,2)
 .S @EMT@("W")=$J($G(@EMT@("W"))+$G(@GLBL@(M(EMT)_"W",1)),2,2)
 .S @EMT@("L")=$J($G(@EMT@("L"))+$G(@GLBL@(M(EMT)_"L",1)),2,2)
 ;
 ;--------------- QN -------------------
 F J=1:1 S EMT=$P("CHK,CHKB,CHKO,VIZ,ISR,DNR,AEX,JCB,ALPHA,ASR,TL",",",J) Q:EMT=""  D
 .S @EMT@(1)=$J($G(@EMT@(1))+$G(@GLBL@(M(EMT)_"#",1)),2,2)
 .S @EMT@("S1")=$J($G(@EMT@("S1"))+$G(@GLBL@(M(EMT)_"S1",1)),2,2)
 .S @EMT@("W1")=$J($G(@EMT@("W1"))+$G(@GLBL@(M(EMT)_"W1",1)),2,2)
 .S @EMT@("L1")=$J($G(@EMT@("L1"))+$G(@GLBL@(M(EMT)_"L1",1)),2,2)
 ;
 F EMT="MZQ","CHQ","BNQ","ISQ","VZQ","DNQ","AEQ","JCQ","ALQ","TIQ","HBQ","HBZQ","TMQ" D
 .S @EMT=$G(@EMT)+$G(@GLBL@(M(EMT),1))
 ;
 ;---------------- HITKABEL --------------
 F J=1:1 S EMT=$P("HMZM,HCHK,HVIZ,HISR,HDNR,HAEX,HJCB,HALPHA,HCHKB,HCHKO,HTL",",",J) Q:EMT=""  D
 .S @EMT=$J($G(@EMT)+$G(@GLBL@(M(EMT),1)),2,2)
 ;
 F J=1:1 S EMT=$P("HCHK,HVIZ,HISR,HDNR,HAEX,HJCB,HALPHA,HCHKB,HCHKO,HTL,HCHKB",",",J) Q:EMT=""  D
 .S @EMT@(1)=$J($G(@EMT@(1))+$G(@GLBL@(M(EMT)_"#",1)),2,2) ; ---- QN
 ;----------------------------------------
 N SHUMDAY S SHUMDAY=0
 ;
 F J=1:1 S EMT=$P("MZM,CHK,VIZ,ISR,DNR,AEX,ALPHA,MP",",",J) Q:EMT=""  D
 .S SHUMDAY=SHUMDAY+$G(@GLBL@(M(EMT),1))
 ;
 S SHUMDAY=SHUMDAY-$S('$$^W4TIPMIN:0,1:$G(@GLBL@("T",1)))
 S MAMD=$$MAMD^W4L($$^%L1DC(DAT,4))
 S MAMS=$G(MAMS)+(SHUMDAY*MAMD/(100+MAMD))
 ;;W MAMS,! H 1
 ;
 I $G(W4LKH) S MAMS=MAMS+HBMAM-HBZMAM
 ;
 ;S CHKO=$G(CHKO)+$G(CHKM) S CHKM=0
 ;S HCHKO=$G(HCHKO)+$G(HCHKM) S HCHKM=0
 Q
 ;
102 ;--------------------------  SAH  ------------------------------------
 S SCA=$J(VIZ+ISR+DNR+AEX+JCB+ALPHA,2,2)
 S SCA(1)=$J($G(VIZ(1))+$G(ISR(1))+$G(DNR(1))+$G(AEX(1))+$G(JCB(1))+$G(ALPHA(1)),2,2) ; -- QN
 ;
 S SHUM=$J(MZM+$G(CHKB)+CHKO+$G(MP)+SCA-$S('$$^W4TIPMIN:0,1:TIP),2,2)
 ;
 S HSCA=$J(HVIZ+HISR+HDNR+HAEX+HJCB+HALPHA,2,2)
 S HSCA(1)=$J(HVIZ(1)+HISR(1)+HDNR(1)+HAEX(1)+HJCB(1)+HALPHA(1),2,2)
 S HSHUM=$J(HMZM+HCHKB+HCHKO+HSCA,2,2)
 ;
 S VIZS=$J(VIZ+HVIZ,2,2)
 S ISRS=$J(ISR+HISR,2,2)
 S MZMS=$J(MZM+HMZM,2,2)
 S TLS=$J(TL+HTL,2,2)
 S TIPS=$J(TIP,2,2)
 S CAS=$J(SCA+HSCA,2,2)
 S DNRS=$J(DNR+HDNR,2,2)
 S AEXS=$J(AEX+HAEX,2,2)
 S JCBS=$J(JCB+HJCB,2,2)
 S ALPHAS=$J(ALPHA+HALPHA,2,2)
 S MPS=$J($G(MP),2,2)
 S CHKS=$J(CHKO+HCHKO,2,2)
 S CHKBS=$J($G(CHKB)+HCHKB,2,2)
 S SHUMS=$J(SHUM+HSHUM,2,2)
 S ASRS=ASR+$G(TM)
 I $$^W4LKH S ASRS=ASRS+$G(HB)-$G(HBZ)
 S ASRS=$J(ASRS,2,2)
 I '$D(P1PCTOT) S HNHS=$J(HNHS-$G(HNHT)-$G(HNHCIB)-$G(HNHL),2,2) ; -- -HNHS2
 S SMHIRA=$J(SHUM+ASRS,2,2)
 S SUMP=$J(SMHIRA+$G(HNHS)+$G(HNHCIB)+$G(HNHT)+$G(HNHL)+$G(MIN3)-$G(DMSHS)-$S($$TIPPD:$G(TIP),1:0),2,2)
 S SUMB=$J(SUMP+$G(BIT),2,2)
 ;;I $$TIPNO S (TIP,TIPS,TIP1,TIPPS1,TIQ)=""
 I $G(@$$^W4PRM@("BRTDM")) S SUMB=SUMB+$G(DMSHS)+$G(TIP)
 ;;I $$TIPPD D
 .S TIPPS1=$$TIPPS("") S:TIP TIP1=TIP S (TIP,TIPS)="",TIPPS="",TIQ=""
 ;
 S MSDMSL=""
 I $G(@$$^W4PRM@("MSD"))!$G(@$$^W4PRM@("MTAW")),MISHL D  S MSDMSL=$$SPR^%L1FRM(MSDMSL)
 .I SUMDLP S MSDMSL=MSDMSL_$J(SUMDLP,8,2)_" : wtlc ehp oeict "
 .S MSDMSL=MSDMSL_$J(SUMMSL,8,2)_" : migelyn ehp oeict "
 .S MSDMSL=MSDMSL_$J(SUMMSD,8,2)_" : dcrqn ehp oeict "
 S MSDAMSL="" I $G(@$$^W4PRM@("MSD"))!$G(@$$^W4PRM@("MTAW")),MISHL D  S MSDAMSL=$$SPR^%L1FRM(MSDAMSL)
 .I SUMADLP S MSDAMSL=MSDAMSL_$J(SUMADLP,8,2)_" :    wtlc ly dtwd "
 .S MSDAMSL=MSDAMSL_$J(SUMAMSL,8,2)_" :   migelyn ly dtwd "
 .S MSDAMSL=MSDAMSL_$J(SUMAMSD,8,2)_" :   dcrqn ly dtwd "
 ;
 S SMSL="" I MISHL S SMSL=SMSH_"  migelyn 'qn"
 ;
 I $G(@$$^W4PL@("MATB")) D
 .N N,I,SHAAR
 .S N="",I=0
 .S SMTB=MZMS
 .F  S N=$O(SUMMTB(N)) Q:N=""  D
 ..S I=I+1 S @("MTB0"_I)=$P($G(@$$^W4GL("P1SUGM")@(N)),"\",2)
 ..S SHAAR=1 I $G(SUMMTB(N)) S SHAAR=$P(SUMMTB(N),"!",2)/SUMMTB(N)
 ..S @("MTB"_I)=$J(SUMMTB(N)*SHAAR,8,2)_"="_$J(SHAAR,8,4)_"*"_$J(SUMMTB(N),6,1)
 .S I=I+1,@("MTB0"_I)="g""y",@("MTB"_I)=$J(MZMS-$G(SUMMTB),8,2)_$J("",16)
 Q
 ;
TIPPS(DUMP) I $$TIPNO Q ""
 N MIN S MIN=$S($$TIPMIN:"(-) ",1:"")
 I $L($G(@$$^W4PRM@("TIPPS"))) Q MIN_$G(@$$^W4PRM@("TIPPS"))
 Q MIN_"mitih"
 ;
TIPPD(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$^W4TIPPD(DD)
 ;
TIPNT(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$TIPNT^W4TIPPD(DD)
 ;
TIPNO(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$TIPNO^W4TIPPD(DD)
 ;
TIPMIN(STAM) ;
 N DD S DD=$$DD($G(DAT))
 Q $$TIPMIN^W4TIPPD(DD)
 ;
DD(DAT) ;
 I $G(DAT)="" Q ""
 Q $$^%L1DC(DAT,4)

W4TOTLKH
W4TOTLKH ; [ 15.01.11 20:31 ] [ 29.05.10 20:54 ] [ 23.05.10 18:13 ]
 K (JB,%ARG,%REM) D ^W4IN
 Q:$G(%ARG("SHOW"))=0
 S %SCRN="W4TOTLKH"
P1 ;
 S DAT1=%ARG("MEDAT"),DAT2=%ARG("ADDAT")
 S DAT01=$$^%L1DC(DAT1,3),DAT02=$$^%L1DC(DAT2,3)
 D 100^W4TOT
 S (CASHD,SMP)=0
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D ^W4LKHSUM(DAT)
 ;
 F DATT=DAT01:1:DAT02 D DOT S DAT=$$^%L1DC(DATT,2) D 101^W4TOT
 ;
 S CASHD=$$^W4SUMV(DAT01,DAT02)
 ;
 D 102^W4TOT
 ;
 D PC
 Q
 ;
PC ;
 K @$$^W4MAIN("TMPREP")
PC1 N %NM,%NOM
 S %NM="" F  S %NM=$O(@$$^W4SCR@(%SCRN,"P","NAME",%NM)) Q:%NM=""  D
 .S %NOM=$G(^(%NM))
 .N %VL,%PRM,%TYP
 .S %VL=$G(@%NM)
 .S %PRM=$G(@$$^W4SCR@(%SCRN,"P",%NOM,"CRD"))
 .S %TYP=$P(%PRM,",",3)
 .I %TYP="N" S %VL=$J(%VL,$P(%PRM,",",4),$P(%PRM,",",5))
 .S @$$^W4MAIN("TMPREP")@("P",%NOM)=%VL
 .S @$$^W4MAIN("TMPREP")@("P",%NOM,"TYP")=%TYP
 ;
 I $D(%L1SCPC) D
 .N %N S %N="" F  S %N=$O(%L1SCPC(%N)) Q:%N=""  D
 ..S @$$^W4MAIN("TMPREP")@("P",%N)=$G(%L1SCPC(%N))
 ;
PC2 K @$$^W4MAIN("TMPREP")@("GTR")
 I $D(@$$^W4REPSCR@(%SCRN,"GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=@$$^W4REPSCR@(%SCRN,"GTR")
 K @$$^W4MAIN("TMPREP")@("GTD")
 I $D(@$$^W4REPSCR@(%SCRN,"GTD"))>9 D
 .M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@(%SCRN,"GTD")
 ;
 D ^%W1FREP(%SCRN)
 ;
KILL ;;K @$$^W4MAIN("TMPREP")
 Q
 ;
DOT ;
 W "<div style=""position:absolute;left:1px;top:1px""></div>",!
 Q

W4TOTYR
W4TOTYR(YEAR,MM1,MM2)  ; [ 27.08.25 13:33 ] [ 21.11.24 13:12 ] [ 11.04.24 05:27 ] 
 N (JB,%ARG,%REM,YEAR,MM1,MM2)
 D GLTMP
 S YY=YEAR
 S VRMG=$$^W4MAIN("VRMG") K @VRMG
 S %ARG("TOTYR")=1
 ;
 D PRESEK
 ;
 D TBMAM
 ;
 D SHOW("YEARMONTHREPORT","A")
 ;
 I $$MSL^W4PRM D
 .W "<br><br>",!
 .D SHOW("YEARMONTHRESTREPORT","R")
 .W "<br><br>",!
 .D SHOW("YEARMONTHDLVREPORT","D")
 ;
 W "<br><br>",!
 ;
 D FF
 ;
 ;;S %ARG("DAYS")="1111111"
 ;;D PREP^W4DEPREP($G(%ARG("MM1")),$G(%ARG("MM2")),$G(%ARG("YY")),$G(%ARG("DAYS")),JB)
 K @$$^W4MAIN("VRM")
 M @$$^W4MAIN("VRM")=@$$^W4MAIN("VRMDEP")
 I '$$PRINT D
 .W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 . D DIVEXC^W4DEPREP("W4DEPREP")
 .W "</div>",!
 ;
 D PRESEK
 D ^W4DEPREP
 ;;K @$$^W4MAIN("VRMDEP")
 ;;M @$$^W4MAIN("VRMDEP")=@$$^W4MAIN("VRM")
 ;
 D FF
 ;
 ;;S %ARG("DAYS")="1111111"
 ;;D PREP^W4KVZREP($G(%ARG("MM1")),$G(%ARG("MM2")),$G(%ARG("YY")),$G(%ARG("DAYS")),JB) ; ***
 D PRESEK
 I '$$PRINT D
 .W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 . D DIVEXC^W4DEPREP("W4KVZREP")
 .W "</div>",!
 ;
 K @$$^W4MAIN("VRM")
 M @$$^W4MAIN("VRM")=@$$^W4MAIN("VRMKVZ")
 D ^W4KVZREP
 K @$$^W4MAIN("VRM")
 ;;M @$$^W4MAIN("VRMKVZ")=@$$^W4MAIN("VRM")
 ;;K @GLTMP 
 Q
 ;
 ;
SHOW(KOT,KIND)
 N I,SUMS,SUMG,SUMQ,VL,AV
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT(KOT,YEAR_"<>"_MM1_"<>"_MM2)
  W "</span>",!
  ;
  D DIVEXC(KOT,KIND,MM1,MM2)
  ;
  W "<table style=""table-layout:fixed"" width=""100%"" border=""1"" cellspacing=""0"" cellpadding=""2"">",!
   W "<tr>"
    I '$$PRINT,$$^W4TABLET'=1 W "<th width=""4%"">"_$$^%W1DICT("GRAPHS")_"</th>"
    W "<th WIDTH=""6%"">&nbsp;</th>"
    F I=MM1:1:MM2 D
    .W "<th width=""7%"" >"_$$^%W1DICT("MM"_I)_"</th>"
    W "<th width=""7%"" >"_$$^%W1DICT("TOTAL")_"</th>"
   W "</tr>",!
   ;
   W "<tr>"
     D TDGRAPH(KIND,"TOT")
     W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
     S SUMS=0
     F I=MM1:1:MM2 D
     .S VL=$$RKV($G(@GLTMP@(I,KIND,"S")),I)
     .W "<td dir=""LTR"" align=""right"">"_$J(VL,1,1)_"</td>"
     .S @VRMG@(KIND,"TOT",I)=VL
     .S SUMS=SUMS+VL
     D TDTOT W $J(SUMS,1,1)_"</td>"
   W "</tr>"
   ;
   W "<tr>"
     D TDGRAPH(KIND,"ORDS")
     W "<td>"_$$^%W1DICT("TOTALORDS")_"</td>"
     S SUMQ=0
     F I=MM1:1:MM2 D
     .S VL=$G(@GLTMP@(I,KIND,"Q"))
     .W "<td>"_VL_"</td>"
     .S @VRMG@(KIND,"ORDS",I)=VL
     .S SUMQ=SUMQ+VL
     D TDTOT W SUMQ_"</td>"
   W "</tr>"
   ;
   W "<tr>"
     D TDGRAPH(KIND,"GUESTS") 
     W "<td>"_$$^%W1DICT("TOTALGUESTS")_"</td>"
     S SUMG=0
     F I=MM1:1:MM2 D
     .S VL=$G(@GLTMP@(I,KIND,"G"))
     .W "<td dir=""LTR"" align=""right"">"_VL_"</td>"
     .S @VRMG@(KIND,"GUESTS",I)=VL
     .S SUMG=SUMG+VL
     D TDTOT W SUMG_"</td>"
   W "</tr>"
   ;
   W "<tr>"
     D TDGRAPH(KIND,"AVG")
     W "<td>"_$$^%W1DICT("AVGUEST")_"</td>"
     S SUM=0
     F I=MM1:1:MM2 D
     .N SOAD S SOAD=$G(@GLTMP@(I,KIND,"G"))
     .I SOAD S VL=$$RKV($J($G(@GLTMP@(I,KIND,"S"))/SOAD,1,1),I)
     .I 'SOAD S VL="-"
     .W "<td align=""center"">"_VL_"</td>"
     .S @VRMG@(KIND,"AVG",I)=VL
     ;
     S AV=$S(SUMG:$J(SUMS/SUMG,1,1),1:"-")
     D TDTOT W AV_"</td>"
   W "</tr>"
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
 ;
SUM(MM,KIND,A,HZ) ;
 N QN 
 N TS S TS=$P(A,"\",11)
 S QN=$$^W4QNORD(HZ)
 ;
 ;;S ^AA("TOTYR","HZ",MM,HZ)=QN
 S @GLTMP@(MM,KIND,"Q")=$G(@GLTMP@(MM,KIND,"Q"))+QN
 S @GLTMP@(MM,KIND,"S")=$G(@GLTMP@(MM,KIND,"S"))+TS
 N SOAD S SOAD=$$^W4SOAD($G(HZ))
 S @GLTMP@(MM,KIND,"G")=$G(@GLTMP@(MM,KIND,"G"))+SOAD
 Q
 ;
 ;
PREP(JB,YEAR,MM1,MM2,MKRDAT) ;
 I YEAR?4N S YEAR=$E(YEAR,3,4)
 I '$G(MM1) S MM1="01"
 I '$G(MM2) S MM2="12"
 S MM1=$TR($J(MM1,2)," ",0)
 S MM2=$TR($J(MM2,2)," ",0)
 N DT1,DT2,LD
 S DT1=$$^%L1DC("01"_MM1_YEAR,3)
 S LD=$$LMM^%L1DC(MM2_YEAR)
 S DT2=$$^%L1DC(LD_MM2_YEAR,3)
 ;
 D GLTMP K @GLTMP
 N GL S GL=$$^W4REF
 I $G(MKRDAT) S GL=$$^W4GL("W4LINKD")
 ;
 F DT=DT1:1:DT2 D
 .N HZ
 .S HZ="" F  S HZ=$O(@GL@(DT,HZ)) Q:HZ=""  D VIB(DT,HZ)
 ;
 S %ARG("DAYS")="1111111"
 D PREP^W4DEPREP(MM1,MM2,YEAR,$G(%ARG("DAYS")),JB)
 K @$$^W4MAIN("VRMDEP")
 M @$$^W4MAIN("VRMDEP")=@$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM")
 ;
 S %ARG("DAYS")="1111111"
 D PREP^W4KVZREP(MM1,MM2,YEAR,$G(%ARG("DAYS")),JB) ; ***
 K @$$^W4MAIN("VRMKVZ")
 M @$$^W4MAIN("VRMKVZ")=@$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM")
 ;
 D PUT^%W1PRM("W4TOTYR",1)
 Q
 ;
 ;
VIB(DT,HZ) ;
 S MM=+$ZD(DT,"MM")
 ;;I $$DEL^W4DEL(HZ) Q
 I $$^W4HZMH(HZ) Q
 I $$I^W4PIZUL(HZ) Q
 ;;I $G(@$$^W4ORD@(HZ,"S"))<2 Q
 S A=$G(@$$^W4ORD@(HZ))
 D SUM(MM,"A",A,HZ)
 I $$HZM^W4MSL(HZ) D SUM(MM,"D",A,HZ)
 I $$HZM^W4MSD(HZ) D SUM(MM,"R",A,HZ)
 Q
 ;
DIVEXC(KOT,KIND,MM1,MM2) ;
 Q:$$PRINT
 W "<div "_$S(KIND="A":"id=""excel""",1:"")_" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 ;
 D ^W4TOTYRX(KOT,KIND,MM1,MM2)
 ;
 N COD S COD="W4TOTYR"
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 N IND S IND=COD_$$^W4MYDVN
 ;
 N IND1 S IND1=$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 ;
 S FL=COD_$$^W4MYDVN_"_"_IND1
 S FLCSV=DIR_FL_".csv"
 ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 Q
 ;
 ;
PRINT(STAM) ;
 Q $G(%ARG("PRINT"))
 ;
TDGRAPH(KIND,WHAT) ;
 Q:$$PRINT!($$^W4TABLET=1)
 W "<td align=""center"">"
  D ^W4BUTTON("graphtot","GRAPH","GrGraphWhat('"_KIND_"','"_WHAT_"','"_YY_"','"_MM1_"','"_MM2_"',this)","font-weight:bold;color:green")
 W "</td>"
 Q
 ;
TDTOT ;
 W "<td style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">"
 Q
 ;
FF ;
 I $$PRINT D
 .S %ARG("PRINT")=1
 .W "<p style=""page-break-before:always"">",!
 Q
 ;
PRESEK ;
 I $$PRINT W $$^W4PRESEK_"<hr>"
 Q
 ;
TBMAM ; 
 D TBMAM^W4YOM ; 
 Q
 ;
RKV(VL,MM) ; 
 N AHMAM
 S MM=$TR($J(MM,2)," ",0)
 N YY S YY=YEAR I $L(YEAR)=4 S YY=$E(YEAR,3,4)
 N DD S DD=$$^%L1DC("01"_MM_YY,3)
 S AHMAM=$$MAMD^W4L(DD)
 I $$LMAM S VL=$J(VL*100/(100+AHMAM),2,2)
 Q VL 
 ;
LMAM(STAM) ; 
 Q $G(%ARG("LMAM")) 
 ;
CLEAR ;
 K @$$^W4MAIN("VRM"),@$$^W4MAIN("VRMDEP"),@$$^W4MAIN("VRMKVZ")
 K @$$^W4MAIN("VRMG")
 K @$$^W4MAIN("TMP")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TOTYR0
W4TOTYR(YEAR,MM1,MM2)  ; [ 17.08.23 05:46 ] [ 16.08.23 17:29 ] [ 15.08.23 14:18 ] 
 N (JB,%ARG,%REM,YEAR,MM1,MM2)
 D GLTMP
 S YY=YEAR
 S VRMG=$$^W4MAIN("VRMG") K @VRMG
 S %ARG("TOTYR")=1
 ;
 D PRESEK
 ;
 D TBMAM
 ;
 D SHOW("YEARMONTHREPORT","A")
 ;
 I $$MSL^W4PRM D
 .W "<br><br>",!
 .D SHOW("YEARMONTHRESTREPORT","R")
 .W "<br><br>",!
 .D SHOW("YEARMONTHDLVREPORT","D")
 ;
 W "<br><br>",!
 ;
 D FF
 ;
 S %ARG("DAYS")="1111111"
 D PREP^W4DEPREP($G(%ARG("MM1")),$G(%ARG("MM2")),$G(%ARG("YY")),$G(%ARG("DAYS")),JB)
 I '$$PRINT D
 .W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 . D DIVEXC^W4DEPREP("W4DEPREP")
 .W "</div>",!
 ;
 D PRESEK
 D ^W4DEPREP
 K @$$^W4MAIN("VRMDEP")
 M @$$^W4MAIN("VRMDEP")=@$$^W4MAIN("VRM")
 ;
 D FF
 ;
 S %ARG("DAYS")="1111111"
 D PREP^W4KVZREP($G(%ARG("MM1")),$G(%ARG("MM2")),$G(%ARG("YY")),$G(%ARG("DAYS")),JB)
 D PRESEK
 I '$$PRINT D
 .W "<div id=""excel"" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 . D DIVEXC^W4DEPREP("W4KVZREP")
 .W "</div>",!
 D ^W4KVZREP
 K @$$^W4MAIN("VRMKVZ")
 M @$$^W4MAIN("VRMKVZ")=@$$^W4MAIN("VRM")
 Q
 ;
 ;
SHOW(KOT,KIND)
 N I,SUMS,SUMG,SUMQ,VL,AV
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W $$^%W1DICT(KOT,YEAR_"<>"_MM1_"<>"_MM2)
  W "</span>",!
  ;
  D DIVEXC(KOT,KIND,MM1,MM2)
  ;
  W "<table style=""table-layout:fixed"" width=""100%"" border=""1"" cellspacing=""0"" cellpadding=""2"">",!
   W "<tr>"
    I '$$PRINT,$$^W4TABLET'=1 W "<th width=""4%"">"_$$^%W1DICT("GRAPHS")_"</th>"
    W "<th WIDTH=""6%"">&nbsp;</th>"
    F I=MM1:1:MM2 D
    .W "<th width=""7%"" >"_$$^%W1DICT("MM"_I)_"</th>"
    W "<th width=""7%"" >"_$$^%W1DICT("TOTAL")_"</th>"
   W "</tr>",!
   ;
   W "<tr>"
     D TDGRAPH(KIND,"TOT")
     W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
     S SUMS=0
     F I=MM1:1:MM2 D
     .S VL=$$RKV($G(@GLTMP@(I,KIND,"S")),I)
     .W "<td dir=""LTR"" align=""right"">"_$J(VL,1,1)_"</td>"
     .S @VRMG@(KIND,"TOT",I)=VL
     .S SUMS=SUMS+VL
     D TDTOT W $J(SUMS,1,1)_"</td>"
   W "</tr>"
   ;
   W "<tr>"
     D TDGRAPH(KIND,"ORDS")
     W "<td>"_$$^%W1DICT("TOTALORDS")_"</td>"
     S SUMQ=0
     F I=MM1:1:MM2 D
     .S VL=$G(@GLTMP@(I,KIND,"Q"))
     .W "<td>"_VL_"</td>"
     .S @VRMG@(KIND,"ORDS",I)=VL
     .S SUMQ=SUMQ+VL
     D TDTOT W SUMQ_"</td>"
   W "</tr>"
   ;
   W "<tr>"
     D TDGRAPH(KIND,"GUESTS") 
     W "<td>"_$$^%W1DICT("TOTALGUESTS")_"</td>"
     S SUMG=0
     F I=MM1:1:MM2 D
     .S VL=$G(@GLTMP@(I,KIND,"G"))
     .W "<td dir=""LTR"" align=""right"">"_VL_"</td>"
     .S @VRMG@(KIND,"GUESTS",I)=VL
     .S SUMG=SUMG+VL
     D TDTOT W SUMG_"</td>"
   W "</tr>"
   ;
   W "<tr>"
     D TDGRAPH(KIND,"AVG")
     W "<td>"_$$^%W1DICT("AVGUEST")_"</td>"
     S SUM=0
     F I=MM1:1:MM2 D
     .N SOAD S SOAD=$G(@GLTMP@(I,KIND,"G"))
     .I SOAD S VL=$$RKV($J($G(@GLTMP@(I,KIND,"S"))/SOAD,1,1),I)
     .I 'SOAD S VL="-"
     .W "<td align=""center"">"_VL_"</td>"
     .S @VRMG@(KIND,"AVG",I)=VL
     ;
     S AV=$S(SUMG:$J(SUMS/SUMG,1,1),1:"-")
     D TDTOT W AV_"</td>"
   W "</tr>"
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
GLTMP ;
 S GLTMP=$$^W4MAIN("TMP")
 Q
 ;
SUM(KIND,A,HZ) ;
 N QN 
 N TS S TS=$P(A,"\",11)
 D
 .S QN=1
 .I $$DEL^W4DEL(HZ) S QN=0 Q
 .I '$$DEL^W4DEL(HZ),TS<-.9 S QN=0 Q
 .I $$^W4PIZUL(HZ) S QN=2
 ;
 S @GLTMP@(MM,KIND,"Q")=$G(@GLTMP@(MM,KIND,"Q"))+QN
 S @GLTMP@(MM,KIND,"S")=$G(@GLTMP@(MM,KIND,"S"))+TS
 N SOAD S SOAD=$$^W4SOAD($G(HZ))
 S @GLTMP@(MM,KIND,"G")=$G(@GLTMP@(MM,KIND,"G"))+SOAD
 Q
 ;
 ;
PREP(JB,YEAR,MM1,MM2,MKRDAT) ;
 I YEAR?4N S YEAR=$E(YEAR,3,4)
 I '$G(MM1) S MM1="01"
 I '$G(MM2) S MM2="12"
 S MM1=$TR($J(MM1,2)," ",0)
 S MM2=$TR($J(MM2,2)," ",0)
 S DT1=$$^%L1DC("01"_MM1_YEAR,3)
 S LD=$$LMM^%L1DC(MM2_YEAR)
 S DT2=$$^%L1DC(LD_MM2_YEAR,3)
 ;
 D GLTMP K @GLTMP
 F DT=DT1:1:DT2 D
 .N HZ,GL
 .S GL=$$^W4REF
 .I $G(MKRDAT) S GL=$$^W4GL("W4LINKD")
 .S HZ="" F  S HZ=$O(@GL@(DT,HZ)) Q:HZ=""  D VIB(HZ)
 ;
 D PUT^%W1PRM("W4TOTYR",1)
 Q
 ;
 ;
VIB(HZ) ;
 I $$DEL^W4DEL(HZ) Q
 I $$^W4HZMH(HZ) Q
 I $$I^W4PIZUL(HZ) Q
 ;;I $G(@$$^W4ORD@(HZ,"S"))<2 Q
 S A=$G(@$$^W4ORD@(HZ))
 S MM=+$ZD(DT,"MM")
 D SUM("A",A,HZ)
 I $$HZM^W4MSL(HZ) D SUM("D",A,HZ)
 I $$HZM^W4MSD(HZ) D SUM("R",A,HZ)
 Q
 ;
DIVEXC(KOT,KIND,MM1,MM2) ;
 Q:$$PRINT
 W "<div "_$S(KIND="A":"id=""excel""",1:"")_" dir="""_$$^%W1DIR_""" "_$$^%W1ALIGN_">",!
 ;
 D ^W4TOTYRX(KOT,KIND,MM1,MM2)
 ;
 N COD S COD="W4TOTYR"
 N FLCSV,FLTXT,DIR,FL
 S DIR=$$DIRWEB^%W1PCEX
 N IND S IND=COD_$$^W4MYDVN
 ;
 N IND1 S IND1=$O(@$$^W4MAIN("TMPCSV")@(IND,"csv",9999999),-1)
 ;
 S FL=COD_$$^W4MYDVN_"_"_IND1
 S FLCSV=DIR_FL_".csv"
 ;
 W "<table>"
  W "<tr>"
   W "<td>",!
    W "<a href="""_FLCSV_"""><img src=""w3excel.png"" > "_FL_".csv</a>",!
   W "</td>"
  W "</tr>",!
 W "</table>",!
 ;
 W "</div>",!
 ;
 Q
 ;
 ;
PRINT(STAM) ;
 Q $G(%ARG("PRINT"))
 ;
TDGRAPH(KIND,WHAT) ;
 Q:$$PRINT!($$^W4TABLET=1)
 W "<td align=""center"">"
  D ^W4BUTTON("graphtot","GRAPH","GrGraphWhat('"_KIND_"','"_WHAT_"','"_YY_"','"_MM1_"','"_MM2_"',this)","font-weight:bold;color:green")
 W "</td>"
 Q
 ;
TDTOT ;
 W "<td style=""background-color:yellow;font-weight:bold;font-size:"_$$^W3FSZ(12)_""">"
 Q
 ;
FF ;
 I $$PRINT D
 .S %ARG("PRINT")=1
 .W "<p style=""page-break-before:always"">",!
 Q
 ;
PRESEK ;
 I $$PRINT W $$^W4PRESEK_"<hr>"
 Q
 ;
TBMAM ; 
 D TBMAM^W4YOM ; 
 Q
 ;
RKV(VL,MM) ; 
 N AHMAM
 S MM=$TR($J(MM,2)," ",0)
 N YY S YY=YEAR I $L(YEAR)=4 S YY=$E(YEAR,3,4)
 N DD S DD=$$^%L1DC("01"_MM_YY,3)
 S AHMAM=$$MAMD^W4L(DD)
 I $$LMAM S VL=$J(VL*100/(100+AHMAM),2,2)
 Q VL 
 ;
LMAM(STAM) ; 
 Q $G(%ARG("LMAM")) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TOTYRX
W4TOTYRX(KOT,KIND,MM1,MM2,IND1) ; [ 06.01.19 11:19 ] [ 25.12.18 10:20 ] [ 
 N (JB,%ARG,KOT,KIND,FLCSV,MM1,MM2,IND1)
 S LNG=$$^%W1LNG
 D GLTMP^W4TOTYR
 ;
 S COD="W4TOTYR"
 S FL=$$FL^%W1FREPX(COD,"csv")
 ;
 S FLCSV=FL_".csv"
 ;
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 ;
 D OPEN^%W1FREPX(FLCSV)
 ;
 ;S ST=","
 ;F I=MM1:1:MM2 D
 ;.S ST=ST_$$RKV($$DICT("MM"_I))
 ;.S ST=ST_$$RKV($$DICT("TOTAL"))
 ;D W(ST)
 
 S ST=$$RKV($$DICT("TOTAL"))
 S SUMS=0
 F I=MM1:1:MM2 D
 .S VL=$G(@GLTMP@(I,KIND,"S"))
 .S ST=ST_$$RKV($J(VL,1,1))
 .S SUMS=SUMS+VL
  S ST=ST_$$RKV($J(SUMS,1,1))
  D W(ST)
  ;
  S ST=$$RKV($$DICT("TOTALORDS"))
  S SUMQ=0
  F I=MM1:1:MM2 D
  .S VL=$G(@GLTMP@(I,KIND,"Q"))
  .S ST=ST_$$RKV(VL)
  .S SUMQ=SUMQ+VL
  S ST=ST_$$RKV(SUMQ)
  D W(ST)
   ;
  S ST=$$RKV($$DICT("TOTALGUESTS"))
  S SUMG=0
  F I=MM1:1:MM2 D
  .S VL=$G(@GLTMP@(I,KIND,"G"))
  .S ST=ST_$$RKV(VL)
  .S SUMG=SUMG+VL
  S ST=ST_$$RKV(SUMG)
  D W(ST)
  ;
  S ST=$$RKV($$DICT("AVGUEST"))
  S SUM=0
  F I=MM1:1:MM2 D
  .N SOAD S SOAD=$G(@GLTMP@(I,KIND,"G"))
  .I SOAD S VL=$J($G(@GLTMP@(I,KIND,"S"))/SOAD,1,1)
  .I 'SOAD S VL="0"
  .S ST=ST_$$RKV(VL)
  ;
  S AV=$S(SUMG:$J(SUMS/SUMG,1,1),1:"-")
  S ST=ST_$$RKV(AV)
  D W(ST)
  C FLCSV
  Q
  ;
  ;
RKV(TX) ;
 Q $$RKV^%W1PCEX(TX)
 ;
DICT(KEY) ;
 Q $$TV^%W1DICT($$^%W1LNG,KEY)
 ;
W(ST) ;
 U FLCSV W ST,!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TOUCH
W4TOUCH() ; [ 18.12.25 16:56 ] [ 22.02.23 19:43 ] [ 20.02.23 15:24 ] 
 ;;I $ZV[" V7" Q "onClick"
 Q "onmouseup"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TRAN
W4TRAN(SOUT,TRAN,TIPCA) ; [ 04.02.24 15:46 ] [ 11.03.22 08:38 ] [ 29.12.21 08:26 ] 
 N (JB,%REM,SOUT,TRAN,S21,AUTHNO,ASHTZ,ASHCVV2,ASH4,A2COR,TIPCA)
 D ^W4IN S STA="000",KUP=901,S21=""
 S PATH=$G(@$$^W4GL("PATH"))
 ;
 D GTRAN,GTRANW,GTRANL,GTRANWL,GVIZH
 ;
 N VTS,LAB,NTR,ISKA
 S VTS="V"_$E(SOUT,25)
 ;------------------------------
 S NTR=$S($G(A2COR):A2COR,1:$O(@GTRAN@(KUP,99999),-1)+1)
 S NISKA=$E(SOUT,96,97)_"-"_$E(SOUT,98,100)_"-"_$TR($J(NTR,3)," ",0)
 S VIZ=$E(SOUT,5,23) ;
 S MANP=$E(SOUT,24)
 S PAY=$E(SOUT,36,43)
 N INDX S INDX=$O(@GVIZH@(P1DZ,VIZ,9999),-1)+1
 S @GVIZH@(P1DZ,VIZ,INDX)=PAY
 S SUGIS=$E(SOUT,61,62)
 S SUGIS1=$S(SUGIS="01":1,SUGIS=51!(SUGIS=53):3,SUGIS="03":5,1:SUGIS)
 S SUGAS=$E(SOUT,63)
 S SUMH=PAY*.01
 I $$^W4ZHUT(SUGIS1) S SUMH=-SUMH
 S P1=$E(SOUT,78,85)
 S PN=$E(SOUT,94,95)
 S PC=$E(SOUT,86,93)
 S MMYY=$E(SOUT,30,33)
 S AUTHNO=$E(SOUT,71,77)
 S MKRIS=$E(SOUT,70)
 S SIBATK=$E(SOUT,69)
 S CODIS=$E(SOUT,66,67)
 S SUGMTB=$E(SOUT,65)
 S SUMKHV=$E(SOUT,52,59)
 S HUL=$E(SOUT,119)
 S NMCARD=$E(SOUT,104,118)
 S NMCARD=$$DCD^%L1FRM(NMCARD)
 S CLUB=$E(SOUT,68)
 ;
 S S21="$"_VTS_"*"_VIZ_"*"_NISKA_"*"_SUGIS1_"*"_SUGAS_"*"_$J(PAY*.01,2,2) ;1-6
 S S21=S21_"*"_SUMH_"*"_P1_"*"_PN_"*"_PC_"**"_AUTHNO ;7-12
 S S21=S21_"*"_$S($D(AUTHNO("SHV")):1,1:MKRIS)_"*"_MMYY_"*"_SIBATK ;13-15
 S S21=S21_"*"_CODIS_"*"_SUGMTB_"*"_(SUMKHV*.01) ;16-18
 S S21=S21_"*"_HUL_"*"_NMCARD_"*"_CLUB_"*"_SUGIS ;19-22
 S S21=S21_"*"_$G(ASHTZ)_"*"_$G(ASHCVV2)_"*"_$G(ASH4) ;23-25
 I $G(TIPCA) S $P(S21,"*",27)=TIPCA
 S $P(S21,"*",33)=MANP
 ;
 S NOZAP=0 I $$GETP^%W1PRM("CBCRED") S NOZAP=1
 I 'NOZAP D DOS1(SOUT,TRAN)
 ;
 I NOZAP D
 .D PUT^%W1PRM("SOUT",SOUT)
 .D PUT^%W1PRM("TRAN",TRAN)
 ;
END ;
 Q S21
 ;
 ;
DOS1(SOUT,TRAN) ;
 N (JB,%ARG,SOUT,TRAN)
 S KUP=901 D ^W4IN
 S PATH=$G(@$$^W4GL("PATH"))
 D GTRAN,GTRANW,GTRANL,GTRANWL,GVIZH
 ;
 I '$L($G(TRAN)),'$$EMV^W4PRM D:$E(SOUT,1,3)="000"  G EDOS
 .I '$D(P1DZ) D ^W4IN
 .I '$$EMV^W4PRM D
 ..D GOUTL
 ..N NFL S NFL=$E(SOUT,96,97)
 ..N TRSQ S TRSQ=($O(@GOUTL@(NFL,KUP,99999),-1)+1)#1000
 ..L +@GOUTL@(NFL,KUP):2
 ..S @GOUTL@(NFL,KUP,TRSQ)=$TR($J(KUP,3)," ",0)_$TR($J(TRSQ,3)," ",0)_SOUT
 ..S $P(@GOUTL@(NFL,KUP,TRSQ),"~",3)=P1DZ
 ..D ^%S2GLSV(GOUTL_"("""_NFL_""","""_KUP_""","""_TRSQ_""")",$$^W4FGIB)
 ..L -@GOUTL@(NFL,KUP)
 ..I $L(PATH) D
 ...N OUTL1 S OUTL1=PATH_"#O"_$$^%L1DC(P1DZ,2)_"."_$TR($J(KUP,3)," ",0)
 ...O OUTL1:APPEND
 ...U OUTL1 W @GOUTL@(NFL,KUP,TRSQ),!
 ...C OUTL1
 ;
 S TRSQ=$S($G(A2COR):A2COR,1:$O(@GTRAN@(KUP,99999),-1)+1)#1000
 ;
 I $$^W4SRVWIN(JB)=2 D  ;-- WEB
 .I '$$EMV^W4PRM D
 ..S TRSQ=$S($G(A2COR):A2COR,1:$O(@GTRANW@(KUP,99999),-1)+1)#1000
 ..S TRANW=TRAN ;-- ENCODING
 ..L +@GTRANW@(KUP):2
 ..S @GTRANW@(KUP,TRSQ)=TRANW
 ..D ^%S2GLSV(GTRANW_"("""_KUP_""","""_TRSQ_""")",$$^W4FGIB)
 ..L -@GTRANW@(KUP)
 .
 .S TRAN=$$W2T(SOUT) ; -- DECODING TRAN
 ;
 L +@GTRAN@(KUP):2
 S @GTRAN@(KUP,TRSQ)=$E(TRAN,1,3)_$TR($J(TRSQ,3)," ",0)_$E(TRAN,7,255)
 S $P(@GTRAN@(KUP,TRSQ),"~",3)=P1DZ
 L -@GTRAN@(KUP)
 ;
 I $G(A2COR) C (52+(KUP#2)) G EDOS
 ;
 I '$G(P1DZ) D ^W4IN
 ;
 I $L(PATH),'$$EMV^W4PRM D
 .N JTRAN1
 .S JTRAN1=PATH_"#T"_$$^%L1DC(P1DZ,2)_"."_$TR($J(KUP,3)," ",0)
 .O JTRAN1:APPEND
 .U JTRAN1 W @GTRAN@(KUP,TRSQ),!
 .C JTRAN1
 ;
EDOS1 ;
 S NOM=$G(@GTRANL,1)
 I NOM<$O(@GTRANL@(999999),-1) S @GTRANL=$O(@GTRANL@(999999),-1)+1 G EDOS1
 S NPP=$S($G(A2COR):A2COR,1:$ZP(@GTRANL@(NOM,KUP,99999))+1)
 ;
 S @GTRANL@(NOM,KUP,NPP)=$G(@GTRAN@(KUP,TRSQ))
 D ^%S3GLSV(GTRANL_"("""_NOM_""","""_KUP_""","""_NPP_""")",$$^W4FGIB)
 ;
 I $$^W4SRVWIN(JB)=2,'$$EMV^W4PRM D  ;-- WEB
 .S @GTRANWL@(NOM,KUP,NPP)=$G(@GTRANW@(KUP,TRSQ))
 .D ^%S2GLSV(GTRANWL_"("""_NOM_""","""_KUP_""","""_NPP_""")",$$^W4FGIB)
 ;
EDOS Q
 ;
 ;
GTRAN ;
 S GTRAN=$$^W4GL("TRAN")
 Q
GTRANW ;
 S GTRANW=$$^W4GL("W4TRAN")
 Q
GTRANL ;
 S GTRANL=$$^W4GL("TRANL")
 Q
GTRANWL ;
 S GTRANWL=$$^W4GL("W4TRANL")
 Q
GVIZH ;
 S GVIZH=$$^W4GL("VIZH")
 Q
GOUTL ;
 S GOUTL=$$^W4GL("W4OUTL")
 Q
 ;
 ;
W2T(SOUT) ;
 D PUT^%W3DEB("W4TRAN-W2T","SOUT=SOUT&STRIN=STRIN")
 N TRAN
 S TRAN=901000
 S TRAN=TRAN_$E(SOUT,61,62) ;- SUG ISKA ;7-8
 S TRAN=TRAN_$E(SOUT,66,67) ;- KOD ISKA ;9-10
 S TRAN=TRAN_0 ;- KOD MIVNE
 S TRAN=TRAN_$E(SOUT,36,43) ;- SHUM ;12-19
 S TRAN=TRAN_$E(SOUT,52,59) ;- KOHAVIM ;20-27
 S TRAN=TRAN_1 ;- SHEKEL
 S TRAN=TRAN_$E(SOUT,63) ;- SUG ASHRAI ;29
 S TRAN=TRAN_$E(SOUT,68) ;- KOD MOADON ;30
 ;
 ;;S MG=$$GET^W4STRINW(STRIN,"A")
 S VIZ=$E(SOUT,5,23)
 ;
 D
 .S TRAN=TRAN_0
 .S TRAN=TRAN_VIZ
 .S TRAN=TRAN_$E(SOUT,32,33)_$E(SOUT,31,32)
 .S TRAN=TRAN_$J("",14)
 ;
 S TRAN=TRAN_$E(SOUT,25) ;-- HEVR ASHR (SOLEK ?) ;69
 S TRAN=TRAN_$ZD($H,"DD") ;70-71
 S TRAN=TRAN_$ZD($H,"2460") ;72-75
 S TRAN=TRAN_"0" ; MISP SODY ?   ;76
 S ASM=$E(SOUT,71,77)
 S TRAN=TRAN_ASM ; -- ASM ; 77-83
 S TRAN=TRAN_$S(ASM:1,1:0) ; MAKOR ASHRAI (1 - SHVA) ;84
 S TRAN=TRAN_$J("",5) ; 85-89
 S TRAN=TRAN_"0" ; NO RAV SAPAK /MUTAV ; 90
 S TRAN=TRAN_$J("",7) ;91-97
 ;
 S P1=$E(SOUT,78,85)
 S PN=$E(SOUT,94,95)
 S PC=$E(SOUT,86,93)
 S TRAN=TRAN_P1_PC_PN ; 98-116
 S TRAN=TRAN_$J("",13)
 Q TRAN
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TRCNMB
W4TRCNMB(JB) ; [ 04.05.22 12:59 ] [ 24.04.22 12:42 ] [ 13.03.22 10:27 ] 
 N DV,FLIND,FLTRC,TRC,TRCNMB
 D DVIND^W4EMV3
 ;
 S FLTRC=$$PATH_"tmptrc"_FLIND
 S TRC=$$DIR_"SPIShell --get-system-trace > "_FLTRC
 ZSY TRC
 ;
 N HZM S HZM=+$$GETP^%W1PRM("HZM")
 ;
 S TRCNMB=""
 ;
 I $$EXIST^%L1ZOS(FLTRC) D
 .O FLTRC:(REWIND:READONLY)
 .U FLTRC R A
 .S ^LV("TRCNMB1",HZM)=A
 .S A=$$SPA^%L1FRM(A)
 .S A=$$SP1^%L1FRM(A)
 .I $P(A," ")[";" S TRCNMB=$P(A," ") Q
 .S TRCNMB=$P(A," ",7)
 .I 'TRCNMB D
 ..N A1 I '$ZEOF R A1 S TRCNMB=A1
 ..S ^LV("TRCNMB2",HZM)=$G(A1)
 ;
 Q TRCNMB
 ;
 ;
DIR(STAM) ;
 Q $$EMVDIR^W4PRM
 ;
PATH(STAM) ;
 Q "/tmp/" 
 
 
 
 
 
 

W4TRCPR
W4TRCPR(DAT) ; [ 04.01.26 13:43 ] [ 05.08.25 04:11 ] [ 03.07.25 14:37 ] 
 N (JB,%ARG,DAT)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S GLPR="W4TRCKPR"
 S NMPR="TRCKRPROT"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 S DT=$$^%L1DC(DAT,3)
 W "<p dir="""_$$^%W1DIR_""" style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT(NMPR,$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 ;
 S GL=$$^W4GL(GLPR)
 ;
 S ORD=$G(%ARG("ORD"))
 ;
 I ORD D  G END
 .N N,OK,FIRST S OK=0,N="",FIRST=1
CYCORD .F  S N=$O(@GL@(DT,N)) Q:N=""  D  Q:OK
 ..N A S A=$G(@GL@(DT,N,"CMD")) Q:A=""  D
 ...S ORDG=$P($P(A,"fltrccmd",2),"-",3) I ORD=ORDG S OK=N
 .
 .I OK D
 ..N END S END=0
 ..S N=OK-2 I N<0 Q:'FIRST  S N=""
 ..F  S N=$O(@GL@(DT,N)) Q:N=""  D  Q:END
 ...S IND="" F  S IND=$O(@GL@(DT,N,IND)) Q:IND=""  D  Q:END
 ....I IND="SND",N>OK S END=1,FIRST=0 Q
 ....I $D(^(IND))#2 W IND_" = "_$G(^(IND))_"<br>",!
 ....W "<br>",!
 ....S N1="" F  S N1=$O(@GL@(DT,N,IND,N1)) Q:N1=""  D
 .....I $D(^(N1))#2 W IND_" : "_N1_" = "_$$RKV($G(^(N1)))_"<br>",!
 .
 .I OK,N'="" S OK=0 G CYCORD
 ;
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .S IND="" F  S IND=$O(@GL@(DT,N,IND)) Q:IND=""  D
 ..I $D(^(IND))#2 W IND_" = "_$G(^(IND))_"<br>",!
 ..W "<br>",!
 ..S N1="" F  S N1=$O(@GL@(DT,N,IND,N1)) Q:N1=""  D
 ...I $D(^(N1))#2 W IND_" : "_N1_" = "_$$RKV($G(^(N1)))_"<br>",!
 ;
END W "</div>",!
 Q
 ;
 ;
RKV(VL) ; 
 N OK S OK=0
 N J F J=1:1:$L(VL) I $A(VL,J)>223 S OK=1 Q
 I OK D
 .N L,R
 .S L=$P(VL,":"),R=$P(VL,":",2,200)
 .S R=$$H2U^%L1FRM($$INVH^%L1FRM($TR(R,TS1,TS0)))  
 .S VL=L_":"_R
 Q VL 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TRICKR
W4TRICKR(JB,HZ,FUNC,DELAY) ; [ 29.06.26 17:30 ] [ 17.02.26 18:33 ] [ 16.02.26 16:31 ] 
 N (JB,%ARG,HZ,FUNC,DELAY)
 D ^%L1TS
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(HZ) Q
 S PSL="",PSLNM="",PSLPHONE=""
 I HZ["<>" S PSL=$P(HZ,"<>",2),HZ=$P(HZ,"<>")
 ;
 I PSL D
 .S PSLNM=$TR($$INVH^%L1FRM($G(@$$^W4GL("P1SL")@(PSL))),TS0,TS1)
 .S PSLPHONE=$P($G(@$$^W4GL("P1SL")@(PSL,1)),"\",2)
 ;
 S ORD=$$HZLAKNOM^W4HZMST(HZ)
 I $$NEW(HZ) S ORD=$$HZLAKNOM2^W4HZMST(HZ)
 ;
 S FUNC=$G(FUNC)
 S STAT=""
 ;
 S PRSEND=1
 ;
 I $G(@$$^W4ORD@(HZ,"TRICKCNC")) Q  ; -- IM BUTLA LO LISLOH YOTER STATUSIM
 ;
 S TAW=+$$TAKEAWAY^W4HZMST(HZ)
 ; 
 I FUNC="WAIT" S STAT="waiting_in_branch" D
 .;;I $G(@$$^W4ORD@(HZ,"TRICKWAIT")) S PRSEND=0 Q
 .S @$$^W4ORD@(HZ,"TRICKWAIT")=$H
 .I '$$PAPJ^W4PRM Q
 .I '$$^W4KIOSKO(HZ) Q
 .N PRM S PRM=$$NAME^W4HZMST(HZ)_"<>"_HZ_"<><E>&#x1F355;<E>"
 .N HD S HD=""
 .D MAIL2SMS^W4SNDSMS(JB,HZ,PRM,HD,$G(NOBR))
 ;
 I FUNC="WAY",'TAW S STAT="on_the_way" D
 .;;I $G(@$$^W4ORD@(HZ,"TRICKWAY")) S PRSEND=0 Q
 .S @$$^W4ORD@(HZ,"TRICKWAY")=$H
 ;
 I FUNC="PREP" S STAT="in_preparation" D
 .;;I $G(@$$^W4ORD@(HZ,"TRICKPREP")) S PRSEND=0 Q
 .N RCV S RCV=$G(@$$^W4ORD@(HZ,"TRICKRCV")) Q:'RCV
 .I $$DIF^%L1TIME($H,RCV,1)<60 H 60
 .S @$$^W4ORD@(HZ,"TRICKPREP")=$H
 ;
 I FUNC="RECEIVE" S STAT="received" D
 .;;I $G(@$$^W4ORD@(HZ,"TRICKRCV")) S PRSEND=0 Q
 .N DT,SEC S DT=+$H
 .S SEC=$P($H,",",2)
 .I $G(DELAY) D
 ..S SEC=SEC+DELAY
 ..I SEC>86400 S SEC=SEC-86400,DT=DT+1
 .S @$$^W4ORD@(HZ,"TRICKRCV")=DT_","_SEC
 ;
 I FUNC="DLV" S STAT="completed" D  ;;"delivered"
 .;;I $G(@$$^W4ORD@(HZ,"TRICKCOMPL")) S PRSEND=0 Q
 .S @$$^W4ORD@(HZ,"TRICKCOMPL")=$H
 ;
 I FUNC="DEL" S STAT="cancel_no_refund" D
 .I $G(@$$^W4ORD@(HZ,"TRICKCNC")) S PRSEND=0 Q
 .S @$$^W4ORD@(HZ,"TRICKCNC")=$H
 ;
 I STAT="" Q
 ;
 I $G(@$$^W4ORD@(HZ,"TRICKWAY")),FUNC="PREP"!(FUNC="WAIT") Q
 ;
 I FUNC="RECEIVE",$G(DELAY) H DELAY
 ;
 ;;I 'PRSEND Q
 ;
 N FL S FL="/tmp/tmptrcdata"_$$DT_"-"_JB_"-"_HZ_"-"_ORD_"-"_FUNC
 I $$EXIST^%L1ZOS(FL) C FL:(DELETE)
 O FL:(WRITE:NEWVERSION:REWIND:GROUP="rw")
 U FL
  W "{",!
  W $$RKV("jsonrpc","2.0",1)_",",!
  W $$RKV("pos_status",STAT,1)_",",!
  W $$RKV("carrier_name",PSLNM,1)_",",!
  W $$RKV("carrier_phone",PSLPHONE,1)_",",!
  N HZMLAK ;;S HZMLAK=$$HZLAKNOM^W4HZMST(HZ) ; -- 16.02.26
  S HZMLAK=$$HZMLAK^W4HZMST(HZ)
  I $E(HZMLAK)="W" S HZMLAK=$E(HZMLAK,2,20)
  I $$NEW(HZ) S HZMLAK=$$HZLAKNOM^W4HZMST(HZ) 
  W $$RKV("PosOrderRef",HZMLAK,1)_",",!
  W $$RKV("printed","false",0),!
  W "}",!
 C FL
 ;
 O FL:(REWIND:READONLY) U FL 
 S K=0
 S H=$$DT
 S K=K+1
 S NP=$$NP(H)
 ;
 N ST S ST=$TR($J("",20)," ","-")_" "_$ZD($H,"DD.MM.YY 24:60")
 I $G(HZ) S ST=ST_" Order "_HZ
 S @$$^W4GL("W4TRCKPR")@(H,NP,"SND",K)=ST
 S K=K+1 S @$$^W4GL("W4TRCKPR")@(H,NP,"SND",K)=""
 ;
 F  R A Q:$ZEOF  D
 .S K=K+1
 .S @$$^W4GL("W4TRCKPR")@(H,NP,"SND",K)=A
 C FL
 ;
 S FLUTF=FL_"utf-8"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FL_" -o "_FLUTF
 ;
 S URL="https://www.papajohns.co.il/api/tracker/update/"_ORD
 S HD="Content-Type: application/json"
 D SEND(URL,HD,"POST",FLUTF,HZ_"-"_ORD)
 Q
 ;
 ;
SEND(URL,HD,HOW,FLDATA,DOP) ;
 N (JB,%ARG,%REM,URL,HD,HOW,FLDATA,DOP)
 S DIR="/tmp/"
 S HOW=$G(HOW)
 ;
 S FLTRCOU=DIR_"fltrcou"_$$DT_"-"_JB_"-"_DOP
 ;
 S TOKEN=$G(@$$^W4PRM@("TRICKER","TOKEN"))
 S AUTH="Authorization: Bearer "_TOKEN
 ;
 S ST="curl "
 I $L(AUTH),$L(TOKEN) S ST=ST_"-H """_AUTH_""" "
 S ST=ST_" -H """_HD_""" -L -X "_HOW_" -s -m 70 "_URL
 I $L($G(FLDATA)) S ST=ST_" -d@"_FLDATA
 S ST=ST_" -o "_FLTRCOU ;;_"  > "_DIR_"tmptrcou"_$$DT_"-"_JB_"-"_DOP
 ;
 S FLCMD=DIR_"fltrccmd"_$$DT_"-"_JB_"-"_DOP
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 ZSY "iconv -c -f cp862 -t utf-8 "_FLCMD_" -o "_FLCMD_"utf-8"
 S CMD="/bin/sh "_FLCMD_"utf-8"
 ZSY CMD
 ;
 ZSY "rm -f "_FLCMD
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 S H=$$DT
 S NP=$$NP(H)
 ;
 I $$EXIST^%L1ZOS(FLTRCOU) D
 .C FLTRCOU O FLTRCOU:(REWIND:READONLY)
 .F  U FLTRCOU R A Q:$ZEOF  D 
 ..S K=K+1,@TMP@(K)=A
 ..S @$$^W4GL("W4TRCKPR")@(H,NP,"RESP",K)=A
 ..
 .C FLTRCOU
 .;;ZSY "rm -f "_FLTRCOU
 .;;ZSY "rm -f tmptrcou"_JB_"-*"
 ;
 D DB(2)
 S NP=$O(@$$^W4GL("W4TRCKPR")@(H,99999),-1)+1
 ;
 S @$$^W4GL("W4TRCKPR")@(H,NP,"TIME")=$ZD($H,"DD.MM.YY 24:60")
 S @$$^W4GL("W4TRCKPR")@(H,NP,"CMD")=CMD
 S @$$^W4GL("W4TRCKPR")@(H,NP,"ST")=ST
 S @$$^W4GL("W4TRCKPR")@(H,NP,"ZSY")=$ZSY
 Q
 ;
 ;
GET(TX,ID) ;
 N VL
 I $E(ID)'="""" S ID=""""_ID_""""
 I ID'[":" S ID=ID_":"
 S VL=$P(TX,ID,2)
 S VL=$P(VL,",")
 S VL=$P(VL,"}")
 S VL=$P(VL,"]")
 S VL=$P(VL,"//")
 S:$E(VL)="""" VL=$E(VL,2,$L(VL)-1)
 Q VL
 ;
FINDPSL(PSLTEL) ; 
 N PSL,TEL S PSL=""
 S PSLTEL=$TR(PSLTEL," -","")
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:PSL
 .S TEL=$P($G(^(N,1)),"\",2) Q:TEL=""
 .I $TR(TEL," -","")=PSLTEL S PSL=N
 Q PSL 
 ;
DB(VL) 
 Q 
 ; 
RKV(NM,VL,PRTX) ;
 Q $$RKV^W4EMV3($G(NM),$G(VL),$G(PRTX)) ;
 ;
 ;
INIT(JB) ; 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S URL="https://www.papajohns.co.il/api/auth/token/create"
 S HD="Content-Type: application/json"
 ;
 S KEY=$G(@$$^W4PRM@("TRICKER","KEY"),"test")
 S PSW=$G(@$$^W4PRM@("TRICKER","PSW"),"test")
 ;
 N FL S FL="/tmp/tmptrc"_$$DT_"-"_JB
 C FL:(DELETE)
 O FL:(NEWVERSION:WRITE)
 U FL
  W "{",!
  W $$RKV("jsonrpc","2.0",1)_",",!
  W $$RKV("api_key",KEY,1)_",",!
  W $$RKV("api_secret",PSW,1),!
  W "}",!
 C FL
 ;
 D SEND(URL,HD,"POST",FL)
 Q
 ;
 ; 
DT() ;
 Q $$^W4DZ 
 ;
NP(H) ; 
 Q $O(@$$^W4GL("W4TRCKPR")@(H,99999),-1)+1
 ;
NEW(HZ) ; 
 N ST S ST=$G(@$$^W4ORD@(HZ,"HZMLAK")) 
 I ST?13N1"^"1N.N Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TS
W4TS(STAM) ; [ 29.11.18 06:47 ] [ 
 Q $G(W4ITDEL)

W4TSAUT0
W4TSAUTO(HZM) ; [ 04.05.21 16:03 ] [ 05.06.20 13:15 ] [ 03.04.20 15:54 ] 
 N (HZM,JB,%ARG,%REM) D ^W4IN
 S %SCRN="P1HZ" S SHUL=0,SHULA=0,SCA=0,SAS=0,KUP=901
 L +@$$^W4ORD@(HZM):2
 D WB
 D GA^W4SCREF("P1HZ",$$^W4ORD_"(HZM)") S HNHS=HNH
 ;
 I $G(@$$^W4ORD@(HZM,"S"))>1 G ENDT
 ;;I $D(@$$^W4ORD@(HZM,"CB","V")) G ENDT
 ;;I $D(@$$^W4ORD@(HZM,"CB","ASR")) G ENDT
 ;
 ;;K @$$^W4ORD@(HZM,"CB")
 ;
 I $$CODTS^W4HZMST(HZM)=5!$G(@$$^W4ORD@(HZM,"SHUL")) D TL(HZM) G ENDCYC
 ;
 I $G(@$$^W4ORD@(HZM,"ASR")),'$$^W4HZMH(HZM) D ASR(HZM)
 ;
 I $D(@$$^W4ORD@(HZM,"CREDCARD")),'$$^W4HZMH(HZM) D CA(HZM) G ENDCYC
 I $G(@$$^W4ORD@(HZM,"ASR")),'$$^W4HZMH(HZM) G ENDCYC
 ;
 I $G(@$$^W4ORD@(HZM,"CIBCARD")),$G(@$$^W4PRM@("CIBUS")),$D(@$$^WCG)>9,'$$^W4HZMH(HZM) D PAYCIB(HZM) G ENDCYC
 ;
 I '$$NOTNBPAY^W4PRM,$G(@$$^W4ORD@(HZM,"TNBPAY")),'$$^W4HZMH(HZM) D PAYTNB(HZM) G ENDCYC
 ;
 I $G(@$$^W4ORD@(HZM,"FOODPAY")),'$$^W4HZMH(HZM) D PAYSO(HZM) G ENDCYC
 ;
 I $G(@$$^W4ORD@(HZM,"MKRDLV"))=55,'$$^W4HZMH(HZM) D PAYCPH(HZM) G ENDCYC
 ;
 I $G(@$$^W4ORD@(HZM,"MSHPAY")),'$$^W4HZMH(HZM) D PAYMSH(HZM) G ENDCYC
 ;
 I $G(@$$^W4PRM@("WEB","CLRX")),$$LKHN^W4HZMST(HZM)=@$$^W4PRM@("WEB","CLRX"),'$$^W4HZMH(HZM) D PAYASR(HZM)
 I $G(@$$^W4PRM@("WEB","PAIDIT")),$$LKHN^W4HZMST(HZM)=@$$^W4PRM@("WEB","PAIDIT"),'$$^W4HZMH(HZM),$$CODTS^W4HZMST(HZM)=12 D PAIDIT(HZM)
 ;;I $G(@$$^W4PRM@("WEB","PAIDIT")),$$LKHN^W4HZMST(HZM)=@$$^W4PRM@("WEB","PAIDIT"),'$$^W4HZMH(HZM),$$CODTS^W4HZMST(HZM)=3 D PAIDITCA(HZM)
 I $$MKRDLV^W4HZMST(HZM)=30,'$$^W4HZMH(HZM),$$CODTS^W4HZMST(HZM)=3 D PAIDITCA(HZM)
 ;;I $$CIBINT(HZM),'$$^W4HZMH(HZM) D PAYCIBINT(HZM) G ENDCYC
 ;
 I $$CODTS^W4HZMST(HZM)=8,'$$^W4HZMH(HZM) D  G ENDCYC
 .N LKCIB S LKCIB=$G(@$$^W4PRM@("WEB","CIBUS")) Q:LKCIB=""
 .D PUT^W4HZMST(HZM,"LKHN",LKCIB)
 .D PAYCIBINT(HZM)
 ;
ENDCYC ;
 I $G(@$$^W4PRM@("AUTOMZM")),'$D(@$$^W4ORD@(HZM,"ER","V")),$$TSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM) D
 .S $P(@$$^W4ORD@(HZM,"CB"),"\",2)=$$TSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
 .D ^W4T(HZM,1)
 ;
ENDT
 D KILL
 L  Q  ;
 ;
 ;
KILL ;
 Q
ER(ER) ;
 Q
 ;
STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,ISHUR) ;
 N (HZM,ER,STRIN,VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,JB)
 I $G(@$$^W4PRM@("CHKCVV22")) S ASHCVV2=2
 S STRIN=""
 S KUP=901
 S TSHL=$$TSHL^W4HZMST(HZM)
 I TSHL<0,ASHSUM>0 S ASHSUM=-ASHSUM ;-- LEV 10/11/19
 I '$G(ASHSUM) S PAY=$J($J(TSHL,2,2)*100,0,0)
 I $G(ASHSUM) S PAY=$J($J(ASHSUM,2,2)*100,0,0)
 S SUGIS=1
 S SUGIS1=SUGIS
 S SUGAS=1
 S SUGMTB=1
 S SUGMRB=1
 S AUTHNO=$S($G(ISHUR):ISHUR,1:"0000000")
 S (P1,PC,PN)=0
 S (PF,PG,PH)=0
 S SUGBC=51
 ;
 D ^W4STRIN
 Q
 ;
 ;
CA(HZM) ;
 N (HZM,ER,STA,JB)
 D WB
 N CRED
 S CRED=$G(@$$^W4ORD@(HZM,"CREDCARD")) Q:CRED=""
 ;
 S CR=$P(CRED,"~",1)
 S CRCA=$P(CRED,"~",5)
 ;
 I CR?1N,CRCA'[";" D  G CATS
 .N VT S VT=CR
 .I 'VT,$$MSDR^W4PRM=6 S VT=1
 .S CA=CRCA
 .D CA1(VT,CA)
 ;
 S CR=$TR(CR,"^",";")
 I CR?1N1";".E!(CR?1N&(CRCA[";")) D  G CATS
 .N J,VT,CA F J=1:1:$L(CRCA,";") D
 ..S VT=$P(CR,";",J)
 ..I 'VT,$$MSDR^W4PRM=6 S VT=1
 ..Q:'VT
 ..S CA=$P(CRCA,";",J)
 ..D CA1(VT,CA)
 ;
 S VIZ0=$P(CRED,"~")
 S YYMM0=$P(CRED,"~",2)
 S ASHTZ0=$P(CRED,"~",3)
 S ASHCVV20=$P(CRED,"~",4)
 S ASHSUM0=$P(CRED,"~",5)
 ;
 S SSHUL=0
 F ICA=1:1:$L(VIZ0,";") D
 .S VIZ=$P(VIZ0,";",ICA)
 .S YYMM=$P(YYMM0,";",ICA)
 .S ASHTZ=$P(ASHTZ0,";",ICA)
 .S ASHSUM=$P(ASHSUM0,";",ICA)
 .S ASHCVV2=$P(ASHCVV20,";",ICA)
 .I 'ASHCVV2 S ASHCVV2=2
 .S YYMM=$$YYMM(YYMM)
 .I ASHTZ["-" S ASHTZ=$P(ASHTZ,"-")
 .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 .S SSHUL=SSHUL+ASHSUM
 .I SSHUL-TSHL<1,SSHUL-TSHL>0 S ASHSUM=ASHSUM+(TSHL-SSHUL)
 .E  I TSHL-SSHUL<1,TSHL-SSHUL>0 S ASHSUM=ASHSUM+(TSHL-SSHUL)
 .I TSHL<0,ASHSUM>0 S ASHSUM=-ASHSUM
 .D STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM) Q:'$L($G(STRIN))
 .D TS("V",STRIN)
 ;
CATS ;
 S @$$^W4ORD@(HZM,"TSAUTO")=$H
 S MAC1="@$$^W4ORD@(HZM,""CB"",""V"")",MAC2="^THZ(WB,HZM,""CB"",""V"")"
 D ^%S1GC1
 D ^W4T(HZM,1)
 Q
 ;
 ;
CA1(VT,CA)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 Q:'$G(VT) 
 I '$G(CA) Q
 I TSHL<0,CA>0 S CA=-CA ; -- LEV 10/11/19
 N IND S IND=$O(@$$^W4ORD@(HZM,"CB","V",9999),-1)+1
 S @$$^W4ORD@(HZM,"CB","V",IND)="$V"_VT_"*"_$$^W4VT(VT)_"****"_$J(CA,2,2)_"*"_$J(CA,2,2)_"*"
 Q
 ;
TS(SUGT,STRIN) ;
 N (HZM,SUGT,STRIN,SOUT,ER,STA,JB)
 S ER=""
 ;
 I SUGT="V" D  Q  ; ----------- TASHLUM BE CA
 .D ^W4IN
 .N A S A=$$INOUT^W4PAYCA(STRIN)
 .;
 .N ERCA S ERCA=$P(A,"~",2)
 .I ERCA'="000" D PCATTN(HZM,ERCA)
 .
 .I ERCA="003",$G(@$$^W4PRM@("ISHFCT")) D
 ..S STRIN=$P(STRIN,"E")_"E1111111"_$E($P(STRIN,"E",2),8,300)
 ..S A=$$INOUT^W4PAYCA(STRIN)
 .S ER=$P(A,"~"),STA=ERCA,S21=""
 .S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 .
 .I +$P(STRIN,"C",2)'=+$E(SOUT,36,43) D  S ER=999 Q
 ..S INDV=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 ..S @$$^W4ORD@(HZM,"ER","V",INDV,"STRIN")=$G(STRIN)
 ..S @$$^W4ORD@(HZM,"ER","V",INDV,"STROU")=$S($L(SOUT)>3:SOUT,1:STA)
 .
 .S S21="" I 'STA,$L(TRAN)!$$EMV^W4PRM D
 ..S S21=$$^W4TRAN(SOUT,TRAN)
 .;
 .S SUMT=$P(S21,"*",7) ;;Q:'SUMT
 .S STIP=$$STIP^W4HZMST(HZM)
 .S INDV=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .S @$$^W4ORD@(HZM,"CB","V",INDV)=S21
 .S SSHUL=$$SSHUL^W4HZMST(HZM)
 .S TSHL=$$TSHL^W4HZMST(HZM)
 .S TIP=SSHUL-STIP-TSHL
 .I TIP'<1,TSHL>0 D
 ..S $P(@$$^W4ORD@(HZM,"CB","V",INDV),"*",27)=TIP
 .S @$$^W4ORD@(HZM,"CB","V",INDV,"STRIN")=$G(STRIN)
 .S @$$^W4ORD@(HZM,"CB","V",INDV,"STROU")=$G(SOUT)
 .I $G(@$$^W4PRM@("HZMH")),$G(@$$^W4PRM@("HZMH"))=$G(@$$^W4PRM@("WEB","PAR")) Q  ; -- GIRAF
 .N INDL
 .S INDL=$O(@$$^W4ORD@(HZM,99999),-1)
 .I INDL D
 ..N CDL S CDL=$P($G(@$$^W4ORD@(HZM,INDL)),"\") Q:CDL=""
 ..I CDL=$G(@$$^W4PRM@("HZMH")) K @$$^W4ORD@(HZM,INDL)
 Q
 ;
 ;
WCPAYK(UID,SUM) ;
 S ER=0 D ^WCIN
 S APP=$G(@$$^WCG@("APP"))
 D ^WCADKPOR(UID,"1234",SUM,180)
 ;
 D ^WCIN
 I '$D(WCV) S ER=-9 G END
 I WCV("RES")'=WCC("OK")!'$D(WCV("OID")) S ER=-2 G END
 I WCV("OID")=WCC("NOACK") S ER=-3 G END
 I WCV("OID")=22 S ER=-4 G END
 I WCV("OID")<999 S ER=-5 G END
 ;
 S RES=$$^WCSNDACK(WCV("OID"))
 I RES'=WCC("OK") S @$$^WCG@("NCOID")=WCV("OID") S ER=RES G END
 S ER=0
END Q ER_"*"_$G(WCV("SUM"))_"*"_$G(WCV("OID"))_"***"_$G(UID)_"*"_$G(UIC)
 ;
ZERO(M) ;
 Q $TR($J(M,2)," ",0)
 ;
TL(HZM) ;
 D WB
 N SUM,I S SUM=$J($$TSHL^W4HZMST(HZM),2,2)
 I $G(@$$^W4ORD@(HZM,"SHUL")) S SUM=$G(^("SHUL"))
 S $P(@$$^W4ORD@(HZM,"CB"),"\",9)=SUM
 S I=$O(@$$^W4ORD@(HZM,"CB","TL",9999),-1)+1
 S @$$^W4ORD@(HZM,"CB","TL",I)="0*"_SUM
 S @$$^W4ORD@(HZM,"TSAUTO")=$H
 S MAC1="@$$^W4ORD@(HZM,""CB"",""TL"")",MAC2="^THZ(WB,HZM,""CB"",""TL"")"
 I (SUM+5)<$$TSHL^W4HZMST(HZM) S $P(@$$^W4ORD@(HZM),"\",21)=1
 D ^%S1GC1
 D ^W4T(HZM,1)
 Q
 ;
YYMM(MMYY) ;
 N YYMM
 I MMYY["/" S YYMM=$$ZERO($P(MMYY,"/",2))_$$ZERO($P(MMYY,"/",1)) Q YYMM
 Q $E(MMYY,3,4)_$E(MMYY,1,2)
 ;
WB ;
 S WB=$$^W4MYDVN
 Q
 ;
CIBINT(HZM) ;
 I $G(@$$^W4ORD@(HZM,"CIBINT")) Q 1
 I $$CODTS^W4HZMST(HZM)=8&($$LKHN^W4HZMST(HZM)=$G(@$$^W4PRM@("WEB","CIBUS"))) Q 1
 Q 0 
 ;
PCATTN(HZM,ERCA) ; 
 N PRINT,%MDP
 S PRINT=$G(@$$^W4PRM@("MDPMSL")) Q:PRINT<3
 D TV^W4MDP(6)
 N TXT
 D PC($TR($J("",19)," ","*"))
 D PC("")
 D PC("!!!   al eniy   !!!")
 D PC("")
 D PC("   "_$J(HZM,7)_" dpnfd   ")
 D PC("")
 D PC("   ! xar `l melyz  ")
 D PC("")
 D PC(" "_ERCA_" d`iby cew ")
 D PC("")
 D PC(" "_$ZD($H,"DD.MM.YY  24:60")_" ")
 D PC("")
 D PC($TR($J("",19)," ","*"))
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
PC(TXT) ; 
 L +@$$^W4PC@(PRINT):2
 N PCN S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 S TXT=$G(%MDP("B"))_TXT_$G(%MDP("N"))
 S @$$^W4PC@(PRINT,PCN)=$TR(TXT,TS0,TSS)
 L -@$$^W4PC@(PRINT)
 Q 
 ;
 ;
ASR(HZM) ; 
 N (JB,%ARG,HZM,RES)
 S ASR=$G(@$$^W4ORD@(HZM,"ASR")) Q:'ASR
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM) Q:'LKHN
 ;
 I LKHN,'$$ISCR^W4L(LKHN) D
 .I '$D(@$$^W4GL("LKH")@(LKHN)) S @$$^W4GL("NAME")@(LKHN)=$$NAME^W4HZMST(HZM)
 .D PUT^W4L(LKHN,"ISCR",1)
 .D PUT^W4L(LKHN,"GDCR",999999)
 ;
 S TIPAS=$$SSHUL^W4HZMST(HZM)+ASR-$$STIP^W4HZMST(HZM)-$$TSHL^W4HZMST(HZM)
 I TIPAS<1 S TIPAS=0
 ;
 S (LKAH,LKHNH)=0 ; ?
 S (HRA,LKHR)=""
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR 
 Q
 ;
PAYTNB(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=@$$^W4ORD@(HZM,"TNBPAY")
 S (LKHN,CUSN)=$G(@$$^W4PRM@("WEB","10BIS"))
 S CARD=$P($G(@$$^W4ORD@(HZM,"TNBCARD")),";")
 ;
 I $$HRAED^W4HZMST(HZM)'[":10B",CARD D  Q
 .D PUT^W4TMPPAY(10,"CARDNUMBER",CARD)
 .D PUT^W4TMPPAY(10,"SUM",ASRL)
 .D PAYTB^W4PAYKB(HZM)
 ;
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 ;
 ;;I ASRL[":" D  ; *** LEV 16/06/16 --> COMMENT ( OTHER TWICE DISCOUNT )
 .S LKHNH=$P(ASRL,":",3)
 .S ASR=ASR+$P(ASRL,":",2)
 ;
 S (BLIPR,P1TNOPR,TIPAS)=""
 I ASR>$$ITRARL^W4HZMST(HZM) S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D ^W4ASR
 ;;D ^W4T(HZM,1) ;; 06/06/18
 ;;I $$ITRARL^W4HZMST(HZM)>0,'$$^W4CLOSE(HZM) S $P(@$$^W4ORD@(HZM),"\",21)=1 ; -- 05/01/18 -> COMMENT
 Q
 ;
 ;
PAYCIB(HZM) ; 
 N (JB,%ARG,HZM,RES)
 S CARD=$G(@$$^W4ORD@(HZM,"CIBCARD"))
 S ASRL=$$TSHL^W4HZMST(HZM)
 S @$$^W4GL("WCPROT")@($$^W4DZ,HZM,CARD,ASRL)=$ZD($H,"DD.MM.YY  24:60")
 S RES=$$WCPAYK(CARD,ASRL) Q:+RES
 S CIBCARD=$P(RES,"*",4)
 S CIBCID=$P(RES,"*",5),CIBUID=$P(RES,"*",6),CIBUIC=$P(RES,"*",7)
 S HZMLK=$P(RES,"*",3)
 S (LKHN,CUSN)=$G(@$$^W4PRM@("CIBUS"))
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S ASR=$P(RES,"*",2) Q:'ASR
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR 
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
 ;
PAYCIBINT(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$$TSHL^W4HZMST(HZM)-$$SHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM)
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM) Q:'LKHN
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
 ;
PAYSO(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=@$$^W4ORD@(HZM,"FOODPAY")
 S (LKHN,CUSN)=$G(@$$^W4PRM@("WEB","FOOD"))
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
 ;
PAYCPH(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$$TSHL^W4HZMST(HZM)
 S (LKHN,CUSN)=$G(@$$^W4PRM@("WEB","CPHON"))
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR
 Q
 ;
 ;
PAYASR(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$$TSHL^W4HZMST(HZM)
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM)
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
PAYMSH(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=@$$^W4ORD@(HZM,"MSHPAY")
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM)
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 D
 .N ASRL0 S ASRL0=ASRL N ASRL
 .I ASRL0'[";" D ^W4ASR Q
 .N J F J=1:1:$L(ASRL0,";") D
 ..S (ASR,ASRL)=$P(ASRL0,";",J) Q:'ASR
 ..D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
 ;
PAIDIT(HZM) ; 
 N (JB,%ARG,%REM,HZM)
 D GA^W4SCREF("P1HZ",$$^W4ORD_"(HZM)") S HNHS=HNH
 S P1DZ=$$^W4DZ
 S CHK=$$ITRA^W4HZMST(HZM)
 S NCAB=""
 S DAT=$ZD($H,"DDMMYY")
 S SHUL=$$SHUL^W4HZMST(HZM)+CHK
 S SCHK=$P($G(@$$^W4ORD@(HZM,"CB")),"\",3)+CHK
 S @$$^W4ORD@(HZM,"CB")=NCAB_"\\"_SCHK_"\\\"_P1DZ_"\"_$H_"\\\\\\\"_$$^W4MYDVN
 S IND=$O(@$$^W4ORD@(HZM,"CB","CH",999),-1)+1
 S @$$^W4ORD@(HZM,"CB","CH",IND)=CHK_"*B***B*"_DAT
 S $P(@$$^W4ORD@(HZM),"\",12)=SHUL
 I '$D(@$$^W4ORD@(HZM,"MKRDLV")) S ^("MKRDLV")=30
 ;
 D SETPOS^W4HZMST(HZM,"CH",IND)
 ;
 S SUM=CHK I SUM D
 .S CODDOC="HZ",DATE=DAT,COD="F",CUSN=NMB,NUMBER=HZM
 .Q:$L(CUSN)<4
 .D ^W4KLINIT D ^W4KLUP
 ;
 D PRINT^W4T1
 ;
 I '$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 Q
 ;
 ;
PAIDITCA(HZM) ; 
 N (JB,%ARG,%REM,HZM)
 D GA^W4SCREF("P1HZ",$$^W4ORD_"(HZM)") S HNHS=HNH
 S P1DZ=$$^W4DZ
 S CA=$$ITRA^W4HZMST(HZM)
 S NCAB=""
 S DAT=$ZD($H,"DDMMYY")
 S SHUL=$$SHUL^W4HZMST(HZM)+CA
 S SCA=$P($G(@$$^W4ORD@(HZM,"CB")),"\",4)+CA
 S @$$^W4ORD@(HZM,"CB")=NCAB_"\\\"_CA_"\\"_P1DZ_"\"_$H_"\\\\\\\"_$$^W4MYDVN
 S IND=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 S @$$^W4ORD@(HZM,"CB","V",IND)="$V*****"_CA_"*"_CA
 S $P(@$$^W4ORD@(HZM),"\",12)=SHUL
 S $P(@$$^W4ORD@(HZM),"\",21)=3
 ;
 D SETPOS^W4HZMST(HZM,"V",IND)
 ;
 S SUM=CA I SUM D
 .S CODDOC="HZ",DATE=DAT,COD="F",CUSN=NMB,NUMBER=HZM
 .Q:$L(CUSN)<4
 .D ^W4KLINIT D ^W4KLUP
 ;
 D PRINT^W4T1
 ;
 I '$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TSAUTO
W4TSAUTO(HZM) ; [ 26.08.26 14:06 ] [ 29.07.26 13:36 ] [ 28.07.26 04:28 ] 
 N (HZM,JB,%ARG,%REM) D ^W4IN
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S %SCRN="P1HZ" S SHUL=0,SHULA=0,SCA=0,SAS=0,KUP=901
 L +@$$^W4ORD@(HZM):2
 D WB
 D GA^W4SCREF("P1HZ",$$^W4ORD_"(HZM)") S HNHS=HNH
 ;
 I $G(@$$^W4ORD@(HZM,"S"))>1 G ENDT
 ;;I $D(@$$^W4ORD@(HZM,"CB","V")) G ENDT
 ;;I $D(@$$^W4ORD@(HZM,"CB","ASR")) G ENDT
 ;
 ;;K @$$^W4ORD@(HZM,"CB")
 ;
 S @$$^W4ORD@(HZM,"TSAUTO")=$H
 D PUT^%W1PRM("TSAUTO",1)
 ;
 I $$KIOSK(HZM),$G(@$$^W4ORD@(HZM,"MKRDLV"))'=30 S @$$^W4ORD@(HZM,"MKRDLV")=92
 ;
 I $D(@$$^W4ORD@(HZM,"MSHPAYM")) D PIZULM(HZM) G ENDCYC ; -- PIZUL MISHLOHA
 ;
 I $$CODTS^W4HZMST(HZM)=5!$G(@$$^W4ORD@(HZM,"SHUL")) D TL(HZM) G ENDCYC
 ;
 I $G(@$$^W4ORD@(HZM,"ASR")),'$$^W4HZMH(HZM) D ASR(HZM)
 ;
 I $D(@$$^W4ORD@(HZM,"CREDCARD"))!($$CODTS^W4HZMST(HZM)=3),'$$^W4HZMH(HZM) D CA(HZM)
 I $G(@$$^W4ORD@(HZM,"ASR")),'$$^W4HZMH(HZM) G ENDCYC
 ;
 N CIBHRA S CIBHRA=$$CIBHRA(HZM)
 I CIBHRA,$G(@$$^W4PRM@("CIBUS")),$D(@$$^WCG)>9,'$$^W4HZMH(HZM) D
 .S @$$^W4ORD@(HZM,"CIBCARD")=$P(CIBHRA,"~")
 .S @$$^W4ORD@(HZM,"CIBSUM")=$P(CIBHRA,"~",2)
 .S ^TSAUTO(HZM)="CIB"
 ;
 I $G(@$$^W4ORD@(HZM,"CIBCARD")),$G(@$$^W4PRM@("CIBUS")),$D(@$$^WCG)>9,'$$^W4HZMH(HZM) D PAYCIB(HZM) G TNB
 ;
 I $$CODTS^W4HZMST(HZM)=8!$G(@$$^W4ORD@(HZM,"CIBSUM")),'$$^W4HZMH(HZM) D
 .N LKCIB S LKCIB=$G(@$$^W4PRM@("WEB","CIBUS"))
 .I 'LKCIB S LKCIB=$G(@$$^W4PRM@("CIBUS")) Q:'LKCIB
 .D PUT^W4HZMST(HZM,"LKHN",LKCIB)
 .D PAYCIBINT(HZM)
 ;
 I $$CODTS^W4HZMST(HZM)=14!$G(@$$^W4ORD@(HZM,"BUYMESUM")),'$$^W4HZMH(HZM) D
 .N LKBUYME S LKBUYME=$G(@$$^W4PRM@("WEB","BUYME")) Q:LKBUYME=""
 .D PUT^W4HZMST(HZM,"LKHN",LKBUYME)
 .D PAYBUYME(HZM)
 ;
TNB
 N TNBHRA S TNBHRA=$$TNBHRA(HZM)
 I TNBHRA,'$$^W4HZMH(HZM) D
 .S @$$^W4ORD@(HZM,"TNBCARD")=$P(TNBHRA,"~")
 .S @$$^W4ORD@(HZM,"TNBPAY")=$P(TNBHRA,"~",2)
 .S ^TSAUTO(HZM)="TB"
 ;
 I '$$NOTNBPAY^W4PRM,$G(@$$^W4ORD@(HZM,"TNBPAY")),'$$^W4HZMH(HZM) D PAYTNB(HZM)
 ;
 D
 .I $G(@$$^W4ORD@(HZM,"MKRDLV"))=55,'$$^W4HZMH(HZM) D PAYCPH(HZM) Q
 .I '$$^W4HZMH(HZM),$G(@$$^W4ORD@(HZM,"CPHPAY")) D PAYCPH(HZM)
 ;
 I $G(@$$^W4ORD@(HZM,"FOODPAY")),'$$^W4HZMH(HZM) D PAYSO(HZM)
 ;
 I $G(@$$^W4ORD@(HZM,"MSHPAY")),'$$^W4HZMH(HZM) D PAYMSH(HZM)
 ;
 I $G(@$$^W4PRM@("WEB","CLRX")),$$LKHN^W4HZMST(HZM)=@$$^W4PRM@("WEB","CLRX"),'$$^W4HZMH(HZM) D PAYASR(HZM)
 ;
 I $$MKRDLV^W4HZMST(HZM)=30,'$$^W4HZMH(HZM),$$CODTS^W4HZMST(HZM)=3 D PAIDITCA(HZM)
 I $G(@$$^W4PRM@("WEB","PAIDIT")),$$LKHN^W4HZMST(HZM)=@$$^W4PRM@("WEB","PAIDIT"),'$$^W4HZMH(HZM),$$CODTS^W4HZMST(HZM)=12 D PAIDIT(HZM)
 ;
 I (";"_$$CODTS^W4HZMST(HZM)_";")[(";3;"),'$D(@$$^W4ORD@(HZM,"CB","V",1)) D CA(HZM)
 ;
ENDCYC ;
 N PRMZ S PRMZ=0 I '$D(@$$^W4ORD@(HZM,"ER","V")),$$ITRA^W4HZMST(HZM)!($G(CODTS)=15) S PRMZ=1
 I $G(@$$^W4PRM@("AUTOMZM")),PRMZ D SGMZAUTO(HZM) G ENDT
 I PRMZ,$$^W4KIOSKO(HZM),$G(@$$^W4PRM@("KSKSGMZ")) D SGMZAUTO(HZM) G ENDT
 I PRMZ,$$TAKEAWAY^W4HZMST(HZM),$G(@$$^W4PRM@("TAWSGMZ")) D SGMZAUTO(HZM) G ENDT
 I PRMZ,$$HZM^W4MSL(HZM),$$WEBORD^W4HZMST(HZM),$$HZAFTPAY^W4PRM D 
 .I $$^W4KIOSKO(HZM) Q
 .I $$ITRA^W4HZMST(HZM)>0 D PUT^W4HZMST(HZM,"CODTS",1) Q
 .I $$CODTS^W4HZMST(HZM)="" D PUT^W4HZMST(HZM,"CODTS",1)
 ;
ENDT
 D KILL
 L  Q  ;
 ;
 ;
KILL ;
 D KILL^%W1PRM("TSAUTO")
 Q
 ;
ER(ER) ;
 Q
 ;
STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,ISHUR) ;
 N (HZM,ER,STRIN,VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM,JB)
 I $G(@$$^W4PRM@("CHKCVV22")) S ASHCVV2=2
 S STRIN=""
 S KUP=901
 S TSHL=$$TSHL^W4HZMST(HZM)
 I TSHL<0,ASHSUM>0 S ASHSUM=-ASHSUM ;-- LEV 10/11/19
 I '$G(ASHSUM) S PAY=$J($J(TSHL,2,2)*100,0,0)
 I $G(ASHSUM) S PAY=$J($J(ASHSUM,2,2)*100,0,0)
 S SUGIS=1
 S SUGIS1=SUGIS
 S SUGAS=1
 S SUGMTB=1
 S SUGMRB=1
 S AUTHNO=$S($G(ISHUR):ISHUR,1:"0000000")
 S (P1,PC,PN)=0
 S (PF,PG,PH)=0
 S SUGBC=51
 ;
 D ^W4STRIN
 Q
 ;
 ;
CA(HZM) ;
 N (HZM,ER,STA,JB)
 D WB
 N CRED
 S CRED=$G(@$$^W4ORD@(HZM,"CREDCARD"))
 ;
 S CR=$P(CRED,"~",1)
 S CRCA=$P(CRED,"~",5)
 I 'CRCA S CRCA=$$ITRA^W4HZMST(HZM)
 S TRID=$P(CRED,"~",6)
 ;
 I 'CR,$G(@$$^W4PRM@("VTDFLTAU")) D
 .S CR=^("VTDFLTAU")
 ;
 I CR="gift" S CR=$$GFC^W4VT
 ;
 I CR?1N,CRCA'[";" D  G CATS
 .N VT S VT=CR
 .S CA=CRCA
 .D CA1(VT,CA,TRID)
 ;
 S CR=$TR(CR,"^",";")
 ;
 I CR?1N1";".E!(CR?1N&(CRCA[";"))!(CR?1A.E) D  G CATS
 .N J,VT,CA,TRIDJ F J=1:1:$L(CRCA,";") D
 ..S VT=$P(CR,";",J)
 ..S VT=$TR(VT," ","")
 ..I VT?1A.A S VT=$$GETVT^W4VT(VT)
 ..Q:'VT
 ..S CA=$P(CRCA,";",J)
 ..S TRIDJ=$P(TRID,";",J)
 ..D CA1(VT,CA,TRIDJ)
 ;
 I 'CR Q
 ;
 S VIZ0=$P(CRED,"~")
 S YYMM0=$P(CRED,"~",2)
 S ASHTZ0=$P(CRED,"~",3)
 S ASHCVV20=$P(CRED,"~",4)
 S ASHSUM0=$P(CRED,"~",5)
 ;
 S SSHUL=0
 F ICA=1:1:$L(VIZ0,";") D
 .S VIZ=$P(VIZ0,";",ICA)
 .S YYMM=$P(YYMM0,";",ICA)
 .S ASHTZ=$P(ASHTZ0,";",ICA)
 .S ASHSUM=$P(ASHSUM0,";",ICA)
 .S ASHCVV2=$P(ASHCVV20,";",ICA)
 .I 'ASHCVV2 S ASHCVV2=2
 .S YYMM=$$YYMM(YYMM)
 .I ASHTZ["-" S ASHTZ=$P(ASHTZ,"-")
 .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 .S SSHUL=SSHUL+ASHSUM
 .I SSHUL-TSHL<1,SSHUL-TSHL>0 S ASHSUM=ASHSUM+(TSHL-SSHUL)
 .E  I TSHL-SSHUL<1,TSHL-SSHUL>0 S ASHSUM=ASHSUM+(TSHL-SSHUL)
 .I TSHL<0,ASHSUM>0 S ASHSUM=-ASHSUM
 .D STRIN(VIZ,YYMM,ASHTZ,ASHCVV2,ASHSUM) Q:'$L($G(STRIN))
 .D TS("V",STRIN)
 ;
CATS ;
 ;;S @$$^W4ORD@(HZM,"TSAUTO")=$H
 S MAC1="@$$^W4ORD@(HZM,""CB"",""V"")",MAC2="^THZ(WB,HZM,""CB"",""V"")"
 D ^%S1GC1
 D ^W4T(HZM,1)
 Q
 ;
 ;
CA1(VT,CA,TRID)
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 ;
 Q:'$G(VT) 
 I '$G(CA) Q
 I TSHL<0,CA>0 S CA=-CA ; -- LEV 10/11/19
 N IND S IND=$O(@$$^W4ORD@(HZM,"CB","V",9999),-1)+1
 N ST S ST="$V"_VT_"*"_$$^W4VT(VT)_"****"_$J(CA,2,2)_"*"_$J(CA,2,2)_"*"
 S $P(ST,"*",31)=TRID
 S @$$^W4ORD@(HZM,"CB","V",IND)=ST
 D SETTIPCA(HZM,IND)
 Q
 ;
TS(SUGT,STRIN) ;
 N (HZM,SUGT,STRIN,SOUT,ER,STA,JB)
 S ER=""
 ;
 I SUGT="V" D  Q  ; ----------- TASHLUM BE CA
 .D ^W4IN
 .N A S A=$$INOUT^W4PAYCA(STRIN)
 .;
 .N ERCA S ERCA=$P(A,"~",2)
 .I ERCA'="000" D PCATTN(HZM,ERCA)
 .
 .I ERCA="003",$G(@$$^W4PRM@("ISHFCT")) D
 ..S STRIN=$P(STRIN,"E")_"E1111111"_$E($P(STRIN,"E",2),8,300)
 ..S A=$$INOUT^W4PAYCA(STRIN)
 .
 .S ER=$P(A,"~"),STA=ERCA,S21=""
 .S SOUT=$P(A,"~",4),TRAN=$P(A,"~",5)
 .S UID=$P(A,"~",6)
 .S VUID=$P(A,"~",7)
 .
 .N HZ S HZ=+$E(VUID,1,10)
 .I $$EMV^W4PRM=4 S HZ=$P(VUID,"_",4)
 .;;I HZ,HZ'=HZM S HZM=HZ
 .
 .I +$P(STRIN,"C",2)'=+$E(SOUT,36,43)!(ERCA'="000") D  S ER=999 Q
 ..S INDV=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 ..S @$$^W4ORD@(HZM,"ER","V",INDV,"STRIN")=$G(STRIN)
 ..S @$$^W4ORD@(HZM,"ER","V",INDV,"STROU")=$S($L(SOUT)>3:SOUT,1:STA)
 .
 .S S21="" I 'STA,$L(TRAN)!$$EMV^W4PRM D
 ..S S21=$$^W4TRAN(SOUT,TRAN)
 .;
 .S SUMT=$P(S21,"*",7) ;;Q:'SUMT
 .S INDV=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .S @$$^W4ORD@(HZM,"CB","V",INDV)=S21
 .D SETTIPCA(HZM,INDV)
 .S @$$^W4ORD@(HZM,"CB","V",INDV,"STRIN")=$G(STRIN)
 .S @$$^W4ORD@(HZM,"CB","V",INDV,"STROU")=$G(SOUT)
 .I $G(UID) S @$$^W4ORD@(HZM,"CB","V",INDV,"UID")=UID
 .I $G(@$$^W4PRM@("HZMH")),$G(@$$^W4PRM@("HZMH"))=$G(@$$^W4PRM@("WEB","PAR")) Q  ; -- GIRAF
 .N INDL
 .S INDL=$O(@$$^W4ORD@(HZM,99999),-1)
 .I INDL D
 ..N CDL S CDL=$P($G(@$$^W4ORD@(HZM,INDL)),"\") Q:CDL=""
 ..I CDL=$G(@$$^W4PRM@("HZMH")) K @$$^W4ORD@(HZM,INDL)
 Q
 ;
 ;
SETTIPCA(HZM,INDV)
 N SSHUL,TSHL,TIP,STIP
 S STIP=$$STIP^W4HZMST(HZM)
 S SSHUL=$$SSHUL^W4HZMST(HZM)
 S TSHL=$$TSHL^W4HZMST(HZM)
 S TIP=SSHUL-STIP-TSHL
 I TIP'<1,TSHL'<0 D
 .S $P(@$$^W4ORD@(HZM,"CB","V",INDV),"*",27)=TIP
 .S $P(@$$^W4ORD@(HZM,"CB"),"\",10)=$P($G(@$$^W4ORD@(HZM,"CB")),"\",10)+TIP
 S $P(@$$^W4ORD@(HZM,"CB","V",INDV),"*",29)=$H
 Q
 ;
 ;
WCPAYK(UID,SUM) ;
 S ER=0 D ^WCIN
 S APP=$G(@$$^WCG@("APP"))
 D ^WCADKPOR(UID,"1234",SUM,180)
 ;
 D ^WCIN
 I '$D(WCV) S ER=-9 G END
 I WCV("RES")'=WCC("OK")!'$D(WCV("OID")) S ER=-2 G END
 I WCV("OID")=WCC("NOACK") S ER=-3 G END
 I WCV("OID")=22 S ER=-4 G END
 I WCV("OID")<999 S ER=-5 G END ; -- 13/09/23
 ;
 S RES=$$^WCSNDACK(WCV("OID"))
 I RES'=WCC("OK") S @$$^WCG@("NCOID")=WCV("OID") S ER=RES G END
 S ER=0
END Q ER_"*"_$G(WCV("SUM"))_"*"_$G(WCV("OID"))_"***"_$G(UID)_"*"_$G(UIC)
 ;
ZERO(M) ;
 Q $TR($J(M,2)," ",0)
 ;
TL(HZM) ;
 D WB
 N SUM,I S SUM=$J($$TSHL^W4HZMST(HZM),2,2)
 I $G(@$$^W4ORD@(HZM,"SHUL")) S SUM=$G(^("SHUL"))
 S $P(@$$^W4ORD@(HZM,"CB"),"\",9)=SUM
 S I=$O(@$$^W4ORD@(HZM,"CB","TL",9999),-1)+1
 S @$$^W4ORD@(HZM,"CB","TL",I)="0*"_SUM
 S @$$^W4ORD@(HZM,"TSAUTO")=$H
 S MAC1="@$$^W4ORD@(HZM,""CB"",""TL"")",MAC2="^THZ(WB,HZM,""CB"",""TL"")"
 I (SUM+5)<$$TSHL^W4HZMST(HZM) S $P(@$$^W4ORD@(HZM),"\",21)=1
 D ^%S1GC1
 D ^W4T(HZM,1)
 Q
 ;
YYMM(MMYY) ;
 N YYMM
 I MMYY["/" S YYMM=$$ZERO($P(MMYY,"/",2))_$$ZERO($P(MMYY,"/",1)) Q YYMM
 Q $E(MMYY,3,4)_$E(MMYY,1,2)
 ;
WB ;
 S WB=$$^W4MYDVN
 Q
 ;
CIBINT(HZM) ;
 I $G(@$$^W4ORD@(HZM,"CIBINT")) Q 1
 I $$CODTS^W4HZMST(HZM)=8&($$LKHN^W4HZMST(HZM)=$G(@$$^W4PRM@("WEB","CIBUS"))) Q 1
 Q 0 
 ;
PCATTN(HZM,ERCA) ; 
 N PRINT,%MDP
 S PRINT=$$MDPMSL^W4PRM Q:PRINT<3
 D TV^W4MDP(6)
 N TXT
 D PC($TR($J("",19)," ","*"))
 D PC("")
 D PC("!!!   al eniy   !!!")
 D PC("")
 D PC("   "_$J(HZM,7)_" dpnfd   ")
 D PC("")
 D PC("   ! xar `l melyz  ")
 D PC("")
 D PC(" "_ERCA_" d`iby cew ")
 D PC("")
 D PC(" "_$ZD($H,"DD.MM.YY  24:60")_" ")
 D PC("")
 D PC($TR($J("",19)," ","*"))
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
PC(TXT) ; 
 L +@$$^W4PC@(PRINT):2
 N PCN S PCN=$ZP(@$$^W4PC@(PRINT,999999))+1
 I '$D(TS0)!'$D(TSS) D ^%L1TS
 S TXT=$G(%MDP("B"))_TXT_$G(%MDP("N"))
 S @$$^W4PC@(PRINT,PCN)=$TR(TXT,TS0,TSS)
 L -@$$^W4PC@(PRINT)
 Q 
 ;
 ;
ASR(HZM) ; 
 N (JB,%ARG,HZM,RES)
 S ASR=$G(@$$^W4ORD@(HZM,"ASR")) Q:'ASR
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM) Q:'LKHN
 ;
 I LKHN,'$$ISCR^W4L(LKHN) D
 .I '$D(@$$^W4GL("LKH")@(LKHN)) S @$$^W4GL("LKH")@(LKHN)=$$NAME^W4HZMST(HZM)
 .D PUT^W4L(LKHN,"ISCR",1)
 .D PUT^W4L(LKHN,"GDCR",999999)
 ;
 S (LKAH,LKHNH)=0 ; ?
 ;
 I $D(@$$^W4GL("W4LKAH")@(LKHN)) D
 .S LKAH=$$AH^W4L(LKHN)
 .S LKHNH=$J(ASR*LKAH*.01,2,2)
 .S ASR=ASR-LKHNH
 ;
 S TIPAS=$$SSHUL^W4HZMST(HZM)+ASR-$$STIP^W4HZMST(HZM)-$$TSHL^W4HZMST(HZM)
 I TIPAS<1 S TIPAS=0
 S (HRA,LKHR)=""
 ;
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR 
 Q
 ;
 ;
PAYTNB(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$G(@$$^W4ORD@(HZM,"TNBPAY"))
 I $G(^TSAUTO(HZM))="TB" S ^TSAUTO(HZM,1)=""
 ;
 I $G(@$$^W4PRM@("NOTIPTNB")),ASRL'[";" D
 .D PUT^W4HZMST(HZM,"DMSH",0)
 .D ^W4CALC(HZM)
 .S ASRL=$$ITRA^W4HZMST(HZM)
 ;
 I 'ASRL S ASRL=$$ITRA^W4HZMST(HZM)
 ;
 S CARD=$G(@$$^W4ORD@(HZM,"TNBCARD"))
 ;
 ;
 I ASRL'[";" D PAYTNB1(HZM,CARD,ASRL)
 ;
 I ASRL[";" D
 .S CARD=$TR(CARD,"^",";")
 .F II=1:1:$L(ASRL,";") D PAYTNB1(HZM,$P(CARD,";",II),$P(ASRL,";",II))
 Q
 ;
 ;
PAYTNB1(HZM,CARD,ASRL) ;
 N (JB,%ARG,HZM,CARD,ASRL)
 S (LKHN,CUSN)=$G(@$$^W4PRM@("WEB","10BIS"))
 I LKHN="" Q
 ;
 I $$HRAED^W4HZMST(HZM)'[":10B",CARD D  Q
 .D PUT^W4TMPPAY(10,"CARDNUMBER",CARD)
 .D PUT^W4TMPPAY(10,"SUM",ASRL)
 .D PAYTB^W4PAYKB(HZM)
 ;
 I $G(^TSAUTO(HZM))="TB" S ^TSAUTO(HZM,2)=""
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S (BLIPR,P1TNOPR,TIPAS)=""
 ;
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 I ASRL[":" S TIPAS=$P(ASRL,":",2),ASRL=+ASRL
 ;
 S ASR=ASRL
 ;
 I ASR>$$ITRARL^W4HZMST(HZM),'TIPAS S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D ^W4ASR
 I $G(^TSAUTO(HZM))="TB" S ^TSAUTO(HZM,3)=""
 Q
 ;
 ;
PAYCIB(HZM) ; 
 N (JB,%ARG,HZM,RES)
 S CARD=$G(@$$^W4ORD@(HZM,"CIBCARD"))
 ;
 S ASRL=$G(@$$^W4ORD@(HZM,"CIBSUM"))
 I 'ASRL S ASRL=$$ITRA^W4HZMST(HZM)
 ;
 S @$$^W4GL("WCPROT")@($$^W4DZ,HZM,CARD,ASRL)=$ZD($H,"DD.MM.YY  24:60")
 ;
 I ASRL'[";" D PAYCIB1(HZM,CARD,ASRL) Q
 ;
 F I=1:1:$L(ASRL,";") D
 .D PAYCIB1(HZM,$P(CARD,";",I),$P(ASRL,";",I))
 Q
 ;
 ;
PAYCIB1(HZM,CARD,ASRL) ;
 N (JB,%ARG,%REM,HZM,CARD,ASRL,RES)
 I $G(^TSAUTO(HZM))="CIB" S ^TSAUTO(HZM,1)=""
 Q:'CARD  Q:'ASRL
 ;
 S TIPAS=0
 I ASRL[":" S TIPAS=$P(ASRL,":",2),ASRL=+ASRL
 ;
 S RES=$$WCPAYK(CARD,ASRL)
 ;
 I RES S:$G(^TSAUTO(HZM))="CIB" ^TSAUTO(HZM,2)=RES S @$$^W4ORD@(HZM,"CIB","ERR")=RES Q
 I $G(^TSAUTO(HZM))="CIB" I $G(^TSAUTO(HZM))="CIB" S ^TSAUTO(HZM,3)=""
 S CIBCARD=$P(RES,"*",4)
 S CIBCID=$P(RES,"*",5),CIBUID=$P(RES,"*",6),CIBUIC=$P(RES,"*",7)
 S HZMLK=$P(RES,"*",3)
 S (LKHN,CUSN)=$G(@$$^W4PRM@("CIBUS"))
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S ASR=$P(RES,"*",2) Q:'ASR
 I ASR>$$ITRARL^W4HZMST(HZM),'TIPAS S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 S (BLIPR,P1TNOPR)=""
 D ^W4ASR 
 I $G(^TSAUTO(HZM))="CIB" S ^TSAUTO(HZM,4)=""
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
 ;
PAYCIBINT(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$G(@$$^W4ORD@(HZM,"CIBSUM"))
 I 'ASRL S ASRL=$$ITRA^W4HZMST(HZM)
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM) Q:'LKHN
 S (HRA,LKHR)=""
 S (LKAH,LKHNH)=0
 ;
 S ASRL=$$CIBAH(LKHN,ASRL,HZM)
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 I ASRL'[";" D PAYCIBINT1(HZM,ASRL)
 I ASRL[";" D
 .F II=1:1:$L(ASRL,";") D PAYCIBINT1(HZM,$P(ASRL,";",II))
 Q
 ;
PAYCIBINT1(HZM,ASRL) ;
 N ASR,BLIPR,P1TNOPR,TIPAS
 S ASR=ASRL
 S TIPAS=0
 I ASRL[":" S TIPAS=$P(ASRL,":",2),ASRL=+ASRL
 S (BLIPR,P1TNOPR)=""
 I ASR>$$ITRARL^W4HZMST(HZM),'TIPAS S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D ^W4ASR
 Q
 ;
 ;
PAYBUYME(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$G(@$$^W4ORD@(HZM,"BUYMESUM"))
 I 'ASRL S ASRL=$$ITRA^W4HZMST(HZM)
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM) Q:'LKHN
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 I ASR>$$ITRARL^W4HZMST(HZM) S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D ^W4ASR
 Q
 ;
PAYSO(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=@$$^W4ORD@(HZM,"FOODPAY")
 S (LKHN,CUSN)=$G(@$$^W4PRM@("WEB","FOOD"))
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 I ASR>$$ITRARL^W4HZMST(HZM) S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
 ;
PAYCPH(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$G(@$$^W4ORD@(HZM,"CPHPAY"))
 I 'ASRL S ASRL=$$ITRA^W4HZMST(HZM)
 S (LKHN,CUSN)=$G(@$$^W4PRM@("WEB","CPHON"))
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 I ASR>$$ITRARL^W4HZMST(HZM) S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D ^W4ASR
 Q
 ;
 ;
PAYASR(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=$$ITRA^W4HZMST(HZM)
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM)
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 I ASR>$$ITRARL^W4HZMST(HZM) S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D ^W4ASR
 ;;D ^W4T(HZM,1) ; 06/06/18
 Q
 ;
PAYMSH(HZM) ;
 N (JB,%ARG,HZM)
 S ASRL=@$$^W4ORD@(HZM,"MSHPAY")
 S (LKHN,CUSN)=$$LKHN^W4HZMST(HZM)
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 S HZMLK=$$HZMLAK^W4HZMST(HZM)
 S ASR=ASRL
 S (BLIPR,P1TNOPR)=""
 I ASR>$$ITRARL^W4HZMST(HZM) S TIPAS=ASR-$$ITRARL^W4HZMST(HZM)
 D
 .N ASRL0 S ASRL0=ASRL N ASRL
 .I ASRL0'[";" D ^W4ASR Q
 .N J F J=1:1:$L(ASRL0,";") D
 ..S (ASR,ASRL)=$P(ASRL0,";",J) Q:'ASR
 ..D ^W4ASR S TIPAS=0
 Q
 ;
 ;
PAIDIT(HZM) ; -- HAAVARA BANKAIT
 N (JB,%ARG,%REM,HZM)
 D GA^W4SCREF("P1HZ",$$^W4ORD_"(HZM)") S HNHS=HNH
 S P1DZ=$$^W4DZ
 S CHK=$$ITRA^W4HZMST(HZM)
 S NCAB=""
 S DAT=$ZD($H,"DDMMYY")
 S SHUL=$$SHUL^W4HZMST(HZM)+CHK
 S SCHK=$P($G(@$$^W4ORD@(HZM,"CB")),"\",3)+CHK
 S @$$^W4ORD@(HZM,"CB")=NCAB_"\\"_SCHK_"\\\"_P1DZ_"\"_$H_"\\\\\\\"_$$^W4MYDVN
 S IND=$O(@$$^W4ORD@(HZM,"CB","CH",999),-1)+1
 S @$$^W4ORD@(HZM,"CB","CH",IND)=CHK_"*B***B*"_DAT
 S $P(@$$^W4ORD@(HZM),"\",12)=SHUL
 I '$D(@$$^W4ORD@(HZM,"MKRDLV")) S ^("MKRDLV")=30
 ;
 D SETPOS^W4HZMST(HZM,"CH",IND)
 ;
 S SUM=CHK I SUM D
 .S CODDOC="HZ",DATE=DAT,COD="F",CUSN=NMB,NUMBER=HZM
 .Q:$L(CUSN)<4
 .D ^W4KLINIT D ^W4KLUP
 ;
 D PRINT^W4T1
 ;
 I '$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 Q
 ;
 ;
PAIDITCA(HZM) ; 
 N (JB,%ARG,%REM,HZM)
 D GA^W4SCREF("P1HZ",$$^W4ORD_"(HZM)") S HNHS=HNH
 S P1DZ=$$^W4DZ
 S CA=$$ITRA^W4HZMST(HZM)
 S NCAB=""
 S DAT=$ZD($H,"DDMMYY")
 S SHUL=$$SHUL^W4HZMST(HZM)+CA
 S SCA=$P($G(@$$^W4ORD@(HZM,"CB")),"\",4)+CA
 S @$$^W4ORD@(HZM,"CB")=NCAB_"\\\"_CA_"\\"_P1DZ_"\"_$H_"\\\\\\\"_$$^W4MYDVN
 S IND=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 S @$$^W4ORD@(HZM,"CB","V",IND)="$V6*****"_CA_"*"_CA
 S $P(@$$^W4ORD@(HZM),"\",12)=SHUL
 S $P(@$$^W4ORD@(HZM),"\",21)=3
 ;
 D SETPOS^W4HZMST(HZM,"V",IND)
 ;
 S SUM=CA I SUM D
 .S CODDOC="HZ",DATE=DAT,COD="F",CUSN=NMB,NUMBER=HZM
 .Q:$L(CUSN)<4
 .D ^W4KLINIT D ^W4KLUP
 ;
 D PRINT^W4T1
 ;
 I '$$^W4CLOSE(HZM) D ^W4SGHB(HZM)
 Q
 ;
CIBHRA(HZM) ;
 I $G(@$$^W4ORD@(HZM,"S"))>1 Q ""
 I $G(@$$^W4ORD@(HZM,"CIBCARD"))'="" Q "" 
 I $G(@$$^W4ORD@(HZM,"CIBSUM"))'="" Q "" 
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I ITRA'>.5 Q ""
 N HRA S HRA=$$HRA^W4HZMST(HZM)
 I HRA'["ewqceq",HRA'["eqwceq",HRA'["SODEXO" Q ""
 N CARD S CARD=$$NUM(HRA) I $L(CARD)<4 Q ""
 Q CARD_"~"_ITRA 
 ; 
TNBHRA(HZM) ;
 I $G(@$$^W4ORD@(HZM,"S"))>1 Q ""
 I $G(@$$^W4ORD@(HZM,"TNBCARD"))'="" Q "" 
 I $G(@$$^W4ORD@(HZM,"TNBPAY"))'="" Q "" 
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I ITRA'>.5 Q ""
 N HRA S HRA=$$HRA^W4HZMST(HZM)
 I HRA'["qia oz",HRA'["qiapz" Q ""
 N CARD S CARD=$$NUM(HRA) I $L(CARD)<4 Q ""
 Q CARD_"~"_ITRA 
 ; 
NUM(HRA) ; 
 N ST,J,PR S ST=""
 F J=1:1:$L(HRA) D  I $L(ST)>3,$E(HRA,J)'?1N Q
 .I $E(HRA,J)?1N S ST=ST_$E(HRA,J)
 Q ST 
 ;
PIZULM(HZM) ; 
 N CODTS,VT
 N MSHPAY S MSHPAY=$G(@$$^W4ORD@(HZM,"MSHPAYM"))
 N CODTS S CODTS=$P(MSHPAY,"~")
 N VTC,VC S VTC=$P(MSHPAY,"~",2)
 N PAY S PAY=$P(MSHPAY,"~",3)
 S @$$^W4ORD@(HZM,"MKRDLV")=12
 ;
 N I F I=1:1:$L(CODTS,";") D
 .S VT=$P(CODTS,";",I) 
 .
 .I VT=1,$G(@$$^W4PRM@("AUTOMZM")) D  Q
 ..N MZ S MZ=$P(PAY,";",I)
 ..N ST S ST=$J(MZ,2,2)_"*"_$H_"*TSAUTO"
 ..D SETIND^W4HZMST(HZM,"MZ",$$NEWIND^W4HZMST(HZM,"MZ"),ST)
 ..N MZO S MZO=$P($G(@$$^W4ORD@(HZM,"CB")),"\",2)
 ..S $P(@$$^W4ORD@(HZM,"CB"),"\",2)=MZO+MZ
 .
 .I VT=12!(VT=3) D  Q
 ..S VC=$P(VTC,"^",I)
 ..I 'VC,$$MSDR^W4PRM=6 S VC=1 ; -- BALI
 ..I 'VC,$$SF^W4PRM S VC=6
 ..Q:'VC
 ..S CA=$P(PAY,";",I)
 ..D CA1(VC,CA)
 ..S $P(@$$^W3ORD@(HZM),"\",21)=3
 .
 .I VT=4!(VT=11)!(VT=13) D  Q
 ..S ASR=$P(PAY,";",I) Q:'ASR
 ..S HZMLK=$$HZMLAK^W4HZMST(HZM)
 ..S $P(@$$^W4ORD@(HZM),"\",21)=4
 ..N LKHN,CUSN
 ..S (LKHN,CUSN)=$G(@$$^W4PRM@("WEB","MSH")) Q:LKHN=""
 ..S $P(@$$^W4ORD@(HZM),"\",27)=LKHN
 ..;
 ..I '$D(@$$^W4GL("LKH")@(LKHN)) S @$$^W4GL("LKH")@(LKHN)=$$NAME^W4HZMST(HZM)
 ..D PUT^W4L(LKHN,"ISCR",1)
 ..D PUT^W4L(LKHN,"GDCR",999999)
 ..;
 ..S (LKAH,LKHNH)=0 ; ?
 ..S (HRA,LKHR)=""
 ..S (BLIPR,P1TNOPR)=""
 ..D ^W4ASR 
 ;
 I $$ITRA^W4HZMST(HZM)>1 S $P(@$$^W4ORD@(HZM),"\",21)=1
 ;
 I $$TEAV^W4PRM,$$HZM^W4MSL(HZM),'$G(@$$^W4GL("W4TVH2O")@(HZM,"TIME")) D
 .D TVORD^W4T1(HZM)
 Q
 ;
 ;
SGMZAUTO(HZM) ; 
 I $$KIOSK(HZM),CODTS=15 D  G SGMZAUTO1
 .D PUT^W4HZMST(HZM,"CODTS",1)
 .S @$$^W4ORD@(HZM,"KIOSKMZM")=$H
 ;
 I $$KIOSK(HZM),'$G(@$$^W4PRM@("KIOSKMZM")) Q
SGMZAUTO1 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(HZM)
 N ITRA S ITRA=TSHL-$$SSHUL^W4HZMST(HZM)-$$SHULA^W4HZMST(HZM) Q:'ITRA
 I TSHL>0,ITRA<0 Q
 I TSHL<0,ITRA>0 Q
 ;
 N TODT S TODT=$$^%L1DC($$TRH^W4HZMST(HZM),3)
 N TOSHAA S TOSHAA=$$SHAA^W4HZMST(HZM)
 I TODT=($$^W4DZ+1),TODT>$H,TOSHAA>$$SHAAZ^W4PRM Q
 I TODT>($$^W4DZ+1),TODT>$H Q
 ;
 I ITRA<1,ITRA>-1 D  G W4T
 .N HNH2 S HNH2=ITRA
 .N TSHL S TSHL=$$TSHL^W4HZMST(HZM)-HNH2
 .N HNH20 S HNH20=$$HNH2^W4HZMST(HZM)
 .D PUT^W4HZMST(HZM,"HNH2",HNH20+HNH2)
 ;
 N TRID S TRID=$$TRIDMZ^W4HZMST(HZM)
 D MZM1^W4PAYKB(HZM,ITRA,"",TRID) ; -- 23/12/24
 S $P(@$$^W4ORD@(HZM,"CB"),"\",2)=ITRA
 S @$$^W4ORD@(HZM,"SGMZAUTO")=$H
 ;
W4T D ^W4T(HZM,1)
 Q
 ;
KIOSK(HZM)
 Q $$^W4KIOSKO(HZM)
 ;
CIBAH(LKHN,ASRL,HZM) ;
 N DZ,DZD,DMS,KF,TS
 S DZ=$$^W4DZ
 S DZD=$$^%L1DC(DZ,8) 
 N ME,AD,MESHAA,ADSHAA,DAYS
 S ME=$G(@$$^W4PRM@("CIBMVC","MEDAT")) I 'ME Q ASRL
 S AD=$G(@$$^W4PRM@("CIBMVC","ADDAT")) I 'AD Q ASRL
 S MESHAA=$G(@$$^W4PRM@("CIBMVC","MESHAA"))
 S ADSHAA=$G(@$$^W4PRM@("CIBMVC","ADSHAA"))
 S DAYS=$G(@$$^W4PRM@("CIBMVC","DAYS"))
 ;
 I DZ'<$$^%L1DC(ME,3),DZ'>$$^%L1DC(AD,3),LKHN=$G(@$$^W4PRM@("CIBUS")) D
 .N HOUR S HOUR=$ZD($H,"24")
 .I MESHAA,HOUR<MESHAA Q
 .I ADSHAA,HOUR>ADSHAA Q
 .I $L(DAYS),DAYS'[DZD Q
 .S LKAH=$G(@$$^W4PRM@("CIBMVC","HN")),TS=$$TSHL^W4HZMST(HZM)
 .S DMS=$$DMSH^W4HZMST(HZM)
 .S KF=ASRL/TS*DMS
 .S LKHNH=$J((ASRL-(KF*DMS))*LKAH*.01,2,2)
 .S ASRL=ASRL-LKHNH
 Q ASRL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TSF
W4TSF(PAR) ; [ 20.07.23 14:18 ] [ 21.09.22 08:48 ] [ 29.03.22 11:00 ] 
 I $G(PAR)="" Q 0
 I $$DD^W4EZA(PAR)!$$DD^W4EZT(PAR) Q 0
 N OK
 I $$OLDMVC11^W4PRM,'$$^W4AIN,$$UR^W4MENU<3,$D(@$$^W4GL("W4MVC11")) S OK=$$BELONG11(PAR) I $L(OK),OK'["!" Q 1
 I $D(@$$^W4GL("P1EZI")@(PAR))=11,$P(^(PAR),"\",2)="-" Q .5
 I $D(@$$^W4GL("P1EZI")@(PAR))=11 Q 1
 I $D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR)))=11,$P(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR)),"\",2)="-" Q .5
 I $D(@$$^W4GL("P1EZI")@(PAR))>9!($D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR)))>9)!($D(@$$^W4GL("P1EZA")@(PAR))>9)!($D(@$$^W4GL("P1EZT")@(PAR))>9) Q 1
 Q 0
 ;
 ;
BELONG11(PAR,QN) ;
 N (JB,%ARG,PAR,QN)
 N NOQN S NOQN=0
 I '$G(QN) S QN=1,NOQN=1 ; -- BELONG11 BLI QN BODEK IM PARIT SHYAH LE MIVCA
 ;
 N OK S OK=""
 I $D(@$$^W4GL("W4MVC11"))<10 Q OK
 ;
 N GR,GRPAR,MHPAR,DAY1,DAY2,TIM1,TIM2,TIM11,TIM21,MIN,DZ,PR
 S GRPAR=$$SUG^W4P(PAR)
 S MHPAR=$$MH^W4P(PAR)
 S DZ=$$^W4DZ
 S DZ8=$$^%L1DC(DZ,8)
 ;
 S TMP11=$$^W4MAIN("TMP11") K @TMP11
 ;
 N N S N="" F  S N=$O(@$$^W4GL("W4MVC11")@(N)) Q:N=""  D
 .S NMVC=$G(^(N))
 .S ONLY11="" I NMVC["!" S ONLY11="!" ; -- B MATANA LATET RAK OTO PARIT
 .S A=$G(^(N,1))
 .S QNMVC=$P(A,"\",7) S:'QNMVC QNMVC=1
 .S @TMP11@(QNMVC,N)=A
 .S @TMP11@(QNMVC,N,"ONLY11")=ONLY11
 ;
 S NMB=$$NMB^W3HZMST(JB)
 ;
 S QNMVC="" F  S QNMVC=$O(@TMP11@(QNMVC),-1) Q:QNMVC=""  D  Q:$L(OK)
 .N N S N="" F  S N=$O(@TMP11@(QNMVC,N)) Q:N=""  D  Q:$L(OK)
 ..S PR=0,A=$G(^(N))
 ..S ONLY11=$G(@TMP11@(QNMVC,N,"ONLY11"))
 ..S DAY1=$P(A,"\",3)
 ..S DAY2=$P(A,"\",4)
 ..;
 ..S TIM1=$P(A,"\",5)
 ..S TIM2=$P(A,"\",6)
 ..S QNMVC=$P(A,"\",7) S:'QNMVC QNMVC=1
 ..;
 ..I 'NOQN,QN<QNMVC Q  ; -- 20/07/23 -- WAS QNMVC
 ..
 ..S MHMVC=$P(A,"\",8)
 ..S TIM11=TIM1*60+$P(TIM1,":",2)
 ..S TIM21=TIM2*60+$P(TIM2,":",2)
 ..I TIM21<TIM11 S TIM21=TIM11+(24*60),PR=1
 ..I 'TIM21,'TIM11 S TIM21=(24*60)
 ..;
 ..S MIN=$P($H,",",2)\60
 ..I $G(@$$^W4PRM@("OPNORD11")) D
 ...N HZM S HZM=$$GETP^%W1PRM("HZM") Q:HZM<1
 ...N DATCB S DATCB=$$DATCB^W4HZMST(HZM)
 ...N TIM S TIM=$P(DATCB,"  ",2)
 ...S MIN=TIM*60+$P(TIM,":",2)
 ..I MIN>TIM21 Q
 ..I MIN<(6*60),PR S MIN=MIN+(24*60)
 ..I MIN<TIM11 Q
 ..;
 ..I DZ8<DAY1!(DZ8>DAY2) Q
 ..;
 ..N THUM S THUM=$P(A,"\",9)
 ..I THUM=1,$G(NMB),$$^W4MSL(NMB) Q
 ..I THUM=2,$G(NMB),$$^W4MSD(NMB) Q
 ..I THUM=3,$G(NMB),'$$TAW^W4DLPK(NMB) Q
 ..;
 ..N SET S SET=$P(A,"\")
 ..I SET,$D(@$$^W4GL("P1SETM")@(SET,PAR)) S OK="S"_SET_ONLY11_";"_MHMVC_";"_QNMVC Q
 ..N GR S GR=$P(A,"\",2)
 ..I GR,GRPAR=GR S OK="G"_GRPAR_ONLY11_";"_MHMVC_";"_QNMVC Q
 .
 ;
 K @TMP11
 Q OK
 ;
 ;
MAX(PAR) 
 N MAX S MAX=0,EQA=0
 I $D(@$$^W4GL("P1EZI")@(PAR))=11 S MAX=$P(^(PAR),"\") G EMAX
 I $D(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR)))=11 S MAX=$P(@$$^W4GL("P1EZKI")@(+$$SUG^W4P(PAR)),"\",1) G EMAX
EMAX ;
 I MAX["^"!(MAX[">") S EQA=2
 I MAX["="!(MAX["!") S EQA=2
 Q MAX
 ;
TSF(CDT) ;
 I $D(@$$^W4GL("P1EZ")@(CDT))!$D(@$$^W4GL("P1EZRI")@(CDT))!$D(@$$^W4GL("P1EZK")@(CDT)) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TSTLKH
W4TSTLKH(LKH) ; [ 21.05.25 22:18 ] [ 18.05.25 21:08 ] [ 13.02.17 05:31 ] 
 S LKH=$$CNWEB^%L1FRM(LKH)
 N LK S LK=$TR(LKH,"-!$& ","")
 I LK'?10N&($E(LK,1,2)="05"),$$PAPJ^W4PRM!$G(@$$^W4PRM@("TEL10")) Q "NO10"
 ;
 I $$COUNTRY^W3PRM="IS",LK?7N,'$$DC^W4L(LK)!$D(@$$^W4PRM@("KDM")) D  Q LK
 .N KDM S KDM=$$KDM^W3PRM
 .N I F I="02","03","04","08","09" D  Q:KDM
 ..I $$DC^W4L(I_LK) S KDM=I
 .S LK=KDM_LK
 ;
 Q "OLD"
 
 
 
 
 

W4TVANS
W4TVANS ; [ 27.08.23 12:10 ] [ 16.05.23 20:55 ] [ 12.05.23 15:09 ] 
DET ;
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;------------------------------ 26/03/23 --------------------
 N DT S DT=$$^W4DZ
 N HZ S HZ="" F  S HZ=$O(@$$^W4GL("WQDLV")@(DT,HZ)) Q:HZ=""  D 
 .I '$D(@$$^W4GL("WQORDSN")@(HZ)) D CR(HZ)
 ; ------------------------------------------------------------
 ;;S URL="https://sendimanapi.com/delivery/getApiDeliveryDetails"
 S URL="https://sendimanapi.com/delivery/getDeliveriesBySendiOrderIds"
 S HD="'Content-Type: application/json'"
 S ORDLIST=$$ORDLIST
 I ORDLIST=""!(ORDLIST="<PUSTO>") Q
 ;
 F II=1:10 Q:II>$L(ORDLIST,",")  D
 .S ORDL=$P(ORDLIST,",",II,II+9)
 .S DATA="-d '["_ORDL_"]'"
 .D SEND("DET-"_$TR($H,",","-"),URL,HD,DATA)
 .H 1
 Q
 ;
 ;
SEND(IND,URL,HD,DATA) ;
 N (JB,%ARG,%REM,IND,URL,HD,DATA)
 S DIR="/tmp/"
 ;
 S FLQOU=DIR_"flqou"_$$DZ_"-"_JB_"-"_IND
 S PW=$G(@$$^W4PRM@("SNDY","PW"))
 S AUTH="'Authorization: Basic "_PW_"'"
 ;
 D DB(0)
 S FLQDATA=DIR_"flqdata"_$$DZ_"-"_JB_"-"_IND 
 O FLQDATA:(NEWVERSION:REWIND) U FLQDATA
 W "curl -s -H "_AUTH_" -H "_HD_" -L -X POST -s -m 30 "_URL_" "_DATA_" -o "_FLQOU
 C FLQDATA
 D DB(.5)
 ;
 ZSY "iconv -c -f cp862 -t utf-8 "_FLQDATA_" -o "_FLQDATA_"utf-8"
 S CMD="/bin/sh "_FLQDATA_"utf-8"
 ZSY CMD
 ;
 ZSY "rm -f "_FLQDATA
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 I $$EXIST^%L1ZOS(FLQOU) D
 .C FLQOU O FLQOU:(REWIND:READONLY)
 .F  U FLQOU R A Q:$ZEOF  D 
 ..S K=K+1,@TMP@(K)=A
 ..
 ..I $P(IND,"-")="CR" D
 ...S A1=A ;;$TR(A," ","")
 ...S A3=$P($P(A1,"""data"":",2),"""msg""")
 ...S ORDID="order_id"
 ...S ORDIDKV=""""_ORDID_""""
 ...N HZM S HZM=+$P(IND,"-",2) Q:'HZM
 ...S B=ORDIDKV_$P(A3,ORDIDKV,2)
 ...S ORDSN=$$GET(B,ORDID) Q:'ORDSN
 ...S @$$^W4GL("WQORDSN")@(HZM)=ORDSN
 ..
 ..I $P(IND,"-")="DET" D
 ...S A1=A ;;$TR(A," ","")
 ...;;Q:A1'["200{"
 ...;;S A2=$P($P(A1,"200{",2),"500{")
 ...S A3=$P($P(A1,"""data"":",2),"""msg""")
 ...S ORDID="order_id"
 ...S ORDIDKV=""""_ORDID_""""
 ...S SNDORDID="sendi_order_id"
 ...S SNDORDIDKV=""""_SNDORDID_""""
 ...
 ...F I=1:1:$L(A3,""""_ORDID_"""") D
 ....S B=ORDIDKV_$P(A3,ORDIDKV,I+1)
 ....S HZM=$$GET(B,ORDID) Q:'HZM  Q:'$D(@$$^W4ORD@(HZM))
 ....S B1=SNDORDIDKV_$P(A3,SNDORDIDKV,I+1)
 ....S ORDSN=$$GET(B1,SNDORDID)
 ....S @$$^W4GL("WQORDSN")@(HZM)=ORDSN
 ....N TMPREP S TMPREP=$G(@$$^W4ORD@(HZM,"PREP")) 
 ....
 ....S STAT=$$GET(B,"delivery_status")
 ....
 ....S TAKED=$$GET(B,"picked_up_at") I TAKED="null" S TAKED=""
 ....S SUPPLIED=$$GET(B,"delivered_at") I SUPPLIED="null" S SUPPLIED=""
 ....S PSLTEL=$$GET(B,"driver_phone")
 ....S PSL=$$FINDPSL(PSLTEL)
 ....
 ....I PSL,STAT>0,'$$PSL^W4HZMST(HZM),TAKED'="" D
 .....I $$MM^W4PRM D  Q   
 ......S @$$^W4MAIN("TMPDLV")@(HZM)=PSL
 ......D SGPSL^W4MMDLV(HZM)
 .....N WQDLV S WQDLV=""
 .....D SGPSL^W4DLVORD(HZM,PSL)
 ....
 ....I STAT>0,STAT<4,'$D(@$$^W4ORD@(HZM,"READY")) D
 .....S ^("READY")=$H
 .....I $$TRICKER^W4PRM(HZM) D ^W4TRICKR(JB,HZM_"<>"_$G(PSL),"COMPLETE")
 ....
 ....I TAKED>0 S TAKED=$$T2H(TAKED) I TAKED>0 D
 .....S @$$^W4ORD@(HZM,"TAKED")=TAKED
 ....
 ....I SUPPLIED>0,STAT=3 S SUPPLIED=$$T2H(SUPPLIED) I SUPPLIED>0 D
 .....S @$$^W4ORD@(HZM,"SUPPLIED")=SUPPLIED
 .....I $$TRICKER^W4PRM(HZM) D ^W4TRICKR(JB,HZM_"<>"_$G(PSL),"DLV")
 .
 .C FLQOU
 .;;ZSY "rm -f "_FLQOU
 .;;ZSY "rm -f tmpou"_JB_"-*"
 ;
 D DB(2)
 S H=+$H
 S IND1=$P(IND,"-")
 S NP=$O(@$$^W4GL("WQPROT")@(H,IND1,99999),-1)+1
 S @$$^W4GL("WQPROT")@(H,IND1,NP)=CMD
 S @$$^W4GL("WQPROT")@(H,IND1,NP,"ZSY")=$ZSY
 Q
 ;
 ;
REST(ORD) ;
 I $$MM^W4PRM Q $$MSDHZM^W4HZMST(ORD)
 Q $G(@$$^W4PRM@("SNDY","REST"))
 ;
NMREST(ORD) ;
 Q $$MSDN^W3R(ORD)
 ;
CITY(ORD) ;
 N IR S IR=$$IR^W4HZMST(ORD) ;
 I IR="" S IR="TAKEAWAY"
 Q $$HB(IR) ;
 ;
STREET(ORD) ;
 N STR S STR=$$KTV^W4HZMST(ORD)
 I STR="" S STR="TAKEAWAY"
 Q $$HB(STR)
 ;
HOME(ORD) ;
 N HOME S HOME=$$BAIT^W4HZMST(ORD)
 I HOME="" S HOME=0
 Q $$HB(HOME)
 ;
NAME(ORD) ;
 N NM S NM=$$LKHNM^W4HZMST(ORD)
 S NM=$TR(NM,"'","")
 S NM=$TR(NM,"""","")
 Q $$HB(NM)
 ;
TEL(ORD) ;
 N TEL S TEL=$$TELB^W4HZMST(ORD)
 I TEL="" S TEL="0000000"
 Q TEL
 ;
FLOOR(ORD) ;
 N FLOOR S FLOOR=$$KOMA^W4HZMST(ORD) ;
 I FLOOR="" S FLOR=0
 Q $$HB(FLOOR)
 ;
ENTRY(ORD) ;
 Q $$HB($$CNISA^W4HZMST(ORD))
 ;
APP(ORD) ;
 N APP S APP=$$DIRA^W4HZMST(ORD)
 I APP="" S APP=0
 Q $$HB(APP)
 ;
TIME(ORD) ;
 N TIMES,TIMEF
 S TIMES=$P($$DATCB^W4HZMST(ORD),"  ")_","_$P($$DATCB^W4HZMST(ORD),"  ",2)
 S TIMEF=$$TRH^W4HZMST(ORD)_","_$$SHAA^W4HZMST(ORD)
 Q $$DIF^%L1TIME(TIMEF,TIMES)
 ;
TOT(ORD) ;
 Q +$$TSHL^W4HZMST(ORD) 
 ;
DELAY(ORD) ;
 I $$PAPJ^W4PRM Q 5
 Q 0
 ;
HB(RKV) ;
 ;;Q $$^%L1CNV(RKV)
 S RKV=$$INVH^%L1FRM(RKV)
 S RKV=$TR(RKV,"'""","")
 Q $TR(RKV,TS0,TSS)
 ;
ORDLIST(STAM) ;
 N DT,N,GL,ST S DT=$$^W4DZ
 S ST=""
 S GL=$$^W4GL("WQDLV")
 ;
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .I $$DEL^W4DEL(N) Q
 .I $L($$SUPPLIED^W4HZMST(N)) Q
 .N ORDSN S ORDSN=$$ORDSN(N) Q:ORDSN=""
 .S ST=ST_ORDSN_","
 ;
 I $E(ST,$L(ST))="," S ST=$E(ST,1,$L(ST)-1)
 Q ST
 ;
 ;
ORDSN(ORD) ; 
 Q $G(@$$^W4GL("WQORDSN")@(ORD))
 ;
DB(PRM) ;
 ;;U 0 W PRM,!
 Q
 ;
GET(TX,ID) ;
 N VL
 I $E(ID)'="""" S ID=""""_ID_""""
 I ID'[":" S ID=ID_":"
 S VL=$P(TX,ID,2)
 S VL=$P(VL,",")
 S VL=$P(VL,"}")
 S VL=$P(VL,"]")
 S VL=$P(VL,"//")
 S:$E(VL)="""" VL=$E(VL,2,$L(VL)-1)
 Q VL
 ;
T2H(DATTM) ; 
 I DATTM?4N1"-".E I DATTM'[" " S DATTM=$E(DATTM,1,10)_" "_$E(DATTM,11,255)
 S DAT=$P(DATTM," ")
 S DAT=$P(DAT,"-",3)_"."_$P(DAT,"-",2)_"."_$E(DAT,3,4)
 S DT=$$^%L1DC(DAT,3)
 S TIM=$P(DATTM," ",2)
 S SEC=TIM*3600+($P(TIM,":",2)*60)
 Q DT_","_SEC
 ;
FINDPSL(PSLTEL) ; 
 N PSL,TEL S PSL=""
 S PSLTEL=$TR(PSLTEL," -","")
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:PSL
 .S TEL=$P($G(^(N,1)),"\",2) Q:TEL=""
 .I $TR(TEL," -","")=PSLTEL S PSL=N
 Q PSL 
 ;
DZ() ;
 Q $$^W4DZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TVDEL
W4TVDEL(HZM) ; [ 27.05.24 14:17 ] [ 26.05.24 14:25 ] [ 
 N TIME S TIME=$G(@$$^W4GL("W4TVH2O")@(HZM,"TIME"))
 I TIME D
 .D ^W4TVSND(JB,HZM,"DEL")
 Q
 ;
DELTIME(HZM)
 K @$$^W4GL("W4TVH2O")@(HZM,"TIME")
 Q

W4TVGET
W4TVGET ; [ 05.02.26 03:06 ] [ 25.01.26 12:08 ] [ 21.01.26 10:20 ] 
 N (JB,%ARG,%REM)
 D KILL^%W1PRM("MZSM")
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S H1=+$H,H2=$P($H,",",2)
 M @$$GLGET@(H1,H2,"ARG")=%ARG
 S DZ=$$^W4DZ
 ;
 I $G(%ARG("payment_type"))="coc" D MZSM Q
 ;
 S PSLTEL=$$SPA^%L1FRM($$GET("courier_phone"))
 S HZM=+$$SPA^%L1FRM($P($$GET("source_order_id"),"-",2))
 S STAT=$$SPA^%L1FRM($$GET("status"))
 S WOLTID=$$SPA^%L1FRM($$GET("wolt_order_id"))
 S STOPS=$$SPA^%L1FRM($$GET("stops"))
 ;
 I +STOPS=3,HZM,$D(@$$^W4ORD@(HZM))=11 D
 .S @$$^W4ORD@(HZM,"SINGLE")=1
 ;
 I $L(WOLTID),$$FUNC^%UCASE(STAT)="CANCELED" D  Q
 .N HZ S HZ=$$FINDWOLT(WOLTID)
 .S @$$^W4GL("W4DELWOLT")@(WOLTID)=HZ_"\"_$ZD($H,"DD.MM.YY 24:60") Q:'HZ
 .N RES S RES=$$^W4HZBIT(HZ)
 .S @$$^W4GL("W4DELWOLT")@(WOLTID,"RES")=RES
 ;
 I STAT=3 D  Q; -- HADPES LE MESHALEAH
 .D HZMMSL^W4HZMIT
 ;
 S (TAKED,SUPPLIED)=""
 S TIME=$H
 S PRUPD=0
 ;
 ;;I STAT=6!(STAT=11) S TAKED=TIME
 I STAT=11 S TAKED=TIME
 I STAT=11,$G(@$$^W4ORD@(HZM,"SUPPLIED")) S @$$^W4ORD@(HZM,"TRCUPD")=$H
 ;
 S PRUPD=$G(@$$^W4ORD@(HZM,"TRCUPD"))
 ;
 I STAT=7 S SUPPLIED=TIME
 S PSL=$$FINDPSL(PSLTEL)
 ;
 I 'PSL S PSL=PSLTEL
 S @$$GLGET@(H1,H2,"PSL")=PSL
 ;
 I PSL,STAT>0 D
 .I '$$PSL^W4HZMST(HZM) D SGPSL^W4DLVORD(HZM,PSL)
 .I $$PSL^W4HZMST(HZM) S $P(@$$^W4ORD@(HZM,"TM"),"\")=PSL
 .I TAKED>0 D
 ..I $G(@$$^W4ORD@(HZM,"TAKED")),'PRUPD Q
 ..S @$$^W4ORD@(HZM,"TAKED")=TAKED
 .
 I PSL,SUPPLIED D
 .I PSL'=$$PSL^W4HZMST(HZM) S $P(@$$^W4ORD@(HZM,"TM"),"\")=PSL
 .I $G(@$$^W4ORD@(HZM,"SUPPLIED")),'PRUPD Q
 .S @$$^W4ORD@(HZM,"SUPPLIED")=SUPPLIED
 .I $$TRICKER^W4PRM(HZM) D ^W4TRICKR(JB,HZM_"<>"_$G(PSL),"DLV")
 ;
 Q
 ;
 ;
GET(PRM) ;
 Q $G(%ARG(PRM))
 ;
FINDPSL(PSLTEL) ; 
 I $E(PSLTEL,1,3)=972 S PSLTEL="0"_$E(PSLTEL,4,255)
 I $E(PSLTEL,1,4)="+972" S PSLTEL="0"_$E(PSLTEL,5,255)
 N PSL,TEL S PSL=""
 S PSLTEL=$TR(PSLTEL," -","")
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:PSL
 .S TEL=$P($G(^(N,1)),"\",2) Q:TEL=""
 .I $TR(TEL," -","")=PSLTEL S PSL=N
 Q PSL 
 ;
FINDWOLT(WOLTID) ; 
 I $G(WOLTID)="" Q 0
 I WOLTID["^" S WOLTID=$P(WOLTID,"^",2)
 N DZ,OK S DZ=$$^W4DZ S OK=0
 N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DZ,HZ)) Q:HZ=""  D  Q:OK 
 .N HZWOLTID S HZWOLTID=$P($G(@$$^W4ORD@(HZ,"HZMLAK")),"^",2) Q:'HZWOLTID
 .S HZWOLTID=$$SPA^%L1FRM(HZWOLTID)
 .S WOLTID=$$SPA^%L1FRM(WOLTID)
 .I $$FUNC^%UCASE(HZWOLTID)=$$FUNC^%UCASE(WOLTID) S OK=HZ,@$$GLGET@(H1,H2,"HZ")=HZ 
 Q OK
 ;
GLGET() ; 
 I $G(MZSM) Q $$^W4GL("W4MZSM")
 Q $$^W4GL("W4TVGET")
 ;
 ; 
MZSM ;
 N MZSM S MZSM=1
 N OK S OK=1
 M @$$GLGET@(H1,H2,"ARG")=%ARG
 S HZM=$G(%ARG("order_id")) Q:'HZM
 N MLZ S MLZ=""
 I HZM["~" S JB=$P(HZM,"~",2),DV=$P(HZM,"~",3),MLZ=$P(HZM,"~",4),ODEF=$P(HZM,"~",5),TIP=$P(HZM,"~",6),NOM=$P(HZM,"~",7),HZM=$P(HZM,"~")
 S %ARG("JBMZSM")=JB
 M @$$GLGET@(H1,H2,"ARG")=%ARG
 S VL=$G(%ARG("amount"))*.01
 I 'VL S OK=2 G ENDMZSM 
 ;
 S REQ=$G(%ARG("request"))
 I REQ="withdraw" S VL=-VL
 ;
 S @$$GLGET@(H1,H2,"HZM")=HZM
 S @$$GLGET@(H1,H2,"VL")=VL
 S @$$GLGET@(H1,H2,"REQ")=REQ
 ;
 I REQ="payment" D
 .I HZM=1,$E(MLZ)=";" D  Q  ; -- HAFKADAT MEZUMAN SHEL SHALIAH
 ..N PSL,DT S PSL=$P(MLZ,";",2),DT=$P(MLZ,";",3) I 'PSL!'DT Q
 ..N VL0 S VL0=+$G(@$$^W4GL("W4MZSMHF")@(DT,PSL))
 ..S @$$^W4GL("W4MZSMHF")@(DT,PSL)=(VL+VL0)_"\"_$ZD($H,"24:60")
 ..S $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\")=$P($G(@$$^W4GL("W4SLHFK")@(DT,PSL)),"\")+VL
 ..S $P(@$$^W4GL("W4SLHFK")@(DT,PSL),"\",3)=$ZD($H,"24:60")
 .
 .D MZM1^W4PAYKB(HZM,VL)
 .D PAYCASH^W4PAYKB(VL)
 .S ^AAA("W4TVGET",HZM)="PCAFT"
 .D PCAFT^W4T1(HZM)
 .S @$$GLGET@(H1,H2,"RES")=1
 ;
 I REQ="withdraw" D
 .N IND S IND=$O(@$$^W4ORD@(HZM,"CB","MZ",9999),-1)+1
 .N ST S ST=$J(VL+ODEF+TIP,2,2)_"*"_$H_"*"_MLZ_"*"_DV_"*"_ODEF_"*"_TIP
 .S @$$^W4ORD@(HZM,"CB","MZ",IND)=ST
 .I $G(NOM) D SOFMZDEL^W4PAYKB(HZM,"MZ",NOM)
 .S @$$GLGET@(H1,H2,"RES")=1
 ;
ENDMZSM ;
 D PUT^%W1PRM("MZSM",OK)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TVORD
W4TVORD(HZM) ; [ 19.08.26 12:42 ] [ 30.07.26 11:35 ] [ 20.05.26 19:53 ] 
 N (JB,%ARG,%REM,HZM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S RES=$$^W4GETHZ(HZM) 
 S TMPORD=$$^W4TMPORD
 ;
 S NMB=$$NMB^W4HZMST(HZM)
 I $$PAPJ^W4PRM,NMB=$$MPLK^W4MPCHZ!(NMB=$$COUPLK^W4MPCHZ) Q 1
 ;
 S UR=1
 S FRSTIT(UR)=1,FRSTADD(UR)=""
 ;
 S FILE=$$FILE(HZM)
 I $$EXIST^%L1ZOS(FILE) C FILE:(DELETE)
 O FILE:(REWIND:NEWVERSION):2
 U FILE
 I $G(^DB) U 0
 ;
 D ACNT(1)
 ;
 S CUSTNAME=$$HB($$NAME^W4HZMST(HZM))
 S PHONE=$$SPA^%L1FRM($$TELB^W4HZMST(HZM))
 S PHONE2=$$SPA^%L1FRM($$PELE^W4HZMST(HZM))
 S EMAIL=$$SPA^%L1FRM($$EMAIL^W4HZMST(HZM))
 ;
 W """customer"": {",!
  W $$ST("name",$$HB(CUSTNAME))_",",!
  W $$ST("phone",PHONE)_",",!
  I PHONE2'=PHONE D
  .W $$ST("secondary_phone",PHONE2)_",",!
  W $$ST("email",EMAIL),!
 W "},",!
 ;
 S ORDER=$TR($J(SNIF,5)," ",0)_"-"_$TR($J(HZM,7)," ",0)
 ;
 S DATCB=$$DATCB^W4HZMST(HZM)
 S DATE=$P(DATCB,"  ")
 S TIME=$P(DATCB,"  ",2)
 S DD=$P(DATE,".",1)
 S MM=$P(DATE,".",2)
 S YY=$P(DATE,".",3)
 I $L(YY)=2 S YY="20"_YY
 S DATE=YY_"-"_MM_"-"_DD
 S TIME=TIME_":00" ;;+0300"
 ;
 S HRA=$$HRAED^W4HZMST(HZM)
 ;
 W """order"": {",!
 W $$ST("id",ORDER)_",",!
 W $$ST("order_number",HZM)_",",!
 W $$ST("created",DATE_"T"_TIME)_",",!
 W $$ST("comment",$$HB(HRA)),!
 ;
 S FRSTIT(1)=1
 ;
 S MAINITEM=""
 S N="" F  S N=$O(@TMPORD@(N)) Q:N=""  I N D
 .S A=$G(^(N))
 .
 .I $P(A,"~")=0 D
 ..S MAINITEM=$P(A,"~",2),MAININD=N
 ..
 ..D ITEM(A,1,N)
 .
 .
 .I $P(A,"~")=1 D
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..;;S CD1=$P(A,"~",3)
 ..S CD1=$$SHEM1^W4P(CD)
 ..
 ..I '$$COMPLEX(MAININD) D OPT(A,1,N)
 ..
 ..I $$COMPLEX(MAININD) D
 ...I $$CDA(CD) Q
 ...D ITEM(A,2,N)
 .
 .I $P(A,"~")=2 D
 ..N CD,CD1
 ..S CD=$P(A,"~",2)
 ..I CD["-C" Q
 ..;;S CD1=$P(A,"~",3)
 ..S CD1=$$SHEM1^W4P(CD)
 ..
 ..D OPT(A,2,N)
 ;
 D CLOSEIT(2)
 I $G(OPITEMS(2)) W "]",! S OPITEMS(2)=0 ; -- CLOSE ITEMS LEVEL 2
 D CLOSEIT(1) ; -- CLOSE ITEM
 W "]",! ; --- CLOSE items
 W "},",!; -- CLOSE ORDER
 ;
 D FOOTHD(HZM)
 W "}",! ; -- CLOSE ALL
 ;
 C FILE
 ;
 ZSY "iconv -c -f cp862 -t utf-8 "_FILE_" -o "_FILE_".json"
 S ER=$$SEND(FILE_".json",HZM)
 ;
 K @$$^W4TMPORD
 Q ER
 ;
 ;
ST(RKV,VL) ;
 Q """"_RKV_""": """_VL_""" "
 ;
STN(RKV,VL) ;
 Q """"_RKV_""": "_VL
 ;
 ;
ITEM(A,UR,N)
 S (FRSTIT(UR+1),FRSTSET(UR+1),FRSTOPT(UR+1),FRSTADD(UR+1))=1
 S FRSTADD(UR)=1,FRSTOPT(UR)=1,FRSTSET(UR)=1
 ;
 I '$G(FRSTIT(UR)) D
 .I UR=1,$G(OPIT(2)) D CLOSEIT(2) I $G(OPITEMS(2)) W "]",!
 .D CLOSEIT(UR)
 .W ",",!
 ;
 I $G(FRSTIT(UR)) D
 .W ",",!
 .W """items"": [",!
 .S OPITEMS(UR)=1
 ;
 I UR=1 K OPITEMS(2),OPIT(2),OPOPT(2),OPSET(2),OPADD(2)
 S OPADD(UR)=0,OPOPT(UR)=0,OPSET(UR)=0
 ;
 N PAR,PAR1,MH,QN,DESC,MZMN,CMST,KVZ,KVZ1
 ;
 S PAR=$P(A,"~",2)
 ;;S PAR1=$P(A,"~",3)
 S PAR1=$$SHEM1^W4P(PAR)
 S MH=+$P(A,"~",4)
 S QN=$P(A,"~",5)
 I QN["*" S QN=$P(QN,"*")*$P(QN,"*",2)
 S QN=+QN
 S DESC=$$DESC^W4P(PAR,"H")
 ;
 S MZMN=""
 S CMST=$$CMST^W3HZMST(JB,N)
 I CMST["]" D
 .S MZMN=$P(CMST,"]")
 .I MZMN["[" S MZMN=$P(MZMN,"[",2)
 .S CMST=$P(CMST,"]",$L(CMST,"]"))
 ;
 S KVZ=$$SUG^W4P(PAR)
 S KVZ1=$$SUG1^W4P(PAR)
 ;
 W "{",!
 W $$ST("id",PAR)_",",!
 W $$ST("name",$$HB(PAR1))_",",!
 W $$STN("price",$$JN(MH))_",",!
 W $$STN("quantity",QN)_",",!
 W $$ST("comment",$$HB(CMST))_",",!
 W $$ST("description",$$HB(DESC))_",",!
 W $$ST("assign_to",$$HB(MZMN))_",",!
 W """category"": {",!
   W $$ST("id",KVZ)_",",!
   W $$ST("name",$$HB(KVZ1)),!
   W "}",! ; -- CLOSE CATEGORY ( NO ITEM !)
 ;
 S FRSTIT(UR)=0
 S OPIT(UR)=1
 Q
 ;
 ;
OPT(A,UR,N) ;
 N CDT,NMT,MHT,QNT,QNT0
 ;
 S CDT=$P(A,"~",2)
 ;;S NMT=$P(A,"~",3)
 S NMT=$$SHEM1^W4P(CDT)
 S MHT=+$P(A,"~",4)
 S QNT=$P(A,"~",5)
 S QNT0=QNT
 I QNT["*" S QNT=$P(QNT,"*")*$P(QNT,"*",2)
 S QNT=+QNT
 ;
 I $G(FRSTSET(UR)) D
 .W ",",!
 .W """options"": [",!
 .S OPOPT(UR)=1
 ;
 I $$CDA(CDT) D  Q  ; ------------------------------- NEW SET
 .I '$G(FRSTSET(UR)) D 
 ..D CLOSESET(UR)
 ..W ",",!
 .
 .W "{",!
 .W $$ST("id",CDT)_",",!
 .W $$ST("name",$$HB(NMT)),!
 .
 .S FRSTSET(UR)=0,FRSTADD(UR)=1,OPSET(UR)=1
 ;
 I '$$CDA(CDT),$G(FRSTSET(UR)) D
 .W "{",!
 .W $$ST("id","A0")_",",!
 .W $$ST("name","ADDITIONS"),!
 .S FRSTSET(UR)=0,FRSTADD(UR)=1,OPSET(UR)=1
 ;
 I $$CDA(CDT),UR>1 Q
 ;
 I 'FRSTADD(UR) W ",",!
 ;
 I FRSTADD(UR) D
 .W ",",!
 .W """ingredients"" : [",!
 .S OPSET(UR)=1
 ;
 ;----------------------------- END SET -----------------
 W "{",! ; -- ADD
 W $$ST("id",CDT)_",",!
 W $$ST("name",$$HB(NMT))_",",!
 W $$STN("price",$$JN(MHT))_",",!
 N HRPZ S HRPZ=""
 N QNPZ S QNPZ=$$QN^W4PIZZA(QNT0)
 I QNPZ="++"!(QNPZ="+-")!(QNPZ="-+") D
 .S HRPZ=$S(QNPZ="-+":"oini ivg",QNPZ="+-":"l`ny ivg",1:"mly ybn")
 .W $$ST("option_name",$$HB(HRPZ))_",",!
 I QNPZ="++",'(QNT#2) S QNT=QNT\2
 I QNT S QNT=1 ; -- 30.07.26
 W $$STN("quantity",QNT),!
 W "}",!
 ;
 S OPADD(UR)=1
 S FRSTADD(UR)=0
 Q
 ;
 ;
CDA(CD) 
 I $E(CD)="A" Q 1
 Q 0
 ;
COMPLEX(IND) ;
 N A,OK S OK=0
 N IND1 S IND1=IND F  S IND1=$O(@$$^W4TMPORD@(IND1)) Q:IND1=""  S A=$G(^(IND1)) Q:$P(A,"~")=0  I IND1 D  Q:OK
 .I $P(A,"~")=2 S OK=1
 Q OK
 ;
CLOSESET(UR) ;
 I $G(OPSET(UR)) W "]",!,"}",! S OPSET(UR)=0 ; -- CLOSE INGREDIENTS & SET
 Q
 ;
CLOSEOPT(UR) ;
 I $G(OPOPT(UR)) W "]",! S OPOPT(UR)=0
 Q
 ;
CLOSEIT(UR) ;
 I '$G(OPIT(UR)) Q 
 D CLOSESET(UR)
 D CLOSEOPT(UR)
 W "}",!; -- CLOSE ITEM
 S OPIT(UR)=0
 Q
 ;
HB(VL) ;
 S VL=$$SPA^%L1FRM(VL)
 S VL=$$RPL^%L1FRM(VL,"""","''")
 S VL=$$CLR^W3NEWHZN(VL)
 S VL=$$INVH^%L1FRM(VL)
 ;;I $G(^DB) Q $$H2U^%L1FRM(VL)
 Q $TR(VL,TS0,TSS)
 ;
 ;
SEND(FILE,HZM)
 N (JB,%ARG,%REM,HZM,FILE) D ^%L1TS
 ;
 S TOKEN=$G(@$$^W4PRM@("TEAV","TOKEN"))
 S CONNECT=$G(@$$^W4PRM@("TEAV","CONNECT"))
 S URL=$G(@$$^W4PRM@("TEAV","URL"))
 ;;S URL=URL_"?token="_TOKEN_"&connection="_CONNECT
 ; 
 S AUTH="Authorization: Bearer "_TOKEN
 S HD="Content-Type: application/json"
 S FLOU=$P(FILE,".")_".ou"
 ;
 S ST="curl "
 S ST=ST_" -H """_HD_""" -L -X POST -s -m 30 '"_URL_"'"
 ;;S ST=ST_" -d ""token="_TOKEN_"&connection="_CONNECT_""" "
 S ST=ST_" -d@"_FILE
 S ST=ST_" > "_FLOU
 ;
 S FLCMD=$P(FILE,".")_".cmd"
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 S H=$$DT
 S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 S @$$^W4GL("W4TVPR")@(H,NP,HZM,"ORD")=HZM_" \ "_$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")
 S @$$^W4GL("W4TVPR")@(H,NP,HZM,"ORD","A-ST")=ST
 ;
 D PROTCONT(FILE,"ORD")
 ;
 S CMD="/bin/sh "_FLCMD
 S @$$^W4GL("W4TVPR")@(H,NP,HZM,"ORD","CMD")=CMD
 ZSY CMD
 S @$$^W4GL("W4TVPR")@(H,NP,HZM,"ORD","CMD-ZSY")=$ZSY
 I $ZSY K @$$^W4TMPORD Q $ZSY_"CMD"
 ;
 ;;ZSY "rm -f "_FLCMD ; -- *** ZMANY
 ;
 ;------------------- RESPONSE ---------------
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 S RES="",ER="",ER1="",RID=""
 N RJ S RJ=$$^%L1JSON(FLOU,TMP)
 ;
 D DB(2)
 M @$$^W4GL("W4TVPR")@(H,NP,HZM,"ORD","RESP")=@TMP
 ;
 N GL S GL=$$^W4GL("W4TVORD")
 N DZ S DZ=$$^W4DZ 
 N IND S IND=$O(@GL@(DZ,HZM,99999),-1)+1
 ;
 S GL=GL_"("_DZ_","_HZM_","_IND_")"
 N GLI S GLI=$$^W4GL("W4TVORDI")_"("_HZM_")"
 ;
 S @GL=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",35)," ","-")
 ;
 N N,A S N="" F  S N=$O(@TMP@(1,N)) Q:N=""  I N D
 .S A=$G(^(N))
 .D GET(TMP,1,N,GL)
 ;
 K @TMP
 ;
 K @GLI
 M @GLI=@GL
 S @GLI=DZ
 ;
 S ORDTV=$G(@GLI@("order_number"))
 S ERCD=$G(@GL@("error_code"))
 S ERDESC=$G(@GL@("error_description"))
 I $$FUNC^%UCASE(ERCD)="NULL"!((ERCD="")&ORDTV) S RES=0
 E  S RES=ERCD_" - "_$$FUNC^%UCASE(ERDESC)
 ;
 I ORDTV,RES=0 D 
 .N DZ S DZ=$$^W4DZ
 .S @$$^W4GL("W4TVH2O")@(HZM)=ORDTV
 .S @$$^W4GL("W4TVH2O")@(HZM,"TIME")=$H
 .S @$$^W4GL("W4TVH2OD")@(DZ,HZM)=ORDTV
 .S @$$^W4GL("W4TVO2H")@(ORDTV)=HZM
 .S @$$^W4GL("W4TVO2HD")@(DZ,ORDTV)=HZM
 ;
 Q RES
 ;
 ;
FOOTHD(HZM) ;
 N (JB,%ARG,%REM,HZM,ORDER)
 D ^%L1TS
 W """fulfillment"": {",!
  S DAT=$$TRH^W4HZMST(HZM)
  S DD=$P(DAT,".")
  S MM=$P(DAT,".",2)
  S YY=$P(DAT,".",3)
  I $L(YY)=2 S YY="20"_YY
  S SHAA=$$SHAA^W4HZMST(HZM) 
  S TOTIME=YY_"-"_MM_"-"_DD_"T"_SHAA_":00" ;;+0300"
  S TYPDLV="DELIVERY"
  I $$TAKEAWAY^W4HZMST(HZM) S TYPDLV="PICKUP"
  I $$HZM^W4MSD(HZM) S TYPDLV="EATIN"
  ;
  S RMRK=$$CMNT^W4HZMST(HZM)
  W $$ST("type",TYPDLV)_",",!
  W $$ST("promised_time",TOTIME)_",",!
  W """delivery_details"": {",!
   W $$ST("country","Israel")_",",!
   S CITY=$$CITY^W3HZMST(JB)
   W $$ST("city",$$HB(CITY))_",",!
   S STREET=$$STREET^W3HZMST(JB)
   W $$ST("street",$$HB(STREET))_",",!
   S HOME=$$HOME^W3HZMST(JB)
   S HOME=$$NUM^%L1FRM(HOME)
   W $$ST("house_number",HOME)_",",!
   S ENTRANCE=$$ENTRANCE^W3HZMST(JB)
   W $$ST("entrance",$$HB(ENTRANCE))_",",!
   S FLOOR=$$FLOOR^W3HZMST(JB)
   W $$ST("floor",$$HB(FLOOR))_",",!
   S FLAT=$$FLAT^W3HZMST(JB)
   W $$ST("apartment",FLAT)_",",!
   W $$ST("remark",$$HB(RMRK))_",",!
   S COMP=$$COMP^W3HZMST(JB)
   W $$ST("company_name",$$HB(COMP))_",",!
   S COORD=$$COORD^W3HZMST(JB)
   S COORD=$TR(COORD,";",",")
   S LAT=+$P(COORD,",")
   S LONG=+$P(COORD,",",2)
   W $$STN("latitude",LAT)_",",!
   W $$STN("longitude",LONG),!
  W " }",!; --- CLOSE DELIVERY-DETAILS
  ;
  D COURIER(HZM)
  ;
  W "},",! ; -- CLOSE FULFILLMENT
  ;
  W " ""payments"": [",!
  S PRPAY=0
  N SSUM S SSUM=0
  ;
  S IND="" F  S IND=$O(@$$^W4ORD@(HZM,"CB",IND)) Q:IND=""  D
  .S SUGT1="CASH",LKHN="" 
  .I IND="V" S SUGT1="CREDIT_CARD"
  .I IND="MZ" S SUGT1="CASH"
  .I IND="CH" S SUGT1="CHECK"
  .I IND="ASR" S SUGT1="CREDIT"
  .I SUGT1="" Q
  .
  .S IND1="" F  S IND1=$O(@$$^W4ORD@(HZM,"CB",IND,IND1)) Q:IND1=""  D
  ..S A=$G(^(IND1))
  ..S SUM=0
  ..I IND="MZ"!(IND="CH") S SUM=$P(A,"*",1)-$P(A,"*",5)
  ..I IND="V" S SUM=$P(A,"*",7)
  ..S STATASR="false" 
  ..
  ..I IND="ASR" D
  ...S LKHN=$P(A,"*")
  ...S LKHR=$P(A,"*",6)
  ...S SUM=$P(A,"*",4)
  ...S STATASR="true"
  ...I LKHN!LKHR D
  ....I LKHN=$$TNBLK!(LKHR=$$TNBLK) S SUGT1="CREDIT_TENBIS" Q
  ....I LKHN=$$CIBLK!(LKHR=$$CIBLK) S SUGT1="CREDIT_CIBUS" Q
  ....I LKHN=$$COUPLK!(LKHR=$$COUPLK) S SUGT1="CREDIT_GOODI" Q
  ....I LKHN=$$MSHLK!(LKHR=$$MSHLK) S SUGT1="CREDIT_MISHLOHA" Q
  ....I LKHN=$$WOLT!(LKHR=$$WOLT) S SUGT1="CREDIT_WOLT" Q
  ....S SUGT1="CREDIT_OTHER"
  .. 
  ..I SUM<.01&(SUM>-.01) Q
  ..
  ..S SSUM=SSUM+SUM
  ..S TID=$$HZMLAKNOM^W4HZMST(HZM)
  ..I TID="" S TID=$$HZMLAK^W4HZMST(HZM)
  ..I TID="" S TID=ORDER
  ..
  ..W " {",!
  ..W $$ST("type",SUGT1)_",",!
  ..W $$STN("amount",$$JN(SUM))_",",!
  ..W $$ST("transaction_id",TID)_",",!
  ..N STATPAY S STATPAY=$S(SUGT1="CASH"!(SUGT1="CHECK"):"false",1:"true")
  ..W $$STN("is_paid",STATPAY)_",",!
  ..W $$STN("is_credit",STATASR),!
  ..W " }",!
  ..S PRPAY=1
  ..I $O(@$$^W4ORD@(HZM,"CB",IND,IND1)) W ",",! S PRPAY=0 Q
  ..N INDN
OCB ..S INDN=$O(@$$^W4ORD@(HZM,"CB",IND))
  ..I INDN'="",INDN'["HNH" W ",",! S PRPAY=0 Q
  ..I INDN["HNH" S IND=INDN G OCB
  ;
  I SSUM<$$TSHL^W4HZMST(HZM) D
  .S TID=$$HZMLAKNOM^W4HZMST(HZM)
  .I TID="" S TID=$$HZMLAK^W4HZMST(HZM)
  .I TID="" S TID=ORDER
  .S SUM=$$TSHL^W4HZMST(HZM)-SSUM
  .I $G(PRPAY) W ",",! 
  .W "{",! 
  .W $$ST("type","CASH")_",",!
  .W $$STN("amount",$$JN(SUM))_",",!
  .W $$ST("transaction_id",TID)_",",!
  .W $$STN("is_paid","false")_",",!
  .W $$STN("is_credit","false"),!
  .W " }",!
  ;
  W "],",!
  ;
  W """totals"": {",!
   S SHUM=+$$TSHL^W4HZMST(HZM)
   W $$STN("total",$$JN(SHUM))_",",!
   S DMSH=+$$DMSH^W4HZMST(HZM)
   W $$STN("delivery",$$JN(DMSH))_",",!
   S DISC=+$$HNH^W4HZMST(HZM)
   W $$STN("discount",$$JN(DISC))_",",!
   S TIP=+$$TIP^W4HZMST(HZM)
   W $$STN("tip",$$JN(TIP))
  W "}",!
 Q
 ;
 ;
TNBLK() ;
 I $G(@$$^W4PRM@("WEB","10BIS")) Q ^("10BIS")
 I $G(@$$^W4PRM@("10BIS")) Q ^("10BIS")
 Q "-"
 ;
CIBLK() ;
 I $G(@$$^W4PRM@("WEB","CIBUS")) Q ^("CIBUS")
 I $G(@$$^W4PRM@("CIBUS")) Q ^("CIBUS")
 Q "-"
 ;
COUPLK() ;
 I $G(@$$^W4PRM@("WEB","COUPPH")) Q ^("COUPPH")
 I $G(@$$^W4PRM@("COUPPH")) Q ^("COUPPH")
 Q "-"
 ;
MSHLK() ;
 I $G(@$$^W4PRM@("WEB","MSH")) Q ^("MSH")
 I $G(@$$^W4PRM@("MSH")) Q ^("MSH")
 Q "-"
 ;
WOLT() ;
 I $G(@$$^W4PRM@("WEB","WOLT")) Q ^("WOLT")
 I $G(@$$^W4PRM@("WOLT")) Q ^("WOLT")
 Q "-"
 ;
COURIER(HZM) ;
 Q
  W ",",!
  W """courier"": {",!
  S PICKUP=""
  W $$STN("app_courier","true")_",",!
  W $$ST("pickup_time",PICKUP)_",",!
  S PSL=$$PSL^W4HZMST(HZM),PSL1=""
  I PSL S PSL1=$G(@$$^W4GL("P1SL")@(PSL))
  W $$ST("name",$$HB(PSL1))_",",!
  S LABEL=""
  W $$ST("label",LABEL),!
  W "  }",!; -- CLOSE COURIER
 Q
 ;
DB(VL) 
 Q 
 ; 
DT() ;
 Q $$^W4DZ 
 ;
SNIF() ;
 I $G(@$$^W4PRM@("IT4WEB","MSD")) Q ^("MSD")
 Q $G(@$$^W4PRM@("WEB","MSD"))
 ;
RESTNAME() ;
 I $L($G(@$$^W4PL@("ESEK",1.5))) Q ^(1.5)
 Q $G(@$$^W4PL@("ESEK",1))
 ;
JN(VL) ;
 Q $J(VL,2,2)
 ;
DIR() ;
 Q "/tmp/"
 ;
FILE(HZM)
 Q $$DIR_"tv"_$$DT_"_"_HZM_"_"_JB
 ;
 ;
ACNT(PR) ;
 S RESTNAME=$$RESTNAME
 S TOKEN=$G(@$$^W4PRM@("TEAV","TOKEN"))
 S CONNECT=$G(@$$^W4PRM@("TEAV","CONNECT"))
 S SNIF=$$SNIF
 ;
 W "{",!
 W """account"": {",!
 I $G(PR) W $$ST("name",$$HB(RESTNAME))_",",!
 W $$ST("token",TOKEN)_",",!
 W $$ST("connection",CONNECT)_",",!
 W $$STN("venue_id",+SNIF),!
 W "},",! 
 Q
 ;
GET(GL1,I1,I2,GL2) ; 
 N A S A=$G(@GL1@(I1,I2))
 N A1,A2 
 S A1=$$SPA^%L1FRM($P(A,":"))
 I $E(A1)="""" S A1=$E(A1,2,$L(A1)-1)
 S A2=$$SPA^%L1FRM($P(A,":",2))
 I $E(A2)="""" S A2=$E(A2,2,$L(A2)-1)
 I A1'="" S @GL2@(A1)=A2
 Q 
 ;
PROTCONT(FILE,IND) ; 
 I '$$EXIST^%L1ZOS(FILE) Q
 O FILE:(REWIND:READONLY)
 U FILE
 N A,SH S SH=0
 F  R A Q:$ZEOF  D
 .S SH=SH+1
 .S @$$^W4GL("W4TVPR")@(H,NP,HZM,IND,"CONT",SH)=A
 C FILE
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TVPR
W4TVPR(DAT,ORDPR,GLPR,NMPR) ; [ 28.04.26 01:43 ] [ 05.08.25 03:53 ] [ 04.08.25 15:00 ] 
 N (JB,%ARG,DAT,ORDPR,GLPR,NMPR)
 D ^%L1TS
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(GLPR)="" S GLPR="W4TVPR"
 I $G(NMPR)="" S NMPR="TVPROT"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 S DT=$$^%L1DC(DAT,3)
 W "<p dir="""_$$^%W1DIR_""" style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  W $$^%W1DICT(NMPR,$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 
 S GL=$$^W4GL(GLPR)
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .S ORD="" F  S ORD=$O(@GL@(DT,N,ORD)) Q:ORD=""  D
 ..I $G(ORDPR),ORD'=ORDPR Q
 ..W "<br>",!
 ..S N1="" F  S N1=$O(@GL@(DT,N,ORD,N1)) Q:N1=""  D
 ...I $D(^(N1))#2 W N1_" = "_$$RKV($G(^(N1)))_"<br>",!
 ...I (N1[("A-ST")) W "<br>",!
 ...S N2="" F  S N2=$O(@GL@(DT,N,ORD,N1,N2)) Q:N2=""  D
 ....I $D(^(N2))#2 W N1_" : "_N2_" = "_$$RKV($G(^(N2)))_"<br>",!
 ....I (N2[("A-ST"))!(N2["ZSY") W "<br>",!
 ....S N3="" F  S N3=$O(@GL@(DT,N,ORD,N1,N2,N3)) Q:N3=""  D
 .....I $D(^(N3))#2 W N1_" "_N2_" : "_N3_" = "_$$RKV($G(^(N3)))_"<br>",!
 .....S N4="" F  S N4=$O(@GL@(DT,N,ORD,N1,N2,N3,N4)) Q:N4=""  D
 ......I $D(^(N4))#2 W N1_" "_N2_" : "_N4_" = "_$$RKV($G(^(N4)))_"<br>",!
 W "</div>",!
 Q
 ;
 ;
RKV(VL) ; 
 N L,R  
 S L=$P(VL,":") 
 S R=$P(VL,":",2,200) 
 D
 .I L["name",R'[$C(215) S VL=L_":"_$$H2U^%L1FRM($$INVH^%L1FRM($TR(R,TSS,TS0))) Q
 .I R[$C(215) S VL=L_":"_$$H2U^%L1FRM($$INVH^%L1FRM($$U2D^%L1CNV(R))) Q
 .I R["\u" D
 ..N I,VL1 S VL1="" F I=1:1:$L(VL,"""") D
 ...N W S W=$P(VL,"""",I)
 ...I W["\u" S W=$$H2U^%L1FRM($$U2H^%L1CNV(W))
 ...S VL1=VL1_$S(W="":"",'(I#2):W,1:""""_W_"""")
 ..S VL=VL1
 ;
 Q VL  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TVRCV
W4TVRCV ; [ 06.12.23 17:31 ] [ 04.12.23 10:52 ] [ 15.11.23 19:12 ] 
 N (JB,%ARG,%REM)
 S HZM=$G(%ARG("order_id"))
 Q:'$G(HZM)  Q:'$D(@$$^W4ORD@(HZM))
 ;
 S PSLTEL=$G(%ARG("delivery_guy_id"))
 S STAT=$G(%ARG("status"))
 S STATTIME=$G(%ARG("time"))
 ;
 S PSL=$$FINDPSL(PSLTEL)
 ;
 I PSL,$$TAKED(STAT),'$$PSL^W4HZMST(HZM) D
 .N TVRCV S TVRCV=""
 .D SGPSL^W4DLVORD(HZM,PSL)
 .S @$$^W4ORD@(HZM,"TVTAKED")=$ZD($H,"DD.MM.YY 24:60")
 ;
 I $$SUPPLIED(STAT) D
 .S @$$^W4ORD@(HZM,"TVSUPPL")=$ZD($H,"DD.MM.YY 24:60")
 Q
 ;
 ;
FINDPSL(PSLTEL) ;
 Q $$FINDPSL^WQDLV(PSLTEL)
 ;
T2H(TIME) ;
 Q $G(TIME)
 ;
TAKED(STAT) ;
 I STAT="delivery" Q 1
 Q 0
 ;
SUPPLIED(STAT) ;
 I STAT="delivered" Q 1
 Q 0
 
 

W4TVSND
W4TVSND(JB,HZ,FUNC) ; [ 26.05.24 13:45 ] [ 31.10.23 16:51 ] [ 30.08.23 18:38 ] 
 N (JB,%ARG,HZ,FUNC)
 D ^%L1TS
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I '$G(HZ) Q
 S PSL="",PSLNM="",PSLPHONE=""
 I HZ["<>" S PSL=$P(HZ,"<>",2),HZ=$P(HZ,"<>")
 I PSL D
 .S PSLNM=$TR($$INVH^%L1FRM($G(@$$^W4GL("P1SL")@(PSL))),TS0,TS1)
 .S PSLPHONE=$P($G(@$$^W4GL("P1SL")@(PSL,1)),"\",2)
 ;
 S FUNC=$G(FUNC)
 S STAT=""
 ;
 I FUNC="PREP" S STAT="preparing" D
 .S @$$^W4ORD@(HZ,"TEAVPREP")=$H
 ;
 I FUNC="READY" S STAT="ready" D
 .S @$$^W4ORD@(HZ,"TEAVREADY")=$H
 ;
 I FUNC="PICKUP" S STAT="pickup" D
 .S @$$^W4ORD@(HZ,"TEAVPICKUP")=$H
 ;
 I FUNC="DLV" S STAT="completed" D
 .S @$$^W4ORD@(HZ,"TEAVCOMPL")=$H
 ;
 I FUNC="DEL",'$$^W4KIOSKO(HZ) S STAT="canceled" D
 .S @$$^W4ORD@(HZ,"TEAVCNC")=$H
 .K @$$^W4GL("W4TVH2O")@(HZ,"TIME")
 ;
 I STAT="" Q
 ;
 S SRCID=$$TVORD(HZ,"source_id")
 S ORDID=$$TVORD(HZ,"order_id")
 ;
 I $$FUNC^%UCASE(SRCID)="NULL" Q
 I $$FUNC^%UCASE(ORDID)="NULL" Q
 ;
 N FL S FL="/tmp/tmptvdata"_$$DT_"-"_JB_"-"_HZ_"-"_FUNC
 I $$EXIST^%L1ZOS(FL) C FL:(DELETE)
 O FL:(NEWVERSION:WRITE)
 U FL
  D ACNT^W4TVORD
  ;
  W """order"":{",!
  W " ""source_id"":"""_SRCID_""",",!
  W " ""id"":"""_ORDID_""" ",!
  W "},",!
  W """status"":"""_STAT_""" ",!
  W "}",!
 C FL
 ;
 S FLUTF=FL_".utf8"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FL_" -o "_FLUTF
 ;
 S URL=$G(@$$^W4PRM@("TEAV","URLUPD"))
 S HD="Content-Type: application/json"
 ;
 D SEND(HZ,ORDID,FUNC,STAT,URL,HD,"POST",FLUTF)
 Q
 ;
 ;
SEND(HZ,ORDID,FUNC,STAT,URL,HD,HOW,FLDATA) ;
 N (JB,%ARG,%REM,HZ,ORDID,FUNC,STAT,URL,HD,HOW,FLDATA)
 S DIR="/tmp/"
 S HOW=$G(HOW)
 ;
 S FLTVOU=DIR_"fltvou"_$$DT_"-"_JB_"-"_HZ_"-"_FUNC
 ;
 S TOKEN=$G(@$$^W4PRM@("TEAV","TOKEN"))
 S CONNECT=$G(@$$^W4PRM@("TEAV","CONNECT"))
 ;;S AUTH="Authorization: Bearer "_TOKEN
 ;
 S URL=URL_"?token="_TOKEN_"&connection="_CONNECT_"&order_id="_ORDID
 ;
 S ST="curl "
 ;;I $L(AUTH),$L(TOKEN) S ST=ST_"-H """_AUTH_""" "
 S ST=ST_" -H """_HD_""" -L -X "_HOW_" -s -m 30 '"_URL_"'"
 ;;S ST=ST_" -d ""token="_TOKEN_"&connection="_CONNECT_"&order_id="_ORDID_""" "
 I $L($G(FLDATA)) S ST=ST_" -d@"_FLDATA
 S ST=ST_" -o "_FLTVOU
 ;
 S FLCMD=DIR_"fltvcmd"_$$DT_"-"_JB_"-"_HZ_"-"_FUNC
 ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 ;
 S H=$$DT
 S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 ;
 S @$$^W4GL("W4TVPR")@(H,NP,HZ,"UPD")=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",20)," ","-")_"\ "_HZ_" \ "_FUNC
 S @$$^W4GL("W4TVPR")@(H,NP,HZ,"UPD","A-ST")=ST
 D SENDPR(FLDATA)
 ;
 ;;ZSY "iconv -c -f cp862 -t utf-8 "_FLCMD_" -o "_FLCMD_"utf-8"
 S CMD="/bin/sh "_FLCMD ;;_"utf-8"
 ZSY CMD
 ;
 S @$$^W4GL("W4TVPR")@(H,NP,HZ,"UPD","UPD-CMD")=CMD
 S @$$^W4GL("W4TVPR")@(H,NP,HZ,"UPD","UPD-CMD-ZSY")=$ZSY
 ;
 ;;ZSY "rm -f "_FLCMD ; ***
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 I $$EXIST^%L1ZOS(FLTVOU) D
 .C FLTVOU O FLTVOU:(REWIND:READONLY)
 .F  U FLTVOU R A Q:$ZEOF  D 
 ..S K=K+1,@TMP@(K)=$E(A,1,3800)
 ..
 .C FLTVOU
 .;;ZSY "rm -f "_FLTVOU
 .;;ZSY "rm -f tmptvou"_JB_"-*"
 ;
 D DB(2)
 ;;S NP=$O(@$$^W4GL("W4TVPR")@(H,99999),-1)+1
 M @$$^W4GL("W4TVPR")@(H,NP,HZ,"UPD-RESP")=@TMP
 K @TMP
 Q
 ;
 ;
GET(TX,ID) ;
 N VL
 I $E(ID)'="""" S ID=""""_ID_""""
 I ID'[":" S ID=ID_":"
 S VL=$P(TX,ID,2)
 S VL=$P(VL,",")
 S VL=$P(VL,"}")
 S VL=$P(VL,"]")
 S VL=$P(VL,"//")
 S:$E(VL)="""" VL=$E(VL,2,$L(VL)-1)
 Q VL
 ;
FINDPSL(PSLTEL) ; 
 N PSL,TEL S PSL=""
 S PSLTEL=$TR(PSLTEL," -","")
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:PSL
 .S TEL=$P($G(^(N,1)),"\",2) Q:TEL=""
 .I $TR(TEL," -","")=PSLTEL S PSL=N
 Q PSL 
 ;
DB(VL) 
 Q 
 ; 
RKV(NM,VL,PRTX) ;
 Q $$RKV^W4EMV3($G(NM),$G(VL),$G(PRTX)) ;
 ;
 ; 
DT() ;
 Q $$^W4DZ 
 ;
TVORD(HZ,RKV)
 N GLI S GLI=$$^W4GL("W4TVORDI")
 ;;N LAST S LAST=$O(@GL@(HZ,99999),-1)  I 'LAST Q ""
 ;;Q $G(@GL@(HZ,LAST,RKV)) 
 Q $G(@GLI@(HZ,RKV)) 
 ;
 ;
SENDPR(FLDATA) ; 
 N A
 O FLDATA:(REWIND:READONLY)
 U FLDATA
  F  R A Q:$ZEOF  D
  .N IND S IND=$O(@$$^W4GL("W4TVPR")@(H,NP,HZ,"UPD-FILE",99999),-1)+1
  .S @$$^W4GL("W4TVPR")@(H,NP,HZ,"UPD-FILE",IND)=A
 C FLDATA 
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4TX2DSP
W4TX2DSP(PORT,TX1,TX2) ; [ 29.01.17 07:21 ] [ 29.09.16 11:54 ] [ 28.09.16 13:36 ] 
 D PUT^%W3DEB("W4TX2DSP","PORT=PORT & TX1=TX1&TX2=TX2")
 J TX2DSP(JB,PORT,TX1,TX2)
 Q
 ;
TX2DSP(JB,PORT,TX1,TX2) ;
 N (JB,PORT,TX1,TX2)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S PORT=$$PORT(PORT)
 D ^%L1TS
 D CLEAR(PORT)
 D WRITE(PORT,TX1,1)
 D WRITE(PORT,TX2,2)
 D CLOSE(PORT)
 Q
 ;
INIT(PORT) ;
 Q
 ;
CLEAR(PORT) ; 
 O PORT::2 E  Q
 U PORT
 W $C(27),"@"
 Q
 ;
WRITE(PORT,TX1,NST) ;
 U PORT W $C(11) 
 I $G(NST)=2 W $C(10)
 S TX1=$$HBR^%L1FRM(TX1,20)
 W $TR(TX1,TS0,TSS),!
 Q
 ;
CLOSE(PORT) ;
 C PORT
 Q
 ;
PORT(PORT) ;
 N P S P=$G(@$$^W4DEV@(PORT))
 I P="" S P=0
 Q P
 ;
PCPAR(PORTDISP,NEWST) ;
 N (JB,PORTDISP,NEWST)
 ;;N TX1,TX2,PRC,QN,SUM,AHST
 S TX1=$P(NEWST,"~",3)
 S PRC=$P(NEWST,"~",4)
 S QN=$P(NEWST,"~",5)
 S AHST=$P(NEWST,"~",6)
 I AHST S PRC=$J(PRC*(100-AHST)*.01,2,2)
 S SUM=QN*PRC
 D PUT^%W3DEB("W4TX2DSP","TX1=TX1&PRC=PRC&QN=QN&AHST=AHST&SUM=SUM")
 S TX2=$J(PRC,6,2)
 I QN'=1 S TX2=$J(PRC,6,2)_" X "_QN
 I QN'=1!AHST S TX2=TX2_" "_$J(SUM,6,2)
 D W4TX2DSP(PORTDISP,TX1,TX2)
 Q
 
 
 
 
 
 
 
 
 
 
 

W4TZ
W4TZ(TZ) ; CHECK NUMBER TZ ; SHEER ; 07/07/93 [ 08.05.24 06:29 ] [ 04.03.24 19:19 ] [ 23.11.23 10:13 ] 
   ; INPUT -- TZ,  OUTPUT -- S=1 IF TZ ORIGINAL, S=0 IF TZ -- FALSE
   I $D(W4TZNO) Q 1
   ;;I $G(@$$^W4PRM@("TZNO")) Q 1  ;  --------------- 08/05/24
   ;
   I $L(TZ)'=9 S TZ=$TR($J(TZ,9)," ",0)
   N S,I,S2 S S=0
   F I=1:2:8 S S=S+$E(TZ,I)
   F I=2:2:8 S S2=$E(TZ,I)*2,S=S+$E(S2)+$E(S2,2)
   S S=S+$E(TZ,9)#10=0
   Q S
 
 
 
 
 
 
 
 

W4USHZPC
W4USHZPC(HZM) ;  [ 19.02.21 07:49 ] [ 13.09.20 13:14 ] [ 
 I '$$DLYPRN^W4PRM,$$HZM^W4MSL(HZM),$$FUTUREDT^W4HZMIT(HZM) Q 0
 Q $$^W4HZAFTP(HZM)
 
 
 

W4VCLREP
W4VCLREP ; [ 23.10.14 10:03 ] [ 12.09.13 07:14 ] [ 23.09.11 12:50 ]
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 S PRDAY=$G(%ARG("SIKD"))
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 S SUGM1=""
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
 ;
GET ;
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 N DT1,DT2
 ;
 S DT1=$$^%L1DC(%ARG("DAT1"),3)
 S DT2=$$^%L1DC(%ARG("DAT2"),3)
 ;
 D FRM(DT1,DT2)
 Q
 ;
 ;
CHKPRM(STAM) ;
 D PUT^%W3DEB("W4VCLREP-CHKPRM","MESUM=MESUM & ADSUM=ADSUM & DAT1=DAT1 & DAT2=DAT2")
 I '$$DATVLD(DAT1) Q "0;DATENOTVALID;;DAT1ID"_$$DATVLD(DAT1)
 I '$$DATVLD(DAT2) Q "0;DATENOTVALID;;DAT2ID"_$$DATVLD(DAT2)
 I $$^%L1DC(DAT2,3)<$$^%L1DC(DAT1,3) Q "0;RANGENOTVALID;;DAT1IDdd"
 ;;I MESUM>ADSUM Q "0;RANGENOTVALID;;MESUM"
 Q 1
 ;
DATVLD(DAT) ;
 Q $$DATVLD^W4REPSCR(DAT)
 ;
SCRN(STAM) ;
 Q "W4VCLREP"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N CB S CB=$P(A,"\",2)
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 Q:'CB
 N LKH S LKH=$$LK^W4STRING("CB",CB)
 W " onClick=""ShowReceipt('"_CB_"','"_LKH_"','ifr')"""
 Q
 ;
TD ;
 W " style=""text-align:center;cursor:pointer"""
 Q
 ;
 N IND,INDB,A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N CB S CB=$P(A,"\",2) Q:'CB
 S IND=$G(@$$^W4MAIN("TMPREP")@("G",BG,"NVC"))
 S INDB=$G(@$$^W4MAIN("TMPREP")@("G",BG,"NVCB"))
 I 'IND,'INDB Q
 I IND D  Q
 .W " onClick=""ShowValueMsg('"_CB_"','ifr')"""
 Q
 ;
GTRGTD(DOCH) ;
 I $D(@$$^W4MAIN("TMPREP")@("GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=$G(@$$^W4REPSCR@("W4VCLREP","GTR"))
 M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@("W4VCLREP","GTD")
 Q
 ;
 ;
FRM(DT1,DT2) ;
  N (JB,%ARG,%REM,DT1,DT2,SSUM,SUMD,SCB,SCBD,PRDAY)
  S STRING=$G(@$$^WVG@("LKH")) Q:STRING=""
  S GCB=$$^W4GL("KLF")_"("""_STRING_""",""CB"")"
  S (SSUM,SUMD,SCB,SCBD)=0
  S DT0="",I=0
  ;
  S CB="" F  S CB=$O(@GCB@(CB)) Q:CB=""  D
  .S STR=$G(^(CB,"VC")) ;
  .S CARD=+$G(@GCB@(CB,"VC","CARD"))
  .S ASM=$G(@GCB@(CB,"VC","ASM"))
  .S LKHNAME=$G(@GCB@(CB,"VC","NAME"))
  .S SUM=$$TOT^W4LCBCR(CB)
  .S DAT=$$DAT^W4LCBCR(CB)
  .S DATCB=$$^%L1DC(DAT,1)
  .S DT=$$^%L1DC(DATCB,3)
  .I DT<DT1!(DT>DT2) Q
  .I DT'=DT0 D:DT0&PRDAY SUMDAY(DT0) S DT0=DT
  .S ST=DATCB_"\"_CB_"\"_LKHNAME_"\"_CARD_"\"_ASM
  .S ST=ST_"\"_$J(SUM,2,2)
  .S I=I+1
  .S SCB=SCB+1,SCBD=SCBD+1,SSUM=SSUM+SUM,SUMD=SUMD+SUM
  .S @$$^W4MAIN("TMPREP")@("G",I)=ST
  ;
  Q
  ;
  ;
SUMDAY(DT) ;
 N ST
 S ST=$ZD(DT,"DD.MM.YY")_"\-------\------------\-------------\--------\"
 S ST=ST_$J(SUMD,2,2)
 S I=I+1
 S @$$^W4MAIN("TMPREP")@("G",I)=ST
 S I=I+1
 S @$$^W4MAIN("TMPREP")@("G",I)=""
 S (SUMD,SCBD)=0
 Q
 ;

W4VCREP
W4VCREP ; [ 12.06.15 19:27 ] [ 23.10.14 10:03 ] [ 12.09.13 07:10 ]
 N (JB,%ARG,%REM)
 Q:$G(%ARG("SHOW"))=0
 D ^W4IN
 D ^%W1ARG
 ;
 D GET
 ;
 S %SCRN=$$SCRN
 S SUGM1=""
 D PCPRM^W4DMANY(%SCRN)
 Q
 ;
 ;
GET ;
 N TMPREP S TMPREP=$$^W4MAIN("TMPREP")
 K @TMPREP
 K @$$^W4MAIN("TMPREPB")
 N DT,DT1,DT2,I,HBC,HZ,I
 S I=0
 S DT1=$$^%L1DC(%ARG("DAT1"),3)
 S DT2=$$^%L1DC(%ARG("DAT2"),3)
 S I=0
 S (SSUM,SHNH,SBON,SHZ,SUMD,HNHD,BOND,SHZD)=0
 ;
 F DT=DT1:1:DT2 D  I PRDAY,$G(%ARG("SIKD")) D SUMDAY(DT)
 .S PRDAY=0
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 ..I '$D(@$$^W4ORD@(HZ,"VC")),'$D(@$$^W4ORD@(HZ,"CB","VC")) Q
 ..D FRM(HZ,DT)
 Q
 ;
 ;
CHKPRM(STAM) ;
 Q $$DATRNG^W4REPSCR(DAT1,DAT2)
 ;
SCRN(STAM) ;
 Q "W4VCREP"
 ;
TR ;
 N A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HZ S HZ=$P(A,"\",2)
 W " style=""cursor:pointer;color:black"
 I A["--\--" W ";font-weight:bold;font-size:"_$$^W3FSZ(11)
 I A'["--\--" W ";font-size:"_$$^W3FSZ(11)
 W """"
 Q:'HZ
 W " onClick=""ShowOrder('"_HZ_"','ifr')"""
 Q
 ;
TD ;
 W " style=""text-align:center;cursor:pointer"""
 Q
 ;
 N IND,INDB,A S A=$G(@$$^W4MAIN("TMPREP")@("G",BG))
 N HZ S HZ=$P(A,"\",2) Q:'HZ
 S IND=$G(@$$^W4MAIN("TMPREP")@("G",BG,"NVC"))
 S INDB=$G(@$$^W4MAIN("TMPREP")@("G",BG,"NVCB"))
 I 'IND,'INDB Q
 I IND D  Q
 .W " onClick=""ShowValueMsg('"_HZ_"','ifr')"""
 Q
 ;
GTRGTD(DOCH) ;
 I $D(@$$^W4MAIN("TMPREP")@("GTR"))#2 D
 .S @$$^W4MAIN("TMPREP")@("GTR")=$G(@$$^W4REPSCR@("W4VCREP","GTR"))
 M @$$^W4MAIN("TMPREP")@("GTD")=@$$^W4REPSCR@("W4VCREP","GTD")
 Q
 ;
 ;
FRM(HZ,DT) ;
  N (JB,%ARG,%REM,HZ,DT,I,SSUM,SHNH,SBON,SUMD,HNHD,BOND,SHZ,PRDAY)
  S DAT=$$^%L1DC(DT,1)
  ;
  S NVC="" F  S NVC=$O(@$$^W4ORD@(HZ,"CB","VC",NVC)) Q:NVC=""  D
  .S HNH=0
  .S STR=$G(^(NVC)) ;
  .S CARD=$G(^(NVC,"CARD"))
  .I CARD="" S CARD=$G(@$$^W4ORD@(HZ,"CB","VC",NVC,"IN","CARD"))
  .Q:CARD=""
  .S CARD=+CARD
  .S ASM=$$GET^W4GTVCH(HZ,NVC,"ASR","HZMLK")
  .I ASM S MASM(ASM)=""
  .S NAME=$$INVH^%L1FRM($$^WVPRS(STR,"ClientName"))
  .S SUM=$$GET^W4GTVCH(HZ,NVC,"ASR","ASR")
  .S HNH=$$GET^W4GTVCH(HZ,NVC,"ASR","LKHNH")
  .I 'SUM,'HNH Q
  .S PRDAY=1
  .S DAT=$ZD(DT,"DD.MM.YY")
  .S ST=DAT_"\"_HZ_"\"_NAME_"\"_CARD_"\"_ASM
  .S ST=ST_"\"_$J(SUM,2,2)_"\"_$J($G(HNH),2,2)_"\\"
  .S I=I+1
  .S SHZ=SHZ+1,SSUM=SSUM+SUM,SHNH=SHNH+HNH,SUMD=SUMD+SUM,HNHD=HNHD+HNH
  .S @$$^W4MAIN("TMPREP")@("G",I)=ST
  .S @$$^W4MAIN("TMPREP")@("G",I,"NVC")=NVC
  ;
  S NVCB="" F  S NVCB=$O(@$$^W4ORD@(HZ,"VC",NVCB)) Q:NVCB=""  D
  .S STR=$G(^(NVCB)) ;
  .I '$G(@$$^W4ORD@(HZ,"VC",NVCB,"DISC")) Q
  .I $D(@$$^W4ORD@(HZ,"VC",NVCB,"PRPAY")) Q
  .S CARD=$G(@$$^W4ORD@(HZ,"VC",NVCB,"CARD"))
  .I CARD="" S CARD=$G(@$$^W4ORD@(HZ,"VC",NVCB,"IN","CARD"))
  .Q:CARD=""
  .S CARD=+CARD
  .S ASM=$$^WVPRS(STR,"TransId")
  .I $D(MASM(ASM)) Q
  .S NAME=$$INVH^%L1FRM($$^WVPRS(STR,"ClientName"))
  .S SUM=0,HNH=0
  .S BON=$G(@$$^W4ORD@(HZ,"VC",NVCB,"DISC"))
  .I 'BON Q
  .S PRDAY=1
  .S ST=DAT_"\"_HZ_"\"_NAME_"\"_CARD_"\"_ASM
  .S ST=ST_"\\\"_$J(BON,2,2)
  .S I=I+1
  .S SHZ=SHZ+1,SBON=SBON+BON,BOND=BOND+BON
  .S @$$^W4MAIN("TMPREP")@("G",I)=ST
  .S @$$^W4MAIN("TMPREP")@("G",I,"NVCB")=NVCB
  Q
  ;
SUMDAY(DT) ;
 N ST
 S ST=$ZD(DT,"DD.MM.YY")_"\-------\------------\-------------\--------\"
 S ST=ST_$J(SUMD,2,2)_"\"_$J($G(HNHD),2,2)_"\"_$J($G(BOND),2,2)
 S I=I+1
 S @$$^W4MAIN("TMPREP")@("G",I)=ST
 S I=I+1
 S @$$^W4MAIN("TMPREP")@("G",I)=""
 S (SUMD,HNHD,BOND,SHZD)=0
 Q

W4VIDEO
W4VIDEO(HZM,TXT,MC) ; [ 23.11.08 14:23 ] [ 15.11.08 13:47 ] [
 N $ZT
 I '$D(TSS) D ^%L1TS
 S TXT=$$CLST^%L1FRM(TXT,"","")
 S TXT=$$CL1^%L1LPT(TXT)
 ;
 I MC=1 S TXT=$P(TXT,"\",1,3)_"\"_$$D2W^%L1PCEX($P(TXT,"\",4))_"\"_$P(TXT,"\",5,8)_"\"_$$D2W^%L1PCEX($P(TXT,"\",9))
 I MC=4 S TXT=$P(TXT,"\",1,2)_"\"_$$D2W^%L1PCEX($P(TXT,"\",3))_"\"_$P(TXT,"\",5,8)
 I MC=5 S TXT=$P(TXT,"\",1,6)_"\"_$$D2W^%L1PCEX($P(TXT,"\",7))_"\"_$P(TXT,"\",8,20)
 I MC=9 S TXT=$P(TXT,"\",1)_"\"_$$D2W^%L1PCEX($P(TXT,"\",2))_"\"_$P(TXT,"\",3,20)
 ;
 N ST S ST=$$^W4MYDVN_"~"_$H_"~"_$G(HZM)_"~"_MC_"~"_TXT
 S @$$^W4MAIN("pcv2")@($O(@$$^W4MAIN("pcv2")@(999999),-1)+1)=ST
 Q

W4VLDAI
W4VLDAI(SH) ; [ 30.08.14 13:48 ] [ 29.08.14 18:33 ] [ 28.08.14 16:13 ]
 N (JB,%ARG,%REM,SH)
 S OK=""
 S CD=$$CDST^W3HZMST(JB,SH)
 S COL=$$QNST^W3HZMST(JB,SH)
 ;
 S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N,N'=SH D
 .S A=$G(^(N))
 .I $$LVST^W3HZMST(JB,N) Q
 .I '$$NOMOD^W3HZMST(JB,N) Q
 .S NOMS=$$^W4BDAI(CD,COL,N)
 .I NOMS S OK=$S($L(OK):OK_",",1:"")_NOMS
 ;
 Q OK

W4VRXNIZ
W4VRXNIZ(N) ; [ 05.08.23 07:14 ] [ 
 W "<td align=""center"">"
 W " <table width=""100%""><tr>"
  W " <td align=""center"" style=""cursor:pointer"" onClick=""Vverx('"_N_"')"">",!
  W "  <img src=""w3vverx.jpg"">",!
  W " </td>",!
  W " <td align=""center"" style=""cursor:pointer"" onClick=""Vniz('"_N_"')"">",!
  W "  <img src=""w3vniz.jpg"">"
  W " </td>"
 W " </tr></table>",!
 W "</td>" 
 Q

W4VT
W4VT(VT) ; [ 14.05.26 09:10 ] [ 15.04.26 08:38 ] [ 14.04.26 02:38 ] 
 N KK S KK="mewcx`w"
 I $$PAPJ^W4PRM S KK="cx`whtib"
 Q $S(VT=1:"hxk`xyi",VT=2:"dfie",VT=3:"qxpiic",VT=4:"AM.EXP",VT=5:"JCB ",VT=6:"ine`l ",VT=7:KK,VT=9:"ihipit",1:"")
 ;
U(UVT)
 N NUM
 S NUM=$A(UVT)-72
 Q $$W4VT(NUM)
 ;
ST() ;
 N ST S ST=" "
 N I F I=1:1:9 D
 .I $$USNO^W4Z(I) Q
 .S ST=" : "_$$W4VT(I)_ST
 Q $E(ST,3,$L(ST))
 ;
GETVT(NVT) ;
 N MNVT
 N I
 F I=1:1:7,9 S MNVT($$W4VT(I))=I
 I $$FUNC^%UCASE(NVT)="ISRACARD" Q 1
 I $$FUNC^%UCASE(NVT)="VISA" Q 2
 I $$FUNC^%UCASE(NVT)="DINERS" Q 3
 I $E($$FUNC^%UCASE(NVT),1,2)="AM" Q 4
 I $$FUNC^%UCASE(NVT)="MAX" Q 6
 I $$FUNC^%UCASE(NVT)="GIFT" Q 7
 Q +$G(MNVT(NVT))
 ;
GFC() ; 
 Q 7 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4VVCA
W4VVCA(JB,SUM) ; [ 11.08.26 13:44 ] [ 10.08.26 17:07 ] [ 09.08.26 19:47 ] 
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D ^%W1HD("INPUTCRCARDREMOTE")
 ;
 N H2 S H2=+$G(%ARG("H2"))
 I H2,$D(@$$^W4GL("W4VVCA")@(JB,+SUM,H2)) D WASINUSE W "</div>" Q
 I $P($H,",",2)-H2>300 D WASINUSE Q
 ;
 W "<p style=""font-size:"_$$^W3FSZ(14)_";color:red"">",! 
  W $$^%W1DICT("ASTERISKFIELDSMUST")
 W "</p>",!
 ;
 W "<p style=""font-size:"_$$^W3FSZ(18)_""">",! 
  W $$^%W1DICT("TOPAY")_" : "_$J(SUM,2,2)
 W "</p>",!
 ;
 W "<table>",!
  W "<tr>"
   W "<td>"_$$ZW_$$^%W1DICT("CREDITCARDNUMBER")_"</td>"
   W "<td><input type=""text"" size=""20"" id=""crcard"" /></td>"
  W "</tr>",! 
  ;
  ;;W "<tr>"
  ;; W "<td>"_$$ZW_$$^%W1DICT("FIRSTPAYMENT")_"</td>"
  ;; W "<td><input type=""text"" size=""7"" id=""p1"" value="""_$J(SUM,2,2)_""" /></td>"
  ;;W "</tr>",!
  ;
  ;;W "<tr>"
  ;; W "<td>"_$$^%W1DICT("PAYMENTSNUMBERWITHOUTFIRST")_"</td>"
  ;; W "<td><input type=""text"" size=""7"" id=""pn"" /></td>"
  ;;W "</tr>",!
  ;
  ;;W "<tr>"
  ;; W "<td>"_$$^%W1DICT("NEXTPAYMENTS")_"</td>"
  ;; W "<td><input type=""text"" size=""7"" id=""pc"" /></td>"
  ;;W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$ZW_$$^%W1DICT("MMYY")_"</td>"
   W "<td><input type=""text"" size=""4"" id=""mmyy"" /></td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$ZW_$$^%W1DICT("BACKDIGITS")_"</td>"
   W "<td><input type=""text"" size=""3"" id=""cvv"" /></td>"
  W "</tr>",!
  ;
  W "<tr>"
   W "<td>"_$$ZW_$$^%W1DICT("IDNUMBER")_"</td>"
   W "<td><input type=""text"" size=""9"" id=""tz"" /></td>"
  W "</tr>",!
  ;
 W "</table>",!
 ; 
 W "<p>&nbsp;</p>",!
 ;
 D ^W4SBM
 ;
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 I $$GETP^%W1PRM("CAREMOTE")=-1 Q "TOOLATE"
 ;
 D PRS^%L1FRM(PRM,"CRCARD;P1;PC;PN;MMYY;CVV;TZ;SUM;H2",";")
 I MMYY'?4N Q "EXPDATEWRONG~mmyy"
 N MM,YY
 S MM=$E(MMYY,1,2)
 S YY=$E(MMYY,3,4)
 I MM>12 Q "EXPDATEWRONG~mmyy"
 I (YY_MM)<$ZD($H,"YYMM") Q "EXPDATEWRONG~mmyy"
 ;
 I CVV'?3N Q "CVVWRONG~cvv"
 I '$$^W4TZ(TZ) Q "IDWRONG~tz"
 ;
 ;;I PN=1,'PC S PN=0
 ;;I PC!PN,$J(P1+(PC*PN),2,2)'=$J(SUM,2,2) Q "PAYMENTSTOTALISWRONG~p1"
 ;;;
 ;;I 'PC,'PN S P1=""
 S SUM=$J(SUM,2,2)
 D PUT^W4TMPPAY(3,"SUM",SUM)
 D PUT^W4TMPPAY(3,"TOPAY",SUM)
 ;
 D PUT^W4TMPPAY(3,"SI",1)
 D PUT^W4TMPPAY(3,"SA",1)
 I PN,PC D PUT^W4TMPPAY(3,"SA",8)
 ;
 N I F I="CRCARD","P1","PC","PN","MM","YY","CVV","IDNUMBER" D
 .N I1 S I1=I
 .I I="CRCARD" S I1="CREDITCARDNUMBER"
 .D PUT^W4TMPPAY(3,I1,$G(@I))
 ;
 D PUT^%W1PRM("CAREMOTE",1)
 S @$$^W4GL("W4VVCA")@(JB,+SUM,+H2)=$H
 Q 1
 ;
 ;
WASINUSE ;
 W "<br><br><br><span style=""font-size:"_$$^W3FSZ(18)_""">"_$$^%W1DICT("THISLINKWASINUSE")_"<span>",!
 Q
 ;
ZW() ;
 Q "<span style=""font-size:"_$$^W3FSZ(16)_";color:red"">*</span>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4VVHBMS
W4VVHBMS ; [ 03.07.25 09:41 ] [ 04.06.25 10:33 ] [ 05.12.24 13:31 ] 
 N (JB,%ARG,%REM)
 ;
 I $$VVOD D
 .S MK("HB")=1
 .S MK("HBMAS")=2
 ;
 I '$$VVOD D
 .S MK("HB")=1
 .S MK("CUSTTZ")=2
 .S MK("OPRTRTZ")=3
 ;
 D PUT^%W1PRM("VIRTKB",1)
 ;
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 D ^%W1HD("HBMASAUTH")
 ;
 W "<p></p>",!
 ;;W "<p>&nbsp;</p>",!
 W "<table>",!
 ;
 W "<tr>"
  W "<td>"
   W "<span>"_$$^%W1DICT("CHOICEKINDOFINVOICE")_"</span>"_$$NBSP^%L1FRM(5)
   W "<select id=""coddoc"" onChange=""OnChangeSel()"">",!
    W "<option value=""HMK"">"
     W $$^%W1DICT("INVOICERECEIPT")
    W "</option>"
    W "<option value=""H"">"
     W $$^%W1DICT("INVOICE")
    W "</option>"
    W "<option value=""TZ"">"
     W $$^%W1DICT("DEBINVOICE2CUST")
    W "</option>"
   W "</select>",!
  W "</td>"
 W "</tr>",!
 ; 
 W "<tr><td>&nbsp;</td></tr>",!
 ;
 ;
 W "<tr>"
  W "<td>"
    W "<span>"_$$^%W1DICT("INVOICENUMBERNOTORDER!")_"</span><BR><BR>"
   D ^W4BUTTON("list","ERRORHBMASLIST","ErrorHbMasList()","color:darkpink")
   W "<BR><BR>"
   D INP("HB")
   W $$NBSP^%L1FRM(2)
   D ^W4BUTTON("show","SHOW","ShowInvoice()","color:blue")
  W "</td>"
 W "</tr>",!
 ;
 W "<tr><td id=""infhb"" style=""color:green"">&nbsp;</td></tr>",!
 ;
 W "<tr>",!
  W "<td>"
  ;
  I '$$VVOD D
  . W "<span>"_$$^%W1DICT("CUSTBUSINESSID")_"</span><BR>"
  . D INP("CUSTTZ") W "<BR><BR>"
  . W "<span>"_$$^%W1DICT("OPRTRTZ")_"</span><BR>"
  . D INP("OPRTRTZ")
  ;
  I $$VVOD D
  . W "<span>"_$$^%W1DICT("HBMAS9")_"</span><BR><BR>"
  . D INP("HBMAS")
 W "</tr>",!
 ;
 W "</table>",!
 ;
 W "<p></p>",! 
 ;
 W "<div id=""divbut"" align=""center"">",!
  D ^W4SBMBCK
 W "</div>",!
 ;
 W "<p></p>",!
 ;
 I '$$VVOD D
 .W "<p>"
 . W "<span>"_$$^%W1DICT("DORESULT")_"</span><BR><BR>"
 . W "<input id=""hbmasres"" readonly=""readonly"" size=""50"" style=""text-align:center"" >",!
 .W "</p>"
 .
 .W "<span>"_$$^%W1DICT("HBMAS9")_"</span><BR><BR>"
 .W "<input id=""HBMAS"" readonly=""readonly"" size=""9"">",!
 .W "</div>",!
 Q
 ;
 ;
INP(ID) ;
 N K,SCRN
 I $$VVOD S SCRN="W4VVHBMS"
 E  S SCRN="W4VVHBM1"
 S K=$G(MK(ID))
 W "<input type=""text"" id="""_ID_""" "
 N ONFOC S ONFOC="this.style.backgroundColor='lightyellow';ShowVirtKB(this,'"_SCRN_"','N','9',"_K_")"
 I ID="HBMAS",$$VVOD S ONFOC=ONFOC_";OnChangeHb()"
 I ID="HB"!(ID="CUSTTZ")!(ID="OPRTRTZ") S ONFOC=ONFOC_";OnChnHb()"
 W "onFocus="""_ONFOC_""" "
 ;
 I ID="OPRTRTZ" D
 .W " value="""_$$OPRTRTZ^W4HSBGET_""" "
 ;
 W " onChange=""OnInput('"_ID_"')"" "
 ;;W " onKeyUp=""OnKeyUpHb('"_ID_"')"" "
 W " onBlur =""this.style.backgroundColor='white';this.setSelectionRange(0,0)"" "
 W "style=""font-size:"_$$^W3FSZ(22)_""" size=""9"" >"
 Q
 ;
 ;
SBM(PRM) ;
 N (JB,%ARG,%REM,PRM)
 S CODDOC=$P(PRM,";")
 S HB=$P(PRM,";",2)
 S TZ=$P(PRM,";",3)
 S VVOD=$P(PRM,";",4)
 S HBMAS=$P(PRM,";",5)
 S OPRTRTZ=$P(PRM,";",6)
 ;
 I 'HB Q "INVALIDINVOICENUMBER"
 ;
 I CODDOC="HMK",'$D(@$$^W4GL("P1HB")@(HB)) Q "INVOICENOTEXIST"
 I CODDOC'="HMK" D ^W4HSBGET(HB,CODDOC) I $D(W4HSB)<10 Q "INVOICENOTEXIST"
 ;
 I TZ S @$$^W4GL("W4HBMAS")@(CODDOC,HB,"VATLK")=TZ
 I OPRTRTZ S @$$^W4GL("W4HBMAS")@(CODDOC,HB,"OPRTRTZ")=OPRTRTZ
 ;
 S ER=""
 ;
 I VVOD,$L(HBMAS)<9 Q "HBMAS9MIN"
 ;
 I VVOD D  Q "OK"
 .S @$$^W4GL("W4HBMAS")@(CODDOC,HB)=HBMAS
 ;
 S HBMAS=$$GETNOM^W4HBMAS(HB,CODDOC)
 I HBMAS K @$$^W4GL("W4HBMAS")@(CODDOC,HB,"ERROR") Q "OK"
 ;
 I CODDOC="HMK" D  G END
 .S HZM=$P($G(@$$^W4GL("P1HB")@(HB)),"\")
 .I 'HZM S ER="ORDERNUMBERNOTFOUND" Q
 .D HBMAS^W4MKR(HZM,HB)
 .S ER="OK"
 ;
 D HBMAS^W4LHBNEW(HB,CODDOC)
 S ER="OK"
END Q ER
 ;
 ;
VVOD() ;
 Q +$G(%ARG("VVOD"))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4VVSH
W4VVSH ; [ 23.08.12 13:30 ] [ 16.06.12 09:56 ] [ 15.06.12 18:45 ] [
 W "<div dir="""_$$^%W1DIR_""" align=""center"">",!
  W "<br><br>",!
  W "<table border=""0"" style=""font-size:"_$$^W3FSZ(16)_";width:60%;text-align:center"""">",!
   W "<tr>"
    W "<td>"_$$^%W1DICT("TABLENUMBER")_"</td>",!
    W "<td colspan=""3"">"
     W "<input type=""text"" dir=""LTR"" style=""font-size:"_$$^W3FSZ(16)_""" "
     W "id=""tblnmb"" size=""3"" maxlength=""3"" >"
    W "</td>",!
   W "</tr>"
   ;
   D SPACE
   ;
   W "<tr>",!
   W " <td colspan=""3"">"
    W " <input type=""button"" class=""btn"" style=""color:green"" value=""&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("SUBMIT")_"&nbsp;&nbsp;&nbsp;"" "_$$^W4TOUCH_"=""Submit()"">"
   W " </td>",!
   W " <td colspan=""3"">"
    W " <input type=""button"" class=""btn"" style=""color:red"" value=""&nbsp;&nbsp;&nbsp;"_$$^%W1DICT("CANCEL")_"&nbsp;&nbsp;&nbsp;"" "_$$^W4TOUCH_"=""Cancel()"">"
   W " </td>",!
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
SPACE W "<tr><td colspan=""4"">&nbsp;</td></tr>",!
 Q

W4VVTZ
W4VVTZ ; [ 17.06.26 11:00 ] [ 20.05.24 16:13 ] [ 12.05.24 15:09 ] 
 N (JB,%ARG,%REM)
 S %ARG("MAXL")=9
 S %ARG("HEAD")="CUSTBUSINESSID"
 D ^W4KB
 Q
 ;
 ;
PUT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 ;;S ^AA("W4VVTZ-PUT","PRM")=PRM
 
 S HB=$P(PRM,";") I 'HB Q "NOTINVOICE"
 S CODDOC=$P(PRM,";",2) I CODDOC="" Q "NOCODDOC"
 S TZ=$P(PRM,";",3) I 'TZ Q "NOTZ"
 ;;S ^AA("W4VVTZ-PUT","CODDOC")=CODDOC
 ;
 K @$$^W4GL("W4HBMAS")@(CODDOC,HB)
 S @$$^W4GL("W4HBMAS")@(CODDOC,HB,"VATLK")=TZ
 ;
 I CODDOC="HMK" D
 .N HZ S HZ=$$GETP^%W1PRM("HZM")
 .D HBMAS^W4MKR(HZ,HB)
 ;
 I CODDOC="H"!(CODDOC="TZ")!(CODDOC="HBZ") D
 .D HBMAS^W4LHBNEW(HB,CODDOC)
 ;
 Q 1
 
 
 
 
 
 
 
 
 
 
 
 
 

W4VWDLV
W4VWDLV ; [ 12.09.22 15:14 ] [ 10.12.20 14:35 ] [ 06.12.20 10:20 ] 
 Q
 ;
INIT ;
 D PUT^%W1PRM("NMAP",1),PUT^%W1PRM("MSD",1),PUT^%W1PRM("VWDLV",1)
 D ^W4CSS
 K @$$^W4MAIN("VIB1")
 I $G(%ARG("SLPLAN")),$G(%ARG("DAT")) D CRVIB1(%ARG("DAT")) Q
 M @$$^W4MAIN("VIB1")=@$$^W4MAIN("VIB")
 Q
 ;
GETNEXT()
 N IND,HZ,VIB1
 S VIB1=$$^W4MAIN("VIB1")
 S IND=""
GETNEXT1 S IND=$O(@VIB1@(IND))
 I IND="" Q "<PUSTO>"
 K @VIB1@(IND)
 S HZ=$E(IND,10,20)
 S HZ=$$SPA^%L1FRM(HZ) I HZ="" G GETNEXT1
 I $$^W4HZMH(HZ) G GETNEXT1
 I $$DEL^W4DEL(HZ) G GETNEXT1
 Q HZ
 ; 
DLVLST(PRM) ; 
 N (JB,%ARG,%REM,PRM) ;
 S SLPLAN=$P(PRM,";")
 S DAT=$P(PRM,";",2)
 S ST=""
 ;
 I SLPLAN,DAT D CRVIB1(DAT) Q ST
 ;
 D INIT^W4DLVORD
 ;
 S %ARG("NOSENDEDORDS")=1
 S %ARG("TIMESORT")=1
 S %ARG("ASCENDING")=1 
 S %ARG("SHORTSHOW")=1 
 S %ARG("DELETEDORDS")=0
 S %ARG("NOSENDEDORDS")=1
 S %ARG("NOPAIDORDS")=1
 S %ARG("PAIDORDS")=1
 S %ARG("SHOWTAW")=1
 ;
 S DRC=1
 ;
 S TXTMRQ=""
 S FIRSTLINE=1
 ;
 S VIB=$$^W4MAIN("VIB")
 K @VIB
 S TMP=$$^W4MAIN("TMP")
 K @TMP
 ;
 S %ARG("DISPATH")=1 
 S %ARG("MSD")=1 
 D CRVIB^W4DLVORD(1)
 ;
 S ST=""
 S N="" F  S N=$O(@VIB@(N)) Q:N=""  D
 .S HZ=$E(N,10,20)
 .S HZ=$$SPA^%L1FRM(HZ) Q:'HZ
 .S ST=ST_HZ_","
 ;
 I $E(ST,$L(ST))="," S ST=$E(ST,1,$L(ST)-1)
 I ST?.P S ST="<PUSTO>"
 Q ST
 ;
 ;
DESCR(ORD) ;
 N (JB,%ARG,ORD)
 I $G(ORD)=0 Q $$H2U^%L1FRM("eply mewin")
 ; 
 S TX=ORD
 I $$MSPYOM^W4PRM S TX=$$H2U^%L1FRM($$TX^W4MSPYOM(ORD))
 ;;S TX=TX_" "_$$NBSP^%L1FRM(5)_" "_$$TRH^W4HZMST(ORD)_" "_$$SHAA^W4HZMST(ORD)_"<BR>"
 S TX=TX_" "_$$NBSP^%L1FRM(2)_" "_$$SHAA^W4HZMST(ORD)_"<BR>"
 ;
 N KTV S KTV=$$KTV(ORD)
 S TX=TX_$$H2U^%L1FRM(KTV)
 S TX="<div "_$$^%W1ALIGN_"  dir="""_$$^%W1DIR_""">"_TX_"</div>"
 Q TX
 ;
J(TX,DL) ;
 Q $TR($J("",DL-$L(TX))," ","-")_TX
 ;
KTV(ORD) ;
 N KTV S KTV=$$KTV^W4HZMST(ORD)
 N BAIT S BAIT=$$BAIT^W4HZMST(ORD)
 N IR S IR=$$IR^W4HZMST(ORD)
 I IR=""!($TR(IR," ","")="TAKEAWAY")!($TR(IR,". ","")="TAW") Q ""
 I BAIT S KTV=BAIT_" "_KTV
 I IR'="",$TR(IR," ","")'="TAKEAWAY",$TR(IR,". ","")'="TAW" S KTV=IR_" , "_KTV
 Q KTV
 ;
BTN ; 
 D ^W4BTN("REFRESH","ShowMap()","blue","",18,10)
 W $$NBSP^%L1FRM(5)
 D ^W4BTN("BACK","Back()","red","",18,10)
 Q 
 ;
CRVIB1(DAT)   ;
 N VIB1 S VIB1=$$^W4MAIN("VIB1") K @VIB1
 N VRMHZ S VRMHZ=$$^W4MAIN("VRMHZ")
 S ST=""
 N N S N="" F  S N=$O(@VRMHZ@(N)) Q:N=""  D
 .N HZ S HZ=$G(^(N)) Q:'HZ
 .N DT S DT=$$^%L1DC(DAT,3)
 .N A S A=$G(@$$^W4GL("W4SLPLAN")@(DT,HZ)) Q:'A 
 .N N1 S N1=99999_$E(N,1,4)_$J($E(N,5,12),9)
 .S @VIB1@(N1)=HZ
 .S ST=ST_HZ_","
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4VWGR
W4VWGR(GR) ; [ 02.11.22 13:34 ] [ 10.08.21 12:38 ] [ 
 I $G(GR)="" Q 0
 I $P($G(@$$^W4GL("W3SUG")@(GR)),"\")=0 Q 0
 I $$^W6,$P($G(@$$^W4GL("W6SUG")@(GR)),"\")=0 Q 0
 Q 1
 
 

W4VWPRN
W4VWPRN ; [ 06.12.20 17:18 ] [ 30.11.20 11:41 ] [ 
 N (JB,%ARG,%REM)
 D ^%W1ARG
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_""" >"
   W CD_" "_$$H2U^%L1FRM($$SHEM^W4P(CD))
  W "</span>",!
  W "<br><br>",!
  W "<span dir=""LTR"" style=""font-size:"_$$^W3FSZ(12)_""" >"
   W $$PRINTIG^W3PRMDP(CD)
  W "</span>",!
  W "<br><br><hr><br>",!
  D ^W4PRNLST
  W "<br><br><br>",!
  S W4BCK("NM")="CLOSE"
  D ^W4BCK
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4VWWTR
W4VWWTR ; [ 18.12.25 17:04 ] [ 08.02.15 09:29 ] [
 N (JB,%ARG,%REM)
 D ^W4LEVSPR
 S TMPST=$$^W4MAIN("TMPST")
 K @TMPST
 S N=""  F  S N=$O(@$$^W4MAIN("TMPREP")@("G",N)) Q:N=""  D
 .S A=$G(^(N))
 .S WTR=$P(A,"\") Q:WTR=""
 .S @TMPST@(WTR)=$P(A,"\",2)
 ;
 S (GL,GLB)=TMPST
 D VIEW
 ;
 K @TMPST
 K @$$^W4MAIN("TMPREP")
 Q
 ;
 ;
VIEW ;
 W "<div "_$$^%W1ALIGN_" >",!
 D CLOSE
 W "<br>",!
 W "</div>",!
 ;
 W "<table id=""TblStr"" width=""80%"" dir="""_$$^%W1DIR_""" "
  I $G(%ARG("PADDING")) W " cellpadding="""_$G(%ARG("PADDING"))_""" "
  W " style=""font-size:"_$$^W3FSZ(24)_""" "
 W ">",!
 ;
 N ITEM,ITEM1
 S ITEM="" F  S ITEM=$O(@TMPST@(ITEM))  Q:ITEM=""  D
 .S ITEM1=$$NAME(ITEM)
 .W "<tr>"
 .W "<td id=""tdid"_ITEM_""" "_$$^%W1ALIGN_" onClick=""ClickItem('"_ITEM_"')"""
 .W " dir="""_$$^%W1DIR_""""
 .N COLOR S COLOR="blue"
 .W " style=""cursor:pointer;color:"_COLOR_";text-decoration:underline"" >"
 .W $$H2U^%L1FRM(ITEM1)
 .W "</td>"
 .
 .W "</tr>",!
 W "</table>",!
 D CLOSE
 Q
 ;
 ;
NAME(ITEM) ;
 N ST,NAME
 S NAME=$G(@GLB@(ITEM))
 Q NAME
 ;
CLOSE ;
 W "<input type=""button"" value="""_$$^%W1DICT("CLOSE")_""" "
 W $$^W4TOUCH_"=""Close()"" style=""color:red"" "
 Q
 

W4WAITER
W4WAITER(STAM) ; [ 03.09.20 12:20 ] [ 16.03.12 22:05 ] [ 19.08.10 10:02 ] 
 I $$DLVCSR Q $$^%W1DICT("RECEIVER")
 I $$MTAW Q $$^%W1DICT("CASHIER")
 Q $$^%W1DICT("WAITER")
 ;
CHOICE(STAM) I '$$MTAW,'$$POS^W4MTAW,'$$DLVCSR Q $$^%W1DICT("CHOICEWAITER")
 I $$DLVCSR Q $$^%W1DICT("CHOICERECEIVER")
 Q $$^%W1DICT("CHOICECASHIER")
 ;
PC(STAM) ;
 I $$DLVCSR Q " lawn"
 N HZM S HZM=$$GETP^%W1PRM("HZM")
 I $$HZM^W4MSL(HZM) Q " lawn"
 I $$MTAW!$$POS^W4MTAW Q "(z)i`tew"
 Q " xvln"
 ;
MTAW(STAM) Q $$MTAW^W4MTAW
 ;
DLVCSR(STAM) Q $$^W4DLVCSR
 

W4WASSND
W4WASSND(TM)  ; [ 15.06.18 15:46 ] [ 
 N SEC1 S SEC1=$P(TM,",")*(3600*24)+$P(TM,",",2) 
 N TRANL S TRANL=$$^W4GL("TRANL")
 N LAST S LAST=$O(@TRANL@(99999999),-1)
 I 'LAST Q 0
 N I F I=LAST:-1:1 Q:$G(@TRANL@(I))
 N TML S TML=$P($G(@$$^W4GL("TRANL")@(I)),"^")
 ;
 I 'TML Q 0
 I SEC1<($P(TML,",")*(3600*24)+$P(TML,",",2)) Q 1
 Q 0
 
 
 

W4WDSCR
W4WDSCR(STAM) ; [ 14.01.26 17:25 ] [ 11.01.26 10:56 ] [ 13.10.24 08:36 ] 
 Q $$GETP^%W1PRM("WDSCR")
 ;
1024(STAM) ;
 N WD S WD=$$W4WDSCR
 Q WD<1300
 ;
1700(STAM) ;
 N WD S WD=$$W4WDSCR
 Q WD>1700
 ;
HG() ; 
 Q $$GETP^%W1PRM("HGSCR") 
 ;
HIGHT() ; 
 I $$HG()>$$W4WDSCR Q 1
 Q 0
 
 
 
 
 
 

W4WEB
W4WEB ; [ 13.04.21 11:49 ] [ 17.03.19 15:08 ] [ 07.03.19 12:22 ] 
 ; --- SHIDUR KVAZIM LE SHARAT
 ; -- PARAMETRIM : ^P1PRM("WEB","MSD")
 ;                 ^P1PRM("WEB","SRVADDR")
 ;-----------------------------------------------
BG S $ZT="S zr=$R ZG "_$ZL_":ER^W4WEB"
 ;;H 2 Q
 ;;I 1/0
 I '$G(JB) S JB=$$^%W1SsID("W4WEB")
 I $$FLAG("WEB") Q
 S @$$^W4flag@("WEB")=$$^W4MYDVN
 D ^W4IN
 ;
CYC ;
 S $ZT="S zr=$R ZG "_$ZL_":ER^W4WEB"
 ;
 S P1PCDOS=$G(P1PCDOS)+1
 I '(P1PCDOS#50),$$^%L1FLAG("^flag(""WEB"")") Q
 I '(P1PCDOS#50) D HZLINKW^W3NEWHZN ;-- BDIKA MA SHULAM
 ;
 I $D(^[$$^W3MAIN]STLOOP("WEB")) D KILLFLAG("WEB") Q
 I $D(^[$$^W3MAIN]STLOOP("PC")) D KILLFLAG("WEB") Q
 ;
EC ;
 S GLWEB="^[$$^W3MAIN]P1WEB"
 ;
 S WEBMSD="" F  S WEBMSD=$O(@GLWEB@(WEBMSD)) Q:WEBMSD=""  D  ;
 .N FLIND S FLIND=""
 .F  S FLIND=$O(@GLWEB@(WEBMSD,FLIND)) Q:FLIND=""  I FLIND'="PROT" D  H 1
 ..N FL,GLOB,ADDR,ZSY S ZSY=0
 ..S FL=$G(@GLWEB@(WEBMSD,FLIND,"FL")) I FL="" S ZSY=-1 G ES
 ..I FL'["_" S FL=FL_"_"_WEBMSD
 ..I $L($G(@GLWEB@(WEBMSD,FLIND,"DOP"))) D
 ...S FL=FL_"-"_^("DOP")
 ..N ENDFL S ENDFL=FL_".END"
 ..S GLOB=$G(@GLWEB@(WEBMSD,FLIND,"GLOB")) I GLOB="" S ZSY=-2 G ES
 ..S ADDR=$G(@$$^W4PRM@("WEB","SRVADDR")) Q:ADDR=""
 ..;
 ..I '$$^%L1G2F(GLOB,FL) S ZSY=-3 G ES
 ..
 ..S %L2MODEM("WEB")=1
 ..D ^%L1FTP(ADDR,FL) I $ZSY S ZSY=$ZSY G ES
 ..
 ..O ENDFL:(REWIND:NEWVERSION) U ENDFL W "1",! C ENDFL ; -- SEND ENDFILE
 ..S %L2MODEM("WEB")=1
 ..H 1 D ^%L1FTP(ADDR,ENDFL)
 ..S ZSY=$ZSY
ES ..;
 ..I 'ZSY D
 ...S @GLWEB@(WEBMSD,"PROT",$O(@GLWEB@(WEBMSD,"PROT",99999),-1)+1)="OK\"_FL_"\"_$ZD($H,"DD.MM.YY  24:60")
 ..
 ..K @GLWEB@(WEBMSD,FLIND) K @GLOB
 ..
 ..I ZSY S @GLWEB@(WEBMSD,"PROT",$O(@GLWEB@(WEBMSD,"PROT",99999),-1)+1)="NOK\"_FL_"\"_$ZD($H,"DD.MM.YY  24:60")_"\"_ZSY
 ..I $D(FL),$$^%L1ZOS(2,FL)
 ..I $D(ENDFL),$$^%L1ZOS(2,ENDFL)
 ;
 H 2 G CYC
 Q
 ;
ER ;
 S $ZT="S zr=$R ZG "_$ZL_":ER^W4WEB"
 ;;I 1/0
 D KILLFLAG("WEB")
 D SVER^%L1X
 H 12 G CYC
ER1 H
 ;
TV S $ZT="S zr=$R ZG "_$ZL_":ER^W4WEB"
 D KILLFLAG("WEB") G BG
 ;
FLAG(IND) ;
 I $G(@$$^W4flag@(IND)),$G(@$$^W4flag@(IND))'=$$^W4MYDVN Q 1
 Q 0
 ;
KILLFLAG(IND) ;
 K @$$^W4flag@(IND)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4WHODEL
W4WHODEL(STAM) ; [ 12.12.21 19:04 ] [ 25.05.14 19:40 ] [
 N WHO
 S WHO=$$DOP^W4NAME($$GET^W4TMPANS("DEL","WHOSUBMIT"))
 I WHO="00000",$$PSWDRG^W4PRM S WHO=$$DOP^W4NAME($$GETP^%W1PRM("MNL"))
 Q WHO
 
 
 

W4WORKSZ
W4WORKSZ() ; [ 12.05.25 10:37 ] [ 
 I $$1024^W4WDSCR Q 100
 Q 130

W4WRKENG
W4WRKENG ; [ 13.08.25 02:36 ] [ 12.08.25 17:41 ] [ 
 N (JB,%ARG,%REM)
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 D ^%W1HD("ABROADWORKERS","",2)
 W "<p>&nbsp;</p>",!
 W "<table id=""Tbl"" cellpadding=""5""cellspacing=""0"" border=""1"" width=""20%"">",!
  W "<tr>"
   W "<th>"_$$^%W1DICT("ABROADWORKERNUMBER")_"</th>"
  W "</tr>",!
  ;
  S N="",I=0 F  S N=$O(@$$^W4GL("W4WRKENG")@(N)) Q:N=""  D
  .S I=I+1
  .W "<tr>"
  .W "<td align=""center"" >"
  . D SELOV(I,N)
  . W "</td>" 
  .W "</tr>",!
  ;
  F I1=I+1:1:20 D
  .W "<tr>"
  .W "<td align=""center"" >"
  . D SELOV(I1,0)
  . W "</td>" 
  .W "</tr>",!
  ;
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SELOV(I,N) ;
 N GL S GL=$$^W4GNAME
 W "<select id=""ov"_I_""">",!
 W " <option value=""0"" "
 I '$G(N) W " selected=""selected"" " 
 W ">"_$$^%W1DICT("CHOICEWORKER")_"</option>",!
 ;
 N N1 S N1="" F  S N1=$O(@GL@(N1)) Q:N1=""  I N1?5N D
 .I '$$GET1^W4LEVPR(N1,"PAIL") Q
 .I '$$GET1^W4LEVPR(N1,"MTIP") Q
 .W " <option value="""_N1_""" "
 .I $G(N),N1=N W " selected=""selected"" "
 .W ">"_N1_" "_$$H2U^%L1FRM($$^W4NAME(N1))_"</option>",!
 ;
 W "</select>",! 
 Q
 ;
 ;
SAVE(ST) ;
 K @$$^W4GL("W4WRKENG")
 N I F I=1:1:$L(ST,"~")-1 D
 .S OV=$P(ST,"~",I)
 .I OV,OV?5N S @$$^W4GL("W4WRKENG")@(OV)=""
 Q 1
 
 
 
 
 
 
 

W4YESNO
W4YESNO ; [ 22.08.23 08:12 ] [ 09.10.22 14:55 ] [ 02.10.22 17:11 ] 
 N (JB,%ARG)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" "
  I $L($G(%ARG("STYLE"))) D
  .W " style="""_$G(%ARG("STYLE"))_""" "
 W ">",!
  W "<br>",!  
  S ASKSTYLE="font-size:"_$$^W3FSZ(18)_";color:red"
  I $L($G(%ARG("ASKSTYLE"))) D
  .S ASKSTYLE=%ARG("ASKSTYLE")
  W "<p style="""_ASKSTYLE_""" >",!
  S ASK=$G(%ARG("ASK"))
  I ASK="" S ASK="SUBMIT?"
  W $$^%W1DICT(ASK),!
  W "</p>"
  ;
  S BTNWD=120
  I $G(%ARG("BTNWD"))>90 S BTNWD=%ARG("BTNWD")
  D
  .I $G(%ARG("HRZ")) D HRZ Q 
  .D VERT
 W "</div>",!
 Q
 ;
 ;
HRZ ;
 W "<table>",!
 W "<tr>"
  W "<td>"
   D BUTTONYES
  W "</td>",! 
  ;
  W "<td>&nbsp;</td>"
  ;
  W "<td>"
   D BUTTONNO
  W "</td>",! 
  W "</tr>"
  W "</table>",!
 Q
 ;
 ;
VERT ;
 W "<table>",!
 W "<tr>"
  W "<td>"
   D BUTTONYES
  W "</td>",! 
  W "</tr>",! 
  ;
  W "<tr><td>&nbsp;</td></tr>" 
  W "<tr>"
  W "<td>"
   D BUTTONNO
  W "</td>",! 
  W "</tr>"
  W "</table>",!
 Q
 ;
BUTTONYES ;
 S PROCSBM=$G(%ARG("YES"))
 I PROCSBM="" Q
 N SBM S SBM=$G(%ARG("TXTYES"))
 I SBM="" S SBM="YES"
 S EV=""
 D ^W4BTN(SBM,PROCSBM,"green",EV,18,7,$$^W4KF(BTNWD))
 Q
 ;
BUTTONNO ;
 S PROCCNC=$G(%ARG("NO"))
 I PROCCNC="" Q
 N CNC S CNC=$G(%ARG("TXTNO"))
 I CNC="" S CNC="NO"
 S EV=""
 D ^W4BTN(CNC,PROCCNC,"red",EV,18,7,$$^W4KF(BTNWD))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4YOM
W4YOM ; DOCH LEFI JAMIM                 [ 02.11.25 14:41 ] [ 01.09.24 16:13 ] [ 06.10.21 12:58 ] 
 N (JB,%ARG,%REM,YYMM,MESHAA,ADSHAA)
 D ^%W1ARG
 Q:$G(SHOW)=0
 I '$D(%ARG("MESHAA"))!'$D(%ARG("ADSHAA")) W "A RANGE NOT DEFINED !" Q
 ;
 S MESHAA0=MESHAA,ADSHAA0=ADSHAA
 ;
 I $$RNGSHAA D
 .I ADSHAA<MESHAA S ADSHAA=$$SHAA24(ADSHAA)
 .S MESHAA=$$SH^W4SHAA(MESHAA)
 .S ADSHAA=$$SH^W4SHAA(ADSHAA)
 ;
 S YY=$E(YYMM,1,2),MM=$E(YYMM,3,4) D MS
 ;
 W "<div id=""excel""></div>",!
 ;
 D TBMAM 
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
  ;S ST=" mini itl zexikn g""ec "
  ;D HD(ST,18)
  S ST="[ "_$$^%W1DICT("WITHOUTTIPS")_" ] "_($P(DM(+MM),"\",2)_" "_MM_" yceg "_YY_" dpy ")
  D HD(ST,14)
  S ST=""
  ;
  I $$RNGSHAA D
  .D HD(ADSHAA0_" dry cr "_MESHAA0_" dryn ",12)
  D HD("")
 W "</table>",!
 ;
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellpadding=""5"" cellspacing=""0"" >",!
 ;
 K SUM S SSD=0,SDMSH=0,SHUM=0,SHUMMSD=0
 ;
 F J=1:1:7 D STR(J,MM) D  ; J - YOM SHAVUA
 .N I,K S K=0 ; -- K - MISP SHAVUOT ( AMUDIM )
 .F I=1:1:DM(+MM) D
 ..S DN=$TR($J(I,2)," ",0)
 ..S T=YY_MM_DN,T1=$$^%L1DC(T,4)
 ..S DEN=(5+(T1-54999)#7)#7 S:DEN=0 DEN=7
 ..I DEN=J D
 ...S K=K+1 S DAT=YY_MM_DN
 ...D SUM(DAT) ; !!!!!!!!!!!
 ...S SUM(J,K,"SD")=SSD
 ...S SUM(J,K,"SDMSH")=SSDMSH
 ...S SUM(J,K,"SH")=SHUM
 ...S SUM(J,K,"SMSD")=SHUMMSD
 ...S SUM(J,K,"SMSH")=SHUM-SHUMMSD
 ...S:SSD SUM(J,"AVSD")=$G(SUM(J,"AVSD"))+1
 ...S:SHUM SUM(J,"AVSH")=$G(SUM(J,"AVSH"))+1
 ...S:SHUMMSD SUM(J,"AVSMSD")=$G(SUM(J,"AVSMSD"))+1
 ...S SUM(J,"SD")=$G(SUM(J,"SD"))+SSD
 ...S SUM(J,"SDMSH")=$G(SUM(J,"SDMSH"))+SSDMSH
 ...S SUM(J,"SH")=$G(SUM(J,"SH"))+SHUM
 ...S SUM(J,"SMSD")=$G(SUM(J,"SMSD"))+SHUMMSD
 ...;;S SUM(J,"SLRY")=$G(SUM(J,"SLRY"))+SLRY
 .
 .I $$RKV(J,"AVSD") S SUM(J,"AVSD")=$J($G(SUM(J,"SD"))/SUM(J,"AVSD"),1,1)
 .I $$RKV(J,"AVSH") S SUM(J,"AVSH")=$J($G(SUM(J,"SH"))/SUM(J,"AVSH"),1,1)
 .I $$RKV(J,"AVSMSD") S SUM(J,"AVSMSD")=$J($G(SUM(J,"SMSD"))/SUM(J,"AVSMSD"),1,1)
 .
 .D TR
 .D
 .. S ST=$$TD("micreq","B")
 .. N SSDA,SSA S SSDA=0,SSA=0
 .. F J1=1:1:K D  ; -- MISPAR SHAVUOT
 .. . N SDA S SDA="-"
 .. . S SDA=$G(SUM(J,J1,"SD"))+$G(SUM(J,J1,"SDMSH"))
 .. . I SDA S SSDA=SSDA+SDA,SSA=SSA+1
 .. . I 'SDA S SDA=""
 .. .S ST=ST_$$TDL(SDA)
 .. D DOP(K)
 .. S ST=ST_$$TDL(SSDA,"B")
 .. N AV S AV="-" I SSA S AV=$J(SSDA/SSA,1,1)
 .. S ST=ST_$$TDL($J(AV,1,1),"B")
 .D TRE
 .
 .I $$MISHL D
 ..D TR
 .. S ST=$$TD("dcrqn","B")
 .. F J1=1:1:K D
 ... S ST=ST_$$TDL($S($$RKV(J,J1,"SMSD"):$J($$RKV(J,J1,"SMSD"),1,1),1:"-"))
 .. D DOP(K)
 .. S ST=ST_$$TDL($J($$RKV(J,"SMSD"),8,1),"B")
 .. S ST=ST_$$TDL($J($$RKV(J,"AVSMSD"),9,1),"B")
 ..D TRE
 .
 .D TR
 . S ST=$$TD("migelyn","B")
 . F J1=1:1:K D
 . .S ST=ST_$$TDL($S($$RKV(J,J1,"SH")-$$RKV(J,J1,"SMSD"):$J($$RKV(J,J1,"SH")-$$RKV(J,J1,"SMSD"),10,1),1:"-"))
 . D DOP(K)
 . S ST=ST_$$TDL($J($$RKV(J,"SH")-$$RKV(J,"SMSD"),8,1),"B")
 . S ST=ST_$$TDL($J($$RKV(J,"AVSH")-$$RKV(J,"AVSMSD"),9,1),"B")
 .D TRE
 .
 .D TR
 . S ST=$$TD("zexikn k""dq","B")
 . F J1=1:1:K S ST=ST_$$TDL($S($$RKV(J,J1,"SH"):$J($$RKV(J,J1,"SH"),1,1),1:"-"))
 . D DOP(K)
 . S ST=ST_$$TDL($J($$RKV(J,"SH"),9,1),"B")
 . S ST=ST_$$TDL($J($$RKV(J,"AVSH"),9,1),"B")
 .D TRE
 .
 .D TR
 . N SAV,SA,SSUMA S SSUMA=0,SA=0
 . S ST=$$TD("creql","B")
 . F J1=1:1:K D
 .. N AV,SDA,SUMA
 .. S SDA=$G(SUM(J,J1,"SD"))+$G(SUM(J,J1,"SDMSH")),SA=SA+SDA
 .. S SUMA=$$RKV(J,J1,"SMSD")+$$RKV(J,J1,"SMSH") I SUMA S SSUMA=SSUMA+SUMA
 .. S AV="-" I SDA S AV=$J(SUMA/SDA,1,1)
 .. S ST=ST_$$TDL(AV)
 . D DOP(K)
 .
 .S ST=ST_$$TDL("&nbsp;","")
 . I SA D
 . .S ST=ST_$$TDL($J(SSUMA/SA,8,1),"B")
 . I 'SA D
 . .S ST=ST_$$TDL("&nbsp;","")
 .D TRE
 .
 D SSHAVUA
 ;
 W "</table>",!
 ;
 W "<br>",!
 ;
 ;;D TOT
 Q
 ;
 ;
STR(JOM,MM) ;-- HEADER
 N ST,K,I,T,T1,DEN,DN
 W "<tr>"
  S ST=$$TD($E("`abcdey",JOM),"TH")
  S K=0 F I=1:1:+DM(+MM) D
  .S DN=$TR($J(I,2)," ",0)
  .S T=YY_MM_DN,T1=$$^%L1DC(T,4)
  .S DEN=(5+(T1-54999)#7)#7 S:DEN=0 DEN=7
  .I DEN=JOM D
  ..S ST=ST_$$TD(DN_"/"_MM_"/"_YY,"TH") S K=K+1
  D DOP(K,"TH")
  S ST=ST_$$TD("k""dq","TH")
  S ST=ST_$$TD("rvenn","TH")
 D TRE
 Q
 ;
 ;
SUM(DAT) ;
 N HB,DD S DD=$$^%L1DC(DAT,4) Q:'DD
 S SSD=0,SSDMSH=0,SHUM=0,SHUMMSD=0 K @$$^W4MAIN("MMM")
 ;
 S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DD,HZ)) Q:HZ=""  D
 .D SUMHZ(HZ)
 .
 ; ---------------------------------  ASHRAI ---
 K @$$^W4MAIN("TMPHZ")
 Q
 ;
 ;
SUMHZ(HZM)
 N (JB,%ARG,%REM,YYMM,HZM,MESHAA0,ADSHAA0,MESHAA,ADSHAA,SHUM,SHUMMSD,SSD,SSDMSH)
 S (SHUL,NMB,NAME)=""
 Q:'$D(@$$^W4ORD@(HZM))
 N DD,HB,OK
 S HZSCR=$$HZSCR(HZM)
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 ;
 S OK=1 I $$RNGSHAA D  Q:'OK
 .N SHAA S SHAA=$$^W4SHAA(HZM)
 .I SHAA<MESHAA!(SHAA>(ADSHAA-1)) S OK=0
 ;
 S SOAD=$$^W4SOAD(HZM)
 ;
 I $$^W4MSL(NMB) D
 .I $G(@$$^W4PRM@("SDMSL")) D
 ..I 'SOAD S SOAD=$S(TSHL>0:1,TSHL<0:-1,1:0)
 ..S SSDMSH=SSDMSH+SOAD
 .S SOAD=0
 ;
 I TSHL+HNH S SSD=SSD+SOAD
 ;
 S SHUM=SHUM+SHUL+SHULA-TIP ; - TL ?
 ;
 ;;W "SHUM="_SHUM_"  HZM="_HZM_"  SHUL="_SHUL,!
 ;
 I $$^W4MSD(NMB) S SHUMMSD=SHUMMSD+SHUL+SHULA-TIP ; - TL ?
 Q
 ;
 ;
MS ;
 S DM(1)="31\x`epi"
 S DM(2)=$S(YY#4:28,1:29)_"\x`exat"
 S DM(3)="31\uxn"
 S DM(4)="30\lixt`"
 S DM(5)="31\i`n"
 S DM(6)="30\ipei"
 S DM(7)="31\ilei"
 S DM(8)="31\hqebe`"
 S DM(9)="30\xanhtq"
 S DM(10)="31\xaehwe`"
 S DM(11)="30\xanaep"
 S DM(12)="31\xanvc"
 Q
 ;
HD(TXT,SZ) ;
 I '$G(SZ) S SZ=14
 W "<tr style=""text-align:center;font-size:"_$$^W3FSZ(SZ)_""">"
  W "<td>"
   W $$H2U^%L1FRM(TXT)
  W "</td>",!
 W "</tr>",!
 Q
 ;
TDL(TXT,PR) ;
 N STYLE S STYLE=""
 I $G(PR)="B" S STYLE="style=""font-weight:bold"" "
 N ALIGN S ALIGN=$$^%W1ALIGN
 I TXT="-" S ALIGN="align=""center"" "
 I $$SPA^%L1FRM(TXT),TXT["." S TXT=$$ZPT^%L1FRM(TXT)
 Q "<td dir=""LTR"" "_ALIGN_" "_STYLE_">"_TXT_"</td>"
 ;
TD(TXT,PR) ;
 N STYLE S STYLE=""
 I $G(PR)="TH" Q "<th>&nbsp;&nbsp;&nbsp;"_$$H2U^%L1FRM(TXT)_"&nbsp;&nbsp;&nbsp;</th>"
 I $G(PR)="B" S STYLE="style=""font-weight:bold"" "
 N ALIGN S ALIGN=$$^%W1ALIGN
 I TXT="-" S ALIGN="align=""center"" "
 Q "<td "_ALIGN_" "_STYLE_">"_$$H2U^%L1FRM(TXT)_"</td>"
 ;
TDSP(STAM) ;
 Q "<td width=""10%"">&nbsp;</td>"
 ;
TR ;
 W "<tr>",!
 Q
 ;
TRS ;
 W "<tr style=""background-color:yellow;font-weight:bold"">",!
 Q
TRE ;
 W ST,"</tr>",!
 Q
 ;
MISHL(STAM) ;
 I $$MSL^W4PRM Q 1
 Q 0
 ;
HZSCR(HZM) ;
 N NMB
 S NMB=$$NMB^W4HZMST(HZM)
 Q $S($$^W4MSD(NMB):"P1HZMS",1:"P1HZ")
 ;
WAS(HZM) ;
 I $D(@$$^W4MAIN("MMM")@(HZM)) Q 1
 Q 0
 ;
SETWAS(HZM) ;
 S @$$^W4MAIN("MMM")@(HZM)=""
 Q
 ;
DOP(K,TH) ;
 I K<5 S ST=ST_$$TD("-",$G(TH))
 Q
 ;
SHAA24(SHAA) ;
 Q $$SH^W4SHAA(24+SHAA)_":"_$P(SHAA,":",2)
 ;
RNGSHAA(STAM) ;
 I MESHAA0'="00:00" Q 1
 I ADSHAA0'="00:00" Q 1
 Q 0
 ;
SELMM ;
 N I
 W "<select id=""DATIDmm"" >",!
 F I=1:1:12 D
 .N MM S MM=$TR($J(I,2)," ",0)
 .W "<option value="""_MM_""" "
 .D
 ..I $G(%ARG("MM")) D  Q
 ...I I=+%ARG("MM") W " selected=""selected"" "
 ..I I=+$$MM^%L1DC($H) W " selected=""selected"" "
 .W ">"_MM_"</option>",!
 W "</select>",!
 Q
 ;
 ;
SSHAVUA ; 
 N (JB,%ARG,YYMM,SUM)
 S MXK=5
 D TRS
  W "<th>"_$$H2U^%L1FRM("reay k""dq")_"</th>"
  F K=1:1:MXK W "<th>"_K_"</th>"
  W "<th>"_$$H2U^%L1FRM("k""dq")_"</th>"
  W "<th>"_$$H2U^%L1FRM("rvenn")_"</th>"
 W "</tr>"
 ;
 D TRS
  S ST=$$TD("micreq","B")
  N SSDA,SSA S SSDA=0,SSA=0
  ;
  F K=1:1:MXK D
  .N SDA S SDA="-"
  .S SDA=$$SS(K,"SD")+$$SS(K,"SDMSH")
  .I SDA S SSDA=SSDA+SDA,SSA=SSA+1
  .I 'SDA S SDA=""
  .S ST=ST_$$TDL(SDA)
  ;
  S ST=ST_$$TDL(SSDA,"B")
  N AV S AV="-" I SSA S AV=$J(SSDA/SSA,1,1)
  S ST=ST_$$TDL(AV,"B")
 D TRE
 ;
 I $$MISHL D
 .D TRS
 . S ST=$$TD("dcrqn","B"),J1=0
 . S J1=0 
 . F K=1:1:MXK D
 .. N SMSD S SMSD=$$RKV1($$SS(K,"SMSD"))
 .. S ST=ST_$$TDL($S(SMSD:$J(SMSD,1,1),1:"-"))
 .. I SMSD S J1=J1+1 
 .
 . N SSMSD S SSMSD=$$RKV1($$SS(0,"SMSD"))
 . S ST=ST_$$TDL($J(SSMSD,8,1),"B")
 . S ST=ST_$$TDL($S(J1:$J(SSMSD/J1,9,1),1:"-"),"B")
 .D TRE
 ;
 D TRS
  S ST=$$TD("migelyn","B")
  S J1=0
  F K=1:1:MXK D
  .N SMSH S SMSH=$$SS(K,"SH")-$$SS(K,"SMSD")
  .S ST=ST_$$TDL($S(SMSH:$J($$RKV1(SMSH),10,1),1:"-"))
  .I SMSH S J1=J1+1
  ;
  N SS S SS=$$RKV1($$SS(0,"SH")-$$SS(0,"SMSD"))
  S ST=ST_$$TDL($J(SS,8,1),"B")
  S ST=ST_$$TDL($S(J1:$J(SS/J1,9,1),1:"-"),"B")
 D TRE
 ;
 D TRS
  S ST=$$TD("zexikn k""dq","B")
  S J1=0
  F K=1:1:MXK D
  .N SSH S SSH=$$RKV1($$SS(K,"SH"))
  .S ST=ST_$$TDL($S(SSH:$J(SSH,1,1),1:"-"))
  .I SSH S J1=J1+1
  ;
  N SS S SS=$$RKV1($$SS(0,"SH"))
  S ST=ST_$$TDL($J(SS,9,1),"B")
  S ST=ST_$$TDL($S(J1:$J(SS/J1,9,1),1:"-"),"B")
 D TRE
 ;
 D TRS
  N SAV,SA,SSUMA S SSUMA=0,SA=0
  S ST=$$TD("creql","B")
  N SUMA,SDA S (SUMA,SDA)=0
  ;
  F K=1:1:MXK D
  . S SDA=$$SS(K,"SD")+$$SS(K,"SDMSH"),SA=SA+SDA
  . S SUMA=$$RKV1($$SS(K,"SMSD")+$$SS(K,"SMSH")) I SUMA S SSUMA=SSUMA+SUMA
  . S AV="-" I SDA S AV=$J(SUMA/SDA,1,1)
  . S ST=ST_$$TDL(AV)
  ;
  S ST=ST_$$TDL("&nbsp;","")
  I SA D
  .S ST=ST_$$TDL($J(SSUMA/SA,8,1),"B")
  I 'SA D
  .S ST=ST_$$TDL("&nbsp;","")
 D TRE
 Q
 ;
 ;
SS(K,IND) ; 
 N RES S RES=0
 I K D  Q RES
 .S RES=0
 .N N S N="" F  S N=$O(SUM(N)) Q:N=""  D
 ..S RES=RES+$G(SUM(N,K,IND))
 ;
 N N,N1 S N="" F  S N=$O(SUM(N)) Q:N=""  D
 .S N1="" F  S N1=$O(SUM(N,N1)) Q:N1=""  D 
 ..S RES=RES+$G(SUM(N,N1,IND))
 Q RES
 ;
 ;
TOT ; 
 ;-------------- TOTALS --------------------------
 W "<table dir="""_$$^%W1DIR_""">",!
  S SUMSD=0 F J1=1:1:7 S SUMSD=SUMSD+$G(SUM(J1,"SD"))
  S SUMSDMSH=0 F J1=1:1:7 S SUMSDMSH=SUMSDMSH+$G(SUM(J1,"SDMSH"))
  S SDA=SUMSD I $G(@$$^W4PRM@("SDMSL")) S SDA=SDA+SUMSDMSH
  S SUMSH=0 F J1=1:1:7 S SUMSH=SUMSH+$$RKV(J1,"SH")
  S SUMMSD=0 F J1=1:1:7 S SUMMSD=SUMMSD+$$RKV(J1,"SMSD")
  ;
  S ST=""
  D TR W $$TDL("&nbsp;") D TRE
  ;
  D TR
   S ST=$$TD("micreq k""dq","B")
   S ST=ST_$$TDL(SDA,"B")
   S ST=ST_$$TDSP
  ;D TRE
  ;
  I $$MISHL D
  .;D TR
  . S ST=ST_$$TD("dcrqn k""dq","B")
  . S ST=ST_$$TDL($J(SUMMSD,9,1),"B")
  . S ST=ST_$$TDSP
  .;D TRE
  .
  .;D TR
  . S ST=ST_$$TD("migelyn k""dq","B")
  . S ST=ST_$$TDL($J(SUMSH-SUMMSD,9,1),"B")
  . S ST=ST_$$TDSP
  .;D TRE
 ;
   S ST=ST_$$TD("zexikn k""dq","B")
   S ST=ST_$$TDL($J(SUMSH,9,1),"B")
   S ST=ST_$$TDSP
  ;
  I SUMSD D
  . S ST=ST_$$TD("creq rvenn","B")
  . I '$G(@$$^W4PRM@("SDMSL")) D
  .. S ST=ST_$$TDL($J(SUMMSD/SUMSD,1,1),"B")
  . I $G(@$$^W4PRM@("SDMSL")) D
  .. S ST=ST_$$TDL($J(SUMSH/SDA,1,1),"B")
  D TRE
 Q
 ;
RKV(I1,I2,I3) ;
 I $G(I3)="" D 
 .S VL=$G(SUM(I1,I2))
 I $G(I3)'="" D 
 .S VL=$G(SUM(I1,I2,I3))
 ;
 Q $$RKV1(VL)
 ;
 ;
RKV1(VL) ;
 N DT S DT=$$^%L1DC("01"_$E(YYMM,3,4)_$E(YYMM,1,2),3)
 S MAM=$$MAMD^W4L(DT)
 I $$LMAM S VL=$J(VL*100/(100+MAM),2,2)
 Q VL
 ;
 ;
LMAM(STAM) ;
 I $G(%ARG("LMAM"))="",$$LMAM^W4PRM S %ARG("LMAM")=1
 Q $G(%ARG("LMAM"))
 ;
TBMAM ;
 I $$^W4DPNMAM Q
 W "<table dir="""_$$^%W1DIR_""">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("AFTERTAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S('$$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('0')"" >"
   W "</td>"
   W "<td>"
    W $$^%W1DICT("BEFORETAX")_"&nbsp;&nbsp;"
    W "<input type=""radio"" name=""mam"" "_$S($$LMAM:"checked=""checked"" ",1:"")_" onClick=""ClickMam('1')"" >"
   W "</td>"
  W "</tr>",!
 W "</table>",!
 Q
 
 
 
 
 
 
 
 
 
 

W4YOM0
W4YOM ; DOCH LEFI JAMIM                 [ 27.05.18 09:32 ] [ 26.05.18 18:02 ] [ 09.02.18 11:21 ] 
 N (JB,%ARG,%REM,YYMM,MESHAA,ADSHAA)
 D ^%W1ARG
 Q:$G(SHOW)=0
 ;
 S MESHAA0=MESHAA,ADSHAA0=ADSHAA
 I $$RNGSHAA D
 .I ADSHAA<MESHAA S ADSHAA=$$SHAA24(ADSHAA)
 .S MESHAA=$$SH^W4SHAA(MESHAA)
 .S ADSHAA=$$SH^W4SHAA(ADSHAA)
 ;
 S YY=$E(YYMM,1,2),MM=$E(YYMM,3,4) D MS
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
  ;S ST=" mini itl zexikn g""ec "
  ;D HD(ST,18)
  S ST="[ "_$$^%W1DICT("WITHOUTTIPS")_" ] "_($P(DM(+MM),"\",2)_" "_MM_" yceg "_YY_" dpy ")
  D HD(ST,14)
  S ST=""
  ;
  I $$RNGSHAA D
  .D HD(ADSHAA0_" dry cr "_MESHAA0_" dryn ",12)
  D HD("")
 W "</table>",!
 ;
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"" cellpadding=""5"" cellspacing=""0"" >",!
 ;
 K SUM S SSD=0,SHUM=0,SHUMMSD=0
 ;
 F J=1:1:7 D STR(J,MM) D  ; J - YOM SHAVUA
 .N I,K S K=0 ; -- K - MISP SHAVUOT ( AMUDIM )
 .F I=1:1:DM(+MM) D
 ..S DN=$TR($J(I,2)," ",0)
 ..S T=YY_MM_DN,T1=$$^%L1DC(T,4)
 ..S DEN=(5+(T1-54999)#7)#7 S:DEN=0 DEN=7
 ..I DEN=J D
 ...S K=K+1 S DAT=YY_MM_DN
 ...D SUM(DAT) ; !!!!!!!!!!!
 ...S SUM(J,K,"SD")=SSD,SUM(J,K,"SH")=SHUM,SUM(J,K,"SMSD")=SHUMMSD
 ...S:SSD SUM(J,"AVSD")=$G(SUM(J,"AVSD"))+1
 ...S:SHUM SUM(J,"AVSH")=$G(SUM(J,"AVSH"))+1
 ...S:SHUMMSD SUM(J,"AVSMSD")=$G(SUM(J,"AVSMSD"))+1
 ...S SUM(J,"SD")=$G(SUM(J,"SD"))+SSD
 ...S SUM(J,"SH")=$G(SUM(J,"SH"))+SHUM
 ...S SUM(J,"SMSD")=$G(SUM(J,"SMSD"))+SHUMMSD
 .
 .I $G(SUM(J,"AVSD")) S SUM(J,"AVSD")=$J($G(SUM(J,"SD"))/SUM(J,"AVSD"),1,1)
 .I $G(SUM(J,"AVSH")) S SUM(J,"AVSH")=$J($G(SUM(J,"SH"))/SUM(J,"AVSH"),1,1)
 .I $G(SUM(J,"AVSMSD")) S SUM(J,"AVSMSD")=$J($G(SUM(J,"SMSD"))/SUM(J,"AVSMSD"),1,1)
 .
 .D TR
 . S ST=$$TD("micreq","B")
 . F J1=1:1:K D  ; -- MISPAR SHAVUOT
 . .S ST=ST_$$TDL($S($G(SUM(J,J1,"SD")):$J($G(SUM(J,J1,"SD")),7),1:"-"))
 . D DOP(K)
 . S ST=ST_$$TDL($J($G(SUM(J,"SD")),8,1),"B")
 . S ST=ST_$$TDL($J($G(SUM(J,"AVSD")),9,1),"B")
 .D TRE
 .
 .I $$MISHL D
 ..D TR
 .. S ST=$$TD("dcrqn","B")
 .. F J1=1:1:K D
 ... S ST=ST_$$TDL($S($G(SUM(J,J1,"SMSD")):$J($G(SUM(J,J1,"SMSD")),1,1),1:"-"))
 .. D DOP(K)
 .. S ST=ST_$$TDL($J($G(SUM(J,"SMSD")),8,1),"B")
 .. S ST=ST_$$TDL($J($G(SUM(J,"AVSMSD")),9,1),"B")
 ..D TRE
 ..
 ..D TR
 .. S ST=$$TD("migelyn","B")
 .. F J1=1:1:K D
 .. .S ST=ST_$$TDL($S($G(SUM(J,J1,"SH"))-$G(SUM(J,J1,"SMSD")):$J($G(SUM(J,J1,"SH"))-$G(SUM(J,J1,"SMSD")),10,1),1:"-"))
 .. D DOP(K)
 .. S ST=ST_$$TDL($J($G(SUM(J,"SH"))-$G(SUM(J,"SMSD")),8,1),"B")
 .. S ST=ST_$$TDL($J($G(SUM(J,"AVSH"))-$G(SUM(J,"AVSMSD")),9,1),"B")
 ..D TRE
 .
 .D TR
 . S ST=$$TD("mekq","B")
 . F J1=1:1:K S ST=ST_$$TDL($S($G(SUM(J,J1,"SH")):$J($G(SUM(J,J1,"SH")),1,1),1:"-"))
 . D DOP(K)
 . S ST=ST_$$TDL($J($G(SUM(J,"SH")),9,1),"B")
 . S ST=ST_$$TDL($J($G(SUM(J,"AVSH")),9,1),"B")
 .D TRE
 .
 .D TR
 . S ST=$$TD("creql","B")
 . F J1=1:1:K S ST=ST_$$TDL($S($G(SUM(J,J1,"SD")):$J($G(SUM(J,J1,"SMSD"))/$G(SUM(J,J1,"SD")),1,1),1:"-"))
 . D DOP(K)
 . I $G(SUM(J,"AVSD")),$G(SUM(J,"SD")) D
 . .S ST=ST_$$TDL($J($G(SUM(J,"SMSD"))/SUM(J,"SD"),8,1),"B")
 . .S ST=ST_$$TDL($J($G(SUM(J,"AVSMSD"))/SUM(J,"AVSD"),9,1),"B")
 . I '$G(SUM(J,"AVSD"))!'$G(SUM(J,"SD")) D
 . .S ST=ST_$$TDL("&nbsp;","")
 . .S ST=ST_$$TDL("&nbsp;","")
 .D TRE
 ;
 W "</table>",!
 ;
 W "<br>",!
 ;
 ;-------------- TOTALS --------------------------
 W "<table dir="""_$$^%W1DIR_""">",!
  S SUMSD=0 F J1=1:1:7 S SUMSD=SUMSD+$G(SUM(J1,"SD"))
  S SUMSH=0 F J1=1:1:7 S SUMSH=SUMSH+$G(SUM(J1,"SH"))
  S SUMMSD=0 F J1=1:1:7 S SUMMSD=SUMMSD+$G(SUM(J1,"SMSD"))
  ;
  S ST=""
  D TR W $$TDL("&nbsp;") D TRE
  ;
  D TR
   S ST=$$TD("micreq k""dq","B")
   S ST=ST_$$TDL($J(SUMSD,6),"B")
   S ST=ST_$$TDSP
  ;D TRE
  ;
  I $$MISHL D
  .;D TR
  . S ST=ST_$$TD("dcrqn k""dq","B")
  . S ST=ST_$$TDL($J(SUMMSD,9,1),"B")
  . S ST=ST_$$TDSP
  .;D TRE
  .
  .;D TR
  . S ST=ST_$$TD("migelyn k""dq","B")
  . S ST=ST_$$TDL($J(SUMSH-SUMMSD,9,1),"B")
  . S ST=ST_$$TDSP
  .;D TRE
 ;
   S ST=ST_$$TD("zexikn k""dq","B")
   S ST=ST_$$TDL($J(SUMSH,9,1),"B")
   S ST=ST_$$TDSP
  ;
  I SUMSD D
  . S ST=ST_$$TD("creq rvenn","B")
  . S ST=ST_$$TDL($J(SUMMSD/SUMSD,9,1),"B")
  D TRE
 ;
 Q
 ;
 ;
STR(JOM,MM) ;-- HEADER
 N ST,K,I,T,T1,DEN,DN
 W "<tr>"
  S ST=$$TD($E("`abcdey",JOM),"TH")
  S K=0 F I=1:1:+DM(+MM) D
  .S DN=$TR($J(I,2)," ",0)
  .S T=YY_MM_DN,T1=$$^%L1DC(T,4)
  .S DEN=(5+(T1-54999)#7)#7 S:DEN=0 DEN=7
  .I DEN=JOM D
  ..S ST=ST_$$TD(DN_"/"_MM_"/"_YY,"TH") S K=K+1
  D DOP(K,"TH")
  S ST=ST_$$TD("k""dq","TH")
  S ST=ST_$$TD("rvenn","TH")
 D TRE
 Q
 ;
 ;
SUM(DAT) ;
 N HB,DD S DD=$$^%L1DC(DAT,4) Q:'DD
 S SSD=0,SHUM=0,SHUMMSD=0 K @$$^W4MAIN("MMM")
 ;
 S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DD,HZ)) Q:HZ=""  D
 .D SUMHZ(HZ)
 ;
 ; ---------------------------------  ASHRAI ---
 K @$$^W4MAIN("TMPHZ")
 Q
 ;
 ;
SUMHZ(HZM)
 N (JB,%ARG,%REM,HZM,MESHAA0,ADSHAA0,MESHAA,ADSHAA,SHUM,SHUMMSD,SSD)
 S (SHUL,NMB,NAME)=""
 Q:'$D(@$$^W4ORD@(HZM))
 N DD,HB,OK
 S HZSCR=$$HZSCR(HZM)
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 ;
 S OK=1 I $$RNGSHAA D  Q:'OK
 .N SHAA S SHAA=$$^W4SHAA(HZM)
 .I SHAA<MESHAA!(SHAA>(ADSHAA-1)) S OK=0
 ;
 I 'SOAD,$$^W4DLPK(NMB),$G(@$$^W4PRM@("MSPSD"))=1 S SOAD=1
 I $$^W4MSL(NMB) S SOAD=0
 I TSHL+HNH S SSD=SSD+SOAD
 ;
 S SHUM=SHUM+SHUL+SHULA-TIP ; - TL ?
 ;
 ;;W "SHUM="_SHUM_"  HZM="_HZM_"  SHUL="_SHUL,!
 ;
 I $$^W4MSD(NMB) S SHUMMSD=SHUMMSD+SHUL+SHULA-TIP ; - TL ?
 Q
 ;
 ;
MS ;
 S DM(1)="31\x`epi"
 S DM(2)=$S(YY#4:28,1:29)_"\x`exat"
 S DM(3)="31\uxn"
 S DM(4)="30\lixt`"
 S DM(5)="31\i`n"
 S DM(6)="30\ipei"
 S DM(7)="31\ilei"
 S DM(8)="31\hqebe`"
 S DM(9)="30\xanhtq"
 S DM(10)="31\xaehwe`"
 S DM(11)="30\xanaep"
 S DM(12)="31\xanvc"
 Q
 ;
HD(TXT,SZ) ;
 I '$G(SZ) S SZ=14
 W "<tr style=""text-align:center;font-size:"_$$^W3FSZ(SZ)_""">"
  W "<td>"
   W $$H2U^%L1FRM(TXT)
  W "</td>",!
 W "</tr>",!
 Q
 ;
TDL(TXT,PR) ;
 N STYLE S STYLE=""
 I $G(PR)="B" S STYLE="style=""font-weight:bold"" "
 N ALIGN S ALIGN=$$^%W1ALIGN
 I TXT="-" S ALIGN="align=""center"" "
 I $$SPA^%L1FRM(TXT),TXT["." S TXT=$$ZPT^%L1FRM(TXT)
 Q "<td dir=""LTR"" "_ALIGN_" "_STYLE_">"_TXT_"</td>"
 ;
TD(TXT,PR) ;
 N STYLE S STYLE=""
 I $G(PR)="TH" Q "<th>&nbsp;&nbsp;&nbsp;"_$$H2U^%L1FRM(TXT)_"&nbsp;&nbsp;&nbsp;</th>"
 I $G(PR)="B" S STYLE="style=""font-weight:bold"" "
 N ALIGN S ALIGN=$$^%W1ALIGN
 I TXT="-" S ALIGN="align=""center"" "
 Q "<td "_ALIGN_" "_STYLE_">"_$$H2U^%L1FRM(TXT)_"</td>"
 ;
TDSP(STAM) ;
 Q "<td width=""10%"">&nbsp;</td>"
 ;
TR ;
 W "<tr>",!
 Q
 ;
TRE ;
 W ST,"</tr>",!
 Q
 ;
MISHL(STAM) ;
 I $$MSL^W4PRM Q 1
 Q 0
 ;
HZSCR(HZM) ;
 N NMB
 S NMB=$$NMB^W4HZMST(HZM)
 Q $S($$^W4MSD(NMB):"P1HZMS",1:"P1HZ")
 ;
WAS(HZM) ;
 I $D(@$$^W4MAIN("MMM")@(HZM)) Q 1
 Q 0
 ;
SETWAS(HZM) ;
 S @$$^W4MAIN("MMM")@(HZM)=""
 Q
 ;
DOP(K,TH) ;
 I K<5 S ST=ST_$$TD("-",$G(TH))
 Q
 ;
SHAA24(SHAA) ;
 Q $$SH^W4SHAA(24+SHAA)_":"_$P(SHAA,":",2)
 ;
RNGSHAA(STAM) ;
 I MESHAA0'="00:00" Q 1
 I ADSHAA0'="00:00" Q 1
 Q 0
 ;
SELMM ;
 N I
 W "<select id=""DATIDmm"" >",!
 F I=1:1:12 D
 .N MM S MM=$TR($J(I,2)," ",0)
 .W "<option value="""_MM_""" "
 .I I=+$$MM^%L1DC($H) W " selected=""selected"" "
 .W ">"_MM_"</option>",!
 W "</select>",!
 Q
 
 
 
 

W4YOMS
W4YOMS ; DOCH LEFI JAMIM                 [ 07.06.22 08:54 ] [ 07.10.21 08:45 ] [ 06.10.21 13:00 ] 
 N (JB,%ARG,%REM,MESHAA,ADSHAA)
 D ^%W1ARG
 Q:$G(SHOW)=0
 ;
 S MESHAA0=MESHAA,ADSHAA0=ADSHAA
 ;
 I $$RNGSHAA D
 .I ADSHAA<MESHAA S ADSHAA=$$SHAA24(ADSHAA)
 .S MESHAA=$$SH^W4SHAA(MESHAA)
 .S ADSHAA=$$SH^W4SHAA(ADSHAA)
 ;
 S YY1=$E(YYMM1,3,4),MM1=$E(YYMM1,5,6) D MS(YY1)
 S YY2=$E(YYMM2,3,4),MM2=$E(YYMM2,5,6) D MS(YY2)
 ;
 S STYLE2="color:grey"
 ;
 W "<div id=""excel""></div>",!
 ;
 D TBMAM
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
  S ST="[ "_$$^%W1DICT("WITHOUTTIPS")_" ] "_MM2_" yceg "_YY2_" dpy len "_MM1_" yceg "_YY1_" dpy ly zexikn z`eeyd"
  D HD(ST,14)
  S ST=""
  ;
  I $$RNGSHAA D
  .D HD(ADSHAA0_" dry cr "_MESHAA0_" dryn ",12)
  D HD("")
 W "</table>",!
 ;
 K SUM S SSD=0,SSDMSH=0,SHUM=0,SHUMMSD=0
 ;
 D PREP(YY1,MM1,1)
 D PREP(YY2,MM2,2)
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""0"" cellpadding=""5"" cellspacing=""0"" >",!
  F J=1:1:7 D SHOW(J) ; --- !!!!!!!!!!!!!!
 W "</table>",!
 ;
 ;-------------- TOTALS --------------------------
 W "<table dir="""_$$^%W1DIR_""">",!
  S SUMSD1=0 F J1=1:1:7 S SUMSD1=SUMSD1+$G(SUM(J1,1,"SD"))
  S SUMSDMSH1=0 F J1=1:1:7 S SUMSDMSH1=SUMSDMSH1+$G(SUM(J1,1,"SDMSH"))
  S SDA1=SUMSD1 I $G(@$$^W4PRM@("SDMSL")) S SDA1=SDA1+SUMSDMSH1
  S SUMSH1=0 F J1=1:1:7 S SUMSH1=SUMSH1+$G(SUM(J1,1,"SH"))
  S SUMMSD1=0 F J1=1:1:7 S SUMMSD1=SUMMSD1+$G(SUM(J1,1,"SMSD"))
  ;
  S SUMSD2=0 F J1=1:1:7 S SUMSD2=SUMSD2+$G(SUM(J1,2,"SD"))
  S SUMSDMSH2=0 F J1=1:1:7 S SUMSDMSH2=SUMSDMSH2+$G(SUM(J1,2,"SDMSH"))
  S SDA2=SUMSD2 I $G(@$$^W4PRM@("SDMSL")) S SDA2=SDA2+SUMSDMSH2
  S SUMSH2=0 F J1=1:1:7 S SUMSH2=SUMSH2+$G(SUM(J1,2,"SH"))
  S SUMMSD2=0 F J1=1:1:7 S SUMMSD2=SUMMSD2+$G(SUM(J1,2,"SMSD"))
  ;
  S ST=""
  D TR W $$TDSP D TRE
  ;
  D TR
   S ST=$$TDSP
   S ST=ST_$$TD("micreq k""dq","B")
   S ST=ST_$$TDL(SDA1,"B")
   S ST=ST_$$TDSP
  ;
  I $$MISHL D
  . S ST=ST_$$TD("dcrqn k""dq","B")
  . S ST=ST_$$TDL($J($$RKV(SUMMSD1),9,1),"B")
  . S ST=ST_$$TDSP
  .
  . S ST=ST_$$TD("migelyn k""dq","B")
  . S ST=ST_$$TDL($J($$RKV(SUMSH1-SUMMSD1),9,1),"B")
  . S ST=ST_$$TDSP
 ;
   S ST=ST_$$TD("zexikn k""dq","B")
   S ST=ST_$$TDL($J($$RKV(SUMSH1),9,1),"B")
   S ST=ST_$$TDSP
  ;
  I SDA1 D
  . S ST=ST_$$TD("creq rvenn","B")
  . S ST=ST_$$TDL($J($$RKV(SUMSH1)/SDA1,9,1),"B")
  D TRE
  ;
  ;
  D TR
   S ST=$$TDSP_$$TDSP
   S ST=ST_$$TDL(SDA2,"B",STYLE2)
   S ST=ST_$$TDSP
  ;
  I $$MISHL D
  . S ST=ST_$$TDSP
  . S ST=ST_$$TDL($J($$RKV(SUMMSD2),9,1),"B",STYLE2)
  . S ST=ST_$$TDSP
  .
  . S ST=ST_$$TDSP
  . S ST=ST_$$TDL($J($$RKV(SUMSH2-SUMMSD2),9,1),"B",STYLE2)
  . S ST=ST_$$TDSP
 ;
   S ST=ST_$$TDSP
   S ST=ST_$$TDL($J($$RKV(SUMSH2),9,1),"B",STYLE2)
   S ST=ST_$$TDSP
  ;
  I SDA2 D
  . S ST=ST_$$TDSP
  . S ST=ST_$$TDL($J($$RKV(SUMSH2)/SDA2,9,1),"B",STYLE2)
  D TRE
  ;
  D TR
   S ST=$$TDSP_$$TDSP
   S AHUZ=$$AHUZ(SDA2,SDA1)
   S ST=ST_$$TDL(AHUZ,"B")
   S ST=ST_$$TDSP
  ;
  I $$MISHL D
  . S ST=ST_$$TDSP
  . S AHUZ=$$AHUZ($$RKV(SUMMSD2),SUMMSD1)
  . S ST=ST_$$TDL(AHUZ,"B")
  . S ST=ST_$$TDSP
  .
  . S ST=ST_$$TDSP
  . S AHUZ=$$AHUZ($$RKV(SUMSH2-SUMMSD2),$$RKV(SUMSH1-SUMMSD1))
  . S ST=ST_$$TDL(AHUZ,"B")
  . S ST=ST_$$TDSP
 ;
   S ST=ST_$$TDSP
   S AHUZ=$$AHUZ($$RKV(SUMSH2),$$RKV(SUMSH1))
   S ST=ST_$$TDL(AHUZ,"B")
   S ST=ST_$$TDSP
  ;
  I SDA2,SDA1 D
  . S ST=ST_$$TDSP
  . S AHUZ=$$AHUZ($$RKV(SUMSH2)/SDA2,$$RKV(SUMSH1)/SDA1)
  . S ST=ST_$$TDL(AHUZ,"B")
  D TRE
  ;
  K @$$^W4MAIN("VRM")
  M @$$^W4MAIN("VRM")=SUM
 Q
 ;
 ;
STR(JOM) ;-- HEADER
 N ST,I,T,T1,DEN,DN
 W "<tr>"
  S ST="<th>"_$$^%W1DICT("GRAPH")_"</th>"
  I $$^W4TABLET=1 S ST=""
  ;
  S ST=ST_$$TD($E("`abcdey",JOM),"TH")
  ; 
  S K=0 F I=1:1:+DM(+MM1) D
  .S DN=$TR($J(I,2)," ",0)
  .S T=YY1_MM1_DN,T1=$$^%L1DC(T,4)
  .S DEN=(5+(T1-54999)#7)#7 S:DEN=0 DEN=7
  .I DEN=JOM D
  ..S ST=ST_$$TH(DN_"/"_MM1_"/"_YY1) S K=K+1
  ;
  D DOP(K,"TH")
  S ST=ST_$$TD("k""dq","TH")
  S ST=ST_$$TD("rvenn","TH")
 D TRE
 ;
 W "<tr >"
  S ST=$$TH_$$TH
  ;
  S K=0 F I=1:1:+DM(+MM2) D
  .S DN=$TR($J(I,2)," ",0)
  .S T=YY2_MM2_DN,T1=$$^%L1DC(T,4)
  .S DEN=(5+(T1-54999)#7)#7 S:DEN=0 DEN=7
  .I DEN=JOM D
  ..S ST=ST_$$TH(DN_"/"_MM2_"/"_YY2,"color:lightgrey") S K=K+1
  D DOP(K,"TH")
  S ST=ST_$$TH
  S ST=ST_$$TH
 D TRE
 Q
 ;
 ;
SUM(DAT) ;
 N HB,DD S DD=$$^%L1DC(DAT,4) Q:'DD
 S SSD=0,SSDMSH=0,SHUM=0,SHUMMSD=0 K @$$^W4MAIN("MMM")
 ;
 S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DD,HZ)) Q:HZ=""  D
 .D SUMHZ(HZ)
 ;
 ; ---------------------------------  ASHRAI ---
 K @$$^W4MAIN("TMPHZ")
 Q
 ;
 ;
SUMHZ(HZM)
 N (JB,%ARG,%REM,HZM,YYMM1,YYMM2,MESHAA0,ADSHAA0,MESHAA,ADSHAA,SHUM,SHUMMSD,SSD,SSDMSH)
 S (SHUL,NMB,NAME)=""
 Q:'$D(@$$^W4ORD@(HZM))
 N DD,HB,OK
 S HZSCR=$$HZSCR(HZM)
 D GA^W4SCREF(HZSCR,$$^W4ORD_"(HZM)")
 ;
 S OK=1 I $$RNGSHAA D  Q:'OK
 .N SHAA S SHAA=$$^W4SHAA(HZM)
 .I SHAA<MESHAA!(SHAA>(ADSHAA-1)) S OK=0
 ;
 S SOAD=$$^W4SOAD(HZM)
 ;
 I $$^W4MSL(NMB) D
 .I $G(@$$^W4PRM@("SDMSL")) D
 ..I 'SOAD S SOAD=$S(TSHL>0:1,TSHL<0:-1,1:0)
 ..S SSDMSH=SSDMSH+SOAD
 .S SOAD=0
 ;
 I TSHL+HNH S SSD=SSD+SOAD
 ;
 S SHUM=SHUM+SHUL+SHULA-TIP ; - TL ?
 ;
 ;;W "SHUM="_SHUM_"  HZM="_HZM_"  SHUL="_SHUL,!
 ;
 I $$^W4MSD(NMB) S SHUMMSD=SHUMMSD+SHUL+SHULA-TIP ; - TL ?
 Q
 ;
 ;
MS(YY) ;
 S DM(1)="31\x`epi"
 S DM(2)=$S(YY#4:28,1:29)_"\x`exat"
 S DM(3)="31\uxn"
 S DM(4)="30\lixt`"
 S DM(5)="31\i`n"
 S DM(6)="30\ipei"
 S DM(7)="31\ilei"
 S DM(8)="31\hqebe`"
 S DM(9)="30\xanhtq"
 S DM(10)="31\xaehwe`"
 S DM(11)="30\xanaep"
 S DM(12)="31\xanvc"
 Q
 ;
HD(TXT,SZ) ;
 I '$G(SZ) S SZ=14
 W "<tr style=""text-align:center;font-size:"_$$^W3FSZ(SZ)_""">"
  W "<td>"
   W $$H2U^%L1FRM(TXT)
  W "</td>",!
 W "</tr>",!
 Q
 ;
STYLE ;
 S STYLE=$G(STYLE)
 I $G(PR)="B" S STYLE=STYLE_";font-weight:bold"
 I STYLE'["style" S STYLE=" style="""_STYLE_""" "
 Q
 ;
TDL(TXT,PR,STYLE) ;
 D STYLE
 N ALIGN S ALIGN=$$^%W1ALIGN
 I TXT="-" S ALIGN="align=""center"" "
 I $$SPA^%L1FRM(TXT),TXT["." S TXT=$$ZPT^%L1FRM(TXT)
 Q "<td dir=""LTR"" "_ALIGN_" "_STYLE_">"_TXT_"</td>"
 ;
TD(TXT,PR,STYLE) ;
 D STYLE
 I $G(PR)="TH" Q "<th "_STYLE_">&nbsp;&nbsp;&nbsp;"_$$H2U^%L1FRM(TXT)_"&nbsp;&nbsp;&nbsp;</th>"
 N ALIGN S ALIGN=$$^%W1ALIGN
 I TXT="-" S ALIGN="align=""center"" "
 Q "<td "_ALIGN_" "_STYLE_">"_$$H2U^%L1FRM(TXT)_"</td>"
 ;
TDSP(STAM) ;
 Q "<td >&nbsp;</td>"
 ;
TR ;
 W "<tr>",!
 Q
 ;
TRE ;
 W ST,"</tr>",!
 Q
 ;
MISHL(STAM) ;
 I $$MSL^W4PRM Q 1
 Q 0
 ;
HZSCR(HZM) ;
 N NMB
 S NMB=$$NMB^W4HZMST(HZM)
 Q $S($$^W4MSD(NMB):"P1HZMS",1:"P1HZ")
 ;
WAS(HZM) ;
 I $D(@$$^W4MAIN("MMM")@(HZM)) Q 1
 Q 0
 ;
SETWAS(HZM) ;
 S @$$^W4MAIN("MMM")@(HZM)=""
 Q
 ;
DOP(K,TH) ;
 I K<5 S ST=ST_$$TD("-",$G(TH))
 Q
 ;
SHAA24(SHAA) ;
 Q $$SH^W4SHAA(24+SHAA)_":"_$P(SHAA,":",2)
 ;
RNGSHAA(STAM) ;
 I MESHAA0'="00:00" Q 1
 I ADSHAA0'="00:00" Q 1
 Q 0
 ;
SELMM(IND,MMC) ;
 N I I '$G(MMC) S MMC=$ZD($H,"MM")
 I IND=2 S MMC=$S(MMC=1:12,1:MMC-1)
 W "<select id=""DATID"_IND_"mm"" >",!
 F I=1:1:12 D
 .N MM S MM=$TR($J(I,2)," ",0)
 .W "<option value="""_MM_""" "
 .I +I=+MMC W " selected=""selected"" "
 .W ">"_MM_"</option>",!
 W "</select>",!
 Q
 ;
 ;
PREP(YY,MM,IND)  
 N J,DN,T,DEN,DAT
 F J=1:1:7 D  ; J - YOM SHAVUA
 .N I,K S K=0 ; -- K - MISP SHAVUOT ( AMUDOT )
 .
 .F I=1:1:DM(+MM) D
 ..S DN=$TR($J(I,2)," ",0)
 ..S T=YY_MM_DN,T1=$$^%L1DC(T,4)
 ..S DEN=(5+(T1-54999)#7)#7 S:DEN=0 DEN=7
 ..
 ..I DEN=J D
 ...S K=K+1 S DAT=YY_MM_DN
 ...D SUM(DAT) ; !!!!!!!!!!!
 ...S SUM(J,IND,K,"SD")=SSD
 ...S SUM(J,IND,K,"SDMSH")=SSDMSH
 ...S SUM(J,IND,K,"SH")=SHUM
 ...S SUM(J,IND,K,"SMSD")=SHUMMSD
 ...S SUM(J,IND,K,"SMSH")=SHUM-SHUMMSD
 ...S:SSD SUM(J,IND,"AVSD")=$G(SUM(J,IND,"AVSD"))+1
 ...S:SHUM SUM(J,IND,"AVSH")=$G(SUM(J,IND,"AVSH"))+1
 ...S:SHUMMSD SUM(J,IND,"AVSMSD")=$G(SUM(J,IND,"AVSMSD"))+1
 ...S SUM(J,IND,"SD")=$G(SUM(J,IND,"SD"))+SSD
 ...S SUM(J,IND,"SDMSH")=$G(SUM(J,IND,"SDMSH"))+SSDMSH
 ...S SUM(J,IND,"SH")=$G(SUM(J,IND,"SH"))+SHUM
 ...S SUM(J,IND,"SMSD")=$G(SUM(J,IND,"SMSD"))+SHUMMSD
 ...S SUM(J,IND,"SMSH")=$G(SUM(J,IND,"SH"))-$G(SUM(J,IND,"SMSD"))
 .
 .I $G(SUM(J,IND,"AVSD")) S SUM(J,IND,"AVSD")=$J($G(SUM(J,IND,"SD"))/SUM(J,IND,"AVSD"),1,1)
 .I $G(SUM(J,IND,"AVSH")) S SUM(J,IND,"AVSH")=$J($G(SUM(J,IND,"SH"))/SUM(J,IND,"AVSH"),1,1)
 .I $G(SUM(J,IND,"SD")) S SUM(J,IND,"AVMSD")=$J($G(SUM(J,IND,"SMSD"))/SUM(J,IND,"SD"),1,1)
 .I $G(SUM(J,IND,"AVSMSD")) S SUM(J,IND,"AVSMSD")=$J($G(SUM(J,IND,"SMSD"))/SUM(J,IND,"AVSMSD"),1,1)
 .S SUM(J,IND,"AVMSH")=$G(SUM(J,IND,"AVSH"))-$G(SUM(J,IND,"AVSMSD"))
 Q
 ;
 ;
SHOW(J) ;
 D STR(J)
 ;
 D TR
  D GRAPH(J,"SD")
  N SDA1,SDA2,SSA1,SSA2
  D
  . S ST=$$TD("micreq","B")
  . N SSDA,SSA S SSDA=0,SSA=0
  . F J1=1:1:K D  ; -- MISPAR SHAVUOT
  . . N SDA S SDA="-"
  . . S SDA=$G(SUM(J,1,J1,"SD"))+$G(SUM(J,1,J1,"SDMSH"))
  . . I SDA S SSDA=SSDA+SDA,SSA=SSA+1
  . . I 'SDA S SDA=""
  . .S ST=ST_$$TDL(SDA)
  . D DOP(K)
  . S ST=ST_$$TDL(SSDA,"B"),SDA1=SSDA
  . N AV S AV="-" I SSA S AV=$J(SSDA/SSA,1,1)
  . S SSA1=SSA
  . S ST=ST_$$TDL($J(AV,1,1),"B")
 D TRE
 
 D TR ; --- SECOND LINE
 D
 . S ST=$$TDSP_$$TDSP
 . N SSDA,SSA S SSDA=0,SSA=0
 . F J1=1:1:K D  ; -- MISPAR SHAVUOT
 . . N SDA S SDA="-"
 . . S SDA=$G(SUM(J,2,J1,"SD"))+$G(SUM(J,2,J1,"SDMSH"))
 . . I SDA S SSDA=SSDA+SDA,SSA=SSA+1
 . . I 'SDA S SDA=""
 . . S ST=ST_$$TDL(SDA,"",STYLE2)
 . D DOP(K)
 . S ST=ST_$$TDL(SSDA,"B",STYLE2)
 . N AV S AV="-" I SSA S AV=$J(SSDA/SSA,1,1)
 . S SDA2=SSDA,SSA2=SSA
 . S ST=ST_$$TDL($J(AV,1,1),"B",STYLE2)
 D TRE
 ;
 D TR ; ----3 LINE (%)
  S ST=$$TDSP_$$TDSP
  F J1=1:1:K D  ; -- MISPAR SHAVUOT
  .S AHUZ=$$AHUZ($G(SUM(J,2,J1,"SD"))+$G(SUM(J,2,J1,"SDMSH")),$G(SUM(J,1,J1,"SD"))+$G(SUM(J,1,J1,"SDMSH")))
  .S ST=ST_$$TDL(AHUZ,"",STYLE2)
  D DOP(K)
  S AHUZ=$$AHUZ($G(SUM(J,2,"SD"))+$G(SUM(J,2,"SDMSH")),$G(SUM(J,1,"SD"))+$G(SUM(J,1,"SDMSH")))
  S ST=ST_$$TDL(AHUZ,"B",STYLE2)
  S AHUZ=$$AHUZ($G(SUM(J,2,"AVSD")),$G(SUM(J,1,"AVSD")))
  S ST=ST_$$TDL(AHUZ,"B",STYLE2)
 D TRE
 D KAV
 ;
 ;
 I $$MISHL D
 .D TR
 . D GRAPH(J,"SMSD")
 . S ST=$$TD("dcrqn","B")
 . F J1=1:1:K D
 .. S ST=ST_$$TDL($S($G(SUM(J,1,J1,"SMSD")):$J($$SRKV(J,1,J1,"SMSD"),1,1),1:"-"))
 . D DOP(K)
 . S ST=ST_$$TDL($J($$SRKV(J,1,"SMSD"),8,1),"B")
 . S ST=ST_$$TDL($J($$SRKV(J,1,"AVSMSD"),9,1),"B")
 .D TRE
 .
 .D TR
 . S ST=$$TDSP_$$TDSP
 . F J1=1:1:K D
 .. S ST=ST_$$TDL($S($G(SUM(J,2,J1,"SMSD")):$J($$SRKV(J,2,J1,"SMSD"),1,1),1:"-"),"",STYLE2)
 . D DOP(K)
 . S ST=ST_$$TDL($J($$SRKV(J,2,"SMSD"),8,1),"B",STYLE2)
 . S ST=ST_$$TDL($J($$SRKV(J,2,"AVSMSD"),9,1),"B",STYLE2)
 .D TRE
 .
 .D TR
 . S ST=$$TDSP_$$TDSP
 . F J1=1:1:K D
 .. S AHUZ=$$AHUZ($$SRKV(J,2,J1,"SMSD"),$$SRKV(J,1,J1,"SMSD"))
 .. S ST=ST_$$TDL(AHUZ,"",STYLE2)
 . D DOP(K)
 . S AHUZ=$$AHUZ($$SRKV(J,2,"SMSD"),$$SRKV(J,1,"SMSD"))
 . S ST=ST_$$TDL(AHUZ,"B",STYLE2)
 . S AHUZ=$$AHUZ($$SRKV(J,2,"AVSMSD"),$$SRKV(J,1,"AVSMSD"))
 . S ST=ST_$$TDL(AHUZ,"B",STYLE2)
 .D TRE
 .D KAV
 .;
 .;
 .D TR
 . D GRAPH(J,"SMSH")
 . S ST=$$TD("migelyn","B")
 . F J1=1:1:K D
 . .S ST=ST_$$TDL($S($$SRKV(J,1,J1,"SMSH"):$J($$SRKV(J,1,J1,"SMSH"),1,1),1:"-"))
 . D DOP(K)
 . S ST=ST_$$TDL($J($$SRKV(J,1,"SMSH"),1,1),"B")
 . S ST=ST_$$TDL($J($$SRKV(J,1,"AVMSH"),1,1),"B")
 .D TRE
 .
 .D TR
 . S ST=$$TDSP_$$TDSP
 . F J1=1:1:K D
 . .S ST=ST_$$TDL($S($G(SUM(J,2,J1,"SMSH")):$J($$SRKV(J,2,J1,"SMSH"),1,1),1:"-"),"",STYLE2)
 . D DOP(K)
 . S ST=ST_$$TDL($J($$SRKV(J,2,"SMSH"),1,1),"B",STYLE2)
 . S ST=ST_$$TDL($J($$SRKV(J,2,"AVMSH"),1,1),"B",STYLE2)
 .D TRE
 .;
 .D TR
 . S ST=$$TDSP_$$TDSP
 . F J1=1:1:K D
 . .S AHUZ=$$AHUZ($$SRKV(J,2,J1,"SMSH"),$$SRKV(J,1,J1,"SMSH"))
 . .S ST=ST_$$TDL(AHUZ,"",STYLE2)
 . D DOP(K)
 . S AHUZ=$$AHUZ($$SRKV(J,2,"SMSH"),$$SRKV(J,1,"SMSH"))
 . S ST=ST_$$TDL(AHUZ,"B",STYLE2)
 . S AHUZ=$$AHUZ($$SRKV(J,2,"AVMSH"),$$SRKV(J,1,"AVMSH"))
 . S ST=ST_$$TDL(AHUZ,"B",STYLE2)
 .D TRE
 .D KAV
 ;
 ;
 D TR
  D GRAPH(J,"SH")
  S ST=$$TD("mekq","B")
  F J1=1:1:K S ST=ST_$$TDL($S($G(SUM(J,1,J1,"SH")):$J($$SRKV(J,1,J1,"SH"),1,1),1:"-"))
  D DOP(K)
  S ST=ST_$$TDL($J($$SRKV(J,1,"SH"),9,1),"B")
  S ST=ST_$$TDL($J($$SRKV(J,1,"AVSH"),9,1),"B")
 D TRE
 ;
 D TR
  S ST=$$TDSP_$$TDSP
  F J1=1:1:K S ST=ST_$$TDL($S($G(SUM(J,2,J1,"SH")):$J($$SRKV(J,2,J1,"SH"),1,1),1:"-"),"",STYLE2)
  D DOP(K)
  S ST=ST_$$TDL($J($$SRKV(J,2,"SH"),9,1),"B",STYLE2)
  S ST=ST_$$TDL($J($$SRKV(J,2,"AVSH"),9,1),"B",STYLE2)
 D TRE
 ;
 D TR
  S ST=$$TDSP_$$TDSP
  F J1=1:1:K D
  .S AHUZ=$$AHUZ($$SRKV(J,2,J1,"SH"),$$SRKV(J,1,J1,"SH"))
  .S ST=ST_$$TDL(AHUZ,"",STYLE2)
  D DOP(K)
  S AHUZ=$$AHUZ($$SRKV(J,2,"SH"),$$SRKV(J,1,"SH"))
  S ST=ST_$$TDL(AHUZ,"B",STYLE2)
  S AHUZ=$$AHUZ($$SRKV(J,2,"AVSH"),$$SRKV(J,1,"AVSH"))
  S ST=ST_$$TDL(AHUZ,"B",STYLE2)
 D TRE
 D KAV
 ;
 ;
 D TR
  D GRAPH(J,"AVMSD")
  D
  . N SAV,SA,SUMA,SSUMA S SSUMA=0,SA=0
  . S ST=$$TD("creql","B")
  . F J1=1:1:K D
  .. N AV,SDA,SUMA
  .. S SDA=$G(SUM(J,1,J1,"SD"))+$G(SUM(J,1,J1,"SDMSH")),SA=SA+SDA
  .. S SUMA=$$RKV($G(SUM(J,1,J1,"SMSD"))+$G(SUM(J,1,J1,"SMSH"))) I SUMA S SSUMA=SSUMA+SUMA
  .. S AV="-" I SDA S AV=$J(SUMA/SDA,1,1)
  .. S SUM(J,1,J1,"AVMSD")=AV
  .. S ST=ST_$$TDL(AV)
  . D DOP(K)
  .
  . S ST=ST_$$TDSP
  . S AV1=0
  . I SA D
  . .S AV1=$J(SSUMA/SA,1,1)
  . .S ST=ST_$$TDL(AV1,"B")
  . I 'SA D
  . .S ST=ST_$$TDSP
  .D TRE
  ;
  D
  .D TR
  . N SAV,SA,SUMA,SSUMA S SSUMA=0,SA=0
  . S ST=$$TDSP_$$TDSP
  . F J1=1:1:K D
  .. N AV,SDA,SUMA
  .. S SDA=$G(SUM(J,2,J1,"SD"))+$G(SUM(J,2,J1,"SDMSH")),SA=SA+SDA
  .. S SUMA=$$RKV($G(SUM(J,2,J1,"SMSD"))+$G(SUM(J,2,J1,"SMSH"))) I SUMA S SSUMA=SSUMA+SUMA
  .. S AV="-" I SDA S AV=$J(SUMA/SDA,1,1)
  .. S SUM(J,2,J1,"AVMSD")=AV
  .. S ST=ST_$$TDL(AV,"",STYLE2)
  . D DOP(K)
  .
  . S ST=ST_$$TDSP
  . S AV2=0
  . I SA D
  . .S AV2=$J(SSUMA/SA,1,1)
  . .S ST=ST_$$TDL(AV2,"B",STYLE2)
  . I 'SA D
  . .S ST=ST_$$TDSP
  .D TRE
 ;
 D TR
 D 
 . S ST=$$TDSP_$$TDSP
 . F J1=1:1:K D
 . .S AHUZ=$$AHUZ($G(SUM(J,2,J1,"SD"))+$G(SUM(J,2,J1,"SDMSH")),$G(SUM(J,1,J1,"SD"))+$G(SUM(J,1,J1,"SDMSH")))
 . .S ST=ST_$$TDL(AHUZ,"",STYLE2)
 . D DOP(K)
 . S ST=ST_$$TDSP
 . S AHUZ=$$AHUZ(AV2,AV1)
 . S ST=ST_$$TDL(AHUZ)
 D TRE
 Q
 ;
 ;
KAV ; 
 W "<tr><td colspan=""9""><hr></td></tr>",!
 Q
 ;
TH(TX,STYLE) ;
 Q $$TD($G(TX),"TH",$G(STYLE))
 ;
AHUZ(TOT2,TOT1) ;
 N AH S AH=""
 I TOT2 S AH=$J(TOT1/TOT2*100-100,2,2)
 I 'AH Q "-"
 S AH=AH_"%"
 I AH>0 S AH="+"_AH Q "<span style=""text-align:center;color:green"">"_AH_"</span>"
 Q "<span style=""text-align:center;color:red"">"_AH_"</span>"
 ;
GRAPH(J,IND) ;
 I $$^W4TABLET=1 Q
 W "<td>"
  D ^W4BTN("GRAPH","Graph(this,'"_J_"','"_IND_"','"_YY1_"','"_MM1_"','"_YY2_"','"_MM2_"','"_MESHAA_"','"_ADSHAA_"')","blue","",14,5)
 W "</td>"
 Q
 ;
TBMAM ; 
 N DT1,DT2,MAM1,MAM2
 S DT1=$$^%L1DC("01"_$E(YYMM1,3,4)_$E(YYMM1,1,2),3)
 S MAM1=$$MAMD^W4L(DT1)
 S DT2=$$^%L1DC("01"_$E(YYMM2,3,4)_$E(YYMM2,1,2),3)
 S MAM2=$$MAMD^W4L(DT2)
 I +MAM1'=+MAM2 Q
 D TBMAM^W4YOM 
 Q 
 ;
SRKV(I1,I2,I3,I4) ;
 I $G(I4)="" D 
 .S VL=$G(SUM(I1,I2,I3))
 I $G(I4)'="" D 
 .S VL=$G(SUM(I1,I2,I3,I4))
 ;
 Q $$RKV(VL)
 ;
 ;
RKV(VL) ;
 N DT S DT=$$^%L1DC("01"_$E(YYMM1,3,4)_$E(YYMM1,1,2),3)
 S MAM=$$MAMD^W4L(DT)
 I $$LMAM S VL=$J(VL*100/(100+MAM),2,2)
 Q VL
 ;
LMAM(STAM) ;
 Q $G(%ARG("LMAM"))
 
 
 
 
 
 
 
 
 
 

W4Z
W4Z(DAT1,DAT2) ; [ 11.05.26 10:33 ] [ 14.04.26 02:42 ] [ 04.11.25 04:18 ] 
 N (JB,%ARG,%REM,DAT1,DAT2)
 Q:$G(%ARG("SHOW"))=0
 ;
 D PREP(DAT1,DAT2)
 ;
 D REPORT
 ;
 D KILLS
 Q
 ;
 ;
PREP(DAT1,DAT2) ;
 D ^W4IN
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S SH=0,SHD=0,PRKBL=0
 D ^%L1TS
 ;
 S V("F")="onefn",V("G")="d`gnd",V("H")="dtwd",V("T")=$$TIPPS
 N AA,JJ S AA="IJKLMNOPQ"
 F JJ=1:1:$L(AA) D
 .N LET S LET=$E(AA,JJ) Q:LET=""
 .S V(LET)=$$U^W4VT(LET)
 S V("V")="`""k k""dq"
 S V("Z")="yelz",V("A")="oeict",V("MAM")="n""rn"
 ;
ZD D KILLS
 ;
 S GLOB=$$^W4GL("Z1")_"(DAT)"
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 ;
 F N=DT1:1:DT2 D
 .I $G(%ARG("REPDAYS")),'$E(%ARG("REPDAYS"),$$^%L1DC(N,8)) Q 
 .S DAT=$$^%L1DC(N,2)
 .K ZZ
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  K Z D  ; -- N1 - NP OF ^Z1
 ..S NZ=N1
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(N2)=$G(^(N2,1)),ZZ(N2)=$G(ZZ(N2))+Z(N2)
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z("MTB",N3)=$G(^(N3)),ZZ("MTB",N3)=$G(ZZ("MTB",N3))+Z("MTB",N3)
 ..S Z("CMAM")=$G(@GLOB@(N1,"F","CMAM"))+$G(@GLOB@(N1,"G","CMAM"))+$G(@GLOB@(N1,"V","CMAM"))
 ..S ZZ("CMAM")=$G(ZZ("CMAM"))+Z("CMAM")
 ..N KK S KK=0
 ..S Z("V")=0 F J=1:1:9 D
 ...I J=$$GFC^W4VT,$$PAPJ^W4PRM S KK=$G(@("Z(""V"_J_""")")) Q
 ...S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 ..F J=1:1:9 D
 ...I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ...S ZZ("V")=$G(ZZ("V"))+$G(@("Z(""V"_J_""")"))
 ..S Z("A")=$G(Z("F"))+$G(Z("G"))+$G(Z("V"))+$G(Z("MP"))+KK
 ..
 ..I '$$SHOWTIP S Z("T")=""
 ..I '$$^W4TIPPD(N) D
 ...S Z("A")=Z("A")-$G(Z("T"))
 ..
 ..S ZZ("A")=$G(ZZ("A"))+Z("A"),ZZ("T")=$G(ZZ("T"))+$G(Z("T"))
 ..
 ..S N2="" F  S N2=$O(Z(N2)) Q:N2=""  D
 ...I N2'="MTB" D
 ....S Z(N2)=$S(Z(N2):$J(Z(N2),2,2),1:"")
 ..
 ..N LINKZ S LINKZ=N_";"_N1
 ..;
 ..I '$D(W4MAAZAN) D S2 ; --> ^S222,^S333,^S444,SZ()
 ..I $D(W4MAAZAN) D S2^W4MAAZAN
 ;
 S N2="" F  S N2=$O(SZ(N2)) Q:N2=""  S SZ(N2)=$J(SZ(N2),2,2)
 Q
 ;
 ;
REPORT ;
 ; ------------------------- CREATE REPORT ---------------
 ;--------- ----------  HEADER
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  I $G(%ARG("WIN"))="IFR" D ^W4BCK
  I $G(%ARG("WIN"))'="IFR" D SHOWDAYS
  D BASICREP
  D CAREP("S333")
  I PRKBL D KBLREP D CAREP("S666") D MGREP D CAREP("S888")
  I $G(@$$^W4PL@("MATB")) D MATB
 W "</div>",!
 Q
 ;
 ;
BASICREP ;
 N ST,STP,TIPK,I,N,TX1,TX2
 S TX1="mi Z- fekix"
 ;;D KOT(TX1)
 S TX2=DAT2_" jix`z cr "_DAT1_" jix`zn"
 ;;D KOT(TX2)
 S @$$^W4MAIN("S222")@("HD0",1)=TX1
 S @$$^W4MAIN("S222")@("HD0",2)=TX2
 S ST=""
 I $$NOMAM^W4PRM S ST=":n""rn"
 S ST=ST_": i`xy` iqihxk  :   wiy  :"
 S TIPK=$$TIPPS
 S ST=ST_" "_TIPK_" :"
 S ST=ST_"  onefn  : zexikn k""dq :  dtwd  :  oeict  : hf 'qn :  jix`z :"
 ;
 S @$$^W4MAIN("S222")=ST
 D ^W4ZEX("S222")
 D DIVEXC^W4SVEX("S222")
 D KOT(TX1),KOT(TX2)
 W "<br><br>",!
 ;
 D OPTBL
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="\\\\BZ\B\BZ\CZ\BCZ"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S222")@(N)) Q:N=""  I N S ST=^(N) D
 .D ST2TD(ST,STP,$G(@$$^W4MAIN("S222")@(N,"LINKZ")))
 ;
 ;----------- TOTALS
 S ST=""
 I $$NOMAM^W4PRM S ST=$J($G(SZ("MAM")),2,2)_"\"
 S ST=ST_$G(SZ("V"))_"\"
 S ST=ST_$G(SZ("G"))_"\"_$G(SZ("T"))_"\"
 S ST=ST_$G(SZ("F"))_"\"_($G(SZ("H"))+$G(SZ("A")))_"\"_$G(SZ("H"))_"\"_$G(SZ("A"))_"\\"_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 ;
 W "</table>",!
 Q
 ;
 ;
CAREP(GL) ;
 I $D(@$$^W4MAIN(GL))<10 Q
 N TXT,ST,STP,I,N
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TXT=" i`xy` iqihxk hexit "
 ;
 I GL="S666" S TXT="(zelaw)"_TXT
 I GL="S888" S TXT="(dxibn)"_TXT
 ;
 D KOT(TXT)
 N TX1,TX2 S TX1=TXT
 S TX2=DAT2_" jix`z cr "_DAT1_" jix`zn"
 D KOT(TX2)
 ;
 S @$$^W4MAIN(GL)@("HD0",1)=TX1
 S @$$^W4MAIN(GL)@("HD0",2)=TX2
 ;
 W "<br><br>",!
 ;
 S ST=": `""k k""dq :"_$$ST^W4VT_": hf 'qn : jix`z :"
 S @$$^W4MAIN(GL)=ST
 D ^W4ZEX(GL)
 D DIVEXC^W4SVEX(GL)
 D OPTBL
 D ST2TH(ST)
 ;
 S STP="B\\\\\\\\C\BC"
 S N="" F  S N=$O(@$$^W4MAIN(GL)@(N)) Q:N=""  I N S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 I GL="S333" D
 .N I S ST=$J($G(SZ("V")),2,2)_"\"
 .F I=9:-1:1 D
 ..I $$USNO(I) Q
 ..S ST=ST_$J($G(SZ("V"_I)),2,2)_"\"
 .S ST=ST_"\"_$$^%W1DICT("TOTAL")
 ;
 I GL="S666" D
 .N I S ST=$J($G(SZ("VD")),2,2)_"\"
 .F I=9:-1:1 D
 ..I $$USNO(I) Q
 ..S ST=ST_$J($G(SZ("V"_I_"D")),2,2)_"\"
 .S ST=ST_"\"_$$^%W1DICT("TOTAL")
 ;
 I GL="S888" D
 .N I S ST=$J($G(SZ("V"))+$G(SZ("VD")),2,2)_"\"
 .F I=9:-1:1 D
 ..I $$USNO(I) Q
 ..S ST=ST_$J($G(SZ("V"_I))+$G(SZ("V"_I_"D")),2,2)_"\"
 .S ST=ST_"\"_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 W "</table>",!
 Q
 ;
 ;
KBLREP ;
 N TXT,ST,STP,I,N,TX1,TX2
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TX1="zelaw g""ec"
 D KOT(TX1)
 S TX2=DAT2_" jix`z cr "_DAT1_" jix`zn"
 D KOT(TX2)
 W "<br><br>",!
 ;
 S @$$^W4MAIN("S555")@("HD0",1)=TX1
 S @$$^W4MAIN("S555")@("HD0",2)=TX2
 ;
 S ST=":  k""dq  : i`xy` iqihxk  : zi`wpa dxard :   wiy   :  onefn  : hf 'qn : jix`z :"
 S @$$^W4MAIN("S555")=ST
 ;
 D ^W4ZEX("S555")
 D DIVEXC^W4SVEX("S555")
 D OPTBL
 ;
 D ST2TH(ST)
 ;-----------  BODY
 S STP="B\\\\\C\BC"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S555")@(N)) Q:N=""  I N S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 ;----------- TOTALS
 S SZ("AD")=$G(SZ("VD"))+$G(SZ("BD"))+$G(SZ("GD"))+$G(SZ("FD"))
 ;
 S ST=$J(SZ("AD"),2,2)_"\"_$J($G(SZ("VD")),2,2)_"\"
 S ST=ST_$J($G(SZ("BD")),2,2)_"\"_$J($G(SZ("GD")),2,2)_"\"_$J($G(SZ("FD")),2,2)_"\"
 S ST=ST_"\"_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 W "</table>",!
 ;
 Q
 ;
 ;
MGREP ;
 N TXT,ST,STP,I,N,TX1,TX2
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TX1="dxibn g""ec"
 D KOT(TX1)
 S TX2=DAT2_" jix`z cr "_DAT1_" jix`zn"
 D KOT(TX2)
 W "<br><br>",!
 ;
 S @$$^W4MAIN("S777")@("HD0",1)=TX1
 S @$$^W4MAIN("S777")@("HD0",2)=TX2
 ;
 S ST=":  k""dq   : i`xy` iqihxk  :   wiy  :"
 S ST=ST_" onefn  : hf 'qn : jix`z :"
 ;
 S @$$^W4MAIN("S777")=ST
 D ^W4ZEX("S777")
 D DIVEXC^W4SVEX("S777")
 D OPTBL
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="\\\\C\BCZ"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S777")@(N)) Q:N=""  I N S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 ;----------- TOTALS
 S SZ("AA")=$G(SZ("V"))+$G(SZ("VD"))+$G(SZ("G"))+$G(SZ("GD"))+$G(SZ("F"))+$G(SZ("FD"))
 ;
 ;;I '$$TIPPD S SZ("F")=$G(SZ("F"))-$G(SZ("T"))
 ;
 S ST=$J(SZ("AA"),2,2)_"\"_$J($G(SZ("V"))+$G(SZ("VD")),2,2)_"\"
 S ST=ST_$J($G(SZ("G"))+$G(SZ("GD")),2,2)_"\"
 S ST=ST_$J($G(SZ("F"))+$G(SZ("FD")),2,2)_"\"
 S ST=ST_"\"_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 W "</table>",!
 ;
 Q
 ;
 ;
MATB ;
 N I,N,TXT,ST,MK,KAV
 ;
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TXT=" zerahn hexit " D KOT(TXT)
 S @$$^W4MAIN("S444")@("HD0",1)=TXT
 W "<br>",!
 ;
 S N="",ST=":   k""dq  :",STP="B\"
 F  S N=$O(Z("MTB",N)) Q:N=""  D
 .S ST=ST_$J($P($G(@$$^W4GL("P1SUGM")@(N)),"\",2),8)_":"
 .S STP=STP_"\"
 S ST=ST_"   g""y   : hf 'qn : jix`z  :"
 S STP=STP_"\B\C\BC"
 ;
 S @$$^W4MAIN("S444")=ST
 D ^W4ZEX("S444")
 D DIVEXC^W4SVEX("S444")
 D OPTBL
 D ST2TH(ST)
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S444")@(N)) Q:N=""  I N S ST=^(N) D
 .D ST2TD(ST,STP)
 ;
 N ST,I S ST=$J($G(SZ("F")),2,2)_" \"
 S N="" F  S N=$O(SZ("MTB",N)) Q:N=""  S ST=ST_$J($P($G(SZ("MTB",N)),"!",2),2,2)_$J("",9)_$J($G(SZ("MTB",N)),2,2)_"\"
 S ST=ST_$J($G(SZ("F"))-$G(SZ("MTB")),2,2)_"\"
 D ST2TOT(ST)
 W "</table>",!
 Q
 ;
 ;
OPTBL W "<table border=""1"" cellspacing=""0"" cellpadding=""3"" width=""80%"" >",!
 Q
 ;
 ;
S2 ;------ Z() --> ^S222
 ; ------- Z() --> SZ()
 ; ------- Z("V...") --> ^S333
 ; ------- Z("MTB",...") --> ^S444, SZ("MTB")
 ;------------------------------------------------------------
 ;------------------------ BASIC REPORT ----------------------
 N N,N2,ST,I,S2
 S SH=SH+1
 I '$$SHOWTIP S Z("T")=""
 S S2=""
 I $$NOMAM^W4PRM S S2=$J($G(Z("MAM")),2,2)_"\"
 S S2=S2_$S($G(Z("V")):$J($G(Z("V")),2,2),1:"")_"\"
 S S2=S2_$G(Z("G"))_"\"_$G(Z("T"))_"\"
 S S2=S2_$G(Z("F"))_"\"_($G(Z("H"))+$G(Z("A")))_"\"_$G(Z("H"))_"\"_$G(Z("A"))_"\"_NZ_"\"_$$VWDAT(DAT)
 S @$$^W4MAIN("S222")@(SH)=S2
 I $G(LINKZ) S @$$^W4MAIN("S222")@(SH,"LINKZ")=LINKZ
 ;
 D
 . I '$G(Z("VD")),'$G(Z("BD")),'$G(Z("GD")),'$G(Z("FD")) Q
 . S PRKBL=1
 . N K F K="VD","BD","GD","FD" D
 . .S Z(K)=$G(Z(K)) I Z(K) S Z(K)=$J(Z(K),2,2)
 . S SHD=SHD+1
 . S Z("AD")=Z("VD")+Z("BD")+Z("GD")+Z("FD")
 . S S5=Z("AD")_"\"
 . S S5=S5_Z("VD")_"\"_Z("BD")_"\"_Z("GD")_"\"
 . S S5=S5_Z("FD")_"\"_NZ_"\"_$$VWDAT(DAT)
 . S @$$^W4MAIN("S555")@(SHD)=S5
 ;
 S N2="" F  S N2=$O(Z(N2)) Q:N2=""  S SZ(N2)=$G(SZ(N2))+$G(Z(N2))
 ;
 ;----------------- CREDIT CARDS ---------------------
 S ST=$S($G(Z("V")):$J($G(Z("V")),2,2),1:"")_"\"
 F I=9:-1:1 D
 .I $$USNO(I) Q
 .S ST=ST_$S($G(Z("V"_I)):$J($G(Z("V"_I)),2,2),1:"")_"\"
 S ST=ST_NZ_"\"_$$VWDAT(DAT)
 S @$$^W4MAIN("S333")@(SH)=ST
 ;
 S ST=$S($G(Z("VD")):$J($G(Z("VD")),2,2),1:"")_"\"
 F I=9:-1:1 D
 .I $$USNO(I) Q
 .S ST=ST_$S($G(Z("V"_I_"D")):$J($G(Z("V"_I_"D")),2,2),1:"")_"\"
 S ST=ST_NZ_"\"_$$VWDAT(DAT)
 S @$$^W4MAIN("S666")@(SH)=ST
 ;
 S Z("AA")=$G(Z("V"))+$G(Z("VD"))+$G(Z("G"))+$G(Z("GD"))
 S Z("AA")=Z("AA")+$G(Z("F"))+$G(Z("FD"))
 ;;I '$$TIPPD S Z("AA")=Z("AA")-$G(Z("T"))
 ;
 S ST=$J($G(Z("AA")),2,2)_"\"_$J($G(Z("V"))+$G(Z("VD")),2,2)_"\"
 S ST=ST_$J($G(Z("G"))+$G(Z("GD")),2,2)_"\"
 S ST=ST_$J($G(Z("F"))+$G(Z("FD")),2,2)_"\"_NZ_"\"_$$VWDAT(DAT)
 S @$$^W4MAIN("S777")@(SH)=ST
 I $G(LINKZ) S @$$^W4MAIN("S777")@(SH,"LINKZ")=LINKZ
 ;
 S ST=$J($G(Z("V"))+$G(Z("VD")),2,2)_"\"
 F I=9:-1:1 D
 .I $$USNO(I) Q
 .S ST=ST_$J($G(Z("V"_I))+$G(Z("V"_I_"D")),2,2)_"\"
 S ST=ST_NZ_"\"_$$VWDAT(DAT)
 S @$$^W4MAIN("S888")@(SH)=ST
 ;
 ;---------- MATBEOT -----------
 S N="",ST="",Z("MTB")=""
 F  S N=$O(Z("MTB",N)) Q:N=""  D
 .S Z("MTB")=Z("MTB")+$P($G(Z("MTB",N)),"!",2)
 .N SHAAR S SHAAR=1
 .I Z("MTB",N) S SHAAR=$P(Z("MTB",N),"!",2)/Z("MTB",N)
 .S ST=ST_$J($P(Z("MTB",N),"!",2),8,2)_"="_$J(SHAAR,7,3)_"*"_$J(+Z("MTB",N),7,2)_"\"
 .S $P(SZ("MTB",N),"!")=$G(SZ("MTB",N))+$G(Z("MTB",N))
 .S $P(SZ("MTB",N),"!",2)=$P($G(SZ("MTB",N)),"!",2)+$P($G(Z("MTB",N)),"!",2)
 .S SZ("MTB")=$G(SZ("MTB"))+$P($G(Z("MTB",N)),"!",2)
 ;
 S ST=ST_$J($G(Z("F"))-$G(Z("MTB")),2,2)
 S @$$^W4MAIN("S444")@(SH)=$G(Z("F"))_" \"_ST_"\"_NZ_"\"_$$VWDAT(DAT)
 Q
 ;
 ;
ST2TH(ST) ;
 N GL
 W "<tr>" N FLD1
 F J=$L(ST,":")-1:-1:2 D
 .S FLD=$P(ST,":",J)
 .I FLD="" S FLD1="&nbsp;"
 .E  S FLD1=$$H2U^%L1FRM(FLD)
 .W "<th "
 .W ">"_FLD1_"</th>"
 W "</tr>",!
 Q
 ;
ST2TD(ST,STP,LINK) ;
 N J,OK,FLD,GL S OK=0
 F J=$L(ST,"\")-1:-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .I FLD S OK=1
 ;;Q:'OK
 ;
 W "<tr>"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style="""
 .I $P(STP,"\",J)["B" W "font-weight:bold;"
 .I $P(STP,"\",J)["C" W "text-align:center;"
 .I $P(STP,"\",J)["Z" W "cursor:pointer;"
 .W """"
 .I $P(STP,"\",J)["Z",$G(LINK) D
 ..W " onClick=""ShowZ('"_LINK_"')"" "
 .
 .N PR S PR="" I J<($L(ST,"\")-1) S PR="N"
 .W ">"_$$SHOW(FLD,PR)_"</td>"
 W "</tr>",!
 Q
 ;
ST2TOT(ST) ;
 N GL
 W "<tr>"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style=""background-color:yellow;font-weight:bold;border:solid 1px brown"
 .I J=$L(ST,"\") W ";text-align:center"
 .W """ "
 .W ">"_$$SHOW(FLD,"N")_"</td>"
 W "</tr>",!
 Q
 ;
KOT(TXT) ;
 W "<span "
 W " style=""font-size:"_$$^W3FSZ(14)_""""
 W ">"
 I TXT'="",TXT'="&nbsp;" W $$H2U^%L1FRM(TXT)
 W "</span>",!
 Q
 ;
SHOW(FLD,PR) ;
 I $$SPA^%L1FRM(FLD)="" Q "&nbsp;"
 I PR="N",$G(FLD),$$NUM(FLD) S FLD=$J(FLD,2,2)
 I '$$NUM(FLD),FLD'="",FLD'="&nbsp;" Q $$H2U^%L1FRM(FLD)
 I FLD<0 Q "<span style=""color:red;text-align:right"" dir=""LTR"" >"_FLD_"</span>"
 Q FLD
 ;
NUM(FLD) ;
 I FLD?."-"1N.N.".".N Q 1
 Q 0
 ;
SHOWTIP(STAM) ;
 I $$NOTIPALL^W4PRM Q 0
 N DD S DD="" I $G(DAT) S DD=$$^%L1DC(DAT,4)
 I '$G(DAT),$G(DT1) S DD=DT1
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPD(STAM)
 Q $$^W4TIPPD($$^%L1DC($G(DAT),1))
 ;
VWDAT(VL) ;
 I $TR(VL,"./","")'?4N.N Q ""
 S VL=$$^%L1DC(VL,4)
 Q $$^%L1DC(VL,1)_" "_$$H2U^%L1FRM($$^%L1DC(VL,9))_"'"
 ;
 ;
KILLS ;
 K @$$^W4MAIN("TMPS111") ; --- TO SHOW
 K @$$^W4MAIN("S222") ; --- NORMAL LINES
 K @$$^W4MAIN("S333") ; --- CREDIT CARD
 K @$$^W4MAIN("S444") ; --- MATBEOT
 K @$$^W4MAIN("S555") ; --- KABALOT
 K @$$^W4MAIN("S666") ; --- CR.CARDS KABALOT
 K @$$^W4MAIN("S777") ; --- MEGIRA
 K @$$^W4MAIN("S888") ; --- CR.CARDS MEGIRA
 Q
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"
 ;
SHOWDAYS ;
 N DAYS S DAYS=$G(%ARG("REPDAYS"))
 N J F J=1:1:7 D
 .W $$^%W1DICT("DAY"_J)
 .W "<input type=""checkbox"" name=""days"" id=""day"_J_""" "
 .I $E(DAYS,J)'=0 W "checked=""checked"" "
 .W " disabled=""disabled"" "
 .W "/>"
 Q
 ;
USNO(I) ; 
 I I=5!(I=8) Q 1  
 Q 0 
 ;
INIT ; 
 D ^%W1ARG,^W3CSS,^W4IN
 S DTZ=$S($$GET^%W1PRM("W4LKH"):+$H,1:P1DZ)
 S MEDAT=$G(%ARG("MEDAT")) 
 S ADDAT=$G(%ARG("ADDAT")) 
 I 'MEDAT S MEDAT=$$^%L1DC("01."_$ZD(DTZ,"MM.YY"),3)
 I 'ADDAT S ADDAT=DTZ 
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4Z0
W4Z(DAT1,DAT2) ; [ 27.12.15 09:18 ] [ 17.12.15 17:07 ] [ 18.08.14 12:54 ]
 N (JB,%ARG,%REM,DAT1,DAT2)
 Q:$G(%ARG("SHOW"))=0
 ;
 D PREP(DAT1,DAT2)
 ;
 D REPORT
 ;
 D KILLS
 Q
 ;
 ;
PREP(DAT1,DAT2) ;
 D ^W4IN
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 S SH=0,SHD=0,PRKBL=0
 D ^%L1TS
 ;
 S V("F")="onefn",V("G")="d`gnd",V("H")="dtwd",V("T")=$$TIPPS
 S V("I")="hxk`xyi",V("J")="dfie",V("K")="qxpiic",V("L")="AEX",V("M")="JCB",V("N")="ine`l"
 S V("V")="`""k k""dq"
 S V("Z")="yelz",V("A")="oeict",V("MAM")="n""rn"
 ;
ZD D KILLS
 ;
 S GLOB=$$^W4GL("Z1")_"(DAT)"
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 F N=DT1:1:DT2 D
 .S DAT=$$^%L1DC(N,2)
 .
 .S N1="" F  S N1=$O(@GLOB@(N1)) Q:N1=""  K Z D  ; -- N1 - NP OF ^Z1
 ..S N2="" F  S N2=$O(@GLOB@(N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ...I N2'="MTB" S Z(N2)=$G(^(N2,1))
 ...I N2="MTB" D
 ....S N3="" F  S N3=$O(@GLOB@(N1,N2,N3)) Q:N3=""  S Z("MTB",N3)=$G(^(N3))
 ..
 ..S Z("V")=0 F J=1:1:9 S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 ..S Z("A")=$G(Z("F"))+$G(Z("G"))+$G(Z("V"))
 ..
 ..I '$$SHOWTIP S Z("T")=""
 ..I '$$^W4TIPPD(N) D
 ...S Z("A")=Z("A")-$G(Z("T"))
 ...;;I $$TIPNO^W4TIPPD(N) S Z("F")=$G(Z("F"))-$G(Z("T"))
 ..
 ..S N2="" F  S N2=$O(Z(N2)) Q:N2=""  D
 ...I N2'="MTB" S Z(N2)=$S(Z(N2):$J(Z(N2),2,2),1:"")
 ..
 ..N LINKZ S LINKZ=N_";"_N1
 ..I '$D(W4MAAZAN) D S2 ; --> ^S222,^S333,^S444,SZ()
 ..I $D(W4MAAZAN) D S2^W4MAAZAN
 ;
 S N2="" F  S N2=$O(SZ(N2)) Q:N2=""  S SZ(N2)=$J(SZ(N2),2,2)
 Q
 ;
 ;
REPORT ;
 ; ------------------------- CREATE REPORT ---------------
 ;--------- ----------  HEADER
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  D BASICREP
  D CAREP("S333")
  I PRKBL D KBLREP D CAREP("S666") D MGREP D CAREP("S888")
  I $G(@$$^W4PL@("MATB")) D MATB
 W "</div>",!
 Q
 ;
 ;
BASICREP ;
 N ST,STP,TIPK,I,N
 D KOT("mi Z- fekix")
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 ;
 S ST=""
 I $$SUPER^W3PRM S ST=":n""rn `ll"
 S ST=ST_": i`xy` iqihxk  :   wiy  :"
 S TIPK=$$TIPPS
 S ST=ST_" "_TIPK_" :"
 S ST=ST_"  onefn  : zexikn k""dq :  dtwd  :  oeict  :  jix`z :"
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="\\\\BZ\B\BZ\BCZ"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S222")@(N)) Q:N=""  S ST=^(N) D
 .D ST2TD(ST,STP,$G(@$$^W4MAIN("S222")@(N,"LINKZ")))
 ;
 ;----------- TOTALS
 S ST=""
 I $$SUPER^W3PRM S ST=$J($G(SZ("NOMAM")),2,2)_"\"
 S ST=ST_$G(SZ("V"))_"\"
 S ST=ST_$G(SZ("G"))_"\"_$G(SZ("T"))_"\"
 S ST=ST_$G(SZ("F"))_"\"_($G(SZ("H"))+$G(SZ("A")))_"\"_$G(SZ("H"))_"\"_$G(SZ("A"))_"\"_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 ;
 W "</table>",!
 Q
 ;
 ;
CAREP(GL) ;
 I $D(@$$^W4MAIN(GL))<10 Q
 N TXT,ST,STP,I,N
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TXT=" i`xy` iqihxk hexit "
 I GL="S666" S TXT="(zelaw)"_TXT
 I GL="S888" S TXT="(dxibn)"_TXT
 ;
 D KOT(TXT)
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 S ST=": `""k k""dq :  ine`l  :   JCB   : AM.EXP. : qxpiic :  dfie  : hxk`xyi :  jix`z :"
 D ST2TH(ST)
 ;
 S STP="B\\\\\\\BC"
 S N="" F  S N=$O(@$$^W4MAIN(GL)@(N)) Q:N=""  S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 I GL="S333" D
 .N I S ST=$J($G(SZ("V")),2,2)_"\"
 .F I=6:-1:1 S ST=ST_$J($G(SZ("V"_I)),2,2)_"\"
 .S ST=ST_$$^%W1DICT("TOTAL")
 ;
 I GL="S666" D
 .N I S ST=$J($G(SZ("VD")),2,2)_"\"
 .F I=6:-1:1 S ST=ST_$J($G(SZ("V"_I_"D")),2,2)_"\"
 .S ST=ST_$$^%W1DICT("TOTAL")
 ;
 I GL="S888" D
 .N I S ST=$J($G(SZ("V"))+$G(SZ("VD")),2,2)_"\"
 .F I=6:-1:1 S ST=ST_$J($G(SZ("V"_I))+$G(SZ("V"_I_"D")),2,2)_"\"
 .S ST=ST_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 W "</table>",!
 Q
 ;
 ;
KBLREP ;
 N TXT,ST,STP,I,N
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 D KOT("zelaw g""ec")
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 ;
 S ST=":  k""dq  : i`xy` iqihxk  : zi`wpa dxard :   wiy   :  onefn  :  jix`z :"
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="B\\\\\BC"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S555")@(N)) Q:N=""  S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 ;----------- TOTALS
 S SZ("AD")=$G(SZ("VD"))+$G(SZ("BD"))+$G(SZ("GD"))+$G(SZ("FD"))
 ;
 S ST=$J(SZ("AD"),2,2)_"\"_$J($G(SZ("VD")),2,2)_"\"
 S ST=ST_$J($G(SZ("BD")),2,2)_"\"_$J($G(SZ("GD")),2,2)_"\"_$J($G(SZ("FD")),2,2)_"\"
 S ST=ST_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 W "</table>",!
 ;
 Q
 ;
 ;
MGREP ;
 N TXT,ST,STP,I,N
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 D KOT("dxibn g""ec")
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 ;
 S ST=":  k""dq   : i`xy` iqihxk  :   wiy  :"
 S ST=ST_" onefn  : jix`z :"
 ;
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="\\\\BCZ"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S777")@(N)) Q:N=""  S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 ;----------- TOTALS
 S SZ("AA")=$G(SZ("V"))+$G(SZ("VD"))+$G(SZ("G"))+$G(SZ("GD"))+$G(SZ("F"))+$G(SZ("FD"))
 ;
 ;;I '$$TIPPD S SZ("F")=$G(SZ("F"))-$G(SZ("T"))
 ;
 S ST=$J(SZ("AA"),2,2)_"\"_$J($G(SZ("V"))+$G(SZ("VD")),2,2)_"\"
 S ST=ST_$J($G(SZ("G"))+$G(SZ("GD")),2,2)_"\"
 S ST=ST_$J($G(SZ("F"))+$G(SZ("FD")),2,2)_"\"
 S ST=ST_$$^%W1DICT("TOTAL")
 ;
 D ST2TOT(ST)
 W "</table>",!
 ;
 Q
 ;
 ;
MATB ;
 N I,N,TXT,ST,MK,KAV
 ;
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TXT=" zerahn hexit " D KOT(TXT)
 W "<br>",!
 ;
 D OPTBL
 S N="",ST=":   k""dq  :",STP="B\"
 F  S N=$O(Z("MTB",N)) Q:N=""  D
 .S ST=ST_$J($P($G(@$$^W4GL("P1SUGM")@(N)),"\",2),8)_":"
 .S STP=STP_"\"
 S ST=ST_"   g""y   :  jix`z  :"
 S STP=STP_"\B\BC"
 D ST2TH(ST)
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S444")@(N)) Q:N=""  S ST=^(N) D
 .D ST2TD(ST,STP)
 ;
 N ST,I S ST=$J($G(SZ("F")),2,2)_" \"
 S N="" F  S N=$O(SZ("MTB",N)) Q:N=""  S ST=ST_$J($P($G(SZ("MTB",N)),"!",2),2,2)_$J("",9)_$J($G(SZ("MTB",N)),2,2)_"\"
 S ST=ST_$J($G(SZ("F"))-$G(SZ("MTB")),2,2)_"\"
 D ST2TOT(ST)
 W "</table>",!
 Q
 ;
 ;
OPTBL W "<table border=""1"" cellspacing=""0"" cellpadding=""3"" width=""80%"" >",!
 Q
 ;
 ;
S2 ;------ Z() --> ^S222
 ; ------- Z() --> SZ()
 ; ------- Z("V...") --> ^S333
 ; ------- Z("MTB",...") --> ^S444, SZ("MTB")
 ;------------------------------------------------------------
 ;------------------------ BASIC REPORT ----------------------
 N N,N2,ST,I,S2
 S SH=SH+1
 I '$$SHOWTIP S Z("T")=""
 S S2=""
 I $$SUPER^W3PRM S S2=$J($G(Z("NOMAM")),2,2)_"\"
 S S2=S2_$S($G(Z("V")):$J($G(Z("V")),2,2),1:"")_"\"
 S S2=S2_$G(Z("G"))_"\"_$G(Z("T"))_"\"
 S S2=S2_$G(Z("F"))_"\"_($G(Z("H"))+$G(Z("A")))_"\"_$G(Z("H"))_"\"_$G(Z("A"))_"\"_$$^%L1DC(DAT,1)
 S @$$^W4MAIN("S222")@(SH)=S2
 I $G(LINKZ) S @$$^W4MAIN("S222")@(SH,"LINKZ")=LINKZ
 ;
 D
 . I '$G(Z("VD")),'$G(Z("BD")),'$G(Z("GD")),'$G(Z("FD")) Q
 . S PRKBL=1
 . N K F K="VD","BD","GD","FD" D
 . .S Z(K)=$G(Z(K)) I Z(K) S Z(K)=$J(Z(K),2,2)
 . S SHD=SHD+1
 . S Z("AD")=Z("VD")+Z("BD")+Z("GD")+Z("FD")
 . S S5=Z("AD")_"\"
 . S S5=S5_Z("VD")_"\"_Z("BD")_"\"_Z("GD")_"\"
 . S S5=S5_Z("FD")_"\"_$$^%L1DC(DAT,1)
 . S @$$^W4MAIN("S555")@(SHD)=S5
 ;
 S N2="" F  S N2=$O(Z(N2)) Q:N2=""  S SZ(N2)=$G(SZ(N2))+$G(Z(N2))
 ;
 ;----------------- CREDIT CARDS ---------------------
 S ST=$S($G(Z("V")):$J($G(Z("V")),2,2),1:"")_"\"
 F I=6:-1:1 S ST=ST_$S($G(Z("V"_I)):$J($G(Z("V"_I)),2,2),1:"")_"\"
 S ST=ST_$$^%L1DC(DAT,1)
 S @$$^W4MAIN("S333")@(SH)=ST
 ;
 S ST=$S($G(Z("VD")):$J($G(Z("VD")),2,2),1:"")_"\"
 F I=6:-1:1 S ST=ST_$S($G(Z("V"_I_"D")):$J($G(Z("V"_I_"D")),2,2),1:"")_"\"
 S ST=ST_$$^%L1DC(DAT,1)
 S @$$^W4MAIN("S666")@(SH)=ST
 ;
 S Z("AA")=$G(Z("V"))+$G(Z("VD"))+$G(Z("G"))+$G(Z("GD"))
 S Z("AA")=Z("AA")+$G(Z("F"))+$G(Z("FD"))
 ;;I '$$TIPPD S Z("AA")=Z("AA")-$G(Z("T"))
 ;
 S ST=$J($G(Z("AA")),2,2)_"\"_$J($G(Z("V"))+$G(Z("VD")),2,2)_"\"
 S ST=ST_$J($G(Z("G"))+$G(Z("GD")),2,2)_"\"
 S ST=ST_$J($G(Z("F"))+$G(Z("FD")),2,2)_"\"_$$^%L1DC(DAT,1)
 S @$$^W4MAIN("S777")@(SH)=ST
 I $G(LINKZ) S @$$^W4MAIN("S777")@(SH,"LINKZ")=LINKZ
 ;
 S ST=$J($G(Z("V"))+$G(Z("VD")),2,2)_"\"
 F I=6:-1:1 S ST=ST_$J($G(Z("V"_I))+$G(Z("V"_I_"D")),2,2)_"\"
 S ST=ST_$$^%L1DC(DAT,1)
 S @$$^W4MAIN("S888")@(SH)=ST
 ;
 ;---------- MATBEOT -----------
 S N="",ST="",Z("MTB")=""
 F  S N=$O(Z("MTB",N)) Q:N=""  D
 .S Z("MTB")=Z("MTB")+$P($G(Z("MTB",N)),"!",2)
 .N SHAAR S SHAAR=1
 .I Z("MTB",N) S SHAAR=$P(Z("MTB",N),"!",2)/Z("MTB",N)
 .S ST=ST_$J($P(Z("MTB",N),"!",2),8,2)_"="_$J(SHAAR,7,3)_"*"_$J(+Z("MTB",N),7,2)_"\"
 .S $P(SZ("MTB",N),"!")=$G(SZ("MTB",N))+$G(Z("MTB",N))
 .S $P(SZ("MTB",N),"!",2)=$P($G(SZ("MTB",N)),"!",2)+$P($G(Z("MTB",N)),"!",2)
 .S SZ("MTB")=$G(SZ("MTB"))+$P($G(Z("MTB",N)),"!",2)
 ;
 S ST=ST_$J($G(Z("F"))-$G(Z("MTB")),2,2)
 S @$$^W4MAIN("S444")@(SH)=$G(Z("F"))_" \"_ST_"\"_$$^%L1DC(DAT,1)
 Q
 ;
 ;
ST2TH(ST) ;
 N GL
 W "<tr>" N FLD1
 F J=$L(ST,":")-1:-1:2 D
 .S FLD=$P(ST,":",J)
 .I FLD="" S FLD1="&nbsp;"
 .E  S FLD1=$$H2U^%L1FRM(FLD)
 .W "<th "
 .W ">"_FLD1_"</th>"
 W "</tr>",!
 Q
 ;
ST2TD(ST,STP,LINK) ;
 N J,OK,FLD,GL S OK=0
 F J=$L(ST,"\")-1:-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .I FLD S OK=1
 Q:'OK
 ;
 W "<tr>"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style="""
 .I $P(STP,"\",J)["B" W "font-weight:bold;"
 .I $P(STP,"\",J)["C" W "text-align:center;"
 .I $P(STP,"\",J)["Z" W "cursor:pointer;"
 .W """"
 .I $P(STP,"\",J)["Z",$G(LINK) D
 ..W " onClick=""ShowZ('"_LINK_"')"" "
 .W ">"_$$SHOW(FLD,"N")_"</td>"
 W "</tr>",!
 Q
 ;
ST2TOT(ST) ;
 N GL
 W "<tr>"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style=""background-color:yellow;font-weight:bold;border:solid 1px brown"
 .I J=$L(ST,"\") W ";text-align:center"
 .W """ "
 .W ">"_$$SHOW(FLD,"N")_"</td>"
 W "</tr>",!
 Q
 ;
KOT(TXT) ;
 W "<span "
 W " style=""font-size:"_$$^W3FSZ(14)_""""
 W ">"
 I TXT'="",TXT'="&nbsp;" W $$H2U^%L1FRM(TXT)
 W "</span>",!
 Q
 ;
SHOW(FLD,PR) ;
 I $$SPA^%L1FRM(FLD)="" Q "&nbsp;"
 I PR="N",$G(FLD),$$NUM(FLD) S FLD=$J(FLD,2,2)
 I '$$NUM(FLD),FLD'="",FLD'="&nbsp;" Q $$H2U^%L1FRM(FLD)
 I FLD<0 Q "<span style=""color:red;text-align:right"" dir=""LTR"" >"_FLD_"</span>"
 Q FLD
 ;
NUM(FLD) ;
 I FLD?."-"1N.N.".".N Q 1
 Q 0
 ;
SHOWTIP(STAM) ;
 N DD S DD="" I $G(DAT) S DD=$$^%L1DC(DAT,4)
 I '$G(DAT),$G(DT1) S DD=DT1
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPD(STAM)
 Q $$^W4TIPPD($$^%L1DC($G(DAT),1))
 ;
KILLS ;
 K @$$^W4MAIN("TMPS111") ; --- TO SHOW
 K @$$^W4MAIN("S222") ; --- NORMAL LINES
 K @$$^W4MAIN("S333") ; --- CREDIT CARD
 K @$$^W4MAIN("S444") ; --- MATBEOT
 K @$$^W4MAIN("S555") ; --- KABALOT
 K @$$^W4MAIN("S666") ; --- CR.CARDS KABALOT
 K @$$^W4MAIN("S777") ; --- MEGIRA
 K @$$^W4MAIN("S888") ; --- CR.CARDS MEGIRA
 Q
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"

W4Z2HZ
W4Z2HZ(DAT,HZ0,STEP) ; [ 07.02.24 14:59 ] [ 
 N (JB,%ARG,DAT,HZ0,STEP)
 S P1DZOLD=$$^W4DZ
 S DT=$$^%L1DC(DAT,3)
 S @$$^W4GL("P1DZ")=DT
 ;
 S DAT1=$ZD(DT,"YYMMDD")
 S DAT=$ZD(DT,"DD.MM.YY")
 S GLZ=$$^W4GL("Z1")
 ; 
 K STIP
 S NZ="" F  S NZ=$O(@GLZ@(DAT1,NZ)) Q:NZ=""  D
 .S VT="" F  S VT=$O(@GLZ@(DAT1,NZ,VT)) Q:VT=""  D
 ..S OV="" F  S OV=$O(@GLZ@(DAT1,NZ,VT,1,OV)) Q:OV=""  D
 ...S STIP(OV)=$G(@GLZ@(DAT1,NZ,"T",1,OV))
 ;
 K SSD
 S NZ="" F  S NZ=$O(@GLZ@(DAT1,NZ)) Q:NZ=""  D
 .S VT="" F  S VT=$O(@GLZ@(DAT1,NZ,VT)) Q:VT=""  D
 ..S OV="" F  S OV=$O(@GLZ@(DAT1,NZ,VT,1,OV)) Q:OV=""  D
 ...S SSD(OV)=$G(@GLZ@(DAT1,NZ,"SD",1,OV))
 ;
 S SH=0
 S NZ="" F  S NZ=$O(@GLZ@(DAT1,NZ)) Q:NZ=""  D
 .S VT="" F  S VT=$O(@GLZ@(DAT1,NZ,VT)) Q:VT=""  D
 ..S OV="" F  S OV=$O(@GLZ@(DAT1,NZ,VT,1,OV)) Q:OV=""  D
 ...S VL=$G(^(OV))
 ...S SD=$G(@GLZ@(DAT1,NZ,"SD",1,OV))
 ...S TIP=$G(@GLZ@(DAT1,NZ,"T",1,OV))
 ...I VT="F"!(VT="G")!(VT="V1")!(VT="V2")!(VT="V3")!(VT="V4")!(VT="V5")!(VT="V6") D
 ....I OV?5N D
 .....S HD="1~~~"_DAT_"  12:00~" 
 .....S $P(HD,"~",11)=VL
 .....S $P(HD,"~",12)=VL
 .....S CODTS=$S(VT="F":1,$E(VT)="G":2,$E(VT)="V":3,1:4)
 .....S $P(HD,"~",21)=CODTS   
 .....S $P(HD,"~",18)=OV
 .....I $D(SSD(OV)) S SD=SSD(OV) S $P(HD,"~",24)=SD K SSD(OV)
 .....S @$$^W4TMPORD=HD
 .....S VT1=$S(VT="F":"CASH",$E(VT)="G":"CHECK",VT="V1":"ISRACARD",VT="V2":"VIZA",VT="V3":"DINERS",VT="V4":"AM.EXP",VT="V6":"LEUMI",1:"")
 .....S @$$^W4TMPORD@(1)="0~0~"_VT1_" "_DAT_"~"_VL_"~1~"
 .....S SH=SH+1
 .....S HZMS=HZ0+(STEP*SH)
 .....;;K ^P1HZ(HZMS) ; ***
 .....W $$^W4NEWHZ(JB,HZMS,1),!
 .....D ^W4H(DT,HZMS)
 .....S STPAY=HZMS
 .....S $P(STPAY,"\",CODTS+1)=VL
 .....S @$$^W4ORD@(HZMS,"CB")=STPAY
 .....
 .....I CODTS=1 D
 ......S @$$^W4ORD@(HZMS,"CB","MZ")=VL
 .....I CODTS=2 D
 ......S @$$^W4ORD@(HZMS,"CB","CH")=VL
 .....I CODTS=3 D
 ......S IND=$O(@$$^W4ORD@(HZMS,"CB","V",999),-1)+1
 ......S @$$^W4ORD@(HZMS,"CB","V",IND)="$"_VT_"*****"_VL_"*"_VL
 ......I $D(STIP(OV)) D
 .......S TIP=STIP(OV)
 .......S $P(@$$^W4ORD@(HZMS,"CB","V",IND),"*",27)=TIP K STIP(OV)
 .......S $P(@$$^W4ORD@(HZMS,"CB"),"\",10)=TIP
 .....S @$$^W4GL("P1HB")@(HZMS)=HZMS_"\"_DT_"\\\"_VL
 .....S @$$^W4GL("P1HBI")@(DT,HZMS)=HZMS
 K @$$^W4GL("P1DZ")
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4Z2NET
W4Z2NET(JB,D1,D2) ; [ 07.07.26 04:52 ] [ 23.06.23 14:46 ] [ 14.05.23 11:21 ] 
 N (JB,%ARG,%REM,D1,D2)
 I '$G(D2) S D2=D1
 S GL=$$^W4GL("Z1")
 S TMP=$$^W4MAIN("TMP") K @TMP
 ;
 F DT=D1:1:D2 D
 .K ZZ
 .S DAT=$ZD(DT,"YYMMDD")
 .S NZ="" F  S NZ=$O(@GL@(DAT,NZ)) Q:NZ=""  D
 ..F IND="F","G","V1","V2","V3","V4","V5","V6" D
 ...S ZZ(IND)=$G(ZZ(IND))+$$ZRKV(IND)
 ...S ZZ(IND_"D")=$G(ZZ(IND_"D"))+$$ZRKV(IND_"D")
 ..S ZZ("H")=$G(ZZ("H"))+$$ZRKV("H")
 .
 .S ST=DT_"~"
 .F IND="F","G","V1","V2","V3","V4","V5","V6" D
 ..S ST=$G(ST)_$G(ZZ(IND))_"~"
 ..S ST=$G(ST)_$G(ZZ(IND_"D"))_"~"
 .S ST=$G(ST)_$G(ZZ("H"))
 .
 .S @TMP@(DT)=ST
 ;
 S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MSD="" S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q:MSD=""
 S DT="" F  S DT=$O(@TMP@(DT)) Q:DT=""  D
 .S FDB=$G(^(DT))
 .D SND(MSD,DT,FDB) H 1 
 ;
 K @TMP
 Q  ;
 ;
 ;
ZRKV(IND) ;
 Q $G(@GL@(DAT,NZ,IND,1))
 ;
SND(MSD,DT,FDB) ;
 N FILEIN S FILEIN="tmpz"_MSD_"_"_DT
 N URL S URL=$$OU^W3ASKURL_"w3ansz.jsp?"
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 N PRM S PRM="MSDR="_MSDR_"&MSD="_MSD_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 S FDB=$$CLWEB^%L1FRM(FDB)
 D SEND(FILEIN,URL,PRM,FDB)
 Q
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 

W4ZACT
W4ZACT(JB,P1DZ,DVN) ; [ 30.07.26 10:07 ] [ 22.07.26 07:02 ] [ 14.07.26 10:04 ] 
 N (JB,P1DZ,%ARG)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S @$$^W4GL("w4zact")=$ZD($H,"DD.MM.YY  24:60")_"\"_JB_"\"_$G(DVN)
 ;
 D ZACTIONS
 D CLEARALL^W4KLFL
 D CLRGL
 D CLEARJSP^W4JOB(JB)
 D CLRTRCKR
 I $G(@$$^W4PRM@("TIKITRAZ")) D TIKITRA^W4JOB(JB)
 I '$D(@$$^W4GL("W4INPI")) D DIR^W4MLREST
 ;---- 04/05/22
 N DT S DT=P1DZ
 F  S DT=$O(@$$^W4REF@(DT)) Q:DT=""  D
 .N HZ S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..D PUT^W4HZMST(HZ,"DATK",$ZD(DT,"DD.MM.YY"))
 ;
 I $$SUPER^W3PRM D CP2ML
 K ^|$$^W3MAIN|devp
 ;
 D CLRFLAGZ
 K @$$^W4GL("w4zact")
 Q
 ;
 ;
ZACTIONS ;
 I $$MYCHECK^W4PRM D
 .K @$$WTR^WMCGL
 .K @$$GT^WMCGL
 .K @$$CL2HZ^WMCGL
 .K @$$PY^WMCGL
 ;
 N NZ S NZ=$G(@$$^W4GL("Z"))
 ;
 I $$MAILZ^W4PRM D ^W4MAILZ(JB,P1DZ)
 I $$MLYHUZ^W4PRM D ^W4MLYHUZ(JB,P1DZ,P1DZ)
 I $$RSTGO^W4PRM D ^W4RSTGSN(JB,P1DZ)
 I $$ZSTR^W4PRM D ^W4ZSTR(JB,P1DZ,NZ)
 I $$MMOUT^W4PRM D ^W4MAILMS(JB,P1DZ)
 ;
 I $$GAP^W4PRM!$G(@$$^W4PRM@("SNDZ2SRV")) N AMER S AMER=1 D SNDGAP(P1DZ)
 ;
 I $$SNDOUT^W4PRM D  ; -- WAS SNDOUT^W4PRM=2
 .D ^W4MRKMAN(JB,P1DZ,P1DZ)
 ;
 I $G(@$$^W4PRM@("W4SNOU1")) D ^W4SNOU1(JB,P1DZ,P1DZ) ;
 ;
 I $$^W4CIBLKH D SETUP^WCSETUP
 N A
 I $$IT4WEB^W4PRM,$G(@$$^W4PRM@("IT4WEB","Z")) S %ARG("RCVMENU")=1 S A=$$^W3ASKIT
 ;
 D CLRVIP
 K @$$^W4GL("W3TRM")
 ;
 D PARMH(P1DZ)
 Q
 ;
 ;
CLRGL ;
 N JB0 S JB0=$P(JB,".") N JB S JB=JB0
 K ^[$$^W3MAIN]TMPMLZ(JB),^[$$^W3MAIN]TMPS(JB)
 K ^[$$^W3MAIN]TMPASKA
 K @$$^W4TMPORD
 K ^PARCAT
 K ^TMPMLPAR
 K ^TMPMLI
 K ^TMPPARI
 K ^TMPPAR
 K ^TMPWRD
 K @$$^W4MAIN("S111")
 K @$$^W4MAIN("TMPS111")
 ;
 N N S N="" F  S N=$O(@$$^W4GL("W4IBON")@(N)) Q:N=""  I N<($H-10) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("TMPBISA")@(N)) Q:N=""  I N<($H-10) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4RSTGPR")@(N)) Q:N=""  I N<($H-90) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4RSTGPW")@(N)) Q:N=""  I N<($H-90) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4EMP")@(N)) Q:N=""  I N<($H-10) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4TRCKPR")@(N)) Q:N=""  I N<($H-30) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4EMVNPR")@(N)) Q:N=""  I N<($H-30) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W3ASKDUP")@(N)) Q:N=""  I N<($H-10) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W3CLRGL")@(N)) Q:N=""  I N<($H-10) K ^(N)
 ;
 N N S N="" F  S N=$O(@$$^W4GL("L1FTP")@(N)) Q:N=""  I N<($H-10) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("LV")@(N)) Q:N=""  I N<($H-60) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4TVORD")@(N)) Q:N=""  I N<($H-90) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4TVPR")@(N)) Q:N=""  I N<($H-90) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("WQPROT")@(N)) Q:N=""  I N<($H-30) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4MSDSTA")@(N)) Q:N=""  I N<($H-50) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4MSLSTA")@(N)) Q:N=""  I N<($H-50) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W4RDRSTG")@(N)) Q:N=""  I N<($H-90) K ^(N)
 N N S N="" F  S N=$O(@$$^W4GL("W1SsID")@(N)) Q:N=""  D
 .N A,D S A=$G(^(N)),D=$P(A,"*",4) I D<($H-30) K ^(N)
 ;
 N N S N="" F  S N=$O(@$$^W4GL("WCGP")@(N)) Q:N=""  D
 .I N<($H-90) K ^(N)
 K @$$^W4MAIN("TMPS111")
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRM1")
 K @$$^W4MAIN("TEMP")
 K @$$^W4MAIN("TMP")
 ;
 Q
 ;
 ;
CP2ML ;
 I '$D(@$$^W4GL("MLDEP")) D
 .M @$$^W4GL("MLDEP")=@$$^W4GL("DEP")
 ;
 I '$D(@$$^W4GL("MLSUGP")) D
 .N N S N="" F  S N=$O(@$$^W4GL("PARSUG")@(N)) Q:N=""  D
 ..S @$$^W4GL("MLSUGP")@(N)=$G(@$$^W4GL("PARSUG")@(N))
 ..S $P(@$$^W4GL("MLSUGP")@(N,1),"\")=$P($G(@$$^W4GL("PARSUG")@(N,1)),"\")
 Q
 ;
CLRFLAGZ ;
 K @$$^W4GL("FLAG")@("Z")
 Q
 ;
CLRVIP ;
 N GLDEV S GLDEV=$$^W4DEV
 N N,IP S N="" F  S N=$O(@GLDEV@(N)) Q:N=""  D
 .S IP=$G(^(N))
 .I $G(^(N,"H"))="VIP" D
 ..K @$$^W4PLUK@(N)
 ..K @GLDEV@(N)
 ..I IP K @$$^W4DEVI@(IP)
 Q
 ;
 ;
CLRTRCKR ; 
 ZSY "find "_$ZDIR_" -name 'mumps.mjl_2*' -mtime +12 -exec rm {} \; 2> /dev/null"
 ;
 ZSY "find /tmp -maxdepth 1 -name 'tmp*' -type f -mtime +0 -delete"
 ZSY "find /tmp -maxdepth 1 -name 'fl*' -type f -mtime +0 -delete"
 ZSY "find /tmp -maxdepth 1 -name 'rstg*' -type f -mtime +60 -delete"
 ZSY "find /tmp -maxdepth 1 -name 'emv*' -type f -mtime +10 -delete"
 ZSY "find /tmp -maxdepth 1 -name 'tv*' -type f -mtime +1 -delete"
 ;
 ZSY "rm "_$ZDIR_"1/tmp/tmpfdb*"
 N CMD S CMD="find "_$ZDIR_"1/tmp -maxdepth 1 -mtime +0 -type f -name 'tmp*' -delete 2>/dev/null"
 ZSY CMD
 N CMD S CMD="find "_$$WEBL^W3MAIN_" -maxdepth 1 -mtime +10 -type f -name 'OVTFK*' -delete 2>/dev/null"
 ZSY CMD
 N CMD S CMD="find "_$$WEBL^W3MAIN_"tmp -maxdepth 1 -mtime +1 -type f -name 'whatsapp*' -delete 2>/dev/null"
 ZSY CMD
 N CMD S CMD="find /tmp  -maxdepth 1 -mtime +10 -type f -name 'tran*' -delete 2>/dev/null 2>/dev/null"
 ZSY CMD
 N CMD S CMD="find /tmp  -maxdepth 1 -mtime +10 -type f -name 'cibn*' -delete 2>/dev/null"
 ZSY CMD
 N CMD S CMD="find /tmp -maxdepth 1 -mtime +1 -type f -name 'tv*' -delete 2>dev/null"
 ZSY CMD
 N CMD S CMD="find /tmp -maxdepth 1 -mtime +1 -type f -name 'tmp*' -delete 2>/dev/null"
 ZSY CMD
 N CMD S CMD="find /tmp -maxdepth 1 -mtime +10 -type f -name 'kc*' -delete 2>/dev/null"
 ZSY CMD
 ZSY "find /tmp -maxdepth 1 -name '*' -type f -mtime +10 -delete"
 ZSY "find "_$ZDIR_"1/tmp -maxdepth 1 -type f -mtime +10 -name '*' -delete"
 Q
 ;
 ;
SNDGAP(DT) ; 
 I DT["-" D  Q
 .N DT1,DT2
 .S DT1=$P(DT,"-")
 .S DT1=$$^%L1DC(DT1,3)
 .S DT2=$P(DT,"-",2)
 .S DT2=$$^%L1DC(DT2,3)
 .F DT=DT1:1:DT2 D SNDGAP1(DT)
 ;
 D SNDGAP1(DT)
 Q
 ; 
SNDGAP1(DT);
 N MSD00 S MSD00=$$GETP^%W1PRM("MSD")
 D PUT^%W1PRM("MSD00",MSD00)
 S DT=$$^%L1DC(DT,3)
 D GETMSD^W4GAPNET(DT)
 I $$PAPJ^W4PRM,$G(AMER) D ^W4GAP(JB,DT)
 D ^W4GAPNET(JB,DT),^W4SNDTIM(JB,DT),^W4SNDPRP(JB,DT)
 D ^W4SNDLK(JB,DT),^W4Z2NET(JB,DT),^W4ZRSTG(JB,DT)
 D ^W4SNDCLK(JB,DT)
 D ^W4SNDTFK(JB,DT)
 D ^W4SNDMZB(JB,DT)
 D ^W4SNDPOS(JB,DT)
 D ^W4SNDSL(JB,DT)
 D ^W4SNDZIC(JB,DT)
 I '$G(MSD00) S MSD00=$$GETP^%W1PRM("MSD00")
 D PUT^%W1PRM("MSD",MSD00)
 Q
 ;
PARMH(P1DZ);
 N GLPAR,GLPAR0,N S GLPAR=$$^W4GL("PAR"),GLPAR0=$$^W4GL("PARO")
 S N="" F  S N=$O(@GLPAR@(N)) Q:N=""  D
 .N A,MH S A=$G(^(N)),MH=$P(A,"**",2)
 .N MH0 S MH0=$P($G(@GLPAR0@(N)),"**",2) Q:MH0=""
 .I +MH'=+MH0 D
 ..S @$$GL^W4PARMH@(P1DZ,N)=MH_"\"_MH0
 K @GLPAR0 M @GLPAR0=@GLPAR
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZAG
W4ZAG(STAM) ; [ 23.05.25 08:02 ] [ 06.02.19 19:34 ] [ 25.12.18 09:01 ] 
 Q +$G(%ARG("ZAG"))
 ;
JBFROM(DV) ;
 I $G(DV)="" S DV=$$^W4MYDVN
 Q $G(^[$$^W3MAIN]devpi(DV))
 ;
 ;
INIT ;
 N (JB,%ARG,%REM)
 D:$G(%REM) PUT^%W1PRM("REM",%REM)
 S JBFROM=$$JBFROM I 'JBFROM D  Q:'JBFROM
 .I $G(%ARG("FROMDV")) D
 ..S JBFROM=$$JBFROM(%ARG("FROMDV"))
INIT1 ;
 K @$$^W3TMPORD@(JB)
 M @$$^W3TMPORD@(JB)=@$$^W3TMPORD@(JBFROM)
 Q
 ;
DIF(JBFROM) ;
 N (JB,JBFROM,%ARG,%REM)
 I '$G(JBFROM) Q ""
 N LASTPREV S LASTPREV=$O(@$$^W3TMPORD@(JB,99999),-1)
 K @$$^W3TMPORD@(JB)
 M @$$^W3TMPORD@(JB)=@$$^W3TMPORD@(JBFROM)
 N LAST S LAST=$O(@$$^W3TMPORD@(JB,99999),-1)
 Q +LAST_":"_+LASTPREV
 ;
TXT(SH) ;
 Q $G(@$$^W3TMPORD@(JB,SH))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZAG0
W4ZAG(STAM) ; [ 06.02.19 17:19 ] [ 25.12.18 09:01 ] [ 21.12.18 15:06 ] 
 Q +$G(%ARG("ZAG"))
 ;
PRMFROM ;
 S DEVFROM=$G(@$$^W4GL("W4ZAG")@($$^W4MYDVN)) Q:DEVFROM=""
 S JBFROM=$G(^[$$^W3MAIN]devpi(DEVFROM))
 Q
 ;
INIT ;
 N (JB,%ARG,%REM)
 D PRMFROM I 'DEVFROM!'JBFROM Q
INIT1 ;
 K @$$^W3TMPORD@(JB)
 M @$$^W3TMPORD@(JB)=@$$^W3TMPORD@(JBFROM)
 Q
 ;
DIF(STAM) ;
 N (JB,%ARG,%REM)
 D PRMFROM I 'DEVFROM!'JBFROM Q ""
 ;;S JBFROM=6569
 N LASTPREV S LASTPREV=$O(@$$^W3TMPORD@(JB,99999),-1)
 K @$$^W3TMPORD@(JB)
 M @$$^W3TMPORD@(JB)=@$$^W3TMPORD@(JBFROM)
 N LAST S LAST=$O(@$$^W3TMPORD@(JB,99999),-1)
 Q +LAST_":"_+LASTPREV
 ;
TXT(SH) ;
 Q $G(@$$^W3TMPORD@(JB,SH))
 
 
 
 
 
 
 
 
 
 
 

W4ZBIG
W4ZBIG ; [ 18.01.17 18:05 ] [ 16.01.17 03:26 ] [ 23.12.16 10:32 ] 
 N (JB,%ARG,%REM) ;
 D ^W4IN
 S %ARG("SGIRATJOM")=1
 ;;S %ARG("DOCH")="Z"
 S %ARG("MEDAT")=$ZD(P1DZ,"DD.MM.YY")
 S %ARG("ADDAT")=%ARG("MEDAT")
 ;
 I $G(%ARG("DOCH"))="Z" D
 .S %ARG("NZ")=$G(@$$^W4GL("Z"))+1
 .S DOCH="Z"
 ;
 D ^W4DMANYL
 ;
 I $G(%ARG("DOCH"))="Z" D
 .D ZACTIONS^W4SGYOM
 .D CLEARALL^W4KLFL
 .J CLEARJSP^W4JOB(JB)
 .I $G(@$$^W4PRM@("TIKITRAZ")) J TIKITRA^W4JOB(JB)
 .I '$D(@$$^W4GL("W4INPI")) D DIR^W4MLREST
 Q
 
 
 
 
 
 
 
 

W4ZERO
W4ZERO ; [ 14.11.09 12:11 ] [
  N NOKILL,I,GL,IND
  S NOKILL="%TYPCRT,%CVET,ADRES,BAR,BLACK,DARGA,DARGAi,DEP,DEV,DIASUG,DT,E1G,E1MSG,ISRVIS,JENR,KILLZ,KL,"
  S NOKILL=NOKILL_"KLLKHTZ,KLLKH,KOD,L1TIP,LEV,LEVKVZ,LKH,LKHi,LKHi1,LKK,"
  S NOKILL=NOKILL_"LOOP,MHT,MHTSF,MSPMOD,NAME,NAMEi,P1AREA,P1BARMAN,P1BLRD,P1CODH,P1CODHi,P1CODHM,P1CODTS,P1DOP,"
  S NOKILL=NOKILL_"P1EZ,P1EZI,P1EZA,P1EZAI,P1EZH,P1EZHK,P1EZT,P1EZK,P1EZKI,P1EZL,P1EZLI,P1EZP,P1EZPI,P1EZR,P1EZRI,"
  S NOKILL=NOKILL_"P1HLDR,P1HNH,P1HNHS,P1IR,P1HOD,P1HOD,P1KDM,P1KDMI,P1KEY,P1KUP,P1KVZSID,P1LKDM,P1LKWK,P1MDPS,P1MDPSi,P1MLZSH,P1MLZSHI,P1MSD,P1MSKS"
  S NOKILL=NOKILL_"P1MVC,P1PARTAW,P1PARMSL,P1SBIT,P1SBR,P1SIS,P1SL,P1SLi,P1SUGM,P1SUG,P1SUGi,P1PRM,P1SBIT,P1SET,P1SETA,P1SETAI,P1SETM,P1SETP,P1SETPI,P1TFRA,P1ULAM,"
  S NOKILL=NOKILL_"PARNL,PARSUG,PARSUGi,PAR,PARi,PARs,PARM,PARMS,PARCAT,PARLKH,PARSHA,PARSLK,PARTA,PATH,PL,PLUK,"
  S NOKILL=NOKILL_"PLZJ0,PRTBH,PRTNO,RANDOM,SCR,SCRP,SCRL,SHP,SHVA,SPK,SPKi,START,SUGL,SUGLi,SUGS,SUGSi,"
  S NOKILL=NOKILL_"TABLs,TEL,UCI,UCI0,UCIKL,VECT,VERSION,ZT,ZB,dev,devi,devi1,devi2,devi3,m,msg,rep,word"
  S NOKILL=NOKILL_",W4OPT,W4PAY,W4PAYS,W4ASK,W4REP,W4SP,W1REP,W1DICT,WO1VM"
  S NOKILL=NOKILL_",FILE,FILE1,P1HZMN"
  ;
  F I=1:1:$L(NOKILL,",") D
  .S GL=$P(NOKILL,",",I) Q:GL=""
  .S IND=$O(^SHP("%GSZERO",99999),-1)+1
  .S ^SHP("%GSZERO",IND)=GL

W4ZEX
W4ZEX(GL) ; [ 29.03.18 15:08 ] [ 
 N (JB,%ARG,%REM,GL)
 D TMPREP
 K @TMPREP
 S @TMPREP@("HD")=$TR($G(@$$^W4MAIN(GL)),":",",")
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN(GL)@("HD0",I))  D
 .S @TMPREP@("HD0",I)=$G(@$$^W4MAIN(GL)@("HD0",I))
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN(GL)@(I))  D
 .S A=$G(^(I))
 .S @TMPREP@(I)=$TR(A,"\",",")
 ;
 D ^W4SVEX(GL)
 Q
 ;
TMPREP ;
 D TMPREP^W4SVEX
 Q
 
 
 
 
 
 
 
 
 
 
 
 

W4ZHUT
W4ZHUT(SUG) ; [ 10.11.08 12:14 ] [
 I SUG=3!(SUG=51)!(SUG=53) Q 1
 Q 0

W4ZICHLK
W4ZICHLK(HZM) ; [ 29.09.26 16:34 ] [ 28.09.26 18:26 ] [ 27.09.26 13:52 ] 
 N (JB,%ARG,HZM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<span style=""font-size:"_$$^W3FSZ(16)_";color:"_$$^W4GETCLR("PAYFG","brown")_""">",!
   W $$^%W1DICT("REFUNDTABLE4ORDER",HZM)
  W "</span>",! 
  W "<br><br>",!
  ;
  ;
  W "<table id =""TblZic"" border=""1"" width=""80%"" cellpadding=0 cellspacing=0>",!
   W "<tr height="""_$$^W4KF(40)_"px"">",!
     W "<th>"
      W $$^%W1DICT("SUM")
     W "</th>"
     W "<th>"
      W $$^%W1DICT("KINDOFPAYMENT")
     W "</th>"
     W "<th>"
      W $$^%W1DICT("PREVREFUND")
     W "</th>"
     W "<th>"
      W $$^%W1DICT("ITRA2REFUND")
     W "</th>"
     W "<th>"
      W $$^%W1DICT("REFUND")
     W "</th>"
     W "<th>"
      W $$^%W1DICT("MESSAGEERROR")
     W "</th>"
   W "</tr>",!
   ;
   S VT="" F  S VT=$O(@$$^W4ORD@(HZM,"CB",VT)) Q:VT=""  D
   .I VT'="MZ",VT'="V",VT'="ASR" Q
   .S NOM="" F  S NOM=$O(@$$^W4ORD@(HZM,"CB",VT,NOM)) Q:NOM=""  D
   ..S AN=$G(^(NOM)) 
   ..N SUM,ZICPREV,VTNAME
   ..S (SUM,ZICPREV)=0,VTNAME=""
   ..S TRID=$$GET^W4GTVCH(HZM,NOM,VT,"TRID") Q:'TRID
   ..
   ..I VT="MZ" D
   ... S SUM=$P(AN,"*"),ZICPREV=$P(AN,"*",8),VTNAME="CASH"
   ..I VT="V" D
   ... S SUM=$P(AN,"*",7),ZICPREV=$P(AN,"*",34),VTNAME="CRCARD"
   ..
   ..Q:'SUM
   ..
   ..W "<tr>",!
   .. W "<td>" 
   ..  W $J(SUM,2,2)
   .. W "</td>" 
   ..
   .. W "<td>" 
   ..  W $$^%W1DICT(VTNAME)
   .. W "</td>" 
   ..
   .. W "<td>" 
   ..  W $J(ZICPREV,2,2)
   .. W "</td>" 
   ..
   .. W "<td id=""itra2zic_"_VT_"_"_NOM_""">" 
   ..  W $J(SUM-ZICPREV,2,2)
   .. W "</td>" 
   ..
   .. W "<td align=""center"">" 
   ..  W "<input type=""text"" size=""8"" id=""zic_"_VT_"_"_NOM_""" "
   ..   W " onFocus=""SetFocus(this)"" "
   ..   W " onChange=""ChkZic(this)"" "
   ..   ;;W " onClick=""this.select()"""
   ..  W "style=""font-size:"_$$^W3FSZ(14)_""">",!
   .. W "</td>" 
   ..
   .. W "<td align=""center"" >" 
   ..  W "<input type=""text"" size=""50"" id=""msger_"_VT_"_"_NOM_""" "
   ..  W " readonly=""readonly"" "
   ..  W " style=""background-color:lightgrey"" font-size:"_$$^W3FSZ(14)_""">",!
   .. W "</td>" 
   ..W "</tr>",!
   ;
  W "</table>",!
  ;
  W "<p>&nbsp;</p>",! 
  D ^W4SBMBCK
  ;
  W "<div id=""divbut1"" dir=""LTR"" style=""position:absolute;top:85%;height:60px;left:10%;width:80%"">"
   D ^W4NUMKB("",19)
  W "</div>",!
 W "</div>",!
 Q
 ;
 ;
SBM(PRM) ;
 N (JB,%ARG,PRM)
 S ORD=$$GETP^%W1PRM("HZM")
 I 'ORD Q "ORDERNOTDEFINRD"
 ;
 S SIBA1=$$GET^W4TMPANS("ZIC","CAUSEZIC")
 I SIBA1[":" S SIBA1=$P(SIBA1,":",3)
 S MNL=$$GET^W4TMPANS("ZIC","WHOSUBMIT")
 S PRM=$E(PRM,1,$L(PRM)-1)
 ;
 S ^AA("W4ZICHLK-SBM","PRM")=PRM ; ***
 S ^AA("W4ZICHLK-SBM","MNL")=MNL ; ***
 S ^AA("W4ZICHLK-SBM","SIBA1")=SIBA1 ; ***
 ;
 S STRES="",ERR=1
 ;
 F I=1:1:$L(PRM,"^") D
 .S A=$P(PRM,"^",I)
 .S IND=$P(A,"~")
 .S VL=$P(A,"~",2) I 'VL Q
 .S VT=$P(IND,"_",2) I VT="" Q
 .S NOM=$P(IND,"_",3) I 'NOM Q
 .S ST=$G(@$$^W4ORD@(ORD,"CB",VT,NOM))
 .S ER=1
 .
 .S ^AA("W4ZICHLK-SBM","VL"_I)=VL
 .S ^AA("W4ZICHLK-SBM","VT"_I)=VT
 .
 .I VT="MZ" D  Q
 ..S RES=$$^W4MZZIC(ORD,0,VL,SIBA1,MNL,NOM)
 ..S STRES=STRES_RES_"^"
 ..S ^AA("W4ZICHLK-SBM","MZ","RES")=RES ; ***
 ..I 'RES S ER=$P(RES,"~",3),ERR=0 Q
 ..S $P(@$$^W4ORD@(ORD,"CB",VT,NOM),"*",8)=$P($G(@$$^W4ORD@(ORD,"CB",VT,NOM)),"*",8)+VL
 ..D SETZIC(ORD)
 .
 .I VT="V" D  Q
 ..S TRID=$$GET^W4GTVCH(ORD,NOM,VT,"TRID")
 ..S RES=$$ZIC2SITE^W4PAYCA(ORD,"V",NOM,TRID,VL,SIBA1,MNL)
 ..S STRES=STRES_RES_"^"
 ..I 'RES S ER=$P(RES,"~",3),ERR=0 Q
 ..S $P(@$$^W4ORD@(ORD,"CB",VT,NOM),"*",34)=$P($G(@$$^W4ORD@(ORD,"CB",VT,NOM)),"*",34)+VL
 ..D SETZIC(ORD)
 ;
 S STRES=$E(STRES,1,$L(STRES)-1)
 Q ERR_"^"_STRES
 ;
 ;
SETZIC(ORD)
 N HD,STZIC,CDZIC,NMZIC
 S CDZIC=$G(@$$^W4PRM@("CDZIC"),3951)
 S NMZIC=$G(@$$^W4PRM@("NMZIC"),"LOCALREFUND")
 S HD=$$NMB^W4HZMST(ORD)_"~"_$$NAME^W4HZMST(ORD)
 K @$$^W4TMPORD
 S @$$^W4TMPORD=HD
 S STZIC="0~"_CDZIC_"~"_NMZIC_"~1~"_VL
 S $P(STZIC,"~",12)="@@"
 S @$$^W4TMPORD@(1)=STZIC
 ;
 S HZMZIC=$$^W4NEWHZ(JB,-1,1)
 ;
 I HZMZIC<0 S ERR=0,STRES="0~"_HZMZIC_"~ERROR "_HZMZIC Q
 S @$$^W4GL("W4ZIC")@(ORD,HZMZIC)=-VL
 S @$$^W4GL("W4ZICI")@(HZMZIC)=ORD
 ;
 I $J($$SUMZIC^W4PUTHZ(ORD),1,1)=$J($$TSHL^W4HZMST(ORD),1,1) D
 .S @$$^W4GL("P1DEL")@(ORD)=HZMZIC
 .S @$$^W4GL("P1DELI")@(HZMZIC)=ORD
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZICM
W4ZICM(ORD) ; [ 02.09.26 17:03 ] [ 29.07.26 13:01 ] [ 02.06.26 07:52 ] 
 N (JB,%ARG,ORD)
 D KILL^%W1PRM("BITZICRES")
 S DLM=$$DLM
  I $G(ORD)="" S ORD=$$GETP^%W1PRM("HZM")
  D W($$SPAN("BROWN",18)_$$^%W1DICT("ORDER")_" "_ORD_"</span>")
  D W($$NBSP^%L1FRM(5))
  I $$HZM^W4MSD(ORD) D W($$SPAN("BLACK",12)_$$^%W1DICT("SHULHAN")_" "_$$NMB^W4HZMST(ORD)_"</span>")
  I $$HZM^W4MSL(ORD) D W($$SPAN("BLACK",12)_$$^%W1DICT("CUSTOMER")_" "_$$NMB^W4HZMST(ORD)_"</span>")
 D W("<br><br>")
  ;
 S TOP=$$^W4KF(50),HG=$$^W4KF(80*6)
 ;
 D
 .D W("<div id=""divca"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:"_$$^W4KF(HG)_"px;left:0%;width:100%;overflow:auto"">")
 .D W("<table>")
 . D W("<tr>")
 .  D W("<td>"_$$^%W1DICT("WHOZICNMB")_"</td>")
 .  N ST S ST="<input type=""text"" id=""whozic"" size=5 value="""" "
 .  N WHO S WHO="whozic"
 .  S ST=ST_" onFocus=""this.select();DigitElTo('"_WHO_"')"" onBlur=""ShowName('"_WHO_"')"" />"
 .  S ST=ST_"<span id=""name"">"_$$NBSP^%L1FRM(20)_"</span>"
 .  D W("<td>"_ST_"</td>")
 .  D W("<td width=""10%"">&nbsp;</td>")
 .  D W("<td>"_$$^%W1DICT("CAUSEZIC")_"</td>")
 .  D W("<td> <input type=""text"" id=""siba"" size=60 value="""" onFocus=""ShowVirtKB(this,'','H','50')"" /></td>")
 . D W("</tr>") 
 .
 .D  ;I $$MZM^W4HZMST(ORD) D
 ..D W("<tr>")
 .. D W("<td>"_$$^%W1DICT("CASHPAYMENT")_"</td>")
 .. D W("<td id=""tsmzm"">"_$J($$MZM^W4HZMST(ORD),2,2)_"</td>")
 .. D W("<td width=""10%"">&nbsp;</td>")
 .. D W("<td>"_$$^%W1DICT("CASHZIC")_"</td>")
 .. S ST="<input type=""text"" id=""zicmzm"" size=6 value="""""
 .. S ST=ST_" onFocus=""this.select();DigitElTo('zicmzm')"" />"
 .. D W("<td>"_ST_"</td>")
 ..D W("</tr>") 
 ..
 ..D W("<tr>")
 .. D W("<td>"_$$^%W1DICT("RESULTMZZIC")_"</td>")
 .. D W("<td id=""rezsmzm""></td>")
 ..D W("</tr>") 
 .D W("</table>")
 .
 .D W("<table id=""tblca"" width=""100%"" >")
 .D W("<tr>")
 .D W(" <th>"_$$^%W1DICT("NORD")_"</th>")
 .D W(" <th>"_$$^%W1DICT("CREDITCARDNUMBER")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TR.ID")_"</th>")
 .D W(" <th>"_$$^%W1DICT("SUM")_"</th>")
 .D W(" <th>"_$$^%W1DICT("TIP")_"</th>")
 .D W(" <th>"_$$^%W1DICT("DEBET")_"</th>")
 .D W(" <th>"_$$^%W1DICT("ZICUYTIP")_"</th>")
 .D W(" <th >"_$$^%W1DICT("SUCCESS")_"</th>")
 .D W(" <th width=""20%"">"_$$^%W1DICT("ZICUYRESULT")_"</th>")
 .D W("</tr>")
 .
 .S PAY=0,STIP=0
 .S I=0
 .S N="" F  S N=$O(@$$^W4ORD@(ORD,"CB","V",N)) Q:N=""  I N D
 ..S A=$G(^(N))
 ..S NCA=$P(A,"*",2)
 ..S TRID=$P(A,"*",31) Q:'$L(TRID)
 ..S SUM=$P(A,"*",7)
 ..S TIP=$P(A,"*",27)
 ..S I=I+1
 ..D W("<tr align=""center"">")
 .. D W("<td id=""nom"_I_""" style=""background-color:light-grey"">"_N_"</td>")
 .. D W("<td>"_$$H2U^%L1FRM(NCA)_"</td>")
 .. D W("<td id=""trid"_I_""">"_TRID_"</td>")
 .. D W("<td id=""cats"_I_""">"_$J(SUM,2,2)_"</td>")
 .. D W("<td id=""tipts"_I_""">"_$J(TIP,2,2)_"</td>")
 .. D W("<td><input type=""text"" id=""zicsum"_I_""" onFocus=""this.select();DigitElTo('zicsum"_I_"')"" size="""_$$SZ(7)_""" value=""""></td>")
 .. D W("<td><input type=""text"" id=""zictip"_I_""" onFocus=""this.select();DigitElTo('zictip"_I_"')"" size="""_$$SZ(7)_""" value=""""></td>")
 .. D W("<td><input type=""text"" id=""zicres"_I_""" size="""_$$SZ(4)_""" value="""" "_$$READONLY(1)_"></td>")
 .. D W("<td id=""resmsg"_I_""" style=""font-weight:bold"">&nbsp;</td>")
 ..D W("</tr>")
 .D W("</table>")
 .D W("</div>")
 ;
 S TOP=TOP+HG ;;+$$^W4KF(50) ; ***
 D W("<div id=""divbut1"" dir=""LTR"" style=""position:absolute;top:"_TOP_"px;height:60px;left:10%;width:80%"">")
 D ^W4NUMKB("",19)
 D W("</div>")
 ;
 S TOP=TOP+$$^W4KF(100)
 D W("<div id=""divbut2"" dir="""_$$^%W1DIR_""" style=""position:absolute;top:"_TOP_"px;height:50px;left:35%;width:30%"">")
 D ^W4SBMBCK
 D W("</div>")
 ;
 Q
 ;
 ;
W(TXT)
 W TXT
 Q
 ;
CA(STAM) ;
 I CODTS=3 Q 1
 Q 0
 ;
 ;
SPAN(COLOR,FSZ) ;
 I $G(FSZ),$$1024^W4WDSCR S FSZ=FSZ-2
 I $G(COLOR)="" S COLOR="green"
 I $G(FSZ)="" S FSZ=14
 Q "<span style=""color:"_COLOR_";font-size:"_$$^W3FSZ(FSZ)_""">"
 ;
 ;
DLM(STAM) ;
 Q ";"
 ;
 ;
READONLY(CENTER) ;
 N ST S ST=$$NOVV ; " readonly=""readonly"" "
 S ST=ST_"style=""background-color:#eaeaea;color:#5a5a5a"
 I $G(CENTER) S ST=ST_";text-align:center"
 S ST=ST_""" "
 Q ST
 ;
SZ(SZ) ;
 I $$1024^W4WDSCR Q (SZ-1)
 Q SZ
 ;
RKV(A,NM) ; 
 N OU S OU=$P(A,""""_NM_""":",2) 
 S OU=$P(OU,",") 
 S:$E(OU)="""" OU=$E(OU,2,$L(OU)-1)
 Q OU 
 ;
NOVV() ; 
 Q "disabled=""disabled"" " 
 ;
 ;
CAZIC(PRM) ; 
 N HZM,SUGT,NOM,TRID,ZICSUM,ZICTIP,DLM
 S DLM="~"
 S HZM=$P(PRM,DLM)
 S SUGT="V"
 S NOM=$P(PRM,DLM,2)
 S TRID=$P(PRM,DLM,3) 
 S ZICSUM=$P(PRM,DLM,4) 
 S ZICTIP=$P(PRM,DLM,5) 
 S MNL=$P(PRM,DLM,6) 
 S SIBA=$P(PRM,DLM,7)
 I $L(SIBA) S SIBA=$$INVH^%L1FRM(SIBA)
 ;
 N BIT S BIT=0
 S RES=$$ZIC2SITE^W4PAYCA(HZM,SUGT,NOM,TRID,ZICSUM,SIBA,MNL)
 Q RES
 ;
 ; 
MZZIC(PRM) ; 
 N HZM,SUGT,TRID,ZICSUM,ZICTIP,DLM
 S DLM="~"
 S HZM=$P(PRM,DLM)
 S SUGT="MZ"
 S ZICSUM=$P(PRM,DLM,2) 
 S MNL=$P(PRM,DLM,3) 
 S SIBA=$P(PRM,DLM,4)
 I $L(SIBA) S SIBA=$$INVH^%L1FRM(SIBA)
 ;
 Q $$^W4MZZIC(HZM,0,ZICSUM,SIBA,MNL)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZICPR
W4ZICPR(DAT,ORDPR,GLPR,NMPR) ; [ 16.09.26 09:16 ] [ 06.09.26 12:35 ] [ 10.08.26 16:29 ] 
 N (JB,%ARG,DAT,ORDPR,GLPR,NMPR)
 D ^%L1TS
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(GLPR)="" S GLPR="W4ZICPR"
 I $G(NMPR)="" S NMPR="ZICPROT"
 ;
 I $G(%ARG("SHOW"))=0 Q
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<div dir=""LTR"" style=""font-family:Sans-Serif"">",! 
 S DT=$$^%L1DC(DAT,3)
 W "<p dir="""_$$^%W1DIR_""" style=""text-align:center;font-size:"_$$^W3FSZ(16)_""" >",!
  ;;S ^AA("W4ZICPR","NMPR")=NMPR
  W $$^%W1DICT(NMPR,$ZD(DT,"DD.MM.YY"))
 W "</p>",! 
 S IND0=""
 S GL=$$^W4GL(GLPR)
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  I N D
 .S IND="" F  S IND=$O(@GL@(DT,N,IND)) Q:IND=""  D
 ..I $G(ORDPR),$$PRORD($G(^(IND)))'=ORDPR Q
 ..I IND'=IND0 S IND0=IND W "<br>",!
 ..I $D(@GL@(DT,N,IND))#2 W IND_" = "_$$RKV(^(IND))_"<br>",!
 ..S N1="" F  S N1=$O(@GL@(DT,N,IND,N1)) Q:N1=""  D
 ...I $D(^(N1))#2 W N1_" = "_$$RKV($G(^(N1)))_"<br>",!
 ...S N2="" F  S N2=$O(@GL@(DT,N,IND,N1,N2)) Q:N2=""  D
 ....I $D(^(N2))#2 W N1_" : "_N2_" = "_$$RKV($G(^(N2)))_"<br>",!
 W "</div>",!
 Q
 ;
 ;
RKV(VL) ; 
 N L,R  
 I VL["<>" S VL=$P(VL,"<>")
 S L=$P(VL,":") 
 S R=$P(VL,":",2,200) 
 D
 .;;I L["reason",R'[$C(215) S VL=L_":"_$$H2U^%L1FRM($$INVH^%L1FRM($TR(R,TSS,TS0))) Q
 .I R[$C(215) S VL=L_":"_$$H2U^%L1FRM($$U2D^%L1CNV(R)) Q
 .I R["\u" D
 ..N I,VL1 S VL1="" F I=1:1:$L(VL,"""") D
 ...N W S W=$P(VL,"""",I)
 ...I W["\u" S W=$$H2U^%L1FRM($$U2H^%L1CNV(W))
 ...S VL1=VL1_$S(W="":"",'(I#2):W,1:""""_W_"""")
 ..S VL=VL1
 ;
 Q VL  
 ;
 ;
PRORD(ST) ;
 Q $P(ST,"<>",2) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZICSND
W4ZICSND(HZM,VT,NOM,ORD,TRID,SUM,SIBA1,MNL,NAME) ; [ 27.09.26 14:07 ] [ 16.09.26 12:10 ] [ 02.09.26 17:27 ] 
 N (JB,%ARG,%REM,HZM,VT,NOM,ORD,TRID,SUM,SIBA1,MNL,NAME)
 D PROT("HZM",HZM)
 ;
 S FL="/tmp/tmpzic"_+$H_"-"_$$^W4MYDVN_"-"_HZM_"-"_VT_NOM
 C FL:(DELETE)
 O FL:(REWIND:WRITE:NEWVERSION)
 U FL 
  W "{",!
   W """order_pos_id"":"""_ORD_""",",!
   W """payment_id"":"""_TRID_""",",!
   W """amount"":"_$J(SUM,2,2)_",",!
   W """reason"":"""_$$HB(SIBA1)_""",",!
   W """user"":"""_$$HB(NAME)_"""",!
  W "}",!
 C FL  
 ;
 D PROT("FL",FL)
 ;
 N Type S Type="application/json"
 N Timeout S Timeout=45
 N Token S Token=$G(@$$^W4PRM@("TRID","TOKEN"))
 ;
 N URL S URL=""
 I $$PAPJ^W4PRM D
 .S URL="https://www.papajohns.co.il/data_api/refunds/add_new" 
 ;
 I $G(URL)="" Q "0~NOTURL~NOTURL" 
 ;
 N RESP S RESP=""
 N W1CURL S W1CURL("DOP")="-A ""DimaRefundsApp/1.0"" "
 N RES S RES=$$^W1CURL(URL,FL,.RESP,Timeout,Type,Token)
 ;
 D PROT("RES",RES)
 ;
 D PROT("RESP",.RESP)
 ; 
 I RES'=0,RES'=200 Q "0~"_RES_"~! ERROR "_RES
 ;
 N OK,ER S OK=0,(ER,ER1,REFID)=""
 N END S END=0
 ;
 N J F J=1:1:$L(RESP,$C(9)) D  Q:END
 .N ST S ST=$P(RESP,$C(9),J) Q:ST=""
 .I ST["""success""",ST["true" S OK=1
 .I ST["""success""",ST["false" S OK=0
 .; 
 .I OK=0 D  S END=1 Q
 ..I ST["""reason""" S ER=$$RKV(ST,"reason")
 ..I ST["""reasonText""" S ER1=$$RKV(ST,"reasonText","U")
 .
 .I OK=1 D
 ..I ST["""refundId""" S REFID=$$RKV(ST,"refundId")
 ..I 'REFID S ER="NOREFID",ER1="REFUND ID NOT RECEIVED" S END=1,OK=0 Q
 ..S URLSTA="" ; ***
 ..I $$PAPJ^W4PRM D
 ...S URLSTA="https://www.papajohns.co.il/data_api/refunds/status" 
 ..H 2
 ..N FLSTA S FLSTA=FL_".sta" 
 ..C FLSTA:(DELETE)
 ..O FLSTA:(REWIND:WRITE:NEWVERSION)
 ..
 ..U FLSTA 
 ..W "{",!
 ..   W """refund_id"":"""_REFID_"""",!
 ..W "}",!
 ..C FLSTA
 ..
 ..D PROT("FLSTA",FLSTA)
 ..S SHSTA=0,ER="",ER1=""
CYCSTA ..K RESP
 ..S RESTA=$$^W1CURL(URLSTA,FLSTA,.RESP,Timeout,Type,Token)
 ..D PROT("CMD")
 ..D PROT("RESSTA",RESTA)
 ..D PROT("RESPSTA",.RESP)
 ..;
 ..S SHSTA=SHSTA+1
 ..
 ..I RESTA'=0,RES'=200 S ER=RESTA,ER1="STATUS HTTP ERROR "_RESTA S END=1 Q
 ..
 ..N J F J=1:1:$L(RESP,$C(9)) D
 ...N ST S ST=$P(RESP,$C(9),J) Q:ST=""
 ...I ST["status",ST["success" S OK=1,END=1 Q
 ...I ST["status",ST["failed" S OK=0,ER="",ER1="INTERNET REFUND FAILED",END=1 Q
 ...I ST["status",ST["pending",SHSTA<3 H 2 G CYCSTA
 ;
 N DZ S DZ=$$^W4DZ
 ;
 N NCA I $G(VT)="V" S NCA=$$GET^W4GTVCH(HZM,NOM,"V","NCA")
 ;
 I $G(ER1)'="" S ER1="! "_ER1_" : ERROR INTERNET REFUND "
 ;         1       2         3         4       5      6        7         8       9        10       11
 N ST S ST=OK_"\"_SUM_"\"_$G(NCA)_"\"_TRID_"\"_ER_"\"_ER1_"\"_REFID_"\"_MNL_"\"_NAME_"\"_SIBA1_"\"_$H
 ;
 S $P(ST,"\",12)=DZ
 S @$$^W4GL("W4ZICRES")@(DZ,HZM,VT,NOM)=ST
 S @$$^W4GL("W4ZICRESI")@(HZM,VT,NOM)=ST
 ;
 Q OK_"~"_ER_"~!"_ER1_"~"_REFID_"~~"_+SUM
 ;
 ;
HB(TX) ;
 I $G(TX)="" Q ""
 Q $$D2U^%L1CNV(TX) ; -- 21/7/26
 ;
RKV(ST,TX,HB) ;
 N VL S VL=$P(ST,""""_TX_""":",2) 
 S VL=$P(VL,",") 
 S VL=$P(VL,"]") 
 S VL=$P(VL,"}") 
 I $E(VL)="""" S VL=$E(VL,2,$L(VL)-1) 
 I $G(HB)="U" S VL=$$U2H^%L1CNV(VL)
 Q VL 
 ;
 ;
PROT(IND,VL) ; 
 N ZICPR S ZICPR=$$^W4GL("W4ZICPR")
 N A,DT,SH
 S DT=+$H
 ;
 I IND="HZM" D  Q
 .S SH=$O(@ZICPR@(DT,999999),-1)+1
 .S @ZICPR@(DT,SH,IND)="<b>"_VL_"</b><>"_HZM
 ;
 I $E(IND,1,2)="FL" D  Q
 .O VL:(REWIND:READONLY)  
 .F  U VL R A Q:$ZEOF  D
 ..S SH=$O(@ZICPR@(DT,999999),-1)+1
 ..S @ZICPR@(DT,SH,IND)=A_"<>"_HZM 
 .C VL
 ; 
 I $E(IND,1,4)="RESP" D  Q
 .I $D(VL)#2 D
 ..S SH=$O(@ZICPR@(DT,999999),-1)+1
 ..S @ZICPR@(DT,SH,IND)=VL_"<>"_HZM
 .N N S N="" F  S N=$O(VL(N)) Q:N=""  D
 ..S SH=$O(@ZICPR@(DT,999999),-1)+1
 ..S @ZICPR@(DT,SH,IND)=$G(VL(N))_"<>"_HZM
 ;
 I IND="CMD" D  Q
 .N OK S OK=0
 .N N S N="" F  S N=$O(@$$^W4GL("W1CURL")@(DT,N),-1) Q:N=""  D  Q:OK
 ..I $D(@$$^W4GL("W1CURL")@(DT,N,"CMD"))#2 D  S OK=1
 ...S SH=$O(@ZICPR@(DT,999999),-1)+1
 ...S @ZICPR@(DT,SH,IND)=@$$^W4GL("W1CURL")@(DT,N,"CMD")_"<>"_HZM
 ...
 ...I $D(@$$^W4GL("W1CURL")@(DT,N+1,"ER"))#2 D
 ....S SH=$O(@ZICPR@(DT,999999),-1)+1
 ....S @ZICPR@(DT,SH,"ER")=@$$^W4GL("W1CURL")@(DT,N+1,"ER")_"<>"_HZM 
 ;
 S SH=$O(@ZICPR@(DT,999999),-1)+1
 S @ZICPR@(DT,SH,IND)=VL_"<>"_HZM
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZMNNSF
W4ZMNNSF ; [ 06.12.17 15:24 ] [ 
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  W "<table>"
   W "<tr>",!
    W "<td>"
      W $$^%W1DICT("ZMNNSFTAW")_" "
      W "<input id=""zmnnsftaw"" value="""_$$ZMNTAW_""" size=""3"" >"
    W "</td>"
    ;
    W "<td>"
      W $$^%W1DICT("ZMNNSFSHB")_" "
      W "<input id=""zmnnsfshb"" value="""_$$ZMNSHB_""" size=""3"" >"
    W "</td>"
    ;
    W "<td>"
      W $$^%W1DICT("ZMNNSFRGL")_" "
      W $$^%W1DICT("MESHAA")_" "_$$SHAA("MESHAA")
      W $$^%W1DICT("ADSHAA")_" "_$$SHAA("ADSHAA")
      W " " 
      W "<input id=""zmnnsfrgl"" value="""_$$ZMNRGL_""" size=""3"" >"
    W "</td>"
    ;
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
ZMNTAW(STAM) ;
 Q $G(@$$^W4PRM@("TAWTIME"))
 ;
ZMNSHB(STAM) ;
 Q $G(@$$^W4PRM@("ZMNSHB"))
 ;
ZMNRGL(STAM) ;
 Q $G(@$$^W4PRM@("ZMNRGL"))
 ;
 

W4ZMRK
W4ZMRK(DAT1,DAT2) ; [ 14.04.26 02:43 ] [ 17.12.25 14:43 ] [ 16.09.25 13:45 ] 
 N (JB,%ARG,%REM,DAT1,DAT2)
 D ^W4IN Q:$G(%ARG("SHOW"))=0
 N $ZT S $ZT="S $ZGBLDIR=$$^W3MAIN ZG "_$ZL_":SVER^%L1X"
 S MSD=$$GETP^%W1PRM("MSD")
 I 'MSD S MSD=1000
 S UCI=$$^W4GFUCI Q:UCI=""
 S $ZGBLDIR=UCI
 ;
 S %ARG("NORKZ")=1
 D ^W4GFILTR
 ;
 D MMRKZ^W4MRKG($G(%ARG("MRKZ")))
 ;
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 D PROT(DAT1,DAT2)
 W "<br>",!
 S SH=0,SHD=0,PRKBL=0
 D ^%L1TS
 ;
 S V("F")="onefn",V("G")="d`gnd",V("H")="dtwd",V("T")=$$TIPPS
 N AA,JJ S AA="IJKLMNOPQ"
 F JJ=1:1:$L(AA) D
 .N LET S LET=$E(AA,JJ) Q:LET=""
 .S V(LET)=$$U^W4VT(LET)
 S V("V")="`""k k""dq"
 S V("Z")="yelz",V("A")="oeict",V("MAM")="n""rn"
 ;
ZD D KILLS
 ;
 S GLOB=$$GLREP_"(DT)"
 ; --------------------- ^Z1 --> Z() ( LOCAL ARRAY FOR DAY'S Z )
 ;
 ;
 F DT=DT1:1:DT2 I $$IFDAY(DT) D  I DT2>DT1,IM>2 D S2D
 .K SD
 .S DAT=$ZD(DT,"YYMMDD")
 .S MRK=1000 F IM=1:1 S MRK=$O(@GLOB@(MRK)) Q:MRK=""  D
 ..I '$D(MMRKZ(MRK)) Q
 ..S N1="" F  S N1=$O(@GLOB@(MRK,N1)) Q:N1=""  K Z D  ; -- N1 - NP OF ^Z1
 ...S N2="" F  S N2=$O(@GLOB@(MRK,N1,N2)) Q:N2=""  D  ; -- N2 - SUG TS
 ....I N2'="MTB" S Z(N2)=$G(^(N2,1))
 ....I N2="MTB" D
 .....S N3="" F  S N3=$O(@GLOB@(MRK,N1,N2,N3)) Q:N3=""  S Z("MTB",N3)=$G(^(N3))
 ...;
 ...S Z("V")=0 F J=1:1:9 D
 ....I J=$$GFC^W4VT,$$PAPJ^W4PRM Q
 ....S Z("V")=Z("V")+$G(@("Z(""V"_J_""")"))
 ...
 ...S Z("A")=$G(Z("F"))+$G(Z("G"))+$G(Z("V"))
 ...
 ...I '$$^W4TIPPD(DT) D
 ....S Z("A")=Z("A")-$G(Z("T"))
 ...I $$TIPNO^W4TIPPD(DT) S Z("F")=$G(Z("F"))-$G(Z("T"))
 ...
 ...S N2="" F  S N2=$O(Z(N2)) Q:N2=""  D
 ....I N2'="MTB" S Z(N2)=$S(Z(N2):$J(Z(N2),2,2),1:"")
 ...N LINKZ S LINKZ=DT_";"_N1
 ...D S2 ; --> ^S222,^S333,^S444,SZ()
 ;
 ;
 S N2="" F  S N2=$O(SZ(N2)) Q:N2=""  D
 .S SZ(N2)=$J($G(SZ(N2)),2,2)
 S N2="" F  S N2=$O(SD(N2)) Q:N2=""  D
 .S SD(N2)=$J($G(SD(N2)),2,2)
 ;
 D REPORT
 ;
 D ^W4ZMRKEX("Z2WEB",DAT1,DAT2)
 ;
 D KILLS
 S ZGBLDIR=$$^W3MAIN
 Q
 ;
 ;
S2D ;
 ;------------------------ DATE TOTAL ----------------------
 N N,N2,ST,I,S2
 S SH=SH+1
 I '$$SHOWTIP S SD("T")=""
 S S2=($G(SD("H"))+$G(SD("A")))_"\"_$G(SD("H"))_"\"_$G(SD("A"))_"\"_$S($G(SD("V")):$J($G(SD("V")),2,2),1:"")_"\"
 S S2=S2_$G(SD("G"))_"\"_$G(SD("T"))_"\"
 S S2=S2_$G(SD("F"))
 S S2=S2_"\"_MRK_"\"_$$TRH(DAT)
 ;
 S @$$^W4MAIN("S222")@(SH)="!"_S2
 ;
 D
 . I '$G(SD("VD")),'$G(SD("BD")),'$G(SD("GD")),'$G(SD("FD")) Q
 . S PRKBL=1
 . N K F K="VD","BD","GD","FD" D
 . .S SD(K)=$G(SD(K)) I SD(K) S SD(K)=$J(SD(K),2,2)
 . S SHD=SHD+1
 . S SD("AD")=SD("VD")+SD("BD")+SD("GD")+SD("FD")
 .
 . S S5=SD("AD")_"\"
 . S S5=S5_SD("VD")_"\"_SD("BD")_"\"_SD("GD")_"\"
 . S S5=S5_SD("FD")_"\"_MRK_"\"_$$TRH(DAT)
 . S @$$^W4MAIN("S555")@(SHD)="!"_S5
 ;
 ;----------------- CREDIT CARDS ---------------------
 S ST=$S($G(SD("V")):$J($G(SD("V")),2,2),1:"")_"\"
 F I=9:-1:1 D
 .I $$USNO^W4Z(I) Q
 .S ST=ST_$S($G(SD("V"_I)):$J($G(SD("V"_I)),2,2),1:"")_"\"
 S ST=ST_MRK_"\"_$$TRH(DAT)
 S @$$^W4MAIN("S333")@(SH)="!"_ST
 ;
 S ST=$S($G(SD("VD")):$J($G(SD("VD")),2,2),1:"")_"\"
 F I=9:-1:1 D
 .I $$USNO^W4Z(I) Q
 .S ST=ST_$S($G(SD("V"_I_"D")):$J($G(SD("V"_I_"D")),2,2),1:"")_"\"
 S ST=ST_MRK_"\"_$$TRH(DAT)
 S @$$^W4MAIN("S666")@(SH)="!"_ST
 ;
 S SD("AA")=$G(SD("V"))+$G(SD("VD"))+$G(SD("G"))+$G(SD("GD"))
 S SD("AA")=SD("AA")+$G(SD("F"))+$G(SD("FD"))
 ;
 S ST=$J($G(SD("AA")),2,2)_"\"_$J($G(SD("V"))+$G(SD("VD")),2,2)_"\"
 S ST=ST_$J($G(SD("G"))+$G(SD("GD")),2,2)_"\"
 S ST=ST_$J($G(SD("F"))+$G(SD("FD")),2,2)_"\"_MRK_"\"_$$TRH(DAT)
 ;
 S @$$^W4MAIN("S777")@(SH)="!"_ST
 ;
 S ST=$J($G(SD("V"))+$G(SD("VD")),2,2)_"\"
 F I=9:-1:1 D
 .I $$USNO^W4Z(I) Q
 .S ST=ST_$J($G(SD("V"_I))+$G(SD("V"_I_"D")),2,2)_"\"
 S ST=ST_MRK_"\"_$$TRH(DAT)
 S @$$^W4MAIN("S888")@(SH)="!"_ST
 ;
 ;---------- MATBEOT -----------
 S N="",ST="",SD("MTB")=""
 F  S N=$O(SD("MTB",N)) Q:N=""  D
 .S SD("MTB")=SD("MTB")+$P($G(SD("MTB",N)),"!",2)
 .N SHAAR S SHAAR=1
 .I SD("MTB",N) S SHAAR=$P(SD("MTB",N),"!",2)/SD("MTB",N)
 .S ST=ST_$J($P(SD("MTB",N),"!",2),8,2)_"="_$J(SHAAR,7,3)_"*"_$J(+SD("MTB",N),7,2)_"\"
 .
 .S $P(SD("MTB",N),"!")=$G(SD("MTB",N))+$G(SD("MTB",N))
 .S $P(SD("MTB",N),"!",2)=$P($G(SD("MTB",N)),"!",2)+$P($G(SD("MTB",N)),"!",2)
 .S SD("MTB")=$G(SD("MTB"))+$P($G(SD("MTB",N)),"!",2)
 ;
 S ST=ST_$J($G(SD("F"))-$G(SD("MTB")),2,2)
 S @$$^W4MAIN("S444")@(SH)="!"_$G(SD("F"))_" \"_ST_"\"_MRK_"\"_$$TRH(DAT)
 Q
 ;
 ;
REPORT ;
 ; ------------------------- CREATE REPORT ---------------
 ;--------- ----------  HEADER
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  D BASICREP
  D CAREP("S333")
  I PRKBL D KBLREP D CAREP("S666") D MGREP D CAREP("S888")
  I $G(@$$^W4PL@("MATB")) D MATB
 W "</div>",!
 Q
 ;
 ;
BASICREP ;
 N ST,STP,TIPK,I,N
 D DIVEXC("Z2WEB")
 D KOT("mi Z- fekix")
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 ;
 D KOTREP
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="B\B\B\\\\\B\BC"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S222")@(N)) Q:N=""  S ST=^(N) D
 .D ST2TD(ST,STP,$G(@$$^W4MAIN("S222")@(N,"LINKZ")))
 ;
 ;----------- TOTALS
 D STTOT
 ;
 D ST2TOT(ST)
 ;
 W "</table>",!
 Q
 ;
 ;
CAREP(GL) ;
 I $D(@$$^W4MAIN(GL))<10 Q
 N TXT,ST,STP,I,N
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TXT=" i`xy` iqihxk hexit "
 I GL="S666" S TXT="(zelaw)"_TXT
 I GL="S888" S TXT="(dxibn)"_TXT
 ;
 D KOT(TXT)
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 D KOTCA
 D ST2TH(ST)
 ;
 S STP="B\\\\\\\B\BC"
 S N="" F  S N=$O(@$$^W4MAIN(GL)@(N)) Q:N=""  S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 D STTOTCA(GL)
 D ST2TOT(ST)
 ;
 W "</table>",!
 Q
 ;
 ;
KBLREP ;
 N TXT,ST,STP,I,N
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 D KOT("zelaw g""ec")
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 ;
 D KOTKBL
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="B\\\\\BC"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S555")@(N)) Q:N=""  S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 ;----------- TOTALS
 D STTOTKBL
 ;
 D ST2TOT(ST)
 W "</table>",!
 ;
 Q
 ;
 ;
MGREP ;
 N TXT,ST,STP,I,N
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 D KOT("dxibn g""ec")
 D KOT(DAT2_" jix`z cr "_DAT1_" jix`zn")
 W "<br><br>",!
 ;
 D OPTBL
 ;
 D KOTMG
 D ST2TH(ST)
 ;
 ;-----------  BODY
 S STP="\\\\BC"
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S777")@(N)) Q:N=""  S ST=$G(^(N)) D
 .D ST2TD(ST,STP)
 ;
 ;----------- TOTALS
 ;
 D STTOTMG
 D ST2TOT(ST)
 W "</table>",!
 ;
 Q
 ;
 ;
MATB ;
 N I,N,TXT,ST,MK,KAV
 ;
 W "<br>",!
 I DAT1'=DAT2 W "<p style=""page-break-before:always"">",!
 S TXT=" zerahn hexit " D KOT(TXT)
 W "<br>",!
 ;
 D OPTBL
 S N="",ST=":   k""dq  :",STP="B\"
 F  S N=$O(Z("MTB",N)) Q:N=""  D
 .S ST=ST_$J($P($G(@$$^W4GL("P1SUGM")@(N)),"\",2),8)_":"
 .S STP=STP_"\"
 S ST=ST_"   g""y   : fkxn :  jix`z  :"
 S STP=STP_"\B\BC"
 D ST2TH(ST)
 ;
 S N="" F  S N=$O(@$$^W4MAIN("S444")@(N)) Q:N=""  S ST=^(N) D
 .D ST2TD(ST,STP)
 ;
 N ST,I S ST=$J($G(SZ("F")),2,2)_" \"
 S N="" F  S N=$O(SZ("MTB",N)) Q:N=""  S ST=ST_$J($P($G(SZ("MTB",N)),"!",2),2,2)_$J("",9)_$J($G(SZ("MTB",N)),2,2)_"\"
 S ST=ST_$J($G(SZ("F"))-$G(SZ("MTB")),2,2)_"\"
 D ST2TOT(ST)
 W "</table>",!
 Q
 ;
 ;
OPTBL W "<table border=""1"" cellspacing=""0"" cellpadding=""3"" width=""80%"" >",!
 Q
 ;
 ;
S2 ;------ Z() --> ^S222
 ; ------- Z() --> SZ()
 ; ------- Z("V...") --> ^S333
 ; ------- Z("MTB",...") --> ^S444, SZ("MTB")
 ;------------------------------------------------------------
 ;------------------------ BASIC REPORT ----------------------
 N N,N2,ST,I,S2
 S SH=SH+1
 I '$$SHOWTIP S Z("T")=""
 S S2=($G(Z("H"))+$G(Z("A")))_"\"_$G(Z("H"))_"\"_$G(Z("A"))_"\"
 S S2=S2_$S($G(Z("V")):$J($G(Z("V")),2,2),1:"")_"\"
 S S2=S2_$G(Z("G"))_"\"_$G(Z("T"))_"\"
 S S2=S2_$G(Z("F"))
 S S2=S2_"\"_$$MRK(MRK)_"\"_$$TRH(DAT)
 ;
 S @$$^W4MAIN("S222")@(SH)=S2
 I $G(LINKZ) S @$$^W4MAIN("S222")@(SH,"LINKZ")=LINKZ
 ;
 D
 . I '$G(Z("VD")),'$G(Z("BD")),'$G(Z("GD")),'$G(Z("FD")) Q
 . S PRKBL=1
 . N K F K="VD","BD","GD","FD" D
 . .S Z(K)=$G(Z(K)) I Z(K) S Z(K)=$J(Z(K),2,2)
 . S SHD=SHD+1
 . S Z("AD")=Z("VD")+Z("BD")+Z("GD")+Z("FD")
 . S S5=Z("AD")_"\"
 . S S5=S5_Z("VD")_"\"_Z("BD")_"\"_Z("GD")_"\"
 . S S5=S5_Z("FD")_"\"_$$MRK(MRK)_"\"_$$TRH(DAT)
 . S @$$^W4MAIN("S555")@(SHD)=S5
 ;
 S N2="" F  S N2=$O(Z(N2)) Q:N2=""  D
 .S SZ(N2)=$G(SZ(N2))+$G(Z(N2))
 .S SD(N2)=$G(SD(N2))+$G(Z(N2))
 ;
 ;----------------- CREDIT CARDS ---------------------
 S ST=$S($G(Z("V")):$J($G(Z("V")),2,2),1:"")_"\"
 F I=9:-1:1 D
 .I $$USNO^W4Z(I) Q
 .S ST=ST_$S($G(Z("V"_I)):$J($G(Z("V"_I)),2,2),1:"")_"\"
 S ST=ST_$$MRK(MRK)_"\"_$$TRH(DAT)
 S @$$^W4MAIN("S333")@(SH)=ST
 ;
 S ST=$S($G(Z("VD")):$J($G(Z("VD")),2,2),1:"")_"\"
 F I=9:-1:1 D
 .I $$USNO^W4Z(I) Q
 .S ST=ST_$S($G(Z("V"_I_"D")):$J($G(Z("V"_I_"D")),2,2),1:"")_"\"
 S ST=ST_$$MRK(MRK)_"\"_$$TRH(DAT)
 S @$$^W4MAIN("S666")@(SH)=ST
 ;
 S Z("AA")=$G(Z("V"))+$G(Z("VD"))+$G(Z("G"))+$G(Z("GD"))
 S Z("AA")=Z("AA")+$G(Z("F"))+$G(Z("FD"))
 ;;I '$$TIPPD S Z("AA")=Z("AA")-$G(Z("T"))
 ;
 S ST=$J($G(Z("AA")),2,2)_"\"_$J($G(Z("V"))+$G(Z("VD")),2,2)_"\"
 S ST=ST_$J($G(Z("G"))+$G(Z("GD")),2,2)_"\"
 S ST=ST_$J($G(Z("F"))+$G(Z("FD")),2,2)_"\"_$$MRK(MRK)_"\"_$$TRH(DAT)
 ;
 S @$$^W4MAIN("S777")@(SH)=ST
 I $G(LINKZ) S @$$^W4MAIN("S777")@(SH,"LINKZ")=LINKZ
 ;
 S ST=$J($G(Z("V"))+$G(Z("VD")),2,2)_"\"
 F I=9:-1:1 D
 .I $$USNO^W4Z(I) Q
 .S ST=ST_$J($G(Z("V"_I))+$G(Z("V"_I_"D")),2,2)_"\"
 S ST=ST_$$MRK(MRK)_"\"_$$TRH(DAT)
 S @$$^W4MAIN("S888")@(SH)=ST
 ;
 ;---------- MATBEOT -----------
 S N="",ST="",Z("MTB")=""
 F  S N=$O(Z("MTB",N)) Q:N=""  D
 .S Z("MTB")=Z("MTB")+$P($G(Z("MTB",N)),"!",2)
 .N SHAAR S SHAAR=1
 .I Z("MTB",N) S SHAAR=$P(Z("MTB",N),"!",2)/Z("MTB",N)
 .S ST=ST_$J($P(Z("MTB",N),"!",2),8,2)_"="_$J(SHAAR,7,3)_"*"_$J(+Z("MTB",N),7,2)_"\"
 .S $P(SZ("MTB",N),"!")=$G(SZ("MTB",N))+$G(Z("MTB",N))
 .S $P(SZ("MTB",N),"!",2)=$P($G(SZ("MTB",N)),"!",2)+$P($G(Z("MTB",N)),"!",2)
 .S SZ("MTB")=$G(SZ("MTB"))+$P($G(Z("MTB",N)),"!",2)
 .
 .S $P(SD("MTB",N),"!")=$G(SD("MTB",N))+$G(Z("MTB",N))
 .S $P(SD("MTB",N),"!",2)=$P($G(SD("MTB",N)),"!",2)+$P($G(Z("MTB",N)),"!",2)
 .S SD("MTB")=$G(SD("MTB"))+$P($G(Z("MTB",N)),"!",2)
 ;
 S ST=ST_$J($G(Z("F"))-$G(Z("MTB")),2,2)
 S @$$^W4MAIN("S444")@(SH)=$G(Z("F"))_" \"_ST_"\"_$$MRK(MRK)_"\"_$$TRH(DAT)
 Q
 ;
 ;
ST2TH(ST) ;
 N GL
 W "<tr>" N FLD1
 F J=$L(ST,":")-1:-1:2 D
 .S FLD=$P(ST,":",J)
 .I FLD="" S FLD1="&nbsp;"
 .E  S FLD1=$$H2U^%L1FRM(FLD)
 .W "<th "
 .W ">"_FLD1_"</th>"
 W "</tr>",!
 Q
 ;
ST2TD(ST,STP,LINK) ;
 N J,OK,FLD,GL S OK=0
 N PRIT S PRIT=0 I $E(ST)="!" S PRIT=1,ST=$E(ST,2,255)
 ;
 F J=$L(ST,"\")-1:-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .I FLD S OK=1
 Q:'OK
 I 'PRIT,$G(%ARG("SIK")) Q
 ;
 W "<tr"
 I PRIT W " style=""background-color:#E5FFEE"" "
 W ">"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style="""
 .I $P(STP,"\",J)["B" W "font-weight:bold;"
 .I $P(STP,"\",J)["C" W "text-align:center;"
 .I $P(STP,"\",J)["Z" W "cursor:pointer;"
 .W """"
 .;;I $P(STP,"\",J)["Z",$G(LINK) D
 ..W " onClick=""ShowZ('"_LINK_"')"" "
 .W ">"_$$SHOW(FLD,$S(J<($L(ST,"\")-1):"N",1:""))_"</td>"
 W "</tr>",!
 Q
 ;
STTOT ;
 S ST=($G(SZ("H"))+$G(SZ("A")))_"\"_$G(SZ("H"))_"\"_$G(SZ("A"))_"\"
 S ST=ST_$G(SZ("V"))_"\"
 S ST=ST_$G(SZ("G"))_"\"_$G(SZ("T"))_"\"
 S ST=ST_$G(SZ("F"))_"\\"_$$^%W1DICT("TOTAL")
 Q
 ;
ST2TOT(ST,BGCOLOR) ;
 N GL
 W "<tr>"
 F J=$L(ST,"\"):-1:1 D
 .S FLD=$$SPA^%L1FRM($P(ST,"\",J))
 .W "<td "
 .W " style=""background-color:"_$S($L($G(BGCOLOR)):BGCOLOR,1:"yellow")_";font-weight:bold;border:solid 1px brown"
 .I J=$L(ST,"\") W ";text-align:center"
 .W """ "
 .W ">"_$$SHOW(FLD,$S(J<($L(ST,"\")-1):"N",1:""))_"</td>"
 W "</tr>",!
 Q
 ;
KOT(TXT) ;
 W "<span "
 W " style=""font-size:"_$$^W3FSZ(14)_""""
 W ">"
 I TXT'="",TXT'="&nbsp;" W $$H2U^%L1FRM(TXT)
 W "</span>",!
 Q
 ;
SHOW(FLD,PR) ;
 I $$SPA^%L1FRM(FLD)="" Q "&nbsp;"
 I PR="N",$G(FLD),$$NUM(FLD) S FLD=$J(FLD,2,2)
 I '$$NUM(FLD),FLD'="",FLD'="&nbsp;" Q $$H2U^%L1FRM(FLD)
 I FLD<0 Q "<span style=""color:red;text-align:right"" dir=""LTR"" >"_FLD_"</span>"
 Q FLD
 ;
NUM(FLD) ;
 I FLD?."-"1N.N.".".N Q 1
 Q 0
 ;
SHOWTIP(STAM) ;
 N DD S DD="" I $G(DAT) S DD=$$^%L1DC(DAT,4)
 I '$G(DAT),$G(DT1) S DD=DT1
 I '$$TIPNO^W4TIPPD(DD) Q 1
 Q 0
 ;
TIPPD(STAM)
 Q $$^W4TIPPD($$^%L1DC($G(DAT),1))
 ;
KILLS ;
 K @$$^W4MAIN("TMPS111") ; --- TO SHOW
 K @$$^W4MAIN("S222") ; --- NORMAL LINES
 K @$$^W4MAIN("S333") ; --- CREDIT CARD
 K @$$^W4MAIN("S444") ; --- MATBEOT
 K @$$^W4MAIN("S555") ; --- KABALOT
 K @$$^W4MAIN("S666") ; --- CR.CARDS KABALOT
 K @$$^W4MAIN("S777") ; --- MEGIRA
 K @$$^W4MAIN("S888") ; --- CR.CARDS MEGIRA
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("VRMEX")
 K @$$^W4MAIN("VRMPROT")
 Q
 ;
TIPPS(STAM) ;
 N TIPPS
 S TIPPS=$G(@$$^W4PRM@("TIPPS"))
 I $L(TIPPS) Q TIPPS
 Q "mitih"
 ;
PROT(MEDAT,ADDAT) ;
 S GLREP=$$GLREP
 D PROT^W4MRKG(MEDAT,ADDAT)
 Q
 ;
GLREP(STAM) ;
 Q "^Z2WEB"
 ;
DIVEXC(COD) ;
 D DIVEXC^W4MRKG(COD)
 Q
 ;
KOTREP ;
 S ST=": zexikn k""dq :  dtwd  :  oeict  :"
 S ST=ST_" i`xy` iqihxk  :   wiy  :"
 S TIPK=$$TIPPS
 S ST=ST_" "_TIPK_" :"
 S ST=ST_"  onefn  : fkxn : jix`z :"
 Q
 ;
KOTCA ;
 S ST=": `""k k""dq :"_$$ST^W4VT_": fkxn :  jix`z :"
 Q
 ;
KOTKBL ;
 S ST=":  k""dq  : i`xy` iqihxk  : zi`wpa dxard :   wiy   :  onefn  : fkxn :  jix`z :"
 Q
 ;
KOTMG ;
 S ST=":  k""dq   : i`xy` iqihxk  :   wiy  :"
 S ST=ST_" onefn  : fkxn :  jix`z :"
 Q
 ;
STTOTCA(GL)
 I GL="S333" D
 .N I S ST=$J($G(SZ("V")),2,2)_"\"
 .F I=9:-1:1 D
 ..I $$USNO^W4Z(I) Q
 ..S ST=ST_$J($G(SZ("V"_I)),2,2)_"\"
 .S ST=ST_"\"_$$^%W1DICT("TOTAL")
 ;
 I GL="S666" D
 .N I S ST=$J($G(SZ("VD")),2,2)_"\"
 .F I=9:-1:1 D
 ..I $$USNO^W4Z(I) Q
 ..S ST=ST_$J($G(SZ("V"_I_"D")),2,2)_"\"
 .S ST=ST_"\"_$$^%W1DICT("TOTAL")
 ;
 I GL="S888" D
 .N I S ST=$J($G(SZ("V"))+$G(SZ("VD")),2,2)_"\"
 .F I=9:-1:1 D
 ..I $$USNO^W4Z(I) Q
 ..S ST=ST_$J($G(SZ("V"_I))+$G(SZ("V"_I_"D")),2,2)_"\"
 .S ST=ST_"\"_$$^%W1DICT("TOTAL")
 Q
 ;
STTOTKBL ;
 S SZ("AD")=$G(SZ("VD"))+$G(SZ("BD"))+$G(SZ("GD"))+$G(SZ("FD"))
 ;
 S ST=$J(SZ("AD"),2,2)_"\"_$J($G(SZ("VD")),2,2)_"\"
 S ST=ST_$J($G(SZ("BD")),2,2)_"\"_$J($G(SZ("GD")),2,2)_"\"_$J($G(SZ("FD")),2,2)_"\\"
 S ST=ST_$$^%W1DICT("TOTAL")
 Q
 ;
STTOTMG ;
 S SZ("AA")=$G(SZ("V"))+$G(SZ("VD"))+$G(SZ("G"))+$G(SZ("GD"))+$G(SZ("F"))+$G(SZ("FD"))
 S ST=$J(SZ("AA"),2,2)_"\"_$J($G(SZ("V"))+$G(SZ("VD")),2,2)_"\"
 S ST=ST_$J($G(SZ("G"))+$G(SZ("GD")),2,2)_"\"
 S ST=ST_$J($G(SZ("F"))+$G(SZ("FD")),2,2)_"\\"
 S ST=ST_$$^%W1DICT("TOTAL")
 Q
 ;
MRK(MRK) ;
 I '$G(MRK) Q ""
 Q $G(^MRKZ(MRK))_" "_MRK
 ;
TRH(DAT) ;
 N TRH S TRH=$$^%L1DC(DAT,1)
 Q $TR(TRH,".","/")_" "_$$H2U^%L1FRM($$^%L1DC(TRH,9))
 ;
IFDAY(DT) ;
 Q $$IFDAY^W4MRKG(DT)
 
 
 
 
 
 
 

W4ZMRKEX
W4ZMRKEX(%REPN,DAT1,DAT2,FMT) ; [ 08.07.26 13:35 ] [ 03.07.13 06:11 ] [ 10.06.13 11:01 ] 
 N (JB,%ARG,%REM,%REPN,FMT,TOT,DAT1,DAT2,SZ)
 D ^%L1TS
 S FMT=+$G(FMT)
 N DIR S DIR=$$DIRL^%W1PCEX
 N FL S FL=DIR_%REPN_$$^W4MYDVN
 I $G(TOT) S FL=FL_"S"
 S FLCSV=FL_"."_$$FMT^%W1PCEX(FMT)
 N A,B,I,J,RZD
 S RZD="*"
 C FLCSV:(DELETE)
 zsy "rm -f "_FLCSV
 O FLCSV:(REWIND:NEWVERSION:WRITE)
 U FLCSV
 ;
 ; ---------------------- BASIC REPORT ---------------------------
 W ",",$$W("fekix"),",",$$W("mi - Z"),",",$$W("jix`zn"),",",DAT1,",",$$W("jix`z cr"),",",DAT2,!!
 ;
 D KOTREP^W4ZMRK
 D PCKOT(ST)
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN("S222")@(I))  D PCST(^(I))
 ;
 D STTOT^W4ZMRK
 D PCTOT(ST)
 ;
 ; -------------------------- PIDYON CREDIT  CARD REPORT ----------
 W !!,",",$$W("hexit")_","_$$W("iqihxk")_","_$$W("i`xy`"),",",$$W("jix`zn"),",",DAT1,",",$$W("jix`z cr"),",",DAT2,!!
 ;
 D KOTCA^W4ZMRK
 D PCKOT(ST)
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN("S333")@(I))  D PCST(^(I))
 ;
 D STTOTCA^W4ZMRK("S333")
 D PCTOT(ST)
 I '$D(@$$^W4MAIN("S555")) G END
 ;
 ; -------------------------- KABALOT ------------------------------
 W !!,",",$$W("g""ec")_","_$$W("zelaw")_",",$$W("jix`zn"),",",DAT1,",",$$W("jix`z cr"),",",DAT2,!!
 ;
 D KOTKBL^W4ZMRK
 D PCKOT(ST)
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN("S555")@(I))  D PCST(^(I))
 ;
 D STTOTKBL^W4ZMRK
 D PCTOT(ST)
 ;
 ;-------------------------- C-A KABALOT -----------------------------
 W !!,",",$$W("hexit")_","_$$W("iqihxk")_","_$$W("i`xy`")_","_$$W("zelawn")_","_$$W("jix`zn"),",",DAT1,",",$$W("jix`z cr"),",",DAT2,!!
 ;
 D KOTCA^W4ZMRK
 D PCKOT(ST)
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN("S666")@(I))  D PCST(^(I))
 ;
 D STTOTCA^W4ZMRK("S666")
 D PCTOT(ST)
 ;
 ; -------------------------- MEGIRA ------------------------------
 W !!,",",$$W("g""ec")_","_$$W("dxibn")_",",$$W("jix`zn"),",",DAT1,",",$$W("jix`z cr"),",",DAT2,!!
 ;
 D KOTMG^W4ZMRK
 D PCKOT(ST)
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN("S777")@(I))  D PCST(^(I))
 ;
 D STTOTMG^W4ZMRK
 D PCTOT(ST)
 ;
 ;-------------------------- C-A MEGIRA -----------------------------
 W !!,",",$$W("hexit")_","_$$W("iqihxk")_","_$$W("i`xy`")_","_$$W("dxibn")_","_$$W("jix`zn"),",",DAT1,",",$$W("jix`z cr"),",",DAT2,!!
 ;
 D KOTCA^W4ZMRK
 D PCKOT(ST)
 ;
 F I=1:1 Q:'$D(@$$^W4MAIN("S888")@(I))  D PCST(^(I))
 ;
 D STTOTCA^W4ZMRK("S888")
 D PCTOT(ST)
 ;
END ;
 C FLCSV
 Q
 ;
 ;
W(TXT) ;
 Q $$^%W1D2U(TXT)
 ;
PCKOT(ST) ;
 N J
 F J=$L(ST,":")-1:-1:2 D
 .W $$W($P(ST,":",J)) I J>2 W ","
 W !
 Q
 ;
PCST(A) ;
 N J,K,LAST S K=0
 S LAST=$L(A,"\")
 F J=LAST:-1:1 D
 .S K=K+1
 .;I K=1 W $P(A,"\",J),"," Q
 .I K<3 W $$^%W1D2U($$U2H^%L1FRM($P(A,"\",J))),"," Q
 .W $J($P(A,"\",J),2,2) W:K<LAST "," Q
 W !
 Q
 ;
PCTOT(ST) ;
 N J,K,LAST S K=0
 S LAST=$L(ST,"\")
 F J=$L(ST,"\"):-1:1 D
 .S K=K+1
 .I K=1 W $$^%W1D2U($$U2H^%L1FRM($P(ST,"\",J))),"," Q
 .I K=2 W $P(ST,"\",J),"," Q
 .W $J($P(ST,"\",J),2,2),"," Q
 W !
 Q
 

W4ZOOM
W4ZOOM(DAT1,DAT2) ; [ 17.04.14 08:27 ] [ 15.04.14 10:31 ] [ 07.12.11 19:11 ]
 N (JB,%ARG,%REM,DAT1,DAT2)
 S DT1=$$^%L1DC(DAT1,3)
 S DT2=$$^%L1DC(DAT2,3)
 ;
 I DT2<DT1 D MSG("RANGENOTVALID") Q
 S LKA=$G(@$$^W4PRM@("ZOOM","LKHAKR"))
 S HESHIN=$G(@$$^W4PRM@("ZOOM","HESHIN"))
 ;
 I LKA=""!(HESHIN="") D MSG("PARAMETERSNOTDEFINED") Q
 ;
 N DT,STOUT,HZ
 ;
 D TEMP
 K @TEMP
 ;
 S DLM=$C(9)
 S YYMMDD=$$^%L1DC(DT2,2)
 ;
 D INIT
 S FLZOOM="ZO"_YYMMDD
 S FL0=PATH_FLZOOM
 S FL=FL0_".txt"
 ;
 D PUT^%W3DEB("W4ZOOM","FL=FL")
 O FL:(REWIND:NEWVERSION:WRITE:SYSTEM="rwx":GROUP="rx":WORLD="rx")
 ;;O FL:(WRITE:REWIND:NEWVERSION)
 ;
 S SH=0,QNDOC=0,SUMDOC=0
 ;
 D HMK(DT1,DT2,FL)
 ;
 S @TEMP=QNDOC_"\"_SUMDOC
 ;
 C FL
 ;
 ;;ZSY "unix2dos "_FL
 ZSY "zip -j "_FL0_" "_FL
 ;
 D ^W4ZOOMRP(FLZOOM,DAT1,DAT2)
 ;
END ;;K @TEMP
 Q
 ;
 ;
HMK(DT1,DT2,FL) ;
 N (JB,%ARG,%REM,DT1,DT2,FL,DLM,SH,QNDOC,SUMDOC,TEMP)
 D ^%L1TS
 S SUMHMK=0,SHMK=0
 F DT=DT1:1:DT2 D
 .S MAM=$$MAMD^W4L(DT)
 .S HZ=""
 .F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 ..S HD=$G(@$$^W4ORD@(HZ)) Q:HD=""
 ..I '$$^W4CLOSE(HZ) Q
 ..S NCAB=$$NCAB^W4HZMST(HZ) I 'NCAB Q
 ..S STOUT="1"
 ..S LKHN=$$LKHN^W4HZMST(HZ)
 ..I LKHN="" S LKHN=$G(@$$^W4PRM@("ZOOM","LKHAKR"))
 ..S STOUT=STOUT_DLM_LKHN
 ..S STOUT=STOUT_DLM_$TR($P($$DATCB^W4HZMST(HZ),"  "),".","/")
 ..S STOUT=STOUT_DLM_901
 ..S STOUT=STOUT_DLM_$J($$MZM^W4HZMST(HZ),2,2)
 ..S STOUT=STOUT_DLM_NCAB
 ..S STOUT=STOUT_DLM_$$HBR($$HRAED^W4HZMST(HZ))
 ..S STOUT=STOUT_DLM ;--- TZ
 ..S PRMAM="001"
 ..I $$IR^W4HZMST(HZ)["zli`" S PRMAM="000"
 ..S STOUT=STOUT_DLM_PRMAM
 ..S STOUT=STOUT_DLM_$J($$SHUL^W4HZMST(HZ),2,2)
 ..D W(STOUT)
 ..
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","CH",N)) Q:N=""  D
 ...S A=$G(^(N))
 ...D ^W4GTVCH(A,"CH")
 ...S STOUT="2"
 ...S STOUT=STOUT_DLM_$TR(DATP,".","/")
 ...S STOUT=STOUT_DLM_$J(CHS,2,2)
 ...S STOUT=STOUT_DLM_NCHECK
 ...S STOUT=STOUT_DLM_$E(BSN,1,2)
 ...S STOUT=STOUT_DLM_$E(BSN,3,5)
 ...S STOUT=STOUT_DLM_HESH
 ...S STOUT=STOUT_DLM
 ...D W(STOUT)
 ..
 ..S N="" F  S N=$O(@$$^W4ORD@(HZ,"CB","V",N)) Q:N=""  D
 ...S A=$G(^(N))
 ...D ^W4GTVCH(A,"V")
 ...F PP=1:1:PN+1 D
 ....S STOUT="3"_DLM_"3"
 ....S STOUT=STOUT_DLM_$E(NCA,$L(NCA)-3,$L(NCA))
 ....S STOUT=STOUT_DLM_TKFCA
 ....N SUM S SUM=CAV/(PN+1)
 ....I PP=1,PN,P1 S SUM=P1*.01
 ....S STOUT=STOUT_DLM_$J(SUM,2,2)
 ....S STOUT=STOUT_DLM_(PN+1)
 ....D
 .....S DATPR=$P($$DATCB^W4HZMST(HZ),"  ")
 .....S MM=$P(DATPR,".",2)
 .....S GG=$P(DATPR,".",3)
 .....I MM=12 S MM1="01",GG1=$TR($J(GG+1,2)," ",0)
 .....E  S MM1=$TR($J(MM+1,2)," ",0),GG1=GG
 .....S DATPR="02-"_MM1_"-"_GG1
 ....S STOUT=STOUT_DLM_DATPR
 ....D W(STOUT)
 ..
 ..F I=1:1 Q:'$D(@$$^W4ORD@(HZ,I))  D
 ...S ST=$G(^(I))
 ...S STN=$G(^(I+1))
 ...S STOUT="4"
 ...S COD=$P(ST,"\")
 ...S CODN=$P(STN,"\")
 ...I $E(COD)="-",COD["%" Q
 ...S STOUT=STOUT_DLM_COD
 ...S KAM=$P(ST,"\",5)
 ...S SUM=$P(ST,"\",7)*100/(100+MAM)
 ...S STOUT=STOUT_DLM_$J(KAM,2,2)
 ...S MH=0 I KAM S MH=SUM/KAM
 ...S STOUT=STOUT_DLM_$J(MH,2,2)
 ...S HESH=$G(@$$^W4PRM@("ZOOM","HESHIN"))
 ...S STOUT=STOUT_DLM_HESH
 ...S AH=0
 ...I $E(CODN)="-",CODN["%" S AH=+$E(CODN,2,$L(CODN))
 ...S STOUT=STOUT_DLM_$J(AH,2,2)
 ...S NM=$P(ST,"\",3)
 ...S STOUT=STOUT_DLM_$$HBR(NM)
 ...D W(STOUT)
 ..
 ..S SHMK=SHMK+1,SUMHMK=SUMHMK+$$SHUL^W4HZMST(HZ)
 .
 S SH=SH+1,@TEMP@(SH)=$$H2U^%L1FRM("dlaw/qn zipeayg")_"\"_SHMK_"\"_SUMHMK
 S QNDOC=QNDOC+SHMK
 S SUMDOC=SUMDOC+SUMHMK
 Q
 ;
HBR(TXT) ;
 Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 ;
W(ST) ;
 U FL W ST,!
 Q
 ;
TEMP ;
 S TEMP=$$^W4MAIN("TEMP")
 Q
 ;
INIT ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 S DIR0=$$WEBL^W3MAIN_+MSD_"/"
 S DIRW=$$WEB^W3MAIN_+MSD_"/"
 S DIR="" ;"/zoom/"
 I $E(DIR,$L(DIR))'="/" S DIR=DIR_"/"
 S:$E(DIR)'="/" DIR="/"_DIR
 S PATH=$E(DIR0,1,$L(DIR0)-1)_DIR
 S PATHW=$E(DIRW,1,$L(DIRW)-1)_DIR
 Q
 ;
MSG(TXT) ;
 W "<script>",!
  W "MsgA('"_TXT_"')",!
  W "Back()",!
 W "</script>",!
 Q

W4ZOOMIN
W4ZOOMIN ; [ 17.04.14 08:14 ] [ 16.04.14 18:57 ] [ 15.04.14 10:44 ]
GET ;
 S HESHIN=$$FUNC^%UCASE($G(@$$^W4PRM@("ZOOM","HESHIN")))
 S LKHAKR=$$FUNC^%UCASE($G(@$$^W4PRM@("ZOOM","LKHAKR")))
 Q
 ;
PUT(PRM) ;
 D PUT^%W3DEB("W4ZOOMIN","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES="OK"
 ;
 ;;F I="HESHIN","LKHAKR" D  Q:RES'="OK"
 .I $G(@I)="" S RES=I
 ;
 I RES'="OK" Q "ER:"_RES
 ;
 S @$$^W4PRM@("ZOOM","LKHAKR")=LKHAKR
 S @$$^W4PRM@("ZOOM","HESHIN")=HESHIN
 ;
END Q RES
 ;

W4ZOOMRP
W4ZOOMRP(FLZOOM,DAT1,DAT2) ;  [ 17.04.14 08:27 ] [ 07.12.11 19:12 ] [
 N N
 ;
 W "<br /><br />",!
 W "<table dir="""_$$^%W1DIR_"""><tr style=""font-size:"_$$^W3FSZ(12)_""">"
 W " <td>&nbsp;"_$$^%W1DICT("MEDATE")_"&nbsp;</td><td "_$$STYLEBLACK_">"_DAT1_"</td>"
 W " <td>&nbsp;</td>",!
 W " <td>&nbsp;"_$$^%W1DICT("ADDATE")_"&nbsp;</td><td "_$$STYLEBLACK_">"_DAT2_"</td>"
 W "</tr></table>",!
 ;
 D INIT^W4ZOOM
 ;
 W "<br>",!
 W "<a href="""_PATHW_FLZOOM_".zip"" >Download File for Zoom ( "_FLZOOM_".zip )</a>",!
 W "<br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" cellspacing=""0"" border=""1"">",!
 W " <tr "_$$STYLEBLACK_" >",!
 W "  <th>&nbsp;"_$$^%W1DICT("KINDOFDOCUMENT")_"&nbsp;</th>",!
 W "  <th>&nbsp;"_$$^%W1DICT("TOTQN")_"&nbsp;</th>",!
 W "  <th>&nbsp;"_$$^%W1DICT("TOTSUM")_"&nbsp;</th>",!
 W " </tr>",!
 ;
 S TEMP=$$^W4MAIN("TEMP")
 S SKAM=$P($G(@TEMP),"\")
 S SSUM=$P($G(@TEMP),"\",2)
 ;
 F SH=1:1 Q:'$D(@TEMP@(SH))  D
 .S A=$G(^(SH))
 .W "<tr>"
 . F J=1:1:$L(A,"\") D
 .. W "<td>&nbsp;"_$P(A,"\",J)_"&nbsp;</td>"
 .W "</tr>",!
 ;
 W "<tr>"
 W "<td>&nbsp;</td>"
 W "<td "_$$STYLEBLACK_" >&nbsp;"_SKAM_"&nbsp;</td>"
 W "<td "_$$STYLEBLACK_" >&nbsp;"_$J(SSUM,2,2)_"&nbsp;</td>"
 W "</tr>",!
 W "</table>",!
 ;
 W "<div id=""divbut"">"
 W "<br /><br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>",!
   W "<td>&nbsp;</td>",!
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 Q
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold"""

W4ZOPND
W4ZOPND(MEDAT,ADDAT) ; [ 15.08.21 09:49 ] [ 12.08.21 11:14 ] [ 
 N (JB,%ARG,%REM,MEDAT,ADDAT)
 ; 
 I $G(%ARG("SHOW"))=0 Q
 ;
 S DT1=$$^%L1DC(MEDAT,3)
 S DT2=$$^%L1DC(ADDAT,3)
 ; 
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
  W "<span style=""font-size:"_$$^W3FSZ(14)_""" >",! 
    W $$H2U^%L1FRM($$^W3MSDG($$GET^%W1PRM("MSD")))
    W "<br><br>"
    W $$^%W1DICT("ZOPNDELREPORT")
  W "</span>",!
  ;
  W "<br>",!
  W $$^%W1DICT("FROMDATE")_" "_MEDAT_" "_$$^%W1DICT("UNTILDATE")_" "_ADDAT
  W "<br><br>",!
  ;
  W "<table width=""50%"" border=""1"" cellspacing=""0"" cellpadding=""5"">",!
   W "<tr>"
    W "<th>"_$$^%W1DICT("DATE")_"</th>" 
    W "<th>"_$$^%W1DICT("ZNUMBER")_"</th>" 
    W "<th>"_$$^%W1DICT("ORDERNUMBER")_"</th>"
    W "<th>"_$$^%W1DICT("SUMBEFOREDEL")_"</th>"
   W "</tr>",!
   ;
  S GL=$$^W4GL("W4ZOPND") S SSUM=0
  ;   
  S DT=DT1-1 F  S DT=$O(@GL@(DT)) Q:DT=""  Q:DT>DT2  D
  .S NZ="" F  S NZ=$O(@GL@(DT,NZ)) Q:NZ=""  D
  ..S HZ="" F  S HZ=$O(@GL@(DT,NZ,HZ)) Q:HZ=""  D
  ...S SUM=$G(^(HZ)) Q:'SUM
  ...S SSUM=SSUM+SUM
  ...W "<tr>" 
  ... W "<td>"_$ZD(DT,"DD.MM.YY")_"</td>"
  ... W "<td style=""cursor:pointer"" onClick=""ShowZ('"_DT_";"_NZ_"',this)""  >"_NZ_"</td>"
  ... W "<td style=""cursor:pointer"" onClick=""ShowOrd('"_HZ_"',this)""  >"_HZ_"</td>"
  ... W "<td>"_$J(SUM,2,2)_"</td>"
  ...W "</tr>",! 
   ;
   W "<tr style=""background-color:yellow;font-weight:bold"">",!
    W "<td>"_$$^%W1DICT("TOTAL")_"</td>"
    W "<td>&nbsp;</td>"
    W "<td>&nbsp;</td>"
    W "<td>"_$J(SSUM,2,2)_"</td>"
   W "</tr>",!
  W "</table>",!   
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZOS
W4ZOS(FNC,PRM1,PRM2) ;  [ 24.11.08 14:50 ] [
 N $ZT S $ZT="ZG "_$ZL_":SVER^%L1X"
 I $T(@FNC)'="" G @FNC
 Q -1
 ;
2 I '$$EXIST(PRM1) Q -1
 N $ZT S $ZT="ZG "_$ZL_":ER^W4ZOS"
 O PRM1 C PRM1:(DELETE)
 Q 1
 ;
3 I '$$EXIST(PRM1) Q -1
 N $ZT S $ZT="ZG "_$ZL_":ER^W4ZOS"
 I $$EXIST(PRM2) Q -2
 O PRM1 C PRM1:(RENAME=PRM2)
 Q 1
 ;
4 Q $ZV
 ;
6 ;
 N $ZT S $ZT="ZG "_$ZL_":ER^W4ZOS"
 ZSY "mkdir "_PRM1
 Q 1
 ;
7 N $ZT S $ZT="ZG "_$ZL_":ER^W4ZOS"
 ZSY "rmdir "_PRM1
 Q 1
 ;
8 N $ZT S $ZT="ZG "_$ZL_":ER^W4ZOS"
 ZSY "cd "_PRM1
 Q 1
 ;
10 I '$$EXIST(PRM1) Q -1
 Q 1
 ;
11 Q $ZDIR
 ;
12 N $ZT S $ZT="ZG "_$ZL_":ER^W4ZOS"
 I $ZSEARCH("*.@@@")
 N A S A=$ZSEARCH(PRM1)
 I A="" Q -1
 Q A
 ;
13 Q $ZSEARCH(PRM1)
 ;
ER Q -9
 ;
EXIST(FILE) ;
 N A,A1 S A=$ZSEARCH(FILE_"-")
 S A1=$ZSEARCH(FILE)
 Q $L(A1)>0
 ;
SIZE(FILE) ;
 I '$$EXIST(FILE) Q 0
 Q $P($$^%L1FLP(FILE),"^",2)

W4ZRSTG
W4ZRSTG(JB,D1,D2,UPD) ; [ 07.07.26 04:53 ] [ 13.11.23 10:18 ] [ 27.06.23 11:10 ] 
 N (JB,%ARG,%REM,D1,D2,UPD)
 I '$G(D2) S D2=D1
 S D1=$$^%L1DC(D1,3)
 S D2=$$^%L1DC(D2,3)
 ;
 S MSD=$G(@$$^W4PRM@("WEB","MSD"))
 I MSD="" S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q:MSD=""
 ;
 D VRM K @VRM
 ;
 D FRM^W4RSTGPR(D1,D2)
 ;
 S FDB=""
 F DT=D1:1:D2 D
 .S OK=0 F SUG="DEP","ITM","WRK" I $$RES(DT,SUG)'="OK" S OK=1
 .Q:'OK&'$G(UPD)
 .S FDB=FDB_DT
 .F SUG="DEP","ITM","WRK" D
 ..S FDB=FDB_"~"_SUG_":"_$$RES(DT,SUG)
 .S FDB=FDB_"^"
 ;
 S FDB=$E(FDB,1,$L(FDB)-1)
 ;
 I FDB="" G END
 ;
 D SND(MSD,DT,FDB) H 1 
 ;
END K @VRM
 Q  ;
 ;
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
RES(DT,SUG) ;
 Q $$RES^W4RSTGPR(DT,SUG)
 ;
 ;
SND(MSD,DT,FDB) ;
 N FILEIN S FILEIN="tmpz"_MSD_"_"_DT
 N URL S URL=$$OU^W3ASKURL_"w3ansrstg.jsp"
 S MSDR=$G(@$$^W4PRM@("WEB","MSDR"))
 I 'MSDR S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 ;
 S FDB=$$CLWEB^%L1FRM(FDB)
 ;
 N PRM S PRM="MSDR="_MSDR_"&MSD="_MSD_"&PSW="_$G(@$$^W4PRM@("WEB","PSW"))
 D SEND(FILEIN,URL,PRM,FDB)
 Q
 ;
 ;
SEND(FILEIN,URL,PRM,FDB)
 D SEND^W3ASKFD1(FILEIN,URL,PRM,FDB)
 Q 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZSPR
W4ZSPR(DAT) ; [ 02.10.23 09:12 ] [ 07.09.23 14:05 ] [ 30.08.23 19:09 ] 
 N (JB,%ARG,DAT) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 W "<table border=""1"" bordercolor=""lightgrey"" "
 W "style=""border-collapse:collapse"" cellpadding=""5"" cellspacing=""0"" >",!
 S DT=$$^%L1DC(DAT,3)
 S GL=$$^W4GL("W4ZSTRPR")
 S SH="" F  S SH=$O(@GL@(DT,SH)) Q:SH=""  D
 .S IND="" F  S IND=$O(@GL@(DT,SH,IND)) Q:IND=""  D
 ..N A S A=$G(^(IND))
 ..W "<tr><td>"_IND_"</td><td>"_A_"</td></tr>",!
 W "</table>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZSTPRM
W4ZSTPRM ; [ 01.10.23 09:48 ] [ 27.09.23 14:40 ] [ 09.04.21 17:06 ] 
GET ;
 Q
 ;
SAVE(PRM) ;
 D ^%W1GETPR(PRM)
 ;
 S @$$^W4PRM@("ZSTR")=ZSTR
 S @$$^W4PRM@("ZSTR","BRANCH")=BRANCH
 S @$$^W4PRM@("ZSTR","USER")=USER
 S @$$^W4PRM@("ZSTR","PSW")=PSW
 S @$$^W4PRM@("ZSTR","URLTOKEN")=URLTOKEN
 S @$$^W4PRM@("ZSTR","URLTOT")=URLTOT
 S @$$^W4PRM@("ZSTR","URLPAR")=URLPAR
 Q 1
 ;
END Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZSTR
W4ZSTR(JB,DT,NZ)  ; [ 05.10.23 14:22 ] [ 04.10.23 10:36 ] [ 03.10.23 19:28 ] 
 ;-------------------------------------------------------
 ; PARAMETERS :
 ; ^P1PRM("ZSTR")=1
 ; ^P1PRM("ZSTR","BRANCH")=BRANCH NUMBER
 ; ^P1PRM("ZSTR","KEY")=BRANCH KEY
 ;
 ;-------------------------------------------------------
 ;
 N (JB,%ARG,%REM,DT,NZ,RES)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S RES=""
 S DT=$$^%L1DC(DT,3)
 ;
 D GETTOKEN(DT)
 ;
 I RES<0 G END
 ;
 S DT=$$^%L1DC(DT,3)
 ;
 S Z1=$$^W4GL("Z1")
 ;
 D ZTOT(DT,NZ)
 I RES<0 G END
 ;
 D PREPPAR
 D ZPAR(DT,NZ)
 ;
END Q
 ;
 ; 
FILEIN(DT,NZ,KIND) ;
 Q "/tmp/zstr"_$$BRANCH_"_"_DT_"_"_NZ_"_"_KIND_".in"
 ;
FILEOU(DT,NZ,KIND) ;
 Q "/tmp/zstr"_$$BRANCH_"_"_DT_"_"_NZ_"_"_KIND_".out"
 ; 
FLTOKEN(DT) ;
 Q "/tmp/zstr"_$$BRANCH_"_"_DT_".token"
 ; 
OPNJSN(DT,NZ,KIND) ; 
 S FILEIN=$$FILEIN(DT,NZ,KIND)
 C FILEIN:(DELETE)
 O FILEIN:(WRITE:REWIND:NEWVERSION)
 U FILEIN
 Q
 ;
 ;
ZTOT(DT,NZ) ;
 N (JB,%ARG,%REM,DT,NZ,Z1,RES,TOKEN)
 D VRM,VRM1
 ;
 S DAT=$ZD(DT,"YYMMDD")
 ;
 D OPNJSN(DT,NZ,"ztot")
 D MNY(DT,NZ)
 C FILEIN
 
 D SEND(DT,NZ,"ztot")
 Q
 ;
 ;
PREPPAR ;
 S NOCHILD=1
 D ^W4RSTGP1(DT,NZ)
 Q
 ;
 ;
ZPAR(DT,NZ) ;
 S DAT=$ZD(DT,"YYMMDD")
 ;
 D OPNJSN(DT,NZ,"zpar")
 D IT(DT,NZ)
 C FILEIN
 
 D SEND(DT,NZ,"zpar")
 Q
 ;
 ;
KEY(STAM) ;
 ;"y$10$jCYx3tTVhkCDfrCwcrrGROh4E4WaNmNV5DvSPv7NePU7o98A7UIpi$2"
 Q $G(@$$^W4PRM@("ZSTR","KEY"))
 ;
BRANCH(STAM) ;
 Q $G(@$$^W4PRM@("ZSTR","BRANCH"))
 ;
 ;
W(ST) ;
 W ST,!
 D PROT("CONT",ST)
 Q
 ;
W1(VL) ;
 W VL,!
 N SH,S1
 S S1=$$^W4MAIN("TMPS111")
 S SH=$O(@S1@(999999),-1)+1
 S @S1@(SH)=$E(VL,1,3800)
 Q
 ;
NUM(VL)
 I VL?2N.N,$E(VL)="0" Q 0
 I VL?8N.N Q 0
 I VL?."-"1N.N.".".N Q 1
 Q 0
 ;
DATZSTR(DAT) ;
 I $G(DAT)="" Q ""
 N DT S DT=$$^%L1DC(DAT,3)
 Q $ZD(DT,"YEAR-MM-DD")
 ;
TIMEZSTR(TIME) ;
 Q TIME
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
VRM1 ;
 S VRM1=$$^W4MAIN("VRM1")
 Q
 ;
HB(TX) ;
 I '$D(TS0)!'$D(TS1) D ^%L1TS
 S TX=$$INVH^%L1FRM(TX)
 S TX=$TR(TX,"\]},","/   ")
 I TX["""" S TX=$$RPL^%L1FRM(TX,"""","\""")
 Q $TR(TX,TS0,TS1)
 ;
 ;
SEND(DT,NZ,KIND) ;
 N (JB,%ARG,%REM,DT,NZ,KIND,TOKEN,RES)
 ;
 N FILEIN S FILEIN=$$FILEIN(DT,NZ,KIND)
 C FILEIN
 S URL=""
 I KIND="zpar" S URL=$G(@$$^W4PRM@("ZSTR","URLPAR"))
 I KIND="ztot" S URL=$G(@$$^W4PRM@("ZSTR","URLTOT"))
 Q:'$L($G(URL))
 ;
 N FLOU S FLOU=$$FILEOU(DT,NZ,KIND)
 N FLIN S FLIN=FILEIN_".utf"
 ;
 ZSY "iconv -c -f cp1255 -t utf-8 "_FILEIN_" -o "_FLIN
 ;
 ZSY "rm "_FLOU
 I URL'["https:" S URL="https://"_URL
 S CMD="curl -s """_URL_""" -X POST -d@"_FLIN
 S CMD=CMD_" -w ""%{http_code}"" "
 S CMD=CMD_" -H ""Content-Type:application/json"" "
 S CMD=CMD_" -H ""authorization: Bearer "_TOKEN_""" "
 S CMD=CMD_" >> "_FLOU
 D PROT("CMD",CMD)
 ;
 S FLCMD=$P(FLIN,".")_".cmd" 
 D DoCMD(FLCMD,CMD)
 ;
 I $ZSY S RES="-_$ZSY_";ERROR "_$ZSY Q 
 I '$$EXIST^%L1ZOS(FLOU) S RES="-.4;NOANSWER" Q
 ;
 C FLOU
 O FLOU:(REWIND:READONLY)
 U FLOU  
  R OU 
 C FLOU
 D PROT("OU",OU)
 ;
 S RES=OU
 I RES=200 S RES="OK"
 Q
 ;
 ;
PROT(IND,VL)
 N H S H=+$H
 N SH S SH=$O(@$$^W4GL("W4ZSTRPR")@(H,99999),-1)+1
 ;
 I $E(IND,1,4)="CMD1" D  Q
 .S @$$^W4GL("W4ZSTRPR")@(H,SH,IND)=$E(VL,1,3800)
 .S @$$^W4GL("W4ZSTRPR")@(H,SH,"ZSY")=$ZSY
 ;
 S @$$^W4GL("W4ZSTRPR")@(H,SH,IND)=$E(VL,1,3800)
 Q
 ;
 ;
DoCMD(FLCMD,ST) ;
 O FLCMD:(NEWVERSION:REWIND) U FLCMD
  W ST
 C FLCMD
 S CMD="/bin/sh "_FLCMD
 ZSY CMD
 D PROT("CMD1",CMD)
 Q
 ;
 ;
MNY(DT,NZ) ;
 N (JB,%ARG,DT,NZ,TOKEN,RES)
 S DAT=$ZD(DT,"YYMMDD")
 S GLZ1=$$^W4GL("Z1")
 S BRANCH=$G(@$$^W4PRM@("ZSTR","BRANCH"))
 S DATE=$$DATE(DT,NZ)
 ;
 F J="F","G","V","H" D 
 .S Z(J)=$G(@GLZ1@(DAT,NZ,J,1))
 .S Z(J_"#")=$G(@GLZ1@(DAT,NZ,J_"#",1))
 .F J1="S","W","L","T" D
 ..S Z(J_J1)=$G(@GLZ1@(DAT,NZ,J_J1,1))
 ..S Z(J_J1_"#")=$G(@GLZ1@(DAT,NZ,J_J1_"#",1))
 ;
 F J="MIN","MIN2" D 
 .S Z(J)=$G(@GLZ1@(DAT,NZ,J,1))
 ;
 S TOT=$G(Z("F"))+$G(Z("G"))+$G(Z("V"))+$G(Z("H"))
 S TOTQ=$G(Z("F#"))+$G(Z("G#"))+$G(Z("V#"))+$G(Z("H#"))
 ;
 S REST=$G(Z("FS"))+$G(Z("FW"))+$G(Z("GS"))+$G(Z("GW"))+$G(Z("VS"))+$G(Z("VW"))+$G(Z("HW"))
 S RESTQ=$G(Z("FS#"))+$G(Z("FW#"))+$G(Z("GS#"))+$G(Z("GW#"))+$G(Z("VS#"))+$G(Z("VW#"))+$G(Z("HW#"))
 ;
 S DLV=$G(Z("FL"))+$G(Z("GL"))+$G(Z("VL"))+$G(Z("HL"))
 S DLVQ=$G(Z("FL#"))+$G(Z("GL#"))+$G(Z("VL#"))+$G(Z("HL#"))
 ;
 S TAW=$G(Z("FT"))+$G(Z("GT"))+$G(Z("VT"))+$G(Z("HT"))
 S TAWQ=$G(Z("FT#"))+$G(Z("GT#"))+$G(Z("VT#"))
 ;
 I '$$^W4TIPPD(DT) D
 .S TOT=TOT-$G(Z("T"))
 ;
 S TIPS=$J($G(Z("T")),2,2)
 S TOT=$J(TOT,2,2)
 S DISC=$G(Z("MIN"))+$G(Z("MIN2"))
 ;
 S ST="{" D W(ST)
 S ST="""allBranchZ"" : [" D W(ST)
 S ST="{" D W(ST)
 S ST="""branchId"" : """_BRANCH_"""," D W(ST)
 S ST="""date"": """_DATE_"""," D W(ST)
 S ST="""zNum"" :"""_NZ_"""," D W(ST)
 S ST="""zTotal"":"_$$LMAM(TOT,DT)_"," D W(ST)
 ;
 ;;W """zNumberOfOrders"":"_TOTQ_",",!
 ;;W """zPriceTables"":"_REST_",",!
 ;;W """zNumTables"":"_RESTQ_",",!
 ;;W """zPriceTakeAway"":"_TAW_",",!
 ;;W """zNumTakeAway"":"_TAWQ_",",!
 ;;W """zChequeTotal"":"_CHECKS_",",!
 ;;W """zCashTotal:"":"_CASH_",",!
 ;;W """CreditTotal"":"_CA_",",!
 ;;W """reductions"":"_DISC
 ;
 S ST="""tips"":"_TIPS D W(ST)
 S ST="}" D W(ST)
 S ST="]" D W(ST)
 S ST="}" D W(ST)
 Q
 ;
 ;
IT(DT,NZ) ;
 N (JB,%ARG,%RE,DT,NZ,VRM,TOKEN,RES)
 D ^%L1TS
 S DATE=$$DATE(DT,NZ)
 D VRM
 ;
 S ST="{" D W(ST)
 S ST="""allBranchSale"": [" D W(ST)
  ;
  S NP=0
  S PAR="" F  S PAR=$O(@VRM@("PAR",PAR)) Q:PAR=""  D
  .S NP=NP+1
  .S PAR1=$$SHEM^W4P(PAR) I PAR1="" S PAR1="NONAME"
  .S PAR1=$$RPL^%L1FRM(PAR1,"""","\""")
  .S PAR1=$$RPL^%L1FRM(PAR1,"'","\'")
  .S PAR1=$TR(PAR1,TS0,TS1)
  .S DEP=$$DEP^W4P(PAR)
  .S SUG=$$SUG^W4P(PAR)
  .S QN=$G(@VRM@("PAR",PAR,"QN"))
  .S SUM=$G(@VRM@("PAR",PAR,"SUM"))
  .S SUM=$$LMAM(SUM,DT)
  .S MH=0 I QN S MH=$J(SUM/QN,2,2)
  . 
  .S ST="{" D W(ST)
  .S ST=" ""branchId"":"""_$$BRANCH_"""," D W(ST)
  .S ST=" ""zNum"" :"""_NZ_"""," D W(ST)
  .S ST=" ""valueDate"":"""_DATE_"""," D W(ST)
  .S ST=" ""itemCode"":"""_PAR_"""," D W(ST)
  .S ST=" ""itemName"":"""_PAR1_"""," D W(ST)
  .S ST=" ""itemCount"":"_QN_"," D W(ST)
  .S ST=" ""itemTotal"":"_SUM_"," D W(ST)
  .S ST=" ""itemPrice"":"_MH D W(ST)
  .S ST="}" D W(ST)
  .I $O(@VRM@("PAR",PAR))'="" D W(",")
  .;;W " ""itemLine"":"_NP_",",!
  .;;W " ""itemKind"":"""_DEP_""",",!
  .;;W " ""itemClass"":"""_SUG_"""",!
  S ST="]" D W(ST)
 S ST="}" D W(ST)
 Q
 ;
 ;
LMAM(VL,DT) ;
 N AHMAM
 S AHMAM=$$MAMD^W4L(DT)
 S VL=VL*100/(100+AHMAM)
 Q $J(VL,2,2)
 ;
DATE(DT,NZ) ;
 N Z1,DAT S Z1=$$^W4GL("Z1")
 S DAT=$ZD(DT,"YYMMDD")
 N DAT1 S DAT1=$ZD(DT,"DD.MM.YY")
 N A S A=$G(@Z1@(DAT,NZ))
 ;;N DAT1 S DAT1=$P(A,"\")
 N TIM1 S TIM1=$P($P(A,"\",2),"^")
 N YY,MM,DD
 S DD=$P(DAT1,".",1)
 S MM=$P(DAT1,".",2)
 S YY=$P(DAT1,".",3)
 ;;Q $$DATZSTR($H)_"T"_$$T^%L1TIME($P($H,",",2))_":00.000Z"
 ;;Q "20"_YY_"-"_MM_"-"_DD_"T"_TIM1_":00.000Z"
 Q "20"_YY_"-"_MM_"-"_DD_"T00:00:00.000Z"
 ;
 ;
GETTOKEN(DT) ;
 N (JB,%ARG,DT,NZ,TOKEN,RES)
 S USER=$G(@$$^W4PRM@("ZSTR","USER"))
 S PASSWORD=$G(@$$^W4PRM@("ZSTR","PSW"))
 S URLTOKEN=$G(@$$^W4PRM@("ZSTR","URLTOKEN"))
 ;
 S FLTOKEN=$$FLTOKEN(DT)
 ZSY "rm "_FLTOKEN
 ;
 S CMD="curl -s -H ""Content-Type: application/x-www-form-urlencoded"" "  
 S CMD=CMD_" -X POST """_URLTOKEN_""" "
 S CMD=CMD_" -d ""grant_type=password&username="_USER_"&password="_PASSWORD_"""" 
 S CMD=CMD_" -o "_FLTOKEN
 ;;ZSY CMD
 ;
 D PROT("NEW",$TR($J("",30)," ","-")_" "_$ZD($H,"DD.MM.YY 24:60"))
 D PROT("CMDTKN",CMD)
 ;
 S FLCMD=FLTOKEN_".cmd"
 D DoCMD(FLCMD,CMD)
 ;
 I $ZSY S RES="-.1;TOKENERROR "_$ZSY Q 
 I '$$EXIST^%L1ZOS(FLTOKEN) S RES="-.2;TOKENNOTCREATED" Q
 ;
 C FLTOKEN
 O FLTOKEN:(REWIND:READONLY)
 U FLTOKEN  
  R TOKEN 
 C FLTOKEN
 ;
 D PROT("TOKENRSP",TOKEN)
 ;
 S TOKEN=$P(TOKEN,"access_token"":""",2)
 S TOKEN=$P(TOKEN,"""")
 I TOKEN="" S RES="-.3;TOKENISWRONG"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZSTRPR
W4ZSTRPR ; [ 03.10.23 19:52 ] [ 02.10.23 14:18 ] [ 22.09.23 06:11 ] 
 ;--- INPUT - DAT1,DAT2
 N (JB,%ARG,%REM)
 ;
 I '$G(%ARG("MEDAT")),'$G(%ARG("ADDAT")) D ASK Q
 ;
 D DAT
 ;
 D FRM(MEDT,ADDT)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",! 
  D DIVBUT
  D KOT
  D VW
  ;;D DIVBUT
 W "</div>",!
 ;
 Q
 ;
 ;
ASK ;
 W "<div id=""divask"" align=""center"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""80%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td width=""10%"">&nbsp;</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("MEDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("FROMDATE")_"&nbsp;</b>")
   W "</td>"
   W " <td dir=""LTR"">"
    D ^%W1DAT("ADDAT",+$H,"<b>&nbsp;"_$$^%W1DICT("TODATE")_"&nbsp;</b>")
   W "</td>"
   W "<td width=""2%"">&nbsp;</td>",!
   W " <td>"
    D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
VRM S VRM=$$^W4MAIN("VRM")
 Q
 ;
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
DIVBUT ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
FRM(MEDT,ADDT) ;
 N (JB,%ARG,MEDT,ADDT)
 D VRM K @VRM
 S DIR="/tmp/"
 ;
 S IND=0
 S GLZ=$$^W4GL("Z")
 ;
 F DT=MEDT:1:ADDT D
 .S NZ="" F  S NZ=$O(@GLZ@(DT,NZ)) Q:NZ=""  D
 ..D READ(DT,NZ,"TOT","ztot")
 ..D READ(DT,NZ,"PAR","zpar")
 Q
 ;
 ;
READ(DT,NZ,SUG,sug)
 N FLIN S FLIN=$$FILEIN^W4ZSTR(DT,NZ,sug)
 I $$^%L1ZOS(10,FLIN)<0 Q
 S @VRM@(DT,NZ,SUG,"IN")=FLIN
 ;
 O FLIN:(REWIND:READONLY)
 U FLIN
 S @VRM@(DT,NZ,SUG,"IN")=FLIN
 N A,J F J=1:1 R A Q:$ZEOF  D
 .S @VRM@(DT,NZ,SUG,"IN",J)=A
 C FLIN
 ;
 N FLOU S FLOU=$$FILEOU^W4ZSTR(DT,NZ,sug)
 ;
 I $$^%L1ZOS(10,FLOU)>-1 D
 .O FLOU:(REWIND:READONLY)
 .U FLOU
 .S @VRM@(DT,NZ,SUG,"OU")=FLOU
 .F J=1:1 R A Q:$ZEOF  D
 ..S @VRM@(DT,NZ,SUG,"OU",J)=$E(A,1,3800)
 .C FLOU
 Q
 ;
 ;
KOT ;
 W "<br>",!
 W "<table width=""80%"" >",!
  W "<tr>"
   W "<td style=""font-size:"_$$^W3FSZ(14)_";text-align:center"" >"
    W $$^%W1DICT("ZSTRSENDINGPROTOCOL",MEDAT_"<>"_ADDAT)
   W "</td>",!
  W "</tr>",!
  W "</table>",!
 W "<br>",!
 Q
 ;
 ;
VW ;
 N (JB,%ARG,%REM)
  D DAT
  ;
  W "<table style=""width:80%"" cellpadding=0 cellspacing=0 border=""1"">"
  W " <tr>" 
   W "<th>"_$$^%W1DICT("CSRDATE")_"</th>"
   W "<th>"_$$^%W1DICT("ZNUMBER")_"</th>"
   W "<th>"_$$^%W1DICT("MANYSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("ITEMSSENDINGSTATUS")_"</th>"
   W "<th>"_$$^%W1DICT("SENDAGAIN")_"</th>"
  W " </tr>",!
  ;
  S TOP=0,DATTOP=""
  D VRM
  ;
  S GLZ=$$^W4GL("Z")
  ;
  F DT=ADDT:-1:MEDT D
  .S NZ="" F  S NZ=$O(@GLZ@(DT,NZ)) Q:NZ=""  D
  ..N NOK S NOK=0
  ..W "<tr align=""center"" "
  ..W ">"
  .. W "<td >"
  ..  W $ZD(DT,"DD.MM.YY")
  .. W "</td>"
  ..
  .. W "<td >"
  ..  W NZ
  .. W "</td>"
  ..
  .. W "<td id=""tot"_DT_"_"_NZ_""">"
  ..  D VWSEND(DT,NZ,"TOT")
  .. W "</td>"
  ..
  .. W "<td id=""par"_DT_"_"_NZ_""">"
  ..  D VWSEND(DT,NZ,"PAR")
  .. W "</td>"
  ..
  ..W "<td align=""center"">"
  .. D SENDAGAIN(DT,NZ)
  ..W "</td>"
  ..
  ..W "</tr>",!
  ;
  W "</table>",!
  W "</div>",!
  Q
  ;
  ;
VWSEND(DT,NZ,SUG) ;
 D VRM
 W "<table align=""center"">",! 
  W "<tr>"
   W "<td width=""30%"">"
     D VWTIME(DT,NZ,SUG)
   W "</td>"
   W "<td width=""60%"" dir=""LTR"" align=""center"" >"
     D VWFILE(DT,NZ,SUG)
   W "</td>"
   W "<td>"
     D VWRES(DT,NZ,SUG)
   W "</td>"
  W "</tr>",!
 W "</table>",! 
 Q 
 ; 
 ;
VWTIME(DT,NZ,SUG) ; 
 N FLIN S FLIN=$G(@VRM@(DT,NZ,SUG,"IN")) I FLIN="" W "&nbsp;" Q
 N FLOU,A,TIME
 S FLOU="Stat"_$J
 ZSY "stat --format=%z "_FLIN_" > "_FLOU
 O FLOU:(REWIND:READONLY)
 U FLOU R A C FLOU
 S TIME=$P(A,".") I TIME="" W "&nbsp;" Q 
 W TIME
 Q 
 ; 
 ;
VWFILE(DT,NZ,SUG) 
 N FLIN S FLIN=$G(@VRM@(DT,NZ,SUG,"IN")) I FLIN="" W "&nbsp;" Q
 N COLOR S COLOR="darkblue"
 I $$RES(DT,NZ,SUG)'="OK" S COLOR="red"
 W "<span style=""color:"_COLOR_";text-decoration:underline;cursor:pointer"" onClick=""ClickIn('"_DT_"','"_NZ_"','"_SUG_"')"" >"
  W FLIN 
 W "</span>",!
 Q 
 ;
 ;
VWRES(DT,NZ,SUG) ; 
 N VL,COLOR S VL=$$RES(DT,NZ,SUG) Q:VL=""
 W "<input type=""button"" id=""btnou"" "
 S COLOR="green" I $$RES(DT,NZ,SUG)'="OK" S COLOR="red",NOK=1
 W " style=""color:"_COLOR_""" " 
 W "value="""_VL_""" onClick=""ClickOut('"_DT_"','"_NZ_"','"_SUG_"')"" "
 W " />"
 Q 
 ;
 ;
SENDAGAIN(DT,NZ) ; 
 Q:'$G(DT)
 W "<input type=""button"" id=""btnou"" "
 W " style=""color:blue"" " 
 W "value="""_$$^%W1DICT("SENDAGAIN")_""" onClick=""SendAgain('"_DT_"','"_NZ_"')"" "
 W " />"
 Q 
 ;
 ;
DAT ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 S MEDT=$$^%L1DC(MEDAT,3)
 S ADDT=$$^%L1DC(ADDAT,3)
 Q
 ;
RES(DT,NZ,SUG) ;
 N FLOU S FLOU=$G(@VRM@(DT,NZ,SUG,"OU"))
 N VL S VL="NOK"
 N A S A=$G(@VRM@(DT,NZ,SUG,"OU",1))
 I A=200 S VL="OK"
 Q VL
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4ZSTRVW
W4ZSTRVW ; [ 03.10.23 18:19 ] [ 21.09.23 18:41 ] [ 27.07.23 18:19 ] 
 N (JB,%ARG,%REM) ;
 D ^%W1ARG
 ;
 S VRM=$$^W4MAIN("VRM")
 S IND=$S($G(%ARG("IN")):"IN",1:"OU")
 ;
 S FL=$G(@VRM@(DT,NZ,SUG,IND))
 ;;S ^AA("FL")=FL
 ;
 W "<div dir=""LTR"" style=""background-color:white"">",!
 W "<span style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"">",!
  W $ZD(DT,"DD.MM.YY")_" Z="_NZ,! 
  S SM=80 I $$1024^W4WDSCR S SM=55
  W $$NBSP^%L1FRM(SM) D ^W4BCK
  W "<br>"_FL
 W "</span>",!
 W "<br><br>",!
 ;
 F I=1:1 Q:'$D(@VRM@(DT,NZ,SUG,IND,I))  D
 .S A=$G(^(I))
 .W A,"<br>",!
 W "</div>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W4flag
W4flag(STAM) ; [ 04.01.13 12:50 ] [
 Q "^[$$^W3MAIN]flag"

W5ADDONS
W5ADDONS ; [ 08.11.09 17:24 ] [ 07.11.09 10:46 ] [ 06.11.09 19:13 ] [
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$G(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 I '$G(%ARG("ITEM")) W " Item code is not defined ! " Q
 ;
 S PRT=$G(%ARG("ITEM"))
 Q:PRT=""
 S MSD=%ARG("MSD")
 ;
 D CRTMP^W3HZTSF(PRT,$$^W3TMPTF)
 D TMPTF3
 D VIEW
 Q
 ;
VIEW ;
 S CDF=$$FIRST Q:CDF=""
 ;
 W "<div align=""center"" >",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"">",!
 ;
 I $G(%ARG("SET"))="",$G(%ARG("CDCMNT"))="" D  G ET
 .I $$CDA(CDF) D SETS Q
 .I '$$CDA(CDF) D ADDONS
 ;
 I $G(%ARG("SET"))'="" D ADDSET(%ARG("SET")) G ET
 ;
 I $G(%ARG("CDCMNT"))'="" D CMNT(%ARG("CDCMNT")) G ET
 ;
ET W "</table>",!
 W "</div>",!
 Q
TMPTF3 S TMPTF3="^[$$^W3MAIN]TMPTF($$^%W1JB,3)"
 Q
 ;
SETS ;
 N N
 S N="" F  S N=$O(@TMPTF3@(N)) Q:N=""  D SHOWADD(N,1)
 Q
 ;
ADDONS ;
 N N
 S N="" F  S N=$O(@TMPTF3@(N)) Q:N=""  D SHOWADD(N,0)
 Q
 ;
ADDSET(CDA) ;
 N N,N1
 S N="" F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:$$CD(^(N))=CDA
 Q:N=""
 S N1=N F  S N1=$O(@TMPTF3@(N1)) Q:N1=""  Q:$$CDA(^(N1))  D SHOWADD(N1,0)
 Q
 ;
CMNT(CDCMNT) ;
 N N,N1
 S N="" F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:$$CD(^(N))=CDCMNT
 Q:N=""
 S N1=N F  S N1=$O(@TMPTF3@(N1)) Q:N1=""  Q:'$$CDC(^(N1))  D SHOWADD(N1,"C")
 Q
 ;
SHOWADD(N,PRA)
 D TMPTF3
 N A,FLCMN,CD,NM,PRC,MAX,NEXT
 S FLCMN=0,NEXT=""
 S A=$G(@TMPTF3@(N))
 I 'PRA Q:$E(A)="A"
 I PRA="0" S NEXT=$O(^(N)) I NEXT'="",$$CDC($G(@TMPTF3@(NEXT))) S FLCMN="C"
 I PRA Q:'$$CDA(A)
 ;
 S CD=$$CD(A)
 I PRA'="C" Q:$$CDC(A)
 I PRA="C" Q:'$$CDC(A)
 ;
 S NM=$$NM(A)
 S PRC=$$PRC(A)
 S MAX=$$MAX(A)
 ;
 W "<tr>"
  W "<td dir=""LTR"">"
   W CD
  W "</td>"
  W "<td>"
   W $$H2U^%L1FRM(NM)
  W "</td>"
  W "<td dir=""LTR"">"
   W $J(PRC,2,2)
  W "</td>"
  W "<td dir=""LTR"">"
   I 'PRA W FLCMN
   I PRA W MAX
  W "</td>"
 W "</tr>",!
 Q
 ;
CD(A) ;
 Q $P(A,"~")
CDA(A) ;
 I $$CD(A)?1"A"1N.N Q 1
 Q 0
CDC(A) ;
 I $$CD(A)["-C" Q 1
 Q 0
NM(A) ;
 Q $P(A,"~",2)
PRC(A) ;
 Q $P(A,"~",3)
MAX(A) ;
 Q $P(A,"~",4)
 ;
FIRST(STAM) ;
 N N S N="" F  S N=$O(@TMPTF3@(N)) Q:N=""  Q:'$$CDC(N)
 I N="" Q N
 Q $$CD($G(@TMPTF3@(N)))

W5DESCR
W5DESCR(CD) ; [ 28.09.18 17:37 ] [ 30.05.11 12:49 ] [ 21.05.11 11:19 ] 
 Q:CD=""
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" height=""75%"" >",!
  N HG
  S HG="50px"
  W "<tr><th height="""_HG_""" style=""font-size:"_$$^W3FSZ(16)_""">"
   W $$H2U^%L1FRM($$SHEM^W3P(CD))
  W "</th></tr>",!
  ;
  W "<tr>"
   W "<td class=""txtsmall"" >"
    W $$DESC1^W3HZPRTN(CD)
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "<br>",!
 W "<br>",!
 W "<div id=""divbut"">",!
 W "<table>",!
  W "<tr>",!
   W "<td align=""center"">"
       W "<input type=""button"" class=""btnsmall"" id=""Back"" value="""_$$^%W1DICT("BACK")_""" onClick=""Back()"" style=""color:red"" />",!
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q
 

W5GROUP
W5GROUP ; [ 10.08.21 12:08 ] [ 08.02.16 14:28 ] [ 06.11.09 18:14 ] [
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$D(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 S MSD=%ARG("MSD")
 D PUT^%W1PRM("MSD",MSD)
 ;
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 ;
 S KVZ=$$^W4PARCAT
 ;
 S LCOD=5
 D ^W3SIDKVZ
 ;
 D TMPTF
 ;
 I $G(%ARG("CDKV"))="" S %ARG("CDKV")=$O(@TMPTF@(1,""))
 ;
 W "<div align=""center"" >",!
 W "<table width=""94%"" dir="""_$$^%W1DIR_""" border=""1"">",!
 ;
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .S NMKV=$$H2U^%L1FRM(^(KV)) Q:NMKV?.P
 .I KV,'$$^W4VWGR(KV) Q
 .W "<tr>"
 .W " <td>"_KV_"</td>"
 .W " <td>"_NMKV_"</td>"
 .W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 
 
 

W5HZPRT
W5HZPRT(KV) ; [ 12.11.24 18:50 ] [ 21.07.24 14:23 ] [ 16.10.23 09:04 ] 
 N (JB,%ARG,%REM,KV,%HREF)
 I '$D(JB) W " JB number is not defined ! " Q
 I $G(%ARG("SHOW"))=0 Q
 ;
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 I $G(KV) D PUT^%W1PRM("CDKV",KV)
 ;
 S KVZ=$$^W4PARCAT
 ;
 D TMPTF
 ;
 W "<div align=""center"" >",!
 ;
 D BUT(1)
 W "<p></p>",!
 ;
 D
 .D PARSID(KV)
 .S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..N PRT S PRT=$G(^(PRTNP)) Q:PRT=""
 ..I $G(@$$^W4GL("PAR")@(PRT))=0 Q
 ..I $$^W6,$D(@$$^W4GL("W6PAR"))>9,'$D(@$$^W4GL("W6PAR")@(PRT)) Q
 ..D STR(PRT)
 ;
 D BUT(2)
 W "</div>",!
 Q
 ;
 ;
STR(PRT) ;
 N PIC S PIC=$$PIC(PRT)
 N QN
 ;
 W " <div dir="""_$$^%W1DIR_""" width=""98%"">"
 W "<a name='L"_PRT_"' ></a>",!
 ;
 W " <table id=""TblPrt"_PRT_""" dir="""_$$^%W1DIR_""" width=""100%"" "
 W " cellspacing=""0"" "
 W " style="""
  W $$BG51^W4BGBODY
 W """ " 
 W "  >",!
 ;
 D LINE
 ;
 W "  <tr>"
  W "  <td>"
   W "   <table id=""TblShowPrt"" dir="""_$$^%W1DIR_""" width=""100%"" border=""0""  "
     W "style="""
      I $$CHOICED(PRT) W "background-color:lightgrey"
      I PRT=$$GETP^%W1PRM("PRT") W ";border:2px darkgreen solid"
     W """"
   W "   >" 
    W "   <tr>",!
       N WD S WD="70%"  
       I $$^W6 D TDPIC(PRT,1) S WD="40%"
       D TDNAME(PRT,WD)
       D TDMH(PRT)
       ;
       I $$^W6 D 
       . W "<td>"_$$NBSP^%L1FRM(3)_"</td>",!
       . D ORDIT(PRT)
       .W "</tr>" 
       ;
       I '$$^W6 D
       . W "   </tr>" 
       . W "   <tr>" 
       .  D TDPIC(PRT,2)
       . W "   </tr>",!
       ;
   W "   </table>",!
  W "  </td>",!
 W "  </tr>",!
 ;
 D LINE
 ;
 I '$$^W6 D
 .N PRCMN S PRCMN=0,CMNT=""
 .I $D(W5EDIT("CMNT")) S CMNT=$$H2U^%L1FRM(W5EDIT("CMNT"))
 .I '$D(W5EDIT("CMNT")),$L($$CURCMNT(PRT)) S CMNT=$$H2U^%L1FRM($$CURCMNT(PRT))
 .I $L(CMNT)!$G(QN)!$D(W5EDIT) S PRCMN=1
 .
 .D LINEDESC
 .D LINECMN
 .D LINE2
 ;
 D LINE
 ;
 W "</table>",!
 W "</div>",!
 I '$D(W3HZTSF) W "<hr style=""border-style:dotted"">",!
 Q
 ;
 ;
LINE2 ;
 W "  <tr>"
 W "   <td >"
  W "   <table dir="""_$$^%W1DIR_""" width=""100%"">",!
   W "   <tr>",!
       D TDPLUS(PRT)
       ;
       D TDQN(PRT)
       ;
       D TDMIN(PRT)
       ;
       D TDDEL(PRT)
       ;
       D TDSP
       ;
       D TDDESCR(PRT)
       ;  
   W "   </tr>",!
   ;
   I '$D(W5EDIT),'$D(W3HZTSF) D TRBUT1(PRT)
   ; 
  W "  </table>",!
 W " </td>",!
 W "</tr>",!
 ;
 Q
 ;
 ;
TDNAME(PRT,WD) ;
 N SHEM S SHEM=$S($$ENG:$$SHEML^W4P(PRT,1),1:$$SHEM^W4P(PRT))
 S SHEM=$$RPL^%L1FRM(SHEM,"()","")
 I $$ENG S SHEM=$$VWENG^%L1FRM(SHEM)
 ;
 W "   <td class=""itemsmall"" width="""_WD_""" "
   ;
   I '$$^W6 D
   .W " onClick=""ItemClick('"_PRT_"')"">"
   .W $$H2U^%L1FRM(SHEM)
   ;
   I $$^W6 D
   .W "><span style=""font-size:"_$$^W3FSZ(18)_""" onClick=""OrderIt('"_PRT_"')"" > "
   . W $$H2U^%L1FRM(SHEM)
   .W "</span>"
   .D BR,BR
   .W "<span style=""font-size:"_$$^W3FSZ(12)_";color:brown;font-weight:bold"" >"
   . W $$DESC1^W3HZPRTN(PRT,1,$$ENG)
   .W "</span>",!
   ;
 W "   </td>",!
 Q
 ;
 ;
TDMH(PRT) ;
 W "   <td class=""prcsmall"" id=""prc"_PRT_""" "
   I $$^W6 W "style=""font-size:"_$$^W3FSZ(18)_";color:darkgreen"" "
 W ">" 
   W $J($$MH^W4P(PRT),2,2)
   D BR,BR
 W "</td>",!
 Q
 ;
TDPIC(PRT,SPAN) ;
 N HG S HG=280 ;;300
 I $$1024^W4WDSCR S HG=180 ;; 250
 I '$G(SPAN) S SPAN=1
 N PIC S PIC=$$PIC(PRT)
 W "   <td colspan="""_SPAN_""" "
  I $$^W6 D
  .I $G(KV),$G(@$$^W4GL("W4PICGRH")@(KV)) W "width=""15%"" " Q 
  .W " width=""30%"" "
 W "   >" 
   W "  <img src="""_PIC_""" width=""90%"" height="""_$$KF^W3CSM(HG)_""" " ; -- WAS 100%
   W "  style=""border:2px solid grey;cursor:pointer"" "
   W " onClick=""OrderIt('"_PRT_"')"" "
   W "  />"
 W "  </td>",!
 Q
 ;
TDPLUS(PRT)
 W "<td align=""center"">"
    W "<input type=""button"" class=""btnsmall"" style=""color:green"" value=""&nbsp;+&nbsp;"" "
    S PR=0 I $G(PRTNP),PRTNP=$O(@TMPTF@(2,"")) S PR=1
    I $G(PRTNP),PRTNP=$O(@TMPTF@(2,9999),-1) S PR=2
    W " onClick=""PlusQn('"_PRT_"','"_PR_"')"" "
   W " />"
  W "   </td>",!
 Q
 ;
TDQN(PRT) ;
 W "   <td align=""center"">"
   W "<input type=""text"" id=""qn"_PRT_""" size=""3"" maxlength=""2"" readonly=""readonly"" "
       S QN=$$QN(PRT)
       W "class=""txtsmall"" value="""_QN_""" />"
   W "   </td>",!
 Q
 ;
TDMIN(PRT) ;
 W "<td align=""center"">"
     W "<input type=""button"" class=""btnsmall"" "
     W " style=""color:red"" value=""&nbsp;-&nbsp;"" "
     W " onClick=""MinusQn('"_PRT_"')"" "
     W " />"
 W "</td>",!
 Q
 ;
TDDEL(PRT) ;
 W "   <td>&nbsp;"
  W "<img id=""cnc"_PRT_""" src=""w4del20.png"" "
   I '$D(W3HZTSF) D
   .;;I 'QN W "style=""display:none"" "
   .I 'QN W "style=""visibility:hidden"" "
   .W ""_$$^W4TOUCH_"=""Cancel('"_PRT_"')"" "
   I $D(W3HZTSF) W " "_$$^W4TOUCH_"=""Back2Menu()"" "
  W "/>" 
 W "   </td>",!  
 Q
 ;
TDDESCR(PRT) ;
 W "<td>"
   I '$D(W5EDIT) D
   .W "<input type=""button"" class=""btnsmall"" "
   .   W " value="""_$$^%W1DICT("DESCRIPTION")_""" "
   .   W " onClick=""Description('"_PRT_"')"" "
   .W " />"
   I $D(W5EDIT) W "&nbsp;"
 W "   </td>",!
 Q
 ;
TRBUT1(PRT) ;
 W "<tr>"
  W "<td colspan=""10"">"
   D BUT1(PRT,$$QN(PRT))
  W "</td>"
 W "</tr>",!
 Q
 ;
PARSID(N) ;
 Q:$G(N)=""
 N NP,PRT,MMM,I1,N2
 S I1=0  D TMPTF K @TMPTF@(2)
 ;
 I $D(@$$^W4GL("P1PARSID")@(N))>9 D
 .S NP="" F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 Q
 ;
CTF2 S I1=I1+1
 S @TMPTF@(2,I1)=N2
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
STADD(TXT,NOSET) ;
 N CD,QN,MH,NM,CMNT
 S CD=$P(TXT,";") I $G(CD)="" Q
 S MH=$J($P(TXT,";",2),2,2)
 S QN=$P(TXT,";",3)
 S CMNT=$P(TXT,";",4)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 S CMNT=$$INVH^%L1FRM(CMNT)
 S CMNT=$TR(CMNT,"_",$C(10))
 S NM=$$CLWEB^%L1FRM($$SHEM^W4P(CD))
 S TXT="0~"_CD_"~"_NM_"~"_MH_"~"_QN
 S $P(TXT,"~",7)=CMNT
 I $G(NOSET)'="NOSET" D STADD^W3HZORD(TXT)
 K @$$^W4MAIN("VRM")@("CUR")
 ;;K @$$^W4MAIN("VRM")@("CUROLD")
 Q TXT
 ;
PIC(CD) ;
 N PRE ;;S PRE="big"
 Q $P($$GETPIC^W3ENTER(CD),"~",2)
 ;
PRM(STAM) ;
 N PRM S PRM=$G(%ARG("CDKV"))
 N PRT S PRT=$$GET^%W1PRM("PRT")
 I PRT'="",PRT'["UNDEF" S PRM=PRM_"#L"_PRT
 Q PRM
 ;
GETCDKV(STAM) ;
 I $G(%ARG("CDKV"))'="" Q %ARG("CDKV")
 N CDKV S CDKV=$$GET^%W1PRM("CDKV")
 I '$$ISNUM^%L1FRM(CDKV) Q ""
 Q CDKV
 ;
SVPRT(CD) ;
 D PUT^%W1PRM("PRT",CD)
 Q
 ;
SVVRM(PRM) ;
 N CD,QN,CMNT
 S CD=$P(PRM,";",1) Q:CD=""
 S QN=$P(PRM,";",2)
 S CMNT=$P(PRM,";",3)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 S CMNT=$$INVH^%L1FRM(CMNT)
 S @$$^W4MAIN("VRM")@("CUR")=CD
 S @$$^W4MAIN("VRM")@("CUR","QN")=QN
 S @$$^W4MAIN("VRM")@("CUR","CMNT")=CMNT
 D SVPRT(CD)
 Q
 ;
QN(PRT) ;
 N QN
 S QN=0
 I $G(W5EDIT("QN")) S QN=W5EDIT("QN") Q QN
 I $$CURQN(PRT) S QN=$$CURQN(PRT)
 Q QN
 ;
CURQN(PRT) ;
 I '$$CURPRT(PRT) Q ""
 Q $G(@$$^W4MAIN("VRM")@("CUR","QN"))
 ;
CURCMNT(PRT) ;
 I '$$CURPRT(PRT) Q ""
 Q $G(@$$^W4MAIN("VRM")@("CUR","CMNT"))
 ;
CUROLD(STAM) ;
 Q $G(@$$^W4MAIN("VRM")@("CUROLD"))
 ;
CUR(STAM) ;
 Q $G(@$$^W4MAIN("VRM")@("CUR"))
 ;
CURPRT(PRT) ;
 N CUR S CUR=$G(@$$^W4MAIN("VRM")@("CUR"))
 I CUR="" Q ""
 I CUR'=PRT Q ""
 Q 1
 ;
BGCOLOR(PRT) ;
 N BG,BGCUR
 S BG="background-color:white"
 S BGCUR="background-color:"_$$CURCOLOR^W3CSM
 I '$$CURPRT(PRT) Q BG
 Q BGCUR
 ;
LINE ;
 I $D(W5EDIT) G LINEE
 I '$G(PRT) Q
 I '$$CURPRT(PRT) Q
LINEE D TRSP
 Q
 ;
TRSP ;
 W "<tr>" D TDSP W "</tr>",!
 Q
 ;
TDSP ;
 W "<td>&nbsp;</td>",!
 Q
 ;
LINECMN ;
 W "<tr id=""cmntr"_PRT_""" "
  I '$G(PRCMN) W " style=""display:none"" "
 W ">"
 W " <td align=""center"" valign=""top"" "
   W "style=""color:red;font-size:"_$$^W3FSZ(16)_""" id=""cmntd"_PRT_""" "
 W ">" 
 D
 .W " <span style=""color:red;font-size:"_$$^W3FSZ(14)_""" >"
 . W $$^%W1DICT("COMMENT")
 .W "</span><br>",!
 .W "<textarea id=""cmnt"_PRT_""" rows=""3"" cols=""36"" "
 . W "style=""font-size:"_$$^W3FSZ(14)_""">"
 .  W CMNT
 .W "</textarea>"
 W " </td>",!
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
LINEDESC ;
 W "<tr id=""descr"_PRT_""" style=""display:none"">"
  W "<td style=""background-color:lightyellow;border:1px solid brown;font-size:"_$$^W3FSZ(12)_""" >"
   W $$DESC1^W3HZPRTN(PRT)
  W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
BUT(NOM) ;
 I $$W6FRM^W4PRM Q
 ;
 S ID="divbut"_NOM
 ;
 I $$^W6 D  Q
 .W "<table border=""0"" width=""100%"" dir="""_$$^%W1DIR_""" >",!
 . W "<tr>",!
 .  W "<td width=""21%"">&nbsp;</td>"
 .  W "<td width=""59%"" align=""center"" >"
 .   D ^W4BTN("DELETEORDER","CancelOrd()","red","",16,7)
 .  W "</td>" 
 .  W "<td align=""center"">"
 .    W "&nbsp;"
 .  W "</td>" 
 . W "</tr>",!
 .W "</table>",! 
 ;
 W "<table id="""_ID_""" class=""smalltblgr"" width=""98%"" align=""center"" "
 W ">" 
  W "<tr>"
   W "<td align=""center"" >"
    W "<input type = ""button"" class=""btnsmall"" value="""_$$^%W1DICT("BACK2GROUPS")_""" style=""color:red"" onClick=""Back()"" />",!
   W "</td>",!
   W "<td align=""center"" >"
   W " <input type = ""button"" class=""btnsmall"" value="""_$$^%W1DICT("SHOWORD")_""" style=""color:green"" onClick=""ShowSmallOrd()"" />",!
  W " </td>",!
  W "</tr>",!
 W " </table>",!
 Q
 ;
BUT1(PRT,QN) ;
 I $G(PRT)="" Q
 S ID="ordit"_PRT D BR,BR
 ;
 W "<table id="""_ID_""" class=""smalltblgr"" width=""98%"" align=""center"" "
  W "style=""display:"_$S(QN:"",1:"none")_""" "
 W ">" 
  W "<tr>"
  ;
   W "<td align=""center""> "
   W "    <input type=""button"" class=""btnsmall"" "
        W " style=""color:green"
        W """"
        W " value="""_$$^%W1DICT("ORDERIT")_""" width=""100%"" "
        I '$D(W5EDIT) W " onClick=""OrderIt('"_PRT_"')"" "
        I $D(W5EDIT) W " onClick=""Submit()"" "
       W " />"
   W "</td>",!
   ; 
   W "<td align=""center"" >"
    W "<input type = ""button"" class=""btnsmall"" value="""_$$^%W1DICT("BACK2GROUPS")_""" style=""color:red"" onClick=""Back()"" />",!
   W "</td>",!
  W "</tr>",!
 W " </table>",!
 Q
 ;
 ;
ORDIT(PRT) ; 
 N WD S WD="140px"
 W "<td align=""center"" name=""tdbtn"" >"
  N STYLE S STYLE="width "_WD
  ;
  S PDN=4
  I $$W6FRM^W4PRM S PDN=9
  D ^W4BUTTON("ordit","ORDERIT","OrderIt('"_PRT_"')",STYLE,"","btnbold",PDN)
  ;
  I '$$W6FRM^W4PRM D
  .D BR,BR,BR
  .D ^W4BUTTON("showord","SHOWANDPAYORD","ShowOrd()","width:"_WD_";background-color:lightgrey;color:green","","btnbold")
 W "</td>",!
 Q 
 ;
SHOWORD ; 
 W "<td>"
  D ^W4BUTTON("showord","SHOWORD","ShowOrd()","width:100px","","btn")
 W "</td>",!
 Q
 ;
BR W "<br>" 
 Q
 ;
CHOICED(PRT) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D  Q:OK
 .I $$CDST^W3HZMST(JB,N)=PRT S OK=1
 Q OK
 ;
ENG() ;
 I $G(%ARG("ENG")) Q 1
 I $$GETP^%W1PRM("LNG")="E" Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W5HZPRT0
W5HZPRT(KV) ; [ 07.10.23 11:11 ] [ 20.08.23 10:46 ] [ 31.01.23 11:55 ] 
 N (JB,%ARG,%REM,KV,%HREF)
 I '$D(JB) W " JB number is not defined ! " Q
 I $G(%ARG("SHOW"))=0 Q
 ;
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 I $G(KV) D PUT^%W1PRM("CDKV",KV)
 ;
 S KVZ=$$^W4PARCAT
 ;
 D TMPTF
 ;
 W "<div align=""center"" >",!
 ;
 D BUT(1)
 W "<p></p>",!
 ;
 D
 .D PARSID(KV)
 .S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..N PRT S PRT=$G(^(PRTNP))
 ..I $G(@$$^W4GL("PAR")@(PRT))=0 Q
 ..I $$^W6,$D(@$$^W4GL("W6PAR"))>9,'$D(@$$^W4GL("W6PAR")@(PRT)) Q
 ..D STR(PRT)
 ;
 D BUT(2)
 W "</div>",!
 Q
 ;
 ;
STR(PRT) ;
 N PIC S PIC=$$PIC(PRT)
 N QN
 ;
 W " <div dir="""_$$^%W1DIR_""" width=""98%"">"
 W "<a name='L"_PRT_"' ></a>",!
 ;
 W " <table id=""TblPrt"_PRT_""" dir="""_$$^%W1DIR_""" width=""100%"" "
 W " cellspacing=""0"" "
 W " style="""
  W $$BG51^W4BGBODY
 W """ " 
 W "  >",!
 ;
 D LINE
 ;
 W "  <tr>"
  W "  <td>"
   W "   <table id=""TblShowPrt"" dir="""_$$^%W1DIR_""" width=""100%"" border=""0""  "
     W "style="""
      I $$CHOICED(PRT) W "background-color:lightgrey"
      I PRT=$$GETP^%W1PRM("PRT") W ";border:2px darkgreen solid"
     W """"
   W "   >" 
    W "   <tr>",!
       N WD S WD="70%"  
       I $$^W6 D TDPIC(PRT,1) S WD="40%"
       D TDNAME(PRT,WD)
       D TDMH(PRT)
       ;
       I $$^W6 D 
       . W "<td>"_$$NBSP^%L1FRM(3)_"</td>",!
       . D ORDIT(PRT)
       .W "</tr>" 
       ;
       I '$$^W6 D
       . W "   </tr>" 
       . W "   <tr>" 
       .  D TDPIC(PRT,2)
       . W "   </tr>",!
       ;
   W "   </table>",!
  W "  </td>",!
 W "  </tr>",!
 ;
 D LINE
 ;
 I '$$^W6 D
 .N PRCMN S PRCMN=0,CMNT=""
 .I $D(W5EDIT("CMNT")) S CMNT=$$H2U^%L1FRM(W5EDIT("CMNT"))
 .I '$D(W5EDIT("CMNT")),$L($$CURCMNT(PRT)) S CMNT=$$H2U^%L1FRM($$CURCMNT(PRT))
 .I $L(CMNT)!$G(QN)!$D(W5EDIT) S PRCMN=1
 .
 .D LINEDESC
 .D LINECMN
 .D LINE2
 ;
 D LINE
 ;
 W "</table>",!
 W "</div>",!
 I '$D(W3HZTSF) W "<hr style=""border-style:dotted"">",!
 Q
 ;
 ;
LINE2 ;
 W "  <tr>"
 W "   <td >"
  W "   <table dir="""_$$^%W1DIR_""" width=""100%"">",!
   W "   <tr>",!
       D TDPLUS(PRT)
       ;
       D TDQN(PRT)
       ;
       D TDMIN(PRT)
       ;
       D TDDEL(PRT)
       ;
       D TDSP
       ;
       D TDDESCR(PRT)
       ;  
   W "   </tr>",!
   ;
   I '$D(W5EDIT),'$D(W3HZTSF) D TRBUT1(PRT)
   ; 
  W "  </table>",!
 W " </td>",!
 W "</tr>",!
 ;
 Q
 ;
 ;
TDNAME(PRT,WD) ;
 N SHEM S SHEM=$S($$ENG:$$SHEML^W4P(PRT,1),1:$$SHEM^W4P(PRT))
 S SHEM=$$RPL^%L1FRM(SHEM,"()","")
 I $$ENG S SHEM=$$VWENG^%L1FRM(SHEM)
 ;
 W "   <td class=""itemsmall"" width="""_WD_""" "
   ;
   I '$$^W6 D
   .W " onClick=""ItemClick('"_PRT_"')"">"
   .W $$H2U^%L1FRM(SHEM)
   ;
   I $$^W6 D
   .W "><span style=""font-size:"_$$^W3FSZ(18)_""" onClick=""OrderIt('"_PRT_"')"" > "
   . W $$H2U^%L1FRM(SHEM)
   .W "</span>"
   .D BR,BR
   .W "<span style=""font-size:"_$$^W3FSZ(12)_";color:brown;font-weight:bold"" >"
   . W $$DESC1^W3HZPRTN(PRT,1,$$ENG)
   .W "</span>",!
   ;
 W "   </td>",!
 Q
 ;
 ;
TDMH(PRT) ;
 W "   <td class=""prcsmall"" id=""prc"_PRT_""" "
   I $$^W6 W "style=""font-size:"_$$^W3FSZ(18)_";color:darkgreen"" "
 W ">" 
   W $J($$MH^W4P(PRT),2,2)
   D BR,BR
 W "</td>",!
 Q
 ;
TDPIC(PRT,SPAN) ;
 N HG S HG=280 ;;300
 I $$1024^W4WDSCR S HG=180 ;; 250
 I '$G(SPAN) S SPAN=1
 N PIC S PIC=$$PIC(PRT)
 W "   <td colspan="""_SPAN_""" "
  I $$^W6 D
  .I $G(KV),$G(@$$^W4GL("W4PICGRH")@(KV)) W "width=""15%"" " Q 
  .W " width=""30%"" "
 W "   >" 
   W "  <img src="""_PIC_""" width=""90%"" height="""_$$KF^W3CSM(HG)_""" " ; -- WAS 100%
   W "  style=""border:2px solid grey;cursor:pointer"" "
   W " onClick=""OrderIt('"_PRT_"')"" "
   W "  />"
 W "  </td>",!
 Q
 ;
TDPLUS(PRT)
 W "<td align=""center"">"
    W "<input type=""button"" class=""btnsmall"" style=""color:green"" value=""&nbsp;+&nbsp;"" "
    S PR=0 I $G(PRTNP),PRTNP=$O(@TMPTF@(2,"")) S PR=1
    I $G(PRTNP),PRTNP=$O(@TMPTF@(2,9999),-1) S PR=2
    W " onClick=""PlusQn('"_PRT_"','"_PR_"')"" "
   W " />"
  W "   </td>",!
 Q
 ;
TDQN(PRT) ;
 W "   <td align=""center"">"
   W "<input type=""text"" id=""qn"_PRT_""" size=""3"" maxlength=""2"" readonly=""readonly"" "
       S QN=$$QN(PRT)
       W "class=""txtsmall"" value="""_QN_""" />"
   W "   </td>",!
 Q
 ;
TDMIN(PRT) ;
 W "<td align=""center"">"
     W "<input type=""button"" class=""btnsmall"" "
     W " style=""color:red"" value=""&nbsp;-&nbsp;"" "
     W " onClick=""MinusQn('"_PRT_"')"" "
     W " />"
 W "</td>",!
 Q
 ;
TDDEL(PRT) ;
 W "   <td>&nbsp;"
  W "<img id=""cnc"_PRT_""" src=""w4del20.png"" "
   I '$D(W3HZTSF) D
   .;;I 'QN W "style=""display:none"" "
   .I 'QN W "style=""visibility:hidden"" "
   .W "onMouseUp=""Cancel('"_PRT_"')"" "
   I $D(W3HZTSF) W " onMouseUp=""Back2Menu()"" "
  W "/>" 
 W "   </td>",!  
 Q
 ;
TDDESCR(PRT) ;
 W "<td>"
   I '$D(W5EDIT) D
   .W "<input type=""button"" class=""btnsmall"" "
   .   W " value="""_$$^%W1DICT("DESCRIPTION")_""" "
   .   W " onClick=""Description('"_PRT_"')"" "
   .W " />"
   I $D(W5EDIT) W "&nbsp;"
 W "   </td>",!
 Q
 ;
TRBUT1(PRT) ;
 W "<tr>"
  W "<td colspan=""10"">"
   D BUT1(PRT,$$QN(PRT))
  W "</td>"
 W "</tr>",!
 Q
 ;
PARSID(N) ;
 Q:$G(N)=""
 N NP,PRT,MMM,I1,N2
 S I1=0  D TMPTF K @TMPTF@(2)
 ;
 I $D(@$$^W4GL("P1PARSID")@(N))>9 D
 .S NP="" F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 Q
 ;
CTF2 S I1=I1+1
 S @TMPTF@(2,I1)=N2
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
STADD(TXT,NOSET) ;
 N CD,QN,MH,NM,CMNT
 S CD=$P(TXT,";") I $G(CD)="" Q
 S MH=$J($P(TXT,";",2),2,2)
 S QN=$P(TXT,";",3)
 S CMNT=$P(TXT,";",4)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 S CMNT=$$INVH^%L1FRM(CMNT)
 S CMNT=$TR(CMNT,"_",$C(10))
 S NM=$$CLWEB^%L1FRM($$SHEM^W4P(CD))
 S TXT="0~"_CD_"~"_NM_"~"_MH_"~"_QN
 S $P(TXT,"~",7)=CMNT
 I $G(NOSET)'="NOSET" D STADD^W3HZORD(TXT)
 K @$$^W4MAIN("VRM")@("CUR")
 ;;K @$$^W4MAIN("VRM")@("CUROLD")
 Q TXT
 ;
PIC(CD) ;
 N PRE ;;S PRE="big"
 Q $P($$GETPIC^W3ENTER(CD),"~",2)
 ;
PRM(STAM) ;
 N PRM S PRM=$G(%ARG("CDKV"))
 N PRT S PRT=$$GET^%W1PRM("PRT")
 I PRT'="",PRT'["UNDEF" S PRM=PRM_"#L"_PRT
 Q PRM
 ;
GETCDKV(STAM) ;
 I $G(%ARG("CDKV"))'="" Q %ARG("CDKV")
 N CDKV S CDKV=$$GET^%W1PRM("CDKV")
 I CDKV'?1N.N.".".N Q ""
 Q CDKV
 ;
SVPRT(CD) ;
 D PUT^%W1PRM("PRT",CD)
 Q
 ;
SVVRM(PRM) ;
 N CD,QN,CMNT
 S CD=$P(PRM,";",1) Q:CD=""
 S QN=$P(PRM,";",2)
 S CMNT=$P(PRM,";",3)
 S CMNT=$$CNWEB^%L1FRM(CMNT)
 S CMNT=$$INVH^%L1FRM(CMNT)
 S @$$^W4MAIN("VRM")@("CUR")=CD
 S @$$^W4MAIN("VRM")@("CUR","QN")=QN
 S @$$^W4MAIN("VRM")@("CUR","CMNT")=CMNT
 D SVPRT(CD)
 Q
 ;
QN(PRT) ;
 N QN
 S QN=0
 I $G(W5EDIT("QN")) S QN=W5EDIT("QN") Q QN
 I $$CURQN(PRT) S QN=$$CURQN(PRT)
 Q QN
 ;
CURQN(PRT) ;
 I '$$CURPRT(PRT) Q ""
 Q $G(@$$^W4MAIN("VRM")@("CUR","QN"))
 ;
CURCMNT(PRT) ;
 I '$$CURPRT(PRT) Q ""
 Q $G(@$$^W4MAIN("VRM")@("CUR","CMNT"))
 ;
CUROLD(STAM) ;
 Q $G(@$$^W4MAIN("VRM")@("CUROLD"))
 ;
CUR(STAM) ;
 Q $G(@$$^W4MAIN("VRM")@("CUR"))
 ;
CURPRT(PRT) ;
 N CUR S CUR=$G(@$$^W4MAIN("VRM")@("CUR"))
 I CUR="" Q ""
 I CUR'=PRT Q ""
 Q 1
 ;
BGCOLOR(PRT) ;
 N BG,BGCUR
 S BG="background-color:white"
 S BGCUR="background-color:"_$$CURCOLOR^W3CSM
 I '$$CURPRT(PRT) Q BG
 Q BGCUR
 ;
LINE ;
 I $D(W5EDIT) G LINEE
 I '$G(PRT) Q
 I '$$CURPRT(PRT) Q
LINEE D TRSP
 Q
 ;
TRSP ;
 W "<tr>" D TDSP W "</tr>",!
 Q
 ;
TDSP ;
 W "<td>&nbsp;</td>",!
 Q
 ;
LINECMN ;
 W "<tr id=""cmntr"_PRT_""" "
  I '$G(PRCMN) W " style=""display:none"" "
 W ">"
 W " <td align=""center"" valign=""top"" "
   W "style=""color:red;font-size:"_$$^W3FSZ(16)_""" id=""cmntd"_PRT_""" "
 W ">" 
 D
 .W " <span style=""color:red;font-size:"_$$^W3FSZ(14)_""" >"
 . W $$^%W1DICT("COMMENT")
 .W "</span><br>",!
 .W "<textarea id=""cmnt"_PRT_""" rows=""3"" cols=""36"" "
 . W "style=""font-size:"_$$^W3FSZ(14)_""">"
 .  W CMNT
 .W "</textarea>"
 W " </td>",!
 W "</tr>",!
 W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
LINEDESC ;
 W "<tr id=""descr"_PRT_""" style=""display:none"">"
  W "<td style=""background-color:lightyellow;border:1px solid brown;font-size:"_$$^W3FSZ(12)_""" >"
   W $$DESC1^W3HZPRTN(PRT)
  W "</td>",!
 W "</tr>",!
 Q
 ;
BUT(NOM) ;
 S ID="divbut"_NOM
 ;
 I $$^W6 D  Q
 .W "<table border=""0"" width=""100%"" dir="""_$$^%W1DIR_""" >",!
 . W "<tr>",!
 .  W "<td width=""21%"">&nbsp;</td>"
 .  W "<td width=""59%"" align=""center"" >" D ^W4BTN("DELETEORDER","CancelOrd()","red","",16,7) W "</td>" 
 .  W "<td align=""center"">"
 .    W "&nbsp;"
 .  W "</td>" 
 . W "</tr>",!
 .W "</table>",! 
 ;
 W "<table id="""_ID_""" class=""smalltblgr"" width=""98%"" align=""center"" "
 W ">" 
  W "<tr>"
   W "<td align=""center"" >"
    W "<input type = ""button"" class=""btnsmall"" value="""_$$^%W1DICT("BACK2GROUPS")_""" style=""color:red"" onClick=""Back()"" />",!
   W "</td>",!
   W "<td align=""center"" >"
   W " <input type = ""button"" class=""btnsmall"" value="""_$$^%W1DICT("SHOWORD")_""" style=""color:green"" onClick=""ShowSmallOrd()"" />",!
  W " </td>",!
  W "</tr>",!
 W " </table>",!
 Q
 ;
BUT1(PRT,QN) ;
 I $G(PRT)="" Q
 S ID="ordit"_PRT D BR,BR
 ;
 W "<table id="""_ID_""" class=""smalltblgr"" width=""98%"" align=""center"" "
  W "style=""display:"_$S(QN:"",1:"none")_""" "
 W ">" 
  W "<tr>"
  ;
   W "<td align=""center""> "
   W "    <input type=""button"" class=""btnsmall"" "
        W " style=""color:green"
        W """"
        W " value="""_$$^%W1DICT("ORDERIT")_""" width=""100%"" "
        I '$D(W5EDIT) W " onClick=""OrderIt('"_PRT_"')"" "
        I $D(W5EDIT) W " onClick=""Submit()"" "
       W " />"
   W "</td>",!
   ; 
   W "<td align=""center"" >"
    W "<input type = ""button"" class=""btnsmall"" value="""_$$^%W1DICT("BACK2GROUPS")_""" style=""color:red"" onClick=""Back()"" />",!
   W "</td>",!
  W "</tr>",!
 W " </table>",!
 Q
 ;
ORDIT(PRT) ; 
 N WD S WD="140px"
 W "<td align=""center"" name=""tdbtn"" >"
  D ^W4BUTTON("ordit","ORDERIT","OrderIt('"_PRT_"')","width:"_WD,"","btnbold")
  D BR,BR,BR
  D ^W4BUTTON("showord","SHOWANDPAYORD","ShowOrd()","width:"_WD_";background-color:lightgrey;color:green","","btnbold")
 W "</td>",!
 Q 
 ;
SHOWORD ; 
 W "<td>"
  D ^W4BUTTON("showord","SHOWORD","ShowOrd()","width:100px","","btn")
 W "</td>",!
 Q
 ;
BR W "<br>" 
 Q
 ;
CHOICED(PRT) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4TMPORD@(N)) Q:N=""  I N D  Q:OK
 .I $$CDST^W3HZMST(JB,N)=PRT S OK=1
 Q OK
 ;
ENG() ;
 I $G(%ARG("ENG")) Q 1
 I $$GETP^%W1PRM("LNG")="E" Q 1
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W5HZTFR
W5HZTFR ; [ 10.08.21 12:08 ] [ 08.02.16 14:30 ] [ 27.01.12 12:08 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$$MSD W " Restaurant number is not defined ! " Q
 S MSD=$$MSD
 I MSD D PUT^%W1PRM("MSD",MSD)
 ;
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 ;
 S KVZ=$$^W4PARCAT
 ;
 S LCOD=5
 D ^W3SIDKVZ
 ;
 D TMPTF
 ;
 I $$CDKV="" S %ARG("CDKV")=$O(@TMPTF@(1,""))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 S WDTB="100%"
 D HDMSD^W5ORDVW(MSD)
 W "<br><br>",!
 ;
 ;;W "<span class=""smallhdmenu"">"_$$^%W1DICT("MENU")_"</span>",!
 ;;W "<br><br>",!
 ;
 N SPC S SPC=20 I $$^W4SIMUL S SPC=10
 W "<table id=""TblTfr"" width=""94%"" class=""smalltblgr"" cellspacing="""_SPC_""" dir="""_$$^%W1DIR_""" border=""0"">",!
 ;
 N MKV
 N I S I=0
 S KVNP="" F  S KVNP=$O(@TMPTF@(1,KVNP)) Q:KVNP=""  D
 .S KV=$G(@TMPTF@(1,KVNP,"KV")) Q:'KV
 .I '$D(@$$^W4GL("PARSUG")@(KV)) Q
 .S NMKV=$$H2U^%L1FRM(^(KV)) Q:NMKV?.P
 .I KV,'$$^W4VWGR(KV) Q
 .Q:$$NOSUG^W3HZTFR(KV,+$H)
 .S I=I+1
 .S MKV(I)=KV_"~"_NMKV
 ;
 N PR
 F I=1:1 Q:'$D(MKV(I))  D
 .S PR=0 I '$D(MKV(I-1)) S PR=1
 .I '$D(MKV(I+1)) S PR=$S(PR=1:3,1:2)
 .S KV=$P(MKV(I),"~")
 .S NMKV=$P(MKV(I),"~",2)
 .D SHOWGR(KV,NMKV,PR)
 ;
 W "</table>",!
 W "<br><br>"
 D BACK
 W "<br>",!
 W "<br>",!
 W "</div>",!
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
SHOWGR(KV,NMKV,PR) ;
 W "<tr>"
 N CLASSGR
 S CLASSGR="grsmall"
 I $G(PR)=1 S CLASSGR="grsmallv"
 I $G(PR)=2 S CLASSGR="grsmalln"
 I $G(PR)=3 S CLASSGR="grsmallvn"
 W " <td class="""_CLASSGR_""" style=""cursor:pointer"" "
 W " id=""kv"_KV_""" "
   I $G(KV),KV=$$CDKV W " style=""color:red"" "
   W "onClick=""TfrClick('"_KV_"')"" "
 W " >"
   N J F J=1:1:5 W "&nbsp;"
   W NMKV
 W " </td>"
 W "</tr>",!
 Q
 ;
CDKV(STAM) ;
 I $G(%ARG("CDKV")) Q %ARG("CDKV")
 I $$GET^%W1PRM("CDKV") Q $$GET^%W1PRM("CDKV")
 Q ""
 ;
MSD(STAM) ;
 I $G(%ARG("MSD")) Q %ARG("MSD")
 I $$GET^%W1PRM("MSD") Q $$GET^%W1PRM("MSD")
 Q ""
 ;
BACK ;
 ;I $$ONEMSD^W5MSD Q
 ;
 W "<input type=""button"" class=""btnsmall"" "
 I '$$ONEMSD^W5MSD D
 .W "value="""_$$^%W1DICT("BACK2RSTRN")_""" "
 I $$ONEMSD^W5MSD D
 .W "value="""_$$^%W1DICT("BACK")_""" "
 W " onClick=""Close()"" style=""color:red"" />",!
 Q
 
 

W5ITEM
W5ITEM ; [ 17.10.18 13:07 ] [ 08.02.16 14:30 ] [ 08.11.09 17:10 ] 
 N (JB,%ARG,%REM)
 I '$D(JB) W " JB number is not defined ! " Q
 I '$G(%ARG("MSD")) W " Restaurant number is not defined ! " Q
 I '$G(%ARG("GROUP")) W " Group code is not defined ! " Q
 S MSD=%ARG("MSD")
 D PUT^%W1PRM("MSD",MSD)
 S KV=%ARG("GROUP")
 ;
 D CRSUG^W3HZTFR ; ---> ^PARCAT
 ;
 S KVZ=$$^W4PARCAT
 ;
 S LCOD=5
 ;
 D TMPTF
 ;
 W "<div align=""center"" >",!
 ;
 W "<table dir="""_$$^%W1DIR_""" border=""1"">",!
 D
 .D PARSID(KV)
 .S PRTNP="" F  S PRTNP=$O(@TMPTF@(2,PRTNP)) Q:PRTNP=""  D
 ..N PRT S PRT=$G(^(PRTNP))
 ..I $G(@$$^W4GL("PAR")@(PRT))=0 Q
 ..D STR(PRT)
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
STR(PRT) ;
 W "<tr>"
 W "<td>"_PRT_"</td>"
 W "<td>"_$$H2U^%L1FRM($$SHEM^W4P(PRT))_"</td>"
 W "<td>"_$$H2U^%L1FRM($$DESC^W4P(PRT))_"</td>"
 W "<td>"_$J($$MH^W4P(PRT),2,2)_"</td>"
 W "<td>"_$S($$^W4EZAT(PRT):2,$D(@$$^W4GL("P1EZI")@(PRT)):1,1:0)_"</td>"
 ;;W "<td><img src="""_$$PIC^W4P(PRT)_""""
 ;; W " style=""width:100px;height:67px;border:solid 2px white"" />"
 ;;W "</td>",!
 W "</tr>",!
 Q
 ;
PARSID(N) ;
 N NP,PRT,MMM,I1,N2
 S I1=0  D TMPTF K @TMPTF@(2)
 ;
 I $D(@$$^W4GL@("P1PARSID")@(N))>9 D
 .S NP="" F  S NP=$O(@$$^W4GL("P1PARSID")@(N,NP)) Q:NP=""  D
 ..S N2=$G(^(NP)) Q:N2=""
 ..I '$D(@$$^W4PARCAT@(N,N2)) Q
 ..D CTF2
 ..S MMM(N2)=""
 S N2="" F  S N2=$O(@$$^W4PARCAT@(N,N2)) Q:N2=""  I '$D(MMM(N2)) D CTF2
 Q
 ;
CTF2 S I1=I1+1
 S @TMPTF@(2,I1)=N2
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 
 

W5MSD
W5MSD ; [ 13.01.14 17:36 ] [ 06.01.14 19:23 ] [ 05.01.14 16:56 ]
INIT ;
 D ^%W1ARG
 I '$G(%ARG("CALLCENTER")) D
 .D PUT^%W1PRM("SMALL",1),PUT^%W1PRM("DLVCSR","WEB")
 ;
 I $G(%ARG("CALLCENTER")) D
 .D PUT^%W1PRM("CALLCENTER",%ARG("CALLCENTER"))
 .I $G(%ARC("CALLCENTER"))=.5 D PUT^%W1PRM("DLVCSR",2)
 .I $G(%ARC("CALLCENTER"))=1 D PUT^%W1PRM("DLVCSR",3)
 .I $G(%ARC("CALLCENTER"))=2 D PUT^%W1PRM("DLVCSR",1)
 ;
 I $G(%ARG("MSDR")) D PUT^%W1PRM("MSDR",%ARG("MSDR"))
 I $G(%ARG("SIMUL")) D PUT^%W1PRM("SIMUL",%ARG("SIMUL"))
 I $G(%ARG("APPL")) D PUT^%W1PRM("APPL",%ARG("APPL"))
 D PUT^%W1PRM("COLOR","DRW")
 ;
 I $G(%ARG("MSD")) D
 .D PUT^%W1PRM("MSD",%ARG("MSD"))
 .D PUT^%W1PRM("ONEMSD",1)
 ;
 I $L($G(%ARG("HRFOP"))) D
 .D PUT^%W1PRM("HRFOP",%ARG("HRFOP"))
 Q
 ;
 ;
MSD(STAM) ;
 I $G(%ARG("MSD")) Q %ARG("MSD")
 I $$GET^%W1PRM("MSD") Q $$GET^%W1PRM("MSD")
 Q 0
 ;
ONEMSD(STAM) ;
 Q +$$GETP^%W1PRM("ONEMSD")
 ;
PRM2ARG ;
 I $$GET^%W1PRM("SIMUL") S %ARG("SIMUL")=$$GET^%W1PRM("SIMUL")
 I $$GET^%W1PRM("ONEMSD") S %ARG("ONEMSD")=$$GET^%W1PRM("ONEMSD")
 I $$GET^%W1PRM("HRFOP")["http" S %ARG("HRFOP")=$$GET^%W1PRM("HRFOP")
 I $$GET^%W1PRM("MSDR") S %ARG("MSDR")=$$GET^%W1PRM("MSDR")
 Q
 ;
ADDR(REST) ;
 Q $$SITE^W3R(REST)
 ;
CALLCENTER(STAM) ;
 I $G(%ARG("CALLCENTER")) Q $G(%ARG("CALLCENTER"))
 I $$GETP^%W1PRM("CALLCENTER") Q $$GETP^%W1PRM("CALLCENTER")
 Q $$CALLCENTER^W4PRM

W5MSGTRM
W5MSGTRM ; [ 28.09.18 17:41 ] [ 04.06.11 08:17 ] [ 31.05.11 14:49 ] 
 N (JB,CODE,%ARG) S ORD=JB
 ;
 ;;I $D(@$$^W3ORD@(JB)) Q
 ;
 I '$G(CODE) S CODE=$$GET^%W1PRM("CODE")
 S MSD=$$GET^%W1PRM("MSD")
 I MSD="" Q
 I $$^W3UCI(MSD)="" Q
 ;
 S WDTB="90%"
 ;
 D TERM^W3ORDVW
 ;
 ;
 N VT,CODTS S VT=""
 S CODTS=$$CODTS^W3HZMST(ORD,$$^W3ORD)
 S VT=$$^W3SHOWTS(CODTS)
 ;
 D HDMSD^W5ORDVW(MSD)
 W "<br>",!
 W "<table align=""center"" class=""tbround"" width=""90%"" "
  W "dir="""_$$^%W1DIR_""" id=""msgid"" cellpadding="""_$S($$^W4SIMUL:15,1:30)_""" >",!
 W " <tr><td></td></tr>",!
 W " <tr>"
 W "  <td style=""background-color:white;text-align:center"">",!
 W "   <p style=""color: red;font-size:"_$$^W3FSZ(22)_""">",$$^%W1DICT("THANKS"),"</p>",!
 W "   <p>",!
 W "   <span style=""font-size:"_$$^W3FSZ(20)_""">"
        W $$^%W1DICT("YOURORDERNUMBER")
 W "   </span>&nbsp;&nbsp;"
 W "   <span style=""color:brown;font-size:"_$$^W3FSZ(18)_""">"
         W ORD
 W "   </span><br>",!
 ;
 W "   <table dir="""_$$^%W1DIR_""" width=""100%""><tr>",!
 W "    <tr>",!
 W "     <td style=""text-align:center"" colspan=""2"" >"
  W "     <span>",$$^%W1DICT("PAID"),"&nbsp;"
  W "      <a style=""font-size:"_$$^W3FSZ_";color:brown"">"
            W $J($$TSHL^W3HZMST(ORD,$$^W3ORD),2,2)
  W "            </a>"
         W $$^%W1DICT("NIS"),"&nbsp;"
   W "     <a style=""color:brown;font-size:"_$$^W3FSZ_""">",VT,"</a>"
   W "     </span>"
 W "     </td>",!
 W "    </tr>",!
 ;
 W "    <tr>",!
 W "     <td>&nbsp;</td>"
 W "    </tr>",!
 ;
 W "    <tr>",!
 W "      <td style=""text-align:center"">"
  W "       <span>",$$^%W1DICT("TEL"),"</span>&nbsp;"
  W "         <a style=""font-size:"_$$^W3FSZ_";color:brown;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""" dir=""LTR"">"
               W $$NMB^W3HZMST(ORD,$$^W3ORD)
  W "         </a>"
 W "      </td>",!
 W "      <td style=""text-align:center"">"
  W "       <span>",$$^%W1DICT("PELE"),"</span>"
  W "        &nbsp;<span style=""font-size:"_$$^W3FSZ_";color:brown;text-align:"_$S($$^%W1DIR="RTL":"right",1:"left")_""" dir=""LTR"">"
             W $$PELE^W3HZMST(ORD,$$^W3ORD)
  W "       </span>"
  W "     </td>",!
 W "    </tr>"
 W "   </table>",!
 ;
 ;;W "   <br>"
     ;  W $$^%W1DICT("BEAVAILABLE"),! ; HEBREW --- MIS HAZMANA LMAAKAV ...
     ;  W "</span><br></p>",!
     ;
       W "<p style=""color:red"">"
         W $$^%W1DICT("SAVEYOURDETAILS"),! ; HEBREW -- BE AVAILABLE ...
       W "</p>",!
   W "</td>"
 W " </tr>",!
 ;
 W " <tr><td></td></tr>",!
 W "<table>",!
 W "</div>",!
 ;
 W "<br/><br/>",!
 ;
 W "<div align=""center"">",!
 ;
 W "<table dir="""_$$^%W1DIR_""">"
 W " <tr>"
 ;;W "<td>"
 ;; W "<input type=""button"" id=""feedback"" "
 ;; W "value="""_$$^%W1DICT("WHATYOURMIND")_""" onClick=""FeedBack()"" "
 ;; W "style=""color:brown"" />"
 ;;W "</td>",!
 ;
 D
 .W " <td><input type=""button"" id=""msgreg"" "
 .I CODE["!" W "  value="""_$$^%W1DICT("REGISTRY")_""" onClick=""SaveProfile('"_CODE_"')"" "
 .I CODE'["!" W "  value="""_$$^%W1DICT("UPDATEPROFILE")_""" onClick=""SaveProfile('"_CODE_"')"" "
 .W "  style=""color:blue"" />"
 .W " </td>"
 .W "<td>&nbsp;</td>"
 ;
 I '$$GETP^%W1PRM("ONEMSD") D
 .W "  <td>",!
 .W "   <input type=""button"" id=""msgclose"" "
 .W "    value="""_$$^%W1DICT("FINISH")_""""
 .W "    onClick=""Finish('"_CODE_"')"" "
 .W "    style=""color:red"" />"
 .W "  </td>"
 ;
 W " </tr>"
 W "</table>",!
 W "</div>",!
 ;
 I $D(@$$^W3ORD@(JB)) S $P(@$$^W3ORD@(JB),"~",4)=$ZD($H,"DD.MM.YY  24:60")
 ;
 D ^W3FAXHTM(JB,MSD)
 ;
END K ^[$$^W3MAIN]TMPORD(JB),^[$$^W3MAIN]TMPTF($$^%W1JB) ;;,^[$$^W3MAIN]TMPPRM(JB)
 K @$$^W4PARCAT
 Q
 
 

W5OPEN
W5OPEN ; [ 19.05.26 16:04 ] [ 28.06.11 16:00 ] [ 07.06.11 04:44 ] 
 I '$$^W4SIMUL D
 .S ^DLVCNT=$G(^DLVCNT)+1
 .I $G(%REM) S ^DLVCNT("ADDR",%REM)=$G(^DLVCNT("ADDR",%REM))+1
 .I $G(%ARG("MSD")) S ^DLVCNT("MSD",%ARG("MSD"))=$G(^DLVCNT("MSD",%ARG("MSD")))
 ;
 W "<div align=""center"" valign=""center"" dir="""_$$^%W1DIR_""">",!
  ;
  W "<table class=""tbround"" id=""tbopn"" align=""center"" width=""90%"" style=""position:absolute;top:8%;left:5%"" >",!
   D LINE
   ;
   W "<tr>"
    W "<td id=""congr"" >"
     W $$H2U^%L1FRM("`ad jexa"),!
    W "</td>",!
   W "</tr>",!
   ;
   ;;D LINE
   ;
   W "<tr>"
    W "<td id=""site"" >",!
     W $$H2U^%L1FRM("-l"),!
    ;;W "<a href=""http://www.dlv.co.il"" style=""font-size:"_$$^W3FSZ_""">",!
    W "<span id=""dlv"">",!
     W "dlv.co.il",!
    W "</span>",!
    ;;W "</a>",!
    W "</td>",!
   W "</tr>",!
   ;
   ;;D LINE
   ;
   W "<tr>"
   W " <td id=""develop"" >"
    W $$H2U^%L1FRM("gzety , xz`"),!
    W "<span id=""spec"">"_$$H2U^%L1FRM("cgeina")_"</span>",!
   W " </td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td id=""tomobile"">"
     W $$H2U^%L1FRM("miixlleq mixiyknn lke` zepnfdl"),!
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td id=""comp"" >"
     W $$H2U^%L1FRM("dxag ici lr"),!
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td id=""lev"" >"
     W "<a href=""https://www.2order.org"" target=""_blank"" >",!
      W $$H2U^%L1FRM("oiil oe` al"),"<br>"
      W "www.2order.org"
     W "</a>",!
    W "</td>",!
   W "</tr>",!
   ;
   D LINE
   ;
   W "<tr>"
    W "<td id=""rests"" >"
     W $$H2U^%L1FRM("l`xyia zeaeh ikd zecrqn jzexiyl"),!
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>"
     W $$H2U^%L1FRM("ugl dpnfdl"),!
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td>"
     W "<input type=""button"" value="""_$$^%W1DICT("HERE")_""" onClick=""ToRests()"" style=""color:green""/>",!
   W "</td>",!
  W "</tr>",!
  D LINE
 W "</table>",!
 W "</div>",!
 Q
 ;
LINE ;
 W "<tr><td></td></tr>",!
 Q
 

W5ORDDT1
W5ORDDT1(PRM,CODE) ; [ 17.10.18 13:08 ] [ 29.09.18 15:09 ] [ 13.10.13 13:51 ] 
 ;;I $G(NMB)="" K ^[$$^W3MAIN]TMPORD(JB)
 N FUTDAT,TODAT,TOTIME,PRMENU,GL,W3ORDDET
 N MSD S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W3ORDDET","PRM=PRM & CODE=CODE & MSD=MSD")
 Q:'$G(MSD)  Q:'$G(JB)
 ;
 S PRMENU=1
 S W3ORDDET=""
 ;---------------------------- FILL ^TMPORD ----
 I CODE["$" S CODE=$TR(CODE,"$","")
 S CODE=$$SPA^%L1FRM(CODE)
 I $L($G(CODE))>3 D PUT^%W1PRM("CODE",CODE)
 I $L($G(CODE))<4 S CODE=$$GET^%W1PRM("CODE") I CODE["UNDEF" S CODE=""
 ;
 N NMB S NMB="" I $$NMB^W3HZMST(JB) S NMB=$$NMB^W3HZMST(JB)
 ;
 I 'NMB S NMB=$P(CODE,"~")
 ;
 D GL ; -- TMPORD
 ;
 N HOMEPRM S HOMEPRM=""
 I CODE["~" S HOMEPRM=$P(CODE,"~",2),CODE=$P(CODE,"~")
 ;
 I CODE["!" D  ; ---- NEW CUST
 .S NMB=$$SPA^%L1FRM($P(CODE,"!")),CODE=""
 .S ^[$$^W3MAIN]TMPORD(JB,"NOCODE")=""
 .I NMB["~" S NMB=$P(NMB,"~")
 .D FILL(NMB) ; ---------------- FROM ^LKHA
 .I '$$NMB^W3HZMST(JB) D
 ..S $P(^[$$^W3MAIN]TMPORD(JB),"~",1)=$TR(NMB,"-","")
 ;
 I $G(CODE)="",$$LKH^W3L(NMB)="" S CODE=$G(NMB)
 ;
 D KILL^%W3DEB("W3ORDDET")
 D PUT^%W3DEB("W3ORDDET","ARG=[%ARG & CODE=CODE & JB=JB &MSD=MSD &NMB=NMB")
 ;
 D PUT^%W1PRM("NMB",NMB)
 ;
 I $G(CODE),$$D^W3L(CODE),$$NMB^W3HZMST(JB)?.P!($$NAME^W3HZMST(JB)?.P) D  G FORM
 .S $P(@GL@(JB),"~",1)=CODE
 .S $P(@GL@(JB),"~",2)=$$LKH^W3L(CODE)
 .S $P(@GL@(JB),"~",3)=$$KTV^W3L(CODE)
 .S $P(@GL@(JB),"~",7)=$TR($$CMNT^W3L(CODE),"~\","-/")
 .S $P(@GL@(JB),"~",13)=$$KOMA^W3L(CODE)
 .S $P(@GL@(JB),"~",14)=$$DIRA^W3L(CODE)
 .S $P(@GL@(JB),"~",15)=$$BAIT^W3L(CODE)
 .S $P(@GL@(JB),"~",16)=$$CNISA^W3L(CODE)
 .S $P(@GL@(JB),"~",27)=$TR(CODE,"-$","")
 .S $P(@GL@(JB),"~",31)=$$IR^W3L(CODE)
 .S $P(@GL@(JB),"~",32)=$$PELE^W3L(CODE)
 .S $P(@GL@(JB),"~",56)=$$EMAIL^W3L(CODE)
 .S $P(@GL@(JB),"~",59)=$$TELB^W3L(CODE)
 .
 .N COMP S COMP=$$COMP^W3L(CODE)
 .I $$^%W1LNG="H",COMP?.E1U.E D
 ..N J F J=1:1:$L(COMP) I $A(COMP,J)>95,$A(COMP,J)<123 D
 ..S COMP=$$FUNC^%UCASE($$INVH^%L1FRM(COMP))
 .S $P(@GL@(JB),"~",47)=COMP
 .D PUT^%W1PRM("NMB",CODE)
 ;
 ;
FORM ;--------------------------------------------------------------------
 ;
 ;------------------------------ PRM="INP" -----------
 ;
 W "<div align=""center"">",!
 ;
 W "<span style=""color:brown;font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">"
  W $$^%W1DICT("FILLORDERDETAILS")
 W "</span>",!
 W "<br />",!
 ;
 D OPTABLE W ">",!
  W "<tr>"
  S WIDTH="18%"
  W " <td width="""_WIDTH_""" >"
   K WIDTH W "&nbsp;"_$$ZW_$$^%W1DICT("MAZMINNAME") D TDE
   D TD D INP("NAME","70%",20,$$^%W1DIR,"T") D TDE
  W "</tr>",!
  ;
  W "<tr>"
   D TD W $S($$MUSTCOMP^W3PRM:$$ZW,1:" ")_$$^%W1DICT("COMPANYNAME") D TDE
   D TD D INP("COMP","70%",20,$$^%W1DIR,"T") D TDE
  W "</tr>",!
  ;
  W "<tr>"
  D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL") D TDE
  D
  .N TEL S TEL="TELB"
  .D TD D INP(TEL,"70%",14,"LTR") D TDE
  W "</tr>",!
  ;
  W "<tr>"
   D TD W $$^%W1DICT("MOBIL") D TDE
   D TD D INP("PELE","70%",14,"LTR") D TDE
  W "</tr>",!
  ;.
  W "<tr>"
   D TD W $$^%W1DICT("EMAIL") D TDE
   D TD D INP("EMAIL","90%",60,"LTR") D TDE
  W "</tr>",!
  ;
  W "<tr><td></td></tr>",!
 W "</table>" ;
 ;
 W "<br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
 W "<tr>"
 W " <td>",!
  W "  <input type=""button"" value="""_$$^%W1DICT("BACK2ORDER")_""""
  W "   onClick=""Back2Order()"" "
  W "  style=""color:red"""
 W " </td>"
 W " <td>",!
  W "  <input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""""
  W "    onClick=""Continue()"" "
  W "    style=""color:green"" "
 W " </td>"
 W " </tr>",!
 W "</table>",!
 ;---------------------------- END BUTTONS ---
 W "</div>",!
 ;
 Q
 ;
 ;
 ;
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 I $D(SIZE) W " style=""font-size:"_SIZE_""""
 I $D(DIR) W " dir="""_DIR_""""
 W " >",!
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
TDE W "</td>",!
 Q
 ;
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 D INP^W3ORDDET(RKV,$G(WD),$G(SIZE),$G(DIR),$G(PRTX)) ;
 Q
 ;
 ;
 ;
FILL(NMB) ;
 I $G(JB),'$G(CODE),$L($G(NMB))>3,$$NMB^W3HZMST(JB)?.P!($$NAME^W3HZMST(JB)?.P) D
 .N EXIST S EXIST=0
 .I $$D^W3L(NMB) D EXIST
 .
 .N NMB1 S NMB1=$TR(NMB,"-","") Q:NMB1=""
 .I EXIST D HOMEPRM(NMB1) Q
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .
 .N GL,GLTMP S GL=$$GLL^W3L
 .I '$$D^W3L(NMB1,GL),$G(@$$^W4GL("LKHAT")@(NMB1)) D
 ..S NMB1=@$$^W4GL("LKHAT")@(NMB1)
 ..I NMB1 D PUT^%W1PRM("CODE",NMB1_"!") S NMB=NMB1
 .I '$$D^W3L(NMB1,GL),$$^%W1LNG="H" D
 ..I $E(NMB1,1,2)="02" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="03" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="04" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="08" S NMB1=$E(NMB1,3,12) Q
 ..I $E(NMB1,1,2)="09" S NMB1=$E(NMB1,3,12) Q
 .
 .I $$D^W3L(NMB1) D EXIST D HOMEPRM(NMB1) Q
 .
 .I '$$D^W3L(NMB1,GL) D HOMEPRM(NMB1) Q
 .
 .I $G(HOMEPRM)?1N.N,+$$BAIT^W3L(NMB1,GL)'=+HOMEPRM D HOMEPRM(NMB1) Q
 .
 .S $P(@$$^W3TMPORD@(JB),"~",1)=NMB1
 .S $P(@$$^W3TMPORD@(JB),"~",2)=$$LKH^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",3)=$$KTV^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",7)=$$CMNT^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",13)=$$KOMA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",14)=$$DIRA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",15)=$$BAIT^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",16)=$$CNISA^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",31)=$$IR^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",32)=$$PELE^W3L(NMB1,GL)
 .S $P(@$$^W3TMPORD@(JB),"~",59)=$$TELB^W3L(NMB1,GL)
 Q
 ;
 ;
EXIST ;
 W "<script>",!
 W " MsgA(""PHONEOFMEMBER"")",!
 W "</script>",!
 S EXIST=1 Q
 ;
HOMEPRM(NMB1) ;
 I $G(HOMEPRM) S $P(^[$$^W3MAIN]TMPORD(JB),"~",15)=HOMEPRM Q
 Q
 ;
OPTABLE ;
 W "<table border=""0"" "
 W " id=""orddt1"" class=""tbround"" "
 W " cellspacing=""20px"" "
 W " cellpadding=""20px"" "
 W " style=""width:90%"" dir="""_$$^%W1DIR_""""
 Q
 ;
SUBMIT ;
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q " "
 Q "<span style=""color:red"">*</span>"
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
CLR(TXT) ;
 Q $$SPA^%L1FRM($$CLEAR^%L1FRM($$CNWEB^%L1FRM(TXT)))
 ;
VLD(PRM) ;
 N NAME,COMP,NMB,PELE,EMAIL,REZ
 S REZ="OK"
 S NAME=$P(PRM,";",1,1)
 S COMP=$P(PRM,";",2,2)
 S NMB=$TR($P(PRM,";",3,3),"-._","")
 S PELE=$TR($P(PRM,";",4,4),"-._","")
 S EMAIL=$P(PRM,";",5,5)
 ;
 I $L(NAME)<2 Q "FLDMUST^NAME!D^NAME"
 I $L(COMP)<2,$$MUSTCOMP^W3PRM Q "FLDMUST^COMPANYNAME!D^COMP"
 I $L(NMB)<2 Q "FLDMUST^PHONE!D^NMB"
 I $L(NMB)<7 Q "FLDMIN^PHONE!D;7^NMB"
 I $L(NMB)>11 Q "FLDMAX^PHONE!D;11^NMB"
 I NMB'?1N.N Q "FLDNUM^PHONE!D^NMB"
 I $L(PELE),$L(PELE)<7 Q "FLDMIN^PELE!D;7^PELE"
 I $L(PELE)>11 Q "FLDMAX^PELE!D;11^PELE"
 I $L(PELE),PELE'?1N.N Q "FLDNUM^PELE!D^PELE"
 I $L(EMAIL),EMAIL'["@",EMAIL'["." Q "FLDERR^EMAIL!D^EMAIL"
 I $L(EMAIL),$F(EMAIL,".")<$F(EMAIL,"@") Q "FLDERR^EMAIL!D^EMAIL"
 Q REZ
 
 
 
 
 
 

W5ORDDT2
W5ORDDT2(PRM) ; [ 18.12.18 06:30 ] [ 04.10.18 17:44 ] [ 30.09.18 11:58 ] 
 ;
 N FUTDAT,TODAT,TOTIME,PRMENU,GL,W3ORDDET
 N MSD S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W3ORDDET","PRM=PRM & CODE=CODE & MSD=MSD")
 Q:'$G(MSD)  Q:'$G(JB)
 ;
 S PRMENU=1
 S W3ORDDET=""
 ;---------------------------- FILL ^TMPORD ----
 S CODE=$$GETP^%W1PRM("CODE")
 ;
 N NMB S NMB="" I $$NMB^W3HZMST(JB) S NMB=$$NMB^W3HZMST(JB)
 ;
 I 'NMB S NMB=$P(CODE,"~")
 ;
 D GL ; -- TMPORD
 ;
FORM ;--------------------------------------------------------------------
 ;------------------------------ PRM="INP" -----------
 ;
 W "<div align=""center"">",!
 ;
 W "<span style=""color:brown;font-size:"_$$^W3FSZ(14)_";"_$$FONTFM^W3CSS_""">"_$$^%W1DICT("FILLORDERDETAILS")_"</span>",!
 W "<br />",!
 ;
 D OPTABLE W ">",!
 D
   .W "<tr><td></td></tr>",!
   .W "<tr ",!
   .I $$POLYGON^W4PRM W "style=""display:none"" "
   .W ">"
   .S WIDTH="25%" D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY") D TDE
   .S SPAN=3 D TD D INPCT("CITY","70%",20,$$^%W1DIR,"T") D TDE 
   .W "</tr>",!
   .
   .W "<tr>",!
   .W "<td id=""hdstreet"">" W $$ZW_$$^%W1DICT("STREET") D TDE
   .W "<td id=""tdstreet"" colspan=""3"">"
   . D INP("STREET","88%",40,$$^%W1DIR,"T")
   .D TDE
   .W "</tr>",!
   .
   .W "<tr>"
   .D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME1") D TDE
   .D TD D INP("HOME","70%",3,"LTR") D TDE
   .D TD W $$^%W1DICT("FLAT") D TDE
   .D TD D INP("FLAT","70%",5,"LTR") D TDE
   .W "</tr>",!
   .
   .
   .W "<tr>"
   .D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE") D TDE
   .D TD D INP("ENTRANCE","70%",5,$$^%W1DIR) D TDE
   .D TD W $$ZW_$$^%W1DICT("FLOOR") D TDE
   .D TD D INP("FLOOR","70%",5,$$^%W1DIR) D TDE
   .W "</tr>",!
   .
   .W "<tr>",!
   .D TD W "&nbsp;"_$$^%W1DICT("COMMENT") D TDE
   .S SPAN=3 D TD D INP("COMMENT","88%",40,$$^%W1DIR,"T") D TDE
   .W "</tr>",!
   .
   .W "<tr>"
   . D TD
   .  W "&nbsp;"_$$^%W1DICT("TODATE")
   . D TDE
   .S %W1DAT("TD")=""
   .S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
   .S %W1DAT("W3ORDHD")=""
   .W " <td colspan=""2""><table><tr>" D DAT W "</tr></table></td>",!
   .;;W " <td style=""color:green;font-weight:bold"">"_$$^%W1DICT("DLVPAY")_"</td>"
   .W "</tr>",!
   .
   .W "<tr>",!
   .S %W1DAT("W3ORDHD")=""
   .D TD W $$^%W1DICT("TOTIME") D TDE
   .D SHAA
   .W "</tr>",!
   .W "<tr><td></td></tr>",!
   .W "<tr style="""" >"
   . D TD W "&nbsp;"_$$^%W1DICT("DLVPAY") D TDE
   . W "<td>"
   .  W "  <input type=""text"" name=""dms"" id=""DMSH"" size=5 "
   .  W "   readonly=""readonly"" "
   .  W "   class=""botinp"" style=""color:green;font-weight:bold"" "
   .  W "   value="""_$J($$DMSH^W3HZMST(JB),2,2)_""" />",!
   . W "</td>"
   .W "</tr>",!
 ;
 W "</table>" ;
 ;
 ;
 ; --------------------- ------ BUTTONS ----------------------
 W "<br />",!
 W "<div align=""center"">",!
 W "<table width=""30%"" dir="""_$$^%W1DIR_""" border=0>",!
 W " <tr>"
 ;
 W "  <td align=""center"" >",!
  W "  <input type=""button"" value="""_$$^%W1DICT("BACK")_""" onClick=""Back2Prev()"" style=""color:red"" />"
 W "  </td>"
 W "  <td>&nbsp;</td>",!
 W "  <td align=""center"">",!
  W "  <input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" onClick=""TerminateOrd("_$G(JB)_")"" style=""color:green"" />"
 W "  </td>"
 W " </tr>",!
 W "</table>",!
 ;---------------------------- END BUTTONS ---
 W "</div>",!
 ;
 ;
 I $G(FUTDAT) D
 .W "<script>",!
 .N TOP S TOP=""
 .W "MsgIfr(self,""ifrmsg"",""FUTDAT"","""",""font-size:"_$$^W3FSZ(20)_";background-color:red;color:white"","""","""","""",'"_TOP_"')",!
 .W "</script>",!
 Q
 ;
 ;
GETDAT(STAM) ;
 N TODAT,DAT S TODAT=+$H
 N A S A=$$^W3TIME($H,$$CITY^W3HZMST(JB))
 I $D(W3TIME("ND")) S TODAT=TODAT+1
 S DAT=$$DAT^W3HZMST(JB)
 I DAT S TODAT=$$^%L1DC(DAT,3)
 Q TODAT
 ;
GETTIME(STAM) ;
 N TOTIME,SHAA,TODAT S TOTIME=$H
 S TOTIME=$P($$^W3TIME($H,$$CITY^W3HZMST(JB)),",",2)+600
 Q TOTIME
 ;
CHECKDAT(DT) ;
 I $G(FUTDAT),$$^%L1DC(DT,8)=6,$G(MSD)=1 Q 0
 Q ($$^W3VLDDT($$^%L1DC(DT,1))>0)
 ;
 ;
DAT ;
 N TXTDAT S TXTDAT="",TODAT=""
 I $$DAT^W3HZMST(JB) S TODAT=$$^%L1DC($$DAT^W3HZMST(JB),3)
 D KILL^%W1PRM("FUTDAT")
 ;
 S FUTDAT=0
 ;
 I 'TODAT D
 .S TODAT=$$GETDAT
 .N TOTIME S TOTIME=$$GETTIME
 .I $P(TOTIME,":")'?2N1":"2N!(TOTIME="00:00") S TOTIME=$P($H,",",2)
 .N P6 S P6=$$SHAA^W3HZMST(JB)
 .I 'P6 I $$^W3VLDTM($ZD(TODAT,"DDMMYY"),$$T^%L1TIME(TOTIME))=-3 D
 ..S TODAT=TODAT+1,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .I '$$CHECKDAT(TODAT) D
 ..N DT F DT=TODAT+1:1:TODAT+200 Q:$$CHECKDAT(DT)
 ..S TODAT=DT,FUTDAT=TODAT D PUT^%W1PRM("FUTDAT",FUTDAT)
 .
 .I $$NMB^W3HZMST(JB) D PUT^W3HZMST(JB,"DAT",$$^%L1DC(TODAT,1))
 ;
 S %W1DAT("CLND")="2;60"
 D ^%W1DAT("DAT",TODAT,TXTDAT)
 Q
 ;
 ;
SHAA ;
 W "<td id=""SHAATD"" dir=""LTR"" colspan=""2"" "
  W "align="""_$S($$^%W1DIR="RTL":"right",1:"left")_""">"
  W $$FILLTM(TODAT),!
 W "</td>",!
 Q
 ;
TD ;
 W "<td "_$S($D(WIDTH):" width="""_WIDTH_"""",1:"")
 I $G(SPAN) W " colspan="""_SPAN_""""
 I $D(ALIGN) W " align="""_ALIGN_""""
 I $D(SIZE) W " style=""font-size:"_SIZE_""""
 I $D(DIR) W " dir="""_DIR_""""
 W " >",!
 K SPAN,WIDTH,ALIGN,SIZE,DIR
 Q
TDE W "</td>",!
 Q
 ;
DATCB W "<td width=""16%"">"_$$^%W1DICT("RECEIVED")_" : "_$$RPL^%L1FRM($$DATCB^W3HZMST(JB,$G(GL,$$^W3ORD))," ","&nbsp;")_"</td>",!
 Q
 ;
INP(RKV,WD,SIZE,DIR,PRTX) ;
 D INP^W3ORDDET(RKV,$G(WD),$G(SIZE),$G(DIR),$G(PRTX))
 Q
 ;
 ;
SPANSTYLE(RKV) ;
 D SPANSTYLE^W3ORDDET(RKV) ;
 Q
 ;
 ;
INPCT(RKV,WD,SIZE,DIR,PRRG,PRTX) ;
 D INPCT^W3ORDDET(RKV,WD,SIZE,$G(DIR),$G(PRRG),$G(PRTX)) ;
 Q
 ;
SHOWVL(VL) W "<b>"_VL_"</b>",!
 Q
 ;
RKV(RKV)
 D RKV^W3ORDDET(RKV)
 Q
 ;
P(I)
 D P^W3ORDDET(I)
 Q
 ;
GETSNIF(STAM) ;
 Q $$GETSNIF^W3SNIF
 ;
ET W "</table>",!
 I '$G(W3FAXHTM) W "</div>",!
 Q
 ;
TODAY(DAT) ;
 I $$^%L1DC(DAT,3)=+$H Q 1
 Q 0
 ;
HOMEPRM(NMB1) ;
 I $G(HOMEPRM) S $P(^[$$^W3MAIN]TMPORD(JB),"~",15)=HOMEPRM Q
 Q
 ;
OPTABLE ;
 W "<table id=""orddt2"" class=""tbround"" border=""0"" "
 W " cellpadding=""12px"" "
 W " style=""width:92%"" dir="""_$$^%W1DIR_""""
 W " onClick=""HideStreet('table')"""
 Q
 ;
PADDING ;
 S PADDING=""
 Q
RWSTYLE ;
 Q
 ;
ZW(STAM) ;
 I $G(PRM)="VW" Q " "
 Q "<span style=""color:red"">*</span>"
 ;
ADDRESS ;
 D ADDRESS^W3ORDDET
 Q
 ;
FILLTM(TODAT) ;
 Q $$FILLTM^W3ORDDET(TODAT)
 ;
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
MUSTSTREET(CITYI) ;
 D MUSTSTREET^W3ORDDET(CITYI)
 Q
 ;
CLR(TXT) ;
 Q $$SPA^%L1FRM($$CLEAR^%L1FRM($$CNWEB^%L1FRM(TXT)))
 ;
SORTCITY ;
 D SORTCITY^W3ORDDET
 Q
 ;
NEWMIN(PRM) ;
 D NEWMIN^W3ORDDET(PRM)
 Q
 ;
TAKEAWAY(STAM) ;
 I '$D(NOTAKEAWAY),$$TAKEAWAY^W3PRM Q 1
 Q 0
 ;
 ;
VLD(PRM) ;
 N NAME,COMP,NMB,PELE,EMAIL,REZ
 S REZ="OK"
 S CITY=$$CNWEB^%L1FRM($P(PRM,"^",1,1))
 S STREET=$$CNWEB^%L1FRM($P(PRM,"^",2,2))
 ;
 ;;S ^AA("W5ORDDT2","PRM")=PRM
 ;;S ^AA("W5ORDDT2","CITY-VLD")=CITY
 ;;S ^AA("W5ORDDT2","STREET-VLD")=STREET
 ;
 I $$RPL^%L1FRM(CITY,"&nbsp;","")?.P,STREET[";" D
 .S CITY=$$SPA^%L1FRM($P(STREET,";",2))
 .I CITY'="" D PUT^W3HZMST(JB,"CITY",$$INVH^%L1FRM(CITY))
 .S STREET=$$SPA^%L1FRM($P(STREET,";",1))
 .D PUT^W3HZMST(JB,"STREET",$$INVH^%L1FRM(STREET))
 .;;S ^AA("W5ORDDT2","CITY-VLD1")=$$INVH^%L1FRM(CITY)
 .;;S ^AA("W5ORDDT2","STREET-VLD1")=$$INVH^%L1FRM(STREET)
 ;
 S HOME=$P(PRM,"^",3,3)
 S FLOOR=$P(PRM,"^",4,4)
 ;
 I $L(CITY)<2 Q "FLDMUST^CITY!D^CITY"
 ;
 I CITY'="TAKEAWAY" D
 .I $L(STREET)<2 S REZ="FLDMUST^STREET!D^STREET"
 .I $L(HOME)=0 S REZ="FLDMUST^HOME!D^HOME"
 .I $$MUSTFLOOR^W3PRM,FLOOR="" S REZ="FLDMUST^FLOOR!D^FLOOR"
 ;
 Q REZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W5ORDRG
W5ORDRG(PRM,CODE) ; [ 17.10.18 13:08 ] [ 30.09.18 19:31 ] [ 28.09.18 12:11 ] 
 ;
 N (JB,%ARG,CODE,PRM)
 N TDWIDTH,TDALIGN,TDDIR
 D KILL^%W3DEB("W3ORDRG")
 D PUT^%W3DEB("W3ORDRG","CODE=CODE & PRM=PRM & %ARG=[%ARG")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 D PUT^%W3DEB("W3ORDRG","MSD=MSD")
 ;
 N GL D GL^W3L
 I '$D(CODE) S CODE=""
 N PRNEW S PRNEW=0
 ;I $G(CODE)["NEW" S CODE=$$NMB^W3HZMST(JB),PRNEW=1
 I $G(CODE)["!" S CODE=$P(CODE,"!"),PRNEW=2,GL=$$GLL^W3L
 E  I CODE'="",'$$D^W3L(CODE) S GL=$$GLL^W3L,PRNEW=2
 ;
 W "<div align=""center"">",!
 W "<table id=""TblHeadVw"" class=""hdvw"" width=""100%"" border=""0"" style="""_$$RAD^W3CSM("1em")_""">",!
 I PRNEW W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("NEWREGISTRY")_"</td></tr>",!
 I 'PRNEW W "<tr><td dir="""_$$^%W1DIR_""" style=""padding:3"">"_$$^%W1DICT("UPDATEPROFILE")_"</td></tr>",!
 W "</table>",!
 ;
 W "<span style='color:red;font-size:"_$$^W3FSZ(10)_"'>"
    W $$^%W1DICT("FLDMUSTASTR")
 W "</span>",!
 W "<br>",!
 ;
 W "<table width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W " <tr>"
    D CODE
 W " </tr>"
 W " <tr>"
    D PSW
 W " </tr>",!
 W "</table>",!
 ;
 W "<br />",!
 W "<table class=""tbround"" width=90% border=0 dir="""_$$^%W1DIR_""" >",!
 W " <tr>" D NAME W "</tr>",!
 ;
 W " <tr>" D COMP W "</tr>",!
 ;
 W " <tr>",!
   D NMB
 W " </tr>",!
 ;
 W " <tr>"
   D PELE
 W " </tr>",!
 W " <tr>"
 D EMAIL
 W " </tr>"
 W "<tr>",!
   D CITY
 W "</tr>",!
 W "<tr>",!
 D STREET
 W "</tr>",!
 W "<tr>",!
 D HOME
 D FLAT
 W "</tr>",!
 W "<tr>",!
  D ENTRANCE
  D FLOOR
 W "</tr>",!
 W "<tr>",!
  D COMMENT
 W "</tr>",!
  ;;D AGREE
 W "<tr><td></td></tr>",!
 W "</table>",!
 W "</div>",!
 ;
 W "<br>",!
 W "<div align=""center"">",!
 ;
 W "<table><tr><td>",!
 W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" style=""color:green"" onClick=""Submit()"" />",!
 W "</td><td>",!
 W "&nbsp;"
 W "</td><td>",!
 W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" style=""color:red"" onClick=""Back()"" />",!
 W "</td></tr></table>",!
 W "</div>",!
 Q
 ;
 ;
CODE N TDALIGN S TDALIGN=$S($$^%W1DIR="RTL":"right",1:"left")
 S TDWIDTH="70%"
 D TD W "&nbsp;"_$$ZW_$$^%W1DICT("USERCODE")_"<br>"
 W "<span style=""font-size:"_$$^W3FSZ(8)_";color:brown"">"_$$^%W1DICT("TELRECOMMEND")_"</span></td>"
 W "<td>" D INPC("CODE",360*$$KF,12,"LTR")
 Q
 ;
PSW S TDALIGN=$S($$^%W1DIR="RTL":"right",1:"left") D TD
 W "&nbsp;"_$$ZW_$$^%W1DICT("PASSWORD")
 W "<span>"_$$^%W1DICT("NUMBERONLY1")_"</span><br><br>"
 W "<span style=""color:green;font-weight:bold"">&nbsp;&nbsp;"_$$^%W1DICT("RETYPEPSW")_"</span>"
 W "</td>"
 ;
 W "<td>"
 D INP("PSW",360*$$KF,12,"LTR")
 Q
 ;
 ;
NMB D TD W "&nbsp;"_$$ZW_$$^%W1DICT("TEL")_"</td>"
 W "<td colspan=""2"">&nbsp;"
 D INP("NMB",360*$$KF,12,"LTR")
 Q
 ;
PELE D TD W "&nbsp;"_$$^%W1DICT("MOBIL")_"</td>"
 W "<td colspan=""2"">&nbsp;"
 D INP("PELE",360*$$KF,12,"LTR")
 Q
 ;
NAME S TDWIDTH="28%" D TD W "&nbsp;"_$$ZW_$$^%W1DICT("NAME")_"</td>"
 W "<td colspan=""2"">&nbsp;"
 D INP("NAME",400*$$KF,24,$$^%W1DIR)
 Q
 ;
COMP D TD W "&nbsp;"_$$^%W1DICT("COMPANYNAME")_"</td>"
 W "<td colspan=""2"">&nbsp;"
 D INP("COMP",400*$$KF,24,$$^%W1DIR)
 Q
 ;
STREET D TD W "&nbsp;"_$$ZW_$$^%W1DICT("STREET")_"</td>"
 W "<td colspan=""3"">&nbsp;"
 D INP("STREET","95%",30,$$^%W1DIR)
 Q
 ;
HOME D TD W "&nbsp;"_$$ZW_$$^%W1DICT("HOME")_"</td>"
 W "<td>&nbsp;"
 D INP("HOME",120*$$KF,3,"LTR")
 Q
 ;
FLAT D TD W "&nbsp;"_$$^%W1DICT("FLAT")_"</td>"
 W "<td>&nbsp;"
 D INP("FLAT",120*$$KF,5,"LTR")
 Q
 ;
ENTRANCE D TD W "&nbsp;"_$$^%W1DICT("ENTRANCE")_"</td>"
 W "<td>&nbsp;"
 D INP("ENTRANCE",120*$$KF,5,$$^%W1DIR)
 Q
 ;
FLOOR D TD W "&nbsp;"_$$ZW_$$^%W1DICT("FLOOR")_"</td>"
 W "<td>&nbsp;"
 D INP("FLOOR",120*$$KF,3,$$^%W1DIR)
 Q
 ;
CITY D TD W "&nbsp;"_$$ZW_$$^%W1DICT("CITY")_"</td>"
 W "<td colspan=""2"">&nbsp;"
 I $D(@$$^W4GL("P1IR"))>9 D  Q
 .N NOTAKEAWAY S NOTAKEAWAY=""
 .N NMB S NMB=CODE
 .D INPCT^W3ORDDET("CITY",400,20,$$^%W1DIR,CODE_$S(PRNEW=1:"R",1:""))
 D INP("CITY",400*$$KF,20,$$^%W1DIR)
 Q
 ;
COMMENT D TD W "&nbsp;"_$$^%W1DICT("COMMENT")_"</td>"
 W "<td colspan=""3"" >&nbsp;"
 D INP("COMMENT",670*$$KF,40,$$^%W1DIR)
 Q
 ;
AGREE W "<tr>" S TDSPAN=3
 N TDALIGN S TDALIGN=$S($$^%W1DIR="RTL":"right",1:"left")
 D TD W "<span style=""color:brown"" >"
 W "&nbsp;"_$$^%W1DICT("AGREERCVINF")_"</span>&nbsp;"
 W "</td>"
 W "<td>"
  N AGREE S AGREE="" I $$AGREE^W3L(CODE) S AGREE=" checked=""checked"" "
  W "<input type=""checkbox"" id=""AGREE"" name=""AGREE"" "_AGREE
  W " onClick=""ClickSmallChk('AGREE','lbchk')"" "
  W ">",!
  W " <label for=""AGREE"" id=""lbchk"" class=""bgbtn"" style=""cursor:pointer"">",!
   I $$AGREE^W3L(CODE) W $$SHOWV^W3CSM
   E  W $$SHOWO^W3CSM
  W " </label>",!
 W "</td>",!
 W "</tr>",!
 Q
 ;
EMAIL D TD W "&nbsp;"_$$ZW_$$^%W1DICT("EMAIL")_"</td>"
 W "<td colspan=""3"">&nbsp;" D INP("EMAIL","90%",60,"LTR")
 Q
 ;
YOMH D TD
 W "&nbsp;"_$$^%W1DICT("BIRTHDAY")_"</td>"
 W "<td dir=""LTR"""
 I $$^%W1DIR="RTL" W " align=""right"""
 W " >"
 S %W1DAT("ALIGN")=$S($$^%W1DIR="RTL":"right",1:"left")
 D INP("YOMH",8,8,"D")
 Q
 ;
ISCR ;
 D TD I '$$RKV("ISCR") W "&nbsp;</td><td>&nbsp;</td>" Q
 W "&nbsp;"_$$^%W1DICT("ISCR")_"</td><td>&nbsp;&nbsp;"
 N MZV S MZV=$S($$RKV("ISCR"):$$^%W1DICT("YES"),1:$$^%W1DICT("NO"))
 W "<span class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;"_MZV_"&nbsp;</span>",!
 Q
 ;
ISCH ;
 D TD I '$$RKV("ISCH") W "&nbsp;</td><td>&nbsp;</td>" Q
 W "&nbsp;"_$$^%W1DICT("ISCH")_"</td><td>&nbsp;&nbsp;"
 N MZV S MZV=$S($$RKV("ISCH"):$$^%W1DICT("YES"),1:$$^%W1DICT("NO"))
 W "<span class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">&nbsp;"_MZV_"&nbsp;</span>",!
 Q
ZW(STAM) Q "<span style=""color:red"">*</span>"
 ;
TD ;
 W "<td "_$S($D(TDWIDTH):" width="""_TDWIDTH_"""",1:"")
 I $D(TDDIR) W " dir="""_TDDIR_""""
 I $D(TDSPAN) W " colspan="""_TDSPAN_""""
 I $D(TDALIGN) W " align="""_TDALIGN_""""
 I '$D(TDALIGN) W " align="""_$S($$^%W1DIR="RTL":"left",1:"right")_""""
 W " >",!
 K TDSPAN,TDWIDTH,TDALIGN,TDDIR
 Q
 ;
INP(RKV,WD,SIZE,DIR) ;
 I DIR'="D" D
 .W "<input type="""_$S(RKV="PSW":"password",1:"text")_""" "
 .W " maxlength="""_SIZE_""""
 .W " style=""width:"_WD
 .I $$^%W1DIR="RTL",RKV'="EMAIL" W ";text-align:right"
 .W """"
 .W " onClick=""OnInpClick(this)"" "
 .W " onBlur=""OnInpBlur(this)"" "
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""""
 .
 .N RKVL S RKVL=$$RKV(RKV,DIR)
 .
 .I RKV'="PSW"!'$L(RKVL) D
 ..I RKV="HOME",$G(HOME) W " value="""_HOME_"""" Q
 ..
 ..I RKV="STREET" D
 ...N VL S VL=$$RKV(RKV)
 ...W " onFocus=""noIfrHide=1"""
 ...I $D(^[$$^W3MAIN]P1STREET($$COUNTRY^W3PRM))>9 D
 ....W " onKeyUp=""FindStreet(this)"""
 ..
 ..W " value="""_RKVL_""""
 .
 .I RKV="PSW" D
 ..W " value="""_$$PSW^W3L(CODE)_""""
 ..W " onKeyUp=""NumberOnly(event,'PSW')"""
 ..W " onClick=""this.select()"""
 ..W " /><br /><br />",!
 ..
 ..W "<input type=""password"" maxlength="""_SIZE_""""
 ..W " style=""width:"_(360*$$KF)_"px"
 ..I $$^%W1DIR="RTL" W ";text-align:right"
 ..W """"
 ..W " value="""_RKVL_""""
 ..W " dir="""_DIR_""" name=""PSW"" id=""PSW1"""
 ..W " onKeyUp=""NumberOnly(event,'PSW1')"""
 ..W " onClick=""this.select()"""
 .
 .I RKV="EMAIL" D
 ..W " onKeyUp=""EnglishOnly(event,'EMAIL')"""
 .
 .W " />",!
 ;
 I $G(PRM)="IN",DIR="D" D
 .I '$G(CODE) D ^%W1DAT("YOMH","-","") Q
 .D ^%W1DAT("YOMH",$$RKV(RKV),"") Q
 ;
 W "</td>",!
 Q
 ;
 ;
INPC(RKV,WD,SIZE,DIR) ;
 I $G(PRM)="IN" D
 .N CD S CD=$$GET^%W1PRM("CODE")
 .I CD["!" S CODE=$P(CD,"!")
 .I $G(CODE)="",PRNEW=1 S CODE=$$RKV("NMB","LTR")
 .I PRNEW S CODE=$TR(CODE,"-","")
 .W "<input type=""text"" maxlength="""_SIZE_""" style=""width:"_WD_""""
 .W " dir="""_DIR_""" name="""_RKV_""" id="""_RKV_""" value="""_CODE_""""
 .W " onKeyPress=""KeyPress(this,event)"""
 .W " onBlur=""TestCust('CODE');CheckCode(this)"""
 .W " />"
 W "</td>",!
 Q
 ;
RKV(FLD,DIR)
 N A
 I $$P(FLD)'="",$$D^W3L(CODE) Q $$P(FLD)
 ;
 I $G(JB),$D(@$$^W3ORD@(JB))#2,PRNEW D  I $G(A)'="" Q A
 .S A=$$GET^W3HZMST(JB,FLD,$$^W3ORD)
 .I $$GET^W3HZMST(JB,"CITY",$$^W3ORD)="TAKEAWAY",FLD="STREET"!(FLD="HOME")!(FLD="FLAT")!(FLD="FLOOR")!(FLD="ENTRANCE") S A=""
 .I A="" S A="&nbsp;" Q
 .S A=$$H2U^%L1FRM(A) Q
 ;
 I $$P(FLD)'="" Q $$P(FLD)
 ;
 Q "&nbsp;"
 ;
P(FLD)
 N OK S OK=0
 I $G(CODE)="" Q ""
 I $G(PRNEW)=1 Q ""
 I '$$D^W3L(CODE),$G(PRNEW)'=2 Q ""
P1 I FLD="CODE" Q $G(CODE)
 I FLD="NMB" Q $$TELB^W3L(CODE,GL)
 I FLD="NAME" Q $$H2U^%L1FRM($$LKH^W3L(CODE,GL))
 I FLD="PSW" Q $$PSW^W3L(CODE,GL)
 I FLD="PELE" Q $$PELE^W3L(CODE,GL)
 I FLD="STREET" Q $$H2U^%L1FRM($$KTV^W3L(CODE,GL))
 I FLD="HOME" Q $$BAIT^W3L(CODE,GL)
 I FLD="FLAT" Q $$DIRA^W3L(CODE,GL)
 I FLD="ENTRANCE" Q $$H2U^%L1FRM($$CNISA^W3L(CODE,GL))
 I FLD="FLOOR" Q $$H2U^%L1FRM($$KOMA^W3L(CODE,GL))
 I FLD="CITY" Q $$H2U^%L1FRM($$IR^W3L(CODE,GL))
 I FLD="COMMENT" Q $$H2U^%L1FRM($$CMNT^W3L(CODE,GL))
 I FLD="EMAIL" Q $$EMAIL^W3L(CODE,GL)
 I FLD="FAX" Q $$FAX^W3L(CODE,GL)
 I FLD="YOMH" Q $$JOMH^W3L(CODE,GL)
 I FLD="ISCR" Q $$ISCR^W3L(CODE,GL)
 I FLD="ISCH" Q $$ISCH^W3L(CODE,GL)
 I FLD="COMP" Q $$H2U^%L1FRM($$COMP^W3L(CODE,GL))
 I FLD="AGREE" Q $$AGREE^W3L(CODE,GL)
 Q ""
 ;
KF(STAM) ;
 I $$^W4SMALL,'$$^W4SIMUL Q 1
 Q .3
 
 
 
 
 
 
 
 
 
 

W5ORDVW
W5ORDVW(PC) ; [ 06.10.18 11:51 ] [ 30.09.18 19:07 ] [ 28.09.18 12:04 ] 
 ; PC = 1 - SHOW FROM CUSTOMER ORDER
 ; PC = 1.5 - SHOW FROM CUSTOMER ORDER (COMPRESS VIEW)
 ;----------------------------------------------------------------------------
 N (%ARG,JB,PC,%REM,COMPRVIEW)
 K @$$^W3TMPORD@(JB,"BACK")
 S JB0=JB
 S PR800=$$GET^%W1PRM("PR800")
 D KILL^%W3DEB("W5ORDVW")
 D PUT^%W3DEB("W5ORDVW","PC=PC & ARG=[%ARG")
 ;
 S MSD=$$GET^%W1PRM("MSD")
 ;
 S CODE=$$GET^%W1PRM("CODE")
 I CODE["!" S CODE=$P(CODE,"!")
 I 'CODE S CODE=""
 ;
 D PUT^%W3DEB("W5ORDVW","MSD=MSD")
 I 'MSD Q
 D GL
 S (MEDAT,ADDAT,ORD)=""
 ;
 D PUT^%W3DEB("W5ORDVW","CODE=CODE")
 ;
 ;;I '$$CLOSE^W3HZMST(JB),'$$MKR^W3HZMST(JB) D
 .I '$$^W3HZMH(JB) D
 ..S $P(@$$^W3TMPORD@(JB),"~",38)=$$AHUZ^W3HZTFR
 ..S $P(@$$^W3TMPORD@(JB),"~",8)=$J($$AHUZ^W3HZMST(JB)*$$TOTORD("D")*.01,2,2)
 ..S $P(@$$^W3TMPORD@(JB),"~",11)=$$TSHL^W3HZMST(JB)
 .S $P(@$$^W3TMPORD@(JB),"~",51)=14
 .Q
 ;
 S WDTB="90%"
 ;
 D W("<div align=""center"" >")
 ;
 W "<br />",!
  D HDMSD(MSD)
 W "<br />",!
 ;
 I 'PC D
 .D TOPAY
 .D W("<br />")
 .D BTNSHOWORD1
 .D BTNSHOWORD2
 ;
 I PC D SHOWORD
 ;
 D PAYMENTS
 ;
 D W("<br />")
 D BUTTONS
 ;
 Q
 ;
 ;
TOPAY ;
 D W("<table dir="""_$$^%W1DIR_""" width="""_WDTB_""" class=""tbround"">")
  D W("<tr>")
   D W("<td>")
     D W($$^%W1DICT("TOTORD"))
   D W("</td>")
   D W("<td style=""color:green"">")
    D W($J($$TOTORD^W3HZMST(JB),2,2))
   D W("</td>")
  D W("</tr>")
  ;
  D W("<tr>")
   D W("<td >")
     D W($$^%W1DICT("DISC",$$AHUZ^W3HZMST(JB)))
   D W("</td>")
   D W("<td style=""color:red"">")
    D W($J($$HNH^W3HZMST(JB),2,2))
   D W("</td>")
  D W("</tr>")
  ;
  D W("<tr>")
   D W("<td>")
     D W($$^%W1DICT("DLVPAY"))
   D W("</td>")
   D W("<td style=""color:green"">")
    D W($J($$DMSHMSD^W3HZMST(JB),2,2))
   D W("</td>")
  D W("</tr>")
  ;
  D W("<tr>")
   N FSZ S FSZ=24 I $$^W4SIMUL S FSZ=16
   D W("<td style=""font-size:"_$$^W3FSZ(FSZ)_""" >")
    D W($$^%W1DICT("TOPAY"))
   D W("</td>")
   D W("<td style=""color:darkblue;font-weight:bold"">")
    D W($J($$TSHL^W3HZMST(JB),2,2))
   D W("</td>")
  D W("</tr>")
  ;
 D W("</table>")
 Q
 ;
 ;
BTNSHOWORD1 ;
 Q
 ;
BTNSHOWORD2
 Q
 ;
SHOWORD ;
 D VWHD
 D W("<br>")
 ;
 S HZMH=$$^W3HZMH(+$$HZ)
 ;
 D W("<div align=""center"">")
 ;
 D W("<br>")
 ;
 D VWORD
 Q
 ;
 ;
BUTTONS
 D W("<div id=""divbut"" align=""center"" >")
 D W("<table dir="""_$$^%W1DIR_""">")
 D W(" <tr>")
  D W(" <td>")
  D W("  <input type=""button"" name=""update"" id=""updid"" ")
  D W("   onClick=""Back2Ord()"" style=""color:red"" ")
  D W("   value="""_$$^%W1DICT("BACK")_""" ")
  D W("  />")
  D W(" </td>")
  D W(" <td width=""10%"">&nbsp;</td>")
  D W(" <td>")
  D W("  <input type=""button"" name=""subm"" id=""submid"" ")
  D W("    style=""color:green"" ")
  D W("    value="""_$$^%W1DICT("SUBMIT")_"""")
         D W($$CLICKPC1_" />")
  D W(" </td>")
 D W(" </tr>")
 D W("</table>")
 D W("</div>")
 Q
 ;
CLICKPC1(STAM) ;
 Q " onClick=""SaveOrd('TblOrdVw','"_$S($D(@GL@(JB,"NOCODE")):"",1:$G(CODE))_"')"""
 ;
CDA(A) ;
 Q $$CDA^W3ORDVW($G(A))
 ;
CDC(A) ;
 Q $$CDC^W3ORDVW($G(A))
 ;
CDH(A) ;
 Q $$CDH^W3ORDVW($G(A))
 ;
CD(A) ;
 Q $$CD^W3ORDVW($G(A))
 ;
NAM(A) ;
 Q $$NAM^W3ORDVW($G(A))
 ;
MH(A) ;
 Q $$MH^W3ORDVW($G(A))
 ;
QN(A) ;
 Q $$QN^W3ORDVW($G(A))
 ;
QNR(A) ;
 Q $$QNR^W3ORDVW($G(A))
 ;
QNPIZZA(A) ;
 Q $$QNR^W3ORDVW($G(A))
 ;
SUM(A) Q $$SUM^W3ORDVW($G(A))
 ;
TOT(STAM) ;
 Q $$TOT^W3ORDVW
 ;
TOTORD(PRM) ;
 Q $$TOTORD^W4GETSUM(JB,$G(PRM))
 ;
FIRSTNAME(STAM) ;
 Q $$FIRSTNAME^W3ORDVW
 ;
LASTNAME(STAM) ;
 Q $$LASTNAME^W3ORDVW
 ;
NMTD(SH) ;
 Q "QN"_SH
 ;
NMTDI(SH) ;
 Q "QNID"_SH
 ;
SHOWTS(HZ,GL) ;
 I '$D(GL) D GL
 N JB S JB=HZ
 I $$^W3HZMH(HZ) Q $$^%W1DICT("HZMH")
 Q $$^W3SHOWTS($$CODTS^W3HZMST(HZ,GL))
 ;
 ;
TERM ;
 D TERM^W3ORDVW
 Q
 ;
TDHR ;
 D W("<tr>")
 N J F J=1:1:CC D W("<td><hr></td>")
 D W("</tr>")
 Q
 ;
CMTD ;
 D W("   <td id=""cmtd"_I_""" class=""hdgr"" style=""font-size:"_$$^W3FSZ_";text-align:center"" >&nbsp;")
    I PC<2,'$G(W3FAXHTM) D
       .D W("<input type=""text"" value="""_$$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))_"""")
       .D W(" id=""CM"_I_""" name=""CM"_I_""" class=""vwcmnt"" size=""32"" maxlength=""36"" >&nbsp;")
       .S ^[$$^W3MAIN]TMPORD(JB,I,"CM")=""
    I PC>1.9!$G(W3FAXHTM) D
       .W $$H2U^%L1FRM($$CMST^W3HZMST(JB,I,GL))
 D W("   </td>")
 Q
 ;
HDMSD(MSD) ;
 I '$D(WDTB) S WDTB="90%"
 D W("<table width="""_WDTB_""" id=""TblHeadMsd"" name=""TblHeadMsd"" class=""hdmsd"" dir="""_$$^%W1DIR_""">")
 D W("<tr>")
   D W("<td >"_$$NAME^W3MSD(MSD)_"</td>")
 D W("</tr>")
 D W("</table>")
 Q
 ;
TRPM(VT,ID,NM)
 D W(" <tr>")
 ;;D W("   <td id="""_ID_"id"" class=""bgbtn1"" >")
 D W("   <td id="""_ID_"id"" >")
 D W("    <label id=""lbnm"_ID_""" for="""_ID_""" style=""cursor:pointer"">"_$$^%W1DICT(NM)_"</label>")
 D W("   </td>")
 D RADIOPM(VT,ID)
 D W(" </tr>")
 Q
 ;
CHECKED(VT) ;
 Q $S($$CODTS^W3HZMST(JB)=VT:" checked=""checked""",1:"")
 ;
RADIOPM(VT,ID)
 D W("   <td align=""center"" valign=""center"" >")
 D W("     <input type=""radio"" class=""radiovw"" id="""_ID_""" ")
    D W(" name=""payment"" ")
    D W($$CHECKED(VT)_" onClick=""SubmPay('"_ID_"')"" />")
    ;
    D W(" <label id=""lb"_ID_""" for="""_ID_""" class=""bgradio"" style=""cursor:pointer""></label>")
 D W("   </td>")
 Q
 ;
PAYMENTS ;
 S HZMH=$$^W3HZMH(+$$HZ)
 ;
 D W("<div align=""center"">")
 ;
 N MAXSPAN S MAXSPAN=2
 ;
 D W("<table name=""TblVw"" class=""tbround"" cellspacing="""_$$KF^W3CSM(20)_""" style=""padding:"_$$KF^W3CSM(30)_"px"" dir="""_$$^%W1DIR_""" width="""_WDTB_""" border=""0"" >")
 D W(" <tr>")
  D W("  <td ")
   D W(" colspan="_MAXSPAN)
   D W(" style=""font-size:"_$$^W3FSZ(14)_";text-align:center;color:brown"">")
    D W($$^%W1DICT("CHOICEPAYMENT"))
    D W("   <br><span style=""color:"_$$FGENCR^W3CSS_";font-size:"_$$^W3FSZ(11)_";"_$$FONTFM^W3CSS_""">")
           D W($$^%W1DICT("ALLPAYDATAENCRYPTED"))
    D W("       </span>")
  D W("  </td>")
 D W("</tr>")
 ;
 I '$$NOCASH D TRPM(1,"cash","CASH")
 ;
 I '$$NOCHECK D TRPM(2,"check","CHECK")
 ;
 D TRPM(3,"crcard","CRCARD")
 ;
 ;;I $$CIBUS D TRPM(5,"cibus","CIBUS")
 ;
 ;;I $$COUPONPHONE D TRPM(6,"couponphone","COUPONPHONE")
 ;
 ;;I $$TENBIS D TRPM(7,"tenbis","TENBIS")
 ;
 I '$$NOASR^W3PRM,$$ISCR^W3L(CODE)!$$ISCR^W3L(CODE,$$GLL^W3L),'$$MKRZAR D
 .D TRPM(4,"credit","CREDIT")
 ;
 D TRPM(9,"picul","PICUL")
 ;
 D W(" <tr><td colspan="""_MAXSPAN_""" id=""paymcomment""></td></tr>")
 D W(" <tr><td colspan="""_MAXSPAN_""" ></td></tr>")
 ;
 D W(" <tr id=""divca"" ")
 D W("  <td colspan="""_MAXSPAN_""" >")
  ;W "<br>",!
  D W("<table class=""tbround"" width="""_WDTB_""" border=""0"" dir="""_$$^%W1DIR_""" >")
   D LINE
   ;
   D W("<tr>")
   D W(" <td >&nbsp;<span id=""caidhd"" style=""color:lightgrey"">"_$$^%W1DICT("CREDITCARDNUMBER")_" : </span></td>")
    D W("<td><input type=""text"" id=""caid"" disabled=""disabled"" size=""22"" maxlength=""19"" />&nbsp;")
   D W(" </td>")
   D W("</tr>")
   ;
   D W("<tr>")
   D W(" <td >&nbsp;<span id=""cacvvhd"" style=""color:lightgrey"">"_$$^%W1DICT("CVV")_" : </span></td>")
    D W("<td><input type=""text"" id=""cacvv"" disabled=""disabled"" size=""3"" maxlength=""3"" />&nbsp;")
   D W(" </td>")
   D W("</tr>")
   ;
   D W("<tr>")
   D W(" <td>&nbsp;<span id=""catzhd"" style=""color:lightgrey"">"_$$^%W1DICT("IDNUMBER")_" : </span></td>")
   D W(" <td><input type=""text"" id=""catz"" disabled=""disabled"" size=""12"" maxlength=""9"" />&nbsp;")
   D W(" </td>")
   D W("</tr>")
   ;
   D W("<tr>")
   D W(" <td>&nbsp;<span id=""mmyyhd"" style=""color:lightgrey"">"_$$^%W1DICT("UNTILMMYY")_" : </span></td><td>")
    D SELMMYY
   D W(" </td>")
   D W("</tr>")
   ;
   D LINE
  D W("</table>")
  D W("</td>")
  D W("</tr>")
 ;
 ;;I $$CIBUS D
 .D W(" <tr id=""divcib"" style=""visibility:collapse"">")
 .D W("  <td colspan="""_MAXSPAN_""" >")
 .D W("   <table dir=""RTL"" class=""tbround"" ><tr>")
 . D W("   <td>"_$$^%W1DICT("COMPANYNUMBER")_" : ")
 .  D W("   <input type=""text"" id=""cibcompany"" size=""5"" maxlength=""5"" />")
 .    D W("&nbsp;")
 .  D W("  </td>")
 .  D W("  <td>&nbsp;"_$$^%W1DICT("CARDNUMBER")_" : ")
 .  D W("   <input type=""text"" size=""16"" maxlength=""16"" id=""cibcard"" /> ")
 .  D W("  </td>")
 . D W("  </tr>")
 . D LINE
  D W("</table>")
 .D W("  </td>")
 .D W(" </tr>")
 ;
 D LINE
 D W("</table>")
 D W("</div>")
 Q
 ;
TEL(MSD) ;
 Q $$TEL^W3ORDVW($G(MSD))
 ;
SETPAYM(PARM) ;
 D SETPAYM^W3ORDVW($G(PARM))
 Q
 ;
PUTCODTS(SUGT) ;
 I $$CLOSE^W3HZMST(JB) Q
 S $P(^[$$^W3MAIN]TMPORD(JB),"~",21)=SUGT
 Q
 ;
SETCIBUS(PRMCIB) ;
 D SETCIBUS^W3ORDVW($G(PRMCIB))
 Q
 ;
SETTENBIS(PRMTNB) ;
 D SETTENBIS^W3ORDVW($G(PRMTNB))
 Q
 ;
SETCREDIT(PRMCRED) ;
 D SETCREDIT^W3ORDVW($G(PRMCRED))
 Q
 ;
W(TXT)
 W TXT,!
 Q
 ;
CIBUS(STAM) ;
 Q $$CIBUS^W3ORDVW
 ;
CIBDETAILS(HZ) ;
 Q $$CIBDETAILS^W3ORDVW($G(HZ))
 ;
COUPONPHONE(STAM) ;
 Q $$COUPONPHONE^W3ORDVW
 ;
TENBIS(STAM) ;
 Q $$TENBIS^W3ORDVW
 ;
TNBDETAILS(HZ) ;
 Q $$TNBDETAILS^W3ORDVW($G(HZ))
 ;
CREDDETAILS(HZ) ;
 Q $$CREDDETAILS^W3ORDVW($G(HZ))
 ;
REM(STAM) S REM=$$GET^%W1PRM("REM")
 I REM["UNDEF" S REM="UNKNOWN"
 Q REM
GL ;
 S GL="^[$$^W3MAIN]TMPORD"
 Q
 ;
SELMMYY ;
 N W5ORDVW S W5ORDVW=""
 D SELMMYY^W3ORDVW
 Q
 ;
HZ(STAM) ;
 I $G(W3ORDLS) Q +W3ORDLS
 Q +JB
 ;
MKRZAR(STAM) ;
 Q $$MKRZAR^W3ORDVW
 ;
NOCASH(STAM) ;
 Q $$NOCASH^W3ORDVW
 ;
NOCHECK(STAM) ;
 Q $$NOCHECK^W3ORDVW
 ;
PIC(CD) ;
 S W3GETPIC("MSD")=MSD
 D W("<td align=""center""><img src="""_$$PICTURE^W3HZPRTN(CD,"pic")_""" width=""100"" height=""67"" onMouseOver=""openPic1('"_CD_"','"_MSD_"')"" onMouseOut=""closePic1()"" >")
 Q
 ;
 ;
VWHD ;
 N PRM S PRM="VW"
 W "<div align=""center"" >",!
 ;
 D OPTABLE
 W " id=""tbordhd"" "
 W " >",!
 S W3ORDHD("SPANSTYLE")="color:darkblue"
 W "<tr>",!
 D
 .N WIDTH S WIDTH="50%"
 .D CODE^W3ORDHD
 D NMB^W3ORDHD
 W "</tr>",!
 ;
 W "<tr>",!
 D PELE^W3ORDHD
 D NAME^W3ORDHD
 W "</tr>",!
 ;
 W "<tr>",!
  D COMPANY^W3ORDHD
 W "</tr>",!
 ;
 W "</table>"
 W "<br />",!
 ;
 ;
 D OPTABLE
 W " >",!
 W "<tr>"
 D ADDRESS^W3ORDHD
 W "</tr>",!
 ;
 W "<tr>"
 D ENTRANCE^W3ORDHD
 D FLOOR^W3ORDHD
 W "</tr>",!
 ;
 W "<tr>",!
  D
  .N SPAN S SPAN=2
  .D COMMENT^W3ORDHD
 W "</tr>",!
 W "</table>",!
 ;
 W "<br />",!
 D OPTABLE
 W " >",!
 W "<tr>"
  S %W1DAT("ALIGN")=$S($$^%W1DIR="LTR":"left",1:"right")
  S %W1DAT("TXT")=$$^%W1DICT("ORDEREDTO")
  D DAT^W3ORDHD
  D
  .N ALIGN S ALIGN=$S($$^%W1DIR="LTR":"left",1:"right")
  .D SHAA^W3ORDHD
 W "</tr>",!
 ;
 W "<tr>",!
  W "<td>&nbsp;</td>",!
 W "</tr>",!
 ;
 ;;D W("<tr>")
 ;;D W("   <td colspan=""2"">")
 ;;  D W("    "_$$^%W1DICT("COMPRESSVIEW")_"&nbsp;")
 ;; D
   .N V S V=" "
   .I PC=1.5 S V="V"
   .D W("<input type=""checkbox"" name=""comprview"" id=""comprview"" ")
   .D W("onClick=""ComprView("_JB0_",this)"" ")
   .D W($S(PC=1.5:"checked=""checked""",1:"")_" />")
   .D W("&nbsp;&nbsp;<span class=""lbtxt"">"_V_"</span>")
 ;;D W("   </td>")
 ;;D W("  </tr>")
 D LINE
 W "</table>",!
 W "</div>",!
 Q
 ;
OPTABLE ;
 W "<table width="""_WDTB_""" border=""0"" dir="""_$$^%W1DIR_""""
 W " class=""tbround"" "
 Q
 ;
VWORD ;
 D W("<table width="""_WDTB_""" cellspacing=""0"" class=""vw"" border=""1"" rules=""cols"" dir="""_$$^%W1DIR_""" id=""TblOrdVw"" name=""TblOrdVw"" >")
 D W(" <tr class=""hdvw"" style=""font-size:"_$$^W3FSZ(12)_""">")
 S CC=0
 ;
 S CC=CC+1 D W("  <th style=""width:50%"">"_$$^%W1DICT("ITEMNAME")_"</th>")
 S CC=CC+1 D W("  <th>"_$$^%W1DICT("PRICE")_"</th>")
 S CC=CC+1 D W("  <th>"_$$^%W1DICT("QUANT")_"</th>")
 S CC=CC+1 D W("  <th>"_$$^%W1DICT("SUM")_"</th>")
 D W(" </tr>")
 D TDHR
 ;
 W ! N PRTR S PRTR=0,PR0=1,CD0=""
 N I F I=1:1 Q:'$D(@$$^W3TMPORD@(JB,I))  D
 .N A S A=$G(^(I))
 .I $P(A,"~")=0 D  S PR0=1 ; ---------------------- PRITIM
 ..I PRTR D TDHR
 ..S PRTR=1
 ..
 ..S CD0=$$CD(A)
 ..I CD0=$$HZMH^W3PRM!(CD0=$$HZMH2^W3PRM) D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" style=""background-color:96ce98;color:black"" >")
 ..I CD0'=$$HZMH^W3PRM,CD0'=$$HZMH2^W3PRM D
 ...D W("<tr id=""LV0"_I_""" name=""LV0"_I_""" class=""vw0"">")
 ..N NAM
 ..S NAM=$$NAM(A)
 ..D W("   <td style='font-size:"_$$^W3FSZ_"'>&nbsp;"_NAM_"</td>")
 ..
 ..N MH S MH=$$MH(A)
 ..D W("   <td align=""center"">&nbsp;"_MH_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_$$QN(A)_"</td>")
 ..
 ..D W("   <td align=""center"">&nbsp;"_$$SUM(A)_"</td>")
 ..
 ..D W("</tr>")
 .
 .I $P(A,"~")=1 D  ; --------------------------- TOSAFOT
 ..I $$CDA(A) Q  ; !$$CDC(A)!$$CDH(A) Q
 ..
 ..I PC=1.5,'$G(W3FAXHTM),'$$^W3HZMH($$HZ) D  S PR0=0 Q  ; -- COMPRESS ADDONS
 ...Q:'PR0
 ...N MHADD,A1 S MHADD=0
 ...N I1 F I1=I:1 Q:'$D(@$$^W3TMPORD@(JB,I1))  S A1=$G(^(I1)) Q:'$P(A1,"~")  D
 ....S MHADD=MHADD+($P(A1,"~",4)*$P(A1,"~",5))
 ...Q:'MHADD
 ...D W("  <tr class=""vw1"" id=""ADD"_I_""" name=""ADD"_I_""" >")
 ...D W("   <td>"_$$^%W1DICT("ADDITIONS")_"</td>")
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ...D W("   <td>&nbsp;</td>")
 ...N ST S ST="   <td dir=""LTR"" align=""center"""
 ...I MHADD S ST=ST_" style=""color:black"""
 ...S ST=ST_">&nbsp;&nbsp;"_$J(MHADD,5,2)_"&nbsp;</td>"
 ...D W(ST)
 ..
 ..; ----------------------------- FULL VIEW ----------
 ..I '$$MH(A),$$^W3HZMH($$HZ),$G(COMPRVIEW) Q
 ..
 ..D W("  <tr class=""vw1"" id=""LV1"_I_""" name=""LV1"_I_""" >")
 ..D W("   <td")
 .. I $$CDC(A) D W(" class=""hdgr"" style=""font-size:"_$$^W3FSZ(12)_""" ")
 ..D W(">")
 ..D W("&nbsp;&nbsp;&nbsp;&nbsp;"_$$NAM(A)_"</td>")
 ..
 ..N ST S ST="   <td dir=""LTR"" style=""text-align:center"
 ..N MH S MH=$$MH(A)
 ..I MH S ST=ST_";color:black"
 ..S ST=ST_""""
 ..S ST=ST_">&nbsp;"_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:MH)_"</td>"
 ..D W(ST)
 ..
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",$$QN(A)["+":$$QNPIZZA(A),1:$$QN(A))
 ..S ST=ST_"</td>"
 ..D W(ST)
 ..
 ..S ST="   <td dir=""LTR"" style=""text-align:center"">&nbsp;"
 ..N SUM S SUM=$$SUM(A)
 ..N ST1 S ST1=SUM
 ..I SUM S ST1="<span color=""black"">"_SUM_"</span>"
 ..S ST=ST_$S($$CDC(A)!$$CDH(A):"&nbsp;",1:ST1)_"</td>"
 ..D W(ST)
 ..D W("  </tr>")
 W !
 I PRTR D TDHR
 ;
 D W("<tr>")
  N AHUZ S AHUZ=$$AHUZ^W3HZTFR
  D W(" <td><span style='font-size:"_$$^W3FSZ_"'>&nbsp;"_$$^%W1DICT("DLVPAY")_"</span></td>")
  D W(" <td>&nbsp;</td><td>&nbsp;</td><td align=""center""><span>"_$J($$DMSH^W3HZMST(JB),2,2)_"</span></td>")
 D W("</tr>")
 ;
 D W("<tr>")
  I AHUZ D
  .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISCOUNT",+AHUZ)_"</span></td>")
  .D W(" <td>&nbsp;</td><td>&nbsp;</td><td style=""color:red;text-align:center"" dir=""LTR"">"_$J(-$$TOTORD("D")*AHUZ*.01,4,2)_"</td>")
  ;
  I 'AHUZ,$$HNH^W3HZMST(JB) D
  .D W(" <td><span style='font-size:"_$$^W3FSZ_";color:red'>&nbsp;"_$$^%W1DICT("DISCOUNT")_"</span></td>")
  .D W(" <td>&nbsp;</td><td>&nbsp;</td><td style=""color:red;text-align:center"" dir=""LTR"">"_$J($$HNH^W3HZMST(JB),2,2)_"</td>")
  ;
 D W("</tr>")
 ;
 I PRTR D TDHR
 ;
 D W("<tr>")
  D W("<td>&nbsp;</td>")
  D W("<td>&nbsp;</td>")
  D W("<td>&nbsp;</td>")
  D W("<td style=""font-size:"_$$^W3FSZ_";text-align:center;color:darkblue;font-weight:bold"">"_$$TOT_"</td>")
 D W("</tr>")
 ;
 D W("</table>")
 Q
 ;
LINE ;
 D W("<tr>")
 D W(" <td></td>")
 D W("<tr>")
 Q
 ;
CMHD ;
 D W("<table class=""tbround"" width="""_WDTB_""" id=""TbCmHd"" dir="""_$$^%W1DIR_""" >")
 D W(" <tr>")
 D W("  <td>"_$$^%W1DICT("COMMENT2ORDER")_":")
  D W("  <input type=""text"" value="""_$$H2U^%L1FRM($$CMHD^W3HZMST(+$$HZ))_"""")
  D W("  id=""CMHD"" name=""CMHD"" size=""26"" />")
 D W("  </td>")
 D W("  </tr>")
 D LINE
 D W("</table>")
 D W("<br />")
 Q
 ;
INIT ;
 D ^%W1ARG,^W3CSS D KILL^%W1PRM("W5ORDDT")
 N VL S VL=$$TOTORD^W4GETSUM(JB)
 S VL=VL+$$DMSHMSD^W3HZMST(JB)-$$HNH^W3HZMST(JB)
 ;
 D PUT^W3HZMST(JB,"TSHL",VL)
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W5SHOPIC
W5SHOPIC(CD) ; [ 30.05.11 12:49 ] [ 21.05.11 11:19 ] [ 17.05.11 14:19 ]
 Q:CD=""
 S PIC=$$PIC^W5HZPRT(CD)
 W "<div dir="""_$$^%W1DIR_""" align=""center"" >",!
 W "<table dir="""_$$^%W1DIR_""" width=""100%"" height=""75%"" >",!
  N HG S HG="120px"
  I $$^W4SIMUL S HG="40px"
  W "<tr height="""_HG_""" ><th>"_$$H2U^%L1FRM($$SHEM^W3P(CD))_"</th></tr>",!
  W "<tr>"
   W "<td>"
    W "<img src="""_PIC_""" width=""100%"" height=""100%"" />"
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "<br>",!
 W "<br>",!
 ;
 W "<div id=""divbut"">",!
 W "<table>",!
  W "<tr>",!
   W "<td align=""center"">"
     W "<input type=""button"" class=""btnsmall"" id=""Back"" value="""_$$^%W1DICT("BACK")_""" onClick=""Back()"" style=""color:red"" />",!
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 W "</div>",!
 Q

W6
W6(STAM) ; [ 28.12.25 18:43 ] [ 21.03.21 12:03 ] [ 
 Q $$W6^W4PRM
 ;
TFR(STAM)
 I ($$GETP^%W1PRM("W6")="TFR") Q 1
 I $$GETP^%W1PRM("W6")=""&$$W6 Q 1
 Q 0
 ;
ORD(STAM)
 Q ($$GETP^%W1PRM("W6")="ORD")
 ;
WW() I $$W6!$G(%ARG("W6")) Q 1 
 Q 0 
 
 
 
 

W6ARG
W6ARG() ; [ 06.03.26 08:02 ] [ 29.12.25 05:17 ] [ 28.12.25 22:02 ] 
 I $$^W6 Q 1
 I $$W Q 1
 Q 0
 ;
W() ;
 I $$CSRMOUSE^W4PRM Q 1
 Q 0
 ;
W1() I $$W&'$$^W6 Q 1
 Q 0
 
 

W6BT
W6BT ; [ 31.10.23 14:28 ] [ 18.10.23 08:03 ] [ 17.10.23 12:53 ] 
 N (JB,%ARG,%REM)
 S DIR=$$^%W1DIR
 W "<hr>",! 
 W "<p></p>",!
 W "<table dir="""_DIR_""" width=""100%"" border=""0"" "
 W ">",!
  W "<tr >",! 
   W "<td width=""55%"">&nbsp;</td>"  
   W "<td width=""20%"">" 
    D BTN("DELETEORDER","CancelOrd()","white<>red")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td align=""left"">" 
    I $D(@$$^W4TMPORD@(1)) D
    .D BTN("SHOWANDPAYORD","TermOrd()","darkgreen<>white")
   W "</td>"
  W "</tr>",! 
 W "</table>",!
 Q
 ;
 ;
BTN(TXT,PROC,COLOR) ;
 W "<button class='btnrnd' "
  I $G(COLOR)'="" D
  .W "style=""",! 
  . W "background-color:"_$P(COLOR,"<>")_";",!
  . W "color:"_$P(COLOR,"<>",2)_";",!
  . W "font-family:sans-serif"_";",!
  . W "height:50px;",!
  . W "padding:9px",!
  .W """ ",!
  W "onClick='"_PROC_"'" 
 W ">"
  W $$^%W1DICT(TXT)
 W "</button>",!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W6HZPRT
W6HZPRT ; [ 25.10.23 05:24 ] [ 07.10.23 11:34 ] [ 31.01.23 11:57 ] 
 ;     SHID - EDIT LINE SHID
 ;     ITEMSHOW - SHOW ITEM PICTURE
 ; ---------------------------------------------------------
 N (JB,NMB,N,MLZ,HZM,MLZR,MLZR1,SOAD,LKHN,SRCH,%ARG,ITEMSHOW,SCRY,MENU)
 I '$G(N) S N=$$GETP^%W1PRM("CDKV")
 I 'N S N=$$FIRSTGR^W3HZTFR
 ;
 S SH=0 I $G(%ARG("SHID"))'="" D
 .S SH=$$FINDSH^W3HZORD(%ARG("SHID"))
 .D PUT^%W1PRM("SHID",%ARG("SHID"))
 ;
 I '$G(JB),$D(%ARG("JB")) S JB=%ARG("JB")
 Q:'$G(JB)
 ;
 D TMPTF,TMPORD
 I $$^W6,'$G(NMB) S NMB=$$GETP^%W1PRM("NMB") S:'NMB NMB=1
 D PUT^%W1PRM("NMB",$G(NMB))
 I $G(N) D PUT^%W1PRM("CDKV",$G(N))
 ;
 D ITEMSHOW(ITEMSHOW,$G(%ARG("SHID")))
 ;
END Q
 ;
 ;
TMPORD S TMPORD="^[$$^W3MAIN]TMPORD(JB)"
 Q
 ;
TMPTF S TMPTF="^[$$^W3MAIN]TMPTF($$^%W1JB)"
 Q
 ;
MH(NMB,COD) ;
 N PRMHNMB,ZMANK
 I $L($G(HZM)) S ZMANK=$$ZMANK I ZMANK="" K ZMANK
 S PRMHNMB=NMB S MH=$J($$MH^W4P(COD),2,2)
 Q MH
 ;
 ;
ZMANK(STAM) ;
 Q $ZD($H,"24:60")
 ;
ITEMSHOW(TXT1,SHID) ;
 N CD,NM,MH,TXT,KV
 S KV=$$GETP^%W1PRM("CDKV")
 S CD=$P(TXT1,"~")
 S NM=$$CNWEB^%L1FRM($P(TXT1,"~",2))
 S NM=$$RPL^%L1FRM(NM,"()","")
 S NM=$$RPL^%L1FRM(NM,"[]","")
 I $$^%W1LNG="E" S NM=$$VWENG^%L1FRM(NM)
 S MH=$P(TXT1,"~",3)
 ;
 W "<div align=""center"" style=""position:absolute;top:0px;width:95%"
 W """ >",!
 ;
 N WDT S WDT=98 I CD=0 S WDT=55
 W "<table width="""_WDT_"%"" border=""0"" dir="""_$$^%W1DIR_""" id=""ItemShow"" >",!
 ;
 W "<tr>"
 W " <td>"
   W "<table width=""98%"" border=""0"" dir="""_$$^%W1DIR_""" align=""center"" >"
     W "<tr class=""hditemshow"" align=""center"" "
      W " style=""font-size:"_$$^W3FSZ(22)_""" "
     W ">"
      D TDNMMH
     ;
    W "</tr>"
    D TRSP
    W "<tr>" 
      D TDPIC
     W "</tr>",!
   W "</table>"
 W " </td>",!
 W "</tr>",!
 ;
 ;
 N DESC S DESC=$$DESC1(CD,1)
 I DESC'="",DESC'="&nbsp;" D TRDESC
 ;
 I $$SCRHIGHT D TRSP
 ;
 D TRQN
 D TRSP
 ;
 D TRKITCH
 ;
 I $$SCRHIGHT D TRSP
 ;
 I $G(%ARG("SHID"))="" D
 .D TRSBM
 I $G(%ARG("SHID"))'="" D
 .D TRBCO
 ;
 D TRSBMO
 ;
 I $G(%ARG("SHID"))="" D
 .D TRBACK
 ;
 W "</table>",!
 W "</div>",!
 Q
 ;
 ;
TRSP ;
 W "<tr><td>&nbsp;</td></tr>",!
 Q
 ;
TRDESC ;
 W "<tr>"
   D TDDESC
 W "</tr>",! 
 Q
 ;
TDDESC ;
 W " <td class=""desc"" style=""text-align:center;padding:20px;color:black;font-weight:bold"" >"
      W DESC
 W " </td>",!
 Q
 ;
DESC1(CD,NOSHOW) ;
 N DESC S DESC=""
 N NODESC S NODESC=$$^%W1DICT("NODESCRIPTION")
 I $G(NOSHOW) S NODESC="&nbsp;"
 ;;I '$D(@$$^W4GL("L1TIP")@("MTK",CD,1)) Q NODESC
 ;
 N OK S OK=0
 N I F I=1:1 Q:'$D(@$$^W4GL("L1TIP")@("MTK",CD,I))  D
 .N A S A=$G(^(I)) I A'?.P S OK=1
 .;;S DESC=DESC_$$H2U^%L1FRM($$SPA^%L1FRM(A))_" "
 .S DESC=DESC_$$SPA^%L1FRM(A)_" "
 I DESC[" == " S DESC=$P(DESC," == ",2)
 S DESC=$$H2U^%L1FRM(DESC)
 ;
 N HRA S HRA=$$SPA^%L1FRM($$HRA^W4P(CD))
 I $L(HRA) S DESC="["_$$H2U^%L1FRM(HRA)_"] "_DESC
 I 'OK Q NODESC
 Q $$RPL^%L1FRM(DESC,"_","<BR>")
 ;
 ;
TDNMMH ;
  S TXT=$$H2U^%L1FRM(NM)_"&nbsp;&nbsp;&nbsp;"
  N MH1 S MH1=MH
  S TXT=TXT_$J(MH1,2,2)
  W "<td style=""text-align:center"" "
        W "dir='"_$$^%W1DIR_"'"
  W " >"_TXT_"</td>",!
 Q
 ;
TDPIC ;
  W "<td align=""center"" >"
   D
   .N PIC S PIC=$$PICTURE(CD,"pic")
   .I $L(PIC) W $$IMG(CD)
   W "</td>",!
 Q
 ;
TDQN ;
  N FSZ S FSZ=18
  W "<td align=""center"">"
   W "<span class=""hditemshow"" style=""font-size:"_$$^W3FSZ(FSZ)_""">"_$$^%W1DICT("QUANTITY"),"</span>",!
   W $$NBSP^%L1FRM(3)
   W "<select id=""qnid"""
    W "style=""font-size:"_$$^W3FSZ(FSZ)_""" "
   W " >",!
   F I=1:1:99 D
   .W "<option value="""_I_""""
   .I +I=+$P(TXT1,"~",4) W " selected=""selected"""
   .W " >"_I_"</option>",!
   W "</select>",!
  W "</td>",!
 Q
 ;
 ;
PIC(SH) ;
 D TMPTF
 N MSD S MSD=$$GETP^%W1PRM("MSD")
 N PATH,PATHL ;;S PATH="./"_MSD_"/itp/"
 S PATH=$$WEB^W3MAIN
 S PATH=PATH_MSD_"/itp/"
 S PATHL=$$WEBL^W3MAIN
 S PATHL=PATHL_MSD_"/itp/"
 N TYPE S TYPE="jpg"
 N PRE S PRE="pic"
 I $E(SH,1,3)="min" S PRE="min"
 N NOPIC S NOPIC=PRE_"logo."_TYPE
 ;
 D PUT^%W3DEB("W3HZPRTN-PIC","SH=SH")
 N PIC S PIC=""
 N CD I SH'["log",SH'["min",SH'["pic" S CD=$P($G(@TMPTF@(2,SH)),"~") I CD="" Q PATH_NOPIC
 I SH["log" S CD=SH
 I SH["min" S CD=$P(SH,"min",2)
 I SH["pic" S CD=$P(SH,"pic",2)
 N PICNAME S PICNAME=PRE_CD_"."_TYPE
 N FLPIC S FLPIC=PATH_PICNAME
 N FLPICL S FLPICL=PATHL_PICNAME
 D PUT^%W3DEB("W3HZPRTN-PIC","FLPICL=FLPICL & FLPIC=FLPIC")
 I '$$EXIST^%L1ZOS(FLPICL) Q PATH_NOPIC
 ;
 Q FLPIC
 ;
 ;
ITEMNAME(SHID)
 D TMPORD
 I $G(SHID)="" Q "&nbsp;"
 N SH S SH=$$FINDSH^W3HZORD(SHID) Q:'SH "&nbsp;"
 Q $$H2U^%L1FRM($P($G(@TMPORD@(SH)),"~",3))
 ;
PRICE(SHID)
 D TMPORD
 I $G(SHID)="" Q "&nbsp;"
 N SH S SH=$$FINDSH^W3HZORD(SHID) Q:'SH "&nbsp;"
 Q $$H2U^%L1FRM($P($G(@TMPORD@(SH)),"~",4))
 ;
COMMENT(SHID)
 D TMPORD
 I $G(SHID)="" Q "&nbsp;"
 N SH S SH=$$FINDSH^W3HZORD(SHID) Q:'SH "&nbsp;"
 N CMNT S CMNT=$$CMST^W3HZMST(JB,SH)
 Q CMNT
 ;;Q $$H2U^%L1FRM(CMNT)
 ;
 ;
IMG(NP) ;
 N IMG,PIC
 S PIC=$$PICTURE(NP,"pic")
 I PIC?.P Q "&nbsp;"
 ;
 S IMG=" <img src="""_PIC_""" "
 N WD,HG S WD=300,HG=220
 I '$$SCRHIGHT S WD=250,HG=180
 S IMG=IMG_" style=""width:"_$$^W4KF(WD)_"px;height:"_$$^W4KF(HG)_"px;"
 S IMG=IMG_"border:grey 2px solid;"
 S IMG=IMG_""" "
 ;
 S IMG=IMG_" />"
 Q IMG
 ;
 ;
PICTURE(N,PRE)
 Q $P($$GETPIC^W3ENTER(N),"~",2)
 ;
TRQN ;
 W "<tr>",!
  D TDQN
 W "</tr>",!
 Q
 ;
TRKITCH ;
 I $E(SHID,1,3)="LV0" D
 .N CMNT S CMNT=""
 .S CMNT=$$COMMENT(SHID)
 .W "<tr>",!
 . W "<td align=""center"" >",!
 .   D ^W4BTN("COMMENT2KITCHEN","Comment2Kitchen('"_CD_"','"_SHID_"','"_CMNT_"')","blue","",18,5,$$WDBTN)
 . W "</td>",!
 .W "</tr>",!
 Q
 ;
TRSBM ; 
 W "<tr>",!
    W "<td align=""center"">" W "<br />"
      N SUBMIT S SUBMIT="Submit()"
      D ^W4BTN("SUBMITANDBACK",SUBMIT,"green","",18,5,$$WDBTN)
    W "</td>",!
 W "</tr>"
 Q
 ;
TRSBMO ; 
 W "<tr>",!
    W "<td align=""center"">" W "<br />"
      N SUBMIT S SUBMIT="Submit('O')"
      D ^W4BTN("SUBMITANDSHOWORD",SUBMIT,"green","",18,5,$$WDBTN)
    W "</td>",!
 W "</tr>"
 Q
 ;
TRBACK ; 
 I '$G(NMB) S NMB=$$GETP^%W1PRM("NMB")
 W "<tr>",!
    W "<td align=""center"">" W "<br />"
      D ^W4BTN("BACK2MENUNOCHOICE","Back2Menu("_JB_",'','','"_NMB_"','"_KV_"')","red","",18,5,$$WDBTN)
    W " </td>",!
 W "</tr>"
 Q
 ;
TRBCO ; 
 I '$G(NMB) S NMB=$$GETP^%W1PRM("NMB")
 W "<tr>",!
    W "<td align=""center"">" W "<br />"
      D
      .N BACK S BACK="BACK2ORDNOCHOICE" 
      .I $G(%ARG("SHID"))'="" S BACK="BACK2ORDNOCHANGE" 
      .D ^W4BTN(BACK,"Back2Ord()","red","",18,5,$$WDBTN)
    W " </td>",!
 W "</tr>"
 Q
WDBTN(STAM)  
 Q 260 
 ;
ESC(ST) ;
 Q $P(ST,"~")_"~"_$$CLWEB^%L1FRM($P(ST,"~",2))_"~"_$P(ST,"~",3,100)
 ;
ITSHOW(TX) ;
 S TX=$$CNWEB^%L1FRM(TX)
 S TX=$P(TX,"~",2,20)
 Q $P(TX,"~")_"~"_$$CLWEB^%L1FRM($P(TX,"~",2))_"~"_$P(TX,"~",3,20)
 ;
SCRHIGHT() ; 
 I $$HIGHT^W4WDSCR Q 1 
 Q 0 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

W6PRM
W6PRM ; [ 27.07.22 14:40 ] [ 01.04.21 06:51 ] [ 31.03.21 11:23 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 W "<br><br>",!
 ;
 W "<table width="""_$$WD_"%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
    W $$^%W1DICT("RECEIVERNUMBER")_$$NBSP^%L1FRM(3)
    W "<select id=""mkbl"">"
      W "<option value=""0"">"_$$^%W1DICT("CHOICERECEIVER")_"</option>",!
      S N="" F  S N=$O(@$$^W4GL("NAME")@(N)) Q:N=""  D
      .W "<option value="""_N_""" "
      .I N=$P($G(@$$^W4GL("W6")),"\") W " selected=""selected"" "
      .W ">"_N_" "_$$H2U^%L1FRM($$^W4NAME(N))_"</option>",!
    W "</select>",!
   W "</td>"
   ;
   W "<td>"
    W $$^%W1DICT("GUESTSQN")_$$NBSP^%L1FRM(3)
    W "<select id=""soad"">"
     F I=0,1 D 
     .W "<option value="""_I_""" "
     .I I=$P($G(@$$^W4GL("W6")),"\",2) W " selected=""selected"" "
     .W ">"_I_"</option>",!
    W "</select>",!
   W "</td>"
  W "</tr>",!
 W "</table> ",!
 ;
 W "<br><br>"
 W "<table id=""TblKiosk"" width="""_$$WD_"%"" border=""1"" cellspacing=""0"">",!
 W " <tr>",!
 W "  <th>"_$$^%W1DICT("POSNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("PORTNUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("POSNAME")_"</th>",!
 W "  <th>"_$$^%W1DICT("TABLENUMBER")_"</th>",!
 W "  <th>"_$$^%W1DICT("DISPLAYDIRECTION")_"</th>",!
 W " </tr>",!
 ;
 S N="" F  S N=$O(@$$^W4PLUK@(N)) Q:N=""  D
 .I $G(@$$^W4DEV@(N))="" Q
 .W " <tr>",!
 .W "  <td align=""center"">"
 .  W N
 .W "  </td>"
 .
 .W "  <td>"
 . W " &nbsp;"_$G(@$$^W4DEV@(N))
 .W "  </td>"
 .
 .W "  <td>"
 . S RKV=$$H2U^%L1FRM($G(@$$^W4PLUK@(N)))
 . W " &nbsp;"_RKV
 .W "  </td>",!
 .
 .W "  <td align=""center"">"
 . W "  <select id=""tblnum"_N_""" >" 
 .  W "<option value=""0"">"_$$^%W1DICT("CHOICETABLE")_"</option>",!
 .  S N1="" F  S N1=$O(@$$^W4GL("LKH")@(N1)) Q:N1=""  Q:N1>900  I N1 D
 .  .W "<option value="""_N1_""" "
 .  .I N1=$$TBLNUM(N) W "selected=""selected"" "
 .  .W ">"_N1_"</option>",!
 . W "  </select>",! 
 .W "  </td>"
 .
 .W "<td>"
 .   W "<select id=""drc"_N_""">"
 .    F I=0,1 D 
 .    .W "<option value="""_I_""" "
 .    .I I=$P($G(@$$^W4GL("W6")@(N)),"\",2) W " selected=""selected"" "
 .    .S DRC="TOWIDTH"
 .    .I I=1 S DRC="TOHEIGHT" 
 .    .W ">"_$$^%W1DICT(DRC)_"</option>",!
 .   W "</select>",!
 .W " </tr>",!
 ;
 W "</table>",!
 ;
 W "<br>",!
 ;
 W "<div id=""divbut"">",!
  W "<table>",!
   W "<tr>",!
    W " <td>"
     D ROUNDBUT^%W1JS("Submit",$$^%W1DICT("SUBMIT"),"Submit()","color:green",",,,100")
    W "</td>"
    W "<td>"
     D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
SUBMIT(PRM) ;
 N (JB,%ARG,%REM,PRM)
 K @$$^W4GL("W6")
 N OV,SD
 S OV=$$DOP^W4NAME($P(PRM,";"))
 S SD=+$P(PRM,";",2)
 S @$$^W4GL("W6")=OV_"\"_SD
 ;
 F I=3:1:$L(PRM,";") D
 .S C=$P(PRM,";",I)
 .S POS=$P(C,"~")
 .S TBLNUM=$P(C,"~",2)
 .S DRC=$P(C,"~",3)
 .I POS,TBLNUM S @$$^W4GL("W6")@(POS)=TBLNUM_"\"_DRC
 Q
 ;
TBLNUM(POS) ;
 Q $P($G(@$$^W4GL("W6")@(POS)),"\")
 ;
WD() ; 
 Q $S($$^W4TABLET=2:60,1:40)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WBADVSRC
WBADVSRC ; [ 15.07.15 18:03 ] [ 12.07.15 10:24 ] [ 23.06.15 06:12 ]
 Q
 ;
SAVE(PRM) N (JB,%ARG,%REM,PRM,SCRN) D ^%L1TS
 D PUT^%W3DEB("WBADVSRC","SCRN=SCRN&PRM=PRM")
 S OK=$$^WBSV2ANS(SCRN,PRM)
 I OK'=1 Q OK
TV ;
 F I="B1FNAME","B1LNAME","B1TZ","B1TEL","B1EMAIL" D
 .S @I=$$ANS(SCRN,I)
 ;
 D SRCHCUSTOM^WBFUNC(B1FNAME,B1LNAME,B1TZ,B1TEL,$G(B1EMAIL))
 ;
 S BSCARD=""
 S ERR=$$^WBERR I ERR D CLRBSCARD^WBCARD Q $$VWERR^WBERR(ERR)
 ;
 K @$$^WBVRM
 ;
 D CRVRM
 Q 1
 ;
 ;
CRVRM ;
 D ^%L1TS
 N GL D GL^WBCON K @$$^WBVRM
 N A,ZN,I S ZN="",I=0
 ;
 N N S N=""  F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(@GL@(N)) Q:A=""
 .I A[("</Customer>") D SETVRM
 .I A[("<Customer>") D INITVRM
 .I A["<CardNumber>" S CARD=$$ZN(A,"CardNumber")
 .I A["<CustomerId>" S CUSTID=$$ZN(A,"CustomerId")
 .I A["<FirstName>" S FNAME=$$ZN(A,"FirstName")
 .I A["<LastName>" S LNAME=$$ZN(A,"LastName")
 .I A["<CustomerMembershipExpire>" S TOKEF=$$ZN(A,"CustomerMembershipExpire")
 .I A["<Active>" S ACTIVE=$$ZN(A,"Active")
 Q
 ;
SETVRM ;
 I '$G(ACTIVE) Q
 I $$^WBPARAM("ACT")!$$^WBPARAM("CUSTNEW"),CARD'=-1 Q
 S I=I+1
 S @$$^WBVRM@(I)=CARD_"\"_LNAME_" "_FNAME_"\"_CUSTID_"\"_ACTIVE_"\"_TOKEF
 Q
 ;
INITVRM ;
 S CARD=""
 S FNAME=""
 S LNAME=""
 S TOKEF=""
 S ACTIVE=""
 Q
 ;
ANS(COD,RKV)
 Q $$^WBANS(COD,RKV)
 ;
ZN(A,EL) ;
 Q $$ZN^WBGETVL(A,EL)
 ;

WBANS
WBANS(COD,RKV) ; [ 24.06.15 18:24 ] [ 22.06.15 05:10 ] [
 I $G(COD)="" Q ""
 I $G(RKV)="" Q ""
 Q $G(@$$^W4TMPANS@(COD,RKV))
 ;
SET(COD,RKV,VL,PRM) ;
 I $G(COD)="" Q
 I $G(RKV)="" Q
 S @$$^W4TMPANS@(COD,RKV)=$G(VL)
 Q
 ;
CLEAR(COD) ;
 I $G(COD)="" K @$$^W4TMPANS Q
 K @$$^W4TMPANS@(COD)
 Q

WBBELONG
WBBELONG(SH) ;  [ 26.10.15 16:52 ] [ 30.08.15 13:43 ] [ 29.07.15 09:38 ]
 N (JB,%ARG,%REM,SH)
 S (BSCARD,BSNAME,BSCLUB,BSCLUB1)=""
 S INDEX=+$G(%ARG("INDEX"))
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""width:98%;height:98%;border:2px solid grey"" >",!
  D ^%L1WEBHD("BELONGCARD2CUST")
  W "<br>",!
  W "<table style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" width=""60%"" cellpadding=""20px"" align=""center"" >",!
   W "<tr colspan=""3"">"
    W "<td >"
      W $$VWCLUB^WBCARD
    W "<td>"
   W "</tr>",!
   ;
   W "<tr>"
    W "<td colspan=""3"">"
      W $$^%W1DICT("CUSTOMNAME")_" : "_$$H2U^%L1FRM($$NAME^WBVRM(INDEX))
    W "</td>",!
   W "</tr>",!
   ;
   W "<tr>"
    W "<td colspan=""3"">"
     W "<span style=""color:brown"">"_$$^%W1DICT("MOVECARD")_"</span>"
     W "<br>"
     W "<input type=""text"" size=""50"" id=""card"" "
     W " onClick=""this.select()"" "
     W " onKeyPress=""OnKeyPress(event,'"_SH_"')"" "
     W " style=""font-size:"_$$^W3FSZ(12)_""">"
    W "</td>"
    W "<td>"
      D ^W4BTN("SUBMIT","Submit('"_SH_"')","green")
    W "</td>"
    W "<td>"
      D ^W4BTN("BACK","Back()","red")
    W "</td>"
   W "</tr>",!
   ;;W "<tr><td>&nbsp;</td></tr>",!
   W "<tr>"
    W "<td colspan=""3"">"
     D ^W4NUMKB("card",50)
    W "</td>",!
   W "</tr>",!
  W "</table>",!
  ;
  W "<br>",!
  ;
 W "</div>",!
 Q
 ;
 ;
BELONG(PRM) ;
 N (JB,%ARG,%REM,PRM)
 S IND=$P(PRM,";")
 S BSCARD=$P(PRM,";",2)
 S CUSTID=$$CUSTID^WBVRM(IND)
 ;
 D ^%W3DEB("WBBELONG-BELONG","PRM=PRM&BSCARD=BSCARD&CUSTID=CUSTID")
 D ACTCRD^WBFUNC(BSCARD,CUSTID)
 ;
 S BSCARD="" I $G(BZLER) Q "ERR\"_BZLER_"\"_BZLER1
 S ERR=$$^WBERR I ERR Q $$VWERR^WBERR(ERR)
 ;
 S BSOK=$$GETVL("AttachCustomer")
 S BSFNAME=$$GETVL("FirstName")
 S BSLNAME=$$GETVL("LastName")
 S BSCARD=$$GETVL("CardNumber")
 ;
 I BSCARD D SET^WBPARAM("BSCARD",BSCARD)
 ;
 I $$^WBPARAM("STAT") Q $$^WBSTAT("LKHSTA")
 I $$^WBPARAM("CUSTDET")!$$^WBPARAM("CUSTNEW") Q $$^WBSTAT("LKHGETDATA")
 ;
 N TMP S TMP=$$TMP^WBSTAT
 K @TMP
 S @TMP@(1)=$$VWCLUB^WBCARD_": oecren"
 S @TMP@(2)=BSFNAME_": ihxt my"
 S @TMP@(3)=BSLNAME_": dgtyn my"
 S @TMP@(4)=BSCARD_": qihxk 'qn"
 ;
 I $D(@$$^W4TMPORD)=11 D
 .N BSNAME S BSNAME=BSFNAME_" "_BSLNAME
 .N BSCLUB S BSCLUB=$$CLUB^WBCLUB
 .N BSCLUB1 S BSCLUB1=$$NAME^WBCLUB
 .D SETORD^WBCARD
 Q 1
 ;
ANS(COD,RKV)
 Q $$^WBANS(COD,RKV)
 ;
GETVL(TAG) ;
 Q $$^WBGETVL(TAG)

WBCARD
WBCARD ;  [ 19.09.23 14:09 ] [ 14.09.23 15:04 ] [ 15.05.17 17:58 ] 
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S (BSCARD,BSNAME,BSCLUB,BSCLUB1)=""
 S BSCLUB=$$ARGCLUB
 I BSCLUB="",$$ONE^WBCLUB S BSCLUB=$$ONE^WBCLUB
 ;
 D SET^WBPARAM("CLUB",BSCLUB)
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""width:98%;height:98%;border:2px solid grey"" >",!
  ;
  I $L($G(%ARG("HD"))) D
  .D ^%L1WEBHD(%ARG("HD"))
  ;
  W "<table style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" width=""60%"" cellpadding=""20px"" align=""center"" >",!
   W "<tr colspan=""3"">"
    W "<td >"
      W $$VWCLUB
    W "<td>"
   W "</tr>",!
   ;
   D CARD
   ;
   W "<tr>"
    W "<td>"
     D ^W4BTN("SEARCH","WbSearch()","blue")
    W "</td>"
    ;
    W "<td>"
     D ^W4BTN("ADVANCEDSEARCH","WbAdvancedSearch()","darkblue")
    W "</td>"
    ;
    W "<td>"
     D
     .N PROC S PROC="WbClose()"
     .I $$^WBPARAM("ORD") S PROC="Back()"
     .D ^W4BTN("BACK",PROC,"red")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
CARD ;
 W "<tr>"
  W "<td colspan=""3"">"
   W "<span style=""color:brown"">"_$$^%W1DICT("MOVECARD")_"</span>"
   W "<br>"
   W "<input type=""text"" size=""50"" id=""card"" "
   W " onClick=""Sel(this)"" "
   W " onKeyPress=""OnKeyPress(event)"" "
   I $$^W4TABLET W " readonly=""readonly"" "
   W " style=""font-size:"_$$^W3FSZ(12)_""">"
   W "&nbsp;&nbsp;&nbsp;"
   D ^W4BTN("SUBMIT","Sbm()","green")
   W "<br><br>"
   S %ARG("NODOT")=1
   D ^W4NUMKB("card",50)
  W "</td>"
 W "</tr>"
 Q
 ;
QUICKID(STAM) ;
 N (JB,%ARG,%REM)
 S COD="WBQIDNT"
 N B1STR S B1STR=$S($L($$ANS(COD,"B1TZ")):$$ANS(COD,"B1TZ"),$L($$ANS(COD,"B1TEL")):$$ANS(COD,"B1TEL"),1:$$ANS(COD,"B1CARD"))
 D CLEAR^WBANS(COD)
 Q $$QCKID(B1STR)
 ;
 ;
QCKID(B1STR) ;
 N (JB,%ARG,%REM,B1STR)
 ;
 D PUT^%W3DEB("WBCARD-QCKID","B1STR=B1STR")
 I B1STR["." S B1STR=$P(B1STR,".",2)
 ;
 D QCKSRC^WBFUNC(B1STR)
 ;
 S BSCARD="" I $G(BZLER) D CLRBSCARD Q "ERR\"_BZLER_"\"_$$MSG(BZLER1)
 S ERR=$$^WBERR I ERR D CLRBSCARD Q $$VWERR^WBERR(ERR)
 ;
 I $$^WBPARAM("ORD") D ^WBCLRINV($$GETP^%W1PRM("HZM"),$$^W4TMPORD)
 ;
 S BSCLUB=$$^WBPARAM("CLUB")
 S (BSCLUB1,MOADON)=$$NAME^WBCLUB
 ;
 S BSCARD=$$GETVL("CardNumber")
 ;
 I $G(B1STR) S BSCARD=B1STR ; *** 14/09/23 ???
 ;
 S BSNAME=$$GETVL("CustomerName")
 S BSITRA=$J($$GETVL("CurrentCredits"),2,2)
 S BSGEN=$$GETVL("IsGeneral")
 ;
 I $$^WBPARAM("CUSTNEW"),BSCARD,BSNAME=""!(BSNAME["illk gewl")!BSGEN D  Q 1
 .S BSCARD=B1STR
 .D SET^WBPARAM("BSCARD",BSCARD)
 ;
 I $$^WBPARAM("CUSTNEW") Q "ERRCD\CUSTEXIST"
 ;
 I '$$^WBPARAM("CUSTNEW"),BSCARD?.P D CLRBSCARD Q "ERRMSG\"_$$MSG("wi'bel qpfia zkxrna `vnp `l gewl")
 ;
 D CLEAR^WBANS("WBCARD")
 ;
 I '$$^WBPARAM("ORD") D
 .D SET^WBANS("WBCARD","BSCLUB",BSCLUB)
 .F I="BSCARD","BSCLUB1\H","BSNAME\H","BSITRA","BSGEN" D
 ..N RKV,VL,PRM
 ..S RKV=I,PRM=""
 ..I RKV["\" S PRM=$P(RKV,"\",2),RKV=$P(RKV,"\")
 ..S VL=$G(@RKV)
 ..D SET^WBANS("WBCARD",RKV,VL,PRM)
 ;
 I $$^WBPARAM("ORD") D SETORD
 ;
 I $$^WBPARAM("ORD")="PAY" D
 .D SET^WBANS("BSL","CARDNUMBER",BSCARD)
 ;
 D PUT^%W3DEB("WBCARD-QCKID","BSCARD=BSCARD")
 ;
 D SET^WBPARAM("BSCARD",BSCARD)
 ;
 I $$^WBPARAM("STAT")!$$^WBPARAM("ORD") Q $$^WBSTAT("LKHSTA")
 I $$^WBPARAM("CUSTDET")!$$^WBPARAM("CUSTUPD") Q $$^WBSTAT("LKHGETDATA")
 I $$^WBPARAM("ITRA") Q $$^WBSTAT("LKHDEBSTA")
 ;
 Q:$$^WBPARAM("NOHZG")!$$^WBPARAM("CUSTNEW") 1
 ;
 D ^WBCDATA($$TMP^WBSTAT) ; --> ^TMP($P)
 ;
 ;;I BSGEN=1,BSCARD Q "ASK\"_$$MSG("jiiyl m`d . gewll jiiy `l qihxk rbxk")_"\"_BSCARD_"~"_BSNAME
 Q 1
 ;
 ;
GETVL(EL) ;
 Q $$^WBGETVL(EL)
 ;
ARGCLUB(STAM) ;
 Q $G(%ARG("CLUB"))
 ;
VWCLUB(STAM)
 Q $$H2U^%L1FRM($$NAME^WBCLUB)
 ;
ANS(COD,RKV)
 Q $$^WBANS(COD,RKV)
 ;
MSG(MSG) ;
 Q $$CLWEB^%L1FRM(MSG)
 ;
INIT ;
 D ^W3CSS
 D ^W4CSS
 D KILL^%W1PRM("KBRKVTO")
 Q
 ;
SETCARD(CARD) ;
 D SET^WBANS("WBCARD","BSCARD",CARD)
 D SET^WBPARAM("BSCARD",CARD)
 Q
 ;
CLRBSCARD ;
 D SETCARD("")
 Q
 ;
DEACT(STAM) ;
 N (JB,%ARG)
 S BSCARD=$$^WBPARAM("BSCARD")
 D CANCRD^WBFUNC(BSCARD)
 I $G(BZLER) Q "ERR\"_BZLER_"\"_$G(BZLER1)
 S ERR=$$^WBERR I ERR Q $$VWERR^WBERR(ERR)
 Q "DEACT"
 ;
SETORD ;
 S @$$^W4TMPORD@("BSL","CARD")=BSCARD
 S @$$^W4TMPORD@("BSL","CLUB")=$$CLUB^WBCLUB
 S @$$^W4TMPORD@("BSL","CLUB1")=BSCLUB1
 S @$$^W4TMPORD@("BSL","NAME")=BSNAME
 S @$$^W4TMPORD@("NEW")=$H
 Q
 
 
 
 

WBCDATA
WBCDATA(GLTO) ; <![DATA --> @GLTO [ 15.07.15 11:55 ] [ 08.07.15 09:33 ] [ 08.06.15 17:12 ]
 N (JB,%ARG,%REM,GLTO)
 N GL
 D GL^WBCON,^%L1TS K @GLTO
 N A,PR,I,ST S PR=0,I=0
 ;
 N N S N=""  F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(@GL@(N)) Q:A=""
 .I A[("<![CDATA") S PR=1 Q
 .I A[("]]>") S PR=0 Q
 .Q:'PR
 .S ST=$$INVH^%L1FRM($$SPA^%L1FRM($TR(A,TSS,TS0)))
 .I $L(ST)>39 D DELG(ST,39) Q
 .S ST=$$^WBFMT(ST)
 .S I=I+1,@GLTO@(I)=ST
 Q
 ;
 ;
DELG(ST,LEN)  ;
 N %CHAST
 D DLG^%L1FRM(ST,LEN)
 N K F K=1:1 Q:'$D(%CHAST(1,K))  D
 .S ST=%CHAST(1,K)
 .S ST=$$^WBFMT(ST)
 .S I=I+1,@GLTO@(I)=ST
 Q
 ;

WBCHKSND
WBCHKSND(HZM,PR) ; [ 11.05.17 17:18 ] [ 13.08.15 17:49 ] [ 05.08.15 12:54 ] 
 N PRTMP S PRTMP=($G(PR)="T")
 I '$$BSL^W4PRM Q 0
 I $G(HZM)="",'PRTMP Q 0
 I $G(HZM),$$CLOSE^W4HZMST(HZM) Q 0
 I 'PRTMP,'$$BSCARD^W4HZMST(HZM) Q 0
 I PRTMP,'$$BSCARD^W3HZMST(JB) Q 0
 I $G(HZM)<1 Q 0
 Q 1
 ;
 N GL S GL=$S(PRTMP:$$^W4TMPORD,1:$$^W4ORD_"(HZM)")
 ;
 N LAST S LAST=$O(@GL@(999999),-1)
 I PRTMP S LAST=$$LASTI0^W3HZMST(JB)
 I 'LAST Q 0
 ;
 N OK S OK=0
 N I F I=LAST:-1:1 D  Q:OK
 .N A S A=$G(@GL@(I)) I PRTMP,$P(A,"~") Q
 .S PAR=$S(PRTMP:$P(A,"~",2),1:$P(A,"\"))
 .I PAR=$$PARBON^WBPRM!(PAR=$$PARNKD^WBPRM) S OK=I
 ;
 I OK<LAST!$$NEWLINES^W4MENUBT Q 1
 Q 0
 
 
 

WBCLRINV
WBCLRINV(HZM,GL,BIT) ; [ 21.08.15 14:24 ] [ 13.08.15 17:17 ] [ 02.08.15 17:47 ]
 N (JB,%ARG,%REM,HZM,GL,BIT)
 I $G(HZM) Q:$$CLOSE^W4HZMST(HZM)
 N PR S PR=0
 I $$^WBISBON(HZM,GL) S PR=1
 ;
 D CLR($$PARBON^WBPRM,GL)
 D CLR($$PARNKD^WBPRM,GL)
 ;
 N NKD,NKDPAY
 S NKD=$G(@GL@("BSL","NKD")) I NKD S PR=1
 K @GL@("BSL","NKD")
 S NKDPAY=$G(@GL@("BSL","NKDPAY")) I NKDPAY S PR=1
 K @GL@("BSL","NKDPAY")
 ;
 ;;I $G(BIT) D
 .I $D(@GL@("BSL","PAY")) S PR=1
 .I $G(PR) D CANINV^WBFUNC(HZM)
 Q
 ;
 ;
CLR(PRMPAR,GL)
 D ^W4CLRHZM(PRMPAR,GL,1)
 Q

WBCLUB
WBCLUB ; [ 05.08.15 14:02 ] [ 28.07.15 12:21 ] [ 23.06.15 15:45 ]
 Q
 ;
 ;
ONE(STAM) ;
 S IND=$O(@$$B1CLUB@(""))
 I IND="" Q -1
 N CLUB S CLUB=IND
 S IND=$O(@$$B1CLUB@(IND)) I IND="" Q CLUB
 Q 0
 ;
MULTY(STAM)
 Q '$$ONE  ; =0
 ;
UID(STAM) ;
 N IND S IND=$$IND I IND="" Q ""
 Q $$UIDI(IND)
 ;
UIDI(IND) ;
 I $G(IND)="" Q ""
 Q $G(@$$B1CLUB@(IND))
 ;
NAME(STAM) ;
 N IND S IND=$$IND I IND="" Q ""
 Q $$NAMEI(IND)
 ;
NAMEI(IND) ;
 I $G(IND)="" Q ""
 Q $P($G(@$$B1CLUB@(IND,1)),"\",3)
 ;
 ;
LINK(STAM) ;
 N IND S IND=$$IND I IND="" Q ""
 Q $$LINKI(IND)
 ;
LINKI(IND) ;
 I $G(IND)="" Q ""
 Q $P($G(@$$B1CLUB@(IND,1)),"\",1)
 ;
 ;
PSW(STAM) ;
 N IND S IND=$$IND I IND="" Q ""
 Q $$PSWI(IND)
 ;
PSWI(IND) ;
 I $G(IND)="" Q ""
 Q $P($G(@$$B1CLUB@(IND,1)),"\",2)
 ;
 ;
LKH(STAM) ;
 N IND S IND=$$IND I IND="" Q ""
 Q $$LKHI(IND)
 ;
LKHI(IND) ;
 I $G(IND)="" Q ""
 Q $P($G(@$$B1CLUB@(IND,1)),"\",4)
 ;
IND(STAM) ;
 N IND
 I $$ONE>0 S IND=$O(@$$B1CLUB@("")) D  Q IND
 .D SET^WBPARAM("CLUB",IND)
 Q $$CLUB
 ;
CARD(STAM) ;
 Q $$^WBPARAM("BSCARD")
 ;
CLUB(STAM) ;
 N CLUB
 I $$ONE>0 D  Q CLUB
 .S CLUB=$O(@$$B1CLUB@(""))
 .D SET^WBPARAM("CLUB",CLUB)
 ;
 N CLUB S CLUB=$$^WBPARAM("CLUB")
 I 'CLUB D
 .N HZM S HZM=$$GETP^%W1PRM("HZM") Q:HZM'>0
 .S CLUB=$$BSCLUB^W4HZMST(HZM)
 ;
 Q CLUB
 ;
 ;
B1CLUB(STAM) ;
 Q $$^W4GL("B1CLUB")

WBCON
WBCON(FUNC,POST) ; [ 04.09.23 12:04 ] [ 03.09.23 16:41 ] [ 07.02.18 14:32 ] 
 N HEADER,HEADER1,URL,CMD,PROT,COUNTER
 S BZLER=0,BZLER1=""
 S HEADER="""Content-Type:text/xml"""
 S HEADER1="""SOAPAction:https://api.shellyonline.net/API/Alpos.asmx/"_FUNC_""""
 ;;S HEADER1="""SOAPAction:http://testapi.shellyonline.net/API/DemoPos.asmx/"_FUNC_""""
 ;
 S IND=$$IND^WBCLUB
 I 'IND S BZLER1="xcbed `l oecren" G ER
 ;
 S URL=$$LINKI^WBCLUB(IND)
 S FLSTAT=$$TMP_"bzlstat"_+$$^W4MYDVN
 ;;S URL="http://testapi.shellyonline.net/api/demopos.asmx"
 ;
 S BZLURL=$$TMP_"bzlurl"_+$$^W4MYDVN
 O BZLURL:(NEWVERSION:REWIND)
 U BZLURL W "url="_URL C BZLURL
 ;
 S BZLTMP=$$TMP_"bztmp"_+$$^W4MYDVN
 O BZLTMP:(NEWVERSION:REWIND:GROUP="rw")
 U BZLTMP W $C(239,187,191) C BZLTMP
 ;
 S FLOUT=$$FLOUT^WBZPRM
 C FLOUT:(DELETE) ; *** LEV 26/12
 ;
 S CMD0="/usr/bin/iconv -c -f cp862 -t utf-8 "_POST_" >> "_BZLTMP_";/bin/cp "_BZLTMP_" "_POST
 D CMD(CMD0,"CMD0")
 ;
 ;;ZSY "/bin/cp "_BZLTMP_" "_POST
 ;
 S CMD="/usr/bin/curl -m 30 -N -s -H "_HEADER_" -H "_HEADER1_" -d@"_POST_" -o "_FLOUT_" -K "_BZLURL
 S CMD1="export TERM=linux;/usr/bin/xmllint --format --encode cp862 "_FLOUT_" -o "_FLOUT
 ;
 S MYDVN=+$$^W4MYDVN,H=+$H
 ;
 D PROT("FLOUT",FLOUT)
 ;
 D CMD(CMD,"CMD") ;; --- SUCCESS OF THIS COMMAND SHOUD BE CHECKED BEFORE CMD1
 I $ZSY S BZLER=-$ZSY,BZLER1="zxeywza d`iby" G ER
 ;
 I $$^%L1ZOS(10,FLOUT)<0 S BZLER=-.2,BZLER1="dlawzd `l daeyz" G ER
 ;
 D CMD(CMD1,"CMD1")
 ;
 I $ZSY S BZLER=-$ZSY,BZLER1=BZLER_" d`iby" G ER
 ;
 D GL
 K @GL S I=0
 ;
 C FLOUT
 O FLOUT:(REWIND:READONLY)
 F  D  Q:$ZEOF
 .U FLOUT R A Q:$ZEOF
 .S I=I+1,@GL@(I)=$E(A,1,450)
 ;
 D PROT("WBGT",GL,1)
 ;
END ;
 I $L($G(FLOUT)) C FLOUT:(DELETE)
 Q
 ;
 ;
PROT(NM,VL,M,ZSY) ;
 ;;Q:'$G(WBDEB)
 N COUNTER
 S COUNTER=$O(@($$WBGPCON_",9999999)"),-1)+1
 S PROT=$$WBGPCON_","_COUNTER_")"
 S @PROT=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")_" \ "_$$GETP^%W1PRM("HZM")
 ;;U 0 W "NM="_NM_"  VL="_VL_"  M="_$G(M),!
 I '$G(M) S @PROT@(FUNC,NM)=VL
 I $G(M) M @PROT@(FUNC,NM)=@VL
 I $L($G(ZSY)) S @PROT@(FUNC,NM,"ZSY")=ZSY
 Q
 ;
PROTGT ;
 Q:'$G(MULADEB)
 M @PROT@("GT")=@GL
 Q
 ;
GL ;
 S GL=$$^W4MAIN("WBGT")
 Q
 ;
TMP(STAM) ;
 Q $$^WBTMP
 ;
ER ;
 D PROT("BZLER",$G(BZLER))
 D PROT("BZLER1",$G(BZLER1))
 G END
 ;
WBGP(STAM) ;
 Q $$^W4GL("WBGP")
 ;
WBGPCON(STAM) ;
 N WBGP S WBGP=$$WBGP
 ;;S WBGP=$E(WBGP,1,$L(WBGP)-1)
 Q WBGP_"("_+$H_",""CON"""
 ;
CMD(CMD,IND) ; 
 ZSY CMD 
 D PROT(IND,CMD,"",$ZSY) 
 Q
 
 
 
 
 
 
 
 
 
 

WBDAT
B1DAT ; [ 26.05.15 10:44 ] [ 14.01.15 20:30 ] [ 06.01.15 12:32 ]
 Q
RSD(DAT) ;
 I DAT="" Q ""
 S DAT=$TR(DAT,"/",".")
 N GG S GG=$P(DAT,".",3)
 S DAT=$TR($J($P(DAT,"."),2)," ",0)_"."_$TR($J($P(DAT,".",2),2)," ",0)_"."_$S($L(GG)=2:$P(DAT,".",3),$L(GG)<2:"00",1:$E(GG,$L(GG)-1,$L(GG)))
 Q DAT
 ;
BSL(DAT) ;
 I DAT="" Q "00/00/0000"
 I DAT?6N S DAT=$E(DAT,1,2)_"."_$E(DAT,3,4)_"."_$E(DAT,5,6)
 S DAT=$TR(DAT,".","/")
 N GG S GG=$P(DAT,"/",3)
 S DAT=$TR($J($P(DAT,"/"),2)," ",0)_"/"_$TR($J($P(DAT,"/",2),2)," ",0)_"/"_$S($L(GG)=2:$S(GG<40:20,1:19)_$P(DAT,"/",3),1:GG)
 Q DAT

WBDCB
B1DCB ; DOCH TEINOT [ 17.06.15 10:55 ] [ 26.05.15 10:51 ] [ 19.12.14 15:28 ] [
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC) D ^%L1C,^P1IN,^KLINIT
BG K ^TEMPDH($P) S KOT=" zelaw g""ec "
 S %SCRN="B1DCB",%FNAME="" D A^%L1SC S FRST=1,%L1SCBEG=1
 S HMK=""
Z D GETF^%L1SC I %BS K ^TEMPDH($P) Q
 ;
 K @$$^WBVRM,@$$^W4MAIN("TEMPDH")
 S SHC=0,SUMCB=0,SUMMK=0
 ;------------ DOCH KABALOT
 N KLIN,KLF S KLIN=$$^W4GL("KLIN")
 S KLF=$$^W4GL("KLF")
 S NUMBER="" F  S NUMBER=$O(@KLIN@("CB",NUMBER)) Q:NUMBER=""  D
 .N HZM,NCAB,SHUL,NMB,NAME,%SCRN,MZM,CHK,CAV,SHULA,SUGT,STRING
 .S CODDOC="CB" S STRING=$G(@KLIN@(CODDOC,NUMBER)) Q:STRING=""
 .I '$$^WBLKH(STRING) Q
 .S DAT2=$P($G(@KLF@(STRING,CODDOC,NUMBER)),"\",4)
 .Q:$$^%L1DC(DAT2,4)<DATS!($$^%L1DC(DAT2,4)>DATF)
 .;;D GET^KLINC S SHUL=SUMTZ1
 .S CARD=$G(@KLF@(STRING,CODDOC,NUMBER,"PRMP3","CARD"))
 .S NAME=$G(@KLF@(STRING,CODDOC,NUMBER,"PRMP3","LKHNAME"))
 .S CLUB=$G(@^KLF@(STRING,CODDOC,NUMBER,"PRMP3","CLUB"))
 .S CLUB1="" I CLUB S CLUB1=$$NAMEI^WBCLUB(CLUB)
 .S SUGT=$S($G(MZMN):"fn",1:"")_$S($G(CAV):$S($G(MZMN):",",1:"")_"`k",1:"")
 .S SHC=SHC+1,@$$^W4MAIN("TEMPDH")@(SHC)=DAT21_"\"_NUMBER_"\"_$J(SHUL,2,2)_"\"_CLUB1_"\"_CARD_"\"_NAME_"\"_SUGT_"\@@"
 .S @$$^W4MAIN("TEMPDH")@(SHC,"STRING")=STRING
 .S SUMCB=SUMCB+SHUL
M I '$D(@$$^W4MAIN("TEMPDH")) Q "NODATA!"
 Q
 S SUMH=SHC ;;S %FNAME="SUMH" D V^%L1SC
 S %SCRN="B1DCB"
 D VA^%L1SC S %SC("MIUN")="" D GETFG^%L1SC
 S %GET="99 - qitcdl" D N^%L1GET I %S=99 D KOT^KLPCTZ D ^%L1SCPC
 S %FNAME="" G BG
 Q
 ;
CB ;
 I %OLDTO="F9" D  S %SCRN="B1DCB" D A^%L1SC S %SC("ST")=1 Q
 .N CUST S CUST=$G(^TEMPDH($P,SH,"STRING")) Q:CUST=""
 .N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY,CUST,CB) D ^%L1C
 .S %SCRN="KLINC"
 .S STRING=CUST,CODDOC="CB",NUMBER=CB,NRZD=6 S %L1SC(%SCRN,"NUMBER")=CB
 .D ^KLINC
 Q
 ;
ADLKH ;
 I ADLKH<MELKH S %SC("ER")=1 Q
 Q
 ;
B1LKH(STRING) ;
 N OK S OK=0
 N N S N="" F  S N=$O(@$$^W4GL("B1CLUB")@(N)) Q:N=""  D
 .I STRING=$$LKHI^WBCLUB(N) S OK=1
 Q OK

WBERR
WBERR(STAM) ; [ 22.06.15 15:04 ] [ 08.06.15 09:54 ] [ 26.05.15 13:44 ]
 N (JB,%ARG,%REM) D ^%L1TS
 S MYDVN=$$^W4MYDVN,UR=1
 D GL^WBCON
 N A D INIT
 S END=0
 ;
 N N S N=""  F  S N=$O(@GL@(N)) Q:N=""  D  Q:END
 .S A=$G(@GL@(N)) Q:A=""
 .I A[("<UID>") S ER=$$^WBGETVL("UID")
 .I A[("<Description>") S NMER=$$FUNC^%UCASE($$^WBGETVL("Description"))
 .I A[("<Name>") S NMER1=$$^WBGETVL("Name")
 .I A[("<HandledError>") D INIT
 .I A[("</HandledError>") S END=1
 ;
 I ER S NMER1=$TR(NMER1,TSS,TS0)
 I ER,NMER1="" S NMER1=NMER
 ;
 I ER Q ER_"\"_NMER1
 Q "OK"
 ;
 ;
INIT ;
 S ER=""
 S NMER=""
 S NMER1=""
 Q
 ;
VWERR(ERR) ;
 Q "ERR\"_ERR

WBFMT
WBFMT(ST,LN1,LN2) ; [ 28.07.15 04:52 ] [ 27.07.15 16:12 ] [ 26.05.15 13:45 ]
 S ST=$G(ST)
 S:'$G(LN1) LN1=20
 S:'$G(LN2) LN2=16
 I ST'[":" S ST=$J(ST,LN1+LN2+3)
 I ST[":" D
 .N L S L=$L(ST,":")
 .S ST=$$HBR^%L1FRM($$SPA^%L1FRM($P(ST,":",1,L-1)),LN1)_" : "_$$HBR^%L1FRM($$SPA^%L1FRM($P(ST,":",L)),LN2)
 Q ST

WBFUNC
WBFUNC ; [ 12.11.24 18:51 ] [ 08.02.18 18:54 ] [ 23.01.18 14:27 ] 
 ;-----------BZLPOP funcs-------------------
 ;
SRCHCUSTOM(B1FNAME,B1LNAME,B1TZ,B1TEL,B1EMAIL)
 N (JB,%ARG,%REM,B1FNAME,B1LNAME,B1TZ,B1TEL,B1EMAIL,BZLER,BZLER1)
 D PUT^%W3DEB("WBFUNC-SRCHCUSTOM","B1FNAME=B1FNAME&B1LNAME=B1LNAME")
 I '$D(TSS) D ^%L1TS
 ;;S B1FNAME=$$HB($G(B1FNAME))
 ;;S B1LNAME=$$HB($G(B1LNAME))
 S B1FNAME=$TR(B1FNAME,TS0,TSS)
 S B1LNAME=$TR(B1LNAME,TS0,TSS)
 S B1TEL=$TR(B1TEL,"-","")
 ;
 ;;D PUT^%W3DEB("WBFUNC-SRCHCUSTOM","B1FNAME=B1FNAME&B1LNAME=B1LNAME")
 ;
 S FUNC="SearchCustomer"
 ;
 D HEADER(FUNC) ; --> O FL
 ;
 W "<xSearch>",!
 W "    <SearchShelly FirstName="""_B1FNAME_""""
 W "    LastName="""_B1LNAME_""""
 W "    Mobile="""_B1TEL_""""
 W "    Email="""_$G(B1EMAIL)_""""
 W "    Zehut="""_B1TZ_""" />",!
 W "</xSearch>",!
 W "<HowManyRecordsPerPage>1000</HowManyRecordsPerPage>",!
 W "<PageNumber>1</PageNumber>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
QCKSRC(B1STR)
 N (JB,%ARG,B1STR,BZLER,BZLER1)
 S FUNC="QuickIdentity"
 D HEADER(FUNC)
 W "<SearchString>"_B1STR_"</SearchString>"
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
ACTCRD(CRD,LKHID)
 N (JB,%ARG,CRD,LKHID,BZLER,BZLER1)
 S FUNC="AttachCard"
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 W "    <CustomerId>"_LKHID_"</CustomerId>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
CANCRD(CRD)
 N (JB,%ARG,CRD,BZLER,BZLER1)
 S FUNC="CancelCard"
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
CHLKHCRD(CRD,LKHID)
 N (JB,%ARG,CRD,LKHID,BZLER,BZLER1)
 S FUNC="ChangeCustomerCard"
 D HEADER(FUNC)
 W "    <CustomerId>"_LKHID_"</CustomerId>",!
 W "    <NewCardNumber>"_CRD_"</NewCardNumber>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHCR(CRD,LKHID)
 N (JB,%ARG,CRD,LKHID,BZLER,BZLER1)
 S FUNC="CreateNewCustomerAttachCard"
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 W "    <xCustomer>",!
 D LKHDET(CRD,LKHID)
 W "    </xCustomer>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHUPD(CRD,LKHID,CUSTID)
 N (JB,%ARG,CRD,LKHID,CUSTID,BZLER,BZLER1)
 S FUNC="UpdateCustomer"
 D HEADER(FUNC)
 W "    <xCustomer>",!
 D LKHDET(CRD,LKHID,$G(CUSTID))
 W "    </xCustomer>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHSTA(CRD)
 N (JB,%ARG,CRD,BZLER,BZLER1)
 S FUNC="RequestStatus"
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHGETDATA(CRD)
 N (JB,%ARG,CRD,BZLER,BZLER1)
 S FUNC="GetCustomerData"
 D HEADER(FUNC)
 W "     <CardNumber>"_CRD_"</CardNumber>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHLODD(CRD,DEB)
 N (JB,%ARG,CRD,DEB,BZLER,BZLER1)
 D PUT^%W3DEB("WBFUNC-LKHLODD","CRD=CRD&DEB=DEB")
 S FUNC="LoadPrePaidCard"
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 W "     <LoadValue>"_DEB_"</LoadValue>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHCAND(CRD,REFID)
 N (JB,%ARG,CRD,REFID,BZLER,BZLER1)
 S FUNC="CancelPrePaidLoad"
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 W "     <ShellyReferenceId>"_REFID_"</ShellyReferenceId>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHDEBSTA(CRD)
 N (JB,%ARG,CRD,BZLER,BZLER1)
 S FUNC="PrePaidStatus"
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 Q
 ;
LKHDET(CRD,LKH,CUSTID)
 W "<Customer "
 W " CustomerId="""_$G(CUSTID)_""" "
 W " Zehut="""_$$TZ^W4L(LKH)_""" "
 N LKNM,FNAME,LNAME
 S LKNM=$$SPA^%L1FRM($$LKH^W4L(LKH))
 ;
 S FNAME=$P(LKNM," ",$L(LKNM," "))
 S LNAME=$P(LKNM," ",1,$L(LKNM," ")-1)
 W " FirstName="""_$$HB(FNAME)_""" "
 W " LastName="""_$$HB(LNAME)_""" "
 I $$JOMH^W4L(LKH) W " BirthDate="""_$$DAT($$JOMH^W4L(LKH))_""" "
 ;;W " Anniversary="""_$$DAT($$JOMNS^W4L(LKH))_""" "
 ;;W " GendersId="""" "
 ;;W " CitiesId="
 ;
 W " Street="""_$$HB($$KTV^W4L(LKH))_""" "
 ;W " StreetNumber="
 ;W " POBox="
 ;W " ZipCode="
 ;W " Phone="
 W " Mobile="""_$TR($$PELE^W4L(LKH),"-","")_""" "
 W " Email="""_$$FUNC^%UCASE($$EMAIL^W4L(LKH))_""" "
 ;W " JoinDate="
 ;;W " CardNumber="""_CRD_""" "
 W "  />"
 ;
 Q ;;
 ;;---------------ORDER funcs-------------------------
GETBNF(HZM)
 N (JB,%ARG,HZM,BZLER,BZLER1)
 S FUNC="CreateInvoice"
 S @$$^W4GL("BZLPY")@(HZM,"SENDBILL")=$ZD($H,"DD.MM.YY  24:60")
 S CRD=$$BSCARD^W4HZMST(HZM)
 S COUP=""
 ;
 D HEADER(FUNC)
 ;
 W "     <xInvoice>"
 D HZMDET(HZM)
 W "     </xInvoice>",!
 W "     <CardNumber>"_CRD_"</CardNumber>",!
 W "     <InvoiceNumber>"_HZM_"</InvoiceNumber>",!
 W "     <CouponCode>"_COUP_"</CouponCode>",!
 ;
 D FOOTER(FUNC)
 ;
 D ^WBCON(FUNC,FL)
 Q
 ;
 ;
CANINV(HZM)
 N (JB,%ARG,HZM,BZLER,BZLER1)
 I HZM>0,$D(@$$^W4ORD@(HZM,"CANINV")) Q
 S FUNC="CancelInvoice"
 S CRD=$$BSCARD^W4HZMST(HZM)
 D HEADER(FUNC)
 W "    <CardNumber>"_CRD_"</CardNumber>",!
 W "     <InvoiceNumber>"_HZM_"</InvoiceNumber>",!
 D FOOTER(FUNC)
 D ^WBCON(FUNC,FL)
 S @$$^W4ORD@(HZM,"CANINV")=$ZD($H,"DD.MM.YY  24:60")
 Q
 ;
CLINV(HZM)
 N (JB,%ARG,HZM,BZLER,BZLER1)
 S FUNC="CloseInvoiceAndUseCredits"
 S @$$^W4GL("BZLPY")@(HZM,"SENDBILL")=$ZD($H,"DD.MM.YY  24:60")
 S CRD=$$BSCARD^W4HZMST(HZM)
 I 'CRD,$D(@$$^W4ORD@(HZM,"BSL","PAY",1,"CARD"))#2 S CRD=^("CARD")
 S CRED=+$G(@$$^W4ORD@(HZM,"BSL","NKDPAY"))
 ;
 D HEADER(FUNC)
 ;
 W "     <xInvoice>"
 D HZMDET(HZM)
 W "     </xInvoice>",!
 W "     <CardNumber>"_CRD_"</CardNumber>",!
 W "     <InvoiceNumber>"_HZM_"</InvoiceNumber>",!
 W "     <CreditsToUse>"_CRED_"</CreditsToUse>",!
 ;
 D FOOTER(FUNC)
 ;
 D ^WBCON(FUNC,FL)
 Q
 ;
 ;
PAYPPC(HZM,CRD,PAYVL)
 N (JB,%ARG,HZM,CRD,PAYVL,BZLER,BZLER1)
 S FUNC="PayWithPrePaidCard"
 S @$$^W4GL("BZLPY")@(HZM,"PAYPPC")=$ZD($H,"DD.MM.YY  24:60")
 ;;S CRD=$$BSCARD^W4HZMST(HZM)
 ;;S PAYVL=""
 ;
 D HEADER(FUNC)
 ;
 W "     <CardNumber>"_CRD_"</CardNumber>",!
 W "     <InvoiceNumber>"_HZM_"</InvoiceNumber>",!
 W "     <PayValue>"_PAYVL_"</PayValue>",!
 ;
 D FOOTER(FUNC)
 ;
 D ^WBCON(FUNC,FL)
 Q
 ;
 ;
CANPPC(CRD,BZLREFID)
 N (JB,%ARG,CRD,BZLREFID,BZLER,BZLER1)
 S FUNC="CancelPrePaidPayment"
 ;
 D HEADER(FUNC)
 ;
 W "     <CardNumber>"_CRD_"</CardNumber>",!
 W "     <ShellyReferenceId>"_BZLREFID_"</ShellyReferenceId>",!
 ;
 D FOOTER(FUNC)
 ;
 D ^WBCON(FUNC,FL)
 Q
 ;
 ;
HZMDET(HZM)
 N NMB S NMB=$$NMB^W4HZMST(HZM)
 W "<Invoice "
 W "  InvoiceNumber="""_HZM_""""
 W "  TableNumber="""_NMB_""""
 W "  NumberOfDiners="""_$$SOAD^W4HZMST(HZM)_""""
 W "  OrderType="""_$S($L(NMB)>3:3,$$TAW^W4DLPK(NMB):2,1:3)_"""" ;;1-rest 2-TAW 3- DLV
 ;
 N ZMANK S ZMANK=$$ZMANK^W4HZMST(HZM)
 N DAT S DAT=$P(ZMANK,"  ")
 S DAT=$TR($P(DAT,".",1,2)_".20"_$P(DAT,".",3),".","/")
 ;
 W "  OpenDate="""_DAT_" "_$P(ZMANK,"  ",2)_""""
 W "  WaiterName="""_$$HB($$^W4NAME($$MKBL^W4HZMST(HZM)))_""""
 W "  xmlns="""""_" >",!
 ;
 D HZMITEMS(HZM)
 W "</Invoice>"
 Q
 ;
 ;
HZMITEMS(HZM,PR)
 N (JB,%ARG,HZM,PR)
 S SUMITEMS=0
 N SUM S SUM=0
 ;
 S KF=1
 ;
 S TSHL=$$TSHL^W4HZMST(HZM)
 S HNH=$$HNH^W4HZMST(HZM)
 S DMSH=$$DMSH^W4HZMST(HZM)
 ;
 ;;I TSHL+HNH-DMSH D
 .S KF=TSHL/(TSHL+HNH-DMSH)
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .N A S A=$G(^(I))
 .I $G(PR),$$NOMOD(A) Q
 .S CD=$P(A,"\")
 .I '$$ISNUM^%L1FRM(CD) Q
 .N QN,PRC S QN=$$QNT(A),PRC=$$ITEMPRC(A)
 .S SUM=$J(QN*PRC,2,2)
 .S HRP=$P(A,"\",8)
 .S AH=$P($G(@$$^W4ORD@(HZM,I+1)),"\")
 .I $E(AH)'="-",AH'["%" S AH=0
 .E  S AH=+$E(AH,2,10)
 .S KF1=(100-AH)*KF
 .S AH1=100-KF1
 .S SUM=QN*PRC*(100-AH1)*.01
 .
 .D XMLITEM(CD,$$ITEMNAME(A),QN,PRC,$J(AH1,2,2),$J(SUM,2,2),"D")
 .
 .I HRP'="" D
 ..D XMLITEM("0",HRP,1,0,0,0,"I")
 .
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  I N D
 ..N STT S STT=$G(^(N))
 ..I $D(^(N))>9 D  Q
 ...N K F K=1:1 Q:'$D(@$$^W4ORD@(HZM,I,N,K))  D
 ....S B=$G(^(K))
 ....I $P(B,"\") D  Q
 .....S CDT=$P(B,"\")
 .....S NAMET=$P(B,"\",2)
 .....S QNT=$P(B,"\",3)
 .....S PRCT=$P(B,"\",7)
 .....S SUMT=$J(QNT*PRCT*(100-AH1)*.01,2,2)
 .....D XMLITEM(CDT,NAMET,QNT,PRCT,$J($G(AH1),2,2),SUMT,"S")
 ....
 ....S CDT=$P(B,"\",4)
 ....S NAMET=$P(B,"\",5)
 ....S QNT=$P(B,"\",3)
 ....S PRCT=$P(B,"\",7)
 ....S SUMT=$J(QNT*PRCT*(100-AH1)*.01,2,2)
 ....D XMLITEM(CDT,NAMET,QNT,PRCT,$J($G(AH1),2,2),SUMT,"S")
 ..
 ..S NAMET=$P(STT,"\")
 ..S PRCT=$P(STT,"\",2)
 ..S QNT=$P(STT,"\",3)
 ..S SUMT=$J(QNT*PRCT*(100-AH1)*.01,2,2)
 ..D XMLITEM(N,NAMET,QNT,PRCT,$J($G(AH1),2,2),SUMT,"S")
 .W "</Item>",!
 ;
 N PRC S PRC=-$$SHNH^W4HZMST(HZM)+$$TOTDMS^W4HZMST(HZM)
 D XMLITEM("0","zegpd",1,$J(PRC,2,2),0,$J(PRC,2,2),"D")
 W "</Item>",!
 Q
 ;
 ;
XMLITEM(CD,ITEMNAME,QNT,ITEMPRC,AHP,SUM,ITEMTYPE)
 S ITEMNAME=$$HB(ITEMNAME)
 ;
 W "  <Item "
 W "     Makat="""_CD_""""
 W "     Name="""_ITEMNAME_""""
 W "     Qty="""_QNT_""""
 W "     OriginalPrice="""_$J(ITEMPRC,2,2)_""""
 W "     DiscountPercentInPos="""_$J(AHP,5,5)_""""
 W "     FinalPrice="""_$J(SUM,2,2)_""""
 W "     ItemType="""_ITEMTYPE_""""  ;;D - dish S - supplement I - instruction
 N SUG S SUG=$$SUG^W4P(CD)
 W "   CategoryId="""_+SUG_""""
 W "   CategoryName="""_$$HB($G(@$$^W4GL("PARSUG")@(+SUG)))_""""
 I ITEMTYPE'="D" W "   />",!
 I ITEMTYPE="D" W "   >",!
 Q
 ;
QNT(A) ;
 Q $P(A,"\",5)
 ;
ADDONPRC(A)
 Q $P(A,"\",6)
 ;
ITEMPRC(A) ;
 Q $P(A,"\",4)
 ;
F2I(N,M)
 Q $J(N,M,M)*(10**M)
 ;
ITEMNAME(A)
 Q $P(A,"\",3)
 ;
SSHUL(HZM) ;
 Q $$SHUL^W4HZMST(HZM)+$$SHULA^W4HZMST(HZM)
 ;
TSHL(HZM)
 Q $$TSHL^W4HZMST(HZM)
 ;
ITRA(HZM) Q $$TSHL(HZM)-$$SSHUL(HZM)
 ;
NOMOD(A) ;
 I A["\@@" Q 1
 Q 0
 ;
HB(TXT) ;
 I '$D(TSS) D ^%L1TS
 ;;S A=Q $TR($$INVH^%L1FRM(TXT),TS0,TS1)
 S TXT=$TR(TXT,"""&?='","")
 Q $TR($$INVH^%L1FRM(TXT),TS0,TSS)
 ;;Q $TR(TXT,TS0,TSS)
 ;
FMTDAT(DAT) ;
 Q $TR($P(DAT,".",1,2)_".20"_$P(DAT,".",3),".","/")
 ;
DAT(VL) ;
 Q $$BSL^WBDAT(VL)
 ;
 ;
HEADER(FUNC);
 S FL=$$FLIN^WBZPRM
 C FL:DELETE
 O FL:(WRITE:NEWVERSION:REWIND:GROUP="rw")
 U FL
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 W " <soap:Body>",!
 W "     <"_FUNC_" xmlns=""https://api.shellyonline.net/API/Alpos.asmx"">",!
 ;;W "     <"_FUNC_" xmlns=""http://testapi.shellyonline.net/api/demopos.asmx"">",!
 W "         <User>"_$$UID^WBZPRM_"</User>",!
 W "         <Password>"_$$PWD^WBZPRM_"</Password>",!
 Q
 ;
FOOTER(FUNC);
 W "  </"_FUNC_">",!
 W " </soap:Body>",!
 W "</soap:Envelope>",!
 C FL
 Q
 
 
 
 
 
 

WBGDATA
WBGDATA(GL,ZAPR) ; [ 26.05.15 13:46 ] [ 07.12.14 17:50 ] [
 N (JB,%ARG,%REM,GL,ZAPR) S VL=""
 S MYDVN=$$^W4MYDVN,UR=1
 ;
 F I=1:1 Q:'$D(@GL@(I))  D  Q:$L(VL)
 .S A=$G(^(I))
 .S TXT=$P(A,":",$L(A,":"))
 .S TXT=$$SPA^%L1FRM(TXT)
 .I $$SPA^%L1FRM(ZAPR)=TXT S VL=$$SPA^%L1FRM($P(A,":",1,$L(A,":")-1))
 Q VL

WBGDATAT
B1GDATA(GL,ZAPR) ; [ 26.05.15 13:45 ] [ 07.12.14 17:50 ] [
 N (GL,ZAPR) S VL=""
 S MYDVN=$$^%L3MYDVN,UR=1
 ;
 F I=1:1 Q:'$D(@GL@(I))  D  Q:$L(VL)
 .S A=$G(^(I))
 .S TXT=$P(A,":",$L(A,":"))
 .S TXT=$$SPA^%L1FRM(TXT)
 .I $$SPA^%L1FRM(ZAPR)=TXT S VL=$$SPA^%L1FRM($P(A,":",1,$L(A,":")-1))
 Q VL

WBGETVL
WBGETVL(EL,PARENT) ; [ 08.07.15 09:44 ] [ 26.05.15 16:06 ] [ 13.12.14 12:47 ]
 N (JB,%ARG,%REM,EL,PARENT)
 D ^%L1TS
 N PR S PR=0 I '$L($G(PARENT)) S PR=1
 D GL^WBCON
 N OK,A,ZN S OK=0,ZN=""
 ;
 N N S N=""  F  S N=$O(@GL@(N)) Q:N=""  D  Q:OK
 .S A=$G(@GL@(N)) Q:A=""
 .I $L($G(PARENT)),A[("<"_PARENT) S PR=1 Q
 .I $L($G(PARENT)),A[("</"_PARENT) S PR=0 Q
 .I 'PR Q
 .I A[("<"_EL_">") S ZN=$$ZN(A,EL) S OK=1 Q
 ;
 Q ZN
 ;
 ;
ZN(A,EL) ;
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 I $$HB(ZN) D
 .S ZN=$$FUNC^%UCASE(ZN)
 .S ZN=$TR(ZN,TSS,TS0)
 .S ZN=$$INVH^%L1FRM(ZN)
 S ZN=$$SPA^%L1FRM(ZN)
 Q ZN
 ;
HB(ZN) ;
 N OK S OK=0
 N J F J=1:1:$L(ZN) D  Q:OK
 .I $A(ZN,J)>127,$A(ZN,J)<151 S OK=1
 Q OK

WBINIT
WBINIT ; [ 30.08.15 11:04 ] [ 29.08.15 12:50 ] [ 12.07.15 06:57 ]
 D KILL^WBPARAM
 D CLEAR^WBANS("")
 K @$$TMP^WBSTAT
 Q

WBINVC
WBINVC(HZM) ; [ 29.04.16 13:02 ] [ 13.08.15 17:22 ] [ 05.08.15 14:41 ] 
 N (JB,%ARG,%REM,HZM)
 I '$G(HZM) Q "NOORD"
 I $$^W4ISORD(HZM),$$CLOSE^W4HZMST(HZM) Q ""
 S GLT=$$^W4TMPORD
 S GLORD=$$^W4ORD_"(HZM)"
 ;
 D CLR(GLT)
 D CLR(GLORD)
 ;
 D GETBNF^WBFUNC(HZM)
 ;
 I $G(BZLER) Q "ERR\"_BZLER_"\"_$G(BZLER1)
 S ERR=$$^WBERR I ERR Q $$VWERR^WBERR(ERR)
 ;
 S TMP=$$TMP^WBSTAT
 ;
 D ^WBCDATA(TMP)
 ;
 S RES=$$WR(GLT) I RES<1 Q RES
 S RES=$$WR(GLORD) I RES<1 Q RES
 Q 1
 ;
 ;
CLR(GL) ;
 I $$^WBISBON(HZM,GL) D ^WBCLRINV(HZM,GL,1)
 Q
 ;
 ;
WR(GL) ;
 N PRTMP S PRTMP=0 I GL=GLT S PRTMP=1
 M @GL@("BSL","INVPC")=@TMP
 ;
 S @GL@("BSL","ASM")=$$GETVL("ShellyInvoiceId")
 S @GL@("BSL","HNH")=$$GETVL("TotalRefund")
 S @GL@("BSL","NKD")=$$GETVL("CurrentCredits")
 ;
 S LAST=$O(@GL@(99999),-1)+1
 S PARBON=$$PARBON^WBPRM
 S PARNKD=$$PARNKD^WBPRM
 ;
 S HN=-$G(@GL@("BSL","HNH"))
 S RES=1
 ;
 I HN D
 .N STR,TSHL,RES,HR
 .S HR="""wi'bel"" qpfia ly zeahd"
 .
 .I PRTMP D  Q
 ..S STR="0~"_PARBON_"~"_$$SHEM^W4P(PARBON)_"~"_HN_"~1"
 ..S $P(STR,"~",12)="@@@+"
 ..S @GL@(LAST)=STR
 ..;D
 ...S LAST=LAST+1
 ...S STR="1~"_PARBON_"-C0~"_HR
 ...S $P(STR,"~",12)="@@@+"
 ...S @GL@(LAST)=STR
 ..S TSHL=+$$GETSUM^W3HZMST(JB)
 ..D PUT^W3HZMST(JB,"TSHL",TSHL)
 ..;
 ..;;S RES=$$^W4NEWHZ(JB,HZM,0)
 .
 .S STR=PARBON_"\\"_$$SHEM^W4P(PARBON)_"\"_$J(HN,2,2)_"\1\\"_$J(HN,2,2)
 .S $P(STR,"\",8)=HR
 .S $P(STR,"\",10)="@@@+"
 .S LAST=$O(@$$^W4ORD@(HZM,99999),-1)
 .S @$$^W4ORD@(HZM,LAST+1)=STR
 .S TSHL=$$TOTORD^W4HZMST(HZM)
 .D PUT^W4HZMST(HZM,"TSHL",TSHL)
 ;
 I RES<1 Q "ERRCD\ORDERSAVEERROR"
 ;
 Q 1
 ;
 ;
GETVL(EL) ;
 Q $$^WBGETVL(EL)
 

WBISBON
WBISBON(HZM,GL) ; [ 08.07.15 09:36 ] [ 07.07.15 17:04 ] [ 06.07.15 04:43 ]
 N (JB,%ARG,%REM,HZM,GL)
 I $G(GL)="" S GL=$$^W4ORD_"(HZM)"
 N PRTMP S PRTMP=0 I GL["TMPORD" S PRTMP=1
 N I,A,PAR,OK S OK=0
 N I S I="" F  S I=$O(@GL@(I)) Q:I=""   I I D  Q:OK
 .S A=$G(^(I)) I PRTMP,$P(A,"~") Q
 .S PAR=$S(PRTMP:$P(A,"~",2),1:$P(A,"\"))
 .I PAR=$$PARBON^WBPRM!(PAR=$$PARNKD^WBPRM) S OK=1
 Q OK

WBISCARD
WBISCARD(HZM) ; [ 11.07.15 17:43 ] [ 26.05.15 19:12 ] [ 06.12.14 15:43 ]
 N OK,N,A,PR
 I $G(@$$^W4ORD@(HZM,"BSL","CARD")) S OK=1 Q OK
 ;
 I '$$PAR^WBPRM Q 0
 N GL S GL=$$^W4ORD_"(HZM)"
 S OK=0
 ;
 S N=9999 F  S N=$O(@GL@(N),-1) Q:N=""  I N D  Q:OK
 .S A=$G(^(N))
 .S PAR=$P(A,"\")
 .I PAR=$$PAR^WBPRM S OK=1
 ;
 Q OK

WBLKH
WBLKH(BSCARD) ; [ 03.07.15 20:03 ] [ 26.06.15 18:12 ] [ 24.06.15 20:36 ]
 N (JB,%ARG,%REM,BSCARD)
 I $E(BSCARD)=9,BSCARD["." Q BSCARD
 S CLUB=$$^WBPARAM("CLUB") I CLUB="" Q "NOCLUB"
 N LKH S LKH=9_$TR($J(CLUB,2)," ",0)_"."_BSCARD
 Q LKH
 ;
 ;
GET ;
 N %RKV,%VL,%REG
 S BSCARD=$$^WBPARAM("BSCARD")
 S LKH=$$WBLKH(BSCARD)
 F I="FNAME","LNAME","CUSTID","EMAIL;E","TELB","PELE","TZ","JOMH","KTOV" D
 .S %RKV=$P(I,";")
 .S %REG=$P(I,";",2)
 .S %VL=$$^WBANS("CUST",%RKV)
 .S @%RKV=$S(%REG="E":$$FUNC^%UCASE(%VL),1:%VL)
 Q  ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,SCRN,PRM) ;
 D PUT^%W3DEB("WBLKH-SAVE","SCRN=SCRN&PRM=PRM")
 S OK=$$^WBSV2ANS(SCRN,PRM) I 'OK Q OK
 S BSCARD=$$^WBPARAM("BSCARD")
 S LKH=$$WBLKH(BSCARD)
 ;
 D RKVSCR(SCRN) ; -- SCRN="WBLKH"
 ;
 D IDKLK^WBSTAT
 ;
 S WBLKH="UPD"
 D CRTMPDET^WBSTAT("CUSTDET")
 Q 1
 ;
 ;
CUSTUPD(STAM) ;
 N (JB,%ARG,PRM) ;
 S SCRN="WBLKH"
 S BSCARD=$$^WBPARAM("BSCARD")
 S LKH=$$WBLKH(BSCARD)
 S CUSTID=$$^WBANS("CUST","CUSTID")
 ;
 I $$^WBPARAM("CUSTUPD") D
 .D LKHUPD^WBFUNC(BSCARD,LKH,CUSTID)
 ;
 I $$^WBPARAM("CUSTNEW") D
 .D LKHCR^WBFUNC(BSCARD,LKH)
 ;
 I $G(BZLER) Q "ERR\"_BZLER_"\"_$G(BZLER1)
 S ERR=$$^WBERR I ERR D CLRBSCARD^WBCARD Q $$VWERR^WBERR(ERR)
 ;
 Q 1
 ;
 ;
ANS(SCRN,RKV) ;
 Q $$^WBANS(SCRN,RKV)
 ;
RKVSCR(SCRN) ;
 N I,RKV,REG,VL
 F I="FNAME;H","LNAME;H","CUSTID","EMAIL;E","TELB","PELE","TZ","JOMH","KTOV;H" D
 .S RKV=$P(I,";")
 .S REG=$P(I,";",2)
 .S VL=$$ANS(SCRN,RKV)
 .S @RKV=$S(REG="H":$$INVH^%L1FRM(VL),REG="E":$$FUNC^%UCASE(VL),1:VL)
 Q

WBPAR
WBPAR(PAR) ; [ 26.05.15 19:14 ] [ 18.12.14 17:01 ] [ 09.12.14 09:48 ] [
 N I I $G(PAR)="" Q 0
 N OK S OK=0
 F I="PAR","PARMDN","PARUPD","PARYMH","PARNSN","PARMHZT","PARBON","PARNKD" D  Q:OK
 .I PAR=$G(@$$^W4PRM@("BSL",I)) S OK=1
 Q OK
 ;
TV(PAR) ;
 N I I $G(PAR)="" Q 0
 N OK S OK=0
 F I="PARBON","PARNKD" D  Q:OK
 .I PAR=$G(@$$^W4PRM@("BSL",I)) S OK=1
 Q OK

WBPARAM
WBPARAM(RKV)  ; [ 21.06.15 20:56 ] [ 08.06.15 14:29 ] [
 Q $G(@$$^W4MAIN("WBPARAM")@(RKV))
 ;
SET(RKV,VL) ;
 S @$$^W4MAIN("WBPARAM")@(RKV)=$G(VL)
 Q
 ;
KILL ;
 K @$$^W4MAIN("WBPARAM")
 Q

WBPAY
WBPAY(CARD,HZM,RZN) ; [ 10.07.15 17:30 ] [ 09.07.15 19:03 ] [ 22.11.11 08:53 ]
 N (JB,%ARG,%REM,CARD,HZM,RZN)
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I $G(RZN),RZN>ITRA,ITRA'<0 Q "ER;SUMTOOBIG"
 I $G(RZN),RZN<ITRA,ITRA<0 Q "ER;SUMTOOBIG"
 ;
 D PAYPPC^WBFUNC(HZM,CARD,RZN)
 I $G(BZLER) Q "ERR\"_BZLER_"\"_$G(BZLER1)
 S ERR=$$^WBERR I ERR Q $$VWERR^WBERR(ERR)
 ;
 S ASRL=$$^WBGETVL("PaymentAccepted")
 S TMP=$$TMP^WBSTAT
 ;
 D ^WBCDATA(TMP)
 ;
 ;;S BSNAME=$$^WBGDATA(TMP,"gewl")
 ;
 S ASM=$$^WBGETVL("ShellyReferenceId")
 ;
 I 'ASRL Q "ERRCD\PAYMENTNOTRECEIVED"
 ;
 S IND=$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1)+1
 ;
 S CLUB1=$$^WBANS("WBCARD","BSCLUB1")
 S BSNAME=$$^WBANS("WBCARD","BSNAME")
 ;
 M @$$^W4ORD@(HZM,"BSL","PAY",IND)=@TMP
 S @$$^W4ORD@(HZM,"BSL","PAY",IND,"CLUB")=$$^WBANS("WBCARD","BSCLUB")
 S @$$^W4ORD@(HZM,"BSL","PAY",IND,"CLUB1")=CLUB1
 S @$$^W4ORD@(HZM,"BSL","PAY",IND,"PAID")=ASRL
 S @$$^W4ORD@(HZM,"BSL","PAY",IND,"CARD")=CARD
 S @$$^W4ORD@(HZM,"BSL","PAY",IND,"NAME")=BSNAME
 S @$$^W4ORD@(HZM,"BSL","PAY",IND,"ASM")=ASM
 ;
 D PC^WBPCBON(TMP,HZM_"-"_IND_" zipeayg!",CLUB1,1)
 ;
 S (LKHN,CUSN)=$$LKH^WBCLUB
 I 'LKHN Q "ERRCD\CUSTOMNOTDEFINED"
 S LKHN1=$$LKH^W4L(LKHN)
 S (LKAH,LKHNH)=0
 S HRA="BSL;"_CARD_";"_BSNAME
 S HZMLK=ASM
 S ASR=ASRL
 ;
 S (BLIPR,P1TNOPR)=""
 S ASR=$J(ASR,2,2),LKHNH=$J(LKHNH,2,2)
 I ASR>$$TSHL^W4HZMST(HZM) S TIP=ASR-$$TSHL^W4HZMST(HZM)
 ;
 D ^W4ASR
 Q 1

WBPCBON
WBPCBON(HZM) ; [ 30.08.15 13:10 ] [ 28.07.15 04:46 ] [ 27.07.15 16:13 ]
 N (HZM)
 S GL=$$^W4ORD_"(HZM,""BSL"",""INVPC"")"
 S KOT=" wi'bel qpfia zeahd"
 D PC(GL,KOT,$$BSCLUB^W4HZMST(HZM))
 Q
 ;
 ;
PC(GL,KOT,CLUB1,CUT) ;
 D ^W4MDPPC
 N SM,TXT,N,LN
 S SM=0
 S LN=40
 ;
 D KAV
 ;
 N PRHD S PRHD=0
 I $E(KOT,$L(KOT))="!" S KOT=$E(KOT,1,$L(KOT)-1),PRHD=1
 I PRHD D HD
 ;
 I $L($G(KOT)) D
 .S KOT=$$SPA^%L1FRM(KOT)
 .I $L(KOT)<20 D  Q
 ..S TXT=$G(%MDP("B"))_$$CENTRB^%L1FRM(KOT,LN)_$G(%MDP("N")) D S1
 .S TXT=$$CENTR^%L1FRM(KOT,LN) D S1
 ;
 I $L($G(CLUB1)) D
 .D SPACELN
 .S TXT=$$CENTR^%L1FRM(CLUB1_" : oecren",LN) D S1
 ;
 D SPACELN
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
 .N A S A=$G(^(N))
 .S TXT=$$^WBFMT(A,23,13)
 .;;U 0 W TXT,!
 .D S1
 ;
 D SPACELN
 ;
 D KAV
 I $G(CUT) D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
 ;
S1 D S1^W4HZTH
 Q
 ;
KAV ;
 S TXT=$G(%MDP("B"))_$TR($J("",19)," ","*")_$G(%MDP("N")) D S1
 Q
 ;
SPACELN ;
 S TXT="" D S1
 Q
 ;
HD ;
 N LN,SM S LN=40,SM=0
 N I,TXT F I=1:1:4 D
 .S TXT=$G(@$$^W4PL@("ESEK",I))
 .S TXT=$$SPA^%L1FRM(TXT)
 .I I=1 S TXT=$S($L(TXT)>20:$$CENTR^%L1FRM(TXT,LN),1:$G(%MDP("B"))_$$CENTRB^%L1FRM(TXT,LN)_$G(%MDP("N"))) D S1 Q
 .S TXT=$$CENTR^%L1FRM(TXT,LN) D S1
 Q

WBPR
WBPR(DAT,ORDPR) ; [ 12.09.23 18:19 ] [ 04.09.23 12:47 ] [ 30.08.23 19:09 ] 
 N (JB,%ARG,DAT,ORDPR) D ^%L1C
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 S DT=$$^%L1DC(DAT,3)
 S GL=$$^W4GL("WBGP")
 S EL=""
 ;
 W "<pre style=""font-size:"_$$^W3FSZ(10)_""">",!
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .S NOM="" F  S NOM=$O(@GL@(DT,N,NOM)) Q:NOM=""  D
 ..S A=$G(^(NOM))
 ..S ORD=$P(A,"\",2)
 ..S ORD=$$SPA^%L1FRM(ORD)
 ..I $G(ORDPR),ORD'=ORDPR Q
 ..W N_" "_NOM_" : "_A_EL,!
 ..S N1="" F  S N1=$O(@GL@(DT,N,NOM,N1)) Q:N1=""  D
 ...I $D(^(N1))#2 W N1_" = "_$G(^(N1))_EL,!
 ...S N2="" F  S N2=$O(@GL@(DT,N,NOM,N1,N2)) Q:N2=""  D
 ....I $D(^(N2))#2 W N1_" : "_N2_" = "_$G(^(N2))_EL,!
 ....S N3="" F  S N3=$O(@GL@(DT,N,NOM,N1,N2,N3)) Q:N3=""  D
 .....I $D(^(N3))#2 W N1_" "_N2_" : "_N3_" = "_$$RKV(^(N3))_EL,!
 W "</pre>",!
 Q
 ;
RKV(B) ; 
 S B=$$RPL^%L1FRM(B,"<","&lt;") 
 S B=$$RPL^%L1FRM(B,">","&gt;") 
 Q B
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WBPRM
WBPRM ; [ 14.08.15 02:51 ] [ 28.05.15 17:59 ] [ 25.05.15 11:19 ]
GET ;
 S BSL=$G(@$$^W4PRM@("BSL"))
 F I="NKD","NOKFL","PAR","PARMDN","PARUPD","PARYMH","PARNSN","PARMHZT","PARBON","PARNKD" D
 .S @I=$G(@$$^W4PRM@("BSL",I))
 Q
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("WMCSETU","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("BSL")
 S @$$^W4PRM@("BSL")=BSL
 F I="NKD","NOKFL","PAR","PARMDN","PARUPD","PARYMH","PARNSN","PARMHZT","PARBON","PARNKD" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@("BSL",I)=$G(@I)
 .I $E(I,1,3)="PAR",VL S @$$^W4GL("PRTBH")@(VL)=""
 Q RES
 ;
 ;
PAR(STAM) ;
 Q $G(@$$^W4PRM@("BSL","PAR"))
 ;
PARBON(STAM) ;
 Q $G(@$$^W4PRM@("BSL","PARBON"))
 ;
PARNKD(STAM) ;
 Q $G(@$$^W4PRM@("BSL","PARNKD"))
 ;
NKD(STAM) ;
 Q $G(@$$^W4PRM@("BSL","NKD"))
 ;
NOKFL(STAM) ;
 Q $G(@$$^W4PRM@("BSL","NOKFL"))
 ;

WBQIDNT
WBQIDNT ; [ 22.06.15 05:43 ] [
 Q
SAVE(PRM) ;
 I $G(SCRN)="" Q "NOSCRN"
 Q $$^WBSV2ANS(SCRN,PRM)

WBREP
WBREP(MEDAT,ADDAT) ; [ 27.12.18 15:28 ] [ 26.10.15 14:16 ] [ 05.08.15 18:08 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,%REPN)
 D ^W4IN,^%W1PCVRM K @VRM
 S D1=$$^%L1DC(MEDAT,3),D2=$$^%L1DC(ADDAT,3)
 ;
 D TRH(D1,D2)
 ;
 S %REPN="WBREP"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("METRH")=D1,%REPN("ADTRH")=D2
 S %REPN("METRH","VIEW")=1,%REPN("ADTRH","VIEW")=1
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 S %REPN("PRTN")=$$^%W1JB
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 D PUT^%W1PRM("HRFREP","wbrep.jsp?JB="_JB)
 ;
 Q
 ;
 ;
TRH(METRH,ADTRH) ;
 K @$$^W4MAIN("VRM")
 N II,DT,MEDT,ADDT,NKDPAY,CLUB,BSHNH,BSNAME,BSCARD,BSASM,ST,NPAY,CARD,ASM,SUM,NAME
 N DAT,HZ
 ;
 F DT=METRH:1:ADTRH D
 .S DAT=$ZD(DT,"DD.MM.YY")
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"BSL"))>9 D
 ..I '$$^WBISBON(HZ),'$$BSPAY^W4HZMST(HZ),'$$BSNKDPAY^W4HZMST(HZ),'$$BSHNH^W4HZMST(HZ) Q
 ..I $$BSDEL^W4HZMST(HZ) Q
 ..S NKDPAY=$$BSNKDPAY^W4HZMST(HZ)
 ..;
 ..I '$D(@$$^W4ORD@(HZ,"BSL","NKDPAY","DEL")) D
 ...S CLUB=$$BSCLUB^W4HZMST(HZ)
 ...S BSHNH=$$BSHNH^W4HZMST(HZ)
 ...S BSNAME=$$BSNAME^W4HZMST(HZ)
 ...S BSCARD=$$BSCARD^W4HZMST(HZ)
 ...S BSASM=$$BSASM^W4HZMST(HZ)
 ...I BSNAME="",BSCARD?.P,BSASM?.P,'BSHNH,'NKDPAY Q
 ...S ST=BSNAME_"\"_BSCARD_"\"_BSASM_"\"_BSHNH_"\"_NKDPAY
 ...D SET(DT,CLUB,HZ,ST)
 ..
 ..S NPAY="" F  S NPAY=$O(@$$^W4ORD@(HZ,"BSL","PAY",NPAY)) Q:NPAY=""  D
 ...I $D(@$$^W4ORD@(HZ,"BSL","PAY",NPAY,"DEL")) Q
 ...S CARD=$$BSPAYCARD^W4HZMST(HZ,NPAY) Q:CARD=""
 ...S ASM=$$BSPAYASM^W4HZMST(HZ,NPAY)
 ...S NAME=$$BSPAYNAME^W4HZMST(HZ,NPAY)
 ...S SUM=$$BSPAYSUM^W4HZMST(HZ,NPAY)
 ...S ST=NAME_"\"_CARD_"\"_ASM_"\\\"_$J(SUM,2,2)
 ...D SET(DT,CLUB,HZ,ST)
 ..
 S %L1PC("CONTINUE")=""
 Q
 ;
 ;
SET(DT,CLUB,HZ,ST) ;
 S CLUB=+$G(CLUB)
 N I S I=$O(@$$^W4MAIN("VRM")@(DT,CLUB,HZ,999),-1)+1
 S @$$^W4MAIN("VRM")@(DT,CLUB,HZ,I)=ST
 Q
 ;
HZM ;
 S TRH=$$^%L1DC(DT,1)
 Q
 ;
NP ;
 N ST S ST=$G(@GLOB)
 S x1=$P(ST,"\",1)
 S x2=$P(ST,"\",2)
 S x3=$P(ST,"\",3)
 S x4=$P(ST,"\",4)
 S x5=$P(ST,"\",5)
 S x6=$P(ST,"\",6)
 Q
 ;
CLUB1(CLUB) ;
 I $G(CLUB)="" Q ""
 Q $P($G(@$$^W4GL("B1CLUB")@(CLUB,1)),"\",3)
 
 
 
 
 
 
 
 
 
 

WBSGINVC
WBSGINVC(HZM) ; [ 08.02.18 14:55 ] [ 07.02.18 14:40 ] [ 12.08.15 11:43 ] 
 N (JB,%ARG,%REM,HZM)
 S ERR="OK"
 I '$$BSCARD^W4HZMST(HZM) Q
 I $$TSHL^W4HZMST(HZM)<0 Q
 I '$$^W4CLOSE(HZM) S ERR="ORDERNOTCLOSED"
 S SGINVC=$G(@$$^W4ORD@(HZM,"BSL","SGINVC"))
 I $P(SGINVC,";",2)="OK" Q
 ;
 D CLINV^WBFUNC(HZM)
 I $G(BZLER) S ERR=BZLER
 S ERR=$$^WBERR
 S @$$^W4ORD@(HZM,"BSL","SGINVC")=$ZD($H,"DD.MM.YY  24:60")_";"_ERR
 D ^WBCDATA("^TMP($P)")
 D PC^WBPCBON("^TMP($P)","wi'bel qpfiaa zipeayg zxibq wzt!","",1)
 Q
 
 

WBSHOW
WBSHOW(GL) ; [ 28.07.15 04:40 ] [ 15.07.15 22:33 ] [ 12.07.15 08:50 ]
 N (JB,%ARG,%REM,GL)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  I '$G(%ARG("NOBR")) W "<br>"
  I $L($G(%ARG("HD"))) D
  .D ^%L1WEBHD(%ARG("HD"))
  W "<br>"
  S PAD=8
  I $G(%ARG("PAD")) S PAD=%ARG("PAD")
  ;
  W "<table width=""70%"" cellpadding="""_PAD_"px"" style=""font-size:"_$$^W3FSZ(12)
  W ";border:groove 2px grey;background-color:white"" "
  W ">",!
  S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
  .S A=$G(^(N))
  .S NM=$P(A,":",$L(A,":"))
  .S VL=$P(A,":",1,$L(A,":")-1)
  .W "<tr>"
  . W "<td width=""40%"" style="""
  . I $D(@GL@(N,"B")) W "font-weight:bold"
  . W """>"
  .  W $$H2U^%L1FRM(NM)
  . W "</td>",!
  . W "<td style=""color:blue"" >"
  .  W $$H2U^%L1FRM(VL)
  . W "</td>",!
  .W "</tr>",!
  W "</table>",!
  ;
  W "<br><br>",!
  ;
  D BTN
  ;
END ;
 W "</div>",!
 Q
 ;
 ;
BTN ;
  I $$^WBPARAM("ORD")="PAY",$G(%ARG("MSG"))="" Q
  I $$^WBPARAM("ORD")="PAY" S %ARG("NOBACK")=1,%ARG("PROC")="BackOK('BSL')"
  I $$^WBPARAM("ORD")="NKD",$G(%ARG("VZ"))="SUM" Q
  ;
  W "<table>",!
   W "<tr>"
    W "<td>"
     I $$^WBPARAM("DEACT") D
     .D ^W4BTN("CANCELCARD","Deact()","brown")
     ;
     I $$^WBPARAM("STAT")!$G(%ARG("STAT")) D
     .D ^W4BTN("PRINTSTATUS","PrintStatus('STAT')","blue")
     ;
     I $$^WBPARAM("ITRA")!$G(%ARG("ITRA")) D
     .D ^W4BTN("PRINTITRA","PrintStatus('ITRA')","blue")
     ;
     I '$$^WBPARAM("DEACT"),'$$^WBPARAM("STAT"),'$$^WBPARAM("ITRA") D
     .S SBMPROC=$G(%ARG("PROC"))
     .I SBMPROC="" S SBMPROC="Back()"
     .
     .I $G(%ARG("NOBACK")) D  Q
     ..D ^W4BTN("CLOSE",SBMPROC,"green",1)
     .
     .N NM S NM="SUBMIT"
     .I $$^WBPARAM("LOADC") S NM="LOADBUDGET2CARD"
     .I $$^WBPARAM("DELLOAD") S NM="DELETELOADING"
     .D ^W4BTN(NM,SBMPROC,"green")
     ;
    W "</td>" ;; -- END SUBMIT
    ;
    I '$G(%ARG("NOBACK")) D
    .W "<td>&nbsp;</td>"
    .W "<td>"
    . D ^W4BTN("BACK","Back()","red")
    .W "</td>"
   W "</tr>",!
  W "</table>",!
  Q

WBSHOWBN
WBSHOWBN(GL) ; [ 08.07.15 10:01 ] [
 N (JB,%ARG,%REM,GL)
 D ^WBINIT D SET^WBPARAM("ORD",2)
 S TMP=$$TMP^WBSTAT K @TMP
 M @TMP=@GL@("BSL","INVPC")
 Q 1

WBSHOWCB
WBSHOWCB ; [ 30.07.15 09:22 ] [ 29.07.15 12:17 ] [ 27.07.15 16:06 ]
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 D ^W4BTN("CLOSE","WbClose()","red")
 W "<br><br>",!
 ;
 W "<table border=""1"" style=""font-size:"_$$^W3FSZ(12)_";width:80%"" "
 W " cellpadding=""8"" cellspacing=""0"">",!
 ;
 S VRM=$$VRM
 ;
 S K=0
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("CB",N)) Q:N=""  D
 .S LK=$G(^(N)) Q:'LK
 .S A=$G(@$$^W4GL("KLF")@(LK,"CB",N))
 .S SUM=$P(A,"\") Q:SUM'>0
 .Q:$$^W4DELCB(N)
 .S ASM=$G(@$$^W4GL("KLF")@(LK,"CB",N,"WB","ASM")) Q:'ASM
 .S LKH=$G(^("LKH"))
 .S LKHNAME=$G(^("NAME"))
 .S CLUB=$G(^("CLUB"))
 .S CARD=$G(^("CARD"))
 .I CARD'=$$^WBPARAM("BSCARD") Q
 .I CLUB'=$$CLUB^WBCLUB Q
 .S DAT=$P(A,"\",4)
 .;;I $$^%L1DC(A,4)<($$^W4DZ-3) Q
 .S K=K+1
 .S @VRM@(K)=DAT_"\"_N_"\"_LK_"\"_ASM_"\"_CARD_"\"_LKH_"\"_LKHNAME_"\"_CLUB_"\"_SUM
 ;
 W "<tr style=""height:35px;font-size:"_$$^W3FSZ(12)_""">"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("RCPNMB")_"</th>"
  W "<th>"_$$^%W1DICT("CARDNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("AUTHNO")_"</th>"
  W "<th>"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 ;
 S N="" F  S N=$O(@VRM@(N),-1) Q:N=""  D
 .S A=$G(^(N))
 .W "<tr style=""cursor:pointer"" "_$$^W4TOUCH_"=""Click('"_N_"')"">"
 . W "<td>"_$$RKV($$DAT(N))_"</td>"
 . W "<td>"_$$RKV($$CB(N))_"</td>"
 . W "<td>"_$$RKV($$CARD(N))_"</td>"
 . W "<td>"_$$RKV($$H2U^%L1FRM($$NAME(N)))_"</td>"
 . W "<td>"_$$RKV($$ASM(N))_"</td>"
 . W "<td>"_$$RKV($$SUM(N))_"</td>"
 .W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 D ^W4BTN("CLOSE","WbClose()","red")
 W "</div>",!
 Q
 ;
 ;
CLICK(INDEX) ;
 N ERR,BZLER,BZLER1
 N A S A=$G(@$$^WBVRM@(INDEX))
 N CARD S CARD=$$CARD(INDEX)
 N ASM S ASM=$$ASM(INDEX)
 N BSNAME S BSNAME=$$NAME(INDEX)
 ;
 D LKHCAND^WBFUNC(CARD,ASM)
 ;
 I $G(BZLER) Q "ERR\"_BZLER_"\"_$G(BZLER1)
 S ERR=$$^WBERR I ERR Q $$VWERR^WBERR(ERR)
 ;
 D CRTMPDET^WBSTAT("CNCLOAD")
 S KOT="""wi'bel qpfia"" qihxk zpirh lehia"
 D PC^WBPCBON($$TMP^WBSTAT,KOT,$$NAME^WBCLUB,1)
 ;
 S NEWCB=$$DELETE^W4LCBCR($$CB(INDEX))
 Q 1
 ;
 ;
DAT(N) N A S A=$G(@$$VRM@(N))
 N DAT S DAT=$$^%L1DC($P(A,"\",1),1)
 S DAT=$$^%L1DC(DAT,".")
 Q DAT
 ;
CB(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",2)
 ;
CARD(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",5)
 ;
ASM(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",4)
 ;
NAME(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",7)
 ;
SUM(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",9)
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="N" Q $J(VL,2,2)
 Q VL
 ;
VRM(STAM) ;
 Q $$^W4MAIN("VRM")

WBSHOWLS
WBSHOWLS ; [ 28.07.15 18:01 ] [ 15.07.15 08:14 ] [ 23.06.15 06:11 ]
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 D CLOSE
 W "<br><br>",!
 ;
 W "<span style=""font-size:"_$$^W3FSZ(12)_";"_$$FONTFM^W3CSS_""">"
  W $$VWCLUB^WBCARD
 W "</span>",!
 W "<br>",!
 ;
 W "<table border=""1"" style=""font-size:"_$$^W3FSZ(12)_";width:80%"" "
 W " cellpadding=""8"" cellspacing=""0"">",!
 ;
 S VRM=$$^WBVRM
 ;
 W "<tr style=""height:35px;font-size:"_$$^W3FSZ(12)_""">"
  W "<th>"_$$^%W1DICT("CARDNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("PAIL")_"</th>"
  W "<th>"_$$^%W1DICT("UNTILMMYY")_"</th>"
 W "</tr>",!
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S A=$G(^(N))
 .W "<tr style=""cursor:pointer"" "_$$^W4TOUCH_"=""Click('"_N_"')"">"
 . I $$^WBPARAM("ACT"),$$CARD^WBVRM(N)'=-1 Q
 . I $$^WBPARAM("DEACT"),$$CARD^WBVRM(N)=-1 Q
 . W "<td>"_$$CARD^WBVRM(N)_"</td>"
 . W "<td>"_$$H2U^%L1FRM($$NAME^WBVRM(N))_"</td>"
 . S ACT=$$PAIL^WBVRM(N)
 . S ACT=$S(ACT:"lirt",1:"lirt `l")
 . S ACT=$$H2U^%L1FRM(ACT)
 . W "<td>"_ACT_"</td>"
 . W "<td>"_$$TOKEF^WBVRM(N)_"</td>"
 .W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 D CLOSE
 W "</div>",!
 Q
 ;
 ;
CLICK(INDEX) ;
 N A S A=$G(@$$^WBVRM@(INDEX)) I A="" Q "NOTCUST"
 N CARD S CARD=$$CARD^WBVRM(INDEX)
 N CUSTID S CUSTID=$$CUSTID^WBVRM(INDEX)
 ;
 I '$$^WBPARAM("DEACT"),CARD=-1,CUSTID Q "BELONG"
 ;
 D SETCARD^WBCARD(CARD)
 I '$$^WBPARAM("ACT") Q "QCKID"
 ;
 Q "ACT"
 ;
 ;
CLOSE ;
 N PROC
 S PROC="WbClose()"
 I $$^WBPARAM("ORD") S PROC="BackHref('HRFHZ',parent)"
 D ^W4BTN("CLOSE",PROC,"red")
 Q

WBSHOWNK
WBSHOWNK(HZM) ; [ 11.07.15 17:50 ] [
 N (JB,%ARG,%REM,HZM)
 S TMP=$$TMP^WBSTAT K @TMP
 S BSCARD=$$BSCARD^W4HZMST(HZM)
 S BSNAME=$$BSNAME^W4HZMST(HZM)
 S BSNKD=$$BSNKD^W4HZMST(HZM)
 S ITRA=$$ITRARL^W4HZMST(HZM)
 S NKDPAY=$$BSNKDPAY^W4HZMST(HZM)
 S SHUL=$$SSHUL^W4HZMST(HZM)
 S SHULA=$$SHULA^W4HZMST(HZM)
 S TSHL=$$TSHL^W4HZMST(HZM)
 S TIP=$$TIP^W4HZMST(HZM)
 ;
 I $G(%ARG("VZ"))="SUM" D
 .S @TMP@(1)=BSNAME_" : gewl my"
 .S @TMP@(2)=BSCARD_" : qihxk 'qn"
 .S @TMP@(3)=$J(ITRA,2,2)_" : melyzl dxzi"
 .S @TMP@(4)=$J(BSNKD,2,2)_" : zecewpa dxzi"
 ;
 I $G(%ARG("VZ"))="RES" D
 .S @TMP@(1)=BSNAME_" : gewl my"
 .S @TMP@(2)=BSCARD_" : qihxk 'qn"
 .S @TMP@(3)=$J(TSHL+NKDPAY,2,2)_" : melyzl"
 .S @TMP@(4)=$J(SHUL+SHULA,2,2)_" : mley"
 .S @TMP@(5)=$J(NKDPAY,2,2)_" : zecewpa mley"
 .S ITRA1=TSHL+TIP-SHUL-SHULA
 .I TSHL'<0&(ITRA1<0)!(TSHL<0&(ITRA1>0)) S ITRA1=0
 .S @TMP@(6)=$J(ITRA1,2,2)_" : melyzl dxzi"
 .S @TMP@(7)=$J(TIP,2,2)_" : tih"
 .;
 .S %ARG("HD")="BSNKDPAYRESULT"
 .S %ARG("PROC")="parent.fn.MainPayReload()"
 .S %ARG("NOBACK")=1
 ;
 D ^WBSHOW(TMP)
 Q

WBSNDORD
WBSNDORD(HZM) ; [ 13.08.15 17:07 ] [ 11.07.15 17:44 ] [ 07.07.15 17:25 ]
 N GL,TMP S GL=$$^W4ORD_"("_HZM_")",TMP=$$^W4TMPORD
 Q $$^WBINVC(HZM)

WBSTAT
WBSTAT(FUNC) ; [ 30.08.15 11:44 ] [ 05.08.15 16:57 ] [ 30.07.15 11:16 ]
 N (JB,%ARG,FUNC)
 S BSCARD=$$^WBPARAM("BSCARD")
 ;
 X "D "_FUNC_"^WBFUNC(BSCARD)"
 ;
 I $G(BZLER) Q "ERR\"_BZLER_"\"_$G(BZLER1)
 S ERR=$$^WBERR I ERR Q $$VWERR^WBERR(ERR)
 ;
 I FUNC="LKHGETDATA" D CRTMPDET("CUSTDET") G END
 I FUNC="LKHDEBSTA"  D CRTMPDET("CUSTITRA") G END
 ;
TV ;
 D ^WBCDATA($$TMP) ; --> ^TMP($P)
END ;
 Q 1
 ;
 ;
PCTL(KOT) ;
 D PC^WBPCBON($$TMP,KOT,$$NAME^WBCLUB,1)
 ;;K @$$TMP
 Q
 ;
TMP(STAM) ;
 Q $$^W4MAIN("TMPWB")
 ;
HDSTAT(STAM) ;
 Q """wi'bel qpfia"" gewl ly qehhq"
 ;
HDCUSTDET(STAM) ;
 Q """wi'bel qpfia"" gewl ihxt"
 ;
HDITRA(STAM) ;
 Q """wi'bel qpfia"" gewl ly dxzi"
 ;
HDCUSTUPD(STAM) ;
 Q """wi'bel qpfia"" gewl ihxt oekcr"
 ;
HDFUNC(FUNC) ;
 N HDFUNC S HDFUNC="HD"_$P(FUNC,"!")
 Q $$@HDFUNC
 ;
CRTMPDET(LAB) ;
 I '$$WBLKH D CLEAR^WBANS("CUST")
 ;
 N TMP,LKH S TMP=$$TMP
 K @TMP
 ;;S @TMP@(1)=$$VWCLUB^WBCARD
 ;;S @TMP@(1,"B")=""
 S @TMP@(1)=$$^WBPARAM("BSCARD")_": qihxk 'qn"
 ;
 N I,K,VL,TAG,PARENT,HBNAME,RKV,T
 S K=1 F I=1:1 S T=$T(@LAB+I) Q:T=""  Q:T[" Q  ;"  D
 .I $P(T,";",2) D
 ..S K=K+1
 ..S TAG=$P(T,";",3),PARENT=""
 ..I $E(TAG)="!" D  Q
 ...S VL=$G(@$E(TAG,2,$L(TAG)))
 ...S HBNAME=$P(T,";",4)
 ...S @TMP@(K)=VL_":"_HBNAME
 ...
 ..I TAG["<" S PARENT=$P(TAG,"<",2),TAG=$P(TAG,"<")
 ..I '$$WBLKH S VL=$$^WBGETVL(TAG,PARENT)
 ..
 ..S RKV=$P(T,";",5)
 ..I $$WBLKH S VL=$G(@RKV)
 ..I TAG["Email" S VL=$$FUNC^%UCASE(VL)
 ..I $P(T,";",6)="N" S VL=$J(VL,2,2)
 ..S HBNAME=$P(T,";",4)
 ..S @TMP@(K)=VL_":"_HBNAME
 ..
 ..I '$$WBLKH D
 ...I $E(RKV)?1U D
 ....S @RKV=VL
 ....D SET^WBANS("CUST",RKV,VL)
 ;
 Q
 ;
CUSTDET ;
 ;1;FirstName;ihxt my;FNAME;
 ;1;LastName;dgtyn my;LNAME;
 ;1;CustomerId;iedif 'qn;CUSTID;
 ;1;Email;l"`ec;EMAIL;
 ;1;Phone;'lh;TELB;
 ;1;Mobile;ciip;PELE;
 ;1;Zehut;.f.z;TZ;
 ;1;BirthDate;zcled mei;JOMH;
 ;1;Street;zaezk;KTOV;
 Q  ;
 ;
CUSTITRA ;
 ;1;Name;gewl my;NAME
 ;1;CurrentStatus<PrePaidProgram;dxzi;ITRA;N;
 Q  ;
 ;
CNCLOAD ;
 ;1;!BSNAME;gewl my;
 ;1;OriginalAmount;lheay mekq;;N
 ;1;ShellyReferenceId;dzknq`;
 Q  ;
 ;
IDKLK ;
 N LKH S LKH=$$^WBLKH(BSCARD) Q:'LKH
 N LKH1,TO
 S LKH1=LNAME_" "_FNAME
 S TO="LKH="_LKH1_"<>PELE="_PELE_"<>"
 S TO=TO_"EMAIL="_$$FUNC^%UCASE(EMAIL)_"<>"
 S TO=TO_"TZ="_TZ_"<>"
 S TO=TO_"JOMH="_JOMH_"<>"
 S TO=TO_"KTV="_KTOV
 ;
 D PUT2^W4L(LKH,TO)
 Q
 ;
WBLKH(STAM) ;
 Q $D(WBLKH)
 ;

WBSUM
WBSUM ; [ 30.06.15 08:24 ] [
 N (JB,%ARG,%REM)
 S MAXL=8
 S %ARG("HD")="TYPESUM"
 D ^W4KB
 Q
 ;
CRORD(PRM) ;
 N PRM1,SUM
 S PRM1=$P(PRM,";",1,2)
 S SUM=$P(PRM,";",3)
 D SET^WBANS("WBCARD","LOADSUM",SUM)
 D CRORD^W4CARDVW(PRM1)
 Q

WBSV2ANS
WBSV2ANS(SCRN,PRM) ; [ 23.06.15 17:57 ] [ 22.06.15 05:38 ] [
 N I,COUPL,RKV,VL
 I $G(SCRN)="" Q "ERRCD\NOSCRN"
 ;
 D CLEAR^WBANS(SCRN)
 ;
 F I=1:1:$L(PRM,";") D
 .S COUPL=$P(PRM,";",I)
 .S RKV=$P(COUPL,"=")
 .S VL=$P(COUPL,"=",2)
 .Q:RKV=""
 .D SET^WBANS(SCRN,RKV,VL)
 Q 1

WBTMP
WBTMP(STAM) ; [ 21.04.16 10:25 ] [ 08.06.15 14:23 ] [
 Q $$MSM^W3MAIN_"1/tmp/"
 

WBVRM
WBVRM(STAM) ; [ 17.06.15 12:00 ] [
 Q $$^W4MAIN("VRMWB")
 ;
CARD(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WBVRM@(SH)),"\"))
 ;
NAME(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WBVRM@(SH)),"\",2))
 ;
CUSTID(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WBVRM@(SH)),"\",3))
 ;
PAIL(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WBVRM@(SH)),"\",4))
 ;
TOKEF(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WBVRM@(SH)),"\",5))

WBZPRM
WBZPRM; [ 07.10.14 17:55 ] [ 18.03.12 18:08 ] [ 05.02.12 17:20 ]  ; [ 04.09.23 12:02 ] [ 08.06.15 14:23 ] [ 27.05.15 15:53 ] 
FLIN()
 Q $$^WBTMP_"bzlin"_$$^W4MYDVN_"-"_+$$GETP^%W1PRM("HZM")
 ;
FLOUT()
 Q $$^WBTMP_"bzlout"_$$^W4MYDVN_"-"_+$$GETP^%W1PRM("HZM")
 ;
UID()
 Q $$UID^WBCLUB
 ;
PWD()
 Q $$PSW^WBCLUB
 

WCACCC
WCACCC(UID,OID) ; CANCEL CLUB CARD ORDER [ 08.05.23 13:47 ] [ 06.09.10 09:38 ] [ 03.09.10 12:19 ] [
 N STR,STROU,RES D ^WCIN
 K WCV
 S STARS=SUM ; -- ?
 S STR=OID_"#"_@$$^WCG@("RID")_"#"_@$$^WCG@("PID")_"#"_UID
 S STR="CCC"_$L(STR)_"~"_STR
 S RES=$$^WCCON(STR)
 S WCV("RES")=RES
 I RES'=WCC("OK") Q
 D GETANS I RES'=WCC("OK") Q
 S WCV("RES")=WCM(1)
 S WCV("SUM")=WCM(2)
 S WCV("STARS")=$G(WCM(3))
 S WCV("UNAME")=$G(WCM(4))
 Q
GETANS ;
 D ^WCGETANS
 Q
 

WCACCO
WCACCO(UID,CID,SUM,STARS) ; ADD CLUB CARD ORDER [ 06.09.10 09:38 ] [ 03.09.10 12:20 ] [
 N STR,STROU,RES
 K WCV
 S STR=UID_"#"_@$$^WCG@("NCOID")_"#"_@$$^WCG@("RID")_"#"_SUM_"#"_@$$^WCG@("PID")_"#"_CID_"#"_STARS
 S STR="CCP"_$L(STR)_"~"_STR
 S RES=$$^WCCON(STR)
 S WCV("RES")=RES
 I RES'=WCC("OK") Q
 D GETANS I RES'=WCC("OK") G ER
 S WCV("OID")=WCM(1)
 I WCV("OID")<1000 S RES=WCV("OID") G ER
 S WCV("UNAME")=WCM(2)
 S WCV("STARS")=WCM(3)
 S WCV("RES")=WCC("OK")
 Q
GETANS ;
 D ^WCGETANS
 Q
ER ;
 S WCV("RES")=RES Q

WCADCAOR
WCADCAOR(UID,SUM,CID) ; [ 10.05.23 08:39 ] [ 08.05.23 13:48 ] [ 03.09.10 18:29 ] 
 N STR,STROU,RES,WCM
 K WCV
 S WCG=$$^WCG
 S STR=UID_"#"_@WCG@("NCOID")_"#"_@WCG@("RID")_"#"_SUM_"#"_@WCG@("PID")_"#"_CID
 S STR="CRD"_$L(STR)_"~"_STR
 ;
 S RES=$$^WCCON(STR)
 I RES'=WCC("OK") G END
 ;
 D GETANS I RES'=WCC("OK") G END
 ;
 S WCV("OID")=$G(WCM(1))
 S WCV("SUM")=SUM ;;WCM(2)
 S WCV("CNAME")=$G(WCM(3))
 S WCV("ITRA")=$G(WCM(4))
 S WCV("RES")=WCC("OK")
END Q
 ;
GETANS ;
 D ^WCGETANS
 Q
 
 

WCADCCOR
WCADCCOR(CARD,SUM,CID) ; ADD CARD COMPANY ORDER [ 10.05.23 08:42 ] [ 30.03.21 14:40 ] [ 03.09.10 18:29 ] 
 N STR,STROU,RES,WCM
 K WCV
 S STR=CARD_"#"_$G(@$$^WCG@("NCOID"))_"#"_$G(@$$^WCG@("RID"))_"#"_SUM_"#"_$G(@$$^WCG@("PID"))_"#"_CID
 S STR="CMP"_$L(STR)_"~"_STR
 ;
 S RES=$$^WCCON(STR)
 ;
 S WCV("RES")=RES
 I RES'=WCC("OK") Q
 ;
 D GETANS I RES'=WCC("OK") Q
 ;
 S WCV("OID")=$G(WCM(1))
 S WCV("SUM")=SUM ;;$G(WCM(2)) ;-- 10/05/23
 S WCV("CNAME")=$G(WCM(3))
 S WCV("ITRA")=$G(WCM(4))
 S WCV("UID")=$G(WCM(5))
 S WCV("RES")=WCC("OK")
 Q
 ;
GETANS ; -> RES,STROU
 D ^WCGETANS
 Q
 
 

WCADKPOR
WCADKPOR(UID,UCD,SUM,CID) ; ADD KEYPAD ORDER [ 10.05.23 11:17 ] [ 08.05.23 13:48 ] [ 15.11.22 07:38 ] 
 N STR,STROU,RES
 K WCV
 I $G(@$$^WCG@("KEYPAD"))="N" S WCV("RES")=WCC("NOKEYP") G END
 S STR=UID_"#"_@$$^WCG@("NCOID")_"#"_@$$^WCG@("RID")_"#"_SUM_"#"_@$$^WCG@("PID")_"#"_UCD_"#"_CID
 S STR="KPD"_$L(STR)_"~"_STR
 ;
 S RES=$$^WCCON(STR)
 S WCV("RES")=RES
 I RES'=WCC("OK") G END
 ;
 D GETANS I RES'=WCC("OK") G END
 ;;N J F J=1:1:4 I '$D(WCM(J)) G END
 ;
 S WCV("OID")=WCM(1)
 S WCV("SUM")=SUM ; WCM(2)
 S WCV("CNAME")=$G(WCM(3))
 S WCV("ITRA")=$G(WCM(4))
 S WCV("RES")=WCC("OK")
END Q
 ;
 ;
GETANS ;
 D ^WCGETANS
 Q
 
 
 
 

WCCANC
WCCANC(OID,UID) ; [ 18.05.23 08:56 ] [ 08.11.11 12:59 ] [ 06.07.11 16:40 ] 
 N (JB,%REM,%ARG,OID,UID)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^WCIN
 D
 .N STR,STROU,RES
 .K WCV I $G(UID)="" S UID=11111
 .S STR=OID_"#"_@$$^WCG@("RID")_"#"_@$$^WCG@("PID")_"#"_UID
 .S STR="CAN"_$L(STR)_"~"_STR
 .S RES=$$^WCCON(STR)
 .I RES'=WCC("OK") Q
 .D ^WCGETANS I RES'=WCC("OK") Q
 .S WCV("RES")=WCM(1)
 ;
 I '$D(WCV) S ER=-9 G END
 I WCV("RES")'=WCC("OK") S ER=-2 G END
 S ER=0
END Q ER_";"_$G(WCV("OID"))
 

WCCCD
WCCCD(NMB) ; CHECK CONTROL DIGIT ; [ 29.08.10 06:49 ] [
 Q ($E(NMB,1,$L(NMB)-1)#9)=$E(NMB,$L(NMB))

WCCCRD
WCCCRD(CARD,CD) ;  [ 29.08.10 06:50 ] [
 I $E(CARD)=";" S CARD=$P(CARD,";",2)
 S TYP=$E(CARD,1,4)
 S APP=$E(CARD,5,6)
 S CID=$E(CARD,7,18)
 S UID=$E(CARD,19,30)
 Q ((TYP+APP+CID+UID)#9=CD)

WCCID
WCCID(STAM) ; [ 03.09.10 12:23 ] [
 Q $TR($J(@$$^WCG@("CID"),12)," ",0)

WCCMP
WCCMP(STAM) ; [ 08.09.10 13:22 ] [
 Q $$^W4GL("WCCMP")

WCCON
WCCON(STR) ; GET CONNECTION TO SERVER ; [ 15.07.16 15:28 ] [ 11.03.14 15:35 ] [ 03.08.11 08:51 ]
 N A D ^WCIN
 N H S H=$$^W4DZ
 I '$$^WCNALAN S PORTN=@$$^WCG@("PORT") O PORTN::2 E  Q WCC("NOCON")
 ;
 I $$^WCNALAN D  I ER Q WCC("NOCON")
 .S ER=0
 .S ADDR=@$$^WCG@("IPA")
 .S PORTN="SCK$"_$J,PORT=@$$^WCG@("PORT")
 .S NP=$$NP
 .S @$$^WCGP@(H,JB,NP,"BEG")=$H
 .S ER=$$^%L2NALAN(ADDR,PORT) I ER C PORTN
 .S @$$^WCGP@(H,JB,NP,"FIN")=$H
 .S NP=$$NP
 .S @$$^WCGP@(H,JB,NP,"EROP")=ER_"*"_ADDR_"*"_PORT_"*"_PORTN
 ;
 S ZT=$ZT
 S $ZT="G NOOP^WCCON"
 U PORTN:(NOWRAP:NOECHO:NOESC:NOCENABLE:PASTHRU)
 ;
 I '$$^WCNALAN F  R *A:1 E  Q
 S $ZT=$G(ZT)
 ;
 N ST,NP S ST=$P(STR,"~")_"~"_$$^WCENCR($P(STR,"~",2,255))
 W ST
 ;
 S NP=$$NP
 S @$$^WCGP@(H,JB,NP,"SND")=STR
 S @$$^WCGP@(H,JB,NP,"SND","H")=$P($H,",",2)
 S @$$^WCGP@(H,JB,NP,"SND","ENC")=ST
END Q WCC("OK")
 ;
CLOSE ;
 C $$^WCPORT
 Q
NOOP ;
 Q 6
 ;
NP(STAM) ;
 Q $O(@$$^WCGP@(H,JB,9999999),-1)+1
 
 

WCCON0
WCCON(STR) ; GET CONNECTION TO SERVER ; [ 11.03.14 15:40 ] [ 03.08.11 08:51 ] [ 30.06.11 10:38 ]
 N A D ^WCIN
 I '$$^WCNALAN S PORTN=@$$^WCG@("PORT") O PORTN::2 E  Q WCC("NOCON")
 I $$^WCNALAN D  I ER Q WCC("NOCON")
 .S ER=0
 .S ADDR=@$$^WCG@("IPA")
 .S PORTN="SCK$"_$J,PORT=@$$^WCG@("PORT")
 .S ER=$$^%L2NALAN(ADDR,PORT) I ER C PORTN
 .S NP=$$NP
 .S @$$^WCGP@(+$H,JB,NP,"EROP")=ER_"*"_ADDR_"*"_PORT_"*"_PORTN
 ;
 S ZT=$ZT
 S $ZT="G NOOP^WCCON"
 U PORTN:(NOWRAP:NOECHO:NOESC:NOCENABLE:PASTHRU)
 ;
 I '$$^WCNALAN F  R *A:1 E  Q
 S $ZT=$G(ZT)
 ;
 N ST,NP S ST=$P(STR,"~")_"~"_$$^WCENCR($P(STR,"~",2,255))
 W ST
 ;
 H 1
 S NP=$$NP
 S @$$^WCGP@(+$H,JB,NP,"SND")=STR
 S @$$^WCGP@(+$H,JB,NP,"SND","H")=$P($H,",",2)
 S @$$^WCGP@(+$H,JB,NP,"SND","ENC")=ST
END Q WCC("OK")
 ;
CLOSE ;
 C $$^WCPORT
 Q
NOOP ;
 Q 6
 ;
NP(STAM) ;
 Q $O(@$$^WCGP@(+$H,JB,9999999),-1)+1

WCDCR
WCDCR(IN) ; DECRIPTION ; [ 29.08.10 07:05 ] [
 N OUT,I,X S OUT=""
 F I=1:1:$L(IN) D
 .S X=$A(IN,I)
 .I X'=128 D
 ..I X#2=0 S X=256-(X/2) Q
 ..I X#2 S X=(X+1)/2 Q
 .S OUT=OUT_$C(X)
 Q OUT

WCEMV
WCEMV(STAM) ; [ 13.11.23 14:34 ] [ 18.03.22 17:16 ] [ 16.12.21 13:42 ] 
 ;;I $$EMV^W4PRM=3 Q 1
 Q $G(@$$^W4PRM@("CIBEMV"))
 
 
 
 

WCENCR
WCENCR(IN) ; ENCRYPTION ; [ 29.08.10 07:07 ] [
 N I,OUT,X S OUT=""
 F I=1:1:$L(IN) D
 .S X=$A(IN,I)
 .D
 ..I X>128 S X=2*(256-X) Q
 ..I X<128 S X=2*X-1
 .S OUT=OUT_$C(X)
 Q OUT

WCERC
WCERC(CARD) ; CHECK CARD ; [ 29.08.10 07:08 ] [
 I $E(CARD)=";",$E(CARD,$L(CARD))'=";" Q -1
 I $E(CARD)=";" S CARD=$P(CARD,";",2)
 I $E(CARD,$L(CARD)-6,$L(CARD))'="777777L" Q -2
 I $E(CARD,1,4)'=1355,$E(CARD,1,4)'=1356,$E(CARD,1,4)'=1357 Q -3
 I '$$^WCCCD($E(CARD,7,18)) Q -4
 I '$$^WCCCD($E(CARD,19,30)) Q -5
 I '$$^WCCCRD($E(CARD,1,30),$E(CARD,31)) Q -6
 Q 0

WCG
WCG(STAM) ; [ 03.09.10 12:02 ] [
 Q $$^W4GL("WCG")

WCGCCI
WCGCCI(UID,CID) ; ADD KEYPAD ORDER [ 06.09.10 09:39 ] [ 03.09.10 12:25 ] [
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 N STR,STROU,RES D ^WCIN
 K WCV
 S STR=UID_"#"_@$$^WCG@("NCOID")_"#"_@$$^WCG@("RID")_"#"_@$$^WCG@("PID")_"#"_CID
 S STR="CCI"_$L(STR)_"~"_STR
 S RES=$$^WCCON(STR)
 S WCV("RES")=RES
 I RES'=WCC("OK") Q
 D GETANS I RES'=WCC("OK") G ER
 S WCV("CDID")=$G(WCM(1))
 I WCV("CDID")<1000 S RES=WCV("CDID") G ER
 S WCV("UNAME")=$G(WCM(2))
 S WCV("BDATE")=$G(WCM(3))
 S WCV("STARS")=$G(WCM(4))
 I $G(WCM(4))["_" S WCV("STARS")=$P(WCM(4),"_",2)
 S WCV("RES")=WCC("OK")
 Q
GETANS ;
 D ^WCGETANS
 Q
ER ;
 S WCV("RES")=RES Q

WCGETAN0
WCGETANS ; [ 08.03.18 10:17 ] [ 29.08.10 07:30 ] [
 K WCM N A,COD,LN,ST,NP,I,J,RKV,ER
 S RES=0
 ;
 U $$^WCPORT:(NOWRAP:NOECHO:NOESC:NOCENABLE:PASTHRU:TERM=$C(13,10))
 S NP=$O(@$$^WCGP@(+$H,JB,9999999),-1)+1
 S (COD,LN)="",ER=0
 R *A:@$$^WCG@("TOUT") E  S ER=6 G ER
 S ST=$C(A)
 F  R *A:1 Q:'$T  Q:$C(A)="~"  S ST=$E(ST,$L(ST)-6,$L(ST))_$C(A)
 I $C(A)'="~" S ER=1 G ER
 F I=$L(ST):-1:1 Q:$E(ST,I)'?1N  S LN=$E(ST,I)_LN
 I I<3 S ER=2 G ER
 S COD=$E(ST,I-2,I)
 I COD'?3U S ER=3 G ER
 S @$$^WCGP@(+$H,JB,NP,"RCV","H")=$P($H,",",2)
 S ST="",J=0,J1=0,RKV="",DRKV="",WCM(0)=COD
 S @$$^WCGP@(+$H,JB,NP,"RCV",J1)=WCM(0)
 ;
CYC S J=J+1 I J>LN G EC
 R *A:1 E  S ER=4 G ER
 I $C(A)="E" S J1=J1+1 G EC
 S RKV=RKV_$C(A) G CYC
EC ;
 S DRKV=$$^WCDCR(RKV)
 S @$$^WCGP@(+$H,JB,NP,"RCV",J1)=DRKV
 S WCM(J1)=DRKV,(RKV,DRKV)=""
 I J<LN G CYC
 S RES=WCC("OK")
 C $$^WCPORT
 U 0 Q
 ;
ER S RES=WCC("NOCON"),@$$^WCGP@(+$H,JB,NP,"ER")=RES_"\"_ER C $$^WCPORT U 0 Q
 

WCGETANS
WCGETANS ; [ 08.05.23 13:04 ] [ 07.05.23 13:32 ] [ 04.05.23 15:31 ] 
 K WCM N A,COD,LN,ST,NP,I,J,RKV,ER,ST0
 S RES=0
 ;
 D USE
 S NP=$O(@$$^WCGP@(+$H,JB,9999999),-1)+1
 S (COD,LN,ST0)="",ER=0
 R *A:@$$^WCG@("TOUT") E  S ER=6 G ER
 S ST=$C(A)
 N H0 S H0=$P($H,",",2)
 N END S END=0
 F  D USE R *A:1 Q:'$T  Q:$C(A)="~"  D  Q:END  S ST=$E(ST,$L(ST)-6,$L(ST))_$C(A)
 .;;U 0 W A," "
 .I ST[$C(0,0,0,0,0) S END=1 Q
 .N H1 S H1=$P($H,",",2)
 .I H1-H0>100 S END=1 Q
 .I H1<H0,H1+(24*3600)-H0>100 S END=1 Q
 .S ST0=ST0_$C(A)
 ; 
 I $C(A)'="~" S ER=1 G ER
 F I=$L(ST):-1:1 Q:$E(ST,I)'?1N  S LN=$E(ST,I)_LN
 S @$$^WCGP@(+$H,JB,NP,"ST0")=ST0
 S @$$^WCGP@(+$H,JB,NP,"ST")=ST
 S @$$^WCGP@(+$H,JB,NP,"LN")=LN
 I I<3 S ER=2 G ER
 S COD=$E(ST,I-2,I)
 S @$$^WCGP@(+$H,JB,NP,"RCV","COD")=COD
 I COD'?3U S ER=3 G ER
 S @$$^WCGP@(+$H,JB,NP,"RCV","H")=$P($H,",",2)
 S ST="",J=0,J1=0,RKV="",DRKV="",WCM(0)=COD
 S @$$^WCGP@(+$H,JB,NP,"RCV",J1)=WCM(0)
 ;
 S PRENCR=1
CYC S J=J+1 I J>LN G EC
 R *A:1 E  S ER=4 G ER
 I $C(A)="E",PRENCR S J1=J1+1 G EC
 I $C(A)="#" S J1=J1+1,PRENCR=0 G EC
 S RKV=RKV_$C(A) G CYC
EC ;
 S @$$^WCGP@(+$H,JB,NP,"RCV0",J1)=RKV
 S DRKV=RKV
 I PRENCR S DRKV=$$^WCDCR(RKV)
 S @$$^WCGP@(+$H,JB,NP,"RCV",J1)=DRKV
 S WCM(J1)=DRKV,(RKV,DRKV)=""
 I J<LN G CYC
 S RES=WCC("OK")
 C $$^WCPORT
 U 0 Q
 ;
ER S RES=WCC("NOCON"),@$$^WCGP@(+$H,JB,NP,"ER")=RES_"\"_ER C $$^WCPORT U 0 Q
 ;
USE ;
 U $$^WCPORT:(NOWRAP:NOECHO:NOESC:NOCENABLE:PASTHRU:TERM=$C(13,10))  
 Q
 
 
 
 
 
 
 
 

WCGM
WCGM(ER) ; [ 09.09.10 08:36 ] [ 06.09.10 09:37 ] [ 29.08.10 07:35 ]
 I $G(ER)="" Q
 N NMER
 S NMER=$TR($G(@$$^WCMSG@(ER)),"|","-")
 ;
 ;;I $L(NMER) Q ER_" "_$$CLWEB^%L1FRM(NMER)
 I $L(NMER) Q $$CLWEB^%L1FRM(NMER)_" . "_ER
 ;
 Q "*** "_ER

WCGP
WCGP(STAM) ; [ 08.09.10 06:06 ] [
 Q $$^W4GL("WCGP")

WCGPOS
WCGPOS(STAM) ; ADD CARD ORDER [ 07.05.17 08:59 ] [ 08.09.10 14:00 ] [ 06.09.10 09:39 ] 
 N STR,STROU S RES=0 D ^%L1TS
 I '$D(@$$^WCG@("RID"))!'$D(@$$^WCG@("PID")) Q 0
 K WCV
 S STR=@$$^WCG@("RID")_"#"_@$$^WCG@("PID")
 S STR="STP"_$L(STR)_"~"_STR
 S RES=$$^WCCON(STR)
 I RES'=WCC("OK") D CLOSE^WCCON Q RES
 D GETANS I RES'=WCC("OK") Q RES
 I $G(WCM(0))="ERR" S RES=WCC("GENERR") Q RES
 ;
 S @$$^WCG@("RSNAME")=$TR(WCM(1),TSS,TS0)
 S @$$^WCG@("RSADDR")=WCM(2)
 S @$$^WCG@("RSPHONE")=WCM(3)
 S @$$^WCG@("HEAD")=WCM(4)
 S @$$^WCG@("APP")=WCM(5)
 S @$$^WCG@("RCOPY")=WCM(6)
 S @$$^WCG@("RETRY")=WCM(7)
 S @$$^WCG@("KEYPAD")=WCM(8)
 S RES=WCC("OK")
 Q RES
 ;
GETANS ;
 D ^WCGETANS
 Q
 

WCIN
WCIN ; [ 29.08.10 08:25 ] [
 N CD,I,T
 K WCC
 F I=1:1 S T=$T(LIST+I) Q:T=""  Q:T["Q  ;"  S CD=$P(T,";",2) I CD'="" S WCC(CD)=$P(T,";",3)
 Q
LIST ;
 ;OK;2;
 ;WVER;3;
 ;WUID;4;
 ;WCID;5;
 ;NOCON;6;
 ;TOUT;7;
 ;PAYOK;8;
 ;NOACK;9;
 ;NOKEYP;10;
 ;NOPOS;11;
 ;GENERR;12;
 ;WCODE;13;
 ;MPOLICY;14;
 ;OPOLICY;15;
 ;SPOLICY;16;
 ;RIDPRO;17;
 ;NOORD;18;
 ;CERR;19;
 ;NOUID;20;
 ;NODEL;21;
 ;NOITRA;22;
 ;NOSUM;23
 Q  ;

WCKBCARD
WCKBCARD(CARD) ; [ 29.08.10 08:26 ] [
 I $E(CARD,1,4)=1355 Q $E(CARD,24,30)
 Q CARD

WCLOADC
WCLOADC(STAM) ; LOAD COMPANIES ; [ 11.01.15 20:32 ] [ 29.09.13 14:55 ] [ 08.09.10 14:06 ]
 N STR,RES,MSG,A,MCD,MSG,OK,WCM,N
 D ^%L1TS
 S STR="1#"
 S STR="CMA"_$L(STR)_"~"_STR
 K @$$^WCCMP
CON S RES=$$^WCCON(STR)
 I RES'=WCC("OK") Q WCC("NOCON")
 S OK=0
 D GA I RES'=WCC("OK") Q WCC("GENERR")
 I $G(WCM(0))="ERR" Q WCC("GENERR")
 S N=0 F  S N=$O(WCM(N)) Q:N=""  D
 .S MSG=WCM(N)
 .S CCD=$$SPA^%L1FRM($P(MSG,"|"))
 .S CCD=$$FUNC^%UCASE(CCD)
 .S CCD=$TR(CCD,TSS,TS0)
 .N NM S NM=$E(CCD,4,120)
 .S CCD=$TR($E(CCD,1,3)," ","")
 .S @$$^WCCMP@(CCD)=$$SPA^%L1FRM(NM)
 ;
 I STR["CMA" S STR="1#" S STR="CMB"_$L(STR)_"~"_STR G CON
END Q WCC("OK")
 ;
GA ;
 D ^WCGETANS
 Q

WCLOADM
WCLOADM(STAM) ; [ 08.09.10 14:12 ] [ 29.08.10 08:29 ] [
 N STR,RES,MSG,A,MCD,MSG,N
 D ^%L1TS
 S STR=@$$^WCG@("APP")_"#"
 S STR="MES"_$L(STR)_"~"_STR
 S RES=$$^WCCON(STR)
 I RES'=WCC("OK") Q WCC("NOCON")
 S OK=0
 D GA I RES'=WCC("OK") Q WCC("GENERR")
 I $G(WCM(0))="ERR" Q WCC("GENERR")
 K @$$^WCMSG
 S N="" F  S N=$O(WCM(N)) Q:N=""  D
 .S MSG=WCM(N)
 .S MCD=$P(MSG,"|")
 .S MCD=$$FUNC^%UCASE(MCD)
 .S MCD=$TR(MCD,TSS,TS0)
 .N NM S NM=$$SPA^%L1FRM($E(MCD,3,120))
 .S MCD=+$TR($E(MCD,1,2)," ","")
 .I MCD S @$$^WCMSG@(MCD)=NM
END Q WCC("OK")
 ;
GA ;
 D ^WCGETANS ; --> A , RES
 Q

WCLOADR
WCLOADR(STAM) ; LOAD REPORTS ; [ 08.09.10 14:09 ] [ 29.08.10 08:30 ] [
 N STR,RES,MSG,A,MCD,MSG,WCM,N
 D ^%L1TS
 S STR=@$$^WCG@("PID")
 S STR="REP"_$L(STR)_"~"_STR
 S RES=$$^WCCON(STR)
 I RES'=WCC("OK") Q WCC("NOCON")
 S OK=0
CYC ;
 D GA I RES'=WCC("OK") Q WCC("GENERR")
 I $G(WCM(0))="ERR" Q WCC("GENERR")
 K @$$^WCREP
 S N="" F  S N=$O(WCM(N)) Q:N=""  D
 .S MSG=WCM(N)
 .S RCD=$TR($$FUNC^%UCASE($P(MSG,"|")),TSS,TS0)
 .N NM S NM=$E(RCD,3,120)
 .S RCD=$E(RCD,1,2)
 .S RCD=+$TR(RCD," ","")
 .I RCD S @$$^WCREP@(RCD)=$$SPA^%L1FRM(NM)
END Q WCC("OK")
 ;
GA ;
 D ^WCGETANS
 Q

WCMSG
WCMSG(STAM) ; [ 06.09.10 10:11 ] [
 Q $$^W4GL("WCMSG")

WCNALAN
WCNALAN(STAM) ; [ 29.08.10 08:31 ] [
 I $L($G(@$$^WCG@("PORT")))=4 Q 1
 Q 0

WCNPAY
WCNPAY(HZM,COMP,CARD,ASRL0,ASRL) ; [ 17.06.26 11:00 ] [ 16.11.25 14:48 ] [ 13.08.24 09:35 ] 
 N (JB,%ARG,%REM,HZM,COMP,CARD,ASRL,ASRL0,RES)
 ;;S ^AA("WCNPAY",HZM,"ASRL0")=ASRL0
 ;;S ^AA("WCNPAY",HZM,"ASRL")=ASRL
 I '$G(ASRL),$G(ASRL0) S ASRL=ASRL0
 ;
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S SEC=$P($H,",",2)
 S DOP=HZM_"-"_SEC
 ;
 D OPFL("cibn") ; --> O FL U FL
 ;
 D HEADER
 D BODY
 D FOOTER
 ;
 C FL
 ;
 D SEND(FL,"AddOrder-"_HZM_"-"_COMP_"-"_CARD_"-"_ASRL0_"-"_ASRL)
 Q
 ;
 ;
OPFL(PREF) ;
 S FL=$$FL(PREF)
 C FL:DELETE
 O FL:(WRITE:NEWVERSION:REWIND:GROUP="rw")
 U FL
 Q
 ;
HEADER ;
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" "
 W "xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" "
 W "xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 W " <soap:Body>",!
 Q
 ;
BODY ;
 W "<AddOrder xmlns=""www.cibusnet.co.il"">",!
 W " <restaurantID>"_$$REST_"</restaurantID>",!
 W " <posID>"_$$POSID_"</posID>",!
 W " <companyCode>"_+COMP_"</companyCode>",!
 W " <companyCard>"_CARD_"</companyCard>",!
 W " <vatFreePrice>"_$S($$MAM^W4PRM:0,1:ASRL)_"</vatFreePrice>",!
 W " <price>"_ASRL0_"</price>",!
 W " <budget></budget>",!
 W " <orderID>0</orderID>",!
 W " <companyName></companyName>",!
 W " <outCompanyCard></outCompanyCard>",!
 W " <errorMessage></errorMessage>",!
 W "</AddOrder>",!
 Q
 ;
REST() ;
 N REST 
 S REST=$G(@$$^WCG@("RID"))
 Q REST
 ;
POSID() ;
 N POSID
 S POSID=$G(@$$^WCG@("PID"))
 Q POSID
 ;
 ;
FOOTER ;
 W "</soap:Body>",!
 W "</soap:Envelope>",!
 Q
 ;
 ;
SEND(FL,FUNC) ;
 N (JB,%ARG,%REM,FL,FUNC,TMP,RES)
 S FLDATA=FL_"utf-8"
 ZSY "iconv -c -f cp1255 -t utf-8 "_FL_" -o "_FLDATA
 ;
 I FUNC["-" S HZM=$P(FUNC,"-",2)
 I FUNC["AddOrder" D
 .S HZM=$P(FUNC,"-",2)
 .S COMP=$P(FUNC,"-",3)
 .S CARD=$P(FUNC,"-",4)
 .S ASRL0=$P(FUNC,"-",5)
 .S ASRL=$P(FUNC,"-",6)
 .I $G(ASRL0),$G(ASRL)="" S ASRL=ASRL0
 .S FUNC=$P(FUNC,"-")
 ;
 S HD1="Content-Type:text/xml"
 S HD2="SOAPAction:www.cibusnet.co.il/"_$P(FUNC,"-")
 ;
 S URL="https://poslb.mysodexo.co.il/poswebservice/posws.asmx" ; ***
 I $$^W4DZ>$$^%L1DC("200924",3) S URL="https://api.poslb.pluxee.co.il/poswebservice/posws.asmx"
 ;
 S DIR=$$DIR
 ;
 S FLOU=$$DIR_"cibnou"_"-"_$P(FL,"-",2,20)
 ;
 S H=$$DT
 N GLPROT,NP S GLPROT=$$^W4GL("WCNPR")
 ;
 S ST="curl "
 S ST=ST_" -L -X POST -m 30 -s """_URL_""" "
 S ST=ST_" -H """_HD1_""" "
 S ST=ST_" -H """_HD2_""" "
 S ST=ST_" -d@"_FLDATA
 S ST=ST_" -o "_FLOU
 ;;S ST=ST_" --format xmllint"
 ;
 S FLCMD=$$DIR_"cibncmd"_"-"_$P(FL,"-",2,20)
 ;
 O FLCMD:(WRITE:NEWVERSION:REWIND:GROUP="rw")
 U FLCMD
  W ST
 C FLCMD
 ;
 S CMD="/bin/sh "_FLCMD
 ZSY CMD
 ;
 ;;ZSY "rm -f "_FLCMD ; ***
 ;
 N HZ S HZ=+$G(HZM)
 S NP=$O(@GLPROT@(H,99999),-1)+1
 S @GLPROT@(H,NP)=$ZD($H,"DD.MM.YY 24:60")_" "_$TR($J("",30)," ","-")_"\"_$G(HZM)
 S @GLPROT@(H,NP,"A_ST")=ST
 S @GLPROT@(H,NP,"CMD")=CMD
 S @GLPROT@(H,NP,"CMD","ZSY")=$ZSY
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 I $$EXIST^%L1ZOS(FL) D
 .C FL O FL:(REWIND:READONLY)
 .F  U FL R A Q:$ZEOF  D 
 ..S K=K+1,@TMP@(K)=A
 .C FL
 ;
 M @GLPROT@(H,NP,"CONT")=@TMP
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 ;
 I $$EXIST^%L1ZOS(FLOU) D
 .C FLOU O FLOU:(REWIND:READONLY)
 .I FUNC'["LoadComp",FUNC'["GetPOSDet" D
 ..F  U FLOU R A Q:$ZEOF  D 
 ...S K=K+1,@TMP@(K)=A
 ..
 .I FUNC["LoadComp" D READCOMP
 .I FUNC["GetPOSDet" D READPOS
 .
 .C FLOU
 .;;ZSY "rm -f "_FLOU ; ***
 .M @GLPROT@(H,NP,"RESP")=@TMP
 .;
 .N NC,TAG
 .;
 .I $G(HZM)>0,FUNC["AddOrder" D PAYCIB(HZM,CARD,COMP,ASRL)
 .I FUNC["CancelOrder" D CNCCIB(FUNC)
 ;
 K @TMP Q
 ;
 ;
FL(PREF)
 N DV,DZ
 S DV=$$^W4MYDVN
 S DZ=$$^W4DZ
 Q $$DIR_PREF_"-"_DZ_"-"_DV_"-"_DOP
 ;
DT() ;
 Q +$H ;;$$^W4DZ 
 ;
 ;
LOAD ;
 N (JB,%ARG,%REM,RES)
 S DOP=""
 D OPFL("cibnld") ; --> O FL U FL
 D HEADER
 ;
 W "<LoadCompanies1255 xmlns=""www.cibusnet.co.il"">",!
 W " <restaurantID>"_$$REST_"</restaurantID>",!
 W " <posID>"_$$POSID_"</posID>",!
 W "  <companyCodeList>",!
  F I=1:1:100 W "<int>0</int>",!
 W "  </companyCodeList>",!
 ;
 W "<companyNameList>",!
  F I=1:1:100 W "<string xsi:nil=""true"" />",!
 W "</companyNameList>",!
 ; 
 W "<isCMBPrefix>false</isCMBPrefix>",!
 W "<listItemsCount>0</listItemsCount>",!
 ;
 W "</LoadCompanies1255>",!
 D FOOTER
 C FL
 D SEND(FL,"LoadCompanies1255")
 Q
 ;
 ;
POS ;
 N (JB,%ARG,%REM)
 S DOP=""
 D OPFL("cibnpos") ; --> O FL U FL
 D HEADER
 ;
 W "<GetPOSDetails xmlns=""www.cibusnet.co.il"">",!
 W " <restaurantID>"_$$REST_"</restaurantID>",!
 W " <posID>"_$$POSID_"</posID>",!
 W "  <posDetails>",!
  F I=1:1:7 W "<string></string>",!
 W "  </posDetails>",!
 ;
 W "<errorMessage></errorMessage>",!
 ;
 W "</GetPOSDetails>",!
 D FOOTER
 C FL
 D SEND(FL,"GetPOSDetails")
 Q
 ;
 ;
CNC(HZM,INDASR,HZMNEW) ;
 N (JB,%ARG,%REM,HZM,INDASR,HZMNEW,RES)
 S RES=-.1
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S SEC=$P($H,",",2)
 S DOP=HZM_"-"_SEC
 S A=$G(@$$^W4ORD@(HZM,"CB","ASR",INDASR))
 I A="" S RES="-1*NODATA" Q
 S ORDID=$P(A,"*",27) I 'ORDID S RES="-2*NOTORDID" Q
 S SUM=$P(A,"*",4)
 ;
 D OPFL("cibncnc") ; --> O FL U FL
 ;
 D HEADER
 ;
 W "<CancelOrder xmlns=""www.cibusnet.co.il"">",!
 W "   <restaurantID>"_$$REST_"</restaurantID>",!
 W "   <posID>"_$$POSID_"</posID>",!
 W "   <orderID>"_ORDID_"</orderID>",!
 ;;W "   <price>"_$J(SUM,2,2)_"</price>",!
 W "</CancelOrder>",!
 ;
 D FOOTER
 ;
 C FL
 ;
 D SEND(FL,"CancelOrder-"_HZM_"-"_INDASR_"-"_HZMNEW)
 Q
 ;
 ;
PAYCIB(HZM,CARD,COMP,ASRL) ;
 N NC,K,A,TAG,VL,RKV,XMLARR,CIBORD
 ;
 S NC=$O(@$$^W4ORD@(HZM,"CIBN",9999),-1)+1
 S @$$^W4ORD@(HZM,"CIBN",NC)=$H_"\"_$ZD($H,"DD.MM.YY 24:60")
 ;
 D GETRKV(TMP)
 ;
 M @$$^W4ORD@(HZM,"CIBN",NC)=XMLARR
 ;
 S RES=$G(@$$^W4ORD@(HZM,"CIBN",NC,"ADDORDERRESULT"))
 ;
 I RES=0 D
 .S CIBORD=$G(@$$^W4ORD@(HZM,"CIBN",NC,"ORDERID")) Q:'CIBORD
 .D PAY(HZM,CARD,COMP,CIBORD,ASRL)
 .D PUT^%W1PRM("ER","0*OK")
 ;
 I RES D
 .N ERMSG
 .D 
 ..I $D(@$$^W4GL("KODCIB")@(RES)) S ERMSG=^(RES) Q
 ..S ERMSG=$G(@$$^W4ORD@(HZM,"CIBN",NC,"ERRORMESSAGE"))
 ..S ERMSG=$$FUNC^%UCASE(ERMSG)
 .S RES=RES_"*!"_ERMSG
 .D PUT^%W1PRM("ER",RES)
 Q  ;
 ;
 ;
PAY(HZM,CARD,COMP,CIBORD,ASR) ;
 N (JB,%ARG,%REM,HZM,CARD,COMP,CIBORD,ASR)
 Q:'$G(ASR)
 S ITRA=$$ITRA^W4HZMST(HZM)
 S VT=7
 I $$GET^W4TMPPAY(VT,"TOPAY") S ITRA=$$GET^W4TMPPAY(VT,"TOPAY")
 S CIBCARD=CARD
 S CIBCID=COMP
 S NC=$O(@$$^W4ORD@(HZM,"CIBN",9999),-1) Q:'NC
 S HZMLK=$G(@$$^W4ORD@(HZM,"CIBN",NC,"ORDERID"))
 S (LKHN,CUSN)=$$^W4CIBLKH
 S (LKAH,LKHNH)=0
 S (HRA,LKHR)=""
 ;
 I $$TOOMUCH^W4PAYKB(ASR,HZM,ITRA) D
 .S TIPAS=ASR-ITRA
 .D PUT^W4TMPPAY(4,"TIPAS",TIPAS)
 ;
 D ^W4ASR
 K @$$^W4ORD@(HZM,"S") ; -- ???
 Q  ;
 ;
 ;
GETRKV(TMP) ;
 N (JB,TMP,XMLARR)
 F K=1:1 Q:'$D(@TMP@(K))  D
 .S A=$$SPA^%L1FRM($G(^(K)))
 .D GETRKV1(A)
 Q
 ;
 ;
CNCCIB(FUNC)
 N (JB,FUNC,RES)
 S HZMBIT=$P(FUNC,"-",2) I 'HZMBIT S RES="-3*NOORD" Q
 S IND=$P(FUNC,"-",3) I 'IND S RES="-4*NOINDASR" Q
 S HZMNEW=$P(FUNC,"-",4)
 S FUNC=$P(FUNC,"-") I FUNC="" S RES="-5*NOFUNC" Q
 ;
 S TMP=$$^W4MAIN("TMP")
 ;
 S A=$G(@$$^W4ORD@(HZMBIT,"CB","ASR",IND))
 S CIBCARD=$P(A,"*",15)
 S COMP=$P(A,"*",16)
 S ASRL=$P(A,"*",4)
 ; 
 S NC=$O(@$$^W4ORD@(HZMNEW,"CIBN",9999),-1)+1
 S @$$^W4ORD@(HZMNEW,"CIBN",NC)=$H_"\"_$ZD($H,"DD.MM.YY 24:60")
 ;
 D GETRKV(TMP)
 ;
 M @$$^W4ORD@(HZMNEW,"CIBN",NC)=XMLARR
 ;
 S RES=$G(@$$^W4ORD@(HZMNEW,"CIBN",NC,"CANCELORDERRESULT"))
 ;
 I RES,$G(HZMNEW) D
 .N ERMSG S ERMSG=$G(@$$^W4ORD@(HZMNEW,"CIBN",NC,"ERRORMESSAGE"))
 .S ERMSG=$$FUNC^%UCASE(ERMSG)
 .S RES=RES_"*"_ERMSG
 .D PUT^%W1PRM("ERMSG",";! "_RES)
 Q
 ;
 ;
GETRKV1(A) ;
 N (JB,A,XMLARR)
 S BG=0
GETRKVC S BG=$F(A,"<",BG) 
 I BG<1 Q
 I $E(A,BG)'?1A S BG=BG+1 G GETRKVC
 S TG=$P($E(A,BG,BG+255),">")
 I $E(TG,$L(TG))="/" S BG=BG+1 G GETRKVC
 I TG[" "!(TG[":") S BG=BG+1 G GETRKVC
 I TG="" G GETRKVC
 S FIN=$F(A,"</"_TG_">",BG)
 S B=$E(A,BG-1,FIN-1)
 S VL=$P(B,"<"_TG_">",2)
 S VL=$P(VL,"</"_TG_">")
 S TGH=$$FUNC^%UCASE(TG)
 I $L(TGH),FIN>0 S XMLARR(TGH)=VL
 I 'FIN S BG=BG+1 G GETRKVC
 S BG=FIN I BG>0 G GETRKVC
 Q
 ;
DIR() ;
 Q "/tmp/"
 ;
PRSLN(ST) ;
 N J,K,ST1 S K=0,J=0,ST1=""
PRSLNC ; 
 S J=J+1
 S ST1=ST1_$E(ST,J)
 I $E(ST,J)="<",$E(ST,J+1)="/" D
 .F J1=J+1:1:$L(ST) S ST1=ST1_$E(ST,J1) Q:$E(ST,J1)=">"
 .S J=J1
 .S K=K+1,@TMP@(K)=ST1,ST1=""
 I J<$L(ST) G PRSLNC
 I $L(ST1) S K=K+1,@TMP@(K)=ST1,ST1=""
 Q
 ;
 ;
READCOMP ;
 N (JB,%ARG,TMP,FLOU,RES)
 N ST S ST=""
 F  U FLOU R *A:.5 Q:$ZEOF  Q:A<0  D 
 .S ST=ST_$C(A)
 D PRSLN(ST)
 S PR=0,SH=0
 
 F K=1:1 Q:'$D(@TMP@(K))  D 
 .S A=$G(^(K))
 .I A["companyCodeList" S PR=1
 .I A["/companyCodeList" S PR=0,SH=0
 .I A["companyNameList" S PR=2
 .I A["/companyNameList" S PR=0,SH=0
 .
 .I A["LoadCompanies1255Result" D
 ..S RES=$P(A,"<LoadCompanies1255Result>",2)
 ..S RES=$P(RES,"</LoadCompanies1255Result>")
 .
 .I A["<int>",PR=1 D
 ..S VL=$P($P(A,"<int>",2),"</int>") Q:VL=0
 ..S SH=SH+1,MC(SH)=VL
 .
 .I A["<string>",PR=2 D
 ..N VL,VL1 S VL=$P($P(A,"<string>",2),"</string>"),VL1=""
 ..S VL=$$FUNC^%UCASE(VL)
 ..N J F J=1:1:$L(VL) D
 ...I $A(VL,J)=215 S VL1=VL1_$C($A(VL,J+1)-48),J=J+1 Q
 ...S VL1=VL1_$E(VL,J)
 ..S VL1=$$INVH^%L1FRM(VL1)
 ..S SH=SH+1,MCNM(SH)=VL1
 
 S SH="" F  S SH=$O(MC(SH)) Q:SH=""  I $G(MC(SH)) D
 .S @$$^WCCMP@(MC(SH))=$G(MCNM(SH))
 Q
 ;
 ; 
READPOS ;
 N (JB,%ARG,TMP,FLOU,RES)
 N ST S ST=""
 F  U FLOU R *A:.5 Q:$ZEOF  Q:A<0  D 
 .S ST=ST_$C(A)
 D PRSLN(ST)
 S PR=0,SH=0
 
 F K=1:1 Q:'$D(@TMP@(K))  D 
 .S A=$G(^(K))
 .I A["posDetails" S PR=1
 .I A["/posDetails" S PR=0,SH=0
 .
 .I A["<string>",PR=1 D
 ..N VL,VL1 S VL=$P($P(A,"<string>",2),"</string>"),VL1=""
 ..S VL=$$FUNC^%UCASE(VL)
 ..N J F J=1:1:$L(VL) D
 ...I $A(VL,J)=215 S VL1=VL1_$C($A(VL,J+1)-48),J=J+1 Q
 ...S VL1=VL1_$E(VL,J)
 ..S VL1=$$INVH^%L1FRM(VL1)
 ..S SH=SH+1,MCNM(SH)=VL1
 ;
 S @$$^WCG@("RSNAME")=$G(MCNM(1))
 S @$$^WCG@("RSADDR")=$G(MCNM(2))
 S @$$^WCG@("RSPHONE")=$G(MCNM(3))
 S @$$^WCG@("HEAD")=$G(MCNM(4))
 S @$$^WCG@("APP")=$G(MCNM(5))
 S @$$^WCG@("RCOPY")=$G(MCNM(6))
 S @$$^WCG@("RETRY")=$G(MCNM(7))
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WCNPR
WCNPR(DAT) ; [ 12.09.23 18:17 ] [ 07.09.23 14:05 ] [ 30.08.23 19:09 ] 
 N (JB,%ARG,DAT,ORDPR)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 I $G(JB)="" W "JB NOT DEFINED !" Q
 I $G(DAT)="" S DAT=+$H
 ;
 S DT=$$^%L1DC(DAT,3)
 S GL=$$^W4GL("WCNPR")
 ;
 S EL=""
 W "<pre style=""font-size:"_$$^W3FSZ(10)_""">",!
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .W "<br>",!
 .I $D(^(N))#2 W $$ST(N_" = "_$G(^(N))_EL),!
 .S N1="" F  S N1=$O(@GL@(DT,N,N1)) Q:N1=""  D
 ..I $D(^(N1))#2 W $$ST(N1_" = "_$G(^(N1))_EL),!
 ..S N2="" F  S N2=$O(@GL@(DT,N,N1,N2)) Q:N2=""  D
 ...I $D(^(N2))#2 W $$ST(N1_" : "_N2_" = "_$G(^(N2))_EL),!
 ...S N3="" F  S N3=$O(@GL@(DT,N,N1,N2,N3)) Q:N3=""  D
 ....I $D(^(N3))#2 W $$ST(N1_" "_N2_" : "_N3_" = "_$G(^(N3))_EL),!
 W "</pre>",!
 Q
 ;
 ; 
ST(TX) ; 
 N TXO
 S TXO=$$RPL^%L1FRM(TX,"<","&lt;") 
 S TXO=$$RPL^%L1FRM(TXO,">","&gt;") 
 Q TXO
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WCPAYC
WCPAYC(CARD,SUM) ; [ 02.11.23 13:28 ] [ 13.09.23 13:32 ] [ 03.08.11 08:59 ] 
 N (JB,%ARG,%REM,SUM,CARD)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^WCIN S RES=""
 D PUT^%W1PRM("WCPAYC","CARD=CARD & SUM=SUM")
 I $G(CARD)=""!($G(CARD)=";") S ER=-1 G END
 I $E(CARD)=";" S CARD=$P(CARD,";",2)
 I $E(CARD,1,4)'=1355 S ER=1355 G END
 ;
M S APP=$E(CARD,5,6)
 S CID=$E(CARD,7,18)
 S UID=$E(CARD,19,30)
 S CHKD=$E(CARD,31)
 S RES=$$^WCVC(APP,UID,CID)
 D PUT^%W1PRM("WCPAYC","RES-WCVC=RES")
 ;
 I RES'=WCC("OK") S ER=-1.1 G END
 ;
 D ^WCADCAOR(UID,SUM,CID) ; -> RES
 ;
 I '$D(WCV) S ER=-9 G END ; RES NOT OK
 ;
 I WCV("RES")'=WCC("OK") S ER=-2 G END
 I WCV("OID")=WCC("NOACK") S RES=WCC("NOACK") S ER=-3 G END
 I WCV("OID")=22 S RES=22 S ER=-4 G END
 I WCV("OID")<999 S RES=WCV("OID") S ER=-5 G END ; -- 13/09/23
 ;
 D ^WCPC(UID,WCV("OID"),SUM,WCV("SUM"),WCV("CNAME"),"N")
 ;
 S RES=$$^WCSNDACK(WCV("OID"))
 I RES'=WCC("OK") S @$$^WCG@("NCOID")=WCV("OID") S ER=RES G END
 ;
 S ER=0
END N ANS S ANS=ER_"*"_$G(WCV("SUM"))_"*"_$G(WCV("OID"))_"*"_$G(CARD)_"****"_$G(WCV("ITRA"))_"*"_$G(RES)
 Q ANS
 
 

WCPAYCC
WCPAYCC(CID,CARD,SUM) ; [ 06.05.25 09:46 ] [ 02.11.23 13:29 ] [ 13.09.23 13:32 ] 
 N (JB,%ARG,%REM,CID,CARD,SUM) ; -- CID - HEVRA
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S ER=0,RES="" D ^WCIN
 ;
M D ^WCADCCOR(CARD,SUM,CID)
 ;
 I '$D(WCV) S ER=-9 G END
 I '$D(WCV("RES"))!'$D(WCV("OID")) S ER=-9 G END
 ;
 I WCV("RES")'=WCC("OK") S ER=-2 G END
 I WCV("OID")=WCC("NOACK") S RES=WCC("NOACK") S ER=-3 G END
 S @$$^WCG@("NCOID")=0
 I WCV("OID")=22 S RS=22 S ER=-4 G END
 I WCV("OID")<999 S RES=WCV("OID") S ER=-5 G END ; -- 13/09/23
 ;
 D ^WCPC(CID,WCV("OID"),SUM,WCV("SUM"),WCV("CNAME"),"N")
 ;
 S RES=$$^WCSNDACK(WCV("OID"))
 I RES'=WCC("OK") S @$$^WCG@("NCOID")=WCV("OID") S ER=RES G END
 S ER=0
END Q ER_"*"_$G(WCV("SUM"))_"*"_$G(WCV("OID"))_"*"_$G(CARD)_"*"_$G(CID)_"***"_$G(WCV("ITRA"))_"*"_$G(RES)
 ;
 
 
 
 
 

WCPAYK
WCPAYK(UID,SUM) ; [ 02.11.23 13:29 ] [ 13.09.23 13:32 ] [ 05.09.10 07:54 ] 
 ; -- UID - MISP LAKUAH
 N (JB,%ARG,%REM,SUM,UID)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S ER=0 D ^WCIN
 S APP=$G(@$$^WCG@("APP"))
 ;
 D VVID I ER G END
 S RES=$$^WCVID(UID,UIC)
 I RES'=WCC("OK") S ER=-1 G END
 ;
M D ^WCADKPOR(UID,UIC,SUM,180)
 ;
 I '$D(WCV) S ER=-9 G END
 ;
 D ^WCIN
 I WCV("RES")'=WCC("OK")!'$D(WCV("OID")) S ER=-2 G END
 I WCV("OID")=WCC("NOACK") S RES=WCC("NOACK") S ER=-3 G END
 I WCV("OID")=22 S RES=22 S ER=-4 G END
 I WCV("OID")<999 S RES=WCV("OID") S ER=-5 G END ; -- 13/09/23
 ;
 D ^WCPC(UID,WCV("OID"),SUM,WCV("SUM"),WCV("CNAME"),"N")
 ;
 S RES=$$^WCSNDACK(WCV("OID"))
 I RES'=WCC("OK") S @$$^WCG@("NCOID")=WCV("OID") S ER=RES G END
 S ER=0
 ;
END Q ER_"*"_$G(WCV("SUM"))_"*"_$G(WCV("OID"))_"***"_$G(UID)_"*"_$G(UIC)_"*"_$G(WCV("ITRA"))_"*"_$G(RES)
 ;
VVID ;
 S UIC=1234 ;;S %GET=": ynzynd cew#8" D N^%L1GET S UIC=%S
 ;;I UIC="" S ER=-.1 Q
 S RES=$$^WCVUC(UID,UIC)
 I RES'=WCC("OK") S ER=-.1 Q
 Q
 
 

WCPC
WCPC(UID,OID,SUM,SUME,CNAME,CNC) ; [ 30.06.11 13:34 ] [
 Q

WCPORT
WCPORT(STAM) ; [ 03.09.10 12:03 ] [
 I '$$^WCNALAN Q @$$^WCG@("PORT")
 Q "SCK$"_$J

WCRCV
WCRCV(STAM) ; [ 03.09.10 12:05 ] [ 01/13/2004  6:34 PM ] [
 N A
 R *A:@$$^WCG@("TOUT") E  Q WCC("NOCON")
 S STRIN=$C(A)
 F  R *A:1 Q:'$T  S STRIN=STRIN_$C(A)
 Q WCC("OK")

WCREP
WCREP(STAM) ; [ 08.09.10 11:27 ] [
 Q $$^W4GL("WCREP")

WCSETUP
WCSETUP ; [ 20.09.23 15:19 ] [ 19.09.23 07:25 ] [ 30.01.20 06:44 ] 
GET ;
 ;;K @$$^WCGP
 D ^WCIN
 S IPA=$G(@$$^WCG@("IPA"))
 S PORT=$G(@$$^WCG@("PORTN"))
 S TOUT=$G(@$$^WCG@("TOUT"))
 S RSID=$G(@$$^WCG@("RID"))
 S KUP=$G(@$$^WCG@("PID"))
 S LKCIB=$G(@$$^W4PRM@("CIBUS"))
 S LKCIBH=$G(@$$^W4PRM@("CIBUSYAD"))
 S CMPID=$G(@$$^WCG@("CID"))
 S AHUZ=$G(@$$^WCG@("AHUZ"))
 Q
 ;
 ;
PUT(PRM) ;
 D PUT^%W3DEB("WCSETUP","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 K @$$^WCG
 ;
 S @$$^WCG@("IPA")=IPA
 S @$$^WCG@("PORTN")=PORT
 S @$$^WCG@("PORT")=$S(PORT="":"",$L(PORT)<3:@$$^W4DEV@(PORT),1:PORT)
 S @$$^WCG@("TOUT")=TOUT
 S @$$^WCG@("RID")=RSID
 S @$$^WCG@("PID")=KUP
 S @$$^WCG@("NCOID")=0
 S @$$^W4PRM@("CIBUS")=LKCIB
 S @$$^W4PRM@("CIBUSYAD")=LKCIBH
 S @$$^WCG@("CID")=CMPID
 S @$$^WCG@("AHUZ")=AHUZ
 Q
 ;
 ;
GETPRM(IND)
 S RES=""
 ;
 I $$NEWCIB^W4PRM D  Q RES
 .D LOAD^WCNPAY
 .I $G(RES)=0 S RES="0::DONE" Q
 .S RES=RES_"::"_$$CLWEB^%L1FRM($$H2U^%L1FRM($G(@$$^WCMSG@(RES))))
 ;
 N PROG S PROG="WCGPOS"
 I IND="msg" S PROG="WCLOADM"
 I IND="rep" S PROG="WCLOADR"
 I IND="cmp" S PROG="WCLOADC"
 ;
 N RES X "S RES=$$^"_PROG
 I RES=WCC("OK") Q WCC("OK")
 Q RES_"::"_$$CLWEB^%L1FRM($$H2U^%L1FRM($G(@$$^WCMSG@(RES))))
 ;
 ;
SETUP ;
 D MSG("prm")
 S RES=$$^WCGPOS
 I $G(WCC("OK"))="" Q
 I RES'=WCC("OK") D MSGER(RES,"prm") Q
 D MSG("msg")
 S RES=$$^WCLOADM
 I RES'=WCC("OK") D MSGER(RES,"msg") Q
 D MSG("rep")
 S RES=$$^WCLOADR
 I RES'=WCC("OK") D MSGER(RES,"rep") Q
 D MSG("cmp")
 S RES=$$^WCLOADC
 I RES'=WCC("OK") D MSGER(RES,"cmp") Q
 ;
END C:$D(@$$^WCG@("PORT")) @$$^WCG@("PORT")
 Q
 ;
MSG(IND) ;
 N INDB S INDB=$$FUNC^%UCASE(IND)
 W "<script>",!
 W "GetID(""msg"_IND_""").innerHTML='"_$$^%W1DICT("RCV"_INDB_"FILE")_"'"
 W !,"</script>",!
 Q
 ;
MSGER(RES,IND) ;
 N INDB S INDB=$$FUNC^%UCASE(IND)
 W "<script>",!
 W " if (GetID('res"_IND_"') !== null && GetID('res"_IND_"') !== undefined ) ",!
 W "  {",!
 W "   GetID('res"_IND_"').innerHTML='"_RES_" "_$$H2U^%L1FRM($G(@$$^WCMSG@(RES)))_"'",!
 W "  }",!
 W " if (GetID('er"_IND_"') !== null && GetID('er"_IND_"') !== undefined ) ",!
 W "  {",!
 W "    GetID(""er"_IND_""").innerHTML='"_$$^%W1DICT("RCV"_INDB_"FILEERR")_"'",!
 W "  }",!
 W !,"</script>",!
 Q
 
 
 
 
 
 

WCSNDACK
WCSNDACK(OID) ; [ 03.09.10 12:07 ] [ 01/26/2004  4:53 PM ] [ 19.12.03 12:11 PM ]
 N STR,RES
 S STR=OID
 S STR="ACK"_$L(STR)_"~"_STR
 S RES=$$^WCCON(STR)
 I RES'=WCC("OK") Q WCC("NOACK")
 D CLOSE^WCCON
 Q WCC("OK")

WCVC
WCVC(APP,UID,CID) ; [ 30.06.11 10:45 ] [ 03.09.10 12:08 ] [
 I +APP'=$G(@$$^WCG@("APP")) Q WCC("WVER")
 I '$$^WCCCD(UID) Q WCC("WUID")
 Q WCC("OK")

WCVID
WCVID(UID,UCD) ; [ 03.09.10 12:14 ] [
 I '$$^WCCCD(UID) Q WCC("WUID")
 Q WCC("OK")

WCVMC
WCVMC(APP,UID,CID) ;VALIDATE MAINTAINENCE CARD  [ 03.09.10 12:15 ] [
 I APP'=0 Q WCC("WVER")
 I '$$^WCCCD(UID) Q WCC("WUID")
 I CID'=170 Q WCC("WCID")
 Q WCC("OK")

WCVRC
WCVRC(APP,UID,CID) ; VALIDATE RESTAURANT CARD ; [ 03.09.10 12:16 ] [
 I APP'=@$$^WCG@("APP") Q WCC("WVER")
 I '$$^WCCCD(UID) Q WCC("WUID")
 I CID'=180 Q WCC("WCID")
 Q WCC("OK")

WCVUC
WCVUC(UID,UCD) ; [ 03.09.10 12:16 ] [
 I '$$^WCCCD(UID) Q WCC("WUID")
 Q WCC("OK")

WGR
WGR ; [ 20.10.21 11:50 ] [ 27.05.10 09:20 ] [
 W !?20,"***********************************"
 W !?20,"*   GLOBAL RESTORING FROM W.G     *"
 W !?20,"***********************************"
Z R !!,"KILL OLD GLOBALS ? (Y/N) <Y>",OTB
  I OTB="" S OTB="Y"
  I OTB="^" Q
  I OTB'="Y",OTB'="N" G Z
  I OTB="Y" D
  .S N="" F  S N=$O(^SHP("%GSW4",N)) Q:N=""  D
  ..S A=$G(^(N)) Q:A?.P
  ..S GL="^"_$$SPA^%L1FRM(^(N))
  ..Q:'$D(@GL)
  ..D
  ...I $$SPA^%L1FRM(A)="W4OPT" D  Q
  ....K ^W4OPT0 M ^W4OPT0=^W4OPT K ^W4OPT
  ...K @GL
  ..W !,GL_" - KILLED",!
  ;
  D ^%L1GI
  S N="" F  S N=$O(^W4OPT("BO",N)) Q:N=""  D
  .I $D(^W4OPT0("BO",N,"PSWLVL")) D
  ..S ^W4OPT("BO",N,"PSWLVL")=^W4OPT0("BO",N,"PSWLVL")
  Q
 
 
 
 
 

WLCLRINV
WLCLRINV(HZM,GL,BIT) ; [ 23.09.25 04:06 ] [ 21.08.25 11:14 ] [ 11.11.21 17:17 ] 
 N (JB,%ARG,%REM,HZM,GL,BIT)
 I $G(HZM) Q:$$CLOSE^W4HZMST(HZM)
 N PR S PR=0
 I $$^WLISBON(HZM,GL) S PR=1
 ;
 D CLR($$PARBON^WLPRM,GL)
 D CLR($$PARNKD^WLPRM,GL)
 ;
 I $G(BIT) D KILL(GL) Q
 ;
 N NKD,NKDPAY
 K @GL@("LKM","BON")
 ;
 Q
 ;
 ;
CLR(PRMPAR,GL)
 D ^W4CLRHZM(PRMPAR,GL,1)
 Q
 ;
CLRCARD(GL) ; 
 I $G(GL)="" S GL=$$^W4ORD
 K @GL@("LKM","CARD")
 K @GL@("LKM","NAME")
 Q
 ;
KILL(GL) ; 
 I $G(GL)="" S GL=$$^W4ORD
 K @GL@("LKM")
 Q
 ;
 
 
 

WLFMT
WLFMT(ST,LN1,LN2) ; [ 11.11.21 17:33 ] [ 28.07.15 04:52 ] [ 27.07.15 16:12 ] 
 S ST=$G(ST)
 S:'$G(LN1) LN1=20
 S:'$G(LN2) LN2=16
 I ST'[":" S ST=$J(ST,LN1+LN2+3)
 I ST[":" D
 .N L S L=$L(ST,":")
 .S ST=$$HBR^%L1FRM($$SPA^%L1FRM($P(ST,":",1,L-1)),LN1)_" : "_$$HBR^%L1FRM($$SPA^%L1FRM($P(ST,":",L)),LN2)
 Q ST
 
 

WLISBON
WLISBON(HZM,GL) ; [ 11.11.21 17:18 ] [ 08.07.15 09:36 ] [ 07.07.15 17:04 ] 
 N (JB,%ARG,%REM,HZM,GL)
 I $G(GL)="" S GL=$$^W4ORD_"(HZM)"
 N PRTMP S PRTMP=0 I GL["TMPORD" S PRTMP=1
 N I,A,PAR,OK S OK=0
 N I S I="" F  S I=$O(@GL@(I)) Q:I=""   I I D  Q:OK
 .S A=$G(^(I)) I PRTMP,$P(A,"~") Q
 .S PAR=$S(PRTMP:$P(A,"~",2),1:$P(A,"\"))
 .I PAR=$$PARBON^WLPRM!(PAR=$$PARNKD^WLPRM) S OK=1
 Q OK
 
 

WLKM
WLKM ; [ 21.08.25 10:18 ] [ 
GL(STAM) ;
 Q $$^W4GL("WLKM")
 ;
TMP(STAM) ;
 Q $$^W4MAIN("TMPWLM")
 ;
VLTMP(RKV)
 N TMP S TMP=$$TMP
 N VL,OK S VL="",OK=0
 N A,N S N="" F  S N=$O(@TMP@(N)) Q:N=""  D  Q:OK
 .S A=$G(^(N))
 .I $P(A,":",3)=RKV S VL=$P(A,":"),OK=1
 Q VL
 
 

WLMADVSR
WLMADVSR ; [ 13.08.25 11:43 ] [ 29.06.21 08:40 ] [ 15.07.15 18:03 ] 
 Q
 ;
SAVE(PRM) N (JB,%ARG,%REM,PRM,SCRN) D ^%L1TS
 D PUT^%W3DEB("WBADVSRC","SCRN=SCRN&PRM=PRM")
 S OK=$$^WLMSV2AN(SCRN,PRM)
 I OK'=1 Q OK
TV ;
 F I="LKMFNAME","LKMLNAME","LKMTZ","LKMTEL","LKMEMAIL" D
 .S @I=$$ANS(SCRN,I)
 ;
 D SRCHCUSTOM^WLMFUNC(LKMFNAME,LKMLNAME,LKMTZ,LKMTEL,$G(LKMEMAIL))
 ;
 S BSCARD=""
 S ERR=$$^WLMERR I ERR D CLRBSCARD^WLMCARD Q $$VWERR^WLMERR(ERR)
 ;
 K @$$^WLMVRM
 ;
 D CRVRM
 Q 1
 ;
 ;
CRVRM ;
 D ^%L1TS
 N GL D GL^WLMCON K @$$^WLMVRM
 N A,ZN,I S ZN="",I=0
 ;
 N N S N=""  F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(@GL@(N)) Q:A=""
 .I A[("</Customer>") D SETVRM
 .I A[("<Customer>") D INITVRM
 .I A["<CardNumber>" S CARD=$$ZN(A,"CardNumber")
 .I A["<CustomerId>" S CUSTID=$$ZN(A,"CustomerId")
 .I A["<FirstName>" S FNAME=$$ZN(A,"FirstName")
 .I A["<LastName>" S LNAME=$$ZN(A,"LastName")
 .I A["<CustomerMembershipExpire>" S TOKEF=$$ZN(A,"CustomerMembershipExpire")
 .I A["<Active>" S ACTIVE=$$ZN(A,"Active")
 Q
 ;
SETVRM ;
 I '$G(ACTIVE) Q
 I $$^WLMPARAM="ACT"!($$^WLMPARAM="CUSTNEW"),CARD'=-1 Q
 S I=I+1
 S @$$^WLMVRM@(I)=CARD_"\"_LNAME_" "_FNAME_"\"_CUSTID_"\"_ACTIVE_"\"_TOKEF
 Q
 ;
INITVRM ;
 S CARD=""
 S FNAME=""
 S LNAME=""
 S TOKEF=""
 S ACTIVE=""
 Q
 ;
ANS(COD,RKV)
 Q $$^WLMANS(COD,RKV)
 ;
ZN(A,EL) ;
 Q $$ZN^WLMGETVL(A,EL)
 ;
 
 
 
 
 

WLMANS
WLMANS(COD,RKV) ; [ 28.06.21 10:23 ] [ 24.06.15 18:24 ] [ 22.06.15 05:10 ] [
 I $G(COD)="" Q ""
 I $G(RKV)="" Q ""
 Q $G(@$$^W4TMPANS@(COD,RKV))
 ;
SET(COD,RKV,VL,PRM) ;
 I $G(COD)="" Q
 I $G(RKV)="" Q
 S @$$^W4TMPANS@(COD,RKV)=$G(VL)
 Q
 ;
CLEAR(COD) ;
 I $G(COD)="" K @$$^W4TMPANS Q
 K @$$^W4TMPANS@(COD)
 Q
 
 
 

WLMCARD
WLMCARD ;  [ 29.09.25 00:42 ] [ 23.09.25 04:42 ] [ 22.09.25 16:14 ] 
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ERWB^%L1X"
 S (LKMCARD,LKMNAME)=""
 S LKMCARD=$$^WLMPARAM("LKMCARD") 
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""width:98%;height:98%;border:2px solid grey"" >",!
  ;
  I $L($G(%ARG("HD"))) D
  .D ^%L1WEBHD(%ARG("HD"))
  ;
  W "<table style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" width=""60%"" cellpadding=""20px"" align=""center"" >",!
   D CARD
   ;
   W "<tr>"
    W "<td>"
     D ^W4BTN("SEARCH","LKMSearch()","blue")
    W "</td>"
    ;
    W "<td>"
     D ^W4BTN("CREATENEWCUST","Create()","darkblue")
    W "</td>"
    ;
    W "<td>"
     D
     .D ^W4BTN("BACK","Back()","red")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
CARD ;
 W "<tr>"
  W "<td colspan=""3"">"
   W "<span style=""color:brown"">"_$$^%W1DICT("MOVECARD")_"</span>"
   W "<br>"
   W "<input type=""text"" size=""50"" id=""card"" "
   W " value="""_LKMCARD_""" "
   W " onClick=""this.select()"" "
   W " onKeyPress=""OnKeyPress(event)"" "
   I $$^W4TABLET W " readonly=""readonly"" "
   W " style=""font-size:"_$$^W3FSZ(12)_""">"
   W "&nbsp;&nbsp;&nbsp;"
   D ^W4BTN("SHOW","Sbm()","green")
   W "<br><br>"
   S %ARG("NODOT")=1
   D ^W4NUMKB("card",50)
  W "</td>"
 W "</tr>"
 Q
 ;
 ;
GETVL(CODE,RKV) ;
 N GL S GL=$$GL^WLKM
 N A S A="S "_RKV_"=$$"_RKV_"^W4L("""_CODE_""",GL)"
 X A
 Q $G(@RKV)
 ;
MSG(MSG) ;
 Q $$CLWEB^%L1FRM(MSG)
 ;
INIT ;
 D ^W3CSS
 D ^W4CSS
 D KILL^%W1PRM("KBRKVTO")
 Q
 ;
SETCARD(CARD) ;
 D SET^WLMPARAM("LKMCARD",CARD)
 Q
 ;
CLRLKMCARD ;
 D SET^WLMPARAM("LKMCARD","")
 D SET^WLMPARAM("LKMNAME","")
 Q
 ;
SETORD ;
 N CARDOLD S CARDOLD=$G(@$$^W4TMPORD@("LKM","CARD"))
 I CARDOLD'=LKMCARD D CLRMVC^WLMSALE
 K @$$^W4TMPORD@("LKM")
 S @$$^W4TMPORD@("LKM","CARD")=LKMCARD
 S @$$^W4TMPORD@("LKM","NAME")=LKMNAME
 S @$$^W4TMPORD@("LKM","NKD0")=LKMNKD
 S @$$^W4TMPORD@("NEW")=$H
 Q
 ;
 ;
QCKID(CODE) ;
 N (JB,%ARG,%REM,CODE)
 ;
 D ^WLMGET(CODE,1,.WLMGET,.LKMER)
 ;;S ^AA("WLMCARD","LKMER")=$G(LKMER)
 ;
 S LKMCARD=""
 I $G(LKMER)'=0 D  Q LKMER
 .D SET^WLMPARAM("LKMCARD","")
 .D SET^WLMPARAM("LKMNAME","")
 .S:$P(LKMER,"\")'="ERR" LKMER="ERR\"_LKMER
 ;
 ;;S ^AA("WLMCARD","CODE")=CODE
 S LKMCARD=CODE
 D SET^WLMPARAM("LKMCARD",LKMCARD)
 ;
 I $$^WLMPARAM("ORD") D
 .D SET^WLMPARAM("PROC","SetLk2Ord()")
 Q 1
 ;
 ;
SBMID(STAM) ;
 N LKMCARD,LKMNAME,LKMNKD0
 S LKMCARD=$$^WLMPARAM("LKMCARD")
 S LKMNAME=$$VLTMP^WLKM("LKMNAME")
 S LKMNKD=$$VLTMP^WLKM("LKMNKD")
 ;
 I $$CLOSED^WLMSHOW(LKMCARD) Q "CUSTCLOSED"
 ;
 I $$^WLMPARAM("ORD") D
 .N HZM S HZM=$$GETP^%W1PRM("HZM")
 .D SETORD
 ;
 K @$$TMP^WLKM; -- 22/9/25
 Q 1
 ;
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMCDATA
WLMCDATA(GLTO) ; <![DATA --> @GLTO [ 11.11.21 17:33 ] [ 15.07.15 11:55 ] [ 08.07.15 09:33 ] 
 N (JB,%ARG,%REM,GLTO)
 N GL
 D GL^WLMCON,^%L1TS K @GLTO
 N A,PR,I,ST S PR=0,I=0
 ;
 N N S N=""  F  S N=$O(@GL@(N)) Q:N=""  D
 .S A=$G(@GL@(N)) Q:A=""
 .I A[("<![CDATA") S PR=1 Q
 .I A[("]]>") S PR=0 Q
 .Q:'PR
 .S ST=$$INVH^%L1FRM($$SPA^%L1FRM($TR(A,TSS,TS0)))
 .I $L(ST)>39 D DELG(ST,39) Q
 .S ST=$$^WLFMT(ST)
 .S I=I+1,@GLTO@(I)=ST
 Q
 ;
 ;
DELG(ST,LEN)  ;
 N %CHAST
 D DLG^%L1FRM(ST,LEN)
 N K F K=1:1 Q:'$D(%CHAST(1,K))  D
 .S ST=%CHAST(1,K)
 .S ST=$$^WLFMT(ST)
 .S I=I+1,@GLTO@(I)=ST
 Q
 ;
 
 

WLMCON
WLMCON(FUNC,POST) ; [ 12.08.25 09:06 ] [ 29.06.21 08:23 ] [ 07.02.18 14:32 ] 
 N HEADER,HEADER1,URL,CMD,PROT,COUNTER
 S LKMER=0,LKMER1=""
 S HEADER="""Content-Type:text/xml"""
 S HEADER1="""SOAPAction:https://api.shellyonline.net/API/Alpos.asmx/"_FUNC_""""
 ;;S HEADER1="""SOAPAction:http://testapi.shellyonline.net/API/DemoPos.asmx/"_FUNC_""""
 ;
 S LKMURL=$$TMP_"bzlurl"_+$$^W4MYDVN
 O LKMURL:(NEWVERSION:REWIND)
 U LKMURL W "url="_URL C LKMURL
 ;
 S LKMTMP=$$TMP_"bztmp"_+$$^W4MYDVN
 O LKMTMP:(NEWVERSION:REWIND:GROUP="rw")
 U LKMTMP W $C(239,187,191) C LKMTMP
 ;
 S FLOUT=$$FLOUT^WLMZPRM
 C FLOUT:(DELETE) ; *** LEV 26/12
 ;
 S CMD0="/usr/bin/iconv -c -f cp862 -t utf-8 "_POST_" >> "_LKMTMP_";/bin/cp "_LKMTMP_" "_POST
 D CMD(CMD0,"CMD0")
 ;
 ;;ZSY "/bin/cp "_LKMTMP_" "_POST
 ;
 S CMD="/usr/bin/curl -m 30 -N -s -H "_HEADER_" -H "_HEADER1_" -d@"_POST_" -o "_FLOUT_" -K "_LKMURL
 S CMD1="export TERM=linux;/usr/bin/xmllint --format --encode cp862 "_FLOUT_" -o "_FLOUT
 ;
 S MYDVN=+$$^W4MYDVN,H=+$H
 ;
 D PROT("FLOUT",FLOUT)
 ;
 D CMD(CMD,"CMD") ;; --- SUCCESS OF THIS COMMAND SHOUD BE CHECKED BEFORE CMD1
 I $ZSY S LKMER=-$ZSY,LKMER1="zxeywza d`iby" G ER
 ;
 I $$^%L1ZOS(10,FLOUT)<0 S LKMER=-.2,LKMER1="dlawzd `l daeyz" G ER
 ;
 D CMD(CMD1,"CMD1")
 ;
 I $ZSY S LKMER=-$ZSY,LKMER1=LKMER_" d`iby" G ER
 ;
 D GL
 K @GL S I=0
 ;
 C FLOUT
 O FLOUT:(REWIND:READONLY)
 F  D  Q:$ZEOF
 .U FLOUT R A Q:$ZEOF
 .S I=I+1,@GL@(I)=$E(A,1,450)
 ;
 D PROT("WLMGT",GL,1)
 ;
END ;
 I $L($G(FLOUT)) C FLOUT:(DELETE)
 Q
 ;
 ;
PROT(NM,VL,M,ZSY) ;
 ;;Q:'$G(WLMDEB)
 N COUNTER
 S COUNTER=$O(@($$WLMGPCON_",9999999)"),-1)+1
 S PROT=$$WLMGPCON_","_COUNTER_")"
 ;;U 0 W "NM="_NM_"  VL="_VL_"  M="_$G(M),!
 I '$G(M) S @PROT@(FUNC,NM)=VL
 I $G(M) M @PROT@(FUNC,NM)=@VL
 I $L($G(ZSY)) S @PROT@(FUNC,NM,"ZSY")=ZSY
 Q
 ;
PROTGT ;
 Q:'$G(MULADEB)
 M @PROT@("GT")=@GL
 Q
 ;
GL ;
 S GL=$$^W4MAIN("WLMGT")
 Q
 ;
TMP(STAM) ;
 Q $$^WLMTMP
 ;
ER ;
 D PROT("LKMER",$G(LKMER))
 D PROT("LKMER1",$G(LKMER1))
 G END
 ;
WLMGP(STAM) ;
 Q $$^W4MAIN("WLMGP")
 ;
WLMGPCON(STAM) ;
 N WLMGP S WLMGP=$$WLMGP
 S WLMGP=$E(WLMGP,1,$L(WLMGP)-1)
 Q WLMGP_","_+$H_",""CON"""
 ;
CMD(CMD,IND) ; 
 ZSY CMD 
 D PROT(IND,CMD,"",$ZSY) 
 Q
 
 
 
 
 
 
 

WLMERR
WLMERR(ERR) ; [ 12.08.25 11:39 ] [ 29.06.21 09:05 ] [ 22.06.15 15:04 ] 
 N (JB,%ARG,%REM,ERR)
 ;
 I $$LKMLOCAL^W4PRM D  G ER
 .S ER=$P($G(ERR),"\")
 .S NMER1=$P($G(ERR),"\",2)
 ;
 D ^%L1TS
 S MYDVN=$$^W4MYDVN,UR=1
 D GL^WLMCON
 N A D INIT
 S END=0
 ;
 N N S N=""  F  S N=$O(@GL@(N)) Q:N=""  D  Q:END
 .S A=$G(@GL@(N)) Q:A=""
 .I A[("<UID>") S ER=$$^WLMGETVL("UID")
 .I A[("<Description>") S NMER=$$FUNC^%UCASE($$^WLMGETVL("Description"))
 .I A[("<Name>") S NMER1=$$^WLMGETVL("Name")
 .I A[("<HandledError>") D INIT
 .I A[("</HandledError>") S END=1
 ;
 I ER S NMER1=$TR(NMER1,TSS,TS0)
 I ER,NMER1="" S NMER1=NMER
 ;
ER ;
 I ER Q ER_"\"_NMER1
 Q "OK"
 ;
 ;
INIT ;
 S ER=""
 S NMER=""
 S NMER1=""
 Q
 ;
VWERR(ERR) ;
 Q "ERR\"_ERR
 
 
 

WLMFUNC
WLMFUNC ; [ 28.08.25 13:14 ] [ 21.08.25 10:10 ] [ 18.08.25 10:38 ] 
 ;-----------LKMPOP funcs-------------------
 ;
SRCHCUSTOM(LKMNAME,LKMTZ,LKMTEL,LKMEMAIL)
 N (JB,%ARG,%REM,LKMNAME,LKMTZ,LKMTEL,LKMEMAIL,LKMER,LKMER1)
 ;
 I $$LKMLOCAL^W4PRM D  Q
 .
 ;
 I '$D(TSS) D ^%L1TS
 S LKMNAME=$TR(LKMNAME,TS0,TSS)
 S LKMTEL=$TR(LKMTEL,"-","")
 ;
 S FUNC="SearchCustomer"
 ;
 D HEADER(FUNC) ; --> O FL
 ;
 W "<xSearch>",!
 W "    <SearchShelly Name="""_LKMNAME_""""
 W "    Mobile="""_LKMTEL_""""
 W "    Email="""_$G(LKMEMAIL)_""""
 W "    Zehut="""_LKMTZ_""" />",!
 W "</xSearch>",!
 D FOOTER(FUNC)
 D ^WLMCON(FUNC,FL)
 Q
 ;
 ;
ACTCARD(CARD,LKHID)
 N (JB,%ARG,CARD,LKHID,LKMLER,LKMER1)
 S FUNC="AttachCard"
 D HEADER(FUNC)
 W "    <CardNumber>"_CARD_"</CardNumber>",!
 W "    <CustomerId>"_LKHID_"</CustomerId>",!
 D FOOTER(FUNC)
 D ^WLMCON(FUNC,FL)
 Q
 ;
 ;
CANCARD(CARD)
 N (JB,%ARG,CARD,LKMER,LKMER1)
 S FUNC="CancelCard"
 D HEADER(FUNC)
 W "    <CardNumber>"_CARD_"</CardNumber>",!
 D FOOTER(FUNC)
 D ^WLMCON(FUNC,FL)
 Q
 ;
 ;
CHLKHCARD(CARD,LKHID)
 N (JB,%ARG,CARD,LKHID,LKMER,LKMER1)
 S FUNC="ChangeCustomerCard"
 D HEADER(FUNC)
 W "    <CustomerId>"_LKHID_"</CustomerId>",!
 W "    <NewCardNumber>"_CARD_"</NewCardNumber>",!
 D FOOTER(FUNC)
 D ^WLMCON(FUNC,FL)
 Q
 ;
 ;
LKHCR(CARD,LKHID)
 N (JB,%ARG,CARD,LKHID,LKMER,LKMER1)
 S FUNC="CreateNewCustomerAttachCard"
 D HEADER(FUNC)
 W "    <CardNumber>"_CARD_"</CardNumber>",!
 W "    <xCustomer>",!
 D LKHDET(CRD,LKHID)
 W "    </xCustomer>",!
 D FOOTER(FUNC)
 D ^WLMCON(FUNC,FL)
 Q
 ;
 ;
LKHUPD(CARD,LKHID,CUSTID)
 N (JB,%ARG,CARD,LKHID,CUSTID,LKMER,LKMER1)
 S FUNC="UpdateCustomer"
 D HEADER(FUNC)
 W "    <xCustomer>",!
 D LKHDET(CARD,LKHID,$G(CUSTID))
 W "    </xCustomer>",!
 D FOOTER(FUNC)
 D ^WLMCON(FUNC,FL)
 Q
 ;
 ;
LKHSTAT(CARD)
 N (JB,%ARG,CARD,LKMER,LKMER1)
 ;
 S GL=$$GL^WLKM
 ;
 I $$LKMLOCAL^W4PRM D  Q
 .S LKMNAME=$$LKH^W4L(CARD,GL)
 .I LKMNAME="" S LKMER="CLUBCUSTNOTDEFINED",LKMER1="" Q
 .N GL S GL=$$GL^WLKM
 .N I F I="LKH","TZ","TEL","EMAIL","PELE","IR","KTV","BAIT","DIRA","KOMA","CNISA","JOMH","LKMNKD" D
 ..N CMD S CMD="S "_I_"=$$"_I_"^W4L(CARD,GL)"
 ..X CMD
 .
 .S LKMNAME=LKH
 .S LKMCARD=CARD
 .S KTOV=KTV
 .D CRTMPDET^WLMSTAT("CUSTDET")
 ;
 S FUNC="RequestStatus"
 D HEADER(FUNC)
 W "    <CardNumber>"_CARD_"</CardNumber>",!
 D FOOTER(FUNC)
 D ^WLMCON(FUNC,FL)
 Q
 ;
 ;
SSHUL(HZM) ;
 Q $$SHUL^W4HZMST(HZM)+$$SHULA^W4HZMST(HZM)
 ;
TSHL(HZM)
 Q $$TSHL^W4HZMST(HZM)
 ;
ITRA(HZM) Q $$TSHL(HZM)-$$SSHUL(HZM)
 ;
NOMOD(A) ;
 I A["\@@" Q 1
 Q 0
 ;
FMTDAT(DAT) ;
 Q $TR($P(DAT,".",1,2)_".20"_$P(DAT,".",3),".","/")
 ;
DAT(VL) ;
 Q $$BSL^WLMDAT(VL)
 ;
 ;
HEADER(FUNC);
 S FL=$$FLIN^WLMZPRM
 C FL:DELETE
 O FL:(WRITE:NEWVERSION:REWIND:GROUP="rw")
 U FL
 W "<?xml version=""1.0"" encoding=""utf-8""?>",!
 W "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
 W " xmlns:xsd=""http://www.w3.org/2001/XMLSchema"""
 W " xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">",!
 W " <soap:Body>",!
 W "     <"_FUNC_" xmlns=""https://api.shellyonline.net/API/Alpos.asmx"">",!
 W "         <User>"_$$UID^WLMZPRM_"</User>",!
 W "         <Password>"_$$PWD^WLMZPRM_"</Password>",!
 Q
 ;
FOOTER(FUNC);
 W "  </"_FUNC_">",!
 W " </soap:Body>",!
 W "</soap:Envelope>",!
 C FL
 Q
 ;
LKHDET(CARD,LKH,CUSTID)
 W "<Customer "
 W " CustomerId="""_$G(CUSTID)_""" "
 W " Zehut="""_$$TZ^W4L(LKH)_""" "
 N LKNM,FNAME,LNAME
 S LKNM=$$SPA^%L1FRM($$LKH^W4L(LKH))
 ;
 S FNAME=$P(LKNM," ",$L(LKNM," "))
 S LNAME=$P(LKNM," ",1,$L(LKNM," ")-1)
 W " Name="""_$$HB(NAME)_""" "
 I $$JOMH^W4L(LKH) W " BirthDate="""_$$DAT($$JOMH^W4L(LKH))_""" "
 ;
 W " Street="""_$$HB($$KTV^W4L(LKH))_""" "
 W " Mobile="""_$TR($$PELE^W4L(LKH),"-","")_""" "
 W " Email="""_$$FUNC^%UCASE($$EMAIL^W4L(LKH))_""" "
 ;; " JoinDate="
 W " CardNumber="""_CARD_""" "
 W "  />"
 ;
 Q  ;
 ;
 ;
HB(TXT) ;
 I '$D(TSS) D ^%L1TS
 S TXT=$TR(TXT,"""&?='","")
 Q $TR($$INVH^%L1FRM(TXT),TS0,TSS)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMGET
WLMGET(LKMCARD,TMPDET,WLMGET,LKMER) ; [ 17.06.26 11:01 ] [ 28.09.25 06:18 ] [ 23.09.25 03:57 ] 
 N (JB,%ARG,LKMCARD,TMPDET,WLMGET,LKMER)
 N A,ST S LKMER=""
 K WLMGET
 S TMP=$$TMP^WLKM K @TMP
 S GL=$$GL^WLKM
 S CODE=LKMCARD
 ;
 I $$LKMLOCAL^W4PRM D  Q
 .S LKMER=0
 .S LKMNAME=$$LKH^W4L(CODE,GL)
 .I LKMNAME="" S LKMER="CLUBCUSTNOTDEFINED",LKMER1="" Q
 .N GL S GL=$$GL^WLKM
 .N I F I="LKH","TZ","TEL","EMAIL","PELE","IR","KTV","BAIT","DIRA","KOMA","CNISA","JOMH","LKMNKD" D
 ..N CMD S CMD="S WLMGET("""_I_""")=$$"_I_"^W4L(CODE,GL)"
 ..X CMD
 .
 .S WLMGET("LKMNAME")=WLMGET("LKH")
 .S N="" F  S N=$O(WLMGET(N)) Q:N=""  S @N=$G(WLMGET(N))
 .I $G(TMPDET) D CRTMPDET^WLMSTAT("CUSTDET")
 ;
 ;------------------------------------------------FROM SERVER
 ;
 D ^W4SNDSRV("GETLKH","w3anslkm","CODE="_CODE,.STANS,.ER)
 ;
 ;;S ^AA("WLMGET","STANS0")=STANS
 ;;S ^AA("WLMGET","ER")=ER
 ;
 I ER'=0 D
 .W "<script>",!
 . W "MsgA('CONNECTERROR<>"_ER_"')",! 
 .W "</script>",!
 .S LKMER=ER
 ;
 I STANS?1U.U D  Q
 .W "<script>",!
 . W "MsgA('"_STANS_"')" 
 .W "</script>",!
 .S LKMER=STANS
 ;
 S LKMER=0
 S TAG="CustomData"
 S STANS=$P(STANS,"<"_TAG_">",2)
 S STANS=$P(STANS,"</"_TAG_">")
 ;
 ;;S ^AA("WLMGET","STANS")=STANS
 D ALL^WLMGETVL(STANS)
 ;
 ;;I $D(WLMGET)>9 D
 .M ^AA("WLMGET","WLMGET")=WLMGET
 ;
 I $G(WLMGET("LKMNAME"))="" S LKMER="CLUBCUSTNOTDEFINED",LKMER1="" Q
 ;
 S N="" F  S N=$O(WLMGET(N)) Q:N=""  I N?1U.E S @N=$G(WLMGET(N))
 I $G(TMPDET) D CRTMPDET^WLMSTAT("CUSTDET")
 Q
 ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMGETVL
WLMGETVL(RKV,STANS) ; [ 17.06.26 11:01 ] [ 28.09.25 06:18 ] [ 24.09.25 06:12 ] 
 N (JB,%ARG,%REM,RKV,STANS)
 I $G(STANS)="" Q ""
 S DLM=$$DLM,OTB=""
 S RKV=$$SPA^%L1FRM(RKV)
 S OTB="",OK=0
 ;
 F I=1:1:$L(STANS,DLM) D  Q:OK
 .N COUPL,VL
 .S COUPL=$P(STANS,DLM,I)
 .S NM=$$SPA^%L1FRM($P(COUPLE,"="))
 .S VL=$P(COUPL,"=",2)
 .S VL=$$CLR(VL)
 .I NM=RKV S OTB=$$SPA^%L1FRM(VL),OK=1
 Q OTB
 ;
CLR(VL) ;
 S VL=$$SPA^%L1FRM(VL)
 I VL[$C(9) S VL=$P(VL,$C(9))
 I VL[$C(10) S VL=$P(VL,$C(10))
 I VL[$C(13) S VL=$P(VL,$C(13))
 S VL=$$RPL^%L1FRM(VL,"%20"," ")
 Q VL
 ;
 ;
ALL(%STANS) ;
 N (%STANS,WLMGET)
 N %DLM,%I
 S %DLM=$$DLM
 ;;S ^AA("WLMGETVL","ALL","STANS")=$G(%STANS)
 K WLMGET
 ;
 F %I=1:1:$L(%STANS,%DLM) D
 .N %COUPL,%VL
 .S %COUPL=$P(%STANS,%DLM,%I)
 .S %NM=$$SPA^%L1FRM($P(%COUPL,"=")) Q:%NM'?1U.E
 .S %VL=$P(%COUPL,"=",2)
 .S %VL=$$CLR(%VL)
 .S WLMGET(%NM)=%VL
 ;
 Q
 ;
DLM()
 Q "<>"
 
 
 
 
 
 
 
 

WLMINIT
WLMINIT ; [ 14.09.25 10:18 ] [ 21.08.25 10:12 ] [ 29.06.21 09:01 ] 
 D KILL^WLMPARAM
 K @$$TMP^WLKM
 Q
 
 
 
 

WLMLKH
WLMLKH(LKMCARD) ; [ 17.06.26 11:01 ] [ 29.09.25 01:02 ] [ 28.09.25 06:21 ] 
 N (JB,%ARG,%REM,LKMCARD)
 Q LKMCARD
 ;
 ;
GET ;
 N %RKV,%VL,%REG,LK,N
 S LKMCARD=$$^WLMPARAM("LKMCARD")
 S LK=$$WLMLKH(LKMCARD)
 D ^WLMGET(LK,1,.WLMGET,.LKMER)
 S N="" F  S N=$O(WLMGET(N)) Q:N=""  S @N=$G(WLMGET(N))
 Q  ;
 ;
 ;
SAVE(PRM) ;
 N (JB,%ARG,PRM)
 ;;S ^AA("WLMLKH","PRM")=PRM
 N LKH
 S LKMCARD=$$^WLMPARAM("LKMCARD")
 S LKH=$$WLMLKH(LKMCARD)
 ;
 F I=1:1:$L(PRM,";") D
 .S CPL=$P(PRM,";",I)
 .S RKV=$P(CPL,"=")
 .S VL=$P(CPL,"=",2)
 .S VL=$$CNWEB^%L1FRM(VL)
 .I RKV="EMAIL" S VL=$$FUNC^%UCASE(VL)
 .S VL=$$INVH^%L1FRM(VL)
 .I RKV?1U.E S @RKV=VL D
 ..I RKV="LKMNAME" D SET^WLMPARAM("LKMNAME",VL)
 ;
 N LKH S LKH=$$^WLMLKH(LKMCARD) Q:'LKH
 N LKH1,TO
 S LKH1=LKMNAME
 S TO=$S($$LKMLOCAL^W4PRM:"LKH=",1:"LKMNAME=")_LKH1_"<>TEL="_$G(TEL)_"<>PELE="_$G(PELE)_"<>"
 S TO=TO_"EMAIL="_$$FUNC^%UCASE(EMAIL)_"<>"
 S TO=TO_"TZ="_TZ_"<>"
 S TO=TO_"IR="_IR_"<>"
 S TO=TO_"KTV="_KTV_"<>"
 S TO=TO_"BAIT="_BAIT_"<>"
 S TO=TO_"DIRA="_DIRA_"<>"
 S TO=TO_"CNISA="_CNISA_"<>"
 S TO=TO_"KOMA="_KOMA_"<>"
 S TO=TO_"JOMH="_JOMH
 ;
 I $$LKMLOCAL^W4PRM D PUT2^W4L(LKH,TO,$$GL^WLKM) G END
 ;
 N (JB,%ARG,LKMCARD,TO)
 N FUNC,RESP,MSD
 I LKMCARD[";" S LKMCARD=$P(LKMCARD,";")
 S FDB="CODE="_LKMCARD_"<>"_TO
 ;
 K WLMGET
 D ^W4SNDSRV("SETLKH","w3anslkm",FDB,.STANS,.ER)
 ;
 S STANS=$P(STANS,"<CustomData>",2)
 S STANS=$P(STANS,"</CustomData>")
 ;
 D ALL^WLMGETVL(STANS)
 S N="" F  S N=$O(WLMGET(N)) Q:N=""  S @N=$G(WLMGET(N))
 ;
END S WLMLKH="UPD"
 D CRTMPDET^WLMSTAT("CUSTDET")
 Q 1
 ;
 ;
MSDR() ;
 N MSDR S MSDR=$G(@$$^W4PRM@("WEB","MSDR")) 
 I MSDR="" S MSDR=$G(@$$^W4PRM@("IT4WEB","MSDR"))
 Q MSDR
 ;
MSD() ;
 N MSD S MSD=$G(@$$^W4PRM@("WEB","MSD")) 
 I MSD="" S MSD=$G(@$$^W4PRM@("IT4WEB","MSD"))
 Q MSD
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMPARAM
WLMPARAM(RKV)  ; [ 24.08.25 18:51 ] [ 18.08.25 11:46 ] [ 13.08.25 11:55 ] 
 I $G(RKV)="" Q $G(@$$^W4MAIN("WLMPARAM")@("FUNC"))
 Q $P($G(@$$^W4MAIN("WLMPARAM")@(RKV)),";")
 ;
SET(RKV,VL) ;
 I $G(RKV)="ORD",$G(VL)="" S @$$^W4MAIN("WLMPARAM")@("ORD")=1
 I '$D(VL) S @$$^W4MAIN("WLMPARAM")@("FUNC")=RKV Q
 S @$$^W4MAIN("WLMPARAM")@(RKV)=$G(VL)
 Q
 ;
KILL ;
 K @$$^W4MAIN("WLMPARAM")
 Q
 ;
FULL(RKV) 
 I $G(RKV)="" Q ""
 Q $G(@$$^W4MAIN("WLMPARAM")@(RKV))
 
 
 
 
 
 

WLMREP
WLMREP ; [ 10.09.25 06:47 ] [ 09.09.25 16:56 ] [ 08.09.25 17:43 ] 
 ;--- INPUT - DAT1,DAT2
 ;
 ;           ASONLY = 1 (KOLEL HAZMANOT , 2 -HESB & LAK BILVAD )
 ;           PRATI - ONE CUSTOMER ONLY
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S SH=0,TMPS111=$$^W4MAIN("TMPS111") K @TMPS111
 S DL=8
 D DR
 ;
 D ^%W1ARG
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W " <td>"
    D ROUNDBUT^%W1JS("CSRPrint",$$^%W1DICT("CSRPRINT"),"CSRPrint()","color:green",",,,180")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 D ^%W1PCVRM
 ;
 I '$D(@VRM) D
 .D FRM(JB,MEDAT,ADDAT,MELKH,ADLKH) ;
 ;
 D PC
 Q
 ;
 ;
FRM(JB,MEDAT,ADDAT,MELKH,ADLKH) ;
 N (JB,%ARG,%REM,MEDAT,ADDAT,MELKH,ADLKH)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D DR
 D PRM
 K @VRM
 ;
 D GLNKD
 S GL=$$GL
 ;
 S SHS=0,FIN=0
 S SSUMH=0,SSUMZ=0,SUMH=0,SUMZ=0 K STRINGP
 ;
 K @TEMPL
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N N1 S N1=$TR(N,"-","")
 .N MESTRING1 S MESTRING1=$TR(MESTRING,"-","")
 .N ADSTRING1 S ADSTRING1=$TR(ADSTRING,"-","")
 .I MESTRING?1U.E,$E(N1,1,$L(MESTRING1))'=MESTRING1 Q
 .I MESTRING1'?1U.E,N1<MESTRING1 Q
 .I ADSTRING1'?1U.E,N1>ADSTRING1 Q
 .S @TEMPL@(N)=N
 ;
 S NNN="" F  S NNN=$O(@TEMPL@(NNN)) Q:NNN=""  I NNN S STRING=NNN D
 .S SUMH=0,SUMZ=0,SHZ=0 K M
 .S FIRST=1
 .
 .S ITRA=$$ITRA(STRING,DT1-1)  ; -- HISHUV ITRA KODEMET
 .
 .F DT=DT1:1:DT2 D
 ..S HZ="" F  S HZ=$O(@GLNKD@(DT,HZ)) Q:HZ=""  D
 ...K M
 ...S STR=$G(^(HZ))
 ...I FIRST D
 ....S FIRST=0
 ....S M("ZHUT")="",M("HOVA")="",M("NOMTD")=""
 ....S M("ITRA")=$J(ITRA,DR,DR)
 ....D SETST
 ...
 ...S M("NOMTD")=HZ
 ...S M("HOVA")=$P(STR,"*",1)
 ...S M("ZHUT")=$P(STR,"*",2)
 ...S M("ITRA")=ITRA+M("HOVA")-M("ZHUT"),ITRA=M("ITRA")
 ...D SETST
 ;
 D PUT^%W1PRM("WLMREP",1)
 Q
 ;
 ;
PC ;
 D PRM
 ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=33,SHLN=0,SSHLN=0
 S (SSHOV,SSZHUT,SLITRA,LITRA)=0
 ;
 S LKH="" F IL=1:1 S LKH=$O(@VRM@(LKH)) Q:LKH=""  D
 .S (SHOV,SZHUT)=0
 .I IL=1 D KOT(LKH) S SHLN=SHLN+3
 .I IL>1 D PAGEBREAK
 .S DT="" F  S DT=$O(@VRM@(LKH,DT)) Q:DT=""  D
 ..S NOMTD="" F  S NOMTD=$O(@VRM@(LKH,DT,NOMTD)) Q:NOMTD=""  D
 ...N A S A=$G(^(NOMTD)) Q:A=""
 ...S SHLN=SHLN+1,SSHLN=SSHLN+1
 ...I SHLN>RSIZE D PAGEBREAK
 ...W "<tr onClick=""OnClickTr('"_NOMTD_"')"""
 ...W " style=""cursor:pointer"
 ...W """"
 ...W " >"
 ...W " <td align=""center"">"_$ZD(DT,"DD.MM.YY")_"</td>"
 ...W "<td "
 ...I NOMTD=$$GET^%W1PRM("DLMCUR") W " style=""border:solid 2px brown"""
 ...W " >&nbsp;"_NOMTD_"</td>"
 ...S STC=$ZD(DT,"DD.MM.YY")
 ...S STC=$J(NOMTD,DL)_" "_STC
 ...D RKV($P(A,"\",1),"darkblue") S SHOV=SHOV+$P(A,"\",1)
 ...S STC=$J($P(A,"\",1),7)_" "_STC
 ...D RKV($P(A,"\",2),"green") S SZHUT=SZHUT+$P(A,"\",2)
 ...S STC=$J($P(A,"\",2),7)_" "_STC
 ...D RKV($P(A,"\",3),"black") S LITRA=$P(A,"\",3)
 ...S STC=$J($P(A,"\",3),7)_" "_STC D S1 S STC="" D S1
 ...W "</tr>",!
 .;---------------------- ITOGO -------
 .D KAV
 .W "<tr style=""background-color:yellow;font-weight:bold"">"
 .W " <td>&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("TOTAL")_"</td>"
 .S STC=$$TV^%W1DICT($$^%W1LNG,"TOTAL") D S1
 .S SSHOV=SSHOV+SHOV
 .S SSZHUT=SSZHUT+SZHUT
 .S SLITRA=SLITRA+LITRA
 .
 .D RKV(SHOV,"darkblue",1)
 .S STC=$J("",16)
 .S STC=$J(SHOV,7)_" "_STC
 .D RKV(SZHUT,"green",1)
 .S STC=$J(SZHUT,7)_" "_STC
 .D RKV(LITRA,"black",1)
 .S STC=$J(LITRA,7)_" "_STC D S1
 .D KAV
 .W "</tr>",!
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')",!
 .W " Back()",!
 .W "</script>",!
 ;
  W "<tr style=""font-weight:bold;background-color:yellow"">"
  S STC=$$TV^%W1DICT("H","TOTALALLCUSTOMERS") D S1
  W " <td>&nbsp;</td>"
  W " <td>"_$$^%W1DICT("TOTALALLCUSTOMERS")_"</td>"
  D RKV(SSHOV,"darkblue",1)
  S STC=$J("",16)
  S STC=$J(SSHOV,7,2)_" "_STC
  D RKV(SSZHUT,"green",1)
  S STC=$J(SSZHUT,7,2)_" "_STC
  D RKV(SLITRA,"black",1)
  S STC=$J(SLITRA,7,2)_" "_STC D S1
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 K @TEMPL
 K @VRM
 Q
 ;
TEMPL S TEMPL=$$^W4MAIN("TEMPL")
 Q
 ;
SETST ;
 S @VRM@(STRING,DT,+$G(M("NOMTD")))=$G(M("HOVA"))_"\"_$G(M("ZHUT"))_"\"_$G(M("ITRA"))
 Q
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 S STC=$C(10,10,10,10) D S1
 D KOT(LKH)
 S SHLN=0
 Q
 ;
KOT(LKH) ;
 I $G(%ARG("MELKH")),$G(%ARG("MELKH"))=$G(%ARG("ADLKH")) D DIVEX(LKH)
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;"_$$FONTFM^W3CSS_""">"_LKH_" "_$$H2U^%L1FRM($$LKH^W4L(LKH,$$GL))_"</span><br />",!
 S STC=$$LKH^W4L(LKH,$$GL)_" "_LKH D S1C
 ;
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""" "
 W " width=""60%"">"
 D MEADL
 ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MEDATE")_"</td>",!
 S STC=$$TV^%W1DICT("H","MEDATE")
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("MEDAT"))_"</td>",!
 S STC=$G(%ARG("MEDAT"))_" "_STC
 W "  <td >"_$$^%W1DICT("ADDATE")_"</td>",!
 S STC=$$TV^%W1DICT("H","ADDATE")_" "_STC
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("ADDAT"))_"</td>",!
 S STC=$G(%ARG("ADDAT"))_" "_STC D S1C
 W " </tr>",!
 W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTB_"%"">"
 W " <tr style=""font-size:"_$$^W3FSZ(11)_""">"
 W "  <td>"_$$H2U^%L1FRM($$KTVM^W4L(LKH,$$GL))_"</td>",!
 S STC=$$KTVM^W4L(LKH,$$GL) D S1C
 W "  <td>"_$$^%W1DICT("TEL")_" : "_$$TELB^W4L(LKH,$$GL)_"</td>",!
 S STC=$$TELB^W4L(LKH,$$GL)_" : "_$$TV^%W1DICT("H","TEL") D S1C
 W "  <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("PAGE")_" : "_PG_"</td>",!
 W " </tr>",!
 ;
 W "</table>",!
 W "<br />",!
 ;
 W "<table class=""rep"" dir="""_$$^%W1DIR_""" border=""0"" "
  W " width="""_$$WDTB_"%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 D KAV
 W "  <th>"_$$^%W1DICT("DATE")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","DATE"),8)
 W "  <th>"_$$^%W1DICT("ORDER")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","ORDER"),5)_" : "_STC
 W "  <th>"_$$^%W1DICT("NEKUDOT")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","NEKUDOT"),5)_" : "_STC
 W "  <th>"_$$^%W1DICT("ZHUT")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","ZHUT"),5)_" : "_STC
 W "  <th>"_$$^%W1DICT("ITRA")_"</th>"
 S STC=$$HBR^%L1FRM($$TV^%W1DICT("H","ITRA"),5)_" : "_STC D S1
 W " </tr>",!
 D KAV
 Q
 ;
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I 'RKV S RKV=""
 ;;I RKV S RKV=$J(RKV,DR,DR)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
MEADL ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MELKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MELKH_"</td>",!
 W "  <td >"_$$^%W1DICT("ADLKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADLKH_"</td>",!
 W " </tr>",!
 Q
 ;
PRM ;
 D ^%W1PCVRM
 D TEMPL
 S PRTN=$$^%W1JB
 S DAT1=$$^%L1DC(MEDAT,2)
 S DAT2=$$^%L1DC(ADDAT,2)
 S MESTRING=$TR(MELKH,"-","")
 I MESTRING,MESTRING<1000 S MESTRING=1000
 S ADSTRING=$TR(ADLKH,"-","")
 S:'ADSTRING (ADSTRING,ADLKH)=99999999999
 S DT1=$$^%L1DC(DAT1,4)
 S DT2=$$^%L1DC(DAT2,4)
 Q
 ;
S1 ; 
 Q:'$$CSR
 S SH=SH+1
 S @TMPS111@(SH)=$J(STC,$$WD)
 Q 
 ;
S1C ;
 Q:'$$CSR
 S STC=$$CENTR^%L1FRM(STC,$$WD)
 D S1
 Q
 ;
CSR(STAM) ; 
 Q 1
 Q +$G(%ARG("CSR"))
 ;
KAV ;
 Q:'$$CSR
 N STC S STC=$TR($J("",$$WD)," ","-")
 D S1
 Q
 ;
WD(STAM) ; 
 Q 40 
 ;
WDTB(STAM) ; 
 Q 60 
 ;
PCCSR ; 
 N (JB,%ARG,%REM)
 D ^W4MDPPC Q:'$L($G(PRINT))
 S W4DELAY=""
 D ST^W4HZTH
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q 
 ;
DR S DR=1 
 Q 
 ;
 ;
DIVEX(LKH) ; 
 N I,HD,DAT,SUGTD,NOMTD,NP,ST,STC,%W1PCEX
 N TMP S TMP=$$^%W1GLPRM K @TMP
 ;
 S HD="dxzi*zekf*daeg*dcerz mekq*dcerz 'qn*jnqn beq*jix`z"
 S HD=$$INVD^%L1FRM(HD,"*","*")
 S @TMP@("GLOUT",1)=HD
 S I=1
 ;
 S DAT="" F  S DAT=$O(@VRM@(LKH,DAT)) Q:DAT=""  D
 .S NOMTD="" F  S NOMTD=$O(@VRM@(LKH,DAT,SUGTD,NOMTD)) Q:NOMTD=""  D
 ..S NP="" F  S NP=$O(@VRM@(LKH,DAT,NOMTD,NP)) Q:NP=""  D
 ...N A S A=$G(^(NP)) Q:A=""
 ...S ST=""
 ...S STC=$$^%L1DC(DAT,1) S ST=STC_"*"
 ...S STC=$J(NOMTD,DL) S ST=ST_STC_"*"
 ...S STC=$J($P(A,"\"),DL,2) S ST=ST_STC_"*"
 ...S STC=$J($P(A,"\",2),DL,2) S ST=ST_STC_"*"
 ...S STC=$J($P(A,"\",3),DL,2) S ST=ST_STC_"*"
 ...S STC=$J($P(A,"\",4),DL,2) S ST=ST_STC
 ...S I=I+1,@TMP@("GLOUT",I)=ST
 
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 ;
 D DIVEXC^%W1PC1("W4DLKP","%W1PCEX")
 Q  
 ;
 ; 
ITRA(LK,DT0) ; 
 N GLNKD,N,ITRA,ST,HZ D GLNKD
 S ITRA=0
 N D S D="" F  S D=$O(@GLNKD@(D)) Q:D=""  Q:D>DT0  D
 .S HZ="" F  S HZ=$O(@GLNKD@(D,HZ)) Q:HZ=""  I HZ D
 ..S ST=$G(^(HZ))
 ..S ITRA=ITRA+$P(ST,"*")-$P(ST,"*",2)
 Q ITRA 
 ;
GL() 
 Q $$GL^WLKM 
 ;
GLNKD S GLNKD=$$GL^WLKM_"(STRING,""LKMNKD"")"
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMREPNT
WLMREPNT ; [ 28.09.25 11:52 ] [ 25.09.25 08:32 ] [ 24.09.25 17:14 ] 
 ;--- INPUT - DAT1,DAT2
 ;
 ;           ASONLY = 1 (KOLEL HAZMANOT , 2 -HESB & LAK BILVAD )
 ;           PRATI - ONE CUSTOMER ONLY
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S SH=0
 S DL=8
 D DR
 ;
 D ^%W1ARG
 D PRM
 ;
 W "<div id=""divbut"">"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W " <td>"
    D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>"
   W "<td>&nbsp;</td>"
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W " </td>"
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 ;
 I '$D(@VRM) D
 .D FRM(JB,MSDR,MEDAT,ADDAT,MELKH,ADLKH) ;
 ;
 D PC
 Q
 ;
 ;
FRM(JB,MSDR,MEDAT,ADDAT,MELKH,ADLKH) ;
 N (JB,%ARG,%REM,MSDR,MEDAT,ADDAT,MELKH,ADLKH)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D DR
 D PRM
 K @VRM
 ;
 S GL=$$GL
 ;
 S SHS=0,FIN=0
 S SSUMH=0,SSUMZ=0,SUMH=0,SUMZ=0
 ;
 K @TEMPL
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .N N1 S N1=$TR(N,"-","")
 .N MESTRING1 S MESTRING1=$TR(MESTRING,"-","")
 .N ADSTRING1 S ADSTRING1=$TR(ADSTRING,"-","")
 .I MESTRING?1U.E,$E(N1,1,$L(MESTRING1))'=MESTRING1 Q
 .I MESTRING1'?1U.E,N1<MESTRING1 Q
 .I ADSTRING1'?1U.E,N1>ADSTRING1 Q
 .S @TEMPL@(N)=N
 ;
 S NNN="" F  S NNN=$O(@TEMPL@(NNN)) Q:NNN=""  I NNN S STRING=NNN D
 .S SUMH=0,SUMZ=0,SHZ=0 K M
 .S FIRST=1
 .
 .S ITRA=$$ITRA(STRING,DT1-1)  ; -- HISHUV ITRA KODEMET
 .D GLNKD(STRING)
 .F DT=DT1:1:DT2 D
 ..S MSD="" F  S MSD=$O(@GLNKD@(DT,MSD)) Q:MSD=""  D
 ...S HZ="" F  S HZ=$O(@GLNKD@(DT,MSD,HZ)) Q:HZ=""  D
 ....K M
 ....S STR=$G(^(HZ))
 ....I FIRST D
 .....S FIRST=0
 .....S M("ZHUT")="",M("HOVA")="",M("NOMTD")=""
 .....S M("ITRA")=$J(ITRA,DR,DR)
 .....D SETST
 ....;
 ....S M("NOMTD")=HZ
 ....S M("HOVA")=$P(STR,"*",1)
 ....S M("ZHUT")=$P(STR,"*",2)
 ....S M("ITRA")=ITRA+M("HOVA")-M("ZHUT"),ITRA=M("ITRA")
 ....D SETST
 ;
 D PUT^%W1PRM("WLMREPNT",1)
 Q
 ;
 ;
PC ;
 D PRM
 ;
 W "<div align=""center"">",!
 S IL=0,PG=1,RSIZE=33,SHLN=0,SSHLN=0
 S (SSHOV,SSZHUT,SLITRA,LITRA)=0
 ;
 S LKH="" F IL=1:1 S LKH=$O(@VRM@(LKH)) Q:LKH=""  D
 .S (SHOV,SZHUT)=0
 .I IL=1 D KOT(LKH) S SHLN=SHLN+3
 .I IL>1 D PAGEBREAK
 .S DT="" F  S DT=$O(@VRM@(LKH,DT)) Q:DT=""  D
 ..S MSD="" F  S MSD=$O(@VRM@(LKH,DT,MSD)) Q:MSD=""  D
 ...S NOMTD="" F  S NOMTD=$O(@VRM@(LKH,DT,MSD,NOMTD)) Q:NOMTD=""  D
 ....N A S A=$G(^(NOMTD)) Q:A=""
 ....S SHLN=SHLN+1,SSHLN=SSHLN+1
 ....I SHLN>RSIZE D PAGEBREAK
 ....W "<tr>"
 ....W " <td align=""center"">"_$ZD(DT,"DD.MM.YY")_"</td>"
 ....D RKV(MSD,"black")
 ....D RKV($$MSD1(MSD))
 ....W "<td "
 ....W " onClick=""OnClickTr('"_MSD_"','"_NOMTD_"',this)"" "
 ....W " style=""cursor:pointer"
 ....;;I NOMTD=$$GET^%W1PRM("DLMCUR") W ";border:solid 2px brown"
 ....W """ "
 ....W " >&nbsp;"_NOMTD_"</td>"
 ....D RKV($P(A,"\",1),"darkblue") S SHOV=SHOV+$P(A,"\",1)
 ....D RKV($P(A,"\",2),"green") S SZHUT=SZHUT+$P(A,"\",2)
 ....D RKV($P(A,"\",3),"black") S LITRA=$P(A,"\",3)
 ....W "</tr>",!
 .;---------------------- ITOGO -------
 .W "<tr style=""background-color:yellow;font-weight:bold"">"
 .W " <td>&nbsp;</td>"
 .W " <td>&nbsp;</td>"
 .W " <td>"_$$^%W1DICT("TOTAL")_"</td>"
 .W " <td>&nbsp;</td>"
 .S SSHOV=SSHOV+SHOV
 .S SSZHUT=SSZHUT+SZHUT
 .S SLITRA=SLITRA+LITRA
 .
 .D RKV(SHOV,"darkblue",1)
 .D RKV(SZHUT,"green",1)
 .D RKV(LITRA,"black",1)
 .W "</tr>",!
 ;
 I 'SSHLN D
 .W "<script>",!
 .W " MsgA('NODATA!')",!
 .W " Back()",!
 .W "</script>",!
 ;
  W "<tr style=""font-weight:bold;background-color:yellow"">"
   W " <td>&nbsp;</td>"
   W " <td>&nbsp;</td>"
   W " <td>"_$$^%W1DICT("TOTALALLCUSTOMERS")_"</td>"
   W " <td>&nbsp;</td>"
   D RKV(SSHOV,"darkblue",1)
   D RKV(SSZHUT,"green",1)
   D RKV(SLITRA,"black",1)
  W "</tr>",! 
 W "</table>",!
 W "</div>",!
 K @TEMPL
 ;;K @VRM; ***
 Q
 ;
TEMPL S TEMPL=$$^W4MAIN("TEMPL")
 Q
 ;
SETST ;
 S @VRM@(STRING,DT,MSD,+$G(M("NOMTD")))=$G(M("HOVA"))_"\"_$G(M("ZHUT"))_"\"_$G(M("ITRA"))
 Q
 ;
PAGEBREAK ;
 W "</table>",!
 W "<p style=""page-break-before:always"">",!
 S PG=PG+1
 D KOT(LKH)
 S SHLN=0
 Q
 ;
 ;
KOT(LKH) ;
 I $G(%ARG("MELKH")),$G(%ARG("MELKH"))=$G(%ARG("ADLKH")) D DIVEX(LKH)
 W "<span dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold;"_$$FONTFM^W3CSS_""">"_LKH_" "_$$H2U^%L1FRM($$LKH(LKH))_"</span><br />",!
 ;
 W "<table dir="""_$$^%W1DIR_""" style=""font-size:"_$$^W3FSZ(12)_""" "
 W " width=""60%"">"
 D MEADL
 ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MEDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("MEDAT"))_"</td>",!
 W "  <td >"_$$^%W1DICT("ADDATE")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_$G(%ARG("ADDAT"))_"</td>",!
 W " </tr>",!
 W "</table>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" width="""_$$WDTB_"%"">"
 W " <tr style=""font-size:"_$$^W3FSZ(11)_""">"
 W "  <td>"_$$^%W1DICT("TEL")_" : "_$$TEL(LKH)_"</td>",!
 W "  <td "_$$INV^%W1ALIGN_" >"_$$^%W1DICT("PAGE")_" : "_PG_"</td>",!
 W " </tr>",!
 ;
 W "</table>",!
 W "<br />",!
 ;
 W "<table class=""rep"" dir="""_$$^%W1DIR_""" border=""0"" "
  W " width="""_$$WDTB_"%"" cellspacing=""0"">",!
 W " <tr style=""background-color:"_$$BGCOLOR^W4CSS_";color:white"" >"
 W "  <th>"_$$^%W1DICT("DATE")_"</th>"
 W "  <th>"_$$^%W1DICT("SNIF")_"</th>"
 W "  <th>"_$$^%W1DICT("RESTNAME")_"</th>"
 W "  <th>"_$$^%W1DICT("ORDER")_"</th>"
 W "  <th>"_$$^%W1DICT("NEKUDOT")_"</th>"
 W "  <th>"_$$^%W1DICT("ZHUT")_"</th>"
 W "  <th>"_$$^%W1DICT("ITRA")_"</th>"
 W " </tr>",!
 Q
 ;
 ;
RKV(RKV,COLOR,IT) ;
 I $G(COLOR)="" S COLOR="black"
 I RKV?."-".N."."1N.N,RKV=0 S RKV=""
 ;;I RKV S RKV=$J(RKV,DR,DR)
 S STYLE=" style=""color:"_COLOR
 I RKV<0 S STYLE=" style=""color:red"
 I $G(IT) S STYLE=STYLE_";font-weight:bold"
 S STYLE=STYLE_""""
 W "<td dir=""LTR"" "_$$^%W1ALIGN_" "_STYLE_" >&nbsp;"_RKV_"&nbsp;</td>"
 Q
 ;
HDSTYLE(STAM) ;
 Q " style=""color:brown;font-weight:bold"""
 ;
MEADL ;
 W " <tr>"
 W "  <td >"_$$^%W1DICT("MELKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_MELKH_"</td>",!
 W "  <td >"_$$^%W1DICT("ADLKH")_"</td>",!
 W "  <td "_$$HDSTYLE_">"_ADLKH_"</td>",!
 W " </tr>",!
 Q
 ;
PRM ;
 S VRM=$$^W4MAIN("VRM")
 D TEMPL
 S PRTN=$$^%W1JB
 S DAT1=$$^%L1DC(MEDAT,2)
 S DAT2=$$^%L1DC(ADDAT,2)
 I '$G(MELKH) S MELKH=1000
 I '$G(ADLKH) S ADLKH=9999999999
 S MESTRING=$TR(MELKH,"-","")
 I MESTRING,MESTRING<1000 S MESTRING=1000
 S ADSTRING=$TR(ADLKH,"-","")
 S:'ADSTRING ADSTRING=99999999999
 S DT1=$$^%L1DC(DAT1,4)
 S DT2=$$^%L1DC(DAT2,4)
 Q
 ;
WD(STAM) ; 
 Q 40 
 ;
WDTB(STAM) ; 
 Q 60 
 ;
DR S DR=1 
 Q 
 ;
 ;
DIVEX(LKH) ; 
 N I,HD,DAT,SUGTD,NOMTD,NP,ST,%W1PCEX
 N TMP S TMP=$$^%W1GLPRM K @TMP
 ;
 S HD="dxzi*zekf*daeg*dcerz mekq*dcerz 'qn*jnqn beq*jix`z"
 S HD=$$INVD^%L1FRM(HD,"*","*")
 S @TMP@("GLOUT",1)=HD
 S I=1
 ;
 S DAT="" F  S DAT=$O(@VRM@(LKH,DAT)) Q:DAT=""  D
 .S MSD="" F  S MSD=$O(@VRM@(LKH,DAT,MSD)) Q:MSD=""  D
 ..S NOMTD="" F  S NOMTD=$O(@VRM@(LKH,DAT,MSD,NOMTD)) Q:NOMTD=""  D
 ...S NP="" F  S NP=$O(@VRM@(LKH,DAT,MSD,NOMTD,NP)) Q:NP=""  D
 ....N A S A=$G(^(NP)) Q:A=""
 ....S ST=""
 ....S STC=$$^%L1DC(DAT,1) S ST=STC_"*"
 ....S STC=$J(NOMTD,DL) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\"),DL,2) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\",2),DL,2) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\",3),DL,2) S ST=ST_STC_"*"
 ....S STC=$J($P(A,"\",4),DL,2) S ST=ST_STC
 ....S I=I+1,@TMP@("GLOUT",I)=ST
 
 S %W1PCEX("NOHD")=""
 S %W1PCEX("NOHD1")=""
 ;
 D DIVEXC^%W1PC1("W4DLKP","%W1PCEX")
 Q  
 ;
 ; 
ITRA(LK,DT0) ; 
 N (JB,%ARG,LK,DT0,MSDR)
 D GLNKD(LK)
 S ITRA=0
 N D S D="" F  S D=$O(@GLNKD@(D)) Q:D=""  Q:D>DT0  D
 .S MSD="" F  S MSD=$O(@GLNKD@(D,MSD)) Q:MSD=""  I MSD D
 ..S HZ="" F  S HZ=$O(@GLNKD@(D,MSD,HZ)) Q:HZ=""  I HZ D
 ...S ST=$G(^(HZ))
 ...S ITRA=ITRA+$P(ST,"*")-$P(ST,"*",2)
 Q ITRA 
 ;
GL() 
 Q "^|$$^W3MAIN|WLKMNET(MSDR)"
 ;
GLNKD(STRING) S GLNKD="^|$$^W3MAIN|WLKMNET(MSDR,"""_STRING_""",""LKMNKD"")"
 Q
 ;
TEL(LKH) ; 
 N TEL S TEL=$$GETL^W3ANSLKM(LKH,"TEL")
 I TEL="" S TEL=$$GETL^W3ANSLKM(LKH,"PELE")
 Q TEL 
 ;
LKH(LKH) 
 Q $$GETL^W3ANSLKM(LKH,"LKMNAME")
 ;
MSD1(MSD) ; 
 Q $$H2U^%L1FRM($$MSD^W3R(MSD))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMSALE
WLMSALE(PRM) ; [ 28.09.25 21:12 ] [ 23.09.25 19:45 ] [ 08.09.25 10:04 ] 
 N (PRM,JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 ;
 D PUT^%W1PRM("MVC","LM")
 ;
 I $G(%ARG("MVC"))="LM" D
 .N LK,LK1,NKD0,NKD
 .S LK=$$LKMCARD^W3HZMST(JB)
 .S LK1=$$LKMNAME^W3HZMST(JB)
 .S NKD0=$$LKMNKD^W3HZMST(JB)
 .S NKD=$$TSHL^W3HZMST(JB)-$$LKMBON^W3HZMST(JB)+NKD0
 .
 .W "<p align=""center"">",!
 . W $$^%W1DICT("CLMNKD",LK_"<>"_LK1_"<>"_NKD)
 .W "</p>",!
 ;
 N SIGNIT
 S SIGNIT="SIGNCLUBSALEITEM"
 ;
 W "<span style=""font-size:"_$$^W3FSZ(14)_";color:red"">"_$$^%W1DICT(SIGNIT)_"</span>",!
 W "<br><br>",!
 W " <table id=""TbMvc"" width=""90%"" dir="""_$$^%W1DIR_""" border=""1"" cellspacing=""0"" cellpadding=""7"">",!
 W "  <tr class=""tblordhd"">"
 W "   <th width=""40%"">"_$$^%W1DICT("NAME")_"</th>",!
 ;
 W "   <th>"_$$^%W1DICT("QUANT")_"</th>",!
 ;
 W "   <th>"_$$^%W1DICT("NORMALPRICE")_"</th>",!
 W "   <th>"_$$^%W1DICT("SALEPRICE")_"</th>",!
 W "   <th>"_$$^%W1DICT("DIFFERENCE")_"</th>",!
 W "   <th>"_$$^%W1DICT("EREHNKD")_"</th>",!
 ;
 W "   <th>"_$$^%W1DICT("SIGN")_"</th>",!
 W "  </tr>",!
 ;
 I $G(%ARG("MTN")) D MTN G ETB
 ;
 S GL=$$GL
 S NMB=$$GETP^%W1PRM("NMB")
 ;
 I NMB D
 .S I=0
 .S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D VIB(N)
 ;
 D PUT^%W1PRM("WASLMVC",1)
 ;
ETB W " </table>",!
 W "<br>",!
 D ^W4SBMBCK("AddMvcLM()")
 W "</div>",!
 ;
 Q
 ;
 ;
MTN ;
 N CD,NM,PRC,QN,TXT
 S CD=$P(PRM,"~")
 S NM=$$CNWEB^%L1FRM($P(PRM,"~",2))
 S PRC=$J($P(PRM,"~",3),2,2)
 S QN=$P(PRM,"~",4)
 S TXT="0~"_CD_"~"_$P(PRM,"~",2)_"~"_PRC_"~"_QN
 D SETMVC^W3ST("TXT","MVCLM")
 W "  <tr>"
 W "   <td id=""nm"_CD_""">"_$$H2U^%L1FRM(NM)_"</td>"
 ;
 I $$^W6 D TDPIC(CD)
 ;
 W "   <td id=""qn"_CD_""" align=""center"">"_QN_"</td>"
 N SUMN S SUMN=$$MH^W4P(CD)*QN
 N SUMM S SUMM=PRC*QN
 W "   <td id=""cost"_CD_""">"_$J(SUMN,2,2)_"</td>"
 W "   <td id=""prc"_CD_""" style=""color:green;text-align:center"">"_$J(SUMM,2,2)_"</td>"
 W "   <td id=""dif"_CD_""" style=""color:red;text-align:center"">"_$J(SUMM-SUMN,2,2)_"</td>"
 ;
 W "   <td align=""center""><input type=""radio"" name=""rad"_CD_""" >"
 W "   </td>"
 W "  </tr>",!
 Q
 ;
 ;
GET(RKVZ,STR) ;
 Q $$GET2^W3MVC($G(RKVZ),$G(STR))
 ;
 ;
VIB(N,US)
 N (JB,%ARG,N,OKVIB,US)
 ;
 S OKVIB=0
 S NMB=$$GETP^%W1PRM("NMB")
 S GL=$$GL
 S A=$G(@GL@(N))
 S DT1=$$^%L1DC($$GET("DAT1",A),3)
 S DT2=$$^%L1DC($$GET("DAT2",A),3)
 S DZ=$$^W4DZ
 ;
 I DZ<DT1!(DZ>DT2) Q
 I $$WASLMVC Q
 ;
 S THUM=$$GET("THUM",A)
 I $$^W4MSL(NMB),THUM=1!(THUM=3) Q
 I $$^W4MSD(NMB),THUM=2 Q
 I '$$^W6,THUM=3 Q
 ;
 S CHK=$$GET("ISHUR",A) ; -- BHIRA AUTOMATIT
 ;
 S LKMCARD=$$LKMCARD^W3HZMST(JB)
 N BG S BG=$$LASTLMVC
 S TOT=$$TOTORD^W4GETSUM(JB,"","",BG)+$$LKMNKD^W3HZMST(JB)
 ;
 S SUMMVC=$$GET("SUMMVC",A) I TOT<SUMMVC Q
 S OKVIB=1
 I $G(US) Q
 ;
 S CD=$$GET("CDMTN",A)
 S QN=$$GET("KAMMTN",A)
 S MH=$J($$MH^W4P(CD)*QN,2,2)
 S PRC=$P(A,"\",6)
 S NM=$$SHEM^W4P(CD)
 ;
 D TRMTN(N,CD,QN,SUMMVC,MH,PRC,NM,CHK)
 Q
 ;
 ;
TRMTN(N,CD,QN,SUMMVC,MH,PRC,NM,CHK)
 W "<tr id=""tr"_N_""" >" 
  W "<td style=""padding-right:10px"">"_$$H2U^%L1FRM(NM)_"</td>"
  I $$^W6 D TDPIC(CD)
  W "<td>"_QN_"</td>"
  W "<td>"_MH_"</td>"
  W "<td id=""mhmvc"_N_""">"_PRC_"</td>"
  ;
  W "<td dir=""LTR"" style=""text-align:right;color:red"">"
   W $J(PRC-MH,2,2)
  W "</td>"
  ;
  W "<td dir=""LTR"" style=""text-align:right;color:red"">"
   W $J(SUMMVC,0,0)
  W "</td>"
  ;
  W "<td align=""center"" >"
   D ^W4LBLRAD("lbl"_N,"sign"_N,$G(CHK))
  W "</td>" 
 W "</tr>",!
 Q
 ;
 ;
TDPIC(CD) ;
 N HG,WD S HG="55px",WD="60px"
 N PIC S PIC=$P($$GETPIC^W3ENTER(CD),"~",2)
 W "<td align=""center"" "
  W "   >" 
   W "  <img src="""_PIC_""" width="""_WD_""" height="""_HG_""" " ; -- WAS 100%
   W "  style=""border:2px solid grey;cursor:pointer"" "
   W "  />"
 W "</td>",!
 Q
 ;
 ;
GL()
 Q $$^W4GL("WLMVC")
 ;
US(TOT) ;
 I $$GET^%W1PRM("WASLMVC") Q 0
 N LKMCARD S LKMCARD=$$LKMCARD^W3HZMST(JB)
 I 'LKMCARD Q 0
 N GL,OKVIB S GL=$$GL
 S OKVIB=0
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D VIB(N,1) Q:OKVIB
 Q OKVIB
 ;
 ;
ADDMVC(PRM) ;
 N (JB,%ARG,PRM)
 N GL S GL=$$GL
 S OK=0
 F I=1:1:$L(PRM,";")-1 D
 .S N=$P(PRM,";",I) Q:'N 
 .S A=$G(@GL@(N))
 .S SUMMVC=$$GET("SUMMVC",A)
 .;;S ^AA("WLMSALE-ADDMVC",N,"A")=A
 .S ST=$$STMTN(A) Q:ST=""
 .;;S ^AA("WLMSALE-ADDMVC",N,"ST")=ST
 .S $P(ST,"~",7-1)=$$TV^%W1DICT($$^%W1LNG,"LMVC")
 .S $P(ST,"~",17-1)="LMVC"
 .S LAST=$O(@$$^W4TMPORD@(99999),-1)+1
 .S ST=$$CNWEB^%L1FRM(ST)
 .S @$$^W4TMPORD@(LAST)="0~"_ST,OK=1
 .S @$$^W4TMPORD@("LKM","BON")=$G(@$$^W4TMPORD@("LKM","BON"))+$J(SUMMVC,0,0)
 ;
 S @$$^W4TMPORD@("LMVC")=$H
 Q OK
 ;
 ;
WASLMVC()
 N LAST S LAST=$O(@$$^W4TMPORD@(99999),-1)
 I $$LASTLMVC'<LAST Q 1
 Q 0
 ;
STMTN(A) ; 
 N ST 
 S ST=$$GET("CDMTN",A)_"~"_$$CLWEB^%L1FRM($$GET("NMMTN",A))
 N MHMTN S MHMTN=$$GET("MHMTN",A)
 N KAMMTN S KAMMTN=$$GET("KAMMTN",A)
 I KAMMTN,MHMTN'["%" S MHMTN=$J(MHMTN/KAMMTN,5,5)
 ;
 I MHMTN["%" D
 .S MHMTN=$$TOTORD^W4GETSUM(JB)*MHMTN*.01
 .I MHMTN>0 S MHMTN=-MHMTN
 .S MHMTN=$J(MHMTN,2,2)
 .S KAMMTN=1
 ;
 S ST=ST_"~"_MHMTN_"~"_KAMMTN
 Q ST 
 ;
 ;
CLRMVC ;
 N I F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D
 .I $$LMVC^W3HZMST(JB,I) D DELROW^W3HZORD("LV0"_I)
 K @$$^W4TMPORD@("LMVC")
 K @$$^W4TMPORD@("LKM","BON")
 D KILL^%W1PRM("LMVC")
 Q
 ;
TESTMVC ;
 N OK S OK=0
 N I F I=1:1 Q:'$D(@$$^W4TMPORD@(I))  D  Q:OK
 .I $$LMVC^W3HZMST(JB,I) S OK=I
 I OK,'$D(@$$^W4TMPORD@("LMVC")) S ^("LMVC")=$H
 Q
 ;
 ;
LASTLMVC() ;
 N N,OK S OK=0
 S N="" F  S N=$O(@$$^W4TMPORD@(N),-1) Q:N=""  I N D  Q:OK
 .I N,$$LMVC^W3HZMST(JB,N) S OK=N
 Q OK
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMSHOW
WLMSHOW(GL) ; [ 29.09.25 00:57 ] [ 28.09.25 23:57 ] [ 26.08.25 09:07 ] 
 N (JB,%ARG,%REM,GL)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(%ARG("HD"))="CUSTHIST" G CUSTHIST
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  ;;I '$G(%ARG("NOBR")) W "<br>"
  I $L($G(%ARG("HD"))) D
  .D ^%L1WEBHD(%ARG("HD"))
  S PAD=6
  I $G(%ARG("PAD")) S PAD=%ARG("PAD")
  ;
  I $$CLOSED($$^WLMPARAM("LKMCARD")) D
  .W "<p style=""color:red; font-size:"_$$^W3FSZ(14)_""">",!
  . W $$^%W1DICT("CUSTCLOSED")
  .W "</p>",!
  ;
  I '$$CLOSED($$^WLMPARAM("LKMCARD")) W "<p>&nbsp;</p>",!
  ;
  W "<table width=""70%"" cellpadding="""_PAD_"px"" style=""font-size:"_$$^W3FSZ(12)
  W ";border:groove 2px grey;background-color:white"" "
  W ">",!
  S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
  .S A=$G(^(N))
  .S A=$P(A,":",1,2)
  .S NM=$P(A,":",$L(A,":"))
  .S VL=$P(A,":",1,$L(A,":")-1)
  .W "<tr>"
  . W "<td width=""40%"" style="""
  . I $D(@GL@(N,"B")) W "font-weight:bold"
  . W """>"
  .  W $$H2U^%L1FRM(NM)
  . W "</td>",!
  . W "<td style=""color:blue"" >"
  .  W $$H2U^%L1FRM(VL)
  . W "</td>",!
  .W "</tr>",!
  W "</table>",!
  ;
  W "<br>",!
  I '$$^WLMPARAM("ORD") W "<br>",!
  ;
  D BTN
  D HIST
  ;
END ;
 W "</div>",!
 Q
 ;
 ;
BTN ;
 N LKMCARD,GLLKM
 S LKMCARD=$$^WLMPARAM("LKMCARD")
 S GLLKM=$$GL^WLKM
 ;
 W "<div id=""divbtn"" align=""center"" dir="""_$$^%W1DIR_""">",!
  W "<table>",!
   W "<tr>"
    W "<td>"
     N SBMPROC S SBMPROC=$$SPA^%L1FRM($G(%ARG("PROC")))
     ;
     I $$^WLMPARAM("PROC")'="" D
     .S SBMPROC=$$^WLMPARAM("PROC")
     .;;D SET^WLMPARAM("PROC",""); ***
     ;
     D
     .I SBMPROC="" S SBMPROC="Back()"
     .
     .I $G(%ARG("NOBACK")) D  Q
     ..D ^W4BTN("CLOSE",SBMPROC,"green",1)
     .
     .N NM S NM="UPDATE"
     .D ^W4BTN(NM,"LKMCreate('"_LKMCARD_"',0)","blue")
     .W $$NBSP^%L1FRM(5)
     .
     .I $$LKMLOCAL^W4PRM D
     ..N NM S NM="HISTORY"
     ..D ^W4BTN(NM,"LKMHist('"_LKMCARD_"',0)","blue")
     ..W $$NBSP^%L1FRM(5)
     ..
     ..I $$MGR^W4KOTMLZ D
     ...I '$$CLOSED^W4L(LKMCARD,GLLKM) D ^W4BTN("CANCELCARD","Deact()","brown") Q
     ...I $$CLOSED^W4L(LKMCARD,GLLKM) D ^W4BTN("ACTCARD","Act()","brown") Q
     .
     .I $$^WLMPARAM("ORD") D
     ..N NM S NM="SUBMIT"
     ..D ^W4BTN(NM,SBMPROC,"green")
     ;
    W "</td>" ;; -- END SUBMIT
    ;
    I '$G(%ARG("NOBACK")) D
    .W "<td>&nbsp;</td>"
    .W "<td>"
    . D ^W4BTN("BACK","Back()","red")
    .W "</td>"
   W "</tr>",!
  W "</table>",!
  W "</div>",!
  Q
 ;
HIST ;
 W "<div id=""divhist"" dir="""_$$^%W1DIR_""" align=""center"" style=""display:none"" >",!
  W "<table>",!
   W "<tr>",!
    W "<td>"
     D ^%W1DAT("MEDAT","",$$^%W1DICT("MEDATE"))
    W "</td>"
    W "<td>"
     S %ARG("W4SBM")="1"
     D ^W4SBM
    W "</td>"
    W "<td>"
     S W4BCK("PROC")="ToShow()"
     D ^W4BCK
    W "</td>"
   W "</tr>",!
 W "</div>",!
 Q
 ;
 ;
CUSTHIST ;
 N (JB,%ARG)
 S SH=0,TMPS111=$$^W4MAIN("TMPS111") K @TMPS111
 S DL=8
 D DR^WLMREP
 N LK S LK=$$^WLMPARAM("LKMCARD") 
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$ZD($H,"DD.MM.YY")
 S (MELKH,ADLKH)=LK
 D FRM^WLMREP(JB,MEDAT,ADDAT,MELKH,ADLKH) ;
 D PC^WLMREP
 ; 
 W "<p></p>",!
 W "<div align=""center"">",!
 S W4BCK("PROC")="ToShow('1')"
 D ^W4BCK
 W "</div>",!
 Q
 ;
 ;
CNCCARD(STAM) ;
 N LK,GLLKM
 S LK=$$^WLMPARAM("LKMCARD") I LK="" Q "NOCUST"
 S GLLKM=$$GL^WLKM
 D PUT^W4L(LK,"0","MAZAV",GLLKM)
 Q 1
 ;
 ;
ACTCARD(STAM) ;
 N LK,GLLKM
 S LK=$$^WLMPARAM("LKMCARD") I LK="" Q "NOCUST"
 S GLLKM=$$GL^WLKM
 D PUT^W4L(LK,"1","MAZAV",GLLKM)
 Q 1
 ;
 ;
CLOSED(LK) ;
 I $$LKMLOCAL^W4PRM,$$CLOSED^W4L(LK,$$GL^WLKM) Q 1
 Q 0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMSHOWL
WLMSHOWL ; [ 28.09.25 06:19 ] [ 26.09.25 09:20 ] [ 21.09.25 13:46 ] 
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 D CLOSE
 W "<br><br>",!
 ;
 W "<table border=""1"" style=""font-size:"_$$^W3FSZ(12)_";width:80%"" "
 W " cellpadding=""8"" cellspacing=""0"">",!
 ;
 S VRM=$$^WLMVRM
 ;
 D CRVRM
 ;
 W "<tr style=""height:35px;font-size:"_$$^W3FSZ(12)_""">"
  W "<th>"_$$^%W1DICT("CARDNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("PHONE")_"</th>"
  W "<th>"_$$^%W1DICT("PAIL")_"</th>"
 W "</tr>",!
 ;
 S N="" F  S N=$O(@VRM@(N)) Q:N=""  D
 .S A=$G(^(N))
 .W "<tr style=""cursor:pointer"" "_$$^W4TOUCH_"=""Click('"_N_"')"">"
 . I $$^WLMPARAM="ACT",'$$PAIL^WLMVRM(N) Q
 . I $$^WLMPARAM="DEACT",$$PAIL^WLMVRM(N) Q
 . W "<td>"_$$CARD^WLMVRM(N)_"</td>"
 . W "<td>"_$$H2U^%L1FRM($$NAME^WLMVRM(N))_"</td>"
 . W "<td>"_$$TEL^WLMVRM(N)_"</td>"
 . S ACT=$$PAIL^WLMVRM(N)
 . S ACT=$S(ACT:"lirt",1:"lirt `l")
 . S ACT=$$H2U^%L1FRM(ACT)
 . W "<td>"_ACT_"</td>"
 . ;;W "<td>"_$$TOKEF^WLMVRM(N)_"</td>"
 .W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 D CLOSE
 W "</div>",!
 Q
 ;
 ;
CLICK(INDEX) ;
 N A S A=$G(@$$^WLMVRM@(INDEX)) I A="" Q "NOTCUST"
 N CARD S CARD=$$CARD^WLMVRM(INDEX)
 ;
 D SETCARD^WLMCARD(CARD)
 D ^WLMGET(CARD,1,.WLMGET,.LKMER)
 I LKMER=0 Q 1
 Q LKMER
 ;
 ;
CLOSE ;
 N PROC
 S PROC="WlmClose()"
 I $$^WLMPARAM="ORD" S PROC="BackHref('HRFHZ',parent)"
 D ^W4BTN("CLOSE",PROC,"red")
 Q
 ;
 ; 
CRVRM ;
 N (JB,%ARG,%REM)
 S VRM=$$^WLMVRM K @VRM
 N PRM 
 S PRM=$$^WLMPARAM("SRCH")
 D ARG^%L1FRM(PRM)
 D ^%W1ARG
 S TEL=$TR($G(TEL),"-","")
 ;
 I '$$LKMLOCAL^W4PRM G GET4SERV
 ;
 S GL=$$GL^WLKM
 ;
 S OK=0
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S GLNAME=$$LKH^W4L(N,GL)
 .S GLTZ=$$TZ^W4L(N,GL)
 .S GLTEL1=$TR($$TEL^W4L(N,GL),"-","")
 .S GLTEL2=$TR($$PELE^W4L(N,GL),"-","")
 .
 .I $L($G(NAME)),'$$SRCH^W1SRCH(GLNAME,NAME,1) Q
 .I $G(TZ),+TZ'=+GLTZ Q
 .
 .I TEL,TEL'=GLTEL1,TEL'=GLTEL2 Q
 .S PAIL='$$CLOSED^W4L(N,GL)
 .S @VRM@(N)=N_"\"_GLNAME_"\"_TEL_"\"_PAIL
 G ENDV
 ;
GET4SERV ;
 S DLM="<>"
 K WLMGET
 S TO="LKH="_$G(NAME)_DLM_"TEL="_$G(TEL)_DLM
 S TO=TO_"TZ="_$G(TZ)
 ; 
 D ^W4SNDSRV("SRCH","w3anslkm",TO,.STANS,.ER)
 ;
 S STANS=$P(STANS,"<SearchResult>",2)
 S STANS=$P(STANS,"</SearchResult>",1)
 I STANS="" G ENDV
 S PAIL=1; ***
 F I=1:1:$L(STANS,"^") D
 .N ST S ST=$P(STANS,"^",I)
 .S LK=$$GET^W3ANSLKM(ST,"CODE",DLM) Q:LK=""
 .S LKMNAME=$$GET^W3ANSLKM(ST,"LKMNAME",DLM)
 .S TELOU=$$GET^W3ANSLKM(ST,"TEL",DLM)
 .S PELEOU=$$GET^W3ANSLKM(ST,"PELE",DLM)
 .I $G(TEL)="" S TEL=$S(TELOU:TELOU,1:PELEOU)
 .S @VRM@(LK)=LK_"\"_LKMNAME_"\"_TEL_"\"_PAIL
 ;
ENDV Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WLMSRC
WLMSRC ; [ 26.08.25 06:58 ] [ 
 ; 
SAVE(PRM) ;
 N (JB,%ARG,PRM)
 S ST=""
 F I=1:1:$L(PRM,";") D
 .S CPL=$P(PRM,";",I)
 .S RKV=$P(CPL,"=")
 .S VL=$P(CPL,"=",2)
 .S VL=$$CNWEB^%L1FRM(VL)
 .S VL=$$INVH^%L1FRM(VL)
 .I RKV?1U.E S ST=ST_RKV_"="_VL_"&"
 ;
 S ST=$E(ST,1,$L(ST)-1)
 D SET^WLMPARAM("SRCH",ST)
 Q 1
 
 
 

WLMSTAT
WLMSTAT  ; [ 21.09.25 15:13 ] [ 
 Q
 ;
TMP(STAM) ;
 Q $$TMP^WLKM
 ;
HDSTAT(STAM) ;
 Q "oecren gewl ly qehhq"
 ;
HDITRA(STAM) ;
 Q "oecren gewl ly dxzi"
 ;
HDCUSTUPD(STAM) ;
 Q "oecen gewl ihxt oekcr"
 ;
HDFUNC(FUNC) ;
 N HDFUNC S HDFUNC="HD"_$P(FUNC,"!")
 Q $$@HDFUNC
 ;
 ;
CRTMPDET(LAB) ;
 N TMP,LKH S TMP=$$TMP
 K @TMP
 S @TMP@(1)=LKMCARD_": qihxk 'qn:LKMCARD"
 ;
 N I,K,VL,HBNAME,RKV,T
 S K=1 F I=1:1 S T=$T(@LAB+I) Q:T=""  Q:T[" Q  ;"  D
 .I $P(T,";",2) D
 ..S K=K+1
 ..S RKV=$P(T,";",5)
 ..S VL=""
 ..
 ..S VL=$G(@RKV)
 ..
 ..I $P(T,";",6)="N" S VL=$J(VL,2,2)
 ..
 ..S HBNAME=$P(T,";",4)
 ..S @TMP@(K)=VL_":"_HBNAME_":"_RKV
 ;
 Q
 ;
 ;
CUSTDET ;
 ;1;Name;gewl my;LKMNAME;
 ;1;Email;l"`ec;EMAIL;
 ;0;Phone;'lh;TELB;
 ;1;Mobile;ciip;PELE;
 ;1;Zehut;.f.z;TZ;
 ;1;City;xir;IR;
 ;1;Street;aegx;KTV;
 ;1;Home;zia;BAIT;
 ;1;Flat;dxic;DIRA;
 ;1;Entrance;dqipk;CNISA;
 ;1;Floor;dnew;KOMA;
 ;1;BirthDate;dcil jix`z;JOMH;
 ;1;Points;zecewp;LKMNKD;
 Q  ;
 ;
 ;
 

WLMVL
WLMVL(RKV) ; [ 21.08.25 10:11 ] [ 
 N (JB,%ARG)
 S GL=$$GL^WLKM
 

WLMVRM
WLMVRM(STAM) ; [ 26.08.25 06:54 ] [ 29.06.21 08:33 ] [ 17.06.15 12:00 ] [
 Q $$^W4MAIN("VRMWLM")
 ;
CARD(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WLMVRM@(SH)),"\"))
 ;
NAME(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WLMVRM@(SH)),"\",2))
 ;
TEL(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WLMVRM@(SH)),"\",3))
 ;
PAIL(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WLMVRM@(SH)),"\",4))
 ;
TOKEF(SH) ;
 I $G(SH)="" Q ""
 Q $$SPA^%L1FRM($P($G(@$$WLMVRM@(SH)),"\",5))
 
 
 
 

WLPRM
WLPRM ; [ 11.11.21 18:27 ] [ 14.08.15 02:51 ] [ 28.05.15 17:59 ] 
GET ;
 N LKM,I
 F I="NKD","NOKFL","PAR","PARMDN","PARUPD","PARYMH","PARNSN","PARMHZT","PARBON","PARNKD" D
 .S @I=$G(@$$^W4PRM@($$LKM,I))
 Q
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("WMCSETU","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@($$LKM)
 S @$$^W4PRM@($$LKM)=LKM
 F I="NKD","NOKFL","PAR","PARMDN","PARUPD","PARYMH","PARNSN","PARMHZT","PARBON","PARNKD" D
 .N VL S VL=$G(@I)
 .S @$$^W4PRM@($$LKM,I)=$G(@I)
 .I $E(I,1,3)="PAR",VL S @$$^W4GL("PRTBH")@(VL)=""
 Q RES
 ;
 ;
PAR(STAM) ;
 Q $G(@$$^W4PRM@($$LKM,"PAR"))
 ;
PARBON(STAM) ;
 Q $G(@$$^W4PRM@($$LKM,"PARBON"))
 ;
PARNKD(STAM) ;
 Q $G(@$$^W4PRM@($$LKM,"PARNKD"))
 ;
NKD(STAM) ;
 Q $G(@$$^W4PRM@($$LKM,"NKD"))
 ;
NOKFL(STAM) ;
 Q $G(@$$^W4PRM@($$LKM,"NOKFL"))
 ;
LKM(STAM) Q "LKM"
 
 
 
 

WMANS
WMANS(COD,RKV) ; [ 17.10.15 11:32 ] [ 10.09.15 13:12 ] [ 05.09.15 13:10 ]
 I $G(COD)="" Q ""
 I $G(RKV)="" Q ""
 Q $G(@$$^W4TMPANS@(COD,RKV))
 ;
SET(COD,RKV,VL) ;
 I $G(COD)="" Q
 I $G(RKV)="" Q
 S @$$^W4TMPANS@(COD,RKV)=$G(VL)
 Q
 ;
CLEAR(COD) ;
 I $G(COD)="" K @$$^W4TMPANS Q
 K @$$^W4TMPANS@(COD)
 Q
 ;
COPY(COD1,COD2) ;
 M @$$^W4TMPANS@(COD2)=@$$^W4TMPANS@(COD1)
 Q
 ;
CP(COD1,RKV1,COD2,RKV2) ;
 M @$$^W4TMPANS@(COD2,RKV2)=@$$^W4TMPANS@(COD1,RKV1)
 Q
MOVE(COD1,COD2) ;
 D COPY(COD1,COD2)
 D CLEAR(COD1)
 Q

WMCA
WMCA(STAM) ; [ 12.10.15 11:59 ] [
 Q $$^W4GL("WMCA")

WMCARD
WMCARD ;  [ 01.11.15 17:56 ] [ 09.10.15 10:49 ] [ 16.09.15 10:00 ]
 N (JB,%ARG,%REM)
 S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S (MPCARD,MPNAME1)=""
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" style=""width:98%;height:98%;border:2px solid grey"" >",!
  ;
  I $L($G(%ARG("HD"))) D
  .D ^%L1WEBHD(%ARG("HD"))
  ;
  W "<table style=""font-size:"_$$^W3FSZ(12)_";font-weight:bold"" width=""60%"" cellpadding=""20px"" align=""center"" >",!
   ;
   D CARD
   ;
  W "<tr>"
    W "<td>"
    D ^W4BTN("SUBMIT","Sbm()","green")
    W "</td>",!
    ;;W "<td>&nbsp;</td>"
    N PROC S PROC="WmClose()"
    I $$^WMPARAM("ORD") S PROC="Back()"
    W "<td>"
    D ^W4BTN("BACK",PROC,"red")
    W "</td>"
   W "</tr>",!
  W "</table>",!
 W "</div>",!
 Q
 ;
 ;
CARD ;
 W "<tr>"
  W "<td colspan=""3"">"
   W "<span style=""color:brown"">"_$$^%W1DICT("MOVECARD")_"</span>"
   W "<br>"
   W "<input type=""text"" size=""50"" id=""card"" "
   W " onClick=""Sel(this)"" "
   W " onKeyPress=""OnKeyPress(event)"" "
   W " style=""font-size:"_$$^W3FSZ(12)_""">"
   W "<br><br>"
   S %ARG("NODOT")=1
   D ^W4NUMKB("card",50)
  W "</td>"
 W "</tr>"
 ;
 W "<tr>"
  W "<td colspan=""3"">"
   W "<span style=""color:brown"">"_$$^%W1DICT("PINCODE")_"</span>"
   W "<br>"
   W "<input type=""text"" size=""4"" id=""pincd"" "
   W " onClick=""Sel(this)"" "
   W " onKeyPress=""OnKeyPress(event)"" "
   W " style=""font-size:"_$$^W3FSZ(12)_""">"
   W "<br><br>"
   S %ARG("NODOT")=1
   D ^W4NUMKB("pincd",4)
  W "</td>"
 W "</tr>"
 Q
 ;
SUM ;
 W "<tr>"
   W "<td colspan=""3"">"
    W "<span style=""color:brown"">"_$$^%W1DICT("TYPESUM")_"</span>"
   W "<br>"
   W "<input type=""text"" size=""8"" id=""sum"" "
   W " onClick=""this.select()"" "
   W " style=""font-size:"_$$^W3FSZ(14)_""">"
   W "<br><br>"
   D ^W4NUMKB("sum",8)
  W "</td>",!
 W "</tr>",!
 Q
 ;
 ;
SBM(M1STR) ;
 N (JB,%ARG,%REM,M1STR)
 ;
 S MPCARD=$P(M1STR,";")
 S PINCD=$P(M1STR,";",2)
 ;S ARM=0
 ;S SEC=$P($H,",",2)#60
 ;I SEC-START>1 S ARM=1
 ;I START<60,SEC>0 S ARM=1
 ;
 S ARM=+PINCD
 D PUT^%W3DEB("WMCARD-SBM","M1STR=M1STR")
 ;
 D SET^WMPARAM("MPCARD",MPCARD)
 D SET^WMPARAM("MPARM",ARM)
 ;
 I $$^WMPARAM("BALANCE") D  G:$$ERR(RES) ER G END
 .S RES=$$^WMGETINF
 .
 I $$^WMPARAM("STATUS") D  G:$$ERR(RES) ER G END
 .S RES=$$^WMGETDET
 .
 ;;I $$^WMPARAM("INITCARD") S M1LKH=""
 I $$^WMPARAM("INITCARD") D CLEAR^WMANS("WMCARD") G END
 ;
 S RES=$$SNDCRD^WMGETDET(MPCARD,ARM)
 I $$ERR(RES) G ER
 ;
 I $$^WMPARAM("ORD") D ^WMCLRINV($$GETP^%W1PRM("HZM"),$$^W4TMPORD)
 ;
 D CLEAR^WMANS("WMCARD")
 ;
 I $$^WMPARAM("ORD") D
 .S @$$^W4TMPORD@("MP","CARD")=MPCARD
 .S @$$^W4TMPORD@("MP","NAME")=MPNAME
 .S @$$^W4TMPORD@("NEW")=$H
 ;
 I $$^WMPARAM("ORD")="PAY" D
 .D SET^WMANS("MP","CARDNUMBER",MPCARD)
 ;
END ;
 Q 0
 ;
 ;
ER ;
 D SET^WMPARAM("MPCARD","")
 D SET^WMPARAM("MPARM","")
 I RES'["\" Q RES_"\"_$$^WMGM(RES,$G(ERR))
 Q RES
 ;
 ;
ANS(COD,RKV)
 Q $$^WMANS(COD,RKV)
 ;
MSG(MSG) ;
 Q $$CLWEB^%L1FRM(MSG)
 ;
INIT ;
 D ^W3CSS
 D ^W4CSS
 D KILL^%W1PRM("KBRKVTO")
 Q
 ;
CLRMPCARD ;
 D SET^WMPARAM("MPCARD","")
 D SET^WMPARAM("MPARM","")
 Q
 ;
ERR(RES)
 I $P($G(RES),"\")=0 Q 0
 Q 1

WMCCLDEL
WMCCLDEL(SH,HZM) ; [ 21.02.15 12:04 ] [ 20.02.15 18:23 ] [
 N FUNC S FUNC="cancel"
 N NMNX S NMNX=$$CMNST^W3HZMST(JB,SH)
 N CLN S CLN=$$SPA^%L1FRM($$CLRCOUPLE^%L1FRM(NMNX,"[","]"))
 Q:CLN=""
 ;
 I $G(@$$^W4TMPORD@("MYCH","CLIENT"))=CLN D
 .K ^("CLIENT")
 .S @$$^W4TMPORD@("MYCH","CLIENTDEL",CLN)=$ZD($H,"DD.MM.YY  24:60")
 .S $P(@$$^W4TMPORD@(SH),"~",3)="wi'v lehia"
 .S $P(@$$^W4TMPORD@(SH),"~",5)=-1
 .I $G(HZM)>0 D
 ..K @$$^W4ORD@(HZM,"MYCH","CLIENT")
 ..S @$$^W4ORD@(HZM,"MYCH","CLIENTDEL",CLN)=$ZD($H,"DD.MM.YY  24:60")
 ;
 D MNGTBL^WMCHFUNC($G(HZM),FUNC,CLN)
 N IND S IND=$$^W4DZ
 S @$$CL2HZA^WMCGL@(IND,CLN)=$G(@$$CL2HZ^WMCGL@(CLN))
 K @$$CL2HZ^WMCGL@(CLN)
 Q

WMCCLO
WMCCLO(DEL) ; [ 22.03.15 09:43 ] [ 17.02.15 17:32 ] [ 16.02.15 11:57 ]
 N (JB,%ARG,%REM,DEL)
 D PUT^%W3DEB("WMCCLORD","DEL=DEL")
 D KILL^%W1PRM("DELMYCH")
 I $G(DEL) D ^%W1PRM("DELMYCH",1)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 W "<br>"
 W "<span style=""font-size:"_$$^W3FSZ(18)_""">",!
  S HD=$$^%W1DICT("CLOSEMYCHECKORDERS")
  I $G(DEL) S HD=$$^%W1DICT("DELETEMYCHECKORDERS")
  W HD,!
 W "</span>",!
 W "<br><br>",!
 ;
 W "<table cellspacing=""0"" id=""Tbl"" "
  W " cellpadding=""10px"" "
  W "style=""width:80%;font-size:"_$$^W3FSZ(18)_""" border=""1"" "
 W ">",!
  W "<tr style=""height:60px"">"
   W "<th>"
    W $$^%W1DICT("MYCHNUMBER")
   W "</th>",!
   W "<th>"
    W $$^%W1DICT("MYCHNAME")
   W "</th>",!
   W "<th>"
    W $$^%W1DICT("ORDER")
   W "</th>"
   W "<th>"
    W $$^%W1DICT("SHULHAN")
   W "</th>",!
   W "<th>"
    W $$^%W1DICT("WAITER")
   W "</th>"
   W "<th>"
    W $$^%W1DICT("TOPAY")
   W "</th>"
   W "<th>"
    W $$^%W1DICT("PAID")
   W "</th>"
   W "<th>"
    W $$^%W1DICT("ITRA")
   W "</th>"
   W "<th>"
    W $$^%W1DICT("SIGN")
   W "</th>"
  W "</tr>",!
  N A
  ;
  S TMP=$$TMP
  K @TMP
  M @TMP=@$$CL2HZ^WMCGL
  ;
  S N="" F  S N=$O(@TMP@(N)) Q:N=""  D
  .S A=$G(^(N))
  .S ORD=$P(A,"\")
  .S NM=$P(A,"\",2)
  .W "<tr"" "
  .W " style=""height:60px"
  .W """ "
  .W ">",!
  . W "<td align=""center"" >"
  .  W N
  . W "</td>"
  .
  . W "<td>"
  .  D
  .  .I NM="" W "&nbsp;" Q
  .  .W $$H2U^%L1FRM(NM),!
  . W "</td>"
  .
  . W "<td "_$$^W4TOUCH_"=""ShowOrd('"_ORD_"')"" style=""cursor:pointer"" >"
  .  W ORD,!
  . W "</td>"
  .
  . W "<td>",!
  .  W $$NMB^W4HZMST(ORD),!
  . W "</td>"
  .
  . W "<td>",!
  .  W $$H2U^%L1FRM($$^W4NAME($$MKBL^W4HZMST(ORD))),!
  . W "</td>"
  .
  . W "<td>",!
  .  W $J($$TSHL^W4HZMST(ORD),2,2),!
  . W "</td>"
  .
  . W "<td>",!
  .  W $J($$SSHUL^W4HZMST(ORD)+$$SHULA^W4HZMST(ORD),2,2),!
  . W "</td>"
  .
  . W "<td>",!
  .  W $J($$ITRA^W4HZMST(ORD),2,2),!
  . W "</td>"
  .
  . W "<td align=""center"">",!
  . W "  <label for=""chk"_N_""" "
  . W "   style=""width:100%;height:100%"" "
  . W "  </label>",!
  .  D CHKBOX(N)
  . W "</td>"
  .
  .W "</tr>",!
  W "</table>",!
  W "<br>",!
  D SBMBCK
  W "</div>",!
  Q
  ;
 ;
SET(CLN)
 I $G(CLN)="" Q "0;CLIENTNUMBERNOTDEFINED"
 I $G(@$$TMP@(CLN,"CLOSED")) K ^("CLOSED") Q -1
 S @$$TMP@(CLN,"CLOSED")=1
 Q 1
 ;
 ;
CLOSE(STAM) ;
 N A,N,IND,OK S OK=1
 S N="" F  S N=$O(@$$TMP@(N)) Q:N=""  S A=$G(^(N)) I $G(^(N,"CLOSED")) D
 .N A S A=$G(@$$TMP@(N))
 .N HZM S HZM=$P(A,"\")
 .I HZM="" S OK="0;ORDERNUMBERNOTDEFINED" Q
 .N FUNC S FUNC="close"
 .I $$GETP^%W1PRM("DELMYCH") D
 ..S FUNC="cancel" ;;D DELORD^WMCHFUNC(HZM,JB)
 ..N N1 S N1="" F  S N1=$O(@$$^W4ORD@(HZM,N1)) Q:N1=""  I N1 D
 ...N A1 S A1=$G(^(N1))
 ...N CD S CD=$P(A1,"\")
 ...I CD=$$MYCHECK^W4PRM D
 ....N CLN S CLN=$$SPA^%L1FRM($P(A1,"\",8))
 ....I CLN["[" S CLN=$$SPA^%L1FRM($P(CLN,"["))
 ....I CLN=N D
 .....S $P(A1,"\",1,3)="0\\""wi'v iin"" cew lehia"
 .....S @$$^W4ORD@(HZM,N1)=A1
 .....I $G(@$$^W4ORD@(HZM,"MYCH","CLIENT"))=CLN D
 ......K ^("CLIENT")
 ......S @$$^W4ORD@(HZM,"MYCH","CLIENTDEL",CLN)=$ZD($H,"DD.MM.YY  24:60")
 .
 .D MNGTBL^WMCHFUNC(HZM,FUNC,N)
 .D CLSCL(N)
 ;
 K @$$TMP
 Q OK
 ;
CLSCL(N) ;
 N IND S IND=$$^W4DZ
 S @$$CL2HZA^WMCGL@(IND,N)=@$$CL2HZ^WMCGL@(N)
 K @$$CL2HZ^WMCGL@(N)
 Q
 ;
SBMBCK ; ;
 W " <table dir="""_$$^%W1DIR_""" >",!
 W "  <tr>"
 W "   <td>"
        W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" "
        W ""_$$^W4TOUCH_"=""Submit()"" style=""color:green;width:120px"" "
 W "   </td>"
 W "   <td width=""120px"">&nbsp;</td>",!
 W "   <td>"
        W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
        W ""_$$^W4TOUCH_"=""Back()"" style=""color:red;width:120px"" "
 W "   </td>"
 W "  </tr>",!
 W " </table>",!
 Q
 ;
TMP(STAM) ;
 Q $$^W4MAIN("TMP")
 ;
CHKBOX(N) ;
 W "    <input type=""checkbox"" name=""chk"" id=""chk"_N_""" "
 I $$CHK(N) D
 .W " checked=""checked"" "
 W " onClick=""ClickTbl('"_N_"')"" "
 W ">",!
 ;
 W "    <label for=""chk"_N_""" id=""lb"_N_""" name=""lb"" "
 W "     class=""bgbtn"" "
 W "     style=""cursor:pointer"">"
 D
 .I $$CHK(N) W $$SHOWV^W3CSM Q
 .W $$SHOWO^W3CSM
 W "    </label>",!
 Q
 ;
CHK(N) ;
 I $G(@$$TMP@(N,"CLOSED")) Q 1
 Q 0

WMCCLORD
WMCCLORD ; [ 22.03.15 13:15 ] [ 17.02.15 17:32 ] [ 16.02.15 11:57 ]
 Q
ORDNMB ;
 K %SC("ER")
 I VL'>0!(VL'?1N.N) D ER("NOZERO") Q
 I '$D(@$$^W4ORD@(VL)) D ER("ORDERNOTEXIST") Q
 Q
 ;
MYCHCODE ;
 K %SC("ER")
 I VL'?4N D ER("NDIGITSONLY;4") Q
 ;
 N N,OK S OK=0
 N HZM S HZM=$$GET^W4TMPANS("MCCLORD","ORDERNUMBER")
 I 'HZM D ER("ORDERNUMBERNOTDEFINED") Q
 D PUT^W4TMPANS("MCCLORD","MYCHCODE",VL)
 N CLCOD S CLCOD=$$MYCHCLIENT^W4HZMST(HZM)
 I CLCOD="" D ER("MYCHCODEINORDERNOTFOUND") Q
 I VL'=$$MYCHCLIENT^W4HZMST(HZM) D  Q
 .D ER("MYCHCODEINORDER;"_CLCOD)
 Q
 ;
CLORD(STAM) ;
 N HZM S HZM=$$GET^W4TMPANS("MCCLORD","ORDERNUMBER")
 I 'HZM Q "ORDERNUMBERNOTDEFINED"
 N CLCOD S CLCOD=$$GET^W4TMPANS("MCCLORD","MYCHCODE")
 I 'CLCOD Q "MYCHCODENOTDEFINED"
 D MNGTBL^WMCHFUNC(HZM,"close",CLCOD)
 Q 1
 ;
ER(MSG) ;
 S %SC("ER")=1
 S %SC("ER","MSG")=MSG
 Q

WMCCLSTB
WMCCLSTB ; [ 08.02.15 10:14 ] [ 07.02.15 15:32 ] [
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 W "<br>"
 W "<span style=""font-size:"_$$^W3FSZ(18)_""">",!
  W $$^%W1DICT("CLOSEMYCHECKWAITERCALLS")
 W "</span>",!
 W "<br><br>",!
 W "<table cellspacing=""0"" id=""Tbl"" "
  W " cellpadding=""10px"" "
  W "style=""width:40%;font-size:"_$$^W3FSZ(18)_""" border=""1"" "
 W ">",!
  W "<tr style=""height:60px"">"
   W "<th width=""30%"">"
    W $$^%W1DICT("SHULHAN")
   W "</th>",!
   W "<th>"
    W $$^%W1DICT("WAITER")
   W "</th>"
  W "</tr>",!
  N A
  S N="" F  S N=$O(@$$WTR^WMCGL@(N)) Q:N=""  D
  .S A=$G(^(N))
  .W "<tr "_$$^W4TOUCH_"=""ClickTbl('"_N_"',this)"" "
  .W " style=""height:60px"
  .I $D(@$$WTR^WMCGL@(N,"CUR")) W ";background-color:yellow"
  .W """ "
  .W ">",!
  . W "<td align=""center"" >"
  .  W N
  . W "</td>"
  . W "<td>"
  .  W $S(A="":"&nbsp;",1:$$H2U^%L1FRM($$^W4NAME(A)))
  . W "</td>"
  .W "</tr>",!
  ;
  W "</table>",!
  W "<br>",!
  D SBMBCK
  W "</div>",!
  Q
  ;
CLRCUR ;
 N N S N="" F  S N=$O(@$$WTR^WMCGL@(N)) Q:N=""  K ^(N,"CUR")
 Q
 ;
SETWTR(PRM)
 N NMB,WTR
 S NMB=$P(PRM,";") I 'NMB Q "0;TABLENUMBERNOTDEFINED"
 S WTR=$P(PRM,";",2) I 'WTR Q "0;WAITERNUMBERNOTDEFINED"
 D CLRCUR
 S @$$WTR^WMCGL@(NMB)=WTR
 S @$$WTR^WMCGL@(NMB,"CUR")=1
 Q 1
 ;
SUBMIT(STAM) ;
 N A,N,IND
 S N="" F  S N=$O(@$$WTR^WMCGL@(N)) Q:N=""  D
 .S A=$G(^(N)) Q:'A
 .S IND=+$H_$TR($J($P($H,",",2),5)," ",0)
 .S @$$WTRA^WMCGL@(IND,N)=A
 .K @$$WTR^WMCGL@(N)
 Q 1
 ;
SBMBCK ; ;
 W " <table dir="""_$$^%W1DIR_""" >",!
 W "  <tr>"
 W "   <td>"
        W "<input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" "
        W ""_$$^W4TOUCH_"=""Submit()"" style=""color:green;width:120px"" "
 W "   </td>"
 W "   <td width=""120px"">&nbsp;</td>",!
 W "   <td>"
        W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
        W ""_$$^W4TOUCH_"=""Back()"" style=""color:red;width:120px"" "
 W "   </td>"
 W "  </tr>",!
 W " </table>",!
 Q

WMCGL
WMCGL ; [ 15.02.15 09:27 ] [ 09.02.15 14:16 ] [ 08.02.15 09:17 ]
 Q
 ;
WTR(STAM) ;
 Q "^[$$^W3MAIN]WMCWTR"
 ;
WTRA(STAM) ;
 Q "^[$$^W3MAIN]WMCWTRA"
 ;
GT(STAM) ;
 Q "^[$$^W3MAIN]WMCHGT(JB)"
 ;
CL2HZ(STAM) ;
 Q "^[$$^W3MAIN]WMCCL2HZ"
 ;
CL2HZA(STAM) ;
 Q "^[$$^W3MAIN]WMCCL2HZA"
 ;
PY(STAM) ;
 Q "^[$$^W3MAIN]WMCPY"

WMCHCON
WMCHCON(FUNC,POST); [ 16.08.10 11:23 ] [  ; [ 29.12.24 12:10 ] [ 04.03.15 17:07 ] [ 18.02.15 13:34 ] 
 N (JB,%REM,%ARG,FUNC,POST,MYCHER,MYCHER1,HZM)
 S DT=$$^W4DZ
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S COUNTER=$O(@$$^W4GL("WMCHGTA")@(DT,JB,"CON",""),-1)+1
 S PROT=$$^W4GL("WMCHGTA")_"(DT,JB,""CON"",COUNTER)"
 S MYCHER=0,MYCHER1=""
 S HEADER="""Content-Type:application/json"""
 S URL="https://api.mycheck.co.il/api/"_FUNC
 ;
 S FLOUT=$$FLOUT^WMCHPRM
 C FLOUT:(DELETE) ; *** LEV 26/12
 ;
 S CMD="/usr/bin/curl -m 30 -s -X POST -d@"_POST_" "_URL_" -o "_FLOUT
 ;
 D GL S H=+$H
 ;
 I $G(HZM) D PROT("HZM",HZM)
 D PROT("FUNC",FUNC)
 D PROT("CMD",CMD)
 ;;D PROT("CMD1",CMD1)
 D PROT("FLOUT",FLOUT)
 ;
 ZSY CMD ;;SUCCESS OF THIS COMMAND SHOUL BE CHECKED BEFORE CMD1
 D PROT("ZSY",$ZSY)
 I $ZSY S MYCHER=-$ZSY,MYCHER1="zxeywza d`iby" G END
 ;
 F JJ=1:1:5  Q:$$^W4ZOS(10,FLOUT)'<0  H 1
 ;
 I $$^W4ZOS(10,FLOUT)<0 S MYCHER=-.2,MYCHER1="dlawzd `l daeyz" D  G END
 .D PROT("MYCHER",MYCHER)
 ;
 ;;ZSY CMD1
 ;;H 1
 ;;I $ZSY S MYCHER=-$ZSY,MYCHER1=MYCHER_" d`iby" D  G END
 ;;.D PROT("MYCHER-1",MYCHER)
 ;
 K @GL S I=1
 ;
 C FLOUT
 O FLOUT:(REWIND:READONLY)
 ;
 S ST=""
 F  D  Q:$ZEOF
 .U FLOUT R *A Q:$ZEOF
 .I $C(A)="{"!($C(A)="}")!($C(A)="[")!($C(A)="]")!($C(A)=",") D
 ..S @GL@(I)=ST_$C(A),ST="",I=I+1
 .E  S ST=ST_$C(A)
 ;
 I $L(ST) D
 .S @GL@(I)=ST
 ;
 D PROTGT
 C FLOUT:(DELETE) ; *** LEV 26/12
END Q  ;;MYCHER_"*"_MYCHER1_"*"_FUNC
 ;
 ;
PROT(NM,VL) ;
 ;;Q:'$G(MYCHDEB)
 S @PROT@(FUNC,NM)=$$U2H^%L1CNV(VL)
 Q
 ;
PROTGT ;
 ;;Q:'$G(MYCHDEB)
 ;;M @PROT@("MYCHGT")=@GL
 N K S K=1 S @PROT@("GT",K)="FUNCTION : "_$G(FUNC)_"  POST :"_$G(POST)
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S K=K+1
 .S @PROT@("GT",K)=$$U2H^%L1CNV($G(@GL@(N)))
 Q
 ;
GL ;
 S GL=$$GT^WMCGL
 Q
 

WMCHFUNC
WMCHFUNC ; [ 12.03.15 08:49 ] [ 01.03.15 13:37 ] [ 28.02.15 12:15 ]
 ;
MNGTBL(HZM,FUNC,CLCOD)
 ;;FUNCS= OPEN CANCEL REOPEN-"CANCELED BY MISTAKE AND RECOVERED"
 ;;FUNCS=JOIN CLOSE
 ;; CANCEL - IN USE WHEN YOU WHANT TO DISCONECT TABLE FROM MYCHECK .CANCEL MYCHECK ORDER AND ALL  PAYMENTS
 ;;-------------------------------------------------------------
  ;
 S @$$^W4GL("WMCHPY")@(HZM,FUNC)=$ZD($H,"DD.MM.YY 24:60")
 N (JB,%ARG,%REM,HZM,FUNC,CLCOD,MYCHER,MYCHER1)
 N FPATH S FPATH="table/act/"
 ;
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 ;
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 ;
 I FUNC="open" D
 .S STRIN=STRIN_FS_"Decimal=2"
 ;
 I FUNC="join" D
 .S STRIN=STRIN_FS_"JoinCode"
 ;
 I FUNC="close" D
 .S STRIN=STRIN_FS_"Waiter="_$$MKBL^W4HZMST(HZM)
 .S STRIN=STRIN_FS_"BillNum="_$P($G(@$$^W4ORD@(HZM,"CB")),"\") ;; heshbonit mas kabala
 ;
 I FUNC="cancel" D
 .S STRIN=STRIN  ;; DO NOTHING STRIN IS READY
 ;
 D FOOTER(STRIN,FLIN)
 ;
 S FUNC=FPATH_FUNC
 ;
 D ^WMCHCON(FUNC,FLIN)
 Q
 ;
 ;
CHKPAYMENT ;;-- SHOULD RUN IN BACKGROUND AND CHECK FOR POOLED PAYMENTS
 N (JB,%ARG,FUNC,CLCOD,MYCHER,MYCHER1)
 ;
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="""""
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("poll",FLIN)
 Q
 ;
APRVPAY(HZM,ID,EXTID,CLCOD)
 S @$$^W4GL("WMCHPY")@(HZM,"APPROVE")=$ZD($H,"DD.MM.YY 24:60")
 N FPATH S FPATH="payment/act/"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 ;;S STRIN="Payments=[]";; {"ID": 111, "ExtID": "0003"}, ] ID = MYCHECK PAYMENT ID FROM POLL EXTID=POS PAYMENT ID
 ;;S STRIN="Payments=[{""ID"": "_ID_", ""ExtID"": "_EXTID_"}]"
 S STRIN=STRIN_FS_"ApprovalNum="_ID
 S STRIN=STRIN_FS_"ExternalApprovalNum="_EXTID
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH_"approve",FLIN)
 Q
 ;
APRVATAVA(HZM,ID,CLCOD)
 S @$$^W4GL("WMCHPY")@(HZM,"APRVATAVA")=$ZD($H,"DD.MM.YY 24:60")
 N FPATH S FPATH="atava/act/"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"ID="_ID ;;; ATAVA ID
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH_"approve",FLIN)
 Q
 ;
CANPAY(PID) ;;; NOT IN USE BY MYCHECK
 ;; IN USE WHAN YOU WHANT TO CANCEL MYCHECK PAYMENT ON OPEN ORDER.
 N FPATH S FPATH="refundpayment"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN=PID
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH,FLIN)
 Q
 ;
REJPAY(CLCOD,APRVID)
 ;; IN USE WHAN YOU WHANT TO REJECT MYCHECK PAYMENT ON OPEN ORDER.
 N FPATH S FPATH="payment/act/"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"ApprovalNum="_APRVID ;;; APRVID RECEIVED FROM "GET NEW TABLE PAYMENT"
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH_"reject",FLIN)
 Q
 ;
SYNCORD(HZM,JB)
 N (JB,%ARG,HZM)
 S CLCOD=$$MYCHCLIENT^W4HZMST(HZM) Q:CLCOD=""
 ;
 D HEADER ; --> FLIN,BID,FS
 ;
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"Discount="_$J($$HNH^W4HZMST(HZM),2,2)
 S STRIN=STRIN_FS_"Service="_$J($$DMSH^W4HZMST(HZM),2,2)
 S STRIN=STRIN_FS_"Payments="_$$HZMPAYMENTS(HZM)
 S STRIN=STRIN_FS_"Items="_$$HZMITEMS(HZM)
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("sync",FLIN)
 Q
 ;
 ;
DELORD(HZM,JB)
 N (JB,%ARG,HZM)
 S CLCOD=$$MYCHCLIENT^W4HZMST(HZM) Q:CLCOD=""
 ;
 D HEADER ; --> FLIN,BID,FS
 ;
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"Discount=0"
 S STRIN=STRIN_FS_"Service=0"
 S STRIN=STRIN_FS_"Payments=0"
 S STRIN=STRIN_FS_"Items="_$$BILLITEM("0",$$^%L1CNV("dpnfd lehia"),1,0)
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("sync",FLIN)
 Q
 ;
 ;
GETCLDETS(HZM,CLCOD) ;
 N (JB,%ARG,HZM,CLCOD,MYCHER,MYCHER1)
 D HEADER ; --> FLIN,BID,FS
 S STRIN="BID="_BID
 S STRIN="ClientCode="_CLCOD
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("poll",FLIN)
 Q
 ;
 ;
 ;
HEADER ; --> FLIN,BID,FS : O FLIN U FLIN
 ;
 S BID=$$RESTID^WMCHPRM
 ;
 ;;S CLCOD="1001" ; -- MYCHECK TEMP CLIENT CODE PUTTED IN TABLE
 ;
 S FS="&" ;- FIELD SEPARATOR
 ;
 S FLIN=$$FLIN^WMCHPRM
 C FLIN:DELETE
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 Q
 ;
 ;
FOOTER(STRIN,FLIN) ;
 W STRIN,!
 C FLIN
 ;;U 0 W STRIN,! H 4
 Q
 ;
 ;
HZMITEMS(HZM)
 N (JB,%ARG,HZM)
 N SUM S SUM=0,HZMITEMS=""
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .N A S A=$G(^(I))
 .S CD=$P(A,"\")
 .I $$ISHNHP^W4HZMST(CD) S CD=0,ITEMNAME=$$^%L1CNV("hixtl dgpd") G C1
 .I CD'?1N.N S CD=0
 .S ITEMNAME=$$^%L1CNV($$ITEMNAME(A))
C1 .N QNT,ITEMPRC
 .S QNT=$$QNT(A) S:'QNT QNT=1
 .S ITEMPRC=$$ITEMPRC(A)
 .I 'ITEMPRC S ITEMPRC=$J(($$ITEMSUM(A)-$$ADDONPRC(A))/QNT,2,2)
 .I I=1 S HZMITEMS=HZMITEMS_$$BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 .I I>1 S HZMITEMS=HZMITEMS_","_$$BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 .S SUM=SUM+(QNT*ITEMPRC)
 .
 .N ADDON
 .S ADDONPRC=$$ADDONPRC(A)
 .
 .I $G(ADDONPRC) D
 ..S HZMITEMS=HZMITEMS_","_$$BILLITEM("0",$$^%L1CNV("zetqez"),"1",ADDONPRC)
 ..S SUM=SUM+ADDONPRC
 ;
 I $G(@$$^W4ORD@(HZM))="" Q ""
 S TSHL=$$TSHL(HZM)
 ;
 ;;S DIF=$$FRMT2INT(TSHL-SUM,100)
 ;;S DIF=$J(TSHL-SUM,2,2)
 ;;I DIF S HZMITEMS=$$BILLITEM("0","DISCOUNT","1",DIF)
 S HZMITEMS="["_HZMITEMS_"]"   ;;[]=JSON LIST
 ;
 Q HZMITEMS
 ;
 ;
BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 N BILLITEM
 S BILLITEM="""Name"":"""_ITEMNAME_""""
 S BILLITEM=BILLITEM_",""Cost"":"_$J(ITEMPRC,2,2)
 S BILLITEM=BILLITEM_",""Quantity"":"_QNT
 S BILLITEM=BILLITEM_",""SerialID"":"_CD
 S BILLITEM=BILLITEM_",""Remarks"":"_""""""
 S BILLITEM=BILLITEM_",""Toppings"":"_""""""
 S BILLITEM="{"_BILLITEM_"}" ;;{}=JSON OBJECT VAR:VALUE "," -SEPARATOR
 Q BILLITEM
 ;
 ;
HZMPAYMENTS(HZM)
 ;;PAYSUM=SUM OF SPECIFIC PAYMENT
 ;;TIP=TIP SUM OF SPECIFIC PAYMENT
 ;;PAYDBY="Credit,Cash,Mycheck, ..."
 ;;HZMPAYUID="identifier  of payment in ^P1HZ to avoid doble insertion"
 ;;PAYSTATUS="Approved,Cancelled
 ;;-----------------------------------------------------------------------
 ;
 N HZMPAYMENTS S HZMPAYMENTS=""
 N SUM,TIP
 N A S A=$G(@$$^W4ORD@(HZM,"CB"))
 S CASH=$J($P(A,"\",2),2,2)
 S TIP=$J($P(A,"\",10),2,2)
 ;
 S HZMPAYMENTS=$$PAYTYPE(CASH,TIP,"Cash",1,"Approved")
 ;
 N N,N1 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D
 .I N="CH" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...S SUM=$J($P($G(^(N1)),"*",1),2,2)
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,"Other",2_N1,"Approved")
 .I N="V" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...N A S A=$G(^(N1))
 ...S SUM=$J($P(A,"*",6),2,2)
 ...S VT="Credit"
 ...I '$P(A,"*",2) S VT="Mycheck"
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,VT,3_N1,"Approved")
 .I N="ASR" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...S SUM=$J($P($G(^(N1)),"*",4),2,2)
 ...S VT="Other"
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,VT,4_N1,"Approved")
 ;
 Q "["_HZMPAYMENTS_"]"
 ;
 ;
PAYTYPE(PAYSUM,TIP,PAYDBY,HZMPAYUID,PAYSTATUS)
 N PAYTYPE S PAYTYPE=""
 S PAYTYPE="""ItemAmount"""_":"_$J(PAYSUM,2,2)
 S PAYTYPE=PAYTYPE_","_"""ServiceAmount"""_":"_$J(TIP,2,2)
 S PAYTYPE=PAYTYPE_","_"""PaymentType"""_":"_""""_PAYDBY_""""
 S PAYTYPE=PAYTYPE_","_"""ID"""_":"_""""_HZMPAYUID_""""
 S PAYTYPE=PAYTYPE_","_"""Status"""_":"_""""_PAYSTATUS_""""
 S PAYTYPE="{"_PAYTYPE_"}" ;;{}=JSON OBJECT  VAR:VALUE ","- SEPARATOR
 Q PAYTYPE
 ;
 ;
QNT(A) ;
 Q $P(A,"\",5)
 ;
ADDONPRC(A)
 Q $J($P(A,"\",6),2,2)
 ;
ITEMPRC(A) ;
 Q $J($P(A,"\",4),2,2)
 ;
ITEMSUM(A) ;
 Q $J($P(A,"\",7),2,2)
 ;
FRMT2INT(N,M)
 Q $J(N,2,2)*M
 ;
ITEMNAME(A)
 N NM S NM=$P(A,"\",3)
 ;;S NM=$$RPL^%L1FRM(NM,"'","'\")
 ;;S NM=$$RPL^%L1FRM(NM,"""","""\")
 Q NM
 ;
SSHUL(HZM) ;
 Q $P(@$$^W4ORD@(HZM),"\",12)+$P(@$$^W4ORD@(HZM),"\",17)
 ;
TSHL(HZM)
 Q $J($P(@$$^W4ORD@(HZM),"\",11),2,2)
 ;
ITRA(HZM) Q $J($$TSHL(HZM)-$$SSHUL(HZM),2,2)

WMCHORD
WMCHORD(HZM,JB) ; [ 16.02.15 11:09 ] [ 14.02.15 07:50 ] [ 07.02.15 09:42 ]
 N (JB,%ARG,%REM,HZM,OK)
 Q:$G(HZM)<1
 N I,PAR S OK=0
 ;
 D SYNCORD^WMCHFUNC(HZM,JB) ; --> ^WMCHGT
 ;
 S CODL=$$MYCHCLIENT^W4HZMST(HZM)
 I CODL'="" S OK=$$^WMCINF(CODL) ; ^WMCHGT -->^TMP
 ;
 I $$TSHL^W4HZMST(HZM)'<0 D
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N A S A=$G(^(I)),PAR=$P(A,"\")
 ..
 ..I PAR=$$MYCHECK^W4PRM D
 ...N MYCHLK S MYCHLK=$$SPA^%L1FRM($P(A,"\",8)) Q:MYCHLK=""
 ...N MYCHLKNM S MYCHLKNM=""
 ...I MYCHLK["[" S MYCHLKNM=$$SPA^%L1FRM($P($P(MYCHLK,"[",2),"]"))
 ...S MYCHLK=$$CLRCOUPLE^%L1FRM(MYCHLK,"[","]")
 ...S MYCHLK=$$SPA^%L1FRM(MYCHLK) Q:MYCHLK=""
 ...S @$$CL2HZ^WMCGL@(MYCHLK)=HZM_"\"_MYCHLKNM ; --> CREATE CUST.ID (FROM MY CHECK) LIST
 Q

WMCHPRM
WMCHPRM; ; [ 16.10.20 12:50 ] [ 09.02.15 14:34 ] [ 05.02.15 16:32 ] 
FLIN()
 Q $$DIR_"mychkin"_$$^W4MYDVN
 ;
FLOUT()
 Q $$DIR_"mychkout"_$$^W4MYDVN
 ;
RESTID()
 Q $G(@$$^W4PRM@("MYCH","MSD"))
 ;
VENDID()
 Q 25
 ;
DIR(STAM) ;
 Q $ZDIR_"1/tmp/"
 

WMCINF
WMCINF(HZM,CLCOD) ; [ 09.02.15 13:11 ] [ 08.02.15 13:58 ] [ 06.02.15 10:33 ]
 N (JB,%ARG,%REM,CLCOD,HZM)
 S MYDVN=$$^W4MYDVN,UR=1
 ;
 N I D GL^WMCHCON
 ;
 S I="" F  S I=$O(@GL@(I)) Q:I=""  D
 .S A=$G(^(I))
 .I $E(A)="""",A[":" D GETRKV(A)
 ;
 D TMP
 K @TMP
 S OK=0
 ;
 I $D(AtavaType)=1 D
 .I AtavaType="Item" D
 ..I $G(ClientCode)="" Q
 ..I $G(ID)="" Q
 ..I $G(SerialID)="" Q
 ..I $G(Quantity)="" Q
 ..I $G(Price)="" Q
 ..I $G(Discount)="" Q
 ..D ATVIT^WMCRDPY($G(HZM),ClientCode,ID,SerialID,Quantity,Price,Discount)  Q
 ;
 I $D(AtavaType)>1 D
 .N N S N="" F  S N=$O(AtavaType(N)) Q:N=""  D
 ..I AtavaType(N)="Item" D
 ..I $G(ClientCode(N))="" Q
 ..I $G(ID(N))="" Q
 ..I $G(SerialID(N))="" Q
 ..I $G(Quantity(N))="" Q
 ..I $G(Price(N))="" Q
 ..I $G(Discount(N))="" Q
 ..D ATVIT^WMCRDPY($G(HZM),ClientCode(N),ID(N),SerialID(N),Quantity(N),Price(N),Discount(N))  Q
 ;
 I $$FUNC^%LCASE($G(Success))="false" D  ;
 .S @TMP@(1)=$G(ReturnString)
 .S @TMP@(2)=$G(Items)
 ;
 I $$FUNC^%LCASE($G(Success))="true" D
 .S @TMP@(1)=$G(ReturnString)
 .S @TMP@(2)=$G(CustomerName)_" : gewl my"
 .S @TMP@(3)=$G(CustomerWeight)_" : gewl lwyn"
 .S @TMP@(3)=$G(AtavaType)
 .S @TMP@(4)=$G(Items)
 .S @TMP@(5)=$G(Title)
 .
 .M @$$^W4TMPORD@("MYCH","CLIENT")=@TMP
 .S OK=1
 ;
END ;
 Q OK
 ;
 ;
GETRKV(%A) ;
 N %RKV,%VL,%LSMB
 S %RKV=$P(%A,":")
 I $E(%RKV)="""" S %RKV=$P(%RKV,"""",2)
 Q:%RKV=""
 ;
 I $D(@%RKV) D  Q
 .I '$D(@%RKV@(1)) D  Q
 ..S @%RKV@(1)=$G(@%RKV)
 ..S @%RKV@(2)=$$VL(%A)
 .S @%RKV($O(@%RKV@(9999),-1)+1)=$$VL(%A)
 ;
 S @%RKV=$$VL(%A)
 Q
 ;
 ;
VL(%A) ;
 I %A[":" S %VL=$P(%A,":",2,200)
 E  S %VL=%A
 I $E(%VL)="""" S %VL=$P(%VL,"""",2)
 S %LSMB=$E(%VL,$L(%VL))
 I %LSMB=","!(%LSMB="}")!(%LSMB="{")!(%LSMB="]")!(%LSMB="[") D
 .S %VL=$E(%VL,1,$L(%VL)-1)
 S %VL=$$U2H^%L1CNV(%VL)
 Q %VL
 ;
TMP S TMP=$$^W4MAIN("TMPMC")
 Q

WMCON
WMCON(STR) ; GET CONNECTION TO SERVER ;[ 01/05/2004   1:23 PM ] [ 12.09.15 07:26 ] [ 01/05/2004   1:23 PM ] [ 12.09.15 07:20 ]
 N (JB,%ARG,STR)
 D PUT^%W3DEB("WMCON","STR=STR")
 N A,ER,ZT,NP D ^WMIN
 ;;N $ZT S $ZT="ZG "_$ZL_":NOOP^WMCON"
 ;
 D  Q:ER M1C("NOCON")
 .S ER=0
 .S ADDR=$$IPA^WMPRM
 .S PORTN="SCK$"_$J,PORT=$$PORT^WMPRM
 .S ER=$$^%L2NALAN(ADDR,PORT) I ER C PORTN
 ;
 S ZT=$ZT
 S $ZT="G NOOP^WMCON"
 U PORTN:(NOWRAP:NOECHO:NOESC:NOCENABLE:PASTHRU)
 S $ZT=$G(ZT)
 N ST S ST=$$^WMSTR(STR)
 W ST,!
 D SET^WMGP(STR,"SND")
END Q M1C("OK")
 ;
CLOSE ;
 C $$^WMPORT
 Q
 ;
NOOP ;
 Q 6
ER ;
 Q

WMCRDPY
WMCRDPY(JB) ; [ 04.03.15 16:44 ] [ 24.02.15 13:53 ] [ 23.02.15 08:53 ]
 N (JB,%ARG)
 N MYDVN S MYDVN=JB,UR=1 K @$$^W4MAIN("VRMM")
 S $ZT="k @$$^W4flag@(""MYCH"") S $ZT="""",zr=$R ZG "_$ZL_":SVER^%L1X"
 ;
 I $G(@$$^W4flag@("MYCH")),$G(@$$^W4flag@("MYCH"))'=MYDVN Q
 S @$$^W4flag@("MYCH")=MYDVN
 ;
 S GL=$$GT^WMCGL,GTOK=0
CYC ;
 I $G(@$$^W4flag@("MYCH")),$G(@$$^W4flag@("MYCH"))'=MYDVN Q
 S @$$^W4flag@("MYCH")=MYDVN
 ;
 I $G(GTOK) D
 .S INDH=$P($H,",",2)
 .N DT S DT=$$^W4DZ
 .K ^[$$^W3MAIN]WMCHGTA(DT-10)
 .K ^[$$^W3MAIN]WMCHGTA(DT,JB)
 .M ^[$$^W3MAIN]WMCHGTA(DT,JB)=@GL
 .S GTOK=0
 ;
 K @GL
 ;
 D CHKPAYMENT^WMCHFUNC ; -------- PRIEM
 ;
TV S ORD="",CARD="",ORDMYCH="",NOMDISC=0,ASM=""
 S GL=$$GT^WMCGL,MYDVN=JB
 S PRW=0,END=0
 ;
 S N="" F  S N=$O(@GL@(N)) Q:N=""  D  Q:END
 .S A=$G(^(N))
 .
 .I A["Waiter" D  Q  ; -- CALL A WAITER
 ..S N1=N F  S N1=$O(@GL@(N1)) Q:N1=""  Q:$G(^(N1))="]"  D
 ...S CLC=$$VL($G(^(N1))) Q:'CLC
 ...S HZM=$$ORD(CLC)
 ...S SHULH=$$NMB^W4HZMST(HZM) Q:'SHULH
 ...S @$$WTR^WMCGL@(SHULH)=$ZD($H,"DD.MM.YY  24:60")
 ...S GTOK=1
 ..I N1="" S END=1 Q
 ..S N=N1 Q
 .
 .I A["""ID"":" S ID=$$VL(A) Q
 .
 .I A["ClientCode" S CLCOD=$$VL(A),ORD=$$ORD(CLCOD) D:ORD  Q
 ..S (PAY,TIP,VT,ATAVATYPE,DISCOUNT,SID,QN,PRICE,ASM)=""
 .;
 .Q:'$G(ORD)  Q:'$G(ID)  I '$D(@$$^W4ORD@(ORD)) Q
 .
 .D ATAVA Q:OKATV
 .
 .I A["Amount" S PAY=$$VL(A) S GTOK=1 Q
 .I A["Tip" S TIP=$$VL(A) S GTOK=1 Q
 .I A["ApprovalNum" S APRVNUM=$$VL(A),GTOK=1 Q
 .
 .I A["CreditType" D  Q
 ..I $G(ORD),$G(CLCOD) D SETSTAGE(ORD,CLCOD,10)
 ..;
 ..I $D(@$$^W4ORD@(ORD,"MYCH","V","ID",ID)) Q  ; -- TASHLUM KVAR HITKABEL
 ..I $G(ORD),$G(CLCOD) D SETSTAGE(ORD,CLCOD,11)
 ..I $$^W4CLOSE(ORD) Q
 ..;;I $$SSHUL(ORD)'<$$TSHL^W4HZMST(ORD) Q
 ..I $G(ORD),$G(CLCOD) D SETSTAGE(ORD,CLCOD,12)
 ..S VT=$$VL(A)
 ..N LAST0 S LAST0=$O(@$$^W4ORD@(ORD,"CB","V",999),-1)
 ..L +@$$^W4ORD@(ORD):5
 ..D PAYCAJ(ORD,CLCOD,ID,PAY,TIP,VT) ;-------------- CA PAID BY MY CHECK
 ..L -@$$^W4ORD@(ORD)
 ..N LAST S LAST=$O(@$$^W4ORD@(ORD,"CB","V",999),-1)
 ..I 'LAST!(LAST'>LAST0) Q
 ..S GTOK=1
 ..S @$$^W4ORD@(ORD,"MYCH","V",LAST,"AMOUNT")=PAY
 ..S @$$^W4ORD@(ORD,"MYCH","V",LAST,"TIP")=TIP
 ..S @$$^W4ORD@(ORD,"MYCH","V",LAST,"ID")=ID
 ..S @$$^W4ORD@(ORD,"MYCH","V",LAST,"APRVNUM")=$G(APRVNUM)
 ..S @$$^W4ORD@(ORD,"MYCH","V",LAST,"CLCOD")=$G(CLCOD)
 ..S @$$^W4ORD@(ORD,"MYCH","V","ID",ID)=LAST
 ..
 ..N EXTID,I,NN S NN="",I=0
 ..F  S NN=$O(@$$^W4ORD@(ORD,"MYCH","V",NN)) Q:NN=""  I NN S I=I+1
 ..D APRVPAY^WMCHFUNC(ORD,ID,I,CLCOD) ; - PODTV TASHLUMA
 ;
 I $$MSGTBL'="" D
 .S %MSG="<E></SPAN><E>"_$$MSGTBL_" : zepgleyl xvln ze`ixw yi"_"<E><SPAN STYLE=""COLOR:RED;FONT-WEIGHT:BOLD""><E>"
 .D ALL^W4PCPROG
 ;
 ;
ENDC ;
 H 4 G CYC
 ;
 ;
VL(A) ;
 Q $$VL^WMCINF(A)
 ;
ORD(CLCOD)
 Q +$G(@$$CL2HZ^WMCGL@(CLCOD))
 ;
 ;
SSHUL(HZM)
 N SHUL
 S SHUL=$$SSHUL^W4HZMST(HZM)+$$SAS^W4HZMST(HZM)
 Q SHUL
 ;
 ;
PAYCAJ(HZM,CLCOD,ID,PAY,TIP,BRAND) ;-------------- CA PAID BY MY CHECK
 N (JB,%ARG,%REM,HZM,CLCOD,ID,PAY,TIP,BRAND,ASM,MYDVN)
 S HZM=+$G(HZM)
 N MYCHPY S MYCHPY=$$PY^WMCGL_"(HZM,CLCOD)"
 I '$G(HZM)!'$L($G(ID))!'$L(CLCOD) Q
 I $G(HZM),$G(CLCOD) D SETSTAGE(HZM,CLCOD,13)
 S HZMMYCH=ID
 ;
 I $G(HZM),$G(CLCOD) D SETSTAGE(HZM,CLCOD,14)
 D CAJ($J(PAY,2,2),$J(TIP,2,2),BRAND,ID) Q:$G(S21)=""
 ;
 D
 .N IND S IND=$O(@$$^W4ORD@(HZM,"CB","V",999),-1)+1
 .S @$$^W4ORD@(HZM,"CB","V",IND)=S21
 .S @$$^W4ORD@(HZM,"MYCH",IND)=CLCOD_"\"_HZMMYCH_"\"_$H
 ;
 S @$$^W4MAIN("VRMM")=$G(@$$^W4PRM@("MYCH","PRINT"))
 ;
 I $G(HZM),$G(CLCOD) D SETSTAGE(HZM,CLCOD,15)
 D CHKTIP(HZM)
 ;
 D ^W4T(HZM,2)
 ;
 I $G(HZM),$G(CLCOD) D SETSTAGE(HZM,CLCOD,16)
 K @$$^W4MAIN("VRMM")
 ;
 S @MYCHPY@("PAY")="OK"
 ;
 I $G(HZM),$G(CLCOD) D SETSTAGE(HZM,CLCOD,17)
 ;;D UPDPAYSTATUS^MYCHFUNC(HZM,HZMMYCH,1,0)
 I $G(HZM),$G(CLCOD) D SETSTAGE(HZM,CLCOD,18)
 ;
 Q
 ;
 ;
CHKTIP(HZM) ;
 N SSHUL,TIP
 S SSHUL=$$SSHUL(HZM)
 S TIP=SSHUL-$$TSHL^W4HZMST(HZM)
 I TIP>0 S $P(@$$^W4ORD@(HZM,"CB"),"\",10)=TIP
 Q
 ;
TAG(A) ;
 Q "<"_A_">"
 ;
 ;
ATAVA ;
 S OKATV=0
 I A["AtavaType" S ATAVATYPE=$$VL(A) G OKAT
 I A["Discount" S DISCOUNT=$$VL(A) G OKAT
 I A["SerialID" S SID=$$VL(A) G OKAT
 I A["Quantity" S QN=$$VL(A) G OKAT
 ;
 I A["Price" S PRICE=$$VL(A) D  S OKATV=9
 .I $G(CLCOD)="" Q
 .I $G(ID)="" Q
 .I $G(SID)="" S SID=0
 .I $G(QN)="" S QN=1
 .I $G(PRICE)="" S PRICE=0
 .S DISCOUNT=$G(DISCOUNT)
 .
 .I $L($G(ATAVATYPE)) D
 ..D ATVIT(ORD,CLCOD,ID,SID,QN,PRICE,DISCOUNT,ATAVATYPE)
 Q
 ;
OKAT S OKATV=1
 Q
 ;
 ;
ATVIT(ORD,CLCOD,ID,SID,QN,PRICE,DISCOUNT,TYP)
 N (JB,%ARG,%REM,ORD,CLCOD,ID,SID,QN,PRICE,DISCOUNT,TYP)
 Q:$G(ORD)'>0
 S TYP=$$FUNC^%UCASE(TYP)
 I $D(@$$^W4ORD@(ORD,"MYCH",TYP,CLCOD,ID)) Q
 Q:SID=""  S:'$G(QN) QN=1  S:'$G(PRICE) PRICE=0
 N SUM S SUM=$J(QN*PRICE,2,2)
 ;
 I TYP["ITEM" D
 .N LAST S LAST=$O(@$$^W4ORD@(ORD,99999),-1)+1
 .S @$$^W4ORD@(ORD,LAST)=SID_"\\"_$$SHEM^W4P(SID)_"\"_$J(PRICE,2,2)_"\"_QN_"\\"_$J(SUM,2,2)_"\ID:"_ID_" "_CLCOD_" gewll MYCHECK zahd"
 ;
 S @$$^W4ORD@(ORD,"MYCH","DISC",CLCOD,ID)=DISCOUNT_"\"_SID_"\"_QN_"\"_PRICE_"\"_TYP
 ;
 D ^W4CALC(ORD)
 ;
 D
 .N HZM S HZM=ORD N ORD
 .D ^W4HZMPC
 ;
 Q:'$G(DISCOUNT)
 ;
 N TSHL S TSHL=$$TSHL^W4HZMST(ORD)
 I DISCOUNT>TSHL S DISCOUNT=TSHL
 ;
 S $P(@$$^W4ORD@(ORD),"\",8)=$P($G(@$$^W4ORD@(ORD)),"\",8)+DISCOUNT
 S $P(@$$^W4ORD@(ORD),"\",11)=$P($G(@$$^W4ORD@(ORD)),"\",11)-DISCOUNT
 ;
 S @$$^W4ORD@(ORD,"MYCH","DISC",CLCOD)=$G(@$$^W4ORD@(ORD,"MYCH","DISC",CLCOD))+DISCOUNT
 ;
 D APRVATAVA^WMCHFUNC(ORD,ID,CLCOD)
 Q
 ;
 ;
CAJ(CA,TIP,SUGT,ASM) ;
 S S21="$V"_SUGT_"*MYCHECK****"_$J(CA+TIP,2,2)_"*"_$J(CA+TIP,2,2)
 S $P(S21,"*",12)=ASM
 S $P(S21,"*",27)=TIP
 Q
 ;
MSGTBL(STAM) ;
 N MSG S MSG=""
 N N S N="" F  S N=$O(@$$WTR^WMCGL@(N)) Q:N=""  D
 .S MSG=MSG_N_","
 I $L(MSG) S MSG=$E(MSG,1,$L(MSG)-1)
 Q MSG
 ;
SETSTAGE(ORD,CLCOD,STAGE) ;
 S @($$PY^WMCGL_"(ORD,CLCOD,""STAGE"")")=STAGE
 Q

WMCREP
WMCREP(MEDAT,ADDAT) ; [ 23.02.15 08:57 ] [ 21.02.15 14:46 ] [ 06.02.15 10:33 ]
 N (JB,%ARG,%REM,MEDAT,ADDAT,%REPN)
 D ^%W1ARG
 D VRM K @VRM
 ;
 S I=0,(SDISC,SPAY)=0
 S MEDT=$$^%L1DC(MEDAT,3)
 D PUT^%W1PRM("W4DMCMEDT",MEDT)
 S ADDT=$$^%L1DC(ADDAT,3)
 D PUT^%W1PRM("W4DMCADDT",ADDT)
 I ADDT<MEDT S %SC("ER")=1 Q
 ;
 F DT=MEDT:1:ADDT D
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  D
 ..I $D(@$$^W4ORD@(HZ,"MYCH")) D
 ...S N="" F  D CLR S N=$O(@$$^W4ORD@(HZ,"MYCH",N)) Q:N=""  D
 ....
 ....I N="V" D  Q
 .....S N1="" F  S N1=$O(@$$^W4ORD@(HZ,"MYCH","V",N1)) Q:N1=""  I N1?1N.N D  D SETST
 ......S ASM=$G(@$$^W4ORD@(HZ,"MYCH","V",N1,"ID"))
 ......S CLN=$G(@$$^W4ORD@(HZ,"MYCH","V",N1,"CLCOD"))
 ......S CLNAME=$G(@$$^W4ORD@(HZ,"MYCH","V",N1,"CLNAME"))
 ......I CLN,CLNAME="" S CLNAME=$P($G(@$$CL2HZA^WMCGL@(DT,CLN)),"\",2)
 ......S STV=$G(@$$^W4ORD@(HZ,"CB","V",N1))
 ......S CARDTYPE=$E($P(STV,"*"),3,6)
 ......S CARDTYP1=""
 ......I CARDTYPE S CARDTYP1=$$^W4VT(CARDTYPE)
 ......S SUM=$G(@$$^W4ORD@(HZ,"MYCH","V",N1,"AMOUNT"))+$G(@$$^W4ORD@(HZ,"MYCH","V",N1,"TIP"))
 ......S TIP=+$G(@$$^W4ORD@(HZ,"MYCH","V",N1,"TIP"))
 ......S SPAY=SPAY+SUM
 ....
 ....I N="DISC" D  Q
 .....N CLN S CLN="" F  S CLN=$O(@$$^W4ORD@(HZ,"MYCH",N,CLN)) Q:CLN=""  D
 ......N ID S ID="" F  S ID=$O(@$$^W4ORD@(HZ,"MYCH",N,CLN,ID)) Q:ID=""  D  D SETST
 .......N AA S AA=$G(^(ID))
 .......S DISCTYPE=$P(A,"\",5)
 .......S DISCSUM=$P(A,"\",1)
 .......S SDISC=SDISC+DISCSUM
 ;
 S %REPN="W4DMC"
 S %REPN("PRTN")=$$^%W1JB
 S %REPN("METRH")=MEDAT,%REPN("ADTRH")=ADDAT
 S %REPN("METRH","VIEW")=1
 S %REPN("ADTRH","VIEW")=1
 S %REPN("DAT","NM")=$$TV^%W1DICT($$^%W1LNG,"DATE")
 ;
 K @$$^%W1GLPRM
 M @$$^%W1GLPRM@("REPN")=%REPN
 ;
 D PUT^%W1PRM("HRFREP","w4dmc.jsp?JB="_JB)
END Q
 ;
 ;
VRM ;
 S VRM=$$^W4MAIN("VRM")
 Q
 ;
CLR S (ASM,DISCTYPE,DISCSUM,CARDTYPE,SUM)=""
 Q
 ;
SETST ;
 N A S A=$G(CLN)_"\"_$G(CLNAME)_"\"_$G(ASM)_"\"_$G(DISCTYPE)
 S A=A_"\"_$J($G(DISCSUM),2,2)_"\"_$G(CARDTYPE)_"\"_$G(CARDTYP1)_"\"_$J($G(SUM),2,2)_"\"_$J($G(TIP),2,2)
 S @VRM@(DT,HZ,N1)=A
 Q
 ;
ST ;
 S CLN=$P($G(@GLOB),"\",1) ; CUST CODE
 S CARDTYPE=$P($G(@GLOB),"\",6)
 S CARDTYP1=$P($G(@GLOB),"\",7)
 S x1=$P($G(@GLOB),"\",2) ; CUST NAME
 S x2=$P($G(@GLOB),"\",3) ; ASM
 S x3=$P($G(@GLOB),"\",4) ; DISC TYPE
 S x4=$P($G(@GLOB),"\",5) ; DISC SUM
 S x5=$P($G(@GLOB),"\",8) ; CA SUM
 S x6=$P($G(@GLOB),"\",9) ; CA TIP
 Q

WMCSETU
WMCSETU ; [ 26.01.15 10:19 ] [ 25.01.15 15:59 ] [ 10.04.12 03:22 ]
GET ;
 S MYCH=$G(@$$^W4PRM@("MYCH"))
 S MYCH1=""
 I $G(MYCH) S MYCH1=$$SHEM^W4P(MYCH)
 S MSD=$G(@$$^W4PRM@("MYCH","MSD"))
 S PRINT=$G(@$$^W4PRM@("MYCH","PRINT"))
 Q
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("WMCSETU","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("MYCH")
 I MSD D
 .I MYCH="" S %SC("ER")=1
 .S @$$^W4PRM@("MYCH","MSD")=MSD
 .S @$$^W4PRM@("MYCH","PRINT")=PRINT
 .S @$$^W4PRM@("MYCH")=MYCH
 Q RES
 ;
END Q

WMCSETUP
WMCSETU ; [ 28.01.15 05:04 ] [ 26.01.15 10:19 ] [ 25.01.15 15:59 ]
GET ;
 S MYCH=$G(@$$^W4PRM@("MYCH"))
 S MYCH1=""
 I $G(MYCH) S MYCH1=$$SHEM^W4P(MYCH)
 S MSD=$G(@$$^W4PRM@("MYCH","MSD"))
 S PRINT=$G(@$$^W4PRM@("MYCH","PRINT"))
 Q
 ;
SAVE(PRM) ;
 D PUT^%W3DEB("WMCSETU","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES=1
 K @$$^W4PRM@("MYCH")
 I MSD D
 .I MYCH="" S %SC("ER")=1
 .S @$$^W4PRM@("MYCH","MSD")=MSD
 .S @$$^W4PRM@("MYCH","PRINT")=PRINT
 .S @$$^W4PRM@("MYCH")=MYCH
 Q RES
 ;
END Q

WMCVWLK
WMCVWLK(CLCOD) ; [ 09.02.15 13:51 ] [ 08.02.15 13:59 ] [ 06.02.15 10:35 ]
 N (JB,%ARG,CLCOD) ;
 ;
 S HZM=$$GETP^%W1PRM("HZM") Q:HZM=""
 ;
 S FUNC="open"
 N I,OK S OK=0
 S SH=$O(@$$^W4TMPORD@(99999),-1)
 I SH>1 F I=SH-1:1:1 I $$CDST^W3HZMST(JB,I)=$$MYCHECK^W4PRM S OK=1 Q
 I OK S FUNC="join"
 ;
 D PUT^%W3DEB("WMCVWLK","HZM=HZM&FUNC=FUNC&CLCOD=CLCOD")
 D MNGTBL^WMCHFUNC(HZM,FUNC,CLCOD)
 ;
 N OK
 S OK=$$^WMCINF(HZM,CLCOD)
 I OK,FUNC="open" D
 .S @$$^W4TMPORD@("MYCH","CLIENT")=CLCOD
 ;
 ;;S RES=$$^WMCINF(HZM,CLCOD)
 ;
 D TMP^WMCINF
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" "
 W " style=""width:100%;height:100%"">",!
 ;
 I $D(@TMP)<10 D  G END
 .W "<br><br><br><br><br>",!
 .W "<span style=""color:red;font-family:Arial;font-size:"_$$^W3FSZ(20)_""">"
 . W $$^%W1DICT("NODATA!")
 .W "</span>",!
 .
 .W "<script>",!
 .  ;;W "MsgI(""NODATA!"")",!
 .  W "Sleep(2)",!
 .  W "Back()",!
 .W "</script>",!
 ;
 W " <table id=""vwlkTbl"" >",!
  S N="" F  S N=$O(@TMP@(N)) Q:N=""  I N D
  .S A=$G(^(N))
  .W "<tr>"
  . W "<td>"
  .  W $$H2U^%L1FRM(A)
  . W "</td>",!
  .W "</tr>",!
 W " </table>",!
 ;
 W "<br><br>",!
 ;
 D BUTTONS
 ;
END ;
 W "</div>",!
 Q
 ;
 ;
BUTTONS ;
 I 'OK S CLCOD=""
 W "  <table width=""30%"" "
 W ">",!
  W "<tr>"
   W " <td>",!
    W " <input type=""button"" value="""_$$^%W1DICT("SUBMIT")_""" "
    W " style=""color:green"" "
    W " onClick=""Submit('"_CLCOD_"')"" >",!
   W " </td>",!
   W " <td>",!
    W "<input type=""button"" value="""_$$^%W1DICT("BACK")_""" "
    W " style=""color:red"" "
    W " onClick=""Back()"" >",!
   W "  </td>",!
  W "</tr>",!
 W "</table>",!
 Q

WMERNM
WMERNM(FUNC) ; [ 10.10.15 12:18 ] [
 N ERR S ERR=$$^WMANS(FUNC,"ERR")
 I ERR=""!(ERR=0) D
 .S ERR=$P($$^WMANS(FUNC,"ERR0"),"{")
 .S ERR=$$INVH^%L1FRM(ERR)
 Q ERR

WMERR
WMERR(ER,NMER,LKH) ; [ 30.08.15 09:07 ] [ 12.12.12 09:35 ] [ 22.06.09 18:25 ]
 I $G(ER)="" Q
 S NMER=$G(NMER)
 I '$L(NMER) S NMER=$TR($G(@$$^W4GL("WMMSG")@(ER,1)),"|","-")
 I $L(NMER),$D(LKH) D  Q
 .S NMER=NMER_" - "_LKH
 Q ER_"\"_NMER

WMG
WMG(STAM) ; [ 12.10.15 11:58 ] [
 Q $$^W4GL("WMG")

WMGETANS
WMGETANS(STAM) ; [ 20.09.15 20:04 ] [ 17.09.15 18:32 ] [ 15.09.15 16:54 ]
 ; --- > ER \ STO ; ^WMGP
 N (JB,%ARG,%REM,ERR)
 K M1M N A,COD,LN,ST,NP,I,J,RKV,ER
 S RES=0 D ^WMIN
 D UP
 S (COD,LN)=""
 S ER=""
 N $ZT S $ZT="G ER"
 ;
 R *A:$$TOUT^WMPRM E  S ER=M1C("NOCON") G ER
 ;
 I A'=1 F I=1:1:1000 D UP R *A:1 Q:'$T  Q:$C(A)=M1P("SOH")
 I $C(A)'=M1P("SOH") S ER=1 G ER
 ;
 R STO
 ;
 N VL S VL=$TR(STO,M1P("RZ"),"^")
 D SET^WMGP(VL,"RCV","STO")
 S STO=$$UNPACK^WMSTR(M1P("SOH")_STO_M1P("EOT"))
 ;
 N NP S NP=$$NP^WMGP
 N GP S GP=$$^WMGP_"("_+$H_","_JB_","_NP_",""RCV"",""STO"")"
 D ^WMSPLIT(GP,STO,M1P("RZ"))
 ;
 S ER=0
 C $$^WMPORT
 Q ER_"\"_STO
 ;
 ;
ER ;
 S:$G(ER)="" ER=$ZS
 D SET^WMGP(ER,"ER") C $$^WMPORT
 Q ER
 ;
UP U $$^WMPORT:(NOWRAP:NOECHO:NOESC:NOCENABLE:PASTHRU:TERM=M1P("EOT"))
 Q

WMGETDET
WMGETDET(STAM) ; [ 10.10.15 12:10 ] [ 15.09.15 17:34 ] [ 12.09.15 10:07 ]
 N (JB,%ARG,%REM)
 D ^WMIN
 S MCARD=$$^WMPARAM("MPCARD")
 S ARM=$$^WMPARAM("MPARM")
 Q $$SNDCRD(MCARD,ARM)
 ;
 ;
SNDCRD(MCARD,ARM)
 N RES S RES=$$^WMTRANS("GET",$$GET^WMPREPSN(MCARD,ARM))
 S MSG=M1C("OK")
 I RES'=M1C("OK") S MSG=RES G ESND
 D ^WMRCV2V("GET")
 I $D(M1LKH),$G(RCD)=34 S MSG=RCD G ESND
 I $G(RCD) S MSG=RCD_"\"_$$^WMGM(RCD,$$^WMERNM("GET")) G ESND
 ;
 D ^WMPREPVW("GET")
 ;
ESND Q MSG
 ;

WMGETINF
WMGETINF(STAM) ; [ 17.10.15 11:32 ] [ 10.10.15 12:10 ] [ 16.09.15 10:44 ]
 N (JB,%ARG,%REM,MPLOD)
 D ^WMIN
 S MCARD=$$^WMPARAM("MPCARD")
 S ARM=$$^WMPARAM("MPARM")
 ;
 S RES=$$^WMTRANS("BGD",$$BGD^WMPREPSN(MCARD,ARM))
 S MSG=M1C("OK")
 I RES'=M1C("OK") S MSG=RES G END
 ;
 D ^WMRCV2V("BGD")
 ;
 I $G(RCD) S MSG=RCD_"\"_$$^WMGM(RCD,$$^WMERNM("BGD")) G END
 ;
 I '$D(MPLOD) D ^WMPREPVW("BGD")
 I $D(MPLOD) D
 .D CP^WMANS("BGD","BLF","LOD","BLF")
 .D ^WMPREPVW("LOD")
 ;
END Q MSG
 ;
 ;
PC ;
 N (JB,%ARG)
 N I F I="COP","EMP","BLF" D
 .S @I=$$^WMANS("BGD",I)
 ;
 S KOT="dxzi xexia;;;"_COP_";;"_EMP_";"_BLF
 S MES0=$$^WMANS("BGD","MES0")
 ;
 D ^WMPCMSG(MES0,,KOT)
 Q

WMGM
WMGM(ER,NMER,LKH) ; [ 08.10.15 06:48 ] [ 04.09.15 14:01 ] [ 23.08.15 07:55 ]
 N (JB,%ARG,ER,NMER,LKH)
 I $G(ER)="" Q
 S NMER=$G(NMER)
 I '$L(NMER) S NMER=$G(@$$^W4GL("WMMSG")@(ER,1))
 Q $$CLWEB^%L1FRM(NMER)

WMGP
WMGP(STAM) ; [ 18.07.17 11:08 ] [ 15.07.16 15:30 ] [ 20.09.15 18:59 ] 
 Q $$^W4GL("WMGP")
 ;
SET(ST,SUG1,SUG2)
 N $ZT
 N BL S BL=1800
 N H S H=$$^W4DZ
 N NP S NP=$$NP
 I '$D(TSS) D ^%L1TS
 ;
 I $G(SUG2)="" D  Q
 .S @$$WMGP@(H,JB,NP,SUG1)=$TR($E(ST,1,BL),TSS,TS0)
 .S @$$WMGP@(H,JB,NP,SUG1,"H")=$H
 .I $L(ST)>BL D
 ..S @$$WMGP@(H,JB,NP,SUG1_1)=$TR($E(ST,BL+1,2*BL),TSS,TS0)
 ;
 S @$$WMGP@(H,JB,NP,SUG1,SUG2)=$TR($E(ST,1,BL),TSS,TS0)
 S @$$WMGP@(H,JB,NP,SUG1,SUG2,"H")=$H
 I $L(ST)>BL D
 .S @$$WMGP@(H,JB,NP,SUG1_1,SUG2)=$TR($E(ST,BL+1,2*BL),TSS,TS0)
 Q
 ;
NP(STAM) ;
 N H S H=+$H
 Q $O(@$$WMGP@(H,JB,9999999),-1)+1
 
 

WMGPOS
WMGPOS(STAM) ; GET SETUP PARAMETERS [ 28.09.15 12:07 ] [ 17.09.15 19:07 ] [ 04.09.15 14:11 ]
 N (JB,%ARG)
 N STR,STROU S RES=0
 K M1V
 S STR=$$SET^WMPREPSN
 S RES=$$^WMCON(STR)
 ;
 I RES'=M1C("OK") S MSG=RES_"\"_$$^WMGM(RES,$G(ERR)) G END
 S STO=$$^WMGETANS
 S ER=$P(STO,"\") I ER S MSG=ER_"\"_$$^WMGM(ER,$G(ERR)) G END
 ;
 D SETUP^WMPREPRC("SET",$P(STO,"\",2,200)) ; --> ^WMG("RCV","SETUP")
 S RES=M1C("OK")
 S MSG=RES
 D ^WMPCMSG($$^WMANS("MES0"))
END ;
 D CLOSE^WMCON
 Q MSG

WMHEAD
WMHEAD ; [ 06.09.15 10:24 ] [ 23.08.15 08:14 ] [ 16.12.08 01:48 ]
 N (JB,%ARG,KOT)
 N MAS,POP,SPK
 D ^WMIN
 S MAS(10)=$ZD($H,"24:60  DD/MM/YY")
 S POP=$$POPSETUP^WMPRM Q:POP=""
 S SPK=$P(POP,M1P("RZV"))
 I SPK["POP=" S SPK=$P(SPK,"POP=",2,20)
 ;
 I $D(KOT) D
 .S MAS(7)=$P(KOT,";"),MAS(6)=$P(KOT,";",2)
 .S MAS(7)=MAS(7)_$J("",18-$L(MAS(7))\2)
 .S MAS(5)=$P(KOT,";",3)
 .S MAS(30)=$P(KOT,";",4)
 .S MAS(32)=$P(KOT,";",6)
 .S MAS(34)=$P(KOT,";",8)
 .S MAS(36)=$P(KOT,";",7)
 .S MAS(38)=$P(KOT,";",5)
 ;
 S MAS(15)=$$INVH^%L1FRM(SPK)
 S MAS(20)=$P(POP,M1P("RZV"),2)
 S MAS(25)=$$MASOF^WMPRM
 S MAS("EHAD")="NOPROGON"
 ;
 S LAB="M1PCHD" D ^W4CB
 Q

WMHZMP
WMHZMP ; [ 30.08.15 09:23 ] [ 23.08.15 15:15 ] [ 10.06.08 14:51 ]
 N (JB,%ARG,HZM,COP,MCARD,M1CRD) D ^WMIN
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S OK=0,HZM=0
 ;
 F NMB=1:1:999 D  Q:OK
 .I $$NOMP(NMB) Q
 .I $G(@$$^W4GL("P1HL")@(NMB)) Q
 .S HZ=$O(@$$^W4GL("P1HL")@(NMB,999),-1) I HZ="" S OK=1 Q
 .I $$^W4CLOSE(HZM) S OK=1 Q
 ;
 I 'OK S MSG="0;NOTFREETABLES" G END
 S SHULH=NMB
 S @$$^W4GL("P1HL")@(NMB)=1
 S THZMP=$$^W4MAIN("THZMP")
 ;
 K @THZMP
 S N="",I=0 F  S N=$O(@$$^W4GL("WMGT")@("RCV",JB,"BLL","LST",N)) Q:N=""  D
 .S A=$G(^(N))
 .S CODP=$$SPA^%L1FRM($P(A,"|"))
 .S NAME=$$SPA^%L1FRM($P(A,"|",2))
 .S NAME=$$INVH^%L1FRM(NAME)
 .S MH=$J($$SPA^%L1FRM($P(A,"|",3))*.01,2,2)
 .S I=I+1,@THZMP@(I)=CODP_"\"_NAME_"\"_MH
 ;
 ;;S %SCRN="M1HZMP"
 ;;S ^SCR(%SCRN,"G","MAX")=$O(^THZMP(%L3MYDVN,99999),-1)
 ;;D ^%L1SC I %BS G END
 ;
 D PUT
TS N M1HZMP S %S=4,HZM=HZMS,M1HZMP=""
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .S A=$G(^(I)) Q:A=""
 .D PLUTOT($P(A,"\"),$P(A,"\",5),$P(A,"\",7),$P(A,"\",4))
 ;
END K @THZMP S @$$^W4GL("P1HL")@(NMB)=0 Q
 ;
 ;
NOMP(NMB) ;
 I $TR($$SUGL1^W4L(NMB),".","")="MP"  Q 0
 Q 1
 ;
PUT ;
 I $P($G(@THZMP@(1)),"\")?.P S MSG="0;NOTITEMSINORDER" Q MSG
 S HZMS=$$^W4NEWHZ(NMB)
 K @$$^W4ORD@(HZMS) S @$$^W4ORD@(HZMS)=""
 N K S K=0
 F I=1:1 Q:'$D(@THZMP@(I))  D
 .S A=$G(^(I)) Q:'$P(A,"\",4)
 .S K=K+1
 .S ST=$G(@$$^W4ORD@(HZMS,K))
 .S $P(ST,"\",1)="M"_$P(A,"\")
 .S $P(ST,"\",3)=$P(A,"\",2)
 .S $P(ST,"\",4)=$P(A,"\",3)
 .S $P(ST,"\",5)=$P(A,"\",4)
 .S $P(ST,"\",6)=0
 .S $P(ST,"\",7)=$P(A,"\",5)
 .S $P(ST,"\",8,9)="\\"
 .S @$$^W4ORD@(HZMS,K)=ST
 ;
 S STHD=SHULH
 S $P(STHD,"\",4)=$ZD($H,"DD.MM.YY  24:60")
 S $P(STHD,"\",11)=TSHL
 S $P(STHD,"\",18)=MLZR0
 S @$$^W4ORD@(HZMS)=STHD
 ;
 S LASTU=$P($H,",",2)
 S LKH=$$^WMMLKH(COP,M1CRD)
 S @$$^W4GL("WMHL")@(LKH,HZMS)=$H
 S @$$^W4GL("WMHLI")@(HZMS)=LKH
 D ^W4GIBHZ(HZMS)
 L  Q
 Q
 ;
PLUTOT(MPAR,COL,SUM,PRC) ;
 N ST
 S PAR=$$^WMPAR(MPAR)
 S DAT=$$^%L1DC(P1DZ,2)
 L +@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)
 S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR)) D SUMST
 S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR)=ST
 S ST=$G(@$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)) D SUMST
 S @$$^W4GL("PLUTOT")@($E(DAT,1,4),MRK,PAR)=ST
 ;
 D
 .D SHAA
 .S ST=$G(@$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)) D SUMST
 .S @$$^W4GL("PLUTOT")@(DAT,MRK,PAR,SHAA)=ST
 ;
 L -@$$^W4GL("PLUTOT")@(DAT,MRK,PAR) Q
 ;
SUMST ;
 S $P(ST,"*",1)=$P(ST,"*",1)+COL
 S $P(ST,"*",2)=$P(ST,"*",2)+SUM
 S $P(ST,"*",3)=PRC
 Q
 ;
SHAA ;
 S SHAA=$$T^%L1TIME($P($H,",",2))
ESHAA S SHAA=+$TR(SHAA," ","")
 Q

WMIN
WMIN ; [ 23.08.15 08:48 ] [ 17.04.08 14:39 ] [ 10.04.08 10:50 ]
 N CD,I,T
 K M1C
 F I=1:1 S T=$T(LIST+I) Q:T=""  Q:T["Q  ;"  S CD=$P(T,";",2) I CD'="" S M1C(CD)=$P(T,";",3)
 K M1P
 S M1P("RZ")=$C(28)
 S M1P("RZV")="|"
 S M1P("RZR")=";"
 S M1P("SOH")=$C(1)
 S M1P("ENC")=0
 S M1P("STX")=$C(2)
 S M1P("ETX")=$C(3)
 S M1P("EOT")=$C(4)
 Q
LIST ;
 ;OK;0;
 ;NOCON;4;
 Q  ;

WMINDAY
WMINDAY(STAM) ; [ 10.10.15 12:10 ] [ 18.09.15 11:52 ] [
 S RES=$$^WMTRANS("DAY",$$DAY^WMPREPSN)
 I $P(RES,"\")'=M1C("OK") G END
 D ^WMRCV2V("DAY")
 I $G(RCD) Q RCD_"\"_$$^WMGM(RCD,$$^WMERNM("DAY"))
 ;
 S KOT="inei legz`"
 D ^WMPCMSG($$^WMANS("DAY","MES0"),,KOT)
END Q RES

WMINIT
WMINIT ; [ 10.09.15 16:12 ] [ 29.08.15 16:30 ] [ 12.07.15 06:57 ]
 D KILL^WMPARAM
 D CLEAR^WMANS("")
 K @$$^WMTMP
 Q

WMLKH
WMLKH(STAM) ; [ 19.10.15 20:20 ] [ 10.10.15 12:11 ] [ 16.09.15 09:38 ]
 N (JB,%ARG)
SND D ^WMIN
 S ARM=$$^WMPARAM("MPARM")
 S MCARD=$$^WMPARAM("MPCARD")
 ;
 F I="LKHNAME","MIN","STREET","BAIT","DIRA","IR","EMAIL" D
 .S @I=$$^WMANS("WMLKH",I)
 ;
 D CLEAR^WMANS("WMLKH")
 ;
 S INFO=$$WIN(LKHNAME)_M1P("RZV")_$S(MIN:"M",1:"F")_M1P("RZV")
 S INFO=INFO_$$WIN(STREET)_" "_BAIT_"/"_DIRA_" ,"_$$WIN(IR)
 S INFO=INFO_M1P("RZV")_EMAIL
 ;
 S RES=$$^WMTRANS("ACT",$$ACT^WMPREPSN(MCARD,ARM,INFO))
 ;
 S MSG=M1C("OK")
 I $P(RES,"\")'=M1C("OK") S MSG=RES G END
 ;
 D ^WMRCV2V("ACT")
 I $G(RCD) S MSG=RCD_"\"_$$^WMGM(RCD,$$^WMERNM("ACT")) G END
 ;
 D ^WMPREPVW("ACT")
 ;
 S KOT="qihxk legz`;;;"_$G(COP)_";;"_$G(EMP)_";"_$G(BLF)
 N MES S MES=$$^WMANS("ACT","MES0")
 I $L(MES) D ^WMPCMSG(MES,,KOT)
END Q MSG
 ;
 ;
WIN(RKV) ;
 D:'$D(TS1) ^%L1TS
 Q $TR($$INVH^%L1FRM(RKV),TS0,TS1)
 ;
 ;
SAVE(PRM) N (JB,%ARG,%REM,PRM,SCRN) D ^%L1TS
 D PUT^%W3DEB("WMLKH","SCRN=SCRN&PRM=PRM")
 S OK=$$^WMSV2ANS(SCRN,PRM)
 Q OK

WMLOD
WMLOD(MCARD,ARM,SUM,PAYM) ; [ 17.10.15 06:26 ] [ 08.10.15 08:28 ] [ 15.09.15 18:54 ]
 N (JB,%ARG,MCARD,ARM,SUM,PAYM,RCD)
 K @$$^W4GL("WMGT")@("RCV",JB,"LOD") S RCD=""
SND D ^WMIN,^%L1TS
 S ST=$$LOD^WMPREPSN(MCARD,ARM,SUM,PAYM)
 S RES=$$^WMCON(ST)
 I RES'=M1C("OK") S MSG=RES_"\"_$$^WMGM(RES,$G(ERR)) D CLOSE^WMCON S RCD=RES G END
 S STO=$$^WMGETANS
 D PUT^%W3DEB("WMLOD","STO=STO")
 ;
 S ER=$P(STO,"\") I ER S MSG=ER_"\"_$$^WMGM(ER,$G(ERR)) D CLOSE^WMCON S RCD=ER G END
 S RCD=+$P(STO,"RCD=",2)
 ;
 I RCD D  G END
 .N ERR S ERR=$TR($P($P(STO,"ERR=",2),"{"),TS1,TS0)
 .S ERR=$TR(ERR,TSS,TS0)
 .S MSG=RCD_"\"_$$INVH^%L1FRM(ERR)
 ;
 S RES=M1C("OK")
 D LOD^WMPREPRC(STO)
 D ^WMRCV2V("LOD")
 ;
 Q 0
 ;
END Q MSG
 ;

WMMESERR
WMMESERR(A) ; [ 20.09.15 18:51 ] [ 16.09.15 10:23 ] [ 23.08.15 09:20 ]
 N STR,N1,STPC S:A["=" A=$P(A,"=",2,255)
 D ^WMPC(A,0)
 S STR=""
 S N1="" F  S N1=$O(STPC(N1)) Q:N1=""  S STR=STR_STPC(N1)_" "
 S STR=$$INVH^%L1FRM(STR)
 Q STR

WMMLKH
WMMLKH(COP,MCARD) ; [ 23.08.15 15:17 ] [ 21.09.10 14:54 ] [ 06.04.08 11:28 ] [
 Q COP_"-"_$TR($J($E(MCARD,$L(MCARD)-7,$L(MCARD)),8)," ",0)

WMNALAN
WMNALAN(STAM) ; [ 23.08.15 15:18 ] [ 25.03.08 12:22 ] [ 09.01.06 15:17 ] [
 I $L($$PORT^WMPRM)=4 Q 1
 Q 0

WMPAR
WMPAR(PAR) ; [ 23.08.15 15:19 ] [ 15.04.08 10:50 ] [
 N PRT S PRT=PAR
 I $E(PAR)="M" S PRT=$G(@$$^W4PRM@("MP","PAR"),77777)
 Q PRT

WMPARAM
WMPARAM(RKV)  ; [ 05.09.15 14:01 ] [ 29.08.15 12:52 ] [ 21.06.15 20:56 ]
 Q $G(@$$^W4MAIN("WMPARAM")@(RKV))
 ;
SET(RKV,VL) ;
 S @$$^W4MAIN("WMPARAM")@(RKV)=$G(VL)
 Q
 ;
KILL ;
 K @$$^W4MAIN("WMPARAM")
 Q

WMPAY
WMPAY ; [ 29.04.16 12:17 ] [ 30.03.16 18:49 ] [ 26.10.15 17:01 ] 
 Q
 ;
TSHMP(TSHMP) ;
 N (JB,%ARG,%REM,TSHMP,ONESW,MPBON)
 D ^WMIN
 N HZM S HZM=$$GETP^%W1PRM("HZM") I '$$^W4ISORD(HZM) Q "ERRCD\NOTORDER"
 I TSHMP>$$ITRA^W4HZMST(HZM) D  Q "ERRCD\SUMTOOBIG"
TSHMP1 N MPSUM S MPSUM=TSHMP
 S SHNH=$$SHNH^W4HZMST(HZM)
 S MCARD=$$^WMPARAM("MPCARD")
 S PIN=$$^WMPARAM("MPARM")
 S NP=$$NEWNP^W4HZMP(HZM)
 S @$$^W4HZMP(HZM,NP,"TSHMP")=TSHMP
 ;
 D VAL ; PRITIM
 D TSU ; -- SHULAM BE MP
 D TRA ; -- HAZMANA
 D TDS ; -- HANAHA
 ;
 S TRT="T"
 S MAS="N"
 S MAM="0"
 S PTF="0"
 ;
 S STR="TRT="_TRT_M1P("RZ")_"VAL="_VAL_M1P("RZ")_"TSU="_TSU_M1P("RZ")
 S STR=STR_"MAS="_MAS_M1P("RZ")_"MAM="_MAM_M1P("RZ")
 S STR=STR_"TRA="_TRA_M1P("RZ")_"TDS="_TDS_M1P("RZ")
 ;
 N FN S FN="ADD"
 K @$$^W4GL("WMGT")@("RCV",JB,FN,"ITM")
 ;
 D
 .S RES=$$^WMTRANS("ADD",$$ADD^WMPREPSN(MCARD,PIN,STR))
 .I $G(RES)'=M1C("OK") Q
 .N FN S FN="ADD"
 .D ^WMRCV2V(FN)
 .S SHALAV=""
 .
 .I $G(RCD),RCD<10 D
 ..H 2 S FN="RDD" S RES=$$^WMTRANS(FN,$$RDD^WMPREPSN(MCARD,PIN,STR))
 ..I $G(RES)'=M1C("OK") Q
 ..D ^WMRCV2V("RDD>ADD")
 .
 .I $G(RCD) S RES=RCD_"\"_$$^WMGM(RCD,$$^WMERNM("ADD")) Q
 .
 .S COMP=COP
 .S LKH=$$^WMMLKH(COP,MCARD)
 .S ASM=TRI
 .S SHUL=TRS
 .
 .S HNHMP=DIS
 .S @$$^W4HZMP(HZM,NP,"CARD")=MCARD
 .S @$$^W4HZMP(HZM,NP,"HNH")=HNHMP
 .S @$$^W4HZMP(HZM,NP,"COP")=COP
 .S @$$^W4HZMP(HZM,NP,"LKH")=LKH
 .S @$$^W4HZMP(HZM,NP,"LKH1")=EMP
 .S @$$^W4HZMP(HZM,NP,"ASM")=ASM
 .
 .I HNHMP D ^W4ADDPAR(HZM,$$CDHNHMP^WMPRM,1,-HNHMP,0,"zillk dgpd qtihlen")
 .;
 .I TRS D
 ..N (JB,%ARG,COP,TRS,ASM,HZM,HNHMP,SHUL,SHULA,TSHL,NP) D ^W4IN
 ..S TSHL=$$TSHL^W4HZMST(HZM)
 ..S CUSN=$$^WMPREF_COP,ASR=TRS,LKAH=0,LKHNH=LKAH*ASR*.01,HZMLK=$G(ASM)
 ..S P1HZHB2=""
 ..S PTKCNT=$O(@$$^W4ORD@(HZM,"CB","ASR",99999),-1)+1
 ..D KILL^%W1PRM("HBNOW") I '$$CRED(COP) D PUT^%W1PRM("HBNOW",1)
 ..S MAKOR=1,LKHN=CUSN,FLP=0
 ..S P1TNOPR=3 D ^W4ASR ;;K P1TNOPR
 ..D ASR^W4HZTH(PTKCNT)
 ..D KILL^%W1PRM("HBNOW")
 ..S @$$^W4HZMP(HZM,NP)=PTKCNT
 ..S @$$^W4HZMP(HZM,NP,"CRED")=$$CRED(COP)
 .
 .I $D(@$$^W4GL("WMGT")@("RCV",JB,FN,"ITM"))>9 D
 ..N N,SUM,PRF S SUM=0,PRF=1,PRY=0,HNHMPP=0
 ..S N="" F  S N=$O(@$$^W4GL("WMGT")@("RCV",JB,FN,"ITM",N)) Q:N=""  D
 ...N A S A=$G(^(N)) Q:A=""
 ...S VID=$P(A,M1P("RZV"),$L(A,M1P("RZV")))
 ...
 ...I VID["Y" D PCP(A) S PRY=1 Q  ; -- BONUS
 ...
 ...I VID["D" D
 ....N KAMP,MHP,SUMP
 ....S KAMP=$P(A,M1P("RZV"),3)*.01
 ....S MHP=$P(A,M1P("RZV"),4)*.01
 ....S SUMP=$P(A,M1P("RZV"),5)*.01
 ....S HNHMPP=HNHMPP+(KAMP*MHP)-SUMP
 ..
 ..S @$$^W4HZMP(HZM,NP,"HNHMPP")=HNHMPP
 ..I HNHMPP D
 ...D ^W4ADDPAR(HZM,$$CDHNHMPP^WMPRM,1,-HNHMPP,0,"mihixtl dgpd qtihlen")
 .
 .
 .S @$$^W4HZMP(HZM,NP,"SHUL")=SHUL
 .I $G(ONESW) S @$$^W4HZMP(HZM,NP,"V")=1
 .S MES0=$$^WMANS("ADD","MES0")
 .
 .I $L(MES0),TRS!HNHMP!$$CASHBACK^WMPRM D  ;-- MAKOR
 ..N IND S IND=NP
 ..S KOT=HZM_"-"_IND_";xewn;"_$S($$CRED(COP):" i`xy` oeayg",1:" qn zipeayg")_";"_$G(COP)_";"_TRI_";"_$G(EMP)
 ..S MSG="{BIG}{RIGHT}"_$J(TRS+HNHMP,2,2)_" : dgpd iptl{NL}"
 ..S MSG=MSG_"{BIG}{RIGHT}"_$J(HNHMP,2,2)_" : dgpd{NL}"
 ..S MSG=MSG_"{BIG}{RIGHT}"_$J(TRS,2,2)_" : mley{SMALL}"
 ..D ^WMPCMSG(MES0,MSG,KOT,$$^W4HZMP(HZM,NP,"PC"))
 ..I PRY D ^W4CUT(PRINT,$G(%MDP("CUT")))
 .
 ;
 D SET^WMANS("ADD","TSHMP",$J(TSHMP,2,2))
 D SET^WMANS("ADD","HNHMPP",$J($G(HNHMPP),2,2))
 S ITRA=TSHMP-$G(HNHMP)-$G(HNHMPP)-$G(TRS)
 D SET^WMANS("ADD","ITRA",$J(ITRA,2,2))
 ;
 I RES D SET^WMANS("ADD","ERR",$P(RES,"\",2))
 ;
 D ^WMPREPVW("ADD")
 ;
 I $P(RES,"\")'=0 Q RES
 ;
 S N="" F  S N=$O(@$$^W4GL("WMGT")@("RCV",JB,FN,"ITM",N)) Q:N=""  D
 .N A S A=$G(^(N)) Q:A=""
 .N IND S IND=$O(@$$^W4ORD@(HZM,"MP","ITM",LKH,99999),-1)+1
 .S @$$^W4ORD@(HZM,"MP","ITM",LKH,IND,N)=A
 ;
TSHMPE I '$G(ONESW) Q 0
 Q $P(RES,"\")_";"_$G(HNHMP)_";"_$G(HNHMPP)_";"_$G(ASM)_";"_$G(TRS)
 ;
 ;
VAL ;
 N I,I1,PAR,N,N1,CODT,CODT1,PAR,COL,COLT,COLT1,SUMT,SUMT1
 ;
 S VAL="",I1=0
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .N A S A=$G(^(I)) Q:A=""
 .S PAR=$$PAR(I)
 .I 'PAR,PAR'="0" Q
 .I $E(PAR)="-" Q
 .S I1=I1+1
 .N COL S COL=$$COL(I) Q:'COL
 .S VAL=VAL_I1_M1P("RZV")_PAR_M1P("RZV")_COL_M1P("RZV")_$$PRC(I)_M1P("RZV")_$$SUM(I)_M1P("RZV")_"0"_M1P("RZR")
 .
 .S N="" F  S N=$O(@$$^W4ORD@(HZM,I,N)) Q:N=""  I N?1N.N D
 ..I $D(^(N))<10 D  Q
 ...S I1=I1+1
 ...N COLT S COLT=$$COLT(I,N) Q:'COLT
 ...S VAL=VAL_I1_M1P("RZV")_N_M1P("RZV")_COLT_M1P("RZV")_$$PRCT(I,N)_M1P("RZV")_$$SUMT(I,N)_M1P("RZV")_PAR_M1P("RZR")
 ..
 ..N COLT1,PRCT1
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,I,N,N1)) Q:N1=""  I N1 D
 ...S I1=I1+1,COLT1=100
 ...N STT S STT=$G(^(N1))
 ...S CODT1=$P(STT,"\") I CODT1 S COLT1=$J($P(STT,"\",3)*100,0,0)
 ...I CODT1="" S CODT1=$P(STT,"\",4)
 ...N PRCTSF S PRCTSF=$P(STT,"\",7)
 ...I 'PRCTSF S PRCTSF=$P($G(@$$^W4ORD@(HZM,I,N)),"\",2)
 ...S PRCT1=$J(PRCTSF*100,0,0)
 ...S SUMT1=COLT1*PRCT1*.01
 ...Q:CODT1=""
 ...S VAL=VAL_I1_M1P("RZV")_CODT1_M1P("RZV")_COLT1_M1P("RZV")_PRCT1_M1P("RZV")_SUMT1_M1P("RZV")_PAR_M1P("RZR")
 ;
 I SHNH<0 D
 .S I1=I1+1
 .S VAL=VAL_I1_M1P("RZV")_"0"_M1P("RZV")_100_M1P("RZV")_$J(-SHNH*100,0,0)_M1P("RZV")_$J(-SHNH*100,0,0)_M1P("RZV")_"0"_M1P("RZR")
 ;
 I $G(DMSH) D
 .S I1=I1+1
 .S VAL=VAL_I1_M1P("RZV")_"0"_M1P("RZV")_100_M1P("RZV")_$J(DMSH*100,0,0)_M1P("RZV")_$J(DMSH*100,0,0)_M1P("RZV")_"0"_M1P("RZR")
 ;
 I $$CASHBACK^WMPRM,$G(MPBON) D
 .S I1=I1+1
 .S VAL=VAL_I1_M1P("RZV")_$$CASHBACK^WMPRM_M1P("RZV")_100_M1P("RZV")_"0"_M1P("RZV")_"0"_M1P("RZV")_"0"_M1P("RZR")
 ;
 S VAL=$E(VAL,1,$L(VAL)-1)
 ;;W !,VAL
 Q
 ;
TSU ;
 S TSU=$J(MPSUM*100,0,0)
 Q
 ;
TRA ;
 S TRA=901_HZM
 Q
 ;
TDS ;
 N HNH S HNH=$$HNH^W4HZMST(HZM)
 I HNH["=" S HNH=$P(HNH,"=",2)
 I HNH<0 S HNH=0
 S TDS=$J(HNH*100,0,0)
 Q
 ;
A S A=$G(@$$^W4ORD@(HZM,NS)) Q
 ;
 ;
PAR(NS) ;
 D A
 Q $P(A,"\")
 ;
COL(NS) ;
 D A
 Q $J($P(A,"\",5)*100,0,0)
 ;
PRC(NS) ;
 D A
 Q $P(A,"\",4)*100
 ;
SUM(NS) ;
 N HN,STN S STN=$G(@$$^W4ORD@(HZM,NS+1))
 N PARN,SUMN,SUM
 S PARN=$P(STN,"\")
 S SUMN=$P(STN,"\",7)
 S SUM=$$COL(NS)*$$PRC(NS)*.01
 I PARN["-",PARN["%" S SUM=SUM+(SUMN*100)
 Q SUM
 ;
COLT(NS,TSF) ;
 D AT
 Q $P(AT,"\",3)*100
 ;
PRCT(NS,TSF) ;
 D AT
 Q $P(AT,"\",2)*100
 ;
SUMT(NS,TSF) ;
 Q $$COLT(NS,TSF)*$$PRCT(NS,TSF)*.01
 ;
AT S AT=$G(@$$^W4ORD@(HZM,NS,TSF))
 Q
 ;
PCP(A) ;
 N CODP,COL,PRC,SUM D ^%L1TS
 N GLPC S GLPC=$$^W4PC
 S IND=$O(@GLPC@(PRINT,9999999),-1)+1
 I PRF D  S PRF=0
 .S @GLPC@(PRINT,IND)="" S IND=IND+1
 .S @GLPC@(PRINT,IND)=$TR(": icizr yeninl qepea ihixtl i`kf gewl",TS0,TSS) S IND=IND+1
 .S @GLPC@(PRINT,IND)="---------------------------------------" S IND=IND+1
 .S @GLPC@(PRINT,IND)=$TR(": mekq : xign :zenk:      hixt my     :",TS0,TSS) S IND=IND+1
 .S @GLPC@(PRINT,IND)="---------------------------------------" S IND=IND+1
 ;
 S CODP=$P(A,M1P("RZV"),2)
 S COL=$P(A,M1P("RZV"),3)*.01
 S PRC=$J($P(A,M1P("RZV"),4)*.01,2,2)
 S SUM=$J($P(A,M1P("RZV"),5)*.01,2,2)
 ;
 N ST S ST=$J(SUM,7,2)_" "_$J(PRC,6,2)_" "_$J(COL,4)_" "_$J($TR($$SHEM^W4P(CODP),TS0,TSS),18)
 S @GLPC@(PRINT,IND)=ST
 Q
 ;
PCMP(SH) ;
 N A S A=$G(@$$TMP@(SH)) Q:A=""
 N CRED,COP,SHULA S CRED=$P(A,"\",8),COP=$P(A,"\",6),SHULA=$P(A,"\",3)
 N KOT S KOT=HZM_"-"_SH_";wzrd;"_$S(CRED:" gelyn zcerz",1:" zipeayg")_";"_$G(COP)
 D ^WMHEAD
 Q
 ;
DELST(SH) ;
 K @$$^W4ORD@(HZM,"MP","TMP",SH)
 S %SC("DEL")=1
 Q
 ;
TMP(STAM) ;
 Q $$^W4MAIN("TMP")
 ;
TMPBG(STAM)
 N A S A=$$TMP
 Q $E(A,1,$L(A)-1)_","
 ;
CRED(COP) ;
 I $$ISCR^W4L($$^WMPREF_COP) Q 1
 Q 0
 
 
 

WMPAYC
WMPAYC(STAM) ; [ 14.10.15 09:24 ] [ 13.10.15 14:20 ] [ 12.10.15 16:48 ]
 N (JB,%ARG)
 ;
 S HZM=$$GETP^%W1PRM("HZM") I 'HZM Q "-1\NOTORD"
 S SUMCA=$$GET^W4TMPPAY(3,"SUM") I 'SUMCA Q "-2\NOTSUM"
 S VIZ=$$GET^W4TMPPAY(3,"CREDITCARDNUMBER") I 'VIZ Q "-3\NOTCARD"
 ;
 D SET^WMPARAM("MPCARD",VIZ)
 D SET^WMPARAM("MPARM",0)
 D SET^WMPARAM("ORD","PAY")
 ;
 S ONESW=1
 N A S A=$$TSHMP^WMPAY(SUMCA) D  I A Q A
 ;
 S HNMP=$P(A,";",2)
 S HNMPP=$P(A,";",3)
 S ASMMP=$P(A,";",4)
 S SHULMP=$P(A,";",5)
 ;
 S RZN=RZN-HNMP-SHULMP I RZN<0 S RZN=0
 ;
 D PUT^W4TMPPAY(3,"SUM",$J(RZN,2,2))
 ;
 Q 0

WMPC
WMPC(STR,PRPC,INV) ; [ 26.05.22 14:59 ] [ 21.09.15 09:46 ] [ 20.09.15 14:25 ] 
 N ST,STPC,STIND,STSPACE,IND,GWPC,PRBIG,M1PCI,SUBST,NL,BIG,SMALL,BOLD,CENTER,ITAL,RIGHT,LEFT
 D ^%L1TS
 I '$D(PRPC) S PRPC=1
 ;
 S TMPPC=$$^WMTMPPC
 K @TMPPC
 ;
 K STPC
 I PRPC,'$D(PRINT)!'$D(%MDP) D ^W4MDPPC
 ;
 D IN
 ;
 S STR=$$RPL^%L1FRM(STR,"{P}",RIGHT_NL)
 S IND=1 S GWPC=0 I PRPC S GWPC=39
 ;
 F M1PCI=1:1:$L(STR,NL) D  S IND=IND+1
 .S SUBST=$P(STR,NL,M1PCI) Q:'$L(SUBST)
 .D SMALL
 .S PRBIG=0
 .I SUBST[BIG D  S PRBIG=1
 ..D BIG
 .I SUBST[SMALL D
 ..D SMALL
 .I SUBST[BOLD D
 ..D BOLD
 .I SUBST[ITAL D
 ..D ITAL
 .
 .I SUBST["LEFT" D LEFT S ST=$$SPL^%L1FRM(SUBST) D WST(ST) D ENDST Q
 .I SUBST["RIGHT" D RIGHT S ST=$J($$SPA^%L1FRM(SUBST),GWPC\$S($G(PRBIG):2,1:1)) D WST(ST) D ENDST Q
 .I SUBST["CENTER",PRBIG D CENTER D WST($$CENTRB^%L1FRM(SUBST)) D ENDST Q
 .I SUBST["CENTER" D CENTER D WST($$CENTR^%L1FRM(SUBST)) D ENDST Q
 .
 .D WST(SUBST) ;D ENDST
 Q
 ;
ENDST Q
 ;
 ;
IN ;
 S NL="{NL}"
 S BIG="{BIG}"
 S SMALL="{SMALL}"
 S BOLD="{BOLD}"
 S CENTER="{CENTER}"
 S RIGHT="{RIGHT}"
 S LEFT="{LEFT}"
 S ITAL="{ITALIC}"
 Q
 ;
BIG I $G(PRPC) D WST($G(%MDP("B")),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,BIG,"")
 Q
 ;
SMALL I $G(PRPC) D WST($G(%MDP("N")),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,SMALL,"")
 Q
 ;
BOLD I $G(PRPC) D WST($G(%MDP("B")),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,BOLD,"")
 Q
 ;
CENTER ;
 S SUBST=$$RPL^%L1FRM(SUBST,CENTER,"")
 Q
 ;
RIGHT ;
 S SUBST=$$RPL^%L1FRM(SUBST,RIGHT,"")
 Q
 ;
LEFT ;
 S SUBST=$$RPL^%L1FRM(SUBST,LEFT,"")
 Q
 ;
ITAL ;
 S SUBST=$$RPL^%L1FRM(SUBST,ITAL,"")
 Q
 ;
WST(ST,CR,PR) ;
 Q:$G(ST)=""
 I $G(PR) D  Q
 .S STIND=$O(STPC(99999),-1)+1
 .S STPC(STIND)=ST
 .I 'IND S IND=1
 .S @TMPPC@(IND)=$G(@TMPPC@(IND))_ST
 ;
 N J F J=1:1:$L(ST) Q:$E(ST,J)'=" "
 S STSPACE=" "
 I J>1 D
 .S STSPACE=$E(ST,1,J-1)
 .S ST=$E(ST,J,$L(ST))
 ;
 I '$D(PRPC) S STSPACE=$$RPL^%L1FRM(STSPACE," ","&nbsp;")
 ;
 I 'IND S IND=1
 N STO S STO=""
 ;
 N WH S WH=0 F J=1:1:$L(ST) D  Q:WH
 .I $A(ST,J)>224,$A(ST,J)<251 S WH=1
 ;
 I WH!$D(M1REP) D
 .N J F J=1:1:$L(ST) D
 ..I $A(ST,J)>95,$A(ST,J)<122 S STO=STO_$C($A(ST,J)-32) Q
 ..S STO=STO_$E(ST,J)
 .S ST=STO K STO
 ;
 N STP
 I $G(INV) S STP=$$INVH^%L1FRM($TR($G(ST),TS1,TSS))
 I '$G(INV) S STP=$TR($G(ST),TS1,TSS)
 S STP=$TR(STP,TS0,TSS)
 S @TMPPC@(IND)=$G(@TMPPC@(IND))_STSPACE_STP
 S STIND=$O(STPC(99999),-1)+1
 S STPC(STIND)=STSPACE_ST
 Q
 

WMPC0
WMPC(STR,PRPC,INV) ; [ 21.09.15 09:40 ] [ 20.09.15 14:25 ] [ 19.09.15 17:41 ]
 N ST,STPC,STIND,STSPACE,IND,GWPC,PRBIG,M1PCI,SUBST,NL,BIG,SMALL,BOLD,CENTER,ITAL,RIGHT,LEFT
 D ^%L1TS
 I '$D(PRPC) S PRPC=1
 ;
 S TMPPC=$$^WMTMPPC
 K @TMPPC
 ;
 K STPC
 I PRPC,'$D(PRINT)!'$D(%MDP) D ^W4MDPPC
 ;
 D IN
 ;
 S STR=$$RPL^%L1FRM(STR,"{P}",RIGHT_NL)
 S IND=1 S GWPC=0 I PRPC S GWPC=39
 ;
 F M1PCI=1:1:$L(STR,NL) D  S IND=IND+1
 .S SUBST=$P(STR,NL,M1PCI) Q:'$L(SUBST)
 .D SMALL
 .S PRBIG=0
 .I SUBST[BIG D  S PRBIG=1
 ..D BIG
 .I SUBST[SMALL D
 ..D SMALL
 .I SUBST[BOLD D
 ..D BOLD
 .I SUBST[ITAL D
 ..D ITAL
 .
 .I SUBST["LEFT" D LEFT S ST=$$SPL^%L1FRM(SUBST) D WST(ST) D ENDST Q
 .I SUBST["RIGHT" D RIGHT S ST=$J($$SPA^%L1FRM(SUBST),GWPC\$S($G(PRBIG):2,1:1)) D WST(ST) D ENDST Q
 .I SUBST["CENTER",PRBIG D CENTER D WST($$CENTRB^%L1FRM(SUBST)) D ENDST Q
 .I SUBST["CENTER" D CENTER D WST($$CENTR^%L1FRM(SUBST)) D ENDST Q
 .
 .D WST(SUBST) ;D ENDST
 Q
 ;
ENDST Q
 ;
 ;
IN ;
 S NL="{NL}"
 S BIG="{BIG}"
 S SMALL="{SMALL}"
 S BOLD="{BOLD}"
 S CENTER="{CENTER}"
 S RIGHT="{RIGHT}"
 S LEFT="{LEFT}"
 S ITAL="{ITALIC}"
 Q
 ;
BIG I $G(PRPC) D WST(%MDP("B"),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,BIG,"")
 Q
 ;
SMALL I $G(PRPC) D WST(%MDP("N"),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,SMALL,"")
 Q
 ;
BOLD I $G(PRPC) D WST(%MDP("B"),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,BOLD,"")
 Q
 ;
CENTER ;
 S SUBST=$$RPL^%L1FRM(SUBST,CENTER,"")
 Q
 ;
RIGHT ;
 S SUBST=$$RPL^%L1FRM(SUBST,RIGHT,"")
 Q
 ;
LEFT ;
 S SUBST=$$RPL^%L1FRM(SUBST,LEFT,"")
 Q
 ;
ITAL ;
 S SUBST=$$RPL^%L1FRM(SUBST,ITAL,"")
 Q
 ;
WST(ST,CR,PR) ;
 Q:$G(ST)=""
 I $G(PR) D  Q
 .S STIND=$O(STPC(99999),-1)+1
 .S STPC(STIND)=ST
 .I 'IND S IND=1
 .S @TMPPC@(IND)=$G(@TMPPC@(IND))_ST
 ;
 N J F J=1:1:$L(ST) Q:$E(ST,J)'=" "
 S STSPACE=" "
 I J>1 D
 .S STSPACE=$E(ST,1,J-1)
 .S ST=$E(ST,J,$L(ST))
 ;
 I 'IND S IND=1
 N STO S STO=""
 ;
 N WH S WH=0 F J=1:1:$L(ST) D  Q:WH
 .I $A(ST,J)>224,$A(ST,J)<251 S WH=1
 ;
 I WH!$D(M1REP) D
 .N J F J=1:1:$L(ST) D
 ..I $A(ST,J)>95,$A(ST,J)<122 S STO=STO_$C($A(ST,J)-32) Q
 ..S STO=STO_$E(ST,J)
 .S ST=STO K STO
 ;
 N STP
 I $G(INV) S STP=$$INVH^%L1FRM($TR($G(ST),TS1,TSS))
 I '$G(INV) S STP=$TR($G(ST),TS1,TSS)
 S STP=$TR(STP,TS0,TSS)
 S @TMPPC@(IND)=$G(@TMPPC@(IND))_STSPACE_STP
 S STIND=$O(STPC(99999),-1)+1
 S STPC(STIND)=STSPACE_ST
 Q

WMPCMSG
WMPCMSG(MES,STR,KOT,GL) ; [ 07.08.16 17:11 ] [ 16.09.15 10:18 ] [ 13.09.15 12:52 ] 
 N N,A,I,IND,LAB
 I $G(MES)="" Q
 D ^%L1TS
 D ^WMHEAD
 D ^W4MDPPC I $G(PRINT)="" Q
 I $L($G(STR)) D ^WMPC(STR,1,0) D PC
 D ^WMPC(MES,1,1)
 D PC
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
 ;
PC ;
 I $G(GL)'="" M @GL=@$$TMPPC
 N IND,I S N="",I=0 F  S N=$O(@$$TMPPC@(N)) Q:N=""  D
 .S A=$G(^(N)),I=I+1
 .S IND=$O(@$$^W4PC@(PRINT,9999999),-1)+1
 .I I=1 S @$$^W4PC@(PRINT,IND)="" S IND=IND+1
 .S @$$^W4PC@(PRINT,IND)=A
 Q
 ;
TMPPC(STAM) ;
 Q $$^W4MAIN("TMPPC")
 

WMPORT
WMPORT(STAM) ; [ 24.08.15 02:08 ] [ 25.03.08 13:42 ] [ 09.01.06 15:19 ]
 I '$$^WMNALAN Q $$PORT^WMPRM
 Q "SCK$"_$J

WMPREF
WMPREF(STAM) ; [ 29.09.15 12:25 ] [
 Q "MP"

WMPREP
WMPREP ; [ 15.10.15 14:05 ] [ 24.08.15 03:06 ] [ 05.08.14 17:30 ]
 N (JB,%ARG,%REM)
 D FRM
 S %SCRN="WMPREP"
 S S4B=""
 D PC^W4DMANY
 Q
 ;
FRM ;
 N (JB,%ARG,%REM) D ^W4IN
 D ^W4IN
 D ^%W1ARG I '$G(DAT1),'$G(DAT2) Q
 S D1=$$^%L1DC(DAT1,3)
 S D2=$$^%L1DC(DAT2,3)
 S GLS4B=$$^W4MAIN("S4B")
 ;
 N II S I=0
 S (SSUM,SSUM0,SHNH,SHNHMPP)=0
 F DT=D1:1:D2 D
 .S HZ="" F  S HZ=$O(@$$^W4REF@(DT,HZ)) Q:HZ=""  I $D(@$$^W4ORD@(HZ,"MP")) D
 ..S NMP="" F  S NMP=$O(@$$^W4ORD@(HZ,"MP","PAY",NMP)) Q:NMP=""  D
 ...S CARD=$G(@$$^W4HZMP(HZ,NMP,"CARD"))
 ...S ASM=$G(@$$^W4HZMP(HZ,NMP,"ASM"))
 ...S SUM=$G(@$$^W4HZMP(HZ,NMP,"SHUL"))
 ...S HNH=$G(@$$^W4HZMP(HZ,NMP,"HNH"))
 ...S HNHMPP=$G(@$$^W4HZMP(HZ,NMP,"HNHMPP"))
 ...S COMP=$G(@$$^W4HZMP(HZ,NMP,"COP"))
 ...S LKH=$G(@$$^W4HZMP(HZ,NMP,"LKH"))
 ...S LKH1=$G(@$$^W4HZMP(HZ,NMP,"LKH1"))
 ...S CRED=$G(@$$^W4HZMP(HZ,NMP,"CRED"))
 ...I VT=1,CRED Q
 ...I VT=2,'CRED Q
 ...S CRED1="libx" I CRED S CRED1="dtwd"
 ...I CARD["=" S CARD=$P(CARD,"=")
 ...S ST=$ZD(DT,"DD.MM.YY")_"\"_HZ_"\"_LKH_"\"_LKH1_"\"_CARD_"\"_ASM
 ...S ST=ST_"\"_$J(SUM+HNH+HNHMPP,2,2)_"\"_$J(HNH,2,2)_"\"_$J(HNHMPP,2,2)_"\"_$J(SUM,2,2)_"\"_CRED1
 ...S SSUM0=SSUM0+SUM+HNH+HNHMPP
 ...S SSUM=SSUM+SUM
 ...S SHNH=SHNH+HNH
 ...S SHNHMPP=SHNHMPP+HNHMPP
 ...S I=I+1,@GLS4B@(I)=ST
 ;
 S SQN=I
 ;
 S SUM4B=$$BG^W4MAIN("S4B")_"99999)"
 S @SUM4B="\\\\\"_SQN_"\"_$J(SSUM0,2,2)_"\"_$J(SHNH,2,2)_"\"_$J(SHNHMPP,2,2)
 S @SUM4B=@SUM4B_"\"_$J(SSUM,2,2)
 Q
 ;
HZGPC ;
 D
 .N (JB,SGR) D ^W4IN
 .D ^%L1TS
 .S HZ=$P(^S4B($P,%ST),"\",2) Q:'HZ
 .S ASM=$P(^S4B($P,%ST),"\",4) Q:'ASM
 .K @$$^W4MAIN("TMPS111")
 .S OK=0
 .S N="" F  S N=$O(@$$^W4ORD@(HZ,"MP","PAY",N)) Q:N=""  I $G(@$$^W4HZMP(HZ,N,"ASM"))=ASM D
 ..F I=1:1 Q:'$D(@$$^W4ORD@(HZ,"MP","PAY",N,"PC",I))  D
 ...S ST=$G(^(I))
 ...S ST=$TR(ST,TSS,TS0)
 ...S ST=$TR(ST,$C(27,8,10,33,40),"")
 ...S ST=$$CLST^%L1FRM(ST)
 ...S SH=$O(@$$^W4MAIN("TMPS111")@(999999),-1)+1
 ...S @$$^W4MAIN("TMPS111")@(SH)=ST
 Q
 ;
TMPREP(STAM) ;
 Q $$^W4MAIN("TMPREP")

WMPREPRC
WMPREPRC ; [ 12.11.24 18:51 ] [ 20.09.15 18:56 ] [ 19.09.15 17:27 ] 
SETUP(FN,STR)
 N (JB,%ARG,STR,FN,RCD,ERR)
 D ^WMIN D RZ
 ;                     ,ID PAR,MVC P,PRIT SAPAK
 S MKT=$TR("RCD,ERR,MES,PIM,PTI,POP",",",RZ)
 D PRS^%L1FRM(STR,MKT,RZ)
 ;
 F I=1:1:$L(MKT,RZ) S VR=$P(MKT,RZ,I) D
 .I $L(VR) S @$$^W4GL("WMG")@("RCV","SETUP",FN,VR)=$$RCV($G(@VR))
 Q
 ;
 ;
DAY(STR) D SETUP("DAY",STR)
 Q
 ;
ACT(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ;BLF - ITRA, PIT - ITRA NKD, CLT - COP NAME
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP",",",RZ)
 D PRS(STR,"ACT",MKT,RZ)
 Q
 ;
BGD(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP",",",RZ)
 D PRS(STR,"BGD",MKT,RZ)
 Q
 ;
GET(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; USD - PRITEY LAKUAH
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP,USD",",",RZ)
 D PRS(STR,"GET",MKT,RZ)
 Q
 ;
LOD(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; AML - SHUM TEINA, LOI -  ASMAHTA
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP,AML,LOI",",",RZ)
 D PRS(STR,"LOD",MKT,RZ)
 Q
 ;
DLO(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; -- LCD - TAARIH PEULA
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP,AML,LOI,LCD",",",RZ)
 D PRS(STR,"DLO",MKT,RZ)
 Q
 ;
GRE(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; - GRE - REPORT NUMBER | REPORT NAME | PARAMETER
 S MKT=$TR("RCD,ERR,MES,GRE",",",RZ)
 D PRS(STR,"GRE",MKT,RZ)
 Q
 ;
BLL(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; CRD - CARD NUMBER, PIN -  ARM CODE , LST - ITEMS LIST (ID|NAME|PRICE)
 S MKT=$TR("RCD,ERR,MES,CRD,PIN,LST",",",RZ)
 D PRS(STR,"BLL",MKT,RZ)
 Q
 ;
BLO(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; BLI - ASMAHTA
 S MKT=$TR("RCD,ERR,MES,BLI,COP",",",RZ)
 D PRS(STR,"BLO",MKT,RZ)
 Q
 ;
BLD(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; -- LCD - TAARIH PEULA
 S MKT=$TR("RCD,ERR,MES,BLI,LCD",",",RZ)
 D PRS(STR,"BLD",MKT,RZ)
 Q
 ;
ADD(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; MAS - LO PAIL, TRI - ASMAHTA, TRS - SHUM HUYAV
 ; ITM - ITEMS LIST(ID|QN|PRC|TOT|Y-BONUS, N -REGUL, D-DISC
 ; DIS - HANAHA KLALI
 ; APP - LE HIYUV
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP,MAS,TRI,TRS,ITM,DIS,APP",",",RZ)
 D PRS(STR,"ADD",MKT,RZ)
 Q
 ;
RDD(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP,MAS,TRI,TRS,ITM,DIS,APP",",",RZ)
 D PRS(STR,"RDD",MKT,RZ)
 Q
 ;
DEL(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; TCD - TAARIH TRAN-YA
 S MKT=$TR("RCD,ERR,MES,BLF,EMP,CLT,PIT,COP,TRI,TRS,TCD",",",RZ)
 D PRS(STR,"DEL",MKT,RZ)
 Q
 ;
REP(STR)
 N (JB,%ARG,STR,RPT,RCD,ERR,RPT)
 D ^WMIN D RZ
 ; RPT - REPORT DATA
 S MKT=$TR("RCD,ERR,MES,RPT",",",RZ)
 D PRS(STR,"REP",MKT,RZ)
 Q
 ;
 D PRS^%L1FRM(STR,MKT,RZ)
 ;;W #
 N I,VR F I=1:1:$L(MKT,RZ) S VR=$P(MKT,RZ,I) I $L(VR) D
 .N VL S VL=$G(@VR) I VL["=" S VL=$P(VL,"=",2,200)
 .S @VR=VL
 .;;U 0 W VL,! H 3
 Q
 ;
ZED(STR)
 N (JB,%ARG,STR,RCD,ERR)
 D ^WMIN D RZ
 ; ZNM - Z NUMBER
 S MKT=$TR("RCD,ERR,MES,ZNM",",",RZ)
 D PRS(STR,"ZED",MKT,RZ)
 Q
 ;
RZ S RZ=M1P("RZ") Q
 ;
 ;
PRS(STR,FN,MKT,RZ) ;
 D PRS^%L1FRM(STR,MKT,RZ)
 ;
 N I,VR F I=1:1:$L(MKT,RZ) S VR=$P(MKT,RZ,I) I $L(VR) D
 .N VL S VL=$G(@VR)
 .I VL["=" D
 ..S VR=$P(VL,"="),VL=$P(VL,"=",2,200)
 ..N VR0,J S VR0="" F J=$L(VR):-1:1 Q:$A(VR,J)<64  Q:$A(VR,J)>90  S VR0=$E(VR,J)_VR0
 ..S VR=VR0
 ..N VL0 S VL0="" F J=1:1:$L(VL) Q:$A(VL,J)<32  S VL0=VL0_$E(VL,J)
 ..S VL=VL0
 .I VR="LST"!(VR="ITM")!(VR="GRE") D PRSR(VR,FN) Q
 .S @$$^W4GL("WMGT")@("RCV",JB,FN,VR)=$E($$RCV(VL),1,480)
 .
 Q
 ;
RCV(VL) ;
 I $$ISNUM^%L1FRM(VL) Q VL
 I '$D(TS1) D ^%L1TS
 I '$D(%TSMALL) D ^%L1C
 S VL=$TR(VL,%TSMALL,%TBIG)
 Q $TR(VL,TS1,TS0)
 ;
PRSR(VR,FN)
 N A S A=$$RCV($G(@VR)) Q:A=""
 I A["=" S A=$P(A,"=",2,200)
 N I1,I2,LINE S I2=0
 N LN S LN=$L(A,M1P("RZR"))
 F I1=1:1:LN-1 D
 .N LINE S LINE=$P(A,M1P("RZR"),I1)
 .S I2=I2+1,@$$^W4GL("WMGT")@("RCV",JB,FN,VR,I2)=LINE
 Q
 

WMPREPSN
WMPREPSN ; [ 24.08.15 02:19 ] [ 24.04.08 14:02 ] [ 17.04.08 15:58 ]
SET(STAM) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=SET"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")
 ;
DAY(STAM) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=DAY"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")
 ;
ACT(CRD,ARM,INFO) ;
 I '$D(M1P) D ^WMIN
 D ^%L1TS
 N ST S ST="OPC=ACT"_M1P("RZ")_"POS="_$$MASOF^WMPRM
 S ST=ST_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_ARM_M1P("RZ")_"CAT="_$TR(INFO,TS0,TS1)_M1P("RZ")
 Q ST
 ;
BGD(CRD,ARM) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=BGD"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_ARM_M1P("RZ")
 ;
GET(CRD,ARM) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=GET"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_ARM_M1P("RZ")
 ;
LOD(CRD,ARM,SUM,PAYM) ;
 I '$D(M1P) D ^WMIN
 N ST S ST="OPC=LOD"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_ARM
 S ST=ST_M1P("RZ")_"LDB="_SUM_M1P("RZ")_"LPY="_PAYM_M1P("RZ")
 Q ST
 ;
DLO(CRD,ARM,LOI) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=DLO"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_ARM_M1P("RZ")_"LOI="_LOI_M1P("RZ")
 ;
GRE(STAM) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=GRE"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")
 ;
BLL(CRD,ARM) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=BLL"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_ARM_M1P("RZ")
 ;
BLO(CRD,ARM,STPAR,TRA) ;
 I '$D(M1P) D ^WMIN
 N ST S ST="OPC=BLO"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_ARM_M1P("RZ")
 S ST=ST_"VAL="_STPAR_M1P("RZ")_"TRA="_TRA_M1P("RZ")
 Q ST
 ;
BLD(BLI) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=BLD"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"BLI="_BLI_M1P("RZ")
 ;
ADD(CRD,PIN,STR) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=ADD"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_PIN_M1P("RZ")_STR_M1P("RZ")
 ;
RDD(CRD,PIN,STR) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=RDD"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"CRD="_CRD_M1P("RZ")_"PIN="_PIN_M1P("RZ")_STR_M1P("RZ")
 ;
DEL(TRI)
 I '$D(M1P) D ^WMIN
 Q "OPC=DEL"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"TRI="_TRI_M1P("RZ")
 ;
REP(REN,RPA) ;
 I '$D(M1P) D ^WMIN
 Q "OPC=REP"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"REN="_REN_M1P("RZ")_"RPA="_RPA_M1P("RZ")
 ;
ZED(ZNM)
 I '$D(M1P) D ^WMIN
 Q "OPC=ZED"_M1P("RZ")_"POS="_$$MASOF^WMPRM_M1P("RZ")_"ZNM="_ZNM_M1P("RZ")

WMPREPVW
WMPREPVW(LAB) ; [ 17.10.15 08:16 ] [ 12.10.15 17:57 ] [ 30.09.15 19:10 ]
 N TMP,LKH S TMP=$$^WMTMP
 K @TMP
 S @TMP@(1)=$$^WMPARAM("MPCARD")_": qihxk 'qn:"
 ;
 N I,K,VL,VL0,HBNAME,RKV,T
 S K=1 F I=1:1 S T=$T(@LAB+I) Q:T=""  Q:T[" Q  ;"  D
 .I $P(T,";",2) D
 ..S K=K+1
 ..S HBNAME=$P(T,";",3)
 ..S RKV=$P(T,";",4)
 ..S COLOR=$P(T,";",5)
 ..S VL=$$^WMANS(LAB,RKV)
 ..I RKV["MES"!(RKV["ERR") D
 ...I $L(VL)<2 D
 ....S VL0=$$^WMANS(LAB,RKV_"0")
 ....I $L(VL0)>1 D
 .....S VL=VL0
 .....S VL=$$RPL^%L1FRM(VL,"{RIGHT}"," ")
 .....S VL=$$RPL^%L1FRM(VL,"{NL}"," ")
 .....S VL=$$INVH^%L1FRM(VL)
 ...S VL=$$CNWEB^%L1FRM(VL)
 ..
 ..S @TMP@(K)=VL_":"_HBNAME_":"_COLOR
 ;
 Q
 ;
ACT ;-- GET BALANCE
 ;1;gewl my;EMP;
 ;1;iy`x gewl my;CLT;
 ;1;zitqk dxzi;BLF;
 ;1;zecewpa dxzi;PIT;
 ;1;drced;MES;
 ;1;d`iby zrced;ERR;
 Q  ;
 ;
BGD ;-- GET BALANCE
 ;1;gewl my;EMP;
 ;1;iy`x gewl my;CLT;
 ;1;zitqk dxzi;BLF;
 ;1;zecewpa dxzi;PIT;
 ;1;drced;MES;
 ;1;d`iby zrced;ERR;
 Q  ;
 ;
GET ;-- GET STATUS
 ;1;gewl my;EMP;
 ;1;iy`x gewl my;CLT;
 ;1;dxag;COP;
 ;1;lib;AGE;
 ;1;zitqk dxzi;BLF;
 ;1;zecewpa dxzi;PIT;
 ;1;drced;MES;
 ;1;d`iby zrced;ERR;
 Q  ;
 ;
DLO ;-- GET BALANCE
 ;1;gewl my;EMP;
 ;1;iy`x gewl my;CLT;
 ;1;dxag;COP;
 ;1;lehia mekq;AML;
 ;1;aivwz zxzi;BLF;
 ;1;`zknq` 'qn;LOI;
 ;1;drced;MES;
 ;1;d`iby zrced;ERR;
 Q  ;
 ;
ADD ;-- PAYMENT
 ;1;gewl my;EMP;
 ;1;iy`x gewl my;CLT;
 ;1;dxag;COP;
 ;1;melyzl mekq;TSHMP;
 ;1;(dpnfda hixtk dtqed ) zillk dgpd;DIS;RED;
 ;1;(dpnfda hixtk dtqed) mihixtl dgpd;HNHMPP;RED;
 ;1;lreta mley;TRS;
 ;1;dxzi;ITRA;
 ;1;`zknq` 'qn;TRI;
 ;1;drced;MES;
 ;1;d`iby zrced;ERR;
 Q  ;
 ;
LOD ;-- GET BALANCE
 ;1;gewl my;EMP;
 ;1;iy`x gewl my;CLT;
 ;1;dxag;COP;
 ;1;zitqk dxzi;BLF;
 ;1;zecewpa dxzi;PIT;
 ;1;`zknq`;LOI;
 ;1;drced;MES;
 ;1;d`iby zrced;ERR;
 Q  ;

WMPRM
WMPRM ; [ 26.10.15 13:26 ] [ 28.09.15 11:33 ] [ 11.09.15 13:01 ]
 Q
PORT(STAM) ;
 Q $G(@$$^W4GL("WMG")@("PORT"))
 ;
TOUT(STAM) ;
 Q $G(@$$^W4GL("WMG")@("TOUT"))
 ;
POPSETUP(STAM) ;
 Q $G(@$$^W4GL("WMG")@("RCV","SETUP","SET","POP"))
 ;
POP(STAM) ;
 Q $G(@$$^W4GL("WMG")@("POP"))
 ;
MASOF(STAM) ;
 Q $G(@$$^W4GL("WMG")@("MASOF"))
 ;
IPA(STAM) ;
 Q $G(@$$^W4GL("WMG")@("IPA"))
 ;
CDHNHMP(STAM) ;
 Q $G(@$$^W4GL("WMG")@("CDHNHMP"))
 ;
CDHNHMPP(STAM) ;
 Q $G(@$$^W4GL("WMG")@("CDHNHMPP"))
 ;
CASHBACK(STAM) ;
 Q $G(@$$^W4GL("WMG")@("CASHBACK"))
 ;

WMRCV2V
WMRCV2V(FN) ; [ 28.09.15 15:31 ] [ 15.09.15 18:53 ] [ 13.09.15 13:50 ]
 N FN1,FN2 S (FN1,FN2)=FN
 I FN[">" S FN1=$P(FN,">"),FN2=$P(FN,">",2)
 D CLEAR^WMANS(FN1) S CRD=""
 I '$D(M1P) D ^WMIN
 ;
 N N S N="" F  S N=$O(@$$^W4GL("WMGT")@("RCV",JB,FN1,N)) Q:N=""  D
 .N A S A=$G(^(N))
 .I N["USD" D
 ..S CRD=$P(A,"EMP_ID=: ",2)
 ..I CRD["|" S CRD=$P(CRD,"|")
 ..D SET^WMANS(FN2,"CRD",CRD)
 .
 .S:A["=" A=$P(A,"=",2,200)
 .
 .I N="MES"!(N="ERR") D  Q
 ..D SET^WMANS(FN2,N_"0",A)
 ..N STR S STR=$$^WMMESERR(A)
 ..S @N=STR
 ..D SET^WMANS(FN2,N,STR)
 .
 .I N="EMP"!(N="CLT") S A=$$INVH^%L1FRM(A)
 .
 .I N="USD" D  Q
 ..S A=$$RPL^%L1FRM(A,M1P("RZV"),"{NL}")
 ..S (DET,USD)=A
 ..D SET^WMANS(FN2,N,A)
 ..D SET^WMANS(FN2,"DET",A)
 .
 .I N="BLF"!(N="PIT")!(N="TRS")!(N="DIS")!(N="AML") D
 ..I A'["." S A=$J(A*.01,2,2)
 .
 .S @N=A
 .D SET^WMANS(FN2,N,A)
 Q

WMREP
WMREP ; [ 10.10.15 12:12 ] [ 21.09.15 08:28 ] [ 20.09.15 18:59 ]
 N (JB,%ARG,%REM)
 D ^WMIN
 ;
 S RES=$$^WMTRANS("GRE",$$GRE^WMPREPSN)
 ;
 I $P(RES,"\")'=M1C("OK") G END
 D ^WMRCV2V("GRE")
 I $G(RCD) S RES=RCD_"\"_$$^WMGM(RCD,$$^WMERNM("GRE")) G END
 S TMPREP=$$^WMTMP
 K @TMPREP
 ;
 S K=0
 S N="" F  S N=$O(@$$^W4GL("WMGT")@("RCV",JB,"GRE","GRE",N)) Q:N=""  D
 .S A=$G(^(N)) Q:A=""
 .S CDREP=$P(A,M1P("RZV"),1) Q:CDREP=""
 .S NMREP=$$INVH^%L1FRM($P(A,M1P("RZV"),2))
 .S PRM=$P(A,M1P("RZV"),3)
 .S ZAPR=$$INVH^%L1FRM($P(A,M1P("RZV"),4))
 .S K=K+1
 .S @TMPREP@(K)=CDREP_"\"_NMREP
 .S @TMPREP@(K,"PRM")=PRM
 .S @TMPREP@(K,"ZAPR")=ZAPR
 ;
 W "<div align=""center"">",!
 w "<BR><BR>",!
 W "<table dir="""_$$^%W1DIR_""">",!
 F K=1:1 Q:'$D(@TMPREP@(K))  D
 .S A=$G(^(K))
 .S CDREP=$P(A,"\")
 .S NMREP=$P(A,"\",2)
 .
 .W "<tr class=""wmrep""><td "_$$^W4TOUCH_"=""ClickRep('"_K_"')"">"
 . W $$H2U^%L1FRM(NMREP)_"</td></tr>",!
 ;
 W "<tr><td>&nbsp;</td></tr>",!
 W "<tr><td>"
  D ^W4BTN("BACK","Back()","red")
 W "</td></tr>",!
 ;
 W "</table>",!
 W "</div>",!
END ;
 Q  ;
 ;

WMREPVW
WMREPVW ; [ 21.09.15 11:50 ] [ 20.09.15 21:36 ] [ 19.09.15 10:37 ]
 N (JB,%ARG,%REM)
 D ^%W1ARG
 S INDEX=$G(%ARG("INDEX")) Q:INDEX=""
 S TMPREP=$$^WMTMP
 S P1DZ=$$^W4DZ
 D ^WMIN
 S A=$G(@TMPREP@(INDEX))
 D PUT^%W3DEB("WMREP-CLICK","INDEX=INDEX&A=A")
 ;
 S CDREP=$P(A,"\")
 S PRM=$G(@TMPREP@(INDEX,"PRM"))
 S ZAPR=$G(@TMPREP@(INDEX,"ZAPR"))
 ;
 I '$G(%ARG("SHOW")) D  Q
 .W "<table dir="""_$$^%W1DIR_""" width=""90%"">",!
 . W "<tr>"
 .D
 ..I $E(PRM,3) D ZAPR
 ..I $E(PRM,1),$E(PRM,2) D RNG Q
 ..I $E(PRM) D DAT1 Q
 ..I $E(PRM,2) D DAT2 Q
 .W "<td width=""10%"">&nbsp;</td>",!
 .D BTN
 .W "</tr>",!
 ;
 W "<div id=""divbtn"" >",!
 D BACK ;
 W $$NBSP^%L1FRM(5)
 D ^W4BTN("PRINT","Print()","blue")
 W "</div>",!
 ;
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
 S:$G(DAT1)="" DAT1="000000"
 S:$G(DAT2)="" DAT2="000000"
 S ST=$G(DAT1)_M1P("RZV")_$G(DAT2)_M1P("RZV")_$G(STR)
 D PUT^%W3DEB("WMREPVW","ST=ST")
 ;
 S RES=$$^WMTRANS("REP",$$REP^WMPREPSN(CDREP,ST))
 ;
 D PUT^%W3DEB("WMREPVW","RES=RES&RCD=RCD&RPT=RPT")
 I $P(RES,"\")'=M1C("OK") G ENC
 I $G(RCD) S RES=RCD_"\"_$$^WMGM(RCD,$G(ERR)) G ENC
 ;
 I $G(RPT)="" S RES="ERRCD\NOTREPORT" G ENC ; -- RPT - data of report
ZP ;
 D SHOW(RPT)
 ;
 W "<br>",!
 W "<div id=""divbtncsr"" >",!
  D ^W4BTN("CSRPRINT","CSRPrint('"_CDREP_"','"_ST_"')","blue")
 W "</div>",!
 ;
ENC ;
 I $P($G(RES),"\")'=0 D
 .W "<script>",!
 . W "WmMsg('"_RES_"')",!
 .W "</script>",!
 Q
 ;
 ;
SHOW(RPT) ;
 N A,N,I,M1REP,TMPPC,ST D ^%L1TS
 S M1REP=""
 D ^WMPC(RPT,0,1)
 ;
 S TMPPC=$$^WMTMPPC
 ;
 W "<table dir="""_$$^%W1DIR_""">",!
 S N="",I=0 F  S N=$O(@TMPPC@(N)) Q:N=""  D
 .S A=$TR($G(^(N)),TSS,TS0)
 .S ST=$$H2U^%L1FRM($$INVH^%L1FRM(A))
 .I A["RPT" D  Q
 ..W "<tr><td style=""font-size:"_$$^W3FSZ(14)_""" >"
 ..W $P(ST,"=",2,200)
 ..W "</td></tr>"
 ..W "<tr><td>&nbsp;</td></tr>",!
 .
 .W "<tr><td>"_ST_"</td></tr>",!
 W "</table>",!
 Q
 ;
 ;
PC(PRM) ;
 D PUT^%W3DEB("WMREPVW-PC","PRM=PRM")
 N CDREP,ST,RES,ERR D ^WMIN
 S CDREP=$P(PRM,";")
 S ST=$P(PRM,";",2,200)
 ;
 S RES=$$^WMTRANS("REP",$$REP^WMPREPSN(CDREP,ST))
 ;
 I $P(RES,"\")'=M1C("OK") G ERPC
 I $G(RPT)="" S RES="ERRCD\NOTREPORT" G ERPC
 D PUT^%W3DEB("WMREPVW-PC","RPT=RPT")
 S M1REP=""
 ;
 D ^WMPC(RPT,1,1)
 ;
 D ^%L1TS
 D ^W4MDPPC I $G(PRINT)="" S RES="ERRCD\PRINTERNOTDEFINED" G ERPC
 S TMPPC=$$^WMTMPPC
 ;
 N IND,ST,N,A
 S N="" F  S N=$O(@TMPPC@(N)) Q:N=""  D
 .S A=$TR($G(^(N)),TSS,TS0)
 .S ST=$$INVH^%L1FRM(A)
 .I A["RPT" D
 ..S ST=$G(%MDP("B"))_$P(ST,"=",2,200)_$G(%MDP("N"))_$C(10)
 .
 .S IND=$O(@$$^W4PC@(PRINT,9999999),-1)+1
 .S @$$^W4PC@(PRINT,IND)=$TR($J(ST,39),TS0,TSS)
 ;
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
ERPC ;
 W "<script>",!
  W "WmMsg('"_RES_"')",!
 W "</script>",!
 Q
 ;
RNG ;
 D DAT1,DAT2
 Q
 ;
DAT1 ;
 W "<td dir=""LTR"">"
  S %W1DAT("NODAY")=""
  D ^%W1DAT("DAT1",$G(P1DZ))
  W "&nbsp;"_$$^%W1DICT("MEDATE")
 W "</td>"
 Q
 ;
DAT2 ;
 W "<td dir=""LTR"">"
  S %W1DAT("NODAY")=""
  D ^%W1DAT("DAT2",$G(P1DZ))
  W "&nbsp;"_$$^%W1DICT("ADDATE")
 W "</td>"
 Q
 ;
ZAPR ;
 W "<td>"
  W $$H2U^%L1FRM(ZAPR),"&nbsp;"
  W "<input type=""text"" id=""zapr"">"
 W "</td>"
 Q
 ;
BTN ;
 W "<td>"
  D ^W4BTN("SUBMIT","Submit()","green")
 W "</td>"
 ;
 D BACK
 Q
 ;
 ;
BACK ;
 W "<td>"
 D ^W4BTN("BACK","Back()","red")
 W "</td>"
 Q

WMRKMAN
WMRKMAN  ; [ 28.09.16 13:16 ] [ 27.09.16 18:31 ] [ 
 ;
 N (JB,%ARG,%REM,HZM,FUNC,CLCOD)
 ;
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 ;
REPINFO()
 S STRIN="""BuyerName"":"_"""bname"""_","
 S STRIN="""DateTimeFrom"":"_"""01/01/2016"""_","
 S STRIN="""DateTimeTo"":"_"""31/12/2016"""_","
 S STRIN="""BuyerCode"":"_"""MASOF SHVA"""_","
 S STRIN="""Znumber"":"_"""323"""_","
 S STRIN="""TotalRevenueWithVAT"":"_"""323"""_","
 S STRIN="""TotalRevenueWithoutVAT"":"_"""323"""_","
 Q
MENU(HZM,JB)
 N (JB,%ARG,HZM)
 S CLCOD=$$MYCHCLIENT^W4HZMST(HZM) Q:CLCOD=""
 ;
 D HEADER ; --> FLIN,BID,FS
 ;
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"Discount="_$J($$HNH^W4HZMST(HZM),2,2)
 S STRIN=STRIN_FS_"Service="_$J($$DMSH^W4HZMST(HZM),2,2)
 S STRIN=STRIN_FS_"Payments="_$$HZMPAYMENTS(HZM)
 S STRIN=STRIN_FS_"Items="_$$HZMITEMS(HZM)
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("sync",FLIN)
 Q
 ;
 ;
MENUITEM(ITM_CODE,ITM_NAME,ITM_PRICE,ITM_GRP)
 S STRIN="{""SKU"":"_"""_ITM_CODE_"""_","
 S STRIN="""Name"":"_"""_ITM_NAME_"""_","
 S STRIN="""PriceWithVAT"":"_"""_ITM_PRICE_"""_","
 S STRIN="""PriceWithoutVAT"":"_"""_ITM_PRICE_"""_","
 S STRIN="""Category"":"_"""_ITM_GRP_"""_"},"
 Q
 ;
 S STRIN=STRIN_FS_"Items="_$$BILLITEM("0",$$^%L1CNV("dpnfd lehia"),1,0)
 ;
 Q
 ;
 ;
GETCLDETS(HZM,CLCOD) ;
 N (JB,%ARG,HZM,CLCOD,MYCHER,MYCHER1)
 D HEADER ; --> FLIN,BID,FS
 S STRIN="BID="_BID
 S STRIN="ClientCode="_CLCOD
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("poll",FLIN)
 Q
 ;
 ;
 ;
HEADER ; --> FLIN,BID,FS : O FLIN U FLIN
 ;
 S MASOF=$E(^P1PRM("ASH","MASOF"),1,7)
 ;
 ;
 S FS="&" ;- FIELD SEPARATOR
 ;
 S FLIN="/tmp/mrkfile.txt"
 C FLIN:DELETE
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 Q
 ;
 ;
FOOTER(STRIN,FLIN) ;
 W STRIN,!
 C FLIN
 ;;U 0 W STRIN,! H 4
 Q
 ;
 ;
HZMITEMS(HZM)
 N (JB,%ARG,HZM)
 N SUM S SUM=0,HZMITEMS=""
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .N A S A=$G(^(I))
 .S CD=$P(A,"\")
 .I $$ISHNHP^W4HZMST(CD) S CD=0,ITEMNAME=$$^%L1CNV("hixtl dgpd") G C1
 .I CD'?1N.N S CD=0
 .S ITEMNAME=$$^%L1CNV($$ITEMNAME(A))
C1 .N QNT,ITEMPRC
 .S QNT=$$QNT(A) S:'QNT QNT=1
 .S ITEMPRC=$$ITEMPRC(A)
 .I 'ITEMPRC S ITEMPRC=$J(($$ITEMSUM(A)-$$ADDONPRC(A))/QNT,2,2)
 .I I=1 S HZMITEMS=HZMITEMS_$$BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 .I I>1 S HZMITEMS=HZMITEMS_","_$$BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 .S SUM=SUM+(QNT*ITEMPRC)
 .
 .N ADDON
 .S ADDONPRC=$$ADDONPRC(A)
 .
 .I $G(ADDONPRC) D
 ..S HZMITEMS=HZMITEMS_","_$$BILLITEM("0",$$^%L1CNV("zetqez"),"1",ADDONPRC)
 ..S SUM=SUM+ADDONPRC
 ;
 I $G(@$$^W4ORD@(HZM))="" Q ""
 S TSHL=$$TSHL(HZM)
 ;
 ;;S DIF=$$FRMT2INT(TSHL-SUM,100)
 ;;S DIF=$J(TSHL-SUM,2,2)
 ;;I DIF S HZMITEMS=$$BILLITEM("0","DISCOUNT","1",DIF)
 S HZMITEMS="["_HZMITEMS_"]"   ;;[]=JSON LIST
 ;
 Q HZMITEMS
 ;
 ;
BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 N BILLITEM
 S BILLITEM="""Name"":"""_ITEMNAME_""""
 S BILLITEM=BILLITEM_",""Cost"":"_$J(ITEMPRC,2,2)
 S BILLITEM=BILLITEM_",""Quantity"":"_QNT
 S BILLITEM=BILLITEM_",""SerialID"":"_CD
 S BILLITEM=BILLITEM_",""Remarks"":"_""""""
 S BILLITEM=BILLITEM_",""Toppings"":"_""""""
 S BILLITEM="{"_BILLITEM_"}" ;;{}=JSON OBJECT VAR:VALUE "," -SEPARATOR
 Q BILLITEM
 ;
 ;
HZMPAYMENTS(HZM)
 ;;PAYSUM=SUM OF SPECIFIC PAYMENT
 ;;TIP=TIP SUM OF SPECIFIC PAYMENT
 ;;PAYDBY="Credit,Cash,Mycheck, ..."
 ;;HZMPAYUID="identifier  of payment in ^P1HZ to avoid doble insertion"
 ;;PAYSTATUS="Approved,Cancelled
 ;;-----------------------------------------------------------------------
 ;
 N HZMPAYMENTS S HZMPAYMENTS=""
 N SUM,TIP
 N A S A=$G(@$$^W4ORD@(HZM,"CB"))
 S CASH=$J($P(A,"\",2),2,2)
 S TIP=$J($P(A,"\",10),2,2)
 ;
 S HZMPAYMENTS=$$PAYTYPE(CASH,TIP,"Cash",1,"Approved")
 ;
 N N,N1 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D
 .I N="CH" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...S SUM=$J($P($G(^(N1)),"*",1),2,2)
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,"Other",2_N1,"Approved")
 .I N="V" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...N A S A=$G(^(N1))
 ...S SUM=$J($P(A,"*",6),2,2)
 ...S VT="Credit"
 ...I '$P(A,"*",2) S VT="Mycheck"
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,VT,3_N1,"Approved")
 .I N="ASR" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...S SUM=$J($P($G(^(N1)),"*",4),2,2)
 ...S VT="Other"
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,VT,4_N1,"Approved")
 ;
 Q "["_HZMPAYMENTS_"]"
 ;
 ;
PAYTYPE(PAYSUM,TIP,PAYDBY,HZMPAYUID,PAYSTATUS)
 N PAYTYPE S PAYTYPE=""
 S PAYTYPE="""ItemAmount"""_":"_$J(PAYSUM,2,2)
 S PAYTYPE=PAYTYPE_","_"""ServiceAmount"""_":"_$J(TIP,2,2)
 S PAYTYPE=PAYTYPE_","_"""PaymentType"""_":"_""""_PAYDBY_""""
 S PAYTYPE=PAYTYPE_","_"""ID"""_":"_""""_HZMPAYUID_""""
 S PAYTYPE=PAYTYPE_","_"""Status"""_":"_""""_PAYSTATUS_""""
 S PAYTYPE="{"_PAYTYPE_"}" ;;{}=JSON OBJECT  VAR:VALUE ","- SEPARATOR
 Q PAYTYPE
 ;
 ;
QNT(A) ;
 Q $P(A,"\",5)
 ;
ADDONPRC(A)
 Q $J($P(A,"\",6),2,2)
 ;
ITEMPRC(A) ;
 Q $J($P(A,"\",4),2,2)
 ;
ITEMSUM(A) ;
 Q $J($P(A,"\",7),2,2)
 ;
FRMT2INT(N,M)
 Q $J(N,2,2)*M
 ;
ITEMNAME(A)
 N NM S NM=$P(A,"\",3)
 ;;S NM=$$RPL^%L1FRM(NM,"'","'\")
 ;;S NM=$$RPL^%L1FRM(NM,"""","""\")
 Q NM
 ;
SSHUL(HZM) ;
 Q $P(@$$^W4ORD@(HZM),"\",12)+$P(@$$^W4ORD@(HZM),"\",17)
 ;
TSHL(HZM)
 Q $J($P(@$$^W4ORD@(HZM),"\",11),2,2)
 ;
ITRA(HZM) Q $J($$TSHL(HZM)-$$SSHUL(HZM),2,2)
 
 
 
 
 
 
 
 
 

WMSETUP
WMSETUP ; [ 03.11.15 13:04 ] [ 26.10.15 13:27 ] [ 28.09.15 12:08 ]
GET ;
 K @$$^W4GL("WMGP")
 D ^WMIN
 ;;S %SCRN="M1SETUP"
 S MP=$G(@$$^W4PRM@("MP"))
 S IPA=$G(@$$^W4GL("WMG")@("IPA"))
 S PORT=$G(@$$^W4GL("WMG")@("PORTN"))
 S TOUT=$G(@$$^W4GL("WMG")@("TOUT"))
 S MASOF=$G(@$$^W4GL("WMG")@("MASOF"))
 S ONESWIPE=$G(@$$^W4GL("WMG")@("ONESWIPE"))
 S CDHNHMP=$G(@$$^W4GL("WMG")@("CDHNHMP"))
 S CDHNHMPP=$G(@$$^W4GL("WMG")@("CDHNHMPP"))
 S CASHBACK=$G(@$$^W4GL("WMG")@("CASHBACK"))
 Q
 ;
PUT(PRM) ;
 D PUT^%W3DEB("WMSETUP","PRM=PRM")
 D ^%W1GETPR(PRM)
 I CDHNHMP="" Q "CDHNHMP"
 I CDHNHMPP="" Q "CDHNHMPP"
 S @$$^W4PRM@("MP")=$G(MP)
 S @$$^W4GL("WMG")@("IPA")=IPA
 S @$$^W4GL("WMG")@("PORTN")=PORT
 S @$$^W4GL("WMG")@("PORT")=$S($L(PORT)<3:$G(@$$^W4DEV@(PORT)),1:PORT)
 S @$$^W4GL("WMG")@("TOUT")=TOUT
 S @$$^W4GL("WMG")@("MASOF")=MASOF
 S @$$^W4GL("WMG")@("ONESWIPE")=ONESWIPE
 S @$$^W4GL("WMG")@("NCOID")=0
 S @$$^W4GL("WMG")@("CDHNHMP")=CDHNHMP
 S @$$^W4GL("WMG")@("CDHNHMPP")=CDHNHMPP
 S @$$^W4GL("WMG")@("CASHBACK")=CASHBACK
 S RES=$$^WMGPOS
 Q RES

WMSHOW
WMSHOW ; [ 26.10.15 10:02 ] [ 25.10.15 19:14 ] [ 19.10.15 20:06 ]
 N (JB,%ARG,%REM)
 S GL=$$^WMTMP
 W "<div align=""center"" dir="""_$$^%W1DIR_""" >",!
  I '$G(%ARG("NOBR")) W "<br>"
  ;
  I $L($G(%ARG("HD"))) D
  .D ^%L1WEBHD(%ARG("HD"))
  ;
  W "<br>"
  S PAD=8
  I $G(%ARG("PAD")) S PAD=%ARG("PAD")
  ;
  W "<table width=""90%"">",!
   W "<tr><td width=""18%"">",!
    D BTN
   W "</td>"
  ;
   W "<td>",!
    W "<table width=""82%"" cellpadding="""_PAD_"px"" style=""font-size:"_$$^W3FSZ(12)
    W ";border:groove 2px grey;background-color:white"" "
    W ">",!
    S N="" F  S N=$O(@GL@(N)) Q:N=""  I N D
    .S A=$G(^(N))
    .S COLOR=$P(A,":",$L(A,":"))
    .S NM=$P(A,":",$L(A,":")-1)
    .S VL=$P(A,":",1,$L(A,":")-2)
    .W "<tr>"
    . W "<td width=""40%"" style="""
    . I $D(@GL@(N,"B")) W "font-weight:bold"
    . W """>"
    .  W $$H2U^%L1FRM(NM)
    . W "</td>",!
    . I COLOR="" S COLOR="blue"
    . W "<td style=""color:"_COLOR_""" >"
    .  W $$H2U^%L1FRM(VL)
    . W "</td>",!
    .W "</tr>",!
    W "</table>",!
   W "</td>"
  W "</tr>",!
  W "</table>",!
  ;
END ;
 W "</div>",!
 Q
 ;
 ;
BTN ;
  W "<table width=""100%"">",!
   W "<tr>"
    W "<td>"
    ;
    I $$^WMPARAM("ORD")="PAY",$G(%ARG("PAID")) G BACK
    ;
    I $$^WMPARAM("BALANCE")!$G(%ARG("BALANCE")) D
    .D ^W4BTN("PRINTITRA","PrintStatus('BALANCE')","blue")
    ;
    .I $G(%ARG("NOBACK")) D  Q
    ..D ^W4BTN("CLOSE",SBMPROC,"green",1)
    .
    .N NM S NM="SUBMIT"
    .D ^W4BTN(NM,SBMPROC,"green")
    ;
    I $$^WMPARAM("LOADC")!$$^WMPARAM("DELLOAD")!($$^WMPARAM("ORD")="PAY") D
    .S SBMPROC=$G(%ARG("PROC"))
    .I SBMPROC="" S SBMPROC="Back()"
    .
    .I $G(%ARG("NOBACK")) D  Q
    ..D ^W4BTN("CLOSE",SBMPROC,"green",1)
    .
    .I $$^WMPARAM("ORD")'="PAY" D
    ..N NM
    ..S NM="LOADBUDGET2CARD"
    ..I $$^WMPARAM("DELLOAD") S NM="DELETELOADING"
    ..D ^W4BTN(NM,SBMPROC,"green")
    .
    .I $$^WMPARAM("ORD")="PAY"!'$G(%ARG("PAID")) D
    ..N NM
    ..I '$$CASHBACK^WMPRM S NM="PAY"
    ..I $$CASHBACK^WMPRM S NM="USEBONUS"
    ..D ^W4BTN(NM,"Bonus('1')","green")
    ..I $$CASHBACK^WMPRM D
    ...W "</td></tr>",!
    ...W "<tr><td>&nbsp;</td></tr>",!
    ...W "<tr><td>",!
    ...S NM="ACCUMULATEBONUS"
    ...D ^W4BTN(NM,"Bonus('0')","blue")
   ;
   W "</td>" ;; -- END SUBMIT
   W "</tr>",!
    ;
BACK ;
    I '$G(%ARG("NOBACK")) D
    .W "<tr><td>&nbsp;</td></tr>",!
    .W "<tr><td>"
    . D ^W4BTN("BACK","Back()","red")
    .W "</td></tr>"
  W "</table>",!
  Q

WMSHOWCB
WMSHOWCB ; [ 19.10.15 20:18 ] [ 10.10.15 12:17 ] [ 17.09.15 10:16 ]
 N (JB,%ARG,%REM)
 W "<div align=""center"" dir="""_$$^%W1DIR_""">",!
 W "<br>"
 D ^W4BTN("CLOSE","WmClose()","red")
 W "<br><br>",!
 ;
 W "<table border=""1"" style=""font-size:"_$$^W3FSZ(12)_";width:80%"" "
 W " cellpadding=""8"" cellspacing=""0"">",!
 ;
 S VRM=$$VRM
 ;
 S K=0
 S N="" F  S N=$O(@$$^W4GL("KLIN")@("CB",N)) Q:N=""  D
 .S LK=$G(^(N)) Q:'LK
 .S A=$G(@$$^W4GL("KLF")@(LK,"CB",N))
 .S SUM=$P(A,"\") Q:SUM'>0
 .Q:$$^W4DELCB(N)
 .I '$D(@$$^W4GL("KLF")@(LK,"CB",N,"MP")) Q
 .S LKH=$P(LK,"-")
 .S LKHNAME=$G(@$$^W4GL("KLF")@(LK,"CB",N,"MP","NAME"))
 .S ASM=$G(@$$^W4GL("KLF")@(LK,"CB",N,"MP","ASM"))
 .S ARM=$G(@$$^W4GL("KLF")@(LK,"CB",N,"MP","ARM"))
 .S CARD=$G(^("CARD"))
 .I +CARD'=+$$^WMPARAM("MPCARD") Q
 .S DAT=$P(A,"\",4)
 .;;I $$^%L1DC(A,4)<($$^W4DZ-3) Q
 .S K=K+1
 .S @VRM@(K)=DAT_"\"_N_"\"_LK_"\"_$G(ASM)_"\"_CARD_"\"_LKH_"\"_LKHNAME_"\"_ARM_"\"_SUM
 ;
 W "<tr style=""height:35px;font-size:"_$$^W3FSZ(12)_""">"
  W "<th>"_$$^%W1DICT("DATE")_"</th>"
  W "<th>"_$$^%W1DICT("RCPNMB")_"</th>"
  W "<th>"_$$^%W1DICT("CARDNUMBER")_"</th>"
  W "<th>"_$$^%W1DICT("CUSTOMNAME")_"</th>"
  W "<th>"_$$^%W1DICT("AUTHNO")_"</th>"
  W "<th>"_$$^%W1DICT("SUM")_"</th>"
 W "</tr>",!
 ;
 S N="" F  S N=$O(@VRM@(N),-1) Q:N=""  D
 .S A=$G(^(N))
 .W "<tr style=""cursor:pointer"" "_$$^W4TOUCH_"=""Click('"_N_"')"">"
 . W "<td>"_$$RKV($$DAT(N))_"</td>"
 . W "<td>"_$$RKV($$CB(N))_"</td>"
 . W "<td>"_$$RKV($$CARD(N))_"</td>"
 . W "<td>"_$$RKV($$H2U^%L1FRM($$NAME(N)))_"</td>"
 . W "<td>"_$$RKV($$ASM(N))_"</td>"
 . W "<td>"_$$RKV($$SUM(N))_"</td>"
 .W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 D ^W4BTN("CLOSE","WmClose()","red")
 W "</div>",!
 Q
 ;
 ;
CLICK(INDEX) ;
 N (JB,%ARG,INDEX)
 N A S A=$G(@$$VRM@(INDEX))
 N CARD S CARD=$$CARD(INDEX)
 N LOI S LOI=$$ASM(INDEX)
 S ARM=$$ARM(INDEX)
 D PUT^%W3DEB("WMSHOWCB-CLICK","INDEX=INDEX&CARD=CARD&LOI=LOI")
 ;
 S RES=$$^WMTRANS("DLO",$$DLO^WMPREPSN(CARD,ARM,LOI))
 ;
 I $P(RES,"\")'=M1C("OK") Q RES
 ;
 D ^WMRCV2V("DLO")
 ;
 I $G(RCD) Q RCD_"\"_$$^WMGM(RCD,$$^WMERNM("DLO"))
 ;
 D ^WMPREPVW("DLO")
 ;
 S MES=$$^WMANS("DLO","MES0")
 I $L(MES) D
 .S KOT="qihxkl aivwz lehia;;;"_$G(COP)_";"_$G(LOI)_";"_$G(EMP)_";"_$G(BLF)_";"_$G(AML)
 .D ^WMPCMSG(MES,,KOT)
 ;
 S NEWCB=$$DELETE^W4LCBCR($$CB(INDEX))
 Q 1
 ;
 ;
DAT(N) N A S A=$G(@$$VRM@(N))
 N DAT S DAT=$$^%L1DC($P(A,"\",1),1)
 S DAT=$$^%L1DC(DAT,".")
 Q DAT
 ;
CB(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",2)
 ;
CARD(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",5)
 ;
ASM(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",4)
 ;
ARM(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",8)
 ;
NAME(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",7)
 ;
SUM(N) N A S A=$G(@$$VRM@(N))
 Q $P(A,"\",9)
 ;
RKV(VL,PR) ;
 I $G(VL)="" Q "&nbsp;"
 I $G(PR)="N" Q $J(VL,2,2)
 Q VL
 ;
VRM(STAM) ;
 Q $$^W4MAIN("VRM")

WMSPLIT
WMSPLIT(GL,STR,DLM) ; [ 24.08.15 03:10 ] [ 06.05.08 11:39 ] [ 24.04.08 12:50 ]
 N I K M1M F I=1:1:$L(STR,DLM) D
 .S @GL@(I)=$E($P(STR,DLM,I),1,400)
 .S M1M(I)=$P(STR,DLM,I)
 Q

WMSTR
WMSTR(STR) ; [ 24.08.15 03:10 ] [ 06.05.08 12:07 ] [ 13.04.08 18:52 ]
 I '$D(TS0) D ^%L1TS
 Q $C(1)_"ENC=0"_$C(2)_$TR(STR,TS0,TS1)_$C(3)_$$^%L1CRC8(STR)_$C(4)
 ;
UNPACK(STR) N A S A=$P($P(STR,$C(2),2,255),$C(3))
 N J F J=$L(A):-1:1 Q:$A(A,J)>31
 Q $E(A,1,J)

WMSUM
WMSUM ; [ 25.09.15 13:32 ] [ 12.09.15 13:43 ] [ 30.06.15 08:24 ] [
 N (JB,%ARG,%REM)
 S MAXL=8
 S %ARG("HD")="TYPESUM"
 I $$^WMPARAM("ORD")="PAY" D
 .N HZM S HZM=$$GETP^%W1PRM("HZM")
 .S %ARG("VL")=$$ITRA^W4HZMST(HZM)
 ;
 D ^W4KB
 Q
 ;
CRORD(PRM) ;
 N PRM1,SUM
 S PRM1=$P(PRM,";",1,2)
 S SUM=$P(PRM,";",3)
 D SET^WMANS("WMCARD","LOADSUM",SUM)
 D SET^WMANS("WMCARD","CARDNUMBER",$$^WMPARAM("MPCARD"))
 D CRORD^W4CARDVW(PRM1)
 Q

WMSV2ANS
WMSV2ANS(SCRN,PRM) ; [ 06.09.15 07:42 ] [ 23.06.15 17:57 ] [ 22.06.15 05:38 ] [
 N I,COUPL,RKV,VL
 I $G(SCRN)="" Q "ERRCD\NOSCRN"
 ;
 D CLEAR^WMANS(SCRN)
 ;
 F I=1:1:$L(PRM,";") D
 .S COUPL=$P(PRM,";",I)
 .S RKV=$P(COUPL,"=")
 .S VL=$P(COUPL,"=",2)
 .Q:RKV=""
 .D SET^WMANS(SCRN,RKV,VL)
 Q 1

WMTMP
WMTMP(STAM) ; [ 10.09.15 13:11 ] [
 Q $$^W4MAIN("TMPMP")

WMTMPPC
WMTMPPC(STAM) ; [ 20.09.15 14:24 ] [
 Q $$^W4MAIN("TMPPC")

WMTRANS
WMTRANS(FN,ST)  ; [ 20.09.15 18:52 ] [ 17.09.15 18:43 ] [ 12.09.15 07:33 ]
 N (JB,%ARG,FN,ST,RCD,RPT,ERR) D ^WMIN
 K @$$^W4GL("WMGT")@("RCV",JB,FN)
 ;
 S RES=$$^WMCON(ST)
 ;
 I RES'=M1C("OK") D CLOSE^WMCON Q $$^WMERR(RES,$G(ERR))
 ;
 S STO=$$^WMGETANS
 S ER=$P(STO,"\") I ER D CLOSE^WMCON Q $$^WMERR(ER,$G(ERR))
 ;
 S RES=M1C("OK")
 S PROG=FN_"^WMPREPRC(STO)" ; ---> ^WMGT
 D @PROG
 ;
END Q RES

WMZ
WMZ ; [ 24.08.15 03:17 ] [ 24.04.08 14:01 ] [
 N Z S Z=$G(@$$^W4GL("Z"))
 S RES=$$^WMTRANS("ZED",$$ZED^WMPREPSN(Z))
 Q

WNBITHZ
M1BITHZ ; [ 22.08.15 12:27 ] [ 22.06.09 18:12 ] [ 07.06.08 19:59 ]
 N (%UPRCOD,%XMSG,%XMSGV,%XMSGN,%CV,%POSIC,%HBRY) D ^%L1C,^M1IN
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":ER^%L1X"
 D VVCRD ; --> COP, MCARD, ARM
 I '$G(MCARD) G END
 D ^M1RCV2V("GET")
 I RCD'=0 Q
 D MSGOK
 D HZ I $G(HZMNEW)<1 D  G END
 .I $G(HZMNEW)=-1 S %GET="<ENTER> ugl. iekifl zepnfd oi`"
 .I '$G(HZMNEW) S %GET="<ENTER> ugl. dpnfd iekifa d`iby"
 .D N^%L1GET Q
 ;
END Q
 ;
VVCRD ;
 D ^M1GETDET
 Q
HZ ;
 D ^M1BITHZ1(COP,CRD)
 Q
SEND ;
 D ^M1TRANS("BLD",$$BLD^M1PREPSN(BLI))
 I $G(RES)'=M1C("OK") Q
 D ^M1RCV2V("BLD")
 I RCD D ^M1GM(RCD,$G(ERR)) Q
 I $L($G(MES)) S KOT="'hxkl mihixt lehia;;;"_$G(COP)_";"_BLI_";"_$G(EMP)_";"_$G(BLF)_";"_$G(TRS) D ^M1PCMSG(MES("MES0"),,KOT)
 D MSGOK2
 Q
MSGER S %GET="<ENTER> ugl. ("_$G(RCD)_" gewl ipezp zlawa d`iby"
 D N^%L1GET Q
MSGER1 S %GET="<ENTER> ugl. ("_$G(RCD)_") dpnfd lehiaa d`iby"
 D N^%L1GET Q
MSGOK S %GET="<ENTER> ugl. dglvda elawzd gewl ipezp"
 D N^%L1GET Q
MSGOK2 S %GET="<ENTER> ugl. dglvda mlyed dpnfd lehia"
 D N^%L1GET Q

WO
WO(STAM) ; [ 30.08.10 10:49 ] [
 Q $$^W4MAIN("WO")

WO12MER
WO1MER ; [ 13.08.09 18:38 ] [ 06.07.08 14:21 ] [
 I $ZV["GT.M" D  Q
 .S $ZROUTINES=^UCI("MGR"),$ZGBLDIR=^UCI("MGG")

WO12MLY
WO12MLY ; [ 13.08.09 18:37 ] [ 06.07.08 14:20 ] [
 I $ZV["GT.M" D  Q
 .S $ZROUTINES=@$$^W4GL("UCI")@("MLR"),$ZGBLDIR=$$^WO1MLG

WO1A
WO1A ; [ 12.08.09 22:37 ] [
 S STOU="A100"
 S @$$^WOG@("NP")=1
 ;
 S STOU=STOU_$$NP^WO1P("NP")
 S STOU=STOU_$$HP^WO1P
 S STOU=STOU_$$RN^WO1P
 S STOU=STOU_$$VER^WO1P
 S STOU=STOU_$TR($J("",50)," ","!")
 ;
 D ^WO1WR("BKMVDATA.TXT",STOU,"W")
 ;
 S @$$^WOG@("NP")=$G(@$$^WOG@("NP"))+1
 Q

WO1CB
WO1CB ; - HAZMANAT KUPA [ 17.03.24 17:38 ] [ 18.04.16 11:42 ] [ 23.03.15 12:14 ] 
 N DT,STOUT,HZ,CB,SH
 D GETDT^WO1P
 D GLCB
 D GLCBV
 ;
 N SH S SH=0
 S CB="" F  S CB=$O(@$$^W4KLIN@("CB",CB)) Q:CB=""  D
 .S LKH=$G(^(CB)) Q:LKH=""
 .S HD=$G(@GLCB@(CB)) Q:HD=""
 .S DTCB=$$^%L1DC($P(HD,"\",4),4)
 .I DTCB<DT1!(DTCB>DT2) Q
 .S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 .S STOUT="C100"
 .S CBL=LKH_";"_CB
 .S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_400
 .S STOUT=STOUT_$$NOMDOC^WO1P("CB",CB)
 .S STOUT=STOUT_$$DATHFK^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SHAHFK^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SHEMLAK^WO1P("CB",CBL)
 .S STOUT=STOUT_$$STREET^WO1P("CB",CBL)
 .S STOUT=STOUT_$$BAIT^WO1P("CB",CBL)
 .S STOUT=STOUT_$$IR^WO1P("CB",CBL)
 .S STOUT=STOUT_$$MIKUD^WO1P("CB",CBL)
 .S STOUT=STOUT_$$COUNTRYNM^WO1P("CB",CBL)
 .S STOUT=STOUT_$$COUNTRYCD^WO1P("CB",CBL)
 .S STOUT=STOUT_$$TEL^WO1P("CB",CBL)
 .S STOUT=STOUT_$$HPLAK^WO1P("CB",CBL)
 .S STOUT=STOUT_$$TRHER^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SHUMMB^WO1P("CB",CBL)
 .S STOUT=STOUT_$$CODMB^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SUMLFHN^WO1P("CB",CBL)
 .S STOUT=STOUT_$$HN^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SUMAHHN^WO1P("CB",CBL)
 .S STOUT=STOUT_$$MAM^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SUMMAM^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SUMNIKUY^WO1P("CB",CBL)
 .S STOUT=STOUT_$$LAKSAP^WO1P("CB",CBL)
 .S STOUT=STOUT_$$HATAMA^WO1P("CB",CBL)
 .S STOUT=STOUT_$$BIT^WO1P("CB",CBL)
 .S STOUT=STOUT_$$TRH^WO1P("CB",CBL)
 .S STOUT=STOUT_$$SNIF^WO1P("CB",CBL)
 .;;S STOUT=STOUT_$TR($J("",29)," ","!")
 .D DOPC^WO1P("CB",CB)
 .;
 .D ^WOW(STOUT)
 .S NOM=0
 .S NR="" F  S NR=$O(@GLCB@(CB,NR)) Q:NR=""  I NR?1N.N D
 ..N NCHECK S NCHECK=$P($G(^(NR)),"\",6)
 ..I $E(NCHECK)="B"!($E(NCHECK)="a") D STR("HV") Q
 ..D STR("CH")
 .I $P(@GLCB@(CB),"\",2)!'$$TOT^W4LCBCR(CB) D STR("MZ")
 .I $D(@GLCBV@(CB))#2 D
 ..N CBV S CBV=$G(^(CB))
 ..I $P(CBV,"*",1,2)="**" Q
 ..N COLT,NT
 ..S COLT=+$$SPA^%L1FRM($P(CBV,"*",9))
 ..I 'COLT D STR("CA",0) Q
 ..D STR("CA",1) Q:COLT'>1
 ..F NT=2:1:COLT+1 D STR("CA",NT)
 Q
 ;
STR(VT,NT) ;
 I VT="CH"!(VT="HV") N STC S STC=$G(@GLCB@(CB,NR)) Q:STC=""
 N STHD S STHD=$G(@GLCB@(CB)) Q:STHD=""
 S STOUT="D120"
 S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_400 ;--- 400 - SUG MISMAH ( CB)
 S STOUT=STOUT_$$NOMDOC^WO1P("CB",CB)
 S NOM=NOM+1
 N NOM1 S NOM1=$$NMB^WO1P(NOM,4)
 ;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 S STOUT=STOUT_NOM1
 S STOUT=STOUT_$S(VT="MZ":1,VT="CH":2,VT="CA":3,VT="HV":4,1:0)
 ;
 I VT="MZ"!(VT="CA") D
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; BANK
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; SNIF
 .S STOUT=STOUT_$$NMB^WO1P("",15) ; HESB
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; CHECK
 .
 .I VT="MZ" D
 ..S STOUT=STOUT_$$DATCB(CB) ;DAT
 ..S STOUT=STOUT_$$TOT^WO1P($P(STHD,"\",2),15,2)
 .
 .I VT="CA" D
 ..N CBV S CBV=$G(@GLCBV@(CB))
 ..S KFV=1 I $P(CBV,"*",4)=3 S KFV=-1
 ..I '$G(NT) D  Q
 ...S STOUT=STOUT_$$DATCB(CB) ;DAT
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",6),15,2)
 ..I $G(NT)=1 D  Q
 ...S STOUT=STOUT_$$DATCB(CB) ;DAT
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",8)*.01*KFV,15,2)
 ..I $G(NT)>1 D  Q
 ...N DT S DT=$$^%L1DC($$DATCB1(CB),4)
 ...N NEWDAT S NEWDAT=20_$$^%L1DC(DT+((NT-1)*30),2)
 ...S STOUT=STOUT_NEWDAT
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",10)*.01*KFV,15,2)
 ;
 I VT="CH"!(VT="HV") D
 .S STOUT=STOUT_$$NMB^WO1P($P(STC,"\",2),10) ; BANK
 .S STOUT=STOUT_$$NMB^WO1P($P(STC,"\",3),10) ; SNIF
 .S STOUT=STOUT_$$NMB^WO1P($P(STC,"\",5),15) ; HESB
 .N CH S CH=$P(STC,"\",6)
 .I VT="HV" S CH=$E(CH,2,20)
 .I 'CH S CH=1
 .S STOUT=STOUT_$$NMB^WO1P(CH,10) ; CHECK
 .S STOUT=STOUT_$$DAT^WO1P($P(STC,"\",7)) ; DAT
 .S STOUT=STOUT_$$TOT^WO1P($P(STC,"\",1),15,2)
 ;
 N SNIF S SNIF=$G(@$$^W4PL@("SNIF"))
 ;
 I VT="CH"!(VT="MZ")!(VT="HV") D
 .S STOUT=STOUT_$$NMB^WO1P(0,1) ; - COD HEVRA SOLEKET
 .S STOUT=STOUT_$$CHR^WO1P("",20) ; -SHEM CARD NISLAK
 .S STOUT=STOUT_$$NMB^WO1P(0,1) ; - SUG ISK ASR
 .S STOUT=STOUT_$$CHR^WO1P(SNIF,7) ; - SUG ISK ASR
 ;
 I VT="CA" D
 .N ST S ST=@GLCBV@(CB)
 .S STOUT=STOUT_$$NMB^WO1P($E($P(ST,"*"),3),1) ; - COD HEVRA SOLEKET
 .S STOUT=STOUT_$$CHR^WO1P($P(ST,"*",20),20) ; -SHEM CARD NISLAK
 .N SIA S SIA=$P(ST,"*",5)
 .S SIA=$S(SIA'>1:1,SIA=8:2,1:3)
 .S STOUT=STOUT_$$NMB^WO1P(SIA,1) ; - SUG ISK ASR
 .S STOUT=STOUT_$$CHR^WO1P(SNIF,7) ; - SNIF
 ;
 ;;S STOUT=STOUT_$$CHR^WO1P("",75) ; - ATIDI
 N TRH S TRH=$P(@GLCB@(CB),"\",4)
 D DOPD^WO1P("CB",CB_";"_20_$TR($J(TRH,6)," ",0))
 ;;W $$CHR^WO1P("",32)
 ;
 D ^WOW(STOUT)
 Q
 ;
GLCB S GLCB=$$^W4GL("KLF")_"(LKH,""CB"")"
 Q
GLCBV S GLCBV=$$^W4GL("KLF")_"(LKH,""CBV"")"
 Q
 ;
DATCB(CB) Q 20_$$DATCB1(CB)
 ;
DATCB1(CB) ;
 N STHD S STHD=$G(@GLCB@(CB))
 Q $TR($J($P(STHD,"\",4),6)," ",0)
 
 
 
 

WO1CODP
WO1CODP(CODP) ; [ 03.08.12 18:27 ] [ 27.02.12 16:19 ] [
 I $G(CODP)="" Q 0
 S CODP=$$FUNC^%UCASE(CODP)
 Q CODP

WO1GLFLD
WO1GLFLD ; [ 13.08.09 18:29 ] [
PTIHA ;
 S A100(1100)="A100"
 S A100(1101)=$TR($J("",9)," ",0) ;-  MISP RESHIMA
 S A100(1102)=$$HP^WO1P
 S A100(1103)=$$RN^WO1P
 S A100(1104)="&OF1.30&"
 S A100(1105)=$TR($J("",50)," ","!") ; -- SHIMUSH ATIDI
 Q
SGIRA ;
 S Z900(1150)="Z900"
 S Z900(1151)=$TR($J("",9)," ",0) ; MISP RESHIMA
 S Z900(1152)=$$HP^WO1P
 S Z900(1153)=$$RN^WO1P
 S Z900(1154)="&OF1.30&"
 S Z900(1155)=$TR($J("",15)," ","0") ; SAH RESHIMOT
 S Z900(1156)=$TR($J("",50)," ","!") ; ATIDI
 Q
HEADER ;
 S C100(1200)="C100"
 S C100(1201)=$TR($J("",9)," ",0) ; MISP RESHIMA
 S C100(1202)=$TR($J($$HP^WO1P,9)," ",0)
 S C100(1203)=$TR($J("",3)," ",0) ; SUG MISMAH
 S C100(1204)=$TR($J("",20)," ","!") ; MISP MISMAH
 S C100(1205)=$TR($J("",8)," ","0") ; TAARIH HAFAKA (YYYYMMDD)
 S C100(1206)=$TR($J("",4)," ","0") ; SHAA
 S C100(1207)=$TR($J("",50)," ","!") ; SHEM LAK/SAPAK
 S C100(1208)=$TR($J("",50)," ","!") ; REHOV LAK/SAP
 S C100(1209)=$TR($J("",10)," ","!") ; BAIT
 S C100(1210)=$TR($J("",30)," ","!") ; IR
 S C100(1211)=$TR($J("",8)," ","!") ; MIKUD
 S C100(1212)=$TR($J("",30)," ","!") ; MEDINA
 S C100(1213)=$TR($J("",2)," ","!") ; KOD MEDINA
 S C100(1214)=$TR($J("",15)," ","!") ; TEL LAK /SAP
 S C100(1215)=$TR($J("",9)," ","0") ; HP LAK/SAPAK
 S C100(1216)=$TR($J("",8)," ","0") ; TAARIH EREH (YYYYMMDD)
 S C100(1217)=$TR($J("",15)," ","0") ; SHUM SOFI BE MATAH (12V2)
 S C100(1218)=$TR($J("",3)," ","!") ; MATAH
 S C100(1219)=$TR($J("",15)," ","0") ; SHUM LIFNEY HANAHA
 S C100(1220)=$TR($J("",15)," ","0") ; HANAHAT MISMAH
 S C100(1221)=$TR($J("",15)," ","0") ; SHUM AHAREY HANAHA LIFNEY MAM
 S C100(1222)=$TR($J("",15)," ","0") ; MAM
 S C100(1223)=$TR($J("",15)," ","0") ; SHUM AHAREY HANAHA KOLEL MAM ( KABALA - LELO NIKUY MAKOR)
 S C100(1224)=$TR($J("",12)," ","0") ; NIKUY MAS   MAKOR
 S C100(1225)=$TR($J("",15)," ","!") ; CODE LAK /SAP
 S C100(1226)=$TR($J("",10)," ","!") ; SADE HATAMA
 S C100(1228)=$TR($J("",1)," ","!") ; SIMAN BITUL
 S C100(1230)=$TR($J("",8)," ","0") ; TAAR MISMAH
 S C100(1231)=$TR($J("",7)," ","!") ; SNIF
 S C100(1232)=$TR($J("",29)," ","!") ;  ATIDI
 Q
DETCB ;
 S D120(1300)="D120"
 S D120(1301)=$TR($J("",9)," ",0) ;-  MISP RESHIMA
 S D120(1302)=$$HP^WO1P
 S D120(1303)=$TR($J("",3)," ",0) ; SUG MISM
 S D120(1304)=$TR($J("",20)," ","!") ; MISP MISM
 S D120(1305)=$TR($J("",4)," ",0) ;-  MISP SHURA BEMISMAH
 S D120(1306)=$TR($J("",1)," ",0) ;-  SUG TASHL
 S D120(1307)=$TR($J("",10)," ",0) ;-  MISP BANK
 S D120(1308)=$TR($J("",10)," ",0) ;-  MISP SNIF
 S D120(1309)=$TR($J("",15)," ",0) ;-  MISP HESHBON
 S D120(1310)=$TR($J("",10)," ",0) ;-  MISP CHECK
 S D120(1311)=$TR($J("",8)," ",0) ;-  LE PRAON
 S D120(1312)=$TR($J("",15)," ",0) ;-  TOTAL
 S D120(1313)=$TR($J("",1)," ",0) ;-  CODE HEVRA SOLEKET
 S D120(1314)=$TR($J("",20)," ","!") ;-  SHEM KARTIS NISLAK
 S D120(1315)=$TR($J("",1)," ",0) ;-  SUG ISKAT ASHRAI
 S D120(1320)=$TR($J("",7)," ","!") ;-  SNIF
 S D120(1321)=$TR($J("",75)," ","!") ;-  ATIDI
 Q
DET ;
 S D110(1250)="D110"
 S D110(1251)=$TR($J("",9)," ",0) ;-  MISP RESHIMA
 S D110(1252)=$$HP^WO1P
 S D110(1253)=$TR($J("",3)," ",0) ; SUG MISM
 S D110(1254)=$TR($J("",20)," ","!") ; MISP MISM
 S D110(1255)=$TR($J("",4)," ",0) ;-  MISP SHURA BEMISMAH
 S D110(1256)=$TR($J("",3)," ",0) ;-  SUG MISM
 S D110(1257)=$TR($J("",20)," ","!") ;-  MISP MISM BASIS
 S D110(1258)="0"
 S D110(1259)=$TR($J("",20)," ","!") ;-  COD PARIT PNIMI
 S D110(1260)=$TR($J("",30)," ","!") ;-  SHEM PARIT
 S D110(1261)=$TR($J("",50)," ","!") ;-  SHEM YAZRAN
 S D110(1262)=$TR($J("",30)," ","!") ;-  BARCODE
 S D110(1263)=$TR($J("",20)," ","!") ;-  TEUR EM (dcigi)
 S D110(1264)=$TR($J("",17)," ",0) ;-  X9(12)V9(4)  - KAMUT
 S D110(1265)=$TR($J("",15)," ",0) ;-  MAHIR LELO MAM (YAH)
 S D110(1266)=$TR($J("",15)," ",0) ;-  HNH LE SHUR
 S D110(1267)=$TR($J("",15)," ",0) ;-  SAH SHURA
 S D110(1268)=$TR($J("",4)," ",0) ;-  % MAM BE SHURA
 S D110(1270)=$TR($J("",7)," ","!") ;- MISP SNIF
 S D110(1271)=$TR($J("",43)," ","!") ;-  ATIDI
 Q
MLY ;
 S M100(1450)="M100"
 S M100(1451)=$TR($J("",9)," ",0) ;-  MISP RESHIMA
 S M100(1452)=$$HP^WO1P
 S M100(1453)=$TR($J("",20)," ","!") ;-  BC ?
 S M100(1454)=$TR($J("",20)," ","!") ;-  MISP PARIT ECEL SAPAK
 S M100(1455)=$TR($J("",20)," ","!") ;-  MISP PARIT PNIMI
 S M100(1456)=$TR($J("",50)," ","!") ;-  SHEM PARIT
 S M100(1457)=$TR($J("",10)," ","!") ;-  CODE MIUN ( MAHL, KVUZA )
 S M100(1458)=$TR($J("",30)," ","!") ;-  TEUR COD MIUN
 S M100(1459)=$TR($J("",20)," ","!") ;-  TEUR EM
 S M100(1460)=$TR($J("",12)," ","0") ;-  ITRAT PTIHA (KAMUT)
 S M100(1461)=$TR($J("",12)," ","0") ;-  SAH KNISOT BE PARIT
 S M100(1462)=$TR($J("",12)," ","0") ;-  SAH ECIYOT BE PARIT
 S M100(1463)=$TR($J("",10)," ","0") ;-  MH ALUT BE SOF TKUFA MI HUZ
 S M100(1464)=$TR($J("",10)," ","0") ;-  MH ALUT BE MAHSANIM  (BIFNIM)
 S M100(1466)=$TR($J("",50)," ","!") ;-  MH ALUT BE SOF TKUFA
 Q

WO1HB
WO1HB ; - HB MAS [ 17.03.24 17:39 ] [ 17.04.16 13:22 ] [ 15.01.15 11:04 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 ;----------------------- AUTO ------------------------------
 N SH S SH=0
 S LKH="" F  S LKH=$O(@$$^W4GL("P1LHB")@(LKH)) Q:LKH=""  D
 .S HB="" F  S HB=$O(@$$^W4GL("P1LHB")@(LKH,HB)) Q:HB=""  D
 ..S PRZIC=0,MIN=1,HB1=HB I HB<0 S PRZIC=1,MIN=-1,HB1=-HB
 ..S HD=$G(^(HB)) Q:HD=""
 ..S DT=$P(HD,"\",8) I DT<DT1!(DT>DT2) Q
 ..S SH=SH+1
 ..I $$^WOMAX,SH>$$WOMAX Q
 ..;;W HB," ",!
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_$S(PRZIC:330,1:305)
 ..S STOUT=STOUT_$$NOMDOC^WO1P("HZ",HB1)
 ..S STOUT=STOUT_$$DAT^WO1P($P($P(HD,"\",3)," "))
 ..S STOUT=STOUT_$$SHA^WO1P($P($P(HD,"\",3),"  ",2))
 ..S STOUT=STOUT_$$SHEMLAK^WO1P("HZ",LKH)
 ..S STOUT=STOUT_$$STREET^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$BAIT^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$IR^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$MIKUD^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$TEL^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$HPLAK^WO1P("HB",LKH)
 ..N DATHB S DATHB=$$DAT^WO1P($$DTHB(HD))
 ..S STOUT=STOUT_DATHB
 ..S STOUT=STOUT_$$SHUMMB^WO1P("HB",HB)
 ..S STOUT=STOUT_$$CODMB^WO1P("HB",HB)
 ..N LMAM S LMAM=$$LMAM(HD)*MIN
 ..N MAM S MAM=$$MAM(HD)*MIN
 ..S STOUT=STOUT_$$TOT^WO1P(LMAM,15)
 ..S STOUT=STOUT_$$TOT^WO1P(0,15)
 ..S STOUT=STOUT_$$TOT^WO1P(LMAM,15)
 ..S STOUT=STOUT_$$TOT^WO1P(MAM,15)
 ..S STOUT=STOUT_$$TOT^WO1P(LMAM+MAM,15)
 ..S STOUT=STOUT_$$TOT^WO1P(0,12) ; -- NIKUY MAS
 ..S STOUT=STOUT_$$CHR^WO1P(LKH,15)
 ..S STOUT=STOUT_$$HATAMA^WO1P("HB",HB)
 ..S STOUT=STOUT_"0" ; SIMAN BIT
 ..S STOUT=STOUT_$$DAT^WO1P($$DTHB(HD))
 ..S STOUT=STOUT_$$SNIF^WO1P("HB",HB)
 ..;;S STOUT=STOUT_$TR($J("",29)," ","!")
 ..D DOPC^WO1P("HB",HB1)
 ..D ^WOW(STOUT)
 ..
 ..N NR S NR=0 D
 ...S NR=NR+1 I '$P(HD,"\",4) Q
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_$S(PRZIC:330,1:305) ;--- SUG MISMAH ( HB)
 ...S STOUT=STOUT_$$NMB^WO1P(HB1,20)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 ...S STOUT=STOUT_$$CHR^WO1P("0",20) ; COD PAR
 ...S STOUT=STOUT_$$NAMEP^WO1P($P(HD,"\",10))
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...S STOUT=STOUT_$$TOT^WO1P(1,17,4)
 ...N MHLF S MHLF=$J($P(HD,"\",4)*MIN*100/(100+$$MAMD^W4L($$DTHB(HD))),2,2)
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...S STOUT=STOUT_$$TOT^WO1P(0,15,2) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...N DT S DT=$$DTHB(HD)
 ...N AHMAM S AHMAM=$$MAMD^W4L(DT)
 ...S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ...D DOPD^WO1P("HB",HB1_";"_DATHB)
 ...D ^WOW(STOUT)
 ..
 ..;;F I=14:2:20 D
 ...S NR=NR+1 I '$P(HD,"\",I),'$P(HD,"\",I+1) Q
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_$S(PRZIC:330,1:305) ;--- SUG MISMAH ( HB)
 ...S STOUT=STOUT_$$CHR^WO1P(HB1,20)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 ...S STOUT=STOUT_$$CHR^WO1P("0",20) ; COD PAR
 ...S STOUT=STOUT_$$CHR^WO1P(I-3,30)
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...S STOUT=STOUT_$$TOT^WO1P(1,17,4)
 ...N MHLF S MHLF=$P(HD,"\",I)*MIN
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...S STOUT=STOUT_$$TOT^WO1P(0,15,2) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...N DT S DT=$$DTHB(HD)
 ...N AHMAM S AHMAM=$$MAMD^W4L(DT)
 ...S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ...D DOPD^WO1P("HB",HB1)
 ...D ^WOW(STOUT)
 ;
 ; ---------------- YADANI -------------
 D ^WO1HBY("H")
 D ^WO1HBY("TZ")
 ;
 D ^WO1HBL("H")
 D ^WO1HBL("TZ")
 ;
 I $G(@$$^W4GL("PLUK"))["MLY" D
 .D ^WO1MHB2
 ;
 I $$^W4LKH D
 .D ^WO1IHBL("IHB")
 .D ^WO1IHBL("IHBZ")
 ;
 Q
 ;
MAM(HD) ;
 N MAM,I S MAM=0
 F I=14:2:20 S MAM=MAM+$P(HD,"\",I+1)-$P(HD,"\",I)
 Q MAM
LMAM(HD) ;
 N MAM,MAMAH
 S MAMAH=$$MAMD^W4L($$DTHB(HD))
 Q $J($P(HD,"\",4)*100/(100+MAMAH),2,2)
 ;
DTHB(HD) ;
 N DT S DT=$P(HD,"\",7)
 I DT'>0 S DT=$P(HD,"\",8)
 Q DT
 
 
 
 

WO1HBIL
WO1IHBL(CODDOC) ; - HB MAS [ 17.03.24 17:39 ] [ 09.10.18 12:35 ] [ 04.02.13 14:57 ] 
 N (CODDOC,JB,%ARG,%REM)
 D GETDT^WO1P
 S OD="HBW"
 S CODD=$S(CODDOC="IHBZ":330,1:305)
 ;;S DT1=$H-200,DT2=+$H
 S SH=0
 S SPK="" F  S SPK=$O(@GLSPHB@(SPK)) Q:SP=""  D
 .S HB="" F  S HB=$O(@GLSPHB@(SPK,HB)) Q:HB=""  D
 ..D ^W4HSBGET(HB,CODDOC) Q:'$D(W4HSB)
 ..S DT=$G(W4HSB("DT")) I DT<DT1!(DT>DT2) Q
 ..S SH=SH+1
 ..I $$^WOMAX,SH>$$WOMAX Q
 ..S DATHB=$G(W4HSB("TODATE"))
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_CODD
 ..S STOUT=STOUT_$$NOMDOC^WO1P(OD,HB)
 ..S DATHFK=$$DAT^WO1P($P(W4HSB("ISSUETIME"),"  "))
 ..S STOUT=STOUT_DATHFK
 ..S STOUT=STOUT_$$SHAHFK^WO1P(OD,$P(W4HSB("ISSUETIME"),"  ",2))
 ..S STOUT=STOUT_$$SHEMLAK^WO1P(OD,W4HSB("SPKNAME"))
 ..S STOUT=STOUT_$$STREET^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$BAIT^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$IR^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$MIKUD^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P(OD,HB)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P(OD,HB)
 ..S STOUT=STOUT_$$TEL^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$HPLAK^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$TRHER^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$SHUMMB^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$CODMB^WO1P(OD,HB)
 ..;
 ..N SUMLF,HN,SUMAHN,MAM,SUMMAM
 ..S SUMLF=$$SUMLFHN^WO1P(OD,W4HSB("LMAM"))
 ..S SUMAHN=$$SUMAHHN^WO1P(OD,W4HSB("LMAM")) ; ???
 ..S MAM=$$MAM^WO1P(OD,W4HSB("MAM"))
 ..S HN=0
 ..;
 ..S SUMMAM=$$SUMMAM^WO1P(OD,W4HSB("TOT"))
 ..;
 ..S STOUT=STOUT_SUMLF
 ..S STOUT=STOUT_HN
 ..S STOUT=STOUT_SUMAHN
 ..S STOUT=STOUT_MAM
 ..S STOUT=STOUT_SUMMAM
 ..;
 ..S STOUT=STOUT_$$SUMNIKUY^WO1P(OD,HB)
 ..S STOUT=STOUT_$$LAKSAP^WO1P(OD,HB)
 ..S STOUT=STOUT_$$HATAMA^WO1P(OD,HB)
 ..S STOUT=STOUT_$$BIT^WO1P(OD,HB)
 ..S STOUT=STOUT_$$TRH^WO1P(OD,HB)
 ..S STOUT=STOUT_$$SNIF^WO1P(OD,HB)
 ..;
 ..D DOPC^WO1P(OD,HB)
 ..D ^WOW(STOUT)
 ..
 ..S NR=1
 ..S STOUT="D110"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_CODD
 ..S STOUT=STOUT_$$NOMDOC^WO1P(OD,HB)
 ..S NOM=$$NMB^WO1P(NR,4)
 ..;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ..S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P(OD,HB)_"3"
 ..S STOUT=STOUT_$$CHR^WO1P("0",20) ; COD PAR
 ..S STOUT=STOUT_$$CHR^WO1P($G(W4HSB("DESC")),30) ; NAME PAR
 ..S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ..S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ..S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ..N KAM S KAM=1
 ..N SUM S SUM=$G(W4HSB("TOT"))
 ..S DISC=0
 ..I SUM,'KAM S KAM=1
 ..N MH D
 ...I 'SUM,'KAM S MH=0 Q
 ...S MH=$J(SUM-DISC/KAM,2,2)
 ..N AHMAM S AHMAM=$G(W4HSB("AHMAM"))
 ..N KFHBW,KFMAM,KF
 ..S KFMAM=100/(100+AHMAM)
 ..S KF=1
 ..S MHLF=MH*KFMAM
 ..;;W "HBW="_HB_"  MHLF="_MHLF_"  SUM="_(SUM*KF),! H 1
 ..S STOUT=STOUT_$$TOT^WO1P(KAM*KF,17,4)
 ..S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ..S STOUT=STOUT_$$TOT^WO1P(DISC,15,2) ; ---- HANAHAT SHURA
 ..S STOUT=STOUT_$$TOT^WO1P(SUM*KF*KFMAM,15,2)
 ..S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ..S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ..D DOPD^WO1P(OD,HB_";"_$$DAT^WO1P(DATHB))
 ..;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ..D ^WOW(STOUT)
 Q
 
 
 
 

WO1HBK
WO1HBK ; - HBK [ 17.03.24 17:40 ] [ 18.09.17 12:51 ] [ 18.04.16 11:43 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 ;
 ;;I $$^W4LKH D ^WO1HMKL Q
 K @$$^W4MAIN("MMM")
 D ^WO1HMKL
 ;
 N SH S SH=0
 F DT=DT1:1:DT2 D
 .S HB="" F  S HB=$O(@$$^W4GL("P1HBI")@(DT,HB)) Q:HB=""  I HB>0 D
 ..S HZ=$P($G(@$$^W4GL("P1HB")@(HB)),"\") Q:HZ<1
 ..S HD=$G(@$$^W4ORD@(HZ)) Q:HD=""
 ..S TRH=$$TRH^WO1P("HBK",HZ)
 ..I $D(@$$^W4MAIN("MMM")@(HZ)) Q
 ..S @$$^W4MAIN("MMM")@(HZ)=""
 ..S SH=SH+1
 ..I $$^WOMAX,SH>$$WOMAX Q
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320
 ..S STOUT=STOUT_$$NOMDOC^WO1P("HBK",HB)
 ..S STOUT=STOUT_$$DATHFK^WO1P("HBK",HZ)
 ..S STOUT=STOUT_$$SHAHFK^WO1P("HBK",HZ)
 ..S STOUT=STOUT_$$SHEMLAK^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$STREET^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$BAIT^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$IR^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$MIKUD^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$TEL^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$HPLAK^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$TRHER^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SHUMMB^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$CODMB^WO1P("HZ",HZ)
 ..N SUMLF,HN,SUMAHN,MAM,SUMMAM
 ..S SUMLF=$$SUMLFHN^WO1P("HBK",HZ)
 ..S SUMAHN=$$SUMAHHN^WO1P("HBK",HZ)
 ..S MAM=$$MAM^WO1P("HBK",HZ)
 ..S HN=$$HN^WO1P("HBK",HZ)
 ..S SUMMAM=$$SUMMAM^WO1P("HBK",HZ)
 ..;;W "HZ="_HZ_"  SUMLF="_SUMLF_"  SUMAHN="_SUMAHN_"  MAM="_MAM_" HN="_HN_"  SUMMAM="_SUMMAM,! H 2
 ..S STOUT=STOUT_SUMLF
 ..S STOUT=STOUT_HN
 ..S STOUT=STOUT_SUMAHN
 ..S STOUT=STOUT_MAM
 ..S STOUT=STOUT_SUMMAM
 ..S STOUT=STOUT_$$SUMNIKUY^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$LAKSAP^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$HATAMA^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$BIT^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$TRH^WO1P("HBK",HZ)
 ..S STOUT=STOUT_$$SNIF^WO1P("HZ",HZ)
 ..D DOPC^WO1P("HBK",HB)
 ..;;S STOUT=STOUT_$TR($J("",29)," ","!")
 ..D ^WOW(STOUT)
 ..
 ..N NR,STP S NR="" F  S NR=$O(@$$^W4ORD@(HZ,NR)) Q:NR=""  I NR?1N.N D
 ...S STP=$G(^(NR)) Q:STP=""
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320 ;--- 320 - SUG MISMAH ( HBK)
 ...S STOUT=STOUT_$$NOMDOC^WO1P("HZ",HB)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P("HZ",HZ)_"3"
 ...N CODP S CODP=$$^WO1CODP($P(STP,"\"))
 ...S STOUT=STOUT_$$CHR^WO1P(CODP,20) ; COD PAR
 ...S STOUT=STOUT_$$CHR^WO1P($P(STP,"\",3),30) ; NAME PAR
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...N KAM S KAM=$P(STP,"\",5)
 ...N SUM S SUM=$P(STP,"\",7)
 ...I SUM,'KAM S KAM=1
 ...N MH D
 ....I 'SUM,'KAM S MH=0 Q
 ....S MH=$J(SUM/KAM,2,2)
 ...N AHMAM S AHMAM=$$MAMAH^WO1P(HZ)
 ...N KFHBK,KFMAM,KF
 ...S KFMAM=100/(100+AHMAM)
 ...S KFHBK=$$KFHBK^WO1P(HZ)
 ...N ZNM S ZNM=$$TSHL^W4HZMST(HZ)+$$HNH^W4HZMST(HZ)-$$DMSH^W4HZMST(HZ)
 ...S KFTIP=1
 ...I ZNM,$$^W4TIPPD(DT) S KFTIP=($$SHUL^W4HZMST(HZ)+$$SHULA^W4HZMST(HZ)+$$HNH^W4HZMST(HZ)-$$DMSH^W4HZMST(HZ))/ZNM
 ...S KF=KFHBK*KFTIP
 ...S MHLF=MH*KFMAM
 ...;;W "HZ="_HZ_"  MHLF="_MHLF_"  SUM="_(SUM*KF)_"  KF="_KF,! H 1
 ...S STOUT=STOUT_$$TOT^WO1P(KAM*KF,17,4)
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...S STOUT=STOUT_$$TOT^WO1P(0,15,2) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(SUM*KF*KFMAM,15,2)
 ...S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...D DOPD^WO1P("HBK",HB_";"_TRH)
 ...D ^WOW(STOUT)
 ..
 ..N MZ S MZ=$P($G(@$$^W4ORD@(HZ,"CB")),"\",2)
 ..I MZ D SCB(HZ,"MZ")
 ..N NR,STP S NR="" F  S NR=$O(@$$^W4ORD@(HZ,"CB","CH",NR)) Q:NR=""  I NR?1N.N D
 ...D SCB(HZ,"CH",NR)
 ..N NR,STP S NR="" F  S NR=$O(@$$^W4ORD@(HZ,"CB","V",NR)) Q:NR=""  I NR?1N.N D
 ...D SCB(HZ,"CA",NR)
 ;
 K @$$^W4MAIN("MMM")
 Q
 ;
CRHZHB ;
 K @$$^W4GL("P1HZHB")
 N HB,HZ
 S HB="" F  S HB=$O(@$$^W4GL("P1HB")@(HB)) Q:HB=""  I HB>0 D
 .S HZ=+$G(^(HB)) Q:HZ<1
 .S @$$^W4GL("P1HZHB")@(HZ)=HB
 Q
 ;
 ;
SCB(HZ,VT,NR) ;
 N HCB S HCB=$P(@$$^W4ORD@(HZ,"CB"),"\") Q:'HCB
 I VT="CH" N STC S STC=$G(@$$^W4ORD@(HZ,"CB",VT,NR)) Q:STC=""
 S STOUT="D120"
 S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320
 S STOUT=STOUT_$$NOMDOC^WO1P("CB",HCB)
 S NOM=NOM+1
 N NOM1 S NOM1=$$NMB^WO1P(NOM,4)
 ;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER
 S STOUT=STOUT_NOM1
 S STOUT=STOUT_$S(VT="MZ":1,VT="CH":2,VT="CA":3,VT="HV":4,1:0)
 ;
 N TRH S TRH=$$TRH^WO1P("HBK",HZ)
 I VT="MZ"!(VT="CA") D
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; BANK
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; SNIF
 .S STOUT=STOUT_$$NMB^WO1P("",15) ; HESB
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; CHECK
 .
 .I VT="MZ" D
 ..S STOUT=STOUT_TRH
 ..S STOUT=STOUT_$$TOT^WO1P($P(@$$^W4ORD@(HZ,"CB"),"\",2),15,2)
 .
 .I VT="CA" D
 ..N CBV S CBV=$G(@$$^W4ORD@(HZ,"CB","V",NR))
 ..S KFV=1 I $P(CBV,"*",4)=3 S KFV=-1
 ..S NT=$P(CBV,"*",9)
 ..I '$G(NT) D  Q
 ...S STOUT=STOUT_TRH
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",6),15,2)
 ..I $G(NT)<2 D  Q
 ...S STOUT=STOUT_TRH
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",8)*.01*KFV,15,2)
 ..I $G(NT)>1 D  Q
 ...N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZ),3)
 ...N NEWDAT S NEWDAT=20_$$^%L1DC(DT+((NT-1)*30),2)
 ...S STOUT=STOUT_NEWDAT
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",10)*.01*KFV,15,2)
 ;
 I VT="CH"!(VT="HV") D
 .S STOUT=STOUT_$$NMB^WO1P($P(STC,"\",2),10) ; BANK
 .S STOUT=STOUT_$$NMB^WO1P($P(STC,"\",3),10) ; SNIF
 .S STOUT=STOUT_$$NMB^WO1P($P(STC,"\",5),15) ; HESB
 .N CH S CH=$P(STC,"\",6)
 .I VT="HV" S CH=$E(CH,2,20)
 .I 'CH S CH=1
 .S STOUT=STOUT_$$NMB^WO1P(CH,10) ; CHECK
 .S STOUT=STOUT_$$DAT^WO1P($P(STC,"\",7)) ; DAT
 .S STOUT=STOUT_$$TOT^WO1P($P(STC,"\",1),15,2)
 ;
 I VT="CH"!(VT="MZ") D
 .S STOUT=STOUT_$$NMB^WO1P(0,1) ; - COD HEVRA SOLEKET
 .S STOUT=STOUT_$$CHR^WO1P("",20) ; -SHEM CARD NISLAK
 .S STOUT=STOUT_$$NMB^WO1P(0,1) ; - SUG ISK ASR
 .S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7) ; - SUG ISK ASR
 ;
 I VT="CA" D
 .N ST S ST=$G(@$$^W4ORD@(HZ,"CB","V",NR)) Q:ST=""
 .S STOUT=STOUT_$$NMB^WO1P($E($P(ST,"*"),3),1) ; - COD HEVRA SOLEKET
 .S STOUT=STOUT_$$CHR^WO1P($P(ST,"*",20),20) ; -SHEM CARD NISLAK
 .N SIA S SIA=$P(ST,"*",5)
 .S SIA=$S(SIA=1:1,SIA=8:2,1:3)
 .S STOUT=STOUT_$$NMB^WO1P(+$P(ST,"*",5),1) ; - SUG ISK ASR
 .S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7) ; - SNIF
 ;
 S STOUT=STOUT_$$DOPD1^WO1P("HBK",HCB_";"_TRH)
 S STOUT=STOUT_$$CHR^WO1P("",39) ; - ATIDI
 ;
 D ^WOW(STOUT)
 Q
 
 
 
 
 

WO1HBKL
WO1HMKL ; - HMK - W4LKH [ 17.03.24 17:40 ] [ 16.02.13 11:48 ] [ 27.02.12 16:20 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 N LK ;
 N SH SH=0
 S DT=DT1-1 F  S DT=$O(@$$^W4GL("KLIN")@("DT","HMK",DT)) Q:DT=""  Q:DT>DT2  D
 .S HMK=$G(^(DT))
 .D ^W4HSBGET(HMK,"HMK")
 .S LK=$G(W4HSB("LKH"))
 .S STOUT="C100"
 .S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320
 .S STOUT=STOUT_$$NOMDOC^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$DATHFK^WO1P("HMK",W4HSB("ISSUETIME"))
 .S STOUT=STOUT_$$SHAHFK^WO1P("HMK",W4HSB("ISSUETIME"))
 .S STOUT=STOUT_$$SHEMLAK^WO1P("HMK",W4HSB("LKHNAME"))
 .S STOUT=STOUT_$$STREET^WO1P("HMK",LK)
 .S STOUT=STOUT_$$BAIT^WO1P("HMK",LK)
 .S STOUT=STOUT_$$IR^WO1P("HMK",LK)
 .S STOUT=STOUT_$$MIKUD^WO1P("HMK",LK)
 .S STOUT=STOUT_$$COUNTRYNM^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$COUNTRYCD^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$TEL^WO1P("HMK",LK)
 .S STOUT=STOUT_$$HPLAK^WO1P("HMK",HMK) ; -- ?
 .S STOUT=STOUT_$$TRHER^WO1P("HMK",HMK) ; -- ?
 .S STOUT=STOUT_$$SHUMMB^WO1P("HMK",HMK) ; -- ?
 .S STOUT=STOUT_$$CODMB^WO1P("HMK",HMK)
 .N SUMLF,HN,SUMAHN,MAM,SUMMAM
 .S SUMLF=$$SUMLFHN^WO1P("HMK",W4HSB("LMAM"))
 .S SUMAHN=$$SUMAHHN^WO1P("HMK",HMK)
 .S MAM=$$MAM^WO1P("HMK",W4HSB("MAM"))
 .S HN=$$HN^WO1P("HMK",HMK)
 .S SUMMAM=$$SUMMAM^WO1P("HMK",W4HSB("TOT"))
 .;
 .S STOUT=STOUT_SUMLF
 .S STOUT=STOUT_HN
 .S STOUT=STOUT_SUMAHN
 .S STOUT=STOUT_MAM
 .S STOUT=STOUT_SUMMAM
 .S STOUT=STOUT_$$SUMNIKUY^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$LAKSAP^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$HATAMA^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$BIT^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$TRH^WO1P("HMK",HMK)
 .S STOUT=STOUT_$$SNIF^WO1P("HMK",HMK)
 .D DOPC^WO1P("HMK",HB)
 .D ^WOW(STOUT)
 .
 .S LK0=$G(@$$^W4GL("KLIN")@("HMK",HMK))
 .I LK0["W" D
 ..N NR,STP S NR="" F  S NR=$O(@$$^W4GL("W4DOC")@(HMK,NR)) Q:NR=""  I NR?1N.N D
 ...S STP=$G(^(NR)) Q:STP=""
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320 ;--- 320 - SUG MISMAH ( HMK)
 ...S STOUT=STOUT_$$NOMDOC^WO1P("HZ",HB)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...N KAM S KAM=$P(STP,"\",5)
 ...N SUM S SUM=$P(STP,"\",7)
 ...I SUM,'KAM S KAM=1
 ...N MH D
 ....I 'SUM,'KAM S MH=0 Q
 ....S MH=$J(SUM/KAM,2,2)
 ...S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P("HZ",HZ)_"3"
 ...N CODP S CODP=$$^WO1CODP(STP,"\")
 ...S STOUT=STOUT_$$CODP^WO1P(CODP,MH) ; COD PAR
 ...S STOUT=STOUT_$$CHR^WO1P($P(STP,"\",3),30) ; NAME PAR
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...N AHMAM S AHMAM=$$MAMAH^WO1P(HZ)
 ...N KFHMK,KFMAM,KF
 ...S KFMAM=100/(100+AHMAM)
 ...S KFHMK=$$KFHMK^WO1P(HZ)
 ...N ZNM S ZNM=$$TSHL^W4HZMST(HZ)+$$HNH^W4HZMST(HZ)-$$DMSH^W4HZMST(HZ)
 ...S KFTIP=1
 ...I ZNM S KFTIP=($$SHUL^W4HZMST(HZ)+$$SHULA^W4HZMST(HZ)+$$HNH^W4HZMST(HZ)-$$DMSH^W4HZMST(HZ))/ZNM
 ...S KF=KFHMK*KFTIP
 ...S MHLF=MH*KFMAM
 ...;;W "HZ="_HZ_"  MHLF="_MHLF_"  SUM="_(SUM*KF)_"  KF="_KF,! H 1
 ...S STOUT=STOUT_$$TOT^WO1P(KAM*KF,17,4)
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...S STOUT=STOUT_$$TOT^WO1P(0,15,2) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(SUM*KF*KFMAM,15,2)
 ...S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...D DOPD^WO1P("HMK",HB_";"_$$DATHFK^WO1P("HMK",HZ))
 ...;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ...D ^WOW(STOUT)
 Q
 

WO1HBL
WO1HBL(CODDOC) ; - HB MAS MEFURATET [ 17.03.24 17:40 ] [ 09.10.18 12:35 ] [ 13.01.15 14:48 ] 
 N (CODDOC,JB,%ARG,%REM)
 D GETDT^WO1P
 S OD="HBW"
 S CODD=$S(CODDOC="TZ":330,CODDOC="TM":200,1:305)
 ;;S DT1=$H-200,DT2=+$H
 ;
 N SH S SH=0
 S HB="" F  S HB=$O(@$$^W4GL("KLIN")@(CODDOC,HB)) Q:HB=""  D
 .S LK0=$G(^(HB)) Q:LK0'["W"  D
 ..S NOMDOC=$P(LK0,"W",2) Q:NOMDOC=""
 ..S LK=$P($G(@$$^W4GL("KLIN")@(CODDOC,HB)),"W",1)
 ..D ^W4HSBGET(HB,CODDOC) Q:'$D(W4HSB)
 ..S DT=$G(W4HSB("DT")) I DT<DT1!(DT>DT2) Q
 ..S SH=SH+1
 ..I $$^WOMAX,SH>$$WOMAX Q
 ..S DATHB=$G(W4HSB("TODATE"))
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_CODD
 ..S STOUT=STOUT_$$NOMDOC^WO1P(OD,HB)
 ..S DATHFK=$$DAT^WO1P($P(W4HSB("ISSUETIME"),"  "))
 ..S STOUT=STOUT_DATHFK
 ..S STOUT=STOUT_$$SHAHFK^WO1P(OD,$P(W4HSB("ISSUETIME"),"  ",2))
 ..S STOUT=STOUT_$$SHEMLAK^WO1P(OD,W4HSB("LKHNAME"))
 ..S STOUT=STOUT_$$STREET^WO1P(OD,LK)
 ..S STOUT=STOUT_$$BAIT^WO1P(OD,LK)
 ..S STOUT=STOUT_$$IR^WO1P(OD,LK)
 ..S STOUT=STOUT_$$MIKUD^WO1P(OD,LK)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P(OD,HB)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P(OD,HB)
 ..S STOUT=STOUT_$$TEL^WO1P(OD,LK)
 ..S STOUT=STOUT_$$HPLAK^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$TRHER^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$SHUMMB^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$CODMB^WO1P(OD,HB)
 ..;
 ..N SUMLF,HN,SUMAHN,MAM,SUMMAM
 ..D TOT^W4DOC(NOMDOC)
 ..S HN=DISCNIS+DISCA-DMSH-IGUL
 ..S HN=$J(HN*100/(100+AHMAM),2,2) ; ??
 ..
 ..S SUMLF=$$SUMLFHN^WO1P(OD,LMAM+HN)
 ..S SUMAHN=$$SUMAHHN^WO1P(OD,SHUM-MAM) ; ???
 ..S MAM=$$MAM^WO1P(OD,MAM)
 ..;;S HN=$$HN^WO1P(OD,$$DISC(HB))
 ..N AHMAM S AHMAM=+$$AHMAM^W4DOC(NOMDOC)
 ..S HN=$$HN^WO1P(OD,-HN)
 ..;
 ..S SUMMAM=$$SUMMAM^WO1P(OD,SHUM)
 ..;
 ..S STOUT=STOUT_SUMLF
 ..S STOUT=STOUT_HN
 ..S STOUT=STOUT_SUMAHN
 ..S STOUT=STOUT_MAM
 ..S STOUT=STOUT_SUMMAM
 ..;
 ..S STOUT=STOUT_$$SUMNIKUY^WO1P(OD,HB)
 ..S STOUT=STOUT_$$LAKSAP^WO1P(OD,HB)
 ..S STOUT=STOUT_$$HATAMA^WO1P(OD,HB)
 ..S STOUT=STOUT_$$BIT^WO1P(OD,HB)
 ..S STOUT=STOUT_$$DAT^WO1P(DATHB)
 ..S STOUT=STOUT_$$SNIF^WO1P(OD,HB)
 ..;
 ..D DOPC^WO1P(OD,HB)
 ..D ^WOW(STOUT)
 ..
 ..N NR,STP S NR="" F  S NR=$O(@$$^W4GL("W4DOC")@(NOMDOC,NR)) Q:NR=""  I NR?1N.N D
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_CODD
 ...S STOUT=STOUT_$$NOMDOC^WO1P(OD,HB)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P(OD,HB)_"3"
 ...N CODP S CODP=$$^WO1CODP($$CODE^W4DOC(NOMDOC,NR))
 ...S STOUT=STOUT_$$CODP^WO1P(CODP,$$PRC^W4DOC(NOMDOC,NR)) ; COD PAR
 ...S STOUT=STOUT_$$CHR^WO1P($$NAME^W4DOC(NOMDOC,NR),30) ; NAME PAR
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...N KAM S KAM=$J($$QN^W4DOC(NOMDOC,NR),2,2)
 ...N SUM S SUM=$J($$BFTAX^W4DOC(NOMDOC,NR),2,2)
 ...I SUM,'KAM S KAM=1
 ...S MH=$$PRC^W4DOC(NOMDOC,NR)
 ...N AHMAM S AHMAM=+$$AHMAM^W4DOC(NOMDOC)
 ...I $$PRMAM^W4DOC(NOMDOC) S MH=MH*100/(100+AHMAM)
 ...S DISCAH=$$DISC^W4DOC(NOMDOC,NR)
 ...S DISC=$J(KAM*MH*DISCAH*.01,2,2)
 ...S MHLF=MH
 ...;;W "HBW="_HB_"  MHLF="_MHLF_"  SUM="_(SUM*KF),! H 1
 ...S STOUT=STOUT_$$TOT^WO1P(KAM,17,4)
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...S STOUT=STOUT_$$TOT^WO1P(-DISC,15,2) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(SUM,15,2)
 ...S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...D DOPD^WO1P(OD,HB_";"_$$DAT^WO1P(DATHB))
 ...;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ...D ^WOW(STOUT)
 Q
 ;
DISC(HBW) ;
 N LK0,HN S HN=0
 S LK0=$G(@$$^W4GL("KLIN")@(OD,HBW))
 I LK0["W" D
 .S NOMDOC=$P(LK0,"W",2) Q:'NOMDOC
 .S HN=$$DISCNIS^W4DOC(NOMDOC)-$$DMSH^W4DOC(NOMDOC)
 Q HN
 
 
 

WO1HBY
WO1HBY(CODDOC) ; - HB MAS [ 17.03.24 17:41 ] [ 17.03.15 17:36 ] [ 27.02.12 16:15 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 N SH S SH=0
 S LKH="" F  S LKH=$O(@$$^W4GL("KLF")@(LKH)) Q:LKH=""  D
 .S HB="" F  S HB=$O(@$$^W4GL("KLF")@(LKH,CODDOC,HB)) Q:HB=""  D
 ..S HD=$G(^(HB)) Q:HD=""
 ..S DATHB=$$^%L1DC($P(HD,"\",4),1)
 ..S DT=$$^%L1DC(DATHB,3) I DT<DT1!(DT>DT2) Q
 ..S SH=SH+1
 ..I $$^WOMAX,SH>$$WOMAX Q
 ..;;W HB," Y",!
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_$S(CODDOC="TZ":330,1:305)
 ..S STOUT=STOUT_$$NOMDOC^WO1P("HZ",HB)
 ..S STOUT=STOUT_$$DAT^WO1P($P($P(HD,"\",7)," "))
 ..S STOUT=STOUT_$$SHA^WO1P($P($P(HD,"\",7),"  ",2))
 ..S STOUT=STOUT_$$CHR^WO1P($$LKH^W4L(LKH),50)
 ..S STOUT=STOUT_$$STREET^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$BAIT^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$IR^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$MIKUD^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$TEL^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$HPLAK^WO1P("HB",LKH)
 ..S STOUT=STOUT_$$DAT^WO1P(DATHB)
 ..S STOUT=STOUT_$$SHUMMB^WO1P("HB",HB)
 ..S STOUT=STOUT_$$CODMB^WO1P("HB",HB)
 ..N LMAM S LMAM=$$LMAM(HD)
 ..N SUMMAM S SUMMAM=$$SUMMAM(HD)
 ..N MAM S MAM=$$MAM(HD)
 ..S STOUT=STOUT_$$TOT^WO1P(LMAM,15)
 ..S HN=$$HN(HD)
 ..S HN=$J(HN*100/(100+$$AHMAM(HD)),2,2)
 ..S STOUT=STOUT_$$TOT^WO1P(-HN,15)
 ..S STOUT=STOUT_$$TOT^WO1P(SUMMAM-MAM,15)
 ..S STOUT=STOUT_$$TOT^WO1P(MAM,15)
 ..S STOUT=STOUT_$$TOT^WO1P(SUMMAM,15)
 ..S STOUT=STOUT_$$TOT^WO1P(0,12) ; -- NIKUY MAS
 ..S STOUT=STOUT_$$CHR^WO1P(LKH,15)
 ..S STOUT=STOUT_$$HATAMA^WO1P("HB",HB)
 ..S STOUT=STOUT_"0" ; SIMAN BIT
 ..S STOUT=STOUT_$$DAT^WO1P(DATHB)
 ..S STOUT=STOUT_$$SNIF^WO1P("HB",HB)
 ..D DOPC^WO1P("HB",HB)
 ..;;S STOUT=STOUT_$TR($J("",29)," ","!")
 ..D ^WOW(STOUT)
 ..
 ..S NS="",NR=0 F  S NS=$O(@$$^W4GL("KLF")@(LKH,CODDOC,HB,NS)) Q:NS=""  D
 ...S STP=$G(^(NS)) Q:'STP
 ...S NR=NR+1
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_$S(CODDOC="TZ":330,1:305)
 ...S STOUT=STOUT_$$NMB^WO1P(HB,20)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 ...S STOUT=STOUT_$$CHR^WO1P("0",20) ; COD PAR
 ...S STOUT=STOUT_$$CHR^WO1P($P(STP,"\",2),30)
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...S STOUT=STOUT_$$TOT^WO1P(1,17,4)
 ...N MHLF S MHLF=$P(STP,"\")
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...S STOUT=STOUT_$$TOT^WO1P(0,15,2) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...N SMAM S SMAM=$P(STP,"\",3)
 ...S AHMAM=0 I MHLF S AHMAM=$J(SMAM/MHLF*100,2,2)
 ...S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...D DOPD^WO1P("HB",HB_";"_$$DAT^WO1P(DATHB))
 ...;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ...D ^WOW(STOUT)
 Q
 ;
MAM(HD) ;
 Q $J($P(HD,"\",3),2,2)
 ;
LMAM(HD) ;
 Q $J(($$SUMMAM(HD)+$$HN(HD))*100/(100+$$AHMAM(HD)),2,2)
 ;
HN(HD) ;
 N HN
 S HN=$P(HD,"\",13)+$P(HD,"\",14)-$P(HD,"\",15)-$P(HD,"\",10)
 ;;S HN=HN*100/(100+$$AHMAM(HD))
 Q $J(HN,2,2)
 ;
SUMMAM(HD) ;
 Q $P(HD,"\",2)
 ;
AHMAM(HD) ;
 N AHMAM
 S AHMAM=$P(HD,"\",11)
 I 'AHMAM S AHMAM=$G(@$$^W4PRM@("MAM"))
 Q $J(AHMAM,2,2)
 
 

WO1HMKL
WO1HMKL ; - HMK - W4LKH () MEFURAT & HOFSHI [ 17.03.24 17:41 ] [ 23.03.15 12:15 ] [ 22.03.15 17:15 ] 
 N (DT1,DT2,JB,%ARG,%REM)
 D GETDT^WO1P
 ;;S DT1=1
 ;;S DT2=+$H
 N LK ;
 ;
 N SH S SH=0
 S HMK="" F  S HMK=$O(@$$^W4GL("KLIN")@("HMK",HMK)) Q:HMK=""  D SETHMK(HMK)
 Q
 ;
SETHMK(HMK) ;
 N %ARG S %ARG("VD")="HMK"
 D ^W4HSBGET(HMK,"HMK")
 S DT=$G(W4HSB("DT")) Q:DT=""
 I DT<DT1 Q
 I DT>DT2 Q
 S SH=SH+1
 I $$^WOMAX,SH>$$WOMAX Q
 S LK=$G(W4HSB("LKH"))
 S LK0=$G(@$$^W4GL("KLIN")@("HMK",HMK))
 S STOUT="C100"
 S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320
 S STOUT=STOUT_$$NOMDOC^WO1P("HMK",HMK)
 S DATHFK=$$DAT^WO1P($P(W4HSB("ISSUETIME"),"  "))
 S STOUT=STOUT_DATHFK
 S STOUT=STOUT_$$SHAHFK^WO1P("HMK",$P(W4HSB("ISSUETIME"),"  ",2))
 S STOUT=STOUT_$$SHEMLAK^WO1P("HMK",W4HSB("LKHNAME"))
 ;
 S STOUT=STOUT_$$STREET^WO1P("HMK",LK)
 S STOUT=STOUT_$$BAIT^WO1P("HMK",LK)
 S STOUT=STOUT_$$IR^WO1P("HMK",LK)
 S STOUT=STOUT_$$MIKUD^WO1P("HMK",LK)
 S STOUT=STOUT_$$COUNTRYNM^WO1P("HMK",HMK)
 S STOUT=STOUT_$$COUNTRYCD^WO1P("HMK",HMK)
 S STOUT=STOUT_$$TEL^WO1P("HMK",LK)
 S STOUT=STOUT_$$HPLAK^WO1P("HMK",HMK) ; -- ?
 S STOUT=STOUT_$$TRHER^WO1P("HMK",HMK) ; -- ?
 S STOUT=STOUT_$$SHUMMB^WO1P("HMK",HMK) ; -- ?
 S STOUT=STOUT_$$CODMB^WO1P("HMK",HMK)
 ;
 N SUMLF,HN,SUMAHN,MAM,SUMMAM
 ;
 I $$HMK(HMK)=1 D
 .D GETHSB^W4HSBYVW("HMK",HMK)
 .S W4HSB("LMAM")=LMAM
 .S W4HSB("MAM")=MAM
 .S W4HSB("TOT")=SHUMTDI
 .S HNHMK=DISCNIS+DISCA-DMSH-$G(IGUL)
 ;
 I $$HMK(HMK)=2 D
 .S NOMDOC=$P(LK0,"W",2)
 .D TOT^W4DOC(NOMDOC)
 .S W4HSB("LMAM")=LMAM
 .S W4HSB("MAM")=MAM
 .S W4HSB("TOT")=SHUM
 .S HNHMK=DISCNIS+DISCA-DMSH-$G(IGUL)
 .N AHMAM S AHMAM=$$AHMAM^W4DOC(NOMDOC)
 ;
 S HNHMK=$J(HNHMK*100/(100+AHMAM),2,2)
 ;
 S SUMLF=$$TOT^WO1P(W4HSB("LMAM"))
 S HN=$$HN^WO1P("HMK",-HNHMK)
 S SUMAHN=$$TOT^WO1P(W4HSB("TOT")-W4HSB("MAM")) ; ???
 S MAM=$$MAM^WO1P("HMK",W4HSB("MAM"))
 S SUMMAM=$$SUMMAM^WO1P("HMK",W4HSB("TOT"))
 ;
 S STOUT=STOUT_SUMLF
 S STOUT=STOUT_HN
 S STOUT=STOUT_SUMAHN
 S STOUT=STOUT_MAM
 S STOUT=STOUT_SUMMAM
 ;
 S STOUT=STOUT_$$SUMNIKUY^WO1P("HMK",HMK)
 S STOUT=STOUT_$$LAKSAP^WO1P("HMK",HMK)
 S STOUT=STOUT_$$HATAMA^WO1P("HMK",HMK)
 S STOUT=STOUT_$$BIT^WO1P("HMK",HMK)
 S STOUT=STOUT_$$TRH^WO1P("HMK",$G(W4HSB("TODATE")))
 S STOUT=STOUT_$$SNIF^WO1P("HMK",HMK)
 D DOPC^WO1P("HMK",HMK)
 ;
 D ^WOW(STOUT)
 ;
 S LK0=$G(@$$^W4GL("KLIN")@("HMK",HMK))
 I LK0["W" D
 .S NOMDOC=$P(LK0,"W",2)
 .N NR,STP S NR="" F  S NR=$O(@$$^W4GL("W4DOC")@(NOMDOC,NR)) Q:NR=""  I NR?1N.N D
 ..S STOUT="D110"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320 ;--- 320 - SUG MISMAH ( HMK)
 ..S STOUT=STOUT_$$NOMDOC^WO1P("HMK",HMK)
 ..S NOM=$$NMB^WO1P(NR,4)
 ..;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ..S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P("HMK",HMK)_"3"
 ..N CODP S CODP=$$^WO1CODP($$CODE^W4DOC(NOMDOC,NR))
 ..S STOUT=STOUT_$$CODP^WO1P(CODP,+$$PRC^W4DOC(NOMDOC,NR)) ; COD PAR
 ..S STOUT=STOUT_$$CHR^WO1P($$NAME^W4DOC(NOMDOC,NR),30) ; NAME PAR
 ..S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ..S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ..S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ..N AHMAM S AHMAM=$$AHMAM^W4DOC(NOMDOC)
 ..N KAM S KAM=+$$QN^W4DOC(NOMDOC,NR)
 ..N MHLF S MHLF=+$$PRC^W4DOC(NOMDOC,NR)
 ..N PRMAM S PRMAM=$$PRMAM^W4DOC(NOMDOC)
 ..I PRMAM S MHLF=$J(MHLF*100/(100+AHMAM),2,2)
 ..N LMAM S LMAM=+$$BFTAX^W4DOC(NOMDOC,NR)
 ..N SUM S SUM=+$$AFTAX^W4DOC(NOMDOC,NR)
 ..N AHDISC S AHDISC=$$DISC^W4DOC(NOMDOC,NR)
 ..S DISC=$J(KAM*MHLF*AHDISC/100,2,2)
 ..I SUM,'KAM S KAM=1
 ..S STOUT=STOUT_$$TOT^WO1P(KAM,17,4)
 ..S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ..S STOUT=STOUT_$$TOT^WO1P(-DISC,15,2) ; ---- HANAHAT SHURA
 ..S STOUT=STOUT_$$TOT^WO1P(LMAM,15,2)
 ..S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ..S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ..;
 ..D DOPD^WO1P("HMK",HMK_";"_DATHFK)
 ..;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ..D ^WOW(STOUT)
 ;
 I LK0'["W" D
 .N LK S LK=LK0
 .D GETHSB^W4HSBYVW("HMK",HMK)
 .N NR,STP S NR="" F  S NR=$O(@$$^W4GL("KLF")@(LK,"HMK",HMK,"HB",NR)) Q:NR=""  I NR?1N.N D
 ..S STP=$G(^(NR)) Q:STP=""
 ..S STOUT="D110"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320 ;--- 320 - SUG MISMAH ( HMK)
 ..S STOUT=STOUT_$$NOMDOC^WO1P("HMK",HMK)
 ..S NOM=$$NMB^WO1P(NR,4)
 ..;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ..S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P("HMK",HMK)_"3"
 ..S STOUT=STOUT_$$CHR^WO1P("0",20) ; COD PAR
 ..S STOUT=STOUT_$$CHR^WO1P($P(STP,"\",2),30) ; NAME PAR
 ..S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ..S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ..S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ..N KAM S KAM=1
 ..N LMAM S LMAM=$P(STP,"\",1) ; -- LIFN MAM
 ..S DISC=0
 ..I LMAM,'KAM S KAM=1
 ..N MH D
 ...I 'LMAM,'KAM S MH=0 Q
 ...S MH=$J(LMAM-DISC/KAM,2,2)
 ..N KFHMK,KFMAM,KF
 ..S KFMAM=100/(100+AHMAM)
 ..S KF=1
 ..S MHLF=MH
 ..;;W "HMK="_HMK_"  MHLF="_MHLF_"  SUM="_(SUM*KF),! H 1
 ..S STOUT=STOUT_$$TOT^WO1P(KAM,17,4)
 ..S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ..S STOUT=STOUT_$$TOT^WO1P(-DISC,15,2) ; ---- HANAHAT SHURA
 ..S STOUT=STOUT_$$TOT^WO1P(LMAM,15,2)
 ..S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ..S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ..D DOPD^WO1P("HMK",HMK_";"_DATHFK)
 ..;
 ..;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ..D ^WOW(STOUT)
 ..;;W HMK,!
 .D SVPAYM(HMK)
 Q
 ;
SVPAYM(HMK)
 N HMK1 S HMK1=HMK I $$HMK(HMK)=2 S HMK1=HMK_"HMK"
 N MZ S MZ=$$MZ^W4LCBCR(HMK1)
 I MZ!'$$TOT^W4LCBCR(HMK1) D SCB(HMK1,"MZ")
 N CA S CA=$$CA^W4LCBCR(HMK1)
 I CA D SCB(HMK1,"CA")
 N NS,STP S NS="" F  S NS=$O(@$$GLCB^W4LCBCR(HMK1)@(NS)) Q:NS=""  I NS?1N.N D
 .D SCB(HMK1,"CH",NS)
 Q
 ;
DISC(HMK) ;
 N LK0,HN S HN=0
 S LK0=$G(@$$^W4GL("KLIN")@("HMK",HMK))
 ;I LK0'["W" S HN=
 Q HN
 ;
SCB(HCB,VT,NR) ;
 I VT="CH" N STC S STC=$G(@$$GLCB^W4LCBCR(HCB)@(NR)) Q:STC=""
 S NR=+$G(NR)
 S STOUT="D120"
 S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_320
 S STOUT=STOUT_$$NOMDOC^WO1P("CB",HCB)
 S NOM=NOM+1
 N NOM1 S NOM1=$$NMB^WO1P(NOM,4)
 ;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER
 S STOUT=STOUT_NOM1
 S STOUT=STOUT_$S(VT="MZ":1,VT="CH":2,VT="CA":3,VT="HV":4,1:0)
 ;
 N TRH S TRH=20_$$DAT^W4LCBCR(HCB)
 ;
 I VT="MZ"!(VT="CA") D
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; BANK
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; SNIF
 .S STOUT=STOUT_$$NMB^WO1P("",15) ; HESB
 .S STOUT=STOUT_$$NMB^WO1P("",10) ; CHECK
 .
 .I VT="MZ" D
 ..S STOUT=STOUT_TRH
 ..S STOUT=STOUT_$$TOT^WO1P($$MZ^W4LCBCR(HCB),15,2)
 .
 .I VT="CA" D
 ..N CBV S CBV=$G(@$$GLCBV^W4LCBCR(HCB)) Q:CBV=""
 ..S KFV=1 I $P(CBV,"*",4)=3 S KFV=-1
 ..S NT=$P(CBV,"*",9) ; MISP TASHL
 ..I '$G(NT) D  Q
 ...S STOUT=STOUT_TRH
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",6),15,2)
 ..I $G(NT)<2 D  Q
 ...S STOUT=STOUT_TRH
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",8)*.01*KFV,15,2)
 ..I $G(NT)>1 D  Q
 ...N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZ),3)
 ...N NEWDAT S NEWDAT=20_$$^%L1DC(DT+((NT-1)*30),2)
 ...S STOUT=STOUT_NEWDAT
 ...S STOUT=STOUT_$$TOT^WO1P($P(CBV,"*",10)*.01*KFV,15,2)
 ;
 I VT="CH"!(VT="HV") D
 .S STOUT=STOUT_$$NMB^WO1P($$BANK^W4LCBCR(HCB,NR),10) ; BANK
 .S STOUT=STOUT_$$NMB^WO1P($$SNIF^W4LCBCR(HCB,NR),10) ; SNIF
 .S STOUT=STOUT_$$NMB^WO1P($$HESH^W4LCBCR(HCB,NR),15) ; HESB
 .N CH S CH=$$CHK^W4LCBCR(HCB,NR)
 .I VT="HV" S CH=$E(CH,2,20)
 .S STOUT=STOUT_$$NMB^WO1P(CH,10) ; CHECK
 .S STOUT=STOUT_$$DAT^WO1P($$DATPR^W4LCBCR(HCB,NR)) ; DAT
 .S STOUT=STOUT_$$TOT^WO1P($$SUM^W4LCBCR(HCB,NR),15,2)
 ;
 N SNIF S SNIF=$G(@$$^W4PL@("SNIF"))
 ;
 I VT="CH"!(VT="MZ") D
 .S STOUT=STOUT_$$NMB^WO1P(0,1) ; - COD HEVRA SOLEKET
 .S STOUT=STOUT_$$CHR^WO1P("",20) ; -SHEM CARD NISLAK
 .S STOUT=STOUT_$$NMB^WO1P(0,1) ; - SUG ISK ASR
 .S STOUT=STOUT_$$CHR^WO1P(SNIF,7) ; - SUG ISK ASR
 ;
 I VT="CA" D
 .N ST S ST=$G(@$$GLCBV^W4LCBCR(HCB)) Q:ST=""
 .S STOUT=STOUT_$$NMB^WO1P($E($P(ST,"*"),3),1) ; - COD HEVRA SOLEKET
 .N NMCARD S NMCARD=$$CHR^WO1P($P(ST,"*",20),20)
 .;
 .S STOUT=STOUT_NMCARD
 .N SIA S SIA=$P(ST,"*",5)
 .S SIA=$S(SIA=1!(+SIA=0):1,SIA=8:2,1:3)
 .S STOUT=STOUT_$$NMB^WO1P(SIA,1) ; - SUG ISK ASR
 .S STOUT=STOUT_$$CHR^WO1P(SNIF,7) ; - SNIF
 ;
 ;;S STOUT=STOUT_$$DOPD1^WO1P("HMK",HCB_";"_TRH)
 S STOUT=STOUT_TRH
 S STOUT=STOUT_$$NMB^WO1P(HCB,7)
 S STOUT=STOUT_SNIF
 S STOUT=STOUT_$$CHR^WO1P("",21) ; - ATIDI
 ;
 D ^WOW(STOUT)
 Q
 ;
HMK(HMK)
 N LK0
 S LK0=$G(@$$^W4GL("KLIN")@("HMK",HMK))
 I $P(LK0,"W",2) Q 2
 I 'LK0 Q 0
 Q 1
 
 

WO1HNST
WO1HNST(HZ,NR) ; [ 01.09.10 12:43 ] [
 N ST S ST=$G(@$$^W4ORD@(HZ,NR+1))
 I $$^W4AHP(ST) Q $P(ST,"\",7)
 Q 0

WO1HZ
WO1HZ ; - HAZMANAT KUPA [ 17.03.24 17:43 ] [ 17.10.16 15:57 ] [ 29.06.12 10:02 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 ;
 N SH S SH=0
 F DT=DT1:1:DT2 D
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 ..S HD=$G(@$$^W4ORD@(HZ)) Q:HD=""
 ..S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_100
 ..S STOUT=STOUT_$$NOMDOC^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$DATHFK^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SHAHFK^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SHEMLAK^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$STREET^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$BAIT^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$IR^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$MIKUD^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$TEL^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$HPLAK^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$TRHER^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SHUMMB^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$CODMB^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SUMLFHN^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$HN^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SUMAHHN^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$MAM^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SUMMAM^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SUMNIKUY^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$LAKSAP^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$HATAMA^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$BIT^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$TRH^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SNIF^WO1P("HZ",HZ)
 ..D DOPC^WO1P("HZ",HZ)
 ..;;S STOUT=STOUT_$$MEVACEA^WO1P("HZ",HZ)
 ..;;S STOUT=STOUT_$$CHR^WO1P(HZ,7)
 ..;;S STOUT=STOUT_$TR($J("",13)," ","!")
 ..
 ..D ^WOW(STOUT)
 ..
 ..S NR="" F  S NR=$O(@$$^W4ORD@(HZ,NR)) Q:NR=""  I NR?1N.N D
 ...S STP=$G(^(NR)) Q:STP=""
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_100 ;--- 100 - SUG MISMAH ( HAZMANA)
 ...S STOUT=STOUT_$$NOMDOC^WO1P("HZ",HZ)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 ...N CODP S CODP=$$^WO1CODP($P(STP,"\"))
 ...S STOUT=STOUT_$$CODP^WO1P(CODP,$P(STP,"\",4)) ; COD PAR
 ...S STOUT=STOUT_$$NAMEP^WO1P($P(STP,"\",3)) ; NAME PAR
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...N KAM S KAM=$P(STP,"\",5)
 ...N SUM S SUM=$P(STP,"\",7)
 ...I SUM,'KAM S KAM=1
 ...N MH D
 ....I 'KAM S MH=0 Q
 ....S MH=$J(SUM/KAM,2,2)
 ...S STOUT=STOUT_$$TOT^WO1P(KAM,17,4)
 ...N DT S DT=$$^%L1DC($$DATK^W4HZMST(HZ),3)
 ...N AHMAM S AHMAM=$$MAMD^W4L(DT)
 ...N KFMAM
 ...S KFMAM=100/(100+AHMAM)
 ...S MHLF=MH*KFMAM
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15)
 ...S STOUT=STOUT_$$TOT^WO1P(0,15) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(SUM*KFMAM,15)
 ...S STOUT=STOUT_$$NMBMAM^WO1P(AHMAM)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...D DOPD^WO1P("HZ",HZ)
 ...;;S STOUT=STOUT_$$DAT^WO1P($$DATK^W4HZMST(HZ))
 ...;;S STOUT=STOUT_$$CHR^WO1P(HZ,7)
 ...;;S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...;;S STOUT=STOUT_$$CHR^WO1P("",21)
 ...
 ...D ^WOW(STOUT)
 Q
 
 
 
 
 
 

WO1IHBL
WO1IHBL(CODDOC) ; - HB MAS [ 17.03.24 17:43 ] [ 09.10.18 12:35 ] [ 04.02.13 10:06 ] 
 N (CODDOC,JB,%ARG,%REM)
 D GETDT^WO1P
 S OD="IHB"
 D PUT^%W3DEB("WO1IHBL","CODDOC=CODDOC&DT1=DT1&DT2=DT2")
 S GLSPHB=$$^W4GL("W4INP")_"("""_CODDOC_""")"
 S CODD=$S(CODDOC="IHBZ":710,1:700)
 ;;S DT1=$H-200,DT2=+$H
 ;;
 N SH S SH=0
 S SPK="" F  S SPK=$O(@GLSPHB@(SPK)) Q:SPK=""  D
 .S HB="" F  S HB=$O(@GLSPHB@(SPK,HB)) Q:HB=""  D
 ..I '$$NEWMLY^W3PRM,$D(@GLSPHB@(SPK,HB,1)) Q
 ..D ^W4HSBGET(HB,CODDOC,SPK) Q:'$D(W4HSB)
 ..S DT=$G(W4HSB("DT")) I DT<DT1!(DT>DT2) Q
 ..S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ..S DATHB=$G(W4HSB("TODATE"))
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_CODD
 ..S STOUT=STOUT_$$NOMDOC^WO1P(OD,HB)
 ..S DATHFK=$$DAT^WO1P($P(W4HSB("ISSUETIME"),"  "))
 ..S STOUT=STOUT_DATHFK
 ..S STOUT=STOUT_$$SHAHFK^WO1P(OD,$P(W4HSB("ISSUETIME"),"  ",2))
 ..S STOUT=STOUT_$$SHEMLAK^WO1P(OD,W4HSB("SPKNAME"))
 ..S STOUT=STOUT_$$STREET^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$BAIT^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$IR^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$MIKUD^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P(OD,HB)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P(OD,HB)
 ..S STOUT=STOUT_$$TEL^WO1P(OD,SPK)
 ..S STOUT=STOUT_$$HPLAK^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$TRHER^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$SHUMMB^WO1P(OD,HB) ; -- ?
 ..S STOUT=STOUT_$$CODMB^WO1P(OD,HB)
 ..;
 ..N SUMLF,HN,SUMAHN,MAM,SUMMAM
 ..S SIGN=1
 ..I CODDOC="IHBZ" S SIGN=-1
 ..S SUMLF=$$SUMLFHN^WO1P(OD,W4HSB("LMAM")*SIGN)
 ..S SUMAHN=$$SUMAHHN^WO1P(OD,W4HSB("LMAM")*SIGN) ; ???
 ..S MAM=$$MAM^WO1P(OD,W4HSB("MAM")*SIGN)
 ..S HN=$$TOT^WO1P(0)
 ..;
 ..S SUMMAM=$$SUMMAM^WO1P(OD,W4HSB("TOT")*SIGN)
 ..
 ..;;I CODDOC="IHBZ" W "SUMLF="_SUMLF_"  SUMAHN="_SUMAHN_"  MAM="_MAM_"  SUMMAM="_SUMMAM,!
 ..;
 ..S STOUT=STOUT_SUMLF
 ..S STOUT=STOUT_HN
 ..S STOUT=STOUT_SUMAHN
 ..S STOUT=STOUT_MAM
 ..S STOUT=STOUT_SUMMAM
 ..;
 ..S STOUT=STOUT_$$SUMNIKUY^WO1P(OD,HB)
 ..S STOUT=STOUT_$$LAKSAP^WO1P(OD,HB)
 ..S STOUT=STOUT_$$HATAMA^WO1P(OD,HB)
 ..S STOUT=STOUT_$$BIT^WO1P(OD,HB)
 ..S STOUT=STOUT_$$TRH^WO1P(OD,DATHB)
 ..S STOUT=STOUT_$$SNIF^WO1P(OD,HB)
 ..;;W "STOUT="_STOUT,!
 ..D DOPC^WO1P(OD,HB)
 ..;;W "STOUT1="_STOUT,!
 ..D ^WOW(STOUT)
 ..I $D(@GLSPHB@(SPK,HB))<10 D OLDIHB(CODDOC)
 Q
 ;
OLDIHB(CODDOC) ;
 S SIGN=1
 I CODDOC="IHBZ" S SIGN=-1
 S NR=1
 S STOUT="D110"
 S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_CODD
 S STOUT=STOUT_$$NOMDOC^WO1P(OD,HB)
 S NOM=$$NMB^WO1P(NR,4)
 ;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P(OD,HB)_"3"
 S STOUT=STOUT_$$CHR^WO1P("0",20) ; COD PAR
 S STOUT=STOUT_$$CHR^WO1P($G(W4HSB("DESC")),30) ; NAME PAR
 S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 N KAM S KAM=1
 N SUM S SUM=$G(W4HSB("TOT"))*SIGN
 S DISC=0
 I SUM,'KAM S KAM=1
 N MH D
 .I 'SUM,'KAM S MH=0 Q
 .S MH=$J(SUM-DISC/KAM,2,2)
 N AHMAM S AHMAM=$G(W4HSB("AHMAM"))
 N KFHBW,KFMAM,KF
 S KFMAM=100/(100+AHMAM)
 S KF=1
 S MHLF=MH*KFMAM
 ;;W "HBW="_HB_"  MHLF="_MHLF_"  SUM="_(SUM*KF),! H 1
 S STOUT=STOUT_$$TOT^WO1P(KAM*KF,17,4)
 S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 S STOUT=STOUT_$$TOT^WO1P(DISC,15,2) ; ---- HANAHAT SHURA
 S STOUT=STOUT_$$TOT^WO1P(SUM*KF*KFMAM,15,2)
 S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 D DOPD^WO1P(OD,HB_";"_$$DAT^WO1P(DATHB))
 D ^WOW(STOUT)
 Q
 
 

WO1INI
WO1INI ;  [ 07.05.24 12:40 ] [ 14.06.18 06:37 ] [ 21.05.18 11:55 ] 
 S STOU="A000"
 S STOU=STOU_$TR($J("",5)," ","!")
 S STOU=STOU_$$NMB^WO1P($$NP^WO1P,15)
 S STOU=STOU_$$HP^WO1P
 S STOU=STOU_$$RN^WO1P
 S STOU=STOU_$$VER^WO1P
 N ISHUR S ISHUR="00176902" ; 1
 I $$^W4LKH S ISHUR="00186801"
 S @$$^WOG@("ISHUR")=ISHUR
 S STOU=STOU_ISHUR ;-- NOMER ISHURA BMAS HAHNASA
 N NMPROG S NMPROG="qetl`"
 I $$^W4LKH S NMPROG="ziyeniy"
 S @$$^WOG@("NMPROG")=NMPROG
 S STOU=STOU_$$CHR^WO1P(NMPROG,20)
 S VERSION="2.1"
 S @$$^WOG@("VERSION")=VERSION
 S STOU=STOU_$$CHR^WO1P("VERSION "_VERSION_"         ",20)
 S STOU=STOU_$$NMB^WO1P(307376384,9) ; -- HP YAZRAN (RSD)
 S STOU=STOU_$$CHR^WO1P("oiil oe` al",20) ; -- YAZRAN (RSD)
 S STOU=STOU_2 ; -- SUG TOHNA RAV SHNATI
 N DIR S DIR=@$$^WOG@("DIR")
 S DIR="C:\"_$TR(DIR,"/","\")
 I $E(DIR,$L(DIR))="\" S DIR=$E(DIR,0,$L(DIR)-1)
 N NDIR S NDIR=DIR_$TR($J("",50-$L(DIR))," "," ")
 S STOU=STOU_NDIR
 S STOU=STOU_"0" ; SUG BU
 S STOU=STOU_"0" ; IZUN HESHBONAI NIDRASH
 S STOU=STOU_"000000000" ; MISP HEVRA BRESHEM HEVROT
 S STOU=STOU_"000000000" ; TIK NIKUIM
 S STOU=STOU_$$CHR^WO1P("",10)
 S STOU=STOU_$$CHR^WO1P($$SPA^%L1FRM($$^%L1HEAD),50)
 D KOT^W4KOTHSB
 S STOU=STOU_$$CHR^WO1P(MYKTV,50)
 S STOU=STOU_$$CHR^WO1P("",10) ; BAIT
 S STOU=STOU_$$CHR^WO1P("",30) ; IR
 S STOU=STOU_$$CHR^WO1P("",8) ; MIKUD
 S STOU=STOU_"0000" ; SHNAT MAS
 S STOU=STOU_20_$$^%L1DC(@$$^WOG@("DT1"),2)_20_$$^%L1DC(@$$^WOG@("DT2"),2)
 S STOU=STOU_20_$$^%L1DC(@$$^WOG@("DTBG"),2)_$$SHA^WO1P(@$$^WOG@("TMBG"))
 S STOU=STOU_"0" ; HEBREW
 S STOU=STOU_"1" ; ISO-8859-8 WINDOWS HEBREW
 ;S STOU=STOU_"2" ;WAS  CP862
 S STOU=STOU_$$CHR^WO1P("ZIP",20)
 S STOU=STOU_$$CHR^WO1P("ILS",3)
 S STOU=STOU_$S($G(@$$^W4PRM@("MRKZ"))="M":1,1:0)
 S STOU=STOU_$$CHR^WO1P("",46) ; -- ATITI
 D ^WO1WR("INI.TXT",STOU,"W")
 S @$$^WOG@("NP")=$G(@$$^W4GL("WO1P")@("NP"))+1
 ;
 S N="" F  S N=$O(@$$^WOG@("NMDOC",N)) Q:N=""  D
 .I N="A000"!(N="C100K")!(N="C100S") Q
 .S STOU=$$CHR^WO1P(N,4)_$$NMB^WO1P(@$$^WOG@("NMDOC",N),15)
 .D ^WO1WR("INI.TXT",STOU)
 .S @$$^WOG@("NMDOC",N)=$G(@$$^WOG@("NMDOC",N))-1
 ;
 N FL S FL=@$$^WOG@("DIR0")_@$$^WOG@("DIR")_"INI"
 ZSY "unix2dos "_FL_".TXT"
 ZSY "zip -j "_FL_" "_FL_".TXT"
 Q
 
 
 

WO1LKH
WO1LKH ;  [ 05.06.14 07:49 ] [ 07.09.12 19:20 ] [ 16.07.12 17:30 ]
 S ZAP="~#9~"
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("MMM")
 D GETDT^WO1P
 D COMP
 S CODL="" F  S CODL=$O(@$$^W4GL("LKH")@(CODL)) Q:CODL=""  D FRML(CODL)
 S CODL="" F  S CODL=$O(@$$^W4GL("WO1LKH")@(CODL)) Q:CODL=""  I '$D(@$$^W4GL("LKH")@(CODL)) D FRML(CODL)
 K @$$^W4MAIN("MMM")
 Q
 ;
FRML(CODL) ;
 I $D(@$$^W4MAIN("MMM")@(CODL)) Q
 S @$$^W4MAIN("MMM")@(CODL)=""
 N STOUT
 S STOUT="B110"
 S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P ; NP & ESEK MURSHE
 S STOUT=STOUT_$$CHR^WO1P(CODL,15) ; COD LKH
 S STOUT=STOUT_$$CHR^WO1P($$LKH(CODL),50) ; NAME LAK
 S STOUT=STOUT_$J(ZAP,15) ; KOD MAAZAN BOHEN
 S STOUT=STOUT_$J(ZAP,30) ; TEUR MAAZAN BOHEN
 S STOUT=STOUT_$$CHR^WO1P($$KTV^W4L(CODL),50)
 S STOUT=STOUT_$$CHR^WO1P($$BAIT^W4L(CODL),10)
 S STOUT=STOUT_$$CHR^WO1P($$IR^W4L(CODL),30)
 S STOUT=STOUT_$$CHR^WO1P($$MIKUD^W4L(CODL),8)
 S STOUT=STOUT_$$CHR^WO1P("l`xyi",30)
 S STOUT=STOUT_"IL"
 S STOUT=STOUT_$J(ZAP,15) ; HESHBON MERKAZ
 D GETDAT(CODL)
 S STOUT=STOUT_$$TOT^WO1P(ITRA,15,2)
 S STOUT=STOUT_$$TOT^WO1P(HOVA,15,2)
 S STOUT=STOUT_$$TOT^WO1P(ZHUT,15,2)
 S STOUT=STOUT_"0000" ; KOD B SIVUG HASHMONAI
 N TZ S TZ=$$TZ^W4L(CODL) I TZ'?1N.N S TZ=0
 S STOUT=STOUT_$$NMB^WO1P(TZ,9)
 S STOUT=STOUT_$$CHR^WO1P(0,7) ; SNIF
 S STOUT=STOUT_$$TOT^WO1P(0,15) ; ITRA BE MATAH
 S STOUT=STOUT_"USD"
 S STOUT=STOUT_$$CHR^WO1P("",16)
 D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 Q
GETDAT(CODL) ;
 S (ITRA,HOVA,ZHUT)=0
 S ITRA=$G(@VRM1@(CODL,0))
 S HOVA=$G(@VRM1@(CODL,1))+$G(@VRM1@(CODL,2))+$G(@VRM1@(CODL,3))
 S ZHUT=$G(@VRM1@(CODL,4))
 Q
COMP ;
 D VRM1^W4DLKM
 S MELKH=""
 S ADLKH=9999999999
 ;
 S %ARG("MEDAT")=$$^%L1DC(DT1,1)
 S %ARG("ADDAT")=$$^%L1DC(DT2,1)
 S %ARG("ASONLY")=1
  ;
 S MEDAT=$G(%ARG("MEDAT"))
 S ADDAT=$G(%ARG("ADDAT"))
 ;
 S ASONLY=3-$G(%ARG("ASONLY"))
 ;
 D FRM^W4DLKP(JB,MEDAT,ADDAT,$G(MELKH),$G(ADLKH),$G(MESUGL),$G(ADSUGL),ASONLY)
 D RIKUZ^W4DLKM
 K @VRM,@VRM1
 Q
 ;
LKH(CODL) ;
 N LKH1 S LKH1=$$LKH^W4L(CODL)
 I LKH1="" S LKH1="illk"
 Q LKH1

WO1M
WO1M(JB,MEDAT,ADDAT,TO) ; [ 21.07.25 14:05 ] [ 29.12.24 12:10 ] [ 15.03.15 14:04 ] 
 N (JB,%ARG,%REM,MEDAT,ADDAT,TO)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 S %L1D1=$$^%L1DC(MEDAT,3)
 S %L1D2=$$^%L1DC(ADDAT,3)
 ;
 D PUT^%W1PRM("W4OPF",0)
 ;
 D INIT ; -->HP
 ;
 S @$$^WOG@("TO")=$G(TO)
 S @$$^WOG@("DT1")=%L1D1
 S @$$^WOG@("DT2")=%L1D2
 S @$$^WOG@("DTBG")=+$H
 S @$$^WOG@("TMBG")=$$T^%L1TIME($P($H,",",2))
 ;
 D CRDIR(HP)
 S RN=$$RN
 ;
 ;;W "<br /><br />",!
 ;;W "<div align=""center"">"_$$^%W1DICT("WAIT")_"</div>",!
 ;
 I $G(TO)="W" U 0 W "<OpenFormatContent>",!
 D ^WO1A
 I '$$^W4LKH D ^WO1HZ
 D ^WO1HBK
 D ^WO1TM
 D ^WO1CB
 D ^WO1HB
 ;
 D ^WO1MPRT
 D ^WO1LKH
 ;
 ;-----------------------
 D ^WO1Z
 D OUTIN
 I $G(TO)="W" W "</OpenFormatContent>",!
 ;;I $G(TO)'="W" H 2 D ^WO1REP
END D PUT^%W1PRM("W4OPF",1)
 K @$$^W4GL("WO1FLAG")
 Q
 ;
 ;
CRDIR(HP)
 S WO1DIR0=$G(@$$^WOG@("DIR0"),"/tmp/")
 S WO1DIR="OPENFRMT/"_$TR($E($J(HP,8),1,8)," ",0)_"."_$ZD($H,"YY")_"/"_$ZD($H,"MMDD2460")_"/"
 ;
 I $$^%L1ZOS(10,WO1DIR0_WO1DIR)<0 D
 .ZSY "mkdir -p "_WO1DIR0_WO1DIR
 .;;ZSY "sudo mkdir -p -m 77 "_WO1DIR0_WO1DIR
 .S @$$^WO@("ZSY")=$ZSY
 ;
 S @$$^WOG@("DIR")=WO1DIR
 Q
 ;
RN(STAM) Q $$RN^WO1P
 ;
INIT ;
 ;
 S @$$^W4GL("WO1FLAG")=$G(%REM)
 K @$$^WOG
 K @$$^WO
 K @$$^W4GL("WO1LKH")
 K @$$^W4GL("WO1PAR")
 ;
 N MSD S MSD=$$GET^%W1PRM("MSD")
 ;
 S (@$$^WOG@("HP"),HP)=$$GETHP
 S @$$^WOG@("DIR0")=$$WEBL^W3MAIN_+MSD_"/"
 S @$$^WOG@("DIRW")=$$WEB^W3MAIN_+MSD_"/"
 Q
 ;
GETHP(STAM) ;
 Q $$HP^WO1P
 ;
CRFLDAT ;
 D CRGLFLD
 S VM="" F  S VM=$O(@$$^WOGV@(VM)) Q:VM=""  D
 .S ST=$G(^(VM)) Q:ST=""
 .D CRVMFLD(ST)
 Q
CRGLFLD ;
 D ^WO1GLFLD
 Q
CRVMFLD(ST)
 Q
OUTIN ;
 D ^WO1INI
 Q
 
 
 
 
 
 
 

WO1MHB
WO1MHB ; - HB ME SAPAK [ 17.03.24 17:44 ] [ 17.09.18 06:18 ] [ 13.08.09 19:30 ] 
 N DT,STOUT,HAZ
 D GETDT^WO1P
 D ^WO12MLY
 ;
 N SH S SH=0
 S STR="" F  S STR=$O(^HAZ(STR)) Q:STR=""  D
 .S TSTR="" F  S TSTR=$O(^HAZ(STR,TSTR)) Q:TSTR=""  D
 ..S HAZ="" F  S HAZ=$O(^HAZ(STR,TSTR,HAZ)) Q:HAZ=""  D
 ...S HD=$G(^(HAZ)) Q:HD=""
 ...S HB=$P(HD,"*",2) Q:'HB
 ...S DT=$$^%L1DC($P(HD,"*",4),3)
 ...I DT<DT1!(DT>DT2) Q
 ...S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ...S STOUT="C100"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_700
 ...S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",HB)
 ...S STOUT=STOUT_$$DATHFK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SHAHFK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SHEMLAK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$STREET^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$BAIT^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$IR^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$MIKUD^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$COUNTRYNM^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$COUNTRYCD^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$TEL^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$HPLAK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$TRHER^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SHUMMB^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$CODMB^WO1P("MHZ",HD)
 ...N LAK S LAK=$P(HD,"*")
 ...N SUMLF,SUMLF1 S SUMLF=0
 ...S SUMMAM=$P(HD,"*",12)
 ...N N S N="" F  S N=$O(^HAZ(STR,TSTR,HAZ,N)) Q:N=""  D
 ....N A S A=$G(^(N))
 ....S SUMLF=SUMLF+($P(A,"*",2)*$P(A,"*",3)*(100-$P(A,"*",6))*.01)
 ...S SUMLF1=$$TOT^WO1P($J(SUMLF,2,2),15)
 ...S STOUT=STOUT_SUMLF1
 ...S MAM=$P(HD,"*",20)
 ...N HN,HN1 S HN=$J(SUMLF-(SUMMAM-MAM),2,2)
 ...S HN1=$$TOT^WO1P(-HN,15)
 ...S STOUT=STOUT_HN1
 ...S SUMAHHN=SUMMAM-MAM
 ...S SUMAHHN1=$$TOT^WO1P(SUMAHHN,15)
 ...S STOUT=STOUT_SUMAHHN1
 ...S STOUT=STOUT_$$TOT^WO1P(MAM,15)
 ...S STOUT=STOUT_$$TOT^WO1P(SUMMAM,15)
 ...S STOUT=STOUT_$$TOT^WO1P(0,12)
 ...S STOUT=STOUT_$$CHR^WO1P(LAK,15)
 ...S STOUT=STOUT_$$HATAMA^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$BIT^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$TRH^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SNIF^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$TR($J("",29)," ","!")
 ...D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 ...
 ...N CODP,STP S CODP="",NST=0 F  S CODP=$O(^HAZ(STR,TSTR,HAZ,CODP)) Q:CODP=""  I CODP?1N.N D
 ....S STP=$G(^(CODP)) Q:CODP=""
 ....S STOUT="D110"
 ....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_700 ;--- 700 - SUG MISMAH ( HBK)
 ....S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",HB)
 ....S NST=NST+1
 ....S NOM=$$NMB^WO1P(NST,4)
 ....;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ....S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 ....S STOUT=STOUT_$$CHR^WO1P(CODP,20) ; COD PAR
 ....S STOUT=STOUT_$$CHR^WO1P($G(^PARIT(CODP)),30) ; NAME PAR
 ....S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ....S STOUT=STOUT_$$CHR^WO1P($$BC^L2P(CODP),30) ;
 ....N MD,MD1 S MD1="dcigi"
 ....S MD=$P(STP,"*",7) I $L(MD) S MD1=$G(^MIDA(MD))
 ....S STOUT=STOUT_$$CHR^WO1P(MD1,20)
 ....N KAM S KAM=$P(STP,"*",2)
 ....N BON S BON=$P(STP,"*",8)
 ....N MH S MH=$J($P(STP,"*",3),2,2)
 ....N AHHN S AHHN=$P(STP,"*",6)
 ....N SUM S SUM=KAM*MH*(100-AHHN)*.01
 ....S HNST=KAM*MH-SUM
 ....I (KAM+BON) S MH=KAM*MH/(KAM+BON)
 ....S STOUT=STOUT_$$TOT^WO1P(KAM+BON,17,4)
 ....S STOUT=STOUT_$$TOT^WO1P(MH,15)
 ....S STOUT=STOUT_$$TOT^WO1P(-HNST,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUM,15)
 ....N AHMAM S AHMAM=$J($$MAMD^W4L(DT),2,2)
 ....S STOUT=STOUT_$$NMB^WO1P(AHMAM*100,4)
 ....S STOUT=STOUT_$$SNIF^WO1P("MHZ")
 ....S STOUT=STOUT_$$CHR^WO1P("",43)
 ....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 D ^WO12MER
 Q
 
 

WO1MHB2
WO1MHB2 ; - TM TO LKH [ 17.03.24 17:44 ] [ 13.08.09 18:37 ] [ 22.07.08 15:53 ] 
 N DT,STOUT,HAZ
 D GETDT^WO1P
 ;
 D ^WO12MLY
 ;
 S MEYY=$$GG^%L1DC(DT1)
 S ADYY=$$GG^%L1DC(DT2)
 ;
 N SH S SH=0
 F YY=MEYY:1:ADYY D
 .S SHANA=$TR($J(YY,2)," ",0)
 .S STR="" F  S STR=$O(^MLY(SHANA,STR)) Q:STR=""  D
 ..S TSTR="" F  S TSTR=$O(^MLY(SHANA,STR,TSTR)) Q:TSTR=""  D
 ...S TD="" F  S TD=$O(^MLY(SHANA,STR,TSTR,2,TD)) Q:TD=""  D
 ....S HD=$G(^(TD)) Q:HD=""
 ....S LKH=$P(HD,"*",2)
 ....S HB=$P(HD,"*",14) Q:'HB
 ....S DT=$$^%L1DC($P(HD,"*",15),3)
 ....I DT<DT1!(DT>DT2) Q
 ....S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ....S STOUT="C100"
 ....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_305
 ....S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",HB)
 ....S STOUT=STOUT_$$DATHFK^WO1P("MHB2",HD)
 ....S STOUT=STOUT_$$SHAHFK^WO1P("MHB2",HD)
 ....S STOUT=STOUT_$$SHEMLAK^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$STREET^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$BAIT^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$IR^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$MIKUD^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$COUNTRYNM^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$COUNTRYCD^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$TEL^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$HPLAK^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$TRHER^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$SHUMMB^WO1P("MHZ",LKH)
 ....S STOUT=STOUT_$$CODMB^WO1P("MHZ",LKH)
 ....S SUMMAM=$$SUMMAM(TD,HD)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMLF,15)
 ....S STOUT=STOUT_$$TOT^WO1P(-HN,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMAHN,15)
 ....S STOUT=STOUT_$$TOT^WO1P(MAM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMMAM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(0,12)
 ....S STOUT=STOUT_$$CHR^WO1P(LKH,15)
 ....S STOUT=STOUT_$$HATAMA^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$BIT^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$TRH^WO1P("MHB2",HD)
 ....S STOUT=STOUT_$$SNIF^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$TR($J("",29)," ","!")
 ....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 ....
 ....N CODP,STP S CODP="",NST=0 F  S CODP=$O(^MLY(SHANA,STR,TSTR,2,TD,CODP)) Q:CODP=""  I CODP?1N.N D
 .....S STP=$G(^(CODP)) Q:CODP=""
 .....S STOUT="D110"
 .....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_305 ;--- 305 - SUG MISMAH ( HBM)
 .....S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",HB)
 .....S NST=NST+1
 .....S NOM=$$NMB^WO1P(NST,4)
 .....;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 .....S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 .....S STOUT=STOUT_$$CHR^WO1P(CODP,20) ; COD PAR
 .....S STOUT=STOUT_$$CHR^WO1P($G(^PARIT(CODP)),30) ; NAME PAR
 .....S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 .....S STOUT=STOUT_$$CHR^WO1P($$BC^L2P(CODP),30) ;
 .....N MD,MD1 S MD1="dcigi"
 .....S MD=$P(STP,"*",7) I $L(MD) S MD1=$G(^MIDA(MD))
 .....S STOUT=STOUT_$$CHR^WO1P(MD1,20)
 .....N KAM S KAM=$P(STP,"*",8)
 .....S BON=$P(STP,"*",9)
 .....N MH S MH=$J($P(STP,"*",3),2,2)
 .....N SUM S SUM=$P(STP,"*",4)
 .....S HNST=KAM*MH-SUM
 .....I (KAM+BON) S MH=$J(KAM*MH/(KAM+BON),2,2)
 .....S STOUT=STOUT_$$TOT^WO1P(KAM+BON,17,4)
 .....S STOUT=STOUT_$$TOT^WO1P(MH,15)
 .....S STOUT=STOUT_$$TOT^WO1P(-HNST,15)
 .....S STOUT=STOUT_$$TOT^WO1P(SUM,15)
 .....N AHMAM S AHMAM=0
 .....I $P(STP,"*",4) S AHMAM=$J(100*($P(STP,"*",5)-$P(STP,"*",4))/$P(STP,"*",4),2,2)
 .....S STOUT=STOUT_$$NMB^WO1P(AHMAM*100,4)
 .....S STOUT=STOUT_$$SNIF^WO1P("MHZ")
 .....S STOUT=STOUT_$$CHR^WO1P("",43)
 .....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 D ^WO12MER
 Q
SUMMAM(TD,HD) ;
 N SM S SM=$P(HD,"*",10)
 S SUMAHN=$P(HD,"*",9)
 S SUMLF=0
 N N S N="" F  S N=$O(^MLY(SHANA,STR,TSTR,2,TD,N)) Q:N=""  D
 .N ST S ST=$G(^(N))
 .S SUMLF=SUMLF+$P(ST,"*",4)
 S HN=SUMLF-SUMAHN
 S MAM=SM-SUMAHN
 Q SM
 

WO1MHZ
WO1MHZ ; - HBK [ 17.03.24 17:45 ] [ 13.08.09 19:32 ] [ 05.08.08 12:34 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 D ^WO12MLY
 N SH S SH=0
 S STR="" F  S STR=$O(^HZ(STR)) Q:STR=""  D
 .S TSTR="" F  S TSTR=$O(^HZ(STR,TSTR)) Q:TSTR=""  D
 ..S HZ="" F  S HZ=$O(^HZ(STR,TSTR,HZ)) Q:HZ=""  D
 ...S HD=$G(^(HZ)) Q:HD=""
 ...S DT=$$^%L1DC($P(HD,"*",4),3)
 ...I DT<DT1!(DT>DT2) Q
 ...S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ...S STOUT="C100"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_500
 ...S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",HZ)
 ...S STOUT=STOUT_$$DATHFK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SHAHFK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SHEMLAK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$STREET^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$BAIT^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$IR^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$MIKUD^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$COUNTRYNM^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$COUNTRYCD^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$TEL^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$HPLAK^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$TRHER^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SHUMMB^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$CODMB^WO1P("MHZ",HD)
 ...N LAK S LAK=$P(HD,"*")
 ...N SUMLF,SUMLF1 S SUMLF=0
 ...S SUMMAM=$P(HD,"*",12)
 ...N N S N="" F  S N=$O(^HZ(STR,TSTR,HZ,N)) Q:N=""  D
 ....N A S A=$G(^(N))
 ....S SUMLF=SUMLF+($P(A,"*",2)*$P(A,"*",3)*(100-$P(A,"*",6))*.01)
 ...S SUMLF1=$$TOT^WO1P(SUMLF,15)
 ...S STOUT=STOUT_SUMLF1 ; ------------
 ...S MAM=$P(HD,"*",20)
 ...N HN,HN1 S HN=$J(SUMLF-(SUMMAM-MAM),2,2)
 ...S STOUT=STOUT_$$TOT^WO1P(-HN,15)
 ...S SUMAHHN=SUMMAM-MAM
 ...S SUMAHHN1=$$TOT^WO1P(SUMAHHN,15)
 ...S STOUT=STOUT_SUMAHHN1
 ...S STOUT=STOUT_$$TOT^WO1P(MAM,15)
 ...S STOUT=STOUT_$$TOT^WO1P(SUMMAM,15)
 ...W !,"HZ="_HZ_"  SUMLF="_SUMLF_"  MAM="_MAM_" HN="_HN_"  SUMAHHN="_SUMAHHN,! H 2
 ...S STOUT=STOUT_$$TOT^WO1P(0,12)
 ...S STOUT=STOUT_$$CHR^WO1P(LAK,15)
 ...S STOUT=STOUT_$$HATAMA^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$BIT^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$TRH^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$$SNIF^WO1P("MHZ",HD)
 ...S STOUT=STOUT_$TR($J("",29)," ","!")
 ...D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 ...
 ...N CODP,STP S CODP="",NST=0 F  S CODP=$O(^HZ(STR,TSTR,HZ,CODP)) Q:CODP=""  I CODP?1N.N D
 ....S STP=$G(^(CODP)) Q:CODP=""
 ....S STOUT="D110"
 ....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_500 ;--- 500 - SUG MISMAH ( HBK)
 ....S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",HZ)
 ....S NST=NST+1
 ....S NOM=$$NMB^WO1P(NST,4)
 ....;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ....S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 ....S STOUT=STOUT_$$CHR^WO1P(CODP,20) ; COD PAR
 ....S STOUT=STOUT_$$CHR^WO1P($G(^PARIT(CODP)),30) ; NAME PAR
 ....S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ....S STOUT=STOUT_$$CHR^WO1P($$BC^L2P(CODP),30) ;
 ....N MD,MD1 S MD1="dcigi"
 ....S MD=$P(STP,"*",7) I $L(MD) S MD1=$G(^MIDA(MD))
 ....S STOUT=STOUT_$$CHR^WO1P(MD1,20)
 ....N KAM S KAM=$P(STP,"*",2)
 ....N BON S BON=$P(STP,"*",8)
 ....N MH S MH=$J($P(STP,"*",3),2,2)
 ....N AHHN S AHHN=$P(STP,"*",6)
 ....N SUM S SUM=KAM*MH*(100-AHHN)*.01
 ....I (KAM+BON) S MH=MH*KAM/(KAM+BON)
 ....S HNST=(KAM+BON)*MH-SUM
 ....;;W "HZ="_HZ_" KAM="_KAM_" MH="_MH_" SUM="_SUM,! H 1
 ....S STOUT=STOUT_$$TOT^WO1P(KAM+BON,17,4)
 ....S STOUT=STOUT_$$TOT^WO1P(MH,15)
 ....S STOUT=STOUT_$$TOT^WO1P(-HNST,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUM,15)
 ....N AHMAM S AHMAM=$J($$MAMD^W4L(DT),2,2)
 ....S STOUT=STOUT_$$NMB^WO1P(AHMAM*100,4)
 ....S STOUT=STOUT_$$SNIF^WO1P("MHZ")
 ....S STOUT=STOUT_$$CHR^WO1P("",43)
 ....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 D ^WO12MER
 Q
 

WO1MLG
WO1MLG(STAM) ; [ 13.08.09 18:38 ] [
 I $ZV["GT.M" Q @$$^W4GL("UCI")@("MLG")
 Q "MLY"

WO1MPRT
WO1MPRT ; [ 07.09.12 19:21 ] [ 16.07.12 17:29 ] [ 29.06.12 10:30 ]
 K @$$^W4MAIN("VRM")
 K @$$^W4MAIN("MMM")
 D GETDT^WO1P
 D FRM(0)
 S CODP="" F  S CODP=$O(@$$^W4GL("PAR")@(CODP)) Q:CODP=""  D FRM(CODP)
 S CODP="" F  S CODP=$O(@$$^W4GL("WO1PAR")@(CODP)) Q:CODP=""  I '$D(@$$^W4GL("PAR")@(CODP)) D FRM(CODP)
 K @$$^W4MAIN("MMM")
 Q
FRM(CODP) ;
 I $D(@$$^W4MAIN("MMM")@(CODP)) Q
 S @$$^W4MAIN("MMM")@(CODP)=""
 S STOUT="M100"
 S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P
 S STOUT=STOUT_$$BC^WO1P(CODP) ; COD PAR
 S STOUT=STOUT_$$CODHLF^WO1P(CODP)
 S STOUT=STOUT_$$CHR^WO1P(CODP,20)
 S STOUT=STOUT_$$SHEMP^WO1P(CODP)
 S STOUT=STOUT_$$CHR^WO1P($$SUGP^WO1P(CODP),10)
 S STOUT=STOUT_$$SUGP1^WO1P(CODP)
 S STOUT=STOUT_$$EMM1^WO1P(CODP)
 S STOUT=STOUT_$$ITRAN(CODP)
 S STOUT=STOUT_$$COLTDI(CODP)
 S STOUT=STOUT_$$COLTDO(CODP)
 S STOUT=STOUT_$$MHAL^WO1P(CODP)
 S STOUT=STOUT_$$MHAL^WO1P(CODP)
 S STOUT=STOUT_$$CHR^WO1P("",50)
 D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 Q
ITRAN(CODP)
 N ITRA S ITRA=0
 Q $$TOT^WO1P(ITRA,12)
 ;
COLTDI(CODP) ;
 N COLI S COLI=0
 Q $$TOT^WO1P(COLI,12)
 ;
COLTDO(CODP) ;
 N COLO
 S COLO=0
 Q $$TOT^WO1P(COLO,12)

WO1MTM
WO1MTM ; - HBK  [ 17.03.24 17:45 ] [ 13.08.09 19:33 ] [
 N DT,STOUT,HAZ
 D GETDT^WO1P
 D ^WO12MLY
 S MEYY=$$GG^%L1DC(DT1)
 S ADYY=$$GG^%L1DC(DT2)
 N SH S SH=0
 F YY=MEYY:1:ADYY D
 .S SHANA=$TR($J(YY,2)," ",0)
 .S STR="" F  S STR=$O(^MLY(SHANA,STR)) Q:STR=""  D
 ..S TSTR="" F  S TSTR=$O(^MLY(SHANA,STR,TSTR)) Q:TSTR=""  D
 ...S TD="" F  S TD=$O(^MLY(SHANA,STR,TSTR,1,TD)) Q:TD=""  D
 ....S HD=$G(^(TD)) Q:HD=""
 ....S SPK=$P(HD,"*",2)
 ....S TM=$P(HD,"*",5) Q:'TM
 ....S DT=$$^%L1DC($P(HD,"*"),3)
 ....I DT<DT1!(DT>DT2) Q
 ....S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ....S STOUT="C100"
 ....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_600
 ....S STOUT=STOUT_$$NOMDOC^WO1P("MTM",TM)
 ....S STOUT=STOUT_$$DATHFK^WO1P("MTM",HD)
 ....S STOUT=STOUT_$$SHAHFK^WO1P("MTM",HD)
 ....S STOUT=STOUT_$$SHEMLAK^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$STREET^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$BAIT^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$IR^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$MIKUD^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$COUNTRYNM^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$COUNTRYCD^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$TEL^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$HPLAK^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$TRHER^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$SHUMMB^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$CODMB^WO1P("MHZ",SPK)
 ....S SUMMAM=$$SUMMAM(TD)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMLF,15)
 ....S STOUT=STOUT_$$TOT^WO1P(-HN,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMAHN,15)
 ....S STOUT=STOUT_$$TOT^WO1P(MAM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMMAM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(0,12)
 ....S STOUT=STOUT_$$CHR^WO1P(SPK,15)
 ....S STOUT=STOUT_$$HATAMA^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$BIT^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$TRH^WO1P("MTM",HD)
 ....S STOUT=STOUT_$$SNIF^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$TR($J("",29)," ","!")
 ....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 ....
 ....N CODP,STP S CODP="",NST=0 F  S CODP=$O(^MLY(SHANA,STR,TSTR,1,TD,CODP)) Q:CODP=""  I CODP?1N.N D
 .....S STP=$G(^(CODP)) Q:CODP=""
 .....S STOUT="D110"
 .....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_600 ;--- 600 - SUG MISMAH ( HBK)
 .....S STOUT=STOUT_$$NOMDOC^WO1P("MTM",TM)
 .....S NST=NST+1
 .....S NOM=$$NMB^WO1P(NST,4)
 .....;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 .....S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 .....S STOUT=STOUT_$$CHR^WO1P(CODP,20) ; COD PAR
 .....S STOUT=STOUT_$$CHR^WO1P($G(^PARIT(CODP)),30) ; NAME PAR
 .....S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 .....S STOUT=STOUT_$$CHR^WO1P($$BC^L2P(CODP),30) ;
 .....N MD,MD1 S MD1="dcigi"
 .....S MD=$P(STP,"*",7) I $L(MD) S MD1=$G(^MIDA(MD))
 .....S STOUT=STOUT_$$CHR^WO1P(MD1,20)
 .....N KAM S KAM=$P(STP,"*",8)
 .....S BON=$P(STP,"*",9)
 .....N MH S MH=$J($P(STP,"*",3),2,2)
 .....N SUM S SUM=$P(STP,"*",4)
 .....S HNST=KAM*MH-SUM
 .....I (KAM+BON) S MH=$J(KAM*MH/(KAM+BON),2,2)
 .....S STOUT=STOUT_$$TOT^WO1P(KAM+BON,17,4)
 .....S STOUT=STOUT_$$TOT^WO1P(MH,15)
 .....S STOUT=STOUT_$$TOT^WO1P(-HNST,15)
 .....S STOUT=STOUT_$$TOT^WO1P(SUM,15)
 .....N AHMAM S AHMAM=0
 .....I $P(STP,"*",4) S AHMAM=$J(100*($P(STP,"*",5)-$P(STP,"*",4))/$P(STP,"*",4),2,2)
 .....S STOUT=STOUT_$$NMB^WO1P(AHMAM*100,4)
 .....S STOUT=STOUT_$$SNIF^WO1P("MHZ")
 .....S STOUT=STOUT_$$CHR^WO1P("",43)
 .....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 D ^WO12MER
 Q
SUMMAM(TD) ;
 N SM S SM=0,SUMLF=0,SUMAHN=0
 N N S N="" F  S N=$O(^MLY(SHANA,STR,TSTR,1,TD,N)) Q:N=""  D
 .N ST S ST=$G(^(N))
 .S SM=SM+$P(ST,"*",5)
 .S SUMLF=SUMLF+$P(ST,"*",4)
 S SUMAHN=SUMLF,HN=0
 ;;S HN=SUMLF-SUMAHN
 S MAM=SM-SUMAHN
 Q SM
 

WO1MTM2
WO1MTM2 ; - TM TO LKH [ 17.03.24 17:46 ] [ 13.08.09 19:34 ] [
 N DT,STOUT,HAZ
 D GETDT^WO1P
 D ^WO12MLY
 S MEYY=$$GG^%L1DC(DT1)
 S ADYY=$$GG^%L1DC(DT2)
 N SH S SH=0
 F YY=MEYY:1:ADYY D
 .S SHANA=$TR($J(YY,2)," ",0)
 .S STR="" F  S STR=$O(^MLY(SHANA,STR)) Q:STR=""  D
 ..S TSTR="" F  S TSTR=$O(^MLY(SHANA,STR,TSTR)) Q:TSTR=""  D
 ...S TD="" F  S TD=$O(^MLY(SHANA,STR,TSTR,2,TD)) Q:TD=""  D
 ....S HD=$G(^(TD)) Q:HD=""
 ....S LKH=$P(HD,"*",2)
 ....S TM=$P(HD,"*",5) Q:'TM
 ....S DT=$$^%L1DC($P(HD,"*",6),3)
 ....I DT<DT1!(DT>DT2) Q
 ....S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ....S STOUT="C100"
 ....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_200
 ....S STOUT=STOUT_$$NOMDOC^WO1P("MTM2",TM)
 ....S STOUT=STOUT_$$DATHFK^WO1P("MTM2",HD)
 ....S STOUT=STOUT_$$SHAHFK^WO1P("MTM2",HD)
 ....S STOUT=STOUT_$$SHEMLAK^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$STREET^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$BAIT^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$IR^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$MIKUD^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$COUNTRYNM^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$COUNTRYCD^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$TEL^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$HPLAK^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$TRHER^WO1P("MTM2",LKH)
 ....S STOUT=STOUT_$$SHUMMB^WO1P("MHZ",LKH)
 ....S STOUT=STOUT_$$CODMB^WO1P("MHZ",LKH)
 ....S SUMMAM=$$SUMMAM(TD,HD)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMLF,15)
 ....S STOUT=STOUT_$$TOT^WO1P(-HN,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMAHN,15)
 ....S STOUT=STOUT_$$TOT^WO1P(MAM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SUMMAM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(0,12)
 ....S STOUT=STOUT_$$CHR^WO1P(LKH,15)
 ....S STOUT=STOUT_$$HATAMA^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$BIT^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$TRH^WO1P("MTM2",HD)
 ....S STOUT=STOUT_$$SNIF^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$TR($J("",29)," ","!")
 ....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 ....
 ....N CODP,STP S CODP="",NST=0 F  S CODP=$O(^MLY(SHANA,STR,TSTR,2,TD,CODP)) Q:CODP=""  I CODP?1N.N D
 .....S STP=$G(^(CODP)) Q:CODP=""
 .....S STOUT="D110"
 .....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_200 ;--- 200 - SUG MISMAH ( HBK)
 .....S STOUT=STOUT_$$NOMDOC^WO1P("MTM2",TM)
 .....S NST=NST+1
 .....S NOM=$$NMB^WO1P(NST,4)
 .....;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 .....S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 .....S STOUT=STOUT_$$CHR^WO1P(CODP,20) ; COD PAR
 .....S STOUT=STOUT_$$CHR^WO1P($G(^PARIT(CODP)),30) ; NAME PAR
 .....S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 .....S STOUT=STOUT_$$CHR^WO1P($$BC^L2P(CODP),30) ;
 .....N MD,MD1 S MD1="dcigi"
 .....S MD=$P(STP,"*",7) I $L(MD) S MD1=$G(^MIDA(MD))
 .....S STOUT=STOUT_$$CHR^WO1P(MD1,20)
 .....N KAM S KAM=$P(STP,"*",8)
 .....S BON=$P(STP,"*",9)
 .....N MH S MH=$J($P(STP,"*",3),2,2)
 .....N SUM S SUM=$P(STP,"*",4)
 .....S HNST=KAM*MH-SUM
 .....I (KAM+BON) S MH=$J(KAM*MH/(KAM+BON),2,2)
 .....S STOUT=STOUT_$$TOT^WO1P(KAM+BON,17,4)
 .....S STOUT=STOUT_$$TOT^WO1P(MH,15)
 .....S STOUT=STOUT_$$TOT^WO1P(-HNST,15)
 .....S STOUT=STOUT_$$TOT^WO1P(SUM,15)
 .....N AHMAM S AHMAM=0
 .....I $P(STP,"*",4) S AHMAM=$J(100*($P(STP,"*",5)-$P(STP,"*",4))/$P(STP,"*",4),2,2)
 .....S STOUT=STOUT_$$NMB^WO1P(AHMAM*100,4)
 .....S STOUT=STOUT_$$SNIF^WO1P("MHZ")
 .....S STOUT=STOUT_$$CHR^WO1P("",43)
 .....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 D ^WO12MER
 Q
SUMMAM(TD,HD) ;
 N SM S SM=$P(HD,"*",10)
 S SUMAHN=$P(HD,"*",9)
 S SUMLF=0
 N N S N="" F  S N=$O(^MLY(SHANA,STR,TSTR,2,TD,N)) Q:N=""  D
 .N ST S ST=$G(^(N))
 .S SUMLF=SUMLF+$P(ST,"*",4)
 S HN=SUMLF-SUMAHN
 S MAM=SM-SUMAHN
 Q SM
 

WO1P
WO1P ; [ 14.06.18 07:10 ] [ 09.09.15 16:39 ] [ 22.03.15 16:40 ] 
ADDNP S @$$^WOG@("NP")=$G(@$$^WOG@("NP"))+1
 I '(@$$^WOG@("NP")#5000) H .2
 Q
 ;
HP(STAM) ;
 N HP
 I $$^W4IFMLY S HP=$P(^[$$^WO1MLG]YZRN(^[$$^WO1MLG]STAT("MLY","EM","MRKZ"),10),"*",12) G EHP
 S HP=$$SPA^%L1FRM(@$$^W4PL@("ESEK",4))
EHP Q $TR($J(HP,9)," ",0)
 ;
RN(STAM) Q $TR($J($J,15)," ",0)
 ;
NP(STAM) Q $$NMB($G(@$$^WOG@("NP")),9)
 ;
VER(STAM) Q "&OF1.31&"
 ;
NOMDOC(VD,NOM) ;
 Q $$NMB(NOM,20)
 Q $$NMB("",20)
 ;
DATHFK(VD,VL) ;
 ;I VD="HZ" Q $$DAT($P($$ZMANK^W4HZMST(VL)," "))
 I VD="HZ"!(VD="HBK") Q $$DAT($$DATK^W4HZMST(VL))
 I VD="MHZ" N HD S HD=VL Q $$DAT($P(HD,"*",4))
 I VD="MTM" N HD S HD=VL Q $$DAT($P(HD,"*",1))
 I VD="MTM2" N HD S HD=VL Q $$DAT($P(HD,"*",6))
 I VD="MHB2" N HD S HD=VL Q $$DAT($P(HD,"*",15))
 ;I VD="HBK" Q $$DAT($$DATHFK1(VL))
 I VD="HMK"!(VD="HBW") Q $$DAT(VL)
 ;
 I VD="CB" N DATCB D  Q "20"_DATCB
 .N LKH,CB
 .S LKH=$P(VL,";")
 .S CB=$P(VL,";",2)
 .S DATCB=$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",4)
 ;
 Q $$DAT($H)
 ;
 ;
DATHFK1(VL) N DT S DT=$P($G(@$$^W4ORD@(VL,"CB")),"\",7)
 I 'DT Q $$DATK^W4HZMST(HZ)
 Q $$^%L1DC(DT,1)
 ;
SHAHFK(VD,VL) ;
 I VD="HZ" Q $$SHA($P($$ZMANK^W4HZMST(VL),"  ",2))
 I VD="HBK" Q $$SHA($$SHAFK1(VL))
 I VD="HMK" Q $$SHA(VL)
 I VD="CB" Q "0000"
 Q "0000"
 ;
SHAFK1(VL) N TM S TM=$P($P($G(@$$^W4ORD@(VL,"CB")),"\",7),2)
 Q $$T^%L1TIME(TM)
 ;
SHEMLAK(VD,VL) ;
 N SZ S SZ=50
 N CLALI S CLALI="illk"
 I VD="HZ" D  Q VL
 .N LK S LK=$$LKHN^W4HZMST(VL)
 .I LK="" S VL=$$CHR(CLALI,SZ) Q
 .S VL=$$LKH^W4L(LK) I VL="" D NEWLKH(LK) S VL=CLALI
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="CB"!(VD="MTM2") D  Q VL
 .N LK S LK=$P(VL,";")
 .I LK="" S VL=$$CHR(CLALI,SZ) Q
 .S VL=$$LKH^W4L(LK)
 .I VL="" S VL=CLALI D NEWLKH(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="MHZ" D  Q VL
 .N LK S LK=$P(VL,"*")
 .I LK="" S VL=$$CHR(CLALI,SZ) Q
 .S VL=$G(^YZRN(LK))
 .I VL="" S VL=CLALI
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="MTM2" D  Q VL
 .N LK S LK=$G(VL)
 .I LK="" S VL=$$CHR(CLALI,SZ) Q
 .S VL=$$LKH^W4L(LK)
 .I VL="" S VL=CLALI D NEWLKH(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="HMK"!(VD="HBW")!(VD="IHB") D  Q VL
 .I VL="" S VL=CLALI
 .S VL=$$CHR(VL,SZ)
 ;
 Q $$CHR(CLALI,SZ)
 ;
 ;
STREET(VD,VL) ;
 N SZ S SZ=50
 I VD="HZ" D  Q VL
 .N LK S LK=$$LKHN^W4HZMST(VL)
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$KTV^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="CB"!(VD="HB")!(VD="MTM2")!(VD="HMK")!(VD="HBW") D  Q VL
 .N LK S LK=$P(VL,";")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$KTV^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="MHZ" D  Q VL
 .N LK S LK=$P(VL,"*")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$KTV^L2YZCH(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="IHB" D  Q VL
 .N SPK S SPK=VL
 .I SPK="" S VL=$$CHR("",SZ) Q
 .S VL=$$KTV^W4SPK(SPK)
 .S VL=$$CHR(VL,SZ)
 ;
 Q $$CHR("",SZ)
 ;
 ;
BAIT(VD,VL) ;
 N SZ S SZ=10
 I VD="HZ" D  Q VL
 .N LK S LK=$$LKHN^W4HZMST(VL)
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$BAIT^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="CB"!(VD="HB")!(VD="MTM2")!(VD="HMK")!(VD="HBW") D  Q VL
 .N LK S LK=$P(VL,";")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$BAIT^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="IHB" D  Q VL
 .N LK S SPK=VL
 .I SPK="" S VL=$$CHR("",SZ) Q
 .S VL=$$BAIT^W4SPK(SPK)
 .S VL=$$CHR(VL,SZ)
 ;
 Q $$CHR("",SZ)
 ;
 ;
IR(VD,VL) ;
 N SZ S SZ=30
 I VD="HZ" D  Q VL
 .N LK S LK=$$LKHN^W4HZMST(VL)
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$IR^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="CB"!(VD="HB")!(VD="MTM2")!(VD="HMK")!(VD="HBW") D  Q VL
 .N LK S LK=$P(VL,";")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$IR^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="CB"!(VD="HB")!(VD="MTM2")!(VD="HMK")!(VD="HBW") D  Q VL
 .N LK S LK=$P(VL,";")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$IR^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="IHB" D  Q VL
 .N SPK S SPK=$P(VL,";")
 .I SPK="" S VL=$$CHR("",SZ) Q
 .S VL=$$IR^W4SPK(SPK)
 .S VL=$$CHR(VL,SZ)
 ;
 Q $$CHR("",SZ)
 ;
MIKUD(VD,VL) ;
 N SZ S SZ=8
 I VD="HZ" D  Q VL
 .N LK S LK=$$LKHN^W4HZMST(VL)
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$MIKUD^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="CB"!(VD="HB")!(VD="MTM2")!(VD="HMK")!(VD="HBW") D  Q VL
 .N LK S LK=$P(VL,";")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$MIKUD^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="MHZ" D  Q VL
 .N LK S LK=$P(VL,"*")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$P($G(^YZRN(LK,10)),"*",6)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="IHB" D  Q VL
 .N SPK S SPK=VL
 .I SPK="" S VL=$$CHR("",SZ) Q
 .S VL=$$MIKUD^W4SPK(SPK)
 .S VL=$$CHR(VL,SZ)
 ;
 Q $$CHR("",SZ)
 ;
COUNTRYNM(VD,VL) ;
 Q $$CHR("",30)
 ;
COUNTRYCD(VD,VL) ;
 Q $$CHR("",2)
 ;
TEL(VD,VL) ;
 N SZ S SZ=15
 I VD="HZ" D  Q VL
 .N LK S LK=$$LKHN^W4HZMST(VL)
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$TELA^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="CB"!(VD="HB")!(VD="MTM2")!(VD="HMK")!(VD="HBW") D  Q VL
 .N LK S LK=$P(VL,";")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$TELA^W4L(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="MHZ" D  Q VL
 .N LK S LK=$P(VL,"*")
 .I LK="" S VL=$$CHR("",SZ) Q
 .S VL=$$TEL^L2YZCH(LK)
 .S VL=$$CHR(VL,SZ)
 ;
 I VD="IHB" D  Q VL
 .N SPK S SPK=VL
 .I SPK="" S VL=$$CHR("",SZ) Q
 .S VL=$$TELA^W4SPK(SPK)
 .S VL=$$CHR(VL,SZ)
 ;
 Q $$CHR("",SZ)
 ;
 ;
HPLAK(VD,VL) ;
 N SZ S SZ=9
 Q $$NMB("",SZ)
 ;
TRHER(VD,VL) ;
 N SZ S SZ=8
 Q $$NMB("",SZ)
 ;
SHUMMB(VD,VL) ;
 N SZ S SZ=15
 Q $$TOT(0,SZ,2)
 ;
CODMB(VD,VL) ;
 N SZ S SZ=3
 Q $$CHR(0,SZ)
 ;
SUMLFHN(VD,VL) ;
 N SZ,SUM S SZ=15
 ;
 I VD="HZ" D  Q $$TOT(SUM,SZ,2)
 .S SUM=$$TSHL^W4HZMST(VL)+$$HNHZ(VL)-$$MAM^W4HZMST(VL)
 ;
 I VD="HBK" D  Q $$TOT(SUM,SZ,2)
 .N KF
 .S KF=$$KFHBK(VL)
 .S SUM=$$SUMHBK(VL)+($$HNHZ(VL)*KF)-$$MAMHBK(VL)
 ;
 I VD="CB" D  Q $$TOT(SUM,SZ,2)
 .N LKH,CB
 .S LKH=$P(VL,";")
 .S CB=$P(VL,";",2)
 .S SUM=$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",1)-$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",9)
 ;
 I VD="HMK"!(VD="HBW")!(VD="IHB") Q $$TOT(VL,SZ,2)
 Q $$TOT(0,SZ,2)
 ;
KFHBK(VL) ;
 N SSHUL S SSHUL=$$SHUL^W4HZMST(VL)+$$SHULA^W4HZMST(VL)
 I 'SSHUL Q 1
 Q $$SHUL^W4HZMST(VL)/SSHUL
 ;
KFMAM(VL) ;
 Q $$MAMAH(VL)/(100+$$MAMAH(VL))
 ;
HN(VD,VL)
 N SZ,SUM S SZ=15
 I VD="HZ" Q $$TOT(-$$HNHZ(VL),SZ,2)
 I VD="HBK" Q $$TOT(-$$HNHZ(VL)*$$KFHBK(VL),SZ,2)
 I VD="CB" Q $$TOT(0,SZ,2)
 I VD="HMK"!(VD="HBW") Q $$TOT(VL,SZ,2)
 Q $$TOT(0,SZ,2)
 ;
HNHZ(VL) ;
 N MAMAH,SUM
 S SUM=$$HNH^W4HZMST(VL)-$$DMSH^W4HZMST(VL)
 S MAMAH=$$MAMAH(VL)
 S SUM=SUM*100/(100+MAMAH)
 Q SUM
 ;
MAMAH(VL) Q $$MAMD^W4L($$^%L1DC($$DATK^W4HZMST(VL),3))
 ;
SUMAHHN(VD,VL)
 N SZ,SUM S SZ=15
 I VD="HZ" S SUM=+$$TSHL^W4HZMST(VL)-$$MAM^W4HZMST(VL) Q $$TOT(SUM,SZ,2)
 I VD="HBK" S SUM=$$SUMHBK(VL)-$$MAMHBK(VL) Q $$TOT(SUM,SZ,2)
 I VD="HMK"!(VD="HBW")!(VD="IHB") Q $$TOT(VL,SZ,2)
 ;
 I VD="CB" D  Q $$TOT(SUM,SZ,2)
 .N LKH,CB
 .S LKH=$P(VL,";")
 .S CB=$P(VL,";",2)
 .S SUM=$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",1)-$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",9)
 ;
 Q $$TOT(0,SZ,2)
 ;
MAM(VD,VL)
 N SZ,SUM S SZ=15
 I VD="HZ" S SUM=+$$MAM^W4HZMST(VL) Q $$TOT(SUM,SZ,2)
 I VD="HBK" S SUM=$$MAMHBK(VL) Q $$TOT(SUM,SZ,2)
 I VD'="CB" Q $$TOT(VL,SZ,2)
 Q $$TOT(0,SZ,2)
 ;
MAMHBK(VL) Q $$SUMHBK(VL)*$$KFMAM(VL)
 ;
SUMHBK(HZ) ;
 N SUM S SUM=+$$SHUL^W4HZMST(HZ)
 I $$NOTIP(HZ) D
 .N TIP S TIP=$$TIP^W4HZMST(HZ)
 .;;S SUM=$J(SUM-(TIP*$$KFHBK(HZ)),2,2)
 .S SUM=$J(SUM-TIP,2,2)
 Q SUM
 ;
SUMMAM(VD,VL)
 N SZ,SUM S SZ=15
 I VD="HZ" S SUM=+$$TSHL^W4HZMST(VL) Q $$TOT(SUM,SZ,2)
 I VD="HBK" S SUM=$$SUMHBK(VL) Q $$TOT(SUM,SZ,2)
 I VD="HMK"!(VD="HBW")!(VD="IHB") Q $$TOT(VL,SZ,2)
 ;
 I VD="CB" D  Q $$TOT(SUM,SZ,2)
 .N LKH,CB
 .S LKH=$P(VL,";")
 .S CB=$P(VL,";",2)
 .S SUM=$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",1)-$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",9)
 ;
 Q $$TOT(0,SZ,2)
 ;
SUMNIKUY(VD,VL)
 N SZ,SUM S SZ=12
 I VD="HZ" S SUM=+$$TSHL^W4HZMST(VL) Q $$TOT(SUM,SZ,2)
 ;
 I VD="CB" D  Q $$TOT(SUM,SZ,2)
 .N LKH,CB
 .S LKH=$P(VL,";")
 .S CB=$P(VL,";",2)
 .S SUM=$P(@$$^W4GL("KLF")@(LKH,"CB",CB),"\",9)
 ;
 Q $$TOT(0,SZ,2)
 ;
LAKSAP(VD,VL) ;
 N SZ,SUM S SZ=15
 N LAKSAP S LAKSAP=""
 I VD="HZ" S LAKSAP=$$LKHN^W4HZMST(VL)
 I VD="CB" S LAKSAP=$P(VL,";")
 I VD="HMK" S LAKSAP=$G(W4HSB("LKH"))
 I LAKSAP?.P S LAKSAP=99999999999
 I '$D(@$$^W4GL("LKH")@(LAKSAP)) S @$$^W4GL("WO1LKH")@(LAKSAP)="illk"
 Q $$CHR(LAKSAP,SZ)
 ;
NEWLKH(LAK) ;
 I $L($G(LAK)),'$D(@$$^W4GL("LKH")@(LAK)) D
 .S @$$^W4GL("WO1LKH")@(LAK)="illk"
 Q
HATAMA(VD,VL) ;
 N SZ,SUM S SZ=10
 Q $$CHR("",SZ)
 ;
BIT(VD,VL) ;
 N BIT
 I VD="HZ",$D(@$$^W4GL("P1DEL")@(VL)) Q 1
 I VD="HZ",'$D(@$$^W4GL("P1DEL")@(VL)) Q 0
 I $G(VL)="" Q 0
 S BIT=0
 I VD="HMK" D
 .N LK0 S LK0=$G(@$$^W4GL("KLIN")@("HMK",VL)) I LK0="" Q
 .N DOC S DOC=$P(LK0,"W",2) I DOC="" Q
 .S BIT=$D(@$$^W4GL("W4DOC")@(DOC,"HMK","DELETED"))
 Q BIT
 ;
TRH(VD,VL) ;
 N SZ,TRH S SZ=8
 I VD="HZ"!(VD="HBK") D  Q $$DAT(TRH)
 .S TRH="" ;S TRH=$$TRH^W4HZMST(VL)
 .I TRH="" S TRH=$P($$DATK^W4HZMST(VL)," ")
 .;;I TRH="" S TRH=$P($$ZMANK^W4HZMST(VL)," ")
 ;;I VD="HBK" D  Q $$DAT(TRH)
 .S TRH=$$^%L1DC($P($G(@$$^W4ORD@(VL,"CB")),"\",6),1)
 I VD="CB" D  Q $$DATHFK(VD,VL)
 I VD="MHZ" N HD S HD=VL Q $$DAT($P(HD,"*",4))
 I VD="MTM" N HD S HD=VL Q $$DAT($P(HD,"*",1))
 I VD="MTM2" N HD S HD=VL Q $$DAT($P(HD,"*",6))
 I VD="MHB2" N HD S HD=VL Q $$DAT($P(HD,"*",15))
 ;
 I $G(VL) Q $$DAT(VL)
 Q $$DAT($H)
 ;
SNIF(VD,VL)  ;
 N SZ S SZ=7
 Q $$CHR($G(@$$^W4PL("SNIF")),7)
 ;
MEVACEA(VD,VL)  ;
 N SZ,MEVACEA S SZ=9
 I VD="HZ" D
 .N MKBL S MKBL=$$MKBL^W4HZMST(VL)
 .S MEVACEA="*** "_MKBL
 .I MKBL S MEVACEA=$$SHORT^W4NAME(MKBL)
 Q $$CHR(MEVACEA,SZ)
 ;
DOPC(VD,ND) ;
 I VD="HZ" D  Q
 .S STOUT=STOUT_$$MEVACEA("HZ",ND)
 .S STOUT=STOUT_$$NMB^WO1P(ND,7)
 .S STOUT=STOUT_$TR($J("",13)," ","!")
 ;
 D  Q
 .I ND[";" S ND=$P(ND,";")
 .I ND["-" S ND=$P(ND,"-")
 .S STOUT=STOUT_$$CHR("",9)
 .S STOUT=STOUT_$$NMB^WO1P(ND,7)
 .S STOUT=STOUT_$TR($J("",13)," ","!")
 ;
 S STOUT=STOUT_$TR($J("",29)," ","!")
 Q
 ;
DOPD(VD,ND) ;
 S STOUT=STOUT_$$DOPD1(VD,ND)
 Q
DOPD1(VD,ND) ;
 N ST
 I VD="HZ" D  Q ST
 .S ST=$$DAT($$DATK^W4HZMST(ND))
 .S ST=ST_$$NMB(ND,7)
 .S ST=ST_$$CHR($G(@$$^W4PL@("SNIF")),7)
 .S ST=ST_$$CHR("",21)
 ;
 D
 .N DAT S DAT=$P(ND,";",2)
 .S ND=$P(ND,";")
 .S ST=DAT
 .S ST=ST_$$NMB^WO1P(ND,7)
 .S ST=ST_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 .S ST=ST_$$CHR^WO1P("",21)
 Q ST
 ;
 ;--------------------------------------------------------------
NMB(VL,LEN)
 Q $TR($J($E(+VL,1,LEN),LEN)," ",0)
 ;
NMBMAM(VL)
 S VL=$J(VL,2,2)*100
 Q $TR($J($E(VL,1,4),4)," ",0)
 ;
CHR(VL,LEN)
 I '$D(TS0)!'$D(TSS)!'$D(TS1) D ^%L1TS
 S VL=$$INVH^%L1FRM(VL)
 I $L(VL)<LEN Q $TR($J("",LEN-$L(VL))," ","!")_$TR(VL,TS0,TS1) ;-- WAS TSS
 Q $TR($E(VL,1,LEN),TS0,TS1) ; WAS TSS
 ;
DAT(VL)
 I 'VL Q "00000000"
 N DAT S DAT=$$^%L1DC($TR($P(VL,","),"./",""),2)
 Q "20"_DAT
 ;
SHA(VL) ;
 S VL=$$SPA^%L1FRM(VL)
 I 'VL Q "0000"
 I VL["PM" D  Q VL
 .S VL=$TR($J($P(VL,":")+12,2)," ",0)_$TR($J(+$P(VL,":",2),2)," ",0)
 S VL=$TR($J($P(VL,":"),2)," ",0)_$TR($J(+$P(VL,":",2),2)," ",0)
 Q VL
 ;
TOT(SUM,LEN,DROB)
 S:'$G(LEN) LEN=15
 I '$G(DROB) S DROB=2
 S SUM=$J(SUM,DROB,DROB)
 I SUM<0 Q "-"_$$NMB($J(-SUM*(10**DROB),0),LEN-1)
 Q "+"_$$NMB($J(SUM*(10**DROB),0),LEN-1)
 ;
GETDT ;
 S DT1=$G(@$$^WOG@("DT1"))
 S DT2=$G(@$$^WOG@("DT2"))
 Q
 ;
BC(N) N BC I $$^W4IFMLY S BC=$P($G(^[$$^WO1MLG]PARIT(N,1)),"*",2)
 I '$$^W4IFMLY S BC=N  ;$TR($J(N,13)," ",0)
 Q $$CHR(BC,20)
 ;
SPK(N) I $$^W4IFMLY Q $P($G(^[$$^WO1MLG]PARIT(N,1)),"*",8)
 Q ""
 ;
CODHLF(N) ;
 N SPK S SPK=$$SPK(N) I SPK="" Q $$CHR("",20)
 I '$$^W4IFMLY Q $$CHR("",20)
 N CH S CH=$G(^[$$^WO1MLG]CODHLF(N,SPK))
 Q $$CHR(CH,20)
 ;
SHEMP(N) N SHEM I $$^W4IFMLY S SHEM=$G(^[$$^WO1MLG]PARIT(N))
 I '$$^W4IFMLY S SHEM=$$SHEM^W4P(N)
 I SHEM="" S SHEM="illk hixt"
 Q $$CHR(SHEM,50)
 ;
SUGP(N) N SUGP I $$^W4IFMLY S SUGP=$P($G(^[$$^WO1MLG]PARIT(N,1)),"*",14)
 I '$$^W4IFMLY S SUGP=$$SUG^W4P(N)
 Q SUGP
 ;
SUGP1(N) N SUG,SUG1 S SUG=$$SUGP(N)
 I SUG="" S SUG1="" G ESUGP1
 I $$^W4IFMLY S SUG1=$G(^[$$^WO1MLG]SUG(SUG)) G ESUGP1
 S SUG1=$$SUG1^W4P(N)
ESUGP1 Q $$CHR(SUG1,30)
 ;
EMM(N) I $G(N)="" Q ""
 N EMM I $$^W4IFMLY S EMM=$P($G(^[$$^WO1MLG]PARIT(N,1)),"*",3)
 I '$$^W4IFMLY S EMM="1"
 Q EMM
 ;
EMM1(N) N EMM1 S EMM1=""
 I $$^W4IFMLY I $L($$EMM(N)) S EMM1=$G(^[$$^WO1MLG]MIDA($$EMM(N)))
 I '$$^W4IFMLY S EMM1="dcigi"
 Q $$CHR(EMM1,20)
 ;
MHAL(N) Q $$NMB(0,10)
 ;
CODP(CODP,MH) ;
 I $G(CODP)="" S CODP=0
 I '$D(@$$^W4GL("PAR")@(CODP)) D
 .S @$$^W4GL("WO1PAR")@(CODP)="illk hixt**"_$J($G(MH),2,2)
 Q $$CHR(CODP,20)
 ;
NAMEP(TXT) ;
 S:$G(TXT)="" TXT="illk hixt"
 Q $$CHR(TXT,30)
 ;
NOTIP(HZ) ;
 N DTK S DTK=$$^%L1DC($$DATK^W4HZMST(HZ),3)
 Q $$NOTIP^W4TIPPD(DTK)
 
 

WO1REP
WO1REP ; [ 21.07.25 13:41 ] [ 24.04.24 14:16 ] [ 19.04.12 10:54 ] 
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;
 I $$^W4GLLIN D ^O1REP Q
 K @$$^W4MAIN("TEMP")
 S DAT1=$ZD(@$$^WOG@("DT1"),"DD.MM.YEAR")
 S DAT2=$ZD(@$$^WOG@("DT2"),"DD.MM.YEAR")
 ;
 D DIVBUT
 ;
 S ST=$ZD($H,"24:60")_" drya "_$ZD($H,"DD.MM.YY")_" jix`za "_$G(@$$^WOG@("ISHUR"))_" meyix zcerz 'qn , "_$G(@$$^WOG@("VERSION"))_" dqxib """_$G(@$$^WOG@("NMPROG"))_""" dpkez zervn`a ewted mipezp"
 W "<br />",!
 W "<table dir="""_$$^%W1DIR_""">"
 W " <tr><td colspan=""5"" style=""color:darkgreen"" >" W $$H2U^%L1FRM(ST) W "</td></tr>",!
 W " <tr><td colspan=""5"">&nbsp;</td></tr>",!
 W " <tr style=""font-size:"_$$^W3FSZ(12)_""">"
 W "  <td>&nbsp;"_$$^%W1DICT("MEDATE")_"&nbsp;</td><td "_$$STYLEBLACK_">"_DAT1_"</td>"
 W "  <td>&nbsp;</td>",!
 W "  <td>&nbsp;"_$$^%W1DICT("ADDATE")_"&nbsp;</td><td "_$$STYLEBLACK_">"_DAT2_"</td>"
 W " </tr></table>",!
 ;
 S SH=0,(SSUM,SKAM)=0
 S N="" F  S N=$O(@$$^WOGV@(N)) Q:N=""  D
 .S NMDOC=$$H2U^%L1FRM($G(^(N)))
 .I $D(@$$^WOG@("NMDOC","C100K",N)) D  Q
 ..S KAM=$G(@$$^WOG@("NMDOC","C100K",N))
 ..S SUM=$J($G(@$$^WOG@("NMDOC","C100S",N))*.01,2,2)
 ..S ST=N_"\"_NMDOC_"\"_KAM_"\"_SUM
 ..S SSUM=SSUM+SUM,SKAM=SKAM+KAM
 ..S SH=SH+1,@$$^W4MAIN("TEMP")@(SH)=ST
 .
 .S ST=N_"\"_NMDOC_"\0\0"
 .S SH=SH+1,@$$^W4MAIN("TEMP")@(SH)=ST
 ;
 W "<br>",!
 W "<a href="""_$G(@$$^WOG@("DIRW"))_$G(@$$^WOG@("DIR"))_"INI.zip"" >Download Open Format Initial File ( INI.zip )</a>",!
 W "<br>",!
 W "<a href="""_$G(@$$^WOG@("DIRW"))_$G(@$$^WOG@("DIR"))_"BKMVDATA.zip"" >Download Open Format File ( BKMVDATA.zip )</a>",!
 W "<br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_""" cellspacing=""0"" border=""1"">",!
 W " <tr "_$$STYLEBLACK_" >",!
 W "  <th>&nbsp;"_$$^%W1DICT("DOCNUMBER")_"&nbsp;</th>",!
 W "  <th>&nbsp;"_$$^%W1DICT("KINDOFDOCUMENT")_"&nbsp;</th>",!
 W "  <th>&nbsp;"_$$^%W1DICT("TOTQN")_"&nbsp;</th>",!
 W "  <th>&nbsp;"_$$^%W1DICT("TOTSUM")_"&nbsp;</th>",!
 W " </tr>",!
 ;
 F SH=1:1 Q:'$D(@$$^W4MAIN("TEMP")@(SH))  D
 .S A=$G(^(SH))
 .W "<tr>"
 . F J=1:1:$L(A,"\") D
 .. W "<td>&nbsp;"_$P(A,"\",J)_"&nbsp;</td>"
 .W "</tr>",!
 ;
 W "<tr><td>&nbsp;</td>"
 W "<td>&nbsp;</td>"
 W "<td "_$$STYLEBLACK_" >&nbsp;"_SKAM_"&nbsp;</td>"
 W "<td "_$$STYLEBLACK_" >&nbsp;"_$J(SSUM,2,2)_"&nbsp;</td>"
 W "</tr>",!
 W "</table>",!
 ;
 W "<br><br>",!
 ;
 W "<table dir="""_$$^%W1DIR_"""><tr style=""font-size:"_$$^W3FSZ(12)_""">"
 W " <td>&nbsp;"_$$^%W1DICT("KINDOFRECORDSREPORT")_"&nbsp;"
 W "</td>"
 W "</tr></table>",!
 W "<table dir="""_$$^%W1DIR_""" cellspacing=""0"" border=""1"">",!
 W " <tr "_$$STYLEBLACK_" >",!
 W "  <th>"_$$H2U^%L1FRM("dneyx cew")_"</th>"
 W "  <th>"_$$H2U^%L1FRM("dneyx xe`z")_"</th>"
 W "  <th>"_$$H2U^%L1FRM("zeneyx jq")_"</th>"
 W "</tr>",!
 ;
 K M
 S M("A100")="dgizt dneyx"
 S M("B100")="zepeayg zldpda zerepz"
 S M("B110")="zepeayg zldpda oeayg"
 S M("C100")="jnqn zxzek"
 S M("D110")="jnqn ihxt"
 S M("D120")="zelaw ihxt"
 S M("M100")="i`lna ihixt"
 S M("Z900")="meiq zneyx"
 ;
 S N="" F  S N=$O(M(N)) Q:N=""  D
 .N TOTR S TOTR=$J($G(@$$^W4GL("WO1P")@("NMDOC",N)),0,0) Q:'TOTR
 .W "<tr>"
 .W " <td>&nbsp;"_N_"&nbsp;</td><td>&nbsp;"_$$H2U^%L1FRM(M(N))_"&nbsp;</td>"
 .W " <td>&nbsp;"_TOTR_"&nbsp;</td>",!
 .W "</tr>",!
 W "</table>",!
 ;
 W "<br />",!
 D DIVBUT
 Q
 ;
DIVBUT ;
 W "<p></p>",!
 W "<div id=""divbut"">"
 W "<table dir="""_$$^%W1DIR_""" width=""30%"" border=""0"" cellspacing=""0"">",!
  W "<tr>"
   W "<td>"
     D ROUNDBUT^%W1JS("Print",$$^%W1DICT("PRINT"),"Print()","color:green",",,,100")
   W "</td>",!
   W "<td>&nbsp;</td>",!
   W "<td>"
    D ROUNDBUT^%W1JS("Back",$$^%W1DICT("BACK"),"Back()","color:red",",,,100")
   W "</td>",!
  W "</tr>",!
 W "</table>",!
 W "</div>",!
 Q
 ;
W(ST) ;
 S @$$^W4MAIN("TMPS111")@($O(@$$^W4MAIN("TMPS111")@(999999),-1)+1)=ST
 Q
 ;
STYLEBLACK(STAM) ;
 Q " style=""color:black;font-weight:bold"""
 
 
 
 
 

WO1SFR
WO1SFR ; - [ 17.03.24 17:46 ] [ 17.09.18 06:18 ] [ 13.08.09 19:26 ] 
 N DT,STOUT,HAZ
 D GETDT^WO1P
 D ^WO12MLY
 S MEYY=$$GG^%L1DC(DT1)
 S ADYY=$$GG^%L1DC(DT2)
 N SH S SH=0
 F YY=MEYY:1:ADYY D
 .S SHANA=$TR($J(YY,2)," ",0)
 .S STR="" F  S STR=$O(^MLY(SHANA,STR)) Q:STR=""  D
 ..S TSTR="" F  S TSTR=$O(^MLY(SHANA,STR,TSTR)) Q:TSTR=""  D
 ...S TD="" F  S TD=$O(^MLY(SHANA,STR,TSTR,0,TD)) Q:TD=""  I TD["-009" D
 ....S HD=$G(^(TD)) Q:HD=""
 ....S SPK=$P(HD,"*",2)
 ....S DT=$$^%L1DC($P(HD,"*"),3)
 ....I DT<DT1!(DT>DT2) Q
 ....S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ....S STOUT="C100"
 ....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_840
 ....S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",+TD)
 ....S STOUT=STOUT_$$DATHFK^WO1P("MTM",HD)
 ....S STOUT=STOUT_$$SHAHFK^WO1P("MTM",HD)
 ....S STOUT=STOUT_$$SHEMLAK^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$STREET^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$BAIT^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$IR^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$MIKUD^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$COUNTRYNM^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$COUNTRYCD^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$TEL^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$HPLAK^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$TRHER^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$SHUMMB^WO1P("MHZ",SPK)
 ....S STOUT=STOUT_$$CODMB^WO1P("MHZ",SPK)
 ....S SHUM=$P(HD,"*",7)
 ....S STOUT=STOUT_$$TOT^WO1P(SHUM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(0,15)
 ....S STOUT=STOUT_$$TOT^WO1P(SHUM,15)
 ....S STOUT=STOUT_$$TOT^WO1P(0,15) ; -- MAM
 ....S STOUT=STOUT_$$TOT^WO1P(0,15) ; --- SUMMAM
 ....S STOUT=STOUT_$$TOT^WO1P(0,12) ; NIKUY MAS
 ....S STOUT=STOUT_$$CHR^WO1P(SPK,15)
 ....S STOUT=STOUT_$$HATAMA^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$BIT^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$$TRH^WO1P("MTM",HD)
 ....S STOUT=STOUT_$$SNIF^WO1P("MHZ",HD)
 ....S STOUT=STOUT_$TR($J("",29)," ","!")
 ....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 ....
 ....N CODP,STP S CODP="",NST=0 F  S CODP=$O(^MLY(SHANA,STR,TSTR,0,TD,CODP)) Q:CODP=""  I CODP?8N D
 .....S STP=$G(^(CODP)) Q:CODP=""
 .....S STOUT="D110"
 .....S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_840 ;--- 840 - SUG MISMAH ( HBK)
 .....S STOUT=STOUT_$$NOMDOC^WO1P("MHZ",+TD)
 .....S NST=NST+1
 .....S NOM=$$NMB^WO1P(NST,4)
 .....;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 .....S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 .....S STOUT=STOUT_$$CHR^WO1P(CODP,20) ; COD PAR
 .....S STOUT=STOUT_$$CHR^WO1P($G(^PARIT(CODP)),30) ; NAME PAR
 .....S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 .....S STOUT=STOUT_$$CHR^WO1P($$BC^L2P(CODP),30) ;
 .....N MD,MD1 S MD1="dcigi"
 .....S MD=$P(STP,"*",7) I $L(MD) S MD1=$G(^MIDA(MD))
 .....S STOUT=STOUT_$$CHR^WO1P(MD1,20)
 .....N KAM S KAM=$P(STP,"*",6)
 .....S BON=0
 .....N MH S MH=$J($P(STP,"*",3),2,2)
 .....N SUM S SUM=$P(STP,"*",4)
 .....S STOUT=STOUT_$$TOT^WO1P(KAM+BON,17,4)
 .....S STOUT=STOUT_$$TOT^WO1P(MH,15)
 .....S STOUT=STOUT_$$TOT^WO1P(0,15)
 .....S STOUT=STOUT_$$TOT^WO1P(SUM,15)
 .....N AHMAM S AHMAM=$J($$MAMD^W4L(DT),2,2)
 .....S STOUT=STOUT_$$NMB^WO1P(AHMAM*100,4)
 .....S STOUT=STOUT_$$SNIF^WO1P("MHZ")
 .....S STOUT=STOUT_$$CHR^WO1P("",43)
 .....D ^WO1WR("BKMVDATA.TXT",STOUT) D ADDNP^WO1P
 D ^WO12MER
 Q
SUMMAM(TD) ;
 N PT,SMAM S SMAM=0
 S PT="" F  S PT=$O(^MLY(SHANA,STR,TSTR,TD,PT)) Q:PT=""  D
 .N ST S ST=$G(^(PT))
 .;;I $$MAM^L2P(PT) S SMAM=SMAM+
 Q
 
 

WO1TM
WO1TM ; [ 17.03.24 17:47 ] [ 18.09.17 12:52 ] [ 19.03.13 22:21 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 ;
 I $$^W4LKH D ^WO1HBL("TM") Q  ;----- SHIMUSHIT
 ;
 ;--------------------------- KUPA -------------
 N SH S SH=0
 F DT=DT1:1:DT2 D
 .S TM="" F  S TM=$O(@$$^W4GL("P1HB2I")@(DT,TM)) Q:TM=""  I TM>0 D
 ..S HD=$G(@$$^W4GL("P1HB2")@(TM)) Q:HD=""
 ..S HZ=$P(HD,"\") Q:HZ<1
 ..Q:'$D(@$$^W4ORD@(HZ))
 ..S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 ..S TSHL=$$TSHL^W4HZMST(HZ)
 ..S LK=$S($P(HD,"\",6):$P(HD,"\",6),1:$P(HD,"\",4))
 ..S STOUT="C100"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_200
 ..S STOUT=STOUT_$$NOMDOC^WO1P("CB",TM)
 ..;;S DATHFK=$$DAT^WO1P($$^%L1DC($P(HD,"\",3),1))
 ..S DATHFK=$$DAT^WO1P($$DATK^W4HZMST(HZ))
 ..S STOUT=STOUT_DATHFK
 ..S SHAHFK=$$SHA^WO1P($$T^%L1TIME($P($P(HD,"\",3),",",2)))
 ..S STOUT=STOUT_SHAHFK
 ..S STOUT=STOUT_$$SHEMLAK^WO1P("CB",LK)
 ..S STOUT=STOUT_$$STREET^WO1P("CB",LK)
 ..S STOUT=STOUT_$$BAIT^WO1P("CB",LK)
 ..S STOUT=STOUT_$$IR^WO1P("CB",LK)
 ..S STOUT=STOUT_$$MIKUD^WO1P("CB",LK)
 ..S STOUT=STOUT_$$COUNTRYNM^WO1P("CB",LK)
 ..S STOUT=STOUT_$$COUNTRYCD^WO1P("CB",LK)
 ..S STOUT=STOUT_$$TEL^WO1P("CB",LK)
 ..S STOUT=STOUT_$$HPLAK^WO1P("CB",LK)
 ..S STOUT=STOUT_$$TRHER^WO1P("CB",LK)
 ..S STOUT=STOUT_$$SHUMMB^WO1P("CB",LK)
 ..S STOUT=STOUT_$$CODMB^WO1P("CB",LK)
 ..
 ..N SUMLF,HN,SUMAHN,MAM,SUMMAM,TSHL,HNH
 ..S SUMMAM=$J($P(HD,"\",5),2,2)
 ..S ASR=SUMMAM
 ..S MAMAH=$$MAMD^W4L(DT)
 ..S KFMAM=100/(100+MAMAH)
 ..S MAM=$J(SUMMAM*MAMAH/(100+MAMAH),2,2)
 ..S HNH=$$HNH^W4HZMST(HZ)
 ..S TSHL=$$TSHL^W4HZMST(HZ)
 ..S KFHNH=1 I TSHL S KFHNH=TSHL-HNH/TSHL
 ..S HN=0 I TSHL S HN=HNH*ASR/TSHL
 ..S SUMLF=(SUMMAM+HN)*KFMAM
 ..S HN=HN*KFMAM
 ..S SUMAHN=SUMMAM-MAM
 ..;;W "HZ="_HZ_"  SUMLF="_SUMLF_"  SUMAHN="_SUMAHN_"  MAM="_MAM_" HN="_HN_"  SUMMAM="_SUMMAM,! H 2
 ..
 ..S STOUT=STOUT_$$TOT^WO1P(SUMLF)
 ..S STOUT=STOUT_$$TOT^WO1P(-HN)
 ..S STOUT=STOUT_$$TOT^WO1P(SUMAHN)
 ..S STOUT=STOUT_$$TOT^WO1P(MAM)
 ..S STOUT=STOUT_$$TOT^WO1P(SUMMAM)
 ..S STOUT=STOUT_$$TOT^WO1P(0,12,2)
 ..S STOUT=STOUT_$$LAKSAP^WO1P("CB",LK)
 ..S STOUT=STOUT_$$HATAMA^WO1P("CB",LK)
 ..S STOUT=STOUT_$$BIT^WO1P("CB",LK)
 ..S STOUT=STOUT_$$TRH^WO1P("HZ",HZ)
 ..S STOUT=STOUT_$$SNIF^WO1P("HZ",HZ)
 ..;;S STOUT=STOUT_$TR($J("",29)," ","!")
 ..D DOPC^WO1P("TM",TM)
 ..D ^WOW(STOUT)
 ..
 ..N NR,STP S NR="" F  S NR=$O(@$$^W4ORD@(HZ,NR)) Q:NR=""  I NR?1N.N D
 ...S STP=$G(^(NR)) Q:STP=""
 ...S STOUT="D110"
 ...S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_200
 ...S STOUT=STOUT_$$NOMDOC^WO1P("CB",TM)
 ...S NOM=$$NMB^WO1P(NR,4)
 ...;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ...S STOUT=STOUT_NOM_"000"_$$CHR^WO1P("",20)_"3"
 ...N CODP S CODP=$$^WO1CODP($P(STP,"\"))
 ...S STOUT=STOUT_$$CODP^WO1P(CODP,$P(STP,"\",4)) ; COD PAR
 ...S STOUT=STOUT_$$NAMEP^WO1P($P(STP,"\",3)) ; NAME PAR
 ...S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ...S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ...S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ...N KAM S KAM=$P(STP,"\",5)
 ...N SUM S SUM=$P(STP,"\",7)
 ...I SUM,'KAM S KAM=1
 ...N MH D
 ....I 'SUM,'KAM S MH=0 Q
 ....S MH=$J(SUM/KAM,2,2)
 ...N KFTM
 ...S KFTM=1 I TSHL S KFTM=ASR/TSHL
 ...S MHLF=MH*KFMAM
 ...S SUMD=SUM*KFMAM*KFTM
 ...;;S SSUM=SSUM+$J(SUMD,2,2)
 ...;;W "HZ="_HZ_"  MHLF="_MHLF_"  SUM="_(SUM*KF)_"  KF="_KF,! H 1
 ...S STOUT=STOUT_$$TOT^WO1P(KAM*KFTM,17,4)
 ...S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ...S STOUT=STOUT_$$TOT^WO1P(0,15,2) ; ---- HANAHAT SHURA
 ...S STOUT=STOUT_$$TOT^WO1P(SUMD,15,2)
 ...S STOUT=STOUT_$$NMB^WO1P($J(MAMAH,2,2)*100,4)
 ...S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ...;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ...D DOPD^WO1P("TM",TM_";"_DATHFK)
 ...D ^WOW(STOUT)
 Q
 ;
HN(HZ,TM) ;
 N ST,STA
 S ST=$G(@$$^W4ORD@(HZ,"ETHB2")) I ST="" Q 0
 N I,NOM S NOM=0
 F I=1:1:$L(ST,",") I $P(ST,",",I)=TM S NOM=I
 I 'NOM Q 0
 S STA=$G(@$$^W4ORD@(HZ,"CB","ASR",NOM))
 I STA="" Q 0
 Q $J($P(STA,"*",3),2,2)
 
 

WO1TML
WO1TML ;  [ 17.03.24 17:47 ] [ 09.10.18 12:36 ] [ 16.02.13 11:57 ] 
 N DT,STOUT,HZ
 D GETDT^WO1P
 ;
 S OD="HBW"
 ;
 S DT1=$H-300,DT2=+$H
 ;
 N SH S SH=0
 S TM="" F  S TM=$O(@$$^W4GL("KLIN")@("TM",TM)) Q:TM=""  D
 .S LK0=$G(^(TM))
 .S LK=$P(LK0,"W") Q:LK=""
 .S NOMDOC=$P(LK0,"W",2) Q:NOMDOC=""
 .D ^W4HSBGET(TM,"TM") Q:'$D(W4HSB)
 .S DT=$G(W4HSB("DT")) I DT<DT1!(DT>DT2) Q
 .S SH=SH+1 I $$^WOMAX,SH>$$WOMAX Q
 .S DATHB=$G(W4HSB("TODATE"))
 .S STOUT="C100"
 .S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_200
 .S STOUT=STOUT_$$NOMDOC^WO1P(OD,TM)
 .S DATHFK=$$DAT^WO1P($P(W4HSB("ISSUETIME"),"  "))
 .S STOUT=STOUT_DATHFK
 .S STOUT=STOUT_$$SHAHFK^WO1P(OD,$P(W4HSB("ISSUETIME"),"  ",2))
 .S STOUT=STOUT_$$SHEMLAK^WO1P(OD,W4HSB("LKHNAME"))
 .S STOUT=STOUT_$$STREET^WO1P(OD,LK)
 .S STOUT=STOUT_$$BAIT^WO1P(OD,LK)
 .S STOUT=STOUT_$$IR^WO1P(OD,LK)
 .S STOUT=STOUT_$$MIKUD^WO1P(OD,LK)
 .S STOUT=STOUT_$$COUNTRYNM^WO1P(OD,TM)
 .S STOUT=STOUT_$$COUNTRYCD^WO1P(OD,TM)
 .S STOUT=STOUT_$$TEL^WO1P(OD,LK)
 .S STOUT=STOUT_$$HPLAK^WO1P(OD,TM) ; -- ?
 .S STOUT=STOUT_$$TRHER^WO1P(OD,TM) ; -- ?
 .S STOUT=STOUT_$$SHUMMB^WO1P(OD,TM) ; -- ?
 .S STOUT=STOUT_$$CODMB^WO1P(OD,TM)
 .;
 .N SUMLF,HN,SUMAHN,MAM,SUMMAM
 .S SUMLF=$$SUMLFHN^WO1P(OD,W4HSB("LMAM"))
 .S SUMAHN=$$SUMAHHN^WO1P(OD,W4HSB("LMAM")) ; ???
 .S MAM=$$MAM^WO1P(OD,W4HSB("MAM"))
 .S HN=$$HN^WO1P(OD,$$DISC(HB))
 .;
 .S SUMMAM=$$SUMMAM^WO1P(OD,W4HSB("TOT"))
 .;
 .S STOUT=STOUT_SUMLF
 .S STOUT=STOUT_HN
 .S STOUT=STOUT_SUMAHN
 .S STOUT=STOUT_MAM
 .S STOUT=STOUT_SUMMAM
 .;
 .S STOUT=STOUT_$$SUMNIKUY^WO1P(OD,TM)
 .S STOUT=STOUT_$$LAKSAP^WO1P(OD,TM)
 .S STOUT=STOUT_$$HATAMA^WO1P(OD,TM)
 .S STOUT=STOUT_$$BIT^WO1P(OD,TM)
 .S STOUT=STOUT_$$TRH^WO1P(OD,TM)
 .S STOUT=STOUT_$$SNIF^WO1P(OD,TM)
 .;
 .D DOPC^WO1P(OD,TM)
 .D ^WOW(STOUT)
 .
 .N NR,STP S NR="" F  S NR=$O(@$$^W4GL("W4DOC")@(NOMDOC,NR)) Q:NR=""  I NR?1N.N D
 ..S STOUT="D110"
 ..S STOUT=STOUT_$$NP^WO1P_$$HP^WO1P_200
 ..S STOUT=STOUT_$$NOMDOC^WO1P(OD,TM)
 ..S NOM=$$NMB^WO1P(NR,4)
 ..N KAM S KAM=+$$QN^W4DOC(NOMDOC,NR)
 ..N SUM S SUM=+$$AFTAX^W4DOC(NOMDOC,NR)
 ..S DISC=$$DISC^W4DOC(NOMDOC,NR)
 ..I SUM,'KAM S KAM=1
 ..N MH D
 ...I 'SUM,'KAM S MH=0 Q
 ...S MH=$J(SUM-DISC/KAM,2,2)
 ..;             MISP SHUR; SUG MISM BASIS; MISP MISM BASIS;SUG ISKA(SHERUT MEHER)
 ..S STOUT=STOUT_NOM_"100"_$$NOMDOC^WO1P(OD,TM)_"3"
 ..N CODP S CODP=$$^WO1CODP($$CODE^W4DOC(NOMDOC,NR))
 ..S STOUT=STOUT_$$CODP^WO1P(CODP,MH) ; COD PAR
 ..S STOUT=STOUT_$$CHR^WO1P($$NAME^W4DOC(NOMDOC,NR),30) ; NAME PAR
 ..S STOUT=STOUT_$$CHR^WO1P("",50) ; SHEM YAZRAN
 ..S STOUT=STOUT_$$CHR^WO1P("",30) ; BAR-CODE
 ..S STOUT=STOUT_$$CHR^WO1P("dcigi",20)
 ..N AHMAM S AHMAM=+$$AHMAM^W4DOC(NOMDOC)
 ..N KFTM,KFMAM,KF
 ..S KFMAM=100/(100+AHMAM)
 ..S KF=1
 ..S MHLF=MH*KFMAM
 ..;;W "TM="_HB_"  MHLF="_MHLF_"  SUM="_(SUM*KF),! H 1
 ..S STOUT=STOUT_$$TOT^WO1P(KAM*KF,17,4)
 ..S STOUT=STOUT_$$TOT^WO1P(MHLF,15,2)
 ..S STOUT=STOUT_$$TOT^WO1P(DISC,15,2) ; ---- HANAHAT SHURA
 ..S STOUT=STOUT_$$TOT^WO1P(SUM*KF*KFMAM,15,2)
 ..S STOUT=STOUT_$$NMB^WO1P($J(AHMAM,2,2)*100,4)
 ..S STOUT=STOUT_$$CHR^WO1P($G(@$$^W4PL@("SNIF")),7)
 ..D DOPD^WO1P(OD,TM_";"_DATHFK)
 ..;;S STOUT=STOUT_$$CHR^WO1P("",43)
 ..D ^WOW(STOUT)
 Q
 ;
DISC(TM) ;
 N LK0,HN S HN=0
 S LK0=$G(@$$^W4GL("KLIN")@(OD,TM))
 I LK0["W" D
 .S NOMDOC=$P(LK0,"W",2) Q:'NOMDOC
 .S HN=$$DISCNIS^W4DOC(NOMDOC)-$$DMSH^W4DOC(NOMDOC)
 Q HN
 
 

WO1WR
WO1WR(NMDOC,ST,PR) ; [ 21.07.25 14:02 ] [ 26.03.15 07:06 ] [ 18.03.15 22:02 ] 
 N TYP,TYPD,SUMD
 S TYP=$E(ST,1,4)
 S TYPD=$E(ST,23,25)
 I TYPD=400 S SUMD=$E(ST,348,362) ; - KABALA
 E  S SUMD=$E(ST,318,332) ; --- LELO MAM
 S @$$^WO@("ST",$O(@$$^WO@("ST",99999),-1)+1)=ST
 ;;F I=1:1:8 W "1234567890"
 ;;W ST,!,"LEN="_$L(ST),!!
 Q:$L(ST)<10
 ;
 S @$$^WOG@("NMDOC",TYP)=$G(@$$^WOG@("NMDOC",TYP))+1
 ;
 I TYP="C100",$L(TYPD) D
 .S @$$^WOG@("NMDOC","C100K",TYPD)=$G(@$$^WOG@("NMDOC","C100K",TYPD))+1
 .S @$$^WOG@("NMDOC","C100S",TYPD)=$G(@$$^WOG@("NMDOC","C100S",TYPD))+SUMD
 ;
 ;;U 0 W ST,! ;------- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 ;;Q
 ;
 S PATH=@$$^WOG@("DIR0")_@$$^WOG@("DIR")
 ;;ZSY "mkdir -p "_PATH
 ;
 S FL=PATH_NMDOC
 S @$$^WO@("FL")=FL
 ;
 I $G(@$$^WOG@("TO"))="W" W ST,! G END
 I $G(PR)'="W" O FL:(APPEND)
 I $G(PR)="W" O FL:(WRITE:REWIND:NEWVERSION)
 ;
 U FL W ST,!
 C FL
END Q
 
 

WO1Z
WO1Z ; [ 25.10.10 12:50 ] [ 30.08.10 14:45 ] [ 14.11.09 19:30 ]
 N STOU
 S STOU="Z900"
 S STOU=STOU_$$NP^WO1P
 S STOU=STOU_$$HP^WO1P
 S STOU=STOU_$$RN^WO1P
 S STOU=STOU_$$VER^WO1P
 S STOU=STOU_$TR($J($$NP^WO1P,15)," ",0)
 S STOU=STOU_$TR($J("",50)," ","!")
 ;
 D ^WO1WR("BKMVDATA.TXT",STOU)
 ;
 N FL S FL=@$$^WOG@("DIR0")_@$$^WOG@("DIR")_"BKMVDATA"
 ZSY "unix2dos "_FL_".TXT"
 ;TV ;
 ZSY "zip -j "_FL_" "_FL_".TXT"
 Q

WOG
WOG(STAM) ; [ 13.08.09 14:23 ] [
 Q $$^W4GL("WO1P")

WOGV
WOGV(STAM) ; [ 14.05.11 21:19 ] [ 14.08.09 18:44 ] [ 13.08.09 15:32 ] [
 Q "^[$$^W3MAIN]WO1VM"

WOMAX
WOMAX() ; [ 17.03.24 17:48 ] [ 
 Q $G(@$$^W4PRM@("WOMAX"))
 

WOW
WOW(STOUT) ; [ 08.12.11 09:10 ] [ 12.08.09 23:04 ] [
 S NP=$O(@$$^WO@("STOUT",99999),-1)+1
 S @$$^WO@("STOUT",NP)=STOUT
 D ^WO1WR("BKMVDATA.TXT",STOUT)
 S @$$^WOG@("NP")=$G(@$$^WOG@("NP"))+1
 Q

WQCLEAR
WQCLEAR ; [ 29.04.21 17:14 ] [ 
 N (JB,%REM,%ARG)
 S PATH="/tmp/"
 S HIP=PATH_"fl*-DET-*"
CYC S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC
 ;
 S HIP=PATH_"tmp*-DET-*"
CYC1 S FL=$ZSEARCH(HIP) I FL'="" D BDK G CYC1
 Q
 ;
BDK S DT=$P(FL,"-",3)
 I DT<($H-5) D
 .;;U 0 W FL_"  DELETED",!
 .ZSY "rm "_FL
 Q
 
 
 
 
 
 

WQDLV
WQDLV ; [ 18.08.25 10:57 ] [ 17.08.25 14:20 ] [ 22.01.24 12:52 ] 
CR(ORD) ; 
 N (JB,%ARG,%REM,ORD)
 I $D(@$$^W4ORD@(ORD))'=11 Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S URL="https://sendimanapi.com/delivery/createDelivery"
 S HD="'Content-Type: application/x-www-form-urlencoded'"
 S COORD=$G(@$$^W4ORD@(ORD,"COORD"))
 S COORD=$TR(COORD,";",",")
 ;
 S DATA="" ;;"-d "'branch_name="_$G(@$$^W4PRM@("SNDY","BRANCH"))_"' "
 S REST=$$REST(ORD)
 S DATA=DATA_"-d 'rest_username="_REST_"' "
 S DATA=DATA_"-d 'client_city="_$$CITY(ORD)_"' "
 S DATA=DATA_"-d 'client_street="_$$STREET(ORD)_"' "
 S DATA=DATA_"-d 'client_building="_$$HOME(ORD)_"' "
 S DATA=DATA_"-d 'client_name="_$$NAME(ORD)_"' "
 S DATA=DATA_"-d 'client_phone="_$$TEL(ORD)_"' "
 S DATA=DATA_"-d 'order_delay="_$$DELAY(ORD)_"' "
 I $L($$FLOOR(ORD)) S DATA=DATA_"-d 'client_floor="_$$FLOOR(ORD)_"' "
 I $L($$ENTRY(ORD)) S DATA=DATA_"-d 'client_entry="_$$ENTRY(ORD)_"' "
 S DATA=DATA_"-d 'client_apartment="_$$APP(ORD)_"' "
 N HRA S HRA=$$HB($$HRA^W4HZMST(ORD))
 I $L(HRA) S DATA=DATA_"-d 'client_comment="_HRA_"' "
 S DATA=DATA_"-d 'order_id="_ORD_"' "
 S DATA=DATA_"-d 'commitment_time="_$$TIME(ORD)_"' "
 ;
 I COORD,COORD["," D
 .S DATA=DATA_"-d 'client_latitude="_$P(COORD,",")_"' "
 .S DATA=DATA_"-d 'client_longitude="_$P(COORD,",",2)_"' "
 ;
 N MZM S MZM=$$MZM^W4HZMST(ORD)
 I MZM S DATA=DATA_"-d 'sum_cash="_$J(MZM,2,2)_"'"
 ;
 N DT S DT=$$^W4DZ
 S @$$^W4GL("WQDLV")@(DT,ORD)=$H
 S @$$^W4GL("WQDLV")@(DT,ORD,$H)=$ZD($H,"DD.MM.YY 24:60")_"\"_$G(%ARG("PROG"))
 ;
 D SEND("CR-"_ORD,URL,HD,DATA)
 Q
 ;
 ;
DET ;
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;------------------------------ 26/03/23 --------------------
 N DT S DT=$$^W4DZ
 ;;N HZ S HZ="" F  S HZ=$O(@$$^W4GL("WQDLV")@(DT,HZ)) Q:HZ=""  D 
 .I '$D(@$$^W4GL("WQORDSN")@(HZ)) D CR(HZ)
 ; ------------------------------------------------------------
 ;;S URL="https://sendimanapi.com/delivery/getApiDeliveryDetails"
 S URL="https://sendimanapi.com/delivery/getDeliveriesBySendiOrderIds"
 S HD="'Content-Type: application/json'"
 S ORDLIST=$$ORDLIST
 I ORDLIST=""!(ORDLIST="<PUSTO>") Q
 ;
 F II=1:10 Q:II>$L(ORDLIST,",")  D
 .S ORDL=$P(ORDLIST,",",II,II+9)
 .S DATA="-d '["_ORDL_"]'"
 .D SEND("DET-"_$TR($H,",","-"),URL,HD,DATA)
 .H 1
 Q
 ;
 ;
SEND(IND,URL,HD,DATA) ;
 N (JB,%ARG,%REM,IND,URL,HD,DATA)
 S DIR="/tmp/"
 ;
 S FLQOU=DIR_"flqou"_$$DZ_"-"_JB_"-"_IND
 S PW=$G(@$$^W4PRM@("SNDY","PW"))
 S AUTH="'Authorization: Basic "_PW_"'"
 ;
 D DB(0)
 S FLQDATA=DIR_"flqdata"_$$DZ_"-"_JB_"-"_IND 
 O FLQDATA:(NEWVERSION:REWIND) U FLQDATA
 W "curl -s -H "_AUTH_" -H "_HD_" -L -X POST -s -m 30 "_URL_" "_DATA_" -o "_FLQOU
 C FLQDATA
 D DB(.5)
 ;
 ZSY "iconv -c -f cp862 -t utf-8 "_FLQDATA_" -o "_FLQDATA_"utf-8"
 S CMD="/bin/sh "_FLQDATA_"utf-8"
 ZSY CMD
 ;
 ;;ZSY "rm -f "_FLQDATA
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 I $$EXIST^%L1ZOS(FLQOU) D
 .C FLQOU O FLQOU:(REWIND:READONLY)
 .F  U FLQOU R A Q:$ZEOF  D 
 ..S K=K+1,@TMP@(K)=A
 ..
 ..I $P(IND,"-")="CR" D
 ...S A1=A ;;$TR(A," ","")
 ...S A3=$P($P(A1,"""data"":",2),"""msg""")
 ...S ORDID="order_id"
 ...S ORDIDKV=""""_ORDID_""""
 ...N HZM S HZM=+$P(IND,"-",2) Q:'HZM
 ...S B=ORDIDKV_$P(A3,ORDIDKV,2)
 ...S ORDSN=$$GET(B,ORDID) Q:'ORDSN
 ...S @$$^W4GL("WQORDSN")@(HZM)=ORDSN
 ..
 ..I $P(IND,"-")="DET" D
 ...S A1=A ;;$TR(A," ","")
 ...;;Q:A1'["200{"
 ...;;S A2=$P($P(A1,"200{",2),"500{")
 ...S A3=$P($P(A1,"""data"":",2),"""msg""")
 ...S ORDID="order_id"
 ...S ORDIDKV=""""_ORDID_""""
 ...S SNDORDID="sendi_order_id"
 ...S SNDORDIDKV=""""_SNDORDID_""""
 ...;
 ...F I=1:1:$L(A3,""""_ORDID_"""") D
 ....;
 ....S B=ORDIDKV_$P(A3,ORDIDKV,I+1)
 ....S HZM=$$GET(B,ORDID) Q:'HZM  Q:'$D(@$$^W4ORD@(HZM))
 ....S B1=SNDORDIDKV_$P(A3,SNDORDIDKV,I+1)
 ....S ORDSN=$$GET(B1,SNDORDID)
 ....S @$$^W4GL("WQORDSN")@(HZM)=ORDSN
 ....N TMPREP S TMPREP=$G(@$$^W4ORD@(HZM,"PREP")) 
 ....
 ....S STAT=$$GET(B,"delivery_status")
 ....
 ....S TAKED=$$GET(B,"picked_up_at") I TAKED="null" S TAKED=""
 ....S SUPPLIED=$$GET(B,"delivered_at") I SUPPLIED="null" S SUPPLIED=""
 ....S PSLTEL=$$GET(B,"driver_phone")
 ....S PSL=$$FINDPSL(PSLTEL)
 ....I PSL,STAT>0,'$$PSL^W4HZMST(HZM) D  ;,TAKED'="" D
 .....I $$MM^W4PRM D  Q   
 ......S @$$^W4MAIN("TMPDLV")@(HZM)=PSL
 ......D SGPSL^W4MMDLV(HZM)
 .....N WQDLV S WQDLV=""
 .....D SGPSL^W4DLVORD(HZM,PSL)
 ....I PSL,STAT>0,$$PSL^W4HZMST(HZM),PSL'=$$PSL^W4HZMST(HZM) D
 .....S $P(@$$^W4ORD@(HZM,"TM"),"\")=PSL ; -- 22/01/24
 ....
 ....I STAT>0,STAT<4,'$D(@$$^W4ORD@(HZM,"READY")) D
 .....S ^("READY")=$H
 .....I $$TRICKER^W4PRM(HZM) D ^W4TRICKR(JB,HZM_"<>"_$G(PSL),"COMPLETE")
 ....
 ....I TAKED>0 S TAKED=$$T2H(TAKED) I TAKED>0 D
 .....S @$$^W4ORD@(HZM,"TAKED")=TAKED
 ....
 ....I SUPPLIED>0,STAT=3 S SUPPLIED=$$T2H(SUPPLIED) I SUPPLIED>0 D
 .....S @$$^W4ORD@(HZM,"SUPPLIED")=SUPPLIED
 .....I $$TRICKER^W4PRM(HZM) D ^W4TRICKR(JB,HZM_"<>"_$G(PSL),"DLV")
 .
 .C FLQOU
 .;;ZSY "rm -f "_FLQOU
 .;;ZSY "rm -f tmpou"_JB_"-*"
 ;
 D DB(2)
 S H=+$H
 S IND1=$P(IND,"-")
 S NP=$O(@$$^W4GL("WQPROT")@(H,IND1,99999),-1)+1
 S @$$^W4GL("WQPROT")@(H,IND1,NP)=CMD
 S @$$^W4GL("WQPROT")@(H,IND1,NP,"ZSY")=$ZSY
 Q
 ;
 ;
REST(ORD) ;
 I $$MM^W4PRM Q $$MSDHZM^W4HZMST(ORD)
 Q $G(@$$^W4PRM@("SNDY","REST"))
 ;
NMREST(ORD) ;
 Q $$MSDN^W3R(ORD)
 ;
CITY(ORD) ;
 N IR S IR=$$IR^W4HZMST(ORD) ;
 I IR="" S IR="TAKEAWAY"
 Q $$HB(IR) ;
 ;
STREET(ORD) ;
 N STR S STR=$$KTV^W4HZMST(ORD)
 I STR="" S STR="TAKEAWAY"
 Q $$HB(STR)
 ;
HOME(ORD) ;
 N HOME S HOME=$$BAIT^W4HZMST(ORD)
 I HOME="" S HOME=0
 Q $$HB(HOME)
 ;
NAME(ORD) ;
 N NM S NM=$$LKHNM^W4HZMST(ORD)
 S NM=$TR(NM,"'","")
 S NM=$TR(NM,"""","")
 Q $$HB(NM)
 ;
TEL(ORD) ;
 N TEL S TEL=$$TELB^W4HZMST(ORD)
 I TEL="" S TEL="0000000"
 Q TEL
 ;
FLOOR(ORD) ;
 N FLOOR S FLOOR=$$KOMA^W4HZMST(ORD) ;
 I FLOOR="" S FLOR=0
 Q $$HB(FLOOR)
 ;
ENTRY(ORD) ;
 Q $$HB($$CNISA^W4HZMST(ORD))
 ;
APP(ORD) ;
 N APP S APP=$$DIRA^W4HZMST(ORD)
 I APP="" S APP=0
 Q $$HB(APP)
 ;
TIME(ORD) ;
 N TIMES,TIMEF
 S TIMES=$P($$DATCB^W4HZMST(ORD),"  ")_","_$P($$DATCB^W4HZMST(ORD),"  ",2)
 S TIMEF=$$TRH^W4HZMST(ORD)_","_$$SHAA^W4HZMST(ORD)
 Q $$DIF^%L1TIME(TIMEF,TIMES)
 ;
TOT(ORD) ;
 Q +$$TSHL^W4HZMST(ORD) 
 ;
DELAY(ORD) ;
 I $$PAPJ^W4PRM Q 5
 Q 0
 ;
HB(RKV) ;
 ;;Q $$^%L1CNV(RKV)
 S RKV=$$INVH^%L1FRM(RKV)
 S RKV=$TR(RKV,"'""","")
 Q $TR(RKV,TS0,TSS)
 ;
ORDLIST(STAM) ;
 N DT,N,GL,ST S DT=$$^W4DZ
 S ST=""
 S GL=$$^W4GL("WQDLV")
 ;
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .I $$DEL^W4DEL(N) Q
 .I $L($$SUPPLIED^W4HZMST(N)) Q
 .N ORDSN S ORDSN=$$ORDSN(N) Q:ORDSN=""
 .S ST=ST_ORDSN_","
 ;
 I $E(ST,$L(ST))="," S ST=$E(ST,1,$L(ST)-1)
 Q ST
 ;
 ;
ORDSN(ORD) ; 
 Q $G(@$$^W4GL("WQORDSN")@(ORD))
 ;
DB(PRM) ;
 ;;U 0 W PRM,!
 Q
 ;
GET(TX,ID) ;
 N VL
 I $E(ID)'="""" S ID=""""_ID_""""
 I ID'[":" S ID=ID_":"
 S VL=$P(TX,ID,2)
 S VL=$P(VL,",")
 S VL=$P(VL,"}")
 S VL=$P(VL,"]")
 S VL=$P(VL,"//")
 S:$E(VL)="""" VL=$E(VL,2,$L(VL)-1)
 Q VL
 ;
T2H(DATTM) ; 
 I DATTM?4N1"-".E I DATTM'[" " S DATTM=$E(DATTM,1,10)_" "_$E(DATTM,11,255)
 S DAT=$P(DATTM," ")
 S DAT=$P(DAT,"-",3)_"."_$P(DAT,"-",2)_"."_$E(DAT,3,4)
 S DT=$$^%L1DC(DAT,3)
 S TIM=$P(DATTM," ",2)
 S SEC=TIM*3600+($P(TIM,":",2)*60)
 Q DT_","_SEC
 ;
FINDPSL(PSLTEL) ; 
 N PSL,TEL S PSL=""
 S PSLTEL=$TR(PSLTEL," -","")
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:PSL
 .S TEL=$P($G(^(N,1)),"\",2) Q:TEL=""
 .I $TR(TEL," -","")=PSLTEL S PSL=N
 Q PSL 
 ;
DZ() ;
 Q $$^W4DZ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WQDLV0
WQDLV ; [ 28.03.23 06:59 ] [ 28.02.23 16:27 ] [ 21.02.23 13:35 ] 
CR(ORD) ; 
 N (JB,%ARG,%REM,ORD)
 I $D(@$$^W4ORD@(ORD))'=11 Q
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S URL="https://sendimanapi.com/delivery/createDelivery"
 S HD="'Content-Type: application/x-www-form-urlencoded'"
 ;
 S DATA="" ;;"-d "'branch_name="_$G(@$$^W4PRM@("SNDY","BRANCH"))_"' "
 S REST=$$REST(ORD)
 S DATA=DATA_"-d 'rest_username="_REST_"' "
 S DATA=DATA_"-d 'client_city="_$$CITY(ORD)_"' "
 S DATA=DATA_"-d 'client_street="_$$STREET(ORD)_"' "
 S DATA=DATA_"-d 'client_building="_$$HOME(ORD)_"' "
 S DATA=DATA_"-d 'client_name="_$$NAME(ORD)_"' "
 S DATA=DATA_"-d 'client_phone="_$$TEL(ORD)_"' "
 S DATA=DATA_"-d 'order_delay="_$$DELAY(ORD)_"' "
 I $L($$FLOOR(ORD)) S DATA=DATA_"-d 'client_floor="_$$FLOOR(ORD)_"' "
 I $L($$ENTRY(ORD)) S DATA=DATA_"-d 'client_entry="_$$ENTRY(ORD)_"' "
 S DATA=DATA_"-d 'client_apartment="_$$APP(ORD)_"' "
 N HRA S HRA=$$HB($$HRA^W4HZMST(ORD))
 I $L(HRA) S DATA=DATA_"-d 'client_comment="_HRA_"' "
 S DATA=DATA_"-d 'order_id="_ORD_"' "
 S DATA=DATA_"-d 'commitment_time="_$$TIME(ORD)_"' "
 ;;S DATA=DATA_"-d 'client_latitude=' "
 ;;S DATA=DATA_"-d 'client_longitude=' "
 ;
 N MZM S MZM=$$MZM^W4HZMST(ORD)
 I MZM S DATA=DATA_"-d 'sum_cash="_$J(MZM,2,2)_"'"
 ;
 N DT S DT=$$^W4DZ
 S @$$^W4GL("WQDLV")@(DT,ORD)=$H
 ;
 D SEND("CR-"_ORD,URL,HD,DATA)
 Q
 ;
 ;
DET ;
 N (JB,%ARG,%REM)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 ;;S URL="https://sendimanapi.com/delivery/getApiDeliveryDetails"
 S URL="https://sendimanapi.com/delivery/getDeliveriesBySendiOrderIds"
 S HD="'Content-Type: application/json'"
 S ORDLIST=$$ORDLIST
 I ORDLIST=""!(ORDLIST="<PUSTO>") Q
 ;
 F II=1:10 Q:II>$L(ORDLIST,",")  D
 .S ORDL=$P(ORDLIST,",",II,II+9)
 .S DATA="-d '["_ORDL_"]'"
 .D SEND("DET-"_$TR($H,",","-"),URL,HD,DATA)
 .H 1
 Q
 ;
 ;
SEND(IND,URL,HD,DATA) ;
 N (JB,%ARG,%REM,IND,URL,HD,DATA)
 S DIR="/tmp/"
 ;
 S FLQOU=DIR_"flqou"_JB_"-"_IND
 S PW=$G(@$$^W4PRM@("SNDY","PW"))
 S AUTH="'Authorization: Basic "_PW_"'"
 ;
 D DB(0)
 S FLQDATA=DIR_"flqdata"_JB_"-"_IND 
 O FLQDATA:(NEWVERSION:REWIND) U FLQDATA
 W "curl -H "_AUTH_" -H "_HD_" -L -X POST -s -m 30 "_URL_" "_DATA_" -o "_FLQOU_"  > "_DIR_"tmpou"_JB_"-"_IND
 C FLQDATA
 D DB(.5)
 ;S CMD="curl -H "_AUTH_" --location --request POST -H "_HD_" -s -m 15 -k -K "_FLQURL_" -d data@"_FLQDATA_"  > "_DIR_"tmpou"_JB
 ;
 ZSY "iconv -c -f cp862 -t utf-8 "_FLQDATA_" -o "_FLQDATA_"utf-8"
 S CMD="/bin/sh "_FLQDATA_"utf-8"
 ZSY CMD
 ;
 ZSY "rm -f "_FLQDATA
 ;
 S TMP=$$^W4MAIN("TMP") K @TMP
 S K=0
 D DB(1)
 ;
 I $$EXIST^%L1ZOS(FLQOU) D
 .C FLQOU O FLQOU:(REWIND:READONLY)
 .F  U FLQOU R A Q:$ZEOF  D 
 ..S K=K+1,@TMP@(K)=A
 ..
 ..I $P(IND,"-")="CR" D
 ...S A1=A ;;$TR(A," ","")
 ...S A3=$P($P(A1,"""data"":",2),"""msg""")
 ...S ORDID="order_id"
 ...S ORDIDKV=""""_ORDID_""""
 ...N HZM S HZM=+$P(IND,"-",2) Q:'HZM
 ...S B=ORDIDKV_$P(A3,ORDIDKV,2)
 ...S ORDSN=$$GET(B,ORDID) Q:'ORDSN
 ...S @$$^W4GL("WQORDSN")@(HZM)=ORDSN
 ..
 ..I $P(IND,"-")="DET" D
 ...S A1=A ;;$TR(A," ","")
 ...;;Q:A1'["200{"
 ...;;S A2=$P($P(A1,"200{",2),"500{")
 ...S A3=$P($P(A1,"""data"":",2),"""msg""")
 ...S ORDID="order_id"
 ...S ORDIDKV=""""_ORDID_""""
 ...S SNDORDID="sendi_order_id"
 ...S SNDORDIDKV=""""_SNDORDID_""""
 ...
 ...F I=1:1:$L(A3,""""_ORDID_"""") D
 ....S B=ORDIDKV_$P(A3,ORDIDKV,I+1)
 ....S HZM=$$GET(B,ORDID) Q:'HZM  Q:'$D(@$$^W4ORD@(HZM))
 ....S B1=SNDORDIDKV_$P(A3,SNDORDIDKV,I+1)
 ....S ORDSN=$$GET(B1,SNDORDID)
 ....S @$$^W4GL("WQORDSN")@(HZM)=ORDSN
 ....N TMPREP S TMPREP=$G(@$$^W4ORD@(HZM,"PREP")) 
 ....
 ....S STAT=$$GET(B,"delivery_status")
 ....
 ....S TAKED=$$GET(B,"picked_up_at") I TAKED="null" S TAKED=""
 ....S SUPPLIED=$$GET(B,"delivered_at") I SUPPLIED="null" S SUPPLIED=""
 ....S PSLTEL=$$GET(B,"driver_phone")
 ....S PSL=$$FINDPSL(PSLTEL)
 ....I PSL,STAT>0,'$$PSL^W4HZMST(HZM),TAKED'="" D
 .....I $$MM^W4PRM D  Q   
 ......S @$$^W4MAIN("TMPDLV")@(HZM)=PSL
 ......D SGPSL^W4MMDLV(HZM)
 .....D SGPSL^W4DLVORD(HZM,PSL)
 ....I STAT>0,STAT<4,'$D(@$$^W4ORD@(HZM,"READY")) D
 .....S ^("READY")=$H
 .....I $$TRICKER^W4PRM(HZM) J ^W4TRICKR(JB,HZM,"COMPLETE")
 ....I TAKED>0 S TAKED=$$T2H(TAKED) I TAKED>0 D
 .....S @$$^W4ORD@(HZM,"TAKED")=TAKED
 ....I SUPPLIED>0,STAT=3 S SUPPLIED=$$T2H(SUPPLIED) I SUPPLIED>0 D
 .....S @$$^W4ORD@(HZM,"SUPPLIED")=SUPPLIED
 .....I $$TRICKER^W4PRM(HZM) J ^W4TRICKR(JB,HZM,"DLV")
 .
 .C FLQOU
 .;;ZSY "rm -f "_FLQOU
 .;;ZSY "rm -f tmpou"_JB_"-*"
 ;
 D DB(2)
 S H=+$H
 S IND1=$P(IND,"-")
 S NP=$O(@$$^W4GL("WQPROT")@(H,IND1,99999),-1)+1
 S @$$^W4GL("WQPROT")@(H,IND1,NP)=CMD
 S @$$^W4GL("WQPROT")@(H,IND1,NP,"ZSY")=$ZSY
 Q
 ;
 ;
REST(ORD) ;
 I $$MM^W4PRM Q $$MSDHZM^W4HZMST(ORD)
 Q $G(@$$^W4PRM@("SNDY","REST"))
 ;
NMREST(ORD) ;
 Q $$MSDN^W3R(ORD)
 ;
CITY(ORD) ;
 N IR S IR=$$IR^W4HZMST(ORD) ;
 I IR="" S IR="TAKEAWAY"
 Q $$HB(IR) ;
 ;
STREET(ORD) ;
 N STR S STR=$$KTV^W4HZMST(ORD)
 I STR="" S STR="TAKEAWAY"
 Q $$HB(STR)
 ;
HOME(ORD) ;
 N HOME S HOME=$$BAIT^W4HZMST(ORD)
 I HOME="" S HOME=0
 Q $$HB(HOME)
 ;
NAME(ORD) ;
 N NM S NM=$$LKHNM^W4HZMST(ORD)
 S NM=$TR(NM,"'","")
 S NM=$TR(NM,"""","")
 Q $$HB(NM)
 ;
TEL(ORD) ;
 N TEL S TEL=$$TELB^W4HZMST(ORD)
 I TEL="" S TEL="0000000"
 Q TEL
 ;
FLOOR(ORD) ;
 N FLOOR S FLOOR=$$KOMA^W4HZMST(ORD) ;
 I FLOOR="" S FLOR=0
 Q $$HB(FLOOR)
 ;
ENTRY(ORD) ;
 Q $$HB($$CNISA^W4HZMST(ORD))
 ;
APP(ORD) ;
 N APP S APP=$$DIRA^W4HZMST(ORD)
 I APP="" S APP=0
 Q $$HB(APP)
 ;
TIME(ORD) ;
 N TIMES,TIMEF
 S TIMES=$P($$DATCB^W4HZMST(ORD),"  ")_","_$P($$DATCB^W4HZMST(ORD),"  ",2)
 S TIMEF=$$TRH^W4HZMST(ORD)_","_$$SHAA^W4HZMST(ORD)
 Q $$DIF^%L1TIME(TIMEF,TIMES)
 ;
TOT(ORD) ;
 Q +$$TSHL^W4HZMST(ORD) 
 ;
DELAY(ORD) ;
 I $$PAPJ^W4PRM Q 5
 Q 0
 ;
HB(RKV) ;
 ;;Q $$^%L1CNV(RKV)
 S RKV=$$INVH^%L1FRM(RKV)
 S RKV=$TR(RKV,"'""","")
 Q $TR(RKV,TS0,TSS)
 ;
ORDLIST(STAM) ;
 N DT,N,GL,ST S DT=$$^W4DZ
 S ST=""
 S GL=$$^W4GL("WQDLV")
 ;
 S N="" F  S N=$O(@GL@(DT,N)) Q:N=""  D
 .I $$DEL^W4DEL(N) Q
 .I $L($$SUPPLIED^W4HZMST(N)) Q
 .N ORDSN S ORDSN=$$ORDSN(N) Q:ORDSN=""
 .S ST=ST_ORDSN_","
 ;
 I $E(ST,$L(ST))="," S ST=$E(ST,1,$L(ST)-1)
 Q ST
 ;
 ;
ORDSN(ORD) ; 
 Q $G(@$$^W4GL("WQORDSN")@(ORD))
 ;
DB(PRM) ;
 ;;U 0 W PRM,!
 Q
 ;
GET(TX,ID) ;
 N VL
 I $E(ID)'="""" S ID=""""_ID_""""
 I ID'[":" S ID=ID_":"
 S VL=$P(TX,ID,2)
 S VL=$P(VL,",")
 S VL=$P(VL,"}")
 S VL=$P(VL,"]")
 S VL=$P(VL,"//")
 S:$E(VL)="""" VL=$E(VL,2,$L(VL)-1)
 Q VL
 ;
T2H(DATTM) ; 
 I DATTM?4N1"-".E I DATTM'[" " S DATTM=$E(DATTM,1,10)_" "_$E(DATTM,11,255)
 S DAT=$P(DATTM," ")
 S DAT=$P(DAT,"-",3)_"."_$P(DAT,"-",2)_"."_$E(DAT,3,4)
 S DT=$$^%L1DC(DAT,3)
 S TIM=$P(DATTM," ",2)
 S SEC=TIM*3600+($P(TIM,":",2)*60)
 Q DT_","_SEC
 ;
FINDPSL(PSLTEL) ; 
 N PSL,TEL S PSL=""
 S PSLTEL=$TR(PSLTEL," -","")
 N N S N="" F  S N=$O(@$$^W4GL("P1SL")@(N)) Q:N=""  D  Q:PSL
 .S TEL=$P($G(^(N,1)),"\",2) Q:TEL=""
 .I $TR(TEL," -","")=PSLTEL S PSL=N
 Q PSL 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WQLOOP
WQLOOP(JB) ; [ 06.11.23 20:16 ] [ 05.11.23 06:22 ] [ 23.03.21 13:50 ] 
 N $ZT S $ZT="k @$$^W4flag@(""WQ"") S $ZT="""",zr=$R ZG "_$ZL_":SVER^%L1X"
 S MYDVN=$$^W4MYDVN
 ;
CYC
 I $D(@$$^W4STLOOP@("PC")) K @$$^W4flag@("WQ") Q  ; -- LEHAFSIK
 ;
 I $G(@$$^W4flag@("WQ")),$G(@$$^W4flag@("WQ"))'=MYDVN Q
 S @$$^W4flag@("WQ")=MYDVN
 ; 
 S @$$^W4GL("WQLOOP")=$H
 D DET^WQDLV H 10
 G CYC
 
 
 
 
 
 
 
 
 
 

WQREST
WQREST(REST) ; [ 12.10.21 10:30 ] [ 04.10.21 11:11 ] [ 08.04.21 09:47 ] 
 N (JB,%ARG,%REM,REST)
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 D ^%L1TS
 S URL="https://sendimanapi.com/rest/createRest"
 S HD="'Content-Type: application/json'"
 ;
 S PRM="-d '[{"
 S PRM=PRM_"  ""branch"": """_$G(@$$^W4PRM@("SNDY","BRANCH"))_"""," ; -- 04/10/21
 S PRM=PRM_"  ""rest_name"": """_$$NMRES(REST)_""","
 S PRM=PRM_"  ""mail"": """_REST_""","
 S PRM=PRM_"  ""phone"": """_$$PHONE(REST)_""","
 S PRM=PRM_"  ""city"": """_$$CITY(REST)_""","
 S PRM=PRM_"  ""street"": """_$$STREET(REST)_""","
 S PRM=PRM_"  ""street_number"": """_$$HOME(REST)_""","
 I $$LAT(REST),$$LONG(REST) D
 .S PRM=PRM_"  ""latitude"": """_$$LAT(REST)_""","
 .S PRM=PRM_"  ""longitude"": """_$$LONG(REST)_""","
 S PRM=PRM_"  ""rest_logo_link"": """","
 S PRM=PRM_"  ""tracker_sms"": ""0"","
 S PRM=PRM_"  ""feedback_sms"": ""0"" "
 S PRM=PRM_" }]'"
 ;
 D SEND^WQDLV("REST-"_REST,URL,HD,PRM)
 Q
 ;
 ;
NMRES(REST) ;
 Q $$HB($$MSD^W3R(REST))
 ;
MAIL(REST) ;
 Q $$EMAIL^W3R(REST)
 ;
PHONE(REST) ;
 N PHONE S PHONE=$$TEL^W3R(REST)
 I PHONE="" S PHONE="0000000"
 Q PHONE
 ;
CITY(REST) ;
 Q $$HB($$IR^W3R(REST))
 ;
STREET(REST) ;
 Q $$HB($$KTV^W3R(REST)) ;
 ;
HOME(REST) ;
 N HOME S HOME=$$BAIT^W3R(REST)
 I HOME="" S HOME=0
 Q HOME
 ;
LAT(REST) ;
 Q $P($$COORD^W3R(REST),",")
 ;
LONG(REST) ;
 Q $P($$COORD^W3R(REST),",",2)
 ;
HB(RKV) ;
 Q $$^%L1CNV(RKV)
 ;
INIT ;
 N GL D GL^W3R
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D WQREST(N) H 1 U 0 W N,!
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WSCPCON
WSCPCON(POST); [ 16.08.10 11:23 ] [  ; [ 29.12.24 12:10 ] [ 18.12.18 13:43 ] [ 17.12.18 08:35 ] 
 N (JB,%REM,%ARG,POST,SCPER,SCPER1,HZM)
 S DT=$$^W4DZ
 N $ZT S $ZT="S zr=$R X ^ZT  ZG "_$ZL_":SVER^%L1X"
 S COUNTER=$O(@$$^W4GL("WSCPGTA")@(DT,JB,"CON",999999),-1)+1
 S GLPROT=$$^W4GL("WSCPGTA")_"(DT,JB,""CON"",COUNTER)"
 S SCPER=0,SCPER1=""
 ;;S URL="http://dev.t-saver.net/api/SendSurvey/"
 S URL="http://t-saver.net/api/SendSurvey/"
 ;
 S FLOUT=$$FLOUT^WSCPRM
 C FLOUT:(DELETE) ; *** LEV 26/12
 ;
 S CMD="curl -m 30 -s -X POST -d@"_POST_" "_URL_" -o "_FLOUT
 ;
 D GL S H=+$H
 ;
 I $G(HZM) D PROT("HZM",HZM)
 D PROT("CMD",CMD)
 D PROT("FLOUT",FLOUT)
 ;
 ZSY CMD
 D PROT("ZSY",$ZSY)
 I $ZSY S SCPER=-$ZSY,SCPER1="zxeywza d`iby" G END
 ;
 F JJ=1:1:5  Q:$$^W4ZOS(10,FLOUT)'<0  H 1
 ;
 I $$^W4ZOS(10,FLOUT)<0 S SCPHER=-.2,SCPHER1="dlawzd `l daeyz" D  G END
 .D PROT("SCPER",SCPER)
 ;
 ;
 K @GL S I=1
 ;
 C FLOUT
 O FLOUT:(REWIND:READONLY)
 ;
 S ST=""
 F  D  Q:$ZEOF
 .U FLOUT R *A Q:$ZEOF
 .I $C(A)="{"!($C(A)="}")!($C(A)="[")!($C(A)="]")!($C(A)=",") D
 ..S @GL@(I)=ST_$C(A),ST="",I=I+1
 .E  S ST=ST_$C(A)
 ;
 I $L(ST) D
 .S @GL@(I)=ST
 ;
 C FLOUT
 ;;C FLOUT:(DELETE) ; *** LEV 26/12
END Q  
 ;
 ;
PROT(NM,VL) ;
 ;;Q:'$G(MYCHDEB)
 S @GLPROT@(POST,NM)=$$U2H^%L1CNV(VL)
 Q
 ;
PROTGT ;
 N K S K=1 S @GLPROT@("GT",K)="POST :"_$G(POST)
 N N S N="" F  S N=$O(@GL@(N)) Q:N=""  D
 .S K=K+1
 .S @GLPROT@("GT",K)=$$U2H^%L1CNV($G(@GL@(N)))
 Q
 ;
GL ;
 S GL=$$GT^WSCPGL
 Q
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WSCPFUNC
WSCPFUNC ; [ 18.12.18 15:47 ] [ 17.12.18 08:19 ] [ 16.12.18 12:33 ] 
 ;
SENDSURV(HZM,JB)
 N (JB,%ARG,HZM)
 ;
 D HEADER ; --> FLIN
 ;
 S STRIN="json="_$$GETACNT()
 S STRIN=STRIN_","_$$GETDATA(HZM,JB)
 S STRIN=STRIN_"}"
 ;
 D FOOTER(STRIN,FLIN)
 D ^WSCPCON(FLIN)
 Q
 ;
 ;
GETACNT()
 S STRIN="{""Account"":"
 S STRIN=STRIN_"{""Email"":""admin@damka.co.il"""
 S STRIN=STRIN_",""Password"":""dmkaskpr18""}"
 Q STRIN
 ;                 
 ;
GETDATA(HZM,JB) 
 N (JB,%ARG,HZM)
 ;
 S STRIN="""Data"":{"
 S STRIN=STRIN_"""PhoneNumber"":"""_$$PELE(HZM)_""""
 S STRIN=STRIN_",""Fullname"":"""_$$HB($$NAME(HZM))_""""
 S STRIN=STRIN_",""OrderAmount"":"""_$J($$TSHL^W4HZMST(HZM),2,2)_""""
 S STRIN=STRIN_",""OrganizationID"":"""_$G(@$$^W4PL@("ESEK",4))_""""  ;; het pay
 S STRIN=STRIN_",""BranchID"":"""_$E($G(@$$^W4PRM@("ASH","MASOF")),1,7)_""""   ;; mispar masof shva 
 S STRIN=STRIN_",""QuestionnaireType"":"""_$S($$HZM^W4MSD(HZM):"OS",$$TAKEAWAY^W4HZMST(HZM):"TA",1:"Del")_""""   ;; TA=TAKEAWAY Del=delivery OS= misada
 S STRIN=STRIN_",""ClientAddress"":"""_$$HB($$KTVM^W4HZMST(HZM))_""""
 S STRIN=STRIN_",""OrderContents"":"""_$$HZMITEMS(HZM)_""""   ;;pritim
 S STRIN=STRIN_",""ClientType"":"""""    ;; MOADON LAKUXOT VALUECARD / COMO 
 S STRIN=STRIN_"}"
 Q STRIN
 ;
 ;
HEADER ; --> FLIN,BID,FS : O FLIN U FLIN
 S FLIN=$$FLIN^WSCPRM
 C FLIN:DELETE
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 Q
 ;
 ;
FOOTER(STRIN,FLIN) ;
 W STRIN,!
 C FLIN
 ;;U 0 W STRIN,! H 4
 Q
 ;
 ;
HZMITEMS(HZM)
 N (JB,%ARG,HZM)
 N SUM S SUM=0,HZMITEMS=""
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .N A S A=$G(^(I))
 .S CD=$P(A,"\")
 .I CD'?1N.N S CD=0
 .S HZMITEMS=HZMITEMS_$$HB($$ITEMNAME(A))_","
 ;
 Q HZMITEMS
 ;
 ;
ITEMNAME(A)
 N NM S NM=$P(A,"\",3)
 ;;S NM=$$RPL^%L1FRM(NM,"'","'\")
 ;;S NM=$$RPL^%L1FRM(NM,"""","""\")
 Q NM
 ;
HB(TX) ;
 ;;Q $$^%L1CNV($$INVH^%L1FRM(TX))
 Q $$^%L1CNV(TX)
 ;
 ;
NAME(HZM) ;
 N LK,NAME S NAME=""
 I $$HZM^W4MSD(HZM) D  Q NAME
 .S LK=$$LKHN^W4HZMST(HZM) Q:$L(LK)<4
 .S LK=$TR(LK,"-","")
 .S NAME=$$LKH^W4L(LK)
 ;
 Q $$NAME^W4HZMST(HZM)
 ;
 ;
PELE(HZM) ;
 N LK,PELE S PELE=""
 I $$HZM^W4MSD(HZM) D  Q PELE
 .S LK=$$LKHN^W4HZMST(HZM) Q:$L(LK)<4
 .S PELE=$$PELELK(LK)
 ;
 S LK=$$NMB^W4HZMST(HZM)
 Q $$PELELK(LK)
 ;
 ;
PELELK(LK) ;
 N PELE S PELE=""
 S PELE=$$PELE^W4L(LK)
 I $L(PELE)<10,$E($$TEL^W4L(LK),1,2)="05" S PELE=$$TEL^W4L(LK) 
 I $L(PELE)<10,$L(LK)'<10 S PELE=LK
 S PELE=$TR(PELE,"-","")
 Q PELE
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WSCPGL
WSCPGL ; [ 12.12.18 17:37 ] [ 15.02.15 09:27 ] [ 09.02.15 14:16 ] 
 Q
 ;
 ;
GT(STAM) ;
 Q "^[$$^W3MAIN]WMCHGT(JB)"
 ;
 
 

WSCPRM
WSCPRM; ; [ 12.12.18 16:35 ] [ 09.02.15 14:34 ] [ 05.02.15 16:32 ] 
FLIN()
 Q $$DIR_"skeeperin"_$$^W4MYDVN
 ;
FLOUT()
 Q $$DIR_"skeeperout"_$$^W4MYDVN
 ;
 ;
DIR(STAM) ;
 Q "/tmp/"
 
 

WSCRFUNC
WMCHFUNC ; [ 12.12.18 14:42 ] [ 12.03.15 08:49 ] [ 01.03.15 13:37 ] 
 ;
MNGTBL(HZM,FUNC,CLCOD)
 ;;FUNCS= OPEN CANCEL REOPEN-"CANCELED BY MISTAKE AND RECOVERED"
 ;;FUNCS=JOIN CLOSE
 ;; CANCEL - IN USE WHEN YOU WHANT TO DISCONECT TABLE FROM MYCHECK .CANCEL MYCHECK ORDER AND ALL  PAYMENTS
 ;;-------------------------------------------------------------
  ;
 S @$$^W4GL("WMCHPY")@(HZM,FUNC)=$ZD($H,"DD.MM.YY 24:60")
 N (JB,%ARG,%REM,HZM,FUNC,CLCOD,MYCHER,MYCHER1)
 N FPATH S FPATH="table/act/"
 ;
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 ;
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 ;
 I FUNC="open" D
 .S STRIN=STRIN_FS_"Decimal=2"
 ;
 I FUNC="join" D
 .S STRIN=STRIN_FS_"JoinCode"
 ;
 I FUNC="close" D
 .S STRIN=STRIN_FS_"Waiter="_$$MKBL^W4HZMST(HZM)
 .S STRIN=STRIN_FS_"BillNum="_$P($G(@$$^W4ORD@(HZM,"CB")),"\") ;; heshbonit mas kabala
 ;
 I FUNC="cancel" D
 .S STRIN=STRIN  ;; DO NOTHING STRIN IS READY
 ;
 D FOOTER(STRIN,FLIN)
 ;
 S FUNC=FPATH_FUNC
 ;
 D ^WMCHCON(FUNC,FLIN)
 Q
 ;
 ;
CHKPAYMENT ;;-- SHOULD RUN IN BACKGROUND AND CHECK FOR POOLED PAYMENTS
 N (JB,%ARG,FUNC,CLCOD,MYCHER,MYCHER1)
 ;
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="""""
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("poll",FLIN)
 Q
 ;
APRVPAY(HZM,ID,EXTID,CLCOD)
 S @$$^W4GL("WMCHPY")@(HZM,"APPROVE")=$ZD($H,"DD.MM.YY 24:60")
 N FPATH S FPATH="payment/act/"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 ;;S STRIN="Payments=[]";; {"ID": 111, "ExtID": "0003"}, ] ID = MYCHECK PAYMENT ID FROM POLL EXTID=POS PAYMENT ID
 ;;S STRIN="Payments=[{""ID"": "_ID_", ""ExtID"": "_EXTID_"}]"
 S STRIN=STRIN_FS_"ApprovalNum="_ID
 S STRIN=STRIN_FS_"ExternalApprovalNum="_EXTID
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH_"approve",FLIN)
 Q
 ;
APRVATAVA(HZM,ID,CLCOD)
 S @$$^W4GL("WMCHPY")@(HZM,"APRVATAVA")=$ZD($H,"DD.MM.YY 24:60")
 N FPATH S FPATH="atava/act/"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"ID="_ID ;;; ATAVA ID
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH_"approve",FLIN)
 Q
 ;
CANPAY(PID) ;;; NOT IN USE BY MYCHECK
 ;; IN USE WHAN YOU WHANT TO CANCEL MYCHECK PAYMENT ON OPEN ORDER.
 N FPATH S FPATH="refundpayment"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN=PID
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH,FLIN)
 Q
 ;
REJPAY(CLCOD,APRVID)
 ;; IN USE WHAN YOU WHANT TO REJECT MYCHECK PAYMENT ON OPEN ORDER.
 N FPATH S FPATH="payment/act/"
 D HEADER ; --> FLIN,BID,FS ( O FLIN U FLIN )
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"ApprovalNum="_APRVID ;;; APRVID RECEIVED FROM "GET NEW TABLE PAYMENT"
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON(FPATH_"reject",FLIN)
 Q
 ;
SYNCORD(HZM,JB)
 N (JB,%ARG,HZM)
 S CLCOD=$$MYCHCLIENT^W4HZMST(HZM) Q:CLCOD=""
 ;
 D HEADER ; --> FLIN,BID,FS
 ;
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"Discount="_$J($$HNH^W4HZMST(HZM),2,2)
 S STRIN=STRIN_FS_"Service="_$J($$DMSH^W4HZMST(HZM),2,2)
 S STRIN=STRIN_FS_"Payments="_$$HZMPAYMENTS(HZM)
 S STRIN=STRIN_FS_"Items="_$$HZMITEMS(HZM)
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("sync",FLIN)
 Q
 ;
 ;
DELORD(HZM,JB)
 N (JB,%ARG,HZM)
 S CLCOD=$$MYCHCLIENT^W4HZMST(HZM) Q:CLCOD=""
 ;
 D HEADER ; --> FLIN,BID,FS
 ;
 S STRIN="BID="_BID
 S STRIN=STRIN_FS_"ClientCode="_CLCOD
 S STRIN=STRIN_FS_"Discount=0"
 S STRIN=STRIN_FS_"Service=0"
 S STRIN=STRIN_FS_"Payments=0"
 S STRIN=STRIN_FS_"Items="_$$BILLITEM("0",$$^%L1CNV("dpnfd lehia"),1,0)
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("sync",FLIN)
 Q
 ;
 ;
GETCLDETS(HZM,CLCOD) ;
 N (JB,%ARG,HZM,CLCOD,MYCHER,MYCHER1)
 D HEADER ; --> FLIN,BID,FS
 S STRIN="BID="_BID
 S STRIN="ClientCode="_CLCOD
 ;
 D FOOTER(STRIN,FLIN)
 D ^WMCHCON("poll",FLIN)
 Q
 ;
 ;
 ;
HEADER ; --> FLIN,BID,FS : O FLIN U FLIN
 ;
 S BID=$$RESTID^WMCHPRM
 ;
 ;;S CLCOD="1001" ; -- MYCHECK TEMP CLIENT CODE PUTTED IN TABLE
 ;
 S FS="&" ;- FIELD SEPARATOR
 ;
 S FLIN=$$FLIN^WMCHPRM
 C FLIN:DELETE
 O FLIN:(WRITE:NEWVERSION:REWIND)
 U FLIN
 Q
 ;
 ;
FOOTER(STRIN,FLIN) ;
 W STRIN,!
 C FLIN
 ;;U 0 W STRIN,! H 4
 Q
 ;
 ;
HZMITEMS(HZM)
 N (JB,%ARG,HZM)
 N SUM S SUM=0,HZMITEMS=""
 ;
 F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 .N A S A=$G(^(I))
 .S CD=$P(A,"\")
 .I $$ISHNHP^W4HZMST(CD) S CD=0,ITEMNAME=$$^%L1CNV("hixtl dgpd") G C1
 .I CD'?1N.N S CD=0
 .S ITEMNAME=$$^%L1CNV($$ITEMNAME(A))
C1 .N QNT,ITEMPRC
 .S QNT=$$QNT(A) S:'QNT QNT=1
 .S ITEMPRC=$$ITEMPRC(A)
 .I 'ITEMPRC S ITEMPRC=$J(($$ITEMSUM(A)-$$ADDONPRC(A))/QNT,2,2)
 .I I=1 S HZMITEMS=HZMITEMS_$$BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 .I I>1 S HZMITEMS=HZMITEMS_","_$$BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 .S SUM=SUM+(QNT*ITEMPRC)
 .
 .N ADDON
 .S ADDONPRC=$$ADDONPRC(A)
 .
 .I $G(ADDONPRC) D
 ..S HZMITEMS=HZMITEMS_","_$$BILLITEM("0",$$^%L1CNV("zetqez"),"1",ADDONPRC)
 ..S SUM=SUM+ADDONPRC
 ;
 I $G(@$$^W4ORD@(HZM))="" Q ""
 S TSHL=$$TSHL(HZM)
 ;
 ;;S DIF=$$FRMT2INT(TSHL-SUM,100)
 ;;S DIF=$J(TSHL-SUM,2,2)
 ;;I DIF S HZMITEMS=$$BILLITEM("0","DISCOUNT","1",DIF)
 S HZMITEMS="["_HZMITEMS_"]"   ;;[]=JSON LIST
 ;
 Q HZMITEMS
 ;
 ;
BILLITEM(CD,ITEMNAME,QNT,ITEMPRC)
 N BILLITEM
 S BILLITEM="""Name"":"""_ITEMNAME_""""
 S BILLITEM=BILLITEM_",""Cost"":"_$J(ITEMPRC,2,2)
 S BILLITEM=BILLITEM_",""Quantity"":"_QNT
 S BILLITEM=BILLITEM_",""SerialID"":"_CD
 S BILLITEM=BILLITEM_",""Remarks"":"_""""""
 S BILLITEM=BILLITEM_",""Toppings"":"_""""""
 S BILLITEM="{"_BILLITEM_"}" ;;{}=JSON OBJECT VAR:VALUE "," -SEPARATOR
 Q BILLITEM
 ;
 ;
HZMPAYMENTS(HZM)
 ;;PAYSUM=SUM OF SPECIFIC PAYMENT
 ;;TIP=TIP SUM OF SPECIFIC PAYMENT
 ;;PAYDBY="Credit,Cash,Mycheck, ..."
 ;;HZMPAYUID="identifier  of payment in ^P1HZ to avoid doble insertion"
 ;;PAYSTATUS="Approved,Cancelled
 ;;-----------------------------------------------------------------------
 ;
 N HZMPAYMENTS S HZMPAYMENTS=""
 N SUM,TIP
 N A S A=$G(@$$^W4ORD@(HZM,"CB"))
 S CASH=$J($P(A,"\",2),2,2)
 S TIP=$J($P(A,"\",10),2,2)
 ;
 S HZMPAYMENTS=$$PAYTYPE(CASH,TIP,"Cash",1,"Approved")
 ;
 N N,N1 S N="" F  S N=$O(@$$^W4ORD@(HZM,"CB",N)) Q:N=""  D
 .I N="CH" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...S SUM=$J($P($G(^(N1)),"*",1),2,2)
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,"Other",2_N1,"Approved")
 .I N="V" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...N A S A=$G(^(N1))
 ...S SUM=$J($P(A,"*",6),2,2)
 ...S VT="Credit"
 ...I '$P(A,"*",2) S VT="Mycheck"
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,VT,3_N1,"Approved")
 .I N="ASR" D
 ..S N1="" F  S N1=$O(@$$^W4ORD@(HZM,"CB",N,N1)) Q:N1=""  D
 ...S SUM=$J($P($G(^(N1)),"*",4),2,2)
 ...S VT="Other"
 ...S HZMPAYMENTS=HZMPAYMENTS_","_$$PAYTYPE(SUM,0,VT,4_N1,"Approved")
 ;
 Q "["_HZMPAYMENTS_"]"
 ;
 ;
PAYTYPE(PAYSUM,TIP,PAYDBY,HZMPAYUID,PAYSTATUS)
 N PAYTYPE S PAYTYPE=""
 S PAYTYPE="""ItemAmount"""_":"_$J(PAYSUM,2,2)
 S PAYTYPE=PAYTYPE_","_"""ServiceAmount"""_":"_$J(TIP,2,2)
 S PAYTYPE=PAYTYPE_","_"""PaymentType"""_":"_""""_PAYDBY_""""
 S PAYTYPE=PAYTYPE_","_"""ID"""_":"_""""_HZMPAYUID_""""
 S PAYTYPE=PAYTYPE_","_"""Status"""_":"_""""_PAYSTATUS_""""
 S PAYTYPE="{"_PAYTYPE_"}" ;;{}=JSON OBJECT  VAR:VALUE ","- SEPARATOR
 Q PAYTYPE
 ;
 ;
QNT(A) ;
 Q $P(A,"\",5)
 ;
ADDONPRC(A)
 Q $J($P(A,"\",6),2,2)
 ;
ITEMPRC(A) ;
 Q $J($P(A,"\",4),2,2)
 ;
ITEMSUM(A) ;
 Q $J($P(A,"\",7),2,2)
 ;
FRMT2INT(N,M)
 Q $J(N,2,2)*M
 ;
ITEMNAME(A)
 N NM S NM=$P(A,"\",3)
 ;;S NM=$$RPL^%L1FRM(NM,"'","'\")
 ;;S NM=$$RPL^%L1FRM(NM,"""","""\")
 Q NM
 ;
SSHUL(HZM) ;
 Q $P(@$$^W4ORD@(HZM),"\",12)+$P(@$$^W4ORD@(HZM),"\",17)
 ;
TSHL(HZM)
 Q $J($P(@$$^W4ORD@(HZM),"\",11),2,2)
 ;
ITRA(HZM) Q $J($$TSHL(HZM)-$$SSHUL(HZM),2,2)
 

WTBASKAN
WTBASKAN(HZM,FUNC,TBCARD,SUM) ; [ 14.07.26 14:36 ] [ 05.02.26 12:50 ] [ 05.03.24 10:10 ] 
 N (JB,%ARG,%REM,HZM,FUNC,TBCARD,SUM,TBVL,TBER)
 ;
 I $$TBNEW^W4PRM D  Q  ; -- NEW VERSION 5/03/24
 .D ^WTBASKN(HZM,$G(FUNC),$G(TBCARD),$G(SUM))
 ;
 S @("RES=$$"_FUNC_"^WTBFUNC(HZM,TBCARD,SUM)")
 ;
 I $$FUNC^%UCASE($TR($P(RES,"*",2)," ",""))="UNKNOWNERROR",'$P(RES,"*") D
 .S $P(RES,"*")=99
 ;
 I RES D  G END
 .S TBVL("ERR")=$P(RES,"*")
 .S TBVL("ERRDESC")=$$^W1MSG($P(RES,"*",2))
 ;
 S UR=1
 ;
 S GL=$$TMPBIS^WTBCON
 ;
 S MSG="NoResponseMsg",MIN=1
 I FUNC="DEBCARD" S MSG="DebitResponseMsg"
 I FUNC="RFNDCARD" S MSG="RefundResponseMsg",MIN=-1
 ;
 S TRANS="Transactions"
 S TRANEL="a:TransactionElement"
 ;
 S I=0,NTR=0
 S NTB=$P(RES,"*",3)
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 ;
 I A[("<"_MSG) D
 .S BGMSG=I
 .S SUCCESS=$$GET(BGMSG,"Success",MSG)
 .I SUCCESS="eurt" S SUCCESS="true"
 .
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" D  S I=$$FINDEND(BGMSG,MSG,"") Q
 ..S TBVL("ERR")=$$GET(BGMSG,"ErrorCode",MSG)
 ..I 'TBVL("ERR") S TBVL("ERR")=-.9
 ..N DESC S DESC=$$GET(BGMSG,"ErrorDesc",MSG)
 ..S TBVL("ERRDESC")=$$^W1MSG(DESC)
 .
 .S TBVL("CARD")=TBCARD
 .S TBVL("OWNER")=$$GET(BGMSG,"CardOwnerName",MSG)
 .S TBVL("RECID")=$$GET(BGMSG,"RequestID",MSG)
 .S TBVL("TRID")=$$GET(BGMSG,"TransactionID",MSG)
 .S TBVL("SUM")=$$GET(BGMSG,"TransactionSum",MSG)*MIN
 .S TBVL("TRTIME")=$$GET(BGMSG,"TransactionTime",MSG)
 .
 .;;D SENDOK^W3TB(TBADDR_"/InProcess")
 .
 .S BGTR=BGMSG
CYCTR .S BGTR=$$FIND(BGTR,TRANS,MSG,1)
 .I 'BGTR S I=$$FINDEND(BGMSG,MSG,"") Q
 .S BGEL=BGTR
CYCEL .S BGEL=$$FIND(BGEL,TRANEL,TRANS)
 .I 'BGEL S BGTR=$$FINDEND(BGTR,TRANS,MSG) D PUTHZ G CYCTR
 .S NTR=NTR+1
 .S TBVL(NTR,"DISCOWNER")=$$GET(BGEL,"a:DiscountOwner",TRANEL)
 .S TBVL(NTR,"OPTYPE")=$$GET(BGEL,"a:OperationType",TRANEL)
 .S TBVL(NTR,"CARD")=$$GET(BGEL,"a:cardID",TRANEL)
 .S TBVL(NTR,"LAST7")=$$GET(BGEL,"a:cardLastDigits",TRANEL)
 .S TBVL(NTR,"HAPPYHOUR")=$$GET(BGEL,"a:isHappyHourTransaction",TRANEL)
 .S TBVL(NTR,"SUM")=$$GET(BGEL,"a:transSum",TRANEL)*MIN
 .S TBVL(NTR,"TRTYPE")=$$GET(BGEL,"a:transType",TRANEL)
 .G CYCEL
 ;
 G CYC
END ;
 D ^WTBPROT("TBVL","TBVL","M")
 Q
 ;
 ;
GET(I,EL,PARENT)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(+IND,EL)
 ;
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
 ;
GETVL(I,EL) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 S ZN=$$REG(ZN)
 Q $$SPA^%L1FRM(ZN)
 ;
 ;
PUTHZ ;
 M @$$^W4ORD@(HZM,"TB",NTB)=TBVL
 S @$$^W4ORD@(HZM,"TB",NTB)=$H_"\"_$$^W4MYDVN_"\"_$$MKBL^W4HZMST(HZM)
 N H S H=+$H
 N IND S IND=$O(^[$$^W3MAIN]TMPBISA(H,999999),-1)+1
 M ^[$$^W3MAIN]TMPBISA(H,HZM,NTB)=@$$^W4MAIN("TMPBIS")
 S ^[$$^W3MAIN]TMPBISA(H,HZM,NTB)=$$^W4MYDVN
 K @$$^W4MAIN("TMPBIS")
 Q
 ;
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 ;
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 
 
 
 
 
 
 
 
 

WTBASKN
WTBASKN(HZM,FUNC,TBCARD,SUM) ; [ 14.07.26 14:36 ] [ 05.02.26 12:50 ] [ 06.03.24 14:56 ] 
 N (JB,%ARG,%REM,HZM,FUNC,TBCARD,SUM,TBVL,TBER)
 D ^%L1TS
 ;
 S @("RES=$$"_FUNC_"^WTBFUNCN(HZM,TBCARD,SUM)")
 ;
 I $$FUNC^%UCASE($TR($P(RES,"*",2)," ",""))="UNKNOWNERROR",'$P(RES,"*") D
 .S $P(RES,"*")=99
 ;
 I RES D  G END
 .S TBVL("ERR")=$P(RES,"*")
 .N MSG S MSG=$P(RES,"*",2)
 .S TBVL("ERRDESC")=$$^W1MSG(MSG)
 ;
 S UR=1
 ;
 S GL=$$TMPBIS^WTBCON
 ;
 S MSG="LogInResponse",MIN=1
 I FUNC="DEBCARD" S MSG="ApiResponseWithMoneycardDebitResponseDTO"
 I FUNC="RFNDCARD" S MSG="ApiResponseWithMoneycardRefundResponseDTO",MIN=-1
 ;
 S TRANS="Transactions"
 S TRANEL="MoneycardTransactionElementDTO"
 ;
 S I=0,NTR=0
 S NTB=$P(RES,"*",3)
CYC S I=I+1
 I '$D(@GL@(I)) G END
 S A=$G(^(I))
 ;
 I A[("<"_MSG) D
 .S BGMSG=I
 .S SUCCESS=$$GET(BGMSG,"Success",MSG)
 .I SUCCESS="eurt" S SUCCESS="true"
 .
 .I $$FUNC^%UCASE(SUCCESS)'="TRUE" D  S I=$$FINDEND(BGMSG,MSG,"") Q
 ..S TBVL("ERR")=$$GET(BGMSG,"ErrorCode",MSG)
 ..I 'TBVL("ERR") S TBVL("ERR")=-.9
 ..N DESC S DESC=$$GET(BGMSG,"ErrorDesc",MSG)
 ..S DESC=$$SPA^%L1FRM(DESC)
 ..S DESC=$$SP1^%L1FRM(DESC)
 ..S DESC=$$INVH^%L1FRM(DESC)
 ..S TBVL("ERRDESC")=$$^W1MSG(DESC)
 .
 .S TBVL("CARD")=TBCARD
 .S TBVL("OWNER")=$$GET(BGMSG,"CardOwnerName",MSG)
 .S TBVL("RECID")=$$GET(BGMSG,"RequestID",MSG)
 .S TBVL("TRID")=$$GET(BGMSG,"TransactionID",MSG)
 .S TBVL("SUM")=$$GET(BGMSG,"TransactionSum",MSG)*MIN
 .S TBVL("TRTIME")=$$GET(BGMSG,"TransactionTime",MSG)
 .
 .;;D SENDOK^W3TB(TBADDR_"/InProcess")
 .
 .S BGTR=BGMSG
CYCTR .S BGTR=$$FIND(BGTR,TRANS,MSG,1)
 .I 'BGTR S I=$$FINDEND(BGMSG,MSG,"") Q
 .S BGEL=BGTR
CYCEL .S BGEL=$$FIND(BGEL,TRANEL,TRANS)
 .I 'BGEL S BGTR=$$FINDEND(BGTR,TRANS,MSG) D PUTHZ G CYCTR
 .S NTR=NTR+1
 .S TBVL(NTR,"DISCOWNER")=$$GET(BGEL,"DiscountOwner",TRANEL)
 .S TBVL(NTR,"OPTYPE")=$$GET(BGEL,"OperationType",TRANEL)
 .S TBVL(NTR,"CARD")=$$GET(BGEL,"CardID",TRANEL)
 .S TBVL(NTR,"LAST7")=$$GET(BGEL,"CardLastDigits",TRANEL)
 .S TBVL(NTR,"HAPPYHOUR")=$$GET(BGEL,"IsHappyHourTransaction",TRANEL)
 .S TBVL(NTR,"SUM")=$$GET(BGEL,"TransSum",TRANEL)*MIN
 .S TBVL(NTR,"TRTYPE")=$$GET(BGEL,"TransType",TRANEL)
 .G CYCEL
 ;
 G CYC
END ;
 D ^WTBPROT("TBVL","TBVL","M")
 Q
 ;
 ;
GET(I,EL,PARENT)
 N IND
 S IND=$$FIND(I,EL,PARENT)
 I 'IND Q ""
 Q $$GETVL(+IND,EL)
 ;
 ;
FIND(I,EL,PARENT,PR) ;
 N OK,A,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  D  Q:OK
 .I '$G(PR)!($G(PR)=2),A[("<"_EL_">") S OK=J
 .I $G(PR),A[("<"_EL_" ") S OK=J
 ;;W "FIND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 Q OK
 ;
 ;
FINDEND(I,EL,PARENT) ;
 N OK,J S OK=0
 F J=I+1:1 Q:'$D(@GL@(J))  S A=$G(^(J)) Q:A[("</"_PARENT_">")  I A[("</"_EL_">") S OK=J Q
 ;;W "FINDEND: I="_I_"  EL="_EL_"  PARENT="_PARENT_"  OK="_OK,!
 I 'OK Q 99999
 Q OK
 ;
 ;
GETVL(I,EL) ;
 N A,ZN
 S A=$G(@GL@(I))
 I A="" Q ""
 S ZN=$P(A,"<"_EL_">",2)
 S ZN=$P(ZN,"</"_EL_">")
 S ZN=$$REG(ZN)
 Q $$SPA^%L1FRM(ZN)
 ;
 ;
PUTHZ ;
 M @$$^W4ORD@(HZM,"TB",NTB)=TBVL
 S @$$^W4ORD@(HZM,"TB",NTB)=$H_"\"_$$^W4MYDVN_"\"_$$MKBL^W4HZMST(HZM)
 N H S H=+$H
 N IND S IND=$O(^[$$^W3MAIN]TMPBISA(H,999999),-1)+1
 M ^[$$^W3MAIN]TMPBISA(H,HZM,NTB)=@$$^W4MAIN("TMPBIS")
 S ^[$$^W3MAIN]TMPBISA(H,HZM,NTB)=$$^W4MYDVN
 K @$$^W4MAIN("TMPBIS")
 Q
 ;
 ;
REG(TXT) ;
 N ENG S ENG=0
 I '$D(TSS) D ^%L1TS
 I $G(TXT)="" Q $G(TXT)
 S TXT=$$RPL^%L1FRM(TXT,"&amp;","&")
 S TXT=$$RPL^%L1FRM(TXT,"&qout;","'")
 S TXT=$$RPL^%L1FRM(TXT,"&nbsp;"," ")
 ;
 S TXT=$$FUNC^%UCASE(TXT)
 S TXT=$TR(TXT,TSS,TS0)
 Q TXT
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WTBCANC
WTBCANC(HZM,TBCARD,SUM) ; [ 08.11.11 13:49 ] [ 25.10.11 16:28 ] [ 13.10.11 10:27 ]
 N (JB,%ARG,%REM,HZM,TBCARD,SUM,TBVL)
 S TBER=0,TBER1="" K TBVL
 ;
M D ^WTBASKAN(HZM,"RFNDCARD",TBCARD,SUM)
 ;
 I $G(TBVL("ERR")) Q TBVL("ERR")_";!"_$G(TBVL("ERRDESC"))
 ;
 D ^WTBPC(HZM,.TBVL,1)
 ;
 F I=1:1 Q:'$D(TBVL(I))  D
 .I $G(TBVL(I,"DISCOWNER"))="RESTAURANT",$G(TBVL(I,"SUM")) D
 ..S TBVL("DISCORD")=TBVL(I,"SUM")
 ;
END Q TBER_";"_TBER1
 ;

WTBCON
WTBCON(FUNC,PARAMS,PRPOST);   ; [ 05.07.24 12:08 ] [ 06.03.24 13:12 ] [ 05.03.24 14:57 ] 
 N (JB,ARG,%REM,FUNC,PARAMS,PRPOST)
 ;
 S MYDVN=$$^W4MYDVN,UR=1,H=$$^W4DZ
 ;
 S TBER=0,TBER1=""
 S HEADER="""Content-Type:Application/xml"""
 S POST=$$AUTHFL^WTBPRM
 ;
 S FLOUT=$$FLOUT^WTBPRM
 S FLOUT=FLOUT_MYDVN
 S FLOUTXML=FLOUT_".xml"
 ;
 I '$$TBNEW^W4PRM,$$^%L1ZOS(10,POST)<0 D  G END
 .N USER,PSW S USER=$$SPA^%L1FRM($G(@$$^W4PRM@("10BIS","USER")))
 .S PSW=$$SPA^%L1FRM($G(@$$^W4PRM@("10BIS","PSW")))
 .I $L(USER)>1,$L(PSW)>1 D WFL^WTBINIT(USER,PSW) Q
 .S TBER=-.7,TBER1="10BIS PARAMETERS NOT DEFINED"
 ;
 C FLOUT:DELETE
 C FLOUTXML:DELETE
 ;;ZSY "/bin/rm "_FLOUT
 ;
 S FLIN=$$FLIN^WTBPRM
 S FLIN=FLIN_MYDVN
 ;
 D ^%L1TS
 ;
 S URL="https://www.10bis.co.il/services/resservice.svc/xml/"
 I $$TBNEW^W4PRM D
 .S URL="https://www.10bis.co.il/api/reshome/v2/reshomeservice.svc/"
 ;
 S CMD="curl -m 90 -s -H "_HEADER
 I '$$TBNEW^W4PRM S CMD=CMD_" -d @"_POST
 I $G(PRPOST) S CMD=CMD_" -X POST" 
 S CMD=CMD_" """_URL_FUNC_"/"_PARAMS_""""
 S CMD=CMD_" -o "_FLOUT
 ;
 D ^WTBPROT("CMD",$E(CMD,1,450))
 ;
 S CON="TENBIS"
 ZSY CMD
 I $ZSY S TBER=-$ZSY,TBER1="PROCESSING FAILED" G END
 ZSY " xmllint --format --encode cp862 -o "_FLOUTXML_" "_FLOUT
 
 I $ZSY S TBER=-$ZSY,TBER1="PROCESSING FAILED" G END
 ;
 O FLOUTXML:(REWIND:READONLY)
 U FLOUTXML
 ;
 S GL=$$TMPBIS
 ;
 K @GL S I=0
 ;
 F  D  Q:$ZEOF
 .R A
 .S I=I+1,@GL@(I)=$E(A,1,3500)
 ;;C CON
 C FLOUTXML
 D ^WTBPROT("TMPBIS-RESP",GL,"M")
 ;
 F I=1:1 Q:'$D(@GL@(I))  D
 .N A S A=$G(^(I))
 .;;I I'>10,$L(@GL@(I))<10 S TBER=-.8,TBER1="WRONG RECORD LENGTH"
 .I A["<a:ErrorCode>" D
 ..S TBER=$P($P(A,"<a:ErrorCode>",2),"</a:ErrorCode>")
 .I A["<a:ErrorDesc>" D
 ..S TBER1=$P($P(A,"<a:ErrorDesc>",2),"</a:ErrorDesc>")
 ;
 ;;I I<10 S TBER=-.9,TBER1="NUMBER OF RECORDS IS WRONG"
 ;
 N TOKEN S TOKEN=""
 I 'TBER,FUNC="Login" D
 .N I F I=1:1 Q:'$D(@GL@(I))  D
 ..N A S A=$G(^(I))
 ..I A["<Token>" S TOKEN=$P($P(A,"<Token>",2),"</Token>") 
 ;
 I 'TBER,FUNC="Login",$L(TOKEN)>10,TOKEN["-" Q "0*OK*"_TOKEN
 ;
END I $G(TBER) D ^WTBPROT("ER",TBER)
 C FLOUT:DELETE
 C FLOUTXML:DELETE
 ;
 Q TBER_"*"_TBER1_"*"_$P(PARAMS,"/",3)
 ;
TMPBIS(STAM) ;
 Q $$BG^W4MAIN("TMPBIS")_"UR)"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WTBCON0
WTBCON(FUNC,PARAMS);   ; [ 17.10.11 13:38 ] [ 16.10.11 23:09 ] [ 14.10.11 09:24 ]
 N (JB,ARG,%REM,FUNC,PARAMS,TBER)
 ;
 S TBER=0,TBER1=""
 S HEADER="""Content-Type:Application/xml"""
 S POST=$$AUTHFL^WTBPRM
 ;
 S FLOUT=$$FLOUT^WTBPRM
 S FLOUT=FLOUT_$$^W4MYDVN
 ;
 C FLOUT:DELETE
 ZSY "/bin/rm "_FLOUT
 ;
 S FLIN=$$FLIN^WTBPRM
 S FLIN=FLIN_$$^W4MYDVN
 ;
 D ^%L1TS
 ;
 ;;S URL="https://www.10bis.co.il/services/testservice.svc/testxml/"
 S URL="https://www.10bis.co.il/services/resservice.svc/xml/"
 ;
 O FLIN:(NEWVERSION:REWIND)
 U FLIN W "url="_URL_FUNC_"/"_PARAMS C FLIN
 ;
 S CMD="curl -m 10 -s -H "_HEADER_" -d @"_POST_" -o "_FLOUT_" -K "_FLIN
 ;
 S CMD1="cat "_FLOUT_" | xmllint --format --encode cp862 -  > "_FLOUT
 ;
 S MYDVN=$$^W4MYDVN,UR=1,H=+$H
 ;
 S ^[$$^W3MAIN]TBCMD(H,MYDVN,$O(^[$$^W3MAIN]TBCMD(H,MYDVN,9999999),-1)+1)=$E(CMD,1,450)
 ;
 ZSY CMD ;;SUCCESS OF THIS COMMAND SHOUL BE CHECKED BEFORE CMD1
 I $ZSY S TBER=-$ZSY,TBER1="CONNECTION FAILED" G END
 ;
 F JJ=1:1:10  Q:$$^%L1ZOS(10,FLOUT)'<0  H 1
 I $$^%L1ZOS(10,FLOUT)<0 S TBER=-.2,TBER1="dlawzd `l daeyz" G END
 ;
 C FLOUT
 ZSY CMD1
 H 1
 I $ZSY S TBER=-$ZSY,TBER1="PROCESSING FAILED" G END
 ;
 S GL=$$^W4MAIN("TMPBIS")_"(UR)"
 K @GL S I=0
 ;
 O FLOUT:(REWIND:READONLY)
 F  Q:$ZEOF  D
 .U FLOUT R A
 .S I=I+1,@GL@(I)=$E(A,1,450)
 C FLOUT
END Q TBER_"*"_TBER1_"*"_$P(PARAMS,"/",3)

WTBFUNC
WTBFUNC  ; [ 06.03.24 14:31 ] [ 27.04.16 18:18 ] [ 14.10.11 09:20 ] 
 ;
DEBCARD(HZM,TBCARD,SUM)
 N (JB,%ARG,%REM,HZM,TBCARD,SUM,TBER)
 S RECID=$$RECID(HZM)
 ;;S TBCARD="1462441778110538"
 ;;S TBCARD="8550625198016493" ; *** !!!!
 S PARAMS=$$VEND^WTBPRM_"/"_$$RESTID^WTBPRM_"/"_RECID_"/"_TBCARD_"/"_$J(SUM,2,2)
 Q $$^WTBCON("DebitMoneycard",PARAMS)
 ;
RFNDCARD(HZM,TBCARD,SUM)
 N (JB,%ARG,%REM,HZM,TBCARD,SUM,TBER)
 S RECID=$$RECID(HZM)
 ;;S TBCARD="1462441778110538"
 S PARAMS=$$VEND^WTBPRM_"/"_$$RESTID^WTBPRM_"/"_RECID_"/"_TBCARD_"/"_$J(SUM,2,2)
 Q $$^WTBCON("RefundMoneycard",PARAMS)
 ;
TSTCARD(TBCARD)
 N (JB,%ARG,%REM,HZM,TBCARD,SUM,TBER)
 S RECID=$$RECID(HZM)
 ;;S TBCARD="1462441778110538"
 S PARAMS=$$VEND^WTBPRM_"/"_$$RESTID^WTBPRM_"/"_RECID_"/"_TBCARD
 Q $$^WTBCON("RefundMoneycard",PARAMS)
 ;
RECID(HZM) ;
 N HZM1 S HZM1=HZM
 I HZM<0,$G(@$$^W4ORD@(HZM,"ORDNOM")) S HZM1=+^("ORDNOM") 
 Q HZM1_"-"_$P($H,",",2)
 
 
 

WTBFUNCN
WTBFUNCN  ; [ 06.03.24 14:59 ] [ 05.03.24 14:47 ] [ 
 ;
DEBCARD(HZM,TBCARD,SUM)
 N (JB,%ARG,%REM,HZM,TBCARD,SUM,TBER)
 S RECID=$$RECID(HZM)
 ;;S TBCARD="8550625198016493"
 S TBCARD=$$CARD(TBCARD)
 S OPTYPE=$$OPTYPE(TBCARD)
 S TOKEN=$$GETTOKEN
 I $E(TOKEN,1,5)="ERROR" Q $P(TOKEN,"ERROR ",2,25)
 S PARAMS=$$VEND^WTBPRM_"/"_$$RESTID^WTBPRM_"/"_TBCARD_"/false/none/"
 S PARAMS=PARAMS_RECID_"/"_$J(SUM,2,2)_"/"_TOKEN_"/"_OPTYPE
 Q $$^WTBCON("DebitMoneycard",PARAMS,1)
 ;
RFNDCARD(HZM,TBCARD,SUM)
 N (JB,%ARG,%REM,HZM,TBCARD,SUM,TBER)
 S RECID=$$RECID(HZM)
 ;;S TBCARD="8550625198016493"
 S TBCARD=$$CARD(TBCARD)
 S OPTYPE=$$OPTYPE(TBCARD)
 S TOKEN=$$GETTOKEN
 I $E(TOKEN,1,5)="ERROR" Q $P(TOKEN,"ERROR ",2,25)
 S PARAMS=$$VEND^WTBPRM_"/"_$$RESTID^WTBPRM_"/"_TBCARD_"/"
 S PARAMS=PARAMS_RECID_"/"_$J(SUM,2,2)_"/"_TOKEN_"/"_OPTYPE
 Q $$^WTBCON("RefundMoneycard",PARAMS,1)
 ;
TSTCARD(TBCARD)
 N (JB,%ARG,%REM,HZM,TBCARD,SUM,TBER)
 S RECID=$$RECID(HZM)
 ;;S TBCARD="1462441778110538"
 S PARAMS=$$VEND^WTBPRM_"/"_$$RESTID^WTBPRM_"/"_RECID_"/"_TBCARD
 Q $$^WTBCON("RefundMoneycard",PARAMS)
 ;
 ;
GETTOKEN() ;
 N (JB,%ARG)
 S TOKEN=$G(@$$^W4GL("TBTOKEN"))
 S TIME=$G(@$$^W4GL("TBTOKEN")@("TIME"))
 S RECID="GETTOKEN-"_$$^W4MYDVN_"-"_$P($H,",",2)
 S USNAME=$$USNAME^WTBPRM
 S USPSW=$$USPSW^WTBPRM
 S PARAMS=USNAME_"/"_USPSW_"/"_$$RESTID^WTBPRM_"/"_RECID
 S RES=""
 ;
 D
 .I TIME=""!(TOKEN="") S RES=$$^WTBCON("Login",PARAMS) Q
 .I $$DIF^%L1TIME($H,TIME,1)>(3*3600) S RES=$$^WTBCON("Login",PARAMS) Q
 ; 
 N TBER,TBER1
 S TBER=$P(RES,"*")
 S TBER1=$P(RES,"*",2)
 I TBER Q "ERROR "_TBER_"*"_TBER1 
 ;
 I $L($P(RES,"*",3)) D
 .S TOKEN=$P(RES,"*",3,200)
 .S @$$^W4GL("TBTOKEN")=TOKEN
 .S @$$^W4GL("TBTOKEN")@("TIME")=$H
 ;
 S TOKEN=$G(@$$^W4GL("TBTOKEN"))
 Q TOKEN
 ;
 ;
RECID(HZM) ;
 N HZM1 S HZM1=HZM
 I HZM<0,$G(@$$^W4ORD@(HZM,"ORDNOM")) S HZM1=+^("ORDNOM") 
 Q HZM1_"-"_$P($H,",",2)
 ;
CARD(TBCARD) ;
 I $P(TBCARD,"=",2) S TBCARD=$P(TBCARD,"=",2)
 E  S TBCARD=$P(TBCARD,"=")
 Q TBCARD
 ;
OPTYPE(TBCARD) ;
 N OPTYPE
 I $P(TBCARD,"=",2) S OPTYPE="Auto"
 E  S OPTYPE="Manual"
 Q OPTYPE
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WTBINIT
WTBINIT ; [ 16.04.14 18:57 ] [ 24.09.13 12:07 ] [ 27.11.11 17:55 ]
GET ;
 S RESTID=$G(@$$^W4PRM@("10BIS","RESTID"))
 S USER=$$FUNC^%UCASE($G(@$$^W4PRM@("10BIS","USER")))
 S PSW=$$FUNC^%UCASE($G(@$$^W4PRM@("10BIS","PSW")))
 S LKH=$G(@$$^W4PRM@("10BIS"))
 Q
 ;
PUT(PRM) ;
 D PUT^%W3DEB("WTBINIT","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S RES="OK"
 I LKH'="",RESTID="",PSW="",USER="" D  Q RES  ; -- 10BIS YADANI
 .K @$$^W4PRM@("10BIS")
 .S @$$^W4PRM@("10BIS")=LKH
 ;
 F I="RESTID","PSW","USER","LKH" D  Q:RES'="OK"
 .I I="RESTID"!(I="LKH"),$G(@I)'?1N.N S RES=I Q
 .I $G(@I)="" S RES=I
 ;
 I RES'="OK" Q "ER:"_RES
 ;
 S @$$^W4PRM@("10BIS","RESTID")=RESTID
 S USER=$$FUNC^%LCASE(USER)
 S @$$^W4PRM@("10BIS","USER")=USER
 S PSW=$$FUNC^%LCASE(PSW)
 S @$$^W4PRM@("10BIS","PSW")=PSW
 S @$$^W4PRM@("10BIS")=LKH
 ;
 D WFL(USER,PSW)
 ;
END Q RES
 ;
 ;
WFL(USER,PSW)
 N FL
 S USER=$$SPA^%L1FRM(USER)
 S PSW=$$SPA^%L1FRM(PSW)
 I '$L(USER)!'$L(PSW) Q
 S FL=$$AUTHFL^WTBPRM
 C FL:(DELETE) O FL:(REWIND:WRITE:NEWVERSION)
 U FL
 W "<?xml version=""1.0"" encoding=""UTF-8""?>",!
 W "<Authentication xmlns=""http://www.tenbis.co.il/REST"">",!
 W "       <Password>"_PSW_"</Password>",!
 W "       <UserName>"_USER_"</UserName>",!
 W "</Authentication>",!
 C FL
 Q

WTBPAYK
WTBPAYK(HZM,SUM,TBCARD) ; [ 27.11.23 13:03 ] [ 26.03.14 12:51 ] [ 13.01.14 13:59 ] 
 N (JB,%ARG,%REM,HZM,SUM,TBCARD,TBVL)
 I $G(TBCARD)="" S TBCARD=0
 S SUM=+$G(SUM)
 S TBER=0,TBER1="" K TBVL
 ;;S @$$^W4GL("WTBPROT")@($$^W4DZ,HZM,TBCARD,SUM)=$ZD($H,"DD.MM.YY  24:60")
 S H=$$^W4DZ
 S VL=$TR($J("",20)," ","-")_"\"_HZM_"\"_TBCARD_"\"_SUM_"\"_$ZD($H,"DD.MM.YY  24:60")
 D ^WTBPROT("HZM",VL)
 ;
 I SUM<0 Q $$^WTBCANC(HZM,TBCARD,-SUM)
 ;
M D ^WTBASKAN(HZM,"DEBCARD",TBCARD,SUM)
 ;
 I $G(TBVL("ERR")) Q TBVL("ERR")_"*"_$G(TBVL("ERRDESC"))
 I '$D(TBVL) Q "-.2* dgcp dzli`y e` dlawzd `l daeyz"
 ;
 D ^WTBPC(HZM,.TBVL,0)
 ;
 F I=1:1 Q:'$D(TBVL(I))  D
 .I $G(TBVL(I,"DISCOWNER"))="RESTAURANT",$G(TBVL(I,"SUM")) S TBVL("DISCORD")=TBVL(I,"SUM")
END Q TBER_"*"_TBER1
 ;
 
 
 
 

WTBPC
WTBPC(HZM,TBVL,CNC) ; [ 17.07.18 07:22 ] [ 16.07.18 20:25 ] [ 10.11.11 05:55 ] 
 N (JB,%ARG,%REM,HZM,TBVL,CNC)
 S FUNC="aeig"
 S MAKOR=0,SH=0
 ;
 I $G(CNC) S FUNC="iekif"
 D ^%L1TS,^W4MDPPC
 S MKR=1
 ;
 S NAME=$$SPA^%L1FRM($G(@$$^W4PL@("ESEK",1)))
 S KTOV=$$SPA^%L1FRM($G(@$$^W4PL@("ESEK",2)))
 S TEL=$G(@$$^W4PL@("ESEK",3))
 S MURSH=$G(@$$^W4PL@("ESEK",4))
 ;
 D W(NAME,"BC")
 D W(KTOV)
 D W(TEL_" : oetlh")
 D W($G(@$$^W4PRM@("10BIS","RESTID"))_" : qia oza dcrqn 'qn")
 D W(HZM_" : dcrqna dpnfd 'qn")
 ;
 S CUSTNAME=$TR($G(TBVL("OWNER")),TSS,TS0)
 S CUSTNAME=$$INVH^%L1FRM(CUSTNAME)
 ;
 S CARD=$G(TBVL("CARD"))
 S CARD="XXXX-X"_$E(CARD,$L(CARD)-2,255)
 ;
 S TOTAL=$G(TBVL("SUM"))
 S DISCREST=0
 S (DISCREST,DISCTB,TBSUM,CRSUM)=0
 S (TBCARD,CRCARD)=""
 ;
 F I=1:1 Q:'$D(TBVL(I))  D
 .I $G(TBVL(I,"DISCOWNER"))="RESTAURANT" D
 ..S DISCREST=$G(TBVL(I,"SUM"))
 .I $G(TBVL(I,"DISCOWNER"))="TENBIS" D
 ..S DISCTB=$G(TBVL(I,"SUM"))
 .I $G(TBVL(I,"DISCOWNER"))="0" D
 ..I $G(TBVL(I,"TRTYPE"))="MONEYCARD" D
 ...S TBCARD=$G(TBVL(I,"CARD"))
 ...S TBSUM=$G(TBVL(I,"SUM"))
 ..I $G(TBVL(I,"TRTYPE"))="CREDITCARD" D
 ...S CRCARD=$G(TBVL(I,"CARD"))
 ...S CRSUM=$G(TBVL(I,"SUM"))
 ;
 I $$PCTB^W4PRM=0!($$PCTB^W4PRM=2) D PC4MSD
 I $$PCTB^W4PRM=0!($$PCTB^W4PRM=1) D PC4LKH
 Q
 ;
 ;
W(TXT,PR) ;
 S GWPC=40
 N LTX S LTX=$L($$CLST^%L1FRM(TXT))
 N SM S SM=GWPC-LTX-1
 I $G(PR)["B" S SM=GWPC-(2*LTX)-1
 I $G(PR)["C" S SM=SM\2
 I SM<0 S SM=0
 S TXT=$TR(TXT,TS0,TSS)
 I $G(PR)="B" S TXT=$G(%MDP("B"))_TXT_$G(%MDP("N"))
 N ST S ST=$J("",SM)_TXT
 S @$$^W4PC@(PRINT,$O(@$$^W4PC@(PRINT,999999),-1)+1)=ST
 S LIND=$G(TBVL("RECID")) Q:'LIND
 N SH S SH=$O(@$$^W4ORD@(HZM,"TB","PC",LIND,99999),-1)+1
 S @$$^W4ORD@(HZM,"TB","PC",LIND,SH)=ST
ES1 K TXT
 Q
 ;
PC4MSD ;
 D W("qia oza "_FUNC_" xeyi`")
 D W("----- dcrqnl gtq ------")
 D W("")
 D W($J("",5)_$ZD($H,"DD.MM.YY  24:60"))
 D W("")
 D W(CUSTNAME_" :     gewld my")
 D W($G(TBVL("TRID"))_" :     dwqr 'qn")
 D W(CARD_" :    qihxk 'qn")
 D W($J(TOTAL,2,2)_" :    dwqr mekq")
 D W($J(DISCREST,2,2)_" :   dcrqn zgpd")
 D W($J(TOTAL-DISCREST,2,2)_" :   lreta mekq")
 D W("")
 D W("___________ gewl znizg")
 ;;D W($C(10,10,10,10))
 D W($C(10))
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 ;
PC4LKH ;
 D W("qia oza "_FUNC_" xeyi`")
 D W("----- gewll gtq ------")
 D W("")
 D W($J("",5)_$ZD($H,"DD.MM.YY  24:60"))
 D W("")
 D W(CUSTNAME_" :     gewld my")
 D W(CARD_" : qia oz qihxk")
 D W($G(TBVL("TRID"))_" :     dwqr 'qn")
 D W($J(TOTAL,2,2)_" :    dwqr mekq")
 D W($J(DISCREST,2,2)_" :   dcrqn zgpd")
 D W($J(DISCTB,2,2)_" :  qia oz zgpd")
 D W($J(TBSUM,2,2)_" :  lreta "_$J(FUNC,5))
 I $G(CRSUM) D
 .D W(CRCARD_" :  i`xy` qihxk")
 .D W($J(CRSUM,2,2)_" :  lreta "_$J(FUNC,5))
 D W($C(10))
 D ^W4CUT(PRINT,$G(%MDP("CUT")))
 Q
 
 
 

WTBPRM
WTBPRM;   ; [ 05.03.24 15:47 ] [ 21.12.16 15:12 ] [ 17.10.11 10:24 ] 
 ;
AUTHFL()
 Q "/tmp/10bis" ;"/pos/10bis"
 ;
FLIN()
 Q "/tmp/tbin"
 ;
FLOUT()
 Q "/tmp/tbout"
 ;
RESTID()
 Q $G(@$$^W4PRM@("10BIS","RESTID"))
 ;
VEND()
 Q "elpos"
 ;
USNAME()
 Q $G(@$$^W4PRM@("10BIS","USER"))
 ;
USPSW()
 Q $G(@$$^W4PRM@("10BIS","PSW"))
 
 

WTBPROT
WTBPROT(RKV,VL,PR) ; [ 27.11.23 13:30 ] [ 
 I $G(RKV)="" Q
 N H S H=$$^W4DZ
 N MYDVN S MYDVN=$$^W4MYDVN
 I $G(PR)="M" D  Q
 .M ^[$$^W3MAIN]TBCMD(H,MYDVN,$O(^[$$^W3MAIN]TBCMD(H,MYDVN,9999999),-1)+1,RKV)=@VL
 ;
 S ^[$$^W3MAIN]TBCMD(H,MYDVN,$O(^[$$^W3MAIN]TBCMD(H,MYDVN,9999999),-1)+1,RKV)=VL
 Q
 

WTBREP
WTBREP ; [ 08.10.20 11:20 ] [ 07.10.20 19:27 ] [ 03.06.20 09:58 ] 
 N (JB,%ARG,%REM)
 D ^W4IN
 D ^%W1ARG I '$G(DAT1),'$G(DAT2) Q
 S D1=$$^%L1DC(DAT1,3)
 S D2=$$^%L1DC(DAT2,3)
 S GLS4B=$$^W4MAIN("S4B")
 D FRM
 S %SCRN="WTBREP"
 S S4B=""
 D PC^W4DMANY
 Q
 ;
 ;
FRM ;
 K @$$^W4MAIN("VRM")
 K @GLS4B
 ;
 N DT,HZ,I,II,IND,A,SUM,ST,TBLKH
 S I=0
 S (SUMHZ,SSUM,SHNHM,SHNHTB,SSUMCR)=0
 ;
 S TBLKH=$$^W4TBLKH
 F DT=D1:1:D2 D
 .S (DHZ,DSUM,DHNHM,DHNHTB,DSUMCR)=0
 .S HZ="" F  S HZ=$O(@$$^W4GL("P1H")@(DT,HZ)) Q:HZ=""  D
 ..I $$HZM^W4MSL(HZ),VT=1 Q
 ..I $$HZM^W4MSD(HZ),VT=2 Q
 ..S INDTB=0
 ..S IND="" F  S IND=$O(@$$^W4ORD@(HZ,"CB","ASR",IND)) Q:IND=""  D
 ...S A=$G(^(IND))
 ...I $P(A,"*")'=TBLKH,$P(A,"*",6)'=TBLKH Q
 ...S SUM=$P(A,"*",4),INDTB=INDTB+1
 ...D
 ....I $D(@$$^W4ORD@(HZ,"TB")),$$TBCARD(HZ,INDTB) Q
 ....S ST=$ZD(DT,"DD.MM.YY")_"\"_HZ_"\\\"_$J(SUM,2,2)_"\\"_$J(SUM,2,2)_"\\\"_$J(SUM,2,2)
 ...S SSUM=SSUM+SUM
 ...S DSUM=DSUM+SUM
 ...S I=I+1,@GLS4B@(I)=ST
 .
 .S ST=$ZD(DT,"DD.MM.YY")_"\\\\"_$J(DSUM,2,2)_"\"_$J(DHNHM,2,2)_"\"_$J(DSUM-DHNHM,2,2)
 .S ST=ST_"\"_$J(DHNHTB,2,2)
 .S ST=ST_"\"_$J(DSUMCR,2,2)
 .S ST=ST_"\"_$J(DSUM-DHNHM-DHNHTB-DSUMCR,2,2)
 .S I=I+1,@GLS4B@(I)=ST,@GLS4B@(I,"B")=""
 ;
 S SUM4B=$$BG^W4MAIN("S4B")_"99999)"
 S @SUM4B="\\\\"_$J(SSUM,2,2)_"\"_$J(SHNHM,2,2)_"\"_$J(SSUM-SHNHM,2,2)
 S @SUM4B=@SUM4B_"\"_$J(SHNHTB,2,2)
 S @SUM4B=@SUM4B_"\"_$J(SSUMCR,2,2)
 S @SUM4B=@SUM4B_"\"_$J(SSUM-SHNHM-SHNHTB-SSUMCR,2,2)
 Q
 ;
 ;
TBCARD(HZ,NOMTB) ;
 N OK,NTB,K S OK=0,K=0
 S NTB="" F  S NTB=$O(@$$^W4ORD@(HZ,"TB",NTB)) Q:NTB=""  S K=K+1 I K=NOMTB S OK=1 Q
 I 'NTB Q 0
 I 'OK Q 0
 I '$D(@$$^W4ORD@(HZ,"TB",NTB)) Q 0
 S CARD=$G(^(NTB,"CARD")) Q:CARD=""
 S ASM=$G(^("TRID"))
 S SUM=$G(^("SUM"))
 S (HNHMSD,HNHTB,SUMCR,SUMTB)=""
 ;
 F II=1:1 Q:'$D(@$$^W4ORD@(HZ,"TB",NTB,II))  D
 .S SUMHZ=SUMHZ+1
 .I $G(^(II,"DISCOWNER"))="RESTAURANT" S HNHMSD=$G(^("SUM")) Q
 .I $G(^("DISCOWNER"))="TENBIS" S HNHTB=$G(^("SUM")) Q
 .I $G(^("DISCOWNER"))="CREDITCARD" S SUMCR=$G(^("SUM")) Q
 ;
 S SUMTB=SUM-HNHMSD-HNHTB-SUMCR
 I CARD["=" S CARD=$P(CARD,"=")
 S ST=$ZD(DT,"DD.MM.YY")_"\"_HZ_"\"_$E(CARD,1,16)_"\"_ASM
 S ST=ST_"\"_$J(SUM,2,2)_"\"_$J(HNHMSD,2,2)_"\"_$J(SUM-HNHMSD,2,2)
 S ST=ST_"\"_$J(HNHTB,2,2)_"\"_$J(SUMCR,2,2)_"\"_$J(SUMTB,2,2)
 S SHNHM=SHNHM+HNHMSD
 S SHNHTB=SHNHTB+HNHTB
 S SSUMCR=SSUMCR+SUMCR
 S DHNHM=DHNHM+HNHMSD
 S DHNHTB=DHNHTB+HNHTB
 S DSUMCR=DSUMCR+SUMCR
 Q 1
 
 
 
 
 
 

WV
WV ; [ 04.11.24 14:04 ] [ 11.09.24 04:53 ] [ 10.09.24 14:12 ] 
PUTBON(HZM,IND,NM,VL) ;
 I $G(NM)="" S @$$^W4ORD@(HZM,"VC",IND)=VL G EPUTBON
 S @$$^W4ORD@(HZM,"VC",IND,NM)=$E(VL,1,400)
 I $L($G(VL))>400 D
 .S @$$^W4ORD@(HZM,"VC",IND,NM_1)=$E(VL,401,800)
EPUTBON D  Q
 .N CARD
 .S CARD=$$GET^W4TMPANS("VCARD","CARDNUMBER") Q:'CARD
 .S @$$^W4GL("W4VCI")@(CARD,HZM,"DISC")=$G(@$$^W4GL("W4VCI")@(CARD,HZM,"DISC"))+VL
 ;
GETBON(HZM,IND,NM) ;
 I $G(NM)="" Q $G(@$$^W4ORD@(HZM,"VC",IND))
 Q $G(@$$^W4ORD@(HZM,"VC",IND,NM))
 ;
KILBON(HZM,IND,NM) ;
 I $G(NM)="" K @$$^W4ORD@(HZM,"VC",IND) Q
 K @$$^W4ORD@(HZM,"VC",IND,NM)
 Q
 ;
DBON(HZM,IND,NM)
 I $G(NM)="" Q $D(@$$^W4ORD@(HZM,"VC",IND))
 Q $D(@$$^W4ORD@(HZM,"VC",IND,NM))
 ;
ISDISC(HZM,IND)
 I $G(IND)="" S IND=$O(@$$^W4ORD@(HZM,"VC",999),-1) I 'IND Q 0
 I $G(@$$^W4ORD@(HZM,"VC",IND,"DISC")) Q $S($D(@$$^W4ORD@(HZM,"VC",IND,"PRPAY")):2,1:1)
 Q 0
 ;
WASITBON(HZM,IND); -- 04/11/24
 I $G(IND)="" S IND=$O(@$$^W4ORD@(HZM,"VC",999),-1) I 'IND Q 0
 N PRM S PRM=$G(@$$^W4ORD@(HZM,"VC",IND,"PRM"))
 I PRM["TRANSITEMS" Q 1
 Q 0
 ;
WASBON(HZM); -- 04/11/24
 I $$ISDISC(HZM)!$$WASITBON(HZM) Q 1
 Q 0
 ;
LIBON(HZM) ;
 N IND
 S IND=$O(@$$^W4ORD@(HZM,"VC",999),-1) I 'IND Q 0
 I '$D(@$$^W4ORD@(HZM,"VC",IND,"DISC")) Q 0
 Q IND
 ;
PUT(HZM,IND,NM,VL) ;
 I $G(NM)="" S @$$^W4ORD@(HZM,"CB","VC",IND)=VL G EPUT
 S @$$^W4ORD@(HZM,"CB","VC",IND,NM)=$E(VL,1,400)
 I $L($G(VL))>400 D
 .S @$$^W4ORD@(HZM,"CB","VC",IND,NM_1)=$E(VL,401,800)
EPUT Q
 ;
GET(HZM,IND,NM) ;
 I $G(NM)="" Q $G(@$$^W4ORD@(HZM,"CB","VC",IND))
 Q $G(@$$^W4ORD@(HZM,"CB","VC",IND,NM))
 ;
IFVC(HZM,IND) ;
 I '$G(IND),$D(@$$^W4ORD@(HZM,"CB","VC")) Q 1
 I $D(@$$^W4ORD@(HZM,"CB","VC",IND)) Q 1
 Q 0
 ;
D(HZM,IND,NM)
 I $G(NM)="" Q $D(@$$^W4ORD@(HZM,"CB","VC",IND))
 Q $D(@$$^W4ORD@(HZM,"CB","VC",IND,NM))
 ;
LI(HZM) ;
 Q $O(@$$^W4ORD@(HZM,"CB","VC",999),-1)
 ;
LASTSTR(HZM) ;
 N LI S LI=$$LI(JZM) I 'LI Q ""
 Q $G(@$$^W4ORD@(HZM,"CB","VC",LI))
 ;
LASTPRN(HZM)
 N LI S LI=$$LI(JZM) I 'LI Q ""
 Q $G(@$$^W4ORD@(HZM,"CB","VC",LI,"PRINTMSG"))
 ;
NOBONUS(STAM) ;
 Q +$G(@$$^W4PRM@("VCNOBONUS"))
 
 
 
 
 
 
 
 
 

WVACT
WVACT ; [ 14.08.11 07:57 ] [ 22.06.09 16:13 ] [
 N V1GETINF
 S V1GETINF="ACT"
 D ^WVGETINF
 Q

WVBONUS
WVBONUS(CARD,HZM,COUPON) ; [ 04.11.24 14:17 ] [ 23.08.11 18:11 ] [ 22.08.11 19:30 ] 
 N (JB,%ARG,%REM,CARD,HZM,COUPON)
 N V1GETINF
 S V1GETINF="BONUS:"_HZM
 I $$WASBON^WV(HZM) Q "ER"  ; -- 04/11/24
 ;
 S PRM=CARD_";"_$G(COUPON)_";"_V1GETINF
 S RES=$$VVCARD^WVGETINF(PRM)
 ;
 I $P(RES,";")["ER" Q RES
 ;
MODHNH ;
 N FIN S FIN=0
 N N S N=999 F  S N=$O(@$$^W4ORD@(HZM,"VC",N),-1) Q:N=""  D  Q:FIN
 .I $D(@$$^W4ORD@(HZM,"VC",N,"DISCO")) D  Q
 ..I '$D(@$$^W4ORD@(HZM,"VC",N,"DISCO","MOD")) D
 ...S FIN=-@$$^W4ORD@(HZM,"VC",N,"DISCO")
 ...S @$$^W4ORD@(HZM,"VC",N,"DISCO","MOD")=$H
 ...D ^W4ADDHNH(HZM,FIN,"VALUECARD BONUS")
 .
 .I $D(@$$^W4ORD@(HZM,"VC",N,"DISC")) D  Q
 ..I '$D(@$$^W4ORD@(HZM,"VC",N,"DISC","MOD")) D
 ...S FIN=@$$^W4ORD@(HZM,"VC",N,"DISC")
 ...S @$$^W4ORD@(HZM,"VC",N,"DISC","MOD")=$H
 ...D ^W4ADDHNH(HZM,FIN,"VALUECARD BONUS")
 Q "OK"
 
 

WVCANC
WVCANC(HZMBIT,HZMNEW,NOM,TRID) ; [ 08.11.11 12:13 ] [ 26.08.11 11:10 ] [ 25.08.11 16:42 ]
 N (JB,%ARG,%REM,HZMBIT,HZMNEW,NOM,TRID)
 I '$G(NOM) Q "1;NOASRNOM"
 I '$G(HZMBIT) Q "2;NOHZMBIT"
 I '$G(TRID) Q "3;NOTRID"
 ;
 S CARD=$$GET^WV(HZMBIT,NOM,"CARD")
 I CARD="" Q "4;NOCARD"
 ;
 S V1VOIDPAY=NOM
 I $G(HZMNEW) S V1VOIDPAY=V1VOIDPAY_";"_HZMNEW
 ;
 S A=$$DEL^WVVOID(HZMBIT,CARD,TRID)
 I A=1 Q "OK"
 Q A

WVCBONUS
WVCBONUS(HZM) ; [ 23.08.11 17:43 ] [ 22.08.11 19:30 ] [ 14.08.11 09:49 ]
 N (JB,%ARG,%REM,HZM)
 S RES=$$^WVVOID(HZM)
 I $P(RES,";")["ER" Q RES
 Q "OK"

WVCON
WVCON(STR) ; [ 07.04.15 12:54 ] [ 11.09.11 16:31 ] [ 19.08.11 19:34 ]
 D PUT^%W3DEB("WVCON","STR=STR")
 D ^WVIN
 ;
 N FILE S FILE=$$^WVFILE
 I $$^%L1ZOS(2,FILE)
 N FILEIN
 S FILEIN=$$^WVFILEIN
 O FILEIN:(NEWVERSION:REWIND)
 U FILEIN W "url="_STR C FILEIN
 ;
 D ^WVGP(STR,"IN")
 ;
 N CMD
 S CMD="curl -s -m "_$$^WVTOUT_" -o "_FILE_" -K "_FILEIN
 D ^WVGP(CMD,"CMD")
 ZSY CMD
 ;
 I $ZSY D  Q -.1
 .D ^WVGP($ZSY,"ZSY")
 ;
 I $$^%L1ZOS(10,FILE)=-1 Q -.1
 N A S A=""
 ;;S $ZT="G ER"
 O FILE:(READONLY:REWIND) U FILE R A C FILE
 S RC=$$PRS(A,"ReturnCode")
 ;
 I RC'>0 D  Q STOU  ;--- ERROR
 .S STOU=RC_V1RZM_$$PRS(A,"ErrorMsg")_V1RZM_A
 .D ^WVGP(STOU,"OU")
 ;
 S STOU=RC_V1RZM_A  D ^WVGP(STOU,"OU") Q STOU
 ;
ER Q
 ;
PRS(STR,PRM) ;
 Q $$^WVPRS(STR,PRM)

WVCYCN
WVCYCN(STAM) ; [ 14.08.11 08:05 ] [ 25.05.09 13:57 ] [
 I '$D(@$$^W4GL("WVCYCN")) S @$$^W4GL("^WVCYCN")=4
 S @$$^W4GL("WVCYCN")=$G(@$$^W4GL("WVCYCN"))+1
 I @$$^W4GL("WVCYCN")>250 S @$$^W4GL("WVCYCN")=5
 Q "&CyclicNum="_@$$^W4GL("WVCYCN")

WVDEACT
WVDEACT ; [ 14.08.11 08:41 ] [ 22.06.09 16:17 ] [
 N V1GETINF
 S V1GETINF="DEACT"
 D ^WVGETINF
 Q

WVFILE
WVFILE(STAM) ; [ 14.08.11 08:42 ] [ 25.05.09 13:05 ] [
 Q "/tmp/vout"_$$^W4MYDVN

WVFILEIN
WVFILEIN(STAM) ; [ 11.09.15 15:52 ] [ 14.08.11 08:43 ] [ 25.05.09 13:33 ] [
 Q "/tmp/mpin"_$$^W4MYDVN

WVG
WVG(STAM) ; [ 18.08.11 13:21 ] [
 Q $$^W4GL("WVG")

WVGCPRM
WVGCPRM(CARDNUM,PRM) ; [ 19.08.11 19:35 ] [ 18.08.11 13:25 ] [ 14.08.11 08:43 ]
 N IP S IP=$$^WVIP I $P(IP,";")="NOK" Q IP
 S IP=IP_$$^WVCYCN
 S IP=IP_"&OpCode="_$$GET("OPCODE")
 S IP=IP_"&PIN="_$$GET("PIN")
 S IP=IP_"&CouponNum="_$$GET("COUPON")
 S IP=IP_"&DelTransId="_$$GET("DELTRANSID")
 S IP=IP_"&TransSum="_$$GET("TRANSSUM")
 S IP=IP_"&CardNum="_CARDNUM
 S IP=IP_"&BudgetSum="_$$GET("BUDGETSUM")
 S IP=IP_"&TransItems="_$$GET("TRANSITEMS")
 S A=$$^WVCON(IP)
 Q A
 ;
 ;
GET(PRMNM) ;
 I $G(PRM)="" Q ""
 I PRM'[PRMNM Q ""
 Q $$^WVPRS(PRM,PRMNM)

WVGETIN0
WVGETINF ; [ 25.08.11 16:14 ] [ 24.08.11 18:15 ] [ 23.08.11 18:06 ]
 ;
SND(VCARD,PRM) ;
 N (JB,%ARG,%REM,HZM,VCARD,PRM,V1VOID,V1VOIDPAY,V1GETINF)
 D ^W4IN S OU=1,ERR=""
 S VCARD=$$CLEAR(VCARD)
 ;
 S STR=$$^WVGCPRM(VCARD,$G(PRM))
 ;
 I $P(STR,";")="NOK" Q "ER;"_$P(STR,";",2)
 I +$G(STR)=-.1 Q "ER;CONNECTIONERROR"
 ;
 I $G(STR)'>0 D  Q "ER;ERROR"
 .S ERR=$P(STR,"~",2)
 .D ^WVPC(ERR,0,1)
 .D MSG
 .
 ;
 D ^%L1TS
 S EMP=$$INVH^%L1FRM($$^WVPRS(STR,"ClientName"))
 D PUT^W4TMPANS("VCARD","EMP",EMP)
 ;
 S BUDG=$$^WVPRS(STR,"Budget")*.01
 D PUT^W4TMPANS("VCARD","BUDG",BUDG)
 ;
 S ZMAN=$$^WVPRS(STR,"TransDate")
 S ZMAN=$E(ZMAN,7,8)_"."_$E(ZMAN,5,6)_"."_$E(ZMAN,3,4)_"  "_$E(ZMAN,10,11)_":"_$E(ZMAN,12,13)
 D PUT^W4TMPANS("VCARD","ZMAN",ZMAN)
 ;
 S DISC=$$^WVPRS(STR,"Discount")*.01
 D PUT^W4TMPANS("VCARD","DISC",DISC)
 ;
 S PAY=$$^WVPRS(STR,"TransSum")*.01
 S PAY=PAY-DISC
 D PUT^W4TMPANS("VCARD","TOPAY",PAY)
 ;
 S ASM=$$^WVPRS(STR,"TransId")
 D PUT^W4TMPANS("VCARD","ASM",ASM)
 ;
 S STRNT=$$DEL^WVPRS(STR,"PringMsg")
 S STRNT=$$DEL^WVPRS(STRNT,"ErrorMsg")
 ;
 I $G(HZM),$$BONUS!$D(V1VOID) D SAVEBON,PRINT(STRNT)
 I $G(HZM),$$PAY!$D(V1VOIDPAY) D SAVEPAY,PRINT(STRNT)
 ;
 S TXT=$$^WVPRS(STR,"PringMsg")
 D ^WVPC(TXT,0,1)
 Q:$D(V1VOID)!$D(V1VOIDPAY) 1
 D MSG
 ;
 Q 1
 ;
 ;
END Q ER
 ;
 ;
LOADC ;
 N STRING,PRMP
 S STRING=V1GETINF("LKH")
 S PRMP=2
 S PRMP("MCARD")=VCARD ; VC
 S PRMP("LKH")=V1GETINF("LKH")
 D ^W4LCBCR
 Q
 ;
 ;
VC0 ;
 S TSTART=$P($H,",",2)
 Q
 ;
 ;
VVCARD(PRM) ;
 N VCARD,V1GETINF,COUPON
 D PUT^%W3DEB("WVGETINF","PRM=PRM")
 S VCARD=$P(PRM,";")
 S COUPON=$P(PRM,";",2)
 S V1GETINF=$P(PRM,";",3)
 S PR=$P(PRM,";",4)
 S VC=$P(VCARD,"=") ; 1,12
 ;
 ;;I PR="VC",$G(V1GETINF)["BONUS" Q "ER;OPTIONNOTVALID"
 ;;I PR'="VC",$G(V1GETINF)'["BONUS" Q "ER;OPTIONNOTVALID"
 ;
 N ZT
 N PRM S PIN=""
 S PRM=""
 ;
 D ^WVIN
 ;
 I $G(V1GETINF)="DETAILS"!($G(V1GETINF)="LOADC") S PRM="&OPCODE=8"
 I $G(V1GETINF)="ACT" S PRM="&OPCODE=6"
 I $G(V1GETINF)="DEACT" S PRM="&OPCODE=7"
 ;
 I $$BONUS!$$PAY D
 .S PRM="&OPCODE="_$S($$BONUS:1,1:2)
 .S HZM=$P(V1GETINF,":",2) Q:'HZM
 .S V1GETINF("TOPAY")=$P(V1GETINF,":",3) I $$PAY Q:'V1GETINF("TOPAY")
 .N I,ST,CD,PR,CAM,SUM,MH,TSHL S ST=""
 .
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N A S A=$G(^(I))  S CD=$P(A,"\")
 ..S PR=0 I $$^W4EZAT(CD),$D(@$$^W4ORD@(HZM,I))>9 S PR=CD
 ..S CAM=$$CAM(A),SUM=$$SUM(A)
 ..S MH=$$MH(A)
 ..S TSHL=$$TSHL^W4HZMST(HZM)
 ..I CD'?1N.N S CD="0"
 ..S ST=ST_I_V1RZF_CD_V1RZF_$$VL(CAM)_V1RZF_$$VL(MH)_V1RZF_$$VL(SUM)_V1RZF_PR_V1RZR
 .
 .I $$HNH^W4HZMST(HZM) D
 ..S I=I+1
 ..S HNH=$$HNH^W4HZMST(HZM)
 ..S ST=ST_I_V1RZF_0_V1RZF_$$VL(-1)_V1RZF_$$VL(HNH)_V1RZF_$$VL(-HNH)_V1RZF_0_V1RZR
 .
 .N TOPAY S TOPAY=$J(TSHL,2,2)
 .I $$PAY S TOPAY=$G(V1GETINF("TOPAY"))
 .S PRM=PRM_"&TRANSITEMS="_ST_"&TRANSSUM="_$$VL(TOPAY)
 .S PRM=PRM_"&PIN="_PIN
 .S PRM=PRM_"&COUPON="_$G(COUPON)
 ;
 Q $$SND(VCARD,$G(PRM))
 ;
 ;
COUP0 ;
 K %L1GET
 I $G(V1GETINF)'["BONUS" S %L1GET=""
 Q
 ;
MH(A) ;
 Q $P(A,"\",4)
 ;
CAM(A) ;
 Q $P(A,"\",5)
 ;
SUM(A)
 Q $P(A,"\",7)
 ;
VL(ZN) ;
 N OU S OU=$P(ZN*100,".")
 Q OU
 ;
 ;
PRINT(STR) ;
 N MAS,N,LAB,TXT,STPC,%MDP
 K MAS S MAS("EHAD")="NOPROGON"
 N ZMAN
 S ZMAN=$$^WVPRS(STR,"TransDate")
 S ZMAN=$E(ZMAN,7,8)_"."_$E(ZMAN,5,6)_"."_$E(ZMAN,3,4)_"  "_$E(ZMAN,10,11)_":"_$E(ZMAN,12,13)
 S MAS(10)=ZMAN
 S MAS(25)=$G(@$$^WVG@("POSID"))
 S MAS(30)=$$^WVPRS(STR,"TransId")
 S MAS(35)=$$INVH^%L1FRM($TR($$^WVPRS(STR,"ClientName"),TSS,TS0))
 S MAS(40)=$J($$^WVPRS(STR,"Budget")*.01,2,2)
 S MAS(45)=$J($$^WVPRS(STR,"TransSum")*.01,2,2)
 S MAS(50)=$J($$^WVPRS(STR,"Discount")*.01,2,2)
 ;
 I $$PAY S MAS(1)="melyz"
 I $$BONUS S MAS(1)="qepea"
 I $D(V1VOID) S MAS(1)="qepea lehia"
 I $D(V1VOIDPAY) S MAS(1)="melyz lehia"
 ;
 S LAB="V1PCHD" D ^W4CB
 ;
 S TXT=$$^WVPRS(STR,"PringMsg")
 D ^WVPC(TXT,0,1)
 D ^W4MDPPC
 S N="" F  S N=$O(STPC(N)) Q:N=""  S STPC=$TR(STPC(N),TS0,TSS) D
 .S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,99999))+1)=%MDP("N")_$J($$SPA^%L1FRM(STPC),39)
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
 ;
CLEAR(CRD) ;
 N J F J=1:1:$L(CRD) I $E(CRD)'?1N S CRD=$E(CRD,2,$L(CRD))
 Q CRD
 ;
 ;
SAVEBON ;
 ; -- INPUT : STRNT,VCARD,PRM,STR
 ;            V1VOID ( IF EXIST ) TRANS NUMBER FOR DELETE
 N IND
 S IND=$O(@$$^W4ORD@(HZM,"VC",9999),-1)+1
 D PUTBON^WV(HZM,IND,"",STRNT)
 D PUTBON^WV(HZM,IND,"CARD",VCARD)
 D PUTBON^WV(HZM,IND,"PRM",$G(PRM))
 N MSG S MSG=$$^WVPRS(STR,"PringMsg")
 D PUTBON^WV(HZM,IND,"PRINTMSG",MSG)
 D PUTBON^WV(HZM,IND,"ERMSG",$$^WVPRS(STR,"ErrorMsg"))
 ;
 I $G(V1VOID) D DELDISC(V1VOID) Q
 ;
 D PUTBON^WV(HZM,IND,"DISC",DISC)
 ;
 Q
 ;
 ;
SAVEPAY ;
 ; -- INPUT : STRNT,VCARD,PRM,STR,PAY,DISC
 ;
 I '$G(V1VOIDPAY) D NEWVCPAY(HZM) ; -- TASHLUM
 ;
 I $G(V1VOIDPAY) D  ;-- BITUL TASHLUM
 .N PAYO
 .S PAYO=$G(@$$^W4ORD@(HZM,"CB","VC",+V1VOIDPAY,"PAY"))
 .S @$$^W4ORD@(HZM,"CB","VC",+V1VOIDPAY,"PAY","BIT")=$H
 .; -------------- BITUL MI BITUL HAZMANA ( HZM = HZMBIT, HZMNEW = HZM )
 .N HZMNEW S HZMNEW=$P(V1VOIDPAY,";",2)
 .I 'HZMNEW S HZMNEW=HZM
 .D NEWVCPAY(HZMNEW)
 .I $G(@$$^W4ORD@(HZM,"CB","VC",+V1VOIDPAY,"DISC")) D
 ..N INDDISC S INDDISC=$G(^("DISC"))
 ..Q:$D(@$$^W4ORD@(HZM,"VC",INDDISC,"BIT"))
 ..S @$$^W4ORD@(HZM,"VC",INDDISC,"BIT")=$H
 ;
 Q
 ;
 ;
NEWVCPAY(HZM) ;  -- INP : VCARD,STRNT,PRM,ASM
 N IND
 S IND=$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1)+1
 S @$$^W4ORD@(HZM,"CB","VC",IND)=STRNT
 S @$$^W4ORD@(HZM,"CB","VC",IND,"IN","CARD")=VCARD
 S @$$^W4ORD@(HZM,"CB","VC",IND,"IN","PRM")=$G(PRM)
 S @$$^W4ORD@(HZM,"CB","VC",IND,"IN","TRID")=$G(ASM)
 S @$$^W4ORD@(HZM,"CB","VC",IND,"PRINTMSG")=$$^WVPRS(STR,"PringMsg")
 S @$$^W4ORD@(HZM,"CB","VC",IND,"ERMSG")=$$^WVPRS(STR,"ErrorMsg")
 S @$$^W4ORD@(HZM,"CB","VC",IND,"PAY")=PAY
 Q
 ;
BONUS(STAM) ;
 I $G(V1GETINF)["BONUS" Q 1
 Q 0
 ;
PAY(STAM) ;
 I $G(V1GETINF)["PAY" Q 1
 Q 0
 ;
CLR(TXT) ;
 Q $TR(TXT,$C(8,9,10,13,27),"")
 ;
 ;
DELDISC(V1VOID,PR) ;-- "DISC" --> "DISCO"
 ; -- V1VOID - NOM TRANZAKCII VALUECARD IN ORDER
 N DISCO
 S DISCO=$G(@$$^W4ORD@(HZM,"VC",V1VOID,"DISC"))
 I $D(@$$^W4ORD@(HZM,"VC",V1VOID,"DISC")) D
 .S @$$^W4ORD@(HZM,"VC",V1VOID,"DISCO")=@$$^W4ORD@(HZM,"VC",V1VOID,"DISC")
 .K @$$^W4ORD@(HZM,"VC",V1VOID,"DISC")
 .D ^W4ADDHNH(HZM,-DISCO,"CANCEL VALUECARD BONUS")
 .;;I '$G(PR),$L($G(STR)) D PRINT(STR)
 Q
 ;
 ;
MSG ;-- INP : STPC
 N I
 F I=1:1 Q:'$D(STPC(I))  D
 .S @("MES"_I)=$TR($$SPA^%L1FRM($$CLR(STPC(I))),TSS,TS0)
 .D PUT^W4TMPANS("VCARD","MES"_I,@("MES"_I))
 ;
 I I<12 D PUT^W4TMPANS("VCARD","MES"_I,"VC.V1.END]")
 Q

WVGETINF
WVGETINF ; [ 04.11.24 14:03 ] [ 20.09.16 09:09 ] [ 05.09.16 20:25 ] 
 ;
SND(VCARD,PRM) ;
 N (JB,%ARG,%REM,HZM,VCARD,PRM,V1VOID,V1VOIDPAY,V1GETINF)
 D ^W4IN S OU=1,ERR=""
 S VCARD=$$CLEAR(VCARD)
 ;
 S STR=$$^WVGCPRM(VCARD,$G(PRM)) ; --- SEND - RECEIVE
 ;
 D PUT^W4TMPANS("VCARD","STR",$E(STR,1,1024))
 ;
 I $P(STR,";")="NOK" Q "ER;"_$P(STR,";",2)
 I +$G(STR)=-.1 Q "ER;CONNECTIONERROR"
 ;
 I $G(STR)'>0 D  Q "ER;ERROR"
 .S ERR=$P(STR,"~",2)
 .D PUT^W4TMPANS("VCARD","ERR",ERR)
 .D ^WVPC(ERR,0,1)
 .D MSG
 .
 ;
 D ^%L1TS
 S EMP=$$INVH^%L1FRM($$^WVPRS(STR,"ClientName"))
 D PUT^W4TMPANS("VCARD","EMP",EMP)
 ;
 S BUDG=$$^WVPRS(STR,"Budget")*.01
 D PUT^W4TMPANS("VCARD","BUDG",BUDG)
 ;
 S ZMAN=$$^WVPRS(STR,"TransDate")
 S ZMAN=$E(ZMAN,7,8)_"."_$E(ZMAN,5,6)_"."_$E(ZMAN,3,4)_"  "_$E(ZMAN,10,11)_":"_$E(ZMAN,12,13)
 D PUT^W4TMPANS("VCARD","ZMAN",ZMAN)
 ;
 S DISC=$$^WVPRS(STR,"Discount")*.01
 D PUT^W4TMPANS("VCARD","DISC",DISC)
 ;
 S PAY=$$^WVPRS(STR,"TransSum")*.01
 S PAY=PAY-DISC
 D PUT^W4TMPANS("VCARD","TOPAY",PAY)
 ;
 S ASM=$$^WVPRS(STR,"TransId")
 D PUT^W4TMPANS("VCARD","ASM",ASM)
 ;
 S NAME=$$^WVPRS(STR,"ClientName")
 S NAME=$$INVH^%L1FRM(NAME)
 D PUT^W4TMPANS("VCARD","NAME",NAME)
 ;
 S MSG=$$^WVPRS(STR,"PringMsg")
 D PUT^W4TMPANS("VCARD","PRINTMSG",MSG)
 ;
 S ERMSG=$$^WVPRS(STR,"ErrorMsg")
 D PUT^W4TMPANS("VCARD","ERMSG",ERMSG)
 ;
 S STRNT=$$DEL^WVPRS(STR,"PringMsg")
 S STRNT=$$DEL^WVPRS(STRNT,"ErrorMsg")
 ;
 I $G(%ARG("HZMBIT")) D PRINT(STR) Q 1  ; -- BITUL HAZMANA AH SGIRATA
 ;
 ;;I $G(HZM),($$BONUS&DISC)!$D(V1VOID) D
 I $G(HZM),$$BONUS!$D(V1VOID) D
 .D SAVEBON,PRINT(STR)
 ;
 I $G(HZM),$$PAY!$D(V1VOIDPAY) D
 .D SAVEPAY
 .D PRINT(STR)
 ;
 S TXT=$$^WVPRS(STR,"PringMsg")
 D ^WVPC(TXT,0,1)
 D MSG
 Q 1
 ;
 ;
END Q ER
 ;
 ;
VC0 ;
 S TSTART=$P($H,",",2)
 Q
 ;
 ;
VVCARD(PRM) ;
 N VCARD,V1GETINF,COUPON
 D PUT^%W3DEB("WVGETINF","PRM=PRM")
 S VCARD=$P(PRM,";")
 S COUPON=$P(PRM,";",2)
 S V1GETINF=$P(PRM,";",3)
 S PR=$P(PRM,";",4)
 S VC=$P(VCARD,"=") ; 1,12
 ;
 ;
 N ZT
 N PRM S PIN=""
 S PRM=""
 ;
 D ^WVIN
 ;
 I $G(V1GETINF)="DETAILS"!($G(V1GETINF)="LOADC")!($G(V1GETINF)="DELLOAD") S PRM="&OPCODE=8"
 I $G(V1GETINF)="ACT" S PRM="&OPCODE=6"
 I $G(V1GETINF)="DEACT" S PRM="&OPCODE=7"
 ;
 I $$BONUS!$$PAY D
 .S PRM="&OPCODE="_$S($$BONUS:1,1:2)
 .S HZM=$P(V1GETINF,":",2) Q:'HZM
 .I $$BONUS,$$WASBON^WV(HZM) Q  ; -- 04/11/24
 .S V1GETINF("TOPAY")=$P(V1GETINF,":",3) I $$PAY Q:'V1GETINF("TOPAY")
 .N I,ST,CD,PR,CAM,SUM,MH,TSHL S ST=""
 .
 .F I=1:1 Q:'$D(@$$^W4ORD@(HZM,I))  D
 ..N A S A=$G(^(I))  S CD=$P(A,"\")
 ..S PR=0 I '$$SUPER^W3PRM,$$^W4EZAT(CD),$D(@$$^W4ORD@(HZM,I))>9 S PR=CD
 ..S CAM=$$CAM(A),SUM=$$SUM(A)
 ..I $$SUPER^W3PRM,$$^W4BLNMVC(CD) S PR=1
 ..S MH=$$MH(A)
 ..S TSHL=$$TSHL^W4HZMST(HZM)
 ..I CD'?1N.N S CD="0"
 ..S ST=ST_I_V1RZF_CD_V1RZF_$$VL(CAM)_V1RZF_$$VL(MH)_V1RZF_$$VL(SUM)_V1RZF_PR_V1RZR
 .
 .I $$HNH^W4HZMST(HZM) D
 ..S I=I+1
 ..S HNH=$$HNH^W4HZMST(HZM)
 ..S ST=ST_I_V1RZF_0_V1RZF_$$VL(-1)_V1RZF_$$VL(HNH)_V1RZF_$$VL(-HNH)_V1RZF_0_V1RZR
 .
 .N TOPAY S TOPAY=$J(TSHL,2,2)
 .I $$PAY S TOPAY=$G(V1GETINF("TOPAY"))
 .S PRM=PRM_"&TRANSITEMS="_ST_"&TRANSSUM="_$$VL(TOPAY)
 .S PRM=PRM_"&PIN="_PIN
 .S PRM=PRM_"&COUPON="_$G(COUPON)
 ;
 Q $$SND(VCARD,$G(PRM))
 ;
 ;
COUP0 ;
 K %L1GET
 I $G(V1GETINF)'["BONUS" S %L1GET=""
 Q
 ;
MH(A) ;
 Q $P(A,"\",4)
 ;
CAM(A) ;
 Q $P(A,"\",5)
 ;
SUM(A)
 Q $P(A,"\",7)
 ;
VL(ZN) ;
 N OU S OU=$P(ZN*100,".")
 Q OU
 ;
 ;
PRINT(STR) ;
 N MAS,N,LAB,TXT,STPC,%MDP
 I $$VCNOPC^W4PRM Q
 D V1HD
 I '$$SUPER^W3PRM D
 .D INIT^W4CB S MAS("PRG")="" D SIGN^W4CB
 .S LAB="V1PCHD" S MAS("EHAD")="NOPROGON" D ^W4CB
 ;
 S TXT=$$^WVPRS(STR,"PringMsg")
 D ^WVPC(TXT,0,1)
 D ^W4MDPPC
 S N="" F  S N=$O(STPC(N)) Q:N=""  S STPC=$TR(STPC(N),TS0,TSS) D
 .S @$$^W4PC@(PRINT,$ZP(@$$^W4PC@(PRINT,99999))+1)=%MDP("N")_$J($$SPA^%L1FRM(STPC),39)
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
V1HD ;
 K MAS S MAS("EHAD")="NOPROGON"
 N ZMAN
 S ZMAN=$$^WVPRS(STR,"TransDate")
 S ZMAN=$E(ZMAN,7,8)_"."_$E(ZMAN,5,6)_"."_$E(ZMAN,3,4)_"  "_$E(ZMAN,10,11)_":"_$E(ZMAN,12,13)
 S MAS(10)=ZMAN
 S MAS(25)=$G(@$$^WVG@("POSID"))
 S MAS(30)=$$^WVPRS(STR,"TransId")
 S MAS(35)=$$INVH^%L1FRM($TR($$^WVPRS(STR,"ClientName"),TSS,TS0))
 S MAS(40)=$J($$^WVPRS(STR,"Budget")*.01,2,2)
 S MAS(45)=$J($$^WVPRS(STR,"TransSum")*.01,2,2)
 S MAS(50)=$J($$^WVPRS(STR,"Discount")*.01,2,2)
 S MAS(55)=$G(HZM)
 ;
 I $$PAY S MAS(1)="melyz"
 I $$BONUS S MAS(1)="qepea"
 I $G(V1GETINF)="LOADC" S MAS(1)="dpirh"
 I $D(V1VOID) S MAS(1)="qepea lehia"
 I $D(V1VOIDPAY) S MAS(1)="melyz lehia"
 I $$SUPER^W3PRM S MAS("EHAD")="NOPROGON"
 S LAB="V1PCHD" D ^W4CB
 Q
 ;
CLEAR(CRD) ;
 N J F J=1:1:$L(CRD) I $E(CRD)'?1N S CRD=$E(CRD,2,$L(CRD))
 Q CRD
 ;
 ;
SAVEBON ;
 ; -- INPUT : STRNT,VCARD,PRM,STR
 ;            V1VOID ( IF EXIST ) TRANS NUMBER FOR DELETE
 N IND
 S IND=$O(@$$^W4ORD@(HZM,"VC",9999),-1)+1
 ;
 D PUTBON^WV(HZM,IND,"",STRNT)
 D PUTBON^WV(HZM,IND,"CARD",VCARD)
 D PUTBON^WV(HZM,IND,"PRM",$G(PRM))
 D PUTBON^WV(HZM,IND,"NAME",$G(NAME))
 N MSG S MSG=$$^WVPRS(STR,"PringMsg")
 D PUTBON^WV(HZM,IND,"PRINTMSG",MSG)
 D PUTBON^WV(HZM,IND,"ERMSG",$$^WVPRS(STR,"ErrorMsg"))
 I $G(PRPAY) D PUTBON^WV(HZM,IND,"PRPAY",1)
 ;
 I $G(V1VOID) D DELDISC(V1VOID) Q
 ;
 D PUTBON^WV(HZM,IND,"DISC",DISC)
 ;
 I '$D(V1VOID) D
 .S @$$^W4ORD@(HZM,"VC","LASTSTR")=$O(@$$^W4ORD@(HZM,99999),-1)
 ;
 Q
 ;
 ;
SAVEPAY ;
 ; -- INPUT : STRNT,VCARD,PRM,STR,PAY,DISC
 ;
 I '$G(V1VOIDPAY) D NEWVCPAY(HZM) ; -- TASHLUM
 ;
 I $G(V1VOIDPAY) D  ;-- BITUL TASHLUM
 .D PUT^WV(HZM,+V1VOIDPAY,"BIT",$H)
 .; -------------- BITUL MI BITUL HAZMANA ( HZM = HZMBIT, HZMNEW = HZM )
 .N HZMNEW,HZMBIT S HZMNEW=$P(V1VOIDPAY,";",2),HZMBIT=HZM
 .I 'HZMNEW S HZMNEW=HZM
 .D NEWVCPAY(HZMNEW)
 ;
 Q
 ;
 ;
NEWVCPAY(HZM) ;  -- INP : VCARD,STRNT,PRM,ASM
 N IND
 S IND=$O(@$$^W4ORD@(HZM,"CB","ASR",9999),-1)+1
 D PUT^WV(HZM,IND,"",STRNT)
 D PUT^WV(HZM,IND,"CARD",VCARD)
 D PUT^WV(HZM,IND,"PRM",$G(PRM))
 D PUT^WV(HZM,IND,"TRID",$G(ASM))
 D PUT^WV(HZM,IND,"NAME",$G(NAME))
 D PUT^WV(HZM,IND,"PRINTMSG",$$^WVPRS(STR,"PringMsg"))
 D PUT^WV(HZM,IND,"ERMSG",$$^WVPRS(STR,"ErrorMsg"))
 I $P($G(V1VOIDPAY),";",2),$G(HZMBIT) D
 .S PAY=-$$GET^WV(HZMBIT,+V1VOIDPAY,"PAY")
 D PUT^WV(HZM,IND,"PAY",PAY)
 ;
 I $P($G(V1VOIDPAY),";",2),$G(HZMBIT) D
 .N STR
 .S STR=$$GET^WV(HZMBIT,+V1VOIDPAY)
 .S DISC=-$$^WVPRS(STR,"Discount")*.01
 ;
 D PUT^WV(HZM,IND,"DISC",$G(DISC))
 Q
 ;
BONUS(STAM) ;
 I $G(V1GETINF)["BONUS" Q 1
 Q 0
 ;
PAY(STAM) ;
 I $G(V1GETINF)["PAY" Q 1
 Q 0
 ;
CLR(TXT) ;
 Q $TR(TXT,$C(8,9,10,13,27),"")
 ;
 ;
DELDISC(V1VOID,PR) ;-- "DISC" --> "DISCO"
 ; -- V1VOID - NOM TRANZAKCII VALUECARD IN ORDER
 N DISCO
 S DISCO=$$GETBON^WV(HZM,+V1VOID,"DISC")
 I DISCO'="" D
 .D PUTBON^WV(HZM,V1VOID,"DISCO",DISCO)
 .D KILBON^WV(HZM,V1VOID,"DISC")
 .D ^W4ADDHNH(HZM,-DISCO,"CANCEL VALUECARD BONUS")
 .;;I '$G(PR),$L($G(STR)) D PRINT(STR)
 Q
 ;
 ;
MSG ;-- INP : STPC
 I '$D(TSS) D ^%L1TS
 N I
 F I=1:1 Q:'$D(STPC(I))  D
 .S @("MES"_I)=$TR($$SPA^%L1FRM($$CLR(STPC(I))),TSS,TS0)
 .D PUT^W4TMPANS("VCARD","MES"_I,@("MES"_I))
 ;
 I I<12 D PUT^W4TMPANS("VCARD","MES"_I,"VC.V1.END]")
 Q
 
 
 
 
 
 
 

WVGP
WVGP(ST,IO) ; [ 18.07.17 11:09 ] [ 15.07.16 15:25 ] [ 28.08.13 16:25 ] 
 N POS,SH
 S POS=$$^W4MYDVN
 N BL S BL=1800
 N H S H=$$^W4DZ
 S SH=$O(@$$^W4GL("WVGP")@(H,POS,999999),-1)+1
 I '$D(TSS) D ^%L1TS
 S @$$^W4GL("WVGP")@(H,POS,SH,IO)=$TR($E(ST,1,BL),TSS,TS0)
 I $L(ST)>BL D
 .S @$$^W4GL("WVGP")@(H,POS,SH,IO_1)=$TR($E(ST,BL+1,2*BL),TSS,TS0)
 Q
 
 

WVGPOS
WVGPOS ; ADD CARD ORDER [ 18.08.11 13:19 ] [ 14.08.11 09:27 ] [ 25.05.09 12:06 ]
 N STR,STROU S RES=0
 K V1V
 S STR=@$$^W4GL("WVG")@("RID")_"#"_@$$^W4GL("WVG")@("PID")
 S STR="STP"_$L(STR)_"~"_STR
 S RES=$$^WVCON(STR)
 I RES'=V1C("OK") D ^WVGM(RES) D CLOSE^WVCON Q
 D GETANS I RES'=V1C("OK") D ^WVGM(RES) Q
 I $G(V1M(0))="ERR" S RES=V1C("GENERR") Q
 S @$$^WVG@("RSNAME")=V1M(1)
 S @$$^WVG@("RSADDR")=V1M(2)
 S @$$^WVG@("RSPHONE")=V1M(3)
 S @$$^WVG@("HEAD")=V1M(4)
 S @$$^WVG@("APP")=V1M(5)
 S @$$^WVG@("RCOPY")=V1M(6)
 S @$$^WVG@("RETRY")=V1M(7)
 S @$$^WVG@("KEYPAD")=V1M(8)
 S RES=V1C("OK")
 Q
 ;
GETANS ;
 D ^WVGETANS
 Q

WVHEAD
WVHEAD ; [ 14.08.11 09:33 ] [ 02.06.09 14:24 ] [ 16.12.08 01:48 ]
 N MAS,POP,SPK
 S MAS(10)=$ZD($H,"24:60  DD/MM/YY")
 I $D(KOT) D
 .S MAS(7)=$P(KOT,";"),MAS(6)=$P(KOT,";",2)
 .S MAS(7)=MAS(7)_$J("",18-$L(MAS(7))\2)
 .S MAS(5)=$P(KOT,";",3)
 .S MAS(30)=$P(KOT,";",4)
 .S MAS(32)=$P(KOT,";",6)
 .S MAS(34)=$P(KOT,";",8)
 .S MAS(36)=$P(KOT,";",7)
 .S MAS(38)=$P(KOT,";",5)
 ;
 S MAS(15)=$$INVH^%L1FRM(SPK)
 S MAS(20)=$P(POP,M1P("RZV"),2)
 S MAS(25)=$G(^M1G("MASOF"))
 S MAS("EHAD")="NOPROGON"
 S LAB="V1PCHD" D ^W4CB
 Q

WVIN
WVIN ; [ 14.08.11 09:38 ] [ 02.06.09 16:14 ] [
 S V1RZM="~"
 S V1RZF="|"
 S V1RZR=";"
 S V1RZL="<CR><LF>"
 Q

WVIP
WVIP(STAM) ; [ 19.08.11 10:45 ] [ 18.08.11 13:54 ] [ 14.08.11 09:45 ]
 N (JB,%ARG,%REM)
 S POSID=$G(@$$^WVG@("POSID")) I POSID?.P Q "NOK;NOPOSID"
 S POSPW=$G(@$$^WVG@("POSPW")) I POSPW?.P Q "NOK;NOPOSPW"
 S CPW=$G(@$$^WVG@("CPW")) I CPW?.P Q "NOK;NOCPW"
 ;
 N V1IP S V1IP="https://www.valuecard.co.il/App/Interface/Valuecard/rsd.aspx"
 S V1IP=V1IP_"?Ver=2&POSId="_POSID_"&POSPW="_POSPW
 S V1IP=V1IP_"&CashierPW="_CPW_"&SN=123456&SPId=19" ; 19 -  RSD
 Q V1IP

WVLKH
WVLKH(STAM) ; [ 19.10.11 17:12 ] [
 Q $G(@$$^WVG@("LKH"))

WVLOADC
WVLOADC ; [ 14.08.11 09:46 ] [ 20.07.09 14:48 ] [ 22.06.09 16:13 ] [
 N V1GETINF
 S V1GETINF="LOADC"
 S V1GETINF("LKH")=@$$^WVG@("LKH")
 D ^WVGETINF
 Q

WVMES
WVMES(TXT,NL) ; [ 15.08.11 18:27 ] [ 22.06.09 16:24 ] [ 15.06.09 14:49 ]
 N V1MES
 I '$G(NL) S NL=999
 D ^%L1TS
 S V1MES=TXT
 I V1MES["VC.V1.START:" S V1MES=$P(TXT,"V1.START",2)
 I V1MES[":VC.V1.END" S V1MES=$P(V1MES,":VC.V1.END")
 S V1MES=$TR(V1MES,$C(13,10),"")
 S V1MES=$P(V1MES,"<CR><LF>",1,NL)
 S V1MES=$$RPL^%L1FRM(V1MES,"<CR><LF>","  ")
 S V1MES=$$SPA^%L1FRM(V1MES)
 S V1MES=$$SP1^%L1FRM(V1MES)
 S V1MES=$$FUNC^%UCASE(V1MES)
 S V1MES=$TR(V1MES,TSS,TS0)
 S V1MES=$$INVH^%L1FRM(V1MES)
 Q V1MES

WVPAY
WVPAY(CARD,HZM,RZN) ; [ 11.09.24 04:50 ] [ 10.09.24 14:07 ] [ 02.01.19 10:41 ] 
 N (JB,%ARG,%REM,CARD,HZM,RZN)
 N V1GETINF
 S V1GETINF="PAY:"_HZM_":"_RZN
 ;
 N ITRA S ITRA=$$ITRA^W4HZMST(HZM)
 I $G(RZN),RZN>ITRA,ITRA'<0 Q "ER;SUMTOOBIG"
 I $G(RZN),RZN<ITRA,ITRA<0 Q "ER;SUMTOOBIG"
 ;
 S PRM=CARD_";;"_V1GETINF
 S RES=$$VVCARD^WVGETINF(PRM)
 ;
 I $P(RES,";")["ER" Q RES
 ;
 I '$G(@$$^WVG@("LKH")) Q
 ;
 N CUSN S CUSN=$G(^("LKH"))
 S ASR=$$GET^W4TMPANS("VCARD","TOPAY")
 S LKAH=0
 S LKHNH=$$GET^W4TMPANS("VCARD","DISC")
 S HZMLK=$$GET^W4TMPANS("VCARD","ASM")
 ;
 D ^W4ASR
 ;
 S NOM=$O(@$$^W4ORD@(HZM,"VC",99999),-1)+1
 S CARD=$$GET^W4TMPANS("VCARD","CARDNUMBER")
 I CARD,ASR D
 .S @$$^W4GL("W4VCI")@(CARD,HZM,"PAY")=$G(@$$^W4GL("W4VCI")@(CARD,HZM,"PAY"))+PAY
 ;
 S A=$$^W4GETHZ(HZM)
 K @$$^W4TMPPAY
 K P1TNOPR,BLIBR
 D ^W4T(HZM)
 Q "OK"
 
 
 
 
 

WVPAYVW1
WVPAYVW1(HZM,IND) ; [ 15.08.11 18:29 ] [ 27.07.09 14:36 ] [
 D ^WVGETINF
 Q

WVPC
WVPC(STR,PRPC,INV) ; [ 14.05.15 14:32 ] [ 13.05.15 16:54 ] [ 17.02.15 13:33 ]
 N (JB,%ARG,%REM,STR,STPC,PRPC,INV,V1REP) D ^%L1TS
 I '$D(PRPC) S PRPC=1
 D DEFWVPC
 K @WVPC
 K STPC
 I PRPC,'$D(PRINT)!'$D(%MDP) D ^W4MDPPC
 D IN
 S STR=$$RPL^%L1FRM(STR,"{P}",RIGHT_NL)
 S IND=1 S GWPC=0 I PRPC S GWPC=39
 ;
 F M1PCI=1:1:$L(STR,NL) D  S IND=IND+1
 .S SUBST=$P(STR,NL,M1PCI) Q:'$L(SUBST)
 .D SMALL
 .S PRBIG=0
 .I SUBST[BIG D  S PRBIG=1
 ..D BIG
 .I SUBST[SMALL D
 ..D SMALL
 .I SUBST[BOLD D
 ..D BOLD
 .I SUBST[ITAL D
 ..D ITAL
 .
 .I SUBST["LEFT" D LEFT S ST=$$SPL^%L1FRM(SUBST) D WST(ST) D ENDST Q
 .I SUBST["RIGHT" D RIGHT S ST=$J($$SPA^%L1FRM(SUBST),GWPC\$S($G(PRBIG):2,1:1)) D WST(ST) D ENDST Q
 .I SUBST["CENTER",PRBIG D CENTER D WST($$CENTRB^%L1FRM(SUBST)) D ENDST Q
 .I SUBST["CENTER" D CENTER D WST($$CENTR^%L1FRM(SUBST)) D ENDST Q
 .
 .D WST(SUBST) ;D ENDST
 Q
ENDST Q
 ;
 ;
IN ;
 S NL="<CR><LF>"
 S BIG="{BIG}"
 S SMALL="{SMALL}"
 S BOLD="<B>"
 S CENTER="{CENTER}"
 S RIGHT="{RIGHT}"
 S LEFT="{LEFT}"
 S ITAL="<I>"
 Q
 ;
BIG I $G(PRPC) D WST(%MDP("B"),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,BIG,"")
 Q
SMALL I $G(PRPC) D WST(%MDP("N"),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,SMALL,"")
 Q
BOLD I $G(PRPC) D WST(%MDP("B"),"",1)
 S SUBST=$$RPL^%L1FRM(SUBST,BOLD,"")
 Q
CENTER ;
 S SUBST=$$RPL^%L1FRM(SUBST,CENTER,"")
 Q
RIGHT ;
 S SUBST=$$RPL^%L1FRM(SUBST,RIGHT,"")
 Q
LEFT ;
 S SUBST=$$RPL^%L1FRM(SUBST,LEFT,"")
 Q
ITAL ;
 S SUBST=$$RPL^%L1FRM(SUBST,ITAL,"")
 Q
 ;
 ;
WST(ST,CR,PR) ;
 Q:$G(ST)=""
 I $G(PR) Q:$$VCNOPC^W4PRM
 S ST=$$RPL^%L1FRM(ST,"<CR>","")
 S ST=$$RPL^%L1FRM(ST,">CR<","")
 I $G(INV) S ST=$$INVH^%L1FRM(ST)
 ;
 I $G(PR) D  Q
 .S STIND=$O(STPC(99999),-1)+1
 .S ST=$$TRIM(ST)
 .S STPC(STIND)=ST
 .I 'IND S IND=1
 .S @WVPC@(IND)=$G(@WVPC@(IND))_$E(ST,250)
 ;
 N J F J=1:1:$L(ST) Q:$E(ST,J)'=" "
 S STSPACE=""
 I J>1 S STSPACE=$E(ST,1,J-1),ST=$E(ST,J,$L(ST))
 I 'IND S IND=1
 N STO S STO=""
 N WH S WH=0 F J=1:1:$L(ST) D  Q:WH
 .I $A(ST,J)>224,$A(ST,J)<251 S WH=1
 I WH!$D(V1REP) D
 .N J F J=1:1:$L(ST) D
 ..I $A(ST,J)>95,$A(ST,J)<122 S STO=STO_$C($A(ST,J)-32) Q
 ..S STO=STO_$E(ST,J)
 .S ST=STO K STO
 ;
 N STP
 ;
 S ST=$$TRIM(ST)
 S STP=$TR(ST,TS0,TSS)
 S @WVPC@(IND)=$G(@WVPC@(IND))_STSPACE_STP
 S STIND=$O(STPC(99999),-1)+1
 S STPC(STIND)=STSPACE_ST
 Q
 ;
TRIM(ST) ;
 S ST=$$SPA^%L1FRM(ST)
 S ST=$$SP1^%L1FRM(ST)
 Q ST
 ;
DEFWVPC S WVPC=$$^W4MAIN("WVPC")
 Q

WVPCMSG
WVPCMSG(MES,STR,KOT,GL) ; [ 07.08.16 17:19 ] [ 03.06.15 10:28 ] [ 15.08.11 18:44 ] 
 N N,A,I,IND,LAB
 I $G(MES)="" Q
 Q:$$VCNOPC^W4PRM
 D ^%L1TS
 D ^WVHEAD
 D ^W4MDPPC I $G(PRINT)="" Q "PRINTERNOTDEFINED"
 I $L($G(STR)) D ^WVPC(STR,1,0) D PC
 D ^WVPC(MES,1,1)
 D PC
 D ^W4CUT(PRINT,%MDP("CUT"))
 I $$SUPER^W3PRM Q 
 I $P(KOT,";",2)="xewn" S $P(KOT,";",2)="wzrd"
 D ^WVHEAD
 I $L($G(STR)) D ^WVPC(STR,1,0) D PC
 S LAB="M1PCFT",MAS("EHAD")="NOPROGON" D ^W4CB
 D ^W4CUT(PRINT,%MDP("CUT"))
 Q
 ;
PC ;
 D DEFWVPC^WVPC
 I $G(GL)'="" M @GL=@WVPC
 N IND,I S N="",I=0 F  S N=$O(@WVPC@(N)) Q:N=""  D
 .S A=$G(^(N)),I=I+1
 .S IND=$O(@$$^W4PC@(PRINT,9999999),-1)+1
 .I I=1 S @$$^W4PC@(PRINT,IND)="" S IND=IND+1
 .S @$$^W4PC@(PRINT,IND)=A
 Q
 

WVPRS
WVPRS(STR,PRM,PR) ; [ 15.08.11 18:46 ] [ 06.08.09 10:06 ] [ 05.08.09 12:02 ]
 I $E(STR)'="&" S STR="&"_STR
 I PRM'["=" S PRM=PRM_"="
 I PRM'["&" S PRM="&"_PRM
 N VL S VL=$P(STR,PRM,2)
 S VL=$P(VL,"&")
 I $G(PR) Q VL
 S VL=$$FUNC^%UCASE(VL)
 I '$D(TSS) D ^%L1TS
 Q $TR(VL,TSS,TS0)
 ;
DEL(STR,PRM) ;
 S PRM=$TR(PRM,"&=","")
 S VL="&"_PRM_"="_$$WVPRS(STR,PRM)
 Q $P(STR,VL,1)_$P(STR,VL,2)

WVSETUP
WVSETUP ; [ 11.08.20 06:06 ] [ 16.04.14 18:57 ] [ 06.09.11 10:13 ] 
GET ;
 S WVG=$$^WVG
 S WVGP=$$^W4GL("WGP")
 K @WVGP
 S TOUT=$G(@WVG@("TOUT"))
 S RSID=$G(@WVG@("POSID"))
 S PSW=$G(@WVG@("POSPW"))
 S CPW=$G(@WVG@("CPW"))
 S LKH=$G(@WVG@("LKH"))
 S LKH1=""
 I LKH S LKH1=$$LKH^W4L(LKH)
 S ADRREG=$G(@WVG@("ADRREG"))
 Q
 ;
PUT(PRM) ;
 D PUT^%W3DEB("WVSETUP","PRM=PRM")
 D ^%W1GETPR(PRM)
 ;
 S WVG=$$^WVG
 K @WVG
 S @WVG@("TOUT")=TOUT
 S @WVG@("POSID")=RSID
 S @WVG@("POSPW")=PSW
 S @WVG@("CPW")=CPW
 S @WVG@("LKH")=LKH
 S @WVG@("ADRREG")=ADRREG
 ;
 N OK S OK=1
 F I="POSID","POSPW","CPW","LKH" D
 .I '$L($G(@WVG@(I))) S OK=0
 ;
 S @$$^W4PRM@("VCARD")=OK
END Q
 ;
 
 

WVTOUT
WVTOUT(STAM) ; [ 29.12.24 12:11 ] [ 15.08.11 18:47 ] [ 25.05.09 13:05 ] [
 Q $G(@$$^WVG@("TOUT"),40)
 

WVVOID
WVVOID(HZM) ; [ 26.02.15 09:19 ] [ 16.09.11 16:19 ] [ 25.08.11 16:44 ]
 N (JB,%ARG,%REM,HZM)
 N OK S OK=0
 ;; ------------ FIND CARD IN LAST BONUS
 S N=9999 F  S N=$O(@$$^W4ORD@(HZM,"VC",N),-1) Q:N=""  D  Q:OK
 .S STR=$G(^(N))
 .I STR["DelTrans" S OK=-1 Q
 .Q:$D(@$$^W4ORD@(HZM,"VC",N,"BIT"))
 .Q:$D(@$$^W4ORD@(HZM,"VC",N,"PRPAY"))
 .Q:'$G(@$$^W4ORD@(HZM,"VC",N,"DISC"))
 .S TRID=$$^WVPRS(STR,"TransId")
 .I TRID S OK=TRID
 .S CARD=$$GETBON^WV(HZM,N,"CARD")
 .I 'CARD S OK=0
 ;
 I OK<0 S OK=0
 I 'OK Q "ER0"
 ;
 D PUT^W4TMPANS("VCARD","CARDNUMBER",CARD)
 S V1VOID=N
 Q $$DEL(HZM,CARD,OK)
 ;
 ;
DEL(HZM,CARD,TRID) ; --- INP V1VOID OR V1VOIDPAY ( NOM TRANZ. ) ;
 S PRM="DELTRANSID="_TRID
 S PRM=PRM_"&OPCODE=3"
 ;
 Q $$SND^WVGETINF(CARD,PRM)



